diff --git a/mailcow/src/mailcow-dockerized/data/web/_status.502.html b/mailcow/src/mailcow-dockerized/data/web/_status.502.html
index a0f8fb1..ec6617e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/_status.502.html
+++ b/mailcow/src/mailcow-dockerized/data/web/_status.502.html
@@ -3,17 +3,22 @@
   <head>
     <title>Preparing</title>
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
   </head>
-  <body style='background-color:#fff;color:#333;text-align:center;font-family: Verdana, "Lucida Sans Unicode", sans-serif'>
-    <p>🐄 - we are on our way.</p>
-    <h1 style="color:#333;font-size:48px">502</h1>
-    <p>Please do not stop the stack, while we are initializing the database or do other preparations.</p>
-    <p style="font-size:small"><b>What is happening?</b> - Nginx cannot connect to an upstream server.<br>
-    This is fine, if mailcow was just
+  <body style='background-color:#fff;color:#333;width: 60%;margin: 0 auto;text-align:left;font-family: Verdana, "Lucida Sans Unicode", sans-serif'>
+    <h1 style="color:#333;font-size:48px">What is happening?</h1>
+    <p style="color:green;font-weight:bold;">Please do not stop the stack while we are initializing the database or do other preparations.</p>
+    <p style="font-size:small"><b>What is happening?</b> - Nginx cannot connect to an upstream server or other services are not ready yet.<br>
+    This is fine if mailcow was just
     installed or updated and can take a few minutes to complete.<br>
-    Please check the logs or contact support, if the error persists.</p>
-    <pre>docker-compose logs --tail=200 php-fpm-mailcow</pre>
-    <br><a style="color:#555;text-decoration:none;" href="https://mailcow.github.io/mailcow-dockerized-docs/#get-support" target="_blank">Need support?</a>
+    Please check the logs or contact support if the error persists.</p>
+    <h2>Quick debugging</h2>
+    <p>Check Nginx and PHP logs:</p>
+    <pre>docker-compose logs --tail=200 php-fpm-mailcow nginx-mailcow</pre>
+    <p>Make sure your SQL credentials in mailcow.conf (a link to .env) do fit your initialized SQL volume. If you see an access denied, you might have the wrong mailcow.conf:</p>
+    <pre>source mailcow.conf ; docker-compose exec mysql-mailcow mysql -u${DBUSER} -p${DBPASS} ${DBNAME}</pre>
+    <p>In case of a previous failed installation, remove all volumes and start over (<b>NEVER</b> do this with a production system, it will remove <b>ALL</b> data):</p>
+    <pre>docker-compose down -v ; docker-compose up -d</pre>
+    <p>Make sure your timezone is correct. Use "America/New_York" for example, do not use spaces. Check <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones">here</a> for a list.</p>
+    <br>Click to learn more about <a style="color:red;text-decoration:none;" href="https://mailcow.github.io/mailcow-dockerized-docs/#get-support" target="_blank">getting support.</a>
   </body>
 </html>
diff --git a/mailcow/src/mailcow-dockerized/data/web/admin.php b/mailcow/src/mailcow-dockerized/data/web/admin.php
index f2d6cfb..1a28776 100644
--- a/mailcow/src/mailcow-dockerized/data/web/admin.php
+++ b/mailcow/src/mailcow-dockerized/data/web/admin.php
@@ -12,10 +12,19 @@
 ?>
 <div class="container">
 
-  <ul class="nav nav-tabs" role="tablist">
-    <li role="presentation" class="active"><a href="#tab-access" aria-controls="tab-access" role="tab" data-toggle="tab"><?=$lang['admin']['access'];?></a></li>
-    <li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['admin']['configuration'];?>
-      <span class="caret"></span></a>
+  <ul class="nav nav-tabs responsive-tabs" role="tablist">
+    <li class="dropdown active">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['admin']['access'];?><span class="caret"></span></a>
+      <ul class="dropdown-menu">
+        <li class="active" data-dont-remember="1" role="presentation"><a href="#tab-config-admins" aria-controls="tab-config-admins" role="tab" data-toggle="tab"><?=$lang['admin']['admins'];?></a></li>
+        <!-- <li role="presentation"><a href="#tab-config-ldap-admins" aria-controls="tab-config-ldap-admins" role="tab" data-toggle="tab"><?=$lang['admin']['admins_ldap'];?></a></li> -->
+        <li role="presentation"><a href="#tab-config-oauth2" aria-controls="tab-config-oauth2" role="tab" data-toggle="tab"><?=$lang['admin']['oauth2_apps'];?></a></li>
+        <li role="presentation"><a href="#tab-config-rspamd" aria-controls="tab-config-rspamd" role="tab" data-toggle="tab">Rspamd UI</a></li>
+      </ul>
+    </li>
+
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['admin']['configuration'];?><span class="caret"></span></a>
       <ul class="dropdown-menu">
         <li role="presentation"><a href="#tab-config-dkim" aria-controls="tab-config-dkim" role="tab" data-toggle="tab"><?=$lang['admin']['dkim_keys'];?></a></li>
         <li role="presentation"><a href="#tab-config-fwdhosts" aria-controls="tab-config-fwdhosts" role="tab" data-toggle="tab"><?=$lang['admin']['forwarding_hosts'];?></a></li>
@@ -23,6 +32,7 @@
         <li role="presentation"><a href="#tab-config-quarantine" aria-controls="tab-config-quarantine" role="tab" data-toggle="tab"><?=$lang['admin']['quarantine'];?></a></li>
         <li role="presentation"><a href="#tab-config-quota" aria-controls="tab-config-quota" role="tab" data-toggle="tab"><?=$lang['admin']['quota_notifications'];?></a></li>
         <li role="presentation"><a href="#tab-config-rsettings" aria-controls="tab-config-rsettings" role="tab" data-toggle="tab"><?=$lang['admin']['rspamd_settings_map'];?></a></li>
+        <li role="presentation"><a href="#tab-config-password-policy" aria-controls="tab-config-password-policy" role="tab" data-toggle="tab"><?=$lang['admin']['password_policy'];?></a></li>
         <li role="presentation"><a href="#tab-config-customize" aria-controls="tab-config-customize" role="tab" data-toggle="tab"><?=$lang['admin']['customize'];?></a></li>
       </ul>
     </li>
@@ -40,17 +50,18 @@
   <div class="row">
   <div class="col-md-12">
   <div class="tab-content" style="padding-top:20px">
-  <div role="tabpanel" class="tab-pane active" id="tab-access">
+  <div role="tabpanel" class="tab-pane active" id="tab-config-admins">
     <div class="panel panel-danger">
-      <div class="panel-heading"><?=$lang['admin']['admin_details'];?></div>
+      <div class="panel-heading xs-show"><?=$lang['admin']['admin_details'];?></div>
       <div class="panel-body">
         <div class="table-responsive">
           <table class="table table-striped table-condensed" id="adminstable"></table>
         </div>
         <div class="mass-actions-admin">
           <div class="btn-group">
-            <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="admins" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-            <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="admins" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+            <div class="clearfix visible-xs"></div>
             <ul class="dropdown-menu">
               <li><a data-action="edit_selected" data-id="admins" data-api-url='edit/admin' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
               <li><a data-action="edit_selected" data-id="admins" data-api-url='edit/admin' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
@@ -59,7 +70,7 @@
               <li role="separator" class="divider"></li>
               <li><a data-action="delete_selected" data-id="admins" data-api-url='delete/admin' href="#"><?=$lang['mailbox']['remove'];?></a></li>
             </ul>
-            <a class="btn btn-sm btn-success" data-id="add_admin" data-toggle="modal" data-target="#addAdminModal" href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add_admin'];?></a>
+            <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-id="add_admin" data-toggle="modal" data-target="#addAdminModal" href="#"><i class="bi bi-person-plus-fill"></i> <?=$lang['admin']['add_admin'];?></a>
           </div>
         </div>
 
@@ -70,17 +81,17 @@
         <div class="row">
           <div class="col-sm-3 col-xs-5 text-right"><?=$lang['tfa']['tfa'];?>:</div>
           <div class="col-sm-9 col-xs-7">
-            <p id="tfa_pretty"><?=$tfa_data['pretty'];?></p>
+            <p id="tfa_pretty"><?=(isset($tfa_data['pretty'])) ? $tfa_data['pretty'] : '';?></p>
               <div id="tfa_keys">
                 <?php
                 if (!empty($tfa_data['additional'])) {
                   foreach ($tfa_data['additional'] as $key_info) {
                 ?>
                 <form style="display:inline;" method="post">
-                  <input type="hidden" name="unset_tfa_key" value="<?=$key_info['id'];?>" />
+                  <input type="hidden" name="unset_tfa_key" value="<?=$key_info['id'];?>">
                   <div style="padding:4px;margin:4px" class="label label-keys label-<?=($_SESSION['tfa_id'] == $key_info['id']) ? 'success' : 'default'; ?>">
                   <?=$key_info['key_id'];?>
-                  <a href="#" style="font-weight:bold;color:white" onClick="$(this).closest('form').submit()">[<?=strtolower($lang['admin']['remove']);?>]</a>
+                  <a href="#" style="font-weight:bold;color:white" onClick="$(this).closest('form').submit()">[<?=$lang['admin']['remove'];?>]</a>
                   </div>
                 </form>
                 <?php
@@ -105,13 +116,11 @@
 
         <? // FIDO2 ?>
         <legend style="margin-top:20px">
-        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" style="margin-bottom: -5px;">
-          <path d="M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28zM3.5 9.72c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7-.23.16-.54.11-.7-.12-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21zm6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39-2.57 0-4.66 1.97-4.66 4.39 0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15zm7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12zM14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24-2.17-5.22 0-1.62 1.38-2.94 3.08-2.94 1.7 0 3.08 1.32 3.08 2.94 0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38z"/>
-        </svg>
+        <i class="bi bi-shield-fill-check"></i>
         <?=$lang['fido2']['fido2_auth'];?></legend>
         <div class="row">
-          <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['known_ids'];?>:</div>
-          <div class="col-sm-9 col-xs-7">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left space20"><?=$lang['fido2']['known_ids'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
               <div class="table-responsive">
               <table class="table table-striped table-hover table-condensed" id="fido2_keys">
                 <tr>
@@ -124,14 +133,14 @@
                 ?>
                 <tr>
                   <td>
-                    <?=($_SESSION['fido2_cid'] == $key_info['cid']) ? '→ ' : NULL; ?><?=(!empty($key_info['fn']))?$key_info['fn']:$key_info['subject'];?>
+                    <?=(isset($_SESSION['fido2_cid']) && $_SESSION['fido2_cid'] == $key_info['cid']) ? '<i class="bi bi-unlock-fill"></i> ' : NULL; ?><?=(!empty($key_info['fn']))?$key_info['fn']:$key_info['subject'];?>
                   </td>
                   <td style="min-width:240px;text-align: right">
                     <form style="display:inline;" method="post">
-                    <input type="hidden" name="unset_fido2_key" value="<?=$key_info['cid'];?>" />
+                    <input type="hidden" name="unset_fido2_key" value="<?=$key_info['cid'];?>">
                     <div class="btn-group">
-                    <a href="#" class="btn btn-xs btn-default" data-cid="<?=$key_info['cid'];?>" data-subject="<?=base64_encode($key_info['subject']);?>" data-toggle="modal" data-target="#fido2ChangeFn"><span class="glyphicon glyphicon-pencil"></span> <?=strtolower($lang['fido2']['rename']);?></a>
-                    <a href="#" onClick='return confirm("<?=$lang['admin']['ays'];?>")?$(this).closest("form").submit():"";' class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> <?=strtolower($lang['admin']['remove']);?></a>
+                    <a href="#" class="btn btn-xs btn-default" data-cid="<?=$key_info['cid'];?>" data-subject="<?=base64_encode($key_info['subject']);?>" data-toggle="modal" data-target="#fido2ChangeFn"><i class="bi bi-pencil-fill"></i> <?=$lang['fido2']['rename'];?></a>
+                    <a href="#" onClick='return confirm("<?=$lang['admin']['ays'];?>")?$(this).closest("form").submit():"";' class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> <?=$lang['admin']['remove'];?></a>
                     </form>
                     </div>
                   </td>
@@ -147,7 +156,7 @@
         </div>
         <div class="row">
           <div class="col-sm-offset-3 col-sm-9">
-            <button class="btn btn-sm btn-primary" id="register-fido2"><?=$lang['fido2']['set_fido2'];?></button>
+            <button class="btn btn-sm btn-primary visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline" id="register-fido2"><?=$lang['fido2']['set_fido2'];?></button>
           </div>
         </div>
         <br>
@@ -159,8 +168,8 @@
           <br>
         </div>
 
-        <legend style="cursor:pointer;margin-top:40px" data-target="#license" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-          <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['guid_and_license'];?>
+        <legend style="cursor:pointer;margin-top:40px" data-target="#license" unselectable="on" data-toggle="collapse">
+          <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['guid_and_license'];?>
         </legend>
         <div id="license" class="collapse">
         <form class="form-horizontal" autocapitalize="none" autocorrect="off" role="form" method="post">
@@ -169,7 +178,7 @@
             <div class="col-sm-9">
               <div class="input-group">
                 <span class="input-group-addon">
-                  <span class="glyphicon <?=(isset($_SESSION['gal']['valid']) && $_SESSION['gal']['valid'] === "true") ? 'glyphicon-heart text-danger' : 'glyphicon-remove';?>" aria-hidden="true"></span>
+                  <i class="bi bi-suit-heart<?=(isset($_SESSION['gal']['valid']) && $_SESSION['gal']['valid'] === "true") ? '-fill text-danger' : '';?>"></i>
                 </span>
                 <input type="text" id="guid" class="form-control" value="<?=license('guid');?>" readonly>
               </div>
@@ -184,15 +193,15 @@
             <div class="col-sm-offset-3 col-sm-9">
               <p class="help-block"><?=$lang['admin']['license_info'];?></p>
               <div class="btn-group">
-                <button class="btn btn-sm btn-success" name="license_validate_now" type="submit" href="#"><?=$lang['admin']['validate_license_now'];?></button>
+                <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" name="license_validate_now" type="submit" href="#"><?=$lang['admin']['validate_license_now'];?></button>
               </div>
             </div>
           </div>
         </form>
         </div>
 
-        <legend style="cursor:pointer;" data-target="#admin_api" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-          <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> API
+        <legend style="cursor:pointer;" data-target="#admin_api" unselectable="on" data-toggle="collapse">
+          <i style="font-size:10pt;" class="bi bi-plus-square"></i> API
         </legend>
         <div id="admin_api" class="collapse">
         <div class="row">
@@ -206,20 +215,20 @@
           <div class="col-lg-6">
             <div class="panel panel-default">
               <div class="panel-heading">
-                <h4 class="panel-title">⇇ Read-Only Access</h4>
+                <h4 class="panel-title"><i class="bi bi-file-earmark-arrow-down"></i> <?=$lang['admin']['api_read_only'];?></h4>
               </div>
                 <div class="panel-body">
                   <form class="form-horizontal" autocapitalize="none" autocorrect="off" role="form" method="post">
                     <div class="form-group">
                       <label class="control-label col-sm-3" for="allow_from_ro"><?=$lang['admin']['api_allow_from'];?>:</label>
                       <div class="col-sm-9">
-                        <textarea class="form-control textarea-code" rows="7" name="allow_from" id="allow_from_ro" <?=($api_ro['skip_ip_check'] == 1) ? 'disabled' : null;?> required><?=htmlspecialchars($api_ro['allow_from']);?></textarea>
+                        <textarea class="form-control textarea-code" rows="7" name="allow_from" id="allow_from_ro" <?=(isset($api_ro['skip_ip_check']) && $api_ro['skip_ip_check'] == 1) ? 'disabled' : null;?> required><?=(isset($api_ro['allow_from'])) ? htmlspecialchars($api_ro['allow_from']) : '';?></textarea>
                       </div>
                     </div>
                     <div class="form-group">
                       <div class="col-sm-offset-3 col-sm-9">
                         <label>
-                          <input type="checkbox" name="skip_ip_check" id="skip_ip_check_ro" <?=($api_ro['skip_ip_check'] == 1) ? 'checked' : null;?>> <?=$lang['admin']['api_skip_ip_check'];?>
+                          <input type="checkbox" name="skip_ip_check" id="skip_ip_check_ro" <?=(isset($api_ro['skip_ip_check']) && $api_ro['skip_ip_check'] == 1) ? 'checked' : null;?>> <?=$lang['admin']['api_skip_ip_check'];?>
                         </label>
                       </div>
                     </div>
@@ -232,15 +241,15 @@
                     <div class="form-group">
                       <div class="col-sm-offset-3 col-sm-9">
                         <label>
-                          <input type="checkbox" name="active" <?=($api_ro['active'] == 1) ? 'checked' : null;?>> <?=$lang['admin']['activate_api'];?>
+                          <input type="checkbox" name="active" <?=(isset($api_ro['active']) && $api_ro['active'] == 1) ? 'checked' : null;?>> <?=$lang['admin']['activate_api'];?>
                         </label>
                       </div>
                     </div>
                     <div class="form-group">
                       <div class="col-sm-offset-3 col-sm-9">
                         <div class="btn-group">
-                          <button class="btn btn-sm btn-success" name="admin_api[ro]" type="submit" href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
-                          <button class="btn btn-sm btn-default admin-ays-dialog" name="admin_api_regen_key[ro]" type="submit" href="#" <?=(!empty($api_ro['api_key'])) ?: 'disabled';?>><?=$lang['admin']['regen_api_key'];?></button>
+                          <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" name="admin_api[ro]" type="submit" href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+                          <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default admin-ays-dialog" name="admin_api_regen_key[ro]" type="submit" href="#" <?=(!empty($api_ro['api_key'])) ?: 'disabled';?>><?=$lang['admin']['regen_api_key'];?></button>
                         </div>
                       </div>
                     </div>
@@ -251,7 +260,7 @@
           <div class="col-lg-6">
             <div class="panel panel-default">
               <div class="panel-heading">
-                <h4 class="panel-title">⇄ Read-Write Access</h4>
+                <h4 class="panel-title"><i class="bi bi-file-earmark-diff"></i> <?=$lang['admin']['api_read_write'];?></h4>
               </div>
                 <div class="panel-body">
                   <form class="form-horizontal" autocapitalize="none" autocorrect="off" role="form" method="post">
@@ -284,8 +293,8 @@
                     <div class="form-group">
                       <div class="col-sm-offset-3 col-sm-9">
                         <div class="btn-group">
-                          <button class="btn btn-sm btn-success" name="admin_api[rw]" type="submit" href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
-                          <button class="btn btn-sm btn-default admin-ays-dialog" name="admin_api_regen_key[rw]" type="submit" <?=(!empty($api_rw['api_key'])) ?: 'disabled';?> href="#"><?=$lang['admin']['regen_api_key'];?></button>
+                          <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" name="admin_api[rw]" type="submit" href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+                          <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default admin-ays-dialog" name="admin_api_regen_key[rw]" type="submit" <?=(!empty($api_rw['api_key'])) ?: 'disabled';?> href="#"><?=$lang['admin']['regen_api_key'];?></button>
                         </div>
                       </div>
                     </div>
@@ -299,15 +308,15 @@
     </div>
 
     <div class="panel panel-default">
-    <div class="panel-heading"><?=$lang['admin']['domain_admins'];?></div>
+    <div class="panel-heading xs-show"><?=$lang['admin']['domain_admins'];?></div>
         <div class="panel-body">
           <div class="table-responsive">
             <table class="table table-striped table-condensed" id="domainadminstable"></table>
           </div>
           <div class="mass-actions-admin">
             <div class="btn-group">
-              <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="domain_admins" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-              <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="domain_admins" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
               <ul class="dropdown-menu">
                 <li><a data-action="edit_selected" data-id="domain_admins" data-api-url='edit/domain-admin' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                 <li><a data-action="edit_selected" data-id="domain_admins" data-api-url='edit/domain-admin' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
@@ -316,14 +325,25 @@
                 <li role="separator" class="divider"></li>
                 <li><a data-action="delete_selected" data-id="domain_admins" data-api-url='delete/domain-admin' href="#"><?=$lang['mailbox']['remove'];?></a></li>
               </ul>
-              <a class="btn btn-sm btn-success" data-id="add_domain_admin" data-toggle="modal" data-target="#addDomainAdminModal" href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add_domain_admin'];?></a>
+              <div class="clearfix visible-xs"></div>
+              <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-id="add_domain_admin" data-toggle="modal" data-target="#addDomainAdminModal" href="#"><i class="bi bi-person-plus-fill"></i> <?=$lang['admin']['add_domain_admin'];?></a>
             </div>
           </div>
         </div>
     </div>
+  </div>
 
+  <div role="tabpanel" class="tab-pane" id="tab-config-ldap-admins">
     <div class="panel panel-default">
-    <div class="panel-heading">OAuth2 Apps</div>
+    <div class="panel-heading"><?=$lang['admin']['admins_ldap'];?></div>
+        <div class="panel-body">
+        </div>
+    </div>
+  </div>
+
+  <div role="tabpanel" class="tab-pane" id="tab-config-oauth2">
+    <div class="panel panel-default">
+    <div class="panel-heading"><?=$lang['admin']['oauth2_apps'];?></div>
         <div class="panel-body">
           <p><?=$lang['admin']['oauth2_info'];?></p>
           <div class="table-responsive">
@@ -331,8 +351,8 @@
           </div>
           <div class="mass-actions-admin">
             <div class="btn-group">
-              <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="oauth2_clients" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-              <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="oauth2_clients" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
               <ul class="dropdown-menu">
                 <li><a data-action="delete_selected" data-id="oauth2_clients" data-api-url='delete/oauth2-client' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 <li role="separator" class="divider"></li>
@@ -340,48 +360,54 @@
                 <li role="separator" class="divider"></li>
                 <li><a data-action="edit_selected" data-id="oauth2_clients" data-api-url='edit/oauth2-client' data-api-attr='{"renew_secret":"1"}' href="#"><?=$lang['admin']['oauth2_renew_secret'];?></a></li>
               </ul>
-              <a class="btn btn-sm btn-success" data-id="add_oauth2_client" data-toggle="modal" data-target="#addOAuth2ClientModal" href="#"><span class="glyphicon glyphicon-plus"></span> Add OAuth2 client</a>
+              <div class="clearfix visible-xs"></div>
+              <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-id="add_oauth2_client" data-toggle="modal" data-target="#addOAuth2ClientModal" href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['oauth2_add_client'];?></a>
             </div>
           </div>
         </div>
     </div>
+  </div>
 
+  <div role="tabpanel" class="tab-pane" id="tab-config-rspamd">
     <div class="panel panel-default">
       <div class="panel-heading">
         <h3 class="panel-title">Rspamd UI</h3>
       </div>
       <div class="panel-body">
         <div class="row">
-          <div class="col-sm-9">
+          <div class="col-xs-12 visible-xs">
+            <img class="img-responsive" src="/img/rspamd_logo.png" alt="Rspamd UI">
+          </div>
+          <div class="col-sm-9 col-xs-12">
           <form class="form-horizontal" autocapitalize="none" data-id="admin" autocorrect="off" role="form" method="post">
             <div class="form-group">
               <div class="col-sm-offset-3 col-sm-9">
                 <label>
-                  <a href="/rspamd/" target="_blank"><span class="glyphicon glyphicon-new-window" aria-hidden="true"></span> Rspamd UI</a>
+                  <a href="/rspamd/" target="_blank"><i class="bi bi-window"></i> Rspamd UI</a>
                 </label>
               </div>
             </div>
             <div class="form-group">
               <label class="control-label col-sm-3" for="rspamd_ui_pass"><?=$lang['admin']['password'];?>:</label>
               <div class="col-sm-9">
-              <input type="password" class="form-control" name="rspamd_ui_pass" autocomplete="new-password" required>
+              <input type="password" class="form-control" id="rspamd_ui_pass" name="rspamd_ui_pass" autocomplete="new-password" required>
               </div>
             </div>
             <div class="form-group">
               <label class="control-label col-sm-3" for="rspamd_ui_pass2"><?=$lang['admin']['password_repeat'];?>:</label>
               <div class="col-sm-9">
-              <input type="password" class="form-control" name="rspamd_ui_pass2" autocomplete="new-password" required>
+              <input type="password" class="form-control" id="rspamd_ui_pass2" name="rspamd_ui_pass2" autocomplete="new-password" required>
               </div>
             </div>
             <div class="form-group">
               <div class="col-sm-offset-3 col-sm-9">
-                <button type="submit" class="btn btn-sm btn-success" id="rspamd_ui" name="rspamd_ui" href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+                <button type="submit" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" id="rspamd_ui" name="rspamd_ui" href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
               </div>
             </div>
           </form>
           </div>
-          <div class="col-sm-3">
-            <img class="img-responsive" src="/img/rspamd_logo.png" alt="Rspamd UI" />
+          <div class="col-sm-3 hidden-xs">
+            <img class="img-responsive" src="/img/rspamd_logo.png" alt="Rspamd UI">
           </div>
         </div>
       </div>
@@ -398,34 +424,35 @@
         </div>
         <div class="mass-actions-admin">
           <div class="btn-group btn-group-sm">
-            <button type="button" id="toggle_multi_select_all" data-id="rlyhosts" class="btn btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
-            <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-            <ul class="dropdown-menu">
+            <button type="button" id="toggle_multi_select_all" data-id="rlyhosts" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+            <ul class="dropdown-menu top100">
               <li><a data-action="edit_selected" data-id="rlyhosts" data-api-url='edit/relayhost' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
               <li><a data-action="edit_selected" data-id="rlyhosts" data-api-url='edit/relayhost' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
               <li role="separator" class="divider"></li>
               <li><a data-action="delete_selected" data-id="rlyhosts" data-api-url='delete/relayhost' href="#"><?=$lang['admin']['remove'];?></a></li>
             </ul>
+            <div class="clearfix visible-xs"></div>
           </div>
         </div>
         <legend><?=$lang['admin']['add_relayhost'];?></legend>
         <p class="help-block"><?=$lang['admin']['add_relayhost_hint'];?></p>
         <div class="row">
-          <div class="col-md-6">
+          <div class="col-md-8">
             <form class="form" data-id="rlyhost" role="form" method="post">
               <div class="form-group">
-                <label for="hostname"><?=$lang['admin']['host'];?></label>
-                <input class="form-control input-sm" name="hostname" placeholder='[0.0.0.0], [0.0.0.0]:25, host:25, host, [host]:25' required>
+                <label for="rlyhost_hostname"><?=$lang['admin']['host'];?></label>
+                <input class="form-control" id="rlyhost_hostname" name="hostname" placeholder='[0.0.0.0], [0.0.0.0]:25, host:25, host, [host]:25' required>
               </div>
               <div class="form-group">
-                <label for="username"><?=$lang['admin']['username'];?></label>
-                <input class="form-control input-sm" name="username">
+                <label for="rlyhost_username"><?=$lang['admin']['username'];?></label>
+                <input class="form-control" id="rlyhost_username" name="username">
               </div>
               <div class="form-group">
-                <label for="password"><?=$lang['admin']['password'];?></label>
-                <input class="form-control input-sm" name="password">
+                <label for="rlyhost_password"><?=$lang['admin']['password'];?></label>
+                <input class="form-control" id="rlyhost_password" name="password">
               </div>
-              <button class="btn btn-default" data-action="add_item" data-id="rlyhost" data-api-url='add/relayhost' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add'];?></button>
+              <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="rlyhost" data-api-url='add/relayhost' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
             </form>
           </div>
         </div>
@@ -441,49 +468,50 @@
         </div>
         <div class="mass-actions-admin">
           <div class="btn-group btn-group-sm">
-            <button type="button" id="toggle_multi_select_all" data-id="transports" class="btn btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
-            <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-            <ul class="dropdown-menu">
+            <button type="button" id="toggle_multi_select_all" data-id="transports" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+            <ul class="dropdown-menu top100">
               <li><a data-action="edit_selected" data-id="transports" data-api-url='edit/transport' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
               <li><a data-action="edit_selected" data-id="transports" data-api-url='edit/transport' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
               <li role="separator" class="divider"></li>
               <li><a data-action="delete_selected" data-id="transports" data-api-url='delete/transport' href="#"><?=$lang['admin']['remove'];?></a></li>
             </ul>
+            <div class="clearfix visible-xs"></div>
           </div>
         </div>
         <legend><?=$lang['admin']['add_transport'];?></legend>
         <p class="help-block"><?=$lang['admin']['add_transports_hint'];?></p>
         <div class="row">
-          <div class="col-md-6">
+          <div class="col-md-8">
             <form class="form" data-id="transport" role="form" method="post">
               <div class="form-group">
-                <label for="destination"><?=$lang['admin']['destination'];?></label>
-                <input class="form-control input-sm" name="destination" placeholder='<?=$lang['admin']['transport_dest_format'];?>' required>
+                <label for="transport_destination"><?=$lang['admin']['destination'];?></label>
+                <input class="form-control" id="transport_destination" name="destination" placeholder='<?=$lang['admin']['transport_dest_format'];?>' required>
               </div>
               <div class="form-group">
-                <label for="nexthop"><?=$lang['admin']['nexthop'];?></label>
-                <input class="form-control input-sm" name="nexthop" placeholder='host:25, host, [host]:25, [0.0.0.0]:25' required>
+                <label for="transport_nexthop"><?=$lang['admin']['nexthop'];?></label>
+                <input class="form-control" id="transport_nexthop" name="nexthop" placeholder='host:25, host, [host]:25, [0.0.0.0]:25' required>
               </div>
               <div class="form-group">
-                <label for="username"><?=$lang['admin']['username'];?></label>
-                <input class="form-control input-sm" name="username">
+                <label for="transport_username"><?=$lang['admin']['username'];?></label>
+                <input class="form-control" id="transport_username" name="username">
               </div>
               <div class="form-group">
-                <label for="password"><?=$lang['admin']['password'];?></label>
-                <input class="form-control input-sm" name="password">
+                <label for="transport_password"><?=$lang['admin']['password'];?></label>
+                <input class="form-control" id="transport_password" name="password">
               </div>
-              <!-- <div class="form-group">
+              <div class="form-group">
                 <label>
-                  <input type="checkbox" name="lookup_mx" value="1"> <?=$lang['admin']['lookup_mx'];?>
+                  <input type="checkbox" name="is_mx_based" value="1"> <?=$lang['admin']['lookup_mx'];?>
                 </label>
-              </div> -->
+              </div>
               <div class="form-group">
                 <label>
                   <input type="checkbox" name="active" value="1"> <?=$lang['admin']['active'];?>
                 </label>
               </div>
               <p class="help-block"><?=$lang['admin']['credentials_transport_warning'];?></p>
-              <button class="btn btn-default" data-action="add_item" data-id="transport" data-api-url='add/transport' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add'];?></button>
+              <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="transport" data-api-url='add/transport' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
             </form>
           </div>
         </div>
@@ -496,9 +524,10 @@
       <div class="panel-heading"><?=$lang['admin']['dkim_keys'];?></div>
       <div class="panel-body">
         <div class="btn-group" data-toggle="button" style="margin-bottom: 20px;">
-          <a class="btn btn-sm btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_valid"><?=$lang['admin']['dkim_key_valid'];?></a>
-          <a class="btn btn-sm btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_unused"><?=$lang['admin']['dkim_key_unused'];?></a>
-          <a class="btn btn-sm btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_missing"><?=$lang['admin']['dkim_key_missing'];?></a>
+          <a class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_valid"><?=$lang['admin']['dkim_key_valid'];?></a>
+          <a class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_unused"><?=$lang['admin']['dkim_key_unused'];?></a>
+          <a class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default active" href="#" data-toggle="collapse" data-target=".dkim_key_missing"><?=$lang['admin']['dkim_key_missing'];?></a>
+          <div class="clearfix visible-xs"></div>
         </div>
         <?php
         foreach(mailbox('get', 'domains') as $domain) {
@@ -507,7 +536,7 @@
               ($GLOBALS['SHOW_DKIM_PRIV_KEYS'] === true) ?: $dkim['privkey'] = base64_encode('Please set $SHOW_DKIM_PRIV_KEYS to true to show DKIM private keys.');
           ?>
             <div class="row collapse in dkim_key_valid">
-              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$domain;?>" /></div>
+              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$domain;?>"></div>
               <div class="col-md-3">
                 <p><?=$lang['admin']['domain'];?>: <strong><?=htmlspecialchars($domain);?></strong>
                   <p class="dkim-label"><span class="label label-success"><?=$lang['admin']['dkim_key_valid'];?></span></p>
@@ -517,7 +546,7 @@
               </div>
               <div class="col-md-8">
                   <pre><?=$dkim['dkim_txt'];?></pre>
-                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small>↪ <?=$lang['admin']['dkim_private_key'];?></small></p>
+                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small><i class="bi bi-arrow-return-right"></i> <?=$lang['admin']['dkim_private_key'];?></small></p>
               </div>
               <hr class="visible-xs visible-sm">
             </div>
@@ -526,7 +555,7 @@
           else {
           ?>
           <div class="row collapse in dkim_key_missing">
-            <div class="col-md-1"><input class="dkim_missing" type="checkbox" data-id="dkim" name="multi_select" value="<?=$domain;?>" disabled /></div>
+            <div class="col-md-1"><input class="dkim_missing" type="checkbox" data-id="dkim" name="multi_select" value="<?=$domain;?>" disabled></div>
             <div class="col-md-3">
               <p><?=$lang['admin']['domain'];?>: <strong><?=htmlspecialchars($domain);?></strong><br><span class="label label-danger"><?=$lang['admin']['dkim_key_missing'];?></span></p>
             </div>
@@ -541,7 +570,7 @@
               ($GLOBALS['SHOW_DKIM_PRIV_KEYS'] === true) ?: $dkim['privkey'] = base64_encode('Please set $SHOW_DKIM_PRIV_KEYS to true to show DKIM private keys.');
             ?>
               <div class="row collapse in dkim_key_valid">
-              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$alias_domain;?>" /></div>
+              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$alias_domain;?>"></div>
                 <div class="col-md-2 col-md-offset-1">
                   <p><small>↳ Alias-Domain: <strong><?=htmlspecialchars($alias_domain);?></strong></small>
                     <p class="dkim-label"><span class="label label-success"><?=$lang['admin']['dkim_key_valid'];?></span></p>
@@ -551,7 +580,7 @@
                 </div>
                 <div class="col-md-8">
                   <pre><?=$dkim['dkim_txt'];?></pre>
-                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small>↪ Private key</small></p>
+                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small><i class="bi bi-arrow-return-right"></i> Private key</small></p>
                 </div>
               <hr class="visible-xs visible-sm">
               </div>
@@ -560,7 +589,7 @@
             else {
             ?>
             <div class="row collapse in dkim_key_missing">
-              <div class="col-md-1"><input class="dkim_missing" type="checkbox" data-id="dkim" name="multi_select" value="<?=$alias_domain;?>" disabled /></div>
+              <div class="col-md-1"><input class="dkim_missing" type="checkbox" data-id="dkim" name="multi_select" value="<?=$alias_domain;?>" disabled></div>
               <div class="col-md-2 col-md-offset-1">
                 <p><small>↳ Alias-Domain: <strong><?=htmlspecialchars($alias_domain);?></strong><br></small><span class="label label-danger"><?=$lang['admin']['dkim_key_missing'];?></span></p>
               </div>
@@ -577,7 +606,7 @@
             ($GLOBALS['SHOW_DKIM_PRIV_KEYS'] === true) ?: $dkim['privkey'] = base64_encode('Please set $SHOW_DKIM_PRIV_KEYS to true to show DKIM private keys.');
           ?>
             <div class="row collapse in dkim_key_unused">
-              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$blind;?>" /></div>
+              <div class="col-md-1"><input type="checkbox" data-id="dkim" name="multi_select" value="<?=$blind;?>"></div>
               <div class="col-md-3">
                 <p><?=$lang['admin']['domain'];?>: <strong><?=htmlspecialchars($blind);?></strong>
                   <p class="dkim-label"><span class="label label-warning"><?=$lang['admin']['dkim_key_unused'];?></span></p>
@@ -587,7 +616,7 @@
                 </div>
                 <div class="col-md-8">
                   <pre><?=$dkim['dkim_txt'];?></pre>
-                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small>↪ Private key</small></p>
+                  <p data-toggle="modal" data-target="#showDKIMprivKey" id="dkim_priv" style="cursor:pointer;margin-top:-8pt" data-priv-key="<?=$dkim['privkey'];?>"><small><i class="bi bi-arrow-return-right"></i> Private key</small></p>
                 </div>
                 <hr class="visible-xs visible-sm">
             </div>
@@ -597,43 +626,44 @@
         ?>
         <div class="mass-actions-admin">
           <div class="btn-group btn-group-sm">
-            <button type="button" id="toggle_multi_select_all" data-id="dkim" class="btn btn-default"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></button>
-            <button type="button" data-action="delete_selected" name="delete_selected" data-id="dkim" data-api-url="delete/dkim" class="btn btn-danger"><span class="glyphicon glyphicon-trash"></span> <?=$lang['admin']['remove'];?></button>
+            <button type="button" id="toggle_multi_select_all" data-id="dkim" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></button>
+            <button type="button" data-action="delete_selected" name="delete_selected" data-id="dkim" data-api-url="delete/dkim" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger"><i class="bi bi-trash"></i> <?=$lang['admin']['remove'];?></button>
+            <div class="clearfix visible-xs"></div>
           </div>
         </div>
 
         <legend style="margin-top:40px"><?=$lang['admin']['dkim_add_key'];?></legend>
         <form class="form" data-id="dkim" role="form" method="post">
           <div class="form-group">
-            <label for="domain"><?=$lang['admin']['domain_s'];?></label>
+            <label for="dkim_add_domains"><?=$lang['admin']['domain_s'];?></label>
             <input class="form-control input-sm" id="dkim_add_domains" name="domains" placeholder="example.org, example.com" required>
-            <small>↪ <a href="#" id="dkim_missing_keys"><?=$lang['admin']['dkim_domains_wo_keys'];?></a></small>
+            <small><i class="bi bi-arrow-return-right"></i> <a href="#" id="dkim_missing_keys"><?=$lang['admin']['dkim_domains_wo_keys'];?></a></small>
           </div>
           <div class="form-group">
-            <label for="domain"><?=$lang['admin']['dkim_domains_selector'];?></label>
-            <input class="form-control input-sm" name="dkim_selector" value="dkim" required>
+            <label for="dkim_selector"><?=$lang['admin']['dkim_domains_selector'];?></label>
+            <input class="form-control input-sm" id="dkim_selector" name="dkim_selector" value="dkim" required>
           </div>
           <div class="form-group">
-            <select data-width="200px" data-style="btn btn-default btn-sm" class="form-control" id="key_size" name="key_size" title="<?=$lang['admin']['dkim_key_length'];?>" required>
+            <select data-style="btn btn-default btn-sm" class="form-control" id="key_size" name="key_size" title="<?=$lang['admin']['dkim_key_length'];?>" required>
               <option data-subtext="bits">1024</option>
               <option data-subtext="bits">2048</option>
             </select>
           </div>
-          <button class="btn btn-sm btn-default" data-action="add_item" data-id="dkim" data-api-url='add/dkim' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="dkim" data-api-url='add/dkim' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
         </form>
 
-        <legend data-target="#import_dkim" style="margin-top:40px;cursor:pointer" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-          <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['import_private_key'];?>
+        <legend data-target="#import_dkim" style="margin-top:40px;cursor:pointer" unselectable="on" data-toggle="collapse">
+          <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['import_private_key'];?>
         </legend>
         <div id="import_dkim" class="collapse">
         <form class="form" data-id="dkim_import" role="form" method="post">
           <div class="form-group">
-            <label for="domain"><?=$lang['admin']['domain'];?>:</label>
-            <input class="form-control input-sm" name="domain" placeholder="example.org" required>
+            <label for="dkim_import_domain"><?=$lang['admin']['domain'];?>:</label>
+            <input class="form-control input-sm" id="dkim_import_domain" name="domain" placeholder="example.org" required>
           </div>
           <div class="form-group">
-            <label for="domain"><?=$lang['admin']['dkim_domains_selector'];?>:</label>
-            <input class="form-control input-sm" name="dkim_selector" value="dkim" required>
+            <label for="dkim_import_selector"><?=$lang['admin']['dkim_domains_selector'];?>:</label>
+            <input class="form-control input-sm" id="dkim_import_selector" name="dkim_selector" value="dkim" required>
           </div>
           <div class="form-group">
             <label for="private_key_file"><?=$lang['admin']['private_key'];?>: (RSA PKCS#8)</label>
@@ -644,12 +674,12 @@
               <input type="checkbox" name="overwrite_existing" value="1"> <?=$lang['admin']['dkim_overwrite_key'];?>
             </label>
           </div>
-          <button class="btn btn-sm btn-default" data-action="add_item" data-id="dkim_import" data-api-url='add/dkim_import' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['import'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="add_item" data-id="dkim_import" data-api-url='add/dkim_import' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['import'];?></button>
         </form>
         </div>
 
-        <legend data-target="#duplicate_dkim" style="margin-top:40px;cursor:pointer" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-          <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['duplicate_dkim'];?>
+        <legend data-target="#duplicate_dkim" style="margin-top:40px;cursor:pointer" unselectable="on" data-toggle="collapse">
+          <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['duplicate_dkim'];?>
         </legend>
         <div id="duplicate_dkim" class="collapse">
           <form class="form-horizontal" data-id="dkim_duplicate" role="form" method="post">
@@ -690,7 +720,7 @@
               </select>
               </div>
             </div>
-            <button class="btn btn-sm btn-default" data-action="add_item" data-id="dkim_duplicate" data-api-url='add/dkim_duplicate' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-duplicate"></span> <?=$lang['admin']['duplicate'];?></button>
+            <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="add_item" data-id="dkim_duplicate" data-api-url='add/dkim_duplicate' data-api-attr='{}' href="#"><i class="bi bi-clipboard-plus"></i> <?=$lang['admin']['duplicate'];?></button>
           </form>
         </div>
       </div>
@@ -707,22 +737,23 @@
         </div>
         <div class="mass-actions-admin">
           <div class="btn-group btn-group-sm">
-            <button type="button" id="toggle_multi_select_all" data-id="fwdhosts" class="btn btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
-            <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-            <ul class="dropdown-menu">
+            <button type="button" id="toggle_multi_select_all" data-id="fwdhosts" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><?=$lang['mailbox']['toggle_all'];?></button>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+            <ul class="dropdown-menu top100">
               <li><a data-action="edit_selected" data-id="fwdhosts" data-api-url='edit/fwdhost' data-api-attr='{"keep_spam":"0"}' href="#">Enable spam filter</a></li>
               <li><a data-action="edit_selected" data-id="fwdhosts" data-api-url='edit/fwdhost' data-api-attr='{"keep_spam":"1"}' href="#">Disable spam filter</a></li>
               <li role="separator" class="divider"></li>
               <li><a data-action="delete_selected" data-id="fwdhosts" data-api-url='delete/fwdhost' href="#"><?=$lang['admin']['remove'];?></a></li>
             </ul>
+            <div class="clearfix visible-xs"></div>
           </div>
         </div>
         <legend><?=$lang['admin']['add_forwarding_host'];?></legend>
         <p class="help-block"><?=$lang['admin']['forwarding_hosts_add_hint'];?></p>
         <form class="form" data-id="fwdhost" role="form" method="post">
           <div class="form-group">
-            <label for="hostname"><?=$lang['admin']['host'];?></label>
-            <input class="form-control" name="hostname" placeholder="example.org" required>
+            <label for="fwdhost_hostname"><?=$lang['admin']['host'];?></label>
+            <input class="form-control" id="fwdhost_hostname" name="hostname" placeholder="example.org" required>
           </div>
           <div class="form-group">
             <select data-width="200px" class="form-control" id="filter_spam" name="filter_spam" title="<?=$lang['user']['spamfilter'];?>" required>
@@ -730,7 +761,7 @@
               <option value="0"><?=$lang['admin']['inactive'];?></option>
             </select>
           </div>
-          <button class="btn btn-default" data-action="add_item" data-id="fwdhost" data-api-url='add/fwdhost' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="fwdhost" data-api-url='add/fwdhost' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
         </form>
       </div>
     </div>
@@ -745,48 +776,51 @@
       ?>
         <form class="form" data-id="f2b" role="form" method="post">
           <div class="form-group">
-            <label for="ban_time"><?=$lang['admin']['f2b_ban_time'];?>:</label>
-            <input type="number" class="form-control" name="ban_time" value="<?=$f2b_data['ban_time'];?>" required>
+            <label for="f2b_ban_time"><?=$lang['admin']['f2b_ban_time'];?>:</label>
+            <input type="number" class="form-control" id="f2b_ban_time" name="ban_time" value="<?=$f2b_data['ban_time'];?>" required>
           </div>
           <div class="form-group">
-            <label for="max_attempts"><?=$lang['admin']['f2b_max_attempts'];?>:</label>
-            <input type="number" class="form-control" name="max_attempts" value="<?=$f2b_data['max_attempts'];?>" required>
+            <label for="f2b_max_attempts"><?=$lang['admin']['f2b_max_attempts'];?>:</label>
+            <input type="number" class="form-control" id="f2b_max_attempts" name="max_attempts" value="<?=$f2b_data['max_attempts'];?>" required>
           </div>
           <div class="form-group">
-            <label for="retry_window"><?=$lang['admin']['f2b_retry_window'];?>:</label>
-            <input type="number" class="form-control" name="retry_window" value="<?=$f2b_data['retry_window'];?>" required>
+            <label for="f2b_retry_window"><?=$lang['admin']['f2b_retry_window'];?>:</label>
+            <input type="number" class="form-control" id="f2b_retry_window" name="retry_window" value="<?=$f2b_data['retry_window'];?>" required>
           </div>
           <div class="form-group">
-            <label for="netban_ipv4"><?=$lang['admin']['f2b_netban_ipv4'];?>:</label>
+            <label for="f2b_netban_ipv4"><?=$lang['admin']['f2b_netban_ipv4'];?>:</label>
             <div class="input-group">
               <span class="input-group-addon">/</span>
-              <input type="number" class="form-control" name="netban_ipv4" value="<?=$f2b_data['netban_ipv4'];?>" required>
+              <input type="number" class="form-control" id="f2b_netban_ipv4" name="netban_ipv4" value="<?=$f2b_data['netban_ipv4'];?>" required>
             </div>
           </div>
           <div class="form-group">
-            <label for="netban_ipv6"><?=$lang['admin']['f2b_netban_ipv6'];?>:</label>
+            <label for="f2b_netban_ipv6"><?=$lang['admin']['f2b_netban_ipv6'];?>:</label>
             <div class="input-group">
               <span class="input-group-addon">/</span>
-              <input type="number" class="form-control" name="netban_ipv6" value="<?=$f2b_data['netban_ipv6'];?>" required>
+              <input type="number" class="form-control" id="f2b_netban_ipv6" name="netban_ipv6" value="<?=$f2b_data['netban_ipv6'];?>" required>
             </div>
           </div>
           <hr>
           <p class="help-block"><?=$lang['admin']['f2b_list_info'];?></p>
           <div class="form-group">
-            <label for="whitelist"><?=$lang['admin']['f2b_whitelist'];?>:</label>
-            <textarea class="form-control" name="whitelist" rows="5"><?=$f2b_data['whitelist'];?></textarea>
+            <label for="f2b_whitelist"><?=$lang['admin']['f2b_whitelist'];?>:</label>
+            <textarea class="form-control" id="f2b_whitelist" name="whitelist" rows="5"><?=$f2b_data['whitelist'];?></textarea>
           </div>
           <div class="form-group">
-            <label for="blacklist"><?=$lang['admin']['f2b_blacklist'];?>:</label>
-            <textarea class="form-control" name="blacklist" rows="5"><?=$f2b_data['blacklist'];?></textarea>
+            <label for="f2b_blacklist"><?=$lang['admin']['f2b_blacklist'];?>:</label>
+            <textarea class="form-control" id="f2b_blacklist" name="blacklist" rows="5"><?=$f2b_data['blacklist'];?></textarea>
           </div>
           <div class="btn-group">
-            <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="self" data-id="f2b" data-api-url='edit/fail2ban' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
-            <a href="#" role="button" class="btn btn-sm btn-default" data-toggle="modal" data-container="netfilter-mailcow" data-target="#RestartContainer"><span class="glyphicon glyphicon-refresh"></span> <?= $lang['header']['restart_netfilter']; ?></a>
+            <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-item="self" data-id="f2b" data-api-url='edit/fail2ban' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+            <a href="#" role="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-toggle="modal" data-container="netfilter-mailcow" data-target="#RestartContainer"><i class="bi bi-arrow-repeat"></i> <?= $lang['header']['restart_netfilter']; ?></a>
+            <div class="clearfix visible-xs"></div>
           </div>
         </form>
-        <hr>
-        <h4><?=$lang['admin']['f2b_filter'];?></h4>
+        <legend data-target="#f2b_regex_filters" style="margin-top:40px;cursor:pointer" unselectable="on" data-toggle="collapse">
+          <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['f2b_filter'];?>
+        </legend>
+        <div id="f2b_regex_filters" class="collapse">
         <p class="help-block"><?=$lang['admin']['f2b_regex_info'];?></p>
         <form class="form-inline" data-id="f2b_regex" role="form" method="post">
           <table class="table table-condensed" id="f2b_regex_table">
@@ -800,9 +834,9 @@
               foreach ($f2b_data['regex'] as $regex_id => $regex_val) {
             ?>
             <tr>
-              <td><input disabled class="input-sm form-control" style="text-align:center" data-id="f2b_regex" type="text" name="app" required value="<?=$regex_id;?>"></td>
-              <td><input class="input-sm form-control regex-input" data-id="f2b_regex" type="text" name="regex" required value="<?=htmlspecialchars($regex_val);?>"></td>
-              <td><a href="#" role="button" class="btn btn-xs btn-default" type="button"><?=$lang['admin']['remove_row'];?></a></td>
+              <td><input disabled class="input-sm input-xs-lg form-control" style="text-align:center" data-id="f2b_regex" type="text" name="app" required value="<?=$regex_id;?>"></td>
+              <td><input class="input-sm input-xs-lg form-control regex-input" data-id="f2b_regex" type="text" name="regex" required value="<?=htmlspecialchars($regex_val);?>"></td>
+              <td><a href="#" role="button" class="btn btn-xs btn-xs-lg btn-default" type="button"><?=$lang['admin']['remove_row'];?></a></td>
             </tr>
             <?php
               }
@@ -810,12 +844,13 @@
             ?>
           </table>
           <p><div class="btn-group">
-            <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="admin" data-id="f2b_regex" data-reload="no" data-api-url='edit/fail2ban' data-api-attr='{"action":"edit-regex"}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
-            <button class="btn btn-sm btn-default admin-ays-dialog" data-action="edit_selected" data-item="self" data-id="f2b-quick" data-api-url='edit/fail2ban' data-api-attr='{"action":"reset-regex"}' href="#"><?=$lang['admin']['reset_default'];?></button>
-            <button class="btn btn-sm btn-default" type="button" id="add_f2b_regex_row"><span class="glyphicon glyphicon-plus"></span> <?=$lang['admin']['add_row'];?></button>
+            <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-item="admin" data-id="f2b_regex" data-reload="no" data-api-url='edit/fail2ban' data-api-attr='{"action":"edit-regex"}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+            <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default admin-ays-dialog" data-action="edit_selected" data-item="self" data-id="f2b-quick" data-api-url='edit/fail2ban' data-api-attr='{"action":"reset-regex"}' href="#"><?=$lang['admin']['reset_default'];?></button>
+            <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" type="button" id="add_f2b_regex_row"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add_row'];?></button>
           </div></p>
         </form>
-        <hr>
+        </div>
+
         <p class="help-block"><?=$lang['admin']['ban_list_info'];?></p>
         <?php
         if (empty($f2b_data['active_bans']) && empty($f2b_data['perm_bans'])):
@@ -826,7 +861,7 @@
         if (!empty($f2b_data['active_bans'])):
           foreach ($f2b_data['active_bans'] as $active_bans):
           ?>
-          <p><span class="label label-info" style="padding:4px;font-size:85%;"><span class="glyphicon glyphicon-filter"></span> <?=$active_bans['network'];?> (<?=$active_bans['banned_until'];?>) -
+          <p><span class="label label-info" style="padding:4px;font-size:85%;"><i class="bi bi-funnel-fill"></i><a href="https://bgp.he.net/ip/<?=$active_bans['ip'];?>" target="_blank" style="color:white"> <?=$active_bans['network'];?></a>(<?=$active_bans['banned_until'];?>) -
             <?php
             if ($active_bans['queued_for_unban'] == 0):
             ?>
@@ -850,7 +885,7 @@
         if (!empty($f2b_data['perm_bans'])):
           foreach ($f2b_data['perm_bans'] as $perm_bans):
           ?>
-          <span class="label label-danger" style="padding: 0.1em 0.4em 0.1em;"><span class="glyphicon glyphicon-filter"></span> <?=$perm_bans?></span>
+          <span class="label label-danger" style="padding: 0.1em 0.4em 0.1em;"><i class="bi bi-funnel-fill"></i><a href="https://bgp.he.net/ip/<?=$perm_bans['ip'];?>" target="_blank" style="color:white"> <?=$perm_bans['network'];?></a></span>
           <?php
           endforeach;
         endif;
@@ -866,66 +901,66 @@
         <?php $q_data = quarantine('settings');
         if (empty($q_data['retention_size']) || empty($q_data['max_size'])):
         ?>
-        <div class="panel-body"><div class="alert alert-info"><?=$lang['quarantine']['disabled_by_config'];?></div></div>
+        <div class="alert alert-info"><?=$lang['quarantine']['disabled_by_config'];?></div>
         <?php
         endif;
         ?>
         <form class="form-horizontal" data-id="quarantine" role="form" method="post">
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="retention_size"><?=$lang['admin']['quarantine_retention_size'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_retention_size"><?=$lang['admin']['quarantine_retention_size'];?></label>
             <div class="col-sm-8">
-              <input type="number" class="form-control" name="retention_size" value="<?=$q_data['retention_size'];?>" placeholder="0" required>
+              <input type="number" class="form-control" id="quarantine_retention_size" name="retention_size" value="<?=$q_data['retention_size'];?>" placeholder="0" required>
             </div>
           </div>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="max_size"><?=$lang['admin']['quarantine_max_size'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_max_size"><?=$lang['admin']['quarantine_max_size'];?></label>
             <div class="col-sm-8">
-              <input type="number" class="form-control" name="max_size" value="<?=$q_data['max_size'];?>" placeholder="0" required>
+              <input type="number" class="form-control" id="quarantine_max_size" name="max_size" value="<?=$q_data['max_size'];?>" placeholder="0" required>
             </div>
           </div>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="max_score"><?=$lang['admin']['quarantine_max_score'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_max_score"><?=$lang['admin']['quarantine_max_score'];?></label>
             <div class="col-sm-8">
-              <input type="number" class="form-control" name="max_score" value="<?=$q_data['max_score'];?>" placeholder="9999.0">
+              <input type="number" class="form-control" id="quarantine_max_score" name="max_score" value="<?=$q_data['max_score'];?>" placeholder="9999.0">
             </div>
           </div>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="max_age"><?=$lang['admin']['quarantine_max_age'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_max_age"><?=$lang['admin']['quarantine_max_age'];?></label>
             <div class="col-sm-8">
-              <input type="number" class="form-control" name="max_age" value="<?=$q_data['max_age'];?>" min="1" required>
+              <input type="number" class="form-control" id="quarantine_max_age" name="max_age" value="<?=$q_data['max_age'];?>" min="1" required>
             </div>
           </div>
           <hr>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="sender"><span class="glyphicon glyphicon-share-alt"></span> <?=$lang['admin']['quarantine_redirect'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_redirect"><i class="bi bi-box-arrow-right"></i> <?=$lang['admin']['quarantine_redirect'];?></label>
             <div class="col-sm-8">
-              <input type="email" class="form-control" name="redirect" value="<?=htmlspecialchars($q_data['redirect']);?>" placeholder="">
+              <input type="email" class="form-control" id="quarantine_redirect" name="redirect" value="<?=htmlspecialchars($q_data['redirect']);?>" placeholder="">
             </div>
           </div>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="sender"><span class="glyphicon glyphicon-copy"></span> <?=$lang['admin']['quarantine_bcc'];?></label>
+            <label class="col-sm-4 control-label" for="quarantine_bcc"><i class="bi bi-files"></i> <?=$lang['admin']['quarantine_bcc'];?></label>
             <div class="col-sm-8">
-              <input type="email" class="form-control" name="bcc" value="<?=htmlspecialchars($q_data['bcc']);?>" placeholder="">
+              <input type="email" class="form-control" id="quarantine_bcc" name="bcc" value="<?=htmlspecialchars($q_data['bcc']);?>" placeholder="">
             </div>
           </div>
           <hr>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="sender"><?=$lang['admin']['quarantine_notification_sender'];?>:</label>
+            <label class="col-sm-4 control-label" for="quarantine_sender"><?=$lang['admin']['quarantine_notification_sender'];?>:</label>
             <div class="col-sm-8">
-              <input type="email" class="form-control" name="sender" value="<?=htmlspecialchars($q_data['sender']);?>" placeholder="quarantine@localhost">
+              <input type="email" class="form-control" id="quarantine_sender" name="sender" value="<?=htmlspecialchars($q_data['sender']);?>" placeholder="quarantine@localhost">
             </div>
           </div>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="subject"><?=$lang['admin']['quarantine_notification_subject'];?>:</label>
+            <label class="col-sm-4 control-label" for="quarantine_subject"><?=$lang['admin']['quarantine_notification_subject'];?>:</label>
             <div class="col-sm-8">
-              <input type="text" class="form-control" name="subject" value="<?=htmlspecialchars($q_data['subject']);?>" placeholder="Spam Quarantine Notification">
+              <input type="text" class="form-control" id="quarantine_subject" name="subject" value="<?=htmlspecialchars($q_data['subject']);?>" placeholder="Spam Quarantine Notification">
             </div>
           </div>
           <hr>
           <div class="form-group">
-            <label class="col-sm-4 control-label" for="release_format"><?=$lang['admin']['quarantine_release_format'];?>:</label>
+            <label class="col-sm-4 control-label" for="quarantine_release_format"><?=$lang['admin']['quarantine_release_format'];?>:</label>
             <div class="col-sm-8">
-              <select data-width="100%" name="release_format" class="selectpicker" title="<?=$lang['tfa']['select'];?>">
+              <select data-width="100%" id="quarantine_release_format" name="release_format" class="selectpicker" title="<?=$lang['tfa']['select'];?>">
                 <option <?=($q_data['release_format'] == 'raw') ? 'selected' : null;?> value="raw"><?=$lang['admin']['quarantine_release_format_raw'];?></option>
                 <option <?=($q_data['release_format'] == 'attachment') ? 'selected' : null;?> value="attachment"><?=$lang['admin']['quarantine_release_format_att'];?></option>
               </select>
@@ -936,23 +971,25 @@
             <div class="col-sm-8">
               <select data-width="100%" name="exclude_domains" class="selectpicker" title="<?=$lang['tfa']['select'];?>" multiple>
               <?php
-              foreach (array_merge(mailbox('get', 'domains'), mailbox('get', 'alias_domains')) as $domain):
-              ?>
-                <option <?=(in_array($domain, $q_data['exclude_domains'])) ? 'selected' : null;?>><?=htmlspecialchars($domain);?></option>
-              <?php
-              endforeach;
+              if (is_array($q_data['exclude_domains'])) {
+                foreach (array_merge(mailbox('get', 'domains'), mailbox('get', 'alias_domains')) as $domain) {
+                ?>
+                  <option <?=(in_array($domain, $q_data['exclude_domains'])) ? 'selected' : null;?>><?=htmlspecialchars($domain);?></option>
+                <?php
+                }
+              }
               ?>
               </select>
             </div>
           </div>
           <hr>
-          <legend data-target="#quarantine_template" style="cursor:pointer" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-            <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['quarantine_notification_html'];?>
+          <legend data-target="#quarantine_template" style="cursor:pointer" unselectable="on" data-toggle="collapse">
+            <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['quarantine_notification_html'];?>
           </legend>
           <div id="quarantine_template" class="collapse" >
             <textarea autocorrect="off" spellcheck="false" autocapitalize="none" class="form-control textarea-code" rows="40" name="html_tmpl"><?=$q_data['html_tmpl'];?></textarea>
           </div>
-          <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="self" data-id="quarantine" data-api-url='edit/quarantine' data-api-attr='{"action":"settings"}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-item="self" data-id="quarantine" data-api-url='edit/quarantine' data-api-attr='{"action":"settings"}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
         </form>
       </div>
     </div>
@@ -968,21 +1005,21 @@
         <div class="row">
           <div class="col-sm-6">
             <div class="form-group">
-              <label for="sender"><?=$lang['admin']['quarantine_notification_sender'];?>:</label>
-              <input type="email" class="form-control" name="sender" value="<?=htmlspecialchars($qw_data['sender']);?>" placeholder="quota-warning@localhost">
+              <label for="quota_notification_sender"><?=$lang['admin']['quota_notification_sender'];?>:</label>
+              <input type="email" class="form-control" id="quota_notification_sender" name="sender" value="<?=htmlspecialchars($qw_data['sender']);?>" placeholder="quota-warning@localhost">
             </div>
           </div>
           <div class="col-sm-6">
             <div class="form-group">
-              <label for="subject"><?=$lang['admin']['quarantine_notification_subject'];?>:</label>
-              <input type="text" class="form-control" name="subject" value="<?=htmlspecialchars($qw_data['subject']);?>" placeholder="Quota warning">
+              <label for="quota_notification_subject"><?=$lang['admin']['quota_notification_subject'];?>:</label>
+              <input type="text" class="form-control" id="quota_notification_subject" name="subject" value="<?=htmlspecialchars($qw_data['subject']);?>" placeholder="Quota warning">
             </div>
           </div>
         </div>
         <div class="row">
           <div class="col-sm-12">
-            <legend data-target="#quota_template" style="cursor:pointer" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-              <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['quarantine_notification_html'];?>
+            <legend data-target="#quota_template" style="cursor:pointer" unselectable="on" data-toggle="collapse">
+              <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['quarantine_notification_html'];?>
             </legend>
             <div id="quota_template" class="collapse" >
               <!-- <small><?=$lang['admin']['quota_notifications_vars'];?></small><br><br>-->
@@ -994,11 +1031,11 @@
           <div class="col-sm-10">
             <div class="form-group">
               <br>
-              <a type="button" class="btn btn-sm btn-success" data-action="edit_selected"
+              <a type="button" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected"
                 data-item="quota_notification"
                 data-id="quota_notification"
                 data-api-url='edit/quota_notification'
-                data-api-attr='{}'><span class="glyphicon glyphicon-check"></span> <?=$lang['user']['save_changes'];?></a>
+                data-api-attr='{}'><i class="bi bi-check-lg"></i> <?=$lang['user']['save_changes'];?></a>
             </div>
           </div>
         </div>
@@ -1011,8 +1048,8 @@
     <div class="panel panel-default">
       <div class="panel-heading"><?=$lang['admin']['rspamd_settings_map'];?></div>
       <div class="panel-body">
-      <legend data-target="#active_settings_map" style="cursor:pointer" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-        <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['admin']['active_rspamd_settings_map'];?>
+      <legend data-target="#active_settings_map" style="cursor:pointer" unselectable="on" data-toggle="collapse">
+        <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['admin']['active_rspamd_settings_map'];?>
       </legend>
       <div id="active_settings_map" class="collapse" >
         <textarea autocorrect="off" spellcheck="false" autocapitalize="none" class="form-control textarea-code" rows="20" name="settings_map" readonly><?=file_get_contents('http://nginx:8081/settings.php');?></textarea>
@@ -1067,19 +1104,19 @@
                   <form class="form" data-id="rsettings" role="form" method="post">
                     <input type="hidden" name="active" value="0">
                     <div class="form-group">
-                      <label for="desc"><?=$lang['admin']['rsetting_desc'];?>:</label>
-                      <input type="text" class="form-control" name="desc" value="<?=htmlspecialchars($rsetting_details['desc']);?>">
+                      <label for="rsettings_desc"><?=$lang['admin']['rsetting_desc'];?>:</label>
+                      <input type="text" class="form-control" id="rsettings_desc" name="desc" value="<?=htmlspecialchars($rsetting_details['desc']);?>">
                     </div>
                     <div class="form-group">
-                      <label for="content"><?=$lang['admin']['rsetting_content'];?>:</label>
-                      <textarea class="form-control" name="content" rows="10"><?=htmlspecialchars($rsetting_details['content']);?></textarea>
+                      <label for="rsettings_content"><?=$lang['admin']['rsetting_content'];?>:</label>
+                      <textarea class="form-control" id="rsettings_content" name="content" rows="10"><?=htmlspecialchars($rsetting_details['content']);?></textarea>
                     </div>
                     <div class="form-group">
                       <label>
                         <input type="checkbox" name="active" value="1" <?=($rsetting_details['active'] == 1) ? 'checked' : null;?>> <?=$lang['admin']['active'];?>
                       </label>
                     </div>
-                    <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="<?=$rsetting_details['id'];?>" data-id="rsettings" data-api-url='edit/rsetting' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+                    <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="<?=$rsetting_details['id'];?>" data-id="rsettings" data-api-url='edit/rsetting' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
                     <button class="btn btn-sm btn-danger" data-action="delete_selected" data-item="<?=$rsetting_details['id'];?>" data-id="rsettings" data-api-url="delete/rsetting" data-api-attr='{}' href="#"><?=$lang['admin']['remove'];?></button>
                   </form>
                 </div>
@@ -1099,12 +1136,12 @@
     <div class="panel panel-default">
       <div class="panel-heading"><?=$lang['admin']['customize'];?></div>
       <div class="panel-body">
-        <legend><?=$lang['admin']['change_logo'];?></legend>
+        <legend><i class="bi bi-file-image"></i> <?=$lang['admin']['change_logo'];?></legend>
         <p class="help-block"><?=$lang['admin']['logo_info'];?></p>
         <form class="form-inline" role="form" method="post" enctype="multipart/form-data">
           <p>
-            <input type="file" name="main_logo" class="filestyle" data-buttonName="btn-default" data-buttonText="Select" accept="image/gif, image/jpeg, image/pjpeg, image/x-png, image/png, image/svg+xml">
-            <button name="submit_main_logo" type="submit" class="btn btn-default"><span class="glyphicon glyphicon-cloud-upload"></span> <?=$lang['admin']['upload'];?></button>
+            <input type="file" name="main_logo" accept="image/gif, image/jpeg, image/pjpeg, image/x-png, image/png, image/svg+xml"><br>
+            <button name="submit_main_logo" type="submit" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><i class="bi bi-upload"></i> <?=$lang['admin']['upload'];?></button>
           </p>
         </form>
         <?php
@@ -1123,7 +1160,7 @@
             </div>
             <hr>
             <form class="form-inline" role="form" method="post">
-              <p><button name="reset_main_logo" type="submit" class="btn btn-xs btn-default"><?=$lang['admin']['reset_default'];?></button></p>
+              <p><button name="reset_main_logo" type="submit" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default"><?=$lang['admin']['reset_default'];?></button></p>
             </form>
           </div>
         </div>
@@ -1139,29 +1176,32 @@
             </tr>
             <?php
             $app_links = customize('get', 'app_links');
-            foreach ($app_links as $row) {
-              foreach ($row as $key => $val) {
-            ?>
+            if ($app_links) {
+              foreach ($app_links as $row) {
+                foreach ($row as $key => $val) {
+              ?>
             <tr>
-              <td><input class="input-sm form-control" data-id="app_links" type="text" name="app" required value="<?=$key;?>"></td>
-              <td><input class="input-sm form-control" data-id="app_links" type="text" name="href" required value="<?=$val;?>"></td>
-              <td><a href="#" role="button" class="btn btn-xs btn-default" type="button"><?=$lang['admin']['remove_row'];?></a></td>
+              <td><input class="input-sm input-xs-lg form-control" data-id="app_links" type="text" name="app" required value="<?=$key;?>"></td>
+              <td><input class="input-sm input-xs-lg form-control" data-id="app_links" type="text" name="href" required value="<?=$val;?>"></td>
+              <td><a href="#" role="button" class="btn btn-sm btn-xs-lg btn-default" type="button"><?=$lang['admin']['remove_row'];?></a></td>
             </tr>
             <?php
+                }
               }
             }
             foreach ($MAILCOW_APPS as $app) {
             ?>
             <tr>
-              <td><input class="input-sm form-control" value="<?=htmlspecialchars($app['name']);?>" disabled></td>
-              <td><input class="input-sm form-control" value="<?=htmlspecialchars($app['link']);?>" disabled></td>
+              <td><input class="input-sm input-xs-lg form-control" value="<?=htmlspecialchars($app['name']);?>" disabled></td>
+              <td><input class="input-sm input-xs-lg form-control" value="<?=htmlspecialchars($app['link']);?>" disabled></td>
               <td>&nbsp;</td>
             </tr>
             <?php } ?>
           </table>
           <p><div class="btn-group">
-            <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="admin" data-id="app_links" data-reload="no" data-api-url='edit/app_links' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
-            <button class="btn btn-sm btn-default" type="button" id="add_app_link_row"><?=$lang['admin']['add_row'];?></button>
+            <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-item="admin" data-id="app_links" data-reload="no" data-api-url='edit/app_links' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+            <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" type="button" id="add_app_link_row"><?=$lang['admin']['add_row'];?></button>
+            <div class="clearfix visible-xs"></div>
           </div></p>
         </form>
         <legend data-target="#ui_texts" style="padding-top:20px" unselectable="on"><?=$lang['admin']['ui_texts'];?></legend>
@@ -1169,16 +1209,16 @@
         <?php $ui_texts = customize('get', 'ui_texts'); ?>
           <form class="form" data-id="uitexts" role="form" method="post">
             <div class="form-group">
-              <label for="title_name"><?=$lang['admin']['title_name'];?>:</label>
-              <input type="text" class="form-control" name="title_name" placeholder="mailcow UI" value="<?=$ui_texts['title_name'];?>">
+              <label for="uitests_title_name"><?=$lang['admin']['title_name'];?>:</label>
+              <input type="text" class="form-control" id="uitests_title_name" name="title_name" placeholder="mailcow UI" value="<?=$ui_texts['title_name'];?>">
             </div>
             <div class="form-group">
-              <label for="main_name"><?=$lang['admin']['main_name'];?>:</label>
-              <input type="text" class="form-control" name="main_name" placeholder="mailcow UI" value="<?=$ui_texts['main_name'];?>">
+              <label for="uitests_main_name"><?=$lang['admin']['main_name'];?>:</label>
+              <input type="text" class="form-control" id="uitests_main_name" name="main_name" placeholder="mailcow UI" value="<?=$ui_texts['main_name'];?>">
             </div>
             <div class="form-group">
-              <label for="apps_name"><?=$lang['admin']['apps_name'];?>:</label>
-              <input type="text" class="form-control" name="apps_name" placeholder="mailcow Apps" value="<?=$ui_texts['apps_name'];?>">
+              <label for="uitests_apps_name"><?=$lang['admin']['apps_name'];?>:</label>
+              <input type="text" class="form-control" id="uitests_apps_name" name="apps_name" placeholder="<?=$lang['header']['apps']?>" value="<?=$ui_texts['apps_name'];?>">
             </div>
             <div class="form-group">
               <label for="help_text"><?=$lang['admin']['help_text'];?>:</label>
@@ -1188,7 +1228,7 @@
             <div class="form-group">
               <p class="help-block"><?=$lang['admin']['ui_header_announcement_help'];?></p>
               <label for="ui_announcement_type"><?=$lang['admin']['ui_header_announcement'];?>:</label>
-              <p><select multiple data-width="100%" name="ui_announcement_type" class="selectpicker show-tick" data-max-options="1" title="<?=$lang['admin']['ui_header_announcement_select'];?>">
+              <p><select multiple data-width="100%" id="ui_announcement_type" name="ui_announcement_type" class="selectpicker show-tick" data-max-options="1" title="<?=$lang['admin']['ui_header_announcement_select'];?>">
                 <option <?=($ui_texts['ui_announcement_type'] == 'info') ? 'selected' : null;?> value="info"><?=$lang['admin']['ui_header_announcement_type_info'];?></option>
                 <option <?=($ui_texts['ui_announcement_type'] == 'warning') ? 'selected' : null;?> value="warning"><?=$lang['admin']['ui_header_announcement_type_warning'];?></option>
                 <option <?=($ui_texts['ui_announcement_type'] == 'danger') ? 'selected' : null;?> value="danger"><?=$lang['admin']['ui_header_announcement_type_danger'];?></option>
@@ -1205,28 +1245,71 @@
               <label for="ui_footer"><?=$lang['admin']['ui_footer'];?>:</label>
               <textarea class="form-control" id="ui_footer" name="ui_footer" rows="7"><?=$ui_texts['ui_footer'];?></textarea>
             </div>
-            <button class="btn btn-sm btn-success" data-action="edit_selected" data-item="ui" data-id="uitexts" data-api-url='edit/ui_texts' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+            <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-item="ui" data-id="uitexts" data-api-url='edit/ui_texts' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
           </form>
         </div>
       </div>
     </div>
   </div>
 
+  <div role="tabpanel" class="tab-pane" id="tab-config-password-policy">
+    <div class="panel panel-default">
+      <div class="panel-heading"><?=$lang['admin']['password_policy'];?></div>
+      <div class="panel-body">
+        <?php $password_complexity = password_complexity('get'); ?>
+        <form class="form-horizontal" data-id="passwordpolicy" role="form" method="post">
+          <?php
+          foreach ($password_complexity as $name => $value) {
+          if ($name == 'length') {
+          ?>
+          <div class="form-group">
+            <label class="control-label col-sm-3" for="<?=$name;?>"><?=$lang['admin']['password_length'];?>:</label>
+            <div class="col-sm-2">
+              <input type="number" class="form-control" min="3" max="64" name="<?=$name;?>" id="<?=$name;?>" value="<?=$value;?>" required>
+            </div>
+          </div>
+          <?php
+          } else {
+          ?>
+          <input type="hidden" name="<?=$name;?>" value="0">
+          <div class="form-group">
+            <div class="col-sm-offset-3 col-sm-9">
+              <label>
+                <input type="checkbox" name="<?=$name;?>" id="<?=$name;?>" value="1" <?=($value == 1) ? 'checked' : null;?>> <?=$lang['admin']["password_policy_$name"];?>
+              </label>
+            </div>
+          </div>
+          <?php
+          }
+          }
+          ?>
+          <div class="form-group">
+            <div class="col-sm-offset-3 col-sm-9">
+              <div class="btn-group">
+                <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-item="passwordpolicy" data-action="edit_selected" data-id="passwordpolicy" data-api-url='edit/passwordpolicy' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+              </div>
+            </div>
+          </div>
+        </form>
+      </div>
+    </div>
+  </div>
+
   <div role="tabpanel" class="tab-pane" id="tab-sys-mails">
     <div class="panel panel-default">
       <div class="panel-heading"><?=$lang['admin']['sys_mails'];?></div>
       <div class="panel-body">
         <form class="form-horizontal" autocapitalize="none" data-id="admin" autocorrect="off" role="form" method="post">
           <div class="form-group">
-            <label class="control-label col-sm-2" for="mass_from"><?=$lang['admin']['from'];?>:</label>
+            <label class="control-label col-sm-2" for="admin_mass_from"><?=$lang['admin']['from'];?>:</label>
             <div class="col-sm-10">
-              <input type="email" class="form-control" name="mass_from" value="noreply@<?=getenv('MAILCOW_HOSTNAME');;?>" required>
+              <input type="email" class="form-control" id="admin_mass_from" name="mass_from" value="noreply@<?=getenv('MAILCOW_HOSTNAME');;?>" required>
             </div>
           </div>
           <div class="form-group">
-            <label class="control-label col-sm-2" for="mass_subject"><?=$lang['admin']['subject'];?>:</label>
+            <label class="control-label col-sm-2" for="admin_mass_subject"><?=$lang['admin']['subject'];?>:</label>
             <div class="col-sm-10">
-              <input type="text" class="form-control" name="mass_subject" required>
+              <input type="text" class="form-control" id="admin_mass_subject" name="mass_subject" required>
             </div>
           </div>
           <?php
@@ -1282,7 +1365,7 @@
             <label class="control-label col-sm-2" for="mass_html"><?=$lang['admin']['html'];?> (<?=$lang['admin']['optional'];?>):</label>
             <div class="col-sm-10">
               <textarea class="form-control" rows="10" name="mass_html" id="mass_html"></textarea>
-              <p class="small">↪ <a target="_blank" href="https://templates.mailchimp.com/resources/html-to-text/"><?=$lang['admin']['convert_html_to_text'];?></a></p>
+              <p class="small"><i class="bi bi-arrow-return-right"></i> <a target="_blank" href="https://templates.mailchimp.com/resources/html-to-text/"><?=$lang['admin']['convert_html_to_text'];?></a></p>
             </div>
           </div>
           <div class="form-group">
@@ -1294,7 +1377,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" type="submit" id="mass_send" name="mass_send" disabled><span class="glyphicon glyphicon-envelope"></span> <?=$lang['admin']['send'];?></button>
+              <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" type="submit" id="mass_send" name="mass_send" disabled><i class="bi bi-envelope-fill"></i> <?=$lang['admin']['send'];?></button>
             </div>
           </div>
         </form>
@@ -1316,30 +1399,31 @@
       </div>
       <div class="mass-actions-admin">
         <div class="btn-group">
-          <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="mailqitems" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-          <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-          <ul class="dropdown-menu">
+          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="mailqitems" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+          <ul class="dropdown-menu top33">
             <li><a data-toggle="tooltip" title="postqueue -i" data-action="edit_selected" data-id="mailqitems" data-api-url='edit/mailq' data-api-attr='{"action":"deliver"}' href="#"><?=$lang['admin']['queue_deliver_mail'];?></a></li>
             <li><a data-toggle="tooltip" title="postsuper -H" data-action="edit_selected" data-id="mailqitems" data-api-url='edit/mailq' data-api-attr='{"action":"unhold"}' href="#"><?=$lang['admin']['queue_unhold_mail'];?></a></li>
             <li><a data-toggle="tooltip" title="postsuper -h" data-action="edit_selected" data-id="mailqitems" data-api-url='edit/mailq' data-api-attr='{"action":"hold"}' href="#"><?=$lang['admin']['queue_hold_mail'];?></a></li>
             <li role="separator" class="divider"></li>
             <li><a data-toggle="tooltip" title="postsuper -d" data-action="delete_selected" data-id="mailqitems" data-api-url='delete/mailq' href="#"><?=$lang['mailbox']['remove'];?></a></li>
           </ul>
-          <a class="btn btn-sm btn-primary"
+          <div class="clearfix visible-xs"></div>
+          <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-primary"
             data-action="edit_selected"
             data-item="mailqitems-all"
             data-api-url='edit/mailq'
             data-api-attr='{"action":"flush"}'
             data-toggle="tooltip" title="postqueue -f"
-            href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['admin']['flush_queue'];?></a>
-          <a class="btn btn-sm btn-danger"
+            href="#"><i class="bi bi-check-all"></i> <?=$lang['admin']['flush_queue'];?></a>
+          <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger"
             id="super_delete"
             data-action="edit_selected"
             data-item="mailqitems-all"
             data-api-url='edit/mailq'
             data-api-attr='{"action":"super_delete"}'
             data-toggle="tooltip" title="postsuper -d ALL"
-            href="#"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span> <?=$lang['admin']['delete_queue'];?></a>
+            href="#"><i class="bi bi-trash"></i> <?=$lang['admin']['delete_queue'];?></a>
         </div>
       </div>
       </div>
@@ -1353,7 +1437,7 @@
       </div>
       <div class="panel-body">
         <p><?=$lang['admin']['rspamd_global_filters_info'];?></p>
-        <div id="confirm_show_rspamd_global_filters" class="<?=($_SESSION['show_rspamd_global_filters'] === true) ? 'hidden' : '';?>">
+        <div id="confirm_show_rspamd_global_filters" class="<?=(!isset($_SESSION['show_rspamd_global_filters']) || $_SESSION['show_rspamd_global_filters'] !== true) ? '' : 'hidden';?>">
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
               <label>
@@ -1362,7 +1446,7 @@
             </div>
           </div>
         </div>
-        <div id="rspamd_global_filters" class="<?=($_SESSION['show_rspamd_global_filters'] !== true) ? 'hidden' : '';?>">
+        <div id="rspamd_global_filters" class="<?=(isset($_SESSION['show_rspamd_global_filters']) && $_SESSION['show_rspamd_global_filters'] === true) ? '' : 'hidden';?>">
         <hr>
         <span class="anchor" id="regexmaps"></span>
         <h4><?=$lang['admin']['regex_maps'];?></h4>
@@ -1381,7 +1465,7 @@
         ?>
         <hr>
         <span class="anchor" id="<?=$rspamd_regex_map;?>"></span>
-        <form class="form-horizontal" data-id="<?=$rspamd_regex_map;?>" role="form" method="post">
+        <form class="form-horizontal" data-cached-form="false" data-id="<?=$rspamd_regex_map;?>" role="form" method="post">
           <div class="form-group">
             <label class="control-label col-sm-3" for="<?=$rspamd_regex_map;?>"><?=$rspamd_regex_desc;?><br><small><?=$rspamd_regex_map;?></small></label>
             <div class="col-sm-9">
@@ -1390,8 +1474,8 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-3 col-sm-9">
-              <button class="btn btn-xs btn-default validate_rspamd_regex" data-regex-map="<?=$rspamd_regex_map;?>" href="#"><?=$lang['add']['validate'];?></button>
-              <button class="btn btn-xs btn-success submit_rspamd_regex" data-action="edit_selected" data-id="<?=$rspamd_regex_map;?>" data-item="<?=htmlspecialchars($rspamd_regex_map);?>" data-api-url='edit/rspamd-map' data-api-attr='{}' href="#" disabled><?=$lang['edit']['save'];?></button>
+              <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default validate_rspamd_regex" data-regex-map="<?=$rspamd_regex_map;?>" href="#"><?=$lang['add']['validate'];?></button>
+              <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success submit_rspamd_regex" data-action="edit_selected" data-id="<?=$rspamd_regex_map;?>" data-item="<?=htmlspecialchars($rspamd_regex_map);?>" data-api-url='edit/rspamd-map' data-api-attr='{}' href="#" disabled><?=$lang['edit']['save'];?></button>
             </div>
           </div>
         </form>
@@ -1426,7 +1510,7 @@
 $js_minifier->add('/web/js/site/pwgen.js');
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/footer.inc.php';
 } else {
-	header('Location: /');
-	exit();
+  header('Location: /');
+  exit();
 }
 ?>
diff --git a/mailcow/src/mailcow-dockerized/data/web/api/openapi.yaml b/mailcow/src/mailcow-dockerized/data/web/api/openapi.yaml
index a14c47d..e1ef65b 100644
--- a/mailcow/src/mailcow-dockerized/data/web/api/openapi.yaml
+++ b/mailcow/src/mailcow-dockerized/data/web/api/openapi.yaml
@@ -126,6 +126,9 @@
                 goto_spam:
                   description: learn as spam
                   type: boolean
+                sogo_visible:
+                  description: toggle visibility as selectable sender in SOGo
+                  type: boolean
               type: object
       summary: Create alias
   /api/v1/add/app-passwd:
@@ -420,11 +423,11 @@
                         - domain
                         - active: "1"
                           aliases: "400"
+                          restart_sogo: "1"
                           backupmx: "0"
                           defquota: "3072"
                           description: some decsription
                           domain: domain.tld
-                          lang: cs
                           mailboxes: "10"
                           maxquota: "10240"
                           quota: "10240"
@@ -471,13 +474,13 @@
                 defquota: "3072"
                 description: some decsription
                 domain: domain.tld
-                lang: cs
                 mailboxes: "10"
                 maxquota: "10240"
                 quota: "10240"
                 relay_all_recipients: "0"
                 rl_frame: s
                 rl_value: "10"
+                restart_sogo: "10"
               properties:
                 active:
                   description: is domain active or not
@@ -497,23 +500,6 @@
                 domain:
                   description: Fully qualified domain name
                   type: string
-                lang:
-                  description: language code
-                  enum:
-                    - sk
-                    - cs
-                    - de
-                    - en
-                    - es
-                    - fr
-                    - lv
-                    - nl
-                    - pl
-                    - pt
-                    - ru
-                    - it
-                    - ca
-                  type: string
                 mailboxes:
                   description: limit count of mailboxes associated with this domain
                   type: number
@@ -523,6 +509,9 @@
                 quota:
                   description: maximum quota for this domain (for all mailboxes in sum)
                   type: number
+                restart_sogo:
+                  description: restart SOGo to activate the domain in SOGo
+                  type: number
                 relay_all_recipients:
                   description: >-
                     if not, them you have to create "dummy" mailbox for each
@@ -1018,7 +1007,7 @@
                 password2:
                   description: mailbox password for confirmation
                   type: string
-                pasword:
+                password:
                   description: mailbox password
                   type: string
                 quota:
@@ -2752,6 +2741,9 @@
                       type: string
                     public_comment:
                       type: string
+                    sogo_visible:
+                      description: toggle visibility as selectable sender in SOGo
+                      type: boolean
                   type: object
                 items:
                   description: contains list of aliases you want update
@@ -2805,7 +2797,6 @@
                   defquota: "3072"
                   description: domain description
                   gal: "1"
-                  lang: cs
                   mailboxes: "10"
                   maxquota: "10240"
                   quota: "10240"
@@ -2835,23 +2826,6 @@
                         is domain global address list active or not, it enables
                         shared contacts accross domain in SOGo webmail
                       type: boolean
-                    lang:
-                      description: language code
-                      enum:
-                        - sk
-                        - cs
-                        - de
-                        - en
-                        - es
-                        - fr
-                        - lv
-                        - nl
-                        - pl
-                        - pt
-                        - ru
-                        - it
-                        - ca
-                      type: string
                     mailboxes:
                       description: limit count of mailboxes associated with this domain
                       type: number
@@ -3029,7 +3003,8 @@
                     - domain3.tld
                     - "*"
                   sogo_access: "1"
-                items: info@domain.tld
+                items:
+                  - info@domain.tld
               properties:
                 attr:
                   properties:
@@ -3045,7 +3020,7 @@
                     password2:
                       description: new mailbox password for confirmation
                       type: string
-                    pasword:
+                    password:
                       description: new mailbox password
                       type: string
                     quota:
@@ -3743,7 +3718,6 @@
                       description: Some description
                       domain_name: domain.tld
                       gal: "0"
-                      lang: en
                       max_new_mailbox_quota: 10737418240
                       max_num_aliases_for_domain: 400
                       max_num_mboxes_for_domain: 10
@@ -3766,7 +3740,6 @@
                       description: domain description
                       domain_name: domain2.tld
                       gal: "0"
-                      lang: cs
                       max_new_mailbox_quota: 10737418240
                       max_num_aliases_for_domain: 400
                       max_num_mboxes_for_domain: 10
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/001-bootstrap.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/001-bootstrap.min.css
index 769bf30..232dfb9 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/001-bootstrap.min.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/001-bootstrap.min.css
@@ -8,4 +8,4 @@
  * Bootstrap v3.4.1 (https://getbootstrap.com/)
  * Copyright 2011-2019 Twitter, Inc.
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{color:#000 !important;text-shadow:none !important;background:transparent !important;box-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@font-face{font-family:"Glyphicons Halflings";src:url("/fonts/glyphicons-halflings-regular.eot");src:url("/fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"),url("/fonts/glyphicons-halflings-regular.woff2") format("woff2"),url("/fonts/glyphicons-halflings-regular.woff") format("woff"),url("/fonts/glyphicons-halflings-regular.ttf") format("truetype"),url("/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:"Glyphicons Halflings";font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-euro:before,.glyphicon-eur:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#555555;background-color:#ffffff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#158cba;text-decoration:none}a:hover,a:focus{color:#158cba;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:5px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#ffffff;border:1px solid #eeeeee;border-radius:4px;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eeeeee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role="button"]{cursor:pointer}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:400;line-height:1.1;color:#333333}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#999999}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{padding:.2em;background-color:#ff851b}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#999999}.text-primary{color:#158cba}a.text-primary:hover,a.text-primary:focus{color:#106a8c}.text-success{color:#ffffff}a.text-success:hover,a.text-success:focus{color:#e6e6e6}.text-info{color:#ffffff}a.text-info:hover,a.text-info:focus{color:#e6e6e6}.text-warning{color:#ffffff}a.text-warning:hover,a.text-warning:focus{color:#e6e6e6}.text-danger{color:#ffffff}a.text-danger:hover,a.text-danger:focus{color:#e6e6e6}.bg-primary{color:#fff;background-color:#158cba}a.bg-primary:hover,a.bg-primary:focus{background-color:#106a8c}.bg-success{background-color:#28b62c}a.bg-success:hover,a.bg-success:focus{background-color:#1f8c22}.bg-info{background-color:#75caeb}a.bg-info:hover,a.bg-info:focus{background-color:#48b9e5}.bg-warning{background-color:#ff851b}a.bg-warning:hover,a.bg-warning:focus{background-color:#e76b00}.bg-danger{background-color:#ff4136}a.bg-danger:hover,a.bg-danger:focus{background-color:#ff1103}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eeeeee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eeeeee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#999999}blockquote footer:before,blockquote small:before,blockquote .small:before{content:"\2014 \00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eeeeee;border-left:0}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:""}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:"\00A0 \2014"}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#ffffff;background-color:#333333;border-radius:2px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #cccccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.row-no-gutters{margin-right:0;margin-left:0}.row-no-gutters [class*="col-"]{padding-right:0;padding-left:0}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0%}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0%}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0%}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0%}}table{background-color:transparent}table col[class*="col-"]{position:static;display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{position:static;display:table-cell;float:none}caption{padding-top:8px;padding-bottom:8px;color:#999999;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #eeeeee}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #eeeeee}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #eeeeee}.table .table{background-color:#ffffff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #eeeeee}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #eeeeee}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#28b62c}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#23a127}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#75caeb}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#5fc1e8}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#ff851b}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#ff7701}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#ff4136}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ff291c}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #eeeeee}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type="search"]{box-sizing:border-box;-webkit-appearance:none;appearance:none}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:8px;font-size:14px;line-height:1.42857143;color:#555555}.form-control{display:block;width:100%;height:38px;padding:7px 12px;font-size:14px;line-height:1.42857143;color:#555555;background-color:#ffffff;background-image:none;border:1px solid #e7e7e7;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#999999;opacity:1}.form-control:-ms-input-placeholder{color:#999999}.form-control::-webkit-input-placeholder{color:#999999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eeeeee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type="date"].form-control,input[type="time"].form-control,input[type="datetime-local"].form-control,input[type="month"].form-control{line-height:38px}input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm,.input-group-sm input[type="date"],.input-group-sm input[type="time"],.input-group-sm input[type="datetime-local"],.input-group-sm input[type="month"]{line-height:28px}input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg,.input-group-lg input[type="date"],.input-group-lg input[type="time"],.input-group-lg input[type="datetime-local"],.input-group-lg input[type="month"]{line-height:52px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-top:4px \9;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}.form-control-static{min-height:34px;padding-top:8px;padding-bottom:8px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}select.input-sm{height:28px;line-height:28px}textarea.input-sm,select[multiple].input-sm{height:auto}.form-group-sm .form-control{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}.form-group-sm select.form-control{height:28px;line-height:28px}.form-group-sm textarea.form-control,.form-group-sm select[multiple].form-control{height:auto}.form-group-sm .form-control-static{height:28px;min-height:32px;padding:5px 10px;font-size:12px;line-height:1.5}.input-lg{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}select.input-lg{height:52px;line-height:52px}textarea.input-lg,select[multiple].input-lg{height:auto}.form-group-lg .form-control{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}.form-group-lg select.form-control{height:52px;line-height:52px}.form-group-lg textarea.form-control,.form-group-lg select[multiple].form-control{height:auto}.form-group-lg .form-control-static{height:52px;min-height:38px;padding:14px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:47.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:38px;height:38px;line-height:38px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg+.form-control-feedback,.form-group-lg .form-control+.form-control-feedback{width:52px;height:52px;line-height:52px}.input-sm+.form-control-feedback,.input-group-sm+.form-control-feedback,.form-group-sm .form-control+.form-control-feedback{width:28px;height:28px;line-height:28px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#ffffff}.has-success .form-control{border-color:#ffffff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-success .input-group-addon{color:#ffffff;background-color:#28b62c;border-color:#ffffff}.has-success .form-control-feedback{color:#ffffff}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#ffffff}.has-warning .form-control{border-color:#ffffff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-warning .input-group-addon{color:#ffffff;background-color:#ff851b;border-color:#ffffff}.has-warning .form-control-feedback{color:#ffffff}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#ffffff}.has-error .form-control{border-color:#ffffff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-error .input-group-addon{color:#ffffff;background-color:#ff4136;border-color:#ffffff}.has-error .form-control-feedback{color:#ffffff}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#959595}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:8px;margin-top:0;margin-bottom:0}.form-horizontal .radio,.form-horizontal .checkbox{min-height:28px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:8px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:5px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;padding:7px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#555555;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);opacity:0.65;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#555555;background-color:#eeeeee;border-color:#e2e2e2}.btn-default:focus,.btn-default.focus{color:#555555;background-color:#d5d5d5;border-color:#a2a2a2}.btn-default:hover{color:#555555;background-color:#d5d5d5;border-color:#c3c3c3}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#555555;background-color:#d5d5d5;background-image:none;border-color:#c3c3c3}.btn-default:active:hover,.btn-default.active:hover,.open>.dropdown-toggle.btn-default:hover,.btn-default:active:focus,.btn-default.active:focus,.open>.dropdown-toggle.btn-default:focus,.btn-default:active.focus,.btn-default.active.focus,.open>.dropdown-toggle.btn-default.focus{color:#555555;background-color:#c3c3c3;border-color:#a2a2a2}.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled.focus,.btn-default[disabled].focus,fieldset[disabled] .btn-default.focus{background-color:#eeeeee;border-color:#e2e2e2}.btn-default .badge{color:#eeeeee;background-color:#555555}.btn-primary{color:#ffffff;background-color:#158cba;border-color:#127ba3}.btn-primary:focus,.btn-primary.focus{color:#ffffff;background-color:#106a8c;border-color:#052531}.btn-primary:hover{color:#ffffff;background-color:#106a8c;border-color:#0c516c}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#ffffff;background-color:#106a8c;background-image:none;border-color:#0c516c}.btn-primary:active:hover,.btn-primary.active:hover,.open>.dropdown-toggle.btn-primary:hover,.btn-primary:active:focus,.btn-primary.active:focus,.open>.dropdown-toggle.btn-primary:focus,.btn-primary:active.focus,.btn-primary.active.focus,.open>.dropdown-toggle.btn-primary.focus{color:#ffffff;background-color:#0c516c;border-color:#052531}.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled.focus,.btn-primary[disabled].focus,fieldset[disabled] .btn-primary.focus{background-color:#158cba;border-color:#127ba3}.btn-primary .badge{color:#158cba;background-color:#ffffff}.btn-success{color:#ffffff;background-color:#28b62c;border-color:#23a127}.btn-success:focus,.btn-success.focus{color:#ffffff;background-color:#1f8c22;border-color:#0c390e}.btn-success:hover{color:#ffffff;background-color:#1f8c22;border-color:#186f1b}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#ffffff;background-color:#1f8c22;background-image:none;border-color:#186f1b}.btn-success:active:hover,.btn-success.active:hover,.open>.dropdown-toggle.btn-success:hover,.btn-success:active:focus,.btn-success.active:focus,.open>.dropdown-toggle.btn-success:focus,.btn-success:active.focus,.btn-success.active.focus,.open>.dropdown-toggle.btn-success.focus{color:#ffffff;background-color:#186f1b;border-color:#0c390e}.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled.focus,.btn-success[disabled].focus,fieldset[disabled] .btn-success.focus{background-color:#28b62c;border-color:#23a127}.btn-success .badge{color:#28b62c;background-color:#ffffff}.btn-info{color:#ffffff;background-color:#75caeb;border-color:#5fc1e8}.btn-info:focus,.btn-info.focus{color:#ffffff;background-color:#48b9e5;border-color:#1984ae}.btn-info:hover{color:#ffffff;background-color:#48b9e5;border-color:#29ade0}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#ffffff;background-color:#48b9e5;background-image:none;border-color:#29ade0}.btn-info:active:hover,.btn-info.active:hover,.open>.dropdown-toggle.btn-info:hover,.btn-info:active:focus,.btn-info.active:focus,.open>.dropdown-toggle.btn-info:focus,.btn-info:active.focus,.btn-info.active.focus,.open>.dropdown-toggle.btn-info.focus{color:#ffffff;background-color:#29ade0;border-color:#1984ae}.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled.focus,.btn-info[disabled].focus,fieldset[disabled] .btn-info.focus{background-color:#75caeb;border-color:#5fc1e8}.btn-info .badge{color:#75caeb;background-color:#ffffff}.btn-warning{color:#ffffff;background-color:#ff851b;border-color:#ff7701}.btn-warning:focus,.btn-warning.focus{color:#ffffff;background-color:#e76b00;border-color:#813c00}.btn-warning:hover{color:#ffffff;background-color:#e76b00;border-color:#c35b00}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#ffffff;background-color:#e76b00;background-image:none;border-color:#c35b00}.btn-warning:active:hover,.btn-warning.active:hover,.open>.dropdown-toggle.btn-warning:hover,.btn-warning:active:focus,.btn-warning.active:focus,.open>.dropdown-toggle.btn-warning:focus,.btn-warning:active.focus,.btn-warning.active.focus,.open>.dropdown-toggle.btn-warning.focus{color:#ffffff;background-color:#c35b00;border-color:#813c00}.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled.focus,.btn-warning[disabled].focus,fieldset[disabled] .btn-warning.focus{background-color:#ff851b;border-color:#ff7701}.btn-warning .badge{color:#ff851b;background-color:#ffffff}.btn-danger{color:#ffffff;background-color:#ff4136;border-color:#ff291c}.btn-danger:focus,.btn-danger.focus{color:#ffffff;background-color:#ff1103;border-color:#9c0900}.btn-danger:hover{color:#ffffff;background-color:#ff1103;border-color:#de0c00}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#ffffff;background-color:#ff1103;background-image:none;border-color:#de0c00}.btn-danger:active:hover,.btn-danger.active:hover,.open>.dropdown-toggle.btn-danger:hover,.btn-danger:active:focus,.btn-danger.active:focus,.open>.dropdown-toggle.btn-danger:focus,.btn-danger:active.focus,.btn-danger.active.focus,.open>.dropdown-toggle.btn-danger.focus{color:#ffffff;background-color:#de0c00;border-color:#9c0900}.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled.focus,.btn-danger[disabled].focus,fieldset[disabled] .btn-danger.focus{background-color:#ff4136;border-color:#ff291c}.btn-danger .badge{color:#ff4136;background-color:#ffffff}.btn-link{font-weight:400;color:#158cba;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#158cba;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999999;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}.btn-sm,.btn-group-sm>.btn{padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:2px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;transition-property:height, visibility;transition-duration:0.35s;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid \9;border-right:4px solid transparent;border-left:4px solid transparent}.dropup,.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#ffffff;background-clip:padding-box;border:1px solid #cccccc;border:1px solid #e7e7e7;border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,0.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#eeeeee}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#999999;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#333333;text-decoration:none;background-color:transparent}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#ffffff;text-decoration:none;background-color:#158cba;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#eeeeee}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999999;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid \9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:52px;line-height:52px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:28px;line-height:28px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:7px 12px;font-size:14px;font-weight:400;line-height:1;color:#555555;text-align:center;background-color:#eeeeee;border:1px solid #e7e7e7;border-radius:4px}.input-group-addon.input-sm{padding:4px 10px;font-size:12px;border-radius:2px}.input-group-addon.input-lg{padding:13px 16px;font-size:18px;border-radius:5px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#ffffff}.nav>li.disabled>a{color:#999999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#ffffff;border-color:#158cba}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #e7e7e7}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eeeeee #eeeeee #e7e7e7}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555555;cursor:default;background-color:#ffffff;border:1px solid #e7e7e7;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #e7e7e7}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #e7e7e7;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#ffffff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#ffffff;background-color:#158cba}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #e7e7e7}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #e7e7e7;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#ffffff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-right:15px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-right:-15px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:6px;margin-bottom:6px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:6px;margin-bottom:6px}.navbar-btn.btn-sm{margin-top:11px;margin-bottom:11px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#333333}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#333333;background-color:transparent}.navbar-default .navbar-text{color:#555555}.navbar-default .navbar-nav>li>a{color:#999999}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#333333;background-color:transparent}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#eeeeee;background-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#333333;background-color:transparent}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#999999}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#333333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#eeeeee;background-color:transparent}}.navbar-default .navbar-toggle{border-color:#eeeeee}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ffffff}.navbar-default .navbar-toggle .icon-bar{background-color:#999999}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-link{color:#999999}.navbar-default .navbar-link:hover{color:#333333}.navbar-default .btn-link{color:#999999}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333333}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#eeeeee}.navbar-inverse{background-color:#ffffff;border-color:#e6e6e6}.navbar-inverse .navbar-brand{color:#999999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#333333;background-color:transparent}.navbar-inverse .navbar-text{color:#999999}.navbar-inverse .navbar-nav>li>a{color:#999999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#333333;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#333333;background-color:transparent}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#eeeeee;background-color:transparent}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#333333;background-color:transparent}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#e6e6e6}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#e6e6e6}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#333333;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#333333;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#eeeeee;background-color:transparent}}.navbar-inverse .navbar-toggle{border-color:#eeeeee}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#eeeeee}.navbar-inverse .navbar-toggle .icon-bar{background-color:#999999}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#ededed}.navbar-inverse .navbar-link{color:#999999}.navbar-inverse .navbar-link:hover{color:#333333}.navbar-inverse .btn-link{color:#999999}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#333333}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#eeeeee}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#fafafa;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#999999;content:">\00a0"}.breadcrumb>.active{color:#999999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:7px 12px;margin-left:-1px;line-height:1.42857143;color:#555555;text-decoration:none;background-color:#eeeeee;border:1px solid #e2e2e2}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{z-index:2;color:#555555;background-color:#eeeeee;border-color:#e2e2e2}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:3;color:#ffffff;cursor:default;background-color:#158cba;border-color:#127ba3}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999999;cursor:not-allowed;background-color:#eeeeee;border-color:#e2e2e2}.pagination-lg>li>a,.pagination-lg>li>span{padding:13px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:5px;border-bottom-left-radius:5px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:5px;border-bottom-right-radius:5px}.pagination-sm>li>a,.pagination-sm>li>span{padding:4px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:2px;border-bottom-left-radius:2px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:2px;border-bottom-right-radius:2px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#eeeeee;border:1px solid #e2e2e2;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eeeeee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999999;cursor:not-allowed;background-color:#eeeeee}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#ffffff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#ffffff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#158cba}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#106a8c}.label-success{background-color:#28b62c}.label-success[href]:hover,.label-success[href]:focus{background-color:#1f8c22}.label-info{background-color:#75caeb}.label-info[href]:hover,.label-info[href]:focus{background-color:#48b9e5}.label-warning{background-color:#ff851b}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#e76b00}.label-danger{background-color:#ff4136}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#ff1103}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:normal;line-height:1;color:#ffffff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#158cba;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#ffffff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#158cba;background-color:#ffffff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#fafafa}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#e1e1e1}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:5px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#ffffff;border:1px solid #eeeeee;border-radius:4px;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-right:auto;margin-left:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#158cba}.thumbnail .caption{padding:9px;color:#555555}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#ffffff;background-color:#28b62c;border-color:#24a528}.alert-success hr{border-top-color:#209023}.alert-success .alert-link{color:#e6e6e6}.alert-info{color:#ffffff;background-color:#75caeb;border-color:#40b5e3}.alert-info hr{border-top-color:#29ade0}.alert-info .alert-link{color:#e6e6e6}.alert-warning{color:#ffffff;background-color:#ff851b;border-color:#ff7701}.alert-warning hr{border-top-color:#e76b00}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{color:#ffffff;background-color:#ff4136;border-color:#ff1103}.alert-danger hr{border-top-color:#e90d00}.alert-danger .alert-link{color:#e6e6e6}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#fafafa;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#158cba;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#28b62c}.progress-striped .progress-bar-success{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#75caeb}.progress-striped .progress-bar-info{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#ff851b}.progress-striped .progress-bar-warning{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#ff4136}.progress-striped .progress-bar-danger{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#ffffff;border:1px solid #eeeeee}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{color:#999999;cursor:not-allowed;background-color:#eeeeee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#999999}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#ffffff;background-color:#158cba;border-color:#158cba}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#a6dff5}a.list-group-item,button.list-group-item{color:#555555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333333}a.list-group-item:hover,button.list-group-item:hover,a.list-group-item:focus,button.list-group-item:focus{color:#555555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item-success{color:#ffffff;background-color:#28b62c}a.list-group-item-success,button.list-group-item-success{color:#ffffff}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,button.list-group-item-success:hover,a.list-group-item-success:focus,button.list-group-item-success:focus{color:#ffffff;background-color:#23a127}a.list-group-item-success.active,button.list-group-item-success.active,a.list-group-item-success.active:hover,button.list-group-item-success.active:hover,a.list-group-item-success.active:focus,button.list-group-item-success.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-info{color:#ffffff;background-color:#75caeb}a.list-group-item-info,button.list-group-item-info{color:#ffffff}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,button.list-group-item-info:hover,a.list-group-item-info:focus,button.list-group-item-info:focus{color:#ffffff;background-color:#5fc1e8}a.list-group-item-info.active,button.list-group-item-info.active,a.list-group-item-info.active:hover,button.list-group-item-info.active:hover,a.list-group-item-info.active:focus,button.list-group-item-info.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-warning{color:#ffffff;background-color:#ff851b}a.list-group-item-warning,button.list-group-item-warning{color:#ffffff}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,button.list-group-item-warning:hover,a.list-group-item-warning:focus,button.list-group-item-warning:focus{color:#ffffff;background-color:#ff7701}a.list-group-item-warning.active,button.list-group-item-warning.active,a.list-group-item-warning.active:hover,button.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus,button.list-group-item-warning.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-danger{color:#ffffff;background-color:#ff4136}a.list-group-item-danger,button.list-group-item-danger{color:#ffffff}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,button.list-group-item-danger:hover,a.list-group-item-danger:focus,button.list-group-item-danger:focus{color:#ffffff;background-color:#ff291c}a.list-group-item-danger.active,button.list-group-item-danger.active,a.list-group-item-danger.active:hover,button.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus,button.list-group-item-danger.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#ffffff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a,.panel-title>small,.panel-title>.small,.panel-title>small>a,.panel-title>.small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid transparent;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-right:15px;padding-left:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #eeeeee}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid transparent}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid transparent}.panel-default{border-color:transparent}.panel-default>.panel-heading{color:#333333;background-color:#f5f5f5;border-color:transparent}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-primary{border-color:transparent}.panel-primary>.panel-heading{color:#ffffff;background-color:#158cba;border-color:transparent}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-primary>.panel-heading .badge{color:#158cba;background-color:#ffffff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-success{border-color:transparent}.panel-success>.panel-heading{color:#ffffff;background-color:#28b62c;border-color:transparent}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-success>.panel-heading .badge{color:#28b62c;background-color:#ffffff}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-info{border-color:transparent}.panel-info>.panel-heading{color:#ffffff;background-color:#75caeb;border-color:transparent}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-info>.panel-heading .badge{color:#75caeb;background-color:#ffffff}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-warning{border-color:transparent}.panel-warning>.panel-heading{color:#ffffff;background-color:#ff851b;border-color:transparent}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-warning>.panel-heading .badge{color:#ff851b;background-color:#ffffff}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-danger{border-color:transparent}.panel-danger>.panel-heading{color:#ffffff;background-color:#ff4136;border-color:transparent}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-danger>.panel-heading .badge{color:#ff4136;background-color:#ffffff}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#fafafa;border:1px solid #e8e8e8;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:5px}.well-sm{padding:9px;border-radius:2px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#ffffff;text-shadow:0 1px 0 #ffffff;filter:alpha(opacity=20);opacity:0.2}.close:hover,.close:focus{color:#ffffff;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:0.5}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);transform:translate(0, -25%);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#ffffff;background-clip:padding-box;border:1px solid #eeeeee;border:1px solid rgba(0,0,0,0.05);border-radius:5px;box-shadow:0 3px 9px rgba(0,0,0,0.5);outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:0.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding:20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;filter:alpha(opacity=0);opacity:0}.tooltip.in{filter:alpha(opacity=90);opacity:0.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#ffffff;text-align:center;background-color:#000000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:14px;background-color:#ffffff;background-clip:padding-box;border:1px solid #cccccc;border:1px solid rgba(0,0,0,0.2);border-radius:5px;box-shadow:0 5px 10px rgba(0,0,0,0.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover>.arrow{border-width:11px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#ffffff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#ffffff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999999;border-bottom-color:rgba(0,0,0,0.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#ffffff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#ffffff}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:4px 4px 0 0}.popover-content{padding:9px 14px}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.next,.carousel-inner>.item.active.right{-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);left:0}.carousel-inner>.item.prev,.carousel-inner>.item.active.left{-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);left:0}.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right,.carousel-inner>.item.active{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#ffffff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:0.5}.carousel-control.left{background-image:linear-gradient(to right, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:linear-gradient(to right, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:hover,.carousel-control:focus{color:#ffffff;text-decoration:none;outline:0;filter:alpha(opacity=90);opacity:0.9}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:"\2039"}.carousel-control .icon-next:before{content:"\203a"}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #ffffff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#ffffff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#ffffff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-header:before,.modal-header:after,.modal-footer:before,.modal-footer:after{display:table;content:" "}.clearfix:after,.dl-horizontal dd:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-header:after,.modal-footer:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width:767px){.visible-xs{display:block !important}table.visible-xs{display:table !important}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width:767px){.visible-xs-block{display:block !important}}@media (max-width:767px){.visible-xs-inline{display:inline !important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block !important}table.visible-sm{display:table !important}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block !important}table.visible-md{display:table !important}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width:1200px){.visible-lg{display:block !important}table.visible-lg{display:table !important}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width:1200px){.visible-lg-block{display:block !important}}@media (min-width:1200px){.visible-lg-inline{display:inline !important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width:767px){.hidden-xs{display:none !important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none !important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none !important}}@media (min-width:1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table !important}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}.navbar{border-width:0 1px 4px 1px}.btn{padding:9px 12px 7px;border-width:0 1px 4px 1px;font-size:12px;font-weight:bold;text-transform:uppercase}.btn:hover{margin-top:1px;border-bottom-width:3px}.btn:active{margin-top:2px;border-bottom-width:2px;box-shadow:none}.btn-lg,.btn-group-lg>.btn{padding:15px 16px 13px;line-height:15px}.btn-sm,.btn-group-sm>.btn{padding:6px 10px 4px}.btn-xs,.btn-group-xs>.btn{padding:3px 5px 1px}.btn-default:hover,.btn-default:focus,.btn-group.open .dropdown-toggle.btn-default{background-color:#eeeeee;border-color:#e2e2e2}.btn-primary:hover,.btn-primary:focus,.btn-group.open .dropdown-toggle.btn-primary{background-color:#158cba;border-color:#127ba3}.btn-success:hover,.btn-success:focus,.btn-group.open .dropdown-toggle.btn-success{background-color:#28b62c;border-color:#23a127}.btn-info:hover,.btn-info:focus,.btn-group.open .dropdown-toggle.btn-info{background-color:#75caeb;border-color:#5fc1e8}.btn-warning:hover,.btn-warning:focus,.btn-group.open .dropdown-toggle.btn-warning{background-color:#ff851b;border-color:#ff7701}.btn-danger:hover,.btn-danger:focus,.btn-group.open .dropdown-toggle.btn-danger{background-color:#ff4136;border-color:#ff291c}.btn-group.open .dropdown-toggle{box-shadow:none}.navbar-btn:hover{margin-top:8px}.navbar-btn:active{margin-top:9px}.navbar-btn.btn-sm:hover{margin-top:11px}.navbar-btn.btn-sm:active{margin-top:12px}.navbar-btn.btn-xs:hover{margin-top:15px}.navbar-btn.btn-xs:active{margin-top:16px}.btn-group-vertical .btn+.btn:hover{border-top-width:1px}.btn-group-vertical .btn+.btn:active{border-top-width:2px}.text-primary,.text-primary:hover{color:#158cba}.text-success,.text-success:hover{color:#28b62c}.text-danger,.text-danger:hover{color:#ff4136}.text-warning,.text-warning:hover{color:#ff851b}.text-info,.text-info:hover{color:#75caeb}table a:not(.btn),.table a:not(.btn){text-decoration:underline}table .dropdown-menu a,.table .dropdown-menu a{text-decoration:none}table .success,.table .success,table .warning,.table .warning,table .danger,.table .danger,table .info,.table .info{color:#fff}table .success a:not(.btn),.table .success a:not(.btn),table .warning a:not(.btn),.table .warning a:not(.btn),table .danger a:not(.btn),.table .danger a:not(.btn),table .info a:not(.btn),.table .info a:not(.btn){color:#fff}table:not(.table-bordered)>thead>tr>th,.table:not(.table-bordered)>thead>tr>th,table:not(.table-bordered)>tbody>tr>th,.table:not(.table-bordered)>tbody>tr>th,table:not(.table-bordered)>tfoot>tr>th,.table:not(.table-bordered)>tfoot>tr>th,table:not(.table-bordered)>thead>tr>td,.table:not(.table-bordered)>thead>tr>td,table:not(.table-bordered)>tbody>tr>td,.table:not(.table-bordered)>tbody>tr>td,table:not(.table-bordered)>tfoot>tr>td,.table:not(.table-bordered)>tfoot>tr>td{border-color:transparent}.form-control{box-shadow:inset 0 2px 0 rgba(0,0,0,0.075)}label{font-weight:normal}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label,.has-warning .form-control-feedback{color:#ff851b}.has-warning .form-control,.has-warning .form-control:focus{border:1px solid #ff851b;box-shadow:inset 0 2px 0 rgba(0,0,0,0.075)}.has-warning .input-group-addon{border:1px solid #ff851b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label,.has-error .form-control-feedback{color:#ff4136}.has-error .form-control,.has-error .form-control:focus{border:1px solid #ff4136;box-shadow:inset 0 2px 0 rgba(0,0,0,0.075)}.has-error .input-group-addon{border:1px solid #ff4136}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label,.has-success .form-control-feedback{color:#28b62c}.has-success .form-control,.has-success .form-control:focus{border:1px solid #28b62c;box-shadow:inset 0 2px 0 rgba(0,0,0,0.075)}.has-success .input-group-addon{border:1px solid #28b62c}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{border-color:transparent}.nav-tabs>li>a{margin-top:6px;border-color:#e7e7e7;color:#333333;transition:all .2s ease-in-out}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus,.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus,.nav-tabs .open>a,.nav-tabs .open>a:hover,.nav-tabs .open>a:focus{padding-bottom:16px;margin-top:0}.nav-tabs .open>a,.nav-tabs .open>a:hover,.nav-tabs .open>a:focus{border-color:#e7e7e7}.nav-tabs>li.disabled>a:hover,.nav-tabs>li.disabled>a:focus{padding-top:10px;padding-bottom:10px;margin-top:6px}.nav-tabs.nav-justified>li{vertical-align:bottom}.dropdown-menu{margin-top:0;border-width:0 1px 4px 1px;border-top-width:1px;box-shadow:none}.breadcrumb{border-color:#ededed;border-style:solid;border-width:0 1px 4px 1px}.pagination>li>a,.pager>li>a,.pagination>li>span,.pager>li>span{position:relative;top:0;border-width:0 1px 4px 1px;color:#555555;font-size:12px;font-weight:bold;text-transform:uppercase}.pagination>li>a:hover,.pager>li>a:hover,.pagination>li>span:hover,.pager>li>span:hover{top:1px;border-bottom-width:3px}.pagination>li>a:active,.pager>li>a:active,.pagination>li>span:active,.pager>li>span:active{top:2px;border-bottom-width:2px}.pagination>.disabled>a:hover,.pager>.disabled>a:hover,.pagination>.disabled>span:hover,.pager>.disabled>span:hover{top:0;border-width:0 1px 4px 1px}.pagination>.disabled>a:active,.pager>.disabled>a:active,.pagination>.disabled>span:active,.pager>.disabled>span:active{top:0;border-width:0 1px 4px 1px}.pager>li>a,.pager>li>span,.pager>.disabled>a,.pager>.disabled>span,.pager>li>a:hover,.pager>li>span:hover,.pager>.disabled>a:hover,.pager>.disabled>span:hover,.pager>li>a:active,.pager>li>span:active,.pager>.disabled>a:active,.pager>.disabled>span:active{border-left-width:2px;border-right-width:2px}.close{color:#fff;text-decoration:none;opacity:0.4}.close:hover,.close:focus{color:#fff;opacity:1}.alert{border-width:0 1px 4px 1px}.alert .alert-link{font-weight:normal;color:#fff;text-decoration:underline}.label{font-weight:normal}.progress{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,0.1)}.progress-bar{box-shadow:inset 0 -4px 0 rgba(0,0,0,0.15)}.well{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,0.05)}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{border-color:#eeeeee}a.list-group-item-success.active{background-color:#28b62c}a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{background-color:#23a127}a.list-group-item-warning.active{background-color:#ff851b}a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{background-color:#ff7701}a.list-group-item-danger.active{background-color:#ff4136}a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{background-color:#ff291c}.jumbotron{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,0.05)}.panel{border:1px solid #e7e7e7;border-width:0 1px 4px 1px}.panel-default .close{color:#555555}.modal .close{color:#555555}.popover{color:#555555}
\ No newline at end of file
+ *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}*{box-sizing:border-box}:after,:before{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#158cba;text-decoration:none}a:focus,a:hover{color:#158cba;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:5px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #eee;border-radius:4px;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:400;line-height:1.1;color:#333}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#999}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#ff851b}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#999}.text-primary{color:#158cba}a.text-primary:focus,a.text-primary:hover{color:#106a8c}.text-success{color:#fff}a.text-success:focus,a.text-success:hover{color:#e6e6e6}.text-info{color:#fff}a.text-info:focus,a.text-info:hover{color:#e6e6e6}.text-warning{color:#fff}a.text-warning:focus,a.text-warning:hover{color:#e6e6e6}.text-danger{color:#fff}a.text-danger:focus,a.text-danger:hover{color:#e6e6e6}.bg-primary{color:#fff;background-color:#158cba}a.bg-primary:focus,a.bg-primary:hover{background-color:#106a8c}.bg-success{background-color:#28b62c}a.bg-success:focus,a.bg-success:hover{background-color:#1f8c22}.bg-info{background-color:#75caeb}a.bg-info:focus,a.bg-info:hover{background-color:#48b9e5}.bg-warning{background-color:#ff851b}a.bg-warning:focus,a.bg-warning:hover{background-color:#e76b00}.bg-danger{background-color:#ff4136}a.bg-danger:focus,a.bg-danger:hover{background-color:#ff1103}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#999}blockquote .small:before,blockquote footer:before,blockquote small:before{content:"\2014 \00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:""}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:"\00A0 \2014"}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:2px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.row-no-gutters{margin-right:0;margin-left:0}.row-no-gutters [class*=col-]{padding-right:0;padding-left:0}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}caption{padding-top:8px;padding-bottom:8px;color:#999;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #eee}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #eee}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #eee}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #eee}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #eee}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#28b62c}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#23a127}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#75caeb}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#5fc1e8}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#ff851b}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#ff7701}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#ff4136}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ff291c}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #eee}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{box-sizing:border-box;-webkit-appearance:none;appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;line-height:normal}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:8px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:38px;padding:7px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #e7e7e7;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{line-height:38px}.input-group-sm input[type=date],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],.input-group-sm input[type=time],input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:28px}.input-group-lg input[type=date],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],.input-group-lg input[type=time],input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:52px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.form-control-static{min-height:34px;padding-top:8px;padding-bottom:8px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}select.input-sm{height:28px;line-height:28px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}.form-group-sm select.form-control{height:28px;line-height:28px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:28px;min-height:32px;padding:5px 10px;font-size:12px;line-height:1.5}.input-lg{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}select.input-lg{height:52px;line-height:52px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}.form-group-lg select.form-control{height:52px;line-height:52px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:52px;min-height:38px;padding:14px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:47.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:38px;height:38px;line-height:38px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:52px;height:52px;line-height:52px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:28px;height:28px;line-height:28px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#fff}.has-success .form-control{border-color:#fff;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #fff}.has-success .input-group-addon{color:#fff;background-color:#28b62c;border-color:#fff}.has-success .form-control-feedback{color:#fff}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#fff}.has-warning .form-control{border-color:#fff;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #fff}.has-warning .input-group-addon{color:#fff;background-color:#ff851b;border-color:#fff}.has-warning .form-control-feedback{color:#fff}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#fff}.has-error .form-control{border-color:#fff;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#e6e6e6;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #fff}.has-error .input-group-addon{color:#fff;background-color:#ff4136;border-color:#fff}.has-error .form-control-feedback{color:#fff}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#959595}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:8px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:28px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:8px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:5px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;padding:7px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#555;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#555;background-color:#eee;border-color:#e2e2e2}.btn-default.focus,.btn-default:focus{color:#555;background-color:#d5d5d5;border-color:#a2a2a2}.btn-default:hover{color:#555;background-color:#d5d5d5;border-color:#c3c3c3}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#555;background-color:#d5d5d5;background-image:none;border-color:#c3c3c3}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#555;background-color:#c3c3c3;border-color:#a2a2a2}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#eee;border-color:#e2e2e2}.btn-default .badge{color:#eee;background-color:#555}.btn-primary{color:#fff;background-color:#158cba;border-color:#127ba3}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#106a8c;border-color:#052531}.btn-primary:hover{color:#fff;background-color:#106a8c;border-color:#0c516c}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#106a8c;background-image:none;border-color:#0c516c}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#0c516c;border-color:#052531}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#158cba;border-color:#127ba3}.btn-primary .badge{color:#158cba;background-color:#fff}.btn-success{color:#fff;background-color:#28b62c;border-color:#23a127}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#1f8c22;border-color:#0c390e}.btn-success:hover{color:#fff;background-color:#1f8c22;border-color:#186f1b}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#1f8c22;background-image:none;border-color:#186f1b}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#186f1b;border-color:#0c390e}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#28b62c;border-color:#23a127}.btn-success .badge{color:#28b62c;background-color:#fff}.btn-info{color:#fff;background-color:#75caeb;border-color:#5fc1e8}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#48b9e5;border-color:#1984ae}.btn-info:hover{color:#fff;background-color:#48b9e5;border-color:#29ade0}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#48b9e5;background-image:none;border-color:#29ade0}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#29ade0;border-color:#1984ae}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#75caeb;border-color:#5fc1e8}.btn-info .badge{color:#75caeb;background-color:#fff}.btn-warning{color:#fff;background-color:#ff851b;border-color:#ff7701}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#e76b00;border-color:#813c00}.btn-warning:hover{color:#fff;background-color:#e76b00;border-color:#c35b00}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#e76b00;background-image:none;border-color:#c35b00}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#c35b00;border-color:#813c00}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#ff851b;border-color:#ff7701}.btn-warning .badge{color:#ff851b;background-color:#fff}.btn-danger{color:#fff;background-color:#ff4136;border-color:#ff291c}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#ff1103;border-color:#9c0900}.btn-danger:hover{color:#fff;background-color:#ff1103;border-color:#de0c00}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#ff1103;background-image:none;border-color:#de0c00}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#de0c00;border-color:#9c0900}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#ff4136;border-color:#ff291c}.btn-danger .badge{color:#ff4136;background-color:#fff}.btn-link{font-weight:400;color:#158cba;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#158cba;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}.btn-group-sm>.btn,.btn-sm{padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:2px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;transition-property:height,visibility;transition-duration:.35s;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid #e7e7e7;border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#eee}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#999;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#158cba;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#eee}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:52px;padding:13px 16px;font-size:18px;line-height:1.3333333;border-radius:5px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:52px;line-height:52px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:28px;padding:4px 10px;font-size:12px;line-height:1.5;border-radius:2px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:28px;line-height:28px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:7px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #e7e7e7;border-radius:4px}.input-group-addon.input-sm{padding:4px 10px;font-size:12px;border-radius:2px}.input-group-addon.input-lg{padding:13px 16px;font-size:18px;border-radius:5px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#fff}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#fff;border-color:#158cba}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #e7e7e7}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #e7e7e7}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #e7e7e7;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #e7e7e7}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #e7e7e7;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#158cba}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #e7e7e7}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #e7e7e7;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-right:15px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-right:-15px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:6px;margin-bottom:6px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:6px;margin-bottom:6px}.navbar-btn.btn-sm{margin-top:11px;margin-bottom:11px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#333}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#333;background-color:transparent}.navbar-default .navbar-text{color:#555}.navbar-default .navbar-nav>li>a{color:#999}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#eee;background-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#333;background-color:transparent}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#eee;background-color:transparent}}.navbar-default .navbar-toggle{border-color:#eee}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#fff}.navbar-default .navbar-toggle .icon-bar{background-color:#999}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-link{color:#999}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#999}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#eee}.navbar-inverse{background-color:#fff;border-color:#e6e6e6}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#333;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#333;background-color:transparent}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#eee;background-color:transparent}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#333;background-color:transparent}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#e6e6e6}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#e6e6e6}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#333;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#eee;background-color:transparent}}.navbar-inverse .navbar-toggle{border-color:#eee}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#eee}.navbar-inverse .navbar-toggle .icon-bar{background-color:#999}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#ededed}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#333}.navbar-inverse .btn-link{color:#999}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#333}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#eee}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#fafafa;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#999;content:">\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:7px 12px;margin-left:-1px;line-height:1.42857143;color:#555;text-decoration:none;background-color:#eee;border:1px solid #e2e2e2}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#555;background-color:#eee;border-color:#e2e2e2}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#158cba;border-color:#127ba3}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#eee;border-color:#e2e2e2}.pagination-lg>li>a,.pagination-lg>li>span{padding:13px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:5px;border-bottom-left-radius:5px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:5px;border-bottom-right-radius:5px}.pagination-sm>li>a,.pagination-sm>li>span{padding:4px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:2px;border-bottom-left-radius:2px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:2px;border-bottom-right-radius:2px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#eee;border:1px solid #e2e2e2;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#eee}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:focus,.label-default[href]:hover{background-color:grey}.label-primary{background-color:#158cba}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#106a8c}.label-success{background-color:#28b62c}.label-success[href]:focus,.label-success[href]:hover{background-color:#1f8c22}.label-info{background-color:#75caeb}.label-info[href]:focus,.label-info[href]:hover{background-color:#48b9e5}.label-warning{background-color:#ff851b}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#e76b00}.label-danger{background-color:#ff4136}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#ff1103}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:400;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#158cba;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#158cba;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#fafafa}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#e1e1e1}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:5px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #eee;border-radius:4px;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#158cba}.thumbnail .caption{padding:9px;color:#555}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#fff;background-color:#28b62c;border-color:#24a528}.alert-success hr{border-top-color:#209023}.alert-success .alert-link{color:#e6e6e6}.alert-info{color:#fff;background-color:#75caeb;border-color:#40b5e3}.alert-info hr{border-top-color:#29ade0}.alert-info .alert-link{color:#e6e6e6}.alert-warning{color:#fff;background-color:#ff851b;border-color:#ff7701}.alert-warning hr{border-top-color:#e76b00}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{color:#fff;background-color:#ff4136;border-color:#ff1103}.alert-danger hr{border-top-color:#e90d00}.alert-danger .alert-link{color:#e6e6e6}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#fafafa;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#158cba;box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#28b62c}.progress-striped .progress-bar-success{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#75caeb}.progress-striped .progress-bar-info{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#ff851b}.progress-striped .progress-bar-warning{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#ff4136}.progress-striped .progress-bar-danger{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #eee}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#999;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#999}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#158cba;border-color:#158cba}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#a6dff5}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item-success{color:#fff;background-color:#28b62c}a.list-group-item-success,button.list-group-item-success{color:#fff}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#fff;background-color:#23a127}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-info{color:#fff;background-color:#75caeb}a.list-group-item-info,button.list-group-item-info{color:#fff}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#fff;background-color:#5fc1e8}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-warning{color:#fff;background-color:#ff851b}a.list-group-item-warning,button.list-group-item-warning{color:#fff}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#fff;background-color:#ff7701}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-danger{color:#fff;background-color:#ff4136}a.list-group-item-danger,button.list-group-item-danger{color:#fff}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#fff;background-color:#ff291c}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#fff;border-color:#fff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid transparent;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #eee}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid transparent}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid transparent}.panel-default{border-color:transparent}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:transparent}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-primary{border-color:transparent}.panel-primary>.panel-heading{color:#fff;background-color:#158cba;border-color:transparent}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-primary>.panel-heading .badge{color:#158cba;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-success{border-color:transparent}.panel-success>.panel-heading{color:#fff;background-color:#28b62c;border-color:transparent}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-success>.panel-heading .badge{color:#28b62c;background-color:#fff}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-info{border-color:transparent}.panel-info>.panel-heading{color:#fff;background-color:#75caeb;border-color:transparent}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-info>.panel-heading .badge{color:#75caeb;background-color:#fff}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-warning{border-color:transparent}.panel-warning>.panel-heading{color:#fff;background-color:#ff851b;border-color:transparent}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-warning>.panel-heading .badge{color:#ff851b;background-color:#fff}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.panel-danger{border-color:transparent}.panel-danger>.panel-heading{color:#fff;background-color:#ff4136;border-color:transparent}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:transparent}.panel-danger>.panel-heading .badge{color:#ff4136;background-color:#fff}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:transparent}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#fafafa;border:1px solid #e8e8e8;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:5px}.well-sm{padding:9px;border-radius:2px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#fff;text-shadow:0 1px 0 #fff;opacity:.2}.close:focus,.close:hover{color:#fff;text-decoration:none;cursor:pointer;opacity:.5}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);transform:translate(0,-25%);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:1px solid #eee;border:1px solid rgba(0,0,0,.05);border-radius:5px;box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.in{opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding:20px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}.tooltip.in{opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Source Sans Pro","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:14px;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:5px;box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover>.arrow{border-width:11px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:4px 4px 0 0}.popover-content{padding:9px 14px}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}.navbar{border-width:0 1px 4px 1px}.btn{padding:9px 12px 7px;border-width:0 1px 4px 1px;font-size:12px;font-weight:700;text-transform:uppercase}.btn:hover{margin-top:1px;border-bottom-width:3px}.btn:active{margin-top:2px;border-bottom-width:2px;box-shadow:none}.btn-group-lg>.btn,.btn-lg{padding:15px 16px 13px;line-height:15px}.btn-group-sm>.btn,.btn-sm{padding:6px 10px 4px}.btn-group-xs>.btn,.btn-xs{padding:3px 5px 1px}.btn-default:focus,.btn-default:hover,.btn-group.open .dropdown-toggle.btn-default{background-color:#eee;border-color:#e2e2e2}.btn-group.open .dropdown-toggle.btn-primary,.btn-primary:focus,.btn-primary:hover{background-color:#158cba;border-color:#127ba3}.btn-group.open .dropdown-toggle.btn-success,.btn-success:focus,.btn-success:hover{background-color:#28b62c;border-color:#23a127}.btn-group.open .dropdown-toggle.btn-info,.btn-info:focus,.btn-info:hover{background-color:#75caeb;border-color:#5fc1e8}.btn-group.open .dropdown-toggle.btn-warning,.btn-warning:focus,.btn-warning:hover{background-color:#ff851b;border-color:#ff7701}.btn-danger:focus,.btn-danger:hover,.btn-group.open .dropdown-toggle.btn-danger{background-color:#ff4136;border-color:#ff291c}.btn-group.open .dropdown-toggle{box-shadow:none}.navbar-btn:hover{margin-top:8px}.navbar-btn:active{margin-top:9px}.navbar-btn.btn-sm:hover{margin-top:11px}.navbar-btn.btn-sm:active{margin-top:12px}.navbar-btn.btn-xs:hover{margin-top:15px}.navbar-btn.btn-xs:active{margin-top:16px}.btn-group-vertical .btn+.btn:hover{border-top-width:1px}.btn-group-vertical .btn+.btn:active{border-top-width:2px}.text-primary,.text-primary:hover{color:#158cba}.text-success,.text-success:hover{color:#28b62c}.text-danger,.text-danger:hover{color:#ff4136}.text-warning,.text-warning:hover{color:#ff851b}.text-info,.text-info:hover{color:#75caeb}.table a:not(.btn),table a:not(.btn){text-decoration:underline}.table .dropdown-menu a,table .dropdown-menu a{text-decoration:none}.table .danger,.table .info,.table .success,.table .warning,table .danger,table .info,table .success,table .warning{color:#fff}.table .danger a:not(.btn),.table .info a:not(.btn),.table .success a:not(.btn),.table .warning a:not(.btn),table .danger a:not(.btn),table .info a:not(.btn),table .success a:not(.btn),table .warning a:not(.btn){color:#fff}.table:not(.table-bordered)>tbody>tr>td,.table:not(.table-bordered)>tbody>tr>th,.table:not(.table-bordered)>tfoot>tr>td,.table:not(.table-bordered)>tfoot>tr>th,.table:not(.table-bordered)>thead>tr>td,.table:not(.table-bordered)>thead>tr>th,table:not(.table-bordered)>tbody>tr>td,table:not(.table-bordered)>tbody>tr>th,table:not(.table-bordered)>tfoot>tr>td,table:not(.table-bordered)>tfoot>tr>th,table:not(.table-bordered)>thead>tr>td,table:not(.table-bordered)>thead>tr>th{border-color:transparent}.form-control{box-shadow:inset 0 2px 0 rgba(0,0,0,.075)}label{font-weight:400}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .form-control-feedback,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#ff851b}.has-warning .form-control,.has-warning .form-control:focus{border:1px solid #ff851b;box-shadow:inset 0 2px 0 rgba(0,0,0,.075)}.has-warning .input-group-addon{border:1px solid #ff851b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .form-control-feedback,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#ff4136}.has-error .form-control,.has-error .form-control:focus{border:1px solid #ff4136;box-shadow:inset 0 2px 0 rgba(0,0,0,.075)}.has-error .input-group-addon{border:1px solid #ff4136}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .form-control-feedback,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#28b62c}.has-success .form-control,.has-success .form-control:focus{border:1px solid #28b62c;box-shadow:inset 0 2px 0 rgba(0,0,0,.075)}.has-success .input-group-addon{border:1px solid #28b62c}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{border-color:transparent}.nav-tabs>li>a{margin-top:6px;border-color:#e7e7e7;color:#333;transition:all .2s ease-in-out}.nav-tabs .open>a,.nav-tabs .open>a:focus,.nav-tabs .open>a:hover,.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover,.nav-tabs>li>a:focus,.nav-tabs>li>a:hover{padding-bottom:16px;margin-top:0}.nav-tabs .open>a,.nav-tabs .open>a:focus,.nav-tabs .open>a:hover{border-color:#e7e7e7}.nav-tabs>li.disabled>a:focus,.nav-tabs>li.disabled>a:hover{padding-top:10px;padding-bottom:10px;margin-top:6px}.nav-tabs.nav-justified>li{vertical-align:bottom}.dropdown-menu{margin-top:0;border-width:0 1px 4px 1px;border-top-width:1px;box-shadow:none}.breadcrumb{border-color:#ededed;border-style:solid;border-width:0 1px 4px 1px}.pager>li>a,.pager>li>span,.pagination>li>a,.pagination>li>span{position:relative;top:0;border-width:0 1px 4px 1px;color:#555;font-size:12px;font-weight:700;text-transform:uppercase}.pager>li>a:hover,.pager>li>span:hover,.pagination>li>a:hover,.pagination>li>span:hover{top:1px;border-bottom-width:3px}.pager>li>a:active,.pager>li>span:active,.pagination>li>a:active,.pagination>li>span:active{top:2px;border-bottom-width:2px}.pager>.disabled>a:hover,.pager>.disabled>span:hover,.pagination>.disabled>a:hover,.pagination>.disabled>span:hover{top:0;border-width:0 1px 4px 1px}.pager>.disabled>a:active,.pager>.disabled>span:active,.pagination>.disabled>a:active,.pagination>.disabled>span:active{top:0;border-width:0 1px 4px 1px}.pager>.disabled>a,.pager>.disabled>a:active,.pager>.disabled>a:hover,.pager>.disabled>span,.pager>.disabled>span:active,.pager>.disabled>span:hover,.pager>li>a,.pager>li>a:active,.pager>li>a:hover,.pager>li>span,.pager>li>span:active,.pager>li>span:hover{border-left-width:2px;border-right-width:2px}.close{color:#fff;text-decoration:none;opacity:.4}.close:focus,.close:hover{color:#fff;opacity:1}.alert{border-width:0 1px 4px 1px}.alert .alert-link{font-weight:400;color:#fff;text-decoration:underline}.label{font-weight:400}.progress{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,.1)}.progress-bar{box-shadow:inset 0 -4px 0 rgba(0,0,0,.15)}.well{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,.05)}a.list-group-item.active,a.list-group-item.active:focus,a.list-group-item.active:hover{border-color:#eee}a.list-group-item-success.active{background-color:#28b62c}a.list-group-item-success.active:focus,a.list-group-item-success.active:hover{background-color:#23a127}a.list-group-item-warning.active{background-color:#ff851b}a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover{background-color:#ff7701}a.list-group-item-danger.active{background-color:#ff4136}a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover{background-color:#ff291c}.jumbotron{border:1px solid #e7e7e7;box-shadow:inset 0 2px 0 rgba(0,0,0,.05)}.panel{border:1px solid #e7e7e7;border-width:0 1px 4px 1px}.panel-default .close{color:#555}.modal .close{color:#555}.popover{color:#555}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/004-bootstrap-slider.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/004-bootstrap-slider.min.css
deleted file mode 100644
index f8e395b..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/004-bootstrap-slider.min.css
+++ /dev/null
@@ -1,41 +0,0 @@
-/*! =======================================================
-                      VERSION  10.6.1              
-========================================================= */
-/*! =========================================================
- * bootstrap-slider.js
- *
- * Maintainers:
- *		Kyle Kemp
- *			- Twitter: @seiyria
- *			- Github:  seiyria
- *		Rohit Kalkur
- *			- Twitter: @Rovolutionary
- *			- Github:  rovolution
- *
- * =========================================================
-  *
- * bootstrap-slider is released under the MIT License
- * Copyright (c) 2019 Kyle Kemp, Rohit Kalkur, and contributors
- * 
- * Permission is hereby granted, free of charge, to any person
- * obtaining a copy of this software and associated documentation
- * files (the "Software"), to deal in the Software without
- * restriction, including without limitation the rights to use,
- * copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following
- * conditions:
- * 
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- * OTHER DEALINGS IN THE SOFTWARE.
- *
- * ========================================================= */.slider{display:inline-block;vertical-align:middle;position:relative}.slider.slider-horizontal{width:210px;height:20px}.slider.slider-horizontal .slider-track{height:10px;width:100%;margin-top:-5px;top:50%;left:0}.slider.slider-horizontal .slider-selection,.slider.slider-horizontal .slider-track-low,.slider.slider-horizontal .slider-track-high{height:100%;top:0;bottom:0}.slider.slider-horizontal .slider-tick,.slider.slider-horizontal .slider-handle{margin-left:-10px}.slider.slider-horizontal .slider-tick.triangle,.slider.slider-horizontal .slider-handle.triangle{position:relative;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);border-width:0 10px 10px 10px;width:0;height:0;border-bottom-color:#2e6da4;margin-top:0}.slider.slider-horizontal .slider-tick-container{white-space:nowrap;position:absolute;top:0;left:0;width:100%}.slider.slider-horizontal .slider-tick-label-container{white-space:nowrap;margin-top:20px}.slider.slider-horizontal .slider-tick-label-container .slider-tick-label{padding-top:4px;display:inline-block;text-align:center}.slider.slider-horizontal .tooltip{-ms-transform:translateX(-50%);transform:translateX(-50%)}.slider.slider-horizontal.slider-rtl .slider-track{left:initial;right:0}.slider.slider-horizontal.slider-rtl .slider-tick,.slider.slider-horizontal.slider-rtl .slider-handle{margin-left:initial;margin-right:-10px}.slider.slider-horizontal.slider-rtl .slider-tick-container{left:initial;right:0}.slider.slider-horizontal.slider-rtl .tooltip{-ms-transform:translateX(50%);transform:translateX(50%)}.slider.slider-vertical{height:210px;width:20px}.slider.slider-vertical .slider-track{width:10px;height:100%;left:25%;top:0}.slider.slider-vertical .slider-selection{width:100%;left:0;top:0;bottom:0}.slider.slider-vertical .slider-track-low,.slider.slider-vertical .slider-track-high{width:100%;left:0;right:0}.slider.slider-vertical .slider-tick,.slider.slider-vertical .slider-handle{margin-top:-10px}.slider.slider-vertical .slider-tick.triangle,.slider.slider-vertical .slider-handle.triangle{border-width:10px 0 10px 10px;width:1px;height:1px;border-left-color:#2e6da4;border-right-color:#2e6da4;margin-left:0;margin-right:0}.slider.slider-vertical .slider-tick-label-container{white-space:nowrap}.slider.slider-vertical .slider-tick-label-container .slider-tick-label{padding-left:4px}.slider.slider-vertical .tooltip{-ms-transform:translateY(-50%);transform:translateY(-50%)}.slider.slider-vertical.slider-rtl .slider-track{left:initial;right:25%}.slider.slider-vertical.slider-rtl .slider-selection{left:initial;right:0}.slider.slider-vertical.slider-rtl .slider-tick.triangle,.slider.slider-vertical.slider-rtl .slider-handle.triangle{border-width:10px 10px 10px 0}.slider.slider-vertical.slider-rtl .slider-tick-label-container .slider-tick-label{padding-left:initial;padding-right:4px}.slider.slider-disabled .slider-handle{background-image:-webkit-linear-gradient(top,#dfdfdf 0,#bebebe 100%);background-image:-o-linear-gradient(top,#dfdfdf 0,#bebebe 100%);background-image:linear-gradient(to bottom,#dfdfdf 0,#bebebe 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdfdfdf',endColorstr='#ffbebebe',GradientType=0)}.slider.slider-disabled .slider-track{background-image:-webkit-linear-gradient(top,#e5e5e5 0,#e9e9e9 100%);background-image:-o-linear-gradient(top,#e5e5e5 0,#e9e9e9 100%);background-image:linear-gradient(to bottom,#e5e5e5 0,#e9e9e9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe5e5e5',endColorstr='#ffe9e9e9',GradientType=0);cursor:not-allowed}.slider input{display:none}.slider .tooltip{pointer-events:none}.slider .tooltip.top{margin-top:-36px}.slider .tooltip-inner{white-space:nowrap;max-width:none}.slider .hide{display:none}.slider-track{position:absolute;cursor:pointer;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#f9f9f9 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#f9f9f9 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#f9f9f9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);border-radius:4px}.slider-selection{position:absolute;background-image:-webkit-linear-gradient(top,#f9f9f9 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#f9f9f9 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#f9f9f9 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff9f9f9',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-radius:4px}.slider-selection.tick-slider-selection{background-image:-webkit-linear-gradient(top,#8ac1ef 0,#82b3de 100%);background-image:-o-linear-gradient(top,#8ac1ef 0,#82b3de 100%);background-image:linear-gradient(to bottom,#8ac1ef 0,#82b3de 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8ac1ef',endColorstr='#ff82b3de',GradientType=0)}.slider-track-low,.slider-track-high{position:absolute;background:transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-radius:4px}.slider-handle{position:absolute;top:0;width:20px;height:20px;background-color:#337ab7;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7',endColorstr='#ff2e6da4',GradientType=0);filter:none;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);border:0 solid transparent}.slider-handle:hover{cursor:pointer}.slider-handle.round{border-radius:50%}.slider-handle.triangle{background:transparent none}.slider-handle.custom{background:transparent none}.slider-handle.custom::before{line-height:20px;font-size:20px;content:'\2605';color:#726204}.slider-tick{position:absolute;cursor:pointer;width:20px;height:20px;background-image:-webkit-linear-gradient(top,#f9f9f9 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#f9f9f9 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#f9f9f9 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff9f9f9',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;filter:none;opacity:.8;border:0 solid transparent}.slider-tick.round{border-radius:50%}.slider-tick.triangle{background:transparent none}.slider-tick.custom{background:transparent none}.slider-tick.custom::before{line-height:20px;font-size:20px;content:'\2605';color:#726204}.slider-tick.in-selection{background-image:-webkit-linear-gradient(top,#8ac1ef 0,#82b3de 100%);background-image:-o-linear-gradient(top,#8ac1ef 0,#82b3de 100%);background-image:linear-gradient(to bottom,#8ac1ef 0,#82b3de 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8ac1ef',endColorstr='#ff82b3de',GradientType=0);opacity:1}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/004-slider.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/004-slider.min.css
new file mode 100644
index 0000000..6cc5621
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/004-slider.min.css
@@ -0,0 +1 @@
+.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-target{position:relative}.noUi-base,.noUi-connects{width:100%;height:100%;position:relative;z-index:1}.noUi-connects{overflow:hidden;z-index:0}.noUi-connect,.noUi-origin{will-change:transform;position:absolute;z-index:1;top:0;right:0;-ms-transform-origin:0 0;-webkit-transform-origin:0 0;-webkit-transform-style:preserve-3d;transform-origin:0 0;transform-style:flat}.noUi-connect{height:100%;width:100%}.noUi-origin{height:10%;width:10%}.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto}.noUi-vertical .noUi-origin{width:0}.noUi-horizontal .noUi-origin{height:0}.noUi-handle{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute}.noUi-touch-area{height:100%;width:100%}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{-webkit-transition:transform .3s;transition:transform .3s}.noUi-state-drag *{cursor:inherit!important}.noUi-horizontal{height:18px}.noUi-horizontal .noUi-handle{width:34px;height:28px;right:-17px;top:-6px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;right:-6px;top:-17px}.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto}.noUi-target{background:#FAFAFA;border-radius:4px;border:1px solid #D3D3D3;box-shadow:inset 0 1px 1px #F0F0F0,0 3px 6px -5px #BBB}.noUi-connects{border-radius:3px}.noUi-connect{background:#3FB8AF}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{border:1px solid #D9D9D9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #EBEBEB,0 3px 6px -3px #BBB}.noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.noUi-handle:after,.noUi-handle:before{content:"";display:block;position:absolute;height:14px;width:1px;background:#E8E7E6;left:14px;top:6px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:after,.noUi-vertical .noUi-handle:before{width:14px;height:1px;left:6px;top:14px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#B8B8B8}[disabled] .noUi-handle,[disabled].noUi-handle,[disabled].noUi-target{cursor:not-allowed}.noUi-pips,.noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.noUi-pips{position:absolute;color:#999}.noUi-value{position:absolute;white-space:nowrap;text-align:center}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{position:absolute;background:#CCC}.noUi-marker-sub{background:#AAA}.noUi-marker-large{background:#AAA}.noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.noUi-value-horizontal{-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.noUi-rtl .noUi-value-horizontal{-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.noUi-value-vertical{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);padding-left:25px}.noUi-rtl .noUi-value-vertical{-webkit-transform:translate(0,50%);transform:translate(0,50%)}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{display:block;position:absolute;border:1px solid #D9D9D9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap}.noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.noUi-vertical .noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.noUi-horizontal .noUi-origin>.noUi-tooltip{-webkit-transform:translate(50%,0);transform:translate(50%,0);left:auto;bottom:10px}.noUi-vertical .noUi-origin>.noUi-tooltip{-webkit-transform:translate(0,-18px);transform:translate(0,-18px);top:auto;right:28px}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/005-bootstrap-switch.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/005-bootstrap-switch.min.css
deleted file mode 100644
index cbfa013..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/005-bootstrap-switch.min.css
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
-  * bootstrap-switch - Turn checkboxes and radio buttons into toggle switches.
-  *
-  * @version v3.3.3
-  * @homepage http://www.bootstrap-switch.org
-  * @author Mattia Larentis <mattia@larentis.eu> (http://larentis.eu)
-  * @license Apache-2.0
-  */
-
-.bootstrap-switch{display:inline-block;direction:ltr;cursor:pointer;border-radius:4px;border:1px solid #ccc;position:relative;text-align:left;overflow:hidden;line-height:8px;z-index:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.bootstrap-switch .bootstrap-switch-container{display:inline-block;top:0;border-radius:4px;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bootstrap-switch .bootstrap-switch-handle-off,.bootstrap-switch .bootstrap-switch-handle-on,.bootstrap-switch .bootstrap-switch-label{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;display:inline-block!important;height:100%;padding:6px 12px;font-size:14px;line-height:20px}.bootstrap-switch .bootstrap-switch-handle-off,.bootstrap-switch .bootstrap-switch-handle-on{text-align:center;z-index:1}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-primary,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary{color:#fff;background:#337ab7}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-info,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-info{color:#fff;background:#5bc0de}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-success,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success{color:#fff;background:#5cb85c}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-warning,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-warning{background:#f0ad4e;color:#fff}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-danger,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-danger{color:#fff;background:#d9534f}.bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-default,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-default{color:#000;background:#eee}.bootstrap-switch .bootstrap-switch-label{text-align:center;margin-top:-1px;margin-bottom:-1px;z-index:100;color:#333;background:#fff}.bootstrap-switch .bootstrap-switch-handle-on{border-bottom-left-radius:3px;border-top-left-radius:3px}.bootstrap-switch .bootstrap-switch-handle-off{border-bottom-right-radius:3px;border-top-right-radius:3px}.bootstrap-switch input[type=radio],.bootstrap-switch input[type=checkbox]{position:absolute!important;top:0;left:0;margin:0;z-index:-1;opacity:0;filter:alpha(opacity=0)}.bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-label{padding:1px 5px;font-size:12px;line-height:1.5}.bootstrap-switch.bootstrap-switch-small .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-small .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-small .bootstrap-switch-label{padding:5px 10px;font-size:12px;line-height:1.5}.bootstrap-switch.bootstrap-switch-large .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-large .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-large .bootstrap-switch-label{padding:6px 16px;font-size:18px;line-height:1.3333333}.bootstrap-switch.bootstrap-switch-disabled,.bootstrap-switch.bootstrap-switch-indeterminate,.bootstrap-switch.bootstrap-switch-readonly{cursor:default!important}.bootstrap-switch.bootstrap-switch-disabled .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-disabled .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-disabled .bootstrap-switch-label,.bootstrap-switch.bootstrap-switch-indeterminate .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-indeterminate .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-indeterminate .bootstrap-switch-label,.bootstrap-switch.bootstrap-switch-readonly .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-readonly .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-readonly .bootstrap-switch-label{opacity:.5;filter:alpha(opacity=50);cursor:default!important}.bootstrap-switch.bootstrap-switch-animate .bootstrap-switch-container{-webkit-transition:margin-left .5s;-o-transition:margin-left .5s;transition:margin-left .5s}.bootstrap-switch.bootstrap-switch-inverse .bootstrap-switch-handle-on{border-radius:0 3px 3px 0}.bootstrap-switch.bootstrap-switch-inverse .bootstrap-switch-handle-off{border-radius:3px 0 0 3px}.bootstrap-switch.bootstrap-switch-focused{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.bootstrap-switch.bootstrap-switch-inverse.bootstrap-switch-off .bootstrap-switch-label,.bootstrap-switch.bootstrap-switch-on .bootstrap-switch-label{border-bottom-right-radius:3px;border-top-right-radius:3px}.bootstrap-switch.bootstrap-switch-inverse.bootstrap-switch-on .bootstrap-switch-label,.bootstrap-switch.bootstrap-switch-off .bootstrap-switch-label{border-bottom-left-radius:3px;border-top-left-radius:3px}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/006-footable.bootstrap.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/006-footable.bootstrap.min.css
index 87841b2..a04d825 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/006-footable.bootstrap.min.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/006-footable.bootstrap.min.css
@@ -1 +1,323 @@
-table.footable-details,table.footable>thead>tr.footable-filtering>th div.form-group{margin-bottom:0}table.footable,table.footable-details{position:relative;width:100%;border-spacing:0;border-collapse:collapse}table.footable-hide-fouc{display:none}table>tbody>tr>td>span.footable-toggle{margin-right:8px;opacity:.3}table>tbody>tr>td>span.footable-toggle.last-column{margin-left:8px;float:right}table.table-condensed>tbody>tr>td>span.footable-toggle{margin-right:5px}table.footable-details>tbody>tr>th:nth-child(1){min-width:40px;width:120px}table.footable-details>tbody>tr>td:nth-child(2){word-break:break-all}table.footable-details>tbody>tr:first-child>td,table.footable-details>tbody>tr:first-child>th,table.footable-details>tfoot>tr:first-child>td,table.footable-details>tfoot>tr:first-child>th,table.footable-details>thead>tr:first-child>td,table.footable-details>thead>tr:first-child>th{border-top-width:0}table.footable-details.table-bordered>tbody>tr:first-child>td,table.footable-details.table-bordered>tbody>tr:first-child>th,table.footable-details.table-bordered>tfoot>tr:first-child>td,table.footable-details.table-bordered>tfoot>tr:first-child>th,table.footable-details.table-bordered>thead>tr:first-child>td,table.footable-details.table-bordered>thead>tr:first-child>th{border-top-width:1px}div.footable-loader{vertical-align:middle;text-align:center;height:300px;position:relative}div.footable-loader>span.fooicon{display:inline-block;opacity:.3;font-size:30px;line-height:32px;width:32px;height:32px;margin-top:-16px;margin-left:-16px;position:absolute;top:50%;left:50%;-webkit-animation:fooicon-spin-r 2s infinite linear;animation:fooicon-spin-r 2s infinite linear}table.footable>tbody>tr.footable-empty>td{vertical-align:middle;text-align:center;font-size:30px}table.footable>tbody>tr>td,table.footable>tbody>tr>th{display:none}table.footable>tbody>tr.footable-detail-row>td,table.footable>tbody>tr.footable-detail-row>th,table.footable>tbody>tr.footable-empty>td,table.footable>tbody>tr.footable-empty>th{display:table-cell}@-webkit-keyframes fooicon-spin-r{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fooicon-spin-r{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fooicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings'!important;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fooicon:after,.fooicon:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fooicon-loader:before{content:"\e030"}.fooicon-plus:before{content:"\2b"}.fooicon-minus:before{content:"\2212"}.fooicon-search:before{content:"\e003"}.fooicon-remove:before{content:"\e014"}.fooicon-sort:before{content:"\e150"}.fooicon-sort-asc:before{content:"\e155"}.fooicon-sort-desc:before{content:"\e156"}.fooicon-pencil:before{content:"\270f"}.fooicon-trash:before{content:"\e020"}.fooicon-eye-close:before{content:"\e106"}.fooicon-flash:before{content:"\e162"}.fooicon-cog:before{content:"\e019"}.fooicon-stats:before{content:"\e185"}table.footable>thead>tr.footable-filtering>th{border-bottom-width:1px;font-weight:400}.footable-filtering-external.footable-filtering-right,table.footable.footable-filtering-right>thead>tr.footable-filtering>th,table.footable>thead>tr.footable-filtering>th{text-align:right}.footable-filtering-external.footable-filtering-left,table.footable.footable-filtering-left>thead>tr.footable-filtering>th{text-align:left}.footable-filtering-external.footable-filtering-center,.footable-paging-external.footable-paging-center,table.footable-paging-center>tfoot>tr.footable-paging>td,table.footable.footable-filtering-center>thead>tr.footable-filtering>th,table.footable>tfoot>tr.footable-paging>td{text-align:center}table.footable>thead>tr.footable-filtering>th div.form-group+div.form-group{margin-top:5px}table.footable>thead>tr.footable-filtering>th div.input-group{width:100%}.footable-filtering-external ul.dropdown-menu>li>a.checkbox,table.footable>thead>tr.footable-filtering>th ul.dropdown-menu>li>a.checkbox{margin:0;display:block;position:relative}.footable-filtering-external ul.dropdown-menu>li>a.checkbox>label,table.footable>thead>tr.footable-filtering>th ul.dropdown-menu>li>a.checkbox>label{display:block;padding-left:20px}.footable-filtering-external ul.dropdown-menu>li>a.checkbox input[type=checkbox],table.footable>thead>tr.footable-filtering>th ul.dropdown-menu>li>a.checkbox input[type=checkbox]{position:absolute;margin-left:-20px}@media (min-width:768px){table.footable>thead>tr.footable-filtering>th div.input-group{width:auto}table.footable>thead>tr.footable-filtering>th div.form-group{margin-left:2px;margin-right:2px}table.footable>thead>tr.footable-filtering>th div.form-group+div.form-group{margin-top:0}}table.footable>tbody>tr>td.footable-sortable,table.footable>tbody>tr>th.footable-sortable,table.footable>tfoot>tr>td.footable-sortable,table.footable>tfoot>tr>th.footable-sortable,table.footable>thead>tr>td.footable-sortable,table.footable>thead>tr>th.footable-sortable{position:relative;padding-right:30px;cursor:pointer}td.footable-sortable>span.fooicon,th.footable-sortable>span.fooicon{position:absolute;right:6px;top:50%;margin-top:-7px;opacity:0;transition:opacity .3s ease-in}td.footable-sortable.footable-asc>span.fooicon,td.footable-sortable.footable-desc>span.fooicon,td.footable-sortable:hover>span.fooicon,th.footable-sortable.footable-asc>span.fooicon,th.footable-sortable.footable-desc>span.fooicon,th.footable-sortable:hover>span.fooicon{opacity:1}table.footable-sorting-disabled td.footable-sortable.footable-asc>span.fooicon,table.footable-sorting-disabled td.footable-sortable.footable-desc>span.fooicon,table.footable-sorting-disabled td.footable-sortable:hover>span.fooicon,table.footable-sorting-disabled th.footable-sortable.footable-asc>span.fooicon,table.footable-sorting-disabled th.footable-sortable.footable-desc>span.fooicon,table.footable-sorting-disabled th.footable-sortable:hover>span.fooicon{opacity:0;visibility:hidden}.footable-paging-external ul.pagination,table.footable>tfoot>tr.footable-paging>td>ul.pagination{margin:10px 0 0}.footable-paging-external span.label,table.footable>tfoot>tr.footable-paging>td>span.label{display:inline-block;margin:0 0 10px;padding:4px 10px}.footable-paging-external.footable-paging-left,table.footable-paging-left>tfoot>tr.footable-paging>td{text-align:left}.footable-paging-external.footable-paging-right,table.footable-editing-right td.footable-editing,table.footable-editing-right tr.footable-editing,table.footable-paging-right>tfoot>tr.footable-paging>td{text-align:right}ul.pagination>li.footable-page{display:none}ul.pagination>li.footable-page.visible{display:inline}td.footable-editing{width:90px;max-width:90px}table.footable-editing-no-delete td.footable-editing,table.footable-editing-no-edit td.footable-editing,table.footable-editing-no-view td.footable-editing{width:70px;max-width:70px}table.footable-editing-no-delete.footable-editing-no-view td.footable-editing,table.footable-editing-no-edit.footable-editing-no-delete td.footable-editing,table.footable-editing-no-edit.footable-editing-no-view td.footable-editing{width:50px;max-width:50px}table.footable-editing-no-edit.footable-editing-no-delete.footable-editing-no-view td.footable-editing,table.footable-editing-no-edit.footable-editing-no-delete.footable-editing-no-view th.footable-editing{width:0;max-width:0;display:none!important}table.footable-editing-left td.footable-editing,table.footable-editing-left tr.footable-editing{text-align:left}table.footable-editing button.footable-add,table.footable-editing button.footable-hide,table.footable-editing-show button.footable-show,table.footable-editing.footable-editing-always-show button.footable-hide,table.footable-editing.footable-editing-always-show button.footable-show,table.footable-editing.footable-editing-always-show.footable-editing-no-add tr.footable-editing{display:none}table.footable-editing.footable-editing-always-show button.footable-add,table.footable-editing.footable-editing-show button.footable-add,table.footable-editing.footable-editing-show button.footable-hide{display:inline-block}
\ No newline at end of file
+table.footable-details,
+table.footable > thead > tr.footable-filtering > th div.form-group {
+  margin-bottom: 0;
+}
+table.footable,
+table.footable-details {
+  position: relative;
+  width: 100%;
+  border-spacing: 0;
+  border-collapse: collapse;
+}
+table.footable-hide-fouc {
+  display: none;
+}
+table > tbody > tr > td > span.footable-toggle {
+  margin-right: 8px;
+  opacity: 0.3;
+}
+table > tbody > tr > td > span.footable-toggle.last-column {
+  margin-left: 8px;
+  float: right;
+}
+table.table-condensed > tbody > tr > td > span.footable-toggle {
+  margin-right: 5px;
+}
+table.footable-details > tbody > tr > th:nth-child(1) {
+  min-width: 40px;
+  width: 120px;
+}
+table.footable-details > tbody > tr > td:nth-child(2) {
+  word-break: break-all;
+}
+table.footable-details > tbody > tr:first-child > td,
+table.footable-details > tbody > tr:first-child > th,
+table.footable-details > tfoot > tr:first-child > td,
+table.footable-details > tfoot > tr:first-child > th,
+table.footable-details > thead > tr:first-child > td,
+table.footable-details > thead > tr:first-child > th {
+  border-top-width: 0;
+}
+table.footable-details.table-bordered > tbody > tr:first-child > td,
+table.footable-details.table-bordered > tbody > tr:first-child > th,
+table.footable-details.table-bordered > tfoot > tr:first-child > td,
+table.footable-details.table-bordered > tfoot > tr:first-child > th,
+table.footable-details.table-bordered > thead > tr:first-child > td,
+table.footable-details.table-bordered > thead > tr:first-child > th {
+  border-top-width: 1px;
+}
+div.footable-loader {
+  vertical-align: middle;
+  text-align: center;
+  height: 300px;
+  position: relative;
+}
+div.footable-loader > span.fooicon {
+  display: inline-block;
+  opacity: 0.3;
+  font-size: 30px;
+  line-height: 32px;
+  width: 32px;
+  height: 32px;
+  margin-top: -16px;
+  margin-left: -16px;
+  position: absolute;
+  top: 50%;
+  left: 50%;
+  -webkit-animation: fooicon-spin-r 2s infinite linear;
+  animation: fooicon-spin-r 2s infinite linear;
+}
+table.footable > tbody > tr.footable-empty > td {
+  vertical-align: middle;
+  text-align: center;
+  font-size: 30px;
+}
+table.footable > tbody > tr > td,
+table.footable > tbody > tr > th {
+  display: none;
+}
+table.footable > tbody > tr.footable-detail-row > td,
+table.footable > tbody > tr.footable-detail-row > th,
+table.footable > tbody > tr.footable-empty > td,
+table.footable > tbody > tr.footable-empty > th {
+  display: table-cell;
+}
+@-webkit-keyframes fooicon-spin-r {
+  0% {
+    -webkit-transform: rotate(0);
+    transform: rotate(0);
+  }
+  100% {
+    -webkit-transform: rotate(359deg);
+    transform: rotate(359deg);
+  }
+}
+@keyframes fooicon-spin-r {
+  0% {
+    -webkit-transform: rotate(0);
+    transform: rotate(0);
+  }
+  100% {
+    -webkit-transform: rotate(359deg);
+    transform: rotate(359deg);
+  }
+}
+.fooicon {
+  position: relative;
+  top: 0px;
+  display: inline-block;
+  font-family: "bootstrap-icons" !important;
+  font-style: normal;
+  font-weight: 400;
+  line-height: 1;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+@-moz-document url-prefix() {
+  .fooicon {
+    top: 2px;
+  }
+}
+.fooicon:after,
+.fooicon:before {
+  -webkit-box-sizing: border-box;
+  -moz-box-sizing: border-box;
+  box-sizing: border-box;
+}
+.fooicon-loader:before {
+  content: "\f130";
+}
+.fooicon-plus:before {
+  content: "\f4fc";
+}
+.fooicon-minus:before {
+  content: "\f2e8";
+}
+.fooicon-search:before {
+  content: "\f52a";
+}
+.fooicon-remove:before {
+  content: "\f62a";
+}
+.fooicon-sort:before {
+  content: "\f3c6";
+}
+.fooicon-sort-asc:before {
+  content: "\f575";
+}
+.fooicon-sort-desc:before {
+  content: "\f57b";
+}
+.fooicon-pencil:before {
+  content: "\f4c9";
+}
+.fooicon-trash:before {
+  content: "\f62a";
+}
+.fooicon-eye-close:before {
+  content: "\f33f";
+}
+.fooicon-flash:before {
+  content: "\f46e";
+}
+.fooicon-cog:before {
+  content: "\f3e2";
+}
+.fooicon-stats:before {
+  content: "\f359";
+}
+table.footable > thead > tr.footable-filtering > th {
+  border-bottom-width: 1px;
+  font-weight: 400;
+}
+.footable-filtering-external.footable-filtering-right,
+table.footable.footable-filtering-right > thead > tr.footable-filtering > th,
+table.footable > thead > tr.footable-filtering > th {
+  text-align: right;
+}
+.footable-filtering-external.footable-filtering-left,
+table.footable.footable-filtering-left > thead > tr.footable-filtering > th {
+  text-align: left;
+}
+.footable-filtering-external.footable-filtering-center,
+.footable-paging-external.footable-paging-center,
+table.footable-paging-center > tfoot > tr.footable-paging > td,
+table.footable.footable-filtering-center > thead > tr.footable-filtering > th,
+table.footable > tfoot > tr.footable-paging > td {
+  text-align: center;
+}
+table.footable > thead > tr.footable-filtering > th div.form-group + div.form-group {
+  margin-top: 5px;
+}
+table.footable > thead > tr.footable-filtering > th div.input-group {
+  width: 100%;
+}
+.footable-filtering-external ul.dropdown-menu > li > a.checkbox,
+table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox {
+  margin: 0;
+  display: block;
+  position: relative;
+}
+.footable-filtering-external ul.dropdown-menu > li > a.checkbox > label,
+table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox > label {
+  display: block;
+  padding-left: 20px;
+}
+.footable-filtering-external ul.dropdown-menu > li > a.checkbox input[type="checkbox"],
+table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox input[type="checkbox"] {
+  position: absolute;
+  margin-left: -20px;
+}
+@media (min-width: 768px) {
+  table.footable > thead > tr.footable-filtering > th div.input-group {
+    width: auto;
+  }
+  table.footable > thead > tr.footable-filtering > th div.form-group {
+    margin-left: 2px;
+    margin-right: 2px;
+  }
+  table.footable > thead > tr.footable-filtering > th div.form-group + div.form-group {
+    margin-top: 0;
+  }
+}
+table.footable > tbody > tr > td.footable-sortable,
+table.footable > tbody > tr > th.footable-sortable,
+table.footable > tfoot > tr > td.footable-sortable,
+table.footable > tfoot > tr > th.footable-sortable,
+table.footable > thead > tr > td.footable-sortable,
+table.footable > thead > tr > th.footable-sortable {
+  position: relative;
+  padding-right: 30px;
+  cursor: pointer;
+}
+td.footable-sortable > span.fooicon,
+th.footable-sortable > span.fooicon {
+  position: absolute;
+  right: 6px;
+  top: 50%;
+  margin-top: -7px;
+  opacity: 0;
+  transition: opacity 0.3s ease-in;
+}
+td.footable-sortable.footable-asc > span.fooicon,
+td.footable-sortable.footable-desc > span.fooicon,
+td.footable-sortable:hover > span.fooicon,
+th.footable-sortable.footable-asc > span.fooicon,
+th.footable-sortable.footable-desc > span.fooicon,
+th.footable-sortable:hover > span.fooicon {
+  opacity: 1;
+}
+table.footable-sorting-disabled td.footable-sortable.footable-asc > span.fooicon,
+table.footable-sorting-disabled td.footable-sortable.footable-desc > span.fooicon,
+table.footable-sorting-disabled td.footable-sortable:hover > span.fooicon,
+table.footable-sorting-disabled th.footable-sortable.footable-asc > span.fooicon,
+table.footable-sorting-disabled th.footable-sortable.footable-desc > span.fooicon,
+table.footable-sorting-disabled th.footable-sortable:hover > span.fooicon {
+  opacity: 0;
+  visibility: hidden;
+}
+.footable-paging-external ul.pagination,
+table.footable > tfoot > tr.footable-paging > td > ul.pagination {
+  margin: 10px 0 0;
+}
+.footable-paging-external span.label,
+table.footable > tfoot > tr.footable-paging > td > span.label {
+  display: inline-block;
+  margin: 0 0 10px;
+  padding: 4px 10px;
+}
+.footable-paging-external.footable-paging-left,
+table.footable-paging-left > tfoot > tr.footable-paging > td {
+  text-align: left;
+}
+.footable-paging-external.footable-paging-right,
+table.footable-editing-right td.footable-editing,
+table.footable-editing-right tr.footable-editing,
+table.footable-paging-right > tfoot > tr.footable-paging > td {
+  text-align: right;
+}
+ul.pagination > li.footable-page {
+  display: none;
+}
+ul.pagination > li.footable-page.visible {
+  display: inline;
+}
+td.footable-editing {
+  width: 90px;
+  max-width: 90px;
+}
+table.footable-editing-no-delete td.footable-editing,
+table.footable-editing-no-edit td.footable-editing,
+table.footable-editing-no-view td.footable-editing {
+  width: 70px;
+  max-width: 70px;
+}
+table.footable-editing-no-delete.footable-editing-no-view td.footable-editing,
+table.footable-editing-no-edit.footable-editing-no-delete td.footable-editing,
+table.footable-editing-no-edit.footable-editing-no-view td.footable-editing {
+  width: 50px;
+  max-width: 50px;
+}
+table.footable-editing-no-edit.footable-editing-no-delete.footable-editing-no-view td.footable-editing,
+table.footable-editing-no-edit.footable-editing-no-delete.footable-editing-no-view th.footable-editing {
+  width: 0;
+  max-width: 0;
+  display: none !important;
+}
+table.footable-editing-left td.footable-editing,
+table.footable-editing-left tr.footable-editing {
+  text-align: left;
+}
+table.footable-editing button.footable-add,
+table.footable-editing button.footable-hide,
+table.footable-editing-show button.footable-show,
+table.footable-editing.footable-editing-always-show button.footable-hide,
+table.footable-editing.footable-editing-always-show button.footable-show,
+table.footable-editing.footable-editing-always-show.footable-editing-no-add tr.footable-editing {
+  display: none;
+}
+table.footable-editing.footable-editing-always-show button.footable-add,
+table.footable-editing.footable-editing-show button.footable-add,
+table.footable-editing.footable-editing-show button.footable-hide {
+  display: inline-block;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/007-languages.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/007-languages.min.css
index 2c6a926..a081cac 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/007-languages.min.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/007-languages.min.css
@@ -1 +1 @@
-.lang-lg,.lang-sm,.lang-xs{background-repeat:no-repeat;display:inline-block;background-image:url(/img/languages.png)}.lang-sm,.lang-sm:after,.lang-xs,.lang-xs:after{position:relative}.lang-xs{background-position:0 -484px;min-width:14px;height:11px;min-height:11px;max-height:11px}.lang-sm{background-position:0 -1199px;min-width:22px;height:16px;min-height:16px;max-height:16px}.lang-lg{background-position:0 -2134px;min-width:30px;height:22px;min-height:22px;max-height:22px}.lang-xs[lang=ar]{background-position:0 0}.lang-xs[lang=be]{background-position:0 -11px}.lang-xs[lang=bg]{background-position:0 -22px}.lang-xs[lang=cs]{background-position:0 -33px}.lang-xs[lang=da]{background-position:0 -44px}.lang-xs[lang=de]{background-position:0 -55px}.lang-xs[lang=el]{background-position:0 -66px}.lang-xs[lang=en]{background-position:0 -77px}.lang-xs[lang=es]{background-position:0 -88px}.lang-xs[lang=et]{background-position:0 -99px}.lang-xs[lang=fi]{background-position:0 -110px}.lang-xs[lang=fr]{background-position:0 -121px}.lang-xs[lang=ga]{background-position:0 -132px}.lang-xs[lang=hi]{background-position:0 -143px}.lang-xs[lang=hr]{background-position:0 -154px}.lang-xs[lang=hu]{background-position:0 -165px}.lang-xs[lang=in]{background-position:0 -176px}.lang-xs[lang=is]{background-position:0 -187px}.lang-xs[lang=it]{background-position:0 -198px}.lang-xs[lang=iw]{background-position:0 -209px}.lang-xs[lang=ja]{background-position:0 -220px}.lang-xs[lang=ko]{background-position:0 -231px}.lang-xs[lang=lt]{background-position:0 -242px}.lang-xs[lang=lv]{background-position:0 -253px}.lang-xs[lang=mk]{background-position:0 -264px}.lang-xs[lang=ms]{background-position:0 -275px}.lang-xs[lang=mt]{background-position:0 -286px}.lang-xs[lang=nl]{background-position:0 -297px}.lang-xs[lang=no]{background-position:0 -308px}.lang-xs[lang=pl]{background-position:0 -319px}.lang-xs[lang=pt]{background-position:0 -330px}.lang-xs[lang=ro]{background-position:0 -341px}.lang-xs[lang=ru]{background-position:0 -352px}.lang-xs[lang=sk]{background-position:0 -363px}.lang-xs[lang=sl]{background-position:0 -374px}.lang-xs[lang=sq]{background-position:0 -385px}.lang-xs[lang=sr]{background-position:0 -396px}.lang-xs[lang=sv]{background-position:0 -407px}.lang-xs[lang=th]{background-position:0 -418px}.lang-xs[lang=tr]{background-position:0 -429px}.lang-xs[lang=uk]{background-position:0 -440px}.lang-xs[lang=vi]{background-position:0 -451px}.lang-xs[lang=zh]{background-position:0 -462px}.lang-xs[lang=ca]{background-position:0 -473px}.lang-sm[lang=ar]{background-position:0 -495px}.lang-sm[lang=be]{background-position:0 -511px}.lang-sm[lang=bg]{background-position:0 -527px}.lang-sm[lang=cs]{background-position:0 -543px}.lang-sm[lang=da]{background-position:0 -559px}.lang-sm[lang=de]{background-position:0 -575px}.lang-sm[lang=el]{background-position:0 -591px}.lang-sm[lang=en]{background-position:0 -607px}.lang-sm[lang=es]{background-position:0 -623px}.lang-sm[lang=et]{background-position:0 -639px}.lang-sm[lang=fi]{background-position:0 -655px}.lang-sm[lang=fr]{background-position:0 -671px}.lang-sm[lang=ga]{background-position:0 -687px}.lang-sm[lang=hi]{background-position:0 -703px}.lang-sm[lang=hr]{background-position:0 -719px}.lang-sm[lang=hu]{background-position:0 -735px}.lang-sm[lang=in]{background-position:0 -751px}.lang-sm[lang=is]{background-position:0 -767px}.lang-sm[lang=it]{background-position:0 -783px}.lang-sm[lang=iw]{background-position:0 -799px}.lang-sm[lang=ja]{background-position:0 -815px}.lang-sm[lang=ko]{background-position:0 -831px}.lang-sm[lang=lt]{background-position:0 -847px}.lang-sm[lang=lv]{background-position:0 -863px}.lang-sm[lang=mk]{background-position:0 -879px}.lang-sm[lang=ms]{background-position:0 -895px}.lang-sm[lang=mt]{background-position:0 -911px}.lang-sm[lang=nl]{background-position:0 -927px}.lang-sm[lang=no]{background-position:0 -943px}.lang-sm[lang=pl]{background-position:0 -959px}.lang-sm[lang=pt]{background-position:0 -975px}.lang-sm[lang=ro]{background-position:0 -991px}.lang-sm[lang=ru]{background-position:0 -1007px}.lang-sm[lang=sk]{background-position:0 -1023px}.lang-sm[lang=sl]{background-position:0 -1039px}.lang-sm[lang=sq]{background-position:0 -1055px}.lang-sm[lang=sr]{background-position:0 -1071px}.lang-sm[lang=sv]{background-position:0 -1087px}.lang-sm[lang=th]{background-position:0 -1103px}.lang-sm[lang=tr]{background-position:0 -1119px}.lang-sm[lang=uk]{background-position:0 -1135px}.lang-sm[lang=vi]{background-position:0 -1151px}.lang-sm[lang=zh]{background-position:0 -1167px}.lang-sm[lang=ca]{background-position:0 -1183px}.lang-lg[lang=ar]{background-position:0 -1188px}.lang-lg[lang=be]{background-position:0 -1210px}.lang-lg[lang=bg]{background-position:0 -1232px}.lang-lg[lang=cs]{background-position:0 -1254px}.lang-lg[lang=da]{background-position:0 -1276px}.lang-lg[lang=de]{background-position:0 -1298px}.lang-lg[lang=el]{background-position:0 -1320px}.lang-lg[lang=en]{background-position:0 -1342px}.lang-lg[lang=es]{background-position:0 -1364px}.lang-lg[lang=et]{background-position:0 -1386px}.lang-lg[lang=fi]{background-position:0 -1408px}.lang-lg[lang=fr]{background-position:0 -1430px}.lang-lg[lang=ga]{background-position:0 -1452px}.lang-lg[lang=hi]{background-position:0 -1474px}.lang-lg[lang=hr]{background-position:0 -1496px}.lang-lg[lang=hu]{background-position:0 -1518px}.lang-lg[lang=in]{background-position:0 -1540px}.lang-lg[lang=is]{background-position:0 -1562px}.lang-lg[lang=it]{background-position:0 -1584px}.lang-lg[lang=iw]{background-position:0 -1606px}.lang-lg[lang=ja]{background-position:0 -1628px}.lang-lg[lang=ko]{background-position:0 -1650px}.lang-lg[lang=lt]{background-position:0 -1672px}.lang-lg[lang=lv]{background-position:0 -1694px}.lang-lg[lang=mk]{background-position:0 -1716px}.lang-lg[lang=ms]{background-position:0 -1738px}.lang-lg[lang=mt]{background-position:0 -1760px}.lang-lg[lang=nl]{background-position:0 -1782px}.lang-lg[lang=no]{background-position:0 -1804px}.lang-lg[lang=pl]{background-position:0 -1826px}.lang-lg[lang=pt]{background-position:0 -1848px}.lang-lg[lang=ro]{background-position:0 -1870px}.lang-lg[lang=ru]{background-position:0 -1892px}.lang-lg[lang=sk]{background-position:0 -1914px}.lang-lg[lang=sl]{background-position:0 -1936px}.lang-lg[lang=sq]{background-position:0 -1958px}.lang-lg[lang=sr]{background-position:0 -1980px}.lang-lg[lang=sv]{background-position:0 -2002px}.lang-lg[lang=th]{background-position:0 -2024px}.lang-lg[lang=tr]{background-position:0 -2046px}.lang-lg[lang=uk]{background-position:0 -2068px}.lang-lg[lang=vi]{background-position:0 -2090px}.lang-lg[lang=zh]{background-position:0 -2112px}.lang-lbl-en:after,.lang-lbl-full:after,.lang-lbl:after{content:"Unknown language"}.lang-lbl[lang=ar]:after{content:"\000627\000644\000639\000631\000628\00064A\000629"}.lang-lbl[lang=be]:after{content:"\000411\000435\00043B\000430\000440\000443\000441\00043A\000456"}.lang-lbl[lang=bg]:after{content:"\000411\00044A\00043B\000433\000430\000440\000441\00043A\000438"}.lang-lbl[lang=ca]:after{content:"Catal\0000E0"}.lang-lbl[lang=cs]:after{content:"\00010Ce\000161tina"}.lang-lbl[lang=da]:after{content:"Dansk"}.lang-lbl[lang=de]:after{content:"Deutsch"}.lang-lbl[lang=el]:after{content:"\000395\0003BB\0003BB\0003B7\0003BD\0003B9\0003BA\0003AC"}.lang-lbl[lang=en]:after{content:"English"}.lang-lbl[lang=es]:after{content:"Espa\0000F1ol"}.lang-lbl[lang=et]:after{content:"Eesti"}.lang-lbl[lang=fi]:after{content:"Suomi"}.lang-lbl[lang=fr]:after{content:"Fran\0000E7ais"}.lang-lbl[lang=ga]:after{content:"Gaeilge"}.lang-lbl[lang=hi]:after{content:"\000939\00093F\000902\000926\000940"}.lang-lbl[lang=hr]:after{content:"Hrvatski"}.lang-lbl[lang=hu]:after{content:"Magyar"}.lang-lbl[lang=in]:after{content:"Bahasa\000020indonesia"}.lang-lbl[lang=is]:after{content:"\0000CDslenska"}.lang-lbl[lang=it]:after{content:"Italiano"}.lang-lbl[lang=iw]:after{content:"\0005E2\0005D1\0005E8\0005D9\0005EA"}.lang-lbl[lang=ja]:after{content:"\0065E5\00672C\008A9E"}.lang-lbl[lang=ko]:after{content:"\00D55C\00AD6D\00C5B4"}.lang-lbl[lang=lt]:after{content:"Lietuvi\000173"}.lang-lbl[lang=lv]:after{content:"Latvie\000161u"}.lang-lbl[lang=mk]:after{content:"\00041C\000430\00043A\000435\000434\00043E\00043D\000441\00043A\000438"}.lang-lbl[lang=ms]:after{content:"Bahasa\000020melayu"}.lang-lbl[lang=mt]:after{content:"Malti"}.lang-lbl[lang=nl]:after{content:"Nederlands"}.lang-lbl[lang=no]:after{content:"Norsk"}.lang-lbl[lang=pl]:after{content:"Polski"}.lang-lbl[lang=pt]:after{content:"Portugu\0000EAs"}.lang-lbl[lang=ro]:after{content:"Rom\0000E2n\000103"}.lang-lbl[lang=ru]:after{content:"\000420\000443\000441\000441\00043A\000438\000439"}.lang-lbl[lang=sk]:after{content:"Sloven\00010Dina"}.lang-lbl[lang=sl]:after{content:"Sloven\000161\00010Dina"}.lang-lbl[lang=sq]:after{content:"Shqipe"}.lang-lbl[lang=sr]:after{content:"\000421\000440\00043F\000441\00043A\000438"}.lang-lbl[lang=sv]:after{content:"Svenska"}.lang-lbl[lang=th]:after{content:"\000E44\000E17\000E22"}.lang-lbl[lang=tr]:after{content:"T\0000FCrk\0000E7e"}.lang-lbl[lang=uk]:after{content:"\000423\00043A\000440\000430\000457\00043D\000441\00044C\00043A\000430"}.lang-lbl[lang=vi]:after{content:"Ti\001EBFng\000020vi\001EC7t"}.lang-lbl[lang=zh]:after{content:"\004E2D\006587"}.lang-lbl-en[lang=ar]:after{content:"Arabic"}.lang-lbl-en[lang=be]:after{content:"Belarusian"}.lang-lbl-en[lang=bg]:after{content:"Bulgarian"}.lang-lbl-en[lang=ca]:after{content:"Catalan"}.lang-lbl-en[lang=cs]:after{content:"Czech"}.lang-lbl-en[lang=da]:after{content:"Danish"}.lang-lbl-en[lang=de]:after{content:"German"}.lang-lbl-en[lang=el]:after{content:"Greek"}.lang-lbl-en[lang=en]:after{content:"English"}.lang-lbl-en[lang=es]:after{content:"Spanish"}.lang-lbl-en[lang=et]:after{content:"Estonian"}.lang-lbl-en[lang=fi]:after{content:"Finnish"}.lang-lbl-en[lang=fr]:after{content:"French"}.lang-lbl-en[lang=ga]:after{content:"Irish"}.lang-lbl-en[lang=hi]:after{content:"Hindi"}.lang-lbl-en[lang=hr]:after{content:"Croatian"}.lang-lbl-en[lang=hu]:after{content:"Hungarian"}.lang-lbl-en[lang=in]:after{content:"Indonesian"}.lang-lbl-en[lang=is]:after{content:"Icelandic"}.lang-lbl-en[lang=it]:after{content:"Italian"}.lang-lbl-en[lang=iw]:after{content:"Hebrew"}.lang-lbl-en[lang=ja]:after{content:"Japanese"}.lang-lbl-en[lang=ko]:after{content:"Korean"}.lang-lbl-en[lang=lt]:after{content:"Lithuanian"}.lang-lbl-en[lang=lv]:after{content:"Latvian"}.lang-lbl-en[lang=mk]:after{content:"Macedonian"}.lang-lbl-en[lang=ms]:after{content:"Malay"}.lang-lbl-en[lang=mt]:after{content:"Maltese"}.lang-lbl-en[lang=nl]:after{content:"Dutch"}.lang-lbl-en[lang=no]:after{content:"Norwegian"}.lang-lbl-en[lang=pl]:after{content:"Polish"}.lang-lbl-en[lang=pt]:after{content:"Portuguese"}.lang-lbl-en[lang=ro]:after{content:"Romanian"}.lang-lbl-en[lang=ru]:after{content:"Russian"}.lang-lbl-en[lang=sk]:after{content:"Slovak"}.lang-lbl-en[lang=sl]:after{content:"Slovenian"}.lang-lbl-en[lang=sq]:after{content:"Albanian"}.lang-lbl-en[lang=sr]:after{content:"Serbian"}.lang-lbl-en[lang=sv]:after{content:"Swedish"}.lang-lbl-en[lang=th]:after{content:"Thai"}.lang-lbl-en[lang=tr]:after{content:"Turkish"}.lang-lbl-en[lang=uk]:after{content:"Ukrainian"}.lang-lbl-en[lang=vi]:after{content:"Vietnamese"}.lang-lbl-en[lang=zh]:after{content:"Chinese"}.lang-lbl-full[lang=ar]:after{content:"\000627\000644\000639\000631\000628\00064A\000629\0000A0/\0000A0Arabic"}.lang-lbl-full[lang=be]:after{content:"\000411\000435\00043B\000430\000440\000443\000441\00043A\000456\0000A0/\0000A0Belarusian"}.lang-lbl-full[lang=bg]:after{content:"\000411\00044A\00043B\000433\000430\000440\000441\00043A\000438\0000A0/\0000A0Bulgarian"}.lang-lbl-full[lang=ca]:after{content:"Catal\0000E0\0000A0/\0000A0Catalan"}.lang-lbl-full[lang=cs]:after{content:"\00010Ce\000161tina\0000A0/\0000A0Czech"}.lang-lbl-full[lang=da]:after{content:"Dansk\0000A0/\0000A0Danish"}.lang-lbl-full[lang=de]:after{content:"Deutsch\0000A0/\0000A0German"}.lang-lbl-full[lang=el]:after{content:"\000395\0003BB\0003BB\0003B7\0003BD\0003B9\0003BA\0003AC\0000A0/\0000A0Greek"}.lang-lbl-full[lang=en]:after{content:"English\0000A0/\0000A0English"}.lang-lbl-full[lang=es]:after{content:"Espa\0000F1ol\0000A0/\0000A0Spanish"}.lang-lbl-full[lang=et]:after{content:"Eesti\0000A0/\0000A0Estonian"}.lang-lbl-full[lang=fi]:after{content:"Suomi\0000A0/\0000A0Finnish"}.lang-lbl-full[lang=fr]:after{content:"Fran\0000E7ais\0000A0/\0000A0French"}.lang-lbl-full[lang=ga]:after{content:"Gaeilge\0000A0/\0000A0Irish"}.lang-lbl-full[lang=hi]:after{content:"\000939\00093F\000902\000926\000940\0000A0/\0000A0Hindi"}.lang-lbl-full[lang=hr]:after{content:"Hrvatski\0000A0/\0000A0Croatian"}.lang-lbl-full[lang=hu]:after{content:"Magyar\0000A0/\0000A0Hungarian"}.lang-lbl-full[lang=in]:after{content:"Bahasa\000020indonesia\0000A0/\0000A0Indonesian"}.lang-lbl-full[lang=is]:after{content:"\0000CDslenska\0000A0/\0000A0Icelandic"}.lang-lbl-full[lang=it]:after{content:"Italiano\0000A0/\0000A0Italian"}.lang-lbl-full[lang=iw]:after{content:"\0005E2\0005D1\0005E8\0005D9\0005EA\0000A0/\0000A0Hebrew"}.lang-lbl-full[lang=ja]:after{content:"\0065E5\00672C\008A9E\0000A0/\0000A0Japanese"}.lang-lbl-full[lang=ko]:after{content:"\00D55C\00AD6D\00C5B4\0000A0/\0000A0Korean"}.lang-lbl-full[lang=lt]:after{content:"Lietuvi\000173\0000A0/\0000A0Lithuanian"}.lang-lbl-full[lang=lv]:after{content:"Latvie\000161u\0000A0/\0000A0Latvian"}.lang-lbl-full[lang=mk]:after{content:"\00041C\000430\00043A\000435\000434\00043E\00043D\000441\00043A\000438\0000A0/\0000A0Macedonian"}.lang-lbl-full[lang=ms]:after{content:"Bahasa\000020melayu\0000A0/\0000A0Malay"}.lang-lbl-full[lang=mt]:after{content:"Malti\0000A0/\0000A0Maltese"}.lang-lbl-full[lang=nl]:after{content:"Nederlands\0000A0/\0000A0Dutch"}.lang-lbl-full[lang=no]:after{content:"Norsk\0000A0/\0000A0Norwegian"}.lang-lbl-full[lang=pl]:after{content:"Polski\0000A0/\0000A0Polish"}.lang-lbl-full[lang=pt]:after{content:"Portugu\0000EAs\0000A0/\0000A0Portuguese"}.lang-lbl-full[lang=ro]:after{content:"Rom\0000E2n\000103\0000A0/\0000A0Romanian"}.lang-lbl-full[lang=ru]:after{content:"\000420\000443\000441\000441\00043A\000438\000439\0000A0/\0000A0Russian"}.lang-lbl-full[lang=sk]:after{content:"Sloven\00010Dina\0000A0/\0000A0Slovak"}.lang-lbl-full[lang=sl]:after{content:"Sloven\000161\00010Dina\0000A0/\0000A0Slovenian"}.lang-lbl-full[lang=sq]:after{content:"Shqipe\0000A0/\0000A0Albanian"}.lang-lbl-full[lang=sr]:after{content:"\000421\000440\00043F\000441\00043A\000438\0000A0/\0000A0Serbian"}.lang-lbl-full[lang=sv]:after{content:"Svenska\0000A0/\0000A0Swedish"}.lang-lbl-full[lang=th]:after{content:"\000E44\000E17\000E22\0000A0/\0000A0Thai"}.lang-lbl-full[lang=tr]:after{content:"T\0000FCrk\0000E7e\0000A0/\0000A0Turkish"}.lang-lbl-full[lang=uk]:after{content:"\000423\00043A\000440\000430\000457\00043D\000441\00044C\00043A\000430\0000A0/\0000A0Ukrainian"}.lang-lbl-full[lang=vi]:after{content:"Ti\001EBFng\000020vi\001EC7t\0000A0/\0000A0Vietnamese"}.lang-lbl-full[lang=zh]:after{content:"\004E2D\006587\0000A0/\0000A0Chinese"}.lang-lg:before,.lang-sm:before,.lang-xs:before{content:'\0000A0'}.lang-xs.lang-lbl,.lang-xs.lang-lbl-en,.lang-xs.lang-lbl-full{padding-left:16px}.lang-sm.lang-lbl,.lang-sm.lang-lbl-en,.lang-sm.lang-lbl-full{padding-left:24px}.lang-lg.lang-lbl,.lang-lg.lang-lbl-en,.lang-lg.lang-lbl-full{padding-left:32px}.lang-lg.lang-lbl-en:before,.lang-lg.lang-lbl-full:before,.lang-lg.lang-lbl:before,.lang-sm.lang-lbl-en:before,.lang-sm.lang-lbl-full:before,.lang-sm.lang-lbl:before,.lang-xs.lang-lbl-en:before,.lang-xs.lang-lbl-full:before,.lang-xs.lang-lbl:before{content:''}.lang-lg,.lang-lg:after{top:0;position:relative}.lang-sm{top:1px}.lang-sm:after{top:-1px}.lang-xs{top:4px}.lang-xs:after{top:-4px}.lead>.lang-lg{top:2px}.lead>.lang-lg:after{top:-2px}.lead>.lang-sm{top:6px}.lead>.lang-sm:after{top:-6px}.lead>.lang-xs{top:8px}.lead>.lang-xs:after{top:-8px}small>.lang-sm{top:-1px}small>.lang-sm:after{top:1px}small>.lang-xs{top:2px}small>.lang-xs:after{top:-2px}h1>.lang-lg{top:9px}h1>.lang-lg:after{top:-9px}h1>.lang-sm{top:12px}h1>.lang-sm:after{top:-12px}h1>.lang-xs{top:14px}h1>.lang-xs:after{top:-14px}h2>.lang-lg{top:5px}h2>.lang-lg:after{top:-5px}h2>.lang-sm{top:8px}h2>.lang-sm:after{top:-8px}h2>.lang-xs{top:10px}h2>.lang-xs:after{top:-10px}h3>.lang-lg{top:1px}h3>.lang-lg:after{top:-1px}h3>.lang-sm{top:5px}h3>.lang-sm:after{top:-5px}h3>.lang-xs{top:8px}h3>.lang-xs:after{top:-8px}h4>.lang-lg{top:-1px}h4>.lang-lg:after,h4>.lang-sm{top:1px}h4>.lang-sm:after{top:-1px}h4>.lang-xs{top:4px}h4>.lang-xs:after{top:-4px}h5>.lang-sm,h5>.lang-sm:after{top:0}h5>.lang-xs{top:2px}h5>.lang-xs:after{top:-2px}h6>.lang-sm,h6>.lang-sm:after{top:0}h6>.lang-xs{top:1px}h6>.lang-xs:after{top:-1px}.btn>.lang-sm{top:2px}.btn>.lang-sm:after{top:-2px}.btn>.lang-xs{top:4px}.btn>.lang-xs:after{top:-4px}.btn.btn-xs>.lang-sm,.btn.btn-xs>.lang-sm:after{top:0}.btn.btn-xs>.lang-xs{top:3px}.btn.btn-xs>.lang-xs:after{top:-3px}.btn.btn-sm>.lang-sm,.btn.btn-sm>.lang-sm:after{top:0}.btn.btn-sm>.lang-xs{top:3px}.btn.btn-sm>.lang-xs:after{top:-3px}.btn.btn-lg>.lang-lg{top:1px}.btn.btn-lg>.lang-lg:after{top:-1px}.btn.btn-lg>.lang-sm{top:3px}.btn.btn-lg>.lang-sm:after{top:-3px}.btn.btn-lg>.lang-xs{top:6px}.btn.btn-lg>.lang-xs:after{top:-6px}
\ No newline at end of file
+.flag-icon-background{background-size:contain;background-position:50%;background-repeat:no-repeat}.flag-icon{background-size:contain;background-position:50%;background-repeat:no-repeat;position:relative;display:inline-block;width:1.33333333em;line-height:1em}.flag-icon:before{content:'\00a0'}.flag-icon.flag-icon-squared{width:1em}.flag-icon-ad{background-image:url(../flags/4x3/ad.svg)}.flag-icon-ad.flag-icon-squared{background-image:url(../flags/1x1/ad.svg)}.flag-icon-ae{background-image:url(../flags/4x3/ae.svg)}.flag-icon-ae.flag-icon-squared{background-image:url(../flags/1x1/ae.svg)}.flag-icon-af{background-image:url(../flags/4x3/af.svg)}.flag-icon-af.flag-icon-squared{background-image:url(../flags/1x1/af.svg)}.flag-icon-ag{background-image:url(../flags/4x3/ag.svg)}.flag-icon-ag.flag-icon-squared{background-image:url(../flags/1x1/ag.svg)}.flag-icon-ai{background-image:url(../flags/4x3/ai.svg)}.flag-icon-ai.flag-icon-squared{background-image:url(../flags/1x1/ai.svg)}.flag-icon-al{background-image:url(../flags/4x3/al.svg)}.flag-icon-al.flag-icon-squared{background-image:url(../flags/1x1/al.svg)}.flag-icon-am{background-image:url(../flags/4x3/am.svg)}.flag-icon-am.flag-icon-squared{background-image:url(../flags/1x1/am.svg)}.flag-icon-ao{background-image:url(../flags/4x3/ao.svg)}.flag-icon-ao.flag-icon-squared{background-image:url(../flags/1x1/ao.svg)}.flag-icon-aq{background-image:url(../flags/4x3/aq.svg)}.flag-icon-aq.flag-icon-squared{background-image:url(../flags/1x1/aq.svg)}.flag-icon-ar{background-image:url(../flags/4x3/ar.svg)}.flag-icon-ar.flag-icon-squared{background-image:url(../flags/1x1/ar.svg)}.flag-icon-as{background-image:url(../flags/4x3/as.svg)}.flag-icon-as.flag-icon-squared{background-image:url(../flags/1x1/as.svg)}.flag-icon-at{background-image:url(../flags/4x3/at.svg)}.flag-icon-at.flag-icon-squared{background-image:url(../flags/1x1/at.svg)}.flag-icon-au{background-image:url(../flags/4x3/au.svg)}.flag-icon-au.flag-icon-squared{background-image:url(../flags/1x1/au.svg)}.flag-icon-aw{background-image:url(../flags/4x3/aw.svg)}.flag-icon-aw.flag-icon-squared{background-image:url(../flags/1x1/aw.svg)}.flag-icon-ax{background-image:url(../flags/4x3/ax.svg)}.flag-icon-ax.flag-icon-squared{background-image:url(../flags/1x1/ax.svg)}.flag-icon-az{background-image:url(../flags/4x3/az.svg)}.flag-icon-az.flag-icon-squared{background-image:url(../flags/1x1/az.svg)}.flag-icon-ba{background-image:url(../flags/4x3/ba.svg)}.flag-icon-ba.flag-icon-squared{background-image:url(../flags/1x1/ba.svg)}.flag-icon-bb{background-image:url(../flags/4x3/bb.svg)}.flag-icon-bb.flag-icon-squared{background-image:url(../flags/1x1/bb.svg)}.flag-icon-bd{background-image:url(../flags/4x3/bd.svg)}.flag-icon-bd.flag-icon-squared{background-image:url(../flags/1x1/bd.svg)}.flag-icon-be{background-image:url(../flags/4x3/be.svg)}.flag-icon-be.flag-icon-squared{background-image:url(../flags/1x1/be.svg)}.flag-icon-bf{background-image:url(../flags/4x3/bf.svg)}.flag-icon-bf.flag-icon-squared{background-image:url(../flags/1x1/bf.svg)}.flag-icon-bg{background-image:url(../flags/4x3/bg.svg)}.flag-icon-bg.flag-icon-squared{background-image:url(../flags/1x1/bg.svg)}.flag-icon-bh{background-image:url(../flags/4x3/bh.svg)}.flag-icon-bh.flag-icon-squared{background-image:url(../flags/1x1/bh.svg)}.flag-icon-bi{background-image:url(../flags/4x3/bi.svg)}.flag-icon-bi.flag-icon-squared{background-image:url(../flags/1x1/bi.svg)}.flag-icon-bj{background-image:url(../flags/4x3/bj.svg)}.flag-icon-bj.flag-icon-squared{background-image:url(../flags/1x1/bj.svg)}.flag-icon-bl{background-image:url(../flags/4x3/bl.svg)}.flag-icon-bl.flag-icon-squared{background-image:url(../flags/1x1/bl.svg)}.flag-icon-bm{background-image:url(../flags/4x3/bm.svg)}.flag-icon-bm.flag-icon-squared{background-image:url(../flags/1x1/bm.svg)}.flag-icon-bn{background-image:url(../flags/4x3/bn.svg)}.flag-icon-bn.flag-icon-squared{background-image:url(../flags/1x1/bn.svg)}.flag-icon-bo{background-image:url(../flags/4x3/bo.svg)}.flag-icon-bo.flag-icon-squared{background-image:url(../flags/1x1/bo.svg)}.flag-icon-bq{background-image:url(../flags/4x3/bq.svg)}.flag-icon-bq.flag-icon-squared{background-image:url(../flags/1x1/bq.svg)}.flag-icon-br{background-image:url(../flags/4x3/br.svg)}.flag-icon-br.flag-icon-squared{background-image:url(../flags/1x1/br.svg)}.flag-icon-bs{background-image:url(../flags/4x3/bs.svg)}.flag-icon-bs.flag-icon-squared{background-image:url(../flags/1x1/bs.svg)}.flag-icon-bt{background-image:url(../flags/4x3/bt.svg)}.flag-icon-bt.flag-icon-squared{background-image:url(../flags/1x1/bt.svg)}.flag-icon-bv{background-image:url(../flags/4x3/bv.svg)}.flag-icon-bv.flag-icon-squared{background-image:url(../flags/1x1/bv.svg)}.flag-icon-bw{background-image:url(../flags/4x3/bw.svg)}.flag-icon-bw.flag-icon-squared{background-image:url(../flags/1x1/bw.svg)}.flag-icon-by{background-image:url(../flags/4x3/by.svg)}.flag-icon-by.flag-icon-squared{background-image:url(../flags/1x1/by.svg)}.flag-icon-bz{background-image:url(../flags/4x3/bz.svg)}.flag-icon-bz.flag-icon-squared{background-image:url(../flags/1x1/bz.svg)}.flag-icon-ca{background-image:url(../flags/4x3/ca.svg)}.flag-icon-ca.flag-icon-squared{background-image:url(../flags/1x1/ca.svg)}.flag-icon-cc{background-image:url(../flags/4x3/cc.svg)}.flag-icon-cc.flag-icon-squared{background-image:url(../flags/1x1/cc.svg)}.flag-icon-cd{background-image:url(../flags/4x3/cd.svg)}.flag-icon-cd.flag-icon-squared{background-image:url(../flags/1x1/cd.svg)}.flag-icon-cf{background-image:url(../flags/4x3/cf.svg)}.flag-icon-cf.flag-icon-squared{background-image:url(../flags/1x1/cf.svg)}.flag-icon-cg{background-image:url(../flags/4x3/cg.svg)}.flag-icon-cg.flag-icon-squared{background-image:url(../flags/1x1/cg.svg)}.flag-icon-ch{background-image:url(../flags/4x3/ch.svg)}.flag-icon-ch.flag-icon-squared{background-image:url(../flags/1x1/ch.svg)}.flag-icon-ci{background-image:url(../flags/4x3/ci.svg)}.flag-icon-ci.flag-icon-squared{background-image:url(../flags/1x1/ci.svg)}.flag-icon-ck{background-image:url(../flags/4x3/ck.svg)}.flag-icon-ck.flag-icon-squared{background-image:url(../flags/1x1/ck.svg)}.flag-icon-cl{background-image:url(../flags/4x3/cl.svg)}.flag-icon-cl.flag-icon-squared{background-image:url(../flags/1x1/cl.svg)}.flag-icon-cm{background-image:url(../flags/4x3/cm.svg)}.flag-icon-cm.flag-icon-squared{background-image:url(../flags/1x1/cm.svg)}.flag-icon-zh{background-image:url(../flags/4x3/zh.svg)}.flag-iconzh.flag-icon-squared{background-image:url(../flags/1x1/zh.svg)}.flag-icon-cn{background-image:url(../flags/4x3/cn.svg)}.flag-icon-cn.flag-icon-squared{background-image:url(../flags/1x1/cn.svg)}.flag-icon-co{background-image:url(../flags/4x3/co.svg)}.flag-icon-co.flag-icon-squared{background-image:url(../flags/1x1/co.svg)}.flag-icon-cr{background-image:url(../flags/4x3/cr.svg)}.flag-icon-cr.flag-icon-squared{background-image:url(../flags/1x1/cr.svg)}.flag-icon-cu{background-image:url(../flags/4x3/cu.svg)}.flag-icon-cu.flag-icon-squared{background-image:url(../flags/1x1/cu.svg)}.flag-icon-cv{background-image:url(../flags/4x3/cv.svg)}.flag-icon-cv.flag-icon-squared{background-image:url(../flags/1x1/cv.svg)}.flag-icon-cw{background-image:url(../flags/4x3/cw.svg)}.flag-icon-cw.flag-icon-squared{background-image:url(../flags/1x1/cw.svg)}.flag-icon-cx{background-image:url(../flags/4x3/cx.svg)}.flag-icon-cx.flag-icon-squared{background-image:url(../flags/1x1/cx.svg)}.flag-icon-cy{background-image:url(../flags/4x3/cy.svg)}.flag-icon-cy.flag-icon-squared{background-image:url(../flags/1x1/cy.svg)}.flag-icon-cz{background-image:url(../flags/4x3/cz.svg)}.flag-icon-cz.flag-icon-squared{background-image:url(../flags/1x1/cz.svg)}.flag-icon-cs{background-image:url(../flags/4x3/cs.svg)}.flag-icon-cs.flag-icon-squared{background-image:url(../flags/1x1/cs.svg)}.flag-icon-de{background-image:url(../flags/4x3/de.svg)}.flag-icon-de.flag-icon-squared{background-image:url(../flags/1x1/de.svg)}.flag-icon-dj{background-image:url(../flags/4x3/dj.svg)}.flag-icon-dj.flag-icon-squared{background-image:url(../flags/1x1/dj.svg)}.flag-icon-da{background-image:url(../flags/4x3/da.svg)}.flag-icon-da.flag-icon-squared{background-image:url(../flags/1x1/d.svg)}.flag-icon-dk{background-image:url(../flags/4x3/dk.svg)}.flag-icon-dk.flag-icon-squared{background-image:url(../flags/1x1/dk.svg)}.flag-icon-dm{background-image:url(../flags/4x3/dm.svg)}.flag-icon-dm.flag-icon-squared{background-image:url(../flags/1x1/dm.svg)}.flag-icon-do{background-image:url(../flags/4x3/do.svg)}.flag-icon-do.flag-icon-squared{background-image:url(../flags/1x1/do.svg)}.flag-icon-dz{background-image:url(../flags/4x3/dz.svg)}.flag-icon-dz.flag-icon-squared{background-image:url(../flags/1x1/dz.svg)}.flag-icon-ec{background-image:url(../flags/4x3/ec.svg)}.flag-icon-ec.flag-icon-squared{background-image:url(../flags/1x1/ec.svg)}.flag-icon-ee{background-image:url(../flags/4x3/ee.svg)}.flag-icon-ee.flag-icon-squared{background-image:url(../flags/1x1/ee.svg)}.flag-icon-eg{background-image:url(../flags/4x3/eg.svg)}.flag-icon-eg.flag-icon-squared{background-image:url(../flags/1x1/eg.svg)}.flag-icon-eh{background-image:url(../flags/4x3/eh.svg)}.flag-icon-eh.flag-icon-squared{background-image:url(../flags/1x1/eh.svg)}.flag-icon-er{background-image:url(../flags/4x3/er.svg)}.flag-icon-er.flag-icon-squared{background-image:url(../flags/1x1/er.svg)}.flag-icon-es{background-image:url(../flags/4x3/es.svg)}.flag-icon-es.flag-icon-squared{background-image:url(../flags/1x1/es.svg)}.flag-icon-et{background-image:url(../flags/4x3/et.svg)}.flag-icon-et.flag-icon-squared{background-image:url(../flags/1x1/et.svg)}.flag-icon-fi{background-image:url(../flags/4x3/fi.svg)}.flag-icon-fi.flag-icon-squared{background-image:url(../flags/1x1/fi.svg)}.flag-icon-fj{background-image:url(../flags/4x3/fj.svg)}.flag-icon-fj.flag-icon-squared{background-image:url(../flags/1x1/fj.svg)}.flag-icon-fk{background-image:url(../flags/4x3/fk.svg)}.flag-icon-fk.flag-icon-squared{background-image:url(../flags/1x1/fk.svg)}.flag-icon-fm{background-image:url(../flags/4x3/fm.svg)}.flag-icon-fm.flag-icon-squared{background-image:url(../flags/1x1/fm.svg)}.flag-icon-fo{background-image:url(../flags/4x3/fo.svg)}.flag-icon-fo.flag-icon-squared{background-image:url(../flags/1x1/fo.svg)}.flag-icon-fr{background-image:url(../flags/4x3/fr.svg)}.flag-icon-fr.flag-icon-squared{background-image:url(../flags/1x1/fr.svg)}.flag-icon-ga{background-image:url(../flags/4x3/ga.svg)}.flag-icon-ga.flag-icon-squared{background-image:url(../flags/1x1/ga.svg)}.flag-icon-en{background-image:url(../flags/4x3/en.svg)}.flag-icon-en.flag-icon-squared{background-image:url(../flags/1x1/en.svg)}.flag-icon-gd{background-image:url(../flags/4x3/gd.svg)}.flag-icon-gd.flag-icon-squared{background-image:url(../flags/1x1/gd.svg)}.flag-icon-ge{background-image:url(../flags/4x3/ge.svg)}.flag-icon-ge.flag-icon-squared{background-image:url(../flags/1x1/ge.svg)}.flag-icon-gf{background-image:url(../flags/4x3/gf.svg)}.flag-icon-gf.flag-icon-squared{background-image:url(../flags/1x1/gf.svg)}.flag-icon-gg{background-image:url(../flags/4x3/gg.svg)}.flag-icon-gg.flag-icon-squared{background-image:url(../flags/1x1/gg.svg)}.flag-icon-gh{background-image:url(../flags/4x3/gh.svg)}.flag-icon-gh.flag-icon-squared{background-image:url(../flags/1x1/gh.svg)}.flag-icon-gi{background-image:url(../flags/4x3/gi.svg)}.flag-icon-gi.flag-icon-squared{background-image:url(../flags/1x1/gi.svg)}.flag-icon-gl{background-image:url(../flags/4x3/gl.svg)}.flag-icon-gl.flag-icon-squared{background-image:url(../flags/1x1/gl.svg)}.flag-icon-gm{background-image:url(../flags/4x3/gm.svg)}.flag-icon-gm.flag-icon-squared{background-image:url(../flags/1x1/gm.svg)}.flag-icon-gn{background-image:url(../flags/4x3/gn.svg)}.flag-icon-gn.flag-icon-squared{background-image:url(../flags/1x1/gn.svg)}.flag-icon-gp{background-image:url(../flags/4x3/gp.svg)}.flag-icon-gp.flag-icon-squared{background-image:url(../flags/1x1/gp.svg)}.flag-icon-gq{background-image:url(../flags/4x3/gq.svg)}.flag-icon-gq.flag-icon-squared{background-image:url(../flags/1x1/gq.svg)}.flag-icon-gr{background-image:url(../flags/4x3/gr.svg)}.flag-icon-gr.flag-icon-squared{background-image:url(../flags/1x1/gr.svg)}.flag-icon-gs{background-image:url(../flags/4x3/gs.svg)}.flag-icon-gs.flag-icon-squared{background-image:url(../flags/1x1/gs.svg)}.flag-icon-gt{background-image:url(../flags/4x3/gt.svg)}.flag-icon-gt.flag-icon-squared{background-image:url(../flags/1x1/gt.svg)}.flag-icon-gu{background-image:url(../flags/4x3/gu.svg)}.flag-icon-gu.flag-icon-squared{background-image:url(../flags/1x1/gu.svg)}.flag-icon-gw{background-image:url(../flags/4x3/gw.svg)}.flag-icon-gw.flag-icon-squared{background-image:url(../flags/1x1/gw.svg)}.flag-icon-gy{background-image:url(../flags/4x3/gy.svg)}.flag-icon-gy.flag-icon-squared{background-image:url(../flags/1x1/gy.svg)}.flag-icon-hk{background-image:url(../flags/4x3/hk.svg)}.flag-icon-hk.flag-icon-squared{background-image:url(../flags/1x1/hk.svg)}.flag-icon-hm{background-image:url(../flags/4x3/hm.svg)}.flag-icon-hm.flag-icon-squared{background-image:url(../flags/1x1/hm.svg)}.flag-icon-hn{background-image:url(../flags/4x3/hn.svg)}.flag-icon-hn.flag-icon-squared{background-image:url(../flags/1x1/hn.svg)}.flag-icon-hr{background-image:url(../flags/4x3/hr.svg)}.flag-icon-hr.flag-icon-squared{background-image:url(../flags/1x1/hr.svg)}.flag-icon-ht{background-image:url(../flags/4x3/ht.svg)}.flag-icon-ht.flag-icon-squared{background-image:url(../flags/1x1/ht.svg)}.flag-icon-hu{background-image:url(../flags/4x3/hu.svg)}.flag-icon-hu.flag-icon-squared{background-image:url(../flags/1x1/hu.svg)}.flag-icon-id{background-image:url(../flags/4x3/id.svg)}.flag-icon-id.flag-icon-squared{background-image:url(../flags/1x1/id.svg)}.flag-icon-ie{background-image:url(../flags/4x3/ie.svg)}.flag-icon-ie.flag-icon-squared{background-image:url(../flags/1x1/ie.svg)}.flag-icon-il{background-image:url(../flags/4x3/il.svg)}.flag-icon-il.flag-icon-squared{background-image:url(../flags/1x1/il.svg)}.flag-icon-im{background-image:url(../flags/4x3/im.svg)}.flag-icon-im.flag-icon-squared{background-image:url(../flags/1x1/im.svg)}.flag-icon-in{background-image:url(../flags/4x3/in.svg)}.flag-icon-in.flag-icon-squared{background-image:url(../flags/1x1/in.svg)}.flag-icon-io{background-image:url(../flags/4x3/io.svg)}.flag-icon-io.flag-icon-squared{background-image:url(../flags/1x1/io.svg)}.flag-icon-iq{background-image:url(../flags/4x3/iq.svg)}.flag-icon-iq.flag-icon-squared{background-image:url(../flags/1x1/iq.svg)}.flag-icon-ir{background-image:url(../flags/4x3/ir.svg)}.flag-icon-ir.flag-icon-squared{background-image:url(../flags/1x1/ir.svg)}.flag-icon-is{background-image:url(../flags/4x3/is.svg)}.flag-icon-is.flag-icon-squared{background-image:url(../flags/1x1/is.svg)}.flag-icon-it{background-image:url(../flags/4x3/it.svg)}.flag-icon-it.flag-icon-squared{background-image:url(../flags/1x1/it.svg)}.flag-icon-je{background-image:url(../flags/4x3/je.svg)}.flag-icon-je.flag-icon-squared{background-image:url(../flags/1x1/je.svg)}.flag-icon-jm{background-image:url(../flags/4x3/jm.svg)}.flag-icon-jm.flag-icon-squared{background-image:url(../flags/1x1/jm.svg)}.flag-icon-jo{background-image:url(../flags/4x3/jo.svg)}.flag-icon-jo.flag-icon-squared{background-image:url(../flags/1x1/jo.svg)}.flag-icon-jp{background-image:url(../flags/4x3/jp.svg)}.flag-icon-jp.flag-icon-squared{background-image:url(../flags/1x1/jp.svg)}.flag-icon-ke{background-image:url(../flags/4x3/ke.svg)}.flag-icon-ke.flag-icon-squared{background-image:url(../flags/1x1/ke.svg)}.flag-icon-kg{background-image:url(../flags/4x3/kg.svg)}.flag-icon-kg.flag-icon-squared{background-image:url(../flags/1x1/kg.svg)}.flag-icon-kh{background-image:url(../flags/4x3/kh.svg)}.flag-icon-kh.flag-icon-squared{background-image:url(../flags/1x1/kh.svg)}.flag-icon-ki{background-image:url(../flags/4x3/ki.svg)}.flag-icon-ki.flag-icon-squared{background-image:url(../flags/1x1/ki.svg)}.flag-icon-km{background-image:url(../flags/4x3/km.svg)}.flag-icon-km.flag-icon-squared{background-image:url(../flags/1x1/km.svg)}.flag-icon-kn{background-image:url(../flags/4x3/kn.svg)}.flag-icon-kn.flag-icon-squared{background-image:url(../flags/1x1/kn.svg)}.flag-icon-kp{background-image:url(../flags/4x3/kp.svg)}.flag-icon-kp.flag-icon-squared{background-image:url(../flags/1x1/kp.svg)}.flag-icon-ko{background-image:url(../flags/4x3/ko.svg)}.flag-icon-ko.flag-icon-squared{background-image:url(../flags/1x1/ko.svg)}.flag-icon-kr{background-image:url(../flags/4x3/kr.svg)}.flag-icon-kr.flag-icon-squared{background-image:url(../flags/1x1/kr.svg)}.flag-icon-kw{background-image:url(../flags/4x3/kw.svg)}.flag-icon-kw.flag-icon-squared{background-image:url(../flags/1x1/kw.svg)}.flag-icon-ky{background-image:url(../flags/4x3/ky.svg)}.flag-icon-ky.flag-icon-squared{background-image:url(../flags/1x1/ky.svg)}.flag-icon-kz{background-image:url(../flags/4x3/kz.svg)}.flag-icon-kz.flag-icon-squared{background-image:url(../flags/1x1/kz.svg)}.flag-icon-la{background-image:url(../flags/4x3/la.svg)}.flag-icon-la.flag-icon-squared{background-image:url(../flags/1x1/la.svg)}.flag-icon-lb{background-image:url(../flags/4x3/lb.svg)}.flag-icon-lb.flag-icon-squared{background-image:url(../flags/1x1/lb.svg)}.flag-icon-lc{background-image:url(../flags/4x3/lc.svg)}.flag-icon-lc.flag-icon-squared{background-image:url(../flags/1x1/lc.svg)}.flag-icon-li{background-image:url(../flags/4x3/li.svg)}.flag-icon-li.flag-icon-squared{background-image:url(../flags/1x1/li.svg)}.flag-icon-lk{background-image:url(../flags/4x3/lk.svg)}.flag-icon-lk.flag-icon-squared{background-image:url(../flags/1x1/lk.svg)}.flag-icon-lr{background-image:url(../flags/4x3/lr.svg)}.flag-icon-lr.flag-icon-squared{background-image:url(../flags/1x1/lr.svg)}.flag-icon-ls{background-image:url(../flags/4x3/ls.svg)}.flag-icon-ls.flag-icon-squared{background-image:url(../flags/1x1/ls.svg)}.flag-icon-lt{background-image:url(../flags/4x3/lt.svg)}.flag-icon-lt.flag-icon-squared{background-image:url(../flags/1x1/lt.svg)}.flag-icon-lu{background-image:url(../flags/4x3/lu.svg)}.flag-icon-lu.flag-icon-squared{background-image:url(../flags/1x1/lu.svg)}.flag-icon-lv{background-image:url(../flags/4x3/lv.svg)}.flag-icon-lv.flag-icon-squared{background-image:url(../flags/1x1/lv.svg)}.flag-icon-ly{background-image:url(../flags/4x3/ly.svg)}.flag-icon-ly.flag-icon-squared{background-image:url(../flags/1x1/ly.svg)}.flag-icon-ma{background-image:url(../flags/4x3/ma.svg)}.flag-icon-ma.flag-icon-squared{background-image:url(../flags/1x1/ma.svg)}.flag-icon-mc{background-image:url(../flags/4x3/mc.svg)}.flag-icon-mc.flag-icon-squared{background-image:url(../flags/1x1/mc.svg)}.flag-icon-md{background-image:url(../flags/4x3/md.svg)}.flag-icon-md.flag-icon-squared{background-image:url(../flags/1x1/md.svg)}.flag-icon-me{background-image:url(../flags/4x3/me.svg)}.flag-icon-me.flag-icon-squared{background-image:url(../flags/1x1/me.svg)}.flag-icon-mf{background-image:url(../flags/4x3/mf.svg)}.flag-icon-mf.flag-icon-squared{background-image:url(../flags/1x1/mf.svg)}.flag-icon-mg{background-image:url(../flags/4x3/mg.svg)}.flag-icon-mg.flag-icon-squared{background-image:url(../flags/1x1/mg.svg)}.flag-icon-mh{background-image:url(../flags/4x3/mh.svg)}.flag-icon-mh.flag-icon-squared{background-image:url(../flags/1x1/mh.svg)}.flag-icon-mk{background-image:url(../flags/4x3/mk.svg)}.flag-icon-mk.flag-icon-squared{background-image:url(../flags/1x1/mk.svg)}.flag-icon-ml{background-image:url(../flags/4x3/ml.svg)}.flag-icon-ml.flag-icon-squared{background-image:url(../flags/1x1/ml.svg)}.flag-icon-mm{background-image:url(../flags/4x3/mm.svg)}.flag-icon-mm.flag-icon-squared{background-image:url(../flags/1x1/mm.svg)}.flag-icon-mn{background-image:url(../flags/4x3/mn.svg)}.flag-icon-mn.flag-icon-squared{background-image:url(../flags/1x1/mn.svg)}.flag-icon-mo{background-image:url(../flags/4x3/mo.svg)}.flag-icon-mo.flag-icon-squared{background-image:url(../flags/1x1/mo.svg)}.flag-icon-mp{background-image:url(../flags/4x3/mp.svg)}.flag-icon-mp.flag-icon-squared{background-image:url(../flags/1x1/mp.svg)}.flag-icon-mq{background-image:url(../flags/4x3/mq.svg)}.flag-icon-mq.flag-icon-squared{background-image:url(../flags/1x1/mq.svg)}.flag-icon-mr{background-image:url(../flags/4x3/mr.svg)}.flag-icon-mr.flag-icon-squared{background-image:url(../flags/1x1/mr.svg)}.flag-icon-ms{background-image:url(../flags/4x3/ms.svg)}.flag-icon-ms.flag-icon-squared{background-image:url(../flags/1x1/ms.svg)}.flag-icon-mt{background-image:url(../flags/4x3/mt.svg)}.flag-icon-mt.flag-icon-squared{background-image:url(../flags/1x1/mt.svg)}.flag-icon-mu{background-image:url(../flags/4x3/mu.svg)}.flag-icon-mu.flag-icon-squared{background-image:url(../flags/1x1/mu.svg)}.flag-icon-mv{background-image:url(../flags/4x3/mv.svg)}.flag-icon-mv.flag-icon-squared{background-image:url(../flags/1x1/mv.svg)}.flag-icon-mw{background-image:url(../flags/4x3/mw.svg)}.flag-icon-mw.flag-icon-squared{background-image:url(../flags/1x1/mw.svg)}.flag-icon-mx{background-image:url(../flags/4x3/mx.svg)}.flag-icon-mx.flag-icon-squared{background-image:url(../flags/1x1/mx.svg)}.flag-icon-my{background-image:url(../flags/4x3/my.svg)}.flag-icon-my.flag-icon-squared{background-image:url(../flags/1x1/my.svg)}.flag-icon-mz{background-image:url(../flags/4x3/mz.svg)}.flag-icon-mz.flag-icon-squared{background-image:url(../flags/1x1/mz.svg)}.flag-icon-na{background-image:url(../flags/4x3/na.svg)}.flag-icon-na.flag-icon-squared{background-image:url(../flags/1x1/na.svg)}.flag-icon-nc{background-image:url(../flags/4x3/nc.svg)}.flag-icon-nc.flag-icon-squared{background-image:url(../flags/1x1/nc.svg)}.flag-icon-ne{background-image:url(../flags/4x3/ne.svg)}.flag-icon-ne.flag-icon-squared{background-image:url(../flags/1x1/ne.svg)}.flag-icon-nf{background-image:url(../flags/4x3/nf.svg)}.flag-icon-nf.flag-icon-squared{background-image:url(../flags/1x1/nf.svg)}.flag-icon-ng{background-image:url(../flags/4x3/ng.svg)}.flag-icon-ng.flag-icon-squared{background-image:url(../flags/1x1/ng.svg)}.flag-icon-ni{background-image:url(../flags/4x3/ni.svg)}.flag-icon-ni.flag-icon-squared{background-image:url(../flags/1x1/ni.svg)}.flag-icon-nl{background-image:url(../flags/4x3/nl.svg)}.flag-icon-nl.flag-icon-squared{background-image:url(../flags/1x1/nl.svg)}.flag-icon-no{background-image:url(../flags/4x3/no.svg)}.flag-icon-no.flag-icon-squared{background-image:url(../flags/1x1/no.svg)}.flag-icon-np{background-image:url(../flags/4x3/np.svg)}.flag-icon-np.flag-icon-squared{background-image:url(../flags/1x1/np.svg)}.flag-icon-nr{background-image:url(../flags/4x3/nr.svg)}.flag-icon-nr.flag-icon-squared{background-image:url(../flags/1x1/nr.svg)}.flag-icon-nu{background-image:url(../flags/4x3/nu.svg)}.flag-icon-nu.flag-icon-squared{background-image:url(../flags/1x1/nu.svg)}.flag-icon-nz{background-image:url(../flags/4x3/nz.svg)}.flag-icon-nz.flag-icon-squared{background-image:url(../flags/1x1/nz.svg)}.flag-icon-om{background-image:url(../flags/4x3/om.svg)}.flag-icon-om.flag-icon-squared{background-image:url(../flags/1x1/om.svg)}.flag-icon-pa{background-image:url(../flags/4x3/pa.svg)}.flag-icon-pa.flag-icon-squared{background-image:url(../flags/1x1/pa.svg)}.flag-icon-pe{background-image:url(../flags/4x3/pe.svg)}.flag-icon-pe.flag-icon-squared{background-image:url(../flags/1x1/pe.svg)}.flag-icon-pf{background-image:url(../flags/4x3/pf.svg)}.flag-icon-pf.flag-icon-squared{background-image:url(../flags/1x1/pf.svg)}.flag-icon-pg{background-image:url(../flags/4x3/pg.svg)}.flag-icon-pg.flag-icon-squared{background-image:url(../flags/1x1/pg.svg)}.flag-icon-ph{background-image:url(../flags/4x3/ph.svg)}.flag-icon-ph.flag-icon-squared{background-image:url(../flags/1x1/ph.svg)}.flag-icon-pk{background-image:url(../flags/4x3/pk.svg)}.flag-icon-pk.flag-icon-squared{background-image:url(../flags/1x1/pk.svg)}.flag-icon-pl{background-image:url(../flags/4x3/pl.svg)}.flag-icon-pl.flag-icon-squared{background-image:url(../flags/1x1/pl.svg)}.flag-icon-pm{background-image:url(../flags/4x3/pm.svg)}.flag-icon-pm.flag-icon-squared{background-image:url(../flags/1x1/pm.svg)}.flag-icon-pn{background-image:url(../flags/4x3/pn.svg)}.flag-icon-pn.flag-icon-squared{background-image:url(../flags/1x1/pn.svg)}.flag-icon-pr{background-image:url(../flags/4x3/pr.svg)}.flag-icon-pr.flag-icon-squared{background-image:url(../flags/1x1/pr.svg)}.flag-icon-ps{background-image:url(../flags/4x3/ps.svg)}.flag-icon-ps.flag-icon-squared{background-image:url(../flags/1x1/ps.svg)}.flag-icon-pt{background-image:url(../flags/4x3/pt.svg)}.flag-icon-pt.flag-icon-squared{background-image:url(../flags/1x1/pt.svg)}.flag-icon-pw{background-image:url(../flags/4x3/pw.svg)}.flag-icon-pw.flag-icon-squared{background-image:url(../flags/1x1/pw.svg)}.flag-icon-py{background-image:url(../flags/4x3/py.svg)}.flag-icon-py.flag-icon-squared{background-image:url(../flags/1x1/py.svg)}.flag-icon-qa{background-image:url(../flags/4x3/qa.svg)}.flag-icon-qa.flag-icon-squared{background-image:url(../flags/1x1/qa.svg)}.flag-icon-re{background-image:url(../flags/4x3/re.svg)}.flag-icon-re.flag-icon-squared{background-image:url(../flags/1x1/re.svg)}.flag-icon-ro{background-image:url(../flags/4x3/ro.svg)}.flag-icon-ro.flag-icon-squared{background-image:url(../flags/1x1/ro.svg)}.flag-icon-rs{background-image:url(../flags/4x3/rs.svg)}.flag-icon-rs.flag-icon-squared{background-image:url(../flags/1x1/rs.svg)}.flag-icon-ru{background-image:url(../flags/4x3/ru.svg)}.flag-icon-ru.flag-icon-squared{background-image:url(../flags/1x1/ru.svg)}.flag-icon-rw{background-image:url(../flags/4x3/rw.svg)}.flag-icon-rw.flag-icon-squared{background-image:url(../flags/1x1/rw.svg)}.flag-icon-sa{background-image:url(../flags/4x3/sa.svg)}.flag-icon-sa.flag-icon-squared{background-image:url(../flags/1x1/sa.svg)}.flag-icon-sb{background-image:url(../flags/4x3/sb.svg)}.flag-icon-sb.flag-icon-squared{background-image:url(../flags/1x1/sb.svg)}.flag-icon-sc{background-image:url(../flags/4x3/sc.svg)}.flag-icon-sc.flag-icon-squared{background-image:url(../flags/1x1/sc.svg)}.flag-icon-sd{background-image:url(../flags/4x3/sd.svg)}.flag-icon-sd.flag-icon-squared{background-image:url(../flags/1x1/sd.svg)}.flag-icon-se{background-image:url(../flags/4x3/se.svg)}.flag-icon-se.flag-icon-squared{background-image:url(../flags/1x1/se.svg)}.flag-icon-sg{background-image:url(../flags/4x3/sg.svg)}.flag-icon-sg.flag-icon-squared{background-image:url(../flags/1x1/sg.svg)}.flag-icon-sh{background-image:url(../flags/4x3/sh.svg)}.flag-icon-sh.flag-icon-squared{background-image:url(../flags/1x1/sh.svg)}.flag-icon-si{background-image:url(../flags/4x3/si.svg)}.flag-icon-si.flag-icon-squared{background-image:url(../flags/1x1/si.svg)}.flag-icon-sj{background-image:url(../flags/4x3/sj.svg)}.flag-icon-sj.flag-icon-squared{background-image:url(../flags/1x1/sj.svg)}.flag-icon-sk{background-image:url(../flags/4x3/sk.svg)}.flag-icon-sk.flag-icon-squared{background-image:url(../flags/1x1/sk.svg)}.flag-icon-sl{background-image:url(../flags/4x3/sl.svg)}.flag-icon-sl.flag-icon-squared{background-image:url(../flags/1x1/sl.svg)}.flag-icon-sm{background-image:url(../flags/4x3/sm.svg)}.flag-icon-sm.flag-icon-squared{background-image:url(../flags/1x1/sm.svg)}.flag-icon-sn{background-image:url(../flags/4x3/sn.svg)}.flag-icon-sn.flag-icon-squared{background-image:url(../flags/1x1/sn.svg)}.flag-icon-so{background-image:url(../flags/4x3/so.svg)}.flag-icon-so.flag-icon-squared{background-image:url(../flags/1x1/so.svg)}.flag-icon-sr{background-image:url(../flags/4x3/sr.svg)}.flag-icon-sr.flag-icon-squared{background-image:url(../flags/1x1/sr.svg)}.flag-icon-ss{background-image:url(../flags/4x3/ss.svg)}.flag-icon-ss.flag-icon-squared{background-image:url(../flags/1x1/ss.svg)}.flag-icon-st{background-image:url(../flags/4x3/st.svg)}.flag-icon-st.flag-icon-squared{background-image:url(../flags/1x1/st.svg)}.flag-icon-sv{background-image:url(../flags/4x3/sv.svg)}.flag-icon-sv.flag-icon-squared{background-image:url(../flags/1x1/sv.svg)}.flag-icon-sx{background-image:url(../flags/4x3/sx.svg)}.flag-icon-sx.flag-icon-squared{background-image:url(../flags/1x1/sx.svg)}.flag-icon-sy{background-image:url(../flags/4x3/sy.svg)}.flag-icon-sy.flag-icon-squared{background-image:url(../flags/1x1/sy.svg)}.flag-icon-sz{background-image:url(../flags/4x3/sz.svg)}.flag-icon-sz.flag-icon-squared{background-image:url(../flags/1x1/sz.svg)}.flag-icon-tc{background-image:url(../flags/4x3/tc.svg)}.flag-icon-tc.flag-icon-squared{background-image:url(../flags/1x1/tc.svg)}.flag-icon-td{background-image:url(../flags/4x3/td.svg)}.flag-icon-td.flag-icon-squared{background-image:url(../flags/1x1/td.svg)}.flag-icon-tf{background-image:url(../flags/4x3/tf.svg)}.flag-icon-tf.flag-icon-squared{background-image:url(../flags/1x1/tf.svg)}.flag-icon-tg{background-image:url(../flags/4x3/tg.svg)}.flag-icon-tg.flag-icon-squared{background-image:url(../flags/1x1/tg.svg)}.flag-icon-th{background-image:url(../flags/4x3/th.svg)}.flag-icon-th.flag-icon-squared{background-image:url(../flags/1x1/th.svg)}.flag-icon-tj{background-image:url(../flags/4x3/tj.svg)}.flag-icon-tj.flag-icon-squared{background-image:url(../flags/1x1/tj.svg)}.flag-icon-tk{background-image:url(../flags/4x3/tk.svg)}.flag-icon-tk.flag-icon-squared{background-image:url(../flags/1x1/tk.svg)}.flag-icon-tl{background-image:url(../flags/4x3/tl.svg)}.flag-icon-tl.flag-icon-squared{background-image:url(../flags/1x1/tl.svg)}.flag-icon-tm{background-image:url(../flags/4x3/tm.svg)}.flag-icon-tm.flag-icon-squared{background-image:url(../flags/1x1/tm.svg)}.flag-icon-tn{background-image:url(../flags/4x3/tn.svg)}.flag-icon-tn.flag-icon-squared{background-image:url(../flags/1x1/tn.svg)}.flag-icon-to{background-image:url(../flags/4x3/to.svg)}.flag-icon-to.flag-icon-squared{background-image:url(../flags/1x1/to.svg)}.flag-icon-tr{background-image:url(../flags/4x3/tr.svg)}.flag-icon-tr.flag-icon-squared{background-image:url(../flags/1x1/tr.svg)}.flag-icon-tt{background-image:url(../flags/4x3/tt.svg)}.flag-icon-tt.flag-icon-squared{background-image:url(../flags/1x1/tt.svg)}.flag-icon-tv{background-image:url(../flags/4x3/tv.svg)}.flag-icon-tv.flag-icon-squared{background-image:url(../flags/1x1/tv.svg)}.flag-icon-tw{background-image:url(../flags/4x3/tw.svg)}.flag-icon-tw.flag-icon-squared{background-image:url(../flags/1x1/tw.svg)}.flag-icon-tz{background-image:url(../flags/4x3/tz.svg)}.flag-icon-tz.flag-icon-squared{background-image:url(../flags/1x1/tz.svg)}.flag-icon-ua{background-image:url(../flags/4x3/ua.svg)}.flag-icon-ua.flag-icon-squared{background-image:url(../flags/1x1/ua.svg)}.flag-icon-ug{background-image:url(../flags/4x3/ug.svg)}.flag-icon-ug.flag-icon-squared{background-image:url(../flags/1x1/ug.svg)}.flag-icon-um{background-image:url(../flags/4x3/um.svg)}.flag-icon-um.flag-icon-squared{background-image:url(../flags/1x1/um.svg)}.flag-icon-us{background-image:url(../flags/4x3/us.svg)}.flag-icon-us.flag-icon-squared{background-image:url(../flags/1x1/us.svg)}.flag-icon-uy{background-image:url(../flags/4x3/uy.svg)}.flag-icon-uy.flag-icon-squared{background-image:url(../flags/1x1/uy.svg)}.flag-icon-uz{background-image:url(../flags/4x3/uz.svg)}.flag-icon-uz.flag-icon-squared{background-image:url(../flags/1x1/uz.svg)}.flag-icon-va{background-image:url(../flags/4x3/va.svg)}.flag-icon-va.flag-icon-squared{background-image:url(../flags/1x1/va.svg)}.flag-icon-vc{background-image:url(../flags/4x3/vc.svg)}.flag-icon-vc.flag-icon-squared{background-image:url(../flags/1x1/vc.svg)}.flag-icon-ve{background-image:url(../flags/4x3/ve.svg)}.flag-icon-ve.flag-icon-squared{background-image:url(../flags/1x1/ve.svg)}.flag-icon-vg{background-image:url(../flags/4x3/vg.svg)}.flag-icon-vg.flag-icon-squared{background-image:url(../flags/1x1/vg.svg)}.flag-icon-vi{background-image:url(../flags/4x3/vi.svg)}.flag-icon-vi.flag-icon-squared{background-image:url(../flags/1x1/vi.svg)}.flag-icon-vn{background-image:url(../flags/4x3/vn.svg)}.flag-icon-vn.flag-icon-squared{background-image:url(../flags/1x1/vn.svg)}.flag-icon-vu{background-image:url(../flags/4x3/vu.svg)}.flag-icon-vu.flag-icon-squared{background-image:url(../flags/1x1/vu.svg)}.flag-icon-wf{background-image:url(../flags/4x3/wf.svg)}.flag-icon-wf.flag-icon-squared{background-image:url(../flags/1x1/wf.svg)}.flag-icon-ws{background-image:url(../flags/4x3/ws.svg)}.flag-icon-ws.flag-icon-squared{background-image:url(../flags/1x1/ws.svg)}.flag-icon-ye{background-image:url(../flags/4x3/ye.svg)}.flag-icon-ye.flag-icon-squared{background-image:url(../flags/1x1/ye.svg)}.flag-icon-yt{background-image:url(../flags/4x3/yt.svg)}.flag-icon-yt.flag-icon-squared{background-image:url(../flags/1x1/yt.svg)}.flag-icon-za{background-image:url(../flags/4x3/za.svg)}.flag-icon-za.flag-icon-squared{background-image:url(../flags/1x1/za.svg)}.flag-icon-zm{background-image:url(../flags/4x3/zm.svg)}.flag-icon-zm.flag-icon-squared{background-image:url(../flags/1x1/zm.svg)}.flag-icon-zw{background-image:url(../flags/4x3/zw.svg)}.flag-icon-zw.flag-icon-squared{background-image:url(../flags/1x1/zw.svg)}.flag-icon-es-ct{background-image:url(../flags/4x3/es-ct.svg)}.flag-icon-es-ct.flag-icon-squared{background-image:url(../flags/1x1/es-ct.svg)}.flag-icon-es-ga{background-image:url(../flags/4x3/es-ga.svg)}.flag-icon-es-ga.flag-icon-squared{background-image:url(../flags/1x1/es-ga.svg)}.flag-icon-eu{background-image:url(../flags/4x3/eu.svg)}.flag-icon-eu.flag-icon-squared{background-image:url(../flags/1x1/eu.svg)}.flag-icon-gb-eng{background-image:url(../flags/4x3/gb-eng.svg)}.flag-icon-gb-eng.flag-icon-squared{background-image:url(../flags/1x1/gb-eng.svg)}.flag-icon-gb-nir{background-image:url(../flags/4x3/gb-nir.svg)}.flag-icon-gb-nir.flag-icon-squared{background-image:url(../flags/1x1/gb-nir.svg)}.flag-icon-gb-sct{background-image:url(../flags/4x3/gb-sct.svg)}.flag-icon-gb-sct.flag-icon-squared{background-image:url(../flags/1x1/gb-sct.svg)}.flag-icon-gb-wls{background-image:url(../flags/4x3/gb-wls.svg)}.flag-icon-gb-wls.flag-icon-squared{background-image:url(../flags/1x1/gb-wls.svg)}.flag-icon-un{background-image:url(../flags/4x3/un.svg)}.flag-icon-un.flag-icon-squared{background-image:url(../flags/1x1/un.svg)}.flag-icon-xk{background-image:url(../flags/4x3/xk.svg)}.flag-icon-xk.flag-icon-squared{background-image:url(../flags/1x1/xk.svg)}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/008-mailcow.css b/mailcow/src/mailcow-dockerized/data/web/css/build/008-mailcow.css
index 717b4d1..c060065 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/008-mailcow.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/008-mailcow.css
@@ -1,26 +1,37 @@
 @font-face {
-  font-family: 'PT Sans';
+  font-family: 'Noto Sans';
   font-style: normal;
   font-weight: 400;
-  src: local('PT Sans'), local('PTSans-Regular'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff2') format('woff2'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff') format('woff');
+  src: local(''),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff2') format('woff2'),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff') format('woff');
 }
+
 @font-face {
-  font-family: 'PT Sans';
+  font-family: 'Noto Sans';
   font-style: normal;
   font-weight: 700;
-  src: local('PT Sans Bold'), local('PTSans-Bold'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff2') format('woff2'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff') format('woff');
+  src: local(''),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff2') format('woff2'),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff') format('woff');
 }
+
 @font-face {
-  font-family: 'PT Sans';
+  font-family: 'Noto Sans';
   font-style: italic;
   font-weight: 400;
-  src: local('PT Sans Italic'), local('PTSans-Italic'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff2') format('woff2'),
-    url('/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff') format('woff');
+  src: local(''),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff2') format('woff2'),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff') format('woff');
+}
+
+@font-face {
+  font-family: 'Noto Sans';
+  font-style: italic;
+  font-weight: 700;
+  src: local(''),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff2') format('woff2'),
+       url('/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff') format('woff');
 }
 #maxmsgsize { min-width: 80px; }
 #slider1 .slider-selection {
@@ -56,10 +67,23 @@
 .navbar-fixed-top .navbar-collapse {
   max-height: 1000px
 }
-.glyphicon-spin {
-  font-size:12px;
+.bi {
+  display: inline-block;
+  font-size: 12pt;
+}
+.btn .bi {
+  display: inline-block;
+  font-size: inherit;
+}
+.icon-spin {
+  animation-name: spin;
+  animation-duration: 2000ms;
+  animation-iteration-count: infinite;
+  animation-timing-function: linear;
   -webkit-animation: spin 2000ms infinite linear;
-  animation: spin 2000ms infinite linear;
+}
+.dropdown-menu {
+  font-size: 0.9rem;
 }
 @-webkit-keyframes spin {
   0% {
@@ -94,7 +118,14 @@
   padding-right: inherit !important;
 }
 body {
-  font-family: "PT Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
+  font-family: "Noto Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
+  font-size: 10.5pt;
+  line-height: 1.5;
+}
+html {
+  font-family: "Noto Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
+  font-size: 10.5pt;
+  line-height: 1.5;
 }
 #mailcow-alert {
   position: fixed;
@@ -111,7 +142,7 @@
   -ms-user-select: none;
   -o-user-select: none;
   user-select: none;
-  font-size: 12pt;
+  font-size: 1.2rem;
 }
 .navbar .navbar-brand {
   padding-top: 5px;
@@ -128,9 +159,6 @@
 .lang-link-disabled  {
   cursor: not-allowed;
 }
-.dkim-label {
-  margin: 0 0 2px !important;
-}
 .overlay {
   background: #fff;
   position: absolute;
@@ -138,9 +166,6 @@
   top: 0; right: 0; bottom: 0; left: 0;
   opacity: 0.7;
 }
-nav .glyphicon {
-  font-size: 12px !important;
-}
 #top {
   padding-top: 70px;
 }
@@ -167,10 +192,10 @@
 }
 .tooltip {
   font-family: inherit;
-  font-size: 12px;
+  font-size: 0.8rem;
 }
 .progress-bar {
-  font-size: 12px;
+  font-size: 0.8rem;
   line-height: 14px;
 }
 .footer {
@@ -197,3 +222,25 @@
   background-color: #ff4136;
   border-color: #ff291c;
 }
+table.footable>tbody>tr.footable-empty>td {
+  font-style:italic;
+  font-size: 1rem;
+}
+.navbar-nav > li {
+  font-size: 1rem !important;
+}
+.dropdown-menu > li > a {
+  font-size: 1rem !important;
+}
+.label {
+  font-size:inherit;
+}
+[class^="bi-"]::before, [class*=" bi-"]::before {
+  vertical-align: -0.2em !important;
+}
+legend > [class^="bi-"]::before, legend > [class*=" bi-"]::before {
+  vertical-align: 0em !important;
+}
+code {
+  font-size: inherit;
+}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/010-numberedtextarea.min.css b/mailcow/src/mailcow-dockerized/data/web/css/build/010-numberedtextarea.min.css
index 133faf9..4d12000 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/build/010-numberedtextarea.min.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/010-numberedtextarea.min.css
@@ -1 +1 @@
-div.numberedtextarea-wrapper{position:relative}div.numberedtextarea-wrapper textarea{display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}div.numberedtextarea-line-numbers{position:absolute;top:0;left:0;right:0;bottom:0;width:50px;border-right:none;color:rgba(0,0,0,.4);overflow:hidden}div.numberedtextarea-number{padding-right:6px;text-align:right}
+div.numberedtextarea-wrapper{position:relative}div.numberedtextarea-wrapper textarea{display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}div.numberedtextarea-line-numbers{position:absolute;top:0;left:0;right:0;bottom:0;width:45px!important;border-right:none;color:rgba(0,0,0,.4);overflow:hidden}div.numberedtextarea-number{padding-right:6px;text-align:right}
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/013-bootstrap-icons.css b/mailcow/src/mailcow-dockerized/data/web/css/build/013-bootstrap-icons.css
new file mode 100644
index 0000000..4ea58d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/013-bootstrap-icons.css
@@ -0,0 +1,1390 @@
+@font-face {
+  font-family: "bootstrap-icons";
+  src: url("/fonts/bootstrap-icons.woff2?856008caa5eb66df68595e734e59580d") format("woff2"),
+url("/fonts/bootstrap-icons.woff?856008caa5eb66df68595e734e59580d") format("woff");
+}
+
+[class^="bi-"]::before,
+[class*=" bi-"]::before {
+  display: inline-block;
+  font-family: bootstrap-icons !important;
+  font-style: normal;
+  font-weight: normal !important;
+  font-variant: normal;
+  text-transform: none;
+  line-height: 1;
+  vertical-align: -.125em;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+.bi-alarm-fill::before { content: "\f101"; }
+.bi-alarm::before { content: "\f102"; }
+.bi-align-bottom::before { content: "\f103"; }
+.bi-align-center::before { content: "\f104"; }
+.bi-align-end::before { content: "\f105"; }
+.bi-align-middle::before { content: "\f106"; }
+.bi-align-start::before { content: "\f107"; }
+.bi-align-top::before { content: "\f108"; }
+.bi-alt::before { content: "\f109"; }
+.bi-app-indicator::before { content: "\f10a"; }
+.bi-app::before { content: "\f10b"; }
+.bi-archive-fill::before { content: "\f10c"; }
+.bi-archive::before { content: "\f10d"; }
+.bi-arrow-90deg-down::before { content: "\f10e"; }
+.bi-arrow-90deg-left::before { content: "\f10f"; }
+.bi-arrow-90deg-right::before { content: "\f110"; }
+.bi-arrow-90deg-up::before { content: "\f111"; }
+.bi-arrow-bar-down::before { content: "\f112"; }
+.bi-arrow-bar-left::before { content: "\f113"; }
+.bi-arrow-bar-right::before { content: "\f114"; }
+.bi-arrow-bar-up::before { content: "\f115"; }
+.bi-arrow-clockwise::before { content: "\f116"; }
+.bi-arrow-counterclockwise::before { content: "\f117"; }
+.bi-arrow-down-circle-fill::before { content: "\f118"; }
+.bi-arrow-down-circle::before { content: "\f119"; }
+.bi-arrow-down-left-circle-fill::before { content: "\f11a"; }
+.bi-arrow-down-left-circle::before { content: "\f11b"; }
+.bi-arrow-down-left-square-fill::before { content: "\f11c"; }
+.bi-arrow-down-left-square::before { content: "\f11d"; }
+.bi-arrow-down-left::before { content: "\f11e"; }
+.bi-arrow-down-right-circle-fill::before { content: "\f11f"; }
+.bi-arrow-down-right-circle::before { content: "\f120"; }
+.bi-arrow-down-right-square-fill::before { content: "\f121"; }
+.bi-arrow-down-right-square::before { content: "\f122"; }
+.bi-arrow-down-right::before { content: "\f123"; }
+.bi-arrow-down-short::before { content: "\f124"; }
+.bi-arrow-down-square-fill::before { content: "\f125"; }
+.bi-arrow-down-square::before { content: "\f126"; }
+.bi-arrow-down-up::before { content: "\f127"; }
+.bi-arrow-down::before { content: "\f128"; }
+.bi-arrow-left-circle-fill::before { content: "\f129"; }
+.bi-arrow-left-circle::before { content: "\f12a"; }
+.bi-arrow-left-right::before { content: "\f12b"; }
+.bi-arrow-left-short::before { content: "\f12c"; }
+.bi-arrow-left-square-fill::before { content: "\f12d"; }
+.bi-arrow-left-square::before { content: "\f12e"; }
+.bi-arrow-left::before { content: "\f12f"; }
+.bi-arrow-repeat::before { content: "\f130"; }
+.bi-arrow-return-left::before { content: "\f131"; }
+.bi-arrow-return-right::before { content: "\f132"; }
+.bi-arrow-right-circle-fill::before { content: "\f133"; }
+.bi-arrow-right-circle::before { content: "\f134"; }
+.bi-arrow-right-short::before { content: "\f135"; }
+.bi-arrow-right-square-fill::before { content: "\f136"; }
+.bi-arrow-right-square::before { content: "\f137"; }
+.bi-arrow-right::before { content: "\f138"; }
+.bi-arrow-up-circle-fill::before { content: "\f139"; }
+.bi-arrow-up-circle::before { content: "\f13a"; }
+.bi-arrow-up-left-circle-fill::before { content: "\f13b"; }
+.bi-arrow-up-left-circle::before { content: "\f13c"; }
+.bi-arrow-up-left-square-fill::before { content: "\f13d"; }
+.bi-arrow-up-left-square::before { content: "\f13e"; }
+.bi-arrow-up-left::before { content: "\f13f"; }
+.bi-arrow-up-right-circle-fill::before { content: "\f140"; }
+.bi-arrow-up-right-circle::before { content: "\f141"; }
+.bi-arrow-up-right-square-fill::before { content: "\f142"; }
+.bi-arrow-up-right-square::before { content: "\f143"; }
+.bi-arrow-up-right::before { content: "\f144"; }
+.bi-arrow-up-short::before { content: "\f145"; }
+.bi-arrow-up-square-fill::before { content: "\f146"; }
+.bi-arrow-up-square::before { content: "\f147"; }
+.bi-arrow-up::before { content: "\f148"; }
+.bi-arrows-angle-contract::before { content: "\f149"; }
+.bi-arrows-angle-expand::before { content: "\f14a"; }
+.bi-arrows-collapse::before { content: "\f14b"; }
+.bi-arrows-expand::before { content: "\f14c"; }
+.bi-arrows-fullscreen::before { content: "\f14d"; }
+.bi-arrows-move::before { content: "\f14e"; }
+.bi-aspect-ratio-fill::before { content: "\f14f"; }
+.bi-aspect-ratio::before { content: "\f150"; }
+.bi-asterisk::before { content: "\f151"; }
+.bi-at::before { content: "\f152"; }
+.bi-award-fill::before { content: "\f153"; }
+.bi-award::before { content: "\f154"; }
+.bi-back::before { content: "\f155"; }
+.bi-backspace-fill::before { content: "\f156"; }
+.bi-backspace-reverse-fill::before { content: "\f157"; }
+.bi-backspace-reverse::before { content: "\f158"; }
+.bi-backspace::before { content: "\f159"; }
+.bi-badge-3d-fill::before { content: "\f15a"; }
+.bi-badge-3d::before { content: "\f15b"; }
+.bi-badge-4k-fill::before { content: "\f15c"; }
+.bi-badge-4k::before { content: "\f15d"; }
+.bi-badge-8k-fill::before { content: "\f15e"; }
+.bi-badge-8k::before { content: "\f15f"; }
+.bi-badge-ad-fill::before { content: "\f160"; }
+.bi-badge-ad::before { content: "\f161"; }
+.bi-badge-ar-fill::before { content: "\f162"; }
+.bi-badge-ar::before { content: "\f163"; }
+.bi-badge-cc-fill::before { content: "\f164"; }
+.bi-badge-cc::before { content: "\f165"; }
+.bi-badge-hd-fill::before { content: "\f166"; }
+.bi-badge-hd::before { content: "\f167"; }
+.bi-badge-tm-fill::before { content: "\f168"; }
+.bi-badge-tm::before { content: "\f169"; }
+.bi-badge-vo-fill::before { content: "\f16a"; }
+.bi-badge-vo::before { content: "\f16b"; }
+.bi-badge-vr-fill::before { content: "\f16c"; }
+.bi-badge-vr::before { content: "\f16d"; }
+.bi-badge-wc-fill::before { content: "\f16e"; }
+.bi-badge-wc::before { content: "\f16f"; }
+.bi-bag-check-fill::before { content: "\f170"; }
+.bi-bag-check::before { content: "\f171"; }
+.bi-bag-dash-fill::before { content: "\f172"; }
+.bi-bag-dash::before { content: "\f173"; }
+.bi-bag-fill::before { content: "\f174"; }
+.bi-bag-plus-fill::before { content: "\f175"; }
+.bi-bag-plus::before { content: "\f176"; }
+.bi-bag-x-fill::before { content: "\f177"; }
+.bi-bag-x::before { content: "\f178"; }
+.bi-bag::before { content: "\f179"; }
+.bi-bar-chart-fill::before { content: "\f17a"; }
+.bi-bar-chart-line-fill::before { content: "\f17b"; }
+.bi-bar-chart-line::before { content: "\f17c"; }
+.bi-bar-chart-steps::before { content: "\f17d"; }
+.bi-bar-chart::before { content: "\f17e"; }
+.bi-basket-fill::before { content: "\f17f"; }
+.bi-basket::before { content: "\f180"; }
+.bi-basket2-fill::before { content: "\f181"; }
+.bi-basket2::before { content: "\f182"; }
+.bi-basket3-fill::before { content: "\f183"; }
+.bi-basket3::before { content: "\f184"; }
+.bi-battery-charging::before { content: "\f185"; }
+.bi-battery-full::before { content: "\f186"; }
+.bi-battery-half::before { content: "\f187"; }
+.bi-battery::before { content: "\f188"; }
+.bi-bell-fill::before { content: "\f189"; }
+.bi-bell::before { content: "\f18a"; }
+.bi-bezier::before { content: "\f18b"; }
+.bi-bezier2::before { content: "\f18c"; }
+.bi-bicycle::before { content: "\f18d"; }
+.bi-binoculars-fill::before { content: "\f18e"; }
+.bi-binoculars::before { content: "\f18f"; }
+.bi-blockquote-left::before { content: "\f190"; }
+.bi-blockquote-right::before { content: "\f191"; }
+.bi-book-fill::before { content: "\f192"; }
+.bi-book-half::before { content: "\f193"; }
+.bi-book::before { content: "\f194"; }
+.bi-bookmark-check-fill::before { content: "\f195"; }
+.bi-bookmark-check::before { content: "\f196"; }
+.bi-bookmark-dash-fill::before { content: "\f197"; }
+.bi-bookmark-dash::before { content: "\f198"; }
+.bi-bookmark-fill::before { content: "\f199"; }
+.bi-bookmark-heart-fill::before { content: "\f19a"; }
+.bi-bookmark-heart::before { content: "\f19b"; }
+.bi-bookmark-plus-fill::before { content: "\f19c"; }
+.bi-bookmark-plus::before { content: "\f19d"; }
+.bi-bookmark-star-fill::before { content: "\f19e"; }
+.bi-bookmark-star::before { content: "\f19f"; }
+.bi-bookmark-x-fill::before { content: "\f1a0"; }
+.bi-bookmark-x::before { content: "\f1a1"; }
+.bi-bookmark::before { content: "\f1a2"; }
+.bi-bookmarks-fill::before { content: "\f1a3"; }
+.bi-bookmarks::before { content: "\f1a4"; }
+.bi-bookshelf::before { content: "\f1a5"; }
+.bi-bootstrap-fill::before { content: "\f1a6"; }
+.bi-bootstrap-reboot::before { content: "\f1a7"; }
+.bi-bootstrap::before { content: "\f1a8"; }
+.bi-border-all::before { content: "\f1a9"; }
+.bi-border-bottom::before { content: "\f1aa"; }
+.bi-border-center::before { content: "\f1ab"; }
+.bi-border-inner::before { content: "\f1ac"; }
+.bi-border-left::before { content: "\f1ad"; }
+.bi-border-middle::before { content: "\f1ae"; }
+.bi-border-outer::before { content: "\f1af"; }
+.bi-border-right::before { content: "\f1b0"; }
+.bi-border-style::before { content: "\f1b1"; }
+.bi-border-top::before { content: "\f1b2"; }
+.bi-border-width::before { content: "\f1b3"; }
+.bi-border::before { content: "\f1b4"; }
+.bi-bounding-box-circles::before { content: "\f1b5"; }
+.bi-bounding-box::before { content: "\f1b6"; }
+.bi-box-arrow-down-left::before { content: "\f1b7"; }
+.bi-box-arrow-down-right::before { content: "\f1b8"; }
+.bi-box-arrow-down::before { content: "\f1b9"; }
+.bi-box-arrow-in-down-left::before { content: "\f1ba"; }
+.bi-box-arrow-in-down-right::before { content: "\f1bb"; }
+.bi-box-arrow-in-down::before { content: "\f1bc"; }
+.bi-box-arrow-in-left::before { content: "\f1bd"; }
+.bi-box-arrow-in-right::before { content: "\f1be"; }
+.bi-box-arrow-in-up-left::before { content: "\f1bf"; }
+.bi-box-arrow-in-up-right::before { content: "\f1c0"; }
+.bi-box-arrow-in-up::before { content: "\f1c1"; }
+.bi-box-arrow-left::before { content: "\f1c2"; }
+.bi-box-arrow-right::before { content: "\f1c3"; }
+.bi-box-arrow-up-left::before { content: "\f1c4"; }
+.bi-box-arrow-up-right::before { content: "\f1c5"; }
+.bi-box-arrow-up::before { content: "\f1c6"; }
+.bi-box-seam::before { content: "\f1c7"; }
+.bi-box::before { content: "\f1c8"; }
+.bi-braces::before { content: "\f1c9"; }
+.bi-bricks::before { content: "\f1ca"; }
+.bi-briefcase-fill::before { content: "\f1cb"; }
+.bi-briefcase::before { content: "\f1cc"; }
+.bi-brightness-alt-high-fill::before { content: "\f1cd"; }
+.bi-brightness-alt-high::before { content: "\f1ce"; }
+.bi-brightness-alt-low-fill::before { content: "\f1cf"; }
+.bi-brightness-alt-low::before { content: "\f1d0"; }
+.bi-brightness-high-fill::before { content: "\f1d1"; }
+.bi-brightness-high::before { content: "\f1d2"; }
+.bi-brightness-low-fill::before { content: "\f1d3"; }
+.bi-brightness-low::before { content: "\f1d4"; }
+.bi-broadcast-pin::before { content: "\f1d5"; }
+.bi-broadcast::before { content: "\f1d6"; }
+.bi-brush-fill::before { content: "\f1d7"; }
+.bi-brush::before { content: "\f1d8"; }
+.bi-bucket-fill::before { content: "\f1d9"; }
+.bi-bucket::before { content: "\f1da"; }
+.bi-bug-fill::before { content: "\f1db"; }
+.bi-bug::before { content: "\f1dc"; }
+.bi-building::before { content: "\f1dd"; }
+.bi-bullseye::before { content: "\f1de"; }
+.bi-calculator-fill::before { content: "\f1df"; }
+.bi-calculator::before { content: "\f1e0"; }
+.bi-calendar-check-fill::before { content: "\f1e1"; }
+.bi-calendar-check::before { content: "\f1e2"; }
+.bi-calendar-date-fill::before { content: "\f1e3"; }
+.bi-calendar-date::before { content: "\f1e4"; }
+.bi-calendar-day-fill::before { content: "\f1e5"; }
+.bi-calendar-day::before { content: "\f1e6"; }
+.bi-calendar-event-fill::before { content: "\f1e7"; }
+.bi-calendar-event::before { content: "\f1e8"; }
+.bi-calendar-fill::before { content: "\f1e9"; }
+.bi-calendar-minus-fill::before { content: "\f1ea"; }
+.bi-calendar-minus::before { content: "\f1eb"; }
+.bi-calendar-month-fill::before { content: "\f1ec"; }
+.bi-calendar-month::before { content: "\f1ed"; }
+.bi-calendar-plus-fill::before { content: "\f1ee"; }
+.bi-calendar-plus::before { content: "\f1ef"; }
+.bi-calendar-range-fill::before { content: "\f1f0"; }
+.bi-calendar-range::before { content: "\f1f1"; }
+.bi-calendar-week-fill::before { content: "\f1f2"; }
+.bi-calendar-week::before { content: "\f1f3"; }
+.bi-calendar-x-fill::before { content: "\f1f4"; }
+.bi-calendar-x::before { content: "\f1f5"; }
+.bi-calendar::before { content: "\f1f6"; }
+.bi-calendar2-check-fill::before { content: "\f1f7"; }
+.bi-calendar2-check::before { content: "\f1f8"; }
+.bi-calendar2-date-fill::before { content: "\f1f9"; }
+.bi-calendar2-date::before { content: "\f1fa"; }
+.bi-calendar2-day-fill::before { content: "\f1fb"; }
+.bi-calendar2-day::before { content: "\f1fc"; }
+.bi-calendar2-event-fill::before { content: "\f1fd"; }
+.bi-calendar2-event::before { content: "\f1fe"; }
+.bi-calendar2-fill::before { content: "\f1ff"; }
+.bi-calendar2-minus-fill::before { content: "\f200"; }
+.bi-calendar2-minus::before { content: "\f201"; }
+.bi-calendar2-month-fill::before { content: "\f202"; }
+.bi-calendar2-month::before { content: "\f203"; }
+.bi-calendar2-plus-fill::before { content: "\f204"; }
+.bi-calendar2-plus::before { content: "\f205"; }
+.bi-calendar2-range-fill::before { content: "\f206"; }
+.bi-calendar2-range::before { content: "\f207"; }
+.bi-calendar2-week-fill::before { content: "\f208"; }
+.bi-calendar2-week::before { content: "\f209"; }
+.bi-calendar2-x-fill::before { content: "\f20a"; }
+.bi-calendar2-x::before { content: "\f20b"; }
+.bi-calendar2::before { content: "\f20c"; }
+.bi-calendar3-event-fill::before { content: "\f20d"; }
+.bi-calendar3-event::before { content: "\f20e"; }
+.bi-calendar3-fill::before { content: "\f20f"; }
+.bi-calendar3-range-fill::before { content: "\f210"; }
+.bi-calendar3-range::before { content: "\f211"; }
+.bi-calendar3-week-fill::before { content: "\f212"; }
+.bi-calendar3-week::before { content: "\f213"; }
+.bi-calendar3::before { content: "\f214"; }
+.bi-calendar4-event::before { content: "\f215"; }
+.bi-calendar4-range::before { content: "\f216"; }
+.bi-calendar4-week::before { content: "\f217"; }
+.bi-calendar4::before { content: "\f218"; }
+.bi-camera-fill::before { content: "\f219"; }
+.bi-camera-reels-fill::before { content: "\f21a"; }
+.bi-camera-reels::before { content: "\f21b"; }
+.bi-camera-video-fill::before { content: "\f21c"; }
+.bi-camera-video-off-fill::before { content: "\f21d"; }
+.bi-camera-video-off::before { content: "\f21e"; }
+.bi-camera-video::before { content: "\f21f"; }
+.bi-camera::before { content: "\f220"; }
+.bi-camera2::before { content: "\f221"; }
+.bi-capslock-fill::before { content: "\f222"; }
+.bi-capslock::before { content: "\f223"; }
+.bi-card-checklist::before { content: "\f224"; }
+.bi-card-heading::before { content: "\f225"; }
+.bi-card-image::before { content: "\f226"; }
+.bi-card-list::before { content: "\f227"; }
+.bi-card-text::before { content: "\f228"; }
+.bi-caret-down-fill::before { content: "\f229"; }
+.bi-caret-down-square-fill::before { content: "\f22a"; }
+.bi-caret-down-square::before { content: "\f22b"; }
+.bi-caret-down::before { content: "\f22c"; }
+.bi-caret-left-fill::before { content: "\f22d"; }
+.bi-caret-left-square-fill::before { content: "\f22e"; }
+.bi-caret-left-square::before { content: "\f22f"; }
+.bi-caret-left::before { content: "\f230"; }
+.bi-caret-right-fill::before { content: "\f231"; }
+.bi-caret-right-square-fill::before { content: "\f232"; }
+.bi-caret-right-square::before { content: "\f233"; }
+.bi-caret-right::before { content: "\f234"; }
+.bi-caret-up-fill::before { content: "\f235"; }
+.bi-caret-up-square-fill::before { content: "\f236"; }
+.bi-caret-up-square::before { content: "\f237"; }
+.bi-caret-up::before { content: "\f238"; }
+.bi-cart-check-fill::before { content: "\f239"; }
+.bi-cart-check::before { content: "\f23a"; }
+.bi-cart-dash-fill::before { content: "\f23b"; }
+.bi-cart-dash::before { content: "\f23c"; }
+.bi-cart-fill::before { content: "\f23d"; }
+.bi-cart-plus-fill::before { content: "\f23e"; }
+.bi-cart-plus::before { content: "\f23f"; }
+.bi-cart-x-fill::before { content: "\f240"; }
+.bi-cart-x::before { content: "\f241"; }
+.bi-cart::before { content: "\f242"; }
+.bi-cart2::before { content: "\f243"; }
+.bi-cart3::before { content: "\f244"; }
+.bi-cart4::before { content: "\f245"; }
+.bi-cash-stack::before { content: "\f246"; }
+.bi-cash::before { content: "\f247"; }
+.bi-cast::before { content: "\f248"; }
+.bi-chat-dots-fill::before { content: "\f249"; }
+.bi-chat-dots::before { content: "\f24a"; }
+.bi-chat-fill::before { content: "\f24b"; }
+.bi-chat-left-dots-fill::before { content: "\f24c"; }
+.bi-chat-left-dots::before { content: "\f24d"; }
+.bi-chat-left-fill::before { content: "\f24e"; }
+.bi-chat-left-quote-fill::before { content: "\f24f"; }
+.bi-chat-left-quote::before { content: "\f250"; }
+.bi-chat-left-text-fill::before { content: "\f251"; }
+.bi-chat-left-text::before { content: "\f252"; }
+.bi-chat-left::before { content: "\f253"; }
+.bi-chat-quote-fill::before { content: "\f254"; }
+.bi-chat-quote::before { content: "\f255"; }
+.bi-chat-right-dots-fill::before { content: "\f256"; }
+.bi-chat-right-dots::before { content: "\f257"; }
+.bi-chat-right-fill::before { content: "\f258"; }
+.bi-chat-right-quote-fill::before { content: "\f259"; }
+.bi-chat-right-quote::before { content: "\f25a"; }
+.bi-chat-right-text-fill::before { content: "\f25b"; }
+.bi-chat-right-text::before { content: "\f25c"; }
+.bi-chat-right::before { content: "\f25d"; }
+.bi-chat-square-dots-fill::before { content: "\f25e"; }
+.bi-chat-square-dots::before { content: "\f25f"; }
+.bi-chat-square-fill::before { content: "\f260"; }
+.bi-chat-square-quote-fill::before { content: "\f261"; }
+.bi-chat-square-quote::before { content: "\f262"; }
+.bi-chat-square-text-fill::before { content: "\f263"; }
+.bi-chat-square-text::before { content: "\f264"; }
+.bi-chat-square::before { content: "\f265"; }
+.bi-chat-text-fill::before { content: "\f266"; }
+.bi-chat-text::before { content: "\f267"; }
+.bi-chat::before { content: "\f268"; }
+.bi-check-all::before { content: "\f269"; }
+.bi-check-circle-fill::before { content: "\f26a"; }
+.bi-check-circle::before { content: "\f26b"; }
+.bi-check-square-fill::before { content: "\f26c"; }
+.bi-check-square::before { content: "\f26d"; }
+.bi-check::before { content: "\f26e"; }
+.bi-check2-all::before { content: "\f26f"; }
+.bi-check2-circle::before { content: "\f270"; }
+.bi-check2-square::before { content: "\f271"; }
+.bi-check2::before { content: "\f272"; }
+.bi-chevron-bar-contract::before { content: "\f273"; }
+.bi-chevron-bar-down::before { content: "\f274"; }
+.bi-chevron-bar-expand::before { content: "\f275"; }
+.bi-chevron-bar-left::before { content: "\f276"; }
+.bi-chevron-bar-right::before { content: "\f277"; }
+.bi-chevron-bar-up::before { content: "\f278"; }
+.bi-chevron-compact-down::before { content: "\f279"; }
+.bi-chevron-compact-left::before { content: "\f27a"; }
+.bi-chevron-compact-right::before { content: "\f27b"; }
+.bi-chevron-compact-up::before { content: "\f27c"; }
+.bi-chevron-contract::before { content: "\f27d"; }
+.bi-chevron-double-down::before { content: "\f27e"; }
+.bi-chevron-double-left::before { content: "\f27f"; }
+.bi-chevron-double-right::before { content: "\f280"; }
+.bi-chevron-double-up::before { content: "\f281"; }
+.bi-chevron-down::before { content: "\f282"; }
+.bi-chevron-expand::before { content: "\f283"; }
+.bi-chevron-left::before { content: "\f284"; }
+.bi-chevron-right::before { content: "\f285"; }
+.bi-chevron-up::before { content: "\f286"; }
+.bi-circle-fill::before { content: "\f287"; }
+.bi-circle-half::before { content: "\f288"; }
+.bi-circle-square::before { content: "\f289"; }
+.bi-circle::before { content: "\f28a"; }
+.bi-clipboard-check::before { content: "\f28b"; }
+.bi-clipboard-data::before { content: "\f28c"; }
+.bi-clipboard-minus::before { content: "\f28d"; }
+.bi-clipboard-plus::before { content: "\f28e"; }
+.bi-clipboard-x::before { content: "\f28f"; }
+.bi-clipboard::before { content: "\f290"; }
+.bi-clock-fill::before { content: "\f291"; }
+.bi-clock-history::before { content: "\f292"; }
+.bi-clock::before { content: "\f293"; }
+.bi-cloud-arrow-down-fill::before { content: "\f294"; }
+.bi-cloud-arrow-down::before { content: "\f295"; }
+.bi-cloud-arrow-up-fill::before { content: "\f296"; }
+.bi-cloud-arrow-up::before { content: "\f297"; }
+.bi-cloud-check-fill::before { content: "\f298"; }
+.bi-cloud-check::before { content: "\f299"; }
+.bi-cloud-download-fill::before { content: "\f29a"; }
+.bi-cloud-download::before { content: "\f29b"; }
+.bi-cloud-drizzle-fill::before { content: "\f29c"; }
+.bi-cloud-drizzle::before { content: "\f29d"; }
+.bi-cloud-fill::before { content: "\f29e"; }
+.bi-cloud-fog-fill::before { content: "\f29f"; }
+.bi-cloud-fog::before { content: "\f2a0"; }
+.bi-cloud-fog2-fill::before { content: "\f2a1"; }
+.bi-cloud-fog2::before { content: "\f2a2"; }
+.bi-cloud-hail-fill::before { content: "\f2a3"; }
+.bi-cloud-hail::before { content: "\f2a4"; }
+.bi-cloud-haze-1::before { content: "\f2a5"; }
+.bi-cloud-haze-fill::before { content: "\f2a6"; }
+.bi-cloud-haze::before { content: "\f2a7"; }
+.bi-cloud-haze2-fill::before { content: "\f2a8"; }
+.bi-cloud-lightning-fill::before { content: "\f2a9"; }
+.bi-cloud-lightning-rain-fill::before { content: "\f2aa"; }
+.bi-cloud-lightning-rain::before { content: "\f2ab"; }
+.bi-cloud-lightning::before { content: "\f2ac"; }
+.bi-cloud-minus-fill::before { content: "\f2ad"; }
+.bi-cloud-minus::before { content: "\f2ae"; }
+.bi-cloud-moon-fill::before { content: "\f2af"; }
+.bi-cloud-moon::before { content: "\f2b0"; }
+.bi-cloud-plus-fill::before { content: "\f2b1"; }
+.bi-cloud-plus::before { content: "\f2b2"; }
+.bi-cloud-rain-fill::before { content: "\f2b3"; }
+.bi-cloud-rain-heavy-fill::before { content: "\f2b4"; }
+.bi-cloud-rain-heavy::before { content: "\f2b5"; }
+.bi-cloud-rain::before { content: "\f2b6"; }
+.bi-cloud-slash-fill::before { content: "\f2b7"; }
+.bi-cloud-slash::before { content: "\f2b8"; }
+.bi-cloud-sleet-fill::before { content: "\f2b9"; }
+.bi-cloud-sleet::before { content: "\f2ba"; }
+.bi-cloud-snow-fill::before { content: "\f2bb"; }
+.bi-cloud-snow::before { content: "\f2bc"; }
+.bi-cloud-sun-fill::before { content: "\f2bd"; }
+.bi-cloud-sun::before { content: "\f2be"; }
+.bi-cloud-upload-fill::before { content: "\f2bf"; }
+.bi-cloud-upload::before { content: "\f2c0"; }
+.bi-cloud::before { content: "\f2c1"; }
+.bi-clouds-fill::before { content: "\f2c2"; }
+.bi-clouds::before { content: "\f2c3"; }
+.bi-cloudy-fill::before { content: "\f2c4"; }
+.bi-cloudy::before { content: "\f2c5"; }
+.bi-code-slash::before { content: "\f2c6"; }
+.bi-code-square::before { content: "\f2c7"; }
+.bi-code::before { content: "\f2c8"; }
+.bi-collection-fill::before { content: "\f2c9"; }
+.bi-collection-play-fill::before { content: "\f2ca"; }
+.bi-collection-play::before { content: "\f2cb"; }
+.bi-collection::before { content: "\f2cc"; }
+.bi-columns-gap::before { content: "\f2cd"; }
+.bi-columns::before { content: "\f2ce"; }
+.bi-command::before { content: "\f2cf"; }
+.bi-compass-fill::before { content: "\f2d0"; }
+.bi-compass::before { content: "\f2d1"; }
+.bi-cone-striped::before { content: "\f2d2"; }
+.bi-cone::before { content: "\f2d3"; }
+.bi-controller::before { content: "\f2d4"; }
+.bi-cpu-fill::before { content: "\f2d5"; }
+.bi-cpu::before { content: "\f2d6"; }
+.bi-credit-card-2-back-fill::before { content: "\f2d7"; }
+.bi-credit-card-2-back::before { content: "\f2d8"; }
+.bi-credit-card-2-front-fill::before { content: "\f2d9"; }
+.bi-credit-card-2-front::before { content: "\f2da"; }
+.bi-credit-card-fill::before { content: "\f2db"; }
+.bi-credit-card::before { content: "\f2dc"; }
+.bi-crop::before { content: "\f2dd"; }
+.bi-cup-fill::before { content: "\f2de"; }
+.bi-cup-straw::before { content: "\f2df"; }
+.bi-cup::before { content: "\f2e0"; }
+.bi-cursor-fill::before { content: "\f2e1"; }
+.bi-cursor-text::before { content: "\f2e2"; }
+.bi-cursor::before { content: "\f2e3"; }
+.bi-dash-circle-dotted::before { content: "\f2e4"; }
+.bi-dash-circle-fill::before { content: "\f2e5"; }
+.bi-dash-circle::before { content: "\f2e6"; }
+.bi-dash-square-dotted::before { content: "\f2e7"; }
+.bi-dash-square-fill::before { content: "\f2e8"; }
+.bi-dash-square::before { content: "\f2e9"; }
+.bi-dash::before { content: "\f2ea"; }
+.bi-diagram-2-fill::before { content: "\f2eb"; }
+.bi-diagram-2::before { content: "\f2ec"; }
+.bi-diagram-3-fill::before { content: "\f2ed"; }
+.bi-diagram-3::before { content: "\f2ee"; }
+.bi-diamond-fill::before { content: "\f2ef"; }
+.bi-diamond-half::before { content: "\f2f0"; }
+.bi-diamond::before { content: "\f2f1"; }
+.bi-dice-1-fill::before { content: "\f2f2"; }
+.bi-dice-1::before { content: "\f2f3"; }
+.bi-dice-2-fill::before { content: "\f2f4"; }
+.bi-dice-2::before { content: "\f2f5"; }
+.bi-dice-3-fill::before { content: "\f2f6"; }
+.bi-dice-3::before { content: "\f2f7"; }
+.bi-dice-4-fill::before { content: "\f2f8"; }
+.bi-dice-4::before { content: "\f2f9"; }
+.bi-dice-5-fill::before { content: "\f2fa"; }
+.bi-dice-5::before { content: "\f2fb"; }
+.bi-dice-6-fill::before { content: "\f2fc"; }
+.bi-dice-6::before { content: "\f2fd"; }
+.bi-disc-fill::before { content: "\f2fe"; }
+.bi-disc::before { content: "\f2ff"; }
+.bi-discord::before { content: "\f300"; }
+.bi-display-fill::before { content: "\f301"; }
+.bi-display::before { content: "\f302"; }
+.bi-distribute-horizontal::before { content: "\f303"; }
+.bi-distribute-vertical::before { content: "\f304"; }
+.bi-door-closed-fill::before { content: "\f305"; }
+.bi-door-closed::before { content: "\f306"; }
+.bi-door-open-fill::before { content: "\f307"; }
+.bi-door-open::before { content: "\f308"; }
+.bi-dot::before { content: "\f309"; }
+.bi-download::before { content: "\f30a"; }
+.bi-droplet-fill::before { content: "\f30b"; }
+.bi-droplet-half::before { content: "\f30c"; }
+.bi-droplet::before { content: "\f30d"; }
+.bi-earbuds::before { content: "\f30e"; }
+.bi-easel-fill::before { content: "\f30f"; }
+.bi-easel::before { content: "\f310"; }
+.bi-egg-fill::before { content: "\f311"; }
+.bi-egg-fried::before { content: "\f312"; }
+.bi-egg::before { content: "\f313"; }
+.bi-eject-fill::before { content: "\f314"; }
+.bi-eject::before { content: "\f315"; }
+.bi-emoji-angry-fill::before { content: "\f316"; }
+.bi-emoji-angry::before { content: "\f317"; }
+.bi-emoji-dizzy-fill::before { content: "\f318"; }
+.bi-emoji-dizzy::before { content: "\f319"; }
+.bi-emoji-expressionless-fill::before { content: "\f31a"; }
+.bi-emoji-expressionless::before { content: "\f31b"; }
+.bi-emoji-frown-fill::before { content: "\f31c"; }
+.bi-emoji-frown::before { content: "\f31d"; }
+.bi-emoji-heart-eyes-fill::before { content: "\f31e"; }
+.bi-emoji-heart-eyes::before { content: "\f31f"; }
+.bi-emoji-laughing-fill::before { content: "\f320"; }
+.bi-emoji-laughing::before { content: "\f321"; }
+.bi-emoji-neutral-fill::before { content: "\f322"; }
+.bi-emoji-neutral::before { content: "\f323"; }
+.bi-emoji-smile-fill::before { content: "\f324"; }
+.bi-emoji-smile-upside-down-fill::before { content: "\f325"; }
+.bi-emoji-smile-upside-down::before { content: "\f326"; }
+.bi-emoji-smile::before { content: "\f327"; }
+.bi-emoji-sunglasses-fill::before { content: "\f328"; }
+.bi-emoji-sunglasses::before { content: "\f329"; }
+.bi-emoji-wink-fill::before { content: "\f32a"; }
+.bi-emoji-wink::before { content: "\f32b"; }
+.bi-envelope-fill::before { content: "\f32c"; }
+.bi-envelope-open-fill::before { content: "\f32d"; }
+.bi-envelope-open::before { content: "\f32e"; }
+.bi-envelope::before { content: "\f32f"; }
+.bi-eraser-fill::before { content: "\f330"; }
+.bi-eraser::before { content: "\f331"; }
+.bi-exclamation-circle-fill::before { content: "\f332"; }
+.bi-exclamation-circle::before { content: "\f333"; }
+.bi-exclamation-diamond-fill::before { content: "\f334"; }
+.bi-exclamation-diamond::before { content: "\f335"; }
+.bi-exclamation-octagon-fill::before { content: "\f336"; }
+.bi-exclamation-octagon::before { content: "\f337"; }
+.bi-exclamation-square-fill::before { content: "\f338"; }
+.bi-exclamation-square::before { content: "\f339"; }
+.bi-exclamation-triangle-fill::before { content: "\f33a"; }
+.bi-exclamation-triangle::before { content: "\f33b"; }
+.bi-exclamation::before { content: "\f33c"; }
+.bi-exclude::before { content: "\f33d"; }
+.bi-eye-fill::before { content: "\f33e"; }
+.bi-eye-slash-fill::before { content: "\f33f"; }
+.bi-eye-slash::before { content: "\f340"; }
+.bi-eye::before { content: "\f341"; }
+.bi-eyedropper::before { content: "\f342"; }
+.bi-eyeglasses::before { content: "\f343"; }
+.bi-facebook::before { content: "\f344"; }
+.bi-file-arrow-down-fill::before { content: "\f345"; }
+.bi-file-arrow-down::before { content: "\f346"; }
+.bi-file-arrow-up-fill::before { content: "\f347"; }
+.bi-file-arrow-up::before { content: "\f348"; }
+.bi-file-bar-graph-fill::before { content: "\f349"; }
+.bi-file-bar-graph::before { content: "\f34a"; }
+.bi-file-binary-fill::before { content: "\f34b"; }
+.bi-file-binary::before { content: "\f34c"; }
+.bi-file-break-fill::before { content: "\f34d"; }
+.bi-file-break::before { content: "\f34e"; }
+.bi-file-check-fill::before { content: "\f34f"; }
+.bi-file-check::before { content: "\f350"; }
+.bi-file-code-fill::before { content: "\f351"; }
+.bi-file-code::before { content: "\f352"; }
+.bi-file-diff-fill::before { content: "\f353"; }
+.bi-file-diff::before { content: "\f354"; }
+.bi-file-earmark-arrow-down-fill::before { content: "\f355"; }
+.bi-file-earmark-arrow-down::before { content: "\f356"; }
+.bi-file-earmark-arrow-up-fill::before { content: "\f357"; }
+.bi-file-earmark-arrow-up::before { content: "\f358"; }
+.bi-file-earmark-bar-graph-fill::before { content: "\f359"; }
+.bi-file-earmark-bar-graph::before { content: "\f35a"; }
+.bi-file-earmark-binary-fill::before { content: "\f35b"; }
+.bi-file-earmark-binary::before { content: "\f35c"; }
+.bi-file-earmark-break-fill::before { content: "\f35d"; }
+.bi-file-earmark-break::before { content: "\f35e"; }
+.bi-file-earmark-check-fill::before { content: "\f35f"; }
+.bi-file-earmark-check::before { content: "\f360"; }
+.bi-file-earmark-code-fill::before { content: "\f361"; }
+.bi-file-earmark-code::before { content: "\f362"; }
+.bi-file-earmark-diff-fill::before { content: "\f363"; }
+.bi-file-earmark-diff::before { content: "\f364"; }
+.bi-file-earmark-easel-fill::before { content: "\f365"; }
+.bi-file-earmark-easel::before { content: "\f366"; }
+.bi-file-earmark-excel-fill::before { content: "\f367"; }
+.bi-file-earmark-excel::before { content: "\f368"; }
+.bi-file-earmark-fill::before { content: "\f369"; }
+.bi-file-earmark-font-fill::before { content: "\f36a"; }
+.bi-file-earmark-font::before { content: "\f36b"; }
+.bi-file-earmark-image-fill::before { content: "\f36c"; }
+.bi-file-earmark-image::before { content: "\f36d"; }
+.bi-file-earmark-lock-fill::before { content: "\f36e"; }
+.bi-file-earmark-lock::before { content: "\f36f"; }
+.bi-file-earmark-lock2-fill::before { content: "\f370"; }
+.bi-file-earmark-lock2::before { content: "\f371"; }
+.bi-file-earmark-medical-fill::before { content: "\f372"; }
+.bi-file-earmark-medical::before { content: "\f373"; }
+.bi-file-earmark-minus-fill::before { content: "\f374"; }
+.bi-file-earmark-minus::before { content: "\f375"; }
+.bi-file-earmark-music-fill::before { content: "\f376"; }
+.bi-file-earmark-music::before { content: "\f377"; }
+.bi-file-earmark-person-fill::before { content: "\f378"; }
+.bi-file-earmark-person::before { content: "\f379"; }
+.bi-file-earmark-play-fill::before { content: "\f37a"; }
+.bi-file-earmark-play::before { content: "\f37b"; }
+.bi-file-earmark-plus-fill::before { content: "\f37c"; }
+.bi-file-earmark-plus::before { content: "\f37d"; }
+.bi-file-earmark-post-fill::before { content: "\f37e"; }
+.bi-file-earmark-post::before { content: "\f37f"; }
+.bi-file-earmark-ppt-fill::before { content: "\f380"; }
+.bi-file-earmark-ppt::before { content: "\f381"; }
+.bi-file-earmark-richtext-fill::before { content: "\f382"; }
+.bi-file-earmark-richtext::before { content: "\f383"; }
+.bi-file-earmark-ruled-fill::before { content: "\f384"; }
+.bi-file-earmark-ruled::before { content: "\f385"; }
+.bi-file-earmark-slides-fill::before { content: "\f386"; }
+.bi-file-earmark-slides::before { content: "\f387"; }
+.bi-file-earmark-spreadsheet-fill::before { content: "\f388"; }
+.bi-file-earmark-spreadsheet::before { content: "\f389"; }
+.bi-file-earmark-text-fill::before { content: "\f38a"; }
+.bi-file-earmark-text::before { content: "\f38b"; }
+.bi-file-earmark-word-fill::before { content: "\f38c"; }
+.bi-file-earmark-word::before { content: "\f38d"; }
+.bi-file-earmark-x-fill::before { content: "\f38e"; }
+.bi-file-earmark-x::before { content: "\f38f"; }
+.bi-file-earmark-zip-fill::before { content: "\f390"; }
+.bi-file-earmark-zip::before { content: "\f391"; }
+.bi-file-earmark::before { content: "\f392"; }
+.bi-file-easel-fill::before { content: "\f393"; }
+.bi-file-easel::before { content: "\f394"; }
+.bi-file-excel-fill::before { content: "\f395"; }
+.bi-file-excel::before { content: "\f396"; }
+.bi-file-fill::before { content: "\f397"; }
+.bi-file-font-fill::before { content: "\f398"; }
+.bi-file-font::before { content: "\f399"; }
+.bi-file-image-fill::before { content: "\f39a"; }
+.bi-file-image::before { content: "\f39b"; }
+.bi-file-lock-fill::before { content: "\f39c"; }
+.bi-file-lock::before { content: "\f39d"; }
+.bi-file-lock2-fill::before { content: "\f39e"; }
+.bi-file-lock2::before { content: "\f39f"; }
+.bi-file-medical-fill::before { content: "\f3a0"; }
+.bi-file-medical::before { content: "\f3a1"; }
+.bi-file-minus-fill::before { content: "\f3a2"; }
+.bi-file-minus::before { content: "\f3a3"; }
+.bi-file-music-fill::before { content: "\f3a4"; }
+.bi-file-music::before { content: "\f3a5"; }
+.bi-file-person-fill::before { content: "\f3a6"; }
+.bi-file-person::before { content: "\f3a7"; }
+.bi-file-play-fill::before { content: "\f3a8"; }
+.bi-file-play::before { content: "\f3a9"; }
+.bi-file-plus-fill::before { content: "\f3aa"; }
+.bi-file-plus::before { content: "\f3ab"; }
+.bi-file-post-fill::before { content: "\f3ac"; }
+.bi-file-post::before { content: "\f3ad"; }
+.bi-file-ppt-fill::before { content: "\f3ae"; }
+.bi-file-ppt::before { content: "\f3af"; }
+.bi-file-richtext-fill::before { content: "\f3b0"; }
+.bi-file-richtext::before { content: "\f3b1"; }
+.bi-file-ruled-fill::before { content: "\f3b2"; }
+.bi-file-ruled::before { content: "\f3b3"; }
+.bi-file-slides-fill::before { content: "\f3b4"; }
+.bi-file-slides::before { content: "\f3b5"; }
+.bi-file-spreadsheet-fill::before { content: "\f3b6"; }
+.bi-file-spreadsheet::before { content: "\f3b7"; }
+.bi-file-text-fill::before { content: "\f3b8"; }
+.bi-file-text::before { content: "\f3b9"; }
+.bi-file-word-fill::before { content: "\f3ba"; }
+.bi-file-word::before { content: "\f3bb"; }
+.bi-file-x-fill::before { content: "\f3bc"; }
+.bi-file-x::before { content: "\f3bd"; }
+.bi-file-zip-fill::before { content: "\f3be"; }
+.bi-file-zip::before { content: "\f3bf"; }
+.bi-file::before { content: "\f3c0"; }
+.bi-files-alt::before { content: "\f3c1"; }
+.bi-files::before { content: "\f3c2"; }
+.bi-film::before { content: "\f3c3"; }
+.bi-filter-circle-fill::before { content: "\f3c4"; }
+.bi-filter-circle::before { content: "\f3c5"; }
+.bi-filter-left::before { content: "\f3c6"; }
+.bi-filter-right::before { content: "\f3c7"; }
+.bi-filter-square-fill::before { content: "\f3c8"; }
+.bi-filter-square::before { content: "\f3c9"; }
+.bi-filter::before { content: "\f3ca"; }
+.bi-flag-fill::before { content: "\f3cb"; }
+.bi-flag::before { content: "\f3cc"; }
+.bi-flower1::before { content: "\f3cd"; }
+.bi-flower2::before { content: "\f3ce"; }
+.bi-flower3::before { content: "\f3cf"; }
+.bi-folder-check::before { content: "\f3d0"; }
+.bi-folder-fill::before { content: "\f3d1"; }
+.bi-folder-minus::before { content: "\f3d2"; }
+.bi-folder-plus::before { content: "\f3d3"; }
+.bi-folder-symlink-fill::before { content: "\f3d4"; }
+.bi-folder-symlink::before { content: "\f3d5"; }
+.bi-folder-x::before { content: "\f3d6"; }
+.bi-folder::before { content: "\f3d7"; }
+.bi-folder2-open::before { content: "\f3d8"; }
+.bi-folder2::before { content: "\f3d9"; }
+.bi-fonts::before { content: "\f3da"; }
+.bi-forward-fill::before { content: "\f3db"; }
+.bi-forward::before { content: "\f3dc"; }
+.bi-front::before { content: "\f3dd"; }
+.bi-fullscreen-exit::before { content: "\f3de"; }
+.bi-fullscreen::before { content: "\f3df"; }
+.bi-funnel-fill::before { content: "\f3e0"; }
+.bi-funnel::before { content: "\f3e1"; }
+.bi-gear-fill::before { content: "\f3e2"; }
+.bi-gear-wide-connected::before { content: "\f3e3"; }
+.bi-gear-wide::before { content: "\f3e4"; }
+.bi-gear::before { content: "\f3e5"; }
+.bi-gem::before { content: "\f3e6"; }
+.bi-geo-alt-fill::before { content: "\f3e7"; }
+.bi-geo-alt::before { content: "\f3e8"; }
+.bi-geo-fill::before { content: "\f3e9"; }
+.bi-geo::before { content: "\f3ea"; }
+.bi-gift-fill::before { content: "\f3eb"; }
+.bi-gift::before { content: "\f3ec"; }
+.bi-github::before { content: "\f3ed"; }
+.bi-globe::before { content: "\f3ee"; }
+.bi-globe2::before { content: "\f3ef"; }
+.bi-google::before { content: "\f3f0"; }
+.bi-graph-down::before { content: "\f3f1"; }
+.bi-graph-up::before { content: "\f3f2"; }
+.bi-grid-1x2-fill::before { content: "\f3f3"; }
+.bi-grid-1x2::before { content: "\f3f4"; }
+.bi-grid-3x2-gap-fill::before { content: "\f3f5"; }
+.bi-grid-3x2-gap::before { content: "\f3f6"; }
+.bi-grid-3x2::before { content: "\f3f7"; }
+.bi-grid-3x3-gap-fill::before { content: "\f3f8"; }
+.bi-grid-3x3-gap::before { content: "\f3f9"; }
+.bi-grid-3x3::before { content: "\f3fa"; }
+.bi-grid-fill::before { content: "\f3fb"; }
+.bi-grid::before { content: "\f3fc"; }
+.bi-grip-horizontal::before { content: "\f3fd"; }
+.bi-grip-vertical::before { content: "\f3fe"; }
+.bi-hammer::before { content: "\f3ff"; }
+.bi-hand-index-fill::before { content: "\f400"; }
+.bi-hand-index-thumb-fill::before { content: "\f401"; }
+.bi-hand-index-thumb::before { content: "\f402"; }
+.bi-hand-index::before { content: "\f403"; }
+.bi-hand-thumbs-down-fill::before { content: "\f404"; }
+.bi-hand-thumbs-down::before { content: "\f405"; }
+.bi-hand-thumbs-up-fill::before { content: "\f406"; }
+.bi-hand-thumbs-up::before { content: "\f407"; }
+.bi-handbag-fill::before { content: "\f408"; }
+.bi-handbag::before { content: "\f409"; }
+.bi-hash::before { content: "\f40a"; }
+.bi-hdd-fill::before { content: "\f40b"; }
+.bi-hdd-network-fill::before { content: "\f40c"; }
+.bi-hdd-network::before { content: "\f40d"; }
+.bi-hdd-rack-fill::before { content: "\f40e"; }
+.bi-hdd-rack::before { content: "\f40f"; }
+.bi-hdd-stack-fill::before { content: "\f410"; }
+.bi-hdd-stack::before { content: "\f411"; }
+.bi-hdd::before { content: "\f412"; }
+.bi-headphones::before { content: "\f413"; }
+.bi-headset::before { content: "\f414"; }
+.bi-heart-fill::before { content: "\f415"; }
+.bi-heart-half::before { content: "\f416"; }
+.bi-heart::before { content: "\f417"; }
+.bi-heptagon-fill::before { content: "\f418"; }
+.bi-heptagon-half::before { content: "\f419"; }
+.bi-heptagon::before { content: "\f41a"; }
+.bi-hexagon-fill::before { content: "\f41b"; }
+.bi-hexagon-half::before { content: "\f41c"; }
+.bi-hexagon::before { content: "\f41d"; }
+.bi-hourglass-bottom::before { content: "\f41e"; }
+.bi-hourglass-split::before { content: "\f41f"; }
+.bi-hourglass-top::before { content: "\f420"; }
+.bi-hourglass::before { content: "\f421"; }
+.bi-house-door-fill::before { content: "\f422"; }
+.bi-house-door::before { content: "\f423"; }
+.bi-house-fill::before { content: "\f424"; }
+.bi-house::before { content: "\f425"; }
+.bi-hr::before { content: "\f426"; }
+.bi-hurricane::before { content: "\f427"; }
+.bi-image-alt::before { content: "\f428"; }
+.bi-image-fill::before { content: "\f429"; }
+.bi-image::before { content: "\f42a"; }
+.bi-images::before { content: "\f42b"; }
+.bi-inbox-fill::before { content: "\f42c"; }
+.bi-inbox::before { content: "\f42d"; }
+.bi-inboxes-fill::before { content: "\f42e"; }
+.bi-inboxes::before { content: "\f42f"; }
+.bi-info-circle-fill::before { content: "\f430"; }
+.bi-info-circle::before { content: "\f431"; }
+.bi-info-square-fill::before { content: "\f432"; }
+.bi-info-square::before { content: "\f433"; }
+.bi-info::before { content: "\f434"; }
+.bi-input-cursor-text::before { content: "\f435"; }
+.bi-input-cursor::before { content: "\f436"; }
+.bi-instagram::before { content: "\f437"; }
+.bi-intersect::before { content: "\f438"; }
+.bi-journal-album::before { content: "\f439"; }
+.bi-journal-arrow-down::before { content: "\f43a"; }
+.bi-journal-arrow-up::before { content: "\f43b"; }
+.bi-journal-bookmark-fill::before { content: "\f43c"; }
+.bi-journal-bookmark::before { content: "\f43d"; }
+.bi-journal-check::before { content: "\f43e"; }
+.bi-journal-code::before { content: "\f43f"; }
+.bi-journal-medical::before { content: "\f440"; }
+.bi-journal-minus::before { content: "\f441"; }
+.bi-journal-plus::before { content: "\f442"; }
+.bi-journal-richtext::before { content: "\f443"; }
+.bi-journal-text::before { content: "\f444"; }
+.bi-journal-x::before { content: "\f445"; }
+.bi-journal::before { content: "\f446"; }
+.bi-journals::before { content: "\f447"; }
+.bi-joystick::before { content: "\f448"; }
+.bi-justify-left::before { content: "\f449"; }
+.bi-justify-right::before { content: "\f44a"; }
+.bi-justify::before { content: "\f44b"; }
+.bi-kanban-fill::before { content: "\f44c"; }
+.bi-kanban::before { content: "\f44d"; }
+.bi-key-fill::before { content: "\f44e"; }
+.bi-key::before { content: "\f44f"; }
+.bi-keyboard-fill::before { content: "\f450"; }
+.bi-keyboard::before { content: "\f451"; }
+.bi-ladder::before { content: "\f452"; }
+.bi-lamp-fill::before { content: "\f453"; }
+.bi-lamp::before { content: "\f454"; }
+.bi-laptop-fill::before { content: "\f455"; }
+.bi-laptop::before { content: "\f456"; }
+.bi-layer-backward::before { content: "\f457"; }
+.bi-layer-forward::before { content: "\f458"; }
+.bi-layers-fill::before { content: "\f459"; }
+.bi-layers-half::before { content: "\f45a"; }
+.bi-layers::before { content: "\f45b"; }
+.bi-layout-sidebar-inset-reverse::before { content: "\f45c"; }
+.bi-layout-sidebar-inset::before { content: "\f45d"; }
+.bi-layout-sidebar-reverse::before { content: "\f45e"; }
+.bi-layout-sidebar::before { content: "\f45f"; }
+.bi-layout-split::before { content: "\f460"; }
+.bi-layout-text-sidebar-reverse::before { content: "\f461"; }
+.bi-layout-text-sidebar::before { content: "\f462"; }
+.bi-layout-text-window-reverse::before { content: "\f463"; }
+.bi-layout-text-window::before { content: "\f464"; }
+.bi-layout-three-columns::before { content: "\f465"; }
+.bi-layout-wtf::before { content: "\f466"; }
+.bi-life-preserver::before { content: "\f467"; }
+.bi-lightbulb-fill::before { content: "\f468"; }
+.bi-lightbulb-off-fill::before { content: "\f469"; }
+.bi-lightbulb-off::before { content: "\f46a"; }
+.bi-lightbulb::before { content: "\f46b"; }
+.bi-lightning-charge-fill::before { content: "\f46c"; }
+.bi-lightning-charge::before { content: "\f46d"; }
+.bi-lightning-fill::before { content: "\f46e"; }
+.bi-lightning::before { content: "\f46f"; }
+.bi-link-45deg::before { content: "\f470"; }
+.bi-link::before { content: "\f471"; }
+.bi-linkedin::before { content: "\f472"; }
+.bi-list-check::before { content: "\f473"; }
+.bi-list-nested::before { content: "\f474"; }
+.bi-list-ol::before { content: "\f475"; }
+.bi-list-stars::before { content: "\f476"; }
+.bi-list-task::before { content: "\f477"; }
+.bi-list-ul::before { content: "\f478"; }
+.bi-list::before { content: "\f479"; }
+.bi-lock-fill::before { content: "\f47a"; }
+.bi-lock::before { content: "\f47b"; }
+.bi-mailbox::before { content: "\f47c"; }
+.bi-mailbox2::before { content: "\f47d"; }
+.bi-map-fill::before { content: "\f47e"; }
+.bi-map::before { content: "\f47f"; }
+.bi-markdown-fill::before { content: "\f480"; }
+.bi-markdown::before { content: "\f481"; }
+.bi-mask::before { content: "\f482"; }
+.bi-megaphone-fill::before { content: "\f483"; }
+.bi-megaphone::before { content: "\f484"; }
+.bi-menu-app-fill::before { content: "\f485"; }
+.bi-menu-app::before { content: "\f486"; }
+.bi-menu-button-fill::before { content: "\f487"; }
+.bi-menu-button-wide-fill::before { content: "\f488"; }
+.bi-menu-button-wide::before { content: "\f489"; }
+.bi-menu-button::before { content: "\f48a"; }
+.bi-menu-down::before { content: "\f48b"; }
+.bi-menu-up::before { content: "\f48c"; }
+.bi-mic-fill::before { content: "\f48d"; }
+.bi-mic-mute-fill::before { content: "\f48e"; }
+.bi-mic-mute::before { content: "\f48f"; }
+.bi-mic::before { content: "\f490"; }
+.bi-minecart-loaded::before { content: "\f491"; }
+.bi-minecart::before { content: "\f492"; }
+.bi-moisture::before { content: "\f493"; }
+.bi-moon-fill::before { content: "\f494"; }
+.bi-moon-stars-fill::before { content: "\f495"; }
+.bi-moon-stars::before { content: "\f496"; }
+.bi-moon::before { content: "\f497"; }
+.bi-mouse-fill::before { content: "\f498"; }
+.bi-mouse::before { content: "\f499"; }
+.bi-mouse2-fill::before { content: "\f49a"; }
+.bi-mouse2::before { content: "\f49b"; }
+.bi-mouse3-fill::before { content: "\f49c"; }
+.bi-mouse3::before { content: "\f49d"; }
+.bi-music-note-beamed::before { content: "\f49e"; }
+.bi-music-note-list::before { content: "\f49f"; }
+.bi-music-note::before { content: "\f4a0"; }
+.bi-music-player-fill::before { content: "\f4a1"; }
+.bi-music-player::before { content: "\f4a2"; }
+.bi-newspaper::before { content: "\f4a3"; }
+.bi-node-minus-fill::before { content: "\f4a4"; }
+.bi-node-minus::before { content: "\f4a5"; }
+.bi-node-plus-fill::before { content: "\f4a6"; }
+.bi-node-plus::before { content: "\f4a7"; }
+.bi-nut-fill::before { content: "\f4a8"; }
+.bi-nut::before { content: "\f4a9"; }
+.bi-octagon-fill::before { content: "\f4aa"; }
+.bi-octagon-half::before { content: "\f4ab"; }
+.bi-octagon::before { content: "\f4ac"; }
+.bi-option::before { content: "\f4ad"; }
+.bi-outlet::before { content: "\f4ae"; }
+.bi-paint-bucket::before { content: "\f4af"; }
+.bi-palette-fill::before { content: "\f4b0"; }
+.bi-palette::before { content: "\f4b1"; }
+.bi-palette2::before { content: "\f4b2"; }
+.bi-paperclip::before { content: "\f4b3"; }
+.bi-paragraph::before { content: "\f4b4"; }
+.bi-patch-check-fill::before { content: "\f4b5"; }
+.bi-patch-check::before { content: "\f4b6"; }
+.bi-patch-exclamation-fill::before { content: "\f4b7"; }
+.bi-patch-exclamation::before { content: "\f4b8"; }
+.bi-patch-minus-fill::before { content: "\f4b9"; }
+.bi-patch-minus::before { content: "\f4ba"; }
+.bi-patch-plus-fill::before { content: "\f4bb"; }
+.bi-patch-plus::before { content: "\f4bc"; }
+.bi-patch-question-fill::before { content: "\f4bd"; }
+.bi-patch-question::before { content: "\f4be"; }
+.bi-pause-btn-fill::before { content: "\f4bf"; }
+.bi-pause-btn::before { content: "\f4c0"; }
+.bi-pause-circle-fill::before { content: "\f4c1"; }
+.bi-pause-circle::before { content: "\f4c2"; }
+.bi-pause-fill::before { content: "\f4c3"; }
+.bi-pause::before { content: "\f4c4"; }
+.bi-peace-fill::before { content: "\f4c5"; }
+.bi-peace::before { content: "\f4c6"; }
+.bi-pen-fill::before { content: "\f4c7"; }
+.bi-pen::before { content: "\f4c8"; }
+.bi-pencil-fill::before { content: "\f4c9"; }
+.bi-pencil-square::before { content: "\f4ca"; }
+.bi-pencil::before { content: "\f4cb"; }
+.bi-pentagon-fill::before { content: "\f4cc"; }
+.bi-pentagon-half::before { content: "\f4cd"; }
+.bi-pentagon::before { content: "\f4ce"; }
+.bi-people-fill::before { content: "\f4cf"; }
+.bi-people::before { content: "\f4d0"; }
+.bi-percent::before { content: "\f4d1"; }
+.bi-person-badge-fill::before { content: "\f4d2"; }
+.bi-person-badge::before { content: "\f4d3"; }
+.bi-person-bounding-box::before { content: "\f4d4"; }
+.bi-person-check-fill::before { content: "\f4d5"; }
+.bi-person-check::before { content: "\f4d6"; }
+.bi-person-circle::before { content: "\f4d7"; }
+.bi-person-dash-fill::before { content: "\f4d8"; }
+.bi-person-dash::before { content: "\f4d9"; }
+.bi-person-fill::before { content: "\f4da"; }
+.bi-person-lines-fill::before { content: "\f4db"; }
+.bi-person-plus-fill::before { content: "\f4dc"; }
+.bi-person-plus::before { content: "\f4dd"; }
+.bi-person-square::before { content: "\f4de"; }
+.bi-person-x-fill::before { content: "\f4df"; }
+.bi-person-x::before { content: "\f4e0"; }
+.bi-person::before { content: "\f4e1"; }
+.bi-phone-fill::before { content: "\f4e2"; }
+.bi-phone-landscape-fill::before { content: "\f4e3"; }
+.bi-phone-landscape::before { content: "\f4e4"; }
+.bi-phone-vibrate-fill::before { content: "\f4e5"; }
+.bi-phone-vibrate::before { content: "\f4e6"; }
+.bi-phone::before { content: "\f4e7"; }
+.bi-pie-chart-fill::before { content: "\f4e8"; }
+.bi-pie-chart::before { content: "\f4e9"; }
+.bi-pin-angle-fill::before { content: "\f4ea"; }
+.bi-pin-angle::before { content: "\f4eb"; }
+.bi-pin-fill::before { content: "\f4ec"; }
+.bi-pin::before { content: "\f4ed"; }
+.bi-pip-fill::before { content: "\f4ee"; }
+.bi-pip::before { content: "\f4ef"; }
+.bi-play-btn-fill::before { content: "\f4f0"; }
+.bi-play-btn::before { content: "\f4f1"; }
+.bi-play-circle-fill::before { content: "\f4f2"; }
+.bi-play-circle::before { content: "\f4f3"; }
+.bi-play-fill::before { content: "\f4f4"; }
+.bi-play::before { content: "\f4f5"; }
+.bi-plug-fill::before { content: "\f4f6"; }
+.bi-plug::before { content: "\f4f7"; }
+.bi-plus-circle-dotted::before { content: "\f4f8"; }
+.bi-plus-circle-fill::before { content: "\f4f9"; }
+.bi-plus-circle::before { content: "\f4fa"; }
+.bi-plus-square-dotted::before { content: "\f4fb"; }
+.bi-plus-square-fill::before { content: "\f4fc"; }
+.bi-plus-square::before { content: "\f4fd"; }
+.bi-plus::before { content: "\f4fe"; }
+.bi-power::before { content: "\f4ff"; }
+.bi-printer-fill::before { content: "\f500"; }
+.bi-printer::before { content: "\f501"; }
+.bi-puzzle-fill::before { content: "\f502"; }
+.bi-puzzle::before { content: "\f503"; }
+.bi-question-circle-fill::before { content: "\f504"; }
+.bi-question-circle::before { content: "\f505"; }
+.bi-question-diamond-fill::before { content: "\f506"; }
+.bi-question-diamond::before { content: "\f507"; }
+.bi-question-octagon-fill::before { content: "\f508"; }
+.bi-question-octagon::before { content: "\f509"; }
+.bi-question-square-fill::before { content: "\f50a"; }
+.bi-question-square::before { content: "\f50b"; }
+.bi-question::before { content: "\f50c"; }
+.bi-rainbow::before { content: "\f50d"; }
+.bi-receipt-cutoff::before { content: "\f50e"; }
+.bi-receipt::before { content: "\f50f"; }
+.bi-reception-0::before { content: "\f510"; }
+.bi-reception-1::before { content: "\f511"; }
+.bi-reception-2::before { content: "\f512"; }
+.bi-reception-3::before { content: "\f513"; }
+.bi-reception-4::before { content: "\f514"; }
+.bi-record-btn-fill::before { content: "\f515"; }
+.bi-record-btn::before { content: "\f516"; }
+.bi-record-circle-fill::before { content: "\f517"; }
+.bi-record-circle::before { content: "\f518"; }
+.bi-record-fill::before { content: "\f519"; }
+.bi-record::before { content: "\f51a"; }
+.bi-record2-fill::before { content: "\f51b"; }
+.bi-record2::before { content: "\f51c"; }
+.bi-reply-all-fill::before { content: "\f51d"; }
+.bi-reply-all::before { content: "\f51e"; }
+.bi-reply-fill::before { content: "\f51f"; }
+.bi-reply::before { content: "\f520"; }
+.bi-rss-fill::before { content: "\f521"; }
+.bi-rss::before { content: "\f522"; }
+.bi-rulers::before { content: "\f523"; }
+.bi-save-fill::before { content: "\f524"; }
+.bi-save::before { content: "\f525"; }
+.bi-save2-fill::before { content: "\f526"; }
+.bi-save2::before { content: "\f527"; }
+.bi-scissors::before { content: "\f528"; }
+.bi-screwdriver::before { content: "\f529"; }
+.bi-search::before { content: "\f52a"; }
+.bi-segmented-nav::before { content: "\f52b"; }
+.bi-server::before { content: "\f52c"; }
+.bi-share-fill::before { content: "\f52d"; }
+.bi-share::before { content: "\f52e"; }
+.bi-shield-check::before { content: "\f52f"; }
+.bi-shield-exclamation::before { content: "\f530"; }
+.bi-shield-fill-check::before { content: "\f531"; }
+.bi-shield-fill-exclamation::before { content: "\f532"; }
+.bi-shield-fill-minus::before { content: "\f533"; }
+.bi-shield-fill-plus::before { content: "\f534"; }
+.bi-shield-fill-x::before { content: "\f535"; }
+.bi-shield-fill::before { content: "\f536"; }
+.bi-shield-lock-fill::before { content: "\f537"; }
+.bi-shield-lock::before { content: "\f538"; }
+.bi-shield-minus::before { content: "\f539"; }
+.bi-shield-plus::before { content: "\f53a"; }
+.bi-shield-shaded::before { content: "\f53b"; }
+.bi-shield-slash-fill::before { content: "\f53c"; }
+.bi-shield-slash::before { content: "\f53d"; }
+.bi-shield-x::before { content: "\f53e"; }
+.bi-shield::before { content: "\f53f"; }
+.bi-shift-fill::before { content: "\f540"; }
+.bi-shift::before { content: "\f541"; }
+.bi-shop-window::before { content: "\f542"; }
+.bi-shop::before { content: "\f543"; }
+.bi-shuffle::before { content: "\f544"; }
+.bi-signpost-2-fill::before { content: "\f545"; }
+.bi-signpost-2::before { content: "\f546"; }
+.bi-signpost-fill::before { content: "\f547"; }
+.bi-signpost-split-fill::before { content: "\f548"; }
+.bi-signpost-split::before { content: "\f549"; }
+.bi-signpost::before { content: "\f54a"; }
+.bi-sim-fill::before { content: "\f54b"; }
+.bi-sim::before { content: "\f54c"; }
+.bi-skip-backward-btn-fill::before { content: "\f54d"; }
+.bi-skip-backward-btn::before { content: "\f54e"; }
+.bi-skip-backward-circle-fill::before { content: "\f54f"; }
+.bi-skip-backward-circle::before { content: "\f550"; }
+.bi-skip-backward-fill::before { content: "\f551"; }
+.bi-skip-backward::before { content: "\f552"; }
+.bi-skip-end-btn-fill::before { content: "\f553"; }
+.bi-skip-end-btn::before { content: "\f554"; }
+.bi-skip-end-circle-fill::before { content: "\f555"; }
+.bi-skip-end-circle::before { content: "\f556"; }
+.bi-skip-end-fill::before { content: "\f557"; }
+.bi-skip-end::before { content: "\f558"; }
+.bi-skip-forward-btn-fill::before { content: "\f559"; }
+.bi-skip-forward-btn::before { content: "\f55a"; }
+.bi-skip-forward-circle-fill::before { content: "\f55b"; }
+.bi-skip-forward-circle::before { content: "\f55c"; }
+.bi-skip-forward-fill::before { content: "\f55d"; }
+.bi-skip-forward::before { content: "\f55e"; }
+.bi-skip-start-btn-fill::before { content: "\f55f"; }
+.bi-skip-start-btn::before { content: "\f560"; }
+.bi-skip-start-circle-fill::before { content: "\f561"; }
+.bi-skip-start-circle::before { content: "\f562"; }
+.bi-skip-start-fill::before { content: "\f563"; }
+.bi-skip-start::before { content: "\f564"; }
+.bi-slack::before { content: "\f565"; }
+.bi-slash-circle-fill::before { content: "\f566"; }
+.bi-slash-circle::before { content: "\f567"; }
+.bi-slash-square-fill::before { content: "\f568"; }
+.bi-slash-square::before { content: "\f569"; }
+.bi-slash::before { content: "\f56a"; }
+.bi-sliders::before { content: "\f56b"; }
+.bi-smartwatch::before { content: "\f56c"; }
+.bi-snow::before { content: "\f56d"; }
+.bi-snow2::before { content: "\f56e"; }
+.bi-snow3::before { content: "\f56f"; }
+.bi-sort-alpha-down-alt::before { content: "\f570"; }
+.bi-sort-alpha-down::before { content: "\f571"; }
+.bi-sort-alpha-up-alt::before { content: "\f572"; }
+.bi-sort-alpha-up::before { content: "\f573"; }
+.bi-sort-down-alt::before { content: "\f574"; }
+.bi-sort-down::before { content: "\f575"; }
+.bi-sort-numeric-down-alt::before { content: "\f576"; }
+.bi-sort-numeric-down::before { content: "\f577"; }
+.bi-sort-numeric-up-alt::before { content: "\f578"; }
+.bi-sort-numeric-up::before { content: "\f579"; }
+.bi-sort-up-alt::before { content: "\f57a"; }
+.bi-sort-up::before { content: "\f57b"; }
+.bi-soundwave::before { content: "\f57c"; }
+.bi-speaker-fill::before { content: "\f57d"; }
+.bi-speaker::before { content: "\f57e"; }
+.bi-speedometer::before { content: "\f57f"; }
+.bi-speedometer2::before { content: "\f580"; }
+.bi-spellcheck::before { content: "\f581"; }
+.bi-square-fill::before { content: "\f582"; }
+.bi-square-half::before { content: "\f583"; }
+.bi-square::before { content: "\f584"; }
+.bi-stack::before { content: "\f585"; }
+.bi-star-fill::before { content: "\f586"; }
+.bi-star-half::before { content: "\f587"; }
+.bi-star::before { content: "\f588"; }
+.bi-stars::before { content: "\f589"; }
+.bi-stickies-fill::before { content: "\f58a"; }
+.bi-stickies::before { content: "\f58b"; }
+.bi-sticky-fill::before { content: "\f58c"; }
+.bi-sticky::before { content: "\f58d"; }
+.bi-stop-btn-fill::before { content: "\f58e"; }
+.bi-stop-btn::before { content: "\f58f"; }
+.bi-stop-circle-fill::before { content: "\f590"; }
+.bi-stop-circle::before { content: "\f591"; }
+.bi-stop-fill::before { content: "\f592"; }
+.bi-stop::before { content: "\f593"; }
+.bi-stoplights-fill::before { content: "\f594"; }
+.bi-stoplights::before { content: "\f595"; }
+.bi-stopwatch-fill::before { content: "\f596"; }
+.bi-stopwatch::before { content: "\f597"; }
+.bi-subtract::before { content: "\f598"; }
+.bi-suit-club-fill::before { content: "\f599"; }
+.bi-suit-club::before { content: "\f59a"; }
+.bi-suit-diamond-fill::before { content: "\f59b"; }
+.bi-suit-diamond::before { content: "\f59c"; }
+.bi-suit-heart-fill::before { content: "\f59d"; }
+.bi-suit-heart::before { content: "\f59e"; }
+.bi-suit-spade-fill::before { content: "\f59f"; }
+.bi-suit-spade::before { content: "\f5a0"; }
+.bi-sun-fill::before { content: "\f5a1"; }
+.bi-sun::before { content: "\f5a2"; }
+.bi-sunglasses::before { content: "\f5a3"; }
+.bi-sunrise-fill::before { content: "\f5a4"; }
+.bi-sunrise::before { content: "\f5a5"; }
+.bi-sunset-fill::before { content: "\f5a6"; }
+.bi-sunset::before { content: "\f5a7"; }
+.bi-symmetry-horizontal::before { content: "\f5a8"; }
+.bi-symmetry-vertical::before { content: "\f5a9"; }
+.bi-table::before { content: "\f5aa"; }
+.bi-tablet-fill::before { content: "\f5ab"; }
+.bi-tablet-landscape-fill::before { content: "\f5ac"; }
+.bi-tablet-landscape::before { content: "\f5ad"; }
+.bi-tablet::before { content: "\f5ae"; }
+.bi-tag-fill::before { content: "\f5af"; }
+.bi-tag::before { content: "\f5b0"; }
+.bi-tags-fill::before { content: "\f5b1"; }
+.bi-tags::before { content: "\f5b2"; }
+.bi-telegram::before { content: "\f5b3"; }
+.bi-telephone-fill::before { content: "\f5b4"; }
+.bi-telephone-forward-fill::before { content: "\f5b5"; }
+.bi-telephone-forward::before { content: "\f5b6"; }
+.bi-telephone-inbound-fill::before { content: "\f5b7"; }
+.bi-telephone-inbound::before { content: "\f5b8"; }
+.bi-telephone-minus-fill::before { content: "\f5b9"; }
+.bi-telephone-minus::before { content: "\f5ba"; }
+.bi-telephone-outbound-fill::before { content: "\f5bb"; }
+.bi-telephone-outbound::before { content: "\f5bc"; }
+.bi-telephone-plus-fill::before { content: "\f5bd"; }
+.bi-telephone-plus::before { content: "\f5be"; }
+.bi-telephone-x-fill::before { content: "\f5bf"; }
+.bi-telephone-x::before { content: "\f5c0"; }
+.bi-telephone::before { content: "\f5c1"; }
+.bi-terminal-fill::before { content: "\f5c2"; }
+.bi-terminal::before { content: "\f5c3"; }
+.bi-text-center::before { content: "\f5c4"; }
+.bi-text-indent-left::before { content: "\f5c5"; }
+.bi-text-indent-right::before { content: "\f5c6"; }
+.bi-text-left::before { content: "\f5c7"; }
+.bi-text-paragraph::before { content: "\f5c8"; }
+.bi-text-right::before { content: "\f5c9"; }
+.bi-textarea-resize::before { content: "\f5ca"; }
+.bi-textarea-t::before { content: "\f5cb"; }
+.bi-textarea::before { content: "\f5cc"; }
+.bi-thermometer-half::before { content: "\f5cd"; }
+.bi-thermometer-high::before { content: "\f5ce"; }
+.bi-thermometer-low::before { content: "\f5cf"; }
+.bi-thermometer-snow::before { content: "\f5d0"; }
+.bi-thermometer-sun::before { content: "\f5d1"; }
+.bi-thermometer::before { content: "\f5d2"; }
+.bi-three-dots-vertical::before { content: "\f5d3"; }
+.bi-three-dots::before { content: "\f5d4"; }
+.bi-toggle-off::before { content: "\f5d5"; }
+.bi-toggle-on::before { content: "\f5d6"; }
+.bi-toggle2-off::before { content: "\f5d7"; }
+.bi-toggle2-on::before { content: "\f5d8"; }
+.bi-toggles::before { content: "\f5d9"; }
+.bi-toggles2::before { content: "\f5da"; }
+.bi-tools::before { content: "\f5db"; }
+.bi-tornado::before { content: "\f5dc"; }
+.bi-trash-fill::before { content: "\f5dd"; }
+.bi-trash::before { content: "\f5de"; }
+.bi-trash2-fill::before { content: "\f5df"; }
+.bi-trash2::before { content: "\f5e0"; }
+.bi-tree-fill::before { content: "\f5e1"; }
+.bi-tree::before { content: "\f5e2"; }
+.bi-triangle-fill::before { content: "\f5e3"; }
+.bi-triangle-half::before { content: "\f5e4"; }
+.bi-triangle::before { content: "\f5e5"; }
+.bi-trophy-fill::before { content: "\f5e6"; }
+.bi-trophy::before { content: "\f5e7"; }
+.bi-tropical-storm::before { content: "\f5e8"; }
+.bi-truck-flatbed::before { content: "\f5e9"; }
+.bi-truck::before { content: "\f5ea"; }
+.bi-tsunami::before { content: "\f5eb"; }
+.bi-tv-fill::before { content: "\f5ec"; }
+.bi-tv::before { content: "\f5ed"; }
+.bi-twitch::before { content: "\f5ee"; }
+.bi-twitter::before { content: "\f5ef"; }
+.bi-type-bold::before { content: "\f5f0"; }
+.bi-type-h1::before { content: "\f5f1"; }
+.bi-type-h2::before { content: "\f5f2"; }
+.bi-type-h3::before { content: "\f5f3"; }
+.bi-type-italic::before { content: "\f5f4"; }
+.bi-type-strikethrough::before { content: "\f5f5"; }
+.bi-type-underline::before { content: "\f5f6"; }
+.bi-type::before { content: "\f5f7"; }
+.bi-ui-checks-grid::before { content: "\f5f8"; }
+.bi-ui-checks::before { content: "\f5f9"; }
+.bi-ui-radios-grid::before { content: "\f5fa"; }
+.bi-ui-radios::before { content: "\f5fb"; }
+.bi-umbrella-fill::before { content: "\f5fc"; }
+.bi-umbrella::before { content: "\f5fd"; }
+.bi-union::before { content: "\f5fe"; }
+.bi-unlock-fill::before { content: "\f5ff"; }
+.bi-unlock::before { content: "\f600"; }
+.bi-upc-scan::before { content: "\f601"; }
+.bi-upc::before { content: "\f602"; }
+.bi-upload::before { content: "\f603"; }
+.bi-vector-pen::before { content: "\f604"; }
+.bi-view-list::before { content: "\f605"; }
+.bi-view-stacked::before { content: "\f606"; }
+.bi-vinyl-fill::before { content: "\f607"; }
+.bi-vinyl::before { content: "\f608"; }
+.bi-voicemail::before { content: "\f609"; }
+.bi-volume-down-fill::before { content: "\f60a"; }
+.bi-volume-down::before { content: "\f60b"; }
+.bi-volume-mute-fill::before { content: "\f60c"; }
+.bi-volume-mute::before { content: "\f60d"; }
+.bi-volume-off-fill::before { content: "\f60e"; }
+.bi-volume-off::before { content: "\f60f"; }
+.bi-volume-up-fill::before { content: "\f610"; }
+.bi-volume-up::before { content: "\f611"; }
+.bi-vr::before { content: "\f612"; }
+.bi-wallet-fill::before { content: "\f613"; }
+.bi-wallet::before { content: "\f614"; }
+.bi-wallet2::before { content: "\f615"; }
+.bi-watch::before { content: "\f616"; }
+.bi-water::before { content: "\f617"; }
+.bi-whatsapp::before { content: "\f618"; }
+.bi-wifi-1::before { content: "\f619"; }
+.bi-wifi-2::before { content: "\f61a"; }
+.bi-wifi-off::before { content: "\f61b"; }
+.bi-wifi::before { content: "\f61c"; }
+.bi-wind::before { content: "\f61d"; }
+.bi-window-dock::before { content: "\f61e"; }
+.bi-window-sidebar::before { content: "\f61f"; }
+.bi-window::before { content: "\f620"; }
+.bi-wrench::before { content: "\f621"; }
+.bi-x-circle-fill::before { content: "\f622"; }
+.bi-x-circle::before { content: "\f623"; }
+.bi-x-diamond-fill::before { content: "\f624"; }
+.bi-x-diamond::before { content: "\f625"; }
+.bi-x-octagon-fill::before { content: "\f626"; }
+.bi-x-octagon::before { content: "\f627"; }
+.bi-x-square-fill::before { content: "\f628"; }
+.bi-x-square::before { content: "\f629"; }
+.bi-x::before { content: "\f62a"; }
+.bi-youtube::before { content: "\f62b"; }
+.bi-zoom-in::before { content: "\f62c"; }
+.bi-zoom-out::before { content: "\f62d"; }
+.bi-bank::before { content: "\f62e"; }
+.bi-bank2::before { content: "\f62f"; }
+.bi-bell-slash-fill::before { content: "\f630"; }
+.bi-bell-slash::before { content: "\f631"; }
+.bi-cash-coin::before { content: "\f632"; }
+.bi-check-lg::before { content: "\f633"; }
+.bi-coin::before { content: "\f634"; }
+.bi-currency-bitcoin::before { content: "\f635"; }
+.bi-currency-dollar::before { content: "\f636"; }
+.bi-currency-euro::before { content: "\f637"; }
+.bi-currency-exchange::before { content: "\f638"; }
+.bi-currency-pound::before { content: "\f639"; }
+.bi-currency-yen::before { content: "\f63a"; }
+.bi-dash-lg::before { content: "\f63b"; }
+.bi-exclamation-lg::before { content: "\f63c"; }
+.bi-file-earmark-pdf-fill::before { content: "\f63d"; }
+.bi-file-earmark-pdf::before { content: "\f63e"; }
+.bi-file-pdf-fill::before { content: "\f63f"; }
+.bi-file-pdf::before { content: "\f640"; }
+.bi-gender-ambiguous::before { content: "\f641"; }
+.bi-gender-female::before { content: "\f642"; }
+.bi-gender-male::before { content: "\f643"; }
+.bi-gender-trans::before { content: "\f644"; }
+.bi-headset-vr::before { content: "\f645"; }
+.bi-info-lg::before { content: "\f646"; }
+.bi-mastodon::before { content: "\f647"; }
+.bi-messenger::before { content: "\f648"; }
+.bi-piggy-bank-fill::before { content: "\f649"; }
+.bi-piggy-bank::before { content: "\f64a"; }
+.bi-pin-map-fill::before { content: "\f64b"; }
+.bi-pin-map::before { content: "\f64c"; }
+.bi-plus-lg::before { content: "\f64d"; }
+.bi-question-lg::before { content: "\f64e"; }
+.bi-recycle::before { content: "\f64f"; }
+.bi-reddit::before { content: "\f650"; }
+.bi-safe-fill::before { content: "\f651"; }
+.bi-safe2-fill::before { content: "\f652"; }
+.bi-safe2::before { content: "\f653"; }
+.bi-sd-card-fill::before { content: "\f654"; }
+.bi-sd-card::before { content: "\f655"; }
+.bi-skype::before { content: "\f656"; }
+.bi-slash-lg::before { content: "\f657"; }
+.bi-translate::before { content: "\f658"; }
+.bi-x-lg::before { content: "\f659"; }
+.bi-safe::before { content: "\f65a"; }
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/build/014-responsive.css b/mailcow/src/mailcow-dockerized/data/web/css/build/014-responsive.css
new file mode 100644
index 0000000..2085568
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/build/014-responsive.css
@@ -0,0 +1,302 @@
+.space20 {
+  margin-bottom: 20px;
+}
+
+.btn-xs-lg>.lang-sm:after {
+  margin-left: 4px;
+}
+
+.bootstrap-select {
+  max-width: 350px;
+}
+
+.panel-login .apps .btn {
+  width: auto;
+  float: left;
+  margin-right: 10px;
+  margin-top: auto;
+}
+.panel-login .apps .btn:hover {
+  margin-top: 1px !important;
+  border-bottom-width: 3px;
+}
+
+@media (max-width: 767px) {
+  .panel-login .apps .btn {
+    width: 100%;
+    float: none;
+    margin-bottom: 10px;
+  }
+
+  .panel-login .apps .btn {
+    border-bottom-width: 4px;
+  }
+
+  .media-clearfix::after {
+    clear: both;
+    box-sizing: border-box;
+  }
+
+  .media-clearfix::before {
+    display: table;
+    content: " ";
+    box-sizing: border-box;
+  }
+
+  .xs-show {
+    display: block !important;
+  }
+
+  .js-tabcollapse-panel-group .panel{
+    border: none;
+    box-shadow: none;
+  }
+
+  .js-tabcollapse-panel-group .panel-body {
+    padding: 10px 0;
+  }
+
+  .js-tabcollapse-panel-group .js-tabcollapse-panel-body .panel-body {
+    padding: 0;
+  }
+
+  .js-tabcollapse-panel-body .panel-heading {
+    display: none;
+  }
+
+  .js-tabcollapse-panel-body .well,
+  .panel-body .form-inline.well {
+    border: none;
+    padding: 0;
+    margin: 0;
+    box-shadow: none;
+    background-color: #fff;
+  }
+
+  .js-tabcollapse-panel-heading {
+    display: block;
+    height: 37px;
+    line-height: 37px;
+    text-indent: 15px;
+  }
+  .js-tabcollapse-panel-heading:hover {
+    text-decoration: none;
+  }
+  .js-tabcollapse-panel-heading {
+    position: relative;
+  }
+  .js-tabcollapse-panel-heading:after {
+    content: '';
+    display: block;
+    position: absolute;
+    top: 17px;
+    right: 17px;
+    width: 0;
+    height: 0;
+    margin-left: 2px;
+    vertical-align: middle;
+    border-bottom: 4px dashed;
+    border-right: 4px solid transparent;
+    border-left: 4px solid transparent;
+  }
+  .js-tabcollapse-panel-heading.collapsed:after {
+    border-bottom: none;
+    border-top: 4px dashed;
+  }
+
+  .recent-login-success {
+  font-size: 14px;
+  margin-top: 10px !important;
+  }
+  .pull-xs-right {
+  float: right !important;
+  }
+  .pull-xs-right .dropdown-menu {
+  right: 0;
+  left: auto;
+  }
+  .text-xs-left {
+    text-align: left;
+  }
+  .text-xs-bold {
+    font-weight: bold;
+  }
+  .text-xs-bold .small {
+    font-weight: normal;
+    text-align: justify;
+  }
+  .help-block {
+    text-align: justify;
+  }
+  .btn.visible-xs-block {
+    width: 100%;
+    float: none;
+    white-space: normal;
+  }
+  .btn-group.footable-actions .btn.btn-xs-half,
+  .btn.visible-xs-block.btn-xs-half {
+    width: 50%;
+    float: left;
+  }
+  .btn-group.footable-actions .btn.btn-xs-third,
+  .btn.visible-xs-block.btn-xs-third {
+    width: 33.33%;
+    float: left;
+  }
+  .btn-group.footable-actions .btn.btn-xs-quart,
+  .btn.visible-xs-block.btn-xs-quart {
+    width: 25%;
+    float: left;
+  }
+  .btn.visible-xs-block.btn-sm,
+  .btn-xs-lg {
+    padding: 15px 16px 13px;
+    line-height: 15px;
+  }
+  .input-xs-lg {
+  height: 47px;
+    padding: 13px 16px;
+  }
+  .btn-group:not(.input-group-btn) {
+    display: flex;
+    flex-wrap: wrap;
+  }
+  .panel-login .btn-group {
+    display: block;
+  }
+  .mass-actions-user .btn-group {
+    float: none;
+  }
+  div[class^='mass-actions'] .dropdown-menu,
+  .panel-xs-lg .dropdown-menu,
+  .dropdown-menu.login {
+    width: 100%;
+  }
+  div[class^='mass-actions'] .btn-group .dropdown-menu {
+  top: 50%;
+  }
+  div[class^='mass-actions'] .btn-group .btn-group .dropdown-menu,
+  div.mass-actions-quarantine .btn-group .dropdown-menu,
+  .panel-xs-lg .dropdown-menu {
+    top: 100%;
+  }
+  div[class^='mass-actions'] .dropdown-menu>li>a,
+  .panel-xs-lg .dropdown-menu>li>a,
+  .dropdown-menu.login>li>a {
+    padding: 8px 20px;
+  }
+  div[class^='mass-actions'] .dropdown-header {
+    font-size: 14px;
+    font-weight: bold;
+  }
+  .space20 {
+    margin-bottom: 10px;
+  }
+  .top100 {
+    top: 100% !important;
+  }
+  .top33 {
+    top: 33% !important;
+  }
+  .footable-filtering .form {
+    width: 65%;
+  }
+  .btn-xs-lg>.lang-sm:after {
+    top: 1px;
+  }
+  table.footable>tfoot>tr.footable-paging>td {
+    text-align: left;
+  }
+  .footable-first-visible {
+    min-width: 55px;
+  }
+  table>tbody>tr>td>span.footable-toggle {
+    font-size: 24px;
+    margin-right: 14px !important;
+  }
+  table>tbody>tr>td>span.footable-toggle + input {
+    position: absolute;
+    left: 38px;
+  }
+  .pagination {
+    margin-bottom: 5px;
+  }
+  tr.footable-filtering>th>form {
+    width: 270px;
+  }
+  .mass-actions-mailbox {
+    padding: 0;
+  }
+  .panel-xs-lg .panel-heading {
+    height: 66px;
+    line-height: 47px;
+  }
+  .panel-xs-lg .btn-group .btn {
+    padding-right: 5px;
+    padding-left: 5px;
+  }
+  .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
+    width: 100%;
+  }
+  .btn-group:not(.bootstrap-select) {
+    width: auto !important;
+  }
+  .bootstrap-select {
+    max-width: 100%;
+  }
+  .img-responsive {
+    margin: 0 auto;
+  }
+  .btn-group.footable-actions {
+  position: absolute;
+    width: 90vw !important;
+    left: 0;
+    height: 36px;
+    margin-top: -8px;
+  }
+  .btn-group.footable-actions .btn {
+  padding: 10px 16px 7px;
+    line-height: 15px;
+    display: block;
+    width: 100%;
+  }
+  .btn-group.footable-actions:after {
+    content: "";
+    display: block;
+    clear: both;
+  }
+  .bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text {
+    margin-right: 14px;
+    white-space: normal;
+  }
+  .clearfix {
+    flex-basis: 100%;
+    height: 0;
+  }
+  .btn-group > .btn-group {
+    flex-basis: 100%;
+  }
+  .btn-group .btn {
+  display: flex !important;
+  align-items: center;
+  justify-content: center;
+  }
+  .btn-group .btn i {
+    margin-right: 5px;
+  }
+  .btn-group .btn .caret {
+  margin-left: 5px;
+  }
+  .panel-login .btn-group .btn {
+    display: block !important;
+  }
+  .panel-login .clearfix {
+    height: auto;
+  }
+}
+
+@media (max-width: 350px) {
+  .mailcow-logo img {
+    max-width: 250px;
+  }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ad.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ad.svg
new file mode 100644
index 0000000..e7fc56a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ad.svg
@@ -0,0 +1,148 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ad" viewBox="0 0 512 512">
+  <path fill="#d0103a" d="M0 0h512v512H0z"/>
+  <path fill="#fedf00" d="M0 0h348.2v512H0z"/>
+  <path fill="#0018a8" d="M0 0h163.8v512H0z"/>
+  <path fill="#c7b37f" d="M240.3 173.3c6.2 0 8.7 5.3 14.9 5.3 3.8 0 6-1.2 9.3-3.1 2.4-1.3 3.8-2 6.5-2s4.4.8 5.8 3.1a9 9 0 011 5.4 32 32 0 01-2.1 6.7c-.5 1.2-1 2-1 3.3 0 3.3 4.4 4.4 7.4 4.5.7 0 6.3 0 9.7-3.4-1.9 0-4-1.5-4-3.4 0-2 1.5-3.5 3.5-4.1.4-.1 1 .2 1.4 0 .5-.2.2-.8.7-1.1 1-.8 1.6-1.3 2.9-1.3a3 3 0 012 .6c.3.2.5.6.9.6 1 0 1.4-.6 2.3-.6.7 0 1.2 0 1.8.4.6.3.6 1.2 1.2 1.2.3 0 1.9-.6 2.8-.6 1.7 0 2.7.6 3.8 2 .3.3.5 1 .8 1a5 5 0 013.9 2.4c.2.3.5 1.1.9 1.3.4.1.7.1 1.3.5a4.8 4.8 0 012.3 3.9c0 .5-.3 1.2-.4 1.7-1.5 5.2-5.1 7-8.7 11.4-1.6 2-2.8 3.5-2.8 6 0 .6.8 1.7 1 2.2-.1-1.2.4-2.6 1.6-2.7 1.7 0 3 1.2 3.2 2.8 0 .4 0 1.1-.2 1.5.9-.6 2-1 3.2-1.1a9.9 9.9 0 011.5 0 13 13 0 017.4 3 16.9 16.9 0 015.9 13.4c-.7 4.3-.3 11.9-11 15 2 .8 3.3 2.3 3.3 4.1 0 2-1.5 3.8-3.5 3.8a3.5 3.5 0 01-2.8-1.1c-2.2 2.2-2.7 4.5-2.7 7.7 0 1.9.4 3 1.2 4.7a9 9 0 003 4.2c.8-1.2 1.6-2 3-2 1.5 0 2.7.4 3.3 1.7.1.3 0 .7.2 1 .2.5.7.6 1 1.1.3.8 0 1.4.3 2.2.2.5.7.6 1 1 .3.9.4 1.4.4 2.3 0 2.4-2.2 4-4.6 4-.8 0-1.2-.2-1.9-.1 1.4 1.3 2.4 2 3.5 3.6a14.1 14.1 0 012.3 8.2c0 3.6-.6 5.8-2.2 9a16 16 0 01-5.6 6.8 28 28 0 01-12.8 5c-3.4.7-5.3 1-8.8 1.2l-11.3.6c-5.7.4-9.7 1.2-13.8 5.3 2 1.4 3.3 2.8 3.3 5.2 0 2.4-1.5 4.2-3.9 5-.5.1-1 0-1.4.2-.6.3-.6 1-1.2 1.4a5 5 0 01-3 .8c-2.2 0-3.6-.5-5.2-2-1.7 1.4-2.3 2.7-4.3 3.9-.7.3-1 .8-1.7.8-1.2 0-1.8-.7-2.7-1.4a18.4 18.4 0 01-3.6-3.3c-1.8 1.1-2.9 2-5 2a5.2 5.2 0 01-3.1-.9c-.6-.3-.7-.9-1.3-1.2-.6-.4-1-.2-1.7-.5-2.4-1-4-2.8-4-5.5 0-2.3 1.5-3.8 3.6-4.7-4-4-8-4.7-13.6-5-4.4-.4-7-.4-11.3-.7-3.4-.2-5.4-.6-8.8-1.1-2.6-.4-4.1-.6-6.5-1.7-8.2-3.8-13.4-9-14.5-18v-2c0-4.7 1.8-7.5 5-10.8-.8-.2-1.3 0-2.2-.2-2-.8-3.5-2.2-3.5-4.4 0-.8 0-1.4.4-2 .3-.6.8-.7 1-1.2.1-.8 0-1.3.3-2 .2-.5.6-.5.8-1 .7-1.5 1.6-2.7 3.3-2.7 1.4 0 2.3.8 3 2 1.4-.7 1.8-1.7 2.6-3 1.3-2.2 1.8-3.7 1.8-6.2a11 11 0 00-.7-4.4c-.4-1.2-.5-2-1.4-3a3.5 3.5 0 01-2.8 1.2c-2.3 0-4-2-4-4.3 0-1.7.8-3 2.4-3.7-1.3-1-2.4-1.2-3.7-2-2.1-1.4-2.9-2.7-4.2-4.8-1-1.4-1.2-2.3-1.6-3.8a15 15 0 01-.9-5v-1.3c.6-3.9 1.3-6.4 3.8-9.5a11 11 0 014.6-3.9 11.6 11.6 0 016.5-1.3c1 .2 1.5.2 2.3.7.3.2.9.7.9.3l-.2-1c0-1.7 1.2-3.2 2.8-3.2 1.2 0 1.7 1 2.3 2 .4-.6.6-1 .6-1.7 0-2.8-1.5-4.2-3.2-6.3-3.7-4.7-8.4-6.9-8.4-12.8 0-1.8.9-3 2.4-4 .4-.2 1 0 1.5-.2.3-.3.3-.7.5-1.1a4 4 0 011.3-1.3c.8-.8 1.6-.5 2.5-1.2.5-.3.6-.7 1-1.2 1-1.2 2-1.8 3.6-1.8.8 0 1.3 0 2 .3.3 0 .8.5.9.4.1-.2.6-.7 1.1-1 .7-.3 1-.4 1.8-.4.9 0 1.4.5 2.3.5.4 0 .4-.3.7-.5.8-.5 1.2-.8 2.2-.8 1 0 1.4.3 2.2.8.7.4.8 1 1.6 1.5l1.2.3c2 .6 3.6 2 3.6 4.2 0 1.2-.2 2-1.1 2.8-.7.6-1.4.5-2.3.8a13 13 0 009 2.8c3.5 0 7.6-1.3 7.6-4.7 0-1.6-.9-2.4-1.5-3.8a15 15 0 01-1.7-6.9c0-2.2.2-3.5 1.5-5.3 1.3-1.9 3-2.3 5.2-2.3z"/>
+  <g fill="none" stroke="#703d29">
+    <path stroke-linejoin="round" stroke-width=".5" d="M217.9 191.2c.2.9.9 1.6 2 2a3 3 0 003-1.1c.8-1 .7-2.3.5-3.3a3.8 3.8 0 00-1.4-1.8l-4.1 4.2z"/>
+    <path stroke-linecap="round" stroke-width=".5" d="M320.8 252.9c-1-2.3-3.4-1.3-3.6 0-.3 3 2.3 3.8 4.1 3.3.9-.2 1.6-.8 2-1.5.5-.8.6-2 .3-3a4 4 0 00-.7-1.3 4 4 0 00-1-1c-.7-.4-1.5-.5-2.7-.5-4.4 0-8.3 5.3-9.6 10.8a23.6 23.6 0 00-.2 9.6 18 18 0 004.7 9 20 20 0 007.9 4.7c1.1.3 2.2.3 3.1 0 2.7-.5 3.9-3 2.6-5.5-1.1-2-4.3-3.2-5.8-.6a2.6 2.6 0 00-.4 1.3c0 .7.3 1.5.8 1.8 1.2.8 3 .6 3-1.5"/>
+    <path stroke-width=".7" d="M307 283.2a9 9 0 015.3-3c2.4-.2 4.5.5 6.6 1.6a14.9 14.9 0 018.6 13.6c0 3-.8 6-1.5 7.6-.7 1.3-2.5 7.1-12.3 11.2a67.4 67.4 0 01-20.5 3c-8.4.4-16 .7-20.5 6.2"/>
+    <g stroke-width=".6">
+      <path d="M309.1 292.6c-.2-.9 0-1.7.7-2.7 1-1.3 2.9-1.7 4.7-.7.6.3 1.3.8 2 1.7l1 1.2.8 2c2 5.6-1.2 11.7-5.2 14.1-3.2 2-7 2.8-11.5 3.3l-5.3.3h-7.6a56.3 56.3 0 00-5.8 0l-6 .6-4.4.8-1.5.4-1 .3a31.9 31.9 0 00-7.7 3.3c-.7.4-1.5.9-2 1.4l-1.1 1c-1.5 1.4-3.1 3-3.5 5.3v1.3c0 1.4 1.1 3.4 4.3 4m4.4-136.1c.6 1.2 1 2 .6 3.1-.4 1.4-1.4 2.3-2.8 2.3-3.2 0-5-3.8-3.6-6.2 2.5-4.3 7.4-1.9 12 .2-.3-1-.7-1.4-.6-2.8 0-3.3 2.6-4.8 3.6-8 .6-1.8.8-3.4-.6-4.7-1.1-1.2-2.5-1.1-4-.5-3.1 1.2-6.8 4.6-13.3 4.7-6.5 0-10.3-3.5-13.4-4.7-1.5-.6-2.9-.7-4 .5-1.4 1.3-1.2 3-.6 4.8 1 3 3.5 4.6 3.6 8 0 1.3-.3 1.6-.6 2.7 4.6-2 9.7-4.7 12-.2 1.3 2.5-.4 6.2-3.6 6.2-1.4 0-2.4-1-2.8-2.3-.4-1.1 0-2.2.6-3.1"/>
+      <path stroke-linecap="round" d="M251.7 191.9c1.2 1 2 2.1 1.9 4-.1 2-.7 2.5-2.2 3.6m1.9-3c-.1 1.2-.6 2-1.8 2.5"/>
+    </g>
+    <path fill="#c7b37f" stroke="none" d="M221.4 186.6l.5.4.6.7.4.8.2.6v1.5l-.2.7-.4.5-.4.5-.7.3-.9.2-.7.2-.8-.4-.8-.5-.4-.7-.3-.8v-.3l3.9-3.7z"/>
+    <path stroke-linecap="round" stroke-width=".5" d="M220.2 189.7c-.3-1.3-1.8-1.6-2.4-.8-1 1.2-.3 3.2 1.6 3.8a3 3 0 003-1.1c.8-1 .8-2.3.5-3.2-.2-.7-.7-1.2-1.4-1.7-2.2-1.7-5.7-1.3-6.8 1.5-1.5 3.6 1.7 6.3 4.7 8.3 3.8 2.5 8 3 11.3 3 7.3-.1 12.9-3.6 16.5-5.6.8-.5 1.7-.4 2.1.2.5.6.5 1.5-.2 2.2"/>
+    <path stroke-width=".5" d="M198.4 289l-1.6.5-1.7 1.3-.7 1-.9 1.6-.4 1.2-.3 1.5-.2 1m15.2-8v1.4l-.3 1-.7 1.7-1.1 1.5-1.2 1-1 .4-1.2.3"/>
+    <path stroke-width=".6" d="M255.8 327.3c-.3 1.3-1.5 2.8-4.3 3.4h-.5"/>
+    <path stroke-width=".7" d="M323.4 285a14.6 14.6 0 014.5 10.8c-.1 2.8-.8 6-1.6 7.5-.7 1.3-2.5 7.2-12.3 11.2a67.7 67.7 0 01-20.5 3.1c-8.2.4-15.8.7-20.3 6"/>
+    <path stroke-width=".5" d="M310 290.3c.6-.9 2.8-1.9 4.6-1a5 5 0 012 1.7"/>
+    <path stroke-width=".7" d="M321.3 283l1.1.4a5.6 5.6 0 003.2 0c2.2-.6 3.7-2.7 2.5-5.5a4.5 4.5 0 00-1.4-1.7"/>
+    <path stroke-linecap="round" stroke-width=".5" d="M192.2 223.8c-1.5 1-2.6 1.2-3.8 2.5a22.5 22.5 0 00-2.1 5.5m36.9-41.4c0 1.4-1 2.3-2.4 2.6"/>
+    <path stroke-width=".5" d="M317.7 217.6c3.8 0 14.8 2.9 14.9 15.8 0 12.8-8 14.9-11.1 15.7"/>
+    <path stroke-width=".5" d="M318.7 217.6c6.5-.3 13.2 4.5 13.5 16.5.3 9.4-6.4 13.6-9.6 14.5m-7.6 14.1l.2-1.2.4-2 .6-1.7.7-1.3.8-1m6.3-2.7l-.1 1.2-.4.9-.5.8-.7.5-1 .3h-1.5m-11.4-42.3l.3-1.3.6-1.3.7-1.2 1.4-1.7 1-1.2 1.7-1.7 1.5-1.5 1-1.1 1.2-1.5 1-1.7.7-1.3.4-1.8.1-2.1-.2-.7M310 296.7l1.3-.3 1-.5.5-.5.4-.7.2-1v-.6M187 283.3l.9.1h1.2l1.3-.5m4-29.3l-.2 1.2-.2.4-.4.5-.5.4-.6.3-.8.1h-.5m8-12.5l-.3 1.8-.4.7-.7 1-1 .7-.9.5-1.8.4m12.2-31.8l-.3 1-.5.8-.6.9-.8.7-1 .5-.8.2h-.6m.3-5v.8"/>
+    <g stroke-width=".5">
+      <path stroke-linecap="round" d="M203.4 243.3a5.5 5.5 0 01-1.6 1M322.2 280l.4.2c1 .7 3.3-.2 2.7-2"/>
+      <path d="M318.2 255.7c.8 1 2.4 1.3 3.6 1 .9-.2 1.5-.8 2-1.6.4-.8.6-1.9.3-3a4 4 0 00-.7-1.3 5.4 5.4 0 00-1.1-1.1l-.3-.2m5.2 27.2a3.1 3.1 0 000-.6c0-.9-.4-1.7-1-2.3-.2-.2-.4-.5-.7-.6m.4.3c0-1.5-1.3-2.5-2.8-2.8m-3.3 2.3c-.4-.3-.8-.5-1-.9a12.6 12.6 0 01-3.5-8.5c0-3.3 1.3-6.7 2.8-8M273 323.3l1.5-1.3 1-.8 1.8-1.1 1.8-.9 1.2-.3 2.5-.5 2.9-.5M262 333.4a14.1 14.1 0 01-6.1 5 14.1 14.1 0 01-6.1-5"/>
+      <path stroke-linecap="round" d="M251.5 330.1a8 8 0 01-1.7 3.3"/>
+      <path d="M251.8 328.4l-.4 1.8m-1.8 3.3l-.8.8-1.4.7-1.5.5m-4.5-142.2c.2-.6.4-1.1.3-2.1 0-3.4-2.5-4.9-3.5-8-.6-1.8-.9-3.4.5-4.8 1.2-1.1 2.5-1 4-.5 3.2 1.2 6.9 4.7 13.4 4.8-6.5-.1-10.2-3.6-13.3-4.8-1.6-.6-3-.8-4.2.4-1.4 1.3-1 3-.4 5 1 3 3.3 4.5 3.4 7.9 0 1-.2 1.5-.4 2m14.9-10.7c6.4-.4 11.9-4.7 13.7-5 1.6-.3 2.4-.2 3.6.9-1.2-1.1-2.5-1-4-.5-3 1.2-6.8 4.7-13.3 4.8m63.7 90.3a12.4 12.4 0 01-5-9.9c0-3.3 1.3-6.7 2.9-8m-56 78a14.1 14.1 0 01-6 5 14 14 0 01-6.2-5"/>
+      <path stroke-linecap="round" d="M245.3 195l1.9-1c.8-.6 1.9-.5 2.3 0 .5.7.6 1.7-.1 2.3"/>
+      <path d="M235.8 199.4c4.4-.9 8-2.9 10.6-4.4m25.9 131.4l.6.7.2.7c.2 1.2-.6 2-1.5 2.1a2.7 2.7 0 01-2.8-1.6m-33.3-129.1c4.4-1 8-2.9 10.7-4.4m78 85.5c-.7.3-1.2.3-2.2-.2l-1.5-.8c-2-1.1-4.5-3-6.8-7.2a15 15 0 01-1.3-3.6c-.2-.9-.4-1.8-.4-2.7a20.5 20.5 0 01.5-5 16.2 16.2 0 013.2-7.2c1-1.3 1.7-2 3.5-2m-115-31.5a5.7 5.7 0 012.1 4.6c0 2.5-2 6.5-7.2 8-2 .5-3.8 0-5-.7"/>
+      <path d="M205 228.5c1 .6 1.3 1.4 1.3 2.6 0 .8-.5 2-1.5 3a9.9 9.9 0 01-7 3.2 8.2 8.2 0 01-4.8-1.4 7.3 7.3 0 01-3-4.3"/>
+      <path d="M205 233.8c1 1 1.3 2.2 1.3 3.7 0 2.2-.9 3.9-3 5.7a5 5 0 01-1.5 1m103.6-17.6v2.9m-.3-3.6v4m.3-12.6v5.2m-.3-6.3v7m-1.5 65.7c-1 2-1.8 3-3.3 4.5a15.7 15.7 0 01-4.7 3.3 19.7 19.7 0 01-5.2 1.7c-2.1.5-3.4.6-5.5.7-2 0-3.1 0-5.1-.2-2.1 0-3.3-.4-5.4-.6-1.7-.1-2.7-.3-4.5-.3a22.8 22.8 0 00-8.7 1.5c-2.2.9-4.6 2.4-5.1 3-.5-.6-3-2.1-5.1-3a22.8 22.8 0 00-8.8-1.5c-1.7 0-2.7.2-4.4.3-2.1.2-3.3.5-5.4.6a37.3 37.3 0 01-10.6-.5c-2.1-.5-3.3-.8-5.3-1.8a15.7 15.7 0 01-5-3.7m33.6 42.7l1.5-.2m24.2-1.9l1.4-.1 1.4-.6 1-.5 1.3-1.6.3-.6.2-1.3v-.6M314 218.8c.6-2.1-.2-4.3-2.2-4.3m-105.6 37.3a6.5 6.5 0 01-2.9 3.7m3-37.4a5.2 5.2 0 01-3 3.2c-1.4.7-3.2 0-4-.6"/>
+      <path stroke-linecap="round" d="M195 225.9c1.3.6 2.5-.3 2.3-1.9a2.3 2.3 0 00-2-1.8"/>
+      <path d="M200.1 293.3c.3.3.4.6.7.6.5.1 1 .3 1.5-.4.7-.9.3-2.2-.4-3.1a4 4 0 00-4.7-.7c-.5.3-1.3.7-2 1.6l-.9 1.3-.9 2c-1.6 4.6.3 9.5 3.4 12.5"/>
+      <path stroke-linecap="round" d="M272.2 326.3l.5.6.2.7c.2 1.2-.6 2-1.6 2-1.3.2-2.2-.6-2.7-1.6"/>
+      <path d="M311.6 187.8a6 6 0 015 5.6c0 3.6-1.2 4.9-3.1 7.4-2 2.7-8.5 7.7-8.5 13.4 0 3.4 1 5.6 3.4 6.7 1.6.7 3.5 0 4.3-.8 2-1.9 1.3-5.2-1-5.6-2.5-.4-3 3.7-.5 3.4m14.3 55.3a3 3 0 00-2.9-2.5 3 3 0 00-3 3c0 .8.4 1.5.9 2"/>
+      <path d="M307.1 220.1a5.7 5.7 0 00-2.1 4.6c0 2.5 2 6.5 7.2 8 1.9.5 3.8.4 5-.3m-124.9-8.2a7.5 7.5 0 00-3.8 2.7 13.5 13.5 0 00-1.9 4.9c-.1.7-.3 3 .1 5.3a12.7 12.7 0 001.9 4.5l.8 1 .9.7m51.2 73.6c3.9 1.8 6.7 3 9.2 6.9a8.2 8.2 0 01-1.7 10 6.6 6.6 0 01-5.4 1.6c-1.5-.2-3-1.3-3.2-2m-37.2-90a6.6 6.6 0 013.1 6c0 3-1.5 4.8-3.2 5.9"/>
+      <path stroke-linecap="round" d="M201.2 253.1c3.3 4.1 5 6.5 5.1 11.3.1 4.6-1.4 7.7-4 11"/>
+      <path d="M263.8 199.5a3.3 3.3 0 001.3-1.8c.4-1.2.4-2.2-.3-3.1.8 1 .9 1.9.7 3.1-.2.8-.7 1.2-1.3 1.8m41.2 69v12.8a19.6 19.6 0 01-.3 3.4m0-17.5V283l-.4 2.1m.4-34.3v11.6m.3-10.7v9.4m0-21.5v7.1m-.3-7.9v8.8m.3-15.2v2.8m-.3-3.4v4m-1.4 52.2l-.3.5a15 15 0 01-3.4 4.6 15.7 15.7 0 01-4.6 3.2 19.7 19.7 0 01-5.3 1.8c-2 .5-3.3.6-5.5.7-2 0-3 0-5-.2-2.2-.1-3.3-.4-5.4-.6-1.8-.1-2.8-.3-4.5-.3a22.9 22.9 0 00-8.8 1.5c-2.1.9-4.5 2.4-5 3a17 17 0 00-5.1-3 22.9 22.9 0 00-8.8-1.5c-1.7 0-2.7.2-4.5.3-2 .2-3.2.5-5.4.6a37.3 37.3 0 01-10.5-.5 19.8 19.8 0 01-10-5 17.6 17.6 0 01-1.9-2.3m-1.6-2.5a8 8 0 01-1.8 6.2c-.7.7-2.2 2-4 2-3 .1-4-2-4.1-2.5"/>
+      <path d="M204.5 287a8.2 8.2 0 011.5 2.1c.7 1.4.5 3.8-.1 5a3.7 3.7 0 01-.3.3m-16.1 14.4c1.8 2 4.5 4 8.7 5.7a67.4 67.4 0 0020.5 3.1c8 .3 15.5.7 20 5.7m13.9-3.3a12 12 0 013.2 4.5m-5.9 9.2a7 7 0 01-.5.5 6.6 6.6 0 01-5.3 1.6 5 5 0 01-3.5-2m-4.3-2.4l.3.3a6 6 0 004 2m21.6 0a14.1 14.1 0 01-6.1 4.9 14.1 14.1 0 01-6.1-5l-.2-.3m12.4.3l.6.6a6.6 6.6 0 005.3 1.6 4.4 4.4 0 003.3-2l.4-.6"/>
+      <path d="M271.2 333.3l-.6 1-.9.7-1.3.6H267"/>
+      <path d="M274.4 324.2a6.1 6.1 0 011.9 2.3c.2.6.4 1.3.4 2a4.7 4.7 0 01-1.1 3.2 6 6 0 01-4.4 2 4.4 4.4 0 01-.3 0m.1-.2a5.5 5.5 0 01-4.1-1.7m51-54.3a19 19 0 01-4-5.2 15 15 0 01-1.3-3.6c-.2-.9-.4-1.7-.4-2.6 0-1.6.1-3.2.5-5a16.7 16.7 0 013.3-7.3c.5-.6 1-1.4 1.6-1.8m-1-60.6c2 .2 3.8 2.3 3.8 4.5 0 3.1-1 4.4-3.5 7.4-2.1 2.7-8.5 7.3-8.3 11.7 0 .8.5 1.6 1 2.2M307 220c.4.5 1 .8 1.6 1.1a4 4 0 003.4-.2m-16.9-34.6a4.8 4.8 0 011.8 2.1c1.4 3.6-1.8 6.3-4.8 8.3a17 17 0 01-6.6 2.6"/>
+      <path d="M291.7 193.2c-.7 0-1.6-.2-2.5-1.2a2.7 2.7 0 01-.6-.7m-11.9 3.9a3.7 3.7 0 01-1-.8c-.7-.8-1.2-1.9-.7-3.5.5-1.5 3-5.8 3-8.7.3-4.5-1.5-7.2-4.2-8.2"/>
+      <path stroke-linecap="round" d="M277.9 181.2l-.1 1.7-.5 1.7-.9 2.3-.7 1.6-.7 1.5-.3 1-.2.8.1.8m30.5 101c0 .3.4.6.4.6a6.2 6.2 0 004.4 2.5c3 0 3.7-2.1 3.8-2.6.4-2.3-.4-3-1.6-3.6 0 0-.7-.3-1.5-.2"/>
+      <path d="M189.6 283.5a5.5 5.5 0 01-3 0c-2.3-.7-4-2.9-3.1-5.5m10.7-25.5c.2.2.3.6.3.8.3 3-2.2 3.8-4 3.4a4.5 4.5 0 01-2.5-1.9 3.8 3.8 0 01-.5-1.8m17.7-19c.4.5.8 1 1 1.5m-1-6.8c.5.3.8.6 1 1"/>
+      <path stroke-linecap="round" d="M206.3 232.4a6.8 6.8 0 01-1.3 2 9.9 9.9 0 01-7 3.1 8.2 8.2 0 01-4.8-1.4 7.6 7.6 0 01-3.3-4.4"/>
+      <path d="M204.3 220.2a6.2 6.2 0 012 2.7"/>
+      <path stroke-linecap="round" d="M206.3 226.6a9.4 9.4 0 01-7 6.3 7 7 0 01-5.2-.9"/>
+      <path d="M192 226c.2 2.1 1.7 3.7 4.3 3.8 3.8 0 6-5.4 2.7-9.3"/>
+      <path stroke-linecap="round" d="M183.6 244.4c.5.7 1.2 1.3 1.8 1.9a13.4 13.4 0 004.8 2.6m4.2.4c3.4-.4 5.3-2.9 4.9-5.8-.3-2.3-2.4-4-3.8-4"/>
+      <path d="M199.9 214.5c1.4 0 2.3 1.3 2.2 2.4"/>
+      <path stroke-linecap="round" d="M199.5 194.5a9.2 9.2 0 004 4.6M319 224a3.7 3.7 0 01-3.3 5.7 4.2 4.2 0 01-3.5-2"/>
+      <path d="M305.4 199.3v12.6"/>
+      <path stroke-linecap="round" d="M195 225.9c1.2.8 2.6-.6 2-2.1-.3-1-1.8-2.1-3.8-.8-2.1 1.5-1.5 6.3 2.7 6.3 3.7.1 6-5.4 2.7-9.2-3.2-3.7-9-2.9-13 .2a17.1 17.1 0 00-5.6 9.3 17 17 0 000 7.4 16.7 16.7 0 002.4 6l1 1.3 1.6 1.6a12 12 0 008.3 3c3.8-.1 6-2.8 5.5-5.9-.4-3-3.4-4.5-5.4-3-1.3.9-1.8 3.8.6 4.5 1.3.4 2.5-1.3 1.6-2.3m103.6-57.5c2.2-1.2 3.8-1 5 .7a7.9 7.9 0 011.3 5.8c-.4 2.2-1 3-2.8 4.6"/>
+      <path stroke-linecap="round" d="M304.4 185.6c2.5-1.6 5.2-1 6.6 1.3a7.3 7.3 0 011.3 4.9 9 9 0 01-4.6 7.3"/>
+      <path d="M316 191.3c2 .2 3.7 2 3.7 4.2 0 3-.8 4.4-3.3 7.4-2.1 2.6-8.4 7.2-8.3 11.7 0 1.6 1.5 3.2 2.7 3.3"/>
+      <path stroke-linecap="round" d="M316.3 225.9c-1.2.8-2.6-.5-2-2 .4-1 1.8-2.2 3.7-.9 2.2 1.5 1.6 6.3-2.6 6.3-3.7.1-6.3-5.2-2.7-9.2 3.3-3.7 9.4-3 13.2 0 1.6 1.4 5 5 5.6 9.6.9 5.6.7 12.6-5 16.8a13.8 13.8 0 01-8.5 2.4c-3.8-.1-6-2.8-5.5-5.9.4-3 3.3-4.3 5.4-3 2.2 1.1 1.8 4.3-.6 4.5-1.4.2-2.5-1.3-1.6-2.3"/>
+      <path d="M314.3 224c.6-2.9 3-3.1 5-3.1 5.2 0 8.9 6.3 9 12.4 0 7.6-3.3 12.1-9 12.3-1.3.1-3.8-.6-3.9-2.3"/>
+      <path stroke-linecap="square" d="M317.5 222.7c5.6 1.2 7.6 6.2 7.6 11 0 3.9-.4 9.2-8 11"/>
+      <path d="M326.7 276.3a3.1 3.1 0 10-5 1.8"/>
+      <path stroke-linecap="round" d="M315.6 271.5a13.3 13.3 0 005 4.8m-1 8.4c-2.7-1.7-7.7-4-12.2-1.8a6.3 6.3 0 00-3.4 3.5 8 8 0 001.5 7.7 6 6 0 004 2.1c3 0 3.7-2 3.8-2.5.3-2.2-1-3.1-1.6-3.3-.6-.2-2.2-.2-2.6 1-.1.4-.1 1.1.2 1.6"/>
+      <path stroke-linecap="round" d="M272.4 326.7c.8 1.8-.1 2.6-1.3 2.7-1.7.2-2.6-1.1-2.7-2.3-.2-2 1.5-3.9 3.5-3.8a4.4 4.4 0 014 2.8c.2.6.3 1.2.3 1.9a4.7 4.7 0 01-1.1 3.3 6 6 0 01-4.3 2c-3.4.1-6-3-6-6.3 0-6.1 9.1-9.5 12.8-10.4a67 67 0 0114.3-1.8c2.9-.2 5-.1 8.1-.4 2.8-.3 4.3-.5 7.2-1.1a22 22 0 0010-5.2 13.7 13.7 0 003.7-17.7 11.5 11.5 0 00-8.2-5.3c-3-.5-5.6.8-7.2 3.8a6.2 6.2 0 00.1 5c.5.9 2 2.3 3.8 2.3 3 0 3.8-2 3.9-2.5.3-2.2-1-3.1-1.6-3.3-.6-.2-2.2-.2-2.6 1-.1.4-.1 1.1.2 1.6"/>
+      <path stroke-linecap="round" d="M269.8 317c-4 1.7-6.8 3-9.2 6.7a7.9 7.9 0 00-1 4c0 2.1 1 4.5 2.7 6a6.6 6.6 0 005.4 1.7c1.5-.2 3-1.3 3.2-2"/>
+      <path d="M308 243.3c-1.7.6-3 3.4-3 6 0 3 1.4 5 3.2 6"/>
+      <path stroke-linecap="round" d="M310 253.1c-3.2 4.1-5 6.5-5 11.3-.1 4.6 1.3 7.7 4 11"/>
+      <path d="M292.7 185.6l.3-.4c1.3-2 3.7-2.5 5.5-1.2 2 1.6 2.6 4.3 2 7.2a7 7 0 01-3.2 4.4"/>
+      <path stroke-linecap="round" d="M212 184.7c-2-1-3.7-.8-5 .7a7.5 7.5 0 00-1.2 5.8c.4 2.1 1 3 2.8 4.6"/>
+      <path d="M206.9 185.6c-2.5-1.6-5.2-1-6.6 1.3a7.3 7.3 0 00-1.3 4.9 9 9 0 004.6 7.3"/>
+      <path d="M199.7 187.8a5.5 5.5 0 00-4.8 5.3c0 3.6.9 5 2.9 7.7s8.5 7.7 8.5 13.4c0 3.4-1 5.6-3.4 6.7-1.6.7-3.5 0-4.3-.8-2-1.9-1.2-5.2.9-5.6 2.6-.4 3.1 3.7.6 3.4"/>
+      <path d="M195.2 191.3c-2 .2-4 2-4 4 0 3.1 1.2 4.5 3.7 7.6 2 2.6 8 7.2 7.9 11.6 0 1.6-1.2 3.7-2.3 3.4"/>
+      <path stroke-linecap="round" d="M190.5 252.9c1-2.3 3.4-1.3 3.5 0 .4 3-2.2 3.8-4 3.3-1-.2-1.6-.8-2-1.5a3.9 3.9 0 01.4-4.3 4 4 0 011-1c.7-.4 1.5-.5 2.7-.5 4.4 0 8.3 5.3 9.6 10.8a23.6 23.6 0 01.2 9.6 18 18 0 01-4.7 9 20.1 20.1 0 01-7.9 4.7 5.6 5.6 0 01-3.2 0c-2.2-.6-3.7-2.8-2.5-5.5 1-2.1 4.3-3.2 5.8-.6.1.3.3.7.3 1.3 0 .7-.3 1.5-.8 1.8-1.1.8-3 .6-2.9-1.5"/>
+      <path d="M187 280.3c.8.3 1.3.3 2.3-.2l1.5-.8c2-1.1 4.5-3 6.7-7.2a15.1 15.1 0 001.4-3.6c.2-.9.4-1.8.4-2.7a20.5 20.5 0 00-.5-5 16.2 16.2 0 00-3.2-7.2c-1-1.3-1.7-2-3.5-2m-7.5 24.7a3.1 3.1 0 115 1.8"/>
+      <path d="M185.8 273.2a3 3 0 012.9-2.5 3 3 0 013 3 3 3 0 01-1 2"/>
+      <path d="M191.5 273a12.4 12.4 0 005-9.9c0-3.3-1.3-6.7-2.9-8"/>
+      <path stroke-linecap="round" d="M195.7 271.5a13.2 13.2 0 01-5 4.8"/>
+      <path d="M203.7 283c-.8-1.8-2.2-2.6-4.6-2.9a11 11 0 00-6.6 1.6 14.8 14.8 0 00-8 9 13.7 13.7 0 00-.6 4.6c0 2.9.8 6 1.6 7.5.6 1.4 2.4 7.2 12.2 11.2a67.7 67.7 0 0020.6 3.2c8.3.3 16 .6 20.4 6.1"/>
+      <path stroke-linecap="round" d="M191.7 284.7c2.7-1.7 7.6-4 12.1-1.8a7 7 0 013.5 3.5 8 8 0 01-1.5 7.7c-.7.7-2.1 2-4 2.1-3 0-3.7-2-3.8-2.5-.3-2.2 1-3.1 1.6-3.3.5-.2 2.2-.2 2.6 1 .1.4.1 1.1-.2 1.6"/>
+      <path d="M202.2 292.6a2.7 2.7 0 00-.7-2.7 4.1 4.1 0 00-4.7-.7 5 5 0 00-2 1.7l-1 1.2-.8 2c-2 5.6 1.2 11.6 5.2 14.1a24 24 0 0011.5 3.3l5.3.3h13.4l6 .6 4.4.8 1.5.4 1 .3a31.9 31.9 0 017.7 3.3c.7.4 1.5.8 2 1.4l1.1 1c1.5 1.4 3.1 3 3.5 5.3v1.3c0 1.4-1.1 3.4-4.3 4"/>
+      <path d="M239 326.7c-1 1.8 0 2.6 1.2 2.7 1.7.2 2.6-1.1 2.7-2.3.2-2-1.5-3.9-3.5-3.8a4.4 4.4 0 00-4 2.8 5.5 5.5 0 00-.3 1.9 4.7 4.7 0 001 3.3 6 6 0 004.4 2c3.4.1 6-3 6-6.3 0-6.1-9.1-9.5-12.8-10.4a67 67 0 00-14.3-1.8c-2.9-.2-5-.1-8.1-.4-2.8-.3-4.3-.5-7.2-1.1a22 22 0 01-10-5.2 13.7 13.7 0 01-3.7-17.7 11.5 11.5 0 018.2-5.3c3-.5 5.6.8 7.1 3.8.8 1.4.6 3.8 0 5a4.8 4.8 0 01-3.9 2.3c-3 0-3.7-2-3.8-2.5-.3-2.2 1-3.1 1.6-3.3.5-.2 2.2-.2 2.6 1 .1.4.1 1.1-.2 1.6"/>
+      <path stroke-linecap="round" d="M218.6 185.6a97 97 0 00-.3-.4c-1.3-2-3.7-2.5-5.5-1.2-2 1.6-2.6 4.3-2 7.2a7 7 0 003.2 4.4"/>
+      <path d="M293.4 191.7c-3.2 3.5-6.5 4.6-11.3 4.8-1.5 0-4.4-.5-6-1.7-1-.8-2.3-2-1.5-4.4.5-1.5 3-5.7 3-8.7.2-4.5-1.5-7-4.2-7.9-5-1.8-10.4 3.2-13.6 4.3a11 11 0 01-4.1.6c-1.6 0-2.5 0-4.2-.6-3.2-1.1-8.6-6-13.6-4.3-2.7 1-4.4 3.4-4.2 8 0 2.9 2.5 7.1 3 8.6.8 2.3-.4 3.6-1.5 4.4a11.6 11.6 0 01-6 1.7c-4.9-.2-8-1.3-11.3-4.8"/>
+      <path stroke-linecap="round" d="M237.9 315.5c.6.3.1-.1 4.2 1.7 3.8 1.7 6.6 3.2 9 7a8.5 8.5 0 01.7 5.9"/>
+      <path d="M238.1 332.8a6.4 6.4 0 002.6.7c3.4.1 6-3 6-6.3 0-2.2-1.2-4-2.9-5.6"/>
+      <path stroke-linecap="round" d="M238.9 326.7c-.9 1.9.3 2.8 1.5 3 1.7.2 2.6-1.2 2.8-2.4a3.6 3.6 0 00-1.7-3.3"/>
+      <path d="M312 187.8c2.6 0 4.9 2.9 4.9 5.8 0 3.4-1.8 5.5-3.1 7-1 1.3-2.2 2.4-3.6 3.8"/>
+      <path stroke-linecap="round" d="M309 185.1a5 5 0 012.3 2 7.3 7.3 0 011.2 4.9c-.1 3.4-2.5 5.7-4.7 7.1m-3.8-14l.5.6a7 7 0 011.2 5.7 6.5 6.5 0 01-3 4.4m-4-11.6c2 1.6 2.7 4.4 2 7.2-.5 2-1.8 3.3-3.3 4.2m8.9 32.9c.2.7.6 1 1.2 1.5a10.8 10.8 0 004.9 2.9 6.2 6.2 0 005-.7M187 275.4c1 0 2 .6 2.7 1.8a2.6 2.6 0 01.3 1.2c0 .7-.3 1.4-.8 1.8-1.2.7-3.2.4-3.1-1.7"/>
+      <path d="M193.2 249c4 .8 7.7 5.5 9 10.7a23.6 23.6 0 01.2 9.6 18 18 0 01-4.7 9c-.5.6-1 1-1.7 1.5l-.9.6m-6.3-9.7c1.6 0 3 1.5 3 3.2a3 3 0 01-.8 2"/>
+      <path d="M187.7 272.6c1.7 0 3.3 1.6 3.3 3.3a3.1 3.1 0 01-1.2 2.5"/>
+      <path stroke-linecap="round" d="M203.2 255.6c1.5 2 2.6 3.9 3 6.2m0 6.8a13.8 13.8 0 01-1.2 3.2 14.2 14.2 0 01-2.8 3.7"/>
+      <path d="M203.4 243.5a7.5 7.5 0 012.8 3.8"/>
+      <path stroke-linecap="round" d="M206.3 239.6a8.7 8.7 0 01-2.7 3.7m-7.3-13.8l1.7-.4 1-.8.7-1 .5-1.4.3-1.2"/>
+      <path d="M192.8 223.4l-2 .7a7 7 0 00-2.8 2.4 13.5 13.5 0 00-1.8 4.8c-.2.7-.4 3 0 5.3a12.6 12.6 0 002 4.6l.8 1c1 1 2 1.7 3.5 1.4"/>
+      <path stroke-linecap="round" d="M202.4 215.8c-.2 1-.8 2.3-2.4 2.2"/>
+      <path d="M196.5 222.8c-1.5-1.5-4.8-1.9-8 .2-.5.2-.9.6-1.3 1a7 7 0 00-1.1 1.2l-1.2 2a10 10 0 00-.7 2c-.6 2.3-.6 4.5-.6 5l.3 2.2a15 15 0 001.8 5 8.2 8.2 0 006.2 4.3c1.4.1 3.9-.6 4-2.4"/>
+      <path stroke-linecap="round" d="M291 189.7c.2-1.4 1.8-1.6 2.4-.8 1 1.2.4 3.2-1.5 3.8a3 3 0 01-3-1.1c-.9-1-.8-2.2-.5-3.2.2-.7.7-1.2 1.4-1.7 2.1-1.7 5.7-1.3 6.8 1.5 1.5 3.6-1.7 6.3-4.7 8.3-3.8 2.5-8 3-11.3 3-7.3-.1-12.9-3.6-16.5-5.6-.8-.5-1.7-.4-2.1.2-.5.6-.5 1.5.2 2.1"/>
+      <path stroke-linecap="round" d="M292.5 188.4c.8 0 1 .4 1.2.7 1 1.2.3 3.2-1.6 3.8m14.3 41.2c-2.8 3-.3 8.3 1.8 9.5.7.5 1 .2 1.6.6"/>
+      <path d="M306.5 228.3c-1 .7-1.2 1.4-1.3 2.6a4.2 4.2 0 001.2 3.2 11.2 11.2 0 007.3 3 8.2 8.2 0 004.9-1.4 7.3 7.3 0 003-4.3M305 281v2c-.4 2.2-.7 3.5-1.7 5.5a15 15 0 01-3.4 4.5 15.7 15.7 0 01-4.7 3.3 19.7 19.7 0 01-5.2 1.8 33 33 0 01-5.5.6h-5l-5.5-.7c-1.7-.2-2.7-.3-4.4-.3a22.8 22.8 0 00-8.8 1.5 17 17 0 00-5 3c-.6-.6-3-2.2-5.2-3a17.6 17.6 0 00-4.1-1.2c-1.8-.3-2.8-.3-4.6-.3-1.8 0-2.7.1-4.5.3-2 .2-3.3.5-5.4.6-2 .1-3 .2-5 .1-2.2 0-3.4-.2-5.6-.6a19.7 19.7 0 01-5.2-1.8c-2-1-3-1.7-4.7-3.3a15 15 0 01-3.3-4.5 15.1 15.1 0 01-1.7-5.5v-83.4H305V281z"/>
+    </g>
+    <g fill="#c7b37f" stroke="#c7b37f">
+      <path stroke-width=".3" d="M198.3 292.5a2 2 0 114 0 2 2 0 01-4 0zm-12.2-14.1c0-1 .6-1.8 1.4-1.8.8 0 1.4.8 1.4 1.8s-.6 1.8-1.4 1.8c-.8 0-1.4-.8-1.4-1.8z"/>
+      <path stroke="none" d="M193 242.9c0-.8.7-1.5 1.4-1.5.8 0 1.4.7 1.4 1.5s-.6 1.4-1.4 1.4c-.7 0-1.3-.6-1.3-1.4zm24.6-52.5c-.1-.9.4-1.6 1-1.6.7-.1 1.4.5 1.5 1.3 0 .8-.4 1.5-1.1 1.6-.7 0-1.4-.5-1.4-1.3z"/>
+    </g>
+    <g stroke="#c7b37f" stroke-linecap="round" stroke-width=".5">
+      <path d="M191.4 251.2a1.8 1.8 0 00-.6.4l-.5.7-.2 1m3.8 21.3l.7-.8.6-.8.4-.7.5-1m-1 11l-1.2.6-.9.5a14 14 0 00-1 .7l-1 .8m12-30.3l-.6-.7-.7-.7-.8-.5"/>
+      <path stroke-linecap="butt" d="M203.3 244l-1 .4a4 4 0 01-1.1.2"/>
+      <path d="M190 230.8c0 .4.1.7.3 1.1l.7 1.4a6.8 6.8 0 002.2 2.1l1.2.7m-.9-4.7l1 .5a6 6 0 002.4.5l1.5-.1m5.7-32.5l-1.6-1a9.6 9.6 0 01-2.4-2.3l-.7-1m6-3.6l.5 1.3 1.2 1.7c.7.8 1.3 1 2.2 1.6m1.1-4.7l.5 1.2.7 1 1 1c.6.5 1 .6 1.6 1"/>
+    </g>
+    <path fill="#703d29" stroke-width=".1" d="M266.6 185.3c0-1.4-1.3-1.5-1.9-1.5-1.4 0-1.8 1-3.7 2a9.5 9.5 0 01-5.3 1.4 9 9 0 01-5.4-1.5c-1.9-1-2.2-1.9-3.6-1.9-.8 0-1.9.7-1.8 2v.7s.2 0 .2.2c0-.7.1-1 .4-1.4a1.8 1.8 0 011.3-.7c1.5 0 2 1 3.9 2a9.5 9.5 0 005.3 1.5c2 0 3.1-.3 5.4-1.5 1.9-1 2.4-2 3.9-2 .5 0 .8.3 1 .8v.7h.2c0-.1.2-.2.1-.8z"/>
+  </g>
+  <g fill="#703d29">
+    <path d="M211.5 299.2c.4-.4.8-.3.8-.5l-.2-.2-.7-.2-.7-.3s-.3-.2-.4 0c0 .3.9.3.5 1.1 0 .2-.1.5-.6 1l-2.1 2.3-.2.2V299l.1-1.4c.2-.4.6 0 .7-.3 0-.2 0-.2-.2-.3-.2 0-.4 0-1-.3l-.7-.3c-.1 0-.4-.2-.5 0l.1.2c.3.2.4.3.4.7v6c0 .4.1.6.2.6l.3-.2 4.2-4.6z"/>
+    <path d="M214 300.1c.3-.8.8-.3.9-.6l-.3-.2-1-.3-1-.4h-.3c0 .4 1 .4.7 1.3l-1.4 4.4c-.3.8-.8.4-.9.7v.1l1 .3 1.2.4h.3c.1-.3-1-.2-.6-1.3l1.4-4.3zm3 1c.1-.6.4-.6.7-.5.8.3 1 1.1.8 2-.2.5-.4 1-1.6.7-.3-.1-.6-.2-.5-.4l.6-1.9zm-2.3 3.9c-.4 1.1-1 .6-1 1l.2.1 1.3.4.7.2h.3c0-.4-.9-.2-.6-1.2l.5-1.6c0-.3 0-.4.5-.3.4.2.5.3.6.7l.3 1.7c0 .6.2 1.3.8 1.4.3.2 1 .1 1-.2v-.1h-.3l-.3-.3-.5-3 .6-.2c.3-.2.6-.4.8-1 .1-.4.3-1.7-1.5-2.3l-1.6-.4-1-.3h-.2c-.1.4.9.3.6 1.3l-1.2 4zm6.7 2c-.2 1-1 .4-1.2.7 0 .2.1.3.3.3l1.2.2 1.1.4.5-.1c0-.3-1.1-.3-.8-1.4l1-4.2c0-.5.2-.5.5-.4l.7.2c1 .2.5 1.1.8 1.2.3 0 .2-.3.3-.5v-1.1l-2.6-.6-2.5-.6c-.2 0-.2 0-.2.2l-.5 1.2v.3c.5.1.5-1.2 1.4-1l.7.2c.4.1.5.2.4.6l-1 4.3zm10.2-2.7c.3-.5.7-.4.7-.6l-.3-.2h-.7l-.7-.2c-.1 0-.4-.1-.4 0 0 .4.9.2.7 1 0 .2-.1.6-.5 1.1l-1.7 2.7-.1.2v-.3l-.6-3.2a4.3 4.3 0 01-.1-1.3c0-.4.5-.2.6-.5l-.3-.2-1-.1-.8-.2c-.1 0-.4-.1-.4 0l.1.2c.4.2.5.3.5.7l1.1 5.9c.1.4.2.5.3.5l.2-.2 3.4-5.3zm.5 5.4l.1.4 1.4.6c1.1.2 2-.5 2.3-1.7.2-1.2-.3-1.7-1.2-2.3-1-.8-1.5-1-1.3-1.6 0-.6.5-1 1-.8 1.5.2 1.4 2 1.6 2 .1 0 .2 0 .2-.3l.1-1.3v-.3h-.5c-.3 0-.5-.4-1.2-.5-1-.2-1.8.5-2 1.6-.2 1 .2 1.4 1 1.9 1.2.9 1.7 1 1.6 1.9-.2.7-.8 1.1-1.4 1-1-.2-1.3-1.1-1.5-2l-.1-.3c-.2 0-.2.3-.2.4v1.3zm12.6-3.5c.3-.6.6-.5.7-.7 0-.2-.2-.2-.3-.2h-.8l-.7-.1-.4.1c0 .4 1 0 .8 1 0 .1 0 .5-.3 1l-1.4 2.9-.2.2v-.2l-1-3.2a4.3 4.3 0 01-.2-1.3c0-.4.6-.3.6-.5s0-.2-.3-.2h-1l-.8-.1c-.1 0-.4-.1-.4 0l.1.2c.4.2.5.3.6.6l1.7 5.8c.1.4.2.5.3.5l.2-.3 2.8-5.5z"/>
+    <path d="M246 310.8c0 1-.8.8-.8 1.2h1l1 .1.4-.1c0-.5-1.1.2-1.1-1.7v-3.4s.2 0 .3.2l4 5h.3v-.2l.1-5.3c0-1 .8-.8.8-1.1l-.2-.1h-2v.1c0 .3 1 .2 1 1v3.2l-.1.4-.3-.3-3.4-4.2c-.1-.2 0-.3-.3-.3h-1.4l-.1.2c0 .4 1-.2.9 1.7v3.6zm8.4-4.3c0-1 .6-.6.6-.9l-.3-.1h-2.3c0 .4.9.1.9 1v4.6c0 1-.6.7-.6 1v.1h2.3l.3-.1c0-.3-1 .1-1-1v-4.6zm3.6 4.4c0 1.2-1 .7-1 1 0 .3.2.3.3.3h2.4c.3 0 .5 0 .5-.2 0-.3-1.1 0-1.1-1.2v-4.3c0-.5 0-.5.3-.5h.8c1 0 .7 1 1 1 .3 0 .2-.4.2-.5l-.1-.9s0-.2-.2-.2H256c-.2 0-.2.2-.2.3l-.1 1.2.1.4c.4 0 .1-1.3 1.1-1.3h.7c.4 0 .5 0 .5.5v4.4zm5-1.8h-.3v-.4l.6-1.8h.1l1 1.7v.3l-.2.1-1.2.1zm1.5.4c.2 0 .3 0 .6.8l.2.6c0 .6-.6.6-.6.8 0 .2.2.1.3.1h1l1-.1c.3 0 .4 0 .4-.2 0-.3-.5.1-.8-.6l-2.8-5.6-.2-.3-.2.4-1.9 5.9c-.2.5-.6.5-.6.7 0 .2.2.1.3.1h1.5c.2-.1.5 0 .5-.3 0-.2-1 0-1-.7l.1-.7c.2-.7.3-.7.5-.7l1.7-.2zm6.6-4c0-.6 0-.6 1-.7 1.6-.3 1.1 1 1.5.9.2 0 .1-.4.1-.5l-.1-1h-.2l-2 .2-2.2.3c-.2 0-.2 0-.2.2 0 .3 1 0 1 .8l.6 4.4c.2 1.2-.5.7-.5 1.2h.2l1.1-.1 1-.1c.2 0 .4 0 .4-.2 0-.3-1 0-1.1-1l-.2-1.4c0-.5-.1-.6.3-.7h.6c.9-.2.8.9 1 .8.3 0 .2-.3.1-.5l-.2-1.6c0-.3-.2-.3-.2-.3-.2 0-.1 1-.8 1l-.6.1c-.4 0-.4 0-.4-.4l-.2-1.3zm3.2 2.2c.3 2 1.7 3 3.4 2.7 2.7-.5 2.8-3 2.5-4.2-.3-2-1.8-3-3.5-2.7-2 .4-2.8 2.2-2.4 4.2zm.9-.7c-.3-1.4 0-2.7 1.4-3 1-.3 2.3.6 2.7 2.7.3 1.6 0 3-1.4 3.2-1.5.3-2.4-1.5-2.7-2.9zm6.7-3.3c-.2-.6.1-.7.4-.7.8-.2 1.5.3 1.7 1.3.1.5.2 1-1 1.3-.3.1-.6.2-.7 0l-.4-2zm0 4.5c.3 1.2-.5 1-.4 1.3 0 .2.2.2.3.1l1.3-.3.7-.1c.2 0 .2-.2.2-.2 0-.4-.8.2-1-.8l-.4-1.6c-.1-.3-.2-.4.3-.5.4 0 .6 0 .9.3l1 1.3c.4.5.8 1 1.5.9.3-.1.8-.5.7-.7 0-.1 0-.2-.1-.1h-.6l-2-2.3.5-.5c.1-.3.3-.7.2-1.3-.1-.4-.6-1.7-2.5-1.2l-1.6.4-1 .2-.2.2c.1.4 1-.2 1.2.8l1 4.1zm6.9-1.5c.3 1-.8.9-.7 1.2 0 .2.2.2.3.2l1.2-.4 1.2-.3c.2 0 .4 0 .3-.2 0-.3-1 .2-1.3-.9l-1.1-4.2c-.1-.4 0-.5.3-.6l.7-.2c1-.3 1 .8 1.3.8.2 0 0-.4 0-.5l-.4-.9s0-.2-.2-.2l-2.5.7-2.5.7c-.2 0-.1.1-.1.2l.2 1.3c0 .1 0 .3.2.3.3-.1-.2-1.3.7-1.5l.7-.2c.3 0 .4 0 .6.4l1 4.3zm4.4-5.9c-.3-.9.4-.7.3-1h-.3c-.4 0-.7.2-1 .3l-1 .2s-.3 0-.2.2c0 .3 1-.2 1.2.6l1.2 4.4c.2 1-.4.8-.3 1.2l1-.2 1.3-.3c.2-.1.2-.2.2-.3 0-.3-.9.4-1.2-.7l-1.2-4.4zm1.8 2.1c.6 1.9 2.1 2.7 3.8 2.2 2.6-.9 2.3-3.3 1.9-4.5-.6-2-2.3-2.7-3.8-2.2-2 .7-2.6 2.6-1.9 4.5zm.8-.8c-.4-1.3-.4-2.7 1-3.2 1-.4 2.3.3 3 2.4.5 1.5.5 2.8-1 3.3-1.4.5-2.5-1.2-3-2.5zm6.1-4.3c-.2-.6 0-.7.4-.8.8-.3 1.5.2 1.8 1 .2.6.4 1-.8 1.6-.3 0-.6.2-.7 0l-.7-1.8zm.7 4.5c.4 1-.4 1-.2 1.3 0 .2.2.1.3 0 .4 0 .8-.3 1.2-.4l.7-.3c.2 0 .2-.1.2-.2-.1-.3-.8.3-1.2-.6l-.6-1.5c0-.4-.2-.4.3-.6.4-.1.5-.1.9.2l1.2 1.2c.5.4 1 .8 1.6.6.3-.1.7-.5.6-.8 0 0 0-.1-.1 0h-.6l-2.2-2 .3-.5c.1-.3.2-.7 0-1.3-.2-.4-.8-1.6-2.6-.9l-1.6.7-1 .3v.2c.1.3.8-.4 1.2.6l1.6 4z"/>
+  </g>
+  <g fill="#fedf00" transform="matrix(.512 0 0 .512 0 76.8)">
+    <path fill="#d52b1e" d="M412.7 249.3h82.1v82h-82.1z"/>
+    <path id="a" fill="#fff" d="M451.2 313.8s0 3-.8 5.3c-1 2.7-1 2.7-1.9 4a13.2 13.2 0 01-3.8 4c-2 1.2-4 1.8-6 1.6-5.4-.4-8-6.4-9.2-11.2-1.3-5.1-5-8-7.5-6-1.4 1-1.4 2.8-.3 4.6a9 9 0 004.1 2.8l-2.9 3.7s-6.3-.8-7.5-7.4c-.5-2.5.7-7.1 4.9-8.5 5.3-1.8 8.6 2 10.3 5.2 2.2 4.4 3.2 12.4 9.4 11.2 3.4-.7 5-5.6 5-7.9l2.4-2.6 3.7 1.2h.1z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 907.5 0)" xlink:href="#a"/>
+    <path d="M461.1 279l10.8-11.7s1.6-1.3 1.6-3.4l-2.2.4-.5-1.2-.1-1.1 3-.7V260l.3-1.3-3.2.2.3-1.4.5-1 1.9-.4h1.9c1.8-3.4 9.2-6.4 14.4-1 3.8 4 3 11.2-2 13.2a6.3 6.3 0 01-6.8-1.1l2-4c2.7 1.7 5-.3 4.8-2.4-.2-2.7-2-4.3-4.3-4.5-2.3-.2-4 1-5 3-.6 1.3-.3 2.2-.5 3.6-.2 1.5 0 2.3-.5 3.8a8.8 8.8 0 01-2.4 3.6l-11 12-43 46.4-3.2-3 43.2-46.7z"/>
+    <path fill="#fff" d="M429.5 283s2.7 13.4 11.9 33.5c4.7-1.7 7.4-2.8 12.4-2.8 4.9 0 7.6 1 12.3 2.8A171 171 0 00478 283l-24.2-31-24.4 31z"/>
+    <path d="M456.1 262.4l16.8 21.7s-2.2 10.5-9 26.3c-2.7-.6-5-1.1-7.8-1.3v-46.7zm-4.7 0l-16.8 21.7s2.2 10.5 9 26.3c2.7-.6 5-1.1 7.8-1.3v-46.7z"/>
+  </g>
+  <g fill="#d52b1e">
+    <path fill="#fedf00" d="M257.8 204.4H300v42h-42z"/>
+    <path d="M263.7 204.4h6.3v42h-6.3zm12 0h6.3v42h-6.2zm12 0h6.3v42h-6.2z"/>
+  </g>
+  <g fill="#d52b1e" stroke="#d52b1e" stroke-width=".5">
+    <path fill="#fedf00" stroke="none" d="M211.4 282.8c.2.8.4 2 1.1 3.4.8 1.2.5 1.2 2.2 3a13.8 13.8 0 006.7 3.6c3.4 1 5.7 1 8.5.9 2.2-.1 3.9-.4 5.3-.6 2-.2 3.4-.4 5.7-.5a32.4 32.4 0 013.1 0c1.2 0 2.4.3 3.7.5 2.8.6 5.6 1.7 5.6 1.7v-43.9h-42v30l.1 2z"/>
+    <path stroke-width=".3" d="M216.3 290.5l2 1.2 2.7 1v-41.8h-4.7zm23.4 2v-41.6H235v42.2l4.7-.5zm9.3-41.6h-4.6v41.7a31 31 0 014.6.8V251zm-18.6 0v42.7h-4.7v-42.7z"/>
+  </g>
+  <g transform="matrix(.512 0 0 .512 0 76.8)">
+    <path fill="#fedf00" d="M585.5 402.4a20.8 20.8 0 01-2.2 6.6c-1.5 2.3-1 2.3-4.3 6a26.3 26.3 0 01-13 7 51.8 51.8 0 01-16.6 1.6c-4.3-.2-7.5-.7-10.3-1-3.8-.6-6.7-.9-11-1a62.9 62.9 0 00-6.2 0 83.3 83.3 0 00-18.3 4.2V340h82.2v58.5l-.3 3.8z"/>
+    <g id="b">
+      <path fill="#d52b1e" d="M524.6 347l-.6.2-.8.8c-.4.4-.7.5-1.2.8l-.6.5c-.3.3 0 .6-.3 1-.1.4-.3.6-.6 1-.4.4-.7.5-1 1l-1.2 1-.3.1h-.6c-.4.2-.5.6-.8.8l.3.6.8 1.4c.2.3.2.7.5.8.5.2.9.2 1.3.1.8.2 1.3.2 2 .5l1.5.8c.5.3.8.4 1.3.5h1.8v.3l2 1a1.7 1.7 0 00-.1.4c-.1.3-.2.7-.1.8.6 1.9 1.2 3 1.5 3.2.6.2.8.9 1.1 1.5l-.3.3c-.6.6-1.2 1-1.7 1.8-.7 1.2-1.2 1.2-.3 2.8l1.5 2.4c.4.7.6 1.2.8 2 .2.7.3 1.2.3 2l1 .3.7-.6.6-1.2v-1c-.2-.1-.3-.4-.2-.7 0-.4.5-.3.7-.6.3-.5-.4-.8-.7-1.1-.6-.7-1.4-.9-1.6-1.9 0-.2 0-.4.4-.7l2-1.8c.2.1.6.2 1 .1l1.3.4c.6.2.9 0 1.2 0h.4l.1.6c.1 1-.1 3 .2 3.5l.3.6.2.6v2l-.2 1.7c0 .4-.2.7-.5 1-.2.4-.6.4-1 .7v1l1.1.5 1.3.3.7-.3.1-.6.5-.5c.4-.2.8 0 .9-.1.2-.3 0-.4 0-.8 0-.6-.2-1-.3-1.6a11.8 11.8 0 01-.1-2.8c0-.6 0-1 .2-1.5.1-1 .4-1.4.6-2.2.3-1 .3-1.6.4-2.5a24.4 24.4 0 0010.1-.6c.8.7 1.7 1.2 2.7 1.6v1c0 .3 0 .4.2.7l.3.3c.3 0 .5 0 .7-.2.2-.2.2-.4.2-.7v-.7h1.8v1.1c.1.3.3.4.5.4a.7.7 0 00.6 0c.3-.2.2-.6.3-1v-.7l1-.4a5.1 5.1 0 010 .9l-.3.9c-.2.6-.5.8-.8 1.4-.4.6-.5 1-1 1.5l-.6.7-.6.9-.9 1c-.7.6-1.2.2-2 .9l-.3 1 1.4.6 1.3.2.4-.2c0-.3 0-.6.3-.8.2-.3.4-.3.7-.4.4 0 .8 0 1-.2.4-.3.4-1 .7-1.5a12.7 12.7 0 013-3.9l1.7-1.4c.2-.4.5-.5.5-1l-.2-.6-.2-1c1.5.7 1 .7 1.2 1.4.3.6 0 1 .1 1.7.1.8.5 1.1.5 1.9.1.9-.1 1.4-.3 2.3-.1.8-.1 1.3-.5 2a3.8 3.8 0 01-1.1 1.5l-.6.5-.1 1 1.1.4 1.6.4.4-.3c.2-.7 0-1.7.4-1.7.4-.1.7 0 .8-.3v-.7l.7-4.5.4-1.9.4-1.7c.7-2-.2-2.3-1-3.6-.5-.7-.7-1-.7-1.5V362a42.7 42.7 0 010-2.8l.4-.2c1.2-.7 1.7-.9 2.4-2.5a3.4 3.4 0 00.3-1.5v-1l-.4-1a3.2 3.2 0 00-.6-.8c-.7-1-1.7-1.1-2.7-1.5-1.5-.5-2.5-.4-4-.5-1.8-.2-2.7-.2-4.4 0-2 0-3.1.4-5.1.7l-4.9.4c-2.3 0-4.4-.5-5.8-.4-2.4.2-2.5.8-6.2 1.1a67 67 0 01-3.8.2l-2.2-.7c.9-.3 1.1-.5 1.5-1 .3-.4.2-.7.6-1.1l.7-1a2.2 2.2 0 00-.9-.4h-1a3 3 0 00-1.2.3l-.8.6-2.2-1.2a8.8 8.8 0 00-3-.9zm2 11.8z"/>
+      <g fill="none" stroke="#fedf00" stroke-linecap="round">
+        <path d="M568.8 359.5l-.8.3c-.9.4-1.6.4-2.6.5-2.6.2-4.3-1.1-7-.9-1.4.1-2 1.2-3.5 1.6a9.3 9.3 0 01-1.7.2l.5-1s-1.2.3-2 .3a7.5 7.5 0 01-1.6-.2l1-1-1.3-.2a4 4 0 01-1-.7 20.5 20.5 0 001.7-.3c1.5-.4 2-1.2 3.9-1.4 1.1 0 3 0 7.6.8 3 .5 4.4.2 5.5-.3.8-.3 1-1 1.1-1.8.1-.8-.4-1.4-.8-1.8-.1 0-.5-.3-1.1-.4"/>
+        <path fill="#fcd900" stroke-linecap="butt" stroke-width=".5" d="M524.8 350.6c-.5 0-.9 0-1.3.3-.5.3-.6.7-1 1.1.5.1.8.4 1.2.3.4 0 .5-.2.8-.5.3-.4.4-.7.4-1.2h-.1z"/>
+        <path d="M536 363.8a13.6 13.6 0 001 2.3c.2.8 0 1.2.2 2v1.6m6.8-7l-.3 1.3-1 3.5v.7m-11-4c.9.2.6 3.3 1.9 4"/>
+        <path stroke-linecap="butt" d="M560.1 369.8l.4-.3a8.2 8.2 0 002.7-1.8"/>
+        <path d="M552.4 368c3.5-.9 5.9-2.6 7.6-2.9m-4-1.5h.8c1.5-.3 1.7.6 2.7 1.2 1.9 1 2.1 2.3 4.3 3.4l.4.1.8.4"/>
+        <path fill="#fcd900" stroke-linecap="butt" stroke-width=".5" d="M517.7 354.5h.7l.8-.2c.3 0 .5 0 .7.2.2 0 .2.1.3.3 0 .2.2.3.1.5 0 .2-.3.4-.6.4-.2 0-.4 0-.5-.3a.5.5 0 010-.4 1 1 0 01-.9 0 1 1 0 01-.6-.5z"/>
+      </g>
+      <path fill="#0065bd" d="M525.1 364.2l-2-.9c.4-.2.7-.2 1-.5.3-.4.3-.8.5-1.3s.2-1 .7-1.4c.3-.2.8-.2 1.1-.1.4 0 .8.4.9.7 0 .6-.2 1-.3 1.5 0 .6-.3.9-.2 1.4 0 .4.2.6.4 1l-2-.4zm-1 1a.6.6 0 11.7.5.6.6 0 01-.7-.6zm-1.7-16.6h-.2c-.4-.4-.4-.8-.6-1.2a4 4 0 01-.3-1.2v-2c0-.3 0-.6-.2-.9 0-.2-.4-.3-.3-.4 0-.1.3 0 .4 0 .4 0 .6.1 1 .4.3.3.5.6.6 1l.4 1.5.3.8.5.6-.7.8-.9.6zm3.6 10.6l2.2 1a9.2 9.2 0 003.5-3.8c.9-1.8 1-2.7 1.4-4.4l-1.8-.5h-.4c-.5 1.8-.7 2.7-1.6 4.2-.8 1.3-1.7 2.3-2.6 3l-.7.5zm5 18.2l.8-1.3 1.4-1.1h.4a8.7 8.7 0 01-.5 2.8l-.4 1-.5.5c-.5-.8-1.3-1.3-1.3-2zm33 1.8l1.4.6 1.5.9v.5l-1.5.2a8.4 8.4 0 01-1.3 0h-1l-.6-.4c.5-.7.8-1.6 1.4-1.8zm-9.8-2l1.4.5 1.5 1c0 .1.1.3 0 .4a9 9 0 01-2.7.3l-1-.1-.7-.3c.6-.7.9-1.7 1.5-1.8zm-17.4 2.1l1.5.5 1.5 1v.5a9 9 0 01-2.8.2h-1l-.6-.4c.5-.7.8-1.6 1.4-1.8zm-9-29.8c-.6-.3-1-1-.6-1.6.1-.2.4-.2.6-.4.2-.3.1-.5 0-.8l-.1-1-.2-1c0-.6 0-1 .4-1.6.2-.3.7-.6.8-.6.2.1 0 .5 0 .8 0 .5.1.7.3 1.2l.7 1.3c.2.6.4.8.4 1.4 0 .5 0 .7-.2 1.2a2 2 0 01-.6.8 2 2 0 01-.8.4 1.1 1.1 0 01-.6 0z"/>
+    </g>
+    <use width="100%" height="100%" y="36.6" xlink:href="#b"/>
+  </g>
+  <path fill="none" stroke="#703d29" stroke-width=".4" d="M211.3 204.4h42v42h-42zm46.5 0H300v42h-42zm-46.4 78.4c.2.8.4 2 1.1 3.4.8 1.2.5 1.2 2.2 3a13.8 13.8 0 006.7 3.6c3.4 1 5.7 1 8.5.9 2.2-.1 3.9-.4 5.3-.6 2-.2 3.4-.4 5.7-.5a32.4 32.4 0 013.1 0c1.2 0 2.4.3 3.7.5 2.8.6 5.6 1.7 5.6 1.7v-43.9h-42v30l.1 2zm88.4 0c-.1.8-.4 2-1.1 3.4-.8 1.2-.5 1.2-2.2 3a13.8 13.8 0 01-6.7 3.6 26.1 26.1 0 01-8.5.9c-2.2-.1-3.9-.4-5.3-.6a55.6 55.6 0 00-5.6-.5 32.4 32.4 0 00-3.2 0c-1.2 0-2.4.3-3.7.5-2.8.6-5.7 1.7-5.7 1.7v-43.9H300v30l-.1 2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ae.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ae.svg
new file mode 100644
index 0000000..739c5d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ae.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ae" viewBox="0 0 512 512">
+  <path fill="#00732f" d="M0 0h512v170.7H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path d="M0 341.3h512V512H0z"/>
+  <path fill="red" d="M0 0h180v512H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/af.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/af.svg
new file mode 100644
index 0000000..90c34b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/af.svg
@@ -0,0 +1,81 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-af" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path d="M0 0h512v512H0z"/>
+    <path fill="#090" d="M341.3 0H512v512H341.3z"/>
+    <path fill="#bf0000" d="M170.7 0h170.6v512H170.7z"/>
+  </g>
+  <g fill="#fff" fill-rule="evenodd" stroke="#bd6b00" stroke-width=".5" transform="translate(2.2 86.8) scale(.84611)">
+    <path d="M319.5 225.8h8.3c0 3.2 2 6.6 4.5 8.5h-16c2.5-2.2 3.2-5 3.2-8.5z"/>
+    <path stroke="none" d="M266.7 178.5l4.6 5 57 .2 4.6-5-14.6-.3-7-5h-23l-6.6 5.1h-15z"/>
+    <path d="M290 172.7h19.7c2.6-1.4 3.5-5.9 3.5-8.4 0-7.4-5.3-11-10.5-11.2-.8 0-1.7-.6-1.9-1.3-.5-1.6-.4-2.7-1-2.6-.4 0-.3 1-.7 2.4-.3.8-1.1 1.5-2 1.6-6.4.3-10.6 5-10.5 11.1.1 4 .6 6.4 3.4 8.4z"/>
+    <path stroke="none" d="M257.7 242.8H342l-7.5-6.1h-69.4l-7.5 6.1z"/>
+    <path d="M296.4 219.7l1.5 4.6h3.5l-2.8-4.6h-2.2zm-2 4.6l1 4.6h4l-1.5-4.6h-3.5zm7 0l2.8 4.6h5.9l-4.6-4.6h-4.1zm-34.5 10.4c3.1-2.9 5.1-5.3 5.1-8.8h7.6c0 2 .7 3.1 1.8 3h7.7v-4.5h-5.6v-24.7c-.2-8.8 10.6-13.8 15-13.8h-26.3v-.8h55.3v.8H301c7.9 0 15.5 7.5 15.6 13.8v7h-1l-.1-6.9c0-6.9-8.7-13.3-15.7-13.1-6 .1-15.4 5.9-15.3 13v2.2l14.3.1-.1 2.5 2.2 1.4 4.5 1.4v3.8l3.2.9v3.7l3.8 1.7v3.8l2.5 1.5-.1 3.9 3.3 2.3h-7.8l4.9 5.5h-7.3l-3.6-5.5h-4.7l2.1 5.4h-5l-1.3-5.4h-6.2v5.8H267zm22.2-15v4.6h5.3l-1-4.6H289z"/>
+    <path fill="none" d="M289.4 211.7h3.3v7.6h-3.3z"/>
+    <path fill="none" d="M284.7 219.8h3.2v-5.6c0-2.4 2.2-4.9 3.2-5 1.2 0 2.9 2.3 3 4.8v5.8h3.4v-14.4h-12.8v14.4zm25.6 3.3h4v3.2h-4zm-2.4-5.3h4v3.1h-4zm-3.9-5.4h4v3.1h-4zm-3.3-4.5h4v3.1h-4z"/>
+    <path fill="none" d="M298 219.8l4.2.2 7.3 6.4v-3.8l-2.5-1.8v-3l-3.6-2v-3.3l-3.5-1.2V207l-1.7-1.5-.1 14.4z"/>
+    <path d="M315.4 210.3h1v7.1h-1z"/>
+    <g id="a">
+      <path d="M257.3 186.5c-1.2-2-2.7 2.8-7.8 6.3-2.3 1.6-4 5.9-4 8.7 0 2 .2 3.9 0 5.8-.1 1.1-1.4 3.8-.5 4.5 2.2 1.6 5.1 5.4 6.4 6.7 1.2 1 2.2-5.3 3-8 1-3 .6-6.7 3.2-9.4 1.8-2 6.4-3.8 6-4.6l-6.3-10z"/>
+      <path fill="#bf0000" d="M257 201.9a10 10 0 00-1.6-2.6 6.1 6.1 0 00-2.4-1.8 5.3 5.3 0 01-2.4-1.5 3.6 3.6 0 01-.8-1.5 5.9 5.9 0 010-2l-.3.3c-2.3 1.6-4 5.9-4 8.7a28.5 28.5 0 000 2.3c.2.5.3 1 .6 1.3l1.1.8 2.7.7a7.1 7.1 0 012.6 2 10.5 10.5 0 011.8 2.6l.2-.8c.8-2.7.7-5.9 2.6-8.5z"/>
+      <path fill="none" d="M249.8 192.4c-.5 3.3 1.4 4.5 3.2 5.1 1.8.7 3.3 2.6 4 4.4m-11.7 1.5c.8 3 2.8 2.6 4.6 3.2 1.8.7 3.7 3 4.5 4.8"/>
+      <path d="M255.6 184.5l1-.6 17.7 29.9-1 .6-17.7-30z"/>
+      <path d="M257.5 183.3a2 2 0 11-4 0 2 2 0 114 0zm15.2-24h7.2v1.6h-7.2zm0 3.1h7.2v13.8h-7.2zm-.4-5h8c.2-2.7-2.5-5.6-4-5.6-1.6.1-4.1 3-4 5.6z"/>
+      <path fill="#bd6b00" stroke="none" d="M292.6 155.8c-1.5.6-2.7 2.3-3.4 4.3-.7 2-1 4.3-.6 6.1 0 .7.3 1.1.5 1.5.2.3.4.5.6.5.3 0 .6 0 .7-.3l.2-.8c-.1-2-.1-3.8.3-5.4a7.7 7.7 0 013-4.4c.3-.2.4-.5.5-.7a1 1 0 00-.3-.7c-.4-.3-1-.4-1.5-.1zm.2.4c.4-.2.8 0 1 .1l.1.2c0 .1 0 .2-.3.4a8.2 8.2 0 00-3.1 4.6 16.7 16.7 0 00-.3 5.6 1 1 0 01-.2.6s0 .1-.2 0c0 0-.2 0-.4-.3a3.9 3.9 0 01-.4-1.2c-.3-1.8 0-4 .7-6 .7-1.8 1.8-3.4 3-4z"/>
+      <path fill="#bd6b00" stroke="none" d="M295.2 157.7c-1.5.7-2.5 2.3-3 4.2a13.6 13.6 0 00-.3 5.9c.2 1.3 1 2 1.6 2 .3.1.6 0 .8-.3.2-.3.3-.6.2-1-.4-1.6-.5-3.4-.3-5.1.3-1.7 1-3.2 2.2-4.1.3-.3.5-.5.5-.8a.8.8 0 00-.2-.6c-.4-.3-1-.4-1.5-.2zm.2.5c.4-.2.8-.1 1 0l.1.3-.3.4a6.5 6.5 0 00-2.4 4.4c-.3 1.8-.1 3.7.2 5.2.1.4 0 .6 0 .8l-.5.1c-.3 0-1-.5-1.2-1.7-.3-1.7-.2-3.9.3-5.7.5-1.8 1.5-3.3 2.8-3.8z"/>
+      <path d="M272.3 187.4h8v11h-8zm.5 17.4h7.7v2.4h-7.7zm-.2 4.1h8v8.7h-8zm-.6 10.5h8.7v4.9H272zm1.1-16.6h7l1.4-2.4h-9.6l1.2 2.4zm9.4-8.6l.1-6h4.8a17.4 17.4 0 00-4.9 6z"/>
+      <path fill="none" d="M273.6 196.7c0 1.3 1.5.8 1.5.1v-5.6c0-1 2.4-.8 2.4-.1v6c0 1 1.7.9 1.6 0v-7c0-2.2-5.5-2.1-5.5-.1v6.7zm0 13.3h5.7v7h-5.7z"/>
+      <path d="M277.2 213h2v1h-2zm-3.5 0h2v1h-2zm2-3h1.5v3h-1.5zm0 4h1.5v3.1h-1.5zM244 139c.4 5.5-1.4 8.6-4.3 8.1-.8-3 1-5.1 4.3-8.1zm-6.5 12.3c-2.6-1.3-.7-11.5.3-15.8.7 5.5 2 13.3-.3 15.8z"/>
+      <path d="M238.4 151.8c4.4 1.5 8-3.2 9.1-8.7-3.6 5-9.5 5-9 8.7zm-3.3 5.1c-3.4-.9-1.4-11.7-.7-16 .7 4.5 3.1 14.5.7 16zm1.2-.3c.2-3.7 3.9-2.7 6.5-4.7-.5 2-2 5.2-6.5 4.7zm-4.2 5c-3.4-1-1.4-12.6-1.6-17.4 1 4.2 4.2 16.3 1.6 17.4zm1.6-.5c2.8.9 6.5-1 6.8-4.3-2.5 1.7-6.3.4-6.8 4.3z"/>
+      <path d="M229.5 166.7c-3.2.3-1.8-9.6-1.8-18.8 1.2 8.6 4.5 16.5 1.8 18.8z"/>
+      <path d="M230.7 166.3c2.2 1 6.1-.7 7.2-4.4-4 1.7-6.6 0-7.2 4.4zm25.6-22.2c-.6 4.9-2.6 7.7-5.5 7.2-.8-3 1.6-5 5.5-7.2zm-7.8 12.4c4.9.7 6.6-3 10-7.9-4.7 3.4-10.2 4-10 8z"/>
+      <path d="M247 156c-2.6-3.2 0-7.3 2-10.7-.4 5.1 1.3 8-2 10.7zm-1 5.3c-.4-3.2 5-3.9 7.4-5.6-.9 1.8-2 6.7-7.5 5.6z"/>
+      <path d="M244.8 161.3c-3.7-.4-2.2-6.7.5-10.1-1.1 4.8 2 8.1-.5 10.1z"/>
+      <path d="M242 166.6c-4.2-2-1.5-7.2 0-10.3-.6 4.1 2.8 7.2 0 10.2z"/>
+      <path d="M242.8 166c2.2 3 6.5-.8 7.4-5.2-3.7 3.1-6.5 2.6-7.4 5.3zm-9.6 20.3c-.4-4.3 2.8-12 .5-16.2-.3-.6.7-2.1 1.4-1.2 1 1.5 2 5.7 2.5 4.1.4-1.7.5-4.6 2-5.2 1-.3 2.3-.6 1.9 1-.4 1.4-1.2 3.4-.3 3.5.5 0 2-2 3.3-3 1-.8 2.6.6 1 1.8-4.8 4-9.5 5.9-12.3 15.2zm-8.7 64.5c-.6 0-1.3-.3-.6.6 5.7 7 7.3 9 15.6 8 8.3-1.1 10.3-3.4 16.2-6.7a14.6 14.6 0 0111.2-1c1.6.5 2.6.5 1.4-.7-1.2-1.1-2.5-2.7-4-3.8a17.5 17.5 0 00-12.7-2.7c-6 1-11.1 4.9-17.2 6.4a25 25 0 01-9.9 0zm47.8 12.5c1 .2 1.7 2.2 2.3.9.8-2.3.2-4-.8-3.9-1.2.3-3.1 3-1.5 3z"/>
+      <path stroke="none" d="M220.6 183c-1.2-1.4-.9-1.8 1-1.9 1.4 0 4.2 1 5.3.1 1-.7.5-3.7 1-5 .2-.9.7-2 2-.2 3.6 5.8 8 12.8 10 19.6 1 3.8 0 9.8-3.4 13.8 0-3.4-1.2-5.7-2.7-8.6-2-3.7-9.1-14-13.2-17.9z"/>
+      <path d="M235.5 213.4c4 0 4.7-5.3 4.7-6.8-2 .4-5.4 3.7-4.7 6.8zm34.5 51.9c2.8.6 2.7-6.2-.2-9.1 1.3 4.4-2 8.4.1 9zm-1.2-.1c.2 3.2-8-.4-10-3 4.8 2.1 9.8.4 10 3zm-3.5-4.6c.3 3.1-7 .3-9.3-2.1 4.9 1.6 9-.5 9.3 2zm1.3.4c2.9.7 2.4-6.4-.4-8.8 1.4 4.7-1.8 8.1.4 8.8zm-3-4.3c2.9.7 1.2-5.4-.9-7.8.4 4.4-1 7.5 1 7.8zm-1.5 0c.3 3.2-5.4.8-7.6-2.3 4.8 1.5 7.3-.3 7.6 2.3zm-1.5-2.5c1.8-1.3-.1-4.8-3.7-4.6.4 2.1 1.6 5.9 3.7 4.6zm14 14.7c.1 3.2-8 1.6-10.6-1.8 5.2 1 10.3-.8 10.5 1.8zm-32.4-5.8c.3 3.2-8.6-.4-10.8-3.4 4.7 1.6 10.5.8 10.8 3.4zm5.4 1.3c1.9-1.3-1.9-4.7-5-5.5.4 2.1 3 6.8 5 5.6zm.6 2.3c.2 2.9-9.5 1.3-12-1.4 8.3 1.5 11.7-1.1 12 1.4z"/>
+      <path d="M252.8 268.6c1 2.7-8.3 2-11.6.5 5.3 0 10.8-2.4 11.6-.5z"/>
+      <path d="M257.1 270.6c1 2.4-7.6 2.4-11.8 1 5.6 0 10.8-3.4 11.8-1zm6.3 1.3c1.6 2.9-7.6 3.1-10.5 1.7 5.2-.7 9.2-4 10.5-1.7zm-10.7-4.9c-2.9 1.8-2.7-3.6-5-7.3 3.6 3.3 7 5.6 5 7.3z"/>
+      <path d="M257.9 269c-2.4 2.1-4.4-5.3-6.6-9.5 3.6 4 8.8 7.7 6.6 9.4zm6.8 2c-2 2.4-8-7-10.2-12 3.3 3.9 11.8 10 10.2 12zm-5.8 7.2c-1 3.6-16.2-3.4-18-7.1 8.8 4.6 18.2 3.6 18 7zm-48.7-73.8c-.4-.5-1.4 0-1.2 1.1.3 1.5 2.5 9.2 6.3 11.8 2.7 2 17 5.1 23.4 6.5 3.6.7 6.5 2.5 8.9 5.3a94.4 94.4 0 00-3-9.8c-1.2-3-4.4-6.2-7.8-6.3-6.1-.3-14.1-.8-20-3.3a16 16 0 01-6.7-5.3z"/>
+      <path d="M245.5 234.9c2 1.4 4.1-3.7 1.7-8.6-.1 4.7-3.8 6.3-1.7 8.6z"/>
+      <path d="M247.4 239.6c2.7.8 3.5-4 1.8-7.8.3 4.1-4.3 6.6-1.8 7.8z"/>
+      <path d="M249.5 243.4c2.6 1.3 3.5-3.6 1.7-7.1.2 4.5-3.7 5.9-1.7 7z"/>
+      <path d="M248.4 243.7c-1 3-7-2.7-8-5.8 3.7 3.7 8.7 3.2 8 5.7z"/>
+      <path d="M245.7 239c-1.2 3-8.7-5-10.4-8.7 3.7 3.7 11.2 6.5 10.4 8.6z"/>
+      <path d="M244.2 234.3c-1.2 3.5-9.3-5.8-11.7-9.1 4 3.6 12.6 6.6 11.7 9.1zm-.3-3.4c3-.6-.1-3-3.7-6.9-.1 4.1.5 7 3.7 6.9z"/>
+      <path d="M239 228.5c1.3-1.3-1.1-1.9-4.1-5.3-.5 2.3 2.8 6.5 4.2 5.3zm14 15.2c1.6 1 2.6-2.3.7-5.2-.5 3.2-2.1 4-.7 5.2zm-34.2-20.3c-3.3 2-8.6-6-10-9.3 2.9 3.8 10.6 7.2 10 9.3z"/>
+      <path d="M221.7 228c-1.9 2-7.7-3.5-9.7-6.3 3 2.7 10.5 3 9.7 6.3z"/>
+      <path d="M224.8 232.2c-.6 2.8-9-3.5-11-6.5 3.6 3.5 11.6 3.2 11 6.5z"/>
+      <path d="M223.5 235.3c-1.3 2.5-8.2-3.8-9.9-7 4.3 3.6 11 4.5 10 7zM220 223c2.1-2.3 1.2-3.4-.4-7-.8 3.7-2.1 5.2.4 7zm2.9 4.3c4 .2 0-4.6-1-8.7.4 4.6-1 8.3 1 8.7z"/>
+      <path d="M225.4 231.1c2.7-.6 2-4.5-.2-9.2.5 5.1-2.3 8 .2 9.2zm-1 7.7c-1 3-8.8-4-10-6.8 4 3.4 10.7 4.5 10 6.8z"/>
+      <path d="M229.1 243.6c-1.1 3-9.3-3.2-11.8-6.6 4.9 4 12.4 3.6 11.8 6.6z"/>
+      <path d="M233.9 248.5c-1.3 4.3-9.9-2.6-12.4-6 5.4 4.2 13 3 12.4 6zm-8-11c2.3 1.1 3.2-5.4 1.9-10.1 0 5-4.7 8.8-2 10z"/>
+      <path d="M229.8 242.7c2.8.8 2-6.3-.5-11-.3 4.7-2.3 9 .5 11zm5 4.9c3 .1 1-6.1-1.6-9.6.4 4.5-1 9 1.6 9.6zm-5.5 2.6c-1 1.6-3.2-1.3-7-3.5 3.4 1 7.4 2 7 3.5zm-1.8-52.7c3-2.2.7-6.2 0-10-1 3.6-3.4 8.4 0 10zm0 5.3c-4.5-.5-3.8-6.1-4-9.7 1.4 4.9 5 5.7 4 9.8zm.6-.7c3.7-.2 3.5-4.4 3.7-8.6-1.9 3.9-4 4.5-3.7 8.6z"/>
+      <path d="M228 207.3c-3 .3-4.4-2.6-5-7 2.7 4.1 5.1 2.8 5 7zm1-.3c3.7.5 3-3.8 3-7-1.2 3-4.2 4-3 7z"/>
+      <path d="M223.2 205.2c.3 2.8 2.1 7.6 5 6.5 1.1-3.4-2.6-4.1-5-6.5z"/>
+      <path d="M229 212c-1.2-2.4 3-3.7 3.8-6.9.5 4.6.1 7.6-3.8 7zm-11.9-29.2c2.3-2.4.3-6.4-.4-10.2-1 3.6-2.5 8.4.4 10.2zm0 4.6c-4 .5-5-7.7-5.5-11.3 1.4 4.9 6 7 5.5 11.4zm.8 0c2.8-1.5 2.2-4.7 3-7-1.8 2.9-3.6 3.3-3 7z"/>
+      <path d="M217 192.8c-4.1.3-6.6-8.8-6.8-12.4 1.3 4.9 7.4 7.5 6.9 12.4zm.9-.2c4-.9 3.5-3.5 2.9-7.6-1.3 4.2-3.5 3.3-2.9 7.6z"/>
+      <path d="M217 198c-4.6.8-4.3-6.6-8-11.9 3.2 4 9 9 8 11.9zm1-.3c3.6.2 4-5.1 3.8-7.3-.9 2.2-5 4.2-3.7 7.4z"/>
+      <path d="M209.8 192.3c1.7 5.7 4.2 11.4 7.2 11 1.5-3.3-2.9-3.7-7.2-11z"/>
+      <path d="M218.1 202.4c-1.2-2.5 3-3.7 3.8-6.9.5 4.6.1 7.6-3.8 6.9zm-7.1-3.6c2.5 5.1 3.6 11 7 10.1 1.3-4-3.8-4.8-7-10.1z"/>
+      <path d="M218.7 208c-1.5-2.8 2.7-3.7 3.8-7.4.5 4.8 0 8.3-3.8 7.3zm7.2-34.5c2.4.6 5-2.1 4.1-6.2-2.8.6-4 3.2-4.1 6.2zm-7.9-2.1c.2 1.2 1.7 1.3 1.2-.4a5.3 5.3 0 010-3.4 7.5 7.5 0 000-4.6c-.4-1-1.8-.4-1.2.4.6.9.7 2.8.2 3.7-.6 1.3-.4 3-.2 4.3zm22.9 16c-1 1.3-2.9.4-1.4-1.5 1.2-1.5 3-2.8 3-4.4.2-2 1.3-5 2.4-6.1 1.1-1.1 2.4.4 1.2 1.2-1.3.8-2.2 4.4-2.1 5.8-.1 2-2 3.5-3.1 5zm-3-2.3c-1 1.4-2.4.5-1.6-1.7.7-1.5.8-3.5 1.6-4.6 1.2-1.7 3-3.1 4.1-4.2 1.2-1 2 0 1 1a27 27 0 00-3.3 4c-1.4 2.2-.8 4-1.8 5.5zm-15.7-7.2c-.1 2 1.5 2.4 1.4-.4 0-3-2.2-5.8-1-10.3.8-2.2.8-6.3.4-8.4-.4-2.2-2-.8-1.3.9.6 2-.1 5.6-.6 7.5-1.5 5.4 1.2 8 1 10.7zm4.3-11c-.2 1.9-1.8 2-1.3-.5.4-2 .4-3.6 0-5.3-.6-2.1-.4-5.7 0-7.2.5-1.6 2-.7 1.4.5a9.9 9.9 0 00-.3 5.9c.6 2 .5 4.8.2 6.7zM210.9 204c.8.9 2 .3 1-1-1-1-.7-1.2-1.3-2.4-.6-1.4-.5-2.1-1.2-3-.7-1-1.6 0-1 .7.8 1 .6 1.6 1 2.5 1 1.5.7 2.3 1.5 3.2zm20.4 24.6a8.6 8.6 0 014.4 6.7 16 16 0 002 7.1c-2-.5-3-3.7-3.3-6.8-.3-3.2-2-4.5-3-7zm5.1 5.9c1.7 3.1 4 4.3 4.2 6.6.2 2.7.4 2.8 1.1 5.4-2-.5-2.5-.7-3-4.7-.3-2.8-2.6-4.7-2.3-7.3z"/>
+      <path stroke="none" d="M289 263.3c1 1.8 2 4.5 4 4 0-1.3-2.1-2.3-4-4zm3 .6c3.7 1.6 7 1.2 7.5 3.6-3.6.4-5-1-7.6-3.6zm-16.1-12.7a14 14 0 015 7.7 29 29 0 003.6 7.8 13 13 0 01-5.3-7.4c-.7-3-1.6-5.3-3.3-8zm3.1 0c2.8 2.2 5.4 4.8 6.2 7.9.8 2.9 1.3 5.1 3.2 8-3-1.9-4.1-4.7-5-7.8-.7-3-2.5-5.2-4.4-8zm9.2 7.3a1.1 1.1 0 01.7-1.2 33.4 33.4 0 012.6-.8c1-.3 1.6.4 1.6.9v2c0 .7-.2.8-.7.9-.7.1-1.7.2-2.4.7-.6.4-1.2.1-1.5-.5l-.3-2zm10.6 0c0-.6-.2-1.1-.6-1.2a5.4 5.4 0 00-2.4-.4c-1 0-1.1.2-1.1.6v2.1c0 .8 0 .8.4 1 .7 0 1.8 0 2.5.6.5.3 1 0 1.1-.6l.1-2.1z"/>
+    </g>
+    <use width="100%" height="100%" x="-600" transform="scale(-1 1)" xlink:href="#a"/>
+    <g stroke="none">
+      <path d="M328.5 286.6c0 1.2.2 2.2 1 3.1a19 19 0 00-13.8 1.1c-1.8.8-4-1-1.9-2.7 3-2.3 9.7-1 14.7-1.5zm-57.5 0a7 7 0 01-.4 3c4.4-1.7 9.1-.2 13.6 1.6 3 1.3 3.3-1 2.8-1.7a6.5 6.5 0 00-5-2.9h-11zm3.8-21.7c-1.3-.5-2.7 0-4 1.4-4.3 4.2-9.4 8.3-13.5 11.6-1.5 1.3-3 3.7 3.4 6 .3.2 5 2 8 2 1.3 0 1.3 1.8 1 2.3-.5 1-.1 1.4-1.1 2.3-1.1 1 0 2.1 1 1.3 3.6-3.2 9.6-1.1 15.3.7 1.4.4 3.8.3 3.8-1.6 0-2 1.5-3.4 2.4-3.5 2.4.4 14 .5 17.5.1 2-.3 2.2 2.9 3.3 4 .8.9 3.7 1.1 5.8.2 4-1.8 10-1.8 12.5 0 1 .7 1.9 0 1.3-.7-.8-1-.7-1.6-1.1-2.4-1-2-.2-2.4.8-2.5 11-1.5 14.6-5.2 11.2-8.3-4.4-3.8-9.2-7.7-13.4-12.2-1.2-1.2-2-1.7-4.3-.7a66.5 66.5 0 01-25.3 5.9 76 76 0 01-24.6-5.8z"/>
+      <path fill="#bd6b00" d="M326.6 265.5l-1.6.4c-9 3.2-17.2 5.4-25.7 5.4-8.3 0-17-2.4-24.9-5.6a2.3 2.3 0 00-1.5 0c-.5.1-1 .4-1.3.7a115.5 115.5 0 01-11.8 10.3c-.7.5-.6 1.8.5 2.2 8.3 3 16.4 8.5 39.6 8.3 23.5-.2 31.8-5.6 39.2-8.1.5-.2 1-.5 1.3-1a1 1 0 00.1-.8 2 2 0 00-.6-.8c-4.3-3.5-8.8-6.3-11.8-10.4-.3-.5-.9-.6-1.5-.5zm0 .5c.5 0 1 0 1.1.3 3 4.3 7.7 7 11.9 10.5l.4.7a.5.5 0 010 .4c-.1.3-.6.6-1 .7-7.6 2.6-15.7 8-39 8.2-23.2.2-31.2-5.3-39.5-8.3-.8-.4-.7-1.2-.4-1.4 4.2-3.2 8.2-6.8 11.8-10.4a2.5 2.5 0 011.1-.6h1.2a68 68 0 0025 5.6c8.7 0 17-2.2 26-5.3a6.7 6.7 0 011.5-.4z"/>
+      <path d="M269.7 114.6c0-1.4 2-1.5 1.8.4-.3 2.3 4.5 8.3 4.9 12 .3 2.5-1.5 4.6-3.2 6a6.6 6.6 0 01-6.8.5c-.9-.8-1.7-3.3-1-4.3.2-.3 1.3 3.7 3.7 3.7 3.3 0 6-2.5 6-4.7.2-3.8-5.3-9.8-5.4-13.6zm9.5 9.4c.6-.4 1.4 1.3.8 1.7-.5.3-1.5-1.3-.8-1.8zm1.5-3.5c-.3.2-.8 0-.7-.2a12 12 0 013.6-3.3c.4-.2 1 .4.8.7a11 11 0 01-3.7 2.8zm12.6-10c.3-.6 2.1-1.3 2.6-1.7.4-.5.6.4.4.7-.3.7-1.9 1.7-2.6 1.8-.3 0-.6-.4-.4-.7zm4.3.3a8.3 8.3 0 012.5-3.4c.5-.3 1.3 0 1.1.4a9 9 0 01-2.9 3.3c-.3.3-.8 0-.7-.3zm-3.7 2.7c-.3.2-.1.7.1.8.6.2 1.5.2 2 0 .6-.4.3-2.9-.5-1.6-.6.8-1 .6-1.6.8zm-7.3 5.6c-1.3-1 .4-2.4 1.7-1.4 2.7 2-4 9.8-7.6 13.4-.7.7-1.3-1-.4-1.9a33.7 33.7 0 006.7-7.6c.4-.5.7-1.6-.4-2.5zm15.3-6.6c.1-1-1.6 0-1.6-1.3 0-.7 1.9-1.2 2.7-.4 1.3 1.4.3 3.7-2 3.9-1.8 0-5 2.7-4.5 3.2.5.7 5.4 1.1 8.3.7 1.8-.3 1.4 1.3-.4 1.5-1.8.2-3.2 0-4.8.6-2 .5-2.8 3-3.9 4-.2.2-.8-.8-.6-1.2.8-1.2 2-3 3.4-3.6.8-.3-2.4-.4-3.4-.7-.8-.2-.6-1.3-.3-1.9.4-.8 3.4-3.9 4.7-3.8 1.1 0 2.3-.3 2.4-1zm5 .2c.6-.5 1-1.3 1.5-1.8.3-.3.9 0 .8.8-.1.7-1 1.2-1.5 1.7-.5.3-1-.4-.7-.7zm6.5-2.3c.9 0 1 1.6.2 1.8-.6.2-1-1.7-.2-1.8zm-2.1 5c0 1.5.7 1.4 2 1.3 1.3 0 2.4 0 2.4-1.2 0-1.3-.7-2.5-1-1.6-.1.8-.3 2.2-.8 1.6-.4-.5-.2-.6-1 .2-.5.5-.5-.2-.8-.6-.2-.3-.8.2-.8.4zm-9.2 7.2c-.3 1.9 0 4.5.9 4.5 1.2 0 3.6-4 4.8-6.2.7-1.2 1.8-1.4 1.3-.1-.7 1.9-.6 6 0 7.2.4.6 3-.6 3.4-1.5.8-1.7.1-4.8.4-6.7.1-1.2 1.3-1.5 1.2-.3a75.6 75.6 0 00-.1 7.5c0 1 2.9 2.4 3.3-.6.2-1.8 1.2-3.7 0-5.7-.8-1.3 1.1-1.2 2.1.6.7 1.2-.6 3.2-.5 4.7 0 2.4-1.8 3.8-3.1 3.8-1.2 0-2-1.5-3-1.5s-2.2 1.7-3 1.6c-3.6-.2-1.7-5.3-2.8-5.4-1.2 0-2.5 5-4 4.9-1.4-.2-3-4.2-2.3-5.8.5-1.6 1.5-2 1.4-1zm16.9-8c-1.7-1 0-3.7.9-2.8 1.6 2 3.2 6.5 4.4 6.9.7.2.6-3.4 1.1-5 .4-1.3 1.8-.9 1.6.7-.1.5-2 6.4-1.8 6.6a47.1 47.1 0 013.3 7.8c.3 1.2-1.1.4-1.3.2-.9-1.4-2.4-6.5-2.4-6.2l-1.7 7.7c-.2 1-1.7.8-1.3-1 .3-1.4 2.3-8.3 2.2-8.6a17.2 17.2 0 00-5-6.3z"/>
+      <path d="M322 131.2c-.4 0-1.2 1 1.2 1.5 3.1.6 6.6-.5 7.6-3.6 1.3-3.7 2-7.2 2.7-8.5.8-1.5 1.8-1.4 1-3.6-.5-1.7-1.5-1.2-1.7-.3-.5 2.3-2.6 10-3.3 11.3-1.2 2.6-3.7 3.6-7.5 3.2z"/>
+      <path d="M328.4 119c-.4-.7-1.2 0-1 .7a1.2 1.2 0 001.2 1c.7 0 2.2.1 2.2-1 0-.8-.7-1.5-1.1-.6-.5.8-1 .7-1.3 0zm.7-3c-.2.2 0 1.1.3 1a7 7 0 003.3-.8c.2-.2.1-.7-.2-.7-1 0-2.6 0-3.4.5zm8.8 2.3c.8-1.2 2.8-1.3 2 .4a614.3 614.3 0 01-6.3 12.3c-.8 1.4-1.4.7-.8-.4.7-1.4 4.9-12 5.1-12.3z"/>
+      <path d="M330.2 133c-.2-.8-1.5-2-1.3.2.2 3.8 5.5 2.6 7 1.3s.3 4.3 2.2 4.9c1 .3 3-1.1 4-2.4 2.7-3.5 4.5-8.6 7-12 1-1.4-.5-2.4-1-1.3-2.4 3.8-5.2 11.6-8.3 13.6-2.5 1.6-1.7-2-1.8-3.2-.1-.8-1.1-2-2.4-.9a5.5 5.5 0 01-3.7 1.2c-.7 0-1.4 0-1.7-1.4z"/>
+      <path d="M339.6 126c0-.3-1.1-.4-1 .7 0 .8 1 1 1.1 1 1.5-1.2-.3-.6-.1-1.8zm-2.3 4.4c-.3 0-.6 1 .2 1.1l3.9-.2c.4 0 .6-.9-.4-.8-1.2 0-2.7-.3-3.7 0zm-62-16.6c.5 0 1.6 1.4 1.5 1.9 0 .2-1.2 0-1.5-.3-.3-.3-.2-1.6 0-1.6zm-5.3 10.4c-1 .6.2 1.7 1 1.2 2.8-1.9 7-3.8 8-7.5.3-1.2 1.4-3.1 2.5-3.5 1-.5 2.6 1.9 3.6 0 .6-1 2.7.7 3.2-.4.6-1.3.3-2 .3-3.4 0-.8-.7-1-1.2.3-.2.6 0 1.2-.1 1.6-.2.2-.6.4-1 .2-.2-.2 0-.7-.6-1-.2 0-.6-.1-.8.2-.7 1.3-1 2.5-2.1 1-.9-1-1.4-3.1-2-.3-.2 1-1.7 2.4-2.6 2.4-1.1 0-.8-3-3.2-2.5-1.3.3-1.2 2.7-1 3.5.3 1.3 4 .4 3.7 1.2-.6 2.7-4.4 5.4-7.7 7zm-22.7 13.2c-.1.5.5 1.7 1.1 1.8.6 0 1-1.3.8-1.8-.2-.3-1.8-.3-1.9 0zm3.3 4.9c-.4-.4-1.6.7-.6 1.5.5.5 2.5 1.1 3 .2.8-1.2-.7-5.5 0-6 .5-.5 2.8 2.8 4 3 2.7.4 2-4.6 5-4.2 1.9.2 2.1-2.2 1.8-3.8-.2-1.5-2.6-3.6-3.7-4.6-1.4-1.2-2.1 1-1.2 1.6 1.2 1 3.3 2.9 3.6 4.1.1.6-1.4 1.8-2 1.5-1.4-.8-2.6-4-3.8-4.7-.4-.2-1.4.3-1 1.3.6 1.1 3 2.7 3.1 3.9.1 1-1 3.2-1.8 3.2-.9 0-3-2.7-3.7-4-.4-.5-1.5-.5-1.7.4a22 22 0 00.5 5.5c.2 1.6-.9 1.7-1.5 1.1zm-4-8.6c-.4.4.8 1.2 1 1 .4-.4 2.1-2.3 1.8-3-.3-.6-2.6-2-3-1.3-.7 1.1 2.2 1.7 1.7 2a7 7 0 00-1.5 1.3zm4.1-8.4s.8 2.5 1.4 1.4c.4-.7-1.4-1.4-1.4-1.4zm1.2 4c-.2 0-1 .7-.5 1 .8.4 2.9.8 2.4-.7-.3-.9 3.2 0 2.3-2.4a3.7 3.7 0 00-1.7-1.7c-.4 0-1.5.5-.8.9.5.2 2 1.1 1.5 1.7-.7.6-1.1-.3-1.9-.1-.4 0-.1 1.2-.4 1.5 0 .2-.7-.4-.9-.3zm5.5-9.5a3.5 3.5 0 00-1.2 2c0 .2.3.6.5.5a3.2 3.2 0 001.2-1.9c0-.3-.2-.8-.5-.6zm2.8-.3c-.8-1 1-2.6 1.7-.5.5 1.3 5.5 7.9 6.5 10.1.8 1.5 0 2.1-.9 1-2.5-3.2-4.6-7.2-7.3-10.6zm5.2.1c.9-1 2.7-3 2.2-4-.4-1-1.5-1-1.7-.7-1 1.3.8 1 .5 1.4-.5 1-1 1.6-1.3 2.6-.1.3.1.9.3.7zm77.8 3.2c-.7-.5.6-3 1.5-2 2.3 2.7 3.4 11.6 4.1 18.3 0 0-1 .9-1 .7 0-3.5-1.5-14.4-4.6-17zm-53.1-8.6c-.8-1.8 1.1-2.4 1.4-1.2 1.3 5.8 4.5 10.2 7 14.1.7 1.2 0 2-1.7.8-1.2-.8-2.5-3.9-3-4-1.2-.2-3.8 5-9.1 3.5-1.4-.4-1.3-4.5-1.4-6.3 0-.9 1-1 1 0 0 1.7 0 5.2 2.1 5.4 1.8 0 5.6-2.4 6.4-4.4.8-2-1.9-5.9-2.7-8z"/>
+      <path d="M344.6 138.4c.4-1.2 6.1-10.8 6.9-12.9.4-1 2 1.8.4 3.3-1.4 1.2-5.5 8-6.3 10.4-.4 1-1.4.5-1-.8z"/>
+      <path d="M354.3 129.3c1-4 3.6.6 1.3 2.8-3.4 3.4-4.5 9.9-10 10.9-1.4.3-4-.7-4.8-1.3-.3-.2.2-1.6 1.1-.9 1.3 1 4.1 1.3 5.6.1a25.4 25.4 0 006.8-11.6zm-57 12.7c-.3.3-1 .3-1.1.7-.3 1.4 0 2.2-.3 3.6s-1.3 1.4-1.2.3c0-1.4 1.3-3.5.4-3.6-.6-.1-1-.9-.4-1.3 1.1-.7 1.7-.6 2.4-.4.3.1.4.5.2.7z"/>
+      <path d="M296.5 140c-1.4 1.4-2.8 1.9-4.1 3.5-.6.6-.5 1.5-.9 2.4-.3.9-1.4 1-1.7.9-.5-.4-.4-2-1-1.2-.6.9-.9 2-1.7 2-.7 0-2-1.5-1.3-1.5 2.3-.3 2.2-2 3-2.2 1-.1 1 1.5 1.7 1.2.4-.2.7-2.1 1.2-2.6 1.5-1.6 2.7-2.4 4.3-3.6.7-.6 1.3.5.5 1.2zm5.3 5c-1.2.2-1 1.7-.6 1.8.5.3 1.4.4 1.7-1.3.2-.7.3 3.5 1.8 1.9 1-1 3.1.2 4-1 .7-.9 1-1.5.4-2.7-.2-.3-1-.2-1 .7 0 .8-.5 1.7-1.3 1.6-.4-.1.2-1.9-.2-2.4a.5.5 0 00-.7 0c-.3.4.3 2.2-.6 2.4-1.2.2-.6-1.2-1-1.4-1.7-.8-1.8.2-2.5.3zm9-3c.9-.2.6-.2 2-1.3.5-.4.6.8.5 1.3 0 .7-1 .2-1.3.9-.4.9-.2 3-.4 3.8 0 .4-.8.4-.8 0-.2-1 .1-2 0-3.3 0-.4-.5-1.1 0-1.3zm-5-2.5c-.2.9-.2 1.6-.2 2.3 0 .5 1 .2 1 .1 0-.8.2-2 0-2.3-.2-.1-.7-.3-.8-.1z"/>
+      <path d="M299.5 130.2l-1.4 5.6-2-3.8v3.9l-4.4-5.2 1.5 5.6-4-3.4 2.2 3.8-7-4.5 4.4 5.2-5.6-2.8 4 3.4-9-3.4 8.7 4.3a29 29 0 0112.6-2.6c4.9 0 9.3 1 12.5 2.6l8.8-4.3-9 3.4 4-3.4-5.5 2.8 4.3-5.2-7 4.5 2.2-3.8-4 3.3 1.5-5.5-4.3 5.2V132l-2 3.8-1.5-5.6z"/>
+    </g>
+  </g>
+  <path fill="#fff" d="M249 299.7l-.1 2.2h-.4v-1.5a7.4 7.4 0 00-.4-1.3 5.8 5.8 0 00-.5-1 11.3 11.3 0 00-.8-1.1l.7-1.8a5.3 5.3 0 011.1 2 7.5 7.5 0 01.5 2.5m5.5-3.4c0 .6-.1 1-.3 1.2-.2.3-.6.5-1 .6l.2 1.1a5.3 5.3 0 010 1.7v1h-.4v-1a4.4 4.4 0 00-.2-.8 28.8 28.8 0 00-.3-.8 8.4 8.4 0 00-.6-1.2l-.8-1.3.5-1.6.8.9.7.2c.7 0 1-.3 1-1h.3a8 8 0 000 .5v.5m5.1 3.9l-.4 1.7-.6-.6a3.5 3.5 0 01-.3-1 9.9 9.9 0 010-1.4 3 3 0 01-.9.1c-.4 0-.7 0-1-.3a1 1 0 01-.4-.8c0-.7.2-1.3.6-1.8.3-.6.7-.9 1.2-.9.3 0 .6.1.7.3l.3.8v1.6c0 .7 0 1.2.2 1.4 0 .3.3.5.6.9m-1.5-2.9c0-.4-.3-.6-.7-.6a.8.8 0 00-.4.1c-.2.1-.2.2-.2.3 0 .2.2.3.8.3a2.2 2.2 0 00.5 0m6.9 2.3l-.2 2.1c-.4-.3-.8-.8-1.1-1.5a20 20 0 01-1.1-3.3 41.3 41.3 0 01-.8 3l-.6 1.3a2 2 0 01-.6.6v-2l.8-1.2a6 6 0 00.6-1.4 16 16 0 00.3-2h.4l.7 2a6.7 6.7 0 001.6 2.4"/>
+  <path fill="#bf0000" d="M280.5 319.2c.3.3.5.6.6 1l.2 1.2h-.6a6.2 6.2 0 00-.7-1.1 15.2 15.2 0 00-1-1l-1.3-1.2a27.3 27.3 0 00-1.6-1.3l-.5-.4-.2-.6a9 9 0 01-.1-1.3l2.1 1.7a35.3 35.3 0 012 1.8l1.1 1.2m-7.6-4.6l-.1 1.6-2.5-.1.2-1.6h2.4m6.7 7.1l-6 1.9-1.2-1.6 5.2-1.5a6.3 6.3 0 00-.5-.7l-.7-.5a1.1 1.1 0 01-.4.8 2 2 0 01-.8.5 2.7 2.7 0 01-1.4 0c-.5 0-.8-.3-1-.6a3.1 3.1 0 01-.5-1.7c0-.8.2-1.3.6-1.5.6-.2 1.4 0 2.5.5a6.5 6.5 0 012.4 2l1.8 2.4m-4.7-3.2a3.1 3.1 0 00-.6-.2.9.9 0 00-.5 0 .5.5 0 00-.4.3.4.4 0 000 .4l.4.2h.5a.9.9 0 00.3-.3l.3-.4m-6.4-1.2l-.4 1.6-2.5-.3.4-1.5 2.5.2m6 6l-1.4.4a4.2 4.2 0 01-1.4 0 2.8 2.8 0 01-1.2-.3c-.2.4-.6.7-1.1 1a5.9 5.9 0 01-1.3.4l-1 .3-.8-1.6 1-.2 1-.3.6-.4a4.7 4.7 0 00-.7-.4 1 1 0 00-.6-.1.3.3 0 00-.2 0 .5.5 0 000 .3h-.5c-.4-.7-.5-1.2-.3-1.6.3-.4.8-.7 1.6-.9.8-.2 1.5-.2 2.1 0 .6 0 1 .3 1.2.6.1.2.2.4.1.6 0 .2 0 .5-.3 1a1.6 1.6 0 001 0l1.3-.3.8 1.6m-6.4 1.5l-1.3.2c-.7 0-1.3 0-1.8-.4a4.3 4.3 0 01-1.3-2l-.6-1.7a2 2 0 00-.6-1l-.8-.3.5-1.7 1.1.9.8 1.3.4 1.2a5 5 0 001 1.7c.2.3.4.4.7.3l1.3-.2.6 1.7m-5.5-6l-.9 1.5-2.3-.6.8-1.5 2.4.6m1.4 6.7l-6 .5-.3-1.6 5-.5a1.9 1.9 0 00-.6-.7 6 6 0 00-.8-.5l.5-1.5c.5.3 1 .6 1.2 1 .2.4.5 1 .6 1.7l.4 1.6m-4.8.8a13 13 0 01-1.8-.2 8.3 8.3 0 01-1.3-.4 4.5 4.5 0 01-1 .3h-3c-.5 0-.8 0-1-.2l-.6-.8a3.3 3.3 0 01-1.3.7 4 4 0 01-1.3.2h-1.4l.2-1.8 1.3.1c.7 0 1.3 0 1.7-.3.6-.3 1-.8 1-1.4h.6a22.9 22.9 0 00-.1 1c0 .3 0 .5.3.6l.7.2h2.9c.4-.2.6-.5.7-1l.1-.3a2.6 2.6 0 01.4-.2l.4-.1v.6l-.3.8a6.4 6.4 0 001.7.4c0-.1 0-.3-.2-.5 0-.3-.2-.4-.2-.5a.4.4 0 01.1-.2l.3-.2.8-.7.3.7c0 .2.1.5 0 .8l-.1 2.4m-9-7l-1.5 1-1.1-.6-1.1.8-1.5-.9 1.4-1 1.2.7 1.1-.9 1.5 1m-2.4 6.4l-5.8-1 .7-1.6 4.8.8a1.3 1.3 0 000-.8 4 4 0 00-.5-.6l1.3-1.3c.3.4.5.8.5 1.2 0 .4 0 1-.4 1.7l-.6 1.6m-4.9-.8l-1.2-.3c-.7-.1-1.1-.4-1.2-.9-.1-.5.1-1.2.7-2.2l1-1.7.2-.9-.3-.6 1.8-1.2.2 1.1c0 .4-.2.9-.6 1.4l-.6 1.2a4 4 0 00-.7 1.7c0 .3.1.5.4.5l1.2.3-.9 1.6m-3-6.3l-2 .9-1.4-1.4 2-.8 1.5 1.3m-.9 5.3a4 4 0 01-1.2 1.1c-.4.3-.9.4-1.4.5a7 7 0 01-1.9 0 11.8 11.8 0 01-2.2-.6 6 6 0 01-2.7-1.6c-.5-.6-.5-1.2 0-1.8a5.6 5.6 0 011.5-1.3 18.8 18.8 0 013-1.2l.4.4c-1 .4-1.8.7-2.2 1a3.3 3.3 0 00-1 .7c-.3.4-.3.8.1 1.3a8.4 8.4 0 005 1.8c1 0 1.6-.3 1.9-.6l.4-.7.1-1.4 2-1.2-.1 1.2c-.1.4-.4.8-.8 1.3l-.9 1.1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ag.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ag.svg
new file mode 100644
index 0000000..d0b2a83
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ag.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ag" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="#25ff01" d="M109 47.6h464.8v464.9H109z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-120 -52.4) scale(1.1014)">
+    <path fill="#fff" d="M0 47.6h693V512H0z"/>
+    <path d="M1.5 48.2h690.9v196.2H1.5z"/>
+    <path fill="#0061ff" d="M128.3 232.1h458.5v103.4H128.3z"/>
+    <path fill="#e20000" d="M692.5 49.2v463.3H347L692.5 49.2zm-691.3 0v463.3h345.7L1.2 49.2z"/>
+    <path fill="#ffd600" d="M508.8 232.2l-69.3-17.6 59-44.4-72.5 10.3 37.3-63-64.1 37.2 11.3-73.5-43.4 58-17.6-67.3-19.6 69.3-43.4-59 12.4 75.6-64.1-39.3 37.2 63-70.3-11.3 57.9 43.4-72.4 18.6h321.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ai.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ai.svg
new file mode 100644
index 0000000..472be20
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ai.svg
@@ -0,0 +1,763 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ai" viewBox="0 0 512 512">
+  <defs id="defs1837">
+    <clipPath id="a">
+      <path id="path1834" fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <path id="rect4120" fill="#012169" fill-opacity="1" stroke-width="4.1" d="M0 0h512v512H0z"/>
+  <path id="path1855" fill="#49497d" d="M384 212.7l2 2z"/>
+  <path id="path1857" fill="#0e0e6e" d="M386 212.7l2 2z"/>
+  <path id="path1859" fill="#262678" d="M379.9 214.7l2 2z"/>
+  <path id="path1861" fill="#808067" d="M382 214.7l2 2z"/>
+  <path id="path1863" fill="#58587b" d="M388 214.7l2 2z"/>
+  <path id="path1865" fill="#0e0e6e" d="M312.9 216.8l2 2z"/>
+  <path id="path1867" fill="#1b1b74" d="M375.9 216.8l2 2z"/>
+  <path id="path1869" fill="#6e6c70" d="M377.9 216.8l2 2z"/>
+  <path id="path1871" fill="#cc3" d="M316.5 220.4c0 52.5-6 111.6 33 152.7 8 8.4 23.4 27.7 36.5 27 13.7-.8 31.4-21.1 39.2-31 34-44.8 28.7-98.2 29.8-150.2-15.3 6.9-23 9.2-36.4 9-10 1-25.3-5.5-34.5-10-6 4-14.7 8.9-30.4 9.4-18 .8-23.8-2.3-37.2-7z"/>
+  <path id="path1873" fill="#99994e" d="M390 216.8l2 2z"/>
+  <path id="path1875" fill="#49497d" d="M392 216.8l2 2z"/>
+  <path id="path1877" fill="#0e0e6e" d="M455 216.8l2 2z"/>
+  <path id="path1879" fill="#a4a43d" d="M315 218.8l2 2z"/>
+  <path id="path1881" fill="#6e6c70" d="M317 218.8l2 2z"/>
+  <path id="path1883" fill="#3a3a7c" d="M319 218.8l2 2z"/>
+  <path id="path1885" fill="#1b1b74" d="M371.8 218.8l2 2z"/>
+  <path id="path1887" fill="#6e6c70" d="M373.8 218.8l2 2z"/>
+  <path id="path1889" fill="#a4a43d" d="M375.9 218.8l2 2z"/>
+  <path id="path1891" fill="#d0d045" d="M384 218.8l2 2z"/>
+  <path id="path1893" fill="#a4a43d" d="M392 218.8l2 2z"/>
+  <path id="path1895" fill="#8d8d5b" d="M394 218.8l2 2z"/>
+  <path id="path1897" fill="#3a3a7c" d="M396.2 218.8l2 2z"/>
+  <path id="path1899" fill="#262678" d="M448.9 218.8l2 2z"/>
+  <path id="path1901" fill="#53527c" d="M451 218.8l2 2z"/>
+  <path id="path1903" fill="#8d8d5b" d="M453 218.8l2 2z"/>
+  <path id="path1905" fill="#737370" d="M323 220.9l2 2z"/>
+  <path id="path1907" fill="#53527c" d="M325 220.9l2 2z"/>
+  <path id="path1909" fill="#1b1b74" d="M327 220.9l2 2z"/>
+  <path id="path1911" fill="#262678" d="M367.7 220.9l2 2z"/>
+  <path id="path1913" fill="#6e6c70" d="M369.8 220.9l2 2z"/>
+  <path id="path1915" fill="#a4a43d" d="M371.8 220.9l2 2z"/>
+  <path id="path1917" fill="#e5e59d" d="M382 220.9l2 2z"/>
+  <path id="path1919" fill="#fff" d="M320.6 226a509 509 0 004 88.2c4.9 15.4 4.2 23.9 11.3 33l99-.7c6-9.7 10.5-24.4 11-30.3 5.6-29.7 5.7-62.6 5.9-92a62 62 0 01-35.7 7.4 69 69 0 01-30.5-9.2c-9.5 5.6-12.8 8.2-28.4 8.9-12.2.6-22 1.6-36.6-5.2z"/>
+  <path id="path1921" fill="#f2f1d7" d="M386 220.9l2 2z"/>
+  <path id="path1923" fill="#d9d868" d="M388 220.9l2 2z"/>
+  <path id="path1925" fill="#a4a43d" d="M396.2 220.9l2 2z"/>
+  <path id="path1927" fill="#99994e" d="M398.2 220.9l2 2z"/>
+  <path id="path1929" fill="#49497d" d="M400.2 220.9l2 2z"/>
+  <path id="path1931" fill="#0e0e6e" d="M402.2 220.9l2 2z"/>
+  <path id="path1933" fill="#3a3a7c" d="M442.9 220.9l2 2z"/>
+  <path id="path1935" fill="#667" d="M444.9 220.9l2 2z"/>
+  <path id="path1937" fill="#99994e" d="M446.9 220.9l2 2z"/>
+  <path id="path1939" fill="#a4a43d" d="M448.9 220.9l2 2-2-2m-121.8 2l2 2z"/>
+  <path id="path1941" fill="#99994e" d="M329.2 222.9l2 2z"/>
+  <path id="path1943" fill="#6e6c70" d="M331.2 222.9l2 2z"/>
+  <path id="path1945" fill="#49497d" d="M333.2 222.9l2 2z"/>
+  <path id="path1947" fill="#1b1b74" d="M335.2 222.9l2 2-2-2m26.4 0l2 2z"/>
+  <path id="path1949" fill="#53527c" d="M363.6 222.9l2 2-2-2z"/>
+  <path id="path1951" fill="#8d8d5b" d="M365.7 222.9l2 2z"/>
+  <path id="path1953" fill="#a4a43d" d="M367.7 222.9l2 2z"/>
+  <path id="path1955" fill="#e5e59d" d="M377.9 222.9l2 2z"/>
+  <path id="path1957" fill="#fbfaf2" d="M379.9 222.9l2 2z"/>
+  <path id="path1959" fill="#f2f1d2" d="M390 222.9l2 2z"/>
+  <path id="path1961" fill="#d9d868" d="M392 222.9l2 2z"/>
+  <path id="path1963" fill="#a4a43d" d="M402.2 222.9l2 2z"/>
+  <path id="path1965" fill="#6e6c70" d="M404.3 222.9l2 2z"/>
+  <path id="path1967" fill="#3a3a7c" d="M406.3 222.9l2 2z"/>
+  <path id="path1969" fill="#0e0e6e" d="M432.7 222.9l2 2z"/>
+  <path id="path1971" fill="#32327b" d="M434.7 222.9l2 2z"/>
+  <path id="path1973" fill="#58587b" d="M436.8 222.9l2 2z"/>
+  <path id="path1975" fill="#808067" d="M438.8 222.9l2 2z"/>
+  <path id="path1977" fill="#a4a43d" d="M442.2 223.5l1.3.7z"/>
+  <path id="path1979" fill="#dddc7a" d="M319 224.9l2 2z"/>
+  <path id="path1981" fill="#d0d045" d="M321 224.9l2 2z"/>
+  <path id="path1983" fill="#a4a43d" d="M336.6 225.5l1.4.7z"/>
+  <path id="path1985" fill="#808067" d="M339.3 224.9l2 2z"/>
+  <path id="path1987" fill="#667" d="M341.3 224.9l2 2z"/>
+  <path id="path1989" fill="#58587b" d="M343.4 224.9l2 2z"/>
+  <path id="path1991" fill="#49497d" d="M345.4 224.9l2 2z"/>
+  <path id="path1993" fill="#737370" d="M357.6 224.9l2 2z"/>
+  <path id="path1995" fill="#99994e" d="M359.6 224.9l2 2z"/>
+  <path id="path1997" fill="#a4a43d" d="M361.6 224.9l2 2z"/>
+  <path id="path1999" fill="#e5e59d" d="M373.8 224.9l2 2z"/>
+  <path id="path2001" fill="#fbfaf2" d="M375.9 224.9l2 2z"/>
+  <path id="path2003" fill="#f2f1d2" d="M394 224.9l2 2z"/>
+  <path id="path2005" fill="#d9d868" d="M396.2 224.9l2 2z"/>
+  <path id="path2007" fill="#a4a43d" d="M407.6 225.5l1.4.7-1.3-.7z"/>
+  <path id="path2009" fill="#808067" d="M410.4 224.9l2 2z"/>
+  <path id="path2011" fill="#667" d="M412.4 224.9l2 2z"/>
+  <path id="path2013" fill="#58587b" d="M414.4 224.9l2 2z"/>
+  <path id="path2015" fill="#3a3a7c" d="M416.5 224.9l2 2z"/>
+  <path id="path2017" fill="#58587b" d="M425.9 225.5l1.4.7z"/>
+  <path id="path2019" fill="#737370" d="M428.6 224.9l2 2z"/>
+  <path id="path2021" fill="#99994e" d="M430.6 224.9l2 2-2-2z"/>
+  <path id="path2023" fill="#a4a43d" d="M432.7 224.9l2 2z"/>
+  <path id="path2025" fill="#dddc7a" d="M448.9 224.9l2 2z"/>
+  <path id="path2027" fill="#d0d045" d="M451 224.9l2 2z"/>
+  <path id="path2029" fill="#f2f1d7" d="M323 226.9l2 2z"/>
+  <path id="path2031" fill="#e0dea1" d="M325 226.9l2 2z"/>
+  <path id="path2033" fill="#dddc7a" d="M327 226.9l2 2z"/>
+  <path id="path2035" fill="#d9d868" d="M367.7 226.9l2 2z"/>
+  <path id="path2037" fill="#e5e3af" d="M369.8 226.9l2 2z"/>
+  <path id="path2039" fill="#f6f6e4" d="M398.2 226.9l2 2z"/>
+  <path id="path2041" fill="#e1e18c" d="M400.2 226.9l2 2z"/>
+  <path id="path2043" fill="#d4d456" d="M440.8 226.9l2 2z"/>
+  <path id="path2045" fill="#e1e18c" d="M442.9 226.9l2 2z"/>
+  <path id="path2047" fill="#eeedc1" d="M444.9 226.9l2 2z"/>
+  <path id="path2049" fill="#f2f1d2" d="M331.2 228.9l2 2z"/>
+  <path id="path2051" fill="#e0dea1" d="M333.2 228.9l2 2z"/>
+  <path id="path2053" fill="#dddc7a" d="M335.2 228.9l2 2z"/>
+  <path id="path2055" fill="#d0d045" d="M337.3 228.9l2 2z"/>
+  <path id="path2057" fill="#dddc7a" d="M361.6 228.9l2 2z"/>
+  <path id="path2059" fill="#e5e3af" d="M363.6 228.9l2 2-2-2z"/>
+  <path id="path2061" fill="#f6f6e4" d="M365.7 228.9l2 2z"/>
+  <path id="path2063" fill="#eeedc1" d="M404.3 228.9l2 2z"/>
+  <path id="path2065" fill="#e1e18c" d="M406.3 228.9l2 2z"/>
+  <path id="path2067" fill="#d4d456" d="M408.3 228.9l2 2z"/>
+  <path id="path2069" fill="#d9d868" d="M432.7 228.9l2 2z"/>
+  <path id="path2071" fill="#e1e18c" d="M434.7 228.9l2 2z"/>
+  <path id="path2073" fill="#eeedc1" d="M436.8 228.9l2 2z"/>
+  <path id="path2075" fill="#f6f6e4" d="M438.8 228.9l2 2z"/>
+  <path id="path2077" fill="#f2f1d7" d="M341.3 230.9l2 2-2-2z"/>
+  <path id="path2079" fill="#f2f1d2" d="M343.4 230.9l2 2-2-2z"/>
+  <path id="path2081" fill="#eeedc1" d="M345.4 230.9l2 2-2-2z"/>
+  <path id="path2083" fill="#f2f1d2" d="M354.9 231.6l1.3.7z"/>
+  <path id="path2085" fill="#fbfaf2" d="M357.6 230.9l2 2-2-2z"/>
+  <path id="path2087" fill="#fef8f1" d="M367.7 230.9l4 4v-4h-4z"/>
+  <path id="path2089" fill="#f2f1d7" d="M412.4 230.9l2 2-2-2z"/>
+  <path id="path2091" fill="#f2f1d2" d="M414.4 230.9l2 2-2-2z"/>
+  <path id="path2093" fill="#e5e3af" d="M416.5 230.9l2 2-2-2z"/>
+  <path id="path2095" fill="#e5e59d" d="M419.9 231.6l1.3.7-1.4-.7z"/>
+  <path id="path2097" fill="#e0dea1" d="M422.6 230.9l2 2-2-2z"/>
+  <path id="path2099" fill="#f2f1d2" d="M425.9 231.6l1.4.7z"/>
+  <path id="path2101" fill="#fbfaf2" d="M428.6 230.9l2 2-2-2z"/>
+  <path id="path2103" fill="#fef8f1" d="M363.6 233l2 2-2-2z"/>
+  <path id="path2105" fill="#fbbe66" d="M365.7 233l2 2z"/>
+  <path id="path2107" fill="#fbc477" d="M363.6 235l2 2-2-2z"/>
+  <path id="path2109" fill="#fcb144" d="M367.7 235l2 2z"/>
+  <path id="path2111" fill="#fe9f11" d="M363.6 237l2 2-2-2z"/>
+  <path id="path2113" fill="#fea522" d="M367.7 237l2 2z"/>
+  <path id="path2115" fill="#fae3c9" d="M361.6 239l2 2-2-2m8.2 0l2 2z"/>
+  <path id="path2117" fill="#fbead6" d="M379.9 239l2 2z"/>
+  <path id="path2119" fill="#f9d6aa" d="M382 239l2 2z"/>
+  <path id="path2121" fill="#fae3c9" d="M390 239l2 2z"/>
+  <path id="path2123" fill="#fef8f1" d="M392 239l2 2z"/>
+  <path id="path2125" fill="#f9d099" d="M361.6 241l2 2z"/>
+  <path id="path2127" fill="#fdab33" d="M369.8 241l2 2z"/>
+  <path id="path2129" fill="#fcf1e4" d="M373.8 241l2 2z"/>
+  <path id="path2131" fill="#fbc477" d="M375.9 241l2 2z"/>
+  <path id="path2133" fill="#fea522" d="M377.9 241l2 2z"/>
+  <path id="path2135" fill="#fcb755" d="M394 241l2 2z"/>
+  <path id="path2137" fill="#f9d6aa" d="M396.2 241l2 2z"/>
+  <path id="path2139" fill="#faca88" d="M361.6 243.2l2 2z"/>
+  <path id="path2141" fill="#fea522" d="M371.8 243.2l2 2-2-2m26.4 0l2 2z"/>
+  <path id="path2143" fill="#f8dcbb" d="M400.2 243.2l2 2z"/>
+  <path id="path2145" fill="#f6f6e4" d="M319 245.2l2 2z"/>
+  <path id="path2147" fill="#fbc477" d="M361.6 245.2l2 2z"/>
+  <path id="path2149" fill="#fbbe66" d="M402.2 245.2l2 2z"/>
+  <path id="path2151" fill="#f8dcbb" d="M404.3 245.2l2 2z"/>
+  <path id="path2153" fill="#faca88" d="M361.6 247.2l2 2z"/>
+  <path id="path2155" fill="#fcb755" d="M408.3 247.2l2 2z"/>
+  <path id="path2157" fill="#f8dcbb" d="M410.4 247.2l2 2z"/>
+  <path id="path2159" fill="#fef8f1" d="M359.6 249.3l2 2z"/>
+  <path id="path2161" fill="#fe9f11" d="M361.6 249.3l2 2z"/>
+  <path id="path2163" fill="#fdab33" d="M418.5 249.3l2 2z"/>
+  <path id="path2165" fill="#fcb144" d="M420.6 249.3l2 2z"/>
+  <path id="path2167" fill="#fbc477" d="M422.6 249.3l2 2z"/>
+  <path id="path2169" fill="#f9d6aa" d="M424.6 249.3l4 4z"/>
+  <path id="path2171" fill="#fef8f1" d="M426.6 249.3l2 2z"/>
+  <path id="path2173" fill="#fcb144" d="M359.6 251.3l2 2z"/>
+  <path id="path2175" fill="#fdab33" d="M388 251.3l2 2z"/>
+  <path id="path2177" fill="#fbc477" d="M390 251.3l2 2zm8 0l2.2 2-2-2z"/>
+  <path id="path2179" fill="#fea522" d="M400.2 251.3l2 2z"/>
+  <path id="path2181" fill="#fae3c9" d="M357.6 253.3l2 2z"/>
+  <path id="path2183" fill="#fcb144" d="M384 253.3l2 2z"/>
+  <path id="path2185" fill="#fae3c9" d="M386 253.3l2 2z"/>
+  <path id="path2187" fill="#f8dcbb" d="M402.2 253.3l2 2z"/>
+  <path id="path2189" fill="#fdab33" d="M404.3 253.3l2 2z"/>
+  <path id="path2191" fill="#fe9f11" d="M416.5 253.3l2 2z"/>
+  <path id="path2193" fill="#fcb755" d="M418.5 253.3l2 2z"/>
+  <path id="path2195" fill="#f9d099" d="M420.6 253.3l2 2z"/>
+  <path id="path2197" fill="#fbead6" d="M422.6 253.3l2 2z"/>
+  <path id="path2199" fill="#fcb144" d="M357.6 255.3l2 2z"/>
+  <path id="path2201" fill="#fbbe66" d="M382 255.3l2 2z"/>
+  <path id="path2203" fill="#f9d099" d="M406.3 255.3l2 2z"/>
+  <path id="path2205" fill="#fbead6" d="M414.4 255.3l2 2z"/>
+  <path id="path2207" fill="#fcf1e4" d="M355.6 257.4l2 2z"/>
+  <path id="path2209" fill="#fbbe66" d="M379.9 257.4l2 2z"/>
+  <path id="path2211" fill="#f9d099" d="M408.3 257.4l2 2z"/>
+  <path id="path2213" fill="#fae3c9" d="M414.4 257.4l2 2z"/>
+  <path id="path2215" fill="#fbc477" d="M355.6 259.4l2 2z"/>
+  <path id="path2217" fill="#fcb144" d="M377.9 259.4l2 2-2-2m32.5 0l2 2z"/>
+  <path id="path2219" fill="#fbbe66" d="M414.4 259.4l2 2z"/>
+  <path id="path2221" fill="#f6f6e4" d="M319 261.4l2 2z"/>
+  <path id="path2223" fill="#fea522" d="M355.6 261.4l2 2z"/>
+  <path id="path2225" fill="#fbead6" d="M377.9 261.4l2 2z"/>
+  <path id="path2227" fill="#fcf1e4" d="M410.4 261.4l2 2z"/>
+  <path id="path2229" fill="#fef8f1" d="M416.5 261.4l2 2z"/>
+  <path id="path2231" fill="#fcf1e4" d="M353.6 263.5l2 2z"/>
+  <path id="path2233" fill="#fbbe66" d="M375.9 263.5l2 2z"/>
+  <path id="path2235" fill="#faca88" d="M412.4 263.5l2 2z"/>
+  <path id="path2237" fill="#f9d099" d="M416.5 263.5l2 2z"/>
+  <path id="path2239" fill="#f9d6aa" d="M353.6 265.5l2 2z"/>
+  <path id="path2241" fill="#fcf1e4" d="M375.9 265.5l2 2z"/>
+  <path id="path2243" fill="#fae3c9" d="M386 265.5l2 2z"/>
+  <path id="path2245" fill="#fea522" d="M388 265.5l2 2z"/>
+  <path id="path2247" fill="#fcb144" d="M390 265.5l2 2z"/>
+  <path id="path2249" fill="#f9d6aa" d="M392 265.5l2 2z"/>
+  <path id="path2251" fill="#fef8f1" d="M412.4 265.5l2 2z"/>
+  <path id="path2253" fill="#fea522" d="M414.4 265.5l2 2z"/>
+  <path id="path2255" fill="#fdab33" d="M416.5 265.5l2 2z"/>
+  <path id="path2257" fill="#faca88" d="M353.6 267.5l-2.1 6 2-6z"/>
+  <path id="path2259" fill="#fea522" d="M373.8 267.5l2 2z"/>
+  <path id="path2261" fill="#fef8f1" d="M375.9 267.5l2 2z"/>
+  <path id="path2263" fill="#f9d099" d="M386 267.5l2 2z"/>
+  <path id="path2265" fill="#fdab33" d="M394 267.5l2 2z"/>
+  <path id="path2267" fill="#fae3c9" d="M396.2 267.5l2 2z"/>
+  <path id="path2269" fill="#f8dcbb" d="M414.4 267.5l2 2z"/>
+  <path id="path2271" fill="#f90" d="M416.5 267.5l2 2z"/>
+  <path id="path2273" fill="#fbead6" d="M419.2 268.9l.6 1.3z"/>
+  <path id="path2275" fill="#fea522" d="M377.9 269.5l2 2z"/>
+  <path id="path2277" fill="#fbbe66" d="M379.9 269.5l2 2z"/>
+  <path id="path2279" fill="#faca88" d="M382 269.5l2 2z"/>
+  <path id="path2281" fill="#fcb144" d="M384 269.5l2 2z"/>
+  <path id="path2283" fill="#fae3c9" d="M386 269.5l2 2z"/>
+  <path id="path2285" fill="#fe9f11" d="M388 269.5l2 2z"/>
+  <path id="path2287" fill="#fdab33" d="M398.2 269.5l2 2z"/>
+  <path id="path2289" fill="#fbc477" d="M400.2 269.5l2 2z"/>
+  <path id="path2291" fill="#faca88" d="M402.2 269.5l2 2z"/>
+  <path id="path2293" fill="#f9d6aa" d="M404.3 269.5l2 2z"/>
+  <path id="path2295" fill="#fae3c9" d="M407.6 270.2l1.4.7-1.3-.7z"/>
+  <path id="path2297" fill="#fef8f1" d="M410.4 269.5l2 2z"/>
+  <path id="path2299" fill="#fbc477" d="M416.5 269.5l2 2z"/>
+  <path id="path2301" fill="#fef8f1" d="M329.2 271.6l2 2z"/>
+  <path id="path2303" fill="#fcf1e4" d="M331.2 271.6l2 2z"/>
+  <path id="path2305" fill="#fcb755" d="M384 271.6l2 2z"/>
+  <path id="path2307" fill="#fbead6" d="M388 271.6l2 2z"/>
+  <path id="path2309" fill="#fea522" d="M390 271.6l2 2z"/>
+  <path id="path2311" fill="#fe9f11" d="M406.3 271.6l2 2z"/>
+  <path id="path2313" fill="#fcb144" d="M408.3 271.6l-2 4z"/>
+  <path id="path2315" fill="#fe9f11" d="M412.4 271.6l2 2z"/>
+  <path id="path2317" fill="#fbbe66" d="M414.4 271.6l2 2z"/>
+  <path id="path2319" fill="#fcf1e4" d="M416.5 271.6l2 2z"/>
+  <path id="path2321" fill="#fae3c9" d="M329.2 273.6l2 2z"/>
+  <path id="path2323" fill="#fe9f11" d="M331.2 273.6l4 4z"/>
+  <path id="path2325" fill="#fbead6" d="M333.2 273.6l2 2zm18.3 0l2 2z"/>
+  <path id="path2327" fill="#fae3c9" d="M353.6 273.6l2 2z"/>
+  <path id="path2329" fill="#fe9f11" d="M371.8 273.6l2 2z"/>
+  <path id="path2331" fill="#fbc477" d="M373.8 273.6l2 2z"/>
+  <path id="path2333" fill="#fea522" d="M375.9 273.6l2 2z"/>
+  <path id="path2335" fill="#fbc477" d="M382 273.6l2 2z"/>
+  <path id="path2337" fill="#fef8f1" d="M384 273.6l2 2z"/>
+  <path id="path2339" fill="#fbc477" d="M392 273.6l2 2z"/>
+  <path id="path2341" fill="#fff" d="M408.3 273.6l2 2z"/>
+  <path id="path2343" fill="#fdab33" d="M410.4 273.6l2 2z"/>
+  <path id="path2345" fill="#fbc477" d="M418.5 273.6l2 2z"/>
+  <path id="path2347" fill="#fef8f1" d="M329.2 275.6l2 2z"/>
+  <path id="path2349" fill="#fbead6" d="M335.2 275.6l2 2z"/>
+  <path id="path2351" fill="#f9d6aa" d="M345.4 275.6l2 2z"/>
+  <path id="path2353" fill="#fe9f11" d="M355.6 275.6l2 2z"/>
+  <path id="path2355" fill="#f9d6aa" d="M358.9 276.3l1.4.7z"/>
+  <path id="path2357" fill="#f8dcbb" d="M371.8 275.6l2 2z"/>
+  <path id="path2359" fill="#fcf1e4" d="M377.9 275.6l2 2z"/>
+  <path id="path2361" fill="#f9d6aa" d="M394 275.6l2 2z"/>
+  <path id="path2363" fill="#fdab33" d="M408.3 275.6l2 2z"/>
+  <path id="path2365" fill="#fcb755" d="M420.6 275.6l2 2z"/>
+  <path id="path2367" fill="#fef8f1" d="M422.6 275.6l2 2z"/>
+  <path id="path2369" fill="#53527c" d="M312.9 277.7l2 2z"/>
+  <path id="path2371" fill="#fcb755" d="M331.2 277.7l2 2z"/>
+  <path id="path2373" fill="#fea522" d="M335.2 277.7l2 2z"/>
+  <path id="path2375" fill="#fbead6" d="M343.4 277.7l2 2z"/>
+  <path id="path2377" fill="#fe9f11" d="M347.4 277.7l2 2z"/>
+  <path id="path2379" fill="#fcf1e4" d="M349.5 277.7l2 2z"/>
+  <path id="path2381" fill="#fbbe66" d="M355.6 277.7l2 2z"/>
+  <path id="path2383" fill="#fbc477" d="M357.6 277.7l2 2z"/>
+  <path id="path2385" fill="#fbbe66" d="M359.6 277.7l2 2z"/>
+  <path id="path2387" fill="#fea522" d="M369.8 277.7l2 2z"/>
+  <path id="path2389" fill="#f9d6aa" d="M396.2 277.7l2 2z"/>
+  <path id="path2391" fill="#fcb144" d="M422.6 277.7l2 2z"/>
+  <path id="path2393" fill="#8d8d5b" d="M455 277.7l2 2z"/>
+  <path id="path2395" fill="#e5e3af" d="M319 279.7l2 2z"/>
+  <path id="path2397" fill="#f8dcbb" d="M331.2 279.7l2 2z"/>
+  <path id="path2399" fill="#fdab33" d="M337.3 279.7l2 2z"/>
+  <path id="path2401" fill="#fe9f11" d="M343.4 279.7l2 2z"/>
+  <path id="path2403" fill="#faca88" d="M347.4 279.7l2 2z"/>
+  <path id="path2405" fill="#fcf1e4" d="M355.6 279.7l2 2z"/>
+  <path id="path2407" fill="#f9d099" d="M369.8 279.7l2 2-2-2m28.4 0l2 2z"/>
+  <path id="path2409" fill="#fbbe66" d="M424.6 279.7l2 2z"/>
+  <path id="path2411" fill="#fea522" d="M333.2 281.7l2 2z"/>
+  <path id="path2413" fill="#fdab33" d="M339.3 281.7l2 2z"/>
+  <path id="path2415" fill="#fea522" d="M341.3 281.7l2 2z"/>
+  <path id="path2417" fill="#fe9f11" d="M345.4 281.7l2 2z"/>
+  <path id="path2419" fill="#fef8f1" d="M347.4 281.7l2 2z"/>
+  <path id="path2421" fill="#fbbe66" d="M357.6 281.7l2 2z"/>
+  <path id="path2423" fill="#fef8f1" d="M369.8 281.7l2 2z"/>
+  <path id="path2425" fill="#fbbe66" d="M400.2 281.7l2 2z"/>
+  <path id="path2427" fill="#f9d099" d="M426.6 281.7l2 2z"/>
+  <path id="path2429" fill="#f9d6aa" d="M333.2 283.8l2 2z"/>
+  <path id="path2431" fill="#f9d099" d="M345.4 283.8l2 2z"/>
+  <path id="path2433" fill="#fcf1e4" d="M357.6 283.8l2 2z"/>
+  <path id="path2435" fill="#fdab33" d="M367.7 283.8l2 2-2-2m34.5 0l2 2z"/>
+  <path id="path2437" fill="#fbead6" d="M428.6 283.8l2 2z"/>
+  <path id="path2439" fill="#fea522" d="M335.2 285.8l2 2z"/>
+  <path id="path2441" fill="#fe9f11" d="M343.4 285.8l2 2z"/>
+  <path id="path2443" fill="#fcb144" d="M359.6 285.8l2 2z"/>
+  <path id="path2445" fill="#faca88" d="M367.7 285.8l2 2z"/>
+  <path id="path2447" fill="#f8dcbb" d="M402.2 285.8l2 2z"/>
+  <path id="path2449" fill="#fcb144" d="M428.6 285.8l2 2z"/>
+  <path id="path2451" fill="#d3d079" d="M319 287.9l2 2z"/>
+  <path id="path2453" fill="#faca88" d="M335.2 287.9l2 2zm24.4 0l2 2z"/>
+  <path id="path2455" fill="#fae3c9" d="M367.7 287.9l2 2-2-2m34.5 0l2 2z"/>
+  <path id="path2457" fill="#f8dcbb" d="M430.6 287.9l2 2-2-2z"/>
+  <path id="path2459" fill="#f2f1d7" d="M448.9 287.9l2 2z"/>
+  <path id="path2461" fill="#58587b" d="M455.7 289.2l.7 1.3z"/>
+  <path id="path2463" fill="#d9d868" d="M319.6 291.2l.8 1.4-.7-1.4z"/>
+  <path id="path2465" fill="#f8dcbb" d="M335.2 289.9l2 2z"/>
+  <path id="path2467" fill="#f9d6aa" d="M400.2 289.9l2 2z"/>
+  <path id="path2469" fill="#fe9f11" d="M402.2 289.9l2 2z"/>
+  <path id="path2471" fill="#fcb144" d="M430.6 289.9l2 2-2-2z"/>
+  <path id="path2473" fill="#f2f1d2" d="M449.6 291.2l.7 1.4z"/>
+  <path id="path2475" fill="#fcf1e4" d="M335.2 291.9l2 2z"/>
+  <path id="path2477" fill="#fef8f1" d="M398.2 291.9l2 2z"/>
+  <path id="path2479" fill="#fe9f11" d="M400.2 291.9l2 2z"/>
+  <path id="path2481" fill="#fdab33" d="M406.3 291.9l-2 4z"/>
+  <path id="path2483" fill="#fcb755" d="M408.3 291.9l2 2z"/>
+  <path id="path2485" fill="#fea522" d="M432.7 291.9l2 2z"/>
+  <path id="path2487" fill="#f9d099" d="M434.7 291.9l2 2z"/>
+  <path id="path2489" fill="#53527c" d="M455 291.9l2 2z"/>
+  <path id="path2491" fill="#808067" d="M315.6 295.3l.7 1.3z"/>
+  <path id="path2493" fill="#fea522" d="M337.3 293.9l2 2-2-2m6 0l2 2-2-2z"/>
+  <path id="path2495" fill="#fe9f11" d="M365.7 293.9l2 2z"/>
+  <path id="path2497" fill="#fae3c9" d="M398.2 293.9l2 2z"/>
+  <path id="path2499" fill="#fef8f1" d="M406.3 293.9l2 2z"/>
+  <path id="path2501" fill="#fcb144" d="M410.4 293.9l2 2z"/>
+  <path id="path2503" fill="#fcb755" d="M436.8 293.9l2 2z"/>
+  <path id="path2505" fill="#fef8f1" d="M438.8 293.9l4 4z"/>
+  <path id="path2507" fill="#e5e59d" d="M449.6 295.3l.7 1.3z"/>
+  <path id="path2509" fill="#32327b" d="M455.7 295.3l.7 1.3z"/>
+  <path id="path2511" fill="#fcb755" d="M338 297.3l.6 1.4z"/>
+  <path id="path2513" fill="#fef8f1" d="M345.4 295.9l2 2z"/>
+  <path id="path2515" fill="#fbbe66" d="M365.7 295.9l2 2z"/>
+  <path id="path2517" fill="#fbead6" d="M398.2 295.9l2 2z"/>
+  <path id="path2519" fill="#fe9f11" d="M402.2 295.9l2 2z"/>
+  <path id="path2521" fill="#fcf1e4" d="M404.3 295.9l2 2z"/>
+  <path id="path2523" fill="#fbead6" d="M410.4 295.9l2 2z"/>
+  <path id="path2525" fill="#fdab33" d="M438.8 295.9l2 2z"/>
+  <path id="path2527" fill="#667" d="M315 297.9l2 2-2-2z"/>
+  <path id="path2529" fill="#f6f6e4" d="M321 297.9l2 2-2-2z"/>
+  <path id="path2531" fill="#f9d6aa" d="M345.4 297.9l2 2-2-2z"/>
+  <path id="path2533" fill="#fdab33" d="M361.6 297.9l2 2-2-2z"/>
+  <path id="path2535" fill="#fe9f11" d="M363.6 297.9l2 2-2-2z"/>
+  <path id="path2537" fill="#fcf1e4" d="M365.7 297.9l2 2-2-2z"/>
+  <path id="path2539" fill="#fea522" d="M400.2 297.9l2 2-2-2z"/>
+  <path id="path2541" fill="#faca88" d="M402.2 297.9l2 2-2-2m10.2 0l2 2z"/>
+  <path id="path2543" fill="#fcb144" d="M440.8 297.9l2 2-2-2z"/>
+  <path id="path2545" fill="#dddc7a" d="M448.9 297.9l2 2-2-2z"/>
+  <path id="path2547" fill="#58587b" d="M315 300l2 2z"/>
+  <path id="path2549" fill="#f2f1d2" d="M321 300l2 2z"/>
+  <path id="path2551" fill="#fcb144" d="M338 301.4l.6 1.3z"/>
+  <path id="path2553" fill="#fea522" d="M345.4 300l2 2z"/>
+  <path id="path2555" fill="#fef8f1" d="M365.7 300l2 2z"/>
+  <path id="path2557" fill="#fea522" d="M367.7 300l2 2z"/>
+  <path id="path2559" fill="#fcb144" d="M371.8 300l2 2z"/>
+  <path id="path2561" fill="#fbead6" d="M373.8 300l2 2z"/>
+  <path id="path2563" fill="#f8dcbb" d="M400.2 300l2 2z"/>
+  <path id="path2565" fill="#fcf1e4" d="M402.2 300l2 2z"/>
+  <path id="path2567" fill="#fef8f1" d="M412.4 300l2 2z"/>
+  <path id="path2569" fill="#fe9f11" d="M414.4 300l2 2z"/>
+  <path id="path2571" fill="#fbead6" d="M442.9 300l2 2z"/>
+  <path id="path2573" fill="#d9d868" d="M448.9 300l2 2z"/>
+  <path id="path2575" fill="#3a3a7c" d="M315 302l2 2z"/>
+  <path id="path2577" fill="#e5e3af" d="M321 302l2 2z"/>
+  <path id="path2579" fill="#faca88" d="M347.4 302l2 2z"/>
+  <path id="path2581" fill="#fbead6" d="M367.7 302l2 2z"/>
+  <path id="path2583" fill="#fe9f11" d="M373.8 302l2 2z"/>
+  <path id="path2585" fill="#fcf1e4" d="M375.9 302l2 2z"/>
+  <path id="path2587" fill="#fbead6" d="M398.2 302l2 2z"/>
+  <path id="path2589" fill="#fae3c9" d="M400.2 302l2 2z"/>
+  <path id="path2591" fill="#fbead6" d="M402.2 302l2 2z"/>
+  <path id="path2593" fill="#fbbe66" d="M414.4 302l2 2-2-2m16.3 0l2 2z"/>
+  <path id="path2595" fill="#fcf1e4" d="M432.7 302l2 2z"/>
+  <path id="path2597" fill="#fef8f1" d="M434.7 302l2 2z"/>
+  <path id="path2599" fill="#f8dcbb" d="M436.8 302l2 2z"/>
+  <path id="path2601" fill="#fcb755" d="M438.8 302l2 2z"/>
+  <path id="path2603" fill="#fae3c9" d="M442.9 302l2 2z"/>
+  <path id="path2605" fill="#808067" d="M453 302l2 2z"/>
+  <path id="path2607" fill="#32327b" d="M315 304l2 2z"/>
+  <path id="path2609" fill="#a4a43d" d="M317.6 305.4l.7 1.4-.6-1.4z"/>
+  <path id="path2611" fill="#e5e59d" d="M321 304l2 2z"/>
+  <path id="path2613" fill="#fbc477" d="M337.3 304l2 2z"/>
+  <path id="path2615" fill="#f9d6aa" d="M349.5 304l2 2z"/>
+  <path id="path2617" fill="#fbbe66" d="M369.8 304l2 2z"/>
+  <path id="path2619" fill="#f9d099" d="M375.9 304l2 2z"/>
+  <path id="path2621" fill="#fae3c9" d="M394 304l2 2z"/>
+  <path id="path2623" fill="#fcb144" d="M396.2 304l2 2z"/>
+  <path id="path2625" fill="#fae3c9" d="M404.3 304l2 2z"/>
+  <path id="path2627" fill="#f8dcbb" d="M414.4 304l2 2z"/>
+  <path id="path2629" fill="#f9d099" d="M430.6 304l2 2-2-2z"/>
+  <path id="path2631" fill="#fbc477" d="M440.8 304l2 2z"/>
+  <path id="path2633" fill="#fbead6" d="M442.9 304l2 2z"/>
+  <path id="path2635" fill="#737370" d="M453 304l2 2z"/>
+  <path id="path2637" fill="#d9d868" d="M321 306l2 2z"/>
+  <path id="path2639" fill="#f9d099" d="M337.3 306l2 2z"/>
+  <path id="path2641" fill="#f9d6aa" d="M351.5 306l2 2-2-2m18.3 0l2 2z"/>
+  <path id="path2643" fill="#fbc477" d="M375.9 306l2 2z"/>
+  <path id="path2645" fill="#fef8f1" d="M386 306l2 2z"/>
+  <path id="path2647" fill="#f8dcbb" d="M388 306l2 2z"/>
+  <path id="path2649" fill="#fbc477" d="M390 306l2 2z"/>
+  <path id="path2651" fill="#fea522" d="M392 306l2 2z"/>
+  <path id="path2653" fill="#fbead6" d="M404.3 306l2 2z"/>
+  <path id="path2655" fill="#f2f1d2" d="M446.9 306l2 2z"/>
+  <path id="path2657" fill="#58587b" d="M453 306l2 2z"/>
+  <path id="path2659" fill="#99994e" d="M317 308l2 2z"/>
+  <path id="path2661" fill="#d0d045" d="M321 308l2 2z"/>
+  <path id="path2663" fill="#fcb144" d="M353.6 308l2 2z"/>
+  <path id="path2665" fill="#fae3c9" d="M355.6 308l2 2z"/>
+  <path id="path2667" fill="#fef8f1" d="M369.8 308l2 2z"/>
+  <path id="path2669" fill="#fcb755" d="M377.9 308l2 2z"/>
+  <path id="path2671" fill="#fbc477" d="M379.9 308l2 2z"/>
+  <path id="path2673" fill="#fcb144" d="M382 308l2 2z"/>
+  <path id="path2675" fill="#fea522" d="M384 308l2 2z"/>
+  <path id="path2677" fill="#fe9f11" d="M400.2 308l2 2z"/>
+  <path id="path2679" fill="#f9d6aa" d="M402.2 308l2 2z"/>
+  <path id="path2681" fill="#fef8f1" d="M430.6 308l2 2-2-2z"/>
+  <path id="path2683" fill="#e0dea1" d="M446.9 308l2 2z"/>
+  <path id="path2685" fill="#3a3a7c" d="M453 308l2 2z"/>
+  <path id="path2687" fill="#737370" d="M317 310.2l2 2z"/>
+  <path id="path2689" fill="#fbfaf2" d="M323 310.2l2 2z"/>
+  <path id="path2691" fill="#fea522" d="M339.3 310.2l2 2z"/>
+  <path id="path2693" fill="#fe9f11" d="M357.6 310.2l2 2z"/>
+  <path id="path2695" fill="#fcb144" d="M359.6 310.2l2 2z"/>
+  <path id="path2697" fill="#fbc477" d="M361.6 310.2l2 2z"/>
+  <path id="path2699" fill="#faca88" d="M363.6 310.2l2 2-2-2z"/>
+  <path id="path2701" fill="#fbc477" d="M365.7 310.2l2 2z"/>
+  <path id="path2703" fill="#fcb144" d="M367.7 310.2l2 2z"/>
+  <path id="path2705" fill="#fdab33" d="M369.8 310.2l2 2z"/>
+  <path id="path2707" fill="#fbc477" d="M398.2 310.2l2 2z"/>
+  <path id="path2709" fill="#fef8f1" d="M400.2 310.2l2 2z"/>
+  <path id="path2711" fill="#fdab33" d="M428.6 310.2l2 2z"/>
+  <path id="path2713" fill="#e1e18c" d="M446.9 310.2l2 2z"/>
+  <path id="path2715" fill="#a4a43d" d="M451.6 311.5l.7 1.4z"/>
+  <path id="path2717" fill="#262678" d="M453 310.2l2 2z"/>
+  <path id="path2719" fill="#58587b" d="M317 312.2l2 2z"/>
+  <path id="path2721" fill="#f2f1d2" d="M323 312.2l2 2z"/>
+  <path id="path2723" fill="#faca88" d="M339.3 312.2l2 2z"/>
+  <path id="path2725" fill="#fe9f11" d="M394 312.2l2 2z"/>
+  <path id="path2727" fill="#fbead6" d="M396.2 312.2l2 2z"/>
+  <path id="path2729" fill="#fbc477" d="M414.4 312.2l2 2z"/>
+  <path id="path2731" fill="#faca88" d="M428.6 312.2l2 2z"/>
+  <path id="path2733" fill="#d4d456" d="M446.9 312.2l2 2z"/>
+  <path id="path2735" fill="#32327b" d="M317 314.2l2 2z"/>
+  <path id="path2737" fill="#e5e59d" d="M323 314.2l2 2z"/>
+  <path id="path2739" fill="#fef8f1" d="M339.3 314.2l2 2z"/>
+  <path id="path2741" fill="#fe9f11" d="M341.3 314.2l2 2z"/>
+  <path id="path2743" fill="#fbead6" d="M394 314.2l2 2z"/>
+  <path id="path2745" fill="#fea522" d="M414.4 314.2l2 2z"/>
+  <path id="path2747" fill="#fcf1e4" d="M428.6 314.2l2 2z"/>
+  <path id="path2749" fill="#808067" d="M451 314.2l2 2z"/>
+  <path id="path2751" fill="#0e0e6e" d="M317 316.2l2 2z"/>
+  <path id="path2753" fill="#a4a43d" d="M319 316.2l2 2z"/>
+  <path id="path2755" fill="#d9d868" d="M323 316.2l2 2z"/>
+  <path id="path2757" fill="#f8dcbb" d="M341.3 316.2l2 2z"/>
+  <path id="path2759" fill="#f9d6aa" d="M412.4 316.2l2 2z"/>
+  <path id="path2761" fill="#faca88" d="M426.6 316.2l2 2z"/>
+  <path id="path2763" fill="#f2f1d2" d="M444.9 316.2l2 2z"/>
+  <path id="path2765" fill="#58587b" d="M451 316.2l2 2z"/>
+  <path id="path2767" fill="#8d8d5b" d="M319 318.3l2 2z"/>
+  <path id="path2769" fill="#f9d6aa" d="M343.4 318.3l2 2z"/>
+  <path id="path2771" fill="#fdab33" d="M384 318.3l2 2z"/>
+  <path id="path2773" fill="#fff" d="M386 318.3l2 2z"/>
+  <path id="path2775" fill="#fcb144" d="M389.4 318.9l1.4.7z"/>
+  <path id="path2777" fill="#fef8f1" d="M410.4 318.3l-2 4z"/>
+  <path id="path2779" fill="#fe9f11" d="M412.4 318.3l2 2z"/>
+  <path id="path2781" fill="#fdab33" d="M424.6 318.3l-2 4z"/>
+  <path id="path2783" fill="#e5e59d" d="M444.9 318.3l2 2z"/>
+  <path id="path2785" fill="#3a3a7c" d="M451 318.3l2 2z"/>
+  <path id="path2787" fill="#667" d="M319 320.3l2 2z"/>
+  <path id="path2789" fill="#f2f1d2" d="M325 320.3l2 2z"/>
+  <path id="path2791" fill="#f9d6aa" d="M345.4 320.3l2 2z"/>
+  <path id="path2793" fill="#fe9f11" d="M384 320.3l2 2z"/>
+  <path id="path2795" fill="#faca88" d="M386 320.3l2 2z"/>
+  <path id="path2797" fill="#fea522" d="M388 320.3l2 2z"/>
+  <path id="path2799" fill="#fcf1e4" d="M390 320.3l2 2z"/>
+  <path id="path2801" fill="#fdab33" d="M410.4 320.3l2 2z"/>
+  <path id="path2803" fill="#fef8f1" d="M424.6 320.3l2 2z"/>
+  <path id="path2805" fill="#d9d868" d="M444.9 320.3l2 2z"/>
+  <path id="path2807" fill="#a4a43d" d="M448.9 320.3l2 2z"/>
+  <path id="path2809" fill="#0e0e6e" d="M451 320.3l2 2z"/>
+  <path id="path2811" fill="#3a3a7c" d="M319 322.3l2 2z"/>
+  <path id="path2813" fill="#e5e59d" d="M325 322.3l2 2z"/>
+  <path id="path2815" fill="#fae3c9" d="M347.4 322.3l4 4z"/>
+  <path id="path2817" fill="#fe9f11" d="M349.5 322.3l2 2z"/>
+  <path id="path2819" fill="#f8dcbb" d="M388 322.3l2 2z"/>
+  <path id="path2821" fill="#fcf1e4" d="M406.3 322.3l2 2z"/>
+  <path id="path2823" fill="#fdab33" d="M408.3 322.3l2 2z"/>
+  <path id="path2825" fill="#fcb144" d="M420.6 322.3l2 2z"/>
+  <path id="path2827" fill="#fef8f1" d="M422.6 322.3l2 2z"/>
+  <path id="path2829" fill="#fbfaf2" d="M442.9 322.3l2 2z"/>
+  <path id="path2831" fill="#8d8d5b" d="M448.9 322.3l2 2z"/>
+  <path id="path2833" fill="#0e0e6e" d="M319 324.4l2 2z"/>
+  <path id="path2835" fill="#a4a43d" d="M321 324.4l2 2z"/>
+  <path id="path2837" fill="#d4d456" d="M325 324.4l2 2z"/>
+  <path id="path2839" fill="#f9d6aa" d="M386 324.4l2 2z"/>
+  <path id="path2841" fill="#f9d099" d="M404.3 324.4l2 2z"/>
+  <path id="path2843" fill="#fe9f11" d="M406.3 324.4l2 2z"/>
+  <path id="path2845" fill="#faca88" d="M418.5 324.4l2 2z"/>
+  <path id="path2847" fill="#eeedc1" d="M442.9 324.4l2 2z"/>
+  <path id="path2849" fill="#58587b" d="M448.9 324.4l2 2z"/>
+  <path id="path2851" fill="#737370" d="M321 326.4l2 2z"/>
+  <path id="path2853" fill="#f6f6e4" d="M327 326.4l2 2z"/>
+  <path id="path2855" fill="#fbbe66" d="M349.5 326.4l2 2z"/>
+  <path id="path2857" fill="#fcb144" d="M382 326.4l2 2z"/>
+  <path id="path2859" fill="#f8dcbb" d="M384.6 327.8l.7 1.3z"/>
+  <path id="path2861" fill="#fbbe66" d="M400.2 326.4l2 2z"/>
+  <path id="path2863" fill="#fe9f11" d="M402.2 326.4l2 2z"/>
+  <path id="path2865" fill="#fbc477" d="M414.4 326.4l2 2z"/>
+  <path id="path2867" fill="#fcf1e4" d="M416.5 326.4l2 2z"/>
+  <path id="path2869" fill="#d3d079" d="M442.9 326.4l2 2z"/>
+  <path id="path2871" fill="#a4a43d" d="M446.9 326.4l2 2z"/>
+  <path id="path2873" fill="#262678" d="M448.9 326.4l2 2z"/>
+  <path id="path2875" fill="#49497d" d="M321 328.4l2 2z"/>
+  <path id="path2877" fill="#e0dea1" d="M327 328.4l2 2z"/>
+  <path id="path2879" fill="#fae3c9" d="M347.4 328.4l2 2z"/>
+  <path id="path2881" fill="#fdab33" d="M375.9 328.4l2 2z"/>
+  <path id="path2883" fill="#fbc477" d="M377.9 328.4l2 2z"/>
+  <path id="path2885" fill="#fbead6" d="M379.9 328.4l2 2z"/>
+  <path id="path2887" fill="#fcb144" d="M386 328.4l2 2z"/>
+  <path id="path2889" fill="#f9d6aa" d="M412.4 328.4l2 2z"/>
+  <path id="path2891" fill="#99994e" d="M446.9 328.4l2 2z"/>
+  <path id="path2893" fill="#0e0e6e" d="M321 330.5l2 2z"/>
+  <path id="path2895" fill="#a4a43d" d="M323 330.5l2 2z"/>
+  <path id="path2897" fill="#d4d456" d="M327 330.5l2 2z"/>
+  <path id="path2899" fill="#f9d099" d="M345.4 330.5l2 2z"/>
+  <path id="path2901" fill="#fe9f11" d="M347.4 330.5l2 2-2-2m10.2 0l2 2z"/>
+  <path id="path2903" fill="#f9d6aa" d="M359.6 330.5l2 2z"/>
+  <path id="path2905" fill="#f9d099" d="M361.6 330.5l2 2z"/>
+  <path id="path2907" fill="#f9d6aa" d="M369.8 330.5l2 2z"/>
+  <path id="path2909" fill="#fae3c9" d="M371.8 330.5l2 2z"/>
+  <path id="path2911" fill="#fef8f1" d="M373.8 330.5l2 2z"/>
+  <path id="path2913" fill="#fbead6" d="M390 330.5l2 2z"/>
+  <path id="path2915" fill="#fae3c9" d="M392 330.5l2 2z"/>
+  <path id="path2917" fill="#faca88" d="M394 330.5l2 2z"/>
+  <path id="path2919" fill="#fbc477" d="M396.2 330.5l2 2z"/>
+  <path id="path2921" fill="#fdab33" d="M398.2 330.5l2 2z"/>
+  <path id="path2923" fill="#fe9f11" d="M408.3 330.5l2 2z"/>
+  <path id="path2925" fill="#f9d6aa" d="M410.4 330.5l2 2z"/>
+  <path id="path2927" fill="#e5e3af" d="M440.8 330.5l2 2z"/>
+  <path id="path2929" fill="#667" d="M446.9 330.5l2 2z"/>
+  <path id="path2931" fill="#737370" d="M323 332.5l2 2z"/>
+  <path id="path2933" fill="#f2f1d7" d="M329.2 332.5l2 2z"/>
+  <path id="path2935" fill="#fea522" d="M343.4 332.5l2 2z"/>
+  <path id="path2937" fill="#fe9f11" d="M353.6 332.5l2 2z"/>
+  <path id="path2939" fill="#fbbe66" d="M355.6 332.5l2 2z"/>
+  <path id="path2941" fill="#fcf1e4" d="M357.6 332.5l2 2z"/>
+  <path id="path2943" fill="#fea522" d="M406.3 332.5l2 2z"/>
+  <path id="path2945" fill="#fbead6" d="M408.3 332.5l2 2z"/>
+  <path id="path2947" fill="#dddc7a" d="M440.8 332.5l2 2z"/>
+  <path id="path2949" fill="#a4a43d" d="M444.9 332.5l2 2z"/>
+  <path id="path2951" fill="#262678" d="M446.9 332.5l2 2z"/>
+  <path id="path2953" fill="#49497d" d="M323 334.5l2 2z"/>
+  <path id="path2955" fill="#a4a43d" d="M325.8 335.9l.7 1.3z"/>
+  <path id="path2957" fill="#d3d079" d="M329.2 334.5l2 2z"/>
+  <path id="path2959" fill="#f9d099" d="M345.4 334.5l2 2z"/>
+  <path id="path2961" fill="#fcb144" d="M347.4 334.5l2 2z"/>
+  <path id="path2963" fill="#faca88" d="M349.5 334.5l2 2z"/>
+  <path id="path2965" fill="#f8dcbb" d="M351.5 334.5l2 2z"/>
+  <path id="path2967" fill="#fef8f1" d="M353.6 334.5l2 2z"/>
+  <path id="path2969" fill="#f8dcbb" d="M398.2 334.5l2 2z"/>
+  <path id="path2971" fill="#fcf1e4" d="M406.3 334.5l2 2z"/>
+  <path id="path2973" fill="#f6f6e4" d="M438.8 334.5l2 2z"/>
+  <path id="path2975" fill="#8d8d5b" d="M444.9 334.5l2 2z"/>
+  <path id="path2977" fill="#fbfaf2" d="M331.2 336.5l2 2z"/>
+  <path id="path2979" fill="#fbbe66" d="M398.2 336.5l2 2z"/>
+  <path id="path2981" fill="#faca88" d="M404.3 336.5l2 2z"/>
+  <path id="path2983" fill="#e1e18c" d="M438.8 336.5l2 2z"/>
+  <path id="path2985" fill="#49497d" d="M444.9 336.5l2 2z"/>
+  <path id="path2987" fill="#58587b" d="M325 338.6l2 2z"/>
+  <path id="path2989" fill="#e5e59d" d="M331.2 338.6l2 2z"/>
+  <path id="path2991" fill="#fe9f11" d="M398.2 338.6l2 2z"/>
+  <path id="path2993" fill="#fdab33" d="M402.2 338.6l2 2z"/>
+  <path id="path2995" fill="#fbfaf2" d="M436.8 338.6l2 2z"/>
+  <path id="path2997" fill="#a4a43d" d="M442.9 338.6l2 2z"/>
+  <path id="path2999" fill="#0e0e6e" d="M444.9 338.6l2 2z"/>
+  <path id="path3001" fill="#1b1b74" d="M325 340.6l2 2z"/>
+  <path id="path3003" fill="#a4a43d" d="M327 340.6l2 2z"/>
+  <path id="path3005" fill="#d0d045" d="M331.2 340.6l2 2z"/>
+  <path id="path3007" fill="#fbead6" d="M396.2 340.6l2 2z"/>
+  <path id="path3009" fill="#fe9f11" d="M400.2 340.6l2 2z"/>
+  <path id="path3011" fill="#fbead6" d="M402.2 340.6l2 2z"/>
+  <path id="path3013" fill="#e5e59d" d="M436.8 340.6l2 2z"/>
+  <path id="path3015" fill="#667" d="M442.9 340.6l2 2z"/>
+  <path id="path3017" fill="#6e6c70" d="M327 342.6l2 2z"/>
+  <path id="path3019" fill="#e5e3af" d="M333.2 342.6l2 2z"/>
+  <path id="path3021" fill="#faca88" d="M396.8 344l.7 1.4z"/>
+  <path id="path3023" fill="#fae3c9" d="M400.2 342.6l2 2z"/>
+  <path id="path3025" fill="#fbfaf2" d="M434.7 342.6l2 2z"/>
+  <path id="path3027" fill="#a4a43d" d="M440.8 342.6l2 2z"/>
+  <path id="path3029" fill="#1b1b74" d="M442.9 342.6l2 2-2-2m-115.8 2l2 2z"/>
+  <path id="path3031" fill="#a4a43d" d="M329.2 344.7l2 2z"/>
+  <path id="path3033" fill="#d0d045" d="M333.2 344.7l2 2z"/>
+  <path id="path3035" fill="#fbfaf2" d="M335.2 344.7l2 2z"/>
+  <path id="path3037" fill="#f9d6aa" d="M398.2 344.7l2 2z"/>
+  <path id="path3039" fill="#e5e59d" d="M434.7 344.7l2 2z"/>
+  <path id="path3041" fill="#6e6c70" d="M440.8 344.7l2 2-2-2m-111.6 2l2 2z"/>
+  <path id="path3043" fill="#8cbf84" d="M335.2 346.7l2 2z"/>
+  <path id="path3045" fill="#0cf" d="M336 346.7c7 14.8 32 49.8 51 49.2 18.7-.7 39.6-35 47.7-49.2z"/>
+  <path id="path3047" fill="#a4a43d" d="M438.8 346.7l2 2z"/>
+  <path id="path3049" fill="#1b1b74" d="M440.8 346.7l2 2-2-2m-111.6 2l2 2z"/>
+  <path id="path3051" fill="#a4a43d" d="M331.2 348.7l2 2z"/>
+  <path id="path3053" fill="#adb333" d="M335.2 348.7l2 2z"/>
+  <path id="path3055" fill="#1ac5b5" d="M337.3 348.7l2 2z"/>
+  <path id="path3057" fill="#68b070" d="M432.7 348.7l2 2z"/>
+  <path id="path3059" fill="#667" d="M438.8 348.7l2 2z"/>
+  <path id="path3061" fill="#58587b" d="M331.2 350.8l2 2z"/>
+  <path id="path3063" fill="#7fb15c" d="M337.3 350.8l2 2z"/>
+  <path id="path3065" fill="#27c2aa" d="M430.6 350.8l2 2-2-2z"/>
+  <path id="path3067" fill="#a4a43d" d="M436.8 350.8l-2 4z"/>
+  <path id="path3069" fill="#0e0e6e" d="M438.8 350.8l2 2-2-2m-107.6 2l2 2z"/>
+  <path id="path3071" fill="#a4a43d" d="M333.2 352.8l4 4z"/>
+  <path id="path3073" fill="#34be9e" d="M339.3 352.8l2 2z"/>
+  <path id="path3075" fill="#96b247" d="M430.6 352.8l2 2-2-2z"/>
+  <path id="path3077" fill="#53527c" d="M436.8 352.8l2 2z"/>
+  <path id="path3079" fill="#3a3a7c" d="M333.2 354.9l2 2z"/>
+  <path id="path3081" fill="#a2b23d" d="M339.3 354.9l2 2z"/>
+  <path id="path3083" fill="#0dc9c1" d="M341.3 354.9l2 2z"/>
+  <path id="path3085" fill="#5bb47c" d="M428.6 354.9l2 2z"/>
+  <path id="path3087" fill="#8d8d5b" d="M434.7 354.9l2 2z"/>
+  <path id="path3089" fill="#737370" d="M335.2 356.9l2 2z"/>
+  <path id="path3091" fill="#74b166" d="M341.3 356.9l2 2z"/>
+  <path id="path3093" fill="#27c2aa" d="M426.6 356.9l2 2z"/>
+  <path id="path3095" fill="#a4a43d" d="M432.7 356.9l-2 4z"/>
+  <path id="path3097" fill="#262678" d="M434.7 356.9l2 2z"/>
+  <path id="path3099" fill="#0e0e6e" d="M335.2 358.9l2 2z"/>
+  <path id="path3101" fill="#a4a43d" d="M337.3 358.9l4 4z"/>
+  <path id="path3103" fill="#42bb92" d="M343.4 358.9l2 2z"/>
+  <path id="path3105" fill="#0dc9c1" d="M424.6 358.9l2 2z"/>
+  <path id="path3107" fill="#96b247" d="M426.6 358.9l2 2z"/>
+  <path id="path3109" fill="#58587b" d="M432.7 358.9l2 2z"/>
+  <path id="path3111" fill="#3a3a7c" d="M337.3 360.9l2 2z"/>
+  <path id="path3113" fill="#adb333" d="M343.4 360.9l2 2z"/>
+  <path id="path3115" fill="#27c2aa" d="M345.4 360.9l2 2z"/>
+  <path id="path3117" fill="#74b166" d="M424.6 360.9l2 2z"/>
+  <path id="path3119" fill="#8d8d5b" d="M430.6 360.9l2 2-2-2z"/>
+  <path id="path3121" fill="#6e6c70" d="M339.3 362.9l2 2z"/>
+  <path id="path3123" fill="#96b247" d="M345.4 362.9l2 2z"/>
+  <path id="path3125" fill="#0dc9c1" d="M347.4 362.9l2 2z"/>
+  <path id="path3127" fill="#42bb92" d="M422.6 362.9l2 2z"/>
+  <path id="path3129" fill="#a4a43d" d="M428.6 362.9l-4 6 4-6z"/>
+  <path id="path3131" fill="#1b1b74" d="M430.6 362.9l2 2-2-2z"/>
+  <path id="path3133" fill="#0e0e6e" d="M339.3 364.9l2 2-2-2z"/>
+  <path id="path3135" fill="#8d8d5b" d="M341.3 364.9l2 2-2-2z"/>
+  <path id="path3137" fill="#7fb15c" d="M347.4 364.9l2 2-2-2z"/>
+  <path id="path3139" fill="#34be9e" d="M420.6 364.9l2 2-2-2z"/>
+  <path id="path3141" fill="#3a3a7c" d="M428.6 364.9l2 2-2-2z"/>
+  <path id="path3143" fill="#1b1b74" d="M341.3 367l2 2z"/>
+  <path id="path3145" fill="#a4a43d" d="M343.4 367l22.3 22.3z"/>
+  <path id="path3147" fill="#74b166" d="M349.5 367l2 2z"/>
+  <path id="path3149" fill="#27c2aa" d="M418.5 367l2 2z"/>
+  <path id="path3151" fill="#adb333" d="M420.6 367l2 2z"/>
+  <path id="path3153" fill="#667" d="M426.6 367l2 2z"/>
+  <path id="path3155" fill="#32327b" d="M343.4 369l2 2z"/>
+  <path id="path3157" fill="#42bb92" d="M351.5 369l2 2z"/>
+  <path id="path3159" fill="#0dc9c1" d="M416.5 369l-8.2 10.2 8.3-10.3z"/>
+  <path id="path3161" fill="#adb333" d="M418.5 369l2 2z"/>
+  <path id="path3163" fill="#737370" d="M424.6 369l2 2z"/>
+  <path id="path3165" fill="#49497d" d="M345.4 371l2 2z"/>
+  <path id="path3167" fill="#42bb92" d="M353.6 371l2 2z"/>
+  <path id="path3169" fill="#96b247" d="M416.5 371l2 2z"/>
+  <path id="path3171" fill="#8d8d5b" d="M422.6 371l-2 4z"/>
+  <path id="path3173" fill="#0e0e6e" d="M424.6 371l2 2z"/>
+  <path id="path3175" fill="#53527c" d="M347.4 373l2 2z"/>
+  <path id="path3177" fill="#42bb92" d="M355.6 373l2 2z"/>
+  <path id="path3179" fill="#96b247" d="M414.4 373l2 2z"/>
+  <path id="path3181" fill="#0e0e6e" d="M422.6 373l2 2z"/>
+  <path id="path3183" fill="#6e6c70" d="M349.5 375l2 2z"/>
+  <path id="path3185" fill="#42bb92" d="M357.6 375l2 2z"/>
+  <path id="path3187" fill="#96b247" d="M412.4 375l2 2z"/>
+  <path id="path3189" fill="#a4a43d" d="M418.5 375l-4 6.2 4-6z"/>
+  <path id="path3191" fill="#262678" d="M420.6 375l2 2z"/>
+  <path id="path3193" fill="#6e6c70" d="M351.5 377.2l2 2z"/>
+  <path id="path3195" fill="#42bb92" d="M359.6 377.2l2 2z"/>
+  <path id="path3197" fill="#96b247" d="M410.4 377.2l2 2z"/>
+  <path id="path3199" fill="#262678" d="M418.5 377.2l2 2z"/>
+  <path id="path3201" fill="#6e6c70" d="M353.6 379.2l2 2z"/>
+  <path id="path3203" fill="#68b070" d="M361.6 379.2l2 2z"/>
+  <path id="path3205" fill="#27c2aa" d="M406.3 379.2l2 2z"/>
+  <path id="path3207" fill="#adb333" d="M408.3 379.2l2 2z"/>
+  <path id="path3209" fill="#262678" d="M416.5 379.2l2 2z"/>
+  <path id="path3211" fill="#667" d="M355.6 381.2l2 2z"/>
+  <path id="path3213" fill="#74b166" d="M363.6 381.2l2 2-2-2z"/>
+  <path id="path3215" fill="#34be9e" d="M404.3 381.2l2 2z"/>
+  <path id="path3217" fill="#adb333" d="M406.3 381.2l2 2z"/>
+  <path id="path3219" fill="#8d8d5b" d="M412.4 381.2l-2 4z"/>
+  <path id="path3221" fill="#262678" d="M414.4 381.2l2 2z"/>
+  <path id="path3223" fill="#49497d" d="M357.6 383.2l2 2z"/>
+  <path id="path3225" fill="#96b247" d="M365.7 383.2l2 2z"/>
+  <path id="path3227" fill="#0dc9c1" d="M367.7 383.2l2 2z"/>
+  <path id="path3229" fill="#42bb92" d="M402.2 383.2l2 2z"/>
+  <path id="path3231" fill="#0e0e6e" d="M412.4 383.2l2 2z"/>
+  <path id="path3233" fill="#49497d" d="M359.6 385.3l2 2z"/>
+  <path id="path3235" fill="#a2b23d" d="M367.7 385.3l2 2z"/>
+  <path id="path3237" fill="#27c2aa" d="M369.8 385.3l2 2z"/>
+  <path id="path3239" fill="#74b166" d="M400.2 385.3l2 2z"/>
+  <path id="path3241" fill="#a4a43d" d="M406.3 385.3l-6 8z"/>
+  <path id="path3243" fill="#808067" d="M408.3 385.3l2 2z"/>
+  <path id="path3245" fill="#0e0e6e" d="M410.4 385.3l2 2z"/>
+  <path id="path3247" fill="#262678" d="M361.6 387.3l2 2z"/>
+  <path id="path3249" fill="#adb333" d="M369.8 387.3l2 2z"/>
+  <path id="path3251" fill="#42bb92" d="M371.8 387.3l2 2z"/>
+  <path id="path3253" fill="#0dc9c1" d="M396.2 387.3l2 2z"/>
+  <path id="path3255" fill="#96b247" d="M398.2 387.3l2 2z"/>
+  <path id="path3257" fill="#6e6c70" d="M406.3 387.3l2 2z"/>
+  <path id="path3259" fill="#1b1b74" d="M363.6 389.3l2 2-2-2z"/>
+  <path id="path3261" fill="#8d8d5b" d="M365.7 389.3l2 2z"/>
+  <path id="path3263" fill="#74b166" d="M373.8 389.3l2 2z"/>
+  <path id="path3265" fill="#0dc9c1" d="M375.9 389.3l2 2z"/>
+  <path id="path3267" fill="#34be9e" d="M394 389.3l2 2z"/>
+  <path id="path3269" fill="#adb333" d="M396.2 389.3l2 2z"/>
+  <path id="path3271" fill="#49497d" d="M404.3 389.3l2 2z"/>
+  <path id="path3273" fill="#0e0e6e" d="M365.7 391.4l2 2z"/>
+  <path id="path3275" fill="#6e6c70" d="M367.7 391.4l2 2z"/>
+  <path id="path3277" fill="#a4a43d" d="M369.8 391.4l4 4z"/>
+  <path id="path3279" fill="#96b247" d="M375.9 391.4l2 2z"/>
+  <path id="path3281" fill="#27c2aa" d="M377.9 391.4l2 2z"/>
+  <path id="path3283" fill="#68b070" d="M392 391.4l2 2z"/>
+  <path id="path3285" fill="#32327b" d="M402.2 391.4l2 2z"/>
+  <path id="path3287" fill="#49497d" d="M369.8 393.4l2 2z"/>
+  <path id="path3289" fill="#5bb47c" d="M379.9 393.4l2 2z"/>
+  <path id="path3291" fill="#27c2aa" d="M388 393.4l2 2z"/>
+  <path id="path3293" fill="#96b247" d="M390 393.4l2 2z"/>
+  <path id="path3295" fill="#a4a43d" d="M396.2 393.4l-2 4z"/>
+  <path id="path3297" fill="#808067" d="M398.2 393.4l2 2z"/>
+  <path id="path3299" fill="#0e0e6e" d="M400.2 393.4l2 2z"/>
+  <path id="path3301" fill="#262678" d="M371.8 395.4l2 2z"/>
+  <path id="path3303" fill="#8d8d5b" d="M373.8 395.4l2 2z"/>
+  <path id="path3305" fill="#8bb252" d="M382 395.4l2 2z"/>
+  <path id="path3307" fill="#1ac5b5" d="M384 395.4l2 2z"/>
+  <path id="path3309" fill="#5bb47c" d="M386 395.4l2 2z"/>
+  <path id="path3311" fill="#58587b" d="M396.2 395.4l2 2z"/>
+  <path id="path3313" fill="#0e0e6e" d="M373.8 397.5l2 2z"/>
+  <path id="path3315" fill="#667" d="M375.9 397.5l2 2z"/>
+  <path id="path3317" fill="#a4a43d" d="M377.9 397.5l2 2z"/>
+  <path id="path3319" fill="#99994e" d="M392 397.5l2 2z"/>
+  <path id="path3321" fill="#32327b" d="M394 397.5l2 2-2-2m-16.1 2l2 2z"/>
+  <path id="path3323" fill="#99994e" d="M379.9 399.5l2 2z"/>
+  <path id="path3325" fill="#a4a43d" d="M388 399.5l2 2z"/>
+  <path id="path3327" fill="#667" d="M390 399.5l2 2z"/>
+  <path id="path3329" fill="#0e0e6e" d="M392 399.5l2 2-2-2m-12.1 2l2 2z"/>
+  <path id="path3331" fill="#667" d="M382 401.5l2 2z"/>
+  <path id="path3333" fill="#a4a43d" d="M384 401.5l2 2z"/>
+  <path id="path3335" fill="#99994e" d="M386 401.5l2 2z"/>
+  <path id="path3337" fill="#32327b" d="M388 401.5l2 2z"/>
+  <path id="path3339" fill="#262678" d="M384 403.5l2 2z"/>
+  <path id="path3341" fill="#0e0e6e" d="M386 403.5l2 2z"/>
+  <path id="path3343" fill="#f90" d="M388 267.5c3.2 7.4 13.2 15.5 16 19.5-3.5 4-4.2 3.6-3.8 11 6-6.4 6.2-7 10.2-6.1 8.6 8.6 1.5 27-5.6 31-7.1 4.3-5.8-.1-16.5 5.2 4.9 4.2 10.6-.6 15.2.7 2.5 3-1.2 8.4.7 13.6 4-.4 3.6-8.7 4.6-11.7 3-11 21-18.6 21.9-28.7 3.8-1.7 7.5-.5 12 2-2.2-9.4-9.7-9.3-11.8-12.2-4.8-7.4-9.1-15.8-19.4-18-8-1.7-7.3.5-12.3-3-3.2-2.4-12.7-7-11.2-3.3z"/>
+  <path id="path3345" fill="#fff" fill-rule="evenodd" d="M410.6 275.9a1.6 1.6 0 11-3.3 0 1.6 1.6 0 013.3 0z"/>
+  <path id="path3347" fill="#f90" d="M362.9 298.8c5-6.2 7.6-19 9.8-23.2 5.2 1.2 5 2 11.5-1.8-8.5-2.4-9.2-2.2-10.2-6.1 3.6-11.7 23.2-14 30-9.6 7.2 4.3 2.7 5.2 12.4 12 1.4-6.2-5.5-9-6.5-13.6 1.5-3.7 8-3 11.6-7-2.2-3.5-9.3.8-12.4 1.4-11 2.5-26.3-9.8-35.6-6-3.3-2.5-4-6.4-4-11.7-7.1 6.5-3.5 13-5.2 16.3-4.2 7.7-9.7 15.5-6.8 25.6 2.2 7.8 3.8 6.2 3.2 12.3-.7 3.9-.4 14.5 2.2 11.4z"/>
+  <path id="path3349" fill="#fff" fill-rule="evenodd" d="M359.8 274.9c.8-.4 1.8-.1 2.2.7a1.6 1.6 0 11-2.2-.7z"/>
+  <path id="path3351" fill="#f90" d="M404 303c-8-1-20.1 3.4-25 3.8-1.5-5.1-.8-5.5-7.4-9 2.3 8.6 2.8 9 0 12-11.8 2.9-24-12.7-23.8-20.8 0-8.3 3.2-5 4-17-6 2-4.8 9.5-8.3 12.8-4 .6-6.6-5.3-12-6.3-1.8 3.7 5.5 7.5 7.6 9.9 7.9 8.2 5.2 27.5 13.3 33.5-.4 4.2-3.4 6.8-8 9.4 9.3 2.9 13-3.7 16.7-4 8.8-.2 18.3.4 25.5-7.3 5.4-6 3.3-6.5 8.8-9 3.7-1.4 12.6-7.2 8.6-8z"/>
+  <path id="path3353" fill="#fff" fill-rule="evenodd" d="M385.2 318.2a1.6 1.6 0 111.7-2.8 1.6 1.6 0 01-1.7 2.8z"/>
+  <path id="path6674" fill="#012169" stroke-width=".5" d="M0 0h256v256H0z"/>
+  <path id="path6676" fill="#fff" stroke-width=".5" d="M256 0v32l-95 96 95 93.5V256h-33.5L127 162l-93 94H0v-34l93-93.5L0 37V0h31l96 94 93-94z"/>
+  <path id="path6678" fill="#c8102e" stroke-width=".5" d="M92 162l5.5 17L21 256H0v-1.5zm62-6l27 4 75 73.5V256zM256 0l-96 98-2-22 75-76zM0 .5L96.5 95 67 91 0 24.5z"/>
+  <path id="path6680" fill="#fff" stroke-width=".5" d="M88 0v256h80V0zM0 88v80h256V88z"/>
+  <path id="path6682" fill="#c8102e" stroke-width=".5" d="M0 104v48h256v-48zM104 0v256h48V0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/al.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/al.svg
new file mode 100644
index 0000000..75995ec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/al.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-al" viewBox="0 0 512 512">
+  <path fill="#e41e20" d="M0 0h512v512H0z"/>
+  <path id="a" d="M204.9 99.5c-5 0-13.2 1.6-13 5.4-14-2.3-15.4 3.4-14.6 8.5 1.4-2 3-3.1 4.2-3.3 1.9-.3 3.8.3 5.8 1.5a23 23 0 015 4.4c-4.8 1.1-8.6.4-12.4-.3a17.6 17.6 0 01-6.1-2.5c-1.6-1.1-2.1-2.1-4.6-4.7-2.9-3-6-2.1-5 2.5 2.2 4.3 6 6.3 10.7 7 2.2.4 5.6 1.2 9.4 1.2 3.8 0 8.1-.5 10.5 0-1.4.8-3 2.4-6.2 3-3.2.6-8-2-11-2.6.4 2.5 3.5 4.8 9.7 6 10.2 2.2 18.7 4 24.3 7 5.6 3 9.1 6.8 11.6 9.8 5 6 5.3 10.5 5.6 11.5 1 9.5-2.2 14.8-8.4 16.4-3 .8-8.5-.7-10.5-3-2-2.4-4-6.4-3.4-12.7.5-2.5 3.4-9 1-10.3a291.6 291.6 0 00-34.4-16c-2.7-1.1-5 2.5-5.8 4A53.5 53.5 0 01129 107c-4.6-8.1-12.1 0-10.9 7.7 2.1 8.6 8.6 14.8 16.5 19.2 8 4.5 18.1 8.8 28.3 8.6 5.5 1 5.5 8.2-1.1 9.5-13 0-23.2-.2-32.9-9.6-7.4-6.7-11.5 1.3-9.4 5.8 3.6 14 23.6 18 43.8 13.4 7.8-1.3 3.1 7 .9 7.2-8.4 6-23.5 12-36.8-.1-6.1-4.7-10.2-.7-8 6 6 17.5 28.5 13.8 44 5.2 4-2.2 7.6 3 2.7 6.9-19.2 13.4-28.9 13.6-37.6 8.4-10.8-4.3-11.8 7.8-5.3 11.8 7.2 4.4 25.4 1 38.9-7.4 5.7-4.2 6 2.4 2.3 5-15.9 13.8-22.2 17.5-38.8 15.2-8.2-.6-8 9.5-1.6 13.5 8.8 5.4 26.1-3.6 39.5-14.7 5.6-3 6.6 2 3.8 7.8a57.4 57.4 0 01-23.3 19.2 29.1 29.1 0 01-19.5.7c-6.2-2.2-7 4.2-3.6 10 2 3.5 10.6 4.7 19.7 1.4 9.2-3.2 19-10.8 25.7-19.8 6-5.1 5.2 1.8 2.5 6.7-13.5 21.3-25.9 29.2-42.1 27.9-7.3-1.2-8.9 4.4-4.3 9.6 8 6.7 18.2 6.4 27-.2a751 751 0 0030.8-32.6c5.5-4.4 7.3 0 5.7 9-1.5 5.1-5.2 10.5-15.3 14.5-7 4-1.8 9.4 3.4 9.5 2.9 0 8.7-3.3 13-8.3 5.9-6.5 6.2-11 9.5-21.1 3-5 8.4-2.7 8.4 2.5-2.6 10.2-4.8 12-10 16.2-5.1 4.7 3.4 6.3 6.3 4.4 8.3-5.6 11.3-12.8 14.1-19.4 2-4.8 7.8-2.5 5.1 5.3-6.4 18.5-17 25.8-35.5 29.6-1.9.3-3 1.4-2.4 3.6l7.5 7.5c-11.5 3.3-20.8 5.2-32.2 8.5L142 300.6c-1.5-3.4-2.2-8.7-10.4-5-5.7-2.6-8.2-1.6-11.4 1 4.5.1 6.5 1.3 8.3 3.4 2.3 6 7.6 6.6 13 5 3.5 2.9 5.4 5.2 9 8.2l-17.8-.6c-6.3-6.7-11.3-6.3-15.8-1-3.5.5-5 .5-7.3 4.7 3.7-1.5 6-2 7.7-.3 6.6 3.9 11 3 14.3 0l18.7 1.1c-2.3 2-5.6 3.1-8 5.2-9.7-2.8-14.7 1-16.4 8.8a18.2 18.2 0 00-1.4 10c1-3.2 2.5-5.9 5.3-7.6 8.6 2.2 11.8-1.3 12.3-6.5 4.2-3.4 10.5-4.1 14.6-7.6 4.9 1.6 7.2 2.6 12.1 4.1 1.7 5.3 5.7 7.4 12 6 7.7.3 6.3 3.4 7 5.9 2-3.6 2-7-2.8-10.3-1.7-4.6-5.5-6.7-10.4-4-4.7-1.3-5.9-3.2-10.5-4.6 11.7-3.7 20-4.5 31.8-8.3 3 2.8 5.2 4.8 8.2 7.2 1.6 1 3 1.2 4 0 7.3-10.6 10.6-20 17.4-27 2.6-2.9 6-6.8 9.6-7.8 1.8-.4 4-.2 5.5 1.4 1.4 1.6 2.6 4.4 2 8.7-.6 6.2-2 8.2-3.8 11.8-1.7 3.7-3.9 6-6 8.8-4.4 5.7-10.1 9-13.5 11.2-6.8 4.4-9.7 2.5-15 2.2-6.7.8-8.5 4.1-3 8.7a21 21 0 0013.7 2.3c3.3-.6 7-4.8 9.8-7 3-3.6 8.1.6 4.7 4.7-6.3 7.5-12.6 12.4-20.3 12.3-8.2 1-6.7 5.7-1.3 7.9 9.8 4 18.6-3.5 23-8.5 3.5-3.7 6-3.9 5.3 2-3.4 10.5-8.1 14.6-15.7 15.1-6.2-.5-6.3 4.2-1.7 7.5 10.3 7 17.7-5 21.2-12.4 2.5-6.6 6.3-3.5 6.7 2 0 7.3-3.2 13.2-12 20.7 6.7 10.7 14.5 21.7 21.3 32.5l20.5-228.2-20.5-36c-2.1-2-9.3-10.5-11.2-11.7-.7-.7-1.1-1.2-.1-1.6 1-.4 3.2-.8 4.8-1-4.4-4.4-8-5.8-16.3-8.2 2-.8 4-.3 9.9-.6a32.3 32.3 0 00-14.4-11c4.5-3 5.3-3.3 9.8-7-7.7-.6-14.3-2-20.8-4a41 41 0 00-12.8-3.7zm.7 9c4 0 6.6 1.4 6.6 3 0 1.7-2.5 3.1-6.6 3.1-4 0-6.6-1.5-6.6-3.2 0-1.7 2.6-3 6.6-3z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512 0)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/am.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/am.svg
new file mode 100644
index 0000000..1198be0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/am.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-am" viewBox="0 0 512 512">
+  <path fill="red" d="M0 0h512v170.7H0z"/>
+  <path fill="#00f" d="M0 170.7h512v170.6H0z"/>
+  <path fill="orange" d="M0 341.3h512V512H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ao.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ao.svg
new file mode 100644
index 0000000..a5a25bf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ao.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ao" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="red" d="M0 0h512v259.8H0z"/>
+    <path d="M0 252.2h512V512H0z"/>
+  </g>
+  <path fill="#ffec00" fill-rule="evenodd" d="M228.7 148.2c165.2 43.3 59 255.6-71.3 167.2l-8.8 13.6c76.7 54.6 152.6 10.6 174-46.4 22.2-58.8-7.6-141.5-92.6-150l-1.3 15.6z"/>
+  <path fill="#ffec00" fill-rule="evenodd" d="M170 330.8l21.7 10.1-10.2 21.8-21.7-10.2zm149-99.5h24v24h-24zm-11.7-38.9l22.3-8.6 8.7 22.3-22.3 8.7zm-26-29.1l17.1-16.9 16.9 17-17 16.9zm-26.2-39.8l22.4 8.4-8.5 22.4-22.4-8.4zM316 270l22.3 8.9-9 22.2-22.2-8.9zm-69.9 70l22-9.3 9.5 22-22 9.4zm-39.5 2.8h24v24h-24zm41.3-116l-20.3-15-20.3 14.6 8-23-20.3-15h24.5l8.5-22.6 7.8 22.7 24.7-.3-19.6 15.3 7 23.4z"/>
+  <path fill="#fe0" fill-rule="evenodd" d="M336 346.4c-1.2.4-6.2 12.4-9.7 18.2l3.7 1c13.6 4.8 20.4 9.2 26.2 17.5a7.9 7.9 0 0010.2.7s2.8-1 6.4-5c3-4.5 2.2-8-1.4-11.1-11-8-22.9-14-35.4-21.3z"/>
+  <path fill-rule="evenodd" d="M365.3 372.8a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.6 0zm-21.4-13.6a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0zm10.9 7a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0z"/>
+  <path fill="#fe0" fill-rule="evenodd" d="M324.5 363.7c-42.6-24.3-87.3-50.5-130-74.8-18.7-11.7-19.6-33.4-7-49.9 1.2-2.3 2.8-1.8 3.4-.5 1.5 8 6 16.3 11.4 21.5A5288 5288 0 01334 345.6c-3.4 5.8-6 12.3-9.5 18z"/>
+  <path fill="#ffec00" fill-rule="evenodd" d="M297.2 305.5l17.8 16-16 17.8-17.8-16z"/>
+  <path fill="none" stroke="#000" stroke-width="3" d="M331.5 348.8l-125-75.5m109.6 58.1L274 304.1m18.2 42.7L249.3 322"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aq.svg
new file mode 100644
index 0000000..80e682a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aq.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-aq" viewBox="0 0 512 512">
+  <path fill="#072B5F" d="M0 0h512v512H0z"/>
+  <path fill="#FFF" d="M277.8 0c37.7 3.2 73 14.4 104.3 32l18.5-32h6.6L387 35c37 22 68.2 53 90.2 90l34.8-20v6.6L480 130c17.5 31 28.7 66 32 103.2V279a255.3 255.3 0 01-32 103l32 18.4v6.6l-34.8-20c-22 37-53.1 68-90.2 90l20.1 34.9h-6.6l-18.4-32c-31 17.5-66 28.7-103.2 32h-45.7A255.3 255.3 0 01130 480l-18.4 32H105l20-34.8c-37-22-68-53.1-90-90.2L0 407.2v-6.6L32 382A255.4 255.4 0 010 277.8v-43.5c3.2-37.7 14.4-73 32-104.3L0 111.5V105l35 20.2C57 88 88 56.9 125 34.9L105 0h6.5L130 32A255.4 255.4 0 01234.3 0h43.5zm-109 413l-35.9 62a250 250 0 00120.3 32.3v-71.7h-.1c-30.6-.5-59.3-8.6-84.4-22.6zm178.8 7.3l-6.5 3.9-7-2.1-12.3 2-1.1-.5a179 179 0 01-61.8 12v71.6h1.3a250 250 0 00119-32.1l-31.6-54.8zm89.2-56.6l-10.5.9 2.8 6.3-5.7 5.7-9.2 1.7-2.8 5 6.8 3.4-13 12 3.9 6.4-10.2-2.3-11.4 6.8-15.3 7.3-3.4 5.2-2.3-2 2.3-5-10.2 4-2.3-4-3.8 2.3 31.7 54.8a252.5 252.5 0 0088-88l-35.4-20.5zM102 348.3l-62.1 35.8a252.5 252.5 0 0088 88.1l35.9-62a180.5 180.5 0 01-61.8-61.9zm128 6.9l-1.7 2.9-8 .5h-2l-3.5 5.8-9.6-7-5.3 1.8.7 4.6-2.6-1.5-26.4 45.7a173 173 0 0081.6 21.9v-69.4l-.4-.1-22.7-5.2zm55.8 5.2l-4.2 1.9 2 5.5h-14.4l-10.3-4.5V430c19.1-.3 37.4-3.7 54.6-9.7l-3.4-2-13.6 3.5-12-7.7v3.1l-2.9-3.8 3.5-3.5-.6-10.3h4l2.3-6.7 2.9-1.3-2.3-3.4 3.4-1.2-.5-5.1-3.5-1.6 4.6-.5-2.9-12.5-6.7-6.8zm-152-30.5L107 345.5c14.7 24.4 35.3 45 59.7 59.7l26.3-45.6-4.9-2.7-.5 4.6-12.5-5.7-.5.5-6.3 2.3-1.2-4.5-14.7-7.3-15.8-5.2-2.6-11.7zm326.5-71l1.1 3.6-1.7 8 3.4 4.6 9 1.8-9 12.4 1.8 2 2.2 2.6-4 6 3.9 2.4-20 16.4 4.7 11.5-1.2 6.7-6.8 2.2-1.8 5.8-7.6 3.4-2.1 6.1 42.9 24.8a250 250 0 0032.2-120.3h-47zM4.8 259v1.3a250 250 0 0032.2 119l62-35.8A180 180 0 0176.5 259H4.8zm77.4 0a173 173 0 0021.8 81.6l28.7-16.5-5.4-9.5 2.8-13.8-5.1-1.7-1.7-5.7 8.6-1H128l.4-8.6-12.4 3.9-.6-3.3-1.7 6.3-6.7 2.7-4.7-4.4-1.6-4.6-1.9-9 4-2.8 1.7 2 1.2-2.6-1.8-13H82.2zm44.3 41l-1.7 4-5.5 1 3.4-4.5 3.8-.4zm-27.9-90.7l-4 5.6-1.1-3.8-5.2 1.5-.7.4a174 174 0 00-5.4 40.3h20.9l-.3-1.7 4.6 1 2.5-21.3.6-.8 4.6-2.6-5.8.5-2-5.1 10-11.5-9.1-1.5-6.9 6.7-2.7-7.7zM475.1 133L428 160l11.2 28.2-6.3 5.8-.4 6.6-4.1 5 .7 2.5 4 2.7-2.3 1.9 5 5 7.8 1.3 2.4 3.2 2.1 4.6 5.8 2.3 6.8-4.6 4.6.6-5.7 8 5.7 14.7-6.4 5.4h48.2v-1.3a250 250 0 00-32.1-119zm-438 0A250 250 0 004.7 253.2h71.7v-.1c.3-18.4 3.4-36.2 8.8-52.9l-1.6.4-.4-5.7H87l1.8-4.7-5.2-9-3.2 1.1-2.3-3.8-1.2 3.4-3.4-2.5 3.4-2-5.1-2 1.1-2.7-4-2.2-1.1-9-4-1.4 2.4-1.5-4.5-11.4L37 133zm98 56.6l5 6 2.8-1.4-7.9-4.6zM93.2 195h.8l-.2-1.4-.6 1.4zm73.4-88a174.7 174.7 0 00-59.7 59.7l43.5 25.2 32-7.4 1.4-6.9 2.7 1.4-.6-2.3 2-1.2 7.8-2.8v-7.9l2.6-3-31.7-54.8zm-91 79.4l.1.2h-.2v-.2zm-5.6-7.6l6.3 3.8-.8 3.8-5.5-7.6zM128 40a252.5 252.5 0 00-88.1 88l22.5 13 1.5-10.2h3.4l-.5 4.2v.2l-.3.1.1.7-.3 2.2 6 8.5 22.6 13 .5-.7 1.5 1.9 5 2.9a180.5 180.5 0 0161.9-61.8l-35.9-62.1zM61.7 155.2v.7l-1.6 4.4-1.9-5.1h3.5zM384.2 39.9L349 100.6l2.5-.8.7 4.6 3.6 2.4 2.7-4.7h3.3l2 10.3 7.6 6.1 2.4-1.2 6.3-2.2 17.6 6 3.2-.9 1.4 6.1 4.6.8-1.2-3h3.8l1.2 6.2 4.6-5 10.9 6.8 2.8 12.4-4.6 1.3 1.1 9 46.6-26.9a252.5 252.5 0 00-88-88zm-324 110.3l1.7 4-3.4-2.3 1.7-1.7zm191.6-68h1a173 173 0 00-81.2 21.8l28.8 50 1.4-5.3-1.7-5.2 8-19v-12.3h3.8l4.8-6.9 5.7-1.7.6-6.3 7.6-9.6 3.7 2 15.8-5.8 1.7-1.7zM70.5 133.8v4.4h-.2v.4l-3.4-.4-.3-2.2.1-.8v-.2l3.8-1.1zm-1.3-10.5l-2.3 5.1-1-2.3v-.3l3.3-2.5zm250.6-29l7.5 6.4 8.1.6c-5-2.6-10.2-5-15.6-7zM256 4.8A250 250 0 00133 37l35.8 62a180 180 0 0184.5-22.5V4.8h2.8zm3 0v71.7c15.4.2 30.2 2.4 44.4 6.3l1.4-.8v1.2c13.6 3.8 26.5 9.2 38.6 15.9l35.8-62A250 250 0 00258.9 4.7zm25 79.6l12 2.8.3-.3c-4-1-8.1-1.8-12.3-2.5zm-23.8-2.2l16.6 4 2.4-2.5a175 175 0 00-19-1.5z"/>
+  <path fill="#072B5F" d="M257.6 73l1.7 9 1 .2H259v76.5a97 97 0 0143.4 11.6l38.2-66.3-5-2.7 2.1.2 6.3 1 5.2-1.9-.8 1.4 4 2.4v.5l3.5 2.1.1-.2 8 5.6.5 2.7 2.6.5-.5 4.6-.4.6h1l4.4-2.3a178.5 178.5 0 0138.6 45.3l15.5-9v.6l1.8 2.8.7 1.8-15 8.7c6.4 11.6 11.6 24 15.4 37l-1 1.2 1.7 1.2c4 14.4 6.2 29.5 6.4 45H459l-.4.5 1.7 5.3h-24.7v.1c-.5 30.6-8.6 59.3-22.6 84.4l19.2 11-.4 1.2-1.7 3.8 8 4.2-1.3.1-26.7-15.4a180.5 180.5 0 01-61.8 61.8l4.2 7.3-5 3-4.1-7.4c-7.3 4-14.9 7.6-22.7 10.6l-2.4-1.2-1.1-.4-2.1-1.3h-.2l2 1.1-2.2-.9-1.2-.7a173 173 0 0027-12.2l-38.2-66.2a97 97 0 01-43.4 11.6v10l-1.5-.8-4.2-2v-7.2a97 97 0 01-43.4-11.6L198 362.3l-5-2.7 11.9-20.6a98 98 0 01-31.8-31.8L134 330l-.3-1.3v-3l-1-1.6 37.7-21.7a97 97 0 01-11.6-43.4H104l-.8-5.7h55.6a97 97 0 0111.6-43.4L143 194.2l2.1-1.1 5.4-1.2 22.7 13a98 98 0 0131.8-31.7l-6.6-11.4 2.1-7.8 9.4 16.4a97 97 0 0143.4-11.6V82.2h-1.4l.2-.2 3.3-3.4L254 73h3.5zM339 307.2a98 98 0 01-31.8 31.8l38.3 66.2c24.4-14.7 45-35.3 59.7-59.7L339 307.2zm-80-40.5v81a91.2 91.2 0 0040.4-10.8l-40.5-70.2zm-5.8 0L212.7 337a91.2 91.2 0 0040.5 10.8v-81zm176.7-7.8h-76.5a97 97 0 01-11.6 43.4l66.2 38.2a173 173 0 0021.9-81.6zm-166 5l40.5 70.1a92.2 92.2 0 0029.6-29.6l-70.1-40.5zm-15.7 0l-70.1 40.5a92.2 92.2 0 0029.6 29.6l40.5-70.1zm18.5-5l70.2 40.5a91.2 91.2 0 0010.8-40.5h-81zm-21.4 0h-81a91.2 91.2 0 0011 40.5l70-40.5zm91.6-46.2l-70.2 40.5h81a91.2 91.2 0 00-10.8-40.5zm-161.7 0a91.2 91.2 0 00-10.8 40.5h81l-70.2-40.5zM408 171.6l-66.2 38.2a97 97 0 0111.6 43.4H430a173 173 0 00-21.9-81.6zm-200.3 6.5a92.2 92.2 0 00-29.6 29.6l70.1 40.5-40.5-70.1zm96.7 0l-40.5 70.1 70.1-40.5a92.2 92.2 0 00-29.6-29.6zm-51.2-13.7a91.2 91.2 0 00-40.5 10.8l40.5 70.1v-81zm5.7 0v81l40.5-70.2a91.2 91.2 0 00-40.5-10.8zM87.6 212.9l-2.5 1.3 2.6-10.3-2.3-1.2 1.4-2.8-1.5.3 1.8-5.3h6.1c-2.1 5.9-4 11.8-5.6 18zm257.9-106l-38.3 66.2A98 98 0 01339 205l66.2-38.3a174.7 174.7 0 00-59.7-59.7zM62.4 141l10 5.8 2.3 3.3 6.2 8 12.6 3.5v.4l1.4-2.2 2 1.2 5.2 6.1 3.4 3.8 1.7 2 19.1 9.1 3.5 1.7 1.1 1 4.1 4.9-31-17.9c-3.9 7-7.3 14.4-10.2 22l-.3-1.6H90l-1-1.8c2.9-7.4 6.2-14.6 10-21.5l-37.2-21.5-.2-.6.5-3.8.3-1.9zm242.4-57.7l.3 4 7 .7 5.7 4.4h-.6v.6h1.1l.6.6 1 .8a169 169 0 00-23.5-7.4l.3-.3 6.7-3.8 1.4.4zm-25 .1l1 .4 3.3.7-3.4-.5-1.2-.4.7.4-.9-.2.4-.4zm-26.5-1h-.1zm2.7-.1h-2.7 2.7zm61 339.5l.3.2 1.1.6-1.4-.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ar.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ar.svg
new file mode 100644
index 0000000..1730eca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ar.svg
@@ -0,0 +1,31 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ar" viewBox="0 0 512 512">
+  <path fill="#74acdf" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <g id="c" transform="translate(-153.6) scale(1.024)">
+    <path id="a" fill="#f6b40e" stroke="#85340a" stroke-width="1.1" d="M396.8 251.3l28.5 62s.5 1.2 1.3.9c.8-.4.3-1.5.3-1.5l-23.7-64m-.7 24.1c-.4 9.4 5.4 14.6 4.7 23-.8 8.5 3.8 13.2 5 16.5 1 3.3-1.3 5.2-.3 5.7s3-2.1 2.4-6.8c-.7-4.6-4.2-6-3.4-16.3.8-10.3-4.2-12.7-3-22"/>
+    <use width="100%" height="100%" transform="rotate(22.5 400 250)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(45 400 250)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(67.5 400 250)" xlink:href="#a"/>
+    <path id="b" fill="#85340a" d="M404.3 274.4c.5 9 5.6 13 4.6 21.3 2.2-6.5-3.1-11.6-2.8-21.2m-7.7-23.8l19.5 42.6-16.3-43.9"/>
+    <use width="100%" height="100%" transform="rotate(22.5 400 250)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(45 400 250)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(67.5 400 250)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" transform="rotate(90 256 256)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="rotate(180 256 256)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="rotate(-90 256 256)" xlink:href="#c"/>
+  <circle cx="256" cy="256" r="28.4" fill="#f6b40e" stroke="#85340a" stroke-width="1.5"/>
+  <path id="h" fill="#843511" d="M265.7 250c-2 0-3.8.8-4.9 2.5 2.2 2 7 2.2 10.3-.2a7.5 7.5 0 00-5.4-2.4zm0 .4c1.9 0 3.6.8 3.9 1.7-2.2 2.4-5.7 2.2-7.9.4a4.6 4.6 0 014-2.1z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512.3 0)" xlink:href="#d"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512.3 0)" xlink:href="#e"/>
+  <use width="100%" height="100%" transform="translate(19.3)" xlink:href="#f"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512.3 0)" xlink:href="#g"/>
+  <path fill="#85340a" d="M251.7 260a2 2 0 102 3c.7.6 1.7.6 2.3.6h.3a4.2 4.2 0 002.3-.6 2 2 0 102-3c.5.1.9.6.9 1.2a1.3 1.3 0 01-1.3 1.3 1.3 1.3 0 01-1.3-1.3 3.3 3.3 0 01-2.8 1.8 3.3 3.3 0 01-2.7-1.8 1.3 1.3 0 01-1.3 1.3 1.3 1.3 0 01-1.3-1.3c0-.6.3-1 .8-1.3zm2 5.8c-2.1 0-3 2-5 3.3 1.2-.5 2-1.3 3.6-2.2 1.5-.9 2.8.2 3.7.2.9 0 2.2-1.1 3.7-.2 1.5.9 2.4 1.7 3.5 2.2-2-1.4-2.8-3.3-5-3.3a6 6 0 00-2.2.6 5.8 5.8 0 00-2.2-.6z"/>
+  <path fill="#85340a" d="M253 268.4a15 15 0 00-3.6.7c4-1 4.8.4 6.6.4 1.8 0 2.6-1.3 6.6-.5-4.4-1.2-5.3-.4-6.6-.4-.9 0-1.5-.3-3-.3z"/>
+  <path fill="#85340a" d="M249.6 269h-.8c4.6.5 2.3 3.1 7.2 3.1 4.8 0 2.6-2.6 7.2-3-4.8-.5-3.3 2.4-7.2 2.4-3.7 0-2.6-2.5-6.4-2.5zm10.3 7.1a4 4 0 00-3.9-4 4 4 0 00-4 4 4 4 0 014-3 4 4 0 014 3z"/>
+  <path id="e" fill="#85340a" d="M238.3 249.9c5-4.4 11.4-5 14.9-1.8a8.6 8.6 0 011.6 3.7c.5 2.5-.3 5.2-2.3 8 .3 0 .7.1 1 .4 1.6-3.4 2.3-6.8 1.7-10a14.2 14.2 0 00-.7-2.5c-4.8-4-11.4-4.4-16.2 2.2z"/>
+  <path id="d" fill="#85340a" d="M246.2 248.6c2.8 0 3.5.6 4.8 1.7 1.3 1.1 2 .9 2.2 1.1.2.2 0 .9-.5.7-.4-.3-1.2-.7-2.6-1.8-1.3-1-2.6-1-4-1-3.8 0-6 3.2-6.5 3-.4-.2 2.2-3.7 6.6-3.7z"/>
+  <use width="100%" height="100%" transform="translate(-19.6)" xlink:href="#h"/>
+  <circle id="f" cx="246.3" cy="252.1" r="2" fill="#85340a"/>
+  <path id="g" fill="#85340a" d="M241 253.4c3.7 2.8 7.4 2.6 9.6 1.3 2.2-1.3 2.2-1.8 1.7-1.8-.4 0-.9.5-2.6 1.3-1.8 1-4.4 1-8.8-.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/as.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/as.svg
new file mode 100644
index 0000000..b8d8162
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/as.svg
@@ -0,0 +1,33 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-as" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="gray" d="M496 16h496.1v496h-496z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-512 -16.4) scale(1.032)">
+    <path fill="#006" d="M0 16h992.1v496H0z"/>
+    <path fill="#bd1021" fill-rule="evenodd" d="M0 264l992.1 248V16L0 264z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M992.1 42.5v443L106.3 264 992.1 42.5z"/>
+    <g stroke="#000">
+      <path fill="#9c3900" fill-rule="evenodd" stroke-linejoin="round" stroke-width="1.7" d="M825.5 319.6s-6.2-5 1.1-13.2c-4-3.4-.3-9.9-.3-9.9s-6.7-2.5.3-13c-5-3.3-2.8-11-2.8-11s-16.6-6.1-.8-12c-13 5.6-25.1-7.6-25.1-7.6l-18.9.5c-3.2-15.6-28-2-9.5-47-4.8-.8-10.2-2.2-15.5 1.7s-20.6 12.4-29.6 4 6-20.6 6.2-20.9c.3-.3 20-10.4 22.8-17.2-.3-5-6.5-9-.8-20 6.4-10.4 46.1-20.2 64.2-23.6 8.7-4 12.6-11.5 12.6-11.5l2 7.3s40-11.9 42-17.5.8 5 .8 5c15.8-1.3 35.8-14.8 38.6-8.6 13.2-2.6 38.5-13.8 38.5-13.8s8.8-.3 2.6 9.3c4 6.1-1.2 11.5-1.4 11.5-.3 0 1.7 6.2-3.4 9.6 1.7 5.3-3.1 9.5-3.1 9.5s2.2 6.5-6.8 9.9c.9 5.6-5 6.7-5 6.7s.8 6-3.1 8.5c0 4.5-4.5 6.8-4.5 6.8s2.8 1.6-1.2 4.5a2029 2029 0 01-44.7 27.6c0-.3 29.8 5.3 31.8 6.4s24.5 16 24.5 16l-22.8 28.2s-25.4-2.8-26.5-1.4 5.4 2 6.8 4.2c1.4 2.3 3.6 7.6 8.1 7 4.5-.5-8.4 8.2-16.9 9 0 3.2 10.7 3.5 13.6 1 2.8-2.6-6.8 7.3-8 8.7s12.7-2 12.7-2-2.2 9.3-14.3 12.1c4.8 7.9 2.8 13 2.5 13s-7.9-8-15.2-6.5a35 35 0 009.6 15.7c1.7 1.2-13.2.9-15.2-3.3s-3.7 10.1 1.7 14.6c-6.2.3-11.6-3.4-11.6-3.4s-3.6 8.5-1.1 12.7c2.5 4.2-8.7-8.5-8.7-8.5l-21.4 9-4.8-8.1z"/>
+      <path fill="#ffc221" fill-rule="evenodd" stroke-width="1.8" d="M660.1 302.8c.5 0 31.1-.5 45.1-8.5a83.6 83.6 0 0016.6 18.6l4.5-16s11 .4 12 3c-1.5 3-2 7-2 7s7.5.4 8 1.4-2 9.6-2 9.6l32.1 7.5s2.5-12.6 5-11c2.5 1.5 13.6 17 29.1 18s16.6-13 16.6-13l3.5 2s6.5-14 7.5-14 2.5 2 11 2c2.5 3 3.5 10 3.5 10s-9.5 9.5-6.5 17 3.5 5.5 3.5 5.5l69.2 16.6s3.5 5.5-2.5 8.5c0 .5-69.7-16-69.7-16s-6.5 7.5-11.5 6-1.5 3-1.5 3l75.2 6s5.5 7 1.5 9c-5 .5-81.2-5-81.2-5s-4.5 9.5-9.6 1.5C814 377 810 370 810 370s-6.5 5-7.5-.5c-5.5 4-9-2.5-9-2.5l-32.1-2-2 3s5.5 1.5-3 5 51.1 2 52.6 2.5-4 5-4 5 30.6 2 36.1-4.5-2 8.5-2 8.5 24-1 24-2-.4 7.6-17 6.6c10 6.5 22.6 10.5 22.6 10.5s-12.5 3-27-.5c2.4 6.5 13.5 12.5 13.5 12.5s-8 7-26.1-10c5 9 1 12.5.5 11.5s-9-13.5-29-18c12.4 8 7 11.5 7 11.5s-6.6-11.5-17.1 0c-4-10.5-19.6-16.5-38.6-17.5-6-7-9.6-5-23.6-9-8-9-19.5-19.1-19.5-19.1s.5-13.6 14-12c1.5 4.5 1.5 3 1.5 3s15-5.6 19.6 2c6.5-11.6 15.5-1.8 17 2.3 4.3.6 26 1.2 26 1.2s-2.4-4.5-1-4 13.6-4.5 13.1-6c-.5-1.6-1-6.6 1-6 2 .4-17-2.6-27.6 5.4-3.5-3.5-1-13-1-13l-31-6.5-1.6 8s-9 1.5-8.5-.5l-2 7s-12-3-12-3.5l3.5-17.5c0 .5-10 1-24 11.5-4-12.5-35.7-29-35.7-29.6z"/>
+      <path fill="none" stroke-width="1.8" d="M736.3 307.4l-6.5 29m12.5-18l-2 9.5m34.1-2l-3 9m58.7 52.2c-.5 0-16 2-18 1.5s24.5 8 24.5 11.5m-34.6-9.5s-15.5-10-18-9 15.5-.6 17-2m-31-.6s-16.1.5-17.6-1 15.5 11 18.5 10m-32-16c-.6 0-11.1-4-15.6-5 4 4 7 9.5 17 11.5m2.5-13c-.5-1-20-7-20-10 4.5 1.5 11 3.5 17 2m106.8-15l-2 9"/>
+      <path fill="#ffc221" fill-rule="evenodd" stroke-width="1.8" d="M699.2 261.7s-21 18 0 28.6c1-7 2.5-8 2.5-8s17.6 6.5 28.1-9c-4.5-6.6-12.5-4-12.5-4s-16.6 0-18-7.6z"/>
+      <path fill="none" stroke-width="1.8" d="M716.8 269.7l-14.6 12.6m59.3 74.5s3.4 3.7.4 8.2m70.2-4.5l-5.5.5m-39.6-3.5l10 1.5m17-27.3s.2 10.1-8.2 9.9c-8.5-.3-5.7.2-5.7.2"/>
+      <path fill="none" stroke-width="1.8" d="M820.4 330s3.4 1.1 2.6 3.7c-.9 2.5.8 9.8-9 16.9-10.5 2.2-9.4-8.8-9.4-8.8"/>
+      <path fill="none" stroke-width="1.8" d="M824 333.1s6.3-3.7 7.1 2.3c.9 5.9-5 16.9-9.3 18.5-4.2 1.7-9-.2-8.4-3m18.3-15.3s5.6-4.5 7.3 1.4c1.7 6-4.5 19.2-7 19.5m7.6-19.5s2.8-1.4 4.8.3m-13.8 20c-1.2.3-6 .6-7.6-3m-17.8-6.8l-5.9.2m27.6 22l-.6-9.3-2.2-3-4 3.9s-.5 9.3-2.2 10.1M820 361l-3-6-4.8 6s-.6 8.4-2.3 9.3m2.3-9.6c0-.3-2-5.6-2-5.6s-5.6 3-6.2 5.3c-.6 2.3-.9 8.4-2.3 9m2.3-10.1s.6-5-1.1-5-9.3 7-9.6 13.1"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-linejoin="round" stroke-width="1.8" d="M700 261.9s2.7-2.8 3.6-6.2c.8-3.4-1.2-7 2.2-10.2 3.4-3 47.9-22 51.5-25.6a102 102 0 0011.3-13.2c.9-1.7 3.4 8.4-4.2 13 8.2-2.3 13.5-4.8 16.9-3.7-3.4 4.8-12.4 12.7-16.6 12.7 9.8-3.7 18.8-6.8 21.4-4.8 2.5 2-12.1 11.8-18 12.3 9.8-2.5 23-6.4 24.7-2.2-5.3 1.7-3.6 3-14.6 9.3-1.4 1.1-8.5 1.4-8.5 1.4 8.5-.8 20-4.2 21.2 2-6.8 2.5-9.3 5.9-15 7.3-5.6 1.4-18.6 4-26.4 7-8 3.1-19.5 12.1-19.5 12.1s-25 .9-25 .6-4.8-11.5-5-11.8z"/>
+      <path fill="none" stroke-width="1.8" d="M711.7 259.9s.3-5.6 2.9-7.6c2.5-2 15.2-6.8 18-11 2.8-4.2-4.2 7.3-3.1 10.4m-12.7-.3s6.2 2.3 4.8 7"/>
+      <path fill="none" stroke-width="1.6" d="M724.1 254.7a4.7 4.7 0 11-9.3 0 4.7 4.7 0 019.3 0z"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.8" d="M914.7 244.7l48.7 9.3s5.4-6.2 2.6-9.6c7.3-1.7 5.3-11.3 5.3-11.3s8.5-3.6 1.4-12c4.8-4.8-1-8.5-1-8.5s1.9-8.4-4.3-9.3c1.7-6.7-10.7-9-10.7-9s-25.6 7-43.7 7.6c6 6-2.2 9.6-2.2 9.6s4.8 3.4 3.4 6.2c-1.4 2.8.8 5.9-5.4 7.8 8.2 3.7-.8 10-.8 10s9 6.1 6.7 9.2z"/>
+      <path fill="none" stroke-width="1.8" d="M910 234.3s43 5 45 5 9.6 2.6 11 5.1m-53.8-12.7l60 1.4m-59.7-2.8s56.9-3.3 60.8-9.3m-59.1-3s57.1-6.3 57.7-5.4m-59.7-1.7s55.5-8.7 56-7.3M754 175.2s17.4 19.1 15.7 32"/>
+      <path fill="none" stroke-width="1.8" d="M768.6 197.1s5.6 8.2 7.9 9 22 2 23 10.4c1.2 5.4-4.1 3.7-3.3 7.6 1.4 5.1 14.6 11.6 29 4m-13.2 4s11.8 17.4 29.3-1.5m-9 7.6s14.3 7.6 26.1-12m-15.2 13.7s7 6 21.7-2m20.3-7.9s21.6 4.5 23 6m-14.9-10.7l15.2.5m-24.5-9s26-1.7 29.3 3.7m-40.5-11.8s36.3 1.4 38 3.3m-29.9 33.8s6.2-1.7 7-.8m-21 16s8.1 7 18.5 4m-14 7.9s9.3 4.2 20.2 1.6m-17.1 5.4s9.3 6.2 15.5 5m-19.7-1.4s6.4 4.8 6.7 7.4m-15.8-1.7s2 10.1 9 13.8m-13.8-9.3s-3 13.2 4.8 21.4m-12.9-11c0 .3-.6 6.2-.3 6.8m-50.4-58l15.2-.9s5.7-2.2 1.7-5.9m2 3.4c.3 0 14.3 1.1 18 5.3 3.7 4.3 8.2 12.7 10.7 14.1 2.5 1.4 3.1-.5 3.1-.5m-6.2-2.3s-7.6 13-1.7 16.9m-2.5-2.5s-6.8 9-1.4 13.5m-1.4-1.2s-5.4 8.8 1 14.7m-3.4-37.8c-.4.3-6.5 4.7-8.7 3.6m2.2 10.2s2.5 2.5 4.7 2.2m-4.4 11l4 2.8m-3.5 7.3l3.5 2.1m-67-140.2s7.3 3.9 13.2 0 34.4-18.3 41.8-20.7c7.4-2.4 11.5-16 13-21.9m-5.6 16l41.4-12.2s6.8-5.6 7.1-16m-3 11.3s41.5-4.1 41.5-19.5m-6.5 10.6s43.5-11.8 47.7-16.3"/>
+      <path fill="none" stroke-width="1.8" d="M785 178.2s26.4-13.6 30.5-15.1c4.2-1.5 13.6-13.3-.6-13.3"/>
+      <path fill="none" stroke-width="1.8" d="M797.8 183.5c.3 0 21.6-13.9 28.7-15.7 3.8-5.3 1.8-11-4.8-9.7"/>
+      <path fill="none" stroke-width="1.8" d="M828.3 164.3c.5-.3 11.5-.6 7.7 8-5.7 4.1-30 16.3-30 16.3m16.6-33.5l46.2-15.4s3.9-8-1.8-9.2m38.5-13.9c0 .3 6 3.6 2.4 9-6.5 3.8-37.3 11.2-37.3 11.2m81.7-25L908.8 124m40.2-2.3l-37.9 11.5m34.7-2l-33.5 10m27.3-.6c-1 0-24.9 7.4-24.9 7.4m19.5 0l-15.4 6.2m11.6 2.1c-.6 0-13.3 5.6-13.3 5.6m9.5 1.2l-11.9 5.6m-8.6 7.1s1.5.6 1.2 2.4m-31.1 14s5 1.7.3 6.4c-2.4 3.3-9.2 2.4-13.3 8.3m45.3-81.1s6.2 1.5 1.5 9.5c-12.5 4.7-37.6 12.4-37.6 12.4s-1.2 2-4.5 3.9c-3.2 1.7-39 11.8-39 11.8m81.7-28.4s6.8 3 0 8c-7.7 4.4-34.7 12.7-34.7 12.7s-.3 2.4-1.5 3.3c-1.1.8-36.7 12.7-36.7 12.7"/>
+      <path fill="none" stroke-width="1.8" d="M912.3 143s7.1 2 1 8c-7.5 4.4-31.2 12.4-31.2 12.4s-2.3 3-6.2 4.2c-3.8 1.1-28.4 11.2-28.4 11.2m66.6-27.8c2 .9 7.7 1.7.9 7-8 3.6-27.5 11.3-27.5 11.3l-1.8 3.3-31.1 13.3m61.3-27s3 3.6-3.6 7.8c-7 3.8-22.5 9.7-22.5 9.7m22.5-9.1s3.3 2-.8 5c-4.8 2.3-23.4 12.1-23.4 12.1l-12.2 8"/>
+      <path fill="none" stroke-width="1.8" d="M869.7 140c0 .3 5 4.4 3.3 9.2 4.4 3.3 3.5 6.8 3.5 6.8s6.2 3.5 5.3 8.6c6.3 1.5 6 5 6 5l-2.1 3.3s6.2-.3.9 7.7c3.2 1.7 1.7 3.8 1.7 3.8m-1.7-3.5c-1 0-21.7 7.7-27 12.4"/>
+      <path fill="none" stroke-width="1.8" d="M836.5 171.7s6.3-.3 5.4 6.5c7-2.4 5.6 4.5 5.6 4.5s8.3-3.3 6.8 7c5.3-1.1 4.5 4.2 4.5 4.2s4.7-.3 4.7 2.4c3.2-3 6.8-1.5 6.8-1.5s2.4-3.3 5.6-2.4M842.2 178c0 .6-27.9 16-27.9 16m33.2-11l-21 13m28.1-6.5c0 .3-18.4 11-18.4 11m22.5-6.8s-13 10.7-16 10m20.5-6.7s-7.4 5.6-13.6 8.2m21.3-10.6s2.3 3-12.5 10.6"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/at.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/at.svg
new file mode 100644
index 0000000..649d6ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/at.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-at" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M512 512H0V0h512z"/>
+    <path fill="#ed2939" d="M512 512H0V341.3h512zm0-341.2H0V.1h512z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/au.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/au.svg
new file mode 100644
index 0000000..ca5d607
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/au.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-au" viewBox="0 0 512 512">
+  <path id="path598" fill="#006" stroke-width="1.3" d="M0 0h512v512H0z"/>
+  <path id="path606" fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M54.9 368.6L95.5 384l13.4-41.4 13.3 41.4 40.7-15.4-24.1 36.3 37.4 22.2-43.3 3.7 6 43.1-30-31.5-30 31.5 6-43-43.4-3.8L79 404.9m325 71.5l-19 1.6 2.7 18.8-13-13.7-13 13.7L364 478l-18.8-1.6 16.3-9.6L351 451l17.7 6.7 5.8-18 5.7 18L398 451l-10.4 15.8m16.2-270.4L385 198l2.6 18.8-13-13.7-13 13.7L364 198l-18.8-1.6 16.3-9.6L351 171l17.7 6.7 5.8-18 5.7 18L398 171l-10.4 15.8m-88.8 123.4l-18.8 1.6 2.6 18.7-13-13.7-13 13.7 2.5-18.7-18.8-1.6 16.3-9.7-10.5-15.7 17.7 6.7 5.8-18 5.7 18 17.7-6.7-10.4 15.7M497 282.2l-18.8 1.6 2.6 18.7-13-13.7-13 13.7 2.5-18.7-18.8-1.6 16.3-9.7-10.5-15.7 17.7 6.7 5.8-18 5.8 18 17.6-6.7-10.4 15.7M416.6 355l-10.3 6.4 2.9-11.8-9.3-7.8 12-.9 4.7-11.2L421 341l12.1 1-9.2 7.7 2.9 11.8"/>
+  <g id="g1582" transform="scale(.5)">
+    <path id="path1560" fill="#006" d="M0 0h512v512H0z"/>
+    <path id="path1562" fill="#fff" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+    <path id="path1564" fill="#c8102e" d="M184 324l11 34L42 512H0v-3zm124-12l54 8 150 147v45zM512 0L320 196l-4-44L466 0zM0 1l193 189-59-8L0 49z"/>
+    <path id="path1566" fill="#fff" d="M176 0v512h160V0zM0 176v160h512V176z"/>
+    <path id="path1568" fill="#c8102e" d="M0 208v96h512v-96zM208 0v512h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aw.svg
new file mode 100644
index 0000000..248a08d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/aw.svg
@@ -0,0 +1,186 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-aw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="gray" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#39c" d="M0 0v512h768V0H0z"/>
+    <path fill="#ff0" d="M0 341.3v28.5h768v-28.5H0zm0 57v28.4h768v-28.5H0z"/>
+    <path fill="#9cc" d="M122 28l2.4 2.5-2.3-2.4zm-2.3 4.8l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M119.7 35.2l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#6cc" d="M117.3 40l2.4 2.3-2.4-2.3z"/>
+    <path fill="#c66" d="M122 40l2.4 2.3-2.3-2.3z"/>
+    <path fill="#6cc" d="M126.8 40l2.4 2.3-2.4-2.3z"/>
+    <path fill="#ccf" d="M117.3 42.4l2.4 2.3-2.4-2.3zm9.5 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#fcc" d="M119.7 44.7l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#6cc" d="M115 47.1l2.3 2.4-2.4-2.4z"/>
+    <path fill="#c00" stroke="#fff" stroke-width="3" d="M121.7 32.9L105 96.2l-63.5 17.2 63.3 16.5 16.9 63.3 16.9-63.3 63.2-16.9-63.3-16.8-16.8-63.3z"/>
+    <path fill="#6cc" d="M129.2 47.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M115 49.5l2.3 2.4-2.4-2.4m14.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M117.3 51.9l2.4 2.3-2.4-2.3m9.5 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#69c" d="M112.5 54.3l2.4 2.3-2.4-2.3z"/>
+    <path fill="#c33" d="M118.1 55.8l.8 1.6-.8-1.6m9.5 0l.8 1.6-.8-1.6z"/>
+    <path fill="#69c" d="M131.6 54.3l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cf" d="M112.5 56.6L115 59l-2.4-2.4m19 0L134 59l-2.4-2.4z"/>
+    <path fill="#fcc" d="M115 59l2.3 2.4-2.4-2.4m14.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M110.2 61.4l2.3 2.4-2.3-2.4zm23.8 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M110.2 63.8l2.3 2.4-2.3-2.4m23.8 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#cff" d="M110.2 66.2l2.3 2.3-2.3-2.3m23.8 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#69c" d="M107.8 68.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M112.5 68.5L115 71l-2.4-2.4m19 0L134 71l-2.4-2.4z"/>
+    <path fill="#69c" d="M136.3 68.5l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M107.8 71l2.4 2.3-2.4-2.4z"/>
+    <path fill="#c33" d="M113.3 72.5l.8 1.6-.8-1.6m19 0l.9 1.6-.8-1.6z"/>
+    <path fill="#9cc" d="M136.3 71l2.4 2.3-2.3-2.4z"/>
+    <path fill="#cff" d="M107.8 73.3l2.4 2.4-2.4-2.4m28.6 0l2.3 2.4-2.3-2.4z"/>
+    <path fill="#fcc" d="M110.2 75.7l2.3 2.3-2.3-2.3m23.8 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cc" d="M105.4 78l2.4 2.4-2.4-2.3z"/>
+    <path fill="#c33" d="M111 79.6l.7 1.6-.8-1.6m23.9 0l.8 1.6-.8-1.6z"/>
+    <path fill="#9cc" d="M138.7 78l2.4 2.4-2.4-2.3z"/>
+    <path fill="#ccf" d="M105.4 80.4l2.4 2.4-2.4-2.4m33.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M107.8 82.8l2.4 2.4-2.4-2.4m28.6 0l2.3 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M103 85.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M108.6 86.8l.8 1.6-.8-1.6m28.5 0l.8 1.6-.8-1.6z"/>
+    <path fill="#9cc" d="M141.1 85.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M103 87.6l2.4 2.4-2.4-2.4m38.1 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M105.4 90l2.4 2.3-2.4-2.3m33.3 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cc" d="M100.6 92.3l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M105.4 92.3l2.4 2.4-2.4-2.4m33.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M143.5 92.3l2.4 2.4-2.4-2.4m-50 2.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M95.9 94.7l2.4 2.4-2.4-2.4m52.3 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M150.6 94.7l2.4 2.4-2.4-2.4m-64.2 2.4l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M88.7 97.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M98.3 97.1l2.3 2.4-2.3-2.4z"/>
+    <path fill="#c33" d="M100.6 97.1l2.4 2.4-2.4-2.4m42.9 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M145.9 97.1l2.3 2.4L146 97z"/>
+    <path fill="#ccf" d="M155.4 97.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M157.8 97.1l2.3 2.4-2.3-2.4z"/>
+    <path fill="#69c" d="M76.8 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M79.2 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#cff" d="M81.6 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M91.1 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M95 100.3l1.7.8-1.6-.8m54.7 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M153 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#cff" d="M162.5 99.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M165 99.5l2.3 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M167.3 99.5l2.4 2.4-2.4-2.4m-97.6 2.4l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cc" d="M72 101.9l2.5 2.3L72 102z"/>
+    <path fill="#cff" d="M74.5 101.9l2.3 2.3-2.3-2.3z"/>
+    <path fill="#fcc" d="M84 101.9l2.4 2.3L84 102z"/>
+    <path fill="#c33" d="M88 102.7l1.5.8-1.5-.8m69 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M160.2 101.9l2.3 2.3-2.3-2.3z"/>
+    <path fill="#cff" d="M169.7 101.9l2.3 2.3-2.3-2.3z"/>
+    <path fill="#9cc" d="M172 101.9l2.4 2.3-2.3-2.3z"/>
+    <path fill="#69c" d="M174.4 101.9l2.4 2.3-2.4-2.3m-111.8 2.3l2.3 2.4-2.3-2.4z"/>
+    <path fill="#9cf" d="M65 104.2l2.3 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M76.8 104.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M80.8 105l1.6.8-1.6-.8m83.3 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M167.3 104.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M179.2 104.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M181.6 104.2l2.3 2.4-2.3-2.4z"/>
+    <path fill="#6cc" d="M55.4 106.6l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M57.8 106.6l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M67.3 106.6l2.4 2.4-2.4-2.4zm109.5 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M186.3 106.6l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M188.7 106.6l2.4 2.4-2.4-2.4M48.3 109l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M50.6 109l2.4 2.4-2.3-2.4z"/>
+    <path fill="#fcc" d="M60.2 109l2.3 2.4-2.3-2.4z"/>
+    <path fill="#c33" d="M64.1 109.8l1.6.8-1.6-.8m116.7 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M184 109l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M193.5 109l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M195.9 109l2.3 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M41.1 111.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M43.5 111.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M53 111.4l2.4 2.4-2.4-2.4zm138.1 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M200.6 111.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M203 111.4l2.4 2.4-2.4-2.4m-166.6 2.4l2.4 2.3-2.4-2.3z"/>
+    <path fill="#c66" d="M48.3 113.8l2.4 2.3-2.4-2.3zm147.6 0l2.3 2.3-2.3-2.3z"/>
+    <path fill="#9cc" d="M207.8 113.8l2.3 2.3-2.3-2.3M41 116l2.4 2.4L41 116z"/>
+    <path fill="#ccf" d="M43.5 116.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M53 116.1l2.4 2.4-2.4-2.4m138.1 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M200.6 116.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M203 116.1l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M48.3 118.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M50.6 118.5L53 121l-2.3-2.4z"/>
+    <path fill="#fcc" d="M60.2 118.5l2.3 2.4-2.3-2.4z"/>
+    <path fill="#c33" d="M64.1 119.3l1.6.8-1.6-.8m116.7 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M184 118.5l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M193.5 118.5l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M195.9 118.5l2.3 2.4-2.3-2.4M55.4 121l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M57.8 120.9l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M67.3 120.9l2.4 2.4-2.4-2.4zm109.5 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M186.3 120.9l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M188.7 120.9l2.4 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M62.5 123.3l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cf" d="M65 123.3l2.3 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M76.8 123.3l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M80.8 124l1.6.9-1.6-.8m83.3 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M167.3 123.3l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M179.2 123.3l2.4 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M181.6 123.3l2.3 2.4-2.3-2.4m-111.9 2.4l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cc" d="M72 125.7l2.5 2.3-2.4-2.3z"/>
+    <path fill="#cff" d="M74.5 125.7l2.3 2.3-2.3-2.3z"/>
+    <path fill="#fcc" d="M84 125.7l2.4 2.3-2.4-2.3z"/>
+    <path fill="#c33" d="M88 126.5l1.5.7-1.5-.8m69 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M160.2 125.7l2.3 2.3-2.3-2.3z"/>
+    <path fill="#cff" d="M169.7 125.7l2.3 2.3-2.3-2.3z"/>
+    <path fill="#9cc" d="M172 125.7l2.4 2.3-2.3-2.3z"/>
+    <path fill="#69c" d="M174.4 125.7l2.4 2.3-2.4-2.3M76.8 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M79.2 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#cff" d="M81.6 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M91.1 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M95 128.8l1.7.8-1.6-.8m54.7 0l1.6.8-1.6-.8z"/>
+    <path fill="#fcc" d="M153 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#cff" d="M162.5 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M165 128l2.3 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M167.3 128l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M86.4 130.4l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M88.7 130.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M98.3 130.4l2.3 2.4-2.3-2.4z"/>
+    <path fill="#c33" d="M100.6 130.4l2.4 2.4-2.4-2.4m42.9 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M145.9 130.4l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M155.4 130.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M157.8 130.4l2.3 2.4-2.3-2.4m-64.3 2.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#ccf" d="M95.9 132.8l2.4 2.4-2.4-2.4m52.3 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M150.6 132.8l2.4 2.4-2.4-2.4m-50 2.4l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M105.4 135.2l2.4 2.4-2.4-2.4m33.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cc" d="M143.5 135.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M105.4 137.6l2.4 2.3-2.4-2.3m33.3 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#ccf" d="M103 140l2.4 2.3-2.4-2.4z"/>
+    <path fill="#c33" d="M108.6 141.5l.8 1.6-.8-1.6m28.5 0l.8 1.6-.8-1.6z"/>
+    <path fill="#ccf" d="M141.1 140l2.4 2.3-2.4-2.4z"/>
+    <path fill="#9cc" d="M103 142.3l2.4 2.4-2.4-2.4m38.1 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M107.8 144.7l2.4 2.4-2.4-2.4m28.6 0l2.3 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M105.4 147l2.4 2.5-2.4-2.4z"/>
+    <path fill="#c33" d="M111 148.7l.7 1.6-.8-1.6m23.9 0l.8 1.6-.8-1.6z"/>
+    <path fill="#ccf" d="M138.7 147l2.4 2.5-2.4-2.4z"/>
+    <path fill="#9cc" d="M105.4 149.5l2.4 2.3-2.4-2.3m33.3 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#fcc" d="M110.2 151.8l2.3 2.4-2.3-2.3m23.8 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#cff" d="M107.8 154.2l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M113.3 155.8l.8 1.6-.8-1.6m19 0l.9 1.6-.8-1.6z"/>
+    <path fill="#cff" d="M136.3 154.2l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M107.8 156.6l2.4 2.4-2.4-2.4m28.6 0l2.3 2.4-2.3-2.4z"/>
+    <path fill="#69c" d="M107.8 159l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M112.5 159l2.4 2.4-2.4-2.4m19 0l2.5 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M136.3 159l2.4 2.4-2.3-2.4z"/>
+    <path fill="#cff" d="M110.2 161.4l2.3 2.3-2.3-2.3zm23.8 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cc" d="M110.2 163.8l2.3 2.3-2.3-2.3m23.8 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#69c" d="M110.2 166.1l2.3 2.4-2.3-2.4m23.8 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M115 168.5l2.3 2.4-2.4-2.4m14.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#9cf" d="M112.5 170.9l2.4 2.4-2.4-2.4z"/>
+    <path fill="#c33" d="M118.1 172.5l.8 1.6-.8-1.6m9.5 0l.8 1.6-.8-1.6z"/>
+    <path fill="#9cf" d="M131.6 170.9l2.4 2.4-2.4-2.4z"/>
+    <path fill="#69c" d="M112.5 173.3l2.4 2.3-2.4-2.3m19 0l2.5 2.3-2.4-2.3z"/>
+    <path fill="#fcc" d="M117.3 175.7l2.4 2.3-2.4-2.3m9.5 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#9cf" d="M115 178l2.3 2.4-2.4-2.4zm14.2 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#6cc" d="M115 180.4l2.3 2.4-2.4-2.4m14.3 0l2.4 2.4-2.4-2.4z"/>
+    <path fill="#fcc" d="M119.7 182.8l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#ccf" d="M117.3 185.2l2.4 2.3-2.4-2.3m9.5 0l2.4 2.3-2.4-2.3z"/>
+    <path fill="#6cc" d="M117.3 187.6l2.4 2.3-2.4-2.3z"/>
+    <path fill="#c66" d="M122 187.6l2.4 2.3-2.3-2.3z"/>
+    <path fill="#6cc" d="M126.8 187.6l2.4 2.3-2.4-2.3z"/>
+    <path fill="#ccf" d="M119.7 192.3l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4z"/>
+    <path fill="#9cc" d="M119.7 194.7l2.4 2.4-2.4-2.4m4.7 0l2.4 2.4-2.3-2.4m-2.4 4.8l2.4 2.3-2.4-2.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ax.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ax.svg
new file mode 100644
index 0000000..cdeb07e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ax.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ax" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M166 0h850v850H166z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-100) scale(.6024)">
+    <path fill="#0053a5" d="M0 0h1300v850H0z"/>
+    <g fill="#ffce00">
+      <path d="M400 0h250v850H400z"/>
+      <path d="M0 300h1300v250H0z"/>
+    </g>
+    <g fill="#d21034">
+      <path d="M475 0h100v850H475z"/>
+      <path d="M0 375h1300v100H0z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/az.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/az.svg
new file mode 100644
index 0000000..0119e1a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/az.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-az" viewBox="0 0 512 512">
+  <path fill="#3f9c35" d="M0 0h512v512H0z"/>
+  <path fill="#ed2939" d="M0 0h512v341.3H0z"/>
+  <path fill="#00b9e4" d="M0 0h512v170.7H0z"/>
+  <circle cx="238.8" cy="256" r="76.8" fill="#fff"/>
+  <circle cx="255.9" cy="256" r="64" fill="#ed2939"/>
+  <path fill="#fff" d="M324.2 213.3l8.1 23 22-10.5-10.4 22 23 8.2-23 8.2 10.4 22-22-10.5-8.1 23-8.2-23-22 10.5 10.5-22-23-8.2 23-8.2-10.5-22 22 10.5 8.2-23z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ba.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ba.svg
new file mode 100644
index 0000000..5b92b0a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ba.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ba" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#009" d="M0 0h512v512H0z"/>
+    <path fill="#fc0" d="M77 0l437 437V0H77z"/>
+    <path fill="#FFF" d="M461.4 470.4l-26.1-19.1-26.9 19 10.2-31.2-26.4-19.2h32.7l10.2-31 10 31.1 32.8.1-26.2 19.4 9.7 30.9zm76.7 10.4h-32.7l-10-31.2-10.2 31.1h-32.8l26.4 19.2-10.1 31.2 26.8-19 26.2 19-9.8-30.9 26.2-19.4zM391.8 379.6l26.2-19.4h-32.7L375.2 329 365 360h-32.7l26.4 19.3-10.1 31.1 26.8-19 26.1 19.1-9.7-31zm-60.3-60.4l26.2-19.4-32.8-.1-10-31.2-10.2 31.2-32.7-.1 26.4 19.2-10.2 31.2 26.9-19 26.1 19.1-9.7-31zm-59.7-59.7l26.2-19.4h-32.7l-10.1-31.2L245 240h-32.7l26.4 19.2-10.1 31.2 26.8-19 26.1 19-9.7-30.9zm-60.4-60.3l26.2-19.3-32.8-.1-10-31.2-10.2 31.2-32.7-.1 26.4 19.2-10.2 31.2 26.9-19 26.1 19-9.7-30.8zm-59.7-59.9L178 120l-32.7-.1-10-31.2-10.3 31.1H92.2l26.4 19.2-10.1 31.2 26.8-19 26.1 19-9.7-30.9zm-60-60L118 60l-32.7-.1-10-31.2L65 59.8H32.2L58.6 79l-10.1 31.2 26.8-19 26.2 19-9.8-30.9zm-60-60L58 0 25.2-.1l-10-31.2L4.8-.2h-32.7L-1.4 19l-10.1 31.2 26.8-19 26.1 19-9.7-30.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bb.svg
new file mode 100644
index 0000000..9d62784
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bb.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bb" viewBox="0 0 512 512">
+  <path fill="#00267f" d="M0-.2h512V512H0z"/>
+  <path fill="#ffc726" d="M170.7-.2h170.6V512H170.7z"/>
+  <path id="a" d="M256 173.3c-5.5 15.1-11.2 30.9-23.3 43a51.7 51.7 0 0114.6-2.3v63.6l-18 2.7c-.7 0-.9-1-.9-2.4a243.6 243.6 0 00-11.7-53.6c-.4-2.3-7.2-11.3-2-9.7.7 0 7.7 3 6.6 1.6a68 68 0 00-37.1-19.2c-1.2-.3-2 .3-.9 1.7 18 27.7 33.1 60.4 33 99.2 7 0 24-4.1 31-4.1v44.9h8.8l2-125.4z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512 0)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bd.svg
new file mode 100644
index 0000000..4cb38cf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bd.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bd" viewBox="0 0 512 512">
+  <path fill="#006a4e" d="M0 0h512v512H0z"/>
+  <circle cx="230" cy="256" r="170.7" fill="#f42a41"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/be.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/be.svg
new file mode 100644
index 0000000..01496c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/be.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-be" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path d="M0 0h170.7v512H0z"/>
+    <path fill="#ffd90c" d="M170.7 0h170.6v512H170.7z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bf.svg
new file mode 100644
index 0000000..a3c7c44
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bf" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#de0000" d="M512 511.6H.5V0H512z"/>
+    <path fill="#35a100" d="M511.8 512H0V256.2h511.7z"/>
+  </g>
+  <path fill="#fff300" fill-rule="evenodd" d="M389 223.8l-82.9 56.5 31.7 91.6-82.7-56.7-82.8 56.7 31.7-91.6-82.8-56.6 102.3.2 31.6-91.7 31.5 91.6"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bg.svg
new file mode 100644
index 0000000..5abe67f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bg.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bg" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#d62612" d="M0 341.3h512V512H0z"/>
+    <path fill="#fff" d="M0 0h512v170.7H0z"/>
+    <path fill="#00966e" d="M0 170.7h512v170.6H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bh.svg
new file mode 100644
index 0000000..22fba62
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bh.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bh" viewBox="0 0 512 512">
+  <defs id="defs448">
+    <clipPath id="a">
+      <path id="path445" fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <path id="path1077" fill="#fff" stroke-width="4.4" d="M0 0h512v512H0" opacity="1" stop-opacity="1"/>
+  <path id="path1079" fill="#ce1126" stroke-width="4.5" d="M512 0H102.4l83.4 51.2-83.4 51.2 83.4 51.2-83.4 51.2 83.4 51.2-83.4 51.2 83.4 51.2-83.4 51.2 83.4 51.2-83.4 51.2H512" opacity="1" stop-opacity="1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bi.svg
new file mode 100644
index 0000000..cc11dcf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bi.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bi" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="gray" d="M60.8 337h175v175h-175z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-178 -986) scale(2.9257)">
+    <path fill="#00cf00" d="M0 337l146.6 87.5L0 512zm293.1 0l-146.5 87.5L293 512z"/>
+    <path fill="red" d="M0 337l146.6 87.5L293 337zm0 175l146.6-87.5L293 512z"/>
+    <path fill="#fff" d="M293.1 337h-27.3L0 495.7V512h27.3l265.8-158.7z"/>
+    <path fill="#fff" d="M197.2 424.5a50.6 50.6 0 11-101.2 0 50.6 50.6 0 01101.2 0z"/>
+    <path fill="#fff" d="M0 337v16.3L265.8 512h27.3v-16.3L27.3 337z"/>
+    <path fill="red" stroke="#00de00" stroke-width="1pt" d="M156.5 405.4l-6.6.1-3.4 5.6-3.4-5.6-6.5-.1 3.2-5.8-3.2-5.7 6.6-.2 3.4-5.6 3.4 5.7h6.5l-3.1 5.8zm-22 38.2h-6.6l-3.4 5.7-3.4-5.6-6.6-.2 3.2-5.7-3.1-5.8 6.5-.1 3.4-5.6 3.4 5.6 6.6.2-3.2 5.7zm44.6 0h-6.6l-3.4 5.7-3.4-5.6-6.5-.2 3.1-5.7-3.1-5.8 6.6-.1 3.4-5.6 3.4 5.6 6.5.2-3.2 5.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bj.svg
new file mode 100644
index 0000000..07c4c11
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bj.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bj" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="gray" d="M67.6-154h666v666h-666z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-52 118.4) scale(.7688)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#319400" d="M0-154h333v666H0z"/>
+      <path fill="#ffd600" d="M333-154h666v333H333z"/>
+      <path fill="#de2110" d="M333 179h666v333H333z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bl.svg
new file mode 100644
index 0000000..0fa74e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bl.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bl" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bm.svg
new file mode 100644
index 0000000..a7057d2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bm.svg
@@ -0,0 +1,98 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bm" viewBox="0 0 512 512">
+  <path fill="#cf142b" d="M0 0h512v512H0z"/>
+  <path fill="#00247d" d="M0 0h256v128H0z"/>
+  <path fill="#fff" d="M0 0v14.3L227.4 128H256v-14.3L28.6 0H0zm256 0v14.3L28.6 128H0v-14.3L227.4 0H256z"/>
+  <path fill="#fff" d="M106.7 0v128h42.6V0h-42.6zM0 42.7v42.6h256V42.7H0z"/>
+  <path fill="#cf142b" d="M0 51.2v25.6h256V51.2H0zM115.2 0v128h25.6V0h-25.6zM0 128l85.3-42.7h19.1L19.1 128H0zM0 0l85.3 42.7h-19L0 9.5V0zm151.6 42.7L236.9 0H256l-85.3 42.7h-19.1zM256 128l-85.3-42.7h19l66.3 33.2v9.5z"/>
+  <path fill="#fff" d="M443 182.6V291c0 29-57.8 38.4-57.8 38.4s-58-9.4-58-38.4V182.6h115.9z"/>
+  <path fill="#2f8f22" d="M443 291c0 29-57.8 38.4-57.8 38.4s-58-9.4-58-38.4c0 0 0-2.3 1.3-3.6 0 0-.7 4.8 3 8.4 0 0-2.9-5.1 0-10.2 0 0-1 6.5 3 10.3 0 0-2.3-5.3.3-11.3 0 0-1.3 9.7 3.1 11.6 0 0 1.2-5.5-.5-9 0 0 3 1.1 2.8 9.2 0 0 1-1.2 1.3-7 0 0 0 6.7 2.4 8.2 0 0 .7-.7-.3-3.7s.4-4 .7-4c0 0-.5 3.3 2.3 5.8 0 0-1.3-5.2.4-6 0 0-.3 4.5 3.2 5.5 0 0 .2-1.3-.5-2.7 0 0-.7-1.7-.2-3 0 0 1.1 4 2.7 4.7 0 0-1-2.4-.1-4.7 0 0 .2 3.3 3.2 4.7 0 0-2-2.6-1.2-5.5l19.3 1 10 .5 30-2.2 5-4.4s2.1 2.8-1.1 7.3c0 0 3.2-.6 4.2-5.6 0 0 1.3 2.8-.5 5.9 0 0 3.6-3.6 4-7.6 0 0 1.5 3.9-1.9 8 0 0 3-1 4.3-5.4 0 0 1 2.7-1.9 6.5 0 0 5.4-2.9 5.3-8.8 0 0 2.2 3.2-.4 7.7 0 0 2.8-2.4 3-6.1 0 0 1.6 1.6 0 6.2 0 0 3.3-3.1 3.8-6.6 0 0 .8 3.2-2.1 7.2 0 0 2-.5 3.8-4.4 0 0 .5 1.6-1.2 4.4 0 0 1.9-.3 3.1-3.9 0 0 .2 2.2-.3 4 0 0 1.4-.9 1.7-5 0 0 .8 1.4.9 3v.6z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M413.3 228.3s-2 .4-4.6-.4c-2.6-.8-3.7-.5-4.5 0 0 0 1-2-1.5-3.7 0 0 .9 2-.3 3 0 0-.5.5-1.1-.2l-1.8-1.6s2.1-.8 1.7-3c-.4-2.2-1.5-2.5-2.2-2.7 0 0 .2 1 0 1.6 0 0-2.4-1.3.9-3.2s2.6-3 2-3.9c-.6-.9-1.8-2-2.4-2.3 0 0 .6 1 .5 1.8 0 .9-1.5 1.4-1.3 0 .3-1.6 0-1.3 0-2.9 0 0 2.9 1 4-1.8 0 0 1-2.9-2.5-4.3 0 0 .8 1.1.4 2 0 0-.8 1.5-1.7.3-.9-1.2-1.4-1.4-1.4-2.8 0 0 3.3.5 2.4-3 0 0-.5 2.3-4.7-.9 0 0 2.7-2.8 1.6-5.1 0 0-.3-1-3.3-.5 0 0 2.6-1.6 1.5-3 0 0-.5-1-3 .3 0 0 1-1.6-1.4-3.4 0 0-1.6.9-2.4 1.6 0 0-1.7-2-2.7-2.8 0 0-1.9.7-2.4 2.8 0 0-.8-1-2.8-1.5 0 0-1 1.8.2 3.3 0 0-.9 0-2.6-.8 0 0-2-.9-1.6.8.3 1.6.4 2 .8 2.8 0 0-4.3-1-4.1 1.3a6 6 0 002 4.2s-2.4 3.2-4.5.8c0 0-.7.8.9 2.8 0 0 1.5 1.7.2 2.8 0 0-1.7 1.4-2.5-1.3 0 0-2.8 2.7.5 4.8 0 0 2 1.3 4.2-.6 0 0-.6 5.3-2.7 4.3 0 0-1.2-1 1-2 0 0-3.2-.4-3.7 2.7 0 0-.4 2.4 2.4 3.3 0 0 2.1.8-.1 2.4 0 0-1.6 1.2-.5 3 0 0 1.2 2-2 2.1 0 0-1.6 0-2.2-.2 0 0-.7 1.3-.2 2.7 0 0-1.6-1.2-5.1.1-3.5 1.3-3.3.4-3.5.8l-1 1.7 1.9 2.2-.4 2.5 1 .5 7.2-3.3 7.4-3.8 5.9.4 3.7.9 5 .3 3.5-1.9h5.1l5.7 2.8 6.4 3.9 3.3.6 2.6-.2v-5.2l-1.2-1.9z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M354.8 234.4s2.8 1.5 4-.3c0 0 1.5-2.9-1.8-4 0 0 1.8-2.1-.2-4.1 0 0-1-1.1-2.8-.3 0 0-.7-1.6-2.5-1.5 0 0-1.5 0-2 1.7 0 0-2.1-1-3.3.3 0 0-2 2.2.7 4l2 .1 1.9-.9 2.1.6s-.5 2.2 1.9 4.4z"/>
+  <path fill="#64b4d1" stroke="#000" stroke-width=".3" d="M417.5 229.3a4.5 4.5 0 014.5 2.5c1.8 4.2-2 6.4-2 6.4a9 9 0 01.4 2.2c5.3.6 4.3 6.6 4.3 6.6l-1.7-1.5c-3-1.2-6.2 1.4-8.5 5.8s-1.2 6.4-.8 11.6c.4 5.2 8.8 8.3 8.8 8.3l-6.6 16.8c-2.6 6.6-8 3.9-9.5 2.5-1.6-1.4-2-.6-2.8 0-.7.6 3.6 4-4.3 7.2s-9.2 5.6-10.6 6.4c-1.3.8-6.7.3-7.3-.4-.5-.7-.2-.7-2.2-2-2-1.2-5.5-2.3-9.3-4.1-3.7-1.8-3.6-4.2-3.6-4.7 0-.4 1.3-4.4-3.1-1.3-4.4 3.2-8.2-1.4-8.2-1.4-.8-1.2-4.5-11-4.5-11-1-3.7-3-8-3-8 .2 0-.1.5 3.1-1.4 3.3-1.8 4.7-5 5.9-8 1.1-3 0-8.3-.4-9.4-.4-1-2.9-6-5.9-7-3-1-5 1.6-5 1.6s-.9-6 4.4-6.6c0 0 0-1.3.3-2.2 0 0-3.7-2.2-2-6.4 0 0 1.2-2.8 4.6-2.5l-.8 1.5s-.9 8.5 11.6 2.8 12-6.7 19.1-3.1l5.2-.1s7.4-3.5 9.8-2c2.4 1.5 11 6.3 11 6.3s8.4 3.1 10-2.6l-1-2.8z"/>
+  <path fill="#fff" stroke="#00247d" stroke-miterlimit="10" stroke-width=".4" d="M380 266.1l-.8-4.3s-1-2.6.6-4.5l2-2.2s1.2-1.7 2.7-1.9c0 0 1.5 0 1.6-.3.2-.3 1.8-3 5.7 0 0 0 1.3-2 3.2-2.4 0 0 2-.6 3 1 0 0 2.4-1.8 4.4 1 0 0 2.7-1.5 4.7 1.6 0 0 2.8-1.4 4.4 1.5 1.7 2.8 1.4 4 1.4 4l1.2 4.5 4.4 5.4-10.2 3.9h-4.6l-9.2 2.4-16.3 1.3-4.6-5.4 6.5-5.6z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M366.3 293.2s-2.5.2-3.7.8c-1.3.6-2.2 1.3-3.7 2.2 0 0-.6 1-3.4.4 0 0-5-1.2-5 2.6 0 0-5.8.5-3.4 5.6 0 0 1.7 4 5 1.2 0 0-2.1 3 2 4.3 0 0 3 .7 3.8-2.3 0 0 .5-1.2-.6-2.7 0 0 1.4-.3 2.4-1.9 0 0-3 3.9.3 5.3 0 0 4.2 1 4.4-3.3 0 0-.3-2 1.3-2.8 0 0 3.4-.8 5-4.5 0 0-4.9-2.6-4.4-4.9zm-9.9-38.4s-3.8-1.8-5.5 0c0 0-2.5-1.6-5.1 0 0 0-2.5 1.6-4.3 3.4 0 0-1.2 1-.7 4.3 0 0 .6 2.3.2 3.4 0 0-.8-.1-2.5 1.8 0 0-2 2.5-3.9.3 0 0 .6 3 4 2.5 0 0-1.7 1.4-.2 4.8 0 0 1.1 2.4-.6 5.4 0 0 3-1.2 2.9-4.8 0 0-.3-2.4.6-4.1 0 0-.9 1.6 1.2 4.9 0 0 1.6 2.3.3 4.8 0 0 3-1 2.7-4.7-.3-3.6-2.1-2.1-1-5.5 0 0 .4 1.7 1.3 2.6.9.9 2 2.3 1.5 4.7 0 0 1.8-2.2 1.4-4.5-.4-2.3-.9-3-.9-3l5.7-3.2 2.8-5 .1-8.1z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M347.8 269.1s-2.3-.2-2.7-2m-4-1.2s.7 0 1.5.8c0 0 .6.8 1.4.7"/>
+  <path d="M351.3 262.2s-1.2 0-1.9-.5c0 0-.7-.5-1.1.3 0 0-.7 1 .5 1.5 0 0 1.5.8-.8 2.3 0 0 2.7-1 1.6-2.4 0 0-1.2-.9-.7-1.2 0 0 0-.2.6 0s1.4.3 1.8 0z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".3" d="M389.3 268.4l-9.3-32.2h-.3l8.2 32.7z"/>
+  <path d="M356.9 304.5s-2.2-1.2-4 .2c0 0 .1-.8 1.5-1.1 0 0 .8-2.1 2.9-2l-2 2s1.2 0 1.6 1z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M349.1 309.6s-3.5-2.2-1.6-5.8c0 0 .5-1.1 1.6-.9 0 0 2.2.7.5 3.7 0 0-.9 2-.5 3zm7 3.5s-4.9-2.3-3.4-6.1c0 0 .5-1.3 1.6-1.2 0 0 2 0 1.5 2.6 0 0-.5 2.5.4 4.7z"/>
+  <path d="M355.1 298.7s-1.5 1.1-2 1.9c0 0-.7-.8-1.5-1.3 0 0 1 0 1.4.3 0 0 .8-.7 2.1-.9z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M359.6 312.1s3.8-1 3.1-5c0 0-.3-1.7-2-1.5 0 0-2 .5-.7 3 0 0 .8 2-.4 3.5z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M377.2 227l3.8 1.2s3.7 1.7 8.3 0l3.5-1.3-2.4 3.7v1.8l1.4 2.2s-.9.4-3.6-1.2c0 0-3-2.3-6.5 0 0 0-1.9 1.3-3.5 1.2l2.3-2.5-1-2.3-2.3-2.9z"/>
+  <path fill="#fff" d="M361 307.3s.2-.2 0-.2c0 0-.1-.1-.2.1 0 0-.5.7-.1 1.6 0 0 .3.6.2 1.2v.2s.2 0 .2-.2c0 0 .2-.6-.1-1.2 0 0-.4-1 0-1.5z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M415 234.4s-2.7 1.5-4-.3c0 0-1.4-2.9 2-4 0 0-2-2.1 0-4.1 0 0 1-1.1 2.9-.3 0 0 .7-1.6 2.5-1.5 0 0 1.5 0 2 1.7 0 0 2.1-1 3.3.3 0 0 2 2.2-.8 4l-2 .1-1.8-.9-2.2.6s.6 2.2-1.8 4.4z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M392.8 232.2s0 .5-.6.6c0 0-.6.2-1-.5v-.3c0-.3-.2-1.3 1-2.2 0 0 1.7-1.4 5 .3l4.6 2.4 5.4 2.8s2 1 5.3 1.2c0 0 4.4.3 6.3-2.8 0 0 1.4-2.3 0-3.8 0 0-.6-.7-1.6-.6a2 2 0 00-1.2.7s-.7 1 0 1.8c0 0 1.1.6 1.5-.7 0 0 0-.1 0 0 0 0 .3 1.1-.3 2 0 0-2.6 4-10-.2l-9.5-5.4s-4.9-2.5-7.8 1.4c0 0-2.3 3.2.7 5.3 0 0 2.2 1.4 3.6-.8 0 0 1.2-2-.6-3 0 0-1.6-.7-2.3.9-.6 1.6 1.3 2 1.4.9 0 0 0-.3.1 0z"/>
+  <path fill="#e4cb5e" stroke="#000" stroke-miterlimit="2.6" stroke-width=".3" d="M354.6 248.8v-6c0-.6 0-1 .8-1.5s1.5-1.5 2.6 1c0 0 2.1-2.2 2.8-2.5 0 0 1.3-1 2.1.5 0 0 1.2-1.8 2-2.2 0 0 2.2-1.4 2.3 2.8l1.7-1.6s1.3-1 2.7.4c0 0 2.5 2.4 2.8 3 0 0 .6.8.6 2 0 0 0 1.3.7 2 0 0 .7.7 1.5.8 0 0 1.7 0 2.3 1.7 0 0 .3-.3 1.2 7.6V271l-9.7 11.5-15.5-4.4-6.2-2.6-1.3-4.5 6-3.9 3.2-8.8-1-6.1-1.6-3.6z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".3" d="M397.4 256.4l.7-1.1 1.8-1.4s2.6 7 2.8 8.6v2.2s4 1 4.7 7.2l-3.3 6-5.2-2.8-1.5-1.1v-17.6z"/>
+  <path fill="#fff" d="M348.1 304.6s.2-.2 0-.3l-.2.1s-1 1.2-.2 3c0 0 0 .3.2.2 0 0 .2 0 0-.3 0 0-.7-1.5.2-2.7z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M363.8 303.4s.2-.5-.2-1c0 0-.3-.5-.2-1"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M367.2 240.9s0 1.5.5 2.6c.4 1.1 1.9 3 2 4"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M403.7 293.2s2.4.2 3.7.8c1.2.6 2.2 1.3 3.6 2.2 0 0 .7 1 3.5.4 0 0 4.9-1.2 4.9 2.6 0 0 5.8.5 3.4 5.6 0 0-1.6 4-5 1.2 0 0 2.2 3-2 4.3 0 0-3 .7-3.8-2.3 0 0-.5-1.2.7-2.7 0 0-1.4-.3-2.4-1.9 0 0 3 3.9-.3 5.3 0 0-4.2 1-4.5-3.3 0 0 .4-2-1.3-2.8 0 0-3.3-.8-4.8-4.5 0 0 4.8-2.6 4.3-4.9z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M365.3 247.6l4 32.1m-3-32.2l4.4 30m-3.6-30.1l5.1 29.7"/>
+  <path fill="#784421" stroke="#000" stroke-width=".3" d="M376.6 274l-9.3-32.2-.3.1 8.2 32.6z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M370 246.2l9.4 23.8m-10.1-23.4l9 24.8"/>
+  <path fill="#fff" d="M354.4 310.8s-1.1-1-1-2.9c0 0 .1-.4-.1-.5 0 0-.2 0-.3.4 0 0-.2 2 1 3.1h.3s.2 0 0 0z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M370.4 245.8l9.7 21.8m-12.4-20.4l6 29.2"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M416.4 268.9c-4.2-2.4-5.2-7.8-5.2-7.8a16.4 16.4 0 011-9.6c2.8-5.8 7.6-6.8 7.6-6.8s-4.7 3.2-6 7.5c0 0-1 3.6-.4 7.2s.4 2.7 1.3 5.5l1.7 4z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".2" d="M398.1 255.3l-17.9 5.6-1 8c-4.2 6.1-12.8 7.2-12.8 7.2l6.7 7.1L386 286l6.7-5.2 6.2-5.6c-.7-3-.3-7.5-.3-7.5l.3-2.6s-1-7.2-.8-9.7z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M379.5 266.9s11.8-3.7 18.8-6.7m-24.5 13.4s14.7-2.7 25-8.6l3.9-2.5"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M402.7 264.7l-4.1 2.9s-16.4 7.5-29 7.7m29-2.3s-12.6 6.5-19.9 6.6"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M413.6 254.8s3.8-1.8 5.6 0c0 0 2.5-1.6 5 0 0 0 2.6 1.6 4.3 3.4 0 0 1.2 1 .8 4.3 0 0-.7 2.3-.3 3.4 0 0 .8-.1 2.5 1.8 0 0 2.1 2.5 4 .3 0 0-.6 3-4 2.5 0 0 1.6 1.4.1 4.8 0 0-1 2.4.7 5.4 0 0-3-1.2-3-4.8 0 0 .3-2.4-.6-4.1 0 0 1 1.6-1.1 4.9 0 0-1.7 2.3-.4 4.8 0 0-3-1-2.6-4.7.2-3.6 2-2.1.9-5.5 0 0-.3 1.7-1.2 2.6a4.9 4.9 0 00-1.6 4.7s-1.8-2.2-1.3-4.5a9 9 0 01.8-3l-5.6-3.2-2.8-5-.2-8.1z"/>
+  <path fill="#fff" stroke="#00247d" stroke-miterlimit="10" stroke-width=".4" d="M349.7 275.1s.5-2.5 2.9-1.5c0 0 .8-4.1 5.2-4.2 4.3-.2 4.6 4.2 4.6 4.5 0 0 1.2-1.9 3.4-1.7 0 0 3.7-.2 2.3 5.7l.7.8s2.8-6.6 8.6-5c0 0 5.6 1.8 2 7.3 0 0 2.7 3.6 5 3.3 2.5-.4 4.6-1.1 7-5.3 2.3-4.1 7.7-4.7 9-4.5 1.5.2 2.6 1.2 2.8 2.1 0 0 2.9-9.6 13.3-8l4.1 2 1.6.7-2.3 6.7-5.8 13-4.3 1.3-4.6-2.6-1.6.8v3.9l-6 4.3-4.2 1.7-4.6 3.2-1.1 2.8s-2.5-1.1-5.4 0l-1-2.4-2.6-2.5-10.4-5-2-6-1.8-.8-2.1 2.4-3.2.4-4.6-3.2-5-14.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M395 227.9s-4-.2-3.8 4"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M421.1 271.6c-6.9-2-8.8-9.5-8.8-9.5-1.4-5.6.9-10.5.9-10.5 3.2-7.4 8.5-7.4 8.5-7.4 2.7 0 3 2.3 3 2.3.3 1.6-.9 2.2-.9 2.2-1.8 1-3-.4-3-.4-.7-1-.2-1.9-.2-1.9.5-.6 1.4-.3 1.4-.3.7.2.6 1 .6 1v.1c.1 0 0 0 0 0s.2-1.1-.8-1.2c0 0-2.1-.5-4.5 2.6 0 0-3.3 4-3.2 9.4 0 0-.5 10 10 12.5 0 0-1.2 1.6-3.2 7.5 0 0-2.2 7.5-4.4 11.5 0 0-2.8 5.8-9.2 3.4 0 0-3.8-1.6-3.8-4.4 0 0-.2-2.5 2-2.7 0 0 2.3-.1 2.2 1.8 0 0 .1 2-2.3 1.6 0 0-.9-.2-.7-1 0 0 .1-.8 1.1-.5 0 0-.3-.2-.8 0 0 0-.3 0-.4.7 0 0 0 .4.5.7l1.1.2s.6 1.3 2.1 1.7a5 5 0 004.7-.8 7.3 7.3 0 002-2.8c.3-.4 2.1-4.6 3.6-9 0 0 1.2-4 2.2-6l.3-.7z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M401.6 290.5s1.3-.1 1.3 1c0 0 0 1.7-2.1 1.3 0 0-2-.4-1.3-2.7 0 0 .5-1.6 2.4-1.3 0 0 1.8 0 2.7 2.6 0 0 .6 2.1-.5 4-1.2 2-4.2 3.3-5.6 4 0 0-5.9 2.2-7.6 3.5 0 0-2.6 2-1.5 3.8 0 0 .5.7 1.2.7 0 0 .7 0 .9-.7 0 0-.1.5-.5.6 0 0-.6.3-1.2-.2 0 0-.6-.6 0-1.5 0 0 .6-1.2 2.2-.5 0 0 1.4.7.8 2.2 0 0-.5 1.4-2.2 1.4 0 0-1.3 0-2-1-1.4-1.3-1.5-3.9-.3-5.2 0 0 1-1.5 3.2-2.4l6-2.4a11 11 0 004.3-2.7s1-1 1.2-2.8c0 0 .2-1.3-.5-1.6h-.9z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M401.7 290.5s1.5-.2 2.4 1.5a8 8 0 00.6 1.7m.4-6s-1.4.2-.7 2.2c.7 1.9 2 2.5 2.4 2.8"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M377.2 232.2s0 .5.6.6c0 0 .6.2 1-.5v-.3c0-.3.2-1.3-1-2.2 0 0-1.7-1.4-5 .3 0 0-2.8 1.3-4.6 2.4l-5.3 2.8s-2.2 1-5.4 1.2c0 0-4.4.3-6.3-2.8 0 0-1.4-2.3 0-3.8 0 0 .6-.7 1.6-.6.4 0 .8.2 1.2.7 0 0 .7 1 0 1.8 0 0-1.1.6-1.5-.7 0 0 0-.1 0 0 0 0-.3 1.1.3 2 0 0 2.6 4 10-.2l9.5-5.4s4.9-2.5 7.8 1.4c0 0 2.3 3.2-.7 5.3 0 0-2.2 1.4-3.6-.8 0 0-1.2-2 .6-3 0 0 1.6-.7 2.3.9.6 1.6-1.3 2-1.4.9 0 0 0-.3-.1 0zm-23.6 36.7c4.2-2.4 5.2-7.8 5.2-7.8 1-5.3-1-9.6-1-9.6-2.8-5.8-7.5-6.8-7.5-6.8s4.6 3.2 5.9 7.5c0 0 1 3.6.4 7.2s-.4 2.7-1.2 5.5l-1.8 4z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M375 227.9s4-.2 3.8 4"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M348.9 271.6c6.9-2 8.8-9.5 8.8-9.5a17 17 0 00-.9-10.5c-3.2-7.4-8.5-7.4-8.5-7.4-2.7 0-3 2.3-3 2.3-.3 1.6.9 2.2.9 2.2 1.8 1 3-.4 3-.4.8-1 .2-1.9.2-1.9-.5-.6-1.4-.3-1.4-.3-.7.2-.6 1-.6 1v.1c-.1 0 0 0 0 0s-.2-1.1.8-1.2c0 0 2.1-.5 4.5 2.6 0 0 3.3 4 3.2 9.4 0 0 .5 10-10 12.5 0 0 1.2 1.6 3.2 7.5 0 0 2.2 7.5 4.4 11.5 0 0 2.8 5.8 9.2 3.4 0 0 3.8-1.6 3.8-4.4 0 0 .2-2.5-2-2.7 0 0-2.3-.1-2.2 1.8 0 0-.1 2 2.3 1.6 0 0 .9-.2.7-1 0 0-.1-.8-1.1-.5 0 0 .3-.2.8 0 0 0 .3 0 .4.7 0 0 0 .4-.5.7l-1.1.2s-.6 1.3-2.1 1.7a5 5 0 01-4.7-.8c-1.1-.9-1.8-2.4-2-2.8a76 76 0 01-3.5-9s-1.3-4-2.3-6l-.3-.7z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M368.4 290.5s-1.3-.1-1.3 1c0 0 0 1.7 2.1 1.3 0 0 2-.4 1.3-2.7 0 0-.5-1.6-2.4-1.3 0 0-1.8 0-2.6 2.6 0 0-.7 2.1.4 4 1.2 2 4.2 3.3 5.6 4 0 0 5.9 2.2 7.6 3.5 0 0 2.6 2 1.5 3.8 0 0-.5.7-1.2.7 0 0-.7 0-.9-.7 0 0 .1.5.5.6 0 0 .6.3 1.2-.2 0 0 .6-.6 0-1.5 0 0-.6-1.2-2.2-.5 0 0-1.4.7-.8 2.2 0 0 .5 1.4 2.2 1.4 0 0 1.3 0 2-1 1.4-1.3 1.5-3.9.3-5.2 0 0-1-1.5-3.2-2.4l-6-2.4a11 11 0 01-4.3-2.7s-1-1-1.2-2.8c0 0-.3-1.3.5-1.6h.9z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M368.3 290.5s-1.5-.2-2.4 1.5c0 0-.5 1-.6 1.7m-.4-6s1.4.2.7 2.2c-.7 1.9-2 2.5-2.4 2.8m18.3-61s3.5-2.3 7 .1"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".3" d="M361.9 252.8s.5-2-1.7-5.4c0 0-1.5-3-2.2-5m5-2.1l1.6 4.4 1.9 4.5"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M363.6 254.9s1.3 1.4 1.1 3.7m-5.5-5.2s1.5.7 1.4 4.5c0 0-.2 2.8 2 4.2m-3.6 1s4.5-.6 4.8 2.2c0 0 0 2.7 1.6 3 0 0 2.3.2 2.8 2.3m-7.7-4.5s.8 1.2 1.5 1.7m4.2-4.6s1.2 1.7 1.4 2.7m3.6-23.5s1 1.4 2 2m2.2 6.5s2.2 1 1.8 6.7c0 0-.2 3.3.7 5"/>
+  <path fill="#784421" stroke="#000" stroke-width=".3" d="M364.9 247l.1.6s4 .1 6.2-2.6l-.2-.5s-3.6-.2-6.1 2.5z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M379.3 268.5s13.8-4.1 19.2-6.5"/>
+  <path fill="#784421" stroke="#000" stroke-width=".2" d="M377.6 242.5l6.9-2.6.2.5-6.9 2.6z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".3" d="M378.4 242.8l4.5 22.2m-3.7-22.5l5.2 22.1m-4.3-22.5l5.7 22m-3.5-22.8l7.8 16.5m-6.8-17l8.3 16.5m-7.5-16.7l9 16.3m-10.5 8.3l3.5-1.1m-6.1-1s10.3-3 18-6.2m-18.2 7.2s13-3.4 18.3-6m-14.3 16.7l.7 2 1.9-.6-.7-2m3.4-1l.7 2.1 1.8-.6-.6-2m-10.8-11.8l-.1-2.8 17-5.2 1 2.4m-10.8.6l1 2.5m5-4.3l1.1 2.3m.3-2.8l1 2.3m.4-2.7l1 2.4m0-2.7l2-1 .8 2m-1.8-1.5l1 2.1"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".4" d="M355.7 285s-3.4-3.5 0-6.8c0 0-3.7-1.8-3.1-4.6m9 14s-3.4.5-2.4-6.3l-2 4.1a3 3 0 001.4 3.6c.6.3 3.7 1.2 4.7-.9m-5.5-10.8s-1.5 1.3-.4 3.7m1.8-3.4s.2 2.3 1.3 3.6m-.3-4.5s0 2.7 2 4.4m-1-5.3s0 3 2.3 4.9m9-.5s1.1-2.5 3.5-2.4c0 0-1.1.6-1.1 1.8 0 0-.1 1.9 2 2 0 0 1.6.3 2.4-.6"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".4" d="M378.2 291.7s-6-2.8-5.3-6.8c0 0 .2-2.5 2.6-3.6m-1.3 2.5s-.5 1.7.7 3m.7-4.2s-.7 2 .5 3.3m1-4.2s-1 1.6 0 3m-5.5 7.4s3.2 2.8 5.8 2.8m-6.8-1.9s3 2.5 5 2.8m-6.2-2.1s3.8 3.3 6.1 3.5m9.2 3s-3.7 2-.8 4.2m-1.5-6.3l6-3m-4.5 4.1s6-3.7 7.8-4.5m-4.7 4.8s5.1-3.5 8-5m-4.6 4.8s3.6-2.8 7-4.8m1.2-3.5s-1.7-2.5-7.5 0c0 0 2.1-1.9 6.3-3.4m5.8-11s.5 2.1 0 3.4"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".4" d="M393.9 286.7s1.2-1.8 4.2-2.6c0 0 .8 2 3.2 1.6 0 0 3.6-.7 2.5-4.6 0 0-.7-3-4.8-3.3m12-4.8s4.2.7 4.2 4c0 0 .3 5.1-5 6.1m4.4-8s1.1-2.5 3.7-3.5m-3.1-1.5s1 1.8 1.9 2m-2.5-.6s1 1.4 1.4 1.6m-1.8-.3l1 1.1M393 253.2s.8-1.3 2.8-.7M404 263s1.3-5.3 5.7-3.3m-1.8-.5s.5-2.4-.6-3.6m-2.4 3.5s.6 1 0 1.8"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M413.8 313.1s5-2.3 3.4-6.1c0 0-.4-1.3-1.5-1.2 0 0-2 0-1.6 2.6 0 0 .6 2.5-.3 4.7z"/>
+  <path fill="#fff" d="M415.6 310.8s1.1-1 1-2.9v-.5s.3 0 .3.4c0 0 .3 2-1 3.1 0 0 0 .1-.2 0h-.1z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M420.9 309.6s3.5-2.2 1.6-5.8c0 0-.6-1.1-1.6-.9 0 0-2.2.7-.5 3.7 0 0 .9 2 .5 3z"/>
+  <path fill="#fff" d="M421.8 304.6s-.2-.2-.1-.3l.3.1s1 1.2.2 3c0 0 0 .3-.2.2 0 0-.2 0 0-.3 0 0 .7-1.5-.2-2.7z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M410.4 312.1s-3.9-1-3.2-5c0 0 .4-1.7 2-1.5 0 0 2 .5.8 3 0 0-.8 2 .4 3.5z"/>
+  <path fill="#fff" d="M409 307.3s-.2-.2 0-.2c0 0 .1-.1.2.1 0 0 .4.7 0 1.6 0 0-.2.6 0 1.2 0 0 0 .2-.2.2l-.2-.2s-.2-.6.2-1.2c0 0 .4-1 0-1.5z"/>
+  <path d="M413.2 304.5s2.2-1.2 4 .2c0 0-.1-.8-1.5-1.1 0 0-.8-2.1-2.9-2l2 2s-1.2 0-1.6 1zm1.7-5.8s1.5 1.1 2 1.9c0 0 .7-.8 1.5-1.3 0 0-1 0-1.4.3 0 0-.8-.7-2.1-.9z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M406.2 303.4s-.2-.5.2-1c0 0 .3-.5.2-1m15.6-32.3s2.4-.2 2.7-2m4.1-1.2s-.8 0-1.5.8c0 0-.6.8-1.4.7"/>
+  <path d="M418.8 262.2s1.2 0 1.8-.5c0 0 .7-.5 1.2.3 0 0 .6 1-.6 1.5 0 0-1.4.8.9 2.3 0 0-2.8-1-1.7-2.4 0 0 1.2-.9.8-1.2 0 0-.1-.2-.6 0-.5.4-1.4.3-1.8 0z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M420.4 233s.6-.8.3-3c-.2-2.3 1.8-2.5 2.5-1.9 0 0 .8.7 0 2.1a5.7 5.7 0 01-2.8 2.8z"/>
+  <path fill="#fff" d="M421.1 231.3s.8-.8.4-2.5l.1-.2s.2 0 .2.2c0 0 .4 1.7-.4 2.7 0 0-.1.2-.3 0v-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M419.8 232.1s0-.9-1.6-2.4-.3-3 .7-3c0 0 1 0 1.3 1.6.2.9.4 2-.4 3.8z"/>
+  <path fill="#fff" d="M419.6 230.2s0-1.1-1.4-2.3c0 0-.1-.1 0-.2 0 0 0-.1.2 0 0 0 1.5 1.2 1.5 2.5 0 0 0 .2-.2.2l-.1-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M417.7 231.5s-.4-.8-2.3-1.5c-2-.6-1.4-2.3-.6-2.7 0 0 .8-.3 1.7.8.5.6 1.1 1.6 1.2 3.4z"/>
+  <path fill="#fff" d="M416.8 230.1s-.4-1-2.2-1.4c0 0-.1-.1 0-.2 0 0 0-.2.1-.1 0 0 2 .4 2.5 1.6l-.1.2h-.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M418.9 232.2s-1 .3-3-.8c-2-1-3 .8-2.6 1.7 0 0 .4 1 2 .8 1 0 2.2-.3 3.6-1.7z"/>
+  <path fill="#fff" d="M414.1 232.8s1 .6 2.6 0h.2v.3s-1.9.7-3 0c0 0-.2 0 0-.2 0 0 0-.1.2 0z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M415.9 225.7s1 .5.8 1.7"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M420.4 225.8s.4 1.3 0 2"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M349.4 233s-.5-.8-.3-3c.3-2.3-1.7-2.5-2.4-1.9 0 0-.8.7 0 2.1a5.6 5.6 0 002.8 2.8z"/>
+  <path fill="#fff" d="M348.7 231.3s-.7-.8-.4-2.5v-.2s-.2 0-.2.2c0 0-.4 1.7.4 2.7 0 0 .1.2.2 0 0 0 .1 0 0-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M350 232.1s.1-.9 1.7-2.4c1.5-1.5.3-3-.7-3 0 0-1 0-1.3 1.6-.2.9-.4 2 .4 3.8z"/>
+  <path fill="#fff" d="M350.3 230.2s0-1.1 1.4-2.3c0 0 .1-.1 0-.2 0 0 0-.1-.2 0 0 0-1.5 1.2-1.6 2.5 0 0 0 .2.2.2 0 0 .2 0 .2-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M352.2 231.5s.4-.8 2.3-1.5c2-.6 1.4-2.3.6-2.7 0 0-.8-.3-1.7.8a5.2 5.2 0 00-1.2 3.4z"/>
+  <path fill="#fff" d="M353 230.1s.5-1 2.2-1.4l.2-.2s0-.2-.2-.1c0 0-2 .4-2.5 1.6v.2h.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".3" d="M351 232.2s.9.3 3-.8c2-1 2.9.8 2.5 1.7 0 0-.3 1-2 .8a5.6 5.6 0 01-3.5-1.7z"/>
+  <path fill="#fff" d="M355.8 232.8s-1 .6-2.7 0h-.2l.1.3s1.8.7 3 0c0 0 .2 0 0-.2 0 0 0-.1-.2 0z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M354 225.7s-1 .5-.8 1.7"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M349.4 225.8s-.3 1.3 0 2"/>
+  <path d="M394.1 214.2s.7 1.8.4 3.5c-.3 1.5 0 1.9.6 2.2.5.3 1.6-.2 1.7-1.4 0 0 1.3 2.5-1.2 4.2 0 0-1.8 1.2-3.4-.3-.5-.6-.7-2-.5-3.3 0 0 .4-1.9-.2-3.7 0 0 1 1 .7 3.3 0 0-.5 3.9 2.4 3.7 0 0 2 0 2-2.5 0 0-.7 1-1.6.6a1.7 1.7 0 01-1.2-1.8c.1-1 .4-3 .3-4.6zm-3.3 6.4s-.2 3.1-3 3.9c0 0 .4-.6-.2-2.1 0 0-.7-1-.6-2.3 0 0-.9.7.1 2.5a3 3 0 010 2.6c-.3 0 4.6-.7 3.7-4.6zm-3.7-3s-.7-.9-.7-2.6c0-1.8-.4-2.3-.6-2.5 0 0 .3 1.6.2 2.5 0 1 0 1.5.2 2 0 0-1.5.2-2.5-2s-1.9-2-2.3-2c0 0 .5 0 1.6 2 1 2 1.4 2.4 4.1 2.5zm-7.2-4.8s.9 2.2 1 3.3c0 0-2.2-.7-2.7-2.5 0 0-2.2.8-1.4 3.3 0 0-2-.6-2.8-2.2 0 0 1 .8 2 1.1 0 0 0-2 2.5-2.8 0 0 .4 1.9 1.7 2.3 0 0 0-1.2-.3-2.5zm3.4-3.6s.7 1 2.2 1c.7.1 1.4 0 2.2-1 0 0-.1 1.8-2.2 1.8 0 0-2.2.1-2.2-1.8zm-9 12.4l1.3 1.3s.7.8 1.4-.2c0 0 .8-1.5 1.9-1.5 0 0-.8.5-1.6 2 0 0-.2.5-.8.6-.3 0-.7 0-1.2-.5 0 0-.5-.6-1-1.7zm11.2-19.7c-2.2 0-.4 1.7-.4 1.7 0 2.7-2 3.5-3.5 2.7-1.5-.8-.3-2.7-.3-2.7s-1.7 1-.6 2.6c1 1.6 3.8.9 4.8-.5 1 1.4 3.8 2.1 4.8.5 1-1.5-.6-2.6-.6-2.6s1.2 2-.3 2.7c-1.5.8-3.6 0-3.6-2.7 0 0 1.9-1.7-.3-1.7zm1.3-2.9s.8 1.3.6 3.3c0 0 .7-2-.6-3.3zm-6.7 3s-.2-1.4-1.5-1.5c0 0 1.1.9 1.5 1.6zm10.8 0s.1-1.4 1.5-1.5c0 0-1.1.9-1.5 1.6zm-13 2.2s1.1.4 1.8-.4l-1.8.4zm-3.6-8.7s1.3-.1 2.6 1.8c0 0-1.3.6-1.6 1 0 0 0-.6.6-1.1 0 0-.2-1-1.5-1.7zm21.5 0s-1.3-.1-2.6 1.8c0 0 1.3.6 1.6 1 0 0 0-.6-.6-1.1 0 0 .2-1 1.6-1.7zm-9.9 1.4s1.1.3 2.6-.5c0 0 1.7-.9 2.9 0 0 0-1-.4-2.9.5 0 0-1.9 1-2.6 0z"/>
+  <path fill="#fff" d="M387.1 198s1-1.6 4-1.3c0 0-.8 2.4-4 1.4z"/>
+  <ellipse cx="389.2" cy="197.6" fill="#784421" rx=".6" ry=".8"/>
+  <ellipse cx="389.2" cy="197.6" rx=".3" ry=".5"/>
+  <path d="M380.7 194.4s1.9.1 3 .9c0 0 1.2.7 2.6-.4 0 0 1.5-.8 2.5-2 0 0-2.3 1.6-3.2 1.8 0 0-.8-.6-1-1.5 0 0 0-.6 1.3-1.8 0 0-1.7.5-2 2 0 0 .3.8 1 1.4 0 0-.4.2-1.2-.3 0 0-1.7-.6-3 0zm4.8 11.4c-1.6 1.4 0 1.2 0 1.2s1.6.2 0-1.2zm-1-8.9s-1.1.3-2.5-.5c0 0-1.8-.9-3 0 0 0 1-.4 3 .5 0 0 1.8 1 2.5 0z"/>
+  <path fill="#fff" d="M383.3 198s-1-1.6-4-1.3c0 0 .9 2.4 4 1.4z"/>
+  <ellipse cx="381.3" cy="197.6" fill="#784421" rx=".6" ry=".8"/>
+  <ellipse cx="381.3" cy="197.6" rx=".3" ry=".5"/>
+  <path fill="none" stroke="#000" d="M443.3 182.6V291c0 29-58 38.4-58 38.4s-57.8-9.4-57.8-38.4V182.6h115.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bn.svg
new file mode 100644
index 0000000..2e93aea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bn.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bn" viewBox="0 0 512 512">
+  <path fill="#f7e017" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 35.6V263l512 106.7v-121z"/>
+  <path d="M0 156.4v106.7l512 213.3V369.8z"/>
+  <g fill="#cf1126" transform="translate(-256) scale(.71111)">
+    <path d="M695.7 569.7a117.2 117.2 0 01-49.4-17.2c-2.4-1.6-4.6-3-5-3-.4 0-.6 1.9-.6 4.1 0 6.4-2.6 9.6-9 11.3-6.2 1.6-15.6-1.6-23.2-8a68.3 68.3 0 00-24.7-13.5 39.9 39.9 0 00-28 3.6 8.7 8.7 0 01-2.8 1.3c-1.1 0-1-6.9.2-9 1.5-3 5.1-5.8 9.4-7.3 2.2-.8 4-1.8 4-2.3 0-.4-.8-2-1.7-3.6-2.9-5.1-1.7-10 3.4-13.9 5.2-4 14-4.6 21.7-1.7a32 32 0 004 1.4c1 0 .4-1.5-2.4-5.6-3.2-4.7-3.9-7-3.5-12.7a14.7 14.7 0 0113.5-13.5c5.8-.4 9.4 1.6 18 9.7a144 144 0 0086 41.6c8.3 1 24.8.5 34.5-1a156 156 0 0081.8-40.8c6.4-6 9.4-7.6 14.7-7.6 4.5 0 7.7 1.4 11 5 3 3.3 4 6.4 3.6 11.5-.2 3.2-.7 4.7-2.6 7.9-2.8 4.5-2.3 5 3.2 2.8 7.6-3 16.9-1.6 21.9 3.2 4.4 4.2 4.8 8.4 1.4 14-1.3 2.1-2.3 4-2.3 4.4 0 .6 1 .8 5.5 1.6 6 1 9.5 5.4 9.5 12.2 0 2-.3 3.7-.6 3.7s-2.6-.9-5-1.9c-7-2.9-11-3.6-19.2-3.5-6.2 0-8.3.3-12.6 1.7a57.5 57.5 0 00-19.5 11.5c-6.4 5.7-10.4 7.5-16.6 7.4-5.8 0-9.7-1.7-11.8-5-1.1-1.8-1.3-2.8-1-6.8.2-2.6.1-4.7 0-4.7-.3 0-2.5 1.4-5 3.1A80.5 80.5 0 01778 560a181.6 181.6 0 01-82.3 9.7z"/>
+    <path d="M706.3 525.2a136.4 136.4 0 01-97.9-55.7c-24.4-33.2-32-77.1-24.6-117.2 4-18.3 12-36.6 25.5-49.6a114.6 114.6 0 00-8.7 74.3c9 49.8 51 91.9 101.3 99.2 20 5.7 40.5-.4 59.5-6.5 42-14.8 74-54.6 77.8-99.1 3.3-24-.3-49.1-11.2-71 6.2 3.3 14 16.2 18.6 24.8 16 31 16.7 68.1 7.3 101.2-12.8 42.1-45 79-87.5 92.4a165.7 165.7 0 01-60 7.2z"/>
+    <g id="a">
+      <path d="M512 469.9c-2.5-.4-5.3 2.1-4.3 4.7 1.8 2.6 5 4 7.8 5.2a54.2 54.2 0 0023.2 3.6 49.6 49.6 0 0017-3c3-1 6.8-2 8-5.4 1.3-2.1-1-4.3-3.1-3.9-3 .7-6 2-9 2.9a57.7 57.7 0 01-20.3 2 54 54 0 01-14.4-4.2c-1.6-.7-3.1-1.7-4.9-1.9z"/>
+      <path d="M514.8 459.5c-2.5-.4-4.7 2.6-3.7 5 2 2.8 5.3 4.3 8.4 5.6a42.4 42.4 0 0017 2.9h1.5a37.6 37.6 0 0014.4-2.8c2.7-1.1 6.1-2.2 7.3-5.2.9-1.7.2-4.1-2-4.3-1.8 0-3.5 1.2-5.3 1.7a44.3 44.3 0 01-20.6 3.2c-4.4-.5-8.5-2.1-12.5-4-1.5-.7-2.8-1.8-4.5-2z"/>
+      <path d="M518.3 449.6c-2.2-.3-3.7 2.2-3.3 4.1.3 1.8 1.8 3 3.1 4a30 30 0 0018.6 5.3h1.6a28 28 0 0012-2.8c2.5-1 5.4-2.3 6.3-5.2.4-1.3.6-3.2-.9-4-1.6-.8-3.1.5-4.5 1a34 34 0 01-15.5 3.9 27 27 0 01-13.1-4c-1.5-.7-2.7-2-4.3-2.3z"/>
+      <path d="M481.5 302.7c-3.2 3.3-.7 9.3-1 13.5 1.8 13.2 3.9 26.5 8.8 39 6 12 18.8 18.5 26.5 29.2 2.8 5.1 1.8 11.3 2.4 17 .4 15.3.3 30.7 0 46 7 3.6 14.5 7 22.5 5.7 4.7-1.1 13.5-1.8 14.5-6.5l-1-79.5c-2.7-8.1-11-12.3-17.1-17.5a155.5 155.5 0 01-14.2-16.1c-2.6-4.5-12.9-6-9.2 1.6 2.2 6.7 7.7 11.6 9.1 18.6.3 3.9 5 11 1 13.2a24.5 24.5 0 00-10.7-10c-4.4-3.3-11.7-4.7-13.3-10.5a42.9 42.9 0 00-11-22c1.5-7.4 0-16.7-6.4-21.5l-.9-.2z"/>
+      <path d="M491.4 304.2c-3 .5-2.8 4.2-1.5 6.2a27.2 27.2 0 011.1 13.4 44.1 44.1 0 0110.6 21.7c0 3 3.2 4 5.3 5.5 4.9 3.1 10.3 5.4 14.7 9.3.9 1 1.6 2 1 0-.7-2.6-1-5.4-3-7.3-2.8-3-6.2-5.6-10.2-6.4-.3-4.2-2.3-8-4.1-11.6-2-3.5-4.1-7.2-7.5-9.4 0-6.1 0-12.5-2.6-18.2-.8-1.4-2-3.1-3.8-3.2z"/>
+      <path d="M499.7 306.6c-2 .6-1.6 3.2-1 4.7a54 54 0 011 13.2c3.9 3 6.2 7.4 8.4 11.6 1.4 2.8 2.6 5.8 3.1 8.9 3.1 1 5.8 3 8.2 5-1-2.8-3-5-4.5-7.7s-3-5.6-3.7-8.7c-3-3.1-4.6-7.6-4-12 .2-4.7-1.3-9.6-4.5-13.2-.8-.8-1.8-1.7-3-1.8z"/>
+      <path d="M509.2 308c-1.2.2-1.8 1.2-2.4 2.1-.3.9.8 1.8 1 2.8a21.8 21.8 0 011.4 10.4c-.1 2.5.8 5 2 7a3.9 3.9 0 013.5-2.8c.5 0 1.4.2 1-.7-.4-4.8-1.1-9.6-2.8-14a9.6 9.6 0 00-2.8-4.5c-.2-.2-.6-.4-1-.3z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 1440 0)" xlink:href="#a"/>
+    <path d="M715.7 476a35.6 35.6 0 01-29.9-24c.3-2.2 3 1.2 4.3 1.5a19 19 0 008 2.6c3.5 1.5 5.7 5 9.1 6.9 1.6 1.2 7.2 3.6 6.1-.3-1.3-2-2.2-4.6-1-7 1.8-4.1 4.7-7.7 7.7-11.2 2.1-.7 3.6 3.6 5.1 5 2.1 3.3 4.7 7.3 3.4 11.3-1.2 1.5-2 6 1.3 4.6 4-1.8 7.3-4.8 10.6-7.6 3-2 6.7-2.1 9.7-4 1.5-.3 4.4-3.1 5-1.6a44.9 44.9 0 01-7.4 12.3 32.1 32.1 0 01-18.8 10.9c-4.4.8-8.8 1-13.2.6z"/>
+    <path d="M731.5 460.2c.3-2.7-.3-5.4-1.7-8-2.1-4.2-5-8-8-11.9-2.8-1.6-4.3 3.7-6.1 5.2-2.9 4.3-6.5 8.7-6.7 14-1.6 2.5-4.6-2-5.9-3.5a19 19 0 01-4-12 50.8 50.8 0 013.6-20.6c2-5.6 5.1-11 4.8-17 .2-4.7-.7-9.7-4.4-12.8-3.6-2.8 2.3-3.4 4.1-2 3.2.3 4.9 5.5 7.8 4.2 1.1-2.7 1.4-6 3.8-8.1 2.3-3.2 4.7 1.3 5.5 3.5 1.7 1.8 0 6.5 2.6 6.6 3.2-2.3 5.5-6 9.6-6.9 1.7-1 4.5 0 2.3 1.8-3 2.9-5.6 6.4-6.2 10.7-.9 5.3.4 10.7 2.7 15.4 4.5 9.4 8 20 5.7 30.5-1 4.6-4.2 8.6-8 11.3-.5.3-1.3.3-1.5-.4z"/>
+    <path d="M726.7 389.6a21.2 21.2 0 00-5.6-7c-2.4 0-3.9 3-5.5 4.6-1.1 2.1-2.5 5.6-5.3 2.9-4.5-2.6-5.2-8.3-5.2-13-.3-7.6 2.8-14.7 5.5-21.6 1.7-4.3 1.3-9.2.2-13.6-1.3-5-5.4-8.6-8.5-12.6.2-1.5 4.2-.7 5.7-.4 3.4.9 5.4 3.8 7.9 6 1.8-.6 1-4.2 1.9-5.9 0-2.4 3.2-5.5 4.5-2.1 2 2.2 0 6.5 2.5 7.8 2.4-.9 3.6-3.5 5.8-4.7a8 8 0 017.8-.5c.9 2.2-2.6 4-3.6 6a20.4 20.4 0 00-3.8 18c1.4 5 3.8 9.5 4.7 14.5a40.1 40.1 0 01-.5 17.2c-.9 3.4-3.8 5.6-6.8 7-.8-.7-1.2-1.7-1.7-2.6z"/>
+    <path d="M711.6 326.9c-3.4-2.5-4.5-4.8-4.5-9.5 0-2.3.5-3.6 2-5.8 2.4-3.2 2-4.2-1.3-3.3-5.3 1.5-7.8.2-8-4.3 0-2.2.4-3.1 3.3-6.7 2.4-2.8 3.3-4.3 2.8-4.8-.5-.4-3.3 2-9 7.8a124 124 0 01-11.4 10.6c-9.8 6.6-19.2 7.6-23.5 2.5-2.2-2.6-2.1-4 .4-5.6a27.4 27.4 0 004.4-3.7 86 86 0 0116.1-11.6c3.6-1.8 4.4-3 2.1-3-3 0-12.5 6.2-19.8 12.8-2.1 2-5.2 4.2-6.8 5a25.4 25.4 0 01-13.9 1c-2.2-.7-6.3-4.5-6.3-5.9 0-.3 1-1.1 2-1.8a30 30 0 004.6-3.2c5.8-5 16.8-10.3 25.5-12.2 2.8-.5 1.7-2-1.4-1.8a56 56 0 00-25 11.7c-8.3 6.9-20.8 6.2-24.8-1.3-.7-1.3-1.2-2.5-1-2.7a92.8 92.8 0 0020.4-7.8 51.5 51.5 0 0118.1-6.5c2.8-.5 3-1.9.3-2.2-3.6-.4-9 1.4-18.5 6-12.3 6.1-15.8 7.2-22.2 6.8-6-.4-9.3-1.9-14-6.4-3.2-3-7.6-10.5-6.8-11.4a63.5 63.5 0 0015.8 1.3c8.3 0 10.6-.2 15-1.5a84.3 84.3 0 0024-12.1 57.5 57.5 0 0136.8-13.6c12.4 0 20.2 2.8 27.2 9.9 2.4 2.4 4.4 3.9 4.7 3.6.3-.3.6-4.5.7-9.3 0 0 3.7-.4 4.5.7 0 7.7 0 8.4 1.2 8.4.7 0 1.5-.8 2-2 1-2.5 5-6 9.2-8.2 9-4.5 24.7-4.7 37.3-.3a62.4 62.4 0 0116.7 9.5 90.2 90.2 0 0024 12c6.8 2 19 2.5 25.1 1a61.9 61.9 0 015.4-1c2.3 0-1.6 7.6-6.2 12.1-8.4 8.2-19.3 8.1-34.6-.1-9.6-5.2-21-8-21-5.2 0 .6.6 1 1.5 1 3.3 0 9.7 2.2 18.7 6.5a53.7 53.7 0 0018.3 6.5c2.3 0 2.4 1.5.2 4.7-2.3 3.4-6.2 5-11.7 5-5.3 0-8.3-1.1-13-5-8-6.6-27.6-14-26.9-10 .2.7 1.1 1.2 3.2 1.5a56 56 0 0123.1 11l5.9 4.3c1.1.6 1.1.8.2 2.5-1.4 2.8-5.2 4.9-9.2 5.3-5.2.6-9.8-1-14.5-5-10-8.3-19.3-14.3-22.3-14.3-2.5 0-1.4 1.4 3 3.7a79.7 79.7 0 0115.8 11c2 1.9 4.3 3.7 5 4.1 1.9 1 1.8 2.4-.2 5s-5.4 3.8-9.7 3.3c-8.6-.9-15.4-5-26-16a70.7 70.7 0 00-8.2-7.8c-1.4 0-.5 1.9 2.2 5 3.4 3.7 4 5.8 2.7 9-1.1 2.6-3 3.3-6.8 2.2-4-1-4.6 0-2 3.1 3.8 4.9 3.3 10.7-1.5 14.8a12 12 0 01-3.4 2.3c-.4 0-1.4-1-2.3-2.4-3-4.6-5.7-4.6-8.7 0a53.6 53.6 0 01-2 3 113.1 113.1 0 01-3-2.2z"/>
+    <path d="M726.7 233l-5.2 4-4.6-3.4v27.8h9.8z"/>
+    <path d="M694.9 204.3a88.3 88.3 0 01-9 32.3l11.1-10.3 7.7 9.2 8.4-9.4 8.5 8 8.2-8.3 8.5 10 7.4-8.2 12.6 9c-4.6-10-10.7-18.6-10-32.8-12.1 9-41 10.6-53.4.4z"/>
+    <path d="M717 197.6c-4.5 0-9.2.1-13.4 1a20.1 20.1 0 00-7.8 3c.3 8.6 41 12.1 51.9.2a20 20 0 00-8.2-3.3c-4-.8-8.6-.8-12.9-1v7.1H717v-7z"/>
+    <path d="M724.9 154h-6.3v49.4h6.4z"/>
+    <path d="M724.9 155.2l-2.4 23.7 24.3 11.9-12.3-16.5 16.8-5.5zm-2.7-6.1c-3.7 0-6.4 1.4-6.4 3s2.7 3 6.4 3 6.4-1.4 6.4-3-2.7-3-6.4-3z"/>
+  </g>
+  <g fill="#f7e017">
+    <path d="M249.6 401c2.9-1 4.5-2.7 5.6-6a18 18 0 001-3.9c-.3-1-1.6-1-2.9.2-1 .7-1 1.1-.8 2.7.7 4-.7 5-8.3 5.8-.7 0-2.9 0-4.8-.3-3.6-.4-4.8 0-3.5 1a7 7 0 002.2 1c2 .5 9.4.2 11.5-.6zm15.7-.7c.4-.4 1.8-1 3.2-1.5 1.8-.6 2.8-1.2 3.5-2.4 2.2-3.3 1.8-6.1-1.4-10-1.8-2-2.6-2-4 .4-1.2 2-1.2 2 .6 2.5 1 .2 1.8 1 2.3 1.8 1.9 3.3 1.3 5.3-1.5 5.3-2.6 0-3.3.4-4 2a8.9 8.9 0 00-.6 2.1c0 .7 1 .6 1.9-.2zm-5.2-3.8c.5-1.3.7-3.6.6-8.4 0-3.7-.1-6.8-.3-7-.4-.3-2.5 1-2.8 1.9-.1.5.1 1.5.5 2.3.7 1.3.8 2.5.6 7.5-.3 6.3.1 7.3 1.4 3.7z"/>
+    <path d="M248.1 393.6c.3-1.2.6-3.6.7-5.4.2-1.7.5-4 .8-5 .8-2.4 0-3-2-1.6l-1.4 1 .3 3.5c.3 3.2-.2 9.1-1 11.4-.1.7.2.5 1-.4a9.4 9.4 0 001.6-3.6zm-10.7 1.7c2.6-2.2 2.3-6 2.9-9 0-2 1.3-4.4.4-6.1-2.4.4-4 2.7-2.7 5 .1 2.7 0 5.6-1.3 8-1.1 1.5-4.7 1-4.5-1.1.9-3.3-3-1.7-4.6-.8-1.2.8-3.7.9-2.8-1.2-.6-2.8-4.1-1-6-1-1.8 0-.2-3.7-2.8-3-4.8-.5-10.2 0-14.4-3-2.4-1.1-2-4-.8-6 1.6-2.6 2-5.9 4.4-7.9 2.4-2.3-2.2-1.3-3.3-.5-2.3 1.2-.2 4.5-2 6.3-1.2 2-2.7 4.5-5.2 4.2-3.8-.7-6-4.2-8.6-6.5-2.3-.5-1 3.7.2 4.6a23.3 23.3 0 007.9 3.8c2.8-.5 2.9 3.2 5.3 3.8 4.4 2 9.3 2.6 14 2.9 2 .1.9 3.5 3.4 2.8 1.4.4 4.5-.5 4.6 1.1-2 2.5 2 2.5 3.6 2 2-.3 4.4-1 5 1.6 1.6 1.8 4.6 1.5 6.5.5l.8-.5z"/>
+    <path d="M195 373.7c.7-1 1.9-3 2.6-4.5a17.3 17.3 0 012.1-3.7c1.3-1.4.6-2.2-1.5-1.7-1 .2-1.5.6-1.6 1.5-.6 3-1.7 6.1-2.7 7.5-1.8 2.6-1.8 2.7-1 2.7.3 0 1.2-.8 2-1.8zM168.2 357c-2 0-2 1.3-.1 2 .9.3 1.7 1 2.3 2.4 2 3.7 3 4.4 8 4.8l3.3.3.1 2c.1 1 .4 2 .6 2 .3 0 1.5-.6 2.8-1.2 2.3-1.2 4.6-4 4.6-5.7 0-1.1-2-2.4-3.6-2.4a7 7 0 00-3.4 1.5c-3.6 2.6-7.4 2-9.5-1.3-1.7-2.8-3.5-4.4-5.1-4.4zm17.4 7c1 0 1.2.7.7 2-.4 1-1.6 1-2 0-.3-1 .3-2 1.3-2zm134.9-4.4c-1.3 0-1.7.3-2.5 1.6-1.4 2-1.5 6.3-.2 7.8.7 1 .8 1 2.5.3 2.3-1 2.7-.9 2.6.3 0 3.2-4.5 9.2-9.2 12.5a8.5 8.5 0 00-2.5 2.1c-.4 1 1.4.7 3.5-.4 3-1.5 6.8-5.4 8.4-8.5 1.2-2.5 1.4-3.3 1.6-7.6 0-4 0-5.1-.7-6.5-.7-1.5-1-1.6-2.9-1.6h-.6zm.2 2.8c1 0 1.1.2 1.2 1.6.1 1.2 0 1.9-.7 2.5-1 .8-1 .8-1.8-.4-1-1.7-.4-3.7 1.3-3.7zm-21.6 30.3a16 16 0 008.2-7.7 20.6 20.6 0 001.3-3.3c0-.6-2-1.5-3.3-1.5s-1.4-.9-1-3.2c.6-2.3 0-5.1-1-5.1-.4 0-1 .5-1.4 1.1-.7 1-.7 1.5-.2 3 .7 2 .1 3.7-1.8 5-1 .7-1.5 1.5-1.5 2.2 0 .6.1 1.1.2 1.1l2.3-1.1 2-1.2 1.3 1c.6.5 1.2 1.4 1.2 1.9 0 2.5-7.2 6.8-12.2 7.2-2.6.2-3 0-4-.8-.7-.8-1-1.4-.8-2.3l.6-2.7c.5-2.2-.5-1.9-2.1.7-1.4 2-1.8 4.4-1 5.6.6 1 4.7 1.9 7.6 1.7 1.8-.1 3.7-.6 5.6-1.6zm27.7-15.5c2.6-2.6 3.8-5.8 3.8-10.7v-3.7l2.1-1c2.8-1.3 5.5-4 5.5-5.4 0-1.6-.7-1.5-1.9.2-.9 1.2-2 1.9-6.4 3.9-1.1.5-1.2.8-1.4 5.4-.3 5.3-1 7.2-4 10.9-1.8 2.1-1.9 2.4-.6 2.4.5 0 1.8-.8 3-2zm-28.5-3c.3-.7-1.2-1.2-1.8-.6-.3.3-.3.7-.1 1 .4.7 1.7.5 2-.3zm39.3-10.1c.3-.8-1.2-1.3-1.8-.7-.3.3-.3.8-.1 1 .4.7 1.7.5 2-.3zm-47.3-27.6c-1 .5-1.5 1.6-2.2 2.5-.5.3-.1.6.2 1 1.8 1.9 2.5 4.5 3.4 7 .8 2.8 1.9 5.9 1 8.9-.4 1.1-1.3 2.3-2.6 2-2.2-.2-4.3-.7-6.4-.7-2 0-3.5 1.8-5.4 1.6-1.3.1-1.2-2.5-2.4-1.8-.6 1.4-.3 2.9-.4 4.4.3.2.9 0 1.2 0h4c.2 1.4.1 3 1.1 4 1.4.5 2.9 0 4.1-.5 1.4-.6 1.6-2.3 2-3.5.4-1.4 2.2-1 3.3-1.6a6.1 6.1 0 004.1-6.1c-.1-4.1-1.7-8-2.9-11.8-.6-1.7-1-3.4-1.7-5.1 0-.1-.2-.3-.4-.2zm-6.4 23.3c1.4 0 2 1.7 1.8 2.9-.6 1.6-2.6.6-3-.6-.7-1-.2-2.4 1.2-2.3z"/>
+    <path d="M230.4 346.5a3.6 3.6 0 00-2.1.7c-3.8 2.7-4.8 5.8-2.2 7 1.9.9 1.4 2-1.6 3.5-4.2 2-8 1.8-15-1.1-1.8-.8-2.3-.5-1.9 1.1.4 1.6 1.9 2.4 5.4 3.3 3.9.8 8.5.6 11.5-.7a14.9 14.9 0 004.6-3.6l2.3-2.5 2.7.3c3.3.4 3.4.5 3.4 2 0 1.3 0 1.4 3.1 1.6l5 .3c1.4 0 2.2.3 2.6 1 .6.7 1 .8 6 .3 4.6-.4 5.6-.4 7.7.4 1.5.5 3.1.7 4.4.5 3.6-.4 8.5-3.3 9.2-5.5.1-.2 1.4-.7 2.9-1 3.6-.7 3.8-1.5.4-1.9a24.3 24.3 0 01-4.9-1.2 13 13 0 00-3.7-.9c-1.8 0-3.6 1.1-3.6 2.3 0 .8.3.9 2.5.7 2-.3 2.6-.2 3.6.7.8.6 1.2 1.2 1 1.4-.4.8-4.6 2.7-6.5 3a5 5 0 01-3.2-.4c-1.7-.8-4.1-1-4.6-.3-.1.4-.7.2-1.4-.5l-1-1-2.6 1c-2.6 1-3.5 1-3.5-.2 0-.6-.7-.6-4.5-.4-4.2.3-4.6.2-5.4-.6-.7-.8-.7-1.1-.2-2 .5-.7.5-1 0-1.5-.4-.4-1-.4-2.6 0-4.1 1.1-5.3.5-5.3-2.7 0-2-1.1-3.1-2.5-3.1zm-1 3c.2 0 .3 0 .6.4.4.3.6 1 .4 1.4-.3 1-2.1.9-2.5-.1-.1-.5 0-1 .6-1.4l.8-.4z"/>
+    <path d="M222 352.4c2.4-1.6 2.4-1.4 2.7-5.9.3-3 .3-3.3-.6-3.3-1.2 0-1.9 1.3-1.9 3.9 0 1.6-.2 2.4-1 3.3-2.2 2-7.4 1.1-8-1.5-.2-.9 0-1.7 1.1-3.2 2.3-3.2 1.8-4-1-1.6-2 1.7-2.3 1.7-1.9.3.3-1.3-.4-1.9-2-1.5-.7.2-1.1.7-1.3 1.7-.2 1-.7 1.5-1.4 1.6-1.3.4-3.4-.8-3.4-1.9 0-.7 3.2-4.6 7.3-9a19 19 0 002.9-3.3c0-.2-.9-.4-1.9-.4-1.5 0-1.8.2-1.8.9 0 .4-2.1 3.2-4.7 6-5.3 6-5.7 7.3-3 8.8a6.4 6.4 0 006.9-.2l1.7-1.2v2.2c0 2.7.5 3.6 2.7 4.8a8.5 8.5 0 008.5-.5zm111.3-36.9c-2 1.2-.5 3.7-.2 5.3-.8 2.2-3.6 2.8-5.7 3.3-3 .4-5.1 3-6.2 5.6-.6 1.7-2.1 4.3-3.7 1.7-1.4-1.4-4-2.5-5.6-.9-1.3 1.2-1.6 3-2.1 4.6-.7-1.2-1-3-2.6-3.4-2.5.3-1.6 3.5-.5 4.8 1.1 1.5 2.1 3.5 1 5.3-.8 2.2-4 3.6-6 1.8-1.7-1-.5-4.3-2.2-4.5-.9.7-1 4.1-2.3 2.2-1-1.6-.5-3.8-1.7-5.2-1.4.2-2.6 2.6-2.1 4a23 23 0 013.4 8.8c.5 1.3 0 3.7 1.1 4.2.8-2 0-4.2.7-6.2 1.8-.2 4 .6 5.9.2 2.8-.4 5-2.7 5.9-5.2.3-2 0-3.8-.1-5.7 2.2.3 4.5.3 6.6 1 1 1.6-.3 3.9-.6 5.6-1.1 3.6-4 6.2-6.7 8.6-1.1.7-1.3 2.5.4 1.6 3.7-1.6 6.4-5 8-8.6 1.2-2.7.2-5.8 1-8.6 1.1-2.2 3.8-1.7 5.8-1.7 2-.1 3.8-2.5 3-4.5-.6-2.3 1.9-3.4 3.5-4.2 2.2-1.1 4-3.4 3.8-6-.1-1.3 0-3.8-1.8-3.9zm-7.9 13.3c2.4.7-.4 5.2-1.7 2.3-.3-1 .6-2.3 1.7-2.3zm-11 3.3c3.1-.2 2 4.3-.6 2.3-1.4-.7-1-2.4.6-2.3zm-111.7 17.4c.1-.5-.1-.8-.5-.8-.9 0-1.4.8-1 1.4.4.7 1.4.3 1.5-.6zm36.2-4c0-.7-.3-1-.8-.8-1.2.2-1.4 1.7-.2 1.7.7 0 1-.3 1-1zm-44.7-21.7c-1.5-.3-2.4.9-2.9 2-1 1.9-2.4 3.7-4.3 4.7-1.4.4-3-.2-4.1-.9-1.5-.7-1.1-2.4-1.8-3.6-1-.8-2.8.3-2.8 1.6-.1 1.7 1.5 2.7 2.8 3.3 1.1.7 2.7 1.1 3.2 2.5 0 1.2.4 2.5 1.9 2 1.6 0 2 2 1.3 3.2a6.8 6.8 0 00-.8 4.3c.8.7 1.6-1 2.2-1.6l1.1-1.5c2.8.2 5.7.5 8.5.4 2 0 3.8-1.3 5-2.7 1.9-2 3.4-4.2 5.5-5.8 1.5-.4.7-3.2-.9-2.4-1.4.6-1.8 2.1-2.8 3.1-1.6 2-3.3 4-5.4 5.6-1.5.6-3.2.4-4.8 0-.6-.5 1.3-1 1.6-1.6.9-1 2-1.8 2.4-3-.5-1-2-1.1-3-1.1-2.7.3-4.7 2.5-7.3 2.7-2 0-1-2.1 0-2.8 1.7-2.1 3.6-4.1 5.5-6.2.5-.6 2.4-1.2 1.2-2-.4-.2-.9-.2-1.3-.2zm1.3 10.6c1.3.7-.9 2-1.8 1.8-1.2.3-1.2-.9-.2-1.1.6-.3 1.3-.7 2-.7zm-4.1 2.8c.7 0 2.3.7.8 1.1-1 .8-2.2-.8-.8-1.1z"/>
+    <path d="M223.4 339c0-1-1.8-.9-2 .2-.1.6 0 .8 1 .7.5-.1 1-.5 1-.9zm79.7-7c.2-1-1.2-1.6-1.9-1-.7.8 0 2.1 1 2 .4-.2.8-.6.9-1zm-124-9.8c1.2-1 1.2-1.1.7-3.5-.8-3.3-.7-3.7.5-4 1.6-.4 5.7 1.8 6.6 3.5.7 1.4.7 1.4-.5 2.5-1.3 1.2-1.3 2.6 0 2.6 1 0 4-2.8 4-3.8 0-1.3-3.3-4.6-5.8-5.8a11.4 11.4 0 00-5-1c-3.3 0-3.7.7-2.9 4.5 1 4.4-.3 5-4 1.7a11.1 11.1 0 01-3.6-9.2c0-4.4 1.7-6.6 5.4-7 2.6-.4 2.5-1 0-1.4-3.9-.6-7 2-8.3 6.4-1.3 5 1.8 11.1 7.2 14.2 2.9 1.7 4 1.7 5.7.3zm148.5-5.5c.3-.3.5-1 .5-1.5s.6-1.7 1.2-2.5a7.2 7.2 0 001.2-2c0-.9-1.5-.8-2.6 0-1.2 1-2 1-2 .1 0-.2.5-.7 1.2-1 1.7-.8 1.8-1.6.4-2.3-1.9-.8-3.7.7-3.9 3.2-.1 1.7 0 2 1.3 2.7 1.2.7 1.4 1.1 1.2 2-.3 1.8.4 2.4 1.5 1.3zm14-1.6c1-.9 1.8-2 1.8-2.3 0-.3.9-1.2 2-2 3-2.2 3.7-4.4 2.3-7.9-.5-1.3-2.2-3.2-5.8-6.5a37 37 0 00-5.7-4.6c-1 0-.9 3.7.1 4 1.9.6 3 1.4 5.8 4 3.4 3 4.9 5.8 4 7.3-.7 1.5-1.8 1-4.8-2-1.5-1.7-3-3-3.3-3-.4 0-.6.5-.6 1.4 0 1 .5 2 2 3.7 2.5 2.8 2.8 4.4 1 5.9-.8.5-1.4 1-1.6 1a35.7 35.7 0 00-9.5-10.6c-.5 0-.7.4-.7 1.5 0 1.3.3 1.8 1.3 2.3 1.2.6 4.4 3.8 7.5 7.6.9 1 1.8 2 2 2 .1 0 1.1-.8 2.1-1.8zm6.2-17.8c-.4-1.3-9-10-9.8-10-.5 0-.6.5-.5 1.9 0 1.7.3 2 1.4 2.2.8.3 3 2 5 4s3.8 3.4 4 3.3l-.1-1.4zm-51 98.7a1.3 1.2 0 11-2.4 0 1.3 1.2 0 112.5 0zm4.6-1.5a1.3 1.2 0 11-2.6 0 1.3 1.2 0 112.6 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bo.svg
new file mode 100644
index 0000000..52a534f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bo.svg
@@ -0,0 +1,678 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bo" viewBox="0 0 512 512">
+  <path fill="#007934" d="M0 0h512v512H0z"/>
+  <path fill="#ffe000" d="M0 0h512v341.3H0z"/>
+  <path fill="#d52b1e" d="M0 0h512v170.7H0z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M307.8 224.8L203.3 329.2a97.8 97.8 0 00-1.4-1c.4-.5 104-103.8 104.5-104.5a7.4 7.4 0 011.4 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M314.3 218.2c-.4.7-1.5 2.6-1 4l-2.1-1.6c.5 1 .4 1.5-.2 1.9-.3.4-1.5.3-2.2.2a6 6 0 002.6 1l2 .1c-.6.3-2.3.9-3.4 1-.6.2-1.7.3-2.2 0-.6.6-2-.4-1.3-1-.3-.4-.3-.9-.4-1.5 0-.8 0-2 .7-3.2 0 .6.3 1.2.5 1.8.2.5.7 1 1.2 1.5-.3-.5-.5-1.3 0-1.9.6-.5 1.4-.5 2.2-.2l-2-1.4c.8 0 3.5-1 4.4-1.6a67 67 0 005.2-4 57.6 57.6 0 00-4 4.9z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M327.5 237.6l-134 75.7-1-1.3c.5-.4 133.2-75.2 134-75.7a6.3 6.3 0 011 1.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M335.9 232.8c-.6.6-2.3 2.2-2.3 3.6-.7-.7-1-1.2-1.6-2 .3 1 0 1.6-.7 1.8-.4.3-1.5 0-2.2-.3.6.6 1.2 1.2 2.2 1.6l1.9.5c-.7.2-2.5.3-3.7.2-.5 0-1.6-.2-2-.6-.8.5-1.8-.8-1-1.3-.2-.3 0-.8.1-1.4.2-.8.7-2 1.7-3a8.3 8.3 0 000 1.9c0 .6.3 1.1.6 1.7-.1-.5 0-1.3.7-1.7.7-.5 1.5-.3 2.1.2l-1.5-1.8c.8.2 3.7-.2 4.7-.5s4.4-1.8 6.4-2.7a65 65 0 00-5.4 3.8z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M316 232l-120.4 90.9-1.2-1.2 120.5-90.9a6.3 6.3 0 011.2 1.2z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M323.6 226.2c-.5.7-2 2.4-1.7 3.9l-1.8-1.8c.4 1 .1 1.5-.5 1.8-.4.4-1.5.2-2.2 0 .7.5 1.4 1 2.4 1.3l2 .3c-.7.3-2.4.6-3.6.7-.6 0-1.7 0-2.1-.4-.7.5-2-.6-1.2-1.2-.2-.3-.2-.8-.1-1.5 0-.7.4-2 1.2-3a8.4 8.4 0 00.2 1.8c.1.6.5 1 1 1.6-.3-.5-.3-1.3.3-1.8.7-.5 1.5-.4 2.1 0l-1.7-1.7c.8.1 3.6-.6 4.6-1 1-.4 4-2.2 5.8-3.4a61.8 61.8 0 00-4.7 4.4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M204.2 224.8l104.5 104.4a97.8 97.8 0 011.4-1L205.5 223.6l-1.3 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M197.7 218.2c.3.7 1.5 2.6 1 4l2.1-1.6c-.5 1-.4 1.5.2 1.9.3.4 1.5.3 2.2.2a6 6 0 01-2.6 1l-2 .1c.6.3 2.3.9 3.4 1 .6.2 1.7.3 2.2 0 .6.6 2-.4 1.4-1 .2-.4.3-.9.3-1.5a6.2 6.2 0 00-.7-3.2 8.5 8.5 0 01-.5 1.8c-.2.5-.7 1-1.2 1.5.3-.5.5-1.3 0-1.9-.6-.5-1.4-.5-2.2-.2l2-1.4c-.8 0-3.5-1-4.4-1.6a67 67 0 01-5.2-4c1.3 1.4 3.6 4.1 4 4.9z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M184.5 237.6l134 75.7 1-1.3c-.5-.4-133.2-75.2-134-75.7l-1 1.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M176.1 232.8c.6.6 2.3 2.2 2.4 3.6l1.4-2c-.2 1 .2 1.6.8 1.8.4.3 1.5 0 2.2-.3a5.4 5.4 0 01-2.2 1.6l-1.9.5c.7.2 2.5.3 3.6.2.6 0 1.7-.2 2.1-.6.8.5 1.8-.8 1-1.3.2-.3 0-.8-.1-1.4a6.8 6.8 0 00-1.7-3v1.9c0 .6-.3 1.1-.6 1.7.1-.5 0-1.3-.7-1.7-.7-.5-1.5-.3-2.1.2l1.4-1.8c-.7.2-3.6-.2-4.6-.5-1-.3-4.4-1.8-6.4-2.7a65 65 0 015.4 3.8z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M196 232l120.4 90.9 1.2-1.2-120.5-90.9-1.2 1.2z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M188.4 226.2c.5.7 2 2.4 1.7 3.9l1.8-1.8c-.4 1-.1 1.5.5 1.8.4.4 1.5.2 2.2 0-.6.5-1.4 1-2.4 1.3l-2 .3c.7.3 2.4.6 3.6.7.6 0 1.7 0 2.1-.4.7.5 2-.6 1.2-1.2.2-.3.2-.8.1-1.5 0-.7-.4-2-1.2-3a8.4 8.4 0 01-.2 1.8c-.1.6-.5 1-1 1.6.3-.5.3-1.3-.3-1.8-.7-.5-1.5-.4-2.2 0l1.8-1.7c-.8.1-3.6-.6-4.6-1a70.7 70.7 0 01-5.8-3.4l4.7 4.4z"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M234.8 302.4a40.8 40.8 0 0117.8-4c-8.5 6.5-17 6.8-17.8 4z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M234.8 302.4c.8 2.8 9.3 2.5 17.8-3.9a67 67 0 01-17.7 3.9z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M234.8 302.4c.8 2.8 9.3 2.5 17.8-3.9a67 67 0 01-17.7 3.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M234.8 302.3a44 44 0 0117.8-3.9c-8.4 6.5-17 6.7-17.8 4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M285.4 234.8l-27.2 55.8c-1.3 1.1-2.4-.3-2.8-.2-1.7 1.9-3.9 2.3-4.4 2.7-1.9 2.5-.8 4.6-.7 4.8 1.4 2-1.7 3.8-1.5 4.4-.7 1-3 .8-3.4 2l-5 10c-.8.5-4 6.5-4 6.5-2.2 0-10.9-5.6-11-5.5 4.8-7.8 16.5-19.7 16.2-20.5 3.3-5.6 8.5-11.6 10.8-11.5 3.2-1.7 4.8-6 4.1-7 2.5-.1 3.8-1.6 4-1.7l20-40c1.7-.6 1.5.1 2 1 0 0 1-1.2 1-1.4 1-.4 1.9.2 1.9.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M286.4 222.7c-.5 1 .3 1 .6 1.2l1.2.3c1.3 0 2 .7 2 1.2l-32 65.2c-1.3 1.1-2.6-.2-3 0l21.9-44.7 10.6-20-2.9-1.3c-.9-.2-1.2-.8-.8-1.7l13.4-23-10.7 22.3-.3.5"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M286.4 222.7c-.5 1 .3 1 .6 1.2l1.2.3c1.3 0 2 .7 2 1.2l-32 65.2c-1.3 1.1-2.6-.2-3 0l21.9-44.7 10.6-20-2.9-1.3c-.9-.2-1.2-.8-.8-1.7l13.4-23-10.7 22.3-.3.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M244 290.6c-3-.1-4.8 2.2-2.8 5m1.5-2.5c-1.1.6-1.9-.4-1.9-.4m16.3-14c-1.7 6-4.7 10-5.3 11.2-2.3 2.4-4.2 7.7-3.8 8.7l-8.7 14.2"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M258.1 290.9c-1.4-.5-6.1-4.9-10.7-4.1-3.5 4-5.6 8.2-6.2 8.8a60 60 0 008.1 5.8c.7-.5 1-1.7 1-1.7 1-1-.1-1.8-.1-1.8.1-2.7 2-4.5 4-4.6 2.4-.2 1.7-.4 2-.4 1.1-.6 1.9-2 1.9-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M258.1 290.9c-1.4-.5-6.1-4.9-10.7-4.1-3.5 4-5.6 8.2-6.2 8.8a60 60 0 008.1 5.8c.7-.5 1-1.7 1-1.7 1-1-.1-1.8-.1-1.8.1-2.7 2-4.5 4-4.6 2.4-.2 1.7-.4 2-.4 1.1-.6 1.9-2 1.9-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M253.4 291c-2.1 0-4.3 1-5 2.8l5-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M253.4 291c-2.1 0-4.3 1-5 2.8m-3.9.7c.2.4.8.7 1.3.5.5-.2.8-.7.6-1.1-.2-.5-.8-.7-1.3-.5-.5.2-.8.6-.6 1.1zm2.7-3.6c.2.4.8.6 1.3.5.5-.2.8-.7.6-1.2-.2-.4-.8-.6-1.3-.4-.5.1-.8.6-.6 1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M283 241.2c.8-.3 1.2-1.3.8-2.2l-5-1.8s-.6.1-1 .8c-.6.7.1 1.3.1 1.3l5.1 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M283 241.2c.8-.3 1.2-1.3.8-2.2l-5-1.8s-.6.1-1 .8c-.6.7.1 1.3.1 1.3l5.1 1.9"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M228.8 305.1c4.2-2.9 16-4.6 17.7-4.1-8.3 6.6-16.9 7-17.7 4.1z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M228.9 305.1c.8 2.8 9.3 2.5 17.6-4a66 66 0 01-17.6 4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M228.9 305.1c.8 2.8 9.3 2.5 17.6-4a66 66 0 01-17.6 4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M228.8 305.1a42.6 42.6 0 0117.8-4.2c-8.4 6.6-17 7-17.8 4.2z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M278 236.9L252 293c-1.3 1-2.5-.3-2.9-.2-1.5 1.9-3.8 2.3-4.2 2.7-1.9 2.6-.8 4.7-.7 4.9 1.5 1.8-1.6 3.7-1.4 4.3-.6 1.1-2.9 1-3.3 2.2-.1-.1-4.5 9-5 10-.6.5-3.7 6.5-3.7 6.5-2.3 0-11-5.4-11.2-5.3 4.7-7.9 16.1-20 15.9-20.7 3.2-5.6 8.3-11.7 10.5-11.7 3.2-1.8 4.7-6.1 4-7 2.5-.2 3.8-1.7 4-1.8l19.2-40.3c1.7-.6 1.4 0 2 1l1-1.4c.9-.5 1.8.2 1.8.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M278 236.9L252 293c-1.3 1-2.5-.3-2.9-.2-1.5 1.9-3.8 2.3-4.2 2.7-1.9 2.6-.8 4.7-.7 4.9 1.5 1.8-1.6 3.7-1.4 4.3-.6 1.1-2.9 1-3.3 2.2-.1-.1-4.5 9-5 10-.6.5-3.7 6.5-3.7 6.5-2.3 0-11-5.4-11.2-5.3 4.7-7.9 16.1-20 15.9-20.7 3.2-5.6 8.3-11.7 10.5-11.7 3.2-1.8 4.7-6.1 4-7 2.5-.2 3.8-1.7 4-1.8l19.2-40.3c1.7-.6 1.4 0 2 1l1-1.4c.9-.5 1.8.2 1.8.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M278.8 224.7c-.5 1 .3 1 .6 1.2l1.2.3c1.3 0 2 .7 2 1.1L252 293.1c-1.3 1-2.6-.3-3 0l21-45 10.2-20.2-3-1.2c-.9-.2-1.1-.8-.8-1.7l13-23.3-10.4 22.6-.2.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M278.8 224.7c-.5 1 .3 1 .6 1.2l1.2.3c1.3 0 2 .7 2 1.1L252 293.1c-1.3 1-2.6-.3-3 0l21-45 10.2-20.2-3-1.2c-.9-.2-1.1-.8-.8-1.7l13-23.3-10.4 22.6-.2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M237.8 293.2c-3.1 0-4.8 2.3-2.7 5m1.4-2.5c-1.1.7-1.8-.3-1.8-.3m16-14.2c-1.6 6-4.5 10-5.1 11.3-2.3 2.3-4 7.7-3.7 8.6l-8.3 14.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M251.9 293.3c-1.5-.5-6.2-4.7-10.8-4-3.4 4.2-5.4 8.4-6 9a55 55 0 008.2 5.6c.7-.4 1-1.6 1-1.6 1-1-.2-1.9-.2-1.9 0-2.6 2-4.5 3.9-4.6 2.4-.3 1.7-.4 2-.5 1.1-.6 1.9-2 1.9-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M251.9 293.3c-1.5-.5-6.2-4.7-10.8-4-3.4 4.2-5.4 8.4-6 9a55 55 0 008.2 5.6c.7-.4 1-1.6 1-1.6 1-1-.2-1.9-.2-1.9 0-2.6 2-4.5 3.9-4.6 2.4-.3 1.7-.4 2-.5 1.1-.6 1.9-2 1.9-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M247.2 293.5c-2.1 0-4.3 1-5 2.8l5-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M247.2 293.5c-2.1 0-4.3 1-5 2.8m-3.8.8c.2.5.8.7 1.3.5.5-.2.7-.7.5-1.1-.2-.5-.8-.6-1.3-.5-.5.2-.7.7-.5 1.1zm2.6-3.7c.2.5.8.7 1.3.5.5-.2.7-.7.5-1-.2-.5-.7-.7-1.2-.6s-.8.7-.6 1.1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M275.8 243.3c.8-.4 1.2-1.3.7-2.2l-5-1.7s-.6 0-1 .8c-.6.7.1 1.2.1 1.2l5.2 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M275.8 243.3c.8-.4 1.2-1.3.7-2.2l-5-1.7s-.6 0-1 .8c-.6.7.1 1.2.1 1.2l5.2 1.9"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M278 302.2a41 41 0 00-18-4c8.6 6.6 17.2 6.8 18 4z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M278 302.2c-.8 2.8-9.4 2.6-18-3.9a68 68 0 0018 3.9z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M278 302.2c-.8 2.8-9.4 2.6-18-3.9a68 68 0 0018 3.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M278 302.1c-4.5-3-17-4.2-18-3.9 8.6 6.5 17.2 6.8 18 4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M226.9 234l27.4 56.4c1.4 1 2.5-.4 3-.2 1.6 1.8 3.8 2.2 4.3 2.6 2 2.6.9 4.7.8 4.9-1.5 2 1.6 3.8 1.5 4.4.6 1 3 .8 3.4 2.1l5.1 10c.7.5 4 6.6 4 6.6 2.3 0 11-5.7 11.2-5.6-5-7.8-16.7-19.9-16.5-20.7-3.3-5.6-8.6-11.7-10.9-11.6-3.2-1.7-4.8-6-4.1-7-2.5-.1-3.9-1.6-4-1.7l-20.3-40.5c-1.7-.6-1.4.1-2 1.1l-1-1.4c-1-.5-1.9.2-1.9.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M225.8 221.7c.6 1-.3 1-.5 1.2l-1.2.4c-1.3 0-2 .7-2 1l32.2 66c1.4 1.1 2.7-.2 3.1 0l-22.1-45.1-10.7-20.3 2.9-1.2c.9-.2 1.2-.8.8-1.8l-13.6-23.3 11 22.7.1.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M225.8 221.7c.6 1-.3 1-.5 1.2l-1.2.4c-1.3 0-2 .7-2 1l32.2 66c1.4 1.1 2.7-.2 3.1 0l-22.1-45.1-10.7-20.3 2.9-1.2c.9-.2 1.2-.8.8-1.8l-13.6-23.3 11 22.7.1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M268.7 290.3c3.1-.1 4.9 2.2 2.8 5m-1.4-2.5c1 .6 1.8-.4 1.8-.4m-16.4-14c1.7 6 4.7 10 5.3 11.2 2.3 2.4 4.3 7.8 3.9 8.7l8.7 14.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M254.5 290.6c1.4-.5 6.1-5 10.8-4.2 3.5 4.2 5.6 8.3 6.2 9a53 53 0 01-8.2 5.8c-.7-.5-1-1.7-1-1.7-1-1 .2-1.9.2-1.9-.1-2.6-2-4.5-4-4.6-2.5-.2-1.8-.4-2.1-.4a6.2 6.2 0 01-2-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M254.5 290.6c1.4-.5 6.1-5 10.8-4.2 3.5 4.2 5.6 8.3 6.2 9a53 53 0 01-8.2 5.8c-.7-.5-1-1.7-1-1.7-1-1 .2-1.9.2-1.9-.1-2.6-2-4.5-4-4.6-2.5-.2-1.8-.4-2.1-.4a6.2 6.2 0 01-2-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M259.2 290.7c2.1 0 4.4 1 5 2.8l-5-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M259.2 290.7c2.1 0 4.4 1 5 2.8m4 .7c-.2.5-.8.7-1.3.6-.5-.2-.8-.7-.6-1.2.2-.4.8-.6 1.3-.5.5.2.8.7.6 1.1zm-2.7-3.6c-.2.4-.8.6-1.3.4-.6-.1-.8-.6-.6-1 .2-.5.8-.7 1.3-.6.5.2.8.7.6 1.2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M229.3 240.4c-.8-.3-1.2-1.3-.8-2.2l5-1.8s.7 0 1.2.8c.5.7-.2 1.2-.2 1.2l-5.2 2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M229.3 240.4c-.8-.3-1.2-1.3-.8-2.2l5-1.8s.7 0 1.2.8c.5.7-.2 1.2-.2 1.2l-5.2 2"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M283.3 305.1c-4-2.9-16-4.6-17.7-4.1 8.4 6.6 17 7 17.7 4.1z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M283.3 305.1c-.8 2.8-9.3 2.5-17.6-4a66 66 0 0017.6 4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M283.3 305.1c-.8 2.8-9.3 2.5-17.6-4a66 66 0 0017.6 4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M283.3 305.1a42.6 42.6 0 00-17.7-4.2c8.4 6.6 17 7 17.7 4.2z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M234.1 236.9l26 56.2c1.4 1 2.5-.3 3-.2 1.5 1.9 3.7 2.3 4.2 2.7 1.8 2.6.8 4.7.6 4.9-1.4 1.8 1.6 3.7 1.5 4.3.6 1.1 2.9 1 3.3 2.2.1-.1 4.5 9 4.9 10 .7.5 3.8 6.5 3.8 6.5 2.2 0 11-5.4 11.2-5.3-4.7-7.9-16.2-20-16-20.7-3-5.6-8.2-11.7-10.5-11.7-3.1-1.8-4.6-6.1-4-7-2.4-.2-3.7-1.7-3.9-1.8L239 236.7c-1.7-.6-1.4 0-2 1l-1-1.4c-.9-.5-1.8.2-1.9.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M234.1 236.9l26 56.2c1.4 1 2.5-.3 3-.2 1.5 1.9 3.7 2.3 4.2 2.7 1.8 2.6.8 4.7.6 4.9-1.4 1.8 1.6 3.7 1.5 4.3.6 1.1 2.9 1 3.3 2.2.1-.1 4.5 9 4.9 10 .7.5 3.8 6.5 3.8 6.5 2.2 0 11-5.4 11.2-5.3-4.7-7.9-16.2-20-16-20.7-3-5.6-8.2-11.7-10.5-11.7-3.1-1.8-4.6-6.1-4-7-2.4-.2-3.7-1.7-3.9-1.8L239 236.7c-1.7-.6-1.4 0-2 1l-1-1.4c-.9-.5-1.8.2-1.9.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M233.3 224.7c.5 1-.3 1-.6 1.2l-1.1.3c-1.3 0-2 .7-2 1.1l30.6 65.8c1.3 1 2.6-.3 3 0l-21-45-10.2-20.2 3-1.2c.8-.2 1.1-.8.7-1.7l-12.9-23.3 10.3 22.5.2.5"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M233.3 224.7c.5 1-.3 1-.6 1.2l-1.1.3c-1.3 0-2 .7-2 1.1l30.6 65.8c1.3 1 2.6-.3 3 0l-21-45-10.2-20.2 3-1.2c.8-.2 1.1-.8.7-1.7l-12.9-23.3 10.3 22.5.2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M274.3 293.2c3.2 0 4.9 2.3 2.8 5m-1.4-2.5c1 .7 1.8-.3 1.8-.3m-16-14.2c1.6 6 4.5 10 5 11.3 2.3 2.3 4.1 7.7 3.8 8.6l8.3 14.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M260.3 293.3c1.4-.5 6.2-4.7 10.8-4 3.4 4.2 5.4 8.4 6 9a53.2 53.2 0 01-8.3 5.6c-.6-.4-1-1.6-1-1.6-.8-1 .3-1.9.3-1.9 0-2.6-2-4.5-3.9-4.6-2.4-.3-1.7-.4-2-.5-1.1-.6-1.9-2-1.9-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M260.3 293.3c1.4-.5 6.2-4.7 10.8-4 3.4 4.2 5.4 8.4 6 9a53.2 53.2 0 01-8.3 5.6c-.6-.4-1-1.6-1-1.6-.8-1 .3-1.9.3-1.9 0-2.6-2-4.5-3.9-4.6-2.4-.3-1.7-.4-2-.5-1.1-.6-1.9-2-1.9-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M265 293.5c2 0 4.3 1 5 2.8l-5-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M265 293.5c2 0 4.3 1 5 2.8m3.8.8c-.2.5-.8.7-1.3.5-.5-.2-.8-.7-.6-1.1.2-.5.8-.6 1.3-.5.6.2.8.7.6 1.1zm-2.6-3.7c-.2.5-.8.7-1.3.5-.5-.2-.8-.7-.6-1 .2-.5.8-.7 1.3-.6.5.2.8.7.6 1.1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M236.4 243.3a1.6 1.6 0 01-.8-2.2l5-1.7s.7 0 1.1.8c.5.7-.2 1.2-.2 1.2l-5 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M236.4 243.3a1.6 1.6 0 01-.8-2.2l5-1.7s.7 0 1.1.8c.5.7-.2 1.2-.2 1.2l-5 1.9"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M251 267.4l37.8-40.5a94.1 94.1 0 01-1.4-1l-38 40.5c-.5-.2 2 1.3 1.5 1z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M287.8 226.3c-1.3-1-3.7-2.3-5.3-2-.6-2.2 2.7-4.6 4-4.2-.3 2.5 3.4 4 3.3 4l-2 2.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M290.3 224.4c1 .9 1.4 1 3 1.7 1.4.8 3.4-1.2 4.3-1.8 0 0 1 3.6-1.2 6s-4.9 3-7 2.2c0 0 2.8-2.7 1.7-3.9-1.1-1.1-1.5-1.2-2.6-2"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M19.4-370.2h4.4v2.4h-4.4z" transform="matrix(-.67726 .73575 -.82314 -.56784 0 0)"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M243.4 309.7l-1 9.6 1.9-2.4c.3-.6 1.6-2.2 1.9-7.9 0 0-1-3-1.5-3-.8-.5-1.3 3.7-1.3 3.7zm2.3-21.5L243 305c0 .4 1.3 1.7 2.3-1.3l1.5-11.2-1-4.4z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M251.6 303.5c-.6-.8-1.4-1.7-1.5-2.1l-.4 3.4s2.1 1.5 1.8 4.6l.5-.6.2-1.3s.5-2 .5-3.2c0 0-.5-.2-1.1-.8z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M242.4 319.3s3.6-3 3.8-10.3l.4-2s0 1.6.8.4c.7-1.6.7-3 .7-3s1.3-1.6 1.7.4l-1.3 10.2a54.8 54.8 0 01-.3 2.2s-.7-1.2-1.4 0c-.8 1.3-2 2.9-4.4 2.1zm4.3-26.7l-1.5 11.2s1.2.6 1.4 3.2c.1 1.2.6.6.8.4.3-.8 0-2.4 0-2.4l.8-7.8s-1.4-3.6-1.5-4.6z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M245.5 318.7l-.2 2.8s1 0 1.8-1.2c.8-1.3 1-3 1-3s-.7-1.3-1.3 0a4 4 0 01-1.3 1.4zm2-11.3a6.3 6.3 0 00.6-3l-.8.6c.3 1.2.1 2.4.1 2.4z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M251 306.3c-.6-1-1.4-1.6-1.4-1.6l-1.6 12.7s-.4 3.2-2.4 4c0 0 1.1 11 4.7 8 .5-.5 1.2-3.9 1-5.9l-1-6.4a28.5 28.5 0 011.2-7.8c.2-.2 0-1.8-.6-3z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M252.7 304.3l1.1 1c.2 0-2.5 20.7-2.5 20.7s0-2.2-.7-6.4c-.7-3.4.2-8 1-10.2 0 0 .8-.7 1-5z"/>
+  <path fill="#f7e214" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M248 297.4l-.6 7.6s1.8-2.6 2.3-.2l.4-3.5s-1.6-2.5-2-4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M246.7 307s-.6-6.5-3.8-2c0 0-.3 2.7 0 3.3 0 .8.9 1.8 1.3 2.5.7 1 1.4-.3 1.4-.3s.7-1 1-3.5z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M221.7 252.7c-.2-3.7-1.3-9.8-1.4-14l-12.8-13.1s-1.6 10.5-6.2 16.6l20.3 10.5"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M222.6 253.2c.5-2.6 1.2-5.5 1.6-11l-8.2-8c0 3.4-3.8 8.6-4.1 15"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M229.7 261c1-4.5-1.4-5.1 2-11.5l-7.6-7.3c-1.4 4.3-2.3 7-2.2 10.8l6.5 4.6"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M200 288c-1.5-4.5.6-13.5.4-19.3-.2-3.7 2.5-17.6 2.5-21.9l-15-9.4s-.7 15.3-2.5 32a66.3 66.3 0 00-.4 22.8c1.6 9.3 3.2 13.1 7 17 6.6 7 20.9 3 20.9 3 12-2.6 19-10.2 19-10.2s-4 1-10.3 1.6c-14-1-19.4 2.5-19.8-11.8"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M240.4 297.4l.2-.1c-2.6 1-6.2 2-6.2 2l-8.5.7c-18.4.4-16.1-11-15.4-29.4.2-7 1.6-15.8 1.2-18.9l-12.3-7c-4 11.3-2.8 19.3-3.6 25-.4 6.4-1.8 18.6.3 24 2.9 12.4 12.6 11.9 25.8 10.8 6.5-.6 10-2.3 10-2.3l8.5-4.9"/>
+  <path fill="#007a3d" stroke="#000" stroke-width=".1" d="M240.6 297.1a37.3 37.3 0 01-6.3 2.3l-8.6.9c-13.3 1-21.1-8.3-19.4-29.5A66 66 0 01209 250l7.3 4.3v.7c-.4 2.2-1.4 7.5-1.4 9.9 0 17 10.7 30 25.4 32.3l.2-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M192 246c1.2 2 8.6 13.3 12.7 15.5m-11.5-8.2c1.2 2.1 10.3 14.9 14.4 15.6m-16.5 3.9c2 2.5 4.1 7.4 10.3 10.6M194 287c4.1 4 14.4 12.4 24.3 12.8m-24.3-6.4c2 2.5 6.6 14.2 25.6 8.9m-28.5-6.7c1.2 2.8 10.8 18.4 27.7 12.3"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M211 282.5c-1.6-4.6.5-13.6.3-19.4-.2-3.7 1.5-16.5 1.5-20.8l-14.1-10.5s-.7 15.3-2.4 32c-1.6 8.5-2.7 19-1.6 25.5 2 10.6 7 13.6 8 14.5 7.2 6.4 23.4 5.7 25 5.2 11.6-4.2 16.6-11.6 16.6-11.6s-5.5 0-11.8.6c-14-1-21-.4-21.4-14.7"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M251.3 291.8l.2-.2c-2.6 1-6.2 2.1-6.2 2.1l-8.5.7c-18.4.4-16.1-11-15.4-29.4.2-7 .4-13.3 0-16.4l-11-8c-4 11.3-3 17.8-3.7 23.6-.4 6.3-1.8 18.5.3 23.8 2.8 12.5 12.6 12 25.7 10.9 6.6-.6 10-2.3 10-2.3l8.6-4.9"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M251.6 291.6a37 37 0 01-6.3 2.3l-8.6.8c-13.3 1.2-21.2-8.2-19.5-29.4 0-7.5-.2-8 2.4-18 4 2.6 11.9 9.3 11.9 9.3s-2.1 3-1.6 7.2c0 17 6.8 25.7 21.5 27.9l1.6-14"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M202.8 240.3a60.7 60.7 0 0012.8 15.6m-11.5-8.2c1.2 2.2 10.3 14.9 14.4 15.6m-16.5 3.9c2 2.5 4.1 7.4 10.3 10.6m-7.4 3.5c4.1 4 14.4 12.4 24.3 12.8m-24.3-6.4c2 2.5 6.6 14.2 25.6 8.9m-28.5-6.7c1.2 2.8 10.7 18.4 27.7 12.3"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M188 238.9l-.8 6.4c-.3 4.7-.1 8.2.1 10.5 0 .2.9 5.8.6 6.1-1 1.3-1.1 1.4-2.3.5-.1-.2.5-6 .6-6.8l.4-10.5c0-1.1 1-6.8 1-6.8s.1-1.3.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M188 238.9l-.8 6.4c-.3 4.7-.1 8.2.1 10.5 0 .2 1.1 8 .7 6.1-1 1.3-1.3 1.7-2.4.8-.2-.2.5-6.3.6-7l.4-10.6c0-1.1 1-6.8 1-6.8s.1-1.3.3.6z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M187.8 237s-1.2 6.5-1.3 10.2c-.2 4.5-.4 5.8-.3 8.5l-.6 4.8c-.1.7.1.1 0 .2-1 .6-1.6.1-2.1-.3-.2-.2 1.5-4 1.5-4.9.9-11.4 2.5-18.2 2.5-18.2s-.6 4.1.3-.3"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M187.8 237s-1.2 6.5-1.3 10.2c-.2 4.5-.4 5.8-.3 8.5l-.6 4.8c-.1.7.1.1 0 .2-1 .6-1.6.1-2.1-.3-.2-.2 1.5-4 1.5-4.9.9-11.4 2.5-18.2 2.5-18.2s-.6 4.1.3-.3zm-.5 18.5s-1 .4-1.1.2m0-1.4s.8 0 1-.2m-.1-1.2s-.7.4-.8.2m.7-1.8h-.6m.7-1.6h-.7m.6-2.3s-.4.2-.4 0m.5-1.9h-.5m-.5 10.2s-1 .1-1.1-.2m1.1-2s-1 0-1-.2m1-1.4h-.8m1-1.5h-.7m.7-1.8l-.5-.1m.7-1.5s-.5 0-.6-.2m.7-1.7s-.4.3-.4 0m0 9.6s-1 0-1-.3m13.6-21.1l-.7 6.4c-.3 4.7-.1 8.3 0 10.5 0 .2 1 5.8.7 6.1-1.1 1.3-1.2 1.4-2.3.5-.2-.2.5-6 .5-6.8.2-.8.3-7.5.5-10.5 0-1.1 1-6.8 1-6.8s.1-1.3.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M198.8 233.3l-.7 6.4a70 70 0 000 10.5c0 .2 1.2 8 .8 6.1-1 1.3-1.3 1.7-2.4.8-.2-.2.5-6.3.6-7l.4-10.6c0-1.1 1-6.8 1-6.8s.1-1.3.3.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M198.7 231.4s-1.2 6.5-1.4 10.2c-.1 4.5-.3 5.8-.2 8.5l-.6 4.8c-.1.7 0 .2 0 .2-1 .6-1.6.1-2.2-.3-.1-.2 1.5-4 1.6-4.9.9-11.4 2.5-18.2 2.5-18.2l.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M198.7 231.4s-1.2 6.5-1.3 10.2c-.2 4.5-.4 5.8-.3 8.5l-.6 4.8c-.1.7 0 .2 0 .2-1 .6-1.6.1-2.2-.3-.1-.2 1.5-4 1.6-4.9.9-11.4 2.5-18.2 2.5-18.2l.3-.3zm-.5 18.5s-1 .4-1.1.2m0-1.4s.7 0 .9-.2m0-1.2s-.7.4-.8.2m.7-1.8h-.6m.7-1.6h-.7m.6-2.3s-.4.2-.5 0m.6-1.9h-.6m-.5 10.2s-1 .1-1-.2m1.1-2s-1 0-1-.2m1-1.4h-.8m1-1.5h-.8m.8-1.8l-.5-.1m.7-1.5s-.5 0-.6-.2m.7-1.7s-.5.3-.5 0m0 9.6s-1 0-1-.3"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M207.3 225.3s.5 5.5.2 8.6c-.4 3.8-.3 4.9-.7 7v4.3c.9.5 1.6.2 2.2-.1.2-.1-1-3.5-1-4.2.4-9.5-.5-15.3-.5-15.3l-.2-.2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M207.3 225.3s.5 5.5.2 8.6c-.4 3.8-.3 4.9-.7 7v4.3c.9.5 1.6.2 2.2-.1.2-.1-1-3.5-1-4.2.4-9.5-.5-15.2-.5-15.2l-.2-.4zm-.4 15.7s1 .2 1.1 0m-.8-1.8s.9.1 1-.1m-1-1.3h.9m-.8-1.2h.7m-.5-1.6h.5m-.5-1.3h.5m-.4-1.5s.4.3.4 0m-1 8s1 0 1-.2"/>
+  <path fill="#005000" stroke="#000" stroke-width=".1" d="M241 236.4h1-1z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M252.5 273.5s-.4-.2-.5 0l.2.2.3-.2zm-1 1.2l2.2-.2"/>
+  <path fill="#e8a30e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M226.3 303.1c-.2 3.3-7.8 7-13.5.2-6-4.8-4.7-12.2 0-13.2l58.3-56.8c2.4-1.3 2.6-2.5 3.8-3.7 2.4 2.6 7.5 7.2 10.2 9.5-1.7 1.4-3 2.7-3.4 3.8l-55.4 60.2z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M275 229.4c2.8-3.8 13.6 6 10.7 9.2-2.9 3-13.3-5.4-10.7-9.2z"/>
+  <path fill="#cccccf" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M284.8 237.8c-2 1.6-10-5-8.6-7.6 2.1-2.4 10.8 6.1 8.6 7.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M281.6 243a16.8 16.8 0 01-10.5-9.6m-24.5 48a17.3 17.3 0 01-12.2-12.5m9.7 15.3a17.3 17.3 0 01-12.2-12.4m-2.3 27.5a19 19 0 01-13-13m10.5 15.8a19.2 19.2 0 01-13-13"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M212.6 304c-.3 1.5-1 2-2.2 1.5m14.7-2c-2.3 3.6-4.9 2.5-7 2.5"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M209.5 304.2c0 1 .8 1.8 1.8 1.8a1.8 1.8 0 001.9-1.8c0-1-.8-1.8-1.9-1.8-1 0-1.8 1.1-1.8 2"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M212.8 303.9c-.3 1.4-1 1.9-2.2 1.4m14.5-1.9c-2.3 3.7-4.9 2.6-7 2.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M268.6 309.7l1 9.6-1.9-2.4c-.3-.6-1.6-2.2-1.9-7.9 0 0 1-3 1.5-3 .8-.5 1.3 3.7 1.3 3.7zm-2.4-21.5l2.9 16.9c0 .4-1.3 1.7-2.3-1.3l-1.5-11.2 1-4.4z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M260.4 303.5c.6-.8 1.4-1.7 1.5-2.1l.4 3.4s-2.2 1.5-1.8 4.6l-.5-.6-.2-1.3-.5-3.2s.5-.2 1.1-.8z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M269.6 319.3s-3.6-3-3.8-10.3l-.4-2s0 1.6-.8.4c-.7-1.6-.7-3-.7-3s-1.3-1.6-1.7.4a1925.6 1925.6 0 001.6 12.4s.7-1.2 1.4 0c.8 1.3 2 2.9 4.4 2.1zm-4.3-26.7l1.5 11.2s-1.2.6-1.4 3.2c-.1 1.2-.6.6-.8.4-.3-.8 0-2.4 0-2.4l-.8-7.8s1.4-3.6 1.5-4.6z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M266.5 318.7l.2 2.8s-1 0-1.7-1.2c-.9-1.3-1.2-3-1.2-3s.8-1.3 1.4 0a4 4 0 001.3 1.4zm-2-11.3a6.3 6.3 0 01-.6-3l.7.6c-.2 1.2 0 2.4 0 2.4z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M261 306.3c.6-1 1.4-1.6 1.4-1.6l1.6 12.7s.4 3.2 2.4 4c0 0-1.1 11-4.7 8-.5-.5-1.2-3.9-1-5.9l1-6.4a28.5 28.5 0 00-1.2-7.8c-.2-.2 0-1.8.6-3z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M259.4 304.3s-1 1-1.2 1c-.2 0 2.5 20.7 2.5 20.7s0-2.2.7-6.4c.7-3.4-.2-8-1-10.2 0 0-.8-.7-1-5z"/>
+  <path fill="#f7e214" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M264 297.4l.6 7.6s-1.8-2.6-2.3-.2l-.4-3.5s1.6-2.5 2-4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M265.3 307s.6-6.5 3.8-2c0 0 .3 2.7 0 3.3 0 .8-.9 1.8-1.3 2.5-.7 1-1.4-.3-1.4-.3s-.7-1-1-3.5z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M290.4 252.7c0-3.7 1.2-9.8 1.3-14l12.8-13.1s1.6 10.5 6.2 16.6l-20.3 10.5"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M289.4 253.2c-.5-2.6-1.2-5.5-1.6-11l8.2-8c0 3.4 3.9 8.6 4.1 15"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M282.3 261c-1-4.5 1.4-5.1-2-11.5l7.6-7.3c1.4 4.3 2.3 7 2.2 10.8l-6.5 4.6"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M312 288c1.5-4.5-.6-13.5-.4-19.3.2-3.7-2.5-17.6-2.5-21.9l15-9.4s.7 15.3 2.5 32c1.5 8.5 1.5 16.3.4 22.8-1.6 9.3-3.2 13.1-7 17-6.6 7-20.9 3-20.9 3-12-2.6-19-10.2-19-10.2s4 1 10.3 1.6c14-1 19.4 2.5 19.8-11.8"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M271.6 297.4l-.2-.1c2.6 1 6.2 2 6.2 2l8.5.7c18.4.4 16.1-11 15.4-29.4-.2-7-1.6-15.8-1.2-18.9l12.3-7c4 11.3 2.8 19.3 3.6 25 .4 6.4 1.8 18.6-.3 24-2.8 12.4-12.6 11.9-25.7 10.8a31.7 31.7 0 01-10.1-2.3l-8.5-4.9"/>
+  <path fill="#007a3d" stroke="#000" stroke-width=".1" d="M271.4 297.1a37 37 0 006.3 2.3l8.6.9c13.3 1 21.1-8.3 19.4-29.5A66 66 0 00303 250l-7.3 4.3v.7c.4 2.2 1.4 7.5 1.4 9.9 0 17-10.7 30-25.4 32.3l-.2-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M320 246c-1.2 2-8.6 13.3-12.8 15.5m11.6-8.2c-1.2 2.1-10.3 14.9-14.4 15.6m16.5 3.9c-2 2.5-4.1 7.4-10.3 10.6m7.4 3.5c-4.2 4-14.4 12.4-24.4 12.8m24.4-6.4c-2 2.5-6.6 14.2-25.6 8.9m28.5-6.7c-1.2 2.8-10.7 18.4-27.7 12.3"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M301 282.5c1.6-4.6-.5-13.6-.3-19.4.2-3.7-1.5-16.5-1.5-20.8l14.1-10.5s.7 15.3 2.4 32c1.6 8.5 2.7 19 1.6 25.5-2 10.6-7 13.6-8 14.5-7.2 6.4-23.4 5.7-25 5.2-11.6-4.2-16.7-11.6-16.7-11.6s5.5 0 11.9.6c14-1 21-.4 21.4-14.7"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M260.7 291.8l-.2-.2c2.6 1 6.2 2.1 6.2 2.1l8.5.7c18.4.4 16.1-11 15.4-29.4-.2-7-.4-13.3 0-16.4l11-8c4 11.3 3 17.8 3.7 23.6.4 6.3 1.8 18.5-.3 23.8-2.8 12.5-12.5 12-25.7 10.9-6.6-.6-10-2.3-10-2.3l-8.6-4.9"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M260.4 291.6a36.8 36.8 0 006.3 2.3l8.6.8c13.3 1.2 21.2-8.2 19.5-29.4 0-7.5.2-8-2.4-18-4 2.6-11.9 9.3-11.9 9.3s2.1 3 1.6 7.2c0 17-6.8 25.7-21.5 27.9l-1.6-14"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M309.2 240.3a60.7 60.7 0 01-12.8 15.6m11.6-8.2c-1.3 2.2-10.4 14.9-14.5 15.6m16.5 3.9c-2 2.5-4.1 7.4-10.3 10.6m7.4 3.5c-4.1 4-14.4 12.4-24.3 12.8m24.3-6.4c-2 2.5-6.6 14.2-25.6 8.9m28.5-6.7c-1.2 2.8-10.7 18.4-27.7 12.3"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M324 238.9l.8 6.4c.3 4.7.1 8.2-.1 10.5 0 .2-.9 5.8-.6 6.1 1 1.3 1.1 1.4 2.3.5.1-.2-.5-6-.6-6.8l-.4-10.5c0-1.1-1-6.8-1-6.8s-.1-1.3-.3.6"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M324 238.9l.8 6.4c.3 4.7.1 8.2-.1 10.5l-.8 6.1c1.1 1.3 1.4 1.7 2.5.8a64 64 0 00-.6-7l-.4-10.6c0-1.1-1-6.8-1-6.8s-.1-1.3-.3.6z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M324.2 237s1.2 6.5 1.3 10.2c.2 4.5.4 5.8.3 8.5l.6 4.8c.1.7-.1.1 0 .2 1 .6 1.6.1 2.1-.3.2-.2-1.5-4-1.5-4.9-.9-11.4-2.6-18.2-2.6-18.2s.7 4.1-.2-.3"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M324.2 237s1.2 6.5 1.3 10.2c.2 4.5.4 5.8.3 8.5l.6 4.8c.1.7-.1.1 0 .2 1 .6 1.6.1 2.1-.3.2-.2-1.5-4-1.5-4.9-.9-11.4-2.6-18.2-2.6-18.2s.7 4.1-.2-.3zm.5 18.5s1 .4 1.1.2m0-1.4s-.8 0-1-.2m.1-1.2s.6.4.8.2m-.7-1.8h.5m-.6-1.6h.7m-.6-2.3s.4.2.4 0m-.5-1.9h.5m.5 10.2s1 .1 1.1-.2m-1.1-2s1 0 1-.2m-1-1.4h.7m-1-1.5h.8m-.7-1.8l.5-.1m-.7-1.5s.4 0 .5-.2m-.6-1.7s.4.3.4 0m0 9.6s1 0 1-.3"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M313.2 233.3l.7 6.4c.3 4.7.1 8.3 0 10.5 0 .2-1 5.8-.7 6.1 1.1 1.3 1.2 1.4 2.3.5.2-.2-.5-6-.5-6.8-.2-.8-.3-7.5-.5-10.5 0-1.1-1-6.8-1-6.8s-.1-1.3-.3.6"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M313.2 233.3l.7 6.4a70 70 0 010 10.5c0 .2-1.2 8-.8 6.1 1 1.3 1.3 1.7 2.4.8a64 64 0 00-.6-7l-.4-10.6c0-1.1-1-6.8-1-6.8s-.1-1.3-.3.6z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M313.3 231.4s1.2 6.5 1.4 10.2c.1 4.5.3 5.8.2 8.5l.6 4.8c.1.7 0 .2 0 .2 1 .6 1.6.1 2.2-.3.1-.2-1.5-4-1.6-4.9-.9-11.4-2.5-18.2-2.5-18.2l-.3-.3"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M313.3 231.4s1.2 6.5 1.3 10.2c.2 4.5.4 5.8.3 8.5l.6 4.8c.1.7 0 .2 0 .2 1 .6 1.6.1 2.1-.3.2-.2-1.5-4-1.5-4.9-.9-11.4-2.5-18.2-2.5-18.2l-.3-.3zm.5 18.5s1 .4 1.1.2m0-1.4s-.8 0-.9-.2m0-1.2s.7.4.8.2m-.7-1.8h.6m-.7-1.6h.7m-.6-2.3s.4.2.4 0m-.5-1.9h.5m.6 10.2s1 .1 1-.2m-1.1-2s1 0 1-.2m-1-1.4h.8m-1-1.5h.8m-.8-1.8l.5-.1m-.7-1.5s.5 0 .6-.2m-.7-1.7s.5.3.4 0m.1 9.6s1 0 1-.3m-11.3-23.4s-.5 5.4-.2 8.5c.4 3.8.3 4.9.7 7v4.3c-.9.5-1.6.2-2.2-.1-.2-.1 1-3.5 1-4.2-.4-9.5.5-15.3.5-15.3l.2-.2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M304.7 225.3s-.5 5.5-.2 8.6c.4 3.8.3 4.9.7 7v4.3c-.9.5-1.6.2-2.2-.1-.2-.1 1-3.5 1-4.2-.4-9.5.5-15.2.5-15.2l.2-.4zm.4 15.7s-1 .2-1.1 0m.8-1.8s-.9.1-1-.1m1-1.3h-.9m.8-1.2h-.7m.5-1.6h-.5m.5-1.3h-.5m.4-1.5s-.4.3-.4 0m1 8s-1 0-1-.2"/>
+  <path fill="#005000" stroke="#000" stroke-width=".1" d="M271 236.4h-1 1z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M259.5 273.5s.4-.2.5 0l-.2.2-.3-.2zm1 1.2l-2.2-.2"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M225.8 229.8c0-2.2 2-3.5 2.4-3.7 1-.7 1.7-1.3 4-1.6l.1.9c0 .4-.5 1.7-2.2 2.9a12.3 12.3 0 01-4.3 1.5z"/>
+  <path fill="#a05a2c" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M225.8 229l31.6 41 1.5-1.4-32.3-41.8-.8 2.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M225.3 221s3.4-.4 3-2.3c-.6-2-2.9-2-3.8-2-1 0-4.2.6-5 1.6-1 1-3 2.6-2.4 5.3a21.3 21.3 0 002.5 6.3c1 1.8.7 3.5.5 4.2-.1.3-.4 1.4.4 1.8 1.3.5 1.6.5 2.7-.7s2.6-3.1 2.6-5.4c0-2.2 2-3.5 2.4-3.7 1-.7 1.7-1.3 4-1.6 0 0-.9-1.3-2-1.2a9 9 0 01-5-2.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M225.3 221s3.4-.4 3-2.3c-.6-2-2.9-2-3.8-2-1 0-4.2.6-5 1.6-1 1-3 2.6-2.4 5.3a21.3 21.3 0 002.5 6.3c1 1.8.7 3.5.5 4.2-.1.3-.4 1.4.4 1.8 1.3.5 1.6.5 2.7-.7s2.6-3.1 2.6-5.4c0-2.2 2-3.5 2.4-3.7 1-.7 1.7-1.3 4-1.6 0 0-.9-1.3-2-1.2a9 9 0 01-5-2.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M225.3 221c-.5 0-1.9-.6-2.8-.3-1 .4-2.8 1.5-2.5 3.1m11-.2s-1.9.8-3.3 1.8a42 42 0 00-3.7 3.4c-1.1 1.1-1.4 2.6-3.7 4.2m9.5-9.7l-1.5 1.1c-.6.4-.8 1-1.3 1.4"/>
+  <path fill="#e8a30e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M285.7 303.1c.2 3.3 7.8 7 13.5.2 6-4.8 4.7-12.2 0-13.2l-58.3-56.8c-2.4-1.3-2.6-2.5-3.8-3.7-2.4 2.6-7.5 7.2-10.2 9.5 1.6 1.4 3 2.7 3.4 3.8l55.4 60.2z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M237 229.4c-2.8-3.8-13.6 6-10.7 9.2 2.9 3 13.3-5.4 10.7-9.2z"/>
+  <path fill="#cccccf" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M227.2 237.8c2 1.6 10-5 8.6-7.6-2.1-2.4-10.8 6.1-8.6 7.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M230.4 243c4.8-1.5 8.3-4.7 10.5-9.6m24.5 48a17.3 17.3 0 0012.2-12.5m-9.7 15.3a17.3 17.3 0 0012.2-12.4m2.3 27.5a19 19 0 0013-13M285 302.2a19.2 19.2 0 0013-13"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M299.4 304c.3 1.5 1 2 2.2 1.5m-14.7-2c2.3 3.6 4.9 2.5 7 2.5"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M302.5 304.2c0 1-.8 1.8-1.8 1.8a1.8 1.8 0 01-1.9-1.8c0-1 .9-1.8 1.9-1.8 1 0 1.8 1.1 1.8 2"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M299.2 303.9c.3 1.4 1 1.9 2.2 1.4m-14.5-1.9c2.3 3.7 4.9 2.6 7 2.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M277 187.2c1.9 3 4.7 8.5 5.4 12.7a24 24 0 01-7.5 22.3c-5.5 5-14 6.5-17.7 7.2-3.5.8-6.1 2-6.7 2.7 0-.6-.1-1.1.5-1.7 1.7-.7 4.4-1.2 8.3-2 7.7-1.6 15.8-4.5 20.2-12.9 5.8-11 2.4-19.7-2.6-28.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M279 220a.5.6 49.9 01-.6-.7.5.6 49.9 01.7.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M284.4 218.6c-1.2.7-2.3.9-3.2 1.2l-2.4.7-1.6.7c-.8.4-1.7 1.5-1.7 1.5s1.3 1.3 2.8 1.1c1.2-.1 1.8-.5 2.4-.8.7-.3.6-.6 1.6-1.3 1-.7 1.6-2.1 2-3.1zm-6 1.3c-.4.6-1.3.5-1.8.4l-.3.3c.7 0 1.7 0 2.1-.6v-.1z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M284.3 218.7a17.7 17.7 0 01-4.9 3c-2 .8-4.2 1-5.3 1l-.3.3a19.6 19.6 0 005.4-1.1 16 16 0 005.1-3.2zm-2.5 4.8c-2 0-3.2.6-5.2 1-1.7.4-3.9-.5-5 1.2 4.7 3 8 1 10.2-2.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M277.6 227.8c-1-.8-8.6-3.4-9.9-.5 1.9 2 7.2 2.5 9.9.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M275.7 229.8c-.8 0-1.7-.3-2.7-.4-.9 0-1.3-.2-2-.3-1.1-.2-2.4-1.8-6.4-.6 1.5 3.6 6.8 4.4 11.1 1.4zm1.8-2c-4.1.9-9 0-10.8-1l-.3.1a17.4 17.4 0 0011 1zm4.2-4.3c-2.4 1.6-5.5 2.9-12.1 2l-.2.2c9.2.8 10-.9 12.3-2.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M275.7 229.9c-3.2 0-5 1.5-11-1.4-.4-.3-1-.4-1.4-.6l-.6.2c.4.2 1 .2 1.5.3 7.4 3.3 7.2 1.8 11.5 1.5z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M263.7 225.7a.5.6 66.2 10.5.8.5.6 66.2 10-.5-.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M263.6 226.4c-.7.2-.9 1-1 1.5l-.3.1c.2-.6.5-1.5 1.2-1.8l.1.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M283.6 199.3a.5.6 15.8 11-.9-.3.5.6 15.8 011 .3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M279 216.7c0-2.2-1.2.9-3.3-4.1-.7-1.5-.7-2.4-1.1-4.6 1.2 2 3.2 2.4 4 3.9.8 1.4.6 3.7.5 4.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M274.6 208.2s1.1 2.5 2.7 4.3c1.5 1.8 1.8 4 1.8 4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M275.7 210.3c1.4 1.9 3.2 4 3.3 6.4h.2c-.3-3-2.1-4.4-3.2-5.9l-.3-.5zm11.6 2.9c-1 .8-2 1.1-3 1.5-.5.3-1 .8-1.5 1-.3.2-.9.2-1.4.6-.7.4-2.2 2.1-2.2 2.1s1.4 1.2 2.3 1c2.5-.5 3.2-1.5 4.5-2.4 1-.8 1-2.7 1.3-3.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M278 218.5l-.2.3c1.5-.1 3.8-1.5 5.3-2.3 2-1 3.2-1.8 4-3.3a9.5 9.5 0 01-4.1 3.3c-1.6.8-4 2.1-5 2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M288.1 208.3c-.8 1-1.8 1.4-2.5 2l-1.4 1.2c-.3.2-.9.4-1.3.8-.6.6-1.6 2.3-1.6 2.3s.7.7 1.5.4c2.5-.3 3.3-1.5 4.2-3.7.5-1 1-1.9 1.1-3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M279 212.8a.6.5 62 10.8-.4.6.5 62 00-.8.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280 215l-.2.4c3-1.4 7-4.2 8.4-7-1.9 3-5 5-8.2 6.6zm8.8-11.4c-.7 1-1.6 1.6-2.3 2.1l-1.2 1.3-1.1.9c-.6.6-1.4 2.4-1.4 2.4s1 .8 1.7.5c.8-.4 1.8-1.3 2.3-1.7.5-.5.6-1.6 1.2-2.4.7-1 .8-2 .8-3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M286.6 206.8a15.4 15.4 0 01-5 4v.4c2.7-1.6 3.8-3 5-4.4zm1.2-6c-.5 1-1.3 1.5-1.8 2.1l-1 1.3-.9.9c-.4.6-.8 2.3-.8 2.3s.6.6 1.2.2a12.5 12.5 0 002-1.8c.4-.4.6-1.5 1-2.3a4 4 0 00.3-2.8zm-4.7-1.2c-.3.5-.4 1.1-.5 1.7l-.1-.4c.1-.5.2-1 .5-1.4h.1z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M286.3 203.8a13.8 13.8 0 01-4 4.2l-.1.3c2.3-1.7 3.2-3.1 4.1-4.5zm-6 10.5a3.5 3.5 0 00-.6-1.4h-.1c.3.6.4 1 .5 1.7l.2-.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M279.4 193.4a.5.3 39.5 01-.6.5.5.3 39.5 01.6-.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280.7 194.7a10 10 0 00-1.3-1c0 .1-.1.1 0 .2l1.4 1-.1-.2zm5.9.4c-1.2 2.5-4.1 4.3-3 8 3 2.7 3.2-4.8 3-8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M283.8 189.5c-.5 2.6-2.8 4.8-1.3 8.2 4.3 1 2.3-4.7 1.3-8.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M281.3 185.6c2.1 4 2.7 6.3.1 8.9 0 0-1.3-1.3-1.6-3.5-.3-2 1.3-4.3 1.5-5.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M277.8 183.3c.5 2.5-1.6 3.7 1.5 7 2.2-2.7 1.1-3.4-1.5-7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M277 187.7c-3.7.4-2.3-2.7-3.3-5.6 2.1 1.6 5 2.2 3.2 5.6zm2.3 4.8c-1-4.7-4.3-2.9-6-5 .9 3 2.2 5.1 6 5zm1.4 4.3c-2.8-.2-5-1.5-6.6-4.6 3 1.2 6.1 1.4 6.6 4.6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M281.1 200.9c-1-1.3-1-2.1-1.5-3a9.6 9.6 0 00-3.3-3.9c0 3.3.5 7 4.8 6.9z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M281.8 204.3a21.5 21.5 0 00-6-6c1.1 2.3.6 6.6 6 6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M281.3 209.1c-5.3-.1-4.8-5.1-4.8-7.5 1 1.5 2.1 2.7 3 3.7 1 1.2 1.8 2.4 1.8 3.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280.7 212c-.5-1-.1-1.4-1-2.4-1.1-1-3-2.8-4-5-.2 2-.2 4.8 1.2 5.7 1 .8 2 1 3.8 1.8zm-4.6 7.8c-4.2-3.2-1.7-6-1.4-8.4 1.1 2.8 4 5.1 1.4 8.4zm1.6-31.1a59 59 0 00-3.9-6.5c2 3 3 4.9 4.1 6.9"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M276.1 220.6c.2-3.3-.7-6.1-1.3-9 .6 3 1.3 6.2 1 9.3l.3-.3zm5-7.9c-.5-2-4.5-3.3-5.4-8 .8 4.7 4.8 5.8 5.2 8.5l.1-.4zm.8-2.7v.5c-.7-3.1-4.4-4.7-5.4-8.9 1.5 4.6 4.5 5.2 5.4 8.4zm.8-4.7c-1.9-2.8-4.4-3.8-6.8-7 2.2 3.1 5 4.6 6.8 7.4v-.4zm-.1-3.6c-2-1-4-3.3-6.3-7.7 1.5 3.3 3.3 6.2 6.3 8.1v-.5zm-.9-4.3c-2.4-1.9-5.4-3.1-7.6-5.3 1.8 2 5.3 3.5 7.6 5.6v-.3zm-1.8-4.6c-2.4-1.6-4.7-2.1-6.6-5.2 1.5 3 4 3.8 6.6 5.4v-.2zm6.7 2.3c-.9 3.3-1.6 6.8-3.8 9v-.5c1-.5 2.6-4 3.8-8.5zm-2.7-5.5c-.2 3.4-.1 7-1.9 9l-.1-.5c1.8-1.4 1.6-5.2 2-8.5zm-2.4-3.8c.6 3 .6 5.7-.2 10.2l-.2-.4c.5-2.6 1-5.3.4-9.8zm-3.7-2.4c1.2 2.5 2.2 5.1 1.4 7.8l-.2-.3c.9-2.5-.2-5-1.2-7.5zm-4.6 33.3c1.4 3.4-.4 5.9-2.7 7.3-1.7-5 1.9-4.4 2.7-7.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M273.3 216.7c.2 2-2 4.5-2.8 8l-.3.3c1-4.3 3.3-6 3-8.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M281.3 193.3a.3.5 1.9 11-.7-.1.3.5 1.9 01.7.1z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M281.1 195.2v-1.7h-.2v1.9l.2-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M280.3 193a.3.4 2 01-.5.2.3.4 2 01.5-.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280.7 194.5a8.2 8.2 0 010 .3v-.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M282.4 199.3a.5.3 80.5 01-.7 0 .5.3 80.5 11.7 0z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M282.5 201.2a9.9 9.9 0 00-.4-1.6l.3 1.8.1-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M281.2 199.7a.5.3 57 11-.5.5.5.3 57 01.5-.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M282.4 201.2a8.8 8.8 0 010 .3v-.4z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M281 212.4a.3.5 12.7 11-.7-.3.3.5 12.7 01.6.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280.4 214.2l.2-1.6h-.1a9.5 9.5 0 01-.3 1.8l.2-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M281.6 213.2a.3.5 50.5 00.5.5.3.5 50.5 10-.5-.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M280.2 214.5l1.4-1v.2a9.4 9.4 0 00-1.4 1v-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M278.1 218.6a.3.5 40.4 01-.5-.6.3.5 40.4 01.5.6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M276.8 219.9a10 10 0 001-1.3h-.2l-1 1.4.2-.1z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M276.1 218.2a.5.6 10 001 0 .5.6 10 10-1 0z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M276.7 218.7c-.3.7-.1 1 0 1.2l-.1.4c-.2-.4-.3-.8-.1-1.6h.2zm-13 10c-.7.1-1-.3-1.2-.7h-.4c.4.5.8 1 1.6 1v-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M263.8 229.5a.6.5 9.5 01.2-.9.6.5 9.5 11-.2.9z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M269.5 219.8a5.9 5.9 0 01-4.2 6.8c-1-4.2 3-4.4 4.2-6.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M269.6 219.8a23 23 0 01-5.1 7.7h-.6a20 20 0 005.7-7.7z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M264.3 227.5a.5.4 9.8 01-.4-.8.5.4 9.8 11.4.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M262.3 228a8.6 8.6 0 001.6-.7h-.2l-1.7.7h.3zm2.8-5.3c-.1 1.3-1.2 2.5-2.1 3.5-1 .9-1.1 1.2-2.4 1.6-1.4-3 3-3.5 4.5-5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M265.1 222.7c-1.5 2.7-3.8 4-5 5.8h-.2c1.8-2.4 3.3-2.9 5.2-5.8zm-30-35.5c-1.9 3-4.7 8.5-5.4 12.7a24 24 0 007.5 22.3c5.5 5 14 6.5 17.7 7.2 3.5.8 6.1 2 6.7 2.7 0-.6.1-1.1-.5-1.7-1.7-.7-4.4-1.2-8.3-2-7.7-1.6-15.8-4.5-20.3-12.9-5.7-11-2.3-19.7 2.7-28.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M249.7 227.8c-.2.5-4.3 4-8 3.7-2.6-.2-3-.8-3-.8s-.3-.7 2-1.2c2.5-.5 6.7-2.1 9-1.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M238.8 230.7c2.8.3 5.8-.8 8-1.7"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M246.6 222.6a11 11 0 014.9 4c1 1.6.8 2 .8 2s-.3.3-1.4-1c-1.2-1.4-3.6-3.6-4.3-5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M252.3 228.5c-1-1.8-2.7-3.3-4-4.5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M235 187.6c-.1-.4.3-3.7 2.1-4.7 1.4-.8 1.9-.6 1.9-.6s.4.3-.5 1.4c-1 1-2.3 3.3-3.6 3.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M239 182.3c-1.6.8-2.5 2.4-3.2 3.7"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234 189.3c-.2-.3-1-3.2-.2-5 .6-1.5 1-1.6 1-1.6s.3 0 .1 1.4c-.2 1.4-.2 4-.9 5.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M234.7 182.8c-.7 1.5-.7 3.3-.7 4.7"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234 189.3a9 9 0 004.1-2.2c1-1.1.9-1.4.9-1.4s-.1-.2-1.2.6c-1 .8-3 2-3.8 3z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M239 185.7c-1 1.2-2.5 2-3.6 2.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232.7 191.6c-.1-.3-1.4-3.4-.9-5.6.3-1.6.7-1.8.7-1.8s.3 0 .3 1.5c0 1.6.3 4.5 0 5.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M232.5 184.3c-.5 1.7-.2 3.7 0 5.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231.8 193.7c-.3-.2-2.4-3.1-2.2-5.6.1-1.8.5-2 .5-2s.5-.2.7 1.5c.3 1.6 1.3 4.5 1 6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M230.1 186.1c-.2 2 .5 4 1 5.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230.6 196.4a10 10 0 01-2.5-5c-.2-1.7 0-2 0-2s.3 0 .8 1.4c.5 1.5 1.7 4.2 1.7 5.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M228.2 189.5c0 1.8 1 3.7 1.6 5.1"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232.8 191.6c.3 0 3.4-.3 4.8-1.8 1-1.2 1-1.6 1-1.6s-.1-.3-1.3.4c-1.3.8-3.7 1.9-4.5 3z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M238.6 188.3c-1.1 1.2-2.8 2-4.2 2.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231.8 193.7c.2 0 3.4 0 5-1.5 1-1 1-1.5 1-1.5s-.1-.3-1.4.4c-1.2.7-3.7 1.6-4.6 2.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M237.8 190.8c-1.2 1.2-3 1.8-4.3 2.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230.8 196.4c.3.1 3.6-.1 5.2-1.8 1.2-1.1 1.1-1.6 1.1-1.6s-.1-.4-1.4.4c-1.4.8-4 2-5 3z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M237 193c-1.1 1.4-3 2.2-4.4 2.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231.3 195.2s-.3-.6-.3-1.1l.1-.9h-.2l-.1.8v.3l-.5-.5-.2-.4h-.1l.3.7c.5.4.8 1.2.8 1.2"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230 192.3a.6.4 83.5 11.1 1.2.6.4 83.5 11-.1-1.2z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231.3 192.3a.4.6 19.3 11-.4 1.1.4.6 19.3 11.4-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231.2 195.2l1-.7.4-.8h.2l-.5.8-.2.3.7-.1.4-.3.1.2-.7.3c-.6 0-1.4.4-1.4.4"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234 193.7a.4.6 45.6 10-.8.9.4.6 45.6 10.8-.8z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M233 192.9a.4.6 19.8 10-.4 1.1.4.6 19.8 10.4-1.1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.8 199.3a11 11 0 01-3-5c-.3-1.8 0-2 0-2s.3-.2.8 1.3c.7 1.5 2 4.2 2.2 5.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M226.8 192.3c.2 1.9 1.2 3.8 2 5.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230 199.3c.3.1 3.8-.4 5.3-2.2 1.1-1.3 1-1.7 1-1.7s-.1-.4-1.4.5c-1.4 1-4 2.2-5 3.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M236.3 195.4c-1.2 1.5-3 2.4-4.5 3.1"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.5 202.3c.3 0 3.8-1 5.4-2.9 1.2-1.3 1-1.7 1-1.7s0-.3-1.4.7-4 2.6-5 3.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M236 197.8c-1.3 1.4-3.2 2.5-4.6 3.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.4 202.3c-.3-.1-3.6-2.4-4-4.9-.4-1.8 0-2.1 0-2.1s.4-.3 1.1 1.3c.8 1.5 2.8 4 3 5.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M225.4 195.4a12 12 0 002.7 5.1"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.5 206c.3-.1 3.6-1.8 5-4 .9-1.5.7-2 .7-2s-.2-.2-1.4 1.1c-1.1 1.3-3.6 3.4-4.3 4.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M235.2 200.2c-1 1.7-2.7 3.2-4 4.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.4 206c-.4 0-3.9-1.7-4.8-4.2-.6-1.8-.4-2.2-.4-2.2s.4-.3 1.4 1.1c1 1.5 3.4 3.8 3.8 5.4z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M224.3 199.7c.6 2 2.2 3.6 3.5 4.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.4 204.4s-.5-.6-.6-1.1c-.2-.6 0-1 0-1h-.4l.2 1v.3c.3.4-.4-.3-.6-.4l-.3-.5-.2.2.6.6c.6.3 1.2 1 1.2 1"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M227.2 201.7a.6.4 69.4 11.5 1.2.6.4 69.4 11-.5-1.2z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M228.6 201.3a.4.6 5.2 11-.1 1.3.4.6 5.2 11.1-1.3z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.4 204.3s.5-.4.8-1c.3-.5.3-.8.3-.8h.2l-.3.8a4.2 4.2 0 01-.1.4l.7-.3.4-.4.1.2-.6.5c-.7.2-1.4.8-1.4.8"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232 202a.4.6 31.5 10-.6 1.2.4.6 31.5 10.6-1.1zm-1.3-.5a.4.6 5.7 10-.1 1.2.4.6 5.7 10.1-1.2z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.8 209.3c-.4 0-4-1.9-5.5-4.3-1-1.8-.9-2.2-.9-2.2s.3-.4 1.6 1c1.3 1.5 4 3.9 4.8 5.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M223.5 202.8c1 2 3 3.6 4.4 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230 209.2c.4 0 4.3-2 5.2-4.6.8-2 .4-2.4.4-2.4s-.4-.4-1.5 1.2c-1.1 1.5-3.6 4-4 5.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M235.6 202.3c-.7 2.1-2.5 3.9-3.8 5.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M231 212.5c.4 0 4-2.3 4.9-5 .6-2 .3-2.5.3-2.5s-.3-.3-1.3 1.4c-1.1 1.6-3.5 4.4-3.9 6.1z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M236.2 205.1c-.6 2.2-2.3 4-3.5 5.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M230.8 212.5c-.5 0-5-1.3-6.7-4-1.1-2-.9-2.6-.9-2.6s.4-.5 1.9 1c1.6 1.5 4.8 3.8 5.7 5.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M223.3 206c1.1 2.2 3.4 3.8 5.2 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234.8 219.4a12 12 0 003-6c.1-1.9-.2-2.2-.2-2.2s-.4-.1-.9 1.6c-.5 1.8-1.9 5-1.9 6.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M237.6 211.3c0 2.1-1 4.3-1.8 6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234.6 219.3c-.4.2-5.6 0-8-2.2-1.9-1.7-1.8-2.4-1.8-2.4s.3-.5 2.3.5c2 1.1 6.1 2.5 7.5 4.1z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M224.9 214.8c1.9 1.9 4.7 2.9 7 3.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232.7 216.6c-.4 0-5-1-7.3-3.4-1.6-1.7-1.5-2.2-1.5-2.2s.2-.4 2 .9c1.9 1.2 5.5 3.1 6.8 4.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M224 211c1.6 2 4.2 3.3 6.2 4.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M233 216.5c.3-.2 3.8-3 4.2-6 .2-2.1-.2-2.6-.2-2.6s-.5-.2-1.2 1.6c-.8 1.9-2.8 5-2.8 7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M237 208c-.2 2.4-1.6 4.6-2.7 6.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232 214.9s-.8-.3-1.2-.9c-.4-.5-.5-.9-.5-.9h-.3l.5 1 .3.3-.8-.1-.6-.4v.3s.5.4.8.4a4 4 0 011.6.5"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M228.5 213.1a.7.5 45.9 111 1 .7.5 45.9 11-1-1z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M229.8 212.1a.7.5 71.6 11.4 1.4.7.5 71.6 11-.4-1.4z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232 214.9s.4-.8.5-1.4c0-.7-.2-1-.2-1l.3-.2v1.5l.6-.6.3-.6.2.1s-.2.7-.4.9a4 4 0 00-1 1.4"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M233.7 211.4a.5.7 8 10-.2 1.4.5.7 8 10.2-1.4z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M232.1 211.3a.7.5 72.2 10.5 1.4.7.5 72.2 10-.5-1.4z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M236.6 221.4c-.4.2-4.6 1.2-7.3-.2-2-1-2-1.6-2-1.6s0-.5 2 0c2 .4 5.6.8 7.3 1.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M227.3 219.7c2.1 1.1 4.7 1.4 6.7 1.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M236.8 221.4c.2-.2 2-2.8 2-5.2 0-1.8-.4-2.1-.4-2.1s-.3-.2-.6 1.4c-.3 1.6-1.2 4.3-1 5.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M238.4 214.2c.2 1.9-.5 3.8-1 5.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M240.6 224.4c-.4.2-5.5 1.5-8.5.2-2.3-1-2.4-1.5-2.4-1.5s0-.6 2.4-.2c2.3.4 6.6.4 8.5 1.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M229.8 223.1c2.4 1.1 5.4 1.2 7.8 1.3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M240.8 224.3c.2-.3 1.3-4 0-6-1-1.4-1.5-1.4-1.5-1.4s-.5.1-.1 1.7c.4 1.6.6 4.6 1.6 5.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M239.3 217c1.1 1.4 1.3 3.6 1.4 5.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M238.2 222.6s-.6.4-1.3 0c-.6-.3-.9-.7-.9-.7l-.3.2a10 10 0 001.4 1l-1 .2-.6-.2v.3l1 .1 1.6-.5"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M234.1 222.7a.8.6 24.1 111.5.6.8.6 24.1 11-1.5-.7z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M235 221a.8.6 49.9 111 1.3.8.6 49.9 11-1-1.3z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M238.3 223s.6-.6.2-1.3a2.8 2.8 0 00-.7-1l.2-.3.7 1 .2.5.3-1a17.5 17.5 0 000-.6h.2v1c0 .3-.6 1.6-.6 1.6"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M238.6 218.8a.8.6 69.5 10.6 1.5.8.6 69.5 10-.6-1.5zm-1.6.8a.8.6 43.7 101.1 1.2.8.6 43.7 10-1.1-1.2z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M243.5 226c-.2.3-4.5 3.1-7.8 2.4-2.5-.5-2.8-1.1-2.8-1.1s-.2-.6 2-.8c2.4-.2 6.5-1.2 8.6-.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M233 227.3c2.6.7 5.5 0 7.7-.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M246.2 226.7s-.5.8-1.4.6c-.9-.2-1.3-.5-1.3-.5l-.3.3 1.4.5h.5s-.6.6-1 .6l-.7.2v.3l1.2-.3c.3 0 1.6-1.2 1.6-1.2"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M241.7 228.3a1 .6 5.4 111.8.2 1 .6 5.4 11-1.8-.2zm.4-2a1 .6 31.2 111.6.9 1 .6 31.2 11-1.6-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M244.8 226.4c.2-.4.8-4.2-1-6-1.3-1.3-2-1.2-2-1.2s-.5.2.2 1.7c.8 1.5 1.5 4.5 2.8 5.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M242 219.3c1.4 1.3 2 3.4 2.3 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M246.8 227.3s.2-.9-.5-1.4c-.7-.6-1.2-.7-1.2-.7v-.3l1.3.6.4.4s0-.8-.2-1.1a20 20 0 00-.4-.7l.3-.2.6 1.1.1 2"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M245 222.9a1 .6 42.7 101.4 1.2 1 .6 42.7 10-1.4-1.2zm-1.3 1.7a1 .6 17 101.8.5 1 .6 17 10-1.8-.5z" overflow="visible" style="marker:none"/>
+  <path fill="#452c25" d="M255 223s-2.5 5.7-1.6 6.3c0 0 2.5-4.5 4.8-6.2 1.1-1.1 1.8 0 2-1 .1-1-3-2.3-3-2.3l-2.1 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M255 223s-2.5 5.7-1.6 6.3c0 0 2.5-4.5 4.8-6.2 1.1-1.1 1.8 0 2-1 .1-1-3-2.3-3-2.3l-2.1 2.9"/>
+  <path fill="#452c25" d="M246 227.3s-3.7 6.4-2.7 6.4c1 .1 4.8-8 4.8-8l-1.3.2-.9 1.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M246 227.3s-3.7 6.4-2.7 6.4c1 .1 4.8-8 4.8-8l-1.3.2-.9 1.4z"/>
+  <path fill="#452c25" d="M247 225.6s-3.8 6.2-2.8 6.3c1 0 5-8 5-8l-1.3.3-.9 1.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M247 225.6s-3.8 6.2-2.8 6.3c1 0 5-8 5-8l-1.3.3-.9 1.4z"/>
+  <path fill="#452c25" d="M247.8 224.5s-4.3 5.8-3.4 6c1 .2 5.7-7.4 5.7-7.4h-1.3l-1 1.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M247.8 224.5s-4.3 5.8-3.4 6c1 .2 5.7-7.4 5.7-7.4h-1.3l-1 1.4z"/>
+  <path fill="#452c25" d="M249 223.5s-5.1 5.2-4.2 5.5a35 35 0 006.7-6.6l-1.4-.1-1.1 1.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249 223.5s-5.1 5.2-4.2 5.5a35 35 0 006.7-6.6l-1.4-.1-1.1 1.2z"/>
+  <path fill="#452c25" d="M249.1 221.6s-4.4 5.8-3.4 6c.9.2 5.8-7.4 5.8-7.4h-1.3l-1 1.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249.1 221.6s-4.4 5.8-3.4 6c.9.2 5.8-7.4 5.8-7.4h-1.3l-1 1.4z"/>
+  <path fill="#452c25" d="M248 226.5s-4.3 5.9-3.4 6c1 .3 5.7-7.4 5.7-7.4l-1.3.1-1 1.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M248 226.5s-4.3 5.9-3.4 6c1 .3 5.7-7.4 5.7-7.4l-1.3.1-1 1.3z"/>
+  <path fill="#452c25" d="M250.4 225.4s-2.5 4.7-2.2 5a17 17 0 004.9-5.6c1.5-2.8-2.8.5-2.8.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.4 225.4s-2.5 4.7-2.2 5a17 17 0 004.9-5.6c1.5-2.8-2.8.5-2.8.5"/>
+  <path fill="#452c25" d="M250.7 225s-2.5 5.7-1.6 6.3c0 0 3.1-3.5 4-6.3.7-2.8 0-.2 0-.2l-.3-3-2 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M250.7 225s-2.5 5.7-1.6 6.3c0 0 3.1-3.5 4-6.3.7-2.8 0-.2 0-.2l-.3-3-2 2.9"/>
+  <path fill="#452c25" d="M249.4 224.4s-5 5.2-4.1 5.5c.9.3 6.6-6.6 6.6-6.6h-1.3l-1.2 1.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249.4 224.4s-5 5.2-4.1 5.5c.9.3 6.6-6.6 6.6-6.6h-1.3l-1.2 1.1z"/>
+  <path fill="#452c25" d="M249.8 225.1s-5 5.2-4.1 5.5c.9.3 6.6-6.5 6.6-6.5l-1.3-.2-1.2 1.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249.8 225.1s-5 5.2-4.1 5.5c.9.3 6.6-6.5 6.6-6.5l-1.3-.2-1.2 1.2z"/>
+  <path fill="#452c25" d="M250.2 226s-5 5.1-4.1 5.4c.9.4 6.6-6.5 6.6-6.5l-1.3-.2-1.2 1.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.2 226s-5 5.1-4.1 5.4c.9.4 6.6-6.5 6.6-6.5l-1.3-.2-1.2 1.2z"/>
+  <path fill="#452c25" d="M250.6 218.8s-3.8 4.8-3.2 5.6c.5.9 4-2.2 5-4.3 1.1-2.1-1.8-1.5-1.8-1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.6 218.8s-3.8 4.8-3.2 5.6c.5.9 4-2.2 5-4.3 1.1-2.1-1.8-1.5-1.8-1.5"/>
+  <path fill="#452c25" d="M250.5 223.9s-3.3 6.2-2.4 5.8c.8-.3 4-5 4.4-6 .4-1 .3-2.1.3-2.1l-2.5 1.5.2 1.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.5 223.9s-3.3 6.2-2.4 5.8c.8-.3 4-5 4.4-6 .4-1 .3-2.1.3-2.1l-2.5 1.5.2 1.2"/>
+  <path fill="#452c25" d="M250.5 221.9s2.7-5 0 .9c-2.7 5.8-3.7 4.9-3.7 4.9-.2-.4 2.3-4.3 2.3-4.3s2-3 2.4-3.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.5 221.9s2.7-5 0 .9c-2.7 5.8-3.7 4.9-3.7 4.9-.2-.4 2.3-4.3 2.3-4.3s2-3 2.4-3.3"/>
+  <path fill="#452c25" d="M253.4 221.2s3-4.9 0 1c-3 5.7-4.2 4.8-4.2 4.8-.2-.4 2.6-4.3 2.6-4.3s2.1-3 2.6-3.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M253.4 221.2s3-4.9 0 1c-3 5.7-4.2 4.8-4.2 4.8-.2-.4 2.6-4.3 2.6-4.3s2.1-3 2.6-3.3"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M252.3 219.2s-3.8 4.8-3.2 5.6c.5.8 4-2.2 5-4.3 1.1-2.2-1.8-1.5-1.8-1.5"/>
+  <path fill="#e8a30e" d="M291 267.8a35 39.4 0 11-70 0 35 39.4 0 1170 0z"/>
+  <path fill="none" stroke="#390" stroke-width=".9" d="M228 267.8c0-18.3 12.8-32.3 28-32.3s28 14 28 32.3" color="#000" font-family="Sans" font-weight="400" overflow="visible" style="line-height:normal;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration-line:none;text-transform:none;block-progression:tb;marker:none"/>
+  <path fill="#007934" stroke="#eee" stroke-width=".1" d="M221 269.9c1 20.8 16.3 37.3 35 37.3s34-16.5 35-37.3h-70z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M291 267.8a35 39.4 0 11-70 0 35 39.4 0 1170 0z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M250.1 240.4c-.3 1.5 0 2.7.8 3.9a5 5 0 011 2.9 8.4 8.4 0 00-.8.4l-6-3.9 4 5.9a8.6 8.6 0 00-.2.3 5.2 5.2 0 00-3.2-.4 5.3 5.3 0 01-3.9-.8 4.8 4.8 0 003.3 2.2c1 .2 2 .6 2.7 1.4l-.2.8-7 1.4 7 1.4a9 9 0 00.1.3 5.2 5.2 0 00-2.5 2 5.3 5.3 0 01-3.4 2.2c1.5.4 2.8 0 4-.8.8-.5 1.8-1 2.8-.9l.5.7-4 6 6-4 .2.2a5.2 5.2 0 00-.4 3.2 5.3 5.3 0 01-.8 3.9 4.8 4.8 0 002.2-3.3 5.2 5.2 0 011.4-2.7l.9.2 1.4 7 1.3-7h.4a5.2 5.2 0 002 2.5 5.3 5.3 0 012.2 3.3 4.8 4.8 0 00-.8-4 5.2 5.2 0 01-1-2.8l.8-.5 6 4-4-5.9a8.6 8.6 0 00.2-.3 5 5 0 003.2.4 5.3 5.3 0 013.9.8 4.8 4.8 0 00-3.4-2.2 5.2 5.2 0 01-2.7-1.4l.2-.9 7-1.4-7-1.3a8.3 8.3 0 000-.4 5.2 5.2 0 002.5-2 5.3 5.3 0 013.3-2.1 4.8 4.8 0 00-3.9.7 5.2 5.2 0 01-2.8 1 8.4 8.4 0 00-.5-.8l4-5.9-6 4a8.6 8.6 0 00-.2-.2c.5-1.2.6-2.2.4-3.2a5.3 5.3 0 01.8-4 4.8 4.8 0 00-2.2 3.4 5.2 5.2 0 01-1.4 2.7 8.5 8.5 0 00-.9-.2l-1.4-7-1.3 7h-.4a5.2 5.2 0 00-2-2.5 5.3 5.3 0 01-2.2-3.3z" overflow="visible" style="marker:none"/>
+  <use width="330" height="330" fill="#fcbf49" stroke-width="1.1" transform="rotate(22.5 -488.5 805) scale(.15213)"/>
+  <use width="330" height="330" fill="#fcbf49" stroke-width="1.1" transform="matrix(-.15213 0 0 .15213 270.9 248.2)"/>
+  <path d="M262.2 252.5c-1.7-1.5-4-1.8-5.1-.6-1 1.2-.8 2.5.2 4a.6.6 0 00-.3.2 5.2 5.2 0 01-.4-4.4c1.7-1.3 4-1.5 5.6.8"/>
+  <path d="M259.5 252c-1 0-1.2.3-1.7.6-.4.4-.7.3-.7.4-.1 0 0 .3.1.2.2 0 .5-.2 1-.6s.8-.3 1.3-.3c1.4 0 2.1 1.1 2.3 1 .1 0-.8-1.3-2.3-1.3"/>
+  <path d="M261.3 253.3c-1-1-2.9-1.1-3.6.1h.3c.7-1.2 2.6-.7 2.7-.2v.2"/>
+  <circle cx="259.4" cy="253.3" r=".7"/>
+  <path d="M257.7 253.4c.7.7 2.4.8 3.6 0l-.6-.2c-.7.9-2 .8-2.7.2v-.2"/>
+  <path d="M261.3 253.7c-1.3 1-2.6 1-3.3.5-.8-.5-.8-.6-.6-.6l.9.4c.6.3 1.5.3 3-.3m-3.7 2.3a.5.5 0 11-.6.4c0 .2-.4.6-1 .6h-.1l.1.3c.1 0 .6 0 1-.2a.7.7 0 10.6-1.1m1 3.2c-.8-.5-1-1.2-1.8-1.2a2 2 0 00-.8.3h-.1l.1.2c.3 0 .8-.4 1.3 0l1.2.7m-.2 0c-1.5-.5-1.8-.2-2.3-.2h-.1l.1.3c.6 0 1-.4 2.3-.1"/>
+  <path d="M258.5 259.2c-1.7-.2-1.1.8-2.5.8h-.1l.1.2c1.7 0 1-.9 2.5-1m-8.7-6.7c1.7-1.5 4-1.8 5.1-.6 1 1.2.8 2.6-.2 4 0 0 .2 0 .3.2a5.2 5.2 0 00.4-4.4c-1.7-1.3-4-1.5-5.6.8"/>
+  <path d="M252.5 252c1 0 1.2.3 1.7.6.4.4.7.3.7.4.1 0 0 .3-.1.2-.2 0-.5-.2-1-.6s-.8-.3-1.3-.3c-1.4 0-2.1 1.1-2.3 1-.1 0 .8-1.3 2.3-1.3"/>
+  <path d="M250.8 253.3c1-1 2.8-1.1 3.5.1h-.3c-.7-1.2-2.6-.7-2.7-.2v.2"/>
+  <circle cx="-252.7" cy="253.3" r=".7" transform="scale(-1 1)"/>
+  <path d="M254.3 253.4c-.7.7-2.4.8-3.5 0l.5-.2c.7.9 2 .8 2.7.2v-.2"/>
+  <path d="M250.7 253.7c1.3 1 2.6 1 3.3.5.8-.5.8-.6.6-.6l-.9.4c-.6.3-1.5.3-3-.3m3.7 2.3a.5.5 0 10.6.4c0 .2.4.6 1 .6h.2l-.2.3c-.1 0-.6 0-1-.2a.7.7 0 11-.6-1.1m-1 3.2c.8-.5 1-1.2 1.8-1.2l.8.3h.2l-.2.2c-.3 0-.8-.4-1.3 0l-1.2.7m.2 0c1.5-.5 1.8-.2 2.3-.2h.1l-.1.3c-.6 0-1-.4-2.3-.1"/>
+  <path d="M253.5 259.2c1.7-.2 1.1.8 2.5.8h.1l-.1.2c-1.7 0-1-.9-2.5-1"/>
+  <path fill="#007934" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M259.4 275.6c1.7.3 3.5.2 5-.3a10.5 10.5 0 014.6-.6c0-.2.4-.4.2-.6-.6-.3-1.3-.3-2-.6-1.1-.5-1.8-1.4-3-2 0-.1-.5-.4-.5-.7 2.3 3.4 8 1.7 12.7 1.3.5.1 1.6-.2 2.6-.5 1.2-.4 4 0 4.7-.6l-1.5-1c-.6-.9-2.4-.8-3.2-1.7-1.4-1.5-3.5-2-5.1-3.2-.4-.2-1.2-.1-1.7-.3-.7-.5 0-.5-5.4-4.9-4.8-2-4.5-3.5-7.5-4.6-1-.6-2-1.5-3-1.2-1.5.4-5 2.2-6.6 3l-4 3.1c-.3.3-3.7 3.1-7.5 5.2a121 121 0 01-9.9 5c8.7-.4-7.7 2.5 31.1 5.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M238.2 265.7a59 59 0 0013.2-9c-.4 0 .7 1 .6 1.4.8 0 .4-1 1-1s1-.2 1.4-.3c.5-.1.2.2.2.4-.7 1.3-2.2 2-3.4 3 .1.2.3.3.2.4.4.1 1 .1 1.2-.1l.1-.4c.5.2.3.5.1.8-.3.7-1.5.6-2 1.2a6.6 6.6 0 01-1.5 1.7c.5-.4 1.1-1 1.8-1 1-.1 1.4-.8 2.3-1 1-.2 1.6-1 2.4-1.6-.3.5-1 .9-.7 1.4a.6.6 0 00.6.1c-.7.9-2.1 1.6-2.6 2.6-.4-.1-.7.2-1 .2-.5.2-.4.9-.7 1-1.2.8-1.9 2-2.4 3l-1.5.8c-.7.2-4.9 3.5-5 3-.3-2.2-4.6 1.8-14.1-1.6m32.6-.1l-.2-.2c.1-.3-.5-.4-.5-.7 1 0 2 1.3 2.6.5.2-.1-.3-.4.4-.6.2 0-.1-.2 0-.3h-1l-.8-.3c-.3-.1-.5-.5 0-.6 1-.2 2 .5 2.8.2l1.8-.6c.3 0 1.3 0 1 .3-.3.2-.8.1-1 .2-.6.1-1 .4-1.6.6.4 0 .3.4.7.3.7-.2 1.4-.5 2.1-.5l.2-.5h.2c-.3-.5.7-.3 1-.7l.2.1c-.5.2-.3.6-.4.8l-.3.3c.3.2.3-.2.6 0h.6c.4 0 .8-.1.6-.4-.3-.3-.6-.5-.6-.9h-.2c.6 0 1 .1 1.2.4.3.2.4.6.8.7.9.2.8-.2.8-.7.7 0 1.7.4 1.5.7 0 .3-.6.5-1.1.5-.4 0-.2.3-.4.3-.4 0-1 0-1.1.3-.2.2 0 .7.3 1h2c.1-.4.6-.5 1-.8.4-.2-.3-.4-.6-.6-.3-.1-.1-.2 0-.4.3-.3 1 0 1-.2.2-.3-.1-.7.2-.8.2-.2.5.1.4.3l.7-.2c.4 0 .6.3.4.3-.4.3-.8.5-.7 1 0 .2-.5.2-.3.4.5.3.4.6.6 1 .1.4 1 .5 1.7.3-.3-.7 1.4-.3 2.2-.5v-.2c-.4-.2-.5-.3-.4-.6l-.2-.2c1.1.4 3 1 3.9 1.6-1 .2-3-.3-4 0-1.4.2-2.6.6-4 .6-.6 0-1.2-.3-1.8-.4m-12-.7l-.3-.1"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M257.3 276.4c2 0 2.3 1.5 3.7.1 1.2.2 2.4-.2 2.4-.4 2.9.6 11.9-.2 11.3-.8-1-1-2.5-1.5-3.7-2.4l-1.2-.4c-.7-.2-1.6 0-2.1-.3-1-.5-2-1-2.8-1.6-.5-.4-.7-1-1.3-1.5-.6-.4-1.4-.5-2-.8-1-.3-1.5-1.3-2.4-2-.3-.2-.8-.1-1.2-.4-.7-.3-1.3-1.2-2-1-1.2.1-1.9 1.1-3 1.6-1 .5-1.5 1.3-2.3 1.8-.2.1-2.8 1.9-5.7 3a76.7 76.7 0 01-7 2.7s2.5 1.9 8.5 1.6l3.6 1.2 2-.4h5.1z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M245 271.8c1.4-.6 6.5-3 8-4.8-.2 0 .5.5.4.8.5 0 .3-.5.7-.6l.8-.1c.3-.1.1 0 .1.2-.4.7-1.3 1-2 1.6 0 0 .1.1 0 .2h.8l.1-.3c.3.1.2.3 0 .4-.1.4-.9.4-1.1.7l-1 1c.3-.3.7-.6 1.1-.6.7 0 .9-.4 1.4-.5.6-.2 1-.6 1.5-.9-.2.2-.6.4-.5.7l.4.2c-.4.4-1.2.7-1.5 1.3-.3-.1-.5 0-.7.1-.2 0-.2.5-.3.6-.8.3-1.2 1-1.5 1.5 0 0-.7.4-1 .4-.3.2-2.9 2-3 1.7-.2-1.2-2.6.5-8.5-1.3"/>
+  <path fill="#00a6de" stroke="#000" stroke-width=".1" d="M256 228.4c-19.3 0-35 17.7-35 39.4 0 21.8 15.7 39.4 35 39.4s35-17.6 35-39.4-15.7-39.4-35-39.4zm0 8.8c14.1 0 26.3 13.1 26.3 30.6s-12.2 30.6-26.3 30.6c-14.1 0-26.3-13.1-26.3-30.6s12.2-30.6 26.3-30.6z" color="#000" font-family="Sans" font-weight="400" overflow="visible" style="line-height:normal;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration-line:none;text-transform:none;block-progression:tb;marker:none"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261 284.6c0 .2 0 .2-.4.2-.4.1-.5.1-.5-.1s0-.2.5-.3c.3 0 .4 0 .4.2z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.1 284.6l-.5.2h-.6c0-.2.3-.3.6-.3h.5zm-3 9.5c.9-2.2 1-4-.1-6.4 2-1.9 3.5-1.2 4.8.1-1.3 2.4-1 4.1-.2 6.4a4.3 4.3 0 01-4.5 0z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.3 286.5v8.3c0-2.8.2-5.5 0-8.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.7 286.6a47.4 47.4 0 00-.4 8.2h.2c0-3.1 0-5.7.4-8.2a3 3 0 00-.2 0zm.7-2.7c-.4.4-.5.4-.4 1 .4-.2.4-.5.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.6 284.2c.2.2.6.4.4 1-.5-.3-.4-.4-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.5 284.9c.3.2.6.3.4.8-.3-.3-.4-.3-.4-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.4 285.2c.3.3.6.4.4 1-.4-.3-.4-.3-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.3 285.8c.3.2.7.3.4 1-.4-.4-.2-.5-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.3 286.3c.2.2.6.4.4 1-.4-.4-.4-.4-.4-1zm1.3-1.8c-.2.1-.6.1-.6.8.5-.3.5-.2.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.6 285c-.2.1-.7 0-.7.7.6-.3.6-.2.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.5 285.4c-.2.1-.6.1-.7.8.6-.3.6-.2.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.5 286c-.2 0-.7-.1-.7.7.4 0 .4-.3.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.3 286.5c-.3.1-.5 0-.6.8.5-.4.5-.3.6-.8zm.3.4c-.8 2.2-1 4.2-.9 7.9a6.8 6.8 0 00.2 0c0-3.7.1-5.7.8-7.8a3 3 0 00-.1-.1zm1.2-2.4c-.4.3-.6.2-.5.9.4-.2.4-.4.5-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262 284.6c.2.2.5.4.1 1-.3-.4-.2-.4-.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.8 285.2c.2.3.5.4.2 1-.2-.5-.3-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.6 285.5c.2.3.5.5.2 1.1-.4-.4-.3-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.4 286c.2.3.6.5.2 1-.4-.4-.1-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.2 286.5c.2.3.6.5.2 1-.3-.3-.3-.4-.2-1zm1.8-1.4c-.3 0-.7 0-.8.6.5-.2.5-.1.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.8 285.5c-.2.1-.7 0-.8.6.6-.2.6-.1.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.7 286c-.3 0-.7 0-.9.6.6-.2.6-.2.9-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.5 286.5c-.2 0-.7-.2-.9.6.5 0 .5-.3 1-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.2 287c-.4 0-.5 0-.7.6.5-.2.5-.2.7-.7zm.1.4c-1 2-1.2 3.8-.7 7.2a5 5 0 00.2 0c-.5-3.3-.3-5.2.6-7.1a3.5 3.5 0 000-.1zm1.7-2.4c-.5.2-.7.2-.7.8.4-.1.5-.3.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.1 285c.2.3.4.5 0 1-.3-.4-.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.8 285.6c.2.3.5.5.1 1-.1-.5-.3-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.6 285.9c.2.3.4.6 0 1-.3-.4-.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.3 286.4c.2.3.5.5 0 1-.2-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262 286.8c.2.3.6.6.2 1-.3-.4-.3-.4-.1-1zm2-1.2c-.2 0-.6 0-.9.5.6 0 .6 0 .9-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.8 286c-.2.1-.7 0-.9.5.7 0 .6 0 1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.6 286.4c-.2 0-.7 0-1 .5.7 0 .7 0 1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.4 287c-.3 0-.7-.4-1 .4.5 0 .5-.2 1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263 287.4c-.3 0-.5-.1-.8.5.5-.1.5 0 .8-.5zm-3.2-.8h-.1a44 44 0 00.1 0zm-.7-2.7c.4.4.6.4.4 1-.4-.3-.4-.5-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.9 284.2c-.2.2-.6.3-.4 1 .5-.3.4-.4.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260 284.9c-.3.2-.6.2-.4.8.3-.3.4-.3.4-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260 285.2c-.2.3-.5.4-.3 1 .4-.3.4-.3.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.2 285.8c-.3.2-.7.3-.4 1 .4-.4.2-.6.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.2 286.3c-.2.2-.6.3-.4 1 .4-.4.4-.4.4-1zm-1.3-1.9c.2.2.6.2.6.9-.5-.4-.5-.3-.6-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.9 284.9c.2.1.7.1.7.8-.6-.3-.6-.3-.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259 285.3c.2.2.6.2.7.9-.6-.4-.6-.3-.7-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259 286c.2 0 .7-.1.7.7-.4-.1-.4-.4-.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.2 286.4c.3.2.5.2.6.8-.5-.3-.5-.2-.6-.8zm-.2.6a4 4 0 00-.2 0c.7 2.2 1 4.2 1 7.7a20 20 0 00-.8-7.8zm-1.3-2.7c.4.4.6.3.6 1-.5-.2-.5-.4-.6-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.5 284.5c-.2.3-.5.5-.1 1 .3-.4.3-.4.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.7 285.1c-.2.3-.5.4-.2 1 .2-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.9 285.5c-.2.3-.5.4-.2 1 .4-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.1 286c-.2.3-.6.4-.2 1 .4-.4.1-.5.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.3 286.5c-.2.3-.6.5-.3 1 .3-.4.4-.4.3-1zm-1.8-1.6c.3.2.7 0 .8.7-.6-.2-.5-.1-.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.7 285.4c.2.1.7 0 .8.6-.6-.2-.6-.1-.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.8 285.8c.3.1.7 0 .9.7-.6-.2-.6-.2-.9-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258 286.4c.2 0 .7-.2.9.6-.5 0-.5-.3-1-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.3 286.8c.3.1.5 0 .7.7-.5-.2-.5-.2-.7-.7zm0 .7h-.2c1 2 1 3.8.8 7h.2c.3-3.2.1-5-.8-7zm-1.8-2.7c.5.3.7.2.7.9-.4-.2-.5-.4-.7-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.4 284.9c-.1.3-.4.5 0 1 .3-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.7 285.5c-.2.3-.5.4-.1.9.1-.4.3-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.9 285.8c-.2.3-.4.5 0 1 .3-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.2 286.3c-.2.3-.5.5-.1 1 .3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.4 286.8c-.2.2-.5.5 0 1 .2-.4.2-.5 0-1zm-1.9-1.4c.2.1.6 0 .9.6-.6-.1-.6 0-.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M256.7 285.9c.2 0 .7-.1.9.5-.7-.1-.6 0-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M256.9 286.3c.2 0 .7-.1 1 .5-.7 0-.7 0-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.1 286.8c.2 0 .7-.3 1 .5-.5 0-.5-.2-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.5 287.2c.3 0 .5 0 .8.6-.6-.1-.5-.1-.8-.6zm2.3-3.4c.4.5.6.5.3 1-.3-.2-.3-.5-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.6 284.2c-.2.2-.6.3-.4 1 .4-.3.4-.4.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.6 284.9c-.3.2-.6.2-.4.8.3-.3.4-.3.4-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.7 285.2c-.3.3-.6.3-.4 1 .4-.3.4-.3.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.8 285.8c-.3.2-.7.3-.5 1 .5-.4.3-.6.5-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.8 286.3c-.2.2-.7.3-.5 1 .4-.4.5-.4.5-1zm-1.2-2c.1.2.6.3.5 1-.5-.4-.5-.4-.5-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.6 284.8c.2.2.6.2.6.9-.6-.4-.5-.3-.6-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.6 285.3c.2.1.7.2.7.8-.6-.3-.6-.3-.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.6 285.9c.2 0 .7 0 .7.8-.4-.2-.4-.4-.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.8 286.4c.3.1.5.1.5.8-.4-.3-.4-.3-.5-.8zm-.4.3h-.1c.6 2.6.7 5 .7 8h.1c.1-2.7 0-5.3-.7-8zm-1-2.5c.4.3.6.3.5 1-.5-.3-.5-.5-.6-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.2 284.4c-.2.2-.5.4-.2 1 .3-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.3 285c-.2.3-.5.4-.2 1 .2-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.5 285.4c-.2.2-.5.4-.2 1 .3-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.7 285.9c-.2.3-.6.4-.3 1 .4-.4.2-.5.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M259.8 286.4c-.2.3-.6.4-.3 1 .3-.4.4-.4.3-1zm-1.6-1.6c.2 0 .6 0 .7.7-.5-.3-.5-.2-.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.3 285.2c.2.1.7 0 .8.7-.6-.2-.6-.2-.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.4 285.6c.2.2.7.1.8.8-.6-.3-.6-.2-.8-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.5 286.2c.3 0 .7-.1.9.7-.5 0-.5-.3-.9-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.8 286.7c.4 0 .5 0 .7.7-.5-.2-.5-.2-.7-.7zm-.8 1a6.7 6.7 0 01.8 4c0 .8-.2 1.7-.4 2.6h.2c.6-2.7.5-4.7-.6-6.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.6 287.2c.8 2.3.9 4.4.7 7.5h.2a16 16 0 00-.9-7.5zm-1.5-2.6c.5.3.7.2.7.9-.5-.2-.5-.4-.7-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258 284.6c-.2.3-.5.5 0 1.1.2-.4.1-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.2 285.3c-.2.3-.5.4-.1.9.2-.4.3-.4.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.4 285.6c-.1.3-.4.5 0 1 .3-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.7 286c-.2.4-.6.6-.1 1.1.3-.5 0-.5.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.9 286.6c-.2.3-.5.5-.1 1 .2-.4.2-.5.1-1zm-1.9-1.4c.3 0 .7 0 .9.6-.6-.2-.6-.1-.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.2 285.6c.2.1.7 0 .9.6-.7-.1-.6 0-.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.4 286c.2.1.7 0 .9.6-.6-.1-.6 0-.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.6 286.6c.2 0 .7-.3 1 .5-.5 0-.6-.2-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258 287c.3 0 .5 0 .7.6-.5-.2-.5-.1-.7-.6zm-2-1.7c.5.2.6 0 .8.7-.5 0-.6-.3-.9-.7zm.8-.1c-.1.3-.4.6.1 1 .3-.4.2-.5-.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.2 285.8c-.2.3-.4.4 0 .9.1-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.4 286c-.1.4-.3.6.1 1.1.3-.5.2-.5-.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.8 286.5c-.2.3-.5.6 0 1 .3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258 287c0 .2-.4.5 0 1 .3-.5.3-.5 0-1zm-2-1.1c.2 0 .6-.2 1 .4-.7 0-.7 0-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M256.2 286.3c.3 0 .7-.2 1 .4-.7 0-.6 0-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M256.5 286.6c.2 0 .7-.1 1 .5-.7 0-.7 0-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M256.8 287.1c.2 0 .6-.3 1 .4-.5.1-.6-.1-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M257.2 287.5c.4 0 .5 0 .8.5-.5-.1-.5 0-.8-.5zm4-.8a27.5 27.5 0 00-.7 8h.2c0-3 0-5.4.7-8h-.1zm1.1-2.4c-.4.3-.6.3-.5.9.4-.2.5-.4.5-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.5 284.4c.2.3.5.5.2 1-.4-.3-.3-.4-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.3 285c.3.3.6.4.3 1-.3-.4-.4-.4-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.2 285.4c.2.3.5.5.2 1-.4-.3-.3-.4-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261 286c.2.2.6.4.3 1-.5-.5-.2-.6-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M260.8 286.4c.3.3.6.5.3 1-.3-.3-.3-.4-.3-1zm1.7-1.5c-.2 0-.7 0-.8.7.6-.3.6-.2.8-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.4 285.3c-.2.1-.7 0-.8.6.6-.1.6 0 .8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.3 285.7c-.3.2-.8 0-.9.7.7-.2.6-.1.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.1 286.3c-.2 0-.7-.2-.8.6.4 0 .5-.3.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.8 286.8c-.3 0-.5 0-.6.6.5-.2.4-.1.6-.6zm.2.3c-1 2.3-1.1 4.4-.9 7.6h.2c-.2-3.2 0-5.3.8-7.5zm1.5-2.4c-.4.3-.6.2-.6.9.5-.2.5-.4.7-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.7 284.8c.2.3.5.5 0 1-.2-.4-.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.4 285.4c.3.3.5.4.2.9-.2-.4-.3-.4-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.3 285.7c.1.3.4.5 0 1-.3-.4-.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262 286.2c.2.3.5.5 0 1-.3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M261.8 286.6c.1.3.5.6 0 1.1-.2-.4-.2-.5 0-1zm1.8-1.3c-.2.1-.6 0-.8.6.6-.1.5 0 .8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.4 285.8c-.2 0-.6-.1-.8.5.6-.1.6 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.3 286.2c-.3 0-.7-.1-1 .5.7 0 .7 0 1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263 286.7c-.2 0-.6-.3-.9.5.5 0 .5-.2 1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.7 287.1c-.4 0-.5 0-.8.6.5-.1.5-.1.8-.6zm0 .6c-1.2 2-1 4.2-.6 6.7h.2c-.2-1.2-.4-2.1-.3-3a6.4 6.4 0 01.8-3.6 11.8 11.8 0 00-.1 0zm2-2.2c-.5.2-.7 0-.8.7.5 0 .6-.3.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.9 285.3c0 .4.3.6-.2 1.1-.2-.5-.1-.5.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.5 285.9c.2.3.4.5 0 1-.2-.5-.3-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.3 286.2c0 .3.3.6-.2 1-.2-.5-.1-.5.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.9 286.6c.1.3.4.6 0 1-.3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M262.6 287c.1.3.4.6 0 1-.2-.4-.3-.5 0-1zm2-1c-.2.1-.6-.1-.9.5.6 0 .6 0 1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M264.4 286.5c-.2 0-.6-.2-1 .3.7 0 .7 0 1-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M264.2 286.8c-.3 0-.7-.2-1 .4.6 0 .6 0 1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.9 287.3c-.3 0-.6-.4-1 .3.4.1.5 0 1-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M263.4 287.6c-.3 0-.4 0-.8.5.5 0 .5 0 .8-.5zm-3.7 3h1.2c.8 0 1.3.2 1.3.4s-.5.3-1.3.3h-1.2c-.7 0-1.3-.2-1.3-.4s.6-.3 1.3-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M258.9 290.6l-.4.6a.3.3 0 00.2 0h.2l.4-.6h-.4zm1 0l-.5.7h.5l.4-.7h-.5zm.9 0l-.5.7h.5l.4-.7h-.4zm.9 0l-.4.7h.5l.3-.6a.3.3 0 00-.2 0h-.2z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M252.3 286.7l.5 2.9.2.2v1l.1.2c.3.5.3 1.2.4 1.7 0 .2 0 0 .4.6h.4l.1.2-.2.3h-.7l-.3-.2v-.2l-.2-.1-.1-.6-.8-1c-.1-.2-.1-.5-.3-.6 0-.2-.2-.2-.3-.3-.5-1.1-1-3.1-1-3.1m-6.9-1.2l2 .4-.6 2.8c-.3.9-.3 1-.2 1.2.2.4.4 1.2 1.2 2.3.2.3.5.3.6.4l.5.4h.6l.1-.2c0-.2-.3-.1-.5-.3-.1-.3-.6-.8-.6-1.2-.3-.8-.2-.8-.2-1.6 0-.4.4-1.3.5-1.8a4.6 4.6 0 00.5-2l-.8-2-.5-.6m-1.8-1.2c-3 1-1.7 3.8-.9 3.8m9.8-8.7l.5-1v-.4l-.8 1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M255.1 279.9h.5v-.3l-.1-.4c-.5-.4-1-.4-1-.7v-.2c0-.2-.9-.3-1-.5l-.5-.2h-.3c-.7 0-1 .8-1.2 1.3 0 0-.2 2.3-.6 3.3a.8.8 0 01-.1.3l-.2.2-4.5-.3a4 4 0 00-2 .8s-1 .7-1.2 1.7c0 .4 0 .8.2 1.2 1 2.7 2 0 2.3 0h.4c.5 0 1.4 1.6 2.8 2 4.3.9 5.5-1.4 5.4-6.3v-.2l.2-.5v-.5l-.1-.3 1.2-.2.2-.1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M253 278.5l.6-1.2v-.5l-1 1.1v.1m-9.5 8c.3.9.8 1.7.7 2 0 .4-.3.6-.3.7l-.1.1c-.2.1-.2.4-.3.6l-.1.6c0 .8.5 2.4.6 2.4l.3.3v.5l-.1.7v.2l.4.2h.6l-.4-.4a.4.4 0 010-.3l.3-.4v-.4l-.1-.2a8.8 8.8 0 01-.1-1v-1.2l.2-.1.1-.3 1-.6 1-1.1.1-.5a.6.6 0 000-.2 4 4 0 00-.3-1 3.4 3.4 0 00-.6-.8m6.3 2c-.6.3-2 .6-2 .9 0 0 0 1.7-.2 2.4l-.3.6-.2.7c-.1.3-.3.6-.3 1v.5l.4.2-.4.2-.7-.3v-.6l.1-.7-.1-.5-.1-1.4v-5m5-5.7c.2.3.5.4 1.3.1.2.1.4.3.7-.2m-.4-.6l.3.1c0-.1 0-.2-.1-.1h-.2z"/>
+  <path d="M253.6 278.8l.1.1c.1.2.4.3.6 0-.3-.3-.5-.1-.6 0z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M265.7 291.1a2 2 0 000 .8 2 2 0 000 .8 2 2 0 000 .8 2.1 2.1 0 000 .7c.3.2 1 .2 1.3 0v-.7a2 2 0 000-.8 2 2 0 000-.8 2 2 0 000-.8 2.4 2.4 0 000-.8 2.2 2.2 0 000-.8 2.4 2.4 0 000-.8v-.9a2.5 2.5 0 000-.8 2.6 2.6 0 000-.9 2.3 2.3 0 000-.8 2 2 0 000-.8 2.7 2.7 0 000-.9 2.5 2.5 0 000-.8v-.8a3.1 3.1 0 000-.9 3.1 3.1 0 000-.8v-2.5a2.4 2.4 0 00-.1-.8v-.8a2.1 2.1 0 000-.3h-.8v.3c-.1.1-.1.6 0 .8a2.5 2.5 0 000 .8 2.7 2.7 0 00-.1.8 2.9 2.9 0 000 .8v.9a3.1 3.1 0 000 .8 3.1 3.1 0 000 .9 3.5 3.5 0 000 .8 2.5 2.5 0 00-.1.8 2.6 2.6 0 000 .9c0 .2-.1.5 0 .8a2.4 2.4 0 000 .8 2.6 2.6 0 000 .9c-.1.2-.1.5 0 .8a2.8 2.8 0 00-.1.9v.8a2.2 2.2 0 000 .8 2.4 2.4 0 000 .8z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M265.7 291.9h1.3m-1.3-.8h1.3m-1.2-.8h1.2m-1.2-.8h1.2m-1.2-.9h1.2m-1.2-.8h1.2m-1.2-.8h1.2m-1.1-.9h1m-1-.8h1m-1-.8h1m-1-.9h1m-1-.8h1m-1-.9h1m-1-.8h1m-1-.8h1m-.9-.9h1m-1-.8h1m-1-.8h.9m-.8-.9h.8m-.9-.7h.9m-1.2 16.5h1.3m-1.3.7a2.5 2.5 0 001.3 0"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#e7e7e7" stroke-width=".1" d="M268.3 274.2l2.2-.1a14.6 14.6 0 00-.9-.3h2.4a5.2 5.2 0 00-1-.5c.7-.1 1.7 0 2.3.1l-1-.5 2 .1a2.8 2.8 0 00-.9-.5 8.6 8.6 0 012.7-.1 9.2 9.2 0 00-8.6.8 6.5 6.5 0 011-1.2 2.7 2.7 0 00-.7 0l1.3-1a3.1 3.1 0 00-.8 0l1.5-1a3.3 3.3 0 00-.9 0 5 5 0 011.7-1.1 4.2 4.2 0 00-1 0c.5-.4 1.2-1 2.1-1.4-3.5.4-5.5 3-5.7 5.1-.9-2-3.5-4-7-3.8 1 .3 1.9.7 2.5 1.1a4.6 4.6 0 00-1 .1c.7.2 1.5.6 2 1a3.6 3.6 0 00-.9.1l1.8.8-.8.1 1.6.8a3 3 0 00-.8 0l1.4.8c-2.2-.5-5.4.3-7.9 3.1.4-.3 1.9-.8 2.4-1a4 4 0 00-.6.9 8.9 8.9 0 012.2-1.2 5 5 0 00-.4.8l2-1-.5.8 1.8-.7-.5.7 1-.3a6.6 6.6 0 00-3 6.1c0-.4.6-1.6.9-2v1a9 9 0 011-2.1l.1 1 1-2.1v1a14.2 14.2 0 011.2-2v.8l.3-.6.7-1 .3.4c.2.4.5 1.1.5 1.9a3.4 3.4 0 00.3-1c.3.8.7 2 .7 2.6l.2-1c.3.5.7 1.8.7 2.4l.3-1 .6 2.4c.8-3.1-.4-5.2-2-6.7.4.2 1 .6 1.4 1.1a5.2 5.2 0 00-.3-1l1.6 1.6a2.9 2.9 0 00-.2-1c.7.5 1.2 1.3 1.6 1.7l-.2-1c.6.5 1.2 1.4 1.4 2l-.1-1.2c.8.7 1 1.4 1.3 1.9 0-2.9-3.3-5.4-6.3-5.7z"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M267 274.2c3.4-.4 7.6 2.4 7.6 5.7-.2-.4-.5-1.2-1.4-1.9l.2 1.1a6.5 6.5 0 00-1.4-1.9l.2 1c-.4-.4-1-1.2-1.6-1.6l.2.8a15.3 15.3 0 00-1.6-1.4l.3 1a6 6 0 00-1.3-1.2m-2-1.6c-2-1.3-6.2-1-9.3 2.5.4-.3 1.9-.8 2.4-1a4 4 0 00-.5.9 8.9 8.9 0 012.1-1.2 5.1 5.1 0 00-.4.8l2-1-.5.8 1.8-.7-.5.7 1-.4"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M266.4 273.7c-.4-2.4-3.3-5-7.4-4.9 1 .3 1.9.7 2.5 1.1a4.6 4.6 0 00-1 .1c.7.2 1.5.6 2 1a3.6 3.6 0 00-.9.1l1.8.8-.8.1c.5.1 1.2.5 1.6.8a3 3 0 00-.8 0l1.4.8m1.6 1c-2.8.9-5.5 3.6-5.1 7.2 0-.4.6-1.6.9-2v1a9 9 0 011-2.1l.1 1 1-2.1v1a14.1 14.1 0 011.2-2v.8c0-.2.9-1.4 1-1.5m-1.7.1a9.3 9.3 0 00-.4 1.6m-.6-.9a10.4 10.4 0 00-.5 2m-.5-1a9.5 9.5 0 00-.6 2"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M266.5 275.9v-.7" class="fil1 str2"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M269.4 278.7l.1 1.5m-1.1-3.3l.1 1.7m-1.1-2.8l.2 1.4m5-.5a3.7 3.7 0 01.6 1.3m-2-2.3l.8 1.6m-2.1-2l.7 1.3m-11.3-.9a5 5 0 011.8-1.2m-.2 1c.4-.6.7-1 1.7-1.4m-.2 1.2c.4-.5 1-1 1.8-1.3m-.4 1.3c.5-.5 1-.8 1.7-1m-4-4.4c.8.1 1.7.3 2.3.7m-1.2.4a5 5 0 012 .5m-1.2.4c.7 0 1.5.3 2.2.7m-1.4.2a4.1 4.1 0 011.9.6m.8.2a9.1 9.1 0 019.2-1.2 8.6 8.6 0 00-2.7.1c.5.1.9.4 1 .5-.9-.1-1.2-.2-2.2-.1.5.1.8.3 1.1.5a7.8 7.8 0 00-2.3-.1l1 .4h-2.4l1 .4-2.3.1m5.1-1.7a6.4 6.4 0 00-2.2-.3m1 .7a6.2 6.2 0 00-2.7-.3m1.5.7a7.3 7.3 0 00-2.7-.2m1.3.7a5.3 5.3 0 00-2.1-.1m.9 1.1c.3.3.6.7.8 1.2"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M266 272.6c.2-2.1 2.2-4.7 5.7-5a9 9 0 00-2 1.3h1c-.7.2-1.4.7-1.8 1.2h1c-.6.2-1.2.6-1.5 1h.8c-.4 0-1 .6-1.3.9a2.7 2.7 0 01.7 0c-.5.3-1 .8-1.1 1.2m2.1-4.3c-.5.2-1.1.4-1.6.8m1 .4a4.8 4.8 0 00-1.6.5m1 .5c-.6 0-1.1.3-1.6.7m1 .2a3.4 3.4 0 00-1.5.8m-.5 2.6a6.4 6.4 0 00-.3 1.2m1.3-2.1c2 1.7 4.4 4 3.3 8a8.8 8.8 0 00-.6-2.3c0 .4-.2.7-.3 1a7.2 7.2 0 00-.7-2.6l-.2 1c0-.6-.4-1.7-.7-2.5a3.4 3.4 0 01-.3 1c0-1-.4-1.8-.8-2.2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M227.5 249l1.4.8.3-.6c.2-.3.2-.5.1-.7 0-.2-.2-.4-.5-.5-.3-.2-.6-.3-.8-.2-.2 0-.3.2-.4.4l-.3.6c0 .1 0 .2.2.3m1.8 1l1.7.9h.3c.1 0 .3-.2.4-.5l.3-.6a.6.6 0 000-.5.8.8 0 00-.2-.2 2 2 0 00-.4-.3c-.8-.4-1.4-.3-1.7.4l-.4.7m-2.8-.8a31.7 31.7 0 00.7-1.2c.1-.4.3-.7.6-.9l.6-.4h.9l.5.6.1.8c.3-.3.7-.5 1-.6a1.3 1.3 0 011 .1c.4.2.7.6.8 1 0 .6 0 1.2-.5 1.9a28 28 0 01-.8 1.4l-.3.7a12 12 0 00-1.5-1l-1.9-1a12.3 12.3 0 00-1.6-.7l.4-.7m9.5-11.5c-.8.6-.7 1.5.4 2.8.5.6 1 1 1.5 1 .5.2 1 0 1.4-.3.4-.3.6-.7.5-1.1a3.3 3.3 0 00-.8-1.6c-.6-.7-1.1-1.1-1.6-1.2-.5-.2-1 0-1.4.4m4-.2c.5.6.7 1.4.7 2.1a3 3 0 01-1.2 2 3.1 3.1 0 01-2.2.9 2.6 2.6 0 01-2-1 3 3 0 01-.7-2.2 2.9 2.9 0 011.1-2 3.1 3.1 0 012.3-1c.7.1 1.4.5 2 1.2m8.5-2.8l.3 1a15.2 15.2 0 002-.7l.4-.1a5.3 5.3 0 00.3.9l-.6.1-2.5.7-.7.2-.4-1.7-.6-2a15 15 0 00-.5-1.7l.6-.2.7-.2.4 1.7.6 2m9.8-3l.1-1.8h.8l.7.1-.3 1.8-.2 2-.1 1.8a12 12 0 00-.7 0h-.8v-.1l.3-1.7.2-2.2m10.5 5.6a38.2 38.2 0 003.4-2.8l.4.2.4.2-5 3.8-.5-.3a292.6 292.6 0 01.5-4.7 28.2 28.2 0 00.1-1.4 7.9 7.9 0 001.4.7 37.1 37.1 0 00-.6 4.3m9 4.1a13 13 0 001.2-1.2l.5.5.5.5-1.4 1.1-1.5 1.5-1.3 1.2a12.3 12.3 0 00-.5-.5l-.5-.5 1.4-1.1 1.6-1.5m5.3 10.7a46.2 46.2 0 001.4-1.5h-2a22.2 22.2 0 00.6 1.5m-1.2-1.5l-2 .2a2 2 0 00-.2-.4 2.8 2.8 0 00-.2-.4 326.8 326.8 0 006.2 0l.4.6a87.3 87.3 0 00-4.2 4.6l-.3-.7a5.7 5.7 0 00-.3-.6l1.5-1.4a35.3 35.3 0 00-1-1.9" font-family="Linux Biolinum" font-size="100" font-weight="700" letter-spacing="60" text-anchor="middle" word-spacing="0" style="line-height:125%;-inkscape-font-specification:Linux Biolinum Bold;text-align:center"/>
+  <path fill="#e8a30e" stroke="#000" stroke-linecap="square" stroke-linejoin="round" stroke-width=".1" d="M261.3 299.3l-.9 2.4H258l2 1.5-.7 2.4 2-1.4 2.1 1.4-.7-2.4 2-1.5H262zm9.7-4.1l-.8 2.3h-2.5l2 1.6-.7 2.4 2-1.5 2 1.5-.7-2.4 2-1.5h-2.5zm15-26.7l-.8 2.4h-2.5l2 1.6-.7 2.3 2-1.4 2.1 1.4-.7-2.4 2-1.4-2.5-.1zm-7.1 19l.8 2.4h2.5l-2 1.5.8 2.4-2.1-1.4-2 1.4.7-2.4-2-1.4 2.5-.1zm5-8.7l.9 2.4h2.5l-2 1.6.7 2.3-2-1.4-2.1 1.4.7-2.3-2-1.5h2.5zm-33.1 20.5l.8 2.4h2.5l-2 1.5.7 2.4-2-1.4-2.1 1.4.7-2.4-2-1.5h2.5zm-9.8-4.1l.8 2.3h2.5l-2 1.6.8 2.4-2.1-1.5-2 1.5.7-2.4-2-1.5h2.5zm-15-26.7l.8 2.4h2.5l-2 1.5.7 2.4-2-1.4-2 1.4.6-2.4-2-1.5h2.5zm7.1 19l-.8 2.4h-2.5l2 1.5-.7 2.4 2-1.4 2 1.4-.7-2.4 2-1.5H234zm-5-8.7l-.9 2.4h-2.5l2 1.6-.7 2.3 2-1.4 2.1 1.4-.7-2.3 2-1.5h-2.5z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M257.1 264.6v-.5h.1l-.9-.5h-.7l-.8.5v.5h2.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M257.1 264.6v-.5h.1l-.9-.5v-.8h-.6v.8l-1 .5h.1v.5h2.3zm.3.7v.2h-2.8v-.2h2.8"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M257.4 265.3v.2h-2.8v-.2h2.8zm-2.6 0v-.6.6-.7h2.5v.1h-.2v.6-.6h.1v.6"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M254.8 265.3v-.6.6-.7h2.5v.1h-.2v.6-.6h.1v.6"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M255.3 265.2v-.4h-.3v.4h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M255 264.9v.2h.2v-.2h-.1m1.9.3v-.4h-.4v.4h.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.7 264.9v.2h.2v-.2h-.2m.3-.3v-.4h-.4v.4h.4z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.7 264.3v.2h.2v-.2h-.2m-1.4.2v-.3h-.3v.3h.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M255 264.3v.2h.2v-.2h-.1m.8.2v-.3h-.3v.4h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M255.7 264.3v.2h.1v-.2h-.1m.7.2v-.3h-.3v.4h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.1 264.3v.2h.2v-.2h-.2"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.5 264.4v1h-1v-1h1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.5 264.4v1h-1v-1h1zm-1 .3h1m-.9.6v-.6m.8.6v-.6m.5-.6l-.6-.4h-.6l-.6.4h1.8m-1.2-.5h.5m-.3-.2v.2h.2v-.2h-.2m-.3 1v.1m.1 0v0m.2 0v0zm.1 0h.1v0zm.2 0v0m.2 0v0"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width="0" d="M255.8 262.4h.4v.4h-.4v-.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M256 262v.4m-.2-.3h.4"/>
+  <path fill="#452c25" d="M253 224.3s-2.6 5.8-1.7 6.4c0 0 3.1-3.5 4-6.3.8-2.8 0-.2 0-.2l-.3-3-2 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M253 224.3s-2.6 5.8-1.7 6.4c0 0 3.1-3.5 4-6.3.8-2.8 0-.2 0-.2l-.3-3-2 2.9"/>
+  <path fill="#452c25" d="M253.5 221.6s-3 6.4-2.3 6.8c0 0 2.5-2.9 3.1-5.1.7-2.3 0-.2 0-.2l.8-4.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M253.5 221.6s-3 6.4-2.3 6.8c0 0 2.5-2.9 3.1-5.1.7-2.3 0-.2 0-.2l.8-4.1"/>
+  <path fill="#452c25" d="M256.6 220.1s-3 6.4-2.4 6.9c0 0 2.6-2.9 3.2-5.2.7-2.3 0-.1 0-.1l.8-4.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M256.6 220.1s-3 6.4-2.4 6.9c0 0 2.6-2.9 3.2-5.2.7-2.3 0-.1 0-.1l.8-4.1"/>
+  <path fill="#452c25" d="M295.3 208.7l3.6 2s.8.7-1 .3c-2-.5-6-1.9-13.7-6.8-3.5-2.2-4.6-2.2-4.6-2.2l4.8.2 10.9 6.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M295.3 208.7l3.6 2s.8.7-1 .3c-2-.5-6-1.9-13.7-6.8-3.5-2.2-4.6-2.2-4.6-2.2l4.8.2 10.9 6.5z"/>
+  <path fill="#452c25" d="M296.5 207.8l3.5 2s.9.7-1 .3c-2-.4-6-1.8-13.7-6.8-3.4-2.2-.7 1.9-.7 1.9l.6-2.7 11.3 5.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M296.5 207.8l3.5 2s.9.7-1 .3c-2-.4-6-1.8-13.7-6.8-3.4-2.2-.7 1.9-.7 1.9l.6-2.7 11.3 5.3z"/>
+  <path fill="#452c25" d="M302.4 209.7s-4.3-.8-5.8-2c0 0 .3.6-1.8-.4 0 0 .8 1.9-5-2.1-6-4-3.9-2-3.9-2l1.7-.4 10 4c1 .3 4.8 3 4.8 3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M302.4 209.7s-4.3-.8-5.8-2c0 0 .3.6-1.8-.4 0 0 .8 1.9-5-2.1-6-4-3.9-2-3.9-2l1.7-.4 10 4c1 .3 4.8 3 4.8 3z"/>
+  <path fill="#452c25" d="M280.1 211.3l1.5 2s-.5 2-5.4-1.8l-4.7-3.4 2.7-.3 6 3.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M280.1 211.3l1.5 2s-.5 2-5.4-1.8l-4.7-3.4 2.7-.3 6 3.4"/>
+  <path fill="#452c25" d="M273.7 212.3s2.3 3 1.8 3.4c-.5.4-3.2.2-5.2-2.7-1.9-3 0-.2 0-.2l.2-4.7 3.3 4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M273.7 212.3s2.3 3 1.8 3.4c-.5.4-3.2.2-5.2-2.7-1.9-3 0-.2 0-.2l.2-4.7 3.3 4"/>
+  <path fill="#452c25" d="M276 211s2.3 2.8 2 3.2c-.2.5-3.3.2-5.8-2.6-2.5-2.8-.4-3.7-.4-3.7l4.2 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M276 210.9s2.3 2.9 2 3.3c-.2.5-3.3.2-5.8-2.6-2.5-2.8-.4-3.7-.4-3.7l4.3 3z"/>
+  <path fill="#452c25" d="M288.7 209.3s6.3 2.7 1.6 2.5c0 0-9.1-2.5-13.9-6.5l1.4-1.8 10.8 5.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M288.7 209.3s6.3 2.7 1.6 2.5c0 0-9.1-2.5-13.9-6.5l1.4-1.8 10.8 5.6"/>
+  <path fill="#452c25" d="M292 208.5s3.4 2 3.7 2.8-10.6-2-16.4-6.8l2.6-1.2 10.1 5.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M292 208.5s3.4 2 3.7 2.8-10.6-2-16.4-6.8l2.6-1.2 10.1 5.2z"/>
+  <path fill="#452c25" d="M282.1 210.3s2.5 2 2.2 2.3a17 17 0 01-9.2-3.5l.4-1.8 6.6 3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M282.1 210.3s2.5 2 2.2 2.3a17 17 0 01-9.2-3.5l.4-1.8 6.6 3"/>
+  <path fill="#452c25" d="M286.3 210.2s2.4 1.7 2 1.8c-.6.2-2.5 1.7-11.5-3.6l-1.1-.6 1.4-2.2 9.2 4.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M286.3 210.1s2.4 1.8 2 2c-.6.1-2.5 1.6-11.5-3.7l-1.1-.6 1.4-2.2 9.2 4.5z"/>
+  <path fill="#452c25" d="M277 205.2s3 2.6 2.6 3c-.4.4-3.9-.4-5.5-1.6-1.5-1.1-2.6-2.6-2.6-2.6l3.3-.7 2.2 2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M277 205.2s3 2.6 2.6 3c-.4.4-3.9-.4-5.5-1.6-1.5-1.1-2.6-2.6-2.6-2.6l3.3-.7 2.2 2z"/>
+  <path fill="#452c25" d="M273.5 200.8l5.4 3.2s4.4 3.1 3.9 3.4c-.5.2-4-.8-6.4-2.2a29.5 29.5 0 01-5.3-4.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M273.5 200.8l5.4 3.2s4.4 3.1 3.9 3.4c-.5.2-4-.8-6.4-2.2a29.5 29.5 0 01-5.3-4.2"/>
+  <path fill="#452c25" d="M270.1 216s1 2.5.4 2.7c-.6.2-2-.2-3.3-2.5-1.1-2.4 1-1.4 1-1.4l2 1.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M270.1 216s1 2.5.4 2.7c-.6.2-2-.2-3.3-2.5-1.1-2.4.9-1.3.9-1.3l2 1z"/>
+  <path fill="#452c25" d="M271.9 214.3s1.5 2.4 1.2 2.7c-.4.3-2.3 1.2-4.5-2s2.2-2.5 2.2-2.5l1 1.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M271.9 214.3s1.5 2.4 1.2 2.7c-.4.3-2.3 1.2-4.5-2s2.2-2.5 2.2-2.5l1 1.8z"/>
+  <path fill="#452c25" d="M267.4 203s5.1 10 4.7 10.5c-.4.5-2.5 0-3.6-2.6a53.3 53.3 0 01-2-6l1-1.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M267.4 203s5.1 10 4.7 10.5c-.4.5-2.5 0-3.6-2.6s-2-6-2-6l1-1.8z"/>
+  <path fill="#452c25" d="M273.4 205.6s4.2 3.6 3.4 4c-1 .5-2.6-.1-5.1-2.6-2.5-2.5 1.6-1.6 1.6-1.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M273.4 205.5s4.3 3.7 3.4 4.2c-1 .5-2.6-.2-5.1-2.7-2.5-2.5 1.7-1.5 1.7-1.5z"/>
+  <path fill="#452c25" d="M271.3 205.7s3 5.6 2.7 6c-.4.6-2.7-1.3-3.8-2.7s-2-3.5-2-3.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M271.3 205.7s3 5.6 2.7 6c-.4.6-2.7-1.3-3.8-2.7s-2-3.5-2-3.5"/>
+  <path fill="#452c25" d="M248.4 217.2v3.5c.1.2 1.9.3 2-2.2 0-2.5-.4-2.6-.4-2.6l-1.6 1.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M248.4 217.2v3.5c.1.2 1.9.3 2-2.2 0-2.5-.4-2.6-.4-2.6l-1.6 1.2"/>
+  <path fill="#452c25" d="M249.4 213.2s-1.1 3.7 0 4.4c1.1.8 2-3.6 2-4.6.1-1-2 .2-2 .2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249.4 213.2s-1.1 3.7 0 4.4c1.1.8 2-3.6 2-4.6.1-1-2 .2-2 .2z"/>
+  <path fill="#452c25" d="M250.2 218s.3 3.4.9 3.5c.6.2 1.7-1 1.7-1.9 0-.9-1.1-3-1.1-3l-1.5 1.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.2 218s.3 3.4.9 3.5c.6.2 1.7-1 1.7-1.9 0-.9-1.1-3-1.1-3l-1.5 1.2"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M250.3 213.8s-1.2 3.7 0 4.4c1 .8 2-3.6 2-4.6 0-1-2 .2-2 .2z"/>
+  <path fill="#452c25" d="M250.4 207.8s-1.8 1.8-1.7 2.8c0 1 2.5-1.3 2.8-1.8.2-.4-1.1-1-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M250.4 207.8s-1.8 1.8-1.7 2.8c0 1 2.5-1.3 2.8-1.8.2-.4-1.1-1-1.1-1z"/>
+  <path fill="#452c25" d="M249.2 206.8s-1.4 2.6-1 3.3c.3.8 1.7-.5 2.3-1.4.6-1-1.3-1.8-1.3-1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249.2 206.8s-1.4 2.6-1 3.3c.3.8 1.7-.5 2.3-1.4.6-1-1.3-1.8-1.3-1.8z"/>
+  <path fill="#452c25" d="M268.3 203.5s2.1 4.1 1.5 4.3c-.6.2-1.5-.8-2.4-2-.9-1.2.9-2.3.9-2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M268.3 203.5s2.1 4.1 1.5 4.3c-.6.2-1.5-.8-2.4-2-.9-1.2.9-2.3.9-2.3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M268.3 211.9s.8 3.4.1 3.7c-1.3.7-2-2.4-2.2-3.6 0-1.2 2.1-.1 2.1-.1zm-2.7 5.4s.2 2.6-.2 2.8c-.3.3-1.2.3-2.3-1.8-1-2.2-.5-1.4-.5-1.4l2.5-1.2.5 1.4"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M268.1 216.7s.3 2.8-.2 2.8c-.6.1-2-.8-2.7-2.4-.7-2 2.6-1.4 2.6-1.4l.3 1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M265.6 208.4s2.7 6.2 2.3 7.1c-.9 1.8-3.4-3.8-4.2-6-.8-2.4 1.9-1.1 1.9-1.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M264.3 209.4s3.8 7 2.1 7c-1.5.2-4.5-5-5-6.1-.5-1.2 2.9-.9 2.9-.9z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M264 210.8s1.9 6.6.7 6c-1.2-.5-2.7-5.5-2.9-6.6-.2-1 2.2.7 2.2.7zm6.6-9.4s3 4.5 2 4.6c-1 .1-4.4-3-4.4-3.5s2.4-1 2.4-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M268.8 201.7s3.7 5 2.6 5.2c-1.1.3-1.2-.5-1.2-.5s-3-2.7-3.1-3.3c-.3-.7 1.6-1.5 1.6-1.5m3.8.1s2.5 2.6 1.8 3.5c-.6 1-4.2-3.3-4.6-3.8-.5-.6 3 .2 3 .2m-6.4 3.8s4.1 8 3.3 8.7c-.7.8-5.3-6-5.4-7-.2-.9 2.2-1.9 2.2-1.9"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".2" d="M264 206s1.6 2.6 1.5 4c0 1.3-2.5-2-2.7-2.6-.2-.6 1.2-1.3 1.2-1.3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M267.3 204.8s1.3 2.6.9 3.3c-.4.8-2.1-1.5-2.7-2.4-.6-1 1.8-1 1.8-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".2" d="M261.4 207.3s2 2.2 2 3.4c-.2 1.2-3-1.7-3.3-2.3-.3-.5 1.3-1 1.3-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M274.3 201s3 2.6 2.6 3c-.5.5-4.6-2.4-5.2-3-.6-.6 2.6 0 2.6 0z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M271.8 200.7l2.3 2s2.2 1.5 1.8 1.9c-.3.3-3.8-1.2-4.4-2-.6-.6-.5-1.4-.5-1.4l.8-.5zm7.7.7s9 3.6 8.6 4.5c-.3.8-9.3-3-10.8-4s2.1-.6 2.1-.6"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M279.9 202.5s6.7 3.8 5.9 4.1c-.8.4-5.6-.9-8-2.6a38.4 38.4 0 01-3.6-2.6l3-.7 2.7 1.8zm-16.6 4.6s1.3 2.6 1 3.3c-.5.8-1.7-.6-2.3-1.5-.6-1 1.3-1.8 1.3-1.8zm.3 5.8s1.1 3.7 0 4.4c-1.2.7-2-3.7-2-4.7s2 .3 2 .3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M258.4 206.7s3.8-1.6 4.5-1.5c0 0 .7-.2 1.1-.5l1.4-1.1s-.6-4.5 4.1-4l12.3 1.2a48 48 0 017 2c1 .5 8.1 3.7 9.6 4.2.8.3 2.7 1.5 4.1 2.4 1 .7 0 .2 0 .2s-11.5-6-15.5-6.9c-1-.2 0 1.2 0 1.2l-3.6-1.5a6.3 6.3 0 00-3-.6 6.2 6.2 0 01-2.4-.3c-.6-.2-4-.3-4.7-.4a7.8 7.8 0 01-1-.2l.2.4-1.7-.3-.5.8s-1.6.3-1.7-.2c-.2-.6-1 2.3-1.4 3.2-.4.8-2 .8-2.5 1.3a5.4 5.4 0 01-1 1c-.2.2-1.5.9-1.9.9l-3 .2-.7-1 .3-.5zm5 10.6s0 3.3-.2 3.6c-.2.2-1.8.1-1.8-2.3 0-2.5.4-2.6.4-2.6l1.6 1.2"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M263.8 214.8s-.4-1.4-.6-1.6c-.2-.2.1-.4.1-.4s-.6-1.5-1-1.7c-.3-.3.1-.5.1-.5s-.6-1-1-1.2c-.5-.3 0-.4 0-.4s-.6-1.3-1.7-2c0 0-.7-.7-1.4-1-.8-.1-2.6-.3-4.9-.3a4 4 0 00-3.3 1.7l-.2 1.9.4-.2-.5 2.3c-.1.6.4 1.5.4 2.6a11 11 0 00.9 4.2l.1.3c.1-.2.4.6.6 1 0 0 .1 1.1.2.7.1-.2.5.6.7 1.2 0 .2.5 1.5.5.9 0-.7.4 1.3.4 1.6l.6-.8.2 1 .5-.1-.2.8s1.3-1 1.3-1.4l.1-.7.4-.4.7-1s1.6 1.2 1.8 1.7l.3.8.4-.4.4 1 .2-.5.2.6.2.4c.1 0 .4.1.8-.7.7-1.1.7-2 .7-2.2 0-.2.3.4.3.4s.6-1.1.5-1.8c0-.7.4-.5.4-.5V218c-.1-.5.3-.4.3-.4s-.1-2.2-.3-2.4c0-.3.4-.3.4-.3z"/>
+  <path d="M260.6 209.8c.3 0 .5.4.6.7v-.1c-.1-.3-.3-.7-.6-.8v.2m.3 1.3c.6.5.6 1.2.6 2 0 0 0 .1 0 0 0-.8 0-1.6-.6-2.1v.1m1.2.7a3.2 3.2 0 01.4 1.8c0-.7 0-1.3-.4-2v.2m.4 2.6l-.1 1.1a.5.5 0 000 .2 11.8 11.8 0 00.1-1.3m-.4 2v.7a4.1 4.1 0 000-.8m-.7-2.4a15.3 15.3 0 000 1.2 14.3 14.3 0 010-1.2m1.5 2.4a1.2 1.2 0 01.3.6 1.2 1.2 0 00-.3-.7v.1m-.1-2.8l.4.5a3.3 3.3 0 00-.4-.6v.1m-1.5 2.1a6.4 6.4 0 01-.1 1.1.4.4 0 000 .1 6.9 6.9 0 000-1.2m-.7.8a5.7 5.7 0 010 1.1 6.6 6.6 0 000-1.2v.1"/>
+  <path fill="#452c25" d="M246.1 207.3s-.9 3.4-.2 3.7c1.3.7 2.2-2.3 2.3-3.5.1-1.3-2-.2-2-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M246.1 207.3s-.9 3.4-.2 3.7c1.3.7 2.2-2.3 2.3-3.5.1-1.3-2-.2-2-.2z"/>
+  <path fill="#452c25" d="M248 207.3s-1.6 1.7-1.6 2.7c0 1 2.5-1.3 2.8-1.8.2-.4-1.1-1-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M248 207.3s-1.6 1.7-1.6 2.7c0 1 2.5-1.3 2.8-1.8.2-.4-1.1-1-1.1-1z"/>
+  <path fill="#452c25" d="M218.7 207.5s-3.5 1.8-3.8 2.5c-.4.8 10.7-1.1 16.7-5.4l-2.4-1.4-10.5 4.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M218.7 207.5s-3.5 1.8-3.8 2.5c-.4.8 10.7-1.1 16.7-5.4l-2.4-1.4-10.5 4.3z"/>
+  <path fill="#452c25" d="M222.9 208.2s-6.5 2.4-1.8 2.5c0 0 9.3-2 14.2-5.7l-1.2-1.9-11.1 5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M223 208.2s-6.6 2.4-1.9 2.5c0 0 9.3-2 14.2-5.7l-1.2-1.9-11.2 5z"/>
+  <path fill="#452c25" d="M232.4 201.7s-6.8 3.5-6 3.9c.7.4 5.6-.7 8.1-2.3 2.6-1.6 3.6-2.5 3.6-2.5l-3-.8-2.7 1.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M232.4 201.7s-6.8 3.5-6 3.9c.7.4 5.6-.7 8.1-2.3 2.6-1.6 3.6-2.5 3.6-2.5l-3-.8-2.7 1.7z"/>
+  <path fill="#452c25" d="M229.8 209.4s-2.4 2-2.1 2.2c.3.3 5.3-.5 9.2-3.6l-.5-1.8-6.6 3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M229.8 209.4s-2.4 2-2.1 2.2c.3.3 5.3-.5 9.2-3.6l-.5-1.8-6.6 3"/>
+  <path fill="#452c25" d="M225.6 209s-2.3 1.9-1.8 2c.5.2 2.5 1.6 11.2-4.2l1-.6-1.5-2.2-9 4.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M225.6 209s-2.3 1.8-1.8 2c.5.2 2.5 1.6 11.2-4.2l1-.6-1.5-2.2-8.9 5z"/>
+  <path fill="#452c25" d="M223.8 202.2A72.3 72.3 0 00209 210l19-7.6m12 11.4s-1.6 2.4-1.3 2.7c.3.3 2.3 1.2 4.6-1.9 2.2-3-2.2-2.6-2.2-2.6l-1.1 1.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M240 213.8s-1.6 2.4-1.3 2.7c.4.3 2.3 1.2 4.6-1.9 2.2-3.1-2.2-2.6-2.2-2.6l-1.1 1.8z"/>
+  <path fill="#452c25" d="M241.7 215.5s-1 2.5-.5 2.8c.6.2 2.1-.2 3.4-2.5s-.6-1-.6-1l-2.3.7zm-3.5-3.8s-2.4 3-1.9 3.4c.5.4 3.2.3 5.3-2.6 2-2.8 0-.1 0-.1l-.6-2.6-2.8 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M241.7 215.5s-1 2.5-.5 2.8c.6.2 2.1-.2 3.4-2.5s-.6-1-.6-1l-2.3.7zm-3.5-3.8s-2.4 3-1.9 3.4c.5.4 3.2.3 5.3-2.6 2-2.8 0-.1 0-.1l-.6-2.6-2.8 1.8"/>
+  <path fill="#452c25" d="M236 210.3s-2.4 2.7-2.2 3.2c.3.4 3.4.3 6-2.4 2.6-2.8.5-3.7.5-3.7L236 210"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M236 210.3s-2.4 2.7-2.2 3.2c.3.4 3.4.3 6-2.4 2.6-2.8.5-3.7.5-3.7L236 210"/>
+  <path fill="#452c25" d="M231.8 210.5l-1.5 2s.5 1.9 5.5-1.6l4.8-3.2-2.7-.5-6.1 3.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M231.8 210.4l-1.4 2s.4 2 5.4-1.5l4.8-3.2-2.7-.5-6 3.2z"/>
+  <path fill="#452c25" d="M215.7 207.4l-3.3 1.5s-.7.6 1.2.7a41.8 41.8 0 0017.6-7.7l-2.5-1-13 6.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M215.7 207.4l-3.3 1.5s-.7.6 1.2.7a41.8 41.8 0 0017.6-7.7l-2.5-1-13 6.5z"/>
+  <path fill="#452c25" d="M210.2 209.5s4.6-.5 6.4-1.7c0 0-.3.5 2-.4 0 0-1.2 2.1 5.7-2 7-4.3 0-.2 0-.2l7.8-4.4-.5-.8-15.7 6.6a58 58 0 00-5.7 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M224.4 205.3l7.6-4.5-.4-.8-15.7 6.6c-1.1.3-5.7 2.9-5.7 2.9s4.6-.5 6.4-1.7c0 0-.3.5 2-.4 0 0-1.1 2 5.8-2.1z"/>
+  <path fill="#452c25" d="M243.8 215.4s-.5 3.7 0 3.8c.6.1 2.1-1 2.8-3.3.6-2.2-2.5-2-2.5-2l-.5 1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M243.8 215.4s-.5 3.7 0 3.8c.6.1 2.1-1 2.8-3.3.6-2.2-2.5-2-2.5-2l-.5 1.4"/>
+  <path fill="#452c25" d="M246.2 217s-.3 2.6 0 2.9c.4.2 1.3.3 2.4-1.8l.6-1.3-2.5-1.4-.5 1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M246.2 217s-.3 2.6 0 2.9c.4.2 1.3.3 2.4-1.8l.6-1.3-2.5-1.4-.5 1.5z"/>
+  <path fill="#452c25" d="M246.8 212.3s-2 4.3-.8 4.3c1.1 0 2.6-3.3 2.9-4 .2-.8-2-.3-2-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M246.8 212.3s-2 4.3-.8 4.3c1.1 0 2.6-3.3 2.9-4 .2-.8-2-.3-2-.3z"/>
+  <path fill="#452c25" d="M246.7 212.3s-.8 4.7.3 4.3c1-.4 1.7-4 1.7-4.8 0-.7-2 .4-2 .4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M246.7 212.3s-.8 4.7.3 4.3c1-.4 1.7-4 1.7-4.8 0-.7-2 .4-2 .4z"/>
+  <path fill="#452c25" d="M248.3 212.7s-1.2 3.7 0 4.5c1 .7 2-3.7 2-4.7s-2 .2-2 .2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M248.3 212.7s-1.2 3.7 0 4.5c1 .7 2-3.7 2-4.7s-2 .2-2 .2z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M243.7 211.5s-1.2 3.4-.5 3.8c1.3.6 2.4-2.4 2.5-3.5.2-1.3-2-.3-2-.3zm-8.5-7s-3 2.5-2.7 2.9c.4.4 4-.3 5.5-1.4 1.6-1 2.2-1.6 2.2-1.6l-2.7-1.7-2.3 1.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M237.9 202s-2 1.5-1.6 1.9c.3.4 3.8-1 4.5-1.7.6-.7.6-1.4.6-1.4l-3.5 1.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M239.9 201.7s-2.7 2.2-2 3c.6.7 4.3-2.8 4.8-3.2.5-.5-3.1 0-3.1 0"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M238.7 200.7l-5.3 2.5s-4.5 3-4 3.2c.4.3 3.9-.6 6.4-1.9 2.5-1.2 5.2-3.3 5.2-3.3m-.8 2.4s-5.8 4.9-5 5.4c1 .5 4.8-1.6 7.4-4"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M240.9 205.2s-3.3 5.5-2.9 6c.4.6 2.7-1.3 3.9-2.7 1.2-1.3 2.1-3.4 2.1-3.4"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M242.8 205.7s-3.6 6.5-3.2 7c.4.6 2.5.2 3.7-2.4 1.2-2.6 1.1-4.2 1.1-4.2l-1.6-.4z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M244.8 206s-3.9 8-3.1 8.8c.7.8 5-6 5.3-7 .3-1.8-2.2-2-2.2-2m-8.2-5.2s-3.6 1.7-2.8 2c.7.4 4-1 4.4-1.2.5-.2-1.6-.8-1.6-.8z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M237.1 201.2s-2.2 1.7-1.7 2.2c.4.4 3.7-1.4 4.4-2 .6-.5-2.7-.2-2.7-.2zm4.6.1s-3 4-2.1 4.2c1 .1 4.4-2.6 4.4-3 0-.5-2.3-1.2-2.3-1.2z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M243 202.2s-3.2 4-2.3 4.3c1 .2 1-.4 1-.4s2.5-2.1 2.7-2.6c.2-.6-1.3-1.3-1.3-1.3"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M244 203.2s-2.3 4-1.7 4.2c.6.2 1.5-.7 2.5-2 1-1.1-.8-2.2-.8-2.2z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M244.6 205s-1.4 2.5-1 3.3c.3.8 1.7-.6 2.3-1.5.6-.9-1.3-1.8-1.3-1.8zm.6 7s-1 3.4-.3 3.7c1.4.7 2.2-2.3 2.3-3.5.2-1.3-2-.2-2-.2z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M251.4 207.4s-1-.3-1.6-.3c0 0-2-1.6-3-1.8-1.2-.1-.3-.1-.3-.1s0-2.6-.4-2.8c0 0-.2-2.7-1.8-2.9-1.7-.2-5.5.2-6.2 0-.6-.3-2.7-1.2-6.7-.1-4 1-12 4.6-12.3 4.7-.4.1 9-2 11.8-3.2 0 0 2.6-.2 3.4-.5 0 0-3 1.5-.2.9 2.8-.7 2.2 0 2.2 0s-.3.6 1.3.2c1.6-.3 1.6 0 1.6 0s1.8.7 3.2-.2c0 0 .7 2.6 1.6 3 0 0 1.1 2.2 3.4 2.7l1.3.9 1.3.4 1.3-1"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M232.8 200.6s-9 3.2-8.7 4c.3 1 9.4-2.4 10.9-3.4 1.4-.9-2-.7-2-.7"/>
+  <path d="M257.9 207.6l.6.2a1.6 1.6 0 00-.4-.4l-.7-.3.1.2.4.3m-7 6.8c0 .3 0 .6.2.8v-.1c-.1-.3-.1-.6-.3-.8v.1m1.3-7l.9-.1v-.2c-.3 0-.6 0-1 .2v.1m1.9-.1l.9-.2v-.1a2 2 0 00-1 .2m-3 1.7h-.1a.3.3 0 000 .2v-.2m-.2 4.9v.7a.3.3 0 000-.1 4.3 4.3 0 010-.6c0-.1 0-.1 0 0"/>
+  <path fill="#bd8759" d="M252.4 228.2l-1.2 1.1a4 4 0 00-.1.7s.9 0 .8.4c0 0 .3.2.8-.9.4-1 .9-1.6 1.2-1.5.3 0 .8.3 1 .6.2.2.5.4.9.3 0 0-.4-.6-.2-.8h.7s-.4-.8-1-1c-.7 0-1.2-.2-1-.5l1-2.6-1.1-1.6-.5 1.4.2 1c0 .3-1 2.2-1 2.3l-3 1.2c-.2 0-.8.8-.8.8v.5s.3-.3.5-.1c0 0 .2-.4.5-.3l.2.2.5-.4.1-.1.6-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M252.4 228.2l-1.2 1.1a4 4 0 00-.1.7s.9 0 .8.4c0 0 .3.2.8-.9.4-1 .9-1.6 1.2-1.5.3 0 .8.3 1 .6.2.2.5.4.9.3 0 0-.4-.6-.2-.8h.7s-.4-.8-1-1c-.7 0-1.2-.2-1-.5l1-2.6-1.1-1.6-.5 1.4.2 1c0 .3-1 2.2-1 2.3l-3 1.2c-.2 0-.8.8-.8.8v.5s.3-.3.5-.1c0 0 .2-.4.5-.3l.2.2.5-.4.1-.1.6-.2"/>
+  <path fill="#bd8759" d="M259.3 223.1v2.3c0 .4 0 .9-.2 1.2-.2.3-.4.5-.7.5s-1.2 0-1.4.3a5.4 5.4 0 01-.3.5s.6-.4.6 0c.1.3-.2.5-.2.5s.5.1 1-.1c.4-.3.7-.4.9-.4.2 0 .4.3.4.3v1c0 .5 0 1.3.4 1.3 0 0 .1-.4.3-.5.2 0 .6.4.5.6v-1.4l-.3-1s1.4.5 1.5.7l.6.4c.1 0 0-.5.3-.5h.3s-.4-.9-1-1.2l-1.3-.5c-.2-.3-.3-.6-.3-1v-3l-1-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M259.4 223v2.4c0 .4 0 .9-.3 1.2-.2.3-.4.5-.7.5s-1.2 0-1.4.3a5.2 5.2 0 01-.3.5s.6-.4.6 0c.1.3-.2.5-.2.5s.5.1 1-.1c.4-.3.7-.4.9-.4.2 0 .4.3.4.3v1c0 .5 0 1.3.4 1.3 0 0 .1-.4.3-.5.2 0 .6.4.5.6v-1.4l-.3-1s1.4.5 1.5.7l.6.4c.1 0 0-.5.3-.5h.3s-.4-.9-1-1.2l-1.3-.5c-.2-.3-.3-.6-.3-1v-3l-1-.1z"/>
+  <path fill="#dcddde" d="M250.7 210.5s-.1-1.4.3-1.6c0 0 .1-1.2 1.8-1 0 0 .6-1 1.5-.5 0 0 .8-.4 1.3-.2a5 5 0 011.2.8s.7-.1 1 .1c.4.3.2 1.2.2 1.2s.9.6 1 1.2c0 .5 0 .7-.2.9 0 0 .4.3.3.7 0 .4-.4 1-.5 1s0 1.1-.3 1.5c-.4.4-.7.4-.9.5-.1 0-.5.6-1 .7-.3 0-.8-.6-.9-.8 0-.2-.5-.4-.5-.4s-1.2 1.3-2 1a2 2 0 01-1.2-1l-.3-1s-1-.5-.8-1c0-.5.4-1 .4-1l-.4-1.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M253.7 226a.3.3 0 01-.3 0m.7-1a.8.8 0 01-.4 0m0 .6h.2m-1 1.5a.3.3 0 00.1.1m6.9-1l.5.1m-.2-.6h-.4m.4-.6a1 1 0 01-.4 0m-.1 2l.4.1m-.4.5a.2.2 0 01.2 0m0 1.7a.4.4 0 01.2 0m-5.4-2.2a.4.4 0 00-.3.3m1.1-.2c-.2.1-.3.3-.3.5m-4.9.4l.5.3m10.5-1a.4.4 0 00-.2.3m.8 0a.2.2 0 00-.1.1"/>
+  <path fill="#d9c0b9" d="M249 229.4l.6-.1s-.3.7-.2 1c0 0-.6-.4-.4-.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M249 229.4l.6-.1s-.3.7-.2 1c0 0-.6-.4-.4-.9z"/>
+  <path fill="#d9c0b9" d="M251.3 229.8s-.7 1.1.1 1.7c0 0 0-1 .6-1.3l-.8-.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M251.3 229.8s-.7 1.1.1 1.7c0 0 0-1 .6-1.3l-.8-.3z"/>
+  <path fill="#d9c0b9" d="M255.6 228.8l-.2-.6.2-.2h.6s.4.9 0 1.3c0 0 0-.5-.2-.5h-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M255.6 228.8l-.2-.6.2-.2h.6s.4.9 0 1.3c0 0 0-.5-.2-.5h-.4z"/>
+  <path fill="#d9c0b9" d="M257 227.6h.4l.1.4v.3l-.4.2s-.5-.2-.4.5c0 0-.2-1.2.3-1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M257 227.6h.4l.1.4v.3l-.4.2s-.5-.2-.4.5c0 0-.2-1.2.3-1.4z"/>
+  <path fill="#d9c0b9" d="M259.7 230.3l.4-.5.4.3-.2 1.2v.1l-.3-.3-.3-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M259.7 230.3l.4-.5.4.3-.2 1.2v.1l-.3-.3-.3-.8z"/>
+  <path fill="#d9c0b9" d="M262.3 229.1s.7.8.6 1c0 0 .7-.6-.2-1.5l-.4.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M262.3 229.1s.7.8.6 1c0 0 .7-.6-.2-1.5l-.4.5z"/>
+  <path d="M259.5 209c.1 0 .2 0 .3.2v-.1c0-.2-.2-.3-.3-.3v.1m.1 2.3l.5.7v-.1a1.8 1.8 0 00-.5-.8v.2m-.4-1.7l.5.6v-.1l-.5-.6v.1m.5 3.7l-.1 1a2 2 0 00.1-1.1.4.4 0 000 .1m.5 1.2v-.1m2 4.1a5.1 5.1 0 01.1 1.4l-.1-1.5v.1m-.3 1a7.9 7.9 0 01-.4.9v.1a7.8 7.8 0 00.4-1m-11-3.2l.8 1.3v-.1l-.8-1.3v.1m2 0c-.3.1-.4-.3-.6-.4v.2c.2 0 .3.4.5.4v-.1m-1 1.8l.5 1-.5-1.1v.1m1.2.5c.3.2.5.5.6.8v-.1a2.9 2.9 0 00-.6-.9v.2m0 1.3l.3.7v-.2l-.4-.7v.2m1.2.2a3 3 0 01.1.8 3.5 3.5 0 000-.9s-.1.1 0 .1m-.6 1.1c0 .4.2.7.4 1v-.1l-.4-1a.4.4 0 000 .1m.3-4.6l.9.2a8.6 8.6 0 01-.9-.4v.1m.2 1.3l1 .5v-.2l-1-.5v.2m.3 1.3l.6.6v-.1a4.8 4.8 0 01-.6-.6v.1m.4 1.7l.3.8a.3.3 0 000-.1 1.9 1.9 0 00-.3-.8v.1m1-4.2l.1.5v-.1a10.8 10.8 0 010-.5.3.3 0 000 .1m2.4-1l-.2.5v.2a3.8 3.8 0 00.3-.6m1-.1v.8a.4.4 0 000 .1 4.4 4.4 0 000-1m.2 1.7a3 3 0 010 .7.6.6 0 000 .1 4 4 0 000-.8m.8 1.5a1.4 1.4 0 01-.5.8v.2c.3-.3.5-.6.5-.9a.5.5 0 000-.1m-2.6-1.5l-.2.4v.1l.2-.4v-.1m.3 2a2 2 0 01-.3.4v.2a2 2 0 00.3-.4v-.1m-.9 1c-.3-.4-.5-.8-.3-1.3v-.1c-.2.5-.1 1.1.3 1.5v-.1m-1.2-1.1v.7a2 2 0 000-.9.3.3 0 000 .2m2.8 1.3l-.3.7v.1l.3-.7m1.8.7l-.5.7v.2a9.7 9.7 0 00.5-.8v-.1m.8.9a18 18 0 000 .1.5.5 0 000-.1m1.1-1.7v.5c0 .1 0 0 0 0v-.5c0-.1 0 0 0 0m-11.8-5.2v1.4s.1-.1 0-.1v-1.2"/>
+  <path fill="#fff" d="M254.7 209.4c.8-.7 1.8-1.4 2.9-1.1v-.2c-1-.2-2.1.5-2.9 1.2v.1m3.7.9c-.8-.6-2-.7-2.8-.1v.1c.7-.6 2-.4 2.8.1v-.1m-3 1.1a6 6 0 01.6 3.2.5.5 0 000 .1c.2-1.2-.2-2.3-.5-3.4v.2m-1.2.6c.2 1 0 2 0 3v.1c0-1 .2-2.2 0-3.2m1.6-.7c1 .3 2 1 2.5 1.8v-.1a4.1 4.1 0 00-2.5-1.8v.1m-.9 1.4l-.1 1.9v.1c.2-.6.1-1.3.1-2m1.6-.1c.6.5 1.1 1.3 1.2 2a3.4 3.4 0 00-1.2-2.2v.2m-4.6 1.7c.2-.3.4-.6.8-.8v-.1c-.4.1-.6.5-.8.8m1.5-5.3a2 2 0 00-1-1.2v.1c.4.3.8.7 1 1.2v-.1m-1 0a3.7 3.7 0 00-1.6-.3v.1c.6 0 1.1 0 1.7.3v-.1m1.6-.1c0-.5 0-1-.5-1.4v.1c.4.3.6.7.5 1.2m2 .7c.5-.2 1-.2 1.5-.2v-.1c-.5 0-1 0-1.5.2v.1m.9 1.4c.7 0 1.3.4 1.8 1v-.3a2.8 2.8 0 00-1.8-1v.3m-3.4 2c-.2.8 0 1.7-.9 2v.3c.9-.3.7-1.3 1-2v-.3"/>
+  <path fill="#fff" d="M255.5 212.3c.3.7.7 1.5.5 2.4a1 1 0 000 .2c.2-1-.2-2-.5-2.9v.3m1-.2a2 2 0 011.6 1.6v-.1a1 1 0 000-.2 1.8 1.8 0 00-1.5-1.5v.2m0 1.1c0 .7.3 1.3 0 2v.2c.3-.8.1-1.6 0-2.4a1 1 0 000 .2m-.4-2.7c.8-.2 1.6-.3 2.3.3v-.3c-.7-.6-1.5-.4-2.3-.3v.3m-1.5-1.6c0-.7.7-1.2 1.3-1.4v-.3c-.7.2-1.2.7-1.3 1.4a1 1 0 000 .2m-.8.5c0-.8-.3-1.4-.6-2v.2c.2.6.6 1.2.6 1.8 0 .2 0 0 0 0m-.7.4a2 2 0 00-1.1-1.4v.2c.5.3 1 .8 1.1 1.4a.8.8 0 000-.2m-1-.3a3 3 0 00-1.3-.6v.2c.5.1.9.4 1.3.6v-.2m2.3 3.1c0 .7.2 1.4-.2 2v.3c.5-.7.3-1.6.3-2.5v.2"/>
+  <path fill="#fff" d="M255.3 212.1c.3.7.6 1.4.5 2.1v.2c0-1-.2-1.7-.5-2.5v.2m.6-1c.7.3 1.3.5 1.8 1v-.2a3.8 3.8 0 00-1.8-1v.3m-1.8-1.5a16 16 0 00.1-1.8c0-.2 0-.2 0 0 0 .5 0 1-.2 1.6v.2m-1.2-.4a6 6 0 01-1.3-.9v.3l1.3.9v-.3m-.2 3.5c-.3.2-.5.5-.7.9v.2l.7-.8v-.3m.9.6c0 .4-.3.8-.6 1.2v.2c.4-.4.6-.8.6-1.4 0 0 0-.2 0 0m2.3-3.8c.4-.7 1.3-.7 2-1v-.2c-.7.2-1.6.2-2 .9v.2m-4.5 0a2.2 2.2 0 01-.4-.2v.2l.4.2v-.2m.1 3.3a1 1 0 00-.4.2v.3l.4-.2v-.2a.8.8 0 000-.1m.6.1l-.7.7v.2l.7-.7v-.2m1.1.3c-.2.6-1 1.3-.4 2v-.3c-.4-.5.2-1 .4-1.4v-.3m.8 0l-.2 1.8a1 1 0 000 .3 10.5 10.5 0 00.2-2.1m2-.7c.5.6.9 1.2 1 2v-.3a5.7 5.7 0 00-1-2v.3m.2-.5c.8.5 1.6 1 2.1 1.9v-.3c-.5-.8-1.3-1.3-2-1.9v.3"/>
+  <path fill="#fff" d="M256.6 211h.8l.6.5c.2.1.5.2.6.4.3.3.3.7.3 1a.8.8 0 000-.2l-.1-.8-.5-.5-.8-.5c-.3-.2-.6-.2-1-.1v.2"/>
+  <path fill="#fff" d="M258.4 212.5l.3.8v-.2l-.3-.7v.1m-2.1-3.8l1.6-.4v-.3l-1.6.4v.3m-2.2.3a2.4 2.4 0 01.4-.8l.4-.9v-.3l-.4.8c0 .3-.3.6-.4 1v.2m-1.8 5l.1 1.3v-.3a1.5 1.5 0 010-.8v-.2m1 .8c-.2.2-.2.6 0 1v-1m.8-.5l-.2.8v.2l.2-1s0-.1 0 0m0-1.5v.5-.6.1m-.3.2a.9.9 0 010 .1.8.8 0 000 .3v-.7.3m-.6-.2a3.7 3.7 0 000 .5.8.8 0 000 .2v-.6m-.4 0l-.9.6v.3l1-.7v-.2m-.8 0c-.1.2-.3.3-.5.3v.3c.2 0 .4-.1.5-.3v-.1a3.3 3.3 0 000-.1m-1-.3l-.4.2v.2l.4-.2v-.2m3-.1l.1.5a.8.8 0 000-.2v-.4.1m.4-.2l.1.6a.4.4 0 000-.1v-.2a1 1 0 010-.3v-.2.2m.3 0l.1.3v-.1a.9.9 0 000-.5h-.1v.2m.4-.1a.8.8 0 01.4.2v-.4a.8.8 0 00-.4-.2v.3m.3-.4l.6.3v-.3a1.3 1.3 0 01-.6-.3v.4m.5-1.2h.4v-.2a2.5 2.5 0 00-.4 0v.2m-.3-.6l.4-.4a5.7 5.7 0 000-.2l-.4.4v.2m-.4-.5a1 1 0 01.2-.5v-.2a1.1 1.1 0 00-.2.6s0 .1 0 0m-.4-.2l.5-.8v-.2l-.5.8v.2"/>
+  <path fill="#fff" d="M254.4 208.3l.1 1v-.1a.7.7 0 000-.2v-.8.1m-1.4.2l.2.4a2 2 0 01.1.3c0-.1 0 0 0 0v-.3l-.3-.6v.2m-.2.6a4.8 4.8 0 00-.6-.5 1.6 1.6 0 000 .1v.2l.6.4v-.2m.8.3a3 3 0 00-.1-1.8v.3c.2.4.2.8.1 1.2v.2m1.3-.7v-.3.3"/>
+  <path fill="#fff" d="M253.6 209.4l.1-1v-.3l-.2 1a1.6 1.6 0 000 .3m3.8 2.1c.3.1.6.3.7.6v-.4c-.1-.3-.4-.5-.7-.6v.4m-1 2v.6a1.2 1.2 0 000 .3s0 .1 0 0a2.8 2.8 0 000-1.2.7.7 0 000 .1v.3m-.9-.6v1.3s0 .2 0 0v-1.5.2m-.4.4a22.6 22.6 0 00-.3 1.7l.3-1.3v-.4m.6.3v1.1a1.5 1.5 0 000 .3c0 .1 0 .1 0 0v-1.6.2m-2.8.2a.7.7 0 010 .1v-.5.1a1.4 1.4 0 000 .3m1.2-.8l.1.4v-.8.4m.3-.2a.4.4 0 01.1.2s0 .1 0 0a.7.7 0 000 .2v-.3l-.1-.5a1.4 1.4 0 000 .2v.2m.4-.3l.2.4a1 1 0 000-.2v-.2l-.2-.4a2.8 2.8 0 000 .3m.9-.3l.5.7v-.4a10 10 0 01-.5-.7v.4m.4-.7l.5.6v-.5a4.4 4.4 0 01-.4-.6v.5m-4.6-2.1a1.8 1.8 0 00-.5-.3v.4c.2 0 .3.2.5.3v-.4m1.4-.5a.5.5 0 010 .1v.1l.1-.2a1 1 0 000-.4 1 1 0 000 .1v.3m1-1.1l-.1.8v.3s0 .1 0 0c.2-.3.2-.8.2-1.2a.6.6 0 000-.1v.2m.2 1.5l.5-.6v-.4l-.5.6v.4m.7 0l.2-.3v-.3l-.2.2a1.4 1.4 0 000 .2v.2m1 .2a8.3 8.3 0 01-.7 0v.4a8 8 0 00.8 0v-.4m-.3 1c.4.1.7.4 1 .6 0 0 .2-.4 0-.4l-1-.7v.4"/>
+  <path fill="#fff" d="M256 211.2l.9.6v-.5l-1-.6a2.3 2.3 0 000 .2v.2m-2-1.5v-.6.6m-2.4-1c.2.3.6.5 1 .8l.6.7s.1-.4 0-.4l-.6-.6-1-1c0 .1-.1.4 0 .4m.6 1.2a8.2 8.2 0 01-.5-.6 1.8 1.8 0 000 .2v.2a8 8 0 00.5.6v-.4m-.4 2.7l-.3.6v.4l.3-.6v-.4m.3.4v.7a1.4 1.4 0 000 .3v-1.1a.7.7 0 000 .1m1.1 2c.2-.8.2-1.4.2-2.1 0-.3 0 0 0 0 0 .6 0 1.1-.2 1.6v.4m.6-1.6l.1.7a1.4 1.4 0 000 .3s0 .1 0 0v-1.4a.7.7 0 000 .2v.2m.6-.2c.2.3.3.6.2 1v.2c.1-.5.1-1.2-.2-1.6v.4"/>
+  <path fill="#fff" d="M254.5 212.6l.4 1.8v-.3a14.2 14.2 0 00-.3-1.9v.4m.5-.1l.7 1.1a.7.7 0 000-.1v-.3a4 4 0 00-.7-1.1v.4m1.2-1c0-.2-.3-.3-.5-.2v.4c.2 0 .4 0 .5.2v-.4"/>
+  <path fill="#fff" d="M255.7 211.3h1.2v-.5h-1.2v.5m.7-3.1a3 3 0 00-.5 1.3v.3s0 .1 0 0c0-.4.2-.9.5-1.2v-.4m-1.6.3c0 .4.2.7.3 1a.8.8 0 000-.1v-.3l-.3-1v.1a1.3 1.3 0 000 .3m-.3.6a1.6 1.6 0 01-.4-.5 1 1 0 000 .1v.3a1.7 1.7 0 00.4.5v-.4m-.6.3c-.5-.1-.9-.3-1.3-.6v.4c.4.3.8.5 1.3.6v-.4"/>
+  <path fill="#dba05f" d="M254.4 209.3l-2.3.4-2 .2-1.3-.4c-.4 0-1.7-.2-2.2.3l-1 .8c-.1.2-.7.7-.7 1 0 .2.1.6.4.6.3 0 1 .6 1 .8 0 .2.8.4 1.6.4 1.4 0 2.1-.7 4.2-.4 1.2 0 3.3-.8 3.7-1.4.4-.5.6-1.1.2-1.7-.3-.7-1.5-.6-1.6-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M254.4 209.3l-2.3.4-2 .2-1.3-.4c-.4 0-1.7-.2-2.2.3l-1 .8c-.1.2-.7.7-.7 1 0 .2.1.6.4.6.3 0 1 .6 1 .8 0 .2.8.4 1.6.4 1.4 0 2.1-.7 4.2-.4 1.2 0 3.3-.8 3.7-1.4.4-.5.6-1.1.2-1.7-.3-.7-1.5-.6-1.6-.6z"/>
+  <path d="M246.8 211.3v-.1l.1-.2.2-.2a.9.9 0 01.4-.3h-.1.7l-.7.1h.6-.5c-.3.1-.3.5-.7.7"/>
+  <path fill="none" d="M246.7 211.2l.4-.4.7-.3h.3"/>
+  <path fill="none" d="M247.4 210.6l-.4.3-.3.3m.8-.6h.5m-.6.1h.5"/>
+  <path d="M247.9 211l-.2.1-.1.1-.3.2-.4.1.5-.1-.4.1.4-.1-.4.1h.1s.4 0 .8-.4"/>
+  <path fill="none" d="M247.8 211l-.3.2s-.3.3-.4.2l-.2.1m.4-.1l.3-.2.2-.2m-.4.4l-.4.1m.4-.1l-.3.1"/>
+  <path fill="#c6262c" d="M248.4 209.6s0-.6-.6-.8a3.4 3.4 0 00-1.4-.2l-.6.1a2.7 2.7 0 00-.6.2v.3c-.2.2-.5.4-.4.6.2.3 0 .3.2.4.2 0 0-.1 0-.1s-1 .3-.8.9c.2.6.5.4.6.4l.5-.3.8-.7 1-.4h.6l.7-.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M248.4 209.6s0-.6-.6-.8a3.4 3.4 0 00-1.4-.2l-.6.1a2.7 2.7 0 00-.6.2v.3c-.2.2-.5.4-.4.6.2.3 0 .3.2.4.2 0 0-.1 0-.1s-1 .3-.8.9c.2.6.5.4.6.4l.5-.3.8-.7 1-.4h.6l.7-.4z"/>
+  <path d="M247.7 211l-.3.4-.4-.1.4-.5.3.1"/>
+  <path fill="#d9c0b9" d="M243.8 213.6s-.7-1.3 1.4-2l.8.6s-.4.6-1.6.8c0 0-.6.2-.6.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M243.8 213.6s-.7-1.3 1.4-2l.8.6s-.4.6-1.6.8c0 0-.6.2-.6.6z"/>
+  <path fill="#d9c0b9" d="M244 213.4s.9.1 1.5-.3c.4-.3.6-.2.7-.1 0 0 0-.5-.2-.8l-1 .7c-.5 0-.8 0-1 .5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M244 213.4s.9.1 1.5-.3c.4-.3.6-.2.7-.1 0 0 0-.5-.2-.8l-1 .7c-.5 0-.8 0-1 .5z"/>
+  <path fill="#7a2e26" d="M246.4 213h.5v-.2h-.5v.1m-.3-2.2c-.1 0 0 .2-.2.3v.1c.1 0 0-.2.2-.2v-.2m.5.3l.3-.2v-.1c-.2 0-.3 0-.4.2v.1m.6.8a.3.3 0 00.3-.1v-.1a.3.3 0 01-.3 0v.2m.5-.2a.8.8 0 00.4-.3v-.1a.8.8 0 01-.4.3v.1m-.7-.7l-.4.4v.1l.4-.4v-.1m.3 2.2l1-.1v-.2a3.3 3.3 0 01-1 .2m1.6 0c.5-.3 1-.6 1-1.2v-.1c0 .6-.5.9-1 1.2v.1m.3-.8c.4-.2.6-.5.7-.9v-.1c-.1.4-.4.7-.7.9v.1m-.1-2c.2-.1.5.1.7.3v-.2l-.7-.3v.1m6.6 1c.3-.4.2-1-.1-1.4v.1c.2.4.4.8.1 1.2v.2m-5-.7c.2.2 1 .8.8 1.2v.1c.3-.6-.4-1.2-.9-1.5v.2m2.3 2.2a1.6 1.6 0 00.1-.4.5.5 0 000-.1v.5"/>
+  <path fill="#5e3f17" d="M253.7 212.5l.6-.3m-9-.2c-.4.2-1 .2-1 .7 0-.5.6-.5 1-.7"/>
+  <path fill="#842116" d="M245 210.4c.1 0 .3.1.3.3a.5.5 0 000 .1.7.7 0 000-.3c0-.2-.2-.2-.3-.2v.1m.7.3a.7.7 0 000-.6v.6m.6-.6c0-.2-.1-.5-.4-.6v.1c.3.1.3.4.4.6a.3.3 0 000-.1m.5-.1c0-.2 0-.5-.2-.6v.1l.2.4m-.9-.7c.5-.2 1.6-.3 2 .2v-.2c-.4-.5-1.5-.4-2-.1v.1"/>
+  <path fill="#7a2e26" d="M244.8 211.3v-.5s-.1 0 0 0v.5m5 1.5a.7.7 0 00.3-.5v-.1a.7.7 0 01-.3.4v.2m.8-.1a.4.4 0 00.1-.3l-.1.2v.1m4.6-2.5a1 1 0 01.1.7.4.4 0 000 .1v-1s-.1.1 0 .2m-.6.4l.1.7v-.8.1m-.5.4"/>
+  <path fill="#452c25" d="M260.5 224.5l.1.3h.1l-.1-.3z"/>
+  <path fill="#dcddde" d="M250 208c-1.7 0-3.5-1.2-3.5-1.2-2.3-.4-2.4-2.5-2.4-2.5-1-.3-1.7-2.6-1.7-2.6-1.4.8-3.2 0-3.2 0s0-.4-1.6 0c-1.6.3-1.3-.3-1.3-.3s.6-.7-2.2 0c-2.8.6.3-.9.3-.9-.9.3-3.5.5-3.5.5-1 0-2 .5-3 .8-.8.2-2 .4-2.5.7l-7.3 3.1-5.9 2.3c.3 0 3.7-2.3 8-4.2a93.5 93.5 0 0111-4.2c3.1-1 5.6-.5 7 0 .7.2 4.4-.1 6 0 1.8.3 2 3 2 3 .2.2.4 2.8.4 2.8s-1 0 .1.2 3.1 1.7 3.1 1.7h.8s.4-.5.9-.7l1.6-.5h2.1l2.2.3c.9.1 1 .2 1.3.3h.5c1-.5 3.2-1.3 3.6-1.2 0 0 .8-.2 1.2-.5a112 112 0 001.4-1.1s-.6-4.7 4.1-4.3l12.3 1.3a47.8 47.8 0 0112.5 4.5l4.3 1.9c2.4 1 4.1 2.5 4.1 2.5l-3.8-1.9c-1-.4-2-.6-2.8-1l-3.9-1.8c-3.7-1.7-3.6-1.8-5.1-1.9-1 0 .7 1.2.7 1.2l-4.4-1.7a6.3 6.3 0 00-3-.6 6.2 6.2 0 01-2.4-.3c-.6-.2-4-.4-4.7-.4a7.8 7.8 0 01-1-.2l.2.4-1.7-.3-.5.7s-1.6.3-1.7-.2c-.2-.5-1 2.4-1.4 3.2-.4.9-2.4.6-2.9 1.1-.4.6-1.5 1-1.7 1-.2.2-1 .1-1.4.1-.6 0 0 0-1.1.2l-1.2-.1-1.5-.5-3.8-.2a6 6 0 00-1.5.4l-1.3.8"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M250 208c-1.7 0-3.5-1.2-3.5-1.2-2.3-.4-2.4-2.5-2.4-2.5-1-.3-1.7-2.6-1.7-2.6-1.4.8-3.2 0-3.2 0s0-.4-1.6 0c-1.6.3-1.3-.3-1.3-.3s.6-.7-2.2 0c-2.8.6.3-.9.3-.9-.9.3-3.5.5-3.5.5-1 0-2 .5-3 .8-.8.2-2 .4-2.5.7l-7.3 3.1-5.9 2.3c.3 0 3.7-2.3 8-4.2a93.5 93.5 0 0111-4.2c3.1-1 5.6-.5 7 0 .7.2 4.4-.1 6 0 1.8.3 2 3 2 3 .2.2.4 2.8.4 2.8s-1 0 .1.2 3.1 1.7 3.1 1.7h.8s.4-.5.9-.7l1.6-.5h2.1l2.2.3c.9.1 1 .2 1.3.3h.5c1-.5 3.2-1.3 3.6-1.2 0 0 .8-.2 1.2-.5l1.4-1.1s-.6-4.7 4.1-4.3l12.3 1.3a47.8 47.8 0 0112.5 4.5l4.3 1.9c2.4 1 4.1 2.5 4.1 2.5l-3.8-1.9c-1-.4-2-.6-2.8-1l-3.9-1.8c-3.7-1.7-3.6-1.8-5.1-1.9-1 0 .7 1.2.7 1.2l-4.4-1.7a6.3 6.3 0 00-3-.6 6.2 6.2 0 01-2.4-.3c-.6-.2-4-.4-4.7-.4a7.8 7.8 0 01-1-.2l.2.4-1.7-.3-.5.7s-1.6.3-1.7-.2c-.2-.5-1 2.4-1.4 3.2-.4.9-2.4.6-2.9 1.1-.4.6-1.5 1-1.7 1-.2.2-1 .1-1.4.1-.6 0 0 0-1.1.2l-1.2-.1-1.5-.5-3.8-.2a6 6 0 00-1.5.4l-1.3.8"/>
+  <path fill="#452c25" d="M250.3 207.4s-.2.1-.3.5v.2"/>
+  <path fill="#574f4c" d="M259.5 206.9l.7.5s0 .1 0 0a7 7 0 00-.8-.7.6.6 0 00.1.2"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bq.svg
new file mode 100644
index 0000000..cc872ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bq.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bq" viewBox="0 0 512 512">
+  <path fill="#21468b" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v341.3H0z"/>
+  <path fill="#ae1c28" d="M0 0h512v170.7H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/br.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/br.svg
new file mode 100644
index 0000000..8353e82
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/br.svg
@@ -0,0 +1,45 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-br" viewBox="0 0 512 512">
+  <g stroke-width="1pt">
+    <path fill="#229e45" fill-rule="evenodd" d="M0 0h512v512H0z"/>
+    <path fill="#f8e509" fill-rule="evenodd" d="M261.4 405.4l229.8-149.2L260 106.6l-230.7 150 232 148.8z"/>
+    <path fill="#2b49a3" fill-rule="evenodd" d="M361.5 256a97.2 97.2 0 11-194.3-.2 97.2 97.2 0 01194.3.2z"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M232.3 314.2l-3-1.8-3.1 1.6.7-3.5-2.4-2.5 3.4-.4 1.6-3.2 1.5 3.3 3.4.6-2.6 2.4m65.7 20l-3-1.8-3.2 1.6.7-3.5-2.4-2.5 3.5-.4 1.6-3.2 1.4 3.3 3.4.6-2.5 2.4m-27.6-22.9l-2.6-1.5-2.7 1.3.6-3-2-2.2 2.9-.3 1.4-2.7 1.2 2.8 3 .5-2.2 2m66.2-6.4l-2.6-1.5-2.6 1.3.6-2.9-2-2.1 2.9-.4 1.3-2.6 1.3 2.7 2.9.5-2.2 2m-66.6-16.7l-3-1.8-3.1 1.6.7-3.5-2.4-2.5 3.4-.4 1.6-3.1 1.5 3.2 3.4.6-2.6 2.4M188 245l-3-1.8-3 1.6.6-3.5-2.4-2.5 3.5-.4 1.6-3.2 1.4 3.3 3.4.6-2.5 2.4m10.1 43.5l-3-1.7-3.1 1.5.7-3.4-2.4-2.6 3.4-.4 1.6-3 1.5 3.1 3.4.7-2.6 2.3m100.6-51.3l-2.6-1.5-2.8 1.3.6-3-2-2.3 3-.3 1.4-2.8 1.3 2.9 3 .5-2.3 2.1m-5 29.2L290 255l-2.1 1 .4-2.4-1.6-1.7 2.4-.3 1.1-2.2 1 2.3 2.4.4-1.8 1.6m-108.4 38.5l-2-1.2-2.1 1 .4-2.3-1.6-1.7 2.4-.2 1-2 1 2 2.3.5-1.7 1.6m152.6 11.5l-1.7-.8-1.7.7.4-1.7-1.3-1.3 1.9-.2.9-1.5.7 1.6 1.9.3-1.4 1.2"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M183.5 292.3l-2-1.2-2.1 1 .5-2.3-1.7-1.7 2.3-.2 1.1-2 1 2 2.3.5-1.7 1.6"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M183.5 292.3l-2-1.2-2.1 1 .5-2.3-1.7-1.7 2.3-.2 1.1-2 1 2 2.3.5-1.7 1.6m32.2 2.3l-2-1.2-2 1 .4-2.3-1.6-1.7 2.3-.2 1-2.1 1 2.1 2.3.5-1.7 1.6m-3.7 13l-2-1.2-2 1 .4-2.3-1.6-1.7 2.3-.3 1-2 1 2 2.3.5-1.7 1.6m66.7-17l-2-1.2-2.1 1 .4-2.3-1.6-1.7 2.3-.2 1.1-2.1 1 2.1 2.2.4-1.7 1.6m-19.1 2.4l-2-1.2-2.1 1 .5-2.3-1.6-1.7 2.3-.2 1-2.1 1 2.1 2.3.4-1.7 1.6m-52.5-4.4l-1.2-.7-1.3.6.2-1.5-1-1 1.5-.2.7-1.3.5 1.4 1.5.2-1 1M333.2 310l-2-1.1-2.1 1 .5-2.3-1.6-1.7 2.3-.3 1-2 1 2 2.3.5-1.7 1.6m-16 4.4l-1.6-1-1.7 1 .4-2-1.4-1.4 2-.2.8-1.7.8 1.7 2 .4-1.5 1.3m8 1.8l-1.6-1-1.6.9.3-1.8-1.2-1.3 1.8-.2.8-1.6.7 1.6 1.8.3-1.3 1.3m22.2-17.4l-1.5-.9-1.6.8.4-1.7-1.2-1.3 1.7-.2.8-1.5.7 1.6 1.7.3-1.3 1.2M317 322.9l-2-1.1-2 1 .5-2.2-1.6-1.5 2.2-.3 1.1-1.9 1 2 2.1.4-1.6 1.4m.4 10.9l-1.8-1-1.8.9.4-2.2-1.4-1.5 2-.3 1-1.9.8 2 2 .4-1.5 1.4M302.3 312l-1.5-.9-1.6.8.4-1.8-1.2-1.2 1.7-.2.8-1.6.7 1.6 1.7.3-1.3 1.2m-13.5 1.8l-1.5-.9-1.6.8.4-1.8-1.2-1.2 1.7-.2.8-1.6.7 1.6 1.7.3-1.2 1.2M265 291.4l-1.5-.9-1.6.8.4-1.7-1.2-1.3 1.7-.2.8-1.5.7 1.6 1.7.3-1.3 1.1m2.9 43.5l-1.3-.7-1.3.7.3-1.5-1-1 1.4-.3.7-1.3.6 1.4 1.5.2-1.1 1m-35.2-66l-3-1.7-3.1 1.5.7-3.4-2.4-2.6 3.4-.4 1.6-3.1 1.5 3.2 3.4.6-2.6 2.4"/>
+    <path fill="#fff" fill-rule="evenodd" d="M355.1 291a95 95 0 004.4-15.1c-51.6-45.4-109.2-68.7-182-63.9a95 95 0 00-6.4 15.9 233 233 0 01184 63z"/>
+    <path fill="#309e3a" d="M331.9 265.4l1.8 1a2.6 2.6 0 00-.2 1.8c.1.4.5.9 1 1.2.6.4 1.1.6 1.6.6.4 0 .8-.3 1-.6.1-.2.2-.4.1-.7l-.3-.8-1.2-1.3a5.9 5.9 0 01-1.4-2.3 2.8 2.8 0 011.6-3.3 2.9 2.9 0 011.7-.2 5.3 5.3 0 012 .9 6 6 0 012 2.4 3 3 0 01-.5 2.6l-1.8-1.1c.2-.5.3-1 .2-1.4-.1-.3-.5-.7-1-1-.5-.4-1-.5-1.4-.5a.8.8 0 00-.6.3.8.8 0 00-.1.7c0 .4.5 1 1.2 1.7l1.5 2a3 3 0 01-.2 3.2 3.1 3.1 0 01-1.4 1.1 3 3 0 01-1.9.2 6 6 0 01-2.1-1 4.6 4.6 0 01-2-2.5c-.3-.9-.2-1.9.4-3zm-8.8-5.7l2 1a2.6 2.6 0 00-.2 1.6c.1.5.5 1 1 1.3.6.4 1.1.5 1.6.4.4 0 .8-.2 1-.6a1 1 0 00.1-.6c0-.3-.1-.5-.4-.8l-1.2-1.3a6 6 0 01-1.5-2.2 2.8 2.8 0 01.3-2.4 2.8 2.8 0 011.2-1 3 3 0 011.7-.2c.6 0 1.2.3 2 .8 1 .7 1.8 1.4 2 2.3a3 3 0 01-.3 2.6l-1.9-1.1c.3-.5.3-1 .2-1.3-.2-.4-.5-.7-1-1a2.4 2.4 0 00-1.5-.5.8.8 0 00-.6.4.8.8 0 000 .7c0 .3.5.9 1.2 1.7.8.7 1.3 1.4 1.6 1.8a3 3 0 01-.1 3.3 3.2 3.2 0 01-3.2 1.4 6.1 6.1 0 01-2.2-.9 4.7 4.7 0 01-2.1-2.4 4.1 4.1 0 01.3-3zm-10.8-3l5.6-9 6.7 4-1 1.6-4.8-3-1.3 2 4.6 2.8-1 1.6-4.5-2.8-1.5 2.5 5 3-.9 1.6-6.9-4.2zm-15.8-12.9l.9-1.6 4 2.2-1.9 3.7a7.2 7.2 0 01-4.8-.6 5.8 5.8 0 01-2.2-2 4.5 4.5 0 01-.8-2.6c0-1 .3-1.9.8-2.8a6.1 6.1 0 012-2.3c.7-.6 1.7-.9 2.7-.9.7 0 1.6.3 2.5.7a5 5 0 012.3 2.2c.4.8.5 1.7.3 2.7l-2.1-.6a2.2 2.2 0 00-.2-1.5 2.5 2.5 0 00-1.2-1.1 2.9 2.9 0 00-2.4-.3c-.7.3-1.4 1-2 2a4.8 4.8 0 00-.5 3c.2.8.7 1.4 1.6 1.8l1.3.4h1.3l.6-1.2-2.2-1.2zm-68.8-17l1.6-10.6 3.2.5.8 7.5 3-7 3.1.5-1.5 10.6-2-.3 1.2-8.3-3.3 8-2-.3-.9-8.7-1.2 8.4-2-.3zm-10.7-1.3l1-10.6 7.8.7-.1 1.8-5.8-.5-.2 2.3 5.3.5-.1 1.8-5.3-.5-.3 3 5.9.5-.2 1.8-8-.8z"/>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M181.4 218.8c0-1 .2-2 .5-2.7l1-1.4 1.5-1a5.8 5.8 0 012.3-.3 5 5 0 013.7 1.6c1 1 1.3 2.3 1.3 4 0 1.8-.6 3.1-1.5 4a5 5 0 01-3.8 1.4 5 5 0 01-3.7-1.5 5 5 0 01-1.3-4z"/>
+      <path fill="#f7ffff" d="M183.6 218.8c0 1.2.2 2.2.8 2.8.5.7 1.2 1 2 1a3 3 0 002.2-.9c.5-.6.8-1.5.9-2.7 0-1.3-.2-2.2-.8-2.8a2.7 2.7 0 00-2-1c-1 0-1.7.3-2.2.9-.6.6-.9 1.5-1 2.7z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M194 224.4l.1-10.7h4.5c1.2 0 2 .2 2.5.4s1 .5 1.2 1 .5 1 .5 1.7c0 .8-.3 1.4-.7 2-.5.5-1.2.8-2.2 1 .5.2.9.5 1.2.8l1.2 1.8 1.3 2H201l-1.5-2.3a16 16 0 00-1.2-1.6 1.6 1.6 0 00-.6-.4 3.5 3.5 0 00-1-.2h-.5v4.5H194z"/>
+      <path fill="#fff" d="M196.2 218.2h1.6a8.1 8.1 0 002 0l.5-.5c.2-.2.3-.5.3-.8 0-.4-.1-.7-.3-.9a1.3 1.3 0 00-.8-.4h-3.2v2.6z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M206.2 214.2l3.9.2a7.6 7.6 0 012 .3 4 4 0 011.5 1 5 5 0 011 1.9c.2.7.2 1.5.2 2.5a5.3 5.3 0 01-1.7 4.1c-.4.3-.9.6-1.5.8h-2l-4-.1.6-10.7z"/>
+      <path fill="#fff" d="M208.2 216.1l-.3 7 1.6.2h1.3l.9-.5c.3-.2.4-.5.6-1l.3-2-.1-1.8c-.2-.5-.3-.8-.6-1a2 2 0 00-1-.6 9.6 9.6 0 00-1.7-.2h-1z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M258.5 233.3l2.5-10.4 3.3.8c1.3.3 2.1.6 2.5.8.5.3 1 .7 1.2 1.3.3.7.3 1.4.1 2.2a3 3 0 01-1.9 2.3 3 3 0 01-1.1.3 12 12 0 01-2.2-.4l-1.4-.3-1 3.9-2-.5z"/>
+      <path fill="#fff" d="M262.6 225.2l-.7 3 1.2.2c.8.2 1.4.3 1.7.2a1.4 1.4 0 001.2-1l-.1-1.1a1.5 1.5 0 00-.8-.7l-1.5-.4-1-.2z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M268.4 236.3l3.5-10.1 4.3 1.5a8 8 0 012.2 1c.4.4.7.9.9 1.5s0 1.1-.2 1.7c-.2.8-.7 1.3-1.3 1.6a3 3 0 01-2.3.3l.8 1.2.6 2 .5 2.4-2.4-.8-.7-2.7a14.5 14.5 0 00-.6-1.9 1.6 1.6 0 00-.4-.6 3.4 3.4 0 00-1-.5l-.4-.1-1.5 4.2-2-.7z"/>
+      <path fill="#fff" d="M272.4 231.2l1.5.5 1.9.5c.3 0 .5 0 .7-.2l.5-.7v-1a1.3 1.3 0 00-.6-.6l-1.5-.5-1.6-.6-.9 2.6z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M280.9 235.9a6.8 6.8 0 011.3-2.5c.3-.5.8-.8 1.3-1.1a4.2 4.2 0 011.6-.5c.7 0 1.5 0 2.3.3a5 5 0 013.2 2.5c.6 1.2.7 2.7.1 4.3a5.6 5.6 0 01-2.5 3.5 5 5 0 01-4 .2 5 5 0 01-3.2-2.5 5.5 5.5 0 01-.1-4.2z"/>
+      <path fill="#fff" d="M283 236.5c-.3 1.1-.3 2 0 2.8.4.8 1 1.3 1.8 1.6.8.2 1.5.1 2.2-.3.7-.4 1.3-1.2 1.7-2.4.3-1.2.3-2.1 0-2.9a2.7 2.7 0 00-1.8-1.5 2.7 2.7 0 00-2.3.3c-.7.4-1.2 1.2-1.6 2.4z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M301.7 250.8l4.9-9.5 4 2c1 .6 1.7 1 2 1.4.4.5.6 1 .7 1.5s0 1.2-.4 1.7c-.3.7-.8 1.2-1.5 1.5-.7.2-1.4.2-2.3-.1.3.4.5.9.6 1.3l.3 2.1.2 2.5-2.3-1.2-.3-2.8-.3-2a1.6 1.6 0 00-.4-.6 3.5 3.5 0 00-.9-.6l-.4-.2-2 4-1.9-1z"/>
+      <path fill="#fff" d="M306.4 246.3l1.4.7 1.8.8c.3 0 .5 0 .7-.2a1.5 1.5 0 00.8-1.5 1.3 1.3 0 00-.6-.7 21 21 0 00-1.3-.8l-1.5-.7-1.3 2.4z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M341.2 270.3c.6-1 1.2-1.6 2-2a5 5 0 011.6-.7 4.2 4.2 0 011.6 0c.7.1 1.5.4 2.2 1a5 5 0 012.3 3.3 6 6 0 01-1.1 4.1 5.6 5.6 0 01-3.5 2.6 5 5 0 01-3.9-.9 5 5 0 01-2.3-3.3 5.5 5.5 0 011-4.1z"/>
+      <path fill="#fff" d="M343 271.4c-.6 1-.9 2-.8 2.8a3 3 0 001.3 2 2.7 2.7 0 002.2.4c.8-.2 1.6-.8 2.3-1.9.7-1 1-1.9.8-2.7 0-.8-.5-1.4-1.2-2s-1.5-.6-2.3-.4c-.8.2-1.5.8-2.2 1.8z"/>
+    </g>
+    <path fill="#309e3a" d="M246.4 229l1.7-7.6 5.6 1.3-.3 1.3-4-1-.4 1.7 3.7.9-.3 1.3-3.7-1-.5 2.1 4.2 1-.3 1.3-5.7-1.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bs.svg
new file mode 100644
index 0000000..decdebb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bs.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bs" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M56.6 26.4H537v480.3H56.6z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="matrix(1.066 0 0 1.067 -60.4 -28.1)">
+    <path fill="#fff" d="M990 506.2H9.4V27.6H990z"/>
+    <path fill="#ffe900" d="M990 370.6H9.4V169.2H990z"/>
+    <path fill="#08ced6" d="M990 506.2H9.4V346.7H990zm0-319H9.4V27.9H990z"/>
+    <path d="M9 25.9c2.1 0 392.3 237 392.3 237L7.8 505.3 9 25.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bt.svg
new file mode 100644
index 0000000..3bbbfaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bt.svg
@@ -0,0 +1,89 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bt" viewBox="0 0 512 512">
+  <path fill="#ffd520" d="M0 0h512v512H0z"/>
+  <path fill="#ff4e12" d="M0 512h512V0z"/>
+  <g stroke="#000" stroke-width=".5">
+    <g fill="#fff" stroke-width=".4">
+      <path d="M281.9 162.5c-4-1.4-6.4.6-6.3 5.7.1 5 2.8 7.9 6.7 6l-.4-11.7z"/>
+      <path d="M285.3 153.1c-3.2-2.6-6.3-1.5-7.8 3.3s.1 8.4 4.4 7.9l3.4-11.2z"/>
+      <path d="M290.7 144c-2.8-3-6-2.5-8.2 2-2.2 4.5-1.3 8.3 3 8.5l5.2-10.5zm-3.5 44.2c-4.8 1.8-5.3 8.3-2.3 12.3s8.5 4.8 11.6 0l-9.4-12.3z"/>
+      <path d="M281.6 174.4c-4.5-1.5-8.6 4.6-9.3 10-.8 7-10.6 9.2-5.2 19.7 1.1-6.7 5.5-10.3 9-10.6 3.5-.2 8.8-1 11-5.3l-5.5-13.8zm14.3 26.9c-5.2 1.3-6 8.3-2.2 13.3 3.2 4.3 13.3 3.3 13-1L296 201.3zm15 42.3c.2-4.5-7-6.3-10.5-5.4-3.6.9-10.3-.1-11.9-3.9-1.2 3 .6 6.3 5.7 8 3.8 1.2 3.8 4 2.6 5.2 3 .5 11.5.5 14-3.9z"/>
+      <path d="M306.8 214.7c-5.2-2.2-8.3 1.2-10.2 4.6-3 4.9-11.8-1.4-14.8 5.1 4-1.7 8.2 2 10.1 3.3 5.6 3.6 16.2 2.5 17.7-6l-2.9-7z"/>
+      <path d="M309.8 220.8c-5.2 3.8-7.2 8.5-7 11.6 0 3.2 4.5 10 9.2 10.5 2.8-5.7 4.2-17.6-2.2-22.1zM288.4 245c0-1.9 2.8-2.6 4.7-2 1.8.6 4.7 2.5 3.7 4.5l-8.4-2.5zM260 234.7c-.5-2.3 3.2-6.2 8-4 5 2.1 5.6 6.3 3.6 7.9l-11.6-3.9z"/>
+      <path d="M272 238.8c-.4-1.2 3.1-3.7 9.1-2.2s7.5 5.4 7.3 8.4l-16.4-6.2zm-12.6-4.1c3.1-2.4 2-7-.9-8.3-5.1-2.5-3.2-9-6.5-10.3-3.3-1.2-6.4-3.5-6.5-5.8-1.7 3.2-.7 6 1.6 8s-1.8 10.2 1.1 12.4l11.2 4zm-67.3-1.8c-2.6-4.1-9-3.3-11.5-.5-2.7 3-2.3 7.2.2 9l11.3-8.5zm15-6.1c-1-5.5-7.6-6.2-11.2-4.8-3.7 1.4-6.2 7-3.8 11l15-6.2z"/>
+      <path d="M217.2 226c2.4-4.6-2.2-11.5-7.5-12.5-4.4-.9-9.6-.8-11.3-5.2-1 3.8 1.7 6.2 5 8.3 3.3 2.2-.6 7.7 4.7 10.8l9.1-1.4z"/>
+      <path d="M216.7 226.2c-1-3.3 1.2-7.8 5.7-7.5 4.5.4 7 3.6 5 7.7l-10.7-.2z"/>
+      <path d="M226.8 226.4c-.7-3.4 2.2-7.5 6.6-6.5 4.4.9 6.5 4.5 4 8.3l-10.6-1.8z"/>
+      <path d="M236.7 228c-.4-3.4 2.6-7.4 7-6.2 4.4 1.1 6.3 4.8 3.5 8.5l-10.5-2.3zM161 285.6c-8.4 0-10.5 2-11.7 10.6-1.5 10.8 13.2 12 11.7-10.6z"/>
+      <path d="M164.7 274.3c-12.9-5-20 15.5-32.7 11.9 4.6 7.3 15.7 0 19.8.7 7 1.3 22.2-1.3 13-12.6zm-8.4 28c-6.4-3-13.3 6.8-12 11.1 1.6 5.5 16.2 1 12-11.1zm-29.9 42.1c3.6 1 7.8 3 7 9.8-.7 6.8-13.5 20.6-25 21.4-11.6.7-15.7 14.7-25.7 10.8 9.3-1.8 9.3-12.3 16.6-15.6-5.3-1.9-8 10-14.8 10-6.8 0-10 10.9-18.3 10.1-8.3-.7-9.2 13.1-25.8 13.3-12.6.1-28.3 15-34 8.6 12.3-1.8 17.3-8.6 24.6-16.1 11.8-12 25.1-6.7 29.7-17.3a30.9 30.9 0 01-17.9 5.2c-7.7-.1-16.2 12.3-24.8 6.8 5-.6 8.3-2.8 13.5-8.3 5.4-5.6 13.3-2 19.6-7.8 9.8-9 18.2-1.5 27.6-12.8-2.6-1.2-8.3-.3-13.5 2.4-5.3 2.8-12-1.9-18.1 1.4.7-7.4 14.8-3.2 23.6-8.3 10-5.8 18.1-4 26-3.4-11 0-15.2-10.4-30.3-7.4-6.5 1.3-11.8-9-18.3-3.8.2-3.9 7-7 14-3.2 7 3.7 10-3.3 24 5.5 5.7 3.6 15.6-2.3 21.9 1.6-.8-2.4-4.4-3.9-8.6-3.5 2.6-5.4 19.6-4.7 27 .7z"/>
+      <path d="M137.6 336.3c-5.5-4.3-13.2.9-18.4-1.2 0 3.6 1.7 8.8 7.5 10.8a139 139 0 0011-9.6z"/>
+      <path d="M146.3 324.1c-8.7-4.4-10.2 6.5-17 4.3.3 3.1 2.8 7 8.3 7.9l8.7-12.2z"/>
+      <path d="M151.4 314.2c-12.8-5-14.4 7.3-22 4.9 1.8 4.2 12.6 6.5 18.1 5l4-10zm17.6-53.9c-3.4-4.8-10.5-.9-11.7 4.8-1.1 5.6 1.7 13.5 6.4 11.8l5.3-16.6z"/>
+      <path d="M177.7 245.2c-6-1.3-12.7-.7-12 5-2.2 1-2.9 8.5 3.3 10.1l8.7-15z"/>
+      <path d="M181.6 241.3c-5.8-6.7-12.3-6.6-15.9-3.7-6.6 5.3-13 2.2-13.3 7.5 4-3 7.6.6 10.8-.5 3.3-1.1 5.7 5.2 14.7 2.5l3.7-5.8zm-14 101.4c.9 1.6 6.3 2.4 9-.4 3.4-3.7-.4-13.8-6-14.6-5.5-.7-6 11.5-3 15z"/>
+      <path d="M161.3 343c8 2.8 11.3-3.7 7-7.9a79.6 79.6 0 01-7 7.8z"/>
+      <path d="M131.7 353.7c-1.5 4.6-9.3 5.3-18 19.4-8.9 14-17.3 8.1-19.4 17.8 10.5-8.5 18.8-2.9 25.1-11.3 9.6-12.8 17.4-11 21.1-19.6 5.3-12.3 28.4-12 29.6-31.4-7.7-1.5-32.4 19.4-38.4 25.1zM330 164c10 3.3 10.3 16.3 21.8 20.6 11.6 4.2 12.7 14.5 22.1 12-8.8-2.4-8.2-12.5-17.3-15-10.8-3-14.8-19.4-23.4-21.9m42.8 72.5c1.8 4 1.5 11.1-4.7 13 3.4 2.2 8.4.1 11.1-4.5-4.1 9.2-1.3 17.5 5.2 19-3.1-6.3 3.9-9.3 1.6-13.5 4.2 1.8 7.8 7.4 7.7 11 5.4-6-4-14.1-2.3-19.8l-18.6-5.2zm-65 64.5c-6.2-5.4-8.8 1.4-11.8-1-2.8-2.1-6.6-2.4-8-.2 5.2.1 2.7 4.2 12.9 5.2-10.2.7-8.4 12.1-15.2 11.6 7.3 6.9 11-6.2 17-4-1.8.5 2.7 4.6-.4 10.1 5-.1 7.1-7.1 7.8-10.8l-2.3-10.9zm-135.5 58.6c-2.3-1.8-8.8-2.7-11.3-1.2-2.5 1.5-1.6 1.9 1.4 2.1 3 .3 6.9 5.1.4 5.4-3 .1-2 7.4-8.3 8 2.5 3 9.9 1 12.5-2.5-.5 2.9 3.3 5.4 1.8 8.8 4.6.5 2-9.4 9.3-8.9-3 .4-1.8 7.2 3.5 5.4-3.1 1.5-1.5 5.2 2 4.3-2.2.7-3 3.6.1 5.3 3-4.2-.3-19-11.4-26.7zM449 216.7a17.4 17.4 0 100-34.8 17.4 17.4 0 000 34.8z"/>
+      <path d="M358 237.7c5.3-5 13.3-7.5 18.8-3.7 5.5 3.7 23.9 8.2 33 2 9-6.3 13.2-9.6 17.2-8.8 3 4.5 6.7 6.6 11.2 7 1.4 1.5 6.3 2.8 9 2.4 4 1 9-.3 12.9-4.5 6 .8 11.6-3.7 13.8-10.5 6.4-.7 6.8-7.9 2.7-12.6-3.7-.8-.8-13.5-14.5-11 5.7 3.5 1.3 10.6 6.1 13.8-3.2 0-7.4 1.4-8.4 6.3 1.2-3.4-.2-5.6-1.1-6.4.1-2.9-6.3-10-12.3-7.4 4.3 1 1.9 8 5 10.6a8 8 0 00-6 3.2c-1.7-2.9-7.4-5.9-11-6.1 0-1-.1-3-.6-4a18 18 0 01-2.2-11.2c-3 3.2-5.6 7.8-7 11-4.8-3.2-16.6 1.5-22.2 2.8-5.5 1.3-24-1.8-28.3-6.3a47.9 47.9 0 00-20.4-9.5c-10.7-3.1-10.8-14.8-22.6-22.9-.2 14.6 21.9 60.8 26.9 65.8zm-123 111a16.8 16.8 0 100-33.6 16.8 16.8 0 000 33.6z"/>
+      <path d="M194.7 335.8c3.4 4.4 9.2 4.1 11.6 3.7 2 5.3 8.4 5.2 11.2 8 2.7 3 12.2 2.7 15 1-2.6-.2-5.9-1.7-9-4.3-3.8-3.2-2-9.5-5-11.8 2.2-2.5 2.6-6.7 2.1-8.3 2.4-1.4 4.2-3.6 4.4-4.8a15 15 0 009.3-4c2.1 2 7.5-.6 10.4 2.8.7-8.3-7.3-12.7-12.5-10-2.2-1-7.8-.3-8.8 1.2-1.8-.8-6.7 1.7-9 3.4 2.6-1.4 3-5.5 2-7 2-1 4.5-3.8 4.7-6 3 .5 7.5-1.5 9.6-1-3.3-4.2-8.7-5.7-14.2-5.4-5.8.4-8.2 4.4-9 8.7-3.3 2-4.5 8.8-3.2 11.2-2 0-3.8 1.8-4.5 2.9a26 26 0 00-9.1-2m1.2-6.8c-1.2-3.3.3-6.2 1-8.8 2-6.6.8-8.3-5-7.4a46 46 0 004 16.2z"/>
+      <path d="M187.5 291.4c1.5 1.6 6.9 2.3 7.4-2.5.7-5.5-1.5-7.6-6.3-5.5-.4 1.3-.8 6.4-1 8z"/>
+      <path d="M188.7 283.2c2 .8 6.3 2.5 8.7-2.2 2-3.9-.6-6.9-4.8-6.6-1 1.1-3 5.1-4 8.8z"/>
+      <path d="M192.4 274c.5 1.5 5.6 6.5 9.4 2.9 3.7-3.6 3.7-9-1.9-11-1.5.2-6 5.5-7.5 8.1z"/>
+      <path d="M199.9 265.8c1.1 3.2 4.6 8.6 11.2 6 6.5-2.4 3.7-10.6.7-12.2-1.7 0-8.9 3.3-12 6.2z"/>
+      <path d="M211.8 259.6c-.5 2.7 0 10.3 9 10.1 8.8 0 6.3-10.5 4-12-3.6 0-9.7.1-13 1.9z"/>
+      <path d="M225.3 258c-1 2.2-3.3 16.2 14.1 12.4 2.3-.5 8.2-13.5-14.2-12.3z"/>
+      <path d="M234.8 259.3c-1.8 1.8 2.8 16 14.6 13.6 11.8-2.4 1.9-15.9-14.6-13.6z"/>
+      <path d="M244.8 261.4c-1.8 4 1 15.5 15.5 15.5 13.3 0-.6-15.2-15.4-15.5z"/>
+      <path d="M256.3 264.8c-1 2.2-2.1 14.4 15 15.5 12.5.7 9.5-16.9-15-15.5z"/>
+      <path d="M274.7 270c-2.1 3.8-4.4 13.2 14.5 14 12 .4 4.6-13.8-14.5-14z"/>
+      <path d="M290.4 272.9c-2.7 3.7-.7 11.1 6.3 12.5 8.8 1.8 10-6.5 4-10.5s-10.3-2-10.3-2z"/>
+      <path d="M299 274.6c-2 3.5-.8 12 12.5 12 2.8 0 13.3-10.7-12.5-12zM195.9 438.4a19.5 19.5 0 100-39.1 19.5 19.5 0 000 39z"/>
+      <path d="M339.1 154.3c-1.5 1.5-4.6 6-5.2 7.8-6.6 19.6 10.9 34.3 21 55.3a61 61 0 01-5.5 59.2c-4.3 5.7-3 7.3-8.5 13.1-2.1 2.2-4.5 5-3.8 13 3.6-1.2 8.6 2 9.6 4.8 2.5-1.2 6-.7 7.3.8 4.2-2 7.8-1 11.5 3 3.3-.5 6.8 0 10 3.5 1.8-3.5 5.3-4.8 7.8-4-.2-4.5 4.3-7.8 8.3-6a7.4 7.4 0 019.6-8.8c4.5-3.5 13.5-3.8 18 1.5-8-2.3-7.7 6.3-14.5 5.5 1.8 5-2.8 8-7.3 9.5 2.9-1.3 6-3 7-1.2 2.5-2.2 7.6-1.4 8.8-.3 3.4-1 6.6-.2 8 3.8 4.6 2.8 7.6 9.8 4.3 15-1-5.5-4.7-5.2-6.2-7.5-3.6 1.3-7 1.3-8-1-2 2-8.9 3.8-11.9.8-1.1 4.5-5 8.3-9.5 8.3 1.2 3.5-2.3 9.5-5 12.5 4.2 2.3 3 7.3 2 10.3 6.5 1 1 6.8 12.3 10.6-5.6 1.7-16.4 0-17.9-6.8-5.5-.3-9.3-5.8-9-11.6-4.3-4-5-9.7 1-13.8-5 1.5-7.8-6.5-15-3.2-3.7 1.6-13.2-1.2-13.1-4.5-1.5 2.5-10.7 1.5-12-2.8-3 1.6-10-1.1-9.9-5.3-3.9 1.8-9.1-1.4-8.9-5.4-3.6-.5-4-3.7-3.8-6.5-3.2-1.5-2.3-4.7-1-8.4-2.3-2.5-1.3-6 .4-9.3-2.5-2.5-2-5.5-1.2-9-12.1-1-27.2-4-61.8-14.6-52.2-16-66.3 21.6-54.8 45.2 13.4 27.2-1.5 33.1 3 53.5 4.8 1 7.3 5 7 9.3 2.9 0 5 2.7 4 7.7a8.7 8.7 0 017.4 2.3c1.7-3.3 7.5-4 10.5-.2 6.6-.5 9.8 4.7 9.6 11.3a17.6 17.6 0 01-1.5 18.8c.3-2.6 0-6.4-.2-8.7-.2-4.1-6-5-5.4-8.4-3 .3-5.9-1.4-6.9-3.6a6.6 6.6 0 01-6.4 1.2c3.4 1.5 6 7.6 5 11.6 1.8 3 1.4 8.5-.7 11-1 4.8-4.8 6.6-9.7 4.4a8.4 8.4 0 003.7-7.5 9.8 9.8 0 01-2.8-6.2c-4.9.8-11.7-3.4-13-5a19.5 19.5 0 00-19.4 19.6c-.5-4-5.6-8-5-11.4-3-9.3 1.3-18 13.6-19.7-1.5-3.5 3.7-7.2 1.7-11.2a94.8 94.8 0 00-14.3-19.6c4.3-7.3 3-17 .5-23.1-3.6-8.7-7-6.5-19.8 7.5-21 23-48.8 16.6-73.4 31.7-6.5 4-13 5.5-6-1.5s25.6-14 37.7-20.1c22.6-11.3 41.7-30.2 49.2-66.8 17.7-86.2 82.9-57.8 124-41.7 38.7 15 31.7-19.1 12.1-39.7-23.5-24.7-18.8-44.2-7.8-59.8 19.9-2.7 57.9 4.2 50.2 10.8z"/>
+      <path d="M409 366a21.5 21.5 0 100-43 21.5 21.5 0 000 43z"/>
+    </g>
+    <g fill="none" stroke-width=".4">
+      <path d="M327.1 155.3c-4.8 21.1-.8 30.7 6.3 40 14.5 19.2 26 63 9.5 91.6"/>
+      <g stroke-linecap="round">
+        <path d="M352.2 262.2c2-.8 5.8-3.1 6.7-7.3m-5.2-1.9c.6-3.6 6.3-5.2 6.4-9m-6.3-5.2c-.3-3.7 5.7-7.1 4.8-10.9m-8-2.6c-.5-2.1 5-6.2 3.5-9.6m-7.7-3.6c-1.1-2.4 2.7-5.1 1-7.7m-7-2.9c-.4-1.6 2-5.2.7-7.3m-6.7-5c.5-.7 2.5-2.2 1.7-4.1m-5.9-5c.9-.5 3.3-1.3 3-3.1"/>
+        <path stroke-linejoin="round" d="M204.5 416.8c-5-1.8-11.3.7-12.5 5m3.7 3.9c.7-4.3 7.2-6.2 9.2-4.2-4.1-2.2-6.1 5.8-2.5 6m33.8-101.1c-3 1.5-4 7 0 11.1m4.5-9.9c-2.1 1.8-2 7 1.1 8.3-2.6-1.9 0-5.1 2-5.3 1.8 0 3 2.2.8 4.4m172.5 5c-7-1.8-12.7 6.3-6.3 13.6 0-7 5-11.7 11-10.4m-2.7 4.8a2.6 2.6 0 00-2.7 2.7c0 1.4 1.2 2.7 3.1 2.7 1.3 0 2.3-1.4 2.3-2.6m22-157c1.2 4.4 7 6.1 11.7 5.1m0-2.8c-3.6.2-6.6-3.2-6.4-6.1 0 2.1 5 3.1 6.4 1.7"/>
+        <path d="M206.3 339.5c-1-2.5 3-5 3.1-7.4.2-2.4 4.6-4.2 9 .3m-2-26.8c-1 .4-1.7 1-2.4 1.2m11 12.5c-1 0-3.3 0-4.5-.9m.1 5.7c-.9.4-2.8 1.2-4 1.4m-39 74.4c-.2 2.3 2 5.6 3.3 6.6m6.4-12c-1.2 2-2 5.2-1.2 7.4m20 .2c-2.3-1.5-.8-5.4-1-8-.3-2.5 2.6-6.5 8.2-3m-28.4-3.3c2.3-.4 4.7-.3 6.2.3m22.5-7.5a8.1 8.1 0 00-1.4 3.9m12-4.2c-1.8 0-3.3 1.3-4.1 2.6M199.8 316c2 .7 7.2 3.9 7.4 7.2m13.9-23.6c-6.2 0-8.5-6.4-3.9-6.4m15 14.8c-2.4 1-1.3 5.2 2 7.2m-16.7 32.3c-1.2-1.5.3-6 4.2-4.6m5 50.4c.2-3.8 5-6 7-1.8m-24.9 12.7c-.3-4.2 1.8-5.6 3.7-5.8 1.9-.3 4.6 1.3 5.8 4m-47 5c.3-2.5 2.5-5.2 4.7-4.8M401.2 296c-1.7 1.2-2.7 6.5 3.5 7m-13 1.8c0 .6.7 1.5 1.2 1.8m28.3 8.2c-1.6-1.3-5.8 3.8-2 7.5M381.3 357c-1-3.6 2.4-4.5 5.5-3.8m-13.5-21.6c1.9-1.2 3.8-2.6 6.1-3.2m-7.1 17c0-3 1.5-5.5 2.9-6.2m8.1-28.4a17 17 0 002.4 9m27.5-8.8c-1.8.6-3.4 1.3-4.1 2.8m2.1 7.5c.9-.7 1.9-1.6 2.3-2.2m45.2-107.4c0 3.5-4.4 5.4-7.3 3.2m16.8-3c2 1.4 8.7 0 7.1-3.9M460 232a9.7 9.7 0 01-4.7-3m18.6-7.4a7.3 7.3 0 01-5-.5m-30.7 13.1c1.3 0 4.3-.5 6.3-1.6m-10-20.6a5.4 5.4 0 00-3.8.7m29 5.4a10 10 0 01-3 5.1"/>
+        <path stroke-linejoin="round" d="M430.2 223.7c3.1-1.4 7 9.3 14.5 5.5m.7-11c-1 1.3-1.7 3.4-1.8 5.3"/>
+      </g>
+      <path d="M295.2 201.8c1-.1 2.8-.5 3.1-1.8M166 318.8c3.8 2.1 6.4 5.8 4.8 11.2m167.8-139.6c1.2.7 5.4.7 7.8-.2m3 2.7c0 1.7.4 8.4-3 9.8m1.3-1c3.1 1 9.4.7 11.4-5m-4.4 4.8a6.9 6.9 0 01-2.8 10m4-5.8c3.7 1.2 12.1 1.3 11.2-5.8m-2.8 5.8c2.5 3.5 13.5 7.6 11.8.3m-22 9.8c4.3 1 10.3-1.9 7.8-9.4m12 3.8c.7 2.9 14.7 5.9 12.8-.6m-2.6 3.7c2.6 6 16.6 5.6 12.2-2.5M394 217c2.8 3.4 15 1.4 10.2-6.8m-.1 6.7c7.6 5.7 16.5-2.5 6.9-8.6m4.4 6.7c6.7 5.4 15-4.4 9.1-7.2m-62.8 5c2.2.6 6.7.3 7.7-3.6m-1.7 2.6c-.2 5.8 9.4 8 11.8 1.4m-3.2 3.5c1.8 3.8 10.2 5.3 11.6 0m-1.4 2.4c1.4 3.8 8.7 3.4 10.7-.5m-2.7 2.5c2.3 5 11.6 5 13.7-2.2m-1.6 3.1c3.6 2.3 11.4 1.4 10.8-5.6m-1.5 5c5.4 4.4 13 .1 9.3-7.3m-.4 13c2.9-.4 4.4-6.2 1.4-7.7m-68.3 8.8c6-3.3 7.1-8.8 3-14.2m2.1 8.7c3.8 2.2 11-.2 12.2-5.7m-7 6.3c2 2.7 2.5 6.1-.3 9.3m2-5.8c6.7-4.2 15 3.5 8.8 8.2m-1.1-8.6c1.5-.4 4.1-3.1 4.4-6.3m-1.4 9.2c2.7-2.9 21.6 3 9.7 9m-1-17c3.7 1.5 5.6 6.6 0 8.4m4.8 4.3c4-4.2 16.6-1.5 12.1 3.7m-3-5.4c2.2-7.6 15.7-2.9 11.3.3m-14-8c.3 1.6.4 5.3-2 7.3m13.2-8.7a6 6 0 01-.7 5m9.3-5c.7 1.5 2 4-.8 6.2m-106.7-63.9c.1 7.2 2.6 12 12.3 7.4m-9.3 1.2c-4.8 6.4.6 13.3 10 6.4m-24.7-3.3c6.5 7 18.2 1.9 10.7-8.8m7.9 14.8c-1.3 7 4.4 8.3 9 5.2m-33.4-10c1.2 6.9 8.3 12.4 15.2 8M304 188c0 9.9 13.7 11 16.8.7m-5 6.3c4.5 9 14 5.4 17.2-.1m-27-14.5c1.8 4.5 5.3 9.4 13.5 5.7m-38.6-7.8c1.1 3.7 7.7 8 15.2 3m-10.5 1.7c-4 5.9 4 11.4 13.6 2.6m-8.9 4.7c1.7 8.2 5 14.9 16.7 4.2m-5.9 4.3c4.3 5.3 10.8 8.5 17-.4"/>
+      <path d="M322.7 200.3c-.4 6.3.9 9.4 5.8 9.2 3.8-.2 7.5-3.3 9.6-6.6m-10.5 6.6c-.1 7.1 5.5 12.8 16 5.5m-11.6 2.9c-2 5.4 4 14.2 15.8 9.6m-40.8-24c-.8 7 5.7 11.6 16 2.7m-11 5c.4 5.7 6.8 12.5 16.2 2.7m-11.7 4.5c-.7 9.6 8.2 12.4 15.7 5m-29-12.2c2 .1 3.5-1.6 4.5-2.9m-.3 10c1.7.3 4.7-1.3 5.7-3.3m-1.3 14.7c2 2.1 8.8.6 9.6-2.3m-2 2.1c3.7 8.8 13.7 8.5 17.9-1.5m-2 3.6c2 5.1 6.7 8.4 14.5 6.6m-10.7-1.4c-4.4 7.2 1.4 15.6 11.2 7.3m-8.8 3.4c-.5 4.5 3.7 9.7 9.3 10.3M323 234.3c-1.5 10.2 5.8 15 15 9.7m-25.6-4.8c2.4 1.9 6.6 2.1 10.6.6m5 6c-2.3 8.5 6.5 14.6 14 5.1m-26.2-10.3c0 4.4 4.4 9.2 11.8 7.8m20.7 8.8c-5 3.4-6 9.4 1 13.3m-13.3-15c.2 5 2.6 8 8.3 8.4m-15.7-11.1c-7.6 6.9-.2 15 8.8 8.1m-3.6 2.2c-2.5 7.9 7 12.7 12 4.6m-27.5-21.5c-2.8 7.8.7 13 7.1 12.5m-17-14c.3 4.7 4.3 6.3 8.9 5.3m-6-.4c-3.5 6.6 1.7 10 8.5 7.6m20.6 14.5c-1.1 4.2-.5 7.2 5.6 8.6m-5.2-2.7c-7.5 3.4-8 10.6-2.3 15.2m-3.7-23.1a7.4 7.4 0 001.1 12m-34-35c-4.3 4.3-.3 15.9 9.2 9.5m15.2 5.2c-5.8 4.8-3.1 13.5 6.4 11m-16-14.6c-3 8.5 0 11.5 6.7 11.7"/>
+      <path d="M295.4 246.4a8 8 0 00-1.4 11.9c2.2 2.5 6.5 1.4 7.8-1.9M284.6 243c-5.7 7.4 0 16.2 8.2 13.6m22.7 8.4c-5.9 2-10.4 7.5-6.7 12.1 2 2.8 11.4 3.2 14-7.5m-18-11.5c-3.3 4.9-2.2 9.5 4 11.9m-4.3-2.8c-3.6 2-6 4.4-5.2 8.8m-3-16.4c-1.3 5.9.3 9.5 4 11.3m-4.1-4.3c-5.6-.4-8.5 2-6.6 7.5m.5-6.1c-5.6-2-6.4-6.8-4-11.8m-.8 7.4c-6 .2-8.7 3.2-8.7 7.4"/>
+      <path d="M277.1 240.1c-4.4 1.9-5.8 7.8-4.1 11 1.6 3.3 6.8 3.6 9.9 1.4m-18-17c-4.1 4.5.5 13.3 7.7 11.1m-18-14.7c-3.8 5.3.3 14.1 10 11.6m.5 24.5c-1-6.3 5.5-10.4 13.5-2.3m-3.9-12.7a9.9 9.9 0 00-3.1 8.3M244.2 229c-4.1 7 .9 13.5 9.8 11m13.5 6.5c-6 5.9-4 11.8.5 15.2m-4.3-8.3c-9 .1-9.4 10.4-2.1 13.7m-4.7-24c-3.6 2.5-4.8 9.4 1.5 12.2m-1.7 3.2c-3.8-1.7-8.3.4-8 4.8m2.3-4.6c-3.4-8-13.3-6.7-12.4 1.6m15.2-11.6c-2.2.4-6.4 1.7-8 5m.6-14c-4 4.5-1 10 2.3 11M234.4 227c-.7 5.4 1.4 8 8.2 7.6m-5.8-.7c-2.6 6.6.9 9.4 7.7 9m-6.2-1c-4 4.8-1.2 10 2.7 12.1m-4.6-6c-7.1-.9-8.2 7.4-5.9 11.3"/>
+      <path d="M230.7 226.3c-4.4 1.9-7 7.4-4.6 10.8 2.4 3.4 7.2 2.3 9.8.5m-8.3 1c-3.6 5.5-.3 9.7 3.6 11.3"/>
+      <path d="M213.6 225.7c-3 3-1.1 9.1 5.9 9.3 5.6 0 8.5-5.3 6.8-9m-7.8 9c-2.3 5-.9 10.4 7.6 9.5m3.7 7.9c-5.3-2.4-12.3 0-9.3 6.3m-.8-15.2c-2.1 3-1.3 7.3 1 10m-1.3-2c-3.6.6-7 2.5-4.8 8m-.5-4.5c-4.5-1.3-10.3 2-6.8 6.6m-.8-4.4c-3.8-.6-8.5 3.5-4.7 7.6m-1.5-3.4c-3.5 1-7.7 5-4 8m21.7-27.7c-5 2.3-5.6 8-3.2 12m-2.1-22.4c-7.5 2.9-7.4 13 .9 16m-3.5-2.2c-4.6 2.7-5.4 7.7-2.4 11m-5.5-28.6c-3 1-2.8 10.3 5.2 10m-13.5-6.8c-6 4 1.2 14.2 11 6.9m-5.4 2.5c-.9 4.1.3 8.7 7 9.2m-6.6-3.7a6.5 6.5 0 003 12.3m-18.2-21.2c-6.1 5.7 5 10.6 9.2 2.4m-17.7 7c-3 3.7 7.5 13.2 12.1-2.7m1.2-.3c.2 3.8 2.5 6 7.1 6.3m0 3.6c-7.5 1.2-9.9 10.5-1.6 12.5m-12.2-13.7c-.2 3.5 3.4 6.4 7.6 5.8m3.7 7.6c-6.8 1.5-7.6 10.3-1.6 9.8m-3.1 8.2c-5.7-1.7-5.8-8.4-.8-11"/>
+      <path d="M184.7 277.3c-4.8 2.8-2.9 9.8-.4 10.8s4.5-.3 4.8-2.4m-.4 9.6c.5 3.3-11.6 2-5.4-8.1m0 8.7c-4.1 6.4 2.5 11.6 6.7 6.2m-6.2 1.5c-1.6 5.2 4.6 8.9 8.6 4.9m-22.1-53c-2.3 4.6 9 6.3 9.8-3.2m-13 10c-2.2 9 14.8 7.2 10.4-4.5m.4 6a8 8 0 0011.3-6.1m-5.1 6.4a9.8 9.8 0 004.6 6.1m-12.8-3.7c-.7 4.9 4.2 8.9 9.8 8.5m-9-3.8c-2.7 3.8-3.5 11 5.1 11.6m-18.2-10.3c-1.4 3.9 6.8 7.9 11.6 1.5m-14.1 8.4c-.7 3 6.7 7 10.8-5.6m-3.3 6.4c1.8 3.1 7.7 5.6 11.3-.5m-5.9 3.7c-1.5 4.4 2.7 8.6 7.7 7.3m-17-8.3c-1 6.3 6.2 10 10.7 6.7m-15.6-4c-2.1 8.1 8.2 11.1 12 5.1m-2.5 2.4c.3 4.5 7.4 8.4 12.9 4.6m-25.5-.8c-.5 2 8 4 9.2-3m-4.3 4.7c2 5.2 8.8 6.4 12.7.1m-2.3 2.5c.9 4.8 7 7.5 12.5 4.2m2.2 1.9c-1.4 6.4 5.3 11.5 9.4 8m-20-9.1c-2 7 6.7 11 11.6 7.1m-22.2-10.7c-.5 6.6 4.6 10.5 10.5 7.6m-21.7-7c-1.7 4.3 7.6 7.8 12 4.2m-17.8 7.5c2.4 2.8 10.7 0 11.5-6.1m-2.3 4.5c3 3.5 10.2 5.4 13-2.1m-2.4 3.9c-.2 5.4 9.5 9.3 12.6-.7m11.4 2c-.9 2.6 1.2 6.8 5.5 7.3m-13.5-9c-.6 3 3.8 7.3 8.4 5.6m1 1.2c-1.3 3.3-.3 8 4.1 8m-3.7-1.9c-3.3 2.8-2 7.7 2.8 7.9m-4.5-3.2c-4.7 3.1-3 10 3.1 9.6m-17.2-23c0 6.8 8.4 7.8 10 1.6m-3.2 4c-1.3 4 2 7.9 7.1 6.8m-6.1 41.7c1.1 1.6 5.8-1.2 4.5-4-1.2-2.7-6.2-1.2-5.6 1.7m4.5-2.8c.6-5.5-6-6.4-7.6-1.6m2.4-2.8c1.7-2.7-3.9-6.5-6.1-2.5m2-1.6c1.5-4-4.8-5.8-5.3-2.1m-1.4-5.3c.8-2 7.8-.8 4.8 3.4m5.4 5c2.8-2.5-1.9-7.7-4.8-5.8m23.4 13.5c-2.2.2-4.5 1.6-2.9 6.3 1.2 3.2 6 3.4 6.7 1.4"/>
+      <path d="M199 372.9c-2-1.4-6.7 1-4.6 5.4 1.6 3.4 5.7 2 6.3.3m-13.6.7c1 2 6.4 1.1 7.3-1m-3.7-5.2c1.2-.7 3.2.2 3.7 1.2m-4-32.1c-3.7 2.4-1.4 9.6 4.2 7.8m-5.4-2c-2.9 2.3-.2 9.4 5.2 6.7m-4.3 0c-2 2 0 7.6 5.2 6.6m-6-3.8c-1-.5-4-.1-5.3 1.7m2-27.1c-2.7 2.6-1.4 8 3.8 8.4m-4.7-3c-4 2-4 9.9 4 10.2m-4.3-1.3c-2.2 1.8-1.2 8.6 4.5 7.7m-2.7-.2c-.8.8-1 2.8-.3 3.7m-2.2-6.3c-2 0-4.7 1.5-5.4 3.6m-3.6-7.3c.8-2 7-1.9 7.4 4m.6-7a4 4 0 00-3 2.7m.3-21.1c-2.7 2.4-4 10.1 4.2 11.6m-9.6 4.3c0-2 5.6-3.8 7.5-.7m-11.1-10.5c.8 1.5 4.7 3.7 7 2m-27.2-14.3a6.2 6.2 0 007 6.4c4.2-.5 5-4.2 3.8-6.6m-3.2 6.7c-2.7 3.4.7 8.2 3.8 6.8m-.6-9.2c1.6-.6 7-1.4 8.6 1.1m-26 0c-1.3 1.8 6.5 3.7 9 0m-2.5 2c-.3 2.4 1 6.7 7.4 5"/>
+      <path d="M159.5 334.6c1-2-3.8-5.6-7.4-1.7-3.7 3.9.5 8.3 2.7 6.8m-12-13.5c-2 3.3 5.4 9.3 9.5 3.7"/>
+      <path d="M138 331.9c-2.7 2.7.6 7.6 4.5 6.1 4-1.5 3.6-5.6 2.7-6.7"/>
+      <path d="M132.8 336.9c-2 2 0 6.5 3 6.5s4.7-2.3 4.1-5.2m5-1.7c-.5 3 3.8 5 6.6 2.2m.1-5.2c.4-.7 0-1.7-.6-2.2m-22.7 9.5c-2.5 2 2.8 7.4 6.1 2.4m12.8-3.5c-1.6 1.5.9 5.5 3.4 4.3m-12-1.5c.3 2.7 5.6 4.7 9 .6m-6.2 2c-.8 1.8.9 4.5 2.9 4.1m47.1 11.5c-2 3.8 4.3 8.3 8.8 3.7m-4.3 2c-1 2 .2 5 2 6m-7.9-1.7c.5-1.8 3.2-3.6 5.6-2.7m-8.8-2.2c.3-1.7 2.6-3.4 4.3-3m143.5-75.4c-8.9.2-5.1 14.5 2.5 11.6m-5.4-1c-1.7 2.9 1.7 7.5 5.4 4.8m-1 .5c-2.6 4.4 6.8 11.1 10.6 4.2m-3 2.7c0 4.1 12.2 6.7 10.4-1.5m-1.1 4.5c2.8 4.9 13.6 5.4 12.5-2m-2.4 5.1c2.3 3.3 12.8 5.3 12.5-1.5M320.3 275c1.5 3.9 6.7 5.3 12.3 3m-15.6-.2c3.6 2.2-1.6 12.5-7 8.4m7-2c4 1.8 8.7.5 10-5m-2.3 4.2c.4 2.9 4.5 5.2 10 4m-19.7-1c5 4.3-2.2 13-5.5 9m7.4-5.7c2.4 1.7 8.6.7 9.2-4m-2.8 4c.5 3 3 4.1 6.3 4.3m-14-.2c2.5 3.5 8.7 4.6 11.5-.1m-2.8 2.6c-.2 3.4 3.5 6.2 7.4 5.4m-21 2.2c3.2 1.6 6.7-4.5 4-8.8m-.3 15.3c4 .3 4.4-5.7.8-9m8.1 14.4c3.3-.8 2.3-8-5.6-8.5m15.5 13.8c3.2-.9.7-8.8-8-8.3m20 11c2.1-3.2-5-8.8-10.7-5.9m16.6 10.5c3.9 1 6.5-9.2-5.8-7.6m13 7.6c3.3-1 5.7-7-4.2-5m11.7 5.5c3 1.5 4.4-7.3-4.8-5m-45.8-22.4c3.7 2.1 9.6-.4 9.1-5.2m-1.5 4.2c1.3 2.2.8 6.6-1.6 7.8m2-2.5c2.5 1 5.9 0 7.9-4m-3.5 4c.7 1.7 1 5.2-.6 7m1.2-4c2.8 1.5 6-.5 7.4-3.4m-1.7 2.5c2 1.2 3.7 7.1.4 9.5m1.8-2.7c2.4.1 6 .1 8.2-3m-1.6 1.7c2.1.6 4.6 4.2 3.7 7.3m.2-1.1c2.4-.3 6.5-2 7.6-4.8m-1.1 1.9a6.5 6.5 0 013.1 6.3m0-2c2.4-.2 4.5-1.4 5.2-4m-.7 1.7c1.8.6 4 2.6 4 5m-.2-1.5c1.8-.3 3-1.4 4.2-3.1m4.7-.3c2.3 2.3-.7 9.8-5.4 8.4m-42.8-160.6c-4.6 2.8-17.8 2-11.3-9m12.6 1.6c-9.2 3.7-20.5-3.4-8.7-11m-3.1-2.5c-7.7 0-12.8 12.3-2.5 16.5m-27.3-11.4c-2 4 5.2 8.2 10 4.3 3.9-3 3.6-11.2 1.3-14.3M281 160c-2.5 8.3 16 8.8 13-4.4m-14 16.7c.6 6.3 17.7 4.3 12.2-8.4m2-3.5c1.4 1.9 5.1 5.1 11.5 4.5m-8.5-13.4c.6 2.2 4.4 4 9.3 2.3M125.9 342.6c-4.4 3.1 2.3 8 4.7 2.6m-8.1-.2c-4.3 3 2.3 8 4.8 2.6m-8.4-.3c-4.3 3.1 2.3 8 4.8 2.6m-8.6-.4c-4.1 2.2.7 7.6 5 2.8m-9-.8c-4.2 2.2.7 7.6 4.9 2.9m16-9.3c0 3.2 6.1 4.5 8.3-.3M136 348c-1.9 2.4 1.6 5.4 3.5 4.3m-11.6-4.7c-.2 2.7 5.1 4.2 7.7 1.3m-4.8 1.5c-1.7 2.2 1.6 5.2 3.8 4.3m-10.2-4.7c.2 2.2 3.2 4.6 6.5 3.2m-4.6-.3c-1.2 1.1-.6 3.8 1.2 4.6m-7.7-4.8c-.5 2 2.8 5.4 6.2 3.2m-5.5-1c-2 1.7-1.8 4 .8 4.4m-5.6-4.6c-.3 1.3 1.4 3.5 3.6 3.2m-14.4-3.3c-2 1 3.2 6.5 6.4 1.5m-11.3.8c-2.5 1.2 3.7 7.2 6.5 1m9.8-1.3c-2 .5-3.2 3.3-1.6 4.4m-4.8-3.4c-.2 1.2 2.1 3 4 2.3m-5.6-1.8c-2 1.2-1 4.5 1.3 4m-8-1.8c-1.8 1.3-.6 4 1.8 3.3m1.4-3.5c0 .7 1.6 1.8 2.9 1.4M95.4 359c-2.2 1-2.1 6.5 5.3 3.5m-10.3-1.3c-3 1.5-2 5.7 4.7 1.7m.5.3c-.8.6-1.7 3.4 1.4 2.3m-7-1c-1.3 1.1-.5 3.5 2.3 2.6m-8.8-2.2c-2.3 1.3 2.7 3 6-.4m-4.5 2c-1 1-1 4 1.6 3m-8-1.8c-1.5 1.2 1 2.7 5.8.6m-4 1c-1.7 1.5-1.5 3.3 1 2.8m-6.1-2c-2 1.8.8 3 4.2 1.6m-4.2.4c-3.3 1.5-1.9 4.3.2 3.2m111 6.4c-.8 1.7 1.7 3 4.1 2.7 2.3-.4 4.5-2.3 2.8-5m0 3.3c2.3 1.8 6.4-.2 6.4-2.9"/>
+    </g>
+    <g fill="#fff" stroke-width=".4">
+      <path d="M332 116.7c-10-5-30.9-14.4-36.8-6.8 5.4-2.3 21.2.1 34.3 12.2l2.5-5.4z"/>
+      <path d="M338 116.1c-11.5-13.5-18.4-10.5-26.7-15.1-7.9-4.4-20.4-5.3-22.8 1.7 11.5-5.6 22 3 28.4 4 9 1.4 14 8.3 16.6 11.5l4.6-2zm43.8-1.7c-6-13.8-18.9-10.2-24.6-16-8.3-8.6-29.2-16.5-37.9-10.6 19-1 27.2 13.1 37.4 18 7.3 3.6 15 11.1 25.1 8.6z"/>
+      <path d="M359.2 112.9c-10.3-12.8-26-24.1-33.4-19.8 9.6.5 12.6 7.1 19.4 11.4 6.8 4.3 3.7 10.4 14 8.4zm-49 22.6c-10.7-4-31.8-6-41.6 6.3 16.3 2.7 41 1.2 41.7-6.3z"/>
+      <path d="M308.3 140.3c-10.8-5-19.3 2-29.4 1-19.4-1.9-33.2-.8-35 8.5 11.1-9.9 29.7-1.7 37.2-3.8 7.6-2 35.4-.2 44.2 3.6-4.5-5.6-11.5-7-17-9.3zm33.9-28.8c-2.6-8.3-2.4-17 10-16.4-3.1-4-14.7-6-16.6 8.6-13.7-10-28.6-11.8-31.4-3.1 7-6 18-1.6 31 13.2a23.2 23.2 0 017-2.3z"/>
+      <path d="M323.3 123c-7.8-5-18.3-13.2.1-16.5-7.8-4.3-19.4-2.4-18.1 12.2-21.2-8.6-36.3-5.7-39.5 2.7-3.5 9.3 9.6 14.5 11.8 8.6-2.4 1-10.5-1.8-6.3-7 4.3-5.3 26.2-1.4 47 9.5 5.8 3 25.6 2.5 5-9.5z"/>
+      <path d="M317.8 136.8c-6-12.3-25.5-1.2-29.4-13-5.4 17.4 27.7 7.7 29.4 13zm124 13.3c4 2 7.6-1.2 1.3-3.7 4 2 7.7-1 1.4-3.6 4.1 2 7.7-1 1.4-3.6-1.7 1.7-4 7.9-4.2 10.9zm2-23.6c9.1-9.6-.7-12.8 10.4-22.6 9-8 1.7-13.4 10.3-19.6 2.7-2 8.7-6 9.3-10 3.6 9-11.3 10.2-10.3 24.8.6 9.3-5.7 8.5-8 24-.6 3.4-2.8 10.7-11.6 3.4z"/>
+      <path d="M447.9 130.7c5-10.8 10.8-10.6 13.5-14.8 5.3-8 16.5 1.4 26-5.8-1.7 10.2-14.4 6.6-20 13.1-5.4 6.5-10 9.5-19.5 7.5z"/>
+      <path d="M449.1 134.3c8.8-7 15.3-2.4 21.4-6 15.3-9.4 21.5 1.8 35.1-2.6-3.6 8.8-23.8 1.3-32.6 7.8s-39.7 12.8-23.9.8zm-25.6 50a11 11 0 00-9.1-9.8c-5.3-.6-7.6-6.1-11.6-6.4-4-.2-6.7-8.2-12.2-8.1-5.5.1-7.8 7.3 5.2 13.8 13 6.5 27.2 14 27.7 10.5zm-16.3 3.4c-5.5.3-6.3 8.3-11.6 8.6 7.3 3.9 12.6-1.8 16.4-6.8l-4.8-1.8z"/>
+      <path d="M411.7 188.7c-4.7 4-6.1 12.5.8 14.9-4.2-5.7 7.3-8.3 3.7-13.6l-4.5-1.3z"/>
+      <path d="M416.5 189c-3.8 7.3 5.9 8.2 3.4 13.7 5.5-1.3 6.4-11.7 1.4-14.5l-4.8.8z"/>
+      <path d="M379.6 173.4c9-.5 17.3 4.4 22.8 12.3 3.5 5 15.3 7 19.4 3 4-4 1.7-12.5-8.3-9.8-2.5-4.2-9.8-2.7-13.3-6.2-3.5-3.6-17.1-13.6-20.6.7z"/>
+      <path stroke-linecap="round" d="M413.5 179c-2.4.4-3.2 4.6-1.7 6.7m6.8-4.2c.8 1.2.3 3-.1 3.9m-24.6-11.6c4.6.2 5.5 3.6 10.5 4.9"/>
+      <path d="M390.8 162.4c16 4 28.8 7.5 36.7 12a42.5 42.5 0 0030.8 2.8c10.7-3 31.3-5.8 30.3 7.5 5.6-6.6-1.5-13.8-15.8-15 .3-6.6-6.7-12.5-11.7-8.6 4.6-.6 8.6 8-.5 11.6A8.2 8.2 0 00449 163c4.3 1.3 8.7 8.5-1 11.3-6.1 1.8-15-.5-21.6-4.5-6.6-4-43.8-18.6-35.7-7.5z"/>
+      <path d="M431.3 155.8c-5 2.3-1.8 7.6-9.5 10.6-7.8 3-13.2 10-11.5 15.8 5.3-11.5 14.6-11 17.9-15.6 3.2-4.5 8-11.1 3.1-10.8z"/>
+      <path d="M432.7 156.6c-.3 9.2-7.5 5.8-4.7 18.7a26 26 0 01-.2 17c8-5.8 2.9-18.2 6.5-22.9a33 33 0 005-8.8c-2 5.3-1.8 15 3.3 17.6-4.1-9.8 11.2-17.8.6-29.1-1.5 2.7-6.2 7.6-10.5 7.5zm-25.6-9.2c1.2 2 2.5 6.7 1.4 9.3a22 22 0 007.2-8c5.2.7 7.2 7.1 2.3 10 3 0 8.2 0 11-3.5-3.5-3.9-14.4-9.9-22-7.8z"/>
+      <path d="M329 129.4a9.6 9.6 0 00-4.7-2c-7.6-1.5-3.6-8.3 2.8-8.3 13.8-15 21.6-3.4 38.4-8.2 6-1.7 10-1.2 13.2.2 7.5-5 16.3-3.6 22.7 2.3.7-1.1 1.7-2 3-2.4 6-1.6 10.7 3.4 12.3 10 4.6-1 9.9 1.4 13.4 4.5 4.7-2.5 8-2.6 9.2 0 4.3-2 9.8-3.3 12.6 3.5 2.8 6.8-6.5 4.7-8 19-1 8.9-10.8 12.4-18.6 7-12.5-8.3-24.6-9.7-30.7 3.1-6 12.8-10.7 20.3-25.3 16-5.3-1.4-12 .6-16.3 6.4-4.3 5.7-10.8.3-18.6 1 9.8-1.5 6-4 14.5-4.6 7.8-.5 5.8-7.7 10.8-8.8-19.5 5-18.8-2.2-34.9 2.8 7-9 18.1-4 23.6-9.3-14.5-.2-21-9.7-27.6-5.8-10.3 6.3-5.8 24.2-32.6 22.6-13-.7-21.4 1-29.2 8.8 13.6-28 32-12.6 41-21.6a66 66 0 0012-14.3 6 6 0 014-3.1c-22.4-7-8.9-18 13-18.8z"/>
+      <path stroke-linecap="round" d="M439.3 125.5c.4.7.5 1.6.5 2.7 0 5.6-8.2 5.8-8.7 14-.3 4.2-.8 6.6-3.7 6.1-2.9-.5-5.4-5-2.6-10.3"/>
+      <path d="M333.1 121.2a10.6 10.6 0 00-6-2m51.5-8.1c6.7 2.9 9.9 9.8 19.6 10 9.3.4 15 13.9 30.6 5.1l1.2-.6m-28.6-12.2a12.3 12.3 0 00-1.3 8m-29 20.4c-11.9 0-14.9 6-14.9 11.8 0 5.8 5.6 13.3 15.3 13.3 9.8 0 15.1-6 15.1-12.6s-6-12.5-15.6-12.5z"/>
+      <path d="M373.2 166.6c-.3-3.2-6.2-2.7-6-5.2s3.3-3.6 3.3-7 5.3-3.8 7-1c1.8 2.7 7.1 8 8.2 5.3m-8.1-5.4a9.7 9.7 0 00-.4 12.8m4.1-8.5c-.8 1.9-1 4.8 0 6.5"/>
+      <path fill="none" d="M428.2 148.4c9.3.7 10.8-9.4 4-10m-15.3-17.5c-3.2-4-10.6-5.4-10.7 3.2"/>
+      <path d="M405.3 134c-3.1-7.8-11.2-9-15.4-5-3.6 3.2-3.7 11.6 4 13.4 2.6-3.1 7.8-7.3 11.4-8.4zm-3.4-4.9c-4.6-4-11.2 3.6-5.2 10.6M316 148c3-.7 7.4.8 14.2 4 4.3 2 17 6.3 25.1 2-8.3 3-14.5-9.6-20.8-8-6.3 1.5-17.8 3.8-22.6-.8 11.8.8 18.1-8.6 31.6-.5a23 23 0 0012.8 3.5c-11-13.3-25.6-4.8-27.1-15.6 6.7 7.2 23-1.6 31.2 11.8m-28.8-9.8c-1.6-1.9-.9-3.8-2.5-5.3"/>
+    </g>
+    <path stroke="none" d="M416.9 121c-2.8-3-8.8-.7-7.1 5.3a9.4 9.4 0 017-5.4zm-17.1 16a20.6 20.6 0 015.5-3 12 12 0 00-3.7-5.1c-1.4-1-5.6 4.6-1.8 8.1z"/>
+    <path fill="none" stroke-linecap="round" stroke-width=".4" d="M392.4 126.8c-4.5-3-8.7-2.7-10-.2-3.3-.1-6 2.3-6.2 7m7 2c-5.4-3.7-12.8-2.3-12.3 6m-3.2 4.7c2.6-2.1 6.4-3.6 9.2.1m31-8.3c-1 1.4-1.7 3.6 0 6.8-2-2.6-7.1-2.6-12.5 4.4m24.5-11.5c-6.5.7-6.4 5-1.1 6.9m-45.4-22.9c-5.5-1.1-9.5 2.2-1.9 5M384 118c-7.8-2-11 0-7.4 1.8m-15.1 29.4c-.3 2.8 1.3 6.4 5.8 2.3m-4.3 6c0 .8-.1 1.6-.6 2.3m-17.5-39c-4.7-1.5-5.6-5.9-.1-5.5m-1.5 15.6c-5.3-1.8-5.3-7-.9-6.4m10.7 3.7c-6.2-1.5-6.4-5.7-1.8-5.1m2.5-8c-3.2-.2-8.3 3.5.2 5.6m9 1.8c-7.7-1.2-7.5 2-3 4m8.8-11.3c-6-1.1-8 2.4-4 3.9M350.3 137c-1.4-1.2-2.6-6.9 4.3-5.2m10 3.4c-4.6-1.2-9 3.3-4.8 6m11-11.4c-5-.8-9 .5-6.4 2.3"/>
+    <path fill="#fff" stroke-width=".4" d="M416.6 121a9.3 9.3 0 00-6.8 5.3"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bv.svg
new file mode 100644
index 0000000..01c9ee1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bv.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bv" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)">
+    <path fill="#fff" d="M-68 0h699.7v512H-68z"/>
+    <path fill="#d72828" d="M-93-77.8h218.7v276.2H-93zM249.4-.6h381v199h-381zM-67.6 320h190.4v190.3H-67.5zm319.6 2.1h378.3v188.2H252z"/>
+    <path fill="#003897" d="M156.7-25.4H221v535.7h-64.5z"/>
+    <path fill="#003897" d="M-67.5 224.8h697.8v63.5H-67.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bw.svg
new file mode 100644
index 0000000..0bc5d3d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bw.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bw" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#00cbff" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M0 192h512v128H0z"/>
+    <path d="M0 212.7h512V299H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/by.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/by.svg
new file mode 100644
index 0000000..73e14f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/by.svg
@@ -0,0 +1,22 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-by" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(1.032)">
+    <path fill="#b20000" d="M0 0h992.1v329.5H0z"/>
+    <path fill="#429f00" d="M0 329.5h992.1v166.6H0z"/>
+    <path fill="#fff" d="M0 0h109.8v496H0z"/>
+    <g fill="#b20000" stroke-width="1pt">
+      <path d="M5.2 8.4h5.3v8.4H5.2zm15.7 0h15.7v8.4H21zM26.1 0h5.3v8.4H26zm26.2 0h5.2v8.4h-5.2zm21 8.4h15.6v8.4H73.2zM78.4 0h5.2v8.4h-5.2zM15.7 16.8h10.5v8.4H15.7zm15.7 0h10.5v8.4H31.4zm36.6 0h10.5v8.4H68zm15.7 0H94v8.4H83.8zm-73.2 8.4h10.4v8.4H10.5zm26.1 0h10.5v8.4H36.6zm26.2 0h10.4v8.4H62.8zm26.1 0h10.5v8.4H88.9zM99.4 8.4h5.2v8.4h-5.2zM5.2 33.6h10.5V42H5.2zm36.6 0h10.5V42H41.8zm52.4 0h10.4V42H94.2zM10.5 59h10.4v8.4H10.5zm5.2 8.4h10.5v8.4H15.7zm21-8.4H47v8.4H36.6zm-5.3 8.4h10.4v8.4H31.4zm-10.5 8.4h15.7V84H21zm5.2 8.2h5.3v8.5H26zm36.7-25.2h10.4v8.5H62.8zm5.2 8.5h10.5v8.4H68zm21-8.4h10.4v8.4H88.9zm-5.3 8.4H94v8.4H83.8zm-10.5 8.4H89V84H73.2zm5.3 8.3h5.2v8.5h-5.2zm-26.2-8.3h5.2V84h-5.2zM0 75.7h5.2V84H0zm104.6 0h5.2V84h-5.2zm-78.5 42h5.3v8.4H26zm-5.2 8.4h15.7v8.4H21zm-5.2 8.4h26.2v8.4H15.7zm62.8-16.8h5.2v8.4h-5.2z"/>
+      <path d="M73.2 126.1H89v8.4H73.2zm-5.2 8.4h26.1v8.4H68zm5.2 42h26.2v8.5H73.2zM62.8 143h36.6v8.4H62.8zm-52.3 0H47v8.4H10.5zm5.2 42h15.7v8.5H15.7zm-5.2-8.3h26.1v8.4H10.5zm73.2-16.9h26.1v8.5h-26zM78.5 185h15.7v8.4H78.5zm-57.6 8.4h5.3v8.4h-5.3zm62.8 0h5.2v8.4h-5.2zM0 159.7h26.2v8.5H0zm47 16.9h15.8v8.4H47zm5.3 8.4h5.2v8.4h-5.2zm-15.7-25.3h36.6v8.5H36.6zm21-126H68V42H57.5zM47 42h15.7v8.4H47zm-5.3 8.4h10.5v8.4H41.8zm15.7 0H68v8.4H57.5zM0 42h10.5v8.4H0zm5.2 8.4h10.5v8.4H5.2zM99.4 42h10.4v8.4H99.4zM94 50.4h10.5v8.4H94.2zM0 126.1h5.2v8.4H0zm104.6 0h5.2v8.4h-5.2zm-57.5 67.3h15.7v8.4H47zm-5.3 8.4h10.5v8.4H41.8zm15.7 0H68v8.4H57.5zm-20.9 8.4h10.5v8.4H36.6zm26.2 0h10.4v8.4H62.8zm-31.4 8.4h10.5v8.4H31.4zm36.6 0h10.5v8.4H68zM26.1 227h10.5v8.4H26.1zm47.1 0h10.5v8.4H73.2zm-57.5 8.4h15.7v8.4H15.7zm62.8 0h15.7v8.4H78.5zm10.4-8.4h10.5v8.4H88.9zm5.3-8.4h10.4v8.4H94.2zm5.2-8.4h10.4v8.4H99.4zm-89 16.8H21v8.4H10.5zm-5.2-8.4h10.5v8.4H5.2z"/>
+      <path d="M0 210.2h10.5v8.4H0zm21 33.6h5.2v8.4h-5.3zm62.7 0h5.2v8.4h-5.2zm-31.4-25.2h5.2v8.4h-5.2zm-15.7 25.2h5.2v8.4h-5.2zm31.4 0h5.2v8.4H68zm-15.7 0h5.2v8.4h-5.2zm-52.3 0h5.2v8.4H0zm104.6 0h5.2v8.4h-5.2zM52.3 126.1h5.2v8.4h-5.2zm-26.1-84h5.2v8.3h-5.2zm52.3 0h5.2v8.3h-5.2zM47 100.8h15.7v8.4H47zm-10.4 8.5h15.7v8.4H36.6z"/>
+      <path d="M41.8 117.7h5.3v8.4h-5.3zm-10.4-16.8h10.5v8.4H31.4zm5.2-8.4h15.7v8.4H36.6zm5.2-8.4h5.3v8.4h-5.3zm15.7 8.4h15.7v8.4H57.5zm5.3-8.4H68v8.4h-5.2zm5.2 16.8h10.5v8.4H68zm-10.5 8.4h15.7v8.4H57.5zm5.3 8.4H68v8.4h-5.2zm20.9-16.8h10.5v8.4H83.7zm5.2-8.4h15.7v8.4H89zm10.5 8.4h10.4v8.4H99.4z"/>
+      <path d="M89 109.3h15.6v8.4H89zm5.2 8.4h5.2v8.4h-5.2zm0-33.6h5.2v8.4h-5.2zM0 100.9h10.5v8.4H0zm5.2-8.4H21v8.4H5.2zm10.5 8.4h10.5v8.4H15.7z"/>
+      <path d="M5.2 109.3H21v8.4H5.2zm5.3 8.4h5.2v8.4h-5.2zm0-33.6h5.2v8.4h-5.2zm-5.3 67.2h21v8.4h-21zm26.2 0h21v8.4h-21zm26.1 0h21v8.4h-21zm26.2 0h21v8.4h-21zm-41.9 16.8H68v8.5H41.8zm-36.6 0h26.2v8.5H5.2zm73.3 0h26.1v8.5H78.5zm26.1 33.7h5.2v8.4h-5.2zM0 201.8h5.2v8.4H0zm5.2 285.9h5.3v-8.5H5.2zm15.7 0h15.7v-8.5H21zm5.2 8.3h5.3v-8.3H26zm26.2 0h5.2v-8.3h-5.2zm21-8.3h15.6v-8.4H73.2zm5.2 8.3h5.2v-8.3h-5.2zm-62.8-16.8h10.5v-8.4H15.7zm15.7 0h10.5v-8.4H31.4zm36.6 0h10.5v-8.4H68zm15.7 0H94v-8.4H83.8zm-47-8.4H47v-8.4H36.6zm26 0h10.5v-8.4H62.8zm26.2 0h10.5v-8.4H88.9zm10.5 16.9h5.2v-8.5h-5.2zM5.2 462.4h10.5V454H5.2zm36.6 0h10.5V454H41.8zm52.4 0h10.4V454H94.2zm-83.7-25.2h10.4v-8.4H10.5zm5.2-8.4h10.5v-8.4H15.7zm21 8.4H47v-8.4H36.6zm-5.3-8.4h10.4v-8.4H31.4zm-10.5-8.4h15.7V412H21zm5.2-8.4h5.3v-8.4H26zm36.7 25.2h10.4v-8.4H62.8zm5.2-8.4h10.5v-8.4H68zm21 8.4h10.4v-8.4H88.9zm-5.3-8.4H94v-8.4H83.8zm-10.5-8.4H89V412H73.2zm5.3-8.4h5.2v-8.4h-5.2zm-26.2 8.4h5.2V412h-5.2zm-52.3 0h5.2V412H0zm104.6 0h5.2V412h-5.2zm-78.4-42h5.2v-8.5h-5.2z"/>
+      <path d="M21 370h15.6v-8.5H21zm-5.3-8.5h26.2v-8.4H15.7zm62.8 16.8h5.2V370h-5.2zm-5.3-8.3H89v-8.5H73.2zm-5.2-8.5h26.1v-8.4H68zm5.2-42h26.2v-8.4H73.2zm-10.4 33.6h36.6v-8.4H62.8zm-52.3 0H47v-8.4H10.5zm5.2-42h15.7v-8.4H15.7zm-5.2 8.4h26.1v-8.4H10.5zm73.2 16.8h26.1V328h-26zm-5.2-25.2h15.7v-8.4H78.5zM0 336.3h26.2V328H0zm47-16.8h15.8v-8.4H47zm5.3-8.4h5.2v-8.4h-5.2zm-15.7 25.2h36.6V328H36.6zm21 126.1H68V454H57.5zM47 454h15.7v-8.4H47zm-5.3-8.4h10.5v-8.4H41.8zm15.7 0H68v-8.4H57.5zM0 454h10.5v-8.4H0zm5.2-8.4h10.5v-8.4H5.2zm94.2 8.4h10.4v-8.4H99.4zm-5.3-8.4h10.5v-8.4H94.2zM0 370h5.2v-8.4H0zm104.6 0h5.2v-8.4h-5.2zm-62.8-75.6h10.5V286H41.8zm15.7 0H68V286H57.5zM36.6 286h10.5v-8.4H36.6zm26.2 0h10.4v-8.4H62.8zm-31.4-8.5h10.4V269H31.4zm36.6 0h10.5V269H68zM26.1 269h10.5v-8.3H26.1zm47.1 0h10.5v-8.3H73.2zm-57.5-8.3h15.7v-8.5H15.7zm62.8 0h15.7v-8.5H78.5zm10.4 8.4h10.5v-8.5H88.9zm5.3 8.3h10.4v-8.3H94.2zm5.2 8.5h10.4v-8.4H99.4zm-89-16.8H21v-8.5H10.5zm-5.2 8.3h10.5v-8.3H5.2zM0 286h10.5v-8.4H0zm21-33.7h5.2v-8.4h-5.3zm31.3 25.3h5.2V269h-5.2zm0 92.5h5.2v-8.5h-5.2zm-26.1 84h5.2v-8.4h-5.2zm52.3 0h5.2v-8.4h-5.2zM47 395.2h15.7v-8.4H47zm-10.5-8.4h15.7v-8.4H36.6zm5.2-8.5H47V370h-5.3zm-10.4 16.9h10.4v-8.4H31.4zm5.3 8.4h15.7v-8.4H36.6zm5.2 8.4h5.3v-8.4h-5.3zm15.7-8.4h15.7v-8.4H57.5zm5.3 8.4H68v-8.4h-5.2zm5.2-16.8h10.5v-8.4H68zm-10.5-8.4h15.7v-8.4H57.5zm5.3-8.5H68V370h-5.2zm20.9 16.9H94v-8.4H83.8zm5.2 8.4h15.7v-8.4H89zm10.5-8.4h10.4v-8.4H99.4zm-10.5-8.4h15.7v-8.4H89zm5.3-8.5h5.2V370h-5.2zm0 33.7h5.2v-8.4h-5.2zM0 395.2h10.5v-8.4H0z"/>
+      <path d="M5.2 403.6H21v-8.4H5.2zm10.5-8.4h10.5v-8.4H15.7zm-10.5-8.4H21v-8.4H5.2zm5.3-8.5h5.2V370h-5.2zm0 33.7h5.2v-8.4h-5.2zm-5.3-67.3h21v-8.4h-21zm26.2 0h21v-8.4h-21zm26.1 0h21v-8.4h-21zm26.2 0h21v-8.4h-21zM41.8 328H68v-8.4H41.8zm-36.6 0h26.2v-8.4H5.2zm73.3 0h26.1v-8.4H78.5zm26.1-33.6h5.2V286h-5.2zM0 294.3h5.2v-8.4H0zm47-42h5.3v8.3h-5.2zm10.5 0h5.3v8.3h-5.3zm0-16.9h5.3v8.4h-5.3zm-10.4 0h5.2v8.4h-5.2zm-36.6 227h10.4v8.4H10.5zm73.2-159.7h5.2v-8.4h-5.2zm-62.8 0h5.2v-8.4H21zm26.2-8.4h15.7v8.4H47z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bz.svg
new file mode 100644
index 0000000..0e9a27c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/bz.svg
@@ -0,0 +1,145 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bz" viewBox="0 0 512 512">
+  <defs>
+    <radialGradient id="a">
+      <stop offset="0" stop-color="#ffef5d"/>
+      <stop offset="1" stop-color="#ea5700"/>
+    </radialGradient>
+    <radialGradient id="b">
+      <stop offset="0" stop-color="#952d1a"/>
+      <stop offset="1" stop-color="#570a00"/>
+    </radialGradient>
+    <radialGradient id="c" cx="247.1" cy="238.3" r="36" fx="247.1" fy="238.3" gradientTransform="scale(1.22624 .8155)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="d" cx="322" cy="152.9" r="10.6" fx="322" fy="152.9" gradientTransform="scale(.93615 1.06821)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="e" cx="364.2" cy="237.8" r="36" fx="364.2" fy="237.8" gradientTransform="scale(1.2242 .81686)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <radialGradient id="f" cx="468.1" cy="156.1" r="10.7" fx="468.1" fy="156.1" gradientTransform="scale(.95596 1.04607)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+  </defs>
+  <path fill="#ce1126" d="M0 0h512v512H0z"/>
+  <path fill="#003f87" d="M0 36.6h512v438.8H0z"/>
+  <circle cx="256" cy="256" r="201.1" fill="#fff"/>
+  <circle cx="256" cy="255" r="166.7" fill="none" stroke="#552300" stroke-width="4.2"/>
+  <path fill="#007f00" d="M236.7 78c15.1-16.1 28.8 2.6 28.4 11.3-.4 8.8-15.6 28.1-29.3 12.6 14.2 3.6 18.5-12.3 25.7-12.5-7.2.2-10.2-15.6-24.8-11.3zm-157 127c-7.8-20.7 15-24.5 22.8-20.3 7.8 4.2 18.5 26.3-1.7 31.6 9.7-11-2.8-21.9.2-28.4-3 6.5-18.6 2.1-21.2 17zm338.4-20.4c20.6 8 8 27.4-.3 30.3-8.4 2.8-32-4.3-22.4-22.6 1.7 14.5 18.2 12.6 21 19.3-2.8-6.6 11-15 1.7-27zm-270 218c-22.1-2.2-15.3-24.3-8-29.3 7.2-5 31.9-4.6 27.7 15.7-5.7-13.5-21-7.2-25.5-12.9 4.4 5.7-6.5 17.5 5.8 26.5zm223.3-16c.3 22-22.6 17.8-28.4 11.2-5.8-6.5-8.2-31 12.5-29.1-12.8 7.1-4.8 21.6-10 26.6 5.2-5 18.3 4.4 25.8-8.7zM95.9 163.1c-2-22 21-19.5 27.4-13.4 6.3 6.1 10.6 30.3-10.3 30 12.3-8 3.2-21.9 8-27.3-4.8 5.4-18.6-3-25.1 10.7zm23.6 205.8c-21.9-3.6-13.6-25.2-6-29.7s32.2-2.4 26.7 17.5c-4.8-13.8-20.5-8.6-24.6-14.5 4 5.9-7.6 17 4 26.7zm173-290c20-9.7 26 12.5 22.5 20.6-3.4 8-24.6 20.8-31.9 1.4 12 8.4 21.7-5 28.5-2.6-6.8-2.4-3.9-18.2-19-19.3zM335 414.3c-9.9 19.7-28.3 5.6-30.4-2.9-2.2-8.5 7-31.3 24.6-20.2-14.8.5-14.3 17-21.2 19.1 6.9-2.1 14.2 12.2 27 4zm96.5-190.6c16.8 14.5-1.7 28.6-10.5 28.5-8.9-.2-28.7-14.7-13.4-28.8-3.3 14.2 12.8 18 13.2 25.2-.4-7.2 15.5-10.5 10.7-24.9zM151 107.6c5-21.5 26.2-12 30.3-4.2 4 7.7.5 32-19.2 25.3 14.2-3.9 10-19.8 16.1-23.5-6.2 3.7-16.6-8.5-27.2 2.4zm-65.6 184c-19.5-10.7-4.5-28.3 4.1-30 8.7-1.8 31.2 8.2 19.4 25.2.1-14.6-16.5-14.9-18.4-21.8 1.9 6.9-12.8 13.6-5.1 26.6zm281-170.3c22-3.1 20.8 19.9 15 26.5-5.9 6.6-30 12-30.8-8.6 8.8 11.7 22.2 2 28 6.4-5.8-4.4 2-18.5-12.1-24.3zm-125 314c-20.2 9-25.3-13.5-21.5-21.4 3.8-7.9 25.4-19.7 32 0-11.7-9-22 4-28.7 1.3 6.7 2.7 3.2 18.4 18.3 20.1zm182-122.9c9.1 20-13.5 25.3-21.5 21.5-8-3.7-20-25.1-.2-31.7-9 11.7 4.2 21.8 1.5 28.4 2.7-6.6 18.5-3.2 20.2-18.2zm-347-64.7c-12.7-18 8.6-27.3 17.1-25 8.6 2.1 24.4 21 6.2 31 6.6-13-8.2-20.5-6.8-27.6-1.4 7-17.6 6.6-16.5 21.6zM196.3 422c-20.8 7.6-24.4-15.2-20-22.8 4.3-7.7 26.7-18 31.8 2-11-9.7-22.1 2.6-28.6-.5 6.5 3.1 1.9 18.5 16.8 21.3zm-6-335c12.4-18.3 28.8-2 29.8 6.7s-11 30.2-27 17c14.7 1.3 16.4-15 23.4-16.3-7 1.2-12.5-14-26.2-7.4zm213.5 269c1.4 22-21.7 18.8-27.8 12.5-6.1-6.3-9.6-30.6 11.2-29.7-12.5 7.7-3.9 21.8-8.7 27 4.8-5.2 18.4 3.6 25.3-9.8zm-5.6-207.4c21.7 4.3 12.7 25.6 5 29.9-7.7 4.2-32.2 1.4-26-18.4 4.3 14 20.2 9.3 24 15.3-3.8-6 8.2-16.7-3-26.8zM122.4 133c.2-22 23-17.3 28.6-10.6s7.5 31.2-13.2 28.8c13-6.8 5.4-21.4 10.6-26.3-5.2 4.9-18-4.8-26 8zM95 331.7c-19.8-10-5.5-28.1 3.1-30.2 8.6-2 31.5 7.2 20.2 24.6-.4-14.6-17-14.3-19.1-21.1 2.1 6.8-12.4 14-4.2 26.7zM332.8 97c20.8-7.8 24.6 15 20.3 22.6-4.3 7.7-26.6 18.2-31.9-1.8 11.1 9.6 22.1-2.8 28.6.3-6.5-3-2-18.5-17-21.1zm-44.1 335.8c-16.1 15.1-28.5-4.4-27.5-13.2 1-8.7 17.5-27 30.1-10.5-14-4.6-19.3 11-26.5 10.7 7.2.3 9 16.3 23.9 13zm141.6-168.6c15.1 16.1-4.7 28.3-13.4 27.3-8.8-1-27.1-17.5-10.5-30-4.7 13.9 11 19.2 10.7 26.4.3-7.2 16.4-9 13.2-23.7z"/>
+  <path fill="#005800" d="M235.8 101.9c14.2 3.6 17.8-12.1 25-12.3-4.2 5-15.2 17.9-25 12.3zm1-23.8c15-16.2 28.6 2.5 28.3 11.2-12.3-21.3-16-18-28.4-11.2zm-136 138.2c9.7-11-3-21.2 0-27.7 2.7 6 9.4 21.5 0 27.7zm-21-11.4c-8-20.6 15-24.4 22.7-20.2-24.7 1.4-23.4 6.3-22.7 20.2zm315.6-12.6c1.7 14.5 17.8 12 20.6 18.7-6.3-2-22.3-7.6-20.6-18.7zm22.7-7.7c20.6 8 8 27.4-.3 30.3 15.6-19 11.1-21.4.3-30.3zM167.8 389c-5.7-13.5-20.5-6.8-25-12.4 6.6.3 23.5 1.3 25 12.4zM148 402.6c-22.1-2.2-15.3-24.3-8-29.3-9.8 22.6-4.9 23.6 8 29.3zm207.4-33.9c-12.8 7.1-4.5 21-9.6 26-.4-6.5-1.4-23.3 9.6-26zm15.8 18c.4 22-22.5 17.7-28.3 11.2 23.7 7 24.2 2 28.3-11.3zM113 179.6c12.3-8 3-21.2 7.6-26.6 1 6.4 3.2 23-7.6 26.6zm-17-16.5c-2-22 21.1-19.5 27.4-13.4-24.2-5.3-24.3-.2-27.4 13.4zm44.3 193.6c-4.8-13.8-20-8.2-24-14 6.5.7 23.3 2.8 24 14zM119.6 369c-22-3.6-13.6-25.2-6-29.7-11.3 21.9-6.5 23.2 6 29.7zm163.6-268c12 8.4 21-5 27.8-2.7-5.8 3.3-20.6 11.4-27.8 2.7zm9.4-22c19.9-9.7 26 12.5 22.4 20.6-3.8-24.3-8.5-22.5-22.4-20.5zM329 391.2c-14.7.5-13.7 16.6-20.6 18.8 2.6-6 9.5-21.4 20.6-18.8zm5.8 23.1c-9.9 19.7-28.3 5.6-30.4-2.9 17.8 17 20.6 12.8 30.4 2.9zm72.6-190.9c-3.3 14.2 12.6 17.4 13 24.5-5.2-4-18.4-14.6-13-24.5zm24 .3c16.7 14.5-1.8 28.6-10.6 28.5 21.1-12.8 17.7-16.5 10.6-28.5zm-269.4-95c14.2-3.9 9.4-19.3 15.6-23-1.1 6.4-4.3 23-15.6 23zm-11-21.1c5-21.5 26.1-12 30.2-4.2-21.3-12.5-23-7.8-30.3 4.2zm-42.2 179.2c.1-14.6-16.2-14.3-18-21.2 5.9 2.8 21 10.3 18 21.2zm-23.5 4.8c-19.5-10.7-4.5-28.3 4.1-30-17.9 16.9-13.7 19.8-4.1 30zm265.2-152.4c8.8 11.7 21.6 1.7 27.3 6.1-6.5 1.3-23.1 4.4-27.3-6zm15.9-17.9c22-3.1 20.7 19.9 14.9 26.5 4-24.2-1-24-15-26.5zM251.7 413.8c-11.6-8.9-21.2 4.2-27.9 1.5 5.9-3 21-10.4 28-1.5zm-10.3 21.5c-20.3 9-25.4-13.5-21.6-21.4 2.8 24.4 7.6 22.9 21.6 21.4zm160.2-133c-9 11.6 4.3 21 1.6 27.6-3-5.8-10.6-20.8-1.6-27.6zm21.7 10.1c9.1 20-13.5 25.3-21.5 21.5 24.6-2.9 23-7.6 21.5-21.5zM99.7 253.7c6.6-13-8.2-19.8-6.8-26.8 4 5.1 14.4 18.5 6.8 26.8zm-23.2-6c-12.8-18 8.5-27.3 17-25-23.5 7.3-21.1 11.7-17 25zM208 401.2c-11-9.7-21.4 2.8-28-.3 6.1-2.6 21.8-9 28 .3zM196.2 422c-20.8 7.6-24.4-15.2-20-22.8 1 24.5 6 23.3 20 22.8zM193 110.6c14.7 1.4 15.7-14.7 22.8-16-3.4 5.7-12.2 20-22.8 16zM190.2 87c12.4-18.3 28.8-2 29.8 6.7-15.4-19.2-18.7-15.3-29.8-6.7zm196.9 251.8c-12.5 7.7-3.5 21.1-8.4 26.4-.8-6.5-2.5-23.2 8.4-26.4zm16.6 17.2c1.4 22-21.7 18.8-27.8 12.5 24 6 24.3 1 27.8-12.5zm-26.6-196c4.2 14 19.7 8.8 23.5 14.8-6.5-.9-23.2-3.6-23.5-14.8zm21-11.5c21.7 4.3 12.7 25.6 5 29.9 12-21.5 7.2-23-5-30zm-260.3 2.7c13-6.8 5-20.8 10.2-25.8.3 6.6.9 23.4-10.2 25.8zM122.4 133c.2-22 23-17.3 28.6-10.6-23.5-7.6-24-2.6-28.6 10.6zm-4.2 193c-.4-14.6-16.6-13.7-18.7-20.5 6 2.6 21.4 9.6 18.7 20.5zM95 331.7c-19.8-10-5.4-28.1 3.1-30.2-17.3 17.6-13 20.3-3.1 30.2zm226.3-213.8c11.1 9.6 21.4-2.9 28 .2-6.1 2.6-21.7 9.2-28-.2zm11.6-20.8c20.8-7.8 24.6 15 20.3 22.6-1.4-24.5-6.3-23.2-20.3-22.6zm-41.5 312c-14-4.5-18.6 11-25.8 10.7 4.6-4.8 16.4-16.8 25.8-10.6zm-2.6 23.8c-16.1 15.1-28.5-4.4-27.5-13.2 10.8 22.1 14.8 19.1 27.5 13.2zm117.7-171.3c-4.7 13.8 10.9 18.5 10.5 25.7-4.7-4.5-16.8-16.4-10.5-25.7zm23.9 2.7c15.1 16.1-4.7 28.3-13.4 27.3 22.3-10.6 19.3-14.6 13.4-27.3z"/>
+  <g fill="#730000" stroke="#000" stroke-width=".5">
+    <path d="M287 128.3s.6-1.4 1.8-.6c1 .9 1.3 4.5 1.3 4.5l-1.7.8s1-1.3-1.4-4.7zm-9.5 32.8s.8-1.2-.3-3.7l1.7-.5s.6 2-.2 4.2h-1.2m28.9-5.8l-4 2.4 2 1 4.8-2.9-2.8-.5m-53 15.5c-1.1.9-1.2 2.3-1.8 3.2-.5.8-2.1 2-2.2 3.2a6.8 6.8 0 00.2 3.8c.6 1.6 3.2 9 2.2 14.7-1.2 5.6-.7 8-.3 8.8.4.8 1.6 3.1 2.4 3.1 1.6-.2.9-.7 1.5-1.7 1.6-2.7 0-23.7-.7-29.5-.5-4.5-2.6-8.6-2.8-9l-1-2.7c-1.5-3.8-3.4-7-3.4-14.8 0 0-5.1 1.2-9.5-8.8-2.3-5-5.6-4.4-9.6-6l1.8-1.2s3.4 1.6 5 1.6c1.7 0 1.2-3.3 1.2-3.3l1.6-1.7v7.3c0 3.4 4.6 8 7.3 9.3 1.7.8 3.9-2.6 3.4-6-.6-3.3 0-7.8 0-7.8l2.3 1.4s-.9 1.4-.7 2.3c.3.8 1.5-.9 2.3-1.7 0 0 .2.2 1 .2l-2.4 4.3c-.9 1.4-.9 6.7-.9 8.6 0 2 .8 6.6.8 8 0 1.1 2 5.4 3.5 8l1.8 3.7c1.2 2 1.3 3.4 2 5 .5.9 1.2 3.3 1.7 7.4.2 1 .4 5 .8 7.6.3 2.5 2.4.6 4.9-1.2 2.5-1.9 2.5-6.4 2.5-6.4s2-1.6 1.6-.7c-.2 1 1 2.1 1 2.1-1.5 3.5-.6 3.1 1 3 1.6-.2 7-4.3 7-4.3.7-.2 4-.2 3.4 0-.6.4-1.4 2-1.4 2l3.5-.5c-1.3 1-6 3.6-7 4.3a96.3 96.3 0 01-9.1 4.3c-2.4 1-7.1 3.4-7.3 5.8-.1 2.4.3 8.8 0 11l-1 11.3h-11.2s2.2-8.2-.1-10.3c-2.2-2.3-7.3-9-10.7-11.3-3.3-2.2 2.2-.5 2.2-.5v-2.3l5.1 6.1s8.9-7.8 0-18.4c-2.8-3.3-5.6-8.4-7.8-9-2.3-.6-3.4-1.1-7.3 0-4 1.2-13.4 1.2-17.4-5l3.4-.6 2.8-1.1s-1.2 4 6.7 4 9 0 8.4-7.4l2.3-1.1 1.6 1.7s-1.1 4-.5 5.6c.5 1.6 3.3 2.8 5.5 4.5 1 .7 1.7.8 2.3.8 1-.1 1.2-.1 2.4-1.4 1.9-2 1.5-2 3.4-3.6l1.1-1.7 1.1 3z"/>
+    <path d="M255 165.3c.4-.4 1.3-2 2-3.3 1.2-2 2.7-3.3 4.4-6 1.5-2.3 2.2-5.9 1.5-8.4l1.5.9v4s2-1.7 2.9-2.2l.8.5s-6.2 6.4-12 16.8l-1-2.3zm-54.8-21.6c.9 1.4 1.7 4.2 4.2 6.4l1.6-.5s-3.8-4.5-3.8-6.4l-2 .5m9.8-2.5s.5 5.3-.8 7.3l1.6-.9s1.2-3.6.9-5.6l-1.7-.8zm55-16.8s-.4 7.5 1 12l2-.5s-.3-1.4 1.4-2c1.7-.5 5.6-2.2 7.6-3.9l-.6-1.6s-3 2.4-4.5 3c-1.4.5-2.2 1.1-3.3.8-1.2-.3-2.6-2.2-1.7-6.5l-2-1.3m22 35s-.4 5.3-.1 7.6l1.7.4s-.4-6.3.8-6.9l-2.3-1.1m8 4s-2 3.4-4.4 3.7l3.7-.7s1-.5 2.6-2.2l-2-.8"/>
+  </g>
+  <g fill="#289400" stroke="#030" stroke-width=".5">
+    <path d="M263 147.6l1.4.9 1.5.2 3.3 2.8c1.3 1.1 1.3-.2 1.3-.2l.9 3.3h1.1l-.3 3.3 2-1.6 2.3 2s1.6-1.5 2.5-1.5c.8 0 1.1-.8 1.1-.8h.1c-5.5-2.6-7.9-5.4-6.2-8.2 2.7-4.7 7.2-1.6 8.6-1l20.2 10.8s1.4-.8.4-1.6c-1-.9-1.4-3-1.1-3.8.3-.8 2.6 2.6 3.8 3l3.7.7-.1-1s3.3 2.2 3.3 3.4c0 0 2.4-1.3 1.6-2-.8-.8 3.6 1.7 4 3.1l.9-1a11 11 0 011.4-5c1-1.5 2.2-2 2.2-2s1-1.7 2.1-1.7c0 0-1-.7-1.5-1.6-.5-.8-1.7-1.2-1.7-1.2l2-1.7c.4-.6.8-.7.8-.7s-2.4-2-4-2.3c0 0-.2-2.7-2.3-3h1s-1.6-2.8-3-3c0 0 .9-1 1.7-1 0 0-1.7-2.4-4.1-1.5l1.5-.7s-1.1-1.2-4.7-.6c0 0 .3-1.4-1.2-2.6 0 0-1.4.1-1.4 1.2 0 0-1.2-1.2-2.8-1.2-1.5 0 .5 1.7.5 1.7s-2-1.4-3.3-1c0 0 .5-2.4-.8-3.6 0 0-1.6.8-2 1.9l-.4-1s-2.1 2.4-2.5 1.7c-.3-.4-.6-2.2-.6-2.2l-1.3 1.9.2-2.6s-1.4.8-2.6 3.5c0 0-1.5 1.4-1.5 2.6 0 0-1-1.3-2.1 0-1 1.5 0 1.2 0 1.2s-.5.5-1.5.7l.2.8s-1.3-.7-2.4-.4l.5 1.3s-2.7.2-2.8-2c0 0-2.3-1.2-2.6 0l-1.6 1.1s-.6-1-1.5-1.2c-1-.3-.2 1.3-.2 1.3s-.3-1.2-1.6-1.8c-1.2-.6-.2 1.1-.2 1.1s-1.7-1.3-.8-2.4c0 0-1.6 1.5-.9 2.8l-1 .8s-.5-.6-.4-1c.1-.4-1.8 1.3-1.8 1.3s-1.1-2.7 0-2.7c.1 0-2-.1-2.3 2.3 0 0-1.3 0-2.6.5-1.3.4 1 1.3 1 1.3s-2-.4-3.2.2l.8 1s-.8-.8-2.5-.1c-2 .5.4.8.4.8s-1.9-.4-2.8 0 .3 1.1.3 1.1-3.5-1-4-.7c-.5.3 1.2 2 1.2 2s-2.1.5-2.5 2l1.8.8s-.8.4-1.2 1.3c-.4.8 1.2.4 1.2.4s-2.3 1.6-2.3 2.9c0 0 1.7.5 3-.7s.4-.9.4-.9v.9s2.5-1 2.5-1.7c0-.5-.4.8-.4.8l2.4-1.2 1.5 1z"/>
+    <path d="M261 115.1l-.5-2.3 5.3.7 1-2.2s2.5 1.1 3.3 2c0 0 5-1.3 6.4-.8l-.7 2.3s4.5.3 6 .8c1.3.6-.6 1.7-.6 1.7s5 .6 7.3 2c2.3 1.3 2.3 2.5 1.1 2.8l2.8 4.5s-4.5.5-5.3 1.6c-.8 1.2-1.7-1.1-1.7-1.1l-.8 3.1s-2.8-1.4-4-2.5c0 0-1.3 1.7-.5 2.5l-5-3.3s-2.3-.3-2.3 1.7l-3.1-3.7-2.8.8s-.8-1.1-1.9-1.4c-1.1-.2-.3 1.4-.3 1.4l-1.7-2-1.6-2s-1.5 2-2.6 2c-1 0-1-1.3-.9-2.2.3-.9-3.3-1-3.6 0 0 0-1-4.2 2.8-5.3l4-1zm-20 14.3l-2 1.6-1-.6-2.1 2.3-.5-1.2-1.1 1.9-1.8-.7-.8 1.4-1.6-.3s-1.3 1.2-2.2 1.5c-.8.3 0-1.8 0-1.8s-1.2 2-2.2 2c-.8 0-.5-.9-.5-.9s-.5 1.4-1.5 1.6c-1 0-.6-1-.6-1l-1.6 1.2v-1l-.8-.4s.5-1.8 1.2-2.3c.7-.4-.7-1.6-.7-1.6l.7-.9s-2.1-.5-2.1 0c0 0 1-2.9 2.5-3.4l.1-3.1s1.5-1.3 2.8-1.4c1.5-.2-.4-2.4-.4-2.4l3.3-2 .5-2.4 5 .5 1.1-2.2 4 1 3.5-1.8 2.5 3 3.7.3v3.3s4.4 1.4 5 1.8c0 0-.9 2.7-.9 3.2 0 0 3.1-.8 4-.6l.5 3.6s5.3 1.7 5.6 2.6c0 0-1.1.8-1.7 1.7 0 0 .6 3.2.6 4.3l-.4.6s-1.6-1.5-2.9-1.7l-1 2.3-1.9-1.2h-1.1s-1-1-1.7-1v-1.1l-1.5 1s-2.3-1.2-2.3-2v-1.6l-2.3 1.7s-.5-1.3-.4-1.8c0-.5-1 1.2-1 1.2s-1.2-2.2-1.1-2.6l-.3 1.8s-2.5-.8-2.9-2.5z"/>
+    <path d="M207.5 139.6s4.4 2.2 4.4 3.2c0 0 1.1-2.3.5-3l1.7 1s.5-2-.1-2.7c-.6-.5 3.7-2.3 4.6.6 0 0 2.7-2.7-2.3-5 0 0-.5-1.7 2.5-1.3 0 0-.2-1-.9-1.4h3s-1.8-1.5-4.4-2c-2.5-.3-1-.7-1-1.2-.3-.5 0-2.4 0-2.4s-1.5-.5-2.7.1l.4-.5s-2.7-.7-3.7 0c0 0-1.6-.7-1.4-2.4 0 0-1.5 0-2.3 1.6 0 0-1.4 1.6-3.4 1.6-.4 0-1.9-.8-1.9-.8l-1.2 3-2-.2.6 1.2s-3-.9-4 0c0 0 1.2 1.7.9 3 0 0-2.4.4-3 .8-.6.4 1 .8 1 .8s-2.8.8-3.4 1.6l1 .9-1.2 1.6 1 .2-2.7.9c-1 .3 1.7.5 1.7.5l-1.3 1.1 2 .3s-1.6 4.2-1.7 6.2c0 0 2.4-3 3-3.1l-1.8 3s3.5-1 3.8-1.6l.7-1.1v1.7s1.4-1.8 1.6-2.6c.1-.7 2.2.8 2.2.8v-1l2.5.7c.7 0 .8-.3.8-.3l1.8-.3-.3 1.5s1.2-.8 1.6-1.7c.2-.8.8 0 .8 0l.8-3.3h1.8zm-14.3 14.8l1.7 3.4c-1.4.1-3.3 1.7-3.3 1.7.3 5.7-1.2 5.4-1.2 5.4.4 1-.3 3-.3 3l8.3-5 .1-.5 9.8-4.6.3.5 2.9-1.5 2 5.2-2 1.1c0 1.8 2.1 5 2.1 5l2.6-.7 2.9-1v1c0-.4 3-1.4 3-1.4l1.4 1.3c1 0 3-2.6 3-2.6l2.1.9s.8-1.3.8-2.2c0-.9 2.7-.9 2.7-.9l1.9 1.4 2.4-2s.7 1.5 1.6 1.7c1 0 3.7 2 3.7 1.6 0-.4 1.1-2.7 1.1-2.7l4.4 1.8c-.6-2-2-4.4-2-4.4s2-1.6 1.6-2c-.4-.5-1.7 0-1.7 0l1.3-2.6h-1.7l.5-.6-2.7-1.1 1.5-3c-.7-.7-7.8-2.1-7.8-2.1l1.6-1.6s-.8-1.3-1.7-1.3-5.2.1-5.4-.3c0-.4-1.8-2-1.8-2l-2.8 2-1.3-.4-2.4 1s0 1.3-.3.4-2.5-3-2.5-3c-.4.7-3.3 4-3.3 4s-.4 1.8-1.3.5c-1-1.2-3.2-2.6-3.5-1.5-.4 1.1-2.3 2.2-2.8 1.8-.4-.3-2.7 0-2.9.6 0 .7-2.6 2.6-2.6 2.6-1.5-.8-4-.3-4-.3s-.8 1.1-.9 2l-5 1.4zm47.1 42.2v-2.2l2.5 1.7 1.5-1.7 1.9 1.9 1.1-1.9v3l2.8-2.5 1.7.8v-2.4s2-3.4 1.1-4l1.7-.5s-2.8-2.8-3.7-3.3c-.8-.7-2-.7-2-.7s-2.1-2.2-3.6-2.8c-1.3-.5-2.2.6-2.2.6s-.8-1.6-2.3-2c-1.3-.2-1.3 1.2-1.3 1.2s-1-1-2.4-1.6c-1.4-.6-.4 1.3-.4 1.3l-4.8-1.5.6 1.5-4.5-1.1.5 1.6-3-.5-.3 1.3-4.5.9.9 1.4-2.9-1.1v2l-3 1.1 1 1s-4 2-5 2.7c-.8.5 1.7 1.6 1.7 1.6l-4.4-.6 1.6 1.5-4 3.6 2.9 2-1.7 2.5 4.2.8 1.6 2.8 3.5-.6v3.1l5-4s3.6 3.3 4 2.4l.1-3.7h1.8v-2.8l1.4 1.2 2.3-3.4 3 4.2 2.3-5.3 3.3.5zm20.4-12.6l-.5-4.8-1.4 1.5.6-4.5-2.3-.4.8-4.4-1.6-.8.4-2.1 1.6-1.3 3-2.9 7 .1.9-2.3 5 .9c.8.9 3.4-2 3.4-2h1l1.2 2.3s3.6-.6 5.3.6l-2 2.7 3.7.3 2.5.5 2.6-.8 3.3-.2.8 1.3h3.2l-1 1.3 4 1.9-.8.8s2.3.8 4 .8h.8s.8 2-.4 2.8c0 0 1.2 2.9 3.7 3.4s2.5.5 2.8 1.1c.3.5 0 3.4-2.8 3.4v2.8s-2.2 2-2.5 2.8l-1.7-1.2s-1.4 1.7-1.4 2.9c0 0-3.7-4.8-5-5-1.5-.4-1.2 2.7-1.2 2.7l-4-3.4-.5 2.3-3.3-2.8-2 1.4-3.5-3.7-3.5.4 1.4-1.7h-4.2l-.8-3.7-.6 3-2.5-1.6-3.3 3.5s-.4-.4-.9-2c-.5-1.7-2 1.9-2 1.9l-1.1-2.6-1.4 2.6s-1.1-2-2.3-2.6c-1-.5-2.2 3.1-2.5 4.8zm.7 11l.2-1.7 6-2.3 5-2 2.4-1 1.2 2 1.4-2.9 2.3 3 1.3-1.6 2 1.4h1.6l.3 2.2s4.2.3 4.5-.5c.3-.8.8 2.8.8 2.8l4 .5.8 4.5s2 4.2 1.4 5.9c-.6 1.7-2.2-2.2-2.2-2.2s-.3 3-.6 4c-.3.8-5.4-1-5.4-1l-2.1 4.3s-2.3-3.4-3.4-3.4-1.1 3.4-1.1 3.4l-4.8-5.7c-1.4-1.6-1.7 1.7-1.7 1.7s-2.2-3.7-2.2-4.7c0-1.1-2-2.3-2-2.3s-3.4 4-5.9 5c0 0 .3-2.5-.5-3.3-.8-.9-3.3 1.6-3.3 1.6s-1.8-3.8 0-7.8z"/>
+  </g>
+  <g fill="none" stroke="#004b00" stroke-width=".5">
+    <path d="M288.9 132.8l.5 2.1s1.9-.4 3.1-.3c0 0-.3 1.7-.7 2.4 0 0 2.5-.4 3.6.3l-.5 1.3 3 1.2-2.8 2.2s4.4 1.6 5.2 2.8c0 0-2.8 2-3.2 1.9-.4-.2-.1.8.6 1.8l-2.4-.1s1 2.1.9 3c-.1.8-4 .6-4 .6m15-5.6s.7-4.2-.4-5.2c0 0 2.7 2.3 4.5 2.4 1.8 0-.1-3.5-.1-3.5s2.6 1.4 3.8 1.7c1.3.2-1-2.6-1-2.6s.8-1.4 2.9-.1m-48.4-16.6s0-1-.4-1.4c-2.5-3.5 2.6 2.6 3.7 2.8m4.8 0s1.6 1.2 2.5 1.2-.6-3.3-1-3.7c-.4-.5 3 1.3 4.3 1.5 1.3.3 1.5-2 1.5-2s3.8.6 4.7 1m-26.8-.6l-.4-3.2m-25.9 13.6c-.2-.4 1-2.3.5-3.1 0 0 .8.6 1.5.7.6 0 .4-2.4.4-2.4l.9.3s2.1-1 1.7-1.9c-.4-.8 1.5 1.3 1.5 1.3s1.2-1.3 1.2-1.8 1.5 1.3 1.5 1.3 1.5-.3 1.5-1.3 2 .3 2 .3.9-1.1.8-1.9m-21 10.5s.9-2.2-.2-3.7m-25.2 10.5c.1-1 .6-3.8.1-4.2-.5-.5 1 .4 2.3.7m9.9-.4c-1.3-1.3-2-1.9-4-1.9m-17.2 8.8c.4-.7.9-2.5.6-3.5m26.6 55.2l1.4-2.8 1.7 4 1.1-2.5.4.8 2.5-2.7 2.7 4m43.5-17.5l1.7-3.6 2.4 1.3 1.2-3.5 2.5 1.6 1.4-3.2 2.9.7.2-2.3s2 1.1 2.5 2c.6.8 0-2.8 0-2.8l2.3 1s1.6-1.7-.7-2.6"/>
+    <path d="M281.2 174l2.5 3.6 2-2.4 2 4.1 2.3-1.5 3.4 2 1.6-1.2 3.8 2.7 1.5-3.3 3.4 1.1 2.1-3.8m-90-9.8s1.5-2.5 1-3.6c-.7-1.2 3 2 3 2s.8-2.5.3-3.7c-.6-1.1 4.2 3.4 4.2 3.4s.8-3.9 0-4.7c-.9-.9 4.6 1.1 4.6 1.1s2.2-.6 1.3-1.7c-.8-1.2 3.7 1.6 3.7 1.6s1-2.8 0-3.8c-1.2-1.2 3.3 1.3 3.3 1.3l-1.7-3 3.7.2-.3-3.3m32.3 48.1l2.4-1.1 2 2 2.3-3.6 2.8 2.7.5-2.7 3 1.3.6-1.7 3.3 1.7.3-2.4 1.7.5.3-1.7"/>
+  </g>
+  <path fill="#9dd7ff" d="M216.7 318a74.5 74.5 0 01-6.4-13.9l45.1-39.7 45.1 39.6a69 69 0 01-6.5 14.2l-.4.6-3.4-1.3s-1.4 1.3-2.6 1.4c-1.6.2-2.9-1.3-2.9-1.3s-2 1.6-4 1.3c-2-.2-2.8-1.4-2.8-1.4s-2 1.6-3.5 1.3c-1.4-.3-2.3-1.2-2.3-1.2s-1.3 1.5-3 1.2c-1.7-.3-3.3-1.2-3.3-1.2s-2.6 1.1-4.2 1.3c-1.7.3-3.2-1.4-3.2-1.4s-2.1 1.4-3 1.4c-.8 0-4-1.4-4-1.4s-3.2 1-4.3 1c-1 0-4.3-1.3-4.3-1.3s-3 .8-4.4.8c-1.4 0-3.5-.8-3.5-.8s-2.5 1.1-3.9.8c-1.4-.3-2.6-.8-2.6-.8s-2.7 1.1-4.4.8c-1.7-.3-3.7-1.5-3.7-1.5s-.3.9-3.5 1.5h-.1"/>
+  <path fill="#fff" stroke="#000" stroke-width=".7" d="M255.4 218.8v45.6l-45 40a89.8 89.8 0 01-4.8-29v-56.6h49.8"/>
+  <path fill="#ffd83c" stroke="#000" stroke-width=".7" d="M255.4 218.8v45.6l45 40a89.8 89.8 0 004.7-29v-56.6h-49.7"/>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#730000" d="M226.3 308.5c3.4 1.8 2.3 1.3 9.3 3.8 5.7 2 12.4 2.9 22 2.9a66 66 0 0016-1.4c2.8-.9 3.5-2 3.5-2l-7 7.1s-28 1.5-33.2-1.8a66 66 0 01-10.6-8.6z"/>
+    <path fill="none" d="M267.5 295.3s9 5 0 14.9m-40.3-1.2l12.9-12.3-1.5 16.5m6.8 1.4v-27.5m22 27.5v-29.1m-11 29.7v-31.4"/>
+    <path fill="#ff0018" d="M245.4 288.6l-5.8 1.9 5.8.6v-2.5m11-4.3l-6.2 2.3 6.1.2v-2.5m11.2 1.7l-6.2 2.3 6.2.3V286zm3.6 13.2c-.3-1.2 3.7-1.1 3.7-1.1s1.1 4.2 0 6.8l-3.4-.7s.4-2.8-.3-5z"/>
+    <g fill="#fff">
+      <path d="M229.1 307.4l11-10.7-.5 6.4s-5.7 3.6-5.7 6.2l-4.8-2m5.9 2.3s1.1-3.4 4.2-5l-.3 6.6-4-1.7zm15.7-18.5s4.5-.6 7.8 0c0 0-.5 4.5 0 5.3 0 0-6.1-1.4-8.6.9 0 0-.9-4.2.8-6.2zm-9.5 1.1s4.5-.6 7.8 0c0 0-.8 5-.3 5.9 0 0-5-2.8-7.5-.5 0 0-1.6-3.5 0-5.4z"/>
+      <path d="M240.9 298s4.5-.4 7.8 0c0 0-.5 4.6 0 5.4 0 0-5.8-1.4-8.3.8 0 0-1.2-4.1.5-6.1zm9-.8s6.4-.8 9.8-.3c0 0-1.4 3.7.3 6.2 0 0-7-1.9-9.6.3 0 0-2.2-4.2-.5-6.1zm-9.5 7l8.6.7s-.8 6.3-.3 7.2c0 0-7-1.7-8.3.6 0 0-2.3-5.9 0-8.5zm9.8 0s7.5-.5 11 0c0 0-2 4.8.1 9 0 0-9.8-2.8-11.1-.5 0 0-2.3-5.9 0-8.5zm11.4-13.1s4.5-.6 7.9 0c0 0-.6 4.5 0 5.3 0 0-6.2-1.4-8.7.9 0 0-.8-4.2.8-6.2zm0 6.2s4.5-.6 7.9 0c0 0-.6 4.4 0 5.3 0 0-6.2-1.4-8.7.8 0 0-.8-4.2.8-6.1zm.6 6.4s4.4-.6 7.9 0c0 0-1.2 7-.6 7.8 0 0-5.1-2.4-7.5-.3 0 0-1.5-5.5.2-7.5z"/>
+      <path d="M271.4 304.2s1.5 5.3 3.4 6l-2.5 3s-3-2.2-3.4-4.7c0 0 2-2.3 2.5-4.3z"/>
+    </g>
+  </g>
+  <g stroke="#000" stroke-width=".6">
+    <path fill="#006ac8" stroke="none" d="M293.8 318.6c-7.2 12-19 23.2-38.4 30.2a71.8 71.8 0 01-38.7-30.7v-.1c3.3-.6 3.6-1.5 3.6-1.5s2 1.2 3.7 1.5c1.7.3 4.5-.9 4.5-.9s1 .6 2.6.9c1.3.3 3.8-.9 3.8-.9s2 .9 3.6.9c1.3 0 4.3-.9 4.3-.9s3.3 1.4 4.3 1.4c1.1 0 4.4-1 4.4-1s3 1.4 4 1.4c.8 0 3-1.4 3-1.4s1.4 1.7 3 1.4c1.7-.2 4.3-1.3 4.3-1.3s1.6.9 3.3 1.2c1.7.3 3-1.2 3-1.2s1 .9 2.3 1.2c1.4.3 3.5-1.3 3.5-1.3s.9 1.2 2.8 1.4c2 .3 4-1.3 4-1.3s1.4 1.5 3 1.3c1 0 2.5-1.4 2.5-1.4l3.6 1.1"/>
+    <path fill="none" stroke-width=".5" d="M292 321.3c-1.6.1-1.8-1-1.8-1s-2 1.9-4 1.5a4.6 4.6 0 01-3-1.6s-2.2 1.7-3.7 1.4c-1.5-.2-2.5-1.2-2.5-1.2s-1.4 1.5-3.1 1.2c-1.8-.2-3.4-1.2-3.4-1.2s-2.8 1.1-4.5 1.4c-1.8.4-3.3-1.6-3.3-1.6s-4 1.3-4.9 1.3c-1 0-3.8-1.3-3.8-1.3s-2 1.2-3.2 1.2c-1.2 0-4.5-1.4-4.5-1.4s-3.2.8-4.6.8c-1.5 0-3.7-.8-3.7-.8s-2.7 1.1-4.1.8a14.3 14.3 0 01-2.6-.8s-3 1.1-4.7.8c-1.8-.3-3.9-1.5-3.9-1.5s-.3.8-3.7 1.5h-.1"/>
+    <path fill="#5ac800" d="M227.3 325.6s-.3.6-3 1.2l-.7.2.6-.1-.7.2c3 4.5 7.6 8.5 12.4 11.7 4.8 3.3 10.3 7.1 19.7 9.9a76 76 0 0019-9.7c6.4-4.7 9.8-7.6 13.4-12.4-2.8 1.6-2.4 1.6-3.9 1.4-1.5-.3-2.5-1.4-2.5-1.4s-1.4 1.6-3.1 1.4c-1.8-.3-3.4-1.4-3.4-1.4s-2.3 1.6-4.6 1.5c-1.7-.1-3.2-1.7-3.2-1.7s-4 1.4-4.9 1.4c-1 0-3.8-1.4-3.8-1.4s-2 1.3-3.2 1.3c-1.2 0-4.5-1.5-4.5-1.5s-3.2.8-4.6.8-3.7-.8-3.7-.8-2.6 1.1-4.1.8c-1.5-.3-2.7-.8-2.7-.8s-2.9 1.1-4.6.8a15.7 15.7 0 01-3.9-1.4z"/>
+    <path fill="#ffd800" d="M255.6 348.7c10.2-4.3 12-5.4 18.2-9.2-1 0-4.2-1-3-1.3 0 0-1.3 1.1-2.6 1.1-1.1 0-4.4-1.4-4.4-1.4s-3.2.8-4.6.8-3.7-.8-3.7-.8-2.7 1.1-4.1.8c-1.5-.3-2.6-.8-2.6-.8s-3 1.1-4.7.8c-1.8-.3-3.9-1.4-3.9-1.4s-2.5 1.3-4.1 1.5a57 57 0 0019.5 9.9z"/>
+  </g>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#b34b00" d="M248.7 265.6c2-1.7 3.2-3.3 2.5-4.5-.7-1-2 .7-3.3.3 0 0-2-1.3-2.6-2.2-1.1-1.3-2.7-2.5-3.5-3.6-1-1-4.4-5.7-9.7-11-1.6-1-1.2-4.7-2.3-5.9-.1-.8-10.6-11.2-14.4-15-1.5-1.1-2.3-1.8-5 .6-2 1.9-2.8 3.8 0 6.2L224 243c2 2 4.8 2.3 6 3.3l13.9 14.3c1.7 1.5 2.6 2.5 1.6 3.8-1.1 2.2 0 2.5.3 2.5.2.1 1.2.1 1.8-.4l1.1-.8z"/>
+    <path fill="none" d="M214 228.3l14.3 14"/>
+    <path fill="#fff" stroke-width=".6" d="M233.4 234.7l1.2-2.7c.2-.4 4-6.6 6-6.7 0 0 12 8.6 12 8.8 0 .4-5.2 8.2-5.7 7.7 0 0-14-6-13.5-7z"/>
+    <path fill="#ccb8c8" stroke="none" d="M241 236.8c-1.6-1.3-4.3-2.5-6.5-4l-1 2c.8 1 10.7 5.6 12.4 6.5 0 0-2-2.2-4.9-4.5z"/>
+    <path fill="none" stroke-width=".4" d="M234.5 232.5c1.3 1 3.7 2.5 5.2 3.4 3 2 4.8 4.3 7 5.5"/>
+    <path fill="#782121" d="M210.3 269.8l27.2-33.7c.5-.5 3-.5 3.3 2.1l-25.7 35.2s-3-.3-4.9-3.6z"/>
+    <path fill="#730000" d="M301.5 270.2c-1 .7-2.5.9-2.5.9-1.8-2-3.3-4.3-5.8-7l-27.1-33.4 2.8-2.7 24.4 28.6c.8.7 5 5.2 9.1 10.5 0 0 .4 2.1-.9 3z"/>
+    <path fill="#fff" d="M275.3 235l-4.4-5.3s-3.3.4-4 2.2c0 0-2.3 4-8.7 4.4 0 0 1.8 7.4 9.2 11.3 0 0 2.7-7.6 5.3-9 0 0 2.7-1.9 2.6-3.7z"/>
+    <path fill="#730000" d="M264.4 258c-.6-.1-1.3 0-2.2.6-.8.5-1.9.3-1.8-.7.1-1 0-.9 1.2-1.6a6.7 6.7 0 015.2-.5l-2.4 2.3m29.7-29.6c-.2-.8-.4-1.5.3-2.4.7-.9.7-2.3-1-1.6-1.8.7-2.5 2.7-1 5.7l1.7-1.7z"/>
+    <path fill="#fff" d="M263.8 258.7l30.8-30.6 7.6 8s-1.6-.5-2.2-.1c-.5.4.6 2 .6 2s-1.4-.6-2-.1c-.8.4 0 2.1 0 2.1s-1.3-.9-2-.5c-.4.4 0 2.4 0 2.4s-1.6-.5-2 0c-.4.3 0 2.1 0 2.1s-1.7-.8-2.5 0 .4 2 .4 2-2-.9-2.9.4c-.8 1.2.1 2.4.1 2.4s-1.7-.8-2-.4c-.5.4 0 2.4 0 2.4s-1.5-.9-2.5.2.1 2 .1 2-1.3-.8-2-.4c-.8.5.2 2.4.2 2.4s-1.4-.9-2.3 0c-1 1 0 2.1 0 2.1s-1.2-1-2.3 0c-1 1.2 0 2.3 0 2.3s-1.7-.8-2.3 0c-.7.8.2 2 .2 2s-1.3-.7-2-.3c-1 .4 0 2.3 0 2.3s-1.3-1.4-1.9-.6c-.6.7.1 2.4.1 2.4s-1.1-1.3-1.7-.6c-.8.6.4 2.2.4 2.2s-2.1-1-1.6-1z"/>
+    <path fill="#7e4b7e" stroke="none" d="M292.8 230.6l-2.4 2.4.6 8.2s.5-2.4 1.2-.7c0 0 .2-2 .7-1.7-.4-.2 0-8.2 0-8.2m-4.5 4.4l-1.8 1.7.6 8.2s.5-3 1.3-.6l-.2-2.8V235m-18.6 18.5l-1.7 1.8.4 5s.6-3.3 1.3-.8l-.2-2.8.2-3.2"/>
+    <g fill="none" stroke="#7e4b7e" stroke-width=".9">
+      <path d="M267.6 232.9a97.5 97.5 0 014.4 5.3m-3-3c-.1.6-.5 2.4-1.5 3.3m2-3c0 .5 0 1.8-1.5 3.2m2.1-2.5c-.2.7-.3 1.3-.8 1.8m1.1-1.2c0 .5-.3.7-.4 1m-3.4-3a25.3 25.3 0 01-5.1 3m4.2-1.8c-.4.4-2.3 1.9-3.3 2.3m3-1c-.6.4-1.6 1.4-2.5 1.7m2-.5c-.5.5-1.1 1-1.7 1.2"/>
+      <path stroke-linecap="square" d="M246.7 239.6l1.7-3c1-1.4 1.4-1.6 2-2.1"/>
+    </g>
+  </g>
+  <path fill="#289400" stroke="#060" stroke-width=".5" d="M146.2 323.6c1.5.7 0-5 .5-7.3.6-2.3 5 5.6 7.3 6.7 2.3 1.1 16.2-5.5 16.2-5.5l3.3-6.3 1.8 5.1s3.9-4.5 5-6.1c1.2-1.7 0 3.3-1.1 5-1.2 1.6 3.3 2.3 2.8 5.6s4.5-2.3 4.5-2.3l12.9 1.2s2.2-7.9 5.6-12.3l1 5 5.4-5.4a70.3 70.3 0 0044 41.8 71 71 0 0043-39l7.1 7.4s5.7-1.7 6.7-2.3a76.8 76.8 0 0116.6 6c1.1.7.3-3.7.3-3.7s6.1 1.1 5.6 4.4c0 0 1.4-3 2.5-3.6 1.2-.5 3.9 2.8 4.5 4 .5 1 13.7 2.7 15.6 3.8 0 0 1.5 1.7 1.5 2.8 0 0 2.8-.3 5-.3 0 0-1.7.8-1.7 2.6 0 1.7-.8 3-2.5 3.9-1.7.8 0 1.4 2.2 1.6 2.3.3 0 3.2-4.5 4.8 0 0-1 2.5.8 3.4 0 0-3.8.3-4.4-.9 0 0-1.4 2.6-1.4 4 0 0-4.2-1.4-5.3-2 0 0-1.7 1.7-.5 2.5 0 0-7.6-.8-9-3.6 0 0-2.8.8-2.3 1.7 0 0-5.3-3.6-7-3.6l-1.1 1.9s-3.6-2.2-4.8-2.2c-1 0-.2 1.6-.2 1.6l-5.1-3-2 3s-4.2-2-5.3-2.8c-1-.8-1.4 1.7-2.2 2 0 0-1.7-2.3-4-2 0 0-.8 2.8-.5 3.7l-7.6-1.7c-1.1-.3-.5 1.4 0 2.5 0 0-4.8-1.3-5.8-2.2l-.3 2.2s-4-.3-4.8-1.1L282 348h-3.6l-.9 3s-7-2-7.6-.8c-.5 1.1.3 2.8.3 2.8l-6.1-.8-.5 2.5s-7.1-2.2-8.8-1.2c0 0-2.2 2.3-3.6 2.8-1.4.7 0-.8 0-.8l-2.2-3s-2.5 1.3-4 .8c-1.3-.6-5.8 2.2-7.3 1.4 0 0 0-2-1.1-2.5-1-.6-3-.6-3.9.8l-2.3-3.3c-1.3-2.3-3.3.2-3.3.2l-.3-2.7-3.9-.3c-2.3-.4-2.8-2.3-2.8-2.3s-6 .6-6.7.3l1.4-1.4s-8.1 1.7-9.8 1c-1.7-.5 1.9-2.7 1.9-2.7l-9-2.2c-1.3-.3-9.4 1.3-10.6 1.3-1.1 0-1.7-1.9-1.7-1.9s-2 1.7-3.6 2.2c0 0-1.4-3.3-.5-3.6 0 0-5.3 1.4-5.6 2.8 0 0-1.4-2.2-1.2-3.1 0 0-2.5 4-3.6 4.8-1.2.8-.2-2-.2-2s-3.2 4-4.3 4.3v-2.9s-9 4.8-11.5 4.2c0 0 0-2 .9-2.5l-5.7-.3c-1.3-.2-3-.8-4.5-1.1-1.3-.3 2-1.7 4.3-1.1 0 0-6.2-2.3-8.1-1.1 0 0-.8-2.3 2.5-3.2 0 0-4.3-4.1-6.8-3.8 0 0 2.8-1.7 5.1-.9 0 0-2.6-7-4.2-7.9 0 0 5.9-1 7.6-.2z"/>
+  <path fill="#730000" stroke="#000" stroke-width=".5" d="M137.5 201.4l75.8-39.3c.4-2-.8-3.6-2-5.2-21.6 10.6-41.4 23.5-65.5 31.4-1.3.5-13.3 5.5-19.5 12.9-1.9 2-2 4.8-2 4.8s.1 3.3.8 4.2c0 0 .2 1 1.3 1.7 0 0 .7.3 1.2.1.6.1 1.4.1 2.7-2a56 56 0 017.2-8.6z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".5" d="M198.5 162.5l9.8-4.7s3.4 2.5 3 5.3c0 0 .8 6.5 8.8 11 0 0-6.8 8.4-18.6 9.2 0 0 1.3-11.2-1.2-14.4 0 0-.4.4-.2-.2.3-1-.2-4.8-1.8-5.6-.2 0 .2-.4.2-.6z"/>
+  <path fill="none" stroke="#7e4b7e" stroke-width=".8" d="M210 163.9c-2 .8-8.8 4.4-8.8 4.4m5.6-2.3c-.1 1-.8 3.5 0 5.3m-1-5c0 .5-.8 2.4.1 4.9m-1.1-4.4c-.2 1-.4 1.7 0 2.8m-.8-2.2c-.2.6 0 1 0 1.4m6.1-1.7a41 41 0 004.8 7m-4.4-5c.3.8 1.9 3.8 3 5m-3.2-3.2a18 18 0 002.1 4m-2-2c.1.9.5 2 1.2 2.6"/>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#b34b00" d="M279.8 158.2l27.8 13.6c5.6 2.7 7.6.2 10.8 1.6l55 28c4.7 2 7.3 2.7 6.6 5.1 0 4 1.9 4 2.4 4 .4.1 2.3-.1 3-1.2l.6-.7c.7-.6.5-.7.7-1 2.3-3.3 3.6-6.2 1.2-8-2.8-1.4-3 1.6-6 1.3 0 0-5.2-2-7-3.4-3.5-1.8-8.4-4-9.5-5.3-3.5-.7-29.9-15.5-44.9-23-1.6-1.3-2.4-6.3-5.6-8-1-1.3-21.2-10.6-31.8-15.9-3.9-1.4-6-2.4-8.9 2.4-2.4 4.7-1.8 7.2 5.6 10.5z"/>
+    <path fill="none" d="M282.1 152.3l31.2 15.6"/>
+  </g>
+  <g fill="#ffa54b" stroke="#000" stroke-width=".5" transform="translate(-128) scale(1.024)">
+    <path fill="url(#c)" d="M309.7 165.1c-.2.6-.7.2-.7.4-.4 2.2-.3 3.3-.8 4.5a7.1 7.1 0 01-3.1 2.6c-2 .7-4.5 3.1-8.5.9l-.6-.5s1.1 4.1-3 6.2l-15.7 8.2s-1.5 2.8-.5 6.5c0 .6.3 1.1-.3 1.5-1 .7-2.7 2.8-3.7 6 0 0-3-1.3-3-3.2 0-2 1.2-3 1.5-4.4.3-1.3 1-4.7.7-5.7-.4-1.1-2.3-1.5-3-2-.6-.3-1.4.5-1.3 1.4.1 1 .8.8 1.6 1 0 0-.9 2-.8 3.4l-9.2 4.8 1.6 2.3c.4.7 1.3 10.2 4 14.7s3.7 3.2 4.3 3.8l2 2c.8.5 4 .8 4.5-1a9 9 0 013.2-4.1c2-1.6 6-5.4 6-7.2 0 0 2.3 6.8 2 12.4 0 0 8.5 1.7 16.1 1.9 7.6 0 11.5-1.5 11.5-1.5s1-6.4.6-7.7c0 0 1.2 4.2 2.2 5.6 1 1.8 2.1 5.3 4.3 5.5 2.2.1 4-2.1 4.2-3v-6.8h8.7s3.8 1.5 5 1.3c1.3-.1 2-1.3.8-1.7l-.4-.3c1.2 0 2.6.7 2.6.7h4.3l-.1-.5c-.3-1.2-2.6-2.2-4.2-3-1.6-.5-3.5-1.2-4.7-1.3a20 20 0 00-6.2.4c-.8 0-3.9.4-5.8 1.3-.5.3-1 .4-.8-1 .3-1.3.2-7.8-1.3-10.5-1.2-2-1-3.6-.9-5.2a87 87 0 000-8.8c-.3-1.7-2.5-4-6.6-4.4-3.8-.5-7-3.7-7.3-6.2-.3-2.6.4-7.2.8-9.3"/>
+    <g fill="none">
+      <path fill="url(#d)" d="M292.4 153.6c-.7 3.3-.7 6.1-.6 9.3.1 2.1 1.1 4.6 2 6.7a10 10 0 002.8 3.9c3.6 2.3 7-.2 8.9-1a6.4 6.4 0 002.7-2.5c.5-1.2.3-2.1.8-4.5l.7-.4c1-1.5.7-2 1.2-3 .6-1-.5-2.2-1.8-2 .6-1.9 1-4 .4-5.9-.2-.6.5-2.2-.6-1.8-4.6 1.8-10 1.4-14.8 1.4-.4 0-.8-.8-1.4-.7l-.3.5"/>
+      <path fill="#000" d="M292 155.3c-.5-.4-.6-1.3 0-3.2.7-2 0-2 1.1-3.2s.9-1.6 1.6-1.9c.7-.2 2.8-.2 3.5-.5a11 11 0 019-.3c1.5.8 2.5 2.8 3.4 3.6 1 .7 1.7 3.6 1.5 7.9-.3 4.3-1.2 3.5-1.2 3.5s-1.2-2-2.2-.3c0 0 0-1.7.2-3 .1-1.1-.6-3.4.1-4.9 0 0-5.8 1.8-8.7 1.7-3-.2-7.4-.9-7.6-1.6l-.7 2.2"/>
+      <path fill="#fff" stroke="#fff" d="M295 151.8c-.3-.6-1.8-2.9-.6-3.6 1-.6.4 2.8 2 3.5 0 0-.6 1.5-1.4.1z"/>
+      <path d="M298.3 160.1l-.9 3.2m10.6 1.6c.2.6.4.3 1 .4m.3-4c.5-.5 1.2-.2.8 1.3m-17.7-4.9l2.8 1c1.5.6.6 2.9.2 4.3-.2.7-1 2-.6 2.5.5.8 1.1.3 2 .4 0-.3.6-.5.8-.5.7 0 1.1.5 1.7.3.6-.3.5-1.2.3-1.7m-.1-4.5c0-.4 1-.8 1.5-.9 2.1-.4 3.6-.7 5.4.5m-5.7 11.1c-1.8.4-3.6.7-5.2-.2m0-.8c.8-.4 1.1-.8 2.1-.3a5 5 0 011.1-.4c.8 0 1.4.3 2.2.8m-5.5.3c1-.3 3.3-.3 5.4.1"/>
+      <path fill="#fff" stroke-width=".3" d="M292.3 160.1c.7 0 1.6-.9 3.2.3 1.1.8-1.8 1.5-1.3 1.4-1.4.2-1.8-.5-1.9-1.2 0-.1-.2-.5 0-.5zm8.4.8c.7-1.4 1.8-1 2.8-.8 1 .3.7.1 1.7.7-1.2.1-.9.2-1.7.6-.9.5-1.7.7-2.3.3-.2-.2-.7-.5-.7-1 0 .2 0 .3.2.3z"/>
+      <path fill="#000" stroke-width=".3" d="M293.8 161.4c.4 0 .7-.4.7-.8 0-.6-.3-1-.7-1-.5 0-.9.4-.9 1 0 .4.4.8.9.8zm8.6.2c.4 0 .7-.4.7-1a.8.8 0 00-.8-.8c-.4 0-.7.3-.7.8 0 .6.4 1 .8 1z"/>
+    </g>
+    <g id="g">
+      <g fill="none">
+        <path d="M345.9 213.7a3.9 3.9 0 00-1.9-1.4l-2-1c-.7-.4-1.7-.5-2.4-.9m.5 2.6l-.9-.5c-.3 0-.7 0-1-.2 0 0 0-.2-.2-.2a3.5 3.5 0 01-2.4-1.3m-62.8-9.3c1 .7 3.2 2.2 3.4 5.1a10.5 10.5 0 001 3M264 202c.5 1.7.6 7.4 6 13.4m-5-21.4c-.4 1.1-1 2.2.2 3m14.4 10.7c1.1-2.6 4.6-2.4 4.6-4.8"/>
+        <path d="M284.8 207.3c-.3-2.9-1-4.5-.4-8.7.2-1.2.4-5.9 0-8.1 0 0 1.6 7.8-3.7 9.3m34.4 12.5c0-4 1-6.2 1-6.2 1.2-5.6-1.2-7.7-.3-9.1.9-1.2 2-3.8.5-8.9 0 0 2.8 10.5-4.5 10.5-7.5 0-7.2-2.7-7.2-2.7"/>
+        <path d="M284.4 190.5c0 2 0 8.4 9 8.4 2.8 0 5.8-2 7.4-3.3m2.2-2.7c-.3-2-.3-4.4-.3-7m-13.6-3.4c2.4-.3 4.4-.6 9-.6m.2-6.3c.5 2.2-.3 5.8 4 6.3m4.3-7.1c-.6 1.6-.6 3.3-.8 4.4m.2 2.7c1.7 0 5-1.1 9-.3m1.4 22.8c.9 1.6 1 3.8 3.6 6.2m-31.7-11.4c.2 1.3-1.8 5.7-.3 9.3a12.3 12.3 0 01-1.2 11m6.7-19c-.9 1.7-2.3 3.3-2.6 4.7m6.6-1.6c0 1-2.7 8.7-4.7 10.9 0 0 3.6 1.4 3 6.6m7.4-21c0 1.2-.2 1.6 1 2.4m2.4 0c1.3 1.6 5.5 6.5 4.6 9.2m-7.4-6.5c.3 1 .3 6.3-.6 9m-2.1-.2c-1.1 0-2.8.8-3 2.7m8.7-3c1.1-.3 3.3 1.6 3.3 7m15.7-10.2c-2.1.6-3 1.7-2.4 1.1-1.1 1-2.2 1.6-2.2 1.6"/>
+      </g>
+      <path fill="#000" stroke-width=".3" d="M289.8 198c.6 0 1.1-.4 1.1-1 0-.3-.5-.7-1.1-.7-.5 0-1 .4-1 .8 0 .5.5.9 1 .9zm23 .3c.6 0 1.1-.4 1.1-1 0-.4-.5-.7-1-.7-.6 0-1.1.3-1.1.8s.5.9 1 .9z"/>
+      <path fill="#fff" d="M280.5 239.8c1.3-8 5-14.5 5.1-15.2 0 0 3.9.9 10.6 1.5 6.6.7 8.4.4 11.5.2l6.8-.8s1.2 2.4 1.3 4.8c.3 5.2 2.3 27.7 2.5 33.7 0 0 .8 3.6.8 12.3 0 9.6 2.6 29 2.6 39.4l-2.6.5s-14.5 1.1-14.5-.8c0-2.1-.8-27 1.4-42.1 0 0-.5-3-1.4-5.5-.8-2.5-4.3-10-4.3-11.7 0 0-5.7 16-6 18.8-.3 2.6-1.2 38.4-1.7 41.3 0 0-8.2 6.3-9.3 7-1.1.4-9-3.4-9.3-4.4a211 211 0 014.6-33.2c1.4-7.1.6-8.4.6-10.4s.1-27.5 1.3-35.4z"/>
+      <path fill="none" d="M294.3 275c-.6 2.2-1.7 4.3-3.6 5.7m-2.7-53.6c-.3 1.3-2.3 7.3-7.2 10.9m14.3-9.8c-1.1 3.6-5.5 22.7-6.3 45.4m-.3 7.1l-1.7 20.8m-.8 3a71.3 71.3 0 00-2.7 18.7m32.2-36c-.2 2-1 15.7 3.6 28m-18.5-86c-.3 2.3-.8 16.7-.8 17.8 0 1.2 1.6 2.8 2.4 3 0 0-1.6.6-2 6m-4-12.8c-.3 1.7-2 8.5-3 11.3m13-25.5s5 1 5.3 0c0 0 1.6 29.5 3.8 46m-11.2-42.2l-.6 16.5m2.5 2.1s1.9 2.8 1.4 4m-17.8-28l3 .8m5.2 1.6c-.3.9-.6 4.6-.6 4.6m8.8 38.9c.6.8 1.4 2 .8 4.4"/>
+      <path fill="#9b5f00" d="M285 224.4s0-3.2 1.1-4.8c0 0 3.5.7 8.4 1.2 5 .5 9 .9 12.6.5 3.7-.4 7.4-1.3 7.4-1.3s1 4.8.5 5.5c0 0-4 .8-8.3 1a86 86 0 01-14.5-.8 57 57 0 01-7.3-1.3z"/>
+      <path fill="#fff" d="M288 224.8l.7-4.8h1l-.2 5.1-1.4-.2m22-4.1l.1 5.5 1.3-.2-.1-5.6-1.3.3m-15.6 0l-.4 5.3h.7l.7-5.3h-1"/>
+      <path d="M276.8 320.8c-.3 1.3-.8 3.2-1 5.5 0 .5-.6 3.3 1 3.4 1 0 1.4-2.9 1.4-2.9s-1 3.3.3 3.7c1.8.4 2-3.6 2-3.6-.2 1.1-1.4 4 .3 4.3 1.9.3 2.4-3.9 2.4-3.9s-1.6 4.2.3 4.3c1.7 0 1.7-4 1.7-4s-.9 5 1.5 4.5c1.4-.2 1.7-2 2-3 .4-1.5 1.3-3.4.2-6.6-.8-2.3-.5-3-.5-3s-2.9 2.2-5.1 3.6c-1 .6-6.5-2.3-6.5-2.3zm29.7-4.4c-.5-.3-.4 1.9-.6 2.9-.1 1 .2 3.2 3.6 3 3.4-.3 6.7-1 8.9-.5 2.1.6 5.3.7 7 .7 1.7 0 2.8-.2 3.7-.5.7-.3 2.2.4 3 .4s1.7-1 1.6-1.8c0-1.3-1.3-1.3-3-1.4a22 22 0 01-5-1c-1.1-.3-3.1-1.5-5.7-2l-5.9.2c-1 0-7 .3-7.6 0z"/>
+    </g>
+    <g fill="none">
+      <path fill="#ffb366" d="M255.7 189.8c-.5.3-1.1-2 .4-2.9 0 0 .4-2 2-2.1 0 0 1.4-1.9 3.3-1.7 0 0 2.2-1.5 3-1.3.9.1 3 2.1 3 2.9.2.7 0 1.9-.5 2.4-.6.6-1-.1-1.1-1 0 0 .4 1.6-.8 2.2-1.2.7-1.1.2-1.2-.6 0 0-.4 1.6-1.2 1.9-.8.3-1.3-.5-2-.5 0 0 1.1.9.4 1.5-.7.5-1.5.3-2-.1-.5-.5-1.2-1.9-3.3-.6z"/>
+      <path d="M265.7 186c-.5-1.5-2.2-3-4-2.8m2.2 4.4c-.3-.4-.4-.8-.8-1.2-.9-1.5-2.8-1.4-4.4-1.8m2.4 4.5c-.6-.4-.8-1.2-1.4-1.5-1-.4-2-.9-3.3-.7"/>
+    </g>
+  </g>
+  <g stroke="#000" stroke-width=".5" transform="translate(-128) scale(1.024)">
+    <path fill="url(#e)" d="M439.1 165.1c.7-.3.5.6.6 1 .4 1.3.4 2.7.9 3.9.6 1.1.8 1.5 1.8 2 1.6 1 6.4 3.6 9.8 1.5a3.1 3.1 0 00.7-.5s-1.3 4.1 3 6.2l15.6 8.2s1.5 2.7.6 6.5c-.2.6-.4 1.1.2 1.5 1 .7 2.6 2.8 3.8 6 0 0 3-1.3 3-3.2 0-2-1.3-3-1.6-4.4-.2-1.3-1-4.7-.6-5.7.4-1.1 2.1-1.5 2.8-2 .7-.3 1.6.5 1.3 1.4 0 1-.8.8-1.6 1 0 0 1 2 .8 3.4l9.4 4.8-1.6 2.3c-.5.7-1.5 10.2-4.2 14.6-2.8 4.5-3.7 3.3-4.2 4l-2.1 1.8c-.6.5-3.8.9-4.5-.9a9 9 0 00-3.1-4.1c-2-1.6-6-5.4-6-7.2 0 0-2.3 6.8-2 12.4 0 0-8.4 1.7-16.2 1.9-7.6 0-11.5-1.5-11.5-1.5s-1-6.4-.6-7.7c0 0-1.2 4.2-2 5.6-1.1 1.8-2.2 5.3-4.4 5.5-2.2.1-4-2.1-4.2-3v-6.8h-8.7s-3.8 1.5-5 1.3c-1.3-.1-1.9-1.3-.9-1.7l.4-.3a7 7 0 00-2.5.7H402l.1-.5c.3-1.2 2.6-2.2 4.3-3 1.6-.5 3.3-1.2 4.6-1.3 1.9-.2 3.2-.1 6.2.4.8 0 4 .4 5.8 1.3.5.3 1 .4.8-1-.3-1.3-1.2-5.5.3-8.3 1-1.9.9-3.5.8-5.2-.2-1.7-1.1-5.6-1.1-7.3 0-5.7 4.4-8 8.2-9.2 4.3-1.4 7.1-2.8 7-5.3-.2-2.7.5-7 .1-9"/>
+    <g fill="none">
+      <path fill="url(#f)" d="M456.3 153.6a20 20 0 011.2 5.3c0 1.2-.5 1.4-.1 2.8.7 2.4-.8 5-2.5 8-.8 1.2-1.4 3-2.7 3.8-3.4 2.1-7.5-.4-9.6-1.3a3.7 3.7 0 01-2-2.2c-.4-1.2-.5-2.3-.8-4 0-.3 0-1.2-.6-.9-1.3-1.4-1-2-1.6-3-.5-1 1-2.2 2-2a10 10 0 01-.2-5.9c.2-.6-.6-2.2.5-1.8 4.5 1.8 10 1.4 14.8 1.4.4 0 .7-.8 1.3-.7l.3.5"/>
+      <path fill="#000" d="M456.8 155.3c.4-.4.1-2.3-.4-4.3-.1-1-1-1.5-2-2.6s-1.6-1-2.3-1.4c-.6-.2-2-.2-2.8-.5-.6-.3-2.2-.1-3.7.1-2 .3-3.2.2-4.7 1s-2.8 1.8-3.3 3.3c-.4 1-1 2.5-.8 6.8.2 4.3 1 3.5 1 3.5s1.1-1.7 1.9-.6l-.3-3.6c-.1-1.2 0-2.8.5-4.6 0 0 4.6 1.7 9 1.7 3 0 7-.3 7.1-1l.7 2.2z"/>
+      <path d="M450.4 160.1c.7 1.8.1 1.3.4 2.4m-10.2 2c0 .8-.6.6-1 .6"/>
+      <path d="M456.9 158.8c-1-.7-2.7-.2-3.5.1-1.5.7-.7 2.3-.2 3.7.2.7 1 1.7.5 2.4-.4.8-.7.4-1.6.5 0-.3-.8 0-1.1 0-.6 0-1 .4-1.5.2-.6-.3-.5-1.2-.3-1.7m.1-4.5c0-.4-1.3-.8-2.7-.9-2.3 0-2.5.1-4.2 1.3m11.5 9c-.4-.6-1-1-2.1-.4 0-.2-1.6-.4-1.6-.4-.8 0-1.3.3-2.1.7m5.6.6c-1-.6-3.3-.2-5.6-.2m.2.8c1.7.5 3.5.8 5.2 0"/>
+      <path fill="#fff" stroke-width=".3" d="M456.4 160.1c-.7 0-1-.9-3.1.3-1.1.7 1.8 1.5 1.4 1.4 1.2.2 1.6-.5 1.7-1.2 0-.1.2-.5 0-.5zm-8.3.8c0-.8-1.8-1-2.9-.8-1 .3-.5.1-1.5.7 1 .1.7.2 1.6.6.9.5 1 .9 2.3.3.3-.1.7-.5.8-1 0 .2-.2.3-.3.3z"/>
+      <path fill="#000" stroke-width=".3" d="M455.1 161.4a.8.8 0 01-.8-.8c0-.6.3-1 .8-1 .4 0 .7.4.7 1 0 .4-.3.8-.7.8zm-8.7.2c-.4 0-.7-.4-.7-1 0-.5.4-.8.8-.8s.7.3.7.8c0 .6-.3 1-.8 1z"/>
+    </g>
+    <use width="100%" height="100%" fill="#730000" transform="matrix(-1 0 0 1 748.8 0)" xlink:href="#g"/>
+    <g fill="none">
+      <path fill="#730000" d="M491.6 193.5c.5.2 2-2 .5-3 0 0-.5-2-2-2 0 0-1.4-2-3.4-1.7 0 0-2-1.5-2.9-1.4-1 .2-3 2.2-3 3-.2.5 0 1.8.5 2.4.6.5 1-.1 1-1 0 0-.3 1.5.9 2.2 1.2.7 1.1 0 1.2-.7 0 0 .3 1.6 1.1 2 .9.2 1.4-.5 2-.5 0 0-1 .8-.3 1.3.7.6 1.5.3 2 0 .6-.5.3-1.8 2.4-.6z"/>
+      <path d="M482.5 189.8c.5-1.8 2.2-3.2 4-2.9m-2 4.4c.1-.4.2-.8.5-1.2 1-1.6 3-1.6 4.6-1.9m-2.5 4.5c.6-.4.8-1.1 1.4-1.4a5.3 5.3 0 013.2-.7"/>
+      <path fill="#730000" stroke="none" d="M482.3 186.8c-.9.7-1.8 1.8-1.9 2.2 0 .7 0 1.9.5 2.5.6.5 1 0 1.1-.8 0 .5 0 1.5.8 2 1.3.7 1.2.1 1.3-.7 0 0 .3 1.6 1 2 .9.2 1.4-.5 2-.5 0 0-1 .8-.3 1.3.7.6 1.5.3 2 0 .6-.5.3-1.8 2.5-.6.2.2.8-.4 1-1.1l-7.7-5.5-2.3-.8z"/>
+      <path d="M480.7 188.2c-1.5 2.6.5 4.1 1.1 2.6-.1 2.4 1.7 2.3 2.3 1.5.7 2.5 1.9 1.4 3 1.2-1.3 2.3 1.4 1.6 2 1 1-1.3 1.4-.2 2-.3l1.3-1.3m-8-5.7c-1.7 1-2.5 2.2-2.6 3.7m5-2.2c-1.8 1-2.6 2.2-2.6 3.7m5.4-1.7c-1.7.9-1.8 1.7-2.5 2.8"/>
+    </g>
+  </g>
+  <path fill="#5ac800" d="M169 331.4l-.1-4.8 2 1.7.5-3.6c.8-.2 2.2 1.4 2.2 1.4l-.3-3.6 3 3.3s-.1-2.8.9-4.5c0 0 2.3 2 2.3 4.3 0 2 2-2.8 2-2.8l1.6 5.3 1.4-2 1.1 4.2 2.5-3.7 2 4.3 4.5-.3.5 2.5 2-2.2 2.6 1.7s2.2-.7 3.3-.7 2.5 1.5 2.5 1.5.8-1.5 1.7-2c.8-.5 2 .9 2.3 1.7l1.6-3s2.2 2.2 2.5 3c0 0 .3-2.5.9-3.3.5-.9 1.3.3 2 1.3l1.3-4.5s1.5.3 2.5 2c1.1 1.7 1.1-2.5 1.1-2.5s2.5 3.3 3.2 5.6c0 0-17.3 6-29.4 4.3a318.4 318.4 0 01-26.1-4.6m118.2-.5s.8-2.3 2-3.4c0 0 2.2 2.6 2.2 3.4l1.7-1.1 1.7 1.6 2-1.3 1.9 1.6 3.4-1.4 1.4 1.4 5.3-.6 2 .9 1.8-2.4 1.8 1.8 2.8-2.8s1.4 1.2 1.7 2c0 0 2.3-1.1 2.8-2 0 0 2.2-.8 2.5.5 0 0 1.3-1 1.2-2.1 0-1.2 1.6-.4 2.1 1 0 0 .6-2.2 2.3-2.4 0 0 1.2 1.3.8 3.9 0 0 2.5-2 3.7-2.2 0 0 .5 2.8-.3 5.3 0 0 2.6-4.3 3.1-2.8.2.8.8 3.6.2 5.6l2.3-1.5.8 2.8 2.5-.5s-14.8 2.3-28.7 1c-14-1.4-27-6.3-27-6.3M277 341.3c.7-.5-4.7 11-17.6 11.5-18 .9-33.3-8.1-33.3-8.1s1.8-3.1 3-4c0 0 2.5 2 3.3 4.5 0 0 .3-1.7 1.2-3.1 0 0 3 1.4 3.6 3.4 0 0 1.1-2 2-2.5.8-.6 1.7 2.2 1.7 3.9 0 0 2-2.1 3-2.2 0 0 2.3 1 2.9 4.7 0 0 2-2 2.8-1.7 0 0 2.5 1.7 1.9 4-.3 1.2 2.5-1.5 6-2.3l3 2.3 3.6-5s2.3.8 2.3 2.2c0 0 1-4 1.8-4.4.9-.5 2 1.2 2 2.4 0 0 .3-3 2-3.7 0 0 1.7 1.2 1.7 2.3 0 0 1.7-3.4 3-4.2z"/>
+  <path fill="none" stroke="#060" stroke-width=".5" d="M169 331.4l-.1-4.8 2 1.7.5-3.6c.8-.2 2.2 1.4 2.2 1.4l-.3-3.6 3 3.3s-.1-2.8.9-4.5c0 0 2.3 2 2.3 4.3 0 2 2-2.8 2-2.8l1.6 5.3 1.4-2 1.1 4.2 2.5-3.7 2 4.3 4.5-.3.5 2.5 2-2.2 2.6 1.7s2.2-.7 3.3-.7c1.2 0 2.5 1.5 2.5 1.5s.8-1.5 1.7-2c.8-.5 2 .9 2.3 1.7l1.6-3s2.2 2.2 2.5 3c0 0 .4-2.5.9-3.3.5-.9 1.3.3 2 1.3l1.3-4.5s1.5.3 2.5 2c1.2 1.7 1.2-2.5 1.2-2.5s2.5 3.3 3 5.6m62.8-.8s.8-2.3 2-3.4c0 0 2.2 2.6 2.2 3.4l1.7-1.1 1.7 1.6 2-1.3 1.9 1.6 3.4-1.4 1.4 1.4 5.3-.6 2 .9 1.8-2.4 1.8 1.8 2.8-2.8s1.4 1.2 1.7 2c0 0 2.3-1.1 2.8-2 0 0 2.2-.8 2.5.5 0 0 1.3-1 1.2-2.1 0-1.2 1.6-.4 2.1 1.1 0 0 .6-2.3 2.3-2.5a5 5 0 00.8 3.9s2.5-2 3.7-2.2c0 0 .5 2.8-.3 5.3 0 0 2.6-4.3 3.1-2.8.2.8.8 3.6.2 5.6l2.3-1.5.8 2.8 2.5-.5m-117 8.5s1.8-3.1 3-4c0 0 2.5 2 3.3 4.5 0 0 .3-1.6 1.2-3 0 0 3.1 1.4 3.6 3.3 0 0 1.2-2 2-2.5.8-.6 1.7 2.2 1.7 3.9 0 0 2-2 3.1-2.2 0 0 2.2 1 2.8 4.7 0 0 2.1-2 2.8-1.7 0 0 2.5 1.7 1.9 4-.3 1.2 2.5-1.5 6-2.3l3 2.3 3.6-5s2.3.8 2.3 2.2c0 0 1-4 1.9-4.4.8-.5 2 1.3 2 2.4 0 0 .3-3 2-3.6 0 0 1.6 1.1 1.6 2.3 0 0 1.8-3.5 3.1-4.3"/>
+  <g fill="#fff">
+    <path d="M255.4 386a75 75 0 0045-13.4c17.7-12 21.5-12.4 24.4-12.2 3.3.3 8.2 1.5 8.4 4.4.4 4.4-7 6.4-11.1 6.4-4.3 0-15.4-2.8-15.4-2.8l-3 2c2 1 24.9 8.5 29.2 1.4 4.5-7.3 9-19.1 9-19.1s-5-9-16.1-9c-11.3 0-22.3 7.1-29.5 12.4-7.3 5.3-16.5 12.6-40.9 12.6s-33.6-7.3-41-12.6c-7.2-5.3-18.2-12.4-29.3-12.4-11.2 0-16.3 9-16.3 9s4.5 11.8 9 19c4.4 7.2 27.2-.4 29.2-1.3l-2.8-2s-11.3 2.8-15.4 2.8c-4.3 0-11.6-2-11.3-6.4.2-3 5.1-4 8.4-4.4 3-.2 6.7.2 24.5 12.2a76.8 76.8 0 0045 13.4"/>
+    <path d="M217.7 358.4s0-2-.3-4.9c-.4-3.7-2.6-4.7-4.4-4.2-1.1.5-3.4 3.3-3.4 3.3a33.1 33.1 0 00-3.2-1.9 21 21 0 016.7-3.9c1 0 15.5 5.9 20 9.8 1.2 1 2 7.5 1.4 9.6a49.5 49.5 0 01-16.8-7.7m-6.9 14.5s-3 3.1-3.2 8.9c-.1 6.7 4.8 7 8 7 3.9-.2 7-2.4 6.9-9.5 0 0-6.4-2.7-11.7-6.4m82.2-14.6l.5-4.9c.4-3.7 2.5-4.7 4.2-4.2 1.2.5 3.5 3.3 3.5 3.3a33 33 0 013.2-1.9 20 20 0 00-6.7-3.9c-1.1 0-15.5 5.9-20 9.8-1.1 1-2 7.5-1.4 9.6a48.5 48.5 0 0016.7-7.7m7 14.5s3 3.1 3.1 8.9c.2 6.7-4.8 7-8 7-3.8-.2-6.9-2.4-6.9-9.5 0 0 6.4-2.7 11.7-6.4"/>
+  </g>
+  <path fill="#69f" d="M204 368.4s-11 2.8-15.2 2.8c-4.3 0-11.6-2-11.3-6.4.2-3 5.1-4 8.4-4.4 2.5-.2 5.8.1 18.2 8m102.6 0s11.1 2.8 15.4 2.8c4.2 0 11.5-2 11.1-6.4-.1-3-5-4-8.4-4.4-2.5-.2-5.7.1-18.1 8m-89-9.9l-3.3-2.5-4.8-3.3s2.3-3 3.4-3.2c1.8-.7 4 .3 4.4 4 .3 3 .3 5 .3 5m-7.6 29.4c2 1.2 4.2 1 5.5 1 3.9-.2 7-2.4 6.9-9.5 0 0 4.8 2.4 12.6 4.2 0 0 1.3 1.6 1.5 4.7.3 2.6-1.5 5.4-3.6 5.2l-17.6-3.1c-3.8-.7-5.3-2.5-5.3-2.5m83-29.4l3.4-2.5 4.7-3.3s-2.3-3-3.5-3.2c-1.7-.7-3.8.2-4.2 4a95.5 95.5 0 00-.5 5m7.6 29.4c-2 1.1-4.1 1-5.5 1-3.8-.2-6.9-2.4-6.9-9.5 0 0-4.8 2.4-12.5 4.2 0 0-1.3 1.6-1.5 4.7-.2 2.6 1.5 5.4 3.5 5.2l17.6-3.1c3.9-.7 5.3-2.5 5.3-2.5"/>
+  <g fill="none" stroke="#000" stroke-width=".7">
+    <path d="M255.4 386a75 75 0 0045-13.4c17.7-12 21.5-12.4 24.4-12.2 3.3.3 8.2 1.5 8.4 4.4.4 4.4-7 6.4-11.1 6.4-4.3 0-15.4-2.8-15.4-2.8l-3 2c2 1 24.9 8.6 29.2 1.4 4.5-7.3 9-19.1 9-19.1s-5-9-16.2-9-22.1 7.1-29.4 12.4c-7.3 5.3-16.5 12.6-40.9 12.6s-33.6-7.3-41-12.6c-7.2-5.3-18.2-12.4-29.3-12.4-11.3 0-16.3 9-16.3 9s4.5 11.8 9 19c4.4 7.2 27.2-.4 29.2-1.3l-2.8-2s-11.3 2.8-15.4 2.8c-4.3 0-11.6-2-11.3-6.4.2-3 5.1-4 8.4-4.4 3-.2 6.7.2 24.5 12.2a76.7 76.7 0 0045 13.4z"/>
+    <path d="M204 368.4s-11 2.8-15.2 2.8c-4.3 0-11.6-2-11.3-6.4.2-3 5.1-4.1 8.4-4.4 2.5-.2 5.8.1 18.2 8zm102.7 0s11.1 2.8 15.4 2.8c4.2 0 11.5-2 11.1-6.4-.2-3-5-4.1-8.4-4.4-2.5-.2-5.7.1-18.1 8zm-89-9.9a100 100 0 01-3.3-2.5l-4.8-3.3s2.3-3 3.4-3.2c1.8-.7 4 .3 4.4 4 .3 3 .3 5 .3 5z"/>
+    <path d="M217.7 358.4s0-2-.3-4.9c-.4-3.7-2.6-4.7-4.4-4.2-1.1.5-3.4 3.3-3.4 3.3a34 34 0 00-3.2-1.9 21 21 0 016.7-3.9c1 0 15.5 5.9 20 9.8 1.2 1 2 7.5 1.4 9.6a49.7 49.7 0 01-16.8-7.7m-6.9 14.5s-3 3.1-3.2 8.9c-.1 6.7 4.8 7 8 7 3.9-.2 7-2.4 6.9-9.5 0 0-6.3-2.7-11.7-6.4z"/>
+    <path d="M213.4 374.6s-2.5 2.6-2.9 6.8c-.2 3.4 2 5.2 4.8 5 4-.2 5.5-5.6 3.7-8.6l-5.6-3.2"/>
+    <path d="M210.1 387.9c2 1.1 4.2 1 5.5 1 3.9-.2 7-2.4 6.9-9.5 0 0 4.8 2.4 12.6 4.2 0 0 1.3 1.6 1.5 4.7.3 2.6-1.5 5.4-3.6 5.2l-17.6-3.1c-3.8-.7-5.3-2.5-5.3-2.5zm83-29.4l3.4-2.5 4.7-3.3s-2.3-3-3.5-3.2c-1.7-.7-3.8.2-4.2 4l-.5 5z"/>
+    <path d="M293 358.4l.5-4.9c.4-3.7 2.5-4.7 4.2-4.2 1.2.5 3.5 3.3 3.5 3.3a34 34 0 013.2-1.9 20 20 0 00-6.7-3.9c-1.1 0-15.5 5.9-20 9.8-1.1 1-2 7.5-1.4 9.6a48.7 48.7 0 0016.7-7.7m7 14.5s3.1 3.1 3.2 8.9c.2 6.7-4.8 7-8 7-3.9-.2-6.9-2.4-6.9-9.5 0 0 6.4-2.7 11.7-6.4z"/>
+    <path d="M297.3 374.6s2.5 2.6 3 6.8c.2 3.4-2 5.2-4.9 5-4-.2-5.4-5.6-3.6-8.6l5.5-3.2"/>
+    <path d="M300.6 387.9c-2 1.1-4.1 1-5.5 1-3.8-.2-6.9-2.4-6.9-9.5 0 0-4.8 2.4-12.5 4.2 0 0-1.3 1.6-1.5 4.7-.2 2.6 1.5 5.4 3.5 5.2l17.6-3.1c3.9-.7 5.3-2.5 5.3-2.5z"/>
+  </g>
+  <path fill="none" stroke="#fff" stroke-width=".7" d="M234.3 385.5s3.4 2.5-.8 5.6m-9.5-7.3l10.5 4.6m-8.8-2.2l7.7 3.4m-5-5.3l5.9 2.6m42.3-1.4s-3.6 2.5.6 5.6m9.6-7.3l-10.5 4.6m8.8-2.2l-7.7 3.4m5-5.3l-5.8 2.6"/>
+  <path stroke="#000" stroke-width=".7" d="M193 353.4l.4.8v.9a2.5 2.5 0 01-1.3 1.7c-.7.4-1.4.5-2.3.4a4 4 0 01-1.2-.4 4.6 4.6 0 01-.9-.7l-.4.4h-.5l.5-3h.5l.2 1.1c0 .3.2.6.4 1a2.3 2.3 0 001.6 1l.8.1a1.3 1.3 0 00.6-.2 1.4 1.4 0 00.4-.4l.2-.7a1.8 1.8 0 00-.1-1 2 2 0 00-.8-.9l-.8-.5-.9-.5a3 3 0 01-1-1.1 2 2 0 01-.1-1.5 2.2 2.2 0 01.3-.9 2.4 2.4 0 01.8-.7c.3-.1.6-.3 1-.3h1a3.1 3.1 0 011 .4l.9.6.3-.4.5.1-.5 3-.5-.2-.1-1a3.8 3.8 0 00-.3-.9 2 2 0 00-.6-.7 2 2 0 00-.9-.4 1.5 1.5 0 00-1 .2c-.4.2-.6.5-.7.8l.1 1 .7.8.8.6a15.3 15.3 0 011.5 1l.5.6m12.8 1.7a3.9 3.9 0 00-.5-.1 1.5 1.5 0 00-.6-.1l-.6.3a6 6 0 00-.6 1l-1.9 3.4a2.6 2.6 0 01-2 1.3 3.5 3.5 0 01-1.2 0 4.4 4.4 0 01-1-.4 4.6 4.6 0 01-1.2-.9c-.3-.3-.5-.7-.6-1a2.4 2.4 0 01-.2-1 2.2 2.2 0 01.3-1l2.5-4.6a1 1 0 00.1-.4v-.4a1.6 1.6 0 00-.4-.3l-.3-.3.2-.3 3.3 1.8-.2.4a3.3 3.3 0 00-.4-.2 2 2 0 00-.4-.1h-.4a1 1 0 00-.2.4l-2.4 4.3-.3.7a2 2 0 000 .8c0 .3 0 .5.2.8.2.3.5.5 1 .8l1 .3a2 2 0 001-.1 2.1 2.1 0 00.7-.4l.5-.6 1.7-3.3.5-1v-.7a1.6 1.6 0 00-.4-.5 3.8 3.8 0 00-.5-.4l.2-.3 3.3 1.8-.2.4m4.6 7.9a2 2 0 01-.1 2 2 2 0 01-.8.8 2.3 2.3 0 01-1 .3 3.1 3.1 0 01-1-.1 4.3 4.3 0 01-1-.5l-3.8-2.1.2-.4a5.4 5.4 0 00.9.3.6.6 0 00.3 0 .8.8 0 00.3-.3l3.2-5.6a1 1 0 00.1-.4.6.6 0 00-.1-.3 1.8 1.8 0 00-.3-.4l-.3-.2.2-.4 3.6 2 .8.6.6.7a1.7 1.7 0 010 1.8 2 2 0 01-1.4 1 2.6 2.6 0 01-.8 0 3.5 3.5 0 01-.8-.2l.6.6.6.8zm-.7-2l.6-.3.4-.6c.3-.4.4-.8.3-1.2-.1-.4-.4-.7-1-1l-.4-.3a20.4 20.4 0 00-.4-.2l-1.8 3 .7.4.9.3h.7zm-.7 3c.3-.5.4-1 .2-1.4-.1-.5-.5-.9-1-1.2l-.7-.4-.3-.2-1.6 2.8a.7.7 0 000 .7c.1.2.3.4.7.6.5.3 1 .4 1.5.2.5-.1.9-.5 1.2-1.1zm20.2 4.6a3.7 3.7 0 00-.5-.1 1.5 1.5 0 00-.6 0c-.2 0-.3.1-.5.4a6.3 6.3 0 00-.5 1l-1.5 3.5a2 2 0 01-.8 1 2.7 2.7 0 01-1.1.6 3.4 3.4 0 01-1.2 0 4.4 4.4 0 01-1-.3c-.6-.2-1-.4-1.3-.7-.4-.3-.6-.6-.8-1a2.4 2.4 0 01-.2-1 2.2 2.2 0 01.1-1l2.1-4.8a1 1 0 000-.4v-.4a1.7 1.7 0 00-.4-.3l-.3-.2.1-.4 3.5 1.5-.2.4a3.7 3.7 0 00-.4-.1 2.5 2.5 0 00-.4 0c-.2-.1-.3 0-.4 0a1 1 0 00-.2.3l-2 4.6-.2.7a2 2 0 000 .8c0 .3.2.6.4.8l1 .7 1.2.2a2 2 0 001.5-.7l.4-.7 1.5-3.3.3-1.1v-.7a1.6 1.6 0 00-.5-.4 4 4 0 00-.5-.4l.2-.4 3.4 1.5-.2.4m9.8 11.5l-3.8-1.1v-.4h1.1a.9.9 0 00.4-.1.8.8 0 00.2-.3l1.8-6.3a1.5 1.5 0 00-.1 0l-5.1 6.5-.3-.2-.7-8.2a432.2 432.2 0 00-1.8 6.2c0 .3 0 .5.2.7a3.5 3.5 0 001 .7l-.1.4-3.6-1 .2-.4h1.1a1 1 0 00.4-.5l.5-1.1 1.2-4.4.1-.7a1 1 0 00-.1-.4 1.3 1.3 0 00-.4-.4 2.2 2.2 0 00-.6-.3l.2-.4 3 .9c.1 2.4.4 4.7.6 7.1l3.7-4.7.3-.6a3 3 0 00.2-.4l2.9.8-.1.4a4.1 4.1 0 00-.5 0 2.6 2.6 0 00-.4 0 .5.5 0 00-.4.1 1 1 0 00-.1.4l-1.8 6.2a.8.8 0 000 .3l.1.4a3.8 3.8 0 00.8.4v.4m9.2-2.8a2 2 0 01.7 1.8 2.1 2.1 0 01-.4 1c-.2.3-.5.6-.8.7a3.2 3.2 0 01-1 .3 4.3 4.3 0 01-1.1 0l-4.3-.5v-.4a4.7 4.7 0 001 0 .6.6 0 00.3-.3.8.8 0 000-.3l.9-6.4v-.4a.6.6 0 00-.3-.3 1.8 1.8 0 00-.4-.2l-.4-.1v-.5l4.2.6c.4 0 .7 0 1 .2l.7.4a1.8 1.8 0 01.6.7 2 2 0 01-.2 1.7 1.9 1.9 0 01-.5.6 3.7 3.7 0 01-1.6.5 4.8 4.8 0 011.6.9zm-1.3-1.6l.4-.5.2-.7c0-.5 0-1-.3-1.2-.2-.4-.7-.5-1.2-.6a29 29 0 00-.5 0l-.6-.1-.4 3.4h1.8a1.4 1.4 0 00.6-.3zm.5 3c0-.5 0-1-.4-1.4-.3-.4-.8-.6-1.5-.7h-.6l-.5-.1-.4 3.1a.7.7 0 00.3.7l.9.3c.6 0 1.1 0 1.5-.4.4-.3.6-.8.7-1.5zm12.2 2.8h-2.5a45 45 0 00-1.4-2.2l-1.4-1.9h-1v2.9l.1.4s.1.2.3.2a7 7 0 00.9.2v.4H251v-.4l.4-.1h.4a.6.6 0 00.3-.3v-7.3s-.1-.2-.3-.2a2.4 2.4 0 00-.4-.1l-.4-.1v-.4h5.2l1 .5a1.8 1.8 0 01.8 1.6c0 .3 0 .6-.2.9a1.9 1.9 0 01-.4.7 3 3 0 01-.7.5 5.6 5.6 0 01-1 .3c.5.6 1 1 1.2 1.5l1 1.4a2.7 2.7 0 001 .9l.5.1h.4v.5zm-3.4-6.7c0-.5-.1-1-.4-1.3-.4-.3-.8-.4-1.4-.4h-1v3.8h.8c.6 0 1-.2 1.4-.5.4-.4.6-1 .6-1.6zm13.8 6l-3.7.3v-.4l.7-.2.4-.3v-.1a.5.5 0 00-.1-.2l-1-1.9-3.1.2-.2.8-.2.6v.8c0 .1 0 .3.4.3l.9.1v.5l-3.4.2v-.4a2.1 2.1 0 00.4-.1 1.4 1.4 0 00.4-.2l.3-.4a2 2 0 00.3-.5l1.2-4 1.2-3.7h.5l3.6 7.4.2.4.4.2.4.1h.4v.5zm-3.9-3.3l-1.6-3.4-1.1 3.6 2.7-.2zm16.8-7h-.5c-.2-.3-.4-.6-.8-.8-.4-.3-.7-.5-1-.4h-.4l-.6.2-1.5.4 1 3.5 1-.3.6-.3.4-.4a1.3 1.3 0 00.1-.5v-.6l.4-.1 1 3.4h-.5a3 3 0 00-.3-.5l-.4-.4a1 1 0 00-.5-.2 2.4 2.4 0 00-.7 0l-1 .4.8 3a.8.8 0 00.2.3l.3.1h.9l.2.4-3.8 1-.1-.4a9.6 9.6 0 00.8-.4.5.5 0 00.2-.3.9.9 0 000-.4 5108 5108 0 01-1.7-6.2 1.2 1.2 0 00-.1-.3l-.4-.2a2.6 2.6 0 00-.5 0 2.5 2.5 0 00-.5 0v-.4l6.8-1.9.6 2.2m10-.8l1 2.5-6.3 3.1a75.8 75.8 0 00-.2-.4 9.6 9.6 0 00.7-.5.5.5 0 00.1-.3.8.8 0 000-.4l-2.8-5.8a1 1 0 00-.3-.3.5.5 0 00-.4-.1 1.7 1.7 0 00-.4 0 2 2 0 00-.4.2l-.2-.4 3.4-1.7.2.4-.4.2-.3.3a.4.4 0 00-.1.4.8.8 0 000 .4l2.7 5.4c0 .2.2.4.3.5 0 .2.2.2.3.3l.5-.1a6 6 0 00.7-.3l.5-.2.4-.3a3 3 0 00.3-.3.6.6 0 00.2-.2 6.7 6.7 0 00.2-2.2l.4-.2m4.7-8.8a4.7 4.7 0 012.9 2.3 5.3 5.3 0 01.7 1.8l-.1 1.8a4.2 4.2 0 01-.7 1.5 4 4 0 01-1.3 1.1 4.2 4.2 0 01-3.4.5 4.3 4.3 0 01-1.5-.8 5.4 5.4 0 01-1.2-1.5 5.3 5.3 0 01-.7-1.8 4.6 4.6 0 010-1.8 4.2 4.2 0 01.8-1.5c.3-.5.7-.8 1.2-1.1a4.3 4.3 0 011.7-.6 4.1 4.1 0 011.6 0zm2.4 6a4.2 4.2 0 00-.2-1.5 7.4 7.4 0 00-.7-1.4 7.7 7.7 0 00-1-1.4 4.2 4.2 0 00-1.1-.8 2.5 2.5 0 00-1.2-.3l-1.2.3-1 1-.2 1.2c0 .5 0 1 .2 1.4a7.6 7.6 0 001.7 2.8l1 .8a2.4 2.4 0 002.5 0 2.5 2.5 0 001-1 2.5 2.5 0 00.2-1.2zm11.3-6.2l-2 1.4-2.5-.9-2.2-.7-.8.5 1.7 2.4.3.2s.2.1.4 0a1.9 1.9 0 00.3-.1l.4-.2.3.3-3.1 2.2-.3-.3.4-.3a1.7 1.7 0 00.2-.3.5.5 0 00.1-.4.8.8 0 00-.1-.4l-3.8-5.2a1.1 1.1 0 00-.3-.3h-.3a3.3 3.3 0 00-.8.3l-.3-.4 3.4-2.4a5 5 0 011-.5 2.9 2.9 0 011-.2 1.9 1.9 0 011.6.8 2.3 2.3 0 01.4.8v.9a2.7 2.7 0 01-.3.8 5.2 5.2 0 01-.5.8l1.7.5 1.8.6a2.7 2.7 0 001.2.1 2.8 2.8 0 00.8-.3l.3.3zm-6.6-3.5a1.8 1.8 0 00-1.1-.7c-.5-.1-1 0-1.4.3l-1 .7 2.3 3.1.7-.5a2 2 0 00.9-1.3c0-.5 0-1-.4-1.6zm14-2.1l.8 2.5-7 2.6a29.4 29.4 0 01-.2-.4 4.2 4.2 0 00.8-.4.6.6 0 00.2-.4.8.8 0 000-.3l-2.3-6a1 1 0 00-.2-.4l-.4-.1h-.4a2.4 2.4 0 00-.5 0 15 15 0 01-.2-.3l6.6-2.5.8 2-.5.2a2.9 2.9 0 00-.9-.8c-.4-.2-.7-.3-1-.2a4.6 4.6 0 00-.4.1l-.6.2-1.3.5 1.2 3.3 1-.3a2 2 0 00.6-.4 1 1 0 00.3-.4 1.6 1.6 0 000-.5 3 3 0 000-.6l.4-.2 1.2 3.3-.4.2a3.4 3.4 0 00-.4-.6c-.1-.2-.2-.3-.4-.3a1 1 0 00-.5-.2c-.2 0-.4 0-.6.2l-1 .3 1 2.5.2.6.3.3h.5l.8-.3.5-.2a3.7 3.7 0 001-.5l.3-.3.2-1 .1-1 .4-.2m7.6-6.2c.5.4.9.8 1.1 1.3.3.6.5 1.2.6 2a5.2 5.2 0 010 1.9 4.4 4.4 0 01-.8 1.6 4.1 4.1 0 01-1.3 1 4.2 4.2 0 01-1.6.6 4.1 4.1 0 01-3.2-.9c-.5-.3-.8-.8-1.1-1.3a5.2 5.2 0 01-.6-1.8 5 5 0 01.8-3.6 4.2 4.2 0 012.9-1.7 4.3 4.3 0 011.7.1 4.2 4.2 0 011.5.8zm-.1 6.4a4.2 4.2 0 00.4-1.4l-.1-1.6a7.5 7.5 0 00-.4-1.6 4 4 0 00-.7-1.3 2.6 2.6 0 00-1-.7c-.4-.1-.8-.2-1.2-.1-.5 0-1 .2-1.3.5-.3.3-.6.6-.7 1a4.4 4.4 0 00-.3 1.4 7.4 7.4 0 000 1.6l.4 1.6a4 4 0 00.7 1.2c.3.3.6.6 1 .7.3.2.8.2 1.3.2a2.5 2.5 0 001.1-.5 2.5 2.5 0 00.8-1z"/>
+  <path fill="none" stroke="#000" d="M305.1 218.8v56.6c0 11.2-1.5 56-49.7 73.4-48.2-17.4-49.8-62.2-49.8-73.4v-56.6h99.5"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ca.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ca.svg
new file mode 100644
index 0000000..6882f6d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ca.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ca" viewBox="0 0 512 512">
+  <path fill="#fff" d="M81.3 3h362.3v512H81.3z" transform="translate(-.2 -3)"/>
+  <path fill="#d52b1e" d="M-99.8 3H81.3v512H-99.8zm543.4 0h181.1v512H443.6zM135.5 250.4l-14 4.8 65.4 57.5c5 14.8-1.7 19.1-6 26.9l71-9-1.8 71.5 14.8-.5-3.3-70.9 71.2 8.4c-4.4-9.3-8.3-14.2-4.3-29l65.4-54.5-11.4-4.1c-9.4-7.3 4-34.8 6-52.2 0 0-38.1 13.1-40.6 6.2L338 187l-34.6 38c-3.8 1-5.4-.6-6.3-3.8l16-79.7-25.4 14.3c-2.1.9-4.2 0-5.6-2.4l-24.5-49-25.2 50.9c-1.9 1.8-3.8 2-5.4.8l-24.2-13.6 14.5 79.2c-1.1 3-3.9 4-7.1 2.3l-33.3-37.8c-4.3 7-7.3 18.4-13 21-5.7 2.3-25-4.9-37.9-7.7 4.4 15.9 18.2 42.3 9.5 51z" transform="translate(-.2 -3)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cc.svg
new file mode 100644
index 0000000..dd6e200
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cc.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cc" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" d="M0-360l69.4 215.8 212-80.3L156-35.6 351 80.1 125 99.8l31.1 224.6L0 160l-156.2 164.3 31.1-224.5L-351 80l195-115.7-125.5-188.9 212 80.3z"/>
+    <path id="b" d="M0-210L54.9-75.5l144.8 10.6-111 93.8 34.7 141L0 93.3-123.4 170l34.6-141-111-93.8 145-10.6z"/>
+  </defs>
+  <path fill="green" d="M0 0h512v512H0z"/>
+  <circle cx="268.2" cy="250.4" r="61.2" fill="#ffe000"/>
+  <circle cx="287.3" cy="250.4" r="50.4" fill="green"/>
+  <circle cx="75.2" cy="189.2" r="64.2" fill="#ffe000"/>
+  <path fill="#802000" stroke="#7b3100" stroke-width="1.4" d="M70.7 237.6h16s.8-1.5-.1-2.2c-.9-.8-4.3-1-3.4-3.5 2-5.4 2.2-3.7 3.4-16.4 1.2-12.7 1.7-32.6 1.7-32.6H86s.5 6.2-.9 14.3c-1.3 8-1.7 8.7-3.2 15-1.4 6.1-1.7 6.6-3 10.3-1.3 3.6-1.5 3.7-3.5 7l-2.5 4.2c-.6 1-1.3.7-1.7 1.4-.4.8-.5 2.5-.5 2.5z"/>
+  <path fill="green" d="M83 142.5c0 2.5-.2 5.7-1.2 8.4-1 3-2.2 6-2.1 9-1.7.7-3.4-3.5-5-1 1.2 3.3 4 6 5.9 9 .3 1 3 3.5 1.5 4-4-1.3-5-6.4-7.5-9.5a17.5 17.5 0 00-14.2-9c-2.3 0-9.6-.6-7.7 3.2 2.8 2 6.3 3.2 9 5.3 2.1.2 5.8 3.6 5.6 5-3.6-1.5-5.3-3.3-9.2-4.8-5.3-2-12.6-.9-15.5 4.4-.6 1.4-1.4 5.3.3 5.7 2-3.1 5-6.6 9.2-5.7 3.3.3-3.8 6.3-1 5 .8-.3 2.8-1.6 4.1-1.7 1.4-.2 2.2.8 3.2 1 2.1.3 2.7 1.1 2.5 1.6-.2.6-1 .1-3 .8-1 .3-1.6 1.3-2.9 1.7-1.2.4-3.8.4-4.7 0-3.4-1.4-8.9-1.1-10 3 0 2-1.6-.1-2.3.7-.6 2-.8 4-3.8 3.9-1.8 1.9-3.6 3.9-6 5.2 1.4 3.1 6.8-3.1 6.5-.5-2.3 3.2 1.2 3.9 2.8 1.4 2.6-2.8 5.9-6.1 9.8-3.3 1.9 1.7 3-1 4.3-.8.9 2.2 2 0 3-.5 1.5-.2 1 2 3 .6 3.7-2.5 8.3-.4 12-2.8 3.8-1.8.5 1.4-.6 2.7-1.7 3.3-.2 7.7-4 9.7-1.4 4 1.8 9.2-1.5 12.1-.5 1.9 4.3 1.7 5.6 2.4 2.4.1 0-5.3 2.2-6 3.1 1.9 3-3.5 2.4-5.2.3-3.7.5-7.8 2.3-11.3 2-4.1 3.9 1.7 1.6 3.4-1.2 3.8-3 8.7-.2 12.2.9.2 1.5 2.2 2.6 2.8 1 .7 2.5-.1 2.8-2 1.4-5.4.7-11.4 2.7-16.7 1.3-1.7 3.3-.3 4.1 1.2 2.8 3.2 4.7 7.2 8 9.9a14 14 0 017.2 6.7c0 2.4 6.8 2.7 4.8 0-2-2.5-.7-5.2 1.3-6.9 1 .3.7-1.6 0-.9-1.4-.3-1.5-2.8.3-1.6 3.2 1-.2-2.3-1.3-2.4-2.7-1.6-5.7-3.5-7-6.4 3.4 0 7 2 10.5.8 2.9-1.5 5.7.1 6.7 2.6 2.2-.4 1.3-2.5 0-3.3 1.6-.6 2.7-2 .8-3.2-1-1.4 1.4-3.6-1.6-3.5.1-2.3-.8-4.3-3.2-5.1-2.5-2.1-9.7 3-9.5-1.7-.7-2.5 3-.3 4-1.6 1-2.7-5-2.4-3-4.5 1.2-.8 7.4-2 2.6-3a7.6 7.6 0 01-6.4-1c-1.7 3-6.7-1.6-5.8 3.6-.7 2-5 7-6.3 3.1 1-3 6.3-4 4.6-8-.2-2.6-2.3.4-3.3.2-.5-1.6 1.5-3.5 3-3.9 2.7 2.2 2.8-2.7 5.5-2.3 2-.4-.7-1.2-1.2-1.6.5-1.4 3.5-2.2.6-3.4-2.6-2-4.5 2-6.6 2.1-2-2.3 1.8-3.4 2.9-4.6 0-1-2.3-.3-1.6-1 .6-1.2 4.8-1.3 2.8-2.9-2.9-1-6.6-.7-9.4.5-1.8.6-2.3 4.6-3.8 4.4-.8-1.7.2-5.2-2.2-5.8zm13.7 38.9c2.3-.4 0 3.3-1 3.3.1-1.3-3.2-1.2-1.1-2.4a6.7 6.7 0 012.1-1z"/>
+  <g fill="#ffe000" transform="translate(-25.8 103.5) scale(.05833)">
+    <use width="100%" height="100%" x="7560" y="4200" xlink:href="#a"/>
+    <use width="100%" height="100%" x="6300" y="2205" xlink:href="#a"/>
+    <use width="100%" height="100%" x="7560" y="840" xlink:href="#a"/>
+    <use width="100%" height="100%" x="8680" y="1869" xlink:href="#a"/>
+    <use width="100%" height="100%" x="8064" y="2730" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cd.svg
new file mode 100644
index 0000000..5da2a96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cd.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cd" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="#fff" d="M0-88h600v600H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="matrix(.853 0 0 .853 0 75.1)">
+    <path fill="#007fff" d="M0-88h800v600H0z"/>
+    <path fill="#f7d618" d="M36 32h84l26-84 26 84h84l-68 52 26 84-68-52-68 52 26-84-68-52zM750-88L0 362v150h50L800 62V-88h-50"/>
+    <path fill="#ce1021" d="M800-88L0 392v120L800 32V-88"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cf.svg
new file mode 100644
index 0000000..e924621
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cf.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cf" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#00f" d="M-52-.5h768v127H-52z"/>
+    <path fill="#ff0" d="M-52 383.5h768V512H-52z"/>
+    <path fill="#009a00" d="M-52 255h768v128.5H-52z"/>
+    <path fill="#fff" d="M-52 126.5h768V255H-52z"/>
+    <path fill="red" d="M268 0h128v512H268z"/>
+    <path fill="#ff0" d="M109.5 112.3L75.9 89.1l-33.4 23.4 11.6-39.2-32.5-24.6 40.7-1L75.7 8.8l13.5 38.6 40.8.8L97.6 73"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cg.svg
new file mode 100644
index 0000000..a52ba7e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cg.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cg" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M115.7 0h496.1v496h-496z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-119.5) scale(1.032)">
+    <path fill="#ff0" d="M0 0h744v496H0z"/>
+    <path fill="#00ca00" d="M0 0v496L496 0H0z"/>
+    <path fill="red" d="M248 496h496V0L248 496z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ch.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ch.svg
new file mode 100644
index 0000000..773cdc8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ch.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ch" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#d52b1e" d="M0 0h512v512H0z"/>
+    <g fill="#fff">
+      <path d="M96 208h320v96H96z"/>
+      <path d="M208 96h96v320h-96z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ci.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ci.svg
new file mode 100644
index 0000000..bd1e3f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ci.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ci" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#00cd00" d="M341.5 0H512v512H341.5z"/>
+    <path fill="#ff9a00" d="M0 0h170.3v512H0z"/>
+    <path fill="#fff" d="M170.3 0h171.2v512H170.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ck.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ck.svg
new file mode 100644
index 0000000..f2df0db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ck.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ck" viewBox="0 0 512 512">
+  <path id="path6059" fill="#006" d="M0 0h512v512H0z"/>
+  <path id="path6069" fill="#fff" fill-rule="evenodd" d="M344.8 250.1l5.7-18.3-15.4-11.7 19.4-.2 6.5-18.1 6.3 18.1 19.4.6-15.6 11.4 5.6 18.4-15.9-11m29.7 14.4l11.4-15.3-10.6-16.3 18.4 6.4 12-14.8V233l18 7.1-18.4 5.5-.9 19.2-11.3-15.8m-108 16.5l-.8-19.2-18.4-5.7 18.2-7v-19.1l12 14.9 18.4-6.2-10.8 16.1 11.4 15.4-18.6-5m-43.6 45l-8-17.4-19.2 2 14-13.5-7.2-17.7 16.7 9 14.6-13-3.7 19.1 16.3 9.7-19 2.8m-19.2 61l-14.6-12.1-16.5 10 7-18.3-14-12.8 18.9.9 7.7-18 4.7 18.8 18.9 1.7-16 10.8m3.5 66.3l-18.2-5.3-11 16-.8-19.7-18-6 17.7-6.9v-19.7l11.7 15.5 18-6.1-10.5 16.3m32.4 55.9l-18.7 2.6-3.8 19.1L244 428l-18.8 1.8 13.5-13.5-7.9-18 16.9 9.3 14-13-3 19.3m49.4 41.7l-16.7 9 3 19.3-14.1-13.6-17 8.3 8-17.4-13.5-14.1 19 2.8 8.7-17 3.7 19m59.1 10l-9 16.8 12.8 14.5-19.1-3.6-9.8 16.4-2.7-19-18.9-4.4 17.4-8.2-1.9-19 13.5 13.9m63-14.4l-.7 19.2 18 7-18.6 5.6-1.3 19.1-11-15.7-18.8 4.9 11.9-15.4-10.3-16.1 18.3 6.2m59.8-223.2l13.1 13.9 17.5-8.1-9 17.4L475 284l-18.7-3-9.8 17-2.5-19.3-18.6-4 17.2-8.7m37.6 23.1l6 18.3 19.1.3-15.5 11.7L495 338l-15.6-11-16 11.1 6-18.5-15.2-11.6 19.3-.5m21.4 36.5l-2.2 19 17.3 8.6-19 4-3 19-9.5-16.7-19.1 3.2 13-14.3-8.8-17 17.7 7.9m3.2 43.7l-8.5 17.1 13.3 14-19.1-2.8-9.3 16.7-3.3-18.9-19-3.7 17-8.8-2.5-19 14 13.5m-10.9 43l-16.1 10 4.1 19-14.8-12.6-16.5 9.4 7-18-14.4-13.2 19.1 1.6 7.7-17.6 4.9 19"/>
+  <g id="g6703" transform="matrix(.5 0 0 .5 0 -.5)">
+    <path id="path6681" fill="#006" d="M0 0h512v512H0z"/>
+    <path id="path6683" fill="#fff" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+    <path id="path6685" fill="#c8102e" d="M184 324l11 34L42 512H0v-3zm124-12l54 8 150 147v45zM512 0L320 196l-4-44L466 0zM0 1l193 189-59-8L0 49z"/>
+    <path id="path6687" fill="#fff" d="M176 0v512h160V0zM0 176v160h512V176z"/>
+    <path id="path6689" fill="#c8102e" d="M0 208v96h512v-96zM208 0v512h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cl.svg
new file mode 100644
index 0000000..b808896
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cl.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cl" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h708.7v708.7H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(.722)">
+    <path fill="#fff" d="M354.3 0H1063v354.3H354.3z"/>
+    <path fill="#0039a6" d="M0 0h354.3v354.3H0z"/>
+    <path fill="#fff" d="M232.3 265.3l-55-41.1-54.5 41.5 20.3-67.5-54.5-41.7 67.4-.6 21-67.3 21.3 67.2h67.5L211.4 198l20.8 67.4z"/>
+    <path fill="#d52b1e" d="M0 354.3h1063v354.4H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cm.svg
new file mode 100644
index 0000000..08b710b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cm.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cm" viewBox="0 0 512 512">
+  <path fill="#007a5e" d="M0 0h170.7v512H0z"/>
+  <path fill="#ce1126" d="M170.7 0h170.6v512H170.7z"/>
+  <path fill="#fcd116" d="M341.3 0H512v512H341.3z"/>
+  <g fill="#fcd116" transform="translate(256 256) scale(5.6889)">
+    <g id="b">
+      <path id="a" d="M0-8L-2.5-.4 1.3.9z"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cn.svg
new file mode 100644
index 0000000..7873c1b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cn.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cn" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" fill="#ffde00" d="M1-.3L-.7.8 0-1 .6.8-1-.3z"/>
+  </defs>
+  <path fill="#de2910" d="M0 0h512v512H0z"/>
+  <use width="30" height="20" transform="matrix(76.8 0 0 76.8 128 128)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-121 142.6 -47) scale(25.5827)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-98.1 198 -82) scale(25.6)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-74 272.4 -114) scale(25.6137)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(16 -19.968 19.968 16 256 230.4)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/co.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/co.svg
new file mode 100644
index 0000000..18d1c5f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/co.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-co" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffe800" d="M0 0h512v512H0z"/>
+    <path fill="#00148e" d="M0 256h512v256H0z"/>
+    <path fill="#da0010" d="M0 384h512v128H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cr.svg
new file mode 100644
index 0000000..a60a6dd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cr.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cr" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#0000b4" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M0 80.5h512v343.7H0z"/>
+    <path fill="#d90000" d="M0 168.2h512v168.2H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cs.svg
new file mode 100644
index 0000000..9557b6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cs.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cz" viewBox="0 0 512 512">
+  <path fill="#ffffff" d="M0 0h512v256H0z"/>
+  <path fill="#d7141a" d="M0 256h512v256H0z"/>
+  <path fill="#11457e" d="M300 256 0 56V456z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cu.svg
new file mode 100644
index 0000000..3968176
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cu.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cu" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#0050f0" d="M-32 0h768v512H-32z"/>
+    <path fill="#fff" d="M-32 102.4h768v102.4H-32zm0 204.8h768v102.4H-32z"/>
+    <path fill="#ed0000" d="M-32 0l440.7 255.7L-32 511V0z"/>
+    <path fill="#fff" d="M161.8 325.5L114.3 290l-47.2 35.8 17.6-58.1-47.2-36 58.3-.4 18.1-58 18.5 57.8 58.3.1-46.9 36.3 18 58z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cv.svg
new file mode 100644
index 0000000..a8311b2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cv.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cv" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M-123.4 233H723v206h-846.5z"/>
+    <path fill="#081873" d="M-122.8 0h846v256.6h-846zm.3 385.9h852.1V512h-852.1z"/>
+    <path fill="#de3929" d="M-122.5 302.6h846v39.6h-846z"/>
+    <path fill="#ffce08" d="M131 399.2l6.6 20.4H159l-17.4 12.7 6.6 20.5L131 440l-17.4 12.7 6.7-20.5-17.4-12.7h21.5M317 250.4l6.7 20.5H345l-17.4 12.6 6.6 20.5-17.4-12.7-17.4 12.7 6.6-20.5-17.4-12.6h21.6m-222 64.4l6.6 20.5h21.5L99 368.6l6.7 20.4-17.4-12.6L70.9 389l6.6-20.4-17.4-12.7h21.5M317 329.5l6.7 20.4H345l-17.4 12.7 6.6 20.4-17.4-12.6-17.4 12.7 6.6-20.5-17.4-12.7h21.6m-40.5-161.7l6.7 20.4H298l-17.4 12.7 6.6 20.5-17.4-12.7-17.4 12.7 6.7-20.5-17.5-12.7h21.6m-64.5-45.2l6.7 20.5h21.5l-17.4 12.6 6.6 20.5-17.4-12.6-17.4 12.6 6.7-20.5-17.4-12.6H192m-64.5 2.9l6.7 20.5h21.5l-17.4 12.6 6.7 20.5-17.5-12.7-17.4 12.7 6.7-20.5-17.4-12.6H121m-34.8 43.2l6.6 20.5h21.6l-17.5 12.6 6.7 20.5-17.4-12.7-17.4 12.7 6.6-20.5L58 271h21.5m119.2 149.4l6.7 20.5h21.5l-17.4 12.6 6.7 20.5-17.5-12.7-17.4 12.7 6.7-20.5-17.4-12.6H192m82.2-41.7l6.6 20.4h21.5L285 432.3l6.7 20.5-17.4-12.7-17.5 12.7 6.7-20.5-17.4-12.7h21.5"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cw.svg
new file mode 100644
index 0000000..d7ba218
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cw.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h9000v9000H0z"/>
+    </clipPath>
+    <path id="b" d="M0-1l.2.7H1L.3 0l.2.7L0 .4l-.6.4.2-.7-.5-.4h.7z"/>
+  </defs>
+  <g clip-path="url(#a)" transform="scale(.057)">
+    <path fill="#002b7f" d="M0 0h13500v9000H0z"/>
+    <path fill="#f9e814" d="M0 5625h13500v1125H0z"/>
+    <use width="13500" height="9000" x="2" y="2" fill="#fff" transform="scale(750)" xlink:href="#b"/>
+    <use width="13500" height="9000" x="3" y="3" fill="#fff" transform="scale(1000)" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cx.svg
new file mode 100644
index 0000000..ef82c45
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cx.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cx" viewBox="0 0 512 512">
+  <path fill="#0021ad" d="M0 0h512v512H0z"/>
+  <path fill="#1c8a42" d="M0 0h512v512z"/>
+  <circle cx="256" cy="256" r="61.7" fill="#ffc639"/>
+  <path fill="#1c8a42" d="M218.3 228.3c4.3 5.8 10.6 15.5 15.8 13 4 0 6 .3 6.6 3A39.5 39.5 0 00276 229s.8 0 .5-4.8c0-2.2 3-1.7 3-1 .4 1 .3 1.8.9 1.8 1.2-.4 2.9-3.1 4.3-4.8.3-.8.1-1.6.2-2.6.8-1.8 2.6-1.4 3-.4.3.6.3 1 .7 1.7 1.8 1.2 5.2 0 5.5 0 .3-1.5 1.3-1.3 1.3-1.3 1.2-.3.7-.2 1.6.2-.8 8.2 1.6 8.6 1.4 12.8 0 4.7-1.4 6-1.4 7.8.4 2.2 7.3 2.3 5 4.1-2.2 1.2 0 3.3-3.3 4.1-9.4 4.8-11.2 8.9-11.2 8.9s-2.3 4.4-2.6 4.4c-1.6 3-3.5 1.4-4.7 2.8-.5 1.8-1.1 5.9 0 8 .5 2.8 0 4.4-.8 7.3-.6 6-3 6.9-3.3 9-1 2.2.3 12.8-.8 12.8-7 .1-12.3-1.3-15-1.9 2.6-11.6 1.6-21.8 1.6-22.8-.7-8.3-12.4-6.3-14.2-7.4-1.5-.3-2.4-1.5-3-2-1.6-.2-2.2-.6-3.9-.8-.8.4-.3.9-2.2 1.4-4.6.6-6.7-4-6.7-4 .2-1.6-10.5.3-16.4-1-2.4 1.3-3.4 5.2-5.4 5.7 0 1.2-3.2-1-3.9-2.2 0-3.5 3.1-5 3.1-5 2.5-1.9 4-2.2 5.3-3.4.6-3 .3-5.3 1.6-7.6 1-1.7 2.7-1 3.8-1.7 1.2-.8 1.7-6 .6-7.3l-5-4.5c-1.6-4.5 1.8-7.3 2.7-7z"/>
+  <path fill="#ffc639" d="M452.3 63.7c-2.8-11-27.9-34.8-46.6-50-4.5-3-7.4-1.2-6.9 3.1 2.4 4 4.1 8.2 6.5 12.1.6 2.6 1.9 4.4 2.5 7 0 0 .2 4.5.6 5a25 25 0 016.6 11.8 52.4 52.4 0 0012.3 16.6c6.6 4.2 1.8 17.1 2 24 0 4.3-3.2 3.8-5.9 3.3-21.5-19.8-42.8-19.8-61.6-25.5-7.4-.8-7.5 2.7-5.1 4.6 13.1 14 25.5 23.6 41.7 31.6l8.2 5.1 9.4 7.8c7.2 4.7 7.8 9 7.8 9.4.2 8.8-4.5 15.6-5.8 18.3-2.5 9.3-7.5 11-7.5 11-40.1 27-61.2 34-126.4 25.7-1-.5-7.2.5 0 3.1 16.6 5.5 57.3 14.4 96.7-4.3 9.5-6.6 15.9-4.4 22.7-8.4 11.3-7 27.3-15.6 30.3-16.5 8.7-4.7 33.3-10 39-14.7 6.5-.5 13.2-1.4 13.7-7 2.1-1.3 5.2-.3 7.5-4.9 5.2-.9 4.3-2.7 4.3-2.7-1.3-3.7-6-5.2-9.5-7.8-5.1-1.7-8.6-2.2-12.3-.4l-3.5 1.6s-5.5-.8-5.5-1.2c-12.1-.7-11-41-15.2-57.7z"/>
+  <path fill="#1c8a42" d="M542.5 217.8a3 1.9 16 11-5.8-1.8 3 1.9 16 015.8 1.8z"/>
+  <g fill="#fff" transform="translate(-11.8 182.4) scale(.68267)">
+    <path id="a" d="M188.2 191l-12.8-12-12.9 11.8 1.4-17.4-17.3-2.8 14.5-9.8-8.6-15.2 16.7 5.3 6.5-16.2L182 151l16.7-5-8.8 15 14.4 10-17.3 2.5 1.2 17.4z"/>
+    <path d="M233.4 335.5l-13.8-9.1-13.4 9.6 4.8-15.5-13.6-9.5 16.6-.4 5-15.5 5.6 15.3 16.7-.1L228 320l5.3 15.4z"/>
+    <use width="100%" height="100%" x="2.5" y="269.1" xlink:href="#a"/>
+    <use width="100%" height="100%" x="-112.1" y="123.2" xlink:href="#a"/>
+    <use width="100%" height="100%" x="108.4" y="85" xlink:href="#a"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cy.svg
new file mode 100644
index 0000000..ba2b0f8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cy.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cy" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path id="a" fill="#435125" d="M243 425.2a.9.9 0 01-.3-.2v-.1l-1.4-1.4a75.9 75.9 0 01-4-4.9L232 412l-.7-.9-6.6-2-4.8-2.3 2.5-2.9 9 3.8 6.6 1.4 12.2 9a122.2 122.2 0 00-6.8 6.4 2.2 2.2 0 00-.2.4l.8-.5.8.7-1.7.1zm-45.5-13.7c-5.8 0-11.5-1.6-17-4.8s.8-1.3 2.5-2.6c1.6-1.2 4.6-2.7 9.5-2.7 5.8 0 12.8 2 20.9 5.8-.3.2-6.7 4.3-15.9 4.3zm-25-5.5c-1.1 0-2-.5-2.8-1.2a5.5 5.5 0 01-1.2-2.5 12.5 12.5 0 01-.3-3.5 3.7 3.7 0 011.4-.4c2.2 0 3.9 2 4.6 3.8.4 1 .5 1.9.3 2.6s-1.1 1.1-2 1.1zm44-5.2c-14.8-2-21-7.4-23.7-11.6a13.4 13.4 0 01-2.3-8.5s1-.2 2.3-.2c4 0 14 2 23.7 20.3zm-30.3-2.9c-6.3 0-11.2-1-14.3-3.2a8.8 8.8 0 01-3.2-3.6 5.8 5.8 0 01-.5-1.7 19.4 19.4 0 017.6-1.4c5 0 12.4 1.6 20.2 9.2a92 92 0 01-9.8.7zm-30.6-1.2c-6.7 0-15.9-2-21.6-7.7a66.9 66.9 0 0114.5-1.8c6.3 0 11 1.2 14.2 3.6 1.2.8 1.8 1.6 1.9 2.4.1.6-.2 1.3-.9 1.8-1.4 1-4 1.7-7.6 1.7h-.5zm-21.7-11a2.7 2.7 0 01-2-1 5 5 0 01-1-2.2c-.4-1.6-.3-3.1-.3-3.1a2 2 0 011-.3c1 0 1.8.5 2.3 1a6 6 0 011.4 2.2c.3 1 .4 1.7.2 2.3-.2.5-.8 1-1.6 1zm50-1.2c-1.1 0-2-.4-2.7-1.1a5.5 5.5 0 01-1.2-2.5 12.5 12.5 0 01-.3-3.6 3.7 3.7 0 011.3-.3c2.2 0 4 1.9 4.6 3.7.4 1 .5 2 .3 2.6-.3.7-1.1 1.2-2 1.2zm-24.4-1c-13.4-.5-20.4-4.3-23.8-7.4a15.7 15.7 0 01-3.7-4.7 10 10 0 01-.7-2s1.2-.5 3.3-.5h.3c4.5 0 13.8 1.9 24.6 14.6zm14.6-1.4a32.6 32.6 0 01-20.1-9.9 20.6 20.6 0 01-4.5-7.4s1.4-.3 3.4-.4a16.2 16.2 0 01.9 0c5.4.1 15.3 2.6 20.3 17.7zm-55.4-5.2c-3.6 0-7-.3-10.2-1.2-5.7-1.4-8.1-3.5-9.2-5.1a5.4 5.4 0 01-.8-2.2 3.6 3.6 0 010-.9s3.7-1 8.9-1.1a37.4 37.4 0 017.9.7 23.2 23.2 0 0113.7 8.6s-4.3 1.2-10.3 1.2zm25-9c-1 0-2-.5-2.7-1.2a5.5 5.5 0 01-1.2-2.5 12.3 12.3 0 01-.3-3.5 3.7 3.7 0 011.3-.3h.1c2.2 0 3.9 1.8 4.6 3.7.4 1 .5 1.8.2 2.6-.3.7-1 1.1-2 1.1zm-18.8-2.7c-.1 0-5.1-1.2-10.2-4.4-4.8-3-10.5-8-11.3-16s.5-.2 1.2-.2h.2c1.4 0 4.3.4 7.8 3 4.5 3.4 8.6 9.4 12.3 17.7zm12.3-.4s-3.6-1.4-8-5.2a51.4 51.4 0 01-14.4-19.9s1-.5 2.5-.6a3.7 3.7 0 01.3 0h.4c2 0 5.1.9 8.6 4.7a55 55 0 0110.6 21zm-32-1c-4 0-5.4-2.2-5.9-3.1a6.7 6.7 0 01-.4-3.2 9 9 0 012-.3h.2c3.2 0 5.8 1.7 6.9 3.3.2.3.9 1.5.3 2.3-.4.7-1.4 1-3 1zm-9-11.4c-2.3 0-5.8-.2-9.5-.8-3.7-.7-5.8-3.8-6.9-6.3a20.4 20.4 0 01-1.5-5.3c11.3.3 16.7 3.6 19.2 6.3a10 10 0 012.7 6h-4zm11.8-11.8a45.6 45.6 0 01-2.6-3.6c-1.4-2.1-2.6-4.3-2.6-6a85 85 0 00-.6-7.4l-.7-5c.3.2 7.1 2.7 7.1 9.1 0 6.4-.6 12.8-.6 12.9zm-8.8-.6h-.3c-2-.4-5.5-2-9.4-4.2a40.5 40.5 0 01-10-7.5c-1.8-2.1-3-5.5-3.2-10a37 37 0 010-6 3.5 3.5 0 011.2-.3c1.5 0 3 .7 5.2 2.2a42.4 42.4 0 015.6 4.7 84.5 84.5 0 016.1 6.8 93.9 93.9 0 015.5 12.3v1.5a.8.8 0 01-.4.4 1 1 0 01-.4 0z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 462.7 0)" xlink:href="#a"/>
+  <path fill="#d47600" d="M468.3 81.5l-2 .8-.8.3-2.4-.2-2.3 1.1-4 2.8-.2.1-1.5.4-1.4-.6-.8.4-.3 1.6-.7 1.2-1 .7-3.2.3-2.7 1.4-3.6-1-1.6.7-3.5 3.1-1.8.9h-.6l-2.4-.2-1 .4L429 97l-2.8.2-.9.6-1.4 2.8-1.5 1.6-.8.1-1-.3-.7.1-.3 1.8-.6.8-2 .6-1.4 1.3-1.4.6H412l-1.7 1-3.4.3-1.3 1.3-.4.3-.6.4-1 .6-.3.2-1.3-.3-1.5.6-.6-1-1 .7h-1.4l-1.7-.7-1.3-.6-1 .2-.3 1.6v.2l-1 1.3-1.9 1.1-.2.4-2.1 2.7-4 4.3-3.5 1.7-3.5 1-2.5 2-6.5 3.3-10.2 5.1-2.1.7-3 .4-5.3 2-4.8 1.4-.3.1-.9.3-6.6 2-3.1-.3-1.9.7-4.8-.6-3.3.1-2 .4-4 2-6.7 3.1-2.2 2-3.5 1.9-4 1.2v-1.7l-1.4.4-1 .3-3.3.5h-1.8l-1.1-.3h-.2l-6.7 2.3-7.4.7-3.7 1.2h-2.8l-1.8.4-3.4.5-1.2-.4h-.3l-10 .4-4.6-.5-2.2.5-3.6-1.3-5.4-.6-1.2-.4-2.8-.8-1.3.7-1 .1-2.2-.8h-.9l-1.8.7-1.1-.3-1-.8-2.4-.3-1.4-1.3-8 1.1-2.2-.6-7.3-2.2-1.2.1-1.4 1-2.2.9-1.9.5h-2.6l-3-.7-3-1.5-1.2-.3-2.5.3h-.8l-4.6-2.5-6-3.7-4.1-2-1.6-.2-.2.7.8 2.4.3 2.4-.1 2.1v1.4l.3 1.2 1.5 1.6.6 1.7.5 4.5v4.6l-.8 7.3-.2 1-.9 3.9-.7 3.4-3 9.3-.9 1.1-2 1.4-4.7 3.2-3.4 2-1 .4-2.8.2-1.7-.1-2.2-1.2-2-.5-2.8-2-3.1-.6-3.4-2-.8-1-1.9-.2-2.5-.8-1-.2-.6-.2-3.2-.1-3-1.4-1.6-.4-2.2-.1-2.3 1-1.1.6-1.5-.6h-1l-1.3 1.9-.1.3-.8.4H108l-.8.3-1.2.5-1 .5-.5.2h-.4l-.5.2h-.7l-1.2-.6-.6-.4-1.1-.2-.6.4v2l-.6 1.1L97 196l-1.7 1.5-1.2 1.8-3.1 7.1-2 3-.6.6-2 2.3-1.9 1.4-4.2 3.2-4 1.5-3.4.7h-1.6l-3.2-.4-2.8-.9-3.1-2-3.5-2.7-4.9-4.9-.7-.4H53l-1.5-1h-1.2l-.4.7-.3 1-.2 1-.5 5.5v.3l.3 2.2 3.8 5.3 1.1 2.8.2.3.8 1.3.6 1L57 232l-.9 2.2.5 1.4-1.2.9-.2 1.2 3.4 4.3.7 1.8-.8 2.6-1.3 1.4-.4.4.2 1.1 1.6 1.4 2.6 2.4 1.4 3.5 1 .9 1.3-.3.7.6h1l1 1 .7.3 1.1.5.8 1.1.2 3.3 1.6 4.2v2.6l1 1.6.3 1.3-.5 3.5 1.2 1.1 1.3-.3.9.2 1.4 1.1 1.7 2.6 1.6-.2 1 .5 5 4.5 1.2.6 1 .4 1 1 1.5-1h.2l1.7-.2.8.5 1.4 1h2l4 1.3 1.9.4 3.6 2.3 1.6 1 .9.7 1.2 1 2.4 1 2 .5 1.2.3.9.3 4.5 1.8 2.4.5 2.3.9 1.6.6h1.2l1.7-1.5h1.7l1.4.3 1.3-.2 2.1-1.3.5-.7 1.5-.7 5-.6 1.5.5 3.8-1.7 2.6.7 2.2-.8 5 1.1 1.3 1 1.4 1.6h1.8l-.6 1.2 2.1 2.3 2 3v.3l1.5 4.1 1 1.5.8 2v1.4l-1.1.9-.2.5v.2l.2.5.4-.2.8-.5 1-.1 1.8.2h1.1l1.9-.8 1.2-.6 2 .8h2.1l.9.4 2.6 1.1 1.3.2.5-.4.3-.7-.2-.8-1-1.2-2.1-2.5-1-1.3-.6-1.8-.2-2.4-.2-1.6.3-2.1.6-.8.4-1.7.1-.4 1.2-1.6 3.2-2 3.4-3 2.7-1.9 2.8-1.2v-.3l.4.1 7-2.4h.2l3.1-.6 21.3 1.5.8-.2.7-2 .4-.4.2-.2 2.4-1 1-.2 3 .8 1.3.3 2-1.1h1.4l3-1.6h1.8l.6-.2 3.5-2.6 3.4-1 1-.4.2-.2 3.5-1.8 2.2-1.7 1.9-1 2-.5 5.5-.4 1.1-1.8 2.3-.4 1.5-1.6 1.6-.6 1.1-1.7 1-1.4 1.4-.8 4.3-.2 5.2.6.7-.4 1.1-4.2 1.2-.8 3.3-4.7V252l.6-2.1-.4-3.8.5-3.8 2-4.8 1.8-2 2.9-1.9 1.5-.6 2-.4h.4l.5-.1 7.2-.1h2.6l2.4-.1 6 1 .5.2 2 .6 2.4 1.9 2.5 2.4.5.5 1.6.6.5.3 1.4-.3 1.9-1 1.4-1.2 2-1v-.1l1.1-1.7.5-.7 3.8-1.5 4.5-.2.5-.3.3-.1 1.1-1.4h1.1l2.7 1 1.9-.4 1.5.6 1.1-.2 2.2-.2 2.4 1.6 1.4.2 4.8 2.8h.4l.2.1.6-.1.9-.3.2.1.5.8.8.1.9-1.2-.4-.5-.1-.2-1.7-.4-1.6-2.6 1.5-1.6-2.3-2.8-.4-.5-.1-.2-.8-1.2-4-6.2-5.4-4.2-1.8-1.5-.7-.5-2.8-2.9-2-2.6-.3-.6-.4-1-1.2-2.5-2-1.7-1.8-1.8v-.1l-3.6-4.8-.6-.8-.8-.5h-1.8l-.2-.2v-.1l.8-1 1-.2.4-.9-1.8-5.2v-.2l-.2-1.6 1.5-7.6.2-1 2.5-5 1.6-1.3 1.6-3.3 1.5-2.1 1.4-1.4.2-.1 2.5-1.5 2.1-.3 2-.3 3.5 1h4l1.5-.2 2.5-.8 1.2-.7.6-1 1.2-4.2.5-1.4.7-1.4 4.6-5.3 3.4-3.1 7.7-5.7 3.8-2.2 1.9-1.2 17.2-7.6 4.4-4.5 2.3-2.4 4.2-2.7 4.8-2 4.1-3.3.9-1.1 1.2-3.7.9-.2.9-1.9.2-.5 3.4-2.4.4-.2L456 95l2 .2 1-1.5 3.8-.6.6-.2 1-.4.8-1.4v-.3l.1-3.6.8-1 .5-2.4.4-.6.4-.5 1.1-.8-.2-.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cz.svg
new file mode 100644
index 0000000..9557b6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/cz.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cz" viewBox="0 0 512 512">
+  <path fill="#ffffff" d="M0 0h512v256H0z"/>
+  <path fill="#d7141a" d="M0 256h512v256H0z"/>
+  <path fill="#11457e" d="M300 256 0 56V456z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/da.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/da.svg
new file mode 100644
index 0000000..51ff69f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/da.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dk" viewBox="0 0 512 512">
+  <path fill="#c8102e" d="M0 0h512.1v512H0z"/>
+  <path fill="#fff" d="M144 0h73.1v512H144z"/>
+  <path fill="#fff" d="M0 219.4h512.1v73.2H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/de.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/de.svg
new file mode 100644
index 0000000..b9ea8a6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/de.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-de" viewBox="0 0 512 512">
+  <path fill="#ffce00" d="M0 341.3h512V512H0z"/>
+  <path d="M0 0h512v170.7H0z"/>
+  <path fill="#d00" d="M0 170.7h512v170.6H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dj.svg
new file mode 100644
index 0000000..3f6b2e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dj.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dj" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M55.4 0H764v708.7H55.4z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-40) scale(.722)">
+    <path fill="#0c0" d="M0 0h1063v708.7H0z"/>
+    <path fill="#69f" d="M0 0h1063v354.3H0z"/>
+    <path fill="#fffefe" d="M0 0l529.7 353.9L0 707.3V0z"/>
+    <path fill="red" d="M221.2 404.3l-42.7-30.8-42.4 31 15.8-50.3-42.4-31.2 52.4-.4 16.3-50.2 16.6 50 52.4.2-42.1 31.4 16 50.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dk.svg
new file mode 100644
index 0000000..51ff69f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dk" viewBox="0 0 512 512">
+  <path fill="#c8102e" d="M0 0h512.1v512H0z"/>
+  <path fill="#fff" d="M144 0h73.1v512H144z"/>
+  <path fill="#fff" d="M0 219.4h512.1v73.2H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dm.svg
new file mode 100644
index 0000000..405a4b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dm.svg
@@ -0,0 +1,152 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dm" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#108c00" d="M-258.3 0H769.2v512H-258.3z"/>
+    <path fill="#ffd600" d="M-260 178.2H772.6v50.1H-260z"/>
+    <path fill="#ffd600" d="M181 0h48.5v512h-48.4z"/>
+    <path d="M227.8 0h48.4v512h-48.4z"/>
+    <path d="M-260 226.6H772.6v50.2H-260z"/>
+    <path fill="#fff" d="M-260 276.8H772.6v50.1H-260z"/>
+    <path fill="#fff" d="M276.2 0h48.5v512h-48.5z"/>
+    <rect width="273.8" height="275" x="-394.6" y="-393.9" fill="#e72910" ry="137.5" transform="scale(-1)"/>
+    <g stroke-width="1pt">
+      <path d="M250.5 137l5.6-16 5.1 15.7s17.1.5 17.1.2-13.5 10.3-13.5 10.3l6.1 17.6c-.2-.5-14.8-10.9-14.8-10.9s-14.8 10.4-14.5 10.4 5.6-17 5.6-17l-13.3-10.1 16.6-.3z"/>
+      <path fill="#ffe700" d="M251.3 137.7L256 124l4.4 13.6s14.9.4 14.9.2-11.7 9-11.7 9l5.2 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 5-14.8 5-14.8l-11.6-8.8 14.4-.2z"/>
+      <path fill="#108c00" d="M253.3 140l2.8-8 2.6 7.9s8.5.2 8.5 0-6.7 5.2-6.7 5.2l3 8.8c-.1-.3-7.4-5.4-7.4-5.4l-7.2 5.2c.2 0 2.8-8.5 2.8-8.5l-6.6-5 8.2-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M356.9 211.8l5.6-16 5 15.7s17.2.6 17.2.3-13.5 10.3-13.5 10.3l6 17.6c-.2-.5-14.7-10.9-14.7-10.9s-14.8 10.4-14.5 10.4 5.6-17 5.6-17L340.3 212l16.6-.3z"/>
+      <path fill="#ffe700" d="M357.6 212.6l4.9-13.9 4.4 13.7s14.8.4 14.8.2-11.7 9-11.7 9l5.3 15.1c-.2-.4-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.2z"/>
+      <path fill="#108c00" d="M359.7 214.9l2.8-8 2.5 7.8 8.6.2-6.8 5.1s3.2 9 3 8.8c0-.3-7.3-5.4-7.3-5.4l-7.3 5.1 2.8-8.5-6.6-5 8.3-.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M325.9 330.6l5.6-16 5 15.8s17.2.5 17.2.3-13.5 10.3-13.5 10.3l6 17.5c-.2-.5-14.7-10.8-14.7-10.8S316.7 358 316.9 358s5.7-17 5.7-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M326.6 331.4l4.9-13.8 4.4 13.6s14.8.5 14.8.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.3z"/>
+      <path fill="#108c00" d="M328.7 333.7l2.8-8 2.5 7.9s8.6.3 8.6.1-6.8 5.2-6.8 5.2l3 8.7c0-.2-7.3-5.4-7.3-5.4l-7.3 5.2 2.8-8.5-6.6-5 8.3-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M177.2 330.6l5.6-16 5 15.8s17.1.5 17.1.3-13.5 10.3-13.5 10.3l6.2 17.5c-.3-.5-14.8-10.8-14.8-10.8S168 358 168.2 358s5.7-17 5.7-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M178 331.4l4.8-13.8 4.4 13.6s14.8.5 14.8.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.3z"/>
+      <path fill="#108c00" d="M180 333.7l2.8-8 2.5 7.9s8.6.3 8.6.1-6.8 5.2-6.8 5.2l3 8.7c0-.2-7.3-5.4-7.3-5.4l-7.3 5.2 2.8-8.5-6.6-5 8.3-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M150 208.7l5.6-16 5.1 15.8s17.1.5 17.1.2-13.5 10.4-13.5 10.4l6.1 17.5c-.3-.5-14.8-10.8-14.8-10.8S140.8 236 141.1 236s5.6-17 5.6-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M150.8 209.5l4.8-13.8 4.5 13.6s14.7.5 14.7.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.5 9 4.8-14.8 4.8-14.8l-11.5-8.7 14.4-.3z"/>
+      <path fill="#108c00" d="M152.8 211.8l2.8-8 2.6 7.9 8.5.1-6.7 5.2 3 8.7c-.1-.2-7.4-5.4-7.4-5.4l-7.2 5.2c.2 0 2.8-8.5 2.8-8.5l-6.6-5 8.2-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M324.6 174.1l-5.6 16-5-15.7s-17.2-.5-17.2-.3 13.5-10.3 13.5-10.3l-6-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17l13.3 10-16.6.3z"/>
+      <path fill="#ffe700" d="M323.9 173.3c0 .3-5 13.9-5 13.9l-4.3-13.6s-14.8-.5-14.8-.3 11.7-8.9 11.7-8.9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.7-14.4.2z"/>
+      <path fill="#108c00" d="M321.8 171l-2.8 8-2.5-7.8s-8.6-.3-8.6-.1 6.8-5.2 6.8-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2c-.2 0-2.9 8.5-2.9 8.5l6.7 5-8.3.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M367.3 290.3l-5.6 16-5-15.8s-17.2-.5-17.2-.2S353 280 353 280l-6-17.6c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17L384 290l-16.6.3z"/>
+      <path fill="#ffe700" d="M366.6 289.5l-4.9 13.8-4.4-13.6s-14.8-.4-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.8-14.4.2z"/>
+      <path fill="#108c00" d="M364.5 287.2l-2.8 8-2.5-7.9s-8.6-.2-8.6 0 6.8-5.2 6.8-5.2l-3-8.8c0 .3 7.3 5.4 7.3 5.4l7.3-5.2c-.2 0-2.9 8.6-2.9 8.6l6.7 5-8.3.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M261.4 375.3l-5.6 16-5-15.8s-17.2-.5-17.2-.3 13.5-10.3 13.5-10.3l-6-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17L278 375l-16.6.3z"/>
+      <path fill="#ffe700" d="M260.7 374.4l-4.9 14-4.4-13.7s-14.8-.5-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.7-14.3.3z"/>
+      <path fill="#108c00" d="M258.6 372.2l-2.8 8-2.5-7.9s-8.6-.3-8.6-.1 6.8-5.2 6.8-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.5 6.6 5-8.3.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M162 290.3l-5.7 16-5-15.8s-17.2-.5-17.2-.2 13.5-10.3 13.5-10.3l-6-17.6c.2.5 14.7 10.8 14.7 10.8L171 263l-5.7 17 13.3 10.1-16.6.3z"/>
+      <path fill="#ffe700" d="M161.2 289.5l-4.9 13.8-4.4-13.6s-14.8-.4-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.8-14.3.2z"/>
+      <path fill="#108c00" d="M159.1 287.2l-2.8 8-2.5-7.9s-8.6-.2-8.6 0 6.8-5.2 6.8-5.2l-3-8.8c0 .3 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.6 6.6 5-8.3.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M198.7 175.8l-5.6 16-5.2-15.7s-17-.5-17-.3 13.5-10.3 13.5-10.3l-6.1-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.6-10.3-5.6 17-5.6 17l13.2 10-16.5.4z"/>
+      <path fill="#ffe700" d="M197.9 175l-4.9 14-4.4-13.7s-14.8-.5-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.8 14.8-4.8 14.8l11.4 8.7-14.3.3z"/>
+      <path fill="#108c00" d="M195.8 172.8l-2.8 8-2.5-7.9s-8.5-.3-8.5-.1 6.7-5.2 6.7-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.5 6.6 5-8.3.2z"/>
+    </g>
+    <g transform="translate(-250.6 359.4) scale(1.036)">
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="matrix(.164 -.016 .012 .184 429.8 -215.6)">
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.405 -.006 .008 1 -534.3 263.7)"/>
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.486 -.006 .01 1 -547.2 267)"/>
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.19 -.006 .007 1.105 -365 214.1)"/>
+      </g>
+      <g stroke="#000" transform="translate(72.9 -9.8)">
+        <path fill="#a95600" stroke-width="2.5" d="M238.3 971.8c30-1.7 16.7-16.7 31.7-25s36.6-3.3 43.3 6.7c6.6 10 1.6 20 10 20 8.3 0 234.5-12.7 242.8-4.4 8.4 8.3 10 25 1.7 31.6s-294.5 14.4-304.5 7.7c-10-6.6-25-35-25-36.6z" transform="matrix(.202 .003 -.004 .214 340.9 -247.3)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.148 .002 -.003 .115 340.4 -81.7)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.148 .002 -.003 .115 344.4 -81.6)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.148 .002 -.003 .115 348.7 -81.8)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.148 .002 -.003 .115 352.7 -81.8)"/>
+        <ellipse cx="478.4" cy="-41.1" fill="#a95600" stroke-width=".4" rx="3.5" ry="3.4" transform="matrix(1.095 .016 -.024 1.154 -75.6 4.7)"/>
+      </g>
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="rotate(-5.8 688.4 -625.2)">
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 369.8 -361.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 364 -362.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 360.6 -370.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.01 .002 .348 369.3 -399.4)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 377.4 -379)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 373.2 -382.2)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 368 -386.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 363 -389.5)"/>
+      </g>
+      <path fill="#804bff" stroke="#000" stroke-width="2.5" d="M173.2 346.4s-54.2 64.9-21.3 208.8C186 699.8 331 745 331 745s26.5-47.5 1.7-164c-40-170-116.1-234.6-116.1-234.6h-43.3z" transform="matrix(.177 .032 -.03 .182 461.8 -208.6)"/>
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="rotate(4.5 181 769.9)">
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 369.8 -361.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 364 -362.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.166 -.008 .002 .315 360.6 -370.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.01 .002 .348 369.3 -399.4)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 377.4 -379)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 373.2 -382.2)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 368 -386.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 -.008 .002 .326 363 -389.5)"/>
+      </g>
+      <ellipse cx="624.4" cy="606.1" fill="#c90000" stroke="#000" stroke-width="1pt" rx="58.3" ry="186.5" transform="matrix(.157 -.06 .064 .148 369.6 -145)"/>
+      <g fill="#009200" stroke="#000" transform="rotate(1 242.4 -1957.8)">
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.5" rx="10.8" ry="12.9" transform="matrix(.395 0 0 .293 445 -230.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .293 457.2 -236)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .293 452 -236)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .275 449.5 -233.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .275 449 -238)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .293 447 -238.8)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .287 448 -241.6)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.5" rx="10.8" ry="12.9" transform="matrix(.395 0 0 .293 432.8 -243.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .275 446 -243.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .287 444.2 -247)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .293 436.1 -243.2)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .287 437.4 -243.9)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.354 0 0 .287 439 -247)"/>
+      </g>
+      <g fill="#009200" stroke="#000" transform="matrix(.18 -.005 .004 .185 421 -216.8)">
+        <ellipse cx="528.7" cy="564.5" stroke-width="2.5" rx="67.4" ry="205.6" transform="matrix(.976 -.308 .363 .874 -245.8 324.4)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.5" rx="13.3" ry="40.8" transform="rotate(-23.4 630.5 660.9)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.883 -.456 .953 1.182 -352.3 -10)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.883 -.456 .953 1.182 -348.4 44)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.873 -.495 .978 1.162 -362 105.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.4" rx="13.3" ry="40.8" transform="matrix(1.81 -.4 .7 1.635 -915.6 -221)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.6" rx="13.3" ry="40.8" transform="matrix(1.626 -.23 .542 1.353 -739.5 -91.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.6" rx="13.3" ry="40.8" transform="matrix(1.63 -.197 .513 1.363 -750.6 -91.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.314 -.2 .47 1.01 -531 47.6)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.326 -.13 .403 1.033 -517.9 12.2)"/>
+        <path stroke-width="2.1" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(1.025 -.493 .464 1.177 12.8 -14.5)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.326 -.13 .403 1.033 -519.5 -34.4)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.33 -.105 .38 1.04 -534 -40.1)"/>
+        <path stroke-width="2.9" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.672 -.472 .46 .8 39.5 143.3)"/>
+        <path stroke-width="2.9" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.672 -.472 .46 .8 51.1 125.8)"/>
+        <path stroke-width="2.1" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.937 -.645 .64 1.092 -40.2 -10.7)"/>
+        <path stroke-width="2.7" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.672 -.52 .46 .88 68.6 71.2)"/>
+      </g>
+      <g fill="#804bff" stroke="#000" stroke-width="2.5">
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.156 .007 -.004 .225 458 -214.3)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.156 .007 -.004 .225 456.6 -220.2)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.156 .007 -.004 .225 454.8 -225.8)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.156 .007 -.004 .225 450.9 -232.2)"/>
+      </g>
+      <g transform="rotate(1 -589.6 681.6)">
+        <path fill="#804bff" stroke="#000" stroke-width="2.5" d="M211.2 247.3c21.7-12 56.6-9.8 79.7 11.2 19.4 17 45.3 75.2 70.3 92.8a57.7 57.7 0 01-42.2-15.2c-28.8 15.5-38.1 16.7-64 15.7-35.8-1.4-62.4-17.7-68-40.6-6.3-21.8 4.8-52.5 24.2-63.9z" transform="matrix(.21 -.04 .047 .18 407.8 -213.6)"/>
+        <ellipse cx="287.2" cy="323" fill="red" stroke="#000" stroke-width="2.5" rx="14.2" ry="15" transform="matrix(.245 0 0 .134 401.8 -215.2)"/>
+        <ellipse cx="204.6" cy="348.3" fill="#ff0" stroke="#000" stroke-width="2.5" rx="23.3" ry="15.9" transform="matrix(.194 -.076 .068 .173 398.7 -208)"/>
+        <circle cx="283.9" cy="333.9" r="5.8" transform="matrix(.214 0 0 .185 411.3 -233.7)"/>
+        <path fill="#ff0" stroke="#000" stroke-width="6.6" d="M516.8 260.3c4.4 18-6.7 43-33.1 52.6-26.8 13.2-46.1 41.8-55.7 88-47.2-103.2-23-148.3 20.6-160.3 37.4-14.4 60.4-13.4 68.2 19.7z" transform="matrix(.092 0 -.003 .085 417.9 -191.5)"/>
+        <circle cx="199" cy="362.4" r="4.7" transform="matrix(.187 -.013 .014 .19 418.7 -235)"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/do.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/do.svg
new file mode 100644
index 0000000..03d3f35
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/do.svg
@@ -0,0 +1,6745 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-do" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M83.7 80.3h364.9v364.9h-365z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-117.4 -112.7) scale(1.403)">
+    <path fill="#00319c" fill-rule="evenodd" d="M313.2 314.8h318.1V510H313.2z"/>
+    <path fill="#d62918" fill-rule="evenodd" d="M-99.2 315.4H218V510H-99.2z"/>
+    <path fill="#00319c" fill-rule="evenodd" d="M-98.6-1.8h317.2V216H-98.6z"/>
+    <path fill="#d62918" fill-rule="evenodd" d="M315 0h315.7v218H315z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M-99 215.8h731v101H-99z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M217.3-.7h98.5v511h-98.5z"/>
+    <path fill="#cecece" d="M259.3 218.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M259.8 218.8l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M260.3 218.8l.5.5-.5-.5z"/>
+    <path fill="#848c9c" d="M263.8 218.8l.5.5-.5-.5z"/>
+    <path fill="#848ca5" d="M264.7 219l.3.1-.3-.2z"/>
+    <path fill="#848c9c" d="M265.3 218.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M268.9 218.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M269.4 218.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M269.9 218.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M255.8 219.3l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M256.3 219.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M256.8 219.3l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M257.3 219.3l.5.4-.5-.4z"/>
+    <path fill="#425a84" d="M257.8 219.3l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M258.7 219.4l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M259.7 219.4l.3.2-.3-.2z"/>
+    <path fill="#003994" d="M251.7 224c-6 0-13.9.4-19 3.4-3.5 2-3.1 7.6 1.4 7.5v.5h-1v.4l7.6-1.9v-.4h-3v-.5h3.5l-1-2 18-1.8-1-3.4c6.7-.8 12-.2 18.6 1.5v.4l-4-1c.4 2.2 2.7 1.6 4.4 1l-5 1v.5l11.6 1 12 2.8v.5l-6.5-1v.5l8 2.4-1.5-1.5v-.4l2 2.3c3.2.2 5.6.9 7.5 3.4l-7-2.9 4 9h.5V244h.5v1.4l4.5-1c-1.1-4.8-3.2-10.5-8-12.9.4-1.8 0-2.6-1.5-3.8 1.9 3.7-1.2 5.2-4 2.4l-1 1 1-3.4-3 2.9.5-3.3h-.5l-.5 2.8-1.5-1.4-.5 1.4-8-1V225l1 1.4h.5V225l2.5 1.4h.5l10 .5.5 3.8h.5l1.5-3.3a53.3 53.3 0 00-19-3.4c.3-3.2-3.3-3.8-6-4.2-4.9-.7-19.6-2.4-20.1 4.2z"/>
+    <path fill="#002984" d="M269.7 219.4l.3.2-.3-.2z"/>
+    <path fill="#00184a" d="M270.7 219.4l.3.2-.3-.2z"/>
+    <path fill="#314a7b" d="M271.4 219.3l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M271.9 219.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M272.4 219.3l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M272.9 219.3l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M273.4 219.3l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M254.3 219.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M254.8 219.7l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M255.3 219.7l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M255.8 219.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M256.3 219.7l.5.5-.5-.5m16.6 0l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M273.4 219.7l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M273.9 219.7l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M274.4 219.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M274.9 219.7l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M252.8 220.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M253.3 220.2l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M253.8 220.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M254.3 220.2l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M259.3 220.2l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M259.8 220.2l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M260.3 220.2l.5.5-.5-.5m1 0l.5.5-.5-.5zm3 0l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M267.4 220.2l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M268.9 220.2l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M269.4 220.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M274.9 220.2l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M275.4 220.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M275.9 220.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M276.4 220.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M251.8 220.7l-.5 1 .5-1z"/>
+    <path fill="#8c8c8c" d="M252.3 220.7l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M252.8 220.7l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M255.8 220.7l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M256.3 220.7l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M256.8 220.7l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M257.3 220.7l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M257.8 220.7l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M259.3 220.7l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M260.3 220.7l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M261.3 220.7l.5.5-.5-.5zm3 0l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M269.4 220.7l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M271.7 220.8l.3.2-.3-.2z"/>
+    <path fill="#295284" d="M272.4 220.7l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M276.4 220.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M276.9 220.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M277.4 220.7l.5.5-.5-.5z"/>
+    <path fill="#31394a" d="M251.8 221.2l.5.4-.5-.4z"/>
+    <path fill="#deb518" d="M255.8 221.2l.5.4-.5-.4z"/>
+    <path fill="#efbd08" d="M257.8 221.2l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M259.3 221.2l.5.4-.5-.4z"/>
+    <path fill="#efbd08" d="M260.3 221.2l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M265.8 221.2l.5.4-.5-.4z"/>
+    <path fill="#003994" d="M266.3 221.2l.5.4-.5-.4z"/>
+    <path fill="#4a636b" d="M266.9 221.2l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M267.9 221.2l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M270.9 221.2l.5.4-.5-.4z"/>
+    <path fill="#4a636b" d="M272.4 221.2l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M277.4 221.2l1 1-1-1z"/>
+    <path fill="#cecece" d="M277.9 221.2l.5.4-.5-.4z"/>
+    <path fill="#212139" d="M251.3 221.7l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M255.8 221.7l.5.4-.5-.4z"/>
+    <path fill="#cead21" d="M256.3 221.7l.5.4-.5-.4z"/>
+    <path fill="#003994" d="M257 222l.2.3-.2-.3z"/>
+    <path fill="#395273" d="M257.5 222l.2.3-.2-.3z"/>
+    <path fill="#6b735a" d="M258.3 221.7l.5.4-.5-.4z"/>
+    <path fill="#cead21" d="M259.8 221.7l.5.4-.5-.4z"/>
+    <path fill="#5a6b63" d="M260.8 221.7l.5.4-.5-.4z"/>
+    <path fill="#9c8c42" d="M265.8 221.7l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M266.3 221.7l.5.4-.5-.4z"/>
+    <path fill="#9c8c42" d="M266.9 221.7l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M267.9 221.7l.5.4-.5-.4z"/>
+    <path fill="#295284" d="M268.4 221.7l.5.4-.5-.4z"/>
+    <path fill="#8c8442" d="M270.9 221.7l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M272.4 221.7l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M278.4 221.7l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M250.8 222.1l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M251.3 222.1l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M255.8 222.1l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M258.3 222.1l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M258.8 222.1l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M259.8 222.1l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M260.3 222.1l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M260.8 222.1l.5.5-.5-.5m6.5 0l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M268.5 222.4l.2.4-.2-.4z"/>
+    <path fill="#efbd08" d="M270.9 222.1l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M271.4 222.1l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M271.9 222.1l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M272.4 222.1l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M277.9 222.1l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M278.4 222.1l.5.5-.5-.5m-27.6.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M251.5 223l.1.2-.1-.3z"/>
+    <path fill="#6b735a" d="M255.8 222.6l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M256.8 222.6l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M258.3 222.6l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M258.8 222.6l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M259.8 222.6l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M260.3 222.6l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M265.8 222.6l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M266.3 222.6l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M266.9 222.6l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M270.4 222.6l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M271.4 222.6l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M272.2 222.8l.3.1-.3-.1z"/>
+    <path fill="#bdbdbd" d="M250.8 223l.5.6-.5-.5z"/>
+    <path fill="#395273" d="M255.8 223l.5.6-.5-.5z"/>
+    <path fill="#cead21" d="M256.8 223l.5.6-.5-.5z"/>
+    <path fill="#8c8442" d="M257.3 223l.5.6-.5-.5z"/>
+    <path fill="#395273" d="M257.8 223l.5.6-.5-.5z"/>
+    <path fill="#8c8442" d="M258.8 223l.5.6-.5-.5z"/>
+    <path fill="#5a6b63" d="M261.3 223l.5.6-.5-.5z"/>
+    <path fill="#7b7b52" d="M266 223.4l.2.3-.2-.3m.8-.3l1 1.4-1-1.4z"/>
+    <path fill="#4a636b" d="M268.4 223l.5.6-.5-.5z"/>
+    <path fill="#bd9c29" d="M270.4 223l.5.6-.5-.5z"/>
+    <path fill="#deb518" d="M271.9 223l.5.6-.5-.5z"/>
+    <path fill="#ada5a5" d="M248.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M250.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M251.3 223.6l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M256.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M258.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#cead21" d="M259.3 223.6l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M259.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#295284" d="M260.3 223.6l.5.4-.5-.4z"/>
+    <path fill="#deb518" d="M260.8 223.6l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M261.3 223.6l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M268.4 223.6l.5.4-.5-.4z"/>
+    <path fill="#ad9431" d="M270.9 223.6l.5.4-.5-.4z"/>
+    <path fill="#cead21" d="M271.9 223.6l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M272.9 223.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M277.9 223.6l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M278.4 223.6l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M280.4 223.6l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M282.4 223.6l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M242.8 224l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M243.3 224l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M244.1 224.2l.4.2-.4-.2z"/>
+    <path fill="#42425a" d="M244.8 224l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M245.3 224l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M246.1 224.2l.4.2-.4-.2z"/>
+    <path fill="#00216b" d="M246.8 224l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M256.8 224l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M258.8 224l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M259.3 224l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M260.8 224l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M261.3 224l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M262.3 224l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M262.8 224l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M263.3 224l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M265.3 224l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M268.4 224l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M268.9 224l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M269.9 224l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M270.9 224l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M271.9 224l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M282.4 224l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M283.2 224.2l.4.2-.4-.2z"/>
+    <path fill="#314a7b" d="M283.9 224l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M284.4 224l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M284.9 224l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M285.4 224l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M285.9 224l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M286.4 224l.5.5-.5-.5m-46.6.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M240.3 224.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M240.8 224.5l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M241.3 224.5l.5.5-.5-.5z"/>
+    <path fill="#29396b" d="M241.8 224.5l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M242.3 224.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M242.8 224.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M243.3 224.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M250.8 224.5l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M256.3 224.5l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M256.8 224.5l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M271.9 224.5l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M272.4 224.5l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M272.9 224.5l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M277.4 224.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M286.2 224.7l.4.1-.4-.1z"/>
+    <path fill="#00184a" d="M286.9 224.5l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M287.4 224.5l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M287.9 224.5l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M288.4 224.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M288.9 224.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M289.4 224.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M237.8 225l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.3 225l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M238.8 225l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M239.3 225l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M239.8 225l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M245.3 225l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M250.8 225l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M277.4 225l-.5 1 .5-1z"/>
+    <path fill="#395273" d="M279.9 225l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M280.4 225l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M281.4 225l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M289.4 225l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M290 225l.4.5-.5-.5z"/>
+    <path fill="#42425a" d="M290.4 225l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291 225l.4.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M291.4 225l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M292 225l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M235.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M236.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#314a7b" d="M236.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M237.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M237.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M241.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M241.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M242.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#5a6b63" d="M244.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#efbd08" d="M244.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M245.6 225.6l.4.2-.4-.2z"/>
+    <path fill="#4a636b" d="M246.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M250.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M259.2 225.6l.3.2-.3-.2z"/>
+    <path fill="#00215a" d="M259.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M260.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#29396b" d="M260.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#425a84" d="M261.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#636b7b" d="M264.3 225.5l.5.4-.5-.4z"/>
+    <path fill="#737b94" d="M264.8 225.5l.5.4-.5-.4z"/>
+    <path fill="#29396b" d="M268.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M269.2 225.6l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M270.2 225.6l.3.2-.3-.2z"/>
+    <path fill="#6b6b4a" d="M277.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M280.4 225.5l1 3.8-1-3.8z"/>
+    <path fill="#cead21" d="M282.9 225.5l.5.4-.5-.4z"/>
+    <path fill="#4a636b" d="M283.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#8c8442" d="M284.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M286.4 225.5l-.5 1.9.5-2z"/>
+    <path fill="#002984" d="M291.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M292 225.5l.4.4-.5-.4z"/>
+    <path fill="#314a7b" d="M292.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M293 225.5l.4.4-.5-.4z"/>
+    <path fill="#cecece" d="M293.4 225.5l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M234.3 226l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M234.8 226l.5.4-.5-.5z"/>
+    <path fill="#31425a" d="M235.3 226l.5.4-.5-.5z"/>
+    <path fill="#00216b" d="M235.8 226l.5.4-.5-.5z"/>
+    <path fill="#5a6b63" d="M240.8 226l.5.4-.5-.5z"/>
+    <path fill="#cead21" d="M242.8 226l.5.4-.5-.5z"/>
+    <path fill="#deb518" d="M244.6 226.1l.4.2-.4-.2z"/>
+    <path fill="#7b7b52" d="M245.3 226l.5.4-.5-.5z"/>
+    <path fill="#deb518" d="M246.1 226.1l.4.2-.4-.2z"/>
+    <path fill="#00216b" d="M251.3 226l.5.4-.5-.5m6 0l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M257.8 226l.5.4-.5-.5z"/>
+    <path fill="#cecece" d="M269.9 226l.5.4-.5-.5z"/>
+    <path fill="#bdbdbd" d="M270.4 226l.5.4-.5-.5z"/>
+    <path fill="#ada5a5" d="M270.9 226l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M271.4 226l.5.4-.5-.5z"/>
+    <path fill="#00184a" d="M272 226.3l.2.3-.2-.3z"/>
+    <path fill="#001039" d="M276.9 226l.5.4-.5-.5z"/>
+    <path fill="#deb518" d="M277.4 226l.5.4-.5-.5z"/>
+    <path fill="#bd9c29" d="M281.9 226l.5.4-.5-.5z"/>
+    <path fill="#7b7b52" d="M282.4 226l-.5.9.5-1z"/>
+    <path fill="#deb518" d="M282.9 226l.5.4-.5-.5z"/>
+    <path fill="#bd9c29" d="M284.4 226l1 .9-1-1zm3 0l.5.4-.5-.5z"/>
+    <path fill="#ffce08" d="M287.9 226l.5.4-.5-.5z"/>
+    <path fill="#bd9c29" d="M288.4 226l.5.4-.5-.5z"/>
+    <path fill="#ad9431" d="M288.9 226l.5.4-.5-.5z"/>
+    <path fill="#4a636b" d="M289.4 226l.5.4-.5-.5z"/>
+    <path fill="#00216b" d="M293.4 226l.5.4-.5-.5z"/>
+    <path fill="#21315a" d="M294 226l.4.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M294.4 226l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M295 226l.4.4-.5-.5z"/>
+    <path fill="#9c9494" d="M233.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M233.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M234.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M238.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M241.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M241.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M242.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M243.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M244.3 226.4l1 1-1-1z"/>
+    <path fill="#8c8442" d="M244.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M245.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M245.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M246.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M251.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M255.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M256.3 226.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M256.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M257.8 226.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M270.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M271.5 226.7l.2.4-.2-.4z"/>
+    <path fill="#002984" d="M272.5 226.7l.2.4-.2-.4z"/>
+    <path fill="#313931" d="M276.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M280.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M282.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M282.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M283.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M284.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M285.4 226.4l.5.5-.5-.5m1.7.3l.1.4-.1-.4z"/>
+    <path fill="#cead21" d="M287.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M287.9 226.4l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M288.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M290 226.4l.4.5-.5-.5z"/>
+    <path fill="#ffce08" d="M290.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M291 226.4l.4.5-.5-.5z"/>
+    <path fill="#8c8442" d="M291.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M292 226.4l.4.5-.5-.5z"/>
+    <path fill="#184a8c" d="M292.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M295 226.4l.4.5-.5-.5z"/>
+    <path fill="#31394a" d="M295.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296 226.4l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M296.4 226.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M232.3 226.9l.4.5-.4-.5z"/>
+    <path fill="#212139" d="M232.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M233.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M235.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M235.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M236.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M237.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M238.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M239.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M240.3 226.9l.5 1.4-.5-1.4z"/>
+    <path fill="#7b7b52" d="M241.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M241.8 226.9v1.9h1v-1.9h-1z"/>
+    <path fill="#efbd08" d="M242.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M243.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M244.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M245.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M245.8 226.9l-.5 1 .5-1z"/>
+    <path fill="#7b7b52" d="M246.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M251.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M253.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M254.5 227.6v1.1h2.4l-2.4-1.1z"/>
+    <path fill="#00215a" d="M255.3 226.9l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M255.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#31394a" d="M257.8 226.9l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M274.4 226.9l1 1-1-1z"/>
+    <path fill="#002984" d="M274.9 226.9l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M276.5 227.2l.2.3-.2-.3z"/>
+    <path fill="#8c8442" d="M276.9 226.9l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M283.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M284 227.2l.2.3-.1-.3z"/>
+    <path fill="#deb518" d="M284.9 226.9l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M285.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M286.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M287.9 226.9l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M288.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M288.9 226.9l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M290 226.9l.4.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M290.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M291 226.9l.4.5-.5-.5z"/>
+    <path fill="#ffce08" d="M291.4 227.8l1.5-.4-1.5.4z"/>
+    <path fill="#6b735a" d="M293 226.9l.4.5-.5-.5z"/>
+    <path fill="#295284" d="M294 226.9l-.6 1 .5-1z"/>
+    <path fill="#10214a" d="M296.4 226.9l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M297 226.9l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M231.3 227.4l.4.4-.4-.4z"/>
+    <path fill="#42425a" d="M231.8 227.4l.4.4-.4-.4z"/>
+    <path fill="#002984" d="M232.3 227.4l.4.4-.4-.4z"/>
+    <path fill="#ad9431" d="M235.3 227.4l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M236.6 227.5l.3.2-.3-.2m1.2-.1l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M238.8 227.4l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M241.3 227.4l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M244.4 227.7l.2.3-.2-.3z"/>
+    <path fill="#9c8c42" d="M244.8 227.4l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M246.1 227.5l.4.2-.4-.2z"/>
+    <path fill="#8c8442" d="M246.8 227.4l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M252 227.7l.1.3-.1-.3z"/>
+    <path fill="#002984" d="M252.3 227.4l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M252.8 227.4l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M253.3 227.4l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M257.8 227.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M258.3 227.4l.5.4-.5-.4z"/>
+    <path fill="#21315a" d="M271.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M275.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#9c8c42" d="M281.9 227.4l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M282.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#efbd08" d="M282.9 227.4l.5.4-.5-.4z"/>
+    <path fill="#deb518" d="M283.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#8c8442" d="M286.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M286.9 227.4l.5.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M287.9 227.4l.5.4-.5-.4z"/>
+    <path fill="#4a636b" d="M288.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M288.9 227.4l.5.4-.5-.4z"/>
+    <path fill="#4a636b" d="M290 227.4l.4.4-.5-.4z"/>
+    <path fill="#5a6b63" d="M291 227.4l.4.4-.5-.4z"/>
+    <path fill="#6b735a" d="M292 227.4l.4.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M292.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#184a8c" d="M293 227.4l.4.4-.5-.4z"/>
+    <path fill="#efbd08" d="M294.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M297 227.4l.4.4-.5-.4z"/>
+    <path fill="#212139" d="M297.4 227.4l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M298 227.4l.4.4-.5-.4z"/>
+    <path fill="#9c9494" d="M230.8 227.8l-.6 1 .6-1z"/>
+    <path fill="#00215a" d="M231.3 227.8l.4.5-.4-.5z"/>
+    <path fill="#6b735a" d="M235.3 227.8l.5.5-.5-.5z"/>
+    <path fill="#295284" d="M236.3 227.8l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M236.8 227.8v2h.5l-.5-2z"/>
+    <path fill="#9c8c42" d="M237.3 227.8l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M238.3 227.8l1 1-1-1z"/>
+    <path fill="#395273" d="M238.8 227.8l.5.5-.5-.5zm6 0l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M245.6 228l.4.2-.4-.2z"/>
+    <path fill="#deb518" d="M246.3 227.8l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M246.8 227.8l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M252.5 228.2l.1.3-.1-.3z"/>
+    <path fill="#002984" d="M257.8 227.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M258.3 227.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M270.9 227.8l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M271.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#000818" d="M275.9 227.8l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M281.9 227.8l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M282.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M282.9 227.8l-.5 1 .5-1z"/>
+    <path fill="#ffce08" d="M283.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M284.9 227.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M285.9 227.8l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M286.7 228l.4.2-.4-.2z"/>
+    <path fill="#9c8c42" d="M291 227.8l.4.5-.5-.5z"/>
+    <path fill="#efbd08" d="M291.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M293.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M296.4 227.8l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M297 227.8l.4.5-.5-.5z"/>
+    <path fill="#00216b" d="M298 227.8l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M298.4 227.8l1 1-1-1z"/>
+    <path fill="#00216b" d="M230.8 228.3l.4.5-.4-.5z"/>
+    <path fill="#295284" d="M235.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M237.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M238.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M239.8 228.3l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M241.3 228.3l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M244.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M245.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M246.5 228.7l.1.3-.1-.4z"/>
+    <path fill="#ad9431" d="M246.8 228.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M252.8 228.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M252.8 229.3l1.5-1-1.5 1z"/>
+    <path fill="#00216b" d="M254.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M258.3 228.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M270.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M273.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M273.9 229.3l1.5-1-1.5 1z"/>
+    <path fill="#00184a" d="M275.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M275.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M280.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M281.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M282.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M283.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M284.9 228.3l.5.5-.5-.5zm2 0l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M288.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M288.9 228.3l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M291 228.3l.4.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M291.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M293 228.3l.4.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M297.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M298.4 228.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M229.8 228.8l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M230.3 228.8l.4.5-.4-.5z"/>
+    <path fill="#efbd08" d="M235.8 228.8l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M236.3 228.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M238.4 229.1l.2.3-.2-.3z"/>
+    <path fill="#ad9431" d="M239.8 228.8l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M240.8 228.8l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M242.1 229l.3.1-.3-.1m1.2-.2l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M244.8 228.8l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M246.8 228.8l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M257.3 228.8l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M258.3 228.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M270.9 228.8l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M276.9 228.8l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M283.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M286.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M286.9 228.8l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M287.9 228.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M291.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M292.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M293 228.8l.4.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M293.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M294 228.8l-.6 1 .5-1z"/>
+    <path fill="#5a6b63" d="M296 228.8l.4.5-.5-.5z"/>
+    <path fill="#ffce08" d="M296.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M298 228.8l.4.5-.5-.5z"/>
+    <path fill="#002984" d="M299 228.8l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M299.4 228.8l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M229.8 229.3l.4.5-.4-.5z"/>
+    <path fill="#bd9c29" d="M235.8 229.3l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M236.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M237.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#cead21" d="M239.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M239.8 229.3l-.5 1 .5-1z"/>
+    <path fill="#ad9431" d="M241.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M242.8 229.3l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M245.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M245.8 229.3l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M246.3 229.3l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M257.8 229.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M258.3 229.3l.5.5-.5-.5m12 0l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M270.9 229.3l1 1-1-1z"/>
+    <path fill="#31394a" d="M271.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M284.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M284.9 229.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M286.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#ad9431" d="M286.9 229.3l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M288.9 229.3l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M290.4 229.3l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M292.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#8c8442" d="M294 229.3l.4.5-.5-.5z"/>
+    <path fill="#cead21" d="M294.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M297 229.3l-.6 1.9h.5v-2z"/>
+    <path fill="#7b7b52" d="M297.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M298.4 229.3l.5.5-.5-.5z"/>
+    <path fill="#425a84" d="M299.6 229.6l.2.3-.2-.3z"/>
+    <path fill="#42425a" d="M229.8 229.8l.4.4-.4-.4z"/>
+    <path fill="#7b7b52" d="M235.8 229.8l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#deb518" d="M237.3 229.8l.5.4-.5-.4z"/>
+    <path fill="#5a6b63" d="M238.3 229.8l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M239.8 229.8l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M256.3 229.8l.5.4-.5-.4z"/>
+    <path fill="#21315a" d="M256.8 229.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M257.3 229.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M257.8 229.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M271.9 229.8l.5.4-.5-.4z"/>
+    <path fill="#21315a" d="M272.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M272.9 229.8l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M287.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#8c8442" d="M288.9 229.8l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M289.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#7b7b52" d="M290.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M292 229.8l.4.4-.5-.4z"/>
+    <path fill="#bd9c29" d="M294.4 229.8l-.5 1.4.5-1.4z"/>
+    <path fill="#5a6b63" d="M295.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M296 229.8l.4.4-.5-.4z"/>
+    <path fill="#5a6b63" d="M296.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#395273" d="M297.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M298.4 229.8l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M229.8 230.2l.4.5-.4-.5z"/>
+    <path fill="#395273" d="M235.8 230.2l.5.5-.5-.5z"/>
+    <path fill="#9c8c42" d="M237.8 230.2l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M239.3 230.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M245.3 230.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M245.8 230.2l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M246.3 230.2l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M246.8 230.2l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M253.3 230.2l.5.5-.5-.5z"/>
+    <path fill="#848c9c" d="M253.8 230.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M256.3 230.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M272.9 230.2l.5.5-.5-.5z"/>
+    <path fill="#848c9c" d="M275.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M275.9 230.2l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M282.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M282.9 230.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M283.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M283.9 230.2l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M290.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M291 230.2l.4.5-.5-.5z"/>
+    <path fill="#efbd08" d="M292 230.2l.4.5-.5-.5z"/>
+    <path fill="#cead21" d="M292.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M293.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M294 230.2l.4.5-.5-.5m1.9.2l.3.2-.3-.2z"/>
+    <path fill="#8c8442" d="M297.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M298.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M299.4 230.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M229.8 230.7l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M230.3 230.7l.4.5-.4-.5z"/>
+    <path fill="#7b7b52" d="M236.3 230.7l.5.5-.5-.5z"/>
+    <path fill="#4a636b" d="M236.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M240.3 231.7l1.5-.5-1.5.5z"/>
+    <path fill="#00215a" d="M241.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M242.3 230.7l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M242.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M243.3 230.7l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M243.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M244.3 230.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M244.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M245.3 230.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M245.8 230.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M283.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M283.9 230.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M284.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M284.9 230.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M285.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M285.9 230.7l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M286.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M286.9 230.7l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M287.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M288.2 230.9l.4.1-.4-.1z"/>
+    <path fill="#184a8c" d="M292.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#5a6b63" d="M295 230.7l.4.5-.5-.5zm1 0l.4.5-.5-.5z"/>
+    <path fill="#295284" d="M297 230.7l.4.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M298 230.7l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M299.4 230.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M229.8 231.2l.4.5-.4-.5z"/>
+    <path fill="#001039" d="M230.3 231.2l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M240.8 231.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M241.3 231.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M241.8 231.2l-.5 1 .5-1z"/>
+    <path fill="#bdbdbd" d="M287.9 231.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M288.4 231.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M288.9 231.2l.5.5-.5-.5z"/>
+    <path fill="#395273" d="M294 231.2l.4.5-.5-.5z"/>
+    <path fill="#6b735a" d="M294.4 231.2l.5.5-.5-.5z"/>
+    <path fill="#deb518" d="M295 231.2l.4.5-.5-.5z"/>
+    <path fill="#bd9c29" d="M296 231.2l.4.5-.5-.5z"/>
+    <path fill="#7b7b52" d="M296.4 231.2l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M299 231.2l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M299.4 231.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M228.7 231.7l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M229.3 231.7l.4.4-.4-.4z"/>
+    <path fill="#001039" d="M230 232v.3-.3z"/>
+    <path fill="#00216b" d="M238.8 231.7l-.5 1 .5-1z"/>
+    <path fill="#00184a" d="M239.3 231.7l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M239.8 231.7l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M240.8 231.7l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M287.9 231.7l.5.4-.5-.4z"/>
+    <path fill="#212139" d="M288.4 231.7l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M288.9 231.7l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M289.6 232l.1.3-.1-.3z"/>
+    <path fill="#184a8c" d="M295 231.7l.4.4-.5-.4z"/>
+    <path fill="#9c8c42" d="M295.4 231.7l.5.4-.5-.4z"/>
+    <path fill="#295284" d="M297.4 231.7l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M299.4 231.7l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M300 231.7l.4.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M300.4 231.7l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M228.2 232.1l-1 1.5 1-1.5z"/>
+    <path fill="#10214a" d="M228.7 232.1l-1 1.5 1-1.5z"/>
+    <path fill="#003994" d="M229.3 232.1c-1.5 1.5-3.5 3.2-2.6 5.3-2.6 1.4-3 4.5-4 7.1l5.6 1 4-9-5.6.4v-.5l5-.4-2.4-3.9z"/>
+    <path fill="#002984" d="M236.3 232.1l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M236.8 232.1l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M237.6 232.3l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M238.8 232.1l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M241.3 232.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M287.9 232.1l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M288.4 232.1l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M291.4 232.1l.5.5-.5-.5z"/>
+    <path fill="#184a8c" d="M296 232.1l.4.5-.5-.5z"/>
+    <path fill="#395273" d="M296.4 232.1l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M300.4 232.1l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M301 232.1l1.4 1.5-1.5-1.5z"/>
+    <path fill="#00216b" d="M229.8 232.6l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M230.3 232.6l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M234.8 232.6l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M235.6 232.8l.3.1-.3-.1z"/>
+    <path fill="#00216b" d="M236.3 232.6l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M241.3 232.6l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M287.9 232.6l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M291.4 232.6l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M292 232.6l.4.5-.5-.5z"/>
+    <path fill="#00184a" d="M292.8 232.8l.3.1-.4-.1z"/>
+    <path fill="#00216b" d="M293.6 233l.1.3-.1-.4m7.3-.3l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M230.3 233.1l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M233.4 233.4l.2.3-.2-.3z"/>
+    <path fill="#00184a" d="M234 233.3l.4.1-.3-.1z"/>
+    <path fill="#00215a" d="M237.8 233.1l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M240.8 233.1l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M241.3 233.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M287.4 233.1l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M287.9 233.1l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M288.7 233.3l.4.1-.4-.1z"/>
+    <path fill="#00215a" d="M289.4 233.1l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M290 233.1l.4.5-.5-.5z"/>
+    <path fill="#00216b" d="M290.4 233.1l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M294.3 233.3l.3.1-.4-.1z"/>
+    <path fill="#00216b" d="M301.4 233.1l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M226.7 233.6l.5.4-.5-.4z"/>
+    <path fill="#212139" d="M227.2 233.6l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M230.3 233.6l.4.4-.4-.4z"/>
+    <path fill="#002984" d="M230.8 233.6l.4.4-.4-.4z"/>
+    <path fill="#00184a" d="M232.6 233.7l.3.2-.3-.2z"/>
+    <path fill="#00216b" d="M236.3 233.6l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M236.8 233.6l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M237.3 233.6l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M240.8 233.6l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M241.3 233.6l-.5 1 .5-1z"/>
+    <path fill="#7b7373" d="M287.4 233.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M287.9 233.6l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M288.4 233.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M290.4 233.6l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M291.2 233.7l.4.2-.4-.2z"/>
+    <path fill="#002984" d="M292 233.6l.4.4-.5-.4z"/>
+    <path fill="#00216b" d="M295 233.6l.4.4-.5-.4z"/>
+    <path fill="#00184a" d="M295.4 233.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M296 233.6l.4.4-.5-.4z"/>
+    <path fill="#00184a" d="M302 233.6l.4.4-.5-.4z"/>
+    <path fill="#cecece" d="M302.4 233.6l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M226.7 234l.5.5-.5-.4z"/>
+    <path fill="#002984" d="M232.3 234l.4.5-.4-.4z"/>
+    <path fill="#00184a" d="M235.6 234.2l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M236.3 234l.5.5-.5-.4z"/>
+    <path fill="#10214a" d="M240.3 234l.5.5-.5-.4z"/>
+    <path fill="#ada5a5" d="M288.4 234l.5.5-.5-.4z"/>
+    <path fill="#21315a" d="M288.9 234l.5.5-.5-.4z"/>
+    <path fill="#00216b" d="M292 234l.4.5-.5-.4z"/>
+    <path fill="#001039" d="M292.4 234l.5.5-.5-.4z"/>
+    <path fill="#002984" d="M293 234l.4.5-.5-.4z"/>
+    <path fill="#31425a" d="M302.4 234l.5.5-.5-.4z"/>
+    <path fill="#efefef" d="M303 234l.4.5-.5-.4z"/>
+    <path fill="#ada5a5" d="M226.2 234.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M226.7 234.5l.5.5-.5-.5m4 0l.6.5-.6-.5z"/>
+    <path fill="#00184a" d="M234.6 234.7l.3.2-.3-.2z"/>
+    <path fill="#00216b" d="M238.8 234.5l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M239.3 234.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M239.8 234.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M240.3 234.5l.5.5-.5-.5m48.6 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M289.4 234.5l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M290 234.5l.4.5-.5-.5z"/>
+    <path fill="#00216b" d="M290.4 234.5l.5.5-.5-.5m2.5 0l-.5 1 .5-1z"/>
+    <path fill="#001039" d="M293.4 234.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M294 234.5l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M303 234.5l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M225.7 235l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M226.2 235l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M231.8 235l.4.5-.4-.5m1 0l.4.5-.4-.5z"/>
+    <path fill="#00184a" d="M233.6 235.2l.3.1-.3-.1z"/>
+    <path fill="#002984" d="M236.3 235l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M236.8 235l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M237.3 235l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M237.8 235l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.3 235l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M238.8 235l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M290.4 235l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291 235l.4.5-.5-.5z"/>
+    <path fill="#525a6b" d="M291.4 235l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M292 235l.4.5-.5-.5z"/>
+    <path fill="#002984" d="M293 235l.4.5-.5-.5z"/>
+    <path fill="#003994" d="M293.4 235l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M294 235l.4.5-.5-.5z"/>
+    <path fill="#001039" d="M294.4 235l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M295 235l.4.5-.5-.5m2 0l.5.5-.5-.5m6 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M303.4 235l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M225.7 235.5l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M231.8 235.5l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M232.8 235.5l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M234.8 235.5l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M235.3 235.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M236.3 235.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M236.8 235.5l.5.5-.5-.5m55.6 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M293 235.5l.4.5-.5-.5z"/>
+    <path fill="#525a6b" d="M294 235.5l.4.5-.5-.5z"/>
+    <path fill="#21315a" d="M294.4 235.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M296.4 235.5l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M303.4 235.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M225.2 236l.5.4-.5-.4z"/>
+    <path fill="#10295a" d="M225.7 236l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M229.8 236l.4.4-.4-.4z"/>
+    <path fill="#21315a" d="M233.3 236l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M233.8 236l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M234.3 236l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M236.3 236l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M292 236l.4.4-.5-.4z"/>
+    <path fill="#9c9494" d="M292.4 236l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M294.3 236.1l.3.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M295 236l.4.4-.5-.4z"/>
+    <path fill="#292921" d="M295.4 236l.5.4-.5-.4z"/>
+    <path fill="#080829" d="M296 236l.4.4-.5-.4z"/>
+    <path fill="#00216b" d="M298.4 236l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M304 236l.4.4-.5-.4z"/>
+    <path fill="#63636b" d="M225.2 236.4l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M226.7 236.4l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M227.6 236.6l.3.2-.3-.2z"/>
+    <path fill="#00216b" d="M228.2 236.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M232.8 236.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M233.3 236.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M296.4 236.4l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M297 236.4l.4.5-.5-.5z"/>
+    <path fill="#00216b" d="M300 236.4l.4.5-.5-.5z"/>
+    <path fill="#00184a" d="M300.8 236.6l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M301.6 236.8l.2.3-.2-.3z"/>
+    <path fill="#212139" d="M304 236.4l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M224.7 237l.5.4-.5-.5z"/>
+    <path fill="#10214a" d="M231.8 237l.4.4-.4-.5z"/>
+    <path fill="#cecece" d="M232.3 237l-.6.9.6-1m64.6 0l1 1-1-1z"/>
+    <path fill="#10214a" d="M297.4 237l.5.4-.5-.5z"/>
+    <path fill="#00184a" d="M302 237l.4.4-.5-.5z"/>
+    <path fill="#00216b" d="M302.4 237l2 1.8-2-1.9z"/>
+    <path fill="#002984" d="M304 237l.4.4-.5-.5z"/>
+    <path fill="#9c9494" d="M304.4 237l.6.4-.6-.5z"/>
+    <path fill="#8c8c8c" d="M224.7 237.4l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M225.2 237.4l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M231.3 237.4l.4.5-.4-.5z"/>
+    <path fill="#101831" d="M298 237.4l.4.5-.5-.5z"/>
+    <path fill="#42425a" d="M304.4 237.4l.6.5-.6-.5z"/>
+    <path fill="#efefef" d="M224.2 237.9l.5.4-.5-.4z"/>
+    <path fill="#101829" d="M224.7 237.9l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M230.8 237.9l.4.4-.4-.4z"/>
+    <path fill="#9c9494" d="M231.3 237.9l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M235.8 237.9l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M236.3 237.9v.4h57.6l-17.5-.4h-40.1m61.6 0l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M298.4 237.9l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M304.4 237.9l.6.4-.6-.4z"/>
+    <path fill="#dedede" d="M305 237.9l.4.4-.4-.4z"/>
+    <path fill="#424242" d="M224.2 238.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M224.7 238.3l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M230.8 238.3l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M235.8 238.3l2.5 2.4-2.5-2.3z"/>
+    <path fill="#00216b" d="M236.3 238.3l1.5 1.5-1.5-1.5z"/>
+    <path fill="#003994" d="M236.8 238.3l4.2 5.3.3 18.6h4.5c0-6 1.3-12-3-16.7l6 3.8-2.5-7.1 14 13.3-10.5-16.2 10 12.9h.5v-13.9h-23.5z"/>
+    <path fill="#00184a" d="M260.3 238.3v14.4h.5l-.5-14.3z"/>
+    <path fill="#631808" d="M268.9 238.3v14.4h.5l-.5-14.3z"/>
+    <path fill="#de2110" d="M269.4 238.3v13.4l10.5-12.4-10.5 16.2 14.5-13.3-3 6.6 6-3.8c-3.2 6-3 10.4-3 17.2h4.5l.3-18.6 4.2-5.3h-23.5z"/>
+    <path fill="#b51010" d="M293 238.3l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M293.4 238.3l-1 1.5 1-1.5z"/>
+    <path fill="#8c8c8c" d="M298.4 238.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M299 238.3l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M305 238.3l.4.5-.4-.5z"/>
+    <path fill="#ada5a5" d="M223.7 238.8l.5.5-.5-.5z"/>
+    <path fill="#000818" d="M224.2 238.8l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M230.3 238.8l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M230.8 238.8l.4.5-.4-.5z"/>
+    <path fill="#ad1810" d="M292.4 238.8l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M299 238.8l.4.5-.5-.5z"/>
+    <path fill="#00184a" d="M304 238.8l.4.5-.5-.5z"/>
+    <path fill="#10214a" d="M305 238.8l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M305.4 238.8l.6.5-.6-.5z"/>
+    <path fill="#313931" d="M223.7 239.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M224.2 239.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M230.3 239.3l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M249.8 239.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M299 239.3l.4.5-.5-.5z"/>
+    <path fill="#00184a" d="M304.6 239.6l.2.3-.2-.3z"/>
+    <path fill="#9c9494" d="M305.4 239.3l.6.5-.6-.5m-82 .8l.2.3-.2-.3z"/>
+    <path fill="#292921" d="M223.7 239.8l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M229.8 239.8l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M230.3 239.8l.4.5-.4-.5z"/>
+    <path fill="#00215a" d="M237.8 239.8l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M249.8 239.8l.5.5-.5-.5z"/>
+    <path fill="#212139" d="M250.3 239.8l1 1-1-1z"/>
+    <path fill="#100808" d="M279.4 239.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M292 239.8l-3 3.3 3-3.3z"/>
+    <path fill="#efefef" d="M299 239.8l.4.5-.5-.5z"/>
+    <path fill="#10295a" d="M299.4 239.8l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M305.4 239.8l.6.5-.6-.5z"/>
+    <path fill="#10295a" d="M223.7 240.3l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M229.8 240.3l.4.4-.4-.4z"/>
+    <path fill="#001039" d="M238.3 240.3l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M249.8 240.3l.5.4-.5-.4z"/>
+    <path fill="#6b5a00" d="M250.3 240.3l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M278.4 240.3l.5.4-.5-.4z"/>
+    <path fill="#7b5a00" d="M278.9 240.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M299.4 240.3l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M305.4 240.3l.6.4-.6-.4z"/>
+    <path fill="#bdbdbd" d="M306 240.3l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M223.2 240.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M229.3 240.7l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M229.8 240.7l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M238.3 240.7l2.5 2.4-2.5-2.4z"/>
+    <path fill="#10214a" d="M238.8 240.7l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M250.3 240.7l.5.5-.5-.5z"/>
+    <path fill="#cea508" d="M251 241l.1.4-.1-.4z"/>
+    <path fill="#293129" d="M251.3 240.7l1 1-1-1z"/>
+    <path fill="#631808" d="M277.9 240.7l.5.5-.5-.5z"/>
+    <path fill="#634a00" d="M278.9 240.7l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M279.4 240.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M299.4 240.7l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M300 240.7l.4.5-.5-.5z"/>
+    <path fill="#636b7b" d="M306 240.7l.4.5-.4-.5z"/>
+    <path fill="#42425a" d="M223.2 241.2l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M229.3 241.2l.4.5-.4-.5z"/>
+    <path fill="#10214a" d="M239.3 241.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M250.3 241.2l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M251.3 241.2l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M277.4 241.2l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M278.4 241.2l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M278.9 241.2l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M300 241.2l.4.5-.5-.5z"/>
+    <path fill="#10214a" d="M306 241.2l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M222.7 241.7l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M223.2 241.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M229.3 241.7l.4.5-.4-.5z"/>
+    <path fill="#10214a" d="M239.8 241.7l.5.5-.5-.5z"/>
+    <path fill="#634a00" d="M250.8 241.7l.5.5-.5-.5z"/>
+    <path fill="#deb508" d="M251.3 241.7l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M251.8 241.7l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M277.4 241.7l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M278.9 241.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M300 241.7l.4.5-.5-.5z"/>
+    <path fill="#002984" d="M300.4 241.7l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M306 241.7l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M306.4 241.7l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M222.7 242.2l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M223.2 242.2l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M228.7 242.2l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M229.3 242.2l.4.4-.4-.4z"/>
+    <path fill="#10214a" d="M240.3 242.2l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M246.5 242.5l.1.3-.1-.3z"/>
+    <path fill="#10295a" d="M250.8 242.2l.5.4-.5-.4z"/>
+    <path fill="#000818" d="M251.3 242.2l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M251.8 242.2l1 1-1-1z"/>
+    <path fill="#00184a" d="M252.3 242.2l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M276.9 242.2l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M277.4 242.2l.5.4-.5-.4z"/>
+    <path fill="#210800" d="M277.9 242.2l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M278.4 242.2l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M282.9 242.2l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M283.4 242.2l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M288.9 242.2l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M300.4 242.2l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M306.4 242.2l.6.4-.6-.4z"/>
+    <path fill="#636b7b" d="M222.7 242.6l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M228.7 242.6l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M240.8 242.6l.5.5-.5-.5z"/>
+    <path fill="#102110" d="M246.8 242.6l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M247.3 242.6l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M251.8 242.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M252.8 242.6l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M276.4 242.6l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M277.2 242.8l.3.2-.3-.2z"/>
+    <path fill="#b51010" d="M277.9 242.6l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M281.9 242.6l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M282.4 242.6l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M282.9 242.6l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M288.4 242.6l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M300.4 242.6l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M306.4 242.6l.6.5-.6-.5z"/>
+    <path fill="#10214a" d="M222.7 243.1l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M228.7 243.1l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M240.8 243.1v19.6h.5c0-5.6 1.7-14.4-.5-19.6z"/>
+    <path fill="#634a00" d="M246.8 243.1l.5.5-.5-.5z"/>
+    <path fill="#8c7300" d="M247.3 243.1l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M247.8 243.1l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M251.8 243.1l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M252.3 243.1l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M252.8 243.1l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M275.9 243.1l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M276.4 243.1l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M276.9 243.1l-1 1.5 1-1.5z"/>
+    <path fill="#7b1008" d="M277.4 243.1l.5.5-.5-.5m4 0l.5.5-.5-.5z"/>
+    <path fill="#7b5a00" d="M281.9 243.1l.5.5-.5-.5z"/>
+    <path fill="#6b5a00" d="M282.4 243.1l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M282.9 243.1l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M288.4 243.1v19.1h.5c0-5.5 1.7-14-.5-19z"/>
+    <path fill="#8c8c8c" d="M300.4 243.1l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M306.4 243.1l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M307 243.1l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M222.2 243.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M222.7 243.6l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M228.2 243.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M228.7 243.6l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M246.8 243.6l.5.5-.5-.5z"/>
+    <path fill="#bd9408" d="M247.3 243.6l.5.5-.5-.5z"/>
+    <path fill="#cea508" d="M247.8 243.6l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M248.3 243.6l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M248.8 243.6l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M252.3 243.6l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M252.8 243.6l1 1-1-1z"/>
+    <path fill="#101829" d="M253.3 243.6l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M275.9 243.6l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M276.9 243.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M280.4 243.6l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M280.9 243.6l.5.5-.5-.5z"/>
+    <path fill="#bd9408" d="M281.4 243.6l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M281.9 243.6l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M282.4 243.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M300.4 243.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M301 243.6l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M307 243.6l.4.5-.4-.5m-84.8.5l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M228.2 244l.5.5-.5-.4z"/>
+    <path fill="#dedede" d="M228.7 244l.5.5-.5-.4z"/>
+    <path fill="#313918" d="M247.3 244l.5.5-.5-.4z"/>
+    <path fill="#ffce08" d="M247.8 244l.5.5-.5-.4z"/>
+    <path fill="#ad8c08" d="M248.3 244l.5.5-.5-.4z"/>
+    <path fill="#00215a" d="M248.8 244l.5.5-.5-.4z"/>
+    <path fill="#101829" d="M252.8 244l.5.5-.5-.4z"/>
+    <path fill="#00184a" d="M253.8 244l.5.5-.5-.4z"/>
+    <path fill="#941808" d="M275.4 244l.5.5-.5-.4z"/>
+    <path fill="#ce2110" d="M276.9 244l.5.5-.5-.4z"/>
+    <path fill="#ad1810" d="M280.4 244l.5.5-.5-.4z"/>
+    <path fill="#7b5a00" d="M280.9 244l.5.5-.5-.4z"/>
+    <path fill="#ffce08" d="M281.4 244l.5.5-.5-.4z"/>
+    <path fill="#634a00" d="M281.9 244l-.5 1 .5-1z"/>
+    <path fill="#ce2110" d="M282.4 244l.5.5-.5-.4z"/>
+    <path fill="#10214a" d="M301 244l.4.5-.5-.4z"/>
+    <path fill="#00216b" d="M302 244l.4.5-.5-.4z"/>
+    <path fill="#525a6b" d="M307 244l.4.5-.4-.4z"/>
+    <path fill="#bdbdbd" d="M221.7 244.6l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M222.2 244.6l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M222.7 244.6l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M223.2 244.6l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M223.7 244.6l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M224.2 244.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M224.7 244.6l.5.4-.5-.4z"/>
+    <path fill="#314a7b" d="M228.2 244.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M247.3 244.6l.5.4-.5-.4z"/>
+    <path fill="#423100" d="M247.8 244.6l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M248.3 244.6l.5.4-.5-.4z"/>
+    <path fill="#181000" d="M248.8 244.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M249.3 244.6l.5.4-.5-.4z"/>
+    <path fill="#181000" d="M253.3 244.6l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M253.8 244.6l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M254.3 244.6l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M274.9 244.6l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M276.4 244.6l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M279.9 244.6l-.5.9.5-1z"/>
+    <path fill="#211800" d="M280.9 244.6l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M281.9 244.6l.5.4-.5-.4z"/>
+    <path fill="#636b7b" d="M301 244.6l.4.4-.5-.4z"/>
+    <path fill="#000818" d="M302 244.6l.4.4-.5-.4z"/>
+    <path fill="#002984" d="M304.4 244.6l.6.4-.6-.4z"/>
+    <path fill="#00184a" d="M305 244.6l.4.4-.4-.4z"/>
+    <path fill="#314a7b" d="M305.4 244.6l.6.4-.6-.4z"/>
+    <path fill="#636b7b" d="M306 244.6l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M306.4 244.6l.6.4-.6-.4z"/>
+    <path fill="#cecece" d="M307 244.6l.4.4-.4-.4z"/>
+    <path fill="#bdbdbd" d="M222.7 245l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M223.2 245l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M223.7 245l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M225.2 245l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M225.7 245l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M226.2 245l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M228.2 245l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M229.3 245l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M229.8 245l.4.5-.4-.5z"/>
+    <path fill="#001039" d="M248.3 245l1.5 1.5-1.5-1.5z"/>
+    <path fill="#392100" d="M248.8 245l3.5 3.4-3.5-3.4z"/>
+    <path fill="#001010" d="M249.3 245l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M253.3 245l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M253.8 245l1.5 1.5-1.5-1.5z"/>
+    <path fill="#101810" d="M254.3 245l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M274.9 245l1 1-1-1z"/>
+    <path fill="#392100" d="M275.4 245l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M275.9 245l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M280.9 245l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M281.4 245l.5.5-.5-.5m5 0l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M301 245l.4.5-.5-.5z"/>
+    <path fill="#001000" d="M302 245l.4.5-.5-.5z"/>
+    <path fill="#00216b" d="M303 245l.4.5-.5-.5z"/>
+    <path fill="#21315a" d="M303.4 245l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M304 245l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M305.8 245.2l.3.1-.3-.1z"/>
+    <path fill="#cecece" d="M221.2 245.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M221.7 245.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M223.2 245.5l1 1-1-1z"/>
+    <path fill="#ada5a5" d="M223.7 245.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M224.2 245.5l1.5 1.9-1.5-1.9z"/>
+    <path fill="#9c9494" d="M224.7 245.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M225.6 245.7l.3.1-.3-.1z"/>
+    <path fill="#dedede" d="M226.2 245.5l-.5 1 .5-1z"/>
+    <path fill="#8c8c8c" d="M226.7 245.5l1.5 2.4-1.5-2.4z"/>
+    <path fill="#314a7b" d="M227.2 245.5l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M227.7 245.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M228.2 245.5l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M229.3 245.5l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M229.8 245.5l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M286 245.2l.6.4-.5-.4z"/>
+    <path fill="#000818" d="M243.3 245.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M243.8 245.5l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M249.8 245.5l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M253.8 245.5l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M274.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M274.9 245.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M279.4 245.5l-1 1.4 1-1.4z"/>
+    <path fill="#392100" d="M279.9 245.5l-1.5 1.9 1.5-1.9z"/>
+    <path fill="#ce2110" d="M280.9 245.5l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M285.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M285.9 245.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M286.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M295 245.8l.3.3-.2-.3z"/>
+    <path fill="#dedede" d="M297.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M298 245.5l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M301 245.5l.4.5-.5-.5z"/>
+    <path fill="#080829" d="M301.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M302 245.5l.4.5-.5-.5z"/>
+    <path fill="#424242" d="M302.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M303 245.5l1 1-1-1z"/>
+    <path fill="#cecece" d="M303.4 245.5l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M305 245.5l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M305.4 245.5l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M221.2 246l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M221.7 246l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M223.2 246l.5.5-.5-.5m3.5 0l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M227.6 246.1l.3.2-.3-.2z"/>
+    <path fill="#cecece" d="M228.7 246l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.3 246l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M229.8 246l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M230.3 246l.4.5-.4-.5z"/>
+    <path fill="#00184a" d="M243.3 246l.5.5-.5-.5z"/>
+    <path fill="#8c7300" d="M243.8 246l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M244.3 246l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M244.8 246l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M248.8 246v3.3h.5l-.5-3.3z"/>
+    <path fill="#001010" d="M250.3 246l.5.5-.5-.5m4 0l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M255.3 246l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M273.9 246l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M273.9 247l1.5-.5-1.5.4z"/>
+    <path fill="#bd2110" d="M275.4 246l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M279.9 246l-.5 1 .5-1z"/>
+    <path fill="#6b1821" d="M280.4 246l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M284.4 246l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M284.9 246l1 1-1-1z"/>
+    <path fill="#8c7300" d="M285.4 246l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M285.9 246l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M295.4 246l-.5 1 .5-1z"/>
+    <path fill="#101810" d="M298 246l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M298.4 246l.5.5-.5-.5m2.4.1l.3.2-.3-.2z"/>
+    <path d="M301.4 246l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M302 246l.4.5-.5-.5z"/>
+    <path fill="#313931" d="M302.4 246l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M303 246l.4.5-.5-.5z"/>
+    <path fill="#52525a" d="M305 246l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M305.4 246l.6.5-.6-.5z"/>
+    <path fill="#7b7373" d="M221.2 246.4l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M222 246.6l.4.2-.3-.2m2 0l.3.2-.3-.2z"/>
+    <path fill="#ada5a5" d="M225.7 246.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M226.2 246.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M227.2 246.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M228.2 246.4l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M228.7 246.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229.3 246.4l.4.5-.4-.5z"/>
+    <path fill="#428c00" d="M229.8 246.4l-1 3.9h-.6l1-3.4h-.4l-.6 3.8 2-1-2.4 3.9 2-1.4-2.6 1.9-.4 2.4h.4l5-5.8-1.4.5v-.5l1.4-.4v-.5h-2l-.4-3.4z"/>
+    <path fill="#5a6b52" d="M230.3 246.4l.4.5-.4-.5z"/>
+    <path fill="#102121" d="M243.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#efbd08" d="M244.3 246.4l.5.5-.5-.5z"/>
+    <path fill="#ad8c08" d="M244.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#102121" d="M245.3 246.4l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M245.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M249.3 246.4c0 3.9 2.3 5.6 5.5 7.7-.2-3.2-3-5.7-5.5-7.7z"/>
+    <path fill="#001010" d="M249.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M250.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M254.3 246.4l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M255.2 246.6l.3.2-.3-.2z"/>
+    <path fill="#002984" d="M255.8 246.4l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M273.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M274.4 246.4l-1 1.5 1-1.5z"/>
+    <path fill="#941808" d="M274.9 246.4l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M279.9 246.4l-5 7.7c2.7-1.7 6.5-4.1 5-7.7z"/>
+    <path fill="#ce2110" d="M283.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#6b2908" d="M283.9 246.4l.5.5-.5-.5z"/>
+    <path fill="#9c7b08" d="M284.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M284.9 246.4l-.5 1 .5-1z"/>
+    <path fill="#ce2110" d="M285.9 246.4l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M298 246.4l1 1-1-1z"/>
+    <path fill="#8c8c8c" d="M298.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M300.8 246.6l.3.2-.3-.2z"/>
+    <path fill="#103910" d="M301.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M302 246.4l.4 10h.5l1.5-8.5h-.5l-1 5.7h-.5l-.5-7.2z"/>
+    <path fill="#424242" d="M302.4 246.4l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M303 246.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M304.4 246.4l.6.5-.6-.5z"/>
+    <path fill="#7b7373" d="M305.4 246.4l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M306.4 246.4l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M307 246.4l-.6 1 .6-1z"/>
+    <path fill="#ada5a5" d="M308.5 246.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M221.2 247l1.5 1.4-1.5-1.5z"/>
+    <path fill="#cecece" d="M222.2 247l.5 1.4h.5l-1-1.5z"/>
+    <path fill="#9c9494" d="M222.7 247l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M224.2 247l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M224.7 247l-.5.9.5-1z"/>
+    <path fill="#425242" d="M225.7 247l.5.4-.5-.5z"/>
+    <path fill="#213918" d="M226.2 247l.5.4-.5-.5z"/>
+    <path fill="#ada5a5" d="M226.7 247l.5.4-.5-.5z"/>
+    <path fill="#63636b" d="M228.2 247l.5.4-.5-.5z"/>
+    <path fill="#294200" d="M229.4 247.3l.2.3-.2-.4z"/>
+    <path fill="#295200" d="M230.3 247l.4.4-.4-.5z"/>
+    <path fill="#dedede" d="M230.8 247l.4.4-.4-.5z"/>
+    <path fill="#4a4208" d="M244.3 247l.5.4-.5-.5z"/>
+    <path fill="#ffce08" d="M244.8 247l.5.4-.5-.5z"/>
+    <path fill="#bd9408" d="M245.3 247l.5.4-.5-.5z"/>
+    <path fill="#00184a" d="M245.8 247l.5.4-.5-.5z"/>
+    <path fill="#001010" d="M250.3 247l.5.4-.5-.5z"/>
+    <path fill="#001039" d="M251.3 247l.5.4-.5-.5z"/>
+    <path fill="#00215a" d="M254.8 247l.5.4-.5-.5z"/>
+    <path fill="#392100" d="M255.3 247l1 .9-1-1z"/>
+    <path fill="#001010" d="M255.8 247l.5.4-.5-.5z"/>
+    <path fill="#efefef" d="M265.8 247l.5.4-.5-.5z"/>
+    <path fill="#420000" d="M273.4 247l.5.4-.5-.5z"/>
+    <path fill="#5a1008" d="M274.4 247l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M277.9 247l.5.4-.5-.5z"/>
+    <path fill="#181000" d="M278.9 247l-1 1.4 1-1.5z"/>
+    <path fill="#002984" d="M279.4 247l.5.4-.5-.5z"/>
+    <path fill="#941808" d="M283.4 247l.5.4-.5-.5z"/>
+    <path fill="#7b5a00" d="M283.9 247l.5.4-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M285.4 247l.5.4-.5-.5z"/>
+    <path fill="#bdbdbd" d="M295 247l.4.4-.5-.5z"/>
+    <path fill="#103910" d="M295.4 247l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M296 247l.4.4-.5-.5z"/>
+    <path fill="#4a6342" d="M298 247l.4.4-.5-.5z"/>
+    <path fill="#7b7373" d="M301 247l.4.4-.5-.5z"/>
+    <path fill="#185200" d="M301.4 247l.5.4-.5-.5z"/>
+    <path fill="#7b8c73" d="M302.4 247l.5.4-.5-.5z"/>
+    <path fill="#395231" d="M304 247l.4.4-.5-.5z"/>
+    <path fill="#319400" d="M304.4 247l.6.4-.6-.5z"/>
+    <path fill="#9c9494" d="M307 247l.4.4-.4-.5z"/>
+    <path fill="#63636b" d="M308 247l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M308.5 247l.5.4-.5-.5z"/>
+    <path fill="#7b7373" d="M221.2 247.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M224.7 247.4l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M225.2 247.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.7 247.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.2 247.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M226.7 247.4l1 1-1-1z"/>
+    <path fill="#397b00" d="M228.2 247.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M230.8 247.4l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M244.3 247.4l1 1-1-1z"/>
+    <path fill="#6b5a00" d="M244.8 247.4l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M245.3 247.4l1.5 1-1.5-1z"/>
+    <path fill="#00216b" d="M246.3 247.4l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M250.8 247.4l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M251.8 247.4l.5.5-.5-.5m3.5 0l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M256.3 247.4l.5.5-.5-.5z"/>
+    <path fill="#bd9408" d="M264.3 247.4v.5l1 1.9h.5l-1.5-2.4z"/>
+    <path fill="#7b1008" d="M272.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M273.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M274.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M277.4 247.4l-.5 1 .5-1z"/>
+    <path fill="#211800" d="M277.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M278.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M282.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M283.4 247.4l-1 1.4 1-1.4z"/>
+    <path fill="#181000" d="M283.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#6b5a00" d="M284.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M284.9 247.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M295 247.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M295.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M296 247.4l.4.5-.5-.5z"/>
+    <path fill="#6b735a" d="M298 247.4l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M299 247.4l.4.5-.5-.5z"/>
+    <path fill="#313931" d="M301 247.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M301.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M302.4 247.4v2.4h.5l-.5-2.4z"/>
+    <path fill="#7b7373" d="M303.4 247.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M304.3 247.6l.3.1-.3-.1z"/>
+    <path fill="#63636b" d="M305 247.4l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M305.4 247.4l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M306.3 247.6l.3.1-.3-.1z"/>
+    <path fill="#8c8c8c" d="M307 247.4l-.6 1 .6-1z"/>
+    <path fill="#7b7373" d="M307.4 247.4l.6.5-.6-.5z"/>
+    <path fill="#103910" d="M308 247.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M308.5 247.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M220.7 247.9l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M221.2 247.9l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M223.2 247.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M224.7 247.9l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M225.2 247.9l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.7 247.9v1.4l1.5-.5v-.4l-1.5-.5z"/>
+    <path fill="#213918" d="M226.7 247.9l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M227.7 247.9l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229 248l.4.2-.3-.2z"/>
+    <path fill="#8c8c8c" d="M230.8 247.9l.4.5-.4-.5z"/>
+    <path fill="#00216b" d="M245.3 247.9l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M246.8 247.9l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M250.8 247.9l1.5 1.4-1.5-1.4z"/>
+    <path fill="#181000" d="M251.3 247.9l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M252.3 247.9l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M255.8 247.9l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M256.5 248.2l.2.3-.2-.3z"/>
+    <path fill="#00216b" d="M256.8 247.9l.5.5-.5-.5z"/>
+    <path fill="#7b5a00" d="M263.8 247.9v1.9h.5l-.5-2z"/>
+    <path fill="#ffce08" d="M264.3 247.9v2.4h-2v1.4h2v5.7h.5l.5-5.7h2.5v-1.4h-2.5v-2.4h-1z"/>
+    <path fill="#b51010" d="M272.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M273.2 248l.3.2-.3-.2z"/>
+    <path fill="#b51010" d="M273.9 247.9l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M277.4 247.9l-1.5 1.9 1.5-2z"/>
+    <path fill="#002984" d="M278.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M282.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M283.9 247.9l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M284.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M295.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M296 247.9l.4.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M296.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M298 247.9l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M298.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M299 247.9l.4.5-.5-.5z"/>
+    <path fill="#52525a" d="M301 247.9l.4.5-.5-.5z"/>
+    <path fill="#395231" d="M303.4 247.9l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M304.4 247.9l.6.5-.6-.5z"/>
+    <path fill="#424242" d="M305 247.9l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M305.4 247.9l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M306 247.9l.4.5-.4-.5z"/>
+    <path fill="#52525a" d="M307 247.9l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M307.4 247.9l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M308 247.9l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M221.7 248.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M222.2 248.4l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M223 248.5l.4.2-.3-.2z"/>
+    <path fill="#9c9494" d="M223.7 248.4l.5.4-.5-.4z"/>
+    <path fill="#424242" d="M224.7 248.4l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M225.2 248.4c-1.3 2.9-1.1 4.7 0 7.6h1l1-7.2h-.5l-.5 5.8h-1v-6.2z"/>
+    <path fill="#313931" d="M227.2 248.4l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M229 248.7v.3-.3z"/>
+    <path fill="#6b735a" d="M230.8 248.4l.4.4-.4-.4z"/>
+    <path fill="#00216b" d="M245.8 248.4l1 1-1-1z"/>
+    <path fill="#100808" d="M246.3 248.4l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M246.8 248.4l2 1.9-2-2z"/>
+    <path fill="#001039" d="M247.3 248.4l.5.4-.5-.4z"/>
+    <path fill="#181000" d="M251.8 248.4l1 1-1-1z"/>
+    <path fill="#211800" d="M252.3 248.4l2 2.3-2-2.3z"/>
+    <path fill="#00216b" d="M252.8 248.4l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M255.8 248.4l.5.4-.5-.4z"/>
+    <path fill="#181000" d="M256.8 248.4l.5.4-.5-.4z"/>
+    <path fill="#311000" d="M272.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M272.9 248.4l-.5 1 .5-1z"/>
+    <path fill="#7b1008" d="M273.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M276.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M277.9 248.4l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M281.9 248.4l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M283.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#5a6b52" d="M295.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M296 248.4l.4.4-.5-.4z"/>
+    <path fill="#103910" d="M296.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M297 248.4l.4.4-.5-.4z"/>
+    <path fill="#9c9494" d="M298 248.4l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M298.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M299 248.4l.4.4-.5-.4z"/>
+    <path fill="#cecece" d="M299.4 248.4l.5.4-.5-.4z"/>
+    <path fill="#315221" d="M301 248.4l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M303.4 248.4l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M305 248.4l.4.4-.4-.4z"/>
+    <path fill="#efefef" d="M305.8 248.5l.3.2-.3-.2z"/>
+    <path fill="#ada5a5" d="M306.4 248.4l.6.4-.6-.4z"/>
+    <path fill="#214210" d="M307 248.4l.4.4-.4-.4z"/>
+    <path fill="#296300" d="M307.4 248.4l.6.4-.6-.4z"/>
+    <path fill="#bdbdbd" d="M308 248.4l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M224.7 248.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M227.2 248.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M230.8 248.8l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M245.8 248.8v13.4h-4.5v.5l5-.5v2.4h.5c0-4.1 1.6-12.4-1-15.8z"/>
+    <path fill="#001010" d="M246.8 248.8l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M253.3 248.8l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M256.3 248.8l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M256.8 248.8l1 1-1-1z"/>
+    <path fill="#101829" d="M257.3 248.8l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M271.9 248.8l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M272.9 248.8l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M275.9 248.8l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M277.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M280.9 248.8l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M281.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M281.9 248.8l-1.5 2 1.5-2z"/>
+    <path fill="#181000" d="M282.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M282.9 248.8l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M283.4 248.8v13.4h.5l-.5-13.4z"/>
+    <path fill="#8c8c8c" d="M295.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M296.3 249l.3.2-.3-.2z"/>
+    <path fill="#52525a" d="M297 248.8l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M298 248.8l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M299 248.8l2 12h.4a15 15 0 00-2.5-12z"/>
+    <path fill="#63636b" d="M299.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M300.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M301 248.8l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M303.4 248.8l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M304.4 248.8l.6.5-.6-.5z"/>
+    <path fill="#314231" d="M306.4 248.8l.6.5-.6-.5z"/>
+    <path fill="#319400" d="M307 248.8l.4.5-.4-.5z"/>
+    <path fill="#294221" d="M307.4 248.8l.6.5-.6-.5z"/>
+    <path fill="#efefef" d="M223.7 249.3l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M224.2 249.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.9 249.6l.2.4-.2-.4z"/>
+    <path fill="#294200" d="M227.2 249.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.6 249.5l.3.1-.3-.1z"/>
+    <path fill="#294200" d="M230.3 249.3l.4.5-.4-.5z"/>
+    <path fill="#315221" d="M231 249.5l.4.1-.3-.1z"/>
+    <path fill="#294200" d="M231.8 249.3l.4.5-.4-.5z"/>
+    <path fill="#8c8442" d="M232.3 249.3l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M232.8 249.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M233.3 249.3l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M246.8 249.3c0 3.6-1.8 13 .5 15.9 1 1.3 3.5 1.4 5 1.8 0-7.3 1.5-13.1-5.5-17.7z"/>
+    <path fill="#101829" d="M247.3 249.3l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M248.3 249.3l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M248.8 249.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M252.3 249.3l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M256.8 249.3l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M257.8 249.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M271.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M271.4 250.3l1.5-1-1.5 1z"/>
+    <path fill="#ce2110" d="M272.9 249.3l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M275.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M276.9 249.3l.5.5-.5-.5z"/>
+    <path fill="#5a1831" d="M280.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M280.9 249.3l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M281.9 249.3l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M277.4 267c1.6-.4 4-.6 5.2-1.8 2.6-2.6.8-12.4.8-15.9-7.8 3.5-6 10.8-6 17.7z"/>
+    <path fill="#dedede" d="M295.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M296 249.3l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M296.4 249.3l4 15.3h-.5c-.8-2.7-4-12.9-8-9 5.4.1 7.2 9.2 8 13.3h.5l6.6-19.1h-.6l-5 12.4h-.5c-1.3-4-1.2-9.8-4.5-12.9z"/>
+    <path fill="#296300" d="M297 249.3l.4.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M297.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M298 249.3l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M298.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M299.4 249.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M300 249.3l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M300.4 249.3l-.5 1 .5-1z"/>
+    <path fill="#297b00" d="M301 249.3l.4.5-.5-.5z"/>
+    <path fill="#395231" d="M303 249.3l.4.5-.5-.5z"/>
+    <path fill="#4a6342" d="M304.4 249.3l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M306 249.3l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M306.8 249.5l.3.1-.3-.1z"/>
+    <path fill="#8c8c8c" d="M307.4 249.3l.6.5-.6-.5z"/>
+    <path fill="#7b7373" d="M223.7 249.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M227.2 249.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M228.2 249.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229.3 249.8l-2 .5v.4l2-1z"/>
+    <path fill="#103900" d="M229.8 249.8l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.4 250.1l.2.3-.2-.3z"/>
+    <path fill="#428c00" d="M232.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M233.3 249.8l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M233.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M247.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M248.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M249.3 249.8l1 1-1-1m3.5 0l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M253.8 249.8l1.5 1.4-1.5-1.4z"/>
+    <path fill="#002984" d="M254.3 249.8l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M257.6 250l.4.1-.4-.2z"/>
+    <path fill="#002984" d="M258.3 249.8l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M261.3 249.8l.5.5-.5-.5z"/>
+    <path fill="#ada584" d="M261.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#9c7b08" d="M263.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#cea508" d="M265.3 249.8l.5.5-.5-.5z"/>
+    <path fill="#9c9463" d="M265.8 249.8l.5.5-.5-.5z"/>
+    <path fill="#bdb584" d="M266.3 249.8v.5h1.5l-1.5-.5z"/>
+    <path fill="#bdbdbd" d="M267.9 249.8l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M270.9 249.8l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M272.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M274.9 249.8l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M275.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M275.9 249.8l-1 1.4 1-1.4z"/>
+    <path fill="#00184a" d="M276.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M279.9 249.8l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M280.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#101829" d="M281.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M293.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M294 249.8l.4.5-.5-.5z"/>
+    <path fill="#315221" d="M296 249.8l.4.5-.5-.5z"/>
+    <path fill="#103910" d="M297.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M298 249.8l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M298.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M299.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M300.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M302.4 249.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M303 249.8l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M304.4 249.8l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M305.4 249.8l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M306 249.8l.4.5-.4-.5m1 0l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M307.4 249.8l.6.5-.6-.5z"/>
+    <path fill="#5a5231" d="M223.7 250.3l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M225.7 250.3v1.4h.5l-.5-1.4m3.6 0l.4.4-.4-.4m2.3.1l.3.2-.3-.2z"/>
+    <path fill="#214210" d="M232.8 250.3l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M233.3 250.3l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M248.3 250.3l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M248.8 250.3v.4l1.5.5-1.5-1z"/>
+    <path fill="#00216b" d="M253.3 250.3l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M254.8 250.3l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M257.3 250.3l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M257.8 250.3l1.5 1.4-1.5-1.4z"/>
+    <path fill="#101810" d="M258.3 250.3l.5.4-.5-.4z"/>
+    <path fill="#bd9408" d="M261.8 250.3v1.4h.5l-.5-1.4z"/>
+    <path fill="#310000" d="M270.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M271.4 250.3l-.5 1 .5-1z"/>
+    <path fill="#631808" d="M271.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M274.4 250.3l-.5 1 .5-1z"/>
+    <path fill="#311000" d="M274.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M275.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M279.4 250.3l-.5 1 .5-1z"/>
+    <path fill="#181000" d="M279.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M280.9 250.3l.5.4-.5-.4z"/>
+    <path fill="#101810" d="M294 250.3l.4.4-.5-.4z"/>
+    <path fill="#efefef" d="M294.4 250.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M296 250.3l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M297.4 250.3l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M298 250.3l.4.4-.5-.4z"/>
+    <path fill="#315221" d="M298.4 250.3l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M300 250.3l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M300.4 250.3l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M302.4 250.3v2.8h.5l-.5-2.8z"/>
+    <path fill="#297b00" d="M303 250.3l.4.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M304.4 250.3l.6.4-.6-.4z"/>
+    <path fill="#63636b" d="M305.4 250.3l.6.4-.6-.4z"/>
+    <path fill="#297b00" d="M306 250.3l.4.4-.4-.4z"/>
+    <path fill="#5a6b52" d="M307 250.3l.4.4-.4-.4z"/>
+    <path fill="#294200" d="M223.7 250.8l.5.4-.5-.4m4 0l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M230.8 250.8l.4.4-.4-.4z"/>
+    <path fill="#397b00" d="M231.3 250.8l.4.4-.4-.4z"/>
+    <path fill="#294200" d="M232.3 250.8l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M232.8 250.8l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M248.8 250.8l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M250.3 250.8l1 .9-1-1z"/>
+    <path fill="#00184a" d="M253.8 250.8l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M254.3 250.8l4 3.8-4-3.9z"/>
+    <path fill="#001039" d="M257.8 250.8l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M270.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#311000" d="M271.4 250.8l.5.4-.5-.4m3 0l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M275.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M278.9 251.7l1.5-.5-1.5.5z"/>
+    <path fill="#00215a" d="M280.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M294 250.8l.4.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M294.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M296 250.8l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M296.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#295210" d="M298 250.8l.4.4-.5-.4z"/>
+    <path fill="#395231" d="M298.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M300 250.8l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M300.4 250.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M304 250.8l.4.4-.5-.4z"/>
+    <path fill="#9c9494" d="M304.4 250.8l.6.4-.6-.4z"/>
+    <path fill="#dedede" d="M305 250.8l.4.4-.4-.4z"/>
+    <path fill="#184a00" d="M305.4 250.8l.6.4-.6-.4z"/>
+    <path fill="#296300" d="M306.4 250.8l.6.4-.6-.4z"/>
+    <path fill="#ada5a5" d="M307 250.8l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M223.2 251.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M223.7 251.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M227.7 251.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M228.2 251.2l-.5 1.5h.5v-1.5m2 0l-.5 1 .5-1z"/>
+    <path fill="#397b00" d="M231.8 251.2l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M232.3 251.2l.4.5-.4-.5m2 0l.4.5-.4-.5z"/>
+    <path fill="#002984" d="M249.3 251.2l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M250.3 251.2l2 2-2-2z"/>
+    <path fill="#001039" d="M254.3 251.2l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M255.3 251.2l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M258.3 251.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M259.3 251.2l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M269.9 251.2l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M269.9 252.2l1.5-.5-1.5.5z"/>
+    <path fill="#bd2110" d="M271.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M273.9 251.2l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M274.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#101829" d="M274.9 251.2l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M278.4 251.2l-.5 1 .5-1z"/>
+    <path fill="#181000" d="M279.4 251.2l-.5 1 .5-1z"/>
+    <path fill="#00216b" d="M279.9 251.2l.5.5-.5-.5z"/>
+    <path fill="#426331" d="M294 251.2l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M294.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M295 251.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M296.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 251.2l.4.5-.5-.5z"/>
+    <path fill="#001000" d="M298.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M300.4 251.2l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M304 251.2l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M304.4 251.2l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M305 251.2l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M305.4 251.2l.6.5-.6-.5z"/>
+    <path fill="#315221" d="M306.4 251.2l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M223.4 252l.2.3-.2-.3z"/>
+    <path fill="#295200" d="M225.7 251.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M227.4 252l.2.3-.2-.3m.8-.3l.6.5-.6-.5z"/>
+    <path fill="#425242" d="M231.8 251.7l.4.5-.4-.5z"/>
+    <path fill="#001000" d="M234.3 251.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M234.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M238.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M239.3 251.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M239.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M250.3 251.7l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M254.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M255.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M258.3 251.7l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M259.2 251.9l.3.1-.3-.1z"/>
+    <path fill="#dedede" d="M261.3 251.7l.5.5-.5-.5z"/>
+    <path fill="#ada584" d="M261.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#9c7b08" d="M263.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#cea508" d="M265.3 251.7l.5.5-.5-.5z"/>
+    <path fill="#9c9463" d="M265.8 251.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M267.9 251.7l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M269.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M270.4 251.7l-1 1.4 1-1.4z"/>
+    <path fill="#941808" d="M270.9 251.7l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M273.4 251.7l-1 1.4 1-1.4z"/>
+    <path fill="#392100" d="M273.9 251.7l-1 1.4 1-1.4z"/>
+    <path fill="#001010" d="M274.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M278.4 251.7l-1.5 1.9 1.5-1.9z"/>
+    <path fill="#002984" d="M279.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M294 251.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M294.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M295 251.7l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M296.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M298.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M300.4 251.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M301 251.7l-.6 1 .5-1z"/>
+    <path fill="#185200" d="M304 251.7l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M304.4 251.7l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M305 251.7l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M306 251.7l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M306.4 251.7l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M308 251.7l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M308.5 251.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M309 251.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M309.5 251.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.2 252.2v2.4h1v-2.4h-1z"/>
+    <path fill="#103900" d="M229.3 252.2l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.3 252.2l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M231.8 252.2l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M233.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M234.3 252.2l1 1-1-1z"/>
+    <path fill="#425242" d="M234.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M237.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M238.3 252.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M238.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M239.3 252.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M239.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M250.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M251.8 252.2l1 1-1-1z"/>
+    <path fill="#002984" d="M252.3 252.2l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M255.3 252.2l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M256.3 252.2l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M258.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M259.3 252.2l1 1-1-1z"/>
+    <path fill="#001010" d="M259.8 252.2l.5.5-.5-.5z"/>
+    <path fill="#7b5a00" d="M263.8 252.2v5.2h.5l-.5-5.2z"/>
+    <path fill="#420000" d="M269.4 252.2l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M270.4 252.2l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M273.9 252.2l.5.5-.5-.5z"/>
+    <path fill="#314a7b" d="M274.4 252.2l.5.5-.5-.5z"/>
+    <path fill="#001010" d="M277.4 252.2l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M294 252.2l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M294.4 252.2l2.5 4.3h.5l-3-4.3z"/>
+    <path fill="#296300" d="M295 252.2l.4.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M295.4 252.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296.4 252.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M297 252.2l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 252.2l1 1-1-1z"/>
+    <path fill="#297b00" d="M299 252.2l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M301 252.2l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M304 252.2l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M304.4 252.2l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M305 252.2l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M306 252.2l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M306.4 252.2l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M307.4 252.2l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M308 252.2l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M305.4 255.5l5-1.4-1-2-4 3.4z"/>
+    <path fill="#214210" d="M309.5 252.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M310 252.2l.5.5-.5-.5m-86.8.5l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M223.7 252.7l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M227.4 253l.2.3-.2-.3m1.3-.4l.6.5-.6-.4z"/>
+    <path fill="#397b00" d="M229.3 252.7l.4.4-.4-.4z"/>
+    <path fill="#425242" d="M231.3 252.7l.4.4-.4-.4z"/>
+    <path fill="#bdbdbd" d="M233.8 252.7l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M234.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M235.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M237.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M237.8 252.7l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M236.3 259.8h-.5v-5.2h-.5l-.5 2.4h-.5v-2.4h-.5l-3 11h.4l1-2h.5l-1 2.4h.5l2.5-3.3-2 4.3h.5l5.1-7.2 1-7.1c-3.3 1.5-3 4-3 7.1z"/>
+    <path fill="#63636b" d="M239.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M251.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M252.8 252.7l1 1-1-1z"/>
+    <path fill="#efefef" d="M255.3 252.7l1.5 1.4-1.5-1.4z"/>
+    <path fill="#313931" d="M255.8 252.7l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M256.8 252.7l.5.4-.5-.4z"/>
+    <path fill="#101829" d="M259.3 252.7l.5.4-.5-.4z"/>
+    <path d="M260.3 252.7l.5.4-.5-.4z"/>
+    <path fill="#210800" d="M268.9 252.7l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M270.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#292921" d="M273.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M273.9 252.7l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M276.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#181000" d="M276.9 252.7l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M277.9 252.7l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M294 253l.2.3-.1-.3z"/>
+    <path fill="#297b00" d="M294.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#103910" d="M295.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M296 252.7l.4.4-.5-.4z"/>
+    <path fill="#dedede" d="M296.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M297 252.7l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M298.4 252.7l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M301 252.7l.4.4-.5-.4z"/>
+    <path fill="#294221" d="M304 252.7l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M304.4 252.7l.6.4-.6-.4z"/>
+    <path fill="#425242" d="M306 252.7l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M307 252.7l-1 1.4 1-1.4z"/>
+    <path fill="#297b00" d="M307.4 252.7l.6.4-.6-.4z"/>
+    <path fill="#425242" d="M310 252.7l.5.4-.5-.4z"/>
+    <path fill="#396b10" d="M223.7 253.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M228.2 253.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.7 253.1l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M230.8 253.1l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M231.3 253.1l-.6 1 .6-1z"/>
+    <path fill="#7b7373" d="M233.8 253.1l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M234.6 253.3l.3.1-.3-.1z"/>
+    <path fill="#7b7373" d="M235.3 253.1l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M236.8 253.1l-.5 1 .5-1z"/>
+    <path fill="#397b00" d="M237.3 253.1l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M239.3 253.1l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M251.8 253.1l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M252.6 253.3l.4.1-.4-.1z"/>
+    <path fill="#313931" d="M256.3 253.1l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M257.3 253.1l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M259.8 253.1l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M260.5 253.4l.2.4-.2-.4z"/>
+    <path fill="#bdbdbd" d="M260.8 253.1l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M268.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M269.9 253.1l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M271.9 253.1l-1 1.5 1-1.5z"/>
+    <path fill="#211800" d="M272.4 253.1l-2.5 2.9 2.5-2.9z"/>
+    <path fill="#212118" d="M272.9 253.1l-.5 1 .5-1z"/>
+    <path fill="#cecece" d="M273.4 253.1l-1 1.5 1-1.5z"/>
+    <path fill="#00216b" d="M275.9 253.1l-.5 1 .5-1z"/>
+    <path fill="#181000" d="M276.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M277.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M293 253.1l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M293.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 253.1l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M296 253.1l.4.5-.5-.5z"/>
+    <path fill="#395231" d="M297 253.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M299 253.1v1.5h.4l-.5-1.5z"/>
+    <path fill="#296300" d="M301.3 253.3l.3.1-.3-.1m1.1-.2l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M304 253.1l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M304.4 253.1l.6.5-.6-.5m1 0l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M306 253.1l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M307 253.1l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M310 253.1l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M310.5 253.1l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M223.7 253.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.7 253.6v.5h1.5l-1.5-.5z"/>
+    <path fill="#294200" d="M228.2 253.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.8 253.6l.4.5-.4-.5z"/>
+    <path fill="#52525a" d="M230.3 253.6l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M233.3 253.6l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M233.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M233.8 254v.6l1.5.4v-1.4l-1.5.5z"/>
+    <path fill="#5a5231" d="M235.3 253.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M236.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M238.6 253.8l.3.1-.3-.1z"/>
+    <path fill="#dedede" d="M239.3 253.6l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M252.3 253.6l.5.5-.5-.5z"/>
+    <path fill="#212118" d="M252.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M253.3 253.6l2 2-2-2z"/>
+    <path fill="#001039" d="M253.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M256.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M257.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M259.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#211810" d="M260.8 253.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M261.3 253.6l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M268.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M268.9 253.6l-.5 1 .5-1z"/>
+    <path fill="#631808" d="M269.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M276.2 253.8l.3.1-.3-.1z"/>
+    <path fill="#313931" d="M276.9 253.6l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M292.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293 253.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M293.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#295210" d="M294 253.6l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M294.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M296 253.6l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296.4 253.6l1 1-1-1z"/>
+    <path fill="#8c8c8c" d="M297 253.6l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301.4 253.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M303.4 253.6l1 1-1-1z"/>
+    <path fill="#184a00" d="M304 253.6l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M305.4 253.6l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M306.4 253.6l.6.5-.6-.5m1 0l-3 2v.4l1 .5 2-2.9z"/>
+    <path fill="#214210" d="M308 253.6l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M308.5 253.6l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M309 253.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M309.5 253.6l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M310.5 253.6l-.5 1 .5-1z"/>
+    <path fill="#bdbdbd" d="M223.7 254l.5.6-.5-.5z"/>
+    <path fill="#295200" d="M224.2 254l.5.6-.5-.5z"/>
+    <path fill="#103900" d="M226.7 254l.5.6-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.7 254l-.5 1 .5-1z"/>
+    <path fill="#5a5231" d="M229.3 254l.4.6-.4-.5z"/>
+    <path fill="#bdbdbd" d="M229.8 254l.4.6-.4-.5z"/>
+    <path fill="#9c9494" d="M233.3 254l.5.6-.5-.5z"/>
+    <path fill="#295200" d="M235.3 254l1 1-1-1z"/>
+    <path fill="#52525a" d="M235.8 254l.5.6-.5-.5z"/>
+    <path fill="#397b00" d="M236.3 254l.5.6-.5-.5z"/>
+    <path fill="#294200" d="M238 254.4l.1.3-.2-.3m.9-.3v3.3h.5l-.5-3.3z"/>
+    <path fill="#8c8c8c" fill-opacity=".5" d="M252.3 254v13h.5l-.5-13z"/>
+    <path fill="#cecece" d="M252.8 254l.5.6-.5-.5z"/>
+    <path fill="#211810" d="M253.3 254l.5.6-.5-.5z"/>
+    <path fill="#001039" d="M254.3 254l.5.6-.5-.5z"/>
+    <path fill="#cecece" d="M256.8 254l1.5 1.5-1.5-1.4z"/>
+    <path fill="#212118" d="M257.3 254l.5.6-.5-.5z"/>
+    <path fill="#00215a" d="M258.3 254l.5.6-.5-.5z"/>
+    <path fill="#001039" d="M260.3 254l.5.6-.5-.5z"/>
+    <path fill="#392100" d="M260.8 254l1 1-1-1z"/>
+    <path fill="#424242" d="M261.3 254l.5.6-.5-.5z"/>
+    <path fill="#7b7373" d="M267.9 254l.5.6-.5-.5z"/>
+    <path fill="#310000" d="M268.9 254l.5.6-.5-.5z"/>
+    <path fill="#001039" d="M274.9 254l.5.6-.5-.5z"/>
+    <path fill="#392100" d="M275.4 254l-1.5 2 1.5-2z"/>
+    <path fill="#212118" d="M275.9 254l.5.6-.5-.5z"/>
+    <path fill="#ada5a5" d="M276.4 254l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M276.9 254v13h.5l-.5-13m15 0l.5.6-.5-.5z"/>
+    <path fill="#296300" d="M292.4 254l.5.6-.5-.5z"/>
+    <path fill="#185200" d="M294.4 254l.5.6-.5-.5z"/>
+    <path fill="#296300" d="M295 254l.4.6-.5-.5z"/>
+    <path fill="#214210" d="M296.4 254l.5.6-.5-.5z"/>
+    <path fill="#296300" d="M297.4 254l.5.6-.5-.5z"/>
+    <path fill="#184a00" d="M301.4 254l.5.6-.5-.5z"/>
+    <path fill="#297b00" d="M302 254l-.6 1 .5-1z"/>
+    <path fill="#185200" d="M303.4 254l.5.6-.5-.5z"/>
+    <path fill="#314231" d="M307.4 254l-1 1.5 1-1.4z"/>
+    <path fill="#efefef" d="M308 254l-1.5 2 1.5-2z"/>
+    <path fill="#bdbdbd" d="M309.5 254l.5.6-.5-.5z"/>
+    <path fill="#185200" d="M310.5 254l.5.6-.5-.5z"/>
+    <path fill="#ada5a5" d="M311 254l.5.6-.5-.5z"/>
+    <path fill="#63636b" d="M224.2 254.6l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M226.7 254.6l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M227.2 254.6l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M228.7 254.6l-.5 1 .5-1z"/>
+    <path fill="#7b7373" d="M229.3 254.6l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M229.8 254.6l.4.4-.4-.4z"/>
+    <path fill="#efefef" d="M230.3 254.6l.4.4-.4-.4m2.4 0l.6.4-.6-.4z"/>
+    <path fill="#214210" d="M233.3 254.6l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M253.3 254.6l1 1-1-1z"/>
+    <path fill="#313931" d="M253.8 254.6l.5.4-.5-.4z"/>
+    <path d="M254.8 254.6l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M255.3 254.6l.5.4-.5-.4z"/>
+    <path fill="#212118" d="M257.8 254.6l1 1-1-1z"/>
+    <path fill="#211800" d="M258.3 254.6l2 2.3-2-2.3z"/>
+    <path fill="#00216b" d="M258.8 254.6l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M260.3 254.6v1.4h.5l-.5-1.4z"/>
+    <path fill="#313931" d="M260.8 254.6l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M261.8 254.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M267.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M268 254.9l.2.3-.2-.3z"/>
+    <path fill="#211810" d="M268.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M270.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M271.9 254.6l-1 1.4 1-1.4z"/>
+    <path fill="#efefef" d="M273.9 254.6l-.5 1 .5-1z"/>
+    <path fill="#292921" d="M274.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#211810" d="M275.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M275.9 254.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M291.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M292 254.6l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M295 254.6l1.4 1.4-1.5-1.4z"/>
+    <path fill="#297b00" d="M295.4 254.6l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M297 254.6l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M297.4 254.6l.5.4-.5-.4m1.5 0l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M299.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M302 254.6l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M303.4 254.6l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M305 254.6l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M310.5 254.6l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M311 254.6l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M224.2 255l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M224.7 255l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.6 255.2l.3.2-.3-.2z"/>
+    <path fill="#295200" d="M227.7 255l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M229.3 255l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M229.8 255l.4.5-.4-.5z"/>
+    <path fill="#396b10" d="M230.3 255l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M230.8 255l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M231.3 255l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M232.8 255l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M234.3 255l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M235.8 255v4.3h.5l-.5-4.3z"/>
+    <path fill="#397b00" d="M237.6 255.2l.3.2-.3-.2z"/>
+    <path fill="#52525a" d="M254.3 255l.5.5-.5-.5z"/>
+    <path fill="#211810" d="M255.3 255l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M255.8 255l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M259.3 255l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M260.8 255l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M261.3 255l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M261.8 255l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M262.3 255l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M266.9 255l.5.5-.5-.5z"/>
+    <path fill="#211810" d="M267.4 255l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M268.4 255l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M269.9 255l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M273.9 255l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M275.4 255l-.5 1 .5-1z"/>
+    <path fill="#294221" d="M291.4 255l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M292.4 255l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293 255l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M293.4 255l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M296 255l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M297 255l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297.4 255l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M299.3 255.2l.3.2-.3-.2z"/>
+    <path fill="#184a00" d="M302 255l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M303 255l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M303.4 255l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M305 255l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M308.1 255.4l.2.3-.2-.3z"/>
+    <path fill="#63636b" d="M224.7 255.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.4 255.8l.2.4-.2-.4z"/>
+    <path fill="#8c8c8c" d="M227.7 255.5l.5.5-.5-.5m1.7.3l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M230 255.7l.4.1-.3-.1z"/>
+    <path fill="#428c00" d="M230.8 255.5l.4 4.3h.6l-1-4.3z"/>
+    <path fill="#315221" d="M231.3 255.5l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M231.8 255.5l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M232.3 255.5l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M254.8 255.5l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M255.3 255.5l1.5 1v-.5l-1.5-.5z"/>
+    <path fill="#212118" d="M255.8 255.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M258.3 255.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M259.8 255.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M261.3 255.5l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M261.8 255.5l1.5 1.5-1.5-1.5z"/>
+    <path fill="#313931" d="M262.3 255.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M262.8 255.5l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M266.9 255.5l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M267.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M267.9 255.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M269.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M272.9 255.5l.5.5-.5-.5z"/>
+    <path fill="#211810" d="M273.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M274.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291 255.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M291.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M292 255.5l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M292.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M293 255.5l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M293.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M294 255.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M297.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M299 255.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M299.4 255.5l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M302 255.5l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M303 255.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M305 255.5l.4.5-.4-.5z"/>
+    <path fill="#293129" d="M306 255.5l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M307 255.5l.4.5-.4-.5z"/>
+    <path fill="#292921" d="M307.4 255.5l.6.5-.6-.5z"/>
+    <path fill="#424242" d="M222.7 256l1 1-1-1z"/>
+    <path fill="#dedede" d="M223.2 256l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M224.7 256l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M225.2 256l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.7 256l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M227.2 256l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M229.8 256c-.2 2.5-.7 4.8 2 6.2l-2-6.2z"/>
+    <path fill="#294200" d="M230.4 256.3l.2.3-.2-.3z"/>
+    <path fill="#214210" d="M231.8 256l.4.5-.4-.5z"/>
+    <path fill="#424242" d="M232.3 256l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M255.3 256l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M258.8 256l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M259.8 256l1 1-1-1z"/>
+    <path fill="#001039" d="M260.3 256l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M261.8 256l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M262.8 256l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M266.3 256l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M266.9 256l.5.5-.5-.5z"/>
+    <path d="M267.4 256l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M267.9 256l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M268.4 256l-.5 1.4.5-1.4z"/>
+    <path fill="#5a1008" d="M268.9 256l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M269.4 256l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M269.9 256l-.5 1 .5-1z"/>
+    <path fill="#63636b" d="M270.4 256l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M272.4 256l.5.5-.5-.5z"/>
+    <path fill="#212118" d="M272.9 256l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M273.4 256l-1 1.4 1-1.4z"/>
+    <path fill="#63636b" d="M273.9 256l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M290.4 256l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M291.2 256.1l.4.2-.4-.2z"/>
+    <path fill="#9c9494" d="M292 256l.4.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M294 256l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M294.4 256l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M296.4 256l.5.5-.5-.5m1 0l1 1-1-1z"/>
+    <path fill="#297b00" d="M298 256l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M299.4 256l.5.5-.5-.5m2.5 0l1 1-1-1z"/>
+    <path fill="#103900" d="M303 256l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M304.4 256l1 1-1-1z"/>
+    <path fill="#214210" d="M305.4 256l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M306 256l-.6 1 .6-1z"/>
+    <path fill="#9c9494" d="M306.4 256l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M307 256l.4.5-.4-.5z"/>
+    <path fill="#294221" d="M307.4 256l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M310 256l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M310.5 256l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M222.7 256.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M223.7 256.5l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M224.7 256.5l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M225.2 256.5l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M225.7 256.5l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M226.2 256.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.7 256.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M227.2 256.5l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M229.3 256.5l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M232.3 256.5l-.6 1 .6-1m2 0l.4.5-.4-.5z"/>
+    <path fill="#ada5a5" d="M255.8 256.5l.5.5-.5-.5z"/>
+    <path fill="#212118" d="M256.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M256.8 256.5l2 1.9-2-2z"/>
+    <path fill="#63636b" d="M257.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M259 256.8l.2.3-.2-.3z"/>
+    <path fill="#520808" d="M259.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M260.8 256.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M261.8 256.5l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M262.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M263.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#9c7b08" d="M265.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M265.8 256.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M266.3 256.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M266.9 256.5l.5.5-.5-.5z"/>
+    <path d="M268.9 256.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M270.5 256.8l.2.3-.2-.3z"/>
+    <path fill="#9c9494" d="M271.9 256.5l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M290.4 256.5l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M291 256.5l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M291.4 256.5l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M294.4 256.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295 256.5l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M296.4 256.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M296.4 257.4l1.5-.4-1.5.4z"/>
+    <path fill="#103900" d="M299.4 256.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M302 256.5v1.4h.4l-.5-1.4m1 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M304.4 256.5l-.4 1.4.4-1.4z"/>
+    <path fill="#8c8c8c" d="M306 256.5l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M306.4 256.5l-.4 1 .4-1z"/>
+    <path fill="#296300" d="M307 256.5l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M307.4 256.5l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M309 256.5l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M309.5 256.5l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M310 256.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M310.5 256.5l-1 1.4 1-1.4z"/>
+    <path fill="#295200" d="M222.7 257l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M223.2 257l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M223.7 257l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M224.2 257l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M224.7 257l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M226.2 257l.5.4-.5-.4z"/>
+    <path fill="#313931" d="M226.7 257l.5.4-.5-.4z"/>
+    <path fill="#526b42" d="M229.3 257l.4.4-.4-.4z"/>
+    <path fill="#397b00" d="M230.6 257.1l.3.2-.3-.2m1.7-.2l.4.5-.4-.4z"/>
+    <path fill="#295200" d="M233.8 257l.5.4-.5-.4z"/>
+    <path fill="#524242" d="M256.3 257l.5.4-.5-.4z"/>
+    <path fill="#210800" d="M256.8 257l.5.4-.5-.4z"/>
+    <path fill="#424242" d="M257.8 257l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M258.3 257l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M259.5 257.3l.2.3-.2-.3z"/>
+    <path fill="#5a1008" d="M259.8 257l1 .9-1-1z"/>
+    <path fill="#392100" d="M260.3 257l1 .9-1-1z"/>
+    <path fill="#211810" d="M260.8 257l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M261.3 257l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M262.3 257l-.5.9.5-1z"/>
+    <path fill="#211800" d="M262.8 257l.5.4-.5-.4z"/>
+    <path fill="#212118" d="M263.3 257l.5.4-.5-.4z"/>
+    <path fill="#6b5a10" d="M264.8 257l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M265.3 257l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M266.3 257l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M266.9 257l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M267.4 257l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M268.4 257l.5.4-.5-.4z"/>
+    <path fill="#313931" d="M268.9 257l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M270 257.3l.2.3-.2-.3z"/>
+    <path fill="#63636b" d="M271.4 257l.5.4-.5-.4z"/>
+    <path fill="#392100" d="M271.9 257l-1.5 1.8 1.5-1.9z"/>
+    <path fill="#524242" d="M272.9 257l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M290.4 257l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M293 257l.4.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M293.4 257l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M294.4 257l-.5.9.5-1z"/>
+    <path fill="#214210" d="M295 257l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M297 257l.4.4-.5-.4z"/>
+    <path fill="#319400" d="M297.4 257l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M298 257l-.6 1.4.5-1.4z"/>
+    <path fill="#184a00" d="M299.4 257l.5.4-.5-.4z"/>
+    <path fill="#082108" d="M302.4 257l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M304 257l.4.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M305.1 257.3l.2.3-.2-.3z"/>
+    <path fill="#63636b" d="M305.4 257l.6.4-.6-.4z"/>
+    <path fill="#319400" d="M306.4 257l-3.5 5.2 3.6-5.3z"/>
+    <path fill="#294221" d="M307 257l.4.4-.4-.4z"/>
+    <path fill="#bdbdbd" d="M308 257l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M308.5 257l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M309 257l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M309.5 257l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M222.7 257.4v1l1-1h-1z"/>
+    <path fill="#428c00" d="M223.7 257.4l1 2-1.5-1c.5 2 1 3 3 3.8v.5l-2-.5 1 1.4-1.5-.5 4.5 4.3.5-1.9 1.5 1-3-2.9v-.5l1.5.5a8.8 8.8 0 00-5-6.2z"/>
+    <path fill="#294200" d="M224.2 257.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M224.7 257.4l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M225.2 257.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M226.2 257.4l1 1-1-1z"/>
+    <path fill="#7b7373" d="M226.7 257.4l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M227.2 257.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.3 257.4l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M230.8 257.4l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M231.8 257.4v4.3h.4l-.4-4.3m2.1.4l.2.3-.2-.4z"/>
+    <path fill="#295200" d="M237.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#527b31" d="M238.8 257.4l.5.5-.5-.5z"/>
+    <path fill="#734a42" fill-opacity=".6" d="M256.3 257.4V268h.5l-.5-10.5z"/>
+    <path fill="#ce2110" d="M256.8 257.4l1 1-1-1z"/>
+    <path fill="#311000" d="M257.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M258.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M258.8 257.4l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M259.8 257.4v1h1l-1-1z"/>
+    <path fill="#313931" d="M261.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M262.8 257.4l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M263.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#423100" d="M263.8 257.4l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M264.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M264.8 257.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M265.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M265.8 257.4l-.5 1 .5-1z"/>
+    <path fill="#9c9494" d="M266.3 257.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M268.9 257.4l-2 1v.5l2.5-1-.5-.5z"/>
+    <path fill="#ada5a5" d="M270.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M270.9 257.4l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M271.9 257.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M272.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M272.9 257.4l-.5 11h.5a19 19 0 000-11z"/>
+    <path d="M293.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M295 257.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M297 257.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M297.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M299.8 257.6l.3.1-.3-.1z"/>
+    <path fill="#103900" d="M302.4 257.4l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M304.4 257.4l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M305.4 257.4l.6.5-.6-.5m1 0l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M307 257.4l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M307.4 257.4l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M308 257.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M308.5 257.4l-1 .5v.5l1-1z"/>
+    <path fill="#52525a" d="M309 257.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M223.2 257.9l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.7 257.9l.5.5-.5-.5z"/>
+    <path fill="#293100" d="M225.2 257.9l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M225.7 257.9l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M226.2 257.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M227.2 257.9l.5.5-.5-.5z"/>
+    <path fill="#5a2121" d="M227.7 257.9l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M228.2 257.9l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M228.7 257.9l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.3 257.9l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M237.1 258l.3.2-.3-.1z"/>
+    <path fill="#526b42" d="M238.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M256.8 257.9v10l5.5 1c-1.2-3.6-1.9-9-5.5-11z"/>
+    <path fill="#5a1008" d="M257.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M258.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M259.3 257.9l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M260.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#524242" d="M261.3 257.9l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M262 258.2l.2.3-.2-.3z"/>
+    <path fill="#efefef" d="M263.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M264.5 258.2l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M264.8 257.9l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M266.9 257.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M268.9 257.9l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M269.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M269.9 257.9l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M270.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M271.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M271.9 257.9l-.5 1 .5-1z"/>
+    <path fill="#de2110" d="M272.4 257.9l-2 1.4 2 6.2-3.5 1 .5 1.9 3.5-.5-.5-10z"/>
+    <path fill="#214210" d="M293.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M294 257.9l.4.5-.5-.5z"/>
+    <path fill="#395231" d="M295.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M298 257.9l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M298.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M300 257.9v1.4h.4l-.5-1.4z"/>
+    <path fill="#185200" d="M302 257.9l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M302.4 257.9l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M304 257.9l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M304.4 257.9l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M305 257.9l.4.5-.4-.5z"/>
+    <path fill="#102110" d="M306.4 257.9l.6.5-.6-.5z"/>
+    <path fill="#314231" d="M307 257.9l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M308 258.4v.5h1.5l-1.5-.5z"/>
+    <path fill="#426331" d="M222.7 258.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.7 258.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.2 258.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.7 258.4l1.5 1.4-1.5-1.4z"/>
+    <path fill="#211800" d="M226.2 258.4l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M228 258.7v.3-.3z"/>
+    <path fill="#7b7373" d="M228.4 258.7l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M228.7 258.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229.3 258.4l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M233.8 258.4l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M238.8 258.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M258.3 258.4l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M258.8 258.4l1 1v-1h-1z"/>
+    <path fill="#631808" d="M259.8 258.4l.5.5-.5-.5z"/>
+    <path fill="#5a2121" d="M260.3 258.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M261 258.7l.2.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M262.3 258.4v.5h1.5l-1.5-.5z"/>
+    <path fill="#bdbdbd" d="M263.8 258.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M265.8 258.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M266.3 258.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M267.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M269.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#211800" d="M269.9 258.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M270.9 258.4l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M293.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294 258.4l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M294.4 258.4l.5.5-.5-.5m1.2.3l.2.3-.2-.3z"/>
+    <path fill="#185200" d="M296 258.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M297.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M298 258.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M298.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M302.1 258.7l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M303.4 258.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M304 258.4l.4.5-.5-.5z"/>
+    <path fill="#314231" d="M304.4 258.4l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M306 258.4l.4.5-.4-.5z"/>
+    <path fill="#184a00" d="M306.4 258.4l.6.5-.6-.5z"/>
+    <path fill="#319400" d="M307 258.4l-.6 1 .6-1z"/>
+    <path fill="#296300" d="M307.4 258.4l.6.5-.6-.5z"/>
+    <path fill="#efefef" d="M308.5 258.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M309.5 258.4l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M222.7 258.9l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M224.2 258.9l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M226.7 258.9l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M228.7 258.9l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M233.6 259l.3.2-.3-.2z"/>
+    <path fill="#8c8c8c" d="M238.8 258.9l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M258.8 258.9l.5.4-.5-.4z"/>
+    <path d="M259.8 258.9l2.5 9.5c3-1 7.8-1.5 9.6-4.3l-9 2.9-3-8.1z"/>
+    <path fill="#ada5a5" d="M260.3 258.9l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M261.3 258.9l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M261.8 258.9l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M264.3 258.9l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M264.8 258.9l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M266.3 258.9l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M268 259.2l.2.3-.2-.3z"/>
+    <path fill="#9c9494" d="M268.4 258.9l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M269.2 259l.3.2-.3-.2z"/>
+    <path d="M269.9 258.9l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M270.4 258.9l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M293.4 258.9l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M294 258.9l4 15.2h-.6v-1h-.5l.5 4.4h-.5v-1h-.5v3.8h-.5c0-4.8-2-9.2-4.5-13.3l-1 1v.4c3.7 3.5 4.8 11 5 15.7h-1l-2-10h-.5l1.5 13.4h-.5l-2-10h-.5l1.5 15.2h-.5l-1-12.4h-.5l1 12.4h-.5l-.5-6.6h-.5l.5 8h-.5l-.5-6.6h-.5l-1.5 9 5.5-.4v-.5l-3.5-.5v-.5l13 3.4v-.5l-6-1.9v-.5l9 2c-2.8-3.5-6.4-3-10.5-2.5v-.4l11.6.4v-.4l-8-2v-.4l8 .4v-.4c-5.8-1.3-8.7-.6-13 3.3l1-4.8h-.6l-.5 1.5h-.5l2.5-7.2h.5l-.5 5.3 11.6-4.3v-.5l-10.6 2.9c4-3.2 9.9-5.8 15-6.2v-.5a21 21 0 00-14 4.7c3.8-4.6 9.7-5.1 15-7.1v-.5c-6.7.5-10 2-15.5 5.7 3.4-3.2 9.2-8.8 14.6-7.6l-1-2.4a27 27 0 00-12 6.7c2.3-3.1 10.5-11.8 14.5-11.5-4-3.5-11.9 7.3-14.6 9.6l11-12-9.5 8.2 10.6-13.4v-.5c-5 1.8-6.5 7.7-10 11l7.5-12a19.4 19.4 0 00-7 10.6c-2.4.3-1.6 3.9-1.6 5.7h-.5c0-5.8-.7-12.8-4.5-17.6z"/>
+    <path fill="#314231" d="M294.4 258.9l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M295 258.9l.4.4-.5-.4z"/>
+    <path fill="#6b735a" d="M296 258.9l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M298 258.9l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M298.4 258.9l.5.4-.5-.4m5 0l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M304 258.9l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M304.4 258.9l.6.4-.6-.4m1 0l1 1-1-1z"/>
+    <path fill="#103900" d="M306 258.9l.4.4-.4-.4z"/>
+    <path fill="#185200" d="M307 258.9l-3 2.3v.5l3-2.8z"/>
+    <path fill="#8c8c8c" d="M307.4 258.9l-.4 1 .4-1z"/>
+    <path fill="#ada5a5" d="M308 258.9l.5.4-.5-.4z"/>
+    <path fill="#102110" d="M308.5 258.9l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M309 258.9l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M222.7 259.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M223.2 259.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M224.7 259.3l1.5 1.5-1.5-1.5z"/>
+    <path fill="#5a1008" d="M227.2 259.3l.5.5-.5-.5z"/>
+    <path fill="#733939" d="M227.7 259.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M228.2 259.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M228.7 259.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M230.8 259.3l1 1-1-1z"/>
+    <path fill="#294200" d="M233.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.8 259.3l.5.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M238.8 259.3l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M259.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M260.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M262.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.8 259.3v.5h1.5l-1.5-.5z"/>
+    <path fill="#efefef" d="M264.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M266.3 259.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M267.2 259.5l.3.2-.3-.2z"/>
+    <path fill="#dedede" d="M268.4 259.3l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M269.9 259.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M292.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M293 259.3l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M293.4 259.3l-.5 1 .5-1z"/>
+    <path fill="#185200" d="M294.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M295 259.3l.4.5-.5-.5z"/>
+    <path fill="#292921" d="M295.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M296 259.3l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M296.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 259.3l.4.5-.5-.5z"/>
+    <path fill="#082108" d="M298.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M300 259.3l1 1-1-1z"/>
+    <path fill="#297b00" d="M300.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M301.8 259.5l.3.2-.3-.2z"/>
+    <path fill="#102110" d="M303.4 259.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M304 259.3l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M305.4 259.3l.6.5-.6-.5z"/>
+    <path fill="#425242" d="M307.4 259.3l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M308 259.3l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M308.5 259.3l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M222.7 259.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.2 259.8l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M227.2 259.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M227.7 259.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M228.7 259.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229.3 259.8l.4.5-.4-.5m1.4 0l.6.5-.6-.5z"/>
+    <path fill="#295200" d="M233.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M235.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M236.6 260l.3.1-.3-.1z"/>
+    <path fill="#315221" d="M238.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M259.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M260.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M261.3 259.8l-.5 1 .5-1z"/>
+    <path fill="#7b7373" d="M261.8 259.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M262.3 259.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M266.2 260l.3.1-.3-.1z"/>
+    <path fill="#efefef" d="M266.9 259.8l1 2.9h.5l-1.5-2.9m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M269 260.1l.2.3-.2-.3z"/>
+    <path fill="#ada5a5" d="M269.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M269.9 259.8l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M270.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M292.4 259.8l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M294 259.8l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M295 259.8l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M295.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M296 259.8l.4.5-.5-.5z"/>
+    <path fill="#6b735a" d="M296.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M297 259.8l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M298.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M300 259.8l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M301.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M303 259.8l1 1-1-1z"/>
+    <path fill="#103900" d="M303.4 259.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M305 259.8l.4.5-.4-.5z"/>
+    <path fill="#313931" d="M306.4 259.8l.6.5-.6-.5z"/>
+    <path fill="#214210" d="M307 259.8l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M307.4 259.8l.6.5-.6-.5z"/>
+    <path fill="#103910" d="M308 259.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M308.5 259.8l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M223.2 260.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M227.7 260.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M228.7 260.3l-.5 1 .5-1z"/>
+    <path fill="#396b10" d="M229.3 260.3l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M233.3 260.3l.5.5-.5-.5m1 1l1.5-.5-1.5.4z"/>
+    <path fill="#103900" d="M236.3 260.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.3 260.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M259.3 260.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M261.3 260.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M262.8 260.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M263.3 260.3l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M265.3 260.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M267.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M268.2 260.4l.3.2-.3-.2z"/>
+    <path fill="#efefef" d="M269.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M269.9 260.3l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M270.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M292.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M293 260.3l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M293.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294 260.3l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M295 260.3l.4.5-.5-.5z"/>
+    <path fill="#082108" d="M295.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M296 260.3l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296.4 260.3l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M297 260.3l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.8 260.4l.3.2-.3-.2z"/>
+    <path fill="#103900" d="M300.4 260.3l.5.5-.5-.5m1 0l.5.5-.5-.5m1.5 0l.5.5-.5-.5m2 0l.6.5-.6-.5z"/>
+    <path d="M306 260.3l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M306.4 260.3l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M307.4 260.3l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M308 260.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M222.7 260.8l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M223.2 260.8l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M223.7 260.8l.5.4-.5-.4z"/>
+    <path fill="#292100" d="M226.2 260.8l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M227.7 260.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M229.3 260.8l.4.4-.4-.4z"/>
+    <path fill="#397b00" d="M229.8 260.8l.4.4-.4-.4z"/>
+    <path fill="#294200" d="M234.8 260.8l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M235.3 260.8l-.5 1 .5-1z"/>
+    <path fill="#295200" d="M235.8 260.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M236.3 260.8l.5.4-.5-.4z"/>
+    <path fill="#213918" d="M237.8 260.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M238.3 260.8l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M259.3 260.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M260.8 260.8l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M261.8 260.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M262.7 261h.3-.3z"/>
+    <path fill="#cecece" d="M263.3 260.8l1.5 1.4-1.5-1.4z"/>
+    <path fill="#8c8c8c" d="M265.3 260.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M265.8 260.8l1 1.4-1-1.4z"/>
+    <path fill="#8c8c8c" d="M266.7 261h.3-.3z"/>
+    <path fill="#dedede" d="M269.4 260.8l1 1-1-1z"/>
+    <path fill="#bdbdbd" d="M269.9 260.8l.5.4-.5-.4z"/>
+    <path fill="#210800" d="M270.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#103910" d="M293 260.8l.4.4-.5-.4z"/>
+    <path fill="#9c9494" d="M293.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M294 260.8l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M295 260.8l.4.4-.5-.4z"/>
+    <path fill="#001000" d="M295.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M296 260.8l.4.4-.5-.4z"/>
+    <path fill="#103910" d="M296.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M297 260.8l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M299 260.8l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M300.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M301.4 260.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M302.4 260.8l1 1-1-1z"/>
+    <path fill="#184a00" d="M303 260.8l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M304.4 260.8l.6.4-.6-.4z"/>
+    <path fill="#001000" d="M305.4 260.8l-.4 1 .4-1z"/>
+    <path fill="#297b00" d="M306 260.8l.4.4-.4-.4m1 0l-.6 1 .6-1z"/>
+    <path fill="#8c8c8c" d="M307.4 260.8l.6.4-.6-.4z"/>
+    <path fill="#dedede" d="M308 260.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M308.5 260.8l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M309 260.8l.5.4-.5-.4z"/>
+    <path fill="#8c9c84" d="M309.5 260.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M310 260.8l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M310.5 260.8l.5.4-.5-.4z"/>
+    <path fill="#313931" d="M222.7 261.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M223.2 261.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M223.7 261.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.2 261.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.7 261.2l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M228.2 261.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M229.8 261.2l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M234.3 261.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.3 261.2l-.5 1 .5-1z"/>
+    <path fill="#294200" d="M235.8 261.2l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M237.8 261.2l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M259.8 261.2l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M260.8 261.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M261.3 261.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M261.8 261.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M264.3 261.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M264.8 261.2l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M265.3 261.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M266.3 261.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M267.9 261.2v.5h1.5l-1.5-.5z"/>
+    <path fill="#ada5a5" d="M269.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M270.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M270.9 261.2l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M293 261.2l.4.5-.5-.5z"/>
+    <path fill="#294221" d="M293.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M294 261.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M295.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 262.2l1.5-.5-1.5.5z"/>
+    <path fill="#313931" d="M297 261.2l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M297.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M299 261.2l1 1-1-1z"/>
+    <path fill="#297b00" d="M299.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M302.4 261.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M305.4 261.2l.6.5-.6-.5z"/>
+    <path fill="#425242" d="M307 261.2l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M307.4 261.2l.6.5-.6-.5z"/>
+    <path fill="#214210" d="M308 261.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M308.5 261.2l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M310.5 261.2l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M311 261.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M311.5 261.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M312.1 261.6l.2.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M222.7 261.7l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M223.2 261.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.7 261.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M224.2 261.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.7 261.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.7 261.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M227.4 262l.2.4-.2-.4z"/>
+    <path fill="#315221" d="M228.2 261.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M229.8 261.7l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M230.3 261.7l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.8 261.7l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M233.8 261.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M235.3 261.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M236.8 261.7l-.5 1 .5-1z"/>
+    <path fill="#9c9494" d="M237.3 261.7l-.5 1 .5-1z"/>
+    <path fill="#941808" d="M259.8 261.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M261.3 261.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M262.3 261.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M263.2 261.9l.3.1-.3-.1z"/>
+    <path fill="#ada5a5" d="M263.8 261.7l.5.5-.5-.5m1.9.2l.3.1-.3-.1z"/>
+    <path fill="#8c8c8c" d="M266.9 261.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M267.4 261.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.4 261.7l-2 .5v.5l2.5-.5-.5-.5z"/>
+    <path fill="#7b1008" d="M270.9 261.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M293 261.7l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M293.4 261.7l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M294 261.7l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M296 261.7l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M296.4 261.7l2 8.1h.5c0-2.9-.4-5.8-2.5-8z"/>
+    <path fill="#184a00" d="M297 261.7l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297.4 261.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M299 261.7l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301 261.7l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M302.4 261.7l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M304.4 261.7l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M305 261.7l.4.5-.4-.5z"/>
+    <path fill="#214210" d="M306.4 261.7l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M307 261.7l.4.5-.4-.5z"/>
+    <path fill="#214210" d="M307.4 261.7l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M309 261.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M309.5 261.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M310 261.7l.5.5-.5-.5z"/>
+    <path fill="#295210" d="M310.5 261.7l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M311 261.7l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M311.5 261.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M222.7 262.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.2 262.2l1.5 1-1.5-1m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M225.2 262.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.7 262.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.2 262.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M228.7 262.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M230.3 262.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M230.8 262.2v.5h1.4l-1.4-.5z"/>
+    <path fill="#103900" d="M233.3 262.2l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M245.8 262.2l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M259.8 262.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M261.3 262.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M261.8 262.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.3 262.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M263 262.5l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M265 262.5l.2.3-.2-.3z"/>
+    <path fill="#dedede" d="M265.5 262.5l.2.3-.2-.3z"/>
+    <path fill="#7b7373" d="M266 262.5l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M266.3 262.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M266.9 262.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M270.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M270.9 262.2l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M283.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M283.9 262.2v.5h4.5l-4.5-.5z"/>
+    <path fill="#520808" d="M288.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M291.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M293 262.2l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M293.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M294 262.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M296 262.2l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M297 262.2l.4.5-.5-.5z"/>
+    <path fill="#001000" d="M297.4 262.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 262.2l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M299.6 262.5l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M302 262.2l.4.5-.5-.5m1.5 0l1 1-1-1z"/>
+    <path fill="#185200" d="M304 262.2l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M304.4 262.2l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M306 262.2l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M306.4 262.2l.6.5-.6-.5z"/>
+    <path fill="#314231" d="M307 262.2l-.6 1 .6-1z"/>
+    <path fill="#297b00" d="M307.4 262.2l.6.5-.6-.5z"/>
+    <path fill="#214210" d="M308.5 262.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M309 262.2l-.5 1 .5-1z"/>
+    <path fill="#5a5231" d="M223.2 262.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.6 262.8l.3.2-.3-.2z"/>
+    <path fill="#8c8c8c" d="M228.7 262.7l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M230.8 262.7l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M231.3 262.7l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M232.8 262.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M233.3 262.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M234.3 262.7l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M235.8 262.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M236.3 262.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M240.8 262.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" fill-opacity=".3" d="M241.3 262.7v.5h4.5v7.1c2.7-4.3.2-7.6-4.5-7.6z"/>
+    <path fill="#8c8c8c" d="M245.8 262.7l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M260.3 262.7l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M261.3 262.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.3 263.1v.5l2.5-.5h-2.5m5-.4l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M267.9 262.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M268.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M270.9 262.7l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M271.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M283.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M283.9 262.7v.5h4.5l-4.5-.5z"/>
+    <path fill="#63636b" d="M288.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M291.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M292 262.7l.4.5-.5-.5m1.2.3l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M293.4 263.6l1.5-.5-1.5.5z"/>
+    <path fill="#185200" d="M296 262.7l1 1-1-1z"/>
+    <path fill="#297b00" d="M296.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M297.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M298 262.7l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M302 262.7l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M302.4 262.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M303 262.7l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M306 262.7l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M307 262.7l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M308 262.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M223.2 263.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.2 263.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M224.7 263.1l.5.5-.5-.5m2.9.2l.3.2-.3-.2z"/>
+    <path fill="#5a6b52" d="M228.7 263.1l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M230.8 263.1l.4.5-.4-.5z"/>
+    <path fill="#292100" d="M231.3 263.1l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M232.8 263.1l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M234.3 263.1l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M235.3 263.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M235.8 263.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M240.8 263.1v3.9h.5l-.5-3.9z"/>
+    <path fill="#941808" d="M260.3 263.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M261.8 263.1l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M263.3 263.1l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M265.3 263.1l1 1-1-1z"/>
+    <path fill="#bdbdbd" d="M265.8 263.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M266.7 263.3l.3.2-.3-.2z"/>
+    <path fill="#dedede" d="M267.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M268.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M268.9 263.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M269.7 263.3l.3.2-.3-.2z"/>
+    <path fill="#9c9494" d="M270.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M270.9 263.1l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M271.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M283.4 263.1v6.2h.5l-.5-6.2m5 0v7.2h.5l-.5-7.2z"/>
+    <path fill="#6b735a" d="M291.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M292 263.1l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M294 263.1l2.4 8.6h.5l-3-8.6z"/>
+    <path fill="#103900" d="M294.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M296 263.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M298.1 263.5l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M299.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M300 263.1l-.6 1 .5-1z"/>
+    <path fill="#184a00" d="M301.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M302.8 263.3l.3.2-.3-.2z"/>
+    <path fill="#185200" d="M303.4 263.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M305.4 263.1l.6.5-.6-.5z"/>
+    <path d="M306 263.1l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M306.4 263.1l.6.5-.6-.5z"/>
+    <path fill="#425242" d="M308 263.1l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M223.2 263.6l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M223.7 263.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M225.2 263.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.9 264l.2.3-.2-.4m1.8-.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M228.2 263.6l1 1-1-1z"/>
+    <path fill="#213918" d="M228.7 263.6l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M230.8 263.6l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.3 263.6l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M232.3 263.6l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M233.3 263.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M233.8 263.6l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M234.8 263.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M235.3 263.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M260.3 263.6l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M261.8 263.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M263.3 263.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M263.8 263.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M264.3 263.6v.5h1.5l-1.5-.5m2 0l-1.5 1v.5l1.5-1.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M268.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M268.9 263.6l.5.5-.5-.5m2 0l-.5 1 .5-1z"/>
+    <path fill="#210800" d="M271.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M292 264l.2.3-.1-.4z"/>
+    <path fill="#8c8c8c" d="M292.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M294.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295 263.6l-.6 1 .5-1z"/>
+    <path fill="#103900" d="M296.4 263.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298.4 263.6l-.5 1 .5-1z"/>
+    <path fill="#184a00" d="M300.1 264l.2.3-.2-.4z"/>
+    <path fill="#103900" d="M301.4 263.6l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M303.4 263.6l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M306 263.6l.4.5-.4-.5z"/>
+    <path fill="#184a00" d="M307.4 263.6l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M308 263.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M309.9 266l-2 3.3c1.3-1 2.6-1.8 2-3.4z"/>
+    <path fill="#dedede" d="M313 263.6l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M223.7 264.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M224.2 264.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.2 264.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M229.3 264.1l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M230.8 264.1l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.8 264.1l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.3 264.1l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M233.3 264.1l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M234.8 264.1l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M236.6 264.3l.3.1-.3-.1z"/>
+    <path fill="#420000" d="M260.8 264.1l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M261.8 264.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.8 264.1l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M263.3 264.1l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M263.8 264.1l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M267.4 264.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M267.9 264.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.9 264.1l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M271.9 264.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M291.4 264.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M292.4 264.1l-.5 1 .5-1z"/>
+    <path fill="#dedede" d="M293 264.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M293.6 264.4l.1.3-.1-.3z"/>
+    <path fill="#185200" d="M295 264.1l.4.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M297 264.1l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 264.1l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M301 264.1l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M301.4 264.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M302 264.1l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M303 264.1l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M305.4 264.1l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M307 264.1l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M307.4 264.1l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M312 264.1l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M312.5 264.1l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M224.2 264.6l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.7 264.6l1 1-1-1z"/>
+    <path fill="#397b00" d="M227.2 264.6l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M229.3 264.6l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M230 264.7l.4.2-.3-.2z"/>
+    <path fill="#214210" d="M230.8 264.6l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M231.8 264.6l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M232.8 264.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M233.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M234.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M236.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M236.8 264.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M246.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M260.8 264.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M262.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M264.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M266.3 264.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M266.9 264.6l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M268.9 264.6l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M269.4 264.6l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M271.9 264.6l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M292.4 264.6L296 276h.5c0-4-1.3-8.3-4-11.4z"/>
+    <path fill="#425242" d="M293 264.6l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M295 264.6l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M297 264.6l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M298.6 264.9l.2.3-.2-.3m2.3-.3l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M301.4 264.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M302 264.6l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M303 264.6l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M305 264.6l.4.5-.4-.5z"/>
+    <path fill="#103910" d="M307 264.6l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M307.4 264.6l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M308.5 264.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M309 264.6l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M311 264.6l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M311.5 264.6l-1 1.9 1-2z"/>
+    <path fill="#313931" d="M312 264.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M224.2 265l1.5 1.5-1.5-1.4z"/>
+    <path fill="#314231" d="M224.7 265l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M227.7 265l.5.5-.5-.4z"/>
+    <path fill="#63636b" d="M229.8 265l.4.5-.4-.4z"/>
+    <path fill="#8c8c8c" d="M230.3 265l.4.5-.4-.4z"/>
+    <path fill="#397b00" d="M231.3 265l.4.5-.4-.4z"/>
+    <path fill="#295200" d="M231.8 265l.4.5-.4-.4z"/>
+    <path fill="#294200" d="M232.8 265l.5.5-.5-.4z"/>
+    <path fill="#295200" d="M233.8 265l.5.5-.5-.4z"/>
+    <path fill="#cecece" d="M234.3 265l.5.5-.5-.4z"/>
+    <path fill="#63636b" d="M235.8 265l.5.5-.5-.4z"/>
+    <path fill="#5a5231" d="M236.8 265l.5.5-.5-.4z"/>
+    <path fill="#101829" d="M246.3 265l.5.5-.5-.4z"/>
+    <path fill="#ce2110" d="M260.8 265l.5.5-.5-.4z"/>
+    <path fill="#63636b" d="M262.3 265l.5.5-.5-.4z"/>
+    <path fill="#efefef" d="M263 265.4l.2.3-.2-.3z"/>
+    <path fill="#9c9494" d="M263.3 265l.5.5-.5-.4z"/>
+    <path fill="#7b7373" d="M263.8 265l.5.5-.5-.4z"/>
+    <path fill="#bdbdbd" d="M264.3 265l.5.5-.5-.4z"/>
+    <path fill="#7b7373" d="M266.9 265l.5.5-.5-.4z"/>
+    <path fill="#cecece" d="M267.4 265l.5.5-.5-.4z"/>
+    <path fill="#313931" d="M267.9 265l.5.5-.5-.4z"/>
+    <path fill="#210800" d="M271.4 265l.5.5-.5-.4z"/>
+    <path fill="#7b1008" d="M271.9 265l.5.5-.5-.4z"/>
+    <path fill="#10214a" d="M282.9 265l.5.5-.5-.4z"/>
+    <path fill="#4a6342" d="M292 265.4l.2.3-.1-.3z"/>
+    <path fill="#296300" d="M293 265l.4.5-.5-.4z"/>
+    <path fill="#103900" d="M293.6 265.4l.1.3-.1-.3z"/>
+    <path fill="#296300" d="M295.3 265.2l.3.2-.4-.2z"/>
+    <path fill="#103900" d="M297 265l.4.5-.5-.4z"/>
+    <path fill="#185200" d="M301.3 265.2l.3.2-.3-.2m1.1-.1l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M304.4 265l.6.5-.6-.4z"/>
+    <path fill="#296300" d="M306.4 265l.6.5-.6-.4z"/>
+    <path fill="#9c9494" d="M307 265l.4.5-.4-.4z"/>
+    <path fill="#dedede" d="M307.4 265l.6.5-.6-.4z"/>
+    <path fill="#425242" d="M308 265l.5.5-.5-.4z"/>
+    <path fill="#313931" d="M308.5 265l.5.5-.5-.4z"/>
+    <path fill="#efefef" d="M309 265l.5.5-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M310.5 265l.5.5-.5-.4z"/>
+    <path fill="#185200" d="M311 265l.5.5-.5-.4z"/>
+    <path fill="#ada5a5" d="M218.7 265.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M219.2 265.5l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M225.2 265.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.7 265.5l1 1-1-1m3 0l.5.5-.5-.5m1 0l.6.5-.6-.5z"/>
+    <path fill="#214210" d="M230.3 265.5l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M230.8 265.5l.4.5-.4-.5z"/>
+    <path fill="#292100" d="M231.3 265.5l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.3 265.5v1h1l-1-1z"/>
+    <path fill="#295200" d="M232.8 265.5l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M233.8 265.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M235.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M236.8 265.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M237.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M246.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M246.8 265.5l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M247.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M261.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M262.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M263.3 265.5l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M265.3 265.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M266.2 265.7l.3.2-.3-.2z"/>
+    <path fill="#313931" d="M266.9 265.5l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M267.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M269.9 265.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M270.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M281.9 265.5l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M282.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M282.9 265.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M294 265.5l-.6 1 .5-1z"/>
+    <path fill="#184a00" d="M295.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M297 265.5l1 1-1-1z"/>
+    <path fill="#297b00" d="M297.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M299 265.5l-.6 1 .5-1z"/>
+    <path fill="#184a00" d="M300.6 265.9l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M301.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M302 265.5l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M302.4 265.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M304.3 265.7l.3.2-.3-.2z"/>
+    <path fill="#425242" d="M306.4 265.5l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M307 265.5l.4.5-.4-.5z"/>
+    <path fill="#184a00" d="M307.8 265.7l.3.2-.3-.2z"/>
+    <path fill="#cecece" d="M308.5 265.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M309.5 265.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M310 265.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M310.5 265.5l.5.5-.5-.5z"/>
+    <path fill="#8c9c84" d="M218.7 266l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M219.2 266l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M225.7 266l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M228.7 266l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.3 266l.4.5-.4-.5z"/>
+    <path fill="#292100" d="M230.3 266l.4.5-.4-.5z"/>
+    <path fill="#ad1810" d="M231 266.2l.4.1-.3-.1z"/>
+    <path fill="#311000" d="M231.8 266l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M233.8 266l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M234.8 266l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M235.3 266l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M233.1 270.9h-.5c0-2.7-1.1-4.5-4-5.3.1 1.5 1.1 7.2 3.5 5.3h.5l-1 4.3c1.5-1.6 7.7-7.2 5-9.6-2.3-2.1-3.4 4.2-3.5 5.3z"/>
+    <path fill="#295200" d="M236.3 266l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M237.3 266l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M247.3 266l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M247.8 266l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M248.3 266l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M248.8 266l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M261.3 266l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M262.8 266l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M263.8 266l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M264.3 266l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M268.9 266l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M269.4 266l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M280.4 266l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M280.9 266l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M281.4 266l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M281.9 266l.5.5-.5-.5m8.5 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291 266l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M291.4 266l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M292 266l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M294 266l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M295.4 266l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M296 266l-.6 1 .5-1m1 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M301.4 266l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M304 266l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M306 266l.4.5-.4-.5z"/>
+    <path fill="#102110" d="M306.4 266l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M307.3 266.2l.3.1-.3-.1z"/>
+    <path fill="#8c8c8c" d="M308 266l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M308.5 266l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M309 266l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M309.5 266l-1.5 2.4 2.5-2.4h-1z"/>
+    <path fill="#295200" d="M219.2 266.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M219.7 266.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M225.7 266.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M226.2 266.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.7 266.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.2 266.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#294200" d="M229.8 266.5l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M230.3 266.5l.4.5-.4-.5z"/>
+    <path fill="#941808" d="M232 266.8v.3-.3z"/>
+    <path fill="#292100" d="M232.3 266.5l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M233.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M233.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M234.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M234.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M236 266.8l.1.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M237.4 266.8l.2.3-.2-.3z"/>
+    <path fill="#dedede" d="M248.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M249.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M249.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M250.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M250.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M251.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M261.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M262.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M263.3 266.5l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M263.8 266.5l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M267.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M267.9 266.5l.5.5-.5-.5z"/>
+    <path fill="#210800" d="M268.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M277.9 266.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M278.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M278.9 266.5l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M279.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M279.9 266.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M280.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M290.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M291 266.5l1 1-1-1z"/>
+    <path fill="#103910" d="M291.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M292 266.5l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M294 266.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M294.4 266.5l-.5 1 .5-1z"/>
+    <path fill="#185200" d="M296 266.5l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M301 266.5l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M303.4 266.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M305.4 266.5v.5h2v-.5h-2z"/>
+    <path fill="#425242" d="M307.4 266.5l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M308 266.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M308.5 266.5l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M310 266.5l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M219.2 267l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M219.9 267.3l.2.3-.2-.3z"/>
+    <path fill="#314231" d="M220.2 267l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M220.7 267l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M222.7 267l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M225.2 267l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M225.7 267l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M226.7 267l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M227.2 267l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M228.2 267l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M230.3 267l.4.5-.4-.5z"/>
+    <path fill="#941808" d="M230.8 267l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M232.3 267l.4.5-.4-.5z"/>
+    <path fill="#5a2908" d="M232.8 267l-.5 1 .5-1z"/>
+    <path fill="#7b1008" d="M233.3 267l.5.5-.5-.5z"/>
+    <path fill="#5a3131" d="M233.8 267l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M234.3 267l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M240.3 267l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M240.8 267l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M241.3 267l.5.5-.5-.5m9.5 0l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M251.3 267l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M251.8 267l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M252.3 267l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M261.8 267l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M266.3 267l.5.5-.5-.5z"/>
+    <path fill="#7b0008" d="M266.9 267l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M264.8 267.4v.5h1.5c-3.8 6-1 14-.5 20.5h.5a46 46 0 000-20l2 1 .5-2-.5-.4-3.5.4z"/>
+    <path fill="#940008" d="M268.4 267l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M268.9 267l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M276.9 267l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M277.4 267l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M277.9 267l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M278.4 267l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M290 267l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M290.4 267l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M292 267l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M292.4 267l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M294.4 267l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M296 267l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M297.4 267l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 267l-.6 1 .5-1z"/>
+    <path fill="#103900" d="M301 267l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M303 267l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M305.4 267l.6.5-.6-.5z"/>
+    <path fill="#319400" d="M306.4 267l-.4 1 .4-1z"/>
+    <path fill="#082108" d="M307.1 267.3l.2.3-.2-.3z"/>
+    <path fill="#52525a" d="M307.4 267l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M308 267l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M309.5 267l-1.5 1.9 1.5-2z"/>
+    <path fill="#295200" d="M219.2 267.4l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M220.2 267.4l1 2.9h.5l.5-1.9-2-1z"/>
+    <path fill="#295200" d="M220.7 267.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M221.2 267.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M221.7 267.4l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M222.7 267.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M223.2 267.4l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M225.2 267.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M225.7 267.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M227.7 267.4l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M228.2 267.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M230.8 267.4l.4.5-.4-.5z"/>
+    <path fill="#4a1000" d="M231.3 267.4l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M231.8 267.4l.4.5-.4-.5z"/>
+    <path fill="#631808" d="M233.8 267.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.6 267.6l.3.2-.3-.2z"/>
+    <path fill="#6b735a" d="M237.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M238.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.8 267.4l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M239.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M239.8 267.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M240.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M240.8 267.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M241.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M261.8 267.4l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M263.8 267.4l-.5 1 .5-1z"/>
+    <path fill="#ad0008" d="M264.3 267.4l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M268.9 267.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M290 267.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M290.4 267.4l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M292 267.4l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M292.4 267.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M294.4 267.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295 267.4l-.6 1 .5-1z"/>
+    <path fill="#185200" d="M296 267.4l1 1-1-1z"/>
+    <path fill="#297b00" d="M296.4 267.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M298 267.4l.4.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M299.4 267.4l.5.5-.5-.5m1 0l1 1-1-1z"/>
+    <path fill="#185200" d="M301 267.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M302.4 267.4l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M303 267.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M305 267.4l1 1-1-1zm2.4 0l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M310 267.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M310.5 267.4l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M311 267.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M311.5 267.4l.5.5-.5-.5z"/>
+    <path fill="#8c9c84" d="M218.7 268l.5.4-.5-.5z"/>
+    <path fill="#428c00" d="M219.2 268l1.5 2.3-1.5-2.4z"/>
+    <path fill="#103900" d="M219.7 268l.5.4-.5-.5z"/>
+    <path fill="#314231" d="M221.7 268l.5.4-.5-.5z"/>
+    <path fill="#bdbdbd" d="M222.2 268l.5.4-.5-.5z"/>
+    <path fill="#295200" d="M222.7 268l.5.4-.5-.5z"/>
+    <path fill="#314231" d="M223.2 268l.5.4-.5-.5z"/>
+    <path fill="#ada5a5" d="M224.7 268l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M225.6 268l.3.2-.3-.1z"/>
+    <path fill="#dedede" d="M226.2 268l.5.4-.5-.5z"/>
+    <path fill="#7b8c73" d="M228.2 268l.5.4-.5-.5z"/>
+    <path fill="#295200" d="M231.3 268l1 .9v-1h-1z"/>
+    <path fill="#4a1000" d="M232.3 268l.4.4-.4-.5z"/>
+    <path fill="#bd2110" d="M233.3 268l.5.4-.5-.5z"/>
+    <path fill="#526b42" d="M237.3 268l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M237.8 268l.5.4-.5-.5z"/>
+    <path fill="#214210" d="M238.3 268l.5.4-.5-.5z"/>
+    <path fill="#428c00" d="M236.8 271.7l1-.4v.4l-3.5 2.9a9.7 9.7 0 006-5.7l-1.5 1 1-2-3 3.8z"/>
+    <path fill="#294200" d="M239.8 268l-.5.9.5-1z"/>
+    <path fill="#397b00" d="M240.3 268l-.5.9.5-1z"/>
+    <path fill="#424242" d="M240.8 268l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M256.3 268l.5.4-.5-.5z"/>
+    <path fill="#845a52" d="M256.8 268l.5.4-.5-.5z"/>
+    <path fill="#734a42" d="M257.3 268l.5.4-.5-.5z"/>
+    <path fill="#842118" d="M257.8 268l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M258.3 268l.5.4-.5-.5z"/>
+    <path fill="#b51010" d="M258.8 268l.5.4-.5-.5z"/>
+    <path fill="#ce2110" d="M261.8 268l.5.4-.5-.5z"/>
+    <path fill="#310000" d="M262.8 268l.5.4-.5-.5z"/>
+    <path fill="#310010" d="M263.8 268l.5.4-.5-.5z"/>
+    <path fill="#180821" d="M264.3 268l.5.4-.5-.5z"/>
+    <path fill="#310010" d="M264.8 268l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M265.3 268l.5.4-.5-.5z"/>
+    <path fill="#b51010" d="M265.8 268l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M268.9 268l.5.4-.5-.5z"/>
+    <path fill="#bd2110" d="M270.4 268l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M270.9 268l.5.4-.5-.5z"/>
+    <path fill="#631808" d="M271.4 268l.5.4-.5-.5z"/>
+    <path fill="#8c4a4a" d="M271.9 268l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M272.9 268l.5.4-.5-.5z"/>
+    <path fill="#214210" d="M290 268l.4.4-.5-.5z"/>
+    <path fill="#297b00" d="M292 268l.4.4-.5-.5z"/>
+    <path fill="#103900" d="M292.4 268l.5.4-.5-.5z"/>
+    <path fill="#185200" d="M295 268l.4.4-.5-.5z"/>
+    <path fill="#297b00" d="M296 268l.4.4-.5-.5z"/>
+    <path fill="#184a00" d="M298 268l.4.4-.5-.5z"/>
+    <path fill="#103900" d="M300.6 268.2l.2.4-.2-.4m1.8-.3l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M306.4 268l.6.4-.6-.5z"/>
+    <path fill="#8c8c8c" d="M309.5 268l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M310 268l.5.4-.5-.5z"/>
+    <path fill="#296300" d="M311.5 268l.5.4-.5-.5z"/>
+    <path fill="#63636b" d="M312 268l1 .9-1-1z"/>
+    <path fill="#8c8c8c" d="M218.9 268.7l.2.3-.2-.3z"/>
+    <path fill="#295200" d="M219.7 268.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M220.2 268.4l.5.5-.5-.5z"/>
+    <path fill="#102110" d="M222.2 268.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M222.7 268.4v.5l1.5.5-1.5-1z"/>
+    <path fill="#63636b" d="M223.7 268.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M224.7 268.4l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M225.2 268.4v2.4h-.5l-.5-1.5h-.5l.5 4.8h-.5l-.5-5.2h-.5l-.5 3.8h-.5l-2.5-2 1.5 3h-.5l-2-2.4c1.7 5.6 4.1 4.8 8.1 8 1.5 1.2 2.4 3.7 3.4 5.3l-2-1.4 1 1.4-2.4-1.4 3 2.9.4-1.5h.6c-1.3 2.3-3.5 2.6-6 2.9v-.5l1-1 2.4.5c-1.8-1.8-4-2-6.5-1.4l3 2.4v.5l-3 3.3 6-1-.5 1h.5l3-1.4-6 2.8v.5c5.1-.6 5.7-2.3 8.6-5.7-.4 1.5-.4 2.4 1 3.3l-.8-5.7 6.8-7.6-2.5 1.9 2-2.9c-2.9.6-4 2.6-4 5.3l-3 2.8h-.5c1-3 4-4.7 3-8-2.6 1.8-3.4 4-3.5 7l-2-9.5.5 2h-.5v-1h-.5l.5 6.7h-.5c-1.6-3.7-.2-11-3.6-13.4z"/>
+    <path fill="#9c9494" d="M226.2 268.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M228.4 268.7l.2.3-.2-.3z"/>
+    <path fill="#397b00" d="M229.8 268.4l1 1-1-1z"/>
+    <path fill="#5a1008" d="M232.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M233.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M237.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M237.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M240.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M258.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M258.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#736b6b" d="M259.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#6b2908" d="M259.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M260.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M262.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#000818" d="M262.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M263.3 268.4l-.5 1 .5-1z"/>
+    <path fill="#003994" d="M261.8 285h.5c-.8-6-.4-11 2.5-16.6-5.9 2.9-5.5 12-3 16.7z"/>
+    <path fill="#52525a" d="M264.8 268.4l.5.5-.5-.5z"/>
+    <path fill="#9c2118" d="M265.3 268.4l.5.5-.5-.5z"/>
+    <path fill="#ce0008" d="M267.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#bd0008" d="M268.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M268.9 268.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M269.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#7b5252" d="M269.9 268.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M270.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M270.9 268.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M282.9 268.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M289.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M290 268.4l.4.5-.5-.5z"/>
+    <path fill="#314231" d="M290.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M291 268.4l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M292.4 268.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293 268.4l-.6 1 .5-1z"/>
+    <path fill="#103900" d="M295 268.4l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M296.6 268.7l.2.3-.2-.3z"/>
+    <path fill="#185200" d="M298 268.4l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M302.1 268.7l.2.3-.2-.3z"/>
+    <path fill="#297b00" d="M302.4 268.4l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M307.4 268.4l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M308.5 268.4l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M309 268.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M309.5 268.4l.5.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M220.2 268.9l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.4 269.2l.2.3-.2-.3z"/>
+    <path fill="#ada5a5" d="M224.2 268.9l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M224.7 268.9l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M226.2 268.9l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.8 268.9l.4.5-.4-.5m2.4 0l.6.5-.6-.5z"/>
+    <path fill="#397b00" d="M232.8 268.9l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M233.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M237.4 269.2l.2.3-.2-.3z"/>
+    <path fill="#397b00" d="M238.8 268.9l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M239.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M240.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M246.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M260.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M260.8 268.9l.5.5-.5-.5z"/>
+    <path fill="#733939" d="M261.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M261.8 268.9l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M262.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M264.3 268.9l.5.5-.5-.5z"/>
+    <path fill="#6b5252" d="M264.8 268.9l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M267.4 268.9l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M268.4 268.9l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M268.9 268.9l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M282.9 268.9l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M289.4 268.9l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M290 268.9l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M290.4 268.9l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M291 268.9l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M293 268.9l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M295 268.9l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 268.9l-.5 1 .5-1z"/>
+    <path fill="#184a00" d="M298.1 269.2l.2.3-.2-.3z"/>
+    <path fill="#297b00" d="M300 268.9l1 1-1-1z"/>
+    <path fill="#185200" d="M300.4 268.9l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M301.4 268.9l1 1-1-1z"/>
+    <path fill="#103900" d="M305 268.9l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M307 268.9l-2 2.4 2-2.4z"/>
+    <path fill="#7b7373" d="M307.4 268.9l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M308 268.9l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M308.5 268.9l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M309 268.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M310 268.9l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M310.5 268.9l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M311 268.9l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M311.5 268.9l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M312.6 269.2l.2.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M313 268.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M218.9 269.7l.2.3-.2-.3z"/>
+    <path fill="#397b00" d="M219.2 269.4l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M220.7 269.4l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M222 269.5l.4.2-.3-.2z"/>
+    <path fill="#213918" d="M224.2 269.4l.5.4-.5-.4z"/>
+    <path fill="#5a5231" d="M224.7 269.4l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M226.2 269.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M226.7 269.4l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M228.2 269.4l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M228.7 269.4l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M230.3 269.4l.4.4-.4-.4z"/>
+    <path fill="#001000" d="M232.8 269.4l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M235.3 269.4l-.5.9.5-1z"/>
+    <path fill="#103900" d="M238.8 269.4l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M239.8 269.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M240.3 269.4l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M246.3 269.4l.5.4-.5-.4z"/>
+    <path fill="#733939" d="M246.8 269.4l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M247.3 269.4l.5.4-.5-.4m14.5 0l.5.4-.5-.4z"/>
+    <path fill="#001039" d="M262.3 269.4l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M263.8 269.4l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M264.3 269.4l.5.4-.5-.4z"/>
+    <path fill="#842118" d="M264.8 269.4l.5.4-.5-.4z"/>
+    <path d="M267.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#ad0008" d="M267.9 269.4l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M268.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#debdb5" d="M281.9 269.4l.5.4-.5-.4z"/>
+    <path fill="#8c4a4a" d="M282.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#ce1810" d="M282.9 269.4l.5.4-.5-.4z"/>
+    <path fill="#946b63" d="M283.6 269.7l.1.3-.1-.3z"/>
+    <path fill="#001000" d="M289.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M290 269.4l.4.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M291.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M293 269.4l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M293.4 269.4l-.5.9.5-1z"/>
+    <path fill="#184a00" d="M295.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M296.4 269.4l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M297 269.4l-.6.9.5-1z"/>
+    <path fill="#103900" d="M300.1 269.7l.2.3-.2-.3m1.3-.3l.5.4-.5-.4z"/>
+    <path d="M304.4 269.4l.6.4-.6-.4z"/>
+    <path fill="#297b00" d="M305 269.4l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M307 269.4l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M307.4 269.4l.6.4-.6-.4z"/>
+    <path fill="#296300" d="M308 269.4l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M309.5 269.4l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M310 269.4l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M311.5 269.4l.5.4-.5-.4z"/>
+    <path fill="#294221" d="M312 269.4l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M313 269.4l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M313.5 269.4l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M216.7 269.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M217.6 270l.3.2-.3-.2z"/>
+    <path fill="#9c9494" d="M218.2 269.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M219.2 269.8l1 1-1-1z"/>
+    <path fill="#103900" d="M220.7 269.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M221.7 269.8l-.5 1.5.5-1.5m1.5 0v1.5h.5l-.5-1.5z"/>
+    <path fill="#292100" d="M224.7 269.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M226.7 269.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M228.7 269.8l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M232.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.3 269.8l.5.5-.5-.5m1.8.2l.3.2-.3-.2z"/>
+    <path fill="#103900" d="M238.3 269.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M239.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M246.8 269.8v7.7h-.5l-.5-6.7h-4.5v13.8l2-1 1 3.4 2.5-1.4.5 5.2 4.5-1.4c2.1 1.4 3.5 1.4 4.5-1h1l3 2.9-.5-9-9-.6v-.4l8.5.4v-1.4c-6.3-.1-7-4-7-9l-5.5-1.5z"/>
+    <path fill="#b51010" d="M247.3 269.8l.5.5-.5-.5z"/>
+    <path fill="#7b5252" d="M247.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M248.3 269.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M261.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M262.3 269.8l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M263.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#c6b5b5" d="M264.3 269.8l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M264.8 269.8l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M266.9 269.8l.5.5-.5-.5z"/>
+    <path fill="#100808" d="M267.4 269.8l.5.5-.5-.5z"/>
+    <path fill="#5a3131" d="M267.9 269.8l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M280.9 269.8l.5.5-.5-.5z"/>
+    <path fill="#a56363" d="M281.4 269.8l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M281.9 269.8l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M277.4 271.3c0 4.8-.5 8.7-6.5 9 1.3 3.6 7.8 1.3 10-.6 3-2.6 2.5-6.3 2.5-9.9l-6 1.5z"/>
+    <path fill="#bdbdbd" d="M288.9 269.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M289.4 269.8l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M291.4 269.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M293.4 269.8l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M297 269.8l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M301 269.8l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M301.4 269.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M300.4 274.1l4.6-4.3c-2.5.6-3.6 2.2-4.6 4.3z"/>
+    <path fill="#103900" d="M304 269.8l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M306.4 269.8l.6.5-.6-.5z"/>
+    <path fill="#294221" d="M307 269.8l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M307.4 269.8l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M309 269.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M309.5 269.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M312 269.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M312.5 269.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M313 269.8l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M313.5 269.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M314 269.8l.5.5-.5-.5m-97.3.5l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M217.2 270.3l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M218 270.5l.4.1-.3-.1z"/>
+    <path fill="#397b00" d="M218.9 270.6l.2.3-.2-.3z"/>
+    <path fill="#295200" d="M219.2 270.3l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M220.7 270.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M224.7 270.3l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M226.7 270.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M228.7 270.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M230.8 270.3l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M232.8 270.3v1.4h.5l-.5-1.4m2.1.3l.2.3-.2-.3m1.9-.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M238.1 270.5l.3.1-.3-.1z"/>
+    <path fill="#295200" d="M239.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M239.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M240.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#5a3131" d="M245.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M248.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#842118" d="M248.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#8c6363" d="M249.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M249.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M261.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M261.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M263.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M263.8 270.3l.5.5-.5-.5z"/>
+    <path fill="#8c6363" d="M264.3 270.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M266.9 270.3l.5.5-.5-.5z"/>
+    <path fill="#4a2129" d="M267.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M267.9 270.3l.5.5-.5-.5z"/>
+    <path fill="#d6a5a5" d="M279.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#946b63" d="M279.9 270.3l.5.5-.5-.5z"/>
+    <path fill="#a52921" d="M280.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M280.9 270.3l.5.5-.5-.5z"/>
+    <path fill="#4a2129" d="M283.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M283.9 270.3v.5h4.5l-4.5-.5z"/>
+    <path fill="#212139" d="M288.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M290.4 270.3l1.5 1v-.5l-1.5-.5z"/>
+    <path fill="#8c8c8c" d="M291.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M292 270.3l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M293.4 270.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M294 270.3l-.6 1 .5-1m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M296 270.3l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297 270.3l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 270.3l.4.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M300 270.3l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301 270.3l.4.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M306 270.3l.4.5-.4-.5z"/>
+    <path fill="#184a00" d="M306.4 270.3l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M308.5 270.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M309 270.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M313 270.3l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M313.5 270.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M314 270.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M217.2 270.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M217.7 270.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M218.2 270.8l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M220.7 270.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M221.7 270.8l.5.5-.5-.5m3.7.3l.2.3-.2-.3m1.3-.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M227.2 270.8l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.3 270.8l.4.5-.4-.5m2 0l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M236.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M236.8 270.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M237.8 270.8l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M239.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M249.8 270.8l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M250.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M250.8 270.8l.5.5-.5-.5z"/>
+    <path fill="#943131" d="M251.6 271l.4.1-.4-.2z"/>
+    <path fill="#c6b5b5" d="M252.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M261.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M263.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M263.8 270.8l.5.5-.5-.5z"/>
+    <path fill="#943131" d="M264.3 270.8l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M266.3 270.8l1 4.3-1-4.3z"/>
+    <path fill="#6b0808" d="M266.9 270.8l1 1-1-1z"/>
+    <path fill="#733939" d="M267.4 270.8l.5.5-.5-.5z"/>
+    <path fill="#c69c94" d="M276.9 270.8l.5.5-.5-.5z"/>
+    <path fill="#ad3931" d="M277.7 271l.3.1-.3-.2z"/>
+    <path fill="#bd2110" d="M278.4 270.8l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M278.9 270.8l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M279.4 270.8l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M283.4 270.8v3.8h.5l-.5-3.8z"/>
+    <path fill="#003994" d="M283.9 270.8c0 8.8-5.2 12-14 11.4l-.6 9c2 0 4.6.2 5-1.8l2 1.4 2-1.9-.4 2 1-1h.5l3-.5-.5 1.4 1.5-1.9 1 1h1.5v-1.5l1 .5.5-4.3c2.5-2 1-10.7 1-13.8h-4.5z"/>
+    <path fill="#424242" d="M290.4 270.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M292 270.8l.4.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M296 270.8v1.4h.4l-.5-1.4z"/>
+    <path fill="#185200" d="M297 270.8l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M298.4 270.8v2.4h.5l-.5-2.4z"/>
+    <path fill="#185200" d="M300.4 270.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M301 270.8l.4.5-.5-.5z"/>
+    <path fill="#082108" d="M303 270.8l.4.5-.5-.5z"/>
+    <path d="M305.4 270.8l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M306 270.8l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M308 270.8l-1 1.4 1-1.4z"/>
+    <path fill="#63636b" d="M308.5 270.8l.5.5-.5-.5m-90.8.5l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M218.7 271.3l1 1-1-1z"/>
+    <path fill="#295200" d="M219.2 271.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M221.2 271.3l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M221.7 271.3l.5.4-.5-.4m1.5 0v1h1v-1h-1z"/>
+    <path fill="#8c8c8c" d="M227.2 271.3l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M229.3 271.3l.4.4-.4-.4z"/>
+    <path fill="#103900" d="M237.3 271.3l.5.4-.5-.4z"/>
+    <path fill="#396b10" d="M238.8 271.3l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M239.3 271.3l.5.4-.5-.4z"/>
+    <path fill="#8c7373" fill-opacity=".5" d="M252.3 271.3v4.3h.5l-.5-4.3z"/>
+    <path fill="#efefef" d="M260.8 271.3l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M261.3 271.3l.5.4-.5-.4z"/>
+    <path fill="#636b7b" d="M263.3 271.3l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M264.3 271.3l.5.4-.5-.4z"/>
+    <path fill="#420000" d="M266.9 271.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M290.4 271.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M291 271.3l.4.4-.5-.4z"/>
+    <path fill="#425242" d="M292 271.3l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M294 271.3l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M297 271.3l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M300 271.3l1 1-1-1z"/>
+    <path fill="#103900" d="M300.4 271.3l.5.4-.5-.4m2 0l.5.4-.5-.4m2 0L302 274l2.4-2.8z"/>
+    <path fill="#082108" d="M305 271.3l.4.4-.4-.4z"/>
+    <path fill="#297b00" d="M305.4 271.3l.6.4-.6-.4z"/>
+    <path fill="#314231" d="M308 271.3l-.5 1 .5-1z"/>
+    <path fill="#bdbdbd" d="M217.7 271.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M218.2 271.7l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M221.9 272l.2.4-.2-.3m3.5 0l.2.3-.2-.3z"/>
+    <path fill="#526b42" d="M227.2 271.7l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M229.3 271.7l.4.5-.4-.5z"/>
+    <path fill="#314231" d="M229.8 271.7l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.8 271.7l.5.5-.5-.5m3 .5v.5h1.5l-1.5-.5m1.5-.5l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.8 271.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M256.6 271.9l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M257.3 271.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M257.8 271.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M258.3 271.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M260.8 271.7l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M261.3 271.7l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M262.8 271.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M263.3 271.7l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M264.3 271.7l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M266.9 271.7l.5.5-.5-.5z"/>
+    <path fill="#940008" d="M267.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M267.9 271.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M270.9 271.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M271.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M272.2 271.9l.3.2-.3-.2z"/>
+    <path fill="#7b7373" d="M272.9 271.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M290.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M291 271.7l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M291.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M292 271.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M292.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294.3 271.9l.3.2-.4-.2z"/>
+    <path fill="#297b00" d="M296.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M297 271.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M297.4 271.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M300 271.7l.4.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M308 271.7l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M218.2 272.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M219.7 272.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.9 272.5l.2.3-.2-.3z"/>
+    <path fill="#396b10" d="M227.2 272.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M228.7 272.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M229.8 272.2l.4.5-.4-.5z"/>
+    <path fill="#214210" d="M230.3 272.2l1.4 1.4-1.4-1.4z"/>
+    <path fill="#294200" d="M232.4 272.5l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M236.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M238.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M256.8 272.2c0 2.4.3 3.6 3 3.8.4-2.6-.4-3.2-3-3.8z"/>
+    <path fill="#002984" d="M257.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M258.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#10214a" d="M258.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M259.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M259.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M260.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M260.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M262.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M263.8 272.2l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M264.3 272.2l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M266.9 272.2l.5.5-.5-.5z"/>
+    <path fill="#ce0008" d="M267.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M267.9 272.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M269.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M269.9 272.2l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M270.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M270.9 272.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M271.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#003994" d="M268.4 273.2c1.1 4.1 4.4 2.8 4.5-1l-4.5 1z"/>
+    <path fill="#efefef" d="M290.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M291 272.2l.4.5-.5-.5z"/>
+    <path fill="#425242" d="M291.4 272.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M292 272.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M292.4 272.2l.5.5-.5-.5m2 0l.5.5-.5-.5zm7 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M304 272.2l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M307 272.2l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M307.4 272.2l-.4 1 .4-1z"/>
+    <path fill="#5a6b52" d="M218.2 272.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M219.7 272.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M220.2 272.7l.5.5-.5-.5m2 0l.5.5-.5-.5m3 0l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M228.7 272.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M230.3 272.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M235.3 272.7l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M237.8 272.7l-.5 1 .5-1z"/>
+    <path fill="#cecece" d="M238.3 272.7l-.5 1 .5-1z"/>
+    <path fill="#002984" d="M259.8 272.7l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M260.3 272.7l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M260.8 272.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M262.8 272.7l.5.5-.5-.5z"/>
+    <path fill="#b5adad" d="M263.8 272.7l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M266.9 272.7l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M267.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#524242" d="M267.9 272.7l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M268.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M268.9 272.7l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M269.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M291 272.7l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M291.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M292 272.7l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M292.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M294.4 272.7l1 1-1-1z"/>
+    <path fill="#297b00" d="M295 272.7l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M296.6 273l.2.3-.2-.3z"/>
+    <path fill="#297b00" d="M297 272.7l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301 272.7l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M303.4 272.7l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M306.4 272.7l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M218.2 273.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M220.2 273.2l.5.5-.5-.5m2.2.3l.2.3-.2-.3z"/>
+    <path fill="#295200" d="M223.7 273.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M229.3 273.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M231.8 273.2l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M232.3 273.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M234.8 273.2l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M260.3 273.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M260.8 273.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M262.3 273.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M262.8 273.2l.5.5-.5-.5z"/>
+    <path fill="#ad0008" d="M267.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#390821" d="M267.9 273.2l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M291 273.2l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M291.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M292 273.2l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M292.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293 273.2l.4.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M297.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M298.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M300.4 273.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M303 273.2l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M306 273.2l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M306.4 273.2l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M218.2 273.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M218.7 273.6l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M223.7 273.6l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M228.2 273.6l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M229.3 273.6l1 1-1-1z"/>
+    <path fill="#cecece" d="M229.8 273.6l1 1-1-1z"/>
+    <path fill="#001000" d="M231.8 273.6l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M233.8 273.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M234.3 273.6l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M236.3 273.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M236.8 273.6l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M237.3 273.6l.5.5-.5-.5z"/>
+    <path fill="#001039" d="M260.3 273.6l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M262.3 273.6l.5.5-.5-.5z"/>
+    <path fill="#7b0008" d="M266.9 273.6l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M289.7 273.8l.4.2-.4-.2z"/>
+    <path fill="#9c9494" d="M291 273.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M291.8 273.8l.3.2-.4-.2z"/>
+    <path fill="#7b7373" d="M292.4 273.6l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293 273.6l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M295 274l.3.3-.2-.3m1.5 0l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M297.4 273.6l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M300 273.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M302.4 273.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M305.4 273.6l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M306 273.6l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M308 273.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M308.5 273.6l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M309 273.6l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M309.5 273.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M310 273.6l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M218.7 274.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M220.7 274.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M222.2 274.1l1 1-1-1z"/>
+    <path fill="#397b00" d="M222.7 274.1l.5.5-.5-.5m2.5 0l-.5 1h1l-.5-1z"/>
+    <path fill="#396b10" d="M227.2 274.1l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M228.4 274.4l.2.4-.2-.4z"/>
+    <path fill="#efefef" d="M231.3 274.1l-.6 1 .6-1z"/>
+    <path fill="#294200" d="M231.8 274.1l.4.5-.4-.5m1.6.3l.2.4-.2-.4z"/>
+    <path fill="#295200" d="M233.8 274.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M234.8 274.1l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M235.3 274.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M235.8 274.1l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M260.3 274.1l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M262.3 274.1l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M267.5 274.4l.2.4-.2-.4z"/>
+    <path fill="#bd0008" d="M267.9 274.1l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M268.4 274.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M289.4 274.1l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M290 274.1l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M291 274.1l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M291.4 274.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M292.4 274.1l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M293 274.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M298.4 274.1v2h.5l-.5-2z"/>
+    <path fill="#185200" d="M299.8 274.3l.3.1-.3-.1m1.6-.2l-1 1.4 1-1.4z"/>
+    <path fill="#296300" d="M302 274.1l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M305 274.1l-1 2.4h.4l.6-2.4z"/>
+    <path fill="#63636b" d="M305.4 274.1l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M307 274.1l.4.5-.4-.5z"/>
+    <path fill="#425242" d="M307.4 274.1l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M308 274.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M308.5 274.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M310 274.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M310.5 274.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M218.7 274.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M221 274.8l.4.1-.3-.1z"/>
+    <path fill="#526b42" d="M227.2 274.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M229 274.8l.4.1-.3-.1z"/>
+    <path fill="#314231" d="M230.3 274.6l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M231.3 274.6l-.6 1 .6-1z"/>
+    <path fill="#397b00" d="M232.8 274.6v1.4l1.5-1.4h-1.5z"/>
+    <path fill="#5a6b52" d="M234.3 274.6l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M234.8 274.6l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M256.3 274.6l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M260.2 274.8l.3.1-.3-.1z"/>
+    <path fill="#7b7373" d="M262.3 274.6l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M268 275l.2.2-.2-.3z"/>
+    <path fill="#390821" d="M268.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M283.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M290 274.6l.4.5-.5-.5z"/>
+    <path fill="#315221" d="M291.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M292.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M293 274.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M293.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M295.3 274.8l.3.1-.4-.1z"/>
+    <path fill="#185200" d="M296.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M299.4 274.6l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M305 274.6l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M305.4 274.6l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M306 274.6l.4.5-.4-.5z"/>
+    <path fill="#315221" d="M306.4 274.6l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M307 274.6l.4.5-.4-.5z"/>
+    <path fill="#314231" d="M310.5 274.6l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M218.7 275l.5.6-.5-.5z"/>
+    <path fill="#295200" d="M219.2 275l.5.6-.5-.5z"/>
+    <path fill="#103900" d="M221.2 275l.5.6-.5-.5z"/>
+    <path fill="#294200" d="M222.7 275l.5.6-.5-.5z"/>
+    <path fill="#295200" d="M224.7 275l.5.6-.5-.5z"/>
+    <path fill="#6b735a" d="M227.2 275l.5.6-.5-.5z"/>
+    <path fill="#7b7373" d="M228.2 275l.5.6-.5-.5z"/>
+    <path fill="#294200" d="M229.4 275.4l.2.3-.2-.3z"/>
+    <path fill="#315221" d="M231.3 275l.4.6-.4-.5z"/>
+    <path fill="#103900" d="M232.8 275l.5.6-.5-.5z"/>
+    <path fill="#63636b" d="M233.8 275l-.5 1 .5-1z"/>
+    <path fill="#292921" d="M234.8 275l.5.6-.5-.5z"/>
+    <path fill="#dedede" d="M235.3 275l.5.6-.5-.5z"/>
+    <path fill="#733939" d="M240.8 275l.5.6-.5-.5z"/>
+    <path fill="#bd2110" d="M245.8 275l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M256.3 275l.5.6-.5-.5z"/>
+    <path fill="#002984" d="M261.8 275l.5.6-.5-.5z"/>
+    <path fill="#9c9494" d="M262.3 275l.5.6-.5-.5z"/>
+    <path fill="#b51010" d="M266.9 275l.5.6-.5-.5z"/>
+    <path fill="#520808" d="M267.4 275l.5.6-.5-.5z"/>
+    <path fill="#7b0008" d="M268.4 275l.5.6-.5-.5z"/>
+    <path fill="#636b7b" d="M272.9 275l.5.6-.5-.5z"/>
+    <path fill="#002984" d="M283.6 275.4l.1.3-.1-.3z"/>
+    <path fill="#001000" d="M290 275l.4.6-.5-.5z"/>
+    <path fill="#dedede" d="M290.4 275l.5.6-.5-.5z"/>
+    <path fill="#6b735a" d="M291.4 275l.5.6-.5-.5z"/>
+    <path fill="#185200" d="M293.3 275.2l.3.2-.4-.2z"/>
+    <path fill="#103900" d="M295.4 275l.5.6-.5-.5z"/>
+    <path fill="#297b00" d="M297 275l.4.6-.5-.5z"/>
+    <path fill="#293129" d="M304.4 275l.6.6-.6-.5z"/>
+    <path fill="#7b7373" d="M305 275l.4.6-.4-.5z"/>
+    <path fill="#214210" d="M305.4 275l.6.6-.6-.5z"/>
+    <path fill="#297b00" d="M306 275l.4.6-.4-.5z"/>
+    <path fill="#185200" d="M310.5 275l.5.6-.5-.5z"/>
+    <path fill="#cecece" d="M311 275l.5.6-.5-.5z"/>
+    <path fill="#314231" d="M219.2 275.6l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M221.2 275.6l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M222.7 275.6l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M223.2 275.6l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M224.7 275.6l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M227.4 275.9l.2.3-.2-.3m.8-.3l.6.4-.6-.4z"/>
+    <path fill="#294200" d="M230.8 275.6l.4.4-.4-.4z"/>
+    <path fill="#397b00" d="M231.3 275.6l-.6 2.3h.6v-2.3z"/>
+    <path fill="#294200" d="M232.4 275.9l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M234.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M235 275.9l.1.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M235.3 275.6l.5.4-.5-.4m4 0l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M239.8 275.6l.5.4-.5-.4z"/>
+    <path fill="#315221" d="M240.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#310000" d="M240.8 275.6l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M246.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#845a52" d="M252.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M256.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M256.8 275.6l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M261.8 275.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M262.3 275.6l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M266.9 275.6l.5.4-.5-.4z"/>
+    <path fill="#940008" d="M267.4 275.6l1 .9-1-1z"/>
+    <path fill="#bd0008" d="M268.2 275.7l.3.2-.3-.2z"/>
+    <path fill="#00215a" d="M268.9 275.6l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M272.4 275.6l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M272.9 275.6l-.5.9.5-1z"/>
+    <path fill="#103900" d="M290 275.6l.4.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M290.4 275.6l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M291.4 275.6l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M292 275.6l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M293.4 275.6l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M295.4 275.6l.5.4-.5-.4zm5 0l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M304 275.6l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M304.4 275.6l.6.4-.6-.4z"/>
+    <path fill="#297b00" d="M305 275.6l.4.4-.4-.4m4.3.1l.3.2-.3-.2m1.2-.1l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M311 275.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M219.2 276l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M219.7 276l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M221.7 276l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.2 276l1 1-1-1z"/>
+    <path fill="#397b00" d="M223.7 276l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M224.7 276l-.5 1.5.5-1.5z"/>
+    <path fill="#bdbdbd" d="M228.2 276l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.7 276l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.8 276l.4.5-.4-.5z"/>
+    <path fill="#738c63" d="M232.8 276l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M233.8 276l-2 2.4 2-2.4z"/>
+    <path fill="#214210" d="M234.3 276l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M235.4 276.4l.2.3-.2-.3z"/>
+    <path fill="#efefef" d="M237.3 276l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M237.8 276l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M238.3 276l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M238.8 276v1.5h.5l-.5-1.5z"/>
+    <path fill="#397b00" d="M239.6 276.2l.3.2-.3-.2z"/>
+    <path fill="#214210" d="M240.3 276l.5.5-.5-.5z"/>
+    <path fill="#733939" d="M240.8 276l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M246.3 276l.5.5-.5-.5z"/>
+    <path fill="#943131" d="M252.3 276l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M256.8 276l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M257.3 276l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M257.8 276l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M258.7 276.2l.3.2-.3-.2z"/>
+    <path fill="#001039" d="M259.3 276l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M261.8 276l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M262.3 276l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M266.9 276l.5.5-.5-.5z"/>
+    <path fill="#bd0008" d="M267.4 276l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M268.4 276l2 5.3-2-5.3z"/>
+    <path fill="#391810" d="M268.9 276l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M269.4 276l.5.5-.5-.5z"/>
+    <path fill="#21315a" d="M269.9 276l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M271.9 276l.5.5-.5-.5z"/>
+    <path fill="#9c4a42" d="M276.9 276l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M282.9 276l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M290 276.4l.2.3-.1-.3z"/>
+    <path fill="#395231" d="M290.4 276l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M291.4 276l-.5 1 .5-1z"/>
+    <path fill="#296300" d="M292 276l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M293.4 276l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M295.4 276l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M300 276l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M303.1 276.4l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M303.4 276l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M308 276l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M308.5 276l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M309 276l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M309.5 276l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M310 276l1 1-1-1z"/>
+    <path fill="#315221" d="M311 276l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M219.7 276.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M220.2 276.5l1 1-1-1m1.5 0l1.5 1v-.5l-1.5-.5z"/>
+    <path fill="#294200" d="M222.2 276.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.2 276.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M227.2 276.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M228.2 276.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M228.7 276.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.8 276.5v1.4h.4l-.4-1.4z"/>
+    <path fill="#295200" d="M231.8 276.5l.4.5-.4-.5z"/>
+    <path fill="#396b10" d="M232.3 276.5l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M232.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M233.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M234.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M236.3 276.5l-.5 1 .5-1z"/>
+    <path fill="#63636b" d="M236.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M237.3 276.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M239.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M240.3 276.5l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M246.3 276.5l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M252.3 276.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M259.3 276.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M259.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M261.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M263.8 276.5l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M266.9 276.5l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M268 276.8l.2.3-.2-.3z"/>
+    <path fill="#7b0008" d="M268.9 276.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M269.4 276.5l.5.5-.5-.5z"/>
+    <path fill="#ad3931" d="M276.9 276.5l.5.5-.5-.5z"/>
+    <path fill="#842118" d="M282.9 276.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M290.4 276.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M292 276.5l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M293.8 276.7l.3.1-.4-.1z"/>
+    <path fill="#185200" d="M297 276.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M302 276.5l1 1-1-1z"/>
+    <path fill="#103900" d="M302.4 276.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M307 276.5l.4.5-.4-.5z"/>
+    <path fill="#425242" d="M307.4 276.5l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M308 276.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M310 276.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M311 276.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M311.5 276.5l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M315 276.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M315.6 276.8l.2.3-.2-.3z"/>
+    <path fill="#63636b" d="M220.2 277l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M224.7 277l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.7 277l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M227.2 277l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M228.7 277l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M231.8 277l.4.5-.4-.5z"/>
+    <path fill="#bdc6ad" d="M232.3 277l.4.5-.4-.5z"/>
+    <path fill="#214210" d="M233.3 277l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M234.3 277l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M235.4 277.3l.2.3-.2-.3z"/>
+    <path fill="#314231" d="M236.3 277l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M239.3 277l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M239.8 277l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M246.3 277l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M252.3 277l.5.5-.5-.5z"/>
+    <path fill="#a59494" d="M252.8 277l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M259.3 277l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M259.8 277l.5.5-.5-.5z"/>
+    <path fill="#10295a" d="M261.8 277l.5.5-.5-.5z"/>
+    <path fill="#c6b5b5" d="M263.8 277l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M264.5 277.3l.2.3-.2-.3z"/>
+    <path fill="#bd0008" d="M268.9 277l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M269.4 277l.5.5-.5-.5z"/>
+    <path fill="#debdb5" d="M276.4 277l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M276.9 277l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M282.9 277l.5.5-.5-.5z"/>
+    <path fill="#5a7b42" d="M290 277l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M290.4 277l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M291 277l.4.5-.5-.5z"/>
+    <path fill="#315221" d="M292 277l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M293.4 277l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M294 277v1.4h.4l-.5-1.4z"/>
+    <path fill="#185200" d="M296 277.3l.3.3-.2-.3z"/>
+    <path fill="#296300" d="M297 277l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M299 277l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M301.4 277l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M302 277l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M306 277l.4.5-.4-.5z"/>
+    <path fill="#395231" d="M306.4 277l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M307 277l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M310.5 277l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M311 277l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M311.5 277l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M313.5 277l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M314 277l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M314.5 277l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M315 277l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M220.7 277.5l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M221.2 277.5l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M224.7 277.5l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M225.4 277.8l.2.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M227.2 277.5l.5.4-.5-.4z"/>
+    <path fill="#5a5231" d="M228.7 277.5l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M231.3 277.5l-.6 1 .6-1z"/>
+    <path fill="#425242" d="M231.8 277.5l.4.4-.4-.4z"/>
+    <path fill="#214210" d="M232.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M234.3 277.5l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M235.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M238.3 277.5l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M238.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M239.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M246.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#842118" d="M252.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M259.3 277.5l.5.4-.5-.4z"/>
+    <path fill="#42425a" d="M261.8 277.5v3.8h.5l-.5-3.8z"/>
+    <path fill="#bdbdbd" d="M263.8 277.5l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M266.9 277.5l.5.4-.5-.4z"/>
+    <path fill="#ad0008" d="M268.4 277.5l.5.4-.5-.4z"/>
+    <path fill="#733939" d="M269.4 277.5l.5.4-.5-.4z"/>
+    <path fill="#9c4239" d="M276.4 277.5l.5.4-.5-.4z"/>
+    <path fill="#ce1810" d="M282.4 277.5l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M288.9 277.5l1 1-1-1z"/>
+    <path fill="#4a6342" d="M290 277.8l.2.3-.1-.3z"/>
+    <path fill="#314231" d="M291 277.5l.4.4-.5-.4z"/>
+    <path fill="#4a6342" d="M292 277.5l.4.4-.5-.4z"/>
+    <path fill="#296300" d="M298.4 277.5l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M299 277.5l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M301 277.5l.4.4-.5-.4z"/>
+    <path fill="#296300" d="M301.4 277.5l.5.4-.5-.4m3.6 0l.4.4-.4-.4z"/>
+    <path fill="#294221" d="M305.4 277.5l.6.4-.6-.4z"/>
+    <path fill="#9c9494" d="M306 277.5l.4.4-.4-.4z"/>
+    <path fill="#7b7373" d="M311 277.5l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M311.5 277.5l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M312 277.5l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M312.5 277.5l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M313 277.5l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M313.6 277.8l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M314 277.5l.5.4-.5-.4z"/>
+    <path fill="#294221" d="M314.5 277.5l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M315 277.5l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M221.2 278l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M221.7 278l.5.4-.5-.5z"/>
+    <path fill="#5a5231" d="M222.2 278l.5.4-.5-.5z"/>
+    <path fill="#295200" d="M222.7 278l.5.4-.5-.5z"/>
+    <path fill="#5a6b52" d="M227.2 278l.5.4-.5-.5z"/>
+    <path fill="#526b42" d="M228.7 278l.5.4-.5-.5z"/>
+    <path fill="#213918" d="M231.3 278l.4.4-.4-.5z"/>
+    <path fill="#315221" d="M232.3 278l.4.4-.4-.5z"/>
+    <path fill="#295200" d="M233.8 278l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M234.3 278l.5.4-.5-.5z"/>
+    <path fill="#292100" d="M235.3 278l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M235.8 278l.5.4-.5-.5z"/>
+    <path fill="#295200" d="M237.8 278l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M238.3 278l.5.4-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M239.8 278l.5.4-.5-.5z"/>
+    <path fill="#ad1810" d="M246.8 278l.5.4-.5-.5z"/>
+    <path fill="#ce1810" d="M252.8 278l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M253.3 278l.5.4-.5-.5z"/>
+    <path fill="#7b7373" d="M259.3 278l.5.4-.5-.5z"/>
+    <path fill="#efefef" d="M263.8 278l.5.4-.5-.5z"/>
+    <path fill="#b51010" d="M264.3 278l.5.4-.5-.5z"/>
+    <path fill="#ad0008" d="M267.4 278l.5.4-.5-.5z"/>
+    <path fill="#bd0008" d="M267.9 278l.5.4-.5-.5z"/>
+    <path fill="#7b0008" d="M268.4 278l.5.4-.5-.5z"/>
+    <path fill="#940008" d="M269.4 278l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M269.9 278l.5.4-.5-.5z"/>
+    <path fill="#a5847b" d="M275.9 278l-.5.9.5-1z"/>
+    <path fill="#ce1810" d="M276.4 278l.5.4-.5-.5z"/>
+    <path fill="#392121" d="M282.4 278l.5.4-.5-.5z"/>
+    <path fill="#103910" d="M288.9 278l.5.4-.5-.5z"/>
+    <path fill="#185200" d="M291 278l.4.4-.5-.5z"/>
+    <path fill="#efefef" d="M291.4 278l.5.4-.5-.5z"/>
+    <path fill="#6b735a" d="M292 278l.4.4-.5-.5z"/>
+    <path fill="#184a00" d="M296 278.3l.3.3-.2-.3z"/>
+    <path fill="#297b00" d="M298 278l1 .9-1-1z"/>
+    <path fill="#103900" d="M298.4 278l.5.4-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M304 278l.4.4-.5-.5z"/>
+    <path fill="#214210" d="M304.4 278l.6.4-.6-.5z"/>
+    <path fill="#9c9494" d="M305 278l.4.4-.4-.5z"/>
+    <path fill="#bdbdbd" d="M309.3 278.1l.3.2-.3-.2z"/>
+    <path fill="#8c8c8c" d="M310 278l.5.4-.5-.5z"/>
+    <path fill="#6b735a" d="M310.5 278l.5.4-.5-.5z"/>
+    <path fill="#4a6342" d="M311 278l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M311.5 278l.5.4-.5-.5z"/>
+    <path fill="#296300" d="M312 278l.5.4-.5-.5z"/>
+    <path fill="#297b00" d="M312.5 278l-.5.9.5-1z"/>
+    <path fill="#319400" d="M313 278l.5.4-.5-.5z"/>
+    <path fill="#7b7373" d="M314 278l.5.4-.5-.5z"/>
+    <path fill="#efefef" d="M314.5 278l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M222.7 278.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M223.2 278.4l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M223.7 278.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M224.2 278.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M227.2 278.4l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M230.8 278.4l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M231.3 278.4l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M231.8 278.4l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M233.8 278.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M237.3 278.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M237.8 278.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M247.3 278.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M253.3 278.4l1 1-1-1z"/>
+    <path fill="#a59494" d="M253.8 278.4l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M264.3 278.4l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M267.9 278.4v6.7h1.5l-1.5-6.7z"/>
+    <path fill="#6b0808" d="M268.5 278.7l.2.4-.2-.4z"/>
+    <path fill="#ce0008" d="M269.4 278.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M269.9 278.4l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M275.9 278.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M281.9 278.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M288.9 278.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M289.4 278.4l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M290 278.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M291 278.4l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M291.4 278.4l.5.5-.5-.5z"/>
+    <path fill="#8c9c84" d="M292 278.7l.2.4-.1-.4z"/>
+    <path fill="#296300" d="M294 278.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M294.4 278.4l-.5 1 .5-1z"/>
+    <path fill="#185200" d="M298 278.4l.4.5-.5-.5m1.5 0l-1.5 2 1.5-2z"/>
+    <path fill="#184a00" d="M300 278.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M303 278.4l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M303.4 278.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M304 278.4l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M304.4 278.4l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M305 278.4l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M305.8 278.6l.3.1-.3-.1z"/>
+    <path fill="#6b735a" d="M306.4 278.4l.6.5-.6-.5z"/>
+    <path fill="#4a6342" d="M307 278.4l.4.5-.4-.5z"/>
+    <path fill="#426331" d="M307.4 278.4l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M308 278.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M308.5 278.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M309.3 278.6l.3.1-.3-.1z"/>
+    <path fill="#184a00" d="M312.5 278.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M313 278.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M313.5 278.4l.5.5-.5-.5m-89.3.5l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M224.7 278.9l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M225.2 278.9l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M225.7 278.9l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.2 278.9l1 1-1-1z"/>
+    <path fill="#397b00" d="M227.2 278.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M227.7 278.9l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M230.8 278.9l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M231.3 278.9l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.8 278.9l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M233.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M235.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M237.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M239.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M247.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M247.8 278.9l1 1.4-1-1.4z"/>
+    <path fill="#8c7373" d="M254.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M254.8 278.9l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M264.3 278.9l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M267.5 279.2l.2.3-.2-.3z"/>
+    <path fill="#6b2131" d="M269.9 278.9l.5.5-.5-.5z"/>
+    <path fill="#946b63" d="M274.9 278.9l.5.5-.5-.5z"/>
+    <path fill="#ce1810" d="M275.4 278.9l.5.5-.5-.5m6 0l-.5 1 .5-1z"/>
+    <path fill="#00216b" d="M281.9 278.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M288.9 278.9l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M289.4 278.9l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M290 278.9l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M291.4 278.9l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M294.6 279.2l.2.3-.2-.3m1.3-.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M302 278.9l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M302.4 278.9l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M303 278.9l.4.5-.5-.5z"/>
+    <path fill="#395231" d="M303.4 278.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M304 278.9l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M304.4 278.9l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M305 278.9l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M311 278.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M311.5 278.9l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M312 278.9l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M312.5 278.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M224.7 279.4l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M225.2 279.4l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M226.2 279.4l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M227.7 279.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M230.3 279.4l.4.5-.4-.5z"/>
+    <path fill="#ada5a5" d="M230.8 279.4l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M231.3 279.4l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M233 279.5l.4.2-.3-.2m2 0l.3.2-.3-.2z"/>
+    <path fill="#103900" d="M236.8 279.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M238.8 279.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M239.3 279.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M254.8 279.4l.5.5-.5-.5z"/>
+    <path fill="#8c7373" d="M255.3 279.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M255.8 279.4l.5.5-.5-.5z"/>
+    <path fill="#943131" d="M264.5 279.7l.2.3-.2-.3z"/>
+    <path fill="#940008" d="M268.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#ad0008" d="M268.9 279.4l.5.5-.5-.5z"/>
+    <path fill="#940008" d="M269.9 279.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M270.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#a5847b" d="M273.9 279.4l.5.5-.5-.5z"/>
+    <path fill="#9c2118" d="M274.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M281.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M289 279.7l.2.3-.1-.3z"/>
+    <path fill="#297b00" d="M289.4 279.4v.5h1.5v-.5h-1.5z"/>
+    <path fill="#185200" d="M290 279.4l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M291.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M292 279.4l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M296 279.4l.4.5-.5-.5m5.5 0l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M302 279.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M302.4 279.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M310 279.4l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M310.5 279.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M311 279.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M311.5 279.4l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M224.7 279.9l.5.4-.5-.4z"/>
+    <path fill="#422100" d="M226.7 279.9l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M227.7 279.9l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M228.2 279.9l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M230.3 279.9l.4.4-.4-.4z"/>
+    <path fill="#314231" d="M231.3 279.9l.4.4-.4-.4z"/>
+    <path fill="#294200" d="M232.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M234.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M236.3 279.9l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M236.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#396b10" d="M238.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M239.3 279.9l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M248.8 279.9l.5.4-.5-.4m7 0l.5.4-.5-.4z"/>
+    <path fill="#9c2929" d="M256.3 279.9l.5.4-.5-.4z"/>
+    <path fill="#845a52" d="M256.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#a59494" d="M257.3 279.9l.5.4-.5-.4z"/>
+    <path fill="#c6b5b5" d="M257.8 279.9l.5.4-.5-.4z"/>
+    <path fill="#8c7373" d="M258.7 280l.3.2-.3-.2z"/>
+    <path fill="#212139" d="M259.3 279.9l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M267.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#ce0008" d="M268.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#6b0808" d="M268.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#ce0008" d="M269.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#734a42" d="M270.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#946b63" d="M270.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#bd8c8c" d="M271.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#a5847b" d="M271.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#9c5a52" d="M272.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#ad3931" d="M272.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M273.4 279.9l.5.4-.5-.4m7 0l.5.4-.5-.4z"/>
+    <path fill="#00216b" d="M280.9 279.9l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M289.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M290.6 280.2l.1.3-.1-.3z"/>
+    <path fill="#297b00" d="M291.4 279.9l.5.4-.5-.4z"/>
+    <path fill="#082108" d="M292 279.9l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M294.4 279.9v1.4h.5l-.5-1.4z"/>
+    <path fill="#103900" d="M301 279.9l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M308.5 279.9l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M309 279.9l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M309.5 279.9l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M310 279.9l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M310.5 279.9l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M224.7 280.3l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M225.2 280.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M226.2 280.3l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M226.7 280.3l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M228.2 280.3l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M230.3 280.3l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M230.8 280.3l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M231.3 280.3l.4.5-.4-.5m1.4 0l.6.5-.6-.5m1.6 0l-1 2h.4l.6-2z"/>
+    <path fill="#397b00" d="M234.8 280.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M236.1 280.5l.3.1-.3-.1z"/>
+    <path fill="#397b00" d="M238.3 280.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M238.8 280.3l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M248.8 280.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M249.3 280.3l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M259.3 280.3l.5.5-.5-.5z"/>
+    <path fill="#8c6363" d="M264.3 280.3l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M267.5 280.6l.2.4-.2-.4z"/>
+    <path fill="#520808" d="M268.9 280.3l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M270.4 280.3l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M279.9 280.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M280.4 280.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M289.4 280.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M292 280.3l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M298 280.3l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M300 280.3l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M300.4 280.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M307.4 280.3l.6.5-.6-.5z"/>
+    <path fill="#214210" d="M308 280.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M308.5 280.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M309 280.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M225.2 280.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M225.7 280.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M226.2 280.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M226.7 280.8l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M227.2 280.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.2 280.8l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M228.7 280.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M230.3 280.8l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M230.8 280.8l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M231.3 280.8l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M234.3 280.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M235.3 280.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.8 280.8l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M238.3 280.8l-1 1.4 1-1.4z"/>
+    <path fill="#ad1810" d="M249.8 280.8l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M250.3 280.8l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M259.3 280.8l.5.5-.5-.5z"/>
+    <path fill="#8c7373" d="M264.3 280.8l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M268.9 280.8l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M270.4 280.8l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M278.9 280.8l.5.5-.5-.5z"/>
+    <path fill="#291029" d="M279.4 280.8l.5.5-.5-.5z"/>
+    <path fill="#29396b" d="M288.4 280.8l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M289.4 280.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M290.4 280.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M291 280.8l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M292 280.8l.4.5-.5-.5m7.5 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M300 280.8l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M304 280.8l1 1-1-1z"/>
+    <path fill="#185200" d="M304.4 280.8l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M305 280.8v.5h2l-2-.5z"/>
+    <path fill="#185200" d="M307 280.8l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M307.4 280.8l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M308 280.8v.5h1.5l-1.5-.5z"/>
+    <path fill="#4a6342" d="M309.5 280.8v.5h1.5l-1.5-.5z"/>
+    <path fill="#7b8c73" d="M311 280.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M311.5 280.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M312 280.8l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M225.2 281.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M227.2 281.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M228.7 281.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.8 281.3l.4.5-.4-.5z"/>
+    <path fill="#5a1008" d="M230.3 281.3l.4.5-.4-.5z"/>
+    <path fill="#733939" d="M230.8 281.3l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M234.3 281.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M234.8 281.3l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M238.3 281.3l-.5 1 .5-1z"/>
+    <path fill="#b51010" d="M250.8 281.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M251.3 281.3l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M251.8 281.3l1 1-1-1z"/>
+    <path fill="#ce1810" d="M259.3 281.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M259.8 281.3l.5.5-.5-.5z"/>
+    <path fill="#425a84" d="M261.8 281.3l.5.5-.5-.5z"/>
+    <path fill="#b5adad" d="M264.3 281.3l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M267.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#940008" d="M269.2 281.4l.3.2-.3-.2z"/>
+    <path fill="#ad0008" d="M269.9 281.3l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M270.4 281.3l1 1-1-1z"/>
+    <path fill="#ce1810" d="M277.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M277.9 281.3l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M278.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M288.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#396321" d="M289.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M291 281.3v1.4h.4l-.5-1.4z"/>
+    <path fill="#296300" d="M292 281.3l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M292.4 281.3l-.5 1 .5-1z"/>
+    <path fill="#296300" d="M294.4 281.3v2.4h1l-1-2.4z"/>
+    <path fill="#297b00" d="M295 281.3l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M299 281.3l-1 1.4 1-1.4z"/>
+    <path fill="#297b00" d="M299.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M303.1 281.6l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M303.4 281.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M304 281.3l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M311 281.3l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M311.5 281.3l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M312 281.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M225.2 281.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M225.7 281.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M226.2 281.8l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M227.2 281.8l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M227.7 281.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M229.4 282l.2.4-.2-.3z"/>
+    <path fill="#7b1008" d="M229.8 281.8l.4.4-.4-.4z"/>
+    <path fill="#de2110" d="M230.4 282l.2.4-.2-.3z"/>
+    <path fill="#631808" d="M231 282v.4-.3z"/>
+    <path fill="#294200" d="M232.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M236.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#946b63" d="M240.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M251.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M252.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M253.3 281.8l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M253.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#ce1810" d="M254.3 281.8v.4h4l-4-.4z"/>
+    <path fill="#941808" d="M258.3 281.8l.5.4-.5-.4z"/>
+    <path fill="#a51008" d="M258.8 281.8l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M259.3 281.8l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M259.8 281.8l.5.4-.5-.4m2.2.3l.2.3-.2-.3z"/>
+    <path fill="#bdbdbd" d="M264.3 281.8l.5.4-.5-.4z"/>
+    <path fill="#ce1810" d="M265 282l.2.4-.2-.3z"/>
+    <path fill="#000818" d="M269.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M269.9 281.8l.5.4-.5-.4z"/>
+    <path fill="#080829" d="M270.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#ce1810" d="M271.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M275.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M275.9 281.8l.5.4-.5-.4z"/>
+    <path fill="#5a1021" d="M276.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#00215a" d="M276.9 281.8l.5.4-.5-.4z"/>
+    <path fill="#292921" d="M288.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#5a7b42" d="M289.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M292.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M299 281.8l.4.4-.5-.4m2.5 0l1 .9-1-1z"/>
+    <path fill="#185200" d="M302 281.8l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M302.4 281.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M308.5 281.8l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M309 281.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M309.5 281.8l.5.4-.5-.4z"/>
+    <path fill="#395231" d="M310 281.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M310.5 281.8l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M311 281.8l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M311.5 281.8l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M225.2 282.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.7 282.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.2 282.2l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M226.7 282.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M227.2 282.2l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M227.7 282.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M229.8 282.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.6 282.4l.3.2-.3-.2z"/>
+    <path fill="#396b10" d="M236.3 282.2l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M254.3 282.2l.5.5-.5-.5zm3.5 0l.5.5-.5-.5z"/>
+    <path fill="#391810" d="M259.8 282.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M264.3 282.2l.5.5-.5-.5z"/>
+    <path fill="#291029" d="M269.4 282.2l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M271.9 282.2v.5h3.5l-3.5-.5z"/>
+    <path fill="#082108" d="M288.4 282.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M288.9 282.2l.5.5-.5-.5z"/>
+    <path fill="#4a6342" d="M289.6 282.6l.1.3-.1-.3z"/>
+    <path fill="#184a00" d="M292.6 282.6l.1.3-.1-.3z"/>
+    <path fill="#297b00" d="M298.4 282.2l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M301 282.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301.4 282.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M306 282.2l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M306.4 282.2l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M307 282.2l.4.5-.4-.5z"/>
+    <path fill="#4a6342" d="M307.4 282.2l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M308 282.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M308.5 282.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M309 282.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M225.2 282.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.7 282.7l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M226.2 282.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.7 282.7l1 1v-1h-1z"/>
+    <path fill="#292100" d="M227.7 282.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.2 282.7l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M229.8 282.7l.4.5-.4-.5z"/>
+    <path fill="#b51010" d="M230.3 282.7l.4.5-.4-.5z"/>
+    <path fill="#5a2908" d="M230.8 282.7l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M232.3 282.7l.4.5-.4-.5z"/>
+    <path fill="#214210" d="M235.3 282.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M235.8 282.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M236.3 282.7l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M259.8 282.7l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M260.3 282.7l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M262.3 282.7l.5.5-.5-.5z"/>
+    <path fill="#a51008" d="M264.8 282.7l.5.5-.5-.5z"/>
+    <path fill="#390821" d="M269.4 282.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M288.4 282.7l1 1-1-1z"/>
+    <path fill="#5a6b52" d="M288.9 282.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M291 282.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M291.4 282.7l-.5 1 .5-1z"/>
+    <path fill="#185200" d="M297 284.1l1.4-1.4-1.5 1.4z"/>
+    <path fill="#297b00" d="M300 282.7l1 1-1-1z"/>
+    <path fill="#103900" d="M300.4 282.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M301 282.7l.4.5-.5-.5m4 0l.6.5-.6-.5z"/>
+    <path fill="#315221" d="M305.4 282.7l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M306 282.7l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M306.4 282.7l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M219.7 283.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M220.2 283.2l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M225.7 283.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M226.7 283.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M228.2 283.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M228.7 283.2l.5 1.4h.5l-1-1.4z"/>
+    <path fill="#397b00" d="M230.3 283.2l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M230.8 283.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232 283.3l.4.2-.3-.2m1.7-.1l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M234.3 283.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M234.8 283.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M235.3 283.2l.5.5-.5-.5z"/>
+    <path fill="#391810" d="M260.3 283.2l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M261.8 283.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M262.3 283.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M264.8 283.2l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M267.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M269.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M289.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M291.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M292.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293 283.2l-.6 1 .5-1z"/>
+    <path fill="#296300" d="M299.4 283.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M300 283.2l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M304 283.2l.4.5-.5-.5z"/>
+    <path fill="#425242" d="M304.4 283.2l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M305 283.2l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M219.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#293129" d="M220.2 283.7l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M220.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M221.2 283.7l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M221.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M225.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M227.2 283.7l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M227.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M228.7 283.7l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M231.8 283.7l.4.4-.4-.4z"/>
+    <path fill="#295200" d="M233.3 283.7l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M233.8 283.7l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M234.8 283.7l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M235.3 283.7l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M239.3 283.7l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M239.8 283.7l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M242.8 283.7l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M260.8 283.7l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M262.3 283.7l.5.4-.5-.4z"/>
+    <path fill="#943131" d="M265 284l.2.3-.2-.3z"/>
+    <path fill="#a51008" d="M267.4 283.7l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M288.9 283.7l.5.4-.5-.4z"/>
+    <path fill="#082108" d="M289.4 283.7l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M291.6 284l.1.3-.1-.3z"/>
+    <path fill="#296300" d="M293 283.7l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M294.8 283.8l.3.2-.4-.2m1.7-.1l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M299 283.7l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M299.4 283.7l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M303 283.7l.4.4-.5-.4z"/>
+    <path fill="#294221" d="M303.4 283.7l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M304 283.7l.4.4-.5-.4z"/>
+    <path fill="#cecece" d="M219.7 284.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M220.2 284.1l.5.5-.5-.5zm1.5 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M222.6 284.3l.3.2-.3-.2z"/>
+    <path fill="#526b42" d="M223.2 284.1l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M223.7 284.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M224.2 284.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M224.7 284.1l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M225.2 284.1l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M225.7 284.1l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M226.2 284.1l-.5 1 .5-1z"/>
+    <path fill="#397b00" d="M227.7 284.1l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M228.2 284.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M231.8 284.1l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.8 284.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M233.3 284.1l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M234.8 284.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.3 284.1v2h.5l-.5-2z"/>
+    <path fill="#63636b" d="M235.8 284.1l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M239.3 284.1l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M239.8 284.1l1 1-1-1z"/>
+    <path fill="#cecece" d="M240.3 284.1l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M242.3 284.1l-1 1.5 1-1.5z"/>
+    <path fill="#181000" d="M242.8 284.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M260.8 284.1l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M261.3 284.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M262.3 284.1l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M267.4 284.1l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M288.9 284.1v1.5h.5l-.5-1.5z"/>
+    <path fill="#103900" d="M289.4 284.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M293 284.5l.2.3-.1-.3z"/>
+    <path fill="#297b00" d="M297 285.6l2.4-1.5-2.5 1.5z"/>
+    <path fill="#103900" d="M298.4 284.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M302.4 284.1l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M303 284.1l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M303.4 284.1l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M220.2 284.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.7 284.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M225.2 284.6l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M226.2 284.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.7 284.6l1.5 1.4-1.5-1.4z"/>
+    <path fill="#294200" d="M228.7 284.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M229.8 284.6l.4.5-.4-.5z"/>
+    <path fill="#52525a" d="M232.8 284.6l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M234.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M234.8 284.6l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M235.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M236.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M239.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M239.8 284.6c-1.7 3.3-3.4 7 1 9 0-2.7 1-6.8-1-9z"/>
+    <path fill="#bd2110" d="M241.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M242.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M242.8 284.6l-.5 1h1l-.5-1z"/>
+    <path fill="#b51010" d="M243.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#31394a" d="M261.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#525a6b" d="M262.3 284.6l.5.5-.5-.5z"/>
+    <path fill="#8c7373" d="M265 285l.2.3-.2-.4z"/>
+    <path fill="#a51008" d="M267.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M287.6 285l.1.3-.1-.4z"/>
+    <path fill="#00216b" d="M287.9 284.6l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M288.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M289.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M291.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295 284.6l-.6 1 .5-1z"/>
+    <path fill="#103900" d="M298 284.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M301.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M302 284.6l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M302.4 284.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M303 284.6l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M303.8 284.8l.3.1-.3-.1z"/>
+    <path fill="#4a6342" d="M304.8 284.8l.3.1-.3-.1z"/>
+    <path fill="#295210" d="M305.4 284.6l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M306 284.6l.4.5-.4-.5z"/>
+    <path fill="#296300" d="M306.4 284.6v.5h2.6l-2.6-.5z"/>
+    <path fill="#184a00" d="M309 284.6l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M309.5 284.6l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M310 284.6l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M310.5 284.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M311 284.6l.5.5-.5-.5m-90.8.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M221.7 285l.5.6-.5-.5z"/>
+    <path fill="#294200" d="M222.6 285.3l.3.1-.3-.1z"/>
+    <path fill="#397b00" d="M223.4 285.4l.2.3-.2-.3z"/>
+    <path fill="#292100" d="M226.7 285l.5.6-.5-.5z"/>
+    <path fill="#397b00" d="M229.8 285l-.6 1.5h.6v-1.4m2.4 0l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M232.8 285l.5.6-.5-.5z"/>
+    <path fill="#425242" d="M234.3 285l.5.6-.5-.5z"/>
+    <path fill="#428c00" d="M234.8 285c-1.2 3.2-1 5 1 7.7h.5v-7.6h-.5v5.7h-1v-5.7z"/>
+    <path fill="#315221" d="M236.3 285l.5.6-.5-.5z"/>
+    <path fill="#efefef" d="M238.8 285l.5.6-.5-.5z"/>
+    <path fill="#396b10" d="M239.3 285l.5.6-.5-.5z"/>
+    <path fill="#293129" d="M240.8 285l.5.6-.5-.5z"/>
+    <path fill="#293100" d="M241.8 285l.5.6-.5-.5z"/>
+    <path fill="#631808" d="M243.3 285l.5.6-.5-.5z"/>
+    <path fill="#cecece" d="M261.3 285l.5.6-.5-.5z"/>
+    <path fill="#001039" d="M261.8 285l.5.6-.5-.5z"/>
+    <path fill="#42425a" d="M262.3 285l.5.6-.5-.5z"/>
+    <path fill="#520808" d="M267.4 285l.5.6-.5-.5z"/>
+    <path fill="#6b5252" d="M267.9 285l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M268.4 285l.5.6-.5-.5z"/>
+    <path fill="#290018" d="M268.9 285l.5.6-.5-.5z"/>
+    <path fill="#420000" d="M269.4 285l.5.6-.5-.5z"/>
+    <path fill="#001010" d="M287.9 285l.5.6-.5-.5z"/>
+    <path fill="#292921" d="M288.4 285l.5.6-.5-.5z"/>
+    <path fill="#185200" d="M289.4 285l1 1-1-1z"/>
+    <path fill="#297b00" d="M290 285l.4.6-.5-.5z"/>
+    <path fill="#184a00" d="M291.4 285v1.5h.5l-.5-1.4z"/>
+    <path fill="#185200" d="M293 285l.4.6-.5-.5z"/>
+    <path fill="#103900" d="M297.4 285l.5.6-.5-.5z"/>
+    <path fill="#297b00" d="M300 285l.4.6-.5-.5z"/>
+    <path fill="#184a00" d="M300.4 285v.6h1.5l-1.5-.5z"/>
+    <path fill="#296300" d="M302.3 285.3l.3.1-.3-.1z"/>
+    <path fill="#297b00" d="M303 285l.4.6-.5-.5m3.6 0l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M307 285l.4.6-.4-.5z"/>
+    <path fill="#315221" d="M307.4 285l.6.6-.6-.5z"/>
+    <path fill="#6b735a" d="M308 285l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M308.5 285l.5.6-.5-.5z"/>
+    <path fill="#bdbdbd" d="M309 285l.5.6-.5-.5z"/>
+    <path fill="#425242" d="M220.7 285.6l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M227.2 285.6l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M229.8 285.6l.4.4-.4-.4m2.4 0l1 1-1-1z"/>
+    <path fill="#5a5231" d="M232.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M233.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M234.3 285.6l.5.4-.5-.4m2 0l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M236.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M238.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M240 285.9l.1.3-.2-.3z"/>
+    <path fill="#295200" d="M240.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#100808" d="M241.3 285.6l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M241.8 285.6l-.5 7.6 1.5-1.4h.5l-.5 1.9c3.9-1.1 4.6-3.7 3.5-7.2l-2.5 5.3h-.5v-6.2h-.5l-1 5.2v-5.2z"/>
+    <path fill="#295200" d="M242.3 285.6l.5.4-.5-.4z"/>
+    <path fill="#293100" d="M243.3 285.6l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M245.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M246.3 285.6l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M261.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#080829" d="M262.3 285.6l.5.4-.5-.4z"/>
+    <path fill="#c6b5b5" d="M264.8 285.6l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M266.9 285.6l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M267.4 285.6l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M287.9 285.6l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M288.4 285.6l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M289.2 285.7l.4.2-.4-.2z"/>
+    <path fill="#184a00" d="M293 285.6l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M294.4 285.6l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M297 285.6l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M299 285.6l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M299.4 285.6l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M300 285.6l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M304.4 285.6l.6.4-.6-.4z"/>
+    <path fill="#185200" d="M305 285.6l.4.4-.4-.4z"/>
+    <path fill="#315221" d="M305.4 285.6l.6.4-.6-.4z"/>
+    <path fill="#6b735a" d="M306 285.6l.4.4-.4-.4z"/>
+    <path fill="#9c9494" d="M306.4 285.6l.6.4-.6-.4z"/>
+    <path fill="#dedede" d="M307 285.6l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M220.7 286l1 1-1-1z"/>
+    <path fill="#214210" d="M221.2 286l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M227.7 286l1 1v-1h-1z"/>
+    <path fill="#103900" d="M228.7 286l.5.5-.5-.4m2 0l-.5.9.5-1z"/>
+    <path fill="#397b00" d="M231.3 286l.4.5-.4-.4z"/>
+    <path fill="#295200" d="M232.3 286l.4.5-.4-.4z"/>
+    <path fill="#213918" d="M233.8 286l.5.5-.5-.4z"/>
+    <path fill="#294200" d="M235.3 286v2.4h.5l-.5-2.3z"/>
+    <path fill="#526b42" d="M236.8 286l.5.5-.5-.4z"/>
+    <path fill="#ada5a5" d="M238.3 286l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M238.8 286l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M241.3 286l.5.5-.5-.4z"/>
+    <path fill="#294200" d="M242.3 286v2h.5l-.5-2z"/>
+    <path fill="#397b00" d="M243.3 286l.5.5-.5-.4z"/>
+    <path fill="#941808" d="M243.8 286l.5.5-.5-.4m1.5 0l-.5.9.5-1z"/>
+    <path fill="#293100" d="M245.8 286l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M246.3 286l.5.5-.5-.4z"/>
+    <path fill="#efefef" d="M261.8 286l.5.5-.5-.4z"/>
+    <path fill="#292921" d="M262.3 286l.5.5-.5-.4z"/>
+    <path fill="#efefef" d="M262.8 286l.5.5-.5-.4z"/>
+    <path fill="#842118" d="M266.9 286l.5.5-.5-.4z"/>
+    <path fill="#293129" d="M288.4 286l.5.5-.5-.4z"/>
+    <path fill="#296300" d="M288.9 286l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M290 286l.4.5-.5-.4z"/>
+    <path fill="#185200" d="M293 286l.4.5-.5-.4z"/>
+    <path fill="#103900" d="M294.4 286l.5.5-.5-.4z"/>
+    <path fill="#296300" d="M298 286l.4.5-.5-.4z"/>
+    <path fill="#103900" d="M298.4 286l.5.5-.5-.4z"/>
+    <path fill="#296300" d="M299 286l.4.5-.5-.4z"/>
+    <path fill="#297b00" d="M303 286l.4.5-.5-.4z"/>
+    <path fill="#103900" d="M303.4 286l.5.5-.5-.4z"/>
+    <path fill="#001000" d="M304 286l.4.5-.5-.4z"/>
+    <path fill="#101810" d="M304.4 286l.6.5-.6-.4z"/>
+    <path fill="#8c8c8c" d="M305 286l.4.5-.4-.4z"/>
+    <path fill="#bdbdbd" d="M305.8 286.2l.3.2-.3-.2z"/>
+    <path fill="#214210" d="M221.7 286.5l1 1-1-1z"/>
+    <path fill="#397b00" d="M225.9 286.8l.2.4-.2-.4m6.8-.3l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M233.3 286.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M233.8 286.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M237 286.8l.1.4-.2-.4z"/>
+    <path fill="#dedede" d="M237.8 286.5l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M238.3 286.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M239.8 286.5l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M243.8 286.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M245.3 286.5l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M246.8 286.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M262.3 286.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M263 286.8l.2.4-.2-.4z"/>
+    <path fill="#736b6b" d="M266.9 286.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M288.4 286.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M288.9 286.5l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M291.4 286.5l.5 2h.5l-1-2z"/>
+    <path fill="#297b00" d="M292 286.5l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M293 286.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M294 286.5l.4.5-.5-.5zm3 0l1 1-1-1z"/>
+    <path fill="#184a00" d="M297.4 286.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M298 286.5l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M301.4 286.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M302 286.5v.5l2 .5v-.5l-2-.5z"/>
+    <path fill="#103900" d="M302.4 286.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M303 286.5l.4.5-.5-.5z"/>
+    <path fill="#319400" d="M303.4 286.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#297b00" d="M305.1 286.8l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M305.4 286.5v.5l2 .5v-.5l-2-.5z"/>
+    <path fill="#185200" d="M306.4 286.5l.6.5-.6-.5z"/>
+    <path fill="#103900" d="M307 286.5l.4.5-.4-.5z"/>
+    <path fill="#4a6342" d="M307.4 286.5l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M308 286.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M308.5 286.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M221.7 287l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M224.6 287.2l.3.1-.3-.1z"/>
+    <path fill="#295200" d="M225.2 287l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M229.8 287l.4.5-.4-.5z"/>
+    <path fill="#001000" d="M233.3 287l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M237.8 287l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M240 287.3l.1.3-.2-.3z"/>
+    <path fill="#397b00" d="M241.1 287.2l.3.1-.3-.1z"/>
+    <path fill="#294200" d="M243.8 287l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M244.3 287l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M244.8 287l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M246.3 287l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M246.8 287l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M263.3 287l-.5 1 .5-1z"/>
+    <path fill="#ce1810" d="M266.3 287l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M266.9 287l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M288.4 287l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M288.9 287l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M290 287l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M290.4 287l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293 287l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297 287l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M300 287l1 1-1-1z"/>
+    <path fill="#185200" d="M300.4 287l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M301 287l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M301.8 287.2l.3.1-.3-.1m2.1-.2l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M304.6 287.3l.2.3-.2-.3z"/>
+    <path fill="#319400" d="M305.4 287l.6.5-.6-.5z"/>
+    <path fill="#297b00" d="M306 287l.4.5-.4-.5z"/>
+    <path fill="#185200" d="M307.4 287l.6.5-.6-.5z"/>
+    <path fill="#184a00" d="M308 287l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M308.5 287l.5.5-.5-.5z"/>
+    <path d="M309 287l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M309.5 287l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M310 287l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M222.4 287.8l.2.3-.2-.3z"/>
+    <path fill="#52525a" d="M222.7 287.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.2 287.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.7 287.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M229.3 287.5l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M229.8 287.5l.4.5-.4-.5m2.3.1l.3.2-.3-.2z"/>
+    <path fill="#294200" d="M233.4 287.8l.2.3-.2-.3z"/>
+    <path fill="#397b00" d="M236.8 287.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M237.3 287.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M237.8 287.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M240.8 287.5v1.4h.5l-.5-1.4z"/>
+    <path fill="#397b00" d="M243.8 287.5v1h1l-1-1z"/>
+    <path fill="#211800" d="M244.3 287.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M245.8 287.5l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M246.8 287.5l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M263.3 287.5l.5.5-.5-.5z"/>
+    <path fill="#9c2118" d="M266.3 287.5l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M287.4 287.5l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M287.9 287.5l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M289 287.8l.2.3-.1-.3z"/>
+    <path fill="#296300" d="M290.2 287.6l.4.2-.4-.2z"/>
+    <path fill="#103900" d="M296 287.5l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M299.1 287.8l.2.3-.2-.3z"/>
+    <path fill="#103900" d="M299.8 287.6l.3.2-.3-.2z"/>
+    <path fill="#319400" d="M294 293.2c4.7-2.5 8.4-4.3 14-4.3-4.7-2.6-12.5-1-14 4.3z"/>
+    <path fill="#297b00" d="M304 287.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M305 287.5l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M305.4 287.5l.6.5-.6-.5z"/>
+    <path fill="#293129" d="M306 287.5l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M306.4 287.5l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M307 287.5l.4.5-.4-.5z"/>
+    <path fill="#314231" d="M222.7 288l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M227.2 288l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M227.7 288l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M228.7 288l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M229.3 288l.4.4-.4-.4m2.4 0l.6.4-.6-.4z"/>
+    <path fill="#294200" d="M236.8 288l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M237.3 288l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M239.6 288.1l.3.2-.3-.2m2.7-.1v1.4h.5l-.5-1.4z"/>
+    <path fill="#295200" d="M245.3 288l.5.4-.5-.4z"/>
+    <path fill="#293100" d="M246.8 288l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M263.3 288l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M263.8 288l.5.4-.5-.4z"/>
+    <path fill="#8c6363" d="M266.3 288l.5.4-.5-.4z"/>
+    <path fill="#00184a" d="M286.9 288l.5.4-.5-.4z"/>
+    <path fill="#21315a" d="M287.4 288l.5.4-.5-.4z"/>
+    <path fill="#5a7b42" d="M287.9 288l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M290.4 288l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M291.4 288l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M298 288l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M298.4 288l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M306.4 288l.6.4-.6-.4z"/>
+    <path fill="#103900" d="M307 288l.4.4-.4-.4z"/>
+    <path fill="#5a6b52" d="M307.4 288l.6.4-.6-.4z"/>
+    <path fill="#9c9494" d="M308 288l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M308.5 288l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M221.7 288.4l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M222.2 288.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.2 288.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M226.7 288.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M227.2 288.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M228.7 288.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M232 288.8v.3-.4z"/>
+    <path fill="#295200" d="M233.3 288.4l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M237.1 288.6l.3.1-.3-.1z"/>
+    <path fill="#295200" d="M239.3 288.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M244 288.8l.1.3-.2-.4m1.5 0l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M246.8 288.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M256.3 288.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M256.8 288.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M263.8 288.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M266.3 288.4l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M285.9 288.4l.5.5-.5-.5z"/>
+    <path d="M286.9 288.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M287.4 288.4l.5.5-.5-.5z"/>
+    <path fill="#396321" d="M287.9 288.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M288.9 288.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M289.4 288.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M290.4 288.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M297 288.4l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M297.4 288.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M298 288.4l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M308 288.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M308.5 288.4l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M309 288.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M309.5 288.4l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M221.7 289l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M224.7 289l.5.4-.5-.5z"/>
+    <path fill="#294200" d="M225.6 289l.3.2-.3-.1z"/>
+    <path fill="#397b00" d="M226.2 289l.5.4-.5-.5z"/>
+    <path fill="#103900" d="M228.2 289l.5.4-.5-.5z"/>
+    <path fill="#294200" d="M233.4 289.2l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M234.8 289v1.8h1V289h-1z"/>
+    <path fill="#6b735a" d="M236.8 289l.5.4-.5-.5z"/>
+    <path fill="#396b10" d="M237.3 289l.5.4-.5-.5z"/>
+    <path fill="#294200" d="M239.3 289v2.3h.5l-.5-2.4z"/>
+    <path fill="#295200" d="M241 289.2l.1.4-.2-.4z"/>
+    <path fill="#392100" d="M256.3 289l.5.4-.5-.5z"/>
+    <path fill="#292100" d="M256.8 289l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M263.8 289l.5.4-.5-.5z"/>
+    <path fill="#cecece" d="M264.3 289l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M264.8 289l-.5.9.5-1z"/>
+    <path fill="#bd0008" d="M265.3 289l.5.4-.5-.5z"/>
+    <path fill="#63636b" d="M265.8 289l.5.4-.5-.5z"/>
+    <path fill="#00216b" d="M277.4 289l-.5.9.5-1z"/>
+    <path fill="#002984" d="M278 289.2l.2.4-.2-.4m5.4-.3l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M283.9 289l2 1.3v-.4l-2-1z"/>
+    <path fill="#001010" d="M285.9 289l.5.4-.5-.5z"/>
+    <path fill="#002984" d="M286.4 289l.5.4-.5-.5z"/>
+    <path fill="#103900" d="M286.9 289l.5.4-.5-.5z"/>
+    <path fill="#dedede" d="M287.4 289l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M288 289.2l.2.4-.1-.4z"/>
+    <path fill="#296300" d="M289.2 289l.4.2-.4-.1z"/>
+    <path fill="#184a00" d="M290.4 289l.5.4-.5-.5z"/>
+    <path fill="#297b00" d="M291.4 289l.5.4-.5-.5z"/>
+    <path fill="#296300" d="M292 289l-.6 1.8.5-1.9z"/>
+    <path fill="#103900" d="M293.4 289l.5.4-.5-.5z"/>
+    <path fill="#319400" d="M294 289.2l.2.4-.1-.4z"/>
+    <path fill="#103900" d="M294.4 289l.5.4-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 289.4v.5h1.5l-1.5-.5z"/>
+    <path fill="#103900" d="M296.4 289l.5.4-.5-.5z"/>
+    <path fill="#185200" d="M297 289l.4.4-.5-.5z"/>
+    <path fill="#297b00" d="M302.4 289l.5.4-.5-.5z"/>
+    <path fill="#296300" d="M303 289l.4.4-.5-.5z"/>
+    <path fill="#184a00" d="M303.4 289l-1 .4v.5l1-1z"/>
+    <path fill="#315221" d="M304 289l.4.4-.5-.5z"/>
+    <path fill="#4a6342" d="M304.4 289v.4h3.6l-3.6-.5z"/>
+    <path fill="#295210" d="M308 289l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M308.5 289l.5.4-.5-.5z"/>
+    <path fill="#296300" d="M309 289l.5.4-.5-.5z"/>
+    <path fill="#185200" d="M309.5 289l.5.4-.5-.5z"/>
+    <path fill="#294221" d="M310 289l.5.4-.5-.5z"/>
+    <path fill="#9c9494" d="M310.5 289l.5.4-.5-.5m-89.3.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M221.7 289.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M223.7 289.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M224.2 289.4l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M224.7 289.4l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M227.7 289.4l.5.5-.5-.5m4 0l.6.5-.6-.5z"/>
+    <path fill="#397b00" d="M236.3 289.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M236.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M237.3 289.4l.5.5-.5-.5m5 0l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M243.6 289.6l.4.1-.4-.1z"/>
+    <path fill="#295200" d="M245.3 289.4l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M251.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M255.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M256.3 289.4l1 1-1-1z"/>
+    <path fill="#428c00" d="M256.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M257.3 289.4l.5.5-.5-.5z"/>
+    <path fill="#8c7373" d="M264.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#6b0808" d="M265.3 289.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M265.8 289.4l.5.5-.5-.5z"/>
+    <path fill="#000818" d="M274.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M277.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M281.4 289.4l1 1v-1h-1z"/>
+    <path fill="#001039" d="M283.4 289.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M285.9 289.4l.5.5-.5-.5z"/>
+    <path d="M286.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M286.9 289.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M287.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M290.6 289.7l.1.3-.1-.3z"/>
+    <path fill="#297b00" d="M293 289.4v.5l2.4 1v-.6l-2.5-1z"/>
+    <path fill="#185200" d="M293.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M294.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M296 289.4l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M301 289.4l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M301.8 289.6l.3.1-.3-.1z"/>
+    <path fill="#214210" d="M303.4 289.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M304 289.4l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M304.4 289.4l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M305 289.4l.4.5-.4-.5m4 0l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M309.5 289.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M310 289.4l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M310.8 289.6l.3.1-.3-.1z"/>
+    <path fill="#315221" d="M221.2 289.9l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M222.7 289.9l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M223.2 289.9l.5.4-.5-.4m4 0l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M227.7 289.9l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M229.3 289.9l-.6 1 .6-1z"/>
+    <path fill="#397b00" d="M229.8 289.9l.4.4-.4-.4z"/>
+    <path fill="#295200" d="M231.3 289.9l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M231.8 289.9l.4.4-.4-.4z"/>
+    <path fill="#397b00" d="M232.3 289.9l.4.4-.4-.4m1.3.1l.3.2-.3-.2z"/>
+    <path fill="#295200" d="M236.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M236.8 289.9l.5.4-.5-.4z"/>
+    <path fill="#426331" d="M237.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M241 290.2l.1.3-.2-.3z"/>
+    <path fill="#295200" d="M242.3 289.9l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M245.1 290l.4.2-.4-.2m1.7-.1l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M251.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#211800" d="M251.8 289.9l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M252.3 289.9l1 1-1-1z"/>
+    <path fill="#b51010" d="M255.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M255.8 289.9l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M256.3 289.9l-1 2.8-1.5-1 1.5 3.9h.5v-2h.5v3.4c2.4-1.5 2.1-4.2 1.5-6.7h-.5v4.8h-.5l-.5-5.2z"/>
+    <path fill="#294200" d="M257.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M257.8 289.9l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M264.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#6b4242" d="M264.8 289.9l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M265.3 289.9l.5.4-.5-.4z"/>
+    <path fill="#103910" d="M274.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#10214a" d="M274.9 289.9l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M276.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M276.9 289.9l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M277.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#002984" d="M278.9 289.9l.5.4-.5-.4z"/>
+    <path fill="#001010" d="M281.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M283.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M285.9 289.9l.5.4-.5-.4z"/>
+    <path fill="#424242" d="M286.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M286.9 289.9l-3 8.6a7.2 7.2 0 003-8.6z"/>
+    <path fill="#293129" d="M287.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M287.9 289.9l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M293 289.9l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M294.8 290l.3.2-.4-.2z"/>
+    <path fill="#184a00" d="M295.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M299.4 289.9l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M299.4 290.3v.5h2.5l-2.5-.5z"/>
+    <path fill="#297b00" d="M301 289.9l.4.4-.5-.4z"/>
+    <path fill="#319400" d="M301.4 289.9v.4h3.6l-3.6-.4z"/>
+    <path fill="#296300" d="M305 289.9l.4.4-.4-.4z"/>
+    <path fill="#315221" d="M305.4 289.9l-.4 1 .4-1z"/>
+    <path fill="#7b7373" d="M306 289.9l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M306.4 289.9l.6.4-.6-.4z"/>
+    <path fill="#dedede" d="M311 289.9l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M220.7 290.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M221.2 290.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M222.2 290.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M222.7 290.3l.5.5-.5-.5m3.5 0v1.5h.5l-.5-1.5z"/>
+    <path fill="#103900" d="M226.7 290.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.3 290.3l.4.5-.4-.5z"/>
+    <path fill="#425242" d="M231.3 290.3l.4.5-.4-.5z"/>
+    <path fill="#315221" d="M232.3 290.3l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M233.8 290.3l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M236.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M237.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M242.1 290.5l.3.2-.3-.2z"/>
+    <path fill="#294200" d="M243.4 290.7l.2.3-.2-.3m1.4-.4l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M251.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M251.8 290.3l1 2.4h1.5l-2.5-2.4z"/>
+    <path fill="#311000" d="M252.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M255.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M256.8 290.3v2h.5l-.5-2z"/>
+    <path fill="#5a1008" d="M257.8 290.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M264.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M264.8 290.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M265.3 290.3l.5.5-.5-.5z"/>
+    <path fill="#083121" d="M274.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M274.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M275.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#102110" d="M276.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M276.9 290.3l-.5 4.3h.5v-4.3z"/>
+    <path fill="#083121" d="M277.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#000818" d="M278.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M280.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M281.4 290.3l-.5 1 .5-1z"/>
+    <path fill="#00215a" d="M282.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M283.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#00215a" d="M283.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M284.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M284.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M285.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M285.9 290.3l-.5 1 .5-1z"/>
+    <path fill="#294221" d="M286.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M287.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M287.9 290.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M290.6 290.7l.1.3-.1-.3z"/>
+    <path fill="#103900" d="M293 290.3l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M294 290.3l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M298.4 290.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M299 290.3l.4.5-.5-.5m3 0l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M302.4 290.3v.5h1.5l-1.5-.5z"/>
+    <path fill="#4a6342" d="M304.3 290.5l.3.2-.3-.2z"/>
+    <path fill="#184a00" d="M305.4 290.3l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M306 290.3l.4.5-.4-.5z"/>
+    <path fill="#103900" d="M306.4 290.3l.6.5-.6-.5z"/>
+    <path fill="#425242" d="M307 290.3l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M307.4 290.3l1 1-1-1z"/>
+    <path fill="#7b7373" d="M220.7 290.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M224.2 290.8l.5 2h.5l-1-2z"/>
+    <path fill="#294200" d="M225.6 291l.3.1-.3-.1z"/>
+    <path fill="#295200" d="M227.7 290.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M228.2 290.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.7 290.8l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M230.8 290.8l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M231.3 290.8l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M232.3 290.8l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M232.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M233.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M233.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M234.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M236.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M237.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M240.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M244.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#181000" d="M246.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M247.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#313918" d="M251.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M251.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#293100" d="M252.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M253.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M254.2 291l.3.1-.3-.1z"/>
+    <path fill="#5a2121" d="M254.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M255.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M257.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M258.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M264.3 290.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M264.8 290.8l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M271.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#00216b" d="M272.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#103921" d="M274.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M274.9 290.8l-.5 6.2c1.8-1.7 1.8-4 .5-6.2z"/>
+    <path fill="#102121" d="M275.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#212139" d="M275.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M276.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M277.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M277.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M278.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M278.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#31425a" d="M279.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M280.2 291l.3.1-.3-.1z"/>
+    <path fill="#184a00" d="M281.6 291.1l.1.4-.1-.4z"/>
+    <path fill="#42425a" d="M281.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#636b7b" d="M282.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M282.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M283.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M284.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M284.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M285.9 290.8l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M286.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M291.4 290.8l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293 290.8l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M294 290.8l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M297.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M298 290.8l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M298.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M303 290.8l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M303.4 290.8l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M304 290.8l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M304.4 290.8l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M305 290.8l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M306 290.8l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M306.4 290.8l-.4 1 .4-1z"/>
+    <path fill="#8c8c8c" d="M307 290.8l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M307.4 290.8l.6.5-.6-.5z"/>
+    <path fill="#314231" d="M220.7 291.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M221.2 291.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M221.7 291.3l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M222.2 291.3l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M222.7 291.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M223.6 291.4l.3.2-.3-.2z"/>
+    <path fill="#428c00" d="M225.6 291.4l.3.2-.3-.2z"/>
+    <path fill="#294200" d="M227 291.4l.4.2-.3-.2z"/>
+    <path fill="#397b00" d="M227.7 291.3l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M230.3 291.3l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M230.8 291.3l.4.5-.4-.5z"/>
+    <path fill="#420000" d="M232.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M234.4 291.6l.2.3-.2-.3z"/>
+    <path fill="#295200" d="M234.8 291.3l.5 1.9h.5l-1-1.9z"/>
+    <path fill="#8c8c8c" d="M236.4 291.6l.2.3-.2-.3z"/>
+    <path fill="#efefef" d="M237.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M237.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M240.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M243.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M244.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M246.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M246.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M247.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M247.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M248.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M248.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M249.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M249.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M251.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M251.8 291.3l1 1-1-1z"/>
+    <path fill="#103900" d="M252.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M253.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M254.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M254.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M258.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#7b5252" d="M258.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M259.3 291.3l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M259.8 291.3l.5.5-.5-.5z"/>
+    <path fill="#002984" d="M269.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#00184a" d="M269.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#42425a" d="M270.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M271.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M271.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M272.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M275.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M275.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M278.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M280.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M280.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M282.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M283.9 291.3l1 1-1-1z"/>
+    <path fill="#296300" d="M284.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M284.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M285.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M285.9 291.3l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M286.4 291.3l.5.5-.5-.5m4 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M291.6 291.6l.1.3-.1-.3m.8-.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293.4 291.3l1 1-1-1z"/>
+    <path fill="#184a00" d="M294 291.3l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M296.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M297 291.3l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M297.4 291.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M304.4 291.3l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M305 291.3l.4.5-.4-.5z"/>
+    <path fill="#5a6b52" d="M305.4 291.3l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M221 292h.4-.3z"/>
+    <path fill="#efefef" d="M222.2 291.8l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M222.7 291.8l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M223.7 293.7l1-1.4c-1.3-.3-2 .4-1 1.4z"/>
+    <path fill="#294200" d="M225.6 292h.3-.3z"/>
+    <path fill="#295200" d="M226.2 291.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M229.3 291.8l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M229.8 291.8l.4.4-.4-.4z"/>
+    <path fill="#efefef" d="M230.3 291.8l.4.4-.4-.4z"/>
+    <path fill="#5a2121" d="M232.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M237.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M238.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M241 292l.1.4-.2-.3m1.9-.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M246.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M247.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M247.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#428c00" d="M248.3 291.8l.5 3.3 2.5 2 3.5.4.5-.5c-.3-1.3-4.4-6.9-5-3.8l-1-1.4h-1z"/>
+    <path fill="#397b00" d="M249.3 291.8v1l1-1h-1z"/>
+    <path fill="#295200" d="M250.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M251.1 292h.4-.4z"/>
+    <path fill="#397b00" d="M252 292l.1.4-.1-.3z"/>
+    <path fill="#294200" d="M252.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#214210" d="M254.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M254.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#526b42" d="M258.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M259.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M260.3 291.8l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M260.8 291.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M261.3 291.8l.5.4-.5-.4m6.5 0l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M268.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M268.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M269.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M269.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M275.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M275.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M277.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M278.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M279.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#294221" d="M280.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M280.9 291.8l-3.5 5.7c3.9 0 5.6-2 6-5.7h-.5l-3.5 5.2 1.5-5.2z"/>
+    <path fill="#4a6342" d="M281.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M282.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M283.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M283.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M284.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M285.4 291.8l-3.5 6.2c2.3-1.1 4-3.7 3.5-6.2z"/>
+    <path fill="#082108" d="M285.9 291.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M286.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M290.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M293.4 291.8l.5.4-.5-.4m2.5 0l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M296.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M298.3 292h.3-.3z"/>
+    <path fill="#296300" d="M299 291.8l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M299.4 291.8v.4h1.5l-1.5-.4z"/>
+    <path fill="#185200" d="M301 291.8l.4.4-.5-.4z"/>
+    <path fill="#184a00" d="M301.8 292h.3-.3z"/>
+    <path fill="#185200" d="M302.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M303.1 292l.2.4-.2-.3z"/>
+    <path fill="#297b00" d="M303.4 291.8l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M306 291.8l.4.4-.4-.4z"/>
+    <path fill="#63636b" d="M306.4 291.8l.6.4-.6-.4z"/>
+    <path fill="#efefef" d="M307 291.8l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M222.2 292.3l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M223.7 292.3l-.5.9h1l-.5-1z"/>
+    <path fill="#103900" d="M224.2 292.3l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M228.2 292.3l.5.4-.5-.4z"/>
+    <path fill="#5a5231" d="M228.7 292.3l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M229.3 292.3l.4.4-.4-.4z"/>
+    <path fill="#bdbdbd" d="M231.3 292.3l.4.4-.4-.4z"/>
+    <path fill="#8c8c8c" d="M231.8 292.3l.4.4-.4-.4z"/>
+    <path fill="#8c9c84" d="M232.3 292.3l.4.4-.4-.4z"/>
+    <path fill="#5a5231" d="M232.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#422100" d="M233.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#5a2908" d="M233.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#311000" d="M234.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M235.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#5a6b52" d="M236.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M238.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M242.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M245.8 292.3l-.5.9.5-1z"/>
+    <path fill="#dedede" d="M246.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M247.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M248.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M252.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M253.3 292.3l-.5.9.5-1z"/>
+    <path fill="#103900" d="M254.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#295200" d="M257 292.6l.2.3-.2-.3z"/>
+    <path fill="#294200" d="M258.5 292.6l.2.3-.2-.3z"/>
+    <path fill="#dedede" d="M260.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M261.3 292.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M261.8 292.3l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M267.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M267.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M268.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M275.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#63636b" d="M277.9 292.3l-.5.9.5-1z"/>
+    <path fill="#297b00" d="M278.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M279.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M280.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M281.7 292.4l.4.2-.4-.2z"/>
+    <path fill="#296300" d="M282.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M283.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#319400" d="M283.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#082108" d="M284.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M284.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M285.9 292.3l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M290.4 292.3l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M293.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M294.4 292.7v.5h1.5l-1.5-.5z"/>
+    <path fill="#103900" d="M295.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#296300" d="M296 292.3l.4.4-.5-.4z"/>
+    <path fill="#082108" d="M303.4 292.3l.5.4-.5-.4z"/>
+    <path fill="#001000" d="M304 292.3l.4.4-.5-.4z"/>
+    <path fill="#395231" d="M304.4 292.3l.6.4-.6-.4z"/>
+    <path fill="#184a00" d="M305 292.3l.4.4-.4-.4z"/>
+    <path fill="#296300" d="M305.4 292.3l.6.4-.6-.4z"/>
+    <path fill="#297b00" d="M306.3 292.4l.3.2-.3-.2z"/>
+    <path fill="#214210" d="M307 292.3l.4.4-.4-.4z"/>
+    <path fill="#9c9494" d="M307.4 292.3l.6.4-.6-.4z"/>
+    <path fill="#5a5231" d="M222.2 292.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M225.7 292.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.2 292.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M226.7 292.7l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M227.2 292.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M227.7 292.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M228.2 292.7l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M229 292.9l.4.2-.3-.2z"/>
+    <path fill="#9c9494" d="M229.8 292.7l.4.5-.4-.5z"/>
+    <path fill="#5a6b52" d="M230.3 292.7l.4.5-.4-.5z"/>
+    <path fill="#396b10" d="M230.8 292.7l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M231.3 292.7l.4.5-.4-.5z"/>
+    <path fill="#428c00" d="M230.3 293.2v.5h4.5v.5h-4.6v.4h1v.5c-2.7.2-4 1.1-5.5 3.4l8.6-.5v.5c-2.3.7-5.7.4-6.6 2.8 3.2-1.2 7.9-1.7 9.6-4.8l-3 1.5 1.5-2-4.5-.4v-.5l8 .5v.5h-1.5v.4l6.5-.4v-.5h-1.5v-.5h3v-.5l-4 1-11.5-2.4z"/>
+    <path fill="#294200" d="M235.8 292.7l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M236.3 292.7l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M238.3 292.7l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M238.8 292.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M240.8 292.7l1 1-1-1z"/>
+    <path fill="#397b00" d="M242.6 292.9l.3.2-.3-.2m2.2-.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M245.8 292.7l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M247.8 292.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M248.3 292.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M249.6 292.9l.4.2-.4-.2z"/>
+    <path fill="#295200" d="M253.3 292.7l1.5 1v-.5l-1.5-.5z"/>
+    <path fill="#103900" d="M254 293l.1.4-.1-.4z"/>
+    <path fill="#294200" d="M255.3 292.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M261.8 292.7l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M262.3 292.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M262.8 292.7l.5.5-.5-.5m3.5 0l-1 1.5 1-1.5z"/>
+    <path fill="#63636b" d="M266.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M267.4 292.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M275.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M277.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M278.4 292.7l-3 4.8c1.9-1 3.6-2.6 3-4.8z"/>
+    <path fill="#184a00" d="M278.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M279.4 292.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M279.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M280.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M281.4 292.7l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M281.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M283.4 292.7l1 1-1-1z"/>
+    <path fill="#297b00" d="M283.9 292.7l1 1-1-1z"/>
+    <path fill="#103900" d="M284.4 292.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M285.4 292.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M285.9 292.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M289.4 292.7l.5.5-.5-.5zm4 0l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M295 292.7l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M304 292.7l.4.5-.5-.5z"/>
+    <path fill="#425242" d="M304.4 292.7l.6.5-.6-.5z"/>
+    <path fill="#efefef" d="M305 292.7l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M305.4 292.7l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M306 292.7l.4.5-.4-.5z"/>
+    <path fill="#5a6b52" d="M306.4 292.7l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M307 292.7l.4.5-.4-.5z"/>
+    <path fill="#184a00" d="M307.4 292.7l.6.5-.6-.5z"/>
+    <path fill="#7b7373" d="M308 292.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M222.4 293.5l.2.3-.2-.3m1.3-.3l.5.5-.5-.5z"/>
+    <path fill="#526b42" d="M224.2 293.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M225 293.4l.4.1-.3-.1z"/>
+    <path fill="#bdbdbd" d="M225.7 293.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M226.2 293.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M228.2 293.2l.5.5-.5-.5z"/>
+    <path d="M228.7 293.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.3 293.2l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M229.8 293.2l.4.5-.4-.5z"/>
+    <path fill="#292100" d="M236.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M236.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M238.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M238.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M239.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M240.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M241.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M242.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M243.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M244.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M244.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M247.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M248.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M250.3 293.2l1 1-1-1z"/>
+    <path fill="#295200" d="M255.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M256.8 293.2v1.9h.5l-.5-1.9z"/>
+    <path fill="#295200" d="M258.3 293.2l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M262.8 293.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M263.3 293.2l1.5 1.9-1.5-1.9z"/>
+    <path fill="#7b7373" d="M266.3 293.2l-1 1.4 1-1.4z"/>
+    <path fill="#efefef" d="M266.9 293.2l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M276 293.5l.2.3-.2-.3z"/>
+    <path d="M277.4 293.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M277.9 293.2l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M278.9 293.2l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M279.4 293.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M280.9 293.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M281.4 293.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M281.9 293.2l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M283.4 293.2l.5.5-.5-.5m2 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M289.4 293.2l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294 293.2l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M294.4 293.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M304.4 293.2l.6.5-.6-.5z"/>
+    <path fill="#103910" d="M305 293.2l.4.5-.4-.5z"/>
+    <path fill="#ada5a5" d="M305.4 293.2l.6.5-.6-.5z"/>
+    <path fill="#efefef" d="M307 293.2l.4.5-.4-.5z"/>
+    <path fill="#9c9494" d="M307.4 293.2l.6.5-.6-.5z"/>
+    <path fill="#52525a" d="M308 293.2l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M308.5 293.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M221.7 293.7l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M222.7 293.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M223.2 293.7l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M223.7 293.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M228.7 293.7l1 1-1-1z"/>
+    <path fill="#214210" d="M229.3 293.7l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M229.8 293.7v.5h2.4l-2.4-.5z"/>
+    <path fill="#295200" d="M232.3 293.7l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M232.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M233.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M233.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M234.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M236.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M237.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M237.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M238.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M239.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M239.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M240.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M240.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M241.3 293.7l-.5 1 .5-1z"/>
+    <path fill="#b51010" d="M241.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M242.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M242.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#102110" d="M243.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M243.8 293.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M244.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M248.3 293.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M251.3 293.7l1.5 1.4-1.5-1.4m3 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M256 294l.1.3-.1-.3m2.3-.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M274.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M276.9 293.7l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M277.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M278.9 293.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M279.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#001000" d="M280.9 293.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M281.4 293.7l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M283.7 293.8l.4.2-.4-.2z"/>
+    <path fill="#184a00" d="M285.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M286.9 293.7l1 1-1-1z"/>
+    <path fill="#184a00" d="M294 293.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 293.7l1 1-1-1z"/>
+    <path fill="#185200" d="M296 293.7l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M296.4 293.7v.5h1.5l-1.5-.5z"/>
+    <path fill="#296300" d="M298 293.7l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M298.4 293.7v.5h2.5l-2.5-.5z"/>
+    <path fill="#296300" d="M301 293.7l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M301.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M302 293.7l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M302.4 293.7l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M305.4 293.7l1 1-1-1z"/>
+    <path fill="#9c9494" d="M306 293.7l.4.5-.4-.5z"/>
+    <path fill="#bdbdbd" d="M221.7 294.2l.5.4-.5-.4z"/>
+    <path fill="#313931" d="M222.2 294.2l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M222.7 294.2l-1 .4v.5l1-1z"/>
+    <path fill="#103900" d="M229.8 294.2l.4.4-.4-.4z"/>
+    <path fill="#295200" d="M234.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M235.3 294.2l.5.4-.5-.4m2 0l.5.4-.5-.4z"/>
+    <path fill="#391810" d="M237.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#423100" d="M240.1 294.3l.3.2-.3-.2z"/>
+    <path fill="#ce2110" d="M241.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M241.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#293100" d="M242.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M242.8 294.2v.4h2l-2-.4z"/>
+    <path fill="#294200" d="M244.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#315221" d="M245.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#5a6b52" d="M245.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M246.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#6b735a" d="M248.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M251.3 294.2l.5.4-.5-.4m3 0l.5 1.4h.5l-1-1.4z"/>
+    <path fill="#315221" d="M258.3 294.2l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M264.8 294.2l.5.4-.5-.4z"/>
+    <path fill="#4a6342" d="M274.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M276.9 294.2l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M278.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M278.9 294.2l-.5 1 .5-1z"/>
+    <path fill="#297b00" d="M280.4 294.2l1 1-1-1z"/>
+    <path fill="#103900" d="M280.9 294.2l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M282.9 294.2l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M283.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M284.9 294.2l1 1-1-1z"/>
+    <path fill="#185200" d="M285.4 294.2l.5.4-.5-.4m1.5 0l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M294.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M295 294.2l.4.4-.5-.4z"/>
+    <path fill="#185200" d="M295.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M301.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M302 294.2l.4.4-.5-.4z"/>
+    <path fill="#101810" d="M302.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#425242" d="M303 294.2l.4.4-.5-.4z"/>
+    <path fill="#315221" d="M303.4 294.2l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M304 294.2l.4.4-.5-.4z"/>
+    <path fill="#296300" d="M304.4 294.2l.6.4-.6-.4z"/>
+    <path fill="#8c8c8c" d="M306.4 294.2l.6.4-.6-.4z"/>
+    <path fill="#ada5a5" d="M228.2 294.6l.5.5-.5-.5z"/>
+    <path fill="#5a5231" d="M228.7 294.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M229.3 294.6l.4.5-.4-.5z"/>
+    <path fill="#397b00" d="M229.8 294.6l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M230.6 294.8l.3.2-.3-.2z"/>
+    <path fill="#397b00" d="M237.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#293100" d="M238.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M238.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M239.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M239.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M240.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M240.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M241.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M245.8 294.6l-1.5 1.5 1.5-1.5z"/>
+    <path fill="#294200" d="M246.3 294.6v1h1l-1-1z"/>
+    <path fill="#213918" d="M246.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M247.3 294.6l1 1-1-1z"/>
+    <path fill="#8c8c8c" d="M248.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M251.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M254.3 294.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M255.8 294.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M258.3 294.6l.5.5-.5-.5m6.5 0l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M274.4 294.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M276.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M278.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M280.4 294.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M282.4 294.6l.5.5-.5-.5z"/>
+    <path d="M282.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M283.4 294.6l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M284.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M286.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M288.9 294.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M289.7 294.8l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M290.4 294.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M291 294.6l-.6 1 .5-1m2 0l.5.5-.5-.5m9.5 0l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M303 294.6l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M303.4 294.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M304 294.6l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M304.4 294.6l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M305 294.6l.4.5-.4-.5z"/>
+    <path fill="#294221" d="M305.4 294.6l.6.5-.6-.5z"/>
+    <path fill="#296300" d="M306 294.6l.4.5-.4-.5z"/>
+    <path fill="#297b00" d="M306.4 294.6l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M307 294.6l1 1-1-1z"/>
+    <path fill="#efefef" d="M227.2 295.1l-1 1.4 1-1.4z"/>
+    <path fill="#425242" d="M227.7 295.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M228.2 295.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M231.6 295.3l.3.1-.3-.1z"/>
+    <path fill="#397b00" d="M232.4 295.4l.2.4-.2-.4z"/>
+    <path fill="#294200" d="M239.6 295.3l.3.1-.3-.1z"/>
+    <path d="M240.8 295.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M241.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M242.8 295.1v.5h1.5l-1.5-.5z"/>
+    <path fill="#103900" d="M247.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M248.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M248.8 295.1l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M249.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M249.8 295.1l.5.5-.5-.5z"/>
+    <path fill="#4a4208" d="M250.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M252.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M252.8 295.1v1h1l-1-1zm5 0l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M258.3 295.1l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M273.9 295.1l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M274.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M275.9 295.1l1 1-1-1z"/>
+    <path fill="#185200" d="M277.9 295.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M278.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M279.9 295.1l1 1-1-1z"/>
+    <path fill="#103900" d="M280.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M282.7 295.3l.4.1-.4-.1m2.2-.2l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M286.4 295.1l1 1-1-1z"/>
+    <path fill="#185200" d="M286.9 295.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M291 295.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M291.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M292 295.1l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M292.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M296 295.1l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M296.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M297 295.1v1h1l-1-1z"/>
+    <path fill="#297b00" d="M297.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M303.4 295.1l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M304 295.1l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M306 295.1l.4.5-.4-.5z"/>
+    <path fill="#6b735a" d="M306.4 295.1l.6.5-.6-.5z"/>
+    <path fill="#082108" d="M307 295.1l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M308 295.1l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M227.2 295.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M232.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M233.3 295.6v.5h2l-2-.5z"/>
+    <path fill="#295200" d="M235.3 295.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M235.8 295.6v1.4l2-1.4h-2z"/>
+    <path fill="#294200" d="M238.1 295.8l.3.1-.3-.1z"/>
+    <path fill="#397b00" d="M238.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M241.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M242.3 295.6l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M244.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M245.3 295.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M245.8 295.6l-.5 1 .5-1z"/>
+    <path fill="#bdbdbd" d="M246.3 295.6v1h1l-1-1z"/>
+    <path fill="#cecece" d="M247.6 295.8l.4.1-.4-.1z"/>
+    <path d="M248.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M249.3 295.6l.5.5-.5-.5zm1 0l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M250.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M255.2 295.8l.3.1-.3-.1z"/>
+    <path fill="#5a6b52" d="M257.8 295.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M273.9 295.6l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M275.9 295.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M277.4 295.6l1 1-1-1z"/>
+    <path fill="#103900" d="M277.9 295.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M280 296l.2.2-.1-.3z"/>
+    <path fill="#297b00" d="M281.9 295.6l1 1-1-1z"/>
+    <path fill="#082108" d="M282.4 295.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M284.7 295.8l.4.1-.4-.1z"/>
+    <path fill="#185200" d="M286.4 295.6l.5.5-.5-.5m6.2.3l.1.3-.1-.3z"/>
+    <path fill="#103900" d="M293 296l.2.2-.1-.3z"/>
+    <path fill="#297b00" d="M293.4 295.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M295 295.6l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M295.4 295.6l-1 1.4 1-1.4z"/>
+    <path fill="#184a00" d="M298 295.6v.5h1.4l-1.5-.5z"/>
+    <path fill="#185200" d="M299.4 295.6l1 1v-1h-1z"/>
+    <path fill="#297b00" d="M300.4 295.6l.5.5-.5-.5m3.6 0l1.4 1.4-1.4-1.4z"/>
+    <path fill="#63636b" d="M304.4 295.6l1.6 1.4-1.6-1.4z"/>
+    <path fill="#efefef" d="M307 295.6l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M307.8 295.8l.3.1-.3-.1z"/>
+    <path fill="#314231" d="M226.7 296l.5.5-.5-.4z"/>
+    <path fill="#292100" d="M235.8 296l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M242.8 296l2 1v-.5l-2-.4z"/>
+    <path fill="#103900" d="M243.3 296l.5.5-.5-.4z"/>
+    <path fill="#292921" d="M243.8 296l.5.5-.5-.4z"/>
+    <path fill="#7b7373" d="M244.3 296l.5.5-.5-.4z"/>
+    <path fill="#bdbdbd" d="M244.8 296l.5.5-.5-.4z"/>
+    <path fill="#9c9494" d="M245.8 296l.5.5-.5-.4z"/>
+    <path fill="#dedede" d="M247.3 296l.5.5-.5-.4z"/>
+    <path fill="#734a42" d="M248.8 296l.5.5-.5-.4z"/>
+    <path fill="#423100" d="M250.8 296l.5.5-.5-.4z"/>
+    <path fill="#295200" d="M255.5 296.4l.1.3-.1-.3z"/>
+    <path fill="#397b00" d="M257.3 296l.5.5-.5-.4z"/>
+    <path fill="#9c9494" d="M257.8 296l.5.5-.5-.4z"/>
+    <path fill="#315221" d="M273.9 296l.5.5-.5-.4z"/>
+    <path fill="#185200" d="M275.5 296.4l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M275.9 296l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M277.4 296l.5.5-.5-.4z"/>
+    <path fill="#297b00" d="M279.4 296l.5.5-.5-.4z"/>
+    <path fill="#184a00" d="M282 296.4l.2.3-.1-.3m2.3-.3l.5.4-.5-.4z"/>
+    <path fill="#103900" d="M286.4 296l.5.5-.5-.4z"/>
+    <path fill="#297b00" d="M287.9 296l.5.5-.5-.4z"/>
+    <path fill="#185200" d="M288.4 296l.5.5-.5-.4z"/>
+    <path fill="#184a00" d="M287.4 296.5v.5l4.5-.5h-4.5z"/>
+    <path fill="#296300" d="M292 296l-.6 1 .5-1z"/>
+    <path d="M293.4 296l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M294 296l.4.5-.5-.4z"/>
+    <path fill="#185200" d="M295.4 296l.5.5-.5-.4z"/>
+    <path fill="#103900" d="M296 296l.4.5-.5-.4z"/>
+    <path fill="#296300" d="M296.4 296l.5.5-.5-.4z"/>
+    <path d="M300.4 296l.5.5-.5-.4z"/>
+    <path fill="#52525a" d="M301 296l.4.5-.5-.4z"/>
+    <path fill="#315221" d="M301.4 296l.5.5-.5-.4z"/>
+    <path fill="#185200" d="M302 296l.4.5-.5-.4z"/>
+    <path fill="#297b00" d="M302.4 296l.5.5-.5-.4z"/>
+    <path fill="#314231" d="M226.2 296.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M232.8 296.5l-.5 1 .5-1z"/>
+    <path fill="#294200" d="M233.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M235.3 296.5l-.5 1.5.5-1.5z"/>
+    <path fill="#103900" d="M237.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M237.8 296.5l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M238.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M238.8 296.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M239.3 296.5v.5h2l-2-.5z"/>
+    <path fill="#294200" d="M241.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M241.8 296.5l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M242.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M240.3 299l10.5-1.5c-3.3-1.3-8-1.2-10.5 1.4z"/>
+    <path fill="#397b00" d="M246.3 296.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#294200" d="M247.8 296.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#422100" d="M249.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M249.8 296.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M250.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M250.8 296.5l1 1-1-1z"/>
+    <path fill="#214210" d="M257.3 296.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M273.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M276.4 297.5l1.5-1-1.5 1z"/>
+    <path fill="#103900" d="M279.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M281.4 296.5l-1 1.5h1.5l-.5-1.5z"/>
+    <path fill="#296300" d="M284.2 296.7l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M285.9 296.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M286.7 296.7l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M290.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M292 296.5l-.6 1 .5-1z"/>
+    <path fill="#319400" d="M292.4 296.5v.5l7 2v-.5l-7-2z"/>
+    <path fill="#296300" d="M294 296.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M296.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M297 296.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M297.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M300.4 296.5l1 1-1-1z"/>
+    <path fill="#314231" d="M301 296.5l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M301.4 296.5l1 1-1-1z"/>
+    <path fill="#dedede" d="M302 296.5l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M302.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M303 296.5l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M303.4 296.5l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M304 296.5l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M225.7 297l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M226.2 297l.5.5-.5-.5m2 0v1h1.5v-1h-1.5z"/>
+    <path fill="#295200" d="M229.8 297l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M230.3 297l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M230.8 297l.4.5-.4-.5z"/>
+    <path fill="#294200" d="M231.6 297.2l.3.1-.3-.1z"/>
+    <path fill="#8c8c8c" d="M237.3 297l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M238.8 297l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M239.3 297v.5h2l-2-.5z"/>
+    <path fill="#52525a" d="M241.3 297l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M241.8 297l.5.5-.5-.5m9 0l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M251.8 297v.5h1.5l-1.5-.5z"/>
+    <path fill="#295200" d="M253.3 297l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M254.8 297l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M255.3 297l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M257.3 297l.5.5-.5-.5z"/>
+    <path fill="#bd8c8c" d="M258.2 297.2l.3.1-.3-.1z"/>
+    <path fill="#845a52" d="M258.8 297l.5.5-.5-.5z"/>
+    <path fill="#9c4a42" d="M264.3 297l.5.5-.5-.5z"/>
+    <path fill="#ad524a" d="M264.8 297l.5.5-.5-.5z"/>
+    <path fill="#845a52" d="M270.4 297l.5.5-.5-.5z"/>
+    <path fill="#bd8c8c" d="M271.2 297.2l.3.1-.3-.1z"/>
+    <path fill="#293129" d="M273.4 297l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M274.9 297l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M281.4 297l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M283.4 297l-.5 1 .5-1z"/>
+    <path fill="#103900" d="M283.9 297l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M285.4 297l1 1-1-1z"/>
+    <path fill="#184a00" d="M285.9 297l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M285.9 298.4l12.5 2v1.9c1.4-4.2-10.1-7-12.5-3.9z"/>
+    <path fill="#103900" d="M292 297l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M292.4 297l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M293 297l1 1-1-1z"/>
+    <path fill="#297b00" d="M293.4 297l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M297.4 297l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M298 297l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M298.4 297l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M299 297l.4.5-.5-.5z"/>
+    <path fill="#214210" d="M301.4 297l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M304 297l.4.5-.5-.5z"/>
+    <path fill="#425242" d="M304.4 297l.6.5-.6-.5z"/>
+    <path fill="#185200" d="M305.3 297.2l.3.1-.3-.1z"/>
+    <path fill="#9c9494" d="M306 297l.4.5-.4-.5m-80.8.5l-1 1.4 1-1.4z"/>
+    <path fill="#397b00" d="M225.7 297.5l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M226.7 297.5l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M227.6 297.7l.3.1-.3-.1m6.6-.2l.6.5-.6-.5z"/>
+    <path fill="#315221" d="M236.8 297.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M240.3 297.5l-.5 1 .5-1z"/>
+    <path fill="#293129" d="M240.8 297.5l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M249.6 297.7l.4.1-.4-.1z"/>
+    <path fill="#294200" d="M250.3 297.5l.5.5-.5-.5z"/>
+    <path fill="#423100" d="M250.8 297.5l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M251.6 297.7l.4.1-.4-.1z"/>
+    <path fill="#5a2908" d="M252.3 297.5l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M252.8 297.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#ad1810" d="M254.3 297.5v.5h1.5l-1.5-.5z"/>
+    <path fill="#bd2110" d="M255.8 297.5l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M244.3 306v-.4l-3 .5v-.5a92 92 0 0147.1 0v.5l-2.5-.5c2.5 3.6 9.2 1.4 7-2.8-2-3.6-8.9-4-12.5-4.5a112.6 112.6 0 00-31.6.1c-3.6.6-8 .9-11 3.3-2 1.7-1.2 5.2 1.5 6 1.7.4 3.6-.9 5-1.6z"/>
+    <path fill="#ce2110" d="M273.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M275.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M276.2 297.7l.3.1-.3-.1z"/>
+    <path fill="#6b2908" d="M276.9 297.5l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M278.9 297.5l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M279.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M279.9 297.5l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M280.9 297.5l.5.5-.5-.5m2.5 0l-.5 1 .5-1m2 0l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M293 297.5l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M294.3 297.7l.3.1-.4-.1z"/>
+    <path fill="#297b00" d="M295 297.5l-.6 1 .5-1m3 0l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M298.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M299 297.5l1 1-1-1z"/>
+    <path fill="#7b7373" d="M299.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#315221" d="M300 297.5l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M300.4 297.5l.5.5-.5-.5z"/>
+    <path fill="#103910" d="M302 297.5l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M302.4 297.5l1 1-1-1z"/>
+    <path fill="#cecece" d="M305 297.5l.4.5-.4-.5z"/>
+    <path fill="#63636b" d="M305.4 297.5l.6.5-.6-.5z"/>
+    <path fill="#102110" d="M306 297.5l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M306.4 297.5l.6.5-.6-.5z"/>
+    <path fill="#294200" d="M225.2 298l3 1.4-3-1.4z"/>
+    <path fill="#397b00" d="M233.4 298.3l.2.3-.2-.3z"/>
+    <path fill="#294200" d="M233.8 298l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M236.3 298l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M236.8 298l.5.5-.5-.5z"/>
+    <path fill="#314231" d="M240.3 298l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M246.3 298l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M246.8 298l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M247.3 298l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M247.8 298l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M248.3 298l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M248.8 298l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M249.3 298l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M249.8 298l.5.5-.5-.5m29.6 0l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M279.9 298l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M280.4 298l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M280.9 298l.5.5-.5-.5z"/>
+    <path fill="#422100" d="M281.4 298l.5.5-.5-.5z"/>
+    <path fill="#4a4208" d="M281.9 298l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M282.4 298l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M283.4 298l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M284.9 298l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M285.4 298l.5.5-.5-.5m1 0l2.5.5-2.5-.5z"/>
+    <path fill="#297b00" d="M288.4 298l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M295 298l.4.5-.5-.5z"/>
+    <path fill="#082108" d="M295.4 298l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M296 298l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M296.4 298l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M299 298l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M300.4 298l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M301 298l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M301.4 298l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M302 298l.4.5-.5-.5z"/>
+    <path fill="#314231" d="M302.4 298l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M306 298l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M306.4 298l.6.5-.6-.5z"/>
+    <path fill="#292100" d="M224.7 298.4l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M228.2 298.4v1h1v-1h-1m3.7.4l.2.3-.2-.3z"/>
+    <path fill="#294200" d="M232.6 298.6l.3.2-.3-.2z"/>
+    <path fill="#397b00" d="M235.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#314231" d="M235.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#dedede" d="M236.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#425242" d="M239.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#397b00" d="M242.1 298.6l.3.2-.3-.2z"/>
+    <path fill="#294200" d="M243.1 298.6l.4.2-.4-.2z"/>
+    <path fill="#292100" d="M243.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#181000" d="M244.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#310000" d="M244.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#631808" d="M245.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#941808" d="M245.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#ad1810" d="M246.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#ce2110" d="M246.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#de3110" d="M257.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#e75a10" d="M258.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#de3110" d="M258.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#e75a10" d="M260.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#de3110" d="M261.3 298.4l.5.5-.5-.4z"/>
+    <path fill="#e75a10" d="M265.2 298.6l.3.2-.3-.2z"/>
+    <path fill="#de3110" d="M265.8 298.4l.5.5-.5-.4z"/>
+    <path fill="#e75a10" d="M268.7 298.6l.3.2-.3-.2z"/>
+    <path fill="#de3110" d="M269.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#ad1810" d="M282.9 298.4l.5.5-.5-.4z"/>
+    <path fill="#941808" d="M283.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#631808" d="M283.9 298.4l.5.5-.5-.4z"/>
+    <path fill="#5a2908" d="M284.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#293100" d="M284.9 298.4l.5.5-.5-.4z"/>
+    <path fill="#185200" d="M285.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#297b00" d="M285.9 298.4l.5.5-.5-.4z"/>
+    <path fill="#184a00" d="M288.9 298.4v.5h1.5l-1.5-.4z"/>
+    <path fill="#185200" d="M290.4 298.4l1 1-1-1z"/>
+    <path fill="#297b00" d="M291 298.4l.4.5-.5-.4z"/>
+    <path fill="#185200" d="M296 298.4l.4.5-.5-.4z"/>
+    <path fill="#001000" d="M296.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#293129" d="M297 298.4l.4.5-.5-.4z"/>
+    <path fill="#214210" d="M297.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#296300" d="M298 298.4l.4.5-.5-.4m1.5 0l1 .9-1-1z"/>
+    <path fill="#63636b" d="M300 298.4l.4.5-.5-.4z"/>
+    <path fill="#dedede" d="M301.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#63636b" d="M302 298.4l.4.5-.5-.4z"/>
+    <path fill="#214210" d="M302.4 298.4l.5.5-.5-.4z"/>
+    <path fill="#63636b" d="M303 298.4l.4.5-.5-.4z"/>
+    <path fill="#cecece" d="M224.2 299l.5.4-.5-.5z"/>
+    <path fill="#295200" d="M229.3 299l.4.4-.4-.5z"/>
+    <path fill="#294200" d="M229.8 299l.4.4-.4-.5z"/>
+    <path fill="#295200" d="M230.3 299l.4.4-.4-.5z"/>
+    <path fill="#294200" d="M231 299l.4.2-.3-.1z"/>
+    <path fill="#397b00" d="M234.3 299l.5.4-.5-.5z"/>
+    <path fill="#214210" d="M234.8 299l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M235.3 299l.5.4-.5-.5z"/>
+    <path fill="#7b7373" d="M239.3 299l.5.4-.5-.5z"/>
+    <path fill="#397b00" d="M240.1 299l.3.2-.3-.1z"/>
+    <path fill="#294200" d="M239.3 299.9v.5l3-1-3 .5z"/>
+    <path fill="#293100" d="M242.3 299l.5.4-.5-.5z"/>
+    <path fill="#5a2908" d="M242.8 299l.5.4-.5-.5z"/>
+    <path fill="#7b1008" d="M243.3 299l.5.4-.5-.5z"/>
+    <path fill="#b51010" d="M243.8 299l.5.4-.5-.5z"/>
+    <path fill="#de3110" d="M250.3 299l.5.4-.5-.5zm2 0l1 .9-1-1z"/>
+    <path fill="#e75a10" d="M257.3 299l.5.4-.5-.5zm2 0l.5.4-.5-.5z"/>
+    <path fill="#f7b508" d="M261.3 299l.5.4-.5-.5z"/>
+    <path fill="#de3110" d="M266.9 299l1 .9-1-1z"/>
+    <path fill="#ef9408" d="M267.9 299l1 .9-1-1z"/>
+    <path fill="#e75a10" d="M269.9 299l1 .9-1-1z"/>
+    <path fill="#de3110" d="M270.4 299l.5.4-.5-.5z"/>
+    <path fill="#e75a10" d="M272.4 299l.5.4-.5-.5z"/>
+    <path fill="#ef9408" d="M273.4 299l-.5 3.3.5-3.4z"/>
+    <path fill="#e75a10" d="M273.9 299l.5.4-.5-.5z"/>
+    <path fill="#de3110" d="M274.9 299l.5.4-.5-.5z"/>
+    <path fill="#ef9408" d="M275.4 299l.5.4-.5-.5z"/>
+    <path fill="#ef7b08" d="M275.9 299l.5.4-.5-.5z"/>
+    <path fill="#e75a10" d="M276.9 299l.5.4-.5-.5z"/>
+    <path fill="#de3110" d="M278.9 299l.5.4-.5-.5z"/>
+    <path fill="#bd2110" d="M285.4 299l.5.4-.5-.5z"/>
+    <path fill="#941808" d="M285.9 299l.5.4-.5-.5z"/>
+    <path fill="#4a1000" d="M286.4 299l.5.4-.5-.5z"/>
+    <path fill="#293100" d="M286.9 299l.5.4-.5-.5z"/>
+    <path fill="#297b00" d="M287.9 299l.5.4-.5-.5z"/>
+    <path fill="#319400" d="M288.4 299v.4l5 1-5-1.5z"/>
+    <path fill="#297b00" d="M290.4 299l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M291.4 299l.5.4-.5-.5z"/>
+    <path fill="#103900" d="M292 299l.4.4-.5-.5z"/>
+    <path fill="#296300" d="M292.6 299.3l.1.3-.1-.4m4.3-.3l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M297.4 299l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M298 299l.4.4-.5-.5z"/>
+    <path fill="#63636b" d="M298.4 299l.5.4-.5-.5z"/>
+    <path fill="#184a00" d="M299 299l.4.4-.5-.5z"/>
+    <path fill="#297b00" d="M299.4 299l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M300.4 299l.5.4-.5-.5z"/>
+    <path fill="#efefef" d="M302.4 299l.5.4-.5-.5z"/>
+    <path fill="#8c8c8c" d="M303 299l.4.4-.5-.5z"/>
+    <path fill="#cecece" d="M303.4 299l.5.4-.5-.5z"/>
+    <path fill="#bdbdbd" d="M227.2 299.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M227.7 299.4l.5.5-.5-.5m4.6 0l.4.5-.4-.5z"/>
+    <path fill="#295200" d="M232.8 299.4l.5.5-.5-.5z"/>
+    <path fill="#396b10" d="M233.3 299.4l.5.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M233.8 299.4l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M234.3 299.4l.5.5-.5-.5m4.5 0l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M239.3 299.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M241.3 299.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M241.8 299.4l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M247.8 299.4l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M252.3 299.4l.5.5-.5-.5m1.5 0l.5.5-.5-.5m3.9.2l.3.1-.3-.1z"/>
+    <path fill="#e75a10" d="M258.3 299.4l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M259.2 299.6l.3.1-.3-.1z"/>
+    <path fill="#ef9408" d="M266.9 299.4l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M269.7 299.6l.3.1-.3-.1z"/>
+    <path fill="#de3110" d="M271.9 299.4l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M275 299.7l.2.3-.2-.3z"/>
+    <path fill="#ef9408" d="M279.9 299.4l1 1-1-1z"/>
+    <path fill="#ef7b08" d="M281.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M283.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M287.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M287.9 299.4l.5.5-.5-.5z"/>
+    <path fill="#293100" d="M288.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M288.9 299.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M293 299.4l.4.5-.5-.5z"/>
+    <path fill="#001000" d="M293.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M294 299.4l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M294.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M295 299.4l.4.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M298 299.4l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M298.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M299 299.4l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M299.4 299.4l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M300.3 299.6l.3.1-.3-.1z"/>
+    <path fill="#bdbdbd" d="M301 299.4l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M227.2 299.9l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M230.3 299.9l.4.5-.4-.5z"/>
+    <path fill="#396b10" d="M230.8 299.9l.4.5-.4-.5z"/>
+    <path fill="#526b42" d="M231.3 299.9l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M231.8 299.9l.4.5-.4-.5z"/>
+    <path fill="#ada5a5" d="M232.3 299.9l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M232.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M238.3 299.9l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M238.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#4a1000" d="M239.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M240.3 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M243.6 300l.4.2-.4-.2z"/>
+    <path fill="#ef7b08" d="M247.3 299.9l.5.5-.5-.5zm2.7.3l.1.3-.1-.3z"/>
+    <path fill="#de2110" d="M251.3 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M251.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M252.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M258.8 299.9l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M259.3 299.9l.5.5-.5-.5m1 0l.5.5-.5-.5zm1.5 0l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M265.8 299.9v1.4h.5l-.5-1.4z"/>
+    <path fill="#ef9408" d="M266.3 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M268.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M268.9 299.9l.5 1.4-.5-1.4z"/>
+    <path fill="#e75a10" d="M271.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M272.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M279.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M279.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M280.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M281.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M282.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M283.4 299.9l-.5 1.4.5-1.4z"/>
+    <path fill="#ef7b08" d="M284 300.2l.2.3-.1-.3z"/>
+    <path fill="#e75a10" d="M285.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M285.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M288.9 299.9l.5.5-.5-.5z"/>
+    <path fill="#5a2908" d="M289.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M290 299.9l.4.5-.5-.5z"/>
+    <path fill="#297b00" d="M290.4 299.9l.5.5-.5-.5m3.2.3l.2.3-.2-.3z"/>
+    <path fill="#184a00" d="M294 299.9l.4.5-.5-.5z"/>
+    <path fill="#424242" d="M294.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M295 299.9l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M295.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M296 299.9l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M296.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M298.4 299.9l1 1-1-1z"/>
+    <path fill="#314231" d="M299 299.9l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M300 299.9l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M300.4 299.9l.5.5-.5-.5z"/>
+    <path fill="#101810" d="M301 299.9l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M227.2 300.4l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M229.3 300.4l.4.4-.4-.4z"/>
+    <path fill="#6b735a" d="M229.8 300.4l.4.4-.4-.4z"/>
+    <path fill="#bdbdbd" d="M230.3 300.4l.4.4-.4-.4z"/>
+    <path fill="#52525a" d="M238.3 300.4l.5.4-.5-.4z"/>
+    <path fill="#311000" d="M238.8 300.4l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M239.3 300.4l.5.4-.5-.4z"/>
+    <path fill="#ef7b08" d="M241.8 300.4l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M242.3 300.4l.5.4-.5-.4z"/>
+    <path fill="#f7b508" d="M242.8 300.4l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M243.3 300.4l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M243.8 300.4l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M248.3 300.4l.5.4-.5-.4zm4.5 0l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M261.2 300.5l.3.2-.3-.2z"/>
+    <path fill="#ef7b08" d="M266.3 300.4l.5.4-.5-.4m5.5 0l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M274.9 300.4l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M275.9 300.4l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M280.4 300.4v1.9l2-.5-2-1.4z"/>
+    <path fill="#e75a10" d="M281.9 300.4l.5.4-.5-.4z"/>
+    <path fill="#f7b508" d="M282.9 300.4l.5.4-.5-.4m2.8.1l.4.2-.4-.2z"/>
+    <path fill="#de3110" d="M286.9 300.4l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M287.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M290 300.4l.4.4-.5-.4z"/>
+    <path fill="#5a1008" d="M290.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M291.2 300.5l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M292 300.4l.4.4-.5-.4z"/>
+    <path fill="#296300" d="M292.8 300.5l.3.2-.4-.2z"/>
+    <path fill="#319400" d="M294 300.4l.4.4-.5-.4z"/>
+    <path fill="#297b00" d="M294.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M295 300.4l.4.4-.5-.4z"/>
+    <path fill="#7b7373" d="M295.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M296 300.4l.4.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M296.4 300.4l1 1.4-1-1.4z"/>
+    <path fill="#63636b" d="M297 300.4l.4.4-.5-.4z"/>
+    <path fill="#214210" d="M297.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M298 300.4l.4.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M299.4 300.4l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M228.2 300.8l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M228.7 300.8l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M229.3 300.8l.4.5-.4-.5m8 0l.5.5-.5-.5z"/>
+    <path fill="#524242" d="M237.8 300.8l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M238.3 300.8l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M240.1 301l.3.2-.3-.2z"/>
+    <path fill="#f7b508" d="M241.8 300.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M242.8 300.8l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M245.8 300.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M246.3 300.8l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M248.5 301.1l.1.4-.1-.4z"/>
+    <path fill="#ef7b08" d="M259.3 300.8l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M259.8 300.8l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M260.5 301.1l.2.4-.2-.4m1.5 0l.2.4-.2-.4z"/>
+    <path fill="#ef9408" d="M266.7 301l.3.2-.3-.2z"/>
+    <path fill="#de3110" d="M268.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M271.4 300.8l.5.5-.5-.5zm6 0l-.5 2 .5-2z"/>
+    <path fill="#de3110" d="M278.9 300.8l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M279.6 301.1l.1.4-.1-.4z"/>
+    <path fill="#ef7b08" d="M280 301.1l.2.4-.1-.4z"/>
+    <path fill="#e75a10" d="M282.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M283.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M284 301.1l.2.4-.1-.4z"/>
+    <path fill="#de3110" d="M284.9 300.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M286.9 300.8l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M287.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M291 300.8l.4.5-.5-.5z"/>
+    <path fill="#210800" d="M291.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M292 300.8l.4.5-.5-.5z"/>
+    <path fill="#313931" d="M292.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M293 300.8l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M293.4 300.8l1 1-1-1z"/>
+    <path fill="#8c8c8c" d="M294 300.8l.4.5-.5-.5z"/>
+    <path fill="#5a6b52" d="M294.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M295 300.8l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M295.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M296 300.8l.4.5-.5-.5z"/>
+    <path fill="#efefef" d="M297.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M298 300.8l.4.5-.5-.5z"/>
+    <path fill="#296300" d="M299 300.8l.4.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M299.4 300.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M227.7 301.3l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M228.2 301.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M236.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M237.3 301.3l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M237.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M238.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M239.3 301.3l.5.5-.5-.5zm1.5 0l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M241.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M242.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M244.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M247.3 301.3l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M251.3 301.3l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M251.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M257.6 301.5l.4.1-.4-.1m1.5 0l.4.1-.4-.1z"/>
+    <path fill="#e75a10" d="M259.8 301.3l-.5 1 .5-1z"/>
+    <path fill="#ef9408" d="M261.2 301.5l.3.1-.3-.1z"/>
+    <path fill="#e75a10" d="M262.3 301.3l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M265.8 301.3l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M266.9 301.3l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M267.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M269.7 301.5l.3.1-.3-.1z"/>
+    <path fill="#ef7b08" d="M271.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M272.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M276.4 301.3l.5.5-.5-.5zm6.5 0l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M283.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M284.9 301.3l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M286.9 301.3l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M287.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M288.9 301.3l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M289.6 301.6l.1.3-.1-.3z"/>
+    <path fill="#7b1008" d="M292 301.3l.4.5-.5-.5z"/>
+    <path fill="#185200" d="M292.4 301.3l1 1v-1h-1z"/>
+    <path fill="#314231" d="M293.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M295.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296 301.3l.4.5-.5-.5z"/>
+    <path fill="#63636b" d="M296.4 301.3l.5.5-.5-.5z"/>
+    <path fill="#6b735a" d="M298 301.3l.4.5-.5-.5z"/>
+    <path fill="#184a00" d="M299 301.3l.4.5-.5-.5z"/>
+    <path fill="#52525a" d="M227.7 301.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M236.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M236.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M238.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M238.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M239.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M240.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M241.8 301.8l.5.5-.5-.5m3 0l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M245.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M246.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M247.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M248.3 301.8l-.5 1 .5-1zm7 0l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M257.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M259.8 301.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M260.3 301.8l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M262.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M266.3 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M267.9 301.8l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M271.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M272.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M279.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M279.9 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M280.9 301.8l1 1-1-1z"/>
+    <path fill="#e75a10" d="M281.9 301.8l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M282.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M285.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M286.4 301.8l-.5 1 .5-1zm1 0l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M288.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M292.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M293.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M294 302.1l.2.3-.1-.3z"/>
+    <path fill="#314231" d="M294.4 301.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M295 301.8l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M298 301.8l.4.5-.5-.5z"/>
+    <path fill="#4a6342" d="M299 301.8l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M235.8 302.3l.5.4-.5-.4z"/>
+    <path fill="#631818" d="M236.3 302.3l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M239.8 302.3l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M240.3 302.3l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M241.3 302.3l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M242 302.6l.1.3-.2-.3z"/>
+    <path fill="#ef9408" d="M243 302.6l.1.3-.2-.3z"/>
+    <path fill="#e75a10" d="M243.3 302.3l1 1-1-1z"/>
+    <path fill="#de3110" d="M244.8 302.3l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M245.8 302.3l.5.4-.5-.4zm4 0l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M253.3 302.3l.5.4-.5-.4zm4.5 0l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M258.3 302.3l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M258.8 302.3l.5.4-.5-.4m1.4.1l.3.2-.3-.2m2 0l.3.2-.3-.2zm6.1-.1l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M268.9 302.3l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M269.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M270.9 302.3l.5.4-.5-.4m1 0l.5.4-.5-.4z"/>
+    <path fill="#de3110" d="M272.4 302.3v.4h1.5l-1.5-.4m2.5 0l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M275.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#ef7b08" d="M279.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#ef9408" d="M282.9 302.3l.5.4-.5-.4z"/>
+    <path fill="#ffce08" d="M284 302.6l.2.3-.1-.3z"/>
+    <path fill="#f7b508" d="M284.9 302.3l.5.4-.5-.4m1.5 0l.5.4-.5-.4z"/>
+    <path fill="#e75a10" d="M287.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M293 302.3l.4.4-.5-.4z"/>
+    <path fill="#103900" d="M293.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M294.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#185200" d="M295 302.3l.4.4-.5-.4z"/>
+    <path fill="#7b7373" d="M295.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M298.1 302.6l.2.3-.2-.3z"/>
+    <path fill="#296300" d="M298.4 302.3l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M299 302.3l.4.4-.5-.4m-63.1.4l.5.5-.5-.4z"/>
+    <path fill="#ce2110" d="M236.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M238.8 302.7l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M239.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M241.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M242.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M243.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M244.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M245.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M245.8 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M248.3 302.7l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M248.8 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M249.3 302.7l.5.5-.5-.5m30.6 0l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M280.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M280.9 302.7l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M281.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M282.4 302.7l.5.5-.5-.5m1 0l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M284.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M285 303l.2.4-.1-.3z"/>
+    <path fill="#e75a10" d="M285.7 302.9l.4.2-.4-.2z"/>
+    <path fill="#de2110" d="M287.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M287.9 302.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M288.9 302.7l.5.5-.5-.5zm1.2.4l.1.3-.1-.3z"/>
+    <path fill="#736b6b" d="M293.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M294 302.7l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M294.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M295 302.7l.4.5-.5-.5z"/>
+    <path fill="#082108" d="M295.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M296 302.7l.4.5-.5-.5z"/>
+    <path fill="#103900" d="M298.4 302.7l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M299 302.7l.4.5-.5-.5z"/>
+    <path fill="#6b4242" d="M235.8 303.2l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M240.3 303.2l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M240.8 303.2l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M242.3 303.2l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M244.3 303.2l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M245.3 303.2l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M245.8 303.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M256.8 303.2v.5h3l-3-.5z"/>
+    <path fill="#7b1008" d="M259.8 303.2l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M260.3 303.2v.5h9.6l-9.6-.5z"/>
+    <path fill="#ad1810" d="M269.9 303.2v.5h3l-3-.5z"/>
+    <path fill="#ce2110" d="M272.9 303.2l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M283.4 303.2l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M283.9 303.2l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M284.4 303.2l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M285.7 303.4l.4.1-.4-.1z"/>
+    <path fill="#f7b508" d="M286.9 303.2l1 1-1-1z"/>
+    <path fill="#e75a10" d="M287.4 303.2l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M288.9 303.2l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M293.4 303.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M295.6 303.5l.2.4-.2-.4z"/>
+    <path fill="#7b7373" d="M296 303.2l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M296.4 303.2l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M298.4 303.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M229.8 303.7l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M230.3 303.7l.4.5-.4-.5z"/>
+    <path fill="#6b4242" d="M230.8 303.7l.4.5-.4-.5z"/>
+    <path fill="#8c8c8c" d="M232.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M233.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M233.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#6b2908" d="M235.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M239.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#ffce08" d="M240 304l.1.3-.2-.3z"/>
+    <path fill="#f7b508" d="M241.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M243.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M243.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M250.6 303.9l.4.1-.4-.1z"/>
+    <path fill="#941808" d="M251.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M251.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M252.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M253.1 303.9l.4.1-.4-.1z"/>
+    <path fill="#845a52" d="M253.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M254.3 303.7v.5h2l-2-.5z"/>
+    <path fill="#ada5a5" d="M256.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M256.8 303.7v.5h1.5l-1.5-.5z"/>
+    <path fill="#cecece" d="M258.3 303.7l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M258.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M259.3 303.7l1.5 1.4-1.5-1.4z"/>
+    <path fill="#428c00" d="M259.8 303.7c1.3 1.6 2.4 2.3 4.5 1.9l-4.5-1.9z"/>
+    <path fill="#397b00" d="M262.8 303.7l1 2.4h1l-2-2.4z"/>
+    <path fill="#63636b" d="M263.3 303.7l1.5 1.4-1.5-1.4z"/>
+    <path fill="#cecece" d="M265.3 303.7l-.5 1 .5-1z"/>
+    <path fill="#214210" d="M265.8 303.7l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M266.3 306l4-1.8c-2-.8-4.4-.6-4 1.9z"/>
+    <path fill="#185200" d="M270.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.9 303.7l.5.5-.5-.5z"/>
+    <path fill="#946b63" d="M275.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M276.2 303.9l.3.1-.3-.1z"/>
+    <path fill="#8c3939" d="M276.9 303.7l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M277.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M277.9 303.7l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M278.7 303.9l.3.1-.3-.1z"/>
+    <path fill="#ce2110" d="M279.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M286.7 303.9l.4.1-.4-.1m1.2-.2l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M288.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M288.9 303.7l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M290 303.7l.4.5-.5-.5z"/>
+    <path fill="#631808" d="M293.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M296 303.7l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M296.4 303.7l.5.5-.5-.5zm2.5 0l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M299.4 303.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M229.3 304.2l.4.5-.4-.5z"/>
+    <path fill="#631818" d="M229.8 304.2l.4.5-.4-.5z"/>
+    <path fill="#bd2110" d="M230.3 304.2l.4.5-.4-.5z"/>
+    <path fill="#de2110" d="M229.8 308.5c5.2-3 12 5.2 16-1.5l-.5-.4c-1.7.5-3.7 2-5.5 1.7-1.3-.2-14-8.4-10 .2z"/>
+    <path fill="#bd2110" d="M233.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M233.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M234.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M234.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M235.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M235.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#de3110" d="M239.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#ef7b08" d="M240.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M246.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M246.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M247.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M247.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M248.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#8c6363" d="M248.8 304.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M249.6 304.3l.4.2-.4-.2z"/>
+    <path fill="#bdbdbd" d="M250.6 304.3l.4.2-.4-.2z"/>
+    <path fill="#efefef" d="M251.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M259.3 304.2l1.5 1.4-1.5-1.4z"/>
+    <path fill="#103910" d="M265.3 304.2l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M269.9 304.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M270.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M278.7 304.3l.3.2-.3-.2z"/>
+    <path fill="#8c8c8c" d="M279.7 304.3l.3.2-.3-.2z"/>
+    <path fill="#8c7373" d="M280.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M280.9 304.2l.5.5-.5-.5z"/>
+    <path fill="#733939" d="M281.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M281.9 304.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M282.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M282.9 304.2l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M287.4 304.2l.5.5-.5-.5m1.7.3l.1.3-.1-.3z"/>
+    <path fill="#6b2908" d="M293.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M294 304.2l.4.5-.5-.5z"/>
+    <path fill="#7b7373" d="M294.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M295 304.2l.4.5-.5-.5z"/>
+    <path fill="#941808" d="M295.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M296 304.2l.4.5-.5-.5z"/>
+    <path fill="#de2110" d="M284.9 306.6c-.7 6.6 11.8 0 15 1.9 1.8-3.7-2.3-5.3-5.4-3.4-1.5.9-2.2 2.8-4.1 3.1-1.9.3-3.9-1-5.5-1.6z"/>
+    <path fill="#ce2110" d="M299 304.2l.4.5-.5-.5z"/>
+    <path fill="#7b1008" d="M299.4 304.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M300 304.2l.4.5-.5-.5m-71.2.5l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M229.3 304.6l.4.5-.4-.5z"/>
+    <path fill="#941808" d="M235.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#310000" d="M235.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M236.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#ef9408" d="M239.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#e75a10" d="M240.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M243.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M243.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M244.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#6b2908" d="M244.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M245.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M245.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M246.3 304.6l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M246.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M264.8 304.6l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M265.3 304.6l1 1.5-1-1.5m3.5 0l-.5 1 .5-1z"/>
+    <path fill="#103910" d="M269.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M269.9 304.6l-.5 1 .5-1z"/>
+    <path fill="#bdbdbd" d="M282.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M282.9 304.6l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M283.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M283.9 304.6l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M284.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M284.9 304.6l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M285.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M285.9 304.6l.5.5-.5-.5z"/>
+    <path fill="#f7b508" d="M289.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M293.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M294 304.6l.4.5-.5-.5m6 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M300.4 304.6l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M228.2 305.1l.5.5-.5-.5z"/>
+    <path fill="#842118" d="M228.7 305.1l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M235.8 305.1l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M236.3 305.1l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M241.8 305.1l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M243.8 305.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M244.3 305.1l.5.5-.5-.5z"/>
+    <path fill="#214210" d="M260.8 305.1l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M264.8 305.1l.5.5-.5-.5z"/>
+    <path fill="#293129" d="M268.9 305.1l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M284.9 305.1l.5.5-.5-.5z"/>
+    <path fill="#391810" d="M285.4 305.1l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M285.9 305.1l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M286.4 305.1l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M286.9 305.1l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M287.4 305.1l1 1-1-1m5.5 0l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M293.4 305.1l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M300.4 305.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M301 305.1l.4.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M228.2 305.6l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M228.7 305.6l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M236.3 305.6l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M236.8 305.6l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M241.6 305.8l.3.1-.3-.1z"/>
+    <path fill="#631818" d="M244.3 305.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M244.8 305.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M258.8 305.6l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M259.3 305.6l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M259.8 305.6v.5h1.5l-1.5-.5z"/>
+    <path fill="#293100" d="M261.3 305.6l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M261.8 305.6l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M264.8 305.6l.5.5-.5-.5z"/>
+    <path fill="#082108" d="M265.3 305.6l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M267.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M267.9 305.6l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M268.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#733939" d="M268.9 305.6l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M269.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#736b6b" d="M269.9 305.6l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M270.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M284.4 305.6l-.5 1 .5-1z"/>
+    <path fill="#5a1010" d="M284.9 305.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M285.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M287.4 305.6l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M292.4 305.6l1 1-1-1z"/>
+    <path fill="#5a1008" d="M293 305.6l.4.5-.5-.5z"/>
+    <path fill="#736b6b" d="M301 305.6l.4.5-.5-.5z"/>
+    <path fill="#8c6363" d="M228.2 306l.5.6-.5-.5z"/>
+    <path fill="#520808" d="M236.8 306l.5.6-.5-.5z"/>
+    <path fill="#ce2110" d="M237.3 306l.5.6-.5-.5z"/>
+    <path fill="#bd2110" d="M243.8 306l.5.6-.5-.5z"/>
+    <path fill="#7b1008" d="M244.3 306l-.5 1 .5-1z"/>
+    <path fill="#100808" d="M244.8 306l.5.6-.5-.5z"/>
+    <path fill="#9c9494" d="M245.3 306l.5.6-.5-.5z"/>
+    <path fill="#bdbdbd" d="M256.8 306l.5.6-.5-.5z"/>
+    <path fill="#ada5a5" d="M257.3 306l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M257.8 306l.5.6-.5-.5z"/>
+    <path fill="#52525a" d="M258.3 306l.5.6-.5-.5z"/>
+    <path fill="#7b1008" d="M258.8 306l.5.6-.5-.5z"/>
+    <path fill="#ce2110" d="M259.3 306l.5.6-.5-.5z"/>
+    <path fill="#de2110" d="M258.8 308.5l4 .5c-.2-3-3.4-3.7-4-.5z"/>
+    <path fill="#b51010" d="M261.8 306l.5.6-.5-.5z"/>
+    <path fill="#7b1008" d="M262.3 306l.5.6-.5-.5z"/>
+    <path fill="#292100" d="M262.8 306l.5.6-.5-.5z"/>
+    <path fill="#422100" d="M263.3 306l.5.6-.5-.5z"/>
+    <path fill="#941808" d="M263.8 306l.5.6-.5-.5z"/>
+    <path fill="#ad1810" d="M264.3 306v.6h1.5l-1.5-.5z"/>
+    <path fill="#311000" d="M265.8 306l.5.6-.5-.5z"/>
+    <path fill="#293100" d="M266.3 306l.5.6-.5-.5z"/>
+    <path fill="#631808" d="M266.9 306l.5.6-.5-.5z"/>
+    <path fill="#941808" d="M267.4 306l.5.6-.5-.5z"/>
+    <path fill="#de2110" d="M266.9 306.6l.5 2.3 3.5-.4c-.4-2.4-1.8-2.4-4-2z"/>
+    <path fill="#b51010" d="M270.4 306l.5.6-.5-.5z"/>
+    <path fill="#423131" d="M270.9 306l.5.6-.5-.5z"/>
+    <path fill="#8c8c8c" d="M271.4 306l.5.6-.5-.5z"/>
+    <path fill="#9c9494" d="M271.9 306l.5.6-.5-.5z"/>
+    <path fill="#bdbdbd" d="M272.4 306l.5.6-.5-.5z"/>
+    <path fill="#efefef" d="M272.9 306l.5.6-.5-.5z"/>
+    <path fill="#101810" d="M284.4 306l.5.6-.5-.5z"/>
+    <path fill="#631808" d="M284.9 306l.5.6-.5-.5z"/>
+    <path fill="#b51010" d="M285.4 306l.5.6-.5-.5z"/>
+    <path fill="#520808" d="M292.4 306l.5.6-.5-.5z"/>
+    <path fill="#734a42" d="M301.1 306.4l.2.3-.2-.3z"/>
+    <path fill="#8c8c8c" d="M228.2 306.6l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M236.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M237.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M242.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M243.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M244.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M245.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M245.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M254.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#ada5a5" d="M255.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#736b6b" d="M255.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#631818" d="M256.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M256.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M257.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M257.8 306.6l-2 .4v2.9c1.7-.7 2.7-1.5 2-3.3z"/>
+    <path fill="#5a1008" d="M258.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#520808" d="M262.8 306.6l.5.4-.5-.4z"/>
+    <path fill="#de2110" d="M263.3 306.6v2.8h3v-2.8h-3z"/>
+    <path fill="#520808" d="M266.3 306.6l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M270.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M271.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M271.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M272.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M272.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#6b4242" d="M273.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M273.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M274.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M283.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#5a1010" d="M283.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M284.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M285.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M285.9 306.6l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M286.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M292 306.6l.4.4-.5-.4z"/>
+    <path fill="#ad1810" d="M292.4 306.6l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M228.4 307.4l.2.3-.2-.3z"/>
+    <path fill="#ad1810" d="M228.7 307l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M231.3 307l.4.5-.4-.5z"/>
+    <path fill="#bd2110" d="M231.8 307l.4.5-.4-.5z"/>
+    <path fill="#7b1008" d="M237.3 307l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M237.8 307l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M241.8 307l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M242.3 307l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M242.8 307l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M245.8 307l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M255 307.4l.1.3-.1-.3z"/>
+    <path fill="#941808" d="M255.3 307l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M258.3 307v2h.5l-.5-2m4.5 0v2h.5l-.5-2z"/>
+    <path fill="#941808" d="M266.3 307l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M266.9 307l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M270.9 307l-1.5 2.4h1.5v-1l1 .6v-2h-1z"/>
+    <path fill="#de2110" d="M271.9 307v2.4l2 .5.5-2.4-2.5-.5z"/>
+    <path fill="#bd2110" d="M273.9 307l.5.5-.5-.5z"/>
+    <path fill="#6b4242" d="M274.4 307l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M283.4 307l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M283.9 307l.5.5-.5-.5m2.5 0l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M286.9 307l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M287.4 307l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M291.4 307l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M292 307l.4.5-.5-.5z"/>
+    <path fill="#bd2110" d="M297.8 307.2l.3.2-.3-.2m2.6-.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M301 307l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M224.7 307.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M225.2 307.5l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M227.7 307.5l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M228.7 307.5l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M230.3 307.5l.4.5-.4-.5z"/>
+    <path fill="#5a1008" d="M230.8 307.5l.4.5-.4-.5z"/>
+    <path fill="#631808" d="M231.3 307.5l.4.5-.4-.5z"/>
+    <path fill="#941808" d="M231.8 307.5l.4.5-.4-.5z"/>
+    <path fill="#631808" d="M232.3 307.5l.4.5-.4-.5z"/>
+    <path fill="#7b1008" d="M232.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M233.3 307.5l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M233.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M237.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M238.4 307.8l.2.3-.2-.3z"/>
+    <path fill="#b51010" d="M240.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M241.3 307.5l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M241.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M242.3 307.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M245.3 307.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M245.8 307.5l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M255.3 307.5l.5.5-.5-.5m11 0v1h1v-1h-1z"/>
+    <path fill="#8c8c8c" d="M274.5 307.8l.2.3-.2-.3z"/>
+    <path fill="#dedede" d="M283.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M283.9 307.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M287.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M287.9 307.5l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M288.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M291 307.5l.4.5-.5-.5z"/>
+    <path fill="#520808" d="M291.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M292 307.5l.4.5-.5-.5m3.5 0l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M296 307.5l.4.5-.5-.5z"/>
+    <path fill="#631808" d="M296.8 307.7l.3.1-.3-.1z"/>
+    <path fill="#941808" d="M297.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M298 307.5l.4.5-.5-.5z"/>
+    <path fill="#5a1008" d="M298.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M299 307.5l.4.5-.5-.5z"/>
+    <path fill="#520808" d="M300.4 307.5l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M301.3 307.7l.3.1-.3-.1z"/>
+    <path fill="#bdbdbd" d="M304.3 307.7l.3.1-.3-.1z"/>
+    <path fill="#ada5a5" d="M223.2 308l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M223.7 308l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M224.2 308l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M224.7 308l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M222.2 309.4c2 4.1 12.6 5.3 15 1-5.8.7-9.5-3.7-15-1z"/>
+    <path fill="#ce2110" d="M227.7 308l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M228.2 308l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M228.7 308l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M230.8 308l.4.5-.4-.5z"/>
+    <path fill="#de2110" d="M236.8 309.9c-4.7-3.6-7.8 1 0 0z"/>
+    <path fill="#ce2110" d="M233.3 308l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M233.8 308l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M234.3 308l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M234.8 308l.5.5-.5-.5zm6 0l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M241.3 308l.5.5-.5-.5z"/>
+    <path fill="#5a2121" d="M245.3 308l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M255.3 308l.5.5-.5-.5z"/>
+    <path fill="#736b6b" d="M283.9 308l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M284.4 308l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M288.4 308l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M288.9 308l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M294.4 308l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M295.3 308.1l.3.2-.4-.2z"/>
+    <path fill="#bd2110" d="M296 308l.4.5-.5-.5z"/>
+    <path fill="#de2110" d="M293 309.4v.5c2.5.3 5.4 1.2 6-2l-6 1.5z"/>
+    <path fill="#520808" d="M299 308l.4.5-.5-.5z"/>
+    <path fill="#b51010" d="M300 308l.4.5-.5-.5z"/>
+    <path fill="#5a1008" d="M300.4 308l-.5 1 .5-1z"/>
+    <path fill="#ad1810" d="M301 308l.4.5-.5-.5z"/>
+    <path fill="#ce2110" d="M301.4 308l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M292.4 310.4c2.5 4.3 13 3 15-1-5.4-2.7-9.2 1.7-15 1z"/>
+    <path fill="#941808" d="M304.4 308l.6.5-.6-.5z"/>
+    <path fill="#6b2908" d="M305 308l.4.5-.4-.5z"/>
+    <path fill="#736b6b" d="M305.4 308l.6.5-.6-.5z"/>
+    <path fill="#9c9494" d="M306 308l.4.5-.4-.5z"/>
+    <path fill="#efefef" d="M306.4 308l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M222.2 308.5l-1 1.4 1-1.4z"/>
+    <path fill="#5a3131" d="M222.7 308.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M223.2 308.5l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M229.3 308.5l.4.5-.4-.5z"/>
+    <path fill="#ad1810" d="M234.8 308.5l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M235.6 308.6l.3.2-.3-.2z"/>
+    <path fill="#bd2110" d="M236.3 308.5l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M244.8 308.5l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M245.3 308.5l-.5 1 .5-1z"/>
+    <path fill="#631808" d="M255.3 308.5l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M258.8 308.5v.5l2 .4-2-1z"/>
+    <path fill="#941808" d="M266.3 308.5l1 1-1-1z"/>
+    <path fill="#ce2110" d="M266.9 308.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M268.9 308.5l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M270.9 308.5l1 1-1-1z"/>
+    <path fill="#ad1810" d="M273.9 308.5l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M274.4 308.5l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M283.9 308.5l.5.5-.5-.5z"/>
+    <path fill="#5a2121" d="M284.4 308.5l1 1-1-1z"/>
+    <path fill="#ce2110" d="M293 308.5l.4.5-.5-.5z"/>
+    <path fill="#7b1008" d="M293.4 308.5l-.5 1 .5-1z"/>
+    <path fill="#5a1008" d="M294 308.5l.4.5-.5-.5z"/>
+    <path fill="#941808" d="M294.4 308.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M299 308.5l.4.5-.5-.5z"/>
+    <path fill="#631808" d="M299.4 308.5l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M306 308.5l.4.5-.4-.5z"/>
+    <path fill="#5a2121" d="M306.4 308.5l.6.5-.6-.5z"/>
+    <path fill="#bdbdbd" d="M307 308.5l.4.5-.4-.5z"/>
+    <path fill="#631818" d="M222.2 309l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M229.3 309l.4.4-.4-.4z"/>
+    <path fill="#210800" d="M229.8 309l.4.4-.4-.4z"/>
+    <path fill="#ad1810" d="M230.3 309l-.6.9.6-1z"/>
+    <path fill="#ce2110" d="M235.8 309l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M236.3 309l.5.4-.5-.4z"/>
+    <path fill="#420000" d="M236.8 309l.5.4-.5-.4z"/>
+    <path fill="#ad1810" d="M237.3 309l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M243.8 309l.5.4-.5-.4z"/>
+    <path fill="#5a1010" d="M244.3 309l.5.4-.5-.4z"/>
+    <path fill="#734a42" d="M255.3 309l.5.4-.5-.4z"/>
+    <path fill="#ce2110" d="M257.8 309l.5.4-.5-.4z"/>
+    <path fill="#310000" d="M258.3 309l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M259 309.3l.2.3-.2-.3z"/>
+    <path fill="#b51010" d="M259.7 309.1l.3.2-.3-.2z"/>
+    <path fill="#7b1008" d="M260.8 309l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M261.3 309l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M261.8 309l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M262.3 309l.5.4-.5-.4z"/>
+    <path fill="#520808" d="M262.8 309l.5.4-.5-.4z"/>
+    <path fill="#420000" d="M266.3 309l.5.4-.5-.4z"/>
+    <path fill="#631808" d="M267.4 309v.4h1.5l-1.5-.4z"/>
+    <path fill="#941808" d="M268.9 309l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M269.9 309l.5.4-.5-.4z"/>
+    <path fill="#310000" d="M270.9 309l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M273.9 309l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M274.4 309l.5.4-.5-.4m10 0l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M285.4 309l.5.4-.5-.4m6.5 0l.5.4-.5-.4z"/>
+    <path fill="#520808" d="M292.4 309l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M293.4 309l.5.4-.5-.4m5.5 0l.5.4-.5-.4z"/>
+    <path fill="#210800" d="M299.4 309l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M300 309l.4.4-.5-.4z"/>
+    <path fill="#7b1008" d="M307 309l.4.4-.4-.4z"/>
+    <path fill="#9c9494" d="M307.4 309l.6.4-.6-.4z"/>
+    <path fill="#631818" d="M221.7 309.4l2.5 2.9-2.5-2.9z"/>
+    <path fill="#420000" d="M230.3 309.4l.4.5-.4-.5z"/>
+    <path fill="#842118" d="M236.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M237.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#524242" d="M237.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M238.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M238.8 309.4l.5.5-.5-.5m4 0l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M243.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M243.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M244.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#845a52" d="M255.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#bd2110" d="M256.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M256.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b5252" d="M257.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M257.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M258.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M259.3 309.4v.5h2l-2-.5z"/>
+    <path fill="#b51010" d="M261.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M261.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M262.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#392100" d="M262.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M263.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M263.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M264.7 309.6l.3.1-.3-.1z"/>
+    <path fill="#941808" d="M265.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#311000" d="M265.8 309.4l.5.5-.5-.5z"/>
+    <path fill="#292100" d="M266.3 309.4l.5.5-.5-.5z"/>
+    <path fill="#4a1000" d="M266.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M267.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M267.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#de2110" d="M268.4 309.4v.5h2l-2-.5z"/>
+    <path fill="#b51010" d="M270.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M270.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M271.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M271.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#6b2131" d="M272.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M272.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M273.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M285.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M285.9 309.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M286.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M290.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M291 309.4l.4.5-.5-.5z"/>
+    <path fill="#733939" d="M291.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M292 309.4l.4.5-.5-.5z"/>
+    <path fill="#631818" d="M292.4 309.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M307.4 309.4l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M308 309.4l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M221.2 309.9l2 1.9-2-1.9z"/>
+    <path fill="#941808" d="M230.3 309.9l.4.5-.4-.5z"/>
+    <path fill="#5a1008" d="M230.8 309.9l1 1-1-1z"/>
+    <path fill="#ce2110" d="M234.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M235.4 310.2l.2.3-.2-.3z"/>
+    <path fill="#631808" d="M236.1 310l.3.2-.3-.1z"/>
+    <path fill="#7b1008" d="M236.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#392121" d="M237.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M238.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M238.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M239.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#6b2131" d="M239.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M240.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#9c4239" d="M240.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#ad524a" d="M241.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M241.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M242.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M242.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M243.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M255.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#6b2131" d="M255.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M256.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M256.8 309.9l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M258.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M259.3 309.9v.5h2l-2-.5z"/>
+    <path fill="#296300" d="M261.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M261.8 309.9l-.5 1.9.5-1.9z"/>
+    <path fill="#319400" d="M262.7 310l.3.2-.3-.1z"/>
+    <path fill="#214210" d="M263.3 309.9l-.5 1 .5-1z"/>
+    <path fill="#9c9494" d="M263.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M264.7 310l.3.2-.3-.1z"/>
+    <path fill="#efefef" d="M265.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M265.8 309.9l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M266.3 309.9l.5.5-.5-.5z"/>
+    <path fill="#428c00" d="M266.9 309.9c1.8 2.1 5 4.8 7.5 2.4l-7.5-2.4z"/>
+    <path fill="#397b00" d="M267.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M268.4 309.9v.5h2l-2-.5z"/>
+    <path fill="#103900" d="M270.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M270.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M272.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#524242" d="M273.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#5a1010" d="M273.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M286.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M286.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#734a42" d="M287.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#ad524a" d="M288.2 310l.4.2-.4-.1z"/>
+    <path fill="#631808" d="M288.9 309.9l.5.5-.5-.5z"/>
+    <path fill="#733129" d="M289.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#736b6b" d="M290 309.9l.4.5-.5-.5z"/>
+    <path fill="#9c9494" d="M290.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M291 309.9l.4.5-.5-.5z"/>
+    <path fill="#52525a" d="M292 309.9l.4.5-.5-.5z"/>
+    <path fill="#5a1008" d="M292.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M293.3 310l.3.2-.4-.1z"/>
+    <path fill="#ad1810" d="M294 310.2l.2.3-.1-.3z"/>
+    <path fill="#ce2110" d="M294.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M298.4 309.9l.5.5-.5-.5z"/>
+    <path fill="#631818" d="M307.4 309.9l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M308 309.9l-.5 1 .5-1z"/>
+    <path fill="#efefef" d="M308.5 309.9l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M220.7 310.4l2 1.9-2-2z"/>
+    <path fill="#cecece" d="M221.2 310.4l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M230.8 310.4l.4.5-.4-.5z"/>
+    <path fill="#631808" d="M232 310.5l.4.2-.3-.2z"/>
+    <path fill="#941808" d="M232.8 310.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M233.3 310.4l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M233.8 310.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M234.6 310.5l.3.2-.3-.2z"/>
+    <path fill="#5a1008" d="M237.3 310.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M237.8 310.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M255.3 310.4l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M257.8 310.4l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M258.3 310.4l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M258.8 310.4l.5.5-.5-.5z"/>
+    <path fill="#319400" d="M255.8 312.3c2.4 2.2 4.9.1 6.5-2l-6.5 2z"/>
+    <path fill="#cecece" d="M263.3 310.4l-.5 1 .5-1z"/>
+    <path fill="#8c8c8c" d="M266.3 310.4l.5.5-.5-.5z"/>
+    <path fill="#294200" d="M266.9 310.4l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M270.9 310.4l.5.5-.5-.5z"/>
+    <path fill="#52525a" d="M271.4 310.4l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M271.9 310.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M273.9 310.4l.5.5-.5-.5z"/>
+    <path fill="#420000" d="M292 310.4l.4.5-.5-.5z"/>
+    <path fill="#7b1008" d="M294.4 310.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M295 310.4l.4.5-.5-.5z"/>
+    <path fill="#7b1008" d="M295.4 310.4l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M296 310.4l.4.5-.5-.5z"/>
+    <path fill="#941808" d="M296.4 310.4l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M297 310.4v.5h1.4l-1.5-.5z"/>
+    <path fill="#ad1810" d="M298.4 310.4l.5.5-.5-.5z"/>
+    <path fill="#520808" d="M307 310.4l.4.5-.4-.5z"/>
+    <path fill="#cecece" d="M308 310.4l-1 1.4 1-1.4z"/>
+    <path fill="#8c8c8c" d="M308.5 310.4l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M220.2 310.9l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M221.7 310.9l.5.4-.5-.4z"/>
+    <path fill="#7b1008" d="M237.3 310.9l.5.4-.5-.4z"/>
+    <path fill="#dedede" d="M237.8 310.9l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M257.3 310.9l.5.4-.5-.4z"/>
+    <path fill="#184a00" d="M257.8 310.9l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M262.3 310.9l-.5.9.5-1z"/>
+    <path fill="#bdbdbd" d="M266.9 310.9l.5.4-.5-.4z"/>
+    <path fill="#213918" d="M267.4 310.9l.5.4-.5-.4m4.5 0l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M272.4 310.9l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M292 310.9l.4.4-.5-.4z"/>
+    <path fill="#631808" d="M306.4 310.9l.6.4-.6-.4z"/>
+    <path fill="#424242" d="M307 310.9l.4.4-.4-.4z"/>
+    <path fill="#7b7373" d="M308 310.9l-1 1.4 1-1.4z"/>
+    <path fill="#9c9494" d="M308.5 310.9l-.5.9.5-1z"/>
+    <path fill="#cecece" d="M220.7 311.3l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M236.8 311.3l-.5 1 .5-1z"/>
+    <path fill="#63636b" d="M237.3 311.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M256.3 311.3l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M256.8 311.3l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M257.3 311.3l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M262.3 311.3l.5.5-.5-.5m5 0l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M267.9 311.3l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M268.4 311.3l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M272.4 311.3l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M272.9 311.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M273.4 311.3l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M292 311.3l.4.5-.5-.5z"/>
+    <path fill="#ad1810" d="M292.4 311.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M306 311.3l-1 1.5 1-1.5z"/>
+    <path fill="#424242" d="M306.4 311.3l-1 1.5 1-1.5z"/>
+    <path fill="#7b7373" d="M309 311.3l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M220.2 311.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M221.2 311.8l1 1-1-1z"/>
+    <path fill="#7b7373" d="M221.7 311.8l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M222.7 311.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M223.2 311.8l1 1-1-1z"/>
+    <path fill="#5a3131" d="M236.8 311.8l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M255.3 311.8l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M255.8 311.8l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M256.3 311.8l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M260.8 311.8l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M261.3 311.8l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M268.4 311.8l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M268.9 311.8l.5.5-.5-.5m4.5 0l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M273.9 311.8l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M274.4 311.8l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M292.4 311.8l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M293 311.8l.4.5-.5-.5z"/>
+    <path fill="#dedede" d="M306.4 311.8l.6.5-.6-.5z"/>
+    <path fill="#a59494" d="M307.4 311.8l.6.5-.6-.5z"/>
+    <path fill="#63636b" d="M308.5 311.8l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M309 311.8l-.5 1.4.5-1.4z"/>
+    <path fill="#bdbdbd" d="M220.7 312.3l.5.5-.5-.5z"/>
+    <path fill="#7b7373" d="M222.2 312.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M222.7 312.3l3.5 2.8-3.5-2.8z"/>
+    <path fill="#9c9494" d="M223.2 312.3l.5.5-.5-.5z"/>
+    <path fill="#7b1008" d="M224.2 312.3l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M228.7 312.3l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M229.3 312.3l.4.5-.4-.5z"/>
+    <path fill="#8c3939" d="M229.8 312.3l.4.5-.4-.5z"/>
+    <path fill="#843129" d="M233.3 312.3l.5.5-.5-.5z"/>
+    <path fill="#6b5252" d="M235.8 312.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M236.3 312.3l.5.5-.5-.5m18.5 0l.5.5-.5-.5z"/>
+    <path fill="#184a00" d="M255.3 312.3l.5.5-.5-.5z"/>
+    <path fill="#297b00" d="M259.8 312.3l.5.5-.5-.5z"/>
+    <path fill="#294221" d="M260.3 312.3l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M260.8 312.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M268.9 312.3l.5.5-.5-.5z"/>
+    <path fill="#213918" d="M269.4 312.3l.5.5-.5-.5z"/>
+    <path fill="#103900" d="M274.4 312.3l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M274.9 312.3l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M293 312.3l.4.5-.5-.5z"/>
+    <path fill="#736b6b" d="M293.4 312.3l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M294 312.3l.4.5-.5-.5z"/>
+    <path fill="#842118" d="M296 312.3l.4.5-.5-.5z"/>
+    <path fill="#8c4a4a" d="M296.4 312.3l.5.5-.5-.5zm3 0l.5.5-.5-.5z"/>
+    <path fill="#631808" d="M300 312.3l.4.5-.5-.5z"/>
+    <path fill="#941808" d="M300.4 312.3l.5.5-.5-.5z"/>
+    <path fill="#ce2110" d="M301 312.3l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M306 312.3l-1.6 1.9 1.6-2z"/>
+    <path fill="#8c8c8c" d="M306.4 312.3l-2.4 3.3 2.4-3.3z"/>
+    <path fill="#ada5a5" d="M307.3 312.4l.3.2-.3-.2z"/>
+    <path fill="#dedede" d="M220.7 312.8l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M221.2 312.8l1 1.4-1-1.4z"/>
+    <path fill="#efefef" d="M222.2 312.8l.5.4-.5-.4z"/>
+    <path fill="#9c9494" d="M223.7 312.8l.5.4-.5-.4z"/>
+    <path fill="#52525a" d="M224.2 312.8l.5.4-.5-.4z"/>
+    <path fill="#941808" d="M224.7 312.8l.5.4-.5-.4z"/>
+    <path fill="#bd2110" d="M227.2 312.8l.5.4-.5-.4z"/>
+    <path fill="#5a1008" d="M227.7 312.8l.5.4-.5-.4z"/>
+    <path fill="#736b6b" d="M228.2 312.8l.5.4-.5-.4z"/>
+    <path fill="#bdbdbd" d="M228.7 312.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M254.8 312.8l.5.4-.5-.4z"/>
+    <path fill="#314231" d="M255.3 312.8l.5.4-.5-.4z"/>
+    <path fill="#297b00" d="M255.8 312.8l1 1-1-1z"/>
+    <path fill="#185200" d="M259.3 312.8l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M259.8 312.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M260.3 312.8l.5.4-.5-.4m9 0l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M269.9 312.8l.5.4-.5-.4z"/>
+    <path fill="#294200" d="M270.4 312.8l.5.4-.5-.4z"/>
+    <path fill="#397b00" d="M273.9 312.8l-.5 1 .5-1z"/>
+    <path fill="#52525a" d="M274.4 312.8l.5.4-.5-.4z"/>
+    <path fill="#efefef" d="M274.9 312.8l.5.4-.5-.4z"/>
+    <path fill="#cecece" d="M300.4 312.8l.5.4-.5-.4z"/>
+    <path fill="#7b7373" d="M301 312.8l.4.4-.5-.4z"/>
+    <path fill="#631818" d="M301.4 312.8l.5.4-.5-.4z"/>
+    <path fill="#b51010" d="M302 312.8l.4.4-.5-.4m2.5 0l-.5 1 .5-1z"/>
+    <path fill="#292921" d="M305 312.8l.4.4-.4-.4z"/>
+    <path fill="#cecece" d="M307 312.8l.4.4-.4-.4m1 0l-1.6 1.9 1.6-2z"/>
+    <path fill="#bdbdbd" d="M221.7 313.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M222.7 313.2l.5.5-.5-.5z"/>
+    <path fill="#424242" d="M224.7 313.2l.5.5-.5-.5z"/>
+    <path fill="#ad1810" d="M225.2 313.2l.5.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M227.2 313.2l.5.5-.5-.5z"/>
+    <path fill="#efefef" d="M227.7 313.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M255.8 313.2l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M258.3 313.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M258.8 313.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M259.3 313.2l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M270.4 313.2l.5.5-.5-.5z"/>
+    <path fill="#425242" d="M270.9 313.2l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M271.4 313.2l.5.5-.5-.5z"/>
+    <path fill="#63636b" d="M273.9 313.2l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M302 313.2l.4.5-.5-.5z"/>
+    <path fill="#941808" d="M302.4 313.2l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M304.4 313.2l.6.5-.6-.5z"/>
+    <path fill="#cecece" d="M306.4 313.2l.6.5-.6-.5z"/>
+    <path fill="#ada5a5" d="M308 313.2l-1 1.5 1-1.5z"/>
+    <path fill="#cecece" d="M223.2 313.7l2 2-2-2z"/>
+    <path fill="#7b7373" d="M223.7 313.7l.5.5-.5-.5z"/>
+    <path fill="#292921" d="M225.2 313.7l.5.5-.5-.5z"/>
+    <path fill="#b51010" d="M225.7 313.7l.5.5-.5-.5z"/>
+    <path fill="#941808" d="M226.2 313.7l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M226.7 313.7l.5.5-.5-.5m29.6 0l.5.5-.5-.5z"/>
+    <path fill="#185200" d="M256.8 313.7l.5.5-.5-.5z"/>
+    <path fill="#296300" d="M257.3 313.7l.5.5-.5-.5z"/>
+    <path fill="#395231" d="M257.8 313.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M258.3 313.7l.5.5-.5-.5m13 0l.6.5-.5-.5z"/>
+    <path fill="#5a5231" d="M271.9 313.7l.5.5-.5-.5z"/>
+    <path fill="#397b00" d="M272.4 313.7l.5.5-.5-.5z"/>
+    <path fill="#295200" d="M272.9 313.7l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M273.4 313.7l.5.5-.5-.5m29 0l.5.5-.5-.5z"/>
+    <path fill="#5a1008" d="M303 313.7l.4.5-.5-.5z"/>
+    <path fill="#ce2110" d="M303.4 313.7l.5.5-.5-.5z"/>
+    <path fill="#391810" d="M304 313.7l.4.5-.5-.5z"/>
+    <path fill="#cecece" d="M306 313.7l.4.5-.4-.5z"/>
+    <path fill="#7b7373" d="M224.2 314.2l.5.5-.5-.5z"/>
+    <path fill="#313931" d="M225.7 314.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M226.2 314.2l.5.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M256.8 314.2l.5.5-.5-.5z"/>
+    <path fill="#9c9494" d="M257.3 314.2l.5.5-.5-.5m15 0l.6.5-.5-.5z"/>
+    <path fill="#ada5a5" d="M272.9 314.2l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M303 314.2l1 1-1-1z"/>
+    <path fill="#292921" d="M303.4 314.2l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M304 314.2l.4.5-.5-.5m1.5 0l.5.5-.5-.5z"/>
+    <path fill="#8c8c8c" d="M222.7 314.7l.5.5-.5-.5z"/>
+    <path fill="#cecece" d="M223.2 314.7l2 1.9-2-2z"/>
+    <path fill="#7b7373" d="M224.7 314.7l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M305 314.7l.4.5-.4-.5z"/>
+    <path fill="#dedede" d="M306 314.7l-.6 1 .6-1z"/>
+    <path fill="#7b7373" d="M306.4 314.7l-.4 1 .4-1m-83.2.5l.5.4-.5-.4z"/>
+    <path fill="#8c8c8c" d="M225.2 315.1l.5.5-.5-.5z"/>
+    <path fill="#bdbdbd" d="M304.4 315.1l.6.5-.6-.5z"/>
+    <path fill="#8c8c8c" d="M223.7 315.6l1 1-1-1z"/>
+    <path fill="#efefef" d="M225.2 315.6l.5.5-.5-.5z"/>
+    <path fill="#dedede" d="M305 315.6l.4.5-.4-.5m-81.3.5l1 1-1-1z"/>
+    <path fill="#efefef" d="M304.4 316.1l.6.5-.6-.5z"/>
+    <path fill="#dedede" d="M305.4 316.1l-.4 1 .4-1z"/>
+    <path fill="#ecca5e" d="M248.2 228.2l.8-.2.3.3h.5a.8.8 0 00.4 0 .2.2 0 00.1-.3.2.2 0 000-.1.7.7 0 00-.4-.1 4.7 4.7 0 01-1.3-.2.8.8 0 01-.4-.7.8.8 0 01.2-.6c.2-.2.5-.4 1-.4h1l.4.6-.7.2a.5.5 0 00-.2-.2.7.7 0 00-.4 0 1 1 0 00-.5 0 .2.2 0 000 .2v.2l.8.1 1 .2c.2.2.3.3.3.6a.9.9 0 01-.3.7c-.2.3-.5.4-1 .4a2 2 0 01-1 0 1.2 1.2 0 01-.6-.7zm-3.6-.2l.1-.8.5-.6c.2-.2.5-.3.8-.3.5 0 .9 0 1.2.3.3.2.5.6.6 1 0 .5 0 .9-.3 1.2a2 2 0 01-1.1.6 1.9 1.9 0 01-.8-.1 1.3 1.3 0 01-.7-.5c-.2-.2-.3-.5-.3-.8zm.8-.1c0 .3.2.5.3.7.2 0 .4.2.6.1a.7.7 0 00.5-.3c.1-.2.2-.4.1-.7a1 1 0 00-.3-.6.7.7 0 00-.5-.2.7.7 0 00-.5.3c-.2.2-.2.4-.2.7zm-2.5-1.6l-.1-.7.8-.1.1.7-.8.1zm.4 3.3l-.4-2.9.9-.1.3 3h-.8zm-4.8-3.5l1.6-.2h.8c.2 0 .5.1.7.3l.5.6.2 1v.8c0 .3-.2.6-.4.8l-.5.4-.8.2-1.6.2-.5-4.1zm1 .6l.3 2.7.6-.1.5-.1a.8.8 0 00.4-.2.8.8 0 00.1-.4v-.8l-.1-.7a1 1 0 00-.3-.4.9.9 0 00-.5-.1h-1.1z"/>
+    <path fill="#ecca5e" fill-rule="evenodd" d="M250 239.5l12.2 15.3-.6.7-12.2-15.3zm31.4-1.1l-13.6 18-1-.4 13.5-18zm-34.5 4.1l14.4 13.4-.5.8-14.4-13.4zm-3.4 3.1l15.9 11.9-.4.8-15.9-11.9zm40-2.3l-14.3 13.5-.8-.4 14.2-13.5zm3 2.5l-16 11.7-.6-.6 16-11.6z"/>
+    <path fill="#7b5a00" fill-opacity=".6" d="M277 244l3.3-4.2-.4-.3-2.9 4.5z"/>
+    <path fill="#7b5a00" fill-opacity=".5" d="M269.5 253.9l3.3-4.2-.4-.3-2.9 4.5z"/>
+    <path fill="#7b5a00" fill-opacity=".7" d="M273.3 249.1l3.2-4.2-.3-.3-3 4.5z"/>
+    <path fill="#7b5a00" fill-opacity=".5" d="M281 249.6l4.6-2.8-.3-.4-4.3 3.2z"/>
+    <path fill="#7b5a00" fill-opacity=".4" d="M275 251.3l4-3.5-.3-.3-3.8 3.8z"/>
+    <path fill="#428c00" d="M236 286h-.6c0-2.7-1.1-4.5-4-5.2 0 1.4 1.1 7.1 3.5 5.2h.5l-1 4.3c1.5-1.6 7.7-7.1 5-9.6-2.3-2-3.4 4.3-3.5 5.3zm-4-34h-.5c-.1-2.7-1.2-4.5-4-5.3 0 1.5 1.1 7.2 3.5 5.3h.5l-1 4.3c1.5-1.6 7.7-7.2 5-9.6-2.3-2.1-3.5 4.2-3.5 5.3z"/>
+    <path fill="#ecca5e" d="M297.1 230.6h-.7v-.5a1.3 1.3 0 01-.5.3 1.2 1.2 0 01-1.4-.5c-.2-.2-.3-.6-.2-1.1 0-.5.2-.9.5-1.1.3-.3.6-.4 1-.3.3 0 .6.2.8.5l.2-1.5.8.1-.5 4zm-2-1.8v.7a.6.6 0 00.6.4.6.6 0 00.5-.2c.2-.1.2-.4.3-.7l-.1-.7a.6.6 0 00-.5-.3.6.6 0 00-.5.2 1 1 0 00-.3.6zm-3.3-.9l-.7-.2c.1-.3.3-.4.5-.6s.5-.1 1 0l.7.1.4.4v.7l-.1 1a3 3 0 000 .5v.4h-.7a2.4 2.4 0 01-.1-.3v-.1a1.4 1.4 0 01-1 .3 1 1 0 01-.7-.4.8.8 0 01-.3-.6.8.8 0 01.6-.7l.7-.1.8-.1v-.4l-.5-.2a.6.6 0 00-.3 0 .6.6 0 00-.3.3zm1 .8h-.5a2 2 0 00-.4.1l-.2.3v.3l.4.1a.7.7 0 00.4 0 .5.5 0 00.3-.3v-.5zm-2-1.8l-.1.6h-.6l-.1 1.2v.4l.1.1a1 1 0 00.4 0v.6h-.7a1 1 0 01-.4 0 .6.6 0 01-.2-.3.7.7 0 01-.1-.3 3.5 3.5 0 010-.5l.2-1.3h-.4l.1-.7h.4v-.5l1-.4-.2 1 .6.1zm-3.4 2.6h-.8l.4-3h.7v.5l.4-.4a.7.7 0 01.3 0c.2 0 .4 0 .6.2l-.4.6a.7.7 0 00-.3-.1.5.5 0 00-.3 0l-.3.3-.2 1v1zm-2.2-1.2l.8.2a1 1 0 01-.5.6c-.3.2-.6.2-1 .2-.5 0-.8-.3-1-.7a1.6 1.6 0 01-.2-1c0-.5.2-.9.5-1.1.3-.3.7-.4 1-.3.5 0 .9.2 1.1.5.3.4.3.8.2 1.4l-2-.2.1.5c.1.2.3.3.5.3a.5.5 0 00.3 0 .6.6 0 00.2-.4zm.2-.8l-.1-.5a.6.6 0 00-.4-.2.6.6 0 00-.5.1.7.7 0 00-.3.5l1.3.1zm-5.8 1.2l.5-4.1h.9l-.2 1.5c.3-.2.6-.3 1-.3.3 0 .6.2.8.5.2.3.3.7.2 1.2 0 .5-.2.9-.5 1.1a1.2 1.2 0 01-1.5.1 1.3 1.3 0 01-.4-.4v.4h-.8zm1-1.5l.1.7a.7.7 0 00.5.4.6.6 0 00.5-.2c.2-.1.3-.4.3-.7l-.1-.7a.6.6 0 00-.5-.3.6.6 0 00-.5.2l-.3.6zm-2.2-2l.1-.8.8.1v.7h-.9zm-.4 3.3l.4-3 .8.1-.4 3-.8-.1zm-3.6-.4l.5-4h.8l-.4 3.4 2.2.2-.1.7-3-.3z"/>
+    <path fill="#428c00" d="M227 261.4h-.5c-.1-2.7-1.2-4.5-4-5.3 0 1.5 1 7.2 3.5 5.3h.5l-1 4.3c1.5-1.6 7.7-7.2 5-9.6-2.3-2.1-3.5 4.2-3.5 5.3z"/>
+    <path fill="#fac349" fill-rule="evenodd" d="M244.7 246.2c0 .4-.4.7-1 .7s-.9-.3-.9-.7c0-.3.5-.6 1-.6s.9.3.9.6zm3.1-3.3c0 .4-.4.7-.9.7s-1-.3-1-.7c0-.4.5-.6 1-.6s1 .3 1 .6zm3-3c0 .3-.5.6-1 .6s-1-.3-1-.7c0-.3.5-.6 1-.6s1 .3 1 .6zm30.8-1.3c0 .4-.4.7-1 .7s-.8-.3-.8-.7c0-.4.4-.7.9-.7s1 .3 1 .7zm2.2 4.3c0 .4-.4.7-.9.7s-1-.3-1-.7c0-.4.5-.6 1-.6s1 .3 1 .6zm3.3 2.8c0 .3-.4.6-1 .6s-.9-.3-.9-.6c0-.4.4-.7 1-.7s.9.3.9.7z"/>
+    <path fill="#ecca5e" d="M270.8 222.4l-.7-.2c0-.2.2-.5.4-.6l1-.2.8.1.3.4.1.7v.9a1.8 1.8 0 00.2 1h-.8a3.2 3.2 0 01-.1-.3l-.5.2-.5.1a1.1 1.1 0 01-.8-.3.8.8 0 01-.2-.6.8.8 0 01.5-.7l.6-.2.8-.2v-.4l-.5-.1a.6.6 0 00-.4 0 .6.6 0 00-.2.4zm1.1.6a5.7 5.7 0 01-.5.1l-.4.2-.2.2.1.3.4.2.4-.2a.5.5 0 00.2-.2v-.6zm-3.4-2v-.7h.9v.8h-.8zm0 3.4v-3h.9v3h-.9zm-1.5 0h-.9v-3h.8v.5l.4-.4a.7.7 0 01.4-.1l.5.1-.3.7a.8.8 0 00-.4-.1.5.5 0 00-.3 0l-.1.4a4.5 4.5 0 00-.1 1v.9zm-1.4-3v.6h-.5v1.7a.3.3 0 00.2.1h.3v.5l-.6.2a1 1 0 01-.4-.1.6.6 0 01-.3-.2.7.7 0 010-.3 3.4 3.4 0 010-.6V222h-.4v-.6h.3v-.6l.9-.4v1h.5zm-4.1.9l-.8-.1c.1-.3.2-.5.5-.7l.9-.2c.3 0 .6 0 .8.2.2 0 .3.2.4.3v1.6a1.8 1.8 0 00.2 1h-.8a3.2 3.2 0 010-.3 1.3 1.3 0 01-1 .3 1.1 1.1 0 01-.8-.2.8.8 0 01-.3-.7.8.8 0 01.1-.4.8.8 0 01.4-.3l.7-.2.8-.2-.1-.4h-.5a.6.6 0 00-.3 0 .6.6 0 00-.2.3zm1 .6a5.8 5.8 0 01-.4.2h-.5l-.2.4s0 .2.2.2l.3.2c.1 0 .3 0 .4-.2a.5.5 0 00.2-.2v-.6zm-5.7 1.4v-4h2.5c.2 0 .4.2.6.4.2.2.3.5.2.8l-.1.6a1.1 1.1 0 01-.4.4 1.3 1.3 0 01-.4.2 5 5 0 01-1 0h-.5v1.6h-.9zm1-3.4v1.2h1.1a.6.6 0 00.3-.6.5.5 0 000-.4.6.6 0 00-.4-.1 4.4 4.4 0 00-.7 0h-.4zm1.6 78.9h-.5a.8.8 0 01.2-.6l.7-.2h.6c.1 0 .3 0 .3.2l.2.5v.7l.2.4.1.3h-.6a2.7 2.7 0 010-.2 1 1 0 01-.8.4.8.8 0 01-.6 0 .6.6 0 01-.2-.5.6.6 0 01.2-.6l.5-.2.6-.3-.2-.2h-.3a.5.5 0 00-.2 0 .4.4 0 00-.2.3zm1 .3a3.9 3.9 0 01-.4.2 1 1 0 00-.3.1l-.1.2a.3.3 0 00.1.2h.3a.6.6 0 00.3 0 .4.4 0 000-.3v-.3zm-1.9-.2l-.6.2a.4.4 0 00-.1-.3.4.4 0 00-.3 0 .5.5 0 00-.4.2v.5c0 .3 0 .4.2.5 0 .2.2.2.4.2a.4.4 0 00.3-.2v-.3h.7a1 1 0 01-.3.6c-.1.2-.4.3-.7.3a1 1 0 01-.8-.2 1.2 1.2 0 01-.5-.8c0-.3 0-.6.2-.9l.8-.4.7.1.4.5zm-3.4-.5v-.5l.5-.1.1.5-.6.1zm.4 2.5l-.3-2.2h.6l.3 2.1-.6.1zm-1.2.2l-.5-3 .6-.1.5 3h-.6zm-2.8.4l-.5-3 .6-.2.2 1.2a.9.9 0 01.6-.4 1 1 0 01.8.1l.4.8-.1 1a.9.9 0 01-.7.3.9.9 0 01-.4 0 1 1 0 01-.4-.2v.3h-.5zm.4-1.3c0 .3.1.4.2.5.2.2.3.2.5.2a.4.4 0 00.3-.2v-.5c0-.3 0-.5-.2-.6a.5.5 0 00-.4 0 .5.5 0 00-.3.1v.5zm-1.6 1.5v-.4a.8.8 0 01-.3.4 1 1 0 01-.4.1.9.9 0 01-.4 0 .6.6 0 01-.4-.3 1.2 1.2 0 01-.1-.4l-.2-1.4.6-.1.1 1 .2.6a.3.3 0 00.1.1.5.5 0 00.5 0 .4.4 0 00.1-.3v-.6l-.1-1h.6l.3 2.2h-.6zm-4.6-1.6l.6-.1v.3a.9.9 0 01.7-.5c.3 0 .5 0 .7.2.3.2.4.5.5.8 0 .4 0 .7-.2 1a.9.9 0 01-.6.3.8.8 0 01-.4 0 1.3 1.3 0 01-.4-.2l.2 1.1-.6.1-.5-3zm.8 1l.2.5a.5.5 0 00.4 0 .5.5 0 00.4-.1v-.6c0-.2 0-.4-.2-.5a.5.5 0 00-.4 0 .5.5 0 00-.3.1l-.1.5zm-1.7.6h.7a1 1 0 01-.3.6 1 1 0 01-.6.2c-.4.1-.8 0-1-.2a1 1 0 01-.3-.7c-.1-.4 0-.7.1-1a1 1 0 01.7-.3c.4-.1.7 0 .9.2.2.1.4.5.4.9l-1.5.2.2.4a.5.5 0 00.4.1.4.4 0 00.2-.1.5.5 0 00.1-.3zm0-.6l-.2-.3a.4.4 0 00-.4-.1.4.4 0 00-.3.2.5.5 0 000 .4l.9-.2zm-4.4 2l-.5-3 1.4-.3h.7c.2 0 .3.1.4.3.2 0 .2.2.3.4a.8.8 0 01-.2.6 1 1 0 01-.5.4l.3.2.5.4.5.6h-.8l-.6-.5a4.4 4.4 0 00-.4-.4.5.5 0 00-.2-.1 1.2 1.2 0 00-.3 0h-.2l.2 1.3h-.6zm.4-1.9h.4l.6-.1.2-.2v-.2a.4.4 0 00-.1-.3.4.4 0 00-.3 0h-1l.2.8zm47.7.4l-.5-.2a.8.8 0 01.4-.4l.7-.1.6.2.2.2v1.3l-.1.4v.3h-.5a3 3 0 010-.3l-.5.1a1 1 0 01-.3 0 .8.8 0 01-.6-.2.6.6 0 01-.1-.5.6.6 0 01.4-.5h.5a3.7 3.7 0 00.6-.1v-.3l-.3-.2a.5.5 0 00-.3 0 .4.4 0 00-.2.3zm.8.5h-.4a1 1 0 00-.3.1l-.2.2v.3h.6a.4.4 0 00.2-.2v-.4zm-2 .8h-.7l.2-1.2v-.4a.3.3 0 000-.2.3.3 0 00-.3-.1.5.5 0 00-.3 0 .5.5 0 00-.2.3l-.1.4-.2 1h-.6l.4-2.2h.5v.4a1 1 0 01.8-.3 1 1 0 01.4.1l.2.2a.6.6 0 010 .3v.4l-.2 1.3zm-4-2l-.5-.2c0-.2.2-.4.4-.4l.7-.1.6.2.2.3v1.2a1.3 1.3 0 000 .7h-.6v-.3l-.5.1a1 1 0 01-.4 0 .8.8 0 01-.5-.2.6.6 0 01-.1-.5.6.6 0 01.4-.5h.5l.6-.1v-.4h-.3a.5.5 0 00-.3 0 .4.4 0 00-.2.2zm.8.6h-.4a1 1 0 00-.4 0l-.1.2v.3h.3a.6.6 0 00.3 0c.1 0 .2 0 .2-.2v-.3zm-1.7-.8h-.6a.4.4 0 00-.1-.2.4.4 0 00-.3-.2.5.5 0 00-.4.1l-.2.5v.6l.4.2a.4.4 0 00.3 0l.2-.3.6.1a1 1 0 01-.4.6c-.2 0-.5.1-.8 0-.3 0-.6-.1-.7-.3a1.1 1.1 0 01-.2-1c0-.3.2-.5.4-.7.2-.2.5-.3.9-.2.3 0 .5.1.6.3.2 0 .3.3.3.5zm-3.1-1.4v-.5h.7l-.1.6h-.6zm-.4 2.5l.3-2.2.7.1-.4 2.2h-.6zm-.6 0l-.6-.1.2-1.1v-.5a.3.3 0 00-.1-.2.4.4 0 00-.2 0 .5.5 0 00-.3 0 .4.4 0 00-.2.2l-.2.5-.1 1-.6-.1.3-2.2h.6v.4a1 1 0 01.8-.3 1 1 0 01.3.1l.2.2a.6.6 0 01.1.3v.4l-.2 1.4zm-3-3v-.5h.7v.6h-.7zm-.4 2.5l.4-2.2h.6l-.3 2.3h-.7zm-3.6-2.7h.5v.3c.2-.2.5-.2.8-.2a.8.8 0 01.3.1l.3.3.3-.2a.9.9 0 01.4 0l.4.1a.6.6 0 01.2.3v.5l-.2 1.4h-.6l.2-1.3v-.4l-.2-.2a.4.4 0 00-.5.2l-.1.5-.2 1h-.6l.2-1.2v-.5a.3.3 0 000-.1.3.3 0 00-.2 0 .5.5 0 00-.3 0 .4.4 0 00-.2.1l-.1.5-.2 1h-.6l.4-2.2zm-3 .7c0-.2 0-.4.2-.6a1 1 0 01.5-.3l.6-.1c.4 0 .7.2.8.4l.3.9a1.1 1.1 0 01-.5.8 1.2 1.2 0 01-1 .2l-.5-.2a1 1 0 01-.4-.5 1.3 1.3 0 010-.6zm.6 0v.6l.5.2a.6.6 0 00.4 0l.2-.6v-.5a.5.5 0 00-.4-.2.6.6 0 00-.5 0l-.2.6zm-3.4-2.4l1.2.2.6.1.4.4.2.5a2.2 2.2 0 01-.2 1.4c0 .2-.2.4-.4.5a1 1 0 01-.5.2 2.1 2.1 0 01-.6 0l-1.2-.2.5-3zm.5.6l-.3 2 .5.1h.4a.6.6 0 00.3 0 .6.6 0 00.2-.3l.1-.6v-.5a.7.7 0 000-.3.6.6 0 00-.3-.2 3.4 3.4 0 00-.6-.1h-.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dz.svg
new file mode 100644
index 0000000..37df0c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/dz.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dz" viewBox="0 0 512 512">
+  <path fill="#fff" d="M256 0h256v512H256z"/>
+  <path fill="#006233" d="M0 0h256v512H0z"/>
+  <path fill="#d21034" d="M367 192a128 128 0 100 128 102.4 102.4 0 110-128m4.2 64L256 218.4l71.7 98.2V195.4L256 293.6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ec.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ec.svg
new file mode 100644
index 0000000..65fd0ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ec.svg
@@ -0,0 +1,138 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ec" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffe800" d="M0 0h512v512H0z"/>
+    <path fill="#00148e" d="M0 256h512v256H0z"/>
+    <path fill="#da0010" d="M0 384h512v128H0z"/>
+  </g>
+  <g fill-rule="evenodd">
+    <path d="M213.5 244.2l-54.7 57.7-1-1.2 54.7-57.8 1 1.3zm38 9.4L180 329l-1.2-1.2 71.5-75.4 1.3 1.2z"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(-.052 -.05 -.067 .068 210 348.9)"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(-.052 -.05 -.067 .068 191.6 319.4)"/>
+  </g>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M301.2 272.8s-17.7 336.6 53.1 336.6S460.6 574 460.6 574l-.8-185-158.6-116.2z" transform="matrix(.34 0 0 .486 64.7 -20.5)"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M344.5 304.2c0 17.7-7.9 269.8 27.5 269.8s88.6-17.7 88.6-17.7l-.8-167.3-115.3-84.8z" transform="matrix(.34 0 0 .486 64.7 -20.5)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M367.5 321.2c0 17.7 4.5 217.4 40 217.4h53.1l-.8-149.6-92.3-67.8z" transform="matrix(.34 0 0 .486 64.7 -20.5)"/>
+  <path fill-rule="evenodd" d="M165.7 112.2l54.6 57.7 1-1.2-54.7-57.7-1 1.2z"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M301.2 272.8S265.8 609.4 372 609.4c88.5 0 88.5-53.1 106.2-53.1l-17.7-124-159.4-159.5z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <g stroke="#000">
+    <path fill="none" stroke-width="2.3" d="M269.6 155.2c1.1 0 28.3-94 119-147.2" transform="matrix(.29 -.02 -.038 .265 112 135.9)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.105 -.166 .22 .105 142.8 218.9)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.137 -.076 .067 .132 144 218.4)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.133 .09 -.096 .25 146.6 97.4)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.132 -.023 -.023 .245 145.4 144.9)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.048 .19 -.13 .146 182.1 59)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.156 -.14 .14 .178 123.4 206.6)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.164 -.17 .19 .153 112.3 237.6)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.194 .072 -.145 .24 108.7 136.1)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.114 .158 -.242 .167 144.8 102.7)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.06 .066 -.102 .123 199.2 102.1)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.08 .004 -.06 .13 189.7 127.6)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(-.007 .11 -.103 .062 227 85.9)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.05 .087 -.19 .115 176.6 111.9)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.098 .168 -.252 .15 166.3 77.6)"/>
+    <path fill="none" stroke-width="2.4" d="M269.6 155.2c1.1 0 28.3-94 119-147.2" transform="matrix(.266 -.148 .107 .21 94.4 196.6)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.137 -.076 .067 .132 161.2 194.2)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.137 -.076 .067 .132 169.4 189.4)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.14 -.08 .05 .1 136 200.3)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.14 -.08 .05 .1 138.3 199.3)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.14 -.08 .05 .1 137 201.4)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.152 -.084 .074 .147 145 210.7)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.152 -.084 .074 .147 146.7 209)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.152 -.084 .074 .147 147.1 209.8)"/>
+  </g>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M336.6 308.3c0 17.7-35.4 212.6 53.2 265.7 35.4 17.7 88.5-17.7 88.5 0l-17.7-141.7-124-124z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M372 343.7c0 17.7-17.7 159.4 35.5 194.9 35.4 35.4 124 25.8 124 25.8l-70.9-132.1-88.6-88.6z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill-rule="evenodd" d="M148.8 144l71.5 75.4 1.3-1.2-71.6-75.4-1.2 1.2z"/>
+  <path fill="#cececc" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M460.6 184.3l17.7 35.4v17.7c-.8-1.3 0 17.7-17.7 17.7S443 219.7 443 219.7s-17.7 35.4-17.7 70.9 17.7 53.1 17.7 53.1-2.6-36.7 17.7-35.4c20.4 1.2 17.7 17.7 17.7 17.7v35.4h17.8V219.7l17.7-35.4-27.2-53.2-26 53.1z" transform="matrix(.102 -.107 .08 .082 75.2 169.7)"/>
+  <path fill="#cececc" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M557.8 95.7l-26.3 70.8 17.7 53.2-35.4-17.7 35.4 53.1v35.5H567V255l35.5-53.1-35.5 17.7 17.8-53.2-26.9-70.8z" transform="matrix(.08 -.12 .105 .07 96 163.4)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.303 0 0 .234 43 77.3)"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.285 .07 -.114 .22 67.4 53.5)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.387 0 0 .38 -8.6 87.3)"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.365 .112 -.145 .36 22.6 48.5)"/>
+  <g fill-rule="evenodd">
+    <path d="M289.6 244.2l54.7 57.7 1-1.2-54.7-57.8-1 1.3zm-38 9.4L323 329l1.2-1.2-71.5-75.4-1.3 1.2z"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(.052 -.05 .067 .068 293 348.9)"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(.052 -.05 .067 .068 311.5 319.4)"/>
+  </g>
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffdf00" stroke="#000" d="M301.2 272.8s-17.7 336.6 53.1 336.6S460.6 574 460.6 574l-.8-185-158.6-116.2z" transform="matrix(-.34 0 0 .486 438.5 -20.5)"/>
+    <path fill="#0000c4" stroke="#000" d="M344.5 304.2c0 17.7-7.9 269.8 27.5 269.8s88.6-17.7 88.6-17.7l-.8-167.3-115.3-84.8z" transform="matrix(-.34 0 0 .486 438.5 -20.5)"/>
+    <path fill="#e10000" stroke="#000" d="M367.5 321.2c0 17.7 4.5 217.4 40 217.4h53.1l-.8-149.6-92.3-67.8z" transform="matrix(-.34 0 0 .486 438.5 -20.5)"/>
+    <path d="M337.4 112.2L282.8 170l-1-1.2 54.7-57.7 1 1.2z"/>
+    <g fill="#005b00" stroke="#000">
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.124 -.056 .06 .266 243.6 183.9)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.148 -.04 .052 .294 230 162.4)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.175 .107 -.022 .3 233.8 77)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.186 .023 .012 .333 217.1 111.4)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.136 .126 -.028 .268 259 75.2)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.17 0 .026 .304 221.8 131.7)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.15 -.054 .05 .29 229 173.2)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.15 -.025 .038 .298 231 150.5)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.168 .115 -.038 .285 240.3 74.1)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.184 .04 -.004 .333 220.5 98.4)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.128 .128 -.043 .25 265.9 77.5)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.18 .01 .006 .31 218.7 121.3)"/>
+    </g>
+    <path fill="#ffdf00" stroke="#000" d="M301.2 272.8S265.8 609.4 372 609.4c88.5 0 88.5-53.1 106.2-53.1l-17.7-124-159.4-159.5z" transform="matrix(-.44 0 0 .465 485.8 17)"/>
+    <path fill="#0000c4" stroke="#000" d="M336.6 308.3c0 17.7-35.4 212.6 53.2 265.7 35.4 17.7 88.5-17.7 88.5 0l-17.7-141.7-124-124z" transform="matrix(-.44 0 0 .465 485.8 17)"/>
+    <path fill="#e10000" stroke="#000" d="M372 343.7c0 17.7-17.7 159.4 35.5 194.9 35.4 35.4 124 25.8 124 25.8l-70.9-132.1-88.6-88.6z" transform="matrix(-.44 0 0 .465 485.8 17)"/>
+    <path d="M354.3 144l-71.5 75.4-1.3-1.2 71.6-75.4 1.2 1.2z"/>
+    <path fill="#cececc" stroke="#000" d="M460.6 184.3l17.7 35.4v17.7c-.8-1.3 0 17.7-17.7 17.7S443 219.7 443 219.7s-17.7 35.4-17.7 70.9 17.7 53.1 17.7 53.1-2.6-36.7 17.7-35.4c20.4 1.2 17.7 17.7 17.7 17.7v35.4h17.8V219.7l17.7-35.4-27.2-53.2-26 53.1z" transform="matrix(-.102 -.107 -.08 .082 428 169.7)"/>
+    <path fill="#cececc" stroke="#000" d="M557.8 95.7l-26.3 70.8 17.7 53.2-35.4-17.7 35.4 53.1v35.5H567V255l35.5-53.1-35.5 17.7 17.8-53.2-26.9-70.8z" transform="matrix(-.08 -.12 -.105 .07 407 163.4)"/>
+    <path fill="#e10000" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.303 0 0 .234 460 77.3)"/>
+    <path fill="#0000c4" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.285 .07 .114 .22 435.7 53.5)"/>
+    <path fill="#e10000" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.387 0 0 .38 511.6 87.3)"/>
+    <path fill="#0000c4" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.365 .112 .145 .36 480.5 48.5)"/>
+  </g>
+  <g fill-rule="evenodd" stroke="#000" stroke-width="1pt">
+    <path fill="#e10000" d="M478.4 698a53.3 53.3 0 0053.1 0V556.3h-35.4c17.7 53.1 17.7 106.3-17.8 141.7z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+    <path fill="#0000c4" d="M513.8 609.5c0 88.5-42.5 108.2-42.5 126 17.7 0 29.5-8.3 42.5-19.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(.265 0 0 .524 103.2 -43.2)"/>
+    <path fill="#0000c4" d="M478.4 609.5c-.9 51.7-44.8 99.6-36.5 110.2 9.4 9.5 36.5-21.7 71.9-4 17.7-17.7 19.4-107.6 17.7-106.3h-53.1z" transform="matrix(.265 0 0 .524 103.2 -43.2)"/>
+    <path fill="#ffdf00" d="M513.8 609.5c0 88.5-40.7 94.4-40.7 118 17.7 0 40.6-12.9 40.7-11.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(.265 0 0 .35 95 63.1)"/>
+    <path fill="#ffdf00" d="M478.4 609.5c-.9 51.7-43.8 95.7-35.5 106.3 9.5 9.4 35.5-17.8 70.9 0 17.7-17.8 19.4-107.7 17.7-106.3h-53.1z" transform="matrix(.265 0 0 .35 95 63.1)"/>
+    <path fill="#e10000" d="M478.4 698a53.3 53.3 0 0053.1 0V556.3h-35.4c17.7 53.1 17.7 106.3-17.8 141.7z" transform="matrix(-.44 0 0 .465 485.8 17)"/>
+    <path fill="#0000c4" d="M513.8 609.5c0 88.5-42.5 108.2-42.5 126 17.7 0 29.5-8.3 42.5-19.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(-.265 0 0 .524 399.9 -43.2)"/>
+    <path fill="#0000c4" d="M478.4 609.5c-.9 51.7-44.8 99.6-36.5 110.2 9.4 9.5 36.5-21.7 71.9-4 17.7-17.7 19.4-107.6 17.7-106.3h-53.1z" transform="matrix(-.265 0 0 .524 399.9 -43.2)"/>
+    <path fill="#ffdf00" d="M513.8 609.5c0 88.5-40.7 94.4-40.7 118 17.7 0 40.6-12.9 40.7-11.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(-.265 0 0 .35 408.2 63.1)"/>
+    <path fill="#ffdf00" d="M478.4 609.5c-.9 51.7-43.8 95.7-35.5 106.3 9.5 9.4 35.5-17.8 70.9 0 17.7-17.8 19.4-107.7 17.7-106.3h-53.1z" transform="matrix(-.265 0 0 .35 408.2 63.1)"/>
+  </g>
+  <g fill-rule="evenodd" stroke="#000">
+    <path fill="#908f8a" stroke-width="4.5" d="M198.6 78l-89.7 35.4 89.7 35.4 44.8-17.7 22.4 17.7 22.4 35.4 22.5-35.4 22.4-17.7H1535V95.7H333l-22.4-17.8c0-17.7 4.7-35.4 22.5-35.4h89.6c0-17.7-44.8-53.1-134.5-53.1-89.6 0-134.5 35.4-134.5 53.1h89.7c17.7 0 22.4 17.7 22.4 35.5l-22.4 17.7-44.9-17.8z" transform="matrix(.09 0 0 .17 174.4 269.5)"/>
+    <path fill="#b74d00" stroke-width="1.8" d="M204.3 95.7H541v17.7H204.4zm0-17.8H541v17.8H204.4zm0-17.7H541V78H204.4zm0-17.7H541v17.7H204.4zm0-17.7H541v17.7H204.4zm0-17.8H541v17.8H204.4zm0-17.6H541V7H204.4z" transform="matrix(.21 0 0 .207 173.1 277.2)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.19 0 0 .207 139.8 262.5)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.19 0 0 -.207 139.8 313.1)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.21 0 0 .207 130.5 262.5)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.19 0 0 .207 173.2 262.5)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.19 0 0 -.207 173.2 313.1)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.21 0 0 .207 190 262.5)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.21 0 0 .207 164 262.5)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.21 0 0 .207 156.5 262.5)"/>
+  </g>
+  <g fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt">
+    <path d="M655.5 396.9c0 88-55.6 159.4-124 159.4s-124-71.4-124-159.4 55.5-159.5 124-159.5 124 71.4 124 159.4zm-17.7 0c0 78.2-47.6 141.7-106.3 141.7-58.7 0-106.3-63.5-106.3-141.7 0-78.3 47.6-141.8 106.3-141.8 58.7 0 106.3 63.5 106.3 141.8z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+    <path d="M579.8 250c-14.9-8.1-31.2-12.6-48.3-12.6s-33.4 4.5-48.3 12.5l7 16.4a82.8 82.8 0 0182.7 0l6.9-16.4z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+    <path d="M579.8 250c-14.9-8.1-31.2-12.6-48.3-12.6s-33.4 4.5-48.3 12.5l7 16.4a82.8 82.8 0 0182.7 0l6.9-16.4z" transform="matrix(.44 0 0 -.465 17.4 386.4)"/>
+  </g>
+  <path fill="#a7cfff" fill-rule="evenodd" d="M298 201.5c0 36.4-21 65.9-46.8 65.9-25.9 0-46.8-29.5-46.8-65.9 0-36.4 21-65.9 46.8-65.9 25.8 0 46.7 29.5 46.7 65.9z"/>
+  <path fill="#afff7b" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M637.8 396.9c1.1 26.6-4.6 39.6-11.9 67.3-1.9 3-11-6.5-16.4-11.2s-7.8 4.2-14.6-3c-6.7-7.4-11 2-16-4.2s-51.3-7-51.3-7.6c4.6-2.2 28.2.2 24.4-11.1-4.3-11.8-31-.4-34.6-15.4-2.5-15-53.6-15.6-57.3-19.2 1.5 5.6 39.8 8 38.9 22.5-.9 6-37.7 7.7-41.3 12.7-3 6.3 29-1.7 30.1 6 0 3.2-4.7 0-21.3 5-8.4 2.5 15.4 10.3 6.4 14.6-9 4.3-28.3 6.2-27.5 8 3 9 44.7 19.6 40.6 21.1-14.8 6.6-22.6 10.9-29.7 14.7a167.9 167.9 0 01-31.1-100.2c31.7-11.4 25-13.8 83.6-13.8s78 2.3 129 13.8z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M637.8 396.9c-8 0-16.4 3.4-25 3.4-8.7 0-17.5-3.5-26.5-3.5s-19.3 4.6-28.5 4.6c-9.3 0-17.4-4.5-26.7-4.5s-18.6 3.4-27.8 3.4-18.3-3.5-27.2-3.5-17.7 3.5-26.2 3.5-16.8-3.5-24.7-3.5c0-19.5 3-38.1 8.4-55.1 27 2 11-15.7 27-15.7a33 33 0 0125.3 9.8c2.4 0 14.4-11.4 27.9-9.8 13.4 1.6 8.5 27.3 26.4 28.6 9 6.8 14.3 11.1 26.7 13.9 17.7 1.6 68.4-2.5 68.7-.2a188.2 188.2 0 012.2 28.6z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M549.9 474c0-5.7 13.5-9.5 13.5-18.6s-12-9.3-12.4-17.8c-.2-3.5 10.3-7 14.9-7.4s8.5 7.4 8.5 9.1-4.7-4.2-8.6-4.3-12.3.6-12.3 2.3c0 3.4 14.8 7.6 13.7 19-1.1 11.2-12.7 14.6-12.7 18s5 12.8 5 12.8-9.7-7.5-9.7-13.2z" transform="matrix(.155 0 0 .363 174 69.6)"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M549.9 474c0-5.7 13.5-9.5 13.5-18.6s-12-9.3-12.4-17.8c-1-4 11.8-6.6 16.4-6.9s10 8 10 9.6-5.4-5.2-9.3-5.3-14.6.6-14.6 2.3c0 3.4 14.8 7.6 13.7 19-1.1 11.2-12.7 14.6-12.7 18s5 12.8 5 12.8-9.7-7.5-9.7-13.2z" transform="matrix(-.155 0 0 .363 346.5 69.3)"/>
+  <path fill-rule="evenodd" d="M261.3 224.5c0 1-.5 1.9-1 1.9-.7 0-1.2-.8-1.2-1.9s.5-1.8 1.1-1.8c.6 0 1.1.8 1.1 1.8zm14.1 5.5h.4v14.7h-.4zm3.2-1.2h.4v14.8h-.4z"/>
+  <path fill-rule="evenodd" d="M276.1 237v-.5l3 .6v.3z"/>
+  <path fill="#b74d00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M497.3 478s26 11.4 31.7 18.2c5.6 6.8 3.4 6.8 3.4 6.8l57.7 2.3c0-3.4 10.2-3.4 12.5-11.4 2.3-7.9 2.3-10.2 2.3-10.2l-18.1 5.7 1-10.2H572l-2.3 10.2-34-1.1L538 461l-6.8 1.1-1 26c-1.2 0-31.8-7.9-33-10.1z" transform="matrix(.44 0 0 .465 15.3 17.5)"/>
+  <path fill="#fede00" fill-rule="evenodd" stroke="#fede00" stroke-width="1pt" d="M440.5 316.3s37.7-11.2 92.1-10.4 92.1 12.8 91.3 12.8-10.4-18.4-10.4-18.4-38.4-10.5-81.7-11.3c-43.2-.8-80.9 8-80 8.8l-11.3 18.5z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill="#38a9f9" fill-rule="evenodd" d="M241 152.8l10.3-.2v6l-10.2.2zm-23.6 3.3l-3.6 5.9 12.2-1.5-1-6-7.6 1.6zm10.4-2.3l10.2-.9.5 6-10.2.9zm36.9-.6l-10.2-.7-.4 6 10.2.7zm22 3.8l3.7 7.3-11-2.8 1.2-5.8 6.1 1.3zm-8.9-2.2l-10.1-1.3-.7 5.9 10.1 1.3z"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M532.6 323.5l-2.5-13.5-7.6 11.5 2.8-13.5-11.3 7.7 7.6-11.3-13.4 2.8 11.5-7.6-13.5-2.5 13.5-2.6-11.5-7.6 13.4 2.8-7.7-11.3 11.4 7.7-2.8-13.5 7.6 11.5 2.5-13.5 2.6 13.5 7.5-11.5-2.7 13.5 11.3-7.7-7.7 11.3 13.5-2.8-11.5 7.6 13.5 2.6-13.5 2.5 11.5 7.6-13.5-2.8 7.7 11.3L540 308l2.8 13.5-7.6-11.5z" transform="matrix(.44 0 0 .465 17.3 17)"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M547 293.9c0 9.3-6.6 16.8-14.8 16.8s-14.8-7.5-14.8-16.8S524 277 532.2 277s14.8 7.6 14.8 17z" transform="matrix(.43 0 0 .388 23.8 41)"/>
+  <path fill-rule="evenodd" d="M252 153.4c0 .4-.9.7-2 .7s-2.2-.3-2.2-.7 1-.8 2.1-.8 2.2.4 2.2.8zm4.7 0c0 .4-.8.7-1.6.7s-1.6-.3-1.6-.7c0-.4.7-.8 1.6-.8s1.5.4 1.5.8z"/>
+  <path fill="none" stroke="#000" stroke-width="1pt" d="M529.4 297.9l.8.8c-1.9-2-1-1.2 1.6 3.2 2.4-.5 3.1-1.4 4.8-2.4" transform="matrix(.423 -.132 .125 .446 -10.1 93)"/>
+  <path fill="none" stroke="#000" stroke-width="1pt" d="M527.8 304.3l.8.8c-1.9-2-1-1 3.2 1.6 4 .5 8.1-1.2 10.5-4" transform="matrix(.44 0 0 .465 16.6 17)"/>
+  <path fill="#b7e1ff" fill-rule="evenodd" d="M223.5 170.7s.7 6-4 13.5c-4.5 7.4-3.8 4.8-3.8 4.8s2.1 4 1.8 4-3.6-3.6-3.6-3.6l-3.8 4s3.5-6.3 3.1-6.3-1-2.2-1-2.2l2.8-1.1s4.2-7.8 4.2-7.5-12.7 8.6-12.7 8.6l17-14.2zm2.8 2.3c-.4 0 1.7 6 3.5 9a15 15 0 011.8 6.6l6 3-7.8-11.5 5 1.8-8.5-9zm0 15.6s4.2 4.5 4.6 6 .3 4.8.3 4.8l-1.7-3.7-2.5 3.4s1.8-5.3 1.4-5.6-2.8 1.8-2.8 1.8l1-3.3c0-.3 0-2.3-.3-3.4zM205 199.1c1.4-1.2 4.3-2 4.3-2s-1.8 3-2.2 3-1.4 0-2-1zm48.7-16.4s9.1 5.6 9.1 6-6-2.7-6-2.7l-3.1-3.3zM237.2 171c.7.4 13.4 10.8 13 10.8s-5.6-3-5.6-2.6v2.6l-2.8-6-.7 2.3-3.9-7zm3.2 16.8l3.5 7 3.5-.7s-6.7-6.3-7-6.3zm11-4.5l.3 6.7s2 1.9 2 1.5-2-7.8-2.4-8.2z"/>
+  <path fill="#984000" fill-rule="evenodd" d="M147.8 92.2s15.9-8.7 34-15.3a229 229 0 0140.8-10.8c5.4 0 14.5 13.4 16 13.4 1.6 0 7.7-3.7 15.3-3.7s12.2 6 13.8 6h13.7c1.5 0-4.6-15 0-14.2 2.3.4 21.8 3.4 39.9 9.2 18.1 6 43.8 16.3 43.8 16.3s-42 5.6-53.2 4c-1.5.7 0 9.8-2.2 5.8-3.5-.8-16.4-2.8-18.7-2.8s-6.5 2.6-12.6 4a373.6 373.6 0 00-13.8 3.8l10 15.6-12.3 6s-7.6-17.9-10.7-17.9-4.5 12.7-8.4 12c-3.8-.8-5.3-12-8.3-15-3.1-3-19.2-4-25.3-5.5-6.1-1.5-16-2.7-21.3-4.2-5.3-1.5-10.7 3.8-13 3.8-2.3 0 3-4.5.8-5.3s-3.8 2.3-5.4 2.3c-1.5 0-17.5-3-19-3.8-1.6-.7 3.8-3.7 2.3-3.7h-6.1z"/>
+  <path fill="gray" fill-rule="evenodd" stroke="#772600" stroke-width="3.7" d="M463-65c0 21.2-20.6 38.4-45.9 38.4S371.3-43.8 371.3-65s20.5-38.3 45.8-38.3S463-86.1 463-65z" transform="matrix(.165 0 0 .2 184.8 97.5)"/>
+  <path fill="#984000" fill-rule="evenodd" stroke="#772600" stroke-width="5.3" d="M284.7-60c6.7-6.6 15-16.6 36.7-16.6 5-1.7 5-11.7 16.6-11.7 11.7 0 8.3 10 16.7 13.4 8.3 3.3 76.6-3.4 76.6-3.4s6.6 5 6.6 11.7-5 11.6-6.6 11.6-68.3-5-73.3-3.3c-5 1.7-8.3 3.3-20 3.3-11.6 0-15-11.6-23.3-11.6s-16.6-1.7-30 6.7z" transform="matrix(.206 0 0 .24 165 100.6)"/>
+  <path fill="none" stroke="#772600" stroke-width="3.5" d="M487.9-76.6h26.6c9.6.1 12.9 3 21.7 3.3h23.3c8.5-.3 13-2.3 21.6-3.3 14.5-.2 9.6-1.3 6.7-10-2.6-6.5-3-9.6-6.7-13.3-1.4-8-4.6-10.8-5-20-1.5-7-4.3-11.7-1.6-20 3.8 5.7 5.3 8 15 8.4 10 0 13.9-.3 20 3.3 4.6 4.9 10.8 3.3 20 3.3 7.6 1.4 8.9 5.3 14.9 8.3 7.1 4 11.7 5 21.6 5 8 1.5 15 2.6 20 5 4.3 5.1 11 6.4 20 6.7 5 0 9-.5 13.3-1.7 7.7.4 15.5 0 25 0 6.2 7.2 7.6 9.9 18.3 10 7.4 5.2 13.6 6 20 8.3h25c9 .7 11.8 4.4 20 6.7a200.9 200.9 0 0021.6 8.3 108 108 0 0021.7 1.7c6.1 3.2 13.6 3.4 18.3 6.6 6.9 1.5 16.3 3.3 21.6 5 8.8 1.2 12.2 4 20 5 6.7 2-2.2 3.6-6.7 5-9.8-.3-10.5-4-20-5-5-2.9-12.6-2.5-20-5h-1.6c6.6 4 13 6.5 10 13.4-8.5 0-15.4-1.1-23.3-1.7-8.4-1.6-12.2-3.3-21.6-3.3 9.4-2.3 11.8.2 18.3 3.3 2.4 8-2.8 5-11.7 5-7.6-2.7-12.2-6-21.6-6.7h-20c9.9.4 12 4.1 18.3 8.4.5 2.6-.1 2.4-5 3.3-5.2-4.5-11.9-6-20-8.3-7.9-.3-16.2-1-23.3-3.4-4.9-.3-4.1-6.1 6.7 3.4 6.5 3.8 8.8 7 8.3 10-8.6-2.2-12.8-5.6-18.3-8.4a61.3 61.3 0 00-23.3-3.3c-8.6-2.3.9-3.6 6.6 5 12.4 8.8-1.6 5-6.6 3.3-7.5-2.1-15.3-5.2-21.7-6.6-5-1.5-9.4-2.9-15-3.4 8.7.8 11.6 3.9 15 10 8.8 6-.4 3.1-8.3 1.7-5-4.4-11.5-6.7-15-11.7-8.3-4.1-8.6-9-3.3 1.7 1.3 3.4 1 10.8 1.6 11.7-6.1-6.7-4.8-8.4-11.6-8.4-4.7-3.2-11.5-5.7-15-10-6.4-.6-6.8-2.9-13.3-5 5.3 6.3 12.4 12.5 16.6 18.4 7.6 4.2 9.7 8 15 11.6 2.1 3.7 8 6.7 1.7 1.7-7.2-7-12.5-8.7-23.3-13.3-6.2-5-8.4-7-15-11.7-9-2.9-5.5-4.5 0 5 6.3 5.8 11.1 12.2 16.6 16.7a67.8 67.8 0 0015 13.3c1.5 2.2 6 2.6 0 3.3-5-4.6-12.4-7.5-18.3-11.7-8.3-2.3-12.2-6.6-18.3-11.6-4-5.9-10.4-10.4-15-15-9.6-3.8 1.9 3.6 5 8.3 2.1 6.1 4.8 11 6.6 16.7 2.8 5.5-8.4-1.3-11.6-3.3a57 57 0 00-21.7-8.4 298 298 0 00-20-3.3c-7.5-2 4.1 4.8 8.4 11.7 8.4 7.9-8.3 1.4-13.3 0a125 125 0 00-25-1.7c-10.7.6-3 2 0 6.6 3.3 2.6 5.6 8 5 10-7-1-13-3-21.7-3.3-7 2.3-15.3 1.7-23.3 1.7-.3 4.2 1.5.6 5 5 5.8 2.3 9.6 5.1 8.4 8.3h-48.3c-5.3 1.4 1.1.7 5 6.7-2.2 5.4-5 3.3-11.7 3.3-4.5-1.8-13.6-2.6-18.3-5-4.7 0-4.3-1.2-8.3-1.7 14 10 7 7.5 15 15 1.3.5 4.5 1.7 1.6 1.7M371.3 73.3c-1 0-3.2-5.4-6.6-10-2.4-6-5.4-2.6-8.4-11.7.4-9.4.7-11 0-20-6.8-4.8-9.7-6.2-15-15-8.4-7 1.3-19 2.9-27.8-7.4-1.6-11 11.5-22.3 16.2-8.2 5.5-1-11.4-5-21.2-2.7-13.9-10.8 7-13.8 12.9-5.5 3.7-7.2 8.5-15 1.6 0-5.1 4.9-19.5 2.8-22.3-7.8 3.9-18 15.5-26.1 17.3-8.2-1.7 1.7-14.8 1.7-24.5-3-1-14.7 25.8-19.5 26s-2.7-26-5-25.4c-3.5 5-10.6 15.4-15.5 19-9.5-1.3 1.4-17.5 2.8-23.5 1.6-7.2-8.9 13.8-14.5 15.1-4.1 3.6-12.2 6-15 6.7 3.2-6.2 19-18.7 18-22.3-9.3.3-23.4 12.5-31.3 14-5.2 0-12.4 1.7-13.3 1.6.4-8 19.4-14.6 22.4-19.5-9.3 1.5-27.2 9.7-32.4 16.2-6.2 1.3-14 3-20 0 .9-7.5 14.9-22 18-26.8-8.5 3.7-12.7 6.6-21.7 8.3-1.7 1.7-6.5 5.3-5 1.7 2.7-7 6.7-10 10-15-7.5 1.4-10.3 5.7-18.3 10-5.1.2-19.7 14.9-24.6 15.1a69.1 69.1 0 01-28.3 13.3c-7.6 1.4-11.3 3-15 6.7 3.8-6.7 9.6-13 15-16.6a29.8 29.8 0 0115-13.4c1.9-2.3 7.1-2.9 1.6-3.3-4.7 4.2-12.7 9-16.6 11.7-5.1 3.2-11 6.4-13.4 5 2.7-7.2 7.5-9 11.7-15 8.8-5.6 0-2-6.7 0-4.3 3.8-12 6.7-18.3 10-7 1.8-11.7 6-20 8.3 0 2.4 2.4-4.3 3.4-6.7 6.8-7.4 8.6-9.5 16.6-11.6 2-2.9 4.4-1.7-1.6-1.7-4.6 4-10.8 6.2-16.7 10-5.9 1.3-13.6 1.7-21.6 1.7-10.4 1.2-9.5 2 0-3.4 5.3-5 9.7-3.7 10-10-6.3 4.6-14 8-21.7 11.7-6.4.2-8.1 1.7-15 1.7 3.3-3.4 5.3-7.7 10-10 7-7.7-4.4-1.5-6.7 0h-25c-4.4 5.6-.2 0 3.4-3.4 4.3-2.2 8.8-5.1 8.3-6.6-5 4.3-10.7 6.3-15 10-4.6 1.4-10 2-10 3.3 3.7-5.3 9.6-8.6 13.4-13.3 5.6-1.2 10.4-3 11.6-5h-23.3 16.6c8.5 0 15.7-.8 23.4-1.7 13.2-2.2-1.2-3.3-8.4-3.3-1.3-2.6 4.2-4 10-5C-6.7-69-.4-71.1 5-73.3a45.2 45.2 0 0013.3-6.6c-5 .2-5 1.4-10 1.6 7.5-.5 12.8-1.6 21.7-1.6a239 239 0 0021.6-8.3c3-3.6 4.2-3.4-3.3-3.4 6.7-2.1 16.2-3.2 21.6-5a94 94 0 0020-6.6c4.9-3.3 7.7-7.2 13.3-10 6.5 4.4 6.6 5 18.3 5 9.4-.1 15.2-2.4 20-6.7 7.2-2 8.5-5.4 16.7-6.6a134 134 0 0023.3 1.6c8-2.1 15.7-6 21.6-10 5.1-2.5 11.2-6.1 16.7-8.3 6 3.1 10.8 5.6 18.3 6.7 7.7-1.2 11.8-5 18.3-6.7a28 28 0 0115-8.3c9.7-4.8 9 1.5 13.3 6.6 5 5.2 11.4 2.7 18.3 5 3.9 6 6.7 10 11.7 13.3 3.9 4.8 8.5 6 16.7 6.7 3 4 .6 6.8 6.6 8.3 2.4 2.6 6.5 3.6 10 5" transform="matrix(.206 0 0 .24 165 103.8)"/>
+  <path fill="none" stroke="#782600" stroke-width="3.1" d="M468.7 30.8v.8c0-2.3 0-1 1.7 3.4.6 3.6-.8 3.2-2.5 5.8-.3 3.7-.8 6.4-.8 10.8-.6 3.6-2.6 7-4.2 10-1.6 3.1-8.5 4.9-8.3 9.2-4 1.1-4.1-1.5-4.2-5.9-2.4-2.7-3.2-6.4-5-10-1-3.4-3.4-6-5-10-2.4-3.7-4.5-4.8-6.6-9.1-.9-2-.7-4.6-2.5-5.8-2.7-3.5-4.5-4-9.2-4.2-3.6.8-5 2.4-8.3 3.3-2.6.9-7.6.6-10.8 1.7-.8 1.3 1.6 2 2.5 5-2.2 1.8-3 4.9-4.2 7.5-2 2.5-3.3 3.7-4.2 7.5 1.4 2.3.2 5.4-1.6 7.5-.6 3.8-2.5 5.9-3.4 9.1-2.6 1.9-3.6 3.6-5.8 6.7-1.9 2.7-3.6 2.5-8.3 2.5-3.7-1-4.2-3-7.5-4.2-.3-1-.6-1.3-1.7-1.6" transform="matrix(.206 0 0 .24 165 103.8)"/>
+  <path fill="#812e00" fill-rule="evenodd" d="M242.2 119.4s-.3 3.7-2.7 6.2-7.4 5.4-7.4 5.4 6.7-3.1 7.4-2.5c.7.7-4.3 6.3-4.3 6.3s6.5-5.9 7.4-5.9 2.7 5.7 3.4 5.6c.7-.1-1.5-7.2-1.2-8.3.3-1.1 0-7 0-7l-2.6.2zm15.5-.5s-.3 4-2.8 6.6-7.4 5.8-7.4 5.8 6.8-3.4 7.4-2.6c.7.7-4.3 6.6-4.3 6.6s6.6-6.2 7.4-6.2 2.8 6 3.5 6c.7-.2-1.6-7.8-1.2-9 .3-1.1 0-7.5 0-7.5l-2.6.3zM236 82.6c0 .8-.7 1.4-1.6 1.4s-1.6-.6-1.6-1.4.7-1.3 1.6-1.3 1.6.6 1.6 1.3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ee.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ee.svg
new file mode 100644
index 0000000..fbc9e33
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ee.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ee" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt" transform="scale(.482 .72)">
+    <rect width="1063" height="708.7" rx="0" ry="0"/>
+    <rect width="1063" height="236.2" y="475.6" fill="#fff" rx="0" ry="0"/>
+    <path fill="#1291ff" d="M0 0h1063v236.2H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eg.svg
new file mode 100644
index 0000000..2965b6a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eg.svg
@@ -0,0 +1,38 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-eg" viewBox="0 0 512 512">
+  <path d="M0 341.3h512V512H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path fill="#ce1126" d="M0 0h512v170.7H0z"/>
+  <g fill="#fff" stroke="#c09300" transform="translate(-128) scale(.85333)">
+    <path stroke-linejoin="round" stroke-width="1.3" d="M450.8 302.4l68.5 63.6-4.9-115.5c-.7-17.5-15.9-13.5-27-7.2-11.1 7.2-24 7.2-37.4 2.5-13.5 4.7-26.3 4.7-37.4-2.5-11-6.3-26.3-10.3-27 7.2L380.7 366l70.1-63.6z"/>
+    <path id="a" fill="#c09300" stroke="none" d="M393.5 246.5l-4.8 112.3-8 7.2 4.9-115.5a24 24 0 017.9-4zm9.6 8l-4 94-8 8.2 4.8-108.5c1.6 1.6 6.3 5.5 7.2 6.3zm8.7 7.2l-3.1 78.4-6.5 6.3 4-89.4c1.6 1.5 4.8 3.8 5.6 4.7zm9.5 4l-3.1 66.8-6.3 5.1 3.1-74.3c1.6.7 4.7 2.4 6.3 2.4zm8.8 0l-2.3 55.7-6.5 6.3 2.5-61.3c1.5 0 5.6 0 6.3-.7z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 900 0)" xlink:href="#a"/>
+    <path fill="#c09300" stroke-width="1.1" d="M453.2 315l9.6 43.8-3.2 3.2-3.3-2.5-5.4-39 2.3 39-3.2 4-3.1-4 2.3-39-5.5 39-3.3 2.5-3.2-3.2 9.6-43.7h6.4z"/>
+    <g id="b" fill="none" stroke-linejoin="round" stroke-width="1.3">
+      <path fill="#fff" stroke-width="1.2" d="M428.5 295.8l-19.1 67.7 26.3 4 11.1-50.9-18.3-20.8z"/>
+      <path d="M422.2 319l2.3 5.5 12.4-11.8"/>
+      <path d="M430.8 305l2.6 24.3 7.9-10.4m-3.2 4l4.3 15m1.7-5.5l-8.7 13.2m2.7 13.2l-2.8-13.2-2.4-13.4-5.9 7.9-2.5-9.1-8.2 8.4 4.1 15.2 5.8-9.4 3.1 9.6 6-9.2"/>
+      <path d="M415 362l5.3-7.5 3.4 11.5 4.8-8 3.1 9.6"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 900 0)" xlink:href="#b"/>
+    <g stroke-linecap="round" stroke-linejoin="round" stroke-width="1.3">
+      <path stroke-width="2.4" d="M450 393.8c20 0 39-1.6 50.2-4.7 4.7-.9 4.7-3.3 4.7-6.5 4.8-1.6 2.4-7.2 5.7-7.2-3.4 1-4-5.5-8-4.7 0-5.6-5.7-6.3-10.4-4.7-9.5 3.1-26.3 3.9-42.2 3.9-16-.8-32.6-.8-42.2-4-4.7-1.5-10.3-.8-10.3 4.8-4-.8-4.7 5.6-8 4.7 3.3 0 .8 5.7 5.6 7.2 0 3.2 0 5.6 4.8 6.5 11 3.1 30.2 4.7 50.1 4.7z"/>
+      <path d="M422.9 363.5c6.4.9 13.6 1.6 19.2.9 3.2 0 5.5 5.5-.9 6.3-5.5.7-14.3 0-19-.8a231 231 0 01-18.4-4c-5.6-2.4-1.6-7 1.6-6.4a105.3 105.3 0 0017.5 4zm54.2 0c-6.4.9-13.6 1.6-19 .9-3.4 0-5.7 5.5.7 6.3 5.6.7 14.3 0 19-.8 4-.8 12.8-2.3 18.4-4 5.6-2.4 1.6-7-1.6-6.4a105.2 105.2 0 01-17.5 4z"/>
+      <path d="M403 360.4c-4.8-.9-7 4.7-5.5 7.9.7-1.6 4-1.6 4.7-3.2.9-2.4-.7-2.4.9-4.7zm19.2 14.7c0-3.2 3.1-2.8 3.1-6 0-1.5-.8-4-2.4-4a3.4 3.4 0 00-3.2 3.2c-.7 3.1 2.5 3.6 2.5 6.8zm22.7-9.1c4.7 0 4.2 6.3 2 9.5 0-2.3-4-3.2-4-4.8 0-2.4 3.6-2.4 2-4.7zm52-5.6c4.9-.9 7.2 4.7 5.6 7.9-.7-1.6-4-1.6-4.7-3.2-.9-2.4.7-2.4-.9-4.7zM478 375c0-3.2-3.2-2.8-3.2-6 0-1.5.8-4 2.4-4a3.4 3.4 0 013.2 3.2c.7 3.1-2.5 3.6-2.5 6.8zm-23-9c-4.7 0-4.2 6.3-2 9.5 0-2.3 4-3.2 4-4.8 0-2.4-3.6-2.4-2-4.7z"/>
+      <path stroke-width=".9" d="M404.7 362c1.6 0 4 .7 4.7 1.6l-4.7-1.6zm7.9 2.4c.8 0 4 .7 5.5 1.6l-5.5-1.6zm28.6 3.2c-1.5 0-4.7 0-5.5.7l5.5-.8zm-8.7 0c-.9-.9-4-.9-5.6 0h5.6zm62.8-5.6a8 8 0 00-4.7 1.6l4.7-1.6zm-7.8 2.4c-1 0-4 .7-5.6 1.6l5.6-1.6zm-28.7 3.2c1.5 0 4.7 0 5.6.7l-5.6-.8zm8.7 0c.9-.9 4-.9 5.6 0h-5.6z"/>
+      <g fill="#c09300" stroke="none">
+        <path d="M403.3 374.6c-.5-.1-.8-.6-.6-1 .1-.7.6-1 1-.8.4 0 .9.6.9.8l-.4.7-.2.1c0 .2-.4.2-.7.2zm55 3.9c-.2 0-.6-.5-.6-.7 0-.4.6-1 1-1l.8.4c.3.3.3.9-.1 1.2-.2.2-.8.2-1.1 0zm.3 2.5c-.4-.2-.5-.4-.6-.8 0-.5 0-.6.5-.9l.4-.2.4.2c.4.2.7.4.7.8 0 .3-.3.6-.7.8-.3.2-.4.2-.7 0z"/>
+        <path d="M407.8 370c-.4 0-.9.4-1.2.6-.6.1-1.4.5-2 0-.6-.1-1.4 0-1.5.8.1.7 1 1 1.6.6.4-.5 1.5-.9 1.7 0-.5.8-.4 1.7-.8 2.4 0 .5-.3.9-.5 1.3-.5 0-1 0-1.4.3a2 2 0 00-1.6.8c-.4.6-.8 1.2-.9 2 .1.6 1 .8 1.6.9l2 .6 3.2.9c1.6.5 3.2.7 4.8 1.1l.5.1c.7.2 1-.5 1-1l1-3.6c.2-.5.5-1.5-.4-1.3-.5.3-1 .8-1.6.8-.9 0-.4 1 0 1.3 0 .6-.2 1.3-.5 1.8-.6.3-1.2 0-1.8-.2-.5 0-1.7-.3-1.2-1l.5-1.8c.3-.6.3-1.3.5-2-.4-.7-1 .3-1.5.4-.4.2-1.6.3-1 1 .6.4.2 1.1 0 1.7 0 .7-.8 1-1.4.7-.6 0-1.5-.5-1-1.1l.5-1.8.7-2c0-.7.3-1.2.6-1.8 0-.7.5-1.3.5-2 0-.3-.2-.4-.4-.4zm-3.7 7.3a.3.3 0 01.3 0c.2.2.2.4 0 .6l-.3.2c-.5 0-.6-.1-.6-.3 0-.1 0-.2.3-.3a1.4 1.4 0 01.4-.2zm-1 5c-.5-.4-.4-.7.3-1.3.4-.2.5-.2.9.1.6.5.6.8 0 1.3-.2.2-.3.2-.5.2-.3 0-.4 0-.7-.2zm3 1a.9.9 0 01-.6-1.1c.2-.4.3-.5.9-.5.7 0 .8.1.9.7 0 .4 0 .5-.3.7a1 1 0 01-.8.2zm89.2 0c-.2-.1-.3-.2-.3-.5 0-.4.2-.7.8-.9.6-.3 1-.3 1.2.2.3.6.3.8-.1 1.2-.2.3-.3.3-.8.3s-.6 0-.8-.2zm-85 1.2c-.4 0-.6-.4-.6-.8 0-.3 0-.4.2-.6l.6-.2.6.1c.5.4.6.8.3 1.2-.3.4-.6.4-1.2.3zm21.8 1l-.2-.3c0-.6 0-1.1.2-1.7.1-.5 0-1 .2-1.5l.4-2.8c0-.5 0-1 .2-1.4.1-.8 0-1.5.2-2.2 0-.3.3-1 .6-.6.4.6.9 1 1.4 1.5.4.3 0 .7-.3.8-.4.1-.5.6-.5 1l-.2 1.2c0 .7 0 1.3-.2 2l-.1 1.8-.2 1.2c0 .4 0 .9-.4 1.1-.3.2-.8.2-1-.1zm29.7-9.8l-1.3 1.2c-.6.5.5.7.6 1.1.2.6.2 1.2.2 1.8.2.6.3 1.1.2 1.7 0 .7-.8.5-1.2.9-.5.2-.7.7-1 1a4.2 4.2 0 00-.4 1.6c0 .5-.3 1 0 1.4l.1.2h.5l1.5-.1c1.2-.2 2.5-.2 3.7-.3l2.2-.2c.6.1.9-.5.9-1-.4-.7-.1-1.4-.4-2-.2-.8-.1-1.5-.2-2.2 0-.6-.7-.8-1-.4-.4.4-1 .5-1.2.9-.3.6.6.6.8 1l.1 1.5c.1.6-.5.6-1 .7-.5.2-1.2.3-1.5-.3-.2-.5-.2-1-.2-1.5 0-1-.3-1.8-.3-2.7 0-1-.3-2.1-.3-3.2 0-.5-.1-1.2-.8-1.1zm-.6 8.2h.3v.8l-.3.1a3.3 3.3 0 01-.4.1 2.5 2.5 0 01-.2 0c-.2-.2-.2-.5.1-.8l.5-.2zm-30-9.2c-.3 0-.8.7-1.2.6-.9.1-.8 1-.1 1.3v.8c.1.8-.4 1.5-.3 2.3 0 .8-.3 1.7-.3 2.6-.3.9-.3 1.8-.4 2.7-.1.8-.7.5-1.2.3v-1c.1-.9-.5-1.1-1.2-1.2-.7 0-1-.5-.8-1.1.3-.4 1-.3 1.5-.3 1 .2.9-1.1.4-1.6-.4-.6-1.2-1-1.4-1.6 0-.8-.5-1.7-1.2-2.1-1.1-.1-2 .8-2.3 1.8-.5 0-1 .2-1.4.4-.7.2-1.7 1.4-.7 1.9.5.1 2.2.5 1.4 1.2-.4.8-1.2.8-1.9.6-.7 0-1.5-.4-1.5-1.2-.1-.8-.1-1.6-.4-2.3-.2-.8-1.1-.6-1.2.2-.7.5-.6 1.4-.1 2 .3.7 0 1.6-.3 2.2-.2 1-1.2 1-1.9 1.2-.3.2-1.6 0-1.1.7a4 4 0 002.4.3c.8 0 1.5-.7 2-1.4.5-.5 1.4-.2 2.2-.2.7 0 1.5.5 2.3.1.2-.5 1.2-1.5 1.5-.5 0 .9.7 1.3 1.5 1.2.9 0 .5.6.5 1.2 0 .9.7 1.4 1.5 1.8h.8c.7-.3 1.5-.6 1.8-1.4.3-.7.3-1.5.5-2.2.2-1.1.4-2.3.4-3.4.3-1 .2-2.1.4-3.2l.3-2.3c0-.5-.2-.5-.5-.4zm-6.7 4.1c.1 0 .2.2.2.5 0 .4.2.7.5.8v.3l-.8.2c-.5 0-.9-.2-1.2-.5l-.2-.2.3-.2.5-.5c.3-.3.5-.4.7-.4zm66-7.9a8.4 8.4 0 00-1.7.3c-1 0-1.5 1-.5 1.6.6 1.5 1.5-.4 2.5-.2 1.4.2 1.5 1.8 1.8 3 0 1.1.4 2.2.7 3.3 1 1.1-.7 1.8-1.4 1-.6-.7-2-1.5-2.7-.6-.9.4-1 1.6-1.7 2-1.2.3-1.3-1.2-2-1.8-.6-.9-1.7-1-2.6-1.2-.4-.9-.2-2.4-1-3-.8.3-2.2 1.7-1 2.4 1 1-.5 1.4-1 2-.8.9-1 2-1 3-1.3.7-1.5-.8-1.7-1.7 0-1.1-1-.8-1.7-.4-1 .4-1.4 1.3-2 2v2c.2.9 1.2.5 1.8.4 1-.4 1.4.7.6 1.3-.6.6-2.2.3-2 1.4h1.6c1-.3 2.2-1.1 2.3-2.3.2-1 1.7-.9 2.5-1.1 1-.3 2.3-.4 2.6 1 .7.7 2.2 1.5 3 .5a2.4 2.4 0 001.1-2.3c-.1-.8 1.3-.8 1.7-.3.5.8 2.1.6 2.9 0 .8-.5 1-1.6 2.2-1.6l5.4-1.5c1.4-.3-.2-1.2-.6-1.8-1-.5-2 1.7-3.2.6-1-.7-.9-2-1.2-3.1-.3-1.4-.2-3-1.2-4-.6-.7-1.6-.9-2.5-.9zm-6.8 9.5c.1 0 .3 0 .5.2.4.2.7.6.7 1 0 .2 0 .2-.3.3l-.5.2c-.2 0-.7-.3-.7-.5v-.4c-.2-.4-.2-.4 0-.6l.3-.2zm6.5.4c.4 0 .6 0 .8.3.1.4 0 .6-.4.8l-.5.2-.4-.3c-.2-.1-.3-.2-.3-.4 0-.3.4-.6.8-.7zm-9 0c.2 0 .3 0 .4.2.2.2.3.3.3.6v.6c0 .3 0 .2-.6.2s-.7 0-.7-.6c0-.4 0-.5.3-.7.1-.2.3-.2.4-.2zm-5.4 1.5a.6.6 0 01.4.4c0 .3 0 .5-.2.6-.3.1-.8.2-1 0a.6.6 0 010-.1c-.2-.1-.2-.2 0-.3v-.1l.2-.3a.5.5 0 01.6-.2zm9.2 1.2l.5.1v.6h-1.2l-.1-.2c0-.2 0-.3.2-.4l.6-.1zm-17.1 4.8c-.1 0-.3-.1-.1-.2.1-.3.5-.4.8-.6a3.4 3.4 0 001.4-1c0-.4.4-.6.4-1l-.1-1.4a1.8 1.8 0 00-.8-1c-.3-.1-.7-.2-.8-.6 0-.3.3-.6.4-.9l.6-1.2c.3-.3.7 0 .8.2l.5 1c.3.3.5.6.6 1 .2.4.4.7.4 1l.2 1.3c0 .5 0 1.1-.2 1.6l-.6.8c-.3.3-.6.6-1 .7-.3.1-.5.4-.9.4H468l-.1-.1zm-6.9.4c-.2-.2-.3-.3-.3-.6s0-.3.3-.6c.4-.4.6-.4 1.4 0 .7.4 1 .4 1 .1.1-.2.5-.5 1-.5a.8.8 0 01.5.2c.2.2.3.3.3.7 0 .5 0 .5-.3.8-.3.2-.3.2-.7.2a.9.9 0 01-.8-.6c0-.2 0-.3-.2-.1l-.2.1c-.2 0-.6.3-.8.5l-.5.1c-.4 0-.4 0-.7-.3zm-19.8-8.9c-.7 0-1.4.6-1.5 1.3.2.7.8 1.5.4 2.2.3 1-.8 1.4-1.5.9-.4-1-.6-2-1.3-3-.8-.2-1.1 1.1-1.7 1.6.3.7 1.1 1.4 1.2 2.3.2 1-.4 2-1.1 2.4-.7.7-1.7.5-2.5.6-1 .6.7.8 1.2.8 1 .1 2.1 0 3-.8.7-.3.6-1.7 1.5-1.8l4.8.3c.8.2 2.1-.1 2.7.5 0 1 1 1.8 1.9 2.2.5.2 1-.5 1.5-.6 1-.3.7-1.5 1.3-2h5c.2 0 .3-.5.6-.7l-.2-1.9c-.3-.8 0-1.8-.5-2.5-.9-.2-1.6.5-2.4.6-1 .4-1.7 1.3-1.8 2.3-.5.9-1.4-.2-1-1l-.1-1c-.5-.5-1.4-.3-2.1-.4l-3-.2c-1 0-1.9.1-2.7-.1-1 0-1-1-1-1.8a1 1 0 00-.7-.2zm2 3.7l1 .1h1.3c1 .2 2 .2 3 .2.2 0 .4.2.6.4v2c0 .3 0 .7-.2.8a.7.7 0 01-.2.2 1 1 0 01-.7-.5v-1.4a1.3 1.3 0 00-.7-.3l-2.6-.1-2-.1c-.3-.1-.7 0-.9-.4-.2-.2.1-.6.4-.7a2.3 2.3 0 011-.2zm11.3.3c.1 0 .2 0 .2.3l.2.5c0 .1 0 .2-.2.2-.5.2-1 .2-1.2 0 0-.1 0-.5.2-.6l.8-.4z"/>
+      </g>
+    </g>
+    <path stroke-width="1.1" d="M450 327.2c32.6-25 29.8-61.8 29.8-61.8l-2.5.2c-6.9 0-23.2-4-27-8.9-4 4.5-20.8 9-27.6 9l-2.5-.3s-2.9 36.7 29.8 61.8z"/>
+    <path stroke-width=".9" d="M477.2 268h-.8c-6.2 0-20.6-3.1-26.2-7.9-5.8 4.4-20.5 8-26.6 8a4.7 4.7 0 01-.8-.1 73.1 73.1 0 002.6 18.7 71 71 0 0024.6 37.1 71.2 71.2 0 0024.6-37.2 73.1 73.1 0 002.6-18.6z"/>
+    <path fill="#c09300" stroke="none" d="M439.4 265a62.2 62.2 0 01-16.6 3l.1 4.1a72.8 72.8 0 002.5 14.5 71 71 0 0014 26.8V265zm20.6 0v49.2a71.1 71.1 0 0014.6-27.6 73 73 0 002.5-14.5l.1-4h-.8c-3.8 0-10.4-1.2-16.4-3.2z"/>
+    <g stroke-width="1.3">
+      <path stroke-width="1.2" d="M462.3 253c.7.1-.9-3.5-.9-3.5 1.8 1.8 8.4 2.3 8.4 2.3-4-1.8-8-15.1-7.5-25.8.4-10.6-1.5-14.8-3-16.4-2-2-8.5-3.8-12.7-4-2.5-.1-2 1.8-2 1.8-4.5-1.1-9-1.6-11-.2-1.8 1.2-2.2 7.5-.8 6.4 3.3-2.7 6.2-.2 8.2 2.7 1.8 2.5 1.7 9.7-.9 18.2a60 60 0 01-10 17.7c4 0 9.6-3.5 9.6-3.5l-1.3 5.5c4.2-2 7.5-5.1 7.5-5.1l4 4.2c1.3-1.8 4-4.2 4-4.2s3.3 3.5 8.4 4z"/>
+      <path fill="none" d="M446.1 227.6s-2.2 16.4-6.4 21m10-21.5s-1 16.7-3.8 22m6.9-21.3s0 18.2 1 21.3m3-20.4s.8 15.3 4.6 20.8"/>
+      <path fill="#c09300" stroke-width=".3" d="M442 219.6a8 8 0 00-1-3.3c-2-3-4.9-5.4-8.2-2.7 0 0 1.1-3.5 3.6-3.6 1.8-.1 6.1 1.4 9.9 7.8 0 0-2.8-.6-3.5 0-1.2 1-.7 1.8-.7 1.8z"/>
+      <path fill="#c09300" stroke-width=".3" d="M432.4 209.3c.3-1 .7-1.8 1.3-2.1 2-1.4 6.4-1 10.9.2 0 0-.4-1.9 2-1.8 4.2.2 10.6 2 12.6 4a7.9 7.9 0 011.5 2.4c-1-1.4-3.8-1.3-4.5-1.2-1 .1-1.7 0-3.1.4-.7.2-1.7.4-2.3.8-.4.4-.8 1.6-1.4 1.6-1 0-1-.2-1.3-.5-.3-.5-.5-1.1-.9-1-1 .1-2.8-.7-5-2.5-2.3-1.8-3.2-2.2-6-2-3 .2-3.8 1.9-3.8 1.9v-.2z"/>
+      <circle cx="448.8" cy="210.7" r="1.2" stroke="none"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eh.svg
new file mode 100644
index 0000000..4c3feba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eh.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-eh" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path d="M-180 0H844v256H-180z"/>
+    <path fill="#107b00" d="M-180 256H844v256H-180z"/>
+    <path fill="#fff" d="M-180 169.3H844v176.1H-180z"/>
+    <path fill="#f0f" d="M310 195.6c-45.2-19.5-84.1 20.6-84 58 0 39.2 38 81 86 62.5-34-10-48-35.3-48-60.7-.3-25.2 15.8-54.6 46-59.9z"/>
+    <path fill="#ff1800" d="M363.1 294.2l-25.8-18.9-26 19 10-30.5-26-18.8h32l9.9-30.5 9.8 30.4h32.1l-25.9 18.8"/>
+    <path fill="red" d="M314.3 315.6a65.2 65.2 0 01-89.2-59.4 65 65 0 0189.5-60.9 60.6 60.6 0 00-51.2 59.2 61.3 61.3 0 0051 61.1zM-180 0l348.6 256.6L-180 512V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/en.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/en.svg
new file mode 100644
index 0000000..ef048dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/en.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb" viewBox="0 0 512 512">
+  <path fill="#012169" d="M0 0h512v512H0z"/>
+  <path fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+  <path fill="#C8102E" d="M184 324l11 34L42 512H0v-3l184-185zm124-12l54 8 150 147v45L308 312zM512 0L320 196l-4-44L466 0h46zM0 1l193 189-59-8L0 49V1z"/>
+  <path fill="#FFF" d="M176 0v512h160V0H176zM0 176v160h512V176H0z"/>
+  <path fill="#C8102E" d="M0 208v96h512v-96H0zM208 0v512h96V0h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/er.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/er.svg
new file mode 100644
index 0000000..8634334
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/er.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-er" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#be0027" d="M-48 0h591.5v512H-48z"/>
+    <path fill="#b4d7f4" d="M-48 512l591.5-.3V256L-48 512z"/>
+    <path fill="#239e46" d="M-48 0l591.5.3V256L-48 0z"/>
+    <path fill="#f3e295" d="M148.8 351.4c-8.7 2.4-13.7 9.2-13.6 15.6l42.8-.2c.4-6.9-5.2-13.2-13.8-15.7 42-.8 78.4-16.6 85-26.6-6.5-2.9-14.1 1.7-19.5.6 12.8-5.9 51.2-30.8 45-57.4a62.3 62.3 0 01-25.8 30.3c14.3-21.8 34-44.5 17-62 .8 10.2-6.6 21.4-9.8 22.2 8.3-23 16.3-52-1.8-71 2.4 6.9 1.5 26.3-1.8 27.2-1-15.7-3.7-48.6-20.2-48.1 5.3 4.6 7.5 17.4 7.7 30.2-3.8-8.8-8-15.4-17.2-22a96.1 96.1 0 00-33.7-34.3 36.1 36.1 0 0017.1 29.2c-7.5-.5-15-14.7-23-15.1-6.4-.3-11.4 5.8-21.9 2.3 1.2 3.4 6 5 7 7.5-2.1 1.5-7.5-.2-11.9-2.5 6.1 8.2 15.5 13 23.5 11.4 9.5-1.8 19.7-.8 29.4 4.7a51.6 51.6 0 01-18.4.5c5.7 5.7 9.4 9.5 19.2 9.4 8.8 0 13.4-4.6 15.6-1.8 5.5 6.5 9.2 13 13.8 20.6-10.2 1.2-7.1-11.4-18.4-17.9-6.3 13.2 7.3 28.7 16.6 35.2 0 9.9 1.5 18 5.7 25.6 2.8 5.3 6.5 10.7 5.1 22.7-5.5-4-11-17.7-9-28.5-7 1.9-9.6 14-6.4 20.2 2.5 4.7 4.1 13.7 1.3 17.7-2.8 3.7-3 3.3-3 11.3 0 4.8-2.6 10.5-7 14.4 1-3.3 2-9.2 1-12.8-3.5 5.9-12.1 11.9-14.8 18.2-2.7 6.3-3.4 17.2-16.3 19.7-16.7 3.3-22.5 6.2-33.2 10.6-1.2-8.1 2.4-25.1 9.2-24.1 6.7 1.2 26.8-7 19.6-24-1.4 5.4-6.2 10.6-11.3 10.9 5.5-7.2 15.4-14.7 10.6-26.7a34.5 34.5 0 01-13.3 14.7c6.9-13.1.8-17-7.3-6.3-3 4.2-5 12.6-6.9 23.2-3.2-8.6-3-20-6.8-29.2-4-10 5.3-12.7 9.6-11.9 10.6 2.9 28.4 2.9 27-14.7-4.5 6-12.6 7.8-21.3 5.7 9.8-7.2 17.5-20.5 6.6-27.5a25.2 25.2 0 01-13.7 19.5 41 41 0 01-.3-20.1c-4.3 4.5-7.4 13.8-9.9 24.5a81.8 81.8 0 013.3-23.8c2.2-8.3 7.8-2.9 16.3-2.3 8.2.5 19.5-4 17.4-15.2-2.8 4.4-8.6 6.1-14.5 5.7 7.1-4.3 19.4-12 12.7-23.6-2.9 4.4-3.8 8.2-12 9.6 2.1-5 2.5-12 8.9-14.7-11.4-2.3-17.9 5.2-21.2 16.8-1.4-8-3-11-3.3-17 6.2-6.8 6.8-20.2-6.5-23.1-.8 6.8-.5 8.5 1 14-6.3-3.6-15-5.7-21-.4 4 4.3 10.2 8 19.7 3.4-2.3 7.3-8.1 6-16.1 3.2 4.9 9.2 11 10.9 17.9 9.8 3.5 9.4 3.7 16.5-6.7 30.2.4-8.5-.2-14.8-7-21.7-5.7-5.7-10.4.3-1.4 12.9A38.7 38.7 0 01127 200c-1.8 10.1-.2 22 5.4 28.8-2.7 2.8-5.7-.3-10.1-7.2 1.6 22.2 11.1 26.4 23.9 21.5.3 12.2.3 23.5 1 38.2a61.3 61.3 0 00-22-20.6c-1.7 6 4.5 13.7 8 18-5.3-1-16.7-9.7-16.7-9.7-1.2 9.9 11.6 19 19.9 23.1-9.7-.4-14-4-20.3-10 .1 27.4 29.7 22.6 35.3 18.4l2.5 42.6c-8.4-1.4-7.7-4-14.9-4.6-19.9-.8-35.7-23.9-40.9-40.9-1.5 2.8-.3 5.7-1.7 9.2-3.2-8.4-7.3-19.1-12.9-24.1 1.4 4.8 1.6 9.8 1.1 18.8-1.9-5.9-3.7-7.7-3.8-14.6.1-5.3 5.1-9.2 4.9-16.7-.2-5.4-5.2-17.2-6-26.4-2.4 9.5-3.9 19.4-7.6 25.2 1.9-10 1.3-17 4.4-23.7 3.6-7.2 6.6-13.5 4.2-20.7-2.3 2.8-1.5 5.3-7.2 12-1.3-7.3 7.4-19 15.8-23.8 6-3 13.4-14.3 8.6-22-5.6 4-8.1 9.5-16 18.7 5.6-22 20.2-27.7 37.7-27.8 4 0 11.7-1.4 14-6.5-5 1.9-10.9 2.1-16 1 3.7-5.4 11.7-4.7 19.1-4.8 5.8 0 14.9-.8 18.6-9a42 42 0 01-25.2 1.5c11.1-5.8 28.5-6.4 37.4-14-10.2-7.5-35.6 1.9-51.6 12.9 4.5-4.1 11.6-11.4 15.5-17.3-8.8-4.2-31 20.4-38.6 35-7.2 4-10.1 10.5-13 15 4-13.1 4.3-22.6 7.5-33.3-24.8 8.5-14.5 54.5-19.9 65.5.6-12.2.1-27.8-4.9-35.8-7.6 5.8-8.3 40.2-1 68.9-2.7-7.7-7.6-14.9-9.1-24.2-11.4 20.7 6.6 45 21.6 64.3a95.7 95.7 0 01-29.8-29.2c2 37 40.7 44.7 46.7 53.8-8.2-3.8-23.7-11.3-30.4-3.4a80.2 80.2 0 0126.3 9.9c10 12.5 29 18 62 19.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ca.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ca.svg
new file mode 100644
index 0000000..2a50685
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ca.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es-ca" viewBox="0 0 512 512">
+  <path fill="#fcdd09" d="M0 0h512v512H0z"/>
+  <path stroke="#da121a" stroke-width="60" d="M0 90h810m0 120H0m0 120h810m0 120H0" transform="scale(.6321 .94815)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ga.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ga.svg
new file mode 100644
index 0000000..5c55ff8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es-ga.svg
@@ -0,0 +1,189 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es-ga" version="1.0" viewBox="0 0 512 512">
+  <g id="g5162" font-size="12" transform="matrix(.85333 0 0 1.2801 0 -123)">
+    <path id="rect733" fill="#fff" fill-opacity="1" fill-rule="evenodd" stroke-width="1pt" d="M0 96h600v400H0z"/>
+    <path id="path556" fill="#09c" d="M600 437.8L86 96H0v57l516 343h84v-58.2"/>
+  </g>
+  <g id="g4979" font-size="12" transform="matrix(1.13778 0 0 1.13875 -85.4 -81.1)">
+    <path id="path558" fill="#005bbf" fill-opacity="1" d="M296.6 401.2c-60 0-58.1-56.5-58.1-56.5v-86.9h116.3v86.9s2 56.5-58.2 56.5"/>
+    <path id="path559" fill="none" stroke="#000" stroke-width="1" d="M296.6 401.2c-60 0-58.1-56.5-58.1-56.5v-86.9h116.3v86.9s2 56.5-58.2 56.5z"/>
+    <path id="path560" fill="#d81126" fill-opacity="1" d="M296.1 203.2s-12.4-6-24.1 2.8c0 0-21.1-3-22.7 17.2 0 .8-.2 2.3.2 2.8.4.4.8 1.2.8 1.8 0 .6.3.9.5 1.1 0 .3.4.7.5 1.7 0 1.1-.2 1.6.9 2.7 1 1 1 4.1 1 5 0 .9.6 3.3 1 3.8.5.5 1.3 1.8 1.3 2.9 0 1 .4 4 .2 4.7-.2.8 1.2 1.7 2.4 2.1 1.2.4 16 5.2 37.6 4.8 21.6-.3 29.4-1.5 38.4-4.7 1.3-.5 1.6-1.7 1.5-2.3-.2-.6 0-2.6.3-3.1.4-.5 3-4.6 2.4-5.3-.5-.8-.5-2.4 0-3 .5-.7 2.1-3.7 2.4-5 .3-1.2.4-2.7 1-3.1.5-.4.7-1.9.8-2.2a4 4 0 011.2-1.6s1-5.1.4-7.6c-.7-2.5-4.5-13.3-19.8-11 0 0-11.4-8.7-28.2-4.5"/>
+    <path id="path561" fill="none" stroke="#000" stroke-width="1.5" d="M296.1 203.2s-12.4-6-24.1 2.8c0 0-21.1-3-22.7 17.2 0 .8-.2 2.3.2 2.8.4.4.8 1.2.8 1.8 0 .6.3.9.5 1.1 0 .3.4.7.5 1.7 0 1.1-.2 1.6.9 2.7 1 1 1 4.1 1 5 0 .9.6 3.3 1 3.8.5.5 1.3 1.8 1.3 2.9 0 1 .4 4 .2 4.7-.2.8 1.2 1.7 2.4 2.1 1.2.4 16 5.2 37.6 4.8 21.6-.3 29.4-1.5 38.4-4.7 1.3-.5 1.6-1.7 1.5-2.3-.2-.6 0-2.6.3-3.1.4-.5 3-4.6 2.4-5.3-.5-.8-.5-2.4 0-3 .5-.7 2.1-3.7 2.4-5 .3-1.2.4-2.7 1-3.1.5-.4.7-1.9.8-2.2a4 4 0 011.2-1.6s1-5.1.4-7.6c-.7-2.5-4.5-13.3-19.8-11 0 0-11.4-8.7-28.2-4.5h0z"/>
+    <path id="path562" fill="#bcac0b" fill-opacity="1" d="M337.6 240.8c-47-14.9-83.4-.7-83.4-.7s.4 1.6.8 2.1 1 1.7 1 2.6v2.8c0 .7-.4 3.7 2.2 3.6 0 0 32.8-12.8 75.4.7 0 0 1.2-1 1.2-2.5a8 8 0 011-4c.5-.8 1.8-3.4 1.8-4.6"/>
+    <path id="path563" fill="#c8b100" fill-opacity=".9" d="M294 319.3h-20.5s-2 18.3 13.8 23.9v1.6h3.3v2.2s-5.8 5.2-.7 11.2v1.8h.8v3h1v4.7s-.8 17-17.6 25.2v1h44.7v-1c-16.7-8.1-17.5-25.2-17.5-25.2V363h1V360h.8v-1.8c5-6-.8-11.2-.8-11.2v-2.2h3.4v-1.6c15.7-5.6 13.7-23.9 13.7-23.9H294"/>
+    <path id="path564" fill="none" stroke="#000" stroke-width="1" d="M294 319.3h-20.5s-2 18.3 13.8 23.9v1.6h3.3v2.2s-5.8 5.2-.7 11.2v1.8h.8v3h1v4.7s-.8 17-17.6 25.2v1h44.7v-1c-16.7-8.1-17.5-25.2-17.5-25.2V363h1V360h.8v-1.8c5-6-.8-11.2-.8-11.2v-2.2h3.4v-1.6c15.7-5.6 13.7-23.9 13.7-23.9H294h0z"/>
+    <path id="path565" fill="none" stroke="#000" stroke-width=".3" d="M286.6 342.9h19.7m-19 1.5h18.4m-15 2.5h11.5m-12.3 11.5H303m-12.4 1.4h11.6m-11.6 2.8h11.5m-18.5 23.2h25.5m-32.7 5.9h40m-41.5.9h43"/>
+    <path id="path566" fill="#ccc" fill-opacity="1" d="M296.6 318.3a13 13 0 100-26.1 13 13 0 000 26"/>
+    <path id="path567" fill="none" stroke="#000" stroke-width="1" d="M296.6 318.3a13 13 0 100-26.1 13 13 0 000 26z"/>
+    <path id="path568" fill="#ccc" fill-opacity="1" d="M266.3 280h-8.1v-8.2H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8V280"/>
+    <path id="path569" fill="none" stroke="#000" stroke-width="1" d="M266.3 280h-8.1v-8.2H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8V280"/>
+    <path id="path570" fill="#ccc" fill-opacity="1" d="M350.8 280h-8.1v-8.2h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1V280"/>
+    <path id="path571" fill="none" stroke="#000" stroke-width="1" d="M350.8 280h-8.1v-8.2h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1V280"/>
+    <path id="path572" fill="#ccc" fill-opacity="1" d="M308 269.7h-8.2v-8h-7.2v8h-8v7.2h8v8.2h7.2v-8.2h8.2v-7.2"/>
+    <path id="path573" fill="none" stroke="#000" stroke-width="1" d="M308 269.7h-8.2v-8h-7.2v8h-8v7.2h8v8.2h7.2v-8.2h8.2v-7.2"/>
+    <path id="path574" fill="#ccc" fill-opacity="1" d="M266.3 315.2h-8.1V307H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8v-7.2"/>
+    <path id="path575" fill="none" stroke="#000" stroke-width="1" d="M266.3 315.2h-8.1V307H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8v-7.2"/>
+    <path id="path576" fill="#ccc" fill-opacity="1" d="M350.8 315.2h-8.1V307h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1v-7.2"/>
+    <path id="path577" fill="none" stroke="#000" stroke-width="1" d="M350.8 315.2h-8.1V307h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1v-7.2"/>
+    <path id="path578" fill="#ccc" fill-opacity="1" d="M266.3 350.7h-8.1v-8.1H251v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8v-7.3"/>
+    <path id="path579" fill="none" stroke="#000" stroke-width="1" d="M266.3 350.7h-8.1v-8.1H251v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8v-7.3"/>
+    <path id="path580" fill="#ccc" fill-opacity="1" d="M350.8 350.7h-8.1v-8.1h-7.2v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8.1v-7.3"/>
+    <path id="path581" fill="none" stroke="#000" stroke-width="1" d="M350.8 350.7h-8.1v-8.1h-7.2v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8.1v-7.3"/>
+    <path id="path582" fill="#005bbf" fill-opacity="1" d="M296.5 185.8a7.8 7.8 0 100-15.7 7.8 7.8 0 000 15.7"/>
+    <path id="path583" fill="none" stroke="#000" stroke-width="1" d="M296.5 185.8a7.8 7.8 0 100-15.7 7.8 7.8 0 000 15.7z"/>
+    <path id="path584" fill="#fc0" fill-opacity="1" d="M303.8 176.6h-6.4v-10.4h2.5v-2h-2.5v-2.5h-2v2.4h-2.5v2.1h2.4v10.4h-6v1.4h14.5v-1.4"/>
+    <path id="path585" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".5" d="M303.8 176.6h-6.4v-10.4h2.5v-2h-2.5v-2.5h-2v2.4h-2.5v2.1h2.4v10.4h-6v1.4h14.5v-1.4"/>
+    <path id="path586" fill="#fc0" fill-opacity="1" d="M265.2 195.1s5.8-.6 9.1.7c0 0-3.8 4.4-3 10.1.4 3 1 4.5 1.9 6 .8 1.3 1.7 4.3 1.2 6.6h1.1s1.1-4.8-.7-7.4a10 10 0 01-1-10.3c1.9-3.8 4.6-5.3 4.6-5.3 3 1.2 9.6 0 11.4-1.3 1.9-1.3 2.8-3.2-.6-3.3-3.5-.2-9.3-.1-13.3 2.9 0 0-2.1-2.4-12.6-1.3-10.5 1.2-18 5.7-20.4 15.1-1.2 4.8 3.3 14.9 7.4 17.3 0 0-.1-1.6.3-2.8 0 0-7-7.9-5-15.2 2.2-7.2 10.6-12 19.6-11.8"/>
+    <path id="path587" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M265.2 195.1s5.8-.6 9.1.7c0 0-3.8 4.4-3 10.1.4 3 1 4.5 1.9 6 .8 1.3 1.7 4.3 1.2 6.6h1.1s1.1-4.8-.7-7.4a10 10 0 01-1-10.3c1.9-3.8 4.6-5.3 4.6-5.3 3 1.2 9.6 0 11.4-1.3 1.9-1.3 2.8-3.2-.6-3.3-3.5-.2-9.3-.1-13.3 2.9 0 0-2.1-2.4-12.6-1.3-10.5 1.2-18 5.7-20.4 15.1-1.2 4.8 3.3 14.9 7.4 17.3 0 0-.1-1.6.3-2.8 0 0-7-7.9-5-15.2 2.2-7.2 10.6-12 19.6-11.8z"/>
+    <path id="path588" fill="#fff" d="M284.9 193.7c1.8-.2 3.3-.5 3.2-.7 0-.3-1.5-.3-3.3-.2-1.8.1-3.2.5-3.2.7 0 .3 1.5.3 3.3.2"/>
+    <path id="path589" fill="none" stroke="#000" stroke-width=".7" d="M278.3 195.4s-2 2 0 0 6.4-3.2 8.9-2.7c2.4.6-.5.9-1.3 1-.8 0-2.4.3-4.8 0"/>
+    <path id="path590" fill="#fc0" fill-opacity="1" d="M327.7 195.8s-5.7-.7-9.1.6a14.6 14.6 0 011.2 16c-.9 1.5-1.8 4.4-1.3 6.7h-1s-1.2-4.7.7-7.4a10 10 0 00.9-10.2 12.6 12.6 0 00-4.5-5.4c-3.1 1.3-9.7 0-11.5-1.3-1.8-1.3-2.8-3.1.7-3.3 3.4-.2 9.3-.1 13.3 3 0 0 2-2.5 12.6-1.3 10.4 1.1 18 5.6 20.3 15 1.2 4.8-3.2 14.9-7.3 17.3 0 0 0-1.6-.3-2.8 0 0 7-7.8 4.9-15.1-2.1-7.3-10.5-12-19.6-11.8"/>
+    <path id="path591" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M327.7 195.8s-5.7-.7-9.1.6a14.6 14.6 0 011.2 16c-.9 1.5-1.8 4.4-1.3 6.7h-1s-1.2-4.7.7-7.4a10 10 0 00.9-10.2 12.6 12.6 0 00-4.5-5.4c-3.1 1.3-9.7 0-11.5-1.3-1.8-1.3-2.8-3.1.7-3.3 3.4-.2 9.3-.1 13.3 3 0 0 2-2.5 12.6-1.3 10.4 1.1 18 5.6 20.3 15 1.2 4.8-3.2 14.9-7.3 17.3 0 0 0-1.6-.3-2.8 0 0 7-7.8 4.9-15.1-2.1-7.3-10.5-12-19.6-11.8z"/>
+    <path id="path592" fill="#fff" d="M308 194.3c-1.8-.1-3.2-.4-3.2-.7 0-.2 1.5-.3 3.3-.2 1.8.2 3.3.5 3.3.7 0 .3-1.5.4-3.4.2"/>
+    <path id="path593" fill="none" stroke="#000" stroke-width=".7" d="M314.6 196s2.1 2 0 0c-2-1.9-6.4-3.2-8.8-2.6-2.5.5.4.8 1.2.9.9 0 2.5.4 4.9 0"/>
+    <path id="path594" fill="#fc0" fill-opacity="1" d="M291.1 189.3v22.3c-.2 2.2 2.7 5.3 4.8 6.2 0 0 5-1.6 5.3-6.2v-23.5h-1.7v20.4c0 2-1.4 5.8-3.3 6.4 0 0-3.6-.6-3.8-6.4v-19.8l-1.3.6"/>
+    <path id="path595" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M291.1 189.3v22.3c-.2 2.2 2.7 5.3 4.8 6.2 0 0 5-1.6 5.3-6.2v-23.5h-1.7v20.4c0 2-1.4 5.8-3.3 6.4 0 0-3.6-.6-3.8-6.4v-19.8l-1.3.6"/>
+    <path id="path596" fill="#fff" d="M241.8 219.8a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path597" fill="none" stroke="#000" stroke-width="1" d="M241.8 219.8a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path598" fill="#fff" d="M240.1 213.7a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path599" fill="none" stroke="#000" stroke-width="1" d="M240.1 213.7a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path600" fill="#fff" d="M241 206.3a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path601" fill="none" stroke="#000" stroke-width="1" d="M241 206.3a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path602" fill="#fff" d="M245.1 200.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path603" fill="none" stroke="#000" stroke-width="1" d="M245.1 200.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path604" fill="#fff" d="M250 195.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path605" fill="none" stroke="#000" stroke-width="1" d="M250 195.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path606" fill="#fff" d="M256.4 193.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path607" fill="none" stroke="#000" stroke-width="1" d="M256.4 193.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path608" fill="#fff" d="M263 192a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path609" fill="none" stroke="#000" stroke-width="1" d="M263 192a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path610" fill="#fff" d="M269.3 191.6a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path611" fill="none" stroke="#000" stroke-width="1" d="M269.3 191.6a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path612" fill="#fff" d="M275 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path613" fill="none" stroke="#000" stroke-width="1" d="M275 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path614" fill="#fff" d="M291 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path615" fill="none" stroke="#000" stroke-width="1" d="M291 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path616" fill="#fff" d="M296.2 191.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path617" fill="none" stroke="#000" stroke-width="1" d="M296.2 191.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path618" fill="#fff" d="M296.2 211.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path619" fill="none" stroke="#000" stroke-width="1" d="M296.2 211.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path620" fill="#fff" d="M351.3 221.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path621" fill="none" stroke="#000" stroke-width="1" d="M351.3 221.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path622" fill="#fff" d="M352.7 215a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path623" fill="none" stroke="#000" stroke-width="1" d="M352.7 215a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path624" fill="#fff" d="M351.6 208a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path625" fill="none" stroke="#000" stroke-width="1" d="M351.6 208a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path626" fill="#fff" d="M348.7 201.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path627" fill="none" stroke="#000" stroke-width="1" d="M348.7 201.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path628" fill="#fff" d="M343.8 197a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path629" fill="none" stroke="#000" stroke-width="1" d="M343.8 197a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path630" fill="#fff" d="M337.9 194a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path631" fill="none" stroke="#000" stroke-width="1" d="M337.9 194a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path632" fill="#fff" d="M331.1 192.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path633" fill="none" stroke="#000" stroke-width="1" d="M331.1 192.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path634" fill="#fff" d="M325 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path635" fill="none" stroke="#000" stroke-width="1" d="M325 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path636" fill="#fff" d="M319.4 191.3a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path637" fill="none" stroke="#000" stroke-width="1" d="M319.4 191.3a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path638" fill="#fff" d="M323 213a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path639" fill="none" stroke="#000" stroke-width="1" d="M323 213a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path640" fill="#fff" d="M324.4 208a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path641" fill="none" stroke="#000" stroke-width="1" d="M324.4 208a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path642" fill="#fff" d="M302 190.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path643" fill="none" stroke="#000" stroke-width="1" d="M302 190.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path644" fill="#fff" d="M289 190.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path645" fill="none" stroke="#000" stroke-width="1" d="M289 190.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path646" fill="#fff" d="M285.8 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path647" fill="none" stroke="#000" stroke-width="1" d="M285.8 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path648" fill="#fff" d="M268.8 213.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path649" fill="none" stroke="#000" stroke-width="1" d="M268.8 213.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path650" fill="#fff" d="M268 206.8a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path651" fill="none" stroke="#000" stroke-width="1" d="M268 206.8a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path652" fill="#fff" d="M270 200.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path653" fill="none" stroke="#000" stroke-width="1" d="M270 200.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path654" fill="#fff" d="M281.7 190.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path655" fill="none" stroke="#000" stroke-width="1" d="M281.7 190.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path656" fill="#fff" d="M277.2 192.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path657" fill="none" stroke="#000" stroke-width="1" d="M277.2 192.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path658" fill="#fff" d="M273 196a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path659" fill="none" stroke="#000" stroke-width="1" d="M273 196a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path660" fill="#fff" d="M296.2 194.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path661" fill="none" stroke="#000" stroke-width="1" d="M296.2 194.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path662" fill="#fff" d="M296.2 199.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path663" fill="none" stroke="#000" stroke-width="1" d="M296.2 199.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path664" fill="#fff" d="M296.2 204.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path665" fill="none" stroke="#000" stroke-width="1" d="M296.2 204.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path666" fill="#fff" d="M305.4 190.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path667" fill="none" stroke="#000" stroke-width="1" d="M305.4 190.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path668" fill="#fff" d="M309 189.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path669" fill="none" stroke="#000" stroke-width="1" d="M309 189.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path670" fill="#fff" d="M313.2 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path671" fill="none" stroke="#000" stroke-width="1" d="M313.2 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path672" fill="#fff" d="M323.5 201.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path673" fill="none" stroke="#000" stroke-width="1" d="M323.5 201.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path674" fill="#fff" d="M317.3 192.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path675" fill="none" stroke="#000" stroke-width="1" d="M317.3 192.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path676" fill="#fff" d="M321.1 196.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path677" fill="none" stroke="#000" stroke-width="1" d="M321.1 196.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path678" fill="#fff" d="M296 236l-7 3.6 6.3 4 7.5-3.8-6.8-3.8"/>
+    <path id="path679" fill="none" stroke="#000" stroke-width=".5" d="M296 236l-7 3.6 6.3 4 7.5-3.8-6.8-3.8"/>
+    <path id="path680" fill="#fff" d="M280.6 236.8l-10.5 1.6s-.2 5.7.3 7l10.9-1.4s.5-5.3-.7-7.2"/>
+    <path id="path681" fill="none" stroke="#000" stroke-width=".5" d="M280.6 236.8l-10.5 1.6s-.2 5.7.3 7l10.9-1.4s.5-5.3-.7-7.2z"/>
+    <path id="path682" fill="#058e6e" fill-opacity=".9" d="M279.5 238.8s-6.4.6-8 1.2v3.8s4.3-.7 8.1-1l-.1-4"/>
+    <path id="path683" fill="none" stroke="#000" stroke-width=".5" d="M279.5 238.8s-6.4.6-8 1.2v3.8s4.3-.7 8.1-1l-.1-4"/>
+    <path id="path684" fill="#fff" d="M310.7 237l10.6 1.7s.1 5.7-.4 7l-10.8-1.4s-.5-5.3.6-7.2"/>
+    <path id="path685" fill="none" stroke="#000" stroke-width=".5" d="M310.7 237l10.6 1.7s.1 5.7-.4 7l-10.8-1.4s-.5-5.3.6-7.2z"/>
+    <path id="path686" fill="#058e6e" fill-opacity=".9" d="M312 239.1s6.3.6 7.9 1.2l-.1 3.8s-4.2-.7-8-1l.1-4"/>
+    <path id="path687" fill="none" stroke="#000" stroke-width=".5" d="M312 239.1s6.3.6 7.9 1.2l-.1 3.8s-4.2-.7-8-1l.1-4"/>
+    <path id="path688" fill="none" stroke="#000" stroke-width=".5" d="M254.2 241.8s37-13.7 84.2 1.2m-82.7 6.7s35.9-13.4 80 .6m-79.8-9l7.2 2.1-5 5.4"/>
+    <path id="path689" fill="red" d="M256 247.8l4.2-3.5-4.7-.9s.6.7.5 1.4v3"/>
+    <path id="path690" fill="none" stroke="#000" stroke-width=".5" d="M256 247.8l4.2-3.5-4.7-.9s.6.7.5 1.4v3z"/>
+    <path id="path691" fill="none" stroke="#000" stroke-width=".5" d="M337.6 242.7l-7.7 1.4 5.2 6"/>
+    <path id="path692" fill="red" d="M335.3 248l-2.9-3 4.2-.4s-1.2.7-1.2 1.4c0 .6.2 1.5 0 2"/>
+    <path id="path693" fill="none" stroke="#000" stroke-width=".5" d="M335.3 248l-2.9-3 4.2-.4s-1.2.7-1.2 1.4c0 .6.2 1.5 0 2z"/>
+    <path id="path694" fill="none" stroke="#000" stroke-width=".5" d="M265.3 241.8c.6 0 1.2-.4 1.2-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm20.6-2.3c.7 0 1.2-.4 1.2-1 0-.5-.5-.9-1.2-.9s-1.2.4-1.2 1c0 .5.5.9 1.2.9zm0 3.3c.7 0 1.2-.4 1.2-.9s-.5-1-1.2-1-1.2.5-1.2 1 .5 1 1.2 1zm20.3-3.1c.6 0 1.2-.5 1.2-1s-.6-1-1.2-1c-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm20.1 3.7c.7 0 1.2-.5 1.2-1s-.5-1-1.2-1-1.2.5-1.2 1 .5 1 1.2 1zm-.3 2.6c.6 0 1.2-.4 1.2-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm-19.8-3c.6 0 1.2-.4 1.2-1 0-.5-.6-.9-1.2-.9-.7 0-1.2.4-1.2 1 0 .5.5 1 1.2 1zm-40 3c.7 0 1.3-.4 1.3-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1z"/>
+    <path id="path695" fill="#fc0" fill-opacity="1" d="M253.6 231s.1 7.2 4.8 6.2 4.2-6.9 4.5-7.2c.4-.3.9-.3.9-.3s.6 5.7 5 5c4.4-.7 4.2-7.7 3.7-8.9l1-.3s1.7 8.2 6.7 7c5-1.2 4.5-6.4 4.5-6.4h.4s1.1 5.6 5.2 5.2c4-.3 4.8-1.6 4.3-7.2l2.7-.5s-1 8 3.9 8c4.8-.3 5-4.1 5.3-4.8h.8s.2 5.7 4.3 5.7c4 0 4.8-4.8 4.8-6.7l4 .2s-4.2 7.5 1.9 8.5c6 1 6.2-4.8 6.2-4.8h1.2s-.2 7.5 3.1 7.7c3.4.1 5.4-1 5.7-6.6l1.9.7s-1.6 9-7.9 7.4c-3.3-.9-4.4-4.7-4.2-5.7 0 0-2.3 4.2-6.9 2.8-4.5-1.3-4-4.5-4-5.5 0 0-2.7 5-6.5 3.9-3.4-1-4.7-2.2-4.7-4.6 0 0-1.7 3.9-5 3.7-3.4-.1-5-2.2-5.2-4 0 0-.7 3.6-5.2 3.9-3 .1-4.7-1.4-5.4-3.4 0 0-.9 3.6-5.2 4.2-2.7.3-5.4-1.2-6-3.7 0 0-.7 4.9-5 5.5-4.4.7-5.4-2.3-5.4-2.3s-.9 3.8-4.4 4.7c-3.5.8-5.8-.7-6.7-4.2-.8-3.5-.5-5-.5-5l1.4 1.8"/>
+    <path id="path696" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M253.6 231s.1 7.2 4.8 6.2 4.2-6.9 4.5-7.2c.4-.3.9-.3.9-.3s.6 5.7 5 5c4.4-.7 4.2-7.7 3.7-8.9l1-.3s1.7 8.2 6.7 7c5-1.2 4.5-6.4 4.5-6.4h.4s1.1 5.6 5.2 5.2c4-.3 4.8-1.6 4.3-7.2l2.7-.5s-1 8 3.9 8c4.8-.3 5-4.1 5.3-4.8h.8s.2 5.7 4.3 5.7c4 0 4.8-4.8 4.8-6.7l4 .2s-4.2 7.5 1.9 8.5c6 1 6.2-4.8 6.2-4.8h1.2s-.2 7.5 3.1 7.7c3.4.1 5.4-1 5.7-6.6l1.9.7s-1.6 9-7.9 7.4c-3.3-.9-4.4-4.7-4.2-5.7 0 0-2.3 4.2-6.9 2.8-4.5-1.3-4-4.5-4-5.5 0 0-2.7 5-6.5 3.9-3.4-1-4.7-2.2-4.7-4.6 0 0-1.7 3.9-5 3.7-3.4-.1-5-2.2-5.2-4 0 0-.7 3.6-5.2 3.9-3 .1-4.7-1.4-5.4-3.4 0 0-.9 3.6-5.2 4.2-2.7.3-5.4-1.2-6-3.7 0 0-.7 4.9-5 5.5-4.4.7-5.4-2.3-5.4-2.3s-.9 3.8-4.4 4.7c-3.5.8-5.8-.7-6.7-4.2-.8-3.5-.5-5-.5-5l1.4 1.8h0z"/>
+    <path id="path697" fill="#fc0" fill-opacity="1" d="M263.3 231.3a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path698" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M263.3 231.3a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path699" fill="#fc0" fill-opacity="1" d="M285.1 227.8a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path700" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M285.1 227.8a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path701" fill="#fc0" fill-opacity="1" d="M307.3 228.5a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path702" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M307.3 228.5a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path703" fill="#fc0" fill-opacity="1" d="M329.2 232a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path704" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M329.2 232a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path705" fill="#fc0" fill-opacity="1" d="M295.2 226h-1.5c-.4 1.5-3.6 2.4-3.6 2.4-.4-1.2.5-2.9.5-2.9-3.7-1-3.7-2.2-3.7-2.2.5-1.3 4-1.5 4-1.5-1-1.1-.8-3-.8-3 2.3.2 4.2 2.5 4.2 2.5s-2.3-1.2-2-5.2c0 0 1.2 0 2 .8 0 0 0-4.4 1.8-4.9h.2c1.8.5 1.8 4.9 1.8 4.9.8-.9 2-.8 2-.8.3 4-2 5.2-2 5.2s1.9-2.3 4.2-2.4c0 0 .1 1.8-.7 3 0 0 3.4.1 4 1.4 0 0 0 1.3-3.8 2.2 0 0 .8 1.7.5 3 0 0-3.3-1-3.6-2.5h-3.5"/>
+    <path id="path706" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M295.2 226h-1.5c-.4 1.5-3.6 2.4-3.6 2.4-.4-1.2.5-2.9.5-2.9-3.7-1-3.7-2.2-3.7-2.2.5-1.3 4-1.5 4-1.5-1-1.1-.8-3-.8-3 2.3.2 4.2 2.5 4.2 2.5s-2.3-1.2-2-5.2c0 0 1.2 0 2 .8 0 0 0-4.4 1.8-4.9h.2c1.8.5 1.8 4.9 1.8 4.9.8-.9 2-.8 2-.8.3 4-2 5.2-2 5.2s1.9-2.3 4.2-2.4c0 0 .1 1.8-.7 3 0 0 3.4.1 4 1.4 0 0 0 1.3-3.8 2.2 0 0 .8 1.7.5 3 0 0-3.3-1-3.6-2.5h-3.5 0z"/>
+    <path id="path707" fill="#fff" d="M296 226.8a3 3 0 100-6 3 3 0 000 6"/>
+    <path id="path708" fill="none" stroke="#000" stroke-width=".4" d="M296 226.8a3 3 0 100-6 3 3 0 000 6z"/>
+    <path id="path709" fill="#fff" d="M296 225.5a1.7 1.7 0 100-3.4 1.7 1.7 0 000 3.4"/>
+    <path id="path710" fill="none" stroke="#000" stroke-width=".3" d="M296 225.5a1.7 1.7 0 100-3.4 1.7 1.7 0 000 3.4z"/>
+    <path id="path711" fill="#fc0" fill-opacity="1" d="M319.1 228l1.5.3c0 1.5 3 3.1 3 3.1.6-1 .1-2.9.1-2.9 3.9-.1 4.1-1.4 4.1-1.4-.2-1.4-3.5-2.3-3.5-2.3 1-.9 1.3-2.7 1.3-2.7-2.3-.4-4.6 1.4-4.6 1.4s2.5-.6 3-4.6c0 0-1.1-.3-2 .3 0 0 .9-4.2-.8-5l-.2-.1c-1.9 0-2.8 4.3-2.8 4.3-.6-1-1.8-1.1-1.8-1.1-1.1 3.8.9 5.4.9 5.4s-1.4-2.6-3.6-3.2c0 0-.5 1.8 0 3 0 0-3.3-.5-4.1.6 0 0-.3 1.3 3.1 3 0 0-1.1 1.5-1 2.8 0 0 3.3-.3 4-1.7l1.5.3 2 .4"/>
+    <path id="path712" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M319.1 228l1.5.3c0 1.5 3 3.1 3 3.1.6-1 .1-2.9.1-2.9 3.9-.1 4.1-1.4 4.1-1.4-.2-1.4-3.5-2.3-3.5-2.3 1-.9 1.3-2.7 1.3-2.7-2.3-.4-4.6 1.4-4.6 1.4s2.5-.6 3-4.6c0 0-1.1-.3-2 .3 0 0 .9-4.2-.8-5l-.2-.1c-1.9 0-2.8 4.3-2.8 4.3-.6-1-1.8-1.1-1.8-1.1-1.1 3.8.9 5.4.9 5.4s-1.4-2.6-3.6-3.2c0 0-.5 1.8 0 3 0 0-3.3-.5-4.1.6 0 0-.3 1.3 3.1 3 0 0-1.1 1.5-1 2.8 0 0 3.3-.3 4-1.7l1.5.3 2 .4"/>
+    <path id="path713" fill="#fff" d="M318 228.6a3 3 0 111.4-6 3 3 0 01-1.3 6"/>
+    <path id="path714" fill="none" stroke="#000" stroke-width=".4" d="M318 228.6a3 3 0 111.4-6 3 3 0 01-1.3 6z"/>
+    <path id="path715" fill="#fff" d="M318.4 227.3a1.7 1.7 0 11.7-3.3 1.7 1.7 0 01-.7 3.3"/>
+    <path id="path716" fill="none" stroke="#000" stroke-width=".3" d="M318.4 227.3a1.7 1.7 0 11.7-3.3 1.7 1.7 0 01-.7 3.3z"/>
+    <path id="path717" fill="#fc0" fill-opacity="1" d="M272.3 227.6l-1.5.2c-.2 1.6-3.3 3-3.3 3-.5-1.2 0-3 0-3-3.7-.4-3.9-1.7-3.9-1.7.4-1.3 3.8-2 3.8-2-1-1-1.1-2.8-1.1-2.8 2.2-.2 4.4 1.8 4.4 1.8s-2.4-.8-2.7-4.8c0 0 1.3-.3 2.1.4 0 0-.5-4.3 1.2-5h.2c1.9.2 2.4 4.5 2.4 4.5.7-.9 2-1 2-1 .7 4-1.4 5.4-1.4 5.4s1.6-2.5 3.8-3c0 0 .4 1.9-.3 3.1 0 0 3.4-.3 4.1 1 0 0 .2 1.2-3.4 2.6 0 0 1 1.6.9 2.8 0 0-3.3-.5-4-2l-1.4.3-2 .2"/>
+    <path id="path718" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M272.3 227.6l-1.5.2c-.2 1.6-3.3 3-3.3 3-.5-1.2 0-3 0-3-3.7-.4-3.9-1.7-3.9-1.7.4-1.3 3.8-2 3.8-2-1-1-1.1-2.8-1.1-2.8 2.2-.2 4.4 1.8 4.4 1.8s-2.4-.8-2.7-4.8c0 0 1.3-.3 2.1.4 0 0-.5-4.3 1.2-5h.2c1.9.2 2.4 4.5 2.4 4.5.7-.9 2-1 2-1 .7 4-1.4 5.4-1.4 5.4s1.6-2.5 3.8-3c0 0 .4 1.9-.3 3.1 0 0 3.4-.3 4.1 1 0 0 .2 1.2-3.4 2.6 0 0 1 1.6.9 2.8 0 0-3.3-.5-4-2l-1.4.3-2 .2"/>
+    <path id="path719" fill="#fff" d="M273.2 228.4a3 3 0 10-.8-6 3 3 0 00.8 6"/>
+    <path id="path720" fill="none" stroke="#000" stroke-width=".4" d="M273.2 228.4a3 3 0 10-.8-6 3 3 0 00.8 6z"/>
+    <path id="path721" fill="#fff" d="M273 227a1.7 1.7 0 10-.4-3.3 1.7 1.7 0 00.4 3.3"/>
+    <path id="path722" fill="none" stroke="#000" stroke-width=".3" d="M273 227a1.7 1.7 0 10-.4-3.3 1.7 1.7 0 00.4 3.3z"/>
+    <path id="path723" fill="#fc0" fill-opacity="1" d="M340.2 234.1s-.8-2-2.5-1.3-1.5 1-3 1c0 0-.6-1.9.2-2.7 0 0-2.4-.9-3-3 0 0 1.3-1.5 4.4-.9 0 0-.1-1.5.3-2.2 0 0 3.3 1 3.3 2.9 0 0-1-3.6.8-6.2 0 0 1.5.6 1.4 2.3 0 0 .7-3.4 5.2-2.5 0 0-2.4 2.2-2.5 3.2-.2 1-2.2 2.7-2.3 3.3 0 .5-.2 1.5-.8 2.1-.6.6-.7 1.6-.7 2 0 .2 0 1.6-.8 2"/>
+    <path id="path724" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M340.2 234.1s-.8-2-2.5-1.3-1.5 1-3 1c0 0-.6-1.9.2-2.7 0 0-2.4-.9-3-3 0 0 1.3-1.5 4.4-.9 0 0-.1-1.5.3-2.2 0 0 3.3 1 3.3 2.9 0 0-1-3.6.8-6.2 0 0 1.5.6 1.4 2.3 0 0 .7-3.4 5.2-2.5 0 0-2.4 2.2-2.5 3.2-.2 1-2.2 2.7-2.3 3.3 0 .5-.2 1.5-.8 2.1-.6.6-.7 1.6-.7 2 0 .2 0 1.6-.8 2z"/>
+    <path id="path725" fill="#fff" d="M337.7 230.1a3 3 0 014.8-1.8c0 .5-.3 1.3-.8 1.8-.6.6-.7 1.6-.7 2a3 3 0 01-.4 1.6h-.5a3 3 0 01-2.4-3.6"/>
+    <path id="path726" fill="none" stroke="#000" stroke-width=".4" d="M337.7 230.1a3 3 0 014.8-1.8c0 .5-.3 1.3-.8 1.8-.6.6-.7 1.6-.7 2a3 3 0 01-.4 1.6h-.5a3 3 0 01-2.4-3.6z"/>
+    <path id="path727" fill="#fff" d="M339 230.4a1.7 1.7 0 013-.7l-.3.4c-.6.6-.7 1.6-.7 2v.2h-.6c-1-.1-1.5-1-1.3-2"/>
+    <path id="path728" fill="none" stroke="#000" stroke-width=".3" d="M339 230.4a1.7 1.7 0 013-.7l-.3.4c-.6.6-.7 1.6-.7 2v.2h-.6c-1-.1-1.5-1-1.3-2z"/>
+    <path id="path729" fill="#fc0" fill-opacity="1" d="M252.2 233.3s.8-2 2.5-1.2c1.6.9 1.4 1.1 3 1.1 0 0 .6-1.8 0-2.6 0 0 2.4-.7 3-2.8 0 0-1.2-1.6-4.3-1.2 0 0 .2-1.5-.2-2.2 0 0-3.3.8-3.4 2.6 0 0 1.2-3.5-.4-6.2 0 0-1.6.6-1.6 2.2 0 0-.5-3.4-5-2.7 0 0 2.3 2.3 2.3 3.3s2 2.8 2 3.4c0 .5.2 1.6.8 2.2.6.6.6 1.6.5 2 0 .2 0 1.6.8 2"/>
+    <path id="path730" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M252.2 233.3s.8-2 2.5-1.2c1.6.9 1.4 1.1 3 1.1 0 0 .6-1.8 0-2.6 0 0 2.4-.7 3-2.8 0 0-1.2-1.6-4.3-1.2 0 0 .2-1.5-.2-2.2 0 0-3.3.8-3.4 2.6 0 0 1.2-3.5-.4-6.2 0 0-1.6.6-1.6 2.2 0 0-.5-3.4-5-2.7 0 0 2.3 2.3 2.3 3.3s2 2.8 2 3.4c0 .5.2 1.6.8 2.2.6.6.6 1.6.5 2 0 .2 0 1.6.8 2z"/>
+    <path id="path731" fill="#fff" d="M254.8 229.4a3 3 0 00-4.6-2c0 .5.2 1.3.7 1.8.6.6.6 1.6.5 2 0 .2 0 1 .4 1.7h.4a3 3 0 002.6-3.5"/>
+    <path id="path732" fill="none" stroke="#000" stroke-width=".4" d="M254.8 229.4a3 3 0 00-4.6-2c0 .5.2 1.3.7 1.8.6.6.6 1.6.5 2 0 .2 0 1 .4 1.7h.4a3 3 0 002.6-3.5z"/>
+    <path id="path733" fill="#fff" d="M253.5 229.6a1.7 1.7 0 00-3-.9l.4.5c.6.6.6 1.6.5 2v.2h.7c.9 0 1.5-.9 1.4-1.8"/>
+    <path id="path734" fill="none" stroke="#000" stroke-width=".3" d="M253.5 229.6a1.7 1.7 0 00-3-.9l.4.5c.6.6.6 1.6.5 2v.2h.7c.9 0 1.5-.9 1.4-1.8z"/>
+    <path id="path735" fill="none" stroke="#000" stroke-width="1.5" d="M257.2 251.6s33.8-13.2 76.4.3"/>
+    <path id="path736" fill="none" stroke="#000" stroke-width=".5" d="M338.4 241.1c-47.1-15-84.7-.8-84.7-.8"/>
+    <path id="path737" fill="red" d="M296 237.8l-3.8 1.9 3.4 2.1 4-2-3.6-2"/>
+    <path id="path738" fill="none" stroke="#000" stroke-width=".5" d="M296 237.8l-3.8 1.9 3.4 2.1 4-2-3.6-2"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es.svg
new file mode 100644
index 0000000..d7030eb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/es.svg
@@ -0,0 +1,547 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es" viewBox="0 0 512 512">
+  <path fill="#AA151B" d="M0 0h512v512H0z"/>
+  <path fill="#F1BF00" d="M0 128h512v256H0z"/>
+  <path fill="#ad1519" d="M171.7 227.6s-.5 0-.8-.2a12.1 12.1 0 01-1.1-1l-.7-.5-.7-.9s-.7-1.2-.4-2c.4-1 1-1.3 1.5-1.6.5-.3 1.6-.6 1.6-.6l1.2-.5 1.3-.3.6-.3.9-.1 1.1-.3 1.7.1h5.1a41 41 0 003.6 1.2c.6.1 1.9.3 2.4.6.6.3 1 .8 1.3 1.1.3.4.3.8.4 1.1v1.1l-.5.9-.6 1-.8.7s-.6.5-1.1.5c-.5 0-5.1-.9-8.2-.9-3 0-7.8.9-7.8.9"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M171.7 227.6s-.5 0-.8-.2a12.1 12.1 0 01-1.1-1l-.7-.5-.7-.9s-.7-1.2-.4-2c.4-1 1-1.3 1.5-1.6.5-.3 1.6-.6 1.6-.6l1.2-.5 1.3-.3.6-.3.9-.1 1.1-.3 1.7.1h5.1a41 41 0 003.6 1.2c.6.1 1.9.3 2.4.6.6.3 1 .8 1.3 1.1.3.4.3.8.4 1.1v1.1l-.5.9-.6 1-.8.7s-.6.5-1.1.5c-.5 0-5.1-.9-8.2-.9-3 0-7.8.9-7.8.9z"/>
+  <path fill="#c8b100" d="M178.2 220.9c0-1.5.6-2.6 1.4-2.6.8 0 1.4 1.1 1.4 2.6 0 1.4-.6 2.5-1.4 2.5-.8 0-1.4-1.1-1.4-2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M178.2 220.9c0-1.5.6-2.6 1.4-2.6.8 0 1.4 1.1 1.4 2.6 0 1.4-.6 2.5-1.4 2.5-.8 0-1.4-1.1-1.4-2.5z"/>
+  <path fill="#c8b100" d="M179 220.9c0-1.3.3-2.4.6-2.4.4 0 .7 1 .7 2.4 0 1.3-.3 2.3-.7 2.3-.3 0-.6-1-.6-2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179 220.9c0-1.3.3-2.4.6-2.4.4 0 .7 1 .7 2.4 0 1.3-.3 2.3-.7 2.3-.3 0-.6-1-.6-2.3z"/>
+  <path fill="#c8b100" d="M178.7 218.2c0-.5.4-1 .9-1s1 .5 1 1-.5.9-1 .9a1 1 0 01-1-1"/>
+  <path fill="#c8b100" d="M180.3 217.8v.6h-1.5v-.6h.5v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M180.3 217.8v.6h-1.5v-.6h.5v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h.4"/>
+  <path fill="#c8b100" d="M181 217.8v.6h-2.7v-.6h1v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M181 217.8v.6h-2.7v-.6h1v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.9 217.3a.9.9 0 01.6.9c0 .5-.4.9-.9.9s-1-.4-1-1c0-.3.4-.7.8-.8"/>
+  <path fill="#c8b100" d="M179.6 227.4h-5v-1.2l-.3-1.2-.2-1.6c-1.4-1.8-2.6-3-3-2.7 0-.4.2-.6.4-.8 1.2-.7 3.7 1 5.6 3.9l.5.7h4l.5-.7c1.9-2.9 4.4-4.6 5.6-3.9.2.2.4.4.5.8-.5-.3-1.7.9-3 2.7l-.3 1.6-.2 1.2-.1 1.2h-5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.6 227.4h-5v-1.2l-.3-1.2-.2-1.6c-1.4-1.8-2.6-3-3-2.7 0-.4.2-.6.4-.8 1.2-.7 3.7 1 5.6 3.9l.5.7h4l.5-.7c1.9-2.9 4.4-4.6 5.6-3.9.2.2.4.4.5.8-.5-.3-1.7.9-3 2.7l-.3 1.6-.2 1.2-.1 1.2h-5z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M171.3 220.6c1-.5 3 1.2 4.8 3.8m11.9-3.8c-1-.5-3.1 1.2-4.9 3.8"/>
+  <path fill="#c8b100" d="M172.3 229.6a4.8 4.8 0 00-.6-1c2-.7 4.8-1 7.9-1 3 0 5.9.3 7.9 1l-.6.9-.3.8c-1.8-.6-4.2-.8-7-.8-2.9 0-5.6.3-7 .8l-.3-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M172.3 229.6a4.8 4.8 0 00-.6-1c2-.7 4.8-1 7.9-1 3 0 5.9.3 7.9 1l-.6.9-.3.8c-1.8-.6-4.2-.8-7-.8-2.9 0-5.6.3-7 .8l-.3-.7"/>
+  <path fill="#c8b100" d="M179.6 232.2a27 27 0 006.2-.7c.7-.2 1.1-.5 1-.8 0-.2-.1-.3-.3-.4a25.8 25.8 0 00-7-.9c-2.6 0-5.3.4-6.8.9-.2 0-.3.2-.4.4 0 .3.4.6 1 .8 1 .3 3.8.7 6.3.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.6 232.2a27 27 0 006.2-.7c.7-.2 1.1-.5 1-.8 0-.2-.1-.3-.3-.4a25.8 25.8 0 00-7-.9c-2.6 0-5.3.4-6.8.9-.2 0-.3.2-.4.4 0 .3.4.6 1 .8 1 .3 3.8.7 6.3.7z"/>
+  <path fill="#c8b100" d="M187.6 227.4l-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.8.7-1.5.6c-.6 0-1-.6-1-.6s-.8.5-1.4.5c-.7 0-1.3-.9-1.3-.9s-.6.9-1.2 1c-.7 0-1.2-.6-1.2-.6s-.3.6-1 .7c-.9.1-1.6-.6-1.6-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.3.2.2.4a32.5 32.5 0 0115.5.1l.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M187.6 227.4l-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.8.7-1.5.6c-.6 0-1-.6-1-.6s-.8.5-1.4.5c-.7 0-1.3-.9-1.3-.9s-.6.9-1.2 1c-.7 0-1.2-.6-1.2-.6s-.3.6-1 .7c-.9.1-1.6-.6-1.6-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.3.2.2.4a32.5 32.5 0 0115.5.1l.2-.6z"/>
+  <path fill="#c8b100" d="M179.6 224.8h.3a1.1 1.1 0 001 1.5c.6 0 1-.3 1.2-.8l.1-.4v.5c.1.5.6.9 1.2.9a1.1 1.1 0 001.1-1.1v-.1l.4-.4.2.4a1 1 0 00-.1.5c0 .6.5 1 1 1 .4 0 .8-.1 1-.4l.2-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1l-1 .3c-.3-.1-.5-.4-.7-.7a1.6 1.6 0 01-.8.3c-.6 0-1.2-.4-1.4-1a1.6 1.6 0 01-1.2.6 2 2 0 01-1.3-.6 1.6 1.6 0 01-1.1.4c-.6 0-1.1-.3-1.4-.7-.3.4-.8.7-1.4.7a1.6 1.6 0 01-1-.4c-.4.3-.9.6-1.4.6a1.6 1.6 0 01-1.2-.5c-.2.5-.8.8-1.4.8-.3 0-.6 0-.8-.2-.1.3-.4.6-.7.7a2 2 0 01-1-.3 4.4 4.4 0 01-1-1.1v-.5l.9.8c.5.4.9.4.9.4.4 0 .5-.4.5-.7v-.4l.2.3c.2.3.6.5 1 .5.5 0 1-.5 1-1a1 1 0 000-.6l.1-.4.4.4c0 .7.5 1.2 1 1.2.7 0 1.2-.4 1.2-1v-.3l.2.3c.2.5.6.8 1.1.8.7 0 1.2-.5 1.2-1.1a1 1 0 00-.1-.4h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.6 224.8h.3a1.1 1.1 0 001 1.5c.6 0 1-.3 1.2-.8l.1-.4v.5c.1.5.6.9 1.2.9a1.1 1.1 0 001.1-1.1v-.1l.4-.4.2.4a1 1 0 00-.1.5c0 .6.5 1 1 1 .4 0 .8-.1 1-.4l.2-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1l-1 .3c-.3-.1-.5-.4-.7-.7a1.6 1.6 0 01-.8.3c-.6 0-1.2-.4-1.4-1a1.6 1.6 0 01-1.2.6 2 2 0 01-1.3-.6 1.6 1.6 0 01-1.1.4c-.6 0-1.1-.3-1.4-.7-.3.4-.8.7-1.4.7a1.6 1.6 0 01-1-.4c-.4.3-.9.6-1.4.6a1.6 1.6 0 01-1.2-.5c-.2.5-.8.8-1.4.8-.3 0-.6 0-.8-.2-.1.3-.4.6-.7.7a2 2 0 01-1-.3 4.4 4.4 0 01-1-1.1v-.5l.9.8c.5.4.9.4.9.4.4 0 .5-.4.5-.7v-.4l.2.3c.2.3.6.5 1 .5.5 0 1-.5 1-1a1 1 0 000-.6l.1-.4.4.4c0 .7.5 1.2 1 1.2.7 0 1.2-.4 1.2-1v-.3l.2.3c.2.5.6.8 1.1.8.7 0 1.2-.5 1.2-1.1a1 1 0 00-.1-.4h.3z"/>
+  <path fill="#c8b100" d="M179.6 227.6c-3.1 0-5.9.3-7.9 1l-.3-.2c0-.2 0-.3.2-.4 2-.6 4.8-1 8-1s6 .4 8 1l.2.3c0 .2-.2.3-.3.2-2-.6-4.8-1-8-1"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M179.6 227.6c-3.1 0-5.9.3-7.9 1l-.3-.2c0-.2 0-.3.2-.4 2-.6 4.8-1 8-1s6 .4 8 1l.2.3c0 .2-.2.3-.3.2-2-.6-4.8-1-8-1z"/>
+  <path fill="#fff" d="M176.6 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M176.6 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4z"/>
+  <path fill="#ad1519" d="M179.6 228.8h-1a.3.3 0 01-.3-.3c0-.1.1-.3.3-.3h2a.3.3 0 01.4.3.3.3 0 01-.4.3h-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.6 228.8h-1a.3.3 0 01-.3-.3c0-.1.1-.3.3-.3h2a.3.3 0 01.4.3.3.3 0 01-.4.3h-1"/>
+  <path fill="#058e6e" d="M174.7 229.2h-.7c-.2.1-.4 0-.4-.2a.3.3 0 01.2-.3l.7-.1.8-.2c.2 0 .3.1.4.3 0 .2-.1.3-.3.4h-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M174.7 229.2h-.7c-.2.1-.4 0-.4-.2a.3.3 0 01.2-.3l.7-.1.8-.2c.2 0 .3.1.4.3 0 .2-.1.3-.3.4h-.8"/>
+  <path fill="#ad1519" d="M171.8 229.7l.3-.5.7.1-.4.6-.6-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M171.8 229.7l.3-.5.7.1-.4.6-.6-.2"/>
+  <path fill="#fff" d="M181.7 228.7c0-.3.2-.5.4-.5.3 0 .5.2.5.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M181.7 228.7c0-.3.2-.5.4-.5.3 0 .5.2.5.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4z"/>
+  <path fill="#058e6e" d="M184.5 229.2h.8c.1.1.3 0 .3-.2a.3.3 0 00-.2-.3l-.8-.1-.7-.2c-.2 0-.3.1-.4.3 0 .2.1.3.3.4h.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M184.5 229.2h.8c.1.1.3 0 .3-.2a.3.3 0 00-.2-.3l-.8-.1-.7-.2c-.2 0-.3.1-.4.3 0 .2.1.3.3.4h.7"/>
+  <path fill="#ad1519" d="M187.3 229.7l-.2-.5h-.7l.3.6h.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M187.3 229.7l-.2-.5h-.7l.3.6h.7"/>
+  <path fill="#ad1519" d="M179.6 231.6c-2.5 0-4.8-.2-6.5-.7a27.2 27.2 0 016.5-.7c2.5 0 4.7.3 6.5.7-1.8.5-4 .7-6.5.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M179.6 231.6c-2.5 0-4.8-.2-6.5-.7a27.2 27.2 0 016.5-.7c2.5 0 4.7.3 6.5.7-1.8.5-4 .7-6.5.7z"/>
+  <path fill="#c8b100" d="M187.4 226.2c.1-.2 0-.4 0-.4-.2 0-.4 0-.5.2 0 .2 0 .4.2.5.1 0 .3-.1.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M187.4 226.2c.1-.2 0-.4 0-.4-.2 0-.4 0-.5.2 0 .2 0 .4.2.5.1 0 .3-.1.3-.3z"/>
+  <path fill="#c8b100" d="M182.5 225.2c0-.2 0-.3-.2-.4-.2 0-.3.2-.3.4s0 .3.2.4c.1 0 .3-.2.3-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M182.5 225.2c0-.2 0-.3-.2-.4-.2 0-.3.2-.3.4s0 .3.2.4c.1 0 .3-.2.3-.4z"/>
+  <path fill="#c8b100" d="M176.7 225.2c0-.2 0-.3.2-.4.2 0 .3.2.3.4s0 .3-.2.4l-.3-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M176.7 225.2c0-.2 0-.3.2-.4.2 0 .3.2.3.4s0 .3-.2.4l-.3-.4z"/>
+  <path fill="#c8b100" d="M171.8 226.2c-.1-.2 0-.4.1-.4s.3 0 .4.2c0 .2 0 .4-.2.5-.1 0-.3-.1-.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M171.8 226.2c-.1-.2 0-.4.1-.4s.3 0 .4.2c0 .2 0 .4-.2.5-.1 0-.3-.1-.3-.3z"/>
+  <path fill="#c8b100" d="M179.6 222.4l-.9.5.7 1.4.2.2.2-.2.7-1.4-1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179.6 222.4l-.9.5.7 1.4.2.2.2-.2.7-1.4-1-.5"/>
+  <path fill="#c8b100" d="M177.7 224.5l.4.6 1.3-.4.2-.2-.2-.2-1.3-.4-.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M177.7 224.5l.4.6 1.3-.4.2-.2-.2-.2-1.3-.4-.4.6"/>
+  <path fill="#c8b100" d="M181.5 224.5l-.4.6-1.3-.4-.2-.2.1-.2 1.4-.4.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M181.5 224.5l-.4.6-1.3-.4-.2-.2.1-.2 1.4-.4.4.6"/>
+  <path fill="#c8b100" d="M173.9 223l-.7.6.9 1.2.2.1.2-.2.3-1.4-1-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M173.9 223l-.7.6.9 1.2.2.1.2-.2.3-1.4-1-.3"/>
+  <path fill="#c8b100" d="M172.4 225.3l.5.5 1.3-.7v-.4h-1.5l-.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M172.4 225.3l.5.5 1.3-.7v-.4h-1.5l-.3.6"/>
+  <path fill="#c8b100" d="M176.2 224.6l-.3.6-1.4-.1-.2-.2.1-.2 1.3-.7.5.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M176.2 224.6l-.3.6-1.4-.1-.2-.2.1-.2 1.3-.7.5.6"/>
+  <path fill="#c8b100" d="M171 225.5v.7l-1.5.1h-.2v-.3l1.1-1 .6.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M171 225.5v.7l-1.5.1h-.2v-.3l1.1-1 .6.5"/>
+  <path fill="#c8b100" d="M173.8 225c0-.4.2-.6.5-.6s.5.2.5.5a.5.5 0 01-.5.5.5.5 0 01-.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M173.8 225c0-.4.2-.6.5-.6s.5.2.5.5a.5.5 0 01-.5.5.5.5 0 01-.5-.5z"/>
+  <path fill="#c8b100" d="M185.3 223l.7.6-.9 1.2-.2.1-.2-.2-.3-1.4 1-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M185.3 223l.7.6-.9 1.2-.2.1-.2-.2-.3-1.4 1-.3"/>
+  <path fill="#c8b100" d="M186.8 225.3l-.6.5-1.2-.7-.1-.2.2-.2h1.4l.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M186.8 225.3l-.6.5-1.2-.7-.1-.2.2-.2h1.4l.3.6"/>
+  <path fill="#c8b100" d="M183 224.6l.3.6 1.4-.1.2-.2-.1-.2-1.3-.7-.5.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M183 224.6l.3.6 1.4-.1.2-.2-.1-.2-1.3-.7-.5.6"/>
+  <path fill="#c8b100" d="M188 225.5v.7l1.5.1h.2v-.3l-1.1-1-.6.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M188 225.5v.7l1.5.1h.2v-.3l-1.1-1-.6.5"/>
+  <path fill="#c8b100" d="M179 224.5a.5.5 0 01.6-.5c.3 0 .5.2.5.5a.5.5 0 01-.5.4.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M179 224.5a.5.5 0 01.6-.5c.3 0 .5.2.5.5a.5.5 0 01-.5.4.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M184.4 225a.5.5 0 01.5-.6.5.5 0 01.5.5.5.5 0 01-.5.5.5.5 0 01-.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M184.4 225a.5.5 0 01.5-.6.5.5 0 01.5.5.5.5 0 01-.5.5.5.5 0 01-.5-.5z"/>
+  <path fill="#c8b100" d="M169.1 226.3l-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.3 0 .4.4v1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M169.1 226.3l-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.3 0 .4.4v1z"/>
+  <path fill="#c8b100" d="M169.1 226l.6.1c.2.2.2.4 0 .5s-.3.1-.4 0c-.2-.2-.3-.4-.2-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M169.1 226l.6.1c.2.2.2.4 0 .5s-.3.1-.4 0c-.2-.2-.3-.4-.2-.5z"/>
+  <path fill="#c8b100" d="M189.9 226.3l.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 00-.5.2v-.2s-.3 0-.4.4v.7l.1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M189.9 226.3l.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 00-.5.2v-.2s-.3 0-.4.4v.7l.1.3z"/>
+  <path fill="#c8b100" d="M189.9 226l-.5.1c-.2.2-.3.4-.2.5h.6c.2-.2.2-.4.1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M189.9 226l-.5.1c-.2.2-.3.4-.2.5h.6c.2-.2.2-.4.1-.5z"/>
+  <path fill="#c8b100" d="M168.2 238h22.9v-6h-22.9v6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M168.2 238h22.9v-6h-22.9v6z"/>
+  <path fill="#c8b100" d="M170.6 242l.5-.1h17.5c-.6-.2-1-.7-1-1.3 0-.6.5-1.2 1-1.4a1.8 1.8 0 01-.5.1h-17a1.5 1.5 0 01-.5 0c.7.2 1 .7 1 1.3 0 .6-.4 1.1-1 1.3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M170.6 242l.5-.1h17.5c-.6-.2-1-.7-1-1.3 0-.6.5-1.2 1-1.4a1.8 1.8 0 01-.5.1h-17a1.5 1.5 0 01-.5 0c.7.2 1 .7 1 1.3 0 .6-.4 1.1-1 1.3z"/>
+  <path fill="#c8b100" d="M171 241.9h17.2c.5 0 1 .3 1 .8 0 .4-.5.8-1 .8H171c-.6 0-1.1-.4-1.1-.8 0-.5.5-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M171 241.9h17.2c.5 0 1 .3 1 .8 0 .4-.5.8-1 .8H171c-.6 0-1.1-.4-1.1-.8 0-.5.5-.8 1-.8z"/>
+  <path fill="#c8b100" d="M171 238h17.2c.5 0 1 .2 1 .6 0 .4-.5.7-1 .7H171c-.6 0-1-.3-1-.7 0-.4.4-.7 1-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M171 238h17.2c.5 0 1 .2 1 .6 0 .4-.5.7-1 .7H171c-.6 0-1-.3-1-.7 0-.4.4-.7 1-.7z"/>
+  <path fill="#005bbf" d="M195.6 338.6a8.7 8.7 0 01-4-.9 8.9 8.9 0 00-4-.8c-1.6 0-3 .3-4 .8a8.8 8.8 0 01-4 1 8.7 8.7 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-3.9.8c-1 .6-2.4 1-4 1v2.4a8.9 8.9 0 004-1 8.8 8.8 0 014-.8 9 9 0 013.9.9 9 9 0 004 .9 9 9 0 004-.9 9 9 0 014-.9c1.5 0 3 .4 4 .9a8.6 8.6 0 004 .9v-2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M195.6 338.6a8.7 8.7 0 01-4-.9 8.9 8.9 0 00-4-.8c-1.6 0-3 .3-4 .8a8.8 8.8 0 01-4 1 8.7 8.7 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-3.9.8c-1 .6-2.4 1-4 1v2.4a8.9 8.9 0 004-1 8.8 8.8 0 014-.8 9 9 0 013.9.9 9 9 0 004 .9 9 9 0 004-.9 9 9 0 014-.9c1.5 0 3 .4 4 .9a8.6 8.6 0 004 .9v-2.5z"/>
+  <path fill="#ccc" d="M195.6 341a8.7 8.7 0 01-4-.8 8.9 8.9 0 00-4-.8c-1.6 0-3 .3-4 .8a9 9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.8c-1.5 0-2.9.3-3.9.9a9 9 0 01-4 .9v2.4a8.9 8.9 0 004-.9 8.6 8.6 0 014-.8 9 9 0 013.9.8 8.7 8.7 0 004 1 8.9 8.9 0 004-1 9 9 0 014-.8 8.9 8.9 0 014 .9 9 9 0 004 .9V341"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M195.6 341a8.7 8.7 0 01-4-.8 8.9 8.9 0 00-4-.8c-1.6 0-3 .3-4 .8a9 9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.8c-1.5 0-2.9.3-3.9.9a9 9 0 01-4 .9v2.4a8.9 8.9 0 004-.9 8.6 8.6 0 014-.8 9 9 0 013.9.8 8.7 8.7 0 004 1 8.9 8.9 0 004-1 9 9 0 014-.8 8.9 8.9 0 014 .9 9 9 0 004 .9V341"/>
+  <path fill="#005bbf" d="M195.6 343.6a8.7 8.7 0 01-4-1 8.9 8.9 0 00-4-.8 9 9 0 00-4 .9 8.9 8.9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-3.9.8 8.9 8.9 0 01-4 1v2.4c1.5 0 3-.3 4-.9a8.7 8.7 0 014-.8 9 9 0 013.9.8 9 9 0 008 0 9 9 0 014-.8c1.5 0 3 .3 4 .8 1 .6 2.4 1 4 1v-2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M195.6 343.6a8.7 8.7 0 01-4-1 8.9 8.9 0 00-4-.8 9 9 0 00-4 .9 8.9 8.9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-3.9.8 8.9 8.9 0 01-4 1v2.4c1.5 0 3-.3 4-.9a8.7 8.7 0 014-.8 9 9 0 013.9.8 9 9 0 008 0 9 9 0 014-.8c1.5 0 3 .3 4 .8 1 .6 2.4 1 4 1v-2.6"/>
+  <path fill="#ccc" d="M195.6 348.5a8.6 8.6 0 01-4-1 9 9 0 00-4-.7 9 9 0 00-4 .8 8.9 8.9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.7 9 9 0 00-3.9.8 9 9 0 01-4 .9V346a9 9 0 004-.9 8.8 8.8 0 014-.8 9 9 0 013.9.8c1 .6 2.4 1 4 1a9 9 0 004-1 9 9 0 014-.8 9 9 0 014 .8c1 .6 2.4 1 4 1v2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M195.6 348.5a8.6 8.6 0 01-4-1 9 9 0 00-4-.7 9 9 0 00-4 .8 8.9 8.9 0 01-4 .9 8.7 8.7 0 01-4-1 9 9 0 00-4-.7 9 9 0 00-3.9.8 9 9 0 01-4 .9V346a9 9 0 004-.9 8.8 8.8 0 014-.8 9 9 0 013.9.8c1 .6 2.4 1 4 1a9 9 0 004-1 9 9 0 014-.8 9 9 0 014 .8c1 .6 2.4 1 4 1v2.4"/>
+  <path fill="#005bbf" d="M195.6 351a8.7 8.7 0 01-4-1 8.8 8.8 0 00-4-.8 9 9 0 00-4 .9 9 9 0 01-4 .8 8.7 8.7 0 01-4-.9 9 9 0 00-4-.8 9 9 0 00-3.9.8c-1 .6-2.4 1-4 1v-2.5c1.5 0 3-.4 4-1a8.8 8.8 0 014-.7 9 9 0 013.9.8 9 9 0 004 .9 8.9 8.9 0 004-.9 9 9 0 014-.8 9 9 0 014 .8 9 9 0 004 .9v2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M195.6 351a8.7 8.7 0 01-4-1 8.8 8.8 0 00-4-.8 9 9 0 00-4 .9 9 9 0 01-4 .8 8.7 8.7 0 01-4-.9 9 9 0 00-4-.8 9 9 0 00-3.9.8c-1 .6-2.4 1-4 1v-2.5c1.5 0 3-.4 4-1a8.8 8.8 0 014-.7 9 9 0 013.9.8 9 9 0 004 .9 8.9 8.9 0 004-.9 9 9 0 014-.8 9 9 0 014 .8 9 9 0 004 .9v2.5z"/>
+  <path fill="#c8b100" d="M170.6 328.5l.2.6c0 1.5-1.3 2.7-3 2.7h23.6c-1.6 0-2.9-1.2-2.9-2.7l.1-.6a1.4 1.4 0 01-.5 0h-17.5"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M170.6 328.5l.2.6c0 1.5-1.3 2.7-3 2.7h23.6c-1.6 0-2.9-1.2-2.9-2.7l.1-.6a1.4 1.4 0 01-.5 0h-17.5z"/>
+  <path fill="#c8b100" d="M171 327h17.2c.5 0 1 .3 1 .7 0 .5-.5.8-1 .8H171c-.6 0-1.1-.3-1.1-.8 0-.4.5-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M171 327h17.2c.5 0 1 .3 1 .7 0 .5-.5.8-1 .8H171c-.6 0-1.1-.3-1.1-.8 0-.4.5-.8 1-.8z"/>
+  <path fill="#c8b100" d="M168 337.8h23.3v-6H168v6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M168 337.8h23.3v-6H168v6z"/>
+  <path fill="#ad1519" d="M166 305.8c-2.2 1.3-3.8 2.7-3.5 3.4 0 .6.8 1 1.9 1.8 1.6 1.1 2.6 3.2 1.8 4.1a5.9 5.9 0 00-.1-9.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M166 305.8c-2.2 1.3-3.8 2.7-3.5 3.4 0 .6.8 1 1.9 1.8 1.6 1.1 2.6 3.2 1.8 4.1a5.9 5.9 0 00-.1-9.3z"/>
+  <path fill="#ccc" d="M171.3 326h16.6v-81.6h-16.6V326z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M183.1 244.5V326m2-81.4V326m-13.8 0h16.6v-81.5h-16.6V326z"/>
+  <path fill="#ad1519" d="M205 275a52.8 52.8 0 00-17-3 51.6 51.6 0 00-8 .8c-9.9 1.7-17.5 5.6-16.9 8.9v.2l-3.7-8.7c-.7-3.6 7.7-8 18.8-9.8a57 57 0 019.8-.8c7 0 13.2.9 16.9 2.3v10"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M205 275a52.8 52.8 0 00-17-3 51.6 51.6 0 00-8 .8c-9.9 1.7-17.5 5.6-16.9 8.9v.2l-3.7-8.7c-.7-3.6 7.7-8 18.8-9.8a57 57 0 019.8-.8c7 0 13.2.9 16.9 2.3v10"/>
+  <path fill="#ad1519" d="M171.3 285.1c-4.7-.3-7.8-1.5-8.2-3.5-.3-1.5 1.3-3.2 4-4.7 1.3.1 2.7.3 4.2.3v8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M171.3 285.1c-4.7-.3-7.8-1.5-8.2-3.5-.3-1.5 1.3-3.2 4-4.7 1.3.1 2.7.3 4.2.3v8"/>
+  <path fill="#ad1519" d="M188 279c2.8.4 5 1 6 2l.2.1c.5 1-2 3.3-6.3 5.8v-8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M188 279c2.8.4 5 1 6 2l.2.1c.5 1-2 3.3-6.3 5.8v-8"/>
+  <path fill="#ad1519" d="M160.9 300.9c-.4-1.3 4-4 10.4-6.3 3-1 5.3-2.1 8.3-3.4 8.9-4 15.4-8.4 14.6-10l-.1-.2c.5.4 1.2 8.4 1.2 8.4.8 1.5-5.2 6-13.3 9.8-2.6 1.3-8.1 3.3-10.7 4.2-4.7 1.6-9.3 4.7-8.9 5.8l-1.5-8.3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M160.9 300.9c-.4-1.3 4-4 10.4-6.3 3-1 5.3-2.1 8.3-3.4 8.9-4 15.4-8.4 14.6-10l-.1-.2c.5.4 1.2 8.4 1.2 8.4.8 1.5-5.2 6-13.3 9.8-2.6 1.3-8.1 3.3-10.7 4.2-4.7 1.6-9.3 4.7-8.9 5.8l-1.5-8.3z"/>
+  <path fill="#c8b100" d="M170.1 271c2-.7 3.4-1.6 2.7-3.2-.4-1-1.4-1.2-3-.7l-2.8 1 2.5 6.2.9-.3.8-.3-1-2.7zm-1.2-3l.7-.2c.6-.3 1.3 0 1.5.8.3.5.2 1.1-.5 1.6a4.7 4.7 0 01-.7.3l-1-2.5m7.7-2.6l-.8.3h-1l1.5 6.5 4.5-.9-.2-.4v-.4l-2.7.7-1.3-5.8m9 5.6l2.9-6.8a5.4 5.4 0 01-1.1 0 58.5 58.5 0 01-2 5c-.8-1.6-1.7-3.1-2.4-4.7l-1 .1h-1.1l3.7 6.5.5-.1h.5m9.4-5l.5-.9a3.7 3.7 0 00-1.9-.6c-1.8-.2-2.8.6-3 1.7-.2 2.3 3.4 2.1 3.3 3.7-.1.6-.8.9-1.6.8-.8 0-1.4-.5-1.5-1.2h-.2a8 8 0 01-.5 1.2c.5.3 1.2.5 1.9.6 1.8.2 3.3-.6 3.4-1.8.2-2.2-3.4-2.3-3.3-3.6 0-.6.5-1 1.4-.8.7 0 1.1.4 1.3 1h.2"/>
+  <path fill="#ad1519" d="M332.4 225.7s-.8.8-1.3 1c-.6 0-1.3-.6-1.3-.6s-.5.5-1.1.7c-.6.1-1.4-.7-1.4-.7s-.6.8-1.2 1c-.5.2-1.1-.2-1.1-.2s-.2.4-.7.6h-.5l-.6-.5-.7-.7-.6-.2-.3-1.1-.1-.6c-.1-.7.9-1.4 2.4-1.8.8-.2 1.5-.1 2 0a6 6 0 013.3-.8 6 6 0 013.2.7 5.9 5.9 0 013-.7c1.5 0 2.7.3 3.3.8a4.2 4.2 0 012.1 0c1.5.4 2.5 1.1 2.4 1.8v.6l-.4 1-.6.3-.7.8-.6.3s-.3.2-.5.1c-.5-.2-.7-.6-.7-.6s-.6.4-1.2.2c-.5-.2-1-1-1-1s-.9.8-1.5.7c-.6-.2-1.1-.7-1.1-.7s-.7.6-1.2.5c-.6 0-1.4-.9-1.4-.9"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.4 225.7s-.8.8-1.3 1c-.6 0-1.3-.6-1.3-.6s-.5.5-1.1.7c-.6.1-1.4-.7-1.4-.7s-.6.8-1.2 1c-.5.2-1.1-.2-1.1-.2s-.2.4-.7.6h-.5l-.6-.5-.7-.7-.6-.2-.3-1.1-.1-.6c-.1-.7.9-1.4 2.4-1.8.8-.2 1.5-.1 2 0a6 6 0 013.3-.8 6 6 0 013.2.7 5.9 5.9 0 013-.7c1.5 0 2.7.3 3.3.8a4.2 4.2 0 012.1 0c1.5.4 2.5 1.1 2.4 1.8v.6l-.4 1-.6.3-.7.8-.6.3s-.3.2-.5.1c-.5-.2-.7-.6-.7-.6s-.6.4-1.2.2c-.5-.2-1-1-1-1s-.9.8-1.5.7c-.6-.2-1.1-.7-1.1-.7s-.7.6-1.2.5c-.6 0-1.4-.9-1.4-.9z"/>
+  <path fill="#c8b100" d="M331 221.4c0-1.1.6-2 1.3-2 .8 0 1.4.9 1.4 2s-.6 2-1.4 2c-.8 0-1.4-.9-1.4-2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M331 221.4c0-1.1.6-2 1.3-2 .8 0 1.4.9 1.4 2s-.6 2-1.4 2c-.8 0-1.4-.9-1.4-2z"/>
+  <path fill="#c8b100" d="M331.7 221.4c0-1 .3-1.9.7-1.9.3 0 .6.9.6 1.9 0 1-.3 1.8-.7 1.8-.3 0-.6-.8-.6-1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M331.7 221.4c0-1 .3-1.9.7-1.9.3 0 .6.9.6 1.9 0 1-.3 1.8-.7 1.8-.3 0-.6-.8-.6-1.8z"/>
+  <path fill="#c8b100" d="M325 229.6a4.8 4.8 0 00-.5-1c2-.7 4.7-1 7.8-1 3.1 0 6 .3 8 1l-.6.9-.4.8c-1.8-.6-4.1-.8-7-.8-2.8 0-5.6.3-7 .8l-.2-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M325 229.6a4.8 4.8 0 00-.5-1c2-.7 4.7-1 7.8-1 3.1 0 6 .3 8 1l-.6.9-.4.8c-1.8-.6-4.1-.8-7-.8-2.8 0-5.6.3-7 .8l-.2-.7"/>
+  <path fill="#c8b100" d="M332.3 232.2c2.5 0 5.3-.4 6.3-.7.7-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a25.7 25.7 0 00-6.9-.9 26 26 0 00-6.8.9c-.2 0-.4.2-.4.4 0 .3.3.6 1 .8 1 .3 3.7.7 6.2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.3 232.2c2.5 0 5.3-.4 6.3-.7.7-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a25.7 25.7 0 00-6.9-.9 26 26 0 00-6.8.9c-.2 0-.4.2-.4.4 0 .3.3.6 1 .8 1 .3 3.7.7 6.2.7z"/>
+  <path fill="#fff" d="M338.4 222.3a.5.5 0 01.4-.5c.3 0 .5.2.5.5 0 .2-.2.4-.5.4a.5.5 0 01-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M338.4 222.3a.5.5 0 01.4-.5c.3 0 .5.2.5.5 0 .2-.2.4-.5.4a.5.5 0 01-.4-.4zm-.3-1.6a.5.5 0 01.5-.4c.2 0 .4.2.4.4s-.2.5-.4.5a.5.5 0 01-.5-.4zm-1.1-1a.5.5 0 01.4-.3c.3 0 .5.1.5.4s-.2.4-.5.4a.5.5 0 01-.4-.4zm-1.5-.4c0-.2.2-.4.5-.4a.5.5 0 01.4.4.5.5 0 01-.4.5c-.3 0-.5-.2-.5-.5zm-1.5 0a.5.5 0 01.5-.4c.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 01-.5-.4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M343 225.3a3 3 0 00.2-1.1 3 3 0 00-3-3 2.8 2.8 0 00-1.3.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M337.8 223.2l.3-.9c0-1.2-1.3-2.1-2.7-2.1-.7 0-1.3.1-1.7.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M343.4 224c0-.3.2-.5.4-.5s.5.2.5.4-.2.5-.5.5c-.2 0-.4-.2-.4-.5zm-.2-1.7c0-.2.2-.4.5-.4.2 0 .4.2.4.4s-.2.4-.5.4c-.2 0-.4-.1-.4-.4zm-1-1.2a.5.5 0 01.4-.5c.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 01-.5-.4zm-1.5-.7c0-.2.3-.4.5-.4.3 0 .5.2.5.4a.5.5 0 01-.5.5.5.5 0 01-.4-.5zm-1.4 0c0-.2.2-.4.4-.4s.5.2.5.5-.2.4-.5.4-.4-.2-.4-.4z"/>
+  <path fill="#c8b100" d="M340.3 227.4l-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.7.7-1.4.6c-.7 0-1.1-.6-1.1-.6s-.7.5-1.4.5c-.6 0-1.2-.9-1.2-.9s-.7.9-1.3 1c-.6 0-1.1-.6-1.1-.6s-.3.6-1.1.7c-.8.1-1.5-.6-1.5-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.4.2.2.4a32.5 32.5 0 0115.5.1l.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M340.3 227.4l-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.7.7-1.4.6c-.7 0-1.1-.6-1.1-.6s-.7.5-1.4.5c-.6 0-1.2-.9-1.2-.9s-.7.9-1.3 1c-.6 0-1.1-.6-1.1-.6s-.3.6-1.1.7c-.8.1-1.5-.6-1.5-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.4.2.2.4a32.5 32.5 0 0115.5.1l.2-.6z"/>
+  <path fill="#fff" d="M325.3 222.3a.5.5 0 01.5-.5.5.5 0 01.4.5.5.5 0 01-.4.4c-.3 0-.5-.2-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M325.3 222.3a.5.5 0 01.5-.5.5.5 0 01.4.5.5.5 0 01-.4.4c-.3 0-.5-.2-.5-.4zm.3-1.6a.5.5 0 01.4-.4.5.5 0 01.5.4.5.5 0 01-.5.5.4.4 0 01-.4-.4zm1.1-1c0-.1.2-.3.5-.3s.5.1.5.4-.2.4-.5.4a.5.5 0 01-.5-.4zm1.5-.4c0-.2.2-.4.4-.4s.5.2.5.4c0 .3-.2.5-.5.5-.2 0-.4-.2-.4-.5zm1.5 0a.5.5 0 01.4-.4.5.5 0 01.5.5c0 .2-.2.4-.5.4a.5.5 0 01-.4-.4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M321.7 225.3a3 3 0 01-.3-1.1 3 3 0 013-3c.4 0 1 .2 1.3.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M326.9 223.2l-.3-.9c0-1.2 1.2-2.1 2.7-2.1.6 0 1.2.1 1.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M320.3 224c0-.3.2-.5.5-.5s.5.2.5.4a.5.5 0 01-.5.5c-.3 0-.5-.2-.5-.5zm.2-1.7c0-.2.2-.4.5-.4s.4.2.4.4-.2.4-.4.4a.5.5 0 01-.5-.4zm1-1.2c0-.3.3-.5.5-.5a.5.5 0 01.5.5.5.5 0 01-.5.4.5.5 0 01-.4-.4zm1.5-.7a.5.5 0 01.4-.4c.3 0 .5.2.5.4a.5.5 0 01-.5.5.5.5 0 01-.5-.5zm1.4 0c0-.2.2-.4.5-.4a.5.5 0 01.4.5c0 .2-.2.4-.4.4s-.5-.2-.5-.4z"/>
+  <path fill="#c8b100" d="M332.4 224.8h.2v.4c0 .6.5 1 1.1 1 .5 0 1-.2 1.1-.7l.2-.4v.5c0 .5.6.9 1.1.9a1.1 1.1 0 001.2-1.1.7.7 0 000-.1l.3-.4.2.4a1 1 0 000 .5c0 .6.4 1 1 1a1.1 1.1 0 001-.4l.1-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1c-.2.1-.6.3-1 .3-.3-.1-.5-.4-.6-.7a1.6 1.6 0 01-.8.3c-.7 0-1.3-.4-1.5-1a1.6 1.6 0 01-1.2.6 1.7 1.7 0 01-1.3-.6c-.3.3-.7.4-1 .4a1.7 1.7 0 01-1.5-.7 1.7 1.7 0 01-2.4.3 1.7 1.7 0 01-1.3.6c-.5 0-1-.2-1.2-.5-.2.5-.8.8-1.5.8-.3 0-.5 0-.8-.2-.1.3-.3.6-.7.7a2 2 0 01-1-.3l-1-1.1v-.5l1 .8c.4.4.8.4.8.4.4 0 .5-.4.5-.7v-.4l.3.3c.2.3.5.5.9.5.6 0 1-.5 1-1a1 1 0 000-.6l.2-.4.3.4c0 .7.5 1.2 1.1 1.2.6 0 1.1-.4 1.2-1v-.3l.2.3c.1.5.6.8 1 .8a1.1 1.1 0 001.2-1.5h.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.4 224.8h.2v.4c0 .6.5 1 1.1 1 .5 0 1-.2 1.1-.7l.2-.4v.5c0 .5.6.9 1.1.9a1.1 1.1 0 001.2-1.1.7.7 0 000-.1l.3-.4.2.4a1 1 0 000 .5c0 .6.4 1 1 1a1.1 1.1 0 001-.4l.1-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1c-.2.1-.6.3-1 .3-.3-.1-.5-.4-.6-.7a1.6 1.6 0 01-.8.3c-.7 0-1.3-.4-1.5-1a1.6 1.6 0 01-1.2.6 1.7 1.7 0 01-1.3-.6c-.3.3-.7.4-1 .4a1.7 1.7 0 01-1.5-.7 1.7 1.7 0 01-2.4.3 1.7 1.7 0 01-1.3.6c-.5 0-1-.2-1.2-.5-.2.5-.8.8-1.5.8-.3 0-.5 0-.8-.2-.1.3-.3.6-.7.7a2 2 0 01-1-.3l-1-1.1v-.5l1 .8c.4.4.8.4.8.4.4 0 .5-.4.5-.7v-.4l.3.3c.2.3.5.5.9.5.6 0 1-.5 1-1a1 1 0 000-.6l.2-.4.3.4c0 .7.5 1.2 1.1 1.2.6 0 1.1-.4 1.2-1v-.3l.2.3c.1.5.6.8 1 .8a1.1 1.1 0 001.2-1.5h.2z"/>
+  <path fill="#c8b100" d="M332.3 227.6c-3 0-5.8.3-7.8 1l-.4-.2.2-.4c2-.6 4.9-1 8-1s6 .4 8 1c.2 0 .3.2.2.3 0 .2-.2.3-.3.2-2-.6-4.8-1-7.9-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.3 227.6c-3 0-5.8.3-7.8 1l-.4-.2.2-.4c2-.6 4.9-1 8-1s6 .4 8 1c.2 0 .3.2.2.3 0 .2-.2.3-.3.2-2-.6-4.8-1-7.9-1z"/>
+  <path fill="#fff" d="M329.4 228.7c0-.3.2-.5.4-.5s.5.2.5.5c0 .2-.3.4-.5.4s-.5-.2-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M329.4 228.7c0-.3.2-.5.4-.5s.5.2.5.5c0 .2-.3.4-.5.4s-.5-.2-.5-.4z"/>
+  <path fill="#ad1519" d="M332.4 228.8h-1c-.2 0-.4-.1-.4-.3 0-.1.2-.3.4-.3h2a.3.3 0 01.3.3c0 .2-.1.3-.3.3h-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.4 228.8h-1c-.2 0-.4-.1-.4-.3 0-.1.2-.3.4-.3h2a.3.3 0 01.3.3c0 .2-.1.3-.3.3h-1"/>
+  <path fill="#058e6e" d="M327.4 229.2h-.7a.3.3 0 01-.4-.2.3.3 0 01.3-.3l.7-.1.7-.2c.2 0 .4.1.4.3 0 .2 0 .3-.3.4h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M327.4 229.2h-.7a.3.3 0 01-.4-.2.3.3 0 01.3-.3l.7-.1.7-.2c.2 0 .4.1.4.3 0 .2 0 .3-.3.4h-.7"/>
+  <path fill="#ad1519" d="M324.5 229.7l.4-.5.6.1-.4.6-.6-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M324.5 229.7l.4-.5.6.1-.4.6-.6-.2"/>
+  <path fill="#fff" d="M334.4 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.4.4s-.5-.2-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M334.4 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.4.4s-.5-.2-.5-.4z"/>
+  <path fill="#058e6e" d="M337.3 229.2h.7c.2.1.3 0 .4-.2a.3.3 0 00-.3-.3l-.7-.1-.7-.2c-.2 0-.4.1-.4.3 0 .2 0 .3.3.4h.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M337.3 229.2h.7c.2.1.3 0 .4-.2a.3.3 0 00-.3-.3l-.7-.1-.7-.2c-.2 0-.4.1-.4.3 0 .2 0 .3.3.4h.7"/>
+  <path fill="#ad1519" d="M340.1 229.7l-.3-.5h-.7l.4.6h.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M340.1 229.7l-.3-.5h-.7l.4.6h.6"/>
+  <path fill="#ad1519" d="M332.3 231.6a27.1 27.1 0 01-6.4-.7 27.9 27.9 0 0113 0 27.1 27.1 0 01-6.6.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M332.3 231.6a27.1 27.1 0 01-6.4-.7 27.9 27.9 0 0113 0 27.1 27.1 0 01-6.6.7z"/>
+  <path fill="#c8b100" d="M340.2 226.2l-.1-.4c-.2 0-.3 0-.4.2l.1.5c.2 0 .3-.1.4-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M340.2 226.2l-.1-.4c-.2 0-.3 0-.4.2l.1.5c.2 0 .3-.1.4-.3z"/>
+  <path fill="#c8b100" d="M335.2 225.2c0-.2 0-.3-.2-.4-.1 0-.3.2-.3.4s0 .3.2.4c.2 0 .3-.2.3-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M335.2 225.2c0-.2 0-.3-.2-.4-.1 0-.3.2-.3.4s0 .3.2.4c.2 0 .3-.2.3-.4z"/>
+  <path fill="#c8b100" d="M329.5 225.2c0-.2 0-.3.2-.4.1 0 .3.2.3.4s0 .3-.2.4c-.2 0-.3-.2-.3-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M329.5 225.2c0-.2 0-.3.2-.4.1 0 .3.2.3.4s0 .3-.2.4c-.2 0-.3-.2-.3-.4z"/>
+  <path fill="#c8b100" d="M324.5 226.2l.1-.4c.2 0 .3 0 .4.2l-.1.5c-.2 0-.3-.1-.4-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M324.5 226.2l.1-.4c.2 0 .3 0 .4.2l-.1.5c-.2 0-.3-.1-.4-.3z"/>
+  <path fill="#c8b100" d="M332.3 222.4l-.8.5.6 1.4.2.2.3-.2.6-1.4-.9-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.3 222.4l-.8.5.6 1.4.2.2.3-.2.6-1.4-.9-.5"/>
+  <path fill="#c8b100" d="M330.4 224.5l.4.6 1.4-.4.1-.2-.1-.2-1.4-.4-.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M330.4 224.5l.4.6 1.4-.4.1-.2-.1-.2-1.4-.4-.4.6"/>
+  <path fill="#c8b100" d="M334.3 224.5l-.4.6-1.4-.4-.1-.2.1-.2 1.4-.4.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M334.3 224.5l-.4.6-1.4-.4-.1-.2.1-.2 1.4-.4.4.6"/>
+  <path fill="#c8b100" d="M326.6 223l-.7.6 1 1.2.2.1.1-.2.3-1.4-.9-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M326.6 223l-.7.6 1 1.2.2.1.1-.2.3-1.4-.9-.3"/>
+  <path fill="#c8b100" d="M325.2 225.3l.5.5 1.2-.7.1-.2-.1-.2h-1.5l-.2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M325.2 225.3l.5.5 1.2-.7.1-.2-.1-.2h-1.5l-.2.6"/>
+  <path fill="#c8b100" d="M329 224.6l-.3.6-1.4-.1-.2-.2v-.2l1.3-.7.6.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M329 224.6l-.3.6-1.4-.1-.2-.2v-.2l1.3-.7.6.6"/>
+  <path fill="#c8b100" d="M323.8 225.5l-.1.7-1.5.1h-.2v-.3l1.2-1 .6.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M323.8 225.5l-.1.7-1.5.1h-.2v-.3l1.2-1 .6.5"/>
+  <path fill="#c8b100" d="M326.6 225a.5.5 0 01.5-.6.5.5 0 01.5.5.5.5 0 01-.5.5.5.5 0 01-.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M326.6 225a.5.5 0 01.5-.6.5.5 0 01.5.5.5.5 0 01-.5.5.5.5 0 01-.5-.5z"/>
+  <path fill="#c8b100" d="M338 223l.8.6-1 1.2-.2.1-.1-.2-.3-1.4.9-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M338 223l.8.6-1 1.2-.2.1-.1-.2-.3-1.4.9-.3"/>
+  <path fill="#c8b100" d="M339.5 225.3l-.5.5-1.3-.7v-.2l.1-.2h1.5l.2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M339.5 225.3l-.5.5-1.3-.7v-.2l.1-.2h1.5l.2.6"/>
+  <path fill="#c8b100" d="M335.7 224.6l.3.6 1.4-.1.2-.2v-.2l-1.3-.7-.6.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M335.7 224.6l.3.6 1.4-.1.2-.2v-.2l-1.3-.7-.6.6"/>
+  <path fill="#c8b100" d="M340.7 225.5l.1.7 1.4.1h.3v-.3l-1.2-1-.6.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M340.7 225.5l.1.7 1.4.1h.3v-.3l-1.2-1-.6.5"/>
+  <path fill="#c8b100" d="M331.8 224.5c0-.3.3-.5.5-.5s.5.2.5.5c0 .2-.2.4-.5.4a.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M331.8 224.5c0-.3.3-.5.5-.5s.5.2.5.5c0 .2-.2.4-.5.4a.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M337.1 225a.5.5 0 01.5-.6c.3 0 .5.2.5.5s-.2.5-.5.5a.5.5 0 01-.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M337.1 225a.5.5 0 01.5-.6c.3 0 .5.2.5.5s-.2.5-.5.5a.5.5 0 01-.5-.5z"/>
+  <path fill="#c8b100" d="M331.4 219c0-.4.4-.8 1-.8s.9.4.9.9-.4.9-1 .9a1 1 0 01-.9-1"/>
+  <path fill="#c8b100" d="M333 218.8v.6h-1.5v-.6h.5v-1.4h-.6v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M333 218.8v.6h-1.5v-.6h.5v-1.4h-.6v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h.3z"/>
+  <path fill="#c8b100" d="M333.7 218.8v.6H331v-.6h1v-1.4h-.7v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M332.6 218.2a.9.9 0 01.7.9c0 .5-.4.9-1 .9a1 1 0 01-.9-1c0-.3.3-.7.7-.8"/>
+  <path fill="#c8b100" d="M321.9 226.3l-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.2 0 .3.4c.2.3 0 .7 0 .7v.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M321.9 226.3l-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.2 0 .3.4c.2.3 0 .7 0 .7v.3z"/>
+  <path fill="#c8b100" d="M321.9 226l.5.1c.2.2.3.4.1.5h-.5c-.2-.2-.2-.4-.1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M321.9 226l.5.1c.2.2.3.4.1.5h-.5c-.2-.2-.2-.4-.1-.5z"/>
+  <path fill="#c8b100" d="M342.6 226.3l.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 00-.5.2v-.2s-.3 0-.4.4v.7l.1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M342.6 226.3l.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 00-.5.2v-.2s-.3 0-.4.4v.7l.1.3z"/>
+  <path fill="#c8b100" d="M342.6 226l-.5.1c-.2.2-.2.4-.1.5.1.2.3.1.5 0 .2-.2.3-.4.1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M342.6 226l-.5.1c-.2.2-.2.4-.1.5.1.2.3.1.5 0 .2-.2.3-.4.1-.5z"/>
+  <path fill="#c8b100" d="M321 238h22.8v-6h-22.9v6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M321 238h22.8v-6h-22.9v6z"/>
+  <path fill="#c8b100" d="M341.4 242a1 1 0 00-.4-.1h-17.6c.6-.2 1-.7 1-1.3 0-.6-.5-1.2-1-1.4l.4.1h17.6c-.7.2-1 .7-1 1.3 0 .6.4 1.1 1 1.3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M341.4 242a1 1 0 00-.4-.1h-17.6c.6-.2 1-.7 1-1.3 0-.6-.5-1.2-1-1.4l.4.1h17.6c-.7.2-1 .7-1 1.3 0 .6.4 1.1 1 1.3z"/>
+  <path fill="#c8b100" d="M323.9 241.9h17c.6 0 1.1.3 1.1.8 0 .4-.5.8-1 .8h-17.1c-.6 0-1-.4-1-.8 0-.5.4-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M323.9 241.9h17c.6 0 1.1.3 1.1.8 0 .4-.5.8-1 .8h-17.1c-.6 0-1-.4-1-.8 0-.5.4-.8 1-.8z"/>
+  <path fill="#c8b100" d="M323.9 238h17c.6 0 1.1.2 1.1.6 0 .4-.5.7-1 .7h-17.1c-.6 0-1.1-.3-1.1-.7 0-.4.5-.7 1-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M323.9 238h17c.6 0 1.1.2 1.1.6 0 .4-.5.7-1 .7h-17.1c-.6 0-1.1-.3-1.1-.7 0-.4.5-.7 1-.7z"/>
+  <path fill="#005bbf" d="M316.4 338.6c1.6 0 3-.3 4-.9a8.9 8.9 0 014-.8c1.5 0 3 .3 4 .8 1 .6 2.5 1 4 1a8.7 8.7 0 004-1 9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 01-4-1 8.8 8.8 0 00-4-.8c-1.5 0-2.8.4-3.9.9a8.8 8.8 0 01-4 .9 9 9 0 01-4-.9 9 9 0 00-4-.9c-1.5 0-3 .4-4 .9a8.6 8.6 0 01-4 .9v-2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M316.4 338.6c1.6 0 3-.3 4-.9a8.9 8.9 0 014-.8c1.5 0 3 .3 4 .8 1 .6 2.5 1 4 1a8.7 8.7 0 004-1 9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 01-4-1 8.8 8.8 0 00-4-.8c-1.5 0-2.8.4-3.9.9a8.8 8.8 0 01-4 .9 9 9 0 01-4-.9 9 9 0 00-4-.9c-1.5 0-3 .4-4 .9a8.6 8.6 0 01-4 .9v-2.5z"/>
+  <path fill="#ccc" d="M316.4 341a8.7 8.7 0 004-.8 8.9 8.9 0 014-.8c1.5 0 3 .3 4 .8a9 9 0 004 .9c1.6 0 3-.4 4-1a8.9 8.9 0 014-.8 8 8 0 013.9.9 8.9 8.9 0 004 .9v2.4a8.9 8.9 0 01-4-.9 8.6 8.6 0 00-4-.8c-1.5 0-2.8.3-3.9.8a8.7 8.7 0 01-4 1 8.9 8.9 0 01-4-1 9 9 0 00-4-.8 8.9 8.9 0 00-4 .9 8.6 8.6 0 01-4 .9V341"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M316.4 341a8.7 8.7 0 004-.8 8.9 8.9 0 014-.8c1.5 0 3 .3 4 .8a9 9 0 004 .9c1.6 0 3-.4 4-1a8.9 8.9 0 014-.8 8 8 0 013.9.9 8.9 8.9 0 004 .9v2.4a8.9 8.9 0 01-4-.9 8.6 8.6 0 00-4-.8c-1.5 0-2.8.3-3.9.8a8.7 8.7 0 01-4 1 8.9 8.9 0 01-4-1 9 9 0 00-4-.8 8.9 8.9 0 00-4 .9 8.6 8.6 0 01-4 .9V341"/>
+  <path fill="#005bbf" d="M316.4 343.6c1.6 0 3-.4 4-1a8.9 8.9 0 014-.8 9 9 0 014 .9c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 01-4-.9 8.7 8.7 0 00-4-.8 9 9 0 00-3.9.8 8.7 8.7 0 01-4 1 9 9 0 01-4-1 9 9 0 00-4-.8c-1.5 0-3 .3-4 .8a8.6 8.6 0 01-4 1v-2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M316.4 343.6c1.6 0 3-.4 4-1a8.9 8.9 0 014-.8 9 9 0 014 .9c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 01-4-.9 8.7 8.7 0 00-4-.8 9 9 0 00-3.9.8 8.7 8.7 0 01-4 1 9 9 0 01-4-1 9 9 0 00-4-.8c-1.5 0-3 .3-4 .8a8.6 8.6 0 01-4 1v-2.6"/>
+  <path fill="#ccc" d="M316.4 348.5a8.6 8.6 0 004-1 9 9 0 014-.7 9 9 0 014 .8c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 014-.7c1.5 0 2.8.3 3.9.8 1 .5 2.5.9 4 .9V346a8.8 8.8 0 01-4-.9 8.8 8.8 0 00-4-.8 9 9 0 00-3.9.8 8.7 8.7 0 01-4 1 9 9 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-4 .8 8.7 8.7 0 01-4 1v2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M316.4 348.5a8.6 8.6 0 004-1 9 9 0 014-.7 9 9 0 014 .8c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 014-.7c1.5 0 2.8.3 3.9.8 1 .5 2.5.9 4 .9V346a8.8 8.8 0 01-4-.9 8.8 8.8 0 00-4-.8 9 9 0 00-3.9.8 8.7 8.7 0 01-4 1 9 9 0 01-4-1 9 9 0 00-4-.8 9 9 0 00-4 .8 8.7 8.7 0 01-4 1v2.4"/>
+  <path fill="#005bbf" d="M316.4 351c1.6 0 3-.4 4-1a8.8 8.8 0 014-.8 9 9 0 014 .9c1 .5 2.5.8 4 .8 1.6 0 3-.3 4-.9a9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v-2.5a8.8 8.8 0 01-4-1 8.8 8.8 0 00-4-.7c-1.5 0-2.8.3-3.9.8a8.8 8.8 0 01-4 .9 8.9 8.9 0 01-4-.9 9 9 0 00-4-.8 8.9 8.9 0 00-4 .8 8.7 8.7 0 01-4 .9v2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M316.4 351c1.6 0 3-.4 4-1a8.8 8.8 0 014-.8 9 9 0 014 .9c1 .5 2.5.8 4 .8 1.6 0 3-.3 4-.9a9 9 0 014-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v-2.5a8.8 8.8 0 01-4-1 8.8 8.8 0 00-4-.7c-1.5 0-2.8.3-3.9.8a8.8 8.8 0 01-4 .9 8.9 8.9 0 01-4-.9 9 9 0 00-4-.8 8.9 8.9 0 00-4 .8 8.7 8.7 0 01-4 .9v2.5z"/>
+  <path fill="#c8b100" d="M341.4 328.5l-.2.6c0 1.5 1.3 2.7 3 2.7h-23.6c1.6 0 2.9-1.2 2.9-2.7a2.8 2.8 0 000-.6h17.9"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M341.4 328.5l-.2.6c0 1.5 1.3 2.7 3 2.7h-23.6c1.6 0 2.9-1.2 2.9-2.7a2.8 2.8 0 000-.6h17.9z"/>
+  <path fill="#c8b100" d="M323.9 327h17c.6 0 1.1.3 1.1.7 0 .5-.5.8-1 .8h-17.1c-.6 0-1-.3-1-.8 0-.4.4-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M323.9 327h17c.6 0 1.1.3 1.1.7 0 .5-.5.8-1 .8h-17.1c-.6 0-1-.3-1-.8 0-.4.4-.8 1-.8z"/>
+  <path fill="#c8b100" d="M320.7 337.8H344v-6h-23.4v6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M320.7 337.8H344v-6h-23.4v6z"/>
+  <path fill="#ad1519" d="M346 305.8c2.2 1.3 3.8 2.7 3.6 3.4-.2.6-1 1-2 1.8-1.6 1.1-2.6 3.2-1.8 4.1a5.9 5.9 0 01.1-9.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M346 305.8c2.2 1.3 3.8 2.7 3.6 3.4-.2.6-1 1-2 1.8-1.6 1.1-2.6 3.2-1.8 4.1a5.9 5.9 0 01.1-9.3z"/>
+  <path fill="#ccc" d="M324 326h16.7v-81.6h-16.6V326z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M336.2 244.4v81.4m1.8-81.4v81.4m-14 .2h16.7v-81.6h-16.6V326z"/>
+  <path fill="#ad1519" d="M307 275a53 53 0 0125-2.2c9.9 1.7 17.5 5.6 16.9 8.9v.2s3.7-8.4 3.7-8.7c.7-3.6-7.7-8-18.8-9.8a57 57 0 00-9.8-.8c-7 0-13.2.9-16.9 2.3v10"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M307 275a53 53 0 0125-2.2c9.9 1.7 17.5 5.6 16.9 8.9v.2s3.7-8.4 3.7-8.7c.7-3.6-7.7-8-18.8-9.8a57 57 0 00-9.8-.8c-7 0-13.2.9-16.9 2.3v10"/>
+  <path fill="#ad1519" d="M340.8 285.1c4.6-.3 7.7-1.5 8-3.5.4-1.5-1.2-3.2-4-4.7-1.2.1-2.6.3-4 .3v8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M340.8 285.1c4.6-.3 7.7-1.5 8-3.5.4-1.5-1.2-3.2-4-4.7-1.2.1-2.6.3-4 .3v8"/>
+  <path fill="#ad1519" d="M324 279c-2.8.4-5 1-6 2l-.2.1c-.5 1 2 3.3 6.3 5.8v-8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M324 279c-2.8.4-5 1-6 2l-.2.1c-.5 1 2 3.3 6.3 5.8v-8"/>
+  <path fill="#ad1519" d="M351.1 300.9c.4-1.3-4-4-10.4-6.3-3-1-5.3-2.1-8.3-3.4-8.8-4-15.4-8.4-14.6-10l.1-.2c-.4.4-1.2 8.4-1.2 8.4-.8 1.5 5.2 6 13.3 9.8 2.6 1.3 8.1 3.3 10.7 4.2 4.7 1.6 9.3 4.7 8.9 5.8l1.5-8.3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M351.1 300.9c.4-1.3-4-4-10.4-6.3-3-1-5.3-2.1-8.3-3.4-8.8-4-15.4-8.4-14.6-10l.1-.2c-.4.4-1.2 8.4-1.2 8.4-.8 1.5 5.2 6 13.3 9.8 2.6 1.3 8.1 3.3 10.7 4.2 4.7 1.6 9.3 4.7 8.9 5.8l1.5-8.3z"/>
+  <path fill="#c8b100" d="M317.5 271.3c.6-2.4 1.4-4.7 2.2-7a5.7 5.7 0 01-.5.1 5.4 5.4 0 01-.6 0c-.4 1.8-.9 3.4-1.5 5.1l-2.9-4.4-1 .2-1 .1a140 140 0 014.2 6h1.1m6.3-7H322l-.2 6.5h4.6v-.8a32 32 0 01-2.7.1v-5.9m7.3 1.1l2.1.3v-.4l.1-.4-6.2-.5v.8h2.2l-.6 6h1l.8.1.6-5.9m2.5 6.5c.3 0 .6 0 1 .2l.8.2.7-3h.1l.5 1.2 1 2.3c.3 0 .7 0 1 .2l1.1.2-.3-.6-1.5-3.1c1.2 0 2-.4 2.3-1.3.1-.7-.1-1.2-.7-1.6a6 6 0 00-1.9-.6l-2.5-.5-1.6 6.4m3.2-5.6c.8.2 1.7.3 1.7 1.1a2 2 0 010 .5c-.3 1-1 1.3-2.3 1l.6-2.6m8.7 7.6l-.3 2.1.9.5.9.5.6-7.4a3.6 3.6 0 01-.8-.4l-6.6 4.1.6.3.4.3 1.8-1.4 2.5 1.4zm-1.9-1.7l2.2-1.4-.3 2.4-1.9-1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M230.3 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 01-2.2-2.1z"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".3" d="M255.3 187.1c6.8 0 13 1 16.8 2.6a32 32 0 008.6 2.2c2.6.3 5 .4 7 .2 2.9 0 6.9.8 11 2.6a29.2 29.2 0 018 5l-1.7 1.5-.4 4-4.4 5-2.2 2-5.3 4-2.6.3-.8 2.3-33.7-4-33.8 4-.9-2.3-2.6-.2-5.2-4.2-2.2-1.9-4.4-5-.5-4-1.6-1.5a29.5 29.5 0 018-5c4-1.8 8-2.6 10.9-2.6 2 .2 4.4.1 7-.2a32 32 0 008.6-2.2c4-1.6 9.6-2.6 16.4-2.6z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.9 231.6c-12.6 0-23.8-1.5-31.9-4-.6 0-.9-.6-.8-1.2a1.2 1.2 0 01.8-1.2 120 120 0 0131.9-4c12.5.1 23.8 1.6 31.8 4 .6.2.9.7.9 1.2 0 .6-.3 1.1-1 1.3a119 119 0 01-31.7 4"/>
+  <path fill="#ad1519" d="M255.8 230a121 121 0 01-29.3-3.4c7.8-2 18-3.2 29.3-3.2a123 123 0 0129.5 3.2c-7.8 2-18.1 3.4-29.5 3.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M256.7 230v-6.7m-1.9 6.7v-6.7"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M253.1 230v-6.7m-1.7 6.7v-6.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M249.9 230v-6.7m-2.9 6.4v-6.2m1.4 6.2v-6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M244.3 229.4v-5.7m1.4 5.9v-6m-5 5.4v-4.9m1.2 5V224m1.2 5.4V224"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M239.4 229v-4.8m-1.1 4.6v-4.5"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M237 228.7v-4.2m-2.6 3.8V225m1.4 3.5v-3.7"/>
+  <path fill="none" stroke="#000" stroke-width=".7" d="M233.1 228v-2.9m-1.2 2.7v-2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".8" d="M230.6 227.5v-2m-1.4 1.8v-1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".9" d="M227.8 227v-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M264 229.7v-6.2m-3.2 6.4v-6.6m-2.2 6.6v-6.6"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 221.3a115 115 0 00-32.2 4c.7-.3.6-1-.2-3.2-1-2.6-2.6-2.5-2.6-2.5a130 130 0 0135-4.3c13.8 0 26.2 1.7 35.1 4.3 0 0-1.5-.1-2.5 2.5-.9 2.1-1 3-.3 3.3-8-2.5-19.6-4.1-32.3-4.1"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 215.3a131 131 0 00-35 4.3c-.5.2-1.2 0-1.4-.6a1.1 1.1 0 01.8-1.4c8.9-2.7 21.6-4.4 35.6-4.4 14.1 0 26.9 1.7 35.8 4.4.6.2.9.9.7 1.4-.2.6-.8.8-1.4.6-8.9-2.6-21.3-4.2-35-4.3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M255.8 230a121 121 0 01-29.3-3.4c7.8-2 18-3.2 29.3-3.2a123 123 0 0129.5 3.2c-7.8 2-18.1 3.4-29.5 3.4z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M246 218.5c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M255.9 219.3h-3.4c-.6 0-1.1-.5-1.1-1 0-.6.5-1.1 1-1.1h6.9a1 1 0 011.1 1c0 .6-.5 1.1-1.1 1.1h-3.4"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".4" d="M239 220.2l-2.5.3c-.6 0-1.2-.3-1.2-1a1 1 0 011-1.1l2.4-.3 2.5-.3a1.1 1.1 0 011.2 1c0 .5-.4 1-1 1.1l-2.5.3"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M229.1 220.4c0-.5.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M221.6 222.4l1.3-1.7 3.4.5-2.7 2-2-.8"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".4" d="M272.8 220.2l2.4.3c.6 0 1.2-.3 1.3-1a1 1 0 00-1-1.1l-2.5-.3-2.4-.3c-.7 0-1.2.4-1.3 1 0 .5.4 1 1 1.1l2.5.3"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M263.4 218.5c0-.6.6-1.1 1.2-1.1s1.1.5 1.1 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.2-1m17 2c0-.6.5-1.1 1-1.1a1 1 0 011.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M290 222.4l-1.2-1.7-3.4.5 2.8 2 1.9-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M225.1 227c8-2.3 18.7-3.6 30.7-3.7 12 0 22.9 1.4 30.8 3.7"/>
+  <path fill="#c8b100" d="M230.4 196l1.5 1.1 2.1-3.4a7.9 7.9 0 01-3.8-7.6c.2-4.5 5.6-8.1 12.5-8.1 3.5 0 6.7 1 9 2.5l.2-1.9a18.6 18.6 0 00-9.2-2.3c-8 0-14.1 4.4-14.4 9.8a9.5 9.5 0 003.3 8l-1.2 2"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M230.4 196l1.5 1.1 2.1-3.4a7.9 7.9 0 01-3.8-7.6c.2-4.5 5.6-8.1 12.5-8.1 3.5 0 6.7 1 9 2.5l.2-1.9a18.6 18.6 0 00-9.2-2.3c-8 0-14.1 4.4-14.4 9.8a9.5 9.5 0 003.3 8l-1.2 2"/>
+  <path fill="#c8b100" d="M230.5 196a9.8 9.8 0 01-4.3-7.7c0-3.5 2.2-6.6 5.7-8.6a9.1 9.1 0 00-3.6 6.4 9.5 9.5 0 003.3 8l-1 2"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M230.5 196a9.8 9.8 0 01-4.3-7.7c0-3.5 2.2-6.6 5.7-8.6a9.1 9.1 0 00-3.6 6.4 9.5 9.5 0 003.3 8l-1 2"/>
+  <path fill="#c8b100" d="M206.8 199.6a9.4 9.4 0 01-2.5-6.3c0-1.4.4-2.8 1-4 2.1-4.5 9-7.8 17.1-7.8 2.2 0 4.4.2 6.3.7-.4.5-.8 1-1 1.5a27.2 27.2 0 00-5.3-.5c-7.4 0-13.6 3-15.4 6.8a7.5 7.5 0 00-.8 3.3 7.8 7.8 0 002.9 6l-2.7 4.4-1.5-1.2 1.9-3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M206.8 199.6a9.4 9.4 0 01-2.5-6.3c0-1.4.4-2.8 1-4 2.1-4.5 9-7.8 17.1-7.8 2.2 0 4.4.2 6.3.7-.4.5-.8 1-1 1.5a27.2 27.2 0 00-5.3-.5c-7.4 0-13.6 3-15.4 6.8a7.5 7.5 0 00-.8 3.3 7.8 7.8 0 002.9 6l-2.7 4.4-1.5-1.2 1.9-3z"/>
+  <path fill="#c8b100" d="M209.5 184.8a11.3 11.3 0 00-4.2 4.4 9.2 9.2 0 00-1 4.1c0 2.4 1 4.6 2.5 6.3l-1.7 2.6a11.1 11.1 0 01-2.4-6.8c0-4.3 2.7-8.1 6.8-10.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M209.5 184.8a11.3 11.3 0 00-4.2 4.4 9.2 9.2 0 00-1 4.1c0 2.4 1 4.6 2.5 6.3l-1.7 2.6a11.1 11.1 0 01-2.4-6.8c0-4.3 2.7-8.1 6.8-10.6z"/>
+  <path fill="#c8b100" d="M255.8 175.4c1.7 0 3.3 1.2 3.7 2.8.2 1.4.4 3 .4 4.7v1.2c0 3.6.6 6.7 1.3 8.7l-5.5 5.2-5.5-5.2c.7-2 1.2-5.1 1.3-8.7v-1.2c0-1.7.2-3.3.5-4.7.3-1.6 2-2.8 3.7-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M255.8 175.4c1.7 0 3.3 1.2 3.7 2.8.2 1.4.4 3 .4 4.7v1.2c0 3.6.6 6.7 1.3 8.7l-5.5 5.2-5.5-5.2c.7-2 1.2-5.1 1.3-8.7v-1.2c0-1.7.2-3.3.5-4.7.3-1.6 2-2.8 3.7-2.8z"/>
+  <path fill="#c8b100" d="M255.8 177a2 2 0 011.9 1.5 30.6 30.6 0 01.4 4.5v1.1c0 3.4.5 6.4 1.2 8.2l-3.6 3.5-3.6-3.5c.7-1.8 1.2-4.8 1.2-8.2V183c0-1.6.2-3.1.5-4.5.2-.8 1-1.4 2-1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M255.8 177a2 2 0 011.9 1.5 30.6 30.6 0 01.4 4.5v1.1c0 3.4.5 6.4 1.2 8.2l-3.6 3.5-3.6-3.5c.7-1.8 1.2-4.8 1.2-8.2V183c0-1.6.2-3.1.5-4.5.2-.8 1-1.4 2-1.4z"/>
+  <path fill="#c8b100" d="M281 196l-1.4 1.1-2.2-3.4a7.9 7.9 0 003.9-7.6c-.2-4.5-5.7-8.1-12.5-8.1a16 16 0 00-9 2.5 24.5 24.5 0 00-.3-1.9 18.6 18.6 0 019.3-2.3c7.9 0 14 4.4 14.4 9.8a9.5 9.5 0 01-3.3 8l1.1 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M281 196l-1.4 1.1-2.2-3.4a7.9 7.9 0 003.9-7.6c-.2-4.5-5.7-8.1-12.5-8.1a16 16 0 00-9 2.5 24.5 24.5 0 00-.3-1.9 18.6 18.6 0 019.3-2.3c7.9 0 14 4.4 14.4 9.8a9.5 9.5 0 01-3.3 8l1.1 1.9"/>
+  <path fill="#c8b100" d="M280.9 196c2.7-2 4.4-4.7 4.4-7.7 0-3.5-2.3-6.6-5.7-8.6a9 9 0 013.6 7.3c0 2.8-1.3 5.4-3.3 7.2l1 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M280.9 196c2.7-2 4.4-4.7 4.4-7.7 0-3.5-2.3-6.6-5.7-8.6a9 9 0 013.6 7.3c0 2.8-1.3 5.4-3.3 7.2l1 1.9"/>
+  <path fill="#c8b100" d="M304.7 199.6a9.3 9.3 0 001.5-10.3c-2.2-4.5-9-7.8-17.2-7.8a28.4 28.4 0 00-6.3.7c.5.5.8 1 1.1 1.5a27.1 27.1 0 015.2-.5c7.5 0 13.7 3 15.5 6.8.5 1 .8 2.1.8 3.3a7.8 7.8 0 01-3 6l2.8 4.4 1.4-1.2-1.8-3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M304.7 199.6a9.3 9.3 0 001.5-10.3c-2.2-4.5-9-7.8-17.2-7.8a28.4 28.4 0 00-6.3.7c.5.5.8 1 1.1 1.5a27.1 27.1 0 015.2-.5c7.5 0 13.7 3 15.5 6.8.5 1 .8 2.1.8 3.3a7.8 7.8 0 01-3 6l2.8 4.4 1.4-1.2-1.8-3z"/>
+  <path fill="#c8b100" d="M302 184.8a11.3 11.3 0 014.2 4.4 9.3 9.3 0 011 4.1c0 2.4-1 4.6-2.5 6.3l1.6 2.6a11.1 11.1 0 002.5-6.8c0-4.3-2.7-8.1-6.9-10.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M302 184.8a11.3 11.3 0 014.2 4.4 9.3 9.3 0 011 4.1c0 2.4-1 4.6-2.5 6.3l1.6 2.6a11.1 11.1 0 002.5-6.8c0-4.3-2.7-8.1-6.9-10.6z"/>
+  <path fill="#fff" d="M253.8 193.5c0-1 .9-1.9 2-1.9 1 0 1.9.9 1.9 1.9a1.9 1.9 0 01-2 1.8 1.9 1.9 0 01-2-1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M253.8 193.5c0-1 .9-1.9 2-1.9 1 0 1.9.9 1.9 1.9a1.9 1.9 0 01-2 1.8 1.9 1.9 0 01-2-1.8z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M253.8 189.8a1.9 1.9 0 012-1.8 1.9 1.9 0 011.9 1.9 1.9 1.9 0 01-2 1.8 1.9 1.9 0 01-2-1.8m.5-4c0-.8.7-1.4 1.5-1.4.9 0 1.6.6 1.6 1.5 0 .8-.7 1.4-1.6 1.4-.8 0-1.5-.6-1.5-1.4m.4-3.6c0-.5.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1m.1-3.1c0-.5.4-.9 1-.9s.8.4.8.9-.4.8-.9.8-.9-.3-.9-.8"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.9 204.6l1.3.2a5 5 0 004.8 6.4 5 5 0 004.8-3.3s.4-1.7.6-1.7c.2 0 .2 1.9.3 1.9.3 2.4 2.5 4 5 4a4.9 4.9 0 005-5.4l1.5-1.5.9 2a4.3 4.3 0 00-.5 2 4.7 4.7 0 004.8 4.6 5 5 0 004-2l1-1.3v1.6c0 1.5.7 3 2.2 3.2 0 0 1.8.1 4.1-1.7a28 28 0 003.7-3.4l.2 1.9s-2 3-4 4.2c-1.2.7-3 1.4-4.4 1.1-1.5-.2-2.6-1.4-3.1-2.7a7.2 7.2 0 01-3.6 1 7 7 0 01-6.5-4 7.5 7.5 0 01-11-.3 7.4 7.4 0 01-5 1.9 7.4 7.4 0 01-6.1-3.1 7.3 7.3 0 01-6.1 3 7.4 7.4 0 01-5-1.8 7.5 7.5 0 01-11 .3 7 7 0 01-6.5 4 7.1 7.1 0 01-3.6-1c-.6 1.3-1.6 2.5-3.1 2.8-1.4.2-3.2-.5-4.3-1.2-2.2-1.2-4.1-4.3-4.1-4.3l.2-1.8s1.3 1.5 3.6 3.4c2.4 1.8 4.2 1.7 4.2 1.7 1.5-.2 2.2-1.7 2.2-3.2v-1.6l1 1.3a4.9 4.9 0 004 2c2.6 0 4.8-2 4.8-4.6 0-.7-.2-1.4-.5-2l.8-2 1.6 1.5v.6a4.9 4.9 0 005 4.8c2.5 0 4.7-1.7 5-4 0 0 0-1.9.2-1.9s.7 1.8.7 1.7a5 5 0 004.8 3.3 4.9 4.9 0 004.8-6.4l1.3-.2"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M290.5 210.8c.3-.8 0-1.7-.6-1.8-.6-.2-1.4.3-1.6 1.2-.3.8 0 1.7.5 1.8.6.2 1.4-.3 1.7-1.2m-22-4.2c.2-.9-.2-1.6-.9-1.7-.6-.1-1.2.5-1.3 1.4-.1 1 .3 1.7 1 1.8.6 0 1.2-.6 1.3-1.5m-25.4 0c-.1-.9.3-1.6 1-1.7.6-.1 1.2.5 1.3 1.4.1 1-.3 1.7-1 1.8-.6 0-1.2-.6-1.3-1.5m-22 4.3c-.2-.9 0-1.7.7-2 .6-.1 1.3.4 1.6 1.3.3.8 0 1.7-.6 1.9-.6.1-1.3-.4-1.6-1.2"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M230.8 196.3a5.5 5.5 0 012.4 3s0-.2.7-.6c.6-.3 1.1-.3 1.1-.3l-.2 1.4c-.1.3-.1 1.4-.4 2.3a7.8 7.8 0 01-.6 1.8 2 2 0 00-1.6-.5 2 2 0 00-1.4 1s-.7-.6-1.2-1.4l-1.2-2.2-.7-1.2h1.1c.7.1 1 .3 1 .3a5.2 5.2 0 011-3.7"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M231.3 206.7a1.9 1.9 0 01-.7-1.1 1.7 1.7 0 01.2-1.3l-1.9-.7c-.7-.2-2-.2-2.4-.2h-1.2l.3.6.5.7a5.4 5.4 0 00-3 2.2 5.6 5.6 0 003.6 1l-.2.8v.7l1-.4c.4-.2 1.6-.6 2.2-1 .9-.6 1.6-1.3 1.6-1.3m2.9-.5a1.8 1.8 0 00.2-1.2 1.8 1.8 0 00-.7-1.1s.7-.8 1.5-1.3l2.3-1 1-.4v.6l-.2.9a5.6 5.6 0 013.7 1 5.4 5.4 0 01-3.1 2.1 7.1 7.1 0 00.8 1.4h-1.2c-.4 0-1.7 0-2.4-.3-1-.2-2-.7-2-.7"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M230.3 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 01-2.2-2.1"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 192.9a6 6 0 012 3.9s.2-.3 1-.6 1.2-.1 1.2-.1l-.5 1.4c-.2.4-.4 1.6-.9 2.6a8.8 8.8 0 01-1 1.8 2.3 2.3 0 00-1.8-.7c-.6 0-1.3.3-1.7.7 0 0-.6-.7-1-1.8-.5-1-.7-2.2-.9-2.6l-.6-1.4s.6-.1 1.3.2c.8.2 1 .5 1 .5a6 6 0 012-4"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M254.2 204.6a2 2 0 01-.6-1.3c0-.6.2-1 .6-1.4 0 0-1-.7-2-1.1-.8-.4-2.2-.6-2.6-.7l-1.3-.3.1.7.4 1c-1.5 0-2.9.8-3.9 1.8a6.3 6.3 0 004 1.8l-.5 1-.2.6 1.4-.2 2.6-.7 2-1.2m3.3 0c.3-.3.5-.8.5-1.3a2 2 0 00-.5-1.4s1-.7 2-1.1c.8-.4 2.2-.6 2.6-.7l1.3-.3-.2.7a7.6 7.6 0 01-.4 1 6 6 0 014 1.8 6.3 6.3 0 01-4 1.8l.4 1 .2.6-1.3-.2-2.6-.7a13 13 0 01-2-1.2m23.5-8.4a5.5 5.5 0 00-2.4 3.1l-.7-.6c-.6-.3-1.1-.3-1.1-.3l.2 1.4.3 2.3.7 1.8a2 2 0 011.6-.5 2 2 0 011.4 1l1.2-1.4 1.2-2.2.7-1.2h-1.2c-.7.1-.9.3-.9.3a5.2 5.2 0 00-1-3.7"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M280.5 206.7c.3-.3.6-.7.7-1.1a1.8 1.8 0 00-.2-1.3l1.8-.7c.8-.2 2-.2 2.5-.2h1.1l-.2.6-.6.7a5.4 5.4 0 013.1 2.2 5.6 5.6 0 01-3.6 1l.2.8v.7l-1-.4-2.3-1a11.5 11.5 0 01-1.5-1.3m-2.9-.5a1.8 1.8 0 01-.3-1.2c.1-.5.4-.9.7-1.1 0 0-.7-.8-1.5-1.3-.6-.4-1.8-.9-2.2-1l-1-.4v.6c0 .5.2.9.2.9a5.6 5.6 0 00-3.7 1c.7 1 1.8 1.8 3 2.1l-.4.8a4 4 0 00-.3.6h1.2c.4 0 1.7 0 2.4-.3 1-.2 1.9-.7 1.9-.7"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M277 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 01-2.2-2.1m24.8 4.6c-.5-.5-1.6-.4-2.4.3-.8.7-1 1.7-.5 2.2s1.6.5 2.4-.2c.8-.7 1-1.7.5-2.3"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M298.7 211.3c0-.4.4-.8.7-1.1.8-.7 2-.8 2.4-.3l.2.3s1.2-2.1 2.5-2.9 3.6-.5 3.6-.5a3 3 0 00-3.1-3c-1 0-2 .5-2.5 1.2l-.3-1.1s-1.4.3-2 1.8c-.6 1.7 0 4 0 4s-.3-1-.8-1.7a8.5 8.5 0 00-2.6-1.7l-1.4-.8v1.5a8.4 8.4 0 00-4 .5 5 5 0 002.7 2.3l-.8.8-.5.5 1.4.2c.4 0 1.8.3 2.7.2a15.7 15.7 0 001.8-.2m-85.6 0a2.3 2.3 0 00-.8-1.1c-.8-.7-1.9-.8-2.4-.3a1.1 1.1 0 00-.2.3s-1-2.1-2.4-2.9-3.6-.5-3.6-.5a3 3 0 013-3c1 0 2 .5 2.6 1.2l.2-1.1s1.4.3 2 1.9c.7 1.6 0 3.9 0 3.9s.4-1 .9-1.7 1.8-1.4 2.5-1.7l1.4-.8a7.4 7.4 0 000 1.5 8.4 8.4 0 014 .5 5 5 0 01-2.7 2.3l.9.8.4.5-1.3.2c-.4 0-1.9.3-2.7.2a15.7 15.7 0 01-1.8-.2"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M210 210c.5-.6 1.5-.5 2.3.2.9.7 1 1.7.6 2.2-.6.6-1.6.5-2.4-.2-.9-.7-1.1-1.7-.6-2.3m43.7-6.6c0-1.2 1-2.1 2.3-2.1s2.2.9 2.2 2-1 2.2-2.3 2.2a2.2 2.2 0 01-2.2-2.1"/>
+  <path fill="#005bbf" stroke="#000" stroke-width=".3" d="M251.2 171.3c0-2.4 2-4.3 4.6-4.3 2.5 0 4.5 2 4.5 4.3a4.4 4.4 0 01-4.5 4.3 4.4 4.4 0 01-4.6-4.3"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".3" d="M254.6 159.3v2.3H252v2.3h2.5v6.8h-3.2l-.2.6c0 .6.2 1.2.4 1.7h8.3a4.1 4.1 0 00.4-1.7l-.2-.6h-3V164h2.4v-2.3H257v-2.3h-2.5z"/>
+  <path fill="#ccc" d="M256.2 352.6a87.4 87.4 0 01-37.8-8.8 24.2 24.2 0 01-13.7-21.6V288h102.8v34c0 9.5-5.4 17.7-13.7 21.8a86.4 86.4 0 01-37.6 8.7"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M256.2 352.6a87.4 87.4 0 01-37.8-8.8 24.2 24.2 0 01-13.7-21.6V288h102.8v34c0 9.5-5.4 17.7-13.7 21.8a86.4 86.4 0 01-37.6 8.7z"/>
+  <path fill="#ccc" d="M256 288h51.5v-57H256v57z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M256 288h51.5v-57H256v57z"/>
+  <path fill="#ad1519" d="M256 322.1a25 25 0 01-25.6 24.4c-14.2 0-25.8-11-25.8-24.4V288H256v34"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M215.8 342.3c1.7.8 3.9 2.2 6.2 2.8l-.1-58.3h-6v55.4z"/>
+  <path fill="#c8b100" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M204.5 321.7a26 26 0 006 16v-50.6h-5.9v34.6z"/>
+  <path fill="#c7b500" stroke="#000" stroke-width=".5" d="M227.3 346.4c2.4.2 4.1.2 6 0v-59.6h-6v59.6z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M238.6 345a20.3 20.3 0 006.2-2.6v-55.6h-6l-.2 58.3z"/>
+  <path fill="#ad1519" d="M204.6 288H256v-57h-51.4v57z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M204.6 288H256v-57h-51.4v57z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M250.4 337.1c2.5-2.2 4.9-7.3 5.7-13l.2-37.3h-6V337z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M256 322.1a25 25 0 01-25.6 24.4c-14.2 0-25.8-11-25.8-24.4V288H256v34"/>
+  <path fill="#ad1519" d="M307.6 288v34a25.1 25.1 0 01-25.8 24.4c-14.2 0-25.8-11-25.8-24.4v-34h51.6"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M307.6 288v34a25.1 25.1 0 01-25.8 24.4c-14.2 0-25.8-11-25.8-24.4v-34h51.6"/>
+  <path fill="#c8b100" d="M265.4 313.7l.1.6c0 .6-.5 1.1-1.2 1.1-.6 0-1.2-.5-1.2-1.1 0-.2 0-.4.2-.5h-1.7a2.7 2.7 0 001.9 3v4.1h1.7v-4.1a2.7 2.7 0 001.8-1.7h4.7v-1.4h-6.3m23.1 0v1.4h-4.2a2.7 2.7 0 01-.3.6l5 5.6-1.4 1-4.9-5.6-.2.1v9.3h-1.8v-9.3l-.2-.1-5 5.6-1.4-1 5.1-5.7a2.3 2.3 0 01-.2-.5h-4.4v-1.4h14zm2.8 0v1.4h4.8c.2.8.9 1.4 1.7 1.7v4.1h1.8v-4.1a2.7 2.7 0 002-2.5l-.2-.6h-1.6a1.2 1.2 0 01-1 1.7c-.8 0-1.3-.5-1.3-1.1l.1-.5h-6.3m-7 23.5a16.6 16.6 0 003.8-1l.9 1.4a18.8 18.8 0 01-4.6 1.3 2.8 2.8 0 01-2.8 2 2.8 2.8 0 01-2.7-2 18.7 18.7 0 01-4.8-1.3l.8-1.5c1.3.6 2.7 1 4.2 1.2a2.7 2.7 0 011.6-1.5v-7.1h1.8v7.1a3 3 0 011.7 1.4zm-11.8-2.4l-.9 1.5a17.8 17.8 0 01-3.9-3.3 3 3 0 01-2.6-.5 2.5 2.5 0 01-.4-3.7l.2-.2a16.3 16.3 0 01-1.4-5.1h1.8a14 14 0 001.1 4.4 3.1 3.1 0 011.5.1l4.4-4.8 1.3 1-4.4 4.9a2.5 2.5 0 010 3 16.2 16.2 0 003.2 2.7zm-6.5-5a1.2 1.2 0 011.7-.2 1 1 0 010 1.6 1.3 1.3 0 01-1.6.2 1.1 1.1 0 01-.1-1.6zm-2.2-4.8l-1.8-.4-.3-4.6 1.8-.6v2.6c0 1 0 2 .2 3zm1.4-5.7l1.8.4v2.3c0-.8.3 2.3.3 2.3l-1.8.6-.3-2.9v-2.7zm6 14.6a16.7 16.7 0 005.1 2.7l.4-1.7a14.6 14.6 0 01-4.3-2.1l-1.2 1m-1 1.6a18.6 18.6 0 005.2 2.7l-1.3 1.3a20 20 0 01-4.2-2.2l.4-1.8m2.3-10l1.7.7 3.2-3.5-1-1.5-3.9 4.2m-1.3-1l-1-1.5 3.1-3.5 1.7.7-3.8 4.3m19.3 10.5l.9 1.5a17.8 17.8 0 003.8-3.3c1 .3 2 .1 2.7-.5a2.5 2.5 0 00.3-3.7l-.1-.2c.7-1.6 1.2-3.3 1.3-5.1h-1.7a14.2 14.2 0 01-1.2 4.4 3.1 3.1 0 00-1.5.1l-4.3-4.8-1.3 1 4.3 4.9a2.5 2.5 0 00.1 3 16 16 0 01-3.3 2.7zm6.5-5a1.2 1.2 0 00-1.7-.2 1.1 1.1 0 00-.1 1.6c.4.5 1.2.6 1.7.1a1 1 0 000-1.6zm2.2-4.8l1.8-.5.2-4.5-1.7-.6v2.6l-.3 3zm-1.5-5.7l-1.8.4v2.3c0-.8-.3 2.3-.3 2.3l1.9.6.2-2.9v-2.7m-6 14.6a16.8 16.8 0 01-5 2.7l-.5-1.7a14.6 14.6 0 004.3-2.1l1.3 1m.9 1.6a18.6 18.6 0 01-5.2 2.7l1.3 1.3a20 20 0 004.3-2.2l-.4-1.8m-2.4-10l-1.7.7-3.1-3.5 1-1.5 3.8 4.2m1.4-1l1-1.5-3.2-3.5-1.7.7 3.8 4.3m-21.4-9.3l.5 1.7h4.8l.6-1.7h-5.9m22.5 0l-.5 1.7h-4.8l-.5-1.7h5.9m-12.4 23.3c0-.6.5-1.1 1.2-1.1.6 0 1.1.5 1.1 1.1 0 .7-.5 1.2-1.2 1.2s-1.2-.6-1.2-1.2zm2-8.2l1.8-.5V325l-1.8-.5v5.6m-1.8 0l-1.8-.5V325l1.8-.5v5.6"/>
+  <path fill="#c8b100" d="M261.6 313.8c.2-1 1-1.7 1.9-2V306h1.7v5.7c.9.3 1.6.9 1.8 1.7h4.7v.3h-6.3a1.2 1.2 0 00-1-.6 1.2 1.2 0 00-1.1.6h-1.7m13 0v-.3h4.4l.2-.4-5.4-6 1.3-1 5.3 5.8h.3v-8h1.7v7.9h.3l5.2-5.8 1.3 1-5.2 5.9.3.6h4.2v.3h-13.9zm23 0a1.2 1.2 0 011.1-.6c.5 0 .9.2 1 .6h1.7a2.7 2.7 0 00-1.8-2V306h-1.8v5.7a2.7 2.7 0 00-1.8 1.7h-4.6v.3h6.3m-32.2-16l6.5 7.3 1.3-1-6.5-7.3.3-.6h4.7v-1.6h-4.7a2.8 2.8 0 00-2.7-1.9 2.7 2.7 0 00-2.8 2.7c0 1.1.8 2.1 1.9 2.5v5.6h1.7v-5.6h.3zm34 .1v5.6h-1.7v-5.6a2.6 2.6 0 01-.4-.2L291 305l-1.3-1 6.5-7.5a2.4 2.4 0 01-.1-.3h-4.8v-1.6h4.8a2.8 2.8 0 012.6-1.9c1.6 0 2.8 1.2 2.8 2.7 0 1.2-.8 2.2-2 2.5zm-17 0v3.4h-1.8V298a2.7 2.7 0 01-1.8-1.7h-4.3v-1.6h4.3a2.8 2.8 0 012.6-1.9c1.3 0 2.3.8 2.7 1.9h4.3v1.6h-4.3a2.7 2.7 0 01-1.7 1.7zm-19 4.1l-1.8.5v4.6l1.8.5V302m1.8 0l1.8.5v4.6l-1.8.5V302m32.5 0l-1.8.5v4.6l1.8.5V302m1.8 0l1.8.5v4.6l-1.8.5V302m-27.3 1l1.7-.8 3.2 3.5-1 1.5-3.9-4.2m-1.3 1l-1 1.5 3 3.5 1.8-.7-3.8-4.3m19.7-1.2l-1.8-.7-3 3.5 1 1.5 3.8-4.3m1.3 1l1 1.6-3 3.5-1.8-.7 3.8-4.3m-21.7 9.6l.5-1.7h4.8l.6 1.7h-5.9m-7-18.1c0-.6.5-1.2 1.1-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm12.8.8l-.5 1.7h-4.8l-.5-1.7h5.8m0-1.7l-.5-1.7h-4.8l-.5 1.7h5.8m16.7 19l-.5-1.7h-4.8l-.5 1.7h5.9m4.6-18.1c0-.6.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm-17.2 0c0-.6.6-1.2 1.2-1.2s1.2.5 1.2 1.2-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm6.7.8l.6 1.7h4.8l.5-1.7H287m0-1.6l.5-1.8h4.9l.5 1.7H287m-6.3 5.4l-1.8.5v4.6l1.8.5v-5.6m1.7 0l1.8.5v4.6l-1.8.5v-5.6"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M284.2 337.3a16.6 16.6 0 004-1l.8 1.4a18.8 18.8 0 01-4.6 1.3 2.8 2.8 0 01-2.8 2 2.8 2.8 0 01-2.7-2 18.7 18.7 0 01-4.8-1.3l.8-1.5c1.3.6 2.7 1 4.2 1.1a2.7 2.7 0 011.6-1.4v-7.2h1.8v7.2a2.8 2.8 0 011.7 1.4zm-5-21.7a2.4 2.4 0 01-.2-.5h-4.4v-1.6h4.4c0-.2 0-.3.2-.4l-5.4-6 1.3-1 5.3 5.8a2.2 2.2 0 01.3-.1V304h1.7v7.7l.3.1 5.2-5.9 1.3 1-5.2 6 .3.6h4.2v1.6h-4.2l-.3.6 5 5.6-1.4 1-4.9-5.6-.2.1v9.3h-1.8v-9.3l-.2-.1-5 5.6-1.4-1 5.1-5.7m-13.7-17.7l6.5 7.2 1.3-1-6.5-7.3.3-.6h4.7v-1.7h-4.7a2.8 2.8 0 00-2.7-1.8 2.7 2.7 0 00-2.8 2.7c0 1.1.8 2.1 1.9 2.5v5.5h1.7V298h.3zm7 37l-.9 1.5a17.8 17.8 0 01-3.9-3.3c-.9.3-1.9.1-2.6-.5a2.5 2.5 0 01-.3-3.7v-.2a16.3 16.3 0 01-1.3-5.1h1.8a14 14 0 001.1 4.4 3.1 3.1 0 011.5.1l4.4-4.8 1.3 1-4.3 4.9a2.5 2.5 0 01-.1 3 16.2 16.2 0 003.3 2.7zm-9-14v-4a2.7 2.7 0 01-2-2.6c0-1.2.9-2.2 2-2.6v-5.6h1.7v5.7c.9.2 1.5.9 1.8 1.7h4.7v1.6H267a2.7 2.7 0 01-1.8 1.7v4.1h-1.7m2.5 9a1.2 1.2 0 011.7-.2c.5.4.5 1.1 0 1.6a1.3 1.3 0 01-1.6.1 1.1 1.1 0 01-.1-1.6zm-2.2-4.9l-1.8-.4-.3-4.5 1.8-.6v2.6c0 1 0 2 .3 3zm1.5-5.6l1.7.4a64.3 64.3 0 00.3 4.6l-1.8.6-.3-2.9v-2.7zm5.9 14.6a16.7 16.7 0 005.1 2.7l.4-1.7a14.6 14.6 0 01-4.3-2.2l-1.2 1.2m-1 1.5a18.6 18.6 0 005.3 2.7l-1.4 1.2a20 20 0 01-4.2-2.1l.4-1.8"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M272.6 325.4l1.7.8 3.2-3.5-1-1.5-3.9 4.2m-1.3-1l-1-1.5 3.1-3.5 1.7.7-3.8 4.3m-8.2-10.1c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2 0 .6-.5 1.1-1.2 1.1-.6 0-1.2-.5-1.2-1.1zm27.5 20.6l.8 1.5a17.8 17.8 0 004-3.3c.8.3 1.8.1 2.6-.5a2.5 2.5 0 00.3-3.7l-.2-.2c.8-1.6 1.2-3.3 1.4-5.1h-1.7a14.2 14.2 0 01-1.2 4.4 3.1 3.1 0 00-1.5.1l-4.3-4.8-1.4 1 4.4 4.9a2.5 2.5 0 00.1 3 16 16 0 01-3.3 2.7zm9-14v-4.1a2.7 2.7 0 002-2.5 2.7 2.7 0 00-2-2.6v-5.6h-1.8v5.7c-.8.2-1.5.9-1.8 1.7h-4.7v1.6h4.8a2.7 2.7 0 001.7 1.7v4.1h1.8zm-2.5 9a1.2 1.2 0 00-1.7-.2 1.1 1.1 0 00-.1 1.6c.4.5 1.1.6 1.7.1a1 1 0 000-1.6zm2.2-4.8l1.8-.4.2-4.6-1.7-.6v2.6l-.3 3zm-1.5-5.7l-1.8.4v2.3c0-.8-.3 2.3-.3 2.3l1.9.6.2-2.9v-2.7m1.8-21.5v5.5h-1.8V298a2.4 2.4 0 01-.4-.2L291 305l-1.3-1.1 6.5-7.4a2.5 2.5 0 01-.1-.3h-4.8v-1.7h4.8a2.8 2.8 0 012.6-1.8c1.6 0 2.8 1.2 2.8 2.7 0 1.2-.8 2.2-2 2.5zm-17.2 0v3.4h-1.7v-3.4a2.7 2.7 0 01-1.8-1.7h-4.3v-1.7h4.3a2.8 2.8 0 012.6-1.8c1.3 0 2.3.8 2.7 1.8h4.3v1.7h-4.3a2.7 2.7 0 01-1.7 1.7zm9.5 36a16.8 16.8 0 01-5.2 2.8l-.4-1.7a14.6 14.6 0 004.3-2.1l1.3 1m.9 1.6a18.6 18.6 0 01-5.2 2.7l1.3 1.3a20 20 0 004.3-2.2l-.4-1.8M263.5 302l-1.8.5v4.6l1.8.5V302m1.8 0l1.8.5v4.6l-1.8.5V302m32.5 0l-1.8.5v4.6l1.8.5V302"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M299.6 302l1.8.5v4.6l-1.8.5V302m-9.2 23.4l-1.7.8-3.1-3.5 1-1.5 3.8 4.2m1.3-1l1-1.5-3-3.5-1.8.7 3.8 4.3m-19.4-21.5l1.7-.7 3.1 3.5-1 1.5-3.8-4.3M271 304l-1 1.5 3 3.5 1.8-.8-3.8-4.2m19.7-1.2l-1.8-.7-3 3.5 1 1.5 3.8-4.3m1.3 1l1 1.5-3 3.5-1.8-.7 3.8-4.2m-21.7 9.6l.5-1.7h4.8l.6 1.7h-5.9m0 1.6l.5 1.7h4.8l.6-1.7h-5.9m-7-19.7c0-.7.5-1.2 1.1-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm12.8.8l-.5 1.7h-4.8l-.5-1.7h5.8m0-1.7l-.5-1.7h-4.8l-.5 1.7h5.8m21.4 19.8c0-.6.5-1.2 1.2-1.2s1.2.5 1.2 1.2c0 .6-.5 1.1-1.2 1.1s-1.2-.5-1.2-1.1zm-4.7-.8l-.5-1.7h-4.8l-.5 1.7h5.9m0 1.6l-.6 1.7h-4.8l-.5-1.7h5.9m-12.4 23.3c0-.6.5-1.1 1.2-1.1.6 0 1.1.5 1.1 1.1 0 .7-.5 1.2-1.2 1.2s-1.2-.5-1.2-1.2zm2-8.2l1.8-.5V325l-1.8-.5v5.6m-1.8 0l-1.8-.5V325l1.8-.5v5.6m16.8-34.8c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm-17.2 0c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm6.7.8l.6 1.7h4.8l.5-1.7H287m0-1.7l.6-1.7h4.8l.5 1.7H287m-6.3 5.4l-1.8.5v4.5l1.8.5V300m1.7 0l1.8.5v4.5l-1.8.5V300"/>
+  <path fill="#058e6e" d="M278.8 314.3a2.7 2.7 0 012.8-2.6c1.6 0 2.8 1.1 2.8 2.6a2.7 2.7 0 01-2.8 2.7 2.7 2.7 0 01-2.8-2.7"/>
+  <path fill="#db4446" d="M282.3 245v-.6l.1-.4s-1.6.2-2.5 0a6.3 6.3 0 01-2.5-1.4c-.8-.7-1.1-1-1.7-1.2-1.4-.2-2.4.4-2.4.4s1 .4 1.8 1.4a5 5 0 002 1.5c.6.2 2.7 0 3.3.1l1.9.2"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M282.3 245v-.6l.1-.4s-1.6.2-2.5 0a6.3 6.3 0 01-2.5-1.4c-.8-.7-1.1-1-1.7-1.2-1.4-.2-2.4.4-2.4.4s1 .4 1.8 1.4a5 5 0 002 1.5c.6.2 2.7 0 3.3.1l1.9.2z"/>
+  <path fill="#ed72aa" stroke="#000" stroke-width=".4" d="M290 242.7v1.4c.1.7-.2 1.3 0 1.7l.2 1c.2.2.3.9.3.9l-.8-.6-.6-.4v1c.1.3.3 1 .6 1.3.3.3.9 1 1 1.4.3.4.2 1.4.2 1.4s-.4-.7-.9-.9l-1.3-.6s.9.8.9 1.6c0 .7-.4 1.6-.4 1.6s-.3-.7-.8-1.1l-1.2-1s.5 1.2.5 2v2.6s-.5-.7-1-1l-1-.8c0-.2.5.7.6 1.2 0 .5.3 2.4 2 4.8 1 1.4 2.4 3.8 5.6 3 3.2-.8 2-5 1.3-7-.6-2-1-4.3-1-5 .1-.8.7-3 .6-3.5a8.5 8.5 0 01.1-3.4c.4-1.3.8-1.9 1-2.4l.5-1.4v-1.4l.8 1.5.1 1.5s.1-1.1 1-1.7c1-.6 2-1.2 2.2-1.5l.4-.5s-.1 2-.7 2.7l-1.8 2.2s.8-.3 1.3-.3h.9s-.7.5-1.5 1.6c-.8 1.2-.5 1.3-1 2.3-.7 1-1.1 1-1.9 1.6-1 1-.5 4.5-.3 5 .1.5 2 4.9 2 6 .1 1 .3 3.3-1.6 4.9-1.2 1-3.1 1-3.6 1.2-.4.3-1.3 1.2-1.3 3s.7 2.1 1.2 2.6c.5.4 1.2.2 1.3.5l.5.8c.2.2.4.5.3.8 0 .4-1 1.3-1.2 2-.3.6-1 2.2-1 2.5 0 .2 0 1 .3 1.4 0 0 .9 1 .2 1.3-.4.1-.8-.3-1-.2l-1 .4c-.3 0-.3-.2-.4-.8l-.1-.7c-.3 0-.4.2-.4.5 0 .2 0 .9-.3.9s-.6-.5-.9-.6c-.2 0-.8-.2-.9-.5 0-.3.4-.9.8-1 .4 0 .8-.3.5-.5-.2-.2-.5-.2-.7 0s-.8 0-.8-.3.1-.7 0-.8c0-.2-.4-.6.2-.9.6-.3.8.3 1.4.2.6-.1 1-.3 1.1-.7.2-.3.2-1-.2-1.5s-.8-.5-1-.8l-.3-1v2.4l-.8-.9c-.3-.3-.6-1.4-.6-1.4v1.4c0 .4.4.7.2.9-.1.1-.8-.8-1-.9-.2-.1-.8-.6-1-1l-.6-1.5c0-.2-.2-1.4 0-1.6l.4-1.2h-1.4c-.8 0-1.3-.2-1.6.3-.3.5-.2 1.6.2 3 .4 1.3.6 2 .5 2.2a4 4 0 01-.8 1l-1-.1c-.2-.1-.5-.3-1.2-.3h-1.4c-.3 0-1-.4-1.2-.3-.3 0-.8.3-.7.7.2.6-.2.8-.5.7l-1-.2c-.3-.1-.9 0-.8-.4 0-.5.2-.5.4-.8.2-.3.3-.5 0-.5h-.7c-.2.2-.5.6-.7.5-.3-.2-.5-.5-.5-1.1 0-.7-.7-1.3 0-1.3.6 0 1.4.5 1.5.2.2-.4 0-.5-.3-.8-.3-.3-.7-.5-.3-.8l.8-.6c.2-.1.4-.8.7-.6.7.3 0 .7.7 1.4.6.7 1 1 2.1.9 1-.1 1.4-.3 1.4-.6l-.2-1 .2-1s-.5.3-.6.6l-.5.8v-2.1l-.2-.9-.3 1-.1 1s-.7-.5-.5-1.5v-2.1c.3-.4.9-1.7 2.2-1.8h2.8l2.1-.3s-3-1.5-3.7-2c-.7-.5-1.8-1.7-2.1-2.2-.4-.6-.7-1.6-.7-1.6s-.5 0-1 .3a5.3 5.3 0 00-1.3 1l-.7 1v-2s-.4 1.3-1 1.8l-1.5 1.2v-1l.2-1s-.5.8-1.2 1-1.9 0-2 .5c0 .5.2 1.1 0 1.4-.1.4-.5.6-.5.6s-.4-.4-.8-.4-.7.2-.7.2-.4-.4-.2-.7c0-.3.7-.7.5-.9-.1-.1-.6.1-.9.2-.3.2-.9.3-.8-.2 0-.4.2-.7 0-1-.1-.3 0-.6.2-.6.2-.1 1.2 0 1.3-.2 0-.3-.3-.5-.9-.7-.6-.1-.9-.5-.6-.8l.6-.6c.1-.3.2-.8.7-.6.6.3.5.9 1 1 .6.3 2 0 2.3-.1l1.5-1 1.7-1.2-1.1-.8-1-1.1a8.8 8.8 0 00-2-.7c-.5 0-1.8-.5-1.8-.5l.8-.3c.2-.2.7-.6.9-.6h.3-1.5c-.3-.2-1-.6-1.3-.6h-.9s.8-.4 1.4-.5l1.2-.1s-1-.3-1.3-.6l-.6-1c-.2-.2-.3-.6-.6-.6s-.9.4-1.2.3c-.3 0-.5-.2-.6-.7v-.5c-.2-.3-.7-.8-.2-1h1.4c.1-.2-.5-.7-.8-1-.4-.1-1-.4-.7-.7l.8-.6c.2-.3.4-1 .8-.7.3.2.9 1.3 1.1 1.2.3-.1.4-.9.3-1.2 0-.3 0-1 .3-.9.3 0 .5.5 1 .5.4 0 1.1-.1 1 .2 0 .4-.3.8-.6 1.1a1.6 1.6 0 00-.2 1.6 4 4 0 001.2 1.5c.4.3 1.3.5 1.8.8.6.4 1.9 1.4 2.3 1.5l.9.3s.5-.2 1.1-.2c.7 0 2.2.1 2.8-.1.6-.3 1.3-.7 1.1-1.2-.2-.5-1.5-1-1.4-1.4.1-.4.6-.4 1.4-.5.8 0 1.8.2 2-1 .2-1 .3-1.6-.8-1.9-1.1-.2-2-.3-2.1-1-.2-.8-.4-1-.2-1.3.2-.2.6-.3 1.5-.3.8-.1 1.7-.1 2-.3.2-.2.3-.7.6-1l1.5-.3s1.5.7 3 1.7c1.2 1 2.3 2.3 2.3 2.3"/>
+  <path d="M279.3 242l-.2-.7-.1-.3s.9 0 .9.2c0 .3-.3.3-.4.4 0 .2-.2.3-.2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M279.3 242l-.2-.7-.1-.3s.9 0 .9.2c0 .3-.3.3-.4.4 0 .2-.2.3-.2.3z"/>
+  <path d="M283.4 240.5v-.5s.7 0 1.1.3c.6.4 1 1 1 1-.2.2-.6-.2-1-.3h-.4c-.2 0-.3 0-.4-.2v-.3h-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M283.4 240.5v-.5s.7 0 1.1.3c.6.4 1 1 1 1-.2.2-.6-.2-1-.3h-.4c-.2 0-.3 0-.4-.2v-.3h-.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M289 246.7l-.4-.7a8 8 0 01-.2-.5"/>
+  <path fill="#db4446" d="M267.9 241.8s.5.3.8.3l.9.1s.2-.5.1-1c-.2-1.2-1.3-1.4-1.3-1.4s.3.7.1 1c-.2.6-.6 1-.6 1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M267.9 241.8s.5.3.8.3l.9.1s.2-.5.1-1c-.2-1.2-1.3-1.4-1.3-1.4s.3.7.1 1c-.2.6-.6 1-.6 1z"/>
+  <path fill="#db4446" d="M265.5 242.8s-.4-.8-1.3-.7c-1 .1-1.6.9-1.6.9h1.3c.4.3.5 1 .5 1l.7-.6.4-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M265.5 242.8s-.4-.8-1.3-.7c-1 .1-1.6.9-1.6.9h1.3c.4.3.5 1 .5 1l.7-.6.4-.6z"/>
+  <path fill="#db4446" d="M264.4 246s-.8.1-1.2.6c-.5.5-.4 1.5-.4 1.5s.5-.6 1-.6l1.2.2-.3-.9c0-.3-.3-.8-.3-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M264.4 246s-.8.1-1.2.6c-.5.5-.4 1.5-.4 1.5s.5-.6 1-.6l1.2.2-.3-.9c0-.3-.3-.8-.3-.8z"/>
+  <path d="M279.3 245.9l.4-.5.3.5h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M279.3 245.9l.4-.5.3.5h-.7"/>
+  <path d="M280.2 245.9l.4-.6.4.5h-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M280.2 245.9l.4-.6.4.5h-.8"/>
+  <path d="M279.8 242.5l.8.3-.7.4-.1-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M279.8 242.5l.8.3-.7.4-.1-.7"/>
+  <path d="M280.8 242.8l.8.2-.6.4-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M280.8 242.8l.8.2-.6.4-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M275.2 249.2s-.9.3-1.2.7c-.3.6-.3 1.1-.3 1.1s.7-.6 1.6-.3l1.3.3c.4 0 1.3-.4 1.3-.4s-.7.9-.6 1.5c0 .6.2.9.1 1.2 0 .7-.5 1.6-.5 1.6l1-.3a4.9 4.9 0 001.8-.9l1-1s-.2 1 0 1.5l.2 1.7s.4-.5.8-.7c.2 0 .8-.4 1-.7l.3-1s0 .8.4 1.3c.3.4.7 1.8.7 1.8s.3-.9.6-1.3c.3-.3.7-.8.7-1v-1l.4 1m-11.7.6s.5-.9 1-1.2l1.2-.8 1-.4m1 5.3l1.4-.8a4.2 4.2 0 001.2-1.2"/>
+  <path fill="#db4446" d="M267 256.4s-.4-.5-1.2-.3c-.7 0-1.2 1-1.2 1l1-.2c.4.2.6.5.6.5l.5-.4.3-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M267 256.4s-.4-.5-1.2-.3c-.7 0-1.2 1-1.2 1l1-.2c.4.2.6.5.6.5l.5-.4.3-.6z"/>
+  <path fill="#db4446" d="M266.2 259.4s-.7 0-1.2.4c-.6.4-.6 1.2-.6 1.2s.5-.4 1-.3l.8.2.1-.6c.1-.4-.1-.9-.1-.9"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M266.2 259.4s-.7 0-1.2.4c-.6.4-.6 1.2-.6 1.2s.5-.4 1-.3l.8.2.1-.6c.1-.4-.1-.9-.1-.9z"/>
+  <path fill="#db4446" d="M267.6 262.2s0 .8.4 1.3c.4.6 1.2.6 1.2.6l-.3-.8c-.1-.4.3-.7.3-.7s-.4-.4-.7-.4h-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M267.6 262.2s0 .8.4 1.3c.4.6 1.2.6 1.2.6l-.3-.8c-.1-.4.3-.7.3-.7s-.4-.4-.7-.4h-.8zm17.1 1.4s2.1 1.3 2 2.4c0 1-1.1 2.4-1.1 2.4"/>
+  <path fill="#db4446" d="M275.2 269.4s-.5-.6-1.3-.6c-.7 0-1.5.7-1.5.7s1 0 1.2.2l.4.7.6-.3.6-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M275.2 269.4s-.5-.6-1.3-.6c-.7 0-1.5.7-1.5.7s1 0 1.2.2l.4.7.6-.3.6-.7z"/>
+  <path fill="#db4446" d="M273 272.3s-1-.1-1.5.4-.4 1.4-.4 1.4.6-.7 1-.6c.6 0 1.2.3 1.2.3l-.2-.8a14 14 0 00-.2-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M273 272.3s-1-.1-1.5.4-.4 1.4-.4 1.4.6-.7 1-.6c.6 0 1.2.3 1.2.3l-.2-.8a14 14 0 00-.2-.7z"/>
+  <path fill="#db4446" d="M275 275.4s-.5.6-.1 1.1c.3.6 1 .8 1 .8s-.2-.4-.1-.8.7-.8.7-.8l-1.5-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M275 275.4s-.5.6-.1 1.1c.3.6 1 .8 1 .8s-.2-.4-.1-.8.7-.8.7-.8l-1.5-.3z"/>
+  <path fill="#db4446" d="M287.7 276.6s-.8-.2-1.3 0c-.5.3-.8 1.5-.8 1.5s.7-.6 1.3-.6l1 .3v-.8a2.8 2.8 0 00-.2-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M287.7 276.6s-.8-.2-1.3 0c-.5.3-.8 1.5-.8 1.5s.7-.6 1.3-.6l1 .3v-.8a2.8 2.8 0 00-.2-.4z"/>
+  <path fill="#db4446" d="M288.1 279.7s-.6.6-.4 1.2a7.3 7.3 0 00.6 1s0-.7.3-1c.3-.3 1-.3 1-.3l-.7-.6-.8-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M288.1 279.7s-.6.6-.4 1.2a7.3 7.3 0 00.6 1s0-.7.3-1c.3-.3 1-.3 1-.3l-.7-.6-.8-.3z"/>
+  <path fill="#db4446" d="M291.3 280.6s-.3.8.3 1.3c.6.6 1.1.6 1.1.6s-.5-.8-.3-1.3c.1-.4.5-.7.5-.7l-.8-.2-.8.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M291.3 280.6s-.3.8.3 1.3c.6.6 1.1.6 1.1.6s-.5-.8-.3-1.3c.1-.4.5-.7.5-.7l-.8-.2-.8.3z"/>
+  <path fill="#ffd691" stroke="#000" stroke-width=".5" d="M258.7 337.5c2.1.6 3.2 2.2 3.2 4 0 2.5-2.3 4.3-5.4 4.3-3 0-5.6-1.8-5.6-4.2 0-1.9 1-4 3.2-4 0 0 0-.3-.3-.6l-.6-.7h1.3l.7.5.6-.7c.3-.4.7-.6.7-.6l.6.7.3.6s.4-.4.8-.5l.9-.3-.3.7-.1.8"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".5" d="M256 348.5s-4-2.8-5.8-3.1c-2.3-.5-4.8-.1-5.9-.2l1.9 1.5a11 11 0 003.5 2c3.3.8 6.3-.2 6.3-.2m1.2.2s2.6-2.7 5.3-3c3.3-.5 5.4.2 6.6.5 0 0-1 .5-1.6 1-.5.3-2 1.5-4.2 1.6-2.2 0-4.7-.3-5.1-.2l-1 .1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".5" d="M256.4 345.4a5.2 5.2 0 010-7.6 5.2 5.2 0 011.7 3.8 5.2 5.2 0 01-1.7 3.8"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".5" d="M255.4 351s.6-1.6.7-3l-.2-2.2h.8s.4 1.2.4 2.2l-.2 2.5-.7.1-.8.3"/>
+  <path fill="#fff" d="M307 203.4c0-.6.4-1 1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M307 203.4c0-.6.4-1 1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M308.4 200.7c0-.6.6-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M308.4 200.7c0-.6.6-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M309.5 197.6c0-.6.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M309.5 197.6c0-.6.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M309.6 194.2c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1-.7 0-1.2-.4-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M309.6 194.2c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1-.7 0-1.2-.4-1.2-1z"/>
+  <path fill="#fff" d="M308.8 190.9c0-.6.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M308.8 190.9c0-.6.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M307 187.8c0-.5.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1.1-1 1.1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M307 187.8c0-.5.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1.1-1 1.1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M304.7 185.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .5-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M304.7 185.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .5-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M302 183.3c0-.6.6-1 1.2-1s1.1.4 1.1 1-.5 1-1.1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M302 183.3c0-.6.6-1 1.2-1s1.1.4 1.1 1-.5 1-1.1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M298.9 181.6c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M298.9 181.6c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M295.5 180.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M295.5 180.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M291.8 179.8c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .7-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M291.8 179.8c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .7-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1z"/>
+  <path fill="#fff" d="M288.3 179.6c0-.6.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M288.3 179.6c0-.6.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 01-1-1z"/>
+  <path fill="#fff" d="M284.9 179.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M284.9 179.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M281.4 179.7c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M281.4 179.7c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M283.1 182.7c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.2-1m.7 3.2c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1m.2 3.3c0-.6.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1m-1 3c0-.6.4-1.1 1-1.1a1 1 0 011.2 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.2-1m-1.9 2.7c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="#fff" d="M278.8 177.6c0-.5.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M278.8 177.6c0-.5.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M275.7 176c0-.7.5-1.1 1.1-1.1.7 0 1.2.4 1.2 1s-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M275.7 176c0-.7.5-1.1 1.1-1.1.7 0 1.2.4 1.2 1s-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M272.3 175c0-.7.5-1.1 1.2-1.1.6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M272.3 175c0-.7.5-1.1 1.2-1.1.6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M268.8 174.3c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M268.8 174.3c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 01-1-1z"/>
+  <path fill="#fff" d="M265.4 174.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M265.4 174.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M261.8 175c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M261.8 175c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M258.5 176.1c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M258.5 176.1c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M202.3 203.4c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1.1-1 1.1a1 1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M202.3 203.4c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1.1-1 1.1a1 1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M200.8 200.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M200.8 200.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M199.7 197.6c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M199.7 197.6c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M199.6 194.2c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1c-.6 0-1-.4-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M199.6 194.2c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1c-.6 0-1-.4-1-1z"/>
+  <path fill="#fff" d="M200.4 190.9c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M200.4 190.9c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M202.2 187.8c0-.5.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M202.2 187.8c0-.5.5-1 1-1a1 1 0 011.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M204.5 185.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1.1 1-.6 0-1.1-.4-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M204.5 185.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1.1 1-.6 0-1.1-.4-1.1-1z"/>
+  <path fill="#fff" d="M207.2 183.3c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M207.2 183.3c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M210.3 181.6c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M210.3 181.6c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M213.7 180.4c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M213.7 180.4c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M217.4 179.8c0-.6.5-1.1 1.1-1.1a1 1 0 011.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M217.4 179.8c0-.6.5-1.1 1.1-1.1a1 1 0 011.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M220.9 179.6c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M220.9 179.6c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M224.3 179.7c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M224.3 179.7c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M227.8 179.7c0-.6.5-1 1.1-1 .6 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M227.8 179.7c0-.6.5-1 1.1-1 .6 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M226 182.7c0-.6.6-1.1 1.2-1.1s1.1.5 1.1 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1m-.7 3.2c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1c-.6 0-1.1-.4-1.1-1m-.2 3.3c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1m1 3c0-.6.6-1.1 1.2-1.1a1 1 0 011.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 01-1.1-1m1.9 2.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="#fff" d="M230.4 177.6c0-.5.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M230.4 177.6c0-.5.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1.1 1.1 0 01-1-1z"/>
+  <path fill="#fff" d="M233.5 176c0-.7.5-1.1 1.1-1.1.6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M233.5 176c0-.7.5-1.1 1.1-1.1.6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M236.9 175c0-.7.5-1.1 1-1.1s1.2.4 1.2 1-.5 1-1.1 1a1.1 1.1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M236.9 175c0-.7.5-1.1 1-1.1s1.2.4 1.2 1-.5 1-1.1 1a1.1 1.1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M240.4 174.3c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M240.4 174.3c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M243.8 174.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1 1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M243.8 174.4c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1 1 0 01-1.2-1z"/>
+  <path fill="#fff" d="M247.4 175c0-.6.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M247.4 175c0-.6.5-1 1.1-1a1 1 0 011.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 01-1-1z"/>
+  <path fill="#fff" d="M250.7 176.1c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M250.7 176.1c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 01-1.2-1z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M222.3 244.1h-1v-1h-1.6v3.9h1.6v2.6h-3.5v7.5h1.9v15.2h-3.8v7.8h29v-7.8h-3.7v-15.2h1.9v-7.5h-3.6V247h1.7v-3.8h-1.7v1h-1v-1H237v1h-1.2v-1h-1.6v3.8h1.6v2.6h-3.5v-8.3h1.9v-3.8h-1.9v1h-1v-1h-1.6v1h-1v-1h-1.9v3.8h2v8.3H225V247h1.7v-3.8H225v1h-1v-1h-1.8v1zm-6.4 36h29m-29-1.9h29m-29-1.9h29m-29-1.9h29m-29-2.1h29m-25.2-1.7h21.5m-21.5-1.9h21.5m-21.5-2h21.5m-21.5-2h21.5m-21.5-1.9h21.5m-21.5-1.9h21.5m-21.5-1.9h21.5m-23.4-1.9H243m-25.3-1.8H243m-25.3-2H243m-25.3-1.8H243m-21.8-2h18.2m-10.9-1.8h3.6m-3.5-2h3.5m-3.5-1.8h3.5m-3.5-1.9h3.5m-5.4-2.4h7.3m-12.8 8h3.8m-5.4-2.3h7m-7 34.8v-1.9m0-1.9v-1.9m-2 2v1.8m3.6 0v-1.9m2 3.8v-1.9m0-1.9v-1.9m0-2.1v-1.7m0-1.9v-2m-2 7.7v-2.1m-3.5 2.1v-2.1m7.3 0v2.1m1.7-2.1v-1.7m-5.5-1.9v2m3.8-2v2m3.5-2v2m-1.8-2v-2m1.8-2v2m0-5.8v2m-1.8-3.9v2m1.8-3.8v1.8m-3.5-1.9v2m-3.8-2v2m-1.6-3.8v1.9m3.5-2v2m3.6-2v2m1.9-3.8v1.9m-3.6-2v2m-3.8-2v2m-1.6-3.8v1.9m7-2v2m-3.5-5.7v1.9m16.3-2h-3.7m5.4-2.3H234m7 34.8v-1.9m0-1.9v-1.9m2 2v1.8m-3.6 0v-1.9m-1.9 3.8v-1.9m0-1.9v-1.9m0-2.1v-1.7m0-1.9v-2m2 7.7v-2.1m3.5 2.1v-2.1m-7.3 0v2.1m-1.7-2.1v-1.7m5.4-1.9v2m-3.7-2v2m-3.6-2v2m1.9-2v-2m-1.9-2v2m0-5.8v2m1.9-3.9v2m-1.9-3.8v1.8m3.6-1.9v2m3.8-2v2m1.6-3.8v1.9m-3.5-2v2m-3.6-2v2m-1.9-3.8v1.9m3.6-2v2m3.7-2v2m1.7-3.8v1.9m-7.1-2v2m3.6-5.7v1.9m-7.4 19.1v-2m0-5.8V259m0 5.7v-1.9m0-5.7v-1.8m0-2v-1.8m0-3.8v-2m0-1.8V242m-9 5h3.8m3.6-5.7h3.5m3.6 5.7h3.7"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M235.3 280.1v-5c0-1-.5-3.8-5-3.8-4.3 0-4.7 2.9-4.7 3.8v5h9.7z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M227.2 275.4l-2.3-.3c0-1 .2-2.3 1-2.8l2 1.7c-.2.2-.7.9-.7 1.4zm6.4 0l2.4-.3c0-1-.3-2.3-1-2.8l-2 1.7c.1.2.6.9.6 1.4zm-2.4-2.4l1.2-2.1a5.6 5.6 0 00-2-.5c-.6 0-1.5.2-2 .5l1.2 2.1h1.6zm-4.4-6v-5c0-1.4-1-2.6-2.6-2.6-1.7 0-2.6 1.2-2.6 2.6v5.2h5.2zm7.3 0v-5c0-1.4 1-2.6 2.6-2.6s2.6 1.2 2.6 2.6v5.2h-5.2zm-1.9-12.7l.5-4.7h-4.5l.2 4.7h3.8zm3.5 0l-.4-4.7h4.7l-.5 4.7h-3.8zm-10.6 0l.2-4.7h-4.5l.5 4.7h3.8z"/>
+  <path fill="#0039f0" d="M233.6 280.1v-4.3c0-.7-.4-2.8-3.3-2.8a2.9 2.9 0 00-3 2.8v4.3h6.3zm-7.3-13.5v-4.5c0-1.2-.7-2.4-2.1-2.4s-2.2 1.2-2.2 2.4v4.5h4.3zm8.3 0v-4.5c0-1.2.7-2.4 2.1-2.4s2.1 1.2 2.1 2.4v4.5h-4.2z"/>
+  <path fill="#ad1519" d="M239.5 287.8c0-10.4 7.5-18.8 16.6-18.8s16.7 8.4 16.7 18.7c0 10.4-7.5 18.8-16.7 18.8s-16.6-8.4-16.6-18.7"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M239.5 287.8c0-10.4 7.5-18.8 16.6-18.8s16.7 8.4 16.7 18.7c0 10.4-7.5 18.8-16.7 18.8s-16.6-8.4-16.6-18.7z"/>
+  <path fill="#005bbf" d="M244.4 287.7c0-7.6 5.3-13.7 11.7-13.7 6.5 0 11.8 6.1 11.8 13.7s-5.3 13.7-11.7 13.7c-6.5 0-11.8-6.1-11.8-13.7"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M244.4 287.7c0-7.6 5.3-13.7 11.7-13.7 6.5 0 11.8 6.1 11.8 13.7s-5.3 13.7-11.7 13.7c-6.5 0-11.8-6.1-11.8-13.7z"/>
+  <path fill="#c8b100" d="M250.6 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6a1.5 1.5 0 00-1.4-1 1.5 1.5 0 00-1.6 1.5l.3.8.5 1c.2-.4.5-.6 1-.6.6 0 1 .5 1 1v.3h-1.2v1h1.1l-.8 1.7 1-.4 1 1 .8-1 1 .4-.7-1.6h1v-1.1h-1.2a1 1 0 010-.3c0-.5.5-1 1-1s1 .2 1 .6l.6-1 .2-.8c0-.8-.6-1.5-1.5-1.5-.7 0-1.2.4-1.4 1 0 0 .5-1.2.5-2.6 0-1.4-1.4-3-1.4-3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M250.6 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6a1.5 1.5 0 00-1.4-1 1.5 1.5 0 00-1.6 1.5l.3.8.5 1c.2-.4.5-.6 1-.6.6 0 1 .5 1 1v.3h-1.2v1h1.1l-.8 1.7 1-.4 1 1 .8-1 1 .4-.7-1.6h1v-1.1h-1.2a1 1 0 010-.3c0-.5.5-1 1-1s1 .2 1 .6l.6-1 .2-.8c0-.8-.6-1.5-1.5-1.5-.7 0-1.2.4-1.4 1 0 0 .5-1.2.5-2.6 0-1.4-1.4-3-1.4-3z"/>
+  <path fill="#c8b100" d="M248.4 287.9h4.5v-1.1h-4.5v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M248.4 287.9h4.5v-1.1h-4.5v1z"/>
+  <path fill="#c8b100" d="M261.5 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6c-.2-.6-.8-1-1.4-1-.9 0-1.6.7-1.6 1.5l.3.8.5 1c.1-.4.5-.6 1-.6a1 1 0 011 1 1 1 0 010 .3h-1.2v1h1.1l-.8 1.7 1-.4.9 1 .9-1 1 .4-.8-1.6h1.1v-1.1h-1.2a.9.9 0 010-.3c0-.5.5-1 1-1s.9.2 1 .6l.6-1 .2-.8c0-.8-.7-1.5-1.5-1.5-.7 0-1.3.4-1.5 1 0 0 .6-1.2.6-2.6 0-1.4-1.4-3-1.4-3"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M261.5 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6c-.2-.6-.8-1-1.4-1-.9 0-1.6.7-1.6 1.5l.3.8.5 1c.1-.4.5-.6 1-.6a1 1 0 011 1 1 1 0 010 .3h-1.2v1h1.1l-.8 1.7 1-.4.9 1 .9-1 1 .4-.8-1.6h1.1v-1.1h-1.2a.9.9 0 010-.3c0-.5.5-1 1-1s.9.2 1 .6l.6-1 .2-.8c0-.8-.7-1.5-1.5-1.5-.7 0-1.3.4-1.5 1 0 0 .6-1.2.6-2.6 0-1.4-1.4-3-1.4-3z"/>
+  <path fill="#c8b100" d="M259.3 287.9h4.5v-1.1h-4.5v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M259.3 287.9h4.5v-1.1h-4.5v1z"/>
+  <path fill="#c8b100" d="M256 287.6s-1.3 1.5-1.3 3c0 1.4.6 2.6.6 2.6a1.5 1.5 0 00-1.5-1 1.5 1.5 0 00-1.5 1.4l.2.8.5 1c.2-.3.6-.5 1-.5.6 0 1.1.4 1.1 1a1 1 0 010 .3h-1.2v1h1l-.8 1.7 1.1-.5.9 1 .8-1 1.1.5-.8-1.7h1.1v-1h-1.2a1 1 0 010-.3c0-.6.4-1 1-1 .5 0 .9.2 1 .5l.5-1c.1-.2.3-.5.3-.8 0-.8-.7-1.4-1.6-1.4a1.5 1.5 0 00-1.4 1s.6-1.2.6-2.7c0-1.4-1.4-2.9-1.4-2.9"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M256 287.6s-1.3 1.5-1.3 3c0 1.4.6 2.6.6 2.6a1.5 1.5 0 00-1.5-1 1.5 1.5 0 00-1.5 1.4l.2.8.5 1c.2-.3.6-.5 1-.5.6 0 1.1.4 1.1 1a1 1 0 010 .3h-1.2v1h1l-.8 1.7 1.1-.5.9 1 .8-1 1.1.5-.8-1.7h1.1v-1h-1.2a1 1 0 010-.3c0-.6.4-1 1-1 .5 0 .9.2 1 .5l.5-1c.1-.2.3-.5.3-.8 0-.8-.7-1.4-1.6-1.4a1.5 1.5 0 00-1.4 1s.6-1.2.6-2.7c0-1.4-1.4-2.9-1.4-2.9z"/>
+  <path fill="#c8b100" d="M253.8 297.2h4.5v-1h-4.5v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M253.8 297.2h4.5v-1h-4.5v1z"/>
+  <path fill="#c8b100" d="M289.4 238.3h-.3a1.6 1.6 0 01-.3.4c-.3.2-.7.3-.9 0a.5.5 0 01-.1-.4.5.5 0 01-.5 0c-.3-.1-.4-.5-.2-.8l.1-.2v-.3h-.3l-.1.3c-.3.2-.6.3-.8.1a.6.6 0 01-.1-.2h-.2c-.5.2-.7-1-.8-1.3l-.1.3v1.3a7 7 0 01-.3 1.2c.8.2 2 .8 3 1.7a9.6 9.6 0 012.5 2.5l1.2-.6c.6-.2 1.4-.2 1.4-.2l.2-.2c-.3 0-1.6.1-1.6-.4l.1-.2a.7.7 0 01-.3 0c-.2-.2-.2-.5 0-.8h.2v-.4h-.3l-.2.1c-.3.3-.7.3-.9 0a.5.5 0 010-.4.6.6 0 01-.6 0 .6.6 0 010-.9 1.6 1.6 0 01.2-.3v-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M289.4 238.3h-.3a1.6 1.6 0 01-.3.4c-.3.2-.7.3-.9 0a.5.5 0 01-.1-.4.5.5 0 01-.5 0c-.3-.1-.4-.5-.2-.8l.1-.2v-.3h-.3l-.1.3c-.3.2-.6.3-.8.1a.6.6 0 01-.1-.2h-.2c-.5.2-.7-1-.8-1.3l-.1.3v1.3a7 7 0 01-.3 1.2c.8.2 2 .8 3 1.7a9.6 9.6 0 012.5 2.5l1.2-.6c.6-.2 1.4-.2 1.4-.2l.2-.2c-.3 0-1.6.1-1.6-.4l.1-.2a.7.7 0 01-.3 0c-.2-.2-.2-.5 0-.8h.2v-.4h-.3l-.2.1c-.3.3-.7.3-.9 0a.5.5 0 010-.4.6.6 0 01-.6 0 .6.6 0 010-.9 1.6 1.6 0 01.2-.3v-.3z"/>
+  <path d="M287 239h.3s.1.2 0 .2h-.2v-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M287 239h.3s.1.2 0 .2h-.2v-.2z"/>
+  <path d="M288 239.8l-.3-.2v-.2h.2l.3.3.3.2s.1.1 0 .2h-.1l-.4-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M288 239.8l-.3-.2v-.2h.2l.3.3.3.2s.1.1 0 .2h-.1l-.4-.3"/>
+  <path d="M286.3 238.6l-.3-.2s-.1 0 0-.1h.1l.3.1.2.2.1.1h-.2l-.2-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M286.3 238.6l-.3-.2s-.1 0 0-.1h.1l.3.1.2.2.1.1h-.2l-.2-.1"/>
+  <path d="M285.2 237.9h.2l.1.2h-.2l-.1-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M285.2 237.9h.2l.1.2h-.2l-.1-.2z"/>
+  <path d="M289.1 240.6v-.3h-.3v.3h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M289.1 240.6v-.3h-.3v.3h.3z"/>
+  <path d="M289.7 241.2l.2.2c0 .1.2.1.2 0l-.2-.3-.2-.2h-.2v.1l.2.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M289.7 241.2l.2.2c0 .1.2.1.2 0l-.2-.3-.2-.2h-.2v.1l.2.2"/>
+  <path d="M290.7 242v-.2h-.3v.3h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M290.7 242v-.2h-.3v.3h.3z"/>
+  <path fill="#c8b100" d="M287.9 235.9h-.6l-.2.9.1.1h.2l.7-.5-.2-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M287.9 235.9h-.6l-.2.9.1.1h.2l.7-.5-.2-.5"/>
+  <path fill="#c8b100" d="M286.2 236.4v.5l1 .2v-.3l-.5-.7-.5.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M286.2 236.4v.5l1 .2v-.3l-.5-.7-.5.3"/>
+  <path fill="#c8b100" d="M288.2 237.5l-.5.3-.6-.8v-.1h1.1v.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M288.2 237.5l-.5.3-.6-.8v-.1h1.1v.6"/>
+  <path fill="#c8b100" d="M287 236.8a.3.3 0 01.3-.1.3.3 0 01.1.4.3.3 0 01-.3 0 .3.3 0 01-.2-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M287 236.8a.3.3 0 01.3-.1.3.3 0 01.1.4.3.3 0 01-.3 0 .3.3 0 01-.2-.3z"/>
+  <path fill="#c8b100" d="M284.8 235.9l-.3-.8a2 2 0 00-.4-.4s.4-.2.9.1c.4.3 0 .9 0 .9l-.2.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M284.8 235.9l-.3-.8a2 2 0 00-.4-.4s.4-.2.9.1c.4.3 0 .9 0 .9l-.2.2z"/>
+  <path fill="#c8b100" d="M285.8 236.2l-.4.4-.7-.6v-.3h1l.1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M285.8 236.2l-.4.4-.7-.6v-.3h1l.1.5"/>
+  <path fill="#c8b100" d="M284.6 235.8l.3-.2c.1 0 .2.2.1.3 0 .2-.2.3-.3.3 0 0-.1-.2 0-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M284.6 235.8l.3-.2c.1 0 .2.2.1.3 0 .2-.2.3-.3.3 0 0-.1-.2 0-.4z"/>
+  <path fill="#c8b100" d="M290.2 237.3h-.6l-.3.8v.2h.2l.9-.4-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M290.2 237.3h-.6l-.3.8v.2h.2l.9-.4-.2-.6"/>
+  <path fill="#c8b100" d="M288.5 237.6l-.1.6.9.2h.1v-.2l-.4-.8-.5.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M288.5 237.6l-.1.6.9.2h.1v-.2l-.4-.8-.5.2"/>
+  <path fill="#c8b100" d="M290.3 239l-.6.2-.4-.8v-.2h.1l1 .2-.1.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M290.3 239l-.6.2-.4-.8v-.2h.1l1 .2-.1.6"/>
+  <path fill="#c8b100" d="M289.1 238.1c.1-.1.3-.1.4 0a.3.3 0 01.1.4.3.3 0 01-.4 0 .3.3 0 010-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M289.1 238.1c.1-.1.3-.1.4 0a.3.3 0 01.1.4.3.3 0 01-.4 0 .3.3 0 010-.4z"/>
+  <path fill="#c8b100" d="M292.2 239.2l.1.6-.9.3h-.1v-.2l.3-.8.6.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M292.2 239.2l.1.6-.9.3h-.1v-.2l.3-.8.6.1"/>
+  <path fill="#c8b100" d="M292 240.8l-.5.2-.3-.9v-.1h.2l.8.3-.1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M292 240.8l-.5.2-.3-.9v-.1h.2l.8.3-.1.5"/>
+  <path fill="#c8b100" d="M290.5 239.3l-.2.5.9.3h.1v-.1l-.2-.9-.6.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M290.5 239.3l-.2.5.9.3h.1v-.1l-.2-.9-.6.2"/>
+  <path fill="#c8b100" d="M291.5 240.3a.3.3 0 000-.4.3.3 0 00-.5 0 .3.3 0 000 .3.3.3 0 00.4 0"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M291.5 240.3a.3.3 0 000-.4.3.3 0 00-.5 0 .3.3 0 000 .3.3.3 0 00.4 0z"/>
+  <path fill="#c8b100" d="M292.9 242.1l.8.1a2 2 0 01.5.3s.1-.5-.3-.8c-.4-.3-.9.2-.9.2l-.1.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M292.9 242.1l.8.1a2 2 0 01.5.3s.1-.5-.3-.8c-.4-.3-.9.2-.9.2l-.1.2z"/>
+  <path fill="#c8b100" d="M292.3 241.2l-.3.5.8.5v-.1h.2l-.1-1h-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M292.3 241.2l-.3.5.8.5v-.1h.2l-.1-1h-.6"/>
+  <path fill="#c8b100" d="M293 242.2s.2-.2.1-.3h-.4c-.1 0-.2.2-.1.3h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M293 242.2s.2-.2.1-.3h-.4c-.1 0-.2.2-.1.3h.3zm40.7-23.4v.6H331v-.6h1v-1.4h-.7v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h1"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M179.3 231.6v-1.3m-.3 1.3v-1.3m-.3 1.3v-1.3m-.4 1.3v-1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M178 231.6v-1.3m-.5 1.2v-1.2m.2 1.2v-1.2m-.7 1.2v-1.1m.2 1v-1m-.9 1v-1m.2 1v-1m.2 1v-1m-.7 1v-1m-.2.9v-.8m-.2.8v-.8m-.6.8v-.7m.3.7v-.7m-.5.6v-.6m-.2.5v-.4m-.3.3v-.3m-.3.3v-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M173.8 231v-.1"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M180.8 231.5v-1.2m-.7 1.2v-1.2m-.4 1.3v-1.3m152.6 1.3v-1.3m-.3 1.3v-1.3m-.4 1.3v-1.3m-.4 1.3v-1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M331 231.6v-1.3m-.6 1.2v-1.1m.3 1.1v-1.2m-.8 1.2v-1.1m.2 1.1v-1.2m-.9 1.1v-1m.2 1v-1m.3 1v-1m-.7 1v-1m-.3 1v-.9m-.2.8v-.8m-.5.8v-.7m.2.7v-.7m-.5.6v-.5m-.2.5v-.5m-.3.4v-.4m-.2.3v-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M326.7 231v-.1"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M333.7 231.5v-1.2m-.6 1.3v-1.3m-.5 1.3v-1.3"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/et.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/et.svg
new file mode 100644
index 0000000..8b02f6b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/et.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-et" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M229.3 6.3h489.3v489.3H229.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-240 -6.6) scale(1.046)">
+    <path fill="#ffc621" d="M2 9.7h991.8v475.9H1.9z"/>
+    <path fill="#ef2118" d="M0 333.6h993.2v162H0z"/>
+    <path fill="#298c08" d="M2 6.3h991.8v172H2z"/>
+    <circle cx="534.2" cy="353" r="199.7" fill="#006bc6" transform="matrix(.515 0 0 .515 204.7 77)"/>
+    <path fill="#ffc621" d="M434 186.2l-6 4.3 22.4 31.6 6-3.9-22.3-32zm28.2 74.5l-9.2-6.5 3.8-12-46 .6-13.3-10.2 62.7-.7 11.7-35.3L478 211l-16 49.8zm73.1-67.6l-6-4.5-23.3 31 5.5 4.5 23.8-31zm-62.5 49.3l3.3-10.7h12.7L474.3 188l5.7-15.8 19.6 59.7 37.2.4-11.7 10.3-52.3-.2zm86.6 49l2.5-7.2-36.6-12.6-2.6 6.5 36.7 13.2zm-66-44.4l11.2-.2 4 12.1 37-27.2 16.7.6-50.7 37 11 35.5-13.4-8-15.9-49.8zm-19 97.5l7.6.1.3-38.7-7-.4-.8 39zm21-76.8l3.7 10.6L489 286l37.6 26.5 4.8 16-51.2-36.2-30.1 21.7 3.3-15.2 42.1-31zm-98.7 12.4l2.3 7.2 36.9-11.7-1.8-6.8-37.4 11.3zm79.6-3.8l-9 6.8-10.4-7.4-13.5 44-13.8 9.5 18.7-60-30-21.8 15.5-1.6 42.5 30.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eu.svg
new file mode 100644
index 0000000..b031d2d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/eu.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-eu" viewBox="0 0 512 512">
+  <defs>
+    <g id="d">
+      <g id="b">
+        <path id="a" d="M0-1l-.3 1 .5.1z"/>
+        <use transform="scale(-1 1)" xlink:href="#a"/>
+      </g>
+      <g id="c">
+        <use transform="rotate(72)" xlink:href="#b"/>
+        <use transform="rotate(144)" xlink:href="#b"/>
+      </g>
+      <use transform="scale(-1 1)" xlink:href="#c"/>
+    </g>
+  </defs>
+  <path fill="#039" d="M0 0h512v512H0z"/>
+  <g fill="#fc0" transform="translate(256 258.4) scale(25.28395)">
+    <use width="100%" height="100%" y="-6" xlink:href="#d"/>
+    <use width="100%" height="100%" y="6" xlink:href="#d"/>
+    <g id="e">
+      <use width="100%" height="100%" x="-6" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-144 -2.3 -2.1)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(144 -2.1 -2.3)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(72 -4.7 -2)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(72 -5 .5)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#e"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fi.svg
new file mode 100644
index 0000000..aff1304
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fi.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fi" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#003580" d="M0 186.2h512v139.6H0z"/>
+  <path fill="#003580" d="M123.2 0h139.6v512H123.1z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fj.svg
new file mode 100644
index 0000000..9d9c302
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fj.svg
@@ -0,0 +1,125 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fj" viewBox="0 0 512 512">
+  <path id="path1992" fill="#68bfe5" d="M0 0v512h512V.2H322V0H0z"/>
+  <g id="g2202" stroke-miterlimit="4.8">
+    <path id="path1994" fill="#fff" d="M310.2 254v136.4c0 44.6 80.6 71.1 80.6 71.1s80.6-26.5 80.6-71V254z"/>
+    <path id="path1996" fill="#d21034" d="M379.6 302v61.4h-69.4v22.3h69.5v71.5l11.1 4.3 11.2-4.3v-71.5h69.4v-22.3H402V302z"/>
+    <path id="path1998" fill="#d21034" d="M310.2 254h161.2v52.7H310.2z"/>
+    <g id="g2072" stroke-miterlimit="3">
+      <g id="g2008" fill="#fff" stroke="#000" stroke-width=".8" transform="translate(-207.6 158.4) scale(.66486)">
+        <ellipse id="ellipse2000" cx="798.2" cy="192.2" rx="13.6" ry="11"/>
+        <ellipse id="ellipse2002" cx="798.2" cy="186.5" rx="12.1" ry="6.1"/>
+        <ellipse id="ellipse2004" cx="798.2" cy="198.8" rx="12.1" ry="6.1"/>
+        <ellipse id="ellipse2006" cx="798.2" cy="192.2" rx="12.1" ry="6.1"/>
+      </g>
+      <path id="path2010" fill="#ffd100" stroke="#000" stroke-width=".8" d="M467.4 296.3l-1.3-3.7s-3.6-1.4-3.9-3.4c-.6-5-2.5-7-5.2-7.7a6 6 0 00-4.6.4c-.8 1.2-4.9 1.2-7.2 1.3-2.3.1-2.3-1-2.3-1a2.9 2.9 0 01-2.5-1.3c-1.2-2.3-2-3.2-2.6-3.4 3 0 5.2-1.4 8.5-4.9 3.7-3.8 6.3-2.3 6.3-2.3-1.8 3.5.6 3.2.6 3.2 4.8-2.4.6-8.7-.9-8.4-1.4.3-1.8-.7-1.8-.7 0 1.1-1.7 1.6-1.7 1.6 1.3-7.1-3-9-3-9-.6.6-1 2-1 2-1.1 4.2-5 3.6-9.4 1.5s-16.1 2.2-19.8 3.6c-3.6 1.5-10.3 3.8-16.3.4s-7.5-2.8-9.9-2.1c-2.4.6-6.6 1.6-8.1.8a8.5 8.5 0 00-3.4-.9c.5-.2-.2-1.2-.2-1.2-1.8-2.5.2-4 .2-4s-3.3 1-2 6.8l.6.9s.5 1.8 1.5 2.3v.4s.8-.4 1 .8c.4 1.2 1.6.1 2.2-.9 0 0-1 5.3 5.6 6.6 0 0-.7-.8-.4-1.4.3-.5-.8-1-.7-1.8 0-.8-1.7-1.2-.3-1.8 1.4-.7 2-2 5-.2 2.8 1.7 5.1 1.3 5.1 1.3s-1.8-3.6-.8-3.6 5.4 5.5 7.6 5.2c2.2-.3 6.4-2.7 8.5-1.8 0 0 .2-1.1 8.2-2.5 8-1.4 18-5.4 21.7-1.9 0 0 .4 2.8 2 3.5 0 0-.3 5.8-10.3 2.6l-3.6-1s-.5-1.7-19.5 3.2c0 0-1 .4-1.8 1-.7.5-1.7-.4-5.5 1s-17.7 6-26.3 4.3c-1.9-.5-3.7-.3-3.7-.5-.1-.4 1 0 1 0-.7-.7-1-.8-1-.8-7.2-.7-5.9-4-5.9-4l.4 1c1.2-1.5-.5-5.2-.5-5.2a3.8 3.8 0 00-.1-.3l.6-.4c3.5-3 7.5-3.5 7.5-3.5-2.4-3-7.4-1.4-7.4-1.4 0-3.5-1.4-7.6-1.4-7.6-5 .5-7.8 4.6-7.8 4.6-.1-3.6-4.8-5.7-4.8-5.7 1.7 2 .6 7 .6 7l.2.2h-.4l-.1 1h-.2s-1.7.6-3.8 5.2c0 0-.2 1-1 2v-.3s-2.2 3-7.4 0c0 0-7-4.2-9.5-4-2.5.1-4.1 1.3-4 2 0 0-5.6-.5-7.5 2.7 0 0-4.3 1.6-.6 5 0 0 .4 1.6 1.5 2.4 0 0-.2-3.2.6-2.2 0 0 .2.3.6.5 0 .4.4 1.7 1.2 2.3l.5-.2a9 9 0 01.5-2.2h.2l-.1.1 1 1.5 1.1-.6c.6 0 1.3.5 1.3.5l1.3-1v-.1c1.3.2 1.6-2.3 1.6-2.3a4 4 0 003.2-.6c.6 2 5.2 4.3 5.2 4.3h.2l-.6.4c2 1.5 6 1.1 6 1.1-1.6.7-1.4 3.7-1.4 3.7-1 .4-1 1.3-1 1.3 3.1 1.3 5.3.3 5.3.3.2 1 0 1.1 0 1.1-1.3 2.7-1.9 5.4-1.9 5.4v.2s-5.6 2-8 4.7c0 0-.3-.8-1-.8s-2.9-1.8-3.9-2c-1-.4-2.5.2-2.9-.2-.3-.5-.1-3.6-.8-4.1l-.7-2c-.5 1-2.4.8-2.4.8a21.9 21.9 0 00-.8.6l-.8-.1c-.2 0-.4.6-.6 1.1a12 12 0 00-.2.2v-.6c-.4.3-1.2-.1-1.5-.1l-.5.9-1.8.2c-.3.1 0 2.5 0 2.5-2.3 1.3-1.2 3.1-1.2 3.1 1.2 6 11.5 3.4 12.3 4.1.7.8 2.5 1 3.5 1 .9 0 2 2.2 3.4 2.4 1.3.3 0-1.7 6-3.2 6.2-1.5 8.2-4 8.2-4 2-.3 2.5-2.7 2.6-3.6l.1 1.5c.3 2-1.1 2.8-1.1 2.8l5.2-1.6c2.1-.5 1.9-2.3 1.9-2.3 2 5.7 5.6 6 5.6 6 .8-2.1.7-2.8.7-2.8h1.6c0-1.3-1-2.2-1.6-2.6l2.5 1.6 1-.2c0 .9 1.4 1.7 1.4 1.7l.2-1.2c1.2 1.6 3.4 1 3.4 1a7.3 7.3 0 00-.2-.8c4.7 2.9 12.1-.8 12.1-.8 2 .4 2.3-.8 2.3-.8 2.3.3 2.8-1.2 2.8-1.2 5.4-.5 9.2-4.3 9.2-4.3 2.6-.2 2.7-2 2.7-2s2.7.4 5.2-2.8c6-8.5 14.8-4 14.8-4l-5 .3c-13.5-.1-8 9-8 9h.9c1.3.2 5.6 3.7 4 6.3v.1c-2.8 3.7-7.9.2-9.3-3-1.5-3.2-4.4-2.5-4.4-2.5s-7.6 1.3-4.5 7.3h.1c.1 1.5 1 3.2 3.7 4.9 1.5 2.1 6.5 2.3 10.2 1.5 1.7-.3 10.7-4.2 10.7-4.2.7-2 3-1.5 5-4.3 2-2.9-3-3.9-4-5.4-1.1-1.6.3-1.3.3-1.3 4.3 2.4 4.7-5.2 4.7-5.2a6.6 6.6 0 004.3 5.6c2.4-2.4.6-7.3.6-7.3 5.7 10.2 9.2 8.6 9.2 8.6-3.1-2-1.6-4.5-1.6-4.5 2.8 10.8 14 1.4 14 1.4-.5 1.6 0 2.5 1 3.5s2.2 1.4 1.7 3.3c-.6 1.8-5.8 1.4-5.8 1.4s-5.1-.2-4.6 4c.2 1 3.6 1.4 4.9 1.2 0 0-.5 0 1.3.3l2.2.1c2.2 0 4.5-.4 4.5-.4 3-.7 2.5-1.7 2.5-1.7 4.5-.8 5-3.8 5-3.8z"/>
+      <path id="path2012" d="M319 277.6s.2-.6.7-.7c.3 0 .8.2 1.2.8l.2-.2s-1.2-1.8-.7-3c.2-.5.8-1 1.6-1v-.4c-1 .2-1.6.6-1.9 1.3a2 2 0 00-.1.8c0 .6.2 1.2.4 1.6a1.1 1.1 0 00-.8-.2c-.4.1-.7.4-.8.6zm141 23.9c-3 .5-7.6.7-8-.2 0-.1 0-.8 2.5-2.4l-.3-.5c-2 1.4-3 2.4-2.6 3.1.6 1.7 7.2.7 8.5.5zm-58.4 1.8c-.7-1.1-.4-2.6 1-4.4l-.5-.3c-1.5 2-1.8 3.7-1 5z"/>
+      <path id="path2014" d="M397.5 298.7c0 1.8 1.3 3.5 3.8 5l.3-.4c-2.3-1.4-3.5-3-3.6-4.7 0-2.5 2.6-4.4 2.6-4.5l-.3-.4c-.1 0-3 2.1-2.8 5zm52 .6c-.8 1.3-.5 2.8-.5 2.8h.5s-.2-1.4.5-2.5a3 3 0 012-1.2v-.5c-1.1.2-2 .7-2.5 1.4zM330.3 276h-.2v.1s-.3 1.6-1 2a.8.8 0 01-.7.1l-1.2-.7c-.3-.3-.5-.4-.8-.3a1.8 1.8 0 01-.4-1.3c.1-.8.6-1.5 1.5-2.1l-.1-.3c-1 .7-1.6 1.5-1.7 2.3-.1 1 .4 1.6.5 1.7h.1c.3-.1.4 0 .7.2l1.3.8h1c.7-.5 1-1.9 1-2.2 3.3.7 6-3.3 6-3.4l-.2-.2s-2.7 4-5.8 3.3z"/>
+      <path id="path2016" d="M322.5 275.4c-.2.6 0 1.3.3 1.9.4.6.7.9 1.1 1 .5 0 .8-.3 1.1-.6.2-.3.5-.5.6-.4l.3.2.3-.2-.5-.3c-.3 0-.6.2-.9.4-.3.3-.6.6-.9.5-.2 0-.5-.3-.8-.8a2.2 2.2 0 01-.3-1.7c.3-1.4 2-2.5 2-2.5v-.2c-.1 0-2 1-2.3 2.7zM318 296c.2-.6.6-1 1.3-1.4-.1 0 .7.7 1.4.6l.4-.2c.2.1 1.4 1.2 1.4 2.6 0 .3 0 .6-.2.9l.3.1c1-2-1.3-4-1.3-4h-.2l-.5.3c-.5 0-1.2-.6-1.3-.6-.9.4-1.4 1-1.6 1.6zm10.4-5.3c-.7 0-2.6.4-3.2 1.3-.2.4-.2.8 0 1.2l.2.7c.6 1.5 1.2 3.1 1.8 3.5l.2-.3c-.6-.3-1.2-2-1.7-3.4l-.3-.6a1 1 0 010-.9c.6-.8 2.2-1.2 3-1.2.4 0 .5 1.5.6 2.5h.3c0-1.5-.2-2.9-1-2.8z"/>
+      <path id="path2018" d="M323.3 292.2a1 1 0 00-.3.9c0 .1.1 4 2 4.8l.1-.3c-1.7-.7-1.8-4.5-1.8-4.5s-.1-.4.2-.7c.2-.2.8-.2 1.6 0v-.3c-.8-.3-1.5-.2-1.8.1z"/>
+      <path id="path2020" d="M321.8 292.5c-.8.6-.8 2.2-.8 2.3h.3s0-1.6.7-2c.2-.2.6-.2 1 0v-.3c-.4-.2-.9-.2-1.2 0z"/>
+      <g id="g2060" transform="translate(-207.6 158.4) scale(.66486)">
+        <path id="path2022" d="M862.3 169.5s1.3 3 1.3 5.3c0 .4-.2.7-.3 1l-.5-1.3-.3 1s-.6 1.4.3 2.9c1.2 2 4.2 3.2 9 3.7v.1a.8.8 0 00-.4.1l-.2.2v.4c.2.5.7.5 1.8.5l.7.1.6.2-.1-.1c1 0 2.3.3 3.6.8l-1 .2 1.1.5c.1 0 8.7 3.5 12.2 6.3-1 .9-5.3 4-12.7 2.2l-1.2-.3.8 1s4.9 5.6 5.9 9c-1.7 0-8.2 0-10.5-2l-.5.5s3 4.6 3.8 8.1c-1 .2-3 .3-4.3-1.4l-.6-.7-.3 2c-.6-.5-1.4-1.1-1.4-1.9v-.4l-1.8.3-3.8-2.3a8 8 0 00-.6-.4l-.4.7.6.3c.8.6 2.2 1.7 2.3 3.3H863v.5c0 .3 0 1.4-.9 3.7-1.1-.2-5.3-1.7-7.8-8.8l-.8.2v.2c0 .7-.2 2.3-2.4 2.9l-6.5 2a4.5 4.5 0 00.8-2.8v-.8a20.3 20.3 0 01-.2-2.6c0-1.5.3-2.4 1.4-3l-.4-.8c-.1 0-9.6 3.9-14.3 2.3.2-1 1-4.2 2.6-7.6l-.2.2c.3-.2.6-.6.3-2.2v-.5l-.5.2s-3 1.4-7.4-.2c0-.4.3-1 1.2-1.4l.3-.1v-.8c0-1.2.1-4 1.8-4.6l-.2-.8s-5.1.4-8.2-1.3a11 11 0 014.5-1.9h.3v-.4a6 6 0 00-.5-2.3c1.2.4 2.6.7 3.1.3l.2-.1-.2-3.1h-.8l.1 2.6-3-.7-1.2-.4.8 1a4 4 0 01.7 2.4 12.7 12.7 0 00-5 2.3l-.5.4.5.3c2.4 1.6 6.1 1.8 8 1.7a8.4 8.4 0 00-1.3 4.5v.4a3.1 3.1 0 00-1.5 2.2v.3l.2.1a11 11 0 007.9.5v.9c-2 4.2-3 8.3-3 8.3v.4h.3c3.9 1.6 10.7-.5 13.8-1.6-.4.7-.7 1.5-.7 2.5a22.1 22.1 0 00.3 3.4c0 2.3-1.5 3.2-1.6 3.2l.3.8 8-2.4c1.8-.5 2.5-1.6 2.8-2.5 3.1 7.4 8 8 8.3 8.1h.3l.1-.3a14 14 0 001-4 439.6 439.6 0 002.4-.1v-.5c0-.7-.1-1.3-.4-1.8l1.4.8 1.3-.2c.3 1.3 1.9 2.4 2.1 2.5l.5.3.3-1.7c2 1.7 4.7 1.2 4.9 1.2l.3-.1v-.4c-.4-2.7-2.2-5.9-3.3-7.6 3.5 1.6 9.9 1.5 10.2 1.5h.4v-.5a30 30 0 00-5.6-9c8.2 1.5 12.6-2.8 12.8-3l.3-.3-.4-.2a53.8 53.8 0 00-11.6-6.3l.9-.2-1-.5a12.8 12.8 0 00-5.8-1.4c-1-1.2-1.5-1.3-1.6-1.4-5.6-.6-7.6-2.1-8.4-3.3v-.3l.2-.3c.5-.7.7-1.6.7-2.6 0-2.6-1.3-5.5-1.3-5.6l-.8.3z"/>
+        <path id="path2024" d="M836.8 167.9s-.6 3-3.2 4.5c-2 1-4.5 1-7.6-.3l-.4-.1v.4a5 5 0 002 3.2c1.3 1 3.3 1.4 5.9 1.2-.9 1-3.6 4.4-3.6 7.8v.5c.4.2 4.6 1.4 6.6-1.1 0 1 .4 4.5 1.7 5.8.8.8 1 1.8 1 2.7 0 .8-.2 1.4-.2 1.4l-.2.6.5-.4c.2-.1 4.1-3 5.3-6.7 0 0 .7-1 1.9-1.3v.5c0 1.5.6 4.1 4.8 5.7l.3.1v-.3a7.1 7.1 0 010-.7c0-1.1 0-3 1.1-4a2.8 2.8 0 00.6-3.3c.9.2 2.9.9 3.7 2.4 1.2 2.2 5.3.4 5.5.4l-.1-.5s-1.8.4-2.9-.3a2.1 2.1 0 01-.8-1.5l-.2-2.4c0-1-.2-1.7-.7-2.2.5 0 1.6 0 2 1 .8 1.6 3.3 1.7 3.4 1.7l.9.1-.7-.5s-2.2-1.4-1.8-3.3l.3-1.4c.6-2.5 1.6-6.6.7-9.2l-.4.2c.2.6.3 1.4.3 2.2 0 2.2-.7 5-1 6.7l-.4 1.4a2.6 2.6 0 000 .5c0 1.3.7 2.2 1.3 2.7-.7-.1-1.7-.5-2-1.3-.7-1.4-2.3-1.4-3-1.3l-.6.1.4.4c.7.4.8 1 .8 2.3l.2 2.3c.1.8.5 1.4 1 1.8.6.4 1.2.4 1.7.5-1.2.3-2.9.5-3.5-.6-1.1-2.2-4.3-2.7-4.4-2.8h-.5l.2.4s.4.6.4 1.4c0 .5-.2 1.2-.7 1.7-1.1 1.1-1.3 3.2-1.3 4.3v.4c-3.6-1.5-4.2-3.7-4.2-5v-1l.2-.3h-.4a3.5 3.5 0 00-2.5 1.8 15 15 0 01-4.7 6.2 6.9 6.9 0 00.1-1c0-.9-.2-2-1-2.9-1.5-1.4-1.7-6-1.7-6v-.8l-.4.7c-1.6 2.8-6.2 1.4-6.3 1.4-.2-3.5 4-8.1 4-8.2l.4-.4h-.6c-2.7.4-4.8 0-6.2-1a4.6 4.6 0 01-1.6-2.5c3 1.1 5.6 1.2 7.6.1a7.4 7.4 0 003.4-4.8c3-6.6 5.5-7.7 5.5-7.7l-.1-.4c-.2 0-2.8 1-5.8 8z"/>
+        <path id="path2026" d="M843.5 158h-.2l-2.4 3.3h.7a31 31 0 0119.7 9.2l.3.3 2.3-2.5-.2-.3c-6.5-10.2-20.1-10-20.3-10zm.2.9c1.6 0 13.2.3 19.2 9.3l-1.3 1.4a33 33 0 00-19.3-8.9 631.2 631.2 0 011.4-1.8z"/>
+        <path id="path2028" d="M841.6 164.8a11 11 0 00-2.1 4.8l.1.4a7.3 7.3 0 00-2 5.5c0 1.3.2 2.6.6 3.8l.3.7c1.2 3.4 2.3 6.4 7.8 4.6 5.2-1.6 5.4-2 6.7-4.2l.4-.5c.7-1.2 1.5-1.4 2.3-1.7 1-.3 2-.6 3-2.4l.8-1.3c1-1.3 2.2-3 2.3-5h-.4a9.8 9.8 0 01-2.2 4.7l-1 1.4a3.6 3.6 0 01-2.6 2.2 3.9 3.9 0 00-2.6 1.8l-.4.6c-1.2 2.1-1.4 2.4-6.5 4-5 1.6-6-.9-7.2-4.4l-.3-.7c-1.4-3.8-.3-7.6 1.6-9l.6-.5-.9.1v-.1c0-.7.7-2.6 2-4.5 1.2-1.6 4-3.1 4-3.2l-.2-.4c-.2.1-2.9 1.7-4.1 3.3z"/>
+        <path id="path2030" d="M839.2 178.7c.9.6 2.1.5 3.7 0 0 .5 0 1.7 1 2.5 1.2 1 3 1.2 5.5.6v-.5c-2.4.6-4.2.4-5.2-.5a3 3 0 01-.9-2.4v-.4l-.3.2c-1.5.6-2.7.7-3.6 0-1.5-1-1.4-3.7-1.4-3.7h-.4s-.2 3 1.6 4.2z"/>
+        <path id="path2032" d="M842 175c-.6.2-.8.7-.8 1.1v.3c.2 1.2 1.5 2 2.6 2.3 1.2.3 2.6.4 3.1-.3.2-.3.4-.8 0-1.7a3.7 3.7 0 00-4.8-1.7zm2 3.3c-1-.3-2.2-1-2.3-2 0 0-.1-.7.5-.9a3.3 3.3 0 014.2 1.6c.3.4.3.8.1 1-.3.5-1.4.6-2.5.3zm-2-3.3zm1.6 6c-.3 2.5 0 2.6.1 2.6h.2l.2-.1 1.4-2-1.8-.8v.3zm.5.4l.7.3-.8 1.1v-1.4zm-4.2-2.4l-.1 2.3 2-2.4-2-.2v.3zm.4.2h.6l-.6.8v-.8z"/>
+        <path id="path2034" d="M838.5 178.2s1.5 2.9 1.8 4c.1.6 1 1.4 2 1.7 1 .4 2 .4 2.7-.1l1.3-1.1c.4-.5.6-.6 1-.5v-.5c-.6 0-.9.2-1.3.6l-1.3 1c-.8.6-1.7.4-2.2.2-1-.3-1.7-1-1.8-1.5-.3-1-1.7-3.9-1.8-4l-.4.2zm2-8.6a5 5 0 00-2.4 2.8l.4.1s.7-1.8 2.1-2.5a2.9 2.9 0 012.4 0l.1-.4c-1-.4-1.8-.4-2.7 0zm10.8 5.2c.2 0 3.2 2.4 1.5 5.2l.3.3c2-3.3-1.5-5.9-1.5-6l-.3.5zm-9.2.4s-.5 1.7 2 2.3c0 0-2.3 0-2.5-.6-.1-.6 0-1.9.5-1.7zm7.5 2c0 .2-.2.3-.3.3a.3.3 0 01-.3-.2c0-.2.1-.3.3-.3.1 0 .3.1.3.3zm.2 1.2c0 .1 0 .2-.2.2a.3.3 0 01-.3-.2.3.3 0 01.3-.3c.1 0 .2.1.2.3z"/>
+        <circle id="circle2036" cx="848" cy="177.8" r=".3"/>
+        <path id="path2038" d="M848.8 179.4a.3.3 0 11-.6 0c0-.1.1-.2.3-.2l.3.2zm-7.1-7.3a.3.3 0 01-.6 0 .3.3 0 01.5 0z"/>
+        <circle id="circle2040" cx="841.6" cy="173.2" r=".3"/>
+        <circle id="circle2042" cx="840.1" cy="172.7" r=".3"/>
+        <path id="path2044" d="M840.8 174.3a.3.3 0 01-.2.3.3.3 0 010-.6.3.3 0 01.2.3zm4.8-9.6s3.5 2.2.1 6.3c0 0 1.7-1.3 1.8-3.4.2-2.1-1.2-3.8-2-2.9zm13.5 5.9c-1.2.6-2.8-.5-3.6-1.5-.8-1-2.5-1.3-3.6.6-1 1.8-2.5 2.5-2.5 2.5s1.5-.8 3-2.5c1.5-1.6 2.4-.3 3.9.5 1.4.8 1.7 1 2.7.5v-.1z"/>
+        <path id="path2046" d="M858.8 170.9a1.7 1.7 0 01-2.2-.1c-1-.8-1.7-1.8-2.8-1.2-1.2.6-3.3 2.2-3.3 2.2s3.5-2.4 4.2-1.8c.6.5 2.2 1.8 3.1 1.4l1-.5z"/>
+        <path id="path2048" d="M856.1 172.3c-1.1-.8-2.2 1-3.1.8-1-.2-1.7-1.8-1.7-1.8s.8 1.6 2 1.3c1.3-.4 2.1-1.2 2.9-.6.7.6-.1.3-.1.3z"/>
+        <path id="path2050" d="M854.4 172.6a2 2 0 01-2.4-1.9s.7 1.8 2.6 1.5l-.2.4z"/>
+        <path id="path2052" d="M854.3 171.2c.1.5.1.8-.5.8s-1-.2-1-.8c0-.5 1.4-.4 1.5 0zm-7.8-3a.7.7 0 01-.7.6c-.4 0-.5-.2-.5-.6s0-.7.5-.7.7.3.7.7z"/>
+        <path id="path2054" d="M844 165.7s3.8 0 2 4.7c0 0 1.4-2.3.5-4-1-1.6-2.3-1.2-2.3-1.2s-.4.3-.2.5z"/>
+        <path id="path2056" d="M844 167.6c0 1 .6 1.9 1.8 2.9l.3-.4c-1.1-.9-1.7-1.7-1.7-2.5s.6-1.3.6-1.3l-.3-.3s-.7.6-.8 1.6z"/>
+        <path id="path2058" d="M844.8 168.4c.1.5.6 1 1.2 1.2l.2-.4c-.5-.2-.9-.6-1-1-.2-.8.4-1.7.4-1.7l-.4-.3s-.7 1.2-.4 2.2zm5.1 2.6s.7 1.5-.3 3.1l-1 1.6s1.2-2.3.7-3.2c-.4-1 .6-1.5.6-1.5zm14.6 15.8c3.8.7 12.5 7.5 12.5 7.5l.5-.6c-.3-.3-8.9-7-12.9-7.7l-.2.8zm3.4 9.5c.2 3.5 4 5.6 4 5.7l.5-.7s-3.5-2-3.7-5h-.8zm-9.3.8c0 3.8 3.6 8.4 3.8 8.6l.6-.5s-3.6-4.6-3.6-8.1h-.8zm-12.1.4c.6 1.3.6 1.9.4 2.2-.2.4-.6.4-.6.4l.1.8c.3 0 .9-.2 1.2-.8.4-.7.3-1.7-.4-3l-.7.4z"/>
+      </g>
+      <g id="g2070" fill="#fff" stroke="#000" stroke-width=".2">
+        <path id="path2062" d="M319 277.1s0 1.7 1.4 2.7c0 0-.2-1.8.2-2.6 0 0-.7-.8-1.7 0zm2.6 1.1s.3 1.5 1.2 2.2l.5-.1s.3-2 .6-2.2c.3-.2-1.3.7-2.3.1z"/>
+        <path id="path2064" d="M323.9 278.1l1 1.6 1.2-.6-.3-1.9s-.7-.2-2 1z"/>
+        <path id="path2066" d="M328.6 278.4l-1.3 1.1s-.7-.5-1.3-.4l.3-1.7s1-.7 2.3 1zm-9.4 16s-.2-2.3.1-2.5c0 0 1 .3 1.3 0 0 0 .6 1.9.4 2.6-.1.8-1 .5-1.8 0zm6-2.4s0-2 .3-2.3c0 0 2 .3 2.4-.7l.7 1.9s-2.2-.2-3.4 1z"/>
+        <path id="path2068" d="M323.1 292.4s.4-2.1.8-2.2c0 0 1 .3 1.3 0v2.5s0-1.1-2-.3zm-2.2.3s.4-1.9.7-1.9c.3 0 1.1.5 1.5.2v1.4s-1.7-.4-2 2l-.2-1.7z"/>
+      </g>
+    </g>
+    <g id="g2112" fill="#00a651" stroke="#000" stroke-width=".8">
+      <path id="path2074" stroke-width=".5" d="M351 331.2s5.3 5 4 9.2c0 0 3.3-7.3-.3-9.4-3.7-2.2-3.8-.5-3.7.2z"/>
+      <path id="path2076" fill="#964b36" stroke-width=".5" d="M344.4 336s-1.4 1.9.1 3.2c0 0-1.6 2.4-.4 4.4 0 0-1 2.1-.7 4.4 0 0-.9 3.5 1 5.1 0 0 2 1 2.9.2 0 0 1.7-2.7.6-5.4 0 0 1.3-2.3-.1-5.1 0 0 .4-1.7-.8-3.6 0 0 .8-1.2.1-2.2 0 0-2.5-2.6-2.7-1z"/>
+      <path id="path2078" stroke-width=".5" d="M345.9 329.8s-6.3-12-10.7-12.5c-4.3-.5-4.6-4.8-4.6-4.8s.5 2 4 2 10.3 5 11 8.7c.8 3.8 1.5 3.3 1.5 3.3l-1.2 3.3z"/>
+      <path id="path2080" stroke-width=".5" d="M345.9 329s2.3-15.2 12.2-15.5 6.6.8 9-.8c0 0-6.7 3.5-10.8 4-4.1.5-7.5 8.5-7.4 10 .1 1.5-2.2 4.4-3.4 3.4-1.1-1 .4-1.1.4-1.1z"/>
+      <path id="path2082" stroke-width=".5" d="M348.1 334.6s2.3-6 6.2-4c0 0-3-5.8-8.4-.8 0 0 2.4 3.3 2.3 4.8zm-7.5-6S344 342 339 346c0 0 .1-6.9-2.9-11s3-8.6 4.6-6.5z"/>
+      <path id="path2084" stroke-width=".5" d="M341 331s6 5.6 6.3 7.5c.4 1.9 1.7-5.6-1-7.8a13.8 13.8 0 00-5.8-2.5l.5 2.8z"/>
+      <path id="path2086" fill="#964b36" stroke-width=".5" d="M330.1 345.8s.6 2.3 2 2.8c0 0 .1 1.7 1.4 2.3 0 0-.7 1.4.5 2.3 0 0-.3 3 .8 3.6 0 0 2.6-.2 3.5-1 0 0 .6-1.9-.9-3.8 0 0 .2-1.8-1.2-2.8 0 0 .4-2.5-1.4-3.4 0 0-.3-2-1.4-3 0 0-2.3 3.2-3.3 3z"/>
+      <path id="path2088" stroke-width=".5" d="M333 342.9s-7.7-2.9-12 1.2c0 0 6.6.9 7.5 2.2.8 1.3 4.9-2.1 4.6-3.4z"/>
+      <path id="path2090" stroke-width=".5" d="M330.7 347.7l-1.4-1.1c-.8-.5-7.3-2.3-8.2 4 0 0-2.3-6.2 1.1-7 3.4-1 6.2 1 8.5 4m-5.1-12.7s2.4 5 3.3 5.4c.8.2 1.5-.7 1.5-.7s-3.2-4.6-4.8-4.7zm-1.8-8s-2-6.6-4.3-4.8c-2.4 1.7-1.8 6.5-1.8 6.5s-4.8-4.9-2-8.8c2.8-3.9 8.2.4 8.2 7.2z"/>
+      <path id="path2092" fill="#964b36" stroke-width=".5" d="M329.2 340.6s0 1.3 1 1.6c.8.4 2.4 1 2.4.3s-1.2-3.6-1.7-3.3c-.5.4-1.4.4-1.7 1.4z"/>
+      <path id="path2094" stroke-width=".5" d="M327.7 332.9s-.2-5.8 3.5-8c0 0 .8.2 1.2-1 0 0-3 7.3-2.2 11v.5"/>
+      <path id="path2096" stroke-width=".5" d="M328.5 325.8s6.8-14 15-9.1c0 0-8.6 1.7-11.7 7.9l-3.2 4.6-.1-3.4z"/>
+      <path id="path2098" stroke-width=".5" d="M324.9 331s-2-9.4-3.3-10.7c-1.3-1.2-3.4-2.6-5.9-.5 0 0 4.4-3.9 9-.6 4.7 3.3 3.7 8.4 3.7 8.4l-.5 6.5-3.2-2.9"/>
+      <path id="path2100" stroke-width=".5" d="M332.1 342.1s-8.3-15.6-13.6-4.5c0 0-1 2.9 0 4 0 0-3-2.2-1.6-7.8 1.4-5.4 10.6-3 13.2 1.6 2.6 4.5 3.4 6.7 3 7-.4.2-1-.3-1-.3zm23.3 4.5s6-12.4 9.6-6.7c0 0 1 2.7-.6 3.9 0 0-2.3-3-4.5.6-2 3.5-1.2 3.2-1.2 3.2s-2.3.7-3.3-1z"/>
+      <path id="path2102" stroke-width=".5" d="M364.4 343.8s3.3 1.7 2.2 5.2c0 0 4.4-8.4-1.7-9.1 0 0 1.2 2.6-.4 3.9zm.4-8.6s8 2.3 8.2 5.7c0 0 1.3-6.5-3.2-8.5 0 0-5.4.8-5 2.8z"/>
+      <path id="path2104" stroke-width=".5" d="M368.3 324.8c3.4-6.6 7.7 2.2 7.7 2.2s1.5-7-2.8-8.2-7 14.7-7 14.7l-5 1.1s1.4-13.9 8.9-15.2l.9.2"/>
+      <path id="path2106" stroke-width=".5" d="M362.3 328.8s-4.8-9.7-8-10.7c-3.3-1 1.8-2.5 3.8-.7 2 2 5.7 4.3 5.3 9.3l-1 2.1zm-4.9 13.4s1.4-6.6 5.2-8.6c3.7-2 7.2-1.3 7.2-1.3s-4.5 1-5.2 3.3c-.8 2.3-2 2.4-2 2.4l-5.2 4.2z"/>
+      <path id="path2108" fill="#964b36" stroke-width=".5" d="M355.4 346.6s-2.1 4-1.6 4.7c0 0-2.3 3.2-1.4 4.9 0 0 2.3 1.7 3.3 1 0 0 2.6-3.7 1.9-5.7 0 0 1.7-2.4 1-3.9 0 0-2.5.2-3.2-1z"/>
+      <path id="path2110" fill="#000" stroke="none" d="M344.4 339.5c.1 0 1.4.7 2.3.4l.6-.5-.5-.3c-.3.6-1.7.1-2.2-.1l-.2.5zm-.2 3.9l-.1.5c.1 0 2.6.5 3.9-.6l-.4-.4c-1 1-3.4.5-3.4.5zm-.7 4.4l-.3.4s3 2.2 5-.1l-.5-.4c-1.6 2-4 .2-4.1 0zm-11.4.6v.3c.2 0 2.7-1 2.9-2.9h-.3c-.2 1.7-2.6 2.6-2.6 2.6zm1.4 2.3v.3c.1 0 2.4-.2 2.8-1.8h-.3c-.3 1.4-2.5 1.5-2.5 1.5zm.5 2.4v.3s2.7.1 3.5-1.3l-.2-.2c-.8 1.3-3.3 1.2-3.3 1.2zm19.6-1.6s1.2 1.1 2.5 1a2.3 2.3 0 001.7-.8l-.4-.3a2 2 0 01-1.3.6 3 3 0 01-2.1-1l-.4.5z"/>
+    </g>
+    <g id="g2118" fill="#964b36" stroke="#000" stroke-width=".3">
+      <path id="path2114" d="M431.4 360.6a1.1 1.1 0 00-.4.3l.4-.3zm9.2-2.3c0-.2-.1-.1-.2-.2l-.4-.8h-.3l-.7-1.4a.4.4 0 000-.2 7.6 7.6 0 000-.4c-.1-.1-.2 0-.3-.2v-.7l-.1-.4v-.6a2 2 0 000-.4c-.2-.4-.4-.7-.4-1.2l.1-1-.2-1 .2-.9v-5.3c-.2-.4-.1-.7-.2-1v-2l-.1 2.5c0-2.2-.2-4.3-.2-4.3l-3.3-1.5s-.3 6.1-.2 7c0 .8.3 6.7.2 7.4-.2.7-.5 4.2-.5 4.2s-1.6 1.2-2.3 2.5c-.6 1.2-.5 1.7-.7 1.7l1.6-.3-1.2.8a.7.7 0 01.7.1l.3.2.2-.2.7.4.4-.3.2-.4h1.1c.3 0 .5-.4.8-.7.3-.2.5-.3.8-.3.3 0 .6.3.9.4.2 0 .4 0 .6-.3l.3-.6h1.9l.3.2.1-.4v-.4z"/>
+      <path id="path2116" d="M433.9 360.5l.5.1.1.2a.2.2 0 00.2 0l.3.1h.3l.4.1c.2.1.4 0 .6-.1.2-.2.3 0 .5.2s.2.1.3 0a1.7 1.7 0 010-.1l.3-.1.4-.1.3-.2.4.2a.8.8 0 01.2.1c.2-.3.6-.4.8-.6h1.3c.1-.1.1-.2.3-.2l.7.4c.1 0 .7.2.6-.3 0-.4-.4-.1-.5-.4v-.6a.7.7 0 00-.4-.4h-.3l-.2-.5c-.1 0-.2.1-.4 0l-.2-.2c-.3-.3-.5.2-.7.1-.2 0-.4-.5-.6-.7 0-.1-.3-.5-.4-.4-.2.1 0 .5-.1.7-.1.1-.4 0-.4 0-.2 0-.2 0-.3.3-.3.3-.4.6-.7.6l-.5-.2c-.1.1-.2.3-.4.3a1 1 0 01-.4 0c-.2 0-.3-.3-.4-.4a.1.1 0 00-.2 0l-.2-.1c-.2-.1-.2 0-.3.2v.5l-.4.4-.4.1c-.1 0-.3.3-.4 0-.1-.4.3-1.1-.2-1 0 0-.2 0-.3.3v.6c0 .3-.6.8-.5 1 0 .3.3 0 .4 0 .1.1 0 .3.2.4.1.3.7-.4.7 0m-2.1-2.7v-.1l-.5-.2-.4.4c-.3.5-.2 1-.7 1h-.4c-.2.1 0 .5 0 .7v.3c-.1 0-.2 0-.3.2 0 .4.3.3.4.3h1l.6-.2.5-.1a2.2 2.2 0 00.2-.5v-.4c0-.2.2-.1.3-.4 0-.7-.7-.2-.6-.9"/>
+    </g>
+    <g id="g2128" stroke="#000" stroke-width=".5">
+      <path id="path2120" d="M440.2 338.7c0 1-.6 1.7-1.4 1.7-.8 0-1.4-.8-1.4-1.7 0-.9.6-1.6 1.4-1.6.8 0 1.4.7 1.4 1.6zm-4.5-2c0 1-.7 1.6-1.4 1.6-.8 0-1.4-.7-1.4-1.6 0-.9.6-1.6 1.4-1.6.7 0 1.4.7 1.4 1.6z"/>
+      <path id="path2122" d="M438 337.3c0 1-.6 1.7-1.3 1.7-.8 0-1.4-.8-1.4-1.7 0-.9.6-1.6 1.4-1.6.7 0 1.3.7 1.3 1.6z"/>
+      <path id="path2124" d="M435.7 338.8c0 1-.6 1.7-1.3 1.7-.8 0-1.4-.8-1.4-1.7 0-.9.6-1.6 1.4-1.6.7 0 1.3.7 1.3 1.6z"/>
+      <path id="path2126" d="M437.9 340c0 1-.6 1.7-1.4 1.7-.8 0-1.4-.7-1.4-1.6 0-1 .6-1.7 1.4-1.7.8 0 1.4.8 1.4 1.7z"/>
+    </g>
+    <path id="path2130" fill="#00a651" stroke="#000" stroke-width=".5" d="M438.5 322.3s14-19.4 28.9.8c0 0 0 2-1.3 4l-.4-1.5-.8.2-.3-1-1.6-.1.5-2.1-1.8 1.3.3-1.5-2 2 .2-4.2-2.1 3.6.2-2.5-.7 1.1-.5-1.4-.6 1.4-1-.7v1l-1.8-1.5-.6 2-1-2.1-.2 1.4-.8-1.7-.2 1.9-2.8-1.3.6 1.8-1.4-1 .3 1-2-.4.2 1.1-2-.3.4 1-2.8-.4 1 1.1-.3.5s15.1-5 16.1 13.8l-2.7 1.4.7-1.5-.7-.5-2.3-1.8.6-2.4-.7.3-.2-1.4-.3.3-1-1.4-.2.5-.6-1.7-.6 1.2-.4-2.8-1 1.8-.1-1-.4.6-1.2-1.5-.4 1-.5-.8-.4 1-1.4-1.3v1l-.8-.8-.4.5-2.2-1.1v1l-1.2-1-.4 1s13.7 7.8 9.4 20.4l-.7 1.7-.3-4.3-1.2 2.3.8-5-.8 1-.2-2-1.1 2-.4-2.2-.5.6-.7-3.2-.7 1.4-1-3.7-.7 1.5-.5-3.1-.5 1.9-1.5-2.8-.3 1.1-.8-2.2-.5.7s-2.5 0-3.3-.7c-.8-.6-2.9 3.8-2.9 3.8l.3-2.7-1 1.8v-1.8l-1.5 5.3-.4-3.8-.9 3.3-.4-1-.2 1.4-.5-.5-.5 1.4-.8-.6v2l-.7-1-.7 3-.3-1.2v1.4l-.7-.8-.6 3-.9-1.2v2.1l.3 1.6-1-.5.4 2.7s-4-7.3.7-14.3c4.7-7 11-9 11-9l-.7-.5-.1-.7-3.8 2 .1-1.2-1 .8-.2-1.2-.6 1.1-.2-.5-.8 1.4-.5-2-.7 2.4-.6-1.7-1.3 3.6v-2.7l-1 2.8-.3-3-.8 3.5v-3.2l-1.1 3.2-.8-3-.5 2.9-.7-2.3-.8 3.4-1.1-3-.6 4.5-.8-1.8-.1 3.3-.9-2 .9 4.2-1.1-1.6.3 2.6-1.6-2.8.1 3.4-.8-1.2-.4 1.3s-.4-13 8.5-15.6c8.9-2.5 14.7.8 14.7.8l-3.4-2.8.4-.8H429l.5-1H427l.7-1-2 .3v-.6l-1.2 1 .5-1.1-1.8 1.1v-1.7l-1 1.5-.5-1.5-4 4 1.1-4.2-.7 1-.1-1-1.2 1.8-.2-1.3-.5 1.5-.4-1.7-.9 1.7-.8-1.6-.4 2.1-.7-1-.7 1.5-1-1-.1 1-2-.8.5 1.5-1.5-1.3-.4 2-.9-1-.6 2.5-.6-2.4-.7 2s7.9-20.2 27.7-7c0 0 2.2 2 2.7 3.5s0 .3 0 .3l-.3-14 .8 6 .5-2-.2 3 2-4.3s-2.3 7.3-1.5 10c0 0 1-8.5 4-9.5l-2.8 6 .8-.1-.6 1.2h.8l-1 2-.4 1 .5 1 .7-.7z"/>
+    <path id="path2132" d="M436.5 330.5l.4.3s1.3-1.3 3.3.4l.4-.4c-2.5-2.1-4.1-.3-4.1-.3zm-.6-6.8l-.1.4 1-.4-.7 1.2 1.4-.5-1.8 2.3.5.4 2.8-3.8-1.8.6.8-1.3-1.5.7.3-2h-.5l-.4 2.4z"/>
+    <path id="path2134" d="M433.2 323.8l.6 1.4-1-.4 3 5 .3-.4-.6 1.5.5.2 1.3-3.2-.5-.3-1 1.3-1.7-3 .8.3-.8-1.8 1 .7v-2h-.5v1L433 323l.3.8zm-1.8 6.4l.2.5c.8-.3 1.4-.4 2-.1.5.2.7.8.7.8l.5-.1s-.2-.8-1-1.2c-.7-.3-1.5-.3-2.4.1zm2.2 5.4l-.4-2.8h.5l.5 2.8zm3.9-.4l-.7-2.2.5-.1.7 2.1zm1.4 1.6l-.5-2.2.5-.1.5 2.1z"/>
+    <path id="path2136" fill="#00a651" stroke="#000" stroke-width=".5" d="M332 401s-2.4-1-3.5-.2c-1 .8-1 1.9-1.9 1.8 0 0 3.6.8 4.4-.1l1-1.2m.4.8s-1.6 2-1 3.2c.5 1.2 1.6 1.3 1.4 2.2 0 0 1.5-3.3.8-4.2l-1-1.2m-2.8-5.8s-2.5.8-2.8 2c-.3 1.4.6 2.1-.1 2.7 0 0 3.1-1.8 3.1-3a8.8 8.8 0 00-.1-1.5m1.3.7s1.2-2.3.4-3.4c-.7-1.1-1.9-1-1.7-2 0 0-1 3.6 0 4.4l1 1m-2.1-.9s0-2.5-1.1-3.2c-1.1-.7-2.1-.1-2.4-1 0 0 .6 3.6 1.8 4l1.5.3m4.4 4.2s2.7-.9 3 2c.1 3-.2 2-.2 2s-1.4-3.2-3-3.7l.2-.3z"/>
+    <path id="path2138" d="M332.3 402.1l.3 2.3h.4l-.3-2.3 1-4.9h-.5l-.9 4.9z"/>
+    <path id="path2140" d="M329.9 401.4l-.2.3c1.3.5 3.1-1 3.2-1l-.2-.3s-1.8 1.4-2.8 1zm3.3-2.9l-6-3 .2-.5 6 3z"/>
+    <path id="path2142" d="M328.9 397.8l-.4-.3 1.2-1.3.4.4zm2-.6l-1.2-2.7.5-.3 1.3 2.8zm1.9 3.4v.6c1.6-.1 2 1 2 1l.6-.2c0-.3-.7-1.5-2.6-1.4z"/>
+    <path id="path2144" fill="#fff" stroke="#000" stroke-width=".7" d="M360.5 401.9c2-1.1 2.4-5.1 2.4-5.1-.4 1.4-4.1 2.9-4.1 2.9 2.7-1.7 6-9.4 6-9.4-.9 2.8-8 5-12.7 7.6-4.6 2.6-2.2 10-2.2 10a16 16 0 01-4.2-8.3c-.5-3.5-1.9-4.8-5-5.2-3.2-.4-5 3.1-5 3.1L331 400l4.7.2s3.4 1.1 3.4 3.8c0 2.7-3 13.3 2 19.3 3.4 4.1 16 6.5 16 6.5"/>
+    <path id="path2146" fill="#fff" stroke="#000" stroke-width=".7" d="M351.3 410.1s1-4.8 4-4.6c3.2.2 4.1-3.5 6-4.1 1.8-.6 11.4-3.1 12.5-7.8 0 0-1 7.6-9.7 11.4 0 0 7-2.3 7.9-3.9 0 0-3.2 6.8-10.8 7.9 0 0 7.2-.6 8.2-2.5 0 0-3.2 4.3-8.5 4.8 0 0 4.9 2 6.2.3 0 0-2.7 3.2-6 3.4l.9.3s-3.2 3.7-6.6 1.2c-3.5-2.5-3.6.6-3.6.6"/>
+    <path id="path2148" fill="#fff" stroke="#000" stroke-width=".7" d="M358.4 417.3s4 6.8 4.5 10.4c0 0 7.7 8.6 10.6 9 0 0-1.3.6-3.8-1.5 0 0 2 2.2 2.5 2.3.4 0-1.7-.2-2-.8 0 0 .8 1.3 1.4 1.5l-.6-.2s-1-.1-1.5-.5-.2 1-.2 1-1.2-.3-1.6-.7c-.4-.4.2.9.2.9l-1-.3-.8.5s0 .5-.6.1c-.4-.4-1.3 0-1.3 0s-.7.6-1 .2c-.3-.4-1.5 1.5-1.5 1.5l-5.1-12.3"/>
+    <path id="path2150" d="M363.2 439.6l-6.4-12.3.7-.3 6.4 12.2zm5.6-.9l-11-12.3.6-.5 11 12.3zm2.6-1L358.8 426l.5-.6L372 437z"/>
+    <g id="g2162" transform="translate(-207.6 158.4) scale(.66486)">
+      <path id="path2152" d="M823.4 360.8s-1.2-2.2-2.3-1.3c-1 .8-1.6 1-1.8.9 0 0 1 0 1.7-.5.6-.6 1.6-.3 2.4 1zm-6.6-1l.7 1.4-.8 2.3.6.2.7-2.5-.7-1.6-.5.2z"/>
+      <path id="path2154" d="M823.2 360.5s-1 1-2.2.8l-1.3-.3h1.8c.7 0 1.6-.3 1.7-.5z"/>
+      <path id="path2156" d="M822.9 360.7s-1.2-1.2-2-.8c0 0 1.4-.5 2.2.7l-.2.1z"/>
+      <path id="path2158" d="M822.7 360.5s-1.3.9-2.7 0l-.1-.2h.2s1.7.7 2.6.2z"/>
+      <circle id="circle2160" cx="821.6" cy="360.3" r=".4"/>
+    </g>
+    <path id="path2164" d="M339.4 420.4s-.7 1.3-.3 2c.3.7 1.9 1.1 2 2.1.3 1 .8 1 1.5.8l1-.1s-3.1-1.7-4-4.3l-.2-.5z"/>
+    <g id="g2174" fill="#964b36" stroke="#000" stroke-width=".5">
+      <path id="path2166" stroke-width=".3" d="M438.8 395.6s5.5-7.4 10.5-5.4 8.2 2.9 8.2 2.9.1 5-2.5 5c-2.7 0-5.2-5-7.6-3.6-2.4 1.5-4.4 3.5-4.5 4.2-.2.7-6.4.9-4.1-3z"/>
+      <path id="path2168" d="M417.5 431.2s-1.5 1.6-.8 2c.7.4 2 0 2-.6s-.9-1.6-1.2-1.4z"/>
+      <path id="path2170" d="M416.3 432.8s-2.9-1.7-5.1 2.2c-2.3 3.9-4.2 10.2-5.5 11-1.3.8 12.8-6.2 13-9.1 0 0 1-3.8-.6-3.8-1.4.1-1.5.3-1.8-.4z"/>
+      <path id="path2172" stroke-width=".3" d="M416.7 433.2s-3 .7-3.6 4.9c-.6 4.2-4.7 6.3-5 6.5m49.4-51.6s-4.5 1.6-3.7 4.7"/>
+    </g>
+    <path id="path2176" fill="#fff200" stroke="#000" stroke-width=".3" d="M423.1 402.1s.1-10.6 8.8-10.1c1.7.1.9 2 .9 2s1.9-1.3 2.7.8c0 0 2.8-1.2 3 1.5 0 0 3-.4 2.7 2 0 0 2-.4 2 1.3 0 0 2.3-1 2 1.4 0 0 2.6-1.7 2.2 1.4 0 0 2.7-1.8 3.6 1.3 1 3-2.7 9.7-6.2 11.4"/>
+    <path id="path2178" d="M447.2 402.8s1.2 8.3-3.5 11.3l.2.2c4.8-3 3.6-11.5 3.6-11.6h-.3zm-5.6 9l.2.2c3-2.9 3.6-10.6 3.6-11h-.3c0 .1-.6 8-3.5 10.8zm-2.8-1.9h.3c.4-4.7 4.2-10.2 4.2-10.2l-.3-.2s-3.8 5.6-4.2 10.4zm-2.1-1.4h.3c.5-5.7 4.3-10 4.3-10l-.2-.3s-3.9 4.5-4.4 10.3zm-3-1.9h.2c.3-6.8 4.8-10.1 4.9-10.2l-.2-.2s-4.7 3.4-5 10.4zm-2.9-1.7h.4c-.3-6.2 4.5-10 4.5-10l-.1-.2s-5 3.9-4.8 10.2zm-5-2.2h.3a10.2 10.2 0 016.9-8.5l-.1-.3a10.5 10.5 0 00-7 8.8z"/>
+    <path id="path2180" fill="#00a651" stroke="#000" stroke-width=".3" d="M418 415s-1.5-9.8 4.4-13c0 0 1-.2 1.7 1.2 0 0 3.1-1.3 3.2 1.3 0 0 1.5-1.2 2 .5 0 0 3.3-.7 2.6 1.8 0 0 2.8-.8 2.6 1.6 0 0 2.8-1 2.3 1 0 0 3-.6 2.3 1.8 0 0 3.6-.4 2.5 2.2 0 0 2.7-.7 2.1 1.4 0 0 3.6.6 2 2.8a24 24 0 01-9.8 7.2"/>
+    <path id="path2182" fill="#00a651" stroke="#000" stroke-width=".3" d="M414.8 425s-2.4-8.3 2.2-10.4c0 0 .8-.2 1 .6 0 0 1-1.3 1.8-.1 0 0 2.3-1.1 2.8.6 0 0 1.6-1.3 2.4.6 0 0 1.4-.6 1.4 1 0 0 2-1 2 1 0 0 2-.8 1.6 1.3 0 0 3 .4 2 1.8 0 0 2.7.7 1.7 1.8 0 0 2.9-.3 1.3 1.6 0 0 2.2-.7 1 1.7-1.3 2.4-5.1 5-7.9 5.4"/>
+    <path id="path2184" fill="#00a651" stroke="#000" stroke-width=".3" d="M417.7 431.4s-5.1-5-2.7-6.4c0 0 1 .3 1.4 1.4 0 0 1.3-1.8 2 0 0 0 1.8-.6 1.8.7l1.5 1s1.7 0 1.4 1c0 0 1.9-.2 1.8.8 0 0 1.6 0 1.5 1.1 0 0 2.7.5 1.5 1.9 0 0-4.9 1-8.3-.4 0 0-1.8-.6-2-1z"/>
+    <path id="path2186" d="M435.2 423.2l.1.3c3-1.2 8.3-8.3 8.5-8.7l-.2-.1s-5.4 7.4-8.4 8.5zm-1.7-1.3l.1.3a47 47 0 008.1-8.7l-.2-.2s-5.4 7.2-8 8.6zm-1.5-.6l.2.2c2.8-2.3 6.8-10 7-10.2l-.3-.2c0 .1-4.2 8-7 10.2zm-1.4-1.8h.3c.6-3.8 6-9.8 6-10l-.2-.1c-.2.2-5.5 6.2-6 10.1zm-10.8-4.6h.3c-.5-5.5 4-11.5 4.1-11.6l-.2-.2s-4.7 6.2-4.2 11.8zm2.8.4h.3c-.7-4.4 4.4-10.6 4.5-10.7l-.2-.2c-.3.3-5.3 6.4-4.6 11zm4.4 1.6h.3c0-5 4.7-10 4.7-10l-.2-.2s-4.9 5.1-4.8 10.2zm-10.5 9h.3c-1.7-4.6 1.3-10.5 1.3-10.6l-.3-.1s-3 6-1.3 10.8zm2 .4l.3-.1c-1.5-4.7 1-11 1.1-11l-.3-.2s-2.6 6.5-1 11.3zm8.3 4.7l.1.3c5-1.8 8.2-6.3 8.3-6.4l-.3-.1s-3.2 4.4-8 6.2zm-1-1.1l.1.3c4-1.8 7.7-6.8 7.7-6.8l-.2-.2s-3.7 5-7.6 6.7zm-1-.4l.2.3c3.1-2.3 7-8 7.1-8l-.2-.2s-4 5.7-7 8zm-4.9-2.9h.3a21 21 0 012.6-10.8l-.3-.2s-3.3 6-2.6 11zm2.2 1.4l.2.2c3.2-2.9 4.2-10.6 4.3-11h-.3c0 .1-1.1 8-4.2 10.8z"/>
+    <path id="path2188" d="M424.3 428.9l.1.3c4.5-3.3 5.7-9.6 5.8-9.6h-.3s-1.2 6.1-5.6 9.3zm.5-13.4v.8l-3.4 11 .3.1 3.4-11c-.5-5.4 4.2-11.3 4.2-11.3l-.2-.2s-4.3 5.4-4.3 10.6z"/>
+    <path id="path2190" d="M428.3 418.1c0 .2-1 7.8-5.1 10.6l.1.2c4.2-2.9 5.3-10.3 5.3-10.6 1.8-2.2 6-9.8 6-9.8l-.2-.2c0 .1-4.2 7.6-6 9.8zm-12 8.3c0 .2.7 4 1.5 5.3l.2-.2c-.7-1.3-1.4-5-1.4-5.1h-.3zm2 0c0 2 0 5-.2 5.3h.3c.2-.3.1-4.4.1-5.2h-.3z"/>
+    <path id="path2192" d="M418.4 431.8l.3.2c1.3-2.9 1.7-4.9 1.7-4.9h-.3s-.4 2-1.7 4.7z"/>
+    <path id="path2194" d="M418.7 432l.1.2a6.6 6.6 0 003-4h-.3s-.5 2.4-2.8 3.7zm.4.1v.3c2.4-.2 4-3.1 4.1-3.2l-.2-.2s-1.7 3-3.9 3.1z"/>
+    <path id="path2196" d="M419.4 432.3v.3a7.6 7.6 0 005.6-2.6l-.2-.2s-1.8 2.3-5.4 2.5z"/>
+    <path id="path2198" d="M419.6 432.4v.3c.2 0 5 1 6.7-1.5l-.2-.2c-1.6 2.4-6.4 1.4-6.5 1.4z"/>
+    <path id="path2200" fill="none" stroke="#000" stroke-width="2.8" d="M310.2 254v136.4c0 44.6 80.6 71.1 80.6 71.1s80.6-26.5 80.6-71V254z"/>
+  </g>
+  <g id="g2864" transform="scale(.5)">
+    <path id="path2842" fill="#012169" d="M0 0h512v512H0z"/>
+    <path id="path2844" fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+    <path id="path2846" fill="#C8102E" d="M184 324l11 34L42 512H0v-3zm124-12l54 8 150 147v45zM512 0L320 196l-4-44L466 0zM0 1l193 189-59-8L0 49z"/>
+    <path id="path2848" fill="#FFF" d="M176 0v512h160V0zM0 176v160h512V176z"/>
+    <path id="path2850" fill="#C8102E" d="M0 208v96h512v-96zM208 0v512h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fk.svg
new file mode 100644
index 0000000..12a34c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fk.svg
@@ -0,0 +1,93 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-fk" viewBox="0 0 512 512">
+  <defs id="defs784">
+    <linearGradient id="b" x1="444.4" x2="470.9" y1="592.2" y2="577.1" gradientTransform="scale(1.003 .997)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="f" x1="851.8" x2="646.2" y1="369.9" y2="369.9" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="c" x1="458.2" x2="520.5" y1="562.5" y2="552.8" gradientTransform="scale(.936 1.068)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="d" x1="472.4" x2="445.3" y1="578.7" y2="580.2" gradientTransform="scale(1.003 .997)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="e" x1="518" x2="456.4" y1="553.7" y2="558.1" gradientTransform="scale(.936 1.068)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="a">
+      <stop id="stop770" offset="0" stop-color="#a43907"/>
+      <stop id="stop772" offset="1" stop-color="#fff"/>
+    </linearGradient>
+    <linearGradient id="g" x1="388.5" x2="677.4" y1="507.2" y2="508.8" gradientTransform="scale(.823 1.215)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="h" x1="579.8" x2="556.8" y1="504.9" y2="505.9" gradientTransform="scale(.835 1.198)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="581.4" x2="558.9" y1="512" y2="514.3" gradientTransform="scale(.823 1.215)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="552" x2="589.8" y1="517.9" y2="503.9" gradientTransform="scale(.835 1.198)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="linearGradient1802" x1="444.4" x2="470.9" y1="592.2" y2="577.1" gradientTransform="scale(1.003 .997)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  </defs>
+  <path id="path786" fill="#012169" d="M0 0h512v512H0z"/>
+  <g id="g988" transform="matrix(.815 0 0 .815 91.4 2.4)">
+    <path id="path798" fill="url(#linearGradient1802)" fill-rule="evenodd" stroke="#fff" stroke-width="10" d="M671 321.6a13.2 13.2 0 00-2 .1c-3.4.6-8.8 11.7-11.7 18.2-4.7 5.6-7.1 10-9 13.2-.8 1.3-2 2.7-1.6 4.4-7 1.7-7.4 7.7-7.4 10 0 2.6.8 3.8.8 3.8l4.2 7.8v.1c4.5 9.3 11 21.7 14.8 22.7 5.2 1.5 18.8-3.5 29-12.2a164 164 0 0062 12.6c23.8 0 45.2-5.7 61.9-12.6 10.2 8.7 23.7 13.7 29 12.2 3.7-1 10.3-13.5 14.8-22.7l4.1-7.9s.8-1.2.8-3.7c0-2.3-.4-8.4-7.4-10 .4-1.7-.7-3.2-1.5-4.5-2-3.3-4.4-7.7-9-13.4-3-6.5-8.4-17.4-11.7-18-4.8-.8-15 1.6-15 2.5v.5L795.4 344c0 .5 1 14.5 5 27a147 147 0 01-50.5 8.5c-19.8 0-36.7-3.5-50.4-8.6a136 136 0 005-27L684 324.7v-.5c0-.7-7.9-2.6-13-2.6zm5.2 24c2.6 0 5.3 2.2 7.6 4.5l-.2 1.4a78.7 78.7 0 01-3.2 10.6 85.8 85.8 0 01-14.3-10.3c2.2-2.4 5.8-5.6 9.6-6.1h.5zm147.6 0h.5c3.8.6 7.4 3.8 9.7 6.2a85.6 85.6 0 01-14.4 10.3 78.3 78.3 0 01-3.2-10.6 17 17 0 01-.2-1.4c2.2-2.4 5-4.5 7.6-4.5zm-166 27.4c2.7 2.1 6.3 4.5 10.6 7a12.3 12.3 0 01-3.8 1.7c-1.8.4-3.6.3-5.5-.1a17.5 17.5 0 01-1.2-5.7 70.3 70.3 0 01-.1-2.9zm184.5 0l-.2 2.9a17.6 17.6 0 01-1.2 5.7 12 12 0 01-9.3-1.6c4.4-2.5 8-4.9 10.7-7z" transform="translate(-509.2 18) scale(1.168)"/>
+    <path id="path800" fill="url(#b)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M445.6 595.5s5.7-8.8 10.3-8.1c4.7.6 9.1 6.2 9.4 6.5a41 41 0 006.9-7.5c-.3-.3-7.2-16.5-11-17.2a24.7 24.7 0 00-11.8 1.8z" transform="matrix(-1.477 0 0 1.545 953.6 -485.4)"/>
+    <path id="path802" fill="url(#c)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M433.1 586.1c0 .6 2 23.8 10 31.9 8 8.1 21.3 13.1 26 11.9 4.6-1.3 15.3-24.7 15.3-24.7s-11.3 11.2-19.7 9.3c-8.4-1.8-13.4-15.9-15-22.8-1.6-6.8-.3-20.3-.3-20.3L433 586.1z" transform="matrix(-1.477 0 0 1.545 953.6 -485.4)"/>
+    <path id="path804" fill="url(#d)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M445.6 595.5s5.7-8.8 10.3-8.1c4.7.6 9.1 6.2 9.4 6.5a41 41 0 006.9-7.5c-.3-.3-7.2-16.5-11-17.2a24.7 24.7 0 00-11.8 1.8z" transform="matrix(1.477 0 0 1.545 -219.8 -485.4)"/>
+    <path id="path806" fill="url(#e)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M433.1 586.1c0 .6 2 23.8 10 31.9 8 8.1 21.3 13.1 26 11.9 4.6-1.3 15.3-24.7 15.3-24.7s-11.3 11.2-19.7 9.3c-8.4-1.8-13.4-15.9-15-22.8-1.6-6.8-.3-20.3-.3-20.3L433 586.1z" transform="matrix(1.477 0 0 1.545 -219.8 -485.4)"/>
+    <path id="path808" fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width="1.5" d="M656.4 338.6c-4.7 5.7-7.2 10.2-9.2 13.5-2 3.3-.8 8 3.7 14.5 5 7 45.4 34.7 98.1 34.7 52.7 0 93.1-27.6 98-34.7 4.6-6.6 5.8-11.2 3.8-14.5-2-3.3-4.5-7.8-9.2-13.5 0 8.6-33.5 40-92.6 40-59.1 0-92.6-31.4-92.6-40z" transform="translate(-508 19.2) scale(1.168)"/>
+    <path id="path810" fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M467.8 625.5l7.2-11.9-3.6-2.5c-1 3-5.1 4-5.8 7.8-.7 3.8 2.8 7.5 2.2 6.6z" transform="matrix(1.477 0 0 1.545 -218.8 -484)"/>
+    <path id="path812" fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M475 623s1.3-5.3-2.8-6c-4-.6-6.2 3-5.6 1.6.6-1.6 3-3.1 3.4-8.4.3-5.3-.3-8.2-.3-8.2s1.6-6.8 8.1-5.9c6.6 1 6.9 6 6.9 7.8 0 1.8-.6 2.8-.6 2.8z" transform="matrix(1.477 0 0 1.545 -219.8 -485.4)"/>
+    <path id="path814" d="M448.3 446.3l2 3.5 1.3-.8-.9-2.3.2-.5 2.3-1.4 6 10.6v.5l-1.3.9.6 1 5.7-3.7-.5-1-1.3.8-.5-.1-6-10.6 2.2-1.5h.5l1.5 2 1.3-.9-2-3.4-11.1 7zm-14.3 8.2l.5 1 1.2-.5.5.1 5.2 10.8-.1.5-1.2.7.5 1 5.7-3-.5-1-1.2.5-.5-.1-2.5-5.1 5.8-3 2.5 5-.1.5-1.2.8.5 1 5.7-3-.5-1-1.2.5-.5-.2-5.2-10.7.1-.5 1.2-.7-.5-1-5.7 3 .5 1 1.2-.6.5.2 2.2 4.4-5.8 3-2.2-4.4.2-.5 1.1-.7-.5-1zm-3.3 9.2l.3 1 1.6-.4.5.2 1.3 4.5-1.2.4c-3.3 1-6-.6-7.1-4.5-1.1-3.8.2-6.7 3.4-7.7a4.8 4.8 0 011.9-.2l.4.3 1.1 2.1 1.6-.5-1-3.6c-1.8 0-3.4.2-4.8.6-4.8 1.6-7 5.5-5.8 10 1.3 4.5 5.3 6.6 9.8 5.2a15.4 15.4 0 004.6-2.4l-1.5-5 .3-.4 1.2-.5-.3-1.1zm-13.3 12.5l6.4-2-.3-1.1-1.5.3-.4-.2-3.5-11.6.2-.4 1.4-.6-.3-1-6.4 2 .3 1 1.5-.3.4.2 3.5 11.6-.3.4-1.3.6.3 1zm-34.8 5.7l11.3-1-.4-4.1-1.4.1-.2 2.4-.2.4-4.9.5-.5-6 2.8-.2.3.3.3 1.6h1.3l-.5-5.3h-1.2v1.7l-.3.4-2.8.2-.4-5.4 4.2-.3.3.2.4 2 1.5-.1-.3-3.6-10.6 1v1h1.4l.3.4 1 12-.2.4-1.3.2v1.2zm-16.9-15v1.1l1.3.1.3.4.2 12-.3.4-1.2.2v1h6V481l-1.3-.1-.4-.4v-5.7l6-.1.2 5.7-.3.4-1.3.1v1.1h6v-1.2h-1.3l-.3-.4-.2-12.1.3-.4 1.2-.1v-1.1h-6v1.2l1.3.1.4.3v5l-6 .1-.2-5 .4-.3 1.2-.1v-1.1zm-12.8-.4v4h1.4l.4-2.4.3-.3h2.5v12.4l-.4.4h-1.4v1.2h6.3v-1l-1.4-.2-.3-.4.1-12.3h2.5l.4.3.3 2.5h1.4v-4zm-19.5 12.9l11 .5.2-4-1.4-.1-.4 2.4-.3.3-4.8-.2.3-6 2.7.2.2.3.2 1.7h1.2l.2-5.2h-1.2l-.3 1.5-.3.3H338l.3-5.5 4 .2.3.3.3 2 1.4.1.1-3.6-10.3-.5v1.1l1.2.2.3.4-.5 12-.4.4h-1.3v1.1zm-25.3-6.6l5.8 2 .3-1-1.2-.6-.2-.5 3.5-11.5.4-.2 1.4.3.3-1-5.9-2-.3 1 1.2.6.3.4-3.6 11.5-.4.3-1.3-.4zm-10.5-4a11.4 11.4 0 003.6 2c3.2 1 5.8-.2 6.6-2.7a4.2 4.2 0 00-.8-3.9c-1-1.2-1.9-1.9-2.3-2.5-.9-1-1.2-1.9-1-2.9.4-1.1 1.6-1.7 3-1.2.7.2 1 .4 1.4.8l.1.4-.3 2.3 1.4.5 1-3.5a11 11 0 00-3.4-2c-2.8-1-5.2.3-6 2.7a4.3 4.3 0 00.5 3.4c.7 1.1 1.5 1.8 2.1 2.5 1.2 1.2 1.6 2.3 1.3 3.4-.4 1.2-1.6 1.8-3.2 1.2a5.5 5.5 0 01-1.6-.9l-.2-.4.5-2.7-1.5-.5zm-13.3-5.6l10 5 1.7-3.7-1.2-.6-1.3 2-.4.2-4.4-2.2 2.5-5.3 2.4 1.2.1.4-.5 1.6 1.1.6 2.2-4.8-1.1-.5-.9 1.3-.4.2-2.4-1.2 2.2-4.9 3.7 1.9.2.4-.6 1.9 1.3.6 1.5-3.2-9.4-4.7-.4 1 1 .7.2.5-5 10.9-.4.1-1.2-.4-.4 1zm-1.6-18.2l-5-3.5-.6 1 1 .8v.5l-6.3 10-.5.1-1-.6-.7 1 5 3.4c1.8 1.2 3.3 1.8 4.9 1.6 2.1-.2 4-1.4 5.4-3.7 2.5-4 1.8-7.9-2.2-10.6zm-2.1 0l1 .8c2.7 1.8 3 4.5.7 8s-4.7 4.4-7.4 2.5l-1-.6 6.7-10.6zm40 15.8l-.2 1 1.2.4.2.4-2.4 11.8-.4.3-1.2-.1-.2 1 5.7 1.3.2-1-1.2-.5-.3-.4 1-5 .4.1c2 .5 2.4 1.5 2.6 3.8 0 1.1 0 2.1.9 3.3.4.5 1 1 2 1.1a13.8 13.8 0 002 .3l.2-1-.2-.1c-1.4-.3-2-.8-2.1-2.1-.1-1.2 0-2.4-.5-3.6a3.5 3.5 0 00-1.8-1.8c2.4 0 3.8-1 4.2-3 .5-2.5-.8-4.2-4-4.9l-6-1.3zm4 2.1l.8.2c2 .5 2.8 1.7 2.4 3.5-.4 2.1-1.6 2.8-3.8 2.3-.2 0-.4 0-.7-.2l1.2-5.8zm74 1.3l.2 1.1h1.3l.4.2 1.9 12-.3.3-1.3.4.2 1 6.2-1-.1-1.1-1.4.1-.4-.3-.8-5h.4c2.2-.5 3 .4 4 2.4.5 1 .8 2 2.1 2.7.6.3 1.5.5 2.5.3a16.5 16.5 0 002.2-.6l-.2-1h-.3c-1.5.3-2.2 0-2.9-1.1-.6-1-1-2.2-1.8-3.1-.6-.6-1.4-1-2.5-1 2.4-.9 3.5-2.4 3.2-4.5-.4-2.5-2.4-3.5-5.8-3zm4.8.5l1-.1c2.1-.4 3.4.4 3.7 2.3.3 2-.6 3.2-3 3.6h-.8l-1-5.8z"/>
+    <path id="path816" fill="url(#i)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M467.8 625.5l7.2-11.9-3.6-2.5c-1 3-5.1 4-5.8 7.8-.7 3.8 2.8 7.5 2.2 6.6z" transform="matrix(-1.477 0 0 1.545 952.7 -484)"/>
+    <path id="path818" fill="url(#j)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M475 623s1.3-5.3-2.8-6c-4-.6-6.2 3-5.6 1.6.6-1.6 3-3.1 3.4-8.4.3-5.3-.3-8.2-.3-8.2s1.6-6.8 8.1-5.9c6.6 1 6.9 6 6.9 7.8 0 1.8-.6 2.8-.6 2.8z" transform="matrix(-1.477 0 0 1.545 953.6 -485.4)"/>
+    <path id="path820" fill="#0072c4" fill-rule="evenodd" stroke="#fff" stroke-width="3.9" d="M396.9 606s-75.5-21.4-75-102.2l.5-107h148.9l.5 106.4c.5 80.8-75 102.7-75 102.7z" transform="matrix(1.477 0 0 1.545 -219.3 -481.5)"/>
+    <g id="g834" fill-rule="evenodd">
+      <path id="path822" fill="#bcbcbc" d="M272.3 169c.2 0 1.5-1.3 2.8-2.4 1.7-1 3.3-2.1 5-3 1.4-.7 4-1.3 5.1-1.9a12.5 12.5 0 004.2-3.3c.2-2.2.5-3.8.5-6.3l5-2.5c2.3-.6 2.8-1.5 5.1-1.9 1.5-.5 3.9-.5 6-.5 2.3 0 3.7 1.7 5.8 2 2.5 1 3.6 1.7 5.6 3.4 1 1.4 1.7 2.6 3.6 3.6 1.5.8 2.9 2 4.6 2.4 2 1.1 3.6 1.8 5.1 3.4 1.4 1 2 2.4 3.2 3.4a36.1 36.1 0 004.7 3.4c2 1.3 4 2.3 7.1 2 1.7 0 3.5-.3 5.5 0 2.3 0 4.5 0 6.5.6 2.4 0 4.3.3 6.5.5 2 .4 4.1.4 6.4.4 2 .6 4.2.5 6.5.5h13c2.3 0 4.7.1 6.4.5a51 51 0 006.4-.5c2.6 0 4.5-.4 7-.5h7.8c2 .6 4.6 1 6 2 1.9.5 2.8 1.4 4.6 2a13 13 0 014.7 3.3 24.7 24.7 0 013.7 5.3c1.2 1.9 1.7 4 2.7 6.3.5 2.2 1 4.3 1 6.7.4 2.1.4 4.4.4 6.8-.5 2.2-.6 4.6-1.4 6.7 0 2.4-.5 4.5-.9 6.3-.4 2-.9 3.3-1 5.8v6.8c0 2.2-.6 3.8-.8 6.2a71 71 0 00-3.3 7.3 14.7 14.7 0 00-3.7 3.8c-1 .7-1.5 1.6-1.4 2 1.9.6 1.4 1.9 1.4 4.3.3 1.9.4 4.2 1 6.3.1 2.3.6 3.7 1.3 5.3.8 1 1 .5-.9.5-1.3 1-2.7.5-3.2-1.5a12 12 0 01-1.9-5.3c-.2-2.2-.6-4.4-1.3-5.8-.3-2.7-1-2.7-3.7-2.9-1.3-1.1-3-1.4-5.6-1.4-2.5 0-2.7-.3-2.8 2.4v6.8c-.4 2-1.3 3.5-1.8 5.3-1.4 1-2 2.7-3.7 3.8-.8 2.2-1.9 2.6-4.1 3l-2.8-3.4c1.3-2.2 2.4-2.5 3.2-4.9 1-1.9 1.6-3.1 2.3-4.8-1-1.5-1.8-2.2-2.7-4.3a26.3 26.3 0 01-2.4-5.3c-1.5-.6-3.9-.7-5-1.5-2.3-.5-2.9 2-5.6 2h-6.4c-2.9 0-3.6 1.5-6 1.4-.8.2-2.5-.1-5.1 0-2 .7-4.3.5-6.5.5-2.3 0-4.2-.6-6-1-2.1-.6-4.2-1.2-6.4-1.4-2.8 0-3.8.2-5.6 1.4-1.4.9-3.5 2.8-5 3.9-.7 1.6-1 4.3-2 6.2-.4 2-1.2 3.1-1.8 4.9a18.4 18.4 0 00-1.3 5.8c-.2 3.2-.9 2.8-2.8 1.9-.8-1.4-2-2.8-2.8-4.4.4-2.4 1-3.6 1-6.2-.5-2-1.5-1.8-2.8-.5 0 2.5 0 4.5-1 5.8a6 6 0 01-2.7 3.8c-.7 1.8-2.2 2.7-3.7 3.4-.2 0 0-.6 0-2-1.1-2.1 0-4 0-6.7 0-2.4-.2-4 .5-6.2 0-2.4-1-4.6-1.4-6.3-.9-1.8-1.4-2.7-3.7-3.4-1.7-.7-4-1.5-5.1-3a9.6 9.6 0 00-4.2-3.3c-2-.7-3.1-1.5-4.6-2.4-1.4-1.6-2.6-2.2-3.2-4.3-1-1.5-1.1-4.3-1.8-6.3a21.7 21.7 0 00-1.4-5.8 24.3 24.3 0 00-1.4-5.8c-.3-2-.8-4-1.4-6.3 0-2.3 0-4.6-.5-6.7v-6.8c-.3-2-.4-4.8-.9-6.3 0-2.6-.3-4-1-5.8-1-1.7-1-2.4-2.7-2.9-1.2 1.5-3.1 2.2-5.5 2.5-1.7-.4-4.1-.7-6-1.5-1.9-.4-3.1-1.2-4.6-2a43.2 43.2 0 00-2.8-3.8c-.3-2.5-.8-3.8-1-6.3 0-1.8.1-.8 2-3.3z"/>
+      <path id="path824" fill="#fefefe" d="M299.6 186.4l.4-.4c-.8.8-.5.4 1.3-.3 1-.6 2.9-1.7 3.6-2.4.8-.4 2.2-1 3-1.7.8-1 1.7-1.8 2.9-2.7 1.2-1.1 2.4-1.5 3.9-2.4 1.8-.2 2.5-1 4.2-.4 1.6.4 2.3.4 3.6-1 1.3-.8 2.8-1.7 3.3-3V170c0 2.2-.5 3-2 3.7-1 1.3-2.4 2.6-3 3.8-1 1.5-1.2 2.3-2.2 3-.9 1.1-2.3 1.7-2.6 3.5.4.8 0 1.2 1 1.3.9.8 1.9.5 3.2 0a14.2 14.2 0 002.6-4c1.1-1.6 1.7-2.3 2.3-3.5 1.2-.8 1.9-1.4 2.3-2.7 1.3-.8 2.4-1.6 3.3-2.4 1-.6 1.5-1.1 2.9-1.4a6 6 0 01-1 3.8c-.3 1.9-.2 2.8.4 4 .9.7.7 1.2 1.3 2.5.5-1.2.8-3.4 1-4.8v-.3c0 1.4 0 3.4-.4 4.4 0 2 .5 2.9 1 4.4.5.8 1 1.3 1.6 1.7 0-2 .6-3.2.7-5 .4 1.3.3 3.2.6 4.7.1 1.6.7 2.8 1.3 4.1.8.4 1 1.8 1.3.7.8-2.4.8-5 1.3-7.5.1-1.3.2-3.2.7-4.1l-.7 4c.1-1.2.2-3 .7-4v-.4a39 39 0 01.7 5.5c0 1.5-.1 3 .3 4.4 1-.5 1.7-1.7 2.3-3a18.2 18.2 0 012.6-3.8l-2.6 3.7a18.2 18.2 0 012.6-3.7v-.3a40.3 40.3 0 00-.3 4.7c0 1.6 0 3.4.3 4.5.4 1.8.9 2.1 1 4 0 1-.2 2 .3 2.5 1.4.3 1.4-.5 1.6-2.4 0-2.2.6-3.7.7-5.8 0-2.6.3.3.6 1.3a13 13 0 011 4.5c0 1-.1 1.9.3 2.4 1.3-.6 1.8-2 2.6-2.8.7-1.6 1.4-2.3 2-3.4 1.7-.3 1.6-1 1.6-3 0-1.7-.1-3.4.4-4.8a41 41 0 001.3-4.5c.6-.3 1.2.6 1.6 1.4.7 1.1.6 2.7.6 4.4.4 1.5 1 2.7 1.7 4.1a15 15 0 002.3 3.4c.3 1.1.3 3 .3 4.5 1.3-1.5 1.5-3.6 1.6-5.8-.2-1.5-.2-3.4-.6-4.8 0-1.5-.4-3-.7-4.1-1-.5-1.3-1-.3-2.4 1-.9 2.2-.5 3.9-.3.9.9 1.2 1.4 1.3 3.4 0 1.8 0 3.2.7 4.4.6 1 1.2 1.7 1.6 3.4.5.5.9 1.2 1.6.4.4-1 .7-3 1-4.1.3-1.3.9-2 1.6-2.4 0 1.9 0 3 .7 4.4.6 1.5 1 2.1 1.6 3.8.7.5.8 1.5 1.7 2 .2-1.6.3-3.4.3-5.4V185c.1-1.6.5-2.5 1-3.8 1 1.4 1 1.9 1 3.8 1-.4 1.2-1.2 1.6-2.4.7-.7 1-1 1.3.7.2 1.8.6 3.4 1 5.1.6.8 1.4 2.7 2.2 3.4a16.4 16.4 0 002 2.8c.5 1 .6 1.7 2 2 0-2.3 0-4.6-.4-6.8 0-2-.4-2.7-.6-4.5-.6-1.1-.9-2.9-.7-3.4a11 11 0 013 4.1c.7 1.7 1.4 2.8 2 4.5a20 20 0 012.5 3.4c1.2 1 1.8 2.1 3 3 .6.6 2 1 2.3.7-.1-2-.4-3.7-1-5.4a9 9 0 00-1-4.1c-1.3-1.1-2.3-1.9-3-3.4-.4-.5-.5-.8-.6-1.7a26.3 26.3 0 014.6 4.7 7 7 0 002.6 2.4c.6.8 2.5 1.7 3.9 2a5.6 5.6 0 003.3 2.1l-3.3-2a5.6 5.6 0 003.3 2v.4a13 13 0 00-2-5.5 8.8 8.8 0 00-3-3.8 9.3 9.3 0 00-3.2-3c-.9-1-2.2-2.8-3-3.4 1.5-1 3.1.6 4.6 1.3 1.3 1.4 2.5 3.2 3.3 4.1a18 18 0 003 4.5c1.4.8 2.3 1.6 3.5 2.7 2 .5 1.2-.2.7-1.7-.7-2 0-2 1.3-.7.9.7 2 1.7 3.3 2.4.5.7 1.4 1.2 2.2.7.4-.5.4-.5.4-1-.7-2.2-1.4-3.8-3-4.5-.7-1-2-2-3-3-.6-1-1.3-1.6-1.9-2.8l2 2.7c-.7-1-1.4-1.5-2-2.7h-.3c2 0 2.7.6 4.2 1.4a6.8 6.8 0 013 2.4c.6.8 1.7 1.7 2.3 2.7l3.2 2.4c1.1 1.4 1.3 2.3 1.3 4.4.7 1 .8 3 1 4.1-.2 1.9-.9.4-1-.7-.2-1.5-.8-1.4-2-1 0 2 .3 2.6 1 4.1a8 8 0 01-1.2 3.4c-.8.5-1-1-1.7-1.7 0-2-.6-2.3-2-3.4v1.4c.8 1.4 1.6 2.7 1.7 4.7a12 12 0 01.7 4.5c0 1.7 0 3.3-.4 4.8 0 1.8-.3 2.6-.3 4.4v9.6a23.3 23.3 0 00-.3 4.4l.3-4.4c-.2 1.2-.3 2.7-.3 4.4v.3c-.6-1.7-1.3-3.2-1.7-5a10.3 10.3 0 01-2.2-3.5c-.3-1.5-.4-3.2-.7-4.4-.5-1.2-1-2.5-2-1.7-.4 2.5.2 4 1 6.4.5 1.6.5 3 1 4.5.8 1.8 1.4 2 0 4-.7 1.2-1 1.5-1.3 2.8-1.2.6-1.5 1-1.6 2.4-.4-1.3-1.4-2.9-2-4.4-.6-1.7-1.3-3.4-1.6-4.8-.8-1.2-1.7-3-2.6-3.8-.9-1-2-3-2.6-4-1.3-1.5-1.6-2.4-2.7-3.1-.2-.7-.6-1.6-1.3-1 0 1.6 0 3.3.4 4.7.3 2 .9 3.1 1 5.1v3.8c-.8-2-1.7-3.6-2.3-5.5-.8-1-1.4-3-2.3-3.7-.6-1.4-1-2.5-1.7-3.4-.1-1-.6-1-1-1.7 0 1.9.7 2.6 1 4a8 8 0 01.7 4.2c-.8-2.4-1.6-5-2.6-7.2-1-1.4-2-3.2-2.6-4.5-1-1.1-2-1.2-3-2a5.9 5.9 0 01-2.2-1.7c.2 1.8.9 3 1.3 4.4.2 1.7 1 3.1 1.3 4.5-.4 2.3-1-.7-1.3-1.7-.4-2-1-3-1.7-4.1-.9-.7-1.6-1.8-2.6-2.4-1-.4-.6 0-.6 1.3 0 2.1 0 3.5.6 4.8.7 1 .7 2.3.7 4.1-.1 1.7-.4 3-.4 4.8v2.7c-.7-1.4-1.4-2.3-2-4.1-1-1.6-1.4-2.7-2.2-4.4-.7-.3-2-.6-2.6 0 .1 1.7.9 2.4 1 4.4-1.3 1.3-1.1 1.7-2-.3-.7-1.6-1.6-1.5-2.6-2.4-1.6-.2-1.1-1.3-1.6-2.8 0-1.3 0-2.6-.4-3.7-1.8 0-2.8 0-3.9 1-.5 1-.3 3 0 4.5v4.7c-.4 1.2-1 1.3-1.3 2.8-.6 1.4-.8 3-1.3 4-1.2 1.1-.7 1.2-1.3-.6v-11c0-1.8.3-2.7.3-4.4-.6-1.4-.8-1.7-3-1.7-.4.9-.2 2.5 0 3.4 0 1.7.2 3.3.4 4.5 0 1.8.2 2.9.3 4.4 0 1.8-.4 3.2-1.3 4-1.1.4-.1 1.2-1.3 1.5a15 15 0 01-3.6-2.4c-1.2-.4-2.4-.7-4.2-.7-2.2 0-2.2-.3-3-2a31.4 31.4 0 01-1.2-5.5c-.8-1.6-1-2.7-1.3-4.5a6.2 6.2 0 00-2-2.4c-.5 1.8-1 3.2-1 5.2-.4.8-.5 2.8-.6 3.7-.7-1-1-3-1.4-4.4-.6-2-1.1-3.4-3.2-2.7-2.2 0-2.3 0-2.3 2.4l2.6 4v4.8c0 2 .1 2.6-1.3 3-.5-2-1.7-4-3-5.7-.1-1.4-.5-1-1.9-1-.9 0-1.8-.2-2.3.3v3c-.8.2-1 0-1.6-.6-.6 1-.1 2.4 0 3.7-.4 1.6-1 3-1.6 3.8-.2-.5-.5-.3 0-.3-2.3-.9-4-1.4-6-2-1 0-1.9 1.1-2.5 2-1.7.5-2.4 1-4.3 1-1.7 0-2.6.3-4.2.3-1.2.3-2.7.4-4.3.4-.8-.3-2.4-.3-2.9-.7.7-1 1.4-1.5 2-3a20 20 0 002.6-2.5c.8-.6 1.8-1.9 2.6-2.7.5-1.7 1.2-2 2.3-2.7 2 0 2.3.7 4.2 1 1.9.7 3 1 4-.4 1.5-.6 2.8-1.7 4.5-2l3.3-2c1.4-.9 2-1.8 3.2-2.8.4-1.4 1.4-2.5 1-4-1.8-.5-2.9-.4-4 .6-1.3 1.2-1.6 1.7-3.2 2.7-1.3.4-2 1-3.6 1.4-1.3.5-3 .3-4.5.3s-3.4-.1-4.3.4c1.5-1 3.2-2 4.6-2.4 1.3-.9 1.8-1.3 3.6-1.4.8-1 1.7-1 2-2.7.5-2-1.3-1.4-2.7-.7-1.3.3-2.8 1.2-3.9 1.7a14.3 14.3 0 01-4.2.7c-.4-.6.3-1.1.6-2 1.5-.6 1.8-.8 2-2.4-1.7.2-2.4.8-4 1-1.6.4-3.3.6-5.2.7h-4.5c-1.6 0-2.5-.4-4.3-.4-1.3-.7-1.3-1-1.3-3 1-1.2 2-1 4-1l3.5-1.8c1.2-.2 2-.7 1.7-1.3h-4.6c-1.8-.8 0-1.1 1-1.7 1.6 0 3.2 0 4.2.6 2 0 2.7-.7 4.3-2 1.2-1 1.8-1.7 3.2-2.4 1-1.1 2-1.7 2.6-2.7 1.4-1.3 2.3-2 3-3.1.8-.5 1.4-1 1-1.7-2.1.2-3 1-4.3 2a10 10 0 01-2.6 2 8.2 8.2 0 01-4.2 1.5c-1.7 0-3-.3-4.6-.4-1.8-.2-.2-.6.3-1.4.7-.4 1.2-1.5.7-2.3-1.4-.5-3-.4-4.6-.4h-4.6c-1.7 0-2.4-.4-3.6-1-.3-1 0-.7 1.3-.7a18 18 0 004.3-.7c1.5-.4 1.7-1 2-2.7-1.6 0-3.3 0-4.3-.3zm-28.2-7.8c-.3-2.5-.9-3.8-1-6.3 0-1.8.1-.8 1.9-3.3.2 0 1.5-1.3 2.8-2.4 1.7-1 3.3-2.1 5-3 1.3-.7 4-1.3 5.1-1.9a12.5 12.5 0 004.2-3.3c.1-2.2.4-3.8.4-6.3l5.1-2.5c2.3-.6 2.8-1.5 5.1-1.9 1.5-.5 3.9-.5 6-.5 2.3 0 3.7 1.7 5.8 2 2.5 1 3.6 1.7 5.5 3.4 1.1 1.4 1.8 2.6 3.7 3.6 1.5.8 2.9 2 4.6 2.4 0 1.8.4 1.5-.8 1.5-.2 1.8-.6 1.7-2.3 1.7a8 8 0 01-3-2.7c.7-1.8.3 1.4 0 2-.8.7-1.3 1.4-2.2.7-.6-1.7-1-2.8-1-4.8-.3-2.1-.9-.6-1.3.3-.5 1.8-.3 2.4.3 3.8-1.7 0-3-.2-4.2-.3-1.2-.3-2.6 0-4 .6-1.7 1.1-1.1 1.1-.3 2.4 1.5.5 2.6 1.3 4 2 1.4-.2 3-.6 4.5-1 1.6-.5 3-.1 4.6 0 .8.5 1.8.6 2.3 1 0 1.1 0 2.2-.4 2.8-.6.5-1.3 1.7-2.3 2a16.1 16.1 0 01-4.5 1.8c-2 0-2.8.5-4.3 1.3-.2 1.8-.7 2.2-2.3 2.8a10.3 10.3 0 01-4.5 1c-1 0-1.9.1-2.3-.4a12.8 12.8 0 002.6-4c.3-.7.9-1.2.3-1.8-1.9.1-2.4.1-2.6 2-.2 1.9-.9 2.2-2.3 2.8.4-1.6.5-3 1-4.4a25 25 0 01-4.2.3c-1 .7-1.4.9-1 2-1.3.5-3 .2-4.6 0-1.4 0-.6-.6-1.6-1.3-.7-1.3-1.4-1.6-3-1.7-.7 1-2 1.3-2.9 2-1.4.5-2.3.1-3.6-.6-1.6 0-1.4.5-1 1.7.7.4 0 .9 1 1 1 .8 1.8 1 3.6 1 1.4-.3 3-.3 4.6-.3 1.6 0 1.3.4 1.3 2-1 .8-2.6.7-4.3.7a16.6 16.6 0 01-3.9-1c-1.5-.1-2.7-.4-3.9 0-.5.6-2 .8-.3 1 .7.7 4.5.3 4.7 1.5 1 1 .7 2.3-.8 2.3a2.2 2.2 0 00-2.3 0c-1 .2-2.4 0-4.3.2 2.5.2-1.8-2.7-2.7-3.9z"/>
+      <path id="path826" fill="#bcbcbc" d="M281.7 167.3l-2 1.3c-1.4.8-3 2-3.9 2.7-.7.6-.7 1-1.6 1 1.5-.2 2.2-.6 3.6-1.3 1.7-.2 3.3-.6 4.2-1.4.9-.3 0-1.6-.3-2.4zm15-16.1c.2 0 .6 1 1.3 1.7.5 1.3 1 2.2 1 3.8.4-1.7 1-3 1.3-4.8-.5-1-.5-1.3-2-1.4 0 1 .2.3-1.6.7z"/>
+      <path id="path828" fill="#c4c4c2" stroke="#000" stroke-width=".9" d="M349.4 417.7c-.5 0 .8-.5 1.3-.6.4-.8.6-1.3 1.3-1.8 1.1 0 1.7.4 2.2 1.1 1 .3 1.3.7 2.4.9.5.4 1 .4 0 .7-.6.3-1.5.4-2.6.4a7.2 7.2 0 00-2.6.7c-1.5 0-1.3 0-2-1.4z" transform="matrix(1.477 0 0 1.545 -229.5 -480)"/>
+      <path id="path830" fill="#bcbcbc" d="M302.6 151.5v.4c0-1 0-.5.3 1.3.5 1.2.7 2.4.7 4.2a6.7 6.7 0 002-3.1c0-2.7-.5-2.6-3-2.8zm12 39.3h.4c-1 0-.4 0 1.3-1 1.1-.8 2-2 3.6-2.4a13 13 0 014.2-2.4c.8-.4 1.5-1 2.3-.4-.2 1.7-.5 2.4-2 3.1-.7 1-1.8 1.6-2.9 2-1 .5-2.2.6-2.6 1.8-1.8.8-2 .6-4.2-.7zm6.3 9.9c.5-.5 2.6-2.6 3.6-3.4a15 15 0 013.2-3.4c1-1.5 2.2-2.5 3-3.8l2.6-3.4c0 1.5-.2 3.5.3 4.4a7 7 0 01-1 4.1c-.7 1.2-1.3 2-3 2.8-1.4.8-2.3 1-3.5 2a26 26 0 01-3 1.7c-.9.4-.5.3-2.2-1zm-10.2 7.8h.4c-1 0-.5.1 1.3-1 1.4-1.4 2.5-2 4.2-2.7a10.3 10.3 0 004-1c.7-.2 1.3-.7 1.9 0 1 1.4 1.3 1.8-.3 2.7a9.4 9.4 0 01-3.3 1.7c-.8.7-2.4.7-4 1-1.2 0-2 .2-2.5-.7l2.6.7c-1.3 0-2 .2-4.3-.7zm14 0v-.3c0 1 0 .5.7-1.4 1.3-1.9 1.7-3 3.3-3.4.7-1 2-1.2 3.6-1.7.6 1 .1 2.2 0 3.4-.4 1.3-1.6 2.2-2.3 3.1-1 .7-1.4 1.4-3 1.7-1.2 0-.5 0-2.2-1.4z"/>
+      <path id="path832" d="M292.8 164.2c0 .9-.7 1.7-1.6 1.7-1 0-1.7-.8-1.7-1.7 0-1 .8-1.7 1.7-1.7.9 0 1.6.7 1.6 1.7z"/>
+    </g>
+    <g id="g840" fill="#005120" fill-rule="evenodd" stroke="#002b0d" stroke-width="1pt">
+      <path id="path836" d="M351.8 479.6h.9c-2.8 0-1.1-.2 3.5 3.5 2-1.6 2-1.8 3.5 1 1 1.5 1.2-.2 2.7-1.8.7 3.2 1.1 6.5 3.5 3.5 2.8 0 5.6-.2 7.1.9 1.8 3.3 1.2-.6 2.6.9 4 .4 3.9-3.4 8.1-4.4 2.6 3.3 3.8.8 7-.8 2.5.6 4.8 4.3 5.3.7 2-3.2 2.1-3 3.5 0 2 1.8 2.8-.8 4.4-1.7 3 1.7 6.3 2 10.6.9.8 2.9 2.6 1.6 4.5.8 3.9 1.7 5.2 2.2 9.7 0 2.2-2.6 1 .1 2.6 1.8 3.3-1 2.4-1.2 6.2-.9 3.9 0 4.2 0 5.3-2.6 2 1.9 2.6 3.3 5.3.9 4.2 0 2.9.5 5.3-1 1.9 4 2.3 1.2 4.5 2.7a14.5 14.5 0 01-6.2 7c-1.7 3-2.8 6-6.2 7.2-2.5 2.5-5.2 4-8 6.2-3.8 1-8 .8-12.3.8H388c-2.6 1.4-7 2-10.6 2.7-4 0-8.7 0-11.5-.9-1.9-1.9-5.2-4-7-6.2-2-1.5-2-4.4-3.6-6.2-1.4-2.5-2-6.5-3.5-8.8z" transform="matrix(1.477 0 0 1.545 -223 -481.4)"/>
+      <path id="path838" d="M437.5 487.6v.8c0-2.4.1-1.1-1.8 3.6-.3 1.1-1.2 1.4-2.6 1.8m-3.5-2.7h.9c-3.3 3-5.5 4.5-6.2 8l6.2-8c-3.3 3-5.5 4.5-6.2 8m-7.1-12.4s-.1 3.1-.9 4.4m-2.6 1.8v.8zm-7.1-5.3h.9-1c.4 0 .7 0 0 0zm-49.5 0c.4 0 2.2 2.8 4.4 4.4-.5 2.6-1.4 5.6 0 8m2.7-7.1c.4 0 2.1 2.8 4.4 4.4l-4.4-4.4c.4 0 2.1 2.8 4.4 4.4v.9c0-2.8-.2-5.6.9-7.1 1 1.7 2.2 4.3 2.6 1.8 5-.2 7.4-1.6 10.6-2.7 0 1.3-.2.7 1 1.8m60-3.6h.9c-1.7 1.4-3 4.3-4.4 6.2m-32.7-8.8h7" transform="matrix(1.477 0 0 1.545 -223 -481.4)"/>
+    </g>
+    <path id="path842" fill="#fff" fill-rule="evenodd" d="M293.6 279.3c-15.7 0-20.9 16.4-36.6 16.4h-.9v1c0 11.4.8 22 2.5 31.9 14.5-1 19.8-16.4 35-16.4 15.7 0 21 16.4 36.7 16.4 15.7 0 20.9-16.4 36.6-16.4 15.7 0 21 16.4 36.7 16.4 15.7 0 20.9-16.4 36.6-16.4 15.1 0 20.5 15.2 35 16.3a189.8 189.8 0 002.5-32.7h-.9c-15.7 0-20.9-16.4-36.6-16.4-15.7 0-21 16.4-36.6 16.4-15.6 0-21-16.4-36.7-16.4-15.7 0-21 16.4-36.6 16.4-15.6 0-21-16.4-36.7-16.4zm0 64.1c-12.2 0-18 10-27.5 14.3a151.4 151.4 0 0011.7 24.8c4.5-3.3 9.2-6.2 15.8-6.2 15.7 0 21 16.4 36.6 16.4 15.8 0 21-16.4 36.7-16.4 15.7 0 21 16.4 36.6 16.4 15.6 0 21-16.4 36.7-16.4a25 25 0 0115.5 6 152.8 152.8 0 0011.7-24.7c-9.2-4.5-15.1-14.2-27.2-14.2-15.7 0-21 16.4-36.7 16.4-15.7 0-20.9-16.4-36.6-16.4-15.7 0-21 16.4-36.7 16.4-15.7 0-20.9-16.4-36.6-16.4zm73.3 64c-15.7 0-21 16.5-36.6 16.5-14.9 0-20.4-14.7-34.2-16.3 18.5 20.6 39.4 33 53.7 40 4.9-3.8 9.9 4.5 17 4.5 7.3 0 12.2-8.4 17-4.7a176.2 176.2 0 0053.3-39.7c-13.4 2-19 16.2-33.6 16.2-15.7 0-20.9-16.4-36.6-16.4z"/>
+    <g id="g919" transform="translate(-527 21.8) scale(1.177)">
+      <path id="path844" fill="none" stroke="#512007" stroke-width=".5" d="M332.5 541.4a110 110 0 0110.5-3l16.3 15.7-13.4 2.7z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path846" fill="none" stroke="#512007" stroke-width=".6" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 31.3l6.7-31.1m-4.4 31.2l5.6-31.2m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.063 0 0 1.03 276.8 -178)"/>
+      <path id="path848" fill="none" stroke="#512007" stroke-width=".4" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.255 0 0 1.762 1290.4 -502)"/>
+      <path id="path850" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.255 0 0 1.312 1321.3 -302)"/>
+      <path id="path852" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M395.3 572.2l.9-73s2.6-.3 2.6 0-.3 72.7-.6 73c-.3.3-3.2.5-2.9 0zm28.5-69.8l-.6 61.3-2 2.4.6-63.7z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path854" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363 560.2s3 30 36.4 29.1c33.4-.9 42.7-30.2 42.7-30.2l-14.5-.6c-.3 0-11.6 14-26.2 13.7-14.6-.3-19.2-3.8-22.4-6.7-3.2-3-6-7.3-6-7.3l-17-6.7 1 6.4zm90.3-3l-1-4v-3.4l1.6-3.6s-25.3 3.7-25.3 4l-.1 6.8 24.8.1z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path856" fill="none" stroke="#512007" stroke-width=".5" d="M448.5 549.8l-.6 6h4.1l-.3-6zm-4.3.3l-.3 6.4 2.6-.3.3-6.1zm-4.4 6.4v-5l2.6-.9.3 5zm-5-.3l.6-4.4 3 .3.2 4.7zm-5.5 0l.3-3.8 3-.3v4.4zm-67.4 3.7c.9 0 7.6 1.5 7.6 1.5l7 9.3" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path858" fill="none" stroke="#512007" stroke-width=".5" d="M366.8 561.1c.3.3 6.1 19.8 34 19.8s34.6-22.1 34.6-22.1" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path860" fill="none" stroke="#512007" stroke-width=".5" d="M439.8 559.4s-13.4 29-39 27c-25.5-2-29.6-11.6-31.6-16.6-2-5-3.2-9-3.2-9" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path862" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M373.2 558.2c.3-1.7.3-54.4.3-54.4l-1.7-.2-.3 53.7 1.7 1zm-41.5-17.1l22 10.7-.5 1.5S332 543.3 332 543c0-.3.2-1.5-.3-2z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path864" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M341.8 537.9c0 .8 3.2 18.6 3.2 18.6s2 .3 2 0l-3.4-18.3zm20.4.5c1.1 0 21-3.2 21-3.2l-.4 3.2-19.5 2z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path866" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M365 514.3c.7 0 7 3.2 9.7 2.4 2.7-.8.9-3 1.4-3 .6 0 2.6 1.5 3.8.3 1.2-1.1 2-4.6 1.5-4.3-.6.3-16 5.8-16.3 4.6z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path868" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M362.5 521.6c1.1.3 23.8-6.1 23.8-6.1s0 2-.3 2l-23.5 6.1z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path870" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M415 512.6s1.5 3.5 3 2.9c1.5-.6 2.9-1.8 2.9-1.8s1.2 3 3.2 2.4c2-.6 3.2-3.8 3.2-3.8s2 .6 2.9.3c.9-.3 2-5 2-5l-17.1 5zm-1.7 28.2c-.3.6 1.5 2 3 2s2-2 2.3-1.4c.3.5.3 3.2 4 2.3 3.7-.9 3.8-3.5 3.8-3.5s-1.1.9 1.5 1.2c2.6.3 5.2-3.8 5-3.8-.4 0-19 3.5-19.6 3.2z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path872" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363.4 513.1a5 5 0 00.2 2.7l19-6.4s.8-1.5 0-1.5-19.5 5.8-19.3 5.3zm25-4c.5 0 19.4-6.1 19.4-6.1s.3 2.6 0 2.6l-17.7 5.2-1.8-1.7z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path874" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M413.3 521.9s-2.9 3.2-2 7.5c.9 4.4 2 8.2 2.3 8.2.3 0 3.5-5.8 7-6.1 3.5-.3 9.9 3.2 9.9 3.2s-.9-7-.6-10.2c.3-3.2 5.2-8.7 5.2-8.7l-21.8 6z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path876" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M386.9 516.6s-.6 2.7-.3 2.7l24.7-6.4V511l-24.4 5.5z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path878" fill="#b6b6b4" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M355.5 551.8s-5.8-.8-5.5.6c.3 1.5 2.9 2.9 3.2 3.8.3.9-.9 4 .9 3.8 1.7-.3 3.4-1.5 3.4-2.4l-.3-5z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path880" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M387.8 537.3v2l20.9-2.9-.6-1.5z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path882" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363 540.8c.4 0 0 2.6 2.4 2 2.3-.6 2.9-2 2.9-2s.6 3.2 3.8 2.9c3.2-.3 5-3.8 5-3.8s.2 2.6 2.2 1.7c2-.9 2.6-2.9 2.6-2.9l-18.3 2.6-.5-.5zm0-17.2s-2.6.9-1.7 6.1c.9 5.2 3 8.2 3.2 8.2.3 0 2.6-5 6.1-5.8 3.5-1 9.6 2.6 9.6 2.6s-.6-4.7.3-9a18 18 0 013.8-7.6s-20.4 5.5-21.2 5.5z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path884" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M411.9 538.7l.3 1.8s21-2.6 21-3c0-.2 0-2-.4-2-.3 0-20.6 3.5-21 3.2zm-.3-18.6l.3 2 24.7-6.6s.6-1.8.3-1.8-24.7 7.3-25.3 6.4z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path886" fill="none" stroke="#512007" stroke-width=".5" d="M414.2 510.8s-.3 1.8 0 1.8 18.3-4.4 18.3-4.7c0-.3 1.8-2 .3-1.7-1.4.3-18 5.5-18.6 4.6zm38.7 33.7l-18-28.4m-2.4 19.7c.3-.8 1.2-18.3 1.2-18.3" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path888" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M389 510c1 .2 3.1 3.2 4.3 2.6 1.2-.6 2.9-2.4 2.9-2.4s-.3 3.5 2 3c2.4-.6 2.7-3 2.7-3s1.7 1 3.2 0c1.4-.8 2.8-5.2 2.3-5.2s-16.9 5.2-17.5 5zm-.6 8.4c0 .6-3 5.2-2 9.6 1 4.4 2.5 8.4 2.8 8.4.3 0 4.7-4.6 8.5-5.5 3.7-.9 9.3 2.9 9 2.9-.3 0-1.5-4.4-1.5-7.6 0-3.2 4.4-13 4.4-13zm0 21c0 .2.8 2.2 2.9 2.2 2 0 2.3-2 2.3-2s-.3 3.5 2.9 3.2c3.2-.3 4.3-3.5 4.3-3.5s.3 1.8 3 .9c2.6-.9 6-3.8 5.8-3.8-.3 0-21 3.8-21.3 3z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <use id="use890" width="992.1" height="496.1" x="0" y="0" transform="translate(-6.6 7.3)" xlink:href="#k"/>
+      <use id="use892" width="992.1" height="496.1" x="0" y="0" transform="translate(6.6 3.8)" xlink:href="#k"/>
+      <use id="use894" width="992.1" height="496.1" x="0" y="0" transform="translate(0 11)" xlink:href="#k"/>
+      <path id="k" fill="#be0f17" fill-rule="evenodd" stroke="#512007" stroke-width=".6" d="M409 477a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0z" transform="matrix(.04 -1.072 1.024 .043 251.6 668)"/>
+      <path id="path897" fill="none" stroke="#512007" stroke-width=".5" d="M398.2 500c0-.2 9 3.8 9 4.1 0 .3 32 42.8 32.3 42.8m-16-42.8l8.2 3.5 2.6 6.4m-61.4-10.4c-.3 0 9 7 9 7l1.2 5.7M341.3 546c4-1.7 32.2-26.4 32.2-26.4m-39.8 21.7l31.7-26.7m21.2 4l30 49.8m-3.6-29.2s3.5 11.7 7 13.5a86 86 0 017.6 4.6" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path899" fill="none" stroke="#512007" stroke-width=".5" d="M412.6 539.5s2.5 13.8 6 16.4c3.5 2.6 7 5.5 7 5.5" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <path id="path901" fill="none" stroke="#512007" stroke-width=".5" d="M391 439s3.4 19.2 10.4 23.6a950 950 0 0112.8 8.1" transform="matrix(1.255 0 0 1.312 256.3 -299.5)"/>
+      <path id="path903" fill="none" stroke="#512007" stroke-width=".5" d="M390.7 438.7s7.5 15.2 14 19.8c6.3 4.7 15 9 15 9M366.3 440c2 3.5 1.7 10.2 4 12.5a66 66 0 015.8 7.6m-9.3-19.9c1.2 1.7 4.4 10.4 6.4 13 1.5 2.4 16.3 17.2 16.3 17.2" transform="matrix(1.255 0 0 1.312 256.3 -299.5)"/>
+      <path id="path905" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M384.6 471.1a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0zm10.7 4.7a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0zM409 477a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0zm11.9-4.5c0 1-.7 1.7-1.6 1.7-.9 0-1.6-.8-1.6-1.7 0-.9.7-1.8 1.6-1.8.9 0 1.6.8 1.6 1.8zm9.6-5.7c0 .9-.9 1.6-1.9 1.6-1 0-1.9-.7-1.9-1.6 0-.9.9-1.6 1.9-1.6 1 0 1.9.7 1.9 1.6z" transform="matrix(1.255 0 0 1.312 256.3 -299.5)"/>
+      <path id="path907" fill="red" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M374.1 404.4c-.9.6-15.4 4.1-13.4 3.8 2-.3 13.7 3 13.4 2-.3-1 0-5.2 0-5.8zm24.7-4.3c-.6 0-9 3.2-8.7 3.2.3 0 9.6 2.6 9.3 2-.3-.6-.3-4.4-.6-5.2zm25.3 2.9c-.6.3-10.5 2.6-8.7 2.9 1.8.3 8.4 2.6 8.4 2 0-.5 0-4.6.3-5z" transform="matrix(1.255 0 0 1.312 256.3 -299.5)"/>
+      <path id="path909" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.255 0 0 1.312 256.3 -299.5)"/>
+      <path id="path911" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 31.3l6.7-31.1m-4.4 31.2l5.6-31.2m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.255 0 0 1.363 225.3 -323.4)"/>
+      <path id="path913" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.255 0 0 1.32 1259.2 -307.3)"/>
+      <path id="path915" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M426.4 558.5l27.6.6.3-2-28.5-.3zm1.2-7.3c3.2 0 27.3-4.6 27.3-4.6s.9-3 0-3-27.3 5.6-27.3 5.6z" transform="matrix(1.255 0 0 1.312 259.4 -430)"/>
+      <use id="use917" width="992.1" height="496.1" x="0" y="0" transform="translate(0 5.5)" xlink:href="#k"/>
+    </g>
+  </g>
+  <g id="g1800" transform="scale(.5)">
+    <path id="path1778" fill="#012169" d="M0 0h512v512H0z"/>
+    <path id="path1780" fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+    <path id="path1782" fill="#C8102E" d="M184 324l11 34L42 512H0v-3zm124-12l54 8 150 147v45zM512 0L320 196l-4-44L466 0zM0 1l193 189-59-8L0 49z"/>
+    <path id="path1784" fill="#FFF" d="M176 0v512h160V0zM0 176v160h512V176z"/>
+    <path id="path1786" fill="#C8102E" d="M0 208v96h512v-96zM208 0v512h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fm.svg
new file mode 100644
index 0000000..791fde9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fm.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fm" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M244.2 0h496v496h-496z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-252) scale(1.032)">
+    <path fill="#6797d6" d="M0 0h992.1v496H0z"/>
+    <path fill="#fff" d="M507.9 84.5h38.8l-31.5 21.4 12 34.8-31.3-21.5-31.5 21.5 12-34.8L445 84.4h39l12-34.7m12 363h38.8l-31.5-21.5 12-34.8-31.3 21.5-31.5-21.5 12 34.8-31.4 21.5H484l12 34.7M346 230.1l37.2-11.4-23.9 29.8 21.7 29.7-36.3-11.4-23.8 29.8 1.4-36.8-36.4-11.4 37.2-11.3 1.3-36.8m321 29.8l-37.1-11.4 23.8 29.7-21.7 29.8 36.4-11.4 23.7 29.8-1.3-36.8 36.4-11.4-37.2-11.3-1.3-36.8"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fo.svg
new file mode 100644
index 0000000..b28915c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fo.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fo" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="0" clip-path="url(#a)">
+    <path fill="#fff" d="M-78 0h708.2v512H-78z"/>
+    <path fill="#003897" d="M-75.9 199.1h198.3V0h113.3v199.1h396.6V313H235.7v199H122.4V312.9H-76V199z"/>
+    <path fill="#d72828" d="M-75.9 227.6h226.6V0h56.7v227.6h424.9v56.9h-425V512h-56.6V284.4H-75.9v-56.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fr.svg
new file mode 100644
index 0000000..f8e3ca0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/fr.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fr" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ga.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ga.svg
new file mode 100644
index 0000000..16c81b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ga.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ga" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#ffe700" d="M512 512H0V0h512z"/>
+    <path fill="#36a100" d="M512 170.7H0V0h512z"/>
+    <path fill="#006dbc" d="M512 512H0V341.3h512z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-eng.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-eng.svg
new file mode 100644
index 0000000..18026d2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-eng.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-eng" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#ce1124" d="M215 0h82v512h-82z"/>
+  <path fill="#ce1124" d="M0 215h512v82H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-nir.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-nir.svg
new file mode 100644
index 0000000..6d8a3a3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-nir.svg
@@ -0,0 +1,131 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gb-nir" viewBox="0 0 512 512">
+  <path id="rect5053" fill="#fff" stroke-width="4.7" d="M0 0h512v512H0z"/>
+  <rect id="rect1126" fill="#fff" fill-rule="evenodd" rx="0" ry="0"/>
+  <rect id="a" width="512" height="102.4" y="204.8" fill="#c00" fill-rule="evenodd" rx="0" ry="0"/>
+  <use id="use1129" width="600" height="300" transform="matrix(0 1 -.9375 0 496 0)" xlink:href="#a"/>
+  <path id="path1131" fill="#ebeae3" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M291.2 156.4c3-5.2 1.2-8.5-3.4-9.5 0 0-14.9 5-31 5.6-16 .6-35-4.3-35-4.3-3.5 2.3-2.7 7.8-1 11.2 0 0 16.8 5.9 36 5.3a108 108 0 0030.1-5.8c3.7-1.3 4.3-2.5 4.3-2.5z"/>
+  <path id="path1133" fill="#fff" stroke="#161111" stroke-width="1.6" d="M320 389.6l-30.9-64.2-70.9 5.4 40-58.8-40-58.8 71 5.4 30.8-64.1 30.9 64 70.9-5.3-40 58.8 40 58.8-71-5.4z" transform="matrix(1 0 0 1.06667 -64 -34.1)"/>
+  <path id="path1135" fill="#b02320" fill-rule="evenodd" stroke="#000" stroke-width="1.4" d="M255.5 130.4c38.8 6.8 37.4 8.7 37.4 8.7L303 107s1.1-6.4-1.7-10.3-10.5-1.7-10.5-1.7-1-5.2-4.5-6.4c-3.4-1.3-16 4.9-20 6.2-4 1.4-6 2.7-11.5 2.6a52.1 52.1 0 01-17.3-6.3 15 15 0 00-6.9-2c-2.4.1-5 .8-6.3 2.6-1.2 1.9-1.2 4.1-1.2 4.1s-2-1.3-5.3-1.3c-3.2 0-5 .4-6.5 2.2-1.4 1.9-3.4 7-3.4 7l3.7 8.7.2 12 7.5 12.8 36.2-6.7z"/>
+  <path id="path1137" fill="#ebeae3" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M291.7 148.6s2 2.5 1.9 3.4c-.1.8-1 1.6-1 1.6s.7.7.5 1.7c-.1 1-1.4 1-1.4 1s.3.9-.5 1.3-3.8 1-3.8 1-15-4.5-31-4.5-35 5.6-35 5.6-2-.8-2-2.1c-.2-1.4.1-2.4.1-2.4s-1 .2-1.3-.8c-.4-1.4.1-2.5.1-2.5s-.7.2.1-1.6a4 4 0 011.5-1.9s16.8-6.4 36-6.4a101 101 0 0135.8 6.6z"/>
+  <path id="path1139" fill="none" stroke="#000" stroke-width="1.2" d="M212.2 108.3s-.6-2.4.8-4.4a4.1 4.1 0 014.7-1.5c.8.4.7 1.3 1.7 1.6 1 .3 1.8-.5 1.8-.5"/>
+  <path id="path1141" fill="#fc0" fill-opacity=".9" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M305.8 113.7l-5.8 12.8-2.3.5s-1.4-1-5.4-.6c-2.8.2-3.7 1-3.7 1l5.2-12.8s.4 2.7 1 4.3c.8 2 3.7 4 3.7 4s.4-2.4-.4-5.4c-.8-3.3-2.8-7.8-2.8-7.8l10.5 4z"/>
+  <path id="path1143" fill="#121116" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M252.5 73.8h6.5v29.5h-6.5z"/>
+  <path id="path1145" fill="#f6ca1f" fill-rule="evenodd" stroke="#000" d="M212.6 128.3l4.1 9.5s17.9-7.4 38.9-7.3c31.5.2 40.5 7 40.5 7l4.6-11.8-3.5 2.1-3.6 2.4-4 1.7-5-.4-4.4-3.5-2.2-5-3.7 3.7-6.6 1.6-6.4-1.8-5.6-7.6s-4.2 8.4-9.6 9c-7.7.7-12.1-4-12.1-4s-2.9 6.8-7.6 8c-7.5 2-13.7-3.6-13.8-3.6z"/>
+  <g id="g1265" stroke-width="2.2">
+    <path id="path1147" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 59.9 -67.6)"/>
+    <path id="path1149" fill="#a3afb8" fill-rule="evenodd" d="M279.5 71.9s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.4-1.7 1.7-.6.1-1.6-.1-2-.5z"/>
+    <path id="path1151" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 51.7 -63.5)"/>
+    <path id="path1153" fill="#a3afb8" fill-rule="evenodd" d="M271.3 76s2.8 0 3-1.3c.3-1.1-.2-2.7-.2-2.7s1.3 1.6 1 2.7c-.4 1.2-.8 1.5-1.7 1.8-.6.1-1.6-.1-2-.5z"/>
+    <path id="path1155" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 69.3 -70)"/>
+    <path id="path1157" fill="#a3afb8" fill-rule="evenodd" d="M289 69.5s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.5-1.7 1.7a3 3 0 01-2.1-.5z"/>
+    <path id="path1159" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 80 -67.7)"/>
+    <path id="path1161" fill="#a3afb8" fill-rule="evenodd" d="M299.7 71.8s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.5-1.7 1.7-.7.2-1.6-.1-2.1-.5z"/>
+    <path id="path1163" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 88.2 -60.5)"/>
+    <path id="path1165" fill="#a3afb8" fill-rule="evenodd" d="M307.9 79s2.7 0 3-1.3c.2-1.2-.2-2.7-.2-2.7s1.3 1.5.9 2.7c-.4 1.2-.7 1.5-1.7 1.7-.6.2-1.5 0-2-.5z"/>
+    <path id="path1167" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 91.7 -48.8)"/>
+    <path id="path1169" fill="#a3afb8" fill-rule="evenodd" d="M311.4 90.7s2.7 0 3-1.2c.2-1.2-.2-2.7-.2-2.7s1.3 1.5.9 2.7c-.4 1.2-.7 1.5-1.7 1.7-.6.2-1.5-.1-2-.5z"/>
+    <path id="path1171" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 90.4 -36.9)"/>
+    <path id="path1173" fill="#a3afb8" fill-rule="evenodd" d="M310 102.6s2.8 0 3-1.2c.3-1.2-.1-2.7-.1-2.7s1.3 1.5.9 2.7c-.4 1.1-.7 1.5-1.7 1.7-.6.1-1.5-.1-2-.5z"/>
+    <path id="path1175" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 85.5 -26.5)"/>
+    <path id="path1177" fill="#a3afb8" fill-rule="evenodd" d="M305.1 113s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.2-.8 1.5-1.7 1.7-.6.2-1.6 0-2-.5z"/>
+    <path id="path1179" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 43.7 -60.4)"/>
+    <path id="path1181" fill="#a3afb8" fill-rule="evenodd" d="M263.4 79.1s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.4-1.7 1.7a3 3 0 01-2.1-.5z"/>
+    <g id="g1187" stroke-width="2.7">
+      <path id="path1183" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.43616 0 0 .46523 70.3 -38.8)"/>
+      <path id="path1185" fill="#a3afb8" fill-rule="evenodd" d="M254 77.9s2.3 0 2.5-1c.3-1-.1-2.3-.1-2.3s1 1.2.8 2.2c-.4 1-.7 1.3-1.4 1.5a2.3 2.3 0 01-1.8-.4z"/>
+    </g>
+    <g id="g1193" stroke-width="2.7">
+      <path id="path1189" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.43616 0 0 .46523 70.4 -35)"/>
+      <path id="path1191" fill="#a3afb8" fill-rule="evenodd" d="M254 81.6s2.3 0 2.6-1c.2-1-.2-2.2-.2-2.2s1 1.2.8 2.2c-.3 1-.6 1.3-1.4 1.5a2.3 2.3 0 01-1.7-.4z"/>
+    </g>
+    <g id="g1199" stroke-width="2.7">
+      <path id="path1195" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.43616 0 0 .46523 70.6 -29.5)"/>
+      <path id="path1197" fill="#a3afb8" fill-rule="evenodd" d="M254.3 87.2s2.2 0 2.5-1c.2-1-.2-2.3-.2-2.3s1 1.3.8 2.3c-.3 1-.6 1.2-1.4 1.4a2.3 2.3 0 01-1.7-.4z"/>
+    </g>
+    <g id="g1205" stroke-width="2.5">
+      <path id="path1201" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.47168 0 0 .50313 55.5 -33)"/>
+      <path id="path1203" fill="#a3afb8" fill-rule="evenodd" d="M254.2 93.3s2.5-.1 2.7-1.2c.3-1-.1-2.4-.1-2.4s1.1 1.4.8 2.4c-.4 1.1-.7 1.4-1.5 1.6a2.5 2.5 0 01-1.9-.5z"/>
+    </g>
+    <path id="path1207" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 34.4 -38.2)"/>
+    <path id="path1209" fill="#a3afb8" fill-rule="evenodd" d="M254 101.3s2.8 0 3-1.2c.3-1.2-.1-2.7-.1-2.7s1.3 1.5.9 2.7c-.4 1.2-.7 1.5-1.7 1.7-.6.2-1.5 0-2-.5z"/>
+    <g id="g1215" stroke-width="2.4">
+      <path id="path1211" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.48982 0 0 .52248 47.7 -13.5)"/>
+      <path id="path1213" fill="#a3afb8" fill-rule="evenodd" d="M254 117.5s2.6 0 2.8-1.1c.3-1.2-.1-2.6-.1-2.6s1.2 1.4.8 2.5c-.3 1.2-.7 1.4-1.5 1.7a2.6 2.6 0 01-2-.5z"/>
+    </g>
+    <path id="path1217" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 25 -60.5)"/>
+    <path id="path1219" fill="#a3afb8" fill-rule="evenodd" d="M244.6 79s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.5-1.7 1.7-.6.1-1.6-.1-2-.5z"/>
+    <path id="path1221" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 16.6 -64)"/>
+    <path id="path1223" fill="#a3afb8" fill-rule="evenodd" d="M236.3 75.5s2.7 0 3-1.2c.2-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.5 1.1-.8 1.4-1.8 1.7-.6.1-1.5-.1-2-.5z"/>
+    <path id="path1225" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 8.6 -68)"/>
+    <path id="path1227" fill="#a3afb8" fill-rule="evenodd" d="M228.3 71.5s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.1-.8 1.4-1.7 1.7a3 3 0 01-2.1-.5z"/>
+    <path id="path1229" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -.5 -70.2)"/>
+    <path id="path1231" fill="#a3afb8" fill-rule="evenodd" d="M219.1 69.3s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.2-.8 1.5-1.7 1.7-.6.2-1.6 0-2-.5z"/>
+    <path id="path1233" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -11.4 -67.4)"/>
+    <path id="path1235" fill="#a3afb8" fill-rule="evenodd" d="M208.3 72.1s2.7 0 3-1.2c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.2-.8 1.5-1.7 1.7-.7.2-1.6-.1-2-.5z"/>
+    <path id="path1237" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -19 -59.3)"/>
+    <path id="path1239" fill="#a3afb8" fill-rule="evenodd" d="M200.7 80.3s2.7-.1 3-1.3c.2-1.2-.2-2.7-.2-2.7s1.3 1.5.9 2.7c-.4 1.2-.7 1.5-1.7 1.7-.6.2-1.5 0-2-.5z"/>
+    <path id="path1241" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -22.2 -47.9)"/>
+    <path id="path1243" fill="#a3afb8" fill-rule="evenodd" d="M197.5 91.7s2.7 0 3-1.3c.3-1.2-.2-2.7-.2-2.7s1.3 1.5 1 2.7c-.4 1.2-.8 1.5-1.7 1.7-.7.2-1.6 0-2.1-.4z"/>
+    <path id="path1245" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -20.8 -36)"/>
+    <path id="path1247" fill="#a3afb8" fill-rule="evenodd" d="M198.9 103.6s2.7 0 3-1.3c.3-1.1-.2-2.7-.2-2.7s1.3 1.6 1 2.7c-.4 1.2-.8 1.5-1.7 1.8a3 3 0 01-2.1-.5z"/>
+    <path id="path1249" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.52155 0 0 .55632 -15.6 -25.2)"/>
+    <path id="path1251" fill="#a3afb8" fill-rule="evenodd" d="M204 114.3s2.8 0 3-1.2c.3-1.2-.1-2.7-.1-2.7s1.3 1.5 1 2.7c-.5 1.2-.8 1.5-1.8 1.7-.6.2-1.5 0-2-.5z"/>
+    <g id="g1257" stroke-width="2.8">
+      <path id="path1253" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.31597 -.0903 .13499 .53737 45.4 32)"/>
+      <path id="path1255" fill="#a3afb8" fill-rule="evenodd" d="M212.3 128.7s1.6-.5 1.5-1.7c0-1.2-.7-2.6-.7-2.6s1.1 1.3 1.2 2.5c0 1.2-.1 1.5-.6 2-.3.2-1 .1-1.4-.2z"/>
+    </g>
+    <g id="g1263" stroke-width="2.8">
+      <path id="path1259" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.31758 .08362 -.125 .54011 196 -42.9)"/>
+      <path id="path1261" fill="#a3afb8" fill-rule="evenodd" d="M298.3 127.8s1.7.4 2.1-.7c.5-1.1.5-2.7.5-2.7s.5 1.7 0 2.8-.8 1.3-1.4 1.4c-.4 0-1-.4-1.2-.8z"/>
+    </g>
+  </g>
+  <path id="path1267" fill="#b3a192" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M252.7 57.4l.3 6s-6.8.7-7 1.4c-1.4 3.1 1.5 7.3 1.5 7.3s2.3-1.8 8-1.8c5.5 0 8.3 1.5 8.3 1.5s1.4-2.5 1.4-4.3c0-1.8-.6-3.6-.6-3.6l-3.6-.4h-2.5l-.2-6.2-5.6.1z"/>
+  <path id="path1269" fill="#f0ddcb" stroke="#121116" stroke-linejoin="round" stroke-width=".6" d="M262.4 66.8c0 .7-.6 1.3-1.2 1.3a1.2 1.2 0 01-1.3-1.3 1.2 1.2 0 011.2-1.2 1.2 1.2 0 011.3 1.2m2.7.7c0 .7-.5 1.3-1.2 1.3s-1.3-.6-1.3-1.3a1.3 1.3 0 011.3-1.3c.7 0 1.2.6 1.2 1.3m-5.5-.7c0 .7-.6 1.2-1.2 1.2-.7 0-1.2-.5-1.2-1.2a1.2 1.2 0 011.1-1.3 1.2 1.2 0 011.3 1.3m-5.6 0c0 .8-.6 1.3-1.3 1.3-.7 0-1.2-.5-1.2-1.2 0-.8.5-1.3 1.2-1.3s1.3.5 1.3 1.2m-3.1.3c0 .7-.6 1.3-1.3 1.3s-1.2-.6-1.2-1.3c0-.7.5-1.3 1.2-1.3s1.3.6 1.3 1.3m5.7-3.7c0 .6-.5 1-1 1a1 1 0 01-1.1-1 1 1 0 011-1.1 1 1 0 011 1m0-5c0 .6-.4 1-1 1a1 1 0 01-1-1 1 1 0 011-1 1 1 0 011 1m0 2.7c0 .6-.4 1.1-1 1.1a1 1 0 01-1-1 1 1 0 011-1.2 1 1 0 011 1.1m-8.8 7c0 .7-.5 1.2-1.2 1.2-.6 0-1.2-.5-1.2-1.2a1.2 1.2 0 011.2-1.3 1.2 1.2 0 011.2 1.3"/>
+  <path id="path1271" fill="#916c68" stroke="#4d3126" stroke-linejoin="round" stroke-width=".6" d="M256.9 66.5c0 .8-.6 1.4-1.4 1.4a1.4 1.4 0 01-1.3-1.4 1.4 1.4 0 011.3-1.3 1.4 1.4 0 011.4 1.3"/>
+  <g id="g1277" stroke-width="2.5">
+    <path id="path1273" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="3" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.386 0 0 .41173 91.8 -53.4)"/>
+    <path id="path1275" fill="#a3afb8" fill-rule="evenodd" d="M254.4 49.9s2 0 2.2-1c.2-.8-.1-2-.1-2s1 1.2.7 2c-.3 1-.6 1.2-1.2 1.3a2 2 0 01-1.6-.3z"/>
+  </g>
+  <path id="path1279" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M216 138.8s2.2 2.2 2.8 4.2c.6 2 1.5 7.3 1.5 7.3s23.2-7 34.6-6.4c11.4.6 37.7 6.8 37.7 6.8l1-6.2c.5-3.2 2.7-6.6 2.7-6.6s-25.2-8.4-41-7.6c-15.9.8-23.8 2.6-27.3 3.8a248.5 248.5 0 00-12 4.7z"/>
+  <path id="path1281" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M250.7 38.5h10s-2.5 1.8-3 3.5c-.4 1.5-.3 4-.3 4s2.7 0 4-1.1l3.7-3v13.5s-2.5-2.5-4-3.4c-1.7-1-3.5-1.3-3.5-1.3s0 2.2.8 3.5l4.3 6.2-14.3.6s3.4-3.8 4.7-6.6c1-1.8.6-3.7.6-3.7s-2.4 0-3.6.9c-1.3.9-3.4 3.6-3.4 3.6v-13s1 2.5 3 3.4c2 1 3.8.5 3.8.5s.4-2.6-.4-4.2c-.9-1.7-2.6-3.5-2.4-3.4z"/>
+  <path id="path1283" fill="#fc0" fill-rule="evenodd" stroke="#121116" stroke-width="1.2" d="M249.9 81.5s-7.1 0-13.2-3.9c-6.1-3.8-12.3-7.8-21.3-5.6-1.8.5-8.7 3.7-11.7 14-2 7.3.4 16 2.5 20 2.2 3.9 5.6 7.9 5.6 7.9l3.7-2.7s-9.4-8.4-8.2-19.4c1-11 6.2-13.5 6.2-13.5s6.4-5.3 14.9-.3a76.8 76.8 0 0025.3 9.2c.6 0-4-5.7-3.8-5.7z"/>
+  <path id="path1285" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M210.5 122.7l-3.8-8 11.4-4.7s-2.8 4-3.4 6.7c-.8 3.4-.5 6.3-.5 6.3s1-.9 2.3-3c1-1.8 2.6-7.9 2.6-7.9l5.1 17.4s-2.6-2.8-4.5-3.1c-2-.4-4.6.3-4.6.3l-3 1-1.6-5z"/>
+  <path id="path1287" fill="#fc0" fill-rule="evenodd" stroke="#121116" stroke-width="1.2" d="M262.7 81.4s7.1 0 13.2-4c6.1-3.8 12.2-7.8 21.3-5.5 1.8.5 8.6 3.6 11.6 14 2.1 7.2-.3 16-2.5 20l-3.6 6.2-4.4-1.7s8.1-7.8 7-18.8c-1.1-11-6.2-13.5-6.2-13.5s-6.4-5.3-14.9-.3-16.8 7.3-16.8 7.3-7.8 2-8.5 2c-.7-.1 4-5.8 3.8-5.7z"/>
+  <path id="path1289" fill="#fc0" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M259 73.9h3v29.5h-3zm-10-.1h3.5v29.5H249z"/>
+  <path id="path1291" fill="#fc0" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M265.2 66.9a9.6 9.6 0 01-9.7 9.5 9.6 9.6 0 01-9.7-9.5 9.6 9.6 0 019.6-9.5 9.6 9.6 0 019.8 9.4"/>
+  <path id="path1293" fill="#fc0" fill-rule="evenodd" stroke="#000" d="M246.9 103.2l16.7-.1s-2 1.2-3.6 4.4c-1.7 3.2-1.5 5.2-1.5 5.2s2.6 0 4.3-1.5c1.8-1.3 3.8-4 3.8-4v16.5s-1.3-2.1-3.3-3.4c-2-1.2-4.8-1.2-4.8-1.2h-5.7s-2.6.2-3.7 1a29.9 29.9 0 00-3.7 3.4L245 108s.8 2.7 3.5 3.8 4.2 1 4.2 1 0-3.5-1.4-5.3-4.5-4.2-4.5-4.3z"/>
+  <path id="path1295" fill="#f6ca1f" fill-rule="evenodd" stroke="#000" d="M256.2 116s2.4 6.1 5.3 8.8c1.6 1.6 6.6 2.8 8.8 2.2 5-1.4 8.6-5.7 8.6-5.7s-.2 4.7 3 7.3c3.1 2.6 5.6 3.3 8.2 2.5 2.7-.8 10-6.6 10-6.6l1.6 1.4s-4.3 4.4-8.7 6.7c-2.3 1.2-9.3.6-11.5-1.4-2.3-1.9-3.6-6.5-3.6-6.5s-1.4 3-4.4 4c-3 1-7 1-10.9-.2-2.5-.8-5.9-4.5-6.5-5.8-.6-1.2-.4-2-.4-2s-2 5.8-5.8 7.4a17.6 17.6 0 01-11.5.4c-3.6-1.1-3.9-3.3-3.9-3.3s-.2 6-8 7.8c-8 1.8-14.2-4.4-14.2-4.4l1.1-1.7s4.4 5.3 11.2 4.8c6.8-.5 9-9.8 9-9.8s3 4.9 11 5c7.9 0 10.2-11 10.2-11l1.4.2z"/>
+  <g id="g1305" fill="#fc0" stroke="#000" stroke-width="2.2">
+    <path id="path1297" fill-rule="evenodd" d="M338.6 336.3s0-5.3 1.2-6.9a4.6 4.6 0 015-2c1.3.4 2.8 1.6 2.5 5.3-.2 3.7-1.2 5.5-.1 6.9 1 1.4 1.2 2.3 3.4 2 2-.3 3-1 2.5-3-.4-2-1 .2-1.5-1.5-.4-1.6 2.1-8.7 1.7-13.1-.4-4.3-2-7.8-5.3-8.6-3.1-.8-5.8-.8-8.7 1.3a35 35 0 00-6.3 8.7v14.3l5.7-.4-.1-3z" transform="matrix(.52155 0 0 .55632 60 -67.5)"/>
+    <path id="path1299" fill-rule="evenodd" d="M327.8 340.1s-2.3-4.8-4-5.8a4.7 4.7 0 00-5.3.1c-1 1-1.9 2.6-.2 6 1.7 3.2 3.3 4.5 2.9 6.2-.5 1.7-.2 2.6-2.3 3.2s-3.2.3-3.6-1.7c-.3-2 1.1-.3.8-2-.3-1.6-5.4-7.2-6.7-11.4-1.4-4-1.3-8 1.4-10 2.5-2 5-3 8.4-2.2 3.4.7 9.3 5.4 9.3 5.4l5.8 13-5.5 2-1-2.8z" transform="matrix(.52155 0 0 .55632 60 -67.5)"/>
+    <path id="path1301" fill-rule="evenodd" d="M326.7 297.9s-5.7 9.5-4.4 16.8c1.2 7.3 8.8 23 8.8 23v2l4-.4-.8-2.2s2-18.7.7-24.6c-.9-4.4-8.3-14.5-8.3-14.6zm9 43.4s2.8 3.4 6.2 5c3.6 1.8 5.2 1.8 6.6.7 1-.8.7-4.2-.5-5.2-1.3-.9-2.7-.4-3 .5-.3 1.6-.8 1.5-2 .9l-5.5-3.3-1.8 1.4zm-4.4.8s-1.2 4.2-3.6 7c-2.6 3.2-4 3.9-5.8 3.5-1.3-.3-2.3-3.6-1.6-5 .8-1.4 2.3-1.5 2.8-.7 1 1.2 1.5 1 2.3 0a149.1 149.1 0 003.7-5.4l2.2.6z" transform="matrix(.52155 0 0 .55632 60 -67.5)"/>
+    <path id="path1303" stroke-linejoin="round" d="M342.1 342c0 1.2-4 2.2-8.8 2.2s-8.9-1-9-2.3c0-1.2 4-2.2 8.9-2.2s8.9 1 8.9 2.2" transform="matrix(.51436 -.09206 .0863 .54866 33 -35.2)"/>
+  </g>
+  <g id="g1315" fill="#fc0" stroke="#000" stroke-width="2.2">
+    <path id="path1307" fill-rule="evenodd" d="M338.6 336.3s0-5.3 1.2-6.9a4.6 4.6 0 015-2c1.3.4 2.8 1.6 2.5 5.3-.2 3.7-1.2 5.5-.1 6.9 1 1.4 1.2 2.3 3.4 2 2-.3 3-1 2.5-3-.4-2-1 .2-1.5-1.5-.4-1.6 2.1-8.7 1.7-13.1-.4-4.3-2-7.8-5.3-8.6-3.1-.8-5.8-.8-8.7 1.3a35 35 0 00-6.3 8.7v14.3l5.7-.4-.1-3z" transform="matrix(.48843 .1951 -.1829 .521 177.8 -120.5)"/>
+    <path id="path1309" fill-rule="evenodd" d="M327.8 340.1s-2.3-4.8-4-5.8a4.7 4.7 0 00-5.3.1c-1 1-1.9 2.6-.2 6 1.7 3.2 3.3 4.5 2.9 6.2-.5 1.7-.2 2.6-2.3 3.2s-3.2.3-3.6-1.7c-.3-2 1.1-.3.8-2-.3-1.6-5.4-7.2-6.7-11.4-1.4-4-1.3-8 1.4-10 2.5-2 5-3 8.4-2.2 3.4.7 9.3 5.4 9.3 5.4l5.8 13-5.5 2-1-2.8z" transform="matrix(.48843 .1951 -.1829 .521 177.8 -120.5)"/>
+    <path id="path1311" fill-rule="evenodd" d="M326.7 297.9s-5.7 9.5-4.4 16.8c1.2 7.3 8.8 23 8.8 23v2l4-.4-.8-2.2s2-18.7.7-24.6c-.9-4.4-8.3-14.5-8.3-14.6zm9 43.4s2.8 3.4 6.2 5c3.6 1.8 5.2 1.8 6.6.7 1-.8.7-4.2-.5-5.2-1.3-.9-2.7-.4-3 .5-.3 1.6-.8 1.5-2 .9l-5.5-3.3-1.8 1.4zm-4.4.8s-1.2 4.2-3.6 7c-2.6 3.2-4 3.9-5.8 3.5-1.3-.3-2.3-3.6-1.6-5 .8-1.4 2.3-1.5 2.8-.7 1 1.2 1.5 1 2.3 0a149.1 149.1 0 003.7-5.4l2.2.6z" transform="matrix(.48843 .1951 -.1829 .521 177.8 -120.5)"/>
+    <path id="path1313" stroke-linejoin="round" d="M342.1 342c0 1.2-4 2.2-8.8 2.2s-8.9-1-9-2.3c0-1.2 4-2.2 8.9-2.2s8.9 1 8.9 2.2" transform="matrix(.51196 .1062 -.09955 .5461 141.8 -100.3)"/>
+  </g>
+  <path id="path1317" fill="#cca715" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M215 138.5s.6 2.2 1.8 1c1.1-1 17.2-7.8 39.8-7.8s37.6 6.6 38.5 7c.9.4 1.3 1 2 0 .8-.9-.7-2.4-.7-2.4s-15.8-7.1-40.4-7c-24.7 0-40.6 7.6-40.6 7.6s-1 .8-.3 1.6z"/>
+  <path id="path1319" fill-rule="evenodd" d="M243.8 148.6s.8-2.2 2-2.6c1-.3 2.6.8 2.6.8s-1.9-.2-2.5.1c-.5.4-.7 1.3-.7 1.3s.4-.7 1.9-.7l1.6.1s-2.5.2-3 1c-.6.7 2.3 1 2.3 1s-4.5.1-5-.2c-.7-.3-1-1.2-2-1-1 .4-2 1.3-2 1.3s1-2 1.8-2c.7 0 1.1 0 1.8.2s1.2.7 1.2.7zm-16.7 3.9s.3-2.3 1.5-3c1-.5 2.7.3 2.7.3s-2 .1-2.5.6c-.4.5-.4 1.4-.4 1.4s.2-.8 1.7-1l1.6-.3s-2.4.7-2.8 1.6c-.5.9 2.5.6 2.5.6s-4.4 1-5 .8c-.7-.2-1.2-1-2.2-.6-.9.5-1.7 1.6-1.7 1.6s.8-2.2 1.5-2.4c.7-.1 1-.2 1.8 0 .7.1 1.3.4 1.3.4zm30.9-4.7s.8-2.1 2-2.4c1.1-.3 2.6.8 2.6.8s-1.9-.2-2.5 0c-.5.4-.8 1.3-.8 1.3s.5-.7 2-.5l1.6.1s-2.5 0-3.1.8c-.6.7 2.3 1.3 2.3 1.3s-4.5-.3-5-.6c-.6-.3-1-1.3-2-1.1-1 .2-2 1.1-2 1.1s1.2-2 1.9-2c.7.1 1.1.1 1.8.5l1.2.7zm14.1 1.7s1-2 2.4-2.1c1-.2 2.4 1.1 2.4 1.1s-1.8-.5-2.5-.3c-.6.3-.9 1.2-.9 1.2s.5-.7 2-.3l1.6.3s-2.5-.2-3.2.4c-.7.7 2.1 1.6 2.1 1.6s-4.4-.8-5-1.2c-.4-.4-.7-1.5-1.7-1.4-1 .1-2.2 1-2.2 1s1.5-1.9 2.2-1.8c.7.1 1.1.2 1.7.6l1.1.9zm14 2.7s1-1.5 2.1-1.6c.9 0 1.9 1.2 1.9 1.2s-1.5-.6-2-.4c-.5 0-.8.8-.8.8s.5-.5 1.6-.1l1.3.4s-2-.4-2.6 0c-.6.5 1.6 1.5 1.6 1.5s-3.5-1-4-1.4c-.3-.3-.4-1.2-1.2-1.2-.9 0-1.9.6-1.9.6s1.3-1.4 1.9-1.2c.5.1.9.2 1.3.6l.9.8z"/>
+  <path id="path1321" fill="#0f6545" stroke="#000" stroke-linejoin="round" stroke-width=".7" d="M241 138.4c.4 1.8-1.6 3.7-4.4 4.3-2.7.6-5.3-.4-5.6-2.2-.3-1.8 1.6-3.7 4.4-4.3 2.8-.6 5.3.4 5.6 2.2z"/>
+  <path id="path1323" fill="#cecfc1" d="M234.8 138c0 .5-.4 1-1 1.1-.6.1-1.2-.1-1.3-.5 0-.5.4-1 1-1 .6-.2 1.2 0 1.3.5z"/>
+  <path id="path1325" fill="#0f6545" stroke="#000" stroke-linejoin="round" stroke-width=".7" d="M280.1 140.5c-.5 1.8-3 2.5-5.8 1.6-2.7-1-4.4-3-4-4.8.6-1.8 3.2-2.5 5.9-1.6 2.7 1 4.5 3 4 4.8z"/>
+  <path id="path1327" fill="#cecfc1" d="M274.8 137c-.2.5-.7.7-1.3.5-.6-.2-1-.7-.9-1.2.1-.4.7-.6 1.3-.4.6.2 1 .7.9 1.2z"/>
+  <path id="path1329" fill="#1f2d86" stroke="#000" stroke-linejoin="round" d="M250.6 134.3h10.1v5.5h-10.1z"/>
+  <path id="path1331" fill="#707c8b" d="M254.9 135.5c0 .3-.5.5-1 .5s-1-.3-1-.5.5-.4 1-.4 1 .2 1 .4z"/>
+  <path id="path1333" fill="#9f1209" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M222 139.8l1.6 5.3-3 1.8s-1.5 1-3 .2c-1.3-.8-2.2-3.2-1.4-4.2 1.5-2 5.7-3.2 5.7-3.1z"/>
+  <path id="path1335" fill="#8f322f" d="M219.3 143.6c0 .8-.6 1.6-1.4 1.6s-1.4-.8-1.4-1.6c0-1 .6-1.7 1.4-1.7s1.4.8 1.4 1.6z"/>
+  <path id="path1337" fill="#e2a494" d="M218 143a1 1 0 01-.2.6c-.1.2-.3.2-.5.1-.2 0-.3-.3-.4-.6a1 1 0 01.2-.7.4.4 0 01.5-.1c.2 0 .4.3.4.6z"/>
+  <path id="path1339" fill="#9f1209" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M289.9 140.5l-1.7 4.7 4 2.2s1.7.8 2.8-.2c1-.9 1.2-3 .4-4-.7-1-5.6-2.7-5.5-2.7z"/>
+  <path id="path1341" fill="#aa675d" d="M294.6 144.3c0 .5-.6 1-1.3 1s-1.2-.5-1.2-1c0-.6.6-1.1 1.2-1.1.7 0 1.3.5 1.3 1z"/>
+  <path id="path1343" fill="#e2a494" d="M293.4 144c0 .4-.1.6-.3.8a.5.5 0 01-.6 0 .8.8 0 01-.3-.7c0-.3.1-.5.3-.7a.5.5 0 01.6 0c.2.2.3.4.3.7z"/>
+  <path id="path1345" fill="#f5d8bc" d="M264.6 134.8a.7.7 0 01-.8.7.7.7 0 01-.7-.7.7.7 0 01.7-.7.7.7 0 01.8.7zm4.3.3a.7.7 0 01-.7.7.7.7 0 01-.8-.7.7.7 0 01.8-.7.7.7 0 01.7.7zm-2.2 1.8a.9.9 0 01-1 .9.9.9 0 01-.8-1c0-.4.4-.8.9-.8s.9.4.9.9zm2 3a.7.7 0 01-.6.7.7.7 0 01-.8-.7.7.7 0 01.7-.8.7.7 0 01.8.8zm-4.1-.6a.7.7 0 01-.7.7.7.7 0 01-.7-.7.7.7 0 01.7-.7.7.7 0 01.7.7zm-20.9-3.7a.7.7 0 01-.5.9.7.7 0 01-.9-.6.7.7 0 01.6-.8.7.7 0 01.8.5zm4.3-.8a.7.7 0 01-.6.9.7.7 0 01-.8-.5.7.7 0 01.5-1 .7.7 0 01.9.6zm-1.8 2.3a1 1 0 01-.6 1 .9.9 0 01-1.1-.6 1 1 0 01.7-1 .9.9 0 011 .6zm2.7 2.4a.7.7 0 01-.5.9.7.7 0 01-.9-.5.7.7 0 01.5-1 .7.7 0 01.9.6zm-4.2.5a.7.7 0 01-.5.8.7.7 0 01-.9-.5.7.7 0 01.6-.9.7.7 0 01.8.6zm-19.2-.2a.8.8 0 01-.4 1 .7.7 0 01-.9-.5.8.8 0 01.4-1 .7.7 0 011 .5zm4.1-1.4a.8.8 0 01-.4 1 .7.7 0 01-.9-.5.8.8 0 01.4-1 .7.7 0 011 .5zm-1.4 2.5a1 1 0 01-.5 1.2.9.9 0 01-1.2-.5 1 1 0 01.6-1.2.9.9 0 011.1.5zm3 2a.8.8 0 01-.4 1 .7.7 0 01-1-.5.8.8 0 01.5-1 .7.7 0 01.9.5zm-4.1 1a.8.8 0 01-.4 1 .7.7 0 01-1-.4.8.8 0 01.5-1 .7.7 0 01.9.4zm56.2-6.2a.8.8 0 01-1 .5.8.8 0 01-.5-1 .8.8 0 011-.5.8.8 0 01.5 1zm4.4 1.4a.8.8 0 01-.9.6.8.8 0 01-.6-1 .8.8 0 011-.5.8.8 0 01.5 1zm-2.7 1.3a1 1 0 01-1.1.7 1 1 0 01-.8-1.2 1 1 0 011.2-.7c.5.1.8.7.7 1.2zm1.5 3.7a.8.8 0 01-1 .6.8.8 0 01-.5-1 .8.8 0 01.9-.5.8.8 0 01.6 1zm-4.3-1.7a.8.8 0 01-.9.5.8.8 0 01-.5-1 .8.8 0 01.9-.5.8.8 0 01.5 1z"/>
+  <path id="path1347" fill="none" stroke="#000" stroke-width="1.2" d="M292 94.9s-2 2-4.5 2a7 7 0 01-4.6-1.6c-.8-.6.2-2.2.2-2.2"/>
+  <path id="path1349" fill="none" stroke="#000" stroke-width="1.1" d="M248.9 99s-3.7-.7-5.3-1.3c-1.5-.5-1.1-1.6-3-1.5-1.7.2-3.5 1.5-3.1 3.4.4 2 1.7 2.2 3 1.8 1.2-.4.8-2.7-.8-2.6-1.7.2-.3 1.7-.3 1.7M223.3 96s1 1.6 3.7 1.3c2.7-.2 3.7-1.8 3.8-2.4.1-.7 0-2-.5-2.5s-2.3-.8-2.3-.8"/>
+  <g id="g1355" stroke="#161111">
+    <path id="path1351" fill="#c00" d="M312 169c1.6-1.5 4-3.2 5.4-6.9 1.3-3.5 2-9.8 3.2-13 1.5-5.5 4.6-10.8 1-10.5-3.6.4-4.8 3.8-6.1 6.3-.6 1-2 3-2.3 4 0-1.8-1-7.4-1.2-13-.2-5.2 0-10.6-.2-12.6-.2-2.7-.2-5.2-.8-7.2-.3-1-1.6-1.8-2.3-1.8-1.5 0-2.3 1.3-2.5 2.5l-.2 1.7-.1 5.2v5.6l-.5 7.2c0-1.3-.6-7.3-.8-13a419.5 419.5 0 01-.2-6.3l-.1-4.6c-.3-2.2-1-3.1-2.5-3.1-1 0-2.6.7-3 3.1a21.5 21.5 0 00-.3 4.6l.1 5c-.1 6.5-.2 13.5-.5 15.5 0-.7-.7-4.1-.8-8.7a804.7 804.7 0 00-.3-6l-.2-6c0-1-.4-3.9-2.3-3.7-1-.1-2.1.6-2.5 3.3-.3 1.5-.3 4.1-.3 6.1 0 3.9-.2 7.2 0 10.6v4.8c0 .3-.5-1.8-.8-4.6l-.5-5.4c0-1.4 0-3.5-.2-5.3 0-1.3 0-2.8-1.5-2.7-1.5.1-2.4.6-2.7 3.2-.2 1.6-.3 5.2-.3 6.5a88 88 0 01-1.1 13.2c-.1 1.6-.8 3.6-1 5.8a44 44 0 00.6 12.9c1.2 4.4 4.4 6.4 4.2 9.4v10.6c0 2.4 2 2.5 6.3 1.6 7-1.5 10.8 1.5 16.5-.7-.7-6.6.7-10.5.7-12.9zm-4-15.4c1.4-4 3.2-5.6 5-6.4" transform="matrix(1.6 0 0 1.70667 -224 0)"/>
+    <path id="path1353" fill="none" d="M292.1 149.5c2.2-.9 4.4-1.5 6.6-2.3 2.8-.7 5.4-1.8 8.1-2.2 1.4-.3 2.7-.6 4-.7m-22.5 26.3c.3-.2.6.2.9.2.4.1.8.3 1.2.2a66.9 66.9 0 012.6 0c1 0 1.8 0 2.6-.6m6.3.3c.3.3.6.5 1 .6.5.2 1 .3 4.6 0 2.1.1 4-1.7 4.6-2.3" transform="matrix(1.6 0 0 1.70667 -224 0)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-sct.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-sct.svg
new file mode 100644
index 0000000..6987b08
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-sct.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-sct" viewBox="0 0 512 512">
+  <path fill="#0065bd" d="M0 0h512v512H0z"/>
+  <path stroke="#fff" stroke-width=".6" d="M0 0l5 3M0 3l5-3" transform="scale(102.4 170.66667)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-wls.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-wls.svg
new file mode 100644
index 0000000..3931a17
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb-wls.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-wls" viewBox="0 0 512 512">
+  <path fill="#00ab39" d="M0 256h512v256H0z"/>
+  <path fill="#fff" d="M0 0h512v256H0z"/>
+  <g stroke="#000" stroke-width="1.2">
+    <path fill="#d21034" d="M339.5 113.2zm0 0a585.4 585.4 0 00-94.4 63.3c-14.3 12.6-10.3 22.6-10.8 33.8.4 7.6-1.7 14.6-6.3 18.8l-32 6.5-3-8.8c1-4.5 4.7-6.8 12.6-4 .6-5.7-4-8-9.5-10.1-2-1.5-4.2-2.6-4-7.6-.9-11.4 17.4.8 17.5.8.2 0-.6-11.5-9-13.8-4.5-1.6-6.4-6.4-4.7-10 3.6-7.3 10.5.6 15.8.9-.2-4.8-1.6-8.2-5.7-12-2.2-1.4-7.6-2.4-7.7-4.7-.1-3 5-4.4 12.2-3.5-1.5-4.4-6.3-7.2-12.9-9.2l-3.9-6.8c-1.8-3.4-2.7-3.5 1.6-10l12.8-8.5-4.2-.5c.5-4.6.6-6.2 1.7-13.9-4.2 5.6-9.3 4.6-14 7 0 0-13.2 2.3-17.4 8l-33.3-1.8c-7 1-13 3-14.3 9.9-16 1.6-33 .2-45.3 15.6 8.4-.4 15.7-2.4 25.1-1.2 0 0 8 .2 9.7 8.7.2.3 2.7.3 2.7.3l3 2.4 1.3-3.3 2.7 2 .8-3.6 2.7 1.8.2-4.2 3.6 2.5v-5.6s13.1 0 17.1 8.4c.2.1-36.8 6.8-72.6 3.7l10.3-5.1c-13-2.7-25.3-5-36.8-14.1 4.4 16.4 26.8 35.6 31.4 35.5l-4.4-8 38.9 1.7c1.4 4.3.8 9.1 4.2 12.9 0 0-2.1 7.1 2.6 10 .2.4 5.7-14.4 5.7-14.4s1.7 4 3.4 6.6c2.5-12.7 16.3-14.8 16.3-14.8l3 6.8c-4.4.7-9.8 9.5-6.9 14.3-2.9 0-8 8.6-6.4 13.2-2.5 2.4-8.5 5.7-7 15.8-4.8 1-7.6 9.8-6.1 19-7.4 6.9-5.6 19.5 1 24.6-2.7 2.5-4.4 4.3-4.4 7.3-2.6-1-5-.1-6.1 1.6-3.2-3.3-7.8-6.2-11-3.1-.9-3.9-6-8.1-11.4-7.6.3-4.1-1.8-9.1-7.7-10.9 0 0-1.1-19.1-7-25.3-.5-3.5.4-5.8 5.2-8.6 4.7-2.6 5.8-4.6 5.4-11.8 1.9-4.8 3.3-9.7-2.5-13 .1 5.7-1.6 8.5-4 11-2.7-.4-3.7 2.8-5.5 4.3-2.7-3.6 5.5-9-.6-16.9-.3-.3-4.2-10.2-13.7-10a13 13 0 016.4 11.7 35 35 0 00-1.5 24.8c-4-6-6.2-17.2-9.5-19.2-2.9-.5-4.3-7.3-15.4-5.4 4.8 1.3 6.3 5 7.6 8.3-3 1.6-1.5 5.6.7 8.3-.4 6.6 3.5 10.4 9.3 12.8l-2.9 26.6c-2.3-.3-5.9 8.8-7.3 9-2.2 1.4-6.2 5.2-1.7 6.3-1.3 4.9-2.6 7.8-9.8 8.8 0 0 7.7 4.6 14-3.2 6.8-.2 4.6-8.3 7.9-11.9 0-.1 1.8-1.3 4.6-8.5 1.2 6.4 7.7 26 22.5 35.7 13 13.8 23.6 26.9 23.5 45.3 5-4.7 8-12.1 10.3-19.2 7-2.4 17-3.3 26-3-1.5 3.3-3.2 6.4-1 8.5-6.3 2.1-7.6 6.6-5.1 11.2-6.6 4.4-7 7.3-7.1 14.7-12.2 15.6-19.7 15.1-31.8 11-4-2.3-10-5.6-12.9-3.8-5.2-3.5-12.7-4-14 3.9 4-3.3 6.3-2.6 9.4.5-.6 1.6-1.1 3.1 1.2 4l-3 3.4c-5.6-.8-13.2-.8-15.1 7.3 2.8-2.3 9.2-3 14.4-.6l2.9 1 .3 3.9s-7.6-1.2-9.7 11.2c7.2-7.6 12.3-5.6 12.3-5.6 2.7 4 12.9 3.4 20.2-3.2 10.2-5.8 13.2 2.5 19.8-3 5.5-4 12-1.3 16.5 3.5 5.1 1.9 10.5 3.5 14.8 0 0 0 5.1-3.3 10.3 2 0-6-4.2-9.2-10-9.3l-1.7-1.7c-5.4-1.2-11.5-.7-16.3-3.4a49 49 0 0111.9-22.8c7.8-8.4 13.6-12.2 23.6-25.2-.4 7.3 5.2 15.4 8.1 22.9 0 0 6-9.5 6.8-17.2.2 0 7.4-3.8 10.5-7 6.6 4 17.2-3.2 24.1-9.3a17 17 0 0012.4 0c-4 8 2.3 15.5 12.3 18.7.9 7.1 8 8.6 19 8.6.4 4.2 7 4.8 7 4.8-4.2 2-6.3 3.8-6.2 8.2-4.2 0-7.4 1-8.5 5.9a34 34 0 00-16.6 3.4 29 29 0 01-16-7.3c-2.1-1.8-2.7-4.4-6.4-5.4-2.4-2.9-5.2-2.2-6.1.5-2.5-2-11.7-2.9-13.3 5.9 4.3-3.2 8.2-4.4 11-.5-1.6 2.7 3.5 4.2 7.9 5.3 3 .2 8.6 3 10.3 7.8a17 17 0 01-14-2.3 9.2 9.2 0 00-11-.6c-3.8-2.4-12.5 2-12.8 9.1 3.6-3.4 7-5 10.3-2.8-1.6.4-1 .5-.8 1.5l8.5 4.9c-4.2 1.1-8.1 2.8-6.3 10.5 0 0 3.4-6.7 11-4.2.2-.2 1 2.4 3.2.7 3.3-3.8 11-5.5 17.5-6.1 5.4-.7 10.7-2.2 15.3.8 4.1-2.1 8.7-3.6 13.4-.2 5.6 1.8 9.6 8.2 16.7 5.3 3.5-2.4 7.8-2.6 12.2 2.4 0-6.2-4.6-8.3-11.2-9.7l-4.6-2.7c-4.2-.7-8.5.1-12.8-1.9a78 78 0 0048.8-35.8l10.5 3.7c2.5.2 2.7 1 7.8 2.6.2-7.6-3-15.4-16.6-16.1l-17.9-6.8c-3.7-4-5.5-12.5-.6-17.5 4.7-4.2 5.5-3.7 8.6-8.8 3.8-.4 7.4 3.5 10.9 3.5 1.7 5 11.2 9.3 17.3 7.8 3.8 3.4 11 5.3 19 2.6 4.5 4 10.4 5.6 17.3 2.5 1.9 1.8 5.7 3.3 10.2 2.4.4 0 2.3 4.9 7.2 6.6-2.2 2-.9 11 1.3 14.3-1.5 3.4-2 7-.7 10.7-4.9 3.1-5.9 5.5-3.7 10.8-6.4 10.4-14.1 11.5-21.4 8.3l-7.8-4.9-8.3-8.1c-1.4-1.4-4.3-1.8-5 1.2 0 0-10.6-2.4-11.5 6.6 4.4-4.3 10.7-.5 10.7-.4 0 .2-1.5 1.2-.3 3 .2-.3 7.8 2.8 14.5 5.6a28.5 28.5 0 00-9.3-2.4c-3.8-.4-7.8-.9-9.6 2-4.1 1.7-10.5 3.1-10.2 10.7 2.7-4.5 6.5-4.3 11.3-4 0 .4-.2.8-.3 1.1 5.2 2.4 4.3-.7 9.1-1.1 4.1-.4 10 1.1 13 2.1-3.9 1.1-9.1.7-11.6 3.4-.4 1-2 .5-1.3 2.7 0 0-7.5-.2-9.5 10.2 7.6-4.9 13.4-4.7 13.5-4.7l2.4.5s9.2-6.2 9.4-6.2c.1 0 8.8-3.8 12.9.6 3.4 1.7 7.2 1.8 10.8-.4 7.2-3 13.8-3.3 20.4 1l6 3.6 2.5-1.7s6.7-1.9 11.6 4c-2-10.3-9.4-10.6-9.4-10.6l-1.7-1.5-10.5-4.1c-1.6-3.8-5.4-6.8-1.6-11.4 4-19.5 8.6-34 1-53.8 7.1 3 12.4 12.5 21.3 9.2 0-8-29.2-23-51.5-35 36.5-2 80.4-28.9 63.5-63.1l8-24.8a34 34 0 0018.2 15.8c-5.6-10.8-8.9-43.6-5.6-66.2a529.6 529.6 0 01-48.2 50.6c8.4 2 15.9.6 24-.4l-6.8 14.3c-22.5-13.2-48.8-3.3-49 14.2.8 20.5 26 23.4 40.6 16.3-2.9 18.6-45.7 11.7-45.7 11.7-15.2-5.2-29.7-4.3-45.6-4.2 3.3-10.2 21.7-19.3 35.8-15.3-19.7-22 2.8-49.4 29.8-57.9-29.5-9.7-4-32.2 18-48.3 0 0-63.5 26.7-69.3 26.6-18-1.3-13.1-22.7-6.3-34.2zM140 139c1.5 0 3.2.2 4.6.5 2.9.7 6.4 1.1 6.3 2-1.3 2.2-4.6 4.9-7.8 4.7-3.2-.1-5-2-6.1-6.9.3-.2 1.5-.3 3-.3zm267.5 75.4c4.1 0 9.1 1.7 14 6.9-2.4 6.7-22.7 10.2-24 .2-.4-3 3.9-7 10-7z"/>
+    <path fill="none" stroke-linejoin="round" d="M161 197.9l3 4.5m0 .1s0 6 1.2 6.2m-2.8 3.2l3.2 5.3m-8.8 1.4l4 4.4m3.2-3.4c0 .2 3.6 6.9 3.9 6.9m-8.6-2.3s1.3 8.2 2.4 7.9m-7.7 7l3.6 5.5m3.1-11.2s2 7.7 3.5 7m1.6-11.7c.1.2 3.6 5.2 4.6 4.5m-.8 2l3.3 6.7m-9-1.5c.2.2 2.8 8 2.8 8m-9.2-4s2.5 8.6 4.8 7.2m-5.8 4.2s.2 4.5 2.4 4.7m1.5-7c0 .2 2.3 3.3 2.3 3.3m4.1-8.6l1.9 3m4-8.4l2.9 3.5m-15.8-43.7c.1 3.8 6.1-1.4 8.5-4.6m-11 17.7s6.5-4.6 11.6-11.6M155 226.8c4.6-1.3 13.1-11.6 14.8-17M154.1 237c1.3.6 17.2-10.9 17.6-19.3m-18 28.1c0-.1 14.5-3.7 20.6-19.7M152.9 258s23.2-13.9 24.5-24.1M334 281.3s-1.5 12-13.5 13.8m17.3 7.6c.2-.1 11.5-12.6 8.6-16.4m17.8 4.4s-.2 8.7-7.3 14.7m21.4-12.2s.3 10.5-4.2 14.7m17.2-8.4s-5 9.8-6.8 10.8m6.6 6.6s6.6 1.7 8.7-2.7m-7 17s6.2 1.1 9-4.8m-9.6 15.8s5 4.2 8.3-1.3m-79.3-79.6s-.6 21.3 29.4 25.6c33.5 9.3 49.3 4.4 51.3 41.9-1.3 14.3-3 30.4-13.4 24.3m-99.1-72.2s4.7 8.5 10.5 8c7.5-2.3 10.3 2.4 10.3 2.4m-41.3-1.9s12.6 6.2 23.4-3.8m-22-5c1.1 14.7-17 23.1-24.1 21.7m25 34.7c.1 0 9.8-5.8 7.8-9.9m-27 1.3c.2-.3 16.2-1.8 19.1-7.6m-26.6-16c0-.1 22.7.1 24.2 4.3m6-17.7s-22.2 37.8 18.7 37.8m-42.2-38.4s-4.7 14.2-11.5 19m-12-23.9s8.2 16 0 23.8m-21.4-19.3c.1.3 2.6 22.6-3 28.9m-7.7-28.2s.9 14.2-3.3 19.2 1 15.5 1 15.5m-51.1 6.8s3 5.3 7.2 3.5m-2.1-15s6.7 3 9 1.8m-1.7-25.6s-10 2.8-6.2 14.5c5.7 4.7 11.4 4 11.4 4M135 347.3c-.2 0 1 9.2 7.5 2.2 4.5-9.4 18.7-35.8 21.9-45m6.6-4.3s-6.9-5.3-6.6 2.1c-.2 4.6 2 5.8 2 5.8.4 3.3 3.3 8 5.7 3.7 1-4.1-.7-6-.7-6m4-7.5c-6.3-.5-9.6 13.1 2.3 4.6m4-9.3s-1.5 2.1-3.9-.1c-1.2-2.2-5.7 10 2.1 10.5 1.4-3.6 5.8-4.6 5.8-4.6m3.6-11.6s-3.5 1.6-4.7 1.4c-4.2 1-3.4 10.7 2 10.2 1.7-2.1 3.7-5 3.7-5m-34-19.5c-.2 0-14 21.7 7.7 27.4m167-60s-8.4 7.2-.6 18.7c-26-.4-40 11.6-41.2 19.7-33.2-2.3-27.2 7.5-38 10.7-14.4-12-35.6-5.3-34.2 6.7-9.6-13.6-24.5-7-26.3-3.6-1.8 3.3-1.1-16.7-1.1-16.7s-9.7 4.3-16.4 12.3v-16.8c-8 1.6-15.9 1.7-24.2 1.6m-21.9-6.2s12 6.7 27-2.4m-28-21.9s9.4 8.5 27 5.8M132 225s2.1 6.9 22.3 7.3m-15.5-23.2s7.6 9.3 17.9 8m-11.4-21.3s3 5.1 14.2 6m-7.6-20.7s5.9 6.5 12.6 5.4m22.4-57.7s2.6-2.6 7-1.3m-8.9 15s-8-.3-7.5-3.5c.6-3.6 8.5-6.2 8.5-6.2s10.6-6.8 12.2-9.1m-47.8 37l10.3 19.7 5-7.4 2.5 5.1 4.2-7.4 7.3 4.7-2.8-9 6.1-.4s-1.6-4.4-7.1-5.3a153 153 0 016.5-4.4s-2.9-3.4-7.4-3.5c1.5-1.6 3.5-5.5 3.4-5.5l-4.5-1s10.3 3.3 18.2-1.3m-19.7-16c.2.2-.5 4.1-2.7 6.4m-37 4.5s6.4-1.7 11.2-.8c4.7 1 11 2.7 11 2.7s7.6-1 10-2.8m-47.9 5.1s-.9 3-1.2 5c0 1.5-4.6 3.4-4.6 3.4M120 138s4 5 4.2 8c.1 2.9-3 5-3 5m-43 21.6l-4.2-6.8 3.7-1.3m76.3 102c-3.4-4.4 2.5-71 15-88.5-4.4 31.4 10 63.5 13.7 63.4m-66.6-82s5.6 2.2 17.4-7.1m16 22.5l8.4.1m253.4-52.4s-140.7 65.8-142.7 69.2c23.7-7.1 124.4-24 126.9-22.5-6 1.5-128.2 29.5-133.9 36.3 30.5-1 94.4 9.8 104.4 20.2-21.7-4.9-86.6-14.5-106.4-10.2 14.5 3.5 70.2 39.5 70.2 45.3-8.4-8-75.4-35.7-78-33 15.3 9.2 37 43.4 37 51.8-4.5-7.2-43.2-48.8-45.4-46 4 5.6 12.2 54.7 8 57 0-6-15-48.9-16.2-50.1-3 .8-22.2 52.4-18.4 57.2-2.5-17.2.4-53.1 5-51.7-8.3 1.2-35.1 36.5-32.2 42 .8-8.7 2-14.6 17.1-43.8-16.8 1-51.6 22.9-57.5 30.7 4.7-14 34.2-37.5 47-39.1m60.8-51.3c14.9-8.2 60.8-25 91.5-37.4M228 228.9s10-.1 20.2-27.6c10-37.7 89.2-79.6 90.8-87.5m-245 153s-2.4 5-5.3 6.4m16.6 1.2s-3.2 6-3.9 9m14.7-6s2.7 8.3.5 12.2M86 255.7c-8 4.5 4.5 32.9 42.3 35.6m-6-15.3s-1.1 5 6 15.2c-2 11.3 8.6 20.1 12.8 21.6m-22-138.6l1.2-3 1.3 3.3h2l1.4-3.4 1.2 3.4h2l1.3-3.8 2 3.6h1.6l1.3-4.3 2.6 3.1 1-.4.8-4.3 2.6 3 .8-.4 1.2-4.2 2.2 3.1 1-.3 1-3.6 2.1 3.3m-32.9 5.3l15.8-.3c5 0 13.3-7 22.6-4.8m-71.7 38.9s2.6 5.6 6.3 2.4m-12.3 1.3s-5.1 13.7 1 16.8m-8.3-31.8s0 3.2 6.7-1.8m-27.4 73.3s5.4 1.6 4.5 5.7M51.5 206s3.4 1.7 6.6-3.3m28.8 160c5.2-.3 6.3 2 11 2 5.5.2 10.8-2 17.8-3.9m44.7 12.6c-.1 0-2.5 5-.4 7.4m-73.9-7s8.3-6.7 12.6-2.5c4.2 1.4 6.5 1.1 6.5 1.1m-14.7-18s2 5.3-4.8 4.6m-2 7.5s4.3 2.7-.6 6.3m3.2 5s6 .8 2.5 5.6M278 341.7s16.1 1.7 16.9 2.9c1.8-2 16.2-13.6-1.5-15.3a16.1 16.1 0 01-15.4 12.4zm-5.7 8c6 4.9 3.5 7.8 22.4-5m-31 11s8.9 9.6 15.3-2m-32.3 5.5l-12 6.3m-21.7 8.9s7.3-6.3 10.7-3c3.5 3.4 18-2.8 18-2.8M218.5 347s2.5 5-2.4 5.6m-7.2 10s2.6 4.7-2.4 6m8 6.8s7.7.4 5 6.1m66.1-7.1s-4.2 3.5-1 7.5m61.5-32.8s4.8 2.3-1 6.3m-4.7 8.3s3.6 3.8 1.2 7m8.9 7.6s5 1.4 4.4 5.5m65.6-9.2s-4.2 3-2 7M346.4 253c10-1.2 24.3 21 31.6 25.4m43.8-56.9s5 4.4.6 15.1m8.8-32.1c1.4 1.1 6.9 4 10.5 10.7m3.4-44l-7 19m14.9-20s-1.4 17-3.4 20.4m-28 30.7c-2.3 6.8-22.7 10.2-24 .2-.7-5 12-13 24-.2z"/>
+    <path stroke-linejoin="round" d="M139.8 139l7.9 1.4s-5.5 7.4-7.9-1.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb.svg
new file mode 100644
index 0000000..ef048dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gb.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb" viewBox="0 0 512 512">
+  <path fill="#012169" d="M0 0h512v512H0z"/>
+  <path fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+  <path fill="#C8102E" d="M184 324l11 34L42 512H0v-3l184-185zm124-12l54 8 150 147v45L308 312zM512 0L320 196l-4-44L466 0h46zM0 1l193 189-59-8L0 49V1z"/>
+  <path fill="#FFF" d="M176 0v512h160V0H176zM0 176v160h512V176H0z"/>
+  <path fill="#C8102E" d="M0 208v96h512v-96H0zM208 0v512h96V0h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gd.svg
new file mode 100644
index 0000000..cca37ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gd.svg
@@ -0,0 +1,27 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gd" viewBox="0 0 512 512">
+  <defs>
+    <g id="c">
+      <g id="b">
+        <path id="a" fill="#fcd116" d="M0-1v1h.5" transform="rotate(18 0 -1)"/>
+        <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+      <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+      <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+      <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+    </g>
+  </defs>
+  <path fill="#ce1126" d="M0 0h512v512H0z"/>
+  <path fill="#007a5e" d="M71.7 71.7h368.6v368.6H71.7z"/>
+  <path fill="#fcd116" d="M71.7 71.7h368.6L71.7 440.4h368.6z"/>
+  <circle cx="255.9" cy="256.1" r="61.4" fill="#ce1126"/>
+  <use width="100%" height="100%" transform="translate(256 256) scale(56.32)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="-100" transform="translate(-16.4 -.1)" xlink:href="#d"/>
+  <use id="d" width="100%" height="100%" transform="translate(256 35.9) scale(33.28)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="100" transform="translate(16.4)" xlink:href="#d"/>
+  <path fill="#ce1126" d="M99.8 256.8c7.7 14.3 22.6 29.8 35.7 35.3.2-14.5-5-33.2-12-48l-23.7 12.7z"/>
+  <path fill="#fcd116" d="M86.8 207.6c11.1 23.3-29 78.7 37.8 91.7a67.5 67.5 0 01-11.5-44.7 75.5 75.5 0 0134.6 32.8c17.5-63.4-44.8-59.5-61-79.8z"/>
+  <use width="100%" height="100%" x="-100" transform="translate(-16.4 442)" xlink:href="#d"/>
+  <use width="100%" height="100%" transform="translate(256 478) scale(33.28)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="100" transform="translate(16.4 442.2)" xlink:href="#d"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ge.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ge.svg
new file mode 100644
index 0000000..ac1d87b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ge.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ge" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="red" d="M205 0h102v512H205z"/>
+  <path fill="red" d="M0 205h512v102H0z"/>
+  <path fill="red" fill-rule="evenodd" d="M114.1 397.9c1.1-18 4.3-33.4 4.3-33.4s-10.6 1-15.9 1c-5.3 0-15.9-1-15.9-1s3.2 15.3 4.3 33.4c-18-1.1-33.4-4.3-33.4-4.3s1 8 1 15.9-1 15.9-1 15.9 15.3-3.2 33.4-4.3c-1.1 18-4.3 33.4-4.3 33.4s8-1 15.9-1c8 0 15.9 1 15.9 1s-3.2-15.3-4.3-33.4c18 1.1 33.4 4.3 33.4 4.3s-1-10.6-1-15.9c0-5.3 1-15.9 1-15.9s-15.3 3.2-33.4 4.3zm307-307c1.1-18 4.3-33.4 4.3-33.4s-10.6 1-15.9 1c-5.3 0-15.9-1-15.9-1s3.2 15.4 4.3 33.4c-18-1.1-33.4-4.3-33.4-4.3s1 8 1 15.9c0 8-1 15.9-1 15.9s15.3-3.2 33.4-4.3c-1.1 18-4.3 33.4-4.3 33.4s8-1 15.9-1 15.9 1 15.9 1-3.2-15.3-4.3-33.4c18 1.1 33.4 4.3 33.4 4.3s-1-10.6-1-15.9c0-5.2 1-15.9 1-15.9s-15.4 3.2-33.4 4.3zm-307 0c1.1-18 4.3-33.4 4.3-33.4s-10.6 1-15.9 1c-5.3 0-15.9-1-15.9-1s3.2 15.4 4.3 33.4c-18-1.1-33.4-4.3-33.4-4.3s1 8 1 15.9c0 8-1 15.9-1 15.9s15.3-3.2 33.4-4.3c-1.1 18-4.3 33.4-4.3 33.4s8-1 15.9-1c8 0 15.9 1 15.9 1s-3.2-15.3-4.3-33.4c18 1.1 33.4 4.3 33.4 4.3s-1-10.6-1-15.9c0-5.2 1-15.9 1-15.9s-15.3 3.2-33.4 4.3zm307 307c1.1-18 4.3-33.4 4.3-33.4s-10.6 1-15.9 1c-5.3 0-15.9-1-15.9-1s3.2 15.3 4.3 33.4c-18-1.1-33.4-4.3-33.4-4.3s1 8 1 15.9-1 15.9-1 15.9 15.3-3.2 33.4-4.3c-1.1 18-4.3 33.4-4.3 33.4s8-1 15.9-1 15.9 1 15.9 1-3.2-15.3-4.3-33.4c18 1.1 33.4 4.3 33.4 4.3s-1-10.6-1-15.9c0-5.3 1-15.9 1-15.9s-15.4 3.2-33.4 4.3z" style="mix-blend-mode:multiply"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gf.svg
new file mode 100644
index 0000000..c00a576
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gf" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gg.svg
new file mode 100644
index 0000000..2d06a9f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gg.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gg" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#e8112d" d="M192 0h128v512H192z"/>
+  <path fill="#e8112d" d="M0 187.7h512v136.6H0z"/>
+  <path id="a" fill="#f9dd16" d="M46 305.8l23.3-25h210v-49.7h-210L46 206.2z"/>
+  <use width="36" height="24" transform="matrix(0 1.06667 -.9375 0 496 -17)" xlink:href="#a"/>
+  <use width="36" height="24" transform="matrix(0 -1.06667 .9375 0 16 529)" xlink:href="#a"/>
+  <use width="36" height="24" transform="rotate(180 256 256)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gh.svg
new file mode 100644
index 0000000..4b6446d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gh.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gh" viewBox="0 0 512 512">
+  <path fill="#006b3f" d="M0 0h512v512H0z"/>
+  <path fill="#fcd116" d="M0 0h512v341.3H0z"/>
+  <path fill="#ce1126" d="M0 0h512v170.7H0z"/>
+  <path d="M256 170.7l55.5 170.6L166.3 236h179.4L200.6 341.3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gi.svg
new file mode 100644
index 0000000..39f5b27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gi.svg
@@ -0,0 +1,32 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gi" viewBox="0 0 512 512">
+  <path fill="#da000c" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v343H0z"/>
+  <g stroke="#000" transform="matrix(2 0 0 2 -256 0)">
+    <g id="a" fill="#da000c" stroke-linecap="square">
+      <path fill="#000" stroke="none" d="M196.6 116.3h64v44h-64z"/>
+      <path d="M229.8 153.9h-39l-8.7 5.7v6h47.7m-16.3-37c5.6 0 10.2 4.7 10.2 10.5v14.7h7.3v-56h-40.3v56h12.6v-14.7c0-5.6 4.5-10.5 10.2-10.5z"/>
+      <path fill="#000" stroke="none" d="M204.5 60h18.6v34h-18.6z"/>
+      <path d="M223 88.7h-16.2v-5.8h-11.9v5.8h-8v-5.8H182v10.4h41m-36.2 0h35v4.5h-35zm14-45.7V83h6v-9.7c0-3.6 2.5-6.6 6.1-6.8h.4a6.8 6.8 0 016.8 6.8V83h5.7V47.6zm-2.3-4.8v4.8h29.3v-4.8zm-3.7-9.1v9.1h35v-9.1h-5.3v4.7h-6.6v-4.7h-10v4.7h-6.5v-4.7zM182 159.6h48m31-2.8h-32.4l-9.8 4.7v7H261"/>
+      <path stroke-linecap="butt" d="M218.8 161.5H262"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 512 0)" xlink:href="#a"/>
+    <g fill="#f8d80e">
+      <g stroke-linecap="round">
+        <path stroke-width=".8" d="M273.3 150c-2.7 1-5 2.4-7.5 3.8a72.4 72.4 0 00-8.9 6c-1 .7-2 1.4-2.7 2.4-1 .8-2 2-1.8 3.5 0 .6.8-.8 1.4-.9a4.4 4.4 0 013.1-.4c1.3-1.4 3-2.3 4.4-3.4a77.4 77.4 0 0113-7.6l-1-3.4z"/>
+        <path d="M260.4 157.4v3.9m2.4-5.6v3.9m2.4-5.4v3.8m2.5-5.3v4"/>
+        <path stroke-width=".8" d="M238.9 150.2l-1.2 3.3a86.6 86.6 0 0115.8 8c1.7 1.2 3.5 2.3 4.8 3.9.3.8-.5 1.5-1.3 1.2-.7-.2-1.5-.5-2.2 0-1.1.5-2.1 2.2-.5 2.7 2.4 1.6 6.1.9 7.2-1.8.6-1.4.7-3.2-.5-4.4-2-2.3-4.8-4-7.4-5.7a89.2 89.2 0 00-14.7-7.2z"/>
+        <path d="M254 158l-.3 3.4m3.1-1.7l-.8 3.3m3.8-1l-1.8 2.6m2.7 3.6l-2.6-1.4m3.4-1.4l-3 .3m-.8 4l-.2-2.6m-1-.3l-2.4 1.8m-9.4-15.7v3.1m6.3.3v3.5m-3.2-5.2v3.3"/>
+      </g>
+      <path d="M235.8 227.6v8h5v-4h6.9v4h5.4v-8zm0 11v8H253v-8h-5.4v4h-6.9v-4z"/>
+      <path d="M253 193.7h5v58h-5z"/>
+      <path d="M253 198.7h5v50h-5zm2.6-19.3l10.6 6.2-10.6 6.2-10.7-6.2zm-14.3 4h-2.7v4.4h2.7l14.3 8.3 14.2-8.3h2.8v-4.4h-2.8l-14.2-8.3z"/>
+      <path d="M255.3 164.3a5 5 0 00-4 5.1v11.2a5 5 0 004.6 4.6 4.9 4.9 0 004.8-2.8l-1.7-1a2.9 2.9 0 01-3 1.8c-1.6 0-2.9-1.6-2.7-3.1v-11.2a2.9 2.9 0 013-2.6c.6-.2 1.5.7 1.9 0 .6-.9-.4-1.5-1-2h-1.9zm5.8 3.9a5 5 0 01-1.9 1.6v7.5l2 1.1v-10.2z"/>
+    </g>
+    <g fill="#da000c">
+      <path fill="#000" stroke="none" d="M240.8 38.4h29.3v53.2h-29.3z"/>
+      <path d="M238.8 38.4v44.5h9.3V69.7c0-3 2-7.3 7.9-7.3s8 4.3 8 7.3V83h9.2V38.4zm15.8 5h2.8v15.2h-2.8zm-8.3 3h3v11.1h-3zm16.5 0h2.9v11.1h-3zM235.6 32v6.3h40.8V32zm-3.8-7.4V32h48.5v-7.4h-6.1v4h-7v-4h-7.8v4h-6.8v-4h-7.9v4H238v-4zm-9 73.2v4.6h66.5v-4.6z"/>
+      <path d="M220 82.9v15h72v-15h-6.8v5.8H276v-5.8h-12.2v5.8H248v-5.8h-12.2v5.8h-9v-5.8z"/>
+      <path stroke-linejoin="round" d="M228.7 102.4v54.4h12.8v-20.4c0-9.5 6.4-14 14.5-14 7.8 0 14.5 4.5 14.5 14v20.4h12.8v-54.4z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gl.svg
new file mode 100644
index 0000000..7a026d9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gl.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gl" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#d00c33" d="M0 256h512v256H0zm53.3 0a170.7 170.7 0 10341.4 0 170.7 170.7 0 00-341.4 0"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gm.svg
new file mode 100644
index 0000000..b06ab6c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gm.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gm" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="red" d="M0 0h512v170.7H0z"/>
+    <path fill="#fff" d="M0 170.7h512V199H0z"/>
+    <path fill="#009" d="M0 199.1h512V313H0z"/>
+    <path fill="#fff" d="M0 312.9h512v28.4H0z"/>
+    <path fill="#090" d="M0 341.3h512V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gn.svg
new file mode 100644
index 0000000..8f8855d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gn.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gn" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="red" d="M0 0h170.7v512H0z"/>
+    <path fill="#ff0" d="M170.7 0h170.6v512H170.7z"/>
+    <path fill="#090" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gp.svg
new file mode 100644
index 0000000..0a5bdb0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gp.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gp" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gq.svg
new file mode 100644
index 0000000..8149406
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gq.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gq" viewBox="0 0 512 512">
+  <path fill="#e32118" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v341.3H0z"/>
+  <path fill="#3e9a00" d="M0 0h512v170.7H0z"/>
+  <path fill="#0073ce" d="M0 0v512l160-256z"/>
+  <g stroke="#000">
+    <path fill="#fff" d="M215 204.5h81.7v85.6c0 28.8-37.5 6.6-40.7 22-5.6-15.8-40.8 7-40.8-23.7l-.2-83.9z"/>
+    <path fill="#73452b" stroke-width=".2" d="M261.7 298.4s-1 1.1-3 .3c-1.9-.9-2.1-54.9-2.1-54.9 4.3-4.7 7.7-6.1 7.7-6.1l2.5 2c-9.6 5-8.7 12-7.9 24.2.3 4.5.3 10.2 1.3 15.8 1.5 7 4.5 13 4.7 17.5.2 2.8-3.2 1.3-3.2 1.3z"/>
+    <path fill="#73452b" stroke-width=".2" d="M255.1 236.4h3.9c-3.3 31-.5 49.3-.5 58.2 0 3 1.7 4 1.5 4-3.8 4.3-5.8-.2-5.8-.2z"/>
+    <path fill="#a36629" stroke-width=".2" d="M249.1 298.4c-3.6 1.8-4-1.6-3.8-2 7.9-16 11.3-51.3 4-55.1l.5-3.4c2.7.8 5.3 4.4 5.3 4.4 1 39.5 0 55.7-.6 56.4-3.9 4-5.4-.7-5.6-1.1"/>
+    <path fill="none" stroke-width=".2" d="M249 297.8c-.7-3.4 5.5-12.2 5-21.3m5.4 7.5c1.9 5.3 2.8 10 2.3 14.5"/>
+    <path fill="#009a3b" stroke-width=".2" d="M267.7 221.9c1.3-1.5 1.3-1.5 3.6-1.5.4-3.2 5.8-3.2 6.2.8 4.3-.8 5.1 1.7 3.4 4.3 4-1 7.7 0 6.6 4.7 7.3 2 4.5 7 1.3 8-.4 3.3-3.4 4.4-7.5 3-5 3.7-8 2.4-10.4-1.2-5.8.8-6.2-.4-8.7-3.6-4.5 1.9-5.4 1.9-9.2-.5-.2 3-1.3 2.2-3.2 2 .2 3.8-1.3 5.5-4.7 4.2 2.5 5.4-4 7.7-7.3 3.2-3 .2-3.2-.6-4.7-1.7-1.2 4.3-6 3.7-6.8 1.3-6-.9-5.3-4-.4-4.3.4-3.4 3.4-2.7 5.3-2.3.2-2.1 1.5-1.7 2.6-1.3-.7-1.5-.2-2.3 1.7-2.8-2.8-3.6-1-4.9 1.7-6.2-1.5-3.4 1-3.2 3-3.4-.2-3.6.8-4.2 4.7-4.7-.5-1.2.2-2.3 2.3-2.3-1.3-3.6.4-4.5 4.3-3.8.6-5.3 12-2.8 11 4.4 3.3.5 4.3 1.1 5.2 3.7z"/>
+    <path fill="none" stroke-width=".2" d="M244.9 220c.8.4 1.9 0 2.1 2.3 1.7-3 3.8-1.3 3.8 2.1m11.8-6.2c-.9 1.3-4 1.3-3.7 4.7-1-1.5-3.1-1.9-4-.4m12.8-.6c0 .8-.2 3.4-1 4.7m14.2-1.1c.2.2-3 0-4.5 1m12.4 11.8c-.8-.4-2.6-1.5-3.8.2 0-.9 0-3.2-2.4-3.2m-1.2 6c0-2.2-.5-2.8-1-3.4m-6 .4c-1.8-1.3-3.5.6-3.5 1.7m-9-3.6c0-.9-.6-2.6.9-3.2m-25.2 12.1c.4-2.1 2-2.1 1.7-3.2-.2-1.7-2.1-3.2-4.5-.8m4.5.8c1.3-.4 2.6-.2 3 .5m-6.6-8.4c.9-.8 3-.6 4.3 0m0-5c1 0 3-.5 3.6 1.4 2.3-3.6 4-3.2 4.5-2.3m4.2-.5c1.7-.6 4.7 1.1 6.4 4 .9-2.2 2.2-1.8 3.5-2m8 2c2.8-1.2 4.5 1.4 5.4 2.4 1.3-1.7 2.3-1.7 3.6-1.7m-34.8 4.5c.7-1 2.2-1.3 3.2-.6-.2-2 1.1-2.8 2-2.4"/>
+    <path fill="gold" stroke-width=".8" d="M253.2 192.6l-4.7.2-2.3 4.2-2.6-4-4.7.2 2.1-4.3-2.5-4 4.9-.2 2.1-4.2 2.6 4 4.7-.2-2.2 4.2zm-20 1.5l-4.8 1.2-1.2 4.5-3.4-3.4-4.5 1.1 1.2-4.5-3.1-3.5 4.4-1.1 1.3-4.6 3.4 3.4 4.7-1-1.5 4.5zm-19.5 4l-4.2 2.1-.3 4.8-4-2.6-4.3 2 .4-4.7-4-2.6 4.3-2.2.4-4.7 3.8 2.6 4.3-2-.2 4.7zm45.7-5.5l4.7.2 2.1 4.2 2.6-4 4.7.2-2.2-4.3 2.6-4-4.7-.2-2.4-4.2-2.5 4-4.7-.2 2.1 4.2zm20 1.5l4.5 1.2 1.3 4.5 3.4-3.4 4.5 1.1-1.3-4.5 3.4-3.5-4.7-1.1-1.3-4.6-3.4 3.4-4.4-1 1.2 4.5zm19.2 4l4.3 2.1.2 4.8 4-2.6 4.3 2-.2-4.7 3.8-2.6-4.2-2.2-.2-4.7-4 2.6-4.4-2 .5 4.7z"/>
+    <g fill="#fff" stroke-width=".8">
+      <path d="M304.4 288.4l5.3 7.7 5-7.3-3.5-6.1zm-34 22.4l.5 7.7s2.1 0 4-.6c1.8-.7 3.3-2 3.3-2l-.3-4zm-28.5 0l-.5 7.5s-1.9 0-3.8-.4a11 11 0 01-3.2-1.5l-2.1-5.2zm-34.4-22.4l-5.5 7.7-6-9.8 4.5-4.7z"/>
+      <path d="M234.2 326.2c0 7.2 44 7.2 44 0V316c0 5.3-44 4.2-44 0z"/>
+      <path d="M195 302.5c3.8 19.6 39.2 20 39.2 20V316c-.8-2.6.6-3.5 6.4-4.3 2.4-.2 1.3-3.6 1.3-3.6s-15.4 2.7-26.3-1.5c-14.7-6-16.8-17.5-16.8-17.5s-1 9-3.9 13.4zm122.2 0c-3.6 19.6-39 20-39 20V316c.6-2.6-1-3.5-6.7-4.3-2.3-.2-1-3.6-1-3.6s15.3 2.7 26.2-1.5c14.5-6 16.2-17.5 16.2-17.5s1.5 9 4.3 13.4z"/>
+      <path d="M197.7 295c-9.8-5.3-2.1-10.8-1.3-26.6 1.5 9.6 12.4 13.6 11.1 19.8-4.5.2-6.6-6.6-8.7.9l-1 6zm116.7 0c9.8-5.5 1.7-10.8.9-26.6-1.5 9.6-12.2 13.6-11 19.8 4.4.2 6.5-6.6 8.6.9l1.5 5.7z"/>
+    </g>
+    <path stroke="none" d="M203.7 302.3l1 .8-2.3 2.6c-1 1-1.2 1.7-.5 2.3.8.8 1.4.5 2.2-.4l2.6-2.7.8.8-2.5 3c-1.4 1.6-2.7 1.2-3.8.2-1-.8-1.5-2.1 0-3.7l2.5-2.9zm4.3 3.6l1 .7-.2 5 2.4-3.6 1 .7-3.4 5.5-1.3-.6.2-5.1-2.3 3.6-1-.6zm1.9 9l3-6 1 .6-2.7 5.8zm4.7-5.1l-2.4 6.1 2.4.9c2.2.8 3.2-.2 3.9-2 .7-2 .4-3.3-1.8-4.2l-2.1-.8zm.8 1.5c2.2.7 2.4 1.6 1.8 3-.6 1.5-1.2 2-3.3 1l1.5-4zm6.2.8l-3.8 5.8 1.5.4.8-1.5 2.6.6.2 1.5 1.5.2-1.5-6.8-1.3-.2zm.4 1.5l.5 2.6-1.7-.2 1.2-2.4zm3.3-1l-.3 6.7h2.5c2.4 0 3-1.2 3.1-3.2 0-2-.7-3.2-3-3.3l-2.3-.1zm1.2 1.2c2.4 0 2.8.8 2.7 2.4 0 1.6-.4 2.3-2.8 2l.1-4.4zm21.1 8.1v6.8h1.5v-2.5s1.3 0 2.4-.2c.8-.2 1.4-.8 1.4-2.1s-.7-2-2-2h-3.3zm1.5 1l1.5.1c1.3 0 1 1.9 0 1.9h-1.5v-2zm6.2-1l-2.8 6.8h1.5l.7-1.7h2.8l.6 1.7h1.5l-2.8-6.8h-1.5zm.7 1.5l1 2.6h-1.9l.9-2.6zm3.6 4l3.6-4.4H260v-1h5.1v1l-3.8 4.5h3.8v1.3h-5.5zm21.5-13.2l1.3-.2.6 3.9c.3 1.3-.4 2.3-1.3 2.6-1.1.4-2.5 0-2.7-1.8l1-.2c.3 1.1.8 1.2 1.3 1 .4-.1.6-.8.5-1.4zm2.2-.3l1.2-.3.6 3.2c.3 1.4.7 2 1.6 1.8 1-.2 1.2-.8 1-2l-.8-3.4 1.3-.2.8 3.5c.5 2-.5 3-2 3.2-1.3.2-2.6-.1-3-2.1zm6.6 2.9l1-.4c.6 1 1.4.9 2 .6.9-.4 1-1.2.6-1.4-.7-.4-2.1.1-3-.2-.9-.3-1.3-.9-1.3-1.7.1-1 1-1.5 2-1.8 1-.3 2-.2 2.7 1l-1.2.5c-.5-.7-1-.7-1.5-.5-.4.2-1 .6-.7 1.2.3.4 1.9.1 2.7.1.9 0 1.6.7 1.7 1.5.1 1.1-.3 1.7-1.6 2.3-1.7.6-3.1-.1-3.4-1.2zm5.7-5.3l-1.7.8-.4-1 4.7-2 .4.9-1.7.8 2 4.7-1.1.7zm2.8-2.4l1-.6 3 5.5-1 .7zm7.3.4l1.2-.4a2.6 2.6 0 01-2.5 3.5c-3.2 0-3.6-3.6-3-4.8.8-2 3.2-1.9 4.3-.8l-1.1.8c-.7-.8-2.2-.3-2.3.5a3 3 0 001.6 3.1c1 .5 2.5-.7 1.8-1.9zm-.7-4.4l1-.9 4 5.1-1.1.9zm4-3.2l-1 .8 2.4 6.4 1-1-.6-1.3 1.9-1.7 1.3.6 1-.8-6-3zm.5 1.5l2.1 1-1.2 1.3-.9-2.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gr.svg
new file mode 100644
index 0000000..4bc68fc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gr.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gr" viewBox="0 0 512 512">
+  <path fill="#005bae" fill-rule="evenodd" stroke-width=".8" d="M0 0h512v57H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M0 57h512v57H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width=".8" d="M0 114h512v57H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M0 171h512v57H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width=".8" d="M0 228h512v56.9H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M0 284.9h512v57H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width=".8" d="M0 341.9h512v57H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M0 398.9h512v57H0z"/>
+  <path fill="#005bae" stroke-width="3" d="M0 0h284.9v284.9H0z"/>
+  <g fill="#fff" fill-rule="evenodd" stroke-width="1.3">
+    <path d="M148 0h74v370h-74z" transform="scale(.77)"/>
+    <path d="M0 148h370v74H0z" transform="scale(.77)"/>
+  </g>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width=".8" d="M0 455h512v57H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gs.svg
new file mode 100644
index 0000000..48f68b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gs.svg
@@ -0,0 +1,206 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gs" viewBox="0 0 512 512">
+  <defs>
+    <linearGradient id="b">
+      <stop offset="0" stop-color="#d5dfff"/>
+      <stop offset="1" stop-color="#fff"/>
+    </linearGradient>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#474747"/>
+      <stop offset="1" stop-color="#f50"/>
+    </linearGradient>
+    <linearGradient id="d" x1="109.3" x2="110.9" y1="218.5" y2="173.4" gradientTransform="matrix(1.51 0 0 .652 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="e" x1="125.9" x2="126" y1="316.4" y2="337.2" gradientTransform="matrix(1.232 0 0 .8 40.5 0)" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#b50000"/>
+      <stop offset="1" stop-color="#ffc500"/>
+    </linearGradient>
+    <linearGradient id="f" x1="407.9" x2="456.4" y1="149.4" y2="147.3" gradientTransform="matrix(.56 0 0 1.76 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="g" x1="215.8" x2="229" y1="103" y2="103" gradientTransform="matrix(.74 0 0 1.33 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="h" x1="117.6" x2="78.2" y1="1040.4" y2="1003.7" gradientTransform="matrix(2.563 0 0 .384 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="i" x1="264.7" x2="255" y1="246" y2="226.4" gradientTransform="matrix(.886 0 0 1.11 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <clipPath id="c">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#c)">
+    <g stroke-width="1pt">
+      <path fill="#006" d="M0 0h1024v512H0z"/>
+      <path fill="#fff" d="M0 0v28.6L454.8 256H512v-28.6L57.2 0H0zm512 0v28.6L57.2 256H0v-28.6L454.8 0H512z"/>
+      <path fill="#fff" d="M213.3 0v256h85.4V0h-85.4zM0 85.3v85.4h512V85.3H0z"/>
+      <path fill="#c00" d="M0 102.4v51.2h512v-51.2H0zM230.4 0v256h51.2V0h-51.2zM0 256l170.7-85.3h38.1L38.2 256H0zM0 0l170.7 85.3h-38.2L0 19.1V0zm303.2 85.3L473.8 0H512L341.3 85.3h-38.1zM512 256l-170.7-85.3h38.2L512 236.9V256z"/>
+    </g>
+    <path fill="#6a4c2d" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M333.8 380s-3 7.5-4.6 7.5c-1.6 0-7.6-3.2-7.6-3.2s-4.3 7-6.6 7.4c-2.2.4-8.2-1-8.2-1s-5.8 0-6-.9c-.2-.8.3-2.4.3-2.4s-8.3 6.5-10.1 6.1c-1.9-.4-8-8.2-8-8.2l-1 4.1-11.8-.4-10.3-6.6s-5.7 9.5-6 9.3c-.1-.2-10 2.2-10 2.2l-.6-1.8-6.6-4s5.1-7.1 5.1-7.3c0-.2-2.4-1-2.4-1l-3.7 3-7.6 5-7.7-3.5 3.3-6.2.4-4.5 6-9 73-71 36 66.4-5.3 20z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M385.6 384.3l19-.7-8-4 72.3-2.8-10.2-3.9-9-12.2-37.6-2.9s-2.8-2.1-7.4-1c-.2-3-3.7-6.8-3.7-6.8l-23-1.7-14.5 9.8 9.7 25 12.4 1.1z"/>
+    <path fill="url(#d)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M121.3 150.8l2.2-7.6s4-6.6 4-9.4c0-3 2.8-6.4 2.8-6.4s9-2.6 10.8 2.9c9.6-14.5 20.8-.7 20.8-.7l3.1-3.6 6.4-7.8s9 8.4 9 9.9 1.6.4 1.6.4l9.8-.8s4.7 3.7 3.7 10.6c3.4 2 6.6 14 6.6 14l-80.8-1.5z" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="#656263" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M385.5 248.7c1.4-.9 6-2.3 5.5-9-.6-6.7-6.4-7.5-9.6-7.3-3.3.3-6.2 3-6.2 3l-10.7-6.8s5.4-33.8 11-35.9c5.5-3.9 6.4-5.5 6.4-6.4s-2-3.2-2-3.2L345 179l-33 3.9s-2.6 3.9-2.2 5.5.4 3.2 6.3 7.8c6.6 5 11 33.9 11 33.9s-9.2 4.6-9.8 4c-.5-.6-3.3-1.1-4.7-.9-1.5.2-6.3 2.7-6.3 9 0 6.4 4.8 10 4.8 10s31.6-3.6 36.3 5.1c4.5-10.5 34.5-6.8 38.1-8.6z"/>
+    <path fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M419.5 213.6s.4-3.7 3-5.4c2.6-1.8 20-2.6 24.3 0s5.7 15.5 5.7 15.5 2.6 4.6 2.8 7.9l.5 5.6s14 18.1 14.2 34.6c1.6 11.1 1.2 41-3.2 52.4-.1 14.1-6 23.4-6 23.4s1.3 2.4 1.2 5c-.2 2.7-1.6 5.1-1.6 5.1l20.4 10.1-7.5-2.8 7.5 6.3-8.5-4 5 5-12.4-5.5s5.8 5.4 5.4 5.2l-9.2-4.3 5.4 5.6c-.2-.3-8-3.5-8-3.5l.3 3s-6.3-.4-6.3-5.1a23 23 0 01-5.2-4.2l-14.5-2.5-16.4-49 3.8-83 1-4.2-1.7-11.2z"/>
+    <path fill="#fb0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M408.5 478.8s-8.4-17.8-12.6-18c-3.8-7.2 13.2-66.2 46-69.5 18 1.4 1.4 20.7-10.4 14.8 1.5 5.2 7.4 12.6 7.4 12.6s-23.5 10.1-30.4 60zm-112.7 2.5s7-20.1 11.2-20.4c4.2-.2-11.2-67-44.8-67.6-18.1 1.5-1.5 21 10.4 15-1.4 5.2-7.4 12.6-7.4 12.6s23.6 10.2 30.6 60.4z"/>
+    <path fill="#00713d" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M326.6 355.5c-.1-.1-8.4 2.6-3 11.6.4-3.5 4-5.6 4-5.6s-5.6 6.7.4 12.4c.7-5.3 4.1-7 4.1-7s-4.2 12.3.1 14.8c.5-4.9 3.7-7 3.7-7s-3.8 11-.4 13.5c.4-4.2 3.2-6 3.2-6s-1.7 11.4 2.7 12.2c.1-4 3.4-8 3.4-8s-1.5 9.4 5.5 9.8c0-3.5 1.3-7.6 1.3-7.6s3.2 10 7.8 8.3v-8.4s2.9 9.5 8.4 7.7c-.8-2.7.3-5.8.3-5.8s3 5.9 8.2 4c.9-1.8-.2-5.3-.2-5.3s7.6 8 10 3.2c2.3-4.8-6.2-6.4-6.2-6.4h5.8s-1.9-4.9-9.6-6c2.6-1.1 5.4-.3 5.4-.3s-1.6-6-9.6-6.7c3.1-1 6.5-.3 6.5-.3s-1-5.7-9.8-7.4c1.4-1.5 5.1-1 5.1-1s-3.5-5.4-7.4-5.1-39.8-3.6-39.7-3.6z"/>
+    <path fill="none" stroke="#3ec26d" stroke-linecap="round" stroke-width="1.1" d="M361.9 384.7s3.1 1.6 3 3m-1.1-5.5s4 2.9 4 5m-.5-6.4s3.2 2 3.4 5.2m2-4s1.6 3.6 1 4.2m2.3-2.3c.2 2.8-.3 3-.3 3m-39.6-20.4s3.8 2.5 3.5 5.9m-3.7-3s1.7 1.8 1.3 2.9m3.3-5.7s2.6 3.5 1.7 6m2.6-3.7s1.2 2.2.1 3.4m2-2.4s1.3 2.2.1 3m-1.7 4.2s3.6.8 4 3.5m-1.9-5.9s3.7.3 4.1 4.2m.9-5.6s2.5 4.3 2 5.7m2.7-5.3s1 4.2.3 5.5m2.8-3.8v4.7m-4.7-11.2s2.4.9 2.2 3.1m0-5.2s3 1.7 2.7 5m.8-6.4s2.6 3 1.6 6.5m2.9-5.8s-1 3.8-.6 5.4m3.3-2.8s-1.6 1.3-.7 3m-14 11.8s.6 3 0 3.4m-3.7-5s1.9 3.2 1.2 4.8m-5.2-5s2.1 2.4 2 4.3m-5.2-3.8s2 1.8 1.8 2.9m-3.5-.1s1.9 2 1.8 2.3"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M300.9 252.2l26.7-.5s17.7 0 19.6 5.8c3.4-7.7 18.6-7.2 18.6-7.2l27.7-1 .5 67a71.5 71.5 0 01-44.9 52 68.6 68.6 0 01-45.3-52.6l-3-63.5z"/>
+    <path fill="#006b00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M310.4 252l39 103.8 35.2-106.1c-11 .7-34.4-1.7-37.3 8.3-4.5-9-29.1-5.4-36.9-6z"/>
+    <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-width=".6" d="M337 308.2c1.4.8 1.4-28.2 3.4-29.1l1.5-6c-1.7-3-9.3-2.8-12-.3a74.5 74.5 0 001.8 5.4c3.8 6.2 3 30.6 5.2 30z"/>
+    <path fill="#cdad56" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M326.5 84.3s2.8-3.1 2.9-3.9c.1-.7 12.5-1.2 19.9-15 4.1-7.2 0-3 0-3L349 59s5.1-4.9 3.3-7.5c-1.9-2.6-1.3 3.4-4.3 3.3-3-.2-1.4-6.5-1.4-6.5s-.2-.8-1-1.2c-1.3.2-1 2.4-2 2.7-1.2.2-2.2-5.3-2.2-5.3s-1.9-2.5-3.5 5.4c.9 8.4 6.2 6.7 6.2 12.2 0 5.5-4.7 9.8-6 10-1.5 0-1-4.7-1-4.7s-.7-2.3-1.2-2.3 2.7-.5 2.2-6.7c-1-7.5-2 1.7-4 1.4s-.5-7 .3-7.7-.9-3.8-5.3 4.2c-.4 3.8-.9-1-1.7-.8-1.5 3.1-1.3 5.4.9 8.3 3 2.8 5 5.7 5 7.2-.2 1.5-1.8 4.9-4 4.9s0-4.1 0-5.5c-.2-1.4-4-6.4-4-6.4s-2.6-4.2-2.3-4.4c.3 0-.3-.7-1.5 3.7s-2.8-3-2.8-3-1.7 5.5 2 8.7c-2.8-.4-3 .8-3 .8 0 1.5 3.8 2.1 4.3 4.7s-4 4.1-4 4.1 1.9 2.7 7.1-2.5c.1 3.3-2 5.5-2 5.5 1.8.8 3.1.8 3.4 2.8z"/>
+    <path fill="#cdad56" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".9" d="M309.3 84.3s-2.3-3.5-2.4-4.1c-.1-.7-11.5.8-17-13-3.4-6.7 0-2.8 0-2.8l.3-3.2s-3.7-4.6-2.1-7c1.6-2.4 1 3.1 3 3.1 2.5 0 1.1-5.9 1.1-5.9s.2-.7 1-1c1 .1 1.5 3.5 2.4 3.7 1 .3 3-4 3.6-4.9.9 0 .8-3.5 2.2 3.7-.7 7.6-7 6.1-7 11.1s4 9 5.2 9c1.1.1.7-4.2.7-4.2s.6-2 1-2c.5 0-3.6.8-3.2-5 1-5.2 3 .4 4.8 0 1.7-.3-.2-5.5.3-6.4 0-.8 2.6-4.2 3.5 3.4.4 3.6 2.3-3 3-2.8 1.3 2.9-.5 6.7-2.3 9.3-2.7 2.6-4 5.5-3.8 6.8.1 1.4.7 3 2.6 3 2 0 .7-2.3.8-3.5.1-1.3 3.3-5.3 3.3-5.3.6-1 .1-3 .8-3.8 1 0 1.4-1.4 2.5 2.6 1 4 2.3-2.6 2.3-2.6s1.5 4.9-1.7 7.8c2.5-.3 2.7.7 2.7.7 0 1.4-1.2 2-1.6 4.3a4 4 0 001.3 3.8s-1.6 2.4-6.1-2.3a7.8 7.8 0 001.7 5c-1.5.7-2.7.7-2.9 2.5z"/>
+    <path fill="#ffc900" fill-rule="evenodd" d="M378 267.4c-2.3-2-2.5-.2-3.7-.7-.5-.2-1-.8-1.5-1.2-.4-.5-.9-.7-1.5-.9l-.6 1.9c-.2.6.6 1.7.6 2.6-.2 1.4-.8 2.5-2.5 3 .5-1 .8-1 .6-2.2 0-.6-1.7-1.7-1.5-2.3.3-.9.8-2 .4-2.9-.7.5-1.6.3-2.4.6-.6.2-.6 1.4-1.4 1.8-1 .4-2.8.2-4.4-.7 1-.7 1.8-.2 2.7-1 .5-.3.5-1.9 1-2.3s1.6-.7 2.1-1c-.4-.6-.4-1.4-.8-1.9s-2.4-.4-2.8-.9c-.9-1-.7-2.3-1.6-3.3 2.2.9 2 2 2.5 1.9a4 4 0 012.7-.4c.5.2 1.6 1.6 2.2 1.9l.7-2c.2-.7-1-1.8-.7-2.4.4-1.3 1.4-2.4 1.9-3.6l.5 3.4c0 .6 1.2 1 1.3 1.5 0 .6-.6 2-.5 2.6l2.2-.1c.7-.2 1-1.7 1.7-1.8a8.4 8.4 0 013.6 0c-1 1-1.7 1-2.3 1.7-.5.4.1 1.6-1.3 2.5-.5.3-1.9 0-2.4.3l1.3 1.5s2.4.7 2.9 1.2c.9 1 1.3 2.2 1 3.3zm-59.8 1c2.3-2 2.6-.2 3.7-.7.6-.2 1-.7 1.5-1.2.4-.4 1-.6 1.5-.9l.6 2s-.6 1.6-.5 2.5c.1 1.4.7 2.6 2.4 3-.4-1-.7-1-.6-2.2 0-.6 1.8-1.7 1.6-2.2-.3-1-.9-2-.5-3 .8.6 1.7.3 2.4.6.6.3.6 1.4 1.5 1.8.9.4 2.8.2 4.3-.7-1-.7-1.7-.2-2.7-1-.5-.3-.5-1.9-1-2.2-.4-.4-1.6-.8-2-1.2.4-.5.3-1.2.8-1.7s2.3-.4 2.8-1c.9-1 .7-2.2 1.6-3.2-2.3.8-2 1.9-2.5 1.8-1.1-.5-2.2-.6-2.7-.4s-1.7 1.7-2.2 1.9l-.8-2c-.2-.7 1-1.8.8-2.4-.4-1.2-1.5-2.4-2-3.6 0 1.2-.3 2.2-.4 3.4-.1.6-1.3 1-1.4 1.5 0 .6.7 2 .6 2.7-.7-.2-1.6 0-2.3-.2-.6-.1-1-1.6-1.7-1.8a8.3 8.3 0 00-3.5.1c1 .9 1.7.8 2.3 1.7.5.3-.2 1.5 1.2 2.4.5.3 2 0 2.4.3l-1.3 1.5c-.4.5-2.4.7-2.8 1.2-1 1-1.4 2.2-1.1 3.3z"/>
+    <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-linejoin="round" stroke-width=".6" d="M376 274.1c-2.1 1.7-15.8 5.1-15.9 17-.1 11.8 2.4 14.5-.1 14.8-5 0-5.7-13.2-5.5-19 .1-5.9.3-5 .3-5s3.3 1 3 3.8c-.2 2.8 3.4-7 2.2-9.8 2.2 2.3 5.2 1.4 5.2 1.2 0-.1-1.7-2-2.4-3.3-.7-1.3 2.5.8 2.5.8s.1-2.3-2.7-2.1c-3.6 0 .6-1.2.6-1.2s2.1 2 3.5-.2a12 12 0 00-3.8-2.5s-2-3.8-4.6-4.5c-3.1-.8-2.7 1.3-6.2 1-.7 1.4-.7 1.5.7 2-2.4 1.6-1.1 5-1.1 5s3.8-1.7 3.6 1c-.1 2.7-2.2 2.2-3.6.6-1.3-.8-1.7.7-1.7.7l2 2.1s-3.9-.1-4.8 2.4c2-.1 3.2.5 3.2.5s-4.3 2-4.8 3c-.4 1-.5-1.2-.7-1.2l-4.2-1.5-1.4 6.5s2.8 2.8 4.4 1.9c1.5-1 4.3-3.6 6-2.9-5 3.8-9.8 9.2-12.5 10-.7-.7-3.1-3-4-1.9-1 1.2-.4 2.7.9 2.6 1.3-.2-4 1.2-3 3.4 1.2 2.3 1 2.1 2 1.5 1-.6-.8-.7 2.8-1.8 3.7-1 3.5-2 3.5-2s-.7 1.6-2.6 2c-2 .5-3.5.5-3.1 1 .4.7 1.2 1.7 1 2.3-.3.6 4-3.1 5.2-.1 3-.2 4.9-3.8 3.5-5.9.1 2.3 1.5 3 .7 4s6.6-3.4 3-6c1 2.2 1 4 1 4s1.8-.2 2.2-.8c.4-.6-.9 1.7-.3 2.1.6.5 3.2 3 2 4.8-.6-1-.7-2.7-1.6-2.5-.8.1-4.3 2.7-6.5 2.8s2.6 7.8 2.6 7.8-3.3-.4-3.7-.1c-.4.3-2.5-2.7-3-1-.6 2.3.8 1.4.8 1.4s-1.9-.9-2.8.2c-1 1-2 2-1.3 2.5s3.8.5 4.2.3-3.5.3-3.8.8c-.3.4-.8 2 0 2.7s3-.3 3.1-.8c.2-.4.3 1.7.3 1.7s3.6.3 3.6-3.5.3 2.7.3 2.7 3.7.6 3.8-3.1.4 2.5.4 2.5 2.4-.7 2.4-1.3c0-.6-.1 7.5-1.8 9.7-2.7-1.8-4.4 1.2-4.4 1.2s.2 4.4-.1 5.4c-.3 1 1.8-.6 2-1 .1-.5 2.6-1.7 2.8-2l.8-1.8s-.5 2.1-1.5 2.4-2 1.4-1.6 2.3c.5.8 2 1.4 2.6 2.3.5 1 2.5-5.2 2.5-5.2l.1 1.3s2.6-.6 2.9-1.8c.2-1.2-2.7-2.2-.3-4.2 2.4-1.9 0 1.8 0 1.8s.8 2.9 1.4 2.9 2-5.4.5-6.7c-1.4-1.4 2.1 1.6 2.1 1.6s2-5.5-.1-6.3l-3.1-1s1.1-1.5.6-1.7 3 3.3 3.5 2.4 1.4-3.6-2.7-5c-4-1.6-.1-5.8-.1-5.8s2.5 3 4.3 1.4c1.9-1.7-.1-1.7-.1-1.7s5.2-3.3 5.3-5l-2.6.2s3-2 2.2-5a3.5 3.5 0 01-2.7 1.6s2.6-2.6 2.1-5c-1.5 1.2-1.4 2.1-2.3 1.8s-2.7-9.7 1.2-10.3c4-.6 1.8 4.6 2 4.6.1 0 5.9-2.4 0-6.3 1.4-.4 4.4 2.3 4.4 2.3s-1.3-6.6-7.6-2.6c1.5-1.6 2.5-2.7 3.7-2.4 1.3.3 5.8-.1 5.8-1.5-1.1-.9-3.5.5-4.8 0-1.2-.4 9-1.2 8.2-6.3z"/>
+    <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M481.3 118.5s12.3-6.4 18.4 1.6m4.9 12.2c-.3 0-4.3 4-5.2 4m13.4 8.9s11.4.9 18.7-10.4" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M525 141.8s1 6.1 2.8 6.1-3 1.6-4.9.3c2.2 2.8 3.4 7.7 0 9.5" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M519.3 219s-4 4.3-9 4.6" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M523.9 199.4s-2.5-12.3-1-15.3c1-4 5-5.5 8-10.7m-8.3 17s-3 7.4-16.5 5m20.2-23.3s1 9.8-11.3 6.1m-3.7-50.2s-4.9 4.3-3 10.1" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#006b00" fill-rule="evenodd" d="M353.7 277.6s3-1.2 3.6-1.8a9 9 0 001.8-2.7c.3-.9-2-2.3-.9-4.2.7-.9 1.7-1 3.4 0s-1.5-3.3-3.2-3.4-2.8 1.2-3.3.9c-.4-.3.2 1.2-.5 1.2s1.4 1.1 1.2 1.9c-.1.8 2.3 3.3 2.1 3.9 0 .6-3.5 4-4.2 4.2z"/>
+    <path fill="#ffc900" fill-rule="evenodd" stroke="#ffc900" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.3" d="M534.3 97.1c2.8-.6 3.2 0 2.7 2.5a7 7 0 01-2.7-2.5z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1.3" d="M514.7 233.5s-1 6.4 1.5 7c-.1-2.5.5-4.2 1.2-4.9-.6-.2-2.6-2-2.7-2zm-5.7-7.9c-2.3-.3-6.2 1.6-5 4 1.8-1.7 3.6 0 4.9-1.6.4-.4.3-1.8.1-2.4zm0-4.5s-3.6-.6-4.1 1.9c2.5-.3 3.2-.6 4 0 .3-.6 0-1.8.1-2z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M493.5 185s2.2.8 2.9 3c1.7-1 2.5-5.8-2.9-3zm-5.4 5.4c.1 0 4.6-2.8 5-.2-.9 1-1.3 1.6-2 1.8-.6 0-1.8-1.8-3-1.6zm-.4 8.8s2.9-2.5 4-.8c1 1.6-1 1.5-1 1.5s-1-.4-3-.7zm-4-49.2s-3.6-1.4-5 1c2.3.4 3.1 1.2 4.2 2-.3-1-.8-2.6.8-3zm-6.9 18.5s.2-4.2 2.1-5.9c1.2.7 1.5 1.7 2.2 2.9-1.5.3-3.4.4-4.3 3zm9.5-3s-4 1.9-2.6 3.8c1.2-1.3 2.7-1 2.7-1l-.1-2.8z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M480.6 125.6c-1.4 1.6 1.8 5 5 4.5 1-3.7-4.1-5.7-5-4.5z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="none" d="M331.2 278.1c-.3.9 1 2 1.7 1.7.3-.8-1.4-2.3-1.7-1.7z"/>
+    <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M484.3 122.8s.6 2.9 3.4 2.1c-.4-2.3-2.4-4-2.4-4-.1.7.4 1.7-1 1.9zm1.9 8.5s1.5 1.7 4.6-1.8c-1.4.4-3.8-.8-3.8-.8s0 2.4-.8 2.6z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M480.5 118.9c-1.4 1.5.5 3.7 3.8 3.2.9-3.7-3-4.4-3.8-3.2z" transform="matrix(.46 0 0 .49 110.3 220.1)"/>
+    <path fill="url(#e)" fill-rule="evenodd" d="M144.6 266.6s7-2 10.8 1 3.7.3 3.7.3 5.5 2 7 1.6-1 .1 1-1.2c2.2-1.2-4.2.3-4.8-2.4-1-1.7.1-3.9-2.2-3.2-1.5-2 1-3.4.5-5.6-1.6 1.2-2.5-.4-3.8 2.5-3-.6-.4-4.8-3.7-5.2 0 3-2.4 3.2-2.6 4.9-1.4 1-7.7 4.7-5.9 7.3z" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="#c01500" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M262 467.9c4-1 25.2 4.7 33.4 13.5-1.7-15.7-6-27.7-6-27.7s-12.8-3.6-14.5-1.9a96.3 96.3 0 00-13 16.1zm-6.5-72.3c-1.5.2-3 1.2-4.5 3.7-1.7 4.2-3 14.9-5.4 17.4-2.5 2.5-4.8 2.7-4.8 5 0 2.2.3 7.4 7 9.4 6.7.3 17.4-10.7 17.4-10.7s5.5-6 7.7-12.4c-13 4.5-22.1-7.5-17.4-12.4zm187 69.8c-4-1-25.4 4.7-33.6 13.4a133 133 0 016-27.5c1.6-.4 12.5-3.6 14.2-1.9 2.6 2.7 10.7 10.7 13.4 16zm6-72c1.5.3 2 2.3 3.2 4.7 1.7 4.2 3.5 10.4 6 12.8 2.5 2.5 4.7 6.2 4.7 8.4s-.5 5.2-7.2 7.2c-6.7.3-16.3-8.3-16.3-8.3s-5.4-6-7.7-12.4c12.9 4.5 21.2-7 17.3-12.3z"/>
+    <path fill="#fb0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M248 454.2s13.5 9.2 13.7 13.5c36-53.5 128-70.1 180.5-3.8 7-9.2 14.2-12.1 14.2-12.1-55.2-72.2-165.1-63.2-208.4 2.4z"/>
+    <g fill="#1e5aa6" fill-rule="evenodd" stroke="#000" stroke-width="1.1">
+      <path d="M385 249.9l5.2-.2-9.4 12 11.3 13-22.2 28 21 25.2a70 70 0 01-8.6 15.4l-12-13.3 21.8-27.2-18-20.3L385 250zm-75.2 2.3l-5.6.2 10.5 11.4-11.1 13.9 23.1 25.1-19.1 25.7a75.8 75.8 0 009 16.5l11.5-14.4-23.4-26 17.1-21.8-12-30.6z"/>
+      <path d="M335.9 319.8l-8.3 11L357 365a74 74 0 0013.8-9.2L355.5 338l6.3-18.4 9 10.4-28.2 36a62 62 0 01-14.7-9.1l15-18.9-7-18.2zm-9.2-17.1l5.4 6.8-3.5-9.2-1.9 2.4zm38.6 6l4.3-5.8-1.6-2.2-2.7 8z"/>
+    </g>
+    <text x="-328.3" y="362.4" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(-49.4 149.8 -205) scale(.86)">
+      <tspan x="-328.3" y="362.4">L</tspan>
+    </text>
+    <text x="-292.3" y="384.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.6 -.6 .6 .6 207.3 41.7)">
+      <tspan x="-292.3" y="384.3">E</tspan>
+    </text>
+    <text x="-239.8" y="451.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.66 -.47 .5 .65 207.3 41.7)">
+      <tspan x="-239.8" y="451.7">O</tspan>
+    </text>
+    <text x="-188.5" y="430" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.7 -.48 .48 .7 207.3 41.7)">
+      <tspan x="-188.5" y="430">T</tspan>
+    </text>
+    <text x="-115.4" y="451.5" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.78 -.37 .37 .78 207.3 41.7)">
+      <tspan x="-115.4" y="451.5">E</tspan>
+    </text>
+    <text x="-94.1" y="453.1" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.35 .35 .8 207.3 41.7)">
+      <tspan x="-94.1" y="453.1">R</tspan>
+    </text>
+    <text x="-68.4" y="455" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.32 .32 .8 207.3 41.7)">
+      <tspan x="-68.4" y="455">R</tspan>
+    </text>
+    <text x="112" y="445.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 -.07 .07 .86 207.3 41.7)">
+      <tspan x="112" y="445.7">R</tspan>
+    </text>
+    <text x="180.2" y="430.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 0 0 .86 207.3 41.7)">
+      <tspan x="180.2" y="430.8">R</tspan>
+    </text>
+    <text x="414.8" y="275.2" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.75 .43 -.43 .75 207.3 41.7)">
+      <tspan x="414.8" y="275.2">R</tspan>
+    </text>
+    <text x="483.9" y="193.1" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(39.9 46.5 307.2) scale(.86)">
+      <tspan x="483.9" y="193.1">E</tspan>
+    </text>
+    <text x="309.1" y="414" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.83 .16 -.13 .82 207.3 41.7)">
+      <tspan x="309.1" y="414">O</tspan>
+    </text>
+    <text x="105.1" y="459.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.78 -.1 .12 .84 207.3 41.7)">
+      <tspan x="105.1" y="459.3">O</tspan>
+    </text>
+    <text x="-45.7" y="455.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.3 .3 .8 207.3 41.7)">
+      <tspan x="-45.7" y="455.8">A</tspan>
+    </text>
+    <text x="518.4" y="144.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.6 .6 -.6 .6 207.3 41.7)">
+      <tspan x="518.4" y="144.7">A</tspan>
+    </text>
+    <text x="271.2" y="388.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.84 .17 -.17 .84 207.3 41.7)">
+      <tspan x="271.2" y="388.3">A</tspan>
+    </text>
+    <text x="40.3" y="455.2" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.85 -.16 .16 .85 207.3 41.7)">
+      <tspan x="40.3" y="455.2">M</tspan>
+    </text>
+    <text x="94.4" y="448.1" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 -.1 .1 .86 207.3 41.7)">
+      <tspan x="94.4" y="448.1">P</tspan>
+    </text>
+    <text x="155.1" y="437.6" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 0 0 .86 207.3 41.7)">
+      <tspan x="155.1" y="437.6">P</tspan>
+    </text>
+    <text x="405.1" y="276.7" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(29.3 24.1 418.1) scale(.86)">
+      <tspan x="405.1" y="276.7">P</tspan>
+    </text>
+    <text x="232.1" y="409.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.85 .1 -.1 .85 207.3 41.7)">
+      <tspan x="232.1" y="409.8">I</tspan>
+    </text>
+    <text x="530.4" y="132.1" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(46.4 55 262.7) scale(.87)">
+      <tspan x="530.4" y="132.1">T</tspan>
+    </text>
+    <text x="464.2" y="218.5" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(36.4 39.4 333.9) scale(.87)">
+      <tspan x="464.2" y="218.5">T</tspan>
+    </text>
+    <text x="313.7" y="362" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.83 .24 -.24 .83 207.3 41.7)">
+      <tspan x="313.7" y="362">M</tspan>
+    </text>
+    <text x="513.7" y="123.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.58 .64 -.64 .58 207.3 41.7)">
+      <tspan x="513.7" y="123.3">G</tspan>
+    </text>
+    <path fill="none" stroke="#fff700" stroke-linecap="round" stroke-width="1.1" d="M427.4 214.5s5.2-4.4 8.9-4.6m-8.2 4c.1-.1 31-4.5 32-5.4m-31.9 5.6l34.6-3m-34.7 3.2s36.7-1.8 39 0m-39.1-.2s36 .3 36.6 1.1m-36.5-1l34.6 2.8m-35-2.6c.2 0 35.3 3 38.7 7.5m1.9 6.3c-.2-.1-12-14.2-40.7-14m.2.3s19.8 1.4 26.1 8.3m-25.8-8.5s12.9-2.5 26.3 13.7"/>
+    <path fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M247.4 217.7s20.7.9 20.7 2.9-15.4 5.9-15.6 14.4c-.2 8.5 11.8 9.2 12.6 20 .8 10.7-9.4 12.3-11.4 15.2-2 1.4-6.9 16.6-6.3 25.5.6 9 3.3 39.2 8 45.3 3.6 2.9 9 12 15 9.2 5.9-2.9 1.8-13.2 1.2-16s2.4-7.6 2.4-11.8c0-4.3-2.2-7.8-2-8.8.2-1 16.4 3.9 15.4 20-1 16-7.5 11-7.5 11s2 19.8-3 22.4c-9.2 5-15.9-1-15.9-1l.9 4-7-3.6s-9-12.8-11-18.5-4.4-31-3.6-36.5c.8-5.5 1.4-37.6 1-39.2s-2-28.5-1-32.5 7.3-22 7.1-22z" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="#ff7000" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M400.8 224.4s12.4-12 19.6-10.6c3.7 0 .2 2.6.2 2.6s6.2.5 7.1 3.3c.2 1.2-3 1.6-3 1.6s2.7.5 2.9 2.8-26.6.5-26.8.3z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M401.5 223.9s13.3-1.8 18.9-7.4m-5.4 3.7s9.7-.3 9.7 1"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M449.7 363.1s8.4-1.9 10.7-4.9c1.4-1 8.7 11-10.7 5z"/>
+    <path fill="none" stroke="#fff" stroke-linecap="round" stroke-width="1.1" d="M447.5 293.8s1 6.4-2 10.8c-1.5 1.7-6.3 4.7-6.3 6.8 0 2.1 1.8 4.9 1.4 7.3s-3 5-2.8 7c0 2.1 3 13.3 2.7 13.5m-8.4-66.4s-6.7 2.3-8 9"/>
+    <path fill="#c75b00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M429.3 220.2s2.3 6.3 9.6.4c-4.7-6.5-9.6-.2-9.6-.4z"/>
+    <path fill-rule="evenodd" d="M434.9 220c0 .4-.4.7-.8.7s-.8-.3-.8-.6.3-.6.8-.6.8.2.8.6z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M369.3 205.6s14 15 23 15c1.6 4.4-4.2 8.5-6.5 10.4-4.5-1.4-8.7.3-19.3-12.8.6-8.3 3-12.2 2.8-12.6zm18.8-35c1.8-5.6 5.4-10 8.5-10.5-.8-4.2 6.6-23 28-30.3 1.3 9.7-9.1 19.2-9.1 19.2s31.6-5.4 38-13.4c-.7 3.6-7.1 26-40.8 25.8 12.7 12.1-4.1 21.8-11.3 18.9 13.2-10.2-3.8-16.2-13.3-9.7z"/>
+    <path fill="#cccccd" fill-rule="evenodd" stroke="#ccc" stroke-width="1.1" d="M399 162.8c6.3-4.1 8.6-4.1 13.8-3.3l-3.7.6s-.3.5 2 2.7c-2.7-.7-5-2.2-12.2 0z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M396.5 160.1s12.6-6.7 19.6-11.3"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M385.7 231s17.3 4.8 19.3-20.1c-3.8-10.8-9-34-1-40.8-7.4-5-15.4.2-15.4.2-.5 1.1-7 10.5 1.8 26.8-21-5.5-12.4 14.3-12.4 14.3.8-3.1 12-6 14.7 9.8 1.2 4-7.5 10-7 9.8z"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M405.1 211s18.4-9.8 17.9-32.9c-15.6.4-21.1 20.5-21.1 20.5L405 211z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M323 209.9s-13.6 11.8-21.3 8c-5.7 3.4-12.4-2.6-12.4-2.6s7.8 29 36 8c-.5-6.4-2-13-2.3-13.4z"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M301.5 217.4c1.2-6 6-9 9.7-3.3 5 1 10.2-19.8-7.9-16.3 5.1-27.2-10.1-37.3-10.1-37.3s-5.4 30-3 35.6c2.5 5.6-3.5-10.3-23-14.7-.3 22.8 21.7 33.4 21.7 33.4s6.3 5.7 12.6 2.6z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M303.3 197.6s-8.5 7.2-6.5 17m-6.4-18s-2 7 2.3 17m-3.6 2.4s4-6.4 12.4 1.8"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M290.7 171.8c0-.2-12.9 0-5.2 13-5.7 1.8-18.5-6.5-9.7-17.6-29-.7-40.7-14.6-40.7-27.4 8.5 8.9 28.8 5.3 36 10.7-8.8-8.2-7-19.5-7-19.5s24.7 7.4 29.1 29.3c-1.5 4.2-2.1 11.8-2.5 11.4z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M270.9 149.9c4.7 4.9 17 6.3 23.2 11.7"/>
+    <path fill="#cccccd" fill-rule="evenodd" stroke="#ccc" stroke-width=".8" d="M276.5 164.2s10.2-1.3 13 2.3c-3.9 0-5.2-1-11 1.2 1.7-.9 1.2-2.3 2.1-2.3s-3.7-1.2-4.1-1.2z"/>
+    <path fill="#923f00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M327 84.8s5.6-4.9 11.7-.4c-2.7 8.1-12.6 5-12.6 5s.3 4.1-.7 6c2 1.6 3.6 6.5 3.6 6.5s10.2-2.5 12.3 2c3.9-.6 6.7 0 6.7 0s7.9-2 10.7-2c2.7 0 11.6 2.3 12.4 3.9.8 1.6 3.8 12.6 5.7 12.4 2-.1-4.7 2.7-6.5-.1-1.8-2.8-1.3 3.6-1.3 3.6s5.5 5.9 6.2 7.2c.6 1.3-3.4 12-.3 19.3-2.8.2-3 3-3 3-.1 3.3-4.2 4.2-4.2 4.2l-1-4.4-2.8 1.6 1.1-3.4s3.8-9.2 4.1-12.1c.4-3-3.4-8.2-6.3-8.2s-5.1 9.3-5.1 9.3-1.5 7-1 7.7l-2-2.3s-1.3 4.3-2.3 5.6c-1 1.3-3 1.8-3 1.8s-1.5-4.3-1-6c.4-1.6 8-8 7.3-12.5-.6-4.6 0-3.5-.2-3.6-.1-.2-3.9-3.5-4-5.3-.2-1.8-5 2.3-11.2 1-1.9 3.3-2 11.6-2 11.6s-.8 10 .6 11.2c1.3 1.1-3.3 3.6-3.3 3.6l-3.3 4.4-1.1-2.6-2.3 1.6 1.3-3.3c0-2.5 3.2-9.2 3.2-15s.4-11.8.4-11.8-6-.3-6 5.9c.3 6.2-1.4 6.5-1 8.3.3 1.8 2 6.9 1.4 8.4-.5 1.4-2.4 2-2.4 2l-.5.8s-6 2.7-6 3.9c.2 1.1 0-3.3 0-3.3l-.4-4.7s3.6-2.3 3.6-8c0-5.8-.8-6.6-.7-8 .2-1.2 1-6 .9-6.5-.2-.5-3.5 1.3-4.5 1.3s1.8-3.4 2.2-5.9c.3-2.4-3.3 2.3-6.3-.4 1.4-3 3.5-4 3.8-6.3s-2.3 2-4.6.4c.2-2.2 2.5-4.1 2.5-4.1s-1.9-.2-2.6 0c-1.5-.5 1.6-2.8 1.8-6 .1-3.4-1.8-4.7-1.8-4.8 0-.2-3.3-3-3.8-4.1-.5-1.2-.5-2.5-.5-2.5s-5.4 4-11.8-4.4c5.9-5 12.1-1.3 12.1-1.3s1.7-4.6 9.2-4.3c7.5.4 9 4.6 8.7 4.1z"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M368.3 169.5s13.8.4 14 7.8c.1 7.3-4.2 5.4-4.4 5.4l-10-1.2.4-12z"/>
+    <path fill="#fffeff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M354.9 167.5s17.2-.2 16.2 7.3-5.3 6-5.3 6l-8.3-.7-2.6-12.6z"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M345.2 166.6l10 .9s6 .8 5.7 6.5c-.3 5.7-6.1 5.9-6.1 5.9l-9.7-.6.1-12.7z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M321.9 169.5c-.1 0-13.9.4-14 7.8-.2 7.3 4.2 5.4 4.3 5.4l10.1-1.2-.4-12z"/>
+    <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M335.3 167.5s-17.2-.2-16.3 7.3c1 7.5 5.4 6 5.4 6l8.3-.7 2.6-12.6z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M345 166.6l-10 .9s-6 .8-5.7 6.5c.2 5.7 6.1 5.9 6.1 5.9l9.7-.6-.2-12.7z"/>
+    <path fill="#5e0043" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M371.6 249.4s7.1-10.6 10.2-9.4c2.6.9.6 9-.7 9.8l-9.5-.4zm-49 1.9c-2.3-3.2-5.6-11.8-8.6-9.4-2.6.8-.6 9 .6 9.8l8-.4z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M327.3 230.4s14 8.6 18.5 8.8c4.6.3 19-11.1 19-11.1"/>
+    <path fill="#5e0043" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M328.6 196.8l2.7-3.4 13.4 6.8 13.6-6 2.7 2.8-15.2 10.7-17.2-11z"/>
+    <path fill="#474747" fill-rule="evenodd" stroke="#474747" stroke-linejoin="round" stroke-width="1.1" d="M318 196.6c1 1.3 9.7 11.9 11.3 20.6 1.6 8.7-.9-12-.9-12s10.7 5.3 11 8.6c.4 3.4 5.2-.2 5.4-.8l-31-20.1 4.2 3.7zm52.9-.6s-11.3 14.8-10 31c-2.3-7.8-.4-20.6-.4-20.6l-2.4 1.6s-2.6 11-5.8 12.6c-.6-1.3-.5-1.8-.5-1.8s-3.4 4.5-4.1 5c-.7.4.2 15 .2 15s1.2 10.6 2.5 10.5a45 45 0 00-3.4 1.9l-1.4-28.3 3.2-3.2s4.3-5.1 4.6-10.1c-1.9 1.5-4 2-4 2s-.5 7.1-2.1 8.1c-1.7 1-1.8 2.9-1.8 2.9l-.4-9.3L371 196z"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="1.1" d="M345.1 213.1l2.2 44.6"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M317.7 234.4s5.1 3 7 12.2c16.7-1.2 22 4.7 22 4.7s13.7-6.6 20-5.4c2.3-4.7 8.7-10.7 8.7-10.7"/>
+    <path fill="#b4b6b9" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M310.7 190.7l34.4 22.6 31-21s6.5-3.5 6-6-2.8-1.6-4-1.2c-1 .5-32.4 22.7-32.4 22.7l-33.4-21s-2.4-.9-2.9.7 1 2.4 1.3 3.2z"/>
+    <path fill="#474747" fill-rule="evenodd" stroke="#474747" stroke-linejoin="round" stroke-width="1.1" d="M372.3 184.9s-8.8-3.8-8.8-.5c0 3.2.2 3.5 1.6 5.6 1.4 2.1-1 3.4-1 3.4l-.9-2.3c-.5-1.4-5.2-2.4-5.6-4-.4-1.7 1-4.4-1.9-4.7a5.2 5.2 0 00-6.1 4.4 67.5 67.5 0 01-4.2 10.8l.5-17.2c6.2.4 17.7 1.8 26.6 2.8-2.7-.4 1 .2.9 1-.3.8-1.2 1-1.1.7zm-31.2-4.4c-1.6 0-9.5 1-11.5 2.1-2 1.2 3.3 3 2.6 4.6-.7 1.6-.7 4.7-3.2 4-2.5-.6-11-4.7-11.2-6.2-.2-1.4-2-1.5-2-1.5s24.1-3.2 25.3-3z"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M344.9 178.6v21.1m-16.3-46l-9.8 16.1"/>
+    <path fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M161.8 129.7s4.9 6.7 4.3 8.6a25 25 0 014.3 7.8" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M362.7 152.3s-9.1 12.8-8.8 13.8"/>
+    <path fill-rule="evenodd" d="M316.2 91.4c-.2.7-1.4 1-2.6.7s-2-1.3-1.8-2c.2-.7 1.3-1 2.6-.6s2 1.2 1.8 2zm3.7-.2c.2.7 1.4 1 2.6.6s2-1.3 1.8-2c-.2-.7-1.4-1-2.6-.6s-2 1.3-1.8 2z"/>
+    <path fill="#ff7000" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M426.1 356.6s-3.3.6-3.2 1-9.8.5-10 .2c-.2-.3-1.5 1.7-1.5 1.7l1.6-1s2.4 2.6 3.1 2.4c.8-.2-.3 1 0 1.1.1.2.9-.4.9-.4l16.3-.3-7.2-4.7zm6.1 5.1l-13.3.4s-3.4 3-3.6 3.7 2.2 1 2.2 1l.7 2.5 1.7-.6s11.4 1.7 21.8-.6c5.3-1.9 6.2-4.1 2.5-5.5-3.7-1.3-11.9-.9-12-1z"/>
+    <path fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M208.4 404l28-1.3-5.3-4.4 75.7-3-2.6-6-84.7 3.3 10.2 4.8-23 .6.8 2.4-6-.2s6.6 2.6 6.9 3.7z" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="url(#i)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M239.7 249.4c-2.2-1-12-2.4-22.8 4.7l.4 25s16-8.6 23.8-6.6c-.5-7.8-.5-17.8-1.4-23z" transform="matrix(.86 0 0 .86 207.3 41.7)"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M280.4 321.8L223.7 378m82-56l-46 60.7m44-76.5l-61.5 74.5m-1.8-1l6-7m69-29l-23.9 32.8m-1 4.3l.6 12.6m35.2-38.2L301 386.9m20.8-2.5l10.2-16.8m-6.3-3.3l-12.4 14M322 351l-8.5 10.3m-2.4-25.3s-25.7 37.6-25.3 40.7m22.6-45.6c-.6.4-22.2 29-22.2 29m-1.2 9l-4 4.8m-4.9 7.2l-6 7.8"/>
+    <path fill="#8a9396" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M277.6 235.2s-1.7 5.5 0 8.2 12.7 24.9 12.7 24.9 7.5-9.2 10.2-9.5c2.7-.2 1.5 23.9 1.5 23.9s-4.5 4.2-7.2 4c-2.7-.3 6.7 9.4 6.5 17.6s-12.5 49-17 49.7c-4.4.8 2-7.4 1.8-9.7-.3-2.2-1.5-.7-2.5-3.2s1.5-6.2 1-8.7-2.8-2-3-3.7 1.5-2.3 1.2-4.2c-.2-2-3-1.5-2.7-3.3s.5-1 .3-4.2c-.3-3.2-.8 2.2-3.5 2.5-2.8.2-5 6.4-5 6.4s-5.5 7.7-11 4.3c3.3 7 .8 10-.4 10.2s1 5.4-2 5.7 2.2 11.7-1.3 12.7c3.8 1.7.8 4 .8 4s-8.6.7-6.7 11.9c-25.4-9-37.8-24.4-37.6-40 .3-15.7 5.3-29.9 17.4-35 3.5-13 9.5-27 9.5-27s-1-5.7-.3-9.4c.8-3.7 4.3-7.4 4.3-7.4s-.5-9-.3-13.5c.3-4.4 2-6.4 2.2-9 .3-2.4-.7-15 1.8-17.3 2.5-2.3 7.2-2 9.7-3.5 2.5-1.5 5.7-4.2 9-4s6 2.5 6 2.5 12 0 12.8 4.7c.8 4.7-2.5 6.5-2.5 6.5s1.8 6.7-5.7 13z"/>
+    <path fill="#cecfcf" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M266.9 218.1c.4.7-.5 2-2 2.8s-3 .8-3.4.1c-.4-.7.5-2 2-2.8s3-.8 3.4-.1z"/>
+    <path fill-rule="evenodd" d="M264.8 219.3c0 .5-.4.9-1 .9-.4 0-.9-.4-.9-.8 0-.5.5-.9 1-.9s.9.4.9.9z"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M283 227.5s3 13.4-.7 22.8m1.5-28.7s6 7.8 5.2 17.4m-4.6-19.1c.2 0 5 4.1 4.8 7m-3.6-8.8s3.2 2.3 4 4.6"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M284 216.8s-11.5 18.8-10 30.6"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M284.8 216.2s-15.4 9.2-18.2 39"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M283.1 221.8l-6 4.5"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M260.9 256.9s8.5-35.5 23.7-40.7"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M290.5 268.9s8.2-10.3 10-9.9c2 .4 1.4 23.8 1.4 23.8s-6 4.5-7.4 4.3c-1.3-.2 6.8 11 6.6 15.2l-.3 4.2s0-2.5-2-6.5c-1.8-4-.7-8.5-13-18.6-3-6.2 6 3.8 8 2.3 1.8-1.5-3.5-14.6-3.3-14.8z"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M276 211s-3.5 1-4 2.4c-.4 1.4-2.4 2.8-3.5 2.4a18.9 18.9 0 01-3.1-2.2"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M256.5 223.1s-5.2 5.2-2.7 5.8c2.5.6 5.2-4 5.2-4s0 7.9 2.1 6.6l8.6-5.7s2.2-.2 2.7 0c.5.1 6 4.8 9.5 3-2 5.4-4.4 6-4.4 6s-3.7 4.9-8.6 3.8c-4.8-1.1-6-3.2-6-3.2s-4.1.3-5.3-1.5c-1.3-1.9-1.8-3-1.8-3s-2.3 2.4-3 1.3c-.6-1.1 0-7.5 3.7-9z"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M285.7 216s-9.6-2.9-12.8 1.8c-3.3 4.7-2.5 7.3-.8 7.8"/>
+    <path fill-rule="evenodd" d="M287.1 215.7c0 1-.8 2-1.8 2s-1.8-1-1.8-2 .8-2 1.8-2 1.8.8 1.8 2z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M259.4 240s3.9 6 8.5 7.6-3.2 3-7.8 0c-3.4-4.6-2.5-8-2.5-8s1-.8 1.8.4zm33.3 35.2s-11-15.1-14.1-16c-3.1-.8 2.4-1.5 5.7 1.8 3.4 3.2-.9-5.3-.9-5.3l9.3 19.5z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M258.4 362.8c4.2-1 22.4 10.5 26.5 13.4 4 3 12.7 1 12.7 1s-4 2.5-6.5 3 7.4.7 7.4.7-23.3 6.4-47-6.1c-2.2-9.7 5-11.9 6.9-12z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M285 279s-3-.6-4.6-2.4c-1.6-1.8-3.8-6.2-6.1-8.1s-14-8.2-18.1-7.8c-4.2.5-5.5-.4-6-1-.5-.5-2.2.3-2 2.5.4 2.1-3.1 6.9-1.9 9.1a63.5 63.5 0 008.5 11.7c1.2.3.4 5.3.4 5.3s5.3 5.4 6.7 5.7c1.3.3 2.7 1.2 2.5 2.5-.1 1.3-5.8 8.2-5.8 8.2s-6.1 3.2-6.2 5c0 1.8 1.5 5.6 6.3 6.8a45 45 0 0018.6-1c.7-1 1.8-7.8 1.3-8.4-.4-.7-3.7-2.7-5.3-2.4-1.6.3-3.1 1.6-3 1.9.2.3-2.3 1.6-2.3.4s4.9-6.6 5.3-6.2c.5.5 7.3 1.2 8.6 4.6s1.3 5.9 4.9 5.5c3.5-.3 8.5-3.6 9-10.5.4-6.9-4-11.5-5.2-12.2-1-.6-4.8-2.9-5.1-4-.3-1-1-4.4-.5-5.2z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M220.4 309.3s11.6-3 14.6-3c3 .1 14.2 5.4 17.5 8.6 3.3 3.2 10 10.8 14.4 10.2 4.5-.7 5.7-1.6 5.7-1.6l-1.7 3.3s-3.6 1-5.4.5a19 19 0 01-8.8-5c-3.5-3.4-14.3-12.7-23.5-12-9.2.6-14.5 9.7-14.5 9.7s0-4.4.4-5.4-1.9 2-1.9 2l3.2-7.3z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M263 318.3c.1 0 3 .8 7.8.8s7.3-2.1 7.3-2.1l-.3-1.9.7-2.6s3.7 3.7 3.6 4.5c0 .7-1.5 1-1.5 1l-.5-1.8-1.3 1.6s-7 5.5-10.7 4.7c-3.8-.8-7.4-3.3-6.4-3.9s1.5-.4 1.4-.4zm-16.8 9.7s-4.2 0-6 .9c-2 .9-2.6 2-3.9 1.8-1.2-.1-2.2-1.8-1.8-2.4.5-1 3-2.4 7.7-2s4 1.7 4 1.7zm14.6 11.4c0-.2-.3-6.1-2.6-8.5a7 7 0 00-6.4-2.1c-1.3.3 4.7 2.9 5.3 4.6.6 1.7 2.5 6.5 2 7.7-.5 1.2-1.5-3.3-5.2-4.6s-8.7-.6-7.6 1 5.1.2 7.2 3.7 3.7 7.2 3.7 7.2l.6-2.5 2-.5.1-4.9 1-1.1z"/>
+    <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M257.8 358.5l-3.8-7.6s-1.2-4.9-4.4-6.2c-3.2-1.4-7.5-1.1-7.5.5-.1 1.7 6.8 3.7 7.3 4.6.4 1 .2 2.4-.4 2.5-.6 0-3.6-1.1-5.2-.7-1.6.3-2.5 2.4-4.8 1.8-2.3-.6-4.2-8-3.4-8.8 1-.7-1.7 1.4-2.2-.6-.5-2 .8-8-.1-8.7s-5.3-3.4-5.3-4c-.1-.4.2-29.6 24.6-5.4-10.5-12.4-14.6-11-16.5-11.2-1.4 0-10.9.9-13.3 13-2.4 12-5.2 4.5-5.2 4.5s-.5 5.2 2 6.7-1.2 5.9-1.2 5.9-4.6-11.2-3.9-16c-.9 3.9-.8 13.5 5 24a78 78 0 0029.9 21.1c8.9-13.6 8.4-15.2 8.4-15.4z"/>
+    <path fill="#8a9396" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M241.8 358.6s5 .6 6.3 3.1a24 24 0 012 6.4c.8-1.6 1.2-3 2.8-4.2s2.8-1.4 2.8-2.2c-.1-1-5.3-6.4-7.9-6.7-2.6-.3-7.1 2.8-7.1 2.8s-.9 1.2 1.2.8z"/>
+    <path fill="none" stroke="#8a9396" stroke-linecap="round" stroke-width="1.1" d="M253.1 371.4s12.8 5.9 33.8 6.2"/>
+    <path fill="none" stroke="#2b2b2b" stroke-linecap="round" stroke-width="1.1" d="M295.8 312.1s-1.1 10.7-9.4 32"/>
+    <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M294.1 318.7s-2.5 7.7-9.3 13.5"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gt.svg
new file mode 100644
index 0000000..761801c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gt.svg
@@ -0,0 +1,204 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gt" viewBox="0 0 512 512">
+  <defs>
+    <radialGradient id="a">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </radialGradient>
+    <radialGradient id="d" cx="447.4" cy="308.3" r="16.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="e" cx="451.6" cy="313" r="10.9" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="f" cx="454.1" cy="308.6" r="9.8" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="g" cx="458.4" cy="307.1" r="17.4" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="j" cx="446" cy="252.4" r="13" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="m" cx="477.9" cy="215.3" r=".3" gradientUnits="userSpaceOnUse">
+      <stop offset=".3" stop-color="#a50a0a"/>
+      <stop offset="1" stop-color="#4c0505"/>
+    </radialGradient>
+    <radialGradient id="n" cx="489.1" cy="210.3" r=".3" fx="489.1" fy="210.3" gradientTransform="scale(.97707 1.02346)" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#fff"/>
+      <stop offset="1" stop-color="#fff" stop-opacity="0"/>
+    </radialGradient>
+    <linearGradient id="h" x1="473.9" x2="472.4" y1="259.2" y2="232" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#b07e09" stop-opacity="0"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="i" x1="483.1" x2="485.5" y1="296.7" y2="326.6" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#b07e09" stop-opacity="0"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="k" x1="451.5" x2="455.4" y1="249.5" y2="240.6" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="l" x1="473.3" x2="475.9" y1="237.3" y2="270.4" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+  </defs>
+  <path fill="#4997d0" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M170.7 0h170.6v512H170.7z"/>
+  <g transform="translate(0 96) scale(.53333)">
+    <g stroke="#24420e">
+      <path fill="none" stroke-width=".4" d="M452.1 377.5c2.7-.4 4.2-1.2 6-1.8m2.3-4a13 13 0 013 4.6m-8.1-5.1a15.4 15.4 0 013 4.2m-49.5-136.6c-1 1.6-3.1 2.7-4.8 3.4m-.3-.2c0-1.4-.3-3 0-4.4m-2 5l.7 2m2 1l-2 .3m-4-.9c0 2.6.4 5.6.6 7.9m-1.8-1a6 6 0 001.6 1.9m-4.6 6.4c.5 1 1 2.2 1.3 4m3.7-4.6l-2 1.5m1.7 4.4c-1 .9-2.2 1.5-3.5 2.1m-3.8 40.4a16 16 0 004 4.7m.6 1.7a8 8 0 01-3-1m4.4 8.5l1.7 1m-.4 3.4c1.2.8 2.5 2.3 3.7 3.9m-1.4 2.8c1.4.3 2.5.7 3.2 1m-1 2.5h2m1.3-5.3l-.5 4.2m1 1.6l.4-1.6m4.7 6l-.1 3.2m39.2 28l-1.2 1.5m-2.4-4l-.7-1.7"/>
+      <g stroke-width=".2">
+        <path fill="#406325" d="M486.1 385c-.8-1.3-2-2.1-3.3-2.7-7.7-4-15.4-5.9-24-7.3-2.1-.3-4.1-2.2-6.2-3.2-5-2.3-10.5-3.2-15.3-5.7a7.8 7.8 0 01-2-1.5c-2-2.2-5.5-2.9-7.6-5-8.4-7.8-17.2-15-21.8-25.5-5.6-12.7-12.5-25.8-11.6-40.3.6-9-.7-18.3 1.5-27 3.4-12.9 7.6-25.6 15.4-36.3l-1.3.8a103.6 103.6 0 00-15.4 36.3c-2.3 8.7-1 18-1.5 27-1 14.5 6 27.6 11.5 40.3 4.6 10.4 13.5 17.7 21.8 25.6 2.2 2 5.6 2.7 7.6 5a10 10 0 002 1.5c4.9 2.4 10.4 3.3 15.4 5.7 2 1 4 2.8 6 3.1a76.4 76.4 0 0124.2 7.3 8 8 0 013.3 2.6l1.3-.8"/>
+        <g fill="#67923d">
+          <path d="M406.3 331.6a46.9 46.9 0 01-.2-23.5c6.7 13 4.5 23.7.2 23.5zm45.9 45.4c-7.1.4-20.6 9.3-21.9 11.4 15.1.1 24-7.3 21.9-11.4zm7.5-4.3a60 60 0 01-14-26.5c15 10.8 18.9 24.3 14 26.5z"/>
+          <path d="M454.6 372.8a55.1 55.1 0 01-16-22.8c15.3 8.2 20.3 20.2 16 22.8zM439 366c1-7.8-5.6-24.2-7.5-26-3 16.5 3 27.6 7.6 26zm-27.3-24.3a42 42 0 01.5-21c5.5 11.7 3.3 21.2-.5 21zM398 265a51 51 0 0121-16c-6.7 14.6-18 19.9-21 16z"/>
+          <path d="M398.7 259.3a51.7 51.7 0 0117.4-20c-3.7 15.7-13.7 23.2-17.4 20zm27.9 99.2c-5-6.2-8-23.9-7.3-26.4 11.2 12.5 12 25.2 7.2 26.4zM397.9 322c-7 1.1-21.4-4.6-23-6.3 14.6-3.2 24.4 2 23 6.3zm-2.2-9.7c.8-5.5 8.6-15.8 10.3-16.6-1 12-7.4 18.6-10.3 16.6zM447 371a57.1 57.1 0 00-26.1 13.6c18 .1 28.7-8.7 26.1-13.6z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M406.4 331.5c4.2.2 6.4-10.4-.3-23.4a79 79 0 01.3 23.4zm11.2 20a48.8 48.8 0 00-21.7-11.2c8.9 12.1 19.9 15.1 21.7 11.2zm-24.4-53a57 57 0 00-14.8-24c1.5 17.2 10.6 26.7 14.8 24zm8.4 34.3c-5-3.7-19-5.4-21-4.7 10.2 8.2 20.2 8.4 21 4.7zm-9.4-24.9a42 42 0 00-16.9-13.7c5.5 12.4 14.6 17 16.9 13.7zm2.7-47.5c1-7.6-5.5-23.4-7.3-25.2-2.9 16 2.9 26.7 7.3 25.2zm4.5-15a48 48 0 00-.5-24.3c-6.4 13.5-3.8 24.6.5 24.4z"/>
+          <path d="M404.4 237.8a40.2 40.2 0 003.5-19.4c-7.2 9.7-7 18.9-3.5 19.4zm6-6.1a38.9 38.9 0 009-17.4c-9.7 7-12.2 15.8-9 17.4zm-16 43.2c0 .9-1-8.2-10.1-18.3.4 14.8 6.2 20.4 10 18.3zm32.5 85.8a53.1 53.1 0 00-25.8-6c12.6 10.4 24.9 10.6 25.8 6zm12 5.2c-4.5 1.6-10.4-9.4-7.5-25.9a99 99 0 007.5 26zm13.4 11.2c2 4-6.8 11.4-21.8 11.3 12-5 21.2-9.9 21.7-11.3zm7.3-4.5c5-2.3 1.1-15.5-14-26.4 8.6 13.2 14.5 24.6 14 26.4z"/>
+          <path d="M454.6 372.7c4.2-2.7-.7-14.5-16-22.7 9.5 11.2 16.2 21 16 22.7zm-42.8-31c3.7.2 6-9.3.5-21 .7 11 .4 20-.5 21zM398 264.9c3 4 14-1.3 20.9-15.9a90.6 90.6 0 01-20.9 16z"/>
+          <path d="M398.9 259.3c3.6 3.2 13.5-4.3 17.2-20-8 11.3-15.6 19.8-17.2 20zm27.7 99.1c4.7-1.1 4-13.8-7.3-26.3 5 13.5 8 24.8 7.3 26.3zM397.7 322c1.4-4.3-8.3-9.4-22.8-6.3 12.3 2.2 22 5 22.8 6.3zm-2-9.7c3 2 9.3-4.6 10.4-16.6a68.8 68.8 0 01-10.3 16.6zM447 371c2.6 5-8 13.7-26 13.5 14.2-5.8 25.3-11.7 26-13.5z"/>
+          <path d="M399.4 326.3a45.1 45.1 0 00-17-15.8c5 13.6 14.2 19.1 17 15.8z"/>
+        </g>
+        <g fill="#67923d">
+          <path d="M392.4 274c4-4.7 17.5-9.2 19.6-9-8 10.5-18 12.6-19.6 9zm25 77.5c-1.7 4-12.6 1-21.6-11.1a84.8 84.8 0 0021.7 11.1zm-24.3-53c-4.2 2.7-13.1-6.8-14.7-24 6.6 13.3 13 23.5 14.7 24zm8.4 34.3c-.7 3.7-10.7 3.6-20.8-4.7a74.6 74.6 0 0020.8 4.7zm-9.4-25c-2.4 3.3-11.3-1.2-16.8-13.6 8.2 8 15.5 13.7 16.8 13.6zm2.7-47.5c-4.4 1.6-10.1-9-7.3-25 2.7 13.5 6 24.2 7.3 25zm4.5-14.9c-4.3.3-6.9-10.8-.5-24.3-.8 12.8-.5 23.2.5 24.3zm5-7.6c-3.4-.6-3.7-9.7 3.6-19.4a66.2 66.2 0 00-3.6 19.4zm6-6.1c-3.1-1.7-.7-10.4 9-17.4a66.2 66.2 0 00-9 17.4z"/>
+          <path d="M394.3 274.9c-3.9 2.1-9.6-3.5-10-18.3 5 11.7 8.6 17.8 10 18.3zm32.5 85.8c-.9 4.6-13.1 4.4-25.7-5.9 13.2 4.3 24.3 6.7 25.7 5.9zm-8.2-9.5A41 41 0 01412 332c9 8.7 10.2 18.1 6.8 19.2zm-16.8-25a44.3 44.3 0 01-3-23c8.3 11.9 7.3 22.7 3 23zm-2.7.1c-2.7 3.3-11.9-2.1-16.8-15.8a77.8 77.8 0 0016.8 15.8z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M392.4 274c1.6 3.6 11.4 1.5 19.5-8.9-12 6.8-16.7 9.8-19.5 8.9zm9.3 52c4.3-.3 5.3-11-3-22.8a72.8 72.8 0 013 22.9zm17 25.2c3.4-1 2.2-10.5-6.7-19.2 4.4 9.7 7.2 18 6.7 19.2z"/>
+          <path d="M394.2 291.8a41 41 0 00-4.3-25.6c-4.7 15.4-.2 26.6 4.3 25.6z"/>
+        </g>
+        <path fill="#67923d" d="M394 293.8c-6 1.3-8.7-12-4.1-27.1 1 13.5 2.8 26.1 4 27z"/>
+        <path fill="#67923d" d="M392.7 293.7a53 53 0 019-24.7c2 15.8-4.5 26.3-9 24.7z"/>
+        <path fill="#406325" d="M392.8 293.6c4.4 1.6 10.9-8.8 8.9-24.6-3.5 13.3-7.5 23.8-8.9 24.6z"/>
+        <path fill="#67923d" d="M394.1 303.3a50 50 0 0110.6-23.7c.8 16.2-6.3 25.9-10.6 23.7z"/>
+        <path fill="#406325" d="M394.2 303.4c4.2 2.2 11.3-7.3 10.5-23.5-4.4 12.8-9 22.9-10.5 23.5z"/>
+      </g>
+      <g fill="#ba1f3e" stroke="#511124" stroke-width=".2">
+        <circle cx="396.8" cy="251.3" r="1.1"/>
+        <circle cx="405.2" cy="245.1" r="1.1"/>
+        <circle cx="401.6" cy="241.7" r="1.1"/>
+        <circle cx="392.5" cy="313.1" r="1.3"/>
+        <circle cx="395" cy="297.1" r="1.3"/>
+        <circle cx="408.2" cy="334.5" r="1.3"/>
+        <circle cx="402.4" cy="336.4" r="1.3"/>
+        <circle cx="446.7" cy="367.6" r="1.3"/>
+        <circle cx="449.6" cy="374.7" r="1.3"/>
+      </g>
+    </g>
+    <g stroke="#24420e">
+      <path fill="none" stroke-width=".4" d="M561.1 259c.7.6 1.2.8 2.3 1.9m-6.6-19c0-1.3-.6-3.6-.9-5m3.5 3c0 2-.3 3.8-1.1 5.5m-4.2-.5c1.8 1.6 3.5 3 5.3 3.9m3.8 1.2c.1 2-.1 4-.7 6m.4 1.5l1.3-2.3m-1.9 12.2c1.4.3 2.8 2 3.5 3.5m.5-1.3l1.6-2.2m1.7 30.8a23.9 23.9 0 01-2.4 3.4m-4 0c.8 1.4 1.6 3 2.6 4m2.5 5.9a13.2 13.2 0 01-4.5 4m.2 4.5c-1.1.8-2.5 3-3.7 4.7m8.4-20.2l-2.1.9m-1.4-7.5l1.3 1.1m-9.3 37.4H555m-2-1.8l.7 1.6m-7.8 5.1c-.2 1.9 0 3.7.2 5.6m4.3-9l1 2.2m3.9-.2l-2.5.5m-30.9 25.2l-1 1.8m12-4c-1.5.2-2.8 0-4.1-.2m-5.5 6a27.3 27.3 0 00-3-1m-14.6 2.7c-1 .7-2 2.4-3.1 4m-.6-4.5c-2.4 1.3-3.1 3.7-4.4 5.8m2.8 2.9a52.4 52.4 0 01-5.3-2m16.7-.8c-2.3-1.2-4.7-1-7.1-1.4m10.8-.4c-3.7-.7-7-.6-10.3-.1m7.8-2.6l-1.4-.6m-5.6 5.5l-2.3-1.3m58-49.2c-1.3.8-2.6 2.3-3.8 3.9m1.8-79.6l-2.1-.8"/>
+      <g stroke-width=".2">
+        <path fill="#406325" d="M474.4 384.9a8 8 0 013.3-2.7c7.7-4 15.4-5.8 24-7.2 2.1-.4 4.1-2.3 6.2-3.2 5-2.4 10.5-3.3 15.3-5.7a7.8 7.8 0 002-1.6c2-2.2 5.5-2.9 7.6-5 8.4-7.8 17.2-15 21.8-25.5 5.6-12.7 12.5-25.8 11.6-40.2-.6-9.2.7-18.4-1.5-27a104.8 104.8 0 00-15.4-36.4l1.3.8a103.8 103.8 0 0115.4 36.3c2.3 8.7 1 18 1.5 27.1 1 14.4-6 27.5-11.5 40.3-4.6 10.4-13.5 17.6-21.8 25.5-2.2 2-5.6 2.7-7.6 5a10 10 0 01-2 1.5c-4.9 2.5-10.4 3.4-15.4 5.7-2 1-4 2.8-6 3.2A76.4 76.4 0 00479 383a8 8 0 00-3.3 2.7l-1.3-.9"/>
+        <g fill="#406325">
+          <path d="M553.6 334.6c2.8-7.4 0-24.8-1.4-27-6.7 15.4-3.4 27.6 1.4 27z"/>
+          <path d="M546.5 341.6c2.3-5.6.6-19.3-.4-21-5.6 11.7-3.3 21.3.4 21zm16.8-74.1a47 47 0 00-19.2-14.6c6.2 13.3 16.5 18.2 19.2 14.6z"/>
+          <path d="M561.8 259.5a43.3 43.3 0 00-14.5-16.7c3 13 11.4 19.3 14.5 16.7zm4.7 15c-3.5-4.1-15.2-8-17-7.8 7 9 15.6 10.9 17 7.7zm-2.8 46.3a40 40 0 0020.3-5.7c-12.9-2.8-21.5 1.9-20.3 5.7zm-.1-5.7c0-5.6-6.4-16.8-8-18-.6 12 4.8 19.5 8 18z"/>
+          <path d="M564 301.4a50 50 0 00-10.6-23.6c-.8 16.2 6.3 25.8 10.6 23.6zm-53 75.3a47.7 47.7 0 0022.2 11c-8.8-12.3-20.1-15.1-22.1-11z"/>
+        </g>
+        <g fill="#67923d">
+          <path d="M553.6 334.4c-4.9.6-8.1-11.4-1.4-26.8-.5 14.2.2 25.7 1.4 26.8zm-53.4 43.7a48 48 0 0121.8 11.4c-15 .1-24-7.3-21.8-11.4zm0-8c2-8 15-21.2 17.5-22.1-3.6 17.1-13.7 25.5-17.5 22.2zm21.3-4.2c-1-7.8 5.6-24.2 7.5-26 3 16.5-3 27.6-7.5 26zm21.4-14.5a48.8 48.8 0 0121.7-11.2c-8.9 12.1-19.9 15.1-21.7 11.2zm25.8-53.3c1-6.3 9.7-17.9 11.6-18.9-1.2 13.6-8.3 21-11.6 19z"/>
+          <path d="M557 336.2a50.4 50.4 0 0124.4-5.5c-11.8 9.7-23.5 9.8-24.4 5.5zm10.3-24.5a44 44 0 0117.7-14.4c-5.8 13-15.3 17.8-17.7 14.4zm-1.5-45.6c0-7.6 8-22.7 10-24.2 1.1 16.1-5.7 26.2-10 24.2zm-7-26a40.6 40.6 0 010-20c5.5 11 3.7 20.2 0 20zm-4.1-2.1a49.8 49.8 0 01-10.5-22.1c11.8 9.3 14.4 20.4 10.4 22.1z"/>
+          <path d="M566.3 272.5c-.3.9 3-7.7 14.2-15.3-4 14.3-11 18.3-14.2 15.3zm-34.1 90c7-5.2 26.5-7.7 29.2-6.8-14.2 11.8-28.2 12-29.2 6.7zm14.3-20.9c-3.7.2-6-9.3-.5-21-.7 11-.4 20 .5 21zm16.9-74c-2.7 3.5-13-1.3-19.2-14.7a78.8 78.8 0 0019.2 14.6zm-1.7-8.1c-3.1 2.6-11.3-3.6-14.4-16.7 6.7 9.4 13 16.5 14.4 16.7zm4.8 15c-1.4 3.2-9.9 1.3-16.9-7.7 10.4 5.9 14.5 8.5 17 7.7zm-2.6 46.2c-1.3-3.7 7.3-8.3 20.2-5.5a69 69 0 00-20.2 5.5zm-.4-5.6c-3.2 1.5-8.5-5.9-8-17.9a68.5 68.5 0 008 18z"/>
+          <path d="M563.9 301.6c-4.2 2.2-11.3-7.4-10.5-23.5 4.4 12.8 9 22.9 10.5 23.5zm-52.7 75c2-4 13.1-1.3 22 11a80.3 80.3 0 00-22-11z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M521.5 365.8c4.6 1.6 10.5-9.4 7.6-25.9-2.8 14-6.2 25.1-7.6 26z"/>
+          <path d="M531.8 360.6a55 55 0 004.6-27c-10 13.6-9.4 26.3-4.6 27zM500.1 378c-2 4.1 6.7 11.5 21.8 11.3a80.2 80.2 0 01-21.8-11.3zm.2-8c3.8 3.3 13.8-5 17.4-22.1-8.1 12.4-15.7 21.8-17.4 22zm42.7-18.7c1.8 4 12.7 1 21.7-11.1a84.5 84.5 0 01-21.7 11.1zm25.8-53.3c3.3 2.1 10.3-5.3 11.5-18.8a74.6 74.6 0 01-11.5 18.8zM557 336.2c.9 4.4 12.4 4.2 24.3-5.5-12.5 4-23 6.2-24.3 5.5zm10.3-24.6c2.5 3.4 11.9-1.4 17.7-14.4a75.1 75.1 0 01-17.7 14.4zM566 266c4.3 2 11-8 10-24-4.2 13-8.5 23.3-10 24zm-7-25.9c3.6.1 5.5-9 0-20 .9 10.5.8 19.1 0 20zm-4.2-2.2c4-1.7 1.4-12.7-10.4-22a81.8 81.8 0 0110.4 22zm11.6 34.7c3.2 3 10.2-1 14.2-15.4-7.8 10.1-12.7 15.2-14.2 15.4zm-34 89.9c1 5.2 14.9 5 29-6.7-14.9 4.8-27.4 7.6-29 6.7z"/>
+          <path d="M539.1 354.8a41 41 0 003.6-20.1c-7.5 10-7.2 19.5-3.6 20zm19.6-28.7a44.3 44.3 0 003-23c-8.3 11.9-7.3 22.7-3 23z"/>
+        </g>
+        <path fill="#67923d" d="M531.8 360.5c-4.8-.6-5.3-13.3 4.5-26.8-3.6 13.8-5.4 25.4-4.5 26.8zm35.2-68.3c-1-7.7 4-20.1 6.6-22.5 2.5 14.4-2.7 24-6.7 22.5zm-28 62.5c-3.6-.5-3.9-10 3.5-20a67.5 67.5 0 00-3.5 20zm23.4-104.2c-2.2-6 0-20 1.2-21.8 5.3 12.2 2.6 22.1-1.2 21.8zm-58.1 120.1c2.5-8 16.2-21 18.8-21.9-4.3 17.4-15 25.5-18.8 22zm54.5-41.6a45.1 45.1 0 0117-15.8c-5 13.6-14.3 19.1-17 15.8zm-.1-3c-4.3-.4-5.3-11 3-22.9a72.8 72.8 0 00-3 22.9z"/>
+        <path fill="#406325" d="M567 294c5.2 1.9 9-9.8 6.6-23.9a98.2 98.2 0 01-6.6 24z"/>
+        <path fill="#406325" d="M567.8 293.6c.5-7.5-7-23-9-24.7-2 15.8 4.5 26.3 9 24.7zm-5.2-43.2c3.8.4 6.4-9.4 1.1-21.7a73 73 0 01-1.2 21.7zm-58.1 120.1c3.8 3.6 14.4-4.4 18.7-21.8-8.8 12.3-17 21.6-18.7 21.8zm54.6-41.5c2.8 3.3 12-2.1 17-15.8a77.8 77.8 0 01-17 15.8z"/>
+        <path fill="#67923d" d="M567.7 293.5c-4.5 1.7-10.9-8.7-8.9-24.5 3.5 13.2 7.5 23.7 8.9 24.5z"/>
+      </g>
+      <g fill="#ba1f3e" stroke="#511124" stroke-width=".2">
+        <circle cx="564.6" cy="254.9" r="1.1"/>
+        <circle cx="568.4" cy="266.8" r="1.1"/>
+        <circle cx="569.8" cy="304.3" r="1.3"/>
+        <circle cx="564.6" cy="297.3" r="1.3"/>
+        <circle cx="549.9" cy="337.2" r="1.3"/>
+        <circle cx="556.2" cy="339.9" r="1.3"/>
+        <circle cx="513.8" cy="372.3" r="1.3"/>
+        <circle cx="506.8" cy="377.3" r="1.3"/>
+        <circle cx="557" cy="249.3" r="1.1"/>
+      </g>
+    </g>
+    <g id="b" fill="#8c959d" stroke="#485654" stroke-width=".1">
+      <path d="M434.3 336.3c-.2 1 .8 2.3 2 2 .5 0 .7-.5.2-.5-.4.1-.9 0-1.2-.3a1.7 1.7 0 01-.4-2l-.6.8z"/>
+      <path stroke="none" d="M437.2 338.3c-1 1.2-2.5 1.7-3.4.9-.6-.6-.8-1.2-.5-2l-1 1.3a4.4 4.4 0 001.6 1.8c1.2.5 3-.3 4-1.6.8-1 1.6-2.4 1-3.6a4 4 0 00-2-1.7l-1 1c.5-.2 1.2 0 1.7.4 1.3 1 .5 2.5-.4 3.5z"/>
+      <path fill="#485654" stroke="none" d="M437.2 338.3a4 4 0 01-1.1 1c-.5.2-1 .4-1.5.3a1.5 1.5 0 01-.7-.3 2.4 2.4 0 01-.5-.6 1.6 1.6 0 01-.3-.7c0-.3 0-.5.2-.8l.1.1-1.1 1.2c.3.4.6.9 1 1.2l.7.5a2 2 0 00.8.1 3 3 0 001.6-.5 5.1 5.1 0 001.3-1l1-1.4c.2-.5.3-1 .3-1.6a1.8 1.8 0 00-.2-.8 3 3 0 00-.5-.6 4.2 4.2 0 00-1.4-1h.1l-1 1.1h-.1c.2-.2.5-.2.8-.2a2 2 0 011.6 1.4c.1.5 0 1-.2 1.4a5.1 5.1 0 01-.9 1.2zm0 0c.4-.3.6-.7.8-1.2.2-.4.3-1 .2-1.4a2 2 0 00-.9-1c-.4-.3-1-.4-1.3-.2h-.1l1-1.2a4.2 4.2 0 012 1.6c.2.3.3.6.3 1 0 .5-.1 1-.4 1.6a6.4 6.4 0 01-1 1.4c-.3.5-.8.8-1.3 1.1-.5.3-1 .5-1.7.5a2.2 2.2 0 01-.8-.1 2.7 2.7 0 01-.8-.5 5 5 0 01-1-1.4l1-1.3h.2l-.1.8c0 .2 0 .5.2.7l.5.5.6.3c.5.1 1 0 1.5-.3a4 4 0 001.1-.9z"/>
+      <path fill="#6c301e" stroke="#351710" stroke-linejoin="round" stroke-width=".2" d="M515.2 249.3l-40.1 39.5L434 328l-4.6 5.4c-2 2.3-4.4 5.3-7.2 8-.4.6-1.1.4-1.7.8a23.4 23.4 0 00-5 4.3L403.2 360c-.7.9-1 1.4-.4 2l6.6 8.8c1.2 1.2 2.6 1.8 3.2.8 3.1-5.5 11-13.8 14-20.3 1.7-4 3.9-11.1 5.5-12.8 2-2.2 7.1-7.8 11.8-12.7l1-1 .9-1c23.5-24 50.7-53.1 70.5-73.6l-1-1z"/>
+      <path d="M431.9 328.1c-1.2 0-2-.7-2.9-1.4 1.2.4 2.4.8 3.5.4l-.6 1z"/>
+      <path fill="#b2b6ba" stroke-width=".2" d="M557 220.1l-31.8 26.2c-.3.4-.6.3-.9 0l-2.9-2.4v-.6l1.4-1.4c.2-.2 0-.3-.1-.6l-.6-.6c-.3-.1-.5 0-.7.2l-1.4 1.5c-.7 0-1.3.6-1.4 1.4-19.2 18.7-35.8 35.4-54.9 53.8l-22.6 21.6c-.8 1-4.3 2.9-6.6 4.4a5.6 5.6 0 00-1.8 1.5l-1.8 5.5-2.5 4.2c2.3 2.4 2.2 2.2 3.8 3.7l11.2-11.9.8-1a13.2 13.2 0 00-1.4-1.6 34.1 34.1 0 00-1.2-1l-.6-.6c-.2-.2.2-.5.4-.7 26.5-25.5 55-53.7 78.3-76.6a1.4 1.4 0 001 0l2.8 3.2c.6.6 1.2.6 1.7.4l31.9-28.6z"/>
+      <path fill="#485654" stroke="none" d="M431 330.4h.5a1.5 1.5 0 00.6-.1 124.9 124.9 0 011.5-4.8 1.5 1.5 0 00-.7-.4c.3 0 .5.2.7.4l-.7 2.4-.7 2.4a1.4 1.4 0 01-.6.2 2.9 2.9 0 01-.7-.1z"/>
+      <circle cx="438.2" cy="328.1" r=".6" fill="none" stroke-width=".2"/>
+      <circle cx="434.4" cy="331.9" r=".6" fill="none" stroke-width=".2"/>
+      <path fill="#485654" stroke="none" d="M441 322.4l-1-.8a11.6 11.6 0 01-.8-.8 11.4 11.4 0 011.8 1.6z"/>
+      <path d="M502.2 259l3.5 3.5.6-.6-3.5-3.4-.6.6z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-177.2 487 -.2)" xlink:href="#b"/>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#67923d" d="M434 365.4a55.9 55.9 0 00-29.3.9c16.3 8 29.5 4.6 29.2-1zm89 3.3a55 55 0 0129.2 1c-16.3 7.9-29.6 4.5-29.3-1z"/>
+      <path fill="#406325" d="M433.8 365.5c.3 5.5-12.8 8.9-29.1.9 15.3 1 27.8.4 29-1zm89.3 3.3c-.3 5.5 12.8 8.9 29 .9-15.2 1-27.7.4-29-1z"/>
+    </g>
+    <g id="c">
+      <path fill="#b2b6ba" stroke="#485654" stroke-width=".2" d="M508.5 360a237.5 237.5 0 00-76.1-68c3.6-.2 11.5 3.9 14.7 6 23.9 15.4 44.3 35.7 65.6 59.8a35.1 35.1 0 01-3.4 3l-.8-.8z"/>
+      <path fill="#8c959d" d="M510.6 359.8L509 361c-23-29.6-55.1-57.9-76.7-69.1 30.1 13.9 55.4 41.8 78 67.7h.2z"/>
+      <path fill="#485654" d="M510.6 359.8L509 361a302.3 302.3 0 00-16.9-19.7 336 336 0 00-18.3-18.3 284.2 284.2 0 00-19.8-16.8 195.9 195.9 0 00-10.6-7.6c-3.6-2.3-7.3-4.6-11.1-6.6v-.2a136 136 0 0122.5 13.3 210.9 210.9 0 0120 16.6 360 360 0 0118.3 18.5c6 6.4 11.6 13 17.4 19.4zm0 0a899.3 899.3 0 00-17.5-19.4 360.2 360.2 0 00-18.3-18.5 212 212 0 00-20-16.6 134.7 134.7 0 00-22.4-13.2v-.2a200.9 200.9 0 0121.7 14.3A285 285 0 01474 323a336 336 0 0118.3 18.3 302.3 302.3 0 0116.8 19.8l1.5-1.4z"/>
+      <g fill="#fab81c" stroke="#6c301e" stroke-width=".1">
+        <path stroke-width=".2" d="M517.5 355a18.3 18.3 0 00-5.3 2.3c-.2 1.4-2 3-3.6 3.3l-.5-.8a.1.1 0 00-.2 0 7.2 7.2 0 00-.6.3c-.6 0-1.3.2-1.6 1-.4 1 .4 2.3 1.2 3.1 1 .7 1.4 1 2.4 1 1.1-.3 1.7-1.3 2-1.6 3.7 4.5 6.5 7 11.2 10.6 2.1 0 3.2-1.3 2.5-2.8-.2-.5-.8-.8-1.3-.6v-.5c2.4-2.2 3.5-5 .9-9.9-2.2-4-4.7-5.3-7-5.3zm6.3 4.6l1 2c1.5 3 .2 6.6-2.4 7.8h-.2c.4-.7-.8-2.2-1.4-1.7.3-.7-.7-2-1.5-1.7.4-.7-.5-1.9-1.4-1.5.4-.7-.3-1.8-1.3-1.6.3-.9-.4-1.8-1.3-1.6 0-.8-.2-1.2-.5-1.5 1-.8 2.3-2.1 3.4-2.7 2.7-1.2 4.4 1 5.5 2.5z"/>
+        <path d="M524.9 362.8c-.5-.3-.8-.8-.6-1.1.2-.4.7-.5 1.2-.2.5.2.8.7.6 1-.1.4-.7.5-1.2.3z"/>
+        <path d="M524.6 361.8c-.5-.3-.8-.8-.6-1.2.2-.3.7-.4 1.2-.1.5.2.8.7.6 1-.1.4-.7.5-1.2.3z"/>
+        <path d="M524 360.6c-.5-.2-.8-.7-.6-1 .2-.4.7-.5 1.2-.3.5.3.8.8.6 1.1-.1.4-.7.5-1.2.2z"/>
+        <path d="M523.2 359.6c-.5-.3-.8-.8-.6-1.1.2-.3.7-.4 1.2-.2.5.3.8.8.7 1.1-.2.3-.8.5-1.3.2z"/>
+        <path d="M522.2 358.6c-.6-.2-.8-.8-.6-1v-.2c.2.1.7.2.6-.1 0-.2-.1-.3 0-.2l.6.2c.5.3.8.8.6 1.1-.2.4-.7.5-1.2.2z"/>
+      </g>
+      <path fill="#fab81c" d="M511.3 363.6c.6-1.8 2-3.4 3.5-3.8m-3.3 4c1.3.3 3.3-1.2 3.8-2.5m-2.6 4c1.6.4 3.3-1.2 4-2.4m-2.5 4c2 0 3.1-1.3 3.7-2.4m-2.2 4c1.6 0 3.2-1.4 3.6-2.5m-2.2 3.8a4 4 0 003.7-2m-2 3.4c1.6.1 3-.9 3.4-1.8m-1.6 3.3c1.6 0 2.7-1 3.1-2"/>
+      <path fill="#6c301e" d="M511.3 363.6a7.1 7.1 0 011.3-2.3l1-1 1.2-.5a4 4 0 00-1.2.6l-1 1a9.3 9.3 0 00-1.3 2.2zm.2.3c.4 0 .8 0 1.2-.2a4.9 4.9 0 001-.6l1-.8.6-1a2 2 0 01-.6 1 5 5 0 01-1 .9 4.6 4.6 0 01-1 .5 2.1 2.1 0 01-1.2.2zm1.2 1.4h1.2l1-.6a6.2 6.2 0 001.7-1.8 4.7 4.7 0 01-.7 1 5.2 5.2 0 01-.9.9 3.7 3.7 0 01-1 .5h-1.3zm1.5 1.6a4.2 4.2 0 001.1-.2 3.8 3.8 0 001-.5 4.7 4.7 0 001-.8l.6-1a4.5 4.5 0 01-1.5 1.9 3.4 3.4 0 01-2.2.6zm1.5 1.5a4.1 4.1 0 002.1-.8 5.1 5.1 0 001.5-1.6c-.1.3-.3.7-.6 1l-.8.7a4.2 4.2 0 01-1 .5c-.4.2-.8.2-1.2.2zm1.5 1.4a7 7 0 001-.2 4.6 4.6 0 001-.4 3.6 3.6 0 001.6-1.5l-.6 1c-.3.2-.6.5-1 .6a4.5 4.5 0 01-2 .5zm1.6 1.4h1a4 4 0 001-.5l.8-.5c.3-.3.5-.5.6-.8a2.5 2.5 0 01-.5.8 3.6 3.6 0 01-.9.6 3.7 3.7 0 01-2 .4zm1.8 1.5a4 4 0 001-.1 3.3 3.3 0 001.6-1 4 4 0 00.5-.8 3 3 0 01-1.2 1.5 3 3 0 01-1 .3 3 3 0 01-1 0z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-176.6 490 -.4)" xlink:href="#c"/>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#406325" d="M409.2 240a52.4 52.4 0 0019.5-17.9c-15.6 4.2-22.7 14.4-19.5 18zm145.8 4.7a50 50 0 00-15.6-19.9c2.8 15.2 12 22.8 15.6 20z"/>
+      <path fill="#67923d" d="M409.2 240c-3.3-3.5 3.8-13.6 19.4-17.8-11 8.4-19.2 16.2-19.4 17.8zm145.8 4.7c-3.7 3-12.7-4.6-15.5-19.7 7.2 11 14 19.5 15.5 19.7z"/>
+    </g>
+    <g stroke="#999270" stroke-width=".2">
+      <path fill="url(#d)" d="M452.2 318.1s-6.2.7-7.9-7.8c-1.8-9.1 5.3-10 5.3-10s8.1-.9 13.2-1l2.2 18-12.8.8z"/>
+      <path fill="url(#e)" d="M453 315.4s-4 .7-4.8-5.6c-.6-4.5 2.2-5.1 2.2-5.1l9.2 1.6v8.2l-6.6.9z"/>
+      <path fill="url(#f)" d="M450.4 304.7s5.9-.4 9-.8l1.3 5.7-7.1.4s-.5-5.1-3.2-5.3z"/>
+      <path fill="url(#g)" d="M449.2 300.4s7.5-1.9 8.5 6.5c.2 2.1-1 7.1-4.7 8.5l13.9-1.5-1.3-15-4.6.4s-10 .3-11.8 1z"/>
+      <path fill="#f9f0aa" d="M452.2 318.1s51.9-3.5 57.2-3.3c15.8-8.6 0-42.5-13.3-61.5 1.5-4.3-29.9-13.9-44-13-1.9 0-3.6.2-5.2.3-7.7.8-7.8 10.7-4.7 17 3 6 30.3 55 11.2 60.3l-1.2.2z"/>
+      <path fill="url(#h)" d="M507.8 273.3a148.3 148.3 0 00-11.7-20c1.5-4.3-29.9-13.9-44-13-1.9 0-3.6.2-5.2.3-7.7.8-7.8 10.7-4.7 17 1 1.8 4.3 8 7.9 15.7"/>
+      <path fill="url(#i)" d="M455 285c5.6 14.6 8.7 30-1.6 32.8l-1.2.3s52-3.5 57.2-3.3c8.6-4.7 7.8-16.8 3.2-30"/>
+      <path fill="url(#j)" d="M447.4 243.5c-3.7 0-4.7 3.6-4.6 5.8.1 6 4.6 6.2 4.6 6.2l6-.3 2.8-12.2-8.8.5z"/>
+      <path fill="url(#k)" d="M447.4 243.5l8.8-.5 1 9.1-7.8.4s2.5-7.3-2-9z"/>
+      <path fill="url(#l)" d="M496.1 253.3c6.7-1 6.6-10 2-13.7-15.5-.5-35.9-.1-50.6 1 1.7 0 6.3.4 6.9 6.5a8.2 8.2 0 01-3 7c-2 1.4-4 1.4-4 1.4h3.6l3-.4c21-2.7 42-1.8 42-1.8h.1z"/>
+      <path fill="#b07e09" stroke="none" d="M458.5 267.4c-.2-.3-.3-.7-.8-.8-.2 0-.6 0-.5-.4h.8l1.6-.2c.4.1.3.6 0 .5-.5 0-.2.5-.1.8l1.3 3c.1.4.4.7.7.7l1.1-.1c.3-.2.2-.6.2-1-.1-.3.5-.2.5 0l.4 1.4c0 .2-.2.1-.4.1l-3 .2c-.3 0-.8.3-1 0 0-.4.6-.2.6-.5l-.3-1-1.1-2.7zm4.8-.3c-.1-.3-.3-.7-.7-.8-.2 0-.6 0-.6-.4h.7l1.7-.2c.3 0 .4.5 0 .4-.3 0-.3.4-.2.7l1.5 3.4c0 .2.2.5.5.6.3 0 .7 0 .7.3 0 .2-.4.1-.6.1a6.6 6.6 0 00-1.6.2c-.2 0-.5 0-.5-.3s.5 0 .6-.4c0-.3-.2-.6-.4-1l-1.1-2.6zm4.5.7c0 .2.4 0 .5 0 .3 0 .6-.1.6-.4a1.7 1.7 0 00-.7-1.2c-.3-.3-.8-.2-1.1-.2l.1.5.6 1.3zm.6 1.6c.2.3.3.7.6 1 .2.2.6.1.8 0 .3 0 .5-.3.4-.5-.1-.7-.5-1.3-1.2-1.5a2.4 2.4 0 00-1 0l.2.5.2.5zm-2-2.4c-.2-.3-.3-.7-.7-1-.2 0-.6.1-.7-.2 0-.3.6-.1.8-.2.9 0 1.7-.3 2.6 0 .7.2 1.4.8 1.5 1.6 0 .4-.3.7-.6.8l.5.1c.6.2 1.1.6 1.4 1.1.2.4.3 1 0 1.4-.4.4-1 .4-1.4.4-.8 0-1.5 0-2.3.2-.2 0-.4-.5 0-.5.3 0 .3-.4.2-.6l-1.3-3zm7.4-1.9c.3 0 .4.3.5.5l.3.9c-.3.2-.5-.2-.6-.4-.1-.2-.4-.5-.7-.4a8.3 8.3 0 00-1.2 0c-.2.2 0 .4.1.6l.6 1.3c.2 0 .6 0 .8-.2 0-.2-.3-.7.2-.6.3.2.2.6.4.9l.5 1.1c-.3.3-.5-.1-.6-.4-.2-.3-.7-.3-1-.3-.2 0 0 .2 0 .3l.6 1.5c.2.3.7.3 1 .3.4 0 .8 0 1-.4.2-.2-.3-.7 0-.8.4 0 .4.4.5.6 0 .3.2.6.3.8 0 .2-.3.2-.4.2l-3 .2c-.4 0-.9.2-1-.2 0-.3.6-.1.6-.6l-.4-1-1.1-2.6c-.2-.3-.4-.6-.8-.7-.2 0-.6 0-.4-.4h1l2.8-.2zm2.3 1.3c-.1-.3-.3-.7-.7-.9-.2 0-.7 0-.7-.4.3-.2.7 0 1 0 .8 0 1.6-.3 2.4 0 .8.2 1.5.9 1.6 1.8 0 .4-.3.7-.7.8-.3 0 .2.1.3.2.7.3 1 .9 1.4 1.5.1.2.5.7.6.2 0-.5.7 0 .5.3 0 .4-.3.6-.7.6-.4 0-.9-.2-1.1-.6-.4-.6-.7-1.3-1.3-1.7-.2-.2-.5-.3-.8-.1v.4l.6 1.2c.2.3.6.3 1 .3.3.1.2.6-.2.5h-1.7c-.3.2-.9 0-.7-.3.3 0 .7-.2.5-.5l-1-2.6-.3-.7zm1.4 1c.2.3.6 0 .9 0 .3 0 .3-.5.2-.7-.1-.5-.4-1-.9-1.2-.2 0-.8-.2-.9.1l.7 1.6v.1zm7.2 1.6c.2.3.3.6.6.7.2 0 .6 0 .7.3 0 .3-.4.1-.6.2a7 7 0 00-1.6 0c-.3.1-.6 0-.6-.3.2-.2.7 0 .7-.4l-.5-1.1-1.1-2.9c-.1-.3-.5-.3-.7-.3-.3 0-.7 0-.7.4 0 .3.2.7 0 .8-.3 0-.4-.3-.5-.5l-.3-1c0-.2.3-.1.4-.1l4.2-.2c.3 0 .5.2.5.5s.3.6.4 1c-.1.3-.5 0-.5-.3-.2-.3-.6-.6-1-.7-.2 0-.6 0-.8.2l.2.7 1.2 3zm3.8-.9c-.2 0-.1.3-.1.4v.8c.1.3.5.3.8.4.2 0 .1.5-.2.4h-1.2c-.3.1-.7-.1-.5-.4.2 0 .4-.1.5-.3v-5c.2-.3.6 0 .6.1l3.6 4.6c.2.2.5.4.8.4.3 0 .4.5 0 .4h-1.5c-.2 0-.5.2-.7 0-.2-.1 0-.4.2-.4.3 0 0-.4-.1-.6l-.6-.8h-1.6zm1.1-.5c.2 0 0-.1 0-.2l-1.3-1.7v2h1.3zm3.1-1.8c-.1-.4-.3-1-.8-1-.3 0-.7-.2-.5-.5h1.7c.7 0 1.4 0 2 .2a4.3 4.3 0 013 3.4c0 .6-.1 1.3-.6 1.6-.8.5-1.7.4-2.5.3l-1.4.1c-.3 0-.4-.5 0-.4.4 0 .4-.5.2-.7l-1.1-3zm2 2.5c.1.3.2.7.5 1h1c.5 0 .7-.5.7-.9a4.3 4.3 0 00-.6-2.1 2.7 2.7 0 00-1.8-1.4h-1c-.1 0 0 .2 0 .4l1.2 3zm-21.1 12.4c0 .3.4.6.8.6.2 0 .7 0 .7.4-.2.2-.5 0-.8 0a8.6 8.6 0 00-1.5.2h-.9c-.2 0-.2-.4.1-.4.3 0 .6-.1.7-.4 0-.3-.2-.6-.3-.8l-1.2-2.8c0-.3-.4-.3-.7-.3-.2 0-.6.1-.7-.2 0-.3.5-.2.7-.4l1-.3c.2 0 .3.1.4.3l1.7 4zm.7-4.5h2c.4 0 .2-.5.4-.5.4 0 .4.5.4.7a.5.5 0 01-.6.6H475l.5 1.2.6-.2a2.8 2.8 0 012.6 1.6c.2.4.3 1 0 1.5-.4.5-1 .6-1.6.6-.5 0-1-.1-1.4-.6-.1-.2-.1-.7.2-.6.4 0 .7.2.7.6.1.2.5.1.7.1.3 0 .6-.2.6-.6 0-.4-.2-1-.5-1.3-.2-.4-.7-.7-1.2-.7l-.9.1c-.3 0-.3-.3-.4-.5a23.9 23.9 0 01-.7-1.9s.1-.2.2-.1zm6.9 1c-.2-.4-.4-.9-.9-1-.2 0-.7-.2-.4-.4h1.6a3 3 0 012.1.1 4.3 4.3 0 013 3.4c0 .6-.1 1.2-.7 1.5-.7.5-1.6.4-2.4.4l-1.3.2c-.3 0-.4-.5 0-.5s.3-.4.2-.7l-1.2-3zm2 2.4c.2.4.3.8.6 1 .3.2.6.1 1 0 .4 0 .6-.5.6-.9a4 4 0 00-.7-2.1 2.6 2.6 0 00-1.8-1.3 3 3 0 00-1 0v.3l1.3 3zm6.4-4.2c.3 0 .4.3.5.5 0 .3.2.5.3.8-.2.3-.5 0-.6-.3-.1-.2-.3-.5-.6-.5a9.7 9.7 0 00-1.3 0c-.2.2 0 .5 0 .6l.6 1.4c.3 0 .6 0 .8-.2.2-.2-.2-.7.2-.6.4 0 .3.5.4.8l.5 1.1c-.1.4-.5 0-.6-.3-.1-.3-.5-.3-.8-.3-.2 0-.4 0-.2.2l.6 1.5c.2.4.7.3 1 .3.4 0 .8 0 1-.3.2-.2-.2-.6 0-.8.4 0 .5.3.5.5l.3 1c0 .1-.3 0-.4 0l-3.1.2c-.3 0-.7.2-.9 0-.2-.5.5-.3.6-.6l-.3-.9-1.1-2.9c-.2-.3-.4-.6-.8-.7-.2 0-.6 0-.4-.4h1l2.8-.1zm-27.2 14.3c.1.5.6.7 1 .8.8.2 1.7.5 2.2 1.1.3.4.5.9.5 1.4 0 .5-.5.9-1 1a2.5 2.5 0 01-1.7-.1c-.2-.1-.1.4-.4.2-.3-.1-.2-.5-.4-.8a9 9 0 00-.3-1c0-.3.4 0 .5.2.3.6.9 1 1.6 1.1.4 0 .8-.2.8-.6 0-.5-.4-1-.8-1.2-.7-.3-1.4-.4-2-.8a2 2 0 01-1-1.6c0-.4.4-.8.8-.9a2.6 2.6 0 011.6 0c.2 0 .3-.3.6-.1 0 .2 0 .4.2.6l.3.9c-.2.2-.5 0-.5-.2-.3-.4-.6-.8-1-.8s-.8 0-1 .3v.5zm6.6-1.7c.4 0 .4.3.5.5 0 .3.2.6.3.8-.2.3-.5 0-.6-.2-.1-.2-.3-.5-.7-.5h-1.2c-.2.2 0 .4 0 .6l.5 1.4c.3 0 .6 0 .8-.2.2-.2-.2-.6.1-.7.4 0 .4.4.5.7 0 .4.3.8.5 1.3-.2.3-.6 0-.6-.3-.1-.3-.5-.4-.8-.3-.2 0-.4 0-.3.2l.6 1.5c.1.3.4.3.7.3.4 0 .9 0 1.2-.3.2-.2 0-.6 0-.8.3-.2.6 0 .6.3l.2 1c0 .2-.3.2-.4.2l-3 .2c-.4 0-.8.3-1 0 0-.4.5-.3.6-.6 0-.3 0-.5-.2-.8l-1-3c0-.3-.3-.6-.7-.6-.2 0-.6-.2-.4-.4h1l2.8-.3zm4.2 4.2c.1.3.3.6.6.7.3 0 .7-.1.8.2 0 .4-.5.2-.7.2a6.3 6.3 0 00-1.6.1c-.2 0-.5.2-.6-.1 0-.4.5-.2.6-.4l-.1-.8-1-3c-.2-.3-.3-.7-.7-.7-.2 0-.6 0-.5-.4.1-.2.5 0 .7 0 .7 0 1.4-.3 2.2-.2a2 2 0 011.7 1.2c.2.4.2 1 0 1.3-.5.4-1.1.5-1.7.6-.2 0 0 .2 0 .3l.3 1zm-.5-1.8h.6c.3-.1.5-.4.4-.7a2.2 2.2 0 00-.5-1.2c-.3-.3-.8-.3-1.1-.2-.2.1 0 .3 0 .5l.5 1.6zm6.1 1.5c0 .2.2.6.5.6.2 0 .7 0 .7.3s-.5.2-.7.2a7 7 0 00-1.6.1c-.2 0-.5 0-.5-.3.2-.2.7 0 .7-.4l-.3-1.2-1-2.9c0-.3-.4-.3-.7-.2-.2 0-.6 0-.7.3v.8c-.2.2-.4 0-.4-.3a6.6 6.6 0 00-.4-1c0-.3.3-.3.5-.3l4.1-.2c.3 0 .5.2.5.5l.4 1c-.1.2-.5 0-.5-.2-.2-.3-.5-.7-1-.8-.2 0-.5 0-.8.2l.2.6 1 3.2zm2.1-3.3c-.1-.3-.2-.7-.6-.8-.2 0-.6 0-.6-.4.1-.2.4 0 .6 0l1.8-.2c.3-.1.5.4.2.4s-.6.2-.5.5l.5 1.6.7 2.2c0 .2.3.4.5.4.3 0 .7 0 .6.4h-.7l-1.6.2c-.2 0-.5-.2-.4-.4.2-.1.6 0 .6-.4l-.3-1.2-.8-2.3zm5.8-1.6c.3 0 .3.3.4.5l.2.8c-.1.3-.5 0-.5-.2-.1-.3-.3-.6-.7-.6a9.7 9.7 0 00-1.2 0c-.2.2 0 .5 0 .6l.5 1.4c.2 0 .5 0 .8-.2.2-.2-.2-.6.1-.7.4 0 .4.5.4.7l.5 1.3c-.1.3-.5 0-.5-.2-.1-.3-.5-.4-.8-.4-.1 0-.5 0-.3.2l.5 1.5c.1.3.4.4.7.3.4 0 .9 0 1.2-.2.2-.2 0-.6.1-.9.3-.2.5.1.5.4a9.3 9.3 0 00.3 1c0 .2-.3.2-.5.2l-3 .1c-.3 0-.7.2-1 0-.1-.4.5-.3.6-.5a1 1 0 00-.1-.8l-1-3c0-.3-.3-.7-.7-.7-.2 0-.6-.2-.4-.4h1l2.9-.2zm2 1c-.1-.4-.4-.7-.8-.7-.3.1-.5-.6 0-.4h1.5l.7.9 2.1 2.9v-.3l.4-3.6c.2-.2.7 0 1-.2.3 0 1 0 .8.4-.4 0-.8.2-.6.6l1.2 3.6c0 .4.4.6.8.5.3 0 .3.6 0 .5H494c-.3.1-.8.1-.6-.3.3 0 .8-.2.5-.6l-1-3.2c.1.1 0 .3 0 .4l-.2 3-.1.8c-.3.1-.4-.1-.5-.3l-2.9-3.7.2.3c.3 1 .5 2 .9 2.9 0 .4.5.5.8.5.4.2.1.5-.2.4h-1.5c-.3 0-.3-.4 0-.4.5 0 .4-.5.2-.8l-1-3.3zm8.7.8c0 .2.4 0 .5 0 .3 0 .7 0 .7-.4 0-.5-.2-1-.5-1.2-.4-.3-.8-.2-1.2-.2l.1.5.4 1.3zm.5 1.6l.4 1c.3.2.6.1.9.1.2 0 .5-.2.4-.5 0-.6-.3-1.3-.9-1.5a2.4 2.4 0 00-1 0v.3l.2.6zM496 288c-.1-.4-.2-.8-.6-1-.2 0-.6 0-.6-.3s.5 0 .7-.1c1 0 1.8-.3 2.7 0 .7.2 1.3.9 1.3 1.6 0 .4-.3.7-.7.9 0-.2.4 0 .5 0 .5.2 1 .6 1.2 1.1.2.5.3 1 0 1.4-.4.4-1 .4-1.5.4l-2.3.1c-.3 0-.4-.5 0-.4.3 0 .4-.4.2-.7l-.9-3zm5-.2c0-.3-.2-.8-.6-1-.2 0-.6 0-.6-.3.2-.3.6 0 1-.1h2c.8 0 1.5.6 1.7 1.4.2.4 0 1-.3 1.2l-.5.2c.6.2 1.1.7 1.4 1.2l.5.8c.3.2.3-.1.3-.3.4-.2.6.3.4.6-.1.4-.7.5-1 .4-.4 0-.6-.3-.8-.6l-1-1.7a.9.9 0 00-.9-.2v.5l.5 1.1c.1.4.5.4.8.5.4 0 .4.5 0 .4h-1.8c-.2 0-.6.2-.7 0-.2-.5.4-.3.6-.6l-.2-.8-.8-2.7zm1.3 1c.1.2.6 0 .8 0 .3 0 .5-.3.4-.5 0-.5-.2-1-.5-1.3-.3-.2-.7-.2-1-.1-.2 0-.1.3 0 .5l.3 1.3zm7-2.6c.2 0 .3.3.3.5 0 .3.2.5.3.8-.2.3-.5 0-.5-.2-.2-.2-.3-.6-.7-.6a9.5 9.5 0 00-1.3 0c-.2.1 0 .4 0 .6l.4 1.3h.8c.3-.2-.1-.7.2-.8.4 0 .4.4.4.7 0 .4.3.9.4 1.3-.1.3-.5 0-.5-.2 0-.3-.4-.5-.7-.4-.1 0-.5-.2-.4 0l.5 1.7c0 .3.4.3.7.3.4 0 .9 0 1.2-.2.3-.2 0-.6.1-.8.3-.2.6 0 .5.3l.2 1c0 .2-.3.2-.4.2h-3.1c-.3 0-.6.2-.8 0-.3-.4.3-.3.4-.5.2-.2 0-.5 0-.7l-.9-3.1c0-.3-.3-.7-.6-.7s-.6-.1-.5-.4h1l3-.1zm-32.9 13.1c-.1-.4-.2-.8-.6-1-.3 0-.7 0-.5-.3.3-.2.6 0 1-.1.8 0 1.6-.2 2.4 0a3.5 3.5 0 012.6 2.3c.2.8.3 1.6-.2 2.3-.5.6-1.4.8-2.2.8-.7 0-1.3 0-1.9.2-.2.1-.6-.1-.4-.4.3 0 .7-.2.6-.5l-.4-1.5-.4-1.8zm1.6 2.5c.1.3.2.7.4.9.3.2.7.1 1 0 .4 0 .8-.4.9-.9a4 4 0 00-.4-2.2 2 2 0 00-1.5-1.2 3 3 0 00-1.1 0c-.1 0 0 .2 0 .4l.7 3zm7.1-4.5c.3 0 .3.3.4.5l.2.9c-.1.2-.5 0-.5-.2-.1-.3-.3-.6-.6-.6a9.3 9.3 0 00-1.3 0c-.2.1 0 .4 0 .6 0 .5.2 1 .3 1.4.3 0 .6 0 .8-.2.2-.2-.1-.6.2-.7.4 0 .3.5.4.7 0 .4.3.8.3 1.3 0 .3-.5 0-.5-.2 0-.4-.4-.5-.7-.4-.1 0-.5-.1-.3.1 0 .5.2 1 .4 1.6 0 .3.4.3.7.3.4 0 .9 0 1.2-.3.2-.2 0-.6.2-.8.3-.2.4.1.4.4 0 .3 0 .6.2 1l-.5.1-3 .2c-.3 0-.6.2-.9 0-.2-.2.1-.4.4-.4.3-.1.2-.5.2-.7l-.8-3.2c-.1-.3-.3-.7-.6-.7s-.6-.1-.5-.4l1-.1 2.9-.2zm6.5 4.1c0 .3.3.6.6.6.2.1.6 0 .7.3.1.3-.4.2-.6.2l-1.7.1c-.3 0-.6.1-.8 0-.3 0-.2-.4.1-.4.3 0 .6-.1.7-.4l-.1-.8-.7-2.8c0-.3-.4-.3-.6-.3-.2 0-.6.2-.7-.1 0-.4.5-.3.7-.4l1.1-.4c.2 0 .3.1.3.3l1 4.1zm3.7-3.3c0-.4-.3-.8-.7-.8-.3 0-.7 0-.8.3a1 1 0 00.4 1l.9.5.2-.6a1.4 1.4 0 000-.4zm.8 3c0-.6-.5-.9-1-1-.2 0-.4-.3-.5-.2a1 1 0 00-.4 1c.2.6.5 1 1 1 .4.1.8 0 1-.4a1 1 0 000-.5zm1-.3a1.2 1.2 0 01-.6 1.3 2.4 2.4 0 01-2 .2 1.7 1.7 0 01-1.2-1.3c0-.4.1-1 .6-1.3 0 0 .4-.1.1-.2-.5-.2-1-.6-1-1.2-.2-.5 0-1 .5-1.3a2 2 0 012.6.7c.2.4.2.9 0 1.2l-.6.5c.5 0 1 .4 1.2.8.2.1.3.4.3.6zm3.2.5c.2 0 .5 0 .5-.4.1-.1 0-.6.3-.5.3 0 .2.3.3.6 0 .4 0 .8-.4 1.1-.2.2-.5.1-.8.1h-1.7c-.2 0-.5.2-.7 0-.2-.2 0-.5 0-.7.2-.7.6-1.2 1-1.6.4-.3.8-.6.9-1.1a2 2 0 00-.3-1.2 1 1 0 00-1.4-.3c-.3.1-.4.5-.3.7.2.2.6 0 .7.4.2.2 0 .6-.3.6-.4 0-.8-.3-1-.7a1.2 1.2 0 01.6-1.4c.5-.3 1.1-.3 1.7-.2.5.2 1 .6 1.2 1.2.1.4.1.9-.1 1.3-.4.7-1.1 1-1.7 1.7-.1.1-.2.3-.1.6 0-.3.4-.2.5-.2h1zm4-.4c0 .3.2.6.5.7.2 0 .6 0 .7.2.1.3-.3.3-.5.3h-2.7c-.2-.1 0-.5.2-.4.3 0 .6-.1.7-.4v-.8l-.7-2.8c0-.3-.3-.3-.5-.3-.3 0-.6.2-.7 0-.2-.5.3-.4.5-.5l1.2-.4c.2 0 .3.1.4.3l.8 4.1z"/>
+    </g>
+    <g fill="#448127" stroke="#34541f" stroke-width=".2">
+      <path fill="url(#m)" stroke="#4c0505" d="M475.8 219.4L472 224c-1.2 5.2 1.8 9.2 7.7 12.6 4.7 3 13.5 3.7 16.3 1.3l-13.7-13-6.5-5.4z"/>
+      <path d="M503.6 354.3a322.5 322.5 0 00-2-2.5 100.5 100.5 0 01-32.7 28.6c15.1-4.3 25-15.2 34.7-26.1zM488 390a460 460 0 0118.2-32.3 274.3 274.3 0 00-2.1-2.7c-7.3 12.2-16 26.7-16 35zm42-114.5a62 62 0 00-4.3-13 126.5 126.5 0 00-43.8-44v-.3h.3l-.2-.1h.5l-.2-.3h.4l-.3-.4h.4l-.3-.3h.5l-.3-.4h.4l-.4-.3.6-.1-.5-.3.5-.1-.4-.3.6-.2-.5-.3.6-.3-.6-.4.7-.2-.7-.3.6-.4h-.8l.5-.7h-.7l.3-.5h-.6l.3-.5-.7.1.3-.6-.6.4.2-.7-.7.4.1-.7-.5.5v-.7l-.5.5v-.7l-.5.6v-.7l-.4.6-.2-.7-.3.6-.2-.7-.3.8-.2-.8-.3.8-.2-.7-.2.6-.1-.5-.3.7-.2-.7-.2.8-.3-.7-.2.8-.3-.7v.8l-.4-.6v.8l-.5-.6v.7l-.4-.3.2.7-.5-.3.2.7-.4-.3.1.6h-.4l.2.4h-.3l.2.4a9 9 0 00-.4 3.5c0 .2.6.4.7.6.3.4.2.6.2.6-1.6 2.6-3 4.6-3.1 7.6 1.2-1.6 2.6-3.6 4.4-3.6-.9 1.5-1.3 6.1-.3 6.9l.8-1.4c0 1 .1 1.8.4 2.3l1-1.7c0 1.5.2 2.7.6 3.3a6 6 0 011.6-1.6c-.2.9-.5 1.7-.4 2.7l2-2.5c-.4 1.6 0 2.8.4 4.5.4-2 .6-2.3 1.5-3.1.1 1.9-.2 3.6.2 4.7.8-1.7 1.4-1.5 2-2.6-.2 1.6-.5 3.3 0 4.7a4.5 4.5 0 011.9-2.6c0 2.2.5 1.8-.8 3.7.6.2 2.5-.4 3.6-.9-.5 1.2-.4 2.1-.9 3 1-.6 2-1.5 2.9-2.4-.4 1.4-1.5 2.8-1 4.1.3-1.3 1.3-2.3 2.3-2.5-.2.7-.3 2.2-1.3 2.9 2.4.2 3.4-1.4 4.6-2.7-.1 1.4 0 2.4 1.6 4.3-.3-2.4.2-1.9 1.3-3.3.6 2.1 1.2 4.4 3.4 6-1-2.3-1-3.5-.6-4.9.3 1.5 1.7 3.3 2 4.7.3-1.6.5-3.1 1-4.1a20.2 20.2 0 011.4 5.6c.5-1 .9-2 1.1-3.1 19.8 20.6 24.2 46.8 2.6 74.5 7.7-5.2 9.7-13.5 14-20.6-4.2 9.3-6 19.7-13.5 27.4 7.2-6.2 8.7-11.9 13-17.9-4.5 12.5-11 26.2-19.8 38.8a690.6 690.6 0 014.8 5.2l4-6.9c9.4-15.4 24.7-37.5 17-71.1z"/>
+    </g>
+    <path fill="#eac102" stroke="#a08307" stroke-width=".2" d="M473.2 215.3c-1 .2-1.4.6-2.1 1.4.9.2 1.6.3 2.5.3.2 0 .3-.3.3-.6l-.2-1c0-.2-.6-.1-.8 0l.3-.1z"/>
+    <path fill="#a08307" d="M471 216.7a9.9 9.9 0 011-.3 9.8 9.8 0 011.2-.2 9.8 9.8 0 01-1 .3 10 10 0 01-1.2.2z"/>
+    <circle cx="477.7" cy="215.4" r=".8" stroke="#000" stroke-width=".1"/>
+    <circle cx="477.9" cy="215.3" r=".3" fill="url(#n)"/>
+    <g fill="#34541f">
+      <path d="M488.2 389.7a83.4 83.4 0 011.5-4.4 96.2 96.2 0 011.8-4.4c1.2-2.9 2.7-5.7 4.1-8.4a199.6 199.6 0 014.7-8.2 354.4 354.4 0 012.4-4l2.5-4-2.4 4a400 400 0 00-2.4 4.1l-4.6 8.2a133.7 133.7 0 00-4.2 8.4 98.1 98.1 0 00-1.8 4.3 82.7 82.7 0 00-1.6 4.4zm-18.9-9.5a75.8 75.8 0 005-2.3 72.3 72.3 0 004.6-2.7 72 72 0 008.8-6.5 84.7 84.7 0 007.7-7.5 113.6 113.6 0 003.6-4.1l3.4-4.3a153.8 153.8 0 01-3.3 4.3 111.9 111.9 0 01-3.6 4.2 81.9 81.9 0 01-7.7 7.6 70 70 0 01-8.8 6.4 71.3 71.3 0 01-4.7 2.6 77 77 0 01-5 2.3zm37.3-29.3a138.7 138.7 0 004.3-6.7l4-6.8a341.8 341.8 0 003.7-7l3.7-7-1.7 3.5-1.8 3.6a256 256 0 01-3.7 7 160.5 160.5 0 01-4 6.8 93.5 93.5 0 01-4.5 6.6zm6-25.1a58.4 58.4 0 004.6-6.4 60.2 60.2 0 003.8-7 72.6 72.6 0 005-15l.4-2a61 61 0 00.7-6 52 52 0 000-7.9 50.6 50.6 0 00-1.3-7.8 53.4 53.4 0 00-2.4-7.6 53.5 53.5 0 012.5 7.5 50.5 50.5 0 011.3 7.9c.2 2.6.2 5.3 0 8a61.3 61.3 0 01-.6 6 90.3 90.3 0 01-.4 1.9 72.7 72.7 0 01-5 15 59.9 59.9 0 01-4 7 58.2 58.2 0 01-4.7 6.4z"/>
+      <path d="M510.9 320a36 36 0 004.9-5.8 52 52 0 003.8-6.6 96 96 0 003-7c.4-1.2 1-2.4 1.3-3.6l.4-.9.3-.9.6-1.8c.5-2.5.7-5.1.8-7.7a45.8 45.8 0 00-.6-7.7c-.4-2.5-1-5-1.7-7.5a80.2 80.2 0 00-2.6-7.3 80.3 80.3 0 012.7 7.3 57.4 57.4 0 011.7 7.5 46 46 0 01.6 7.7 41.4 41.4 0 01-.7 7.7l-.6 1.9-.3.9-.4.9-1.3 3.6a96 96 0 01-3.1 7 51.6 51.6 0 01-3.8 6.6 36 36 0 01-5 5.8z"/>
+      <path d="M505 349.2c1.3-1.6 2.4-3.3 3.6-5l1.8-2.5 1.7-2.5a68.8 68.8 0 003-5.4l2.6-5.5c1.8-3.7 3.5-7.4 5-11.3a75.3 75.3 0 003.5-11.7c.8-4 1.4-8 1.9-12.1.4-4.1.4-8.2 0-12.3a52.4 52.4 0 00-2.7-12 72.8 72.8 0 00-5.1-11.1 72.8 72.8 0 015.2 11.1 52.4 52.4 0 012.7 12c.5 4 .4 8.2 0 12.3-.4 4-1 8.1-1.8 12.1a75.5 75.5 0 01-3.5 11.8 145.1 145.1 0 01-5 11.2l-2.7 5.5a67.3 67.3 0 01-3 5.4c-.5 1-1.1 1.7-1.7 2.6l-1.8 2.5-3.6 5z"/>
+      <path d="M507.8 352.3l7-11.6a200.5 200.5 0 006.4-11.9 82 82 0 005-12.5c.7-2.2 1.2-4.3 1.7-6.5a59.3 59.3 0 00.6-3.4 127.7 127.7 0 001.4-16.8c0-4.5-.4-9-1.2-13.4a57.5 57.5 0 00-4-12.9 54 54 0 00-7-11.5 54 54 0 017 11.5 57.6 57.6 0 014.1 12.9 73.4 73.4 0 011.2 13.4c0 4.5-.3 9-.9 13.5a134 134 0 01-.4 3.4 58.8 58.8 0 01-.6 3.3 74.3 74.3 0 01-1.7 6.5 82 82 0 01-5 12.6c-2 4-4.3 8-6.5 11.8a442.5 442.5 0 01-7 11.5zM480 220.8h1.4a18.7 18.7 0 014.1 1.3c1.7.8 3.4 1.8 4.9 3a35.8 35.8 0 014.3 3.7 45.3 45.3 0 011.8 2.1l1.8 2.3a60.9 60.9 0 00-1.8-2.2 42 42 0 00-2-2 37.8 37.8 0 00-4.2-3.8 26.8 26.8 0 00-4.9-3 18 18 0 00-5.4-1.4z"/>
+    </g>
+    <g fill="#448127">
+      <path d="M496.4 231.6s3 1.8 4.7 4.4c0 0-4.7-.9-8-4.6"/>
+      <path fill="#34541f" d="M496.4 231.6a14.1 14.1 0 012.6 1.9 13 13 0 012.2 2.4l.1.3h-.2a14.5 14.5 0 01-2.3-.8 15.7 15.7 0 01-2.1-1c-1.4-.8-2.6-1.8-3.7-3a15.2 15.2 0 003.8 2.8 18.3 18.3 0 002 1 14.4 14.4 0 002.3.7v.2a11.2 11.2 0 00-1-1.3l-1.2-1.2a17.7 17.7 0 00-1.2-1 18.6 18.6 0 00-1.3-1z"/>
+      <path d="M489.6 230.7s7.2 4.6 8.2 5c0 0-1.6-3.5-5-5"/>
+      <path fill="#34541f" d="M489.6 230.7l4.1 2.5a139.9 139.9 0 003.1 1.8l1 .6v.1a10.7 10.7 0 00-1-1.5l-1.1-1.4a10.7 10.7 0 00-1.4-1.2l-1.5-.9a8.4 8.4 0 011.6.9 11.1 11.1 0 013.5 4l.2.3-.3-.1-2.1-1.2-2-1.3a151.6 151.6 0 01-4.1-2.6z"/>
+      <path d="M492.5 228.4s3.7 1.6 4.6 4.3c0 0-6.8-2.8-8-4.3"/>
+      <path fill="#34541f" d="M492.5 228.4a10.7 10.7 0 012.8 1.6 7.2 7.2 0 011.1 1.2l.8 1.5v.2h-.2a79.6 79.6 0 01-2-1 49.8 49.8 0 01-2.1-1 34 34 0 01-2-1.1l-1-.6-.8-.8.9.7 1 .6 2 1a84.2 84.2 0 004.1 2h-.1a4.8 4.8 0 00-.8-1.3 7.8 7.8 0 00-1-1.2 12.5 12.5 0 00-2.8-1.8z"/>
+      <path d="M486.8 231.3s6.6 4.7 8.6 4.7c0 0-2-3.3-5.4-4.7"/>
+      <path fill="#34541f" d="M486.8 231.3a127 127 0 004.1 2.6 35 35 0 003.3 1.7l1.2.3-.1.2a15.5 15.5 0 00-2.3-2.8l-1.4-1.1a11 11 0 00-1.6-1c1.1.5 2.2 1.2 3 2a12.8 12.8 0 012.5 2.8v.1h-.1a3.7 3.7 0 01-1.3-.3 13.7 13.7 0 01-1.1-.5 33.3 33.3 0 01-2.1-1.2 63.9 63.9 0 01-2.1-1.4 56.3 56.3 0 01-2-1.4z"/>
+      <path d="M486.8 232.7s3.4 3 5.4 3c0 0-2-3.3-5.4-4.8"/>
+      <path fill="#34541f" d="M486.8 232.7a31.2 31.2 0 002.5 1.8l1.4.7a5.3 5.3 0 001.5.4l-.1.1a12.4 12.4 0 00-1-1.4 13.3 13.3 0 00-2.7-2.5 11 11 0 00-1.6-.9c1.1.5 2.2 1.1 3 2a12.9 12.9 0 012.5 2.7v.2h-.1c-.6 0-1-.2-1.6-.4a11.4 11.4 0 01-1.4-.8l-1.2-.9a17.6 17.6 0 01-1.2-1z"/>
+      <path d="M485 226.2s7.2 5.1 8 7.9c0 0-6.4-3-7.6-4.5"/>
+      <path fill="#34541f" d="M485 226.2a51.6 51.6 0 012.3 1.7 51 51 0 012.2 1.8 25.7 25.7 0 012 2l1 1 .7 1.4v.2l-.2-.1a77 77 0 01-2-1 50.3 50.3 0 01-2-1 34.8 34.8 0 01-1.9-1.2 15.4 15.4 0 01-1-.7 4 4 0 01-.7-.7l.8.7a36.7 36.7 0 003 1.7 87.3 87.3 0 004 2l-.2.1a4.6 4.6 0 00-.7-1.2 12.2 12.2 0 00-.9-1.1l-2-2a51.1 51.1 0 00-2.1-1.9 71.2 71.2 0 00-2.3-1.7z"/>
+    </g>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#406325" d="M445 370.3a42.2 42.2 0 01-20.4 4.8c10-8.2 19.7-8.4 20.4-4.8zm69.8 4.5c5.2 4.7 21 8 23.5 7.4-10.6-10.7-22.1-11.8-23.5-7.4z"/>
+      <path fill="#67923d" d="M445 370.3c-.7-3.7-10.5-3.5-20.4 4.8a69.4 69.4 0 0120.4-4.8zm69.9 4.4c1.4-4.4 12.8-3.3 23.4 7.5a84 84 0 00-23.4-7.5z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gu.svg
new file mode 100644
index 0000000..d6f5d53
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gu.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gu" viewBox="0 0 512 512">
+  <path fill="#be0027" fill-rule="evenodd" d="M0 0h512v512H0z"/>
+  <path fill="#3b5aa3" fill-rule="evenodd" d="M20.5 20.5h470v471h-470z"/>
+  <path fill="#cbe0e5" fill-rule="evenodd" d="M251.9 396.1c1.8 1 4.7 1 6.3.1 103.3-55 103.4-205.8.1-260a7.5 7.5 0 00-6.6.1c-100.7 55.1-101 204.2.2 259.8z"/>
+  <path fill="#add2d9" fill-rule="evenodd" d="M251.9 398.9c1.6 1.3 4.8 1.1 6.3 0 76.1-57 76.6-92.5 73.2-92.5H180.7c-2.3 0 1.3 36.1 71.2 92.4z"/>
+  <path fill="#fdf9a1" fill-rule="evenodd" d="M192.6 334.6a29.3 29.3 0 0120.9 1.3c5.7 3 9 3 15.1 3 6.5.1 11.5 4.9 18.5 5 12.8.4 18.3 6.7 8.3 6.8-4.7 0-14.8-3.2-19.7-2.5-10.2 1-16.7 3.3-26.3 14l11.1 7.6c9.6-4 11.2-8.3 16.5-8.5 6-.2 8-4 15-4 7.9 1.5 18.5-1 24.8-2.3 11.1-2.6 5.8-10.3-.9-13.2-5.4-2.3-15.6 0-22-2.3-4.7-1.9-.8-4.9 1.8-5.5 2.6-.5 5.4.4 8.6.9 5.8.5 13 0 18-.9 10.5-1.6 10-4.7 15.1-4.7a16 16 0 009-3.1c3-2 6-6 9.6-5.9l9.6.4L312 351l-38 38.8-19.8 7.5L211 369l-22-33.5 3.5-.9z"/>
+  <path fill="#179a3b" fill-rule="evenodd" d="M242.4 305.1l87-.4 1.6-7.7-5.6-.6c-3.2-.2-8.5 3.3-12.1 3.3-2.6 0-5.5-4.6-8-4.5-4.4 0-4.8 4-9 4-3.4 0-4.8-2.6-9.2-2.4-4.6.3-4.2 2.8-10 2.7-7.7-.2-10.7-6.9-16.8-7-10.3 0-10.6 9.8-17.9 12.6z"/>
+  <path fill="#fdf9a1" fill-rule="evenodd" d="M242.4 307l89.6-.5v-2.4l-91.6.5 2 2.4z"/>
+  <path fill="#a79270" fill-rule="evenodd" d="M279.2 334c1.4 5.2 2.9 7 8.4 8.4 5.5 1.3 13.9-4 8.7-9.2-5-4.8-10.2-6-14.6-10.4-9.4-9.2-23.5-31.9-23.5-47.8 0-13.8-1.3-41.9-1.3-68.5 0-1.8-5.2 4.8-5.2 6.5.2 23.6.2 41.3 1.1 65 1.5 17.4 9.8 29 17 39.6 3.3 5 8 10.5 9.4 16.3z"/>
+  <text x="465.1" y="269.5" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>G</tspan>
+  </text>
+  <text x="488.1" y="269.6" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>U</tspan>
+  </text>
+  <text x="516" y="269.6" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>A</tspan>
+  </text>
+  <text x="539.5" y="269.5" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>M</tspan>
+  </text>
+  <path fill="#239e46" fill-rule="evenodd" d="M211.9 207.3c-1.2 2.2 2.7-.6 3.6-1 5-1.7 7-8 15.6-4.3 6.8 3 16 1.3 11.2 4.2-6 3.6-17.7 7.5-18 25 1 1.7 1.2 1.4 2-.4 1.7-4 10.3-15.2 14.5-14.2 1.7.4 6.6-5 6.8-3.5.4 4.4-6.8 13.2-6.7 25 0 2.8 3.4 3.7 5 1.8 1.6-1.7 2.5-3.5 5.4-5.7 5-4.1 3.6-21.5 4.2-20.7 3.5 4.6 4 17.5 9.4 22.8 4.3 4.4 7.9 2.3 7-3.8-2-12.3-7.8-8.8-10.5-21.5-.6-2.5-.7-4.7 2.5-3.7 4 1.2 6.4 3 9.4 7.6 3 4.3 8.5 8.4 11.8 11 5.6 4.3 7.6.5 4.9-5a30 30 0 00-15.8-13.8c-4.6-1.6-6.3-1.7-10.4-2.5-1-.2-2.3-2.6-.3-3.8a32 32 0 0114.8-5.8c5-.1 9 3.9 12.5 5 7.1 1.8 7-2.7 4-6-2.6-2.8-8-7.5-13-7-10.2 1.3-9.6 1-15.8 5.2-2.3 1.3-4.8 2.8-3.9 1.2 2.3-4.1.1-3.4 3.7-7.6 2.7-3 4.7-5.3 7.5-6 2.6-.7 6-3.4 7-4.8 2.6-3.5.4-5.5-3.5-4.3-3.4 1-5.3 3.2-7.6 3.8-5.5 1.7-10 14.3-10.6 16-.9 2.2-1.8 1.1-1.7-.7.8-8.8 1.6-23.7-1.5-29.8-4.7-9-4.3-4.8-6.1-.5a30.2 30.2 0 000 19.8c.7 3.3 3.4 7 4 9.7.3 2-1.3-.7-2.1-1.9-3-4.5-5.2-7.6-10-10a26.8 26.8 0 00-15.2-1.5c-1.3.4 1.5 2.4 2.7 3.3 3.2 2.6 9.3 3.4 13.4 6 3.6 2 6.3 3.5 7.4 6.5.5 2.2 1.2 5.5-.2 5.4-3.9-.2-9.9-3.5-22.2-2.2-6.3.9-11.7 6.3-15.2 12.7z"/>
+  <path fill-rule="evenodd" d="M238.7 319.8h3.6v6h-3.6z"/>
+  <path fill="#fdf9ff" fill-rule="evenodd" d="M221 280.2c14.1 19.6 36.8 31 37.3 40L214 320c10.1-12.2 16.3-20.5 6.9-39.9z"/>
+  <path fill="#a68861" fill-rule="evenodd" d="M208.1 320.6c19.3 4.3 42.2 6.6 56.9-.6 0 4.3-4.8 10.4-8.8 10.4h-36.9c4.3-.6 6.7-1.9 13.7-2.3l-19.6.3c-2.1 0-6-5.7-5.3-7.8z"/>
+  <path fill="#be0027" fill-rule="evenodd" d="M251.7 406a8 8 0 006.8 0c111.1-59.1 111.2-221.3.2-279.6a8 8 0 00-7.1 0c-108.3 59.3-108.6 219.7.1 279.5zm.6-13.4a7 7 0 005.9 0c93-54.7 94.1-199.3.1-251.1-1.8-1.3-4.4-.9-6.2 0-89 52.7-94 191.4.2 251z"/>
+  <text x="465.1" y="269.5" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>G</tspan>
+  </text>
+  <text x="488.1" y="269.6" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>U</tspan>
+  </text>
+  <text x="516" y="269.6" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>A</tspan>
+  </text>
+  <text x="539.5" y="269.5" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="translate(-256.3 5)">
+    <tspan>M</tspan>
+  </text>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gw.svg
new file mode 100644
index 0000000..064a593
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gw.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gw" viewBox="0 0 512 512">
+  <path fill="#ce1126" d="M0 0h160v512H0z"/>
+  <path fill="#fcd116" d="M160 0h352v256H160z"/>
+  <path fill="#009e49" d="M160 256h352v256H160z"/>
+  <g transform="translate(-46.2 72.8) scale(.7886)">
+    <g id="b" transform="matrix(80 0 0 80 160 240)">
+      <path id="a" d="M0-1v1h.5" transform="rotate(18 0 -1)"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72 160 240)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144 160 240)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144 160 240)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72 160 240)" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gy.svg
new file mode 100644
index 0000000..57eb520
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/gy.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gy" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#399408" d="M2 0h510v512H2z"/>
+    <path fill="#fff" d="M.1 0c-.6 0 495.7 257.6 495.7 257.6L0 511.7.1 0z"/>
+    <path fill="#ffde08" d="M.2 21.5C3 21.5 447.5 254 445 256.2L1.5 494.2.2 21.4z"/>
+    <path d="M1.5.8c1.5 0 232.8 257 232.8 257L1.5 508.8V.8z"/>
+    <path fill="#de2110" d="M.2 36.2C1.6 20.2 209 258.5 209 258.5L.2 481.8V36.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hk.svg
new file mode 100644
index 0000000..024c070
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hk.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hk" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M164.8 0H909v744H165z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="matrix(.7 0 0 .7 -113.4 0)">
+    <path fill="#ba0000" fill-rule="evenodd" d="M1063 744.1H0V0h1063z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M516.4 360.1s-75-32.3-64.3-116c10.4-40.3 28.8-67.7 62.2-82.6a223 223 0 0148-8.4c-4.4 4-8 8.1-9.8 13.2-3.6 9.2-1 18 3.8 26.8a78 78 0 0110.8 34.4 53.2 53.2 0 01-21.2 49c-9.6 7.3-21 9.9-30.2 18.3a41.1 41.1 0 00-13.2 26.4c-.3 23.4 6.1 26.7 13.9 39z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M502.1 239v-.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="3.1" d="M506.9 351.4c-29.2-25.8-26.7-90.7-4.4-112.4"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M501.9 223l9.6-2.1 1.1-9.4 4.8 8 9.6-2.1-6.6 7.1 4.8 8-9-3.6-6.6 7.1 1.2-9.3"/>
+    <path fill="#fff" fill-rule="evenodd" d="M522.8 354.6s8.9-81.2 92-95.4c41.6-1.9 73.2 7.7 97.3 35.2a223.4 223.4 0 0122 43.4c-5.1-3-10-5.2-15.5-5.5-9.8-.7-17.4 4.4-24.4 11.5-8 8.8-17 15.3-29.8 20.4a53.3 53.3 0 01-53-5.9c-9.9-7-15.6-17.1-26.4-23.5a41 41 0 00-29.1-4.9c-22.5 6.7-23.7 13.7-33.2 24.7z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M634.4 305.5l.3-.1"/>
+    <path fill="none" stroke="#ba0000" stroke-width="3.1" d="M528.3 343c16.1-35.5 79-52 106.2-37.2"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M649.6 300.6l4.8 8.6 9.3-1.7-6.2 7 4.9 8.5-8.8-4.3-6.3 7 .9-9.6-8.8-4.3 9.3-1.6"/>
+    <path fill="#fff" fill-rule="evenodd" d="M528.4 360.5s79.8-17.4 119.7 57c15 38.8 16 71.8-2.5 103.4-10 13-21.7 24-34.2 34.6 1.2-5.8 1.7-11.2.3-16.4-2.4-9.5-9.7-15.1-18.7-19.5a77.2 77.2 0 01-28.7-21.7 53.3 53.3 0 01-11.3-52.2c3.5-11.6 11.3-20.3 13.9-32.5a41 41 0 00-4.6-29.2c-13.4-19.1-20.5-18-34-23.5z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M610.4 450.7l.2.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="3.1" d="M541.1 362c38.8 4 74.5 58.4 69 88.9"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M619.8 463.6l-6.5 7.3 4.5 8.3-8.6-3.8-6.5 7.4 1.3-9.7-8.6-3.7 9.3-2.2 1.3-9.7 4.5 8.3"/>
+    <path fill="#fff" fill-rule="evenodd" d="M526.6 368.7s39 71.7-21.1 131c-33.1 25.2-64.5 35.4-100 26.5-15.3-5.8-29.1-14-42.8-23 5.8-.5 11.2-1.5 15.8-4.4 8.4-5 11.8-13.5 13.5-23.4a77.2 77.2 0 0112.7-33.7 53.2 53.2 0 0147-25.4c12 .1 22.6 5.1 35 4.2a41 41 0 0026.8-12.6c14.6-18.3 11.6-24.8 13-39.2z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M463 472.7l-.2.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="3.1" d="M528.7 381.4c7 38.3-35.1 87.8-66 91.1"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M453.3 485.4l-8.9-4.2-6.7 6.7 1.2-9.3-8.9-4.2 9.7-1.5 1.1-9.3 4.8 8.4 9.6-1.5-6.7 6.6"/>
+    <path fill="#fff" fill-rule="evenodd" d="M517.7 367.1s-54.7 60.7-130.5 23.6c-34.8-22.8-54.9-49-58.3-85.4.4-16.3 3.6-32.1 7.5-48 2.5 5.3 5.1 10 9.4 13.4 7.5 6.3 16.7 6.7 26.5 5a77.2 77.2 0 0136 .8 53.3 53.3 0 0139.6 35.8c4 11.5 2.7 23 7.7 34.5a41 41 0 0020.8 21c22 7.7 27.2 2.8 41.3-.7z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M398.4 341.7h-.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="3.1" d="M506.4 373.4c-33.8 19.3-94.5-4-107.8-32"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M383.2 336.8l1-9.8-8.4-4 9.1-2 1-9.8 4.7 8.6 9-2-6.2 7.3 4.6 8.6-8.5-4.1"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hm.svg
new file mode 100644
index 0000000..7e1f7e7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hm.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hm" viewBox="0 0 512 512">
+  <g stroke-width="1pt">
+    <path fill="#006" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M0 0v19.2l234 152.6h29.5v-19.2L29.5 0H0zm263.5 0v19.2l-234 152.6H0v-19.2L234 0h29.5z"/>
+    <path fill="#fff" d="M109.8 0v171.8h43.9V0h-44zM0 57.3v57.3h263.5V57.3H0z"/>
+    <path fill="#c00" d="M0 68.7v34.4h263.5V68.7H0zM118.6 0v171.8h26.3V0h-26.3zM0 171.8l87.8-57.2h19.7l-87.9 57.3H0zM0 0l87.8 57.3H68.2L0 12.8V0zm156 57.3L243.8 0h19.7l-87.8 57.3H156zm107.5 114.5l-87.9-57.2h19.7l68.2 44.4v12.8z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M69.1 443.6l-16.3 17.2 3.2-23.5-23.6-2L52.8 423l-13.1-19.8 22.1 8.4 7.3-22.5 7.3 22.5 22.1-8.4-13 19.8 20.3 12.1-23.6 2 3.2 23.6m295.1 6L369 479l2.3-16.5-16.6-1.5 14.3-8.5-9.2-13.9 15.6 6 5.1-16 5.1 16 15.7-6-9.3 14 14.4 8.4-16.7 1.5L392 479m-11.5-259.5l-11.5 12 2.3-16.5-16.6-1.4L369 205l-9.2-14 15.6 6 5.1-16 5.1 16 15.7-6-9.3 14 14.4 8.5-16.7 1.4 2.3 16.6m-104.3 88.4L276.2 332l2.3-16.5L262 314l14.3-8.5-9.2-14 15.6 6 5.1-15.9 5.1 15.9 15.7-6-9.3 14 14.4 8.5-16.7 1.5 2.3 16.5M463 295.2l-11.5 12 2.3-16.5-16.6-1.4 14.3-8.5-9.2-14 15.6 6 5-16 5.2 16 15.6-6-9.2 14 14.3 8.5-16.6 1.4 2.3 16.5M411 349l-8.2-6.9 10.7-.8 4-9.9 4 10 10.8.7-8.2 6.9 2.5 10.4-9-5.7-9.2 5.7"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hn.svg
new file mode 100644
index 0000000..c7c4c4a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hn.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-hn" viewBox="0 0 512 512">
+  <path fill="#0073cf" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <g id="c" fill="#0073cf" transform="translate(256 256) scale(28.44446)">
+    <g id="b">
+      <path id="a" d="M0-1l-.3 1 .5.1z"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" transform="translate(142.2 -45.5)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(142.2 39.8)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(-142.2 -45.5)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(-142.2 39.8)" xlink:href="#c"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hr.svg
new file mode 100644
index 0000000..7ea0041
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hr.svg
@@ -0,0 +1,56 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-hr" viewBox="0 0 512 512">
+  <path fill="#171796" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v341.3H0z"/>
+  <path fill="red" d="M0 0h512v170.7H0z"/>
+  <path fill="red" d="M256 388.4a99.8 99.8 0 0099.6-99.5V170.6H156.5V289a99.8 99.8 0 0099.5 99.5z"/>
+  <path fill="#fff" d="M256 386.8a98 98 0 0097.7-97.6V172.5H158.4v116.7a98 98 0 0097.6 97.6z"/>
+  <path fill="red" d="M199.6 176.2H162v41.3h37.6zm0 82.6h37.6v-41.3h-37.6zM162 289c0 3.7.3 7.4.7 11h36.9v-41.2H162V289zm112.8-30.2h-37.6V300h37.6zm0 82.5h37.5V300h-37.6zm37.5 22.6a95.1 95.1 0 0021.5-22.6h-21.5V364zm-112.7-22.6h37.6V300h-37.6zm-21.5 0a95.1 95.1 0 0021.5 22.6v-22.6h-21.5zm84.4 41.3a93.4 93.4 0 0012.2-1.7v-39.6h-37.5V381a92.9 92.9 0 0012.2 1.7c4.4.3 8.7.3 13.1 0zm86.7-82.6c.4-3.6.7-7.3.7-11v-30.2h-37.6V300h36.9zm-74.4-41.2h37.5v-41.3h-37.6zm0-82.6h-37.6v41.3h37.6zm75 41.3v-41.3h-37.5v41.3z"/>
+  <path fill="#fff" d="M352 169.4l23.3-52.8L357.5 88l-29.4 11-20.6-23.7-27.2 15.6L256 71l-24.3 19.8-27.2-15.6L184 98.8 154.5 88l-17.8 28.7 23.3 52.8a232.3 232.3 0 0196-20.6c34.2 0 66.7 7.4 96 20.6z"/>
+  <path fill="#0093dd" d="M184.5 101.2l-29.2-10.8-16.3 26.4 6.3 14.2 15.8 36a234.3 234.3 0 0136.9-12.8l-13.5-53z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".3" d="M182.9 127.2a14.1 14.1 0 011.6 6.6c0 7.9-6.4 14.3-14.3 14.3a14.3 14.3 0 01-14-11.5 14.3 14.3 0 0012.5 7.3 14.3 14.3 0 0014.2-16.7z"/>
+  <path d="M169.8 107.5v.2l-1 5.2 3.9 3.4.2.1-.3.1-4.9 1.7-1 5.1v.3l-.2-.2-4-3.4-4.9 1.7h-.2v-.2l1-5.1-3.9-3.4-.2-.2h.2l5-1.8 1-5v-.3l.2.1 4 3.5 4.9-1.7z"/>
+  <path fill="#f7db17" d="M163.9 114.8l3.7 3.2 4.6-1.6zm0-.2l8.3 1.6-3.7-3.2zm-8.9-1.7l8.3 1.6-3.7-3.2zm8.3 1.7L155 113l3.6 3.2zm.4-.3l5.6-6.3-4.6 1.5zm-6 6.9l5.6-6.4-4.6 1.6zm5.8-6.3l-5.6 6.4 4.6-1.6zm5.9-6.8l-5.5 6.3 4.6-1.5zm-6 6.3l-2.7-8-1 4.7zm3 8.5l-2.8-8-1 4.8zm-2.6-8l2.7 8 1-4.8zm-3-8.6l2.8 8 .9-4.8z"/>
+  <path fill="#171796" d="M232 93.2l-27-15.4-20.5 23.4 13.5 53a234.4 234.4 0 0138.5-6.5L232 93.2z"/>
+  <path fill="red" d="M194.7 141a247.7 247.7 0 0140.7-6.8l-1.1-13.8a262 262 0 00-43 7.2l3.3 13.4zm-6.8-26.6a275.1 275.1 0 0145.2-7.6L232 93.3a288.8 288.8 0 00-47.5 8l3.4 13z"/>
+  <g transform="translate(-256) scale(.00253)">
+    <path fill="#0093dd" d="M212105 36890l-23 13-9517-7794-9497 7778 1788 21560c2543-210 5113-322 7709-322 2608 0 5190 113 7744 325l1795-21560z"/>
+    <g id="a">
+      <path d="M202545 46585c-18-2-44 10-69 45-186 250-359 469-545 720-195 61-242 180-167 348-261-26-291 193-302 432-250-379-522-482-814-307-11-230-187-338-439-392-180-10-319-65-436-145-60-42-110-64-170-106-126-88-226-5-172 74 267 434 535 868 802 1302-14 80 6 151 88 204 47 133 93 265 140 397-11 38-21 75-32 113-221-105-443-118-664-133-170-8-287-50-361-137-54-63-91-26-92 82-3 534 162 1014 599 1492-231 4-462 11-694 21-79 6-95 39-73 104 126 304 339 579 822 766-208 112-327 285-357 520-9 224-75 382-212 455-60 32-81 65-24 106 253 185 565 193 895 112-157 270-226 553-198 850 208 56 412 15 614-52-29 61-44 175-52 309-7 115-41 229-104 343-32 33-65 84 4 102 336 91 648 52 915-47 0 243 2 487 76 727 18 58 70 102 125 26 155-214 322-396 527-517 31 90 75 168 156 215 96 55 147 170 153 343 0 30-2 60 35 90 149 7 514-380 589-597 206 121 284 246 439 461 55 76 99 29 128-25 62-243 67-481 66-724 267 99 579 138 915 47 69-19 36-70 4-102-62-114-105-250-113-365-9-133-14-226-43-287 202 68 405 108 614 52 29-297-53-579-211-850 330 80 655 73 908-112 57-41 35-74-24-106-136-73-203-231-212-455-30-235-149-409-357-520 483-187 696-463 822-766 22-66 6-99-73-104-231-10-480-24-711-27 437-478 606-961 604-1495-1-108-38-146-92-82-74 87-179 137-348 146-222 15-435 24-656 128-11-38-21-75-32-113 46-132 106-260 153-393 82-53 102-123 88-204 267-434 513-868 781-1302 54-79-46-162-171-74-60 42-110 64-170 106-117 80-257 134-437 145-251 54-417 167-428 397-293-175-564-73-814 307-11-239-41-457-302-432 75-168 17-291-178-352-186-250-458-470-644-720-31-35-51-47-69-45z"/>
+      <g fill="#f7db17">
+        <path d="M205075 47978c-51-26-124 17-162 95s-33 170 19 196c40 20 84-6 119-56l22-36c2-3 4-6 5-9 38-78 49-163-2-188zm-5008 0c52-26 124 17 162 95s39 165-13 191-103-24-141-102-60-158-9-184zm4539 905c-32 0-59 27-59 59s26 59 59 59 59-26 59-59c0-32-26-59-59-59zm-4032 0a59.1 59.1 0 10.2 118.2 59.1 59.1 0 00-.2-118.2zm4294-304c-754-91-1506-133-2260-133s-1509 41-2269 115c-26 8-21 90 14 86 756-73 1507-113 2256-113 743 0 1485 40 2228 129 39 4 54-80 32-84z"/>
+        <path d="M200319 48495c768-75 1530-117 2289-116 754 0 1507 42 2261 133l111-184c-32 10-62 9-90-5-76-38-92-161-36-274 56-114 164-175 240-138 39 19 62 62 68 114l446-739c-204 130-328 214-581 252-281 41-409 139-368 307 38 156-57 133-201 54-314-171-541 71-652 353-73 186-159 181-168-13-4-70 0-131-7-200-21-223-89-286-216-224-161 78-175 25-137-58 28-60 86-128 66-221-9-67-66-92-151-98-182-244-467-483-649-727-182 244-374 483-556 727-86 5-142 30-152 98-20 93 52 157 80 217 38 82 23 135-137 57-127-61-186-3-207 220-7 69-10 139-13 209-9 194-95 199-168 13-111-282-352-524-667-353-145 79-203 102-182-54 23-172-107-266-388-307-253-37-377-122-581-252l419 682c12-25 29-45 53-57 76-38 184 24 240 138 56 113 40 237-36 274-10 5-21 8-32 10l100 163zm4389 911c-7 3-7 4-24 11-46 19-80 66-134 124-57 60-128 125-211 188-12 10-25 19-44-6s-7-35 6-44c80-62 149-124 204-182 30-32 56-63 77-92-95-11-190-21-284-30-79 24-157 55-222 95-59 35-107 77-137 125-8 14-16 27-44 11-27-16-19-30-11-44 35-58 91-107 158-147 33-20 69-38 106-54-107-9-214-18-321-25-22 13-42 29-61 47-20 19-39 42-56 67-9 13-18 26-44 8s-18-31-8-44c19-29 41-54 64-77l9-9c-80-5-161-10-241-14-2 2-5 5-8 7a340.4 340.4 0 00-93 126c-6 15-12 29-41 18-29-12-23-26-17-41 12-29 27-55 45-81 8-11 18-22 27-33-115-5-230-9-344-12-4 5-9 8-14 11-25 15-47 32-66 51s-35 40-48 63c-8 14-16 28-43 12-28-16-20-29-12-43 16-28 35-54 59-77 7-7 14-13 21-19-122-2-244-4-365-4-120 0-240 1-360 3 8 7 15 13 22 20 23 23 42 49 59 77 8 14 16 27-12 43s-35 2-44-12c-13-23-29-44-48-63s-41-36-66-51c-6-3-12-7-15-12-115 2-230 6-345 11 11 11 20 23 29 35 19 25 33 52 45 81 6 15 12 29-17 41s-35-3-41-18c-9-24-22-46-38-67-15-21-34-41-55-59-4-3-7-6-10-10-81 4-162 8-243 13 4 4 9 8 13 12 24 23 45 48 64 77 9 13 18 26-8 44s-35 5-44-8c-18-26-36-48-56-67s-41-35-64-49c-1-1-3-2-5-3-110 7-220 14-330 23 43 18 85 38 122 61 67 40 124 89 158 147 8 14 16 27-11 44-27 16-35 3-44-11-29-48-78-90-137-125-72-44-159-77-246-102h-2c-90 7-179 15-268 24 22 33 51 68 86 106 55 58 124 120 204 182 13 9 25 19 6 44s-32 15-44 6c-83-64-155-128-211-188-37-38-99-111-135-140-196-90-354-127-575-147-153-14-318-9-458-79 36 85 75 164 126 229 53 68 120 121 209 147 8 2 21 16 22 25 28 157 84 286 169 386 52 60 114 110 188 149-75-81-132-166-172-251-67-142-90-286-77-420 1-16 3-32 34-29 32 3 30 19 29 35-11 123 9 256 72 387 56 118 159 237 291 346 24 19 0 63-29 55-154-44-290-123-383-231-89-104-149-237-180-397-94-32-165-90-222-164-47-60-85-131-118-205 28 428 182 801 456 1137 61 75 165 182 255 216 92 35 95 100-20 101-34 1-69 1-105 1 84 31 164 66 233 105 127 73 217 162 224 273 1 16 2 32-29 34-32 2-33-14-34-29-6-86-82-160-192-223-113-65-259-117-402-160-154 0-312-1-459 3 39 28 80 57 131 84 82 44 188 86 343 122 89 21 166 52 233 91 71 42 130 93 177 150 10 12 20 25-5 45s-34 8-45-5c-42-52-95-98-159-135-61-36-133-64-216-84-161-38-272-81-358-128-75-40-131-82-184-123 180 393 450 573 835 689 23 7 43 13 61 19 3 1 6 1 9 2 86 21 175 40 266 55 92 15 166 28 261 37 16 1 32 3 29 34-3 32-19 30-34 29-99-9-174-22-266-38-58-10-115-21-171-33-26 6-64 9-107 12-232 14-420 225-435 494 0 5 0 11-1 16 88-80 179-157 273-212 117-68 239-103 364-69 15 4 31 8 22 39-8 31-23 27-39 22-106-28-212 3-316 63-108 63-213 158-315 253-24 147-82 285-205 377 61 34 104 65 163 45 86-39 172-78 261-108 91-31 184-52 282-57 16-1 32-1 33 31s-14 32-31 33c-91 4-179 24-264 53-75 26-149 58-222 91 221 47 460-1 667-79 60-22 105-42 133-41 51-30 112-53 172-79 66-28 132-51 182-57 16-2 32-4 35 28 4 32-12 33-28 35-112 13-127 21-222 79 0 21-66 57-126 96-36 24-70 52-87 67-95 86-144 181-188 287-29 70-52 145-68 224 55-108 121-211 201-303 94-108 208-201 345-265 14-7 29-13 42 15 13 29-1 35-15 42-129 60-236 147-324 250-90 103-161 222-219 345-31 64-8 1-42 86 110-122 212-224 323-307 132-100 283-157 418-133 15 3 31 6 26 37s-21 28-37 26c-116-21-250 32-369 121-121 92-244 223-366 361 184 26 366-26 542-85 91-30 183-135 239-152 19-24 38-46 57-67 33-37 67-71 102-100 12-10 24-20 45 4s8 34-4 45c-33 28-65 60-96 94-32 35-62 73-92 113-6 8-13 17-24 16-60 70-151 162-172 240-57 210-25 370-122 576 71-38 128-81 175-134 53-60 94-135 128-230 37-104 95-195 167-270 75-77 165-136 261-172 15-5 30-11 41 19s-4 35-19 41c-87 32-169 86-238 157-66 68-119 151-153 247-37 102-81 183-141 250-44 50-95 91-156 127 52-3 78-10 121-7 79-6 211-66 279-119 66-51 116-120 154-206 6-15 13-29 42-16s23 27 16 42c-42 96-99 174-173 231-56 43-121 75-196 93 161-5 311-42 467-100 65-24 87-168 127-208 32-58 66-112 105-158 47-56 101-101 164-127 15-6 29-12 41 18 12 29-3 35-17 41-52 21-98 60-139 108-36 42-68 93-98 147 10 73-51 228-53 305-7 205-2 409 53 612 53-71 107-134 162-192 0-5 0-10 1-15 18-106 33-219 40-332 7-112 7-223-6-329-2-16-4-32 27-35 32-4 34 12 35 28 14 111 14 226 7 340-6 90-16 180-30 269 54-51 53-51 77-103 37-80 59-159 67-237 9-80 5-157-13-230-4-15-7-31 24-38s35 8 38 24c19 80 25 165 14 252-8 65-24 132-49 199 56-42 114-82 178-122-4-75-5-153-3-227 2-68 7-134 18-190 4-20 7-40 47-33s37 27 33 48c-9 50-14 111-16 177-2 78 0 162 4 243 5 82 49 185 125 230 103 62 158 163 186 274 16-145 17-280 3-400-17-143-55-267-114-368-8-14-16-27 12-44 27-16 35-2 43 12 63 110 104 241 122 393 17 146 13 310-13 488 102-82 381-258 352-594-7-27-16-52-28-75-7-14-14-28 14-42s35 0 42 14c17 33 30 69 39 110 5 24 8 49 11 76 13-7 45-43 51-39 24 16 58 38 80 54-21-60-35-120-42-178-10-87-5-172 14-252 4-15 7-31 38-24s27 23 24 38c-18 73-22 151-13 230 9 77 31 157 67 237 4 8 8 16 5 25 24 21 47 42 70 65-13-84-22-170-28-255-8-115-7-230 7-341 2-16 4-32 35-28s29 20 27 35c-13 106-13 217-6 329 7 113 22 225 40 332 1 2 1 5 1 7 54 59 95 120 152 196 55-203 73-407 66-612-2-76-69-227-65-302-30-55-63-107-100-151-41-49-87-87-139-108-15-6-29-12-18-41 12-29 27-24 41-18 62 26 117 71 164 127 38 45 72 98 103 154 57 7 78 179 143 212 154 57 298 94 453 100-75-19-140-50-195-93-74-57-131-135-173-231-6-15-13-29 16-42s35 2 42 16c38 86 88 156 154 206 85 66 289 124 400 127-61-37-113-78-157-128-59-67-104-148-141-250-34-95-87-179-153-247a642 642 0 00-238-157c-15-6-29-11-19-41 11-29 26-24 41-19 96 36 186 94 261 172 72 74 130 166 167 270 34 95 75 169 128 230 47 54 105 98 177 135-98-207-66-367-122-577-35-129-232-277-193-320 45-51 133 88 248 127 175 59 357 111 540 85-122-138-244-269-366-361-119-90-237-140-352-120-16 3-31 6-37-26-5-31 10-34 26-37 135-24 269 32 401 132 111 84 201 175 311 298-18-47 0-14-30-77-59-123-130-241-220-345-89-102-196-189-324-250-14-7-28-13-15-42 13-28 28-22 42-15 137 65 251 157 345 265 81 93 147 198 203 307-15-81-39-157-68-227-44-106-93-201-188-287-62-56-209-140-208-179-29-15-33-11-63-24-61-26-121-46-164-52-16-2-32-4-28-35 4-32 19-30 35-28 50 6 115 28 182 56 33 14 66 43 98 60 53 4 139 47 208 74 206 78 446 126 666 79-73-33-147-65-223-91-85-29-172-49-264-53-16-1-32-1-31-33s17-31 33-31c98 4 191 26 282 57 89 30 175 69 261 108 59 27 101-7 163-45-123-92-181-230-205-376l-2-2c-102-95-207-190-315-253-104-60-210-91-316-63-15 4-31 8-39-22-8-31 7-35 22-39 125-33 247 1 364 69 94 55 186 132 274 213 0-6-1-11-1-17-15-270-203-480-435-494-78-5-189 21-186-32 4-59 97-44 234-86 385-116 655-296 836-690-54 41-110 83-186 124-86 47-198 91-358 128-82 19-154 48-216 84-64 38-117 84-159 135-10 12-20 25-45 5s-14-32-5-45c47-57 106-108 177-150 67-39 145-70 233-91 155-36 261-78 343-122 51-27 92-55 131-84-148-4-305-3-459-3-143 44-289 96-402 160-110 63-186 136-192 223-1 16-2 32-34 29-32-2-31-18-29-34 8-111 97-200 224-273 69-39 149-74 233-105-35 0-70 0-104-1-116-2-112-66-20-101 90-34 190-141 251-216 271-334 412-714 456-1130-33 72-69 140-115 198-57 73-128 131-222 164-31 160-91 293-180 397-92 108-216 185-369 230-29 8-52-35-29-55 132-109 221-226 278-344 62-131 83-264 72-387-1-16-3-32 29-35 31-3 33 13 34 29 12 134-10 278-78 420-40 85-97 170-172 251 73-39 136-89 187-149 85-100 141-229 170-386 1-8 14-22 22-25 89-27 155-79 209-147 51-65 90-143 126-228-140 69-304 64-457 78-213 19-369 68-554 152z"/>
+        <path d="M204649 49231c-680-88-1359-113-2041-114-684 0-1369 40-2058 112-20 6-15 33-14 46 2 28 37 35 121 27 643-60 1285-93 1932-93 674 0 1351 21 2038 102 33 9 77-85 22-81z"/>
+        <path fill-rule="evenodd" d="M200570 49160c683-71 1362-110 2038-110 675 0 1349 40 2025 127l31-127c-17 9-37 15-58 15a123 123 0 11113-171l60-170c-724-84-1446-122-2171-122-729 0-1459 38-2193 107l58 164c22-32 59-54 101-54a123 123 0 110 246c-12 0-25-2-36-6l33 94-2 7zm3067-416a123 123 0 100 246 123 123 0 100-246zm0 64a59.1 59.1 0 000 118c32 0 59-27 59-59s-26-59-59-59zm-1082-91a123 123 0 10123 123c0-68-55-123-123-123zm0 64a59.1 59.1 0 10.2 118.2 59.1 59.1 0 00-.2-118.2zm-1064-40a123 123 0 10-.2 245.8 123 123 0 00.2-245.8zm0 64c-33 0-59 26-59 59s26 59 59 59a59.1 59.1 0 000-118z"/>
+      </g>
+      <path d="M202601 47974c-14-68-49-129-100-175-51-47-116-78-187-88-33-4-39-58-7-68 60-20 114-67 157-133 45-69 79-157 95-256 5-34 64-35 69-1 15 84 51 153 97 208 55 66 125 112 193 138 31 12 25 63-8 68-59 9-105 42-141 87-50 62-81 145-100 221-8 33-62 31-69-2zm33-118c20-52 47-103 81-146 28-34 60-64 99-84-51-30-100-70-143-120-28-34-53-73-73-116-19 59-45 112-75 158-31 47-67 86-108 116 50 19 95 47 134 82 34 31 63 68 85 110zm799 5115l-515 206c-17 7-35 14-48-21-14-34 4-41 21-48l515-206c17-7 35-14 48 21 14 34-4 41-21 48zm59-326l-604 328c-16 9-33 18-51-15s-1-42 15-51l604-328c16-9 33-18 51 15s1 42-15 51zm-1826-65l604 328c16 9 33 18 15 51s-34 24-51 15l-604-328c-16-9-33-18-15-51s34-24 51-15zm51 322l515 206c18 7 35 14 21 48-14 35-31 28-49 21l-515-206c-17-7-34-14-21-48 14-35 31-28 48-21zm224 434c137 33 261 48 358 31 88-16 155-60 191-146v-493c-107-1-212-15-303-41-109-31-170-98-201-178-41-107-27-235-4-329 5-18 9-36 45-27s32 27 27 45c-20 82-33 194 1 284 23 60 69 110 152 133 91 25 198 38 307 38 107 0 214-13 304-40 82-24 148-69 192-123s65-117 57-176c-5-36-24-62-49-80-34-24-82-35-128-37-47-2-94 7-142 16-25 5-50 9-77 13-19 2-37 5-42-32s14-40 32-42c23-3 48-8 73-12 52-10 105-20 159-18 60 2 121 18 168 51 42 29 72 72 80 131 11 80-16 163-73 233-53 65-131 119-229 147-83 24-178 38-274 42v483c3 5 3 11 2 16 37 82 102 125 188 141 97 18 221 2 358-31 18-5 36-9 45 27 8 37-9 41-28 45-146 35-279 51-388 32-92-17-165-58-215-132-49 74-124 115-215 132-109 20-242 4-388-32-18-4-37-8-28-45 8-36 27-32 45-27zm356 210l402-9c19 0 38-1 38 37 1 38-18 38-37 38l-402 9c-19 0-37 1-38-37s18-38 37-38zm593-3082c151-125 293-227 423-297 133-72 254-111 359-106 19 1 37 1 36 39-1 37-20 37-39 36-92-4-200 32-322 97-125 67-263 166-410 289-14 12-29 24-53-5s-9-41 5-53zm-605 56c-141-130-298-240-445-314-139-71-268-108-363-100-19 2-37 4-40-34-4-37 15-39 34-40 110-10 252 31 404 107 152 77 315 191 461 325 14 13 28 25 2 53-25 27-39 15-53 2zm-213 1004c37-83 83-155 136-219 53-63 112-119 174-170 14-12 29-24 52 5 24 29 9 41-5 53-59 48-114 101-164 160-49 59-91 125-125 201-8 17-15 34-49 19s-27-32-19-49zm371-1734c49 66 88 139 114 223 26 82 40 175 39 279 5 80 6 165-7 249-13 86-42 170-97 246-43 60-101 97-165 113-53 13-109 10-164-7 29 100 51 208 6 308-8 18-33 27-51 18-43-22-86-43-128-62s-84-36-127-51l-1-1c-95-37-173-73-236-112-65-39-115-80-150-124l1 2c-44-49-72-106-88-170-14-55-20-114-22-174-72-39-138-78-194-116-64-43-118-87-161-131-13-14-26-27 1-53s40-12 53 1c39 40 89 80 150 121 60 40 128 81 204 121 124 13 247 51 370 109 106 50 211 115 317 192 13 7 19 16 27 20 8 6 16 13 25 19 51 22 104 28 152 16 47-11 90-39 122-84 48-66 72-139 84-214 12-77 11-157 6-234v-2c1-97-12-183-35-258-24-76-58-142-102-201-11-15-22-30 7-52s41-7 52 7zm-375 1047c-104-77-207-141-311-190-105-49-210-83-314-98 2 48 8 93 18 135 13 52 35 99 71 138l1 1c30 37 73 72 130 107 60 36 134 71 225 106l-1-1c45 16 89 34 133 54 31 14 61 28 93 44 19-83-10-179-37-267-2-8-5-15-9-29zm776-1003c-44 59-79 125-102 201-24 76-36 161-35 258v2c-5 77-6 158 6 234 12 75 37 148 84 214 32 45 75 72 122 84 48 12 101 6 152-16l25-19c6-4 13-12 27-20 105-77 211-143 317-192 123-58 246-95 370-109 75-40 144-80 204-121s111-81 149-121c13-13 26-27 53-1s14 39 0 53c-43 44-97 88-161 131-57 38-122 77-194 116-2 61-8 119-22 174-16 63-44 121-88 170l1-2c-35 44-85 85-150 124-63 38-141 75-237 112l-1 1c-43 15-85 32-127 51-43 19-85 40-128 62-18 9-43 0-51-18-45-100-23-208 6-308-55 18-111 20-164 7-64-15-122-53-165-113-55-76-84-160-97-246-13-85-12-169-7-249-1-104 13-196 39-279 26-84 65-158 114-223 11-15 22-30 52-7 30 22 19 37 7 52zm940 715c-105 15-209 49-314 98-104 49-207 113-311 190-4 13-6 21-8 29-27 88-56 184-37 267 31-15 62-30 93-44 44-20 87-38 133-54l-1 1c91-35 165-70 225-106 58-34 100-70 131-107l1-1c35-39 57-86 71-138 11-42 16-87 19-135z"/>
+      <path fill-rule="evenodd" d="M203459 50602a216.4 216.4 0 000 433 216.6 216.6 0 000-433zm0 69c-81 0-147 66-147 147s66 147 147 147 147-66 147-147-66-147-147-147zm0 60a87 87 0 10.1 174.1 87 87 0 00-.1-174.1zm-1697-124c119 0 217 97 217 216s-97 217-217 217a216.6 216.6 0 010-433zm0 69c81 0 147 66 147 147s-66 147-147 147-147-66-147-147 66-147 147-147zm0 60a87 87 0 11-.1 174.1 87 87 0 01.1-174.1z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-2.2 -55532.8 156275.8)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(2.2 459865.8 156275.8)" xlink:href="#a"/>
+  </g>
+  <path fill="#171796" d="M328.1 101.3L307.6 78l-27 15.4-4.5 54.6a234.6 234.6 0 0138.5 6.4l13.5-53z"/>
+  <path d="M286 104.7c.9-.3 1.8-.3 2.7.2.4.2.7.4.9.7l1.2-1a7 7 0 012-1 8 8 0 012.9-.9 13.4 13.4 0 013-.1c.9 0 1.7.3 2.5.7l2.1 1.1 2.3 1.1a9.8 9.8 0 004.8.4c.5 0 .7.2.2.5-3.5 2.2-6.3.2-8.6-.6a17.2 17.2 0 012.2 1.8c1 .9 2 1.7 3.7 2.5a8.9 8.9 0 003.8 1 9.4 9.4 0 001.7-.2c.3 0 .4 0 .4.2 0 0 0 .3-.2.4a5 5 0 01-2.7.8c-1.9.1-3.8-.5-5.6-1.4-1.4-.8-2.4-1.7-3.5-2.6a8 8 0 00-3.2-1.5 6.3 6.3 0 00-3.1.1c.3 0 .5.2.6.4.5.3 1.2.4 2 .5.5 0 .4.4-.3.8-.5.5-1 .8-1.8.8-1 .7-1.4.2-1.8-.2a3.1 3.1 0 01-.2.8.6.6 0 010 .5l.2.8a.7.7 0 00.2.4l.4.7c0 .2 0 .3.2.5l.7.6c.6.2.9.7 1 1.3.5.1.7.5.8.9.2.1.5.2.6.5h2.8c.9.2 1.5.7 2.1 1.4h1.3c.4-.2.9-.4 1.4-.4a7.8 7.8 0 012.5 0l1.3.8c.5.6 1.2.5 1.9.3a2.9 2.9 0 012.5 0c.4-.2.8-.2 1.2-.2.3-.4.6-.4 1-.5.6 0 1 .1 1 .9-.1.2-.2.4-.4.4-.3.6-.8.8-1.4.7l-.5 1c.3.9 0 1.2-.7 1.2-.2.3-.4.5-.7.4a1.5 1.5 0 01-1 .6l.3.6c.5.7-.2 1-.8 1 .1.5.2 1 .1 1.4.7.4.7.8.1 1.2.5.8.3 1.4-.5 1.8 0 .4 0 .8-.4 1-.2.3-.4.3-.3.6.4.6.3 1.3-.2 1.3l-.2.1c0 .1 0 .2-.2.2l-1.6 1.1h-.3c-.3.9-1 1.7-1.8 2.5a1.6 1.6 0 01-1 1.3c0 .2-.2.3-.4.3.3.4.5.7.2 1a3 3 0 01-1.4 1c-1.1.3-1.8.2-2.2-.2-.4-.3-.2-.6 0-.7-.7 0-.8-.3-.8-.8 0-.2.1-.2.4-.2l1-.3a2 2 0 01.5-.6c.1-.7.6-1.1 1.2-1.4.6-.2 1-.7 1.5-1.3l1-1.5a1.3 1.3 0 01-.3-.9 1.6 1.6 0 01-.6-.5c-.5 0-.7-.2-.8-.5a1.1 1.1 0 01-.3 0l-.7.2a7.4 7.4 0 01-1.2 1c-.2.3-.4.5-.8.5-1 .2-1.5 1.3-2 1.8l-.5.8c0 .6-.1 1.1-.5 1.1h-.3a1.3 1.3 0 00-.4 0c.2.3.3.6 0 1-.2.2-.5.3-.9.4a3.8 3.8 0 01-1.7-.3c-.5-.2-.6-.5-.5-.7-.4-.2-.5-.4-.4-.5 0-.2.2-.4.5-.3l.6-.2a5.6 5.6 0 012-1.5 3.2 3.2 0 01.7-.7c0-.6.4-1 1-1.5a2.2 2.2 0 01.2-.6v-.3c-.2-.4-.3-.8-.2-1.2a1.4 1.4 0 010-.6c-1.2.7-1.5.5-1.7 0-.4.3-.8.4-1 0-.5 0-.9.2-1.3 0a3 3 0 01-.8.3 3.3 3.3 0 01-.6.7 3 3 0 01-.5 1.5 9.8 9.8 0 01-.7 1.7l-.1.5c0 .7-.2 1-.5 1.1a2.6 2.6 0 01-.5.8v.2c.2.4.2.8-.2 1.2a9 9 0 01-1 .5c-.3.2-.7.1-1 0-.6-.2-.5-.4-.5-.6a.7.7 0 01-.5 0l-.4-.3c-.1-.2-.1-.4.2-.5l.9-.6c0-.2.2-.4.4-.5.2-.4.4-.7.7-.7l.7-1.6c.1-.2.2-.3.1-.5l.1-.3c.1 0 .2-.1 0-.2a1.4 1.4 0 01.3-1.2c.3-.5.6-1.6.3-2.1a3 3 0 01-.1-1h-.3c-.3-.2-.5 0-.6.3l-.4.6c-.2.9-.6 1.5-1 1.7a3 3 0 00-.2 1.2c0 .5 0 .8-.2.8s-.4.2-.5.6l-.1.3c.3.3.2.7 0 1-.8.7-1.6.6-2.5.3-.6-.2-.8-.5-.7-.7-.9-.1-.7-.8 0-1a3.7 3.7 0 002-1.5c0-.9.3-1.5.7-1.5 0-.6.3-1 .5-1.5.2-.4.4-.9.3-1.4-.5-.3-.5-.7 0-1l-.1-.3c-.3 0-.3-.3-.3-.6 0-.1 0-.2-.2-.2-.7 0-.5-.4-.2-.7.1-.1.2-.3 0-.4l-.1-.5c-.5-.3-.3-.6 0-1-.3-.1-.4-.4-.4-.7-.8 0-1-.5-.7-1l.7-.7c.2-.3.4-.6.3-.9-.2-.5.5-1 1-1.4a1 1 0 010-.4c-.4-.3-.3-.7 0-1a1.1 1.1 0 010-.4c-1 .2-1-.3-.5-1.1-.5-.3-.4-.8.5-1.6l.1-.4a2 2 0 00-1 .4c-.4.2-.7.1-1 0a1.6 1.6 0 00-.5-.4.7.7 0 01-.2-.7c-1 0-1.2-.7-.6-1.1l.6-.9c.3-.6.9-1.1 1.4-1.6a2 2 0 01.1-.6l-.8-.3c0-.2-.2-.5-.6-.6-.2-.2-.2-.3-.1-.5-.5-.5-.4-.8-.3-1z"/>
+  <g fill="#f7db17">
+    <path d="M304 130.2h-.3a9 9 0 01-.8.8c-.2-.3-.6 0-.2.1l-.2.2c-.1.3-.3.4-.6.5a1.8 1.8 0 00-.2 0 3.1 3.1 0 010-.4l.1-.4v-.1a4.6 4.6 0 00-.2 1c-.8.2-1.3 1.1-2 1.7l-.4.9c0 .2 0 1-.3 1h-.2c-.1-.2-.2-.2-.4 0a6 6 0 00-1 0c-.3.2.3.1.6.3.2.1.2.3.2.5-.3.7-2 .5-2.5.2-.3-.1-.3-.3-.3-.5h.4c.2 0 .4 0 .6-.2v-.2c0-.2-.1 0-.2 0l-.5.1h-.5c-.1 0-.2 0-.1-.1h.2l.7-.3a5.7 5.7 0 012-1.5l.8-.7c.1-.7.5-1 1-1.5 0-.3.1-.5.3-.8v-.4c-.2-.4-.3-.7-.2-1v-.9a.4.4 0 000-.1 6.6 6.6 0 01.9-.6v.8a1 1 0 00-.2.3.6.6 0 000 .3.5.5 0 010-.2 1.3 1.3 0 01.3-.3c.3 0 .5-.1.8-.4l.7-.7v1.2a2.5 2.5 0 00-.6.7v.1h.1l.5-.7h.1l.1-.2.9-.4v1a1.6 1.6 0 00.5.9z"/>
+    <path d="M287.4 120.6l.2-.2.4-.6a4.3 4.3 0 01.5-.7h.1c.1 0 0 .1 0 .1a4.2 4.2 0 00-.5.6 6.2 6.2 0 00-.4.6v.2c0 .4.1.6.3.8l.3-.5.5-.4a2 2 0 00.3-.3 1.5 1.5 0 00.2-.3h.1a1.7 1.7 0 01-.2.4 2.1 2.1 0 01-.4.3l-.4.4a1.3 1.3 0 00-.3.3c.1.1.2.3 0 .4-.1.3-.4.5 0 .8a.7.7 0 00.2.5c.1.1.1.5-.1.7-.3.3 0 .2.1.2h.1a2.7 2.7 0 01.3-.4l.3-.4.4-.5.2-.6h.1c0 .2 0 .4-.2.6a2.3 2.3 0 01-.4.6l-.3.4a2.8 2.8 0 00-.3.4c.3.2.2.5.2.8h.2a23.9 23.9 0 00.2-.3l.2-.4h.1l-.2.5-.2.2c.2.2.2.5 0 .7-.5.3-.3.4 0 .6v1.7-.4l-.1.1c-.3.7-.6 1.2-.7 1.9-.7.1-.6.8-.6 1.4a4.2 4.2 0 01-2 1.6c-.2 0-.6.1-.6.3 0 .1.3.3.4.2.5-.5.7-.2.2.2v.3c.6.4 1.8.6 2.4.2.4-.2.6-.5.2-.9 0-.6.3-1 .8-1.3.1 0 .1-.3 0-.4 0-.5 0-1 .2-1.4l.2-.2c.2 0 .6-.6.7-1.3l.1-.4c0-.2.1-.2.3-.1l.1-.4c.2-.3.6-.6 1-.4a3.2 3.2 0 01-.2-.9l.1-1 .1-.2.3-.8.4-.8c.1 0 0 0 0 .1l-.3.8-.3.8v.1a3 3 0 00.2 2v.1c.2.1.2.1.2.4v.6c.4.6 0 1.8-.3 2.3-.2.3-.2.6-.2 1 .2.1.1.3 0 .5-.1 0 0 .1 0 .1a.9.9 0 01-.3.6l-.7 1.7c-.5.1-.5.4-.7.8-.3 0-.3.1-.4.3a2.9 2.9 0 01-1 .7c-.2.1 0 .2.3.4.2.1.4-.2.6-.4.2-.3.3-.2.2 0a2.1 2.1 0 00-.2.7c0 .2.6.3.7.3.5 0 1-.4 1.3-.6.3-.2.3-.5.1-.8a2.1 2.1 0 01-.5 0 3.7 3.7 0 01-.6-.3c0-.1 0-.1 0 0l.7.1h.5v-.2l.5-.9c.4-.2.4-.4.4-1a1 1 0 00.1-.5c.3-.5.6-1 .8-1.7.3-.5.5-1 .5-1.5 0-.3 0-.4.3-.4 0-.2.2-.3.3-.5a1.8 1.8 0 01.2-.4.8.8 0 01.1-.2 1 1 0 000-.5 1.2 1.2 0 000-.5.5.5 0 01-.2-.2v-.2h.1v.2l.1.1.2.6v.5a.8.8 0 00-.2.2l-.1.4c.2 0 .4 0 .7-.2l.4-.5.2-.6h.1a2.2 2.2 0 01-.2.7l-.3.4c.4 0 .7 0 1.1-.2v-1.2l.4-.8c.1 0 0 0 0 0l-.2.8v1.2c.1.3.2.5.5.3l.4-.3v-.1a13.8 13.8 0 012-1.6 9.1 9.1 0 00-1.7 1.5v.3c0 .4 0 .6.6.4l.6-.3c.2 0 .3-.2.3-.2a9.9 9.9 0 011-.7l.2-.6.8-1.3a2.6 2.6 0 00.7-.6l.5-.7c.1 0 0 0 0 0a2.6 2.6 0 01-.4.8l-.7.6a4.3 4.3 0 00-.9 1.8v1l.7-.4.8-.7c0-.3.2-.5.3-.6a1 1 0 01.4-.4v.2a1 1 0 00-.4.3 2 2 0 00-.2.5v1.2a3.6 3.6 0 011-.6h.1v1.1c0 .3.2.6.4.8a3 3 0 01.5-.6 4.3 4.3 0 01.4-.3l.2-.2.2-.3h.1v.1l-.2.2-.3.3a3.3 3.3 0 00-.3.2v.5h.7c0 .5 0 .6.5.6a3.5 3.5 0 010-.5 2.1 2.1 0 01.1-.5h.1v.5a3.3 3.3 0 000 .5c.1.4.3.5.6.7a1.8 1.8 0 00.2-.5l.1-.5h.1a1.5 1.5 0 010 .5 2 2 0 01-.3.6v.5l.2-.3a1.8 1.8 0 01.3-.4h.1c.1 0 0 0 0 0a1.9 1.9 0 00-.3.4 4.7 4.7 0 00-.2.4l.2.2c-.7 1.1-1.4 2.7-2.6 3.2-.7.2-1 .6-1.1 1.3a2.3 2.3 0 00-.6.6c-.4.2-.8.4-1.3.4 0 .3.1.4.4.4l.8-.3s-.1.5-.6.8v.2c.4.6 1.4.4 2 .2.4 0 1.1-.6 1.3-1 .1-.2 0-.4-.2-.6-.8.1-.7-.6 0-.3.2 0 .3 0 .3-.4.7-.2 1-.5 1-1.1a11.6 11.6 0 001.8-2.2c0-.1.2-.4.1-.6l.2-.4.1-.5h.1a1.9 1.9 0 010 .5 4.1 4.1 0 01-.2.4c0 .1 0 .2.2.2.5-.5 1-.8 1.6-1.1 0-.3.2-.4.5-.4l.1-.1c.2-.4 0-.6-.2-.9-.1-.4.2-.5.4-.7.3-.2.3-.8.3-1.1v-.2a2.8 2.8 0 00-.1-.3c0-.1 0 0 0 0l.2.3v.1c.3-.1.6-.3.7-.6l-.3-.9a10.2 10.2 0 01-.6.3v-.1a11 11 0 00.7-.4l.3-.2c.2-.3-.3-.6-.5-.7l-.8-.7v-.1c0-.1 0 0 .1 0l.7.7v-1.3l-.2-.4a1.2 1.2 0 01-.5-.4 1.1 1.1 0 01-.2-.5h.1a1 1 0 00.2.5l.4.3c.3.2.7.1 1 0 .4-.2-.1-.7-.2-1l-.2-.5h.1a1 1 0 00-.1-.2.6.6 0 00-.2 0v-.1a.8.8 0 01.2 0l.2.3a1.6 1.6 0 00.1 0c.4-.1.6-.3.8-.6a3.8 3.8 0 00-.4-.4l-.4-.4.5.3a4.5 4.5 0 01.5.5c.3 0 .4 0 .5-.3a1.6 1.6 0 00-.2-.5 2.7 2.7 0 00-.3-.4c.2 0 .3.2.4.4l.2.4h.5c.3-.2 0-.8 0-1a3 3 0 00-.2-.2h-.2v-.2h.1l.2.1.2.1.4-.6c0-.4.1-.2.5-.3.5 0 .7-.1 1-.7.2 0 .2 0 .3-.3 0-.3 0-.5-.4-.5-.5 0-.8 0-1.1.4v.2c.1 0 .1 0 0 .1l-.1-.2a2.6 2.6 0 00-1.3.2 2.1 2.1 0 00-.1 0l.2.3.1.4v.1h-.1a1.1 1.1 0 00-.1-.5 2 2 0 00-.3-.4 2.8 2.8 0 00-1-.2l.1.1.2.2v.1c0 .1 0 0 0 0a8.7 8.7 0 01-.3-.2 14.6 14.6 0 01-.2-.2 3 3 0 00-.9.2 3 3 0 01-.6.2l.4.5.2.6v.1h-.1a2.3 2.3 0 00-.2-.6 2 2 0 00-.4-.5 1.9 1.9 0 01-.6 0l.2.3-.3-.4a1.5 1.5 0 01-.5-.2 8.7 8.7 0 01.2 1.6h-.1a8.4 8.4 0 000-1 5 5 0 00-.2-.7 1.8 1.8 0 01-.3-.2 2.2 2.2 0 00-.6-.5 1 1 0 01-.2.8c-.1 0 0 0 0 0a.9.9 0 00.1-.8 3.3 3.3 0 00-1.1-.3 7 7 0 01.6 1 .9.9 0 01.3.4v.5a2.2 2.2 0 00-.1-.5.8.8 0 00-.3-.4 6.3 6.3 0 00-.3-.5 5 5 0 00-.4-.5 5.3 5.3 0 00-.4 0h.1l.1.3h-.1a.5.5 0 000-.2.7.7 0 00-.2-.1h-.8a5.5 5.5 0 011 2.4v.1a5.2 5.2 0 00-.5-1.3 5.5 5.5 0 00-.7-1.2 3.7 3.7 0 00-.7.2 2.1 2.1 0 01.5.4 1.7 1.7 0 00-.3-.2 2.6 2.6 0 00-.3-.2 5.1 5.1 0 00-.3.1h-.2a4.9 4.9 0 011.1 1.2c0 .1 0 0 0 0a4 4 0 00-.6-.6 5 5 0 00-.6-.5 2.7 2.7 0 01-.7 0 5.1 5.1 0 01.5 1.9 3.8 3.8 0 00-.3-1 7 7 0 00-.4-.8 3 3 0 01-.4 0 10 10 0 01.4 1.7h-.1l-.2-1a9.9 9.9 0 00-.2-.8 4 4 0 00-1.4-1.1 1.8 1.8 0 01.4 1.2h-.1a1.7 1.7 0 00-.1-.7 1.8 1.8 0 00-.4-.6 2 2 0 00-.4 0 16.7 16.7 0 00-1-.1c.2.2.4.4.4.7h-.1c0-.2-.2-.5-.5-.7h-.7l.3.3.3.5c0 .2 0 .5.2.6 0 .2.2.4.4.5 0 .1 0 0 0 0a1.2 1.2 0 01-.5-.4 1.6 1.6 0 01-.3-.7 1.3 1.3 0 00-.2-.4 2.8 2.8 0 00-.3-.5h-.7l.2 1v1a7.6 7.6 0 00-.1-1 5 5 0 00-.3-1 1 1 0 00-.5-.4.6.6 0 01-.2.3.5.5 0 000-.4c-.2-.5-.3-.7-.7-.9v.5c0 .1 0 .3-.2.5-.1 0-.1 0 0 0a1.3 1.3 0 000-.6 2.5 2.5 0 00.1-.4c-.2-.7-.3-1-1-1.3a1.9 1.9 0 010 .2v.5h-.1v-.5a2 2 0 000-.4l-.5-.5a2.5 2.5 0 01-.1.8l-.4.9h-.1a3.3 3.3 0 00.4-1v-.8a1.1 1.1 0 01-.1-.3l-.1.3h-.1v-.3l.1-.1v-.1a.8.8 0 00-.3-.5 1.6 1.6 0 01-.3.5 1.5 1.5 0 00.2-.6 1 1 0 01-.1-.3.8.8 0 01-.1.2 1.2 1.2 0 01-.3.2l.2-.3a.7.7 0 000-.1c.1-.1.1 0 0-.2.1-.3 0-.5-.1-.8a1 1 0 00-.4 0l-.5.4v-.1c.2-.2.3-.3.5-.3a1 1 0 01.4-.1.4.4 0 000-.3 4 4 0 01-1.2.3 1.8 1.8 0 01-.8 0v-.2l.8.1c.3 0 .7 0 1.2-.3l.2-.6a1.8 1.8 0 01-.5 0h-.1l.6-.1v-.2c0-.2.3-.3.5 0 .2 0 .3.2.5.3.3.2.6 0 .9-.2h-.3v-.1h.4c.6 0 1 0 1.5-.5a7.4 7.4 0 01-1 0l-.7-.2v-.1l.7.2a7.5 7.5 0 001 0l.2-.1.4-.3a5.7 5.7 0 01-2-.6l-.8-.4a2.4 2.4 0 00-1.4.3l-.3-.3-.5-.1h-.7v-.1h.7l.6.1a4.8 4.8 0 011.9-.4 6 6 0 011.8-.2v-.2c.3-.3.4-.6.3-1-.1-.2-.4-.5-.8-.7h-1.4l-.9.1c.3.1.5.3.6.5.3.2.4.6.5 1v.1h-.2c0-.5-.2-.8-.4-1-.2-.3-.7-.4-.8-.5a9 9 0 00-1.4.3c-.3 0-.6.1-.8.3l1 .1c.2.1.4.4.6.8v.1c0 .1-.2 0-.2 0-.1-.4-.3-.6-.5-.7-.5-.2-1.4 0-1.8.2a4.5 4.5 0 00-.6.7h-.2c-.1-.1 0-.2 0-.2l.7-.7a2 2 0 01.7-.3 2.1 2.1 0 011-.6l1.5-.2-.6-.6h-.7a6 6 0 00-1.7.8h.6v.2c0 .1-.3 0-.4 0h-.5s0 .1 0 0l-1.6 1.3c-.6 0-.9 0-1 .2-.2.1-.2.3-.2.6l-.2.8c-.5.5-1.1 1-1.4 1.6l-.3.6h.3a.4.4 0 010 .1 2.5 2.5 0 010-.3l.3-.4-.1.4a2.6 2.6 0 000 .6h-.2a.3.3 0 00-.1-.3.6.6 0 00-.3 0 3.4 3.4 0 01-.4.3l-.2.3c0 .3.3.3.6.3.6 0 .1.4.5.7l.4.5h.6c0-.5 0-.7.2-.7a.8.8 0 01.2-.4c.1 0 0 0 0 0a.9.9 0 000 .3.8.8 0 00-.1.2v.4l1-.3c.8-.8 1-.6.5 0l-.1.2a1.5 1.5 0 00-.2.7c-.2.1-1 .8-.8 1.1.3 0 .4 0 .3.2 0 .2-.4.7-.3 1h.3a6.4 6.4 0 00.8-.7l.6-.8v-.1a9.7 9.7 0 01.3-.8l.3-.8h.1l.3.3a.4.4 0 00.2.1h.3l.3-.3s0-.1 0 0c.1 0 0 0 0 0a1.2 1.2 0 01-.2.3.5.5 0 01-.4.1.5.5 0 01-.3 0 1.2 1.2 0 01-.2-.3l-.3.7a10 10 0 00-.2.7v.2a4.4 4.4 0 01-.7.9l-.6.5.2.6 1-1a6.4 6.4 0 00.9-1.1 6 6 0 01-.3.6l-.1.4v.8a4.5 4.5 0 01-.1-.8v-.2a10.1 10.1 0 01-1.3 1.4c-.4.3-.6.4-.3.7l.4-.3.4-.3h.1v.1l-.4.3-.4.3a.7.7 0 00.1.4l1-.6-.8.6a.8.8 0 01-.1.2c-.3.2-1.3.8-1.2 1.2.3 0 .5-.2.7-.3.2 0 .5-.3.7-.5.1 0 0 0 0 .1a2.7 2.7 0 01-.6.5v.3h-.2v-.2l-.5.2c0 .4-.2.7-.4 1 0 .2-1 1-.7 1.2h.4z"/>
+    <path d="M287.9 106.9c-.2-.1-.5-.3-.8-.3a1.5 1.5 0 00-.5-.6c-.2-.1-.2-.1-.1-.3l.3-.1h.3l.2.2c.1 0 0 0 0 0a.6.6 0 00-.2-.3 1.1 1.1 0 00-.4 0 .8.8 0 00-.4 0l-.2-.6.4.1a.6.6 0 01.2.2.8.8 0 00-.2-.3 1.9 1.9 0 00-.2 0 3 3 0 012.3.3c.4.1.6.3.8.6l-.2.2c-.5 0-.9 0-1.1.2-.2.1-.2.4-.3.7z"/>
+  </g>
+  <path d="M304.4 130l-.4.2.4-.6v.4zm2.1 4.5l-.4.4a4.3 4.3 0 01-.5.4l.5-.5.3-.4h.1zm1.4-1.7l-.2.3c-.1 0-.1 0 0 0l.1-.3h.1zm-.7 0a1.1 1.1 0 01-.7.7l.4-.4.2-.4zm1.3-1.7a1 1 0 00-.1.2l-.1.2h-.1a1.2 1.2 0 01.2-.5h.1c.1 0 0 0 0 0zm1.1 0l-.1.5-.2.5h-.1c-.1 0 0 0 0 0l.2-.5.1-.5h.1zm-.5-6.4c.4.5.4 1 .5 1.5l.1-.5a1.5 1.5 0 00.3-1.3h.1v.7a1.8 1.8 0 01-.3.6 14.1 14.1 0 00-.2 1v.1h-.2v-.1c0-.7 0-1.3-.4-2h.1zm-.8 1v.3h-.1v-.2s0-.1 0 0zm-.2 1.5a6.3 6.3 0 01.2 1.5 1.3 1.3 0 01.4-.4h.1v.1a1.1 1.1 0 00-.3.3.8.8 0 00-.2.3l-.2-.9a6.3 6.3 0 00-.2-.8c.1-.1.1 0 .2 0zm1.1.6a3.8 3.8 0 010 1.2v-.6a3.9 3.9 0 000-.6s-.1 0 0 0zm1-.2v1.2a1.3 1.3 0 000 .6l.1.6c0 .1 0 0 0 0a2.7 2.7 0 01-.3-.6 1.4 1.4 0 010-.7 1.4 1.4 0 00.2-.5 2.3 2.3 0 000-.6zm.5-1.7v.3l-.1.3s0 .1-.1 0v-.3l.1-.3h.1zm-.5-2.8l.1.3c0 .1 0 0-.1 0v-.2s-.1 0 0-.1zm.3-2v.8a.8.8 0 00-.3.4 1.5 1.5 0 000 .6h-.1a1.5 1.5 0 010-.7 1 1 0 01.3-.4v-.8zm-2.1-.8l.8.7c.2.3.3.6.3 1h-.1l-.6-.2c.2.8.1 1.4 0 2a1.7 1.7 0 01-1 1l-.1-.1a4 4 0 00.1-1.8h.1v1a4.1 4.1 0 010 .7c.3-.2.6-.5.8-1 .1-.4.2-1 0-1.9l.7.2a1.5 1.5 0 00-.3-.8 2.7 2.7 0 00-.8-.7v-.1zm5.5-1l-.1.1h-.1v-.2h.1zm-1.3-.1a.8.8 0 01.2.2l.2.2c0 .1 0 0 0 0a.8.8 0 00-.2-.2.6.6 0 00-.3-.1v-.1zm-2 .5l.3.6v.6s0 .1 0 0a1.9 1.9 0 000-.6 1.1 1.1 0 00-.3-.5zm-6.4.7v.2a7 7 0 000 .2h-.1v-.5h.1zm1.2-.7v.3l.1.1v.1l-.1-.1a14.5 14.5 0 00-.1-.3v-.1zm2.5 1.7v.1a1 1 0 010 .2h-.1a.9.9 0 000-.2v-.2zm.8-1.9a.4.4 0 01.1.2.3.3 0 010 .2h-.1v-.1a.1.1 0 000-.1.3.3 0 000-.1c-.1 0-.1 0 0-.1zm-5.9.3l.1.4.2.3.2.5v.4a2.2 2.2 0 000-.4 1 1 0 00-.3-.4 1.1 1.1 0 01-.2-.4 1.2 1.2 0 010-.4zm2.4 1.6a2 2 0 01.2.7v.8c0 .3 0 .6.2.8.1.3.4.5.7.7a3 3 0 01-.2-1 1.8 1.8 0 01.4-1 1.5 1.5 0 00.3-.4v-.5h.1v.5a1.6 1.6 0 01-.3.5 1.7 1.7 0 00-.3 1l.1 1v.1a2.8 2.8 0 01-1-.8 1.3 1.3 0 01-.1-1v-.7a2 2 0 00-.2-.7h.1zm-1 1.5l-.1.8a4 4 0 01-.5.6 3.2 3.2 0 00.3-.1 2.4 2.4 0 00.7-.6l.4-.3a3.8 3.8 0 01-.3.4 2.6 2.6 0 01-.3.3 26.1 26.1 0 01.1.3v.1h-.1v-.4a2.5 2.5 0 01-.5.3l-.4.1s-.1 0 0 0a3.9 3.9 0 00.5-.8l.1-.7h.1zm-1.1-.1v.2h-.1v-.2z"/>
+  <path d="M302.4 121.3c.1.4.2.8.1 1 0 .4-.2.7-.4 1a2 2 0 00-.6.7 2.8 2.8 0 00-.1.5l.2-.2c0-.1.2-.3.5-.3a5 5 0 001.2-1h.1l-.6.6a5.1 5.1 0 01-.7.5 1.1 1.1 0 00-.5.3l-.3.4h-.1l.2-.9.6-.7.4-.8-.1-1c0-.1 0 0 0 0zm2.3 3.8l.2.4.1.2c.2.2.3.5.3.8l-.1 1h-.1a2 2 0 00-.4-1 3.7 3.7 0 00-.9-.7l1 .7.3.7v-.7a1.4 1.4 0 00-.2-.8 3.6 3.6 0 000-.1c-.3-.2-.3-.3-.3-.5h.1zm1 0l.2.1v.1c.1 0 .1 0 0 .1l-.1-.1-.1-.2zm1.3.4l-.3.7-.2.7s0 .1 0 0h-.1l.2-.7.3-.8zm.7 4.1a.3.3 0 000 .2h-.1a.4.4 0 010-.2zm-.8-1.2v.4l-.2.4v-.5l.1-.3h.1zm-1 0c0 .1.1.1 0 .2l-.1-.1v-.1zm-1.3-.6a5.7 5.7 0 01-.1.4h-.1a5.7 5.7 0 01.1-.4s0-.1.1 0zm-1.8 1.9a.7.7 0 00-.1.2 1.3 1.3 0 000 .3h-.1v-.3a.8.8 0 01.2-.3zm-5 5a.7.7 0 01-.1.1 1.3 1.3 0 01-.2.2h-.1v-.1a.9.9 0 00.3-.3zm.8-.5a.4.4 0 01-.1.2.7.7 0 01-.2 0s0 .1 0 0c-.1 0 0 0 0 0a.5.5 0 000-.1.3.3 0 00.2-.1zm1-.6a.6.6 0 01-.2.2v-.1a.4.4 0 00.1-.2h.1zm1.6-4.1v.4c-.1.1 0 .3 0 .4l-.1.1a1.5 1.5 0 01-.1-.5l.1-.5h.1zm1-11a1 1 0 010 .3l-.3.4v-.1l.2-.3a.8.8 0 000-.4h.1zm-1-1l.2.5v.5h-.1a1.9 1.9 0 000-.5 1.6 1.6 0 00-.2-.5zm-1.5 1.8a1.6 1.6 0 01-.4-.5.7.7 0 01-.1-.4c.1 0 .1 0 0 0a.6.6 0 00.2.4l.4.4c0 .1 0 .1 0 0zm1.6 2.7v.3-.3zm-2-2c.3.2.5.6.6 1v.8h.1c.1 0 .3-.1.3-.4a2.9 2.9 0 00.2-.9l.2-.6.1-.6h.1l.5.9.3 1h-.1a3.1 3.1 0 00-.3-1 4.1 4.1 0 00-.4-.7 3.1 3.1 0 010 .5 2 2 0 01-.3.5c0 .4 0 .8-.2 1 0 .2-.2.4-.3.4h-.1v.5h-.1l-.1-1.3a2.1 2.1 0 00-.6-1v-.2zm1.2 5.1v.5l-.2.4v-.9h.1zm-2.4 1l.1.4h-.1v-.4zm2-2.6l-.1.6a2.4 2.4 0 01-.4.6 1 1 0 00-.3.7v.7a2 2 0 01-.1-.8c0-.2.1-.5.3-.7a2.2 2.2 0 00.6-1.2zm-.5-.8v.6a3 3 0 01-.5.6 2 2 0 00-.4.5 4.4 4.4 0 00-.3.6l.2-.6.5-.6a2.2 2.2 0 00.4-.5 1 1 0 000-.6h.1zm-2.5 1.2c0 .4 0 .8-.2 1-.1.4-.4.7-.7 1-.1-.1-.1-.1 0-.2.2-.2.5-.5.6-.8.2-.3.2-.6.2-1zm-3.3 1.8v.2l.2.2c-.1.1-.1 0-.1 0l-.1-.1-.1-.2v-.1zm-1.3 0v.8c0 .3.2.4.4.7a2.3 2.3 0 01.2.9l.4-.6.1-.6h.1a1.7 1.7 0 01-.1.7l-.5.6h-.1a3.5 3.5 0 000-.5 2 2 0 00-.2-.5 2 2 0 01-.3-.7 2.9 2.9 0 01-.1-.8zm.2 4.5a2.8 2.8 0 01.1-.8h.1a2.7 2.7 0 00-.1.8h-.1zm-.2 1.2v-.5h.1v.5h-.1zm-.9 2.1l.3-.3a4.6 4.6 0 00.2-.3h.1a4.1 4.1 0 01-.2.4 2.1 2.1 0 01-.3.3v-.1zm-1.2-7v.2-.2zm-2 4.8v-.3.3zm5.2-8.5a4 4 0 00-.2 1c0 .4 0 .7.3.8.3.2.4.4.5.7l.1-.4a1.7 1.7 0 000-.4c0-.1.1 0 .1 0a2.7 2.7 0 01-.1 1h-.1a6.3 6.3 0 01-.1-.2c-.1-.2-.2-.5-.5-.6-.2-.2-.3-.5-.3-.8 0-.4 0-.8.2-1.1zm-.4-1.4v.8a4.3 4.3 0 01-.3.8 2.6 2.6 0 00-.2 1c0 .4.2.8.3 1.1v.1a2.7 2.7 0 01-.2-2.2l.3-.8v-.8h.1zm-2.4 3.5a.8.8 0 000 .5l.1.5a1.6 1.6 0 01-.3-.5 1 1 0 010-.6h.1c.1 0 0 0 0 0zm-1-.4a1.2 1.2 0 01-.2.6.4.4 0 000 .3l.1.3a1 1 0 01-.2-.3.5.5 0 010-.4.8.8 0 00.1-.2 1.2 1.2 0 000-.3h.1zm6.1-9.2a2.5 2.5 0 00.3 1.6l-.4-.8a2.5 2.5 0 010-.8h.1zm-.8.7a4.1 4.1 0 01.6 1.9h-.1a4 4 0 00-.6-1.8h.1zm-3.8.2c-.4.5-.6 1-.6 1.3 0 .4 0 .7.2 1a2.5 2.5 0 010 1.7h-.1l.2-.9a2.4 2.4 0 00-.2-.8l-.2-1c0-.4.2-.8.6-1.4.1 0 .1 0 0 0zm3.6-1.6a.8.8 0 010 .5l-.4.5a.9.9 0 00-.4.5v.7c-.1-.3-.1-.5 0-.8a1 1 0 01.3-.5l.3-.4a.7.7 0 000-.4l.1-.1zm-3.8.4v.7a1.7 1.7 0 01-.4.6c-.2.2-.4.4-.4.7a3 3 0 00-.2.8v-.9a1.4 1.4 0 01.5-.6l.4-.7a1 1 0 000-.6zm2.1 0a.8.8 0 000 .3.6.6 0 00.1.3.7.7 0 01-.2-.2.9.9 0 010-.3h.1zm0-.5a1 1 0 00-.5.4 2 2 0 00-.2.8l.2.6.1.7h-.1a2.6 2.6 0 000-.7 1.3 1.3 0 00-.3-.5c-.4.4-.6.8-.6 1.3a2.8 2.8 0 00.5 1.6 3 3 0 01-.6-1.6c0-.5.2-1 .7-1.4 0-.3 0-.6.2-.8a1 1 0 01.5-.5v.1zm-.7-.8v.1c0 .3 0 .6-.2.8a.9.9 0 00-.3.3v.4h-.1a1.8 1.8 0 010-.4 1 1 0 01.3-.4l.2-.7v-.1h.1zm6 6.5a2.1 2.1 0 01.3.8h-.1a1.5 1.5 0 000-.4 2 2 0 00-.2-.4zm0 2v.6a2.4 2.4 0 01-.2.7l-.2.6h-.1l.2-.6c.2-.2.2-.5.3-.7a1.7 1.7 0 000-.6v-.1zm-1.2-2a2.7 2.7 0 01.7 2.8h-.1a2.6 2.6 0 00-.7-2.6v-.1h.1zm0 2.3a5.7 5.7 0 01-1 1.4 2.7 2.7 0 00-.6 1 1.5 1.5 0 00-.2-.5 2 2 0 00-.2-.5c-.2-.3-.3-.6-.2-.9 0-.3 0-.6.3-.9a2.8 2.8 0 00.3-.6v-.6h.1a2.8 2.8 0 01-.3 1.3l-.3.8c0 .3 0 .6.2.9a2.2 2.2 0 01.3.7 2.8 2.8 0 01.5-.7 5.4 5.4 0 001-1.4zm-3.4-1a3 3 0 000 .7l.4.7c-.1.1-.1 0-.1 0a2.4 2.4 0 01-.3-.6 3.2 3.2 0 01-.1-.8v-.1h.1zm-1.9 1v.3-.3zm.7-1.7a1.5 1.5 0 01-.4 1c-.1 0-.1 0 0 0a1.4 1.4 0 00.2-.5 1.5 1.5 0 000-.5l.1-.1zM291 124a3.5 3.5 0 01-.3-1.9 2.1 2.1 0 01.6-1.1l.5-.7v-1h.1v1l-.6.8a2 2 0 00-.5 1c-.1.5 0 1.1.3 1.9h-.1zm-1-1.3a.8.8 0 000 .4v.4s.1 0 0 0a1 1 0 01-.2-.4.9.9 0 010-.4h.1c.1 0 0 0 0 0zm4.8-3.4l.3.9c0 .3 0 .6-.2 1-.1 0-.1 0 0-.1l.1-.9a1.6 1.6 0 00-.3-.8c0-.1 0 0 0 0zm1.5-1.1a2.6 2.6 0 010 1.7 1.9 1.9 0 00-.2-.7 1.6 1.6 0 00-.5-.6c0-.1 0-.1.1 0a1.7 1.7 0 01.6 1v-.6a2.4 2.4 0 00-.1-.8c0-.1 0 0 0 0zm.9-1.3l.4.8.1 1.1v.5l.1.5a1.1 1.1 0 01-.2-.4 2.4 2.4 0 010-.6 3.8 3.8 0 00-.1-1c0-.4-.2-.6-.4-.8 0-.1 0 0 0 0zm-2.4-.2l-.2.6v.6c-.1.1-.1 0-.1 0a2.2 2.2 0 010-.7c0-.2 0-.4.2-.6h.1v.1zm-4.6 3.1a2.1 2.1 0 01-.4 1.2l-.8.7h-.1c-.1 0 0 0 0 0l.8-.8a2 2 0 00.4-1v-.1zm-.1-1.6v.5a2.3 2.3 0 01-.3.5l.1-.5a1.3 1.3 0 000-.4l.1-.1zm3.1-.2v1.1h-.1V118h.1zm.8-1.4c-.3.3-.4.5-.4.8l.2.8c.3.4.4.8.3 1.2 0 .4-.1.9-.3 1.3h-.1l.3-1.3a2 2 0 00-.3-1.2l-.2-.8c0-.3.1-.6.4-.9.1 0 0 0 0 .1zm-5-8.7l1.2-.5c.4 0 .8 0 1.2.3h.8-.8v.1a3 3 0 01-1.2.7 1.1 1.1 0 01-.9-.2v-.1l.9.2 1-.6a2 2 0 00-1-.2c-.3 0-.7.2-1 .4h-.1z"/>
+  <path d="M290.2 107.8a.3.3 0 010 .6.3.3 0 01-.3-.3c0-.2.1-.3.3-.3zm1.9 1.7l.5-.3a2.3 2.3 0 00.3-.4c.1 0 .1 0 0 0l-.2.5a2.4 2.4 0 01-.5.3h-.1v-.1zm4-1.6a.6.6 0 01.2 0l.4.1v.1h-.1a.7.7 0 00-.3-.1.5.5 0 00-.2 0c-.1-.1 0-.1 0-.1zm-2.3 0a1 1 0 01.4-.4l.7-.1v.1a1 1 0 00-.7.1.8.8 0 00-.3.4h-.1zm.2.4a.5.5 0 01.2-.2.6.6 0 01.3-.2v.1a.5.5 0 00-.3.1.4.4 0 000 .2h-.1zm-3.7 1.3l-.2.3a.9.9 0 000 .3h-.1a1 1 0 01.2-.7c.1 0 .1 0 0 0zm1 .5v.1-.2zm-.6-1.2h.7a1.5 1.5 0 01-.4.1 1 1 0 01-.4 0v-.1zm.7-2a.3.3 0 00-.3 0 .4.4 0 00-.1.2h-.1a.5.5 0 01.2-.3.5.5 0 01.3 0zm-1.2 0a.8.8 0 00-.2.2l-.1.1a.4.4 0 010-.2 1 1 0 01.3-.2v.1zm-.7 0a.9.9 0 00-.1.2.7.7 0 00-.1.2h-.1a.8.8 0 010-.2 1 1 0 01.3-.2zm-.8.8a1.8 1.8 0 00-.4.4h-.1a2.2 2.2 0 01.4-.5c.1 0 0 0 0 0zm0 1l-.1.1-.2.2.1-.2.2-.2zm-.9.2v.4-.4zm1.2 1.5v.6s0 .1-.1 0v-.6c.1 0 .1 0 0 0zm-.7-.5a22.1 22.1 0 010 .4h-.1v-.4h.1zm-.6-4.8a.8.8 0 01.5.5v.1h-.1a.7.7 0 00-.2-.3.7.7 0 00-.2-.2s-.1 0 0 0zm5.5 7.2a1.8 1.8 0 010 1.5v-.8a1.7 1.7 0 00-.1-.6v-.1h.1zm-1.8 2l.3-.6.5-.6a1.9 1.9 0 00.3-1.5v-.1h.1v.9a2 2 0 01-.3.7l-.5.6a2.8 2.8 0 00-.3.7c-.1 0-.1 0 0 0zm-2.3-.5l.2-.3a1 1 0 01.3-.2v.1a.8.8 0 00-.3.2.6.6 0 00-.1.2h-.1zm-.5-.2l.3-.3.4-.2-.3.3-.3.3zm2.5-2.3a.7.7 0 00.2 0 .9.9 0 00.3 0 .8.8 0 01-.6 0zm-1.3-.2l.1-.1h.1a3 3 0 010 .2h-.1v-.1zm25.8 7.4l.2.2v.2c0 .1 0 0 0 0a.8.8 0 00-.1-.1.8.8 0 00-.2-.2c0-.1.1 0 .1 0zM287 132l.4.2.5.1v.1c0 .1 0 0 0 0a1.1 1.1 0 01-.5 0 1.9 1.9 0 01-.5-.4h.1z"/>
+  <g fill="red">
+    <path d="M308.6 106.3a8.8 8.8 0 001.8 0c-.6.3-1.3.6-2 .7a.8.8 0 00.2-.3.5.5 0 000-.4zm-1.5-.1l1.3.1v.3l-.3.3v.2a6 6 0 01-1.3 0 1 1 0 00.3-.5.7.7 0 000-.4zm-11.2-3.3h2.2c.2 0 .4.2.5.4.1.2.2.5.1.8l.1.1h.1l-.1-1a1.1 1.1 0 00-.3-.3h.2c.9 0 1.5.3 2.3.6l.2.6-.4.6c.1.2.2.1.2 0 .2-.1.3-.4.4-.6a.7.7 0 000-.4l1.8 1v.5l-.5.3s-.1 0 0 .1c0 .1 0 .1 0 0 .3 0 .5-.2.7-.3a.7.7 0 000-.5l1.3.6c0 .2.1.3 0 .4 0 .2-.2.3-.4.4v.1c0 .1 0 .1.1 0 .3 0 .4-.2.5-.4a.6.6 0 000-.3l.5.1a8.8 8.8 0 001.4.4.5.5 0 01.1.4.8.8 0 01-.2.4v.2c-1.5-.2-3-1-4.4-1.5l-.5-.2-1.7-.7h-.2v-.1a9 9 0 00-1.5-.4 6.5 6.5 0 00-1.8 0c0-.3 0-.6-.2-.8a1.3 1.3 0 00-.5-.5z"/>
+    <path d="M293.3 103.6a9.3 9.3 0 012.2-.6c.4.1.6.3.7.5.1.2.2.4.1.7a4.5 4.5 0 00-2 .2c-.1-.3-.3-.5-.6-.7a1.3 1.3 0 00-.4 0zm8 4a10 10 0 00-.6-.3 7.4 7.4 0 00-3.3-.9c.4-.4.5-.8.4-1.2a1.8 1.8 0 00-.7-.8l1.1.1a8.7 8.7 0 012 .5c.1.4.2.7.1 1s-.3.5-.6.7c0 0-.1 0 0 0 0 .2 0 .2.1.1.4-.2.6-.5.7-.8v-.9l1 .7 1.2.8c0 .5-.2.7-.4.9h-1v.2z"/>
+    <path d="M303.4 109.3l-2-1.5c.4 0 .8 0 1-.2.3-.1.4-.4.5-.8a16.6 16.6 0 011.7 1.5v.5a.5.5 0 010 .2.6.6 0 01-.3.2 1.9 1.9 0 01-.8 0v.1z"/>
+    <path d="M305.7 110.8a12.3 12.3 0 01-.7-.4l-1.4-1h.7a.8.8 0 00.4-.2.7.7 0 00.2-.4 1 1 0 000-.3 11.4 11.4 0 002.2 1.6c0 .2 0 .4-.3.4l-1 .2h-.1z"/>
+    <path d="M308.1 111.8a12.7 12.7 0 01-2.2-.9c.4 0 .8 0 1-.2.3 0 .5-.2.5-.5l1.3.6v.4c0 .2-.3.3-.5.4 0 0-.1 0 0 .1z"/>
+    <path d="M313.2 111.2h.2c-1.4 1-3.3 1-5.1.6.3-.1.5-.3.6-.5 0-.1.1-.3 0-.4a9.4 9.4 0 001.8.4.4.4 0 01-.1.2l-.5.4s-.1 0 0 0v.2l.7-.4a.6.6 0 00.1-.4 9.6 9.6 0 002.3 0zM302.9 137l-.3.4c-.4.1-.8.3-1.3.3 0 .3.1.4.4.4l.8-.3s-.1.5-.6.8v.2c.4.6 1.4.4 2 .2.4 0 1.1-.5 1.3-1 .1-.1 0-.4-.2-.6-.5 0-.6-.1-.6-.3-.4-.1-1-.2-1.5-.1zm-16.2-5.1l-1.1.6c-.2 0-.6.1-.6.3 0 .1.3.3.4.2.5-.5.8-.2.2.2v.3c.6.5 1.8.6 2.4.3.4-.3.6-.6.2-1v-.2l-.6-.1-.4-.3-.5-.3zm10.7 3.7h-.2c-.2.2.4.1.7.3.2.1.3.3.2.5-.3.7-2 .5-2.5.2-.3-.1-.3-.3-.3-.5a2 2 0 001-.2v-.2h-.2a1.4 1.4 0 01-.5.1h-.5c-.1 0-.2 0-.1-.1h.2l.8-.2v-.2c.6 0 1 .2 1.4.3zm-7.7-.5l-.2.3a2.9 2.9 0 01-1 .7c-.2.1 0 .2.3.4.2.1.4-.2.6-.4.2-.3.3-.2.2 0a2 2 0 00-.2.7c0 .2.6.3.8.3.4 0 .9-.4 1.2-.6.3-.2.3-.5.1-.8a2.1 2.1 0 01-.5 0 3.7 3.7 0 01-.6-.3v-.1l-.7-.2zm3-28.1h.3l.7.1a4.8 4.8 0 011.8-.4 6 6 0 011.8-.2v-.2c.3-.3.4-.6.3-1 0-.2-.4-.5-.8-.7h-1.4c-.3 0-.6 0-.9.2.3 0 .5.2.7.4.2.2.3.6.4 1v.1h-.2a2 2 0 00-.4-1c-.2-.3-.7-.4-.8-.4-.5 0-1 0-1.4.2-.3 0-.5.2-.8.3h1c.2.2.5.5.6.9v.1c0 .1-.2 0-.2 0-.1-.4-.3-.6-.5-.7-.5-.2-1.4 0-1.7.2a4.5 4.5 0 00-.7.7h-.1c.8 0 1.6.1 2.3.4zm-2.4-.5v-.1l.7-.7.7-.3a2 2 0 011-.6l1.5-.2a1.1 1.1 0 00-.6-.6h-.7l-1.7.8h.6v.2c0 .1-.3 0-.4 0a1.4 1.4 0 00-.5 0s0 .1 0 0l-1.4 1.1.7.4z"/>
+  </g>
+  <path fill="#0093dd" d="M351.4 167l22.2-50.1-16.4-26.4-29 10.8-13.6 53a234.2 234.2 0 0136.8 12.8z"/>
+  <path fill="#fff" d="M323.2 120.6a268.7 268.7 0 0142.3 14.7l-8.6 19.3a247.6 247.6 0 00-38.9-13.4z"/>
+  <path fill="red" d="M358.3 151.5l5.7-12.9a265.3 265.3 0 00-41.7-14.4l-3.4 13.2a251.8 251.8 0 0139.6 13.7l-.2.4z"/>
+  <path d="M326.4 134.2c.4-.2.8-.1 1.2 0 .3-.2.7-.2 1.1-.2a2 2 0 01.7-.2v-.3a.7.7 0 01-.2-.4 3 3 0 01-1.1-1.6c-.4 0-.6-.2-.6-.3a35.6 35.6 0 01-.6 0c-.8 0-1-.3-1.3-.5a1 1 0 01-.7-.5l-.2-.3c-.3-.3-.2-.7.2-.7h.7c.2-.2.6-.2 1-.2.3 0 .5-.2.9-.5v-.5c0-.1 0-.2.2-.1.4 0 .7.2.9.5.5.1 1 .3 1.3.8.7 0 1.2.3 1.2.5s-.2.5-.5.7v.1l.4.5 1.1.7c1-.1 2.8.6 5.1 2.1 1.5.3 3 .7 4.4 1.3h1c2.5-.3 5 0 7.2 1.7.8.1 1.6.4 2.4.7a5.8 5.8 0 001.7.4c.9 0 1.8.3 2.7.7 1 .2 2 .6 2.6 1.3.5.5.4 1-.2 1.2-.3.7-1 .7-2 .4-.6 0-1.4-.4-2-1a10 10 0 01-2.7-1.4 3.5 3.5 0 00-1.3-.6h-.9v.2c.3.2.4.5.5.8v1c0 .5.3.8.7 1l1 .5c.3 0 .4.1.4.3l.4 1.8.4.4c.6.4.3 1-.3 1-.5.5-.9.8-1.4.9-.4.1-.6 0-.7-.2a.5.5 0 01-.5-.3c-.5-.4 0-1 1.1-.7 0-.2.2-.2.3-.2a1.6 1.6 0 010-1l-.4-.2a3 3 0 01-1.1-.6c-.6-.6-1.6-1-2.5-1.6-.8 0-1.3-.3-2-.6h-.7c-.3-.1-.5 0-.6.1-.2.3-.5.3-.8.2h-1.2l-.5.1c-.5 0-.9 0-1.1.2-.3.3-.5.2-.7.2a1 1 0 01-.4-.3l-.6-.2c-.5-.2-.6-.3-.6-.4-.6-.2-.3-.7.1-.7l1.5.1c.4.1.9 0 1.2-.2l.6-.6a4.1 4.1 0 01-2-.5c-1.2-.7-2.2-1-3-.3-.2.2-.4.2-.6.1a1.1 1.1 0 00-.6 0l-1.3-.1a4.4 4.4 0 01-2 0c-.6.3-1 .4-1.2.1a9.1 9.1 0 01-.7-.4c-.4 0-.5-.1-.5-.2-.5-.1-.5-.3-.5-.4-.2-.3-.1-.4 0-.6.4-.1.7-.2 1.1 0l.5.4h.7c.2-.2.6-.2 1-.2l.8-.2v-.2c-.5-.1-.7-.4-.9-.8a3.1 3.1 0 01-1.7-.6c-.4 0-.7 0-1-.2h-.8a2.7 2.7 0 01-1.5 0l-.9-.1c-.3.3-.6.4-1 .2a1.6 1.6 0 00-.9-.5c-.3-.1-.4-.2-.4-.4-.4-.2-.3-.4 0-.6.3 0 .6-.1 1.1.1l.5.1z"/>
+  <path fill="#fff" d="M343.1 139.3s-.1-.2-.3 0c-.9 0-1.7 0-2.4-.5-.7-.4-1.4-.8-2.2-.7a2 2 0 01.9-.5 4 4 0 011.5 0c.8 0 1.5.3 2 .5.6.2 1 .4 1.1.7a.4.4 0 00.1 0 3.7 3.7 0 01.9.8h-.8a3 3 0 01-.8-.3z"/>
+  <path d="M345 101.1v.2l1 5.2-4 3.5-.2.1.3.1 5 1.7 1 5.2v.2l.2-.2 4-3.4 5 1.7h.1v-.1l-1-5.2 4-3.5.2-.1-.3-.1-5-1.7-1-5.2v-.2l-.2.1-4 3.5-5-1.7z"/>
+  <path fill="#f7db17" d="M342.5 109.9l3.7-3.2 4.7 1.6zm9-1.7l3.7-3.3 4.6 1.6zm8.4-1.5l-3.7 3.2-4.7-1.6zm-9 1.7l-3.7 3.3-4.7-1.6zm-5.4-6.8l4.6 1.6 1 4.8zm6 6.9l4.6 1.6 1 4.8zm5.4 6.5l-4.6-1.6-1-4.8zm-6-6.9l-4.6-1.6-1-4.8zm3.2-8.1l1 4.8-3.7 3.2zm-3 8.6l1 4.9-3.7 3.2zm-2.9 8l-1-4.8 3.8-3.2zm3-8.6l-1-4.9 3.8-3.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ht.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ht.svg
new file mode 100644
index 0000000..920833a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ht.svg
@@ -0,0 +1,116 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ht" viewBox="0 0 512 512">
+  <path fill="#d21034" d="M0 0h512v512H0z"/>
+  <path fill="#00209f" d="M0 0h512v256H0z"/>
+  <g fill="#f1b517" stroke="#000" stroke-width=".2">
+    <path fill="#fff" stroke="none" d="M175.2 191.6h161.6v128.6H175.2z"/>
+    <path fill="#016a16" stroke="#016a16" stroke-width=".3" d="M288.5 284.6l-33 1-32.8.3s-16.8 6.3-23.7 7.7c-6.9 1.4-6 3.6-11.3 4.8-4.3 1-4.8 1.3-7.3 1.4-1.5.1-3.3 1.3-5.2 2.6v17.8h161.6v-17a31.8 31.8 0 00-5.2-2.1c-2.3-.8-4-1.7-8.2-2.7-5.3-1.2-4.4-3.4-11.3-4.8s-23.6-9-23.6-9z"/>
+    <g transform="translate(-170.7) scale(1.70667)">
+      <g id="a">
+        <path d="M244.5 143.5h1.4l2.6 10.7-.6 3.4-3.4-14z"/>
+        <path fill="#fff" d="M243 136.3l1 8.3h1l-2-8.2z"/>
+        <path d="M245.7 154.6l-4.3-11.5 1.6-.1 5 14-2.3-2.4z"/>
+        <path fill="#fff" d="M239.4 136.5l1.8 8h1.4l-3.2-8z"/>
+        <path d="M241.9 150.6l-2.5-5.5 1-.2 4.7 9-3.2-3.3z"/>
+        <path fill="#fff" d="M236 138.8l2.9 7.6h1.4l-4.2-7.6z"/>
+        <path fill="#0a328c" d="M242.3 151.4l-11.5-12.5c-3.6 2.8-2.9 8-2.9 8l13 10.2 1.3-5.7z"/>
+        <path fill="#d20014" d="M248.9 158.2l-8.5-8.6c-3.6.2-.8 5.5-.6 6.2l9 7.7v-5.3z"/>
+        <path d="M248.1 156.8L230.6 138l-.7.5 18.6 20.6-.4-2.3zm-18.5-20l-.4-.5v-.9l-3.6-2.3 1.6 3.7 1.3.2.3.4.8-.6z"/>
+        <path d="M227.7 138.1a8.4 8.4 0 012.7-2.2l1 1.5-2.2 1.8-1.5-1z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M225.8 141.3l.6 1c.4-.1 4-3.5 4-3.5h2.7l.7-.9c-2-2-3.7.3-3.7.3l-4.3 3z"/>
+        <path fill="#d20014" stroke="#d20014" d="M228 143c0-1 1.8-3.2 2-3.3 1.3.4 2.5 1.2 3.9-1.8-1.2 1.4-3.5 0-3.5 0l-1 .8v.4l-3 2.8 1.5 1.1z"/>
+        <path fill="#0a328c" d="M237.3 154.7l-14.4-11.4c-2.5 2.5-.4 10.2-.4 10.2l14 7.6.7-6.4z"/>
+        <path fill="#d20014" d="M249.2 164l-11.9-9.6c-4 .6-.8 6.5-.6 7.2l12.5 6.8v-4.5z"/>
+        <path d="M248.7 162l-25.6-19.2-.5.6 26.8 21-.7-2.4zm-26.8-20.2l-.4-.4-.2-.8-4-1.7 2.3 3.3h1.3l.4.4.6-.8z"/>
+        <path d="M220.3 143.4a8.2 8.2 0 012.3-2.6l1.2 1.3-1.8 2.1-1.7-.8z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M219 146.6v1.1c.4-.2 3.7-3.7 3.7-3.7l2.5-.5.6-.8c-1.8-2.1-3.7.7-3.7.7l-3.2 3.2z"/>
+        <path fill="#d20014" stroke="#d20014" d="M221 148.5c-.2-1 1.2-3.8 1.4-4 1.6.5 3 1.2 3.5-2-1 1.6-3.5.4-3.5.4l-.8 1v.5l-2.5 3.3 1.9.8z"/>
+        <path fill="#0a328c" d="M236.2 161.7a2783.3 2783.3 0 01-18.5-10.5c-1.3 2.3-.1 5.5.5 6 0 1.5-.6 2.3.7 5.5.4 2 1.3 3.9 2.7 5 1.6 6.4 8.2 6.9 10.7 1.6l4-7.6z"/>
+        <path fill="#d20014" d="M248.3 168.5l-12.5-7.3c-4 .5 0 8 .3 8.7l12.2 4.3v-5.7z"/>
+        <path d="M246.2 165.8l-28.3-15-.5.6 30 16.7-1.2-2.3zM216.5 150l-.5-.3-.3-.8-4.1-1 2.7 2.9 1.2-.2.6.3.4-.9z"/>
+        <path d="M215.2 151.8c.4-1 .8-1.9 1.8-3l1.4 1.1-1.4 2.4-1.8-.5z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M214.1 155.2l.6 1.2 3-4.6 2.5-.9.5-1c-2-1.8-3.5 1.4-3.5 1.4l-3.1 3.9z"/>
+        <path fill="#d20014" stroke="#d20014" d="M216.8 156.8c-.2-1 .5-4.2.7-4.3 1.5.5 2.8.6 3.2-2.6-1 1.5-3.3 1-3.3 1l-.7 1 .1.4-2 4 2 .5z"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#a"/>
+    </g>
+    <g transform="translate(-170.7) scale(1.70667)">
+      <path fill="#016a16" stroke="#016a16" d="M248.8 125.6l-.5 9h2.9l-.4-9 3-.3-.3-3.6-7.5.3v3.2l2.8.4z"/>
+      <g id="b" fill="#016a16">
+        <path d="M249.8 121.9c-7.8-7.8-13.9-4-15.3-2.9 1 .2 1.8-.4 2.3-.5l-1 1.2s2.5-1 2.8-1c-.4.3-.8 1-.8 1 .2 0 1.6-1.1 1.8-1.1-.4.4-.5 1.5-.5 1.5l1.2-.5c.3.2-.1.6.1.6 2-.2 4.7 1.7 5 2.3"/>
+        <path d="M247.9 123.3c-.8-1.8-15.6-5-18.6.3 1.2.3 2.3-1 2.3-1v1.2l1.9-1.6-.7 1.6 1.5-1.3v1.3l2-2-.3 1.1 1.7-.7-.2 1"/>
+        <path d="M247.2 123.6c-3.8-2.5-9.6-.8-9.6-.8-3.8 2-5.8 1.7-6.2 5.6.3-.1 1.3-1.4 1.3-1.4l.8 1.5.2-2.1.6 1.7 1-2.8.2 1.9 1.4-1.9.6.6.6-1.5.6 1s1-.6 1.5-.3l1-1.2.3.9 1-1 .3.7.9-.8v.6h3"/>
+        <path d="M246.4 124c-2.7 0-10.3 2.9-12.2 5.8a13.3 13.3 0 011.3-.6l.3 1.2.5-1.2.1 1c.3-.8.6-.8 1.2-.1l.2-1.1.3 1 .5-1.1s.3 1.2.5 1.2c0 0 .8-2.2 1.2-2.3l.1 1.4.5-1.4.5 1v-1.4l.6 1s.2-1 .6-1.2l.8.7 3.4-2.5"/>
+        <path d="M246.9 124.7c-3.5 1.3-6.7 6.2-6.4 8.2 1.5-2 1.2-1.7 1.9.6 0 0 .2-2 .5-2.2l.5 1.4.1-1.9h.5l-.1-1.1.7.5c-.2-.7-.3-.9.4-1.5 0 0-1 .1-.2-1.5l.7.6s-.2-.7 0-1l2.6-.8"/>
+        <path d="M247.2 125l-1.3 2.6.7.2-1.6 1.1 1.3-.1s-2 .7-2.2 2.7l2-1s-1.7 1.8-2 2.9l1.3-1s-1.2 1.2-1 3l.9-1c-.2 2.3-.2 2.5.8 4.2 0 0-.2-2.6 0-3l2.3 2.4-1.2-3.3s1.4 2 2.2 1.9l-1.8-2.7 1.8 1.4-2-3 1.8.6s-1.3-1.7-1.2-2.8l1.3 1.4s-.5-1.5-.4-2l.7.1-1.3-1.4.9-.2-.1-1 .6-.1v-1.1m-1.1 0c-2.2 3-1.1 7.5-2.4 9.9"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#b"/>
+      <path d="M251 166.5s1.1-10 1.1-14.2c0-3.4-.8-10.8-.8-10.8H248s-.5 7.4-.4 10.8c0 4.2 1.1 14.2 1.1 14.2h2.3z"/>
+      <path d="M247.7 142h4l-.5-2.7h-2.9l-.6 2.6z"/>
+      <path d="M248 139.8h3.5l-.7-2.7h-2.2l-.7 2.7z"/>
+      <path d="M248.2 137.7h3l-.6-2.7h-1.9l-.5 2.7z"/>
+      <path d="M250.7 134.7h-2l-.3 1h2.5l-.2-1zm.4 29.7h-2.6m2.8-2h-3m3.4-2h-3.8m4-2.1h-4m4-2.2h-4.1m4.2-2h-4.4m4.4-1.7h-4.6m4.6-2.2h-4.6m4.5-2.1h-4.5m4.3-2.2h-4.1m3.9-2h-3.7"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M250 119c-.8-.3-2.3-1.3-1.9-1.9l.7-1.2c1-2.2 0-1.4 0-2-.2-.8 3.8-.2 3.8 1.3 0 .5-.3.2-.2 2.6l-.8 1.5a3.5 3.5 0 01-1.7-.2z"/>
+      <path d="M250.4 125l-1-.9.3-7.1 1 .3-.3 7.6z"/>
+      <path fill="#d20014" stroke="#d20014" d="M251.7 119.3c.6-.4 1-1.5.6-2.1-1-1.3-1.7-.8-3.4-1.4-.3.4-1 1-.9 1.6 2.3 1 1.4.2 2.2.3.4 0 .6.5 1.5 1.5z"/>
+    </g>
+    <g transform="translate(-170.7) scale(1.70667)">
+      <use width="100%" height="100%" transform="matrix(1 0 0 -1 0 320.4)" xlink:href="#c"/>
+      <path fill="#016a16" stroke="#fff" stroke-linecap="round" d="M238.4 161.8c0 1.2-.9 2.3-1.9 2.3s-1.8-1-1.8-2.4v-1.2h3.7v1.2z"/>
+      <ellipse cx="236.5" cy="160.1" fill="#fff" stroke="none" rx="1.8" ry=".9"/>
+      <path fill="#016a16" stroke="#f1b517" d="M236.1 161l-.3-3.2h1.4l-.2 3.3h-.9z"/>
+      <path id="c" fill="#016a16" stroke="#fff" stroke-linecap="round" d="M238.5 160.1c-.2.5-1 .9-2 .9s-1.7-.4-2-.9a.8.8 0 000 .4c0 .7.9 1.2 2 1.2 1.2 0 2.1-.5 2.1-1.2a.8.8 0 000-.4z"/>
+      <g id="d">
+        <path d="M246 172.8l-7-2.2-3.1-5.3-10.9-.5.4 4 9.3 1.7.8 1.6 10.7 3-.2-2.3z"/>
+        <path fill="#503200" d="M238.7 174.3l-11.2-16.5-.5.5 11 16.4.7-.4z"/>
+        <path fill="#fff" d="M228.6 158.5l-1.2-2c-.3-.4-.6-.5-1.1-.2-.5.2-.4.7-.2 1.1l1 1.9 1.5-.8z"/>
+        <path d="M240 164.1l-22.5-2.3-.6 3.3 22.4 2.3.7-3.3z"/>
+        <path d="M217 161l-.5 4.5h1l.6-4.1-1-.4zm3.8.7l-.2 4.1h.6l.5-3.5-.8-.6zm15.3 1.8l-.6 3.8h1.1l.5-3.8h-1zm3.3.1l-.7 4.4 1.2.2.4-2.3c0 .5.5.8 1 .8.6 0 1-.5 1-1 0-.6-.4-1-1-1a1 1 0 00-1 .6l.3-1.6-1.2-.1zm-8 .7l-3.2 3.5.4.4 4-2.7-1.3-1.2zM224 173l3.1-3.5-.3-.4-4 2.7 1.2 1.2zm8.1-.9l-3.7-2.9-.4.3 3 3.8 1.1-1.2zm-9.3-6.7l3.9 2.8.4-.3-3-3.8-1.3 1.3zm4.2-2.3l.4 4.6h.5l1.2-4.5-2.1-.1zm1.2 11l-.3-4.5h-.6l-.7 4.6h1.6zm5.1-6l-4.8.4v.5l4.8.6V168zm-11.4 1.5l4.7-.7v-.4l-4.8-.5v1.6z"/>
+        <ellipse cx="227.7" cy="168.6" rx="1.3" ry="1.2"/>
+        <path fill-rule="evenodd" stroke-linecap="round" d="M234.4 168.6c0 3.5-3 6.5-6.7 6.5a6.6 6.6 0 01-6.7-6.5c0-3.6 3-6.5 6.7-6.5a6.6 6.6 0 016.7 6.5zm-1.3 0a5.3 5.3 0 01-5.4 5.2 5.3 5.3 0 01-5.4-5.3 5.3 5.3 0 015.4-5.1 5.3 5.3 0 015.4 5.2z"/>
+        <path d="M223.5 165.3l-1-.8m8.5 0l1-1m1 9.2l-1.1-.9m-8.4 1.9l1-1m21.7-10.6l1.1 6-.9.4-1-6.3h.8z"/>
+        <path fill="#fff" d="M245.6 161.4c-.5-.3-1.2.1-2.4-1.3-1.9 1.7 0 2 .2 3.7.5.2.9-1.4 2.3-1.5l2.3-.2-.5-.7h-2z"/>
+        <path fill="#fff" d="M246.4 162.5l-.2-1.7c-.3-.7-1-.1-1 .2l.2 1.7 1-.2z"/>
+        <path fill-rule="evenodd" d="M240.8 167.4v1.6c-.6.2-.5.6-.5 1.2v4.7c-.1.4-.7.4-1 .6-.3.3-.2.8 1 1l1 .1c1.5-.3 1.8-.8 1-1-.3-.2-.9-.4-1-.6v-1.2h1c.2 0 .7-.6.7-1.1v-2.5c0-1.4-1-1.6-1.4-1.5v-1.3h-.8zm1.6 2.7c0-.4-.6-.8-.8-.8-.2 0-.7.5-.7.9v1c0 .4.3 1.6.9 1.7.2 0 .6-.4.6-.8v-2z"/>
+        <path fill="#fff" d="M234.3 172.3c-.7-.2-.7 1.2-.7 1.2h1c.5.2.8.8.6 1.2-.3.2-2.2-.5-2.3 0 .3 1.9 2.9 2.6 3.8 1.8.9-.9 1.1-3-1.8-3.7l-.6-.5zm.6.6l-.3.6"/>
+        <path d="M215 173l-1-4m2.1 3.8l-1.5-3.1m4 2.3l-3.3-1.8m4.8 1.4l-6.2-2.7"/>
+        <path fill="#d20014" stroke="#d20014" d="M210.2 166l-2.6.1c-.2.1.5.9.4 1.1-.6 1.1-4.4 1-4.7.8-.5-.5 3.5-.8 3.6-1 0-.4-.6-1.2-.5-1.7 0-.7 1.7-1 1.7-1l2.1 1.7z"/>
+        <path fill="#503200" d="M213.2 168l-5-4.2s-.3-.2-.5 0 0 .4 0 .4l5.4 4.4.1-.5z"/>
+        <path d="M218.2 172.2l-4.2-3.6-.3-1-.8.6c-.3.2-.6.8-.6.8h1.1l3.6 3.4 1.1-.2z"/>
+        <circle cx="232.5" cy="177.1" r=".7"/>
+        <circle cx="230.6" cy="175.7" r=".7"/>
+        <circle cx="228.1" cy="176.6" r=".7"/>
+        <circle cx="224.2" cy="177.4" r=".7"/>
+        <circle cx="222.5" cy="177.6" r=".7"/>
+        <circle cx="220.8" cy="177.6" r=".7"/>
+        <circle cx="219.2" cy="177.6" r=".7"/>
+        <circle cx="220" cy="176.3" r=".7"/>
+        <circle cx="221.6" cy="176.4" r=".7"/>
+        <circle cx="223.1" cy="176.2" r=".7"/>
+        <circle cx="222.4" cy="175" r=".7"/>
+        <circle cx="220.8" cy="174.9" r=".7"/>
+        <path fill-rule="evenodd" d="M236.5 178c0-.3-.8-.2-.8-.6 0-.4 1.2 0 1.3.3.7-.6 1-.2 1.4 0 .6-.8 1.3-.8 2-.2.4-.4 1.4-.3 1.7.2.7-.6 1.3-.5 1.7 0 .2-.3.5-.3.7 0 .3-.7 1.2-.5 1.6 0 .3-.4.7-.1 1.1.1.3-.2.8-.2.8 0 0 .4-.6.3-.6.6 0 .2.4 0 .4.4 0 .3-.6.4-.7 0-.3.4-1.1.2-1.2-.2a.8.8 0 01-1.2 0c-.3.2-.7.2-.8 0-.5.5-1.4.4-1.7-.2h-.3a1 1 0 01-1.5 0c-.9.6-1.4.4-1.9 0-.5.7-1.4.7-1.5 0-.4.3-1.2.4-1.2 0 0-.2.7-.1.7-.4zm1.6.1c0 .2-.2.3-.4.3s-.4-.1-.4-.3.1-.2.4-.2.4.1.4.2zm1.9-.2c0 .2-.3.3-.6.3s-.5-.1-.5-.3c0-.1.2-.3.5-.3s.5.2.5.3zm3.5.2c0 .2-.2.3-.5.3s-.4-.1-.4-.3c0-.1.2-.3.4-.3s.5.1.5.3zm-1.9 0c0 .2-.2.3-.5.3s-.4-.1-.4-.4c0-.2.2-.4.4-.4s.5.2.5.4zm4 0c0 .1-.1.3-.3.3-.3 0-.5-.2-.5-.4s.2-.3.5-.3c.2 0 .4.1.4.3zm-1.2 0c0 .2 0 .3-.2.3s-.3-.1-.3-.3.1-.2.3-.2l.2.2zm2.4.1c0 .2 0 .4-.3.4-.1 0-.3-.2-.3-.4s.2-.3.3-.3c.2 0 .3.1.3.3z"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#d"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M249.8 165.7c-2.5 0-4.5 1-4.5 2.1 0 .2 0 .4.2.6.5.6 2.3 1 4.4 1 2 0 3.6-.3 4.2-.9.2-.2.3-.4.3-.7 0-1.1-2-2-4.6-2z"/>
+      <path d="M254.4 168v7c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-7c0 .8 2 1.5 4.5 1.5 2.6 0 4.6-.7 4.6-1.5z"/>
+      <path fill="#d20014" stroke="#d20014" d="M245.3 168v1l2.2 7 1.8-5.4 2 5.5 1.3-5.2 1.8 3.5v-1.9l-1.6-3.4a8.3 8.3 0 01-.6.2l-1 3.8-1.5-3.6a14.5 14.5 0 01-.7 0l-1.5 3.6-1.6-4.4c-.4-.2-.6-.5-.6-.7z"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M254.4 173.7v1.3c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-1.3c0 .9 2 1.5 4.5 1.5 2.6 0 4.6-.6 4.6-1.5z"/>
+      <path d="M251.7 175l-1.1.2v1.3l1.2-.1v-1.3zm-4.8-.1v1.3l1.1.2v-1.3a8.9 8.9 0 01-1.1-.2zm-1.6-1.2v1.3c0 .3.2.5.5.7v-1.3c-.3-.2-.5-.4-.5-.7zm9.1.2c0 .2-.4.5-.8.7v1.3c.5-.2.8-.5.8-.9v-1z"/>
+      <path fill="none" d="M254.4 168v7c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-7"/>
+      <path fill="#fff" stroke="#fff" d="M253.4 167.5c0 .5-1.6 1-3.5 1-2 0-3.6-.5-3.6-1s1.6-.9 3.5-.9c2 0 3.6.4 3.6 1z"/>
+      <path d="M248.7 168.2l.2 1.2h1l.1-1.2h-1.3zm4.1-.3l-1 .2.1 1.2 1-.2V168zm-5.4-2l-.7.3.1 1 .6-.2v-1zm2.4-.3h-.3l.2 1.2h.6l.2-1.2a9.7 9.7 0 00-.7 0zm2.7.4l-.1 1 .7.3v-1a5.3 5.3 0 00-.6-.3zm-6.5 2.8l.2-1.3-1-.5v1.5l.8.3zm8.4-.3v-1.3l-.8.3.8 1zm9.3-8.5c.8 0 2 1 2.1 2.5 0 1-1.7 1-1.7 1 0 .5-1 .9-1.8 1-.8 0 .2-1.5.2-1.5-.5-1.3.2-2.7.2-2.7l1-.3z"/>
+      <path d="M262.5 163h.8s0 .3.2.3.3-.4.3-.4h1.2"/>
+      <path fill="#d20014" stroke="#f1b517" d="M264.1 160.9c.7-.5.1-1.5-.4-1.5h-1c-.6 0-1.4.6-1.3 1 0 .5.4.7.8.6.2 0 .6-.6.8-.6.3 0 1 .6 1.1.5z"/>
+      <path fill-rule="evenodd" d="M214.2 174.8c-.6.1-.7.8-.5 1.5-2.6.7-5 1.7-7.4 2.4-.1-.5 1.2-1.8 1.2-1.8.3.1.6.9.6.9 0-1.6 1.6-2.6 1.6-2.6-1-.2-3.7 1-4 1.4 0 0 1-.2 1.2 0 0 0-2.2 2.3-2.3 3 .4.7 4 1.3 4 1.3 0 .2-1 1-1 1 1.5.2 3.7-.8 4.3-1.4 0 0-1.7-.2-3-1.3 0 0 .2.7 0 1 0 0-2-.6-2.3-1 0 0 5-1.2 7.4-2 .1.5.6 1.3 1.2 1.1.3-.1.2-.8 0-1.4a.8.8 0 00.6.2c.4 0 .7-.3.7-.7 0-.4-.3-.7-.7-.7a.8.8 0 00-.7.5c-.1-.5-.4-1.4-.8-1.3zm2 1.6c0 .2-.2.3-.4.3a.3.3 0 01-.4-.3c0-.2.2-.4.4-.4s.3.2.3.4z"/>
+      <path d="M293 177.9c.2-.4 0-2.2 0-2.2-.5 0-1 .7-1 .7.5-1.6-.8-4-.8-4 .9.1 3.9 3 4 3.6 0 0-1.3-.5-1.5-.4.3 1.5 1.3 2.2 1.7 3 0 0-1.7.3-1.6 1.8h-1.1c-.4-.5.1-1.3.1-1.3l-7.7-3.2c-.5-.2-1.6-.8-1.4-1.4.1-.5 2 .3 2.4.5l7 2.9z"/>
+      <path d="M285.6 176.5l1-1.6c.3-.5-.4-1-.9-.4l-1 1.5c-.4.9.5 1.1 1 .5z"/>
+    </g>
+    <g fill="#fff" stroke-width=".3">
+      <path d="M224.2 307.8l-.1-3-3.8.1-.2 3.4 4.1-.5z"/>
+      <path d="M196.7 312.2l-5-2.8c20.7 1.9 25-5.4 30-5.8 3-.2 3.5 3.4-2.4 1.7l1.5 3.8s-14.8 8.3-29.2 5l5-2zm90.5-4.4v-3h4.7l.2 3.4-5-.4z"/>
+      <path d="M315.6 311.4l4.8-2.6c-23.8.8-18.4-3.9-30.3-5.2-3-.3-5.4 3.7 2.4 1.7l-1.5 3.8h3.7a35 35 0 0026.3 4.1l-5.4-1.8z"/>
+      <path d="M219.2 305.3v5.4s13.2 5 36.7 5c23.6 0 36.7-5 36.7-5v-5.4s-10 4.6-36.7 4.6c-26.6 0-36.7-4.6-36.7-4.6z"/>
+    </g>
+    <path fill="#000" stroke="none" d="M221.1 310.8l1.2-4 .5.2-1 3.4 2 .6-.1.5-2.6-.8zm3.9-1.8v-.8l.2-.6.6.1-.2.7-.3.7h-.3zm5.6-.3l.6.2-.5 2.3c0 .4-.2.7-.4 1l-.6.4a2 2 0 01-1 0 2 2 0 01-1-.4 1.1 1.1 0 01-.3-.6v-1l.5-2.4.6.1-.5 2.3c-.1.4-.1.7 0 .8 0 .2 0 .4.2.5l.5.2h1c.2-.2.3-.5.4-1l.5-2.4zm.6 4.3l.7-4h.6l1.7 3.6.5-3.2.5.1-.7 4h-.5l-1.7-3.6-.5 3.2h-.6zm4.4.7l.6-4h.5l-.6 4h-.5zm1.6-1.8a2.2 2.2 0 01.7-1.5 2 2 0 011.6-.4c.4 0 .7.1 1 .3.3.3.5.5.6.9.1.3.2.7.1 1.1a2.4 2.4 0 01-.4 1c-.2.4-.5.6-.8.7a2.2 2.2 0 01-1 .2 2 2 0 01-1-.4c-.4-.2-.6-.5-.7-.9a2.2 2.2 0 01-.1-1zm.6 0c-.1.6 0 1 .2 1.3.3.3.6.5 1 .5s.8 0 1.1-.3c.3-.3.5-.6.5-1.2a2 2 0 000-.9 1.3 1.3 0 00-.5-.6 1.4 1.4 0 00-.7-.3c-.4 0-.7 0-1 .3-.4.2-.6.7-.6 1.3zm3.9 2.5l.3-4.1h.6l2 3.4.2-3.2h.6l-.4 4.2h-.5l-2-3.5-.3 3.2h-.5zm6 .4l.1-4.1 3 .1-.1.5h-2.3v1.2h2l-.1.5h-2v1.8h-.6zm3 .1l1.8-4h.6l1.7 4.1h-.7l-.5-1.3H252l-.5 1.3h-.6zm1.3-1.6h1.5l-.4-1.1a10.9 10.9 0 01-.3-.9c0 .3-.2.5-.3.8l-.5 1.2zm3.3 1.7v-4.1h.6v4.1h-.6zm2.6 0v-3.6h-1.4v-.5h3.3v.4h-1.4l.1 3.7h-.6zm4.2-.1l-.2-4.1h.6l.1 3.6 2.1-.1v.5h-2.6zm2.9-.1l1.3-4.2h.6l2 3.9h-.6l-.6-1.2-1.8.2-.3 1.2h-.6zm1-1.8h1.5l-.5-1.2a11 11 0 01-.4-.8 5.3 5.3 0 01-.2.8l-.3 1.2zm5 1.3l-.4-4 2.8-.4v.5l-2.2.3.1 1.2 2-.2v.5l-1.9.2.2 1.8-.5.1zm3.2-2.3c-.1-.7 0-1.3.3-1.7a2 2 0 011.4-.8 2 2 0 011 .2c.4 0 .7.3.9.6a2.5 2.5 0 01.3 2.2 1.7 1.7 0 01-.6.8c-.3.2-.7.4-1 .4a2 2 0 01-1.1-.1 1.9 1.9 0 01-.8-.7 2.3 2.3 0 01-.4-1zm.5-.1c.1.5.3.9.6 1 .3.3.7.4 1.1.4.4 0 .8-.3 1-.6.2-.3.3-.7.2-1.3a2 2 0 00-.3-.8 1.3 1.3 0 00-.6-.5 1.4 1.4 0 00-.8-.1 1.4 1.4 0 00-1 .5c-.2.3-.2.8-.1 1.4zm4.5 1.4l-.8-4 1.9-.4h.9c.2 0 .4.1.5.3.2.1.3.3.3.6a1 1 0 01-.2.7c-.1.2-.4.4-.8.5l.4.2.6.4.9 1-.7.1-.7-.7a8 8 0 00-.5-.5 1.3 1.3 0 00-.3-.2.9.9 0 00-.3 0h-1l.4 1.9h-.6zm.1-2.4l1.2-.2c.3 0 .5 0 .6-.2a.6.6 0 00.3-.6.6.6 0 00-.3-.5h-.7l-1.3.2.2 1.3zm6.7-.4h.6c0 .4-.1.8-.4 1.1-.2.3-.6.5-1 .6a2 2 0 01-1.1 0 1.7 1.7 0 01-.9-.7 2.7 2.7 0 01-.4-1v-1.1c0-.4.2-.7.5-.9a2 2 0 011-.4 1.8 1.8 0 011 0c.4.2.7.4.9.8l-.5.2a1.3 1.3 0 00-.6-.5 1.2 1.2 0 00-.7 0c-.4 0-.6.1-.8.3a1 1 0 00-.3.7 2.5 2.5 0 00.4 1.6c.2.3.4.4.6.5.3 0 .5.1.8 0 .3 0 .5-.1.7-.4.2-.2.3-.5.2-.8zm1.6 1l-1.1-3.9 3-.8v.5l-2.4.7.4 1.2 2.2-.6.2.4-2.3.6.4 1.4 2.5-.7.2.5-3 .8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hu.svg
new file mode 100644
index 0000000..94bc29f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/hu.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hu" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M512 512H0V0h512z"/>
+    <path fill="#388d00" d="M512 512H0V341.3h512z"/>
+    <path fill="#d43516" d="M512 170.8H0V.1h512z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/id.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/id.svg
new file mode 100644
index 0000000..6d2cf09
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/id.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-id" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#e70011" d="M0 0h512v265.5H0z"/>
+    <path fill="#fff" d="M0 256h512v256H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ie.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ie.svg
new file mode 100644
index 0000000..60448a9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ie.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ie" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#009A49" d="M0 0h170.7v512H0z"/>
+    <path fill="#FF7900" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/il.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/il.svg
new file mode 100644
index 0000000..6cb4b1c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/il.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-il" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M619.4 512H-112V0h731.4z"/>
+    <path fill="#00c" d="M619.4 115.2H-112V48h731.4zm0 350.5H-112v-67.2h731.4zm-483-275l110.1 191.6L359 191.6l-222.6-.8z"/>
+    <path fill="#fff" d="M225.8 317.8l20.9 35.5 21.4-35.3-42.4-.2z"/>
+    <path fill="#00c" d="M136 320.6L246.2 129l112.4 190.8-222.6.8z"/>
+    <path fill="#fff" d="M225.8 191.6l20.9-35.5 21.4 35.4-42.4.1zM182 271.1l-21.7 36 41-.1-19.3-36zm-21.3-66.5l41.2.3-19.8 36.3-21.4-36.6zm151.2 67l20.9 35.5-41.7-.5 20.8-35zm20.5-67l-41.2.3 19.8 36.3 21.4-36.6zm-114.3 0L189.7 256l28.8 50.3 52.8 1.2 32-51.5-29.6-52-55.6.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/im.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/im.svg
new file mode 100644
index 0000000..0f487f6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/im.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-im" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M148.2 0h744.1v744h-744z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="matrix(.7 0 0 .7 -102 0)">
+    <path fill="#ba0000" fill-rule="evenodd" d="M1063 744H0V0h1063z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M556.6 546.5c.3-1 1-10 .6-10s-13.7-15.8-13.4-15.8 17.2 3.8 17.2 3.2c0-.5 6.8-16.6 6.8-17l8.2 19.7 16.6 7.3-11.7 9.6 2.7 19c0 .3-11.7-11-11.7-11l-13 1.4s-1.7-5.8-2.3-6.4z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="3.8" d="M466 300.7c-11 5.7-53.7 54.5-59.6 62-4.9 11.1-14.5 25-24.4 34-10.5 8-16.4 19-14.9 29.2-.1 12.9 7 21.6 12.8 30.7 3.4 4 8 6.7 12.8 7 10 1.4 10.9 4.4 15.8 6.3 19.7 26.8 49 46.5 70 62a98.8 98.8 0 0126 18.1 47 47 0 014.2 29l-15.6 59c-2.7 16.1 11.3 12.5 12 9.3 6.4-8.2 15.8-2.4 29.2-49.8l18.5-25s7.2-2.8 7.2-3.5c10.8-13 2.5-20.4-3.6-22.8l-13.5-5s-15.7-15.6-16.4-15.6c-7.4-21.7-44-67.9-52.4-74.3a62.1 62.1 0 00-14.3-12.1c-8.5-4.1-11.3-5.5-16.5-7.6-4.4-1.7-1.3-6.5 1.5-8.7 28.9-15.7 51.8-33.2 79.6-51l4.3-2.9-10-57-46.3-16.3c-2.4 1.7-4.2 3.3-6.4 5z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M504.7 600.5c.2-.6 29-5.9 29-5.9l-3.5 10.7-28.7 8.6 3.2-13.4z"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M429.6 492a55.1 55.1 0 0131.4-29.7"/>
+    <path fill="none" stroke="#000" stroke-width="3.5" d="M503.7 600.7c1.9-.5 10.1-3 12.5-3.3l7.6-2c2.9-.7 4.6-1.2 7.6-1.7 2.3-1 4.6-1.5 7-2.1m-40 26.9c.3-.3 2.3-2 3.7-2.9 1.7-.5 7.3-3 9.5-3.3l6.8-2c2.5-.6 4-1.2 6.7-1.7a44.3 44.3 0 016.4-2.1"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M510.2 496.2h-.4c1.3 0 .5-.1-1.3 2-.6 1.7-5.9 5.4-9.9 5.4-2 .2-4.9.4-6.8.4-.6 0-1.3-.4-1.9-.4m19.9 77.8h2c2.2 0 4.3.3 6.2.4 2.1 0 4.2.6 6.3.6 2 .3 4.6.2 6.7.5 2.4 0 4.4.5 6.9.5 2 0 3.1.4 5.4.4l-5.4-.4c2 0 3.1.4 5.4.4m-47.6 48c.2-.3 2-2 3.3-2.9 1.5-.5 6.7-2.9 8.7-3.3l6.2-2c2.3-.6 3.8-1.2 6.2-1.7 1.9-.9 3.8-1.5 5.8-2m8.6-60c-1.2 3.4.3 4.3 1 5.7 1 1.4 3.8 3.6 8.2 5l5 1.6c1.3.2 1.9.5 2.9.9M370.8 435.3h.4c-1.3 0-.5.1 1.7-1.6 1.3-1.5 2.4-2.2 3.7-3.7m21 34.8c.2 0 24-12 26.6-14.6 1.8-1.3 3.1-2.6 5.3-4.1 1.4-.7 2.4-1.7 3.7-2.5 1.1-1.6 2.5-2.5 3.3-4 1.5-1.2.9-2.6 2-4.1.6-1.6 1.7-4.2 2-5.7m30.3 17.8c.1.9-.4 3.5-.3 5.5-.1 2.3-3.1 9.5-6.7 11.7"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M428 447.4l9.9 3a145 145 0 0124 13.5c1.5 1.2 4.2 2.3 5.3 3.7 1.6 1.4 2.8 3 4 4.6a30 30 0 013.8 5c4.6 3.7 17 29.5 17.4 31a62.8 62.8 0 012 4.5c1 1 1.6 2.5 2.5 4.1.9 2 1.9 3 3 4.6 1.3 1 3.1 2.7 4.9 3.7 1.8 1.6 3.6 2.2 5 3.3 1.9.8 23.7 14.6 24.7 15.3 2 1.6 8 8 3.8 12.5-1.8 1.5-3.4 3.6-5 4.5a16 16 0 01-5.6 3c-9.8 3-14.8 2-16.7 2h-2m-129-167c2.7 1 1.6.2 4.1 1.4 1.7.7 2.8.7 4.5 1.3 1.7.6 6.6 1.5 9 3.9 1.7 1.5 3 2.8 5 4a34 34 0 006.6 3.4c2.4.9 5 1.9 7.4 2H428h-6 5.8"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M379.3 426.2c6.2-.4 16.5 1.5 16.7 1.5l13.7-.2c7.1-.7 8.7-3.5 9.9-5.4 2.7-4.1 4.5-5.6 6.6-8.7 3.3-2.5 7.9 3.3 8 3.3 11.7 11 2.4 24.4 1.7 24.9-5.8 5.2-7 5.6-10.5 2.2-3.5-4.1-4.6-6-7.5-7.4-5.5-2.7-17.1-.6-17.3-.6l-6 2.2c-2.9 1-4.7 3.5-9.5 4.4-5 .3-6.7-.2-9.1-4.2-3.4-5.1-1.7-11.3 3.3-12z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M703.1 175.4c-.9.1-9 4-9 4.3s-7 19.8-7.1 19.5-5.2-17-5.7-16.6c-.5.3-17.8 2.3-18 2.4-.3.2 13-16.7 13-16.7l-1.8-18.1 14.2 5.4L704 144c.2-.1-4 15.7-4 15.7l7.6 10.5s-4.3 4.4-4.5 5.2z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="3.8" d="M533.3 374.8c10.4 6.9 73.8 20.2 83.3 21.6 12-1.2 29 .3 41.6 4.5 12.1 5.3 24.5 5 32.8-1.2 11.2-6.2 15.3-16.8 20.4-26.2 1.9-5 2-10.3-.1-14.7-3.8-9.3-1.5-11.6-2.3-16.8 13.7-30.2 16.5-65.4 19.8-91.5a99.3 99.3 0 013-31.5 46.6 46.6 0 0123.1-17.8l59.2-15.3c15.3-5.6 5.3-16 2.1-15-10.2-1.6-9.8-12.6-57.7-1l-30.8-4s-6-4.8-6.6-4.5c-16.6-3-19 7.8-18 14.3l2.2 14.2s-6 21.3-5.6 22c-15.2 17-37.9 72-39.4 82.5-.6 9.9-4.4 8.1-3.4 17.7 0 7.6-.8 2.9 1.7 18.4.6 4.6-5.1 4.3-8.4 3-27.9-17.6-54.4-29-83.5-44.4l-4.6-2.4-44.7 36.6 8.4 48.4c2.6 1.3 5 2 7.5 3.1z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M775.6 194.2c-.6.1-19.3-22.4-19.3-22.4l11-2.2 21.6 20.8-13.3 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M717.9 312.8a55 55 0 01-41.3-12.8"/>
+    <path fill="none" stroke="#000" stroke-width="3.5" d="M776.3 195c-1.3-1.4-7.5-7.4-9-9.4a95.8 95.8 0 00-5.5-5.5l-5.2-5.8a53.9 53.9 0 01-5.2-5.2m43 21.7a21 21 0 01-4.3-1.8c-1.2-1.2-6.1-5-7.5-6.6a79.4 79.4 0 00-5.1-5l-4.8-5a44 44 0 01-4.9-4.5"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M682 240.5l.2.4c-.6-1.1-.3-.4 2.4 0 1.8-.2 7.6 2.6 9.6 6a76 76 0 013.7 5.8c.3.5.3 1.4.6 1.8m58-55.4l-.2-.3-.8-1.5c-1-1.8-1.8-4-2.7-5.6-1-1.8-1.5-3.9-2.5-5.7-.8-2-2.1-4-2.9-6.1-1.1-2.2-1.6-4.1-2.9-6.3-1-1.8-1.2-3-2.3-4.9l2.3 4.9c-1-1.8-1.2-3-2.3-4.9m65.2 18c-.4 0-2.8-.8-4.1-1.5-1.2-1-5.9-4.4-7.2-6a68.3 68.3 0 00-4.8-4.3c-1.7-1.8-2.9-2.8-4.5-4.6a38.3 38.3 0 01-4.7-4M725.7 188c3.6-.6 3.6-2.4 4.5-3.6.7-1.7 1.2-5.2.3-9.7a48 48 0 01-1-5.1c-.5-1.2-.6-2-.7-3m-31.5 225.1l-.2-.3c.7 1 .4.4-2.2-.7-2-.4-3.1-1-5-1.4m20-35.3c-.1-.3-22.2-15.1-25.7-16.1-2-1-4-1.4-6.3-2.6-1.3-.9-2.6-1.3-4-2-1.9-.2-3.4-1-5-1-1.9-.6-2.8.6-4.7.3l-5.8 1m.6-35c.7-.6 3.3-1.4 5-2.5 2-1 9.8-2 13.4.2"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M679.7 336l-2.1-10a145 145 0 010-27.5c.3-2-.1-4.8.6-6.5.5-2.1 1.3-4 2-5.8.8-2.2 1.6-4.1 2.5-5.7 1-5.8 17.4-29.3 18.5-30.3a62.7 62.7 0 013-4c.4-1.4 1.4-2.7 2.4-4.3 1.3-1.7 1.7-3 2.5-4.7.2-1.7.8-4.2.8-6.2.5-2.4.2-4.2.5-6-.3-2 1-27.8 1.2-29 .4-2.5 2.9-10.9 9-9.4 2.2.8 4.8 1.2 6.3 2.1 2.2.6 3.9 2.2 5.5 3.4 7.3 7.1 8.9 12 9.8 13.7l1 1.8M660.8 401l-.2-.4c.5 1 .2.5-.5-1.6l-1-6c-.4-1.9-1.3-4-1-5.2-.7-1.8-.3-3.4 0-5.2.4-2.3.7-3.9.7-6.1.3-2.7 0-4.7.2-7.3-.7-2-.8-3.9-2-6-1-2-1.7-3.9-2.8-6l-2.9-5 2.9 5-2.9-5"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M685.3 388.9c-3.4-5.2-6.9-15.1-7-15.3l-6.9-11.8c-4-6-7.3-6-9.5-6-5-.4-7.1-1.3-10.8-1.6-3.8-1.6-1-8.4-1.1-8.6 3.9-15.5 20.1-14 20.8-13.6 7.5 2.4 8.4 3.4 7.2 8-2 5.2-3 7-2.9 10.2.4 6.2 7.9 15.3 8 15.5l5 4c2.2 2 5.2 2.4 8.4 6.2 2.7 4.2 3.1 5.9.8 10-2.9 5.4-9 7-12 3z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M301.2 245.2c.7.6 8.4 5.3 8.6 5s20.3-4.9 20.2-4.6-11.3 13.6-10.8 13.8c.5.3 11.7 13.7 12 13.8l-21.2-1.8-14.2 11.5-3.2-14.9-18-6.4c-.3-.1 15.2-5.3 15.2-5.3l4.6-12s6 1.1 6.8.9z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="3.8" d="M561 278c.1-12.5-23.5-72.9-27.5-81.6a112.3 112.3 0 01-19-37.2c-2.2-13-9.2-23.3-19-26.7-11.3-6-22.4-3.7-33-2.8-5.3 1.1-9.8 4-12.3 8.1-5.7 8.2-8.9 7.6-12.8 11.2-32.8 5-63.8 22-87.4 33.5a98.7 98.7 0 01-28 14.7c-13.3.1-23-6.2-27.6-9.6l-45.2-41c-13-9.8-16.3 4.2-13.8 6.4 4.4 9.4-5 15 30.8 48.8l13.6 28s-.8 7.6-.1 8c6.5 15.5 17 11.6 21.8 7.2l10.7-9.7s21-6.6 21.4-7.3c22.6 3.4 81-7.7 90.6-12.3 8.7-4.8 9.2-.7 16.7-6.8 6.3-4.2 2.9-.9 14.5-11.5 3.5-3 6.4 2 7 5.4.7 33 5.6 61.3 8.6 94.2l.6 5 55.1 17.5 35.9-33.6c-.4-2.9-1-5.3-1.5-8z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M277.2 174.2c.5.4-8.1 28.4-8.1 28.4l-7.9-8 5.6-29.5 10.4 9z"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M408 157.5a55 55 0 0112 41.5"/>
+    <path fill="none" stroke="#000" stroke-width="3.5" d="M277.5 173.2c-.4 1.9-2 10.3-2.9 12.6a95.6 95.6 0 00-1.6 7.7l-2 7.5c-.3 2.4-.8 4.8-1.5 7.2m-5.4-47.9c.2.4.8 3 .9 4.6-.3 1.7-.8 7.8-1.5 10a78.7 78.7 0 00-1.2 6.9l-1.7 6.8a44.1 44.1 0 01-1 6.5"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M367.3 227l.1-.3c-.5 1.2 0 .5-1.2-2-1.2-1.4-2-7.8-.2-11.3a71 71 0 012.8-6.3c.2-.5 1-1 1.2-1.4m-78.2-18.2l-.1.3-.8 1.5c-1 2-2.3 3.6-3.2 5.3-1 1.9-2.5 3.4-3.4 5.3-1.2 1.7-2.3 4-3.6 5.7-1.2 2.1-2.5 3.7-3.6 5.9-1 1.8-1.9 2.6-2.9 4.6l2.9-4.6c-1 1.8-1.9 2.6-2.9 4.6m-20.7-64.4c.2.4 1 2.8 1 4.3-.2 1.6-.4 7.3-1 9.2-.4 2.2-.8 4.3-1 6.5L251 178a38.4 38.4 0 01-.8 6m49.2 35.3c-2.5-2.6-4-1.7-5.5-1.8-1.8.3-5 1.8-8.3 5a46.4 46.4 0 01-3.7 3.7c-.7 1-1.3 1.5-2 2.2m205.5-97l-.2.4c.6-1.2.1-.5.7 2.2.7 1.9.8 3.2 1.6 5m-40.6 2.6c-.1.2-.5 26.9.6 30.3.4 2.2 1 4 1.3 6.7 0 1.5.3 2.9.4 4.4 1 1.7 1.1 3.4 2 4.8.5 1.9 2 2 2.8 3.7 1.2 1.2 3 3.4 4.1 4.3m-29.7 18.7c-.8-.3-3-2-4.7-2.8-2-1.2-7-7.1-7.3-11.3"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M448.4 176.7l-7.2 7.3a145.5 145.5 0 01-23 15c-1.8.8-4 2.8-5.8 3-2 .9-4 1.2-6 1.6-2.2.5-4.2 1-6 1-5.5 2.4-34 1.5-35.6 1.2a63.6 63.6 0 01-5-.3c-1.3.3-3 .2-4.8.3-2.2-.2-3.5.2-5.4.5-1.4.7-3.9 1.6-5.5 2.7-2.3.9-3.7 2.1-5.3 2.8a660.6 660.6 0 01-25 15c-2.3 1-10.7 3.5-12.8-2.4-.5-2.3-1.6-4.7-1.7-6.5-.6-2.1-.3-4.4-.1-6.4 2-10 5.1-14 6-15.7l1-1.8m207-37l-.2.3c.5-1 .3-.4-1.1 1.3-1.5 1.2-3.2 3-4.5 4.2-1.3 1.3-2.6 3.1-3.8 3.6-1.2 1.6-2.7 2-4.3 3a29 29 0 00-5.6 2.6c-2.4 1.3-4 2.5-6.2 3.8-1.3 1.8-2.7 2.9-4 5-1 1.9-2.2 3.5-3.3 5.6l-2.7 5.2 2.7-5.2-2.7 5.2m17 106.2l.5-.7c-.7 1.4-.5 1 .2-1.3 0-2.7.6-6 .7-8.5.4-2.5.8-5.3.8-8-.1-3-.1-5.7-.6-8.6 0-2.7-.3-5.5-.4-8.2a35.5 35.5 0 00-.8-7.4 43 43 0 00-.7-6.8c.3-1.9-.2-3.6-.6-5l-1.8-7.5-1.5-6c-.3-2.2-1.5-5-2-7a19.7 19.7 0 01-1.6-5c-.7-1.6-1.6-3.4-2-5.2l-2.2-5.4-2-5.2c-.7-2-1.7-3.7-2.1-5.8-.7-.7-.9-1.4-1.3-2"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M489.6 143.1c-2.5 5.7-8.9 14-9 14.2l-6 12.2c-2.8 6.7-1 9.4.1 11.3 2.4 4.3 2.9 6.6 4.7 9.9.7 4-6.6 5.5-6.7 5.6-15 5.2-22.7-9.2-22.8-10-2-7.5-1.7-8.8 2.9-10.3 5.3-1.3 7.4-1.3 10-3.2 5-3.7 8.5-15 8.6-15.2l.7-6.3c.4-3-1-5.8.5-10.5 2-4.5 3.2-5.8 8-6.2 6-.5 10.8 3.8 9 8.5z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="3.2" d="M469.8 290.1c-2.2-2 42.8 16.4 49 16.6 8.5-3.1 43.5-32.7 43.5-32.7.3 3 1.6 10.4 5 12-13.6 11-25.8 21.5-39.3 32.5 1 17.4-2.2 35.8 6.6 55.2 0 0-10.6.2-10.6 0-9.3-9.3-12.6-54.2-12.6-54.2L467 300c2.2-1.4 3.9-5.7 3-9.8z"/>
+    <path fill="none" stroke="#000" stroke-width="3.2" d="M512.7 336.1c.8-.5-8 4.2-10.4 5.3-41 21.9-62 53.7-63.3 54.9-.7 1.3-2 3.1-3.2 4.9-1 1.5-2.4 3-3.3 4.5a87.9 87.9 0 01-5.3 6.7c-.2 1 .7-.3.4.3m113.1-102.5c-.8-.4 7.4 5.3 9.5 6.8 38.2 26.4 76 30.7 77.7 31.3 1.6 0 3.8.3 5.9.6 1.7.1 3.7.7 5.5.8 2 .3 6.4 1 8.4 1.7 1-.3-.6-.5 0-.5"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/in.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/in.svg
new file mode 100644
index 0000000..e6557cd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/in.svg
@@ -0,0 +1,25 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-in" viewBox="0 0 512 512">
+  <path fill="#f93" d="M0 0h512v170.7H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path fill="#128807" d="M0 341.3h512V512H0z"/>
+  <g transform="translate(256 256) scale(3.41333)">
+    <circle r="20" fill="#008"/>
+    <circle r="17.5" fill="#fff"/>
+    <circle r="3.5" fill="#008"/>
+    <g id="d">
+      <g id="c">
+        <g id="b">
+          <g id="a" fill="#008">
+            <circle r=".9" transform="rotate(7.5 -8.8 133.5)"/>
+            <path d="M0 17.5L.6 7 0 2l-.6 5L0 17.5z"/>
+          </g>
+          <use width="100%" height="100%" transform="rotate(15)" xlink:href="#a"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(30)" xlink:href="#b"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(60)" xlink:href="#c"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(120)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="rotate(-120)" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/io.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/io.svg
new file mode 100644
index 0000000..4d809e0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/io.svg
@@ -0,0 +1,140 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-io" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <g fill-rule="evenodd">
+      <path fill="#fff" d="M0 0h1024v512H0z"/>
+      <path fill="#000063" d="M1024 445.2c-11.5 7-21.3 23-51.8 23-61 0-76.2-33.9-122-33.9-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.2-57.9 24.2v43.7c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.6 51.8-16.5v-50.3zm0-84.9c-11.5 7-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.6 51.8-16.5v-50.3zm0-84.9c-11.5 7-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6v-50.2zm0-85c-11.5 7-21.3 23.1-51.8 23.1-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6v-50.2zm0-84.8c-11.5 6.9-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.2-57.9 24.2v43.8c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6v-50.2zm0-85c-11.5 7-21.3 23.1-51.8 23.1-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34C27.4 9.7 18.3 34 0 34v43.8c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6V20.7z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path fill="#000063" fill-rule="evenodd" d="M0 0h261.3v158H0z"/>
+      <path fill="#fff" d="M0 0v17.7L232.1 158h29.2v-17.7L29.3.1H0zm261.3 0v17.7L29.3 158H0v-17.7L232.1.1h29.2z"/>
+      <path fill="#fff" d="M108.9 0v158h43.5V0H109zM0 52.8v52.6h261.3V52.7H0z"/>
+      <path fill="#c00" d="M0 63.2v31.6h261.3V63.2H0zM117.6 0v158h26.1V0h-26.1zM0 158l87.1-52.7h19.5L19.5 158H0zM0 0l87.1 52.7H67.6L0 11.8V.1zm154.7 52.7L241.8.1h19.5l-87.1 52.6h-19.5zM261.3 158l-87-52.7h19.4l67.6 40.9V158z"/>
+    </g>
+    <path fill="#a24300" fill-rule="evenodd" stroke="#fff" stroke-width="6.9" d="M815-301.2l-17.8 708.7c0 37.3 80.1 37.3 88.6 0l-17.7-708.7H815z" transform="matrix(.2064 0 0 .4902 211.6 267.4)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M460.6 549.2l28.7 70.9 42.2-53.2-10.2 88.6 28-35.4-17.8 88.6 25.2-35.5-25.2 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-45.6-88.6 45.6 35.5-53.1-88.6 43 35.4-25.3-88.6 35.4 53.2v-70.9z" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M467.2 584.6l28.9 124v336.7" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.2 885.8l59.9 88.6 60.6-88.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M434.5 815l61.6 88.5 60.6-88.5" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M435.4 744.1l60.7 88.6 59.8-88.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M432.8 691l63.3 70.8 53.1-70.9" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 637.8l70.9 70.9 45.4-70.9" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.1 593.2l53.2 87 35.3-95.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M460.6 549.2l28.7 70.9 42.2-53.2-10.2 88.6 28-35.4-17.8 88.6 25.2-35.5-25.2 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-45.6-88.6 45.6 35.5-53.1-88.6 43 35.4-25.3-88.6 35.4 53.2v-70.9z" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M467.2 584.6l28.9 124v336.7" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.2 885.8l59.9 88.6 60.6-88.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M434.5 815l61.6 88.5 60.6-88.5" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M435.4 744.1l60.7 88.6 59.8-88.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M432.8 691l63.3 70.8 53.1-70.9" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 637.8l70.9 70.9 45.4-70.9" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.1 593.2l53.2 87 35.3-95.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M354.3 531.5l88.6 88.6 17.7-53.2v88.6l35.5-35.4-17.8 88.6 35.5-35.5-17.7 88.6 35.4-35.4-17.7 106.3 35.4-35.4-35.4 106.3 35.4-35.5-17.7 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-53.1-82.3 35.4 11.5-35.4-106.3 35.4 35.4-53.1-106.3 35.4 35.4-53.2-88.6 53.2 35.5-70.9-88.6 53.2 35.4-70.9-70.8 70.9 35.4-53.2-88.6z" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M379 560l64 95.5 17.6 53.2 8.9 45.2 8.8 78.8 9.4 70.9 8.4 141.7" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 903.5l63.7 71 50.7-88.7" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M417 815l70.7 88.5 50.7-88.5" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M407.5 752.4l70.9 80.3 45.9-88.6M372.1 637.8l88.5 70.9 25.9-70.9" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M360.6 602.4l82.3 53.1 10.5-53.1m-63.6 88.5l81 71 34-71" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <g fill-rule="evenodd">
+      <path fill="#c00" stroke="#000" stroke-width="1pt" d="M541.5 1173.3l-1.7-229.1-61.1-107c-15.3-52.6-7.8-78 17-79.8 24.7-1.6 49.2 13.6 84.8 15.3 35.6 1.7 28.9-59.4 81.5-57.7 52.6 1.7 144.3 32.3 222.3 37.4 78.1 5 118.8-27.2 208.8-30.6 90-3.4 113.7 42.4 118.8 42.4s30.6-18.6 56-22c25.5-3.4 34 10.2 34 10.2s-1.7 57.7-13.6 91.6c-11.9 34-54.3 90-56 90-1.7 0-15.3 249.5-15.3 251.2 0 1.7-675.5-6.8-675.5-11.9z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <g stroke="#000" stroke-width="1pt">
+        <path fill="#fff100" d="M531.5 584.6s-68-52-69.8-177.1c-1-72 34.4-124 123-124 124 0 301.1 53.1 301.1 53.1v17.7s-141.7-53.1-301.2-53.1c-70.8 0-106.3 52-106.3 105.2 0 88.6 71 178.3 71 178.3v141.7h-17.8V584.6z" transform="matrix(-.13659 0 0 .12573 508.4 252.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 506.2 252.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 508.6 247.4)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 509.9 242.2)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 510.8 236.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 510.6 230.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 502.7 257)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 508.5 225)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 504 220.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 498 217.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 492 217.1)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 485.5 217.3)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 479 218.2)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 472.6 219)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 465.6 220)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 459.6 221.6)"/>
+      </g>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 268.6 252.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 266.1 247.4)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264.9 242.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264 236.7)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264.2 230.7)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 266.2 225)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 270.6 220.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 276.7 217.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 282.7 217.1)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 289.2 217.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 295.7 218.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 302.2 219)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 309.1 220)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 315.1 221.6)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 272 257)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M531.5 584.6s-68-52-69.8-177.1c-1-72 34.4-124 123-124 124 0 301.1 53.1 301.1 53.1v17.7s-141.7-53.1-301.2-53.1c-70.8 0-106.3 52-106.3 105.2 0 88.6 71 178.3 71 178.3v141.7h-17.8V584.6z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3" d="M1240.2 531.5s15.3-35.4 70.9-35.4c37.8 0 70.8 35.4 70.8 70.8v70.9h35.5v-70.9c0-35.4 35.4-70.8 70.8-70.8 53.2 0 70.9 35.4 70.9 35.4s0-106.3-70.9-106.3c-53.1 0-70.8 35.4-70.8 35.4s17.7-53.1 17.7-106.3-35.4-88.6-35.4-88.6c0 6.8-35.5 35.5-35.5 88.6s17.7 106.3 17.7 106.3-17.7-35.4-70.8-35.4c-70.9 0-70.9 106.3-70.9 106.3z" transform="matrix(.04553 0 0 .0479 299.4 309)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3" d="M1240.2 531.5s15.3-35.4 70.9-35.4c37.8 0 70.8 35.4 70.8 70.8v70.9h35.5v-70.9c0-35.4 35.4-70.8 70.8-70.8 53.2 0 70.9 35.4 70.9 35.4s0-106.3-70.9-106.3c-53.1 0-70.8 35.4-70.8 35.4s17.7-53.1 17.7-106.3-35.4-88.6-35.4-88.6c0 6.8-35.5 35.5-35.5 88.6s17.7 106.3 17.7 106.3-17.7-35.4-70.8-35.4c-70.9 0-70.9 106.3-70.9 106.3z" transform="matrix(.04553 0 0 .0479 347.8 309)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M531.5 832.7V673.2s35.4 53.2 88.6 53.2c43.5 0 88.6-70.9 88.6-70.9s41.5 53.2 88.6 53.2c42 0 88.5-68.6 88.5-68.6s43.2 68.6 88.6 68.6c45.5 0 88.6-53.2 88.6-53.2s46.3 70.9 106.3 70.9c53.1 0 70.9-53.2 70.9-53.2v159.5H531.5z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M708.7 832.7v-124S815 744 815 832.7H708.7z" transform="matrix(.13659 0 0 .12573 242.2 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M708.7 832.7v-124S815 744 815 832.7H708.7z" transform="matrix(-.13659 0 0 .12573 532.5 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M602.4 832.7C602.4 744 708.7 688 708.7 688S815 744 815 832.7H602.4z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M602.4 832.7C602.4 744 708.7 688 708.7 688S815 744 815 832.7H602.4z" transform="matrix(.13659 0 0 .12573 314.8 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M584.6 847.5c0-88.6 124.1-159.4 124.1-159.4s124 70.8 124 159.4h-248z" transform="matrix(.13659 0 0 .12573 290.6 250.9)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M1275.6 655.5c-35.4-17.7-166-35.4-376.3-35.4s-350 17.7-385.5 35.4c-35.4 17.7-35.4 53.2 0 70.9 35.4 17.7 175.3 35.4 385.5 35.4s340.9-17.7 376.3-35.4c35.4-17.7 35.4-53.2 0-70.9z" transform="matrix(.13505 0 0 .12573 265.9 275)"/>
+      <path fill="gray" d="M435.8 366.3c0 4.5-40.3 4.5-48.4 4.5-8.8 0-48.4 1.2-48.4-4.5 0-4.4 39.9-4.4 48.4-4.4 8.4 0 48.4.9 48.4 4.4z"/>
+      <path fill="#c00" d="M343.8 350.3c0 1.5-1 2.7-2.4 2.7s-2.4-1.2-2.4-2.7 1-2.6 2.4-2.6c1.3 0 2.4 1.2 2.4 2.6zm92 0c0 1.5-1.1 2.7-2.5 2.7-1.3 0-2.4-1.2-2.4-2.7s1.1-2.6 2.4-2.6c1.4 0 2.4 1.2 2.4 2.6z"/>
+      <path d="M392.2 349c0 1.4-2.2 2.6-4.8 2.6s-4.9-1.2-4.9-2.7 2.2-2.6 4.9-2.6 4.8 1.2 4.8 2.6z"/>
+      <path fill="#006300" d="M415.4 349c0 1.4-1.6 2.6-3.6 2.6s-3.6-1.2-3.6-2.7 1.6-2.6 3.6-2.6 3.6 1.2 3.6 2.6zm-49.8 0c0 1.4-1.6 2.6-3.6 2.6s-3.7-1.2-3.7-2.7 1.6-2.6 3.7-2.6c2 0 3.6 1.2 3.6 2.6z"/>
+      <path fill="#fff100" stroke="#000" stroke-width="2.2" d="M1257.9 496s35.4-53 70.9-53h35.4v35.3c0 53.2-53.1 71-53.1 71h141.7s-53.2-17.8-53.2-71V443h35.5c35.4 0 70.8 53.2 70.8 53.2V354.3s-35.4 53.2-70.8 53.2h-35.5V372c0-53.1 53.2-70.8 53.2-70.8H1311s53.1 17.7 53.1 70.8v35.5h-35.4c-35.5 0-70.9-53.2-70.9-53.2v141.8z" transform="matrix(.07805 0 0 .07185 279.5 298)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3.3" d="M1381.9 549.2h70.9s-53.2-17.7-53.2-70.9V443h35.4c35.5 0 71 53.2 71 53.2V354.3s-35.5 53.2-71 53.2h-35.4V372c0-53.1 53.2-70.8 53.2-70.8h-70.9v248z" transform="matrix(.03903 0 0 .06287 285 307.3)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3.3" d="M1381.9 549.2h70.9s-53.2-17.7-53.2-70.9V443h35.4c35.5 0 71 53.2 71 53.2V354.3s-35.5 53.2-71 53.2h-35.4V372c0-53.1 53.2-70.8 53.2-70.8h-70.9v248z" transform="matrix(-.03903 0 0 .06287 489.7 307.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M903.5 602.4a17.7 17.7 0 11-35.4 0 17.7 17.7 0 0135.4 0z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="2.2" d="M1257.9 496s35.4-53 70.9-53h35.4v35.3c0 53.2-53.1 71-53.1 71h141.7s-53.2-17.8-53.2-71V443h35.5c35.4 0 70.8 53.2 70.8 53.2V354.3s-35.4 53.2-70.8 53.2h-35.5V372c0-53.1 53.2-70.8 53.2-70.8H1311s53.1 17.7 53.1 70.8v35.5h-35.4c-35.5 0-70.9-53.2-70.9-53.2v141.8z" transform="matrix(.07805 0 0 .07185 279.5 251.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M903.5 602.4a17.7 17.7 0 11-35.4 0 17.7 17.7 0 0135.4 0z" transform="matrix(.13659 0 0 .12573 266.6 206.3)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M850.4 655.5h70.9v53.2h-71z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M850.4 683.3h70.9v202.5h-71z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 246)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 240.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 235)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 229.4)"/>
+      <path d="M392.5 357.5c0 1-2.2 1.8-5 1.8s-4.8-.8-4.8-1.8 2.2-1.8 4.9-1.8 4.9.8 4.9 1.8zm44.6 4.4c-.3.7-2.7.8-5.4.1-2.7-.6-4.6-1.6-4.4-2.3.3-.7 2.7-.8 5.4-.1 2.7.6 4.6 1.6 4.4 2.3zm-18.7-3c0 .9-2.4 1.4-5.2 1.3-2.7-.2-4.9-1.1-4.8-2 .1-.9 2.5-1.4 5.2-1.2 2.8.2 5 1 4.8 1.9zm-81.8 3c.2.7 2.6.8 5.3.1 2.7-.6 4.7-1.6 4.4-2.3-.3-.7-2.7-.8-5.4-.1-2.6.6-4.6 1.6-4.3 2.3zm19.5-3.4c.1.9 2.5 1.4 5.2 1.2 2.8-.2 5-1 4.8-2 0-.8-2.4-1.4-5.2-1.2-2.7.2-4.9 1-4.8 2z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/iq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/iq.svg
new file mode 100644
index 0000000..6b96774
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/iq.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-iq" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path fill="#ce1126" d="M0 0h512v170.7H0z"/>
+  <path d="M0 341.3h512V512H0z"/>
+  <g fill="#007a3d" transform="translate(-276.6 -99) scale(1.8686)">
+    <path d="M325.5 173.2a5 5 0 01-1.4-1c-.3-.5-.1-.5 1.2-.2 2.3.7 3.8.4 5.3-.8l1.3-1.1 1.5.7c.9.5 1.8.8 2 .7.7-.2 2.1-2 2-2.6 0-.7.6-.5 1 .3.6 1.6-.3 3.5-2 3.9-.7.2-1.4.1-2.6-.3-1.4-.5-1.7-.5-2.4 0a5.4 5.4 0 01-5.9.4zm5.8-5.3a8 8 0 01-1-4c.1-.6.3-.8.8-.6 1 .3 1.2 1 1 3 0 1.8-.3 2.3-.8 1.6zm-67.6-1.9c-.1 1.3 2.4 4.6 3.5 5.2-.8.3-1.7.2-2.4.5-4 4-18.4 18-21 21.4 7.8.2 16.4-.1 23.7-.4 0-5.3 5-5.6 8.4-7.5 1.7 2.7 6 2.5 6.6 6.6v17.6H216a9.7 9.7 0 01-12.3 7.5c2-2 5.4-2.8 6.6-5.7 1-6.4-2-10.3-4-14a24 24 0 007-3.6c-2.3 7 6.2 6.3 12.4 6.1.2-2.4.1-5.2-1.7-5.6 2.3-.9 2.7-1.2 6.6-4.4v9.6l46.1-.1c0-3 .8-7.9-1.6-7.9-2.2 0 0 6.2-1.8 6.2h-35.7v-6c1.5-1.6 1.3-1.5 11.6-11.8 1-1 8.3-7.6 14.6-13.7zm89.1-.3c2.5 1.4 4.5 3.2 7.5 4-.3 1.3-1.5 1.8-1.8 3.1v27c3.4.7 4.2-1.3 5.8-2.3.4 4.3 3.2 8.5 3 12h-14.5v-43.7zm-19.4 14.5s5.3-4.5 5.3-4.7V199h3.8l-.1-26.3c1.5-1.6 4.6-3.8 5.3-5.4v42h-33.4c-.5-8.7-.6-17.7 9.6-15.8V190c-.3-.6-.9.1-1-.7 1.6-1.6 2.1-2 6.5-5.8l.1 15.5h3.9v-18.8zm-12.6 18.6c.7 1 3.2 1 3-.8-.3-1.5-3.5-1-3 .8z"/>
+    <circle cx="224" cy="214.4" r="2"/>
+    <path d="M287 165.8c2.5 1.3 4.5 3.2 7.6 4-.4 1.2-1.5 1.7-1.8 3v27c3.4.7 4.1-1.2 5.7-2.3.5 4.3 3.2 8.6 3.1 12H287v-43.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ir.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ir.svg
new file mode 100644
index 0000000..79f6632
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ir.svg
@@ -0,0 +1,219 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ir" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M186 0h496v496H186z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-192) scale(1.0321)">
+    <path fill="#fff" d="M0 0h868.1v496H0z"/>
+    <path fill="#da0000" d="M0 333.1h868.1v163H0z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M165 340h47.6v3.3H165zm7.1 16.4h3.3v3.2H172zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M236.7 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9h-3.3z"/>
+      <path d="M234 340h3.3v19.6h-3.2zm-8.1 0h3.2v19.6H226zm-43.4 7.8v3.3H165v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M203.2 348.6h3.3v11h-3.3z"/>
+      <path d="M203.2 348.6h3.3v11h-3.3z"/>
+      <path d="M203.2 348.6h3.3v11h-3.3zm-38 0h3.2v11H165zm27.8 0h3.3v11H193zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M195.3 356.3v3.3h-14.7v-3.3zm1-8.5v3.3H187v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M87 340h47.5v3.3H86.9zm7 16.4h3.3v3.2H94zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M158.6 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9H125z"/>
+      <path d="M156 340h3.2v19.6H156zm-8.2 0h3.3v19.6h-3.3zm-43.4 7.8v3.3H87v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M125.1 348.6h3.3v11H125z"/>
+      <path d="M125.1 348.6h3.3v11H125z"/>
+      <path d="M125.1 348.6h3.3v11H125zm-38 0h3.2v11H87zm27.8 0h3.3v11H115zm-13.8 0h3.3v11H101z"/>
+      <path d="M117.2 356.3v3.3h-14.6v-3.3zm1-8.5v3.3H109v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M242.5 340H290v3.3h-47.5zm7 16.4h3.3v3.2h-3.2zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M314.2 356.3v3.3h-18v-3.3zm-33.6-7.6h3.3v10.9h-3.3z"/>
+      <path d="M311.5 340h3.3v19.6h-3.3zm-8.2 0h3.3v19.6h-3.3zm-43.4 7.8v3.3h-17.3v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M280.6 348.6h3.3v11h-3.3z"/>
+      <path d="M280.6 348.6h3.3v11h-3.3z"/>
+      <path d="M280.6 348.6h3.3v11h-3.3zm-38 0h3.2v11h-3.2zm27.9 0h3.2v11h-3.2zm-13.9 0h3.3v11h-3.3z"/>
+      <path d="M272.8 356.3v3.3H258v-3.3zm1-8.5v3.3h-9.4v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M789.3 340h47.5v3.3h-47.5zm7 16.4h3.3v3.2h-3.2zm40.6-.1v3.3h-9.5v-3.3zm5.2-16.3h3.2v19.6h-3.2z"/>
+      <path d="M861 356.3v3.3h-18v-3.3zm-33.6-7.6h3.3v10.9h-3.3z"/>
+      <path d="M858.3 340h3.3v19.6h-3.3zm-8.2 0h3.3v19.6H850zm-43.4 7.8v3.3h-17.3v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M827.4 348.6h3.3v11h-3.3z"/>
+      <path d="M827.4 348.6h3.3v11h-3.3z"/>
+      <path d="M827.4 348.6h3.3v11h-3.3zm-38 0h3.2v11h-3.2zm27.9 0h3.3v11h-3.3zm-13.8 0h3.2v11h-3.3z"/>
+      <path d="M819.6 356.3v3.3h-14.7v-3.3zm1-8.5v3.3h-9.4v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M320.4 340h47.5v3.3h-47.5zm7.1 16.4h3.3v3.2h-3.3zm40.6-.1v3.3h-9.5v-3.3zm5-16.3h3.3v19.6h-3.2z"/>
+      <path d="M392.1 356.3v3.3h-18v-3.3zm-33.5-7.6h3.2v10.9h-3.2z"/>
+      <path d="M389.4 340h3.3v19.6h-3.3zm-8.1 0h3.2v19.6h-3.3zm-43.5 7.8v3.3h-17.3v-3.3zm38.1 0v3.3h-17.3v-3.3z"/>
+      <path d="M358.6 348.6h3.2v11h-3.2z"/>
+      <path d="M358.6 348.6h3.2v11h-3.2z"/>
+      <path d="M358.6 348.6h3.2v11h-3.2zm-38.1 0h3.3v11h-3.3zm27.9 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M350.7 356.3v3.3H336v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M398.6 340h47.6v3.3h-47.6zm7.1 16.4h3.3v3.2h-3.3zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M470.3 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9h-3.3z"/>
+      <path d="M467.6 340h3.3v19.6h-3.3zm-8.1 0h3.2v19.6h-3.2zm-43.4 7.8v3.3h-17.4v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M436.8 348.6h3.3v11h-3.3z"/>
+      <path d="M436.8 348.6h3.3v11h-3.3z"/>
+      <path d="M436.8 348.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M429 356.3v3.3h-14.7v-3.3zm.9-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <path fill="#239f40" d="M0 0h868.1v163H0z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M477.3 340h47.5v3.3h-47.5zm7.1 16.4h3.3v3.2h-3.3zm40.6-.1v3.3h-9.5v-3.3zm5-16.3h3.4v19.6H530z"/>
+      <path d="M549 356.3v3.3h-18v-3.3zm-33.5-7.6h3.2v10.9h-3.2z"/>
+      <path d="M546.3 340h3.3v19.6h-3.3zm-8.1 0h3.2v19.6h-3.2zm-43.4 7.8v3.3h-17.4v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M515.5 348.6h3.2v11h-3.2z"/>
+      <path d="M515.5 348.6h3.2v11h-3.2z"/>
+      <path d="M515.5 348.6h3.2v11h-3.2zm-38.1 0h3.3v11h-3.3zm27.9 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M507.6 356.3v3.3h-14.7v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M555.5 340h47.6v3.3h-47.6zm7.1 16.4h3.3v3.2h-3.3zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M627.2 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9h-3.3z"/>
+      <path d="M624.6 340h3.2v19.6h-3.2zm-8.2 0h3.3v19.6h-3.3zm-43.4 7.8v3.3h-17.4v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M593.7 348.6h3.3v11h-3.3z"/>
+      <path d="M593.7 348.6h3.3v11h-3.3z"/>
+      <path d="M593.7 348.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M585.8 356.3v3.3h-14.6v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M633.8 340h47.5v3.3h-47.5zm7 16.4h3.3v3.2h-3.3zm40.6-.1v3.3H672v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M705.5 356.3v3.3h-18v-3.3zm-33.6-7.6h3.3v10.9h-3.3z"/>
+      <path d="M702.8 340h3.3v19.6h-3.3zm-8.2 0h3.3v19.6h-3.3zm-43.4 7.8v3.3h-17.4v-3.3zm38 0v3.3H672v-3.3z"/>
+      <path d="M672 348.6h3.2v11h-3.3z"/>
+      <path d="M672 348.6h3.2v11h-3.3z"/>
+      <path d="M672 348.6h3.2v11h-3.3zm-38.2 0h3.3v11h-3.3zm28 0h3.2v11h-3.3zm-13.9 0h3.3v11h-3.3z"/>
+      <path d="M664 356.3v3.3h-14.6v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M712.4 340H760v3.3h-47.6zm7.1 16.4h3.3v3.2h-3.3zm40.6-.1v3.3h-9.5v-3.3zm5.1-16.3h3.3v19.6h-3.3z"/>
+      <path d="M784.1 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9h-3.3z"/>
+      <path d="M781.5 340h3.2v19.6h-3.2zm-8.2 0h3.3v19.6h-3.3zm-43.4 7.8v3.3h-17.4v-3.3zm38 0v3.3h-17.3v-3.3z"/>
+      <path d="M750.6 348.6h3.3v11h-3.3z"/>
+      <path d="M750.6 348.6h3.3v11h-3.3z"/>
+      <path d="M750.6 348.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M742.7 356.3v3.3h-14.6v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M8 340h47.5v3.3H7.9zm7 16.4h3.3v3.2H15zm40.6-.1v3.3H46v-3.3zm5.1-16.3H64v19.6h-3.3z"/>
+      <path d="M79.6 356.3v3.3h-18v-3.3zm-33.5-7.6h3.3v10.9H46z"/>
+      <path d="M77 340h3.2v19.6H77zm-8.2 0H72v19.6h-3.2zm-43.4 7.8v3.3H8v-3.3zm38 0v3.3H46.1v-3.3z"/>
+      <path d="M46 348.6h3.4v11H46z"/>
+      <path d="M46 348.6h3.4v11H46z"/>
+      <path d="M46 348.6h3.4v11H46zm-38 0h3.3v11H8zm28 0h3.2v11h-3.3zm-14 0h3.4v11H22z"/>
+      <path d="M38.2 356.3v3.3H23.5v-3.3zm1-8.5v3.3h-9.3v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M165 139h47.6v3.2H165zm7.1 16.3h3.3v3.2H172zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M236.7 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11h-3.3z"/>
+      <path d="M234 139h3.3v19.5h-3.2zm-8.1 0h3.2v19.5H226zm-43.4 7.7v3.3H165v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M203.2 147.6h3.3v11h-3.3z"/>
+      <path d="M203.2 147.6h3.3v11h-3.3z"/>
+      <path d="M203.2 147.6h3.3v11h-3.3zm-38 0h3.2v11H165zm27.8 0h3.3v11H193zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M195.3 155.2v3.3h-14.7v-3.3zm1-8.4v3.2H187v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M87 139h47.5v3.2H86.9zm7 16.3h3.3v3.2H94zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M158.6 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11H125z"/>
+      <path d="M156 139h3.2v19.5H156zm-8.2 0h3.3v19.5h-3.3zm-43.4 7.7v3.3H87v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M125.1 147.6h3.3v11H125z"/>
+      <path d="M125.1 147.6h3.3v11H125z"/>
+      <path d="M125.1 147.6h3.3v11H125zm-38 0h3.2v11H87zm27.8 0h3.3v11H115zm-13.8 0h3.3v11H101z"/>
+      <path d="M117.2 155.2v3.3h-14.6v-3.3zm1-8.4v3.2H109v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M242.5 139H290v3.2h-47.5zm7 16.3h3.3v3.2h-3.2zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M314.2 155.2v3.3h-18v-3.3zm-33.6-7.6h3.3v11h-3.3z"/>
+      <path d="M311.5 139h3.3v19.5h-3.3zm-8.2 0h3.3v19.5h-3.3zm-43.4 7.7v3.3h-17.3v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M280.6 147.6h3.3v11h-3.3z"/>
+      <path d="M280.6 147.6h3.3v11h-3.3z"/>
+      <path d="M280.6 147.6h3.3v11h-3.3zm-38 0h3.2v11h-3.2zm27.9 0h3.2v11h-3.2zm-13.9 0h3.3v11h-3.3z"/>
+      <path d="M272.8 155.2v3.3H258v-3.3zm1-8.4v3.2h-9.4v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M789.3 139h47.5v3.2h-47.5zm7 16.3h3.3v3.2h-3.2zm40.6 0v3.2h-9.5v-3.3zm5.2-16.3h3.2v19.5h-3.2z"/>
+      <path d="M861 155.2v3.3h-18v-3.3zm-33.6-7.6h3.3v11h-3.3z"/>
+      <path d="M858.3 139h3.3v19.5h-3.3zm-8.2 0h3.3v19.5H850zm-43.4 7.7v3.3h-17.3v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M827.4 147.6h3.3v11h-3.3z"/>
+      <path d="M827.4 147.6h3.3v11h-3.3z"/>
+      <path d="M827.4 147.6h3.3v11h-3.3zm-38 0h3.2v11h-3.2zm27.9 0h3.3v11h-3.3zm-13.8 0h3.2v11h-3.3z"/>
+      <path d="M819.6 155.2v3.3h-14.7v-3.3zm1-8.4v3.2h-9.4v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M320.4 139h47.5v3.2h-47.5zm7.1 16.3h3.3v3.2h-3.3zm40.6 0v3.2h-9.5v-3.3zm5-16.3h3.3v19.5h-3.2z"/>
+      <path d="M392.1 155.2v3.3h-18v-3.3zm-33.5-7.6h3.2v11h-3.2z"/>
+      <path d="M389.4 139h3.3v19.5h-3.3zm-8.1 0h3.2v19.5h-3.3zm-43.5 7.7v3.3h-17.3v-3.2zm38.1 0v3.3h-17.3v-3.2z"/>
+      <path d="M358.6 147.6h3.2v11h-3.2z"/>
+      <path d="M358.6 147.6h3.2v11h-3.2z"/>
+      <path d="M358.6 147.6h3.2v11h-3.2zm-38.1 0h3.3v11h-3.3zm27.9 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M350.7 155.2v3.3H336v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M398.6 139h47.6v3.2h-47.6zm7.1 16.3h3.3v3.2h-3.3zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M470.3 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11h-3.3z"/>
+      <path d="M467.6 139h3.3v19.5h-3.3zm-8.1 0h3.2v19.5h-3.2zm-43.4 7.7v3.3h-17.4v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M436.8 147.6h3.3v11h-3.3z"/>
+      <path d="M436.8 147.6h3.3v11h-3.3z"/>
+      <path d="M436.8 147.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M429 155.2v3.3h-14.7v-3.3zm.9-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M477.3 139h47.5v3.2h-47.5zm7.1 16.3h3.3v3.2h-3.3zm40.6 0v3.2h-9.5v-3.3zm5-16.3h3.4v19.5H530z"/>
+      <path d="M549 155.2v3.3h-18v-3.3zm-33.5-7.6h3.2v11h-3.2z"/>
+      <path d="M546.3 139h3.3v19.5h-3.3zm-8.1 0h3.2v19.5h-3.2zm-43.4 7.7v3.3h-17.4v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M515.5 147.6h3.2v11h-3.2z"/>
+      <path d="M515.5 147.6h3.2v11h-3.2z"/>
+      <path d="M515.5 147.6h3.2v11h-3.2zm-38.1 0h3.3v11h-3.3zm27.9 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M507.6 155.2v3.3h-14.7v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M555.5 139h47.6v3.2h-47.6zm7.1 16.3h3.3v3.2h-3.3zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M627.2 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11h-3.3z"/>
+      <path d="M624.6 139h3.2v19.5h-3.2zm-8.2 0h3.3v19.5h-3.3zm-43.4 7.7v3.3h-17.4v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M593.7 147.6h3.3v11h-3.3z"/>
+      <path d="M593.7 147.6h3.3v11h-3.3z"/>
+      <path d="M593.7 147.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M585.8 155.2v3.3h-14.6v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M633.8 139h47.5v3.2h-47.5zm7 16.3h3.3v3.2h-3.3zm40.6 0v3.2H672v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M705.5 155.2v3.3h-18v-3.3zm-33.6-7.6h3.3v11h-3.3z"/>
+      <path d="M702.8 139h3.3v19.5h-3.3zm-8.2 0h3.3v19.5h-3.3zm-43.4 7.7v3.3h-17.4v-3.2zm38 0v3.3H672v-3.2z"/>
+      <path d="M672 147.6h3.2v11h-3.3z"/>
+      <path d="M672 147.6h3.2v11h-3.3z"/>
+      <path d="M672 147.6h3.2v11h-3.3zm-38.2 0h3.3v11h-3.3zm28 0h3.2v11h-3.3zm-13.9 0h3.3v11h-3.3z"/>
+      <path d="M664 155.2v3.3h-14.6v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M712.4 139H760v3.2h-47.6zm7.1 16.3h3.3v3.2h-3.3zm40.6 0v3.2h-9.5v-3.3zm5.1-16.3h3.3v19.5h-3.3z"/>
+      <path d="M784.1 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11h-3.3z"/>
+      <path d="M781.5 139h3.2v19.5h-3.2zm-8.2 0h3.3v19.5h-3.3zm-43.4 7.7v3.3h-17.4v-3.2zm38 0v3.3h-17.3v-3.2z"/>
+      <path d="M750.6 147.6h3.3v11h-3.3z"/>
+      <path d="M750.6 147.6h3.3v11h-3.3z"/>
+      <path d="M750.6 147.6h3.3v11h-3.3zm-38 0h3.2v11h-3.3zm27.8 0h3.3v11h-3.3zm-13.8 0h3.3v11h-3.3z"/>
+      <path d="M742.7 155.2v3.3h-14.6v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M8 139h47.5v3.2H7.9zm7 16.3h3.3v3.2H15zm40.6 0v3.2H46v-3.3zm5.1-16.3H64v19.5h-3.3z"/>
+      <path d="M79.6 155.2v3.3h-18v-3.3zm-33.5-7.6h3.3v11H46z"/>
+      <path d="M77 139h3.2v19.5H77zm-8.2 0H72v19.5h-3.2zm-43.4 7.7v3.3H8v-3.2zm38 0v3.3H46.1v-3.2z"/>
+      <path d="M46 147.6h3.4v11H46z"/>
+      <path d="M46 147.6h3.4v11H46z"/>
+      <path d="M46 147.6h3.4v11H46zm-38 0h3.3v11H8zm28 0h3.2v11h-3.3zm-14 0h3.4v11H22z"/>
+      <path d="M38.2 155.2v3.3H23.5v-3.3zm1-8.4v3.2h-9.3v-3.2z"/>
+    </g>
+    <path fill="#d90000" stroke-width="1pt" d="M119.3 329h5.9v10h-5.9zm155.5 0h5.9v10h-5.9zM0 329h5.8v10H0zm78.9 0h5.9v10h-5.9zm78.4 0h5.8v10h-5.8zm38.8 0h5.8v10h-5.8zm39.5 0h6v10h-6zm78 0h5.9v10h-5.9zm196.8 0h5.8v10h-5.8zm-157.2 0h5.9v10h-5.9zm38.8 0h5.9v10H392zm39.2 0h5.8v10h-5.8zm39.2 0h5.8v10h-5.8zm313 0h6v10h-6zm-235 0h5.8v10h-5.9zm39.5 0h5.9v10h-5.9zm40 0h5.9v10h-5.9zm37.6 0h5.9v10h-5.9zm40 0h5.9v10h-6zm39.2 0h5.8v10h-5.8zm116 0h5.8v10h-5.9zm-37.6 0h5.8v10h-5.8zm-783.8 0h5.9v10h-5.9z"/>
+    <path fill="#239e3f" stroke-width="1pt" d="M119.3 157.6h5.9v10.1h-5.9zm155.5 0h5.9v10.1h-5.9zM0 157.6h5.8v10.1H0zm78.9 0h5.9v10.1h-5.9zm78.4 0h5.8v10.1h-5.8zm38.8 0h5.8v10.1h-5.8zm39.5 0h6v10.1h-6zm78 0h5.9v10.1h-5.9zm196.8 0h5.8v10.1h-5.8zm-157.2 0h5.9v10.1h-5.9zm38.8 0h5.9v10.1H392zm39.2 0h5.8v10.1h-5.8zm39.2 0h5.8v10.1h-5.8zm313 0h6v10.1h-6zm-235 0h5.8v10.1h-5.9zm39.5 0h5.9v10.1h-5.9zm40 0h5.9v10.1h-5.9zm37.6 0h5.9v10.1h-5.9zm40 0h5.9v10.1h-6zm39.2 0h5.8v10.1h-5.8zm116 0h5.8v10.1h-5.9zm-37.6 0h5.8v10.1h-5.8zm-783.8 0h5.9v10.1h-5.9z"/>
+    <g fill="#da0000">
+      <path d="M457 191.4c8.3 10 33.5 65.5-15.2 101.9-22.9 17.2-8.7 18-8 21 36.8-19.6 48.8-46 48.5-69.8-.3-23.7-12.8-44.6-25.2-53.1z"/>
+      <path d="M462 188.8a71 71 0 0115 108.8c26.4-5.8 60-83.7-15.2-108.8zm-55.9 0a71 71 0 00-15 108.8c-26.5-5.8-60.1-83.7 15-108.8z"/>
+      <path d="M411 191.4c-8.2 10-33.5 65.5 15.2 101.9 22.9 17.2 8.7 18 8 21-36.7-19.6-48.8-46-48.5-69.8.3-23.7 12.9-44.6 25.3-53.1z"/>
+      <path d="M480.7 309.2a102 102 0 01-46-9c2.2 4.3 4 7 6.3 11.4 12.8 1.1 30.5 2.6 39.7-2.4zm-92 0c14.4.2 32.6-2 46-9-2.2 4.3-4 7-6.3 11.4-12.8 1.1-30.5 2.6-39.7-2.4zm26.4-134.4c3 7.7 10.6 8.9 18.8 4.3 6 3.6 15.2 3.8 18.4-4 2.4 19.2-17.8 14.7-18.5 11-7.5 7.2-21.5 3-18.7-11.3z"/>
+      <path d="M434.4 321.3l7.6-8.7 1-116.4-9-8-9 7.6 1.8 117.2 7.6 8.3z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/is.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/is.svg
new file mode 100644
index 0000000..08d1e68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/is.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-is" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M85.4 0h486v486h-486z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="0" clip-path="url(#a)" transform="translate(-90) scale(1.0535)">
+    <path fill="#003897" d="M0 0h675v486H0z"/>
+    <path fill="#fff" d="M0 189h189V0h108v189h378v108H297v189H189V297H0V189z"/>
+    <path fill="#d72828" d="M0 216h216V0h54v216h405v54H270v216h-54V270H0v-54z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/it.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/it.svg
new file mode 100644
index 0000000..615c58f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/it.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-it" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#009246" d="M0 0h170.7v512H0z"/>
+    <path fill="#ce2b37" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/je.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/je.svg
new file mode 100644
index 0000000..c63ccb2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/je.svg
@@ -0,0 +1,29 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-je" viewBox="0 0 30 30">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M6.2 0h18v18h-18z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-10.33354 0) scale(1.6667)">
+    <path fill="#fff" d="M0 0h30v18H0z"/>
+    <path fill="#df112d" fill-rule="evenodd" d="M0 0v1.2L13 9 0 16.8V18h2l13-7.8L28 18h2v-1.2L17 9l13-7.8V0h-2L15 7.8 2 0H0z"/>
+    <g transform="translate(.4) scale(.12217)">
+      <path fill="#e8112d" stroke="#000" stroke-width=".1" d="M132.7 22.2c3.1 12.8 1.4 28.6-12.9 37.4-14.2-8.8-16-24.6-12.8-37.4 3.4-3 18.6-4.9 25.7 0z"/>
+      <path fill="#f9dd16" stroke="#000" stroke-width=".1" d="M119.8 19.7a26 26 0 0113 3.1 28 28 0 014.9-12.1c-2.5 0-3.6 1.3-3.6 2.6-.6-1.7-3-1.6-3.8-.7 2.7 1.8.6 5-1.8 4.4-1.1-.3-1.7-1.1-2-2.3a1.3 1.3 0 10-.5 0 2.9 2.9 0 01-3.1 1.3c-1.3-.3-1.9-1.5-1.9-2.5 0-2.7 2.6-3.1 3.4-2.6 0-1.8-2.9-3.3-3.8-1.8a4.8 4.8 0 00-.8-5.8A4.8 4.8 0 00119 9c-.9-1.5-3.7 0-3.7 1.8.7-.5 3.3-.1 3.3 2.6 0 1-.6 2.2-1.8 2.5a3 3 0 01-3.2-1.3 1.3 1.3 0 00.6-.4 1.3 1.3 0 10-1.1.4c-.2 1.2-.9 2-2 2.3a2.4 2.4 0 01-1.8-4.4c-.8-1-3.2-1-3.8.7 0-1.3-1.1-2.6-3.6-2.6a28 28 0 015 12.1 26 26 0 0113-3.1z"/>
+      <g id="b" stroke="#000">
+        <g fill="#f9dd16" stroke-width=".1">
+          <path d="M130.7 32.2c-.4 0-.4.5-.5.5.8 0 1.2-.3 1.4-.7v.6c.6-.2.8-.7.6-1l.7.2c-.4-.3-.1-1-.8-1.4.2 0 .6.2.8.5-.1-.7-.2-1.1-.8-1.5h.5a.9.9 0 01-.4-.8c0-.4-.2-.4-.6-.3l-1.8.1c-1 0-2 0-2.8-.6 1.3.6 3-.6 3-1.5 0-1-1.4-2-4-1.4-2.6.6-5.8.4-5.8-.5s2.3-1 3.5-.8c1.2.2 2 .3 4.2-.5-.5.2-2.3.3-3.7-.1s-4.8-.4-4.8 1.4c0 1.9 3.6 1.7 6.8 1.2 1.8-.2 2.8 0 2.8.5 0 .6-1.7.8-3 .7a10 10 0 00-4.1.3c-1.3.4-2.2 0-3.6.3-.7 0-2.4 0-3.2-1.4-.5.4-2 1.1-2.3 1.9-.3.6 0 1.3.4 2 .6.8-.3.7-1 .7-.8 0-2 0-2.6-.8-.6-.6-1.3-1.1-1.9-.7-.3.3 0 .6.2.5l.8.2a1 1 0 00-1 .1c-.3.2 0 .6.3.5.2-.1.7-.2 1 0-.3 0-.7 0-.8.2s0 .4.3.4c.6 0 .7.4 1.3.3a.9.9 0 00-.7.4c.6-.3 1.1.4 1.8.2-.2.1-.7.4-.7.6.4-.5 3.2.4 3.2-.7l-.1.8c.3-.2 1.4-.3 1.8-1 0 .2 0 .5-.2.6.3 0 .8-.2 1.3-.9.2-.3.2-.5.2-.7.5 0 .8-.1 1.2-.4.4-.3.8.3 1.5-.2.6-.4 1.2 0 1.6-.2.3-.2.8 0 1.2-.2s1 .1 1.6-.4c1 .4 2.3 1 5.2.5 1.6-.3 2.2.3 2.2 1 0 .6-.4.6-.6.6-1 .1-1.3-.3-1.7-.2-.2.1-.4.5 0 .7-.3.1-.3.4-.1.5s.5 0 .8-.1c-.4.1-.7.4-.5.7.1.2.4.3.7 0 .3-.4.8-.7 1.2-.7zm-18.6-8c-.8-.3-1-.3-.9.4 0 .3.3.7.5.9 0-.3.1-1 .4-1.2z"/>
+          <path d="M114.8 24.3c.8-.4 1.1-.4.9.3 0 .3-.3.7-.5.9 0-.3 0-1-.4-1.2z"/>
+          <path d="M113.5 23.8c1.6 0 1.8.8 1.7 1.7 0 1-.5.6-.8 2-.1.4-.5.5-1 .5-.3 0-.7 0-.9-.6-.3-1.3-.8-1-.8-2 0-.8.2-1.6 1.8-1.6z"/>
+          <path d="M109.4 27.5c-.4-.2-.7 0-.9 0 .6.1.6.8 1.8 1-.3 0-.4.2-.7 0 .5.4 1 .9 2.2.9.7 0 .2.3-.2.1.4.5 1.3.1 1.9 1 0-.7-1-1.7-.5-2.4-1.7-.1-1.8-1-2.7-1.7-.8-.6-.9-1.2-1.2-2.3-.1-.5-.7-.8-1-.7-.3 0-.5.3-.2.5.2.2.6.2.6.7-.3-.4-.8-.5-1-.3-.1.2 0 .5.2.5.5 0 .2.6.7 1-.5-.5-.9-.6-1.2-.3-.1.2 0 .5.4.5.5 0 1 1.2 1.8 1.5zm13 4.6c-.2 0-.1.5-.5.5.8 0 1.3-.2 1.6-.5l-.2.5c.4-.3 1.5-.4 2-.3s.6-.1.8-.4c.2-.4 0-.6-.3-.8-.3-.3-.4-.7-.3-1.3-1.4-2-4-1-4-.2.9 1.1 1 1 1.8 1.1.7.2 1.2.2.7.6-.2.2-1 0-1.5.1-1.3 0-2-.9-2.3-.4-.3.4 0 .6.6.6-.4 0-1 0-.9.4.2.7.8-.1 1.1.1-.2 0-.6.1-.6.3 0 .2.5.5 1 0a1.6 1.6 0 011-.3z"/>
+        </g>
+        <path fill="none" stroke-width=".1" d="M123.5 29.2c-.4-.2-.9-.3-1.4-.2m-5.6 0c-.4.8-.2 1.2-.1 1.6m-4-5.6c.2.2.4-.2.8.2-.1-.1-.3.3-.6 0m2-.1c-.3 0-.5-.3-.9.1.1-.1.3.3.6 0m-.6 0v.3c.1.7.3 1-.3 1-.5 0-.3-.3-.2-1v-.3"/>
+        <path fill="#ff0016" stroke-width=".1" d="M113.5 27.7c.4 0 .6 0 .6-.6 0-.2.3-.3.1-.7.2.4-.7.4-.7.2 0 .2-1 .2-.8-.2-.1.4.2.5.1.7 0 .6.2.6.7.6z"/>
+        <path stroke-width=".1" d="M113 26.5l-1-.3m1 .3h-1m1 .1l-.9.3m1.7-.4l1-.3m-1 .3h1.2m-1.2.1l1 .3"/>
+        <path fill="#0051ba" stroke-width="0" d="M108.1 23.4c-.3-.4-1 0-1 .4.2-.3.6.1.9 0 .1 0 .3-.2.1-.4zm-.3.9c-.3-.4-1.1 0-1.1.4.2-.3.6.1.9 0 .1 0 .3-.3.2-.4zm-.2 1.2c-.4-.4-1.1 0-1 .5.2-.3.6 0 .8 0 .2-.1.3-.4.1-.5zm.3 3.7c-.4-.4-1 .1-1 .6.2-.4.7 0 1-.2 0 0 .2-.3 0-.5zm0 .7c-.5-.1-1 .6-.7 1 0-.5.6-.3.8-.5l-.1-.5zm.6.7c-.5-.2-1 .4-.7.8 0-.3.6-.2.7-.4v-.5zm11.7 1.1c-.5-.1-1 .5-.7 1 0-.5.6-.3.8-.5l-.1-.5zm.6.6c-.5-.1-.9.6-.6 1 0-.5.6-.4.7-.6.1-.1.1-.4 0-.4zm-.4-1.4c-.4-.2-1 .4-.9.8.2-.4.7-.1.9-.3V31zm8.3 1c-.4-.1-.8.6-.6 1 0-.4.6-.3.8-.5 0-.2 0-.5-.2-.5zm0-.7c-.4-.3-1 .3-.8.7.2-.3.7-.1.9-.3v-.5zm.4 1.3c-.5 0-.9.7-.6 1 0-.4.6-.3.7-.5.1-.2 0-.4-.1-.5zm-15.6-5.2c.3 0 .4.1.4.7 0 1 0 1.6-.4 1.6-.3 0-.3-.5-.3-1.3 0-.4 0-.7-.1-.6 0-.3.1-.4.4-.4z"/>
+      </g>
+      <use width="30" height="18" transform="matrix(.9 0 0 .9 11.6 13.7)" xlink:href="#b"/>
+      <use width="30" height="18" transform="matrix(.67 0 0 .75 39.2 27.5)" xlink:href="#b"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jm.svg
new file mode 100644
index 0000000..c261da0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jm.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jm" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path d="M0 0l256 256L0 512zm512 0L256 256l256 256z"/>
+    <path fill="#090" d="M0 0l256 256L512 0zm0 512l256-256 256 256z"/>
+    <path fill="#fc0" d="M512 0h-47.7L0 464.3V512h47.7L512 47.7z"/>
+    <path fill="#fc0" d="M0 0v47.7L464.3 512H512v-47.7L47.7 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jo.svg
new file mode 100644
index 0000000..ab1c62a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jo.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jo" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M113.6 0H607v493.5H113.6z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-117.8) scale(1.0375)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M0 0h987v164.5H0z"/>
+      <path fill="#fff" d="M0 164.5h987V329H0z"/>
+      <path fill="#090" d="M0 329h987v164.5H0z"/>
+      <path fill="red" d="M0 493.5l493.5-246.8L0 0v493.5z"/>
+      <path fill="#fff" d="M164.8 244l22 10.6h-24.5l5.5 24-15.3-19.3-15.3 19.2 5.5-23.9H118l22.1-10.7-15.3-19.1 22.1 10.6 5.5-23.9 5.5 24 22-10.7z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jp.svg
new file mode 100644
index 0000000..dc7a64a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/jp.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jp" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M177.2 0h708.6v708.7H177.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-128) scale(.72249)">
+    <path fill="#fff" d="M0 0h1063v708.7H0z"/>
+    <circle cx="523.1" cy="344.1" r="194.9" fill="#d30000" transform="translate(-59.7 -34.5) scale(1.1302)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ke.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ke.svg
new file mode 100644
index 0000000..0b82f3a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ke.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ke" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" stroke-miterlimit="10" d="M-28.6 47.5l1.8 1 46.7-81c2.7-.6 4.2-3.2 5.7-5.8 1-1.8 5-8.7 6.7-17.7a58 58 0 00-11.9 14.7c-1.5 2.6-3 5.2-2.3 7.9z"/>
+  </defs>
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path d="M0 0h512v153.6H0z"/>
+  <path fill="#060" d="M0 358.4h512V512H0z"/>
+  <g id="b" transform="matrix(3.2 0 0 3.2 255.8 256)">
+    <use width="100%" height="100%" stroke="#000" xlink:href="#a"/>
+    <use width="100%" height="100%" fill="#fff" xlink:href="#a"/>
+  </g>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 511.7 0)" xlink:href="#b"/>
+  <path fill="#b00" d="M255.8 102.4c-19.2 0-51.2 51.2-60.8 76.8H0v153.6h195c9.7 25.6 41.7 76.8 60.9 76.8 19.2 0 51.2-51.2 60.8-76.8H512V179.2H316.6c-9.6-25.6-41.6-76.8-60.8-76.8z"/>
+  <path id="c" d="M316.6 332.8a220 220 0 0016-76.8 220 220 0 00-16-76.8 220 220 0 00-16 76.8 220 220 0 0016 76.8"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 511.7 0)" xlink:href="#c"/>
+  <g fill="#fff" transform="matrix(3.2 0 0 3.2 255.8 256)">
+    <ellipse rx="4" ry="6"/>
+    <path id="d" d="M1 5.8s4 8 4 21-4 21-4 21z"/>
+    <use width="100%" height="100%" transform="scale(-1)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="scale(1 -1)" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kg.svg
new file mode 100644
index 0000000..71ee7b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kg.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kg" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M104 0h416.3v416.3H104.1z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(1.23)">
+    <path fill="#be0027" d="M0 0h625v416.3H0z"/>
+    <path fill="#ff0" d="M189.8 212.3c11.1-13.5 34.1-.3 52.9-10-22.3 1.2-34.4-10.7-52-9 18.2-11.2 33.7 3.6 54.1-2.4-27-2.2-25.8-14.3-50.3-16 21.8-9.3 32.5 9.6 53.9 5.3-25.2-5.8-28.5-20.6-47.2-23.8 27.3-4.1 25.5 12 52.3 14-27.2-11.6-20-21.8-42.8-30.6 25.5-.6 23.8 17 49.5 21.6-22-14-19.3-26.8-37.5-36.8 21.6.4 23.7 22.5 45.7 29.3-19.6-15.5-14.5-28.7-31.4-42.6 21.4 5 18.3 24.1 40.6 36.2-16.5-18.3-10.2-31.5-24.6-46.6 20.6 6.7 12.8 24.8 34.2 42-12.3-20.2-4.7-33.1-16.8-50.2 19.2 10 9.9 28.4 27.7 46.8-8.4-20.7 0-33.6-8.6-52 16.4 12.3 6.7 32 19.9 50.9-4.8-26 6.4-30.3 2.9-53 12.4 15.3-1.5 30.6 8 53-1-25.5 12.5-31.5 10.1-52 12.4 18.4-6.9 34.4 1.2 54.1 2-24.3 18-30.5 18.3-49.4 9.7 17.3-11.5 29.8-8 52.8 6.9-25.4 23.9-28.5 26-45.6 5.8 20-17.4 29.4-16 51.6 6.9-22.5 28.1-25.2 32.5-41.8 2.6 21.2-18.3 25-24.1 48.4 11-19 30.2-20.7 38.8-35.8-.7 21-24.3 23.7-31.5 43.4 13.6-16.7 30.6-13.8 44.2-28.6-1.4 19-25.4 17.9-38.2 37.5 14.8-13.6 37-9.5 48.3-21.2-.6 16.7-30 15.5-44 30.4 17.2-9.3 38.9-3.8 51.5-12.6C427 184.3 396 181 381 192.4c20.5-5.7 36.3 3 53-3.3-8.1 14.3-36.3 5.3-51.3 14.6 17.8-3 36.7 7.7 52.9 4.3-5.3 12.3-36.2-.8-53 7 20-.3 33 12.5 51.4 11.6-10 11.2-37.2-4.2-53-1.6 19.3 4 34 20 48.7 20.8-12 9.2-34.5-11.8-52.8-9.1 18.8 5 34.6 26.4 45.4 26.9-11.6 8-34.6-18.3-50.3-17.4 19 8.7 27.8 30.5 40.4 33.6-15.5 5-30.8-23.7-47.5-24.7 19.3 12.2 20.4 30.8 35.3 39-15.6 4-26.8-28.5-43.3-31.2 15.9 11.6 18.2 36.5 28.8 44.4-16 .8-21.7-33.1-38-38 14 11.7 10.6 37 21.4 47.9-16.5-3.4-14.4-33-31.7-43 12.4 15.8 6 38.1 14.2 50.7-16.2-6.5-9.1-33-24.6-48 8.4 16.8-.6 36.3 6 52.5-14.7-7.2-4.8-38.5-16.1-51 5.2 19.4-4.4 35.4-.5 52.7-15.1-17.5 2.3-35-10.8-53 3.4 20.6-10.9 34.8-8.6 52-12-14 6.4-36.5-2.9-54.1 2 20.1-16.5 37.7-15.2 50.4-9.7-16.2 10.8-35.4 5.3-53.9-1.2 19.2-19.8 29.6-23.3 47-6.3-19.2 15.9-33.1 14-52-6.4 18-24.4 25.2-30.8 42.6-5.2-19.2 21.1-29.4 21.8-49.6-8.1 19-29.7 23.1-36.8 37.6-2.7-19 27.5-27.6 28.6-45.7-9.7 17.4-33.3 18-41.5 31.9-1.2-19 30.6-21.4 35.6-41.3-9.7 14.8-35.6 13-46.3 25 1.7-17.7 36-18.8 41.5-34.6-12.8 12.3-36.5 7.2-50 17 7.5-17.4 39.8-13.7 47-26.3-14.2 7.5-39.5.3-52 7.7 11.4-16.4 36.5-6.6 50.7-18-23.1 3.4-37-5.8-53-1.5z"/>
+    <path fill="#ff0" d="M393.4 208.2a80.7 80.7 0 11-161.3 0 80.7 80.7 0 01161.3 0z"/>
+    <path fill="#be0027" d="M383 208.4a70.1 70.1 0 11-140.2 0 70.1 70.1 0 01140.3 0z"/>
+    <path fill="#ff0" d="M373.3 208.5a60.2 60.2 0 11-120.5 0 60.2 60.2 0 01120.5 0z"/>
+    <path fill="#be0027" d="M261.8 169c16.7-.3 37.4 1.2 51.1 12.2a79 79 0 0149.2-11.7l9 16.4c-13-1.3-25.7.5-40.7 6.6a69.3 69.3 0 0128.1 58.6c-2.2 2.8-5.6 5.8-7.8 8.5 3.2-23.1-9-49-26.8-62.6 14.4 20.9 23 39.6 20.6 65.5l-8.2 5.1c3.8-22.8-1.5-49.5-18.4-65a87.5 87.5 0 0113.4 65.8c-2.6.8-6.6 3-9.3 3.8a78 78 0 00-8.8-64 77.6 77.6 0 00-8.5 63.4l-8.6-2.5c-4.6-24.5 1.8-52 12.9-66.4-11.3 6.6-22 34.7-19 63.4l-7.6-3.5c-3.7-21.4 6-49.3 20-65.4-15.8 10-28.7 34.4-26.4 60.7-2.4-2.1-4.7-3.2-7.1-5.3-2.8-23 10.5-46.1 26-60a87.6 87.6 0 00-40.6-6.7c2.5-5.3 5-11.5 7.5-16.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kh.svg
new file mode 100644
index 0000000..8c888f1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kh.svg
@@ -0,0 +1,61 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-kh" viewBox="0 0 512 512">
+  <path fill="#032ea1" d="M0 0h512v512H0z"/>
+  <path fill="#e00025" d="M0 128h512v256H0z"/>
+  <g fill="#fff" stroke="#000" transform="matrix(1.28 0 0 1.28 6 -556.7)">
+    <g stroke-linejoin="bevel">
+      <path d="M139 623.5h113.8v43.8H139z"/>
+      <path d="M247 647.6h3.5v16.5H247zm-108-8.1h113.8v5H139zm0-7h113.8v4.6H139z"/>
+      <path stroke-width=".9" d="M139 625.7h113.8v4.3H139z"/>
+      <path d="M169 647.6h3.6v16.5H169zm49 0h3.6v16.5H218zm-78 0h3.5v16.5H140zm7 0h3.5v16.5H147zm7.5 0h3.5v16.5h-3.5zm7.5 0h3.5v16.5H162zm62.8 0h3.6v16.5h-3.6zm7.5 0h3.6v16.5h-3.6zm7.5 0h3.6v16.5h-3.6z"/>
+      <path stroke-linejoin="miter" d="M94.5 669.5a9.3 9.3 0 004.4-5.3H292a9.3 9.3 0 004.4 5.3z"/>
+    </g>
+    <path d="M193 556.8s-.1-4.1 2.3-4.2c2.3 0 2.2 4.2 2.2 4.2zm-12.5 54.5v-5.5c0-2.8-2.8-3-2.8-5 0 0-.4-3 .4-4.4 1.1 4 3 3.3 3 1.6 0-1.4-1-2.8-3.3-6.3-.8-1.1-.3-4.6.7-5.9.4 3 .9 4.5 2.2 4.5.8 0 1.4-.5 1.4-2 0-2-1.3-3-2-4.8a5 5 0 011.1-5.3c.5 3 .4 4.2 1.7 4.2 2.7-.9 0-4.8-.6-5.8-.6-1.1 1-3.4 1-3.4.8 2.7 1 2.9 2 2.6 1.2-.3 1-2-.4-3.4-.9-1-.8-2.3.2-3.3 1 1.9 2.2 1.8 2.3.6l-.8-4.4H204l-.9 4.3c-.2 1.2 1.4 1.5 2.4-.5 1 1 1.1 2.4.2 3.3-1.4 1.4-1.6 3.1-.4 3.4 1 .3 1.2 0 2-2.6 0 0 1.5 1.5 1 3.4-.6 1-3.3 5-.6 5.8 1.3 0 1.2-1.2 1.7-4.2a5 5 0 011 5.3c-.6 1.8-2 2.8-2 4.8 0 1.5.7 2 1.5 2 1.3 0 1.8-1.4 2.2-4.5 1 1.3 1.5 4.8.7 6-2.3 3.4-3.4 4.8-3.4 6.2 0 1.7 2 2.4 3-1.6.9 1.4.5 4.4.5 4.4 0 2-2.7 2.2-2.8 5v5.5zm7.2-46l-.4-3.1h15.9l-.4 3.1zm1-3.2l-.2-2.5H202l-.3 2.5zm2.3-2.6l-.3-2.6h9l-.1 2.6zm33 110c-2-.7-5-2.9-5-5v-24.3l2.6-3.4H169l2.5 3.4v24.3c0 2.1-2 4.3-4 5z"/>
+    <path stroke-linejoin="bevel" d="M178.2 647.6h3.6v16.5h-3.6zm30.4 0h3.6v16.5h-3.6z"/>
+    <path d="M168 609.2v27.6h54v-27.6a4.2 4.2 0 00-2.6 2.8v11.8h-48.7V612s-.6-2-2.8-2.8z"/>
+    <path d="M214.6 669.5c-1.8-.7-5.6-2.9-5.6-5v-27.2c.4-1.5 2.4-2.4 3.7-3.4H177c1.7 1 3.6 1.7 4.3 3.4v27.2c0 2.1-3 4.3-4.8 5z"/>
+    <path d="M219.4 634.2v-19.6h-4.9v-1.9h-38.8v2h-5v19.5zM207 669.5c-1.8-.7-4.3-2.9-4.3-5v-23.2l1.4-2.1h-17.7l1.5 2v23.3c0 2.1-2.6 4.3-4.3 5z"/>
+    <path d="M190.7 639.2h9v30.3h-9z"/>
+    <path stroke-linejoin="bevel" d="M204.4 632.5c0-2 5.8-2.1 8.8-3.8h-36c3 1.7 8.7 1.8 8.7 3.8l1.2 3.9 15 .6z"/>
+    <path d="M211.4 611.3c0-4.9.2-6.7 1.7-6.7V620c-3.7 1.4-6.3 6-6.3 6h-23.2s-2.6-4.6-6.3-6v-15.5c1.8 0 1.8 2 1.8 6.7zm1.7-2c0-5.6 4.9-6.2 4.9-6.2v5c-1.9-.1-2.8 1.6-2.8 4 0 2.5 1.5 2.5 1.5 2.5v14.2h-3.6z"/>
+    <path d="M177.3 609.3c0-5.6-4.9-6.2-4.9-6.2v5c1.9-.1 2.8 1.6 2.8 4 0 2.5-1.5 2.5-1.5 2.5v14.2h3.6z"/>
+    <g fill="none" stroke-width=".8">
+      <path d="M186.8 570.6H204m-19.2 5.4h21m-23 6.5h24.9m-27 7.9h29.5m-30.2 9h30.4"/>
+      <path stroke-width="1" d="M170.8 629h48.6m-33.2 0h18v6.6h-18z"/>
+    </g>
+    <path d="M184 614.2c3 3.6 2.6 9.7 2.6 13.3H204c0-3.6-.4-9.7 2.6-13.3zm9.7-41l-2.4-1.3v-3.5c1 .3 2 .4 2.2 2 .3-2.3 1-2.1 1.9-3 1 .9 1.5.7 1.9 3 0-1.6 1.2-1.7 2.1-2v3.5l-2.3 1.2z"/>
+    <path d="M193.5 578.9l-4-2.8V573c1.5.3 3 .5 3.2 2.2.4-2.5 1.3-3.7 2.7-4.7 1.3 1 2.2 2.2 2.7 4.7.1-1.7 1.7-1.9 3-2.2v3.2l-3.9 2.7z"/>
+    <path d="M193.2 587.8l-4.5-4v-4.7c1.6.4 3.4.6 3.6 3.1.5-3.5 1.5-5.4 3-6.8 1.6 1.4 2.6 3.3 3.2 6.8.2-2.5 2-2.7 3.6-3.1v4.7l-4.6 4zm8.4 5.3l-4 5.7h-4.7l-4.1-5.7zm-15.2 9.5c2 1.1 2.8 3.4 3 7.6H201c.2-4.2 1-6.5 3-7.6z"/>
+    <path stroke-linejoin="bevel" d="M204.2 593v-5.6a5.2 5.2 0 00-3.8 3.3c0-2-2.5-6.3-5.2-8.5-2.7 2.4-5.3 6.4-5.2 8.4-.5-1.5-1.8-2.7-3.8-3.2v5.7z"/>
+    <path stroke-linejoin="bevel" d="M205 602.6V597c-2.1.6-3.5 1.7-4.1 3.3 0-2-2.7-6.3-5.7-8.5-3 2.5-5.8 6.4-5.7 8.5-.5-1.5-2-2.7-4.1-3.3v5.7z"/>
+    <path stroke-linejoin="bevel" d="M207.4 614.3v-6.6a9.6 9.6 0 00-5.1 3.8c0-3.5-4-9-7.1-10.7-3.2 1.8-7.1 7.4-7.1 10.7a9.7 9.7 0 00-5.2-3.8v6.6z"/>
+    <path stroke-linejoin="bevel" d="M206 629v-6.8c-2.4.9-3 3.1-3.8 4.7.3-6.9-3.8-14.2-7-16.1-3.2 1.9-7.4 9.4-7 16-.8-1.4-1.5-3.7-3.8-4.6v6.7z"/>
+    <path d="M204.4 639.2v-6.8c-2.5.6-2.6 1.5-3.4 3 .3-4.1-2.6-8.8-5.8-10.6-3.2 1.8-6 6.5-5.8 10.6-.8-1.5-.9-2.4-3.4-3v6.8z"/>
+    <g id="a">
+      <path d="M99 664.2v-20.4c-.7-2.6-3-5-4.6-5.4v-18l3.7 2 4.3 18.9v23z"/>
+      <path d="M99 664.3v-20.5c-.7-2.6-3-5-4.6-5.4v-19.2c2.5 0 3.7 3.2 3.7 3.2l4.3 18.9v22.9z"/>
+      <path d="M96.3 669.5c1.7-.7 4.2-2.9 4.2-5v-25.6l-1.2-2H143l-1.7 2v25.6a6 6 0 003.4 5z"/>
+      <path d="M135.8 669.5c-1.7-.7-4.2-2.9-4.2-5v-24.3l3.6-3.4h-29.6l3.6 3.4v24.3c0 2.1-2.5 4.3-4.2 5z"/>
+      <path d="M131.7 669.5c-1.7-.7-4.3-2.9-4.3-5v-22l2.4-3.3H111l2.4 3.3v22c0 2.1-2.5 4.3-4.3 5z"/>
+      <path d="M116 639.2h8.9v30.4h-9z"/>
+      <path stroke-linejoin="bevel" d="M103.7 647.6h3.6v16.5h-3.6zm30.8 0h3.5v16.5h-3.6zm-33.9-27.8h4.4v17h-4.4zm0-3.2h4.3v3.2h-4.3zm35.6 6.9h6.1v13h-6.1z"/>
+      <path d="M104.9 636.6v-29c1.2 0 1.4 4.3 4.2 4.3 1.5 0 1.4-1.8.5-3.2-.7-1.3-1.6-3-.4-6.3.9 2.5 3.1 3.3 2.7 1.8-.7-2.7-2.8-3.2-1.2-7.3.5 3.4 2.7 3.3 2.2 1.3-.6-2.3-1.9-3.3-.3-6.5.9 3.7 2 3.5 2 1.2 0-3.4 0-7 4.2-8.3 0 0 .3-3 1.9-3 1.5 0 1.8 3 1.8 3 4.3 1.3 4.2 5 4.2 8.3 0 2.3 1.1 2.5 2-1.2 1.6 3.2.3 4.2-.3 6.5-.5 2 1.7 2.1 2.2-1.3 1.6 4.1-.5 4.6-1.2 7.3-.4 1.5 1.8.7 2.7-1.8 1.2 3.3.3 5-.4 6.3-.8 1.4-1 3.2.5 3.2 2.8 0 3-4.2 4.2-4.2v28.9zM98 614.7v22.1h2.5v-22.1c-.9-.5-1.7-.5-2.5 0z"/>
+      <path d="M98.2 629c3.1 1.6 6.2 3.5 7 7.8h-7zm43.2-6.6v14.4h2v-14.4c-.6-.3-1.5-.4-2 0z"/>
+      <path d="M143.4 629c-3.1 1.5-6.2 3.3-7 7.7h7zm-20.6-33.7l1.8-1.5v-2c-.6 0-1 .3-1.5 1a5 5 0 00-2.5-3 5 5 0 00-2.6 2.9c-.5-.7-.8-.8-1.5-1v2l1.8 1.6z"/>
+      <path d="M123.8 600.2l.8-1.9v-2.5c-.6 0-1 .3-1.5 1a5 5 0 00-2.5-3 5 5 0 00-2.6 2.9c-.5-.7-.8-.8-1.5-.9v2.5l.8 1.9z"/>
+      <path d="M124 606.8l2.6-3.3v-3.2c-1 0-1.5.5-2.2 1.6-.7-2.3-2-2.7-3.8-3.8-1.9 1-3.2 1.5-3.8 3.7-.8-1.1-1.3-1.4-2.3-1.5v3.2l2.7 3.3z"/>
+      <path d="M124.7 613.3s3.2-2.7 3.3-4.2v-3.5c-1.2.1-2.3.4-3.2 1.9-.8-2.9-2-3.7-4.2-5-2.3 1.3-3.5 2.1-4.2 5-1-1.5-2-1.8-3.3-2v3.6a15 15 0 003.3 4.2z"/>
+      <path d="M126 625.3s4.4-4.7 4.5-6.6v-5.4c-1.6.2-3.2 1.3-4.4 3.6-1-4.5-2.6-7.6-5.5-9.8-3 2.2-4.6 5.3-5.6 9.8-1.2-2.3-2.7-3.4-4.3-3.6v5.4c.3 1.9 4.4 6.6 4.4 6.6z"/>
+      <path d="M126 632.4s3.7-3.7 4.5-5.3v-5.4c-1.6.2-3.2 1.3-4.4 3.5a14 14 0 00-5.5-9.2c-3 2.2-4.6 4.7-5.6 9.2-1.2-2.2-2.7-3.3-4.3-3.5v5.4c1 1.6 4.4 5.3 4.4 5.3z"/>
+      <path d="M127.5 636.6c-1-4.7-2-8.2-7.1-11.7-5.2 3.5-6.1 7-7.2 11.7z"/>
+      <path d="M130.2 639.2v-6.8c-2.4 1-4.5 2.3-5.3 3.8-.8-3.8-2.5-5.4-4.6-7.7-2.1 2.3-3.5 4-4.4 7.7-.8-1.5-2.9-2.9-5.2-3.8v6.8z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 390.7 0)" xlink:href="#a"/>
+    <path d="M72.7 694.3H318v12.5H72.7zm-6.5 12.5h258.3v12.5H66.2zm19.4-31.3H305v8.1H85.6z"/>
+    <path d="M79.2 683.6h232.4v10.6H79.2zm10.2-14.3h212v6.2h-212z"/>
+    <path d="M112.4 669.3h16v50h-16z"/>
+    <path d="M116 669.3h8.9v50h-9zm71 0h16v50h-16z"/>
+    <path d="M190.7 669.3h9v50h-9zm71.5 0h16v50h-16z"/>
+    <path d="M265.7 669.3h9v50h-9z"/>
+    <path fill="none" d="M99 664.2h193M115.8 713h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m65.8 37.5h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m66.2 37.5h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ki.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ki.svg
new file mode 100644
index 0000000..bfc5cca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ki.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ki" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M161.8 5.8h491.7v491.6H161.8z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-168.5 -6) scale(1.0413)">
+    <path fill="#e73e2d" fill-rule="evenodd" d="M4 5.8h802.6V300H4z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M358 276.6c-18.7-14.5-53.5-9.6-59.2-49.2 26.6 20.6 21.8-1.2 61.6 18.5l-2.4 30.7z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M363 258.6c-13.4-19.6-48-25.5-41.3-65 19 27.8 21.1 5.6 53 36.5l-11.8 28.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M369 245.8c-4.8-23.1-34.5-41.9-13.2-75.8 7 33 17.3 13.2 35 54L369 245.8z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M383 234c2.5-23.6-20-50.5 10.6-76.3-3.5 33.5 12.5 18 16.8 62L382.9 234z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M395.4 224.4c12-20.4 2.4-54.2 40.9-65.2-16.9 29.1 4 21.4-10.1 63.5l-30.8 1.7z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M413.5 226.9c17.8-15.6 19.5-50.6 59.5-48.8-25.3 22.2-3 21.6-29.7 57l-29.8-8.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M429.4 236c21.6-9.6 33.5-42.6 71.2-29.1-30.7 13.8-9.2 19.8-45.2 45.7l-26-16.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M442.6 250.6c23.5-3.2 44.2-31.6 76.6-8-33.4 4.6-14.4 16.4-56.2 31.2l-20.4-23.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M526.2 255l-107.6 2.4 4.5 29 103.1-31.3z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M510.4 215.5l-99.7 38.3 16.7 32 83-70.3z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M431.2 275.3l51.6-93.7-79.1 73.6 27.5 20z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.3" d="M381.9 573.2l-13.5-82.6-15.4 82.6h28.9z" transform="matrix(1.2145 .40191 -.39943 1.207 195.4 -577.8)"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M424 259l-17.4-105.9-19.2 106.4 36.6-.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.3" d="M378.5 569.7l-10.2-79-17.9 83.5 28.1-4.5z" transform="matrix(1.1791 -.4886 .48383 1.1816 -307 -238.2)"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M407.2 249.3l-77.9-65.8 55.4 94.1 22.5-28.3z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M302 216l83.5 69 12.9-36.1-96.5-33z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M384.7 256.3l-98.3-1.4 97.9 32.6.3-31.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M464.4 274a59 59 0 11-117.9 0 59 59 0 01118 0z"/>
+    <path fill="#005989" fill-rule="evenodd" d="M3.2 297.1h806.6v200.3H3.2z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M2.8 441.7c15 7 36.4 24.3 59.4 24.3 38.5-.2 39.5-26.3 78.5-25 39 1 32 28.4 84.7 28.2 43.5 0 57.6-33.3 95.2-29.3 27.8-1.4 39.2 31.4 82 31.8 44.3 1 60.5-35.8 88.3-32.7 29.7 0 39.4 29.6 81 29.8 53 .3 62.2-30.8 95.3-28.8 23.6-.5 42.2 22.8 76.8 23.3 27.5.5 50.6-20.3 66.2-27.8l.8-35.4c-16.4 6.1-40.7 26-65.1 26.3-35 1.3-56.7-23-81.1-22.8-29.2.3-40.8 30-90.3 30-45.3 0-55.7-30-84.9-30-28.5.2-37.2 32.7-86.6 32-40.3-.4-56-31-84.6-30.7-30.2 0-61.5 29.7-95 28.2-46.2-2-56.2-28.2-86.5-28.2-22.6 0-47 24.6-74.2 25-27 .5-57.5-24.5-60.3-25l.4 36.8zm0-70c15 7 36.4 24.3 59.4 24.3 38.5-.3 39.5-26.4 78.5-25.1 39 1 32 28.4 84.7 28.3 43.5-.1 57.6-33.3 95.2-29.3 27.8-1.5 39.2 31.4 82 31.8 44.3 1 60.5-35.8 88.3-32.8 29.7 0 39.4 29.6 81 29.9 53 .2 62.2-30.8 95.3-28.9 23.6-.5 42.2 22.8 76.8 23.4 27.5.5 50.6-20.4 66.2-27.8l.8-35.4c-16.4 6-40.7 26-65.1 26.2-35 1.3-56.7-23-81.1-22.8-29.2.3-40.8 30-90.3 30-45.3 0-55.7-30-84.9-30-28.5.3-37.2 32.7-86.6 32.1-40.3-.5-56-31-84.6-30.7-30.2 0-61.5 29.6-95 28.2-46.2-2-56.2-28.2-86.5-28.2-22.6 0-47 24.6-74.2 25-27 .4-57.5-24.5-60.3-25l.4 36.8z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M2.8 302.4c15 7 36.4 24.3 59.4 24.3 38.4-.3 39.4-26.3 78.3-25.1 39 1 32 28.4 84.7 28.3 43.5 0 57.6-33.3 95-29.3 27.9-1.4 39.2 31.4 82 31.8 44.2 1 60.5-35.8 88.3-32.7 29.6 0 39.3 29.6 80.8 29.8 53 .2 62.2-30.8 95.3-28.8 23.6-.5 42.1 22.7 76.7 23.3 27.5.5 50.6-20.4 66.1-27.8l.8-35.4c-16.3 6.1-40.7 26-65 26.2-35 1.3-56.7-23-81-22.7-29.2.2-40.8 30-90.3 30-45.2 0-55.6-30-84.7-30-28.5.2-37.3 32.6-86.6 32-40.3-.4-56-31-84.5-30.7-30.2 0-61.4 29.6-94.9 28.2-46.2-2-56.2-28.2-86.4-28.2-22.6 0-47 24.6-74.2 25-27 .4-57.4-24.5-60.2-25l.3 36.8z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M293.2 78.7c58.6-4 47.9-9 71.5-12.8 29.7 4 33.1 22 49.7 33.1 0 0-6.2 21-26.6 18.1-2.7-8.4 9.9-11-26.4-33.2-21.1-1.2-58.8 3.7-68.2-5.2zm181.7 32.6l-42.2 1.7v10.5c28.5.9 33.6-3 42.2-12.2z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-linejoin="round" stroke-width="1.6" d="M329.7 109.5c7.4-3.8 11-2.2 17.4-2.5 4.4 8 8.5 8.7 18.1 9.7a47.5 47.5 0 0038.3 20.9c28.7-.8 37.8-20.9 57.1-23.1H481c-3.4-5.8-6-9.1-13.4-9.4a195 195 0 00-52 3.4l-24 6c-7-3.4-24.3-21.5-35.3-21.1-6.5 1.7-6.5 4-9.7 6.4-6.2 2.7-12.4 1.4-17 9.7z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.6" d="M358.7 100.7a3 3 0 11-6 0 3 3 0 016 0z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M378.4 109.3c43.1-52 80.8-45.7 130-49.2 1.6 6 1 15-22.4 23-32 4.8-89.5 38.6-89.7 38.6-10.7-.5-18.2-11.7-18-12.4z"/>
+    <path fill="none" stroke="#d9a43e" stroke-linecap="round" stroke-width="1.7" d="M467 75.4l31.8 1.4m-35.2 3.8l23.2 1.9"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/km.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/km.svg
new file mode 100644
index 0000000..8f842ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/km.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-km" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h416.3v416.3H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(1.23)">
+    <path fill="#ff0" d="M0 0h625v104H0z"/>
+    <path fill="#fff" d="M0 104h625v104.1H0z"/>
+    <path fill="#be0027" d="M0 208.1h625v104H0z"/>
+    <path fill="#3b5aa3" d="M0 312.2h625v104H0z"/>
+    <path fill="#239e46" d="M0 0v416.2l310.4-207.5L0 0z"/>
+    <path fill="#fff" d="M127.8 115c-69.2-3.5-100.7 51.6-100.6 94.2-.2 50.4 47.6 92 91.7 89.4A100 100 0 0165.8 209a98.3 98.3 0 0162-94z"/>
+    <path fill="#fff" d="M126.8 160.2l-9.8-7.6-11.8 3.7 4.2-11.6-7.1-10.1 12.3.4 7.4-10 3.4 12 11.8 3.9-10.3 7zm-.2 42.3l-9.8-7.6-11.8 3.7 4.2-11.6-7.2-10.1 12.4.4 7.4-10 3.4 12 11.8 4-10.3 6.9zm.2 42.8l-9.8-7.6-11.8 3.7 4.2-11.7-7.1-10 12.3.4 7.4-10 3.4 12 11.8 3.9-10.3 6.9zm-.2 43.1l-9.8-7.6-11.8 3.7 4.2-11.6-7.2-10.1 12.4.4 7.4-10 3.4 12 11.8 4-10.3 6.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kn.svg
new file mode 100644
index 0000000..4b2a248
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kn.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kn" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M151.7-.3h745.1v745H151.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-104.2 .2) scale(.68714)">
+    <path fill="#ffe900" d="M-5.3 0h1073.5v744H-5.3z"/>
+    <path fill="#35a100" d="M-5.8 0l1.2 536.4L830.7-.4-5.8 0z"/>
+    <path fill="#c70000" d="M1069.5 744l-1.9-557.7L225 744.5l844.5-.4z"/>
+    <path d="M-5.3 576.9l.7 167.9 182.3-.3L1068 147.6l-1-146L886.9 0-5.4 576.9z"/>
+    <path fill="#fff" d="M818 269l-64.2-2.2-25.3 60.2-14.3-61.5-64.2-2.2 55.4-35.7L691 166l48.5 39.4 55.3-35.9-25.4 60.2zM417.5 529.6l-64.3-2.3-25.2 60.2-14.3-61.5-64.3-2.2 55.4-35.8-14.4-61.4 48.5 39.4 55.3-35.9-25.3 60.1z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ko.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ko.svg
new file mode 100644
index 0000000..2db51b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ko.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kr" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M610.6 511.6h-730.2V-.4h730.2z"/>
+    <path fill="#fff" d="M251.9 256a112.5 112.5 0 11-225 0 112.5 112.5 0 11225 0z"/>
+    <path fill="#c70000" d="M393 262.6a145.3 146.8 0 11-290.5 0 145.3 146.8 0 11290.5 0z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm27.4 23.7l83.6-96.7 19.9 17-83.7 96.9z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm55.4 48l83.6-96.9 19.9 17.2-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm508.8-96.8l83 97.4-20 17-83-97.4zm-55.7 47.5l83 97.4-20 17-83-97.4z"/>
+    <path fill="#fff" d="M417.6 133.2L496 65.4l14.7 17-84 75.4-9.3-24.6z"/>
+    <path d="M514.2 372l-80.4 95.8-19.7-16.4 80.4-95.8zM431.8 53.1l83 97.4-19.9 17L412 70zm109.7 341.6L461 490.5l-19.8-16.4 80.5-95.8zm-55.1-45.8L406 444.7l-19.7-16.4 80.4-95.8z"/>
+    <path fill="#3d5897" d="M104.6 236.7c4.6 37 11.3 78.2 68.2 82.4 21.3 1.3 62.8-5 77-63.2 18.8-55.8 75-71.8 113.3-41.6C385 228.5 391 251 392.4 268c-1.7 54-32.9 101-72.8 122-46 27.3-109.6 27.9-165.3-13.5-25.1-23.5-60.2-67-49.7-139.8z"/>
+    <path fill="#fff" d="M436 370.6l78.6 67.6-14.6 17-87.1-71.8 23-12.8z"/>
+    <path d="M-1.9 357.2l83 97.3-20 17-83-97.3z"/>
+    <path fill="#fff" d="M-16.2 437.3l78.6-67.9 14.7 17-84 75.5-9.3-24.7z"/>
+    <path d="M25.7 333.7l83 97.3-20 17-83-97.3zM-30 381.2l83 97.3-20 17-83-97.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kp.svg
new file mode 100644
index 0000000..8eda6be
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kp.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kp" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M92.2 7.8h593.6v485.5H92.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="matrix(.86254 0 0 1.0546 -79.5 -8.3)">
+    <path fill="#fff" stroke="#000" stroke-width="1.1" d="M991.8 492.9H4.2V8.4h987.6z"/>
+    <path fill="#3e5698" d="M991.8 405.2H4.2V493h987.6z"/>
+    <path fill="#c60000" d="M991.8 384.9H4.2V116.4h987.6z"/>
+    <path fill="#3e5698" d="M991.8 8.4H4.2V96h987.6z"/>
+    <path fill="#fff" d="M473 250.7c0 60.1-61.5 108.9-137.4 108.9-76 0-137.6-48.8-137.6-109 0-60.1 61.6-108.9 137.6-108.9S473 190.5 473 250.7z"/>
+    <path fill="#c40000" d="M402.9 326.8l-66.1-38.6-67.1 39 26.3-62.8-66.1-38.5 82.4-.3 26.2-63 24.5 62.8 82.4-.4-67.2 39z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kr.svg
new file mode 100644
index 0000000..2db51b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kr.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kr" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M610.6 511.6h-730.2V-.4h730.2z"/>
+    <path fill="#fff" d="M251.9 256a112.5 112.5 0 11-225 0 112.5 112.5 0 11225 0z"/>
+    <path fill="#c70000" d="M393 262.6a145.3 146.8 0 11-290.5 0 145.3 146.8 0 11290.5 0z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm27.4 23.7l83.6-96.7 19.9 17-83.7 96.9z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm55.4 48l83.6-96.9 19.9 17.2-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm508.8-96.8l83 97.4-20 17-83-97.4zm-55.7 47.5l83 97.4-20 17-83-97.4z"/>
+    <path fill="#fff" d="M417.6 133.2L496 65.4l14.7 17-84 75.4-9.3-24.6z"/>
+    <path d="M514.2 372l-80.4 95.8-19.7-16.4 80.4-95.8zM431.8 53.1l83 97.4-19.9 17L412 70zm109.7 341.6L461 490.5l-19.8-16.4 80.5-95.8zm-55.1-45.8L406 444.7l-19.7-16.4 80.4-95.8z"/>
+    <path fill="#3d5897" d="M104.6 236.7c4.6 37 11.3 78.2 68.2 82.4 21.3 1.3 62.8-5 77-63.2 18.8-55.8 75-71.8 113.3-41.6C385 228.5 391 251 392.4 268c-1.7 54-32.9 101-72.8 122-46 27.3-109.6 27.9-165.3-13.5-25.1-23.5-60.2-67-49.7-139.8z"/>
+    <path fill="#fff" d="M436 370.6l78.6 67.6-14.6 17-87.1-71.8 23-12.8z"/>
+    <path d="M-1.9 357.2l83 97.3-20 17-83-97.3z"/>
+    <path fill="#fff" d="M-16.2 437.3l78.6-67.9 14.7 17-84 75.5-9.3-24.7z"/>
+    <path d="M25.7 333.7l83 97.3-20 17-83-97.3zM-30 381.2l83 97.3-20 17-83-97.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kw.svg
new file mode 100644
index 0000000..3d4047f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kw.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#fff" d="M0 165.3h992.1v165.4H0z"/>
+    <path fill="#f31830" d="M0 330.7h992.1v165.4H0z"/>
+    <path fill="#00d941" d="M0 0h992.1v165.4H0z"/>
+    <path d="M0 0v496l247.5-165.3.5-165.5L0 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ky.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ky.svg
new file mode 100644
index 0000000..b4ae00a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ky.svg
@@ -0,0 +1,70 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ky" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#006" d="M0 0h1024v512H0z"/>
+    <path fill="#006" fill-rule="evenodd" d="M0 0h512v256H0z"/>
+    <g stroke-width="1pt">
+      <path fill="#fff" d="M0 0v28.6L454.8 256H512v-28.6L57.2 0H0zm512 0v28.6L57.2 256H0v-28.6L454.8 0H512z"/>
+      <path fill="#fff" d="M213.3 0v256h85.4V0h-85.4zM0 85.3v85.4h512V85.3H0z"/>
+      <path fill="#c00" d="M0 102.4v51.2h512v-51.2H0zM230.4 0v256h51.2V0h-51.2zM0 256l170.7-85.3h38.1L38.2 256H0zM0 0l170.7 85.3h-38.2L0 19.1V0zm303.2 85.3L473.8 0H512L341.3 85.3h-38.1zM512 256l-170.7-85.3h38.2L512 236.9V256z"/>
+    </g>
+    <path fill="#fff" fill-rule="evenodd" d="M308 185.9c-1.2.7-3.5 2.8-5.8 2-2.2-.6-7.3-9.5-13-8.2-5.6 1.4-9 3.5-11.3 3.5s-8.5 2-8.5 7.5.6 9.6 1.7 9.6 2.8-3.4 2.8-3.4.6 6.8 4.6 6.8 12.4.7 13 2.8c.6 2-4 6.8-2.8 11 1 4 6.2 10.9 6.2 10.9s-7.4 5.5-7.4 8.9 1.2 6.8 1.2 6.8l-33 1.4s-2.2 97.2-1 104.8c1 7.5 4 26 4 26s-7.4-2.4-13.7 3.8c-6.2 6.1-28 16.7-28.6 21.5-.6 4.8-2.5 9-.3 12.4 2.3 3.4 10.3 12.7 8 12.3-7.6-1.3-10.5-12.1-15.6-16.1-5-4-15-3-16.2 1a31 31 0 000 12.3c.6 1.4 6.8 23.3 8.5 28.1s19.6 12 27.5 11.3c15 .4 21.8-6.5 22.4-5.8.6.7 32.3 33.4 97.4 33.6 50.8 0 89-32.9 89-32.2 0 .7 21 6.8 28.3 4.8 7.4-2 18.2-6.9 20.4-11.7 2.3-4.8 8.5-29.4 9-33.5.6-4.1 0-9-5-10.3s-8-1-10.8.3-3.7 5.2-8 12c-2.2 2-8.1 7.6-6.4 6.2s5.4-11.6 6-15c.5-3.5 2.2-9.7-1.8-13-4-3.5-10-5-17-10-6.6-4.5-11.9-12-15.8-12-4 0-8.5-2-8-2 .6 0 5.1-10 4-20.3-1.1-10.3.6-108.5 0-108.5s-28.3 2-28.3.7 2.2-11 0-17.2c-2.3-6.1-12-10.2-9.1-11.6 2.8-1.4 15.3-4.8 14.7-10.3-.5-5.4-8.5-4.8-11.9-6.8-3.4-2-13.6-11.7-14.7-11.7-1.1 0 29.5-18.5 27.2-18.5-2.3 0-14.2-3.4-18.1-1.3 0-3.4 16.4-13.7 13.6-15-2.9-1.5-15.9-2.8-12.5-3.5 3.4-.7 4.5-8.9 4-8.9l-14.8 2s-3.4-4.8-4.5-4.8-6.2 2.8-6.2 2.8l-2.9-7.5-6.2 4-2.8-3.4s-5.1 1.4-5.1 0c.2 0-.6-3.4-1.4-3.4-.8 0-6.4 4.4-6.6 4.1-.2-.2-6.4-9-6.4-8.7 0 .3-4.4 16.5-4.6 16.5-.2 0-4.4.4-4.6.7-.3.2-22.5-12.8-22.3-12.6l5.8 12.6s-4.8 2.7-4.8 2.9l.8 5.6-14.8-5.1s5.6 11.4 5.2 11.4l-10.8.4c.2 0 5 9.5 5 9.5L293 174s16 11.2 14.8 12zm94.5 238.3c1.5 2 9.1 11.7 8 11.7-1.2 0-20.1 12.7-27.8 15a368 368 0 01-31.2 6.6 419 419 0 0031-17.4 130 130 0 0020-15.9zm-118.4-.3c-1.1 1.4-6.5 12-6.5 12s15.6 11 27.2 15c11.6 4.2 31.4 5.5 30.3 5.2-1.1-.4-25-11-31.7-16.5-6.8-5.4-19-15.7-19.3-15.7z"/>
+    <g fill="#fec500" fill-rule="evenodd" stroke="#6d6666">
+      <path stroke-width="1.3" d="M394.6-213l35.4 21.4c6.6 4.1 28 22.2 29.6 21.4 1.6-.8 13.2-9.9 13.2-9.9S448.9-199 434-203s-39.5-8.2-39.5-9.9z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M390.5-231.9c2.5 0 47.7 23 61.7 34.6s19.7 26.3 21.4 26.3c1.6 0 23-3.3 22.2-3.3-.8 0-9.9-29.6-30.4-38.7-20.6-9-74-18.9-74.9-18.9z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M603.5-296c-.8 0-9 24.7-11.5 32-2.5 7.5-6.6 23-6.6 23s-36.2 3.4-34.5-.7c1.6-4.2 55-54.3 52.6-54.3z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1.3" d="M398.8-261.5s42.7 28.8 57.5 45.2c14.8 16.5 29.6 45.3 30.4 45.3.9 0 40.3-8.3 40.3-7.4s-46-46-68.2-60-59.2-21.4-60-23z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M443.2-273.8s21.3 32.9 25.5 44.4a1347 1347 0 0016.4 41h33.7s-16.4-37-34.5-55-40.3-28.8-41.1-30.4z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1.3" d="M454.7-291.9c.8 2.5 31.2 31.2 38.6 50.1a402 402 0 0113.2 42.8l29.6-7.4s-26.3-48.5-42.8-61.7c-16.4-13.1-37-22.2-38.6-23.8z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1.3" d="M700.5-209.7s-61.7 6.6-83.9 12.3-34.5 27.2-34.5 27.2 28.8 10.7 30.4 9 19-18.9 37.8-25.5c19-6.5 51.9-22.2 50.2-23z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M698-250c-1.6.9-51 41.1-66.6 54.3-15.6 13.1-30.4 27.1-32 28-1.7.8-32.1-4.2-30.5-5.8 1.7-1.6 45.3-37 74-52.6 28.8-15.7 52.7-22.2 55.1-23.9z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M685.7-278.8c-5 5.8-53.4 45.3-66.6 59.3S584.6-181 584.6-181s-25.5-11.5-23.9-16.5c1.7-4.9 36.2-33.7 60.9-50.1 24.6-16.5 66.6-29.6 64.1-31.3z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1.3" d="M636.4-282a725 725 0 00-35.4 39.4c-5.7 8.2-23 44.4-23 44.4s-25.5-22.2-25.5-23 32-34.5 51-47.7 33.7-10.7 32.9-13.1z" transform="matrix(.34457 0 0 .41648 160.6 259)"/>
+      <path stroke-width="1pt" d="M565-241.8a10.5 10.5 0 11-20.8 0 10.5 10.5 0 0120.9 0zm21 14c0 5.1-4.7 9.3-10.4 9.3s-10.5-4.2-10.5-9.3 4.7-9.3 10.4-9.3 10.5 4.1 10.5 9.3zm-46.5-10.5c0 5.2-5.7 9.3-12.8 9.3-7 0-12.8-4.1-12.8-9.3s5.8-9.3 12.8-9.3c7 0 12.8 4.2 12.8 9.3z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1pt" d="M573.2-219c0 9.9-6.5 18-14.5 18s-14.5-8.1-14.5-18 6.5-18.1 14.5-18.1 14.5 8 14.5 18zm-39.5.5c0 7.7-6.5 14-14.5 14s-14.6-6.3-14.6-14 6.5-14 14.6-14c8 0 14.5 6.3 14.5 14z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1pt" d="M514-207.5c0 6.8-5 12.2-11.1 12.2s-11-5.4-11-12.2c0-6.7 4.9-12.2 11-12.2 6 0 11 5.5 11 12.2zm81.3-1.1c0 8-7.5 14.5-16.8 14.5-9.4 0-16.9-6.5-16.9-14.5s7.5-14.6 16.9-14.6c9.3 0 16.8 6.5 16.8 14.6zm-40.7-21c0 4.9-6 8.8-13.3 8.8s-13.4-4-13.4-8.8 6-8.7 13.4-8.7 13.3 4 13.3 8.7z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1pt" d="M557-210.4c0 7-8.4 12.8-18.6 12.8s-18.6-5.7-18.6-12.8c0-7 8.3-12.8 18.6-12.8s18.6 5.8 18.6 12.8zm47.6 22.7c0 8.7-7.8 15.7-17.4 15.7s-17.5-7-17.5-15.7 7.8-15.7 17.5-15.7c9.6 0 17.4 7 17.4 15.7zm-95.3-4c0 5.7-4.4 10.4-9.9 10.4s-9.9-4.7-9.9-10.5 4.4-10.4 9.9-10.4 9.9 4.6 9.9 10.4z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1pt" d="M579-193.5c0 7.4-6.7 13.4-15 13.4-8.4 0-15.2-6-15.2-13.4S555.6-207 564-207c8.4 0 15.1 6 15.1 13.4zm-47.6-.6c0 6.4-6 11.6-13.4 11.6s-13.4-5.2-13.4-11.6c0-6.4 6-11.6 13.4-11.6s13.4 5.2 13.4 11.6z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+      <path stroke-width="1pt" d="M554.6-190.6c0 7-6.2 12.8-14 12.8-7.6 0-13.9-5.8-13.9-12.8 0-7 6.3-12.8 14-12.8s14 5.7 14 12.8zm-60.4-76.8c3.4 0 27.9 8.2 27.9 8.2s-30.3 11.6-25.6 10.4 33.7-4.6 31.4-4.6c-2.3 0-25.6 22.1-18.6 21 7-1.2 20.9-15.2 22-15.2 1.2 0 15.2 22.1 16.4 21 1.1-1.2 0-22.2 1.1-22.2s29 14 26.7 12.8a123.2 123.2 0 01-17.4-17.4c1.2 0 38.4 3.5 36 2.3l-24.4-11.6s16.3-15.1 12.8-15.1-30.2 15.1-27.9 14c2.3-1.2 29-31.5 29-31.5L557-282.5s4.7-18.6 2.4-17.4c-2.4 1.2-21 24.4-22.1 24.4s-5.8-23.2-5.8-23.2 1.1 25.5-5.9 26.7c-7 1.2-31.3 5.8-31.3 4.7z" transform="matrix(.34457 0 0 .41648 160.6 261)"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#00389b" d="M304.7 227.9c.2 1 6.7 18.4 16.5 17.9s13.8-3.4 13.4-3.6c-.4-.3-4.6-3.2-7-9.5-2.4-6.3-2.8-9-2.8-9l-20 4.2zm35.1-6.8s7.2 17.2 10.4 19.6c3.2 2.4 10.6 4.4 13.8 4.1s7 0 7 0-3.1-1.7-5.8-11.1-3.4-12.6-3.4-12.6h-22zm44 6.3s-1.3 12.6 0 15.7c1.5 3.2 8.5 9 8.5 9s8.4-1.2 8.6-9a42 42 0 00-2.8-15l-14.2-.7z"/>
+      <path fill="#005120" stroke="#000" stroke-width="1pt" d="M289 21s1.1 4.7 0 8.2-11.1 12.8-11.1 20.3c0 7.6 11.6 30.8 47 31.4 35.6.6 80.3-19.2 79.7-19.8-.6-.5-84.9-57-86-56.4-1.2.6-29.7 17.5-29.7 16.3zm234.2 40.1s7.6 20.4 10.5 22.7c2.9 2.3 4 7 4.7 7s48.8 10.4 48.8 10.4 4.6-13.3-2.3-23.8c-7-10.5-33.2-37.8-33.2-37.8l-28.5 21.5zm33.2-25c1.1 0 12.8 10 22 4.7 9.4-5.2 24.5-19.2 24.5-19.2s-12.8 4-22.1 3.5c-9.3-.6-23.8 11.6-24.4 11z" transform="matrix(.34457 0 0 .41648 198.4 196.6)"/>
+      <path fill="#005120" stroke="#000" stroke-width="1pt" d="M287.2 23.3s-3.5-9.8-12.8-10.4c-9.3-.6-26.2 1.1-32-3.5C236.6 4.7 235-6.3 232-5.7c-3 .5-10.5 0-11 0s-3.6-9.3 4.6-14 15-.6 19.7-4 11.7-5.9 21-6.5c9.3-.5 24.4 11.7 31.4 14.6 7 2.9 22 6.4 27.9 3.5 5.8-3 38.3-15.7 50-16.3 11.6-.6 36-1.2 45.3-.6s46 5.3 57 10.5S547.7 7 555.8 11.7c8.1 4.7 26.2 11.6 26.2 11.6S550 54.7 534.2 60a354.9 354.9 0 01-95.4 11.6c-29.6-1.7-52.9-4.7-75.5-16.3-22.7-11.6-47.1-22.7-48.3-28.5-1.2-5.8-.6-13.3-.6-13.3l-27.3 9.8z" transform="matrix(.34457 0 0 .41648 198.4 196.6)"/>
+      <path fill="#005120" stroke="#000" stroke-width="1pt" d="M251.2-14.4c-1.2.5-7 2.9-5.9 4 1.2 1.2 3.5 4.7 10.5 4 7-.5 14.5-4.6 14.5-4.6s-8.7-4-19.1-3.4z" transform="matrix(.34457 0 0 .41648 198.4 196.6)"/>
+      <path stroke="#000" stroke-width="1pt" d="M250.6-13.3v6.4s8.1 2.3 8.1.6c0-1.7.6-5.8-1.2-5.8s-6.4-.6-7-1.2z" transform="matrix(.34457 0 0 .41648 198.4 196.6)"/>
+      <path fill="#001707" stroke="#000007" stroke-width="1pt" d="M332-8.4c2-3.7 0-8.7 11.9-14.4 11.9-5.8 32.7-4.2 32.7-4.2s-6 4.6-6.2 9.3c-.2 4.7.4 6.8.4 6.8s-11.3-3.7-20-1.5-18.6 4.6-18.9 4zm53.4-20.2c-1.2.6-10.3 10.7-9.3 13.8 1 3 13.2 10.5 17.1 9.8 4-.6 21.8-9.2 22.8-13.5 1-4.3 1.9-10.1.4-11.3-1.4-1.3-30.8 1.6-31 1.2zm39.3-1.6c-2.3 2.2-1.5 13.1-.7 14.3.9 1.3 15 15.5 18.1 16.3 3.1.8 26-1.5 27.8-4s7.4-12.9 5.7-15.3c-1.6-2.5-6.5-5.8-21.8-9s-24.2-3-29.1-2.3zm58.1 13.7c3.7 1.9 25.3 12.4 38 20.8 12.8 8.4 18 18 21.6 18.9 3.7.8 18.7-8.2 19.3-10.7.7-2.5-18.3-15.6-31-21.6-12.7-6-47.9-6.7-47.9-7.4zm-4.5 8.9c-1.9 1.6 23 45 27.7 46.4 4.8 1.5 33.1-8.4 32.7-11.7-.4-3.3-7.8-9.9-25.3-19.5-17.4-9.7-31.6-16-35.1-15.2zM447.5 8.2c-4 2.3-10.1 41.1-6.2 43 3.9 1.8 52-4.8 53.9-9C497 37.7 475.4 3.4 469 3.4c-6.4 0-18 1.6-21.6 4.7zM397.7 0c-5.1 4.7-4 40.9-1.8 43.1 2.2 2.3 30.8 9.7 33.9 7 3-2.6 7.2-43.3 4.3-46.4-2.9-3.1-10.9-10.5-17-11.1-6.2-.6-16.5 6-19.4 7.4zm-64.5-.6c-4.7 3.7-5 13.3.2 15 5.1 1.6 17.9 7.2 29.8 12.3 12 5.1 18.7 11.3 22.2 11.1 3.5-.2 6.8-36.4 3-38.4A62 62 0 00363.7-4a156 156 0 00-30.4 3.3z" transform="matrix(.34457 0 0 .41648 198.4 196.6)"/>
+    </g>
+    <path fill="#d40f0f" fill-rule="evenodd" d="M240.2 388c2.9-2.8 7.4-9.7 13.5-10 6.2-.4 12.6 5.3 12.6 5.3s6.5 26.4 6.2 26.4c-.4 0-10.7 7.5-11 7.5-.3 0-4.5-10.3-8.4-9.4-3.9 1-3.6 15.1-4.2 14.2-.7-1-17.1-20.5-16.5-21.1.7-.6 8-12 7.8-12.9zm170.4-3.5c2-.3 10.7-6.9 16.8-6.6 6.2.4 9.7 3.2 13 6 3.2 2.8 7 10 7 10s-7.7 21.5-8.3 21.5-4 1.8-4.6.3-2.5-6.6-6.4-7.3c-3.9-.6-4.9 7-4.9 7l-12.6-30.9z"/>
+    <path fill="#fddc59" fill-rule="evenodd" d="M414.8 391.1c0 2 12 31.5 31.4 37.1 19.3 5.7 25.5-5.3 27.7-9 2.3-3.8 10.3-3.5 10.3-3.5s-1.9 27.6-5.1 31c-3.2 3.6-5.8 11-24 11.4-18 .3-34.5-17-40-22-5.4-5-12.5-18.2-15.4-24.2-3-6 15.5-20.1 15.1-20.7zM204.3 450c.4 0 8.7 9.1 21 8.2 12.3-1 33.3-8.2 43-20.8 9.6-12.5 14.5-26 14.5-26S268.6 386 268.3 386c-.4 0-1.7 8.2-4.2 13.5-2.6 5.4-9.7 20.5-21.7 25.2-12 4.7-12 6.6-16.8 6a66.4 66.4 0 01-17.4-8.5c0-.4-6.1 14.7-6.1 14.7s-1.3 9.8 2.2 13z"/>
+    <path fill="#fddc59" fill-rule="evenodd" d="M240 387.1c-1 0-23.8 12.5-22.9 17.8 1 5.3 39.3 81 121.5 81.8 82.1.9 132.4-68.5 128.7-80-3.6-11.6-29.2-25-29.2-25s6.4 5.4 5.5 12.5c-1 7.2-29.2 68.5-100.5 66.7-71.2-1.7-105-56-105-62.2 0-6.2 3.7-9.8 1.9-11.6z"/>
+    <path fill="#d40f0f" fill-rule="evenodd" d="M462.6 442c2-1.5 13.9-34.2 20.7-33.3 6.8 1 4.5 10.7 3.9 13.3l-7.5 25.1s.4-5.3-4.2-6.6c-4.5-1.3-12 2.2-12.9 1.6zm-258.3 8.3c0-1.8-5.4-8 1-9.8 6.3-1.8 14.6 1.8 14.6 1.8s-4.6-13.4-10-24c-5.6-10.7-7.4-9-12-7.2-4.5 1.8-4.4 6.5-1.7 13.6 2.8 7.1 8.1 27.3 8.1 25.6z"/>
+    <path fill="#fdc400" fill-rule="evenodd" d="M279.7 389.3l7.9-26.9-22-16.8 27.6-.7 9-26.5 9 26.5 27.7.5-22 17 8 26.8-22.6-16z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M428.4 249.5v103.3c.2 50.5-51.3 94.7-85.5 103.3-34.2-8.6-85.7-52.8-85.5-103.3V249.5h171z"/>
+    <path fill="#d40f0f" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M177.2 326l.4 160.7s2.4-3.3 35-1.3c32.6 2 35.4 35.5 70.9 35.5 35.4 0 35.4-35.5 70.8-35.5s35.5 35.5 70.9 35.5 35.4-35.5 70.9-35.5 35.4 35.5 72.8 37.5c33.5-2 33.5-37.5 69-39.5l35.3 2V326h-496z" transform="matrix(.34457 0 0 .40213 196.4 118.5)"/>
+    <path fill="#0062bb" fill-rule="evenodd" d="M257.4 335v21.4h12.2c11.3.8 12.2 14.3 24.4 14.3s12.3-14.3 24.5-14.3 12.2 14.3 24.4 14.3 12.2-14.3 24.4-14.3 11.5 13.4 24.4 14.3c11.5-.9 12.2-13.5 24.4-14.3h12.2V335h-12.2c-12.2 0-12.2 14.3-24.4 14.3S379.5 335 367.3 335s-12.2 14.3-24.4 14.3-12.2-14.3-24.4-14.3-12.2 14.3-24.5 14.3-12.2-14.3-24.4-14.3h-12.2zm3.7 42.8l8.5 21.3c11.3.8 12.2 14.3 24.4 14.3s12.3-14.2 24.5-14.2 12.2 14.2 24.4 14.2 12.2-14.2 24.4-14.2 11.5 13.4 24.4 14.2c11.5-.8 11.9-13.4 24.2-14.2l8.8-21.8-8.6.4c-12.2 0-12.2 14.2-24.4 14.2s-12.2-14.2-24.4-14.2-12.2 14.2-24.4 14.2-12.2-14.2-24.4-14.2S306.3 392 294 392s-12.2-14.2-24.4-14.2h-8.5zm81.8 78.3c12.2 0 40.2-21.3 39.9-21.3.3 0-3.3-14.3-15.5-14.3s-12.2 14.3-24.4 14.3-12.2-14.3-24.4-14.3-15.4 14.3-15.4 14.3c-.6 0 27.6 21.3 39.8 21.3z"/>
+    <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M90.8 117.6c.9 0 8.3 1.2 13.6.8 5.4-.4 7.4-2.5 7.4-2.9v-1.2h7s1.2 5.7.4 6.1-2.9 2.1-3.3 2.1 0-2.9-.8-2-1.2 2-1.2 2-.9-1.2-1.3-1.2-1.2 1.2-1.2 1.2 0-1.2-.4-1.2-2.5 2-2.5 2l-2-1.6s-1.3 2-1.7 2-2.9-1.6-2.9-1.6l-4 2.5s0-3.7-.9-3.3c-.8.4-5.3.4-5.3.4S90.4 124 90 124s-2-2-1.6-2 1.2-1.2.8-1.7c-.4-.4-2.5 0-2.5-.4s-.8-2.8-.4-2.8l2 .4V115h2.1l.4 2.5z" transform="matrix(1.684 0 0 1.4651 126.8 126.6)"/>
+    <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M98.3 94.1c-.5 0-3.3 3.3-3 7 .5 3.7 7.5 9 7.5 9s3.7-1.6 4.9 0 1.2 6.6.8 6.6-5.3 1.3-5.3.5c0-.9 0-1.7-.4-1.7l-5 .4.4-1.6-4-.8 1.6-1.7s-6.6-2.9-6.2-2.9 2.9-1.6 2.9-1.6l-5-3.3h3s-4.2-3.3-3.8-3.3l2.5.4-1.2-3.3h1.2L88 95.4l2-.9 1.3 2.1-.5-5 3 .5v4s1.2-2.4 1.2-2.8c0-.4 3.7 1.7 3.2.8z" transform="matrix(1.684 0 0 1.4651 126.8 126.6)"/>
+    <path fill-rule="evenodd" d="M399.5 301.9c-.8.7-3.4 2.4-3.4 2.4l5.7-.5c-.2 0-2-1.5-2.3-2zm5 2.8c-.3.5-1.3 5.1-.6 4.8.7-.3 3.4-3.7 3.4-3.7l-2.8-1zm8 .6a34 34 0 004.3 3.5c-.5-.8-1-4-1.4-4-.3-.2-2.6.8-2.9.5zm-69.7-5c-.6.2-4.9 3-4.9 3l7-1.1c-.4 0-2.3-1.4-2.1-1.8zm4.5 3.7c-.7.6-3 4.8-2.1 4.6.8-.1 4.7-2.8 4.7-2.8l-2.6-1.8zm-2.8-5.9l-4-1.7 4.8-1-.8 2.7zm-68.6-2l-5.1-3.6 6.5 1.8-1.4 1.9zm-4.5 2.5c-.6 0-7.2 3.6-7 3.6h9c-.2-.2-1.6-3.3-2-3.6zm4.2 5.2c-.7.3-5.9 3.8-5.5 3.8h7.8l-2.3-3.8zm-.7-37.5s-1.9-4.2-1.7-4.2c.2 0 4.8 3.3 4.8 3.3l-3 1zm5.2-5.2l.5-2.8s4.7 3.2 4.5 3.2c-.2 0-4.7 0-5-.4zm7.3 2l.5-4s4.3 5.1 4 5.3c-.4.1-4.2-.8-4.5-1.4z"/>
+    <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M137.3 110.9c0 .2 4.3 3.7 4.4 4.5 0 .8-7.8 1-7.8 1s-2.3-1.7-3-1.6c-.7 0-1 1.8-1 1.8l1.8 1-3.5.2 1 2 2.7-.2-.6 1.8s1.6 1.3 2 1c.3-.1 1.3-2 2.1-2.3.8-.3 2.6-.3 2.6-.3s-1.4 2.3-.7 2.3c.6 0 3.4-2.4 3.4-2.4l.7 2.2 2-2.5s0 2 .3 2 3.2-2.5 3.2-2.5 2.3 2.8 2.6 2.6c.3-.2.6-3 1-3s2.2-.3 2.2-.5-1.3-1-1.5-2.5c-.2-1.5.2-4.8.1-4.8s-13.8.5-14 .2z" transform="matrix(1.684 0 0 1.4651 125.6 127)"/>
+    <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M115.4 104.6h40.3c4 0 7.8-1.6 7.8-4.1 0-2.5-6.6-2.9-9-2-2.5.8-13.2 5.7-17.7 5.3s-8.7-3.3-9.1-6.2c-.4-2.9 2-5.3 6.6-5.3s10.3 1.6 11.5 1.2 4.1-3.7 5.3-4.1c1.3-.4 5-.8 5-.8l-1.7 1.2 5.4-1.2s-4.1 4.5-8.3 5.7c-4 1.3-12.7.8-16 .8s-5-.4-4.5 2.1c.4 2.5 2.9 4.1 5 3.7 2-.4 8.1-2.5 8.1-2.5l-1.6-1.2 7.4-.4s-.4-1.2 0-1.2l4.1.4s-2.5-1.3-2-1.3 2 0 5.3.4 10.3 1.7 9.9 5c-.5 3.3-3 6.1-5.8 6.1s-5.3-.8-5.3.5c0 1.2 3.3 2 5.3 2s4.5-1.6 5-1.6 1.2 2.4 1.6 2.4 2.9-.8 2.9-.8l-1.7 4.5 2.9.8s-1.6 1.7-1.2 1.7 2.8 0 2.8.4-3.2 2.9-3.2 3.3 2.4 1.6 2.4 1.6-1.6 2.5-2 2.1l-2-2.5s-.5 1.7-1.3 1.7-2.5-.4-2.5-.4 1.2-2.5.8-2.5-2.4 1.6-2.4 1.2l-1.3-1.2s3.3-1.3 3.3-3.3c0-2-1.3-3.9-7.3-4.2-6-.3-6 1.4-10.5 1.2-4.4-.2-4.4-2-7.7-2s-13.4 4.2-18.2 4c-4.7 0-10.6-.3-10.4-.5.2-.2 3.9-9.7 4-10z" transform="matrix(1.684 0 0 1.4651 125.6 127)"/>
+    <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M106.9 102.5c-.4.2-4 .7-4.2 4.5-.2 3.8.3 3.8.7 3.6.4-.2 1.2-3.5 1.2-3.5s-1.2 4.5.1 5.5a9.3 9.3 0 002.8 1.5l.5-3.6s-1 3.5 1.5 4.7c2.4 1.2 3.4.3 3.1-.6a70 70 0 00-.9-3.3l2 2.4c.2.2 1 1.8 3.6 1 2.4-.6.7-2.3.7-2.3l-3-2.4s3 3.1 4.4 2-1-3.6-1-3.5 2 3.5 2.8 1.4-1.2-2.8-1.8-4.9c-.6-2-1.1-2.2-.5-3.5.6-1.2.7-3.6.7-3.6s2.6.7 2.4-1.5c-.2-2.2-2.8-2.7-3.3-2.8-.5 0-.4-2.2-.6-2.1-.2 0-1.9 1.3-1.9 1.3s-1.4-3.4-1.7-3.2-2 2-3.2 2c-1.2.2-2 2-2 2s-4.3-2.1-4.2 1.3c.1 3.4 2.6 2.5 2.6 2.6s-.4 4.8-.8 5z" transform="matrix(1.684 0 0 1.4651 126.8 126.6)"/>
+    <path fill-rule="evenodd" d="M310.8 269.1c.8-.3 2-1.3 3.4-1.2s3.7 1.2 2.6 1.8c-1.1.6-2 .9-3.2.6-1.3-.3-2.3-1-2.8-1.2zm14-.2c-.8-.2-2-1.3-3.4-1.1s-3.7 1.2-2.6 1.8c1.2.6 2 .8 3.3.5 1.2-.3 2.2-1 2.8-1.2z"/>
+    <path fill="#000039" fill-rule="evenodd" stroke="#000" stroke-width=".4" d="M111 103.2c0 .5.4 4.8.6 4.5l1.7-4.4-2.3-.1z" transform="matrix(1.684 0 0 1.4651 127 126.7)"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M110 103.2c0-1.3.8-1.2 2.4-1 1.7.2 2.5 1 2.4 1.3-.1.2-1.5.7-2.6.6-1.3-.4-2.3 0-2.2-1z" transform="matrix(1.684 0 0 1.4651 127 126.9)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M112.4 100l-.2 2m7.1-7.2s1.4.7 1.2 1.3c-.2.6-1.2.9-1.2.9m-11.2-2.7c-.3.1-.7.3-1 1.2-.1.8 1 1.3 1 1.3" transform="matrix(1.684 0 0 1.4651 127 126.9)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M111.2 136.1s-1.5 1.5 1 1.5.7-1.3.7-1.3" transform="matrix(1.684 0 0 1.4651 127.2 72)"/>
+    <path fill="#fdc400" fill-rule="evenodd" d="M323.6 438l7.2-23.6-20-14.9 25-.6 8.2-23.3 8.3 23.3 25 .5-19.9 15 7.3 23.5-20.6-14z"/>
+    <path fill="#003017" fill-rule="evenodd" d="M327 431.7l6-18.8-16.6-11.8 20.9-.5 6.8-18.5 6.8 18.5 20.9.4-16.6 11.9 6 18.7-17-11.2z"/>
+    <path fill="#fdc400" fill-rule="evenodd" d="M282.5 390.1l7-22.3-19.7-14 24.8-.6 8-22 8.2 22 24.8.4-19.7 14.1L323 390l-20.3-13.2z"/>
+    <path fill="#003017" fill-rule="evenodd" d="M285.9 384.1l5.9-17.7-16.5-11.2 20.6-.4 6.8-17.5 6.8 17.5 20.6.3-16.4 11.2 6 17.8-17-10.6z"/>
+    <path fill="#fdc400" fill-rule="evenodd" d="M365.4 390.1l7.2-22.3-20-14 25-.6 8.3-22 8.3 22 25 .4-20 14.1 7.4 22.3-20.6-13.2z"/>
+    <path fill="#003017" fill-rule="evenodd" d="M368.8 384.1l6-17.7-16.6-11.2 20.9-.4 6.8-17.5 6.9 17.5 20.9.3-16.7 11.2 6.1 17.8-17.1-10.6z"/>
+    <path fill="none" d="M223.7 403c9 38.8 47 67.5 98.2 74.3 65.8 8.8 128.5-24.6 140-74.4"/>
+    <path d="M223.5 409l12.4-7 1.1 2.5-4.8 2.8 1.6 3.5 4.8-2.7 1.2 2.5-12.4 7-1.1-2.6 5.6-3.1-1.6-3.5-5.6 3.1-1.2-2.5m5.2 10.8l11.5-8.5 4 6.5-2 1.5-2.5-4.2-2.6 2 2.3 3.8-1.8 1.4-2.4-4-3.2 2.4 2.6 4.3-2 1.5-4-6.7m8.1 12.4l10.2-10.5 1.7 2.1-4 4.1 2.4 3 4-4.2 1.8 2.1-10.2 10.5-1.7-2.1 4.6-4.8-2.4-2.9-4.6 4.8-1.8-2.1m13.3 6.2l1.7 1.6 3-5.7-4.7 4m-6.5 2L255 431l2.6 2.6-6.7 13.8-2.1-2 1.8-3.4-2.3-2.2-2.8 2.4-2-1.9m10 9.3l7-10.3-2.5-2 1.4-2 6.8 5.6-1.3 2-2.4-2-6.8 10.4-2.1-1.7m5.6 4.5l7.2-13.1 2.2 1.5-2.8 5.1 3 2 2.8-5.1 2.2 1.5-7.2 13.1-2.2-1.5 3.3-6-3-2-3.3 6-2.2-1.5m13.6 8.6l5.8-14 6.6 3.4-1 2.3-4.2-2.2-1.4 3.3 4 2-1 2.3-4-2-2.5 6.1-2.3-1.2m12.8-2.1a17 17 0 00-1.1 4.6c0 .7.4 1.2 1 1.5.7.3 1.2.2 1.7-.3.4-.5 1-2 1.9-4.3s1.2-4 1.2-4.7a1.6 1.6 0 00-1.1-1.5c-.7-.3-1.2-.2-1.7.3-.4.5-1 2-1.9 4.4m-2.4-1a27 27 0 011.4-3.6c.4-.9.9-1.5 1.3-1.8.6-.5 1.2-.8 1.8-.9a5 5 0 012.2.5 5 5 0 012 1.3c.4.5.7 1.1.8 2v2.3a30 30 0 01-2.6 7.3 5.9 5.9 0 01-1.3 1.8c-.6.5-1.2.8-1.8.8a4.6 4.6 0 01-2.2-.4 5 5 0 01-2-1.3 4.2 4.2 0 01-.8-2 6.3 6.3 0 010-2.3l1.2-3.8m11.9-3.2l2.4.8-2.6 10a5.2 5.2 0 00-.3 2.4c.2.5.6.8 1.2 1 .6.2 1.1.2 1.5-.2.3-.3.7-1 1-2.2l2.6-9.9 2.5.8-2.8 10.2c-.2 1-.5 1.7-.7 2.1a3.2 3.2 0 01-2.5 1.8 5.4 5.4 0 01-2.2-.3 5.2 5.2 0 01-3-2.2c-.4-1-.4-2.3.1-4.1l2.8-10.2m6.6 18.1l3-15 2.6.7 1.4 11.3 2-10.5 2.4.6-3 15-2.6-.6-1.4-11.4-2 10.5-2.4-.6m13.5.8l1.2.2h1.2c.2 0 .5-.1.6-.3.3-.4.6-.9.8-1.5a26.3 26.3 0 00.9-6.6 3.4 3.4 0 00-.4-1.6 1.2 1.2 0 00-.6-.5 4.1 4.1 0 00-1-.3l-1.1-.1-1.5 10.7m-2.9 1.8l2.2-15.2 4 .7c1 .2 1.6.3 2 .6.5.2.9.6 1.2 1 .4.6.6 1.3.7 2.1 0 .9 0 2-.2 3.8-.3 2.1-.6 3.6-.9 4.5-.2.9-.6 1.6-1 2.2-.4.5-.9.9-1.5 1a8 8 0 01-3 0l-3.5-.7m10.8 1.8l1.3-15.4 7 .8-.2 2.5-4.5-.4-.3 3.5 4.2.5-.2 2.4-4.2-.5-.4 4.3 4.7.5-.3 2.5-7.2-.7m11.8-1.3h2.3c.3-.1.5-.3.6-.5.3-.4.4-1 .6-1.6a25 25 0 00.2-6.6c-.1-.7-.3-1.2-.6-1.6a1.2 1.2 0 00-.6-.3 4 4 0 00-1-.2h-1.2l-.3 10.8m-2.6 2.2l.4-15.4 4.2.2c.8 0 1.5.1 2 .3.5.2.9.4 1.2.8.5.6.8 1.2 1 2 .2.9.2 2.1.2 3.8a35.2 35.2 0 01-.4 4.6c-.2 1-.4 1.7-.8 2.3a2.7 2.7 0 01-1.3 1.3c-.6.2-1.6.3-3 .2l-3.5-.1m15.4.2l-.6-15.4 2.6-.1.6 15.4h-2.6m6.9-.3l-1-12.8-3 .2-.1-2.5 8.5-.8.2 2.6-3 .2 1 12.9-2.6.2m9-16.5l2.6-.5 1.6 10.2c.2 1.2.5 2 .8 2.3.3.4.8.5 1.4.4s1.1-.4 1.3-1a5 5 0 000-2.4l-1.6-10.2 2.5-.5 1.7 10.5c.1 1 .2 1.8.1 2.3a3.6 3.6 0 01-.3 1.3 3.7 3.7 0 01-1.2 1.5c-.6.4-1.3.6-2.1.8-1.6.3-2.7.1-3.5-.5-.8-.6-1.3-1.9-1.6-3.7l-1.6-10.5m13.8 3.9l1-.3c.8-.2 1.3-.5 1.5-1 .3-.4.3-1 .1-1.8-.1-.9-.4-1.4-.8-1.6-.3-.3-1-.3-1.7 0l-1.1.2 1 4.5m-.6 9l-3.3-15 4.4-1c1.3-.4 2.3-.4 3 .1s1.3 1.5 1.6 3c.4 1.5.3 2.7-.2 3.6-.4.9-1.3 1.5-2.6 1.8l-1.8.5 1.4 6.4-2.5.7m9.9-10.9c.7 2.4 1.2 3.9 1.7 4.4.4.6 1 .7 1.6.5.7-.3 1-.7 1.2-1.4 0-.7-.3-2.3-1-4.7s-1.2-4-1.7-4.5c-.4-.5-1-.7-1.6-.4-.7.2-1 .7-1.1 1.4-.1.7.2 2.3.9 4.7m-2.5.9a28.9 28.9 0 01-.9-3.8 6.3 6.3 0 010-2.3 4 4 0 011-2 5 5 0 012-1.1c.8-.3 1.6-.4 2.2-.3.6 0 1.2.4 1.8 1 .4.3.8 1 1.2 1.8.4.9.8 2.1 1.2 3.7.5 1.5.8 2.8 1 3.8v2.3c-.3.8-.6 1.4-1 1.9-.5.5-1.2.9-2 1.2-1 .3-1.6.4-2.3.3-.6-.1-1.2-.4-1.7-1-.5-.3-.9-1-1.3-1.8a28.3 28.3 0 01-1.2-3.7m12.6 3.5l-5.1-14.3 2.4-1 7 8.4-3.7-10 2.3-1 5.1 14.3-2.4 1.1-7-8.5 3.7 10-2.3 1m16-7.9l-5.3-11.3-2.6 1.5-1.1-2.2 7.5-4.5 1 2.3-2.5 1.5 5.4 11.4-2.3 1.3m6-3.6l-7.3-13 2.2-1.5 2.9 5 3-2-3-5.1 2.2-1.6 7.4 13-2.2 1.6-3.3-6-3 2.2 3.4 5.9-2.2 1.5m9.2-6.7l-8.3-12.2 5.7-4.8 1.3 2-3.6 3 2 3 3.3-3 1.4 2-3.4 2.9 2.3 3.3 3.7-3 1.4 2-5.8 4.8m7.2-13.2l1.8-2 .6.7c.6.7 1.1 1 1.5 1.2.3 0 .7-.1 1-.5.5-.5.7-.9.7-1.3 0-.5-.2-1-.6-1.3-.3-.4-.6-.6-1-.7a4.7 4.7 0 00-1.6.1l-1.6.3c-1.4.3-2.4.3-3 .2a3.7 3.7 0 01-1.7-1.2 4.2 4.2 0 01-1.1-3 4.6 4.6 0 011.3-3c1-1 1.9-1.5 2.8-1.5s2 .6 2.9 1.6a4 4 0 01.3.4l-1.7 2-.3-.3c-.5-.6-1-1-1.4-1-.4-.1-.8 0-1.2.5-.3.4-.4.7-.4 1 0 .5.1.8.4 1.2.4.4 1.3.5 2.5.3l1.8-.4a6 6 0 012.8-.1c.6.2 1.3.7 2 1.4.8 1 1.2 2 1.2 3.1a5 5 0 01-1.5 3.3c-1 1-2 1.6-3 1.5-1 0-2-.6-3-1.8a14.3 14.3 0 01-.5-.6m10.7-4.4l-10.6-9.9 4.5-6 1.8 1.6-3 3.9 2.5 2.3 2.8-3.6 1.6 1.5-2.7 3.6 3 2.7 3-4 1.7 1.7-4.6 6.2m2.7-13.8l1.2-2-5.4-2.6 4.2 4.6m2.5 6.9l-9.7-11.5 2-3.2 13.2 5.7-1.6 2.6-3.3-1.6-1.6 2.8 2.5 2.8-1.5 2.4m1.7-12.5l1.1-2.6.8.5c.8.4 1.4.6 1.7.5.4 0 .7-.3 1-.8.2-.6.3-1 .1-1.5a1.7 1.7 0 00-.8-1 1.7 1.7 0 00-1.1-.3c-.4 0-1 .3-1.6.7l-1.5.9a7.5 7.5 0 01-2.7 1.1 4 4 0 01-2-.5 3.9 3.9 0 01-2-2.4 4.8 4.8 0 01.5-3.3c.6-1.3 1.4-2.1 2.3-2.4 1-.3 2-.2 3.2.5a4 4 0 01.4.3l-1.1 2.4-.4-.2a3 3 0 00-1.6-.5c-.4.1-.7.4-1 1-.1.4-.2.8 0 1.2 0 .3.3.6.7.8.5.3 1.3.1 2.4-.6l1.5-1a6.3 6.3 0 012.7-1 4 4 0 012.3.6 4.1 4.1 0 012 2.6 5.3 5.3 0 01-.4 3.6c-.7 1.3-1.5 2.2-2.4 2.5-1 .3-2.1 0-3.4-.7l-.7-.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kz.svg
new file mode 100644
index 0000000..f17bd6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/kz.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kz" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#6fdcff" d="M0 0h512v512H0z"/>
+    <g fill="#ffe400">
+      <path d="M43 498c3.5 3.3 2.3 9 12 8.3 14.7 0 15.1-9 15.1-15.3 0-6.3-22-15-23-24.3s5.1-11.8 10.2-11.8c5 0 8.6 3 8.6 5.5s-2.5 3.3-6 3.3 1.5-1.8-1.6-3.3-5 2.2-5 4.5c0 2.2 7.6 2.9 12.6 1.3 1 5 1.6 5.3-5.6 13.8 5.1-3.3 5.6-4 11.2-2.2-5.6-4.8-1.4-14.6-1.2-17.1s-1-5.5-3.3-7c-4.1-3.6-13-3.8-18.3-1.4-7.8 3.4-8.2 13.6-6.1 17l21.5 22c1.5 2.6 2 9.8-7.1 10.2-9.7.7-13-12.4-14.7-16.8-2.3 4.8-4.8 18-14.5 17.2-9.1-.3-10.9-7.5-9.4-10.1l22.1-22.5c2-3.4 1.7-13.6-6-17-5.4-2.4-14.3-2.2-18.4 1.5-2.2 1.4-3.5 4.4-3.3 6.9s4.4 12.3-1.2 17c5.6-1.8 6-1 11.1 2.3-7-8.5-6.6-8.9-5.5-13.9 5 1.7 12.7 1 12.7-1.2 0-2.3-2-6-5.1-4.5-3 1.5 2 3.3-1.5 3.3-3.6 0-6.1-.7-6.1-3.3s3.5-5.5 8.6-5.5 11.2 2.6 10.1 11.8c-1 9.2-23.5 19.3-23.5 25.6 0 6.3 1.6 14 16.3 14 9.7.7 10.8-5 14.3-8.4z"/>
+      <path d="M41.8 366c3.5-3.4 6.3-13.5 16-12.7 14.7 0 20.3 8.1 20.3 14.4 0 6.3-30 57.7-31 67-1 9.2 5.1 11.8 10.2 11.8 5 0 8.6-3 8.6-5.6s-2.5-3.3-6-3.3 1.4 1.8-1.6 3.3-5-2.2-5-4.4c0-2.3 7.5-3 12.6-1.3 1-5 1.5-5.4-5.6-13.9 5.1 3.3 5.6 4 11.2 2.2-5.6 4.8-1.4 14.6-1.2 17.1s-1 5.5-3.4 7c-4 3.7-13 3.8-18.2 1.4-7.8-3.4-8.2-13.6-6.1-17l28.9-62.5c1.5-2.6-2.5-11-11.7-11.4-9.6-.8-13 9.3-14.6 13.7l13.1-1s.5 2 0 3.4c-6.8.4-13.1 1.7-13.1 1.7l-.5 6.6h6.5l-.6 3s-5.4-.4-6 0c-.5.4-1 6.7-1 6.7s-1 .3-2 .3c-1.2 0-2.2-.3-2.2-.3s-.5-6.3-1-6.7c-.5-.4-6 0-6 0l-.5-3h6.5l-.5-6.6s-6.4-1.3-13.2-1.7c-.5-1.3 0-3.3 0-3.3l13.2 1c-1.7-4.5-5-14.6-14.7-13.8-9.1.3-13.2 8.8-11.7 11.4l29 62.5c2 3.4 1.6 13.6-6.1 17-5.3 2.4-14.2 2.3-18.3-1.4-2.3-1.5-3.5-4.5-3.3-7s4.3-12.3-1.3-17c5.6 1.8 6.1 1 11.2-2.3-7 8.5-6.6 8.9-5.6 13.9 5.1-1.7 12.7-1 12.7 1.3 0 2.2-2 5.9-5 4.4-3.1-1.5 2-3.3-1.6-3.3-3.5 0-6 .7-6 3.3s3.5 5.6 8.6 5.6 11.1-2.6 10.1-11.9c-1-9.2-31-60.6-31-67 0-6.2 5.6-14.3 20.3-14.3 9.7-.8 13.1 9.3 16.6 12.7z"/>
+      <path d="M41.8 340.5c3.5 3.4 6.3 13.5 16 12.7 14.7 0 20.3-8.1 20.3-14.4 0-6.3-30-57.7-31-67-1-9.2 5.1-11.8 10.2-11.8 5 0 8.6 3 8.6 5.6s-2.5 3.3-6 3.3 1.5-1.8-1.6-3.3-5 2.2-5 4.4c0 2.3 7.5 3 12.6 1.3 1 5 1.5 5.4-5.6 13.9 5.1-3.3 5.6-4 11.2-2.2-5.6-4.8-1.4-14.6-1.2-17.1s-1-5.5-3.4-7c-4-3.7-13-3.8-18.2-1.4-7.8 3.4-8.2 13.6-6.1 17L71.5 337c1.5 2.6-2.5 11-11.7 11.4-9.6.8-13-9.3-14.6-13.7l13.1 1s.5-2 0-3.4c-6.8-.5-13.1-1.7-13.1-1.7l-.5-6.6H51l-.5-3s-5.4.4-6 0c-.4-.4-1-6.7-1-6.7s-1-.3-2-.3c-1.2 0-2.2.3-2.2.3s-.5 6.3-1 6.7c-.5.4-6 0-6 0l-.5 3h6.5l-.5 6.6s-6.4 1.2-13.2 1.7c-.5 1.3 0 3.3 0 3.3l13.2-1c-1.7 4.5-5 14.6-14.7 13.8-9.1-.3-13.2-8.8-11.6-11.4l28.9-62.5c2-3.4 1.6-13.6-6.1-17-5.3-2.4-14.2-2.3-18.3 1.4-2.3 1.5-3.5 4.5-3.3 7s4.3 12.3-1.3 17c5.6-1.8 6.1-1 11.2 2.3-7.1-8.5-6.6-8.9-5.6-13.9 5.1 1.7 12.7 1 12.7-1.3s-2-5.9-5-4.4 2 3.3-1.6 3.3c-3.5 0-6-.7-6-3.3s3.5-5.5 8.6-5.5 11.1 2.5 10.1 11.8c-1 9.2-31 60.6-31 67 0 6.2 5.6 14.3 20.3 14.3 9.7.8 13.1-9.3 16.6-12.7z"/>
+      <path d="M41.8 171.2c3.5-3.4 6.3-13.5 16-12.8 14.7 0 20.3 8.2 20.3 14.5 0 6.2-30 57.6-31 66.9-1 9.2 5.1 11.8 10.2 11.8 5 0 8.6-3 8.6-5.5s-2.5-3.4-6-3.4 1.4 1.9-1.6 3.4-5-2.2-5-4.5c0-2.2 7.5-3 12.6-1.3 1-5 1.5-5.3-5.6-13.8 5.1 3.3 5.6 4 11.2 2.2-5.6 4.8-1.4 14.6-1.2 17s-1 5.5-3.4 7c-4 3.7-13 3.9-18.2 1.5-7.8-3.5-8.2-13.7-6.1-17l28.9-62.5c1.5-2.6-2.5-11.1-11.7-11.5-9.6-.7-13 9.4-14.6 13.8l13.1-1s.5 2 0 3.4c-6.8.4-13.1 1.6-13.1 1.6l-.5 6.7h6.5l-.6 3s-5.4-.4-6 0c-.5.3-1 6.6-1 6.6s-1 .4-2 .4c-1.2 0-2.2-.4-2.2-.4s-.5-6.3-1-6.6c-.5-.4-6 0-6 0l-.5-3h6.5l-.5-6.7s-6.4-1.2-13.2-1.6c-.5-1.3 0-3.4 0-3.4l13.2 1c-1.7-4.4-5-14.5-14.7-13.8-9.1.4-13.2 8.9-11.7 11.5l29 62.5c2 3.3 1.6 13.5-6.1 17-5.3 2.4-14.2 2.2-18.3-1.5-2.3-1.4-3.5-4.4-3.3-7s4.3-12.2-1.3-17c5.6 1.8 6.1 1.1 11.2-2.2-7 8.5-6.6 8.9-5.6 13.8 5.1-1.6 12.7-.9 12.7 1.3s-2 6-5 4.5c-3.1-1.5 2-3.4-1.6-3.4-3.5 0-6 .8-6 3.4s3.5 5.5 8.6 5.5 11.1-2.6 10.1-11.8c-1-9.3-31-60.7-31-67 0-6.2 5.6-14.4 20.3-14.4 9.7-.7 13.1 9.4 16.6 12.8z"/>
+      <path d="M41.8 145.7c3.5 3.4 6.3 13.4 16 12.7 14.7 0 20.3-8.1 20.3-14.4 0-6.3-30-57.7-31-67-1-9.2 5.1-11.8 10.2-11.8 5 0 8.6 3 8.6 5.5s-2.5 3.4-6 3.4 1.5-1.9-1.6-3.4-5 2.3-5 4.5 7.5 3 12.6 1.3c1 5 1.5 5.3-5.6 13.8 5.1-3.3 5.6-4 11.2-2.2-5.6-4.8-1.4-14.6-1.2-17s-1-5.5-3.4-7c-4-3.7-13-3.9-18.2-1.5-7.8 3.5-8.2 13.7-6.1 17l28.9 62.5c1.5 2.6-2.5 11.1-11.7 11.5-9.6.7-13-9.4-14.6-13.8l13.1 1s.5-2 0-3.4a117 117 0 01-13.1-1.6l-.5-6.7H51l-.5-3s-5.4.4-6 0c-.4-.3-1-6.6-1-6.6s-1-.4-2-.4c-1.2 0-2.2.4-2.2.4s-.5 6.3-1 6.7c-.5.3-6 0-6 0l-.5 3h6.5l-.5 6.6s-6.4 1.2-13.2 1.6a7 7 0 000 3.4l13.2-1c-1.7 4.4-5 14.5-14.7 13.8-9.1-.4-13.2-8.9-11.6-11.5l28.9-62.5c2-3.3 1.6-13.5-6.1-17-5.3-2.4-14.2-2.2-18.3 1.5-2.3 1.5-3.5 4.4-3.3 7s4.3 12.2-1.3 17c5.6-1.8 6.1-1 11.2 2.2-7.1-8.5-6.6-8.8-5.6-13.8 5.1 1.6 12.7 1 12.7-1.3s-2-6-5-4.5 2 3.4-1.6 3.4c-3.5 0-6-.8-6-3.4s3.5-5.5 8.6-5.5S36.9 67.8 35.9 77c-1 9.3-31 60.7-31 67 0 6.3 5.6 14.4 20.3 14.4 9.7.7 13.1-9.3 16.6-12.7z"/>
+      <path d="M43 13.7c3.5-3.4 2.3-9 12-8.4 14.7 0 15.1 9 15.1 15.3 0 6.3-22 15.1-23 24.3-1 9.3 5.1 11.9 10.2 11.9 5 0 8.6-3 8.6-5.6S63.4 48 60 48s1.5 1.9-1.6 3.3-5-2.2-5-4.4 7.6-3 12.6-1.3c1-5 1.6-5.4-5.6-13.9 5 3.3 5.6 4 11.1 2.3-5.6 4.8-1.4 14.6-1.2 17s-1 5.5-3.3 7c-4.1 3.7-13 3.9-18.3 1.5-7.8-3.5-8.2-13.7-6.1-17l21.5-22c1.5-2.7 2-9.9-7.1-10.3-9.7-.7-13 12.5-14.7 16.8C40 22.2 37.5 9 27.8 9.7c-9.1.4-10.9 7.6-9.4 10.2l22.1 22.5c2 3.3 1.7 13.5-6 17-5.4 2.4-14.3 2.2-18.4-1.5-2.2-1.5-3.5-4.4-3.3-7s4.4-12.2-1.2-17c5.6 1.8 6 1 11.1-2.3-7 8.5-6.6 9-5.5 13.9 5-1.7 12.7-1 12.7 1.3 0 2.2-2 6-5.1 4.4-3-1.4 2-3.3-1.5-3.3-3.6 0-6.1.8-6.1 3.3s3.5 5.6 8.6 5.6S37 54.2 35.9 44.9c-1-9.2-23.5-19.3-23.5-25.6 0-6.3 1.6-14 16.3-14 9.7-.7 10.8 5 14.3 8.4z"/>
+    </g>
+    <g fill="#ffe400" transform="translate(-220 40)">
+      <rect width="170.2" height="161.3" x="425.9" y="104.5" rx="85.1" ry="80.7"/>
+      <path d="M507 56.4c-.8 0-4.6 26.8-6 32.8-1.4 13.5 18 13 14.8-.5L507 56.3zm6.8 259.8c.7 0 6.5-26.5 8.4-32.4 2.3-13.3-17.1-14-15-.4l6.6 32.8zM378.2 184.6c0 .7 27.9 6.3 34.1 8.1 14 2.3 15-16 .6-14l-34.7 6zm271.7 3.2c0-.7-28.2-5.3-34.5-6.9-14.1-1.7-14.2 16.6 0 14.1l34.5-7.2zM406.8 99.6c-.5.5 17.9 21.3 21.6 26.4 9.6 10 22.3-4 9.6-10.8l-31.2-15.5zm211.1 171c.5-.5-19.7-19.7-23.9-24.4-10.5-9.2-21.8 5.7-8.6 11.5l32.5 13zm-169-200c-.6.3 8 26.1 9.4 32.2 4.8 12.7 22.2 4.4 13.2-6.5L449 70.6zM572 303c.7-.3-6-26.6-6.9-32.7-3.9-13-21.8-6-13.7 5.6l20.7 27zm30.3-214.4c-.6-.5-22.8 16.6-28.2 20-10.7 9 3.8 21.2 11.2 9.3l17-29.3zm-183 193.7c.5.5 24-15 29.6-18.1 11.3-8.2-2.2-21.4-10.5-10l-19 28.1zm-35-144.1c-.3.6 24 14.7 29.3 18.4 12.5 6.5 19.8-10.5 5.5-13.2l-34.8-5.2zM638 236.6c.3-.6-23-16.3-28-20.3-12-7.4-20.5 9.1-6.4 12.7l34.4 7.6zM557.4 63.7c-.7-.2-14.6 23.4-18.3 28.5a7.8 7.8 0 0014 4.7l4.3-33.2zM463.5 308c.7.3 16.3-22.4 20.3-27.3 7.3-11.6-10.4-19-13.7-5.6l-6.6 32.9zM386 238.7c.3.6 28-6 34.5-7 13.6-3.8 6-20.6-6-12.8L386 238.7zM638.1 136c-.2-.6-28.3 4.1-34.8 4.7-14 2.9-7.5 20.2 5 13.2l29.8-17.9z"/>
+      <path d="M534.6 58.1c-.7-.1-10.1 25.4-12.9 31-4.1 13 15 16.2 14.7 2.4L534.7 58zM486.1 314c.7.2 12-24.7 15.2-30.2 5-12.6-13.8-17-14.5-3.3L486 314zm-9.7-253.4c-.7.2 1.9 27.2 1.9 33.4 1.9 13.3 20.6 8.7 14.4-3.7l-16.3-29.7zm68 251.9c.7-.1 0-27.2.5-33.4-.9-13.5-20-10.1-14.6 2.7l14 30.7zM428.2 83c-.6.4 12.7 24.3 15.2 30 7.2 11.7 22.7.7 11.8-8.6l-27-21.4zM593 290.9c.6-.4-11-25.2-13-31-6.3-12.1-22.5-2.1-12.4 7.8l25.4 23.2zM393 116.6c-.4.6 21.1 18.4 25.6 23 11.1 8.4 21.4-7.2 7.8-12.1L393 116.6zm234.2 139.7c.4-.6-19.7-19.8-23.9-24.6-10.4-9.1-21.8 5.8-8.6 11.6l32.5 13zm-249.6-97.8c-.2.7 26.3 10.8 32.1 13.7 13.4 4.5 17.7-13.4 3.1-13.8l-35.2.1zM645 216.3c.3-.6-25.4-12.4-31-15.7-13-5.4-18.7 12.2-4.2 13.6l35.2 2.1zM376.7 210c.1.6 28.7.2 35.2.7 14.2-.7 10.8-18.8-2.8-13.9L376.7 210zm270.2-45c0-.7-28.6-2.2-35-3.1-14.3-.2-12.2 18.1 1.7 14l33.3-11zm-245.7 98.4c.4.6 26-11.6 32-13.9 12.4-6.5 1-21.4-8.9-11.3l-23.1 25.2zm222.3-152.3c-.4-.6-26.7 9.9-33 11.8-12.9 5.7-2.6 21.3 8 11.9l25-23.7zM442.8 298.8c.6.3 18.9-20.5 23.5-24.9 8.7-10.7-8-20-12.9-7l-10.6 31.9zM582.5 75c-.5-.4-20.3 19.1-25.2 23.2-9.4 10.1 6.6 20.5 12.4 7.9L582.4 75z"/>
+      <g transform="matrix(2.1824 0 0 2.0629 -405 -272.6)">
+        <path d="M360.1 247.9c.7 2.5.8 16.5 14.9 30 14 13.4 38 16.4 38 16.4s.1 1.9-1.6 2c-1.7.2-9.9-1.5-14-2.8-4-1.2-7.6-3.4-8-3.3-.5.2-1.3 1.6-2.5 1.4s-7-6.2-9.6-7.8a80.6 80.6 0 01-13.7-15.3c-2.8-4.5-3.5-7.5-4.4-7.5s-4.2 2.2-4.2 2.2-3-4.5-5.6-11.7c-2.7-7.2-2.4-11.4-1.8-11.7.7-.3.7 5.3 2.7 10.4 2 5.2 4.8 6.8 4.8 6.8s-1.8-2.7-3.2-9.4-2-13.2-1-15.2 1.9-2.6 2-2.5c.2.2-1.7 3.1-.4 10.8s4.8 14.2 5.6 13.9c.8-.3-.5-1.9-1-6.4s.5-7.3 1.6-7.7c.5-.4 1.3 5 1.4 7.4zm-9.8 12.8c-2.7-2.5-6.9-11.2-7.8-10.8-1 .5 6.8 13 7 14 .2 1.2 1.9 4.6.6 4.1s-10.6-10.3-9.5-8.4 8.1 10.5 7.7 11-5.8-4.8-6-4.1c-.1.6 5.3 5.8 5.2 6.4s-3.5-3.3-3.5-2.5 3.5 4.7 3.5 5.3-3-2.8-2-1c.9 2 3.5 3.7 3.4 4.3s-2.2-.8-2.2-.5c0 .3 3.9 1.7 4.8 2.8 1 1.1 7.4 8.5 12.2 12.2s18.6 10.2 19.6 10.2c.9 0 2.3-2 2-2.8-.3-.8-13.8-5.4-17.5-8.8-3.8-3.4-13-11.6-13.8-12-.7-.5-2.8-.3-2.8-.8s2.7.3 2.5 0c-.1-.3-3.7-1.9-3.6-2.2.2-.3 2.5.6 2.5.3s-4.2-2.6-4-3.1c.1-.5 3.1 1.4 3.1 1 0-.2-4-3-3.9-3.5.1-.5 3.1 2.2 3 1.6s-2.4-4-2.4-4.4c0-.5 3.6 3.4 4 2.6.2-.7-1.3-7.2-1.2-7.3s2.7 1.4 3.1.5c.5-1-1.8-2.3-4-4.1zm46.1 49.2c-1.9.3-2.8-.4-1.7-2 1.5 0 5.5-1.3 6.9-1.9s2.9-1.4 4.1-2.5c1.2-1.3 2 .7 1.3 1.8-.5.7-2.8 2-4.5 2.7-2.5.8-4.7 2-6.1 1.9zm12.5-5.1c-1.3-1.4-.2-2.4 1.7-3.5 2.8-1.5 2-3.6 5.6-5.3 1.6-1 24-10 31.3-14.8s27.8-20.3 33.3-31c5.4-10.6 2.8-11.4 3.6-11.8.7-.5 1.5 1.5 1.4 3.9-.2 2.3-2 9.3-1.4 10s8.2-5.5 11.4-13 5.6-15.3 7.1-15.3c1.6 0-2.6 12.8-5.3 17.8-2.6 5-5.7 7.5-5 8.6.8 1 8.6-5.5 11.3-10.3 2.6-4.9 5.1-9.2 5.6-8.3a34 34 0 01-6.7 16.1c-4.2 4.8-9.2 8.3-8.4 9 .7.8 6.4 1.6 12.3-2.4 6-4.1 6.6-10 7.3-9.7.8.3-.7 8.4-6.4 13.4s-13.2 5.5-13 6.6c.4 1 16.3-4.6 16-3.3-.3 1.2-20.6 9.2-20.8 10 0 .6 3.5.8 9-.5 5.4-1.2 10.6-5.5 11.3-4.5.2 1.4-3.9 4.8-10.1 6.4-6.3 1.6-9.4 3.7-9.6 4.2-.1.5 11.2-1.4 11.2-.8s-14.8 3.5-14.9 4.3c-.2.7 14-2.9 13.8-2-.4.7-19.3 6.3-19.1 6.6.1.4 15.8-3.4 15.5-2.8-.4.7-26.4 8-26.6 8.5-.2.4 23-5.2 22.8-4.7s-12 3.4-12 3.7c0 .3 9.5-1.5 9.3-1-.1.4-24 6.5-24.5 7.4-.5 1 12.4-2.5 12.2-.7s-27.7 11-27.8 9.3c-.2-1.7 16.7-6 16.6-6.5-.2-.5-9.7 1-9.9.1-.1-1 6.3-3 5.8-3.4-.5-.5-5.3 1.4-4.9.3.5-1.1 9.6-5.3 9.4-5.6-.1-.3-3.3 1-3 0 .4-1.1 19.7-6.7 19.4-7.4-.3-.6-8.9 1.4-9.7 1.6-.3-.6 12-5.2 11.8-6-.4-.7-6.6 2.7-7 1.8-.2-1 10.9-5.3 10.2-6s-5.7 1.8-6.4 1.1 10.5-8.4 8.8-8.6c-1.7-.1-3.8 2.4-4 .8.2-2 8.7-5.3 6.8-6.9-3-.9-13.1.7-17.3 3.2s-18.2 16.4-21.6 18.6c-3.4 2.1-15 7-17.2 8-3.4 1.2-4 3-7.5 4.8-6.3 1.7-6.2 3.6-9.2 4.7-1.1.3-12.4 5.7-12.5 5.3zm-15.8 7c-1.9 1-3.6 3.4-2.5 4.4.6 1.2 2.5-2.7 4-2.5l8 .4c4.3.3 6.4-.9 8.8-.7s7.7-1.3 10.2-1.3 3 .3 3.2-.8c.3-1-7.8-.3-11.4-.4-3.6-.2-8.1.7-10.8.7-2.5-.1-6.8-.9-9.5.2z"/>
+        <rect width="3.4" height="3" x="401.7" y="309.1" rx="1.7" ry="1.5"/>
+        <path d="M445 307.7c1.7-.3 6.3 1.3 9.5 2 5.8 2.3 16.6 1.2 16.6 2.3s-.7 2.4-3.2 2.6-8.8-1-8.6-1 5 2.3 3.6 2.9-5.5-1.3-6.2-.8 3.8 1.4 3 1.7c-.6.3-3.7-.4-4.7-.3-1 .2.8 1.3-.4 1.7-1.2.5-3.2-.6-4-.3-.9.3 1.8 2 .6 2.2-1.2.2-4-.8-5.6-1-1.6 0 1.5 1.6.5 1.8-1 .1-3.8-1.3-4.5-1.3s0 2-1 2-2.2-1.7-2.8-1.7 0 2-1 2-1.4-2.1-2.2-2c-1 .2 0 2.7-1.4 2.5-1.3-.1-1.5-2.6-2.6-2.5-1 .2.2 2.5-.8 2.5s-1.2-2.3-2.2-2.5c-1-.1-.6 2.2-1.2 2.2s-1.2-2.2-1.6-2.2c-.3 0 0 2.2-1.2 2s-1.2-2.4-1.5-2.3c-.4.2-.4 1.8-1.2 1.8s-.9-1.6-1.2-1.4c-.4.1-1.6 2.1-2.4 1.8-.9-.3.2-1.9-.2-1.9s-1.4 1.1-2 1 0-1.4-.2-1.4-1.7.8-2.4.8-2.6 1-3.1.1c-.5-1 1.3-1 1.7-1.9.3-.9-1-3.6.4-4.5 1.3-1 5.6 1.3 12-.3 11.6-3.1 20.6-6.7 21.5-6.6z"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/la.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/la.svg
new file mode 100644
index 0000000..1e7686a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/la.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-la" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M177.2 0h708.6v708.7H177.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(.72249)">
+    <path fill="#ce1126" d="M0 0h1063v708.7H0z"/>
+    <path fill="#002868" d="M0 176h1063v356.6H0z"/>
+    <path fill="#fff" d="M684.2 354.3a152.7 152.7 0 11-305.4 0 152.7 152.7 0 01305.4 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lb.svg
new file mode 100644
index 0000000..a047b0b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lb.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lb" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M124 0h496v496H124z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="red" d="M0 372h744v124H0zM0 0h744v124H0z"/>
+      <path fill="#fff" d="M0 124h744v248H0z"/>
+    </g>
+    <path fill="#007900" d="M368.3 125.9c-7.6 15.1-12.7 15.1-25.3 25.2-5 5-12.6 7.5-2.5 12.6-10 5-15.1 7.5-20.2 17.6l2.6 2.5s9.5-4.7 10-2.5c1.7 2-12.6 9.7-14.4 11s-10.8 6.6-10.8 6.6c-12.6 10.1-20.2 7.6-27.7 22.7l25.2-2.5c5 17.6-12.6 20.1-25.2 27.7l-20.2 12.6c5 17.6 20.2 7.5 32.8 2.5l2.5 2.5v5L270 282s-29.8 17-30.3 17.6c-.2 1 0 5 0 5 10.1 2.6 25.2 5.1 35.3 0 12.6-5 15.2-10 30.3-10a97.4 97.4 0 01-50.5 20.2v10c15.2 0 25.3 0 37.9-2.5l32.8-10c7.5 0 15.1 7.5 12.6 15-7.6 27.7-37.8 22.7-48 45.4l40.4-15.1c10.1-5 20.2-10.1 32.8-7.6 15.1 5 15.1 15.1 35.3 20.1l-5-12.5c5 2.5 10 2.5 15.1 5 12.6 5 15.1 10 30.3 7.5-12.6-15-15.2-12.5-25.2-22.6-10.1-15.1-15.2-37.8 0-40.3l17.6 5c17.7 2.6 17.7-2.5 42.9 7.6 15.1 5 20.2 12.6 37.8 7.5-7.5-17.6-35.3-30.2-53-35.2 20.2-12.6 15.2 5 43-2.5v-5c-20.2-15.2-27.8-27.8-55.6-27.8l43-5v-5S447 235.7 446 235.3a6.3 6.3 0 014.1-4.4c8 5.2 32.3 4.6 33.7 4.5-.7-6.2-12.2-11.3-22.3-16.3 0 0-43.2-26.7-43.4-29 .8-6.8 17.7 1 35.8 6.3-5-10-15.1-15.1-25.2-17.6l15.1-2.5c-10-22.7-35.3-20.2-50.4-30.3-10.1-7.5-10.1-12.6-25.2-20.1z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.1" d="M341 293.6c1.9-6 4.3-11.3-6.9-16.4-11.2-5.1 5.6 20.5 7 16.4zm13.3-12c-2.3.3-3.4 8.6 1 10.8 5.1.8 1-10.7-1-10.8zm13.1-.9c-2.3.7-2.4 12.4 5.8 10.3 8.3-2 0-11.2-5.8-10.2zm15.3-29.8c1.8-2.8-.1-14.5-7.2-9.6-7.1 5 5 10.4 7.2 9.6zm-15.5-9.7c2.2-.8 2.4-8-3.8-6-6.2 1.8 2.2 7.5 3.8 6zm-14 2.9s-4.3-6-7.7-4.8c-4.2 4 8 4.9 7.7 4.8zm-48 19.1c1.8.2 15.5-2.2 20.2-7.5 4.8-5.3-24.3 2.2-24.3 2.3s2.7 4.7 4 5.2zm136.7-33.8c.7-1.3-7.3-7-12-4.7-1.2 4.2 12 5.5 12 4.7zM415 215.8c1.5-2.1-3.5-11-13.3-6s10.3 9.5 13.3 6zm-31.1-5.2s2.4-8 8.4-6.4c6.6 5.1-8.1 6.7-8.4 6.4zm-5.8-6c-1-2.2-7.1-.9-14.2 3.8-7.1 4.6 16.3 1.3 14.2-3.8zm18-21.4s6.4-2.9 8.3 0c2.6 4.2-8.3 0-8.2 0zm-5.2-2.8c-1.3-2.5-8.3-2.8-8.1 1-1.2 2.8 9 2.3 8-1zm-16.7 0c-.7-1.5-10.6 0-13.6 6 4.8 2.3 15.8-2.2 13.6-6zm-21.3 6.1s-13 8-13.9 13.9c.4 5 16.3-9.2 16.3-9.2s1.4-5.6-2.4-4.7zm-14.5-7.3c.4-1.6 6.5-5.4 7-5 .5 1.6-5 6-7 5zm4.2 30.6c.3-2.3-15.6-2.1-9.6 5.1 5 6.1 10.7-4 9.6-5zM328 220.3c-.8-1.6-2-5.9-4.2-6.3-1.7 0-11.3 2-12 3.5-.4 1.3 4 9.2 5.4 9.4 1.7.6 10.5-5.8 10.8-6.6zm85.6 53.4c.5-1.7 16.7-7.3 22.3-2 6.6 9-22.7 4.8-22.3 2zm44.6 10.6c3.5-6-11-13.2-17-6.3 2 8.2 14.1 11.2 17 6.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lc.svg
new file mode 100644
index 0000000..b13b885
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lc.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lc" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#65cfff" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M254.8 44.8l173.5 421.6-344 1L254.7 44.8z"/>
+    <path d="M255 103l150 362.6-297.5.8L255 103z"/>
+    <path fill="#ffce00" d="M254.8 256.1l173.5 210.8-344 .5 170.5-211.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/li.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/li.svg
new file mode 100644
index 0000000..cbed5cc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/li.svg
@@ -0,0 +1,43 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-li" viewBox="0 0 512 512">
+  <path fill="#002b7f" d="M0 0h512.1v256H0z"/>
+  <path fill="#ce1126" d="M0 256h512.1v256H0z"/>
+  <g fill="#ffd83d" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" transform="translate(-54) scale(.85333)">
+    <g id="a">
+      <path stroke="none" d="M216.4 122.3l-1.9 62.5h-63.4c-7.8-15.2-14.2-28-14.2-45.5 0-14.6 11.5-26.2 28-26.2 17.5 0 36.8 5.9 51.5 9.2z"/>
+      <g stroke-width="1.5">
+        <path d="M144.5 125.2v36m5-39.7v48m5.2-50.5v57.2m5-58.4v44.9m5.1-45.1v45.3m5.1-47v47m5.1-47v47m5.1-46.5v47m5.1-46.5v46.9m5.1-44v47m5-46.5v52.9m5.2-52.9v47m5-47v47"/>
+        <path fill="#000" d="M176.4 118c10.8 1.7 34.4 12.8 31.7 27.7-3.8 21.2-16.2 12.7-32.6 9.7l-12.4 4.1c-4.5 4.5-11 8.7-15.4 3.2h-7.4v28.8h81.4V122z"/>
+      </g>
+      <circle cx="212.8" cy="113" r="4.9"/>
+      <circle cx="201.7" cy="110.3" r="4.9"/>
+      <circle cx="190.4" cy="107.5" r="4.9"/>
+      <circle cx="179.1" cy="105.6" r="4.9"/>
+      <circle cx="167.8" cy="104.5" r="4.9"/>
+      <circle cx="156.8" cy="105.1" r="4.9"/>
+      <circle cx="146.2" cy="108.7" r="4.9"/>
+      <circle cx="137.3" cy="115.3" r="4.9"/>
+      <circle cx="131" cy="124.4" r="4.9"/>
+      <circle cx="127.9" cy="135.2" r="4.9"/>
+      <circle cx="128" cy="146.3" r="4.9"/>
+      <circle cx="130.2" cy="157.2" r="4.9"/>
+      <path d="M215 119.5l-.5 6.5c-12.3-2-29.7-8.8-46-8.8-15 0-26.6 6-26.6 21.2 0 14.9 6.3 28.5 14.7 42.3l-8.7 4c-7.8-15-14.3-28-14.3-45.4 0-14.6 11.5-29 31.3-29 17.5 0 35.4 6 50.1 9.2z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 444 0)" xlink:href="#a"/>
+    <path d="M222 53.1l-5.2 9.7 5.2 9.6 5.1-9.6L222 53zm0 24.4l-5.2 9.6 5.2 9.7 5-9.8-5.1-9.6zM203.6 75l8.1 5.1 8.1-5.1-8-5.2-8.2 5.2zm20.5 0l8.1 5.1 8.2-5.1-8.2-5.2-8 5.2z"/>
+    <circle cx="222" cy="75.1" r="3.9"/>
+    <circle cx="222" cy="100" r="10.5"/>
+    <path fill="none" stroke-width="1.5" d="M219.3 89.9v6.6a62.5 62.5 0 00-7.4.8m20.2 0a62.1 62.1 0 00-7.5-.8v-6.6m-12.8 12.7a61.4 61.4 0 0110.2-.9c3.4 0 6.8.3 10 .9"/>
+    <path d="M211.8 117.7c-1 17-3 34.5-9.7 47.1l10.8-4.4c3.8-14.3 4.6-32.8 5.7-41.6l-6.8-1.1zm20.4 0l-6.9 1.1c1.2 8.8 2 27.3 5.7 41.6l10.8 4.4c-6.6-12.6-8.6-30-9.6-47.1z"/>
+    <path d="M222 154.7c-13 0-22.5 6-23 21.6-3.2-5.6-16.5-23-29-20.7-7.4 1.4-14 11.7-12.8 23.4-6.2-17.6-24.1-20.5-37.3-10 11.7 9.5 16.9 37.8 26.7 50h150.7c9.8-12.2 15-40.5 26.7-50-13.1-10.5-31.1-7.6-37.2 10 1-11.7-5.5-22-13-23.4-12.4-2.3-25.7 15.1-28.9 20.7-.5-15.5-10-21.6-23-21.6z"/>
+    <g stroke-width="1.5">
+      <path fill="#000" d="M297.1 219c0 5.6-33.6 11.7-75.1 11.7s-75.2-6-75.2-11.7c0-5.5 33.7-8.5 75.2-8.5 41.4 0 75.1 3 75.1 8.5z"/>
+      <circle cx="222" cy="114.4" r="3.5"/>
+      <circle cx="222" cy="122" r="3.7"/>
+      <circle cx="222" cy="130.2" r="4.1"/>
+      <circle cx="222" cy="139.3" r="4.7"/>
+      <circle cx="222" cy="149.4" r="5.1"/>
+      <path fill="#000" stroke="none" d="M220 159.2c-.6 0-1.1.5-1 1.4l.6 4.3c.2 1.5 1 1 1.3 0 .2-1.2.1-2 .2-4.1 0-1.1-.6-1.6-1.2-1.6zm4 0c-.6 0-1.1.5-1.1 1.6 0 2.1 0 2.9.2 4 .2 1.2 1 1.6 1.3 0l.5-4.2c.2-1-.4-1.4-.9-1.4zm-7.7.6a1 1 0 00-1 1c0 1 .3 2.3.4 3.8.2 1.5 1.3 1 1.4 0 0-.8.2-2.2 0-3.9 0-.6-.2-.9-.6-1a.8.8 0 00-.2 0zm11.1 0c-.3 0-.6.3-.7 1a20.1 20.1 0 00.2 3.8c0 1 1.2 1.5 1.3 0 0-1.5.4-2.7.4-3.7 0-.6-.5-1-1-1.1a.8.8 0 00-.2 0zm-15.4 1.7c-.5.1-1 .7-.8 1.3.3 1.3.6 2.7.6 4 0 1.1.9.7 1 0a59.8 59.8 0 00.1-4c0-1-.5-1.4-1-1.3zm19.6 0c-.3.1-.6.5-.6 1.3l.2 4c0 .7 1 1.1 1 0 0-1.3.2-2.7.5-4 .2-.6-.3-1.2-.7-1.3a.6.6 0 00-.3 0zm-59 .2c-.6 0-1 .7-.6 1.5.6 1.4 1.3 2.2 1.9 3.6.5 1.3 1.4.5 1.1-.4l-1.4-3.7c-.3-.7-.7-1-1-1zm98.8 0c-.4 0-.7.3-1 1-.9 1.9-1.2 2.8-1.5 3.7-.2 1 .6 1.7 1.2.4l1.8-3.6c.4-.8 0-1.5-.5-1.5zm-94.8 0c-.5.2-.7.7-.5 1.3.6 1.2 1.3 2.5 1.8 3.8.4 1.1 1.4.8 1-.2l-1-3.7c-.4-1-1-1.3-1.3-1.2zm90.5 0c-.4.1-.8.5-1 1.2-.7 2-.8 2.6-1.1 3.7-.4 1 .6 1.3 1 .2l1.8-3.8c.2-.6 0-1.1-.4-1.3a.6.6 0 00-.3 0zm-85.5 1c-.6.1-1 .9-.6 1.9.4 1.2 1 2.3 1.6 3.7.6 1.4 1.5 1.1 1.3.2-.3-.9-.5-2.3-1.2-4.5-.3-1-.7-1.4-1.1-1.3zm80.8 0c-.4 0-.9.3-1.2 1.3-.6 2.2-1 3.6-1.1 4.5-.3 1 .7 1.2 1.2-.2.6-1.4 1.2-2.5 1.6-3.7.4-1 0-1.8-.5-1.9zm-93.2.7c-.6 0-1 1-.7 1.7.5 1 .9 1.4 1.4 2.6.6 1.2 1.2.3 1-.5-.3-.8-.6-1.7-.8-2.8-.2-.8-.6-1-1-1zm105.6 0c-.4 0-.7.2-1 1l-.7 2.8c-.2.8.4 1.7 1 .5.5-1.2.8-1.5 1.4-2.6.3-.7-.2-1.6-.7-1.7zm-67 2.8c-.7 0-1.3.8-1 1.5.2 1.2.8 2.2 1.1 3.7.4 1.3 1.3.7 1.2-.2a28.7 28.7 0 00-.5-4c-.2-.7-.5-1-.9-1zm28.4 0c-.3 0-.7.3-.8 1a28.7 28.7 0 00-.6 4c0 .9.9 1.5 1.2.2l1.2-3.7c.2-.7-.4-1.5-1-1.5zm-14.2 1.2c-.8 0-.9 1-.9 1.7a12.3 12.3 0 01-2 6.4c-1 1.2-2.3.9-3.5.2a22.3 22.3 0 01-3.3-2.2c-1.4-1-2.4-.4-.8 1.9 4.6 6.6 9.6 12.2 9.6 23 0 1.3.3 1.7.9 1.7s.8-.4.8-1.8c0-10.7 5-16.3 9.6-23 1.6-2.2.6-2.8-.7-1.8a21 21 0 01-3.3 2.2c-1.3.7-2.6 1-3.5-.2a12.3 12.3 0 01-2-6.4c-.1-.7-.2-1.7-1-1.7zm-35.3-1.6a.6.6 0 00-.2 0c-.3.1-.4.4-.3 1l1.1 3.9c.3 1 1.4.7 1.2-.5l-.6-3.1c-.2-.8-.8-1.3-1.2-1.3zm70.6 0c-.5 0-1 .5-1.2 1.3-.4 1.4-.4 1.8-.6 3-.3 1.3.9 1.5 1.1.6l1.2-4c0-.5-.1-.8-.4-.9a.6.6 0 00-.2 0zm-91.6.4c-.6 0-1 .8-.4 1.8.6 1.2 1.7 2.6 2.2 3.5.5.8 1.4.2.8-.8-.6-1-.8-2.3-1.6-3.8a1 1 0 00-1-.7zm112.5 0c-.3 0-.7.2-1 .7-.7 1.5-1 2.7-1.5 3.8-.6 1 .2 1.6.7.8.5-.9 1.6-2.3 2.2-3.5.6-1 .2-1.8-.4-1.8zM134 169.5c-.6 0-.8 1.2-.2 2a19.2 19.2 0 002.6 2.7c.8.8 1-.2.6-1l-1.8-2.7c-.5-.7-.9-1-1.2-1zm175.9 0c-.3 0-.7.3-1.1 1l-1.9 2.7c-.4.8-.2 1.8.7 1a19 19 0 002.6-2.7c.6-.8.4-2-.3-2zm-170.8 1c-.6 0-1 .4-.5 1.3l1.9 3.8c.5 1 2 1.3 1.4-.2l-1.3-3.8c-.3-.7-1-1-1.5-1zm165.8 0c-.6 0-1.3.4-1.6 1.1l-1.2 3.8c-.6 1.5.9 1.2 1.4.2.5-1 1.3-2.5 1.8-3.8.5-.9.1-1.3-.4-1.3zm-175.6.4c-.8 0-.8.7-.1 1.2.9.7 2 1.4 3 2.3 1.3 1 1.7 0 1-.8-.6-.8-1.2-1.6-2.9-2.5-.4-.2-.7-.2-1-.2zm185.3 0c-.2 0-.6 0-1 .2-1.6.9-2.3 1.7-3 2.5-.6.9-.1 1.8 1.1.8 1-.9 2.2-1.6 3-2.3.8-.5.7-1.2 0-1.2zm-109.6.7c-.5 0-.8.5-.7 1.2l1 3.6c.2 1.1 1.5 1.1 1.3 0-.2-1-.3-2.3-.7-3.9-.1-.6-.4-.9-.8-1a.6.6 0 00-.1 0zm33.8 0c-.3 0-.6.3-.8 1-.4 1.5-.5 2.8-.7 3.9-.2 1 1.1 1 1.3-.1l1-3.6c.2-.7-.2-1.2-.6-1.2a.6.6 0 00-.2 0zm-64-2c-.3 0-.5.7-.2 1.7a26 26 0 011.6 9c-.3 1.2-1 1.3-1.9 1a18.8 18.8 0 01-2.8-1.7c-.8-.5-1.7.1-.5 1.1 6 5 10.3 10.7 12 17.6.2 1.4 1.1 1.6.9 0-1.4-8.7-1.7-15.9.4-20.3.8-1.7 0-3.3-1.2-.6-.9 1.8-2.2 2.5-3.3 1a47.9 47.9 0 01-4-7.7c-.2-.7-.5-1-.8-1.1a.3.3 0 00-.1 0zm94.1 0c-.3 0-.6.4-.8 1-.7 2-2.9 6.2-4 7.8s-2.4.8-3.2-1c-1.3-2.7-2-1.1-1.3.6 2.1 4.4 1.8 11.6.5 20.3-.3 1.6.6 1.4 1 0a32.4 32.4 0 0111.8-17.6c1.2-1 .3-1.6-.5-1a18 18 0 01-2.8 1.5c-1 .4-1.6.3-1.9-1-.2-1.2.2-3.9 1.7-9 .2-.8 0-1.5-.3-1.6a.3.3 0 00-.2 0zM144.4 172c-.5 0-1 .4-.7 1.2.4 1.4 1.2 2.8 1.5 3.6.3.9 1.2.5 1-.7l-.5-3.1c0-.6-.7-1-1.3-1zm155.1 0c-.6 0-1.2.4-1.3 1l-.4 3.1c-.2 1.2.7 1.6 1 .7.2-.8 1-2.2 1.4-3.6.3-.8-.1-1.2-.7-1.2zm-136.3-1.7c-.6-.1-.7 1.5-.2 2.2l2.8 3.1c.8 1 1.3.1.8-.7l-2.6-3.8c-.3-.5-.6-.8-.8-.8zm117.5 0c-.2 0-.5.3-.8.8l-2.6 3.8c-.5.8 0 1.7.9.7l2.7-3.1c.5-.7.5-2.3-.2-2.2zm-132 4c-.4 0-.7.2-.5 1 .2 1.2.5 2 .8 3.1.3 1 1 .9 1-.1l-.3-3.2a1.1 1.1 0 00-1-.9zm146.5 0a1 1 0 00-1 .8l-.3 3.2c0 1 .8 1.2 1 .1l.9-3c.2-.9-.2-1.2-.6-1.2zm-133.4 1.4c-.6 0-1.1.7-.4 1.6 1.1 1.5 2.4 2.5 2.9 3 .4.6 1.5.4.8-.7l-2.3-3.5c-.2-.4-.6-.5-1-.4zm120 0c-.2 0-.5.1-.6.4l-2.4 3.5c-.7 1.1.4 1.3.9.8.4-.6 1.7-1.6 2.9-3.1.7-1 .1-1.6-.5-1.6a.9.9 0 00-.2 0zm-140.7 4.1c-.4 0-.6.4 0 1.3a17 17 0 013.3 6.4c.1 1.4-.5 1.4-1.1 1.4-1.9 0-2.8-1.4-4.4-1.8-1.7-.3-2 .5-.8 1.4a53.4 53.4 0 0114.7 13.8c1 1.9 2.3 2.5 1.6.8a23.7 23.7 0 01-2.4-12.6c.5-2.8 1.2-4.6 1.1-6.2 0-1.5-1-1.4-1.3 0l-1 2.8c-.4.5-1.8.8-3-.9a48 48 0 00-5.6-5.8c-.3-.3-.7-.5-1-.6zm161.7 0c-.3 0-.7.2-1.1.6a48.2 48.2 0 00-5.5 5.8c-1.3 1.7-2.7 1.4-3 1a12 12 0 01-1-2.9c-.4-1.4-1.3-1.5-1.4 0 0 1.6.6 3.4 1.1 6.2s0 7.2-2.3 12.6c-.8 1.7.6 1 1.6-.8a53 53 0 0114.6-13.8c1.2-.9 1-1.7-.7-1.4-1.7.4-2.6 1.8-4.4 1.8-.6 0-1.3 0-1.2-1.4.1-1.3 1.8-4.4 3.3-6.4.6-1 .5-1.3 0-1.3z"/>
+      <path d="M150.1 212.7l2 6.1m2-7.3l1.8 6.2m2.6-7l1.2 6.4m2.8-7.1l1.3 6.3m3.8-6.8l1 6.4m4.5-6.4l1.1 6.3m4.3-8.1l.8 6.4m4.2-6.1l.8 6.4m4.1-7l.8 6.4m4-7l.5 6.5m4.8-6.5l.4 6.5m4.4-6.8l.3 6.5m4.9-6.8l.3 6.4m5.7-6.6l.3 6.5m79 .2l-2 6.1m-2-7.3l-1.7 6.2m-2.6-7l-1.2 6.4m-2.8-7.1l-1.3 6.3m-4-6.8l-1 6.4m-4.4-6.4l-1.1 6.4m-4.2-8.2l-.8 6.4m-4.3-6.1l-.8 6.4m-4-7l-.9 6.4m-4-7l-.5 6.5m-4.8-6.5l-.4 6.5m-4.3-6.8l-.3 6.5m-5-6.8l-.2 6.4m-5.8-6.6l-.2 6.5m-7.2-7v7.2"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lk.svg
new file mode 100644
index 0000000..2b11215
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lk.svg
@@ -0,0 +1,22 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-lk" viewBox="0 0 512 512">
+  <path fill="#ffb700" d="M0 0h512v512H0z"/>
+  <path fill="#ff5b00" d="M21.3 256L91.4 21.3h70.1v469.4h-70z"/>
+  <path fill="#005641" d="M21.3 21.3h70.1v469.4h-70z"/>
+  <path fill="#8d2029" d="M182.7 21.3h308v469.4h-308z"/>
+  <path id="a" fill="#ffb700" stroke="#000" stroke-width=".9" d="M463.4 454.9s2.9 5.9 6.1 8.3c4.8 3.5 14.5 3.3 18.6 7.4 5 5-.4 11.4-.3 12l.3 3.4s-3.4 0-4.8.3c-2.1.3-3 2-6.9 1.8-9.9-.7-9.5-9.6-10-17.2-.5-3-1.7-6.7-2.3-9.6-.6-2.5-.7-6.4-.7-6.4z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 676.3 0)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="matrix(1 0 0 -1 0 512)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="rotate(180 338.1 256)" xlink:href="#a"/>
+  <g transform="matrix(.8 0 0 .8 0 3.2)">
+    <use width="100%" height="100%" stroke="#000" stroke-width="5.6" xlink:href="#b"/>
+    <g id="b" fill="#ffb700">
+      <path d="M363.5 415.8l2.3-1.4 1 1.4c1.3 1.8 5 1.7 7.4 0l1.9-1.5 1.6 1.4c2 1.9 5.8 1.9 8.3 0 1.7-1.2 2-1.3 3-.3.7.6 2.7 1.2 4.4 1.5 3.2.4 3.2.4 5-2.4 1.6-2.3 1.8-3.2 1.5-5.5a59.4 59.4 0 01-.6-5.3c-.2-2.6-.1-2.6 3.6-4a50.5 50.5 0 005.4-2c1.5-.9 5.7-5.8 5.7-6.8 0-.2-1.6-.6-3.6-.8-8-1-9.3-5.2-4.1-13 8.3-13 13.4-25.5 13.4-33.4 0-3.6.3-4.8.7-4 1.9 3.1-1.5 16.4-6.5 26l-2 3.8 1.9-.4c1-.3 7.4-3 14-6 18.2-8.2 24.4-9.8 36.2-9.3 9.9.4 14 2.3 21 9.6 3.7 4 7.3 6.7 13.8 10.8 13.8 8.6 14.4 9.4 15.1 19.6.7 10.3.3 10.9-7.5 12.6-6.7 1.5-10.9 4.6-12 9-.6 2.2.7 2.3 4 .1l2.5-1.6 1.1 1.6c1.5 2.1 4.5 2.1 7 0l2-1.5 2 1.5c3 2.5 7 1.9 8.2-1.2.2-.5.8-.4 2 .7 2.3 2 8 2.8 8.6 1.2.2-.6-.2-2-1-3.2-3.3-5-4.4-7.3-4.4-10 0-3.8 1-5.7 5.4-8.7 5.2-3.8 6.8-8.6 2.8-8.6-2.4 0-4.9-2.2-6.5-5.7-3.2-7.2-2.5-15.2 2.3-28.6a57.6 57.6 0 005.4-25.2c0-7.4-.2-8.6-1.8-12.7a45.4 45.4 0 00-4.6-8.1l-2.8-3.7 3.5-3c10.8-8.9 8.6-23.5-4.4-29.1-4-1.8-5-1.9-12-1.9-4 0-10.5.6-14 1.3a98.2 98.2 0 01-14.2 1.2c-6.8 0-8-.2-10.6-1.6-2.7-1.4-3.2-2.1-3.7-5.5a2 2 0 00-1.1-1.5c-1-.3-5.2 3.4-5.8 5-.4.9-.6.8-1.5-.3a13.4 13.4 0 01-2-3.6c-1-3.3.3-5.7 4.2-7.6l3-1.4-1.8-1.1c-3.6-2.3-9.8-.7-12 3-.7 1-1.4 2-1.6 2-.2 0-1.4-1-2.6-2.3-4.7-4.6-3.1-11.4 3.2-13.4 3.3-1.1 6.3-.3 6.9 2 1 3.3 3.8-1.1 3.3-5.2-.3-2.7-.3-2.8 1.6-2.8 2.6 0 8 3.4 9.8 6 2 3.1 1.8 8-.4 11.6l-1.7 2.8 2.3-.4c3.2-.7 6.4-2.7 8-5.2a12 12 0 00.4-10.4c-1.5-2.7-1.3-3.1.9-2.2 3.6 1.5 5.6 3.2 7 6.1 1.4 2.6 1.5 3.2.8 6a17 17 0 01-2.2 4.8c-1.2 1.6-1.3 1.9-.3 1.9 1.8 0 5.4-1.7 6.7-3 .7-.8 1.7-2.5 2.2-4l1-2.5 1 2c1.5 2.7 4.5 5.2 8.1 6.8 3.9 1.6 5.5 1.7 3.5.2-1.4-1-4-8.5-3.1-9.2a51 51 0 0111.7 9c5.7 5.1 9.3 6.8 14.5 6.8 6.7 0 10.6-5.8 7.6-11.3-1.7-3.2-5.6-3.7-8-1-1 1.3-1.3 2.3-1 3.7.4 1.6.3 1.8-1.2 1.8-2 0-5.8-2.5-12.6-8.2a102 102 0 00-32.1-18.7 70.4 70.4 0 00-24.3-1.3c-6.4 1.2-14 4.9-18.2 8.8-7.3 7-7.4 16.3-.3 24.8l2 2.4-1.3 2.2a9.3 9.3 0 00.4 10.4c1 1.4 2 2.5 2.3 2.5.2 0 .4-.9.5-2 .2-2.7 1.4-4.5 3.4-5.2 1.8-.7 3-.3 11.2 3 8.7 3.4 23 3.6 38.2.6a42.6 42.6 0 0120 .2c7.2 3 8.8 10.7 3.6 16.5-2.3 2.6-4.4 3.6-11.7 5.6a54.3 54.3 0 01-19.5 1.5c-10.8-.1-14.7.1-19 1-4.9 1-7.8 1.1-21.8.8l-16.3-.4 1.8 1.4a22 22 0 003.1 2.3c1.3.7 1.2.8-.6 1.5-1 .4-3.4.7-5.3.7h-3.3l-.4 2.8a10 10 0 000 4c.4 1 .2 1.2-.8.8-.7-.3-2.6-.8-4.3-1.1a26.7 26.7 0 01-5-1.6c-1.9-1-2.1-1-2.8.3-.6 1-6.2 5.2-7 5.2a26.7 26.7 0 00-2.2-7.5c-1-2.1-1.9-4.5-2.2-5.2-.3-1.1-.5-1.2-1-.3-.3.5-.7 2-1 3.2a15.5 15.5 0 01-1.8 4.6l-1.5 2.2-1-1.9c-1-2-2.6-4.2-3.2-4.2-.2 0-.5.6-.7 1.5-.5 1.6-4.4 6.3-5.4 6.3-.3 0-.6-1.3-.6-3 0-1.5-.3-2.9-.7-2.9-.4 0-.7.5-.7 1 0 1.2-3.3 5-4.5 5-.4 0-1.2.4-1.7 1-1.2 1.3-2.2 1.1-1.7-.4a9 9 0 00-.4-3.8l-1-3.2c-.2-.5-1.4-.3-4 .5-4 1.3-5.4 1-3.3-.6.8-.6 2-2.7 2.6-4.6.7-2 1.7-3.7 2.2-3.9.7-.2.7 0-.2 1.2a5.7 5.7 0 00-1.1 2.6c0 .5-.5 1.8-1 2.9-.6 1-1 2-.9 2.1s1.7-.5 3.5-1.3l3.2-1.6v1.4c0 .8.4 2.8.9 4.5l.9 3 2.2-1c2.2-1 4.3-4.6 4.3-7.5 0-1.4.8-1.2 1.2.3 0 .4.6 2.1 1 3.7l1 2.8 1.5-1.8c.9-1 1.9-3 2.3-4.3.8-2.4 2-3.5 2-1.7 0 1.2 3.4 5.8 4 5.4.4-.2 1-1.9 1.5-3.8 1-4 2.5-6.6 3.5-6 .4.2.5.6.3 1-.2.2.6 2.8 1.8 5.6a2557.7 2557.7 0 012.6 6.3c.4 1 .8 1 3.3-1.3 1.5-1.4 3-2.9 3.1-3.4.3-.8.6-.7 2 .2a25 25 0 009.5 2.8c.2-.2.4-2 .4-4l.1-3.7 2 .4c1 .3 3.3.3 5 0l3-.4-2.7-2c-1.5-1-3-2.3-3.4-2.9-.3-.6-1.7-1.2-3.2-1.3-4.1-.4-11.4-4.4-11.4-6.4 0-.4 1 .3 2.2 1.4 2.8 2.5 6.6 4 10 4h2.4l-1.5-2a11.9 11.9 0 01-2-5.2c-.2-3-.5-3.4-3.6-5.5a35.2 35.2 0 01-5-4.3l-1.7-1.9-.9 2.3c-.5 1.3-1 2.3-1.3 2.3-.2 0-1.2-.8-2-1.7a7 7 0 00-2-1.6c-.3 0-1 1.2-1.8 2.7l-1.4 2.7-1-1.5a23.8 23.8 0 00-3-3.4c-1.2-1-1.7-1.8-1.3-1.8.4 0 1.7 1 3 2.3l2.2 2.3 1-1.7a6 6 0 00.5-3.8c-.4-1.8-.3-1.9.3-.7a16 16 0 003 3l2.2 1.8 1.5-2.7c1.5-2.8 1.5-2.8 2.1-1.1 1 2.1 7.5 7.5 13 10.6 1 .5.6-1.1-1-5a12.7 12.7 0 01-.8-4c0-1.8-.5-2.6-2.8-4.4a10.9 10.9 0 01-5-8.4c-.3-1.7-.9-3.5-1.4-4.1-.6-1-.8-.4-.6 2.6.2 2.1-.1 4.7-.6 5.8l-.8 2-.6-1.7c-.4-.9-2-2.5-3.5-3.5s-2.6-2-2.4-2.2c.2-.2 1.8.7 3.5 2 2.7 2.1 3.2 2.3 3.6 1.4.4-1 0-5.6-.8-8.8-.4-1.6-.4-1.6 1.6.4 1.4 1.4 2.2 3.2 2.9 6.2.8 3.8 1.2 4.5 4.7 7.6 2.1 1.9 4 3.3 4.1 3.2.2-.2.4-5 .6-10.8.4-11.1 0-13.8-2.7-17.2l-1.4-1.8 2.2-2.3a16 16 0 004.7-8.8l.4-2.7-2.4 2.3c-2 1.9-3 2.3-5.3 2.3s-3.2-.4-4.7-2a20 20 0 00-8.3-4.8c-1.2-.4-1.6-.2-1.6.6 0 .6-.6 2.2-1.4 3.7l-1.4 2.6-3-3c-1.9-1.7-4-3.2-5.7-3.6-4.1-1-4.3-1-4.3 2.1 0 4.7-2 5.6-5.6 2.5-2.8-2.4-5-3-10.3-2.3l-4 .4.7 1.8c.6 1.5.5 2.2-.8 3.9-2.1 2.8-4.8 4-9 4-2 0-4.4.4-5.4.9s-3.6 1-5.7 1.2c-2 .2-4.3.6-5 .8-1 .4-1 0-.7-2.2.5-3.4-2-6-5.7-6-4.9 0-7.1 4.4-5.2 10.2a44.6 44.6 0 011 3.8 23 23 0 005.2 6.6c2.6 2.6 5 5.3 5.4 6a9 9 0 003 2.5l2.2 1.2-.3-2.4c-.3-2.6.2-3 1.6-1.1.5.6 1.8 1.7 2.8 2.3 1.7 1 2 1 2 .2 0-.6.3-1.9.7-2.9l.7-1.8 1.3 2.5c.7 1.4 3 4.5 5.1 7 4.1 4.7 6.7 10 5.4 11.2-.6.5-2 .5-5-.1-2.2-.4-5-.7-6.2-.5-2.3.3-2.5 0-1-1.8 1.5-2 1.2-2.3-1.8-2.3-3.5 0-12.2-1.7-15.6-3-3.2-1.3-4-1-5 2.1l-1.7 5.6-1 3 3.6-.3a37 37 0 005.5-1 6 6 0 012.2-.3c.2.1-.3 1.3-1 2.7l-1.4 2.4 2.2-.4c1.2-.3 3-.9 4-1.4 1.8-.8 2-.8 3.4 1.5 1.7 2.7 3 2.6 3.3-.3.3-3 1.3-2.6 3.2 1.4 1.8 3.8 3.6 5.2 4 3 .1-.8 1-2 2.1-2.8 2.2-1.5 3.8-1 4.7 1.3 1 2.5-1.2 5-7.4 8.8a43 43 0 00-21.7 31c-1.9 11.8 4 24 15.6 32.9 5.6 4.2 14.5 8.6 13.9 7-2.4-7.3-2.3-21 .1-23.3.4-.4.3 1-.3 3.1-2 7.9-1 14.1 4 28.7 4.4 13.2 3.8 18.9-2.6 22.6-2 1.2-3.3 1.4-8.8 1.3-6 0-6.7 0-8.6 1.6a15.7 15.7 0 00-4.3 8.6c0 1.3 1.4 1.1 4-.4z"/>
+      <path d="M460.5 415.5l2.5-1.6 1.7 1.6c2.2 2.1 4.9 2 7-.1 1-1 1.8-1.6 1.9-1.5l.9 1.6c.5.9 1.6 1.3 3.6 1.5 2.3.1 3 0 4-1.4l1-1.7 2.5 1.6c6.8 4.4 10.4-.2 7.3-9.3-1.5-4.6-.6-7.2 4.3-13 2.1-2.5 3.8-5.2 3.8-6 0-1.1-.4-1.3-3.2-1.2-2.6 0-3.4-.3-4.8-1.8-2.3-2.5-2.1-5.4.4-8.6l2-2.5-3.6-2.4a59.7 59.7 0 01-8-7.1 25.7 25.7 0 00-17.5-9l-4.7-.5v3.6c0 4.5 2.2 8.9 8 16.3 6.6 8.4 7 9.7 7.3 20.7l.3 9.3-2 1.8c-1.7 1.6-2.4 1.9-8 2.2-5.3.3-6.5.6-8 2a8.7 8.7 0 00-3.4 5.3c-.3 1.5-.2 1.8.9 1.8.7 0 2.4-.7 3.8-1.6zm-142.2-24a5.8 5.8 0 001-3c0-1 .6-1.4 3.2-1.8l3.1-.4-2-1.7c-2.5-2-2.8-3.5-.6-3.5s5.8-2.2 6.4-3.9c.3-.8 0-1.8-.4-2.3-1.2-1.4-3.5-1.2-3.9.4-.5 1.6-1.2 1.6-3 0-2.5-2.5-2.6-7.6 0-10.6 1.1-1.4 1.1-1.4-.4-2.9-1.6-1.6-2.8-4.6-2-5.4.2-.2 1.5 0 2.8.5 2 .6 2.7.6 3.5 0 2.3-1.9-.2-4.3-4-3.7-1.6.2-2.2 0-2.4-.8-.2-.6-1.5-1.4-3-1.8-2.7-.7-2.7-.7-2.7 1.2 0 2-1.2 2.4-3.4 1.1-1.8-1-3.5-.2-3.5 1.7 0 1.8 1.7 2.6 5 2.4 2.4-.1 2.5 1.7.2 4.3l-1.7 2 1.3 1.9c2 2.8 1.8 7.5-.3 9.9l-1.7 1.8-1.1-1.5c-1.6-2-3.7-1.9-4.3.3-.3 1.4 0 2 1.8 3.6 1.2 1 3 1.8 3.9 1.8 2.3 0 2.2 1.9-.2 3.7l-2 1.5 3 .4c1.6.3 3 .7 3 1 0 1.3 2 5.2 2.6 5.2.4 0 1.2-.7 1.8-1.5z"/>
+      <path d="M356.5 374.9c2.7-1 8.5-6 8.5-7.1 0-.4-1.6-2.2-3.6-4-4-3.6-8.5-9.9-9.7-13.5-.6-2-3.5-5.2-11.7-13.2l-10.9-10.5-3.1.8c-1.8.4-3.9.8-4.7.8-1.5 0-1.5 0 .5 1.6l2 1.6 3-1.6c2.7-1.6 2.8-1.6 3.1-.3.2.7-.2 2-1 2.9-.7.9-1.1 2-1 2.3.3.3-.4 1-1.5 1.6-2 1-3.5 4.3-1.9 4.3 1.5 0 4.7-4 4.3-5.3-.2-.7 0-1.4.2-1.6 1.3-.7 1.2 2.4 0 4-.8.8-1.2 1.8-1 2.2.2.3-.5 1-1.6 1.6-2 1-3.5 4.3-1.9 4.3s4.7-3.8 4.4-5.2c-.2-.7-.2-1.5.1-1.7.9-.4 1.3 2 .6 3.2a2.3 2.3 0 000 2.2c.7 1.3 0 3.7-1.3 4.5-.5.3-.2 1 1.2 2 2 1.4 2 1.6 2 8 0 5.4.2 6.8 1.2 7.7 1 1 1.2 1 1.2 0s2-2.4 3.5-2.4c.5 0 3.4 2.5 6.5 5.5s6.4 5.7 7.3 5.8l2.2.4c.3 0 1.7-.3 3.1-1zm-33.3-26.1c0-1.7-3.6-3.6-7.9-4-3.5-.5-3.5-.4-3.5 1.3 0 1.4.5 2 3 3 3.8 1.7 8.4 1.5 8.4-.3z"/>
+      <path d="M327.1 348.6c1.8-1.6 2.6-3.4 1.5-3.4-1.2 0-4.4 2.8-4.4 4 0 1.6.6 1.5 3-.6zm-3.7-5.1c.1-1-.5-1.6-2.3-2.5-4-1.7-8.6-2.6-9.7-1.7-2.1 1.7-.7 3.9 2.6 4.3 1.4.1 3.2.5 4.1.9 2.6 1 5 .5 5.3-1zm0-5.3c.2-1.3-.7-1.8-8-4.4-5.5-2-7.9-1-6.1 2.3.6 1.1 1.6 1.6 3.9 2 1.7.2 4 .7 5.1 1.1 3 1 4.8.6 5-1zm3.6-4.9c1.1-1.1 2-2.4 2-3 0-1.5-4.3 1.3-4.9 3.3-.6 2.3.5 2.2 3-.3zm-3.6-.3c.2-1.6-2.4-3-7.6-4.1-3.9-.9-5.6-.4-5.3 1.4.2 1 1.5 1.7 5 2.8 5.9 1.8 7.6 1.8 7.9-.1zm5-7.4c6.8-3 7.3-10.5 1-12.5-2.6-.8-4.2-.3-5.2 1.4-.8 1.4-.3 3.8.7 3.8.4 0 .7.5.7 1 0 2.7-10.2 3.8-14.4 1.7-1.5-.7-2-2.7-.9-2.7 1 0 1.6-2 1.1-3.3-.6-2-2.6-2.6-5.3-1.8-6.3 1.6-6.1 9 .3 12a33.6 33.6 0 0022 .4z"/>
+      <path d="M324.3 319.8c.4-.4.2-1-.4-1.4-1.4-1.1-1.3-2.8.2-4.7 1.2-1.4 1.3-3.6 1.7-25.1.7-37.1 3.5-65 7.1-71.8 1.5-2.6 1.3-2.6-2.5 0a36 36 0 00-11.7 13.6c-6.2 11.5-8.3 27-8.3 60.2 0 18.8.1 21.3 1.2 23 1 1.8 1 2.4.4 4.2-.5 1.1-.7 2.3-.5 2.5 1.4 1.3 11.4 1 12.8-.5zm56.1-35.4c.3-.3-.2-2-1-3.6-1.2-2.6-1.7-3-3.4-3a65 65 0 01-23-6.4c-5.1-2.3-7-2.8-7.5-2.2-1.6 1.5 1 5 5 6.9a64 64 0 0018.3 3.7c2.7 0 2.8 0 1.2 2.3l-1 1.6h3l5 .6c3 .7 3 .7 3.4.1z"/>
+      <path fill="#000" d="M412 301.1c0-1-2.9-3.5-5.7-5.2-2.3-1.3-2.7-1.4-2.7-.3 0 1.6-1.4 5.7-2 5.7-.3 0-.8-.8-1-1.7-.3-1-1.4-3-2.5-4.3l-2-2.5-1.4 2.3c-1.4 2.2-3.9 4.3-5 4.3-.2 0-.3-1.2 0-2.5.1-1.6 0-2.8-.5-3-.4-.3-.8-.2-.8.2 0 .8-3.4 4.6-4 4.6-.4 0-.8-1-1-2.4l-.8-4.8c-.2-1.2.3-.4 1 2l1.6 4.1 1.6-2.5a11 11 0 001.6-3.4c0-.5.3-.7.7-.5.4.2.9 1.9 1.1 3.7l.5 3.4 1.8-2a28.8 28.8 0 002.6-3.2c.7-1.2.8-1.2 2.3 0 .8.8 2.1 2.5 2.9 3.9s1.5 2.4 1.6 2.3l.6-3.2.4-3c.1-.5 5.4 3 7.4 4.7 1.2 1.1 2.4 1.9 2.6 1.7.2-.2.4-1.8.4-3.7 0-2.8-.3-3.6-2-5.1-2-1.8-2-1.8-2.8-.5-1 1.7-2.1 1.7-2.1 0 0-1.2-3.8-5.9-4.7-5.9-.3 0-1.1 1-1.8 2.3s-1.5 2.3-1.7 2.3c-1 0-6.3-6-6.3-7 0-.8.4-.6 1.3.8a21 21 0 003.1 3.6c2 1.8 2.8 1.4 3.6-2.1.3-1 .7-1.8 1-1.8.8 0 5.4 4.9 6 6.5l.7 1.6.5-1.8c.6-2.2 1.3-2.2 2.3-.2.4.8 2.4 2.6 4.4 3.8l3.7 2.4.7-2.4c.4-1.3 1-2 1.2-1.6.4.5-.6 4.5-1.3 5.3 0 .1-1.3-.6-2.6-1.5l-2.5-1.8v3.2c0 1.7-.2 3.8-.4 4.6-.5 1.6-1.7 2-1.7.6zm-18.5-25.4c-4.4-3.6-5-4.4-5-6.2l.1-1.8.3 1.7c.2 1 1.4 2.6 2.8 3.8l2.6 2 1.5-1.8c.9-1 1.6-2.2 1.6-2.6 0-1.2.2-1.1 3.2 1.5 2.6 2.3 2.7 2.3 3 .8.3-.8.2-2.4 0-3.5-1-3-.8-3.4.5-1.6l2.4 2.8c1 1.1 1.1 1.1 1.5-.3.3-.9.5-2.4.5-3.4v-1.9l2.3 2.7c2.3 2.6 2.5 2.7 3.1 1.4.5-.7.8-2.4.8-3.7 0-1.8.2-2.2.6-1.6.8 1.2.3 4.2-1.1 6.8l-1 2-1.3-2.1c-1.7-2.6-2.3-2.6-3.3.2-1 2.7-1.7 2.9-2.7.8-.6-1.3-.8-1.1-1.2 1.7l-.5 3-3-2.3-3-2.3-1.5 1.5c-.7.9-1.3 2-1.3 2.4 0 1-.8 1-1.9 0zm39-13.6c-1.5-1.4-2.6-2.8-2.4-3 .3-.3.5-.4.6-.2a67 67 0 003 3c3.4 3.6 2.7 3.7-1.1.2zm-52-5.4c-1.4-2-1.3-3.2.5-5.4 1.2-1.5 1.8-1.7 4-1.4 1.5.1 4.6 1.4 6.9 2.8a21.2 21.2 0 0011 3l-1.7-2.8c-2.2-3.3-2.2-3.7.4-1.7 2.6 2.1 5.7 2.7 12.7 2.5l3.4-.1-2-2c-2.7-2.7-1.9-3 1.2-.3 2.8 2.5 2.7 2.7-3.4 3.3a23 23 0 01-7.6-.5c-3.4-1-3.6-.9-2.9.2.4.7 1 1.2 1.3 1.2.4 0 .7.4.7.8 0 1.3-7.4.1-11-1.6-8-4.1-9-4.5-11-3.9a4.3 4.3 0 00-2.4 2.3c-1.3 3.3 3.4 5.9 5.3 3 .6-.9.5-1.4-.5-2.5-1.4-1.4-1.2-1.6.6-1 1.3.5 1.4 3.6.2 4.8-1.3 1.3-4.5 1-5.7-.7z"/>
+      <path fill="#000" d="M412.4 248.6c-1-1-.2-1.2 4.3-1.3 5.6-.1 9-1 13-3.6 3.2-2 4.1-1.6 1 .5-2.7 2-7 3.4-11.3 3.8l-5.1.7c-.8.2-1.7.1-2-.1z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lr.svg
new file mode 100644
index 0000000..0ae34e7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lr.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lr" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M0 0h767.9v512H0z"/>
+    <path fill="#006" d="M0 0h232.7v232.8H0z"/>
+    <path fill="#c00" d="M0 464.9h767.9V512H0z"/>
+    <path fill="#c00" d="M0 465.4h767.9V512H0zm0-92.9h767.9v46.2H0zm0-93.2h766V326H0zM232.7 0h535.1v46.5H232.7zm0 186h535.1v46.8H232.7zm0-92.7h535.1v46.5H232.7z"/>
+    <path fill="#fff" d="M166.3 177.5l-50.7-31-50.4 31.3 18.7-50.9-50.3-31.4 62.3-.4 19.3-50.7L135 95h62.3l-50.1 31.7 19.1 50.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ls.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ls.svg
new file mode 100644
index 0000000..e71bb5b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ls.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ls" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#009543" d="M0 358.4h512V512H0z"/>
+  <path fill="#00209f" d="M0 0h512v153.6H0z"/>
+  <path stroke="#000" stroke-width="1.7" d="M257.6 163.1c-3 0-5.8 3.3-5.8 3.3l.3 34.5-11 11.5h9l-.2 19.7-52.2 70.4-7.7-2.7-13.5 28.8s33.4 20.9 81.8 20.3c53.2-.7 82-21.3 82-21.3l-13.9-28.4-6.8 3-53-70v-20.4h8.8l-12-11.3.1-34.4s-3-3-5.9-3z"/>
+  <path fill="none" stroke="#000" stroke-width="8.5" d="M275.8 245.8h-36.1s-13.1-27.6-11-47c2.2-19.6 13.4-28.9 28.4-29 17.6-.3 26.8 8.6 29.6 28.3 2.8 19.5-10.9 47.7-10.9 47.7z"/>
+  <path fill="#fff" d="M194.5 311.6c-.6.8-5 9.4-5 9.4l7.5-1.6-2.5-7.8zm4.3 11.2l-7.9 2.6 9.5 3.7-1.6-6.3zm3.6-11l3.9 11.6 9.6-2.8-2.5-5.5-11-3.3zm6 15.7l1.4 4.7 12.8 3.2-5-10.8-9.1 3zm14.2-9.8l4.5 10.8 9.7-3.7-3.2-4.8-11-2.3zm6.3 14.7l1.6 4.2 15 2.1-6.4-9.8-10.2 3.5zm14.4-11.6l5.5 9.7 14-5.1-1.6-3.8-18-.8zm8 13.2l3 5.1 17.3-.6-6.5-9.6-13.8 5.1zm18.3-12.8l4.8 8 11-5.2-3-4.3-12.8 1.5zm18.1 6.1l-11 5.5 3 4.8 14.7-2.4-6.7-7.9zm3.6-8.4l5.7 7 9.2-7.2-3.1-3.4-11.8 3.6zm16.9 3.7l-8.9 6.7 2.4 4.1 12.2-3.1-5.7-7.7zm12.2-14l2.2 3.2-6.1 9-6.3-8 10.2-4.2zm4.1 7.9l3.8 7.5-7.5 2.5-.6-3.5 4.3-6.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lt.svg
new file mode 100644
index 0000000..aa96cf3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lt.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lt" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt" transform="scale(.51314 1.0322)">
+    <rect width="1063" height="708.7" fill="#006a44" rx="0" ry="0" transform="scale(.93865 .69686)"/>
+    <rect width="1063" height="236.2" y="475.6" fill="#c1272d" rx="0" ry="0" transform="scale(.93865 .69686)"/>
+    <path fill="#fdb913" d="M0 0h997.8v164.6H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lu.svg
new file mode 100644
index 0000000..6293671
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lu.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lu" viewBox="0 0 512 512">
+  <path fill="#00a1de" d="M0 256h512v256H0z"/>
+  <path fill="#ed2939" d="M0 0h512v256H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lv.svg
new file mode 100644
index 0000000..5556de1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/lv.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lv" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#981e32" d="M0 0h512v204.8H0zm0 307.2h512V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ly.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ly.svg
new file mode 100644
index 0000000..fe0ed81
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ly.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ly" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path d="M250 12h500v500H250z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-256 -12.3) scale(1.024)">
+    <path fill="#239e46" d="M0 12h1000v500H0z"/>
+    <path d="M0 12h1000v375H0z"/>
+    <path fill="#e70013" d="M0 12h1000v125H0z"/>
+    <path fill="#fff" d="M544.2 217.8a54.3 54.3 0 100 88.4 62.5 62.5 0 110-88.4M530.4 262l84.1-27.3-52 71.5v-88.4l52 71.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ma.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ma.svg
new file mode 100644
index 0000000..85c99b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ma.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ma" viewBox="0 0 512 512">
+  <path fill="#c1272d" d="M512 0H0v512h512z"/>
+  <path fill="none" stroke="#006233" stroke-width="12.5" d="M256 191.4l-38 116.8 99.4-72.2H194.6l99.3 72.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mc.svg
new file mode 100644
index 0000000..d38822d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mc.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mc" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#f31830" d="M0 0h512v256H0z"/>
+    <path fill="#fff" d="M0 256h512v256H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/md.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/md.svg
new file mode 100644
index 0000000..86b2a96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/md.svg
@@ -0,0 +1,71 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-md" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#00319c" d="M0 0h170.7v512H0z"/>
+    <path fill="#ffde00" d="M170.7 0h170.6v512H170.7z"/>
+    <path fill="#de2110" d="M341.3 0H512v512H341.3z"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M173.6 691v63.7c0 3.6 0 7.1-3.5 7.1-3.6 0-7.1 7-7.1 10.6 0 7.1 3.5 10.7 7 10.7h32c3.5 0 7-3.6 7-10.7-.2-3.7-3.5-10.6-7-10.6-3.6 0-3.6-3.5-3.6-7v-63.9" transform="matrix(.46695 -.29552 .30926 .4462 -5.1 64.5)"/>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M177.2 696.3c0 24.4-9.6 44.3-21.3 44.3-11.7 0-21.3-19.9-21.3-44.3S144.3 652 156 652s21.3 19.8 21.3 44.3z" transform="matrix(.42858 -.34452 .36055 .40954 -29.7 77.3)"/>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M173.6 691v63.7c0 3.6 0 7.1-3.5 7.1-3.6 0-7.1 7-7.1 10.6 0 7.1 3.5 10.7 7 10.7h32c3.5 0 7-3.6 7-10.7-.2-3.7-3.5-10.6-7-10.6-3.6 0-3.6-3.5-3.6-7v-63.9" transform="matrix(.48902 .26089 -.27302 .46728 313.4 -58.3)"/>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M421.6 701.6h-28.3c-1 1-9 54-17.7 74.4-10.6 24.8-42.5 46.7-42.5 46.7s19 6 24.8 10c1.4-.4 31.8-7.1 35.4-46 3.5 38.9-21.3 56.6-21.3 56.6s35.5 10.6 35.5 35.5c0-24.8 35.4-35.5 35.4-35.5s-17.8-17.7-21.3-56.7c7 39 34 45.7 35.5 46 5.7-3.9 24.7-10 24.7-10S450 800.9 439.4 776c-8.7-20.3-16.8-73.5-17.7-74.4z" transform="matrix(.56007 0 0 .53518 29.7 -86.3)"/>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M336.6 467.7l53.2 17.7a38 38 0 0035.4-35.4c.6-39.4-14.2-53.2-17.7-53.2l7-7L404 379s3.6-18.4 39-17.7c35.4.7 35.4 17.7 35.4 35.4 0 17.8-17.7 17.8-17.7 53.2a38.1 38.1 0 0035.5 35.4l53.1-17.7V645H336.6V467.7z" transform="matrix(.56007 0 0 .53518 9.8 -56)"/>
+  <g fill="none" stroke="#000">
+    <path stroke-width=".6" d="M302.2 292.2l14.6 15 14.7-15 14.6 15 29.3-15 14.3 15.8 15-15.8 21.6 15.8 22.3-15.8 14.6 15 14.7-15" transform="matrix(.1355 0 0 .38018 203 87)"/>
+    <path stroke-width=".3" d="M432.3 435.8l-7.1 39m10.6-39v39m7.1-39v39m7.1-39l3.5 39m3.6-39l3.5 39" transform="matrix(.56007 0 0 .53518 9.8 -56)"/>
+  </g>
+  <g stroke="#000" stroke-width="3.1">
+    <path fill="#a77b3b" fill-rule="evenodd" d="M318.9 361.4c35.4 17.7 35.4 53.2 35.4 70.9-1.2 16.1 0 354.3 0 354.3s-2.3-20-17.7-35.4L319 733.5l-17.7-17.7c-13-11.8-17.7-35.5-17.7-53.2v-248s0-17.8 35.4-53.2z" transform="matrix(-.56007 0 0 .53518 357.1 -56)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.56007 0 0 .53518 357.1 -131.8)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.56007 0 0 -.53518 357.1 492)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.56007 0 0 .53518 357.1 -94)"/>
+    <path fill="none" d="M301.4 557l-.2 158.8" transform="matrix(-.56007 0 0 1.01529 357.1 -399.6)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(-.56007 0 0 .91125 347.3 -316)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(-.56007 0 0 1.0208 337.4 -384.6)"/>
+  </g>
+  <g stroke="#000" stroke-width="3.1">
+    <path fill="#a77b3b" fill-rule="evenodd" d="M318.9 361.4c35.4 17.7 35.4 53.2 35.4 70.9-1.2 16.1 0 354.3 0 354.3s-2.3-20-17.7-35.4L319 733.5l-17.7-17.7c-13-11.8-17.7-35.5-17.7-53.2v-248s0-17.8 35.4-53.2z" transform="matrix(.56007 0 0 .53518 158.7 -56)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.56007 0 0 .53518 158.7 -131.8)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.56007 0 0 -.53518 158.7 492)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.56007 0 0 .53518 158.7 -94)"/>
+    <path fill="none" d="M301.4 557l-.2 158.8" transform="matrix(.56007 0 0 1.01529 158.7 -399.6)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(.56007 0 0 .91125 168.5 -316)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(.56007 0 0 1.0208 178.4 -384.6)"/>
+  </g>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="3.1" d="M177.2 696.3c0 24.4-9.6 44.3-21.3 44.3-11.7 0-21.3-19.9-21.3-44.3S144.3 652 156 652s21.3 19.8 21.3 44.3z" transform="matrix(.51699 .20584 -.21541 .49401 290.2 -73.2)"/>
+  <path fill="red" fill-rule="evenodd" d="M198.4 203.8h119v56.9h-119z"/>
+  <path fill="#564dff" fill-rule="evenodd" d="M198.4 260.7h119V289c0 19-29.7 19-59.5 38-29.8-19-59.5-19-59.5-38v-28.4z"/>
+  <path fill="none" stroke="#ff0" stroke-width="2.5" d="M336.6 485.4h212.6V645c0 35.4-53.1 35.4-106.3 70.9-53.1-35.5-106.3-35.5-106.3-71V485.5z" transform="matrix(.56007 0 0 .53518 9.8 -56)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="3" d="M385.6 129.9S335 185.4 335 238.5c0 53.1 53.1 70.9 53.1 70.9s-17.7 0-17.7 70.8c0 35.5 53.1 17.8 53.1 35.5s-.7 60.5 0 88.6c0 17.7-35.4 0-35.4 17.7 0 8.8 26.6 53.1 53.2 53.1s53.1-44.3 53.1-53.1c0-17.7-35.4 0-35.4-17.7v-88.6c0-17.7 53.1 0 53.1-35.5 0-70.8-17.7-70.8-17.7-70.8s53.2-17.7 53.2-70.9-50.7-108.6-50.7-108.6 28.5 73.2 28.5 108.6c0 17.7-13.3 53.2-48.7 53.2 0 0-9-17.8-17.7 0 0 0-10.2-17.8-17.7 0-2.6 6-7.2-17.8-17.8 0-4.4 4.7-8-17.8-17.7 0-17.7 0-53.1-17.8-53.1-53.2s32.9-108.6 32.9-108.6z" transform="matrix(.39205 0 0 .2513 84.9 175)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="3" d="M382.7 248c-3.6 3.6 4.6 61.3 7 63.8 3.6 3.5 24.9 3.5 28.4 0 2.5-2.5 0-56.7-3.5-60.2-3.6-3.6-29.4-6-32-3.6z" transform="matrix(.39205 0 0 .2513 86.4 225)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="3" d="M382.7 248c-3.6 3.6 4.6 61.3 7 63.8 3.6 3.5 24.9 3.5 28.4 0 2.5-2.5 0-56.7-3.5-60.2-3.6-3.6-29.4-6-32-3.6z" transform="matrix(-.39205 0 0 .2513 429.4 225)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="3" d="M414.6 228.5a16 16 0 11-32 0 16 16 0 0132 0z" transform="matrix(.45063 0 0 .31327 63.9 210.4)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="3" d="M414.6 228.5a16 16 0 11-32 0 16 16 0 0132 0z" transform="matrix(.45063 0 0 .31328 92.6 210.4)"/>
+  <path fill-rule="evenodd" d="M270.4 311c0 1.2-1.6 2.2-3.5 2.2s-3.4-1-3.4-2.2 1.5-2.2 3.4-2.2 3.5 1 3.5 2.2zm-18 0c0 1.2-1.6 2.2-3.5 2.2s-3.5-1-3.5-2.2 1.6-2.2 3.5-2.2 3.4 1 3.4 2.2z"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M439.4 550l-7.8-10.3-12.8 1.7 1.8-12.8-10.3-7.7 10.3-7.8-1.8-12.8 12.8 1.8 7.8-10.3 7.8 10.3 12.7-1.8-1.7 12.8 10.2 7.8-10.2 7.8 1.7 12.7-12.8-1.7z" transform="matrix(.54641 0 0 .52213 17.8 -47.3)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M496 591.7l21.3 10.7 21.3-10.7-21.3-10.6-21.2 10.6z" transform="matrix(.56007 0 0 .53518 9.8 -56)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M496 591.7l21.3 10.7 21.3-10.7-21.3-10.6-21.2 10.6z" transform="matrix(.56007 0 0 .53518 -75.5 -56)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M535 659c-3.5-7-14.1-10.6-21.2-10.6s-14.2 0-21.3 10.7c0-14.2 10.5-21.3 21.3-21.3a22.7 22.7 0 0121.2 21.3z" transform="matrix(.48568 -.26652 .27892 .4641 -137.5 131.4)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 7.9 -65.5)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 3.9 -52.2)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 1.9 -59.8)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 11.8 -52.2)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 13.8 -59.8)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.56007 0 0 .53518 7.9 -57.9)"/>
+  <g fill-rule="evenodd">
+    <path fill="#da4500" d="M238.7 159c-10 0-11.3 1.5-15.8 3 0-4.3 11.1-9.4 21.1-9.4 0 3.2-2.6 6.3-5.3 6.3z"/>
+    <path fill="#cac9c7" d="M254 148.8c0 2.1-1.8 3.8-4 3.8s-4-1.7-4-3.8 1.8-3.8 4-3.8 4 1.7 4 3.8z"/>
+    <path fill="#ff0" stroke="#000" stroke-width="1pt" d="M361.4 357.9v10.6h17.7v53.1h10.7v-53.1h17.7v-10.6h-17.7v-14.2H379v14.2h-17.7z" transform="matrix(.56007 0 0 .53518 9.8 -56)"/>
+    <path fill="#da4500" d="M244 152.6a64 64 0 00-23.8 3.2c0-5.9 6.8-12.7 18.5-12.7 2.7 0 5.3 6.3 5.3 9.5z"/>
+  </g>
+  <g fill-rule="evenodd">
+    <path fill="#008500" stroke="#000" stroke-width=".9" d="M67.3 613c-14.2-14.2-16.6-21.4 3.6-10.1l283.7 247.5-3.4 7L67.4 613z" transform="matrix(.31554 .24102 -.11439 .19257 189.7 119)"/>
+    <path fill="#008f00" d="M182.3 329.6c.7-8.6-15-17.9-15.7-17.3-.6.6 1 5.6 4 8.2-5.8-2.9-11.8-4.7-12-3.4-.4 1.7 9 5.8 9.8 7.4 0 1.1-7 1-6.8 2.1.1 1.2 19.7 11 20.7 3zm-15.7-25c.6-8.6-15.1-18-15.8-17.3-.6.6 1 5.6 4 8.2-5.7-3-11.7-4.8-11.9-3.5-.4 1.7 9 5.8 9.7 7.4.1 1.2-6.9 1-6.7 2.2.1 1.1 19.7 11 20.7 3zm-12-22.8c.6-8.6-15.2-17.9-15.8-17.3-.6.6 1 5.6 4 8.2-5.8-3-11.8-4.7-11.9-3.4-.5 1.7 9 5.8 9.7 7.4.1 1.1-6.9 1-6.8 2.1.2 1.1 19.7 11 20.7 3zm-12-24.6c.7-8.6-15-18-15.7-17.3-.6.6 1 5.6 4 8.2-5.8-3-11.8-4.8-11.9-3.5-.5 1.7 8.9 5.8 9.7 7.4.1 1.2-6.9 1-6.8 2.2.1 1 19.7 11 20.7 3z"/>
+    <path fill="#008f00" d="M146.7 256c7.7-4.6 6.2-22.2 5.3-22.3-.9-.2-4.2 4-4.6 7.9-1-6.2-3-11.9-4-11.2-1.8.7.3 10.3-.6 11.9-.9.7-5-4.7-5.8-4-.9.8 2.4 21.7 9.7 17.7zm11 21.7c8.9-2 13.6-19 12.9-19.4-.8-.4-5.4 2.5-7.1 6 1.3-6.1 1.3-12.1 0-11.9-1.8.1-3.3 9.8-4.6 11-1.1.5-3-6-4.1-5.5-1.1.4-5.3 21.2 3 19.8zm13.3 22.1c8-4 8.2-21.6 7.3-21.8-.9-.2-4.5 3.7-5.3 7.5-.4-6.2-1.8-12-3-11.5-1.8.5-.7 10.3-1.7 11.8-1 .6-4.4-5.2-5.4-4.5-1 .7.4 21.9 8 18.5zm14.2 29c8.4-3.2 10.5-20.8 9.6-21-.8-.4-4.9 3.1-6 6.8.3-6.2-.6-12.1-1.8-11.7-1.9.4-1.7 10.2-2.9 11.6-1 .6-3.9-5.5-4.9-5-1 .7-2 21.8 6 19.2z"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M209 776c0 7.8-10.2 14.2-23 14.2s-23-6.4-23-14.2 10.3-14.2 23-14.2 23 6.4 23 14.2z" transform="matrix(.48902 .26089 -.27302 .46728 313.4 -58.3)"/>
+  <g fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width=".6">
+    <path d="M156 414.6v-7.1h7v-7.1h7v7h7.2v7.2H170v17.7h-7v-17.7h-7zm7 60.2h7v205.5h-7z" transform="matrix(.40549 .1277 -.14842 .38308 363.6 58)"/>
+    <path d="M159.4 676.8h14.2v56.7h-14.2zM156 439.4h21.3c14.1 0-3.6 39-3.6 39h-14.1s-17.8-39-3.6-39zm17.6-5.4c0 3-3.1 5.4-7 5.4s-7.1-2.4-7.1-5.3 3.1-5.4 7-5.4 7.1 2.4 7.1 5.4z" transform="matrix(.40549 .1277 -.14842 .38308 363.6 58)"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M209 776c0 7.8-10.2 14.2-23 14.2s-23-6.4-23-14.2 10.3-14.2 23-14.2 23 6.4 23 14.2z" transform="matrix(.46695 -.29552 .30926 .4462 -5.1 64.5)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/me.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/me.svg
new file mode 100644
index 0000000..56a19ed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/me.svg
@@ -0,0 +1,118 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-me" viewBox="0 0 512 512">
+  <path fill="#d3ae3b" d="M0 0h512v512H0z"/>
+  <path fill="#c40308" d="M25.6 25.6h460.8v460.8H25.6z"/>
+  <path fill="#b96b29" d="M367.4 251.8c3-.8 13.5-3.9 20.8-9.8 7.3-6 8.8-10.7 9.4-13.3.6-2.6.8-4.6-1-3.2-2 1.5-7.7 6-11.6 8.2a43 43 0 01-9.6 3.7c-2 .6-3.8 1-1.7.2 2-.8 8.6-3.1 13.7-8.2 5.1-5.2 9.2-12.8 9.3-17.6 0-4.7-.3-4.3-1.8-3.1-1.5 1.1-6.9 7.8-10 10.3a96 96 0 01-10.3 7.3c-2.4 1.4-5.8 3-1-.2 4.8-3.3 13.8-11 17.5-21 3.7-10 3-16 3-17-.1-1-1-3-1.8-1.1-.8 1.8-6.9 14-11.8 19.2-4.8 5.2-3.7 4.2-4.8 5-1 .8-3 2.3-.5-.6 2.3-3 7.2-9.7 9.7-16.5a54.9 54.9 0 003.3-17.3c0-3.9-1.6-9.2-2.4-10.8-.7-1.6-1.5-2.8-1.7-1s-4.2 13.8-6.3 19.6a74.9 74.9 0 01-7.1 13.7c-.8 1.2-3 3.8-.7-.6a82.6 82.6 0 007.5-29.4 47 47 0 00-2.8-22.3c-1.6-3.3-3.1-4.5-3.1-4.5s.3 8.3-2.2 20.3-6.1 18.2-6.1 18.2-1.5 1.8-.5-1.1c.7-2 2.2-6.2 2.8-13.4.7-7.5.8-16.1-1.4-23.4-2.4-8-6.5-12-6.5-12-1.2 11.4-1 26-5.2 38-.7-.7-1.8-2-2.2.7a67.3 67.3 0 01-7.4 20.6c-5.2 9.4-7.3 10.6-7.3 10.6l-1.6-3.5c-.7-1.3-1-2-2-.2-.8 1.7-3.7 8.3-10 15.6-6.3 7.2-9.8 10.8-9.6 16.2.2 5.5 3 8.3 6.9 10.7 3.8 2.5 4.5 3.9 3.9 6.8-.6 3-4 4-7 4.1-3 .1-6.7-.1-8 .6-1.3.8-1.4 2.7-2.8 4-1.3 1.4-1.9 2.1-3.1 2.3l-1 .2c-.4-14.4 5.2-20.8 5.2-20.8L291 217.7l-2.4 1.1a4.4 4.4 0 00-.4-.7 12 12 0 01-2.8-8.3c.8.1 2.3.7 3.8.4 1.4-.3.3-1.7-.1-3a27.6 27.6 0 01-.2-10.3s2.3 2.4 3.7 2.4c1.4 0 1.3-1.4 1.5-3a12 12 0 013.2-6.9s2.5 1.7 5.3 1.7c2.9 0 6.7-.7 9.7-3.6 3-3 3-3.6 3-3.6s5.6 2 10 2.2c4.2.2 8.8-.5 11-5 2.2-4.6-.6-8.8-1.1-9.5-.5-.7-2-1.3-2 0s.1 4.7-2.5 6.4c-2.6 1.7-4.6 1.6-7.1.8a21.8 21.8 0 00-14-.3c.2-.2 3.4-3.5 6.6-4.5 3.2-1 5.1.4 6.2 1.6 1 1.3 2 3.4 2.8.4.9-3 .4-6.4-1-8.6a8 8 0 00-7.7-3.2c-3.1.3-4.3.8-4.3.8s-1.6-4.6-5.7-5.4c-5-1-10.5.8-14.8 3.2 0 0-3.4.8-6.8-.2a22.4 22.4 0 01-5.9-2.9 301.9 301.9 0 011.2-3.7l2-.7c1-.4.8-.8 1-1.6.1-.9-2-2.4-2-2.4s-.3-2.6 3.1-4.3l3-1.5s2 .3 2.9-.2c.8-.6.8-1 .8-1s1.5-.5 2-1.4c.6-1 .7-2.2.3-3.3-.4-1-1-1.3-.4-1.8a4.5 4.5 0 001.2-2.5v-1s1.2-.5 1.1-2.3c0-1.7-1-2.4-1.6-2.6l-.9-.1s0-1.1-1-2.5c-.9-1.4-1.5-2-1.5-2s.7-.5.3-1.7a3.1 3.1 0 00-2-2.1c-.7-.3-1.6 0-1.6 0l-4-2.3-1.5-.8s0-1.1-.5-1.7c-.4-.6-1.5-.9-2-.9-.6 0-1.2.3-1.2.3s-4.5-1.1-6.4-1.4c-1.9-.3-2-.5-2-.5s-4-1.9-5.5-2.2l-2-.5s1.6-2 1.7-4.2a6.3 6.3 0 00-3-5.4l-1.7-.8V99l3 .3.2-4.8-3 .4.5-3h-6.2l.5 2.9-3-.2.3 4.8 3-.4-.2 1.8s-1.1.2-2.1.9a5.7 5.7 0 00-2.9 5.1 9.2 9.2 0 001.5 4.3l-2 .4c-1.5.3-5.6 2.2-5.6 2.2s0 .2-2 .5l-6.3 1.4s-.6-.3-1.2-.3c-.5 0-1.6.3-2 .9-.5.6-.5 1.7-.5 1.7l-1.6.8-4 2.3s-.8-.3-1.6 0a3.1 3.1 0 00-2 2.1c-.3 1.2.3 1.7.3 1.7s-.6.6-1.5 2-1 2.5-1 2.5l-.9.1c-.5.2-1.5.9-1.5 2.6-.1 1.8 1 2.2 1 2.2l.1 1c0 1 .6 2.1 1.1 2.6.6.5 0 .7-.3 1.8a4 4 0 00.2 3.3c.6.9 2 1.4 2 1.4s0 .4.9 1c.8.5 2.8.2 2.8.2s-.4-.3 3 1.4c3.4 1.8 3.1 4.4 3.1 4.4s-2 1.5-2 2.4c.2.8 0 1.2 1 1.6l2 .7 1.2 3.7c-1.3.9-3.5 2.3-5.8 3-3.4 1-6.8.1-6.8.1a22.5 22.5 0 00-14.8-3.2c-4.1.8-5.8 5.4-5.8 5.4s-1.1-.5-4.3-.8a8 8 0 00-7.6 3.2 11.1 11.1 0 00-1 8.6c.8 3 1.7 1 2.8-.4 1-1.2 3-2.6 6.2-1.6a19 19 0 016.5 4.5s-.5-.4-4-.9c-4-.5-7.4.4-10 1.2-2.4.8-4.4.9-7-.8-2.7-1.7-2.6-5.1-2.6-6.4 0-1.3-1.4-.7-1.9 0s-3.3 4.9-1.1 9.4c2.2 4.5 6.8 5.3 11 5 4.4-.2 10-2.2 10-2.2s0 .8 3 3.7c3 2.9 6.8 3.6 9.6 3.6s5.3-1.7 5.3-1.7a12 12 0 013.3 7c.2 1.5 0 3 1.5 3s3.6-2.5 3.6-2.5l.4 2.4c.2 1.7-.1 6.5-.5 7.8-.4 1.4-1.5 2.8 0 3 1.3.4 2.9-.2 3.7-.3a12 12 0 01-2.8 8.3 4.8 4.8 0 00-.4.7 57.5 57.5 0 01-2.3-1.1L205.6 236s5.6 6.4 5.3 20.9v-.1a20.7 20.7 0 01-1.2-.2c-1.2-.2-1.8-1-3.1-2.3-1.3-1.3-1.4-3.2-2.8-4-1.3-.8-5-.5-8-.6-3 0-6.4-1.1-7-4-.5-3 .1-4.4 4-6.9 3.8-2.4 6.6-5.2 6.8-10.7.2-5.4-3.3-9-9.6-16.2-6.3-7.3-9.2-13.9-10-15.6-1-1.7-1.3-1-2 .2l-1.6 3.5s-2-1.2-7.2-10.6a67.2 67.2 0 01-7.5-20.7c-.4-2.6-1.4-1.3-2.2-.6-4.2-12-4-26.7-5.1-38 0 0-4.2 4-6.6 12a63.8 63.8 0 00-1.4 23.4c.6 7.2 2.1 11.5 2.8 13.4 1 2.9-.5 1.1-.5 1.1s-3.6-6.3-6-18.2c-2.6-12-2.3-20.3-2.3-20.3s-1.4 1.2-3.1 4.5a47 47 0 00-2.8 22.3c.6 12.2 5.1 25 7.5 29.4 2.4 4.4.2 1.8-.7.5-.8-1.2-5-7.8-7.1-13.6A242 242 0 01128 165c-.3-1.8-1-.6-1.8 1s-2.4 7-2.4 10.8a54.9 54.9 0 003.3 17.3 68.1 68.1 0 009.8 16.5c2.3 3 .5 1.4-.6.6s0 .1-4.8-5a98.3 98.3 0 01-11.8-19.2c-.8-1.9-1.7.1-1.7 1.2-.1 1-.8 6.9 2.9 16.9a48.8 48.8 0 0017.6 21c4.8 3.2 1.3 1.6-1.1.2A96 96 0 01127 219c-3-2.5-8.4-9.2-9.9-10.3-1.5-1.2-1.8-1.6-1.7 3.2 0 4.7 4 12.3 9.2 17.4 5 5.2 11.7 7.5 13.7 8.3 2 .8.4.4-1.7-.2a42.9 42.9 0 01-9.6-3.7c-3.9-2.2-9.6-6.7-11.5-8.2-1.9-1.4-1.6.6-1 3.2.5 2.5 2 7.3 9.3 13.3 7.4 6 17.8 9 20.8 9.8 3 .9.9.9.9.9l-7.3-1.5c-6-1.4-15.3-6.2-17.8-7.8-2.5-1.5-2.8-2.1-2.5 1.2.3 3.3 3.9 10.3 9.5 13.6a53 53 0 0018.3 5.1c2.6.2 2 .5.8.6a55.1 55.1 0 01-20.6-3.5 32 32 0 01-.5-2.1c-.2-1.3-.9-1-1.3-.8-.4.3-.6.5-2 1.2s-1.5-.1-1.5-.6l-.4-3.1c0-1-.5-1-1.2-.7l-5 2c-1 .6 0 1.5.6 2.6a157 157 0 001.5 2.8l-3.8 1c-1 .2-.7.9-.4 1.5l2 4.9c.4 1 1.2.4 1.2.4l3-1.8 1 4c-.1 0-1.4.3-2.9 1.3s-1 2.4.7 2.9c1.8.5 3.8 1.4 6.1 5.6 2.3 4.1 2.9 11.6 4.3 23.4 1.4 11.8 9 17.8 10 18.5 1 .8.4 1.4.4 1.4s-1 1.5-.6 3.7a5.7 5.7 0 003.5 4c1 .4.8 1.5.8 1.5s-.6 2.5 0 7c.5 4.7 4.2 9.9 5.3 10.8 1 .8 1 1.3 1 1.7-.2.3-.9 0-2.1 1-1.3 1-2.7 2.3-3.6 4-.9 1.6-.6 2.5-.3 4.7.3 2.3 3.6 4.3 3.6 4.3s-.6.1-.8 1.8c-.1 1.6 1 3.4 2.6 4.6 1.4 1.2 4.2 1.8 4.2 1.8l.4 2.4c.2 1 2 2 3.2 2.6 1.2.6 3.5.3 4.4-.2 1-.4 1.7.1 2.2 1 .6 1 .4 4.7.4 6.2s-.9 3-.4 3.8c.6.7 2 .2 3.4-.6s1.7-.2 3 .6 3.3 1.6 3.8 1.5c.5 0 .3-1.4.3-2.5 0-1.2.2-3.7.7-4 .2-.2 2.4-.4 4-1 .9-.4 1.8-.7 2-1.5 0-.7-1.1-.7-3.6-2-2.4-1.3-2.8-2-4.4-3-1.5-1-.8-1.4-.8-1.9 0-.4.7-1 1-1.5.3-.6.2-2 .2-2l1.8-1.9c.6-.7 1.4-1.7 2.2-2.4.8-.6 2-3.8 2.9-4.9.8-1 2.6-2.1 3.7-3.5s4-3.7 5.8-4.8c1.7-1.2 6.3-3.3 6.3-3.3s-.1 2.7 1 4c1.3 1.4 2.8-1 8-4.7s9.3-5 9.3-5l2.5 3.5c1.4 1.7 2.7-.1 9.1-9 5-7 11.8-13.4 14.4-15.8l1.4.6-.4 1.2c-.6 1.8-1.5 3-2.8 5.6-1.2 2.5-3.2 3.1-5.4 6.6a16.8 16.8 0 00-2.7 9.3c-.2 3.6 1.8 4.3 1.8 4.3s-3.3 3.2-4.2 5.5c-1 2.4-1.5 7.2-1.5 7.2s-.5.2-1.7 2.6c-1.2 2.5-3.3 2.8-6.4 6-3.1 3-6.6 4.4-8.2 5.3-1.6 1-1.2 2-.7 3.2.4 1.2 2.6 2.5 5.2 3.4 2.6 1 3.5.6 5.2.6 1.8-.1.4 1.3-.3 2-.8.8-1.7 3.3-1.6 6.2.2 2.9 2.3 2.2 5 1.8 2.6-.5 5.7-1.8 5.7-1.8l-.3.8c-.3.8-.4 1.4-.4 3.7 0 2.3.3 3.4 1 4 .7.6 2-.7 3-1 .9-.3 2.5-1.2 4.9-1.7 2.3-.6 3.2-1.6 3.2-1.6s-.6.7-.7 2.4a18.8 18.8 0 00.3 5.4 10 10 0 003 4.6c1.6 1.5 2 .8 3.2-1 1.2-1.9 3.6-4.2 3.6-4.2l1.8 5.8c1.6 5.2 6.9 9.5 6.9 9.5s5.3-4.3 6.9-9.5l1.8-5.9s2.4 2.4 3.6 4.2c1.2 1.9 1.5 2.5 3.1 1a10 10 0 003-4.5c.4-1.4.5-3.8.4-5.4-.2-1.7-.8-2.4-.8-2.4s.9 1 3.3 1.6c2.3.5 4 1.4 4.9 1.7 1 .3 2.3 1.6 3 1 .6-.6 1-1.7 1-4a9 9 0 00-.5-3.7l-.3-.8s3.1 1.3 5.8 1.8c2.6.4 4.8 1 5-1.8a11 11 0 00-1.6-6.2c-.8-.7-2.2-2.1-.4-2 1.8 0 2.7.4 5.2-.6 2.6-1 4.8-2.2 5.3-3.4.4-1.3.9-2.2-.8-3.2-1.6-1-5-2.3-8.1-5.4-3.1-3-5.3-3.4-6.5-5.9-1.1-2.4-1.6-2.6-1.6-2.6s-.6-4.8-1.5-7.2c-1-2.3-4.2-5.5-4.2-5.5s2-.7 1.8-4.3c-.3-3.5-.6-5.9-2.8-9.3-2.2-3.5-4.1-4-5.4-6.6s-2.2-3.8-2.8-5.6a33.8 33.8 0 00-.3-1.2 152.2 152.2 0 011.9-.8c2.5 2.4 9.3 8.8 14.4 15.9 6.4 8.9 7.6 10.7 9 9 1.5-1.8 2.6-3.5 2.6-3.5s4 1.3 9.2 5c5.2 3.7 6.8 6 8 4.8.6-.8.7-2 .8-2.8l6.5 2a111.5 111.5 0 016 2.4c4.6 2 5.1 3 8.7 5.8 3.7 2.9 8.8 2.6 13.7 1.1 4.9-1.5 17.8-5.8 23-8 5.3-2.3 9-4.2 9.5-5.3a16.6 16.6 0 001.2-5c0-1-1.2-2.6-1.6-2.9-.3-.2-.2-1 0-1.7 0-.7-.3-2.6-1.1-3.5-.8-1-.7-1.2-.6-3.8a16 16 0 00-9-14.2s-.2-.7-.6-1c-.4-.4-1.2-.7-1.2-.7v-3.8c0-.6.4-.6.7-.4.4.2 1 1 1.9 1.2.8.2 1.4-.4 1.6-1.4.1-1 .9-3 1.2-4 .3-1 0-1.1-.5-1.2-.4-.2-1.7-.3-2.3-.4-.6-.2-.6-.2-.5-.6l1.2-2c.8-1.3 0-1.3-.7-1.6a62.3 62.3 0 00-5.2-1.5c-1-.1-1.2.7-1.2 1v3c.1.6-.5.4-.9.2l-1.8-1.2c-.7-.5-1.2 0-1.4.7l-1.3 4.6c-.3 1-.2 1.6.2 1.8h3c1 0 .5.5.5.5l-1.5 2.5c-.3.7-1 .8-1.8.8h-2.2s-5.7.2-9.8 3.3a17.4 17.4 0 00-6 7.1c-.6 1.5-1.3 1.2-2 1.7-.6.6-2.4 2.5-2.4 3.6 0 1.2.4 1.8-1.4 3-1.8 1.2-3.3 6.3-.8 9 2.4 2.6 3.4 5.2 4.1 6.5.7 1.3 0 1.8-.6 1.8a273.5 273.5 0 01-12.2-9c-2.4-1.7-.7-1.5-.7-1.5s.6 0 2-.5c1.5-.6 1.7-1.4.3-1.8-1.4-.5-4.2-2-5-2.8-.6-.7-1-1.5.4-2.3 1.4-.7 4.5-2.7 2-3.4l-7.6-1.8c-2.4-.7-2.6-1.4-2.6-1.4l1.5-2.2s1.3-1.8-.2-2c-1.5-.2-5-.7-8.3-2a20 20 0 01-12-13.5v-.1c1.3 2.4 4.1 6.9 8.4 7 5.8.2 6.5-1.6 5.1-3.5-1.3-2-2.8-3.7-3.2-4.2-.4-.6-.5-1.4 1 0 1.6 1.5 4.5 6.4 13.2 5.8 8.8-.6 8.8-2.3 8.8-2.8 0-1.7-1.8-2-2.9-3-.5-.5-.8-1.3 1-.7 1.7.7 6 1.5 12 .2 2.3-.5 8.5-3.2 9-6.3 0 0-3.8-.2-6.6-1.4-2.7-1.2-4.4-2.1-1.5-1.6 3 .6 8.6 1.8 13.6.1 2.9-1 6.7-3.3 6.7-7.6 0 0-5.4-1.2-7.4-1.9S355 288 355 288s7.8 2.4 14.8-1.1c7-3.6 7.3-8.5 7.3-9.6 0-1.1-.2-1.5-.2-1.5s-6.4 1.6-11.1 1.5c-4.8 0-6.3-.4-6.3-.4s13.4-.4 20-4.5c6.8-4.1 7.2-12.2 7.2-12.2s-7.6 2.7-12.4 3.3a55 55 0 01-8.9.4c-1.1 0-1.8-.4.8-.6 2.6 0 12.7-1.8 18.4-5a21.7 21.7 0 009.4-13.7c.4-3.3 0-2.7-2.5-1.2a76.6 76.6 0 01-25 9.3s-2.4-.1.6-1zm-240.1 15.4l-2.7 1.5-1.4-2.8c-.2-.7-.1-1 .3-1l2.3-.4h.4l1.2 2.6h-.1zm81.9 48a22 22 0 01-9.4 7.6c-3.2 1.4-6.8 1.8-8.2 2-1.5.3-.3 2-.3 2l1.6 2.3s-.2.6-2.6 1.3c-2.4.7-5.2 1.2-7.7 1.9-2.4.6.7 2.6 2 3.4 1.5.7 1.1 1.5.4 2.3a18 18 0 01-4.9 2.7c-1.4.5-1.2 1.2.2 1.8 1.4.6 5.3 1.3 5.3 1.3l-2.5 2c-2.3 1.7-6.5 3-9.2 3-2.7.2-7 .4-12.6.1l-6-.3-.6-4.6a23 23 0 00-3.3-8.3l-4-5.3.3-1.6c.2-1 0-1.9-.5-3.5-.7-1.7-3.9-4.1-3.9-4.1l-.1-3.5c0-1.7-1.2-8.2-2.2-11.3-1-3-6-11.1-8.3-15a42 42 0 01-4.6-21l.5-1.3a13.8 13.8 0 003.7 3.3c6.7 4 20 4.5 20 4.5s-1.4.4-6.1.4c-4.8 0-11.2-1.5-11.2-1.5s-.2.3-.2 1.5.3 6 7.3 9.6c7 3.5 14.8 1 14.8 1s-.7.6-2.6 1.3a86.7 86.7 0 01-7.4 1.9c0 4.3 3.7 6.6 6.6 7.6 5 1.7 10.7.5 13.6 0 2.9-.6 1.3.3-1.5 1.5-2.7 1.2-6.7 1.4-6.7 1.4.6 3.1 6.8 5.8 9.2 6.3 5.9 1.3 10.2.5 12-.2 1.8-.6 1.4.2.9.7-1 1-2.9 1.3-2.9 3 0 .5 0 2.2 8.8 2.8s11.7-4.3 13.2-5.7c1.5-1.5 1.4-.7 1-.1-.3.5-1.9 2.3-3.2 4.2-1.3 1.9-.7 3.7 5.2 3.5 4.3-.1 7-4.7 8.3-7l.3.4a55.1 55.1 0 01-2.5 5.6zM280 125l-1.2-2.2s3.3 1.5 5.3 3.8c2 2.2 1.9 3.4 2.2 4.5.3 1 0 3-.3 5-.3 1.8-.3 3 0 3.7l.8 1s-1.5.3-2.9.9c-1.3.5-3.1 1-4.1.2-1-.9-1.3-1.4-.7-2 .6-.5 3-1.2 3.3-5.2.3-4-1.6-8.2-2.4-9.7zm-18 11c.7-2 1-3.8.4-7.7-.4-3.3-1-6.1-1.2-9.7 0 0 2.4.6 6 3.8 3.4 3.2 4.2 6.5 4.2 8 0 1.7-.8 3.7-1 5.2s.5 3 .5 3-1.3.5-2.5 1.3-2 1.3-3.7 1.2c-1.8 0-2.8-.9-3.9-1.4-1-.6-1.7-.7-1.7-.7s2-1.1 2.8-3zm-17.2-13.6a15 15 0 016-3.8c-.2 3.6-.8 6.4-1.3 9.7-.6 4-.3 5.8.5 7.7.7 1.9 2.8 3 2.8 3l-1.7.7c-1 .5-2 1.3-3.9 1.4-1.7.1-2.5-.4-3.7-1.2-1.2-.8-2.5-1.3-2.5-1.3s.6-1.4.5-3c-.1-1.5-1-3.5-1-5.1 0-1.6.8-5 4.3-8.1zM232.2 142c-1 .8-2.8.3-4.2-.2-1.4-.6-2.9-1-2.9-1l.8-1c.3-.6.3-1.8 0-3.6-.3-2-.5-4-.3-5 .3-1.1.3-2.3 2.3-4.5 2-2.3 5.2-3.8 5.2-3.8L232 125c-.8 1.5-2.7 5.6-2.4 9.7.3 4 2.7 4.7 3.3 5.2.6.6.4 1.2-.6 2zm46.8 33.7c-3.5 2-5.5 1.5-5.3 3 .1 1.3 3.2 2.4 3.2 2.4s-3.2 3.4-5.6 5c-2.5 1.5-5.4 2.5-5.4 2.5s-1 .1-.4 1.7a5.8 5.8 0 002.3 3l1.2.6s-4.3 4.6-6.2 6.1a16.3 16.3 0 01-4.5 2.6c-1.6.7-.8 3.2-.4 4.3a5.7 5.7 0 002.4 3c.8.2 1 .7.1 2.3l-4.4 6-4.4-6c-1-1.6-.7-2.1 0-2.4.8-.2 2.1-1.7 2.5-2.9.3-1 1.1-3.6-.4-4.3a16.2 16.2 0 01-4.5-2.6c-2-1.5-6.3-6-6.3-6l1.2-.7a5.8 5.8 0 002.4-3c.5-1.6-.5-1.7-.5-1.7s-2.8-1-5.3-2.5c-2.5-1.6-5.7-5-5.7-5s3.1-1 3.3-2.5c.1-1.4-1.8-1-5.3-2.9s-4.6-4.3-4.6-4.3 4-1.3 6-5.4a7 7 0 00.8-3.8h.2c6.4 2.2 13.9 3 20.6 3 6.7 0 14.2-.8 20.6-3h.2c-.1 1.1 0 2.4.8 3.8 2 4 6 5.4 6 5.4s-1.2 2.4-4.6 4.3z"/>
+  <path fill="#d4af3a" d="M300 253.6c0-10.9 5-17.7 5-17.7l-13.7-15.6c-12.9 5-24.8 5.3-35.3 0-10.6 5.3-22.4 5-35.4 0L207 236s5 6.8 5 17.7-2 19-3.3 24.2c-1.2 5.2-2.2 15 .6 22 2.7 7 5.7 13.2 17.8 18.2 12 5.1 18.4 7.7 22.6 11.2 4.2 3.6 6.3 6.4 6.3 6.4s2.1-2.9 6.3-6.4c4.2-3.4 10.5-6 22.6-11.2 12-5 15-11.2 17.9-18.2 2.8-7 1.7-16.8.5-22s-3.3-13.3-3.3-24.2z"/>
+  <path fill="#b96b29" d="M295.7 258a30.3 30.3 0 014.3-19.4L288.3 225c-9 5-21.4 4.3-32.3-.7-10.8 5-23.3 5.7-32.2.7L212 238.6s6 9.1 4.3 19.5c-1.7 10.3-5.4 26.8-4.5 33.4 1 6.7 5.7 14.5 10.5 18.5a61 61 0 0017.2 9.4 49.3 49.3 0 0112.5 7.2c2.4 1.8 4 3.4 4 3.4s1.5-1.6 3.9-3.4c2.3-1.8 7.3-5.4 12.4-7.2a61.5 61.5 0 0017.3-9.3 33 33 0 0010.4-18.6c1-6.7-2.7-23-4.4-33.4z"/>
+  <path fill="#1d5e91" d="M294.6 259.3a34.6 34.6 0 013.3-20.2l-10.5-11.7c-8.8 4.6-19.6 3.4-31.4-.7-11.7 4-22.5 5.3-31.4.7l-10.5 11.7s5 9 3.4 20.2c-1.7 11.2-4.3 23.9-3.8 31.3 0 .5 0 1 .2 1.6h9.5s.6-.7 1.6-1.1c1.1-.5 1.4-.8 1.4-.8s.2-2 1.4-2.3c1.1-.4 1.6-.4 2.1-.4s.8-.1 1.4-.7 2-2 2.7-3.9c.7-1.9 1-2.7 1-4s.5-3.2.5-3.2-.2-.6-1.2-.3c-1 .4-1.1-.6-1.2-1.6-.1-1 0-2.9.5-3.8l.8-1.2-.4-1.6s-6.1 1.3-7.2-3.5c-1-4.7-1.2-7-1.4-7.5-.1-.5-.3-.7-1.1-.7s-2.5-.5-3.8-3c-1.2-2.4-1.3-3.4-1-4.4.4-1 1-.6 1.3-.3.2.3 1.8 2.7 2.5 2 .6-.6.3-.6-.6-2.5-1-1.8-.6-2.4-.5-3.3 0-1-.3-2.2-.3-2.7s.5-.9 1-.6a4 4 0 011.4 1c.2.2.3.7.9.4.5-.3.2-2 .2-2.5 0-.6.6-1 1.4-.6a2.4 2.4 0 011.2 2c0 .6 0 1.1.4 1.1.3 0 .7-.9.7-1.5s.4-1.5 1-.7.7 1.8.5 3c-.2 1.2.2.6-.2 2.6s-.6 3-.5 4.5c0 1.5 0 2.4.8 4.2.8 2 1.4 4.1 2.8 4.2h1.8s1.6-3 2.8-3.8c1.2-.7 3-.8 4.2-1 1.2 0 1.7-.4 1.7-.7 0-.3-.4-.4-1.9-.6-1.4-.2-2.7-.6-2.7-1.7s.2-2.1-.7-2.2c-1 0-3.4-.8-4.2-2.4-.9-1.5-.7-1.9-.6-2.7.1-.9 1.2-2.6 2-1s1.1 1.8 1.7 2.2c.6.3 1.4.4 1-.7a5.4 5.4 0 01-.5-2.6c0-.8.6-1.2 1.3-1.3l3.6-1 1.1-.3s.1-.7 1.4-1.1a9.5 9.5 0 013.2-.5c1 0 1.6.2 2.9-.4a6 6 0 013-.7 4 4 0 012.1.8c.6.4.4 1 .4 1.5s.1.8 1 .8c.8 0 1.6 0 2.4.4s2 .7 1.2 1.6c-.7.8-.7 1.8-1.2 1.8-.4 0-.4.4-.6.7-.2.3-.3.6.2.9.5.3.5.6 1.2 1.3s1.8 1.3.7 2.4c-1 1-3 2-3 2s-1 .4.2 1.2c1.3.6 1.8 2.1 2.3 2.4l1.2.8c.3.1.2 1.2.2 1.2l-1.5.8c-1 .3-1.9.7-2.8.7-.8 0-1.3 0-1 .8l1.2 2.2.4 1.3s1.4.3 2.6.3c1.3 0 1.9 0 4.6-.3s3.6-.4 6.3 0c2.7.2 3.1.1 3.8.4l1.4.6s3.8 0 6-.5c2-.5 2.5-1.8 2.2-2.5-.3-.7-.3-1.8-3.9-2.3-3.6-.5-5.1-.3-8-.9-2.9-.5-7.4-2-8.2-5.6-.8-3.6 2.1-5.2 3.6-5.9 1.5-.7 4.6-1.8 6.1-2.4a14.1 14.1 0 017-.8c2.8.4 4.5 1.2 5.6.5 1-.7 2-.2 1.8.9-.2 1-1.3 3-4.5 4s-7 1.1-9.1.5c-2.1-.5-3.7-1.3-5-.9-1.2.5-2.6 2-1.3 4 1.4 1.8 8.4 2.4 10.3 2.6 1.9.2 8.8-.3 10.8 3.1 2 3.5.4 7.3-2 8.2a30 30 0 01-6 1.7l-1.8.2s.8 1.9.8 2.6c0 .8-.1 2.2.8 2.8s2 1 3.5.8c1.5-.2 3.3.8 3.4 2.2 0 1.3.5 3.1.6 5.8.2 2.6 0 4.8 0 4.8s0 1-.4 2l-2.2 4.7h10.2a22.5 22.5 0 00.1-1.6c.5-7.5-2.1-20.2-3.8-31.4z"/>
+  <path fill="#6d8c3e" d="M215 297.1c2 5.8 6.2 11.5 12.5 15.3 8.7 5.3 12.4 4.6 20.7 10 8.2 5.3 7.7 6.2 7.8 6.2.1 0-.4-1 7.8-6.3 8.3-5.3 12-4.6 20.7-9.9a29.2 29.2 0 0012.4-15.3h-81.8z"/>
+  <path fill="#d4af3a" d="M222.2 253c1 1 1.6 1.3 3 1.1 1.5-.1 1.8 1 2 2 .3 1.2.3 3.9 1.4 6.3 1 2.5 4.4 2.6 4.4 2.6.1-1.2.6-2.8 1-4 .2-.3.6-1.4-.6-1.4s-1.2-.5-2-1.7a23.1 23.1 0 01-2.4-6.3c-.4-2 .3-5 .6-6.1.3-1.1.4-1.9 0-2-.4-.3-1.2 0-1.2 0s.3.9 0 1c-.4.2-.7-.5-1-1.2-.2-.7-.5-.6-1-.5-.5 0-.5.5-.1 1 .3.5.1 1.4.1 1.4l-1.5-1c-.4-.2-1.5.2-1.6.8 0 .6.4 2 1.4 2.9 1 .8 1 2.4.6 3.1-.3.8-1.7.7-2 .3a.8.8 0 00-1.2 0c-.4.5-.8.7.1 1.7zm-.5-2.6l-.8-.7-.6-.8v.9c0 .6.6 1.2.6 1.2l.8-.6zm2-6.8c.5-.2.8-.3.5-.8-.4-.5-.7-1-1-1.2h-.6l.4 1.4c.1.6.3.8.7.6zm2.6-2.1c0 .4 0 .6.4.4s.6-.7.4-1.1c-.2-.4-.7-.7-.7-.7l-.3-.2.2 1.6zm3.7.6l-.2-1s0 .5-.2.9c-.3.3-.2.2 0 .5.3.3.3 0 .4-.4zm5.8 25c.7 1.7 2.5-1 4.2-3 1.7-2.2 1.6-.6 1.4 1.2a8.2 8.2 0 001.1 4.7c.7 1.2 1.3.5 1.5-.3.3-.8.5-2.6 1-3.4.7-.9 1.2-.1 1.3.6a8 8 0 001.7 3.3c.9 1 1.3-.3 1.5-1.5l.9-3.7c.2-.7 1-.1 1-.1l1.7 1.6c1 1 1.2-.6 1.3-1.4.1-.9-.2-2.7.2-3 .3-.3 1.2.4 2.7 1.1 1.5.7 1.4-.7 1.2-1.4a8 8 0 00-2.1-3.6c-1.2-1-1.4-2.2-1-2.7.4-.5 1.8 0 2.7-.2.9 0 1.3-.2 2-.3.7-.1.7-.8.7-.8s-.5-.8-1.5-1.7-1.5-1.5-2.7-1.8c-1.1-.2-2.7 0-2.7 0l-.2-.3c-.2-.3-.5-.3-.7 0l-1.3 1.2c-.4.4-.7.6-1 .4-.3-.1.3-.5.3-.5s.6-.5 1.1-1.6c.6-1.1.7-2.2.3-2.7-.4-.5-1.7 0-2.3 0-.7 0-1.1.1-1.2-.2 0-.4.7-.2 1.5-.3.9-.1 1.4-1.1 1.7-2 .2-.8.5-.7 1-.2s1 .4 1 0l1.1-2c.6-.8 1-2 .3-2.7-.6-.8-2.1-.7-2.7-.2-.6.5-1 1-1.2 2.2-.1 1.3-.5.6-.5.2s-.5-1-.3-1.5c.3-.5 0-1 0-1s0-1.1-1.2-1.4a9.2 9.2 0 00-3.7.4c-1.2.3-1 1.3-1 1.3l-1.8.1c-1 .1-2 .5-3 .8-.9.2-1.2.3-1.2.7l.2 1.2s.7 0 1 .2c.5.3.3.7-.2.8-.4.2-.6.2-.6.8s.2.7.7.7c.4 0 1.4 0 2.5.5 1 .5 1.4 1.5 1.3 2-.2.6-1.7 1.3-2.5 1.3s-1 .2-1 .7 1 .5 1 .5l2.7.2c1.9.3 2.2.6 3 1.4.8.7.2.9-.2 1-.4.3-1 .8-1.6 1-.6.3-1 .7-1.6.8-.5.1-2 0-4.5 1s-3.4 4.5-3.4 4.5l1.5-.8 4-2.1c1.3-.8 1.3.4.6 1.6s.6 1 1 .6.9-.7 2.2-1.4c1.3-.6.8.4.8.4s-.4.8-.5 2.7c-.1 1.8 1.9 0 2.7-1.1 1-1.2 1.3 0 .7 1.3-.7 1.4-2 2.4-2.7 2.4-.7 0-1.3-.7-1.4-1.2 0-.4.3-1.8-.2-2.1-.4-.4-1.7 0-2.7.6-1 .6-1.1.1-1.4-.4-.2-.5.4-.7.2-1-.3-.3-.8 0-1.2.2l-3 1.5c-1.7 1-1.6 1.4-1.6 2.7s.3 1.6 1 3.3z"/>
+  <path fill="#d4af3a" d="M252.5 239.1l1-.5 1.6-.3c.8 0 .6-.5.5-.9-.2-.3-.5-.5-1.5-.5s-1.6.5-2.1.7c-.6.3-1.3.4-1.3.4l.5.7c.4.6 1 .7 1.3.4zm4 4l.9-.2 1.3-.6c.7-.3 1-.4 1.4-1.1.4-.8-.5-.8-1.6-1.1-1.2-.3-1.7 0-1.9.5 0 .4 0 1-.5 1.8s0 .7.4.7zm-.3 1c-1.1 0-2.4 1.7-2.9 2-.4.3-.2.6-.2.6a6.7 6.7 0 00.7 3.1h.8c.6 0 1-.3 1.7-.7a4.3 4.3 0 012-.8 6 6 0 002.3-.9c1-.5-.5-1.4-1.6-2.3a4 4 0 00-2.8-1zm-15 3.9c1-.1 1.4-.6 1.4-1 0-.6-.5-1-1.6-1-2.8.3-5.5-.7-6-3.5 0 0-1 1.7.8 3.7 1.7 1.9 4.6 1.9 5.5 1.8zm-9.4 43.7l.5.5h4.3c.7-.2.7-.9.7-1.3 0-.6.5-2.1 1-5 .7-2.8 1.7-4.8 2.1-6 .4-1.1-.4-1.5-.7-2.2-.3-.7-.8-2-.9-2.6-.1-.7-1.1-.6-1.7-.5-.5 0-.6 1-.7 1.7 0 .9-.5 3.4-.9 5.5-.4 2.2-2.8 5-3.5 5.7-.7.6-1.2.9-1.7.9s-1.5 0-2 .3-1 1-1 1.7c0 .6 1 1 1 1l1-.9c.3-.4 1-.4 1.7-.6.7-.1.7.2.5.5-.3.3-.2.4.3 1.3zm-6.5-.2c-.3 0-.6.4-.7.7h2.8a1.5 1.5 0 00-.3-.7c-.3-.4-1.2-.2-1.8 0z"/>
+  <path fill="#d4af3a" d="M229 291.4a3 3 0 00-.9.8h3c.1-.3.2-.7-.2-1-.7-.5-1.4 0-1.8.2zm26-1.2c-.3 0-.6.3-1 .6-.5.3-.7.8-.7 1.2a.3.3 0 000 .2h1.3a.2.2 0 000-.2c0-.4.2-.7.7-1.2.6-.4 0-.6-.2-.6zm2.5 1.3c0-.4-.1-.7-.4-.7-.3 0-.8.6-1.2.8l-.5.6h2l.1-.7z"/>
+  <path fill="#d4af3a" d="M269 277.7c1-.6.8-.8.9-1.5 0-.7 0-.9-.3-1.1-.4-.3-1.8-.9-3-.9s-3.6.3-4.6 1c-.9.5-1.3 2.8-1.3 4 0 1 .2 1.2.5 1.2s.9-.8.9-.8l1.9 2.7c.7 1 .4 1.5 0 2.3-.3.8-1.4 3-2.4 3.5s-1.6 0-2.8-.1c-1-.2-1.7.1-2.3.8-.7.6 0 1.1.3 1.1.4 0 1 0 1.4.5.3.4 0 1.3 0 1.8h5.5c.9-.4 1.6-1.7 1.8-2.4.3-.8 1.5-1.9 2-2.4.7-.6.7-1 .7-2.1a5.2 5.2 0 00-.7-2.7 5 5 0 01-.7-2.8c.1-.7 1.3-1.5 2.2-2.1z"/>
+  <path fill="#d4af3a" d="M260 264c.5.8.3 1-.5 1.2-.8.1-1.7.3-3 .2s-1.1 0-1.2.7a5.4 5.4 0 01-.8 2.9c-.8 1-1.7.5-2.2.2-.6-.4-.9-.3-1 .4l-1.2 2.2c-.6 1-1 1-1.4 1-.4-.2-.8-.8-1.2-.8-.4 0-1.1-.9-1.7-1.9-.6-1-1 .1-1.4 1-.4.9-.8 1.5-1.6 1.4-.8-.1-1.7-1.6-2.1-2.5-.5-1-.8-1.8-1.4-1.7-.7 0-1.9 1.4-2.6 1.8-.8.4-1 .3-1.3-.2-.4-.5-.8.2-1.3 1.3-.4 1.1 0 2.1.7 2.4.6.3 1.8-.6 2.7-1.1.8-.6 1.2-.4 2-.4.9 0 .8 1.4 1.2 3.4.4 2.1 1.6 2.4 1.6 2.4s.4.3 1.3-1.2c1-1.6 1-3.2 2-3.2.9 0 1 .2 1.8 1.5 1 1.2 1.7 2.1 2.2 1.2.5-1 1-2.3 1.6-2.8.5-.5 1-.6.5.3-.6.9-1 1.8.4 1.5 1.2-.4 6-2.4 8-2.8l5-.5 4.4-.3c1 0 1 0 1.1-.8 0-.7-.5-.5-2.4-.5-2 0-3.3.2-4.6.4-1.4.2-2 .2-1.8-.2.3-.3.7-.6 2.2-.8a63 63 0 016.4-.4c1.7 0 1.1.4 1 1.6-.1 1 .1 2.7.2 3.7s.2 1.4 1 2.8c1 1.5 4 2.4 5 2.8.9.5.7 0 .7-.8 0-.9.7-.9 1.5-.4.8.4 2 .8 3 1 1 .3 1 .5 1 1l.3 2.5c.1 1 0 1.3-.4 2l-2.1 2.4s-.8 0-2.5.4-2.2 1.2-2.4 1.9c-.2.7.3.9.4 1.1v.9h.4a8.8 8.8 0 01.6-1c.6-.7 2-.9 3-.4.7.3.7 1 .6 1.4h3.9l2-4.2c.5-.9.7-1.5.7-2.8 0-1.2.2-6.2 0-6.4-.3-.3 0-1.1 0-2.5-.1-1.4 0-2.4-2.6-2.7-2.5-.2-3.3-1.3-4.2-2.2-.9-.8-.6-2.8-1.3-5.2-.7-2.5-2.4-2.8-5.4-3.4a25 25 0 00-7.5-.5c-2.2.2-5 .6-6.6.4-1.5-.2-1.2.3-.7 1.2z"/>
+  <path fill="#d4af3a" d="M274.5 291.6a1.9 1.9 0 00-.6.6h2.6a1 1 0 00-.2-.8c-.4-.5-1.2-.2-1.8.2zm4.7-.1a2.4 2.4 0 00-1 .7h2.7v-.3c0-.4-.9-.9-1.7-.4zM214 293l.6 2.5h82.8a24.5 24.5 0 00.6-2.5h-84zm55.8-39.6c2.7 1.8 11 1.9 14.9 2.6 3.9.8 3.6 3.8 2.4 5.4-1.2 1.5-6.7 1.7-7.7 1.8.6.4 1.4 1.6 1.4 1.6l2.2-.2a12 12 0 006.5-2.2c2-1.7 1.9-4.3.1-6.1-1.7-1.8-4.6-2-7.6-2.3l-8.5-1.1c-3.3-.6-4.9-2-4.9-3.8 0-2 1.8-3 3-3.3 1.4-.4 3.4-1 5.3-.3 1.8.7 4 .8 7.6.3 3.6-.4 4.4-3 4.4-3s-.4.3-2.3.3c-1.8 0-3.1-.7-6.5-.8-3.3 0-4.5 1.2-6 1.7-1.6.6-5.8 1-7 3.7-1.3 2.7.1 4 2.8 5.7z"/>
+  <ellipse cx="248.1" cy="241" fill="#b96b29" rx="1.6" ry="1.5"/>
+  <path fill="#b96b29" d="M281.6 243.7c-2-.2-4.8.3-4.8.3s.6.4 1.3.4c.6 0 1.9-.1 3.9.3 2 .3 3.5-.6 3.5-.6l-3.9-.5z"/>
+  <path fill="#1d5e91" d="M262 282.2c-.5-.8-.7-.7-1.2-.2-.6.5-1.2-1.2-1.3-2.3l.4-4.4s-2.8.5-4.3 1-3 .7-4.2 1c-1.2.3-1.9.6-2.5.4a18.5 18.5 0 00-3.1-.2c-1.1 0-1 .2-2.1 1.3-1.1 1-1.4 1.7-2.3 3.7-.8 2-1.1 3.9-1.4 6.4-.2 1.6-.5 2.7-.7 3.3h13l.5-1.4a3.2 3.2 0 011.5-1.4c.6-.3 1-.3 1.2-.8.3-.6 1-1 1.6-1.4.7-.3 1.9-.1 3 .2 1 .3 1.4-.5 1.7-.9l1-1.7c.6-.8.2-1.4.2-1.4s-.5-.4-1-1.2zm20.8.4c-.2-.8-.1-.9-.5-1-.5 0-1.2-.2-1.9-.5-.6-.3-.6 1.5-.6 1.5s-1.5.1-3.2 0c-1.7-.3-3.8-1.8-4.5-2.3-.7-.6-1.5-1.7-1.5-1.7l-1 .8c-.6.3-1 1.4-1 2.5-.1 1 1.2 2.4 1.3 3.5.1 1-1.2 3.3-1.8 4.1-.4.6-1 2-1.3 2.7h6.2l.7-1c.6-.7 1.7-.9 1.7-.9l.3-.8c.2-.6.9-1.3 2.4-1.9 1.6-.6 3.4-.7 3.4-.7s.8-.6 1.3-1.5c.6-.8.2-2 0-2.8z"/>
+  <path fill="#d4af3a" d="M230.6 351.6c1.2.4 3.4-.4 4.5-1.8 1-1.3 1.4-3.3 2.2-4.5l1.4-2s-.2 2-1.2 4.5a16.5 16.5 0 00-1 7.3c.5 2.8 2.4 3.3 3.5 3 .8-.4 2-1.7 3.2-3.6l1-2c.7-1.5 1.4-3.8 1.7-3.7.7.1.3 1.7 0 2.8-.6 2.2-1.6 5.4-1.7 7.3-.1 2 .1 5.5 2 5.7 2 .1 3-1.6 4.1-5.6 1.1-4 1.3-5.2 1.8-5.2s.5 2.7.5 3.9a19.5 19.5 0 001.7 7.9c1 .8 1.7.7 1.7.7s.8.1 1.7-.7c1-.9 1.7-6.7 1.7-7.9 0-1.2 0-3.9.5-3.9s.7 1.3 1.8 5.2c1 4 2 5.7 4 5.6 2-.2 2.2-3.7 2.1-5.6 0-2-1.1-5.2-1.7-7.4-.5-2.1.3-2 1.7.8l1.4 2.7c1 1.6 2 2.6 2.8 3 1.1.3 3-.2 3.5-3 .4-3-1.7-11.2-1.7-11.2l.9 1.4c.8 1.2 1.2 3.2 2.2 4.5 1.1 1.4 3.3 2.2 4.5 1.8s1.3-2.5.4-6.4c-.8-4-4.3-6.1-6.8-9.2-2.3-2.9-4-8-4.3-8.7a28.7 28.7 0 00-8.4 6l-6.3 6.6s-1-1.3-6.2-6.7a28.9 28.9 0 00-8.5-6c-.2.7-2.4 5.6-4.7 8.4-1.1 1.5-2.7 2.6-3.9 4a13.2 13.2 0 00-2.5 5.6c-.9 3.8-.7 6 .5 6.4z"/>
+  <path fill="#d4af3a" d="M230.5 364.8l2.3-2s1-1 .8.8c-.3 1.7-.9 5.3-.5 6.8.4 1.6.6 3 2.5 1.8s2.3-1.9 3.2-2.8c1-1 2-1.4 1.7.1-.2 1.5-1 3.8-.6 6.9.3 3 1.8 3.5 3.8.9a34.4 34.4 0 003.7-6.3c.6-1.3 1.8-2.4 1.8 0 0 5.1 1.2 12.6 6.8 14.5 5.7-2 6.8-9.4 6.8-14.5 0-2.4 1.2-1.3 1.8 0a34.5 34.5 0 003.7 6.3c2 2.6 3.5 2.1 3.8-1 .4-3-.3-5.3-.6-6.8-.2-1.5.8-1 1.7-.1.9 1 1.4 1.6 3.3 2.8 1.9 1.1 2-.2 2.4-1.8.4-1.5-.2-5-.5-6.8-.2-1.8.9-.8.9-.8l2.2 2c1.5 1.3 3.6 1.4 3.6 1.4s1-5.3-1.3-8.5l-3-4.3s-1.3 0-2.2-.4c-1-.4-2-1.1-2-1.1v3l3.4 3.3c.7.8 2 2.1 0 .9a53.9 53.9 0 01-3.3-2.6s-.4 2.7-1.2 3.4c-.8.7-1.9.8-2.3.6l-.5-.2-.1 1s1.7 3.2 2 4.5c.1 1.2-.2 1.1-1-.5-.8-1.7-2.3-3.8-3-5-.7-1-1.7-1.8-1.6-.4.1 1.5-.5 4.1-1 5l-.8 1.4 1.2 4.4c.1.6 0 1.4-.6.5-.6-.8-2.2-4.5-2.2-4.5s-2.3 0-3-.7c-.6-.6-1.6-3.1-1.6-3.1s-.9 3.1-1.6 4.1c-.8 1-2.6 2-2.6 2l-.2 6.5c-.1 1-.2 1.4-.6 1.4-.4 0-.4-.4-.6-1.4l-.2-6.4s-1.8-1-2.5-2c-.8-1-1.7-4.2-1.7-4.2s-1 2.5-1.6 3.1c-.7.6-3 .7-3 .7s-1.6 3.7-2.2 4.5c-.6 1-.7.1-.5-.6 0-.6 1.1-4.3 1.1-4.3l-.8-1.3a13 13 0 01-1-5c.1-1.5-1-.8-1.6.4-.7 1.1-2.2 3.2-3 4.9-.7 1.6-1.1 1.7-.9.5.3-1.3 2-4.5 2-4.5l-.2-1-.4.2c-.5.2-1.6 0-2.4-.6-.7-.7-1.1-3.4-1.1-3.4l-3.4 2.6c-2 1.2-.6 0 0-.9a76.8 76.8 0 013.4-3.3v-3s-1 .7-2 1a8 8 0 01-2.2.5l-3 4.3c-2.2 3.2-1.3 8.5-1.3 8.5s2.1 0 3.6-1.4zm27.5 35.7c-1.5-1.7-2-2.5-2-2.5s-.4.8-1.9 2.5c-1.4 1.7-4.8 4.3-4.8 4.3A16.5 16.5 0 00256 417c2.2-1.4 3.5-3.3 4.9-5.3 1.6-2.4 1.9-6.9 1.9-6.9s-3.4-2.6-4.8-4.3z"/>
+  <path fill="#b96b29" d="M255.3 406c.1 1 0 3.6.7 3.6.6 0 .5-2.6.7-3.6l.1-3.5h-1.7s0 2.4.2 3.5z"/>
+  <path fill="#d4af3a" d="M256 161.4a54 54 0 01-17-2.2l-4.2 1a55.3 55.3 0 0021.2 3.4c9.3-.1 14.7-1 21.1-3.5l-4.2-.9a54 54 0 01-17 2.2zm21.9-5a43 43 0 00-4-2.7c-.7-.4-.1-1.4 0-1.8a18 18 0 015-1.7c1.6-.4 1.4-.8 1.4-.8s-1-1.1-7.2-1.8-17.1-.5-17.1-.5-11-.2-17.1.5c-6.2.7-7.2 1.8-7.2 1.8s-.3.4 1.4.8c1.7.5 4.8 1.3 5 1.7 0 .4.6 1.4 0 1.8a31 31 0 00-4 2.7c-.5.4-.5 1 .2 1 .8 0 .8 0 3-.4a101 101 0 0137.5 0c2 .5 2.1.5 2.9.4.7 0 .7-.6.2-1z"/>
+  <path fill="#d4af3a" d="M270.8 159c-4.2-.5-7-1-14.8-1-7.9 0-10.6.5-14.8 1 2.6 1 7 1.6 14.8 1.6s12.2-.5 14.8-1.6zm-19.4-61l3.5-.4-.2 3 3.2-.2-.3-2.9 3.5.5.2-2.8-3.7.3.6-3h-4l.7 3-3.5-.3zm10.4 7.2h-4.4v-3.7a6.4 6.4 0 00-1.3-.1 6 6 0 00-1.1 0v3.8h-4.5a4.9 4.9 0 00-.2 2.1H262v-.6a5.8 5.8 0 00-.3-1.5z"/>
+  <path fill="#1d5e91" d="M256.1 112c2.6 0 4.8-1.5 5.6-3.6h-11.2c.8 2.1 3 3.6 5.6 3.6zm2.4-10.2v2.6h3a5.6 5.6 0 00-3-2.6zm-4.8 0a5.7 5.7 0 00-2.9 2.6h3v-2.6z"/>
+  <path fill="#b96b29" d="M259.5 149.3l-3.5-1.6-3.5 1.8c-1.3.6-1.1.4-1.5 1.4-.4.8 0 1.2.6 1.4l4.4 2.3 4.9-2.3c.9-.4.7-.9.5-1.6-.3-.6-.8-.9-2-1.4z"/>
+  <path fill="#d4af3a" d="M259.9 150.4l-4-1.8-3.7 1.8 3.9 2zm-4-15s-.3 1.4-.7 2c-.4.5-.7 1-.6 1.8.1.7.9 1.1 1.4 1.1.4 0 1.2-.4 1.4-1.1 0-.7-.2-1.3-.7-1.8-.4-.6-.7-2-.7-2z"/>
+  <circle cx="256" cy="141.7" r=".7" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M253.4 138s1.3-1.4 1.7-2.3l.9-1.6.8 1.6c.5.9 1.7 2.3 1.7 2.3s1.8-1 2.8-4.3c1-3.4-.3-7-.7-10.8a162 162 0 01-.8-10.4 7.8 7.8 0 01-3.8 1.1 7.8 7.8 0 01-3.8-1.1s-.4 6.6-.9 10.4c-.4 3.9-1.7 7.4-.7 10.8 1 3.4 2.8 4.3 2.8 4.3z"/>
+  <ellipse cx="256" cy="130.4" fill="#b96b29" rx="3" ry="2.9"/>
+  <ellipse cx="256" cy="123.5" fill="#b96b29" rx="2.9" ry="2.8"/>
+  <ellipse cx="256" cy="117" fill="#b96b29" rx="2.8" ry="2.7"/>
+  <circle cx="256" cy="129.9" r="1.6" fill="#d4af3a"/>
+  <ellipse cx="256" cy="123" fill="#d4af3a" rx="1.6" ry="1.5"/>
+  <ellipse cx="256" cy="116.5" fill="#d4af3a" rx="1.4" ry="1.3"/>
+  <path fill="#b96b29" d="M255.9 358.5c.2 0 .2-.5.2-1.4l.4-4.3c.2-1.2-.3-1.2-.7-1-.3 0-.5 1-.5 1.5l.2 4.4c0 .7.2.7.4.8z"/>
+  <path fill="#d4af3a" d="M224.4 383c1.4-.8 2.6-1.7 5.6-3.8a12.6 12.6 0 004.2-4.2h-1c-.7 0-1.2-.8-1.2-1.7 0-.8 0-2.4.2-4.4.2-2-.3-3.5-.3-3.5s-1.3 1.2-3.3 2.3c-2 1-2.8.5-2.8.5l-.5-2-2 4c-1.2 2-4.5 4.4-6.8 6.2a30.8 30.8 0 01-6.9 4.2c-1.9.7-.8 1.6-.8 1.6s2 2 7 2.8c5 1 7.3-1 8.6-2z"/>
+  <path fill="#d4af3a" d="M241.9 381.1c-1.8-.2-2.9-.8-3.2-2.8-.2-1.2 0-6 0-6l-1.2 1.2c-.7.9-2.2 1-2.2 1s-.2.7-.9 1.8a10 10 0 01-3.2 3.5 53.8 53.8 0 00-5 3.4 30 30 0 01-4.5 3.3 7.5 7.5 0 00-3.8 5c-.6 2.5-.2 3.3 1.8 3.2 2-.2 2.2 0 5.4-.8s7.7-4.4 11-6.5c3.4-2 5.8-6.3 5.8-6.3z"/>
+  <path fill="#d4af3a" d="M250.7 384s-1.3-1.7-1.8-3.6l-1.5-5.8-1.5 3.5c-1 2.3-3 2.9-3 2.9s0 1-1.5 2.9a22.5 22.5 0 01-6 5 22.5 22.5 0 00-7 5.6c-1.6 2.3-1.7 4.7-1 5.7.8 1 1.9-.2 3.4-1 1.5-.7 5.9-1.4 12-4.6 6-3.2 7.9-10.6 7.9-10.6z"/>
+  <path fill="#d4af3a" d="M253.3 397.5c1.7-2.5 2-8.5 2-8.5l-1.5-1-2.3-3.1-2 4a16.2 16.2 0 01-4 4.6c-2.2 2.1-5.2 4.1-6.5 6.3-1.3 2.3-.6 6.7.2 8.1.9 1.5 2 1 3.3-.2l3.9-3.4c2.2-1.9 5.3-4.3 7-6.8z"/>
+  <path fill="#b96b29" d="M233.6 347a23 23 0 012.7-5 16 16 0 001.3-2.5s-2.1 2-3 3.4a15 15 0 00-1.7 4.2c-.4 1.5-.2 1.7.7 0zm8.5 1.6a53.6 53.6 0 00.5-2s.4-1.2.2-1.3c-.2 0-1 .8-1.7 2.7-.6 2-1.5 4.8-1.3 5 .1 0 2-3.2 2.3-4.4zm6.7 5.4l.4-1s.7-2.1.7-2.6-.2-1-.8.2c-.6 1.1-.6 2.2-.7 2.7-.2.5-.8 2.2-.6 2.4.2.1.6-.9 1-1.7zM228 374.4l-.9-.5-1.3 1.5c-.7.8-1.6 1.2-2.2 2a8.5 8.5 0 01-2.8 2.4c-1.4.7-2 1-1.7 1.1.3.3 1.2-.3 1.2-.3s.4 0 2.1-1c1.7-1 2-1.6 3.1-2.5 1.1-1 2.5-2.7 2.5-2.7zm7.3 8.7c.7-.7 1.3-1.2 1-1.5-.4-.4-.8-.4-1.4.1l-3 2.8-2.2 1.7c-.7.6-2.4 1.5-3.2 1.9-.8.5 0 .5 0 .5l1.3-.5 2.6-1.1 1.8-1.1a25.9 25.9 0 003.1-2.8zm8.4 5.8c.6-1.1 0-.8-1-.4-.8.3-2.8 2.5-4 3.3-1.2.8-2.2 1.2-3.1 1.7-1 .5-1 .7-1 1 0 .2.5.2.9 0l1.8-1 1-.2c.6 0 1.4-.7 2.6-1.7 1.2-1 2.3-1.7 2.8-2.7zm4 7.7c-1.6.9-4.1 2.9-4.8 4.2-.7 1.4-1.1 2.3-.9 2.6.2.2 1-.3 1.3-.8.3-.6 1-1.4 1-1.4s2.5-2.5 3.4-3a8.9 8.9 0 002.9-3.3c.3-1 0-1.5 0-1.5s-1.5 2.3-3 3.2z"/>
+  <path fill="#c52126" d="M208 181.3a23.7 23.7 0 00-19-1.6c-2.3.6-4.2.7-6 .2-2.8-.7-5-3.2-5.7-6.3 0 0-2.6 3.3 0 6.8a7.7 7.7 0 004.6 3.2c5.5 1 10.8-2.3 15.3-2.6 4.4-.2 7.8 2.5 7.8 2.5s1 .9 2.5 0c1.4-.8 1.8-1.5.5-2.3z"/>
+  <path fill="#d4af3a" d="M192.3 338.7l-1.3-.2a16 16 0 01-2.8-.9c-.5-.2-1.2-.2-1.7.3s-4.4 2.9-4.4 2.9h6.5c2.2 0 3.7-2.2 3.7-2.2z"/>
+  <path fill="#d4af3a" d="M210.5 337.6v-.7l-.8-1.8s-1 .6-2 1.6c-1.3 1.3-2.6 3.2-3.2 4-1.1 1.3-2.6 2.6-1.3.4s1.7-3.2 2.7-4.6c1-1.5 1.8-2.1 1.7-2.2l-3.7-.6c-2.7-.3-4.4-1.4-5.6-2.1l-3.5-2s-4.6 2-6.3 2.4c-1.8.5-2.8.7-1.1 1.5 1.7.9 3.1 1.1 4 1.6.7.6 3.3 1.4 4.8 1.4 1.6 0 4.2 0 3.2 1-1 1.2-2.2 3.3-3.3 6.4a21.6 21.6 0 00-1.2 7.4l.2 2.7s1.9-2.1 7-5.3c5-3.2 7-4.3 7.9-4.7 1-.4 1.4-.4 1.2-1.6l-.7-4.8z"/>
+  <path fill="#d4af3a" d="M230 322.1l-1-.4a1.1 1.1 0 00-.2 0c-.6.4-3.7 2.4-5 4.5s-2.5 2.2-1.1 0a19.1 19.1 0 013.5-4.4l1-1a56.4 56.4 0 01-7.8-4.5c-.3.7-1 2-1.7 2.7-1 1.1-3.5 2.1-3.5 2.1s2-2 2.6-3.5l.8-2.6a33.9 33.9 0 01-5.1-4.9 19 19 0 01-4.4 7.9c-4 4.5-12 6.7-12 6.7s-2.8.3-.5 1c2.2.5 3.8 1.5 8.3.8 4.4-.8 4.7-1 5.3-1.2.6-.1 2.2 0 0 .8s-7.4 1.6-9.3 1.4c-2-.1-4.7-.6-1.9 1s4 2 5.7 2c1.8 0 2.5.6 4.2.6s2.1-.3 3.3-.6c1.2-.2 2 .2 2 .7s-1.6 1.8-1.6 5c0 3.3.3 5.5.6 6.4.3 1 1 2.5 1.5 3.4.5 1 .7 1.8 1.1 0 .5-2 1.6-4.7 2-6.6.4-1.8.7-1.9.8-2.9.2-.9 1.2-1.6.8.1a142.3 142.3 0 00-1.4 5.5c-.4 1.5-1.2 4.4.2 2.1 1.5-2.2 6.8-8.3 7.7-9.3 1-1 1.6-2.1 2.3-3 .6-.9 2.5-2 3.4-3.4.8-1.2 3.2-3.5 4.2-4.3L230 322zm-74.2-137.7c.1 3.3 3.8 9.6 5.8 13 2.1 3.3 2.7 4.6 2.3 4.8-.3.3-1.2-1.5-2.3-3l-5.2-7.6c-1.9-2.6-4.6-9-5-9.5-.3-.6-.5-1-1.4-.2-1 .7-2.7 7.6-.6 12.3 2.2 4.8 5.4 8.2 6.7 9.8 1.4 1.7 3.2 4.2 2.9 4.5-.3.2-.8-.5-2.4-2.2a152.9 152.9 0 01-6.2-6.8 49 49 0 01-4-6.5c-.3-.5-.7-.4-1-.1-.5.6-1.4 2-1 5.7.5 5.2 3.3 8.2 5.7 10.9 2.4 2.6 4.8 4.8 4.5 5.2-.4.3-2.9-1.9-4.6-3.5-1.7-1.7-6-5.7-6.8-6.9-1-1.1-2.3-.6-2.2 4 0 4.4 5 9 7 11.5 2.2 2.5 4.7 4 4.5 4.5-.2.5-2.3-.8-3.6-1.7-1.4-1-6.4-4.2-7.4-5-1-.6-1.5.7-.3 5 1.3 4.3 5 7.7 7.2 9.3 2.3 1.6 5.8 3.5 5.6 4-.2.5-1.7-.1-3.8-1.1-2-1-4.5-2-6.3-2.5-1.8-.5-1.8.8-1.8.8s-.4 3.7 2.3 6.6a14.2 14.2 0 008.5 4.6c2.8.5 3.3.6 3.2 1 0 .5-.4.5-1 .5-.7 0-3.3.3-5.7.3s-3.7.6-3.7 1.7c0 1-.1 2.5 3.5 4.9 3.7 2.4 7.7 2.8 9.5 3.1 1.7.4 1.7.5 1.4 1-.4.5-1.2.5-3.9.8-2.7.2-4.3 1.3-4.7 2-.4.8.2 2.9 2.4 4.4 2.2 1.5 5.1 2 9.4 1.7 4.3-.3 5.3-.3 5.5.4.1.7-1.3.9-3.4 1.3-2.2.3-3.8.3-5 1.3s-.3 3 1.7 4.6c2.1 1.5 7.2 1.5 9.4 1.3 2.1-.1 5.4-.9 5.6-.3.2.6-1.5 1.4-3.8 2.2-2.2.8-2.8 1.3-3.2 2.2-.5 1-.1 1.8 2.5 2.8 2.7 1 6.5 1 8.5 0 2-.8 3.1-1.2 3.5-.8.3.3 0 .7-.5 1.2a9.8 9.8 0 01-4.3 2.4c-2.2.6-2.5.6-3.2 2.4-.8 1.8 1.2 3.2 5.2 3.3 4 .2 9.3-1.4 11-2.4 1.7-1 2.4-1.2 2.7-.9.3.4.2.6-.7 1.2-.8.7-3.5 2.6-4.9 3-1.4.3-1.5 1.3-1.5 2.3 0 .9-.4 2.8 3.2 3.6 3.6.9 7.8.2 11.6-2.5a8.8 8.8 0 002.4-2.2c-.3-3.7-.1-6.2.3-8.5a14 14 0 01-3.6-.9c-2.2-.8-3-2.8-3.5-4-.5-1-1.3-1-2.1-.7-.9.3-1.7.7-3 .6a8.4 8.4 0 01-5.6-3c-1.8-2.2-1.5-4.3-1.6-5.4 0-1-1.7-.3-2.6-.3-.9 0-3.3-.3-5.6-1.9-2.3-1.6-2.3-3.7-2.5-4.6-.2-.8-1.2-1.4-1.9-1.7-.7-.3-1.8-.6-3.4-1.8s-2.1-3.8-2.2-4.7c0-.8-1-1-4.2-2.6s-3-5-2.8-6.4c.1-1.4 1.6-2.5 1.6-3s-1-.6-2.1-1.3c-1-.6-3.8-1.7-3.9-5.7 0-4 2.6-4.4 2.6-4.4l-1.6-.9c-1-.6-4-2.6-4-5s1.1-3.4 1.9-4c.8-.6 3-1.1 3-1.1s-1.4-1-2-2.8c-.6-1.8-.8-4.1.6-5.8 1.3-1.6 3.6-1.6 4.8-1.6s2.3.7 2.7.3c.4-.4.5-.6.1-1.6s-.5-3.2-.2-4c.4-.8.5-2.3 3.5-3.3s6.3 1 7.3 1.6.6-.8.6-1.8-2-3.5-4.4-7a77.8 77.8 0 01-10.8-25.1c-.4-1.8-1-1-1-1s-.8.3-2.4 4.5a26.7 26.7 0 00-1.8 11.2z"/>
+  <path fill="#d4af3a" d="M209.6 257.5a8 8 0 01-6-3.8c-1.9-2.7-4.6-3.3-9.4-3.2-4.8 0-7-2.2-8.2-5.5-1.2-3.4.2-7.1 5-9.5 5-2.4 7.1-5.1 7.3-9.2.2-4.2-4.9-9.3-9.9-15.1-5-5.8-9-14-9-14s-1.5 1.9-1.5 3.8c0 2 .8 4 0 4.5-.7.6-1-.8-4-2s-5.3-1.5-7.1.6 0 5.8 1.7 7.5c1.6 1.8 3 3 2.5 3.7-.4.7-3-1-3.7-1.6-.9-.5-2.8-2.6-5.7-2.4-2.8.3-3.8 1.1-4 3.5-.4 2.4 2.5 4.6 4.3 5.5 1.9.9 2.6 1.7 2.1 2-.4.5-.9 0-1.7-.2-.8-.3-3.1-.5-4.6 0-1.5.6-3.9 2.6-1.7 5 2.2 2.6 6.8 3.5 7.8 3.7.9.2 1.3-.1 1.4.6.1.8-1.9.8-4.4.9-2.5 0-3.2 2.4-2.8 4.3.3 1.8 4.5 3.8 6.8 4.2 2.3.4 3 0 3.3.7.2.6-.3.9-1.6 1.2-1.3.4-3.8.7-4.2 2.7-.5 2-.6 3 1.4 4.7 1.9 1.8 5 1.5 6 1.3.9-.2 2-1.2 2.9-.3.9 1-.8 1.7-2.4 2.8-1.6 1-1.5 3.2 1.2 4.7a8.2 8.2 0 006.4.5c1.1-.3 2.6-2 3.3-1 .8 1.1-2.3 1.5-3.6 3-1.2 1.6-.8 4.2 1.8 5.8 2.6 1.5 6.8.4 7.5-.2.8-.7 1.7-1 2.2-.4.6.6-.2 2-.8 3.3-.5 1.3-1.5 5 2.3 6.6 3.9 1.4 7.4-1.9 8-2.5.7-.7 1.3-.8 1.8-.5.6.3.3.8-.1 1.5a3.9 3.9 0 001.3 5.3 6.8 6.8 0 005 1c.6-2.1 1.3-4.4 2-7.6h-.5c-.4 0-.4.5-.4.7 0 .3 0 .4-.3.4s-.3.2-.8.6c-.5.3-1 .7-1.2.5-.2-.2 1-.8 1.3-1.2.4-.4 1-1 1-1.5.1-.5.3-.7 1-1.3l.5-.5c.4-2.2.9-4.7 1.3-7.7a61 61 0 00.4-5.9h-1.2zM131.1 200c4 8.3 9.9 13 9.9 13s-.8-2.1-1.1-3.5c-.4-1.4-.1-3-.1-3s-1.5-2-4.1-6c-2.7-4.2-4.2-10.3-4.2-10.3s2.5 6.1 4.5 9.3a50.3 50.3 0 004.2 6s.8-3 1.3-3c.6-.2 1 .2 1.5.9.5.6.9.5.9.5l-1.7-3c-.5-.7-1.2-1.5-1.6-2.3-1.6-2.4-4.9-7-6.6-11.6-1.7-4.6-5.4-16.1-6-19.5-.6-3.4-1.3-1.6-2 1a29.4 29.4 0 00-.9 11.3 57.1 57.1 0 006 20.2zm5.3 22.4a145 145 0 003.8 2.7l-.6-1.9-.3-3-3.1-2.7a44.2 44.2 0 01-6-6.4c-3-3.8-.6-1.5 2 1.3s7.4 6.8 7.4 6.8v-1c0-.8.3-1.4.7-2 .5-.6.3-.6-2.5-2.7a79.6 79.6 0 01-18.7-26.1s-1.6 9.5 4.2 20c5.8 10.5 11.5 13.9 13 15zm30.4 60c3.2-1.2 2.3-4.3 2.3-4.4l-3.7 1.3c-1.8.7-6.2 2-8 2-1.7 0-1.7-.2-1.8-.4 0-.3 1.4 0 3.9-.5s6.9-2.8 7.7-3.3c.7-.5.6-.6-.5-.7a4.8 4.8 0 01-2.5-1c-.4-.3-1.6.2-4.5.9a53.3 53.3 0 01-23 .8c-.6-.2-1.4.2.8 3.9 2.2 3.7 10 5.7 15.4 5.6 5.3 0 10.7-3 13.9-4.1zm-14.3-7.6c5.5 0 7.6-1.6 7.6-1.6s0-.3-.7-1.4c-.8-1.1-.6-3-.6-3l-3.7.5c-2.3.4-5 .7-8 .2-2.9-.6-1.6-.9.7-.6 2.4.3 7-.6 8.4-1 1.4-.6.8-1-.2-1.4-1-.3-3.6-2-3.6-2s-6.8.8-13 .1c-6.3-.7-10.2-2.3-11.5-2.5-1.3-.2-1.2.3-1.2.3s-.4.6 1.8 4a18 18 0 0010 6.6 53.7 53.7 0 0014 1.8zm-1.4-13l-.6-1.4c-.3-1.2.6-2 .6-2s-1.3-.4-5.4-1c-4.1-.4-4.4-.8-7-1.3-2.4-.6-4.1-1.3-4.1-1.6 0-.3.8.1 2.4.7 1.4.5 7.8 1.2 10.5 1.6 2.7.4 4.2.6 4.6.4.5-.3 2.2-.7 2.2-.7l-2.6-.6a9 9 0 01-3.4-1.4c-.8-.5-1-.6-4.4-1-3.4-.4-6.1-1.5-12.2-3.7-6-2.2-10.6-4.8-11.8-5.8-1.3-1-1.2-.3-.8 1 .3 1.2.3 2.8 3.3 6.4 3 3.6 4.6 5.1 12.3 8 7.7 2.8 16.4 2.4 16.4 2.4zM128.3 243a43.3 43.3 0 0016.5 6.8c.3-.4-.4-2 0-3 .4-1.2 1.1-1.2 2.7-1.3 1.7 0 .6-.4.2-.4l-3.2-.8c-2.7-.7-5.5-1-9.2-2.5-3.8-1.4-5-2.5-4.8-2.7 0-.3 1.7.9 5.2 2.2 3.5 1.3 7.5 1.8 9.7 2.3s.3-.5-.7-1.1c-1-.6-2.5-2.9-2.5-2.9s-2.5-.4-6.5-1.6c-4-1.2-7.3-2.6-10.6-4.5-1.2-.6-2.3-1.5-3.5-2.3l-5.5-4c-1.3-1-1-.2-.8.4.2.6 1.1 3.5 3.3 6.6 2.1 3 2.8 4 9.7 8.8zm-1.2-13.5c6.8 5.3 12.5 7 13.5 7.4 1 .4 1-.1.7-.7-.2-.6-.3-2.4-.3-2.4l-5-3c-2.8-1.5-5.7-3.6-7.7-5-2-1.3-.8-1.2-.2-.7.6.5 3.4 2 6 3.8l7 4.1s0-.9.6-1.4c.6-.6 2-.4 2-.4l-1.1-1.4c-.5-.7-2.7-1.4-5.2-2.6a62 62 0 01-10.2-7.2c-3.3-2.8-9.7-9.8-10.1-10.3-.5-.6-.7-.5-.8.2 0 .7-.3 1.2.4 4.4s3.7 9.9 10.4 15.2zm23.8-50.3l2.2 3.8a55.5 55.5 0 011.5 2.5V184a11.7 11.7 0 010-3.7c.1-.9.3-1.7.2-2.4 0-.9-.3-1.6-.4-2-.2-1-1.2-4.9-1.7-7.7a62 62 0 01-.9-10.2c0-3.5.5-1.7.5 0s.2 4.3.8 8.3c.5 4 2.2 10 2.2 10s0-.9.6-2.2c.5-1.4 1.3-2.9 2-4.5s.4-2 .4-2-2.4-11.3-3-16.6c-.6-5.3-1.6-19.4-1.6-19.4-3.5 3.5-6 12.6-6.5 21.3-.3 6.5.7 12.5 1 15a38 38 0 002.7 11.3zm-7.6 17.8c0-2.6.7-4.5 2.3-5 0 0-1.4-2.6-2.7-6.3a49 49 0 01-2-8.2c-.9-6-1.6-12.3.2-2 1.8 10.2 4 13.8 4 13.8l2.6 4.3a18.4 18.4 0 01-.3-5.3c0-2 .3-4.8 1-7 0 0-3.2-6.3-5.2-13.9a87 87 0 01-3.4-24.1s-3.3 2.4-4.4 14.8a73.5 73.5 0 003.8 28.8 202.7 202.7 0 004 10zm35.4 94.5l-2-1.3c-1.5-1-1-4-1-4l-1.6 1.1c-1.2.8-2.4 1.7-4 2.3L167 291c-1 .3-.8 0 0-.5.9-.5 1.1-.8 3.2-1.6 2-.8 6.1-4.4 6.1-4.4l-2.6-.1c-1.7-.1-3.9-1-3.9-1s-1.7 1.6-8.5 4.5c-6.8 3-12.6 3.7-12.6 3.7s.7 3.5 4 4.7c2.7 1.1 6.5 1.9 13.8.1a46.5 46.5 0 0012.3-4.8zm9 7c.6-2.9-1-4.9-1-4.9l-1.4 1.1c-1 1-2.6 2.7-5.4 4.1-2.9 1.5-4 1.4-1.2-.1s6.9-5.7 6.9-5.7l-1.1-.4c-1-.4-3 .3-10.6 4.9-7.7 4.6-12.2 4.8-12.2 4.8s3.4 4.1 12.7 3.8c9.4-.3 12.7-4.7 13.3-7.6zm17.6-3.4s-1 1.5-2.4 2.4c-1.4 1-5 1.5-5 1.5l-1 1.3a15 15 0 01-3.9 4.3c-1.6 1.2-4.2 2-4.3 1.7-.2-.3 1.5-1 3-2 1.7-.9 3-2.7 4.2-4 1-1.2-.5-1-.5-1h-3.7c-1.8-.2-1.5 0-2 .8-.5.9-1.2 1.7-2.6 3.2l-4.7 5.4c-1 1.3-.2 1.6-.2 1.6s.4.8 4.6 1.3c2.5.2 5.3 0 8.2-1.8a25 25 0 005.6-4.8c5-5.4 4.7-9.9 4.7-9.9zm2.2 11.3l-1.5 1.9s.7-2.2 1.3-3.3l1-1.4a27.6 27.6 0 01-1.7-5c-.5 1.5-1.9 5.8-3.7 8.6-2.1 3.5-4 4.7-2.8 5.6 1.3 1 3.7 1.2 6.4-.2a6.8 6.8 0 003.7-5.3 26.4 26.4 0 01-1.3-2.3c-.3.2-.8.6-1.3 1.4z"/>
+  <ellipse cx="206.9" cy="169.2" fill="#d4af3a" rx="1.9" ry="1.8"/>
+  <path fill="#d4af3a" d="M203 165.9c1.7 0 2.6-.9 4.5-.7a28 28 0 019.1 3.6 15.5 15.5 0 0010.5.9c1-.3 2-1 3-1.5 4.6-2.5 3.5-7.6 3.5-7.6a17.8 17.8 0 01-11.4 3.5l1 .8c.6.7 1.8 1.5 1.4 1.8-.4.3-2-1.3-3.4-2.3a20.6 20.6 0 00-7-3.4c-3.4-1-7.4-1.1-10 .3-2.7 1.5-2.9 3.3-2.5 4 .2.5.7.6 1.2.6zm49.2 37c-.8-.2-2.2-.5-4-2.2a76.4 76.4 0 01-6.7-7.3c-.5-1-.3-1.8 1-2.3 1.2-.5 2-2 2-2s-2.7-1.1-4.5-2.4-6-5.2-6.6-6.1c-.6-1-.3-1.1.5-1.4 1-.3 1.1-1 1.1-1s-2-1.1-3.8-2.6a75.5 75.5 0 01-4.3-4c-2.7 1.2-7 .7-9.3.3-4.1-.7-7.1-2.4-7.1-2.4l-.7 1.9c-.5 1.3-2.4 2-4.3.7-2-1.2-1.5-4-1.5-4s-1.5-.9-4.7-2c-3.1-1.2-5.7-1.4-8.2-.2-2.6 1.2-3.8 4.7-3.8 7.3 0 2.7 1.4 1.6 1.6 1.2.3-.4 1-2.3 4.1-2.8 3.3-.5 6.2 1 9.8 4 3.7 3 4.5 3.3 6.3 5.2 1.9 1.9.4 3-2.7 4-3.2 1-7.2-1-7.4-1-.6.3 1.4 3.1 4.1 4.2 2.7 1 6.2.3 8.9-.7 1.8-.8 2.2 0 2.7.5 3 3.2 3.7 6 4.2 9.7a4.3 4.3 0 002.8-3.3c.1-.6.3-1.9 1.3-1 1 1 1.9 6.3 1.9 8.7 0 2.5-.8 5.7-.8 5.7l.8-.1c.4 0 1.3-.6 2.5-1.2 1.1-.7 1.2 0 1.2 1.4 0 1.3.4 3.8 2.2 8.3 1.7 4.4 4.3 5.9 4.3 5.9s.5-.9 1-2.7c.5-1.7 1-5.2 1-8.2 0-3-.9-9.4-.9-9.4s3.7 4.4 7.5 5.5c3.8 1.1 7.6.5 9.2-1.4 1.6-1.8.1-2.6-.7-2.8z"/>
+  <path fill="#d4af3a" d="M227.2 214.5s-1.2 2.5-1.8 3.4c-.6 1-.9 1-.9 1s1.2 1 2.8 1.6l3.2.8s-1.9-2.6-2.5-4.4l-.8-2.4zm22.9-1.5l-1-2.3a16 16 0 01-8.7-1.8s1.8 3.6 3.5 4.8c1.8 1.3 2 1.3 2 1.3s-1.7.3-4-2c-2.4-2.3-3.5-5-3.5-5s.6 6.2-.4 10l-1.1 4.2s5 1 10.5-.6 6-2 6-2 .6-.2-.3-1.4a29.9 29.9 0 01-3-5.2z"/>
+  <path fill="#b96b29" d="M240 199.4l-1.9-2.4s-.6.6 0 1.4 2.9 3 4.5 4a11.8 11.8 0 003.3 1.2v-.3s-4.2-2-5.9-3.9zm-6.8 12.9l-.4-9c0-1-.7-.8-.7-.8l-.8.4 1.6 11.3c.2 1.2.8 1.1 1.1 1-.6-.2-.7-2.6-.8-3zm-10.4-33.6c-.6-.6-2-1-.7.5 1.4 1.5 3.2 3.4 3.7 5s.8 3.5 0 3c-1-.3-1.6-.3-2.5-1.1-1-.8-2.8-2.1-3.5-2.3-.7-.3-2 0-1 1.1a26.4 26.4 0 004.2 3.7l4.2 2.9 2.1 1.4s-1-6.4-2.7-9.1a28 28 0 00-3.8-5zm-34.1 105.9c-1.3 1-3 1.4-3 1.4s-.8 0-.8.2 1 0 1.9-.1c1-.2 2.3-1.2 2.8-1.5.5-.4 1.2-.8 1-1.5-.3-.6-.7.5-2 1.5zm11 5.9l-2.4 2-1.4.6c-.7.3-.9.7-.9.7s.2.2 1 0 2.9-1.8 3.6-2.5c.7-.6 1-.8.7-1-.2-.3-.4-.1-.6.2zM155 211.1c.4.5.9 1.1 1 1 .3-.3 0-.5-.5-1.1l-.8-1-1.2-1.6c-.4-.4-1.1-.7-.3.4l1.8 2.3zm-3.4 7.4l1.5 1.4c.5.6.9 1.2 1.2 1 .3-.4-.8-1-1.3-1.7a8 8 0 00-1.5-1.5 10.6 10.6 0 00-1.4-.8l1.5 1.6zm1.3 12c.8 1 2 1.2 2.2.8.2-.3 0-.6-.8-1a24.2 24.2 0 01-4-2.7c-.3-.4-.8-.7-1-.6 0 .1 1.2 1.6 1.6 1.8.4.2 1.1.9 2 1.7zm2.4 9.7c0-.4 0-.6-.6-.6l-1.7-.2s-1.4-.5-1.5-.3c0 .3 1.2.8 1.7 1a3 3 0 011.5.4c.3.2.6 0 .6-.3zm1 10.4c-1.4 0-2.7-.3-2.8-.1-.1.2.7.6 1.4.8.8.3 2.2.4 3.2.4s1.1-.1 1-.6c0-.5-1.2-.5-2.7-.5zm11.8 11.5c-.2-.3-.7 0-1.6 0-.8.3-2.2.5-3 .5a134.6 134.6 0 00-2.5-.1l-1 .2c0 .3 1.3.2 3.2.4 1.8.2 3-.2 4-.3.8-.1 1.2-.5 1-.7zm4.9 8.1c-1 .4-1.6.4-2.3.4l-2.4.3s-.8.2-.7.5c.2.3.4 0 1.1-.1h2.5c1.2 0 2-.4 2.7-.6.8-.1 1.6-.5 1.2-1-.4-.5-1.2.1-2.1.5zm9.5 6.2l-2.6 1.9-1.2.7c-.8.4-.7.6-.6.8.1.2.6-.3 1-.5.5-.2 2-1.2 2.7-1.8.8-.6 1.7-1 1.6-1.5-.2-.5-.4-.2-1 .4zm-15.8-79.8l1.8 2.5c1.6 2 .8 0 .4-.5s-2.8-3.9-3.7-4.8c-.8-1-.9-.5-.5.1l2 2.7zm-3.4 10.5c.2-.2-.3-.5-1.3-1.6a536.8 536.8 0 01-2.8-3.6s-.5-1.1-.7-1c-.1.1.7 1.9 1.4 2.6.8.8 1.8 2.3 2.3 2.9.5.6.8 1 1 .7zm4.5 19.7c0-.6-1.9-.5-2.7-.7l-2.3-.5s-1.8-.3-1.8 0c0 .2.3.4 1.3.6l3.5.8c1.1.1 2 .4 2-.2zm-4.5-10.7l2.6 1.9c.7.3 1.2.8 1.6.4.3-.4-.3-.7-1.4-1.1-1-.5-1.5-1-1.5-1l-1.2-.5c-.5-.3-1.4-.6-.1.3zm10.5-7l-1.4-1s-1-.8-1-.5c-.3.3 1 1.1 1.5 1.7.6.5 1.7 2 2.2 1.7.5-.3-.5-1.2-1.3-1.9zm-6.9 27.5l-1.7.4c-.6.2-.7.5.5.5s1.7-.3 3-.5c1.1-.3 1.5-.4 1.3-.8-.2-.4-.8-.2-1.3-.1l-1.8.5zm1.9 10c-.1.1.8 0 1.4-.3l2.7-1.1c.8-.2.8-.4.8-.8 0-.5-.8-.1-1.8.2s-2.2 1.3-2.2 1.3l-1 .6zm12.8 6c.8-.6 1-1 .7-1.3-.3-.2-.6-.2-1.3.4l-2 1.5-1.3.6c-.6.3-1.2.7-1 1 .2.2 1.3 0 1.9-.6.5-.4 2-1.1 3-1.7zm6 8c.3-.4 1.4-.8 1.9-1.1.5-.4.8-1.4.4-1.6-.4-.1-.6.5-1.5 1.1l-3.7 2.5-.7.3c-.8.3-.5.6.2.5.7-.1 1-.1 1.9-.7.8-.7 1.2-.8 1.5-1zm9 7.5c.7-.3 1.8-1.3 2.3-1.8s1.2-1.1.8-1.4c-.4-.3-.8 0-1.4.7-.7.5-2.3 2.2-2.3 2.2l-1.1.8c-.9.7 0 .6.3.3.4-.3.6-.5 1.3-.8z"/>
+  <path fill="#d4af3a" d="M232.3 150.9l-2.7 2.2 3.3 1.4 3.6-2.5z"/>
+  <ellipse cx="244.4" cy="151.6" fill="#b96b29" rx="3.4" ry="3.3"/>
+  <ellipse cx="244.4" cy="150.8" fill="#d4af3a" rx="2.1" ry="2"/>
+  <path fill="#d4af3a" d="M237.3 140.2c.9.3 2 .2 2 .2s.4-1.6-.5-2.3c-.8-.8-1.6-1.3-2-1.8l-.7-.6v2.1c-.1.8.3 2 1.2 2.4z"/>
+  <circle cx="239.1" cy="141.8" r=".6" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M234.4 141.2l-.8 1s.7 0 1.2.4c.6.4 1.4.8 2 .7a1 1 0 00.9-1.2c-.2-.5-.5-1-1.6-1.3-1.1-.4-1.4 0-1.7.4z"/>
+  <path fill="#d4af3a" d="M236.8 145.2c-2.1.2-5-2.2-5-2.2-.3 2-1.4 3-3.3 3.3h.2s1.7 1 3.7 1.2c.9.2 1.7 0 2.7-.2a10 10 0 003.2-1c1.3-.8.9-2.9.9-2.9s-.2 1.6-2.4 1.8zm-8.4-2.1c-.9-.4-2.2-1-2.8-1-.5 0-1.3-.2-1.2.8.2 1 1.2 1.5 2.2 1.6 1 0 1.6-.4 2.2-.7.6-.3.5-.4-.4-.7zm-6.7-3.7c-1-.7-1.9-.9-1.9-.9s-.6 1.7-.2 2.7 1 1.3 2 1.3c.9 0 2.3-.5 1.9-1.2a5.4 5.4 0 00-1.8-2z"/>
+  <ellipse cx="222.5" cy="144.1" fill="#d4af3a" rx=".8" ry=".5"/>
+  <path fill="#d4af3a" d="M224.6 135.8c-.6-2.9-.5-6 2.2-9.9 2.7-4 7.4-5.5 7.4-5.5l1.6-1.9c1.5-1.6 4.5-3.6 4.5-3.6l-5.5 1.5v.1a2.4 2.4 0 01-2.4 2.5 2.4 2.4 0 01-1.4-.4 24 24 0 00-5.6 3.1c.2.4.4.8.4 1.3a2.4 2.4 0 01-2.5 2.5c-.4 0-.7-.1-1-.3a10.8 10.8 0 00-.4.5 25 25 0 00-1.7 4 2.6 2.6 0 011 2.1c0 1.4-.9 2.5-2 2.5a4 4 0 000 1.6c0 .8.3 1.3 1.7 1.7 1.4.4 3.3 2.8 3.3 2.8.1 0 1.1-1.8.4-4.6z"/>
+  <path fill="#d4af3a" d="M233.2 117.6c.5-.4.6-1 .2-1.4-.4-.4-1.2-.3-1.7.1s-.6 1-.2 1.4c.4.4 1.2.3 1.7-.1zm-9 6.1c.5-.5.6-1.3.2-1.8-.5-.4-1.3-.4-1.9.2-.6.5-.7 1.3-.2 1.7.4.5 1.3.4 1.9 0z"/>
+  <circle cx="218.8" cy="131.4" r="1.4" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M248.9 112c-.8.2-2.1.6-4.1 1.7 1.4 0 2.5.9 2.5 2s-1.3 2.4-2.6 2.4a2.4 2.4 0 01-2.4-2.3c0-.3 0-.6.2-.8l-1.9 1.2c-4.4 3-5.5 4.5-7.7 8.5-2.2 4.1-3 8.6-2 11.2 1 2.7 4.4 3.2 4.5 3.2 0 0-.4-.4-.5-.9l.3-1.7v-2.2s.8-.1 1.3.4l1.5 1.8 1.7 1.6s.7-1 .7-2.2c0-1.2-.8-2.5-1-4.6-.1-2 1-5.8 3-8.6a24 24 0 017-5.7 2.2 2.2 0 001.4-2l.3-2c0-1.3-1-1.2-2.2-1z"/>
+  <path fill="#d4af3a" d="M244.5 116.8c.8 0 1.5-.7 1.5-1.4 0-.6-.6-1.1-1.4-1.1-.8 0-1.4.5-1.4 1.1 0 .7.5 1.4 1.3 1.4zm6.6 26c1 .4 2.2.2 2.8-.2.6-.4.8-1.3 0-1.9a2.1 2.1 0 00-2.2-.2l-2 1.4s.3.5 1.4.9z"/>
+  <path fill="#d4af3a" d="M254.5 144c-.4.6-.7 1-1.9 1s-2.5 0-3.2-.8a8.2 8.2 0 01-1.3-1.9h-1.4s-.4 1.9-1 2.4-2.7.6-3.6 0c-.9-.8-1.7-1.6-1.9-1.5-.1.1 0 .8 1 1.6s1.5 1.3 3 1.3h8.5s1.8.1 2.3-1c.5-1 .5-1.6.2-1.9-.2-.2-.3.2-.7.8z"/>
+  <path fill="#d4af3a" d="M241.5 142.6c1.3.7 2 .2 2.5-.3l.5-.9s-1.2-.4-1.8-.8c-.5-.3-1-.6-1.5-.6l-.7.2s-.2 1.6 1 2.4z"/>
+  <circle cx="235.4" cy="130" r="2.8" fill="#b96b29"/>
+  <path fill="#b96b29" d="M240.3 120.2c-1.1-.7-2.8-.4-3.7.7-1 1.2-.8 2.7.4 3.5 1.1.7 2.8.4 3.7-.7 1-1.2.7-2.7-.4-3.5z"/>
+  <circle cx="235.3" cy="129.6" r="1.6" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M239.1 120.5c-.7-.2-1.6.2-2 .8-.4.7 0 1.4 1 1.6 1.8.3 2.6-2 1-2.4zm-43.4 219.8s-4.3 2-5.7 2.4l-1.8.4s-3 2.7-5.1 4a19.4 19.4 0 01-7.6 2.7c-3.5.3-12.9.2-17.1 0-4.2 0-6.8 1-8.7 3-1.8 2-2.2 5 0 7.2 2.4 2.3 5 1.1 5.8-.2.9-1.4.4-3.2 0-4-.3-.8.8-1 2-1.1a25.5 25.5 0 0111.4 2.5c1.4.7.6.8-.4.6a21.5 21.5 0 01-3.7-1.2 14.8 14.8 0 00-4.3-1c-1 0-.7.6-.4 1l1 1.7-.4 2 .5 1 .9-1.5c.2-.6 0-1.6.2-2 .2-.6 1-.6 1.8.2a7 7 0 011.8 3.8c.4 2-.3 3.5-.3 3.5s.9.7 1 1.2c.2.5-.2 2.4-.2 2.4s.6.4 1.2-.7a25.3 25.3 0 001.3-3.8c.2-.7.6-2 1.5-1a8 8 0 011.6 2.7l.2 1s1.9-1.8 2.5-2.9a17.9 17.9 0 013.8-4.2c1.8-1.5 5-4.5 6.5-5.5l6.8-4c1.2-.7 1.4-.7 1.6-2.8.3-2.1 1.3-4 1.8-5.4l.5-2zm-70.1-78.7c0-.3-.8-1.6-1-2.2-.1-.7-.8-.3-.8-.3s-1.4.8-2.4 1.1c-1 .3-1.2-.1-1.3-.6l-.5-3.4c-.2-1.2-.4-1.1-.9-1l-2.6 1c-.9.5-.6.9-.3 1.4l1.8 3.4c.5.7 0 1-.5 1.3l-2.4.7c-1 .4-1 .6-.9 1l1.2 2.5c.4.6.8.2.8.2s1.1-1 2-1.5c1-.5 1.1-.3 1.4.4l1.5 5.2c.2.7.6.6 1.1.4l1.8-.5c.5-.2.7-1.3.7-1.3l-2.6-4.8c-.6-1 0-1.2.4-1.2l2.7-.5c1-.3.8-1 .8-1.3zm23.8 103c-.2-.9 0-1.8-.7-2.5a8.7 8.7 0 01-2-3.2c-.2-1.1.4-1.7.3-2.3-.1-.7-1-.7-1.9 0-.8.7-2 1.4-2 3.4s.8 4.5 3.6 5.3c2.9.9 2.8.3 2.7-.7zm2.8-1s-.5-.3-.8.2-.2.8.5 2 1.2 1.5 2.1 2c.9.5.3-.5.2-.9-.1-.3 0-.7-.3-1-.2-.2-.3-.6-.3-1.4s-1.4-.8-1.4-.8z"/>
+  <path fill="#d4af3a" d="M155.7 373.3c.6-.8 1-1 2.3-1.6 1.3-.6 3.7-.9 4.5-1 .8 0 2.6-1.6 2.3-3.2-.3-1.6-1.4-2.2-2.5-2.4-1-.3-1.9-.3-2.2.2a3.8 3.8 0 01-2 1.5c-1.2.4-1.3.8-2 1-.7.2-.2.6-.8 1.1-.6.5-1.4 0-2.3-.2-.9-.3-1-.5-2-.5l-3.6-.2h-.7c-.6 0-.7 0-1 .7-.2.6.1 2.2.8 3 .6.8 2.7 1.2 4 1.6a24 24 0 003.3.8c1.3.2 1.4 0 2-.8zm13 1.3c1.1-.7.5-2 .2-2.8-.2-.8-1.8-1-2.6-1s-1.2 0-1.7.4c-.4.3-1 .9-2.1 1.3-1.2.3-2.1.8-3.7 1.4-1.6.6-2.1 1.7-2.8 2.2-.7.4-2 0-2 0s-1-.3-1.3 0c-.3.2 0 .8.6 1.5s1.9.6 3.3 1c1.4.5 1.6.1 2.2-.2.5-.4 1-1.2 1.9-1.8 1-.6 3-.7 4-.8 1.1-.1 3-.4 4-1.2zm0-4.9c.5.5 1 1 1.5.3.4-.7 1-2.1.6-3l-1-1.6-1.2 3.1c-.4.7-.3.8.1 1.2zm-4.3-7.4c0-1.4-1-3-1-3s-.3 1.2-.9 2.3a8 8 0 01-1.2 1.7l2 .4c.5 0 1.1 0 1.1-1.4zm-8 3c1.5-.3 2.3-1 3-1.5.5-.5 1-2 .5-2.7-.4-.8-1.5-1.6-2-1.6h-.7s-.5 1.4-1 2.1c-.6.7-1.3 1.2-1.3 2.1 0 1 0 1.9 1.5 1.6zm3-6.8c0-.7-.2-1.5-.7-2l-.8-.8-.2 1.7-.2.7.8.6c.4.1 1 .5 1-.2zM141 320.4l1-6.3c-.7-6.3-4-12.3-6.6-16.5a79.3 79.3 0 01-6.5-14 39.9 39.9 0 01-2-10.7c0-2.5 1-3.8 1-3.8s.5-.6 0-1c-.3-.5-1 0-1.7.6a8 8 0 00-1.6 2.8l-.3 1.2s-1.4-.3-3.5-.2c-2.2.2-3.2.4-3.3.8 0 .5.3.9 1.9 1.5s2.5 1 3.3 2c.8.8 2.8 5.5 3.4 7.7a109 109 0 012.4 13 52 52 0 004.4 15.3c.7 1.6 4.7 9.1 8.1 7.6zm4 11.1c-1.5.8-1.5 6.8-.8 10 .6 3 3.7 6.9 4.6 8 1 1 1.1 1 1.6.7l.7-.3s1.3-.4 2.3-1.2c1-.7.6-2.6.4-4.3-.1-1.7-1.4-5-3.8-9s-3.6-4.7-5-3.9zm1.5-4.8c0-2-1.7-3.4-3.6-3.4-1 0-1.7.2-2.2.6-2 1.8-.8 6.3 2 6.3 1 0 2.3-.2 3-1 .7-.5.9-1.6.9-2.5zm28.3 56.2a12.6 12.6 0 01-5.7-4.4c-.3-.8-.3-.8-1.4-.5-1 .4-2.7.4-3.8.4-1.2 0 .1 1.4 1 2.6.7 1.3.5 5.4.5 5.4l-.2 1c-.2.6 0 1 .3 1.2.3.1.5-.2 1.3-1.1.8-1 2.3-3.5 2.3-3.5l1.6.3c1.3.3 3.3.2 4.4-.1 1-.4.5-1.1-.2-1.3z"/>
+  <path fill="#d4af3a" d="M169.8 386.1c-.5 0-.8-.1-1 .3-.3.3-.5 1-.7 1.4-.1.4 0 .7.3 1l.7.6s.5.5 1 .7c.4.2.5-.5.5-1l.3-2c0-.6-.5-.9-1-1z"/>
+  <path fill="#1d5e91" d="M378.6 345.8c-1.4-.3-2-.9-2-.9s-.5 0-1 .8c-.4.8-2.1 2-2.1 2s-2.4.6-2.8 2.2c-.3 1.7.9 2.3 2 2 1.2-.1 4-.7 5.2-2.2 1.2-1.4 1.4-2.3 1.7-2.8.2-.6.3-.8-1-1.1zm3.8-13.2c-1-3.7-3.3-8.3-7.9-10.6l-2.2 8c-.5 2-.5 1.9 1 2.2l7 1.7c1 .3 2.6 1 2-1.4zm-22-3.5c1.2.2 1-.2 1.4-1.7l2.3-8.7s-4.8-.2-9 1.8c-4.3 2-6.1 5.8-6.1 5.8s1 .5 4 1.1l7.5 1.7zm-11.2 10l-2.3-.5s1 4.2 2.8 6.5c1.8 2.3 3.8 3.4 7.5 3.5 3.7 0 6.5-2 7-3.6a11.7 11.7 0 011.2-2.8s-6.7-.9-9.5-1.5c-2.7-.7-5-1.3-6.7-1.6z"/>
+  <path fill="#d4af3a" d="M348 336.5l16.5 3.3c1.2.2 2.1.5 2.5.2.3-.4.5-.6 1.7-1 1.2-.5 1.1-1.7 1.1-1.7l.5-2.3c0-1.2.7-1.5 2 0 1.4 1.3 1.7 3.4 2 5.3.2 2 3.3 2.5 4.5 2.7 1.3.2 1.8-.2 2.5-1.3a16 16 0 001.3-5c.2-1.4 0-1.3-1.5-1.7l-9.9-2.3c-1.2-.3-1-1.1-.8-2l3-9.9a21 21 0 00-8.1-2.4s-2 9.2-2.5 10.6c-.4 1.4-1.3 1.4-2.7 1.2a636.2 636.2 0 01-12-2.8l-1 2a16.5 16.5 0 00-1.1 5.6c0 1.2.4 1.2 2 1.5z"/>
+  <path fill="#d4af3a" d="M384.3 344.8c-1.4-.9-2.4-1.2-3.2.6-.7 1.7-.8 4.2-2.6 6-1.8 1.7-4.4 3.6-7 3.4-2.5-.2-4-.8-3.4-3.7.6-3 4.5-3.9 5.5-5.4a3.4 3.4 0 00-.7-4.5c-1.4-1.2-3.3-1.4-3.9-1a8.4 8.4 0 00-2.9 3.9c-.8 2.2-1.3 4-3 5.4a13 13 0 01-9.5 2c-3.4-.8-4.7-1.8-6-5.2-1.2-3.4-2.7-9-3.4-9.6-.7-.6-1.6-1-3 0-1.5 1-1.6 2.6-1.8 3.8-.2 1.2 0 2.6 1.5 4.4 1.4 1.8 3 3.5 3.5 5.4.6 1.8 2.2 4.6-.1 4.7-2.3.1-3.4.2-5.1-1.5-1.8-1.7-8.7-6.4-10.6-8l-2.7-2c-3.2 0-6.4-1.3-9.6-3.5 0 0 1.9 4.7 2.2 6.5.4 1.7.3 2.7.3 2.7l9.7 5a177 177 0 0111 6c2.7 1.8 5 4.3 9.7 3.3 4.8-1 14.5-3.9 17.6-4.8 3.1-1 11.7-3 14.9-5.3 3.2-2.2 3.5-2 4-4.2.6-2.2 0-3.4-1.4-4.3zm-18.4-33l2.4-.3c1.6-.2 1 1.4.7 2-.2.6-.7 1.8-1.4 2.9-.7 1.1.2 1.3.7 1.5l2.4.6c1.3.3 1-.6 1.1-1.1 0-.5.1-3 .3-4 0-1 1-.7 1.3-.5l1.8 1c.6.3 1 0 1-.4l.8-2.2c.3-1-.3-.8-1-.8h-2.6c-1 0-.4-1-.4-1l1.4-2.3c.6-1 .4-1.1-.2-1.3l-3-.7c-.5-.2-.8 0-.8.3v2.9c0 .7-.1 1.1-1 1.1-1 0-1.5-.5-2.3-1.3-.7-.8-1-.5-1.1-.2l-.8 3.3c-.2.7.2.6.7.5zm5.2 23.3s-.1 1.8-.3 2.4c-.2.7-.6 1.6.1 1.9.8.3 1.5.6 2 .4.4 0 .2-1 0-1.7a6.8 6.8 0 00-1.3-2.4l-.5-.6zm11.2 7.3c.2.6.8.8 1.1.9.4.1 1 .1 1-.6s0-1.6-.5-2.4c-.6-.7-.9-1.3-1.2-.2-.4 1.2-.7 1.8-.4 2.3zm-39.1-7.4l1.5.4s0-1.7.3-3c.2-1.2.7-2 .3-2-.5 0-.7.4-1 .9-.4.5-1.3.6-1.6 2.1-.3 1.4.2 1.5.5 1.6z"/>
+  <circle cx="350.8" cy="331.9" r="2.5" fill="#b96b29"/>
+  <circle cx="357.8" cy="333.6" r="2.5" fill="#b96b29"/>
+  <circle cx="378.3" cy="338" r="2.5" fill="#b96b29"/>
+  <circle cx="364.9" cy="335.3" r="2.5" fill="#b96b29"/>
+  <circle cx="366.7" cy="329.2" r="2.5" fill="#b96b29"/>
+  <circle cx="368.5" cy="323.1" r="2.5" fill="#b96b29"/>
+  <circle cx="351" cy="331.7" r="1.2" fill="#d4af3a"/>
+  <circle cx="358" cy="333.4" r="1.3" fill="#d4af3a"/>
+  <circle cx="378.5" cy="337.7" r="1.3" fill="#d4af3a"/>
+  <circle cx="365.1" cy="335.1" r="1.3" fill="#d4af3a"/>
+  <circle cx="366.9" cy="328.9" r="1.3" fill="#d4af3a"/>
+  <circle cx="368.7" cy="322.8" r="1.3" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M287.5 383c-1.4-.8-2.5-1.7-5.6-3.8-3-2-4.1-4.2-4.1-4.2h1c.6 0 1.1-.8 1.2-1.7 0-.8 0-2.4-.3-4.4-.2-2 .3-3.5.3-3.5s1.3 1.2 3.3 2.3c2 1 2.8.5 2.8.5l.5-2 2 4c1.3 2 4.5 4.4 6.9 6.2 2.3 1.7 4.9 3.6 6.8 4.2 2 .7.8 1.6.8 1.6s-2 2-6.9 2.8c-5 1-7.4-1-8.7-2z"/>
+  <path fill="#d4af3a" d="M270 381.1c1.8-.2 3-.8 3.3-2.8.2-1.2-.1-6-.1-6l1.2 1.2c.7.9 2.2 1 2.2 1s.2.7 1 1.8a10 10 0 003.2 3.5 53.8 53.8 0 015 3.4 30 30 0 004.5 3.3 7.5 7.5 0 013.8 5c.6 2.5.1 3.3-1.9 3.2-2-.2-2.1 0-5.3-.8-3.2-.8-7.8-4.4-11-6.5-3.4-2-5.8-6.3-5.8-6.3z"/>
+  <path fill="#d4af3a" d="M261.2 384s1.4-1.7 1.9-3.6l1.4-5.8 1.5 3.5c1.1 2.3 3 2.9 3 2.9s0 1 1.6 2.9a22.5 22.5 0 006 5c2.3 1.4 5.3 3.3 6.9 5.6s1.8 4.7 1 5.7-1.8-.2-3.4-1c-1.5-.7-5.9-1.4-11.9-4.6-6-3.2-8-10.6-8-10.6z"/>
+  <path fill="#d4af3a" d="M258.6 397.5c-1.6-2.5-1.9-8.5-1.9-8.5l1.4-1c.8-.8 2.4-3.1 2.4-3.1l2 4c1.1 1.9 1.6 2.6 3.9 4.6 2.2 2.1 5.3 4.1 6.6 6.3 1.3 2.3.6 6.7-.3 8.1-.8 1.5-2 1-3.3-.2l-3.8-3.4c-2.3-1.9-5.3-4.3-7-6.8z"/>
+  <path fill="#b96b29" d="M278.4 347c-1-1.8-1.9-4-2.7-5a16 16 0 01-1.4-2.5s2.2 2 3 3.4a15 15 0 011.8 4.2c.3 1.5.2 1.7-.7 0zm-8.5 1.6a53.6 53.6 0 01-.6-2s-.3-1.2-.1-1.3c.2 0 1 .8 1.7 2.7.6 2 1.5 4.8 1.3 5-.2 0-2-3.2-2.3-4.4zM263 354l-.4-1s-.6-2.1-.6-2.6.2-1 .7.2c.6 1.1.7 2.2.8 2.7.1.5.8 2.2.6 2.4-.2.1-.7-.9-1-1.7zm20.9 20.4l.9-.5 1.3 1.5c.8.8 1.6 1.2 2.2 2a8.5 8.5 0 002.9 2.4c1.4.7 1.9 1 1.6 1.1-.2.3-1.2-.3-1.2-.3s-.4 0-2-1-2.1-1.6-3.2-2.5l-2.5-2.7zm-7.3 8.7c-.6-.7-1.3-1.2-1-1.5.4-.4.9-.4 1.5.1l3 2.8c.7.7 1.4 1 2.1 1.7.8.6 2.4 1.5 3.2 1.9.9.5.1.5.1.5l-1.3-.5-2.6-1.1-1.8-1.1a25.9 25.9 0 01-3.2-2.8zm-8.4 5.8c-.5-1.1 0-.8 1-.4.9.3 2.9 2.5 4 3.3 1.2.8 2.2 1.2 3.2 1.7s1 .7 1 1c-.1.2-.5.2-1 0l-1.7-1-1.1-.2c-.6 0-1.3-.7-2.6-1.7-1.2-1-2.2-1.7-2.8-2.7zm-3.9 7.7c1.5.9 4 2.9 4.7 4.2.7 1.4 1.2 2.3 1 2.6-.3.2-1-.3-1.3-.8-.3-.6-1-1.4-1-1.4s-2.6-2.5-3.5-3a8.9 8.9 0 01-2.8-3.3c-.4-1-.1-1.5-.1-1.5s1.6 2.3 3 3.2z"/>
+  <path fill="#c52126" d="M304 181.3a23.7 23.7 0 0119-1.6c2.3.6 4.1.7 6 .2a8 8 0 005.6-6.3s2.6 3.3 0 6.8a7.7 7.7 0 01-4.6 3.2c-5.4 1-10.8-2.3-15.3-2.6-4.3-.2-7.7 2.5-7.7 2.5s-1 .9-2.5 0c-1.5-.8-1.9-1.5-.5-2.3z"/>
+  <path fill="#d4af3a" d="M319.6 338.7l1.3-.2c.8-.1 2.4-.6 2.8-.9.5-.2 1.3-.2 1.7.3.5.5 4.4 2.9 4.4 2.9h-6.4c-2.3 0-3.8-2.2-3.8-2.2z"/>
+  <path fill="#d4af3a" d="M301.4 337.6v-.7l.9-1.8s1 .6 2 1.6c1.2 1.3 2.6 3.2 3.2 4 1 1.3 2.6 2.6 1.3.4s-1.7-3.2-2.8-4.6c-1-1.5-1.8-2.1-1.7-2.2l3.7-.6c2.7-.3 4.4-1.4 5.6-2.1l3.5-2s4.6 2 6.4 2.4c1.7.5 2.7.7 1 1.5-1.6.9-3 1.1-3.9 1.6a11 11 0 01-4.9 1.4c-1.5 0-4.2 0-3.1 1 1 1.2 2.2 3.3 3.3 6.4a21.6 21.6 0 011.2 7.4l-.2 2.7s-2-2.1-7-5.3c-5-3.2-7-4.3-8-4.7-.9-.4-1.4-.4-1.2-1.6l.7-4.8z"/>
+  <path fill="#d4af3a" d="M282 322.1l1-.4h.2c.6.4 3.7 2.4 5 4.5 1.2 2 2.4 2.2 1 0a19.1 19.1 0 00-3.4-4.4 25 25 0 00-1.1-1c2.5-1.2 5.2-2.6 7.8-4.5.4.7 1 2 1.8 2.7 1 1.1 3.4 2.1 3.4 2.1s-1.9-2-2.5-3.5c-.5-1-.7-2-.9-2.6a33.9 33.9 0 005.2-4.9 19 19 0 004.4 7.9c4 4.5 12 6.7 12 6.7s2.8.3.5 1c-2.3.5-3.9 1.5-8.3.8-4.4-.8-4.7-1-5.3-1.2-.6-.1-2.2 0 0 .8s7.3 1.6 9.3 1.4c2-.1 4.7-.6 1.8 1-2.8 1.4-4 2-5.7 2-1.7 0-2.4.6-4.1.6-1.7 0-2.1-.3-3.3-.6-1.2-.2-2 .2-2 .7s1.6 1.8 1.5 5a28 28 0 01-.6 6.4c-.3 1-1 2.5-1.5 3.4-.4 1-.6 1.8-1 0-.6-2-1.6-4.7-2-6.6-.5-1.8-.7-1.9-.9-2.9-.2-.9-1.2-1.6-.7.1l1.4 5.5c.3 1.5 1.2 4.4-.3 2.1-1.4-2.2-6.8-8.3-7.7-9.3-.9-1-1.6-2.1-2.2-3-.7-.9-2.5-2-3.4-3.4a30.3 30.3 0 00-4.2-4.3l4.8-2.1zm74.2-137.7c-.2 3.3-3.8 9.6-5.9 13-2 3.3-2.6 4.6-2.3 4.8.4.3 1.2-1.5 2.4-3s3.3-5 5.2-7.6c1.8-2.6 4.5-9 5-9.5.3-.6.4-1 1.3-.2 1 .7 2.8 7.6.6 12.3-2.1 4.8-5.3 8.2-6.7 9.8-1.4 1.7-3.1 4.2-2.9 4.5.3.2.8-.5 2.5-2.2a152.9 152.9 0 006.1-6.8c1.4-1.7 3.4-5.2 4.1-6.5.3-.5.6-.4.8-.1.7.6 1.6 2 1.2 5.7-.6 5.2-3.3 8.2-5.7 10.9-2.5 2.6-4.9 4.8-4.5 5.2.3.3 2.8-1.9 4.5-3.5 1.8-1.7 6-5.7 6.9-6.9 1-1.1 2.3-.6 2.2 4 0 4.4-5 9-7.1 11.5-2.1 2.5-4.7 4-4.5 4.5.3.5 2.3-.8 3.7-1.7 1.3-1 6.4-4.2 7.4-5 1-.6 1.5.7.2 5s-5 7.7-7.2 9.3c-2.2 1.6-5.8 3.5-5.6 4 .3.5 1.7-.1 3.8-1.1 2-1 4.6-2 6.4-2.5 1.8-.5 1.8.8 1.8.8s.3 3.7-2.3 6.6a14.2 14.2 0 01-8.5 4.6c-2.9.5-3.3.6-3.2 1 0 .5.3.5 1 .5.6 0 3.3.3 5.7.3s3.7.6 3.7 1.7c0 1 0 2.5-3.6 4.9-3.6 2.4-7.7 2.8-9.4 3.1-1.7.4-1.8.5-1.4 1 .3.5 1.1.5 3.8.8 2.7.2 4.4 1.3 4.7 2 .4.8-.2 2.9-2.4 4.4-2.2 1.5-5 2-9.3 1.7-4.3-.3-5.4-.3-5.5.4-.2.7 1.3.9 3.4 1.3 2.1.3 3.8.3 5 1.3 1.2 1 .3 3-1.8 4.6-2 1.5-7.2 1.5-9.3 1.3-2.2-.1-5.5-.9-5.7-.3-.2.6 1.6 1.4 3.8 2.2 2.2.8 2.8 1.3 3.3 2.2.4 1 0 1.8-2.6 2.8-2.6 1-6.5 1-8.5 0-2-.8-3-1.2-3.4-.8-.4.3 0 .7.4 1.2s2.2 1.8 4.4 2.4c2.2.6 2.4.6 3.2 2.4.8 1.8-1.2 3.2-5.2 3.3a25 25 0 01-11-2.4c-1.8-1-2.4-1.2-2.7-.9-.3.4-.2.6.6 1.2.9.7 3.6 2.6 5 3 1.3.3 1.4 1.3 1.4 2.3 0 .9.4 2.8-3.2 3.6-3.6.9-7.8.2-11.6-2.5a8.8 8.8 0 01-2.4-2.2c.3-3.7.2-6.2-.3-8.5.8 0 2.2-.3 3.7-.9 2.1-.8 3-2.8 3.5-4 .5-1 1.2-1 2-.7 1 .3 1.8.7 3 .6a8.4 8.4 0 005.6-3c1.9-2.2 1.5-4.3 1.6-5.4 0-1 1.8-.3 2.6-.3.9 0 3.4-.3 5.7-1.9 2.3-1.6 2.3-3.7 2.5-4.6.2-.8 1.1-1.4 1.8-1.7.7-.3 1.9-.6 3.4-1.8 1.6-1.3 2.2-3.8 2.3-4.7 0-.8 1-1 4.2-2.6s2.9-5 2.8-6.4c-.2-1.4-1.7-2.5-1.7-3s1-.6 2.2-1.3c1-.6 3.7-1.7 3.8-5.7 0-4-2.6-4.4-2.6-4.4l1.6-.9c1.1-.6 4-2.6 4-5s-1-3.4-1.8-4c-.8-.6-3-1.1-3-1.1s1.4-1 2-2.8c.5-1.8.7-4.1-.6-5.8-1.4-1.6-3.6-1.6-4.9-1.6s-2.2.7-2.7.3c-.4-.4-.5-.6 0-1.6s.5-3.2 0-4c-.3-.8-.3-2.3-3.4-3.3-3-1-6.3 1-7.3 1.6s-.6-.8-.6-1.8 2.1-3.5 4.5-7a78.9 78.9 0 0010.7-25.1c.4-1.8 1.1-1 1.1-1s.7.3 2.4 4.5a26.7 26.7 0 011.8 11.2z"/>
+  <path fill="#d4af3a" d="M302.3 257.5a8 8 0 006-3.8c2-2.7 4.7-3.3 9.5-3.2 4.7 0 7-2.2 8.1-5.5 1.2-3.4-.1-7.1-5-9.5-4.9-2.4-7.1-5.1-7.3-9.2-.2-4.2 4.9-9.3 10-15.1 5-5.8 9-14 9-14s1.4 1.9 1.4 3.8c0 2-.7 4 0 4.5.8.6 1-.8 4-2 3-1.4 5.3-1.5 7.2.6s0 5.8-1.7 7.5c-1.7 1.8-3 3-2.6 3.7.5.7 3-1 3.8-1.6.8-.5 2.8-2.6 5.6-2.4 2.9.3 3.9 1.1 4.1 3.5.3 2.4-2.5 4.6-4.4 5.5-1.8.9-2.5 1.7-2 2 .4.5.8 0 1.7-.2.8-.3 3-.5 4.6 0 1.4.6 3.8 2.6 1.6 5-2.2 2.6-6.8 3.5-7.7 3.7-1 .2-1.4-.1-1.5.6 0 .8 2 .8 4.4.9 2.5 0 3.2 2.4 2.9 4.3-.4 1.8-4.5 3.8-6.8 4.2-2.3.4-3.1 0-3.3.7-.2.6.2.9 1.5 1.2s3.8.7 4.3 2.7c.4 2 .5 3-1.4 4.7-2 1.8-5 1.5-6 1.3-1-.2-2-1.2-3-.3-.9 1 .9 1.7 2.5 2.8 1.5 1 1.4 3.2-1.2 4.7a8.2 8.2 0 01-6.5.5c-1-.3-2.6-2-3.3-1-.7 1.1 2.3 1.5 3.6 3 1.3 1.6.8 4.2-1.8 5.8-2.5 1.5-6.8.4-7.5-.2-.7-.7-1.6-1-2.2-.4-.5.6.3 2 .8 3.3.6 1.3 1.6 5-2.3 6.6-3.8 1.4-7.3-1.9-8-2.5-.6-.7-1.3-.8-1.8-.5-.6.3-.3.8.2 1.5a3.9 3.9 0 01-1.3 5.3 6.8 6.8 0 01-5 1c-.6-2.1-1.4-4.4-2.1-7.6h.5c.4 0 .5.5.5.7 0 .3-.1.4.2.4.3 0 .4.2.8.6.5.3 1 .7 1.2.5.3-.2-1-.8-1.3-1.2-.3-.4-1-1-1-1.5s-.3-.7-1-1.3a2.5 2.5 0 01-.4-.5 104.4 104.4 0 01-1.3-7.7 61 61 0 01-.5-5.9h1.2zM381 200c-4.1 8.3-10 13-10 13l1.2-3.5c.3-1.4 0-3 0-3l4.2-6c2.7-4.2 4.1-10.3 4.1-10.3s-2.5 6.1-4.4 9.3c-2 3.3-4.2 6-4.2 6s-.8-3-1.4-3c-.5-.2-1 .2-1.4.9-.5.6-1 .5-1 .5l1.8-3 1.6-2.3c1.5-2.4 4.8-7 6.5-11.6 1.7-4.6 5.4-16.1 6-19.5.7-3.4 1.3-1.6 2 1a31 31 0 011 11.3 57.1 57.1 0 01-6 20.2zm-5.3 22.4l-3.8 2.7.6-1.9.3-3 3-2.7c1.3-1.1 2.9-2.5 6-6.4 3.1-3.8.6-1.5-2 1.3a96.8 96.8 0 01-7.3 6.8v-1a3.3 3.3 0 00-.8-2c-.5-.6-.2-.6 2.5-2.7a72.8 72.8 0 0018.7-26.1s1.6 9.5-4.2 20c-5.8 10.5-11.5 13.9-13 15zm-30.5 60c-3.1-1.2-2.3-4.3-2.3-4.4l3.8 1.3c1.8.7 6.2 2 8 2 1.7 0 1.7-.2 1.7-.4 0-.3-1.3 0-3.8-.5s-7-2.8-7.7-3.3c-.8-.5-.7-.6.4-.7 1.2-.1 2.1-.6 2.5-1 .5-.3 1.6.2 4.5.9a53.4 53.4 0 0023 .8c.6-.2 1.4.2-.8 3.9-2.2 3.7-10 5.7-15.3 5.6-5.4 0-10.8-3-14-4.1zm14.3-7.6c-5.5 0-7.6-1.6-7.6-1.6s0-.3.8-1.4.6-3 .6-3l3.6.5c2.3.4 5 .7 8 .2s1.7-.9-.7-.6c-2.4.3-6.9-.6-8.3-1-1.5-.6-.9-1 .1-1.4 1-.3 3.7-2 3.7-2s6.7.8 13 .1c6.2-.7 10.2-2.3 11.5-2.5 1.2-.2 1.2.3 1.2.3s.3.6-1.8 4a18 18 0 01-10 6.6 53.7 53.7 0 01-14 1.8zm1.5-13l.5-1.4c.4-1.2-.6-2-.6-2s1.3-.4 5.4-1c4.2-.4 4.4-.8 7-1.3 2.5-.6 4.2-1.3 4.1-1.6 0-.3-.8.1-2.3.7-1.5.5-7.9 1.2-10.6 1.6-2.6.4-4.1.6-4.6.4-.5-.3-2.1-.7-2.1-.7l2.5-.6a9 9 0 003.4-1.4c.8-.5 1-.6 4.4-1 3.4-.4 6.1-1.5 12.2-3.7 6-2.2 10.6-4.8 11.9-5.8 1.2-1 1.1-.3.8 1-.4 1.2-.3 2.8-3.4 6.4-3 3.6-4.5 5.1-12.3 8s-16.3 2.4-16.3 2.4zm22.8-18.8a43.3 43.3 0 01-16.5 6.8c-.4-.4.4-2 0-3-.4-1.2-1.1-1.2-2.8-1.3-1.6 0-.6-.4-.2-.4.4 0 .5 0 3.2-.8 2.7-.7 5.5-1 9.3-2.5 3.7-1.4 4.9-2.5 4.8-2.7-.1-.3-1.8.9-5.2 2.2-3.5 1.3-7.6 1.8-9.8 2.3-2.2.5-.3-.5.8-1.1 1-.6 2.5-2.9 2.5-2.9s2.4-.4 6.4-1.6c4-1.2 7.3-2.6 10.7-4.5 1.1-.6 2.3-1.5 3.4-2.3l5.5-4c1.4-1 1-.2.8.4-.1.6-1 3.5-3.2 6.6-2.2 3-2.9 4-9.7 8.8zm1.1-13.5c-6.7 5.3-12.5 7-13.5 7.4-1 .4-.9-.1-.7-.7.2-.6.3-2.4.3-2.4l5.1-3c2.7-1.5 5.7-3.6 7.6-5 2-1.3.8-1.2.2-.7-.6.5-3.3 2-6 3.8l-7 4.1s0-.9-.6-1.4c-.5-.6-2-.4-2-.4l1.2-1.4c.4-.7 2.6-1.4 5.1-2.6a62 62 0 0010.3-7.2c3.3-2.8 9.7-9.8 10-10.3.5-.6.8-.5.8.2s.3 1.2-.4 4.4-3.7 9.9-10.4 15.2zM361 179.3l-2.2 3.8c-1 1.5-1.4 2.5-1.4 2.5s-.2-.5 0-1.5c0-.9.2-2.2 0-3.7l-.3-2.4c0-.9.3-1.6.5-2l1.6-7.7c.5-2.7 1-6.7 1-10.2 0-3.5-.6-1.7-.6 0s-.2 4.3-.7 8.3c-.5 4-2.2 10-2.2 10s-.1-.9-.7-2.2c-.5-1.4-1.3-2.9-2-4.5s-.4-2-.4-2 2.4-11.3 3-16.6c.6-5.3 1.6-19.4 1.6-19.4 3.5 3.5 6 12.6 6.5 21.3.4 6.5-.7 12.5-1 15-.6 4.8-1.4 8.6-2.7 11.3zm7.7 17.8c-.1-2.6-.7-4.5-2.4-5 0 0 1.5-2.6 2.7-6.3a35 35 0 002-8.2c1-6 1.6-12.3-.2-2a44.4 44.4 0 01-4 13.8l-2.6 4.3c.4-2 .5-3.2.4-5.3a33.6 33.6 0 00-1-7s3.2-6.3 5.2-13.9a87.7 87.7 0 003.4-24.1s3.2 2.4 4.3 14.8a74 74 0 01-3.8 28.8c-1.6 4.5-4 10-4 10zm-35.5 94.5l2-1.3c1.6-1 1.1-4 1.1-4a81 81 0 005.5 3.4l3.3 1.3c1 .3.7 0-.1-.5-.8-.5-1-.8-3.1-1.6-2-.8-6.2-4.4-6.2-4.4l2.7-.1c1.7-.1 3.8-1 3.8-1s1.7 1.6 8.5 4.5c6.9 3 12.7 3.7 12.7 3.7s-.8 3.5-4 4.7c-2.8 1.1-6.5 1.9-13.8.1a46.5 46.5 0 01-12.4-4.8zm-9 7c-.5-2.9 1.1-4.9 1.1-4.9l1.4 1.1c1 1 2.5 2.7 5.4 4.1 2.8 1.5 3.9 1.4 1.1-.1s-6.8-5.7-6.8-5.7l1-.4c1.1-.4 3 .3 10.7 4.9a29 29 0 0012.2 4.8s-3.5 4.1-12.8 3.8c-9.3-.3-12.7-4.7-13.3-7.6zm-17.6-3.4s1 1.5 2.4 2.4c1.4 1 5 1.5 5 1.5l1 1.3c.7 1 2.3 3.2 3.9 4.3 1.6 1.2 4.2 2 4.4 1.7.1-.3-1.5-1-3.1-2-1.6-.9-3-2.7-4.1-4-1-1.2.4-1 .4-1h3.8c1.8-.2 1.4 0 2 .8.4.9 1.2 1.7 2.5 3.2l4.7 5.4c1 1.3.3 1.6.3 1.6s-.5.8-4.7 1.3c-2.5.2-5.3 0-8.2-1.8a25 25 0 01-5.6-4.8c-5-5.4-4.7-9.9-4.7-9.9zm-2.2 11.3l1.6 1.9s-.7-2.2-1.4-3.3a20.2 20.2 0 00-.9-1.4 27.6 27.6 0 001.7-5c.4 1.5 1.8 5.8 3.6 8.6 2.2 3.5 4 4.7 2.8 5.6-1.2 1-3.6 1.2-6.3-.2-2.7-1.3-3.4-3.5-3.8-5.3a26.4 26.4 0 001.3-2.3c.3.2.8.6 1.4 1.4z"/>
+  <ellipse cx="-305" cy="169.2" fill="#d4af3a" rx="1.9" ry="1.8" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M309 165.9c-1.7 0-2.7-.9-4.6-.7a28 28 0 00-9 3.6 15.5 15.5 0 01-10.5.9c-1-.3-2-1-3-1.5-4.6-2.5-3.5-7.6-3.5-7.6a17.8 17.8 0 0011.3 3.5l-1 .8c-.6.7-1.8 1.5-1.4 1.8.4.3 2-1.3 3.4-2.3a20.6 20.6 0 017-3.4c3.5-1 7.4-1.1 10 .3 2.7 1.5 3 3.3 2.6 4-.2.5-.7.6-1.3.6zm-49.3 37c.8-.2 2.2-.5 4-2.2a78 78 0 006.8-7.3c.5-1 .3-1.8-1-2.3-1.2-.5-2.1-2-2.1-2s2.7-1.1 4.5-2.4c1.9-1.4 6.1-5.2 6.7-6.1.6-1 .3-1.1-.6-1.4-.9-.3-1-1-1-1s1.9-1.1 3.7-2.6a75.5 75.5 0 004.3-4c2.8 1.2 7 .7 9.4.3 4.1-.7 7.1-2.4 7.1-2.4l.7 1.9c.5 1.3 2.4 2 4.3.7 1.9-1.2 1.4-4 1.4-4s1.6-.9 4.7-2c3.2-1.2 5.7-1.4 8.3-.2 2.5 1.2 3.8 4.7 3.8 7.3 0 2.7-1.4 1.6-1.7 1.2-.3-.4-.9-2.3-4.1-2.8-3.2-.5-6.1 1-9.8 4-3.7 3-4.5 3.3-6.3 5.2-1.8 1.9-.4 3 2.8 4 3.1 1 7.2-1 7.3-1 .6.3-1.4 3.1-4 4.2-2.8 1-6.3.3-9-.7-1.8-.8-2.1 0-2.6.5-3 3.2-3.8 6-4.3 9.7a4.3 4.3 0 01-2.8-3.3c0-.6-.3-1.9-1.3-1s-1.8 6.3-1.8 8.7c0 2.5.7 5.7.7 5.7l-.7-.1c-.5 0-1.3-.6-2.5-1.2-1.2-.7-1.3 0-1.3 1.4 0 1.3-.4 3.8-2.2 8.3-1.7 4.4-4.3 5.9-4.3 5.9s-.5-.9-1-2.7c-.5-1.7-.9-5.2-.9-8.2 0-3 .8-9.4.8-9.4s-3.6 4.4-7.4 5.5c-3.8 1.1-7.6.5-9.2-1.4-1.6-1.8-.2-2.6.6-2.8z"/>
+  <path fill="#d4af3a" d="M284.8 214.5s1.1 2.5 1.7 3.4c.7 1 1 1 1 1s-1.2 1-2.9 1.6l-3.2.8s2-2.6 2.6-4.4l.8-2.4zm-22.9-1.5l.9-2.3a16 16 0 008.7-1.8s-1.8 3.6-3.5 4.8c-1.8 1.3-2 1.3-2 1.3s1.7.3 4.1-2c2.3-2.3 3.4-5 3.4-5s-.5 6.2.4 10l1.2 4.2s-5 1-10.5-.6c-5.6-1.6-6-2-6-2s-.7-.2.2-1.4a29.9 29.9 0 003.1-5.2z"/>
+  <path fill="#b96b29" d="M272 199.4l1.8-2.4s.6.6.1 1.4c-.5.9-3 3-4.6 4a13 13 0 01-3.3 1.2v-.3s4.2-2 6-3.9zm6.7 12.9l.4-9c0-1 .7-.8.7-.8l.9.4-1.7 11.3c-.1 1.2-.7 1.1-1 1 .6-.2.7-2.6.7-3zm10.4-33.6c.7-.6 2.1-1 .7.5-1.3 1.5-3.1 3.4-3.7 5-.5 1.6-.8 3.5 0 3 1-.3 1.6-.3 2.6-1.1s2.7-2.1 3.5-2.3c.7-.3 2 0 1 1.1a26.4 26.4 0 01-4.3 3.7l-4.2 2.9a39.3 39.3 0 01-2 1.4s.9-6.4 2.6-9.1a28 28 0 013.8-5zm34.2 105.9c1.3 1 3 1.4 3 1.4s.7 0 .7.2-.9 0-1.9-.2c-1-.1-2.3-1.1-2.7-1.5-.5-.3-1.2-.8-1-1.4.2-.6.6.5 1.9 1.5zm-11 5.9a28 28 0 002.4 1.9l1.3.7c.7.3 1 .7 1 .7h-1c-.8-.1-3-1.8-3.6-2.5-.8-.6-1-.8-.8-1 .3-.3.4-.1.7.2zM357 211c-.4.5-1 1.1-1.1 1-.3-.3 0-.5.5-1.2l.9-.9s.7-1.2 1.1-1.6c.5-.4 1.1-.7.3.3l-1.8 2.4zm3.3 7.4L359 220c-.5.6-1 1.2-1.2 1-.3-.4.8-1 1.2-1.7a8 8 0 011.5-1.5 10.6 10.6 0 011.4-.9l-1.5 1.7zm-1.2 12c-.9 1-2.1 1.2-2.3.8-.2-.3.1-.6.8-1a24.4 24.4 0 004-2.7c.4-.4.8-.7 1-.6.1.1-1.2 1.5-1.6 1.8-.4.2-1 .9-2 1.7zm-2.5 9.7c0-.4 0-.6.7-.6l1.6-.2s1.4-.5 1.5-.3c.1.3-1.1.8-1.7 1-.5 0-1.2.2-1.5.4-.3.1-.6 0-.6-.3zm-1 10.4c1.5 0 2.8-.4 2.9-.1 0 .2-.7.5-1.5.8-.8.3-2.2.4-3.1.4-1 0-1.2-.2-1.1-.7 0-.4 1.3-.4 2.8-.4zM343.8 262c.2-.2.8 0 1.6.2.9.2 2.2.4 3 .4l2.5-.1 1 .2c0 .2-1.3.2-3.1.4-1.9.2-3.1-.2-4-.3-.9-.1-1.2-.5-1-.8zm-4.9 8.2a8 8 0 002.4.4l2.3.3s.8.1.7.4c-.1.3-.4 0-1 0h-2.6c-1.2-.1-2-.5-2.7-.6-.7-.1-1.6-.5-1.2-1 .4-.5 1.2.1 2.1.5zm-9.4 6.1a27.7 27.7 0 003.7 2.7c.8.4.8.5.7.8-.2.2-.7-.3-1.1-.5a17.4 17.4 0 01-2.7-1.8c-.7-.6-1.7-1.1-1.5-1.6.2-.4.3 0 .9.5zm15.7-79.7l-1.8 2.4c-1.6 2-.7.2-.3-.4l3.6-4.8c.8-1 1-.5.5.1l-2 2.7zm3.5 10.5c-.3-.3.3-.5 1.2-1.7l2.8-3.5s.5-1.1.7-1c.2.1-.6 1.9-1.4 2.6-.8.8-1.7 2.2-2.3 2.9-.5.6-.8 1-1 .7zm-4.6 19.7c0-.6 1.9-.5 2.7-.7l2.4-.5s1.7-.3 1.8 0c0 .1-.4.4-1.4.5-1 .2-2.4.7-3.5.8-1 .2-2 .4-2-.1zm4.6-10.7c-1.3 1-2 1.5-2.7 1.8-.7.4-1.2 1-1.5.5-.4-.4.3-.7 1.3-1.2l1.6-.8 1.1-.6c.5-.3 1.4-.7.2.3zm-10.6-7l1.4-1s1-.8 1.1-.5c.2.3-1 1.1-1.6 1.6-.6.6-1.6 2-2.2 1.8-.5-.3.6-1.2 1.3-1.9zm7 27.5l1.6.4c.7.2.7.5-.5.5s-1.7-.3-2.9-.5c-1.2-.3-1.6-.4-1.4-.8.2-.4.8-.3 1.3-.1l1.8.5zm-2 9.9c.1.2-.8 0-1.4-.2-.6-.3-1.9-1-2.7-1.1-.7-.3-.7-.4-.7-.8 0-.5.8-.1 1.8.2 1 .3 2.2 1.3 2.2 1.3s.8.4.9.6zm-12.7 6c-1-.5-1-1-.8-1.2.3-.3.6-.2 1.3.4l2 1.5 1.3.6c.5.3 1.2.7 1 1-.1.2-1.2 0-1.8-.6l-3-1.7zm-6 8l-2-1c-.4-.4-.7-1.4-.3-1.6.3-.1.6.5 1.4 1 .8.7 3.7 2.6 3.7 2.6l.8.3c.8.3.4.6-.2.5-.7-.1-1.2-.1-2-.7-.7-.7-1.1-.8-1.4-1.1zm-9 7.6c-.7-.3-1.8-1.3-2.4-1.8-.5-.5-1.2-1.1-.8-1.4.4-.3.9 0 1.5.6l2.2 2.3s.3 0 1.1.8c1 .7 0 .6-.3.3s-.5-.5-1.3-.8z"/>
+  <path fill="#d4af3a" d="M279 154.5l-3.6-2.5 4.3-1.1 2.7 2.2z"/>
+  <ellipse cx="-267.5" cy="151.6" fill="#b96b29" rx="3.4" ry="3.3" transform="scale(-1 1)"/>
+  <ellipse cx="-267.5" cy="150.8" fill="#d4af3a" rx="2.1" ry="2" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M274.7 140.2c-1 .3-2 .2-2 .2s-.4-1.6.4-2.3l2.1-1.8.6-.6.1 2.1c0 .8-.3 2-1.2 2.4z"/>
+  <circle cx="-272.8" cy="141.8" r=".6" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M277.5 141.2l.9 1s-.7 0-1.3.4c-.6.4-1.3.8-2 .7a1 1 0 01-.8-1.2c.1-.5.5-1 1.6-1.3 1-.4 1.4 0 1.6.4z"/>
+  <path fill="#d4af3a" d="M275.1 145.2c2.2.2 5-2.2 5-2.2.3 2 1.5 3 3.3 3.3h-.2s-1.7 1-3.7 1.2c-.9.2-1.7 0-2.6-.2a11.3 11.3 0 01-3.2-1c-1.3-.8-1-2.9-1-2.9s.3 1.6 2.4 1.8zm8.4-2.1c1-.4 2.2-1 2.8-1 .5 0 1.3-.2 1.2.8-.1 1-1.2 1.5-2.2 1.6-1 0-1.6-.4-2.2-.7-.6-.3-.5-.4.4-.7zm6.8-3.7c1-.7 1.8-.9 1.8-.9s.6 1.7.3 2.7-1.1 1.3-2 1.3c-1 0-2.3-.5-2-1.2.5-.7 1-1.2 1.9-2z"/>
+  <ellipse cx="-289.4" cy="144.1" fill="#d4af3a" rx=".8" ry=".5" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M287.3 135.8c.6-2.9.5-6-2.2-9.9-2.7-4-7.3-5.5-7.3-5.5l-1.7-1.9a32.7 32.7 0 00-4.5-3.6l5.5 1.5v.1a2.4 2.4 0 002.4 2.5 2.4 2.4 0 001.4-.4c1.1.2 4.7 2.3 5.7 3.1a2.5 2.5 0 00-.4 1.3 2.4 2.4 0 002.4 2.5 2 2 0 001.1-.3l.3.5a25 25 0 011.8 4 2.6 2.6 0 00-1 2.1c0 1.4.8 2.5 2 2.5v1.6c0 .8-.4 1.3-1.8 1.7-1.4.4-3.3 2.8-3.3 2.8-.1 0-1-1.8-.4-4.6z"/>
+  <path fill="#d4af3a" d="M278.8 117.6c-.5-.4-.6-1-.2-1.4.4-.4 1.1-.3 1.6.1s.6 1 .2 1.4c-.4.4-1.1.3-1.6-.1zm9 6.1c-.6-.5-.7-1.3-.2-1.8.4-.4 1.2-.4 1.8.2.6.5.7 1.3.2 1.7-.4.5-1.2.4-1.8 0z"/>
+  <circle cx="-293.2" cy="131.4" r="1.4" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M263 112c.8.2 2.1.6 4.1 1.7-1.4 0-2.5.9-2.5 2s1.3 2.4 2.7 2.4c1.4 0 2.3-1.2 2.3-2.3 0-.3 0-.6-.2-.8l2 1.2c4.4 3 5.4 4.5 7.6 8.5 2.2 4.1 3 8.6 2 11.2-.9 2.7-4.4 3.2-4.4 3.2s.4-.4.4-.9l-.2-1.7c-.2-1 0-2.2 0-2.2s-.9-.1-1.3.4l-1.6 1.8-1.6 1.6s-.7-1-.7-2.2c0-1.2.8-2.5 1-4.6.1-2-1-5.8-3-8.6a24 24 0 00-7-5.7 2.2 2.2 0 01-1.5-2l-.2-2c-.1-1.3 1-1.2 2.2-1z"/>
+  <path fill="#d4af3a" d="M267.5 116.8c-.8 0-1.5-.7-1.5-1.4 0-.6.6-1.1 1.4-1.1.8 0 1.4.5 1.4 1.1 0 .7-.5 1.4-1.3 1.4zm-6.6 26a3.3 3.3 0 01-2.8-.2c-.6-.4-.8-1.3-.1-1.9a2.1 2.1 0 012.3-.2l2 1.4s-.3.5-1.4.9z"/>
+  <path fill="#d4af3a" d="M257.5 144c.4.6.6 1 1.8 1 1.2 0 2.5 0 3.3-.8a8.2 8.2 0 001.3-1.9h1.3s.5 1.9 1 2.4c.7.5 2.7.6 3.6 0 1-.8 1.7-1.6 1.9-1.5.1.1 0 .8-1 1.6s-1.5 1.3-3 1.3h-8.5s-1.7.1-2.2-1c-.5-1-.5-1.6-.3-1.9.2-.2.4.2.8.8z"/>
+  <path fill="#d4af3a" d="M270.4 142.6c-1.3.7-2 .2-2.4-.3l-.6-.9s1.2-.4 1.8-.8c.6-.3 1-.6 1.6-.6l.6.2s.3 1.6-1 2.4z"/>
+  <circle cx="-276.6" cy="130" r="2.8" fill="#b96b29" transform="scale(-1 1)"/>
+  <path fill="#b96b29" d="M271.6 120.2a3 3 0 013.8.7c.9 1.2.7 2.7-.4 3.5a3 3 0 01-3.7-.7c-1-1.2-.8-2.7.3-3.5z"/>
+  <circle cx="-276.7" cy="129.6" r="1.6" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M272.8 120.5c.8-.2 1.7.2 2 .8.4.7 0 1.4-1 1.6-1.8.3-2.6-2-1-2.4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mf.svg
new file mode 100644
index 0000000..310afce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mf" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mg.svg
new file mode 100644
index 0000000..f0375cc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mg.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mg" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ff3319" d="M170.7 0H512v256H170.7z"/>
+    <path fill="#00cc28" d="M170.7 256H512v256H170.7z"/>
+    <path fill="#fff" d="M0 0h170.7v512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mh.svg
new file mode 100644
index 0000000..97f3463
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mh.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mh" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#3b5aa3" d="M0 0h511.9v512H0z"/>
+    <path fill="#fff" d="M139 1.2l-5.3 88-23.2-56.1 9 59.7-35.9-48.2 23.5 55-47-36.5L96.7 109 43.5 85.4l46.6 35.3-58-7.7L87 134.7l-86 7.9 86 5.7-54.5 22.4L90 163l-46.4 34.2 53.8-23.6-36.7 46.2 46.7-35.4-23.4 54 37.4-46.8-10 58.3 23.4-54.5 5.4 86.1 8.2-85.9 20.3 54.9-7.7-59.1 37.2 46.8-24.5-54.7 46.7 37.6-37-47 55.4 23.1-49.1-35.8 59.8 10-57.3-22 89-5.5-89-8.3L251 116l-60.7 7.6 50.2-35-56.6 22.7 39-47.3-47.5 37.1 23-56.8-37 48.3 8-60.3-22 56.9-8.2-88z"/>
+    <path fill="#e2ae57" d="M0 498.2L512 0v92.7L0 512v-13.8z"/>
+    <path fill="#fff" d="M18 512l494-320.8-.1-101.9L-.1 512h18z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mk.svg
new file mode 100644
index 0000000..da2e9a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mk" viewBox="0 0 512 512">
+  <path fill="#d20000" d="M0 0h512v512H0z"/>
+  <path fill="#ffe600" d="M0 0h86.8L256 246.9 425.2 0H512L0 512h86.8L256 265.1 425.2 512H512zm512 204.8v102.4L0 204.8v102.4zM204.8 0L256 219.4 307.2 0zm0 512L256 292.6 307.2 512z"/>
+  <circle cx="256" cy="256" r="82.3" fill="#ffe600" stroke="#d20000" stroke-width="18.3"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ml.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ml.svg
new file mode 100644
index 0000000..1e4d989
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ml.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ml" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="red" d="M340.6 0H512v512H340.6z"/>
+    <path fill="#009a00" d="M0 0h170.3v512H0z"/>
+    <path fill="#ff0" d="M170.3 0h171.2v512H170.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mm.svg
new file mode 100644
index 0000000..5076184
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mm.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mm" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" fill="#fff" d="M.2 0h-.4L0-.5z" transform="scale(8.844)"/>
+    <g id="b">
+      <use width="18" height="12" transform="rotate(-144)" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(-72)" xlink:href="#a"/>
+      <use width="18" height="12" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(72)" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(144)" xlink:href="#a"/>
+    </g>
+  </defs>
+  <path fill="#fecb00" d="M0 0h512v170.7H0z"/>
+  <path fill="#ea2839" d="M0 341.3h512V512H0z"/>
+  <path fill="#34b233" d="M0 170.7h512v170.6H0z"/>
+  <use width="18" height="12" x="9" y="6.4" transform="translate(-127.7) scale(42.66667)" xlink:href="#b"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mn.svg
new file mode 100644
index 0000000..568fda0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mn.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mn" viewBox="0 0 512 512">
+  <path fill="#c4272f" d="M0 0h512v512H0z"/>
+  <path fill="#015197" d="M170.7 0h170.6v512H170.7z"/>
+  <circle cx="85.6" cy="215.3" r="28" fill="#f9cf02"/>
+  <circle cx="85.6" cy="202.5" r="30.5" fill="#c4272f"/>
+  <path fill="#f9cf02" fill-rule="evenodd" d="M73 169.5a12.7 12.7 0 0025.3 0c0-5.1-3.1-5.8-3.1-7.7 0-1.9 1.9-4.4-2-7.6 2 3.2-1.2 3.8-1.2 7s1.2 3.2 1.2 5.7a2.5 2.5 0 01-5 0c0-2.5 2.5-5 2.5-8.9 0-3.8-.6-5-2.5-8.2-2-3.2-5.1-5.8-2.6-8.3-3.8 1.3-1.9 6.4-1.9 9.5 0 3.2-2.5 5.1-2.5 9 0 3.7 1.9 4.4 1.9 7a2.5 2.5 0 01-5.1 0c0-2.6 1.3-2.6 1.3-5.8 0-3.2-3.2-3.8-1.3-7-3.8 3.2-1.9 5.7-1.9 7.6 0 2-3.2 2.6-3.2 7.7z"/>
+  <circle cx="85.6" cy="207.6" r="20.4" fill="#f9cf02"/>
+  <path fill="#f9cf02" d="M29.6 248.3v122.2h25.5V248.3zm86.6 0v122.2h25.4V248.3zm-56 20.4v10.2H111v-10.2zm0 71.3v10H111v-10zm0-91.7H111l-25.5 15.3zm0 107H111l-25.5 15.2z"/>
+  <circle cx="85.6" cy="309.4" r="27" fill="#f9cf02" stroke="#c4272f" stroke-width="3"/>
+  <path fill="none" stroke="#c4272f" stroke-width="3" d="M85.6 282.4a13.5 13.5 0 010 27 13.5 13.5 0 100 27"/>
+  <circle cx="85.6" cy="295.9" r="5.1" fill="#c4272f"/>
+  <circle cx="85.6" cy="322.9" r="5.1" fill="#c4272f"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mo.svg
new file mode 100644
index 0000000..83d04ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mo.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mo" viewBox="0 0 512 512">
+  <path fill="#00785e" d="M0 0h512v512H0z"/>
+  <path fill="#fbd116" d="M272.5 147.4L256 96.5l-16.5 51 43.3-31.5h-53.6z"/>
+  <g id="mo">
+    <path fill="#fff" d="M256 353.7H146.7a156 156 0 01-4-4.2H256a2.3 2.3 0 011.5 2c0 1-.6 1.9-1.5 2.2zm0-33.4c.6-1.3 1.9-4.3 1.3-8a13.2 13.2 0 00-1.3-4.1 87.4 87.4 0 01-34.7 20.2 86.4 86.4 0 01-25 3.7h-67.4a154 154 0 006.3 8.6h65a86.2 86.2 0 0055.8-20.4zM139.1 294a34.4 34.4 0 01-10.3 2.2 86.3 86.3 0 0064.8 29.3 86.3 86.3 0 0062.4-26.6 470.3 470.3 0 004.8-62.9 470.3 470.3 0 00-4.8-72.2c-7 6.3-20.2 20-26.4 40.9a86.5 86.5 0 00-3.6 24.6 86.1 86.1 0 0014.6 48.1 86.1 86.1 0 01-18-52.9 86.1 86.1 0 018.2-37 34.7 34.7 0 01-8-13.8 86 86 0 00-11.2 42.6 86.1 86.1 0 0017 51.4 101.4 101.4 0 00-78.3-31.5 34.8 34.8 0 017.2 9.5 101.4 101.4 0 0173.3 31.4 101.3 101.3 0 00-65.2-23.6c-13.8 0-27 2.7-39 7.8a86.6 86.6 0 0088 55.6 87 87 0 01-15.4 1.4 86.2 86.2 0 01-60.1-24.3zM256 388.7h-56.6a153 153 0 0056.6 10.8 11.6 11.6 0 001.3-5.3 11.7 11.7 0 00-1.3-5.5zm0-26.2h-99.9a154 154 0 008.4 6.7H256a4.9 4.9 0 001.4-3.3c0-2-1.2-3.1-1.4-3.4zm0 13.4h-81.8a153.2 153.2 0 0015.4 8.5H256a8 8 0 001.2-4.5 8 8 0 00-1.2-4z"/>
+    <path fill="#fbd116" d="M155.6 211.7l-7-36.4-15.7 33.6 32.4-18-36.8-4.5zm49.3-58.8l-29.6-22.3 10.8 35.4 12.1-35-30.3 21.3z"/>
+  </g>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 512 0)" xlink:href="#mo"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mp.svg
new file mode 100644
index 0000000..54a0ede
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mp.svg
@@ -0,0 +1,86 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mp" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M248 0h496v496H248z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-256) scale(1.0321)">
+    <path fill="#0071bc" fill-rule="evenodd" d="M0 0h992.1v496H0z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M553.4 392.4s17.5-18.5 34.3-15c5-19.4 24.1-21 24.1-21s-1.9-21.5 22.5-26.2c.7-14.6 15.5-26.8 15.5-26.8s-3-22.6 12.5-27.9c-9.5-18 3.2-31 3-31.4-.2-.4-16-28.5-1.9-36.5-15-12.6-10-27-10-27s-16.4-4.1-10.5-23.7c-13.4-2.3-16.1-24-16.1-24S606 137 603.6 119c-13.7 2.2-15.2-11.3-15.4-11.3-.1 0-27 7.3-32.4-13-10.4 5.3-15-4.3-15-4.3s-15 7.4-23.9-6.9c-17.8 11.1-27.7-.5-27.7-.5s-23.4 15.5-31.1 3.5c-13.8 14-26.1 8-26.1 8s-10.4 18.4-27.3 13.7c-3.8 17.2-23.2 17.5-23.2 17.5s2 15.2-21.2 19.2c-3 17.8-15.1 20.9-15.1 20.9s1.2 17.3-9.8 22.8c4 9.8-6.2 21.7-6.2 21.7S340 224 325.3 239c14.2 3.7 4 28.1 4 28.1s19.4 8.8 7.1 25c14 4.4 9.6 15.6 9.8 22.1 9 4 16.8 2 13 20 27.4 3 14.4 18.2 14.4 18.2s12.8.5 7.8 10.6c23.3-.5 26.7 17.5 26.7 17.5s21.7-5.7 24.6 2.7c2.8 8.4-9.5 65-9.5 65s-18.3 0-32-14.6c-31.9-.8-24.8-21.8-25.3-21.8s-10.6 3.8-15.8-13.7c-21.4 4.4-20.7-13.6-20.9-13.8-.2-.1-9.6-4.3-6-13.2-22 2-20.4-19.5-20.4-19.5-4.8-2-6.6-6.5-5.9-11-2.8-1-22.4-1.3-12.3-27-18.6-11.3-7-24.3-7-24.3s-25.8-13.3-6-28.6C257 239 273 228 273 228s-20.5-20.8.3-35.6c-3.4-31.7 15.5-39.2 15.5-39.2s-10-25.7 17-36.5c1.7-26 20.5-26.8 20.5-26.8s.5-20.7 30-18.6c5.8-18.5 26-14.8 26-14.8s6.2-22.4 33.6-11.6c14-27.3 34.7-13.3 34.7-13.3s13.1-8.6 19.7-6c8.3-14.2 26-.5 37.5 2.3 4.2-1.6 19-12.8 30.4 1.3 15.2-10 28.1 8 28.1 8s20.9-10.7 30.6 13.6c44.3-4 37.9 24.9 37.9 24.9s34.8-8 27.2 26.7c31.7 2.2 28.5 23 28.5 23s20 15.2 11.2 28.8c17.8.8 11.3 18 11.3 18s13.6 5.2 2.3 26.4c26.1 20.9 5 41.5 5 41.4-.3-.2 13.9 16.8 1.1 36.3 3.9 31-11.8 38.9-11.8 38.9s4 20-13.4 25.7c-.4 23.5-22.6 26.4-22.6 26.4s6 10.2-16.1 21c-.9 15.8-23.9 17-23.9 17s-2.2 29-31.5 21.2c-7 23.2-41.3 16.3-42 16-.7-.3-6.6-49.8-6.6-50z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.9" d="M340.9 114.8s7.4 6.4 6 16c-1.4 9.6-6.9 22.9-5.8 32.8.7 4 .4 11.1.4 11.1s-6.6-9.4-6.7-19.5 7.2-19.7 7.2-27.2-1.3-13.3-1.1-13.2zm-3.7 2.9s-9.6 9.2-10.8 18.1c-1 4.6-1.3 26-1.4 35.6l-1.7 18.6c-.3 4.2 7-7.2 7.5-16.4a281 281 0 01.7-32.7c.9-4 .7-8.3 2-12.2l3.7-11z"/>
+    <g fill="#ffd200" fill-rule="evenodd" stroke="#ef8a10">
+      <path stroke-width="1.9" d="M548.9 87.7s12.5-5.8 16-16.5-10.8-10.8-12.7-7.4c-1.9 3.4 1.6 11.9.7 14.1-.9 2.3-6 7.7-4 9.8z"/>
+      <path stroke-width="2.6" d="M438.3 91.6s8.1-11.1 6-22.2c-2-11.1-14.7-4.2-14.7-.3 0 3.9 7.2 9.6 7.5 12 .3 2.4-1.5 9.6 1.2 10.5zm-21.9 6.6s8.1-11.1 6-22.2c-2-11.1-14.7-4.2-14.7-.3 0 3.9 7.2 9.6 7.5 12 .3 2.4-1.5 9.6 1.2 10.5zm-24.3 7.5s8.1-11.1 6-22.2c-2-11.1-14.7-4.2-14.7-.3 0 3.9 7.2 9.6 7.5 12 .3 2.4-1.5 9.6 1.2 10.5zm-17 17s8-11 6-22.1c-2.2-11.1-14.8-4.2-14.8-.3 0 3.9 7.2 9.6 7.5 12 .3 2.4-1.5 9.6 1.2 10.5zm-18 16.6s8-11.1 6-22.2c-2.2-11.1-14.8-4.2-14.8-.3 0 3.9 7.2 9.6 7.5 12 .3 2.4-1.5 9.6 1.2 10.5z"/>
+      <path stroke-width="1.9" d="M398.4 43.2s-10.8 8.5-11.7 19.7c-1 11.3 13 8 14 4.3 1-3.8-4.3-11.2-4-13.6.4-2.4 4-8.8 1.7-10.4zm36-11.1s-10.8 8.5-11.8 19.7c-1 11.3 13 8 14.1 4.3 1-3.8-4.3-11.2-4-13.6.4-2.4 4-8.8 1.7-10.4zm-134.1 97.1s2.2 13.6 11.6 19.8 13.3-7.5 10.5-10.3-11.9-1.5-13.8-3c-2-1.4-5.8-7.8-8.3-6.5zm-18 46s.1 13.8 8.4 21.4c8.3 7.7 14.3-5.3 12-8.5s-11.5-3.4-13.2-5.1c-1.7-1.8-4.5-8.6-7.2-7.8zm41.5 51.4s-5-12.8-15.4-17c-10.4-4.3-11.5 10-8.2 12 3.2 2.2 12-.7 14.1.3 2.2 1 7.2 6.5 9.5 4.7zm-8.7-22.2s8.4-11 6.5-22c-1.9-11.2-14.6-4.5-14.7-.6 0 3.9 7 9.7 7.3 12.1.2 2.4-1.7 9.6 1 10.5zM574.5 98.8s12.4-5.8 16-16.5-10.8-10.8-12.7-7.4c-1.9 3.4 1.6 11.9.7 14.1-.9 2.3-6 7.7-4 9.8zm37.7 18.8s7.3-11.6 4.5-22.6c-2.8-10.9-15-3.2-14.7.7.3 4 7.8 9.1 8.3 11.5.5 2.4-.9 9.7 1.9 10.4zm103 106.9s-5-12.8-15.4-17.1c-10.5-4.3-11.5 10-8.3 12.2 3.3 2 12-.9 14.2.2 2.2 1 7.2 6.5 9.5 4.7zm-50.4 8s.3-13.8 8.7-21.3c8.4-7.6 14.2 5.5 11.9 8.6-2.4 3.1-11.6 3.3-13.3 5-1.7 1.8-4.6 8.6-7.3 7.7zm-8.1-145.7s-12.8-4.9-23 0-.2 15.4 3.6 14.3c3.8-1 7.3-9.4 9.6-10.4 2.2-.9 9.6-1 9.8-3.9zm-29.4-24.6s-12.8-4.9-23 0c-10.1 5-.2 15.4 3.6 14.3 3.8-1 7.4-9.4 9.6-10.4 2.2-.9 9.7-1 9.8-3.9zm-43.8-23.5s-10.9 8.4-12 19.7c-1 11.2 13 8.1 14 4.4 1.1-3.8-4.2-11.2-3.8-13.6.4-2.4 4.1-8.8 1.8-10.4zM554.9 32s-5 12.8-.1 23 15.3.2 14.3-3.5-9.5-7.4-10.4-9.7c-.9-2.2-1-9.6-3.8-9.8zm-81 49.3s8.9-10.4 7.6-21.7c-1.3-11.2-14.4-5.2-14.7-1.3-.2 3.9 6.5 10 6.7 12.5 0 2.4-2.2 9.4.4 10.5z"/>
+    </g>
+    <path fill="#8c8a8c" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M522.2 103.7s21.3 1.4 22.4 13.6-5.1 19.6-5.1 19.6 2.7 26.4-18.2 34.1c-22.3 2.7-57.3.6-57.3.6s-10.2 2.6-14.4-18.7c-4.2-21.3-5.4-36.4-5.4-36.4s2.1-11.9 17.1-12.6c15-.8 60.8.1 61-.2z"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="1.9" d="M539.4 136.8s-11.5 14.3-10.3 20"/>
+    <path fill="#8c8a8c" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M524 170.3c2.8 2.4 5.5 5 6.1 13.8l1.2 17.6 14.9 134 13.1 96.9.9 15s-3.1 11-12 12c-6.3 13.3-41 17.2-44.4 17-3.1-.1-14.2-4.7-20.9-4.1-6.7.6-18.3 5-23.5 4.3-5.2-.7-17-4.8-19-13.3-14.6-4.6-17-15.7-17-15.7l15.8-112.1 15.3-141.8s1.8-18.9 9.4-21.7c7.9-.7 48.7.8 60.1-2z"/>
+    <path fill="none" stroke="#000" stroke-width="1.9" d="M443.6 364.3l-3.1 99.1m99.5-86l8.7 81.7"/>
+    <path fill="none" stroke="#000" d="M285.3 312.7l-.4 1.2m412.2-4.7l.3 1"/>
+    <path fill="none" stroke="#6b18b5" stroke-linejoin="round" stroke-width="1.9" d="M274.2 178.9s6.6 9 7.7 14.2c1.2 5.2 3.4 15.4 6.2 19.6 2.9 4.1 19 27.4 20 37.1 0 6.3-6.8 17.2-17 17.4-6.3-.2-22.7-4.4-23.4-18.4-.7-14 5-14.4 5.7-23 .7-8.5.8-46.7.8-47z"/>
+    <path fill="none" stroke="#6b18b5" stroke-linejoin="round" d="M386.3 56s-6.8.4-12 3.2c-4 2.5-10.8 6-15.6 12.7-12.1 9.4-30.4 13.8-36.1 21.7-3.5 5.3-3.3 18.2 5.4 23.6 5.5 3.2 21.7 8.1 29.5-3.5 8-11.7 3.2-15 7-22.6 6.5-17.5 21.7-35 21.8-35.2zM550 38.8s-5-4.6-10.7-6.3c-4.6-1.2-12.2-.7-20.1-1.5-15.3-2.1-31-13.1-40.6-11.8-6.2 1.3-15.3 10.4-13.2 20.3 1.5 6.2 8.4 18.7 22.3 16.2 13.8-2.4 13.7-5.5 21.9-8 19.9-11.2 40.2-9 40.4-9zm162.4 157.8c1.2-2.6-1-7.4-2.4-13.2-1.5-4.5-3.6-11.5-8.9-17.7-6.3-14-5.2-33.3-11.4-40.7-4.4-4.7-17-7.6-24.3-.5-4.4 4.6-13 19.1-3.6 29.6 9.4 10.4 13.5 6.5 20 12 15.5 10.4 23 28.6 30.6 30.5zM707 319.4c2-3 5.9-8.5 5.4-13.2-.3-3.8 1.7-15 2-20 1.4-15.2 11-27.7 8.3-41-1.5-6.1-10.6-15-20.4-12.4-6.1 1.9-19.6 9.3-16.5 23 3.1 13.8 7.5 13.5 10.5 21.6 8.4 16.6 3 36.3 10.7 42z"/>
+    <path fill="none" stroke="#000" stroke-width="1.9" d="M594.3 416.8s-2.6 5 7.8 9.3m13-21.1s11.5-2.8 19.3 0m15.2-29.2c0 .2-1.6 5.2 7.6 12.4m-1-25.4s6.8 5 18.2 4.8m-86.7 9.8s.4 13.2-6.4 19.4m29.2-39.8s11.1 2.8 20.3-1.8m51.3-17.5s2.4 3.4 14.8 2.8m-63-10.6c.3.2 14.5 4.8 23.5.6m4.8-55s.6-.7 5 14.7m6-58s-.6 8.2-7.2 11.8m49.3-45.3s-9.6 7.8-7.8 11m-40-16.6s5 8.4-3.1 14.2m-21-50.1s8.6-.4 12.4 7m-28.6-31.4h6.6m27.6-30c0 .3 1.8 1.9-1.6 5.3m-59.7-4.4s4.6 7.2 3.8 16m22.7-40.4c2-.2 8.8-3.2 8.8-3.2m-38.3-25.4c-.2 0-2.6 9 1.8 12.2M586 91.7c0 9.6 7.6 7.2 2.4 16.4m-21-24.4a66 66 0 00-12 10.8m-18.7-15.8s5 5 3.8 11.8m-18.4-15.8s-2.6 7.6-6 9.6m-20.6-11.6c-.2.4-4.2 9-7 10.6m-29.3-10.4c.2 0 4 8-1 13.8m-7.4-55.1c.2.2.8 6.2-3 11.4m-33 2.2c0 .2 1.7 6.8-9 9M394.7 106c.2.4 10.2 2 10.2 2m-35.1 21.1a413 413 0 0112.1-3.8m-31.5 18.8c.4 0 8.4 1.4 10.4.4m-16 7s2.6 1.4.4 14.8m-39.4-50l4.9 7.2m-21.2 29.8c0-.2 4.8 7.2 11.2 8.6m26.5 29c.2 0 7.8-1.7 9-2.5M323.8 218c.2 0-.2-5 6-8.4m-14.2 20.8c0 .2 5.8 7.4 9.8 8.4m-13.2 5.3c.6-.2 6.8-5.6 14-5.2m-16 23.8s.2 6.2 18.6 4.6M312 284.6c0-.2 5.4-12.4 16.4-17m-1.6 32.6s1.6-5.2 10.8-8.8m-.6 29.3s6.6-5.4 9-6.2m-.8 22.2s4 4.2 14-3M297 340c1.2-.2 15.7-3.6 20.7 4m-15 8s15.4-2 17.4-.4m37.6 3.6s-2 4.2 17-2.8m6.5 10.4c-3.4 5.7.8 10.3-3.6 13m-54-5c.5-.5 7-2.7 6-11.8m-.3 25.5c.8-.2 11.4-4.8 13.6-2.4M350 398s1.4-9.4 4.4-10.4m11.5 24.6s8.8-.2 12.6-3m4.4-28.8c.2.2 8.2 4.4 25.2.2m-18.8 38s2.4 12.1 2.2 15"/>
+    <g fill="#de2010" fill-rule="evenodd" stroke="#000" stroke-width="1pt">
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.84875 -.23108 .23809 1.90478 237.3 58.3)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.84875 -.23108 .23809 1.90478 235.6 38)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.8213 -.39265 .40456 1.87649 218 57.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.66103 -.84397 .86954 1.71136 192.5 159.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.66103 -.84397 .86954 1.71136 184.5 141.3)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.5836 -.9816 1.01134 1.63158 174.3 164.6)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.48128 -1.1301 1.16435 1.52616 167.2 194.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.30182 -1.3329 1.37328 1.34126 169 247)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.17368 -1.44698 1.49084 1.20925 167.8 274.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.91718 -1.62175 1.6709 .94498 188 334.2)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.76579 -1.6985 1.74996 .78897 193.6 360)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.65019 -1.74601 1.79893 .66988 194.9 377.2)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.51503 -1.79055 1.84481 .53064 200.8 397.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.23314 -1.8485 1.90451 .2402 237.1 442.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.07476 -1.86165 1.91806 .07702 250.5 463.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.07476 -1.86165 1.91806 .07702 230.4 464)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.41519 -1.81629 1.87134 -.42776 326.6 516.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.56358 -1.77586 1.82969 -.58066 344.7 530.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.77108 -1.69608 1.74749 -.79446 383.3 545.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.91296 -1.62412 1.67333 -.94064 405.7 556.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.08406 -1.5153 1.56121 -1.1169 440.5 564.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.20839 -1.41812 1.4611 -1.245 464.3 570)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.30696 -1.32783 1.36808 -1.34656 483.3 576.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.41352 -1.21378 1.25056 -1.45636 509.2 580.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.5349 -1.05613 1.08813 -1.5814 545 576.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.69349 -.77677 .8003 -1.74482 606.3 551.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.75693 -.62003 .63882 -1.81018 632.4 544)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.85518 -.13795 .1773 -1.53226 703.5 438.7)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.81654 -.41408 .42661 -1.8716 666.6 524.7)"/>
+    </g>
+    <path fill="#ffe300" fill-rule="evenodd" d="M680 196c2.4-2.7 4.7-3.5 7.6-2.5-1-7-3.2-9.3-6-8.5-2.6.8-3.8 4.4-1.7 11zm3.7 21c2.7-2.5 5-3 7.8-2-.5-7-2.5-9.5-5.2-8.8-2.8.6-4.2 4-2.6 10.7zm-9-40.3c1.8-3.2 3.8-4.5 6.9-4.3-2.8-6.4-5.5-8.2-7.9-6.7-2.4 1.5-2.7 5.3 1 11zm-9.3-19c1.7-3.3 3.8-4.6 6.8-4.4-2.7-6.5-5.5-8.2-7.9-6.7-2.3 1.5-2.6 5.3 1.1 11zM643 122.5c1.2-3.4 3-5 6-5.4-3.7-6-6.7-7.2-8.8-5.3s-1.8 5.6 2.8 10.7zm-14.7-15.3c1-3.5 2.8-5.1 5.9-5.5-4-5.8-7-7-9-5-2.1 1.9-1.7 5.6 3.1 10.5zm-30.8-26c0-3.6 1-5.8 3.8-7-5.5-4.4-8.8-4.5-10.1-2-1.4 2.4.3 5.8 6.3 9zm16 12c.6-3.6 2-5.5 5-6.3-4.7-5.2-7.9-5.9-9.6-3.7-1.8 2.2-.8 5.8 4.7 10zm-34.3-22.1c-.4-3.6.5-5.8 3-7.4-6-3.7-9.1-3.6-10.2-1-1.1 2.6.9 5.9 7.2 8.4zM560.5 63c-1-3.5-.4-5.8 2-7.8-6.5-2.8-9.6-2.1-10.3.6-.7 2.7 1.7 5.6 8.3 7.2zm-20.1-6.2c-1.3-3.4-.9-5.8 1.3-8-6.7-2.2-9.8-1.3-10.3 1.5-.4 2.8 2.2 5.5 9 6.5zM520.6 53c-1.5-3.3-1.3-5.7.7-8-6.8-1.8-9.8-.7-10.1 2.1-.3 2.8 2.5 5.3 9.4 5.8zm-21-1.6c-1.8-3.2-1.9-5.6 0-8-7-1.1-10 .3-10 3.1.1 2.8 3.2 5 10 4.9zm-41 3c-2.5-2.6-3.2-4.9-2-7.7-7 .6-9.5 2.7-8.8 5.4.7 2.8 4.2 4.2 10.8 2.3zm20.2-2.6c-2.2-3-2.5-5.3-1-8-7-.3-9.8 1.4-9.4 4.2.3 2.8 3.6 4.7 10.4 3.8zm-40 7c-3-2.3-3.9-4.5-3.2-7.5-6.8 1.7-9 4.1-7.9 6.7 1.1 2.6 4.8 3.5 11 .7zm-38 17.4c-3.2-1.7-4.6-3.7-4.5-6.7-6.4 3-8 5.7-6.5 8 1.6 2.4 5.4 2.6 11-1.3zm18.3-9.4c-3-2-4.1-4.1-3.6-7.1-6.7 2.1-8.7 4.7-7.4 7.2 1.2 2.5 5 3.1 11 0zm-52.3 33c-3.5-.8-5.3-2.5-5.8-5.5-5.6 4.2-6.7 7.3-4.7 9.2 2 2 5.8 1.3 10.5-3.6zM383 86.7c-3.4-1.2-5-3-5.3-6-6 3.7-7.2 6.7-5.4 8.8 1.9 2.1 5.6 1.8 10.7-2.8zM352.3 114c-3.5-.6-5.4-2.1-6.2-5-5.3 4.6-6 7.8-3.8 9.5 2.1 1.8 5.8.9 10-4.5zm-12.9 16.8c-3.6-.3-5.6-1.6-6.7-4.5-4.8 5.2-5.2 8.4-2.9 10 2.3 1.5 5.9.2 9.6-5.5zM328.6 148c-3.6.3-5.8-.7-7.3-3.4-4 5.9-4 9.1-1.4 10.3 2.6 1.2 5.9-.6 8.7-6.9zm-9.5 18.4c-3.6.7-5.9 0-7.7-2.4-3.1 6.2-2.7 9.4 0 10.3 2.7.8 5.7-1.4 7.7-8zm-7.6 18.8c-3.4 1.3-5.8 1-8-1.2-2 6.7-1.1 9.8 1.6 10.2 2.8.4 5.5-2.3 6.4-9zm-5.1 21c-3.3 1.4-5.7 1.3-8-.7-1.7 6.8-.5 9.8 2.3 10 2.8.3 5.3-2.6 5.7-9.4zm-2 17.4c-3.2 1.6-5.6 1.8-8 .6-1 5.5.5 7.7 3.3 7.5 2.8-.2 5-2.7 4.6-8.1zm352.7-83c1.2-3.4 3-5 6-5.3-3.6-6-6.6-7.3-8.7-5.5-2.1 1.9-1.8 5.6 2.7 10.8zm28.9 97.6c2.7-2.4 5-3 7.8-1.8-.5-7-2.5-9.6-5.2-9-2.8.7-4.2 4.2-2.6 10.8z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.9" d="M658.5 124c-.1 0-8 7.8-6.6 17.4 1.3 9.6 7.4 21.4 6.3 31.3-1.1 10-3 16.5-3 16.5s9.3-10.5 9.4-20.6c.1-10-6.3-23.4-6.3-30.8s.3-14 .2-13.9zm14.5 32s-6.2 4.6-5.6 15c.6 10.4 11.4 29.6 11.4 29.6s7.9 16.2 7.6 20.4c-.2 4.2 1.5-4 .7-13.3-.8-9.2-12.7-29.6-12.7-29.6s-2.5-4.2-2.3-11.1c.3-7 1-10.9.9-11z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M488 26.8c0-2.2-2.5-4-5.5-4s-5.4 1.8-5.4 4c0 2.1 2.4 3.9 5.4 3.9s5.4-1.8 5.4-4zm2.3 9c0-2-2.6-3.7-5.6-3.7-3.1 0-5.6 1.7-5.6 3.8s2.5 3.7 5.6 3.7c3 0 5.6-1.7 5.6-3.8zm6.9-10.7s-6.4 4.8-3.8 6.7c2.7 1.9 10-4.2 10-4.2l-6.2-2.5zm187.7 109.6a4 4 0 00-1.7-3.3 3 3 0 00-3.4 0 4 4 0 00-1.6 3.3 4 4 0 001.7 3.3 3 3 0 003.3 0 4 4 0 001.7-3.3zm-2.5-9.1c0-2.3-1.5-4.1-3.5-4.1s-3.5 1.8-3.5 4.1 1.6 4.1 3.5 4.1 3.5-1.8 3.5-4.1zm1.7 18.6c0-1.2-.6-2.2-1.4-2.2-.7 0-1.3 1-1.3 2.2s.6 2.1 1.3 2.1c.8 0 1.4-1 1.4-2.1zm5.6-16.6c0-1.4-.6-2.5-1.3-2.5-.8 0-1.4 1.1-1.4 2.5s.6 2.4 1.4 2.4c.7 0 1.3-1 1.3-2.4zm-15.3 1.6c0-1-.6-2-1.4-2-.8 0-1.4 1-1.4 2s.6 2 1.4 2c.8 0 1.4-.9 1.4-2zm2.4 13.2c0-1.8-1.3-3.3-2.9-3.3s-2.9 1.5-2.9 3.3c0 1.7 1.3 3.1 3 3.1s2.8-1.4 2.8-3.2zm-7.6-5.8c0-1.5-1.1-2.8-2.5-2.8-1.3 0-2.4 1.2-2.4 2.8s1.1 2.7 2.4 2.7c1.4 0 2.5-1.2 2.5-2.7zm-1.2-7.8c0-.8-.4-1.6-1-2a2 2 0 00-2.2 0 2.3 2.3 0 00-1 2c0 .8.3 1.6 1 2a2 2 0 002.1 0 2.3 2.3 0 001-2zm34.7 39.5c-3.2-4.2-8.2-6-11.3-4-3 2-3 7 .2 11.2 3.1 4.2 8.2 5.9 11.2 3.9 3.1-2 3-7-.1-11.1zm9 76.6c.5-5.1-2-9.6-5.6-10-3.7-.5-7.2 3.3-7.8 8.4-.6 5 1.9 9.6 5.6 10 3.7.4 7.1-3.3 7.7-8.4zm1.8 44.5c1-5-1-9.6-4.6-10.4-3.7-.8-7.4 2.7-8.5 7.7-1 5 1 9.7 4.7 10.5 3.6.7 7.4-2.7 8.4-7.7zm8.6-41.7c0-2-1.4-3.6-3-3.6s-3 1.6-3 3.6 1.3 3.7 3 3.7 3-1.7 3-3.7zm-7.5 8.4l-6.2 7s-5.9.2-5.6 2.1c.4 2 8.1 7.7 8 10 0 2.2 5.2-.6 5.2-.6l4.2-12.8s-.2-8.8-2.5-8.7c-2.3.2-2.9 2.8-3 3zM304 253.3a3 3 0 10-6 0 3 3 0 006 0zm2.8-9c0-1.8-1.4-3.2-3-3.2s-3 1.4-3 3.1 1.4 3.2 3 3.2 3-1.4 3-3.2zM282.4 201c-1.1-2.5-3.5-3.9-5.2-3-1.8.7-2.3 3.4-1.2 5.9 1.2 2.5 3.5 3.9 5.2 3 1.8-.7 2.3-3.4 1.2-5.9zm7.3 27c-1.5-3.3-4.7-5.1-7-4s-3.2 4.4-1.7 7.6 4.8 5 7.2 4 3-4.4 1.5-7.7zm8 19.7c.4-4-1.2-7.8-3.8-8.3-2.6-.6-5 2.3-5.5 6.3-.6 4 1.1 7.8 3.7 8.3 2.5.5 5-2.3 5.5-6.3zm-12.7 2.8c1.5-3.7 1-7.7-1.4-9s-5.4.9-7 4.6-1 7.8 1.3 9 5.5-.8 7-4.5z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M279.2 242c0-1.9-1.5-3.4-3.3-3.4s-3.3 1.6-3.3 3.5 1.5 3.4 3.3 3.4 3.3-1.5 3.3-3.4zm-2.6-8.5a3 3 0 00-3-3.2c-1.7 0-3 1.4-3 3.2s1.3 3.1 3 3.1 3-1.4 3-3.1zm2.8-16.5c0-3-1.3-5.3-3-5.3-1.5 0-2.8 2.4-2.8 5.3s1.3 5.3 2.9 5.3 2.9-2.4 2.9-5.3zm8.9-1.3c.3-2.9-.6-5.4-2.2-5.6-1.6-.2-3.2 2-3.6 4.8-.4 3 .6 5.4 2.2 5.7 1.6.2 3.2-2 3.6-4.9zm63.3-126.4c1.2-4 0-8.2-2.7-9.2s-5.8 1.6-7 5.7c-1.2 4 0 8.2 2.7 9.2s5.8-1.6 7-5.7zm-12 18.3c3.5-3 5-7.2 3.3-9.3-1.6-2.1-5.8-1.4-9.4 1.6s-5 7.1-3.3 9.3c1.6 2 5.8 1.4 9.4-1.6zm-7-10.2c3.4-2.5 5-6.1 3.3-8s-5.8-1.1-9.3 1.4c-3.5 2.6-5 6.2-3.4 8s5.9 1.2 9.4-1.4zm27-17.8c2.4-1.7 3.4-4.2 2.3-5.5-1.2-1.3-4-.8-6.3 1s-3.4 4.2-2.3 5.5c1.2 1.3 4 .9 6.3-1z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M345.5 96.9c1.6-2.5 1.7-5.2.2-6-1.4-.8-4 .5-5.5 3s-1.8 5.2-.3 6c1.5.8 4-.5 5.6-3zm20.4-10.7c2.5-2.1 3.5-5 2.2-6.3-1.4-1.3-4.5-.7-7 1.4s-3.5 5-2.2 6.4c1.3 1.3 4.4.7 7-1.5zM329 111.1c2.3-.1 4.1-1.3 4-2.6-.2-1.4-2.3-2.4-4.6-2.2-2.4 0-4.2 1.3-4 2.6.2 1.3 2.2 2.3 4.6 2.2zm44.5-38c1.6-2.6 1.7-5.2.2-6-1.4-.9-4 .5-5.5 3s-1.7 5.1-.3 6c1.5.8 4-.6 5.6-3z"/>
+    <path fill="#ffd200" fill-rule="evenodd" stroke="#ef8a10" d="M641.8 148.5s7.3-11.6 4.5-22.6c-2.8-10.9-15-3.2-14.7.7.3 4 7.8 9.1 8.3 11.5.5 2.4-.8 9.7 1.9 10.4z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.4" d="M501.7 51.9s26.4 1 26.6 18.1c-.1 2.7 0 5.8-1 13.5a17.8 17.8 0 008-15.8c.2-17.4-23.5-29.2-33.6-15.8z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.4" d="M484.9 51.1s21.3-4.4 21.5 12.7c.2 17-6.8 19.8-6.8 19.8S516 80.1 516 62.8c.1-17.4-21-25.1-31.1-11.7z"/>
+    <path fill="#f7df73" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.6" d="M557.3 420.3S657 392.2 687 269.8c-17.5 125.6-126.6 165.4-126.6 165.4l-3.2-14.9z"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M567.5 428c3.1 0 10.7-8.5 15.1-9.4 4.4-1 4.9-5.4-.2-5.6-5-.1-9.4 5.7-9.4 5.7s-4.3 3.8-8.9 4.2c-4.5.5-1.6 6.2 3.4 5z"/>
+    <path fill="#8c1800" fill-rule="evenodd" stroke="#8c1800" stroke-width="2.6" d="M625 385.1s-10.4 6-9 7.5c1.5 1.4 10.7-5.7 10.9-5.9.2-.1 3.9-4.7-2-1.6z"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M588.8 412.4s-3.1-1.1 4.8-4.2c8-3.1 7.5-6.7 10-8.1 2.7-1.5 8.2-5.4 9.3-3.1s-5.8 6.8-7.4 7.3c-1.6.5-9.6 7.8-11.9 8.4-2.2.7-3.9.3-4.8-.3z"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="3.1" d="M640.4 369.9c-6.8 7.6-6.8 7.4-6.8 7.4"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.9" d="M650.6 357.4l-6.5 8"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.6" d="M660.8 341.2l-7.3 11.6"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.4" d="M669.4 324.6l-6 12m9.9-20.8l-2 4.3"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.4" d="M677.7 304.3l-1.6 5"/>
+    <path fill="#f7df73" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1pt" d="M160.3 216s52-14.7 67.6-78.5c-9.1 65.5-66 86.2-66 86.2l-1.6-7.7z" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M416.4 425.5c-3 0-10.6-8.6-15-9.6-4.3-1-4.7-5.5.2-5.6 5-.2 9.4 5.8 9.4 5.8s4.3 3.8 8.8 4.3c4.5.5 1.6 6.2-3.4 5z"/>
+    <path fill="#8c1800" fill-rule="evenodd" stroke="#8c1800" stroke-width="1pt" d="M195.5 197.6s-5.4 3.2-4.6 4c.7.7 5.5-3 5.6-3.1.1-.1 2-2.5-1-.9z" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M395.4 409.6s3-1.1-4.9-4.3c-7.8-3.1-7.4-6.7-10-8.2-2.5-1.5-8-5.5-9-3.2s5.7 7 7.3 7.5c1.6.5 9.5 7.9 11.7 8.6 2.3.6 3.9.3 4.9-.4z"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.6" d="M203.5 189.7l-3.5 3.9" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.5" d="M208.9 183.2l-3.4 4.1" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.4" d="M214.2 174.7l-3.8 6.1" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.3" d="M218.7 166.1l-3.2 6.3m5.2-10.9l-1 2.2" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width=".8" d="M223 155.5l-.9 2.7" transform="matrix(-1.9021 0 0 1.9542 731.4 -4.3)"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.4" d="M691.9 247.2c.5 7.7 8 15 5 28.5-3.7 15.1-17 51.3-14.6 57.6-4-5.4-3.3-10.4-3.6-18-.4-7.5 10.9-35.4 11.9-44.9 0-8.5.8-20 1.3-23.2z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.4" d="M691.9 247.4s12.2 15.5 11.6 27.8c-.7 12.2-7.5 26.6-5.2 33-4-5.4-5-8.9-5.3-16.4-.3-7.5 6-15.8 4.8-24-1.3-8.2-6-20.4-6-20.4zm-401.4 3.4c-.5 7.7-6.2 14.6-3.3 28 3.8 15.1 17.2 34.4 15 56.5a33 33 0 005.5-19c.3-7.5-14.9-32.8-15.9-42.3 0-8.5-.8-20-1.3-23.2z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.4" d="M290.5 251s-12 15-11.3 27.3c.2 8.1 15.2 42.3 13 48.7 3.9-5.4 5-4.8 4.8-13-4.4-20.9-12.2-34.3-10.9-42.4 1.3-8.2 4.6-20.6 4.4-20.6z"/>
+    <path fill="#fff" stroke="#000" stroke-dashoffset="1" stroke-linecap="square" stroke-linejoin="round" stroke-width="1.5" d="M100 125.8l22 68.2h72l-58 42.2 22.1 68.2-58-42.1-58 42.1 22-68.2L6 194h71.8z" transform="matrix(1.3389 0 0 1.3391 360.4 -54.9)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mq.svg
new file mode 100644
index 0000000..7a69fb5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mq.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mq" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mr.svg
new file mode 100644
index 0000000..7da23e5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mr.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mr" viewBox="0 0 512 512">
+  <path fill="#cd2a3e" d="M0 0h512v512H0z"/>
+  <path fill="#006233" d="M0 76.8h512v358.4H0z"/>
+  <path fill="#ffc400" d="M416 164.9a160 160 0 01-320 0 165.2 165.2 0 00-5.4 41.8A165.4 165.4 0 10416 165z" class="st1"/>
+  <path fill="#ffc400" d="M256 100l-14.4 44.3h-46.5l37.6 27.3-14.3 44.2 37.6-27.3 37.6 27.3-14.4-44.2 37.7-27.3h-46.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ms.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ms.svg
new file mode 100644
index 0000000..d7d910d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ms.svg
@@ -0,0 +1,70 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ms" viewBox="0 0 512 512">
+  <path id="rect950" fill="#012169" stroke-width=".6" d="M.2 0h512v512H.2z" opacity="1" stop-opacity="1"/>
+  <path id="path962" fill="#fff" stroke-width=".8" d="M281.6 127H487l-.3 146.3c1.7 58.7-35 95.2-102.3 111.7-47.9-12-103.1-36.5-103.2-110l.3-148z" opacity="1" stop-opacity="1"/>
+  <path id="path964" fill="#00a2bd" stroke="#000" stroke-width="1.8" d="M286.1 131.4h196.4l-.2 140.2c1.6 56.3-33.4 91.2-97.8 107-45.8-11.4-98.6-35-98.6-105.4l.2-141.8z" opacity="1" stop-opacity="1"/>
+  <path id="path966" fill="#a53d08" stroke-width=".8" d="M481 288.2c-7.2 53.7-48.6 77.2-96.6 89.7-42.4-11.4-88-29.6-97-89.5l193.6-.2z" opacity="1" stop-opacity="1"/>
+  <path id="path968" fill="#000" stroke-width=".8" d="M376.7 157.5l-.3-17.6 14 .1.1 17.5h38.2l.1 13.7-38.3.2-.3 161.4-13.6.1-.2-161.7-38 .2v-14z" opacity="1" stop-opacity="1"/>
+  <path id="path970" fill="#ff9a08" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M345.8 294.8l35 36.3c12-13.3 3.6-63-12.3-72.1-1.9 5.9-5.1 13-8.6 15.2-7.6 5.2-26.1 11.2-20 15 1.5-1.9 5.2-3.7 7 .6 2 6.9-7.8 7.3-7.8 7.3s-6.2-.8-7.3-7c-1-6.4 9.3-12.2 10.1-12.6 1-.3 14.4-4 16.7-15.9 2.8-11.8 5.8-10 6.3-10.2 17.7 1.7 29.2 33.3 29.9 55.5.6 22.2-9 37-10.8 38-1.8.9-42-47.9-42-47.9l3.8-2.2z" opacity="1" stop-opacity="1"/>
+  <path id="path972" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M371.2 261l.3 65.5" opacity="1" stop-opacity="1"/>
+  <path id="path974" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M367.3 262.3l.2 59.4" opacity="1" stop-opacity="1"/>
+  <path id="path976" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M363 270.9l.3 47.2" opacity="1" stop-opacity="1"/>
+  <path id="path978" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M359.6 274.2l.2 39.1" opacity="1" stop-opacity="1"/>
+  <path id="path980" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M355.9 276v33" opacity="1" stop-opacity="1"/>
+  <path id="path982" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M351.9 278.6v26.1" opacity="1" stop-opacity="1"/>
+  <path id="path984" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M348.4 280.7v20" opacity="1" stop-opacity="1"/>
+  <path id="path986" fill="none" stroke="#ffdf00" stroke-linecap="round" stroke-width="1" d="M345.2 299l36 41.2" opacity="1" stop-opacity="1"/>
+  <path id="path988" fill="none" stroke="#ffdf00" stroke-linecap="round" stroke-width="1.4" d="M383 273s16.3 35.7 1.2 65" opacity="1" stop-opacity="1"/>
+  <path id="path990" fill="none" stroke="#ffdf00" stroke-linecap="round" stroke-width="1.4" d="M341 291.4s1.2-3.1 2.7-1.8" opacity="1" stop-opacity="1"/>
+  <path id="path992" fill="none" stroke="#ffdf00" stroke-linecap="round" stroke-width="1.4" d="M338.1 282.3s-6.5 5.8-3 9.5" opacity="1" stop-opacity="1"/>
+  <path id="path998" fill="#008021" stroke="#000" stroke-width=".3" d="M390.6 191.4c2.4-2 3.7-3.3 5.2-3 1.5.2 3.5 0 5-.4a31 31 0 0112-.4c1 .2 2.4.7 4.6 2.5 2.1 1.8 5.2 5 4.2 13.6s-.7 12.3-1.2 17.2c-.8 8.5-2.7 15.5-6 15 4.5 8 5 15 8 20.5s4.8 16.8 3.7 29c-1.2 12.3-4.4 39.7 5.3 58.2-1.6 1.1-5.5 0-9-3.7s-5-3.6-7.9-1.4c-8.7 6.7-17 14.8-29 6.7-2.8-1.8-3.7-4-1.6-9.7 5-14 7.5-33.4 6.7-42.4V191.4z" opacity="1" stop-opacity="1"/>
+  <path id="path1000" fill="#ffe1cf" stroke="#000" stroke-width=".3" d="M399 182.8c.6 2 .9 4.5-.1 6.8s-1.3 5 .4 8.4c2.8-3.9 6.7-3 9-5.4 2.3-2.3 2.8-4.5 4.5-5-1.7-1.5-4.4-3-3.8-7.5.6-4.3 6.7-8 1.2-14.6a8.1 8.1 0 00-11-1.4 8 8 0 00-2.4 2.6c-.3.8.1 2.5-.7 3.5l-2 2c-.6.3-1 .8-.4 1.5.2.2.7.3 1.1.4a9 9 0 01-.8 1.5c-.3.3-.2.6.1 1-.4 1.3.4 1.5-.1 2.5-.5.9-1.2 2 .6 3 .6.3 3 .9 4.3.7z" opacity="1" stop-opacity="1"/>
+  <path id="path1002" fill="#ffe1cf" stroke="#000" stroke-width=".3" d="M376.5 205.7c-3.2.9-8.4-.5-12.4 0-1.7.1-3-.8-2.8-2.5.2-1.7.4-4.4 0-6.8-.5-3.8 1.3-9 3.9-14.8A33 33 0 00369 170c0-1.8.2-3.8 1.8-4.8 1.2-.8 1.4-1.5 1.8-2.1 1-1.5 2-1.8 2-1 .1.5 0 1-.5 1.7 1-.9 2.8-1.9 3.2-2.2.4-.2 2.4-1.7 2.5-.3.8-.4 1.4-.4 1.6 0 .2.5 0 .7-.3 1 .5 0 1.2 1 0 1.8.7-.2 1.3.8.2 1.8-1.1.9-2.4 1.6-2.8 2.3-.4.8-3.1 2.9-4.2 3.3-1.1.5-1.2 1.1-1.2 2.7 0 17.8-2.1 16.4-2.1 20.6 0 1.2-.2 2.2 1 1.9 1-.4 2.8-.9 4.5-.9v10z" opacity="1" stop-opacity="1"/>
+  <path id="path1004" fill="#ffe1cf" stroke="#000" stroke-width=".3" d="M377.2 244c5.2-2.6 11.2-3.5 14.3-4.3 3-.8 8-3.3 10.5-4.5 2.4-1.3 4.4-3 5.7-3.5 1.4-.5 3-1.4 3.8-3.1 4.5-8.8 7-15.8 7-22 0-4-1-8.5-5-5.2-3.7 3-7.7 8.9-8.8 13.1-1.6 6.5-3 7.9-3.3 9.1-.4 1.3-1.7 1.3-3.2 1.6a26.7 26.7 0 00-13.5 6.4 136 136 0 01-14.3 9.2c-3.7 2-4.4 2.3-5.2 4a16 16 0 01-2.3 3.7 3 3 0 00-.7 2.5l-.3 5.4c0 1.1.2 1.4.7 1.5.4 0 1-.2 1.3-1.6-.2 1.4 1.7 1 1.8 0 0 1.4 2 .5 2-.8 0 1 1.6.3 1.7-.2l1.1-3.4c.7-1.3 1.4-3 2.8-4 1.5-1 .8-2.3 3.9-3.9z" opacity="1" stop-opacity="1"/>
+  <path id="path1006" fill="#ffe1cf" stroke="#000" stroke-width=".3" d="M414.5 338.5l1.3 3.6c.2.9-.2 1.1-.4 1.6a32.8 32.8 0 00-2.8 8.8c0 1.2-1 2.5-1.3 3.2-.5.8-.3 1.5.7 2.3.5.3 2-.2 2.3-1 .5.6 1.6.4 2-.5.6.5 1.4.2 2-.7.5.4 1.3-.3 1.6-.8.8.4 1.6 0 1.7-1.7l.4-1.2c.2-.4.3-1.1.3-1.7 0-.7.4-2 .9-2.8.5-1 1.5-2.5 1-4-.3-1.4-.9-1.3-1.4-3.3-1.3-1.3-3-3.2-4.8-3.3-1.8-.1-2.8 1.1-3.5 1.5z" opacity="1" stop-opacity="1"/>
+  <path id="path1008" fill="#ffe1cf" stroke="#000" stroke-width=".3" d="M381.7 348.4c1.6 1.6 5.3 1.7 7.8-1-1-.4-3-1.3-3.8-2-1.3 1.2-2.8 2.6-4 3z" opacity="1" stop-opacity="1"/>
+  <path id="path1012" fill="#870f00" stroke="#000" stroke-width=".3" d="M398 165c.7-4 3.6-4 5.4-3.5.8.1 2.6.3 4.3-.2 3.5-.9 6 .3 5.7 3.6 1 .7 1.9 2.3 1.7 3.7-.2 1.4.1 2 1.4 2.1 1.3.2 4 1.8 2.2 4 1.7 1 3 3.7 2.1 5.4-.9 1.8-3.7 2.1-4.8.5-1.3.6-3.4.7-4.6-.6-.9 1-3 .9-3.5 0-.4-1-1-1.4-1.9-1.7-1-.3-1-2.8.4-3.1-.2-.8-.1-1.6.2-2 .4-.4.1-1.2-.7-1.8-.8-.7-1.5-3-.7-4.4-1.4.5-4.4-.9-5-1.8-.7-1-1.6-1-2.1-.2z" opacity="1" stop-opacity="1"/>
+  <path id="path1014" fill="none" stroke="#000" stroke-width=".3" d="M399 182.8c2.2-.3 3-1.7 4.6-1.6" opacity="1" stop-opacity="1"/>
+  <path id="path1016" fill="none" stroke="#000" stroke-width=".3" d="M394.1 176.5l.6.4c.4.2 1 .3 1.4.3" opacity="1" stop-opacity="1"/>
+  <path id="path1018" fill="none" stroke="#000" stroke-width=".3" d="M394.8 174.1l1 .6" opacity="1" stop-opacity="1"/>
+  <path id="path1020" fill="none" stroke="#000" stroke-width=".3" d="M400 165c-1.3-1.2 2.3-3.8 6-.1.7.6 2.5.7 3 .5" opacity="1" stop-opacity="1"/>
+  <path id="path1022" fill="none" stroke="#000" stroke-width=".3" d="M405.2 167c1.7-.4 4.3-.4 5 1.5.8 2 2.3.7 3.5 3 1.2 2.4 3.2 5 5 3.2" opacity="1" stop-opacity="1"/>
+  <path id="path1024" fill="none" stroke="#000" stroke-width=".3" d="M411.4 180a4 4 0 01-.4-3.3c-.7-.8-.4-2.4 0-3.2" opacity="1" stop-opacity="1"/>
+  <path id="path1026" fill="none" stroke="#000" stroke-width=".3" d="M406.4 175.2c0 .7 1 2 2.4 2.2" opacity="1" stop-opacity="1"/>
+  <path id="path1028" fill="none" stroke="#000" stroke-width=".3" d="M416 180.6c-.8-1-.7-2-.5-3.2" opacity="1" stop-opacity="1"/>
+  <path id="path1030" fill="none" stroke="#000" stroke-width=".3" d="M407.6 169.1c0 1 .5 2.4 1.6 3 .3.5 1.4 2.1 3.7 1.9" opacity="1" stop-opacity="1"/>
+  <path id="path1032" fill="none" stroke="#000" stroke-width=".3" d="M413.4 165a11 11 0 00-5.3-2.6" opacity="1" stop-opacity="1"/>
+  <path id="path1034" fill="none" stroke="#000" stroke-width=".3" d="M399.3 198c-2 2.7-3.2 6.4-2.3 11.6 1 5.1 2.4 12.8-1.4 16.2" opacity="1" stop-opacity="1"/>
+  <path id="path1036" fill="none" stroke="#000" stroke-width=".3" d="M414.3 235.9c-2.6-.6-6.4-.6-8.5.9a8.2 8.2 0 01-7.9.4" opacity="1" stop-opacity="1"/>
+  <path id="path1038" fill="none" stroke="#000" stroke-width=".3" d="M408.7 235.7c-2.3.4-3.4 2-3.4 6.3 0 4.2-.9 10.5-.1 16.6" opacity="1" stop-opacity="1"/>
+  <path id="path1040" fill="none" stroke="#000" stroke-width=".3" d="M404.5 237.5c-1.5.4-3 .4-2.8 4.5" opacity="1" stop-opacity="1"/>
+  <path id="path1042" fill="none" stroke="#000" stroke-width=".3" d="M396.7 242c0-2.4 1-4.7 2.6-4.3" opacity="1" stop-opacity="1"/>
+  <path id="path1044" fill="none" stroke="#000" stroke-width=".3" d="M413.3 242.5c.2-5.4-1-7-2.7-7 2.2.1 3.7.4 4.6 9.4.7 6.6 2.1 9 3.7 14.3 4.2 13.6 2.1 34.6 4.2 42" opacity="1" stop-opacity="1"/>
+  <path id="path1046" fill="none" stroke="#000" stroke-width=".3" d="M410.2 244.2a71.6 71.6 0 01-.5 49.3c4.8 13.4 9.7 23.1 10.6 28.6" opacity="1" stop-opacity="1"/>
+  <path id="path1048" fill="none" stroke="#000" stroke-width=".3" d="M396.3 274.1c.8-2.8-2-3.2.5-13.3 1-4.4 1.3-7 .6-8.5" opacity="1" stop-opacity="1"/>
+  <path id="path1050" fill="none" stroke="#000" stroke-width=".3" d="M397.4 258.3c-1 4.5 3.3 13 1.1 19" opacity="1" stop-opacity="1"/>
+  <path id="path1052" fill="none" stroke="#000" stroke-width=".3" d="M393 278.5c0 4 1 9 .8 13-.2 3.9 1.4 5.7 3.2 9.4 6.7 13.4 11.3 23 10.6 35.5 0 2.3.7 7.2-1.7 8.6" opacity="1" stop-opacity="1"/>
+  <path id="path1054" fill="none" stroke="#000" stroke-width=".3" d="M393.3 348.4c.7 0 1.4-.3 2.3-2.4.8-2 3.6-14.5 2.5-23" opacity="1" stop-opacity="1"/>
+  <path id="path1056" fill="none" stroke="#000" stroke-width=".3" d="M399.4 332.6a27 27 0 01-1.3 12.4" opacity="1" stop-opacity="1"/>
+  <path id="path1058" fill="none" stroke="#000" stroke-width=".3" d="M403.8 324.7c1 5.6 1 10.7.1 14.3" opacity="1" stop-opacity="1"/>
+  <path id="path1060" fill="none" stroke="#000" stroke-width=".3" d="M401.5 339c.1 2.3 1.2 8-.6 8.5" opacity="1" stop-opacity="1"/>
+  <path id="path1062" fill="none" stroke="#000" stroke-width=".3" d="M410.2 312.2c4.2 6.7 7.6 23.2 11.1 26.7" opacity="1" stop-opacity="1"/>
+  <path id="path1064" fill="none" stroke="#000" stroke-width=".3" d="M413.9 336.2c-.2-1.8-.3-4.4-1.3-5.5" opacity="1" stop-opacity="1"/>
+  <path id="path1066" fill="none" stroke="#000" stroke-width=".3" d="M367.8 255.5c0-1.3-.2-2.5 1.2-4.5" opacity="1" stop-opacity="1"/>
+  <path id="path1068" fill="none" stroke="#000" stroke-width=".3" d="M365.7 256.2c.2-4.4.1-4.8 1.4-6" opacity="1" stop-opacity="1"/>
+  <path id="path1070" fill="none" stroke="#000" stroke-width=".3" d="M364 256.3c0-3.1-.4-4.2.8-6.3" opacity="1" stop-opacity="1"/>
+  <path id="path1072" fill="none" stroke="#000" stroke-width=".3" d="M379.8 161.2l-4.6 3.4" opacity="1" stop-opacity="1"/>
+  <path id="path1074" fill="none" stroke="#000" stroke-width=".3" d="M381 162.2c-.5.1-2 1.4-4.9 3.6" opacity="1" stop-opacity="1"/>
+  <path id="path1076" fill="none" stroke="#000" stroke-width=".3" d="M381.2 164c-1 .4-2.6 2-4.2 3.2" opacity="1" stop-opacity="1"/>
+  <path id="path1078" fill="none" stroke="#000" stroke-width=".3" d="M374 163.7l-1.6 1.6" opacity="1" stop-opacity="1"/>
+  <path id="path1080" fill="none" stroke="#000" stroke-width=".3" d="M414.3 357c-.3-.3-.3-1.3.2-2.4" opacity="1" stop-opacity="1"/>
+  <path id="path1082" fill="none" stroke="#000" stroke-width=".3" d="M416.3 356.5c-.3-.3 0-1.7.4-2.6" opacity="1" stop-opacity="1"/>
+  <path id="path1084" fill="none" stroke="#000" stroke-width=".3" d="M418.3 355.8c-.4-.2-.5-1 0-2" opacity="1" stop-opacity="1"/>
+  <path id="path1086" fill="none" stroke="#000" stroke-width=".3" d="M419.9 355c-.3 0-.4-.5 0-1.8" opacity="1" stop-opacity="1"/>
+  <path id="path1090" fill="#000" stroke="none" stroke-width=".3" d="M397.2 168.7c.8 1 1.7 1 1.8 1.7l.4 1h-.6l-1.4-.1c-.4 0-.9-.5-.6-.6.3 0 .3-.1.2-.3l.3-.6c.2-.1 0 0 0-.4-.2-.3-.3-1-.1-.7z" opacity="1" stop-opacity="1"/>
+  <path id="path1092" fill="#000" stroke="none" stroke-width=".3" d="M397.7 167.7a6 6 0 013.4 1.5c.7.8.1.6-.2.6-.4 0-1-.2-1.4-.6-.3-.4-1.4-1-2-1.1-.2-.1-.5-.5.2-.4z" opacity="1" stop-opacity="1"/>
+  <path id="path2758" fill="#012169" stroke-width=".5" d="M.2 0h256v256H.2z" opacity="1" stop-opacity="1"/>
+  <path id="path2760" fill="#FFF" stroke-width=".5" d="M256.2 0v32l-95 96 95 93.5V256h-33.5l-95.5-94-93 94H.2v-34l93-93.5L.2 37V0h31l96 94 93-94z" opacity="1" stop-opacity="1"/>
+  <path id="path2762" fill="#C8102E" stroke-width=".5" d="M92.2 162l5.5 17-76.5 77H.2v-1.5zm62-6l27 4 75 73.5V256zm102-156l-96 98-2-22 75-76zM.2.5L96.7 95l-29.5-4-67-66.5z" opacity="1" stop-opacity="1"/>
+  <path id="path2764" fill="#FFF" stroke-width=".5" d="M88.2 0v256h80V0zM.2 88v80h256V88z" opacity="1" stop-opacity="1"/>
+  <path id="path2766" fill="#C8102E" stroke-width=".5" d="M.2 104v48h256v-48zm104-104v256h48V0z" opacity="1" stop-opacity="1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mt.svg
new file mode 100644
index 0000000..96acc15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mt.svg
@@ -0,0 +1,50 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mt" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ce0000" d="M256 0h256v512H256z"/>
+    <path fill="#fff" d="M0 0h256v512H0z"/>
+  </g>
+  <g transform="matrix(.35005 0 0 .35003 40.7 -25.5)">
+    <path fill="#f1eeee" fill-rule="evenodd" d="M183.1 381.7c0 2.3-2.6 4.2-5.8 4.2-3.3 0-5.9-2-5.9-4.2 0-2.3 2.6-4.2 5.8-4.2s6 1.9 6 4.2z"/>
+    <path fill="#c00" fill-rule="evenodd" d="M0 361.4v106.3h106.4a38.1 38.1 0 0035.4 35.5v106.3h106.3V503.2a38.1 38.1 0 0035.4-35.5h106.3V361.4H283.5a38.1 38.1 0 00-35.4-35.4V219.7H141.8V326a38.1 38.1 0 00-35.4 35.4H0z"/>
+    <path fill="#ffe600" fill-rule="evenodd" d="M3.6 365v99.2h106.3a38.1 38.1 0 0035.4 35.4V606h99.2V499.6a38.1 38.1 0 0035.5-35.4h106.3V365H280a38.1 38.1 0 00-35.5-35.5V223.2h-99.2v106.3A38.1 38.1 0 00110 365H3.6z"/>
+    <path fill="#707070" fill-rule="evenodd" d="M7 368.5v92.1h106.3a38.1 38.1 0 0035.5 35.5v106.3h92.1V496a38.1 38.1 0 0035.4-35.5h106.3v-92H276.3A38.1 38.1 0 00241 333V226.8h-92.1V333a38.1 38.1 0 00-35.5 35.4H7z"/>
+    <path fill="#a0a0a0" fill-rule="evenodd" d="M10.6 372v85h106.3a38.1 38.1 0 0035.4 35.5v106.3h85V492.5a38.1 38.1 0 0035.5-35.4H379v-85H272.8a38.1 38.1 0 00-35.4-35.5V230.3h-85v106.3a38.1 38.1 0 00-35.5 35.4H10.6z"/>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M153.2 327.8c6.3 6.3 1.2 21.4-11.2 33.9s-27.6 17.5-33.9 11.2c-6.2-6.2-1.1-21.3 11.3-33.8s27.6-17.5 33.8-11.3z"/>
+      <path fill="gray" d="M145.7 335.3c6.3 6.3 4.6 18-3.7 26.3s-20.1 10-26.3 3.8c-6.3-6.2-4.6-18 3.7-26.3s20.1-10 26.3-3.8z"/>
+      <path fill="#d0d0d0" d="M114.4 354.1l2.5-2.5 10 5-5-10 2.5-2.5 10 20-20-10zm15-15l2.5-2.5 15 15-2.4 2.5z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M281.6 373c-6.2 6.2-21.4 1.1-33.8-11.3s-17.5-27.6-11.3-33.9c6.3-6.2 21.4-1.1 33.8 11.3s17.5 27.6 11.3 33.8z"/>
+      <path fill="gray" d="M274.1 365.4c-6.2 6.2-18 4.6-26.3-3.7s-10-20.1-3.8-26.3 18-4.6 26.3 3.7 10 20 3.8 26.3z"/>
+      <path fill="#d0d0d0" d="M255.3 334l2.5 2.6-5 10 10-5 2.5 2.5-20 10 10-20zm15 15.1l2.5 2.5-15 15-2.5-2.4z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M236.5 501.3c-6.2-6.2-1.1-21.4 11.3-33.8s27.6-17.5 33.8-11.3c6.2 6.2 1.2 21.4-11.3 33.8s-27.5 17.5-33.8 11.3z"/>
+      <path fill="gray" d="M244 493.8c-6.2-6.2-4.5-18 3.8-26.3s20-10 26.3-3.8c6.2 6.3 4.5 18-3.8 26.3s-20 10-26.3 3.8z"/>
+      <path fill="#d0d0d0" d="M275.4 475l-2.5 2.5-10-5 5 10-2.6 2.5-10-20 20 10zm-15 15l-2.6 2.5-15-15 2.5-2.5z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M108.2 456.2c6.2-6.2 21.3-1.2 33.8 11.3s17.5 27.6 11.3 33.8c-6.3 6.2-21.4 1.2-33.9-11.3s-17.5-27.6-11.2-33.8z"/>
+      <path fill="gray" d="M115.7 463.7c6.2-6.2 18-4.5 26.3 3.8s10 20 3.7 26.3c-6.2 6.2-18 4.5-26.3-3.8s-10-20-3.7-26.3z"/>
+      <path fill="#d0d0d0" d="M134.4 495l-2.5-2.5 5-10-10 5-2.5-2.5 20-10-10 20zm-15-15l-2.5-2.5 15-15 2.5 2.5z"/>
+    </g>
+    <path fill="none" stroke="#707070" stroke-width="1pt" d="M269.3 414.6c0 41-34.1 74.4-76.2 74.4S117 455.7 117 414.6s34.1-74.4 76.2-74.4 76.2 33.3 76.2 74.4z" transform="matrix(.97674 0 0 1 6.3 0)"/>
+    <path fill="none" stroke="#707070" stroke-width="1pt" d="M269.3 414.6c0 41-34.1 74.4-76.2 74.4S117 455.7 117 414.6s34.1-74.4 76.2-74.4 76.2 33.3 76.2 74.4z" transform="matrix(.74419 0 0 .7619 51.2 98.7)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" d="M170 474.8a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm56.8 0a3.5 3.5 0 11-7.1 0 3.5 3.5 0 017 0zm-34.3 0v3.7h-4.7c-4.7 0-4.7 3.7 0 3.7h4.7v3.7c0 3.8 4.2 4.3 4.5.3l.3-4h4.7c4.7 0 4.7-3.7 0-3.7h-4.7v-3.7c0-3.7-4.8-3.7-4.8 0z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M180.7 163v7s-3.3 5.5-24.8 7.2-24.8 0-24.8 0c.6 6.1 4.7 17.9 3.5 31.9.9 16.2-4 31-4 31 .5.8-2 1.3-6.6.8 3.6-3.5 3.1-13.8 3.6-28.3.4-14.6-13.6-36.5-10.7-42.5s63.8-7.1 63.8-7.1z" transform="matrix(.33032 0 0 .29556 117.6 374.3)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M272.8 162.3c20.9-1.1 55.9-.9 55.9-.9s8.3 18.5 7.9 28.7-3.2 19-7 14.6 1.7-3.5 2.4-14.6c.7-11-6.6-22.4-6.6-22.4s-15 7.3-37.5 5.8-12.5-10.8-15-11.2z" transform="matrix(.33032 0 0 .29556 115.2 366.9)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M312.2 274c20.9-1.2 34.6 2.4 34.6 2.4s8.2 18.5 7.9 28.7-3.2 19-7.1 14.6 1.8-3.5 2.5-14.6c.7-11-6.7-22.5-6.7-22.5s-15 7.3-37.4 5.9c-22.5-1.5-16.1-3-18.6-3.4s-3.2 7-37.2 8-51.4-8-51.4-8-3.4 5.4-24.8 7-24.8 0-24.8 0c.5 6.2 4.7 18 3.5 32 .8 16.2-4 31-4 31 .5.8-2.1 1.3-6.6.8 3.5-3.5 3.1-13.8 3.5-28.3C146 313 132.1 291 135 285s18.3-.4 21.3-3.6c2.9-3.1-13.8-25.3-10.7-46 3.2-20.8 20.8-15 42.6-14.2 21.7.7 69.8 7 81.5 0 11.6-7 6.5-33 17.6-49.6a32.2 32.2 0 0128.4-14.2c7 0 17.7 28.4 17.7 35.4l-3.5 3.6h-3.6v3.5c-8 1-9.2-7.7-14.1-14.1-2.2 10 7 42.5 7 63.7 0 17.8-6.6 25.6-7 24.3z" transform="matrix(.33032 0 0 .29556 104.6 339.3)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M209 131.1c.4 7-27.3 22.9-29.6 29.2s7 9.7 4.2 13.3c-2.9 3.6-5.2 2.2-5.8 2.9-.6.7-10.4-24.6-10.4-24.6s26-13 25-18.7-19.2-9-22.6-23.3c-3.3-14.2-1.4-41.7-4.1-47.5C163 56.7 131 51.2 131 42.5s33-32.5 36.4-36c3.5-3.6 7 3.5 3.5 7-3.5 3.6-29.2 25.5-29.2 29 0 3.6 21.3 7.1 28.4 7.1 7 0 10.6-3.5 10.6-7 0-3.1-7-3.6-7-10.7s3.5-10.6 10.6-10.6c3.5 0 10.3 4.5 10.6 10.6.3 6-6.3 6.6-7.1 10.6-.8 4 7 7.1 14.2 7.1 7 0 31.3 20.6 34.8 24.2 3.5 3.5 7 3.5 3.5 7-3.5 3.6-1.4 7.8-5 4.2-3-3.4-3.5-7-3.5-7-.3-3.3-26.3-17.8-29.8-14.2-3.6 3.5 0 46 0 49.6 0 7 7.3 7 7 17.7z" transform="matrix(.33032 0 0 .29556 116.1 372.4)"/>
+    <path fill="#a7a7a7" fill-rule="evenodd" d="M170.2 386.9h14v14.7h-14z"/>
+    <rect width="87.5" height="1.1" x="405.6" y="64.6" fill="gray" fill-rule="evenodd" rx="1.3" ry=".6" transform="matrix(.5544 .83225 -.88236 .47057 0 0)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M180.7 42.5a7 7 0 11-14.2 0 7 7 0 0114.2 0z" transform="matrix(.33032 0 0 .29556 114 362.8)"/>
+    <path fill="gray" fill-rule="evenodd" d="M214.7 394.4c0 1-5.4 2-11.7 2s-11.7-1-11.7-2c0-.8 5.4 1.3 11.7 1.3s11.7-2.1 11.7-1.3z"/>
+    <path fill="#a7a7a7" fill-rule="evenodd" d="M171.4 401.6h11.7v4.1h-11.7z"/>
+    <path fill="gray" fill-rule="evenodd" d="M209.4 391.2c-1 2.2-2.2 3.7-2.4 3.4-.2-.2.6-2.2 1.7-4.3 1.2-2.1 2.3-3.6 2.4-3.4.2.3-.5 2.2-1.7 4.3zm3 5.5c-1.3 1.2-2.3 2-2.4 1.7 0-.2 1-1.3 2.3-2.5 1.3-1.1 2.4-1.9 2.4-1.6 0 .2-1 1.3-2.3 2.4z"/>
+    <path fill="gray" fill-rule="evenodd" d="M211 394c.9 1.8 1.5 3.3 1.3 3.4-.1 0-1-1.3-2-3-1-1.8-1.6-3.2-1.4-3.3.2 0 1 1.3 2 3zm-1 9.1c0 .3-3.6.5-8.2.5s-8.2-.2-8.2-.5 3.7-.5 8.2-.5c4.6 0 8.2.2 8.2.5zm-26.9-1c0 .3-2.6.5-5.8.5-3.3 0-5.9-.2-5.9-.5s2.6-.5 5.8-.5 6 .2 6 .5z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="gray" stroke-width="1pt" d="M375.5 172s9 36 47 36.5 51.3-10.8 35.8-30-44-13.1-40.3 3.4-10.8 22-14.2 10.4c-3.4-11.6-17-46 7.5-48.3 24.5-2.3 76.5-14.8 89.5 9.2S486 198.9 507 204c21 5 24-5.8 60-9.1s49.7 11 62 9c12.3-2 10.6-37.2.8-46.1-9.7-9-28.5-10.6-33.3-20.4-4.8-9.8-17.8-1.9-16.6-13s18.5 7.7 18.7 2c0-.2 2.9-3.9 3.5-4.9-2.2-.8-3.5.6-5.1 2 1.8-2.4 1.7-3.5 2.3-5.4-.3-.7-2.5 2.8-2.9 2s2.5-5.6 1.2-3.8c-.4.5-3.8 3.3-3.9 1.4 0-.8 1.8-2.8 1.2-4-.5-.9-3 1.1-3.4 1.3 1.5-3.3 1.4-3.2 0-5.7-1.3-2.4-2.2-2.4-4.3.4.9-4 1.1-4.8-1-6.3-1.6-1.6-1.7-3-3.8 4.1.8-7.6-1.3-8-.4-11.5.5-3.3 3.3-4.7 7.9-4 9 .1 13.7 18 16.6 17.9 3 0 6.2-18.9 18.8-11.3 12.5 7.7 14 9.2 20.4 13.8 6.3 4.5-4.5 11.4-.9 20.4 3.6 9 28.3 38.8 21.3 70-7 31-25 36-26.7 49.5-1.6 13.4 57 8 72 12.5s24.4 23 25 26.2-26.2 2.9-26.2 2.9-13.8-11.8-46.6-13c-32.9-1-45.4-23-57.7-25.8s-38.5 4.7-53.1 3.6c-14.7-1.1-29.5-5-39-7.1-9.5-2.2-56.7 35.4-56.5 44.2-9.9-.7-33-2.7-32.1-1.7 1 1 4.2-17 22.2-20.2 18-3.2 35.7-17.6 35-27-.5-9.5 3.6-42 5-55.8s8.3-20.6 6.7-28c-1.6-7.2-22.2-14.7-42-14.5-19.8.2-41.8 2-45 10-3.2 8-.7 31 3.4 28.3 4-2.6-1-17.7 3.3-20.8a57.3 57.3 0 0125.8-6.2c10.4-.4 28.5 14.7 28.3 19.5-.2 4.9 5.8 21-2.5 27-8.3 6.2-25.3 9-41.6 7.6a71.4 71.4 0 01-38.7-16.7c-6-6-9.6-24.1-9.6-25.4z" transform="matrix(.21598 0 0 .12989 76.3 416.2)"/>
+    <path fill-rule="evenodd" d="M209.5 431.6a1 1 0 11-2 0 1 1 0 012 0z"/>
+    <path fill="#d0d0d0" d="M253.6 418l4.6 1 7.6-5.3-.6 2.8-4 2.6-2.2 1.4 1.5 2.2 2.5 4-.6 2.6-4.7-8.1-4.6-1 .5-2.2zm-7.7-33.5l8.8-4.1-2.4-5.2 1.2-.5 5.7 12.5-1.2.5-2.4-5.2-8.8 4-1-2zm-13.7-16.7l8.1-7.4 1.6 1.8-.2 12.5 6.4-5.8 1.5 1.6-8.2 7.4-1.6-1.7.3-12.6-6.4 5.9-1.5-1.7zm-35.5-14.3l1.4-11 2.2.4-1.1 9.6 8.5 1-.2 1.3-10.8-1.3zm-17.4 1.6l-2-10.8 2.3-.4 1.7 9.5 8.4-1.5.3 1.3-10.7 1.9zM147 371l-.8-1 5.8-4.6 2.5 3.2a16.3 16.3 0 01-2 3.2 16 16 0 01-2.5 2.6 14.8 14.8 0 01-4.1 2.4c-1.4.5-2.6.6-3.7.4s-2-.8-2.7-1.6a4.9 4.9 0 01-1-3 6.3 6.3 0 011-3.6 14.3 14.3 0 013.2-3.4 13.7 13.7 0 013-1.8c.9-.4 1.7-.7 2.5-.7s1.4.2 2.1.6l-1.4 1.6a3.7 3.7 0 00-1.6-.4c-.5 0-1 .1-1.7.4a9.2 9.2 0 00-2.1 1.3c-.8.6-1.5 1.3-2 2l-.9 1.7a4 4 0 00.7 3.7 3.8 3.8 0 002.2 1.4c.8.2 1.7.1 2.7-.3 1-.4 2-1 2.9-1.6a11.8 11.8 0 002-2.1c.6-.8 1-1.5 1.2-2l-1.3-1.6-4 3.2zm-.3 79.1l-9 6.4-6.8-9.6 1-.7 5.5 7.7 2.8-2-4.7-6.7 1-.7 4.8 6.6 4-2.9 1.4 2zm-13.2-14.3a3.6 3.6 0 002.5-2.5c.4-1.3.4-2.7 0-4.4a7.3 7.3 0 00-2.3-3.8 3.8 3.8 0 00-3.6-.7 3.9 3.9 0 00-2 1.3 4.5 4.5 0 00-1 2.5c-.1 1 0 2 .3 3.1a8 8 0 002.2 3.8c1 1 2.3 1.1 3.9.7zm.6 2.3c-1.8.5-3.4.1-4.8-1-1.4-1.3-2.4-3-3.1-5.4-.4-1.6-.6-3-.5-4.4s.5-2.5 1.2-3.4a4.7 4.7 0 012.5-1.8 4.7 4.7 0 013.2.2 6.5 6.5 0 012.8 2.4 12.8 12.8 0 011.8 3.9c.4 1.6.6 3 .4 4.4a6.6 6.6 0 01-1.2 3.4 4.4 4.4 0 01-2.3 1.7zm.9-22.4l-11-.2.2-7.7c0-1.6.1-2.7.3-3.5.3-.8.6-1.5 1.1-2 .5-.4 1.1-.6 1.7-.6.8 0 1.4.4 2 1.2s.8 2 .9 3.7l.6-1.3a9.8 9.8 0 011.5-2l3-2.9v3l-2.4 2.2-1.5 1.6c-.4.4-.6.8-.8 1.2a4.6 4.6 0 00-.3 1v1.3l-.1 2.6 4.8.2v2.3zm-6.1-2.4l.1-5-.1-2.4a2.8 2.8 0 00-.7-1.4 2 2 0 00-1-.5c-.5 0-1 .3-1.2 1a6 6 0 00-.6 2.7l-.1 5.5 3.6.1zm30.6-48.4V352l2.2-1.3 11.7 5.9-2.2 1.3-3.5-1.8-6.2 3.7v3.8l-2 1.3zm2-6.5l5-3-3.1-1.7-2.2-1.3.2 2.3v3.7zm53.1-3.4l11.9-5 2 1.5-.7 13-2.2-1.5.4-3.9-6-4.2-3.4 1.5-2-1.4zm6.7-.7l4.8 3.5.3-3.6c.1-1 .2-1.9.4-2.5l-2 1.1-3.5 1.5zm29.5 41l10.7-2.6 1.8 7.5c.3 1.5.5 2.7.5 3.5a4 4 0 01-.6 2.1c-.4.6-.8 1-1.4 1.1-.8.2-1.5 0-2.2-.7a8.2 8.2 0 01-1.9-3.3c0 .6 0 1-.2 1.4a9.8 9.8 0 01-1 2.2l-2.2 3.7-.7-2.8 1.7-2.8 1.1-2c.3-.5.4-1 .5-1.3a4.6 4.6 0 000-1l-.2-1.3-.7-2.6-4.7 1.1-.5-2.2zm6.5.8l1.1 4.8c.3 1 .5 1.8.8 2.3.3.6.6 1 1 1.2.3.2.7.3 1 .2.5-.1.9-.5 1-1.1a6 6 0 00-.1-3l-1.3-5.3-3.5.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mu.svg
new file mode 100644
index 0000000..773d3d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mu.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mu" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#009f4d" d="M0 384h512v128H0z"/>
+    <path fill="#151f6d" d="M0 128h512v128H0z"/>
+    <path fill="#ee2737" d="M0 0h512v128H0z"/>
+    <path fill="#ffcd00" d="M0 256h512v128H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mv.svg
new file mode 100644
index 0000000..aa5ed53
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mv.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mv" viewBox="0 0 512 512">
+  <path fill="#d21034" d="M0 0h512v512H0z"/>
+  <path fill="#007e3a" d="M128 128h256v256H128z"/>
+  <circle cx="288" cy="256" r="85.3" fill="#fff"/>
+  <ellipse cx="308.6" cy="256" fill="#007e3a" rx="73.9" ry="85.3"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mw.svg
new file mode 100644
index 0000000..a9521a0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mw.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M179.7 0h708.7v708.7H179.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-129.8) scale(.72249)">
+    <path fill="#f41408" d="M0 0h1063v708.7H0z"/>
+    <path fill="#21873b" d="M0 472.4h1063v236.3H0z"/>
+    <path d="M0 0h1063v236.2H0z"/>
+    <path fill="#f31509" d="M401.4 214a147.3 147.3 0 01192.2-80.3 142 142 0 0180.2 80.3H401.4zm-36 9.8a419.9 419.9 0 01-72.5-12c-5.6-2-5.9-5.4-5.2-8a7 7 0 018.5-4.5c7.9 2 39.9 10.5 69.3 24.5zM538 92.6c-5.8-32-7.3-67.3-6.7-73.2.5-6 3.8-7 6.5-7a7 7 0 016.5 7c0 8.2-.2 41.3-6.3 73.2zm16 .8a427.9 427.9 0 01-.5-73.6c1.1-5.9 4.4-6.7 7.1-6.4 2.7.2 6.3 3.3 5.9 7.6-.7 8-3.7 41-12.5 72.4zm14.4 2c-.4-32.6 4-67.6 5.7-73.4 1.5-5.8 4.9-6.3 7.6-5.8a7 7 0 015.2 8c-1.4 8-7.1 40.6-18.5 71.1zm15.3 3.3c2.5-32.4 10-66.9 12-72.5 2-5.6 5.5-5.8 8.1-5.1a7 7 0 014.5 8.4c-2.1 7.9-10.6 39.9-24.6 69.2zm15 4.8A421.6 421.6 0 01617 32.3c2.6-5.4 6-5.3 8.6-4.4a7 7 0 013.7 8.9c-2.8 7.6-14.2 38.7-30.7 66.7zm14 5.9c8-31.6 21.4-64.2 24.5-69.4 3-5.2 6.4-4.8 8.8-3.6a7 7 0 013 9c-3.5 7.5-17.4 37.5-36.3 64zm13.8 7.2a432 432 0 0130.4-67c3.4-4.9 6.8-4.2 9.2-2.8a7 7 0 012 9.3c-4 7-20.5 35.7-41.6 60.5zm13 8.3a419.9 419.9 0 0136.2-64c3.8-4.6 7.1-3.6 9.3-2a7 7 0 011.3 9.4c-4.7 6.7-23.6 33.8-46.8 56.6zm12.2 9.5c16-28.4 37.4-56.4 41.7-60.7 4.2-4.2 7.4-3 9.5-1.2 2 1.8 3.2 6.3.4 9.6-5.2 6.2-26.4 31.6-51.6 52.3zm11.5 10.5a424 424 0 0146.7-56.8c4.6-3.8 7.7-2.3 9.6-.4a7 7 0 01-.4 9.6 410 410 0 01-56 47.6zm10.4 11.5c20.7-25.1 46.7-49 51.6-52.4 5-3.4 7.8-1.6 9.6.4a7 7 0 01-1.2 9.5 421.5 421.5 0 01-60 42.5zm9 11.8a422 422 0 0155.8-48c5.2-3 8-.9 9.5 1.4 1.6 2.2 1.6 6.8-2 9.3a415.9 415.9 0 01-63.2 37.3zm8.2 12.8a421.7 421.7 0 0159.7-43c5.4-2.5 8-.2 9.4 2.1 1.3 2.3 1 7-2.8 9.2-7 4-35.6 20.8-66.3 31.7zm7.6 14.6a431.5 431.5 0 0163.4-37.3c5.6-2 8 .5 9.1 3a7 7 0 01-3.6 8.8 417.9 417.9 0 01-68.9 25.5zm5.8 14.1a413 413 0 0166.3-31.7c5.8-1.5 8 1.2 8.9 3.7 1 2.5-.3 7-4.4 8.5a412.8 412.8 0 01-70.8 19.5zm4.6 15a421 421 0 0169-25.8c5.8-1 7.7 1.8 8.4 4.5a7 7 0 01-5 8c-8 2.2-39.9 10.7-72.4 13.2zM522.4 93.1A421.2 421.2 0 01508.9 21c0-6 3.1-7.3 5.8-7.6a7 7 0 017.1 6.5c.8 8 3.7 41 .6 73.4zm-15.4 2a418.8 418.8 0 01-19.7-70.8c-.5-6 2.5-7.6 5.1-8.1a7 7 0 017.7 5.8c1.4 8 7.2 40.6 6.9 73.1zm-15.3 3.4a421.5 421.5 0 01-25.9-68.9c-1-5.9 1.9-7.8 4.5-8.5a7 7 0 018 5.1c2.2 7.9 10.8 39.8 13.4 72.3zm-14.4 4.5a420.4 420.4 0 01-31.6-66.4c-1.5-5.8 1.2-8 3.7-8.9a7 7 0 018.5 4.4c2.8 7.7 14.1 38.7 19.4 70.9zm-14 5.7A419.8 419.8 0 01426 45.4c-2-5.7.4-8 2.9-9.1a7 7 0 018.9 3.6c3.4 7.4 17.3 37.4 25.4 69zm-14.2 7.4a420 420 0 01-42.8-59.9c-2.5-5.4-.3-8 2-9.3a7 7 0 019.2 2.8c4.1 7 20.7 35.7 31.6 66.4zm-13 8.2a422 422 0 01-47.8-56c-3-5.2-1-8 1.3-9.5a7.2 7.2 0 019.4 2c4.7 6.7 23.6 33.8 37.1 63.5zm-12.1 9a419.3 419.3 0 01-52.4-51.6c-3.4-4.9-1.6-7.8.5-9.5a7 7 0 019.5 1.2c5.2 6.2 26.4 31.6 42.4 60zM412.2 144a421.6 421.6 0 01-56.8-46.8c-3.8-4.6-2.3-7.7-.4-9.6a7 7 0 019.6.4c5.8 5.8 29.2 29.1 47.6 56zM402 154.9a421 421 0 01-60.5-41.8c-4.2-4.2-2.9-7.4-1.1-9.5a7 7 0 019.5-.4c6.3 5.2 31.5 26.5 52.1 51.7zm-9.7 12.5a421.4 421.4 0 01-64-36.3c-4.6-3.9-3.6-7.2-2-9.4a7 7 0 019.5-1.3 423 423 0 0156.5 47zm-8.7 13.4a420.5 420.5 0 01-67-30.3c-5-3.5-4.3-6.8-2.9-9.2a7 7 0 019.3-2.1c7.1 4 35.8 20.5 60.6 41.6zm-7.3 13.7c-31.5-8-64.2-21.4-69.4-24.4-5.1-3-4.8-6.4-3.6-8.8a7.1 7.1 0 019.1-3c7.4 3.4 37.4 17.4 64 36.2zm-5.8 13.8a415 415 0 01-71.2-18.6c-5.4-2.5-5.3-6-4.4-8.5 1-2.5 4.8-5.2 8.9-3.7 7.6 2.8 38.7 14.2 66.7 30.8z"/>
+    <path fill="#f31509" d="M365.5 223.8c-32.5-2.5-67-9.9-72.6-12-5.6-2-5.9-5.4-5.2-8a7 7 0 018.5-4.5c7.9 2 39.9 10.5 69.3 24.5z"/>
+    <path d="M275.3 214.7H803V234H275.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mx.svg
new file mode 100644
index 0000000..a440656
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mx.svg
@@ -0,0 +1,378 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mx" viewBox="0 0 512 512">
+  <defs>
+    <radialGradient id="b" cx="842.3" cy="103.7" r="25.9" gradientTransform="matrix(.11321 .02876 -.02762 .11359 180.2 193.2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="c" cx="651.5" cy="550.5" r="25.9" gradientTransform="matrix(-.10753 -.04307 .03971 -.09991 375.3 9.8)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="d" cx="380.8" cy="740.4" r="25.9" gradientTransform="matrix(.06029 .00225 -.00274 .11843 377.4 -120)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#fff"/>
+      <stop offset="1" stop-color="#f15770"/>
+    </linearGradient>
+  </defs>
+  <path fill="#ce1126" d="M341.3 0H512v512H341.3z"/>
+  <path fill="#fff" d="M170.7 0h170.6v512H170.7z"/>
+  <path fill="#006847" d="M0 0h170.7v512H0z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M284.6 295.6l.2 3.5 1.4-.9-1-3z"/>
+  <circle cx="284.5" cy="294.6" r="1.1" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M289 301.1l-2.7-2.5-1.2 1 3.6 2z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M288.7 302.6c-.4-.6-.3-1.3.3-1.7.5-.4 1.2-.3 1.6.2.3.5.2 1.2-.3 1.6-.5.4-1.2.3-1.6-.2zm20.3-38.9l2.7 2.6.4-1.3-2.5-1.7z"/>
+  <circle cx="308.7" cy="263" r="1.1" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M316.1 265.3l-4 1.1.3-1.3 3.5-.4z"/>
+  <circle cx="316.8" cy="264.7" r="1.1" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M302.3 285.5l-2.5-4 .4-.1 2.9 3.3z"/>
+  <circle cx="299.6" cy="280.7" r="1.2" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M302.5 285.6l3.2.6.1-.5-2.7-1z"/>
+  <circle cx="306.6" cy="286.2" r="1.1" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M227.7 294.4c0 .6-.4 1-.8 1s-.8-.5-.8-1 .4-1 .8-1 .8.5.8 1zm0 1.8l.7 4-1-.3-.3-3.5z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M228.6 294.9c.4.6-.3 1.5-1.2 1.7-.8.3-1.9-.1-1.9-.9 0-.9 1.3-.4 1.6-.5.5-.2 1-1 1.5-.3z"/>
+  <ellipse cx="221.6" cy="301" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx="1.3" ry=".9"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M223.7 300.8l3.9-.2-.7-.8-3.2.4z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M224 300.4c.4 1 .4 2.3-.7 2.1-1.1-.1-.9-1.1-1-1.5-.1-.7-.8-1.3-.1-2 .6-.6 1.5.4 1.8 1.4z"/>
+  <ellipse cx="211.5" cy="279.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx=".8" ry="1.1"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M211.5 281.9l.1 3.7-1-.9.1-3z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M213 280.8c.2.8-1.1 1.3-2 1.1-.8-.1-1.5-.6-1.3-1.4 0-.7 1.2-.6 1.5-.4.4.3 1.5-.6 1.8.7z"/>
+  <ellipse cx="204.9" cy="285.2" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx="1.3" ry=".6"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M207.3 285.2l2.9-.2 1.2 1-4.2-.2z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M206.2 283.6c.8 0 1.3.9 1.2 1.8 0 1-.8 1.7-1.5 1.6-.8-.1-.7-.8-.7-1l.5-.8c0-.3-.2-1-.1-1.2 0-.3.2-.4.6-.4zm-2.4-22.7c-.3.6-1 1-1.2.7-.3-.2-.2-.9.1-1.4.3-.5.8-.8 1.2-.6.3.2.3.8 0 1.3zm-3.2 5.9l1.6-3.9-.2-.2-1.9 2.7z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M202 263c-.9-.6-1-1.3-.8-1.9.3-.5.9-.2.9-.2l.7.7c.2.1.7-.1 1 .4.4.5.2 1 0 1a2 2 0 01-1.9 0zm-6.9-.6c.6.4 1 1 .7 1.3-.2.4-.8.4-1.4 0s-.9-.8-.7-1.2c.2-.4.9-.4 1.4 0zm1.7 1.7l3 1.8v1.5l-3.3-2.8z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M196.8 264.5c-.7.7-1.3.8-1.8.5-.6-.3-.1-.9-.1-.9l.6-.6c.2-.3 0-.8.6-1 .5-.4 1-.1 1 .2.1.3.3 1.2-.3 1.8z"/>
+  <path fill="#aa8c30" d="M285.3 295.8l-.4.4-.2.7v-1.1l.4-.3.2.3z"/>
+  <path fill="#aa8c30" d="M285.4 295s-.2.5-.9.5c-.6 0-1-.3-1-.7l.1-.9-.3.4v.7l.5.6h.4l.4.1.5-.2.3-.2v-.2zm3.4 6h-.6a13.3 13.3 0 01-2.7-1.4l3 2 .3-.6zm1.9.8s0 .6-.6.8c-.6.3-1 .2-1.2 0a1.1 1.1 0 01-.3-1l-.1.5.3.6.6.3h.5l.3-.2.4-.4.2-.4-.1-.2zm19.4-38v.8l-.7-.7.3-.4.4.3zm-.3-1c0 .5-.8 1.3-1.3 1-.6-.2-1-.8-.7-1.4l-.2.3.1.8.6.5h.6l.6-.2.3-.6v-.4zm8 1.4s-.1-.3 0 0c0 .5-.5 1.4-1.1 1.3-.7 0-1-.6-.9-1.1v.8l.3.3.5.3h.5l.6-.4.2-.5v-.3l-.1-.4z"/>
+  <path fill="#aa8c30" d="M315 264.9s0 .2-.3.4a42.8 42.8 0 00-1 .6l2.2-.6-.2-.6-.7.2zm-13.6 17.9l-.2.4v.6l-1.2-2 .4-.2 1 1.2zm-.7-2c-.3.6-1.2 1-1.6.7-.5-.3-.8-1.2-.3-1.6l-.3.2-.1.6.2.5.4.5.4.2.7-.2.5-.3s.3-1 0-.5zm4.4 4.7s0 .2-.4.2h-1.2l2 .4.2-.4-.6-.2z"/>
+  <path fill="#aa8c30" d="M307.7 286c.2.7-.4 1.4-1.2 1.1s-1-1-.8-1.5l-.2.6.2.6.5.4.5.2.5-.2.5-.5.1-.6v-.1zm-79.2 8.9c.2.2-.1 1.2-1 1.5-1 .4-1.4 0-1.6-.3l-.2-.6-.2.2.2.4.4.4.8.2.6-.1.6-.3.3-.3.3-.4v-.5l-.1-.2z"/>
+  <path fill="#aa8c30" d="M227.7 296.9l-.3.3-.2.6v-1l.4-.3.1.4zm-3 3.2s-.1.2.1.4l.8.2h-1.4l-.2-.5.7-.1zm-.5 1a1.1 1.1 0 01-.1.5c-.2.4-.3.8-.8.7a1 1 0 01-.8-.9 1 1 0 00-.2-.5v.5l.3.8.6.3h.4l.4-.2.2-.5v-.8zm-3.8-.2s.2.7 1 .7c.7 0 1-.2 1-.2v.3l-.3.1-.6.1-.6-.1-.3-.2-.2-.4v-.3zm-7.5-20.3v.3c-.1.3-.6.9-1.5.9-.8 0-1.2-.3-1.4-.6-.3-.3-.3-.7-.3-.7v.5l.3.5.9.4h.8l.8-.2.4-.4v-.7zm-1.4 1.8l-.5.2a3 3 0 00-.3.3v-1h.8v.6zm-3.8 2.8l.4.3c.4.2 2.5.4 2.5.4l-3.3-.1.2-.6h.2zm-.3 0l-.2.5c-.2.3-.6 1.2-1.3 1.1-.7-.1-.6-.6-.6-.7v-.2l-.1.5.2.3.2.2h.6l.4-.1.4-.4.2-.4.2-.5v-.3zm-1.8.1s0 .2-.6.2l-1.3-.2.3.3.4.1h1l.2-.4zm-1.7-23s.1.3-.2.5c-.3.2-1 .4-1.4.1-.4-.2-1.2-1-1.2-1l.4.6.5.5.8.2h.8l.3-.4.1-.2v-.4z"/>
+  <path fill="#aa8c30" d="M201.6 263.3v.4l-.1 1 .6-1.6-.2-.2-.3.4zm-4.3 1.2l.1.3c.2.5 2 2.1 2 2.1l-2.8-2.2.3-.5.4.3zm-.9.2l-.7.3c-.2 0-.8 0-.8-.4v-.5l-.2.5.1.3.4.2h.6l.5-.2.1-.1zm-1-1.1h-.6c-.5 0-1-.6-1-.6l.3.6.9.4.3-.4z"/>
+  <path fill="#9ca168" d="M319.9 256.1c-.3 3-3.3 4.7-4.9 5.8a8.6 8.6 0 00-2.3 2.6l-.6 1.8-.2 1.1v.4l.2 1.7-.1 3.4 2.1-1.5 1.6-.6h.4s-1.7 1.6-2.3 3.4c-.7 1.9-2 5.8-4.3 7-2.3 1.3-3.8.8-4.6 1.5l-.8.9-1 1.3-.8 1-.7.6-.5.3c0 .4 0 1-.2 1.4l-.5 1.9 1-.4h1.1l-.6 1c-.1.5.1 3.7-2.9 5.6-3 1.9-10.7 1.6-10.7 1.6l-1.4.6-1.4 1-1.2 1.4-.1.3s-1 1.2-1.7 1.6l-2.2 1.5 1.8.1 2.8 1.2s-1.8 0-3 .4c-1.1.5-6.5 3.5-9 3.4-2.7 0-6.4-3.8-6.4-3.8l-1.6-1.2-2.8-.6-3.5-.2v-.4l.1-.6 3 .1c1.7.2 2.2.8 3.6 1a5.8 5.8 0 002.8-.3l4.7-3.8 4.7-1.6 1.8.2.8.2.7.2-.8 1-1.2.7.6.5 3-.5 1 .3.2.1.4-1c.4-.5 2-1.8 2.8-2.3.7-.5.9-.5 1-.8.3-.2 1.3-2.7 1.3-2.7l.1-1.3 3.3-3.1 2.2-2.4 1-2.7-.1-.5s.7.8.6 2.5c-.1 1.7-.5 2.2-.5 2.2s2.2-1.5 3.4-2c1-.5 1.7-.4 2-.4a5.4 5.4 0 001.6-1.5c.7-1 .8-1.2.8-1.6l.1-2.2-.2-5.7 2-4.2 2.8-2.5.5-.3-.3 1v1s1.4-1.8 2.1-2.2l.5-.2.6-1.6c.2-1 .2-2.5.2-2.5v-2.3l-.4-1.8-1.3-3.5v-4.6l-1-1.3s.9-.1 2 1.5a10.8 10.8 0 011.5 4l2.7-8.1s.7 1 1.2 2.5l.7 2.7 1-2.2.1.8c.2.7 1.8 1.7 1.6 4.7zm-53.8 52s-.6-1.2-3.1-2.5a19 19 0 00-4.5-1.5v1l4 1.7 2 1.6 1.6-.3z"/>
+  <path fill="#717732" d="M284.3 300.5a19.1 19.1 0 013.5-2.8 7.8 7.8 0 012.6-.7c1.5-.3 1.7 0 5.2-2s4.3-4.1 5-4.7c.7-.5 1.9-.7 1.9-.7l-2.7 3.2c-1.3 1.4-2.7 2.3-4.7 3.6-2 1.3-6 1.4-6 1.4a6.1 6.1 0 00-3.3 1.7c-1 .8-1.6 1.7-1.6 1.7s-.2-.4 0-.7zm9.7-10.2c-3.3 3-4.3 5.8-4.3 5.8l4.3-4c1.5-1.4 3.6-2 4.5-3 1-.8 1-1.5 1.6-2l1-.9s-1.4-1-7.1 4.1zm-6.9 6.9s1.4-.6 2-1.9c.3-.9.1-1.1.7-2.2 0 0 3.4-3.2 4.6-4.6 2.1-2.5 1.2-4.6 1.2-4.6s.2 1-.7 2.2c-.9 1-5.2 4-5.8 5.8-.5 1.7-.2 1.7-.4 2.7-.6 2-1.6 2.6-1.6 2.6zm-2.2 8.4s-1.7-1.1-3.6-1c-3.9.3-7.2 2.6-9.7 2.7-2.6 0-3.6-1.2-5.6-2.6-2.1-1.4-7.3-1.2-7.3-1.2v.1l-.1.2s3.6 0 5.1.4c3 .9 4.5 4 7.9 3.7 4.3-.2 7.8-2.9 9.6-2.9 3 0 3.7.6 3.7.6zm-19.3-2s3 .6 5.4-1.1c2.3-1.7 5.1-4 6.6-4.1 1.6-.1 3.2.3 3.2.3s-2-1-3.5-.9a9 9 0 00-4.6 1.1c-1.5.9-2.2 2.5-3.8 3.5-1.5 1-3.3 1.3-3.3 1.3zm-.5 4.1c-.4 0-.9.3-1 .2-.2 0-1-1-2.4-1.6-1.3-.7-3.2-1.1-3.2-1.1s-.2 0 .2.2l3 1.1a7 7 0 012.2 1.8c0 .1.4.6 1.2.6.7 0 1-.5 1-.7-.1-.3-.6-.5-1-.5zm2.1-3s1.2.8 3.2.7c4.2 0 6.8-3 9.6-4s4.2-.2 4.2-.2v-.2a5.6 5.6 0 00-3.1-1c-4.6.1-9 3-10.9 3.8-1.8.8-3 1-3 1zM312 273c-1.5 1.5-3.6 6.2-4.5 7.4-1 1.3-2.1 1.7-2.6 2.2l-2.5 3.3c-.4.6-.5.4-.8.6-.3.3-.4.3 0 .2.5-.1.6-.4 1.3-1.2.7-.8.7-1.2 1.8-2.2 1.1-1 3.1-2.1 4.1-3.3 1-1.3 3-6 4.2-7.2 1.1-1.2 3.1-2 3.1-2s-1.6-.4-4.1 2.2zm-7.2 8.9s0-.9 1-2.1c1-1.2 1.4-1 2.2-2.9.8-1.8 1.2-3.6 1.9-5.5.6-2 1.8-3.8 1.8-3.8s-1.1 0-2.2 1.6a27.6 27.6 0 00-3.8 7c-1 2.6-1 5.7-1 5.7zm-1.4 1.8s.4-.3.5-2.6c0-2.3-.1-5.6.5-7.3.7-1.6 4.3-5.5 4.3-5.5s-1.5.3-3.6 2c-2 1.7-3 3.7-2.8 5.3 0 1.6 1 3.4 1 5l.1 3zm8.5-16.2l1.2-4c.4-.7.4-1.2 2.2-3.2 1-1.1 2-1.9 2.5-3.5.4-1.6.4-6.1.4-6.1s-.5.4-.8 1.2c-.4.8-.1 3.7-.8 5-.7 1.4-2.2 4.6-3 5.3 0 0-.1-2.3.1-4.6.3-2.3 1-3 1.4-4.5.4-1.5.2-5.4.2-5.4s-1.3 1.2-1.9 2.7c-.6 1.5-1 4-1 6s.5 3.6.6 4.7c0 1.1.1 1.7-.3 2.9-.5 1.2-.2.4-.5 1.6a27.9 27.9 0 01-.6 2h.3zm-2.8-17.2s1 1.3.9 2.9c-.2 1.5-.8 3.6-.2 5.2.6 1.6 1.5 1.7 1.8 2.7.2.9.2 2.7.2 2.7s.5-3.4.2-4.4c-.4-1-.5-.5-1-1.5s0-3.7-.4-5.3a3.8 3.8 0 00-1.5-2.3z"/>
+  <path fill="#9ca168" d="M245.4 307.9s.3-1 2.5-2 5.4-2.5 5.7-2.3c.4.2-.1 1.3-.1 1.3l-2.1.7-1.7 1-2 1.3h-2.3z"/>
+  <path fill="#9ca168" d="M251 302.1c-2.9.1-4.4.8-5 1-.1 0-.5.2-.9 0-.6-.2-1.2-1.1-1.2-1.1l-.6-.5-.1 2-4-3.6-.5 2.4-.5 1-4-3.8.1 3h-1l-3-2-.8.4 1 1.7-3.7.3-.8.6-.7.9v.3h1.4c.3-.2.5-.7.6-.5.1.2.2 1 .7 1 .5-.2 2.2-1.4 3.4-.9 1.3.7-1.8 1.6-1.4 2.5.3 1 2.5.6 3 .3.6-.3 2.3-2.4 3-1.6 1 1-2 2-1.5 3 .6 1.1 2.2.9 3 .4.8-.5 2.7-3.3 3.1-2.7.7 1-1.6 2.1-1 3 .6.8 1.9 0 2.7-.7.9-.6 1.2-2 2.4-2.7 1.1-.6 1-.3 1.4-.4.3 0 1.2-.9 1.2-.9l2.7-1.1h1.4l.7.4 1.4.2.1-1.2s-1.6-.7-2.7-.7zm-22 0l.5-1-.3-.5s-1-.5-1.9-1.4a5.4 5.4 0 00-1.6-1.3 35.6 35.6 0 01-1.7-1.1l-.6-2.3-.4-.6-1 .4-1.4-4.9-.3-.9h-.6l-1.1 3-1.3-1.9-.3-4-.8.9-1 1-1.8-3.7s-.2 0-.3.3c0 .3-.2 1.4 0 2.1a19 19 0 01-2.5-1.8c-1.8-1.6-2.3-2.4-2.3-2.4l-.8-2 .8-1.7.4-2-1.8.7-.3-4.6-.3-1.4-2.1 3-.8-1.2v-3l-.6-.1-.9 1.6s-.8-1.7-1.2-2c.1-.7.2-2.3-.2-3.6-.5-1.6-1-2.5-.9-3.8.2-1.4.8-1.5.7-2 0-.7-1 .3-.6-.5.3-.7 3-2.5 2.5-3.4-.6-1-3.3 1.4-2.7-.2.7-1.6 3.2-1.6 3.4-3.9 0-1.3-2.5 1-2.7.2-.2-.7 1.6-2.1 1.6-3 0-1 .3-1-.2-1.5s-2 1.9-2 1.9l-1.7-.6-.6 2.4-.5 2-2.1-1.2.5 2.5.5 2.4-2.1-.6 1.1 2.1 1.5 1.5 1 1.3.6.3 1 1 .2 1.2.5 1.5.1 1.5v2.3l-.1.8c-.4 0-1-.6-1.3-.2-.3.5 1.2 1.6 1 2-.3.2-2.6-.5-2.7.2-.1.7.2 1.7 1.5 2 1.3.3 4.2 1 3.7 1.6-.5.6-3.7-1.8-3.5 0a3 3 0 002 2.7c.9.3 4.1 0 4 .7-.3.7-2.7-.3-3 .8-.2 1.1 1.8 1.3 2.2 1.3.4 0 1.7 0 2.3.4l3.4 3.2c1 .9 3.1 2.3 3.7 2.7-.6 0-1.9-.2-2.1.3-.3.6 4.9 2.4 3.4 3-1.5.6-3-1.6-3.5-.3-.4 1.3 1 2.4 1.8 3 .8.4 5.3 0 4.5 1-1 1-4.2-.7-4.3.6 0 1.2 2.2 3.1 3.4 3 1.1 0 2.4-1.8 2.9-.8s-.9 1.4.2 1.6 1.9-1 3.2-.8c1.2.2 3.2 1 4.4 2a63.2 63.2 0 012.2 2.3z"/>
+  <path fill="#717732" d="M246.7 307.3c.8 0 .9.4 1 .4 0 0 1.4-1.1 2.7-1.8 1.2-.7 3-1 3-1h.2s-2.3.7-3.3 1.4l-2.5 1.7c0 .2-.6.5-1.4.5-.7 0-1-.4-1-.6 0-.3.5-.6 1.3-.6zm6.8-3.4s-.7 0-1-.3a3.5 3.5 0 00-2.1-.6 5 5 0 00-3.2 1.4s-.2.5-1.1 1c.3.1.9-.3 1.5-.8a5.9 5.9 0 013-1.1c.8-.1 1.3.3 1.7.6.4.3 1.2.2 1.2.2v-.4zm-40.4-16.5v-.6s-.6-.2-1.7-1c-1.3-.7-4.1-2.9-4.1-2.9l2.3 2.1a28 28 0 003.2 2.3h.3zm28.5 20.2l1.2-1.8c.8-1.2 1.4-1.6 1.5-1.7.1-.1-.3-.7-.5-1.2-.2-.4-.2-.9-.2-1 0 0 .3.8.8 1.2l1 .7s1-.1 1-.3c0-.2 0-.4-.2-.5-.2 0-.4.2-.9 0-1-.5-1.4-2-2-2-.6-.1-.2 1.6-.5 1.6-1 0-1.6-3.5-4-3.6-1.5-.1-1.8.2-1.9.6 0 .3 2 2.4 1.3 2.7-.7.3-2.8-3.3-4.4-3.3-1.6 0-1.7.5-1.6.9.1.3 1.8.6 1.4 1.7-.4 1.1-2-1.7-3.4-1.5-1.4.1-1.6.3-1.7.7 0 .4.5 1 .3 1.1-.2.2-1 .1-1.8.6-.7.5-1.7 1.9-1.7 1.9s.9-1.4 2.2-1.5h4.4l-.9-.7c-.5-.4-.9-1.3-.9-1.3l1.4 1.3 1.5 1s1.4 0 1.5.2c0 .2 0 .5-.6 1.1a23 23 0 01-1.4 1.3l1.6-1.2 1.2-1s1 .2 1.1.1c.1 0 0-.3-.6-1.3a46.5 46.5 0 01-1.3-2s.8.7 1.6 1.8c.9 1 .7 1.6 1 1.6l1.2.2c.3 0 .3.4-.3 1.3s-1 2-1 2l1.3-1.6c.6-.6 1-1.4 1.2-1.4h1.2l-.7-1.3c-.4-1-.5-2.2-.5-2.2s.4 1.2 1 2l1.1 1.6h1.3c0 .4 0 .6-.5 1.4l-.8 1.7zm-17.2-10l1.3.3s-1.3-.8-1.7-2c-.3-1 0-3.4-.6-3.4-.5 0-.9 1.8-1.4 1.4-.6-.3.2-3.5-.5-4.8-.6-1.4-2-2.3-2.4-1.8-.3.5-.2 3.4-1.1 2.8-1-.7 0-3.2-.2-4.3-.3-1.1-1-2-1.5-1.7-.5.3.2 2.4-.6 2.5-.9 0-.7-1.5-1-1.7-.4-.1-.6.3-.7 0-.2-.3-.1-1.3-.6-1.2-.4 0-.3 1-.2 1.4l.6 1.4c.1.3.8.7.7 1 0 .2-.4.4-.8.4h-1.4l1.4.3c.4 0 1.2-.1 1.4.2l1.1 1.7s.3-.7.4-1.9v-2.1s.3 1.3.3 2.1l-.3 2.4s.9.7.6 1h-2.3c-1 0-2.6-.3-2.6-.3s1.4.6 2.4.8c1 .2 3 .2 3 .2l1.4 1.6s.7-1.1.8-2.3V289l.4 2.2a9.8 9.8 0 01-.5 3 4 4 0 01-1.5.8c-1 .3-2.9.5-2.9.5s1.8.3 3 0c1.3-.3 1.4-.7 1.8-.5l.7.6 1 .8-.8.5-1.2.6 1.8-.6.9-.3.4.2-.1-1-.3-1.4s.5.6.6 1.3l.1 1.2s.1.2 1 .6zM199.5 269s.3-1.4.3-3c0-1.5-1-3.9-1.3-4.1a3.8 3.8 0 01-.2-.5l.7-1-1 .7-1-.4c-.4-.3-.6-.7-.6-.7l1 .5c.4.2.5.1.5.1l-.3-1.5-1.6-.8c-1-.6-2-1.5-2-1.5l2.2 1.2 1.3.3s.9-.2 1.3-.5l1.3-.9s-.8.5-1.4.6l-1.2.2-.3-1.9-.9-.9c-.7-1-1.2-2.2-1.2-2.2s.7.9 1.3 1.3c.6.5 1.1 1.2 1.1 1.2l1.3-.8 2.3-1.6-2.2 1-1.3.6v-1.2c.2-.4.6-1 .6-1.3-.1-.4-.4-.2-.5-.5l.4-2.1v1c.1.3 0 .7.4.7s2.6-2.1 2.8-2.5c.3-.4.7-1.5-.4-1-1.1.4-.9 1.3-1.8 1.3-.3 0-.6-1.2-1-1-.3.3-1 1-1.2 2-.2.8.2 2-.3 2.4-.5.4-1-1.4-1.8-1.2-1 .3-1.2 1.6-1 2 .1.6 2.1 3 1.5 3.2-.6.3-2.2-2-3-.4-1 1.5 2.6 3.1 3 3.5.5.4 0 .5.7 1.3.6.8 1.5 1 1.9 1.5.4.5 1.7 3 1.7 4.6v2.3zm9.4 13.6s-.9-1-.6-2.6c.3-1.7 1.5-4.6 1-5-.3-.4-1.6 1.8-1.9 1.3-.3-.5.7-3.4.2-4.6-.5-1.2-.6-2-1.6-1.9-1 .1-1.5 3.5-2 3-.5-.7.3-2.2 0-3-.4-.8-.5-1.1-1-1-.6.1-.8 1.7-1.2 1.7-.3 0-1-2-1.7-1.6-.7.2 1.8 3.5 1.8 3.5s.5-.4.7-1l.5-1.1s.2 1 0 1.5c-.2.4-.3 1.4-.3 1.4s-.7.2-1.7 0c-1-.1-1.9-.5-1.9-.5s.7.4 1.8.7l2.2.6.7 1 .9 1.1.6-1.6 1-2.8s-.2 2-.5 3l-.5 2.5s-1 0-2.1-.3l-3-.6 3 1 2.3.6 1 1.4.8-1.1c.5-.7.8-1.5.8-1.5s-.2 1.1-.5 1.8l-.6 1.1-1.4.2h-2a16 16 0 003.6.7s0 .4.5 1.1a3.7 3.7 0 001 1z"/>
+  <path fill="#fff" d="M251.6 312.7s-.5-.6-1.2-1c-.7-.3-1-.2-1-.2h-.3l.7-1.6 4.4-4.3.7-4.3h2.7v5.9l.8.3 5 3v1.3l-.8.3-.6.3-1.8.2-3.3-2.4-1.4-1.4-2.4 3.1-1.6.8z"/>
+  <path fill="#016848" d="M255 301.3v1c0 .6 0 4-.2 4.5-.1.5-2.5 1.4-4 2.6-1.3 1.2-1.3 2.1-1.3 2.1l-1.3.4c-.9.3-1.3.8-1.3.8s.5-2.2 2.8-4.1c2.2-2 3.3-2.2 3.5-2.5.2-.3 0-4.1 0-4.4.1-.3.4-.3.6-.3h1.3zm5.7 12.6l.6-.9.7-.6-1-.6c-1.3-.5-2-.4-2.8-1a8.1 8.1 0 01-1.7-1.7l-1.2 1 1.4 1.7c.6.6 2.1.8 2.8 1.2l1.2 1z"/>
+  <path fill="#cd202a" d="M257.2 301.3l1.5.1.2.5c0 .1 0 3.2-.2 4.2a6.4 6.4 0 01-1 2.5c-.4.3-2.4 2-3.3 3-1 .9-1.9 2.2-1.9 2.2l-.6-.8c-.3-.4-.6-.5-.6-.7a8.1 8.1 0 012.7-2.8c1.5-1 2.9-2.2 3.1-3.9.3-1.7.1-4.3.1-4.3z"/>
+  <path fill="#cd202a" d="M266 312s-.3-.3-1.4-.4c-1.2 0-1.2.2-1.2.2s-.7-.8-1.6-1.4c-1-.7-1.8-.6-2.8-1.3-1-.7-1.6-1.7-1.6-1.7l.8-1.6s.9 1.3 1.8 2c1 .7 3 1.3 3.7 2 .7.5 2.3 2.2 2.3 2.2z"/>
+  <path fill="#30c2dc" stroke="#0872a7" stroke-width=".4" d="M276 293s-3-1-2.7-2c.2-1 6.6-2.7 6.6-2.7l.1-1.7s-1 0-2.5.5a22.8 22.8 0 01-7 1.2c-1.6 0-2.5-.2-3-.3a1475 1475 0 00-23.2-1.4 14.2 14.2 0 01-1.2 0c-3-.3-4.9-4.8-4.9-4.8l-1.4.2s.4 2.3-.3 2.5c-1.5.4-11.1-4.8-11.1-4.8l-.6 2.1s6 3.2 5.8 4.3c-.2 1.2-2 1.1-2 1.1l.8 1.4c.3 0 9.7.5 9.9 3.3 0 1.2-2.3 1.9-2.3 1.9l.8 1v.4s5.2 0 6.7.9c1.4.8 2.2 2 4 3a55 55 0 0015.7.2c2.1-.6 3.4-3 6.9-4 3.5-1.1 4.6-1.2 4.6-1.2z"/>
+  <circle cx="227.6" cy="288.6" r="1.7" fill="#fff" stroke="#0872a7" stroke-width=".8"/>
+  <circle cx="237.2" cy="280.8" r="1.7" fill="#fff" stroke="#0872a7" stroke-width=".8"/>
+  <circle cx="277.2" cy="293.2" r="1.7" fill="#fff" stroke="#0872a7" stroke-width=".8"/>
+  <path fill="#f8c83c" d="M220.1 278.3c-.5 1.2 1.6 3.6 3.1 3.9 1.5.2 2.4-.1 2.6-.9.3-.7 0-1.5-.3-2-1-1.3-4.8-2.3-5.4-1z"/>
+  <path fill="#fff" d="M224.8 280.2c0-.8-1.3-1.5-2-1.5s-1.7 0-1.5.4c.1.4 2.2 1 2.2 1.2 0 .2-.6.5-.3.8.4.3.8.1 1.1-.1.4-.3.6-.4.5-.8z"/>
+  <path fill="#f8c83c" d="M238.2 294.6c.3 1.1-.6 1.7-1.7 2.2-1.1.5-3.4.2-4-.7-.4-1 1-2.4 2.3-2.7 1.4-.3 3 .2 3.4 1.2z"/>
+  <path fill="#fff" d="M235.8 295.3c.5-.1.5.6.9.6s.7-.7.6-1.1c-.1-.5-.8-1-1.5-1-.6 0-2.4 1.6-2.2 2 .2.5.6.4 1 .2.3-.1.8-.7 1.2-.7z"/>
+  <path fill="#f8c83c" d="M279.4 288.8c1 1.4 2.8.1 3.3-.4s2-1.4 1.4-2.2c-.6-1-1.7-.9-2.4-.8-.7 0-2 1-2.3 1.5-.3.5-.5 1.3 0 2z"/>
+  <path fill="#fff" d="M279.7 288s.1-1.5 1.5-1.6c.7 0 .8.2 1.4.6.5.3.8-.5.8-.5s0 1-1 1.1c-.9 0-.5-.4-1.5-.6-.8 0-1.2 1-1.2 1z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".4" d="M257.5 285.1l-.7-.4h-5l2.7 8 3.3 4.6 1.2.4 2.5-.1.5-1.3-1-7.6-3.5-3.6z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".4" d="M248.5 285.6l.1-.9 1.5-.1a4 4 0 011.7.1c.1 0 2 2.3 2.5 3.8.6 1.4 1.4 3.8 2.2 5.3a59 59 0 002.5 4h-3.2l-1.5-.5-4.6-7.2-1.2-4.5z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".4" d="M246.6 284.6l2 .1c.2.1 2.3 2 3.1 4.2.9 2.3.4 2.6 1.5 5 1 2.3 2.6 4 2.6 4s-3.2 0-5-.2c-1.7-.3-2.3-.3-2.7-.8a7.3 7.3 0 00-1.4-1h-1.8l.5-2.5-.5-5.5V285l1.7-.4zm18.7 1.5l-3-1.2-5.5-.3.4 2.8c.2 1.4 1.2 4.6 2 6.2 1 1.6 1.9 3.5 2.4 4 .4.4 3.6-.9 3.6-.9l2.1-.3-.3-2.3-.3-.7.5-6.4-.4-1h-1.5z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".4" d="M245.7 286.1c0 .7.7.8 1 .7.1 0 .8-.3.8-1.2s-.6-1.7-1.8-1.8c-1.1 0-2 1.4-2 2.4s1 1.5 1 1.9c0 0-1 .9-1 2.5s1.4 2.8 1.4 2.8-1.4 1.1-1.4 2.2 1 1.9 2 1.9 2.3-.7 2.3-1.5c0-.9-.8-1.4-1.4-1.4-.6 0-.9.4-.9.7m20.5-8.7c0 .7-.4.7-.8.7s-.9-.2-.9-1.1c0-.9 1.1-1.3 1.9-1.3.7 0 2 1 2 2.2s-1 2-1 2 .6.3.6 1.8-1 2.6-1 2.6 1.3.5 1.3 2.1-1 2.1-1.8 2.1-2.1-.5-2.1-1.5.7-1.5 1.2-1.5 1 .6 1 1.2"/>
+  <path fill="#953220" d="M247.6 295l.3.4c.2.3.3.8.6 1 .7.7 5.8.9 7.4.9 1.6 0 6.2.2 7.1-.3 1-.6 1-1.4 1.5-1.8l.7-.4-.6.6v1l.3.7s0 .3-.6.6c-.6.4-1 .5-1.8.6-.8 0-10.6 0-12.2-.2-1.6-.3-1.5-.3-2-.6a3.5 3.5 0 01-.7-.7l.3-.7-.3-1.2zm16-9.5l.8.4s-.7.2-1.3 1.8c-.6 1.5 0 2-.5 2.2H258l-.7-1.8 6.3-2.6z"/>
+  <path fill="#231f20" d="M277.1 284.9s-.7-.3-1-1c-.4-.5-.7-1.3-.4-1.4.3-.2.8.3.8.8s.6 1.6.6 1.6zm8.4-2.3l.7 1 1 .5s-1.2 0-1.6-.3a6.7 6.7 0 01-.8-1.2h.7z"/>
+  <path fill="#231f20" d="M288 283.3s-.7.4-1.3.2c-.6-.2-1-.6-.9-.8.3-.3.4-.2.7.2.4.3 1.5.4 1.5.4zm4.2-3.6s-.6.6-1 .6-1.2-.2-1.2-.4 1-.3 1.2-.3l1 .1zm-6.3-8.3s-1 .2-1.3.7c-.3.5-.2 1 .2 1s.5-.6.5-.7c0-.2.6-1 .6-1zm-4.2 2.3s-.7.4-.9.8c-.2.4-.3 1.2 0 1.3.5 0 .6-.7.7-1l.2-1.2z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".4" d="M274.2 278.7l-2.3 2.4s5.3 3 9.4 2.8c4 0 8.6-3.3 9-4 .2-.6 0-3.4-.5-4.3-.6-.9-3.4-3-4.4-3-1 .1-3 1.6-4.7 3.2-1.7 1.7-1.6 3.2-4 3l-2.5-.1z"/>
+  <path fill="#0c8489" d="M273.6 279.7s5.7.8 7.3-.6c1.6-1.5 3.4-4.3 4.5-5 1.2-.6 1.7-.6 1.7-.6l1.2 1 1.5 1.1.4 2.7v1.5l-1.7 1.4-3.3 1.5-3 1-2.7-.1-5.3-1.6-1.4-.9-.3-.3 1.1-1.1z"/>
+  <path fill="#04534e" d="M282.2 276.4c0-.5.4-.4.8-.4s.9 0 .9.5-.5 1.2-1 1.2c-.3 0-.7-.8-.7-1.3zm2.3 1.4c0-.4.3-.6.8-.6.6 0 1 .6 1 1s-.4.8-.9.8-.9-.7-.9-1.2zm-.8 3.4c0-.5.4-.6.9-.6s.8.2.8.7-.4 1-1 1c-.4 0-.7-.5-.7-1zm-3-1c0-.6.6-.8 1-.8.5 0 .9.5.9 1 0 .6-.4 1.1-.8 1.1-.5 0-1-.7-1-1.3zm-4.7.6a1.1 1.1 0 112.3 0 1.1 1.1 0 01-2.3 0z"/>
+  <path fill="#8cbebf" d="M284.5 277.8c0-.4.5-.6.8-.6.4 0 .6.3.6.7 0 .4-.2.7-.5.7-.4 0-.9-.4-.9-.8zm-.8 3.3c0-.5.5-.7 1-.7.4 0 .8.2.8.7s-.4.8-.9.8-.9-.4-.9-.8zm-3-1c0-.5.9-.7 1.2-.7.3 0 .3.3.3.8s-.3.9-.6.9c-.4 0-.8-.5-.8-1zm1.5-3.7c0-.5.3-.5.6-.5s.5.1.5.6c0 .4-.2.8-.5.8s-.6-.5-.6-1zm-6.2 4c0-.5.5-1 1.1-1 .7 0 1.4.2 1.4.7 0 .6-.8 1.5-1.5 1.5s-1-.7-1-1.2z"/>
+  <path fill="#231f20" d="M278.2 279.5s-.8.1-1.2.5c-.4.4-.5.9-.2 1 .2.1.5-.3.5-.5l.9-1zm3.7-.8s-.7.5-.8 1c0 .6 0 .8.2.8s.3-.6.3-1c-.1-.2.3-.8.3-.8z"/>
+  <path fill="#231f20" d="M282.5 279.5s-.4 0-.8.3c-.3.3-.6.7-.4.7.2 0 .6-.1.6-.3 0-.2.6-.7.6-.7zm.8-4.4l-.5.5c-.2.2-.5.7-.2.9.2 0 .4-.1.6-.5.2-.4.2-.9.2-.9zm2.9 1.8s-.7.1-1 .5c-.2.3-.4.6 0 .6s.3-.1.5-.4c0-.3.5-.7.5-.7zm-.5 3.4s-.1.5-.6.7c-.4.3-.5.5-.7.2-.2-.4 0-.5.3-.6a52.3 52.3 0 011-.3z"/>
+  <path fill="#04534e" d="M290.3 278s.3 1.6-1 2.3c-1.4.8-5.2 3.5-8.8 3.2-3.6-.4-7.7-2.4-7.7-2.4l-.5.3.9.4 2.8 1.1 3.1 1h2l1.7-.1 3.2-1.1 2.7-1.4 1.4-1 .3-.5v-1.6l-.1-.2z"/>
+  <path fill="#231f20" d="M219.9 257.8s.8.7.8 1.3c-.1.6-.3.8-.6.7-.2 0-.2-.7-.2-1v-1zm6.2 5.7s-.3 1-.7 1.1c-.4.1-.7-.3-.7-.5.1-.2.5 0 .7-.2l.6-.4zm-13.4.8s.3.6.8.7c.6.1.8-.3.7-.5h-.6l-1-.2zm2.4 4.7s.5.6 1.1.6a1 1 0 001.1-.6c0-.1-.8-.1-1 .1-.3.2-1.2-.1-1.2-.1zm4.2 3.6s1-.2 1.3-.5c.2-.3.4-.8.2-1-.2-.4-.4.3-.5.6l-1 .9z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".4" d="M226.1 269.7s.7-4.9-3.2-8.3c-4-3.4-6.5-2.6-7.9-1.3-1.3 1.2-2.5 5.4 1.7 9 4.2 3.6 9.3 2.5 9.3 2.5l.1-1.9z"/>
+  <path fill="#0c8489" d="M214 264.6s0-2.7 1.3-3.5a5.5 5.5 0 017.5 2.4c2 4 2 6 1.5 8h-2.2l-3.4-1.4-2.8-2.1-1.8-3.4z"/>
+  <path fill="#04534e" d="M225.6 270.4s-.7.8-2.1.7c-1.5 0-8-1.8-9.7-7.7v1.3l.1.4.5 1.2 1.4 2 1.7 1.5 2.2 1.2 1.6.4 2 .4h1.2l1-1.4z"/>
+  <path fill="#04534e" d="M222.1 268.7c0-.5.3-.5.7-.5.4 0 .8-.2.8.3s-.3 1.3-.7 1.3c-.5 0-.8-.6-.8-1zm.3-3.1c0-.4.3-.7.8-.7s.7.3.7.7c0 .3-.3.6-.7.6s-.8-.3-.8-.6zm-3 3.4c0-.3.4-.5.9-.5.4 0 .8.2.8.5s-.8.7-1.3.7-.4-.4-.4-.7zm-.3-3.7c0-.4.3-.3.7-.3.4 0 .9.1.9.6s-.5 1.1-1 1.1c-.3 0-.6-.9-.6-1.4zm-2.7.7c0-.4.2-1 .7-1s1 .6 1 1c0 .3-.4.7-.9.7s-.9-.4-.9-.7zm.5-3.3c0-.4.2-.4.7-.4s1 .2 1 .6c0 .4-.6 1-1.1 1-.6 0-.6-.8-.6-1.2zm3-.3c0-.4.3-.3.8-.3s.8.3.8.7c0 .4-.6.8-1 .8-.5 0-.6-.8-.6-1.2z"/>
+  <path fill="#8cbebf" d="M216.9 262.6c0-.3.2-.5.6-.5s.7 0 .7.5c0 .4-.3.7-.7.7-.3 0-.7-.3-.6-.7zm-.6 3.2c0-.4.2-.8.6-.8.4 0 .7 0 .7.5s-.3.8-.7.8c-.4 0-.6 0-.6-.5zm3.5-3.4c0-.3.3-.3.7-.3.4 0 .7 0 .7.4 0 .3-.4.5-.7.5-.4 0-.6-.3-.6-.6zm-.6 3.1c0 .4.3.8.7.8.4 0 .8-.4.8-.8s-.5-.8-.8-.8c-.5 0-.7.4-.7.8zm3.3-.5c0 .4.4.8.8.8s.8-.4.8-.8c0-.3-.4-.7-.8-.7s-.8.4-.8.7zm-3.2 4c0-.3.3-.7.7-.7.4 0 .7.2.7.6 0 .3-.6.8-1 .8-.3 0-.4-.4-.4-.7zm2.9-.5c0-.4.3-.5.7-.5s.7 0 .7.5-.4.8-.8.8c-.5 0-.7-.4-.7-.8z"/>
+  <path fill="#231f20" d="M223 263.6s.4.5.5 1l-.1.9c-.2 0-.4-.3-.5-.7v-1.3zm-2.6-2.7s.3.4.3.8 0 .8-.3.8c-.2 0-.2-.4-.2-.7l.2-1zm-3 .4s.3.4.3.8 0 .8-.2.8-.2-.4-.2-.7l.1-1z"/>
+  <path fill="#231f20" d="M216.4 261.8l.7.4c.4.3.5.6.4.7-.2.2-.5 0-.5-.2l-.6-.9zm2.3 3.1s.5 0 .9.3c.3.3.5.6.3.8-.1.2-.6-.2-.8-.4a6.7 6.7 0 01-.4-.7zm-2.8 0l.8.2c.3.2.3.6.2.7-.1 0-.3 0-.5-.3l-.5-.7zm6.7 2l.1 1c0 .5.1 1-.1 1s-.3-.6-.3-1l.3-1z"/>
+  <path fill="#231f20" d="M221.8 268l.7.3c.2.2.2.5 0 .5l-.3-.4-.4-.5zm-3 .1l.8.2c.2.2.2.8.2 1 0 0-.4 0-.5-.4a6.2 6.2 0 00-.4-.8z"/>
+  <path fill="#04534e" d="M217.7 259s-2.6.6-3 2.3c-.6 1.7-.6 3.6-.6 3.6l-.4-2.2.6-1.3.7-1.3 1.2-.7 1-.4h.5zm8.2 10s.2-.6-.5-2.6c-.8-2.1-2.4-4.8-2.4-4.8l1.2 1.4 1 1.6.5 1.4.4 1.3v1.3l-.2.5z"/>
+  <path fill="#231f20" d="M228.5 265.7s1 .6 1 1v.5c-.3 0-.7-.3-.8-.5l-.2-1zm-3.8 10.3s.4-.8 1-1c.6-.4 1-.3 1.1-.2.2.2-.3.7-.7.8l-1.4.4zm6.4 2.5s.7-.3 1-.8c.5-.4.5-.7.4-.9-.2-.1-.7.1-1 .5l-.4 1.2zm-.7-.6s.2-.8.5-1.1c.2-.3.5-.4.7-.3.3.2.1.5 0 .7l-1.2.7z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".4" d="M241.2 273s-4-5.8-10.3-6.1c-5-.3-6.5 4.2-6.3 5.5.1 1.4 2 4.3 8.7 4.7 6.6.5 7.7-3 8-3.3.2-.1-.1-.8-.1-.8z"/>
+  <path fill="#0c8489" d="M236.5 269s1.6 1.3 2.3 2.3.9 1.7.5 1.8c-.4.2-4-3.2-7-3.9-3-.7-5.5 0-6.1 1.4-.6 1.4-.4 3.5 1 4.4 1.3.9 7.7 2 7.7 2l3-.5 1.8-1 .4-1 .4-1.4.2-.5-1.5-1.7-2.7-1.9z"/>
+  <path fill="#04534e" d="M231.4 269.8c0 .4-.4.6-.8.6s-.7-.2-.7-.6c0-.4.3-.7.7-.7.4 0 .8.3.8.7zm-3.7 1.3c0-.3.4-.3.9-.3s.7.3.7.6c0 .4-.7 1-1 .8-.5-.3-.6-.7-.6-1zm4 2.2c0-.5.3-.9.8-.9s1 .4 1 .9-.7 1-1.2 1-.7-.5-.7-1z"/>
+  <path fill="#8cbebf" d="M228.7 274.2c0-.4.4-.5.8-.5.3 0 .8.4.8.8s-.5.7-.8.7c-.4 0-.8-.6-.8-1z"/>
+  <path fill="#04534e" d="M234 275.6c0-.3.2-.6.5-.6.4 0 .8.2.8.5s-.3.7-.7.7a.6.6 0 01-.6-.6zm2.4-1.8c0-.4.2-.4.6-.4.5 0 .9.3.9.7 0 .4-.5.6-1 .6-.4 0-.5-.5-.5-1z"/>
+  <path fill="#8cbebf" d="M231.1 269.5c0 .3-.1.5-.4.5-.4 0-.8-.2-.8-.5 0-.4.2-.5.5-.5s.7.1.7.5zm-1.9 1.5c0 .4-.5.6-.9.6s-.5-.2-.5-.6c0-.3.2-.4.6-.4.3 0 .8 0 .8.4zm.9 3.1c0 .3-.1.6-.5.6s-.9-.3-.9-.6.2-.5.5-.5c.4 0 .9.2.9.5zm3.1-1c0 .3-.6.7-1 .7s-.5-.6-.5-1c0-.3.3-.6.7-.6.3 0 .8.5.8.9zm4.7 1c0 .3-.6.3-1 .3-.2 0-.5-.4-.5-.8 0-.3 0-.6.9-.5.3 0 .6.6.6 1zm-2.8 1.3c0 .4-.2.7-.6.7a.6.6 0 01-.6-.6c0-.4.3-.5.6-.5.4 0 .6.1.6.5z"/>
+  <path fill="#231f20" d="M235.6 273.5s.6-.2 1-.1c.6 0 .6.2.6.3l-.6.2-1-.4zm-2.7 2.3l.9-.4c.4 0 .7 0 .6.3 0 .3-.1.3-.5.3l-1-.2zm-1.8-4s1.1.5 1.4 1c.2.4.3.5 0 .6-.2.2-.4-.1-.6-.3a43.8 43.8 0 01-.8-1.3z"/>
+  <path fill="#231f20" d="M230.8 273.3l1.3-.3c.4 0 .5 0 .5.2s0 .3-.4.3l-1.4-.3zm-2.7 0s1 .1 1.2.4c.2.2.2.4.1.6-.1.1-.5 0-.7-.1s-.6-.9-.6-.9z"/>
+  <path fill="#231f20" d="M228 274.6s.3-.5.7-.6c.3-.1.7 0 .8 0 0 .3-.3.5-.6.6h-1zm-.7-4l.9.2c.3.3.4.5.3.6h-.7c-.4-.3-.6-.8-.6-.8zm2-2.4s1 .3 1.2.7c.3.4.3.7.2.8l-.8-.4-.6-1.1z"/>
+  <path fill="#04534e" d="M240 275s-1.9 1.6-6.2 1.5c-4.3-.2-8.3-2-9.2-4l.4 1 1 1.2 3 1.6 3.4.7 2.7.2 2.5-.4 2-1 .3-.5.2-.3zm.6-2l-1.7-2a62.5 62.5 0 00-5-3.4l3.2 1.4 2.1 1.8 1.5 1.6v.5z"/>
+  <path fill="#231f20" d="M240.8 269s1.1.5 1.3.8l.4.5s-.3.7-.5.4l-.6-.7a7.7 7.7 0 01-.6-1zm3.3-1.7s1 .5 1.3 1c.4.5.3.9.2 1-.2 0-.9-.6-1-.8 0-.3-.5-1.2-.5-1.2z"/>
+  <path fill="#231f20" d="M245 267.1s1 .7 1.2 1c.2.4.5.8.2 1-.3 0-.8-.5-1-.8l-.3-1.2zm5.6 1.3s.7.3.8 1v1l-.6-.6v-.5l-.2-.9zm1.4.5s.6.6.7 1c0 .4.1.7-.2.7-.3.1-.5-.3-.5-.6v-1zm-9.8 12s.5.2.9 0c.5-.1.8-.5.7-.8 0-.2-.3-.5-.6-.1-.3.3-.2.5-.4.6l-.6.3zm5.4 1.5s.7-.1 1.2-.7c.5-.5.7-.9.4-1-.3-.1-.8 0-.9.4a4.5 4.5 0 01-.7 1.3zm4.4.1l1-.7c.4-.4.7-.6.4-1-.3-.2-.5 0-.7.1l-.1.6a7.1 7.1 0 01-.6 1z"/>
+  <path fill="#231f20" d="M253.4 282.5s.6-.7.7-1.1c.1-.4.2-.9 0-.8-.3 0-.6.4-.7.6a68.3 68.3 0 000 1.3z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".4" d="M239.9 275.3c0-2 2.8-6.5 6-6.4 1.3 0 4 .7 6 1.7 1.8.8 2.4 1.6 3.5 2 1.2.2 3 0 3 0l4-.5-3.2 4.6-1 1s-1 2-4 3c-2.7 1.1-7.5.3-9.7-.2-2.1-.5-4.7-2.6-4.6-5.2z"/>
+  <path fill="#04534e" d="M239.9 275.3h.2c0-.4.2-1 .5-1.7a9.8 9.8 0 012.1-3c1-.9 2-1.5 3.1-1.5a24.3 24.3 0 016 1.6 7 7 0 012 1.2 4.6 4.6 0 003.2 1l1.4-.1 3.5-.4-2.8 4.2-1.2 1a7.2 7.2 0 01-3.7 3c-1 .3-2.2.5-3.5.5-2.3 0-4.8-.5-6.1-.8a6.7 6.7 0 01-3-1.7 4.5 4.5 0 01-1.5-3.2v-.1h-.4a5 5 0 001.6 3.6 7.2 7.2 0 003.2 1.8c1.4.3 3.8.8 6.2.8a11 11 0 003.7-.6c2.9-1.1 3.9-3 3.9-3.1l-.2-.1.1.2 1.2-1 3.4-5-4.5.5H257a6.7 6.7 0 01-1.5-.1c-.6-.1-1-.4-1.5-.7-.5-.4-1-.8-2-1.2a23.2 23.2 0 00-3.3-1.2c-1.1-.3-2.1-.5-2.8-.5-1 0-1.7.3-2.5.8a9 9 0 00-2.6 2.8 6.7 6.7 0 00-1.1 3h.2z"/>
+  <path fill="#0c8489" d="M259.2 275.9c-.4.3-.7.3-1.1.3-.5 0-9.3-5.4-12-5.2-2.8.2-5.4 1.4-5.5 4.2 0 2.9.6 2.9 1.2 3.7s6 2 6 2h3.2l2.7-.4 2.3-1.3 1.3-1 .9-1 1-1.3z"/>
+  <path fill="#04534e" d="M245.2 274.5c0 .5-.2 1-.8 1-.5 0-.9-.3-.9-.9 0-.5.3-.7.8-.7s.9 0 .9.6zm1-2.5c0-.4.4-.6.9-.6s.9.1.9.6-.4.8-1 .8-.9-.3-.9-.8zm5.2 1.5c0-.4.4-.8.8-.8s.8.4.8.8-.4.7-.8.7a.7.7 0 01-.8-.7zm1 3.2c0-.5.4-1 1-1 .4 0 .8.3.8.8s-.2 1-.6 1c-.5 0-1.1-.3-1.1-.8zm-2.5 2c0-.4.4-.7.9-.7s.8.3.8.8c0 .4-.3.7-.8.7-.4 0-.9-.3-.9-.7zm-4.9-.8c0-.4.4-.7.8-.7a.8.8 0 110 1.5.8.8 0 01-.8-.8z"/>
+  <path fill="#8cbebf" d="M245.2 274.4c0 .4-.4.8-.9.8a.8.8 0 01-.8-.8c0-.5.4-.6.8-.6.5 0 .9.1.9.5zm2.5-2.5c0 .4-.1.7-.5.7-.5 0-1-.3-1-.8 0-.4.3-.7.7-.7.5 0 .8.3.8.8zm5.2 1.3c0 .4-.4.7-.8.7s-.7-.3-.7-.7c0-.3.3-.6.7-.6s.8.3.8.6z"/>
+  <path fill="#04534e" d="M250.1 275.4c0 .6-.2 1-.7 1s-1-.3-1-.9c0-.5.3-.7.9-.7s.8 0 .8.6z"/>
+  <path fill="#8cbebf" d="M246.4 277.8c0 .4-.3.7-.8.7a.8.8 0 01-.8-.7c0-.5.5-.7 1-.7.4 0 .6.2.6.6zm3.6-2.5a.8.8 0 01-.8.8.8.8 0 01-.8-.8.8.8 0 01.8-.8.8.8 0 01.8.8zm4.2 1c0 .6-.3 1-.8 1a.9.9 0 01-1-1c0-.4.2-.6.7-.6s1 .2 1 .7zm-2.7 2.3c0 .4-.3.7-.8.7s-.9-.3-.9-.7c0-.5.4-.7.9-.7.4 0 .8.3.8.7z"/>
+  <path fill="#231f20" d="M251.8 276s1.3-.2 1.6 0c.2.3.2.6 0 .8l-.7-.1-.9-.7zm-1.3-4.3s1 .3 1.4.7c.4.4.4.8.3.9 0 0-.5.2-.7-.2l-1-1.4zm-3 2s1.2.7 1.4 1c.3.4.4.7.2.9 0 .1-.7 0-.8-.3a78 78 0 00-.8-1.6z"/>
+  <path fill="#231f20" d="M247 274.6s1.3.2 1.6.5c.4.2.6.2.6.4s-.2.4-.4.4l-1-.4c0-.2-.8-.8-.8-.8zm-1.6-3.8s1.4.2 1.7.4c.3.2.3.8 0 1-.3.2-.6-.2-.8-.4 0-.3-.9-1-.9-1zm-2.9 2s1.3.6 1.7 1.2c.2.3.4.5 0 .6-.4.2-.8-.5-.8-.6a7 7 0 00-.9-1.2z"/>
+  <path fill="#231f20" d="M242.3 274.4l1.1-.1c.4 0 1-.2 1 .1 0 .3-.5.4-.8.3l-1.3-.3zm6.8 4.5s1-.6 1.3-.5c.5.1.6 0 .6.3s-.5.2-.6.2a48.8 48.8 0 01-1.2 0zm-4.8-.7s.4-.5.7-.6l.6.1c0 .2-.3.5-.5.5h-.8z"/>
+  <path fill="#04534e" d="M258 277.3s-1.2 1.6-3 2.4c-2 .8-3.3 1-5.9.9a12 12 0 01-5.6-1.5 9 9 0 01-3.3-2.7c-.3-.6.3 1 .3 1l1.5 2 2 .8 2.7.7 2.6.3h2l2.4-.4 1.6-.5 1-.7.8-.6 1-1.7zm-2.4-4.7s-.7.2-2.3-.7c-1.6-1-3.5-2.3-7-2.3-3.6 0-4.8 2.4-5 2.6l1.6-2.1 1.6-1 1.3-.1h1.2l1.6.5 1.4.4 1.7.6 1.5.8 1.7.9.7.4zm4.8 1h-2.7c-.6.1-.6.2-.7.4a3.1 3.1 0 01-.2.4l-.7-1.4 2.9-.4 1.6.6-.2.5z"/>
+  <path fill="#0c8489" stroke="#04534e" stroke-width=".4" d="M256.6 288.3c.1.4.4.8.8.8h1.4l2.8-.2 1-1.1.6-2.6.8-1 2.6-1.5 2.3-.6 1.5-.2 2-.7 1.5-.7.6-1 .7-1.5-.7-2-1.6-2-2.6-1.1H268l-2.5.9-4.3 1s-2.5 1-3.5 3c-1 1.8-1 2.3-1.1 4.8-.2 2.5 0 5.7 0 5.7z"/>
+  <path fill="#8cbebf" d="M257.7 287.4c.9 0 .2-1.4 1.2-3 1-1.7 2-3.7 2.4-3.7.3 0 .3.3.7.2.3-.1 1-.7 1-.8 0-.2 0-1 .7-1.7.7-.6 1.8-1.4 2.2-1.5.5-.1.7-.2.8 0 .1.2-.2.5.1.7.3 0 1 0 1.3-.5.2-.5.1-.7.1-.7s.5-.5 1.5-.3 1 .2 1.1.5c.1.4-.4.4-.3.7.1.3 0 .2 0 .4.1.2.3.8 1 .8.6 0 .8-.4.8-.4l.2-.3s.2-.4 0-.6c-.3-.2-.2-.4 0-.2.3 0 1.2 1.4 1.6.9.3-.6.3-1.4.2-1.6l-1.6-2.2-2.4-.9-3.2.3-3.2 1.8-2.9 1.5s-.1 2.4-.6 2c-.6-.5-1.3-1.6-1.5-1.3l-1 3c-.3.9-1.2 3.5-1 4.5 0 1 .5 2.4.8 2.4z"/>
+  <path fill="#8cbebf" d="M260.6 283.6l-.6.3a.8.8 0 00-.2.8c.1.3.6.6.6.6h.4l.7-.2s.3-.3.3-.7c0-.4-.2-.5-.3-.5l-.9-.3zm5-4.1c-.5-.2-.7.1-.7.2v.5s0 .6.3.7c.2.1.8.3 1 .1.2-.2.4-.3.4-.7 0-.4-.6-.6-.6-.6l-.4-.2zm4 1c0-.2-.4-.3-.7-.3-.3 0-.6.4-.5.9.1.5.6.5 1 .4.4 0 .3-.6.3-.7l-.1-.4zm-11.6.7c0 .3.5.7 1 .7a1 1 0 001-.8c0-.3-.3.3-.7.4-.4 0-.7.2-.9 0l-.3-.3z"/>
+  <path fill="#04534e" d="M261.8 284.4s0 .5-.3.8l-.8.2c-.2 0-.5 0-.6-.2l-.3-.6s.4.7 1 .5c.7-.1 1-.7 1-.7zm10.7-6.6s0 .5-.4.7c-.4.2-.6.3-.8.2-.2 0-.5 0-.6-.3-.5-.7-.2-1.2-.2-1.2s.3 1.3 1 1.2c.7-.1 1-.6 1-.6zM263 280s-.4 1-1 1c-.7 0-.6-.1-.6-.3 0 0 .3.2.6 0 .3 0 1-.6 1-.6zm1.8-.1s0 .7.2 1c.2.2.5.3.8.3s.5 0 .7-.3c.2-.3 0-.6 0-.6l-.1.3a.7.7 0 01-.6.3c-.2 0-.6 0-.7-.3l-.3-.7zm3.4-3.5s.2.5-.2 1c-.4.4-1.2.2-1.2.2s.6.1 1-.2c.3-.4.4-1 .4-1z"/>
+  <path fill="#04534e" d="M257.4 288.9s4.2 0 4.5-.7c.4-.5-.3-2.8 2.2-4.6 2.5-1.8 4.5-1.8 5.9-1.9 1.3 0 4.2-1 4.8-3.6.3-1.6-1.9-1.7-2.7-3.2-.8-1.5-2.9-.9-3-.9 0 0-2.4 0-3.5 1-.6.7-.5 1.5-.9 1.8-.2.4-3 0-3.3.5-.3.4 0 1.4-.2 1.6-.2.2-.8-.6-.8-.6l.2-2.3 3.5-2 4-2.3h2.8l2.8 1.5 1.4 1.6s.3.6.4 1.8a4.3 4.3 0 01-.1 1.6 6 6 0 01-5.4 4c-2.4.1-4.6 1.2-5.6 2-1.1.8-1.7 4.3-1.7 4.7 0 .5-5.2.2-5.2.2l-.1-.2z"/>
+  <path fill="#231f20" d="M259.1 280.7c-.2.2-.5.1-.6-.1-.2-.7.3-1.7.3-1.7v1.2c.1.2.3.2.4.3v.3zm2.7-.6c-.2 0-.2-.7 0-1l1.3-1.1-.5 1.2c-.1.3-.5 1-.8 1zm-1 4.3c-.2 0-.3-.3-.3-.8s.8-1.3.8-1.3l-.2 1v.7c0 .3-.2.4-.3.4z"/>
+  <path fill="#231f20" d="M262.7 283.2l-.8.7c-.4.2-.9.6-1.1.5-.3 0 .1-.6.3-.7l1.6-.5zm3.6-5.1l-.7 1c-.2.5-.3 1 0 1 .2.2.5-.6.5-.8l.2-1.2z"/>
+  <path fill="#231f20" d="M267.6 279.9s-.3-.3-.9-.5c-.6-.1-.9 0-1 .2 0 .2-.4.4-.2.6l.7-.3c.1 0 .4-.2.7-.1h.8zm-.7-3.5c.2.1.5-.2.8-.5l.5-1-.8.5c-.3.2-.6.8-.5 1zm5.5-.2l-1 .7c-.2.3-.5.6-.3.8.3.2.5-.2.7-.4l.6-1zm-1.6 3.7s-.2.5-.7.8c-.4.3-1 .4-1 .3-.2-.2 0-.5.2-.6l.7-.2c.4 0 .8-.3.8-.3z"/>
+  <ellipse cx="272.7" cy="229.2" fill="url(#b)" rx="2.3" ry="3.4" transform="rotate(8.7)"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M236.3 261.5l-1.4 3.5 1.1-.2.7-3z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M237 260c-.6 0-1 .4-1 1-.1.4.2.9.7 1 .5 0 1-.3 1-.9 0-.5-.3-1-.8-1zm58.8 8.6l-3.4 3.2 1.4.3 2.3-3z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M297.3 267.3c-.6-.3-1.3 0-1.7.5a1 1 0 00.4 1.5c.5.3 1.3 0 1.6-.5a1 1 0 00-.4-1.5zm-87.1-16.9l1.8 3.9.8-1-2-3z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M209.5 248.7a1.1 1.1 0 00-.1 1.5c.4.5 1 .6 1.5.2a1.1 1.1 0 00.1-1.5 1 1 0 00-1.5-.2z"/>
+  <path fill="#aa8c30" d="M237.3 260.2s.2.2 0 0c-.4 0-1.2.3-1.2.9 0 .5.4.8.8.8h-.6l-.2-.4-.2-.4.1-.5.3-.4.4-.1h.3l.3.1z"/>
+  <path fill="#aa8c30" d="M236.5 262.5s-.2 0-.4.3l-.6.8.7-1.9.5.2-.2.6zm61 5.1s.3.3 0 0-1.4-.2-1.7.4c-.2.6 0 1.1.5 1.3.5.2-.2 0-.2 0l-.5-.4-.1-.4v-.6l.4-.4.6-.3h.5l.3.2.3.2z"/>
+  <path fill="#aa8c30" d="M295.5 269.8h-.6l-1.2.7 1.9-1.7.4.5-.5.5zm-85.6-21.3s.3-.1 0 0c-.3.3-.6 1.2-.2 1.6a1 1 0 001.3 0c.4-.3 0 .2 0 .2l-.6.3h-.4l-.5-.2-.3-.5v-.6l.1-.5.3-.2.3-.1z"/>
+  <path fill="#aa8c30" d="M211.2 251s-.2.2-.1.6l.2 1.2-1-2.2.5-.2.4.6z"/>
+  <ellipse cx="327.1" cy="-73.3" fill="url(#c)" rx="3.7" ry="2.5" transform="rotate(62.9)"/>
+  <path fill="#e92736" d="M210 257s.8.2 1.2 0c.5-.3.5-.6.6-.7l.2-.7a3 3 0 00-.8-1.2h-.8c-.1-.2 0-.4-.2-.5-.2 0-1.3 1.3-1.1 1.5.2.2.3-.1.4 0v1l.6.6z"/>
+  <path fill="#e92736" d="M211.2 254.5c0 .2.5.8.7.8h.9c.1 0 .7-.5.7-.8l-.1-.6c-.1-.2 0-.8-.3-.9-.2 0-.2 0-.3-.2-.2 0 0-.3-.2-.5-.1-.3-2 .8-1.8 1 .1.2.3 0 .4.2v1z"/>
+  <path fill="#e92736" d="M215.4 254l-.1-1.4c-.2-.1-.5-.1-.6-.3 0-.1.3-.2.3-.4s-2 .1-2 .3c.2.3.5.1.5.3l-.4.5.2.9c.1.1 0 .3.2.4l.5.1h1.1c.1-.1.2 0 .3-.4zm17.5 10.3s.3.6.7.7h.7c.1 0 .5-.1.6-.3l.3-1.1-.5-.6c0-.2.3-.2.2-.4s-1.6 0-1.6.2.2.1.2.3l-.6.5v.7z"/>
+  <path fill="#e92736" d="M235 263.6v1l.5.5h.9a1 1 0 00.3-.5c.1-.2.5-.5.4-.6l-.1-.4c0-.1.3-.2.3-.4s-1.7-.8-1.7-.6c-.1.3.2.2.1.4 0 0-.6.4-.6.6z"/>
+  <path fill="#e92736" d="M237.8 266c.2-.1.8-.7.8-1l-.1-.4.4-.1c0-.1-1.3-1.3-1.3-1-.1.2.2.3 0 .4h-.4l-.5.7c0 .1-.2.1-.1.3l.1.4.7.7h.4zm52.9 4.4s0 .6.3 1l.6.3h.6c.2 0 .7-.7.7-.9v-.7c0-.1.2 0 .2-.2s-1.3-.9-1.4-.6v.3l-.7.2-.3.6z"/>
+  <path fill="#e92736" d="M292.7 270.8l-.5.6v.7l.9.4a1 1 0 00.4-.2c.2 0 .7-.1.7-.3v-.3c.1-.1.3 0 .5-.2.1-.1-1-1.3-1.1-1.2-.2.2 0 .3 0 .3l-.9.2z"/>
+  <path fill="#e92736" d="M293.2 273.8h1l.3-.4.3.1c.2 0 0-1.5-.1-1.4-.2 0-.1.3-.2.3-.2 0-.3-.2-.4-.3l-.7.1c-.2.1-.3 0-.4.2l-.1.3v.9l.3.2z"/>
+  <path fill="#f7e204" d="M211.3 255.3c.2.2 0 .8-.2 1-.1.2-1 0-1-.2v-.7c.1-.1.4-.5.7-.5.2 0 .5.3.5.4zm.3-1.2c-.1.3 0 .5.2.6 0 .2.7.3 1 .2 0 0 .4-1.1.2-1.3 0-.1-.4-.2-.6-.1a3 3 0 00-.8.6zm2.2-1v.6s.5.4.8.4c.2 0 .3-.8.3-1s0-.1-.2-.2l-1 .2zm20.9 11c0 .3-.6.5-.8.5-.2 0-.5-.7-.4-.8 0-.1.2-.3.4-.3h.7v.6zm.8-.5c-.2 0-.2.3-.2.5 0 .1.2.6.4.7.2 0 1-.4 1-.6l-.3-.4-.9-.2zm2 .8c-.2 0-.4.3-.4.4 0 0 0 .5.2.7.2.1.7-.2.8-.3v-.3l-.6-.5zm54.8 6.6c-.2.1-.7 0-.8 0-.2 0-.2-.9 0-.9 0 0 .3-.2.4-.1.2 0 .5.2.5.4v.6zm.8 0l-.5.2v.8c.1.1 1 .2 1 0 .2 0 .1-.4.1-.4l-.6-.6zm.9 1.6h-.5l-.3.6c0 .2.5.3.6.3.1 0 .2 0 .3-.2l-.1-.7z"/>
+  <ellipse cx="398.3" cy="-31.4" fill="url(#d)" rx="1.8" ry="3.6" transform="rotate(47.9)"/>
+  <path fill="#a8ac71" d="M228.6 223.4s-3 .3-5.2 0c-2-.4-1.6-5.9-1.7-6 0-.2-1.3-1.5-1-2.7.2-1.2 4-4.4 4.6-4.6.4-.1 1.2.2 1.2.2s1-1 1.3-1c.3 0 .7.6.6.8-.2.3-1.5 1-1.6 1.7-.1.6 0 1.2-.4 1.8-.4.6-1.1 1.4-1.2 1.9-.1.5-.3 1 0 1.1.4.2 1.7 0 2.8-.5 1.1-.5 1.6-1.1 1.7-1 .2 0-.6 1.3-1.8 1.8-1.3.5-2 1.1-2.7 1 0 0-.6 1.6 1.4 1.7 2.1.1 3.3-.4 3.3-.4l-1.3 4.2zm-12 12.8s1.7.6 1.7 2.4c0 1.8-1.8 3.3-1.7 6.5 0 3.2.5 3.2 4.7 6.6.1 0 1 1 1.2 2 .3 1 1 7 5 7s4.6-2.5 4.6-2.5l-1.7-2.5s-1.4.4-2.2.2a2.8 2.8 0 01-1.8-1.7c-.5-1-.6-3.3-1.3-4.3-1.7-2.5-4.7-3-4.7-5.6 0-2.7 1.9-3 1.3-6.1s-4.3-4.7-4.3-4.7l-1.5-.6-.5 3.1 1.3.2z"/>
+  <path fill="#f1a720" d="M227.8 214.1c1.3-.3.5-3.8.5-3.8l-.9.7s.6.8.6 1.6-.2 1.5-.2 1.5z"/>
+  <path fill="#a8ac71" d="M230.2 249.2l-.7-.6c-.4-.3-2.6-2-2.2-7 .4-5.8 8.7-8.8 9.2-11.1.7-2.6 2.6-3.7-4.1-8.9l-1.6 1.9 2.8 2s.6-.3.6.5c0 .7-.7 1.4-1 2 0 .5-4.2 3.4-4.5 3.7l-2.4 2s-1.1 1-2.1 3.2-.5 5-.5 5 0 6.2 6.5 7.3z"/>
+  <path fill="#78732e" d="M226.2 252.4l.4 2.2-1.3.5h-.6l-.4.1-1 1h-.3l-.2-.7a16.7 16.7 0 00-.1-1.1l1.2.5h.5l.3-.1.5-1.2 1-1.2zm-4 .4l-.5-.8-.8-.7 1-.5h1l-.2 1.2-.4.8zm2.3-3.5s.6.3.8.8l.5 1-1.6-.1-1.1-.4.7-1 .7-.3zm-.6 9.6s-.3-.2-.5-.7l-.3-1.3 1-.2 1.2.5h.3l-.3.6-1.1 1h-.3zm4-3.3s-.8-.3-1-.7c-.1-.5-.2-.4-.2-.4l-.3 1.2-.4 1.2.1.2 1-.3.6-.7.3-.5zm-3.7 3.8l1 .6c.7.4 1 .4 1 .4l.6-.5.4-1 .1-.1-2.5.2-.6.4zm3.5-1l2.1-1.2.1-1.1-.4-.3h-1.2l-.3 1.4-.3 1.3zm-1.5 2s1.5.7 4-.2c1.2-.5 1.4-1 1.4-1l-1-.4-1 .8-3.4.8zm-2-16.2l-.3-1-.1-1 .7.4 1.1.8-.7.6-.7.2zm1.8 3l-.7-.8a9.7 9.7 0 01-.5-1l.8.2.9.5-.4 1.1h-.1z"/>
+  <path fill="#c6c7a6" d="M221.3 213.7c-.2.5-.4 1.4.3 1.6.4 0 2 0 3.7-2 .8-1 .8-2 .8-2l.4-1s-.7-.5-1.8.2a33 33 0 00-3.4 3.2z"/>
+  <circle cx="226" cy="210.9" r=".3" fill="#1c242f"/>
+  <path fill="#a8ac71" d="M223.8 211.2c-.8.6-1.4 1.3-1.4 1.3s1.1-.3 2-1.1a2.8 2.8 0 012.2-.6c.2 0 .1-.3 0-.4-.3-.2-1.1-.3-1.3-.2 0 0-.8.4-1.5 1z"/>
+  <path fill="#78732e" d="M227.3 243.6v-1.8l-.7.6-.7 1 1 .3.4-.1zm-3.6-2v-1.9c0-.9.4-2.5.4-2.5l.4 1.1 1.3 2 .4.3-1 .7-1.2.4-.3-.1zm3.6-.6l.2-.8.4-1-1.1 1-.5.4.6.5h.5m-3-4.7s.2-.6.7-1.3l1.1-1.5.5 2 .3 1.6v.3l-.5.2c-.1 0-1.3 0-1.5-.3l-.6-1zm3.8 2.2l.7-.7.8-.8-2.6.5.4.8.7.2zm-1.5-5.3l.9-.8c.7-.7 1-.6 1-.6l.3 2.8-1.3-.4-1-1z"/>
+  <path fill="#78732e" d="M229.8 237l1.6-1.6-2.6-.8.5 1.8zm1.1-4.2l.2-2.7-1.2.8-1 .8.3.4 1 .6h.7zm2.3-2.6v-2l-.9.9a4.5 4.5 0 00-.6.6l.7.4.8.1zm1 2.8l1.2-1a5.2 5.2 0 001.2-1.3l-3.3-.3.1 1.4.8 1.2zm-7.8-11v1.5h2.7l-.7-1-.8-.5-.8-.8zm5.4 13l1.2-1 1-.8-2.7-.3.1 1.8.4.3zm5-4.8s.3-1 .3-2a5.2 5.2 0 00-.2-1.5l-2 1.3.3 1 .8.9.8.3z"/>
+  <path fill="#78732e" d="M233.4 227.8s.6-.7.7-1.1v-.3h1.6l.9.1.1.1-.7.8-1 .6-1.2.1-.4-.3zm3.2-1.5l-1-1.7-.6-.8-.8 2.2v.3h2.4z"/>
+  <path fill="#fff" d="M217.3 241.8l-.3.6s1-.6 1.9-.5c.8 0 1.7 1 1.7 1l.2-.7s-1.1-1-1.8-1.1c-.7 0-1.7.7-1.7.7zm.5-4.7l.3.3c0 .1 0-.7 1.1-1.2 1-.4 1.7 0 1.7 0s-.2-.7-.7-.8c-.5-.1-1 0-1.5.4-.6.4-.9 1.3-.9 1.3zm3.6 3.5s-.5-1-1.4-1.3c-.8-.2-1.9.5-1.9.5l-.2.5s1.2-.6 2-.3c.9.4 1.3 1.4 1.3 1.4l.2-.8zm-4-4l.3.3s-.2-1 .4-1.7l.9-.8-.5-.2s-.7.5-1 1c-.2.5-.2 1.1-.1 1.3zm-.5-2c.3-.5 1-.7 1-.7l-.3-.2h-.3s-.4.2-.7.8c-.3.7-.3 1.6-.3 1.6l.5.2s-.1-1 .1-1.6zm6.3-15.2c.7-.4 1.2-.3 1.2-.3s-1 1-.5 2.3c-.6 1-.8 1.9-.8 1.9h.6l.3-1.5a5 5 0 001.5 1.7h.8s0-1 .5-2a4 4 0 001.6 1.2v-.3s-.9-.5-1.4-1.2v-.1c.6-1 1.4-1.3 1.4-1.3l.6.4.1-.1-.4-.6h-.5l-1.4 1.4a7.3 7.3 0 01-.6-1.3h-.4s-.8 0-1.6 1.3c-.1-1 1-2 1-2l-.1-.3-2 .4c-.7.3-1.2 1-1.2 1v.6s.7-.8 1.3-1.2zm1.2 1.7c.5-.7 1.5-1.2 1.5-1.2s0 .6.7 1.3c-.4.8-.6 1.9-.6 1.9s-.9-.6-1.6-1.6a1.3 1.3 0 01-.1-.3 2 2 0 010-.1zm-6 16.9v.6s.6-.7 1.5-.7c1 0 1.8.7 1.8.7v-.9c-.2 0-1-.5-1.7-.5-.8 0-1.7.8-1.7.8zm17-9a8.1 8.1 0 01-.3-.8l.4-.2a10 10 0 001.4-1.3l-.3-.4h-1.3l-1.1-.1.4-1.4.4-1.1-.4-.4s.1.4-.7.5a7 7 0 01-2.2-.7v.4l2 .5 1-.2a6.9 6.9 0 00-.5 1l-.2.8.2.1-.1.7 1.1.1 1.4.1s-.7.8-1.4 1.1a1.8 1.8 0 01-.3.1l-.8-1.2v.4l.5 1-1.2-.2-.3.3v2l-1.4-.4-.3.2-.3.2s-.3 1.2-.3 2.6c-1.2-.3-1.9-1-1.9-1l-.3.2s-.2 1.2.1 2.6a4.7 4.7 0 01-2-1.2l-.4.4.4 3.5.1.3a4 4 0 01-.6 0c-1 0-1.8-1.1-1.8-1.1l-.3.8s.4 2.2 1.6 3.2l.3.2c-1 .8-2.3 1-2.3 1l.1.6a35.8 35.8 0 001.7 1.3c-.6.5-1.3.7-1.3.7l.2.4 1.4-1a7 7 0 001.5.4v-.4l-1.2-.2v-.1c.5-.4 1.2-1.5 1.2-1.5v-.8s-.4 0-.9-.4c1.5-1 1.5-1.5 1.5-1.5l.3-.5s-.5-.2-.9-1a9 9 0 002.4-.5l.2-.2s-.6-.9-.9-2l2.4.5.4-.4s-.3-.9-.4-2l2.5.3.3-.3s-.8-1.5-.8-2.3v-.1h3.2l.2-.4s-1-.7-1.4-1.2zm-8.4 12.4s-.3.8-1 1.6l-.3.2a3.7 3.7 0 01-.4-.2c-.8-.5-1-1-1-1l2-1.3.7.7zm.7-2.5l-1.5 1.5a3.3 3.3 0 01-.3-.4c-.7-.9-1.6-1.6-1.5-3 0 0 .5 1 1.7.9l.8-.2c.3.8.8 1.2.8 1.2zm1.6-2l-2 .5a4.2 4.2 0 01-.2-.3c-.4-1.3-.4-3.2-.4-3.2s.9.6 2 .9l.6 2zm-.3-2.4c-.2-1.1 0-2.3 0-2.3s.7.6 1.9.8c0 1.1.2 1.7.2 1.7l-2.1-.2zm4.6-1.8s-.7.3-2.2.1a18.4 18.4 0 010-2.8c.2 0 1 .4 1.8.5v.1a8 8 0 00.4 2.1zm0-2.5h-.2v-2.1s.8.2 1.4.1c.1.4 0 .5.4 1 .3.6.9 1 .9 1s-1.9.2-2.6 0zm-6 15l-.2-.5s-.7.5-1 1.1a1.3 1.3 0 01-.2 0l-1.6-.7.2.3 1.5.6-.3 1.2.2.3s0-.8.4-1.4h1l-.2.7a51.4 51.4 0 00-.3 1.2l.3.2h1.7l-.3-.3h-.6a3.2 3.2 0 00-.9 0l.3-1 .2-.6-.2-.6-.9.1.8-.7zm-9.1-1.1a3.4 3.4 0 011.8.7v-.5s-.8-1-1.7-1c-1 0-2 .9-2 .9v1s.9-1.1 1.9-1.1zm10.6 15.5c-1 .5-2.2.5-2.2.5l.7-1.3c2-.5 2.4-1.9 2.4-1.9l-.1-.5s-.5 1.3-2.2 2l.6-2.6-.5-.2s-.8 1-1.6 1.3a6 6 0 00.6-2.2l-.2-.4s-.6.5-1.4.6h-.5c.5-.6 1.4-2.5 1.4-2.5l-.1-.4s-.7 1.7-1.4 2.5l-.3.3a9.7 9.7 0 01-1.7-.8v.3s.7.5 1.5.8l-1 1v.8l2.4.3a5.8 5.8 0 01-1.6 1.7l.3.5s1.1 0 3-.5c-.5 1-1 1.5-1 1.5s1.8.1 3-.5 1.6-1.2 1.6-1.2l-.4-.4s-.2.9-1.3 1.3zm-5.5-3.3l1-1.1c1.2.3 1.6-.1 1.6-.1s.2.7-.5 1.8a6.6 6.6 0 01-2-.6zm1.1 2.5l1-1.3a3.2 3.2 0 00.3-.3c1.2 0 1.9-1 1.9-1s.1 1-.4 2.2c-1.6.6-2.8.4-2.8.4zm-1.5-7.9c1.2.1 2.6.6 2.6.6l-.1-.6-2.3-.4c.4-.9 1.2-1.3 1.2-1.3l-.4-.2s-.4 0-1 1.2l-.2.2a3.4 3.4 0 00-.3 0c-1 0-1.9.6-1.9.6l.2.3s.9-.4 1.8-.4l-.6 2 .2.5.8-2.5zm-2.4-4.9l-.2-.6s-1.3-.4-2.2 0c-1 .5-1.6 1.5-1.6 1.5l.4.8s.6-1.2 1.5-1.5c.8-.3 2.1-.2 2.1-.2zm2.4 1.9l-.8-.4s-1.3.3-1.8.8-.9 1.7-.7 2c.1.4.5.6.5.6s.2-1.3.9-1.9c.6-.6 1.9-1.1 1.9-1.1zm-3-.4c.4-.5 1.4-.7 1.4-.7l-.5-.5s-1.2.2-1.8.7l-1.4 1.7.7.7 1.5-1.9zm4-35.8c.7-.8 1.3-.8 1.5-.8h.6a7.4 7.4 0 00-.7 2c-.2.8-.5 1-.8 1.5-.3.5-.9 1.5-1 2.3 0 .8.2 1.2.5 1.3.2 0 .5-.4.5-.5 0-.3-.2 0-.4 0s0-.3-.2-.8c0-.5.6-1.8.8-2.2.3-.4.8-1 .9-1.6 0-.7.5-2 .5-2 0-.1-.3-.2-1-.2a2 2 0 00-1.5.9c-.4.5-1.4.9-1.4.9s1.1 0 1.7-.8z"/>
+  <path fill="#78732e" d="M228.2 219.6h-2l.5 1.5zm-2.4 0l-.4-.4a1.2 1.2 0 00-.3-.3l-.7.5-.4 1.5.2.2 1.6-1.6zm-.3 4l-1.4-2.2-.8 1.7.4.2 1 .1.8.1zm6 35.7h-.1a7.2 7.2 0 01-3.8 1.2c-.8 0-1.8-.2-2.7-.7a3.1 3.1 0 01-1.2-1.5c-.5-.9-.6-2-.8-3.1a8.8 8.8 0 00-1-3c-.6-1-1.8-1.7-3-2.6a5.9 5.9 0 01-2.2-4.2 6.5 6.5 0 010-.6 9 9 0 01.9-3.6c.4-1 .9-2 .9-2.8v-.4c-.2-.6-.8-1.1-1.2-1.5l-1-.6-.8-.3v.3l.7.2v-.1.1a6.8 6.8 0 011 .7c.5.4.9.8 1 1.3v.3c0 .7-.4 1.6-.9 2.7a9.4 9.4 0 00-.9 3.7 6.1 6.1 0 002.4 5c1.2 1 2.4 1.6 3 2.6.6 1 .7 2.5 1 4 .2.7.3 1.4.6 2 .3.7.7 1.2 1.4 1.6a5.6 5.6 0 002.8.8c2.3 0 4-1.3 4-1.3l-.1-.2z"/>
+  <path fill="#78732e" d="M229.7 255.4l-1 .2a2 2 0 01-1.4-.6c-.6-.6-.8-1.1-.9-1.8-.1-.7-.3-1.6-.7-2.7-.5-1.1-1.7-2-2.9-2.9-1-.9-2.1-1.8-2.3-2.7a2.6 2.6 0 010-.5c0-.8.3-1.6.6-2.6.4-.9.8-2 .8-3.2v-.6c-.2-1.6-1.5-2.8-2.6-3.6a11.3 11.3 0 00-2.3-1.1v.2h.1c.4.2 1.5.7 2.5 1.5 1 .7 1.8 1.7 2 3v.6c0 1.2-.3 2.2-.7 3.1-.3 1-.7 1.8-.7 2.7a3 3 0 000 .5c.3 1.1 1.4 2 2.5 2.9 1.1.9 2.3 1.8 2.7 2.8.5 1.1.6 2 .7 2.6a3.5 3.5 0 001 2c.6.5 1.1.7 1.6.7a2.2 2.2 0 001.2-.3l-.2-.2z"/>
+  <path fill="#a8ac71" d="M237 249.3s1.5.3 1.4 1.4c0 1.2-.6 2.7-.6 2.7l-2-1.7 1.1-1 .4-.5-.2-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M213.1 235.6s-1.4.5-1.7-.1c-.2-.6-.1-1-.1-1.2 0-.1-.9-.2-.8-1 0-.8 1-.7 1.3-.7.2 0 .3-1.2 1-1.2s1 .9 1 .9l-.7 3.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M214.6 236s-1.1.6-1.5 0c-.4-.5 0-1.3-.1-1.4-.2-.1-.9-.4-.7-1 0-.8.8-.5 1-.7.3-.1.5-1.1 1.3-1 .7.2.8.8.8.8l-.8 3.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M216.6 236.3s-.3.7-1.2.5c-.8-.1-.5-1.3-.7-1.5-.1-.2-.7-.4-.6-1.2.1-.7.9-.6 1.2-.7.2-.1.5-1.3 1-1.1.6.1 1.2.8 1 1.1 0 0-1.1.4-1.3 1.2-.1.8.6 1.7.6 1.7z"/>
+  <path fill="#af7029" d="M235 249l-1.8-2.1-1.8-2.2-1.8-.9-1.2-1.9v-2.2l.4-1.3.7-1s-3.7 1.4-1.8 8.5c.8 3 2.8 3.4 2.8 3.4l3.4-.2 1-.1z"/>
+  <path fill="#816c2a" d="M233.3 225.4c.3 0 .5 0 .6.2l.1.6a1.6 1.6 0 010 .2l.1.1c-1.3 2.7-3.9 4-6.2 5.6a11 11 0 00-3 3.1 9.6 9.6 0 00-1.4 5.5c.1 4 1.6 6.3 3.3 7.4a7.7 7.7 0 004.2 1.3h.3l1.2-.1a28.5 28.5 0 012.4-.2 9 9 0 011.4.1c.4 0 .6.2.7.3a.6.6 0 01.2.4c0 .3-.2.7-.5 1l-.7.5v.3l.9-.6c.3-.4.5-.7.5-1.2a.9.9 0 00-.2-.5c-.2-.2-.5-.3-.9-.4a9.4 9.4 0 00-1.4-.1l-3.6.2v.2-.2a4.6 4.6 0 01-.2 0c-.7 0-2.5 0-4.1-1.2-1.6-1-3.1-3.2-3.2-7.2v-.3c0-2.2.5-3.8 1.2-5 1.2-2 3-3 4.8-4.3 1.8-1.2 3.5-2.4 4.4-4.5s0-.2 0-.4l-.1-.7c-.1-.2-.4-.4-.8-.4v.3z"/>
+  <path fill="#fff" d="M238.3 250.1s-1 1.6-1.2 1.7c-.2 0 .8.2 1 .6l-.2.4s-1-.7-1.5-.7l-.1-.6s.5-.2.9-.6c.3-.3.7-1.1.7-1.3l.3.5z"/>
+  <path fill="#fcca3d" d="M241.7 251.2l-2.2.6-1.1-.7s0-.9-.4-1.3c-.5-.4-.8-.5-1.3-.7-.4-.2-2-.2-2-.2l-4-4.3 1.5.2 2.4-.3 2.1-.2 1.2.2 1.2.3.6.6.7.6.7 1 .4 1.3.2 1.3v1.6z"/>
+  <path fill="#af7029" d="M241.8 251s-.8.3-1.8.3-1.6-.2-1.6-.2l-.2.7-.4 1v2.6l2.1.4 1.1-.4.6-2.8.1-1.5z"/>
+  <path fill="#fcca3d" d="M241.2 250v1h.5v-.8zm-2-24l-.2-1.7-.7-1.2-.9-1.2-.9-1-.5-.5-.2-.3-2.3.1-1.2 1.4s3 2.2 4.3 4.6c1 .3 1.8 1 2.2 1.4l.1-.2.3-1.4z"/>
+  <path fill="#af7029" d="M237 228c0 1.7-.3 2.6-.6 3l1.4-1.6 1-1.8a5.7 5.7 0 00-2.2-1.4c.2.6.4 1.2.4 1.8z"/>
+  <path fill="#816c2a" d="M240.2 254.3l-1.1-1.3-1-.7-.2.2h.1l1 .7a13.1 13.1 0 011 1.3l.2-.2z"/>
+  <path fill="#6f5b24" d="M241.6 252.4s-.2.8-1 1.5-1.8 1.1-1.8 1.1l2.2.9 1.5-1.4-1-2.1z"/>
+  <path fill="#404118" d="M241.9 254.3l-.2.2-.4.4-.3.4.6-2.4.4.7v.4z"/>
+  <path fill="none" stroke="#78732e" stroke-width=".2" d="M228.6 223.4s-3 .3-5.2 0c-2-.4-1.6-5.9-1.7-6 0-.2-1.3-1.5-1-2.7.2-1.2 4-4.4 4.6-4.6.4-.1 1.2.2 1.2.2s1-1 1.3-1c.3 0 .7.6.6.8-.2.3-1.5 1-1.6 1.7-.1.6 0 1.2-.4 1.8-.4.6-1.1 1.4-1.2 1.9-.1.5-.3 1 0 1.1.4.2 1.7 0 2.8-.5 1.1-.5 1.6-1.1 1.7-1 .2 0-.6 1.3-1.8 1.8-1.3.5-2 1.1-2.7 1 0 0-.6 1.6 1.4 1.7 2.1.1 3.3-.4 3.3-.4l-1.3 4.2z"/>
+  <path fill="#ab6d29" stroke="#4d2a15" stroke-width=".3" d="M255 200.5s-5.7-1-5.6 3.6c0 1.5.4 2 1.5 2.3 1.2.3 3.6.5 5.6 2.3 2 1.8 2.2 3.1 2.2 4.2 0 1-.5 2-.5 2l1.3 6.2 1.2 4.6 3.8-2.2 2.3-6.8-2.9-12.2-9-4z"/>
+  <path fill="#4d2a15" d="M260.5 224s2-.8 2.5-2.4c0-.4-2-2.3-2-2.3l1.5 1c.5.5 1 .7 1 .6.3 0 1.2-2.1.8-2.6-.3-.4-.9-1.5-1.7-2-.8-.6-1.9-.5-1.9-.5s1.5-.5 2.3 0c.7.3.8.8.9.6a9 9 0 00-.5-3c-.4-.6-.7-1-1.6-1.1-1-.2-1.9-.1-1.9-.1s1.3-.8 2.3-.5c1 .2 1 .7 1 .6a9.8 9.8 0 00-.7-2.3 5.3 5.3 0 00-1.7-1.5l-1.4-.2h-.5s.7-.5 1.7-.4c1 .1 1 .4 1.1.4.2 0 0-.2-.7-.6a39.6 39.6 0 00-3.4-1.6h-2.5s0-.7.7-.8c.7-.1 1 0 .9-.1 0-.2-2.2-.7-2.2-.7h-1.7l-2.4.3.5-.7c.3-.3.8-.4 1.1-.5.9-.2-.4-.9-.4-.9l.6-1 3.2.2 6.5 3.9 3.1 2.6 2 5-.6 8.6-4.4 3.6-2 .2.5-1.8z"/>
+  <path fill="#d2a567" d="M254.8 202.7s-.2-.6-.2-1.4v-.7s-2-.3-3.5.9c-1.6 1.2-.7 3.3-.7 3.3s.7-.6 1.5-1c.9-.3 2.4-.2 2.4-.2.2-.2-.3-.8-.9-.9l-1.7-.1s.7-.5 1.8-.4c1.1.1 1.3.5 1.3.5z"/>
+  <path fill="#8f4620" d="M261.3 224.7l-1.4.5.9 6 5.7 9.7 3-.5 1-1.8.7.3c.4.4 1.5 2.3 2.4 2.7 1 .3 1.4.2 2.3.9.8.6 3.9 5.2 4 5.3.2.2-.2-1.9-.2-1.9l-.9-2.7-1.1-1.9-.2-.5h1.5l1 .6 1.5 1.3.8.9.4 1 .2.8.4 1.3.8 1.7 1 1.7.3-.6-.5-2-1.5-4.9-1-1.6 1.6 1c.4 0 1.5 1.8 1.5 1.8l.7 1.7.5 1.6.4 1.4.5 1.5.9-.5-.2-1.1-.8-3.4-.3-3.6s.4 0 1 .6c.5.6 1 1.9 1 1.9l.3 3.2.5 3 1 3 1 2 .7 1v-1.5l-1.2-12.8.1-.5s.2-.1.6.5l.9 1.5.3 2 .2 1.4.3 2.6.3 2.8 1.3 3 .7 1.7.4-2-.6-13.6.3-.4 1 1 .6.8.5 3 .3 8.7.3 2.2 2.6-22.6 1.5-.3.2-.5-1.1-.8-2.6-4-1.7-3.9-3-5.6-5.3-6.4-4.1-3.4-1.5-1 .2-.9.9-1.4h-.8l-1.8.3-1.8-.6-3.5-2.4-3.7-1.8-2.2-.8-5.3-1.3-5.3-.7h-2.3l-2.2.3s-1 .5-1.4 1.2c-.4.6-.4 1.1-.3 2.1.1 1 .7 1.5 2.2 2.1 1.5.6 5 3 5 3l1.6 1.6.6.8.1.6 1.2 9-2.3 4.8-1.6.8z"/>
+  <path fill="#ab6d29" d="M267 238.6s1 1.6 2.3.3c1.4-1.2-.6-4.8-.5-5 0-.2.6-.3.6-.3l1 1.9s.6 1 .3 2.5c-.2 1.6-1.7 3-1.7 3l-1.7-.5-.3-2z"/>
+  <path fill="#4d2a15" d="M300.2 259.4l-1.2-3.6-.4-2.8-.3-7.5c-.1-1 0-2.3-.2-2.5l-1.3-1.8-.5-.5.3-.3s.5.5.6.3c.1-.3 0-1.6-.5-3.6s-3-6.7-3-6.7l.2.3.7.7 1.5 1.2 3.3 1.2 1.7.3 1.2 2.3s.8 3.9.7 5.9c0 2-.1 3.6-.9 5.6-.8 2-1 8.2-1 9.2l-.5 2-.4.3z"/>
+  <path fill="#8f4620" d="M300.2 249s.7-.9 1-2c.3-1 .4-9.9-.6-11a8.2 8.2 0 00-3.3-1.8l.8 2.9.7 1 .5 1.5c0 .7.7 2.5.8 4.8l.1 4.5z"/>
+  <path fill="#4d2a15" d="M295.4 254.4s.5-4.1.3-7.1-.5-3.4-.8-4a25.8 25.8 0 01-2-5c-.7-2.6-1.2-4.5-1.6-5-.5-.5-1.4-1.6-1.6-1.3-.2.3-.2.9-.2.9l-1.3-.3-.3-.8.4-1.3v-.6l-.2-.9 1.6 1.3 3.3 2.2 1.7 7 1.5 4.2.2 7.2-.1 6.4-.9-2.9zm2-19.7l1.3 1c.5.4 1.5 1 1.3 1l-1.6-.6-1-.7v-.7z"/>
+  <path fill="#4d2a15" d="M291 252.8s.6-1.4.5-3.3c-.1-1.8-1-6.3-1.3-6.8-.3-.6-1.6-1.4-2.7-4-1.2-2.4-1.1-3-1.9-3.8a73.6 73.6 0 01-1.6-2l.3-2.7 2.8 1.5 1.3.6 1.4 7 1.3 2 .6 2.7.7 6.5.3 5.2-.2.5-1.6-3.4zm-3.4-3s0-2-.4-3.8c-.5-1.9-1-3.2-1.5-3.8a28 28 0 01-3.3-4 45 45 0 00-3.1-4v-2.7l1.7 1.2a44.9 44.9 0 011.8 1l.8 3 1 2.1 1.4 2 1 .8.5 3.2.3 1.8.8 2.6-.3 1.3-.7-.6zm-2.4 0l-.8-.7s.5-.5.3-1.5c-.3-1-.5-2-1-3s-.6-1.6-.9-1.9a97.8 97.8 0 00-3.5-3.2l-3-2.6c-.8-.5-1.4-.6-1.4-.6l-.4-3.2s1 1.4 1.7 1.6l1.6.6 2.3 4 .8 1 2 1.7.9 1.7.6 2 .8 2.7.2 1.7-.2-.2zm-4.4-.8s-1.3-1.5-1.6-2.5c-.2-1 .2-1-.2-2.1a9.5 9.5 0 00-3-3.7c-1.1-1-2.7-2.3-2.6-3 0-.7.3-.8.3-.8l.7.6 3.5 3.8 1.1 2 .9 2.5.5 1.1.5 1.5-.1.6zm12.8-18.6s2.5 3 3.1.2c.3-1.2-.8-3.6-.8-3.6l-3-5-4.7-5.8-2.8-1.3 1 1.6s2 2 4.7 6.7c2.7 4.6 2.1 7 2.1 7l.4.2zM279.4 212s4.9 4.2 8 8.7c3.1 4.5 4.4 7.5 3.7 8-.7.7-2.7-.3-3.5-1.5-.8-1.3-1.5-3.5-4.4-6.9-3-3.4-4.4-3.9-4.4-3.9l-2.2-3.4 2.8-1zm-2.6 10s3 2.4 4.7 4.3a29.8 29.8 0 012.8 3.4l1.1 1.1s-.6-1.2-.2-1.6c.3-.4.8-.2.8-.2l-9.2-9.7v2.7zm-.6.2s1 1.8 2.5 3.3a298 298 0 003.2 3.1l.7 2.4s-4.2-3.2-4.2-2.4a7 7 0 001 2.4l-1.3-.7-1.8-2.5-1-2.3-1.2-3 2.1-.3z"/>
+  <path fill="#4d2a15" d="M263.6 232.2s2.2 2 3.4 0c1.2-1.9.2-4 .2-4s3.1 4.5 4 .2c.1-.8-1.9-3.7-1.9-3.7l.7-.7 1.6 2.6s1.5-.6 1.5-2.4c0-1.8-1.6-4.2-1.6-4.2l1.5 1.6s2.8 0 2.9-1.7c0-1.7-2.4-3.5-2.4-3.5s2 .1 2-1c-.1-1.2-2.7-2-2.8-2.7 0-.7.8-1.9 2-1.2 1.2.6 2.8 1.2 3.5-.1.7-1.3 0-1.6 0-1.6l-1.7-.4-2.8-1.4-2.1-.8-2.2-.3.8 1.7.6 4.5v2.1l.4 4.6-1 3.8-.7.7-.4.5-1 2-1.2 1.5-1.7 2.2-1.6 1.7z"/>
+  <path fill="#ab6d29" d="M279 240.7s-.5-1.3-1.7-2.3c-1.2-.9-3-1-3-1l3.2 3.4h1.5zm4.5.8s-1-2-2.2-3.3c-1.2-1.3-2-3-2.4-3l-.5.1.3 2.6 2.2 2.2s2 1.5 2.6 1.4zm3.7-.2s-.5-2.4-1.7-4.7-2.6-3.3-2.6-3.3l.3 2.5 1 2.4 1.7 2.4 1.3.7zm3-1.3s.9-5 .1-6.3a3.7 3.7 0 00-2.2-1.7l-.5.7.5 3.6 1.1 2.7 1 1zm3-8.3s.7.4 1.6 2c.9 1.7 2.1 6.7 2.1 7 0 .2-.5.1-.6 0l-3-4.7-.6-4.3h.5z"/>
+  <path fill="#d2a567" d="M272.3 237.5s1.6-.4 1.6-1c0-.5-2-1.6-1.8-2.5.1-.4 1.6.1 1.7-.2.2-.3-1.5-3-1-3.6.5-.6 2 2.9 2 2.9s.8 1.6.5 2.5c-1 3-3 1.9-3 1.9zm3.7-3.6c0-.2 2.5.3 2.5.1.1-.5-2.2-2.3-2.2-2.3s-.5-1-.3-1.1c.1-.2 1.6.1 1.7 0 0-.3-1.7-2.6-1.7-3 0-.4.5 0 .5 0s1.3 1.4 2 2.5c.8 1.2 1.5 2.1 1.2 4-.2 2-4 .4-3.7-.2zm11-3.6s-.5-1.7-.2-1.9l.8-.4s-1.3-.8-1.9-.8c-.6 0-.7-.2-.8 0-.2.3 1 2 1 2l1 1z"/>
+  <path fill="#d2a567" d="M279.6 231.5s3.7 1 3.8.7c.2-.3-3-3.2-3-3.2v-.7c0-.2 1.3-.2 1.7.1.3.3 0 1 0 1.2.2.2 1.4 2 1.6 1.7.2-.3-.2-2.5-.1-2.6 0-.2 1.4 1.2 1.7 1.5.4.2 2.5 1.8 2.7 1 .2-.7.3-.8.3-1.3-.1-.4.6 2.1-.3 2.4-1 .4-2.1-.3-2.1-.3l-.9-.7-.5-.5s.6 2 0 2.2c-.7.2-1.5.1-1.5.1l-1.5-.2-2-1.4zm8.5-2.5s4 2.4 4.3 2c.4-.5-1-6-.8-6.6.2-.5 3.2 6.3 1.8 7.2-1.2.7-1.7.2-1.7.2l-2-1-1.6-1.8zm11 10l.9.4.5.2-1.1.2-.3-.8zm-3.8-13.1l.6.3.5.2-.5.2a1.3 1.3 0 01-.3-.1l-.3-.6zm-1.2-2s.4.2 1-.1.5-.7.5-.8c0-.2-.9-.2-1.2-.4-.2-.2-.2-.5-.2-.5H293l1.1 1.9zm3.5 11.6l1.6.7c.3 0 .9.4.8.5 0 .1-1 .2-1.4 0-.5-.3-.6-.2-.6-.2l-.4-1zm-6.5-18.1h1c.2.2 0 1-.3 1.3l-.8.4a38.5 38.5 0 01-1.3-1.8l1.4.1zm-5.7-5l1.2-.1c.4 0 .9.3 1.2.5.4.2.7 2.6.5 3-.2.5-2.8-1.5-2.9-1.7 0-.2-1.2-2-1.2-2l1.2.2zm-2.5-1.2s2 .2 1.8-1a3 3 0 00-1-1.9l-2.4 1.7 1.6 1.2zm-5.2-2.2s.5.2 1.1 0c.6-.2 2.1-2.2 3.2-2.4 1.1-.3 1.4-.3 1.6 0 .2.2 0 1.4-.2 1.7-.2.3-3.5 1.7-3.5 1.7l-1.2-.2-1-.3v-.5zm-.6-3.6c-.5-1.2-1.4-1.6-1.7-1.6-.3.1 1.1 1.3 1.3 2.8l.2 2.8h.7v-.5l.2-.5v-.4l-.1-.8-.2-.6-.1-.5-.3-.7zm-4.6-1.7a12.3 12.3 0 00-4.4-3c-.2 0 3.2 2 4 3.4.7 1.2.7 3 1 3.2.4.3.7 0 .7-.1 0 0 .3-.4.2-.5l-.2-.9-.5-.8-.3-.6-.5-.7zm-4.4-1.8a13.4 13.4 0 00-8-2.5c-2.9 0-4.3.2-3.9 1.8.4 1.5 1.7 2.1 4 2.1 2.4 0 3-.2 4.2.2 1.2.4 2.4 1 2.9 1.6.4.4-1-1.2-2.1-2l-2-1.5s-.2-.5 1.4-.2c1.6.2 3.8 1.2 4.3 2.6.6 1.3.5 2 .5 2.4 0 .2.6-.2.6-.2l.2-.7s.1-.5-.2-1c-.3-.7-.4-.9-1.1-1.7l-.8-.9zm-7.7 22.8c1.2 0 3.8-2.2 4.2-5.4a27 27 0 00-2-10.1c-.5-.7.7-.3 1.4.3.6.7 2 5.2 2 8.5s-.8 4.3-2.5 6c-1.8 1.6-3.2 1.5-3.2 1.5l.1-.8zm4.1 9.3s.6.7 1.2.5c1.2-.5 3.1-1.4 3.1-3 0-1.2-1.4-2.2-1.5-2.6v-.8l1.3.3.3 1.8s.5.5 1 .3c.6-.2 2-1.3 1.9-2.4-.2-1-1.7-2.3-1.8-2.8a1.8 1.8 0 010-1l1.2.2.4 1.5s.3.6 1 .4c.7-.1 2-1.4 1.7-2l-1.3-2.1v-.7l.5.3s.4.2 1.4-.1c.9-.3 1.8-1 1.8-1.6 0-.6-.7-1.2-.8-1.6v-.5l.6.1.8 1 .2 1-.3 1-1.1 1.3-1.2.4h-.3l.7 1.2-.2 1.6-1 1-1.4.7v1.5l-.8 1.6-1.7 1h-.5l-.2 1-1 1.5-2 1.3-1.3.2-.8-1.1.1-.4z"/>
+  <path fill="#d2a567" d="M274.7 217.1s3.1 1 3-1c0-1.2-3-3.7-3.2-4.1-.2-.5-.1-1-.1-1l1.5 1.4s2 .5 2.6-.7c.5-1.1 0-1.8 0-1.9h.4l1 .1-.2 1.8-1 4.4s.3 1.7-1 1.9c-1.4 0-3-.9-3-.9zm3 23.6s0-.9-.7-1.5-2-1.2-2.2-1.4a48 48 0 002.2 2.8l.7.1zm4.5.1l-2-2.5c-.2-.7-1-2.1-1.7-2.2-.6 0 .6 2.4.6 2.4l2.5 2.3h.6zm4.3 0l-1.7-3.3c-.3-.7-1-2.7-1.8-3.3-.8-.5 0 1 0 1l1 2.6 1.4 2.3 1 .7zm3.1-1.8s-.1-2.2-.4-3.7a4.6 4.6 0 00-1.5-2.7l.1 2.7 1.8 3.7zm6.5 1.6l-1.5-3.8a17.6 17.6 0 00-1.7-3.3l.3 2.3 1.4 3.8 1.5 1zm5.6-6.8s-1-1-3.1-1.9a15 15 0 00-4.3-.9l.2.3 1 .8 2.2 1.2 3 .7 1-.2z"/>
+  <path fill="#202020" d="M278.6 235s0 2 1 3.1l3.7 3.7c.4.4.8 2.7 1.5 4.6.6 2 .8 3.5 1.1 4 .3.6.9 1.5.5 1.4-.5 0-1-.6-1.2-1.3-.3-.7-.2-.7-.1-1.7 0-1-1.5-5.9-2.2-6.4-.7-.6-3.9-3.2-5.1-5-1.2-1.9-1-2.3-1-2.3h1.8z"/>
+  <path fill="#202020" d="M283.7 247.5c-.7-1.4-.8-2.7-1-3.5a12 12 0 00-3.5-3.4c-.5-.2-1.5.1-2-.2l-2.9-3.2s-.3.4-.2.5c.1 0 2.7 3 3.7 3.8 1 1 1.5 3 2.2 4.6.6 1.6.4 1.2.4 2 .1.8.6 1.2 1 1.2s.7-.2.5-.3a8.3 8.3 0 01-1.7-2.8c-.6-1.4-1.2-4-2-4.9l-.3-.2 1-.1c.7 0 3.4 2.4 3.6 3.1.2.7 0 1 1 3.4 1.2 2.4 1.7 3 1.7 3h.2l-1.7-3zm-4.1-16l2.4 1.4 1 .2s.3 3.5 1.7 5.5 2.6 2.7 2.6 2.7 0 3.8 1 6.4a14 14 0 011 6.3c-.2.5-1-1.5-1.6-3.3l-1.5-5a10.3 10.3 0 00-2-3.6c-.7-.5-.2-.4.2 0a9.1 9.1 0 012 3.5c.6 2 .9 4 1.2 4 .4 0 .6-.3.6-.7 0-.4-.4-1.4-.7-3.3-.4-2-.7-3.2-1-3.7-.3-.6-.8-.6-2-2.8a16 16 0 01-2-4.2v-1c-.3-.2-.4 0-1.4-.5s-1.5-1.9-1.5-1.9z"/>
+  <path fill="#202020" d="M284.5 230.8s1.2 1 1.9 1.2c.6.3 1.6.3 1.6.3s-.3 3.4 1 5.5c1.3 2.2 2.7 3.4 2.7 3.4s.2.8.6 5.5l.6 6.6c0 1.8.1 8.4-.1 8.2-1-.8-.2-4.3-.7-5.8-.5-1.5-1.3-1.7-2.3-6-1-4-.3-5-1-6.6-.7-1.6-1.6-1.7-1.6-1.7s1.3.2 1.8 1.6c.5 1.3.6 4.8 1 6.5 1 4 2.4 6 2.4 6s-.3-5-.7-7.8c-.4-2.8-.3-5.1-.9-6.2-.5-1-1.6-2-2.3-3.3-.7-1.5-.9-4.3-1.2-5-.3-.7-.5-.5-1-.7-1.5-.6-1.8-1.7-1.8-1.7z"/>
+  <path fill="#202020" d="M288 229s1.1 1.2 2.6 2c1.4.9 2.2.6 2.4.8.2.2-.3 3.1 1.2 5.8 1.5 2.8 2 2.8 2.1 3.2l.5 11c.2 2.8.4 12-.7 12s-.1-6.8-.7-8.4c-.5-1.6-.5-1.1-1-2.4-.6-1.2-.6-6.2-1.4-9.2-.7-2.2-1.3-2.6-1.3-2.6s1 .6 1.6 2.5c.5 1.8.6 8 1.2 8.9.6 1 1.4 2.2 1.6 3 .2 1 0-11.5-.4-12.3-.2-.8-2.7-5.3-3-7.8-.1-2.5-.2-2.8-.4-3-.3-.2-1 0-2.2-1.1-1.2-1.2-2-2.4-2-2.4z"/>
+  <path fill="#202020" d="M293.8 230.4c0-.2.8 1.4 3 2.3 2.3.9 4.5.7 4.8 1a18 18 0 011.7 8.1c0 4.5-.8 4.1-1.5 8-.7 4-.7 11.8-1.1 13-.2.5-.5.7-.7 1.5-.3.7.2 2.2-.5 2.2s-.8-1.1-.8-1.7c0-.6.7-2.8.7-5s-.4-2.4-.8-5c-.3-2.5-.3-10.7-.6-11.5-.3-.8-1.7-2.5-1.7-2.5s1.5 1 1.9 2c.4 1.2.4 10.3.8 12.1.4 1.9.3-.4.4-1.5.2-1 .7-5.5.7-7.9-.1-2.4-1.1-7.6-2-8.4 0 0 .5.5 1 1.6l.6.5.8.4a2.3 2.3 0 01-.8-.2l-.5-.3a19.1 19.1 0 011 6.4c.1 4-.5 13 .1 13.2.7 0 .5-5 1.2-9s1.6-4.6 1.3-8c-.3-3.2-1.2-6.8-1.9-7.3-.6-.4-2.6-.3-4.4-1.4-1.8-1.1-2.8-2.3-2.7-2.6zm-28.6 4.6s.6.3 1.4 0c.7-.4 2.7-2 2.7-2.7V231s0 .3.7.4c.5 0 2.2-1.2 2.3-2V227c-.3-.2.4.3.8 0 .3-.3 1.9-1.3 1.9-2.4 0-1-1-2-1-2h1.3c.5-.1 2-1 2-2s-.6-2.4-1.8-2.5c0 0 .9.2 1.8 0 .9-.4 1.2-1 1.2-2s-1.8-3-2.1-3.2c-.4-.2 1.9.6 2.5-.3.5-1 .6-1.5.4-2-.1-.5-.6-.7-.6-.7s1 .3 2.3-.4c1.3-.6 2.4-1.5 3-1.5.6 0-1.9 1.4-2 2.1 0 .3.7.8 1.8 1.7l.2.1c.5.3 2.5.4 2.6.5.2 0-1.9 0-1.7.2a27.3 27.3 0 014.6 4.3s.3.3.7.4l1 .2H290a52.2 52.2 0 012.6 3.8s.4.5.7.6l1 .2c0 .2-1.2 0-1 .2a65.6 65.6 0 012.6 4.8s-2.5-4.3-5.5-7.6c-3-3.4-3.6-3.8-3.8-3.5-.2.3 2.2 3.3 3.5 5.3 1.3 2.1 2.4 4.7 2.4 4.7s-3-6.2-7.2-10c-4.2-3.9-4.6-4.5-5-4.3-.6.1-1 3-.6 3.5.3.6 3.3 3 6 6 2.6 3 5.9 8.4 5.9 8.4s-2.4-3.8-6.4-8-5.5-5.3-5.8-5.3c-.3 0-.4.8-.8 1.5-.5.6-1.5.5-1.5.8 0 .3 3.4 3.4 4 3.8.7.4 1.1.2 1.6.5l1.1.7-1.2-.4c-.5-.2-1-.2-1 0s2.7 3.5 3.2 3.7c.4.2.7.1 1.3.4.6.2 1.5.8 1.5.8l-1.6-.7c-.7 0-1 0-1 .2s2.1 2.9 2 3c0 0-3.2-3.8-5.8-6.1-2.7-2.4-3.9-2.9-4-2.8-.1.1 0 .8-.7 1-.6.3-1.2.3-1.2.6 0 .2 2.3 2.5 4 4.3a119.5 119.5 0 013.2 3.7l-3.6-3.5c-1.9-1.8-2.8-2.5-3-2.4-.2.1-.2 1 0 1.3.1.2 3.6 4.3 3.5 4.4-.1.1-4.1-4.9-4.4-4.9-.2 0-.4.6-.6 1-.3.2-1.4.2-1.4.6 0 .4 5.6 6 5.4 6 0 0-4.6-4-4.8-3.7-.1.2 2 4 1.9 4.1-.2.1-2.8-4-3-4-.2 0-.2.5-.9 1.1-.7.6-1.5.4-1.5.6 0 .3 3.8 4.6 3.7 4.7 0 0-4-4.1-4-3.9 0 0-.3.3-.2.6.3 1 1.2 2.9 1 3 0 0-1.2-2.5-1.5-2.4-.3 0-.3.6-1 1-.5.3-1 .2-1 .5s.7.7 1 1.3c.3.6.6 2 .6 2s-.4-1.2-1-1.9c-.5-.7-1-1.2-1.4-1.2-.4 0-.7.4-.7.4l-.4-.9z"/>
+  <path fill="#202020" d="M301.6 233.7s1.2-.1 1.4-.4c.1-.3-.5 0-1.6-1.3-1.2-1.2-4-9.7-7.3-14-5.2-6.9-10-10-10-10s5.7 3.3 10.2 9.9c4.6 6.6 5.7 11.9 7 13.2 1.3 1.4 2.5 1.6 2.4 2 0 .4-.2.7-.7.8l-1.7.1.2-.3zm-38.4-1.9l.2.1c.3 0 1.9-1.5 1.8-2 0 0-.7-.2-1.3-.8-.6-.6-.7-1.5-.7-1.5s.5 1 1 1.3c.4.3 1.1.5 1.4.3.2-.3 2.5-2 2.4-2.6 0 0-.7 0-1.4-.5s-.8-1.6-.8-1.6.4.9 1.1 1.2c.7.3 1.4.2 1.6 0 .2-.3 1.7-2.4 1.5-3 0 0-.7 0-1.4-.4-.7-.5-1.1-1.7-1.1-1.7s.5 1 1.4 1.2c.9.2 1.6-.4 1.7-1 .2-.6.7-3 0-3.6 0 0-1.2.4-2 0s-1.1-1.5-1.1-1.5.6 1 1.6 1c.9.2 1.3-.3 1.4-.7.2-.3.2-1.7 0-2.4-.3-.7-.9-.7-1-1.8 0 0-.3.4-1.5.4s-1.8-1.3-1.8-1.3 1 .9 1.9.8c.9 0 1.2-.8 1.3-1.4 0-.6-.5-1.2-.8-1.8-.2-.6-.3-1.3-.4-1.2-.2 0-.4.6-1.6.4-1.2-.2-1.5-1-1.5-1s.9.6 1.5.6c.7 0 1.2-.4 1.2-.9 0-.4-.3-1.3-1.8-2.6a46.5 46.5 0 00-2.8-2.2s2 1.1 3.3 2.2c1.3 1 2 2.1 2 2.1s1.4.5 1.5 0c.2-.5.2-1-.3-2-.4-.7-1.6-2-1.6-2s1.2 1 1.8 2.1c.6 1.1.4 1.9.4 2.1 0 .3 2.7 1.3 3.3 1 .6-.4.3-1.2-.2-2l-1-1.4s.7.7 1.2 1.5c.4.7.8 1.4.6 1.7-.2.4-.5.5-.5.7l1.8 1c.9.5 1.9 1 2 .7.2-.3.2-.9.2-1.8-.1-.8-.6-2.1-.6-2.1s.6 1.2.7 2.1v2c.3.2 1 .3 1 .3s-.6.4-1.7 0c-1.2-.3-6.2-2.8-6.4-2.6-.2.3 2.3 1.8 3.5 3 1.2 1 1.7 2.2 1.7 2.2s-.9-.8-1.8-1.3-3.5-1.8-3.7-1.6c-.1.2 1 .4 1.1.6.1.2-.8 1-.8 1.4 0 .3 3.8 3 3.7 3.2-.2.3-1 1-1.2 1-.1 0-2-1.5-2-1.3 0 .3 1 1.2 1 1.4 0 .2-.6.6-.5 1 .1.5 2.1 2.1 2 2.7 0 .5-1 1-.8 1.4l1.2 1.6-1.5-1.1c-.3-.4-1-1.2-1.1-1.1a6 6 0 00-.8 2c0 .4 1 .9 1.1 1.8.2 1-.1 2-.2 2 0 0-1.3-1.7-1.5-1.7-.3 0-.6 0-.8.5-.2.4-1 1.7-.8 2 0 .1 1.3.4 1.3 1.4 0 1-.8 1.9-.9 1.9l-1.6-2c-.2 0-1.8 1.9-1.8 2 0 .3 1 1.1.9 1.4-.2.4-1 0-1.5.2l-1.3.5c-.2 0-.4-.5-.4-.5z"/>
+  <path fill="#202020" d="M284 208s.1-.5.4-.8c.2-.2 1.2-1.3.8-1.6-.3-.2-1.6.2-2.4.2-.8-.1-1.3 0-3.7-1.9 0 0-7.4-5.1-18.9-5.8-3.6-.2-5.2 1-5.4 1.8 0 .1 1-1.5 4.6-1.5a40 40 0 0119.2 5.7c.3.3 2.3 2.2 4.1 2 1.9-.3 2.3-.5 2.2-.2 0 .2-.6 1-.7 1.2l-.3 1v-.1zm-20 1.5a9.6 9.6 0 00-2.2-2.6 30.3 30.3 0 00-6.4-3.4c-.2 0 4.8 2.3 6.2 3.7l2.4 2.3z"/>
+  <path fill="#d2a567" d="M264 217.8s-.4-.5-1.4-1.2a7.9 7.9 0 00-2-.9l2.4.6c.6.6 1 1.5 1 1.5zm-.7-4.3s-.3-.5-1.7-1c-1.4-.4-1.7-.3-1.7-.3s1.3-.6 2.3 0a2 2 0 011.2 1.3zm-.8-3.6s-.3-.6-1.5-1c-1.3-.5-2.1-.6-2.1-.6s1.3-.3 2.5.2c1.3.5 1.1 1.4 1.1 1.4zm-1.5-2.2s-.3-.5-2.7-1c-2.3-.6-3.2-.6-3.2-.6s3.3-.3 4.2 0c.9.4 1.7 1.6 1.7 1.6zm-4.3-2.5s-1.4-.4-2.8-.5l-3.5.1s4-.6 5-.4c1.1.3 1.3.8 1.3.8z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M243.6 254.7s.7 1.3 2 1.3c1.5 0 2.6 2 2.6 2l-1.5 1.6-3.7.2-1.2-2 1.8-3zm0-1.2c.2-.3-1-2.7-1.9-3-.8-.5.3.7.1 1.2-.2.5-.3 1-.2 1.2 0 0 .7 1 .3 1.5-.3.5 1.8-1 1.8-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M243 257.1s.7.3 1.2.2c.5-.2 1-.7 1-.7m-2.9-.4s2.1-1.5 2-2.3c-.2-.8-.7-.8-1-.7a5.6 5.6 0 00-1.6 1.3l.6 1.7z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M240.9 257.2s.3 1 1 1 1.7-.5 1.7-1c0-.3-.7-1-1.1-1.3-.5-.2-1.5.3-1.5.3l-.1 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M242.8 255.8c-.2.3-1.5 1-1.9 1-.4 0-1.3-1-1-1.2l1.2-.3c.3-.2.4-.7.6-.7.2 0 .7.2.9.5s.3.4.2.7z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M241.4 256.7s-2 2.8-2.9 2.6c-.8-.1.4-3.9.4-3.9l1 .4c.6.2 1.3.5 1.5 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M237.8 254.8s2.6.4 2.7.8c.1.5-1.2 1-2 1-.7 0-.7-1.9-.7-1.9z"/>
+  <path fill="#202220" d="M231.2 258.7s.4 1.3 1.5 1.4c1.2 0 2.2-1.2 2.2-1.2l-2.7-1-1 .8z"/>
+  <path fill="#4b4139" d="M231.2 258.7l.3.7c.3.3.6.7 1.2.7h.1c1.1 0 2.2-1.2 2.2-1.2l-2.8-1.2-1 1 1-.8 2.7 1-.2.1c-.3.4-1.1 1-1.9 1-.6 0-1-.3-1.2-.7a2.3 2.3 0 01-.2-.4 3.3 3.3 0 01-.1-.1z"/>
+  <path fill="#202220" d="M232 258.4s.4 1 2 1c1.4 0 2.6-1.2 2.6-1.2l-2.4-1.9-2.2 2z"/>
+  <path fill="#4b4139" d="M232 258.4s.4 1 2 1a4 4 0 002.6-1.2l-2.4-2-2.3 2.2h.1l2.2-2 2.4 1.8h-.1a4 4 0 01-2.5 1.1 2.4 2.4 0 01-1.6-.5 1.8 1.8 0 01-.3-.3 1 1 0 010-.1h-.1z"/>
+  <path fill="#4b4139" d="M232.2 258.6s.6.5 1.4.6l1.8-.2-1 .3h-1.2l-.5-.2-.4-.3-.1-.2z"/>
+  <path fill="#202220" d="M234 257.3s.6 1.6 2 1.4c1.3-.1 1.4-1 1.4-1l-1.6-2.2-1.9 1.8z"/>
+  <path fill="#4b4139" d="M234 257.3h-.1l.4.8c.3.3.8.7 1.5.7h.2c.7-.1 1-.3 1.2-.6a.9.9 0 00.2-.4l-1.6-2.4-2 1.9h.1l2-1.7 1.4 2.2c0 .1-.1.7-1.3.9a1.4 1.4 0 01-.2 0c-.6 0-1-.4-1.4-.7a3.2 3.2 0 01-.3-.5 3 3 0 010-.2 1.2 1.2 0 01-.1 0z"/>
+  <path fill="#4b4139" d="M234.1 257.6s.9 1 1.6 1c.7 0 1.2-.3 1.2-.3v.1l-.4.2-.6.1h-.7l-.6-.4-.5-.7zm-2.6 1.6s.6.7 1.2.7 1.5-.5 1.5-.5h.1l-.1.1-.6.4-.8.2-.6-.1-.4-.3-.3-.3v-.2z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M237.6 254.6c.6 0 2 1.7 2 2.6 0 .9-.4 2.2-1 2.1-.7 0-2.2-1.3-2.5-2-.3-.6-.7-1.1-.4-1.4.2-.4 2-1.3 2-1.3zm-6.4.2s-1-.8-1.5-.4c-.4.4-.3 1.8 0 2 .3.4 1.5-.6 1.5-.6v-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M231 255.8s-1.4 0-1.4.7.7 1.3.8 1.5c.2.1 1.4-.6 1.4-.6l-.8-1.6z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M231.6 256.9s-1.5.4-1.5 1c0 .4.7 1.3 1.1 1.3.5 0 .8-.9 1-1 .2-.2-.6-1.3-.6-1.3zm.7-4.1s-.3-.4-.9-.2c-.6.3-1.3.9-1.1 1.8 0 1 .4 1.6.4 1.6l2.1-.7-.5-2.5z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M232.4 254.4s-1.8.6-1.9 1.3c0 .8.4 1.5 1 1.6.4.1 2-1.4 2-1.4l-1-1.4z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M234 257.4s-1.8 1.2-2 1.2c-.3 0-1-1-.8-1.6.2-.6 1.4-1.1 1.9-1.3.4-.2 1 1.7 1 1.7zm1.6-6.6s-.6-.4-1.7-.4c-1 .1-1.9 1.5-2 2.3-.1.7 0 2 .4 2.2.4.2 2.7-1.6 2.7-1.6l.6-2.5z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M233.4 256.2c-.8 0-1.4-1.1-1.3-1.8.1-.6 1.6-1.8 2.4-1.6.8 0 .6 2 .6 2s-1 1.5-1.7 1.4z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M235.8 256s-.4 1-1.1 1.3c-.8.4-1.3.1-1.7-.5-.5-.7.2-1 .5-1.3.4-.3 1.4-.5 1.4-.5l.9 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M234.6 253.8s-.9.6-.4 1.4c.5.8.9 1 1.5 1.2.6.1 1-.1 1.5-.7s1.2-.9 1.1-1.6c0-.7-.3-1.3-.8-1.5-.4-.2-1.7 0-3 1.1z"/>
+  <path fill="#202220" d="M237 250.4s-.9-.4-1.6 0c-.6.4-1.1 1.2-1.1 2l.1 1.7s1-.2 1.5-.7.8-.7.7-1c0 0-.3-.3-.3-.9 0-1 .7-1.1.7-1.1z"/>
+  <path fill="#4b4139" d="M237 250.4s-1-.2-1.5.1c-.5.3-1 .8-1.1 1.5-.2.7 0 .8 0 .8s-.2-.5 0-1.1c.2-.6.7-1.2 1.2-1.4a3 3 0 011.4 0z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M263 269.6l1.3-.6 1.6-1 .3 1.8-1.4 1h-1.2l-.7-.5.2-.7z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M261.1 269.7h.9l1-.1c.2 0 .5 1 .5 1l-.4.5-1.2.7-1-.6-.1-1.4h.3zm9.7-.5l-.7-.9-1.7-1.5v4h1.8l.8-1.3-.2-.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M261.1 269.7s-.3-.4-1-.3c-.8.1-1.6.7-1.7 1.3 0 .5 0 2 .4 2.3.4.3 1 .5 1.8.3.8-.3 5-2.9 5-2.9l-1 .3-1.2-.2s-.5.7-1.2.8c-.7.1-.8-.3-1-.6l-.1-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M264 271.1l-1 .4a7 7 0 01-1 .5l.3 1.3 1.8.4 1.1-1v-1.2l-1.3-.4zm8.3-.9l-.6-.6c-.3-.4-.8-.5-.9-.4l-1 1.1v.9l1 .5.7.1 1-.6-.2-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M266.1 269.6l-1.2.7-1 .8 1 1 .9.2 2-1.4-.2-1.3h-1.5zm7.6 1.6l-.4-.6c-.4-.3-.8-.4-1-.4-.2 0-1 1.2-1 1.2l-.1.3.7.8 1.3.3.9-.8-.4-.8z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-linecap="round" stroke-linejoin="round" stroke-width=".2" d="M270.4 272.6l1 .2s-.1.2.2.4c.2.2.3 0 .3 0s0 1 1 1.7c0 0 1.2.4 1.7 0 .6-.3.5.1.5.1l1.6-2s0-.4-.4-.4c0 0 .3-1.2-.7-1.5s-1.9.1-1.9.1-.8 1.5-1.2 1.3a1.9 1.9 0 01-.6-.4l-.6-.7-.7-.2c-.4-.2-.7-.9-.7-.9s-.6 0-.8-.3a3 3 0 01-.5-.6l-1.5 1s0 .5-.9 1.1c-.8.7-1.4.7-1.4.7s-.2 1.3-1.2 1c-1-.1-1.6-1.2-1.6-1.2s-.7-.1-1.1.5c-.5.6-.7.8-.7 1.4 0 .6.4 1.4.7 1.7.3.3 1.3 1 2.4.4 1.2-.6.8-1.5.8-1.5l.6-.4c.7-.5 1.5-1.2 2-1.4"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".2" d="M268.6 264.7v2.5s.4 2.3-.1 3c-.5.7-2.3.6-2.6 0-.2-.7-.1-2.6-.1-2.6l2.8-3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-linecap="round" stroke-linejoin="round" stroke-width=".2" d="M266.6 272.4s-.4.7.8.8a.8.8 0 00.7-.3c.3-.3.3-.6.3-.6s-.1.9 1 1c1.1 0 1-1.1 1-1.1"/>
+  <path fill="#202220" d="M257 274.5s-.7-1.1 0-1.5c.8-.4 1.3 0 1.7 0 .5 0 .3-1.2.2-1.4 0-.3-.3-.8-.5-1-.2 0-2.8.2-2.7 1.9 0 1.7 1.3 2 1.3 2zm4 4.1s-.8-1.2-.4-1.9c.5-.7.8-.2 1-.3.2 0 .3-.5 0-1.3s-.9-1.1-1.2-1.2c-.2 0-1.8 1.1-1.5 2.6.4 1.8 2 2.1 2 2.1zm14.5-1.4s2.8 1.2 3-1.7c.1-1.5-1.3-2.5-1.7-2.5-.3 0-.5.2-1 .8-.5.6-.9 1-.7 1.2.2.3 1-.2 1.4.7.6 1.5-1 1.5-1 1.5z"/>
+  <path fill="#4b4139" d="M261 278.6s-2.2-.5-2.2-2.6c0-1.4 1.6-2 1.6-2s-1.4.7-1.5 2c0 2.1 2 2.6 2 2.6zm-4-4.1s-1.3-.3-1.4-2.1c-.2-1.8 2.8-1.7 2.8-1.7s-2.8 0-2.7 1.8c.2 1.8 1.3 2 1.3 2zm18.5 2.7s.6.3 1.2.2c.7 0 1.4-.2 1.7-1.2.3-1.1.1-1.6-.6-2.5-.5-.7-1-.7-1-.7s.6.1 1 .7.9 1.3.5 2.5-1.5 1.2-2 1.2l-.8-.2z"/>
+  <path fill="#904720" d="M242.1 217.9l-.5-.1.4-.9 1.4-.5 1.5-.1h1.5l.7.4.8 1.9-2.9 1.7-.5.2-.1-.8-.5-1.1z"/>
+  <path fill="#202020" d="M269.5 260.4l-.1-4.4-12 3.6 4.8 4.4z"/>
+  <path fill="#d2a567" d="M247.6 252.7l-1-.8-1.1-.6h-1l-.1.2.1.4 1.1 1.3 1.8 1 .7.5.4.2-1-2.2zm-.3 1.9h.7l.6.9.5.8.5 1 .2.7-1.3-.3-3.9-1.2.4-.9.6-.6.6-.2.8-.2z"/>
+  <path fill="#d2a567" d="M249.8 257.8l.6-.1.4-.4-.2-1.4.3-4.6-3.1-3.7-.7 2.1 1 3.8.6 2.2z"/>
+  <path fill="#ab6d29" d="M247.5 249.3s-.2.4.1 1.6c.3 1.2.7 4 1.8 5.8 1 1.8-1-1.5-1-1.5s-1.7-3.7-1.5-6.5c.3-2.9.6.6.6.6z"/>
+  <path fill="#ab6d29" d="M249.8 251.7s-.7.8-.8 1.5v1.7s0-.8.7-1c.7-.2.6 1.9.6 2.1l.4-3.8-.9-.5zm.4 7.7l-3.5-.8c-1.9-.8-2.8-1.5-2.8-2 0-.4 3.2.2 3.7.3.5.1 1.9.8 1.9.8h.8l1.5-.6.2 1.6-1.8.7zm-6-.7s1 .6.5.9c-.4.3-1.5.3-1.8.2l3.4.8.6-.6a279.8 279.8 0 00-2.6-1.3z"/>
+  <path fill="#d2a567" d="M243.4 257.8c0-.2.2.5 1.4.6 1.2.2 1.8-.2 1.8-.2l.5.4.6.1-.5.9-2.3-.7-1.2-.6-.3-.5z"/>
+  <path fill="#ab6d29" d="M251.3 256.2l.6.9.4-2v-2l-1.3-.8z"/>
+  <path fill="#4d2a15" d="M247.8 253l-1-1.8-1.4-2.5.8-1.4 1 1.4s-.3 1 0 2c0 1 .6 2.2.6 2.2z"/>
+  <path fill="#d2a567" d="M240.6 259.2s.5-.7 1.5-.8c1.1-.1 2 .1 2 .1l2 1.2.5.7-4-.6-2-.6z"/>
+  <path fill="#8f4620" d="M251.2 252l.1 3.3c.1.7.6 1.5.5 1.8 0 .3-.2.4-.8.6-.5.2-1.5 0-1.5 0s1-.1 1-.3c.1-.2-.2-1.1-.3-2 0-.8 0-1.7-.2-1.7-.3 0-.6.3-.7.4 0 .1.3-3 .6-3.3.4-.4 1.3 1.3 1.3 1.3z"/>
+  <path fill="#ab6d29" d="M243.8 258.4s-.4-.3-.4-.6.4 1.3 2.7 1.2c2.2-.1 2-.2 2-.2h1.1s-.2 1-.4 1.1c-.2 0-1.7 1.1-1.8 1.2l-.5.3v-.2l-.3-1.7-1.9-.7-.5-.4z"/>
+  <path fill="#8f4620" d="M247.8 253s-2.6-2.8-3.5-4.5c-.8-1.8-.3-4.2-.3-4.2l2.4 3.2s-.3.6-.2 1.6c.1 1 1.6 3.8 1.6 3.8z"/>
+  <path fill="#ab6d29" d="M246.1 262.6c0-.2-.2-.8.3-1.4a15 15 0 015.4-3.3v2.4l-5 2.4-.7-.1z"/>
+  <path fill="#8f4620" d="M246.4 260.8l1.1-1c0-.3-.6-.4-1.7-.6a8 8 0 01-2-.8s1.3 1.1 1.9 1.3c.5.2.5.4.4.6l.3.5zm6.6.6l-1-1.7-.2-1.8-.8.6-1.5.5s1.6 0 1.6.5c0 .6-2.4.8-2.4.9 0 0 1.9-.4 1.8 0-.2.5-1 .5-2 1a14.8 14.8 0 00-2.4 1.2s.4.3 1.2.2c.7 0 2.3-.4 2.3-.4l3-1.2.4.2z"/>
+  <path fill="#ab6d29" d="M253 261.4s-.8-.3-1.4-3.9c-.6-3.6-.5-4.5-.5-4.5l1.5 1 1.3 2.3-.9 5z"/>
+  <path fill="#8f4620" d="M253.5 255.4s-.7 2-.7 3.2c0 1.2 0 2 .2 2.8a6.9 6.9 0 001.5 1.8l.5-.5.3-1.6v-2.7l-1.8-3z"/>
+  <path fill="#202020" d="M255.5 258.2s.4 5-1 5.1c-.5.1-1.4-1.9-1.5-2 0 0 1.1 2 1.6 1.7.8-.3.5-5.2.5-5.2l.4.4zm-2.5 3.2l-.5-.7c-.4-.6 0 .5-2.8 1.5s-3.6.4-3.6.4.9.7 3.6-.1c2.7-.8 2.5-1 2.8-1l.5-.1z"/>
+  <path fill="#ab6d29" d="M248 255s.5.3 1 1.3l.8 1.7.1-.1-.8-1.7-1.7-2.6.6 1.4z"/>
+  <path fill="#8f4620" d="M246.4 261.2s.3-1 0-1.1c-.3-.2-.5 0-2.4-.2a27.3 27.3 0 01-3.4-.7s1.3.8 2.5 1.1a95.3 95.3 0 002.7.7h.5l.1.2z"/>
+  <path fill="#202020" d="M246.4 261.2l-.2-.4c-.2-.2-.5 0-2.8-.5l-2.8-1s.8.6 2.8 1.1l3 .8z"/>
+  <path fill="#ab6d29" d="M247.4 254.6s-1.7 0-2.2.5c-.5.4-1.3 1.6-1.3 1.6l1.1.1s-.1-1 .4-1.5 1.3-.6 2-.7z"/>
+  <path fill="#8f4620" d="M244.2 251.4s.7.9 1.4 1.2c.7.3 1.4.6 1.7 1 .4.3.7 1.4.7 1.4s-2.4-1.1-2.8-1.6c-.5-.6-1-2-1-2z"/>
+  <path fill="#8f4620" d="M246.6 252s-.3-.4-1-.7c-.6-.3-1-.3-1.3-.1-.1.1 0 .2 0 .2l.8 1.3.5-.1s-1.3-.8-1-1c.6-.6 2 .3 2 .3z"/>
+  <path fill="#202020" d="M253 248.9l13.6-7 6.4 9-11.7 3-6.2.6-3-2.2z"/>
+  <path fill="#4d2a15" d="M271.2 252.7l16.8 14.6-1.8 1.3-4-1.1-8.2-8.1-3-3.1z"/>
+  <path fill="#4d2a15" d="M292.8 264.4l-9.7-7.3L271 248l.3 4.3 13.9 12.8 4.6 2.2 2.3-.7 1.2-1.2-.5-1z"/>
+  <path fill="#803f1d" d="M271.1 254.1s4.9 5.5 8.6 8.3c3.7 2.8 7.2 5.8 8 5.4.7-.4.4-.9.4-.9l-17-13.9v1.1z"/>
+  <path fill="#4d2a15" d="M283 268.1l-1.6 1.3-2-.8L269 258l.5-2 1.5.3z"/>
+  <path fill="#202020" d="M292.8 264.4s-1.3 3-4 2.3c-2.7-.7-17.6-14.8-17.6-14.8v1.5s15 13.8 18 14.3c2.9.6 5.3-2 5-2.2a36 36 0 00-1.4-1z"/>
+  <path fill="#803f1d" d="M269.5 256.3s4.8 6.2 7.3 8.4c2.6 2.3 4.8 4.1 5.8 3.9 1-.2-.6-1.4-.6-1.4l-7.3-7.1-3.7-3.8s-1.5-.6-1.5 0z"/>
+  <path fill="#202020" d="M270.7 256.3s12.2 12.4 13.1 12.7c2 .6 5-1.5 5-1.5l-1-.6-.2.4s-.5 1.2-3.2.7a82 82 0 01-13.3-12.1l-.4.4z"/>
+  <path fill="#4d2a15" d="M275.3 268.2l-4.5-5.1-1-1.7-.2-2.2 8.8 9-1.2.8-1.1-.4z"/>
+  <path fill="#202020" d="M283.3 268.4s-1 1.6-2.5 1.3a4.3 4.3 0 01-2.3-1.4L270 260l-.2-1.3s9.3 9.9 11 10.3c1.2.3 2-1.2 2-1.2l.5.6z"/>
+  <path fill="#202020" d="M278.6 268.1s-.4 1.2-1.7 1c-1.2-.1-1.6-.6-1.6-.6l-5.2-6.2-.1-1.6s5.4 7.4 6.6 7.9c1.3.4 1.6-.9 1.6-.9l.4.4z"/>
+  <path fill="#b07229" d="M273 251.9s5 4.3 5.5 4.5c.4.2 2.2.3 2.3.6 0 .2-1.2 0-1.3.2 0 .3 2.6 2.4 3 2.5.4 0 2.5 0 2.5.3s-1.5 0-1.5.3 2.2 2.2 2.7 2.2c.4.1 3 .1 3 .4s-2.1 0-2 .4c0 .4 3.6 2.7 3.5 3-.2.3-4.4-2.8-4.5-2.7a4 4 0 01-.5 1.4c-.3.1 0-1.4-.2-2-.2-.6-2.7-2.5-3-2.3-.2.3 0 1.4-.2 1.4s0-1.4-.2-1.9c-.3-.5-2.6-2.4-2.9-2.4-.3 0-.1 1-.3 1.2-.2.2-.2-1.2-.5-1.6-.3-.4-5.6-5.2-5.4-5.5z"/>
+  <path fill="#4d2a15" d="M264.4 265.9s0 1.9-.8 2.2-2.5-3.5-2.5-3.5l-.4-3.6 2.5 2.4 1.2 2.5zm6.7-1v-1l-.2-1.2-.2-2-.4-1.2-.4-.9h-.6l-1.3 1-.4 1.3.7 2.4.6 2.1 1 .4 1.2-.9z"/>
+  <path fill="#4d2a15" d="M269.4 268.3c.3-.2-.3-2.8-.3-2.8l-1.5-3.8-.5-1.4-1.2-.5-.8 1 .1 1.5 1.9 3.5c.5.8 1.8 2.6 2.3 2.4z"/>
+  <path fill="#202020" d="M268 260c.5.4 1 1.4 1.1 2.1 0 0 1 2.9.9 3.1-.1.3-.8.3-.8.3s1.4 1.5 1.8 1.3c.5-.2.3-1.6.1-1.9-.1-.3-.5 0-.7-.4-.2-.3-.7-2.2-.7-3.3V259c.2-.3 1.2 2.3 1.2 3.7l.5.6-.5-2.6-.5-1.8.2-1.2v-.8l.7.4c.2 0 .5-.4.6-1.6s-.1-4.8-.1-4.8l-5.4 7.1 1.6 2z"/>
+  <path fill="#202020" d="M268 259.4s-.2 2 .5 4c.7 1.9.9 2 1 2.2.2.3.2 2.4 0 2.6 0 0-1.5-3.5-2-5.2-.4-1.8-.5-2.4-.8-2.6l-.6-.1 2-.9z"/>
+  <path fill="#4d2a15" d="M267.5 269.6c.1 0 0-.8 0-.8l-.2-1.8-1.9-4-2-1.8-1.1-1.7-.2 3.2s1.5 3.2 2.5 4.2c1 .9 2.6 2.8 2.9 2.7z"/>
+  <path fill="#202020" d="M259.7 260.9s.4.8.4 1.4v1l1.4 2.8c.7 1.3 1.4 2.5 2 2.3.5-.3.7-1.2.8-1.3 0-.1-.7 1-1 .8-.4-.1-2-5.2-1.9-5.3l-.8-.6-.9-1.1zm5.7 4.3l-1.4-2.5c-.4-.8-1-1.4-1.1-1.4-.2 0-.4-1.5-.4-1.5s.5 1 1.3 1.4c.7.3 1.1.6 1.5.5l.2 1.6-.1 2z"/>
+  <path fill="#5c3a1d" d="M262 262.6s.3 1.1 1 2.2l1.9 2.3s-1.3-1.2-2-2.2c-.7-1-1.1-2.3-1.1-2.3h.1z"/>
+  <path fill="#202020" d="M265.6 261.3s.4-1 .7-1l.9-.2s-.5-.1-1-.6c-.4-.6-.5-.5-1-1l.3 1.5.1 1.3zm-.3.3l2 4.4c.3 1.2.3 2.8.3 2.8l-.6-2.1c-.3-1-1.7-3.7-1.8-4-.2-.3 0-1 0-1z"/>
+  <path fill="#4d2a15" d="M267.4 259.5l.4-4.8-.4-1.8-2.2-4.8s-.1.7-.7.7a5 5 0 01-2.4-1.5 7.3 7.3 0 00-.2 3.9l4.3 7.9 1.2.4z"/>
+  <path fill="#8b441f" d="M259 262.7s.7.8 1 .7c.4-.1.3-1.6-.2-2.5-.5-.8-5.6-7.7-6.4-8.1-.7-.4 5.6 9.9 5.6 9.9z"/>
+  <path fill="#8b441f" stroke="#5c3a1d" stroke-width="0" d="M262.5 259.9c.1.3.5 2.5-.4 2.7-1.2.2-6.9-7.5-7.7-8.6 0 0-3.6-2.2-3.6-2.8 0-.5 3.8.8 3.8.8l7.5 7.2.4.7z"/>
+  <path fill="#202020" d="M259 262.7s-.6-1.1-.7-2c0-.7-.3-1.1-.3-1.4a91.2 91.2 0 00-4.6-6.6l-1.8-1.1a12.4 12.4 0 00.2 1.9s1.3 2.4 3.2 4.6l4 4.6z"/>
+  <path fill="#4d2a15" d="M265.3 261.6c.5-.3.3-2.2 0-2.8-.1-.6-3.5-7.6-3.5-7.6l-1 .4-1.9-1.5-1-1.1.3 2.5v1.3l2.6 4.6 4.5 4.2zm3.8-4.2l.8-1-.5-3.5-2.2-7.6s-.5.2-1-.2a6.3 6.3 0 01-1.2-1l.5 4.5 2.3 6.4.2 1.9 1 .5z"/>
+  <path fill="#202020" d="M262.1 259.2s-2.2-2.4-3-3.6l-1.3-2.4s-.6.3-1.4 0c-.7-.4-1.8-1.5-1.8-1.5s-.6 1.2 2.6 4.5c3.7 3.7 5 3 5 3z"/>
+  <path fill="#8b441f" d="M267.5 260c1-.4 1-4.3 0-7-.9-2.6-2.3-5-2.3-5s1.8 4.4 2.2 6c.4 1.8 0 3-.3 3-.3-.1-.3-1-1-2.7-.8-1.7-1.3-2.1-1.3-2.1s2.6 7 1.9 6.9c-.7-.2-4.3-8-4.5-8.2-.1-.2-.2.3-.2.3s3.2 9.8 5.5 8.8z"/>
+  <path fill="#4d2a15" d="M269.6 241l1.6 3.4.5 3.5.1 3s.1 6-.6 6c-.7.2-1.1-.5-1.1-.7l-1.4-6.6-1.4-6.8.5-.4.2-1 1-.1.6-.3z"/>
+  <path fill="#8b441f" d="M265.3 261.6c.6 0 0-1.6 0-1.6s-.5.7-1 .2c-.4-.5-1-2.5-1-2.5l-.4-1.2s-.5 1.3-1 1.3c-.7 0-3.7-5.1-3.7-5.1l-.4.5s4.3 8.9 7.5 8.4z"/>
+  <path fill="#202020" d="M263.3 257.7s.5-1.2.3-2.4a23 23 0 00-1.8-4l-1-.1-1.9-1a30 30 0 004.4 7.5zm2.5-1.8s-.4-2.7-1.7-5.2a13 13 0 00-2-3.4v2.8s1.2.5 2 2a27.8 27.8 0 011.7 3.8zm3.4-4.6s-.2-3-.7-4.7l-1-4 .3-.2h.5c.7.1 1 1.7 1 1.7l-.2-2.5a11.2 11.2 0 00-.2-.4h-1.1s.2.7-.1 1c-.3.3-.5-.1-.6-.2l-.1.3.2 1.6v1.4s.4 1.7 1 2.8l1 3.2zm2.6-.4s.5-4.2-.4-7a9 9 0 00-1.8-3.4l-.5.6s1.5 2.3 2 4.4c.4 2.3.7 5.4.7 5.4zm-4.3 2.2s-.4-3.4-1-5.5l-.8-3-.9-.7s.5 2.2.5 2.9l-.1 1s.4 1.2 1 2.2c.6 1 1.3 3 1.3 3z"/>
+  <path fill="#904720" d="M269.8 258.3c.8 0 0-4.8-.3-6l-2.3-7s2.4 8.2 2.2 8.6c-.3.6-1.2-2.5-1.4-2.4-.2 0 1.8 5.5 1 5.6-.6 0-1-1.2-1-1.2v1.2s.5 1.2 1.8 1.2z"/>
+  <path fill="#904720" d="M270.8 255.9c.6 0-.2-4.5-.6-6.6l-1.5-6s1.1 2.8 1.8 6c.6 3.2 1 7.3.5 7.4-.7 0-1-.6-1-.6v-.7s.2.5.8.5z"/>
+  <path fill="#312317" d="M263 261.2c0 .3 0 1.9-.8 1.8-.8-.1-2.3-1.5-2.6-2.5 0 0 1.8 2 2.4 2 .6 0 .6-2 .5-2.6 0-.5.5 1.3.5 1.3z"/>
+  <path fill="#d2a567" d="M267.3 239.6s1 .7 2 .2a3.1 3.1 0 001.3-2.4c0-.6 0-1.2-.5-1.9-.6-.7.8.6.8 1.9 0 1.2 0 3.4-2 3.9s-1.1-.1-1.1-.1l-.5-1.6z"/>
+  <path fill="#8f4620" d="M265.7 235.8s1.3 2 1.8 4c.5 1.8.4 2.5 0 2.6-.3 0-.4-.2-.4-.7l-1.4-6z"/>
+  <path fill="#1e2121" d="M243.3 238.3l8.4 12.3 10.7-12-6.7-6.8z"/>
+  <path fill="#4d2a15" d="M254 230.8l-.5 2 1 3.2 1.8 1.8 2 1.4.5-1.5.5-1.8.5-.2 1.3.5.9-1.3 1.4-2.4-.3-1-.4-.7-2.1-3.7-.7 1.4-.7.4-1.2-.7-1.5 2-1.9-.9z"/>
+  <path fill="#5c3818" d="M258.4 239.2s.3-.3.5-1.2c.1-1 .2-4-.1-5.2-.3-1.2-1-3.5-1.2-3.3-.2.1 1.2 2.5 1 5.5-.2 2.9 0 3.7-.7 4-.6.3.5.2.5.2z"/>
+  <path fill="#5c3818" d="M258.8 234.3s1.4 2 2.1 1.2c.7-.7.3-3.2 0-4.2l-1-2.5.4-.4.7 2.7c.3 1.1 1 4.2.1 4.8-.9.5-2.2-1.2-2.2-1.2v-.4z"/>
+  <path fill="#8f4620" d="M254.3 235.6s.5-.7 1.1-.7c.7 0 .8.2.8.2l.6 1.6.9 1.7.8.9-.4.5h-.7l-2-1-.6-.8-.5-2.4z"/>
+  <path fill="#d2a567" d="M257.6 253c-.6.4-2.1-.3-3-1.1l-5.4-5.4-.6-2.5 1.8.4 3-1.3.6-1 3.7-2 2-1 4.5-.2 1-2.1s1.6 2.6 1.8 3.6.2 4.3-.2 4.5c-.4.3-1.8-1-2-1-.3 0 1 4.6 0 4.8-1.1.1-3-1.8-3-1.8s.8 4.2 0 4.2c-1 0-3.2-1-4.1-2 0 0 1 3.4 0 4z"/>
+  <path fill="#8f4620" d="M256.8 247.7l.9 1.4c.2.3 0 2.3-.2 2.6-.3.8-1.3-.9-1.8-2.3l-1.8-3c0-.4 2.9 1.3 2.9 1.3zm8.7-10.3s1.5 6.5.8 6.7c-.8.2-3-2-3.2-2.4l-3.3-5.1-.6-.7.2-.3 1.3.5 4.8 1.3z"/>
+  <path fill="#8f4620" d="M254.3 249.8c-.3.3-1-.8-1.3-1l-2.4-2.7c-1-1-1.8-1.8-1.8-2 0-.3-.7-1-.7-1l.6-.6.7-.1s4.3 3.4 4.6 4c.3.5.5 3.3.3 3.5zm6.5.1c-.2.2-3-1.9-4.3-3.6-1.2-1.7-2.4-3.2-2.7-4a58.6 58.6 0 01-.5-1.5l.8.2s7 8.6 6.7 8.9zm1-3c-.2.2-1.4-.7-2.2-1.7-.7-1-.3-2.3-.3-2.3s2.6 3.8 2.5 4zm1.6-.4c-.4.2-2-1.8-3.4-4-1-1.6-1.3-1.9-1.5-2a3.7 3.7 0 00-1-.3l-.2-.2.7-.2.6-.7.8-1 3.4 6.8s.8 1.5.6 1.6z"/>
+  <path fill="#ab6d29" d="M254.6 251.9c0 .3 0 .5-1 .4-.8 0-5.7-2.7-7.8-6.2a1712 1712 0 01-2.5-4l1-1.1 7.6 8.7 2.7 2.2z"/>
+  <path fill="#8f4620" d="M254.6 251.9c.1.4-.4.5-.8.4-.6-.1-2.5-.8-5.5-4.2-3-3.4-4.3-5.9-4.3-6l-.1-1.4.9-.4 5.2 8 4.6 3.6z"/>
+  <path fill="#4d2a15" d="M259.7 248.5s-1.6-1.2-2.6-2.4-3-4-3-4.6c0-.5 1-.5 1-.5l-.1-1.5.2-.4 1.5.6 1.9 2.3.7 1s1.2 2.8 1 3c-.3.4-2-1.5-2.2-1.3-.2.2 2 3.5 1.6 3.8zm-3-.8s.6.8.3 1.3c-.2.6-.4.9-1.2-.3s-1.7-2.5-1.8-2.4c0 .1.1 1.8-.3 1.8s-1.6-1.4-2.4-2.6l-2-3s.2-.5.1-1.8l-.1-2s0 .4.2.7l.4.6 2.8 3.3.8-.5 1.7 3.3 1.6 1.6zm-10.8-5s2.2 4 4.3 6.1a14 14 0 004.4 3.1L248 244l-2-1.2zm17 2.4c-.1 0-1.5-1.4-2.4-2.7a8.8 8.8 0 01-1.4-4l.2-2.8s2.3 2.4 2.8 3.5c.4 1 1.3 2.6 1.1 2.8-.2.1-1.7-1-1.9-.8-.2.3 1.8 3.8 1.6 4zm2.6-2.5c-.3.1-1.5-1.2-1.8-2-.3-1-.4-2.6-.4-2.6l-1-2.4.1-2.6 1-.2 1.5 2.1s.6 1.3.6 3c0 1.9.3 4.5 0 4.7zm-18 6.5c-2-2.5-3.3-5-3.3-5l-.7-2.2.4.3s.6 2.6 3.7 5.7c3.2 3.1 3.9 3.4 3.9 3.4s.6 1.7.3 2.3c0 0-2.3-2-4.3-4.5z"/>
+  <path fill="#202020" d="M250.9 252.7s-2.7-2.4-4.9-5c-2.1-2.8-3.5-5.4-3.5-5.4l1-.9s1.8 4.2 3 5.9a609.9 609.9 0 004.4 5.4zm3.7-.8L250 247a17.5 17.5 0 01-2.5-3.5l1.3.5s.5 1.4 1.7 2.8l4.2 5.1zm-.6-5.6s-1.7-2-2.5-3.4l-1.7-3s2.3 2.7 3 2.8c.7.2.7 0 .7 0s-.3 1 0 1.8c.1.8.5 1.8.5 1.8zm.7-8.4s.3 1.4.1 2.3c-.2.9-.7.8-.7.8l1.5 1.8c.5.6 1.8 1.5 1.8 1.5l-1.5-2.2c-.4-.7-1-1.6-.7-2.3.2-.7 1.6.5 2 .8l2 2.3s-.5-2-1.4-2.7a43 43 0 00-3-2.3z"/>
+  <path fill="#202020" d="M261.6 242.3l-1.4-3.5-1.3-4v2.2c0 1-.4 2.4-.8 2.6-.4.2-.5.2-1.3 0-.7-.2.6.4.6.4s.8 0 1-.4c.4-.4.5-1.2.9-1.1.3.1.7 1.3 1 1.9l1.3 1.9z"/>
+  <path fill="#202020" d="M259 234.7s1.6 1.9 2.3 1c.7-.8.3-3.1.3-3.1s1 .3 1.3 0c.3-.2.2-1 .2-1s1.8 2.5 2.6 4.2c.9 1.6 1.3 4.6 1.3 4.6s-1.5-2.4-2.2-4.6c-.7-2.1-1.7-3-1.9-2.8-.1.2-.4 1.6-.2 2.4.2.7.8 1.7 1.2 2.7.5 1.1 1 2.8 1 2.8l-1.4-2c-.5-.7-1-1-1.4-1.3-.3-.3-.8-1-1.3-1.1-.5-.2-1.5-.7-1.5-.3l-.2-.8-.2-.7z"/>
+  <path fill="#171717" d="M253.4 242.6l1.6 2.8 1.8 2.3s-1.6-1.4-2.2-2.3c-.6-1-1.2-2.8-1.2-2.8z"/>
+  <path fill="#8f4620" d="M264.1 243c-.2.2-1-.1-1 .2-.1.3.4 1.3 1 1.9.5.6.7.6.9.5l-.2-1.1V243c-.1-.2-.7 0-.7 0z"/>
+  <path fill="#d2a567" d="M244.7 231.5l-1 .6-1 2.3.3 4.3 1.7 2.4c.6 1 2.8 3.4 3.3 3.2.6-.1 1.2-1.8 1.2-2.7l.2-2.6s.5 1 1.4 1.9c.9 1 1.7 1.9 2 1.8.5 0 1.7-2.5 1.8-2.9 0-.3-3.2-8-3.2-8l-1.4-.7-5.3.4z"/>
+  <path fill="#ab6d29" d="M251.8 238l.9 2.9c.3 1 0 1.8.2 1.8.1 0 1.8-2.2 1.8-3.2s0-2-.4-5c-.5-3.1.1-4 .1-4l-1-.8-1.5 3.3v5zm-5.5-1.8l.5 4c.2 1 .8 2.6 1.1 2.5.3 0 1.3-2.6 1.4-3.5 0 0-.7-1.3-.7-4.4 0-3.2-.3-3.5-.3-3.5l-2 4.9z"/>
+  <path fill="#45392d" d="M242 230s-2.5 3.6-2.4 5.6c0 2 .3 1.6 1 3.4.5 1.8.8 4.4.8 4.6 0 .3.4 0 .5-.3l.1-13.3z"/>
+  <path fill="#ab6d29" d="M242 230.5s-2.2 3.3-2 5.2c.1 1.9.4 1.8 1 3.5.7 1.6.7 4.4.7 4.4s.7-.2 1.5-.8a7 7 0 001.5-1.7l-.8-1.7-.6-1.5-.6-1 .2-3.1.6-2.4v-.8l-1.5-.1z"/>
+  <path fill="#dbad6c" d="M253.8 236.3l-1.6-.5c-.4-.3-.6-1-.6-1l.3-.6 1.9 2z"/>
+  <path fill="#d2a567" d="M242.4 230.8s-1.5 3.4-1.4 5.8a16.2 16.2 0 001.7 5.3v-7.7l.7-2.3v-1.2l-1 .1z"/>
+  <path fill="#8f4620" d="M246.3 231.6v1.4c-.1.5-1 1-1.3 1.6l-.8 2.3s.3-1 .9-1.5c.5-.5.7-1 .8-.6.1.3.3 1.6.2 1.9-.1.2-.6.6-.8 1.6a3.3 3.3 0 000 1.9l.4-1.8c.1-.5.5-.7.5-.7l1 1.8V238c.2-.7 1-1.6 1.1-1.6.3 0 .6-.2-.2-.6-.3-.2-.1-3.4 0-3.6.3-.1 1.5-.1 1.4-.6a8.7 8.7 0 00-1.3-1.7l-2 1.7z"/>
+  <path fill="#dbad6c" d="M253.6 238.5l-1.2-.2a.6.6 0 01-.4-.5v-.5l1 .5.6.7z"/>
+  <path fill="#8f4620" d="M243.6 238.9c0 .3-.3.7-.5 1.2l-.3 1.2-.3-2.6-.3-1.9-.5.5s0-1.2.2-1.8c.3-.6.4-1.4.2-1.6-.2 0-.6.3-.8.6l-.6 1 .5-1.5c.3-.4 1.4-1.7 1.7-2.3l.2-1 .8-.1s.9.7.9 1.3c0 .3-.9.6-.9.7 0 0-.7 0-.8 2.6-.2 2.7.5 2.5.5 3.7zm7.4-7s.2 1.5 0 2c-.1.4-.5.8-.8 1.3-.4.6-.3 2-.3 2l.4-1 .5-.9c.1 0 .5.5.7 1.3l.6 2s-.2-1 0-1 .4 0 .8.3l.7.6s0-.4-.5-1-.8-.4-1-1.1c-.1-.7-.2-1.5-.1-1.7 0-.3.4.1.7.5l1.2 1.1-.5-.8v-2.3c0-.8 0-1.6.2-1.8.3-.2.4-1.2.2-1.4 0-.2-2.8 2-2.8 2z"/>
+  <path fill="#1e2121" d="M259.7 228.9s0 1.6.3 2.6l.9 3s-.9-1.5-1.3-2.8c-.4-1.4-.7-2.8-1-3-.4 0-.8.7-.8 1.3a10 10 0 00.8 3.4c.5.7-.7-1-1-1.9l-.6-1.7s-.3.7-.2 1.6c.2.9.9 2.1.9 2.1l-.8-.8-.5-.5s0 1.2.3 1.7l1 1.3-1-.9a2 2 0 01-.4-.5s.1 1.7.5 2.6l1.2 2.3s-1-.7-1.6-2.2a21 21 0 01-.8-6.5l1-1.5c.4-.7 1-3.8 1-3.8s.6 2.9 1.1 3.5c.5.5 1 .7 1 .7zm-6.9-.9l.6 1.1.5.8s-.9 1-1.8 1.7c-1 .7-2.2 1.5-2.5 1.1-.3-.4-.3-.8-.3-.8s1-.6 1.9-1.5a5.3 5.3 0 001.3-1.7l.3-.7zm-8.7 2.9s.1 1.8.9 1.7c.8 0 3-2.3 3.1-2.4.2 0 .3-.6.3-.8v-.6s-2.5 2.4-3.3 2.5a1 1 0 01-1-.4zm0-2.4l-.2 1.6c0 .4.2.7.2.7s-1.7.6-2 0c-.3-.5-.1-1.2-.1-1.2l1.2-.1c.4-.1 1-1 1-1zm16.3-2.5s.7 1.8 1.2 2.6l1.1 2.2-1.5-1.6a120.9 120.9 0 01-1-.8l.2-.9V226z"/>
+  <path fill="#dbad6c" d="M241.7 229.6h1l.7-.1.6-1s-.3 1.1 0 2c.2.8.6.9.8.9a3 3 0 001.8-1l1.7-1.4s-.2 1 .2 2c.3 1.1 1 1.1 1.8.5.8-.7 1.6-1.8 2-2.3l.6-.8.9-.7.8-4.4-.5-.6-1 .6-1.4-.6-.4-.5-.8 1.3-.8.5h-.4l-1 .3-.4-.9-.2-.6-.5-.2-2 2-1-.1-1.1 1.7-.8 1-.8 2 .2.4z"/>
+  <path fill="#8f4620" d="M251.1 225.2s.2 1-.4 2.9-1.3 3-1.3 3 2-1.1 2.9-3.2c1-2.2.7-4.6.7-4.6l-1.9 1.9zm2.4-2s.2.3 0 2l-.6 3.2.5.9c.2.5.9 1.4 1.4 1.3.4-.2 1.2-.7 1.7-1.8l1-2.3c.3-.2.3 0 .4.2 0 0 .2 1 .7 1.4.5.4 1 1 1.4.8.3-.2.5-.7.5-1l-1-3.2-1.3-3.2-.8-1.2-2.3.2-1.6 2.7z"/>
+  <path fill="#ab6d29" d="M257.4 220.3s.6 1.3.7 2.8c0 1.5-.3 3-.3 3v-3c-.1-1.2-.6-1.7-.6-2l.2-.8z"/>
+  <path fill="#4d2a15" d="M260.5 226v2c-.2.5-1-.5-1.6-2.5-.5-2-.4-2.4-.8-3.4-.5-1-.7-1.8-.7-1.8l1.1-.2 2 6zm-5.6 3.8s2.2-1.3 2.5-5c0-1.7-1-4.5-1-4.5s0 3-.8 5l-1.5 3.1.8-.5.6-.9v1.3l-.6 1.5zm-1.9-6.5s0 .8-1 1.5c-.9.8-2.5 1.6-2.5 1.6s1.2-1.1 1.6-2.1c.5-1 .1-1.6.1-1.6s-.1.5-.6 1-1.3.4-1.3.4 0-.5.5-1c.1-.1 0-.4.2-.6.2-.8.9-1.9.9-1.9s.5 1.2 1 1.7l1.1 1z"/>
+  <path fill="#1e2121" d="M259.8 218.9s.5 1.3.7 3.2c.2 1.8 0 4 0 4l-1.4-2.5c-.3-.7-.3-1.7-.5-2.3a2.6 2.6 0 00-.9-.8l-.8-.1s.7-.3.7-.9v-.8a3.5 3.5 0 002.2.2zm-4.9 7.8s1.2-1.6 1.5-3.7c.3-2 0-2.7 0-2.7s-.5-.1-1-.5-1-1.4-1-1.4.2 1 0 2.4c-.2 1.3-1.4 2.5-1.4 2.5s.6.2 1.2-.1c1.2-.7 1-2 1-2s.3.2.3 1.8-.6 3.7-.6 3.7z"/>
+  <path fill="#8f4620" d="M241 229.5c-.3 0 .7-1.6 1.4-2.7l1.7-2.7s.2.2.6.2a2.9 2.9 0 002-1.3 8.2 8.2 0 00.7-2c0-.3 0 1.4.8 2.3.8 1 .7.9 1 .8 0 0 0 1.2-.3 2.2l-.6 2.7s.1-2-.2-2.6c-.3-.6-.5 0-.8.8-.3.7-.9 1.2-.9 1.2l.8-1.8c.3-1 .1-1 0-1 0 0-.2 0-.5.3-.3.4-.7.5-.7.5s.4-.3.6-.8c0-.5.5-1.2.7-1.4l.4-.8c0-.2 0-.6-.2-.6s-.4.3-1.1 1c-.8.7-1 .7-1 1l-.7 2a12.8 12.8 0 01-.9 2.3l-.4.4.6-2c.4-1 1-2.5.8-2.7-.1-.2-.4-.2-.5 0-.1.2-1 1.1-1.7 2.2s-.7 2.5-.9 2.6h-.7z"/>
+  <path fill="#874f20" d="M260.5 217.7c0 .1.1 1-.7 1.2a3 3 0 01-2-.1v-1.2l2.7.1z"/>
+  <path fill="#b27129" d="M244.8 220.3l-.6 1.7c-.5 1-1.2 1.7-1.1 1.8 0 .1.5.6 1.2.5.6 0 .8-3.8.8-3.8v-.2h-.3z"/>
+  <path fill="#dbad6c" d="M254.8 218.2s-.4 5-1.8 5-2-2.5-2-2.5-.2 3.5-2 3.5c-.9 0-1.7-2.7-1.6-3.2 0 0-.3 1.8-1.2 2.5-1.7 1.4-2.8.7-2.8.5-.1-.2 1.4-1.7 1.6-3.7 0 0 .3.1.7-.5.4-.6.7-1.2 1-1.1.5 0 2.6-.9 2.6-.9l1-1.3s.2.4 1-.1a3 3 0 001-1.4l2.2 1.8.2 1.4z"/>
+  <path fill="#b27129" d="M249.1 213.3l2.2 3 .5-.4c.2.4.4.7.3 1-.3.7-1 1.8-.5 3 0 0-.1-.7.2-1.5.3-.8.5-1.1.7-1 .2 0 .5 4.6.8 4.6.3 0 .7-2.1.7-3.6s.3-.3.5 0c.1.3 1.4 2.4 2.5 2 1-.2 1-2.2.9-2.6 0-.4-.8-3-.8-3l-4.9-3-.4 1.2c-.3.8-2.7.3-2.7.3z"/>
+  <path fill="#8f4620" d="M256 212.8s.3.3.8 1.5.5 5.1 0 5.1c-.7 0-2-.7-2.2-1.3-.2-.5.1-2.4-.3-3a6.5 6.5 0 01-1-2.2l.1-1.5 1.1-.4 1.6 1.8z"/>
+  <path fill="#4d2a15" d="M255.7 211.6l2 3.1 2 2.6.8.4a2 2 0 01-2.5.4c-.7-.4-.3-1.6-1.2-3.6a8 8 0 00-2.6-3l.6-.5 1 .6z"/>
+  <path fill="#1e2121" d="M254.6 210s1.8 1.1 2.5 2.5l1.8 3.4c.8 1.3 1.7 1.7 1.6 1.8 0 .1-.5.2-1 0a3.8 3.8 0 01-1-1.3l-2-3.4a6.7 6.7 0 00-1.9-1.5c0 .1.5.4 1.3 1.7a5.6 5.6 0 01.9 2.5l-1-1.6c-.6-1.2-2.1-2.7-2.2-2.5l1.2 2.4 1 2.6-1.4-2.3c-.8-1.3-1-1.1-1.3-1.5l-1.1-1.4s.7.2 1.5-.3c.7-.5 1-1.2 1-1.2z"/>
+  <path fill="#8f4620" d="M249.8 213.3s1.2.3 1.9.2h.9s.4.5.4 1.1c0 .6-.5 1.7-.6 1.8-.2 0-.2-1-.5-1.4a20.7 20.7 0 00-2-1.7z"/>
+  <path fill="#b27129" d="M250.5 216.5s.4 1.3 0 3c-.2 1.9-1.3 3.7-1.5 3.7-.3 0-.2-2-.3-3a31 31 0 000-.4l-.5 1.2c0-.1.4-1.9.3-2v-.7l1.3-1.6.7-.2z"/>
+  <path fill="#8f4620" d="M248.2 217.8c-.4.5-1 .3-1.4.5-.5.1-.7.9-.7.9s.4-.3.6-.2c.2 0 .4 0 0 1-.4.8-1.8 2.3-1.7 2.4 0 0 1.6-1.3 2-2 .6-.8.5-1.2.6-1.5.1-.3.7-.6.9-.6 0 0 .4 0 .5.6l.4 2a9 9 0 00.7-2l.1-2.3-.5-.1-1.2-.7s.2 1.4-.3 2z"/>
+  <path fill="#dbad6c" d="M254.6 208.6s.5 1.3-.5 2.1c-.3.3-.6.4-1.1.5-.6 0-1.4-.5-1.4-.5l-3.1-1.3-1.7-.5-.8-.2.1-.9 2.5.1 2.4 1 1 .3 1 .1h.6l.6-.1.3-.3.1-.3z"/>
+  <path fill="#ab6d29" d="M254.6 208.6c.1.2-.2 1-.4 1-.2.1-.7.3-1.6.1-1-.2-1.9-.8-3-1-1-.4-1.7-.6-2.5-.6s-.5-.4-.5-.4 1.9-.2 3.5.4c1.6.6 2.3 1 3.1 1 1.2 0 1.4-.5 1.4-.5z"/>
+  <path fill="#4d2a15" d="M246.1 207.7h.7c.3 0 .5-.2.5-.2l-.1.5h-1v-.3z"/>
+  <path fill="#dbad6c" d="M252.2 211.5s1.1 1 .8 2l-2-1-3.5-1.4-1.8-.6-.3-.3.6-.6v-.6l2.3.3 2.4.7 1.5 1.5z"/>
+  <path fill="#dbad6c" d="M249.9 213s2 2.5 1.5 3.4l-4.5-3-1.7 2.7-3.7-1.8s3-2.3 3.4-2.8l.3-.6 1.7.4 2.7.8.3 1z"/>
+  <path fill="#ab6d29" d="M248.8 209.3s1.6.4 2.7 1c1 .4 2.4.6 2.4.6s-.6.6-1.7.6c-.3 0-1.1-.6-1.6-1s-2-.8-2-.8l.2-.4z"/>
+  <path fill="#4d2a15" d="M246 208.4l1.9.6c.7.3.7.2 1 .2l.1-.2s.2.7-.4.7-.7-.2-1.4-.5-1.2 0-1.2 0v-.7z"/>
+  <path fill="#ab6d29" d="M252.3 212.9s.9.5.7.6c-.1 0-.6.3-1.3.3-.7 0-1 0-1.5-.2s-.8-1.1-2-1.6a14.5 14.5 0 00-2.3-.8l-1-.2.8-.3 2.6.5 2.2.7 1.3.6.5.4zm-4.3 1.5l.5 2-.3 1.3-.7.4-.6-.2-.2-.4s.3-.5 0-.9-1.6-1-1.6-1 .5-1 1-1.2c.7-.2.4-1 .4-1l1.5 1z"/>
+  <path fill="#4d2a15" d="M245.4 210.2s.4.4 1.3.5l1.7.3c.2.1.8-.2.9-.2l-.5.3 2 .7c.9.4 1.6 1 1.6 1l-1.6-.7a14 14 0 00-2.4-.7c-1.6-.3-3.1-.2-3.5-.3-.3-.1.2-.1.3-.3.2-.2.2-.6.2-.6z"/>
+  <path fill="#ab6d29" d="M251.2 215.8s.5.6 0 .8c-.5.2-2 .1-2.6-.6l-.4-1c-.3-.3-1.3-1-2-1.3-.5-.4.3-.5.3-.5l2.9 1.3c.8.4 1.8 1.3 1.8 1.3z"/>
+  <path fill="#4d2a15" d="M251.3 215.9s-1-1.4-4-2.6l.9-.2h-1.5a22.2 22.2 0 00-.7-.3c-1.6-.4-1.7-.4-1.8-.6 0-.2-.3 0-.4.3a10.5 10.5 0 01-.6.8 4 4 0 012-.1c.9.2.9.5.8.9 0 .3-1.1 1.6-1 1.6.1 0 .7-1.2 1.5-1 .8.2 1 .6 1 .6l-.1-.7c-.2-.2-1-1-.8-1s1.2.3 2.6 1c1.4.7 1.6.9 2 1.3z"/>
+  <path fill="#dbad6c" d="M246.5 213.6s2.2.7 2.1 3c0 2.4-1.8 2-2 1.1-.1-.9.3.4.9.3.7-.1.8-.8.8-1.7 0-.9-.3-1.3-.8-1.8a9.6 9.6 0 00-1-.9z"/>
+  <path fill="#6c3f18" d="M236.8 208s.3 0-.4 1.8a8.5 8.5 0 01-1.9 3.3c-1.8 2-2.6 2-2.4 2.8.2.9.9.7 1 .7.2 0 3.5-4.8 3.5-4.8l.7-2.8-.2-.8-.2-.3z"/>
+  <path fill="#dbad6c" d="M244.9 204.5s1 1.4.6 4c-.3 2.7-3.8 5-3.8 5l-5 3.6-2.2-.2h-.6c-.4-.1-.7-.4-.7-.4-.2 0-.4-1-.4-1l.6-.8 1.9-1.8 1.1-1.7s.6-1 .6-1.9c.1-1-.1-1.4-.1-1.4l.4.7.2 1.4-.2 1.6 1.4-1 1.7-.7s.5-.1.9-1c.3-1 .6-2.5.6-3.2v-1.4h.2c0 .1.5 1 .5 1.4l.3 2.2.9-.8.7-1.2c.2-.4.4-1 .4-1.4z"/>
+  <path fill="#904720" d="M245.5 217.8s.3.2.2 1.2c-.1 1-1 1.5-1.3 1.5v-1.3l-1.1-1-1.2-.3.2-.2c.1-.2 1.4-.7 1.4-.7l1.8.8z"/>
+  <path fill="#ab6d29" d="M244.6 217.8s.3.3.9.2.8-1 .5-1.4c-.3-.4-.2.8-.5 1-.4 0-.8-1-1.3-1-.5-.2-1.3.2-1.5.5-.2.3.8 0 .8 0l.6.2.4.1v.4z"/>
+  <path fill="#904720" d="M237.2 214.1s.7.2 1.4.1 2.5-.8 2.5-.8l1.4-1c.6-.7 2.5-1.8 2.7-4.2.2-2.3-.3-3.7-.3-3.7s2.8 3 .3 6.5c-1.6 2.3-3 3-3 3s2.8-.8 3-.1c.2.6-.1 1.6-.2 1.8 0 0 1.5.3 1.8 1.1.1.5-1.8-.5-3.2-.2a3.7 3.7 0 00-2 1.2s-.3-.4-1.5-.4c-1.3 0-1.9.6-2.6.5-.7 0-3-.5-3.4-1.1l1.5-1.7c.7-1.3 1.6-1 1.6-1z"/>
+  <path fill="#ab6d29" d="M243 207.8s1.1-1 1.5-1.9l.4-1.4s.1.8-.5 1.8a10.3 10.3 0 01-1.4 1.6v-.1z"/>
+  <path fill="#904720" d="M242.7 205.4s1 3.4 0 4.9c-1 1.4-5.1 3.2-5.1 3.2s3.1-1.7 4-3.6c1-2 1-3.6 1-3.6l.1-1z"/>
+  <path fill="#1e2121" d="M238.6 214.2s1.3 0 2-.5c.8-.4 1.9-1.4 1.9-1.4s-1 .9-1.3.9c-.3 0-.5-.5-.4-.8 0 0-.2.7-.8 1.1a4 4 0 01-1.4.7zm3-4.3s1.2-1.2 1.2-3.6c0-2.4-1-2-1-2s.8.6.6 2.4c-.1 1.9-.7 3.2-.7 3.2zm1.4.2s1.3-.3 1.7-1c.5-.8.5-2.2.5-2.2s-.2 1.3-.5 1.8c-.4.5-1.7 1.4-1.7 1.4zm-.7 7.6s.6-1.2 1.4-1c.9.4.9 1 .9 1s-.3-.4-1-.5a2.6 2.6 0 00-1.3.5zm-2.4-2.2l3-.8 2.3-.8s-.9 1-2.2 1.9c-1.4.7-2.5.8-2.5.8s2.5-1.1 2.7-1.6c0 0-2.4.7-3.3.5z"/>
+  <path fill="#fff" d="M237 212.7a2.1 2.1 67.8 01-2.4 3.5"/>
+  <path fill="#f16e16" d="M236.9 212.9a1.9 1.9 67.8 01-2.2 3"/>
+  <path d="M236 214a.8.8 0 11-.7 1"/>
+  <path fill="#d5d3ca" d="M236.2 214.9a.2.2 0 11-.5-.1.2.2 0 01.3-.2s.2.1.2.3z"/>
+  <path fill="#ab6d29" d="M237.5 211.3s1.2-1.2 1.5-2.8c.2-1.6 0-2.5 0-2.5l.7.7.3 1.2-.4 2 1.3-.6a10 10 0 001-5s.3.7-.2 3-.9 2.6-2.6 3.6a7.6 7.6 0 00-3 3.3 13 13 0 01-1.9 2.5s.9-1.2 1.3-2.2c.7-1.4 1.4-2.2 1.4-2.2l.6-1z"/>
+  <path fill="#904720" d="M236.9 212.3s.5-1.6.5-2.5c0-.9-.6-1.9-.6-1.9s.8 0 .9 1.8c0 2-.3 2-.8 2.6z"/>
+  <path fill="#4d2a15" d="M239.3 210.3s.6-1.5.6-2.4c0-1-.8-1.9-.8-1.9s1 .2 1 2c0 1.7-.2 1.7-.8 2.3z"/>
+  <path fill="#ab6d29" d="M233.7 216.8s-.5-.6-.4-1c0-.5 0-.6 1.1-1.8a8.9 8.9 0 002-2.5c.3-.6 1.2-2.3.5-3.6 0 0 .5 2-.6 3.4a12.7 12.7 0 01-2.7 3c-1 .7-1 1-1 1.4 0 .4.1.7.3.8.3.2.8.2.8.2z"/>
+  <path fill="#6c4119" d="M244.4 220.5s.2 0 .4-.3c.1-.2.1-.7-.3-1.2a2.6 2.6 0 00-1.3-1l-1.6-.2s.3.6 1 1c.4.2 1 0 1.4.3.3.4.4 1.4.4 1.4z"/>
+  <path fill="#6c4119" d="M244.4 220.5s1.2-.4 1.3-1.6l-.1-1s.2.4.7.6l.4-.2s-.7 2.3-2.3 2.2z"/>
+  <path fill="#bf802d" d="M235.8 220.3l.7.6.7.7 3-.8 1-.9-.9-1.3h-2.1l-2.4 1.7z"/>
+  <path fill="#f9c83a" stroke="#8f4620" stroke-width=".3" d="M243 219.3l-.5-.8s-.2-.3-.6-.5c-.4-.3-2.2-.2-2.2-.2l-1.3.2s-.4.4-1 .2l-2.2-.7-1.4-.7s-1.1-.4-1.4-.3c-.2 0-1 1-1 1s-.3.6.1.6c.3 0-.5.2-.5.2s-2.3 1.2-2.6 3.4c-.4 2.2 3.7 5.5 5.2 3.8 0 0-2.2-1.6-1.8-3 .4-1.3 1.5-2.2 3.2-2.3 1.7 0 1.8-.3 2.6-.8.7-.6 2.1-.9 3.2.2 1 1.1-4 2.1-4 2.1l.6.8s6.1-2.1 5.6-3.2z"/>
+  <path fill="#fcf3d8" d="M231.5 224.5s-2.5-.6-2.3-2.9a4 4 0 012.7-3.2c.4-.1.3-1.3.7-1.4.4-.1 1.2 0 1.6.3.3.4 1.1.7 1.1.7s-4.4 2-4.5 4.5c0 1.7.7 2 .7 2z"/>
+  <path fill="#fdeaaf" d="M243 219s-.3.2-.4 0c-.4-.8-1.5-1-2.4-1-1.1 0-1.9.4-2.7.4l-1.4-.2c-1 0-2.8-1.4-3.3-1.3-.4.2-.6.7-.5 1 0 .2-.8.3-1 0s.7-1.4 1.5-1.4c2.1 0 3.7 1.4 4.7 1.4s1.3-.5 2.7-.5 2.8.6 2.8 1.6z"/>
+  <path fill="#513625" d="M236.2 220.7l1.7-.6 1.8-.6-1.6 1-1.7.4-.3-.2z"/>
+  <path fill="#f9c83a" d="M232.6 225.8c-.1.1-1 0-2.4-.9s-1.8-2.5-1.8-2.5-.3-1.5 1.2-3c1.4-1.6 1.6-1.1 1.7-1v.1l-1.3 1-.7 1.1-.5 1v1l.7 1.2 2 1.3 1.1.7z"/>
+  <path fill="#8b5122" d="M231.9 217.2l-.1-.2v.2-.2.2-.2l-.2.1h.2v-.1l-.2.1.2-.1h-.2v.1l.2-.1h-.2.2l-.2-.1h.2-.2.2-.2.2-.2a3.6 3.6 0 00-.4.5 1 1 0 00-.2.5c0 .2.2.4.3.5h1.2a.2.2 0 000-.3.2.2 0 00-.2-.1h-.5a.6.6 0 01-.3 0v-.1a.4.4 0 010-.2 2.4 2.4 0 01.3-.4v-.1h.1v-.2a.2.2 0 00-.1-.2.2.2 0 00-.2.3.2.2 0 00.3 0z"/>
+  <path fill="#f9c83a" d="M236.1 219.3l-3 .9c-.3.2.9 0 1.8 0a3.5 3.5 0 011.1 0h.7c1.2-.5 3.6-1.4 3.8-.4.2 1-3.3 1.7-3.3 1.7v.3l2.8-.7 1.4-.7.5-.8-1.4-1h-2l-1 .3-1.4.4z"/>
+  <path fill="#8f4620" d="M231.8 223.6c.2.6.7 1.5 1.2 1.8 0 0 .1 0 0 0 0 .2-.4.4-1.3.2-1-.3-2.4-.7-3.3-3.3v.5l.5 1 1 1 1.4 1 1 .2.9-.2.4-.3-.9-.8-1-1.8v.7z"/>
+  <path fill="#fcca3d" d="M241.7 250.1v1h-.6l.1-1.3zm-3.8-27.5l-1-1.1h-.6l1 1.4z"/>
+  <path fill="#816c2a" d="M241.6 252.4l-1.3-.8-2-.5v.3h.2a5 5 0 011.7.5 11.4 11.4 0 011.3.7l.1-.2zm0-2.5h-2.2c-.8.2-1.2.6-1.2.6l.1.2a3 3 0 012.1-.6 17.7 17.7 0 011.1 0v-.2zm-.3-2.1l-2 1-1.4 1 .2.2.4-.3.9-.6a14.7 14.7 0 012-1l-.1-.3zm-1.4-2.2a2 2 0 01-.2 1 6.9 6.9 0 01-.5.6l-1.3 1.4-.7.7.1.2a165 165 0 001.2-1.2l.9-1 .5-.6c.3-.5.3-1 .3-1h-.3zm-1.7-1a3.4 3.4 0 01-.1 1.8l-.8 1.7-.4.8-.1.3h.2s1-1.7 1.3-2.7a3.6 3.6 0 00.2-1.2v-.7h-.3zm-1.7-.2a7.4 7.4 0 000 1 4.5 4.5 0 01-.1 1.3 97 97 0 01-.5 1.5l-.3.8h.2l.8-2.2c.2-.4.2-1 .2-1.5v-.9h-.3zm-1.3 0v1l-.1 1.5a41.4 41.4 0 00-.4 2h.2l.1-.6.3-1.3c.2-.9.2-2.6.2-2.6h-.3zm-1.3.3a9.8 9.8 0 000 2.2c-.3.8-.4 2-.4 2h.3a16.9 16.9 0 01.3-1.9v-2.4h-.2zm-1.1 0v.2c0 .3 0 1-.3 1.8l-.4 1.5-.2.8.2.1.7-2.3a7 7 0 00.2-1.9v-.1h-.2zm-1.3.1v.5c0 .5 0 1.2-.3 1.7-.2.5-.7.9-1 1.2a7.6 7.6 0 01-.7.5h-.1l.1.2s1.4-.8 2-1.8a4.6 4.6 0 00.3-2.3h-.3zm-.7-.2v.1a5.3 5.3 0 01-.8 1.5l-1 1-.5.2-.2.1.1.3s1.2-.7 1.8-1.4c.5-.7.8-1.8.8-1.8h-.2zm-1.2-.6v.1a7.3 7.3 0 01-.4.5c0 .2-.2.4-.3.5l-.8.5a16.2 16.2 0 01-.5.3l.1.2.5-.3.8-.5.6-.7.2-.5-.2-.1zm-.6-.8l-.2.3a13.8 13.8 0 01-.7.7 5.2 5.2 0 01-.4.4l-.3.2v.2l.6-.3 1.2-1.3-.2-.2zm-.2-.5l-.2.2-.7.4-.7.3v.3c.2 0 .3 0 .5-.2l1.2-.8-.1-.2zm-.3-.5l-.6.3a9.3 9.3 0 01-.4.2 1.5 1.5 0 01-.4.2v.2l.5-.1 1-.6v-.2zm-.2-1.1a2.7 2.7 0 01-.5.4l-.7.3v.2c.4 0 .7-.2 1-.4a2.9 2.9 0 00.4-.3l-.2-.2zm0-1.8l-.4.4-.6.8a.4.4 0 01-.1.1v.3l.2-.1a.6.6 0 00.1-.2c0-.2.3-.4.6-.7l.3-.2.1-.2-.1-.2zm8.6-10.2h1.3v-.2.2-.1.1-.1.1-.1l-.1.1v-.1.1-.1h-.1.1-.1v-.1h.1-1.2v.2zm0-.8h.1l.6-.1.8-.5.3-.3a.6.6 0 01.3 0v-.3l-.5.2-.8.5-.7.3v.2zm0-1.2c.1 0 .3 0 .5-.2l1-.6.7-.3v-.3l-.5.2-1 .6-.8.4v.2zm-.5-1l1.2-1 1.3-.9-.1-.2-1.3 1-1.2.8.1.2zm-.8-1.3l2.6-1.9-.2-.2-2.6 1.9.2.2zm-1.2-1.3l1.5-1 1.2-.8-.1-.2-1.2.8-1.5 1 .1.2zm-.8-.7a93.2 93.2 0 012.1-1.5l.6-.4v-.2a6.2 6.2 0 00-.7.3 90.4 90.4 0 00-2.2 1.6l.2.2z"/>
+  <path fill="#78732e" d="M235.6 220.3l.1.1a13.8 13.8 0 012 2c.8 1 1.4 2.2 1.4 3.3v.4a7.7 7.7 0 01-2 4c-1.5 1.9-3.8 3.5-5.6 5.1a14.4 14.4 0 00-2.4 2.5 5 5 0 00-1 2.8v.1c0 1 .4 2 1 2.7a3.5 3.5 0 002.5 1.6 5.5 5.5 0 00.6 0c1.4 0 3-.5 4.5-.5 1.2 0 2.4.3 3.5 1.5 1 1.1 1.3 2.9 1.3 4.6a19 19 0 01-.3 3.3 20.5 20.5 0 01-.3 1.5h.2s.7-2.3.7-4.8c0-1.7-.4-3.6-1.4-4.8a4.7 4.7 0 00-3.7-1.5c-1.6 0-3.1.4-4.5.4h-.6a3.3 3.3 0 01-2.3-1.4 4.9 4.9 0 01-.9-2.6v-.1c0-1.3.6-2.4 1.6-3.5 1.4-1.6 3.6-3.2 5.5-5 2-1.6 3.6-3.5 3.9-6v-.3c0-1.4-1-2.8-1.9-3.9a13.8 13.8 0 00-1.8-1.7l-.1.2z"/>
+  <path fill="#a8ac71" d="M233.7 222.8l-.3-.3-.3.1.5.4zm.8.7l-.2-.2h-.2l.2.3z"/>
+  <path fill="#78732e" d="M235.6 224.8l-.2-.3-.1.2.2.2zm.8 1.2v-.2h-.3l.3.3zm.5 1.2v-.3h-.1v.3zm0 1.2v-.4.4zm0 .7v-.3.4zm-9.7 11.9l.1-.6c.1-.3-.2.1-.2.1v.4h.1z"/>
+  <path fill="#fff" d="M227.1 241.7h-.1v.4h.1v-.4z"/>
+  <path fill="#78732e" d="M227.2 243.1v-.3h-.2v.5z"/>
+  <path fill="#fff" d="M227.3 243.9v-.3h-.2v.3zm.2 1.1l-.1-.3v.4zm.3 1.2l-.2-.4v.4z"/>
+  <path fill="#a8ac71" d="M228.5 247.8l-.1-.3h-.2l.2.3zm1.2 1.1l-.4-.3c-.2-.2-.1.2-.1.2l.3.2.2-.1zm7.8.6l-.3-.2.2.3v-.1z"/>
+  <path fill="#fff" d="M238.2 250l-.3-.2v.2h.2z"/>
+  <path fill="#a8ac71" d="M238.3 250.3l-.2.2.3.2-.1-.4zm0 1.1v-.4c0-.1 0 0 0 0v.4z"/>
+  <path fill="#fff" d="M238 252.6v-.3l-.2.3zm-12-41.7s.5-.1.1.4l.3-.4-.2-.1-.2.1z"/>
+  <path fill="#f9c83a" d="M235.7 220l.3.3-.4-.1.1-.2z"/>
+  <path fill="#8f4620" d="M236 220.3h-.6l.2-.1h.4z"/>
+  <path fill="#977c2e" d="M240.7 255.3s.4 0 .5-.3c.2-.2 0 .3 0 .3l-.3.1-.2-.1z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/my.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/my.svg
new file mode 100644
index 0000000..7ebe064
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/my.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-my" viewBox="0 0 512 512">
+  <path fill="#cc0001" d="M0 0h512v512H0z"/>
+  <path id="a" fill="#fff" d="M0 475.5h512V512H0z"/>
+  <use width="100%" height="100%" transform="translate(0 -73.1)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -146.3)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -219.4)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -292.6)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -365.7)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -438.9)" xlink:href="#a"/>
+  <path fill="#010066" d="M0 0h320v292.6H0z"/>
+  <g fill="#fc0">
+    <path d="M123.8 51.9a93 93 0 00-93.2 92.9 93 93 0 00143.7 78.1 82.7 82.7 0 01-27 4.5 82.5 82.5 0 01-82.7-82.3c0-45.5 37-82.4 82.6-82.4a82.6 82.6 0 0128.7 5A93 93 0 00124 52z"/>
+    <path d="M278.4 193.2L239 172.7l11.6 41.9-26.2-35-8.2 42.6-8-42.7-26.5 35 11.8-41.9-39.3 20.4 29.2-32.8-44.5 1.7 40.9-17.1-40.9-17.3 44.5 1.8-29-32.9 39.2 20.5L182 75l26.2 35 8.2-42.6 8 42.7L251 75l-11.8 42 39.3-20.4-29.2 32.8 44.5-1.7-40.9 17.2 40.9 17.2-44.5-1.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mz.svg
new file mode 100644
index 0000000..113a205
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/mz.svg
@@ -0,0 +1,21 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mz" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#009a00" fill-rule="evenodd" d="M0 0h744v155H0z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 155h744v15.5H0z"/>
+    <path fill-rule="evenodd" d="M0 170.5h744v155H0z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 325.5h744V341H0z"/>
+    <path fill="#ffca00" fill-rule="evenodd" d="M0 341h744v155H0z"/>
+    <path fill="red" fill-rule="evenodd" d="M0 0v496l325.6-248L0 0z"/>
+    <path fill="#ffca00" fill-rule="evenodd" d="M192.3 322.6l-49.6-36.3-49.5 36.3 19.2-58.4-50-36 61.6.3 18.7-58.5 18.8 58.5 61.5-.3-50 36z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M99.6 281.9h35.8c2.9 3.2 9.3 4.5 15.4 0 11.2-6.2 32.9 0 32.9 0l4.3-4.6-10.4-34.1-3.8-4s-8-4.8-23.2-3.2c-15.2 1.6-20.5-.6-20.5-.6S116.7 237 113 239l-4.3 4.3-9 38.7z"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M106.8 273s34.2-4.2 44 8.9c-5.5 3.8-10.4 4-15.7.2.9-1.4 12.3-13.3 41.4-9.3"/>
+    <path fill="none" stroke="#000" stroke-width="1.1" d="M143.4 238.9l-.3 37.6m30.7-37l6.4 29.8"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M113.3 239l-3.5 15.4"/>
+    <path fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M76.4 286l8.4 9.8c1 .6 1.9.6 2.8 0l12.4-15 5.3-6.4a4.1 4.1 0 001-3l10-9c.8.2 1.3.3 2 .3-.9-.3-1.6-.7-.8-1.8l2.2-1.7 1.8 2.2s-2.5 3.3-2.8 3.3H116l-5.3 4.7 2.3 2 3.5 9.5 4.2-3-2.7-9.7 6-6.5-2.3-3.5 1.5-2s20.7 13 28.7 9.5c.2.1.5-9.3.5-9.3s-21.5-2.2-22-6.4c-.5-4.3 4.8-4.8 4.8-4.8l-2.3-3.2.5-1.8 3.8 4.8 8.4-7.3 49.9 56.9c2.7-1.1 3.3-1.8 3.5-4.5L150 234l3.8-4c.7-.8 1-1.2 1-2.5l5.7-5a7.1 7.1 0 013.7 3l15.8-13.3c.4.4 1.7.8 2.5.3l26-25-28.3 20-1-.7c0-.8 1-1 0-2.5-1.1-1.3-2.8 1.3-3 1.3s-4.1-1.4-5-3.1l-.2 4.6-7.3 6.7-5.5-.2-8 7.7-1 3 1.3 2.5s-4.2 3.7-4.2 3.5c0-.3-.9-1.1-1-1.3l3.7-3.2.5-2.3-1.2-1.9c-.4.3-5 5.2-5.3 4.7L129.7 211l.7-2.8-8.5-9.2c-3-1-8-1.2-9 5.5-.7 1.6-7.2.2-7.2.2l-3.4.8-19.7 27.9 11 13.2 22.4-28.4.6-8 4.7 5.2c1.6.2 3.1.2 4.5-.5l13.3 14.8-2.2 2.2 2 2.2 2.2-1.6 1 1.3c-1.2.6-2 1.4-3 2-1.9-1.1-3.6-2.6-3.4-4.9l-7.5 6.2-.3 1.3-22.2 18.4-2 .3-.5 5.7 14.5-12v-1.7l1.5 1.2 11.2-9s.8 1 .5 1-10 9-10 9l-.2 1-1.7 1.5-1-.7-13.5 12h-2l-7.5 7.4c-1.9.2-3.6.4-5.2 1.5l-13.4 12z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/na.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/na.svg
new file mode 100644
index 0000000..b934fc1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/na.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-na" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#3662a2" d="M-108.2.2l.8 368.6L466.6 0l-574.8.2z"/>
+    <path fill="#38a100" d="M630.7 511.5l-1.4-383.2-579 383.5 580.4-.3z"/>
+    <path fill="#c70000" d="M-107.9 396.6l.5 115.4 125.3-.2 611.7-410.1L629 1.4 505.2.2l-613 396.4z"/>
+    <path fill="#ffe700" d="M154 183.4l-23.1-14-13.4 23.6-13-23.8L81 183l.6-27.1-27 .2 14-23.2L45 119.5l23.8-13L55 83l27 .6-.1-27.1 23.2 14 13.4-23.6 13 23.7L155.2 57l-.6 27 27-.1-14 23.2 23.6 13.3-23.8 13.1 13.7 23.4-27-.5z"/>
+    <path fill="#3662a2" d="M167.8 120c0 27.2-22.3 49.3-49.8 49.3s-49.7-22.1-49.7-49.4 22.3-49.3 49.8-49.3 49.7 22 49.7 49.3z"/>
+    <path fill="#ffe700" d="M157 120a39 39 0 11-77.9 0 39 39 0 0177.9 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nc.svg
new file mode 100644
index 0000000..2bdf6ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nc.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-nc" viewBox="0 0 512 512">
+  <path fill="#009543" stroke-width=".8" d="M0 0h512v512H0z"/>
+  <path fill="#ed4135" stroke-width=".8" d="M0 0h512v341.3H0z"/>
+  <path fill="#0035ad" stroke-width=".8" d="M0 0h512v170.7H0z"/>
+  <circle cx="225.6" cy="256" r="167.8" fill="#fae600" stroke="#000" stroke-width="5.7"/>
+  <path stroke="#000" stroke-width="6.8" d="M197.2 281h56.9m-56.9-42h56.9M225.6 88.6v286.8"/>
+  <path stroke-width="1.1" d="M158 410c68.6 28 132.8 1.8 132.8 1.8s-24.3-26.2-36.7-36.5c-12.1-10-47.8-9.6-60 0-10 8-39.2 37.5-36 34.8z"/>
+  <ellipse cx="225.6" cy="333.4" stroke-width="1.1" rx="18.8" ry="27.3"/>
+  <ellipse cx="225.6" cy="260" stroke-width="1.1" rx="22.8" ry="14.4"/>
+  <circle cx="225.6" cy="193.4" r="22.8" stroke-width="1.1"/>
+  <path stroke-width="1.1" d="M253 108.7s2 3.2-2.2 10.7c-19.9 35.7-39.7 36.5-43.5 39.5-4.2 3.4-6 3.2-6 3.2.4-3 .6-15.6.8-16.8 3-16.6 28.3-16.4 48-33.5 3-2.7 2.8-3.2 2.8-3.2z"/>
+  <path d="M265.5 163s4 11.2 4.5 22.5c1 18 18.2 18.5 30 18.5v-10c-8.9 0-16.6-1.3-23-14.5a115 115 0 00-11.5-16.5zm-.5 145s6.3-7.8 13.7-26c3.8-9.5 13-15 21.3-15v-14c-19 0-28.2 7-29.1 17.4-2 21.1-5.9 37.6-5.9 37.6z" transform="translate(-115.7) scale(1.13778)"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 451.3 0)" xlink:href="#leaf"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ne.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ne.svg
new file mode 100644
index 0000000..e76e44c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ne.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ne" viewBox="0 0 512 512">
+  <path fill="#0db02b" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v341.3H0z"/>
+  <path fill="#e05206" d="M0 0h512v170.7H0z"/>
+  <circle cx="256" cy="256" r="72.5" fill="#e05206"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nf.svg
new file mode 100644
index 0000000..2149522
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nf.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nf" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M155.8 0h200.4v512H155.8z"/>
+    <path fill="#198200" d="M0 0h155.8v512H0zm356.2 0H512v512H356.2z"/>
+  </g>
+  <g fill-rule="evenodd" stroke="#000" stroke-linejoin="round">
+    <path fill="#198200" stroke-linecap="round" stroke-width=".7" d="M243 332.4v41l16.5.2s-5.3-35.8-2.4-40.6c3-4.7 5.7-4 5.7-4s10.8 3.2 12 2.7c1.2-.5-.2-4.1 5.6-3.6 1.9-.7.9-4 2.6-4.1 1.7-.2 34.7 9.2 41.8.3-1.8-5-8.3-.3-10-.2-1.6 0-8-3-11.8 0-3.5-2.5-19-4.2-19-4.2-2-2 37 1 39.3-.5 4.6-4.6-8.5-4.1-10.6-2.6-3.6-2.2-8.2-2-11-.5-1.4-3.2-14-1.8-21.1-2.7-2.3-1.4-2-2.1-.4-3 14.8.7 29.5 2.6 44.3 2 4-5.3-5-7.3-10.6-2.8-3.3-5.4-10-.2-14.4-.7-4.4-.5-2.4-6 3.3-5.1 5.6.8 15.7-.4 17.6-3 1.9-2.5-1.1-5.1-10.4-2.7-3.2-3-10.1 0-13.4 1-4.3-2.3-14.3-.3-17.7.6-3.4-2.1 17.6-5.5 17.6-5.5 8-.1 12.6-1.5 15.2-2.2 12.2-6.6-.2-7.3-6.6-2.5-4-3.1-7.8.3-11.4 1.5s-10.4 2-10.4 1.5 9.8-6.5 9.8-6.5 12-.9 14.3-1.2c2.4-.3 14.7-6.6-2-2.4-5.8.5-9.3.2-11.5.3-12.9-1.3 1.2-2.5 1.2-2.5s18.2-1.7 18.5-2.6c.3-7-15-3.7-15-3.7 0-5.1-14.3.1-14.3 0-2.7-1.6 1.6-3.3 1.6-3.3 3.7-.9 9.4-1.2 10.8-2.4 0 0 10.6 0 11.9-2.9-2.6-7.2-22.5 1.3-25.1 2.6-3.6 0 2.4-5.8 2.5-6 .2-.2 16.4-.9 24.1-11.3.6-6.3-9 3.6-9 3.6-.7-8.2-10.4.5-16 1.2-5.7.7-5.9-2.6-2-3 4-.6 8.4-.2 10.6-6.2 2.3-6 9 .3 10.1-2 1.2-2.1-2.4-4-2.4-4s5-5.1-3-5c-8 .2-18.5-1-18.5-1s8.4-3.2 16.2-3c7.9.1 3.6-5.7-4-5.7-7.4 0-11.4-2.6-11.4-2.6l12.9-4.8-.9-3.6s7.5-6-3-4.6l-11.9 1.6-21.3 3.2c-.2 0-5.8-1.7-.4-3 5.5-1.4 24.8-5.4 27.7-4.3 3 1-.3-7.2-10.6-8.2-10.2-1-16.6 2.5-16.6 2.5s-6.6-2.4-.5-4.4c6.2-2 16 .7 16 .7s10.9-3.3 1.8-4.7c-9-1.3-12 1.3-16 1.4-1.7-2 14.2-2.5 15.2-4.3-1.7-3-11.6 0-17.3 0-2.5-1-2.6-2.7.2-3.7 5.8-.2 11.3.1 17.2-.1-.2-3.2 0-6.9-.1-10-7.5-1.4-16.2 1-20.4.8 1.1-3.4 17.2-4.3 19-5.2 3.7-4.7-15.7 0-16 0-3.3-.5-3-2.7-1-4 5-.5 16.1.7 15.3-2.6-.7-3.2-7.7-1.5-10.6-.8-3 .7-7.2.2-7.2.2-1.9-2.5 16.7-1.5 16.6-3.4-.3-2.3-11.8-.7-15.7-.6-3.1-2 14.7-3.5 15-3.7.6-5.7-12 0-14.4 0-2.4 0-1.2-3.6-1.2-3.6s5-2.2 4.8-2.6c-.1-.3-3.7-1.5-4-1.5-.4 0 0-4 0-4s4-3 3.7-3.9c-.4-.8-4.8.7-4.8.7v-3.4s3.2-.4 3.6-1.9c.3-1.5-4-1.7-4-1.7l-1.6-18-1.6 16.8-5.6.9s3.9 2.2 4.6 4.4c.7 2.2-4.8 1.5-4.8 1.5s4.4 3.8 4.8 5.2c.3 1.3-6.2 1.7-6.2 1.7s5.5 4 5.8 6.1c.4 2.3 0 3.5 0 3.5s-9-8-14.8-5.7c-3 1.6 6.9 2.3 13.5 8 0 1.3-16-3.9-16.6-.6.4.9 17 3.3 18.3 5.4-6.1.3-18.7-1.3-18.3.7-1.3 2.3 11.9 1 17.4 3 1.6 1.8 1.5 3.3-1.3 3.5-5.4-2.5-17.3-4.4-17.3-1.2 0 .9 12.3.3 16.7 3.3-5.9 1.3-26-2.8-26.1-.8.6 1 3.8 5 9.2 4.9 5.5-.2 18.1 2.2 19 3.9.8 1.7-16.4-3.6-23-.5s18.7 1.2 22.8 5-8.2-.4-8.2-.4-17-2.4-19.6-1.2c-2.6 1.2-5.5 4-5.5 4s1.7 3.4 3.4 2.7c1.7-.7-.5 2-.5 2s24 5.8 29.2 11c5.3 5-30.4-8-30.4-8s-14.4 5.2.8 5.6c-1.7 2.5 1 4 1 4s25.2 5.4 27.8 9.5c2.5 4-17.3-4-21.7-6.2-4.5-2.2-17.1 1.4-17 2.2.2.9 6.2 2.1 6.4 3.6.1 1.6-7.4 2-7.4 3.4s32 8 40.5 15.3-25.1-8.6-25.1-8.6 1.9 2.6 0 3.3c-1.9.6-8.6-9.6-19.5-3.3-2 2.6 9.6 4.7 12.5 5-1 2.5-1.9 3.4 2.2 6 4.1 2.5-8-3.8-8-3.5l.8 4.5c-3.8-3-8.3-4-12.6-.9 0 0-.2 3.1 4.3 5-2.5 5 2.7 3.4 10.9 8-12.2-3.2-13.2 2.8-4.5 4.1 8.8 1.4 32.7 2.2 38.3 9.6 5.7 7.3-8-2.8-9.5-3a16 16 0 00-.7 3.7 37 37 0 00-11.4-5c-.3.8-.2 1.7-.6 2.4-4-2.8-7.4-4.8-13.1-5.1l-.7 2.7s-4.8-6-14.2 0c-5.3 3.8 19.8 1.4 24 5.8 4 4.5.8 5.2.8 5.2l-10.3-3.8s-12.1-2.2-15.5.5c-3.5 2.7 49.9 9.4 51.4 16.8 1 4-12.5-4.2-24.3-7.7l-1.3 4s-4.7-4.8-10-5.6l1 4.6s-13-6.1-19.7-2.9c-6.7 3.3 23.2 5 26 8 2.7 3.2-9.1-2-10.2 0-1 2.1-15.5-3.7-15.3-1 .1 2.8 2 4.3 2 4.3s30.3 3 31.3 6.5c1 3.6-16.8-2-16.8-2s-1.7 2.5-.3 3.7c1.4 1.2-10.3-6.8-9.2-1.5-3.8-1.5-13.5-6.2-12.2-2.6 1.4 3.6 27.6 8.7 27.6 8.7s-11.5.9-11 3.8c-14.7-9-14.3-3.2-14-3 .3.1-19-4.9-4.4 3 14.5 7.9 7.8 6.5 8 6.7.2.1 1.5 4 1.2 4-.4 0-10-5.2-13.2-5.6-3.2-.3-18.6 4.3-2.2 11.5 16.4 7.2 26.5-1.7 35.6-.7 9 1 13.3 2.6 12.4 5.5-.8 2.9-9.2-9.6-18 1.2-10.1-2-17-3.1-11.8 4.2-16.4-6-26.4 2-5.7 5.2 20.3.6 32.8-5 32.8-5s3.4 6.3 8.4 1.9c5-4.5 5.1 1.7 5.3 1.7l4.8-2h1.2z"/>
+    <path fill="#fff" stroke-linecap="round" stroke-width=".8" d="M245 308v-2.8s-6.5-1.1-9.6-.5c-2-1-3.7-2.5-5.9-1.3-.4 1 4 3.4 5.6 3.4 1.8 1.1 9.9 1.4 9.9 1.3zm-.1 4.7s-6.5-2.3-9 .4c.4 2.9 7.6 4.3 9 3.5 1.6-.8 0-3.7 0-3.9zm10.9 1.2v2s7.7 1.5 9-.2c1.4-1.6-6-2.7-9-1.8zm-.4-8l.3 2.3s6.7 1.5 9.2-2.2c2.6-3.6-5.8 0-9.5-.1zm.4-7.8v1.5s5 .8 6.1-1.3c1.2-2.2-6 0-6.1-.2zm-10.5-4.6c-.8-1-3.5-3.8-10.8-4.6-5 0 9.2 7.5 10.8 4.6zm10.3-7.6l-.2 2s17.2-5 21.2-4.7c3.6-1 4.3-3.5 4.2-3.5-3.1-2.2-17.9 1.8-25.2 6.2zm.4-6l-.2 2s12-2.4 15.3-4.7c3.2-2.3-15 2.7-15.1 2.6zm-.5-6v2s8-.2 9.7-1.9c1-1.6-7.1-.2-9.7-.1zm16.8 17s4.2.5 5-.7c-.1-2.2-5 .7-5 .6zm-16.5-24.5l.1 4.4s19.4-6.2 20.6-7.3c1.2-1.1 4-4.6-20.7 2.9zm-.5-6.2v3.2s7.8-.5 11.4-3.5c3.5-3-11.4.4-11.4.3zm-9.4-7.3l.5 3-25.6-8.4s-1.3-4.2 25 5.4zm.4-10.3c0 .3 0 2.8-.1 2.7 0 0-17.8-7.4-18.5-6.8-2.3-5.5 18.6 4.2 18.6 4zm8.7 4.6l.3 2.5s10.9-2.3 11.5-3.4c.6-1-11.8 1-11.8.9zm.2 5.8l.4 2.5s4.3-.3 5-1.3c.6-1-5.4-1.2-5.4-1.2zm-.6-13.3v2.5s12-2.4 13.3-3.5c1.3-1.2-13.6 1-13.3 1zm0-6.6c0 .2-.4 2.5-.1 2.5a69 69 0 0016.7-4.5c2.3-2-16.4 2.3-16.6 2zm-.2-11.6v2.5s9.2-1.9 11-3.8-11 1.5-11 1.3zm-1.6-16.9l.3 3.8s12.3-1.7 14.1-3.8c1.8-2-14.4 0-14.4 0zm-5.7-28.4v2.4s-5.9-.3-4.4-1.3c1.4-1 4.4-.9 4.4-1zm5.5 3.2v3.2s7.7-.7 8.3-2c.5-1.1-8.2-1.2-8.3-1.2zm-.5 4.6l.3 2c.1 0 3-.2 3.6-1s-3.6-.8-3.9-1zm-6.4 9.2c0 .2.2 3 0 3 0 0-16.5-4.8-18-4.7-1.6 0-2-3.8 18 1.7zm1.3 5.4c0 .5.4 3.5-.2 3.4-.6-.1-11.2-3.5-10-4.5 1-1 10.2 1.3 10.2 1zm-.9 22.6v2.7s-18.4-5.6-19-6.5c-.7-1-2.5-5.3 19 3.8zm.7 6.6c0 .1.2 2.6 0 2.6l-25-8.8s-2-6.6 25 6.2z"/>
+    <path fill="#fff" stroke-width=".8" d="M217 314.7v2.8s-5-1.4-6.5-4.1c2.9-.8 6.6 1.4 6.5 1.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ng.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ng.svg
new file mode 100644
index 0000000..57d65d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ng.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ng" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#008753" d="M341.3 0H512v512H341.3zM0 0h170.7v512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ni.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ni.svg
new file mode 100644
index 0000000..8f68d42
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ni.svg
@@ -0,0 +1,129 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ni" viewBox="0 0 512 512">
+  <defs>
+    <linearGradient id="f" x1="498.7" x2="500.6" y1="289.1" y2="283.4" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#510000"/>
+      <stop offset=".3" stop-color="#8a0000"/>
+      <stop offset="1" stop-color="#a00"/>
+    </linearGradient>
+    <linearGradient id="g" x1="501.4" x2="502.9" y1="291.4" y2="287.4" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#ff2a2a"/>
+      <stop offset="1" stop-color="red"/>
+    </linearGradient>
+    <linearGradient id="b" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#F5F549"/>
+      <stop offset="1" stop-color="#97C924"/>
+    </linearGradient>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#025"/>
+      <stop offset=".5" stop-color="#04a"/>
+      <stop offset="1" stop-color="#025"/>
+    </linearGradient>
+    <linearGradient id="h" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="v" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="o" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="p" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="q" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="r" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="u" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="x" x1="98.9" x2="125" y1="1440.2" y2="1440.2" gradientTransform="scale(4.45715 .22436)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="l" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="m" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="s" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="y" x1="47.9" x2="61.7" y1="3054.2" y2="3054.2" gradientTransform="scale(9.12405 .1096)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <clipPath id="c">
+      <path d="M500 226.4l-63.7 110.3h127.4z"/>
+    </clipPath>
+  </defs>
+  <path fill="#0067c6" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path fill="#c8a400" d="M179.2 255.4l8.5.6.1-1.3-3.4-.2.3-4 3.6-2.6v-1.6l-3.7 2.7c-.1-.9-.6-1.8-1.5-2.1-.8-.3-1.7-.4-2.4.2-.8.6-1 1.8-1.1 2.7l-.4 5.6zm1.3-1.1l.3-4.2c.1-.7.2-1.5.8-2a1 1 0 011.6.6c.5 1 .3 2.2.2 3.3l-.2 2.5-2.7-.2zm-.2-12l8.3 2 2-8.1-1.3-.3-1.6 7-2.5-.7 1.4-6.2-1.1-.3-1.5 6.2-2.2-.5 1.5-6.6-1.2-.3-1.8 7.8zm3-11.1l8 2.8.5-1.2-3.2-1 1.3-3.7c.2-1 .4-2.2-.2-3.1a2.6 2.6 0 00-2.1-1.1c-1 0-1.7.7-2.1 1.5-.6 1.1-1 2.4-1.4 3.6l-.8 2.2zm1.6-.8l1.3-3.6c.2-.7.6-1.4 1.3-1.6.6-.2 1.3.3 1.3 1 .2 1-.3 2.2-.7 3.2l-.6 2-2.6-1zm2.9-9.5l4.5 2.6c.9.5 2 .8 2.9.2 1.2-.6 2-2 2.6-3.1.4-1 .8-2.3.2-3.4-.7-1-1.9-1.5-2.9-2.2l-3-1.7-.5 1c1.4 1 2.9 1.8 4.3 2.6.7.4 1.3 1.2 1.1 2a6 6 0 01-1.2 2.7c-.5.7-1.3 1.2-2.1 1-1-.1-1.6-.7-2.4-1.1l-3-1.7-.5 1zm6.1-10l6.8 5.1 3.1-4.1c.6-.9 1.2-2 .8-3a2.6 2.6 0 00-2.2-1.6c-.4 0-1 .2-1.2.4.2-1-.5-1.8-1.3-2-1-.4-2 .3-2.7 1-.8.8-1.5 1.8-2.2 2.7l-1.1 1.4zm1.7-.3l2.4-3c.4-.5 1-1 1.6-.7.6.3.7 1 .4 1.4-.4 1-1 1.6-1.6 2.4l-1 1.3-1.8-1.4zm2.8 2l2.4-3c.5-.5 1-1.1 1.7-1 .6.2 1 .8.9 1.4-.4 1.1-1.2 2-1.9 3l-1 1.3-2.1-1.6zm3.2-10.8l5.8 6.2 5-4.8-.8-.8-4 3.8h-.2l-5-5.3zm7.5-6.6l5.2 6.8 1-.8-5.2-6.8zm7.6-5.2a7.2 7.2 0 00-2 1.9 3.8 3.8 0 00-.2 4.5 4.4 4.4 0 001.7 1.6c.7.3 1.4.5 2.2.4a7.7 7.7 0 005-3.3 3.7 3.7 0 00.3-2.5l-1.2.5c.3 1.7-.8 2.5-2 3.3-2 1.1-3.8 1-5-.7-1.1-2 .2-3.6 1.8-4.7 1.2-.7 2.3-1.2 3.4-.5l1-.8a3.4 3.4 0 00-2.2-.6c-.9 0-1.8.3-2.8 1zm10.1-5l-.9 9.5 1.4-.5.2-3 4.4-1.7 2.2 2 1.3-.6-7.2-6.3-1.4.6zm1.2 1l2.8 2.4-3.2 1.3.4-3.7zm17.5-6.3l.6 8.5 4.6-.3c1.2-.1 2.5-.4 3.3-1.4a5 5 0 00.8-4.4 3.8 3.8 0 00-3-2.5c-1.2-.3-2.5-.1-3.9 0l-2.4.1zm1.3 1.1l3.7-.2a3.1 3.1 0 012 .6 2.9 2.9 0 011.2 2.7 2.9 2.9 0 01-2 2.6l-2 .3-2.5.1-.4-6zm10.6-1.6l-.5 8.5 8.3.5V187l-7-.4.2-2.6 6.3.4.1-1.2-6.3-.4v-2.3l6.9.4v-1.2l-8-.5zm22.3 3.6l-3 8 1 .3 2.5-6.3v-.3l.2.4 3 8.4 1.4.6 3-8-1-.4-2.5 6.3v.3l-.2-.3-3-8.5zm11.5 4.9l-4 7.6-1-.6 3.8-7.6zm6.4 3.8a7.2 7.2 0 00-2.5-1.1 3.8 3.8 0 00-4.2 1.7 4.4 4.4 0 00-.8 2.1c0 .8.2 1.6.6 2.3a7 7 0 002.2 2c1 .7 1.9 1 2.8 1.1 1 0 1.7-.2 2.5-.7l-1-1c-1.4 1-2.6.4-3.8-.4-1.9-1.2-2.6-3-1.5-4.7 1.3-2 3.4-1.5 5-.4 1.2.7 2.1 1.6 2 2.9l1 .5a3.4 3.4 0 00-.3-2.3 5.8 5.8 0 00-2-2zm8.1 6l-8.9 3.6 1 1 2.8-1.1 3.6 3-.7 3 1 .9 2.3-9.4-1-1zm-.3 1.6l-1 3.6-2.5-2.2 3.5-1.4zm6.8 4.4l-6.6 5.4.8 1 2.6-2.1 2.6 3.1-.8 4.3 1 1.3.8-4.6c.8.6 1.9 1 2.7.4.8-.3 1.5-1 1.5-1.9.1-1.2-.7-2.1-1.4-3l-3.2-3.9zm-.2 1.7c1 1.2 2 2.3 2.8 3.5.4.6 1 1.4.4 2.1-.3.6-1.2.6-1.7.2-1-.7-1.7-1.8-2.6-2.7l-1-1.3 2.1-1.8zm10.1 11.9l-9.6.4.8 1.3 3-.2 2.3 4-1.7 2.6.8 1.2 5.2-8-.7-1.3zm-.8 1.3l-2 3.1-1.7-3 3.7-.1zm6.3 10c-.5-1.5-1.4-3-2.8-3.7a4 4 0 00-4.8 1c-1 1.2-1 2.8-.8 4.2a9 9 0 002.2 4.5l-.6.2.4 1.1 4-1.4-1.6-4.3-.9.3 1.2 3.2-1.4.5a7.5 7.5 0 01-2.2-4c-.3-1.2-.3-2.6.6-3.4 1-1 2.7-1.4 4-.5a6.2 6.2 0 012 3.6c.3.9.3 2-.4 2.7-.2.1 0 .3.1.5l.4.5a3 3 0 001.1-2.4c0-.9-.2-1.8-.5-2.6zm2.5 6.7l-4.8.9c-.9.2-1.5.4-2 .8-.4.4-.7.9-.9 1.6a6.8 6.8 0 00.1 2.6c.2 1 .5 1.8 1 2.4.3.6.8 1 1.3 1.2.6.1 1.3.2 2.2 0l4.7-1-.2-1.2-4.6 1c-2.1.3-2.8-.8-3.2-2.6-.4-2-.1-3.2 2-3.6l4.6-1-.2-1.1zm2.6 14.5l-8.8-3.8v1.4l2.8 1.2.3 4.6-2.5 1.6.1 1.4 8.2-5-.1-1.4zm-1.3.8l-3.2 2-.3-3.5 3.5 1.5zm-145.6 21.3l-1.2.3 1.3 5.2 1.3-.3zm140.4 0l1.2.3-1.3 5.2-1.3-.3zM199 293.5l-9.5 1.1.8 1.2 3-.3 2.5 3.9-1.4 2.6.8 1.2 4.6-8.5-.8-1.2zm-.7 1.4l-1.8 3.3-2-2.9 3.8-.4zm4.4 3.9l-6.1 5.6.8 1 5.1-4.9-2.7 7.4 1 1 7.3-2.2-5 4.7.8.8 6-5.6-1.2-1.4-7.4 2.3 2.8-7.3zm8.8 9l-5.1 6.8 6.6 5 .7-1-5.6-4.2 1.6-2 5 3.7.8-1-5.1-3.8 1.4-1.8 5.4 4.1.7-1-6.4-4.8zm8.4 6.1l-4 7.5 1 .6 1.6-3 3.7 2 .8 4.3 1.4.7-.9-4.5c1 .3 2 .1 2.7-.6.5-.6.9-1.5.6-2.3-.3-1.1-1.4-1.7-2.3-2.2l-4.6-2.5zm.5 1.7l3.9 2c.5.5 1.3 1 1.2 1.8 0 .7-.8 1-1.4 1-1.3-.3-2.3-1-3.4-1.6l-1.6-.8 1.3-2.4zm9.1 3.3l-3.2 8 1.2.4 3.2-7.9zm7.7 2.7a7.2 7.2 0 00-2.7-.4 3.8 3.8 0 00-3.6 2.7 4.4 4.4 0 00-.2 2.3c.2.8.6 1.5 1.2 2a7 7 0 002.6 1.5c1.1.4 2.1.4 3 .3a3.7 3.7 0 002.2-1.4l-1.1-.6c-1.2 1.3-2.5 1-3.9.6-2.1-.8-3.2-2.3-2.6-4.3.7-2.2 2.8-2.2 4.7-1.6 1.3.4 2.4 1 2.6 2.3l1.2.1a3.4 3.4 0 00-1-2 5.8 5.8 0 00-2.4-1.5zm8.6 2l-5.6 7.7 1.4.2 1.7-2.4 4.6.7 1 2.8 1.4.2-3.1-9-1.4-.3zm.5 1.4l1.2 3.5-3.4-.5 2.2-3zm19.5-1.4a7.2 7.2 0 00-2.6 1 3.8 3.8 0 00-1.8 4.1 4.4 4.4 0 001 2c.5.7 1.2 1 2 1.3.8.2 1.8.2 3 0a5.8 5.8 0 002.7-1.3 3.7 3.7 0 001.3-2.2H270c-.3 1.7-1.6 2-3 2.4-2.3.4-4-.4-4.4-2.4-.4-2.3 1.4-3.4 3.3-3.8 1.3-.3 2.6-.3 3.3.7l1.2-.4a3.4 3.4 0 00-1.8-1.3 5.8 5.8 0 00-3-.1zm5.7-1l2.4 8.2 8-2.4-.4-1.2-6.7 2-.8-2.4 6.1-1.9-.3-1.1-6.1 1.8-.7-2.2 6.5-2-.3-1.1-7.7 2.3zm9.2-3l3.6 7.8 1-.5-3-6.4 8.3 3.8h.6l1-.6-3.5-7.7-1 .5 2.9 6.4-8.5-3.9-1.4.7zm9.4-4.3l.7 1 3-2 .1-.1 4 6.1 1-.7-3.9-6v-.2l3.1-2-.6-1zm8.6-6l5.8 6.4.9-.9-2.3-2.4 3-2.8 4.4.5 1.1-1-4.6-.6c.6-.8.8-2 .3-2.8-.4-.7-1.1-1.3-2-1.3-1.2 0-2 .8-3 1.6l-3.6 3.4zm1.7.1l3.3-3c.5-.4 1.4-1 2.1-.5.6.4.6 1.2.2 1.8-.6 1-1.6 1.8-2.5 2.7l-1.2 1-1.9-2zm8.2-10l3.8 8.9 1-1.1-1.3-2.8 3-3.6 2.9.7.9-1.2-9.4-2-.9 1.2zm1.5.4l3.7.7-2.2 2.7-1.5-3.4zm2.2-5.2l7.2 4.7 3.7-5.8-1-.7-3 4.6v.2l-.2-.1-6-4z"/>
+  <g clip-path="url(#c)" transform="translate(-170.7) scale(.85333)">
+    <path fill="#fff" d="M500 226.4l-31.5 54.5-15.4 26.7h93.8l-14.7-25.4-32.2-55.8z"/>
+    <g id="e">
+      <g id="d">
+        <path fill="#17c0eb" stroke="#17c0eb" stroke-width=".1" d="M500 226.4l-2.4 4 2.4 55 2.4-55z" opacity=".6"/>
+        <path fill="#fff" d="M500 277.5h-.1l.1 3 .1-3h-.1z"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(72 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(144 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-144 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-72 500 285.5)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(8 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(16 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(24 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(32 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(40 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(48 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(56 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(64 500 285.5)" xlink:href="#e"/>
+    <path fill="red" d="M500 265.8a44.2 44.2 0 00-29 10.8L456.4 302a45 45 0 00-.8 8.3h5a39.4 39.4 0 0178.7 0h5a45 45 0 00-.7-8.3L529 276.6a44.3 44.3 0 00-29-10.8z"/>
+    <path fill="#f60" d="M500 266.7a43.5 43.5 0 00-30.3 12.2l-12 20.9a43.6 43.6 0 00-1.3 10.4h4.3a39.4 39.4 0 0178.6 0h4.3a43.9 43.9 0 00-1.3-10.5l-12-20.8a43.5 43.5 0 00-30.3-12.2z"/>
+    <path fill="#ff0" d="M500 267.5a42.7 42.7 0 00-32 14.3l-8.7 15a42.7 42.7 0 00-2 13.5h3.3a39.4 39.4 0 0178.7 0h3.5c0-4.7-.8-9.2-2.1-13.4l-8.8-15.1a42.6 42.6 0 00-31.9-14.3z"/>
+    <path fill="#0f0" d="M500 268.3a42 42 0 00-34.9 18.6l-2.8 4.9a41.8 41.8 0 00-4.3 18.5h2.7a39.4 39.4 0 0178.6 0h2.7a41.8 41.8 0 00-4.3-18.5l-2.8-5a42 42 0 00-34.9-18.6z"/>
+    <path fill="#0cf" d="M500 269a41.2 41.2 0 00-41.2 41.3h1.9a39.4 39.4 0 0178.6 0h1.9A41.2 41.2 0 00500 269z"/>
+    <path fill="#00f" d="M500 269.8a40.4 40.4 0 00-40.4 40.4h1.4a39 39 0 1178 0h1.4A40.4 40.4 0 00500 270z"/>
+    <path fill="purple" d="M500 270.7a39.6 39.6 0 00-39.6 40.3h.8v-.8a38.8 38.8 0 1177.6.8h.8v-.8a39.6 39.6 0 00-39.6-39.6z"/>
+    <path fill="#510000" d="M500.4 288.1c-.7 0-1.2-.5-1.8-.6a2.2 2.2 0 00-.7 2.1c.3.1.3.4.9.9s.5.7.4 2c0 .4.1 1.5.6 1.6.5.1 1-.3 1.1-1.2.1-.7.4-1.2.7-1.6.3-1.9-.2-2.6-1.2-3.2z"/>
+    <path fill="red" d="M497.2 283.5c-.6 0-1.6 1-2 .5-.2-.3-.3-.9 0-1.4a4.8 4.8 0 012.2-2.3c2.3-1.4 3.9-1 5 1 1.1 1.8 2.2 3.8 2.3 5.4 0 .5.3 1.4-.2 1.9-1.3 1.4-4.6-1.5-6.5-1-.6.1-1.4.6-2 .2-.4-.3 0-1 .3-1.3.6-.5 1.5-2.4 1.4-3.2 0-.4 0 .2-.5.2z"/>
+    <path fill="url(#f)" d="M497 282.6c-1.2.4-1 1-1.6 1.5.2.1.8.3 1.4-.3.2-.2.5-.3.7-.3l-.7.7a5.2 5.2 0 00-1.4 1.8c-.3.8-.4 1.7-.3 1.8 0 0 .4.8 1.5 1.2 2 .8 2.4 2.5 4.5 2.5 1.6 0 1.4-1.1 2.7-.9 1 .2 1.7-.7.6-1.2a14 14 0 00-5.4 0c-.4-4 0-2.6-.1-4.4-.1-1.7-.7-1.8 0-3.3-.5 1-1.2.8-2 .8z"/>
+    <path fill="#ff2a2a" d="M501 279.8l-.1.6.3 1 .2 1c0 .3.4.4.7.6.4.3 0 1 .3 1.1.2 0 .5-1 .5-1.2v-.7a15.3 15.3 0 00-.5-.9 3.6 3.6 0 00-.2-.3 4.2 4.2 0 00-.8-.9 4 4 0 00-.3-.2l-.2-.1z"/>
+    <path fill="url(#g)" d="M501.3 287.4l-2-.7c-1.3-.4-2.6-1.2-3.5-.8-.3.1-.3.4-.4.9 0 .5-.5 1.3 0 1 .6-.4 2.4.8 3 1.1.3.2 1 .6 1.1 1 .2.6 0 1.8 0 2.4 0 .5.2 1.8.7 2 .6.1 1.1-.4 1.3-1.3.3-.9.4-1.4.8-1.9s.8-.8 1.3-.9c.6 0 1.4.5 1.4-.2 0-.4-.4-.8-.2-1.4.1-.5-.4-.4-.9-.6l-2.7-.6z"/>
+    <path fill="#910000" d="M498.4 288.9c-.4-.2-2.3-1.5-3-1-.3 0-.4 0-.4-.3l.2-.9c0-.3.2-.8.5-1 .7-.6 2.3.5 3.1.8l-.4 2.4z"/>
+    <path fill="#ff3a3a" d="M501.8 291.4c.9-1.6 1.5-1.4 2.6-1.4.4 0 .5-.3.4-.7-.3.6-1.7 0-2.5.3-1.5.7-1.2 3.7-2 4 .8.7 1.1-1.7 1.5-2.2z"/>
+    <g fill="url(#h)">
+      <path fill="#fff" d="M453.1 307.6l-10 17.3H557l-10-17.2h-93.8z"/>
+      <g id="n" fill="url(#i)">
+        <path id="k" fill="url(#j)" d="M449.7 321.4a36 36 0 00-4.7.3l-.5.9c2.4-.3 4.7-.7 7.2-.7 3.2 0 6.2.8 9.7.8h4.6c3.5 0 6.4-.8 9.7-.8 3.3 0 6.3.8 9.8.8h4.6c3.5 0 6.4-.8 9.7-.8 3.3 0 6.3.8 9.8.8h4.5c3.5 0 6.5-.8 9.8-.8 3.3 0 6.3.8 9.8.8h4.5c3.5 0 6.5-.8 9.8-.8 2.6 0 5 .5 7.5.7l-.5-1a38 38 0 00-4.4-.2h-4.5c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8H522c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8H498c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8h-4.5c-3.5 0-6.5.7-9.8.8-3.3 0-6.2-.8-9.7-.8h-4.6z"/>
+        <use width="100%" height="100%" y="-1.1" fill="url(#l)" xlink:href="#k"/>
+        <use width="100%" height="100%" y="-2.2" fill="url(#m)" xlink:href="#k"/>
+      </g>
+      <use width="100%" height="100%" y="-3.3" fill="url(#o)" xlink:href="#n"/>
+      <use width="100%" height="100%" y="-6.7" fill="url(#p)" xlink:href="#n"/>
+      <path fill="url(#q)" d="M453.2 307.5v.2h93.7l-.1-.2h-93.6zm-.2.3l-.1.3H547l-.1-.3h-94zm-.2.4l-.2.3h94.8l-.2-.3h-94.4zm-.3.5l-.3.5h95.6l-.3-.5h-95zm-.4.7l-.3.5h96.4l-.3-.5h-95.8zm-.4.7l-.2.4h97l-.2-.4h-96.6zm-.4.7l-.2.4H549l-.3-.4h-97.4zm-.4.7l-.3.6h98.8l-.3-.6H451z"/>
+      <path fill="url(#r)" d="M457.4 312.3c3.4.7 3.7 0 3.7 0zm81.5 0s.3.7 3.7 0z"/>
+    </g>
+    <g fill="#ccd11e">
+      <g id="t">
+        <path fill="url(#s)" d="M530.6 297c-1.7 0-2.2.9-2.2.9-2.7 10.6-11.8 21.3-22.6 21.3h-8V330h61.4l-6.2-11c-9.7-1.4-17.6-11.3-20.1-21.1 0 0-.6-.9-2.3-.9z"/>
+        <path fill="#97c924" d="M530.6 297.5c-.8 0-1.2.1-1.5.3l-.3.3a33.6 33.6 0 01-8.4 14.7c-4 4.1-9 6.9-14.6 6.9h-7.7v9.9H559l-5.7-10c-4.7-.7-9-3.2-12.4-6.8a33.6 33.6 0 01-8.4-14.7l-.3-.3a2.8 2.8 0 00-1.6-.3z"/>
+        <path fill="#ede71f" d="M530.6 297.5h.4v10.8a13 13 0 01-2 6.4c-.5 1.6-1 1-2.3 2.9a25.4 25.4 0 01-5.2 1.2c-2.5.4-8 .8-10.9.1a23 23 0 009.8-6 30.6 30.6 0 002.1-2.5 33.7 33.7 0 003-4.4l1-2a33.9 33.9 0 001.3-2.9 29.8 29.8 0 001-3l.3-.3.6-.2 1-.1z"/>
+        <path fill="#c6cb24" d="M530 298.9c-.5 6-2.3 13.2-6.7 17.8-1.6 1.3-3.7 2.6-5.6 2.3 6.7-5.5 10.8-14 12.2-20.1z"/>
+        <path fill="#9ecb34" d="M524.5 309.3c-1 2.7-4.8 6.7-8.8 10h-2.9c2.5-.2 8.3-5 11.7-10z"/>
+      </g>
+      <use width="100%" height="100%" x="-15.3" xlink:href="#t"/>
+      <g fill="#c6cb24">
+        <path fill="url(#u)" d="M502.2 298c2.8 10.5 11.8 21.2 22.6 21.2h8.1V330h-65.8v-10.8h8c10.8 0 19.9-10.7 22.6-21.3 0 0 .6-.8 2.3-.8 1.7 0 2.2.8 2.2.8z"/>
+        <path fill="#97c924" d="M500 297.5c.8 0 1.2.2 1.5.3l.3.3a33.6 33.6 0 008.4 14.7c4 4.1 9 6.9 14.6 6.9h7.7v9.9h-65v-10h7.7c5.5 0 10.6-2.7 14.6-6.8a33.6 33.6 0 008.3-14.7l.3-.3a3 3 0 011.6-.3z"/>
+        <path fill="#ede71f" d="M499.3 297.5a3.4 3.4 0 00-.3 0l-.6.3-.3.3a28.9 28.9 0 01-1 3 34.2 34.2 0 01-1.2 3 34.2 34.2 0 01-1 1.9 33.6 33.6 0 01-3 4.4 30.7 30.7 0 01-2.1 2.4 23 23 0 01-9.8 6.1c2.8.7 4 0 6.5-.4 2-.3 4.2-.6 6-1.2 1.5-2 1-1.3 1.5-2.9 1.2-2.2 3-4.2 3.4-6.7 1.6-3 1.9-8.6 1.9-10.2z"/>
+        <path d="M499.3 298.9c-.4 6-2.3 13.2-6.7 17.8-1.6 1.3-3.6 2.6-5.6 2.3 6.8-5.5 10.9-14 12.3-20.1z"/>
+        <path fill="#9ecb34" d="M493.8 309.3a31 31 0 01-8.8 10h-2.8c2.5-.2 8.2-5 11.6-10z"/>
+        <path fill="#ede71f" d="M501 297.6l.5.2.4.3a32.3 32.3 0 001 3 33.6 33.6 0 001.2 3l1 1.9a33.6 33.6 0 003 4.4 30.7 30.7 0 002.1 2.4 24 24 0 009.8 6.5c-7.3 0-10.4-.6-13-4a19 19 0 01-4.2-7c-.5-2-2-6.5-1.9-10.7z"/>
+        <path d="M501.5 298.9c.4 6 2.2 12 6.6 16.6 1.6 1.4 3.6 2.6 5.6 2.3a31.1 31.1 0 01-12.2-18.9z"/>
+      </g>
+      <g id="w">
+        <path fill="url(#v)" d="M484.8 297c-1.8 0-2.3.9-2.3.9-2.5 9.8-11.8 22.3-21.5 23.8l-4.8 8.3h49v-11.3c-8.8-2.4-15.9-11.7-18.2-20.8 0 0-.5-.8-2.3-.8z"/>
+        <path fill="#97c924" d="M484.8 297.5c-.8 0-1.3.2-1.6.3l-.3.3a43.4 43.4 0 01-8.1 15c-3.4 4.3-9.7 8.6-14 9l-4.3 7.5h48v-10.7a23.2 23.2 0 01-9.5-6 33.6 33.6 0 01-8.4-14.8l-.3-.3a2.9 2.9 0 00-1.5-.3z"/>
+        <path fill="#93bc30" d="M483.4 298.9c-.6 9-5.6 20.5-11.3 22.4-1.9.7-5.1.9-6.2 1a36 36 0 0017.6-23.4z"/>
+        <path fill="#ede71f" d="M484.8 297.5h-.5v10.8c0 2.3.9 4.2 2 6.4l.2.5c.5 1.1.8 1.5 2.3 2.7a22 22 0 0014.8 4c-1.1-.9-2.3-1.7-3.4-2.4l4.5-.5a23 23 0 01-9.7-6.2 30.5 30.5 0 01-1.4-1.5l-.6-.8a35 35 0 01-3.2-4.5 34.2 34.2 0 01-1-2 34 34 0 01-1.6-3.9 31.7 31.7 0 01-.6-2l-.3-.3a2.2 2.2 0 00-.6-.2 3.6 3.6 0 00-1-.1z"/>
+        <path d="M485.4 298.9c.5 6 2.3 13.2 6.7 17.8 1.6 1.3 3.6 2.6 5.6 2.3a38.5 38.5 0 01-12.3-20.1z"/>
+        <path fill="#9ecb34" d="M489.6 307.3a35 35 0 0014.6 14.9h2.5c-4.4-2.4-11.5-5.8-17-15z"/>
+      </g>
+      <use width="100%" height="100%" x="-15.4" fill="#c6cb24" xlink:href="#w"/>
+    </g>
+    <path fill="#fff" d="M556.5 324.7c-.6.2-4.4-.2-6.4 0l-1.3.3h-3.3c-3.6 0-6.7 1-10.1 1-3.4 0-6.5-1-10-1H522c-3.6 0-6.7 1-10.1 1-3.4 0-6.5-1-10-1h-3.4c-3.6 0-6.7 1-10 1-3.5 0-6.5-1-10.1-1H475c-3.6 0-6.6 1-10 1-3.5 0-6.5-1-10.1-1h-3.4c-2.8 0-6.2.6-8.9.8l-6.3 10.9h127.4z"/>
+    <path fill="url(#x)" d="M548 323.1h-.6c-3.2.1-5.6 1.1-11.2 1.1s-6.2-1-12.6-.8c-6 0-8.4 1.2-11.7 1.2-3.2 0-8.4-.7-12.5-.3-4 .4-8.8 1.3-12 1.3-3.9 0-7.8-.7-11.8-.3-4.1.4-6 1.5-11.1 1.5-4.4 0-9-.7-12.8-.7-3.4 0-7.2 1-10 1.4l-.9 1.5c2.3-.3 8.6-1.3 10.8-1.3 2.4 0 10.7.5 15.3.3 4.7-.1 5.2-1.2 10.7-1.2 3.8 0 6.6.4 10.5.4 2.5 0 4.7-1.2 8.4-1.2l2.8-.1c3.1-.5 8.4 0 12 .2 3.3.2 5.5-.6 9-.7l4.4-.1c3.5-.2 6.4.6 9.7.6 3.2-.2 6.4-1 9.8-1l4.5-.2c2.3 0 5.9 0 8.3.5l-.8-1.4c-2.4-.1-5.3-.7-8.2-.7z"/>
+    <g id="A">
+      <path id="z" fill="url(#y)" d="M450.3 334.8c-3.4 0-6.4.8-9.6.9a31.8 31.8 0 01-3.6-.3l-.5.8h6c3.5 0 6.4-.8 9.6-.9 3.3.1 6.2 1 9.7 1h4.5c3.4 0 6.4-.9 9.6-1 3.3.1 6.3 1 9.7 1h4.5c3.5 0 6.4-.9 9.7-1 3.2.1 6.1 1 9.6 1h4.5c3.4 0 6.4-.9 9.7-1 3.2.1 6.2 1 9.6 1h4.5c3.5 0 6.4-.9 9.6-1 3.3.1 6.2 1 9.7 1h4.5l1.8-.1-.5-.8c-1 .1-2.1.3-3.2.3-3.3 0-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.5 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5z"/>
+      <use width="100%" height="100%" y="-1.3" xlink:href="#z"/>
+      <use width="100%" height="100%" y="-2.6" xlink:href="#z"/>
+    </g>
+    <use width="100%" height="100%" y="-3.9" xlink:href="#A"/>
+    <use width="100%" height="100%" y="-7.7" xlink:href="#A"/>
+    <path fill="#97c924" d="M443.9 324.7l-2.5 4.2c2.9-.5 7.1-1.7 10.7-1.7 3.6 0 8 .9 12.4 1 5 0 7-1.2 11-1.6 4.1-.4 8 .5 12 .6 3.1 0 7.9-1.1 12-1.5 4-.5 7.7.3 12.5.3 4.9.1 5.7-1.2 11.6-1.3 6.4-.1 7 .9 12.6.9 4.2.2 7.9-.9 11.7-1.1 3.8-.3 5.5 0 8.3 0l-1.9-3.2-101.3 2.3z"/>
+    <path fill="#fff" d="M550 324.6l4 .3a91.4 91.4 0 002.9.3l-.4-.5c-.6.2-4.4-.2-6.4 0z"/>
+  </g>
+  <path fill="#c8a400" d="M256 191.9l-27.4 47.5-28 48.6h110.8L284 240.5l-28-48.6zm0 2.5l27 46.7 26.3 45.6H202.8l26.9-46.6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nl.svg
new file mode 100644
index 0000000..9db233d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nl.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nl" viewBox="0 0 512 512">
+  <path fill="#21468b" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v341.3H0z"/>
+  <path fill="#ae1c28" d="M0 0h512v170.7H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/no.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/no.svg
new file mode 100644
index 0000000..08ea572
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/no.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-no" viewBox="0 0 512 512">
+  <path fill="#ed2939" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M128 0h128v512H128z"/>
+  <path fill="#fff" d="M0 192h512v128H0z"/>
+  <path fill="#002664" d="M160 0h64v512h-64z"/>
+  <path fill="#002664" d="M0 224h512v64H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/np.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/np.svg
new file mode 100644
index 0000000..f34ee8c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/np.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-np" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="b">
+      <path fill-opacity=".7" d="M0-16h512v512H0z"/>
+    </clipPath>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#fff" d="M0 0h512v512H0z" style="width:0"/>
+    <g clip-path="url(#b)" transform="translate(0 16)">
+      <g fill-rule="evenodd">
+        <path fill="#ce0000" stroke="#000063" stroke-width="13" d="M6.5 489.5h378.8L137.4 238.1l257.3.3L6.6-9.5v499z"/>
+        <path fill="#fff" d="M180.7 355.8l-27 9 21.2 19.8-28.5-1.8 11.7 26.2-25.5-12.3.5 28.6-18.8-20.9-10.7 26.6-9.2-26.3-20.3 20.6 1.8-27.7L49 409l12.6-25-29.3.6 21.5-18.3-27.3-10.5 27-9L32.2 327l28.4 1.8L49 302.6l25.6 12.3-.5-28.6 18.8 20.9 10.7-26.6 9.1 26.3 20.4-20.6-1.9 27.7 27-11.4-12.7 25 29.4-.6-21.5 18.3zm-32.4-184.7l-11.3 8.4 5.6 4.6a93.8 93.8 0 0030.7-36c1.8 21.3-17.7 69-68.7 69.5a70.6 70.6 0 01-71.5-70.3c10 18.2 16.2 27 32 36.5l4.7-4.4-10.6-8.9 13.7-3.6-7.4-12.4 14.4 1-1.8-14.4 12.6 7.4 4-13.5 9 10.8 8.5-10.3 4.6 14 11.8-8.2-1.5 14.3 14.2-1.7-6.7 13.2 13.7 4z"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nr.svg
new file mode 100644
index 0000000..282d80f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nr.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nr" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M135.6 0h496.1v496h-496z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-140) scale(1.0321)">
+    <path fill="#002170" d="M0 0h992.1v496H0z"/>
+    <path fill="#ffb20d" d="M0 226.8h992.1v42.4H0z"/>
+    <path fill="#fff" d="M292.4 424.4l-31.9-32-10.2 44-11.7-43.7-30.9 33 11.8-43.6-43.2 13 32-31.8-44-10.3 43.6-11.6-33-31 43.6 11.8-13-43.2 31.8 32 10.3-44 11.7 43.6 30.8-32.9-11.7 43.6 43.2-13-32 31.8 44 10.3L290 362l33 30.9-43.7-11.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nu.svg
new file mode 100644
index 0000000..aced440
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nu.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nu" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#fff" fill-rule="evenodd" d="M0 0h499.6v248.1H0z"/>
+    <path fill="#c00" d="M0 0v18.6L119.2 80l44.9 1.3L0 0z"/>
+    <path fill="#006" d="M51 0l144.6 75.5V0H51z"/>
+    <path fill="#c00" d="M214.9 0v96.4H0v55h215v96.4h66v-96.4h215v-55H281V0h-66z"/>
+    <path fill="#006" d="M300.2 0v71.1L441.6.6 300.2 0z"/>
+    <path fill="#c00" d="M304.7 78.9l39.8-.3L498.9.6l-41 .6L304.8 79z"/>
+    <path fill="#006" d="M0 167.5v52.8L99.2 168 0 167.6z"/>
+    <path fill="#c00" d="M381.9 169.7l-41.4-.3 155.8 77.5-1-17.7-113.5-59.5zM38.7 248.3l146.1-76.8-38.3.3L0 248.1"/>
+    <path fill="#006" d="M497.9 21.8l-118 58.5 116.4.5v87.1h-99.1l98.2 53.3 1.4 27-52.4-.6-143.6-70.5v71.2H196V177L61.3 248l-60.9.2V496H992V.4L499 0M.6 28L0 79.4l104.4 1.3L.5 28z"/>
+    <g fill="#ffd900" fill-rule="evenodd" stroke-width="1pt">
+      <path d="M496 0h496.1v496h-496z"/>
+      <path d="M0 248h523.5v248H0z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#000067" d="M290.9 125.3a42.8 42.8 0 11-85.5 0 42.8 42.8 0 0185.5 0z"/>
+      <path fill="#fff40d" d="M226.8 154l8.3-24.5-21.6-15.2h26.7l8.2-24.6 8.2 24.6h26.7l-21.6 15.2L270 154l-21.6-15.3zm155.3-17l4.1-11.5-10.7-7.2h13.2l4.1-11.5 4 11.6h13.3l-10.7 7 4.1 11.5-10.7-7zm-144.7 85.5l4.1-11.5-10.7-7.1h13.3l4-11.5 4.1 11.5h13.2l-10.7 7 4.1 11.6-10.7-7.1zm0-167l4.1-11.6-10.7-7h13.3l4-11.6 4.1 11.5h13.2L254.7 44l4.1 11.5-10.7-7zM92.3 136.8l4.1-11.5-10.7-7h13.2l4.1-11.6 4 11.5h13.3l-10.7 7.1 4 11.5-10.6-7z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nz.svg
new file mode 100644
index 0000000..5283a96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/nz.svg
@@ -0,0 +1,41 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-nz" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="c">
+      <path d="M0 0h600v300H0z"/>
+    </clipPath>
+    <clipPath id="d">
+      <path d="M0 0l300 150H0zm300 0h300L300 150zm0 150h300v150zm0 0v150H0z"/>
+    </clipPath>
+    <g id="b">
+      <g id="a">
+        <path d="M0 0v.5L1 0z" transform="translate(0 -.3)"/>
+        <path d="M0 0v-.5L1 0z" transform="rotate(-36 .5 -.2)"/>
+      </g>
+      <use transform="scale(-1 1)" xlink:href="#a"/>
+      <use transform="rotate(72 0 0)" xlink:href="#a"/>
+      <use transform="rotate(-72 0 0)" xlink:href="#a"/>
+      <use transform="scale(-1 1) rotate(72)" xlink:href="#a"/>
+    </g>
+  </defs>
+  <path fill="#00247d" fill-rule="evenodd" d="M0 0h512v512H0z"/>
+  <g transform="translate(-148.7 134.5) scale(.60566)">
+    <use width="100%" height="100%" fill="#fff" transform="matrix(45.4 0 0 45.4 900 120)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="matrix(30 0 0 30 900 120)" xlink:href="#b"/>
+  </g>
+  <g transform="rotate(82 393.4 127.1) scale(.60566)">
+    <use width="100%" height="100%" fill="#fff" transform="rotate(-82 519 -457.7) scale(40.4)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="rotate(-82 519 -457.7) scale(25)" xlink:href="#b"/>
+  </g>
+  <g transform="rotate(82 393.4 127.1) scale(.60566)">
+    <use width="100%" height="100%" fill="#fff" transform="rotate(-82 668.6 -327.7) scale(45.4)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="rotate(-82 668.6 -327.7) scale(30)" xlink:href="#b"/>
+  </g>
+  <g transform="translate(-148.7 134.5) scale(.60566)">
+    <use width="100%" height="100%" fill="#fff" transform="matrix(50.4 0 0 50.4 900 480)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="matrix(35 0 0 35 900 480)" xlink:href="#b"/>
+  </g>
+  <path stroke="#fff" stroke-width="60" d="M0 0l600 300M0 300L600 0" clip-path="url(#c)" transform="scale(.52004 .78924)"/>
+  <path stroke="#cc142b" stroke-width="40" d="M0 0l600 300M0 300L600 0" clip-path="url(#d)" transform="scale(.52004 .78924)"/>
+  <path fill="#fff" d="M125.7 0v88H-.1v60.7h125.8v88h60.6v-88h125.8V88.1H186.4V0h-60.7z" clip-path="url(#c)" color="#000" font-family="sans-serif" font-weight="400" overflow="visible" style="line-height:normal;text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;block-progression:tb;isolation:auto;mix-blend-mode:normal"/>
+  <path fill="#cc142b" d="M137.8 0v100.2H0v36.4h138v100.2h36.3V136.6h137.9v-36.4h-138V0h-36.4z" color="#000" font-family="sans-serif" font-weight="400" overflow="visible" style="line-height:normal;text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;block-progression:tb;isolation:auto;mix-blend-mode:normal"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/om.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/om.svg
new file mode 100644
index 0000000..055d1e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/om.svg
@@ -0,0 +1,115 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-om" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#ef2d29" fill-rule="evenodd" d="M-23.3-21.6h554.7v553H-23.3z"/>
+    <path fill="#009025" fill-rule="evenodd" d="M164.6 341.3H541V549H164.6z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M164.6-19.4H541v190H164.6z"/>
+    <g stroke="#ef2d28">
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19516 0 0 .17447 109.2 -5.3)">
+        <rect width="138.2" height="85" x="17.7" y="467.7" stroke-width="1.4" rx="11.5" ry="12.1"/>
+        <rect width="131.1" height="78" x="21.3" y="471.3" stroke-width="1pt" rx="10.9" ry="11.1"/>
+        <path stroke-width="1pt" d="M65 396l9.7.5.4 5.8 8 5.3 6.2-6.7 7.5 5.3-7 5.8 1.7 8 8.8-.5V430l-7-.4-3.6 6.6 8 7.5-6.2 6.2-6.7-6.6-9.7 2.6.5 9.7-10.6 1-1.4-9.4-8.8-4.8-4.9 6.6-7.5-4.9 4.4-7.5-5.3-4.8H34l-.4-13.7 7.5.9 5.3-8-6.2-6.2 8-7 5.7 5.7 9.7-1.8L65 396z" transform="matrix(.68108 0 0 .5852 38 260.7)"/>
+        <ellipse cx="68.9" cy="426.8" stroke-width="1pt" rx="11.1" ry="9.9" transform="matrix(.65819 0 0 .70224 38.8 209.6)"/>
+        <path stroke-width="1pt" d="M39 474.8l-10.7 10.6m17.8-10.6l-10.7 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6L78 485.4m17.7-10.6L85 485.4m17.8-10.6L92 485.4m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m-17.7-10.6L78 485.4m46-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m0-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.7 10.6M85 474.8l10.6 10.6m-17.8-10.6l10.7 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6M85 474.8l10.6 10.6m-46-10.6l10.5 10.6m-17.7-10.6l10.7 10.6m-17.8-10.6L46 485.4m-17.8-10.6L39 485.4m0 49.6l-10.6 10.7M46 535l-10.7 10.7M53.2 535l-10.7 10.7M60.2 535l-10.6 10.7M67.3 535l-10.6 10.7M74.4 535l-10.6 10.7M81.5 535L71 545.7M88.6 535L78 545.7M95.7 535L85 545.7m17.7-10.7L92 545.7m18-10.7l-10.7 10.7M117 535l-10.6 10.7M88.6 535L78 545.7m46-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m0-10.7l10.6 10.7M127.6 535l10.6 10.7M120.5 535l10.6 10.7M113.4 535l10.6 10.7M106.3 535l10.6 10.7M99.2 535l10.7 10.7M92 535l10.7 10.7M85 535l10.6 10.7M78 535l10.6 10.7M70.9 535l10.6 10.7M63.8 535l10.6 10.7M56.7 535l10.6 10.7M85.1 535l10.6 10.7m-46-10.7l10.5 10.7M42.5 535l10.7 10.7M35.4 535l10.7 10.7M28.4 535L39 545.7"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19516 0 0 .17447 18.6 -6)">
+        <rect width="138.2" height="85" x="17.7" y="467.7" stroke-width="1.4" rx="11.5" ry="12.1"/>
+        <rect width="131.1" height="78" x="21.3" y="471.3" stroke-width="1pt" rx="10.9" ry="11.1"/>
+        <path stroke-width="1pt" d="M65 396l9.7.5.4 5.8 8 5.3 6.2-6.7 7.5 5.3-7 5.8 1.7 8 8.8-.5V430l-7-.4-3.6 6.6 8 7.5-6.2 6.2-6.7-6.6-9.7 2.6.5 9.7-10.6 1-1.4-9.4-8.8-4.8-4.9 6.6-7.5-4.9 4.4-7.5-5.3-4.8H34l-.4-13.7 7.5.9 5.3-8-6.2-6.2 8-7 5.7 5.7 9.7-1.8L65 396z" transform="matrix(.68108 0 0 .5852 38 260.7)"/>
+        <ellipse cx="68.9" cy="426.8" stroke-width="1pt" rx="11.1" ry="9.9" transform="matrix(.65819 0 0 .70224 38.8 209.6)"/>
+        <path stroke-width="1pt" d="M39 474.8l-10.7 10.6m17.8-10.6l-10.7 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6L78 485.4m17.7-10.6L85 485.4m17.8-10.6L92 485.4m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m-17.7-10.6L78 485.4m46-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m0-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.7 10.6M85 474.8l10.6 10.6m-17.8-10.6l10.7 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6M85 474.8l10.6 10.6m-46-10.6l10.5 10.6m-17.7-10.6l10.7 10.6m-17.8-10.6L46 485.4m-17.8-10.6L39 485.4m0 49.6l-10.6 10.7M46 535l-10.7 10.7M53.2 535l-10.7 10.7M60.2 535l-10.6 10.7M67.3 535l-10.6 10.7M74.4 535l-10.6 10.7M81.5 535L71 545.7M88.6 535L78 545.7M95.7 535L85 545.7m17.7-10.7L92 545.7m18-10.7l-10.7 10.7M117 535l-10.6 10.7M88.6 535L78 545.7m46-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m0-10.7l10.6 10.7M127.6 535l10.6 10.7M120.5 535l10.6 10.7M113.4 535l10.6 10.7M106.3 535l10.6 10.7M99.2 535l10.7 10.7M92 535l10.7 10.7M85 535l10.6 10.7M78 535l10.6 10.7M70.9 535l10.6 10.7M63.8 535l10.6 10.7M56.7 535l10.6 10.7M85.1 535l10.6 10.7m-46-10.7l10.5 10.7M42.5 535l10.7 10.7M35.4 535l10.7 10.7M28.4 535L39 545.7"/>
+      </g>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1pt" d="M538.6 531.5c1.7 166.6 24.8 202 3.5 202s-31.9-92.1-31.9-205.5 14.2-205.5 35.5-205.5-9 31.9-7.1 209z" transform="matrix(-.31598 -.12472 -.1982 .19883 340 68.2)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M545.7 779.5l-60.3 17.7c56.7 60.3 120.5 85 138.2 74.4 17.7-10.6-31.9-35.4-78-92z" transform="matrix(-.19516 0 0 .17447 142.6 -5.3)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M547.3 786.9l-51 14.7c56.7 60.3 112.8 77.4 127.3 70 14.6-7.3-30.3-28-76.3-84.7z" transform="matrix(-.1901 0 0 .16776 140.2 -.1)"/>
+      <path fill="none" stroke-width="1.8" d="M353.1 634.2c.2 1.3.8 7.1 1.3 9.4 0 3.2.3 5.6.6 8.1.8 2.2.7 4.2 3.1 5a9.9 9.9 0 005 4.4 27.7 27.7 0 006.3 3.8 11.6 11.6 0 007.5.6c2.2-1.5 3.8-3.1 5.6-4.4.4-2 .8-4.9 1.3-6.9a32.6 32.6 0 00-1.3 8.2c.2 3 1.3 4.4 2.5 6.8" transform="matrix(-.13744 0 0 .12206 120.8 27.9)"/>
+      <path fill="none" stroke-width="1.8" d="M389.4 681.7l.6-.6c-1.5 1.5-.9.8 2.5-1.3 2.4-1.2 5-1.8 8.1-2.4h8.8c3.4 0 5.7.5 8.1 1.2 1.8 1.8 4.4 2.8 6.3 4.4a11 11 0 013.7 5c1.7 1.7 2.8 4.3 4.4 5.6.7 2.9 2.1 2.8 3.1 5-3 .2-5.3.6-6.9 2.5-2.6 1.3 2.2-1.3 3.2-2.5 2-.6 2.5-1.2 5.6-1.2 2.8-1 4.6.7 7.5 1.2 1.7 1 2.2 1.3 4.4 1.3" transform="matrix(-.13744 0 0 .12206 122.6 27.2)"/>
+      <path fill="none" stroke-width="1.8" d="M438.1 724.9c1.3 0 7.1 1.1 9.4 0 2.6-.7 4-2 5.6-4.4.8-1.7 0 3 0 5 .3 3.7 1.4 3.7 3.2 6.2 1.8 1.2 3.7 2.8 5.6 3.8a18 18 0 005.6 3.1c2 1 4.1 1.8 5.6 3.1 2.1 1.5 2 3.3 3.2 5.7-.3 3-.8 4.8-2.5 6.2-.8 2.1-2.4 4.2-3.8 5.6-1.5 3-3.3 4.3.6 5 2.2 1 3.4.2 5.7 0" transform="matrix(-.13744 0 0 .12206 124.7 25.8)"/>
+      <path fill="none" stroke-width="1.8" d="M480.6 771.7c1.6-.4 7-2.2 9.4-3.1h8.8c3.3.3 4 1.3 6.8 2.5 1.9 1.9 3.1 3.2 5.7 4.4 1.3 1.7 4 4.7 5 6.9a25.5 25.5 0 011.2 8c0 3.7-1 4.4-1.2 7.6a19.3 19.3 0 01-3.8 7.5c-.3.8-.5 1-1.2 1.2" transform="matrix(-.13744 0 0 .12206 125 25.4)"/>
+      <path fill="none" stroke-width="2.4" d="M538.1 818c.4 0 1.2 2 2.5 3.7 2.9 3 3.2 3.2 7.5 3.2 4-.2 3.5-1.6 6.3-2.5 1.3-2 2.9-3.6 4.4-6.3 1-1.6 1.9-4.1 3-5.6 1.2-1.9 2.6-3.3 3.8-5 1.2-.5 1.6-1 3.2-1.3-3.6.6-4 1.9-6.3 3.8a58.9 58.9 0 00-3.1 5.6c-.4 2.7-1.2 4.8-1.3 8.1 0 3.5 0 5.9 1.3 8.8 1.5 1.5 2.5 3.1 4.4 4.4a36.7 36.7 0 014.3 5l5.7 3.7c1.8 1.1 3.9 2.2 6.8 2.5 3.7-.3 4.8-1.3 7.5-2.5 2.4-1.7 4.2-2.8 6.3-4.4a21 21 0 004.4-5c3.3-.8 5.5-.5 7.5 1.3a16.5 16.5 0 014.3 4.4c1 .5 2.8 2 3.8 2.5" transform="matrix(-.09758 0 0 .09635 107.4 46)"/>
+      <path fill="none" stroke-width="1.9" d="M503.8 836.1c-.8.3-3.8 2.4-5 3.1-.8 2.7-2.1 4.1-2.5 7-.7 2.6-.7 5.6-.7 8.7.7 3.2 2 5.5 3.2 8 2 1.4 3 2.4 5.6 3.8 2.5.4 5 .7 8.1.7 2 .6 5.6.9 7.5 0 2.8-.4 4.9-1.5 6.9-2.5 2.3-1.3 3.7-2.6 6.2-3.8 1.3-1.8 3.2-3.5 5-5.6 1.6-2.1 2.7-3.3 3.8-5.6-1 2.6-2.3 5-3.1 7.5-1.5 2.6-2.3 3.6-2.5 6.8-1 2.6-.7 5.8-.7 8.8.3 2 .4 5.8 1.3 7.5v1.9" transform="matrix(-.12132 0 0 .12024 109.3 26.8)"/>
+      <path fill="none" stroke-width="1.3" d="M541.3 799.2v.7c0-1.7 0-.9-.7 2.5-1.1 1.4-4 1.8-6.2 1.2-2-1.7-2-3-5.6-3.7-3.6.2-5 1.2-7 2.5a9.5 9.5 0 00-5 4.3c-.7 2.1-1.1 3.6 1.3 4.4a15.2 15.2 0 007 2.5c2.8 0 4.9-.3 6.2 1.3 2 2 1.8 3.2 1.8 6.8.7 1.1.8 4.4 1.3 5.7a10.6 10.6 0 005.6 1.2c.7-2 1.4-5.4 1.9-7.5.5-2.2.6-5.4 1.9-6.9a16.6 16.6 0 014.3-4.4 8 8 0 013.8-2.4c-2.5 1.2-2.8 2.6-3.1 5.6 2.1 1 2.7 1.8 6.2 1.9 3.5-.3 4.3-1.2 5.6-3.2.3 3.2 1.3 4.2 2 7 1.2 1.8 1.7 3.7 3 6.2-.5 3-1.7 3.1-1.8 6.8-.8 2.5-.8 4.8-2.5 6.3-.8 1-1.4 1.1-3.2 1.2 3.6 0 5.8-.4 8.2-1.8 1.8-1.2 3.2-2.6 5-3.8a23.9 23.9 0 017.5-3.8c2.9 0 5-.3 6.2 1.3 1.8 1.3 3 3.5 3.8 6.3.5 3.2.8 5.4-.7 7.5-1 2.4-1.3 3.3 0 6.2 1.5 2 3.6 2.3 7 3.1 2.3-.1 4.6-.6 6.2-1.2" transform="matrix(-.19516 0 0 .17447 142.6 -5.3)"/>
+      <g fill-rule="evenodd" stroke-width="1pt" transform="matrix(-.19516 0 0 .17447 142.6 -5.3)">
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4h-35.4z" transform="matrix(1.4216 -.73423 .46161 .89375 -716.8 541)"/>
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4" transform="matrix(1.1373 -.58739 .44532 .86221 -554.8 471.8)"/>
+        <path fill="#fff" d="M563.4 301.2c.2 18.9 0 40.2 0 60.2H535c0-20-.2-41.3 0-60.2h28.4z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M559.8 304.7c.2 19 0 33.1 0 53.2h-21.2c0-20-.2-34.3 0-53.2h21.2z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M542.1 311.8h14.2v39h-14.2zm0 0l14.2 39m-14.2 0l14.2-39m-14.2-198.4h14.2" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <circle cx="545.7" cy="92.1" r="3.5" fill="#ef0000" transform="matrix(1.6046 .45375 -.36215 1.5787 -734.9 -170.8)"/>
+      </g>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1pt" d="M538.6 531.5c1.7 166.6 24.8 202 3.5 202s-31.9-92.1-31.9-205.5 14.2-205.5 35.5-205.5-9 31.9-7.1 209z" transform="matrix(.31598 -.12472 .1982 .19883 -178.7 67.6)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M545.7 779.5l-60.3 17.7c56.7 60.3 120.5 85 138.2 74.4 17.7-10.6-31.9-35.4-78-92z" transform="matrix(.19516 0 0 .17447 18.6 -6)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M547.3 786.9l-51 14.7c56.7 60.3 112.8 77.4 127.3 70 14.6-7.3-30.3-28-76.3-84.7z" transform="matrix(.1901 0 0 .16776 21 -.7)"/>
+      <path fill="none" stroke-width="1.8" d="M353.1 634.2c.2 1.3.8 7.1 1.3 9.4 0 3.2.3 5.6.6 8.1.8 2.2.7 4.2 3.1 5a9.9 9.9 0 005 4.4 27.7 27.7 0 006.3 3.8 11.6 11.6 0 007.5.6c2.2-1.5 3.8-3.1 5.6-4.4.4-2 .8-4.9 1.3-6.9a32.6 32.6 0 00-1.3 8.2c.2 3 1.3 4.4 2.5 6.8" transform="matrix(.13744 0 0 .12206 40.5 27.3)"/>
+      <path fill="none" stroke-width="1.8" d="M389.4 681.7l.6-.6c-1.5 1.5-.9.8 2.5-1.3 2.4-1.2 5-1.8 8.1-2.4h8.8c3.4 0 5.7.5 8.1 1.2 1.8 1.8 4.4 2.8 6.3 4.4a11 11 0 013.7 5c1.7 1.7 2.8 4.3 4.4 5.6.7 2.9 2.1 2.8 3.1 5-3 .2-5.3.6-6.9 2.5-2.6 1.3 2.2-1.3 3.2-2.5 2-.6 2.5-1.2 5.6-1.2 2.8-1 4.6.7 7.5 1.2 1.7 1 2.2 1.3 4.4 1.3" transform="matrix(.13744 0 0 .12206 38.7 26.6)"/>
+      <path fill="none" stroke-width="1.8" d="M438.1 724.9c1.3 0 7.1 1.1 9.4 0 2.6-.7 4-2 5.6-4.4.8-1.7 0 3 0 5 .3 3.7 1.4 3.7 3.2 6.2 1.8 1.2 3.7 2.8 5.6 3.8a18 18 0 005.6 3.1c2 1 4.1 1.8 5.6 3.1 2.1 1.5 2 3.3 3.2 5.7-.3 3-.8 4.8-2.5 6.2-.8 2.1-2.4 4.2-3.8 5.6-1.5 3-3.3 4.3.6 5 2.2 1 3.4.2 5.7 0" transform="matrix(.13744 0 0 .12206 36.6 25.1)"/>
+      <path fill="none" stroke-width="1.8" d="M480.6 771.7c1.6-.4 7-2.2 9.4-3.1h8.8c3.3.3 4 1.3 6.8 2.5 1.9 1.9 3.1 3.2 5.7 4.4 1.3 1.7 4 4.7 5 6.9a25.5 25.5 0 011.2 8c0 3.7-1 4.4-1.2 7.6a19.3 19.3 0 01-3.8 7.5c-.3.8-.5 1-1.2 1.2" transform="matrix(.13744 0 0 .12206 36.2 24.8)"/>
+      <path fill="none" stroke-width="2.4" d="M538.1 818c.4 0 1.2 2 2.5 3.7 2.9 3 3.2 3.2 7.5 3.2 4-.2 3.5-1.6 6.3-2.5 1.3-2 2.9-3.6 4.4-6.3 1-1.6 1.9-4.1 3-5.6 1.2-1.9 2.6-3.3 3.8-5 1.2-.5 1.6-1 3.2-1.3-3.6.6-4 1.9-6.3 3.8a58.9 58.9 0 00-3.1 5.6c-.4 2.7-1.2 4.8-1.3 8.1 0 3.5 0 5.9 1.3 8.8 1.5 1.5 2.5 3.1 4.4 4.4a36.7 36.7 0 014.3 5l5.7 3.7c1.8 1.1 3.9 2.2 6.8 2.5 3.7-.3 4.8-1.3 7.5-2.5 2.4-1.7 4.2-2.8 6.3-4.4a21 21 0 004.4-5c3.3-.8 5.5-.5 7.5 1.3a16.5 16.5 0 014.3 4.4c1 .5 2.8 2 3.8 2.5" transform="matrix(.09758 0 0 .09635 53.8 45.4)"/>
+      <path fill="none" stroke-width="1.9" d="M503.8 836.1c-.8.3-3.8 2.4-5 3.1-.8 2.7-2.1 4.1-2.5 7-.7 2.6-.7 5.6-.7 8.7.7 3.2 2 5.5 3.2 8 2 1.4 3 2.4 5.6 3.8 2.5.4 5 .7 8.1.7 2 .6 5.6.9 7.5 0 2.8-.4 4.9-1.5 6.9-2.5 2.3-1.3 3.7-2.6 6.2-3.8 1.3-1.8 3.2-3.5 5-5.6 1.6-2.1 2.7-3.3 3.8-5.6-1 2.6-2.3 5-3.1 7.5-1.5 2.6-2.3 3.6-2.5 6.8-1 2.6-.7 5.8-.7 8.8.3 2 .4 5.8 1.3 7.5v1.9" transform="matrix(.12132 0 0 .12024 52 26.2)"/>
+      <path fill="none" stroke-width="1.3" d="M541.3 799.2v.7c0-1.7 0-.9-.7 2.5-1.1 1.4-4 1.8-6.2 1.2-2-1.7-2-3-5.6-3.7-3.6.2-5 1.2-7 2.5a9.5 9.5 0 00-5 4.3c-.7 2.1-1.1 3.6 1.3 4.4a15.2 15.2 0 007 2.5c2.8 0 4.9-.3 6.2 1.3 2 2 1.8 3.2 1.8 6.8.7 1.1.8 4.4 1.3 5.7a10.6 10.6 0 005.6 1.2c.7-2 1.4-5.4 1.9-7.5.5-2.2.6-5.4 1.9-6.9a16.6 16.6 0 014.3-4.4 8 8 0 013.8-2.4c-2.5 1.2-2.8 2.6-3.1 5.6 2.1 1 2.7 1.8 6.2 1.9 3.5-.3 4.3-1.2 5.6-3.2.3 3.2 1.3 4.2 2 7 1.2 1.8 1.7 3.7 3 6.2-.5 3-1.7 3.1-1.8 6.8-.8 2.5-.8 4.8-2.5 6.3-.8 1-1.4 1.1-3.2 1.2 3.6 0 5.8-.4 8.2-1.8 1.8-1.2 3.2-2.6 5-3.8a23.9 23.9 0 017.5-3.8c2.9 0 5-.3 6.2 1.3 1.8 1.3 3 3.5 3.8 6.3.5 3.2.8 5.4-.7 7.5-1 2.4-1.3 3.3 0 6.2 1.5 2 3.6 2.3 7 3.1 2.3-.1 4.6-.6 6.2-1.2" transform="matrix(.19516 0 0 .17447 18.6 -6)"/>
+      <g fill-rule="evenodd" stroke-width="1pt" transform="matrix(.19516 0 0 .17447 18.6 -6)">
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4h-35.4z" transform="matrix(1.4216 -.73423 .46161 .89375 -716.8 541)"/>
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4" transform="matrix(1.1373 -.58739 .44532 .86221 -554.8 471.8)"/>
+        <path fill="#fff" d="M563.4 301.2c.2 18.9 0 40.2 0 60.2H535c0-20-.2-41.3 0-60.2h28.4z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M559.8 304.7c.2 19 0 33.1 0 53.2h-21.2c0-20-.2-34.3 0-53.2h21.2z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M542.1 311.8h14.2v39h-14.2zm0 0l14.2 39m-14.2 0l14.2-39m-14.2-198.4h14.2" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <circle cx="545.7" cy="92.1" r="3.5" fill="#ef0000" transform="matrix(1.6046 .45375 -.36215 1.5787 -734.9 -170.8)"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19516 0 0 .17447 18.6 -6)">
+        <path stroke-width="1pt" d="M305.6 396.9c0 124 .5 170.7-5.6 177.1-5.8 6.9-167.1 0-167.1 35.4s132.8 71 172.7 71c53.2 0 79.7-35.5 79.7-106.4V397h-79.7z" transform="matrix(1.3333 0 0 1 -141.7 0)"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 35.4)"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="scale(1 .99999)"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 17.7)"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 53.1)"/>
+        <ellipse cx="256.9" cy="210.8" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 394.3)"/>
+        <ellipse cx="292.3" cy="246.3" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 391.1)"/>
+        <ellipse cx="327.8" cy="264" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 390.5)"/>
+        <ellipse cx="363.2" cy="264" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 390.5)"/>
+        <ellipse cx="398.6" cy="246.3" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 391.1)"/>
+        <ellipse cx="434.1" cy="210.8" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 394.3)"/>
+        <path stroke-width="1pt" d="M265.8 485.4L372 581.1m-95.6-95.7l95.7 85M290.5 489l81.6 70.9m-71-71l71 60.3M311.8 489l60.2 49.6M322.4 489l49.6 39m-39-39l39 28.3M343.8 489l28.4 21.2M354.3 489l17.8 14.2M365 489l7 7m-106.2 0L372 591.8m0-106.3L255 591.7m106.3-106.3l-102.7 92.2m88.6-88.6l-81.5 70.8m70.8-70.8l-70.8 60.2M326 489l-60.2 49.6m49.6-49.6l-49.6 39m39-39l-39 28.3M294 489l-28.3 21.2m17.7-21.2l-17.7 14.2m7-14.2l-7 7m106.3 0L255 602.5m117-95.7L255 613m117-95.7L255 623.6m117-95.7L255 634.4m117-95.7L255 644.9m117-95.7L255 655.5m117-95.7L255 666.1m117-95.6L255 676.8m117-95.7l-109.9 99.2M372 591.7l-99.2 88.6m95.6-74.4l-78 70.9M365 620l-63.8 56.7m56.7-39l-32 28.3m-60.1-159.4l102.7 92.1m-102.7-81.5l102.7 92.2M265.8 528l99.2 88.5m-99.2-78l99.2 88.7m-99.2-78l95.6 85m-99.2-77.9l95.7 85M262.2 567l88.6 78m-92.1-71l88.6 78M255 581l85 74.4m-85-63.8l81.5 70.9M255 602.3l71 63.7"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 70.9)"/>
+        <path stroke-width="1pt" d="M255.1 613l63.8 56.7m-63.8-46l56.7 49.5m-56.7-39l49.6 42.6m-49.6-32l35.5 32M255 655.5l28.4 24.8M255 666.1l17.7 14.2"/>
+        <ellipse cx="256.9" cy="210.8" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 447.5)"/>
+        <ellipse cx="292.3" cy="246.3" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 444.3)"/>
+        <ellipse cx="327.8" cy="264" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 443.6)"/>
+        <ellipse cx="363.2" cy="264" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 443.6)"/>
+        <ellipse cx="398.6" cy="246.3" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 444.3)"/>
+        <ellipse cx="434.1" cy="210.8" stroke-width="4.5" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 447.5)"/>
+        <path stroke-width="1pt" d="M113.4 652l127.5-74.4m-134.6 70.8l120.5-70.8m-124 63.7l109.8-63.7M99.2 634.3l95.7-56.7M92 627.2l88.6-49.6m-85 39l60.2-35.5M92 609.4l46-28.3m-46 17.7l32-17.7m0 74.4l120.4-70.9M134.7 659L248 591.7m-102.7 70.9l106.3-63.8m-95.7 67.3l88.6-53.1M170 666.1l78-46m-67.4 49.6l67.3-39m-56.7 42.5l53.2-31.9m-39 32l42.5-24.9m-28.3 28.4L248 659m-14 17.8l17.7-10.6"/>
+        <path stroke-width="1pt" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(0 1 -.99999 0 655.5 308.3)"/>
+        <path stroke-width="1pt" d="M49.6 623.6l42.5-35.4m-42.5 10.6l42.5 42.5"/>
+        <path stroke-width="1pt" d="M260.1 388l5.6 26.6c35.5 5.9 65.3 5.9 100.8 0l11.1-26.6c-35.4 5.9-82 5.9-117.5 0z" transform="matrix(0 .63333 -.8 0 423.8 416.3)"/>
+        <path stroke-width="1pt" d="M258.7 350.8v-17.9c-10.7.2-17.8-10.5-17.8-21.2l-35.4.1c0 10.6-7 21.3-17.7 21.3v17.7h70.9z" transform="matrix(1.4983 0 0 1 -15.6 53.1)"/>
+        <path stroke-width="1.4" d="M296 343.7h45.6V365H296zm3.9-21.3h37.9v21.3h-38zm0-21.2h37.9v21.2h-38zm3.8-28.4H334v28.4h-30.3zm-1.3-24.8h33v24.8h-33z"/>
+        <ellipse cx="237.4" cy="161.2" stroke-width="1pt" rx="42.5" ry="33.7" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <path stroke-width="1pt" d="M258.7 159.4c0 9.3 10.6 24.8 10.6 24.8-7.7 6.2-20.2 10.7-31.9 10.7s-26.3-2.6-31.9-10.7c0 0 10.6-15.4 10.6-24.7s-10.6-21.3-10.6-21.3a54.6 54.6 0 0132-10.6c11.6 0 24 4.5 31.8 10.6 0 0-10.6 12-10.6 21.3z" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <path stroke-width="1pt" d="M251.6 159.4c0 9.3 10.6 28.4 10.6 28.4-7.7 6-13 7-24.8 7s-19.2 1.1-24.8-7c0 0 10.6-19 10.6-28.4s-10.6-24.8-10.6-24.8c7.7-6 13-7 24.8-7 11.7 0 17.1 1 24.8 7 0 0-10.6 15.5-10.6 24.8z" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0333 0 0 1 75.3 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0333 0 0 1 163.2 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0333 0 0 1 119.3 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0333 0 0 1 119.3 24.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0702 0 0 1 80 226.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.0702 0 0 1 140.6 226.8)"/>
+        <path stroke-width="1pt" d="M212.6 311.8h49.6l-24.8 31.9-24.8-31.9z" transform="matrix(1.0702 0 0 1 64.8 53.1)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1pt" transform="matrix(1.427 0 0 1.3333 40.7 167.7)"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19516 0 0 .17447 18.3 -10.9)">
+        <rect width="81.5" height="21.3" x="262.2" y="524.4" stroke-width="1.3" rx="4.4" ry="3.8"/>
+        <path stroke-width="1.3" d="M368.5 506.7c-9.8 0-17.7 8.3-17.7 18.5v16.1a18 18 0 0017.7 18.5 18 18 0 0017.7-18.5v-16a18 18 0 00-17.7-18.6zm0 7c-5.9 0-10.6 6.7-10.6 14.9v9.3c0 8.2 4.7 14.8 10.6 14.8 5.9 0 10.6-6.6 10.6-14.8v-9.3c0-8.2-4.7-14.8-10.6-14.8zm-92.1-3.5c-6 0-10.6 6.6-10.6 14.9v16.4c0 8.2 4.7 14.8 10.6 14.8 5.9 0 10.6-6.6 10.6-14.8V525c0-8.3-4.7-14.9-10.6-14.9zm0-7a18 18 0 00-17.7 18.5v23.2a18 18 0 0017.7 18.5c9.8 0 17.7-8.3 17.7-18.5v-23.2a18 18 0 00-17.7-18.6z"/>
+        <path stroke-width="1.3" d="M248 517.3c-5.9 0-10.6 6.6-10.6 14.8v3.9c0 8.2 4.7 14.8 10.6 14.8 6 0 10.7-6.6 10.7-14.8v-3.9c0-8.2-4.8-14.8-10.7-14.8zm0-7a18 18 0 00-17.7 18.5v10.6a18 18 0 0017.7 18.5c9.8 0 17.8-8.3 17.8-18.5v-10.6a18 18 0 00-17.8-18.6z"/>
+        <path stroke-width=".9" d="M478.4 237.4c-6 0-10.7 6.6-10.7 14.8v16.5c0 8.1 4.8 14.8 10.7 14.8 5.8 0 10.6-6.6 10.6-14.9v-16.4c0-8.2-4.8-14.8-10.6-14.8zm0-7a18 18 0 00-17.8 18.4V272a18 18 0 0017.7 18.6c9.9 0 17.8-8.3 17.8-18.6v-23.2a18 18 0 00-17.7-18.5z" transform="matrix(1.8 0 0 1.1176 -655.5 242.2)"/>
+        <path stroke-width=".9" d="M478.4 237.4c-6 0-10.7 6.6-10.7 14.8v16.5c0 8.1 4.8 14.8 10.7 14.8 5.8 0 10.6-6.6 10.6-14.9v-16.4c0-8.2-4.8-14.8-10.6-14.8zm0-7a18 18 0 00-17.8 18.4V272a18 18 0 0017.7 18.6c9.9 0 17.8-8.3 17.8-18.6v-23.2a18 18 0 00-17.7-18.5z" transform="matrix(1.8 0 0 1.1176 -425.2 245.7)"/>
+        <rect width="42.5" height="21.3" x="375.6" y="524.4" stroke-width="1.3" rx="2.3" ry="3.8"/>
+        <rect width="24.8" height="28.4" x="336.6" y="520.9" stroke-width="1.3" rx="1.4" ry="5"/>
+        <rect width="24.8" height="28.4" x="219.7" y="520.9" stroke-width="1.3" rx="1.4" ry="5"/>
+        <rect width="49.6" height="35.4" x="141.7" y="517.3" stroke-width="1.3" rx="2.7" ry="6.3"/>
+        <rect width="46.1" height="35.4" x="450" y="520.9" stroke-width="1.3" rx="2.5" ry="6.3"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pa.svg
new file mode 100644
index 0000000..57965b9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pa.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pa" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)">
+    <path fill="#fff" d="M-26-25h592.5v596H-26z"/>
+    <path fill="#db0000" d="M255.3-20.4h312.1v275.2h-312z"/>
+    <path fill="#0000ab" d="M-54.5 254.8h309.9V571H-54.5zM179 181.6l-46.5-29.2-46.2 29.5 17.2-48-46.2-29.6 57.1-.4 17.7-47.8 18.1 47.7h57.1l-45.9 30 17.6 47.8z"/>
+    <path fill="#d80000" d="M435.2 449l-46.4-29.2-46.3 29.5 17.2-48-46.2-29.5 57.2-.4 17.7-47.8 18 47.7h57.2l-46 30 17.6 47.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pe.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pe.svg
new file mode 100644
index 0000000..40b87ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pe.svg
@@ -0,0 +1,244 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-pe" viewBox="0 0 512 512">
+  <path fill="#d91023" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M170.7 0h170.6v512H170.7z"/>
+  <g fill="#00a854" stroke="#d4af37" stroke-width="2" transform="translate(196.3 187.3) scale(.14222)">
+    <g id="g" stroke-width="4.3" transform="matrix(.44722 -.20656 .2582 .35777 89.4 -67.3)">
+      <path d="M480.2 566.9c31.3 33 62.4 68.1 79 111.2 25.1 69.7 18.3 151.5-22.6 214a328.2 328.2 0 01-142 116.4 224.7 224.7 0 01-164.8 3.5c-20-7.4-38.9-18-57.5-28.3-8.4-1.4-13.9 8.6-7 13.3 62.4 40.6 130.9 42.2 202 28.2a273.1 273.1 0 0099-50.4c44.4-33.2 82.7-77.5 99.8-131 26.2-79 9.3-171.3-45.1-234.6a488.2 488.2 0 00-44.7-47.1l4 4.8z"/>
+      <path d="M170.6 983.3c-8.1-.8-12.2 11.8-5.1 13.6 4.2-1 10.7-12 5-13.6zm304.2-430.9c-4.5-5.6-14-2.9-17.7-7.3-4-4.7 2.9-6.5-.3-10-3-3.5-7.7-1.7-12-6.5-4.2-4.7-.4-8.8-4-12-3.7-3.4-4.2.8-8.4-3.8s-1.7-12.7-6.3-18.6c-4.5-5.7-3-12.5 2.5-11.2 3.6.8 5 4.4 10.4 5.7 5.4 1.4 7.6-2.5 11.2 1 3.5 3.4.3 9 4 14s5.9 1.2 8.6 5.5c2.7 4.4.5 6.6 2.2 11.7s8.4 3.1 10.9 10.8c2.5 7.6-1 20.7-1 20.7z"/>
+      <path d="M478.1 564.8c-5.5-26.2-27-57-52.6-79.5 15.3 12 44.9 40.5 54.4 79.3l-1.8.2z"/>
+      <path d="M460.2 524.4c-4.2-2.9-7.3-2.8-10.5-3.2 3-.2 5.9-.5 9.5 1.1l1 2.1zm-15.2-19c-4.5-1.4-7.4-.3-10.6.4 2.8-1.2 5.5-2.4 9.2-2l1.4 1.7zm4.4 3.5c-2.2-5.6-2.2-9.7-2.5-14-.1 3.9-.3 7.8.9 12.6l1.6 1.4zm13.5 18.1c-2.2-5.5-2.2-9.6-2.5-14-.1 4-.3 7.9 1 12.7l1.5 1.3zm92.3 155c-8.3-3.1-17.2 0-23.9-2.4-7.2-2.6 1.1-8.6-4.4-10.4-5.6-1.8-10.2 5.7-17.8 3.2-7.6-2.4-6.3-10-12.5-11.4-6.3-1.3-6.4 7.2-13.9 4.9-7.4-2.3-7.5-12.3-16-15.7-8.2-3.4-9-11.4-1.3-13.4 5.2-1.3 10.3 2 18 .2s7-8.7 13.1-7.1c6.1 1.5 4.4 10.4 11.4 13.2 7 2.8 11.4-4.9 16.7-2 5.3 3 .3 9.5 4.6 13.7 4.4 4.3 7.8-2.3 14.2 4.2 6.4 6.6 11.8 23 11.8 23z"/>
+      <path d="M563.5 691.6c-22.9-25.6-58.6-41.4-101.8-49.7 25 3.4 76.7 15 105.2 50l-3.4-.3z"/>
+      <path d="M524.3 661.5c-6.7-.6-10.8 1.3-15.2 2.8 3.8-2 7.5-4 13-4.4l2.2 1.6zm-27.9-10.9c-6.5 1.2-10 4-14 6.7 3.3-2.9 6.4-5.8 11.5-7.7l2.5 1zm7.2 1c-5.2-4.5-7-8.9-9.1-13.3 1.5 4.3 2.8 8.5 6.4 12.8l2.7.5zm25.3 11c-5.1-4.5-6.8-8.9-9-13.3a35 35 0 006.4 12.8l2.6.5zm25.8 223c7-5.4 9.2-15 14.7-19.4 5.8-4.7 6.2 5.9 10.6 2 4.4-3.7.9-12 6.9-17.2 6-5.2 11.4.2 15.8-4.4 4.3-4.7-2.4-9.7 3.4-14.8 5.8-5.2 13.9.5 21-5 7.1-5.3 14-1.4 11.5 6.4-1.7 5.3-7 7.9-9.7 15.6-2.6 7.8 3.2 11-1.2 15.5-4.5 4.4-10.7-2.2-16.7 2.3s-2 12.7-7.3 15.7c-5.1 3-7.6-5.1-13.4-3.8-5.7 1.4-2.2 8-10.9 10a67.8 67.8 0 01-24.7-2.9z"/>
+      <path d="M542.7 887.4c32.6-5.3 64.3-27.5 93.8-60.3-16 19.9-52.6 58.3-95.8 63.1l2-2.8z"/>
+      <path d="M587.6 870.5c4-5.6 4.7-10.2 5.8-15-.5 4.5-.8 9-3.3 14l-2.5 1zm23.5-18.1c2.5-6.4 2-11 2-16 .6 4.5 1.4 8.8.1 14.3l-2.1 1.6zm-4.6 5.7c6.4-2 10.8-1 15.5-.4-4.2-1.1-8.3-2.4-13.7-1.7l-1.8 2zm-22.2 15.8c6.3-2 10.7-1 15.4-.4-4.2-1.1-8.3-2.4-13.7-1.6l-1.7 2zm2.2-84c5.9-6.6 6.3-16.4 11-21.8 4.9-5.8 7.1 4.5 10.8 0 3.6-4.6-1.3-12.1 3.6-18.4 5-6.2 11.4-2 14.8-7.4 3.4-5.4-4-9 .7-15.2 4.8-6.2 13.7-2.1 19.9-8.9 6-6.6 13.4-4 12.3 4.2-.7 5.4-5.5 9-6.7 17.1-1.3 8.2 5.1 10.2 1.5 15.5-3.6 5.2-10.9-.1-16 5.5-5 5.6.3 12.9-4.3 16.8-4.6 3.9-8.5-3.6-13.9-1.2-5.4 2.5-.8 8.4-9 12s-24.7 1.8-24.7 1.8z"/>
+      <path d="M575 794c31.1-11.5 58.3-39.3 81.5-77.3-12.2 22.6-41.4 67.4-83 80.5l1.5-3.2z"/>
+      <path d="M616.1 768.7c3-6.2 2.8-10.8 3-15.7.4 4.4.9 8.8-.7 14.3l-2.2 1.4zm19.9-22.3c1.3-6.7 0-11.2-.9-16 1.4 4.2 3 8.4 2.7 14l-1.8 2zm-3.5 6.5c6-3.1 10.4-3 15.1-3.3-4.3-.3-8.5-.7-13.7 1l-1.4 2.3zm-19 19.8c5.8-3 10.3-3 15-3.3-4.3-.3-8.5-.7-13.7 1l-1.4 2.3zm-46.2-31.5c-7.9-5.6-18.3-4.8-24.7-9.3-6.9-4.6 3.6-8.6-1.8-12-5.4-3.4-12.4 3-19.8-1.6-7.4-4.7-3.8-12.4-10-15.5-6.3-3-9 5.7-16.2 1.2s-4.5-15-12.5-20.8c-7.9-5.8-6.4-14.4 2.4-14.3 5.8 0 10.4 4.9 19.1 5.2 8.7.2 5-4.4 11-1 6.2 3.2 5 12 11.6 17 6.7 4.8 15.2-4.7 20-.2s-2.4 10 1 15.6 9-.2 14 8.4 5.9 27.3 5.9 27.3z"/>
+      <path d="M573.4 753.5c-17-33.1-50.6-59.7-94.2-80.4 25.7 10.6 77.4 37 97.8 81.6l-3.6-1.2z"/>
+      <path d="M540.3 711c-7-2.4-11.9-1.6-17-1.2 4.6-1 9.2-2.1 15-1l2 2.2zm-26.6-19c-7.3-.7-11.8 1.4-16.7 3 4.2-2.1 8.3-4.3 14.3-4.8l2.4 1.7zm7.4 3c-4.3-6.2-4.8-11.3-6-16.4.4 4.8.7 9.6 3.3 15.1l2.7 1.2zm23.8 18.5c-4.2-6.2-4.8-11.2-5.9-16.4.4 4.9.6 9.6 3.3 15.2l2.6 1.2zm43.1 36.9c4.5-7.7 3-17.5 6.5-23.8 3.7-6.7 8 3 10.6-2.3 2.6-5.2-3.6-11.5 0-18.7s10.7-4.3 13-10.3c2.3-6-5.7-8-2.2-15 3.5-7.1 13-5 17.7-13 4.5-7.7 12.3-6.8 12.8 1.5.4 5.5-3.6 10-3.2 18.2.4 8.2 7 9 4.5 14.8-2.5 5.9-10.7 2.2-14.5 8.8-4 6.5 2.7 12.5-1 17.3-3.7 4.8-9-1.7-13.9 1.9-4.8 3.5 1 8.3-6.4 13.5s-23.9 7-23.9 7z"/>
+      <path d="M577.5 756.8C605.8 739 627 706 642.3 664c-7.6 24.7-27.4 74.7-65.6 96.3l.8-3.4z"/>
+      <path d="M613 723.3c1.6-6.6.5-11.2-.2-16 1.2 4.3 2.5 8.5 2 14.1l-1.9 2zm15-26c0-6.9-2.1-11-4-15.5 2.3 3.9 4.5 7.6 5.4 13.2l-1.4 2.3zm-2.1 7.1c5.2-4.3 9.6-5.1 14.1-6.5-4.3.7-8.5 1.1-13.2 4l-1 2.5zM611 727.8c5.1-4.3 9.6-5 14-6.4-4.2.6-8.4 1-13.2 3.9l-.8 2.5zM557.4 639c3.6-8.6.8-18.5 3.6-25.6 3-7.5 8.7 2 10.7-3.8 2.1-5.9-5.2-11.5-2.4-19.5s10.6-6 12.2-12.6c1.6-6.6-7-7.5-4.3-15.3 2.7-7.9 13-7.1 16.8-16 3.7-8.6 12-8.8 13.6-.3 1 5.7-2.5 11-1 19.5 1.4 8.4 8.4 8.2 6.6 14.7-1.9 6.5-10.8 3.8-14 11.2-3.2 7.3 4.4 12.6 1.2 18.2-3.2 5.5-9.6-.6-14.1 3.8-4.6 4.4 2 8.5-5 15-7 6.4-24 10.7-24 10.7z"/>
+      <path d="M547.3 647.1c27-22.6 44.8-59.9 55.3-105.8-4.6 26.8-18.8 81.6-55.7 109.5l.4-3.7z"/>
+      <path d="M579.8 607.3c.8-7.2-.9-11.7-2.2-16.7 1.8 4.3 3.7 8.5 4 14.4l-1.8 2.3zM592 578c-.9-7.2-3.7-11.1-6.1-15.6 2.7 3.7 5.6 7.3 7.2 13L592 578zm-1.3 7.7c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.2-8.7 2.3-13.3 5.9l-.6 2.8zm-12.4 26.4c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.3-8.7 2.4-13.3 6l-.6 2.7z"/>
+      <path d="M533.4 605.3c4.2-6.6-1-18.7 2.2-24 3.6-5.8 7.3 2.8 9.8-1.7 2.6-4.5-.4-10.3 3-16.4 3.6-6.2 8.6-1.7 10.9-6.9 2.2-5.2-2-5.3 1.3-11.4 3.4-6 12-3.9 16.5-10.6 4.4-6.6 11.5-5.5 11.8 1.9.2 4.8-2.9 7.1-2.7 14.4.1 7.2 4.6 9.5 2.2 14.6-2.5 5-9 1.5-12.6 7.1-3.8 5.6.3 7.8-3.2 11.8-3.5 4-6.4 1.5-10.9 4.4-4.5 3-.7 11.3-7.6 15.6s-20.7 1.2-20.7 1.2z"/>
+      <path d="M522.1 611.2c24.3-10.6 48.6-42.4 63.7-78.7-7.5 21.4-27.5 63.7-63 81l-.7-2.3z"/>
+      <path d="M556.9 582.6c1.7-5.8.8-9.8.3-14 1 3.8 2 7.5 1.5 12.5l-1.8 1.5zm14.4-22.2c.2-6-1.6-9.7-3.2-13.8 1.9 3.5 4 6.9 4.6 11.8l-1.4 2zm-2 6.2c4.8-3.6 8.9-4.1 13-5.1-3.9.4-7.8.6-12.2 2.8l-.9 2.3zm-14.2 20c4.8-3.6 8.9-4.2 13-5.2-3.8.4-7.7.6-12.2 2.9l-.8 2.2zm-173.3 425.7c3.6-9 1-19.7 3.7-27.1 2.9-7.9 8.4 2.5 10.4-3.6s-5-12.5-2.2-20.9c2.8-8.4 10.3-5.8 12-12.8 1.5-7-6.8-8.3-4.1-16.5 2.6-8.3 12.5-7 16.3-16.2 3.7-9 11.7-8.8 13.2.4 1 6-2.4 11.5-1 20.6 1.3 9.1 8.1 9.3 6.3 16-1.8 6.9-10.5 3.6-13.7 11.3-3.1 7.6 4.3 13.7 1.1 19.4-3.2 5.7-9.3-1-13.8 3.4-4.4 4.4 2 9.2-4.9 15.7-6.8 6.5-23.3 10.3-23.3 10.3z"/>
+      <path d="M375.2 1016.4c26.5-22.7 40.7-57.4 51.2-105.9-4.7 28.3-15.5 82-51.6 109.8l.4-3.9z"/>
+      <path d="M403.8 979.7c.8-7.6-.8-12.6-2-18 1.6 4.8 3.5 9.4 3.6 15.7l-1.6 2.3zm12-30.5c-.7-7.7-3.4-12-5.8-17 2.7 4.2 5.5 8.1 7 14.3l-1.1 2.7zm-1.2 8.1c4.7-5.3 9.1-6.6 13.5-8.6-4.2 1.1-8.5 2-13 5.7l-.5 3zM402.4 985c4.7-5.3 9.1-6.7 13.5-8.6-4.2 1.1-8.4 2-12.9 5.6l-.6 3zm158.7-152.7c-7.2-7.5-19.3-10.1-25.2-16-6.3-6.3 7-6.5 2-11.2-5-4.7-15.2-1.3-22-7.7-7-6.5-.4-12.1-6.5-16.8-6-4.7-12 2.2-18.7-4.1-6.8-6.3-.2-14.6-7.4-22.3-7-7.6-2.6-14.7 7.5-11.8 6.6 1.9 10.2 7.6 20 10.6 10 3 13.7-3 19.5 1.8 5.9 4.8-2 11.2 3.9 17.6 6 6.4 16 2.6 20 8.1 4 5.6-6 8-4 14 2 6.2 10.3 2.7 13.1 11.8 2.9 9.2-2.2 26-2.2 26z"/>
+      <path d="M540.3 797c-7.2-4.3-13-5.1-19-6.5 5.6.7 11.1 1.1 17.6 4l1.4 2.5zm-24-25.2c-8.2-2.9-14-2.5-20.2-2.6 5.6-.5 11-1.2 18 .3l2.1 2.3zm7.4 5c-2.8-6.8-1.8-11.4-1.4-16.3-1.1 4.4-2.5 8.6-1.3 14.3l2.7 2zm21 23.9c-2.7-6.8-1.7-11.4-1.3-16.3-1.1 4.4-2.5 8.7-1.3 14.4l2.6 1.9z"/>
+      <path d="M561.7 840c-8.5-34.5-35.7-63.7-78.5-95.8 25.8 17.5 73.7 52.4 82.2 98l-3.7-2.2z"/>
+      <g id="d">
+        <path d="M527.3 890.5c-3.4-8.8-19.8-13-22.7-20.1-3-7.6 9.1-5.3 6.6-11-2.6-5.7-13.4-4-17-11.8-3.4-7.8 5-12.3 1.3-18.2-3.6-5.9-11.8 0-15.4-7.5-3.5-7.6 6-14.8 2.7-24-3.2-9 4-15.4 11.8-10.6 5.3 3.2 6.2 9.6 13.9 14.4 7.7 4.9 13.7-.6 17 5.4 3.2 6-6.7 11-4 18.5 2.8 7.6 13.6 5.6 15 12 1.2 6.3-9 6.9-9.7 13.4-.7 6.5 8.3 4.5 7 14.3s-6.5 25.2-6.5 25.2z"/>
+        <path d="M520 853.1c-4.7-5.7-13-9-18-11.4a58 58 0 0117.8 8.5l.2 3zm-10-24.9c.4-7.3 3.2-11.8 5.7-16.7-2.9 4.2-5.9 8.3-7.2 14.3l1.6 2.4zm12.5 26c.3-7.3-.1-9.7 2.3-14.6-2.9 4.2-2.6 6.3-3.9 12.3l1.6 2.4z"/>
+        <path d="M525.2 906.6c6.8-36.5-12.8-78.4-38.3-118.7 16.1 22.4 52.2 73.9 40.7 121.6l-2.4-2.9z"/>
+        <path d="M505.4 821.9c-6.2-4.4-11.7-5.1-17.2-6.4 5.2.5 10.5.9 16.2 3.6l1 2.7z"/>
+      </g>
+      <path d="M493.6 566.1c-2-7-11.8-8.6-13.4-14.2-1.8-6 5.2-4.7 3.7-9.2-1.5-4.5-6.4-4.9-8.4-11s3-8.2 1-12.8c-2-4.6-4.2-1-6.2-7s3.4-12.3 1.5-19.6c-1.9-7 2.1-12.6 6.6-9.2 3 2.3 3 6.2 7.4 9.7 4.4 3.6 7.9.9 9.8 5.5 1.8 4.7-3.3 8.5-1.8 14.5 1.6 6 4.9 3.7 5.6 8.8.8 5-2.1 6.2-2.5 11.6-.4 5.3 6.4 6.4 5.7 14.4-.7 8-9 18.5-9 18.5z"/>
+      <path d="M491.7 578.8c5.2-26.2-2.3-63.4-17-94.8 9.3 17.3 25.2 56 18.7 95.4l-1.7-.6z"/>
+      <path d="M491.1 534.4c-2.7-4.4-5.5-5.7-8.3-7.5 2.8 1.1 5.5 2 8.2 5.1l.1 2.4zm-6.5-23.8c-3.5-3.2-6.6-3.5-9.8-4.2 3 .1 6 .1 9.3 2l.6 2.2zm2.7 5c.2-6 1.8-9.8 3.2-14-1.6 3.7-3.3 7.1-4.1 12l1 2zm5.3 22.3c.1-6 1.7-9.8 3.1-13.9-1.6 3.6-3.3 7-4 12l.9 1.9zm17 37.3c-.1-6.9-6.8-11.4-7.1-16.9-.3-5.8 14.6-4.3 14.2-8.8-.4-4.4-5.4-4.8-6-10.8s5.4-8 4.4-12.5-4.1-1-4.7-6.9c-.6-5.8 2-12.4 1.8-19.5-.1-7 5.6-12.4 9.4-9 2.6 2.2 1.5 6 5.2 9.5s8.4 1 11.3 4.5c3 3.5 2.3 6.4 2.4 12.3 0 6 4.1 3.6 3.6 8.6-.5 5-3.9 6.1-5.7 11.4-1.8 5.2 5.2 6.2 2.3 14.1-2.8 7.9-31 24-31 24z"/>
+      <path d="M499.2 585.6c24.4-21.6 36.5-63.2 18.3-94a68.8 68.8 0 018.1 50.3 92.1 92.1 0 01-24.8 44.3l-1.6-.6z"/>
+      <path d="M522.3 550.8a31.2 31.2 0 00-8.7-11.5c2.6 1 7.1 6.2 9.2 9.2l-.5 2.3zm4-26.8c-3-3.2-6.1-3.5-9.2-4.2 3 .1 6.2.1 9.2 2v2.2zm1.1.2c1.8-6 4.4-9.6 7-13.7-2.7 3.5-5.4 7-7.4 11.8l.4 1.9zm-4.2 27.5c1.7-5.9 7.8-3.8 12.4-5.2-3.5 0-10.8-1.5-13 3.3l.6 1.9zm-44.3 24.2c-6.5-4.6-4.6-15.7-9.7-19.5-5.5-4-6.7 3.8-10.8.6-4-3.2-2.7-8.6-8.2-13-5.6-4.4-9.5.2-13.5-3.6-4-3.9.5-4.8-4.9-9.2-5.4-4.3-13.9-.8-20.6-5.5-6.7-4.6-13.8-2.3-11.9 3.8 1.3 4 5.2 5.4 7.3 11.4 2 6-2 8.8 2.1 12.5 4.1 3.7 9.9-.5 15.5 3.4s2 6.5 7 9.2 7.1 0 12.7 1.5c5.7 1.5 4.2 9.2 12.7 11.4 8.5 2.1 22.3-3 22.3-3z"/>
+      <path d="M492.6 578.5c-28.8-4-64.1-25.6-91.1-52.7 14.5 16.3 48.3 47.3 91 54.8l.1-2z"/>
+      <path d="M447.2 561.7c-3.5-4.5-3.8-8-4.6-11.6.2 3.3.1 6.7 2.3 10.6l2.3 1zm-22-15.6c-2-5-1.1-8.4-.7-12-1 3.2-2 6.4-1.3 10.7l2 1.4zm4.1 4.7c-6.2-2-10.6-1.6-15.3-1.6 4.2-.5 8.4-1 13.7 0l1.6 1.6zm21 13.8c-6.2-2-10.6-1.7-15.3-1.7 4.2-.4 8.4-1 13.7 0l1.6 1.7zm50.2 41c-8-3.5-6.6-15.4-13-18.4-6.8-3-7.7 5.4-12.7 2.9-5.1-2.6-3.9-8.5-10.8-12-7-3.4-11.3 2.3-16.3-1-5-3.2.3-5-6.5-8.5s-16.5 2-25-1.6c-8.1-3.4-16.4.4-13.7 6.4 1.8 4 6.6 4.5 9.5 10.4 2.9 5.8-1.7 9.6 3.5 12.6s11.7-2.5 18.6.4c7 3 2.9 6.4 9 8.2 6 1.8 8.5-1.5 15.3-1 6.8.4 5.7 8.7 16 9.2 10.2.6 26.1-7.6 26.1-7.6z"/>
+      <path d="M517 605.6c-34.5 1.6-78.1-13.7-112.2-36.4 18.4 14 61 39.5 112.3 38.5l-.1-2.1z"/>
+      <path d="M461.8 597.2c-4.5-3.9-5.1-7.5-6.3-11.1.4 3.5.6 7 3.5 10.6l2.8.5zm-27.3-11.7c-2.8-4.8-2-8.5-1.8-12.4-.9 3.6-2 7.1-.6 11.4l2.4 1zm5.3 4c-7.5-.8-12.8.5-18.4 1.4 5-1.3 10-2.7 16.3-2.8l2 1.4zm26 10c-7.6-.8-12.8.5-18.4 1.5 5-1.4 9.9-2.8 16.3-2.8l2 1.4z"/>
+      <path d="M517.5 629.7c-8.3-3-7.6-15-14.2-17.5-7-2.7-7.3 5.9-12.6 3.7-5.2-2.2-4.3-8.2-11.5-11.2s-11.1 3-16.3 0c-5.2-2.9 0-5-7-8s-16.4 3-25 0c-8.5-3-16.5 1.4-13.4 7.2 2 3.9 7 4.1 10.2 9.7 3.2 5.7-1 9.7 4.3 12.4 5.3 2.7 11.5-3.2 18.6-.8 7.2 2.5 3.3 6.2 9.5 7.6 6.1 1.4 8.4-2 15.2-2 6.8 0 6.3 8.3 16.5 8.2 10.3-.2 25.7-9.3 25.7-9.3z"/>
+      <path d="M534 628.6c-34.4 3.9-79-8.6-114.4-29 19.3 12.7 63.4 35.4 114.6 31.1l-.3-2z"/>
+      <path d="M478.3 623.9c-4.8-3.7-5.6-7.2-7-10.8.6 3.5 1 7 4.1 10.4l3 .4zm-28-10c-3-4.6-2.6-8.4-2.7-12.3-.6 3.7-1.4 7.3.2 11.4l2.5 1zm5.5 3.7c-7.6-.4-12.7 1.3-18.3 2.6 5-1.7 9.8-3.4 16.2-3.9l2 1.3zm26.6 8.3c-7.6-.3-12.7 1.3-18.3 2.6 5-1.6 9.8-3.4 16.2-3.8l2 1.2z"/>
+      <g id="a">
+        <path d="M207.2 997.4c6.6-4.3 15.2-3.2 20.6-6.6 5.7-3.5-3-7 1.5-9.7 4.5-2.5 10.3 3 16.5-.5s3.3-9.9 8.5-12.1c5.2-2.3 7.3 5 13.4 1.5 6-3.3 3.8-12 10.6-16.4 6.6-4.4 5.5-11.4-1.8-11.7-4.9-.1-8.7 3.6-16 3.5-7.2 0-8-6-13.1-3.6-5 2.4-1.5 9.7-7.1 13.4-5.6 3.8-11.2-2-15.2 1.5s1.9 8-1 12.5-7.4-.5-11.6 6.3c-4.3 6.8-5.3 21.9-5.3 21.9z"/>
+        <path d="M202 1007c14.5-26 42.6-46.3 79-61.5-21.5 7.7-64.6 27.1-82 62.4l3-.8z"/>
+        <path d="M230 974c5.7-1.7 9.7-.9 14-.4a31 31 0 00-12.5-1.4l-1.6 1.8zm22.1-14.5c6.1-.2 9.8 1.6 13.9 3.1-3.5-1.8-7-3.8-11.9-4.4l-2 1.3zm-6.1 2.2c3.6-4.9 4.1-8.9 5.1-13-.4 3.8-.6 7.7-2.9 12l-2.2 1zm-20 14.1c3.6-4.8 4.1-8.9 5.1-13-.4 3.9-.6 7.7-2.8 12.1l-2.3 1z"/>
+      </g>
+      <g id="b">
+        <path d="M210.3 1024.5c9 3.6 19.3 0 26.7 2.7 7.8 3-1.9 9.7 4.2 11.8 6.2 2 11.9-6.4 20.2-3.7 8.4 2.8 6.5 11.5 13.4 13 6.9 1.4 7.6-8.2 15.8-5.6 8.2 2.6 7.6 14 17 17.8 9 3.8 9.4 12.9.6 15.1-5.9 1.5-11.5-2.1-20.2 0-8.8 2-8.4 9.7-15.2 8-6.8-1.7-4.2-11.8-12-15-7.6-3.2-13 5.6-18.8 2.3-5.8-3.4.3-10.7-4.3-15.6-4.6-4.8-8.8 2.7-15.7-4.7-6.8-7.4-11.7-26.1-11.7-26.1z"/>
+        <path d="M201.6 1013.7c24 29 63.2 46.9 111.1 56.2-27.9-3.8-85.2-16.8-115-56.5l3.9.3z"/>
+        <path d="M243.7 1047.8c7.5.6 12.2-1.5 17.3-3.3-4.5 2.2-8.8 4.6-15 5.1l-2.3-1.8zm30.6 12.2c7.4-1.3 11.5-4.6 16-7.6-3.7 3.3-7.4 6.7-13.3 8.8l-2.7-1.2zm-8-1c5.5 5.1 7.2 10 9.4 15-1.4-4.8-2.7-9.6-6.5-14.5l-3-.5zm-27.8-12.4c5.5 5 7.2 10 9.4 15-1.4-4.8-2.6-9.6-6.5-14.5l-2.9-.5z"/>
+      </g>
+      <use width="744.1" height="1052.4" transform="translate(44 17.4)" xlink:href="#a"/>
+      <use width="744.1" height="1052.4" transform="translate(59.3 11.2)" xlink:href="#b"/>
+      <g id="e">
+        <path d="M353.5 1034.1c9.8 1 18.8-5.3 26.7-4.7 8.4.6.7 9.8 7.2 10 6.4.3 9.9-9.3 18.7-9 8.8.4 9.2 9.2 16.3 8.7 7-.5 5.3-9.9 14-9.6s11 11.2 21 12.3c9.8 1.1 12.5 9.7 4.5 14.3-5.3 3-11.7 1-19.7 5.4s-5.7 11.7-12.7 12c-7 .1-7.1-10.2-15.5-11.2-8.3-.9-11.3 9-17.8 7.4-6.5-1.6-2.4-10.3-8.1-13.7-5.8-3.3-8 5-16.5-.2s-18-21.7-18-21.7z"/>
+        <path d="M342.3 1026.2c30.8 21 73.5 27.4 122.6 23.2-28.2 4-87.3 7.3-126.4-22.4l3.8-.8z"/>
+        <path d="M392 1047.2c7.4-1.4 11.5-4.8 16-7.9-3.8 3.4-7.4 6.8-13.2 9l-2.8-1zm33 3.3c6.8-3.3 10-7.6 13.6-11.7-2.8 4.2-5.5 8.4-10.7 12l-3-.3zm-8.1 1.2c6.6 3.4 9.5 7.6 13 11.7-2.7-4.1-5.1-8.4-10-12l-3 .3zm-30.3-4.2c6.7 3.3 9.6 7.6 13 11.7-2.6-4.2-5-8.4-10-12l-3 .3z"/>
+      </g>
+      <path d="M292.7 1024.5c5-5 13.2-6.2 17.3-10.2 4.4-4.3-4.5-5.2-1-8.4s10.2 0 15-4.4c4.8-4.3.5-8.8 4.7-12 4.3-3 8 2.4 12.7-1.8 4.8-4.2.5-10.7 5.6-16 5-5.2 2.1-10.7-4.7-9.2-4.5 1-7 5-13.8 6.6-6.7 1.7-9-3-13 .2-4.1 3.2 1 8.4-3.1 12.7-4.2 4.4-10.8 1-13.7 4.8-2.8 3.9 3.8 6.2 2.3 10.6-1.5 4.4-7 1.3-9 7.9-2.2 6.6.7 19.3.7 19.3z"/>
+      <path d="M292 1030.3c6.7-25 25.7-44.8 55.3-65.9-17.7 11.3-50.8 34.2-57.7 67.3l2.5-1.4z"/>
+      <path d="M307.6 1000c5-2.9 8.9-3.1 13-3.8-3.8.2-7.6.2-12 1.9l-1 1.8zm16.8-17.3c5.5-1.6 9.4-1 13.6-.7-3.7-.7-7.4-1.5-12-.8l-1.6 1.5zm-5.1 3.3c2-4.8 1.5-8.3 1.3-12 .7 3.4 1.5 6.6.5 10.7l-1.8 1.3zm-14.8 16.3c2-4.8 1.5-8.2 1.4-11.9.6 3.3 1.4 6.5.5 10.7l-1.9 1.2zm41 15c4-6.2 12-9.1 15.4-14.1 3.5-5.3-5.7-4.4-2.8-8.4 3-4 10.4-2.1 14.3-7.6 4-5.5-1.2-9.3 2.4-13.3 3.7-4.1 8.6.8 12.5-4.5 4-5.4-1.7-11.2 2.4-17.7 4-6.4 0-11.5-6.6-8.6-4.4 2-6.1 6.6-12.6 9.7-6.4 3-9.8-1.4-13.2 2.8-3.5 4.1 2.8 8.4-.6 13.8-3.3 5.4-10.7 3.2-12.8 7.7-2.1 4.6 5 5.7 4.4 10.5-.6 4.8-6.7 2.7-7.6 10-.8 7.2 4.7 19.7 4.7 19.7z"/>
+      <path d="M346 1023.4c1.6-27.1 16.9-51.5 42.6-79.3-15.7 15.3-44.6 45.6-45 81.3l2.3-2z"/>
+      <path d="M355.6 988.8c4.4-3.8 8.3-4.9 12.3-6.4-3.8 1-7.6 1.7-11.7 4.3l-.6 2.1zm13.5-21.1c5.3-2.8 9.3-3 13.6-3.5-4 0-7.8 0-12.4 1.6l-1.2 1.9zm-4.6 4.3c1.2-5.3-.1-8.8-1-12.5 1.3 3.2 2.8 6.4 2.6 10.9l-1.6 1.6zM353 992c1-5.4-.2-8.9-1-12.6 1.3 3.3 2.7 6.4 2.6 10.9L353 992z"/>
+      <g id="f">
+        <path d="M505.9 948.8c7.7-4.2 11.3-13.2 17.4-16.7 6.6-3.7 5.3 6.8 10.2 3.8 5-3 2.8-11.8 9.5-16 6.7-4 11.3 2.3 16.3-1.6s-.9-10 5.7-14c6.5-4.1 13.6 2.8 21.5-1.4 7.8-4 14 1 10.3 8.3-2.5 5-8.2 6.6-12 13.8-3.8 7.2 1.5 11.4-3.6 15-5.1 3.6-10.2-3.9-16.8-.5-6.6 3.5-4 12.2-9.6 14.3-5.6 2-6.8-6.4-12.7-6-5.9.3-3.5 7.6-12.3 8-8.8.3-24-7-24-7z" transform="translate(9.4 -7.9)"/>
+        <path d="M493.7 948.5c33 .2 67.7-16.3 102-43.7-18.9 17-61 48.6-104.4 46.2l2.4-2.5z" transform="translate(9.4 -7.9)"/>
+        <path d="M540.7 939.4c4.8-4.8 6.1-9.3 8-13.8-1.1 4.3-2.1 8.6-5.4 13.2l-2.6.6zm26-14c3.5-5.8 3.7-10.5 4.5-15.3-.1 4.5 0 8.9-2.2 14.1l-2.3 1.2zm-5.4 5c6.6-1 10.7.8 15.3 2.1-4-1.8-7.8-3.7-13.2-3.9l-2.1 1.7zm-24.4 11.8c6.5-.9 10.7.8 15.3 2.2-4-1.8-7.9-3.7-13.3-4l-2 1.8z" transform="translate(9.4 -7.9)"/>
+      </g>
+      <path d="M583 716.2c3.6-8.6.8-18.5 3.6-25.6 3-7.5 8.7 2 10.7-3.9s-5.2-11.5-2.3-19.4 10.5-6 12.1-12.6c1.6-6.6-7-7.5-4.3-15.4 2.8-7.8 13-7 16.8-15.9 3.7-8.6 12-8.8 13.6-.3 1 5.7-2.5 11-1 19.4 1.4 8.5 8.4 8.3 6.6 14.8-1.9 6.5-10.8 3.8-14 11.2-3.2 7.3 4.4 12.6 1.2 18.2-3.2 5.5-9.6-.6-14.1 3.8-4.6 4.4 2 8.5-5 15-7 6.4-24 10.7-24 10.7z"/>
+      <path d="M573 724.4c27-22.6 44.7-59.9 55.2-105.8-4.6 26.8-18.8 81.6-55.7 109.4l.4-3.6z"/>
+      <path d="M605.4 684.6c.9-7.2-.9-11.7-2.2-16.7 1.8 4.3 3.7 8.5 4 14.4l-1.8 2.3zm12.3-29.2c-.9-7.2-3.7-11.2-6.1-15.6 2.7 3.7 5.6 7.3 7.2 13l-1.1 2.6zm-1.3 7.7c4.8-5.2 9.3-6.7 13.9-8.8-4.4 1.3-8.7 2.4-13.3 6l-.6 2.8zM604 689.5c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.3-8.7 2.4-13.3 6l-.6 2.7z"/>
+      <path d="M572.3 672c4.4-7.6 3-17.3 6.4-23.6 3.7-6.7 8 3 10.6-2.3 2.7-5.3-3.6-11.6 0-18.8 3.7-7.1 10.8-4.3 13-10.3 2.4-6-5.7-8-2.2-15 3.5-7.1 13-5 17.7-13 4.6-7.6 12.4-6.8 12.9 1.5.4 5.5-3.6 10-3.2 18.2.3 8.2 7 9 4.5 14.8-2.6 6-10.7 2.3-14.6 8.8-3.9 6.5 2.7 12.6-1 17.4-3.7 4.8-9-1.8-13.8 1.8-4.8 3.5.9 8.3-6.4 13.5s-24 7-24 7z"/>
+      <path d="M561.8 678.5c28.2-17.8 49.4-50.8 64.8-92.9C619 610.3 599 660.3 561 682l.8-3.4z"/>
+      <path d="M597.2 645c1.6-6.6.5-11.2-.1-16 1.1 4.3 2.5 8.5 2 14.1l-2 2zm15-26c0-6.9-2-11-3.9-15.5 2.2 3.9 4.5 7.6 5.3 13.2l-1.4 2.3zm-2 7.1c5.1-4.3 9.5-5.1 14-6.5-4.2.7-8.4 1.1-13.2 4l-.9 2.5zm-14.9 23.5c5.2-4.4 9.6-5.2 14.1-6.5-4.2.6-8.5 1-13.2 3.9l-.9 2.6zm-28.6 126.3c-7.8-5.6-18.2-4.8-24.7-9.2-6.8-4.7 3.7-8.6-1.7-12-5.4-3.5-12.5 3-19.9-1.7-7.3-4.7-3.8-12.3-10-15.4-6.3-3.1-8.9 5.7-16.1 1.2-7.3-4.5-4.5-15-12.6-21-7.8-5.7-6.4-14.3 2.4-14.2 5.9 0 10.4 4.9 19.1 5.2 8.8.3 5-4.3 11.1-1s4.9 12 11.5 17c6.7 4.9 15.2-4.7 20-.1 5 4.5-2.3 9.9 1 15.6 3.5 5.7 9-.3 14 8.3 5 8.6 6 27.3 6 27.3z"/>
+      <path d="M572.9 788.2c-17-33.1-50.6-59.6-94.2-80.4 25.7 10.6 77.4 37 97.7 81.6l-3.5-1.2z"/>
+      <path d="M539.7 745.8c-7-2.5-11.8-1.6-17-1.3 4.7-1 9.2-2 15.2-1l1.8 2.3zm-26.5-19.1c-7.4-.6-11.8 1.4-16.8 3 4.3-2 8.4-4.3 14.4-4.8l2.4 1.8zm7.3 3c-4.2-6.2-4.8-11.2-5.9-16.4.4 4.8.6 9.6 3.3 15.1l2.6 1.2zm23.9 18.5c-4.2-6.1-4.8-11.1-6-16.3.5 4.8.7 9.6 3.3 15.1l2.7 1.2zm30.3 95.2c5.8-6.6 6.3-16.4 11-21.9 4.8-5.8 7.1 4.6 10.7 0 3.7-4.6-1.2-12 3.7-18.3 5-6.3 11.3-2 14.8-7.4 3.4-5.4-4-9 .7-15.2 4.8-6.2 13.7-2.2 19.8-9 6-6.5 13.5-4 12.4 4.2-.7 5.5-5.5 9-6.7 17.2-1.3 8.1 5 10.2 1.5 15.4-3.6 5.2-10.9 0-16 5.5s.2 12.9-4.3 16.8c-4.6 4-8.5-3.6-13.9-1.1-5.4 2.4-.8 8.3-9 11.9-8.1 3.5-24.7 1.9-24.7 1.9z"/>
+      <path d="M563.2 847.5c31.1-11.6 58.3-39.4 81.5-77.3-12.2 22.6-41.4 67.4-83 80.5l1.5-3.2z"/>
+      <path d="M604.3 822.2c3-6.2 2.8-10.9 3-15.8.4 4.5.9 8.9-.7 14.3l-2.3 1.5zm19.9-22.3c1.3-6.8 0-11.3-.9-16 1.4 4.2 3 8.3 2.7 14l-1.8 2zm-3.5 6.5c6-3.2 10.4-3 15.1-3.4-4.3-.3-8.5-.7-13.7 1l-1.4 2.4zm-19 19.8c5.8-3.1 10.3-3 15-3.4-4.3-.2-8.5-.7-13.7 1l-1.4 2.4z"/>
+      <use width="744.1" height="1052.4" transform="rotate(15 310 758.4)" xlink:href="#c"/>
+      <use id="c" width="744.1" height="1052.4" transform="rotate(5 93.2 577.1)" xlink:href="#d"/>
+      <use width="744.1" height="1052.4" transform="rotate(-10 275 690.3)" xlink:href="#e"/>
+      <use width="744.1" height="1052.4" transform="rotate(10 225.4 653.9)" xlink:href="#f"/>
+    </g>
+    <use width="1" height="1" transform="matrix(-1 0 0 1 840 .1)" xlink:href="#g"/>
+  </g>
+  <g stroke="#d4af37" stroke-width=".4">
+    <path fill="#007ea8" d="M232.8 220.5l-11.2 14a21 21 0 015.8 14.3 42.9 42.9 0 01-2.2 14v.1H256v-42.1c-6.8 4.2-16.1 5.9-23.2-.3z"/>
+    <path fill="#fff" d="M279.2 220.5c-7 6.2-16.4 4.5-23.2.3v42.1h30.8c-1.2-3.9-2.2-8-2.2-14.1a21 21 0 015.8-14.3l-11.2-14z"/>
+    <path fill="#d91023" d="M225.2 263c-1.7 5.2-3.8 9.7-4.5 17.2-1 11.2 8 17.3 11.7 19 5.7 2.7 11.7 1.8 17.8 2.6 2.8.3 4.4 2.1 5.8 3.6 1.4-1.5 3-3.3 5.8-3.6 6.1-.8 12 .1 17.8-2.6 3.7-1.7 12.6-7.8 11.7-19-.7-7.5-2.8-12-4.5-17.3h-61.6z"/>
+  </g>
+  <g stroke="#d4af37" stroke-width="3">
+    <g fill="#00a854" stroke-width="6.2" transform="matrix(.06756 0 0 .07111 186.3 262)">
+      <g id="j" stroke-width="3.1">
+        <path d="M1074.7-201.4s5.9-20.4 18-29.3c12-9 25.2-5.7 33.2-8.9-5.4 6.8-6 20.3-18 29.3s-33.2 8.9-33.2 8.9zm48.7-36.4c-8.3 2.3-13.5-.3-25 4m17.4 1.8c-8.4 2.2-14.1-1.4-25.4 3.4m16.2 3.4c-8 2.8-11.7-1.2-22.5 4m13.3 3c-8 2.7-9.6-1.8-17.5 4.2m9.3 1.8c-5.2 1.7-7.5-.2-12.2 5m46.4-30.5c-4.5 7.3-3.5 13-10.8 22.8m3.2-17.1c-4.5 7.3-2.8 13.9-10.5 23.3m1.3-16.5c-5 6.8-2.2 11.5-10.3 20.4m1-13.5c-4.9 6.8-1 9.7-9 15.6m.9-9.5c-3 4.5-2 7.3-8.3 10.2"/>
+        <path d="M1130.8-243.6l-24.2 18-31.6 24 32-23.5 24.2-18m-23-73.9s16.7 13 20.5 27.5c3.8 14.5-4 25.5-4 34.1-4.4-7.4-16.7-13-20.7-27.5s4.1-34.1 4.1-34.1zm15.6 58.7c1-8.6 5.3-12.4 5.7-24.6m-8.1 15.3c1-8.5 6.4-12.6 6.2-24.7m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.3 2.5-17.9m-5.1 8c.3-5.4 3-7-.2-13.2m11.2 54.5c-5.1-7-10.8-8.1-17.1-18.5m14.7 9.3c-5.2-7-12-7.8-17.8-18.4m14.8 7.3c-4.5-7.1-9.9-6.3-15.2-17.1m12.2 6c-4.5-7.1-8.6-4.6-11-14.2m8.4 4.3c-3-4.5-6-4.5-6.4-11.5"/>
+        <path d="M1126.6-249.3l-7.8-29.1-10.6-38.3 10 38.5a5074.4 5074.4 0 007.8 29"/>
+        <g id="h">
+          <path d="M1206.4-261.9s16.8 13 20.6 27.6c3.8 14.5-4 25.5-4 34-4.4-7.4-16.7-13-20.6-27.4-4-14.5 4-34.2 4-34.2zm15.7 58.7c1-8.5 5.4-12.4 5.7-24.6m-8.1 15.4c1-8.6 6.4-12.6 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.2 2.5-17.8m-5.1 8c.4-5.5 3-7-.2-13.2m11.2 54.4c-5.1-6.9-10.8-8-17.1-18.5m14.7 9.3c-5.2-6.9-12-7.7-17.8-18.3m14.8 7.2c-4.5-7-9.9-6.3-15.1-17m12.1 6c-4.5-7.2-8.6-4.7-11-14.3m8.4 4.4c-3-4.5-6-4.6-6.4-11.5"/>
+          <path d="M1224.9-194.1l-7.8-29.2-10.6-38.2 10 38.4a5155 5155 0 007.8 29.1m-53.8 57.3s2.9-21 13.5-31.6c10.7-10.6 24.2-9.2 31.6-13.5-4.3 7.4-3 20.9-13.5 31.6-10.6 10.6-31.6 13.5-31.6 13.5zm43-43c-8 3.4-13.4 1.7-24.2 7.5m17.4-.7c-8 3.4-14.2.7-24.6 7m16.5 1.1c-7.4 3.9-11.7.5-21.7 7.2m13.6 1c-7.5 3.8-9.7-.4-16.7 6.7m9.5.4c-5 2.4-7.5 1-11.3 6.8m41.5-37c-3.4 8-1.7 13.4-7.5 24.1m.7-17.3c-3.4 7.9-.7 14.1-7 24.6m-1.1-16.5c-3.9 7.4-.5 11.7-7.2 21.7m-1-13.6c-3.8 7.5.4 9.7-6.7 16.7m-.5-9.5c-2.4 5-.9 7.5-6.7 11.3"/>
+          <path d="M1219.9-186.6l-21.3 21.4-27.9 28.2s18.9-18.4 28.3-27.8a5074.4 5074.4 0 0021.4-21.3"/>
+        </g>
+        <path d="M1057-278.6s20.6-5.1 34.4.9c13.8 6 17.5 19 24.3 24.3-8.5-1.2-20.5 5-34.4-.9-13.8-5.8-24.2-24.3-24.2-24.3zm55.9 24c-6-6-6.5-11.8-15.9-19.6m7.1 15.8c-6-6-5.9-12.9-15.6-20.2m5 15.7c-6.3-5.5-4.7-10.7-14.7-17.4m4.2 12.9c-6.4-5.5-3.3-9.2-12.5-13m3.1 9c-4-3.7-3.6-6.7-10.4-8m49.7 24.8c-8.6-.2-13 3.5-25.2 2m16.4-5.8c-8.6-.2-13.4 4.6-25.4 2.6m14.9-7.1c-8.4-.9-11 3.9-22.8 1.3m12.2-5.8c-8.3-.9-8.9 3.9-18-.1m8.6-4c-5.4-.4-7.2 2-13-2"/>
+        <path d="M1121.7-251.2L1094-263l-36.6-15.4 36.3 16a5135.7 5135.7 0 0027.7 12M1072.3-384s14.7-15.3 29.5-17.5c14.9-2.3 25 6.7 33.5 7.6-7.8 3.5-14.7 15.2-29.5 17.6-14.9 2.4-33.5-7.7-33.5-7.7zm60-9.4c-8.4-2-11.8-6.6-23.9-8.2m14.5 9.7c-8.4-2-11.9-7.8-24-8.9m12.6 10.7c-8.3-1.3-9.7-6.5-21.7-7m10.4 8.7c-8.3-1.2-7.7-6-17.5-4.3m7.4 6c-5.4-1-6.6-3.8-13.1-1.3m55.3-5.4c-7.4 4.4-9.2 9.9-20.2 15.1m10.8-13.6c-7.4 4.4-9 11-20.2 15.7m8.8-14c-7.5 3.8-7.3 9.2-18.6 13.3m7.3-11.5c-7.5 3.7-5.5 8-15.3 9.5m5.2-7.9c-4.8 2.5-5.2 5.5-12.1 5.1"/>
+        <path d="M1141.6-395l-29.8 4.6c-13.1 2-39.2 6.4-39.2 6.4l39.3-5.8 29.8-4.6M1102-455s20 7 28.2 19.6c8.2 12.6 4.2 25.5 6.9 33.7-6.4-5.7-19.9-7.1-28.2-19.6-8.3-12.6-6.9-33.7-6.9-33.7zm33.4 50.8c-1.7-8.5 1.1-13.5-2.4-25.2m-2.8 17.2c-1.7-8.5 2.1-14-2-25.5m-4.3 15.9c-2.3-8 1.8-11.6-2.7-22.7m-3.7 13c-2.3-8 2.3-9.4-3.2-17.6m-2.4 9.2c-1.3-5.3.6-7.6-4.3-12.5m27.8 48.2c-7-5-12.8-4.4-22.1-12.2m16.9 4.2c-7.1-5-13.8-3.6-22.7-11.9m16.4 2.3c-6.5-5.3-11.4-2.9-19.8-11.5m13.4 1.9c-6.5-5.3-9.5-1.7-15-10m9.4 1.5c-4.3-3.4-7.1-2.4-9.6-9"/>
+        <path d="M1141-396.4l-16.6-25.2-22.1-33 21.6 33.3a5079.8 5079.8 0 0016.5 25.2"/>
+        <g id="i">
+          <path d="M1213.7-401.8s16.7 13 20.6 27.5c3.8 14.5-4.1 25.5-4.1 34.1-4.3-7.4-16.6-13-20.6-27.5s4-34.1 4-34.1zm15.7 58.7c1-8.6 5.3-12.4 5.6-24.6m-8 15.4c1-8.6 6.4-12.7 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.5-22.4m-7.5 11.3c.3-8.4 5.1-8.3 2.5-17.9m-5.2 8c.4-5.4 3-7-.2-13.1m11.3 54.4c-5.2-6.9-10.8-8.1-17.2-18.5m14.7 9.3c-5.2-7-11.9-7.7-17.8-18.4m14.9 7.3c-4.5-7.1-10-6.3-15.2-17.1m12.2 6c-4.5-7.1-8.6-4.6-11.1-14.2m8.4 4.3c-3-4.5-6-4.5-6.3-11.5"/>
+          <path d="M1232.1-334.1l-7.8-29.1-10.5-38.3s6.5 25.6 10 38.5a5074.4 5074.4 0 007.7 29m-64.4 39s8.2-19.5 21.3-27c13-7.4 25.7-2.6 34-4.8-6.1 6-8.3 19.4-21.3 27-13 7.6-34 4.9-34 4.9zm52.6-30.3c-8.5 1.2-13.4-1.9-25.2 1m17 3.8c-8.6 1.2-14-3-25.6.4m15.6 5.3c-8.2 1.9-11.4-2.5-22.8 1.4m12.9 4.4c-8.2 1.8-9.3-2.9-18 2.2m9.1 2.9c-5.3 1-7.4-1-12.6 3.6m49.6-25c-5.3 6.8-5 12.6-13.4 21.4m5.2-16.6c-5.4 6.8-4.4 13.5-13.2 22m3.2-16.3c-5.7 6.2-3.5 11.2-12.6 19m2.7-13.2c-5.7 6.1-2.2 9.4-10.9 14.3m2-9.2c-3.5 4-2.8 7-9.4 9.1"/>
+          <path d="M1227.7-330.3l-26 15.1-34.3 20.1 34.5-19.5a5074.4 5074.4 0 0026.1-15.1"/>
+        </g>
+        <path d="M1182.2-442s19.7-8 34.2-4c14.5 4 20 16.3 27.4 20.7-8.6 0-19.6 7.8-34.1 4-14.5-4-27.5-20.7-27.5-20.7zm58.7 15.9c-6.9-5.2-8.1-10.9-18.5-17.2m9.2 14.7c-6.8-5.2-7.6-12-18.2-17.9m7.2 14.9c-7.1-4.5-6.3-10-17-15.2m5.9 12.2c-7-4.5-4.6-8.6-14.2-11.1m4.3 8.4c-4.5-3-4.5-6-11.4-6.4m52.7 17.6c-8.6 1-12.5 5.2-24.6 5.5m15.4-8c-8.6 1-12.7 6.4-24.8 6.1m13.7-9.1c-8.4.3-10.4 5.4-22.4 4.5m11.3-7.5c-8.4.3-8.3 5-17.9 2.4m8-5c-5.4.2-7 2.8-13.1-.4"/>
+        <path d="M1250-424l-29-7.9-38.5-10 38.3 10.7a5074.4 5074.4 0 0029 7.8m-34.7-73.7s19.5 8.2 27 21.3c7.4 13 2.6 25.7 4.8 34-6-6.1-19.4-8.3-27-21.3-7.5-13-4.8-34-4.8-34zm30.3 52.7c-1.2-8.6 2-13.4-.9-25.3m-3.9 17c-1.2-8.6 3-13.9-.3-25.6m-5.4 15.6c-1.8-8.2 2.6-11.4-1.3-22.8m-4.4 12.8c-1.8-8.2 2.8-9.3-2.2-17.8m-2.9 9c-1-5.3 1-7.5-3.6-12.7m24.9 49.8c-6.8-5.4-12.6-5.1-21.4-13.5m16.6 5.2c-6.8-5.4-13.5-4.4-21.9-13.2m16.2 3.2c-6.2-5.7-11.2-3.5-19-12.6m13.3 2.7c-6.2-5.7-9.5-2.3-14.4-11m9.3 2c-4-3.5-7-2.7-9.1-9.4"/>
+        <path d="M1250.3-436.4l-15-26.2-20-34.3 19.5 34.6a5040.8 5040.8 0 0015 26.2"/>
+        <use width="744.1" height="1052.4" transform="translate(-32 -18)" xlink:href="#h"/>
+        <path d="M1142.4-297.9s16.8 13 20.6 27.6c3.8 14.5-4 25.5-4 34-4.4-7.4-16.7-13-20.6-27.4-4-14.5 4-34.2 4-34.2zm15.7 58.7c1-8.5 5.4-12.4 5.7-24.6m-8.1 15.4c1-8.6 6.4-12.6 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.2 2.5-17.8m-5.1 8c.4-5.5 3-7-.2-13.2m11.2 54.4c-5.1-6.9-10.8-8-17.1-18.5m14.7 9.3c-5.2-6.9-12-7.7-17.8-18.3m14.8 7.2c-4.5-7-9.9-6.3-15.1-17m12.1 6c-4.5-7.2-8.6-4.7-11-14.3m8.4 4.4c-3-4.5-6-4.6-6.4-11.5"/>
+        <path d="M1160.9-230.1l-7.8-29.2-10.6-38.2 10 38.4a5155 5155 0 007.8 29.1m-53.8 57.3s2.9-21 13.5-31.6c10.7-10.6 24.2-9.2 31.6-13.5-4.3 7.4-3 20.9-13.5 31.6-10.6 10.6-31.6 13.5-31.6 13.5zm43-43c-8 3.4-13.4 1.7-24.2 7.5m17.4-.7c-8 3.4-14.2.7-24.6 7m16.5 1.1c-7.4 3.9-11.7.5-21.7 7.2m13.6 1c-7.5 3.8-9.7-.4-16.7 6.7m9.5.4c-5 2.4-7.5 1-11.3 6.8m41.5-37c-3.4 8-1.7 13.4-7.5 24.1m.7-17.3c-3.4 7.9-.7 14.1-7 24.6m-1.1-16.5c-3.9 7.4-.5 11.7-7.2 21.7m-1-13.6c-3.8 7.5.4 9.7-6.7 16.7m-.5-9.5c-2.4 5-.9 7.5-6.7 11.3"/>
+        <path d="M1155.9-222.6l-21.3 21.4-27.9 28.2s18.9-18.4 28.3-27.8a5074.4 5074.4 0 0021.4-21.3"/>
+        <use width="744.1" height="1052.4" transform="translate(-62 -40)" xlink:href="#i"/>
+        <use width="744.1" height="1052.4" transform="translate(-31 -20)" xlink:href="#i"/>
+      </g>
+      <use width="744.1" height="1052.4" transform="matrix(-1 0 0 1 2501 0)" xlink:href="#j"/>
+      <path fill="#947245" d="M1250.5-437.1c-8.6 41.6-8.6 79.1-8.6 79.1-.5 14-7.4 23.7-13.8 20-54.9-31.7-60.3-37.5-89.1-59.6 24.3 26.4 31.2 38.2 86.7 70.2 10.7 6.2 12 16.4 11.6 29.5l-1.6 61.7c-.3 9 5.7 50.1-22.6 34.2-65.4-36.6-63.8-33.6-95.1-51.6 38 32.3 24.4 23.4 90.6 61.7 12 6.9 24.5 24.5 24.5 32.8 0 124.3 1.9 101.5-12.8 139.1h60.4c-14.7-37.6-12.8-14.8-12.8-139 0-8.4 12.6-26 24.5-33 66.2-38.2 51.5-29.3 89.6-61.6-31.3 18-28.7 15-94.1 51.6-28.3 15.9-22.3-25.2-22.6-34.2l-1.6-61.7c-.5-13.1.9-23.3 11.6-29.5 55.5-32 62.4-43.8 86.7-70.2-28.8 22-34.2 28-89.1 59.6-6.4 3.7-13.3-6-13.8-20 0 0 0-37.5-8.6-79.1z"/>
+    </g>
+    <g stroke-width="2.7">
+      <path fill="#e3e4e5" stroke-linecap="square" d="M264.4 424.6c-.2 1 1.6 12.4.6 15.7-.5 4.5-.6 5.2-1.7 11.1-1 5.9-2.4 17.3-4.4 24.2a37.3 37.3 0 00-.7 12.4l3.6 19.4s1.6 2 1.8 2.7c.3.8-.1 2 0 2.3 1 1.3 1.1 2.7 2.2 3.8.2.2 1 .1 1.1.4.2.2 1.5.3 1.8.4.8.8.6 1.3 1 2.4h-6.3c.2-2.8-2-3.9-2-3.9-.3-.3-2.9-1-3.2-2.7-.4-2.4 0-2.8 0-2.8s-2.2-9-3-11.4c-.6-1.7-.7-2.6-1-4-.7-4.3-1-6.2-3.2-12.5-.6-1-2-1.4-1.9-2.9l.7-1.4v-1.2l1.1-15.5a1.9 1.9 0 00.3-.7c.6-8.8-4.1-17-7.1-25-.6-1.4-.1-3-.7-4.4-3.2-1-5.4-6.4-6.6-9.8a23 23 0 01-.7-11.6 5 5 0 011-2.5m63.2 36.7a8.3 8.3 0 012.5-.4l1 1.5c1.5 2.8 3.4 15.4 4.4 21.2l1.5 7.9s-.4 2 .3 4.3l.6 2.1c.8 3 1.7 3.8 1.7 3.8.2.8 1.4 6.8 1.7 7.5a75.2 75.2 0 012.6 16.7c-.1 4.7-.1 4.2.3 4.6 1 1 1.5.4 3.8 6.1 0 .5.2-.2.5.2.2.6.7.5 1.1.6.8 0 .6.2 1.2.3a6.3 6.3 0 001.6 0h5.5a5.4 5.4 0 00-4.9-3.4c-.8-.5-1.8-1.2-2.1-2.3l-2.3-3.3c.1-.7-.4-1.7-.6-2.5l-2-23.2s.4-2.3.4-4.7c-.2-12.8.6-25.6 1-38.5.2-1 4-4.7 4-4.7" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" stroke-linecap="square" d="M356.8 323.8a7.3 7.3 0 00-5.5 2.5 22 22 0 00-3 10.6c-.1.8.2 1.4 0 2.2a83.3 83.3 0 00-1.7 5c-.7 4.2-.9 19.7-2 25.6-1 6-6 14.6-8 17.4a9.7 9.7 0 01-4.5 2.2c-.8.2-7.2-.5-7.2-.5-8.4-.6-21-5.2-29.5-6.4-8.4-1.1-18.7-.6-26.6-1.4 0 0-10-3.7-19.1-1-9 2.6-14.1 7.5-22 19.5 0 0-3.4 4.1-3.4 5.5a17 17 0 005.2 12.8c1.1 1 .8.1.7-.1.4.7.7 2.4 1.2 3a43.7 43.7 0 013.2 5.2c.8 1.5.4 3.3 1.1 4.8 3.9 8.3 2 16.8 2 26.5a2 2 0 01-.1.8c-.1 5.7-5.7 13.3-5.7 19v1.2l-.7 1.6c0 1.6-2.1 1.9-1.5 3 3 6.7 3.4 8.7 4.5 13.2.4 1.7.6 2.6 1.3 4.5 1 2.4 4 12 4 12s-.3.6.3 3.2c.4 1.8 3.3 2.3 3.6 2.6a6 6 0 002.7 4.7c0 .4 2.5.3 2.8.3l3-.2c0-1.3-.4-2-1.3-2.8-.3-.1-1.5-.5-1.7-.7l-.6-1c-1.3-1.1-1.5-2.6-2.6-4-.2-.2.1-1.6-.2-2.4-.3-.9-2.2-2.8-2.2-2.8l-5.2-20.9c-.7-4.7 2.8-7.4 3.2-11.3 0-.8 4.6-12.2 4.8-12.8 3.3-8.9 8.8-22.8 8.7-28.7-.1-6.6-.3 1.3.3-3.7.5-3.8-1.7-13.8-1.5-14.8 12.4 20.7 24.5 28.2 44.5 26.2a9 9 0 012.5 0s.5 1.1.5 1.6c.8 2.9-1 15.3-1.7 21.2l-.8 7.8s-1 2-1 4.2v2.1c-.1 3 .6 4 .6 4l-.5 7.4a60.9 60.9 0 01-2.3 15.4c-.2.6-.7 1.5-1.3 1.6-.6.5-1.5 1.4-1.6 2.2 0 .6 0 1.2.2 1.8 0 .5.5 1.2.8 1.6.4 1.8.2 3.6.2 5.4l.3 1.7c.1.5.6.5 1 .6.7.2.5.6 1 .8l1.6.1h5.4c-.1-2-2-3-3.5-4-.7-.6-.6-.8-.6-1.8l-.1-4c0-.7.3-1 .5-1.5.3-.7.1-1.7.1-2.5 1-6.9 2.2-14 4-20.6 1.5-2 2.1-4.3 2.5-6.7 0 0 1.2-3.2.8-5l5-30a3.9 3.9 0 012.4-2.3c6.1-2.7 12.3-4.6 18-8.6 6.4-4.4 10.2-11.6 14.7-18 1-2 2.1-3.6 3.2-5.4a93 93 0 0010-27.2c1.5-8.5 1-16.9 3.4-27 .5-2.1 2.4-3.8 2.8-6v-.5l1.2-.1 3.8-.5h3.2l1.8.1c.5 0 1.4.6 1.9.6s1-.1 1.3-.6c.7-.8.7-.5.9-1.3 0-.2.3 0 .4 0 .5-.2.9-.8 1.4-1 .4 0 .7-.2.8-.5v-1.6c0-.8 0-.8-.5-1h-.2c-.6-.2 0-1.4 0-2a3.8 3.8 0 00-.1-1.6 2.4 2.4 0 00-.9-1.1l-.9-1c-2.8-2.3-4-4.1-6-6 .3-.4.3-.6.2-1.3-1-2.7-2.7-3.2-5.6-5.4a25.6 25.6 0 00-10.1-3.7h-1.6a6.6 6.6 0 00-.4 0z" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#d18219" stroke="none" d="M249.5 228.4a1.1 1.1 0 00-.8.4 3.7 3.7 0 00-.5 1.6v.4l-.3.8c0 .6-.1 3-.3 4s-.9 2.3-1.2 2.7l-.7.4-1.1-.1c-1.4-.1-3.3-.8-4.6-1-1.4-.2-3-.1-4.2-.2 0 0-1.5-.6-3-.2-1.4.4-2.2 1.2-3.4 3 0 0-.5.7-.5 1 0 .6.2 1.5.8 2h.1c0-1 .2-1.6.2-1.6a4.6 4.6 0 00.3 1.6l.6 1c.3.7.5 3 .6 3.8l-.5 2.8c-.5 1.4-.7 2.6-.1 1.7.2-.4 1.1-2.2 1.6-3.8.4-1.6.9-2.6.8-3l-.2-2.3a1.3 1.3 0 010-.2l-.1-.3.2-1.1c2.3 4.3 6 4.8 8.4 1.8a12.5 12.5 0 00-.3 3.7v.7l-.4 4.1-.2.5v.7h.1v.7l.4-1v-.7l.9-4.7a.4.4 0 010-.1l.6-.6c.1-.2.6-2 .5-3.3-.1-2.7 3.5-3.5 4.7-2.1l1.1-1a6.3 6.3 0 00.8-1.5v-.3a9.7 9.7 0 00.2-.7 12.2 12.2 0 00.2-1v-1l.1-1a11.8 11.8 0 01.3-1.2 1.1 1.1 0 010-.2l.2-.3a2.9 2.9 0 00.1-.2v-.3h.2-.9a1 1 0 01-.4 0l-.7-.8.3-1.3c.3-.7.6-.2 1.3 0a6 6 0 012 1l.6.1h.2v-.3a1.4 1.4 0 000-.1.4.4 0 000-.1.4.4 0 00-.2-.2l-.1-.1-1-1c.1 0 .1 0 0-.2 0-.4-.3-.5-.8-.8a4 4 0 00-1.6-.6h-.2z"/>
+      <path fill="none" stroke-linecap="square" d="M356.8 323.8a7.3 7.3 0 00-5.5 2.5 22 22 0 00-3 10.6c-.1.8.2 1.4 0 2.2a83.3 83.3 0 00-1.7 5c-.7 4.2-.9 19.7-2 25.6-1 6-6 14.6-8 17.4a9.7 9.7 0 01-4.5 2.2c-.8.2-7.2-.5-7.2-.5-8.4-.6-21-5.2-29.5-6.4-8.4-1.1-18.7-.6-26.6-1.4 0 0-10-3.7-19.1-1-9 2.6-14.1 7.5-22 19.5 0 0-3.4 4.1-3.4 5.5a17 17 0 005.2 12.8c1.1 1 .8.1.7-.1.4.7.7 2.4 1.2 3a43.7 43.7 0 013.2 5.2c.8 1.5.4 3.3 1.1 4.8 3.9 8.3 2 16.8 2 26.5a2 2 0 01-.1.8c-.1 5.7-5.7 13.3-5.7 19v1.2l-.7 1.6c0 1.6-2.1 1.9-1.5 3 3 6.7 3.4 8.7 4.5 13.2.4 1.7.6 2.6 1.3 4.5 1 2.4 4 12 4 12s-.3.6.3 3.2c.4 1.8 3.3 2.3 3.6 2.6a6 6 0 002.7 4.7c0 .4 2.5.3 2.8.3l3-.2c0-1.3-.4-2-1.3-2.8-.3-.1-1.5-.5-1.7-.7l-.6-1c-1.3-1.1-1.5-2.6-2.6-4-.2-.2.1-1.6-.2-2.4-.3-.9-2.2-2.8-2.2-2.8l-5.2-20.9c-.7-4.7 2.8-7.4 3.2-11.3 0-.8 4.6-12.2 4.8-12.8 3.3-8.9 8.8-22.8 8.7-28.7-.1-6.6-.3 1.3.3-3.7.5-3.8-1.7-13.8-1.5-14.8 12.4 20.7 24.5 28.2 44.5 26.2a9 9 0 012.5 0s.5 1.1.5 1.6c.8 2.9-1 15.3-1.7 21.2l-.8 7.8s-1 2-1 4.2v2.1c-.1 3 .6 4 .6 4l-.5 7.4a60.9 60.9 0 01-2.3 15.4c-.2.6-.7 1.5-1.3 1.6-.6.5-1.5 1.4-1.6 2.2 0 .6 0 1.2.2 1.8 0 .5.5 1.2.8 1.6.4 1.8.2 3.6.2 5.4l.3 1.7c.1.5.6.5 1 .6.7.2.5.6 1 .8l1.6.1h5.4c-.1-2-2-3-3.5-4-.7-.6-.6-.8-.6-1.8l-.1-4c0-.7.3-1 .5-1.5.3-.7.1-1.7.1-2.5 1-6.9 2.2-14 4-20.6 1.5-2 2.1-4.3 2.5-6.7 0 0 1.2-3.2.8-5l5-30a3.9 3.9 0 012.4-2.3c6.1-2.7 12.3-4.6 18-8.6 6.4-4.4 10.2-11.6 14.7-18 1-2 2.1-3.6 3.2-5.4a93 93 0 0010-27.2c1.5-8.5 1-16.9 3.4-27 .5-2.1 2.4-3.8 2.8-6v-.5l1.2-.1 3.8-.5h3.2l1.8.1c.5 0 1.4.6 1.9.6s1-.1 1.3-.6c.7-.8.7-.5.9-1.3 0-.2.3 0 .4 0 .5-.2.9-.8 1.4-1 .4 0 .7-.2.8-.5v-1.6c0-.8 0-.8-.5-1h-.2c-.6-.2 0-1.4 0-2a3.8 3.8 0 00-.1-1.6 2.4 2.4 0 00-.9-1.1l-.9-1c-2.8-2.3-4-4.1-6-6 .3-.4.3-.6.2-1.3-1-2.7-2.7-3.2-5.6-5.4a25.6 25.6 0 00-10.1-3.7h-1.6a6.6 6.6 0 00-.4 0z" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#d39044" stroke-linecap="square" d="M382.3 343.8l-.3 1.2v.2l.3-1.2v-.2z" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M335 432.9c-2.1 8.3-7.2 10-3.5 17 0 0-1.6 0-2.6-2.8a17 17 0 01-.7-6.3 46.8 46.8 0 011.2-8.5" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M338.8 429.4c-2.1 8.4-7.2 10-3.5 17.1 0 0-2 0-3-2.7a19 19 0 01-.8-5.4c0-1.7.4-4.7.8-6a31 31 0 011.2-3.2" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M345.8 418.4c-3 5.5-5.3 10.2-6.6 14.3-1.2 4-2 6.3.4 10.6 0 0-1.6-.8-3.7-4.6a13 13 0 01-.8-6.6 30.6 30.6 0 01.8-4.4 30 30 0 01.8-2.6" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M348.5 414.9c-1.8 2.8-2.4 5.5-3.4 7.7a29 29 0 00-3.1 10.5c0 2-.3 3.7 1.9 7.1 0 0-1-.1-1.7-.5a6.2 6.2 0 01-2.3-2.7 15 15 0 01-1.3-6.5c0-1.5.5-3.7.9-5.2s1.8-4.5 1.8-4.5" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#d18219" fill-rule="evenodd" stroke-width="1.4" d="M353.3 334.5c0-.2-11.6-3.6-13.3-13.8 2.3-2.2 14.3 5.7 14.5 13" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill-opacity=".5" fill-rule="evenodd" stroke-width="1.4" d="M340.4 320.8c.1.2 6.3.2 11.2 10.6-1.1-1.2-6 1.7-11.1-10.2" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill-rule="evenodd" stroke-width="1.4" d="M368.7 335.6c.2-.2.4-.5.1-.8-5-3.2-4.8.7-8.4.7 1.7 0 1.7.2 2.3 1 2.3 2.4 4 2.2 6-.2" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="none" stroke-linecap="square" d="M381.2 349.8c-.6.6-2.5-.8-4-1" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill-rule="evenodd" stroke-linecap="square" d="M382.3 346s-.5-.5-4.3-1c0 0 2.6-2.7 2.8.3" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M302.7 436.9a33.6 33.6 0 00-1 1.8c-1 2.3-1.4 4.5.5 8 0 0-1.6 0-2.6-2.8-.5-1.3-.8-3.3-.7-6.3l.2-2.4" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+      <path fill="none" d="M230.7 419.1s-1.5-6.2 2.1-13" transform="matrix(.15595 0 0 .15696 193.9 177.6)"/>
+    </g>
+    <g fill="#e7ca00" stroke-width="2.3">
+      <path d="M401.4 879.5c-2-1.6-4-6.3-3.2-8.9-2.7-2.2-9.7 2.2-6.3 8.6 3.3 6.4 8 5.8 9.5.3zm19.1 6c.6-3.6-.7-9.7-7-10.8-6.1-1-8 4.6-6.9 10.3 4.5-3.4 11.7-1.6 14 .5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M407.4 882c1-4.7 5.9-6 10.6-5.6-3-3.3-6-8.8-10.3-5.6-3.3 2.5-5.6 6.2-.3 11.2z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M404.8 879.3c.5-3.6 2-8.4 5.9-10.4-3.4-3-11.7-2.1-12.3 4.1-.6 6.2 3 7.5 6.4 6.3zm-16 40c5.4 1 12.4-1.7 10.4-13.6-1.9-11.3-10.2-14-10.8-11.4 4.8 1.7 4.1 17.7.5 25.1z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M396.8 918.1c5.3 1 13.7-2.1 9.9-13.8-3.7-11.5-12.2-10-12.8-7.2 4.7 1.9 6.5 13 2.8 21z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M376.7 918.2c3.9 3.4 13.9 4.7 17-6.9 3-10.9.3-14.4-3.6-16.1 2 5.6-5 21.6-13.4 23zm25.5-1c3.2-1.8 10.6-5 5.8-16-4-9-10.1-5.2-11.8-3.7 4.3 1.8 8.1 11.5 6 19.7z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M409.2 914.6c3-2 10.7-7 4.6-17.8-6.1-10.5-14.2-3.5-14.2-.7 3.5 1 9.6 10 9.7 18.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M416.7 907.3c2-2.8 7.2-9.8-.7-16.8a6.7 6.7 0 00-12 4.3c3.2-.5 10.6 5.2 12.7 12.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M421.2 896.3c.5-3.6 2-12.6-7-14.7-9-2-9.6 8.6-8.1 10.4 2.4-2.2 10.5-1 15 4.3zm-50.3 18.6c3.4 4.2 13.4 7 18.7-4.1 5-10.7 2.7-14.7-1-17.2 1 6.1-9 21.3-17.7 21.3z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M360.9 906.7c3.2 6.6 19.2 14 25.5 2 5.9-11.6 1-22.2-4-26.2 2.4 11.8-12 29.7-21.6 24.2z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M352.4 898.4c7.8 17.2 24.1 14.2 29.6 1.7 5.2-11.8 3.8-18.8-2.2-24.4-4 15.2-12.2 23.7-27.5 22.7z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M342 884c5.9 21.5 27 19 36 6.6 6.4-8.7 4.2-15.1 1-19-7 8.3-19 15.6-37.1 12.4z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M338 871c.6 21.8 26 24.3 37.4 11.7 8-8.8 7.3-15.4 5.2-19.3-8.4 8.4-25.3 18.4-42.6 7.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M332.7 850.2c-3.9 28.4 29.1 37.6 43.5 20.7 7.7-9 7.3-15.4 5.2-19.3-14.3 10-39.2 11.2-48.7-1.4z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M329.5 823.5c-9.5 30.7 19.2 41.6 38 38.6 14.9-2.4 23.2-20 21.1-23.8-18.6 13.1-55.4 1.8-59.2-14.7z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M329 799.7c-12.6 29.9 15.4 47.4 38.6 45.7 15.3-1.2 27.8-7.1 27.2-19.6-22.7 8-58.2-5.4-65.8-26.1z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M330 775c-12.7 30.5 14.7 55.6 43.4 56.3 14.7.3 21.4-3.6 27.2-13.3-20.7 3.5-64.9-28-70.6-43z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M329.6 765.3c-11.4 35.9 80.3 80.4 85 33.7-22 11.5-81.8-20.7-85-33.7z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M327.5 755.6c-15.4 19.8 93 78.2 95.5 28.4-9.7 5-29.8.7-49.2-8.1-19.4-8.8-33.2-22.9-46.3-20.3z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M311 751.1c19.6.5 61.3 31 89.3 36 17.8 3.3 32.4-4.2 24.1-35.5-28.5 29.1-83-17.8-111.8-6.8-3-1.4.7 8.4-1.6 6.3z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M314.7 755.5c19-11.8 58.4 10.1 86.2 11.3 17 .7 38.4-18.6 24.4-47-21.9 37.6-82.9 7.5-108.6 27.3-2 4.3-.9 10-2 8.4z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M307.1 756.8c20.2-14.8 61.6-6.2 88-8.4 17.6-1.4 43.8-32 19.9-57.5-14.9 53.9-64.5 27.3-107.3 58.3-2.1 5.5.8 8.9-.6 7.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M314.4 752c16.7-15.7 57.6-14.7 82-27.1 16.2-8.3 32.8-43.6 4.3-61.4-3 56.7-55.2 39-87.5 81-.7 6 2.8 8.4 1.2 7.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M316.1 744.5c12.4-22.1 50.3-27.6 70.8-46 18.4-16.5 23.4-46.4-7.6-56-2.6 59.3-43.8 46.8-60.7 82.3-3.2 7.8-1.6 20.5-2.5 19.7z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <path d="M325.5 722c12.7-20.2 22.2-13.3 42.4-34 17.3-17.7 22.6-60.3-7.8-61.3 4.5 51.5-15.3 52-29.2 79.7.5 6.1-3.6 16-5.4 15.5z" transform="matrix(.01517 -.19478 .17623 .01677 116.1 336.6)"/>
+      <g stroke-width="3">
+        <path fill-rule="evenodd" d="M310.4 602.7l-10.5 5.6L250 762.1l18.1 40 17.2 2.6L306 803l30.7-138.4 8.7-56.5-21-12.4-14 6.9z" transform="matrix(.01033 -.15961 .1223 .0163 152.5 322.4)"/>
+        <path d="M309.3 597.5l1.3 6.1c9.8-6.8 20.4-.2 23.3 15.6 2.9 15.8-3 39-13.7 56.7a167.2 167.2 0 00-17 56.2c-1.8 18.8 1.9 41.7-2.2 62.6-2.6 10-7.9 9.1-18.2 8.5 4.1 6.8 9.3 10.6 16 10.3 14.4-3.2 24.7-16.1 28.5-44.8a106 106 0 019.8-72 85.9 85.9 0 0026.3-50 54 54 0 00-9.6-39.1c-11.5-17.4-20.8-18-29.6-16.4l-15 6.3z" transform="matrix(.01033 -.15961 .1223 .0163 152.5 322.4)"/>
+      </g>
+      <path fill-rule="evenodd" stroke-width=".5" d="M-325.7 629.7c0-3.1 2-5.6 4.5-5.6s4.5 2.5 4.5 5.6h-9z" transform="matrix(.80795 .2725 .34088 -.78636 295.4 874.6)"/>
+      <path d="M295.5 723c-3.8 7.3-11.3 10.6-16.7 7.5-5.4-3.2-6.7-11.7-3-19 3.8-7.3 11.3-10.6 16.8-7.4 5.4 3.1 6.7 11.7 2.9 19zm-19-82c-2.5-3.5-6.3-5.7-10.3-5a12 12 0 00-6.6 3.9l-.2-1c-1.4-7.7 4.8-16.8 11.4-18 3-.5 5.7.6 8 2.7a15.2 15.2 0 00-1.2 8.8 15.2 15.2 0 001 3.6 18.3 18.3 0 00-2 5z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M300.3 632.4c-2.9-3.6-6.7-5.8-11-5.2-4 .5-8 3.6-10.7 7.7a18.8 18.8 0 01-1.1-4.1c-1.4-9 6-19.1 13.7-20.2a9.8 9.8 0 015.6.8 15.6 15.6 0 000 4 18.3 18.3 0 005 10.2 18.6 18.6 0 00-1.5 6.8zm-42.3 45l-.4.6a14.5 14.5 0 01-8.5-4.7 13.4 13.4 0 009 4zm6.8-13.6a17 17 0 01-8.1-12.3c-1.4-8.7 5.8-18.6 13.3-19.6a9.1 9.1 0 012.2-.1 18.1 18.1 0 00-3.6 13c.4 2.8 1.5 5.4 3 7.6a20.8 20.8 0 00-6.8 11.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M258.3 689.2c-2 .6-4 .4-5.8-.8-4.4-2.9-5.6-10.5-2.6-17 3-6.3 9-9.2 13.3-6.3a9.3 9.3 0 013.6 5.1 7.5 7.5 0 00-5.4.4c-4.7 2.2-7.1 8.6-5.4 14.3a11 11 0 002.3 4.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M262.4 694c-3-1-5.8-3.5-7.4-7.3-3-7-.9-15.6 4.7-19.2a9.6 9.6 0 019-.9 17.5 17.5 0 001.1 9.7 12.7 12.7 0 006.2 6.7 9.6 9.6 0 00-7.7 1.3 14 14 0 00-5.9 9.6zm-5.1 49.4c-7-4.5-11.4-14-9.7-21.1 1.4-6 6.7-8.4 12.5-6.4a25.9 25.9 0 00-1.4 18.2 19 19 0 008 11.4c-2.7.7-6 0-9.4-2.1z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M251.7 770a12.3 12.3 0 01-1-1c-5.6-6.5-7-16.9-3.2-23 3.7-5.8 10.7-6 16.3-.7-3 6.5-2.3 15.4 1.6 22.2a11.9 11.9 0 00-10.3.2 14.1 14.1 0 00-3.4 2.2z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M268 783.8c-5.3-.3-10.6-6.3-12.4-14.5-2-9.1 1.3-17.6 7.3-18.9h.3c2.8 4.7 7.1 7.5 11.7 7.7v.2c-6.6 4.6-9.8 15.3-7 25l.2.5zm-2.8-66.2c-6.6 2-14.4-2.7-17.5-10.7-3-8 0-16.3 6.5-18.4 1.7-.5 3.5-.6 5.3-.3 1.5 4.7 4.3 8.4 7.6 10.5a26 26 0 001 17.5 10.8 10.8 0 01-2.9 1.4z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M270 727.9c-7-4.5-11.4-14-9.7-21.1 1.6-7.1 8.7-9.3 15.7-4.8a21.5 21.5 0 015.4 5 25 25 0 00-3 23.1c-2.6.4-5.5-.3-8.5-2.2z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M284.7 750.9c-3.7 7.6-11.2 10.5-16.7 6.3-5.5-4-7-13.7-3.3-21.3 3.7-7.7 11.2-10.5 16.7-6.4s7 13.7 3.3 21.4zm-9.3-47.8a12.2 12.2 0 01-11.2.4c-6.2-3.4-7.6-12.5-3.2-20.4a18 18 0 0113.4-9.4 9.7 9.7 0 007.9 2.6l.5.5c-8 3.4-12.2 13.3-9.4 22a16 16 0 002 4.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M284.2 666c1.2 8-4.1 15.3-10.5 16.2-6.3.9-12.4-4.8-13.7-12.8a17.6 17.6 0 015.8-15c2.7 4.3 7 6.9 11.4 6.3 1.6-.3 3.2-.9 4.6-1.9a23.1 23.1 0 012.4 7.2z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M287.2 705.7c-5.7 3-12.2-1.4-14.5-9.6-2.3-8.3.5-17.5 6.2-20.4a8 8 0 015.4-.8 25.5 25.5 0 00-1.7 3.6c-3.4 9-1.7 20 3.8 24.3.9.7 1.8 1.2 2.8 1.5a10 10 0 01-2 1.4z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M304.5 668a14 14 0 01-1 7.8c-5.3-3.2-12.2 0-16 7.3a15 15 0 01-8.3-11.6c-1.2-7.7 5-16.4 11.7-17.4v1c1.2 7.4 7.2 12.9 13.6 12.4v.4z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M303.5 696.7c-4.3 9.2-12.9 13.3-19.2 9.2-6.3-4.2-8-15.1-3.7-24.4 4.2-9.2 12.9-13.4 19.2-9.2 6.3 4.2 8 15.1 3.7 24.4zm-14.1-41.5a14.8 14.8 0 01-6.4 6.9c-6.3 3.1-14-.3-17-7.8-3.1-7.4 1-18.5 7.2-21.7a9.2 9.2 0 018.2 0l-.1.6c-1.7 9.7 2 19.1 8 22zm31.2-41a14 14 0 01-.9 7.4c-2.5-3.1-5.8-5-9.4-4.5-4.4.6-8.6 4.6-10.7 9.4a15.9 15.9 0 01-4.4-8.8c-1.2-7.8 5.2-16.6 11.9-17.6 6.6-.9 12.3 6.2 13.5 14z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M322.4 630.6c1 6.6-3.1 12.8-8.5 14.7-2.4-3.5-5.9-5.7-9.6-5.1a9.6 9.6 0 00-2.9.8 15.3 15.3 0 01-3-7c-1.1-7.3 5-15.7 11.3-16.6 6.3-.9 11.7 5.9 12.8 13.2z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M293.2 654.4a8.5 8.5 0 01-9.4.2c-5.1-3.4-6.5-12.3-3-19.8 3.4-7.4 10.4-10.8 15.5-7.4a12 12 0 014.8 9c-5.1 3.8-9 11.1-8 17.7l.1.3zm-36.7 144.3c-5.8 2-12.1-2.4-14.4-10.5-2.4-8.7.6-18.3 6.6-21.4 5.7-2.9 12.2 1 15 8.5-6.2 4.5-9.3 14.2-7.2 23.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M270.6 803.8c-6.3 2.8-13.2-1.1-15.5-8.8-2.3-7.7 1-16.3 7.3-19.2 5.4-2.5 11.4 0 14.4 5.7a21.6 21.6 0 00-6.2 22.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M267.6 818c-5.7 2.5-12-1-14-7.9a15.9 15.9 0 011.9-13.3c4 3.4 9 4.4 13.8 2.1a14.5 14.5 0 003-2 14.3 14.3 0 011.7 3.8c.8 2.4.9 4.9.5 7.2a20.6 20.6 0 00-4.6 8.5c-.7.6-1.5 1.1-2.3 1.5zm8.5 29.3c-6.4 2.9-13.5-1-15.8-8.8-2.3-7.8 1-16.5 7.3-19.4l1.5-.5a26.6 26.6 0 00.9 9.4c2 7.2 6.9 12 12.3 13a13.3 13.3 0 01-6.2 6.3z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M285.2 848.4c-6.2 2.8-13-1-15.2-8.4a17.7 17.7 0 010-10c4 3.6 9.2 4.7 14 2.4a16 16 0 006.6-6.2 16.6 16.6 0 011.6 3.6c2.3 7.4-.9 15.8-7 18.6z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M293.1 863.4c-6.1 2.8-13-1-15.2-8.5a17.8 17.8 0 01-.6-6.2c2.3.4 4.8 0 7.2-1a18 18 0 008.9-11.4c3 1.4 5.6 4.4 6.8 8.4 2.2 7.5-1 15.8-7 18.7zM273 786c-2.8-1.8-5-4.8-6.3-8.6-2.4-8.3 1-17.5 7.8-20.6 6.8-3.2 14.3 1 16.8 9.3 1.9 6.2.4 13-3.5 17.4a11 11 0 00-10.5-.8c-1.7.8-3.1 1.9-4.3 3.3zm46.8-134.5c1 6.6-5.5 17-12.1 18.4-6.7 1.4-11-1.9-14-6.2-3-4.4-4.3-10-2.6-15.2 1.7-5.2 6-10.4 10.4-12.3 4.4-2 7.4-1.2 11 1.7 3.5 3 6.3 7 7.3 13.6z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M285.2 808.6c-6.2 2.8-13-1-15.2-8.5-2.3-7.5.9-15.8 7-18.7 6.1-2.7 13 1 15.2 8.5 2.2 7.5-1 15.9-7 18.7z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+      <path d="M283.1 834.2c-6 2.7-12.8-1-15-8.4-2.2-7.3 1-15.6 7-18.4 6-2.8 12.8 1 15 8.4 2.2 7.3-.9 15.6-7 18.4z" transform="matrix(.01517 -.19526 .17623 .01113 117 337.6)"/>
+    </g>
+  </g>
+  <path fill="#e7ca00" stroke="#d4af37" stroke-width=".4" d="M232.8 219.9l-.3.3-11.3 14-.2.3.3.3c3.6 3.4 5.7 9.3 5.7 14 0 6-1 10-2.2 13.9-1.7 5.2-3.8 9.8-4.5 17.5a18 18 0 004.2 13.3 23.5 23.5 0 007.7 6.1c5.9 2.8 12 1.8 18 2.6 2.6.3 4.1 2 5.5 3.5l.3.3.3-.3c1.4-1.5 2.9-3.2 5.5-3.5 6-.8 12.1.2 18-2.6a23.5 23.5 0 007.7-6 18 18 0 004.2-13.4c-.7-7.7-2.8-12.3-4.5-17.5a42.5 42.5 0 01-2.2-14 21 21 0 015.7-14l.3-.2-.2-.3-11.3-14-.3-.3-.3.3a15.8 15.8 0 01-11.4 3.9 23.8 23.8 0 01-11.3-3.7l-.2-.1-.2.1a23.8 23.8 0 01-11.3 3.7c-4 .2-8-1-11.4-4l-.3-.2zm0 1.2a16.7 16.7 0 0011.7 3.8 23 23 0 0011-3.4v41h-29.7a43.2 43.2 0 002-13.7 21 21 0 00-5.7-14.3L233 221zm46.3 0l10.8 13.4a21.5 21.5 0 00-5.7 14.3c0 5.8.9 10 2 13.7h-29.8v-41a24.3 24.3 0 0011 3.4c4.1.2 8.2-.9 11.7-3.8zm-53.6 42.3h61c1.7 5 3.7 9.5 4.3 16.9a17.1 17.1 0 01-4 12.7 22.8 22.8 0 01-7.4 5.8c-5.6 2.7-11.5 1.8-17.6 2.5-2.8.4-4.5 2-5.8 3.5a9.7 9.7 0 00-5.7-3.5c-6.2-.7-12.1.2-17.7-2.5a22.8 22.8 0 01-7.4-5.8 17.1 17.1 0 01-4-12.7c.6-7.4 2.6-11.8 4.3-17z"/>
+  <g fill="#008f4c">
+    <path fill="#00a854" d="M298.6 201.1v.1c-.2.3-.4 1.8-.6 3.4a19.6 19.6 0 01-.3 2.8 40 40 0 01-2-.8c-2.4-1-7.6-1.7-7.9-.9-.2.5.4 3.2 1.3 6.3.2.7 0 1-1.5 1.4a9.1 9.1 0 00-2.4 1c-.7.6-.6.7 1.1 2.3l1.9 1.7-.9.8c-.8.6-.8.6 2.2 3.6 3.4 3.2 5.2 4.2 7.5 4.2h2.1c.8-.2 1.4-.4 3.2-.6 2 .1 4 1.1 4.8 1.6l.5 1.1c-1.4-1.6-4.6-2.2-5.3-2.2-.6 0-1 .1-1.7.4-.7.2-1 .5-1.7 1.5-.5 1.2.5 2.5 1.7 2.7 1.5.2 2.5-.6 2.5-2 0-1-.6-1.8 0-1.8 1.7.1 4.4 1.5 5 3.3.5 2.3.4 2.4-.7.9-1-1.3-2.6-2.7-3-2.8-.4 0-1.3 2-1.3 3 0 .5-.1.6-.6.4-.4-.2-1.3-.4-2-.4l-1.3-.2.3 2c.2 1 .7 2.7 1.2 3.6l.8 1.6-2-.6c-4.1-1.3-3.8-1.3-3.5 1 0 1 .3 2.2.5 2.6.2.6 0 .7-1.4.7-1 0-1.7.1-1.7.2 0 1 3.3 5.3 5 6.6 2 1.5 5.7 3.2 7.2 3.2.4 0 1.8.4 3 .9l2.3.8v2.4c0 2.6-.8 8-1.3 8l-1.6-2.5c-1.6-3.1-1.6-3-2-2.3-.3.4-.4.4-.4-.3a14 14 0 00-3-5.8l-1-.9-.5 1-.5 1.1-2.2-2.4a9.7 9.7 0 00-2.5-2.2c-.2 0-.5 1.2-.6 2.4-.4 3.5-.6 3.7-2 2.4l-1-1-.4 1a32 32 0 001 11 39 39 0 011.3 5.2 17.1 17.1 0 004.4 8.6c.8.8.9 1.1.4 1.1-.3 0-.9.4-1.3.8-1.5 1.7 0 4 2.3 3.5 1.2-.2 1.4-.1 1.8.8.7 1.3.7 3.6.1 4.6-.4.8-2.8 1.8-3.2 1.4-.1-.2-.2-1.5-.1-3v-2.8l-2 1c-5 2.7-9.3 9.5-10.3 14.8-.4 1.8-1.4 2-2.7 4-1.2.7-2.4 1.7-3.6 2.9-2 2-2.6 2.2-5.6 3a157 157 0 01-17.8 2.8c-5.2.5-21.7 3.2-22.7 3.6l-2.3 1a5.4 5.4 0 00-2.2 1.6c-.6.9-.6 1.2-.2 2 1.1 2 3.2 2 7.7-.1a24.4 24.4 0 016.3-2l5.1-1c1.2-.4 4.6-1 7.5-1.5 16.4-2.6 22.4-3.9 29.2-6.2 4.4-1.6 4.4-1.6 8.5-1.2 4.6.4 10.5-1 12.9-3.2.5-.5 1.9-2.1 3-3.7a21 21 0 013.3-3.6c1.5-1 .6-1.4-3.3-1.4H306l1.2-2.5a28 28 0 002.4-7 9.3 9.3 0 00-2.6.5l-2.5.4s0-.7.3-1.3c.3-1 .8-1.4 1.5-1.6.6 0 1.4-.3 1.7-.4a6 6 0 012 .3c1.6.4 1.6.5 1.4 1.7-.2 1.6.6 2.7 2 2.7 1.1 0 2.3-1.2 2.3-2.1 0-1.1-1.5-2.4-2.5-2.2a9 9 0 01-3.1-.5l-2.2-.7 2.1-.5c3.2-.7 4.3-.6 4.7.5.3.6.8 1 1.7 1 2.6.2 3.4-3.4 1-4.1-1-.3-2.9.6-2.9 1.4 0 .2-.7.4-1.5.4a14 14 0 00-4.8.9l3.1-1.6c2-.5 4.4-1.4 5.4-2 3.7-1.6 7.2-5.8 8.6-9.8.8-2.5 2.1-10.4 1.7-10.4l-3 1.1c-2.5 1.2-2.6 1.2-2.6.4 0-1.7.8-6.5 1-7.3.2-.4.2-.7-.2-.7-1.2 0-5.2 2.2-7.8 4.3-2.5 2-2.7 2.1-2.7 1.3 0-.5.3-1.5.8-2.3.7-1.2 1-1.2 2.4-1 1.4.2 1.6.1 2.3-.8.8-1.3.3-2.8-1-3.3-.8-.2-.8-.3.7-1 1.8-1 3.8-3 5.3-5.6l1-1.7-1.5.2h-1.5l.6-1.7c.3-1 .6-2.5.6-3.3 0-1.7-1.5-7.9-2-8.5-.2-.3-1 .1-2 .9l-1.6 1.2-1.5-3.3a46.9 46.9 0 00-1.6-3.4c-.1-.2-.7.2-1.2.7-1.3 1.2-1.4.5-.3-1.8 1-2.1 1.5-2.4 2.6-1.6 1.4.8 3 0 3-1.7.2-1 0-1.4-.8-1.9-.5-.3-1.2-.5-1.5-.4-.4.1-.8-.2-1-1a2.3 2.3 0 00-1.6-1.5c-2-.5-3.6 2.2-2 3.7.6.6.6 1 .2 4-.8 4.7-1 5.1-1.6 3-.6-2.4-.4-9 .5-10.9 1.5-3.3.6-8.6-1.8-11.3-2-2.3-7.6-6.3-8.6-6.2zm-2.8 11c.4 0 1.9 1.3 4.4 4.2 2 2.5 4.5 6.7 6 9.8-.5-.6-.9-.6-2.5-2.9-1.3-1.8-3.5-5.9-5.6-8-1.8-1.9-2.6-3-2.3-3z"/>
+    <path d="M306 255.3c-.4 1.5-.7 1.8 0 3 .5.5 1.2.8 1.8.8 1.1 0 1.7.8 2.7 3.6.1.5.2.5.2-.1 0-.4-.3-1.4-.8-2.3-.5-1-.6-1.6-.4-1.8.8-.5.5-2.5-.5-3.2-1.2-.9-1.6-.6-3 0z"/>
+  </g>
+  <path fill="#9eab05" d="M231 321.1c-1 .7-1.2 1.8-.5 2.4.9 1 4 .1 4.4-1.1.5-1.8-2.2-2.6-4-1.3z"/>
+  <path fill="#75b52b" d="M299.6 204.5c.3 2 2.3 6 3.7 7.8.6.7 1.2 1.2 1.3 1.1.1 0-1-2.5-2.5-5.3-2.1-4-2.7-4.8-2.5-3.6zm-13.5 10.8a22 22 0 006.5 1.8c0-.7-2-1.5-4.3-1.8-1.3-.2-2.3-.2-2.2 0zm2.5 4.9a89 89 0 009.5 4.4c1.2.4 2.8.6 3.5.5 1.2-.1 1-.2-1.5-1a42.4 42.4 0 01-4.7-2c-2.4-1.2-7.5-2.6-6.8-2zm23 10.3a95 95 0 00-1.8 12c-.2 2.7-.1 3.6.4 4.2.5.7.6.4 1-3.3.6-5 1.3-14 1.1-14.1 0 0-.4.5-.6 1.2zm-6.7 3.3c.2 3.2 1.6 6.7 2 5.2.2-.5-.2-2.3-1-4.4l-1.2-3.6.2 2.8zm-4.6.1l1.5 1.9 1 1.1v-1c0-.6-.5-1.3-1.1-1.8-1.3-1-2.1-1.1-1.4-.2zm-5.7 10c0 .1 4.4 3.5 5.9 4.4 1.2.8 1.2.8-.3-1-1.6-1.8-4.1-3.6-5-3.6l-.6.1zm2.2 8.6c1 4.5 1.9 7 2.4 7.3.2.1.5.3.6.2.2-.2-2-6.3-2.6-7.4l-.6-1.1.2 1zm4.7 3.5c0 .6.4 1.9.8 2.7.5 1 .8 1.4.7 1a26.9 26.9 0 01-.5-2.5c-.3-2.1-1-3-1-1.2zm-8.2 3a54 54 0 005.5 11.2c2.1 3.4 2.1 3.4 2.2 2 .1-1.1-.3-2.1-1.8-4.7l-4-6.9c-1-2-2.1-3.7-2.3-3.7-.2 0 0 1 .4 2.1zm25.2.6a60.3 60.3 0 00-6.6 9.2c-.4.8-.5 1.6-.3 2.3.2.9.8.2 4.8-6.2 2.5-4 4.4-7.2 4.2-7.2-.2 0-1.1.9-2.1 2zm-6.4 29.9a1.6 1.6 0 001.4 2.4c1.2 0 2-1.4 1.3-2.6-.5-.9-2.2-.8-2.7.2z"/>
+  <path fill="#d91023" d="M300.1 228.1c-1.5 1.1.1 3.8 1.7 2.9 1-.7 1.2-2.2.3-2.9l-1-.5-1 .5zm10.7-8.6c-1 .2-1.3 1.4-.8 2.5.8 1.5 2.9.9 2.9-.9 0-1.2-1-1.9-2.1-1.7zm2.6 3c0 .4-.1 1 0 1.6 0 .7.3.9 1.3.9 1.4 0 2.2-1 1.6-2.1-.6-1-2.5-1.2-2.9-.4zm-15.2 60c-1.5 1.3 0 3.4 1.8 2.7.8-.3 1.2-1.3.7-2.2-.6-1-1.5-1.2-2.5-.4zm8.3-26.8c-.5.4-.4 1.9.2 2.4 1.2 1.2 3 0 2.6-1.7-.2-.8-.6-1-1.4-1-.7 0-1.3.1-1.4.3zm7.5 0c-.3 1 .4 2.1 1.5 2.1 1 0 1.7-1 1.5-2 0-.8-.4-1-1.4-1.1-1.1-.1-1.4 0-1.6 1zm1 29.5c-.2 1.2.5 2.2 1.5 2.2s1.7-1 1.6-2c-.1-.8-.4-1-1.5-1-1-.2-1.3 0-1.5.8zm-2.4 3.8c-1.5 1.2 0 3.3 1.8 2.6.8-.4 1.2-1.3.7-2.2-.6-1-1.5-1.2-2.5-.4z"/>
+  <path fill="#75b52b" d="M295.8 212.5l1.7 2c1.5 1.7 2.7 3.4 5 6.9a18 18 0 003.6 4.6 64 64 0 00-5-8.4 23.6 23.6 0 00-5.4-5.6c-.2 0-.1.2 0 .5z"/>
+  <path fill="#eac102" fill-opacity=".5" d="M306.1 263.2c0 .3-.4 3-.6 6.2a126.6 126.6 0 01-2.4 20.5l.1.7.7-1a9.6 9.6 0 012.5-2.4 117.8 117.8 0 0013.6-15.5 66 66 0 005-6.9c0-.1-1.4 1.1-6.5 7.4a183.1 183.1 0 01-5.3 6.2c-3.6 4-7.6 7.6-8.6 9l.3-1.7c1-3.8 1.3-8 1.4-16.4a134.6 134.6 0 00-.2-6zm-10 26.6l-2.2 3.8a55 55 0 01-8.3 11.6c-.8.9-.6 1-.8 1.1-1 1 3 1.7 5.8 2 4 .4 6.1-.4 16.6-6 2.5-1.2 3.1-1.6 2.6-1.6-1 .2-2.5.6-7 2.7s-6.4 3-8.5 3.5a13.6 13.6 0 01-5.2 0h-1l.6-.2c.4 0 1 0 1.2-.3.2-.1 1-.7 1.9-1.1a68.6 68.6 0 0012.7-11.3c0-.2-1.9 1.4-4.3 3.5-5 4.5-10 7.8-12.1 8.1l-.6.1.6-.6 1.8-2.6a51.3 51.3 0 004.6-8c1.7-3.4 2.4-5.5 2.3-5.6l-.7.9zm.1-51.8a42 42 0 004.6 5.7c2.5 2.9 4 4 6 6.5 2 2.6 2.3 2.8 4.5 4.8 2.8-3.7 4.5-8.7 5.7-12 1.2-3 2.1-5.8 2.2-10-1.6 3.5-1.7 4.8-3 8.6a72 72 0 01-5 11.9c-.2 0-6-7-8.6-10a23.4 23.4 0 00-6.4-5.5z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M298.1 203.8l-.5 3.7-1.4-.8a24.8 24.8 0 00-7.5-1.5c-1 0-1 0-.9 1.3a48.1 48.1 0 001.7 5.7c0 .3-.6.7-1.6 1-1 .2-2 .7-2.5 1-.7.6-.6.7 1 2 1.8 1.7 2 2.2.9 2.9-.6.4-.4.8 2.3 3.4a28 28 0 004.6 3.6c2 1.1 6.1 1.1 8.3 0 1.5-.7 1.6-.7 2.6 0 1 .5 1 .5.5-.1-.4-.4-2.3-1.6-4.3-2.6-5.6-2.9-10.2-8-12.2-13.6-1-2.7-1-4.2 0-4.2 1.7 0 5.3.9 7.3 1.7 3 1.4 8.3 6.5 9.7 9.4 1 2.1 1.2 2.8 1.3 5.9 0 3.5.5 5 .6 1.8.2-4 .3-5 1-6.5 1.1-3 .5-7.6-1.4-10.3-.7-.8-2.8-2.7-4.8-4-2-1.5-3.7-2.7-3.8-3-.2-.2-.6 1.3-.9 3.2zm5.3.6c2.7 2 3.5 2.7 4.3 4.5 1.3 2.7 1.7 6 1 8.4l-.6 1.8-1-2.3a23 23 0 00-4.6-5.7c-2-2-3.7-3.5-4-3.5-.4 0-.2-2.8.4-5.1.2-1 0-1.2 4.5 2zm-13.1 10a6.4 6.4 0 001.4 1.5c.4.3.8 1 .9 1.4.2.7 0 .8-2 .8-1.8 0-2.2-.2-3.6-1.6-.9-1-1.5-1.7-1.4-1.8.3-.3 3-1.4 3.5-1.5.2 0 .8.5 1.2 1.1zm5.4 6.2c2.4 2.1 3 2.6 5.9 3.7 1.5.6 1.6.7 1 1.3-1 .9-5.4 1.2-7.5.5-1.7-.5-8-6.3-7.4-6.7a14 14 0 014.3-.9c1.1 0 1.8.4 3.7 2zm11.8 7.4c-.2.2 0 1 .3 2 .7 2 .7 2.6 0 4a7.3 7.3 0 00-.6 2.8c0 .9-.3 2.1-.5 2.9l-.5 1.3-1.3-.9c-.8-.5-1.5-1.2-1.6-1.7a15 15 0 01.3-6.2c.4-1.8.7-2.2 1.2-2.2.6 0 .7 0 .2-.5-.4-.5-.5-.5-1 .1a6 6 0 00-.8 2c-.2 1.4-.2 1.4-1.4.8-1.7-1-2.4-.8-2.4.5s.7 3.5 1.6 4.8c.9 1.5 1 .9 0-1-1.1-2.2-1.5-4.5-.7-4.5.3 0 1 .3 1.4.6.8.5.9 1 .8 3.3 0 3.3-.3 3.4-4.1 2.1a8.7 8.7 0 00-2.6-.6c-.1.2.5 3.6 1 4.7.1.4-.2.6-1.7.4l-2-.1 1.2 2a16 16 0 0011.3 8c1.6.3 3.5.9 4.2 1.2 1 .5 1.1.5.7.1a5.4 5.4 0 00-2-1.1c-2.3-.9-4.6-2.5-7.5-5.6-3-3-4.5-5.7-4.5-7.7 0-1 .2-1.3.7-1.1l3.1.9c3.4.8 4.3 1.3 6.5 3.7 2.3 2.4 3.1 3.9 3.8 7.2l.8 2.8c.5.6.7-1.3.2-2.8-.7-2.7.4-7.9 2.7-12.4 1-2 4.2-5 4.7-4.5l1.2 3.8c1 4.1 1 5.3-1 9.4a14.8 14.8 0 01-5 6.1c-1.5 1.1-1 1.5 1.1 1a16 16 0 006.9-6.3l.9-1.5-1.7.3-1.5.2.7-2.1c1-2.7 1-3.8 0-7.1l-1-3.8-.3-1.2-1.3 1a7.6 7.6 0 00-1.5 1.2c-.5.7-1 0-2.5-3.1a12 12 0 00-1.6-3c-.2 0-.8.4-1.4 1l-1 1.2.2-1.2c.2-.7 0-1-.2-.9-.2.2-.4.7-.4 1.2 0 2-.7 2-1.3 0-.3-1-.7-1.7-.8-1.5zm5.9 10.1c-1.2 2.4-2 4.8-2.3 6.6l-.5 3-.7-1.7a14 14 0 00-1.7-2.9c-1.1-1.2-1.1-1.3-.7-4.2.7-4.5 1.6-7 3.2-8.8l1.5-1.6 1.5 3 1.5 2.9-1.8 3.7zm-15.5 6.7c5 5.2 6.7 7.2 5.9 6.9a14 14 0 01-8.3-6l-1.4-2.4 1-.2c.8 0 1.7.5 2.8 1.7zm23.2 3.2c-1.6 2.6-2.6 3.5-4.4 4.4l-1.6.9 1.6-1.8c1-1 2.1-2.5 2.6-3.3.8-1.3 1.4-1.7 2.6-1.9.2 0-.1.8-.8 1.7z"/>
+  <path fill="#005000" d="M306.3 231.2c.6 1.2 1.6 2.4 1.7 2 0-.2-.5-1-1-1.6-.7-.7-1-.9-.7-.4z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M295.5 252.2c-.1.9-.4 2.2-.7 3.1l-.3 1.5-1.2-1-1.1-1.1-.4 1.9c-.3 2.6.1 6.5 1.3 10.2l1.2 5c.5 3.8 3.6 8.1 7.5 10.8.8.6 1 1.2 1.3 3l.3 2.4v-2.2l-1.1-6.7c-1.3-5.8-1-8.3 2-14.2l2.1-4.3 2.2 4.3c2.9 5.8 3.2 7.7 1.6 12.4-.6 2-1.3 3.6-1.5 4-.2.2-.3.6-.2.8.1.1 0 .5-.2.9-.3.4-.4.4-.2-.2.2-.5-.4 0-1.3 1a7 7 0 00-1.8 2.6c-.2.7-.2.7.4 0l1.5-2c.4-.6.9-1 1-.8.6.3 1.2-.8 2.6-4.5 1.8-5.2 3-7.3 5.6-9.9 1.7-1.7 3.4-2.8 6.2-4.1l4-1.9c.4 0-.8 7-1.5 9a20.9 20.9 0 01-4.7 7.6 22.7 22.7 0 01-8.4 4.2 10 10 0 00-2.8 1c-.2.4 3-.5 6-1.6 4.4-1.6 8.4-5.8 10.1-10.2.7-2 2.3-10.3 2-10.6l-3 1.2-3 1.4.3-2.7c.1-1.5.4-3.6.7-4.6.5-1.9.5-2-.3-1.7-2 .6-5.7 2.8-8 4.8l-2.3 2.2v-3.7c.2-2.5.1-3.5-.1-3a8 8 0 00-.4 2.7c0 2-1 6-1.3 6-.2 0-1-1.1-1.7-2.6-1.3-2.5-2-3.2-2-2.1 0 .3-.4-.6-1-2a18 18 0 00-2-4l-1.2-1.4-.7 1.2-.6 1.3-1.6-2a11.3 11.3 0 00-2.3-2.5c-.6-.3-.8-.2-1 1.1zm2.8 1.3c1.6 1.9 5 8.2 5.4 10.1l.2 1-.7-1a29.1 29.1 0 00-7-6.3c-1-.6-1.1-.8-.8-2.1l.5-2.6c.2-.6.4-1 .6-1a11 11 0 011.8 1.9zm5.7 3.9c1.2 2.4 1.4 4 .8 5-.6.8-4-6.2-3.6-7.5.3-.9.4-1 1-.5a12 12 0 011.8 3zm-7.2 1.3a19 19 0 016 5.9c.3.7.2 1.3-.5 2.6a19.1 19.1 0 00-1.3 9.4c.2 1.3.2 2.3 0 2.3-.5 0-3.5-3.7-4.8-6a30.6 30.6 0 01-4-15.9l.3-1.5 1 .8 3.3 2.4zm24.6 0a60.5 60.5 0 00-.6 4.1c-.2 2.2-.3 2.3-2.6 3.7a19.1 19.1 0 00-4.2 3.7c-1 1.2-1.8 2.2-2 2-.2 0-.4-1-.6-2-.1-1.1-.5-2.6-.8-3.3-.5-1.2-.5-1.5.3-2.6a31 31 0 0110.6-7.5l-.1 1.9zm-22 19.7c1.6 1.5 2.5 2.7 2.4 3.2-.1.5-.6.3-2.2-1.3a15 15 0 01-4.5-6.8c-.2-1 0-1 .8.6.6 1 2.2 3 3.6 4.3z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M295.5 288.4c-4.4 3-8.1 9-9.3 14 0 1.2-1.4 2.3-1.2 2.1.2.6 1.5 0 2-2 1-3.7 4-10.5 8-13.2 1.1-.8 2.3-1.5 2.5-1.5.2 0 .3 1.5.2 3.5 0 2.7-.4 4-1.1 5.5a21.8 21.8 0 01-6.9 7.4c-2 1.1-2 1.6-.3 1 2-.8 6.8-5.7 8-8.3a14.4 14.4 0 001.2-3c0-.2.5-.7 1.1-1 1.5-.5 8.8-2.3 9-2.1.3.3-2.8 6.8-3.8 8.2a20 20 0 01-7.1 5.3c-.9.3-2.7 1.3-4.1 1.5l-3.7.5-1.4.9 1.4-.3 4.3-.5c4.5-1.6 6.2-2.5 9.2-4.8l1.9-1.6 3.6.2 3 .2-1.4 1.7-3.2 3.9a14 14 0 01-3 2.9c-1.9 1-6.2 2-9.8 2-3.2 0-3.3 0-5-1.4-1.6-1.5-2.3-1.8-2.5-1.2 0 .2-1.5.8-3 1.4-3.2 1.1-4 .8-2.1-.8.7-.7 1.4-.7 2.9-.8 0 0 3 .7 3.1 0 0-.5-3-.5-3-.5-1.5 0-1.9 0-.7-1.4 1.3-.9 1.8-2.5 1.1-2.2-1.8 2.2-3 3-5.6 5.7a14.7 14.7 0 01-6.4 2.8 98.1 98.1 0 01-8.2 1.4c-4.2.5-6 1.6-1.9.8 2-.3 4.8-.6 8.2-1.3a24 24 0 007.7-2.5c2-2 2.3-2.3 1.2-.6-.3 1.2.3 1.2 4.2-.3 3.1-1.2 3.2-1.2 4-.5.7.8.7.8-.9 1.5a100 100 0 01-16.3 4.4c-3.7.8-6.9 1.5-7 1.7a16 16 0 005.5-.7l7.5-1.9a94.3 94.3 0 009.4-2.7c2.6-1 3-1 5.1-.6 2.8.5 7.3 0 10.6-1 2.5-.9 4.3-2.4 6.8-6 1.1-1.4 2.4-3 3-3.4l1-.8-3.5-.2c-2-.1-3.7-.3-3.8-.5l.5-1.4 1.9-4.5 1.2-3.3-1.4.3-2.9.5-1.4.3.6-1.5.4-1.5-.8 1.4c-.7 1.6-1.5 2-1.2.5.1-.6 0-.5-.5.4a4.4 4.4 0 01-1.7 1.7l-1.9.7c-.7.3-.7 0-.5-2.8 0-2 0-3.1-.3-3.1s-1.4.6-2.5 1.4z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M257.4 315.1c-2.3.2-7.1 1-15 2.2l-8 1.3c-.4 0-.5.1-.4.3.1.2-.5.4-1.2.5-1.8.4-3.9 2-3.9 3.2 0 1.2 1.3 2.4 2.3 2.2.7-.2.6-.2 0-.3-1.9 0-2.6-2.2-1.2-3.4a25 25 0 019.6-2.8c3.9-.3 15-1.9 15.5-2.2a26.4 26.4 0 013.3-.7c2.7-.5 2.2-.6-1-.3z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M250.7 319a64.1 64.1 0 00-14.1 3.7c-2.9 1.4-2.4 1.5.6.2a25.4 25.4 0 015.4-1.6 275.8 275.8 0 0014.4-2.8l2.3-.3h-1.9c-1 0-4 .3-6.7.8z"/>
+  <path fill="#fff" d="M282.8 308.3c-1.2.8-2.6 2.3-1.1 2 1 0 5.1-1.3 5.4-2-1.5 0-2.8-.3-4.3 0z"/>
+  <g stroke="#d4af37" stroke-width=".9">
+    <path fill="#fff" d="M367.7 432.4c-1.5.5-2.5 1-9 .5-4.6-.3-10.3-1.1-13.2-1.2-5.6 0-5.6.3-15.5 7.1-7 4.8-16 4.4-22.7 3-4-2-5.8-2.3-5.2-1.3 1.1 1.8 9 4.4 13.4 4.4 7 0 12.2-1.8 20.7-7.1 6.6-4.2 9.5-4.5 18.5-2.5 10.6 2.1 12.2 1.2 20.9-2.7-2.6 0-3.2 0-4 .4 1.4-1.6 1.5-3.2 1.8-4.2.4-.6-.8.2-2.1 1.2l-3.6 2.4z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+    <path fill="#d91023" d="M354 429.8c-4.9-.7-8.2-1.4-11.3-1-3.4.3-5.8 2-9.9 4.5-4 2.7-7.7 4.6-8.1 4.6-.6 0-5.8 1.2-9.8 1.2-1.8 0-5.9-1.3-8.6-2.3-5.7-2.1-7.8 1.4-1.8 3.9a33.4 33.4 0 0015.6 1.8c5-.8 9.6-3 13.4-5.8 7.7-5.6 3.2-3 6.2-4.2 3-1.3 5.9-.9 5.9-.9 4 .2 11.9 1.5 15.9 1.6 7.2-.7 6-.7 8.4-2 .8-.6 3.5-2.3 3.6-2.7.2-.4 1.4-2.7 1.2-2.8-7.5 5.1-11.2 5.1-20.7 4.1z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+    <path fill="#d91023" d="M341 435.4l-7.1 4c-6.2 3.8-12 5.6-18.8 5.6-3 .5-13-3.6-11.5-3.1 1.6 3 4 3.4 9.6 4.5 4 .8 6.6.1 11.1-.8 5-.6 7-3 9-4.3a33.5 33.5 0 0114-5.4c1 0 4.7 2.1 8.9 3 4.1.9 6.1 1.1 10.4.4s8.7-4.2 12.8-6.9c-.6.2-2 .2-4 .3-6 3.5-16 4.8-21.2 2.4-5.4-1.3-10.5-1-13.2.3z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+  </g>
+  <path fill="#00a854" d="M221.1 205a30.3 30.3 0 00-14 10.6c-.7 1-1.4 1.8-1.5 1.7l1-4.6 1-5.4c0-1-.2-1-1.7.8-2 2.2-4.6 7-5.6 10.3-.5 1.8-.7 3.8-.7 7.5v5l-1-3.5c-1-3.8-2-6.4-3.1-7.8-.5-.7-.7-.7-1-.2-.9 1.2-.3 6.2 1 10 .1.4-.4-.2-1.1-1.4-.8-1.3-1.6-2.2-1.8-2-.5.2-.5 4.2 0 5.8.3 1.2.3 1.2-1-.4-2.4-2.6-3-2.8-3-1 0 .7.4 1.9.7 2.7l.6 1.5-1.3.4c-1.8.4-2.4 1-2.4 2.4 0 1.7 1.1 5.4 1.7 5.8.6.4.8 0 1.4-2.3l.5-2.1 1.5 1.9c2.1 2.8 5.4 9.3 7 14.2 1.8 5.1 1.8 6.1.2 3a58 58 0 00-2.5-4.3 95.7 95.7 0 00-10.7-11c-.6 0 0 2.7 1.1 5a31 31 0 003.5 5c1.4 1.6 2.4 3 2.3 3l-2.1-1.5c-2.1-1.5-4.2-2.8-4.5-2.5-.1 0 .7 1.8 1.8 3.8l2 3.7-1.3-.2a4.3 4.3 0 00-2.2.3c-.8.4-1 .8-1 2.8 0 2.6.8 5.3 1.4 5.3.5 0 1.6-2.5 1.6-4 0-1 0-1 2 1 3 2.8 6.9 7.6 10.7 13.2l3.3 4.8-3.8-2.8a55.4 55.4 0 00-12.4-7c-.4 0-.6.3-.6.5a60 60 0 005.3 5.4l5.4 5-2.8-.9a54.5 54.5 0 00-4.3-1.1c-1.4-.3-1.4-.2 1.8 2.6a54.3 54.3 0 007 5.4l3 2c-3.8-1-9.3-1.8-9.3-1.4 0 .6 2.8 2.8 4.8 3.9l6.3 2.4a29 29 0 0110 5.3l1.7 1.4-3-1.2a95 95 0 00-13.1-4.5c-1 0 3 4 7 7a64.6 64.6 0 0015.6 7.8c4.2 1.3 7.7 2 14.4 2.9 3 .4 5.7.8 6.3 1 .5.2 4 .8 8 1.2a80 80 0 0124.6 5.8c1.3.6 2.7.9 5.7 1 4.5.2 4.7.1 3.4-2.3-1-2-3-3.1-7-3.8a969.9 969.9 0 00-30.5-5.5c-11.2-1.8-16.1-3.8-21.4-8.5-7.9-7-12-18.3-10.7-29.5.3-2.4.5-4.4.4-4.5-.4-.3-3 5-3.7 7.5l-.8 2.7.2-4.3a25 25 0 016.6-16.6 6.9 6.9 0 001.5-1.7l-1.8.2a8 8 0 00-3.9 2.6l-2.1 2 1-1.8c1.5-3 4.1-6 6.6-7.7l2.4-1.5-1.4-.1c-2.7-.3-7.6 3.2-10.3 7.4-1.5 2.5-1.5 1.7 0-2 1.6-3.7 4-7.3 6.5-10 1.4-1.5 1.6-2 1.1-2-2.1 0-5.7 2.8-8.7 6.7-.9 1.2-.9 1 0-1.2a32 32 0 015-7.8c1.2-1.5.9-1.7-1.3-.7a22 22 0 00-6.8 7.7c-.9 1.5-1.5 2.4-1.4 2l.7-2.6a37 37 0 0110.2-18.2c1.9-1.8 2.4-2.5 1.9-2.5-1.6 0-5.3 2-7.7 4.3-2.5 2.4-2.5 2.4-1.5.7a45.6 45.6 0 0114.5-14.8 32.6 32.6 0 003.5-2.4c0-.7-6.2 1.2-9 2.6a33.8 33.8 0 00-3.6 2.5c-2 1.6-2.2 1.7-1.4.7 1.4-2 6.1-6.1 8-7.1 1.4-.7 1.5-1 .8-1-1.8-.3-7 2.4-11.2 5.8l-1.8 1.6 1-1.7a38.3 38.3 0 0111.8-12.4 48 48 0 013.5-2c.2-.2.4-.4.3-.5a11 11 0 00-3.3.8zm61.7 116.1a5 5 0 011 1.4c0 .2-.8.4-2 .4-2 0-2 0-2-1.1 0-2.1 1.3-2.4 3-.7z"/>
+  <path fill="#9eab05" d="M280.2 320.4c-1 1-.8 2.5.3 2.8 1.7.4 4 .2 4-.4 0-.6-2.7-3-3.3-3-.2 0-.7.2-1 .6z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M223.3 204.4a25.4 25.4 0 00-12.2 6.8c-.2.3-2.5 2.2-3.8 4.1-.7.8-1.6 2-2 2.9 0-.8.6-3.1 1.2-5.7.7-3.1 1-5.6.9-5.7-.4-.4-3.4 3.5-4.9 6.5a25 25 0 00-2.8 13.3v5l-1-3.8c-1.1-4-3-8.2-3.8-8.5-.3 0-.6.5-.8 1.4-.3 1.3 0 2.6 1.7 9.6.1.5-.3 0-1-1.2-1.6-2.7-2.1-3.4-2.6-3l1.1 1.5a67.3 67.3 0 017 20c0 .2-.3-.2-.5-.7a317.8 317.8 0 01-1.3-3.4 50 50 0 00-2.5-5.3c-2-3.6-3.3-7.5-3.6-10.2l-.2-2c-.6.5-.4 2.8.5 5.4l.6 2.5-2-2.5c-1.5-1.8-2-2.3-2.4-2-.3.7-.1 1.9.7 4.2l.6 1.5h-1.3a4 4 0 00-2.1.6c-.7.5-.8.8-.4 3 .5 2.6 1.2 4.6 1.7 4.6.8 0 .8-.8 1.2-3.1.1-.7.4-1.1.5-1.5l.8 1a62.5 62.5 0 018 15.4 89.6 89.6 0 013 12.9s-.6-1.5-1-3.5a33 33 0 00-11.2-18s-2.5-3-4.5-4.2c0 1.7.4 2 .4 2 .5 2.5 1.8 4.7 5.6 9.2 1.7 2 3 3.7 3 3.9 0 .1-1-.6-2.1-1.7-2.2-2-5.6-4.1-6-3.8l1.9 4c1.4 2.6 1.8 3.6 1.4 3.5-1.6-.7-2.2-.7-3.2 0-1.1.7-1.1.7-.9 3.5.2 1.6.5 3.2.7 3.7.5.8.5.8 1-.2.3-.5.6-1.6.8-2.5l.5-1.5c.2 0 2.3 2.2 3.3 3.2l1.4 1.7c2.4 3 9 11.5 10.8 14.3l.9 1.4-1.4-1.1c-4.7-4-12.3-8.4-15.2-9.3-.8-.2-1 0-.6.4 2 2.7 7.7 7.6 9.2 8.8 1.6 1.3 1.6 1.8 1.5 1.9 0 0-1.1-.5-3-1-4.6-1.7-5.8-1.7-5.2-1 .3.3 1 .5 1.7.6 2.3 0 8.4 2.7 12.6 5.5 2.7 1.8 9.2 8 10 9.6.5 1 .4.8-1.3-.5a34.7 34.7 0 00-8.8-5 11 11 0 01-3.2-.6c-1.6-.4-4-.8-5.4-1l-2.4-.3 1.4 1.3a31 31 0 0010.4 5.1 28.5 28.5 0 0111.8 7c-.1 0-1.6-.5-3.4-1.3a99.3 99.3 0 00-12.7-4.4c-1-.2-.6.2 1.9 2.6a60.6 60.6 0 006.2 5 64.2 64.2 0 0031.4 10c2.4.3 4.1.7 4 .9-.1.2 3.6.8 7.6 1.2a89.3 89.3 0 0123.5 5.2 18.7 18.7 0 007 1.6c2.8.1 3.7.1 3.7-.3 0-.9-1.2-2.7-2.6-4-1.2-1-2-1.6-6.9-2.5a40.4 40.4 0 01-6.1-1.3c-.4-.2-6.5-1-13.5-2.2a89.1 89.1 0 01-24-5.5 32.4 32.4 0 01-17.6-27.9 45 45 0 01.2-7.3c.3-1.5.5-2.9.4-3-.4-.3-3.5 5.9-4 8.3l-.2 1.5-.2-2.8a27.1 27.1 0 015.5-16.5s2.3-2.2 2.6-2.8v-.1s0-.1 0 0v-.1c-1.7-.5-3.5.8-5.8 3-1.5 1.4-1.7 1.8-1.8 1.7.1-1.1 4.4-7.6 5.2-7.6a8 8 0 001.6-1.6c.5-1.2-2.5 1.6-4.7 4.6-4.8 6.4-5.8 12.8-5.6 21.5a29.1 29.1 0 01-.2 4.7c-.2 0-1.4-3-2-5-1.6-5.1.8-15.7 4.9-21l2.7-3.3c.5-1-2.8 2.7-4 4.6-.4.6-.7 1-.8.8l.4-1.7a36.3 36.3 0 017.5-12.6c1.3-1.4 1.3-1.4.3-1-2.4.6-4.6 2.5-7 5.2-.6.9-1.1 1.4-1.8 2.1.3-1 2.4-5.6 4.2-8.1 1.1-1.5 2.2-2.5 2.1-2.9 0-.3-1.2 0-2.8 1.3-2.5 1.8-4 3.8-6.1 7.3-1 2-.9 1.4-1.2 1.8 1.1-5.7 1.9-8.3 3.8-12 1.6-3.3 3.3-5.5 6.5-8.8 2.2-2.3 2.6-3 1.9-2.7a18.5 18.5 0 00-7.4 4.7c-1.4 1.4-2 1.8-2 1.6 0-.2.8-1.3 2.1-3.4 2.9-4.4 7-9 11.3-11.8 2.1-1.4 5.4-3 5-3.2a.4.4 0 00-.1 0c.2-.4-1-.2-4 .7-2.8 1-6 2.7-9.1 5.1-1.3 1.1-1 .2 2-2.8a31.4 31.4 0 015.3-4.3c2-1.2 1.9-1.5.6-1.2-3.1.6-9 4-10.8 6.1l-.2.2c-1 .5-1.9 1.8-1.7 1.3.2-.6.7-1 1.8-2.8a38 38 0 0113.4-12.7c1.4-.8 1.4-1.2.5-1.1zM192.2 226zm27.8-20a.2.2 0 01.1 0 58.2 58.2 0 00-9.5 9.3 48 48 0 00-5.9 10.6c-.7 1.9-1.3 3.1-1.3 2.8a68 68 0 011.8-9.6c.3-.2.6-.5 1.1-1.4a33.6 33.6 0 012.1-2.8c1-1.1 3.8-4.1 3.7-4.2l1-.7c2.6-2 6.2-4 7-4zm-13.5 2.2c.1.3-.4 3.8-1.3 8-2 8.6-3.3 15.4-3.7 20-.3 2.9-.4 3.2-.6 1.9a90 90 0 01-.6-8.8c-.3-8 0-10.3 2-14.7a22 22 0 014.2-6.4zm11 6.7c.2 0-.9 1-2.3 2.5a45.5 45.5 0 00-12.7 21.7l-.8 2.9.3-2.7c.1-1.4.4-3.7.7-5a63.2 63.2 0 012.1-6.8 16 16 0 013.6-6.3l1.4-1.4a58.3 58.3 0 002.2-1.7 23 23 0 015.6-3.2zm5 2c.1 0 .2 0 .2.2l-2.3 1.7c-3.1 2-9 8-11.1 11.2a67 67 0 00-6.3 12.3c-1.1 3.4-1 1.6.2-3.2a55.5 55.5 0 016-13.8l1.1-1.6c.6-.6.7-1 1-.8.2 0 1-.5 2-1.3a29 29 0 019.1-4.7zm-27.6 3l.5.6a74.8 74.8 0 015.2 23.9c0-.5-1-3.8-2.1-7.2a49.7 49.7 0 01-4-16.5l.4-.7zm21.2 8.8l-2 2.1a39.3 39.3 0 00-10.5 22.2c-.4 2.2-.8 4.2-1 4.4-.2.2-.5-.7-.7-2-.5-4.3 1-11.2 3.4-16.2l1-2.3c.3-.2.6-.8 1-1.5 2-2 5-5 7-6l1.8-.7zm-26.7 1l.8 1a67 67 0 012.5 3.5 89.8 89.8 0 016.7 13.3c.2.5-.4-.4-1.2-2a55.2 55.2 0 00-4.3-6.4c-3.3-4.4-4.5-6.6-4.5-8.1v-1.3zm-1 6h.5c1.2 0 3.7 2.2 6 5.2a54 54 0 017 17.1c.7 3.2 2 11.4 2 13.2v1.3l-.8-1.2c-.3-.7-.9-2.8-1.2-4.6a81 81 0 00-4.2-15.3 53 53 0 00-8-13.2c-.3-.5-1-1-1.2-1.2-1-.8-1-1.3 0-1.3zm-2 .6l1 .6c1.4 1 1.9 1.4 1.6 2.6-.2 1.2-.4 2.4-.6 2.8-.3.6-.7.1-1-1.2l-.7-3.2-.3-1.6zm27 5.5c.2 0 .2.1 0 .4-.4.3-1.3 1.6-1.8 2.2a55.2 55.2 0 00-7.2 19c-.4 3-1 1.6-1-2.5 0-5.8 2.5-12.3 6.5-16.3 1.7-1.7 3.2-2.8 3.6-2.8zm-27.4 2.5c.4.1 1.5 1.2 4.3 4 2.5 2.6 5.3 5.7 6 7 1.6 2.6 3.3 6.5 3.7 8.5.2 1.2-.2.7-2.6-2.5a140 140 0 00-4.9-6.3c-4.4-5.1-6-7.7-6.6-10.2l.1-.5zm30.4 1.1l-2.1 2.7a41.8 41.8 0 00-3.7 5.7 73.2 73.2 0 00-5 15.2c-.9 4.8-1 4.7-.8-.6.4-10 4-18.3 9.7-21.8l2-1.2zm-30 7.3l1.3.6 3.7 2.7c1.3 1.1 2.5 1.9 2.7 1.7.2-.1.3-.1.1.1 0 .2 1 2 2.4 3.9a54.7 54.7 0 017.2 13.2l.7 2.5-2.7-4.1a48.7 48.7 0 00-9.5-11.9 15.6 15.6 0 01-4-5.1l-1.9-3.6zm32.5 5.3l-2.3 2.4a25.3 25.3 0 00-5.2 10.1 59.6 59.6 0 001.3 22.8 39 39 0 01-3.2-8.8c-.7-3.5-.6-11.8 0-14.6a23 23 0 014.2-8.7c1.4-1.6 4-3.2 5.2-3.2zm-31.5 1.4c.6 0 1.3.4 2.4 1.1 4.4 2.8 10 10.1 16.4 21.5 5.2 9.3 8.1 16.3 4 9.3a215.1 215.1 0 00-20.2-27.6 16.2 16.2 0 00-3-2.5c-1.6-1-1.7-1.4-.3-1.7a2 2 0 01.6 0zm-1.6 1.9c.3 0 .8.2 1 .6.6.6.3 3.7-.3 4-.5.4-.7 0-1-2.5-.3-1.7-.2-2.1.3-2.1zm28.9 11l-.1 4.8a34.3 34.3 0 0011.3 27.8 34 34 0 0018.3 7.7l5.7 1c.3.2 4.2.6 4 1-.2.1.2.2.8.1 1.6-.3 6.7.8 8 .9a141 141 0 0119 4c1.2.4 3.6 3.2 3.6 4.1 0 .2-1.3.3-3.6.1a17 17 0 01-6.8-1.7c-5.3-2.3-12.7-4-21.7-4.8-4.6-.4-19.7-3-24-4a54.6 54.6 0 01-14.3-4.8 41.4 41.4 0 01-11.5-7.6l-2.7-2.5 2.3.6a70 70 0 0118.7 8.5 30 30 0 0010 4.9c2.6.7 3.4.7 3.4.3 0-.2-1.4-.8-3-1.2a29.7 29.7 0 01-19.7-33.1c.4-1.6 2.1-6.1 2.3-6.1zm-26.7 1.3a3 3 0 00.6.2 55 55 0 0115.4 9.8 24.4 24.4 0 013.5 4.6l1.3 2.5-2.2-1.8a53.4 53.4 0 00-5.2-3.5c-1.6-1-5-4-8-6.8-2-2-4.3-4-5.4-5zm6.7 17.1l.9.1 4.7 1a36.1 36.1 0 0118.2 11.6l1.8 2.3-1.8-1c-1-.5-1.8-1-1.7-1.1.3-.4-3.9-3.9-6-5a74.4 74.4 0 00-7-3 26 26 0 01-9-4.3c-.3-.4-.4-.5-.1-.6z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M217.8 251.4c-1 .3-2.3 1.6-3.2 2.3-1.8 1.3-2 1.8-.4.6 1.3-1 3.4-2.5 5.3-2.7.2 0-.7.9-1.2 1.4-.7.8-.5.7 1-.3l2-1.4c0-.3-2-.5-3.5 0zM190 281.7c0 1 12.6 10.4 13.2 9.8l-3.7-2.5a51.8 51.8 0 01-6.2-4.7c-1.4-1.2-3.1-3.2-3.3-2.6z"/>
+  <g stroke="#d4af37" stroke-width=".9">
+    <path fill="#fff" d="M246.2 432.3a31 31 0 01-16.4.7 21 21 0 00-6.2 0l2.8 1.8c1.3.8.8.6 3.1 1.7-.4.4-.6.6-2.4 1.3 2.4.5 5.4.8 8.3.6a37 37 0 008.7-1.4 47 47 0 019-1.8c1.2 0 5.4 1.3 9.4 3.4 8.6 4.7 14.6 6 20.6 6 4.1 0 8.4-1 13.3-4.2 3.6-2.3.6-2.2-3-.7-5 2-15.2 3-27-3.2a44.4 44.4 0 00-14.6-5.6c-.4 0-3 .6-5.6 1.4z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+    <path fill="#d91023" d="M219.9 429.5c1.4 1.2 1.2 1.5 3.8 3.5 3.5.4 10.6 1.1 13.2 1.1 2.4 0 6.8-.4 10-1.2 6.2-1.3 9.2-1 20.5 4 13.1 6.8 20.5 5.6 27.3 2.3 9.4-3.6.2-2-3.2-3-1.1.3-2.5 1.8-5.2 2.7-3.8 1.4-5.8 1.4-10.3-1-2.9-1.4-5.4-2-8-3.5-2.5-1.5-3.1-1.3-7.3-2.7l-6.2-1.2-9.4-.5a44 44 0 01-21.5-1.3c-5.4-1.7-6.4-1.4-3.7.8z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+    <path fill="#d91023" d="M244.3 436.8a35 35 0 01-17.2 1l-3.9 1.3c-5 1.7-5 1.8-2.9 2.4 1.3.4 6.3.7 11.3.6 8.5 0 9.3-.1 14-2.4a24 24 0 017-2.5c1 0 4.5 2 7.7 3.7 8.8 4.6 12.1 6 19.4 5.9 7.3 0 16.7-5.3 17.9-7a28 28 0 01-17.3 4.8 41 41 0 01-19.8-7c-5.8-3.1-7.8-3.2-16.1-.8z" transform="matrix(.47638 0 0 .46773 113 114.3)"/>
+    <g stroke-width=".8">
+      <path fill="#fff" d="M293.5 417.7c1.2-1.4.8-2-2.5-2.4a47.2 47.2 0 01-23.1-10.9c-2.2-2.3-3.1-2.5-3.1-.7 0 2 6.7 8.1 11.6 10.6a45.6 45.6 0 0014.5 4.7c.8 0 1.9-.5 2.6-1.3z" transform="matrix(-.16796 -.34478 -.72366 .17969 593.5 332.2)"/>
+      <path fill="#d91023" d="M290.7 421.4c.2-.4-.4-2.4-3.1-3a41.8 41.8 0 01-19-9.8c-3.6-3.5-5.3-3.9-4.1-.7 1.6 4.6 14.3 11 19.3 12.6 5 1.6 6.1 2 6.9.9z" transform="matrix(-.16796 -.34478 -.72366 .17969 593.5 332.2)"/>
+      <path fill="#ed1c24" d="M295.5 415.4l.8-1.4-4-2.6c-4.7-.6-13-3.6-18.6-6.7a21.5 21.5 0 00-6.1-2.6c-1.5 0-1.6 0 .1 1.9a44 44 0 0021.8 10.4c2.3.4 4.7 2 6 1z" transform="matrix(-.16796 -.34478 -.72366 .17969 593.5 332.2)"/>
+      <path fill="#fff" d="M293.5 417.7c1.2-1.4.8-2-2.5-2.4a47.2 47.2 0 01-23.1-10.9c-2.2-2.3-3.1-2.5-3.1-.7 0 2 6.7 8.1 11.6 10.6a45.6 45.6 0 0014.5 4.7c.8 0 1.9-.5 2.6-1.3z" transform="matrix(.18999 -.33346 .71052 .22504 -81.5 310.7)"/>
+      <path fill="#d91023" d="M289 420.6c0-.2 1.2-1.6-1.4-2.2a41.8 41.8 0 01-19-9.8c-4.2-4.6-6.3-5.6-4.1-.7 1.6 4.6 14.3 11 19.3 12.6 5 1.6 4.4 1.3 5.1.1z" transform="matrix(.18999 -.33346 .71052 .22504 -81.5 310.7)"/>
+      <path fill="#ed1c24" d="M295.5 415.4l.8-1.4-4-2.6c-4.7-.6-13-3.6-18.6-6.7a21.5 21.5 0 00-6.1-2.6c-1.5 0-1.6 0 .1 1.9a44 44 0 0021.8 10.4c2.3.4 4.7 2 6 1z" transform="matrix(.18999 -.33346 .71052 .22504 -81.5 310.7)"/>
+    </g>
+    <path fill="#fff" d="M319.7 402.7a30.7 30.7 0 00-16.7 13.1c-2 3-4 4.4-2.6 5 1.5.8 2.9-1.3 5.6-4 7-7 12.5-10 20-10h6l-1.8-2.5c-2.1-3-4.6-3.3-10.5-1.6zm-50.5 2.4c-1.2 1.4-.9 2 2.6 2.5A49.4 49.4 0 01296 419c2.3 2.4 3.3 2.6 3.3.7 0-2-7.1-8.5-12.2-11-4.4-2.4-12.2-5-15.1-5-1 0-2 .5-2.8 1.4z" transform="matrix(.47614 .01506 -.01519 .46749 120 112.2)"/>
+    <path fill="#d91023" d="M318.6 399.5a52 52 0 00-5.4 2.3 48 48 0 00-9.9 9.6l-3 4.2c-1.3 2-1.5 3.2-.8 3.3.6.2 2-.7 3.5-2.7 6-8.4 11.6-12.2 19.8-13.9 4.2-.8 4.8-.8 6.3.7 1.2 1-.3-.2-.6-1-.5-1.8-1.8-2.7-4.5-3.2a13.3 13.3 0 00-5.4.7z" transform="matrix(.47614 .01506 -.01519 .46749 120 112.2)"/>
+    <path fill="#d91023" d="M272 403.3c-.2.4 1.8 1.2 4.5 1.7a42 42 0 0119 9.9c3.5 3.5 5.3 3.8 4 .6-1.5-4.5-14.2-11-19.2-12.5-5-1.6-7.6-.8-8.3.3zm48.5 4A39.3 39.3 0 00307 416c-4 3.9-5.8 6.3-4.2 6.3.3 0 2.7-1.9 4.3-3.3 7-6 19.8-9.4 25.4-7.3 2.8 1 1.5-2-.4-4.8-1.1-1.7-8-.7-11.5.6zm-53-.2l-3.4 3.1 5 .9c5 .6 14.3 4 20.5 7.4 2.7 1.6 5.8 2.9 6.7 2.9 1.7 0 1.8 0-.1-2.1a48.7 48.7 0 00-24-11.6c-2.7-.4-3.4-1.8-4.8-.6z" transform="matrix(.47614 .01506 -.01519 .46749 120 112.2)"/>
+    <path fill="#d91023" d="M304.5 422.4a33.6 33.6 0 00-1 14.1c1.6-.2 2.7-.2 5.3-.7.3-2.2.7-4.7.6-7.4.3-3.7 0-1.8 2.1-4.8-2.3-1.5-3-1.6-7-1.2z" transform="matrix(.47638 0 0 .46773 112.6 115.7)"/>
+    <path fill="#fff" d="M296.2 428.6c0 4.2.3 5.2.3 7.2 2.3.3 7.4 1 7 .2v-8l1-5.5-3.7-.6-3.2.4-1.4 6.3z" transform="matrix(.47638 0 0 .46773 112.6 115.7)"/>
+    <path fill="#d91023" d="M291 428.8c.1 3.4-.5 4.5-.1 6.5 1 .3 5 .2 6.3.5-.2-4.3-.2-.5-.6-6.2l1.2-7.3-3.6.3s-2.2-.7-3.7-.7c1.3 2.3.5 7 .5 7z" transform="matrix(.47638 0 0 .46773 112.6 115.7)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pf.svg
new file mode 100644
index 0000000..94ff90c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pf.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pf" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#fff" d="M0 0h512v512H0z" style="width:0"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-width="2pt" d="M210.4 363.5s11.6-9.4 22.8-9.4 14.4 7.8 22.2 8.4c7.8.7 14.4-7.8 24-8 9.8-.4 22 6.8 22 6.8L258.9 374l-48.5-10.6zm-24.3-13.8l144.3.7s-12.5-13.5-27.2-13.8c-14.6-.3-10.6 6.3-21.8 7.2-11.3 1-14.1-6.9-24.4-6.6-10.3.3-16.3 6.6-24 6.9-7.9.3-17.9-7.8-23.8-7.5-6 .3-27.2 9.4-27.2 9.4l4 3.7zm-18.5-17.2l178.1.7c2.9-4.1-8.7-13.8-19.3-14.7-8.8.3-15 9-22.2 9.3-7.2.4-15.3-9-23.5-8.7-8 .3-16.5 8.8-24.6 8.8-8.2 0-14.1-9.1-24.4-9.1s-15 10-22.8 9.4c-7.9-.7-14.7-10-22.2-10s-20 11.2-22.5 10.6c-2.5-.6 3.1 4.7 3.4 3.7z"/>
+    <path fill="red" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.5" d="M236 233.5l41 11V186c-18.8 1-34.4-35.6-1.3-38.1-32.4-4.8-36.2 3.7-40 12.7l.4 72.9z"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-linecap="round" stroke-width="5" d="M210.1 276l92.5.3"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="4" d="M214.5 253.8l11 14.7m-11 0l11.9-14.4m-5.6-1.3l-.4 9.1m11.6-8.1l11 14.7m-11 0l11.9-14.4m-5.6-1.3l-.4 9.1m12-8.1l10.8 14.7m-10.9 0l11.9-14.4m-5.6-1.3l-.3 9.1m12.4-8.1l11 14.7m-11 0l12-14.4m-5.7-1.3l-.3 9.1m11.9-8.1l10.9 14.7m-11 0l12-14.4m-5.7-1.3l-.3 9.1"/>
+    <path fill="#ef7d08" fill-rule="evenodd" d="M148 277l39.3.2v-24.7l-45-2.1 5.6 26.5zm-2-34.1l42 4-.4-17.5-41-16.2-.5 29.7zm8.5-35l32.2 15.6 4.6-4.8s-3-2-2.8-4c0-1.8 3-2.1 3-4.2 0-1.9-3.3-2.1-3.3-4-.3-2 2.6-4.3 2.6-4.3L161.7 177l-7.2 31zm211.2 69.3h-41.5l-.3-24 45.6-3.5-3.8 27.5zm-41.2-29.7l49.4-6-10.7-28.3-39 16.5.3 17.8zm36-42.1L324.7 224c-.5-2-1-4-3.4-5.6 0 0 2.2-1.3 2.2-3.5s-2.9-2.5-2.9-3.7 2.6-2.4 2.8-5.2c-.3-2-2.8-4.6-2.3-5.2l27.7-21.2 11.5 25.7zM283.1 247l17.9-.8.3-7.2-18.1 8zm-54.3-.6L210 246v-7.5l18.8 8zm-.1-2.2l-18.7-9.6v-12.5s-2.2.3-1.9-2.2c.1-5.2 13.8 9.5 20.7 14.3l-.1 10zm54.4-1.1V235s16.8-15.2 20.4-18c0 3.1-2 5.5-2 5.5v12l-18.4 8.7zM174 174.7l18.9 21c.5-2 4.8-2.2 9.2-2 4.4.4 7.9-.2 7.9 3 0 3-2.3 2.6-2.3 4.8s3.4 2 3.4 4.8-2.4 2.2-2.5 4.4c0 1.8 2.6 2 2.6 2l17.7 17.1v-18.4l-36.5-57.3-18.4 20.6zm29-21.7l24.8 50.7s.3-46.8 4.4-49.3l-7-12.8L203 153zm107.7 2l-27.6 49.3v-20.8s2.3-3.5-1.3-3.2c-3.6.3-8.1-.3-8.1-.3l11.1-39 26 14zm28.4 21.1c-.3.6-18.7 19.2-18.7 19.2-.8-2.2-6.4-1.1-11.6-1.1-5.3 0-6 1.7-5.8 3 .6 3.7 2.4 1 2.4 4.4 0 3.3-2.6 2-2.8 4.5.2 2.8 4 2.1 1.8 4.3l-21.3 20.4v-19.4l39.6-61.5 16.4 26.2z"/>
+    <path fill="red" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.5" d="M245.1 286.3c-8.9 14.7-32.7 10.4-38.2 0-1.7-.4-.7-63.5-.7-63.5s-2.7-1.2-2.8-3.1c-.1-2 3.6-2.1 3.6-4.6 0-2.5-3.8-1.6-3.9-4 0-2.5 4.1-2.2 4-4.4-.3-2.5-4.6-2.1-4.8-4.5-.2-1.8 3-3.4 4-4.2h-9.9c-4.8 0 .1 1.1 0 4 0 1.8-2.4 3-2.6 4.6 0 1.6 3.4 2.7 3.5 4.7 0 1.7-3.5 1.9-3.4 3.5.3 2.7 3.1 3.3 3.1 5 0 1.6-3.9 2.3-3.9 3.6l.6 64.8c6 31.8 41.4 39.8 51.4-2zm23.3 0c9 14.7 32.7 10.4 38.3 0 1.7-.4.7-63.5.7-63.5s2.7-1.2 2.8-3.1c.1-2-3.4-2.1-3.4-4.6 0-2.5 3.6-1.6 3.7-4 0-2.5-3.8-2.3-3.6-4.6.2-2.5 3.1-2.2 3.3-4.5.1-2-1.9-3.2-2.8-4h9.7c4.9 0 0 1.1 0 4 0 1.8 2.5 3 2.7 4.6 0 1.6-3.5 2.7-3.5 4.7 0 1.7 3.5 1.9 3.3 3.5-.2 2.7-3 3.3-3 5 0 1.6 3.9 2.3 3.9 3.6-.2 2.6-.6 64.8-.6 64.8-6.1 31.8-41.4 39.8-51.5-2z"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-width="2pt" d="M236.5 315.3h39.8c.3-.3-9-13.8-20-12.8-12.2.3-20.5 12.8-19.8 12.8zm126.8-1h-54.4s7-4.1 9-8c3.5 2 2.5 3.9 9.5 4.2 7 .3 13.8-8 20.5-7.7 6.7.3 15.4 11.8 15.4 11.5zm-214.4 0h54.4s-7-4.1-9-8c-3.5 2-2.5 3.9-9.6 4.2-7 .3-13.7-8-20.5-7.7-6.7.3-15.3 11.8-15.3 11.5zm4-17l38.8.2s-2.5-5.3-2.8-11.8c-10-3.5-18.2 7.5-25.3 7.8-7.2.3-14.7-7.8-14.7-7.8l4 11.5zm207 0l-38.8.2s2.5-5.3 2.8-11.8c10-3.5 18.1 7.5 25.3 7.8 7.2.3 14.7-7.8 14.7-7.8l-4 11.5zm-113.5.2l19.7-.6s.3-6-10-6-9.4 7-9.7 6.6zm-12-8.4c3.5-1.9 6.7-3.8 8.8-8.1l-13.4.3s-6.2 3.7-9.4 7.8h14zm43.5 0a18.2 18.2 0 01-8.7-8.1l13.4.3s6.3 3.7 9.4 7.8h-14z"/>
+    <path fill="#de2010" fill-rule="evenodd" d="M-128 384h768v128h-768zm0-384h768v128h-768z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pg.svg
new file mode 100644
index 0000000..7397754
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pg.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pg" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M81.4 0h496v496h-496z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-84) scale(1.0321)">
+    <g fill-rule="evenodd">
+      <path d="M.5 0L0 496h659L.5 0z"/>
+      <path fill="red" d="M658.5 496L659 0H0l658.5 496z"/>
+    </g>
+    <path fill="#fc0" stroke="#fc0" stroke-width="2.3" d="M406.9 123.4l-8.8-.4c-2.7-6.4-10.3-8.8-15-6-4.2.3-26.5-.4-26.5-.4l16.3 7.1c4 10.9 18 13.5 18 13.5-1.2 20-20.3-2.6-36.3 8.8-11.4 6.9-11.6 15-17.8 28.3a119 119 0 01-10 13.1l13.5-1-4.3 5.6 16-2.3s-2.1 1.8-3.4 3.2c2.4.5 18.3-3.7 18.3-3.7l-1.1 5.1c8.1-3.3 18.2-6.6 18.2-6.6s3.6 3 6.9 4.3l2.3-9.1 9.1 2.3 2.3-9.2c13.7 18.3 18.3 36.6 43.4 41.2l-2.3-9.2c7 3 20 9.4 20 9.4l2-4.2c10.9 7.8 20 7.7 26 8.5l-4.5-11.4 4.6 2.3-6.9-18.3 6.9 2.3-9.2-13.7 3.4-2.3-1-6.9c13.6 4.6 32 11.5 34.2 27.5 2.3 25.1-25.2 32-43.4 29.7 13.7 11.4 38.8 6.8 50.3-4.6a47 47 0 009.1-18.3c2.3 6.9 6.9 16 6.9 25.2-2.3 20.5-29.8 27.4-48 29.7 20.5 11.4 57.1-2.3 59.4-32 0-25.2-16-36.6-22.9-48a231 231 0 01-2.3-12.3c1 .2 6.9 3.2 6.9 3.2s-4-7.6-4.6-9.2c0 0-7.1-19.4-9.7-23.7.4-.3 5.2.8 5.2.8l-18.8-23.5 5.3-.6S493 100.5 487 98.3l6.9-2.3c-13.8-6.8-29.8-2.3-43.5 6.9l2.3-6.9-4.2.4v-7.8l4.2-6.3-6.8-2.3 4.5-11.4-6.8 2.3 2.3-11.5s-5.2 2.4-8.3 2c.1.3 3.7-7.7 3.7-7.7-2.2-3.4 0-10.3 0-10.3-16 2.3-18.3 4.6-27.4 18.3-13.8 25.2-9.2 36.6-6.9 61.7z"/>
+    <path fill="red" fill-rule="evenodd" stroke="red" stroke-width="3" d="M493.3 161c1.2 2 14.1 8.2 23.9 13.8-2.6-10.6-21.7-12.9-24-13.8z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M179 412.4l-14.6-9.3-19.5 9.4 4.4-16.7-15-15.7 17.3-1 10.3-19 6.3 16 21.2 3.9-13.3 11zm37.3-81.6l-6.8-3.2-6.4 3.7 1-7.4-5.6-5 7.4-1.4 3-6.8 3.6 6.6 7.4.8-5.2 5.4zm32.9-46.8l-14.8-7.2-14.4 8 2.3-16.2-12.1-11.2 16.2-2.8 6.8-15 7.8 14.6 16.3 1.8-11.3 12zm-67.7-65l-17.4-8.8-17 9.4 2.8-19.2-14.2-13.4 19.2-3.1 8.3-17.7 9 17.3 19.3 2.4-13.7 14zM119 286.5l-17.6-10.4-17.5 10.7 4.5-20-15.6-13.3 20.4-2 7.9-18.9 8 18.8 20.5 1.7-15.3 13.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ph.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ph.svg
new file mode 100644
index 0000000..681cf23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ph.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ph" viewBox="0 0 512 512">
+  <path fill="#0038a8" d="M0 0h512v256H0z"/>
+  <path fill="#ce1126" d="M0 256h512v256H0z"/>
+  <path fill="#fff" d="M443.4 256L0 512V0"/>
+  <g fill="#fcd116">
+    <path stroke-width="1.1" d="M25.2 44.4l15.4 13.3 17.9-9.8-8 18.7 15 14L45 78.9l-8.6 18.4-4.7-19.8-20.2-2.6L29 64.4zM372.1 229l.4 20.3 19.3 6.7-19.3 6.7-.4 20.3-12.3-16.2-19.5 6L352 256l-11.7-16.7 19.5 5.9zM36.5 414.7l8.6 18.4 20.3-1.7-14.8 14 7.9 18.7-17.9-9.8-15.4 13.3 3.9-20-17.5-10.5 20.2-2.6z"/>
+    <path stroke-width="5.7" d="M158.9 148l-6.6 6.6 3.2 50.3-3.3.3-6-45.9-5.5 5.4 8.2 41a51 51 0 00-18.4 7.7l-23.3-34.8h-7.7l28.2 36.8-2.5 2.1-33.3-38h-9.4v9.5l38 33.3-2.2 2.5-36.8-28.2v7.7l34.8 23.3a50.9 50.9 0 00-7.6 18.4l-41-8.2-5.5 5.5 46 6-.4 3.4-50.3-3.3-6.7 6.6 6.7 6.6 50.3-3.2.3 3.3-45.9 6 5.4 5.5 41-8.2a51 51 0 007.7 18.4l-34.8 23.3v7.7l36.8-28.2 2.1 2.5-38 33.3v9.4H92l33.3-38 2.5 2.2-28.2 36.8h7.7l23.3-34.8a50.8 50.8 0 0018.4 7.6l-8.2 41 5.5 5.5 6-46 3.3.4-3.2 50.3 6.6 6.7 6.6-6.7-3.2-50.3 3.3-.3 6 45.9 5.5-5.4-8.2-41a51 51 0 0018.4-7.7l23.3 34.8h7.7L190 296.6l2.5-2.1 33.3 38h9.4V323l-38-33.3 2.2-2.5 36.8 28.2v-7.7l-34.8-23.3A50.9 50.9 0 00209 266l41 8.2 5.5-5.5-46-6 .4-3.3 50.3 3.2 6.7-6.6-6.7-6.6-50.3 3.3c0-1.2-.2-2.3-.3-3.4l45.9-6-5.4-5.5-41 8.2a51 51 0 00-7.7-18.4l34.8-23.3v-7.7l-36.8 28.2-2.1-2.5 38-33.3v-9.4h-9.5l-33.3 38-2.5-2.2 28.2-36.8h-7.7l-23.3 34.8a50.9 50.9 0 00-18.4-7.6l8.2-41-5.5-5.5-6 46-3.3-.4 3.2-50.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pk.svg
new file mode 100644
index 0000000..06b6022
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pk.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pk" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)">
+    <path fill="#0c590b" d="M-95 0h768v512H-95z"/>
+    <path fill="#fff" d="M-95 0H97.5v512H-95z"/>
+    <g fill="#fff">
+      <path d="M403.7 225.4l-31.2-6.6-16.4 27.3-3.4-31.6-31-7.2 29-13-2.7-31.7 21.4 23.6 29.3-12.4-15.9 27.6 21 24z"/>
+      <path d="M415.4 306a121.2 121.2 0 01-161.3 59.4 122.1 122.1 0 01-59.5-162.1A118.6 118.6 0 01266 139a156.2 156.2 0 00-11.8 10.9A112.3 112.3 0 00415.5 306z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pl.svg
new file mode 100644
index 0000000..f7c12a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pl.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pl" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M512 512H0V0h512z"/>
+    <path fill="#dc143c" d="M512 512H0V256h512z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pm.svg
new file mode 100644
index 0000000..3d4014a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pm.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pm" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pn.svg
new file mode 100644
index 0000000..47b0749
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pn.svg
@@ -0,0 +1,67 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pn" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="b">
+      <path d="M-15-7.5h30v15h-30z"/>
+    </clipPath>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M-15-15h30v30h-30z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(256 256) scale(17.06667)">
+    <path fill="#00247d" d="M-15-15h60v30h-60z"/>
+    <g clip-path="url(#b)" transform="translate(0 -7.5)">
+      <circle r="20" fill="#00247d"/>
+      <path stroke="#fff" stroke-width="3" d="M-20-10l40 20m-40 0l40-20"/>
+      <path stroke="#cf142b" stroke-width="2" d="M-20-10l40 20m-40 0l40-20"/>
+      <path fill="#fff" d="M0 0l20 10h-3L-3 0m3 0l20-10h3L3 0M0 0l-20 10h-3L-3 0m3 0l-20-10h3L3 0"/>
+      <path stroke="#fff" stroke-width="5" d="M-20 0h40M0-10v20"/>
+      <path stroke="#cf142b" stroke-width="3" d="M-20 0h40M0-10v20"/>
+    </g>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M-.3 3.8a4.2 4.2 0 00-1.4 2C-2 8-2.7 8.4-3.5 8c0 1.1 1 1.2 1.4.6a3 3 0 001.2 2.6c.3.3.4.1.2-.2-.2-.4-.2-1.5-.5-2.2.5.4 1.3.2 1.3-.9-.7.4-1.4.4-1.5-.5 0-1.1.4-2.8 1.1-3.5zm-.8-8c0-.4 0-.8-.3-1-.6-.5-1.1-.4-1.5 0-.7-.3-1 .9-1.7.7.1.4.3.5.7.4-.4.3 0 .7-.5 1.1.8.3 1.2-.2 1.2-.9.3.3.8.2 1 0-.4-.2-.4-.6-.2-.9.2-.5 1.4-.5 1.3.6z"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M.7 1.6C0 2.1-1.8 2-1.9.7-2.1-.4-1-.9-.6-1c.4-.2.8.2.6.7a.8.8 0 00.4-1.1c.7 0 1.3-.5 1.6-1.2-.2.2-.9 0-1.4 0v-.7c-.5.6-1.3.3-2.4 2L-1-4a1.9 1.9 0 000-.3c0-1-1-1-1.3-.6.2.3.1.7 0 1.2L-3-.9c0-.8-.6-.9-.7-1.2l-.2.5c-.1-.2-.8 0-1-.2-.3.5.1 1 .6 1.2-.3 0-.3.3-.6.3.4.4.7.6 1.1.6.5 0 .8.2 1 .7.4.8 2 1.4 3.5.6z"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M3 .6A4.5 4.5 0 01.4 3.1c-1 .3-3.2 1.3-3.7 1.9"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M-.3 3.8c-.8.7-1.2 2.4-1 3.5 0 .3 0 .5.2.6 0-.6.5-2.2 1.6-3 1-.6 2.4-2 3-3.6L2.9.8c-.6 1.4-2 2.1-3.2 3z"/>
+    <path fill="#316d3a" stroke="#000" stroke-width="0" d="M2.4 0A4 4 0 011 1.2a.8.8 0 000-.5c-.8.3-2.4.3-3 0A4 4 0 002-.5l.3.5z"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M-3.6 3.5c-1.2 1.1-.4 2.2.1 2.4-.1.8.6.7.6 1.4.3-.1.4-.6.4-1 .4.4 1.4 0 1.6.7.1-.8-.5-1.7-1.4-1.6.4-.4.2-.9-.2-1 0 .6-.8.6-1 .4-.3-.2-.6-.8 0-1.4z"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M-.8 11c-.1.1-.1.3 0 .4.1.2-.2.7.4.9.2 0 .3-.1.3-.3.2-.5-.3-.6-.4-.8 0-.3-.2-.3-.3-.2z"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M-.3 12c-.2 0-.4.2-.3.8 0 .3 0 .8-.2.9h.5c.1.1.4 0 .5-.2.1.2.3 0 .3-.2.1 0 .3 0 .3-.4l.4-.1c-.2 0-.7-.4-.9-.6C.2 12 0 12-.3 12z"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M-3.2-4.8a2.2 2.2 0 01.3-.4m2.8 2.6l.7-.1m-.9 16.3V13m.5.5"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M8.5 3.5c2 1.7 2.1 3 1.8 3.8-.1-.7-1-1.9-1.9-2.2V3.5z"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M4.8 2.5h3.8V7a8 8 0 01-4.3 7.3A8 8 0 010 7V2.5h2.7c0 .2 0 .6.3 1a4 4 0 001.8-1z"/>
+    <path fill="#006ec7" stroke="#000" stroke-width="0" d="M8.6 2.5V7a9 9 0 01-.5 3L4.3 3.1l-3.8 7A8.6 8.6 0 010 7V2.5h8.6z"/>
+    <g fill="#f7e017" stroke="#000" stroke-width="0">
+      <path d="M6 12.2l.4.2c.2-.5.2-1 .1-1.5-.2.5-.9.5-1.1.8l.3.3-1.1.7V9.2l-.1-.7v-.7c0-.2 0-.4-.2-.4s-.2.2-.2.4v4.9c-.2-.5-1-.3-1.3-.8a1 1 0 01.4 0c-.2-1-1-1-1-1.2 0 .3-.2 1.1 0 1.5a1 1 0 01.2-.2c.3.6 1.6.6 2 1.6.1-.4 1-.8 1.6-1.4z"/>
+      <path d="M4.3 9.2h1.5l.2-.4-.2-.3h-3l-.1.3.1.3 1.5.1zm-.2-1.5"/>
+      <path d="M2.8 9.1l.1-.3-.1-.3m.2.6v-.6m.8.7l.1-.4-.1-.3m.1.7l.2-.4c0-.2 0-.3-.2-.3m.7.7l.2-.4c0-.2-.1-.3-.2-.3m.2.7l.2-.4c0-.2-.1-.3-.2-.3m.9.6l.1-.3-.1-.3M2.4 12l.4-.1m3.2.3l.6-.9"/>
+    </g>
+    <g stroke="#000" stroke-width="0">
+      <path fill="#fff" d="M3.5 5.7l.2-.2.2-.1H5l.1.1V7H3.5V5.8"/>
+      <path fill="#e5e5e5" d="M4.7 7.2l.2-.1c.2-.1.1-.1.1-.2V5.5H3.6l-.1.2v1.5h1.1z"/>
+      <path fill="#fff" d="M4.8 7.2H3.5V5.6h1.3v1.6z"/>
+    </g>
+    <path fill="#96877d" stroke="#000" stroke-width="0" d="M7 1.6a.8.8 0 01.1.9h-.3c.1-.4 0-.8-.5-.8-.9-.1-1.9 1.5-3.3 1.7-.5-.5-.4-1.5.1-2a6 6 0 00-1.3-2"/>
+    <path d="M3.3 2A4 4 0 002-.5c.3.1 1 .1 1.3-.2.6-.4 2-1 2.5-.7 0 0 .1.3 0 .4 0-.3-1.4.2-1.8.4-.4.1-.6.3-.4.9-.3-.2-.2-.4-.4-.5l.2 1c-.1-.3-.3-.8-.6-1 .3.5.6 1.8.4 2.5.3 0 .8-.2 1-.4-.2.3-.7.4-1 .5-.2.2-.3.6-.3.9L3.2 2zm3.6-.4c-.2-.3-.7-.4-1.4-.3l.5-.1L5.8 0H6l.3 1.2h.3a17.2 17.2 0 01-.3-1.5l.2-.1.5 2z"/>
+    <path fill="#96877d" stroke="#000" stroke-width="0" d="M6.8 2.5c.1-.4 0-.8-.5-.8s-1 .4-1.5.8h2zM3.1-1.1a3.3 3.3 0 01-1 0v-.3a4 4 0 00-.6.5c.4 0 1.2.1 1.6-.2z"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M3.1 1.5l.2.7m-1-4a2 2 0 00-.3.6l1.1.1m-1.3.5h.3c.3.1 1 .1 1.3-.2C4-1 5-2 6.3-2"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M1.5-1c.4.2 1.2.2 1.6 0A5.6 5.6 0 016-2.3"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M8.5 3.5c1.4 1 2.4 1.9 2.7 3.4.3 1.5.9 1.9 1.6 1.5-.2.8-1 1-1.8.3 0 1-.3 2.2-1.4 2.6 0-.6.4-1 .2-1.6 0-.2 0-.7.3-1-.6.3-1.4-.1-1.5-1 .6.4 1.4.4 1.7-.4.3-.8.2-2.1-1.8-3.8zm1.7-7.8c.5-1.2 1.6-1 2-.6 1-.6 1.2.8 2.2.6 0 .2-.4.5-.7.5.4.3-.1.8.6 1-.6.4-1.6 0-1.8-.8-.2.4-1 .4-1.3 0 .7-.1.6-.8.2-1-.4-.3-1-.2-1.2.3zM7-1.8C7.3-.8 8 .1 8.6.7c.8.8 2 .6 2.7-.1C11.2 2 9.8 2 9 1.6c-.4-.1-.7 0-.4.3a8 8 0 003 1c2.3.6 1.5 2.4.8 2.4.2 0 .4-.2.1-.5-2-1.8-6.1-1-6-5.1C6 .7 4.2.3 5-1c.2.2.7.2.8-.1.1-.3 0-.8-.4-1.1 0 0 .3 0 .2-.2l.4.2.3.2v-.2c0 .2.3.3.4.3z"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M9 1.6c1 .7 2 .7 3-.5.3-.4.8-.7 1.2-.7.3 0 .3-.4.6-.4-.2 0-.3-.3-.5-.3.6-.2.4-.7.7-1-.2.2-.6-.2-1 .3v-.6c0 .3-.6.3-.7 1 0 .3-.2.3-.3-.3a8.9 8.9 0 00-.4-2c-.2-.6-.3-1.4 0-1.5M9.3 11.9c.2.1.4.3.2 1 0 .2 0 .9.2 1l-.6-.1c0 .2-.4.1-.5-.1-.1 0-.3-.1-.3-.3-.2 0-.4 0-.3-.5l-.5-.1c.3 0 .9-.4 1-.6.2-.3.5-.4.8-.3z"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M9.1 13.8c.1-.1.2-.5.1-.7m-.6.5a1.1 1.1 0 00.4-.5m-.7.3c.1 0 .5-.5.5-.7m-.8.2c.1 0 .6-.3.8-.6"/>
+    <path fill="#f7e017" stroke="#000" stroke-width="0" d="M6.5-.3c0 1.7.6 2.5 1.6 3.1-.4-.2-.2-1-.7-1.2H8c0-.1-.4-.6-1-.7h.7C7.5.3 6.7.6 6.4-.3zM6.3-2H6l-.4-.2c0 .2-.1.2-.2.2.5.3.5.8.4 1-.1.4-.6.4-.8.2 0 .7.8.9 1.2 0 0 .2.2.1.2.3.3-.3 0-.9-.2-1.4z"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M4.8-5.3a2 2 0 01-.6-1.4c0-.4.2-.8.7-.6-.1 0 0 .3-.2.4l.4-.2.2.2-.1-.4v-.5l-.1.3c0-.1 0-.4-.3-.5a.4.4 0 000 .5c-.2 0-.5 0-.6.2 0-.2 0-.5.2-.7 0 0 0-.2-.2 0-.1-.3-.6-.5-.7-.3-.2.1-.5-.1-.6.1-.2.3-.7.3-.7.6l-.1.5c-.2.2 0 .3.1.5 0-.6 1-1.8 2-1.3l-.2.8c0 .6 0 1.4.6 1.8h.2z"/>
+    <path fill="#cf142b" stroke="#000" stroke-width="0" d="M5.1-7.3c0-.1.3-.3.6-.3.4 0 .8.3 1 .3.4 0 .3.1.2.2 0 0-.1.1 0 .2 0 .1-.1.2-.2 0-.3-.1-.6.2-1 0C5.3-7 5-7 5-7.3z"/>
+    <path fill="#96877d" stroke="#000" stroke-width="0" d="M3.4-3.4c-.2-.5-.8-1-1.1-1.2V-5l.7-.5c1.3.6 3-.3 3.8-1.2l.3.2-.2.2h-.2a9 9 0 01-1 1 4 4 0 00.7 0C7.1-5.5 7.7-6 8-6l.3.3-.2.1h-.2a8 8 0 00-2 2.8c-.4 0-2 0-2.4-.5z"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M3.5-3.6c-.1-.6 0-1.3.4-1.5.6.5 1.8.5 2.5 0"/>
+    <path fill="none" stroke="#000" stroke-width="0" d="M3.5-3.9l2 .1c.2 0 .7.2.6.3M3.7-4H4l-.2-.2-.1.2.1.1z"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M4-7c-.1-.3-.6-.4-.8 0 0 0 0 .3-.2.3-.1.1-.1.3 0 .4 0 .3 0 .5.2.7 0-.2.3-.4.6-.5.2 0 .6-.2.6-.5 0-.2.1-.4-.3-.5z"/>
+    <path fill="#96877d" stroke="#000" stroke-width="0" d="M2.9-4.7v.5l.5-.2L3-4l.4.2L3-4"/>
+    <path fill="#96877d" stroke="#000" stroke-width="0" d="M3.5-3.6a.8.8 0 110-1v.4"/>
+    <path fill="#337321" stroke="#000" stroke-width="0" d="M2.6-2.8l-.2-.4a.4.4 0 01.3.2v-.4c.1 0 .3.1.3.3v-.5l.3.4.2-.5.2.2.2-.3a1 1 0 01.2.5l.2-.3a.5.5 0 010 .4l.3-.3s.2.1.2.3v-.4a.5.5 0 01.3.3l.1-.4.1.4.2-.2v.4a.8.8 0 01.3-.3.7.7 0 010 .3l.2-.4.3.3a1 1 0 00.3-.2v.1a.8.8 0 010 .4.4.4 0 01.3 0s0 .3-.2.5c-.8-.2-2.4-.3-4.1-.4z"/>
+    <path fill="#f7e017" d="M5.4-7.2s0-.2.3-.2l.8.2h.1v.2h-.9l-.3-.2z"/>
+    <g stroke="#000" stroke-width="0">
+      <path fill="#f7e017" d="M2.8-2.3c-.2.3-.5.2-.5 0s.1-.2 0-.4c0-.2.2-.3.3-.2 0 .1.3-.1.4.1l.2.5c-.1.1-.3 0-.4 0zM4-2.8s.2-.3.4-.1c0 .1.3-.2.4 0l.2.5c0 .2-.3.2-.4.1 0 .1-.3.2-.4 0L4-2.8zm1.7.2c0-.1.3-.3.4-.1 0 0 .4-.1.4.1v.5c0 .1-.1.2-.3 0-.2 0-.3 0-.4-.2a1.1 1.1 0 000-.3z"/>
+      <path fill="#337321" d="M3-2.8s.2-.2.4-.1c.1.1.4-.1.5.1.2.5.2.5.1.6h-.7L3-2.9zm1.8 0c-.1-.1.3-.2.5 0 0 0 .2 0 .3.2.1.2.2.4 0 .4 0 0-.2.1-.2 0-.1 0-.4 0-.5-.2a4.4 4.4 0 00-.2-.4zm1.6.3c0-.1.2-.2.3 0 0 .1.3 0 .3.3v.3c-.1.1-.5 0-.6-.2"/>
+      <path fill="none" d="M2.8-2.3c0-.1-.2-.3-.3-.1m1.1.1"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pr.svg
new file mode 100644
index 0000000..79cf4c0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pr.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pr" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M51.6 0h708.7v708.7H51.6z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-37.3) scale(.72249)">
+    <path fill="#ed0000" d="M0 0h1063v708.7H0z"/>
+    <path fill="#fff" d="M0 141.7h1063v141.8H0zm0 283.5h1063v141.7H0z"/>
+    <path fill="#0050f0" d="M0 0l610 353.9L0 707.3V0z"/>
+    <path fill="#fff" d="M268.2 450.5l-65.7-49-65.3 49.5 24.3-80.5-65.3-49.7 80.7-.7 25-80.2 25.6 80 80.7.1-64.9 50.2 24.9 80.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ps.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ps.svg
new file mode 100644
index 0000000..7c1ea3f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ps.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ps" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M237.1 0h493.5v493.5H237.1z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-246) scale(1.0375)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M0 0h987v164.5H0z"/>
+      <path fill="#fff" d="M0 164.5h987V329H0z"/>
+      <path fill="#090" d="M0 329h987v164.5H0z"/>
+      <path fill="red" d="M0 493.5l493.5-246.8L0 0v493.5z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pt.svg
new file mode 100644
index 0000000..4255150
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pt.svg
@@ -0,0 +1,57 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-pt" viewBox="0 0 512 512">
+  <path fill="red" d="M204.8 0H512v512H204.7z"/>
+  <path fill="#060" d="M0 0h204.8v512H-.1z"/>
+  <g fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".6">
+    <path stroke-width=".7" d="M293.8 326.6c-34.4-1-192-99.4-193-115.1l8.6-14.5C125 219.7 286.2 315.4 302 312l-8.2 14.6"/>
+    <path stroke-width=".7" d="M107.6 195c-3.1 8.3 41.1 35.6 94.3 68 53.2 32.3 99 52.3 102.5 49.5l1.5-2.9c-.6 1-2.2 1.3-4.6.6-14.4-4.2-51.9-21.4-98.3-49.5s-86.8-54.1-93-65.1a6.7 6.7 0 01-.7-3.3h-.2l-1.3 2.3-.2.4zm187 132c-.6 1.1-1.7 1.1-3.7 1-12.9-1.5-52-20.5-98-48.1-53.8-32.2-98.2-61.5-93.3-69.1l1.3-2.4.2.1c-4.3 13 87.6 65.5 93 68.9 53.1 33 98 52.2 102 47.2l-1.5 2.4z"/>
+    <path stroke-width=".7" d="M205 221c34.3-.3 76.8-4.7 101.2-14.4L301 198c-14.5 8-57.1 13.3-96.3 14-46.4-.4-79.1-4.7-95.5-15.7l-5 9.1c30.2 12.7 61 15.5 100.8 15.6"/>
+    <path stroke-width=".7" d="M307.7 206.8c-.9 1.3-16.8 6.8-40.3 10.8a416 416 0 01-62.6 4.6 444.3 444.3 0 01-60-3.8c-24.5-3.9-37.3-9.3-42-11.2l1.2-2.3a186 186 0 0041.3 11 438.9 438.9 0 0059.5 3.7 417.8 417.8 0 0062.1-4.6c24-3.9 37.2-8.9 39-11.2l1.8 3zM303 198c-2.6 2-15.6 6.7-38.4 10.3a414 414 0 01-59.5 4.2 400 400 0 01-57.4-3.7c-23.3-3-35.6-8.5-40-10.1l1.3-2.3c3.4 1.8 15.4 6.6 39 10a423 423 0 0057.1 3.5 408.6 408.6 0 0059-4.2c23-3.2 35.4-9 37.3-10.5l1.6 2.8zM92 262.4c21.2 11.4 68.1 17.2 112.6 17.6 40.5 0 93.3-6.3 113-16.8l-.6-11.4c-6.1 9.7-62.6 19-112.8 18.6-50.2-.4-96.8-8.2-112.3-18.2v10.2"/>
+    <path stroke-width=".7" d="M318.7 260.8v2.7c-3 3.6-21.6 9-44.9 12.7a463.2 463.2 0 01-69.7 4.8c-27.4 0-49.2-2-66.2-4.6a164.8 164.8 0 01-47.3-12.7v-3.2c10.4 6.9 38.3 11.9 47.7 13.4 16.8 2.6 38.5 4.5 65.8 4.5 28.7 0 51.7-2 69.3-4.7 16.8-2.4 40.6-8.7 45.3-12.9zm0-9.7v2.8c-3 3.5-21.6 8.9-44.9 12.6a463.2 463.2 0 01-69.7 4.8c-27.4 0-49.2-2-66.1-4.5A165 165 0 0190.6 254v-3.2c10.4 6.9 38.3 12 47.7 13.4 16.9 2.6 38.6 4.6 65.8 4.6 28.7 0 51.7-2 69.3-4.8 16.8-2.4 40.6-8.7 45.3-12.9zm-114.2 73.5c-48.6-.3-90.3-13.2-99.1-15.4l6.4 10c15.5 6.6 56.2 16.4 93.2 15.3s69.3-4 92-15l6.6-10.5c-15.5 7.3-68.3 15.6-99 15.6"/>
+    <path d="M299.5 317.1a152.6 152.6 0 01-3 4.4 258.9 258.9 0 01-34.7 8.9 315 315 0 01-57.2 5.2c-43.1-.6-78.4-9-95-16.2l-1.4-2.3.3-.4 2.2.9a305.5 305.5 0 0094.1 15.5c20 .1 40-2.3 56.1-5.1 24.8-5 34.8-8.7 37.9-10.4l.7-.5zm5.7-9.4h.1a302 302 0 01-2.2 3.8c-5.7 2-21.3 6.6-44 9.8-15 2-24.3 4-54 4.6a371 371 0 01-100.5-15l-1.2-2.5a424.4 424.4 0 00101.7 15c27.2-.6 38.8-2.6 53.6-4.7 26.5-4 39.8-8.4 43.8-9.7a3 3 0 00-.1-.2l2.8-1.1z"/>
+    <path stroke-width=".7" d="M305.8 253.4c.2 32-16.2 60.8-29.4 73.5a106 106 0 01-72.3 30c-32.3.6-62.7-20.5-70.9-29.7-16-18.1-29-41-29.4-72 2-35 15.7-59.3 35.6-76a106.3 106.3 0 0168.4-24.2c25.4.7 55.2 13.2 75.7 38 13.4 16.2 19.3 33.8 22.3 60.5zM204.4 143.8c62 0 113 50.5 113 112.3a113 113 0 01-113 112.3c-62 0-112.6-50.4-112.6-112.3s50.6-112.3 112.6-112.3"/>
+    <path stroke-width=".7" d="M204.7 143.4c62 0 112.6 50.7 112.6 112.7s-50.6 112.7-112.6 112.7A113 113 0 0192 256a113 113 0 01112.7-112.7zM94.5 256.1c0 60.6 49.8 110.2 110.2 110.2 60.4 0 110.1-49.6 110.1-110.2S265.1 146 204.7 146A110.6 110.6 0 0094.5 256.1z"/>
+    <path stroke-width=".7" d="M204.8 152.8c56.5 0 103.1 46.5 103.1 103.2 0 56.8-46.6 103.2-103.1 103.2A103.6 103.6 0 01101.5 256c0-56.7 46.6-103.2 103.2-103.2zM104 256c0 55.4 45.5 100.7 100.8 100.7 55.2 0 100.7-45.3 100.7-100.7 0-55.4-45.5-100.7-100.8-100.7S104 200.6 104 256z"/>
+    <path stroke-width=".7" d="M209.3 143h-9.7v226.4h9.7z"/>
+    <path stroke-width=".7" d="M208.3 141.7h2.5v229h-2.5v-229zm-9.6 0h2.5v229h-2.5v-229z"/>
+    <path stroke-width=".7" d="M317.4 260.5V252l-6.8-6.3-38.7-10.3-55.8-5.7-67 3.4-47.9 11.4-9.6 7.2v8.3l24.4-11 58-9h55.8l41 4.5 28.4 6.9z"/>
+    <path stroke-width=".7" d="M204.7 238.7a394 394 0 0172.9 6.5c21.1 4.2 36 9.5 41 15.4v3c-6-7.4-26-12.8-41.5-16-20.3-3.9-46-6.4-72.4-6.4-28 0-54 2.7-74 6.6-16 3.2-37.4 9.5-40.1 15.8v-3c1.5-4.4 17.4-10.9 39.8-15.4a405 405 0 0174.3-6.5zm0-9.7a396 396 0 0173 6.5c21 4.2 36 9.5 41 15.5v2.9c-6.1-7.4-26.2-12.8-41.6-15.9-20.3-4-46-6.5-72.4-6.5a402 402 0 00-73.8 6.6c-15.5 3-37.8 9.6-40.3 15.8v-3c1.5-4.3 17.8-11 39.8-15.3a405 405 0 0174.3-6.6zm-.5-49.3c41.9-.2 78.5 5.9 95.2 14.5l6.1 10.5c-14.5-7.8-54-16-101.3-14.7-38.5.2-79.6 4.2-100.3 15.2l7.3-12.2c17-8.8 57-13.2 93-13.3"/>
+    <path stroke-width=".7" d="M204.7 188.4c24 0 47 1.3 65.4 4.6 17.1 3.2 33.5 8 35.8 10.6l1.8 3.2c-5.7-3.7-19.8-7.9-38-11.3a367.2 367.2 0 00-65-4.5c-27 0-48 1.3-66 4.5-19 3.5-32.2 8.6-35.5 11l1.8-3.3c6.3-3.3 16.4-7.2 33.3-10.2 18.6-3.4 39.7-4.4 66.4-4.6zm0-9.6a371 371 0 0163.1 4.4c13.9 2.7 27.6 6.9 32.7 10.6l2.6 4.2c-4.5-5-21.4-9.7-36.4-12.3-17.4-3-39.1-4.2-62-4.4-24 0-46.2 1.5-63.4 4.6-16.4 3.2-27 6.9-31.5 9.8l2.3-3.6c6.2-3.2 16.2-6.2 28.8-8.7 17.3-3.1 39.7-4.6 63.8-4.6zm56 124.1a293.3 293.3 0 00-56-4.2c-69.9.8-92.4 14.3-95.2 18.4l-5.2-8.5C122 295.7 160 288.5 205 289.2c23.3.4 43.4 2 60.4 5.2l-4.8 8.5"/>
+    <path d="M204.3 297.5c19.4.3 38.5 1 57 4.5l-1.4 2.4a297.6 297.6 0 00-55.5-4.3c-25.8-.2-52 2.2-74.6 8.7-7.2 2-19 6.6-20.3 10.4l-1.3-2.2c.4-2.2 7.6-6.9 21-10.6 26-7.5 50.3-8.7 75-9zm.9-9.8a351 351 0 0161.1 5.3l-1.4 2.5a319 319 0 00-59.6-5.2c-25.9 0-53.3 1.9-78.3 9.1-8 2.4-22 7.4-22.4 11.4l-1.3-2.3c.3-3.6 12.3-8.4 23.2-11.6a285 285 0 0178.7-9.2z"/>
+    <path stroke-width=".7" d="M304.4 309.9l-8.4 13-24.1-21.4-62.6-42-70.5-38.8-36.7-12.5 7.8-14.5 2.7-1.4 22.8 5.7 75 38.7 43.3 27.3 36.3 26 14.8 17.1z"/>
+    <path stroke-width=".7" d="M100.8 208.5c6.5-4.3 53.7 16.7 103 46.5 49.3 29.9 96.4 63.6 92.2 70l-1.4 2.1-.7.5c.2 0 .9-1 0-3.3-2.2-6.9-35.5-33.5-91-67-54-32.2-99-51.6-103.5-46l1.4-2.8zm205.3 101.2c4-8-39.7-41-94-73.1-55.5-31.5-95.6-50-102.9-44.5l-1.6 3c0 .1 0-.2.4-.5 1.3-1.1 3.5-1 4.5-1 12.6.1 48.6 16.6 99 45.6 22.1 12.8 93.4 58.6 93.1 71.4 0 1.1.1 1.3-.3 1.9l1.8-2.8z"/>
+  </g>
+  <g transform="translate(-68.3 28.4) scale(1.13778)">
+    <path fill="#fff" stroke="#000" stroke-width=".7" d="M180.6 211a58.7 58.7 0 0017.5 41.7 59 59 0 0041.8 17.6 59.4 59.4 0 0042-17.4 59 59 0 0017.4-41.8v-79.2l-118.7-.2V211z"/>
+    <path fill="red" stroke="#000" stroke-width=".5" d="M182.8 211.1a56.4 56.4 0 0016.8 40 57 57 0 0040.2 16.8 56.9 56.9 0 0040.2-16.6 56.4 56.4 0 0016.7-40v-77H183v76.8m91-53.7v48.9l-.1 5.1a33.2 33.2 0 01-10 24 34 34 0 01-24 10c-9.4 0-17.7-4-23.9-10.2a34 34 0 01-10-24v-54l68 .2z"/>
+    <g id="e">
+      <g id="d" fill="#ff0" stroke="#000" stroke-width=".5">
+        <path stroke="none" d="M190.2 154.4c.1-5.5 4-6.8 4-6.8.1 0 4.3 1.4 4.3 6.9h-8.3"/>
+        <path d="M186.8 147.7l-.7 6.3h4.2c0-5.2 4-6 4-6 .1 0 4 1.1 4.1 6h4.2l-.8-6.4h-15zm-1 6.4h17c.3 0 .6.3.6.7 0 .5-.3.8-.6.8h-17c-.3 0-.6-.3-.6-.8 0-.4.3-.7.7-.7z"/>
+        <path d="M192 154c0-3.3 2.3-4.2 2.3-4.2s2.3 1 2.3 4.2H192m-5.8-9h16.3c.3 0 .6.4.6.8 0 .3-.3.6-.6.6h-16.3c-.3 0-.6-.3-.6-.7 0-.3.3-.6.6-.6zm.4 1.5H202c.3 0 .6.3.6.7 0 .4-.3.7-.6.7h-15.5c-.4 0-.6-.3-.6-.7 0-.4.2-.7.6-.7zm5-10.6h1.2v.8h.9v-.8h1.3v.9h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.4c-.3 0-.6-.2-.6-.5v-2zm4.6 2.7l.3 6.4h-4.3l.3-6.5h3.7"/>
+        <path id="a" d="M191 141.6v3.4h-4v-3.4h4z"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#a"/>
+        <path id="b" d="M186.3 139h1.2v1h.9v-1h1.2v1h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.3a.6.6 0 01-.6-.6v-2z"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#b"/>
+        <path fill="#000" stroke="none" d="M193.9 140.6c0-.6.9-.6.9 0v1.6h-.9v-1.6"/>
+        <path id="c" fill="#000" stroke="none" d="M188.6 142.8c0-.6.8-.6.8 0v1.2h-.8v-1.2"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#c"/>
+      </g>
+      <use width="100%" height="100%" y="46.3" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-45.2 312.8 180)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" x="45.7" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 479.8 0)" xlink:href="#e"/>
+    <g id="f" fill="#fff">
+      <path fill="#039" d="M232.6 202.4a8.3 8.3 0 002.2 5.7 7.2 7.2 0 005.3 2.4c2.1 0 4-1 5.3-2.4a8.3 8.3 0 002.2-5.7v-10.8h-15v10.8"/>
+      <circle cx="236.1" cy="195.7" r="1.5"/>
+      <circle cx="244.4" cy="195.7" r="1.5"/>
+      <circle cx="240.2" cy="199.7" r="1.5"/>
+      <circle cx="236.1" cy="203.9" r="1.5"/>
+      <circle cx="244.4" cy="203.9" r="1.5"/>
+    </g>
+    <use width="100%" height="100%" y="-26" xlink:href="#f"/>
+    <use width="100%" height="100%" x="-20.8" xlink:href="#f"/>
+    <use width="100%" height="100%" x="20.8" xlink:href="#f"/>
+    <use width="100%" height="100%" y="25.8" xlink:href="#f"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pw.svg
new file mode 100644
index 0000000..83bc3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/pw.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M61.7 4.2h170.8V175H61.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-185 -12.5) scale(2.9973)">
+    <path fill="#4aadd6" d="M0 4.2h301.2V175H0z"/>
+    <path fill="#ffde00" d="M185.9 86.8a52 52 0 01-53 50.8 52 52 0 01-53.2-50.8c0-28 23.8-50.8 53.1-50.8s53 22.7 53 50.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/py.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/py.svg
new file mode 100644
index 0000000..88f55e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/py.svg
@@ -0,0 +1,156 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-py" viewBox="0 0 512 512">
+  <path fill="#0038a8" d="M0 341h512v171H0z"/>
+  <path fill="#fff" d="M0 170.7h512v170.6H0z"/>
+  <path fill="#d52b1e" d="M0 0h512v170.7H0z"/>
+  <g fill="none" stroke="#000" transform="translate(-209) scale(1.55152)">
+    <circle cx="300" cy="165" r="42.2" stroke-width="1.1"/>
+    <circle cx="300" cy="165" r="34.7" stroke-width=".5"/>
+    <circle cx="300" cy="165" r="26.6" stroke-width=".4"/>
+  </g>
+  <path d="M221.6 281.3l-7.6 4.5-2.3-4a6.6 6.6 0 01-.8-1.7 2 2 0 01.2-1.3c.2-.5.5-.8 1-1.1a2.4 2.4 0 012.4-.1l.8.6a2.7 2.7 0 010-.7l.1-.6.3-.7 1.5-2.4 1.6 2.6-1.6 2.7a2 2 0 00-.3.8 1.1 1.1 0 00.1.6l.2.2 3-1.8zm-5.9.3l-.6-1a5 5 0 00-.4-.6.7.7 0 00-.5-.2.8.8 0 00-.5.1c-.3.2-.4.3-.5.6l.4 1 .6 1zm-7.1-5.9l-2.3-7 1.8-.5 1.4 4.3 1.3-.4-1.3-4 1.7-.6 1.3 4 1.7-.5-1.5-4.5 2-.6 2.3 7zm-3-10.3l-.6-4.5c0-1 0-1.8.5-2.3.4-.5 1-.9 1.9-1 .9 0 1.6.1 2.2.6.5.5.9 1.3 1 2.4l.2 1.4 3.2-.3.3 2.7zm3.4-3.1l-.1-.7c0-.5-.2-.9-.4-1a.9.9 0 00-.7-.3 1 1 0 00-.7.3c-.2.2-.2.6-.2 1.1l.1.8zm-3.7-13.5l.3-2.7 5.2.6c.5 0 1 .2 1.4.4.5.2.9.5 1.2.9l.6 1.2a4 4 0 010 1.9c0 .4 0 .9-.2 1.4 0 .5-.2.9-.5 1.2l-.8.8a2.8 2.8 0 01-1.1.5c-.6.1-1 .2-1.5.1l-5.2-.6.3-2.7 5.3.6c.5 0 .9 0 1.2-.3.3-.2.4-.6.5-1a1.5 1.5 0 00-.3-1.2c-.2-.3-.6-.4-1-.5zm1.1-6.4l1.7-4.9c.3-.8.7-1.3 1.3-1.6a2 2 0 011.7-.1 2 2 0 011.3 2c.4-.6.8-1 1.2-1a2 2 0 011.5 0 2.4 2.4 0 011.6 1.8v1l-.4 1.2-1.5 4.5zm4.2-1.5l.4-1.1c.2-.4.2-.7.1-1 0-.1-.2-.3-.5-.4a.8.8 0 00-.7 0l-.5.8-.4 1.2zm3.3 1.2l.5-1.4v-1a.8.8 0 00-.5-.5.8.8 0 00-.7 0c-.2.2-.4.5-.5 1l-.5 1.3zm-3.3-10.3l1.4-2.4 5.7 3.4 2.2-3.6 1.9 1.1-3.6 6zm5.4-8.1l1.7-2.1 6.8 5.6-1.8 2.1zm11.8-4.6l2.3-1c.3.6.5 1.2.5 1.8a3.3 3.3 0 01-.3 1.6 5 5 0 01-1.2 1.5 5.7 5.7 0 01-2 1.2c-.7.2-1.4.2-2.2 0a5 5 0 01-2.3-1.7c-1-1-1.4-2.2-1.3-3.3 0-1.1.6-2.1 1.7-3a4.5 4.5 0 012.4-1.2 4 4 0 012.5.6l-1.5 2a2 2 0 00-.6-.3 1.6 1.6 0 00-.7 0 1.6 1.6 0 00-.7.4c-.5.4-.7.9-.6 1.5 0 .4.3 1 .9 1.5.6.8 1.2 1.2 1.6 1.3.5 0 .9 0 1.3-.4s.6-.7.6-1.1c0-.4-.1-.9-.4-1.4zm9.4-3.4l-2.7 1.5.3 1.5-2.5 1.3-1.2-9.4 2.6-1.4 7.1 6.3-2.5 1.3zm-1.4-1.4l-2.3-2.3.6 3.2zm8.4-9l4-.7a4.8 4.8 0 012 0c.5.1.9.3 1.3.7.4.3.7.7 1 1.2l.4 1.7c.2 1 .2 1.7 0 2.2a3.6 3.6 0 01-.6 1.5 2.9 2.9 0 01-1 .9l-1.6.5-4 .7zm3 1.5l.8 4.7h.7c.5-.2 1-.3 1.1-.5.3-.1.4-.4.5-.7v-1.6c-.2-.9-.5-1.5-.8-1.8-.4-.3-1-.4-1.6-.2zm8.3-3l7.3.2v2l-4.6-.2-.1 1.4 4.2.1v1.8l-4.3-.1v1.7l4.7.2-.1 2-7.5-.3zm10.6.8l2.7.6-1.6 6.5 4.1 1-.5 2.1-6.8-1.6zm14.2 4.7l3.9 2.3c.9.5 1.4 1 1.6 1.7.1.7 0 1.4-.4 2.1a2.7 2.7 0 01-1.8 1.4c-.7.2-1.5 0-2.5-.6l-1.3-.7-1.6 2.8-2.4-1.4zm.5 4.6l.5.4 1.1.3a.9.9 0 00.6-.4 1 1 0 00.2-.8c-.1-.3-.3-.5-.8-.8l-.6-.4zm7.6 10.3l-2.3-2.1-1.3.8-2-2 8.4-4.1 2.2 2-3.6 8.7-2-2zm.9-1.8l1.4-3-2.8 1.7zm1 5.9l7.3-5 2.6 3.7 1 1.8-.1 1.3c-.2.4-.5.8-1 1.1a2 2 0 01-1.2.5 2.5 2.5 0 01-1.2-.2 3.3 3.3 0 01-.8-.6v1.4l-.3.6-1.4 2.5-1.7-2.5 1.4-2.7.3-.8c0-.2 0-.5-.2-.7l-.2-.2-3 2zm6-.7l.6 1 .5.4a.7.7 0 00.5.3c.1 0 .3 0 .5-.2a.8.8 0 00.4-.6l-.4-1-.7-1zm2.7 13.2l-1.2-2.9-1.5.1-1-2.5 9.4-.2 1 2.7-6.9 6.4-1-2.7zm1.5-1.2l2.6-2.1-3.3.2zm2.3 9.6l1.8-.3.7 4.2-3.8.6a8.6 8.6 0 01-1.4-2 7.4 7.4 0 01-.5-4.8c.3-.7.7-1.2 1.4-1.7a5.3 5.3 0 012.3-.9 5 5 0 012.6.2 3.9 3.9 0 011.9 1.5c.3.6.6 1.3.7 2.3a7 7 0 010 2.2 2.8 2.8 0 01-.5 1.3l-1.3 1-.9-2.6c.3-.1.5-.3.7-.6.1-.3.2-.7.1-1a1.8 1.8 0 00-.8-1.4c-.5-.3-1.2-.3-2-.2-1 .1-1.7.4-2 .8a1.9 1.9 0 00-.4 1.6l.3.9.6.8h.8zm5.8 12.8l-.3 2.7-5.2-.4a4.4 4.4 0 01-1.4-.4 3.2 3.2 0 01-1.2-.9 3 3 0 01-.6-1.1 5.5 5.5 0 01-.1-2c0-.4 0-.9.2-1.4l.4-1.2a3.2 3.2 0 01.9-.9 2.8 2.8 0 011-.5 5.3 5.3 0 011.6 0l5.2.4-.2 2.7-5.4-.5c-.5 0-.9 0-1.2.3-.3.3-.4.6-.5 1.1 0 .5 0 .8.3 1.1.3.3.6.5 1.1.5zm-9.8 9.4l1-3-1.2-.9.8-2.6 7.4 5.9-1 2.8-9.4.4 1-2.7zm2 0h3.3l-2.7-1.8zm3.2 7.2l-1.6 2.6H299l1.6 3-1.6 2.6-2.6-5.6-3.2-1.8 1.4-2.4 3.2 1.9z"/>
+  <g fill="#009b3a" stroke="#000" stroke-width=".1">
+    <path d="M265.2 225.4s24.9 10.8 20.5 33c-4.3 22.1-18.2 22-23.6 24.4-5.5 2.5-9.2 6-11.4 5.5-2.1-.5-5-2.2-5-2.2s-.2 3.7 4.2 4.3c4.4.7 10-5.7 12.9-6.4s19.6-2.6 23.8-25.1c4.8-24.1-21.3-32.8-21.4-33.5z"/>
+    <path d="M277.7 230.2a3.4.8 75.1 01-1.6 0 3.4.8 75.1 111.6 0zm-.8.2a3.5.8 63.3 11-1.5.5 3.5.8 63.3 011.5-.5zm-2.5 1.6a3.3.8 17 01-.2 1.7 3.3.8 17 01.2-1.7z"/>
+    <path d="M274.8 231.1a3.5.8 34.2 11-.8 1.4 3.5.8 34.2 11.7-1.4z"/>
+    <path d="M275.8 230.7a3.6.8 46.2 11-1 1 3.6.8 46.2 011-1z"/>
+    <path d="M277.5 233.8l-1.1.6c-.3.1-.6-.3-1.2 0-.6.4-1 1-1.2 1.3-.1.4.2.5 1 .2.7-.4 1-1 1.3-1.2.3-.3 1-.6 1.3-.7l1-1.5c.2-.4 1.2-1 1.6-1.9.3-.6.2-1.2-.3-1a4 4 0 00-1.2 1.4c-.3.5 0 1-.3 1.5l-.9 1.3zm7.8 2.6a1.1 5.1-1.6 11-2.4-.6 1.1 5.1-1.6 112.4.6z"/>
+    <path d="M284 236.3a5.3 1.1 77.5 11-2.3.1 5.3 1.1 77.5 112.3 0z"/>
+    <path d="M280 237.6a5 1.2 35 11-.8 2.3 5 1.2 35 11.8-2.4z"/>
+    <path d="M280.8 236.4a5.3 1.1 50.9 01-1.5 1.7 5.3 1.1 50.9 111.5-1.7z"/>
+    <path d="M282.4 236.3a5.4 1 61.8 11-1.9 1 5.4 1 61.8 111.9-1z"/>
+    <path d="M283.8 241.5l-1.9.4c-.3 0-.6-.7-1.6-.5-1 .2-1.8.9-2 1.3-.4.4 0 .8 1.2.6 1.2-.2 1.6-1 2.2-1.1l2.1-.4 1.8-1.7c.5-.5 2-1 2.8-2 .7-.8.7-1.6 0-1.5a5 5 0 00-2.1 1.4c-.5.6-.4 1.5-1 2l-1.5 1.5zm5.5 5.2a1.1 5.2 8.7 11-2.2-1 1.1 5.2 8.7 112.2 1z"/>
+    <path d="M288 246.4a1.1 5.4-2 11-2.1-.3 1.1 5.4-2 112.2.3z"/>
+    <path d="M284 246.8a5 1.2 46 11-1.2 2.2 5 1.2 46 111.1-2.2z"/>
+    <path d="M285 245.9a5.4 1.1 61.8 11-1.8 1.4 5.4 1.1 61.8 111.7-1.4z"/>
+    <path d="M286.5 246a5.5 1 72.5 11-2 .8 5.5 1 72.5 112-.8z"/>
+    <path d="M287 251.5h-2c-.3 0-.4-.8-1.4-.8-1 0-2 .5-2.3.9-.4.3 0 .8 1.1.8 1.2 0 1.8-.6 2.4-.7h2.1l2-1.3c.6-.4 2.3-.6 3.2-1.4.8-.6 1-1.5.3-1.4a5 5 0 00-2.4 1c-.6.4-.6 1.3-1.3 1.7l-1.8 1.2m2.7 6.7a1.1 5.2 31.3 01-1.6-1.8 1.1 5.2 31.3 011.6 1.8"/>
+    <path d="M288.6 257.4a1 5.4 20.6 01-1.9-1.2 1 5.4 20.6 011.9 1.2m-3.9-1.3a5 1.2 70 01-2 1.6 5 1.2 70 012-1.6"/>
+    <path d="M286 255.7a1 5.5-4.9 01-2.2.6 1 5.5-4.9 112.2-.6"/>
+    <path d="M287.4 256.5a1 5.5 5.5 11-2.2-.2 1 5.5 5.5 112.2.2"/>
+    <path d="M285.6 261.7l-1.7-.8c-.3-.2-.1-.9-1-1.3-1-.4-2-.4-2.4-.2-.5.2-.4.7.7 1.3 1 .5 1.8.1 2.4.4l2 .8 2.2-.4c.7 0 2.3.4 3.4 0 1-.2 1.5-1 .9-1.2a4.8 4.8 0 00-2.6-.1c-.7.2-1.1 1-1.8 1.2-.5 0-2 .4-2.1.3m1 8.2a1.3 5.9 48.5 11-1.2-2.6 1.3 5.9 48.5 111.1 2.6"/>
+    <path d="M285.6 268.7a1.3 6.2 37.5 11-1.6-2 1.3 6.2 37.5 111.6 2"/>
+    <path d="M281.8 265.8a1.3 6-3.5 11-2.6 1 1.3 6-3.5 112.6-1"/>
+    <path d="M283.3 265.8a1.3 6.3 11.6 01-2.5-.2 1.3 6.3 11.6 112.5.2"/>
+    <path d="M284.6 267.1a1.2 6.4 22.1 11-2.3-.9 1.2 6.4 22.1 112.3 1"/>
+    <path d="M281 272.3l-1.7-1.5c-.2-.3.2-1-.7-1.8a3.9 3.9 0 00-2.6-1c-.6 0-.6.6.4 1.6s2 .8 2.5 1.3a10 10 0 011.9 1.6l2.7.4c.7.1 2.3 1.3 3.7 1.3 1.2 0 2-.6 1.3-1.1a5.6 5.6 0 00-2.7-1c-.9 0-1.6.7-2.5.6l-2.4-.4m-2.4 7.8a1.5 6.5 79.8 11.3-3 1.5 6.5 79.8 11-.3 3"/>
+    <path d="M278.4 278.4a1.4 6.8 68.5 01-.5-2.8 1.4 6.8 68.5 01.5 2.8"/>
+    <path d="M276.1 273.5a1.5 6.5 26.2 01-3-.6 1.5 6.5 26.2 113 .6"/>
+    <path d="M277.7 274.4a1.4 6.9 41.8 01-2.4-1.6 1.4 6.9 41.8 012.4 1.6"/>
+    <path d="M278.1 276.4a1.4 7 52.7 11-1.7-2.2 1.4 7 52.7 011.8 2.2"/>
+    <path d="M271.8 279.2l-.7-2.3c-.1-.5.7-1 .3-2.2a4.5 4.5 0 00-2-2.5c-.5-.3-1 .3-.5 1.8.4 1.5 1.5 2 1.8 2.7l.8 2.6c.6.3 1.7 1.4 2.4 2 .7.5 1.6 2.5 3 3.3 1 .7 2 .6 1.8-.3a6.5 6.5 0 00-2.1-2.5c-.8-.6-2-.3-2.7-.9-.5-.4-2.1-1.6-2-1.7"/>
+    <path d="M268 285.9a1.9 6.5 89 010-3.8 1.9 6.5 89 010 3.8"/>
+    <path d="M267.1 280a1.8 6.8 37.6 01-2.8-2.4 1.8 6.8 37.6 112.8 2.4"/>
+    <path d="M268 283a1.9 6.6 66.5 01-1.3-3.5 1.9 6.6 66.5 011.3 3.5m1.8-57a4 .8 41.1 01-1.5.8 4 .8 41.1 111.5-.8m-2 1.7a4.1.8 8.2 01.3 1.7 4.1.8 8.2 11-.3-1.7"/>
+    <path d="M268.6 226.6a4.3.8 26.8 11-.8 1.4 4.3.8 26.8 01.8-1.4m-29.5 52.9s5.5 1.2 10.3 2.9c4.7 1.7 12 7.7 14 8 2.1.1 5.1-.6 6.3-3.8-3.4 1-5.4 2.3-8.6.5-1.1-.4-4.8-3.8-9-5.6a103 103 0 00-12.2-3.9l-.8 1.9m5.9-49.6l6.3-3.4-7 1.8-.8 1.2 1.5.4"/>
+    <path d="M251 231.4c-2.5-.4-6.3-1.3-8.7-1.5 1.7-1.8 4-4.9 5.4-6.8-1 1.8-2.4 4.2-3 6 1.7.9 4.4 1.6 6.3 2.3"/>
+    <path d="M243.8 230.3l5.6-4.4-6.5 3-.6 1.3h1.5"/>
+    <path d="M249.8 231.3c-2.5-.4-6.2-1.3-8.6-1.5 1.6-1.9 3.8-5 5.2-7-1 1.8-2.3 4.3-2.9 6.1 1.7 1 4.4 1.7 6.3 2.4"/>
+    <path d="M242.9 230.6l6.6-2.7-7.1 1.1-1 1.2 1.5.4"/>
+    <path d="M249 231.4c-2.4-.2-6.3-.7-8.7-.6 1.4-2.1 3.2-5.6 4.4-7.7-.7 2-1.8 4.6-2.1 6.5 1.8.8 4.5 1.3 6.5 1.8"/>
+    <path d="M242.2 230.7l4.5-5.5-5.7 4.2-.2 1.5 1.4-.3"/>
+    <path d="M249 231.8c-2.6 0-6.8-.3-9.3 0 1.3-2.5 2.8-6.4 3.8-8.8-.5 2.2-1.4 5.2-1.6 7.3 2 .7 5 1 7.1 1.5"/>
+    <path d="M241.3 232a321.4 321.4 0 015.4-5.3l-6.5 3.7-.5 1.5h1.6"/>
+    <path d="M247.8 232c-2.8 0-7.2-.2-10 .1 1.8-2.7 4.4-7 6-9.7-1 2.4-2.7 5.8-3.3 8 2 .8 5.1 1 7.3 1.5"/>
+    <path d="M239.5 232.3l7-5.9-8 4.2-.7 1.7h1.7"/>
+    <path d="M246.8 232.1c-2.8.4-7.2.9-10 1.6a129 129 0 004.5-10.3c-.6 2.5-1.7 6-2 8.3 2.1.4 5.2.3 7.5.4"/>
+    <path d="M238.6 233.5a498.6 498.6 0 015.3-7.4l-6.7 6-.3 1.9 1.6-.5"/>
+    <path d="M245.2 233c-2.8.3-7.2.5-10 1 1.6-2.7 3.8-7.2 5-10-.7 2.5-2 5.9-2.4 8.2 2 .5 5.2.5 7.4.8"/>
+    <path d="M237.6 234.3l6.8-6-7.7 4.2-.8 1.8h1.7"/>
+    <path d="M244.4 233.3c-2.9.6-7.3 1.3-10 2.2 1.3-2.9 3-7.6 4-10.5-.5 2.6-1.4 6-1.6 8.4 2.1.3 5.3-.1 7.6-.1"/>
+    <path d="M236.5 234.6l4.3-8.1-5.9 7v1.8l1.6-.7"/>
+    <path d="M244.4 233.8c-3 .7-7.8 1.8-10.7 2.9 1.1-3.3 2.4-8.6 3.2-11.9-.3 2.9-1 6.8-.8 9.4 2.3.2 5.8-.3 8.3-.4"/>
+    <path d="M235.6 236.4l5.5-8-7 6.5-.3 2 1.8-.5"/>
+    <path d="M243.2 234.7c-3 1-7.7 2.2-10.5 3.4 1-3.3 2-8.6 2.6-11.9-.2 2.9-.6 6.8-.4 9.3 2.4.1 5.8-.6 8.3-.8"/>
+    <path d="M234.5 237.6l4.2-9-6 7.8v2l1.8-.8"/>
+    <path d="M242 235.9c-3 .7-7.8 1.6-10.8 2.6 1.3-3.2 2.8-8.5 3.7-11.7-.4 2.9-1.2 6.7-1.2 9.3 2.4.3 5.8-.2 8.3-.2"/>
+    <path d="M233.5 238.5l6.8-7-8 5.2-.7 2 2-.2"/>
+    <path d="M240.7 237.1c-3 .4-7.8.8-10.7 1.6 1.4-3.2 3.2-8.3 4.3-11.5-.6 2.8-1.6 6.7-1.8 9.3 2.3.5 5.7.4 8.2.6"/>
+    <path d="M232.2 237.8l4.6-8.8-6.3 7.4v2l1.7-.6"/>
+    <path d="M241 236c-3.3 1.4-8.4 3.3-11.5 5 1-4 2-10.2 2.7-14-.1 3.3-.6 7.9-.3 10.8 2.7 0 6.4-1.2 9.2-1.7"/>
+    <path d="M231.5 240.4l5.6-10-7.3 8.5-.2 2.4 2-.9"/>
+    <path d="M239.8 237.3c-3.3 1.5-8.4 3.7-11.4 5.5.8-4 1.6-10.1 2.1-14 0 3.3-.2 7.9.2 10.7 2.7-.2 6.3-1.5 9-2.2"/>
+    <path d="M230.4 242l4-10.8-6 9.6.1 2.3 1.9-1.1"/>
+    <path d="M238.3 238.2c-3.2 1.6-8.3 3.8-11.3 5.6.8-4 1.6-10.1 2-14 .1 3.3-.1 7.8.3 10.7 2.6-.3 6.3-1.6 9-2.3"/>
+    <path d="M229.5 243.3l6.2-9.6-7.9 7.8-.3 2.4 2-.6"/>
+    <path d="M238 237.7c-2.8 2.3-7.4 5.7-10 8.3 0-4-.6-10.2-.9-14 .8 3.2 1.5 7.6 2.5 10.2 2.5-.9 5.9-3.1 8.5-4.5"/>
+    <path d="M229.8 243.7l.7-11.4-3 11 .8 2.2 1.5-1.8"/>
+    <path d="M237.2 238.8c-2.9 2.3-7.5 5.6-10 8.1 0-4-.6-10-.9-13.9.7 3.2 1.4 7.6 2.4 10.2 2.6-.9 6-3.1 8.5-4.4"/>
+    <path d="M229 245.6a633.9 633.9 0 013-11.1l-5 10.2.3 2.3 1.8-1.4"/>
+    <path d="M236.9 239c-2.7 2.7-7.1 6.7-9.5 9.6-.5-4-1.7-10.3-2.4-14.1 1 3.1 2.3 7.5 3.6 10.1 2.6-1.2 5.8-3.9 8.3-5.6"/>
+    <path d="M229 247l.6-11.8-2.9 11.5.9 2.2 1.5-1.8"/>
+    <path d="M236 241c-2.9 2.4-7.5 6-10.2 8.7 0-4.2-.8-10.5-1.2-14.5.9 3.3 1.7 7.8 2.8 10.5 2.6-1 6-3.3 8.6-4.7"/>
+    <path d="M228.2 248.4l4.1-11.2-6.2 10 .2 2.4 1.9-1.2"/>
+    <path d="M236 241c-2.6 2.8-6.7 6.9-9 9.8-.4-4.1-1.6-10.4-2.3-14.3 1 3.1 2.2 7.6 3.5 10.2 2.4-1.2 5.4-4 7.8-5.7"/>
+    <path d="M228.4 249l-.5-11.8-2 11.7 1.2 2 1.3-2"/>
+    <path d="M234.7 242c-2.5 2.7-6.5 6.8-8.7 9.8-.5-4.2-1.9-10.5-2.7-14.4 1.1 3.2 2.4 7.7 3.8 10.3 2.3-1.3 5.3-4 7.6-5.8"/>
+    <path d="M227.7 250.2l1.3-12-3.5 11.3.7 2.3 1.5-1.6"/>
+    <path d="M234.2 242.4c-2.3 3-6 7.5-8 10.6-.8-4-2.6-10.2-3.7-14 1.3 3 3 7.4 4.5 9.9 2.2-1.5 5-4.6 7.2-6.5"/>
+    <path d="M227.6 251.3l-.7-12-1.5 11.9 1 2 1.2-2"/>
+    <path d="M234 243c-2.2 3.2-5.7 8-7.5 11.2-1-4-3.2-10.1-4.5-13.9 1.5 3 3.4 7.3 5 9.7 2.2-1.6 4.8-4.8 7-7"/>
+    <path d="M228.4 252.4l1.2-12-3.4 11.3.7 2.4 1.5-1.7"/>
+    <path d="M233.5 244.2c-1.9 3.4-4.9 8.6-6.4 12.1-1.4-3.9-4-9.6-5.7-13.2 1.8 2.8 4 6.8 5.9 9 2-2 4.3-5.5 6.2-8"/>
+    <path d="M228 253.4l-3.4-11.4 1.1 12 1.6 1.7.7-2.3"/>
+    <path d="M233.4 245.5c-2 3.4-5 8.6-6.6 12.1-1.5-3.9-4.1-9.6-5.8-13.2 1.8 2.8 4 6.8 6 9 2-2 4.5-5.5 6.4-7.9"/>
+    <path d="M228.1 255.6l-1.2-12-1.1 12 1.2 2 1.1-2"/>
+    <path d="M233.6 246.6c-2 3.4-5.2 8.4-6.8 11.9-1.4-3.9-4-9.7-5.6-13.3 1.8 2.8 4 6.8 5.8 9 2.2-1.8 4.6-5.3 6.6-7.6"/>
+    <path d="M228 256.5l-2.2-11.8-.1 12.1 1.3 1.9 1-2.2"/>
+    <path d="M232.8 248.3c-2.2 3.2-5.6 8-7.4 11.4-1.2-4-3.5-10-5-13.6 1.7 2.9 3.7 7 5.4 9.4 2.2-1.8 4.9-5 7-7.2"/>
+    <path d="M227 257.8l1-12-3.3 11.4.8 2.3 1.5-1.7"/>
+    <path d="M232.9 248.6c-1.8 3.5-4.8 8.8-6.3 12.3-1.5-3.8-4.4-9.4-6.2-12.9 2 2.7 4.3 6.6 6.3 8.6 2-2 4.3-5.6 6.2-8"/>
+    <path d="M226.6 258.8l-3.7-11.2 1.4 12 1.6 1.6.7-2.4"/>
+    <path d="M232.4 249.5c-1.3 3.8-3.4 9.7-4.4 13.5-2-3.4-5.7-8.3-8-11.3 2.3 2.2 5.2 5.5 7.5 7 1.7-2.3 3.4-6.4 4.9-9.2"/>
+    <path d="M229.9 259.8l-4-11.1 1.7 11.9 1.6 1.5.7-2.4"/>
+    <path d="M232.4 250.7c-1.3 3.8-3.4 9.7-4.3 13.5-2-3.4-5.8-8.2-8-11.2 2.2 2.2 5.1 5.4 7.4 7 1.7-2.4 3.4-6.5 4.9-9.3"/>
+    <path d="M229.9 261.6l-5.2-10.3 3 11.5 1.8 1.3.4-2.5"/>
+    <path d="M232 251.6c-.8 4-2.2 10.1-2.7 14-2.5-3-6.7-7.3-9.3-10 2.5 2 5.8 4.7 8.2 6 1.4-2.7 2.6-7 3.8-10"/>
+    <path d="M230.2 263.3l-2.7-11.7.4 12.1 1.5 1.8.8-2.2"/>
+    <path d="M232 252.9c-.4 4-1.3 10.3-1.3 14.3-2.8-2.7-7.4-6.4-10.2-8.7 2.7 1.5 6.2 3.9 8.7 4.8 1.1-2.8 2-7.3 2.8-10.4"/>
+    <path d="M230.4 264.1l-7.4-8.4 5.6 10.2 2 .7-.2-2.5"/>
+    <path d="M232.2 254.3c-.5 4-1.4 10.3-1.4 14.3-2.8-2.7-7.4-6.4-10.2-8.7 2.7 1.5 6.2 3.9 8.7 4.8 1.2-2.8 2-7.2 2.9-10.4"/>
+    <path d="M231.2 266a602.2 602.2 0 01-5.7-10l3.6 11.3 1.9 1.2.2-2.4"/>
+    <path d="M232.5 256c-.3 4-.9 10.4-.8 14.4-2.9-2.6-7.6-6-10.5-8.1 2.7 1.3 6.3 3.5 8.9 4.2 1-2.9 1.6-7.3 2.4-10.5"/>
+    <path d="M232 268c-.2 0-7-9-7-9l5 10.6 2 .8V268"/>
+    <path d="M232.6 257.9c-.3 4-.8 10.4-.7 14.4a128 128 0 00-10.6-8c2.7 1.3 6.4 3.4 9 4.1 1-2.9 1.5-7.3 2.3-10.5"/>
+    <path d="M232.6 269.4l-5-10.6 2.8 11.6 1.7 1.5.5-2.5"/>
+    <path d="M232.8 259c0 4.2.1 10.6.6 14.5-3-2-8.1-4.9-11.2-6.6 2.8 1 6.6 2.7 9.2 3 .7-3 1-7.5 1.3-10.8"/>
+    <path d="M233.4 269l-9-6.1 7.6 8.3 2.1.2-.7-2.4"/>
+    <path d="M233 259.5c.4 4.1.7 10.5 1.4 14.4a128 128 0 00-11.5-6.1c2.8.8 6.7 2.3 9.3 2.6.6-3 .6-7.6.8-10.9"/>
+    <path d="M234.4 271.3l-7.5-8.6 5.7 10.3 2 .8-.2-2.5"/>
+    <path d="M233.7 261c.5 4.2 1.1 10.5 2 14.4-3.3-1.8-8.5-4-11.8-5.5 3 .7 6.8 2 9.5 2.1.4-3 .2-7.6.3-11"/>
+    <path d="M235.8 272.7l-8.8-6.2 7.5 8.5h2l-.7-2.3"/>
+    <path d="M234 262.8c.8 4 1.8 10.3 2.9 14.2-3.4-1.6-8.7-3.3-12-4.4 2.9.4 6.9 1.3 9.5 1.2.2-3.1-.3-7.6-.4-11"/>
+    <path d="M236.8 274l-7.3-8.7 5.5 10.4 2 .8-.2-2.5"/>
+    <path d="M234.4 264c1.2 3.9 2.8 10 4.3 13.7-3.5-1-9-2.1-12.3-2.8 2.9 0 6.9.4 9.5 0 0-3.2-1-7.6-1.5-11"/>
+    <path d="M237.2 274l-10.2-2.2 9.7 4.8 2-.7-1.5-1.9"/>
+    <path d="M235.1 265.2c1.2 3.9 2.8 10 4.2 13.7-3.5-1-9-2.1-12.3-2.8 2.9 0 7 .4 9.5 0 0-3.2-1-7.6-1.4-11"/>
+    <path d="M238.9 275c0 .2-9.8-4.7-9.8-4.7l8.8 7.2 2-.2-1-2.2"/>
+    <path d="M234.6 265.9c2 3.5 4.8 9.2 7 12.5-3.6-.3-9.2-.1-12.6 0 2.8-.7 6.8-1.2 9.2-2.2-.6-3-2.5-7.2-3.6-10.3"/>
+    <path d="M240.4 276.1l-10.2-2.8 9.6 5.4 2-.6-1.4-2"/>
+    <path d="M235.7 267.4c2 3.5 4.8 9.2 7 12.4-3.6-.2-9.2 0-12.6.2 2.9-.7 6.9-1.3 9.3-2.3-.8-3-2.6-7.2-3.8-10.3"/>
+    <path d="M241.7 277l-9.5-5.7 8.3 8h2.2l-1-2.3"/>
+    <path d="M236.4 268.3c2.3 3.3 5.7 8.6 8.2 11.6-3.6.2-9 1.2-12.4 1.8 2.8-1 6.6-2.2 8.9-3.6-1-3-3.3-6.8-4.7-9.8"/>
+    <path d="M242.4 277.8l-10.2-.2 10.1 3 1.8-1.1-1.7-1.7m6-49.6l7.3-1.3-7.3.2-1.3.7 1.3.4"/>
+    <path d="M252.4 229.7c-2.1-.6-5.4-1.7-7.6-2.2a97 97 0 008-3.6c-1.7 1-4 2.4-5.3 3.4 1.2.8 3.4 1.7 5 2.4"/>
+    <path d="M248 228.4l7.2-2-7.4 1-1.1.8 1.3.2"/>
+    <path d="M252.8 230.3c-2.5-.3-6.4-.8-8.8-.8 1.8-1.6 4.4-4.4 6-6-1 1.5-2.8 3.6-3.5 5.1 1.7.7 4.4 1.1 6.3 1.7"/>
+    <path d="M245.4 229l7.4-1-7.2-.1-1.4.6 1.2.4"/>
+    <path d="M250.9 230.5c-2.3-.4-5.7-1.2-8-1.4 2.1-1 5.3-3 7.3-4-1.5 1-3.6 2.5-4.7 3.5 1.4.7 3.7 1.3 5.4 2"/>
+    <path d="M244.8 228.8l6.5-2.8-7.2 2-.8.8h1.5"/>
+    <path d="M250.7 231.4c-2-.8-4.8-2.1-6.7-2.7 1.5-1.3 3.5-3.7 4.8-5.1-1 1.4-2.3 3.3-2.8 4.7 1.2 1 3.2 2.1 4.7 3"/>
+    <path d="M245.1 229.3l5.1-2.2-5.5.8-.7 1 1.1.4M241 277h-10.6l10.7 2.7 1.8-1.2-2-1.5"/>
+    <path d="M242.8 277.6L232 275l10.3 5 2-.6-1.6-2"/>
+    <path d="M244.5 278.3l-10.6-.6 10.6 3.3 1.8-1-1.8-1.7"/>
+    <path d="M237.8 270.8c2.7 3 6.9 7.9 9.8 10.6-3.6.5-9 2-12.2 2.8 2.6-1.2 6.3-2.7 8.4-4.2-1.4-2.8-4.2-6.4-6-9.2"/>
+    <path d="M246 278.8l-10.6-3.5 10 6 2-.5-1.4-2"/>
+    <path d="M238.8 271.5c3 2.7 7.5 7.1 10.6 9.5-3.4 1-8.5 3.1-11.6 4.4 2.4-1.6 6-3.5 7.8-5.3-1.6-2.7-4.8-6-6.8-8.6"/>
+    <path d="M246.8 279.5l-10 2 10.6.7 1.5-1.5-2-1.2"/>
+    <path d="M244.8 278.8l-10.5.8 10.8 1.9 1.7-1.3-2-1.4"/>
+    <path d="M246.7 279.4l-10.9-1.7 10.7 4.3 2-.8-1.8-1.8z"/>
+    <path d="M248.5 280l-10.6.2 10.8 2.4 1.7-1.1-2-1.5z"/>
+    <path d="M241.2 273c3 2.8 7.5 7.4 10.6 9.8-3.6.8-8.8 2.6-12 3.7 2.5-1.4 6.1-3 8.1-4.7-1.6-2.8-4.7-6.2-6.7-8.8z"/>
+    <path d="M250 280.4l-10.8-2.7 10.4 5.2 2-.6-1.6-1.9z"/>
+    <path d="M242.2 273.6c3.3 2.5 8.1 6.6 11.4 8.7a168 168 0 00-11.3 5.2c2.3-1.7 5.7-3.9 7.4-5.8-1.8-2.6-5.2-5.6-7.5-8.1z"/>
+    <path d="M251 281l-10 2.7h10.7l1.3-1.6-2-1z"/>
+  </g>
+  <path fill="#fedf00" stroke="#000" stroke-width=".5" d="M264.6 266.1l-8.1-5.6-8 5.6 3-9-7.1-5.5h9l3.1-9 3 9h9.1l-7 5.6 3 9z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/qa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/qa.svg
new file mode 100644
index 0000000..0bf30ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/qa.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-qa" viewBox="0 0 512 512">
+  <path fill="#8d1b3d" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0v512h113l104.2-28.4L113 455l104.2-28.4L113 398.2l104.2-28.4L113 341.3 217.2 313 113 284.4 217.2 256 113 227.6 217.2 199 113 170.7l104.2-28.5L113 113.8l104.2-28.5L113 57l104.2-28.4L113 0H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/re.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/re.svg
new file mode 100644
index 0000000..027c9f3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/re.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-re" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ro.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ro.svg
new file mode 100644
index 0000000..994992a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ro.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ro" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#00319c" d="M0 0h170.7v512H0z"/>
+    <path fill="#ffde00" d="M170.7 0h170.6v512H170.7z"/>
+    <path fill="#de2110" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rs.svg
new file mode 100644
index 0000000..3270f30
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rs.svg
@@ -0,0 +1,296 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-rs" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path d="M54.3 32h480v480h-480z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-57.9 -34.1) scale(1.06667)">
+    <path fill="#fff" d="M-32 32h720v480H-32z"/>
+    <path fill="#0c4076" d="M-32 32h720v320H-32z"/>
+    <path fill="#c6363c" d="M-32 32h720v160H-32z"/>
+    <g transform="matrix(.53333 0 0 .53566 -32 31.8)">
+      <path fill="#21231e" d="M473.4 259.4v-.2h1v.2l-.5.5-.6-.6zm1 0v.5h-.5l.4-.6zm-93 5.2l-1 .2.3-.6 4.2-.2 4-.3 4-.2 3.8-.3 4-.2 3.6-.3 3.7-.2 3.7-.2 3.5-.2h3.4l3.3-.3 3.2-.2 3.2-.2 3-.2h3l3-.2 3-.2 2.7-.2h2.8l2.7-.2 2.5-.2h2.5l2.4-.3h2.2l2.2-.2h2.2l2-.2h2l2-.2h5.3v1h-5.5l-1.8.2h-2l-2 .2h-2.2l-2.2.2-2.4.2h-2.4l-2.5.2-2.5.2H446l-2.8.3h-2.8l-3 .3-2.8.2h-3l-3 .3-3.3.2-3.3.2-3.3.2h-3.5l-3.5.3-3.6.2-3.5.3-3.8.2-3.8.2-4 .3-4 .2-4 .3-4.2.2.5-.6zm-1 .2l-.3-.5h.7l-.4.5zm6.4 31l-6.5-31 1-.2 6.5 31-.5.7-.5-.4zm.5.5h-.4l-.2-.4.5.3zm95-4l-.2 1h.2-5.8l-3 .2h-3l-2.8.2h-3l-3 .2h-6l-3 .2h-3l-3 .2h-3l-3 .2h-3.2l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-2.8.2h-5.8l-2.7.2h-2.7v-1h5.8l2.7-.2h5.8l3-.2h3l2.8-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3.2l3-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3l2.8-.2h3l2.8-.2h.2zm-.2 0h.2zm94.5 3.4l1 .2-.5.3h-2.8l-2.8-.2h-8.8l-2.8-.2h-3l-3-.2H551l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3.2-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2H485l-3-.2.2-1h2.8l3 .2h3l2.8.2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3.2l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h5.8l2.7.2h3l2.7.2h2.8l-.5.5zm1 .2v.3h-.5l.5-.4zm6.5-31.2l-6.5 31h-1l6.5-31.2.6-.4.4.6zm-.4-.6h.5v.6l-.4-.6zm-93.7-4.8h1l-.6-.5h5.4l2 .2h2l2 .2h2l2.4.2h2.4l2.4.3h5l2.6.3h2.7l3 .3 2.8.2h3l3 .3 3 .3 3.3.2 3.3.2 3.4.2h3.4l3.6.3 3.6.2 3.7.2 3.6.3 4 .2 3.8.3 4 .2 4 .3 4.2.2v1l-4.3-.2-4-.3-4-.2-4-.3-3.7-.2-3.8-.2-3.6-.3-3.6-.2-3.5-.2h-3.4l-3.3-.3-3.3-.2-3.2-.2-3-.2h-3l-3-.2-3-.2h-2.7l-2.6-.3h-2.6l-2.6-.3h-2.5l-2.4-.2-2.3-.2h-2.2l-2.2-.2h-2l-2-.2h-2l-1.8-.2h-3.3l-.5-.6zm.4.5h-.5v-.6l.4.5zm.5-.8v.2h-1v-.2l.3-.5.6.5zm-1 0v-.4h.3l-.4.4zm-8 .3l.2-1h8.8l.3.2v.8h-.5v.2h-.3l-.2-1h.2v.7h.2-8.2zm.2 0zm-8.3.2v-1l-.2 1h-.4l-.2-.2-.3-.3v-.5l.2-.2h9.4v1h-8.8l.2-.2v-.8h-.2.4v1zm0-1v1l-.6-.5.5-.5zm-.6.5v-.5h.5l-.6.5z"/>
+      <path fill="#edb92e" d="M583.5 264.2c3.2-6.6 6.7-13 11.2-18.7-11.7 8.8-18 7.5-18.7-4-.7-.2-1.7-.2-2.6-.2-9 14-17.7 12-26.2-5.8-11.5 18.4-21.4 18-29.2-1-13.3 16.6-24.5 16.7-33.6.2v-2c.5.2 0 .3-1 0l-.3-.3a69.3 69.3 0 01-1 .2c-.2 0-.5 0-.8-.2l-.2.4c-1.2.2-1.6 0-1 0v2c-9.2 16.4-20.4 16.3-33.7-.4-7.8 19-17.7 19.5-29.2 1-8.4 18-17 20-26 6-1 0-2 0-2.7.2-.8 11.4-7 12.7-18.8 4 4.6 5.5 8 12 11.3 18.6 34-1.4 67.6-3.2 101.3-5 34 1.8 67.6 3.6 101.5 5z"/>
+      <path fill="#21231e" d="M595 246l-.6-1 .7 1-.3.4-.4.5-.4.4-.5.6-.4.5-.3.6-.4.6-.4.6-.5.5-.3.6-.4.6-.4.4-.3.6-.3.6-.3.6-.4.6-.3.5-.3.6-.4.5-.3.6-.3.7-.4.6-.3.6-.3.5-.3.6-.2.8-.3.6-.4.6-.2.6-.3.6-.3.6-.3.6-1-.4.3-.6.3-.7.3-.6.2-.5.4-.6.3-.7.2-.6.3-.6.3-.6.4-.6.3-.6.3-.6.3-.6.5-.6.3-.6.4-.6.3-.6.4-.5.2-.5.4-.6.4-.7.3-.6.4-.5.4-.6.5-.6.4-.5.3-.6.4-.6.4-.6.5-.5.4-.6.4-.5.7.7zm-19.2-4l.3-1 .5.5v1l.2 1v1l.3.7.2.8.3.7.3.7.2.6.4.5.3.5.4.4.5.3.4.3.4.3.5.2h.4l.5.2h1.9l.7-.2.7-.2.8-.3.8-.3.8-.3 1-.5.8-.6 1-.5 1-.7 1-.7 1-.7 1-1 .7 1-1 .7-1 .8-1 .7-1 .6-1 .5-1 .5-1 .5-.8.4-1 .3-.7.3-.8.2h-.8l-.8.2h-2l-.7-.3-.5-.2-.6-.3-.5-.5-.6-.4-.5-.4-.5-.5-.3-.5-.4-.7-.3-.7-.2-.7-.3-.8-.2-1v-.8l-.2-1v-1l.2.3zm.3-1l.4.2v.3l-.3-.4zm-2.2.6l-.8-.6.4-.2h2v.2h.4l-.2 1h-1.2v-.2h-1.2l.4-.2zm-.8-.6v-.2h.4l-.4.2zm-25.3-5.2l-1-.6h1l.8 1.7.8 1.4.8 1.5.8 1.2.8 1.2.8 1.2.8 1 .8 1 .8.8.8.8.8.7.7.5 1 .4.7.3.8.3.7.3h2.3l.8-.2.8-.2.8-.3.8-.4.8-.6.8-.6.8-.7.8-.6 1-1 .7-1 .8-1 .8-1 1-1.4.8.6-.8 1.3-1 1-.7 1.2-1 1-.7 1-1 .7-.8.6-.8.6-1 .6-.7.4-1 .4-.8.2-1 .2h-3l-1-.4-.7-.3-1-.5-.7-.5-1-.6-.7-.7-1-.8-.8-1-.8-1-.8-1-.8-1.2-.8-1.3-.8-1.3-.8-1.5-.8-1.6-.8-1.7h1zm-1-.6l.6-.7.4.8h-1zm-28.3-.5l-.8-.6 1 .2.6 1.7.7 1.5.7 1.5.8 1.4.7 1.3.8 1.2.8 1 .8 1 .8.7.8.7.8.6 1 .5.7.4.8.2 1 .2h2.5l1-.3.8-.2 1-.4.8-.6 1-.7 1-.6 1-1 1-1 1-1 1-1.2 1-1.3 1-1.6 1-1.5 1.2-1.8 1 .6-1.2 1.7-1 1.5-1.2 1.5-1 1.3-1 1.3-1 1.2-1.2 1-1 1-1 .8-1 .7-1 .6-1 .4-1 .4-1 .4h-3l-1-.2-1-.3-.8-.6-1-.5-.8-.8-1-.8-.7-.8-1-1-.8-1-.8-1.3-.8-1.4-.8-1.5-.8-1.5-.7-1.7-.8-1.7h1zm-.8-.6l.5-.6.5.8h-1zm-33.8.7h1v-.2l.8 1.5 1 1.4.8 1.2 1 1.2.8 1 1 1 .8 1 1 .8.8.7 1 .6 1 .4 1 .4.8.3 1 .3 1 .2h2l1-.2 1-.3 1-.3 1.2-.4 1-.6 1.2-.6 1-.6 1.3-.8 1-1 1.3-1 1.2-1 1-1.3 1.4-1.3 1.2-1.4 1.2-1.5.8.7-1.3 1.5-1 1.5-1.3 1.3-1.2 1.3-1.2 1-1.2 1-1 1-1.3 1-1.2.7-1 .6-1.3.6-1 .5-1.3.3-1.2.3h-1l-1.2.2h-1l-1.2-.2-1-.2-1-.3-1-.4-1-.5-1-.7-1-.6-1-1-1-.8-1-1-1-1.2-.8-1.2-1-1.3-.8-1.5-1-1.5v-.3zm0 .3v-.3.3zm1-2.3v2h-1v-2l.8-.5.3.5zm-1 0v-.8l.8.2-.8.5zm-1 .3l1-.4-.4-.3h1l-.2.2v.4l.4-1h.2v.2l.2.2v.6h-1.8l-.5-.3zm.5.3h-.3v-.3l.3.3zm.3-1l.2.3-1 .4v-.4l.2-.7.6.2zm-.6-.4l.4-.2.2.4-.6-.3zm-1 1l.2-1h.8l.2 1h-1zm.2 0zm-.6-.4l-1-.4.7-.3h.8v1h-1l.4-.4zm-1-.4l.3-.4h.3l-.6.4zm0 .4v-.4l1 .4-.2.4-.4.3-.5-.7zm.8.4v.3h-.4l.4-.3zm-1-.3h-1l.7.4v.2h.2v-.8h-.2.2l.2-.2h.4l.2 1h-1.9v-.2h-.2v-.5h.2v-.2h.2l.8.4zm-.7-.5l.7-.3v.7l-.7-.5zm-.3 2.5v-2h1v2.3l-1-.3zm1 0v.2-.3zm-33.6 0l-1-.5h1l1 1.4 1.3 1.4 1.3 1.3 1.2 1.2 1.2 1 1.2 1.2 1 1 1.2.7 1 .7 1.2.7 1 .6 1.2.4 1 .3 1 .3h1l1 .2h1l1-.2 1-.2 1-.2 1-.4 1-.5 1-.7.8-.7 1-.8.8-1 1-1 .8-1 1-1.2.8-1.2.8-1.4 1-1.5.8.5-1 1.5-.8 1.4-1 1.2-.8 1.2-1 1.2-1 1-.8 1-1 .8-1 .7-1 .8-1 .5-1 .4-1 .4-1 .3-1.2.2h-2.2l-1-.2-1.3-.3-1-.3-1.2-.5-1-.6-1.2-.6-1.2-.8-1.2-.8-1.2-1-1.2-1-1.2-1-1.2-1.4-1.2-1.3-1.3-1.5-1-1.5h.8zm-1-.5l.3-.8.7.7-1 .2zm-28.3 1.5l-1-.4h1l1 1.6 1 1.4 1.2 1.5 1 1.2 1 1.2 1 1 1 1 1 1 1 .7 1 .8 1 .6.8.4 1 .3.8.4h2.8l.8-.2.8-.3.8-.5 1-.5.7-.6 1-.7.7-.8.8-1 .8-1 .8-1.3.8-1.3.8-1.4.8-1.5.7-1.6.8-1.8 1 .4-.8 1.7-.7 1.7-.8 1.5-.8 1.4-.8 1.3-1 1.2-.7 1-1 1-.7 1-1 .7-.8.7-1 .4-.8.5-1 .2-1 .2h-3l-1-.3-1-.3-1-.4-1-.6-1-.7-1-.8-1-1-1-1-1-1-1-1.4-1-1.3-1.2-1.5-1-1.5-1.2-1.7h1zm-1-.4l.5-.8.5.7h-1zm-25.6 6.5v-1l.3.2 1 1.3.7 1.2.8 1 .8 1 .8.8 1 .8.7.8 1 .6.7.5.7.3.8.3.8.2.8.2h2.3l.8-.4.8-.3.8-.4.7-.5 1-.6.7-.8.8-.8.8-.8.8-1 1-1 .7-1.2.7-1.2.8-1.3.8-1.6.8-1.5.8-1.7 1 .4-1 1.7-.7 1.5-1 1.4-.7 1.3-.8 1.3-.8 1.2-.8 1-1 1-.8 1-.8.8-.8.7-1 .6-.7.5-1 .5-1 .3-.7.3h-2.6l-1-.2-.8-.2-1-.4-.8-.4-1-.6-.8-.6-.8-.7-1-1-.7-.8-1-1-.8-1-1-1.3-.7-1.4.4.2zm0-1h.2v.2l-.3-.2zm-2.2.8h-1l.4-.5h1.2v-.2h1.5v1H389v.2h-.4l.2-.4zm-1 0v-.4h.4l-.4.3zm-18 3.6l-.6.7.6-1 1 1 1.2.6 1 .7 1 .6 1 .4.8.5 1 .4.7.3.8.3.8.3.8.2h.7l.7.2h1.7l.4-.2.5-.2.4-.3.4-.3.4-.3.4-.4.3-.5.2-.5.3-.6.3-.7.3-.7.3-.8v-.8l.3-1v-.8l.2-1h1v1l-.2 1-.2 1-.2 1-.2.7-.2.8-.3.8-.4.7-.2.6-.5.6-.4.5-.6.5-.5.4-.7.2-.6.2-.6.2h-3.3l-.8-.3-.8-.3-1-.3-.8-.4-1-.5-.8-.5-1-.5-1-.6-1-.7-1-.8-1.2-.8.7-.8zm11 18.5v1l-.4-.3-.3-.6-.2-.6-.3-.6-.3-.6-.4-.6-.3-.6-.3-.7-.3-.5-.4-.6-.4-.7-.3-.6-.4-.6-.3-.5-.4-.6-.4-.7-.4-.5-.3-.6-.4-.6-.4-.6-.4-.6-.3-.5-.4-.7-.3-.6-.3-.5-.4-.6-.4-.5-.4-.5-.4-.5-.4-.6-.4-.5-.4-.6-.4-.5.7-.8.4.5.4.6.4.5.4.6.4.5.4.5.4.5.4.6.4.6.4.5.3.6.4.6.4.5.4.6.4.6.3.6.5.6.3.6.3.6.5.6.3.6.3.6.5.6.3.7.3.7.4.6.3.6.4.5.4.6.3.7.3.7.3.6-.5-.3zm0 1h-.3v-.3l.4.3zm101.4-6v1l-3.2.2h-3.2l-3 .3h-3.3l-3 .3-3.3.2H460l-3 .3-3.3.3h-3.2l-3 .3H444l-3 .3h-3.3l-3.3.2-3 .2h-3.3l-3.2.3h-3l-3.3.3-3.3.2h-3l-3.3.3h-3.2l-3 .2-3.3.2h-3.3l-3.2.2h-3l-3.3.3H384l-3 .2-.2-1h3.2l3.2-.3h3l3.3-.2 3.2-.2h3l3.3-.3h3.2l3-.3h3.3l3.2-.3h3l3.3-.2h3.2l3-.3h3.3l3.2-.3 3-.2h3.3l3.2-.3h3l3.3-.3 3.2-.2h3l3.3-.3 3-.3h3.3l3.2-.3 3-.2h3.3l3.2-.3 3-.3h.2zm0 0zm101.2 5v1h-3l-3.3-.2-3-.2h-3.3l-3-.3h-3.3l-3.2-.3h-3l-3.3-.2-3.3-.2h-3l-3.3-.3-3.2-.2h-3l-3.3-.3h-3.3l-3-.3h-3.3l-3.2-.3-3-.3h-3.3l-3.3-.3h-3l-3.3-.3h-3l-3.3-.2-3-.2-3.2-.2h-3.2l-3.2-.3h-3l-3.3-.2.2-1h3l3.3.3 3.2.2 3 .2 3.3.2h3l3.3.3h3.2l3 .2 3.3.2 3.2.2h3l3.3.3h3l3.3.2 3.2.2h3l3.3.3h3.3l3 .3h3.3l3.2.3h3l3.3.3h3.3l3 .3h3.3l3.2.2h3.2l3 .2 3.3.2h3.2zm0 1zm0 0v-1l.5.7-.6.3zm.5-.3l-.2.3h-.4l.5-.3z"/>
+      <path fill="#edb92e" d="M505 276.2l-23 11.4-22.6-11.4 22.7-11.5z"/>
+      <path fill="#edb92e" d="M474 259.2v.2c-17.6.7-48.6 2.5-93.2 5.3l6.5 31c29.6-.8 64.3-2 94.8-3 30.7 1 65.3 2.2 95 3l6.5-31c-44.6-2.8-75.6-4.6-93-5.3v-.2c1.7-.4-1-.4-8.4-.2-7-.2-10-.2-8 .2z"/>
+      <path fill="#edb92e" d="M597.3 236.7l-3.7-.6c-7 17.5-13.4 18-14.6 1.4 1.6-.6 1-3.3 2.8-2.2 1 .5 2-1 1.3-2-2-1.5-3.6-1.3-5.4.4-.8-2.7-3-4-5.4-2.8-1 .5-.7 2.5.4 2.4 1.8-.2 1 1.6 1.6 3-12.5 16.4-19 14.4-17.4-7.3-3-.7-6.5-1.3-9.6-2.4-11.5 23.3-19.7 24.3-26.4 3.4 1.4-1 1-3.8 3-3 1.3.6 2.3-1.5 1.2-2.4-2.4-2-5-1.3-6.8 1.3-1.4-3-4-4-6.6-2.2-1.2.7-.5 3 .8 2.6 2.3-.7 1.3 2.4 3 3.5-5 19.6-30.8 21-26.6-8.2-2.4 0-4.5 0-6.6.2l-6.7-.2c4.2 29-21.5 27.8-26.6 8 1.6-1 .6-4 3-3.4 1.2.3 2-2 .7-2.7-2.6-1.7-5.2-.7-6.6 2.2-1.7-2.7-4.3-3.4-6.7-1.4-1 1 0 3 1 2.5 2.2-.8 1.8 2 3.2 3-6.7 21-15 20-26.4-3.4-3 1-6.5 1.7-9.5 2.3 1.6 21.6-5 23.6-17.4 7 .6-1.2 0-3 1.7-2.8 1 0 1.5-2 .4-2.4-2.4-1-4.5 0-5.3 2.8-1.7-1.7-3.5-2-5.5-.4-.8 1 .4 2.5 1.3 2 1.8-1 1.2 1.6 2.8 2.2-1.2 16.5-7.6 16-14.6-1.3l-3.7.7c0 4 1.3 8.5 3.8 11.7 10.6 13.5 18.5 10.4 18.8-4.7 14 16.4 24.4 14.3 26.2-3 11.7 21.8 30.5 11.4 31-2 5 19.4 33.5 19.2 35.4-3 1.8 22.2 30.3 22.4 35.4 3 .4 13.4 19.2 23.8 31 2 1.7 17.3 12.3 19.4 26 3 .4 15 8.3 18.2 19 4.7 2.4-3.2 3.8-7.6 3.7-11.7z"/>
+      <path fill="#21231e" d="M593.7 235.6l3.7.6-.2 1-3.6-.6-.4-.7.5-.4zm-.5.3v-.4h.5l-.5.3zm-14.3 1l.2 1 .3-.6.2 1.4v1.4l.3 1.3.2 1.2.2 1 .3 1 .3 1 .3.7.3.7.3.6.3.5.3.5.4.2.3.2h1.3l.4-.3.4-.2.5-.4.4-.3.6-.6.5-.6.6-.7.7-1 .6-.8.7-1.2.6-1.2.6-1.3.7-1.3.5-1.5.7-1.6 1 .3-.8 1.6-.6 1.4-.7 1.4-.5 1.3-.7 1.3-.6 1-.6 1-.7 1-.7.8-.6.8-.6.6-.5.5-.6.3-.7.4-.5.2h-1.2l-.6-.2-.5-.2-.5-.4-.5-.4-.4-.6-.3-.6-.3-.8-.4-.8-.3-1-.2-1-.3-1-.2-1.3-.2-1.3-.2-1.5v-1.6l.3-.5zm-.5.4v-.4h.4l-.5.4zm3.5-2.7l-.5 1v-.2h-.4v.2h-.2v.2l-.2.2v.3l-.2.3-.2.3v.2h-.2v.3h-.3v.2h-.3l-.2.2-.3-1v-.2h.2v-.2h.2v-.2l.2-.2v-.5h.2v-.4l.2-.2v-.3l.2-.2.2-.2h.2l.2-.2h1l.2.2zm-.5 1zm1.3-2l.6-1v.2h.2l.2.3v1.6h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.5v.2h-.8l-.3-.2.5-1v.2h.4v-.2h.2v-.2h.2v-.8zm.6-1v.2-.2zm-6.3 1l1-.3-.8-.2h.2l.2-.3.2-.2.2-.2.3-.2h.2l.2-.2h.2v-.2h.4l.2-.2h2.3l.2.2h.2l.2.2h.2l.2.2h.2l.2.2.2.2-.6.8-.3-.2h-.2l-.2-.2-.2-.2h-.3l-.2-.2h-2.1v.2h-.3v.2h-.2l-.3.2v.2h-.3v.2l-.3.2-1-.3zm1 .3l-.7.5-.2-.8 1 .3zm-5.6-2.7l-.4-1h.5l.3-.2h2.1l.4.2h.4l.2.3h.2v.2l.3.2h.2l.2.2v.2l.2.2v.2l.2.2.2.2v.2l.2.3v.2l.2.2v.2l-1 .3v-.5h-.2v-.3l-.2-.2v-.2h-.3v-.3h-.2v-.4h-.3v-.2h-.3v-.2h-.6v-.2h-2l-.2.2h-.2zm0 1.4l.2 1h-.6v-.2h-.2l-.2-.2-.2-.2-.2-.2V231l.2-.2.2-.2.3-.2.4 1h-.2v1.2h.2zm2.2 3.7l-.8-.6v.5-.2h-.2v-1h-.2v-1l-.2-.2h-.7v-1.2h.6l.3.2.2.2h.2v.2l.2.3v.4h.2v1.5h.2v.8zm0-.5h.2l-.2.4v-.5zm-18-6.6l.3-1 .3.6v2l-.2 1.8v4.9l.3 1.4v1.3l.3 1 .2 1 .3 1 .4.8.3.8.4.5.5.5.4.3.4.3.5.2h1l.6-.2.7-.3.7-.4.8-.5 1-.4.7-.8 1-.8 1-1 1-1 1-1 1-1.4 1-1.4 1.3-1.4.8.6-1.2 1.5-1 1.3-1.2 1.3-1 1-1 1.2-1 1-1 .8-1 .8-.8.6-1 .5-.7.4-.8.3h-.8l-.8.2h-.7l-.7-.2-.6-.3-.6-.5-.5-.5-.4-.7-.5-.7-.4-1-.2-1-.2-1-.2-1.2-.2-1.3V229l.5.6zm.3-1h.3v.6l-.4-.6zm-9.3-1.6l-1-.4.7-.3.3.2h.3l.3.2h.3l.2.2h.3l.4.2h.6l.3.2h.3l.4.2h.6l.3.2h.5l.3.2h.7l.3.2h.6l.3.2h.5l.3.2h.8l.3.2h.3l-.3 1h-.8l-.2-.2h-.6l-.3-.2h-.8l-.3-.2h-.6l-.4-.2h-.7l-.4-.2h-.3l-.3-.2h-.6l-.3-.2h-.2l-.3-.2h-.6l-.4-.2h-.3l-.4-.2h-.4l-.3-.2h-.2l.7-.4zm-1-.4l.3-.4h.4l-.6.4zm-26.2 3.2l.6.8.3-.6.6 2 .5 1.7.7 1.6.6 1.6.7 1.4.7 1.2.6 1 .7 1 .7 1 .7.6.6.6.7.4.7.4.7.2h1.4l1-.2.6-.2.8-.4 1-.6.7-.6 1-.8 1-1 .8-1 1-1.2 1-1.3.8-1.4 1-1.6 1-1.7 1-1.8 1-2 1.2-2 1 .3-1.2 2.2-1 2-1 1.8-1 1.8-1 1.6-1 1.5-1 1.3-1 1.2-1 1-1 1-1 1-.8.7-1 .5-.8.4-1 .2-.8.2h-1.8l-.8-.3-.8-.3-.8-.5-.8-.6-.7-.8-.8-1-.7-1-.7-1-.7-1.4-.7-1.4-.7-1.5-.7-1.7-.6-1.7-.7-1.8.2-.6zm-.2.6v-.4l.2-.2-.2.5zm3.8-3.6l-.3 1h-.3l-.2-.2h-.2v.2h-.2v.2h-.2v.5h-.2v.4l-.2.3-.2.2v.2l-.2.3-.3.3-.2.3h-.2l-.5-.7.2-.2.2-.2v-.5h.2v-.4h.2v-.3l.2-.3v-.2l.2-.2.2-.3.2-.2h.2v-.2h.5v-.2h.7l.2.2zm.7-1.6l.6-.8.2.2.2.2v.2l.2.3v1.3l-.2.3v.2l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2h-1.1l.4-1h.7v-.2h.2v-.6h.2v-.7h-.2v-.2zm-7 1l1-.3h-1l.2-.3v-.3h.3l.2-.3.2-.3.2-.2.3-.3.3-.3h.2l.2-.3h.3l.2-.2h.5l.2-.2h2.2l.3.2h.2l.3.2h.3l.3.3h.2l.3.3.3.2-.6.8-.2-.2h-.2l-.2-.3-.4-.2h-.2l-.2-.2H521v.2h-.5l-.2.3h-.2v.2h-.2l-.2.3-.2.2-.3.3v.2l-.2.3-.2.2h-1zm1 .2l-.6.7-.3-1 1 .2zm-7-2l-.4-1h.3l.2-.2h.3l.4-.2h.2l.3-.2h.4l.3-.2h1.6l.2.2h.2l.3.2h.2l.2.3.3.2.2.2v.2l.3.2.2.2.2.2v.2l.3.2.2.3.3.4v.3l-.8.4-.2-.4-.2-.2v-.2l-.3-.2v-.2l-.3-.2-.3-.3h-.2v-.2h-.3l-.3-.2h-.2l-.3-.2h-.4l-.2-.2h-1.2l-.2.2h-.5l-.2.2h-.2l-.2.2-.2.2zm.5 1.7l.3 1h-.5l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2v-.2l-.2-.2V224l.2-.2.2-.3.3-.2.5 1h-.2v1.2h.2v.2h.4zm3.7 4l-1-.2.2.5h-.2l-.2-.2h-.2v-.3h-.2l-.2-.3v-.4l-.2-.2v-.3l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2h-.6l-.4-1h1.1l.3.2h.2v.4h.2v.3l.2.2v.2h.2v.5l.2.3v.5h.2v.4h.2l.2.2.2.2.3.6zm-.3-.5l.3.2v.3l-.3-.5zm-27-7.2v-1l.6.5-.3 2.7-.2 2.4v2.2l.2 2 .3 2 .4 1.7.5 1.5.7 1.4.6 1 .8 1.2 1 1 1 .7 1 .6 1 .5 1 .4 1.3.3h2.4l1.3-.2 1.2-.3 1.2-.5 1.2-.5 1-.7 1.2-1 1-.8 1-1 1-1.3 1-1.3.8-1.3.8-1.5.6-1.7.5-1.7 1 .2-.6 2-.7 1.6-.8 1.6-1 1.5-1 1.4-1 1.3-1 1-1.2 1-1.2 1-1.2.8-1.3.7-1.2.5-1.3.3-1.4.2h-2.5l-1.2-.3-1.3-.4-1.2-.5-1-.7-1-1-1-1-1-1-.8-1.5-.7-1.5-.6-1.6-.4-1.8-.3-2-.2-2.2V227l.2-2.6.3-2.7.5.6zm0-1h.7v.5l-.6-.5zm-6.6 1.2l.2-1h4l.2-.2h2.1v1h-4.1l-.2.2h-2zm.2 0zm-6.2-.8h-1l.5-.4h5.1l.2.2h1.2v1h-4l-.3-.2h-2l.5-.6zm-1 0v-.5h.5l-.5.6zm-26.4 7.8l.5.8.3-.5.6 1.7.5 1.7.7 1.5 1 1.4.8 1.4 1 1.2 1 1 1 1 1.2 1 1.2.6 1.2.5 1.2.5 1.2.3 1.2.2h2.4l1.2-.3 1-.3 1.2-.4 1-.7 1-1 .8-.8 1-1 .6-1.3.6-1.5.6-1.6.4-1.8.3-2v-2l.2-2.3-.2-2.5-.3-2.7h1l.3 2.6.2 2.5v2.2l-.2 2.2-.3 2-.5 1.8-.5 1.6-.7 1.5-.8 1.4-1 1.2-1 1-1 .8-1 .7-1.2.5-1.3.4-1.3.3H463l-1.2-.2-1.3-.3-1.3-.5-1.3-.6-1.3-.7-1.2-1-1.2-1-1-1-1-1.2-1-1.3-1-1.5-.7-1.6-.7-1.7-.6-2 .2-.5zm-.2.5v-.3l.2-.2-.2.5zm3.7-4l-.2 1-.2-.2h-.7v.2l-.2.2v.4l-.2.2v.5l-.2.2v.2l-.2.3v.2l-.2.2v.2h-.2v.3h-.3l-.2.2h-.2l-.4-.7.2-.2.2-.2h.2v-.3l.2-.2v-.5l.2-.2v-.5l.2-.3v-.3l.2-.2.3-.3.2-.2h.2l.2-.2h1.1zm.4-1.8l.6-1v.2h.3v.3h.2v.2l.2.2v1.5l-.2.2v.2l-.2.2-.3.2-.2.2h-.9l.3-1h.4v-.4l.2-.2v-.8h-.2v-.2h-.2zm-6.7 2l.8-.6h-.8v-.2l.2-.3.3-.4v-.2l.3-.2.2-.2.2-.2.2-.2.2-.2.2-.2h.2l.3-.3.3-.2h.2l.3-.2h.5l.2-.2h1.6l.4.2h.2l.3.2h.2l.3.2.2.2h.3l-.6 1-.2-.2h-.2l-.2-.2h-.3l-.2-.2h-.5l-.2-.2h-1.3l-.2.2h-.3v.2h-.3l-.2.3-.2.2-.3.3-.3.3-.2.2v.2l-.2.2-.2.2v.3h-.2l-1 .2zm1 0l-.5.7-.5-.8h1zm-7-1.2l-.8-.8.2-.2.2-.2h.3l.2-.3h.2l.2-.2h.3l.3-.2h2.5l.3.2h.2l.3.2.2.2h.2l.2.3h.2l.2.2.2.2.2.3.2.2h.2v.4l.3.2-.8.6-.2-.2v-.3l-.3-.2-.2-.2-.3-.3-.2-.2h-.2l-.2-.2v-.2h-.2l-.2-.2h-.4l-.2-.2H441l-.2.2h-.2l-.2.2h-.2l-.2.3h-.2l-.2.3zm.5 1.6l.4 1h-1.3l-.2-.2-.3-.2h-.2v-.2l-.2-.3v-.2l-.2-.2v-1.6l.2-.2.2-.2v-.2l.8.8-.2.2v1l.2.2.2.2h.4zm3.8 3.6l-1-.4.2.6h-.2v-.3h-.3v-.2h-.2v-.3h-.2v-.5h-.2v-.6h-.2v-.5l-.2-.2-.2-.2h-.2v-.2h-.5v.2l-.5-1h.4l.2-.2h.6l.2.2.3.2h.2v.2l.2.2.2.3v.2l.2.2v.2l.2.3v.2l.2.2.2.2.2.2.2.2.2.6zm-.2-.6l.3.2v.4l-.2-.6zm-26.6-2.5l-.3-1 .5.4 1 2 1 2 1.2 2 1 1.6 1 1.6 1 1.5 1 1.4.8 1.2 1 1 .8 1 1 .8.7.6 1 .6.6.4.8.2.8.2h1.3l.7-.2.7-.4.7-.4.7-.6.7-.7.8-.7.6-1 .7-1 .8-1.3.6-1.4.7-1.5.7-1.5.7-1.8.6-2 1 .5-.7 2-.6 1.6-.7 1.7-.6 1.5-.7 1.4-.7 1.3-.7 1.2-.7 1-.8.8-.7.8-.7.6-.8.5-1 .4-.7.4H432l-1-.2-.7-.3-1-.5-1-.6-.8-.8-1-1-.8-1-1-1-1-1.2-1-1.3-1-1.5-1-1.6-1-1.8-1-1.8-1-2-1-2.2.5.3zm-.3-1h.3l.2.4-.6-.3zm-9 3h-1l.4-.6h.7l.3-.2h.6l.4-.2h.9l.3-.2h.5l.3-.2h.6l.4-.2h.3l.3-.2h.6l.3-.2h.5l.3-.2h.3l.4-.2h.3l.3-.2h.3l.3-.2h.3l.2 1h-.7l-.3.2h-.3l-.3.2h-.3l-.3.2h-.5l-.3.2h-.3l-.4.2h-.6l-.4.2h-.6l-.3.2h-.6l-.2.2h-.6l-.3.2h-.7l-.3.2h-.8v.2h-.4l.4-.5zm-1 0v-.5h.4l-.4.5zm-17.4 7l1 .3v-.5l1 1.4 1 1.4 1.2 1.3 1 1 1 1 1 1 1 .8.8.8 1 .6.6.4.8.4.7.3h.6l.6.2h.4l.5-.2.3-.2.5-.2.4-.5.3-.5.4-.7.2-.7.3-1 .2-1 .2-1v-2.7l.2-1.5v-5l-.2-1.8h1v2l.2 1.8v4.9l-.2 1.4v1.4l-.3 1.2-.3 1-.3 1-.2 1-.4.7-.4.7-.6.5-.5.5-.7.3-.7.2H402l-.6-.2-.8-.4-1-.5-.7-.5-1-.6-1-.8-1-.8-1-1-1-1-1-1.2-1-1.3-1.2-1.4-1-1.6-.2-.5zm0 .4v-.3.4zm2-3.7v1h-.6v.8l-.2.3v1h-.2v.3l-1-.4v-.4l.2-.2v-.9h.2v-.5l.2-.2v-.2h.4v-.2h1zm.3-1.4l.3-1 .2.2h.2v.2h.2v.7h.2v1.2l-.2.2v.3l-.2.2-.2.2h-.2l-.2.2h-.5v-1h.4v-.2h.2v-.8l-.2-.2zm-5.7 2.7l.7-.8-.8.2v-.2l.2-.3v-.3l.2-.3v-.2l.2-.2.2-.2v-.2l.3-.2v-.2l.3-.2h.2v-.3h.3l.3-.2.2-.2h.4v-.2h2.5l.3.2h.2l.3.2-.4 1-.3-.2h-.5l-.2-.2h-1.3l-.3.2h-.2v.2h-.2l-.2.2v.2h-.2l-.2.2v.2h-.2v.3l-.2.2v.2h-.2v.5l-.2.2-1 .3zm1-.3l-.4.8-.7-.5 1-.3zm-5.8-.2l-.7-.6v-.2l.3-.2h.3l.2-.2h.2l.2-.2.3-.2h.2l.2-.2h2.1l.2.2h.2l.2.2h.2l.2.2.3.2.2.2h.2l.2.3v.2l-.7.8v-.2h-.3v-.2l-.3-.2-.3-.2h-.3v-.2h-.2l-.2-.2h-2v.2h-.3l-.2.2-.2.2h-.2l-.2.2zm-.7-.6v-.2zm1.4 1.7l.6 1h-1.3l-.3-.2-.2-.2v-.2h-.2l-.2-.2v-.3l-.2-.2v-.8l.2-.3h.2l.7.5v.8h.2v.2h.2v.2h.2zm3.6 2.7h-1l.3.5v-.2h-.3v-.2h-.3v-.3h-.2v-.2h-.2v-.2l-.2-.2v-.3h-.2v-.2l-.2-.3v-.2h-.7l-.6-.8h.2l.2-.2h1.1l.3.2.2.2v.2h.2v.4l.2.2v.5h.2v.2l.2.2.2.2h.2l.4.6zm-.4-.5h.4v.4l-.4-.5zm-14.7-.4v-1l.4.3.8 1.5.6 1.5.7 1.3.7 1.3.6 1.2.6 1 .6 1 .6 1 .5.6.6.7.5.7.6.4.5.5.3.2.5.2h1.1l.3-.3.3-.2.4-.4.3-.4.4-.5.3-.6.3-.8.3-.8.2-1 .3-1 .3-1.3.2-1.3v-1.4l.2-1.4h1v1.5l-.2 1.4-.2 1.3-.2 1.2-.2 1-.2 1-.3 1-.4.8-.4.8-.4.6-.4.6-.5.4-.5.4-.5.2-.6.2h-1.1l-.6-.3-.7-.4-.6-.4-.5-.6-.6-.6-.7-.7-.7-.7-.6-1-.6-1-.6-1-.6-1.2-.6-1.2-.7-1.4-.7-1.5-.6-1.7.5.3zm0-1h.3v.3l-.4-.4zm-3.8.6l3.6-.6v1l-3.6.6-.5-.5.4-.5zm-.5.5v-.4h.4l-.5.4zm4.7 11.4l-.8.7-.3-.3v-.3l-.3-.3-.2-.3-.3-.3-.2-.3-.2-.3v-.4l-.3-.3-.2-.4-.2-.4v-.4l-.2-.4v-.4l-.3-.4v-.4l-.2-.3v-.4l-.2-.4v-.9l-.2-.3v-.8l-.2-.5V238l-.2-.5v-.7h1v1.9l.2.4v1.1l.2.5v.7l.2.3v.4l.2.4.2.3v.4l.2.5.2.3v.4l.2.3.2.4.2.2v.3l.3.4.2.2v.3l.3.3.2.4.2.3.2.3.2.3zm18.7-4.7l-.8.7 1-.3-.2 1.4v1.4l-.2 1.3-.2 1.2-.2 1-.3 1-.2 1-.3 1-.4.7-.4.8-.4.7-.6.6-.5.5-.5.4-.7.3-.6.3h-.7l-.8.2h-.7l-.8-.2-.8-.2-.8-.2-1-.4-.7-.5-1-.7-1-.6-.8-.8-1-1-1-1-1-1-.8-1-1-1.3.8-.6 1 1.3 1 1 .8 1 1 1 1 .8.7 1 1 .5.7.6.8.5.8.4.7.2h.7l.7.3h1.4l.6-.2.4-.2.6-.2.4-.3.5-.5.4-.5.4-.6.4-.7.3-.8.3-.8.3-1 .4-1 .2-1 .2-1.2v-1.2l.2-1.3v-1.3l1-.4zm-1 .4V242l1 1-1 .4zm27.3-3.2l-1 .4 1-.2-.2 1.6v1.5l-.4 1.3-.4 1.3-.4 1.2-.4 1.2-.5 1-.7 1-.6 1-.6.7-.6.7-.8.6-.7.5-1 .4h-.8l-1 .3h-2.8l-1-.3-1-.4-1.2-.4-1-.6-1.2-.6-1.2-.8-1-.8-1.3-1-1.2-1-1.3-1.2-1.2-1.3-1.3-1.5-1.3-1.5.7-.7 1.2 1.5 1.3 1.4 1.2 1.2 1.2 1.2 1 1 1.3 1 1 .8 1.2.7 1 .7 1 .6 1 .4 1 .3 1 .2h1l.8.2h.8l1-.2.7-.3.7-.4.7-.5.7-.4.6-.6.6-.7.5-.8.5-1 .4-1 .5-1 .2-1.2.4-1.3.3-1.3v-1.5l.3-1.6h1zm-1 0l.2-1.5.8 1.5h-1zm31.8-1.8l-.8.3h1v1l-.3 1.4-.4 1.2-.4 1.2-.5 1-.6 1.3-.6 1-.7 1-.8 1-1 1-1 .7-1 .7-1 .7-1 .6-1.2.5-1.2.4-1.2.3h-3.8l-1.3-.2-1.3-.4-1.4-.4-1.3-.7-1.3-1-1.3-.8-1.3-1.2-1.3-1.2-1-1.5-1.3-1.6-1.2-1.8-1-2 .8-.5 1 2 1.2 1.6 1.2 1.7 1.2 1.4 1 1.3 1.3 1 1.2 1 1.3.7 1.2.6 1.2.5 1.3.5 1.2.2h3.6l1.2-.3 1-.3 1-.3 1.2-.5 1-.6 1-.7.7-.8 1-1 .6-.7.6-1 .6-1 .6-1 .4-1 .4-1.2.3-1V239h1zm35.6-3l-1 .2h1l-.2 2-.4 2-.6 1.6-.6 1.7-.8 1.6-1 1.3-1 1.3-1 1-1.3 1-1.3 1-1.3.8-1.3.6-1.5.6-1.5.3-1.5.2h-1.5l-1.6.2-1.4-.2-1.6-.2-1.5-.3-1.5-.5-1.4-.6-1.4-.7-1.4-1-1.3-1-1.2-1-1-1.2-1-1.4-1-1.4-1-1.6-.6-1.6-.5-1.8 1-.3.5 1.7.6 1.6.8 1.5 1 1.3 1 1.3 1 1.2 1.2 1 1.2 1 1.3.8 1.3.7 1.4.5 1.4.5 1.4.3 1.5.2h4.4l1.5-.3 1.4-.4 1.3-.5 1.3-.5 1.3-.7 1-1 1.2-.8 1-1 1-1.3 1-1.4.6-1.4.7-1.7.5-1.7.4-1.8.2-2h1zm35.5 3l-1 .2h1l-.4 1.8-.7 1.6-1 1.6-1 1.4-1 1.4-1 1.2-1.3 1-1.2 1-1.4 1-1.3.6-1.5.6-1.4.5-1.6.3-1.5.2-1.5.2h-1.6l-1.5-.2-1.4-.3-1.5-.4-1.4-.6-1.4-.6-1.3-.8-1.4-1-1.2-1-1-1-1.2-1.3-1-1.4-.7-1.7-.7-1.7-.5-1.7-.4-2-.4-2 1-.2.3 2 .3 1.8.5 1.7.6 1.6.8 1.3 1 1.4.8 1.2 1 1 1.2 1 1.2.8 1.3.7 1.3.6 1.4.6 1.4.3 1.4.2h4.5l1.4-.2 1.5-.3 1.4-.5 1.3-.5 1.3-.7 1.3-.8 1-1 1.2-1 1-1 1-1.4 1-1.3.7-1.5.6-1.6.5-1.7h1zm31 2h-1l1 .2-1.2 2-1.2 1.7-1.2 1.6-1.2 1.5-1.3 1.2-1.4 1.2-1.3 1-1.3.7-1.3.6-1.3.5-1.4.5-1.3.2H530l-1.3-.3-1.2-.3-1.2-.4-1-.5-1-.6-1-.7-1-.8-1-1-.7-1-.8-1-.6-1-.6-1-.5-1.2-.3-1.2-.3-1.2-.2-1.3v-1l1-.2v1.2l.2 1.2.3 1 .4 1.2.5 1 .6 1 .7 1 .7 1 .7 1 1 .8.8.7 1 .6 1 .6 1 .5 1 .4 1 .4 1.3.2 1.2.2h2.4l1.2-.3 1.2-.4 1.3-.4 1.2-.6 1.3-.7 1.2-1 1.2-1 1.2-1.2 1.2-1.3 1.2-1.6 1-1.6 1.2-2 1 .2zm-1-.2l.8-1.5.2 1.6h-1zm27.2 3.2h-1l1 .3-1.4 1.5-1.3 1.4-1.2 1.2-1.3 1-1.2 1.2-1.2 1-1.2.8-1 .8-1.2.6-1 .6-1.2.4-1 .4-1 .2-1 .2h-2l-1-.3h-.8l-.8-.5-.8-.5-.7-.6-.8-.7-.6-.8-.6-1-.6-1-.5-1-.5-1-.4-1.4-.3-1.3-.3-1.4-.2-1.6-.3-1.6 1-.2.2 1.6.2 1.5.3 1.3.3 1.3.4 1.2.4 1 .5 1 .5 1 .6.8.6.7.6.6.6.5.7.6.6.3.8.2h.8l.8.2h.8l1-.2 1-.2.8-.3 1-.4 1-.6 1.2-.6 1-.6 1.2-.8 1.2-1 1-1 1.4-1.2 1.2-1.2 1.3-1.4 1.3-1.5 1 .4zm-1-.4l1-1v1.4l-1-.4zm19 4.8l.7.7-1 1.2-1 1-1 1-1 1-1 1-.8.7-1 .6-.8.6-.8.4-1 .4-.7.3-1 .3-.7.2h-1.5l-.7-.2-.6-.3-.6-.3-.6-.4-.6-.5-.5-.6-.4-.7-.4-.8-.4-.8-.3-1-.3-1-.3-1-.3-1-.2-1.3V246l-.2-1.3v-1.3h1v2.6l.2 1.3.2 1 .2 1.2v1l.4 1 .4.7.3.8.5.6.4.5.4.5.4.5.5.3.5.3.6.3h.6l.6.2h.6l.7-.2h.6l.7-.4.8-.5 1-.4.7-.5 1-.6.7-1 1-.7.8-1 1-1 1-1 1-1.2zm4-10.7v-1l.6.4v2.9l-.2.4v.7l-.2.4v.5l-.2.4v.3l-.2.4v.3l-.3.4v.4l-.2.4-.2.4v.3l-.3.3-.2.4-.2.3-.2.4-.2.3-.2.4-.2.4-.2.3-.2.4-.2.4-.3.3-1-.6.3-.2.3-.3.2-.3.2-.4.2-.3.2-.3.2-.3v-.5l.3-.3v-.3l.2-.5.2-.3v-.4l.3-.3v-.4l.2-.3v-.7l.2-.4v-.3l.2-.4v-.5l.2-.4v-1l.2-.4v-1.8l.5.5zm0-1h.6v.4l-.5-.5zm0 0v1-1zm0 1z"/>
+      <path fill="#edb92e" d="M482 263h-22.5l-1.3.2H451l-1.3.2h-4.4l-1.2.2h-2.3l-6.3.4h-.3c-3 0-6 .3-9 .4h-.8l-18.2 1.3h-.2a965 965 0 00-26.4 2.4c-5 .6-6-5.3 0-6a960.5 960.5 0 0126.3-2.2 983.7 983.7 0 0137-2.2h2.4l15.4-.5h16.8a1082.3 1082.3 0 017.2 0h16.6l15.2.5h3.3a984 984 0 0137 2.3 960.5 960.5 0 0126.2 2c5.8.7 5 6.6 0 6a965.6 965.6 0 00-26.4-2.3h-.3a978.4 978.4 0 00-18.3-1.2h-.6l-9.2-.5h-.3c-2.2 0-4.3-.2-6.4-.3h-2.3l-1.2-.2h-4.5l-1.3-.2H506l-1-.2h-23z"/>
+      <path fill="#0c4076" d="M482 105a17.3 17.3 0 01.1 34.7c-9.3 0-17-7.8-17-17.3 0-9.6 7.7-17.3 17-17.3z"/>
+      <path fill="#edb92e" d="M485.3 85c1.6-.2 3-1.5 3-3.2 0-1.7-1.4-3-3-3.2 0-1.7-1.4-3-3.2-3a3 3 0 00-3 3c-1.6 0-3 1.5-3 3.2a3 3 0 003 3v6.5h-5.5a3 3 0 00-3-3c-1.8 0-3 1.3-3.2 3a3 3 0 00-3 3c0 1.8 1.3 3.2 3 3.2a3 3 0 003 3c1.8 0 3.2-1.2 3.2-3h5.5V119h6.3V97.6h5.5a3 3 0 003 3c1.8 0 3-1.4 3.2-3 1.7 0 3-1.5 3-3.2a3 3 0 00-3-3c0-1.8-1.4-3.2-3-3.2-2 0-3.2 1.4-3.2 3h-5.5V85z"/>
+      <path fill="#21231e" d="M487.8 81.8h1v1h-.2v.5h-.2v.3l-.2.3-.2.2v.2h-.2l-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2v.2h-.8l-.2.2h-.3v-1h.7V84h.2l.3-.2h.2v-.2h.2v-.2l.2-.2V83h.2l.2-.2v-.4l.2-.2v-.4zm-3-3.2h1l-.5-.5h.2l.3.2h.4l.3.2h.3l.2.2.2.2h.2v.2h.2l.2.2.2.3.2.2v.2h.2v.4h.2v.5l.2.2v.7h-1V81h-.2v-.4l-.2-.2V80h-.4v-.2h-.2v-.2h-.2l-.3-.2h-.2V79h-.8l-.4-.6zm.4.5h-.4v-.4l.4.5zm-3-3v-1h.7l.2.2h.2l.3.2h.2l.2.2.2.2h.2v.3l.2.2.2.3.2.2v.2h.2v.4h.2v.8h.2v.3h-1V78h-.2v-.5h-.2v-.2l-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.4l-.3-.2h-.4zm-3.2 3v-1l-.5.6v-.8l.2-.2V77h.2v-.6h.2v-.2l.2-.2.2-.2.2-.2h.2v-.2h.3v-.2h.3l.3-.2h.4l.2-.2h.4v1h-.5v.2h-.3l-.2.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.2h-.2v.5h-.2v1l-.6.5zm.5-.4v.5h-.5l.5-.4zm-3 3.2h-1V81l.2-.3v-.5l.2-.2v-.2l.2-.2.2-.3.2-.2h.2l.2-.2h.2v-.2h.3v-.2h.5l.3-.2h.7v1h-.7l-.2.2h-.2l-.2.2-.2.2-.2.2-.2.2v.2h-.2v.4l-.2.2v.8zm3 3h-1l.5.6h-1V85h-.7v-.2h-.3v-.2h-.2l-.2-.2-.2-.2V84h-.2v-.2l-.2-.2-.2-.3v-.5h-.2v-1h1v1h.2v.4h.2v.2h.2v.2l.2.2h.2v.2h.2l.3.2h.7v.2h.2l.5.5zm-.5-.4h.5v.5l-.5-.6zm-.5 7V85h1v6.3l-.5.5-.5-.5zm1 0v.4h-.5l.5-.5zm-6-.6h5.5v1h-5.5l-.5-.5.5-.5zm0 1h-.5v-.5l.5.5zm-3-3v-1h1.2v.2h.3l.3.2.3.2.3.2v.2l.2.2.2.3.2.3.2.3v.4l.2.2v.8h-1v-.7l-.2-.2V90h-.2v-.2h-.2v-.2l-.2-.2-.2-.2h-.2V89h-.4l-.2-.2h-.8zm-3.2 3v-1l-.5.4v-.8l.2-.3V90l.2-.3v-.2h.2v-.2l.2-.2h.2v-.3h.2l.2-.2.2-.2h.2V88h.7v-.2h1.1v1h-1l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2v.2h-.2v.4h-.2v.8l-.2.2v.3l-.5.5zm.5-.5v.5h-.5l.5-.5zm-3 3h-1V93h.2v-.2h.2v-.3l.2-.3.3-.3v-.2h.2v-.2h.2v-.2h.2l.2-.2h.2V91h.7l.2-.2h.8v1h-.7l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2v.2h-.2v.5h-.2v.7zm3 3.2h-1l.5.5h-1v-.2h-.5l-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2v-.2h-.3v-.2l-.2-.2V96h-.2v-.4l-.2-.3v-.8h1v.9h.2v.2l.2.3h.2v.2h.2v.2h.2v.2h.2l.2.2h.5v.2h.4l.6.5zm-.5-.5h.5v.5l-.5-.5zm3 3v1h-1l-.2-.2h-.3v-.2h-.3v-.2h-.2l-.2-.2-.2-.3v-.2h-.2v-.3h-.2V99h-.2v-.5l-.2-.2V98h-.2v-.5h1v.7h.2v.4h.2v.2l.2.2v.2h.2v.2h.2v.2h.2l.2.2h.2l.3.2h.6zm3.2-3v1l.5-.4v.8l-.2.2v.3h-.2v.3l-.2.3-.2.2-.2.2-.2.2-.3.2-.2.2h-.2l-.2.2h-.2l-.3.2h-.8v-1h.9v-.2h.2l.2-.2h.2v-.2h.2l.2-.2V99h.2v-.2l.2-.3v-.2l.2-.2v-.4l.5-.5zm-.5.6V97h.5l-.5.6zm6 .5h-5.5v-1h5.5l.5.6-.5.5zm0-1h.5v.6l-.5-.5zm-.5 22V97.6h1V119l-.5.5-.5-.5zm.5.5h-.5v-.5l.5.5zm6.3 0H479v-1h6.3l.5.5-.5.5zm.5-.5v.5h-.5l.5-.5zm0-21.4V119h-1V97.6l.5-.5.5.6zm-1 0V97h.5l-.5.6zm6 .5h-5.5v-1h5.5l.5.6-.5.5zm0-1h.4v.6l-.4-.5zm3 3v1h-1l-.3-.2h-.2l-.3-.2-.2-.2h-.2v-.2h-.2l-.2-.2v-.2h-.2v-.2l-.2-.2V99h-.2v-.2h-.2v-1l-.2-.2h1v.4l.2.2v.2l.2.3v.2h.2v.2h.2l.2.2v.2h.2l.3.2h.2v.2h1.1zm3.2-3v1l.5-.5v.7h-.2v.5l-.2.3v.4h-.2v.3h-.2v.2h-.2v.2h-.3v.2l-.3.2h-.3l-.2.2h-.3l-.2.2h-.8v-1h.9v-.2h.2v-.2h.2l.2-.2.2-.2V99h.2v-.2l.2-.2v-.2l.2-.2v-.6l.6-.6zm-.5.5V97h.5l-.5.5zm3-3h1v.9l-.2.3v.2h-.2v.6h-.2l-.2.2v.2h-.2v.2h-.3v.2h-.2v.2h-.3l-.3.2h-.2l-.3.2h-.7v-1h.8V97h.2v-.2h.2l.2-.2.2-.2h.2V96l.2-.3v-.2h.2v-.7l.2-.3zm-3-3.2h1l-.5-.6h.7l.2.2h.4l.3.2.3.2.3.2.2.2.2.3.2.2v.5h.2v.3h.2v.7l.2.3v.4h-1v-.6h-.2v-.4l-.2-.2-.2-.2v-.2h-.2l-.2-.2-.2-.2h-.2V92h-.5l-.2-.2h-.5l-.5-.5zm.5.5h-.5v-.5l.5.5zm-3-3v-1h1.1l.2.2h.4v.2h.3v.2l.3.2.2.3h.2v.3h.2v.4l.2.2v.4h.2v.7h-1v-.8h-.2V90l-.2-.2-.2-.2-.2-.2-.2-.2h-.2V89h-.5v-.2h-.6zm-3.2 3v-1l-.6.5v-.9l.2-.2V90l.2-.3.2-.3.2-.3h.2v-.2l.2-.2h.2v-.2h.2l.2-.2h.3l.2-.2h.3l.2-.2h1v1h-1l-.3.2h-.2v.2h-.2l-.2.2v.2l-.2.2-.2.2v.2l-.2.2v.7l-.7.6zm.5-.5v.5h-.6l.6-.5zm-6-.5h5.5v1h-5.5l-.5-.5.5-.5zm0 1h-.5v-.5l.5.5zm.5-7v6.5h-1V85l.4-.6.6.5zm-1 0v-.4h.4l-.4.5zm.5 0v-.4.5zm-.5 0v-.4h.4l-.4.5z"/>
+      <path fill="#21231e" d="M499.8 122.4h-1v-1.7l-.2-1v-.7l-.3-.8-.2-.8-.2-.8-.3-.8-.3-.7-.4-.6-.4-.7-.4-.7-.5-.7-.5-.6-.5-.6-.6-.5-.7-.6-.6-.6-.6-.5-.5-.6-.7-.4-.7-.4-.6-.4-.8-.3-.7-.4-1-.3-.7-.2h-.8l-.8-.2h-.8l-1-.2h-1v-1h2l.8.2h1l.8.3.8.4.8.2.8.4.8.3.8.4.7.4.7.6.7.5.7.6.6.6.6.6.6.6.6.6.5.7.5.7.5.7.4 1 .4.6.4.8.3.8.3 1 .3.7.2.8v1l.2.7v2zM482 140.2v-1h1.8l1-.2.7-.2.8-.2.8-.2 1-.3.6-.2.8-.3.7-.4.8-.3.7-.4.6-.5.7-.5.6-.5.6-.6.5-.5.5-.6.5-.6.5-.6.4-.7.4-.6.4-.8.3-.7.3-1 .3-.6.3-.8.2-.8v-1l.2-.7v-1.6h1v2.8l-.2.8-.2.8-.3 1-.3.7-.3.8-.3.8-.3 1-.4.6-.5.7-.5.7-.5.7-.6.6-.6.7-.6.6-.6.5-.7.6-.7.5-.7.6-.7.4-.8.4-.8.4-.8.3-.8.4-.8.2-1 .2-.8.2h-.8l-1 .2h-1zm-17.5-17.8h1v1.8l.2.7v.8l.3.8.2.8.3.7.3 1 .3.6.5.8.4.7.3.8.5.6.5.6.5.7.6.5.5.6.5.5.7.5.6.5.7.4.7.4.7.5.7.3.7.3.8.4.8.2.8.2.8.2h1.8l.7.2v1h-1.8l-.7-.2-1-.2-.8-.2-.8-.2-1-.3-.7-.2-.8-.4-.8-.4-.7-.4-.7-.5-.7-.4-.7-.5-.7-.4-.7-.6-.5-.7-.5-.6-.5-.7-.5-.7-.5-.7-.4-.7-.4-1-.3-.7-.5-.8-.2-.8-.3-1-.2-.7v-1l-.2-.8v-1.8zm17.6-17.8v1h-1.7l-.7.2h-.8l-.8.3-.8.3-.8.3-.7.3-.8.2-.8.4-.7.4-.7.4-.6.5-.7.4-.6.5-.6.5-.6.6-.5.7-.5.6-.5.7-.4.7-.5.7-.4.7-.2.8-.3.8-.3.8-.2.8-.2.8v.8l-.2 1v1.7h-1v-2.8l.2-1 .2-.8.3-1 .2-.8.4-.8.2-.8.4-.7.4-1 .5-.6.5-.7.5-.7.6-.6.6-.6.7-.6.6-.6.6-.5.7-.4.7-.5.7-.3.8-.4.8-.3.8-.4 1-.2.7-.3h1l.8-.2h.8l1-.2h.8z"/>
+      <path fill="#edb92e" d="M499 118.8a17.6 17.6 0 010 6c-5.5-.2-11.2-.3-17-.3-5.5 0-11.2 0-17 .3a17.5 17.5 0 01.3-6l16.8-.3c5.8 0 11.4.2 17 .3z"/>
+      <path fill="#21231e" d="M499.8 122.4h-1V120h-.2v-1l1-.2v1.7l.2.2v1.6zm-.7 3l.2-1-.6.3v-.8l.2-.2v-1.1h1v2.2h-.2l-.5.5zm.6-.5v.3h-.5l.6-.4zm-17.5 0v-1H494l.4.2h4.8v1h-10.6l-.5-.2h-6zm-17.4 0l1-.3-.5-.4h4.7l.4-.2H482v1h-11l-.5.2H465l-.5-.3zm.6.3h-.5v-.4l.5.3zm-.7-3h1v2.4l-1 .3v-2.6zm.8-4v1l.5-.3v.8l-.2.2v2.5h-1v-3h.2v-.4l.5-.5zm-.5.5v-.4h.5l-.5.4zm17.3-.8v1h-9.1l-.5.2H466l-.7.2v-1h2.5l.5-.2h9l.5-.2h4.2zm17.5.8l-1 .2.4.4h-3.6l-.5-.2h-10.3l-.5-.2h-2.1v-1h10l.5.2h6.1l.5.6zm-.5-.5h.4v.5l-.4-.5z"/>
+      <path fill="#edb92e" d="M468.8 133.2c-3.6-2.3-4.3 1.2-4.2 4.7.4 13.2 3 25.8-.6 42-1.4 6.4-3.7 10-1.5 11.3 5.7 3.2 8.3 6 7.4 7.7 1.5 3.2 5.7 2.6 12 1.6 6.6 1 10.7 1.6 12.4-1.6-1-1.6 1.7-4.5 7.4-7.7 2.2-1.2 0-5-1.5-11.3-3.5-16.2-1-28.8-.7-42 0-3.6-.5-7-4-4.8a28.6 28.6 0 01-26.8 0z"/>
+      <path fill="#21231e" d="M465 138h-1v-1.5l.2-.3v-1.6l.2-.3v-.3h.2v-.4l.2-.2v-.3h.2l.2-.3.2-.2.2-.2h.2l.2-.2h1.8l.4.2.4.2h.3l.4.3-.4 1-.4-.3h-.2l-.3-.2h-.3l-.2-.2h-1.2v.2h-.2v.2l-.2.2v.2l-.2.2v.4l-.2.3v.4l-.2.2v2.5zm-.5 42l-1-.2.3-1.5.3-1.4.3-1.6.2-1.4.2-1.5.2-1.4v-2.5l.2-1.4V154l-.2-1.2v-2.5l-.2-1.2V148l-.2-1.2v-1.2l-.2-1.3V142l-.2-1.3V138h1v3.5l.2 1.2v2.6l.2 1.2v1.3l.2 1.2v2.5l.2 1.2v1.3l.2 1.3v13.3l-.2 1.4v1.4l-.3 1.5-.2 1.4-.2 1.6-.2 1.4-.2 1.5-.3 1.6zm-1.8 11l-.4.8-.3-.2-.2-.2-.2-.2-.2-.2v-.2l-.2-.3V188l.2-.3v-.4l.2-.3v-.4l.2-.4v-.5l.3-.4.2-.4v-.5l.3-.3v-.5l.3-.5v-.6l.3-.4.2-.6v-.6l.3-.6 1 .3-.2.7v.6l-.3.5v.6l-.2.5-.2.4v.6l-.3.4v.5l-.3.4v.4l-.2.4v.4l-.2.4v.4l-.2.3v.4l-.2.4v1.9l.2.2.2.2zm7.6 7.8l-1 .4v-.4h.2v-1l-.2-.2v-.2l-.2-.2v-.4l-.3-.2-.2-.2-.2-.3h-.3l-.2-.4-.3-.2-.3-.3h-.3l-.4-.4-.4-.3-.3-.2-.5-.2-.4-.3-.3-.3-.5-.3-.5-.3-.4-.3-.5-.3-.6-.2.5-1 .6.4.5.3.5.3.4.3.5.4.4.3.5.3.5.2.3.3.4.3.4.3.3.4.2.2.3.3.3.2.2.2.2.3.3.2.2.2v.2l.3.3v.2l.3.2v.5l.2.2v1.1l-.2.3v-.5zm-1 .4v-.4.4zm13 1l-.2 1h.2-1.2l-.5.2h-1.2l-.6.2h-1l-.5.2h-4.7l-.4-.2h-.3l-.3-.2-.3-.2-.3-.2-.2-.2-.3-.2-.2-.2-.3-.3h-.2l-.2-.4-.2-.4 1-.4v.2l.2.3.2.2.2.2.2.2h.2l.2.2h.2l.3.2h.3l.3.2h.3l.2.2h4.3l.5-.2h1l.6-.2h1.1l.5-.2h.8zm-.2 0h.2zm12-1l1-.4v.4l-.3.4-.2.3h-.2l-.3.4-.2.2-.3.2-.3.2-.3.2-.4.2h-.3l-.3.2h-.4l-.4.2H486l-.6-.2h-.5l-.6-.2h-1.2l-.5-.2h-.6l.2-1h1.8l.5.2h.6l.6.2h1.1l.5.2h4.2l.3-.2h.3l.2-.2h.3l.2-.2.2-.2.3-.3.2-.2.2-.2v-.3l.3-.2v.5zm1-.4v.4-.4zm6.5-8l.5 1-.5.3-.5.4-.5.3-.4.2-.4.2-.4.3-.4.3-.4.3-.4.3-.3.3-.3.3h-.3l-.2.4-.3.2-.3.3h-.2l-.2.4-.2.2-.2.2v.2l-.3.2v.7h-.2v1.2l-.8.5v-.2l-.2-.2v-1.3l.2-.2v-.3l.3-.3v-.3l.3-.2.2-.3.2-.3.3-.3.2-.2.3-.3.3-.4.4-.2.3-.3.4-.2.4-.3.4-.3.4-.2.4-.3.5-.3.5-.3.5-.2.5-.3.5-.3.5-.3zm-1.7-10.7l1-.2v.6l.3.6.2.6.2.5v.7l.3.5v.5l.2.4v.6l.2.5.2.5v.4l.2.3v.4l.2.4v.5l.2.3v.7l.2.3v1.8l-.2.3v.2l-.3.3h-.2l-.2.3-.3.2-.5-1h.2l.2-.2v-.4h.2v-2.5l-.2-.3v-.3l-.2-.3v-.4l-.2-.4v-.4l-.2-.4v-.4l-.3-.5v-.6l-.2-.4v-.6l-.3-.5v-.6l-.3-.6v-.5l-.2-.6-.2-.6zm-.7-42h1v5.9l-.2 1.4v1.2l-.2 1.2v1.3l-.2 1.3v2.5l-.2 1.2v2.6l-.2 1.2v9.3l.2 1.4v1.4l.2 1.3.2 1.5.2 1.5.2 1.4.2 1.5.3 1.3.3 1.5-1 .3-.3-1.5-.3-1.5-.2-1.4-.2-1.5-.2-1.3-.2-1.5v-1.4l-.2-1.4V167l-.2-1.3v-10.3l.2-1.3v-2.5l.2-1.3V149l.2-1.2v-1.3l.2-1.2V143l.2-1.2V138zm-3.3-4.4l-.5-1h.4l.3-.2.2-.2h.3l.4-.2h1.2l.3.2h.2l.2.3v.2l.2.2h.2v.4l.2.2v.3h.2v.7l.2.3v1.5l.2.3v1.1h-1v-2.4l-.2-.3v-.8l-.2-.3v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-1.1l-.2.2h-.3l-.3.2-.3.2zm-27 0l.4-1 .8.5.7.5.7.4.7.2.7.3.8.2.8.3 1 .2.7.2 1 .2h.7l1 .2h.8l1 .2h4.6l.7-.2h1l.8-.3h.8l1-.3.7-.2.8-.3.8-.2.8-.3.7-.4.8-.3.7-.4.7-.3.5 1-.7.3-.7.4-.8.4-.7.3-1 .4-.7.3-.7.3-1 .2-.7.2-1 .2h-.8l-1 .2h-1l-.8.2h-4.6l-1-.2h-.8l-1-.2-.8-.2-1-.2-.7-.2-.8-.3-.8-.3-.8-.3-.8-.2-.8-.4-.7-.4-.7-.4z"/>
+      <g id="b">
+        <path fill="#edb92e" d="M363 212c-2-4-.3-9.8.3-11 .3-.8-.6-2.2-1-2.8-13-18.3-13.2-20-4.3-26.8 8-6 26.2-12 39.2-16.2 2.7-2 4.4-5 6.8-7.2-25 1.8-52 12-65.5 23.8-7.2 6.2 1.5 19 12.2 38 6.7 5 9.8 7 12.3 2.3z"/>
+        <path fill="#21231e" d="M362.8 200.7l1 .4v.2l-.2.2v.3l-.2.3v.5l-.2.2v.6l-.2.4v.7l-.2.3v1.6l-.2.4v2.5l.2.4v.4l.2.4v.4l.2.4v.3l.3.4-1 .3v-.4l-.3-.5v-.4l-.2-.4v-.4l-.2-.5v-.8l-.2-.6v-2.9l.2-.4v-1.2l.2-.3v-.4l.2-.2v-.6l.2-.3v-.6l.2-.2v-.2l.2-.2zm-1-2.2l1-.6v.2h.2v.4h.2v.4h.2v.2l.2.2v.4h.2v1.2l-1-.3v-.6l-.2-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2zm-4-27.5l.5 1-.8.5-.7.6-.7.6-.5.6-.6.5-.6.5-.5.6-.5.5-.3.4-.3.5-.3.5v.5l-.3.5v1.7l.2.6.2.8.2.7.4.8.4.8.4 1 .5 1 .6 1 .7 1 .7 1.3 1 1.2.7 1.3 1 1.4 1 1.5 1 1.5 1.3 1.7-.8.5-1.3-1.7-1-1.5-1-1.5-1-1.4-1-1.3-.8-1.2-.8-1.2-.7-1-.6-1-.7-1-.4-1-.6-1-.3-.7-.2-1-.2-.7v-.7l-.2-.7v-1.4l.2-.6.2-.6.2-.6.3-.6.4-.6.5-.5.5-.5.5-.5.6-.6.7-.5.7-.7.7-.6.7-.7zm39-16.2l.7.8h-.2l-1.2.5-1.2.5-1.2.4-1.4.3-1.3.4-1.4.5-1.4.4-1.3.5-1.5.5-1.4.5-1.3.5-1.3.5-1.4.5-1.4.5-1.3.5-1.4.5-1.4.5-1.3.6-1.3.6-1.3.5-1.2.7-1.2.5-1.2.6-1 .5-1.2.6-1 .4-1 .6-1 .6-1 .5-1 .7-.7.6-.7.6-.6-1 .8-.5 1-.6.8-.7 1-.6 1-.6 1-.4 1-.6 1.2-.6 1.2-.5 1-.7 1.4-.6 1.3-.5 1.3-.6 1.3-.5 1.2-.4 1.4-.5 1.3-.5 1.3-.5 1.4-.5 1.3-.5 1.4-.5 1.4-.5 1.4-.4 1.4-.5 1.3-.4 1.3-.4 1.3-.4 1.3-.5 1.2-.4 1.3-.5 1.3-.4 1.2-.3zm.7.8h-.2.2zm6.6-7v-1l.4.8-.2.2-.3.2-.3.3-.2.3-.2.2-.2.2v.3l-.3.2-.2.2-.2.2-.2.3-.3.3-.2.3-.2.2-.2.3v.3l-.3.2-.2.3-.2.2-.3.2-.2.3-.2.2-.2.2h-.2l-.3.4-.3.2-.2.2-.3.2-.2.2-.3.2-.2.2-.6-.8v-.2l.3-.2.3-.2.2-.2.2-.2.2-.2.3-.2.2-.2.2-.2v-.2l.3-.3.2-.2.2-.2.2-.2v-.2l.3-.2.2-.2.2-.3.2-.3v-.3l.3-.2.2-.2.2-.3.2-.2v-.2l.4-.3.2-.2.2-.2.2-.3.2-.2h.3l.2-.3.4.8zm0-1l1.4-.2-1 1-.4-1zM338.8 172l-.7-.8 1.5-1 1.4-1.2 1.4-1 1.5-1.2 1.5-1 1.7-1 1.7-1 1.7-1 2-1 1.8-1 2-1 2-1 2-.8 2-1 2.2-.7 2-.8 2.3-.8 2.3-1 2.2-.6 2.3-.7 2.3-.6 2.4-.5 2.3-.6 2.4-.7 2.4-.5 2.4-.4 2.4-.4 2.4-.4 2.3-.3 2.3-.3 2.4-.3 2.3-.2v1l-2.3.2-2.3.3-2.3.3-2.3.3-2.4.4-2.3.4-2.4.4-2.3.5-2.3.6-2.3.5-2.3.6-2.3.7-2.2.7-2.2.7-2.2.8-2.2.8-2.2.8-2 1-2 .7-2.2 1-2 1-2 1-1.8.8-1.8 1-1.8 1-1.7 1-1.6 1-1.5 1-1.6 1-1.5 1.2-1.4 1-1.2 1.2zm12.2 37.3l-.5.8-.2-.2-1-1.6-1-1.8-1-1.7-1-1.7-.8-1.7-1-1.6-.8-1.5-.8-1.5-1-1.5-.7-1.5-.8-1.4-.7-1.3-.7-1.4-.5-1.3-.6-1.3-.6-1.2-.4-1.2-.5-1.2-.3-1-.3-1-.4-1.2v-1l-.2-1v-2.8l.3-.8.3-.8.4-.7.5-.8.5-.7.6-.6.8.8-.6.5-.5.6-.4.7-.3.6-.3.7-.2.8v4.5l.4 1v1l.5 1 .4 1 .4 1.3.5 1.2.4 1.2.6 1.3.7 1.3.7 1.4.7 1.4 1 1.4.7 1.5 1 1.5.8 1.5 1 1.6.8 1.7 1 1.7 1 1.7 1 2 1 1.6h-.3zm-.5.8l-.2-.2.2.3zm12.5 1.3v1l.5-.2-.3.4-.2.4-.3.4-.3.3-.3.2-.2.3-.3.2-.3.2h-.3l-.5.2h-2.1l-.4-.2-.5-.2-.4-.2-.3-.2-.5-.2-.4-.3-.5-.3-.5-.3-.4-.4-.6-.3-.5-.3-.5-.4-.6-.4-.5-.4-.6-.4-.5-.5.5-.8.7.4.5.3.6.5.6.3.5.5.4.4.5.2.4.3.4.3.5.3.4.3.4.2.5.2.4.2h.5l.3.2h1.5l.2-.2h.3l.2-.3.2-.2.3-.2.2-.3v-.3l.4-.4.2-.4.4-.4zm-.4.3v-.4h.4l-.4.3zm.4.6v-1l.5.3-.5.6zm.5-.7l.3.6h-.8l.5-.7z"/>
+        <path fill="#edb92e" d="M359 213.6a34 34 0 01-1-4.7c-.7-2.8-.4-5.7.5-8.3-3-4.2-6.4-8.8-8.8-13.3-1.7-3.3-3-7-2-10.6 1-4 4.5-6.6 7.6-9 3.7-2.8 8.6-5.3 13.6-7.5 11-4.6 20-7 26.5-7l-4.2 3.8c-12 4-26.4 9.2-33.3 14.5-9 6.8-8.6 8.4 4.3 26.7.4.6 1.3 2 1 2.7-.6 1.2-1.8 7.2 0 11.4-1 2-2.6 1-4.2 1.2z"/>
+        <path fill="#21231e" d="M357.4 209l1-.2v.7l.2.2v.7h.2v.8l.2.3v.3l.2.3v.7h.2v.6h.2l-1 .4v-.3l-.2-.3v-.2l-.2-.3v-.5l-.2-.3v-.6h-.2v-.5l-.2-.3v-.7l-.2-.3v-.2zm1-.2zm-.4-7.8l1-.6v.5l-.2.4v.2l-.2.2v1l-.2.2v.8l-.2.2v4.7l.2.3-1 .2v-.6l-.2-.2V203h.2v-1l.2-.2v-.5l.2-.2v-.2l.2-.3v.5zm1-.6v.5-.6zm-9.7-12.8l1-.5v.6l.3.4.3.4v.4l.4.5.2.4.3.4v.5l.4.4.3.4.2.4.2.4.3.4.2.4.3.5.3.4.3.3.3.4.2.4.2.5.3.5.3.4.3.4.3.4.3.4.2.4.3.4.2.4.3.4.3.4.3.4.3.4-1 .6-.2-.4-.3-.4-.3-.4-.3-.4-.4-.4-.3-.4-.2-.4-.2-.4-.3-.4-.3-.4-.3-.5-.4-.4-.3-.3-.3-.4-.2-.4-.3-.5-.3-.5-.3-.4-.4-.4-.3-.4-.2-.5-.2-.4-.3-.5-.2-.4-.3-.4-.3-.4-.2-.4-.3-.5-.2-.4-.2-.5-.3-.5-.2-.4zm-2-11l1 .4-.2.3v4.1l.2.4v.3l.2.3v.7l.3.3v.4l.2.4v.6l.3.3v.3l.3.3v.2l.3.3v.3l.2.3-1 .6v-.3l-.2-.3-.2-.3v-.3l-.3-.4v-.3l-.3-.3v-.3l-.3-.3-.2-.3v-.3l-.2-.2v-.4l-.2-.3v-.3l-.2-.3v-.7l-.2-.4V180l-.2-.4V178l.2-.2v-.7l.2-.3zm7.7-9.2l.6.8-.3.2-.3.3-.3.2h-.3l-.3.3-.2.3-.2.2-.3.3-.3.3-.3.2-.3.3-.2.2-.3.3-.4.3-.2.2-.3.3v.3l-.4.3-.2.3-.2.2-.3.3-.3.3-.2.3-.2.4v.3l-.3.3-.2.3v.3l-.3.3v.3l-.2.3v.4l-1-.3v-.4l.2-.4v-.4l.2-.4.2-.4v-.3l.3-.4.2-.2.2-.3.2-.3v-.3l.4-.5.2-.3.2-.2.3-.3.4-.3.2-.3.3-.2.2-.2.3-.3.2-.3.3-.2.3-.3.3-.2.3-.3.2-.2.3-.2.3-.3.3-.2h.4l.3-.4.3-.2zm13.7-7.5l.4.8-.4.2-.4.2-.5.2-.5.2-.4.2-.5.2-.4.3-.6.2-.5.2-.5.2h-.5l-.4.3-.5.3-.3.2-.4.2-.5.3-.4.2-.4.2-.4.3-.5.2-.3.2-.4.3-.4.2-.5.2-.4.2-.2.3-.4.2-.4.2-.4.2-.3.3-.4.3-.4.2-.6-.8.3-.3h.4l.4-.4.4-.3.4-.2.4-.2.4-.2.4-.3.4-.2.4-.2.4-.2.4-.3.5-.2.5-.2.4-.2.4-.2.4-.3h.4l.5-.3.4-.3.6-.2.4-.2.5-.2.5-.3.4-.2.5-.2h.4l.4-.3.5-.2.5-.2.4-.2h.5zm0 0zm27-6.4l-.6-.7.5.7H394l-.6.2h-1.8l-.7.2h-.8l-.7.2h-.7l-.8.3-.8.2h-.7l-.8.2-.8.2-1 .2-.8.2-.8.3-1 .3-.8.3-1 .3-.8.2-1 .3-.8.3-1 .3-1 .5-1 .3-.8.4-1 .4-1 .4-1 .4-1 .4-.5-1 1-.4 1-.4 1-.4 1-.4 1-.3 1-.5 1-.3 1-.4 1-.3.8-.3 1-.3.8-.4 1-.2.8-.3h1l.8-.4.8-.2.8-.2.8-.2h.8l.8-.3.8-.2h.7l.7-.2h.8l.7-.2h1.4l.5-.2h1.9l.4.8zm-.3-1h1.4l-1 1-.4-1zm-4.4 4l4-3.7.8.6-4 3.8-.3.2-.5-1zm.7.8l-.2.2.2-.2zM358.3 172l-.6-1 .7-.5.7-.5 1-.5.7-.5.8-.5 1-.5.8-.4 1-.5 1-.4.8-.5 1.2-.4 1-.5 1-.3 1-.5 1.2-.5 1-.4 1.3-.5 1-.4 1.2-.5 1-.5 1.3-.5 1-.4 1.3-.4 1.2-.5 1.2-.4 1.2-.4 1.2-.5 1-.4 1.3-.3 1.2-.4 1-.3 1.2-.4.3 1-1.2.3-1 .3-1.3.4-1 .4-1.3.5-1.2.4-1.2.3-1.2.4-1 .4-1.2.6-1.2.4-1 .4-1.3.5-1 .3-1.3.5-1 .4-1.2.5-1 .4-1 .6-1.2.5-1 .5-1 .5-1 .5-1 .5-.8.5-1 .4-.8.4-.8.5-.8.4-.7.5-.7.4-.7.5zm4.4 26l-.8.5-1.3-1.7-1-1.5-1-1.5-1-1.4-1-1.3-.8-1.2-.8-1.2-.7-1-.6-1-.7-1-.4-1-.5-1-.4-.7-.2-1-.2-.7v-.7l-.2-.7v-1.4l.2-.6.2-.6.2-.6.3-.6.4-.6.5-.5.5-.5.5-.5.6-.6.7-.5.7-.7.7-.6.7-.7.6 1-.8.5-.7.6-.7.6-.5.6-.6.5-.6.5-.5.6-.5.5-.3.4-.3.5-.3.5v.5l-.2.6v2.2l.3.8.3.7.4.8.4.8.4 1 .6 1 .5 1 .7 1 .7 1.3 1 1.2.7 1.3 1 1.4 1 1.5 1 1.5 1.3 1.7zm1 3l-1-.3v-1h-.2v-.2l-.2-.2v-.2h-.2v-.4l.7-.7.2.2v.4h.2v.2l.2.2v.2l.2.2v.4h.2v1.4zm.2 11.6l-1-.5v.6l-.2-.4-.2-.5v-.4l-.2-.4v-.6l-.2-.4v-.5l-.2-.4v-5.4l.2-.4v-.7l.2-.4v-.5l.2-.3v-.4l.2-.2 1 .3v.2l-.2.2v.6l-.2.2v.6l-.2.3v1.1l-.2.4v5.1l.2.4v.8l.3.4v.4l.2.4.2.4v.4zm0-.4v.4-.4zm-5 1v1-1h.2l.2-.2h1.4v.2h1.5l.2-.2h.2v-.2h.2v-.2l.2-.2.2-.3 1 .6-.2.2-.2.2v.2l-.2.2h-.2v.2l-.3.2h-.4l-.2.2h-.3v.2h-3v-1zm0 1v-1l.6.2-.5.7zm.6-.8l.2.7h-.7l.6-.6z"/>
+        <path fill="#edb92e" d="M468 132.2c.3-2.3 0-2-.3 1.6-.3-.7-.8-1-1.4-1-1 0-1.7 1.6-1.8 5.2l.2 2.8c-33-.7-52.7 4.3-57.7 14-4.2 7.8 3 21 13.6 36 1.3 1.8 1.2 1.6 0 3-1.8 2.3-3.8 6-2.3 9.2a24.3 24.3 0 01-21 1.5c-1-3-3.4-4.4-5.4-5.8-.5-.2-2-1-2-1.4l-10.2-31.6c-9.5-30.7 75.3-33.5 88.3-33.5z"/>
+        <path fill="#21231e" d="M467.3 134l1-.4-1 .2V132h.2v-1.2l.2-.2.6-.3.3.3v1.6h-1V131l.4.2h.6v-.2 1l-.2.2v1.8h-1zm1 0l-.2 1.6-.7-1.5h1zm-2-.7v-1h.7v.2h.4v.2h.2v.2h.2v.2h.2v.2h.2v.2l-1 .5v-.2h-.2v-.2h-.2v-.2h-.4zm0 0zM465 138h-1v-1.8l.2-.3v-.9l.2-.3v-.7h.2v-.3l.2-.3.2-.3.2-.2h.2v-.2h.2v-.2h.5v1h-.2v.2h-.2v.2l-.2.2v.3l-.2.3v.6l-.2.2v2l-.2.3v.4zm-1 0zm.7 3.3v-1l-.5.5v-2.3h-.2v-.4l1-.2v1.8l.2.2v1l-.5.5zm.5-.5v.5h-.5l.5-.5zM407.4 155l-1-.5.7-1 .7-.8.7-1 .8-.7 1-.8 1-.8 1-.8 1-.7 1.3-.7 1.2-.7 1.4-.6 1.6-.6 1.5-.5 1.7-.7 1.7-.5 1.8-.4 2-.5 1.8-.5 2-.3 2.2-.4 2.2-.3 2.2-.2 2.4-.3 2.4-.2 2.5-.2h2.5l2.7-.2h2.7l2.8-.2h9v1H453l-2.8.2h-2.6l-2.6.2-2.5.2-2.4.2-2.3.3-2.2.2-2.2.3-2 .4-2 .3-2 .4-1.8.4-1.8.4-1.7.5-1.6.5-1.5.6-1.5.5-1.3.5-1.3.7-1.2.6-1 .7-1 .7-1 .7-1 .7-.6.8-.7.8-.6.8-.6 1zm13.6 35.5l-.8.6-1-1.3-1-1.4-1-1.4-1-1.5-.8-1.3-.8-1.4-1-1.3-.7-1.3-.8-1.3-.8-1.4-.7-1.2-.7-1.3-.6-1-.6-1.3-.5-1.2-.5-1.2-.5-1.2-.4-1-.5-1-.3-1.2-.3-1-.3-1-.2-1.2v-1l-.2-1V158l.3-.8.3-1 .2-.7.3-.8 1 .5-.4.7-.2.7-.2.8-.2.8v4.5l.2 1 .3 1v1l.5 1 .3 1.2.4 1 .5 1.2.5 1 .5 1.2.6 1.2.6 1.2.6 1.3.7 1 .7 1.4.8 1.3.8 1.3.8 1.3 1 1.3.8 1.4 1 1.3.8 1.4 1 1.4 1 1.5zm0 3.8l-.8-.7.2-.3.2-.2h.2v-.2l.2-.2v-.4l-.2-.2v-.2h-.2v-.3h-.2v-.3h-.2l.8-.7.2.3.2.3v.2h.2v.4h.2v.2l.2.2v1l-.2.2v.2h-.2v.2l-.2.2-.2.2-.2.3zm-2.5 9l-.4-.8-.2.7v-.3l-.2-.5v-.3l-.2-.3v-3.5l.2-.3v-.3l.2-.4.2-.3v-.3l.2-.3.2-.3v-.3l.3-.2v-.3l.3-.2.2-.3v-.2l.3-.3.2-.2v-.3l.3-.2.2-.2.8.7-.2.2-.2.2v.2h-.3v.3l-.3.3-.2.2v.3l-.3.3v.3l-.2.2-.2.3v.7l-.2.2v.2l-.2.3v.6l-.2.4v2.7l.2.3.2.3-.3.6zm.3-.5v.4l-.3.2.3-.6zm-22 1.8l1-.3-.2-.3.6.2.7.3.5.2.6.2h.8l.6.2.6.2h.7l.6.2h5.7l.7-.2h.5l.7-.3h.6l.7-.2.6-.2.7-.2.7-.2.6-.2.6-.3.6-.3.6-.2.7-.4.6-.3.5 1-.6.2-.7.4-.6.4-.7.2-.6.3-.7.2-.6.2-.6.2-.7.2-.6.2h-.6l-.7.3h-.7l-.6.2h-.7l-.7.2h-5l-.7-.2h-.7l-.6-.3h-.7l-.7-.3-.6-.3-.7-.3-.6-.2-.8-.3-.3-.4zm.4.3l-.2-.2v-.2l.2.3zm-5.6-5.8l.6-1 .2.2.2.2h.2l.2.2.2.2h.2l.2.2v.2h.3v.3h.3l.2.3h.2l.2.3.3.3.2.2.2.2.2.2v.2l.3.2v.2l.3.2.2.2v.2l.3.3.2.2.2.2v.2l.3.3v.3l.2.3-1 .3-.2-.2v-.3h-.2v-.3l-.2-.3-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.3-.2-.2-.2-.3-.3-.2-.2-.3-.3h-.2l-.2-.3v-.2l-.3-.2h-.2v-.3h-.3l-.2-.2h-.2l-.2-.2h-.2l-.2-.3h-.2l-.2-.2h-.2zm-2-1.7l.8-.3h.2v.2h.2l.2.2h.2v.2h.4v.2h.2l.2.2h.2l-.6 1-.2-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2zm-10.2-31.7l1-.3.2 1 .3 1 .2.8.3 1 .3 1 .3.8.4 1 .3 1 .3 1 .3 1 .3 1 .3.8.2 1 .4 1 .3 1 .2 1 .3 1 .3 1 .4 1 .3 1 .3 1 .3 1 .5 1 .3 1 .3 1 .5 1 .3 1 .3 1 .4 1.2.4 1 .3 1 .4 1.2-1 .3-.3-1-.2-1.2-.3-1-.4-1-.2-1-.3-1-.3-1.2-.4-1-.3-1-.3-1-.4-1-.3-1-.3-1-.3-1-.4-1-.4-1-.3-1-.4-1-.3-1-.3-.8-.3-1-.4-1-.3-1-.3-1-.3-.8-.3-1-.2-1-.3-1-.3-.8-.3-1-.4-.8-.2-1zm88.2-33.6h1l-.5.5h-5.4l-2.5.2h-2.8l-3 .2-3.3.2-3.5.2-3.7.3-3.8.3-4 .4-4 .5-4 .6-4.2.6-4 .7-4.2 1-4 .8-4 1-3.7 1-3.7 1.3-3.4 1.4-3.3 1.4-3 1.5-2.6 1.6-2.3 1.7-2 2-1.6 1.8-1.2 2.2-.8 2.2-.4 2.3v2.5l.7 2.7-1 .3-.6-2.8v-2.8l.3-2.6 1-2.4 1.2-2.2 1.8-2 2-2 2.5-2 2.7-1.6 3-1.5 3.3-1.6 3.5-1.3 3.6-1 4-1.2 3.8-1 4-1 4-.7 4.2-.6 4.2-.6 4-.6 4-.5 4-.4 4-.4 3.7-.4 3.5-.2 3.3-.2 3-.2h3l2.4-.2h5.4l-.6.4zm1 0v.5h-.5l.7-.5zm-.5 0h-.4.5zm.7 0v.5h-.6l.7-.5z"/>
+        <path fill="#fff" d="M405 190.2c3.5 0 6.4 2.8 6.4 6.4 0 3.5-3 6.4-6.4 6.4s-6.4-3-6.4-6.4c0-3.6 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M412 196.6h-1a6 6 0 00-3.4-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.6zm-7 7v-1c2.2 0 4.3-1.4 5.2-3.4a6 6 0 00.7-2.6h1c0 2.3-1.4 4.6-3.4 6a7 7 0 01-3.6 1zm-7-7h1c0 2.2 1.4 4.3 3.4 5.3a5.8 5.8 0 002.6.5v1a7 7 0 01-5.8-3.3 7 7 0 01-1-3.6zm7-7v1a6 6 0 00-5.2 3.3 6 6 0 00-.7 2.6h-1c0-2.4 1.4-4.7 3.4-6a6.8 6.8 0 013.6-1z"/>
+        <path fill="#fff" d="M350.8 203.6c3.2 0 6 2.7 6 6s-2.8 6-6 6c-3.3 0-6-2.7-6-6s2.7-6 6-6z"/>
+        <path fill="#21231e" d="M357.2 209.6h-1c0-2-1-4-2.8-4.8a5.4 5.4 0 00-2.6-.7v-1a7 7 0 015.4 3 6.5 6.5 0 011 3.6zm-6.4 6.4v-1c2 0 4-1.2 4.8-3a5.5 5.5 0 00.6-2.4h1c0 2-1.2 4.3-3 5.4a6.4 6.4 0 01-3.4 1zm-6.5-6.4h1c0 2 1.2 4 3 4.8.8.4 1.6.6 2.5.6v1a6.6 6.6 0 01-5.5-3 6.5 6.5 0 01-1-3.4zm6.5-6.5v1c-2 0-4 1.3-5 3a5.5 5.5 0 00-.5 2.6h-1c0-2.2 1.2-4.4 3-5.5a6.4 6.4 0 013.5-1z"/>
+        <path fill="#fff" d="M345 192.7c3.4 0 6 2.7 6 6s-2.6 6-6 6c-3.2 0-5.8-2.7-5.8-6s2.6-6 6-6z"/>
+        <path fill="#21231e" d="M351.5 198.7h-1c0-2-1.2-4-3-5a5.3 5.3 0 00-2.4-.5v-1c2.3 0 4.4 1.2 5.5 3a6.5 6.5 0 011 3.5zM345 205v-1c2 0 4-1 4.8-2.7a5.5 5.5 0 00.7-2.6h1c0 2.2-1.2 4.3-3 5.5a6.4 6.4 0 01-3.4 1zm-6.3-6.3h1c0 2 1.2 4 3 4.8a5 5 0 002.4.6v1c-2 .2-4.2-1-5.3-3a6.5 6.5 0 01-1-3.3zm6.4-6.5v1c-1.8 0-3.7 1-4.6 2.8a5.5 5.5 0 00-.7 2.7h-1c0-2.2 1.2-4.4 3-5.5a6.4 6.4 0 013.4-1z"/>
+        <path fill="#fff" d="M339.8 181.7c3.3 0 6 2.7 6 6s-2.7 6-6 6-6-2.7-6-6 2.7-6 6-6z"/>
+        <path fill="#21231e" d="M346.2 187.7h-1c0-2-1.2-4-3-5a5.4 5.4 0 00-2.4-.5v-1c2.2 0 4.3 1.2 5.4 3a6.5 6.5 0 011 3.5zm-6.4 6.4v-1c2 0 3.8-1 4.7-2.7.5-.8.7-1.7.7-2.6h1c0 2-1 4.3-3 5.4a6.4 6.4 0 01-3.4 1zm-6.4-6.3h1c0 2 1 4 3 4.8.7.4 1.5.6 2.4.6v1a6 6 0 01-5.4-3 6.5 6.5 0 01-1-3.3zm6.4-6.5v1c-2 0-4 1.2-4.8 3a5.5 5.5 0 00-.6 2.5h-1c0-2.2 1-4.4 3-5.5a6.4 6.4 0 013.4-1z"/>
+        <path fill="#edb92e" d="M444.3 202.2c3.4-.3 2.5 5.8 2 7.2-1 1.8-1.8 1.8-3 .2-.8-1.3-2.4-7.2 1-7.5z"/>
+        <path fill="#21231e" d="M446.6 209.6l-1-.4h.2v-.7l.2-.3v-.5l.2-.3V204h-.2v-.3l-.2-.2v-.2l-.2-.2h-.2l-.3-.2h-.2l-.2-.2h-.3v-1h.7l.3.2h.3l.3.2v.2l.3.3.2.2.2.3v.2l.2.3v.7l.2.3v3.7l-.2.3v.5l-.2.3v.5h-.2zm-3.7.3l.8-.7.2.3v.2h.2v.2h.2v.2h.7l.2-.2v-.2h.2v-.2h.2v-.3l1 .3v.2l-.2.2v.3h-.2v.2l-.2.2-.2.2h-.4v.2H444v-.2h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.3h-.3zm1.2-8.4v1h-.4v.2h-.3v.2h-.3v.3l-.2.2v.4h-.2v3.2l.2.2v.6l.2.2v.3l.2.2v.2l.2.2v.2h.2l-1 .7v-.5l-.2-.2v-.2l-.2-.4v-.2l-.2-.3v-.2l-.2-.3v-.7l-.2-.3v-3l.2-.3v-.3l.3-.3.2-.2.2-.3h.2l.2-.3.3-.2h.4l.2-.2z"/>
+        <path fill="#fff" d="M444.5 205.5c8-.6 6 13.8 4.4 17-2 4.2-4 4.3-6.7.5-2-3-5.8-17 2.2-17.5z"/>
+        <path fill="#21231e" d="M449.4 222.7l-1-.4.2-.3.2-.4v-.4l.3-.5.2-.5v-.6l.2-.6.2-.7V217l.2-.7v-5.1l-.3-.7v-.6l-.3-.7-.3-.6-.3-.5-.3-.5-.3-.4-.3-.4-.4-.4-.5-.2-.5-.2-.5-.2h-1.4v-1h1.5l.6.2.7.2.5.4.6.4.4.4.4.5.4.7.3.6v.7l.3.6.2.7v.7l.3.8v6.3l-.3.7v.7l-.2.6v.6l-.3.6v.5l-.3.5v.4l-.3.3zm-7.5.5l.8-.5.2.3.2.3.3.3.2.3h.2v.4h.3l.2.3.2.2h.4l.2.2h1v-.2h.3l.2-.3v-.2l.2-.2.2-.2h.2l.2-.4v-.3l.3-.3.3-.3.2-.4 1 .4-.3.4-.2.5-.2.3-.2.4-.2.3-.2.3-.2.2-.2.2-.2.3-.3.2h-.2v.3h-.4l-.2.2H445l-.4-.2h-.2l-.3-.3v-.2l-.4-.2-.2-.2-.2-.2-.3-.2-.3-.3-.3-.4-.2-.4-.3-.4zm2.5-17.2v-1 1h-.6l-.7.2-.5.2-.5.3-.4.3-.5.4-.3.4-.3.4-.3.6-.2.5v.6l-.2.5v.7l-.2.7v.6l.2.7v1.4l.2.7v.8l.3.7v.6l.3.7.2.6.2.5.2.6.2.7.2.5.2.4.2.4.2.4.2.3-1 .5v-.3l-.3-.5-.2-.4-.2-.4v-.6l-.4-.5-.2-.7-.2-.6-.2-.7-.2-.7v-.7l-.3-.6v-.8l-.2-.7V213l-.2-.7v-.8l.2-.7v-.6l.2-.7v-.7l.4-.6.2-.6.4-.6.4-.5.4-.5.5-.4.6-.3.7-.3.7-.2h.8v1zm0-1v1-1z"/>
+        <path fill="#edb92e" d="M379.7 210.8c3.3-1 4 5 3.6 6.6-.4 2-1.2 2.2-2.7 1-1-1.2-4-6.5-1-7.6z"/>
+        <path fill="#21231e" d="M383.8 217.5l-1-.2v-2.8l-.2-.3v-.7l-.2-.3v-.3l-.2-.2v-.3l-.3-.2-.2-.2-.3-.3-.3-.3h-.3l-.3-.2h-.6l-.4-1h1.5l.2.2.3.2.2.2.3.2.2.3.2.2v.3l.3.3v.4l.2.3v.3l.2.3v.3l.2.4v.6l.2.3v2.5zm-3.5 1l.7-.6h.2v.2h.2l.2.2h.2v.2h.4l.2-.2v-.2h.2v-.6h.2v-.3l1 .2v.4h-.2v.4l-.2.3v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-1v-.2h-.3l-.2-.2h-.2v-.2h-.2l-.2-.2v-.2zm-.7-8.2l.3 1h-.3l-.2.2h-.2v.2l-.2.2v.2l-.2.2v1.8l.2.4v.3l.2.3v.2l.2.3.2.3v.3l.2.3.2.3v.2l.3.2v.2l.2.2.3.3.2.2-.7.6h-.2v-.4l-.3-.2v-.2l-.3-.2v-.3l-.3-.2v-.2l-.2-.3v-.3l-.3-.3v-.4l-.2-.3v-.3l-.3-.3v-.7l-.2-.3V212l.3-.2.2-.3.2-.3.3-.2.2-.2h.2l.4-.3z"/>
+        <path fill="#fff" d="M380.7 214c7.7-2.5 9.2 12 8.4 15.5-1 4.5-2.8 5-6.2 2-2.6-2.4-9.7-15-2-17.5z"/>
+        <path fill="#21231e" d="M389.6 229.6l-1-.2v-.8l.2-.4v-2.9l-.2-.7V223l-.3-.7v-.7l-.3-.8-.2-.7-.2-.6-.2-.7-.3-.7-.2-.6-.3-.6-.3-.4-.4-.5-.3-.4-.4-.3-.4-.4-.4-.4-.5-.2h-.5l-.5-.2h-1.1l-.6.3-.4-1 .7-.2h2.2l.7.2.7.2.5.4.5.5.5.4.4.5.4.5.4.6.3.7.3.6.3.6.3.7.2.8.2.8.2.7v.8l.3.7v1.5l.2.7v4.4zm-7 2.3l.5-1 .5.4.2.2.3.3h.3l.3.3h.2l.3.3h.3l.2.2h1.4l.2-.2.2-.2.2-.3.3-.3v-.6l.2-.2v-.3l.2-.4v-.2l.2-.4 1 .2v.4l-.2.4v.4l-.2.4-.2.3v.3l-.2.3-.2.4v.3l-.3.2h-.2v.3l-.3.2h-.2l-.2.3h-.8l-.3.2h-.5l-.3-.2h-.2l-.3-.2h-.4l-.3-.3-.3-.2h-.3l-.3-.3-.3-.3-.2-.2-.3-.3zm-2-18.5l.3 1-.7.2-.6.3-.4.3-.4.4-.4.4-.3.5-.2.5v.5l-.2.6v2.5l.2.6.2.7.2.6.2.7.3.7v.7l.4.6.3.7.4.6.4.6.3.6.4.6.4.5.3.4.3.4.4.4.2.4.3.3-.5 1-.3-.4-.3-.3-.4-.4-.4-.5-.3-.5-.4-.5-.4-.6-.3-.7-.5-.6-.3-.6-.4-.6-.3-.6-.3-.7-.3-.7-.3-.7-.3-.7-.2-.8-.2-.8v-.7l-.2-.7V218l.2-.7.2-.6.2-.6.3-.5.4-.5.6-.5.6-.4.7-.2.6-.3zm0 .5v-.5.5z"/>
+        <path fill="#edb92e" d="M464.2 137.8c-17.2-1.6-35 .2-52.3 7-14.8 6-13.4 23.2 4.6 47-1.7 3-2.6 6.8-2.7 11h4.8c-1.3-2.8 0-6.4 1.8-9 1-1.5 1.3-1.2 0-3-10.7-15-17.8-28.2-13.6-36 5-9.7 24.6-14.7 57.7-14 0-1 0-1.8-.2-2.7 0 0-.2 0-.3-.2z"/>
+        <path fill="#21231e" d="M412 145.4l-.3-1 1.7-.6 1.6-.6 1.7-.6 1.6-.5 1.6-.4 1.6-.5 1.6-.4 1.7-.4 1.5-.4 1.7-.4 1.6-.4 1.7-.3 1.6-.3 1.8-.3h1.6l1.7-.3 1.7-.2 1.7-.2 1.6-.2h3.3l1.6-.2h11.5l1.6.2h1.6l1.6.3v1l-1.7-.2h-4.9l-1.6-.2h-9.7l-1.6.2H443l-1.5.3-1.7.2-1.6.2-1.6.2H435l-1.7.4-1.6.3-1.7.3-1.6.4-1.6.3-1.7.5-1.5.4-1.6.4-1.8.5-1.6.6-1.6.6-1.7.6-1.6.6-1.6.6zm5 46.7l-1-.4.2.5-1.7-2-1.5-2.3-1.5-2-1.3-2.2-1.3-2-1.2-2-1-2-1-2-1-2-.7-1.7-.6-1.8-.5-1.8-.6-1.7-.4-1.6-.3-1.7-.2-1.6v-4.4l.2-1.3.3-1.3.4-1.2.5-1.2.5-1.2.7-1 .8-1 .8-1 1-.7 1-.8 1.3-.8 1.4-.6 1.3-.5.4 1-1.2.5-1.2.6-1 .7-1 .8-1 1-1 .8-.6 1-.7 1-.5 1-.5 1-.3 1.2-.3 1.2-.2 1.2v3.8l.2 1.5.3 1.7.3 1.6.5 1.6.6 1.6.7 1.8.8 1.8 1 2 .8 1.8 1 2 1.2 2 1.2 2 1.4 2 1.4 2.2 1.5 2 1.7 2.3v.6zm0-.5l.2.3-.2.3v-.5zm-3 11v1l-.6-.6v-2.5l.2-.4v-1l.2-.4v-.7l.2-.5v-.4l.2-.2v-.4l.2-.3v-.3l.2-.3v-.4l.2-.3v-.3l.2-.3v-.3l.3-.3v-.3l.2-.2.2-.3v-.3l.3-.3v-.4l1 .5v.4l-.3.2v.3l-.2.2-.2.3v.3l-.2.3v.4l-.2.3v.3l-.2.4v.3l-.2.3v.3l-.2.4v.7l-.2.3v.8l-.2.4v.8l-.2.4v1.4l-.2.4v.7l-.5-.6zm0 1h-.6v-.6l.5.5zm4.3-.4l1-.4-.5.8h-4.6v-1h4.6l-.5.7zm1-.4l.3.7h-.8l.4-.7zm1-9l.7.6-.2.2v.3l-.2.2-.2.2v.2l-.3.3v.4l-.2.3-.2.2v.3l-.2.3v.2l-.2.3v.7l-.2.2v.5l-.2.3v2.2l.2.3v.4l.2.2-1 .5v-.5l-.2-.3v-.7l-.2-.3v-2.7l.2-.3v-.3l.2-.2v-.3l.2-.3v-.3l.2-.4v-.3l.2-.3.2-.3v-.2l.2-.3.2-.3v-.3l.3-.3v-.3h.3l.2-.3zm0-2.5l.7-.5.2.3.2.3v.2h.2v.4h.2v.4l.2.2v.5l-.2.2v.2h-.2v.2l-.2.2v.2h-.2v.3l-.2.2-.8-.6v-.2l.2-.2.2-.2v-.2h.2v-.4h.2v-.2h-.2v-.2l-.2-.2v-.3h-.2v-.3h-.2zm-13.8-36.5l1 .5-.4.7-.2.7-.2.8-.2.8v4.5l.2 1 .3 1v1l.5 1 .3 1.2.4 1 .5 1.2.5 1 .5 1.2.6 1.2.6 1.2.6 1.3.7 1 .7 1.4.8 1.3.8 1.3.8 1.3 1 1.3.8 1.4 1 1.3.8 1.4 1 1.4 1 1.5-.8.6-1-1.3-1-1.4-1-1.4-1-1.5-.8-1.3-.8-1.4-1-1.3-.7-1.3-.8-1.3-.8-1.4-.7-1.2-.7-1.3-.6-1-.6-1.3-.5-1.2-.5-1.2-.5-1.2-.4-1-.5-1-.3-1.2-.3-1-.3-1-.2-1.2v-1l-.2-1V158l.3-.8.3-1 .2-.7.3-.8zm57.7-13.7h1l-.5.5h-14.5l-2.6.2H445l-2.5.3-2.4.2-2.3.3-2.2.2-2.2.3-2 .4-2 .3-2 .4-1.8.4-1.8.4-1.7.5-1.6.5-1.5.6-1.5.5-1.3.5-1.3.7-1.3.6-1 .7-1 .7-1 .7-.8.7-.8.8-.7.8-.6.8-.6 1-1-.5.7-1 .7-.8.7-1 .8-.7 1-.8 1-.8 1-.8 1-.7 1.2-.7 1.3-.7 1.4-.6 1.6-.6 1.5-.5 1.7-.7 1.7-.5 1.8-.4 2-.5 1.8-.5 2-.3 2.2-.4 2.2-.3 2.2-.2 2.4-.3 2.4-.2 2.5-.2h2.5l2.7-.2h2.7l2.8-.2h9l-.6.6zm1 0v.5h-.5l.5-.5zm-1-2.3l.7-.7v1.9h.2v1h-1v-2.3l-.2-.2v-.4.3zm.7-.7v.3-.2zm-1.2-.4l.8.7v-.6.2h.2v.2l-.7.7v-.4h-.2v-.6zm0 .7l-.3-.2.3-.4v.7zm.8 0l-.8-.6h.4l.4.7zm-.4-.7h1l-.6.8-.4-.7z"/>
+        <path fill="#fff" d="M380.6 142.7c3.4 0 6 2.7 6 6s-2.6 6.3-6 6.3-6.2-2.7-6.2-6.2a6 6 0 016.2-6z"/>
+        <path fill="#21231e" d="M387.2 148.8h-1c0-2-1.2-4-3-5a5.6 5.6 0 00-2.6-.6v-1c2.2 0 4.5 1.2 5.6 3a6.7 6.7 0 011 3.6zm-6.6 6.7v-1c2 0 4-1.2 5-3a7 7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2 1.2 4.2 3 5a5.6 5.6 0 002.6.7v1a6.6 6.6 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.6-6.7v1.2c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1c0-2.2 1-4.4 3-5.6a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M392.6 138.7c3.4 0 6.2 2.8 6.2 6.2 0 3.3-2.8 6-6.2 6a6 6 0 01-6-6c0-3.5 2.6-6.3 6-6.3z"/>
+        <path fill="#21231e" d="M399.3 145h-1c0-2.2-1.3-4.3-3.2-5.2a5.6 5.6 0 00-2.4-.6v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.7zm-6.7 6.6v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.7-2.7h1c0 2.2-1.2 4.4-3.2 5.6a6.6 6.6 0 01-3.4 1zM386 145h1c0 2 1.2 4 3 5a5.6 5.6 0 002.6.6v1a6.7 6.7 0 01-5.6-3.2 6.7 6.7 0 01-1-3.5zm6.6-6.8v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.7h-1c0-2.4 1.2-4.7 3.2-5.8a6.6 6.6 0 013.4-1z"/>
+        <path fill="#edb92e" d="M394.2 144a261.2 261.2 0 002 2.4c-9.8 5.4-14 11-13 16.7.2 1 3.2 11.5 9.8 31.7 4.5 3 7.8 6 10 8.4-.2.4.8 1.2.5 1.5.7 3-2.8 2.4-5 1.7-1.2-3-4.6-6-6.6-7.5-.5-.2-2-1-2-1.4l-10.2-31.6c-3-9.8 3.6-16.8 14.4-21.7z"/>
+        <path fill="#21231e" d="M396.3 147l-.5-1v.7h-.2v-.2h-.2v-.2l-.2-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2l.8-.7.2.2h.2v.4h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l.2.2v1zm.2-1l.3.6-.5.3.2-1zm-12.7 17l-1 .2v-3.9l.2-.6.2-.5.2-.6.2-.5.3-.5.2-.5.3-.6.4-.5.3-.6.4-.6.5-.5.4-.6.6-.5.5-.5.6-.5.6-.6.5-.5.7-.4.7-.5.6-.5.8-.5.8-.5 1-.5.7-.5.8-.5.5 1-1 .4-.7.5-.8.4-.8.5-.8.4-.7.5-.7.4-.6.5-.7.4-.6.5-.6.4-.5.5-.6.4-.5.6-.5.5-.4.5-.3.5-.3.5-.3.5-.2.5-.2.5-.2.5-.2.5-.2.5v.5l-.2.5v3.1zm0 0zm9.5 31.3l-.6.8-.2-.2-.6-1.8-.7-1.8-.5-1.8-.6-1.7-.5-1.6-.5-1.5-.5-1.5-.5-1.5-.4-1.4-.4-1.2-.4-1.3-.4-1.3-.4-1-.3-1.3-.4-1-.3-1-.3-1-.3-1-.3-.8-.2-.8-.2-.8-.2-.6-.2-.7v-.5l-.3-.5v-.5l-.2-.4v-.8h-.2v-.3h1v.3l.2.3v.4l.2.3v.5l.2.5.2.6.2.7.2.7.2.7.2 1 .3.7.2 1 .2 1 .3 1 .3 1 .4 1 .4 1.2.3 1.2.3 1.3.5 1.3.4 1.4.5 1.5.4 1.5.7 1.6.5 1.6.5 1.7.6 2 .6 1.7.5 1.8-.2-.2zm-.6.8l-.2-.2.2.3zm10.7 8.4l-.7-.6v.6l-.2-.2-.2-.2-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2-.2-.2-.2-.3-.3-.2-.3-.2-.2-.2-.3-.3-.3-.3-.3-.2-.4-.3-.3-.2-.4-.3-.4-.3-.3-.2-.4-.3-.4-.3-.4-.3-.3-.3-.5-.3-.4-.2-.3-.3-.4-.2-.4-.3-.5-.3-.4-.3-.3-.3.6-.7.4.3.4.3h.5l.4.4.3.3.4.3.4.3.5.3.3.2.4.3.3.4.4.3.2.2.4.2.3.3.2.2.3.3.3.3.3.2.4.3.3.2.3.3.3.3.2.2.3.3.3.3.3.3.2.2.3.2.2.3.2.2.2.3v.6zm0-.6l.3.3-.3.4v-.6zm.6 1.6l-1 .2.2-.5v.2h-.2v.2-.2l-.2-.2v-.2h-.2v-1.2l.8.6v-.2h.2v.2l.2.2v.2l.2.2v.7l-.2.2.2-.6zm-1 .2v-.3l.2-.2-.2.6zm-5 1.8l1-.4-.4-.3h.4l.2.2h.7l.4.2h2.3v-.2h.2v-1.4l1-.2v1.6l-.2.3v.2l-.2.2h-.2l-.2.2h-.4l-.2.2h-3l-.3-.2h-.5l-.3-.2h-.5l-.3-.4zm.2.3h-.2v-.3l.2.3zm-6.6-7.5l.6-1 .2.3h.2l.2.3h.2l.3.3.2.3.2.2.2.2.2.2h.2l.2.3.3.2v.3l.4.2.2.3.2.2.3.3.3.2.2.3.3.3.2.2.2.3.2.4.2.3.2.3.2.2.2.3v.3l.3.3v.4l.3.3v.3l-1 .4v-.3l-.2-.4-.2-.3v-.2l-.3-.2v-.3l-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.2-.2-.3-.3-.2-.2-.3v-.2l-.3-.3-.3-.2-.2-.2-.2-.2-.3-.2-.2-.2-.2-.2h-.2l-.2-.3h-.2l-.2-.3h-.2l-.2-.3h-.2l-.2-.2zm.6-1l.3.3-.3-.2zm-2.7-.7l1-.3.2.2h.2v.2h.2v.2h.4v.2h.2l.2.2h.2l-.6 1-.2-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2zm-10-31.7l.8-.3.3 1 .3 1 .2.8.3 1 .3 1 .3.8.4 1 .3 1 .3 1 .3 1 .3 1 .3.8.2 1 .4 1 .3 1 .2 1 .3 1 .3 1 .4 1 .3 1 .3 1 .3 1 .5 1 .3 1 .3 1 .5 1 .3 1 .3 1 .4 1.2.4 1 .3 1 .4 1.2-1 .3-.3-1-.2-1.2-.3-1-.4-1-.2-1-.3-1-.3-1.2-.4-1-.3-1-.3-1-.4-1-.3-1-.3-1-.3-1-.4-1-.4-1-.3-1-.4-1-.3-1-.3-.8-.3-1-.4-1-.3-1-.3-1-.3-.8-.3-1-.2-1-.3-1-.3-.8-.3-1-.4-.8-.2-1zm15-22l-.7.5h.6l-1 .6-1 .4-1 .5-.8.4-1 .5-.7.4-1 .5-.7.5-.8.5-.7.6-.7.6-.5.6-.7.6-.5.6-.6.7-.5.6-.4.7-.4.6-.4.7-.3.7-.3.7-.3.7v.8l-.2.7v.7l-.2.8v2.6l.3.8v1l.3.7-1 .3-.2-1v-.8l-.3-1V159l.2-1 .2-.7.2-.6.3-.8.4-.7.5-1 .4-.6.4-.7.6-.7.5-.7.6-.6.8-.6.6-.6.8-.6.7-.6.7-.5.8-.6 1-.5.7-.5 1-.5 1-.5.8-.5 1-.5 1-.5.6.2zm-.5-.3l.4-.2.2.4-.6-.2z"/>
+        <path fill="#edb92e" d="M356 217l-.4 2c-2.8.5-5.3.7-7.3.3 3.4-3.3 6-4 7.6-2.4z"/>
+        <path fill="#21231e" d="M355 218.8l.4-2 1 .2-.3 2-.3.4-.6-.6zm1 0v.5h-.3l.4-.4zm-8 .2l.7.7-.3-1 .2.2h4.1l.3-.2h1l.2-.2h.7l.2-.2h.3l.2 1h-.8l-.4.2h-.5l-.4.2h-1.3v.2h-3.7l-.4-1zm.2 1l-1-.3.8-.7.2 1zm8.2-3l-1-.2.2.5v-.2h-.6v-.2h-.6l-.2-.2H353v.2h-.6l-.2.3-.2.2h-.3l-.2.2-.3.2-.2.2-.3.2-.3.2-.2.2-.3.2-.4.3h-.3l-.3.4-.3.3-.7-.7.3-.3.3-.3.3-.3.2-.2.3-.2.3-.2.3-.3h.4l.3-.3h.3l.2-.3h.3l.3-.3h.6l.3-.2h.5l.4-.2h1.3l.2.2h.3l.2.2h.2l.2.2.3.3v.5zm0-.5v.5-.5zm-.5.4h.4-.5zm.3-.5l.2.2v.3l-.2-.5z"/>
+        <path fill="#edb92e" d="M355.6 212.3c1.8.4 2 .7 2.7 1 1 0 2.4 0 3.3-1 4-2.2 4 2 2.5 5-1 2.4-.5 5 .6 7 1.2 2.2 1 3.2 0 4l-1.6 1c-1 1.2-1.8 1-2-.6-3.8-1.6-5-5.3-6.2-8.6-1.7-4.7-7.8-5.8.8-7.7z"/>
+        <path fill="#21231e" d="M358.4 212.7v1h-.7v-.2h-.4l-.2-.2h-.4l-.2-.2h-.8l-.3-.2.2-1h.4l.2.2h.4l.2.2h.4v.2h.8v.2h.4zm3-.7l.5 1v-.2l-.2.2h-.3v.2h-.2l-.2.2h-.2l-.2.2h-2.1v-1h2.2l.2-.2h.2v-.2h.2l.2-.2zm0 0zm3 5.6l-.8-.4v-.3l.3-.4v-.5l.2-.2v-.6l.2-.3v-2.2h-.2v-.2h-.2v-.2h-1.2l-.3.2-.3.2-.3.2-.6-1 .4-.2.3-.2h.5l.3-.2h1.8l.2.2.2.2v.2l.2.3v.4l.2.3v2.4l-.2.3v.3l-.2.4v.3l-.2.3v.3l-.3.3zm.6 6.3l-1 .4v-.4l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.5l-.2-.2v-.8l-.2-.2v-2.3l.2-.2v-.3l.2-.3v-.3l.2-.2 1 .4-.2.2v.4l-.2.2v.8l-.2.2v2l.2.2v.5l.2.2v.4h.2v.2l.2.2v.4h.2zm0 4.6l-.6-1h.2v-.2h.2v-1.6l-.2-.3v-.3l-.2-.2v-.2l-.2-.2v-.2l.8-.5v.2l.2.2v.2l.2.2v.2l.2.2v.2l.2.3v1.7l-.2.2v.2h-.2v.2h-.2v.2l-.2.2zm0 0zm-1.6 1l-.8-.7v-.2h.2l.2-.2h.2v-.2h.4v-.2h.2v-.2h.4v-.2h.2l.6.8h-.2v.2h-.4v.2h-.2l-.2.2h-.2v.2h-.2l-.2.2zm-.8-.7v-.2zm-1.8 0l.4-.8.3.4v.5h.2v.2h.4v-.2h.2v-.2h.2l.8.6-.2.2-.2.2-.3.2h-.2v.2h-1.1l-.2-.2v-.2l-.2-.2v-.4h-.2v-.7l.2.4zm.4-.8h.3v.4l-.3-.4zm-7-8l1-.3.2.2v.3l.2.3v.4l.2.3v.3l.3.3.2.4v.3l.2.3.2.3v.3l.3.3v.2l.2.3v.2l.3.3.2.3.2.2v.3l.3.2.2.3.2.2.2.2.2.2h.2l.3.3.3.2.3.2.3.2h.3l.2.2-.4 1-.3-.2-.4-.2-.2-.2-.4-.2-.3-.2-.2-.3-.3-.3-.2-.2-.3-.3-.3-.2-.2-.3-.2-.3-.2-.3-.3-.4-.2-.3-.2-.3-.2-.3v-.4l-.2-.3v-.3l-.3-.3v-.3l-.3-.2v-.3l-.2-.4v-.2l-.2-.3-.2-.3v-.3l-.2-.4v-.3zm1.4-8.4v1l-.6.2-.7.2h-.6l-.5.3h-.4l-.4.3h-.3v.3l-.2.2v.2h-.2v.2l.2.3.3.2.2.3.2.2.2.3.3.2v.3l.4.3.2.3.3.5.2.3.2.4.3.4.2.4v.5l.3.4-1 .3v-.4l-.3-.5-.2-.4-.2-.3-.3-.3-.2-.3v-.2l-.4-.3-.2-.3-.3-.3v-.4l-.3-.2-.3-.3-.3-.4v-.2l-.2-.3-.2-.4v-.6l.3-.3v-.2l.3-.3h.3l.4-.3.4-.3.5-.2h.4l.7-.3.8-.2.7-.2zm0 0zm0 1v-1 1zm0-1z"/>
+        <path fill="#edb92e" d="M357 212.5c3.5 1.2 4-.7 6-.6-.8 5-1.7 7.7-7 5-3-1.6-6.7.7-7.4 2.3-.3.6-2-.6-2.6-2-2.6-5.8 6.7-6.4 11-4.8z"/>
+        <path fill="#21231e" d="M363.6 212l-1-.2.5.6H362v.2h-.3l-.2.2h-.2l-.3.2h-.3v.2h-.7l-.2.2h-2l-.4-.2h-.3l-.3-.2.3-1h.3l.3.2h.4l.2.2h1.3l.2-.2h.2l.2-.2h.5l.2-.2h.2l.3-.2h.5l.2-.2h.4l.6.6zm-.5-.6h.7v.6l-.6-.6zm-7.2 6l.4-1 .5.4.5.2h.4l.4.3h.3l.4.2h1.7l.2-.2.3-.3.2-.3v-.2l.2-.2.2-.3v-.3l.2-.3v-.3l.2-.2v-.4l.2-.4v-.4l.2-.4v-.9l.2-.5 1 .2v.5l-.2.5v.8l-.2.5v.4l-.2.4v.4l-.3.4v.3l-.2.4-.2.4v.2l-.3.3-.2.3-.2.2-.3.2-.2.2h-.2l-.3.2h-.3l-.3.2h-1.6l-.4-.2-.4-.2h-.4l-.4-.3-.5-.3-.5-.3zm-6.8 2l-1-.3h.2v-.3h.3v-.3l.3-.2v-.2l.3-.2h.3l.2-.3.2-.2h.3l.2-.3h.3l.2-.3h.3l.3-.2h.3l.2-.2h.3l.4-.2h2.3l.3.2h.3l.3.2h.2l-.4 1h-.3l-.2-.2h-.5l-.3-.2h-1.8l-.3.2h-.3l-.3.2h-.3l-.2.3h-.2l-.3.2h-.2l-.2.2h-.2v.2l-.2.2h-.2v.3h-.2v.2h-.2v.2h-.2zm-3.5-2l1-.3v.4h.2v.4h.2v.2l.2.2h.2v.2l.2.2h.2v.2h.4v.2l.8.5v.2l-.3.2h-1v-.2h-.2l-.3-.2h-.2v-.2l-.2-.2-.2-.2h-.2v-.3h-.2v-.2h-.2v-.3h-.2v-.4h-.2v-.3zm11.8-5.4l-.3 1-.4-.2h-.5l-.3-.2h-.5l-.5-.2h-5l-.5.2-.4.2h-.4l-.4.3-.4.3-.3.2v.2l-.4.2-.2.2v.3l-.3.2v1.6l.3.4.2.5-1 .5-.2-.5-.2-.6V215l.2-.6.2-.4.2-.4.3-.3.2-.4.3-.3.4-.3.4-.2.4-.2.5-.2h.5l.5-.3h1.1l.5-.2h3.3l.6.2h.5l.4.2.5.2h.3zm0 .5v-.5.5z"/>
+        <path fill="#fff" d="M458.8 124.5c3.4 0 6.2 2.7 6.2 6 0 3.5-2.8 6.3-6.2 6.3s-6-2.8-6-6.2a6 6 0 016-6z"/>
+        <path fill="#21231e" d="M465.5 130.6h-1c0-2-1.3-4.2-3.3-5a5.5 5.5 0 00-2.4-.6v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.2 5-3a5.6 5.6 0 00.6-2.7h1c0 2.3-1 4.5-3 5.7a6.6 6.6 0 01-3.6 1zm-6.6-6.7h1c0 2 1.3 4.2 3.2 5a5.5 5.5 0 002.4.7v1a6.6 6.6 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.6 5.6 0 00-.6 2.6h-1c0-2.2 1.2-4.4 3.2-5.6a6.6 6.6 0 013.4-1z"/>
+        <path fill="#fff" d="M446.3 124.5a6 6 0 016 6c0 3.5-2.6 6.3-6 6.3s-6-2.8-6-6.2c0-3.4 2.6-6 6-6z"/>
+        <path fill="#21231e" d="M453 130.6h-1c0-2-1.3-4-3.2-5a5.5 5.5 0 00-2.5-.6v-1c2.3 0 4.5 1.2 5.6 3a6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.3 5-3a7 7 0 00.6-2.7h1c0 2.3-1.3 4.5-3.2 5.7a6.6 6.6 0 01-3.5 1zm-6.6-6.7h1c0 2 1.2 4.2 3 5a5.5 5.5 0 002.6.7v1a6.5 6.5 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.6 5.6 0 00-.6 2.6h-1a7 7 0 013-5.6 6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M433.8 125.5a6 6 0 016 6c0 3.5-2.6 6.3-6 6.3s-6-2.8-6-6.2 2.6-6 6-6z"/>
+        <path fill="#21231e" d="M440.4 131.6h-1c0-2-1.2-4-3-5a5.5 5.5 0 00-2.6-.6v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.6zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.6-6.7h1c0 2.2 1.3 4.3 3.2 5.2a5.5 5.5 0 002.4.5v1a6.4 6.4 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1c0-2.3 1.3-4.6 3.3-5.7a6.6 6.6 0 013.3-1z"/>
+        <path fill="#fff" d="M422.3 127.7c3.3 0 6 2.8 6 6.2 0 3.3-2.7 6-6 6s-6.2-2.7-6.2-6 3-6.3 6.3-6.3z"/>
+        <path fill="#21231e" d="M429 134h-1a6 6 0 00-3.3-5.2 5.5 5.5 0 00-2.4-.6v-1c2.2 0 4.4 1.2 5.6 3.2a6.7 6.7 0 011 3.5zm-6.7 6.5v-1c2 0 4-1.2 5-3 .4-1 .6-1.8.6-2.6h1c0 2-1.3 4.3-3.3 5.5a6.6 6.6 0 01-3.4 1zm-6.7-6.6h1c0 2 1.2 3.8 3 4.8a5 5 0 002.7.7v1a7 7 0 01-5.7-3 6.7 6.7 0 01-1-3.6zm6.7-6.8v1c-2 0-4.2 1.3-5 3.2a5.7 5.7 0 00-.7 2.5h-1c0-2.5 1.3-4.7 3.3-6a6.6 6.6 0 013.3-.8z"/>
+        <path fill="#fff" d="M346.3 159.4a6 6 0 016 6.2c0 3.4-2.6 6.2-6 6.2s-6-2.8-6-6.2a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M353 165.6h-1c0-2-1.3-4-3.2-5a5.6 5.6 0 00-2.5-.7v-1c2.2 0 4.5 1 5.6 3a6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.2 5-3a7 7 0 00.6-2.7h1c0 2.3-1.3 4.5-3.2 5.7a6.6 6.6 0 01-3.5 1zm-6.7-6.7h1c0 2 1.3 4.2 3.2 5a5.6 5.6 0 002.5.7v1a7 7 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.7-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1a7 7 0 013-5.7 6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M356.8 152.8c3.4 0 6.2 2.7 6.2 6 0 3.6-2.8 6.3-6.2 6.3-3.4 0-6-2.6-6-6a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M363.5 159h-1c0-2.2-1.3-4.2-3-5a5.6 5.6 0 00-2.7-.7v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.6zm-6.7 6.6v-1a5.7 5.7 0 005.7-5.7h1a7 7 0 01-3 5.6 6.6 6.6 0 01-3.7 1zm-6.6-6.7h1c0 2 1.2 4 3 5a5.6 5.6 0 002.6.6v1a7 7 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.6-6.8v1c-2 0-4 1.3-5 3.2a5.7 5.7 0 00-.6 2.5h-1c0-2.3 1.2-4.6 3-5.8a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M368.8 147c3.4 0 6 3 6 6.3 0 3.4-2.6 6.2-6 6.2s-6-2.8-6-6.2a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M375.4 153.3h-1c0-2-1.2-4.2-3-5a5.6 5.6 0 00-2.6-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2 1.4 4 3.2 5a5.6 5.6 0 002.6.7v1a6.9 6.9 0 01-5.7-3.2 6.7 6.7 0 01-1-3.5zm6.8-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.7h-1c0-2.3 1-4.5 3-5.7a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M338.2 169.5a6 6 0 016 6.2c0 3.4-2.6 6.2-6 6.2s-6.2-3-6.2-6.3 2.8-6.2 6.2-6.2z"/>
+        <path fill="#21231e" d="M344.8 175.7h-1c0-2-1.3-4.2-3.2-5a5.6 5.6 0 00-2.4-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1c0 2.3-1.2 4.5-3.2 5.7a6.6 6.6 0 01-3.4 1zm-6.7-6.7h1c0 2 1.2 4 3 5a5.6 5.6 0 002.7.7v1a6.9 6.9 0 01-5.7-3.2 6.7 6.7 0 01-1-3.5zm6.7-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.7 2.7h-1c0-2.3 1.2-4.5 3.2-5.7a6.6 6.6 0 013.5-1z"/>
+        <path fill="#edb92e" d="M408.8 279l22-12.8 23.4 10-22 13z"/>
+        <path fill="#21231e" d="M431 266.7l-22 12.8-.4-1 22-12.7h.5v1zm-.4-1h.5-.4zm23.5 11l-23.3-10 .4-1 23.4 10v1h-.3zm.4-1l1 .5-1 .5v-1zm-22.4 13l22-13 .5 1-22 12.8h-.5v-.8zm.5.8l-.2.2h-.3l.5-.2zm-23.4-11l23.4 10-.4 1-23.3-10v-1h.4zm-.3 1l-1-.4 1-.4v1z"/>
+        <path fill="#c6363c" d="M431 270.6c5.8-.3 10.5 2.5 10.8 6.3.2 3.7-4.2 7-9.8 7.4-5.7.3-10.4-2.5-10.7-6.3-.2-3.6 4.2-7 9.8-7.4z"/>
+        <path fill="#21231e" d="M442.3 277h-1v-.7l-.2-.3v-.6l-.3-.3v-.2l-.3-.2-.2-.3-.2-.3-.3-.2-.3-.3-.2-.2-.3-.2h-.5l-.3-.3-.3-.2-.5-.2-.4-.2h-.3l-.4-.2h-.4l-.5-.3h-.9l-.5-.2h-.8l-.5-.2h-1l-.5.2v-1h3.6l.4.2.5.2h.5l.4.2.5.2.5.2.4.2.3.2.4.2.4.2.4.2.4.3.3.3.4.3.3.3.3.3.2.4.2.3.2.3.2.4v.3l.3.4.2.4v.8zm-10.3 8v-1l.4-.2h.9l.5-.2h.4l.4-.2h.5l.4-.3h.5l.4-.2.4-.2.4-.2.3-.2.4-.2.4-.3.4-.2.3-.2.3-.3.3-.2.3-.3v-.3l.3-.3.2-.4.2-.2v-.3l.2-.2v-.6l.2-.3v-1.1l1-.2v1.6l-.2.4v.3l-.3.5v.3l-.3.4-.3.3v.3l-.4.4-.3.3-.3.3-.3.2-.3.3-.4.3-.4.2-.4.3-.4.3-.4.2-.4.2-.5.2h-.4l-.4.2-.5.2h-.4l-.5.2h-.4l-.5.2h-1zm-11.2-6.8h1v.5l.2.3v.3l.2.3.2.3v.2l.3.3.2.2v.3l.4.2.2.3.3.2.2.2.3.2.4.2.2.2h.4l.4.3h.4l.4.2.4.2h.4l.5.2h1l.4.2h2.3v1H428l-.5-.2h-.4l-.5-.3h-.6l-.4-.3h-.4l-.5-.3-.3-.2-.3-.3-.4-.2-.4-.2-.3-.3-.3-.2-.3-.3-.3-.3-.3-.3v-.3l-.3-.3-.2-.3-.2-.4-.2-.3v-1l-.2-.4zm10.3-8l.2 1h-1.5l-.5.2h-.5l-.5.2-.4.2h-.5l-.4.3-.5.2-.4.2-.3.2-.4.2-.3.2-.3.3-.4.2-.3.3-.3.2-.2.3-.3.2-.2.3-.2.3-.2.4-.2.3v.3l-.3.3v.8l-.2.3v.6l-1 .2V277l.2-.4v-.3l.2-.4v-.5l.3-.3.2-.4.3-.3.2-.3.3-.3.2-.4.4-.3.4-.3.3-.3.4-.3.5-.2.3-.3.5-.3.4-.2.4-.2.6-.2h.4l.5-.2h.5l.5-.3h.5l.5-.2h1.1l.5-.2z"/>
+        <path fill="#edb92e" d="M382.4 270l23.8 9-19.7 13c-5-1.6-9-19-4-22z"/>
+        <path fill="#21231e" d="M406 279.4l-23.8-9 .4-1 23.7 9v1h-.3zm.3-1l1 .4-1 .5v-1zm-20 13.3l19.6-13.2.4.8-19.6 13.3h-.4v-1zm.5 1h-.4.4zm-4.2-23.3l-.4 1h.5l-.4.2-.4.3-.4.4-.2.5-.2.4-.2.7-.2.8v1.5l-.2.8v2.8l.3.8v1l.2.8.2 1 .2 1 .3.7v1l.5 1 .3.7.3.7.5.8.4.6.3.6.4.6.4.5.5.4.4.2.3.3.4.2-.3 1-.6-.3-.5-.3-.5-.3-.5-.5-.4-.6-.6-.6-.4-.7-.4-.7-.4-.7-.4-1-.3-.8-.3-1-.3-.8-.4-1-.2-.8-.2-1-.2-1v-.8l-.3-1v-5.2l.3-.8.2-.7.3-.6.3-.6.4-.5.4-.5.5-.4h.6zm-.5 0h.6-.5zm.4.4l.2-.4-.2.5zm-.3-.4h.6-.5z"/>
+        <path fill="#0c4076" d="M382.8 274.3c5.7-.6 10.5 2 11 5.8.3 3.8-4 7.4-9.6 8-3.6.3-6-3-6.3-6.3-.5-3.4 1-7 4.8-7.4z"/>
+        <path fill="#21231e" d="M394.2 280h-1v-.5l-.2-.3v-.3l-.2-.4-.2-.3-.2-.2-.2-.2-.2-.3-.2-.2-.3-.3-.2-.2-.3-.2-.3-.2-.4-.2-.3-.2-.4-.2-.3-.2h-.4l-.5-.3h-.4l-.4-.2h-.8l-.5-.2h-3.6l-.2-1h3.8l.4.2h.5l.4.2.4.2h.4l.5.3.4.2h.5l.4.3.2.2.4.3.3.2.2.3.3.3.3.3.2.2.3.3.2.3.2.3v.5l.3.4v.2l.2.4v.4zm-10 8.4v-1h1l.5-.2h.4l.6-.2.5-.2h.5l.4-.3.4-.2h.4l.4-.3.3-.3.4-.2.2-.2.4-.3.3-.2.2-.3.3-.2.2-.3.3-.3.2-.3.2-.2.2-.3v-.4l.3-.3v-.8l.2-.4v-1h1v1.6l-.2.3v.3l-.2.4-.2.3-.2.4-.2.3-.2.4-.3.4-.2.3-.3.3-.3.3-.5.3-.3.3h-.4l-.4.4-.4.2-.4.3h-.4l-.4.3-.5.2h-.5l-.4.3-.5.2h-.6l-.5.2h-.7l-.5.2h-.5zm-6.8-6.7h1v.7l.2.3v.3l.2.4v.3l.2.2v.2l.2.3.2.2v.3l.3.2.2.3v.2l.2.2h.2l.2.3h.2l.2.3.2.2h.3l.2.2h.2l.2.2h.2l.3.2h1.4v1h-2.1l-.3-.2h-.4l-.3-.3-.3-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.3-.2-.2v-.2l-.3-.3-.2-.3v-.2l-.3-.4v-.3l-.3-.3-.2-.3v-.3l-.2-.3v-.6l-.2-.3v-.3zm5.4-8v1h-.2l-.4.2h-.8l-.3.3-.3.2-.3.2-.2.2h-.2l-.2.2v.2l-.3.2v.3h-.3v.3l-.2.3-.2.2v.7l-.2.3v.4l-.2.3v2.2h-1V279l.2-.3v-.3l.2-.2v-.3l.2-.3.2-.3v-.4l.3-.3.2-.3.2-.2v-.3l.3-.2.3-.2h.2l.3-.3.4-.2.3-.2h.3l.3-.2h.7l.4-.2h.4z"/>
+        <path fill="#fff" d="M457.5 280.4c1.7 0 3.2 1.5 3.2 3.2 0 1.8-1.5 3.3-3.2 3.3-1.8 0-3.2-1.6-3.2-3.4 0-1.7 1.4-3.2 3.2-3.2z"/>
+        <path fill="#21231e" d="M461.2 283.6h-1v-.6l-.2-.2v-.2l-.2-.3v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.7v-1h1l.3.2.2.2h.2l.3.2v.2h.2v.2h.2v.3h.2v.2l.2.2v.2h.2v.2l.2.3v.5l.2.2v.2zm-3.7 3.8v-1h.4l.3-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2.2-.2v-.2l.2-.2v-1h1.2v.8l-.2.2v.3l-.2.2v.2l-.2.2-.2.3h-.2v.3h-.3l-.2.2-.3.2-.3.2h-.6v.2h-.6v.2h-.3zm-3.7-3.8h1v1h.2v.2l.2.2v.2l.2.2h.2v.2h.2v.2h.2l.2.2h.2v.2h1v1.2h-.7l-.2-.2h-.5v-.2h-.3l-.2-.2-.3-.2-.2-.2h-.2v-.3h-.2l-.2-.3-.2-.3v-.2l-.2-.3v-.3l-.2-.3v-.8zm3.7-3.7v1h-.9l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.3v.5h-.2v.8h-1v-1.2l.2-.2v-.3h.2v-.3l.2-.2.2-.2v-.2h.4v-.2l.2-.2h.2v-.2h.5v-.2h.4v-.2h1z"/>
+        <path fill="#fff" d="M408.7 283c1.8 0 3.2 1.6 3.2 3.4 0 1.7-1.5 3.2-3.3 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.4-3.3 3.2-3.3z"/>
+        <path fill="#21231e" d="M412.4 286.4h-1v-.9l-.2-.2v-.2l-.2-.2v-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.4l-.2-.2h-.8v-1.2h.7v.2h.7v.2h.3v.2h.3v.2h.3l.2.2.2.3h.2l.2.3.2.3v.3h.2v.6l.2.2v.9zm-3.7 3.7v-1h1v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.3h.2v-.5l.2-.2v-.4h1v.8l-.2.2v.3l-.2.2v.3h-.2v.3h-.2l-.2.3h-.2v.2h-.3l-.2.2h-.2v.2h-.3v.2h-.5l-.2.2h-.8zm-3.7-3.6h1v.8h.2v.5h.2v.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.5v.2h.7v1h-1.2v-.2h-.3v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.3h-.3v-.3h-.2v-.3l-.2-.2v-.2l-.2-.3v-.8zm3.7-3.8v1h-.7v.2h-.5v.2h-.2l-.2.2v.2h-.2l-.2.2v.2l-.2.2v.2h-.2v.7l-.2.3v.4h-1v-1l.2-.2v-.3l.2-.3.2-.3v-.3h.3v-.3h.2l.2-.2.2-.2h.2v-.2h.6l.3-.2h.5l.3-.2h.2z"/>
+        <path fill="#fff" d="M407 268.3c1.8 0 3.2 1.4 3.2 3.2 0 1.8-1.4 3.2-3.2 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.4-3.2 3.2-3.2z"/>
+        <path fill="#21231e" d="M410.7 271.5h-1v-.7l-.2-.2v-.3l-.2-.2h-.2v-.4h-.2v-.2h-.2l-.2-.2h-.2l-.2-.2h-.5v-.2h-.4v-1h.8v.2h.3l.3.2h.2l.3.2h.2v.2l.3.2.2.2.3.3.2.3v.3h.2v.4l.2.2v1zm-3.7 3.7v-1h1v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2.2-.2v-.4h.2v-1h1v1.2l-.2.2-.2.3v.3h-.2l-.2.3h-.2v.3h-.3v.2h-.2v.2h-.2l-.2.2h-.5l-.3.2h-.7zm-3.7-3.7h1v.8l.2.2v.4h.2v.2l.2.2v.2h.2v.2h.2v.2h.2l.2.2h.5l.2.2h.5v1h-.9l-.3-.2h-.2l-.3-.2-.3-.2h-.2l-.2-.2-.2-.3h-.3v-.3l-.2-.3v-.3h-.2v-.4l-.2-.2v-.8zm3.7-3.7v1h-.8v.2h-.5l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.3l-.2.2v.7h-1v-1.2h.2v-.6h.2v-.3h.2v-.3h.3l.2-.2v-.2h.3v-.2h.3l.2-.2h.4v-.2h.5l.2-.2h.7z"/>
+        <path fill="#fff" d="M457.3 266.2c1.8 0 3.2 1.4 3.2 3.2 0 1.8-1.4 3.2-3.2 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.6-3.2 3.3-3.2z"/>
+        <path fill="#21231e" d="M461 269.4h-1v-.8h-.2v-.3l-.2-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2h-.2l-.2-.2h-.2l-.3-.2h-.7v-1h1.1l.2.2h.3l.3.2.3.2.2.3h.2v.2h.2v.2h.2v.3h.2v.3l.2.2v.5l.2.2v.7zm-3.7 3.7v-1h1.2v-.2h.2l.2-.2.2-.2v-.2h.2v-.2h.2v-.2l.2-.2v-.5h.2v-.8h1v1.1l-.2.2v.2l-.2.2-.2.3-.2.3-.2.2-.2.2-.2.2h-.2v.2h-.3v.2h-.4l-.2.2h-1zm-3.7-3.6h1v.5l.2.2v.3l.2.2v.2h.2l.2.2v.2h.2v.2h.2l.3.2h.2l.2.2h.7v1h-1l-.3-.2h-.3l-.3-.2-.3-.2v-.2l-.3-.2-.2-.2v-.2h-.2v-.3h-.2v-.6l-.2-.2v-.7l-.2-.2v-.2zm3.7-3.7v1h-.7v.2h-.4l-.2.2h-.2v.2h-.2v.2l-.2.2-.2.2v.4h-.2v.8h-1.2v-.5l.2-.3v-.4l.2-.2v-.2h.2v-.3h.2v-.3h.2v-.2h.3v-.3l.3-.2.3-.2h.3l.2-.2h1z"/>
+        <path fill="#edb92e" d="M371 237.4c2.3-.8 6 4.6 7 4.5 1.2-3-1.2-10.5-5.5-16.3-3-1-3.2-3-3.8-7.3-.2-1.3-2.7-.4-2.7 2 0 2.3-.3 3.6.3 5.6.2.8 0 1.6-.8 2.3 4.5 1.8 5.6 4 5.4 9z"/>
+        <path fill="#21231e" d="M377.6 241.8l1 .3-.5.4h-.4l-.3-.2-.2-.2-.3-.3-.2-.2-.2-.2-.2-.2-.3-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2-.2-.3-.2-.2-.3h-.3l-.3-.3h-.2l-.3-.3-.3-.2h-.2l-.3-.2h-.4l-.2-.2h-.4l-.4-1h1.3l.3.2h.3l.3.2.2.2h.3l.3.3.2.2h.3l.3.3.3.3v.2l.4.2.2.3.3.2v.2l.4.3.2.2.2.2.2.2.2.2.2.2h.2v.2h.3v.2l-.4.3zm1 .3l-.2.4h-.3l.5-.3zm-6.3-15.8l.4-1 .2.2.3.5.4.5.4.6.4.7.4.5.3.6.5.6.3.6.3.6.4.6.3.6.2.6.2.6.2.5.2.6.2.7.2.5v.6l.3.5v.6l.2.4v.5l.2.4v3.3l-.2.3-1-.2v-.3l.2-.3v-3.6l-.3-.5v-.4l-.2-.5-.2-.5-.2-.5v-.5l-.4-.6-.2-.7-.2-.5-.3-.6-.2-.6-.3-.5-.3-.5-.4-.6-.3-.7-.4-.5-.4-.6-.4-.6-.3-.5-.5-.5-.4-.5.3.2zm.4-1l.2.2-.3-.2zm-4.5-6.7h1v.7l.2.3v1l.2.3v.5l.2.3v.5l.2.2v.4h.2v.3l.2.2v.2h.2v.3h.2l.2.2v.2h.2l.2.2h.2l.2.2h.2l.2.2h.2l.3.2-.4 1h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.2l-.2-.3-.2-.2h-.2v-.2l-.3-.2-.2-.2-.2-.2v-.2l-.2-.2v-.2l-.2-.3v-.2l-.2-.2v-.3l-.2-.2v-.9l-.2-.3v-.6l-.2-.3V219l-.2-.5zm-1.7 1.8h-1v-1l.2-.2.2-.2v-.4h.2l.2-.3h.2l.2-.2.3-.2h.2l.2-.2h1.2v.2h.2v.3l.2.2v.2h-1.6v.2h-.2v.2h-.2v.2h-.2v.3l-.2.2v.8zm.3 5.6l-1 .2v-.6l-.2-.2V224h-.2v-3.6h1v4.2l.2.2v.7l.2.2zm-1 2l-.5.8v-1l.2-.2v-.2h.2v-.4h.2v-.4l-.2-.2v-.2l1-.3v1.8h-.2v.4h-.2v.2h-.2v.2l-.2.2h-.2v-.7zm-.5.8l-.8-.3.7-.6v.8zm5 8.6h1-1v-.5l.2-.5v-2l-.2-.3v-.7l-.2-.3v-.6l-.2-.3v-.2l-.2-.3-.2-.3v-.2l-.3-.3v-.2l-.3-.2-.2-.2-.3-.2-.2-.2-.3-.2h-.3l-.3-.3-.2-.2-.3-.2-.4-.2h-.3l-.4-.2.4-1 .4.2.5.2.4.2.3.2.3.2.4.2.3.2.3.2.3.2v.2l.4.3.2.3.3.3v.2l.3.3v.4l.3.3v.3l.3.3v.7l.2.3v.7l.2.4v2.9h-1zm1 0h-1l.5-.5.6.4zm-1 0v-.4h.5l-.4.4z"/>
+        <path fill="#edb92e" d="M368.8 218.5c-.4 1-.6 1.8-.7 3.4 0 1 .5 2 1.2 3 .8 1 1.8 2 3 2.6.8.5 1.6 1.7 2.3 3 .7 1.4 1.2 3 1.2 4 0 3.5.8 6.7 2.4 7.3 1.2.3 1.6.2 2.4 0-.2-.6 0-1.5-.7-2.4a8 8 0 01-1.4-3.7c0-1-.5-1.6-.2-3.3.4-1.2 1-1.6 1-2.7-.3-2-2-6-4.3-6s-3.4-.3-4.6-3.4c-.3-1-1-1.6-1.2-2z"/>
+        <path fill="#21231e" d="M368.6 222l-1-.2v-1.2l.2-.2v-1h.2v-.7h.2v-.4l1 .3v.4h-.2v1l-.2.2v1.5l-.2.3zm1 2.8l-.8.6v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.4h-.2v-.5l-.2-.2v-.7l-.2-.2v-.7h1v1.1h.2v.7h.2v.4h.2v.4h.2v.2h.2v.2zm3 2.4l-.6 1v-.2h-.4v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.3v-.2h-.2l-.2-.2v-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2.8-.6.2.2.2.2v.2h.2l.2.2v.2h.2l.2.2.2.2h.2v.2h.2v.2h.3l.2.2.2.2h.2v.2zm2.4 3.2l-1 .4v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2l-.2-.2h-.2l.5-1h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l.2.2v.2l.2.2v.2h.2v.3h.2v.3h.2zm1.2 4.2h-1v-.8l-.2-.2v-.8h-.2v-.5h-.2v-.4h-.2v-.5h-.2v-.2l-.2-.2 1-.4v.4h.2v.4h.2v.5l.2.2v.3h.2v.6h.2v1h.2v.7zm-1 0zm3 6.8l-.3 1h-.3l-.2-.2-.3-.3v-.2l-.3-.2h-.2l-.2-.3v-.2h-.2v-.3l-.2-.2v-.3l-.2-.2v-.3l-.2-.2v-.5l-.2-.3v-.8l-.2-.3V236l-.2-.3v-1.5h1v2.1l.2.3v1.4l.2.2v.8l.2.2v.2l.2.2v.4l.2.2v.2l.2.2.2.2v.2h.2v.2h.2l.2.2zm1.7.8l1-.3-.5.5h-.4v.2h-1.4l-.2-.2h-.4l.3-1h.7v.2h1.2v-.2l-.3.7zm1-.3v.4h-.5l.4-.5zm-1.7-2l.8-.7h.2v.4h.2v.4h.2v.8l.2.2v1l-1 .4V241l-.2-.2v-.8h-.2v-.2zm-1.5-4h1v.8h.2v.8l.2.2v.2l.2.2v.2h.2v.5h.2v.2h.2v.2l-.7.7v-.2l-.2-.2v-.4h-.2v-.5h-.2v-.2l-.2-.3v-.2l-.2-.2v-.2l-.2-.3v-.4l-.2-.2v-.5zm1 0zm-1.2-3.4l1 .2v3l.2.2-1 .2v-.8l-.2-.2v-2.6zm1-2.5h1v.7h-.2v.6l-.2.2v.2l-.2.2v.2h-.2v.6h-.2v.2l-1-.2v-.4h.2v-.4l.2-.2v-.2l.2-.2v-.2l.2-.2v-.9zm-4-5.5v-1h1.1l.3.2h.2l.2.2h.3l.2.2.2.2v.2l.3.2v.2l.3.2.2.3v.2l.3.3.2.2.2.3v.2l.2.3v.2l.2.3v.3l.2.2v.3l.2.2v.5l.2.3v.8h-1v-1l-.2-.2v-.4l-.2-.3-.2-.4v-.2l-.2-.2v-.3l-.3-.3v-.2l-.2-.2v-.3l-.2-.2-.3-.3-.2-.2-.3-.3-.3-.2-.3-.2h-.8zm-5-3.7l1-.4v.3l.2.3v.2l.2.2v.2l.2.2v.2l.2.2.2.2v.2h.2v.2h.2v.2h.4v.2h.7v.2h1.7v1H373l-.3-.2h-.4v-.2h-.3v-.2h-.3v-.3h-.3v-.2l-.2-.2-.2-.3-.2-.2v-.2l-.2-.2-.2-.4-.2-.2v-.3l-.2-.2zm-.4-2l-1-.5h1.2v.4h.2v.2h.2v.2h.2v.4h.2v.2l.2.2v.2l.2.2-1 .4v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2h.8zm-1-.5l.5-1 .5 1h-1zm.6.2l.4.2-.4-.2zm-.5-.2l.4-1 .5 1h-1z"/>
+        <path fill="#edb92e" d="M360 227l2-1a6 6 0 014-.2c5.5 1.7 8 11.6 1.8 14-1.2.2-2.3-1-3.4-3.3a20.5 20.5 0 00-4-6.8c-1-1-1-2-.4-2.6z"/>
+        <path fill="#21231e" d="M362 225.5l.3 1h-.4v.2h-.4v.2h-.8v.2h-.2l-.2.2-.7-.7.2-.2v-.2h.4v-.2h.8v-.2h.4v-.2h.4zm4-.2l-.2 1h-.5v-.2h-2.1v.2h-.7l-.2.2-.5-1h.4l.3-.2h.8v-.2h1.6l.2.2h.4zm2 15l-.2-1h-.2l.5-.2h.6l.4-.4.4-.3.3-.4.3-.5.2-.4.2-.3.2-.5v-.5l.2-.5V232l-.3-.4-.2-.5-.2-.5v-.5l-.4-.4-.2-.5-.4-.3-.3-.5-.4-.3-.3-.5-.4-.3-.5-.3-.3-.4-.5-.2h-.4l.2-1h.6l.5.3.7.3.4.4.6.3.5.4.5.6.3.4.4.5.3.5.3.6.3.5.3.7.2.6v.6l.3.5v3.4l-.2.5-.2.6-.3.6-.2.5-.3.5-.4.5-.4.4-.4.3-.6.3-.6.3zm0 0zm-4-3.6l1-.4v.4l.2.2.2.3.2.3v.2h.2v.5h.2v.2l.2.2.2.2h.2v.2h.2l.2.2h.8v1.2h-.8v-.2h-.5l-.2-.2-.2-.2-.2-.2-.2-.2v-.2h-.2l-.2-.2v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.3-.3-.3zm0 0zm-4-6.6l.7-.6.2.2v.2h.2l.2.3v.3h.2l.2.3v.2l.2.2h.2v.3l.3.2v.2l.2.2.2.2v.4l.2.2.2.3v.3l.2.2.2.3v.3l.2.3v.3l.3.3.2.4v.3l.3.3v.3l-1 .4v-.6l-.2-.2v-.3l-.3-.2v-.3l-.2-.2v-.5l-.3-.3v-.2l-.2-.2v-.3l-.3-.2-.2-.3v-.2l-.3-.2v-.2h-.2v-.3h-.3v-.3l-.2-.2-.3-.3v-.2l-.2-.2h-.2v-.2l-.2-.2zm0 0zm0-3.4v1l.3-.2v.2h-.2v.8h.2v.4l.2.2.2.2v.2l-.7.7h-.2v-.2l-.2-.2-.2-.2v-.3h-.2V227h.2v-.2h.2l.4-.2zm-.4 0h.4-.4zm.4 1v-1l.3 1h-.3zm.3 0h-.2.3z"/>
+        <path fill="#edb92e" d="M362.8 227.7c5.4-2 9.4 8.3 4.3 10.2-2.6 1-2.8-2.4-3.4-4.3-.7-2.5-6-4-.8-6z"/>
+        <path fill="#21231e" d="M367.3 238.4l-.4-1h.3l.3-.3.3-.2.2-.3.2-.3.2-.3v-.5l.2-.4v-2.7l-.2-.4-.2-.5-.2-.4-.2-.4-.3-.4-.3-.4-.2-.3-.4-.4-.3-.2-.3-.2-.4-.2-.4-.2h-.4l-.3-.2h-1.3l-.4.2-.4-1h.6l.5-.2h1.6l.5.3.5.2.4.2.4.4.5.4.4.4.3.4.3.5.2.4.3.6.3.5.2.6.2.6v.5l.2.5v1.6l-.2.5v.5l-.3.5-.2.4-.3.5-.4.3-.4.4-.4.2-.5.2zM363 234l1-.4.2.2v.6l.2.2v.8l.2.2v.4l.2.2v.2l.2.3.2.3v.2h.2v.2h.2l.2.2h1.2l.3.8h-.3l-.3.2h-1.2l-.2-.2h-.2v-.2l-.3-.2-.3-.3v-.2l-.2-.2v-.2h-.2v-.3l-.2-.2v-.4h-.2v-.8l-.2-.2v-.8l-.2-.2v-.2zm-.4-6.7l.4 1h-.5l-.3.3h-.4l-.2.3h-.2l-.2.2v.2h-.2v.4h.2v.3l.2.2v.2h.3v.3l.3.2h.2l.2.2.2.2.2.2.2.2.2.3.2.3.2.2v.3l.3.2v.6l-1 .3v-.7l-.2-.2h-.2v-.3l-.3-.2h-.2v-.3l-.3-.2-.2-.2-.2-.2-.2-.2v-.2l-.2-.2h-.2v-.3l-.3-.3v-.2l-.2-.2v-.8l.2-.3v-.3l.3-.2.2-.2.3-.3.3-.2h.4l.4-.3.6-.2z"/>
+        <path fill="#0c4076" d="M363.4 229.3c2.6-1 6.2 5 3 6.5-2.3 1-4-.3-4.8-2-.7-2 0-3.8 1.7-4.5z"/>
+        <path fill="#21231e" d="M366.5 236.3l-.4-1h.3l.2-.2h.2v-.2l.2-.2v-2l-.2-.3v-.3h-.2v-.4l-.3-.3-.2-.2-.3-.4-.2-.2-.2-.2h-.2v-.2l-.3-.2h-1.1l-.3-1h1.5l.4.3.3.2.2.3.2.2.3.2.2.2.2.3v.3l.3.3.2.4.2.3v.4l.2.4v2.6l-.2.3-.2.4-.2.3-.2.2h-.4l-.3.3zm-5.4-2.5l1-.3.2.3.2.3v.2l.2.3.2.2.2.2h.3v.2h.2l.3.2h.4v.2h1.3l.3-.2.5 1h-.7l-.2.2h-1.9l-.2-.2h-.2v-.2h-.3l-.2-.2-.3-.2-.3-.3-.3-.3h-.2v-.3l-.2-.3-.2-.3v-.2l-.2-.2v-.2zm2.2-5l.3 1h-.3l-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.7l-.2.2v1.1l.2.2v.3l-1 .3v-.7l-.2-.3v-1.5l.2-.2v-.3l.2-.2.2-.3.2-.3v-.2l.3-.2v-.2h.3l.2-.2.3-.2h.2l.2-.2zm.2.5l-.2-.5.2.5z"/>
+        <path fill="#fff" d="M400 179.7c3.6 0 6.4 2.8 6.4 6.4 0 3.6-2.8 6.5-6.3 6.5s-6.3-3-6.3-6.4 3-6.3 6.4-6.3z"/>
+        <path fill="#21231e" d="M407 186h-1c0-2-1.4-4.3-3.3-5.2a5.8 5.8 0 00-2.6-.6v-1c2.4 0 4.7 1.2 6 3.2a7 7 0 011 3.7zm-7 7v-1a6 6 0 005.3-3.3 6 6 0 00.6-2.6h1c0 2.4-1.3 4.7-3.3 6a6.8 6.8 0 01-3.6 1zm-6.8-7h1a6 6 0 003.3 5.4 5.8 5.8 0 002.6.6v1a6.8 6.8 0 01-5.7-3.3 7 7 0 01-1-3.6zm7-7v1.2a5.9 5.9 0 00-5.3 3.2 6 6 0 00-.8 2.7h-1a7 7 0 013.3-5.8 6.8 6.8 0 013.6-1z"/>
+        <path fill="#fff" d="M395.4 169c3.5 0 6.4 3 6.4 6.4 0 3.6-3 6.4-6.4 6.4s-6.3-2.8-6.3-6.4c0-3.5 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M402.3 175.4h-1c0-2.2-1.3-4.3-3.2-5.3a5.8 5.8 0 00-2.6-.5v-1c2.4 0 4.6 1.3 6 3.2a7 7 0 011 3.7zm-7 7v-1c2.3 0 4.4-1.4 5.4-3.3a6 6 0 00.6-2.6h1c0 2.4-1.2 4.7-3.2 6a6.8 6.8 0 01-3.6 1zm-6.7-7h1a6 6 0 003.2 5.3c.8.4 1.7.6 2.6.6v1a6.8 6.8 0 01-5.8-3.2 7 7 0 01-1-3.6zm6.8-7v1c-2 0-4.2 1.4-5.2 3.3a6 6 0 00-.6 2.7h-1c0-2.3 1.2-4.6 3.2-6a7 7 0 013.6-1z"/>
+        <path fill="#fff" d="M410.7 131.5c3.4 0 6 2.7 6 6s-2.6 6.3-6 6.3-6.2-2.7-6.2-6.2a6 6 0 016.2-6z"/>
+        <path fill="#21231e" d="M417.3 137.7h-1c0-2.2-1.2-4.2-3-5a5.6 5.6 0 00-2.6-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.6v-1c2 0 4-1.2 5-3 .4-1 .6-1.8.6-2.6h1c0 2.2-1.2 4.5-3 5.6a6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2.2 1.3 4.2 3.2 5a5.6 5.6 0 002.5.7v1a6.6 6.6 0 01-5.6-3 6.7 6.7 0 01-1-3.6zm6.7-6.6v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.7 2.6h-1a7 7 0 013-5.6 6.6 6.6 0 013.7-1z"/>
+        <path fill="#fff" d="M400.4 136.2c3.5 0 6.3 3 6.3 6.4 0 3.5-2.8 6.4-6.3 6.4s-6.4-3-6.4-6.4c0-3.5 2.8-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M407.2 142.6h-1a6 6 0 00-3.3-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.6zm-6.8 7v-1c2 0 4.2-1.4 5.2-3.3a6 6 0 00.6-2.7h1c0 2.3-1.2 4.7-3.2 6a6.8 6.8 0 01-3.6 1zm-7-7h1c0 2.2 1.4 4.3 3.3 5.3a5.8 5.8 0 002.7.5v1a7.2 7.2 0 01-6-3.2 7 7 0 01-1-3.7zm7-7v1a6.2 6.2 0 00-5.3 3.3 6 6 0 00-.5 2.6h-1c0-2.4 1.2-4.7 3.2-6a6.8 6.8 0 013.7-1z"/>
+        <path fill="#fff" d="M392.8 145.3c3.5 0 6.3 2.8 6.3 6.4 0 3.5-2.7 6.4-6.2 6.4s-6.4-2.8-6.4-6.3c0-3.6 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M399.6 151.7h-1a6 6 0 00-3.2-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.7zm-6.8 7v-1c2 0 4.2-1.4 5.2-3.4a6 6 0 00.6-2.6h1c0 2.3-1.2 4.6-3.2 6a6.8 6.8 0 01-3.6 1zm-7-7h1c0 2 1.4 4.3 3.3 5.2a5.8 5.8 0 002.8.6v1a7.4 7.4 0 01-6-3.3 7 7 0 01-1-3.6zm7-7v1a6 6 0 00-5.3 3.3 6 6 0 00-.6 2.7h-1c0-2.4 1-4.7 3.2-6a7 7 0 013.6-1z"/>
+        <path fill="#fff" d="M391.5 156.7c3.6 0 6.4 2.8 6.4 6.4s-3 6.5-6.5 6.5-6.3-3-6.3-6.4 2.8-6.3 6.3-6.3z"/>
+        <path fill="#21231e" d="M398.4 163h-1c0-2-1.3-4.2-3.2-5.2a5.8 5.8 0 00-2.7-.6v-1c2.4 0 4.7 1.2 6 3.2a7 7 0 011 3.7zm-7 7v-1a6 6 0 005.4-3.3 6 6 0 00.6-2.6h1c0 2.5-1.3 5-3.4 6a6.8 6.8 0 01-3.5 1zm-6.7-7h1c0 2.3 1.3 4.4 3.2 5.4.7.4 1.6.6 2.5.6v1a7 7 0 01-5.8-3.2 7 7 0 01-1-3.7zm6.8-6.8v1c-2 0-4.2 1.3-5.2 3.2a6 6 0 00-.6 2.7h-1c0-2.3 1.2-4.6 3.2-5.8a7 7 0 013.5-1z"/>
+        <path fill="#edb92e" d="M474.4 198c-2.7-5-5.6-8.2-8.6-9.6 4.2-13.2 5.2-30.2 2.7-51-.2-3.3-1-4.6-2.2-4.6-1 0-1.7 1.6-1.8 5.2.8 11.6 1.7 21.6 1.2 30.2-.5 7.6-2.3 14-4.2 21.2-.3 1 .4 1.7 3.8 3.7 2.6 1.5 4.2 3.3 4.7 5 .7-.2 1.2 0 1.5 0 2.5.8 3.6.6 3 0z"/>
+        <path fill="#21231e" d="M465.3 188.2l1 .3-.3-.6h.3l.3.2.3.2.2.2h.3l.3.3h.3l.4.4.2.2.3.2.2.3.3.3.3.3.3.3.3.2.3.3.3.3.2.3.2.5.3.3.3.4.2.3.3.4.3.3.2.4.3.4.3.5.2.5.3.4.3.4.3.5.3.5-1 .5-.3-.5-.2-.4-.3-.5-.2-.5-.3-.4-.3-.3-.2-.4-.3-.4-.3-.5-.3-.4-.2-.2-.3-.4-.4-.3-.2-.2-.3-.3v-.3l-.4-.3-.3-.4-.2-.3-.2-.2-.3-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.3-.2h-.3l-.3-.3-.4-.2-.3-.6zm.3.6h-.4v-.6l.4.6zm2.4-51.5h1l.2 2 .2 1.8.2 2 .2 2v1.8l.2 1.8v1.8l.2 1.8v15l-.3 1.5-.2 1.5v1.5l-.3 1.5-.2 1.5-.2 1.4-.2 1.5-.2 1.3-.3 1.4-.3 1.3-.3 1.4-.3 1.3-.4 1.3-.3 1.3-.4 1.2-1-.3.4-1.2.4-1.3.4-1.3.3-1.3.3-1.2.3-1.3.3-1.4.2-1.3.3-1.4.3-1.5.2-1.4V172l.3-1.6V169l.2-1.7v-1.6l.2-1.6v-13.6l-.2-1.8v-2l-.2-1.7-.2-2-.2-1.8-.2-2-.2-2zm0 0zm-1.7-4v-1h.6v.2h.3v.2h.2l.2.3h.2v.5h.2v.3l.2.2v.3l.2.2v.4l.2.4v.9l.2.3v.4h-1v-.9l-.2-.2v-.6l-.2-.2v-.5h-.2v-.5h-.2v-.2l-.2-.2h-.2v-.2h-.4zM465 138h-1v-1.7l.2-.3v-1l.2-.3v-.7h.2v-.3l.2-.3v-.3h.2l.2-.2.3-.2.2-.2h.5v1h-.2v.2h-.2v.2l-.2.2v.3l-.2.3v.6l-.2.2v1.6l-.2.4v.7zm-1 0zm2.2 30.2h-1V154l-.2-1v-2.8l-.2-1v-2l-.2-1v-1l-.2-1v-2l-.2-1V139l-.2-1 1-.2v1l.2 1.2v2l.2 1v2.2l.2 1v2l.2 1v2l.2 1v2.8l.2 1v12zm-4.3 21.3l-1-.3.2-.6v-.7l.3-.8.2-.6.2-.7v-.7l.2-.7.2-.6.2-.7v-.6l.3-.6v-.6l.2-.6.2-.7v-.5l.2-.6.2-.8v-.6l.2-.7.2-.7v-.7l.2-.6v-.7l.2-.6v-.7l.2-.7v-.7l.2-.6V169l.2-.8h1v1.5l-.2.7v1.5l-.2.6v.7l-.2.8v.7l-.2.6v.8l-.2.7-.2.6v.8l-.2.6-.2.7v.7l-.3.7v.6l-.3.7v.6l-.3.6-.2.6v.6l-.3.7-.2.5-.2.7v.6l-.3.7-.2.7-.2.6v.7zm3.6 3l-.5 1-.2-.2h-.3l-.3-.3-.3-.2h-.4l-.2-.3h-.2l-.3-.3h-.3v-.2l-.3-.2h-.2l-.2-.2-.2-.3h-.2v-.2h-.2l-.2-.2v-.2l-.2-.2v-1l1 .2v.5h.2v.2l.2.2h.2v.2h.2l.2.2.3.3h.2l.2.2.2.2h.2l.2.3h.3l.3.3.3.2h.3zm0 0zm4.2 5.2l.4 1-.7-.4v-.2l-.2-.2v-.3l-.2-.2v-.3l-.2-.3-.3-.3-.2-.3-.3-.2-.3-.3v-.2h-.3v-.2h-.3v-.2l-.3-.2h-.2v-.3h-.3l-.2-.2h-.3l-.2-.2-.2-.2h-.2l.6-1 .2.2h.2l.3.3.2.2.2.2h.2v.3h.4l.2.3.3.3.3.3.2.2.3.3v.3l.3.2h.2v.3l.3.2v.2h.2v.3l.2.2v.2l.2.3v.3l.2.2v.2l-.6-.3zm.4 1h-.5l-.2-.4.7.3zm1.4-1.2l-.3 1h-1l-.4-.8h.2l.2-.2h1.4zm3.3.5h-1l.7-.4.2.2v.8l-.2.2h-.2v.2h-1.8l-.2-.2h-.3l-.2-.2h-.5l.3-1h.7l.2.2h1v.2h.7v.4l.7-.4zm-1 0v-1l.7.6-.8.4zm0 0h1l-1 .3v-.3z"/>
+        <path fill="#edb92e" d="M458.4 214.6c1.6-1 2-.8 2.4-1.4.6-.8.6-2.2.4-3.5-.8-5.3 2.4-4.6 6-2.2 1.7 1 3.5 4 5 5.3s2.8 1.5 3.2 2v9.2c-.4.6-1.7.7-3.2 2-1.5 1.5-3.3 4.2-5 5.4-3.6 2.3-6.8 3-6-2.2.2-1.3.2-2.7-.4-3.5-.5-.7-.8-.4-2.4-1.4a7 7 0 01-2.3-2.2c-.4-.8 0-1.7 0-2.6 0-1-.4-1.8 0-2.6.6-.8 1.4-1.6 2.4-2.2z"/>
+        <path fill="#21231e" d="M460.4 213l.8.5-.2.2-.2.2h-.4v.2h-.4l-.2.2h-.2l-.2.2h-.2v.2h-.5v.2l-.7-1h.6v-.2h.2l.2-.2h.2l.2-.2h.4v-.2h.4v-.2h.2zm.3-3.2l1-.2v2.9l-.2.3v.2h-.2v.2l-1-.5v-.2h.2v-.4h.2v-2.6zm6.7-2.8l-.6 1-.3-.3-.3-.2-.3-.2-.4-.2h-.3l-.3-.2h-.3l-.3-.2h-.3v-.2h-.4l-.2-.2h-1.1v.2h-.2v.2l-.2.2v.6l-.2.3v2l-1 .2v-3l.2-.4v-.3l.3-.2.3-.2.2-.2h.2l.2-.2h.2l.2-.2h1.5v.2h.5l.3.2h.3l.4.3h.3l.3.2.4.2.3.2.3.2.4.2zm5 5.4l-.6.7-.3-.2-.3-.3-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2v-.2h-.2v-.3l-.3-.2-.3-.3-.2-.2v-.2l-.3-.2v-.2h-.3l-.2-.3-.3-.2-.2-.2h-.2l-.2-.2v-.2h-.3v-.2h-.2l.6-1 .2.2.3.2v.2h.3v.3h.3l.2.2.2.2v.2l.3.2h.2v.3l.3.3.2.2v.2l.3.2.3.3h.2v.3l.3.2.2.2.2.2.3.3v.2h.3v.3h.3v.3h.2zm3.5 2.4h-1.2v.3h-.2l-.2-.2h-.2v-.2h-.4l-.2-.2h-.2v-.2h-.3v-.2h-.3v-.2l-.3-.2-.3-.2-.2-.3.7-.6h.2v.2h.2v.2h.2v.2h.2v.2h.3l.2.2.2.2h.2l.2.2h.2l.2.2h.2v.2h.4v.2l.2.2v.2zm-.2-.2v.2-.2zm0 4.8h-1v-4.5l1-.2v4.5zm-1 0zm0 0h1-1zm0 0zm1 5l-1-.7v.3-4.4h1v4.7zm0-.4v.2-.2zm-3.3 2.5l-.7-.8h.2v-.2l.3-.2.3-.2h.3v-.2h.3v-.2h.2l.2-.2h.2v-.2h.4v-.2h.4v-.2l1 .5-.2.2-.2.2h-.2v.2h-.4l-.2.2h-.2v.2h-.4v.2h-.3v.2h-.2l-.2.2-.2.2v.2h-.3zm-5 5.3l-.7-.8h.2v-.2l.3-.2.3-.2.2-.2.3-.3.2-.2.2-.2.2-.2v-.2h.3v-.3l.2-.3.2-.2v-.2l.3-.2.3-.2v-.2l.3-.2.2-.2v-.2h.3v-.3l.3-.2.2-.2h.2v-.3h.3v-.3l.8.8-.2.2-.2.2-.2.2v.2h-.3v.3l-.3.2-.3.2-.2.2-.2.2-.2.2v.2l-.3.2v.2l-.2.2h-.2v.3h-.3l-.2.3v.2h-.2l-.2.3-.2.2-.3.3-.3.3-.3.2zm-6.8-2.7l1 .3v2.6l.2.2v.2h.2v.2h1.7v-.2h.4l.3-.2h.3l.3-.3.3-.3h.3l.2-.3.3-.2.3-.2.6.8-.4.2-.3.3-.3.2h-.4l-.3.3-.3.2h-.3l-.2.3h-.4l-.3.2h-.4l-.3.2h-.9l-.3-.2h-.3l-.2-.3-.2-.2-.2-.2v-.3l-.2-.2v-.7l-.2-.3V229zm-.3-3l.8-.6v.2h.2v.4h.2v.6l.2.2v2.4l-1-.2v-2.5h-.2v-.4h-.2v-.2zm-2.3-1.3l.7-.8h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.2v.2h.2l.2.2.2.2-.8.6-.2-.2h-.2v-.2h-.4l-.2-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.3zm.7-.8l.5.2-.5-.3zm-3-1.7l.8-.5.2.2v.2h.2v.4h.2v.2h.2v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2l-.5 1v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2zm-.3-3h1v2.4l-.7.5v-.2h-.2v-.4l-.2-.2v-2.1zm.3-2.8l.8.6v.4l-.2.2v1.8h-1V217h.2v-.4h.2zm2.4-2.4l.7 1h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2h-.2v.2l-1-.5h.2v-.2l.2-.2.2-.2v-.2h.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2l.2-.2h.2v-.2h.2zm.7 1l.5-.3-.5.3z"/>
+        <path fill="#21231e" d="M475.5 220.2v1c-4 .4-7 2-9.7 4.3 1.8-2.7 5.7-4.7 9.7-5.3zm0-1.6v-.8c-4-.5-7-2-9.7-4.4 1.8 2.7 5.7 4.6 9.7 5.2z"/>
+        <path fill="#edb92e" d="M461.2 207.3c1 .4 2.3 1 3.4 2 1.6 1.5.6 4-1.5 6.6-.6.7-1 2-1 3.5 0 1.3.5 2.7 1 3.5 2.2 2.5 3.2 5 1.6 6.6-1 1-2.3 1.5-3.4 2v-2.4c.2-1.3.2-2.7-.4-3.5-.5-.7-.8-.4-2.4-1.4a7 7 0 01-2.3-2.2c-.4-.8 0-1.7 0-2.6 0-1-.4-1.8 0-2.6.6-.8 1.4-1.6 2.4-2.2 1.6-1 2-.8 2.4-1.4.6-.8.6-2.2.4-3.5v-2.4z"/>
+        <path fill="#21231e" d="M465 209l-.8.6-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.4v-.2h-.5v-.2h-.2l-.2-.2h-.2l-.2-.2h-.2l.4-1h.2l.2.2h.2l.2.2h.3l.2.2h.2v.2h.3l.2.2h.2v.2h.3v.2h.2l.2.2.2.2.2.2zm-1.5 7.2l-.8-.6.2-.3v-.2h.2l.2-.3.2-.3v-.2l.3-.2v-.5l.2-.2v-.2h.2v-.3l.2-.2v-.4h.2v-1.6l-.2-.3-.2-.2-.2-.2.7-.7.3.3v.2l.2.2v.2h.2v.5l.2.2v1l-.2.2v.4l-.2.2v.5l-.2.3v.3l-.3.2v.5l-.3.2v.3l-.3.2-.2.3v.2l-.3.2-.3.3-.2.2zm-1 3.3h-1v-.7l.2-.2v-1.2h.2v-1h.2v-.4l.2-.2v-.2h.2v-.2l1 .6h-.2v.4h-.2v.2l-.2.2v.9h-.2v1.4h-.2v.5zm1 3.2l-.8.6v-.2h-.2v-.2h-.2v-.4h-.2v-1.1l-.2-.3V220h-.2v-.5h1v1.1l.2.2v.4l.2.2v.4l.2.2v.2h.2v.2zm1.5 7.3l-.8-.8h.2v-.2h.2v-.3l.2-.2v-1.9l-.2-.2v-.2l-.2-.2v-.2l-.2-.3v-.2l-.2-.2-.3-.3v-.3l-.3-.2-.2-.2v-.2l-.3-.3-.3-.2.8-.6.2.2h.2v.4l.2.2.2.3h.2v.3l.3.3v.5l.3.3v.3l.2.2v.5l.2.2v.5l.2.2v.7l-.2.4v.4l-.2.2v.2l-.2.2v.2l-.3.2v.2zm-4.3 1.7l1-.2-.7-.4h.7v-.2h.4l.2-.2h.2l.2-.2h.2v-.2h.4v-.2h.2l.2-.2.2-.2h.2v-.2h.2v-.2l.8.8h-.2v.2h-.2v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-.2v.2h-.4v.2h-.4v.2h-.5v.2h-.2l-.2.2h-.2l-.7-.3zm.7.4l-.6.3v-.6l.6.4zm-.7-3l1 .3v2l-1 .3v-2.4zm-.3-3l.8-.6v.2h.2v.4h.2v.6l.2.2v2.4l-1-.2v-2.4h-.2v-.4h-.2v-.2zm-2.3-1.3l.7-.8h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.2l.2.2.2.2.2.2-.8.6-.2-.2h-.2v-.2h-.4l-.2-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.3zm0 0l-.3-.2.4.2zm-2.3-2.4l.8-.5.2.2v.2h.2v.4h.2v.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2l-.5 1v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2zm0 0l.3.5-.3-.5zm-.3-3h1v2.4l-.7.5v-.2h-.2v-.4l-.2-.2v-2.2zm.3-2.8l.8.6v.4l-.2.2v1.8h-1V217h.2v-.4h.2zm2.4-2.4l.7 1h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2h-.2v.2l-1-.5h.2v-.2l.2-.2.2-.2v-.2h.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2h.2zm2.4-1l.8.5-.2.2-.2.2h-.4v.2h-.4l-.2.2h-.2l-.2.2h-.2v.2h-.5v.2l-.7-1h.6v-.2h.2l.2-.2h.2l.2-.2h.4v-.2h.4v-.2h.2zm.3-3.2l1-.2v2.9l-.2.2v.2h-.2v.2l-1-.5v-.2h.2v-.4h.2V210zm.5-2v-1l.5.6v2.1l-1 .2V207l.5.6zm0-1h.6v.6l-.6-.6zm0 0v1h-.2l.2-1zM361 226.3l.7-.3c-1.6-2.2-2-4.2-1.3-6.3-1.3 1.6-1 4.2.6 6.6z"/>
+        <path fill="#edb92e" d="M410.7 200c1.4 1.6 1.2 2 2 2.5 1 .6 2 .4 3.3 0 5-2 5 2 3.5 6.4-.7 2-2.8 4.3-3.7 6.2-1 1.7-.7 3-1 3.5a95.4 95.4 0 01-4 .6l-4 .5c-.6-.3-1-1.6-2.6-3s-4.4-3-6-4.6c-3-3.5-4.6-6.8.2-6.7 1.2 0 2.4-.2 3-1 .4-.7 0-1 .4-3 .3-1.2.8-2.3 1.4-3 .6-.8 1.5-.6 2.3-.7 1-.2 1.6-.7 2.5-.2 1 .4 2 1.2 2.7 2.3z"/>
+        <path fill="#21231e" d="M413 202l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.3-.3-.3.8-.6.3.2.2.3v.2h.2v.4h.2v.4h.2v.2l.2.2v.2h.2v.2l.2.2zm-.6 1zm3.5-1l.2 1h-.5l-.2.2h-.8v.2h-1.2l-.3-.2h-.2l-.2-.2h-.2l.5-1v.2h.8v.2h1l.2-.2h.4l.2-.2h.3zm4 7l-1-.3v-.4l.2-.4v-.5l.2-.4v-.3l.2-.3v-.7l.2-.4v-1.7l-.2-.2v-.4h-.2l-.2-.3h-.2l-.3-.2H417l-.4.3h-.4l-.3-.8.3-.2h.5l.4-.2h1.8l.3.2h.3l.2.3.2.4v.2l.3.3.2.4v3.3l-.2.4v.4l-.2.4v.4l-.2.4v.4zm-3.7 6.4l-1-.5v-.2l.2-.2.2-.2v-.2l.2-.2v-.4l.2-.2.2-.2v-.2l.2-.2.2-.2.2-.3.2-.2.2-.3.2-.2v-.2l.2-.2h.2v-.3l.2-.2v-.2l.2-.2.2-.3v-.2l.2-.2v-.2l.2-.3 1 .3v.2l-.2.3v.2l-.2.2-.2.3v.2l-.2.2v.3l-.3.2-.2.2v.2l-.2.2-.2.2v.2l-.2.2-.2.2v.2l-.3.2v.2l-.2.2-.2.2v.2l-.2.2v.4h-.3v.3l-.2.2-.2.2v.2zm-1.5 3.8l-.2-1-.3.2v-.4h.2v-1l.2-.2v-.4l.2-.3v-.4l.2-.3v-.2h.2l1 .4-.2.2-.2.3v.3h-.2v.7h-.2v.9l-.2.2v.4l-.2.2v.2l-.4.2zm.3 0h-.2.3zm-4.3.6v-1h1.1v-.2h1.2v-.2h1.1l.3-.2.2 1h-.4l-.3.2h-.9l-.2.2h-1.3v.2h-.7zm0 0zm0 0v-1 .5-.5 1-.5.5zm0-1zm-4 1.5l.4-1h-.2 1.3l.3-.2h1.9l.2-.2.2 1h-.8v.2h-1.4v.2h-2zm.2 0h-.3.2zm-3-3l.5-1 .2.3.3.3h.2l.2.3.2.2.2.3.2.2v.2h.2v.2h.2v.2l.2.2v.2h.2v.2h.2v.2l-.4 1v-.2h-.2l-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.3v-.2h-.2v-.2h-.3v-.3zm-6-4.8l.7-.6.2.2.3.3.3.3h.2v.3l.3.2h.3l.2.3h.2l.2.3.3.3.2.2.2.2h.2v.2l.3.2h.2l.2.3.2.2.3.3h.2l.2.3.3.2.2.2h.2v.2l-.5.8h-.3v-.2l-.3-.2h-.2v-.2l-.3-.2h-.3l-.2-.2-.2-.2h-.2v-.2l-.3-.2h-.2l-.2-.3h-.2v-.2h-.3l-.2-.2-.2-.2h-.2v-.3h-.3l-.2-.3-.2-.2h-.2v-.3h-.3v-.3l-.3-.2h-.2v-.3l-.3-.2zm.4-7.5v1H397l-.2.2h-.4l-.2.2v.2h-.2v1.5l.2.3v.3l.2.2.2.3.2.4.2.3.2.3.2.3.2.3.3.3v.2l.4.3.3.4-.8.5-.4-.3-.3-.3-.2-.4-.2-.4-.2-.3-.3-.4-.2-.3v-.4l-.3-.4v-.3l-.3-.3v-.3l-.3-.3V206l.2-.2.2-.2.2-.2.3-.2h.2l.3-.2h.7l.4-.2h.8zm2.5-.8l.8.5-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2l-.2.2h-.5l-.2.2h-1.1v-1h1.4l.2-.2h.2l.2-.2h.2v-.2h.2v-.2zm0 0zm.4-2.8l1 .2v.4h-.2v2h-.2v.4l-.2.2-1-.4h.2v-1.4l.2-.3v-.8l.2-.2zm1.4-3.2l.8.6-.2.2v.2h-.2v.4h-.2v.4h-.2v.4l-.2.2v.4l-.2.2v.4l-1-.2v-.7l.2-.2v-.4l.2-.2v-.4h.2v-.4h.2v-.4h.2v-.2h.2v-.4h.2zm.8.6l.5-.7-.4.8zm1.8-1.5l.2 1H404v.2h-.4v.2h-.2l-.8-.5.2-.2.2-.2h.2v-.2h.4l.2-.2h1.4zm.2 1h-.7.6zm2.7-1.2l-.5 1H406l-.2.2h-.4l-.2-1h.8l.2-.2h2.1zm3 3h-1v.2-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2.5-1v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2v.2l.2.2.2.2.2.2v.2l.3.3zm-.2-.4h.2v.3-.4zm-.8.3h1l-1 .2v-.3zm0 .2v-.3.2z"/>
+        <path fill="#21231e" d="M410 219.4h-.7c-1.4-3.8-3.5-7-6.3-9.5 2.8 1.4 5.5 5.3 7 9.4zm1.4-.2c.3 0 .5 0 .8-.2-.5-4 0-7.5 1.5-11-2 2.5-2.8 7-2.3 11.2z"/>
+        <path fill="#edb92e" d="M418.3 202c-.2 1.4-.4 3-1 4.3-1 2-3.8 1.3-6.6-.7-.8-.6-2.2-.8-3.4-.6-1.3.3-2.4.8-3 1.7-1.5 2.6-3.4 4-5.2 2.6-1-1-2-2.3-2.7-3.5.5-.2 1.2-.3 2-.3 1.3 0 2.5-.2 3-1 .5-.7 0-1 .6-3 0-1.2.6-2.3 1.2-3 .6-.8 1.5-.6 2.3-.7 1-.2 1.6-.7 2.5-.2 1 .4 2 1.2 2.7 2.3 1.4 1.6 1.2 2 2 2.5 1 .6 2.2.4 3.3 0 1-.4 1.7-.6 2.3-.5z"/>
+        <path fill="#21231e" d="M417.7 206.5l-1-.4.2-.2v-.5l.2-.2v-.4l.2-.2v-.9l.2-.2v-1.2h.2v-.4h1v1.1l-.2.3v1h-.2v.7h-.2v.7h-.2v.3l-.2.3v.2zm-7.2-.5l.5-.8.3.2h.2l.3.3h.2l.3.3h.2l.3.2.2.2h.2l.3.2h.4v.2h.7l.2.2h1v-.2h.2l.2-.2.2-.3.2-.2 1 .5-.2.2-.2.3-.3.3v.2h-.2l-.2.2h-.2l-.3.2h-2l-.2-.2h-.2l-.3-.2h-.2l-.2-.2h-.2l-.3-.2-.2-.2h-.2l-.3-.3-.2-.2h-.3l-.3-.3-.2-.2zm-3-.4l-.3-1h1.1v-.2h1.3v.2h.6v.2h.4v.2h.2l.2.2-.5.8h-.2v-.2h-.4v-.2h-2.4zm-2.7 1.3l-.8-.6v-.2h.2v-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2h.2l.2-.2h.3v-.2h.8l.2-.2h.5l.2 1h-.7v.2h-.4v.2h-.4l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2zm-6 2.7l.6-.8h.3v.2h.5l.2.2h.5l.3-.2h.3v-.2h.3v-.2h.2v-.3h.3v-.3h.3v-.3l.3-.3.2-.2.2-.2v-.2h.3v-.4l.3-.2.8.5v.2l-.3.2v.3l-.3.2h-.2v.3l-.3.2-.2.2-.2.2-.3.3h-.2l-.2.3h-.2v.3h-.3l-.3.2h-.4l-.3.2h-1.2l-.2-.2h-.2l-.2-.2-.2-.2h-.2zm-2.7-4.4l.5 1 .3-.8v.3h.2v.2l.2.2v.2h.2v.2l.2.2v.2h.2v.2l.2.2.2.2.2.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.2h-.2v-.4h-.2v-.2h-.2V205zm0 .8l-.4-.4.5-.3v.8zm2.4-1v1H397v.2h-.4l-.5-1h1.2v-.2h1.2zm2.5-.8l.8.5-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2l-.2.2h-.7l-.2.2h-1.2v-1h1.4l.2-.2h.4v-.2h.2v-.2h.2v-.2zm0 0zm.4-2.8l1 .3v.3l-.2.3v1.7h-.2v.7h-.2l-1-.4h.2v-1.4h.2v-1.3l.2-.2zm1.4-3.2l.8.6-.2.2v.2h-.2v.4h-.2v.4h-.2v.4l-.2.2v.7h-.2v.5l-1-.3v-.7l.2-.2v-.4l.2-.2v-.4h.2v-.4h.2v-.4h.2v-.2h.2v-.4h.2zm0 0l.4-.5-.4.5zm2.6-1l.2 1h-.6v.2h-1v.2h-.2l-.2.2-.8-.6.2-.2.2-.2h.2v-.2h.4l.2-.2h1.4zm0 0h.6-.6zm3 0l-.6.8H406v.2h-.5l-.2-1h.8v-.2h2.1zm-.6.8l.3.2-.2-.2zm3.3 1.6l-.6.6-.2-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2l-.2-.2.5-1v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2v.2l.2.2.2.2.2.2v.2zm2 2.5l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.3-.2-.3.7-.6.3.2.2.3v.2h.2v.2l.2.2v.4h.2v.2l.2.2v.2h.2v.2l.2.2zm-.6 1l-.2-.2h.2zm3.5-1l.2 1h-.5l-.2.2h-.8v.2h-1.3l-.2-.2h-.2l-.2-.2h-.2l.5-1v.2h.6l.2.2h1.1l.2-.2h.4l.2-.2h.2zm2.8 0h-1l.5.5h-1l-.2.2h-.4l-.2.2h-.2l-.3-1 .2-.2h.8v-.2h1.5l.5.4zm-.5-.5h.6l-.2.5-.5-.5z"/>
+        <path fill="#edb92e" d="M391.8 221.2c.7-1 1-.8 1.2-1.3.2-1-.3-2-1-3.2-2.2-4.6.3-4.2 3.6-2.4 1 .4 2 1.2 3 2 1 1 1.8 1.8 2.7 2.4 1.6 1.2 2.7 1.2 3 1.7 1 2 1.5 3.5 1.8 4.2.3.7 1 2.3 1.6 4.2 0 .4-1 .5-1.8 2-.7 1.2-1.2 3.5-2 4.7-1.4 1.6-2.5 2.6-3.4 2.4-1 0-1.6-1.3-1.8-4.2a4 4 0 00-1.5-3c-.5-.6-.6-.4-2-1.2a9.3 9.3 0 01-2.4-2c-.6-.6-.7-1.3-1-2-.3-1-.8-1.6-.7-2.4a3.8 3.8 0 01.8-2z"/>
+        <path fill="#21231e" d="M392.5 219.7l1 .3v.2l-.2.2v.2h-.2v.2h-.2v.2h-.2l-.2.2v.2h-.2l-.8-.5v-.2l.2-.2.2-.2.2-.2h.2v-.2h.2v-.2zm1 .3zm-1.8-3l1-.5v.4l.2.2v.4l.2.3v.2l.2.2v2l-1-.3v-1.2l-.2-.2v-.4h-.2v-.4h-.2v-.4zm4.2-3l-.6.8h-.3l-.2-.3h-.3l-.3-.3h-.3l-.3-.2h-.3l-.2-.2h-.5l-.2-.2h-.6v1.5l.3.4.2.3.2.4.2.5-1 .5v-.4l-.3-.4-.2-.4v-.7l-.2-.2v-1.5l.2-.2h.2l.2-.2h.2l.2-.2h1.2l.2.2h.6l.3.3.3.2h.3l.3.2.2.2.4.2h.3zm2.8 2l-.7 1v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2.5-1v.2h.2v.2h.2l.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2zm2.8 2.4l-.6.8h-.2v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2l.6-1v.2h.2l.2.2v.2h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2l.2.2zm3.3 2l-1 .3v.2-.2h-.2v-.2h-.4l-.2-.2h-.2l-.2-.2h-.3l-.2-.2h-.3v-.2h-.3v-.2h-.3v-.2h-.3v-.2l.6-.8.2.2h.2v.2h.3l.2.2h.2l.2.2h.2v.2h.4l.2.2h.4v.2h.2l.2.2h.2v.3zm-.2-.3v.2zm1.7 4.5l-1 .4v-.7l-.2-.2v-.4l-.2-.2v-.5h-.2v-.4l-.2-.3v-.3h-.2v-.5h-.2v-.5h-.2v-.3l1-.4v.4l.2.3v.2l.2.3v.2l.2.3v.3l.2.3v.4h.2v.4l.2.2v.4h.2v.4zm0 0zm0 0l-1 .4h.3l.3.2-.5-.5.6.5-.5-.5.6.5-.5-.5.2.4-.2-.3v.2l1-.5v.2-.4.4l-.4-.5.6.5-.5-.5.6.5-.5-.5h.4v.3zm0-.2v.2-.2zm1.6 4.7l-1-.2v.3-.5l-.2-.3v-.2l-.2-.3v-.3l-.2-.3v-.2l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.4l-.2-.2 1-.5v.4h.2v.5h.2v.5l.2.2v.3l.2.3v.5l.2.2v.3l.2.2v.2l.2.2v.6zm0-.3v.3-.3zm-1.7 2.4l-1-.4.2-.2v-.2h.2v-.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2h.2v-.2l1 .2v.4h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2v.2zm-2.2 5l-.7-.7.2-.3v-.2h.2v-.3l.2-.2v-.4l.2-.2v-.5h.2v-.4h.2v-.5h.2v-.2l.2-.3v-.2l.2-.3v-.2l.2-.2 1 .5-.2.2v.3h-.2v.4h-.2v.5l-.2.2v.3l-.2.2v.3l-.2.2v.3l-.2.2v.3l-.2.2v.3h-.2v.3h-.2v.3l-.2.2v.2zm-3.7 2.7l.2-1h.4v-.2h.2l.2-.2h.2v-.2h.2l.2-.2.2-.2.2-.2.2-.2.2-.3.2-.2v-.2h.2v-.3l1 .7h-.2v.3h-.3v.3h-.2v.3h-.4v.4h-.2v.2h-.2l-.2.2-.2.2-.2.2h-.3v.2h-.4v.2h-1zm-2.2-5h1v.3l.2.2v1.1h.2v.5l.2.2v.3l.2.2v.2h.2v.2h.2v.2h.2v1h-.8v-.2h-.2l-.2-.2-.2-.2v-.3h-.2v-.2l-.2-.2v-.3l-.2-.3v-.4h-.2v-1l-.2-.2v-1zm-1.2-2.6l.7-.6.2.2v.2h.2v.2l.2.2v.2h.2v.3l.2.2v.2h.2v.7h.2v.6l-1 .2v-1h-.2v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.4h-.2v-.2h-.2zm-2-1l.4-.8h.3v.2h.4v.2h.4v.2h.4v.2h.4v.2h.2v.2l-.6.7h-.2l-.2-.2h-.4v-.2h-.4l-.2-.2h-.2l-.2-.2h-.3zm-2.5-2l.7-.6.2.2.2.2.2.2.2.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.2l.2.2-.5 1v-.2h-.2v-.2h-.4v-.2l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2zm-1.2-2.3l1-.4v.2h.2v.4h.2v.5h.2v.4h.2v.2l.2.2-.7.7h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.8h-.2v-.2zm-.6-2.5h1v.8h.2v.4l.2.2v.2l.2.2v.2l-1 .5v-1h-.2v-.4h-.2v-.6h-.2v-.8zm1 0v.2zm.4-1.5v-1l.3.8v.4h-.2v.2h-.2v.8h-.2v.2h-1v-.9l.2-.2v-.4l.2-.2v-.2h.2v-.4h.2v-.2h.2l.4.7zm0-1h1l-.7.8-.2-.8zm0 0v1l-.4-.8.4-.3zm0 1h-1l.6-.8.4.7z"/>
+        <path fill="#21231e" d="M406.5 226l.2 1c-1.4.4-2.6 1-3.6 1.8s-1.7 2-2.3 3.2c.2-1.4 1-2.7 2-3.7s2.3-1.8 3.8-2.2zm-.6-1.6l-.5-1c-1.6 0-3.2-.4-4.7-1-1.5-.7-3-1.6-4.4-2.8 1 1.3 2.6 2.4 4.3 3.3 1.6.7 3.5 1.3 5.2 1.5z"/>
+        <path fill="#edb92e" d="M391.4 213.8c1 .4 1.6.8 2.8 1.8.8.7 1.3 1.7 1.5 3 0 1 0 2.5-.3 3.8-.2.8 0 2.2.5 3.6.4 1.4 1 2.8 2 3.5 2.3 2.5 4 5 3.4 6.7a4 4 0 01-1.5 1.8c-.4-.6-1-1.2-1.4-2.2a8 8 0 00-1.5-3.5c-.5-.6-.7-1.3-2-2.2-1-.5-2-.3-2.6-1-1.2-1.6-3-5.5-1.3-7.2 1.7-1.7 2.3-2.7 1-5.6-.5-1-.5-1.8-.6-2.4z"/>
+        <path fill="#21231e" d="M394.5 215.2l-.7.8-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2l-.2-.2h-.4l.3-1h.4v.2h.4v.2h.4v.2h.4v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2v.2zm1.7 3.2l-1 .2v-.6h-.2v-.7h-.2v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l.7-.8h.2v.2l.2.2v.2h.2v.2l.2.2v.2h.2v.4l.2.2v.4h.2v.8h.2v.2zm-.3 4h-1V221h.2v-2.4l1-.2v3.3l-.2.2v.5zm-1 0v-.3.3zm1.4 3.5l-1 .2v-.5l-.2-.3v-.4l-.2-.3v-.8h-.2v-1.4h1v1.9h.2v.7h.2v.7h.2v.3zm1.8 3.2l-.7.7v-.2l-.2-.2h-.2v-.4h-.2v-.2l-.2-.3v-.2h-.2v-.2l-.2-.3v-.2h-.2v-.5l-.2-.2-.2-.3v-.4h-.2l1-.4v.2l.2.2v.2l.2.3.2.2v.3l.2.2v.2h.2v.2h.2v.4h.2v.2h.2v.2h.2v.2zm3.6 7.2l-1-.4.2-.2v-1.3l-.2-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.3-.2-.2-.3v-.3l-.3-.2-.2-.2-.2-.3-.2-.2-.2-.2-.2-.2-.3-.3h-.2l.7-.8.3.2.2.2.2.3.3.4.3.2.2.2v.3l.3.3.3.2.2.3v.2l.3.2.2.3v.2l.2.2.2.2v.2l.2.2v.2l.2.3v.7l.2.2v1.2l-.2.2zm-2.4 1.8l1-.4-.8-.2.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l1 .4v.2l-.2.2v.2l-.2.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2l-.2.2-.8-.2zm.8.2l-.5.3-.3-.5.8.2zm-2-2.5l1-.3v.4h.2v.4h.2v.2h.2v.2l.2.2v.2h.2v.4l-.8.4v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.4l-.2-.2v-.2l-.2-.2v-.3zm-1.5-3.3l.8-.7v.2h.2v.2l.2.2v.2l.2.2v.2h.2v.5h.2v.4l.2.2v.4l.2.3v.7l-.8.2v-.4h-.2v-.5l-.2-.2v-.5h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2zm0 0zm-2-2.2l.4-1 .3.2.2.2h.2l.2.2.2.2.2.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2l-.7.7-.2-.2v-.2h-.2v-.2h-.2v-.4h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2zm-2.7-1.3l.8-.6h.2v.2h.2v.2h.9l.2.2h.4l.2.2h.2l.2.2-.4 1v-.2h-.4l-.2-.2h-.9v-.2h-.4l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2zm-1.2-7.8l.7.7v.3h-.2v.3h-.2v2.2l.2.3v.5l.2.2v.2l.2.3v.2l.2.2v.2l.2.2v.2l.3.2v.2h.2v.3l.2.2-.7.7-.2-.3-.2-.3v-.2l-.2-.2v-.2h-.3v-.3l-.2-.3-.2-.4v-.2l-.2-.3v-.2l-.2-.2v-.6l-.2-.3v-2.1l.2-.3v-.2h.2l.2-.3.2-.3zm.7-5l1-.5v.5l.2.2v.3l.2.2v.7h.2v1.7l-.2.2v.2l-.2.2v.2h-.2v.3h-.2v.2l-.2.2-.3.3h-.2l-.2.3-.8-.6.2-.3h.2l.2-.3.2-.3.2-.2v-.3l.2-.2v-.2l.2-.3v-.7l-.2-.2v-.5l-.2-.2-.2-.4v-.2zm0-3v1l.4-.7v1.4h.2v1.1h.2l-1 .6v-.9h-.2v-.7l-.2-.2v-1l.4-.7zm-.6.5l-.3-.7h.7l-.5.6zm.4.3v-1 1zm0-1z"/>
+        <path fill="#edb92e" d="M434 226.2c-1.2 1-1.5 1-2 1.6-.3.8 0 2 .3 3.3 1.5 5-1.4 4.4-5 2.6-1.6-1-3.6-3.2-5.2-4.4-1.5-1-2.6-1-3-1.6a118.7 118.7 0 01-1-4.3c0-.7-.5-2.4-1-4.4.4-.7 1.4-1 2.5-2.5 1-1.7 2.2-4.7 3.6-6 3-3.2 6-4.5 6 1.3 0 1.4.3 3 1 3.6.6.6 1 .3 2.5 1 1 .6 2 1.3 2.6 2 .7 1 .5 2 .7 2.8 0 1 .5 1.7.2 2.6-.5 1-1 1.7-2 2.4z"/>
+        <path fill="#21231e" d="M432.6 228l-1-.5h.2v-.4h.4v-.2h.4v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.8.8-.2.2h-.2v.2h-.2l-.2.2-.2.2h-.2v.2h-.4v.2h-.2v.2zm-1-.5zm1 3.4l-.8.3v-.2l-.2-.2v-.7h-.2v-2.3h.2v-.2l1 .4v.2h-.2v2.1h.2v.7zm-5.4 3l.5-.8h.3l.3.3h.3l.3.3h.2l.3.2h.2l.3.2h.7l.2.2h.7v-.2h.2v-.4l.2-.3v-1.1l-.2-.3v-.3l-.2-.4 1-.4v.4l.2.4v.8l.2.3v1.1l-.2.4v.2l-.3.2-.2.2h-.2l-.2.2-.4.2h-1.2l-.3-.2h-.6l-.3-.3-.2-.2h-.3l-.3-.2-.4-.2-.3-.2h-.3zm-5.4-4.3l.6-1 .2.2.3.2.2.3h.2v.3h.3v.3l.3.2.2.2h.2v.3h.3l.2.3.2.3.2.2.3.3h.2v.2l.2.2h.2l.2.2v.2h.3v.2h.2l.2.2.3.2-.5 1-.2-.2h-.2v-.2l-.3-.2h-.2l-.2-.2-.2-.3h-.2l-.2-.2h-.2v-.3h-.3l-.3-.3h-.2v-.3l-.3-.3h-.2l-.2-.3-.3-.3h-.2v-.2h-.3l-.2-.3-.3-.3-.3-.2-.3-.2h-.2zm.6-1zm-4-1l1-.2v-.2h.2v.2h.4l.2.2h.4v.2h.7l.2.2h.2l.2.2.3.2h.2l.2.2-.6 1v-.2h-.3v-.2h-.2l-.2-.2-.2-.2h-.3l-.2-.2h-.2v-.2h-.4l-.2-.2h-.2l-.2-.2h-.2v-.2h-.2v-.3zm.2.3v-.3.3zm-.6-4.2v-1l.5.4v.4l.2.2v1h.2v1.3h.2v1h.2v.5l-1 .2v-.7l-.2-.3v-.7l-.2-.3v-.7h-.2v-.8l-.2-.2v-.6l.4.4zm0-1h.5v.4l-.5-.4zm-.5.6l1-.2v-.2l-.5-.2v1h-.3l-.2-.5zm1-.2zm-1.8-4.5l1 .4v-.2 1.1h.2v1.1l.2.3v.8l.2.2v.9l-1 .2V222l-.2-.2v-.8l-.2-.3v-.7h-.2v-.8l-.2-.2v-.3zm0 .3v-.3.3zm2.4-2.8l1 .5-.2.2-.2.2-.2.3-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2l-1-.3h.2v-.4h.2v-.2h.4v-.2h.2l.2-.2.2-.2.2-.2h.2v-.2l.2-.2.2-.2v-.2h.2v-.2zm3.7-6.2l.8.7h-.2v.3h-.2v.3l-.3.3v.2l-.2.2v.2h-.2v.3l-.2.3v.4l-.3.2v.2l-.2.2v.2l-.2.2v.2l-.2.2v.3l-.2.3v.2l-.2.2v.2h-.2v.2l-.2.2-.2.2-1-.4.2-.2.2-.3v-.2h.2v-.3l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.3l.2-.2v-.2h.2l.2-.3v-.2l.2-.2v-.3l.2-.2v-.2l.3-.2v-.2l.2-.2.2-.3v-.2l.2-.2h.2v-.3zm6.8 1.8h-1v-1.4l-.2-.4v-.6l-.2-.2v-.4l-.2-.2h-.3v-.2h-1.2l-.3.2-.3.2h-.2l-.3.3-.2.3-.3.2-.2.2-.3.2-.2.2-.3.2-.2.3-.8-.7.3-.3.3-.3.3-.2.2-.3.3-.3.4-.2.3-.2.2-.2h.2l.3-.3h.2l.3-.2h.3l.2-.2h1.2l.3.2.3.3.2.2.2.2.2.3v.6l.2.5v.4l.2.3v1.5zm1 3.3l-.8.8-.2-.2v-.2h-.2v-.2l-.2-.2v-.6l-.2-.2v-.7l-.2-.2V212h1v2h.2v.3l.2.2v.2h.2v.2l.2.2zm0 0zm2.2 1l-.4 1-.3-.2h-.2l-.3-.2h-.4v-.2h-.9v-.2h-.4v-.2h-.2v-.2l.6-.7v.2h.4v.2h.8l.2.2h.4l.2.2h.2l.2.2zm2.8 2.2l-.8.6h-.2v-.2l-.2-.2h-.2v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2.3-1 .3.2h.2l.2.2.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2zm-.8.6l.4.5-.3-.5zm1.5 2.3l-1 .2V220l-.2-.2v-.8h-.2v-.4l.7-.6v.2l.2.2v.2l.2.2v2.2h.2v.2zm0 3l-.8-.4v-2.1l-.2-.2v-.4h1v1l.2.2v1.8zm-1.8 2.6l-.7-.8h.2v-.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2h.2v-.2l1 .4-.2.2v.2l-.2.2v.2h-.2v.4h-.2v.2h-.2v.2l-.2.2-.2.2v.2h-.2l-.2.2-.2.2zm-.7-.8z"/>
+        <path fill="#21231e" d="M418 222.6l-.2-1a14 14 0 007.8-5.3c-1.2 3-4.3 5.3-7.7 6.3zm.2 1.5c0 .4.2.7.3 1 3.4 0 6.4 1 9.2 3-2-2.3-5.8-3.8-9.5-4z"/>
+        <path fill="#edb92e" d="M432.7 233.3a11 11 0 01-3.4-1.5c-1.6-1.3-1.2-3.8.3-6.4.4-.8.5-2.2.2-3.5a6.3 6.3 0 00-1.4-3.5c-2.4-2.3-3.8-4.8-2.6-6.6.8-1.3 2-2 2.8-2.7.3.6.4 1.5.4 2.5 0 1.4.3 3 1 3.6.6.6 1 .3 2.5 1 1 .7 2 1.3 2.6 2 .7 1 .6 2 .7 2.8 0 1 .5 1.7.2 2.6-.5 1-1 1.7-2 2.4-1.2 1-1.5 1-2 1.6-.3.8 0 2 .3 3.3.3 1 .4 1.7.4 2.3z"/>
+        <path fill="#21231e" d="M429 232.2l.6-.8h.2v.2h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.4l.2.2h.4l.2.2h.2l-.3 1h-.4v-.2h-.4l-.2-.2h-.3v-.2h-.4l-.2-.2h-.2l-.2-.2h-.2v-.2h-.2l-.3-.2h-.2v-.2zm0-7l1 .5v.2h-.2l-.2.4v.2l-.2.2v.2l-.2.3v.4l-.2.2v.5l-.2.2v1.5l.2.3v.2h.2v.3l.2.2.2.2-.6.8-.2-.2-.3-.3v-.2h-.2v-.3l-.2-.2v-.4l-.2-.3V228h.2v-.7l.2-.3.2-.3v-.3l.2-.2v-.3l.3-.3v-.5zm.3-3.3l1-.2v.8h.2v1.9l-.2.2v.7h-.2v.2l-1-.4h.2v-.6h.2V222zm-1.3-3.2l.7-.7v.2h.2v.4h.2v.2l.2.2v.2l.2.2v.2l.2.2v.5h.2v.7l.2.2v.8h-1v-1.2l-.2-.2v-.4h-.2v-.4h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2zm0 0zm-2.7-7.2l1 .6h-.2v.7l-.2.2v.7l.2.2v.4l.2.2v.2l.2.2v.2l.2.2v.2l.3.2v.2l.2.2.2.2v.2l.3.3.2.3v.2l.3.2.2.2h.2l-.7.8-.2-.2-.2-.2-.3-.2-.2-.2v-.3l-.2-.2-.2-.2-.2-.2-.2-.2v-.2l-.3-.2-.2-.3h-.2v-.3l-.2-.2v-.3l-.2-.2v-.2l-.2-.3v-.4l-.2-.2v-1l.2-.3v-.2l.2-.2v-.2zm3.8-2.5l-.8.4.7.3h-.2l-.2.2h-.2l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-1-.6h.2v-.2l.2-.2.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2h.2l.2-.2.2-.2h.2v-.2h.2l.2-.2.2-.2h.2v-.2h1.1zm-.6 0l.5-.5v.6h-.6zm1 2.8h-1v-2.1h-.2v-.4l1-.3v1h.2v2zm1 3.3l-.7.8-.2-.2v-.2h-.2v-.2l-.2-.2v-.7l-.2-.2v-.7l-.2-.2V212h1v1.7h.2v.6l.2.2v.2h.2v.2l.2.2zm2.3 1l-.4 1-.3-.2h-.2l-.3-.2h-.4v-.2h-.9v-.2h-.4v-.2h-.2v-.2l.6-.7v.2h.4v.2h.8l.2.2h.4l.2.2h.2l.2.2zm2.8 2.2l-.8.6h-.2v-.2l-.2-.2h-.2v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2.3-1 .3.2h.2l.2.2.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2zm-.8.6l.4.5-.3-.5zm1.5 2.3l-1 .2V220h-.2v-.8h-.2v-.4l.7-.6v.2l.2.2v.2l.2.2v2h.2v.2zm0 3l-.8-.4v-2.2l-.2-.2v-.4h1v1l.2.2v1.8zm-1.8 2.6l-.7-.8h.2v-.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2h.2v-.4h.2v-.2l1 .4-.2.2v.2l-.2.2v.2l-.2.2v.2h-.2v.2h-.2v.2l-.2.2-.2.2v.2h-.2l-.2.2-.2.2zm-.7-.8zm-1 2.2l-1-.5v-.2h.2v-.2h.2v-.2h.4v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.8.8-.2.2h-.2v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-.2v.2h-.2v.2zm-1-.5zm1 3.4l-1 .3v-.7h-.2v-3h.2l1 .4h-.2v2.6h.2v.2zm-1 .3zm.8 2.5l.3-1-.6.5v-1h-.2v-.9l-.2-.2 1-.5v.9h.2v1h.2v.7l-.7.5zm.7-.5v.7l-.7-.2.7-.5zm-.5 0l-.2.5.2-.5zm.5 0v.7l-.7-.2.7-.5z"/>
+        <path fill="#edb92e" d="M410.6 216.4c4 0 8 3.4 8.4 7.7.6 4.4-2.2 7.7-6 7.8-4 0-7.5-3-8.3-7.3-.7-4 1.8-8 6-8z"/>
+        <path fill="#21231e" d="M419.5 224l-1 .2v-.8l-.2-.4v-.3l-.2-.4v-.3l-.2-.4-.2-.3-.2-.3-.2-.4-.2-.3-.2-.3-.3-.2-.2-.3-.3-.3-.2-.2-.3-.3-.3-.2-.3-.2-.4-.2h-.3l-.3-.3h-.4l-.3-.3h-.3l-.4-.2h-.3l-.3-.2h-1.5v-1h1.9l.4.2h.3l.4.3h.4l.4.3.4.2.3.2.5.2.3.3.3.2.4.2.3.3.3.3.3.3.3.4.2.3.2.4.3.4.2.4.2.4.2.4v.4l.2.4v.4l.2.4v.8zm-6.6 8.3v-1h.9l.2-.2h.6l.3-.2h.4l.2-.2.3-.2h.2l.2-.3h.2l.2-.3.3-.3.3-.2v-.2l.3-.3.2-.2v-.3l.3-.3.2-.4v-.3l.2-.3v-.7l.2-.3V224l1-.2v2.5l-.2.4v.8l-.3.4v.3l-.2.3v.4l-.3.3-.2.3-.3.3h-.2l-.2.4-.3.2-.3.3h-.3l-.3.3-.3.2h-.2l-.3.3h-.4l-.2.2h-.4l-.3.2H413zm-8.7-7.7l1-.2v.7l.2.5v.3l.3.4v.3l.3.3.2.4.2.3.2.3.2.3.2.3.3.3.2.3h.3l.2.3.3.3.2.2.3.2.3.2h.4l.3.3.3.2h.3l.3.2h.7l.3.2h1.2v1h-2l-.3-.2h-.4l-.4-.3h-.4l-.4-.3-.3-.2-.4-.2-.3-.2-.4-.2-.4-.2-.3-.3-.2-.2-.2-.2-.3-.3-.2-.3-.3-.3-.2-.4-.2-.3-.2-.3-.2-.4-.2-.3-.2-.4v-.4l-.2-.4-.2-.4v-.8zm6.2-8.7v1h-1l-.3.2h-.4l-.3.2h-.3l-.3.3h-.2l-.2.3-.3.2-.2.2v.2l-.3.2-.2.2-.2.3-.2.3v.2l-.2.3v.4l-.3.3v.6l-.2.3v.7l-.2.3v.7l.2.4v.8l-1 .2v-3.3l.2-.3v-.3l.2-.4v-.3l.3-.4v-.3l.3-.3.2-.3.2-.3.2-.3h.2l.2-.4.3-.2.3-.2.3-.2.3-.2.3-.2.3-.2h.3l.4-.2h.4l.3-.2h.9z"/>
+        <path fill="#edb92e" d="M411 218.6c2.8-.2 5.7 2.4 6 5.5.5 3.3-1.5 5.8-4.4 5.8-2.8 0-5.5-2.3-6-5.3s1.3-5.8 4.3-6z"/>
+        <path fill="#21231e" d="M417.6 224l-1 .2v-.6l-.2-.3v-.2l-.2-.3v-.4l-.2-.2v-.2l-.2-.3-.2-.3v-.2l-.3-.2-.2-.2-.2-.3-.2-.2-.2-.2h-.2l-.2-.3h-.2l-.3-.3h-.2l-.2-.2-.4-.2h-.5v-.2h-1.1v-1h1.1l.4.2h.3l.2.2h.2l.3.2h.3l.2.3h.3l.2.2.3.2h.2l.3.3.2.3.2.2.2.2v.2l.3.3h.2v.4l.3.3v.3l.3.2.2.3v.3l.2.3v.8l.2.3zm-5 6.3v-1h1.1l.2-.2h.4l.2-.2h.2v-.2l.3-.2h.3v-.2l.3-.2v-.2h.2l.2-.3v-.2l.2-.2.2-.3v-.7l.2-.2v-1.6h1v2.2l-.2.3v.2l-.2.3v.2l-.3.3-.2.2v.3l-.3.2-.2.2-.2.2-.3.2-.2.2-.2.2h-.2l-.2.2h-.2l-.3.2h-.2l-.2.2h-1.5zm0-1zm-6.5-4.8h1l.2.4.2.4v.2l.2.3.2.3v.3l.3.2.2.2.2.2v.2l.3.2.2.2.3.3.2.2.2.2h.2v.3h.3l.2.2h.7l.2.2h1.1v1H411l-.4-.2h-.2l-.3-.2h-.2l-.2-.3h-.3l-.2-.3-.4-.3-.2-.3-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2-.3v-.2l-.3-.2-.2-.2-.2-.3v-.3l-.2-.3v-.3l-.2-.2v-.7zm1 0zm4-6.4v1h-.6l-.2.2h-.5l-.2.2h-.2l-.2.2-.2.2h-.2l-.2.3v.2l-.3.2-.2.3v.2h-.2v.3l-.2.2v.2l-.2.2v.7l-.2.2v1.7h-1V222h.2v-.4l.2-.3v-.2l.2-.2v-.2l.3-.3v-.2h.2l.2-.3.2-.2.2-.2.2-.2h.2l.2-.2h.3l.2-.3h.2l.2-.2h.6l.3-.2h.6z"/>
+        <path fill="#0c4076" d="M411.2 220.7c2 0 3.6 1.5 4 3.5.2 2-1 3.6-3 3.6a4 4 0 01-3.7-3.4c-.3-2 1-3.6 2.7-3.7z"/>
+        <path fill="#21231e" d="M415.6 224l-1 .3v-.4l-.2-.2v-.4h-.2v-.3l-.2-.2-.2-.3-.2-.2-.2-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2h-.6v-.2h-.6v-1h1l.2.2h.2l.3.2h.3v.2h.3l.2.3v.2h.3l.2.2.2.2.2.3.3.2v.4h.2v.3l.2.3v.4l.2.2zm-3.3 4.3v-1h.7l.2-.2h.4v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.5l.2-.2v-1.1l1-.3v2h-.2v.3l-.2.3-.2.3-.2.2h-.2v.2l-.2.2h-.2v.2h-.3l-.2.2h-.4v.2h-1zm-4.3-3.8l1-.2v.5l.2.3v.4h.2v.2l.2.2.2.2.2.3.2.2.2.2h.3v.2h.4l.3.2h.8v1h-1.3l-.2-.2h-.2l-.3-.2h-.2v-.2h-.2v-.2l-.3-.2-.3-.2v-.2h-.2v-.3h-.3v-.3l-.2-.2v-.2h-.2v-.5l-.2-.2v-.5zm2.7-3.8h1l-.5.5h-.7l-.2.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.5h-.2v1.3l-1 .3v-1.8h.2v-.5h.2v-.3h.2v-.3h.3v-.3h.3v-.2h.3v-.2h.3v-.2h1l.2-.2h.4l-.5.5zm1 0v.5h-.5l.5-.5zm0 0h-1l.5-.5.5.5zm-1 0v-.5h.5l-.5.5z"/>
+      </g>
+      <path fill="#fff" d="M482 183c4 0 7 3 7 7s-3 6.7-7 6.7c-3.6 0-6.7-3-6.7-6.8 0-4 3-7 6.8-7z"/>
+      <path fill="#21231e" d="M489.5 189.8h-1c0-2.3-1.4-4.6-3.5-5.6a6.3 6.3 0 00-3-.7v-1c2.6 0 5 1.3 6.4 3.5a7.4 7.4 0 011 3.8zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5.2-3.7 6.5a7.3 7.3 0 01-3.7 1zM475 190h1a6.4 6.4 0 006.3 6.2v1a7.1 7.1 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.5v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.7 1.4-5 3.5-6.4a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 171c4 0 7 3 7 7a6.8 6.8 0 11-13.7-.2c0-3.7 3-6.7 6.8-6.7z"/>
+      <path fill="#21231e" d="M489.5 178h-1c0-2.4-1.4-4.7-3.6-5.8a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.3v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.5-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 178h1a6.4 6.4 0 006.3 6.3v1a7.1 7.1 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 159.6c4 0 7 3 7 7a6.8 6.8 0 11-13.7-.2c0-3.7 3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 166.5h-1c0-2.4-1.4-4.7-3.6-5.7a6.3 6.3 0 00-3-.7v-1c2.6 0 5 1.5 6.4 3.6a7.4 7.4 0 011 4zM482 174v-1c2.5 0 4.7-1.5 5.8-3.6.4-1 .7-2 .7-3h1c0 2.6-1.4 5-3.5 6.4a7.3 7.3 0 01-4 1zm-7.2-7.5h1c0 2.4 1.4 4.7 3.6 5.7a6.3 6.3 0 002.7.7v1a7.2 7.2 0 01-6-3.6 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.4 6.4 0 00-5.5 3.6 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.4a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 127c4 0 7 3.2 7 7s-3 6.8-7 6.8a7 7 0 01.1-13.8z"/>
+      <path fill="#21231e" d="M489.5 134h-1c0-2.4-1.4-4.7-3.6-5.8a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.3v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.5-1.5 5-3.7 6.3a7.3 7.3 0 01-3.7 1zM475 134h1c0 2.3 1.4 4.6 3.5 5.6a6.3 6.3 0 002.8.7v1a7.3 7.3 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 137.2c4 0 7 3 7 6.8s-3 7-7 7c-3.6 0-6.7-3.2-6.7-7s3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 144h-1c0-2.3-1.4-4.6-3.5-5.7a6.3 6.3 0 00-3-.6v-1c2.7 0 5.2 1.4 6.5 3.6a7.4 7.4 0 011 3.7zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 144h1c0 2.4 1.4 4.7 3.5 5.7a6.3 6.3 0 002.8.7v1a7 7 0 01-6-3.5 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.4 6.4 0 00-5.5 3.6c-.5 1-.7 2-.7 2.8h-1c0-2.5 1.4-5 3.5-6.2a7.3 7.3 0 013.8-1.2z"/>
+      <path fill="#fff" d="M482 148.2c4 0 7 3 7 6.8s-3 7-7 7c-3.6 0-6.7-3.2-6.7-7s3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 155h-1c0-2.3-1.4-4.6-3.6-5.7a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 155h1c0 2.4 1.4 4.7 3.5 5.7a6.3 6.3 0 002.8.7v1a7.3 7.3 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.5 6.5 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.5 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#edb92e" d="M487 195.5c1 1.6.7 2 1.4 2.4.8.6 2 .6 3.4.4 5.3-1 4.5 2.3 2.2 6-1 1.7-3.8 3.5-5.2 5-1.4 1.5-1.6 2.8-2 3.2h-9.2c-.5-.4-.7-1.7-2-3.2-1.5-1.5-4.2-3.3-5.3-5-2.4-3.7-3-7 2.2-6 1.3.2 2.6.2 3.4-.5.6-.6.3-1 1.3-2.5a7 7 0 012.2-2.3c1-.5 1.8-.2 2.6-.2 1 0 2-.3 2.8.2a7 7 0 012.2 2.3z"/>
+      <path fill="#21231e" d="M488.7 197.5l-.7.8-.2-.2h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.3v-.2l.8-.6v.2h.2v.3l.2.2v.2h.2v.4h.2v.4h.2v.4h.2zm-.7.8l-.3-.3.3.3zm3.8-.4v1h-2.4l-.2-.2h-.2l-.2-.2h-.3l-.2-.2.7-1v.2h.2v.2h.8l.2.2h1.9zm2.6 6.6l-.8-.6.2-.3.2-.3.2-.4.2-.3v-.3l.3-.3v-.2l.2-.2v-.6l.2-.2v-1.3l-.2-.2h-.2v-.2h-.5l-.2-.2h-2l-.2-1h2.8l.3.2h.2l.2.2.2.2.2.2.2.2v.3l.2.3v1.7l-.2.3v.3l-.3.2v.4l-.3.3v.2l-.3.4v.3l-.3.2-.3.4zm-5.3 5.2l-.6-.7.3-.2v-.2h.3l.2-.3v-.2h.3l.2-.2h.2v-.3h.2l.2-.3.2-.2h.2l.2-.3h.2v-.3l.3-.2h.2l.2-.3v-.2l.2-.2.2-.2h.2v-.3h.3v-.4h.3v-.3h.2v-.3l1 .6-.2.2-.2.3v.3l-.2.2h-.2l-.2.3v.2l-.3.2-.3.3v.2h-.3l-.2.3-.2.2h-.2l-.2.3-.2.2-.3.3-.3.3h-.2v.3l-.3.2h-.2v.3l-.3.2h-.2v.3h-.2l-.2.3zm-2.3 3.3v-1l-.3.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2h.2v-.2l.2-.2.2-.3.3-.3.8.6v.2l-.2.2-.2.2-.2.3v.2h-.2v.2l-.2.2v.2l-.2.2v.2h-.2v.4h-.2v.2l-.2.2v.2h-.5zm.3 0h-.2.2zm-5 .2v-1h4.7v1h-4.5zm0-1h.2zm0 0v1-1zm0 0zm-4.7.8l.6-.8h-.4 4.2l.2 1h-4.7l-.3-.2zm.3 0h-.2.2zm-2.4-3.2l.7-.7v.2l.2.2.2.3.2.3.2.2v.2h.2v.4h.2v.4h.2v.4h.2v.4h.2v.2l-.5.8-.2-.2v-.2l-.2-.2v-.2h-.2v-.4h-.2v-.4l-.2-.2v-.2h-.2v-.2l-.2-.3-.2-.2-.2-.3-.2-.2zm-5.4-5.2l1-.6v.2l.2.3h.2v.3l.2.2h.2v.3h.3v.3l.2.2h.2l.2.3.2.2v.2l.3.2h.3l.2.3h.2l.2.2v.2h.2l.2.3h.2l.2.3h.2v.3l.3.2h.2v.3h.3v.3l-.6.8-.2-.2-.3-.3-.3-.2-.3-.2v-.2l-.2-.2h-.2l-.2-.3h-.2l-.2-.2h-.2v-.3l-.3-.2h-.2l-.2-.3v-.2h-.3l-.2-.3v-.2h-.3l-.2-.3v-.2l-.3-.2h-.2v-.3l-.3-.2-.2-.2-.2-.2zm2.7-6.7v1l-.6-.2h-2.1l-.2.2h-.2v.2h-.2v.4l-.2.2v1.1l.2.2v.3l.2.3v.2l.2.3.2.4v.3l.3.3.3.4.2.3.2.3-1 .6v-.4l-.3-.3-.2-.4-.2-.4v-.3l-.3-.4v-.4l-.3-.3v-.4l-.2-.3v-.6l-.2-.3v-1l.2-.2v-.2l.3-.2.2-.2.2-.2.4-.2h.3l.3-.2h2.5zm3-.5l.8.8-.2.2h-.2l-.2.2h-.4l-.2.2h-3v-1h2.5l.2-.2h.4v-.2h.2zm1.4-2.3l.7.6v.3l-.2.2v.2h-.2v.4h-.2v.8h-.2v.2h-.2v.2l-.2.2-.8-.7h.2v-.4h.2v-.4h.2v-.2l.2-.2v-.4h.2v-.3h.2v-.3zm0 0l.2-.4-.3.4zm2.3-2.4l.5.8-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-.2.2v.2l-1-.6.2-.2.2-.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2.2-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2zm2.8-.3v1h-2.4l-.5-.7h.2v-.2h.4l.2-.2h2zm3 .3l-.5.8h-.4v-.2H482v-1h2.5l.2.2h.2l.2.2zm0 0l.3.2-.3-.2zm2 3.2v-1l-.4.8-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2v-.2l.4-.8h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l-.4.8zm.4-.8l.5.8h-1l.4-.8zm-.4-.2v1l-.4-.2.4-.8zm-.4.8l-.5-.8h1l-.4.8z"/>
+      <path fill="#21231e" d="M481.4 212.8l-1-.2c-.4-3.7-2-7-4.3-9.6 2.8 1.8 4.8 5.7 5.4 9.8z"/>
+      <path fill="#edb92e" d="M494.2 198.3c-.5 1-1 2.4-2 3.5-1.5 1.6-4 .5-6.5-1.6-.8-.6-2.2-1-3.6-1a6 6 0 00-3.4 1c-2.5 2-5 3.2-6.6 1.6-1-1-1.5-2.4-2-3.5h2.5c1.3.3 2.6.3 3.4-.4.6-.6.3-1 1.3-2.5a7 7 0 012.2-2.3c1-.5 1.7-.2 2.6-.2 1 0 2-.3 2.8.2.8.5 1.5 1.3 2.2 2.3 1 1.6.7 2 1.3 2.4 1 .6 2.2.6 3.5.4 1-.2 1.8-.2 2.4 0z"/>
+      <path fill="#21231e" d="M492.6 202l-.7-.6v-.2l.2-.2.2-.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.3v-.4l1 .5v.4l-.2.2v.2l-.2.2v.4h-.2v.2l-.2.2v.3h-.2v.2h-.2v.2h-.2v.3l-.2.2-.2.2h-.2zm-7.3-1.4l.7-.7h.2l.2.2.3.2.2.2.3.3h.3l.2.2h.2l.2.2h.2l.2.2h.2l.2.2h.4l.2.2h1.6l.2-.2.2-.2h.2v-.2l.8.7-.2.3h-.2v.3h-.3l-.3.2h-.3l-.2.2h-1.9l-.3-.2h-.3l-.2-.2h-.3l-.2-.2h-.3l-.2-.2-.2-.2h-.3l-.2-.3h-.3l-.2-.3-.2-.2-.2-.2-.2-.2-.3-.2zm.7-.7l.5.3-.5-.4zm-4-.2v-1h2v.2h.7v.2h.4l.2.2h.2l.2.2h.2v.2h.2l-.7.8h-.2v-.2h-.2v-.2h-1v-.2h-1v-.2h-1zm-3 .8l-.7-.7v-.2h.2l.2-.2h.2v-.2h.2l.2-.2h.5v-.2h1.2v-.2h1v1h-1.5v.2h-.5l-.2.2h-.4v.2h-.2l-.2.2zm-7.3 1.5l.7-.6.3.2.2.2h.2v.2h1.7v-.2h.5l.2-.2h.2v-.2h.3l.2-.2.2-.2h.3l.2-.3h.2l.2-.3.3-.2v-.2h.3l.7.6-.3.2-.2.2-.3.2-.2.2-.2.2h-.3l-.2.3h-.3l-.2.2h-.2l-.3.2h-.2l-.2.2h-.2l-.2.2h-.3l-.3.2H473l-.4-.2h-.2l-.2-.2-.2-.2-.3-.3zm-1.7-4l.2 1 .3-.7v.2l.2.2v.3l.2.2v.4l.2.2v.2h.2v.4h.2v.4h.2v.2h.2v.2h.2v.2l.2.2-.7.7h-.2v-.2h-.2v-.2h-.2v-.5h-.2v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.4h-.2v-.4l-.2-.2v-.4h-.2l.4-.8zm-.4.7l-.2-.6.6-.2-.4.7zm3-.6l-.2 1-.2-.2H470l-.2-1h2.4zm3-.5l.7.8-.2.2h-.2l-.2.2h-.4l-.2.2h-2.8v-1h2.3l.2-.2h.4v-.2h.2zm.7.8l-.5.4.5-.4zm.6-3l.7.5v.3l-.2.2v.2h-.2v.4h-.2v.8h-.2v.2h-.2v.2l-.2.2-.8-.7h.2v-.4h.2v-.4h.2v-.2l.2-.2v-.4h.2v-.3h.2v-.3zm2.3-2.5l.5.8-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-.2.2v.2l-1-.6.2-.2.2-.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2.2-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2zm2.8-.3v1h-2.3l-.5-.7h.2v-.2h.4l.2-.2h2zm3 .3l-.5.8h-.4v-.2H482v-1h2.5l.2.2h.2l.2.2zm0 0l.3.2-.3-.2zm2.4 2.4l-.8.6-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2v-.2l.4-.8h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2zm1.3 2.3l-.7.8-.2-.2h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.3v-.2l.8-.6v.2h.2v.3l.2.2v.2h.2v.4h.2v.4h.2v.4h.2zm-.7.8l-.3-.3.3.3zm3.8-.4v1h-2.4l-.2-.2h-.2l-.2-.2h-.4v-.2h-.2l.7-1v.2h.2v.2h.8l.2.2h1.9zm3 .5l-1-.4.3.8H492l-.2-1h2.4l.5.7zm-.5-.7h.6l-.3.7-.4-.7zm0 .5l.4.2-.5-.2zm0-.5h.6l-.3.7-.4-.7z"/>
+      <path fill="#edb92e" d="M482 211.7c4.4 0 8 3.4 8 7.7s-3.6 7.8-8 7.8-7.6-3.5-7.6-7.8 3.5-7.8 7.7-7.8z"/>
+      <path fill="#21231e" d="M483 212.8l.8-.2c.5-3.7 2-7 4.3-9.6a14.7 14.7 0 00-5 9.8z"/>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#b"/>
+      <path fill="#edb92e" stroke="#21231e" d="M577 293.6c2 .3 3 1.5 3 2.8 0 1.3-1 2.6-3 3a8.7 8.7 0 01-1.6.2c-60.8 5.2-125.7 5.2-186.5 0a8.7 8.7 0 01-1.6-.3c-2-.3-3-1.6-3-3 0-1.2 1-2.4 3-2.7a8.6 8.6 0 011.5-.3c60.7-5.2 125.6-5.2 186.4 0 .6 0 1 .2 1.5.3z"/>
+      <path fill="#21231e" d="M412 298.4h-.2v-.2h-.2v-1h.4v-.2.2-.2h2.3l.7-.2h3l.7-.2h3l.7-.2h3l.8-.2h3.3l.7-.2h3.8l.7-.2h.8v1.2h-2.9l-.7.2H428l-.7.2h-2.7l-.8.2H421l.7.2h3.7l.7.2h2.9l.7.2h3.7l.7.2h1.5v1.2h-3.7l-.7-.2h-3.8l-.7-.2h-2.9l-.7-.2H420l-.6-.2h-2.9l-.7-.2H413l-1-.2v-.2.2zm.2-.7zm46.6-2.6v1.3H453l-.7.2h-6.6l-.7.2h-5l-1 .2h-3.5v-1.2h3.5l.8-.2h5.2l.7-.2h5.9l.7-.2h6.8zm23.3 0v1h-13.7l-.7.2h-8.8v-1h1.4l.8-.2H482zm23.5 0v1.3h-11.1l-.7-.2H482v-1h23.6zm23.3 1v1h-5.2l-.8-.2h-5.2l-.7-.2h-6.5l-.8-.2h-4.3V295h.7l.7.2h7.5l.8.2h5l.8.2h5.1l.6.2h2.3zm23.4 1v.2h.4v1h-.2l-.2.2h-3l-.7.2h-2.2l-.7.2h-3.8l-.8.2h-2.8l-.7.2H534l-.8.2h-3.6l-.8.2v-1.2h2.2l.7-.2h3.7l.8-.2h3.7l.7-.2h1.8-1.4l-.8-.2h-2.7l-.7-.2H533l-.6-.2h-3.6V296h6.5l.7.2h3l.8.2h2.8l.7.2h3l.7.2h3l.7.2h1.5zm0 .7zm-116.7.7h.2l.2.2v.8h-.2v.2h-.2v-1.2zm93.3 1.2h-.2l-.2-.2v-.2h-.2v-.8h.2v-.2h.4v1.2zm-50.3-36.2v-1h3.8v1h-4zm0-1zm-1.2 0h1.2v1h-1.2v-1zm0 1zm-.6-1h.6v1h-.6v-1zm-1 0h1v1h-1v-1zm0 0zm-.8 0h.6v1h-.7v-1zm0 1zm-.5-1h.4v1h-.5v-1zm0 0zm-.8 0h.8v1h-.8v-1zm0 0zm-1.2 0h1.2v1h-1.2v-1zm-1 0h1v1h-1v-1zm0 0zm-.2 0h.2v1h-.2v-1zm-1 0h1v1h-1v-1zm-2.5 1v-1h2.6v1h-2.5zm0-1zm-.3 0h.2v1h-.2v-1zm0 1zm-.2-1h.2v1h-.2v-1zm0 0zm-1 0h1v1h-1v-1zm0 1zm-.5-1h.4v1h-.4v-1zm0 0zm-.4 0h.4v1h-.4v-1zm0 1zm-1.2-1h1.2v1h-1.2v-1zm0 0zm0 0v1-1zm0 1h-.2.2zm-1.2-1h1.2v1l-1.2.2v-1zm-.4 0h.4v1.2h-.4v-1zm-.8.2h.8v1h-.8v-1zm0 0h.3-.2zm-.3 0h.3v1h-.3v-1zm0 1h-.5.5zm-1-1h1v1h-1v-1zm-1 0h1v1h-1v-1zm0 0zm-.2 0v1-1zm0 1zm-1-1h1v1h-1v-1zm-.6 0h.5v1h-.4v-1zm0 0zm0 0v1-1zm0 1zm-4.2.2v-1h3.5v-.2h.4v1h-2.7l-.2.2h-.8zm0-1zm-.6 0h.5v1h-.6v-1zm0 0zm-1.7 0h1.6v1h-1.7v-1zm0 1zm-.2-1h.3v1h-.2v-1zm0 0zm-1.3 0h1.4v1h-1.3v-1zm-1 0h1v1h-1v-1zm-.6 0h.7v1h-.6v-1zm0 0zm0 0v1.2-1zm0 1.2zm-1.6-1h1.5v1h-1.5v-1zm0 1zm0-1v1-1zm0 0zm-1.2 0h1.2v1h-1.2v-1zm0 0zm0 0v1-1zm0 1zm-1.2-1h1l.2 1H444v-1zm-.8 0h.8v1h-.7v-1zm0 0zm-1.6.2h1.6v1h-1.5v-1zm0 1zm0-1v1-1zm0 0zm-6.2 1.3v-1h1.7l.2-.2h3.9v1H436l-.2.2zm0 0zm-.4-1h.3v1h-.2v-1zm0 0zm-9 1.4v-1h1.3l.3-.2h3.2l.3-.2h3.5v1h-5.1l-.3.2H426zm0 0zm-.3-1h.2v1h-.3v-1zm0 0zm-.5 0h.5v1h-.4v-1zm-18.2 2.2v-1h1.8l.5-.2h1.7l.5-.2h2.4l.6-.2h2.6l.6-.2h2.2l.6-.2h2.8l.6-.2h1.2v1h-2.1l-.6.2h-2.7l-.6.2h-2.3l-.6.2h-2.8l-.6.2h-2.2l-.5.2H408l-.6.2h-.6zm0 0zm-.3-1h.3v1h-.2v-1zm0 0zm0 0v1-1zm0 1zm-26.3 2.4v-1h.7l1-.2h.8l.8-.2h1.6l.8-.2h1l.7-.2h1.6l.8-.2h1.8l.8-.2h.8l1-.2h1.7l.7-.2h1.7l.8-.2h1.8l.7-.2h1.6l1-.2h1.5l1-.2v1H405l-.7.2h-1.7l-.8.2H400l-.7.2h-.8l-1 .2H396l-.8.2h-1.7l-.8.2H391l-.8.2h-.8l-.8.2H387l-1 .2h-.7l-.8.2H383l-1 .2h-.8l-.8.2zm0 0zm0-7v1h-.5l-.5.2h-.5l-.3.2-.4.2-.3.2h-.2l-.3.3-.2.2-.3.3v.5l-.2.2v1.1h.2v.3l.2.2.2.2.3.3.3.2h.2l.3.2h.3l.4.2h1v1h-1.6l-.4-.2-.4-.2-.3-.2-.3-.2-.3-.2-.4-.2-.2-.3-.2-.2v-.3l-.3-.3-.2-.3v-1.6l.2-.3.2-.3.2-.4.2-.3.2-.3.4-.3.3-.2.4-.2.3-.2h.4l.5-.2h.6l.5-.2zm0 1zm26.3-3.3v1H405l-.7.2h-1.7l-.8.2H400l-.7.2H396l-.8.2h-1l-.7.2H392l-1 .2h-1.6l-.8.2h-.8l-.8.2h-1.7l-.8.2h-.8l-.8.2H381l-.8.2v-1h1.7l.8-.2h.8l.8-.2h.8l.8-.2h1.7l.8-.2h1.6l1-.2h.8l.8-.2h1.8l.7-.2h1.7l1-.2h.7l.8-.2h1.8l.7-.2h1.6l1-.2h2.5zm0 1zm0 0v-1 1zm0-1zm37-2.2v1.2H439l-1 .2h-2.3l-1.3.2H431l-1.2.2h-2.2l-1.3.2H424l-1.2.2h-2.3l-1 .2H417l-1.2.2h-1.2l-1 .2h-2.3l-1.3.2h-1l-1.2.2h-1.2v-1h2.2l1.2-.2h1l1.2-.2h2.2l1.3-.2h1l1.2-.2h2.3l1-.2h2.3l1.3-.2h2.4l1.2-.2h2.3l1-.2h3.5l1.2-.2h3.5l1-.2h2.5zm1 1l-1 .2v-1h1v1zm0 0zm.2 0h-.3v-1l.2 1zm-.2-1zm.4 1h-.3l-.2-1h.4v1zm1.2 0h-1.2v-1h1.2v1zm0 0zm0 0v-1 1zm0-1zm15.4-.4v1h-5.5l-.5.2h-6.5l-.4.2h-2.6v-1h5l.5-.2h7.7l.5-.2h1.8zm.8 1h-.8v-1h.8v1zm0 0zm0 0v-1 1zm0-1zm1.4 1h-1.4v-1h1.4v1zm0 0zm.2 0h-.2v-1h.2v1zm0 0h-.2.2zm0 0v-1 1zm0-1zm1.2 1h-1.2v-1h1.2v1zm.5 0h-.6v-1h.4v1zm-.2-1zm.8 1h-.7l-.2-1h.8v1zm1 0h-1v-1h1v1zm0 0zm.2 0h-.3v-1h.2v1zm0-1zm.4 1h-.4v-1h.4v1zm3-1l.2 1H468v-1h3.3zm1.2 1h-1v-1l1-.2v1zm0 0v-1.2 1zm0-1.2zm1.3 1h-1.2v-1h1.2v1zm3.5-1v1h-3.5v-1h3.5zm0 0zm0 1v-1 1zm0 0zm1.3 0h-1.2v-1h1.2v1zm3.6-1v1h-3.5v-1h3.7zm3.8 0v1H482v-1h3.8zm1 1h-1v-1h1.2v1zm.2 0zm0 0v-1 1zm0-1zm3.6 0v1H487v-1h4zm1 1h-1v-1h1.2v1zm.2-1zm0 1v-1 1zm1 0h-1v-1h1v1zm3.3-1v1H493v-1h3zm.5 1h-.4v-1h.5v1zm0-1zm.3 1h-.3v-1h.3v1zm0 0zm1 0h-1v-1h1v1zm.6 0h-.7v-1h.8v1zm0-1zm.5 1.2h-.6v-1h.5v1zm1 0h-1v-1h1v1zm0-1zm0 1v-1 1zm0 0h.3-.2zm.3 0h-.2v-1h.3v1zm0 0zm1.3 0h-1.3v-1h1.4v1zm0-1zm0 1v-1 1zm0 0h.2zm1 0h-1v-1h1v1zm15.2-.6v1h-6l-.4-.2H504l-.6-.2h-.9v-1h6l.4.2h6.6l.4.2h1.7zm0 0zm0 1v-1 1zm0 0zm1.3 0h-1v-1h1v1zm.4 0h-.3v-1h.5v1zm0-1zm.2 1h-.2v-1h.2v1zm0 0zm1 .2h-1v-1h1v1zm37 1v1h-2.3l-1.2-.2h-1l-1.2-.2h-2.2l-1.3-.2H546l-1-.2h-1.3l-1-.2h-2.3l-1.3-.2H537l-1-.2h-4l-1-.2h-2.6l-1-.2H524l-1-.2h-2.4v-1h4.7l1.2.2h3.3l1.3.2h2.3l1.3.2h2.3l1 .2h2.4l1 .2h2.3l1.3.2h2.3l1 .2h2.3l1.2.2h1.2l1 .2h1.3l1 .2h1.3zm0 0zm0 1v-1 1zm0 0zm26.4 1.4v1H582l-.8-.2h-.8l-.8-.2H578l-.7-.2h-.8l-.8-.2H574l-.8-.2h-.8l-.8-.2h-1.8l-.7-.2h-1.5l-.8-.2H565l-.8-.2h-1.7l-.8-.2H560l-.8-.2h-1.6v-1h3.5l.8.2h1.6l1 .2h1.7l.7.2h1.7l.8.2h1.8l.7.2h.8l.8.2h1.8l.8.2h.8l.8.2h1.8l.7.2h.7l.8.2h1.8l.7.2zm0 1zm0 6v-1h1.6l.3-.2h.3l.3-.2.2-.2.2-.2h.2v-.3l.2-.2v-.2h.2v-1.4l-.2-.3v-.2h-.3l-.2-.3-.3-.2h-.2l-.3-.3-.4-.2h-.4l-.4-.2h-.4l-.5-.2v-1h.5l.6.2h.5l.5.3.4.3.4.2.3.2.4.3.3.3.2.3v.3l.3.2v.3l.2.3v1.3l-.3.3v.3l-.3.3-.3.4-.3.2-.3.2-.2.2-.3.2-.4.2h-.3l-.4.2H584zm0 0zm-26.5-2.4v-1h1.8l.8.2h1.8l.8.2h1.8l.7.2h1.7l1 .2h.7l.8.2h1.8l.7.2h1.6l.8.2h1l.8.2h1.6l.8.2h1l.7.2h1.5l.8.2h1l.7.2v1h-1l-.8-.2h-1.6l-.8-.2h-.8l-.8-.2h-1.7l-.8-.2h-.8l-1-.2h-1.6l-.8-.2h-.8l-1-.2h-1.4l-.8-.2H566l-.7-.2h-1.6l-1-.2H561l-1-.2h-1.6l-.8-.2zm0 0zm0-1v1-1zm0 0zm-.2 0h.3v1h-.4v-1zm0 1zM539 265v-1h2.9l.5.2h3l.5.2h2.3l.6.2h2.2l.6.2h2.3l.5.2h2.4l.5.2v1h-1.7l-.5-.2h-2.3l-.6-.2H550l-.7-.2H547l-.6-.2h-2.9l-.6-.2H540l-.6-.2h-.6zm-.4-1h.5v1h-.4v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-9.2-.5v-1h4l.3.2h3.2l.3.2h1.3v1h-1.6l-.3-.2H533l-.4-.2h-3.3zm0-1zm-.3 0h.2v1h-.3v-1zm0 1zm-6.4-.3v-1h4.5l.2.2h1.7v1h-4.4l-.2-.2h-1.7zm0-1zm0 0v1-1zm0 1zm-1.5-1h1.7v1H521v-1zm0 0zm-.7 0h.8v1h-.7v-1zm-1-.2h1v1H519l.2-1zm-.2 1zm0-1h.2v1-1zm0 0zm-1 0h1v1h-1v-1zm0 0zm-.2 0v1-1zm0 1zm-1.4-1h1.4v1h-1.4v-1zm0 1zm-.2-1h.2v1h-.2v-1zm0 0zm-.6 0h.6v1h-.7v-1zm-1 0h1v1h-1v-1zm-1.4-.2h1.4v1h-1.4v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-1.6-1h1.6v1h-1.6v-1zm0 0zm-.6 0h.6v1h-.6v-1zm-4.2 1v-1.2h3.3l.2.2h.8v1h-4.3zm0 0zm0-1.2v1-1zm0 0zm-.5 0h.6v1h-.5v-1zm-1 0h1v1h-1v-1zm0 1zm0-1v1-1zm0 0zm-1.3 0h1.2v1h-1.3v-1zm-1 0h1v1h-1v-1zm0 1h.6-.6zm-.2-1h.3v1h-.3v-1zm0 0h-.3.3zm-.8 0h.8v1h-.8v-1zm-.4 0h.4v1h-.4v-1zm-1.2 0h1.3v1H500v-1zm0 1h.2zm0-1v1-1zm0 0zm-1 0h1v1h-1v-1zm0 1zm-.5-1h.4v1h-.6v-1zm0 0zm-.4 0h.5v1h-.4v-1zm0 1zm-1-1h1v1h-1v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-.3-1h.3v1h-.3v-1zm0 0zm-2.6.8v-1h2.3v1H494zm-1-1h1v1h-1v-1zm-.2 0h.2v1h-.2v-1zm0 0zm-1 0h1v1h-1v-1zm-1.2 0h1.2v1h-1.3v-1zm0 0zm-.8 0h.8v1h-.8v-1zm0 0zm-.4 0h.4v1h-.5v-1zm0 1zm-.7-1h.7v1h-.7v-1zm0 0zm-1 0h1v1h-1v-1zm-.7 0h.6v1h-.6v-1zm0 1zm-1.2-1h1.2v1H486v-1zm0 0zm-3.7 1v-1h3.9v1h-4.1zm.4 1.8L460 276.6l-.4-1 22.7-11.3h.4v1zm-.5-1h.4-.5zm22.7 12.4l-23-11.4.4-1 22.7 11.5v1h-.3zm.4-1l1 .6-1 .4v-1zm-23 11.6l22.7-11.5.4 1-22.6 11.4h-.5v-.8zm.4 1h-.3.4zM460 275.7l22.8 11.5-.5 1-22.8-11.6v-1h.4zm-.4 1l-1-.5 1-.5v1z"/>
+      <path fill="#0c4076" d="M482 269c5.8 0 10.4 3.2 10.4 7s-4.6 7-10.3 7-10-3.2-10-7 4.5-7 10-7z"/>
+      <path fill="#21231e" d="M493 276h-1v-.3l-.2-.3v-.5l-.2-.3v-.3l-.3-.3-.2-.4v-.3l-.3-.2-.2-.2-.2-.3-.3-.2-.3-.3-.3-.2-.3-.2-.2-.2-.4-.2-.4-.2-.3-.2-.4-.2h-.5l-.4-.3h-.4l-.5-.2h-.8l-.5-.2h-1.9v-1.2h1.7l.6.2h.5l.5.2h.5l.5.2h.4l.5.3.4.2.5.2h.5l.4.3.3.2.4.2.3.3.4.3.3.2.3.3.3.3.2.4.3.3.2.4.2.4.2.4v.3l.2.5v.4l.2.2v.8zm-11 7.4v-1h1.6l.5-.2h1.1l.5-.2h.5l.4-.3h.4l.5-.3h.4l.3-.3h.4l.4-.3.3-.2.4-.3.3-.2.3-.2.3-.3.2-.3.2-.2.3-.3v-.3l.3-.3h.2v-.4l.2-.3v-.7l.2-.3v-.3h1v.4l-.2.4v.4l-.2.4v.3l-.2.3-.2.3-.2.4-.2.3-.3.3-.2.3-.3.2-.3.3-.3.3-.4.3-.3.3-.4.2-.4.3-.5.2-.4.2-.4.2h-.4l-.5.3h-.4l-.5.3h-.5l-.5.2h-1.1l-.5.2H482zm-10.6-7.4h1v1l.2.3v.3l.2.2.2.3v.4l.3.3.2.3.3.2.2.3.3.3.3.2.3.2.2.3.3.2.4.2h.2l.4.3h.4l.4.3h.5l.3.3h.9l.5.2h1.5l.6.2h.5v1h-1.9l-.5-.2h-.5l-.5-.2-.5-.2h-.4l-.5-.3h-.4l-.4-.3-.4-.2-.4-.2-.4-.3-.4-.2-.3-.2-.4-.2-.4-.3-.3-.3-.3-.3-.2-.4-.3-.3-.2-.3-.2-.4v-.3l-.2-.4-.2-.4v-.8l-.2-.4v-.4zm10.7-7.4v1h-1.3l-.5.2h-.3l-.5.2h-.5l-.4.2h-.4l-.6.3h-.4l-.4.3-.4.2-.3.2-.5.2-.3.2-.3.2-.4.2-.3.3-.3.2-.2.3-.3.3-.2.3-.2.3v.3l-.2.2v.3l-.2.3v.7l-.2.3v.3h-1V275l.2-.5.2-.4v-.2l.3-.4.3-.3.2-.3.3-.3.2-.3.3-.2.3-.3.3-.2.3-.3.3-.3.4-.2.4-.2.4-.2h.4l.4-.3.5-.2.5-.2h.5l.5-.2h1l.5-.2h1.1l.6-.2h.5z"/>
+      <path fill="#edb92e" d="M482 211.7c4.4 0 8 3.4 8 7.7s-3.6 7.8-8 7.8-7.6-3.5-7.6-7.8 3.5-7.8 7.7-7.8z"/>
+      <path fill="#21231e" d="M490.4 219.4h-1v-1l-.2-.3v-.4l-.2-.3v-.4l-.2-.4v-.3l-.3-.3-.2-.3-.2-.3v-.3l-.3-.2-.2-.3-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.4-.2h-.3l-.3-.3h-.4l-.3-.2h-.4l-.4-.2H482V211l.6.2h1.2l.4.2h.4l.4.2.3.2.4.2h.4l.4.3.3.3.4.2.4.2.3.3.3.3.2.3.3.2.2.3.3.3.2.3.2.5.2.3v.4l.3.4v.8l.2.4v.8l.2.4v.4zm-8.3 8.3v-1h1.5l.3-.2h.3l.3-.2.4-.2h.3l.3-.2h.3l.2-.3.3-.2.2-.2.3-.2.3-.2.2-.3.2-.2.2-.2v-.3l.3-.3.2-.3.2-.4v-.3l.2-.4v-.7l.2-.4v-.8l.2-.4v-.4h1v1.2l-.2.4v.5l-.2.4v.3l-.3.4v.3l-.3.4-.2.3-.2.4-.3.4-.2.3-.3.3-.2.3-.3.3-.3.2-.3.3-.3.3-.3.2-.3.2-.3.2h-.4l-.3.2-.4.2h-.4l-.4.2H482zm-8-8.3h1v1.8l.2.3.2.3v.3l.2.3.2.3.2.2.2.3.2.3.2.3.2.3.2.3.3.2.2.3.3.3.3.2.4.2h.3l.3.3h.3l.4.3h.3l.3.2h.7l.4.2h.7v1h-1.6l-.4-.2h-.3l-.4-.3h-.4l-.4-.3-.4-.3-.3-.2-.5-.2-.3-.2-.3-.2-.4-.2-.3-.3-.3-.3-.2-.3-.3-.3-.2-.3-.2-.3v-.3l-.3-.4v-.3l-.3-.4v-.4l-.2-.5v-.4l-.2-.3v-1.4zm8-8.3v1.2h-1.3l-.4.2h-.3l-.3.2h-.4l-.3.3h-.3l-.3.2-.3.2-.2.2-.3.2-.2.3-.3.3-.2.2-.2.3-.2.3-.2.4-.2.3-.2.3-.2.3v.3l-.2.3-.2.3v.7l-.2.3v1.1h-1v-1.6l.2-.4v-.4l.2-.4.2-.4v-.4l.3-.3v-.4l.3-.2.2-.3.3-.3.2-.3.3-.4.3-.3.3-.3.2-.2.3-.2.4-.3.2-.2h.4l.3-.2.3-.2h.4l.4-.2h.5l.4-.2h1.1z"/>
+      <path fill="#edb92e" d="M482 213.7c3.3 0 5.8 2.6 5.8 5.7 0 3.2-2.5 5.8-5.7 5.8-3 0-5.5-2.6-5.5-5.8 0-3 2.5-5.7 5.6-5.7z"/>
+      <path fill="#21231e" d="M488.3 219.4h-1V218h-.2v-.7l-.2-.2v-.2l-.2-.3-.2-.2v-.2l-.3-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.3h-.4l-.2-.3h-.2l-.3-.2h-.6l-.2-.2H482v-1h1.8l.3.2h.3l.2.2h.3l.3.3h.4l.2.3h.2l.3.3.3.2.2.2.2.2.2.3v.2l.3.3v.2l.3.3v.2l.2.3.2.3v.6l.2.2v1.3zm-6.2 6.3v-1h1.1l.2-.2h.3l.2-.2h.2l.2-.2h.4l.2-.2.2-.2h.2l.2-.3.2-.2h.2v-.2l.3-.2v-.2l.3-.3.2-.3v-.2l.2-.3v-.2l.2-.3v-1.3h1v2l-.2.3-.2.3-.2.4-.2.3v.2l-.3.2v.2l-.3.2-.2.3h-.2l-.2.3h-.2l-.2.3-.3.2h-.2l-.2.3-.3.2h-.2l-.3.2h-.3l-.3.2h-1.4zm-6-6.3h1v1.3l.2.3v.2l.2.3v.2l.2.2.2.4.2.2v.2h.3l.2.3.2.3v.2h.3l.2.3h.3l.2.2h.2v.2h.4l.2.2h.2l.3.2h.9v1h-1.5l-.3-.2h-.3l-.3-.2h-.2l-.3-.3-.3-.2-.3-.2-.3-.2h-.2l-.2-.3h-.2l-.2-.4-.2-.2-.2-.2-.2-.3-.2-.3v-.3l-.2-.3h-.2v-.4l-.2-.3v-.6l-.2-.3v-.9zm6-6.2v1H481l-.2.2h-.4l-.3.2-.3.3h-.5l-.2.3h-.2v.3l-.3.2h-.2l-.2.3v.3l-.2.2v.2l-.2.3v.2l-.2.2v.2l-.2.3v.4l-.2.2v.7h-1V218l.2-.4v-.3l.2-.3.2-.3v-.2l.2-.3.2-.2.2-.3.2-.2.2-.3.2-.2.2-.2.2-.2.2-.2h.3l.2-.3h.2l.3-.2h.2l.3-.2h.3l.3-.2h.5l.3-.2h.6z"/>
+      <path fill="#0c4076" d="M482 215.8c2 0 3.7 1.6 3.7 3.6S484 223 482 223c-1.8 0-3.4-1.6-3.4-3.6s1.6-3.6 3.5-3.6z"/>
+      <path fill="#21231e" d="M486.2 219.4h-1v-.8h-.2v-.3l-.2-.2v-.2l-.2-.2-.2-.2-.2-.3h-.2l-.3-.2h-.2l-.2-.2h-.2v-.2H482v-1h1.4v.2h.5v.2h.3v.2h.3v.3h.3v.2l.2.2.2.3.2.3v.2l.2.2.2.3v.4l.2.2v.6zm-4 4.2v-1h.6v-.2h.5l.3-.2h.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.4h.2v-1h1v1l-.2.2v.2l-.2.2v.2l-.2.2-.2.3-.2.2-.2.2-.3.2-.3.3h-.3l-.3.2-.3.2h-1l-.3.2zm-4-4.2h1v1.3l.2.2v.2l.2.2.2.2.2.2.2.2.2.2h.2v.2h.4l.2.2h.8v1.2h-.7l-.2-.2h-.3v-.2h-.5l-.2-.2-.3-.3h-.2v-.2l-.2-.2h-.2v-.2l-.2-.3-.2-.3v-.2l-.2-.2-.2-.3v-1.4zm4-4v1h-1l-.2.2h-.2l-.2.2h-.2v.2h-.2l-.2.3-.2.2-.2.2-.2.3v.4h-.2v1h-1V218l.2-.2.2-.3v-.2l.2-.2.2-.2.3-.3.2-.2.2-.2h.2l.2-.2h.2l.2-.2h.3l.3-.2h.9z"/>
+    </g>
+    <path fill="#c6363c" d="M135.8 192.6v144.7c0 26 10 49.4 26.2 66.5a87 87 0 0063 27.6c24.8 0 47-10.6 63.3-27.6a96.3 96.3 0 0026.2-66.5V192.6H135.8z"/>
+    <path fill="#fff" d="M135 192v145.3l.2 2.5v2.4l.2 2.4.2 2.4.3 2.4.2 2.3.3 2.3.5 2.4.5 2.3.5 2.2.6 2.2.6 2.2.7 2.2.6 2.2.8 2.2.8 2 1 2.2.8 2 1 2.2 1 2 1 2 1.2 2 1 2 1.3 1.8 1.3 2 1.2 1.7 1.4 1.7 1.3 1.8 1.4 1.7 1.6 1.7 1.4 1.6 1.5 1.6 1-1-1.5-1.5-1.5-1.6-1.4-1.6-1.3-1.7-1.3-1.8-1.3-1.8-1.2-2-1.2-1.7-1.2-2-1-1.8-1.2-2-1-2-1-2-1-2-1-2-.8-2-.8-2.2-.8-2-.7-2.3-.6-2-.6-2.4-.6-2.2-.5-2.2-.5-2.3-.4-2.2-.4-2.3-.3-2.3v-2l-.3-2.5-.2-2.4V193.4h177.4v144l-.2 2.4v2.4l-.2 2.5-.2 2.3-.2 2.4-.3 2.3-.5 2.3-.4 2.3-.4 2.4-.5 2.2-.5 2.2-.6 2.3-.8 2.2-.7 2.2-.8 2-.8 2.2-1 2-1 2.2-.8 2-1 2-1 2-1.2 2-1 1.8-1.3 2-1.2 1.7-1.3 2-1.3 1.6-1.4 1.7-1.4 1.7-1.4 1.7-1.5 1.7-1.5 1.6-1.5 1.6-1.6 1.4-1.6 1.5-1.5 1.4-1.6 1.4-1.8 1.3-1.8 1.5-1.7 1.3-1.8 1.2-2 1.2-1.8 1-1.8 1.2-2 1-1.8 1-2 1-2 1-2 .8-2 1-2 .6-2 .7-2.2.7-2 .6-2.3.5-2 .5-2.2.5-2.2.4-2.2.3-2.2.3-2.2.2h-2.3l-2.3.2H225v1.3h4.8l2.3-.3 2.3-.2 2.3-.3 2.2-.3 2.2-.5 2.2-.4 2.2-.4 2.2-.6 2.2-.6 2-.7 2.2-.7 2-.8 2-.8 2-1 2-.8 2-1 2-1 2-1 2-1.2 1.8-1 1.8-1.4 1.8-1.2 1.8-1.3 1.7-1.4 1.7-1.2 1.7-1.5 1.6-1.4 1.6-1.7 1.6-1.5 1.5-1.6 1.5-1.6 1.5-1.7 1.5-1.8 1.4-1.7 1.3-1.8 1.2-1.8 1.3-2 1.2-1.8 1.2-2 1-2 1.2-1.8 1-2 1-2 1-2 1-2.2 1-2 .7-2.2.7-2.2.7-2.2.7-2.2.7-2.2.6-2.3.5-2.3.5-2.4.4-2.3.4-2.3.4-2.3.3-2.4.2-2.4V192z"/>
+    <g fill="#fff" stroke="#21231e" stroke-width=".5">
+      <path d="M226 424c.7-.2 2 0 3-1 1.4-1 .8-5 .7-7.7-.6-13.5-1-36.3-1.8-68.3h-5.6c-.7 32-1.2 54.8-1.8 68.3 0 2.6-.7 6.8.7 7.8 1 1 2.3.8 3 1h1.7z"/>
+      <path d="M234.4 423.5c-.8 0-2 .2-3-.5-1.5-1-1.6-5.2-1.7-7.8-.7-13.5-2-36.2-4-68 1-.3 1.8-.3 2.6-.3l.4-.2c5 31.6 7 54 10.4 67.5.6 1.8 1.6 6.5 0 8-1 1-2.2 1-3 1l-1.6.2z"/>
+      <path d="M244.4 422c-.8 0-2 .5-3.2 0-1.5-1-1.4-5.2-2-7.7-3.5-13.5-5.5-36-10.6-67.5 1-.3 2-.4 2.7-.4 8.2 30.6 10.6 52.2 17 65.6.5 2 2 6.8.6 8.5-1 1-2.3 1-3 1.3l-1.6.3z"/>
+      <path d="M254.4 419.2c-.8 0-2 1-3.3.4-1.4-.6-1.7-5.2-2.8-7.6-6.3-13.4-8.7-35.2-17-66 1.2-.6 2-.7 2.7-.8.7-.3.5-.5 1.6-.7 9.5 30.6 12.6 51.8 21.6 65 1.4 2 2.5 6.4 1.5 7.7-.7 1-2 1.3-2.8 1.6l-1.6.4zm-38.5 4.3c.7 0 2 .2 3-.5 1.4-1 1.5-5.2 1.6-7.8.7-13.5 2-36.2 4-68-1-.3-1.8-.3-2.6-.3l-.4-.2c-5 31.6-7 54-10.4 67.5-.5 1.8-1.6 6.5 0 8 1 1 2.3 1 3 1l1.7.2z"/>
+      <path d="M206 422c.7 0 2 .5 3 0 1.6-1 1.5-5.2 2.2-7.7 3.4-13.5 5.4-36 10.4-67.5-1-.3-2-.4-2.6-.4h-.2c-8 30.6-10.5 52.2-16.7 65.6-.5 2-2 6.8-.6 8.5 1 1 2.2 1 3 1.3l1.5.3z"/>
+      <path d="M196 419.2c.7 0 2 1 3.2.4 1.5-.6 1.8-5.2 3-7.6 6.2-13.4 8.6-35.2 16.8-66-1-.6-2-.7-2.7-.8-.7-.3-.5-.5-1.7-.7-9.5 30.6-12.5 51.8-21.5 65-1.3 2-2.4 6.4-1.4 7.7.7 1 2 1.3 2.7 1.6l1.6.4zm53-23c-.6 0-1.7.5-2.8 0-1.5-.8-2.5-5-3.3-7.5-6.4-12.5-12.2-34.8-21.8-65.8 1-.5 1.7-.6 2.4-.7.6-.2 1.3-.5 2.3-.6 10.2 30.7 14.8 53 24.8 65 1.7 2 3 6.5 2 7.8-.5 1-1.7 1-2.3 1.3l-1.4.4z"/>
+      <path d="M241 397.8c-.7 0-2 .3-3-.3-1.3-.8-1.8-5-2.3-7.6-2.6-13.5-7.3-36-14-67.4a8 8 0 012.4-.4c.8-.2 1.5-.4 2.5-.4 8 31.3 9.8 54.7 17.3 66.7 1.3 2.2 2 6.7 1.2 8-.7.8-2 .8-2.6 1l-1.4.3z"/>
+      <path d="M232.7 398.7c-.7 0-1.8.2-2.8-.5-1.4-1-1.4-5-1.6-7.8-1-13.5-3.2-36.2-6.2-68 1-.3 1.7-.3 2.4-.2.7-.2 1.4-.3 2.5-.3 4.4 31.7 7 54.7 9.6 67.8.5 2.5 1.3 6.7.3 7.8-1 1-2 .8-2.8 1h-1.5z"/>
+      <path d="M201.2 396.2c.7 0 1.8.5 3 0 1.4-.8 2.4-5 3.2-7.5 6.3-12.5 12-34.8 21.6-65.8-1-.5-1.6-.6-2.3-.7-.6-.2-1.3-.5-2.4-.6-10.2 30.7-14.8 53-24.8 65-1.7 2-3 6.5-2 7.8.5 1 1.7 1 2.3 1.3l1.4.4z"/>
+      <path d="M209.3 397.8c.7 0 1.8.3 3-.3 1.3-.8 1.8-5 2.3-7.6 2.6-13.5 7.3-36 14-67.4a8 8 0 00-2.4-.4c-.7-.2-1.4-.4-2.4-.4-8 31.3-9.8 54.7-17.3 66.7-1.4 2.2-2 6.7-1.2 8 .7.8 2 .8 2.6 1l1.3.3z"/>
+      <path d="M217.6 398.7c.7 0 1.8.2 2.8-.5 1.3-1 1.3-5 1.5-7.8 1-13.5 3-36.2 6-68-1-.3-1.6-.3-2.3-.2-.7-.2-1.4-.3-2.5-.3-4.3 31.7-6.8 54.7-9.5 67.8-.5 2.5-1.3 6.7-.3 7.8.8 1 2 .8 2.7 1h1.6z"/>
+      <path d="M226 399c.6 0 1.8 0 2.7-.8 1-1 .7-5.2.6-7.8-.6-13.6-1-36.3-1.7-68.3-1 0-1.8 0-2.5.2-.5-.2-1.3-.2-2.3 0-.6 32-1 54.6-1.7 68.2 0 2.6-.5 6.8.6 7.8 1 .8 2 .7 2.8.8h1.5z"/>
+      <path d="M243.5 377.6c-.6 0-1.4.5-2.2 0-1.2-.8-2-5-2.5-7.5-5-12.4-9.4-34.7-16.6-65.7.7-.4 1.2-.5 1.8-.6.4-.2 1-.5 1.8-.6 7.8 30.8 11.3 53 19 65.2 1.3 2 2.2 6.4 1.6 7.7-.4.8-1.4 1-1.8 1.2l-1 .4z"/>
+      <path d="M237.3 379.2c-.6 0-1.4.3-2.2-.3-1-1-1.4-5-1.8-7.7-2-13.4-5.6-35.8-10.7-67.3.7-.3 1.3-.4 2-.3.4-.3 1-.5 1.7-.5 6 31.3 7.5 54.7 13.2 66.8 1 2 1.6 6.6 1 7.8-.6 1-1.5 1-2 1l-1 .4z"/>
+      <path d="M231 380c-.6 0-1.5.3-2.2-.4-1-1-1-5-1.2-7.8-.8-13.5-2.4-36.2-4.7-68 .6-.3 1.2-.3 1.7-.2a4 4 0 012-.2c3.2 31.7 5 54.7 7.2 67.8.3 2.6 1 6.7 0 7.8-.5 1-1.4.8-2 1h-1z"/>
+      <path d="M206.8 377.6c.5 0 1.4.5 2.2 0 1.2-.8 2-5 2.5-7.5 5-12.4 9.3-34.7 16.6-65.7-.6-.4-1-.5-1.7-.6-.5-.2-1-.5-1.8-.6-7.8 30.8-11.3 53-19 65.2-1.3 2-2.2 6.4-1.6 7.7.3.8 1.2 1 1.7 1.2l1 .4z"/>
+      <path d="M213 379.2c.6 0 1.4.3 2.2-.3 1-1 1.5-5 2-7.7a2735 2735 0 0110.6-67.3c-.8-.3-1.3-.4-2-.3-.4-.3-1-.5-1.7-.5-6 31.3-7.4 54.7-13 66.8-1.2 2-1.8 6.6-1 7.8.5 1 1.4 1 2 1l1 .4z"/>
+      <path d="M219.3 380c.6 0 1.5.3 2.2-.4 1-1 1-5 1.2-7.8.7-13.5 2.4-36.2 4.7-68-.7-.3-1.3-.3-2-.2a3 3 0 00-1.7-.2c-3.3 31.7-5.2 54.7-7.3 67.8-.4 2.6-1 6.7-.2 7.8.6 1 1.5.8 2 1h1z"/>
+      <path d="M225.7 380.4c.5 0 1.4 0 2-.8 1-1 .7-5.2.6-7.8-.4-13.5-.8-36.3-1.3-68.3h-3.7c-.5 32-1 54.8-1.3 68.3 0 2.6-.4 6.8.5 7.8.6.8 1.6.7 2 .8h1.2z"/>
+      <path d="M221.3 330.2v7.4l-5.8 1.2c0 2.6 6.4 29.6 9.6 29.6 3.4 0 9.8-27 9.8-29.6l-5.7-1.2a646 646 0 000-7.4c-1.2 1-2.5 2.7-4 4.3a27.4 27.4 0 00-3.7-4.3z"/>
+    </g>
+    <g transform="translate(-32 32) scale(.53333)">
+      <g id="d">
+        <path fill="#edb92e" stroke="#21231e" d="M412 584.5c-3 .2-7 2-18.5 12-5 10.2-10 20.5-17 29.4-2.4 1.4-4.2 2.5-6 3.2a84 84 0 01-17-.5c-4.4-4-11.3-1.2-9 3.2-1.8 1.6 2.2 7.8 5.3 5.2 3-2.4 13-.2 16.4-1.4-1.3 3-10.4 5-16.8 5.5-5.8.2-5.4 6-3 10.5 2.7 1.8.5-.4 1.4.8 2.6 4 8.2 3.4 8.4-.4.2-4 13.8-9 15.8-12-2.5 6-8.2 11.5-11 17.3-3 3-5 3.7-1 10 4.4-.6 4.6-1.7 7.3.8 6-.6 7-2.4 6-7.2-1-5 3.2-14 4.6-16.6 1.2-2.4 1.5-4.8 2.8-6.3 2.2-2.5 12.6-7.7 15.2-6.3 5 2.7 8.7 1 9.3-3.7-1.6-1.2-.4-8-3.8-8.2-2.8-.3-4.4.6-7 2.7-4 3.2-6 5-7.4 4.6-3-.7 5.8-5 13.8-15.6 11-14.5 11.8-22 11.3-27z"/>
+        <use width="1350" height="900" transform="matrix(-1 0 0 1 801.6 0)" xlink:href="#c"/>
+        <path fill="#edb92e" stroke="#21231e" d="M345.2 634.5c-4-2.3-6.3-2.2-8-.5-.7 1-1.8.5-1.2-1 2.7-6.3 7-7 10.7-4.2l2.8 2.7c-.6 1-3.8 2.3-4.3 3zm57.4-5.6c4.3-3 8.3-3.6 10.5-2 1.3 1 2.5.3 1.4-1.2-4.4-6.2-9.6-6.5-13.5-3-1.2 1-2 2-2.8 3 1.3 1.6 4.3 3.2 4.4 3zM369 664.4c.2-.2-1-5.4-2.6-7-1.4 1-3 2-4.3 3.5-4.2 4.5-4 11 2.5 16.7 1.6 1.5 2.4 0 1.7-1.7-1-2.7.3-6.3 3-11.5zM352.6 651c-4 1.6-5.4 3.7-5.2 6.4 0 1.5-1 2-1.5.3-4.8-11.2.2-13.3 7.5-13 .4 2-.7 6.2-.8 6.2z"/>
+        <path fill="#21231e" d="M384 621.3l1 .6h-.2v1.8h.2v.4h.2v.2h.2l.2.3.3.2v.2h.4l.2.3h.2l-.6 1h-.2l-.3-.2h-.2l-.2-.2-.2-.2-.3-.3-.3-.3v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.2l-.2-.2V622l.2-.3v-.2zm6.5.8l-.8 1-.2-.2-.3-.2-.2-.2-.2-.2h-.3l-.2-.3-.2-.3-.3-.2-.2-.2-.3-.2h-.7l-.2-.2h-.7v.2h-.2l-.2.2v.2h-.2v.3l-.2.2-1-.7v-.3l.2-.2.2-.2.2-.2.3-.3h.3l.2-.2h.4v-.2h.8l.2.2h.4l.2.2h.2l.2.2h.2l.2.3h.2l.2.3h.2l.3.3.2.3.2.2.3.2.2.2h.3z"/>
+        <path fill="#21231e" d="M387.3 617.6l1 .6v.4h-.2v.8l.2.2v.2l.2.2v.2l.2.2.2.3.3.2h.2l.2.2h.2l.2.2.2.2h.2l-.6 1h-.2l-.3-.2-.3-.3h-.2l-.2-.2-.2-.2-.2-.3v-.2h-.2l-.2-.2v-.2h-.2v-.5h-.2V618h.2v-.3zm6.5.8l-.7 1-.2-.3h-.2l-.2-.3-.3-.2-.3-.3h-.2l-.2-.3-.2-.2-.3-.2-.3-.2h-.3v-.2h-.8l-.2.2-.2.2-.2.2v.2l-.3.2-1-.6.2-.3v-.2h.3v-.3h.3l.3-.3h.2l.2-.2h.2v-.2h1.4l.2.2h.2v.2h.3l.3.3h.2l.2.2h.2l.2.3h.2l.3.3v.2l.3.2.3.2.2.2z"/>
+        <path fill="#21231e" d="M391 612.8l1 .6-.2.2v.6h-.2v1l.2.3v.3h.2v.4h.2l.2.3v.2h.2l.2.2.2.2.3.3.3.2h.2l.2.2-.6 1-.3-.2-.2-.2-.2-.2-.3-.2-.2-.2v-.2l-.3-.2v-.2l-.3-.2v-.2l-.3-.2v-.4l-.2-.3v-.2h-.2v-.7h-.2v-1l.2-.3v-.4l.2-.3v-.2zm7 1l-.8 1-.3-.3-.3-.2-.3-.3-.3-.2v-.2l-.3-.2-.3-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.7l-.2.2-.2.2-.3.3v.2h-.2v.4l-1-.6v-.3l.2-.2.2-.3v-.2l.3-.2.2-.2v-.2h.3l.2-.2h.3l.2-.2h1.2l.2.2h.2l.2.2.3.2h.3l.2.3.2.2h.3l.2.3.3.2.2.2.3.2.2.2.3.2.2.3.3.2z"/>
+        <path fill="#21231e" d="M394.8 607.7l1 .5v.5l-.2.3v1.7l.2.2v.3l.2.2v.2l.2.2.3.3v.2l.3.2.2.2h.2l.2.3.2.2.3.2v.2l-.6.8-.3-.2v-.2l-.4-.2-.2-.3-.3-.3v-.2l-.3-.3-.2-.2v-.2l-.3-.3v-.2l-.3-.2-.2-.2v-.2l-.2-.2v-.3l-.2-.3v-2.1l.2-.2v-.2l.2-.3zm7.6 1.3l-1 .8-.2-.3-.3-.3-.3-.2-.3-.3-.3-.3v-.2l-.4-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.2h-.2l-.2-.2h-.3v-.2h-.7v.2l-.3.2-.2.3-.2.2v.2l-.3.2v.2l-1.2-.5.2-.3.2-.3v-.2l.3-.3.2-.2.2-.2.3-.2.3-.2h.5l.3-.2h.8l.3.2h.2l.3.2h.2l.2.3.3.3.2.2.3.2.2.2h.3l.2.3.3.3.2.2.3.3.3.4.3.3.4.3z"/>
+        <path fill="#21231e" d="M399 602.6l1.2.6v.2l-.2.2-.2.3v2.1l.2.2v.2l.2.2.2.2v.2l.2.2.2.2.2.2v.2l.3.2.2.2.2.2.3.2.2.2.3.2-.8 1-.3-.3-.2-.3-.3-.2-.3-.3-.2-.2-.3-.2-.2-.3v-.2l-.3-.2-.2-.2v-.2l-.3-.2v-.3h-.2v-.4l-.2-.2v-.2l-.2-.3v-2.6l.2-.2v-.2l.2-.2v-.2zm7.7 1.4l-1 .8-.2-.3-.3-.3-.2-.3-.3-.3-.3-.3-.2-.2-.2-.3-.3-.3-.2-.2h-.2l-.2-.3-.2-.2h-.2v-.2h-1.3l-.3.2v.2h-.2v.3l-.3.2-.2.3v.2l-1.2-.6.3-.3.2-.3.2-.2.2-.3v-.2l.4-.2h.2l.2-.2h.2l.2-.2h1.7l.2.2.2.2h.2l.2.3h.3l.3.3.2.3h.3l.2.3.3.3.2.2.3.3.3.4.4.3.3.3z"/>
+        <path fill="#fff" stroke="#21231e" d="M462.6 580.6l-9.5-5.4c-4 3-6.8 13.5 0 22.2 8.5 11 12 18.7 14 27.5 6.2-8 8.3-16.3 4.4-24.5-5.3-11-8.7-17-8.8-20z"/>
+        <path fill="#fff" stroke="#21231e" d="M470.4 573l-9.5-5.4c-4 3-12.5 13.2-5.6 22 8.5 10.8 17.3 19 19.4 27.7 6.2-8 8.8-16.2 5-24.4-5.4-11-9.4-17.2-9.4-20z"/>
+        <path fill="#fff" stroke="#21231e" d="M449.4 569.2l-9.5-5.4c-4 3-7 13.5-.2 22.2a65 65 0 0114 27.5c6.2-8 8.4-16.3 4.4-24.4-5.3-11-8.7-17-8.8-19.8z"/>
+        <path fill="#fff" d="M405.5 469c.2 8.7-1.4 66.5-1.8 74.7-.5 8.2-4 13.7-8 17-3.5-5-5.6-11.5-6-19.3-.4-4 .4-58.7.7-70 6.4-17 11.2-17.8 15-2.4z"/>
+        <path fill="#21231e" d="M404 543.8h-1l.2-1v-2.6l.2-1.7v-4l.2-2.3v-5l.2-2.7v-2.8l.2-3v-3l.2-3v-6.2l.2-3v-6.2l.2-3v-5.8l.2-2.7v-7.4l.2-2V469h1v11.7l-.2 2.5v8.3l-.2 2.8v6l-.2 3.2v3l-.2 3.2v6l-.2 3v3l-.2 2.8v5.3l-.2 2.5v2.3l-.2 2v3.6l-.2 1.5v2zm-8.7 17l.8-.5h-.6l.3-.4.4-.4.4-.3.4-.3.3-.4.5-.4.3-.3.3-.5.4-.4.4-.4.3-.4.4-.5.3-.4.2-.5.2-.5.3-.5.3-.5.2-.6.2-.5.3-.6.2-.5.2-.5v-.7l.3-.6v-.6l.3-.7v-.7l.2-.7v-.7l.2-.8v-1.5h1v2.3l-.2.7v.8l-.3.6v.8l-.3.7-.2.6-.2.8-.2.6-.2.6-.2.6-.3.6-.4.5-.2.6-.3.5-.2.5-.3.5-.3.5-.3.5-.4.4-.4.5-.3.4-.5.5-.3.4-.4.3-.3.4-.4.3-.2.4-.4.3-.4.3h-.7zm.7.2l-.4.3-.3-.4h.7zm-7-19.5h1v.6l.2.8v1.4l.2.7v.6l.2.7v.6l.3.6v1.5l.3.5v.7l.3.6.2.6.2.6.2.6.2.5.2.7.2.6.2.5.3.6.2.5.3.4.2.6.3.5.3.5.3.5.2.4.3.4.3.5.3.3-.7.6-.3-.6-.4-.4-.3-.5-.3-.5-.3-.5-.3-.6-.2-.6-.3-.5-.4-.7-.2-.5-.3-.6v-.6l-.3-.5-.3-.5-.2-.6-.2-.7-.2-.6v-.7l-.3-.6-.2-.6v-.7l-.3-.5v-.7l-.2-.7-.2-.6v-.6l-.2-.7v-1l-.2-.8v-1.5zm1-70.2l.8.3v8l-.2 2.3V492l-.2 2.7v11.6l-.2 3v19l-.2 2.2v11h-1v-20.9l.2-2.7v-14.6l.2-2.8V489l.2-2.6v-8.9l.2-2v-4.2zm0 0zm16-2.3h-1l-.4-1.3-.3-1.3-.4-1-.5-1.2-.4-1-.2-1-.4-.7-.4-.8-.4-.6-.4-.4-.4-.4-.4-.3-.3-.3h-.3l-.4-.2h-.7l-.4.3-.4.3-.5.5-.5.4-.5.5-.5.7-.5.7-.5.8-.5 1-.6 1-.5 1.2-.6 1.3-.6 1.3-.6 1.5-.6 1.6-1-.3.7-1.6.6-1.5.7-1.3.6-1.4.5-1.2.6-1 .5-1 .5-1 .5-.8.6-.7.5-.7.6-.6.6-.4.5-.4.6-.3.5-.2h1.1l.5.3.5.3.5.5.5.5.4.6.4.6.5.8.4.8.4 1 .5 1 .3 1 .4 1.4.4 1.3.4 1.4zm0 0z"/>
+        <path fill="#fff" d="M368 454.8l-2.6 79.6c-.8 7 8.4 49 13.5 57.4 12.3-5.3 15-33.8 12.6-61.6-2.4-27.8.4-51.8 2.3-56.8 0-6.3-1-12.8-1-19.3-8 .5-17.2.4-25 .8z"/>
+        <path fill="#21231e" d="M365 534.4l2.4-79.6h1l-2.5 79.6h-1zm1 0zm12.7 57l.3.8-.6-.2-.5-1-.6-1-.5-1.2-.7-1.4-.5-1.6-.6-1.6-.6-1.8-.6-2-.5-2-.6-2-.7-2.2-.6-2.2-.6-2.3-.4-2.3-.6-2.3-.5-2.3-.6-2.3-.6-2.3-.4-2.2-.5-2.2-.4-2.2-.3-2-.4-2.2-.3-2-.3-1.8-.3-1.7-.2-1.6v-1.4l-.3-1.3v-2.8h1v4.1l.2 1.5.2 1.6.3 1.7.3 1.8.3 2 .4 2 .4 2.2.5 2.2.4 2.2.4 2.3.5 2.2.4 2.3.6 2.3.5 2.4.6 2.3.7 2.2.5 2.2.6 2 .6 2.2.6 2 .6 2 .5 1.7.7 1.5.6 1.5.5 1.4.5 1.2.5 1 .5 1-.6-.3zm.3.8l-.4.2-.2-.4.6.2zm12-62h1l.3 2.5v2.7l.3 2.6v2.6l.2 2.6v12.5l-.3 2.4-.2 2.5-.2 2.3v2.3l-.4 2.3-.4 2.2-.3 2-.6 2-.4 2-.6 2-.5 1.7-.8 1.7-.6 1.5-.7 1.5-1 1.5-.7 1.3-1 1.2-1 1-1 1-1 1-1 .6-1.3.6-.3-1 1-.4 1-.7 1-.7 1-1 1-1 .7-1 .8-1.3.8-1.4.7-1.5.6-1.5.6-1.6.5-2 .5-1.7.5-2 .4-2 .3-2 .3-2 .3-2.3v-2.3l.4-2.3V558l.3-2.3V538l-.2-2.6-.2-2.6-.2-2.6zm2.4-56.8h1v.2l-.2.5-.2.7-.2.7-.2 1-.2.8-.2 1-.2 1.2v1.2l-.3 1.3-.2 1.3-.2 1.4v1.6l-.3 1.6v1.7l-.3 1.7v2l-.2 1.8v2l-.2 2V520l.2 2.5.2 2.5.2 2.6v2.5l-1 .2v-2.6l-.3-2.5-.2-2.5V520l-.2-2.5v-20.1l.2-2v-2l.3-2v-1.7l.2-1.7.2-1.8.2-1.6v-1.4l.3-1.5.2-1.3v-1.2l.3-1V477l.3-1 .2-.8.2-.7.2-.7.2-.5zm1 0v.2-.2zm-1.5-18.8v-1l.4.4v3.7l.2.6v2.5l.2.6v1.8l.2.6v2.4l.2.6v3.6l.2.6v2.4h-1V468l-.2-.5V465l-.2-.5v-1.9l-.2-.6v-1.7l-.2-.6v-3l-.2-.6V454l.5.6zm0-1h.4v.4l-.5-.4zm-24.6 1.2h-1l.4-.5h3.9l.8-.2h12.8l.8-.2h4.7l.8-.2h1.7v1h-4.1l-.7.2h-8l-.8.2h-7.1l-.8.2h-3.9l.4-.4zm-1 0v-.4h.4l-.4.4zm.5 0h.4-.5zm-.6 0v-.4h.4l-.4.4z"/>
+        <path fill="#fff" d="M353 468l1.8 79.5c-.4 7 11 48.5 16.4 56.5 12.6-9.8 10-49.8 8.2-62-4-24-3.2-52-2-56.5 0-6.3-.2-13.8-.6-20.4-8 1-15.8 2-23.7 2.8z"/>
+        <path fill="#21231e" d="M354.3 547.5l-1.7-79.6 1-.2 1.7 79.6h-1zm1 0zm15.6 56l.5 1-.7-.2-.5-1-.6-1-.6-1.2-.5-1.2-.7-1.6-.6-1.6-.7-1.8-.7-1.8-.7-2-.5-2-.7-2.2-.7-2.2-.6-2.2-.7-2.3-.7-2.2-.7-2.3-.6-2.3-.6-2.3-.5-2.3-.6-2.2-.6-2.2-.5-2-.6-2-.4-2-.4-2-.4-1.6-.3-1.6-.3-1.3-.2-1.3v-1.2l-.2-1v-.8h1v1.8l.2 1 .2 1.3.2 1.5.2 1.5.3 1.7.4 2 .4 1.8.4 2 .5 2 .6 2.2.4 2.2.6 2.3.7 2.3.6 2.3.7 2.2.6 2.3.7 2.3.7 2.3.7 2.2.7 2 .7 2.2.8 2 .7 1.8.6 1.7.8 1.7.6 1.4.6 1.3.6 1.2.5 1 .6.7h-.7zm.5 1l-.4.2-.2-.4h.7zM379 542l1-.2v1.2l.2 1.4.2 1.5.2 1.8.2 1.7v2l.3 2 .2 2v2l.2 2.3v12l-.2 2.4v2.3l-.3 2.4-.4 2.4-.3 2.4-.3 2.2-.4 2.2-.5 2.2-.4 2-.6 2-.7 2-.8 1.6-.8 1.7-1 1.5-1 1.3-1 1.4-1.2 1-.6-.8 1-1 1-1 1-1.4.8-1.4.8-1.6.8-1.7.6-1.8.6-2 .5-2 .6-2 .4-2.2.4-2.3.3-2.3.2-2.4v-2.3l.3-2.4V569l.2-2.2V560l-.2-2.3v-2.2l-.2-2v-2l-.2-2-.2-1.6-.2-1.8-.2-1.5v-1.3l-.3-1.2zm-2-56.7h1v.6l-.2.7-.2.7v1l-.2.8v2.4l-.2 1.3v2.8l-.2 1.6v15.2l.2 2v2.3l.3 2v2.4l.3 2.3v2.2l.3 2.2.4 2.3.2 2.4.3 2.2.2 2.3.3 2.2.4 2.3-1 .2-.5-2.3-.3-2.4-.3-2.3-.4-2.3-.2-2.4-.2-2.3-.2-2.3-.2-2.3-.2-2.2v-2.3l-.3-2.2V512l-.2-2v-16l.2-1.4v-1.3l.2-1.2v-2l.3-1v-.8l.2-.6v-.7.2zm1 0zm-1.2-20v-1l.5.6v3.4l.2.7v3.8l.2.6v6l.2.6v5.3h-1V480l-.2-.7v-5.7l-.2-.6v-4.5l-.2-.7v-2.4l.4.4zm0-1h.4v.6l-.5-.4zm-23.7 4v-1l.8-.2h.8l.7-.2h2.2l.7-.2h.8l.7-.2h.8l.7-.2h1.4l.7-.2h.8l.7-.2h.6l.8-.2h1.7l.6-.2h.7l.8-.2h.8l.7-.2h1.5l.8-.2h.7l.7-.2h.8l.7-.2v1h-.6l-.6.2h-.8l-.7.2h-1.6l-.7.2h-.8l-.8.2h-.8l-.7.2h-1.5l-.7.2h-.8l-.7.2h-.7l-.8.2H362l-.7.2h-.7l-.8.2h-.7l-.6.2H357l-1 .2h-.6l-.7.2h-.8l-.8.2zm.2 0zm0-1v1l-.6-.6.5-.6zm-.6.4v-.6h.5l-.4.5z"/>
+        <path fill="#fff" d="M342.2 486.7l21-.5c-2 8.6-.5 35.6 3.2 56.2 3.3 19.3 8 69.3-12 81.3-12.5-26.4-3-52-9.2-75-5-24.3-6-44.6-3-62z"/>
+        <path fill="#21231e" d="M363 486.7l-20.8.5v-1l21-.5.4.6-.5.4zm0-1h.7v.6l-.6-.6zm3.8 56.6l-1 .2-.3-2-.3-2-.3-2-.4-2-.3-2-.2-2-.2-2.2-.2-2-.2-2.2-.2-2-.2-2-.2-2-.2-2.2v-2l-.3-2v-2l-.2-2V499l-.2-1.7v-4.5l.2-1.4v-1.2l.2-1.2v-1l.3-1v-1l1 .3v.8l-.2 1v1l-.2 1.3v5.4l-.2 1.6v4.9l.2 1.8v4l.2 1.8v2l.3 2v2l.3 2 .2 2v2l.3 2.2.3 2 .2 2.2.3 2 .3 2 .3 2 .3 2.2.2 2 .3 2 .3 2zM354 624l.8-.6-.7-.2 2-1.2 1.5-1.4 1.5-1.6 1.4-1.8 1.3-2 1-2 1-2.3 1-2.6 1-2.5.6-2.8.6-2.7.4-2.8.4-3 .4-3 .3-3 .2-3v-3l.2-3v-6.2l-.2-3-.2-3v-3l-.4-3-.2-2.7-.3-2.7-.2-2.5-.4-2.5-.2-2.4-.3-2.2-.3-2-.3-2h.8l.4 1.8.3 2 .3 2.3.3 2.3.4 2.5.3 2.7.3 2.7.2 2.8.2 3 .2 2.8.2 3v15.5l-.3 3-.3 3.2-.4 3-.4 2.8-.5 3-.8 2.7-.7 2.7-.8 2.6-1 2.4-1 2.4-1.2 2.2-1.3 2-1.4 2-1.6 1.5-1.7 1.5-1.8 1.3h-.7zm.7 0l-.5.4-.3-.5h.7zm-10-75.2l1-.2.5 2.2.4 2.2.4 2.2.3 2.2.3 2.2.2 2.3v2l.2 2.4v25.4l.2 2.4v2.4l.3 2.4.3 2.4.3 2.4.5 2.4.4 2.4.5 2.4.7 2.5.7 2.4.8 2.5 1 2.5 1 2.4-.8.5-1.2-2.6-1-2.5-.8-2.6-.8-2.5-.7-2.5-.5-2.5-.5-2.4-.4-2.5-.2-2.3-.3-2.5-.2-2.4V594l-.2-2.4V564l-.2-2.3-.2-2.3-.2-2.2-.4-2.2-.3-2-.5-2.3-.5-2v-.2zm0 0zm-2.5-62.6v1l.5-.4-.3 1.6-.2 1.7-.2 1.7-.2 1.7-.2 1.7v1.8l-.3 1.8v3.5l-.2 2v7.3l.2 2v1.8l.2 2v2l.2 2 .2 2 .2 2 .2 2 .3 2 .2 2 .3 2.3.3 2 .3 2.2.4 2.2.4 2.2.4 2 .4 2.4.4 2.2-1 .2-.4-2.2-.4-2.3-.4-2.2-.4-2-.3-2.3-.4-2.2-.3-2-.3-2.2-.2-2-.3-2.2-.2-2-.2-2-.2-2v-2l-.2-2v-2l-.2-1.8v-13l.2-1.8v-1.8l.2-1.7.2-1.7.2-1.7.2-1.7.2-1.7.3-1.7.5-.4zm-.5.4v-.4h.5l-.5.4zm.5 0v-.4.5zm-.5 0v-.4h.5l-.5.4z"/>
+        <path fill="#fff" d="M422 454.4c0 8.7-3.2 66.5-4 74.6-.7 8-4.5 13.6-8.4 16.6-3.4-5-5.3-11.5-5.5-19.3 0-4 2.3-58.7 3-70 7-17 11.8-17.4 15-2z"/>
+        <path fill="#21231e" d="M418.5 529h-1v-1l.2-1v-1.5l.2-1.7v-2l.2-2v-2.3l.3-2.4v-2.5l.3-2.7.2-2.8v-3l.3-3 .2-3 .2-3v-3l.3-3.2.2-3 .2-3.2v-3l.3-3V474l.3-3v-2.5l.2-2.4V464l.2-2v-2l.2-1.8v-3.7h1v5.6l-.2 2v2l-.2 2.3v2.6l-.3 2.6-.2 2.7v2.8l-.3 3-.2 3v3l-.3 3-.2 3v3.2l-.3 3-.2 3.2-.2 3v3l-.2 2.7-.2 2.6v2.6l-.3 2.4v2.3l-.3 2v2l-.2 1.5v1.5l-.2 1.2v1zm-9.3 17l.8-.6-.7-.2.4-.2.3-.3.4-.4.3-.3.4-.3.4-.4.4-.3.3-.4.4-.4.4-.4.3-.5.4-.4.3-.6.3-.4.3-.5.3-.5.3-.5v-.5l.4-.6.2-.5.3-.7v-.6l.3-.6.2-.5.2-.7.2-.6V532l.3-.8v-.8l.2-.7v-.7h1v1.6l-.2.7-.2.7v.7l-.2.7-.2.7-.2.8-.2.6-.2.6-.2.6-.3.6-.2.6-.3.6-.3.5-.2.5-.3.5-.3.5-.5.5-.3.5-.3.4-.4.4-.4.4-.3.4-.5.4-.4.4-.2.4-.4.3-.4.4-.3.4-.4.3-.4.3h-.8zm.7 0l-.5.4-.3-.5h.7zm-6.4-19.7h1v2.8l.2.8v.7l.2.7v1.2l.3.6v.8l.2.6.2.7v.7l.3.6v.6l.3.5.2.6.2.6.2.6v.6l.3.5.3.6.2.4.2.5.3.5.3.5.2.5.3.4.4.4.3.5.3.4-.8.5-.3-.6-.4-.4-.3-.5-.3-.6-.3-.6-.3-.5-.3-.6v-.6l-.4-.5-.2-.6-.2-.6-.2-.4-.2-.6-.2-.6-.2-.6-.2-.6-.2-.7-.2-.6v-.7l-.3-.7v-.6l-.2-.7v-.6l-.2-.7v-1.4l-.2-.7v-1.5l-.2-.7v-1.5zm3-70l.8.3v-.2 2.6l-.2 1.6v2l-.2 2v2l-.2 2.4v2.5l-.2 2.6v2.8l-.3 2.8v2.8l-.2 3v2.8l-.2 3v3l-.2 2.8v3l-.3 2.7v2.7l-.2 2.7v7.3l-.2 2v3.8l-.2 1.6v3.3h-1v-6.8l.2-2V513l.2-2.4V508l.2-2.6.2-2.8v-2.8l.2-3V494l.2-3 .2-2.8v-3l.2-2.8v-3l.3-2.7V474l.2-2.5V469l.2-2.4v-4.2l.2-1.8V459l.2-1.5v-1.2zm-.2 0zm16.2-2h-1v.2l-.3-1.4-.3-1.2-.3-1.2-.4-1-.3-1-.4-1-.3-1-.4-.6-.5-.6-.4-.5-.2-.5-.4-.4h-.4l-.3-.2h-1.1l-.4.2-.5.2-.4.4-.5.5-.5.6-.6.7-.5.7-.5 1-.6.8-.5 1-.6 1.2-.7 1.2-.6 1.4-.6 1.4-.6 1.6-1-.4.7-1.6.8-1.4.6-1.4.6-1.2.6-1.2.6-1 .6-1 .6-1 .6-.7.5-.7.6-.6.6-.6.6-.4.5-.3h.6l.5-.3h1.2l.5.3.5.4.5.4.4.5.4.6.4.5.4.8.3 1 .4.8.3 1.2.3 1 .4 1.3.3 1.4.3 1.3zm0 0zm-.5 0h.6-.5zm.6 0z"/>
+        <path fill="#fff" d="M385 407.2c-.6 18.7-1 59-.8 62.6a51 51 0 006.7 22.6c4-3 7.7-8.5 8.4-16.6.6-6.7.8-39.5 1-56-4.3-2.6-8.7-6-12.2-9.7l-3.2-2.8z"/>
+        <path fill="#21231e" d="M384.7 469.8h-1v-23.4l.2-2.4v-19.6l.2-2.4v-9l.2-2v-3.8h1v7.8l-.2 2.4v9.4l-.2 2.5v12.5l-.2 2.4v25.4zm6 22.2l.5.8h-.7l-.3-.6-.3-.5-.4-.6-.4-.4-.3-.6-.4-.6-.3-.7-.3-.6-.2-.6-.3-.7-.3-.7-.3-.7-.3-.7-.3-.8-.2-.7-.3-.7-.3-.8-.2-.8-.2-.7-.2-.8v-.8l-.3-.8v-.8l-.3-.8v-.8l-.2-.8v-.8l-.2-.8v-.7l-.2-.7v-1.5h1v2.5l.2.8v.8l.3.7v.8l.2.8.2.8.2.8v.7l.2.7.3.8.2.7.2.8v.8l.4.7.2.7.3.7v.7l.4.6.3.7.3.7.2.6.3.6.3.5.3.6.4.6.3.6.3.5.3.4h-.7zm.5.8l-.4.3-.3-.3h.7zm7.7-17h1l-.2.8v.8l-.2.7v.8l-.3.7-.2.7v.7l-.2.5-.2.7-.2.6-.3.6v.6l-.4.6-.2.6-.3.5-.2.5-.3.6-.3.5-.3.5-.4.4-.4.5-.3.4-.5.6-.3.4-.4.4-.3.4-.4.4-.3.3-.3.4-.4.2-.4.3-.4.3-.6-.8.4-.3.3-.3.4-.3.4-.2.4-.4.4-.3.3-.3.4-.4.4-.4.3-.5.4-.4.3-.3.3-.5.3-.5.3-.4.3-.5.2-.6.3-.5.2-.5.3-.6.2-.6.2-.5.2-.6.2-.8.2-.6.2-.6v-.7l.3-.7v-.7l.2-.8v-.7l.2-.8zm1-55.5l.6-.8.2.4v18.8l-.2 2.2v14.6l-.2 2v8.9l-.2 1.5v4.3l-.2 1v2.6h-1V471l.2-1.5v-6.3l.2-1.8v-12l.2-2v-20.8l.2-1.7v-5.1l.2.3zm.6-.8h.2v.4l-.2-.5zm-12.4-9.8v1l.4-1 .3.4.2.5.4.3.3.3.3.5.3.3.4.3.3.4.4.4.3.3.4.4.4.3.4.3.3.3.4.3.3.4.4.3.4.3.5.3.3.2.4.2.4.3.4.3.4.3.4.3.4.3h.4l.4.4.4.3.4.2.4.2.4.3-.6.8-.4-.3-.4-.2-.4-.3-.4-.3-.4-.2-.4-.3-.4-.3-.4-.3-.4-.2-.4-.3-.4-.3-.4-.3-.4-.4-.3-.3-.4-.3-.3-.3-.4-.3-.4-.3-.5-.2-.4-.3-.2-.3-.4-.4-.4-.3-.3-.3-.4-.3-.4-.5-.4-.3-.4-.3-.3-.5-.5-.3-.3-.4-.3-.3.2-.8zm-.3.8l-1-.8h1.2l-.3.8zm-2.5-3.3h-1l1-.3.2.2.2.2v.2h.3v.3h.4v.2l.3.2.3.2v.2h.3v.2h.2v.2h.3l.2.2v.2h.2v.2l-.2.8v-1l-.3 1h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2v-.2h-.2l-.2-.2-.3-.3h-.3v-.3h-.3v-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l1-.4zm-1 0v-1.4l1 1-1 .4z"/>
+        <path fill="#fff" d="M400 419.3c-.4 20-.2 51.7 0 54.3a34 34 0 005.4 19.3c4-3.2 8-8.8 8.8-17 .5-5 2-26.4 2-42.8-5.3-1.7-12-10.4-16.3-14z"/>
+        <path fill="#21231e" d="M400.4 473.5h-1v-12.9l-.2-1.7v-33.7l.2-2v-4h1v14.5l-.2 2v37.1l.2.5v.3zm4.7 19l.7.8h-.7l-.3-.6-.3-.5-.3-.5-.2-.5-.3-.5-.3-.5-.2-.6-.3-.5-.2-.5-.3-.5-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6v-.6l-.3-.7v-.6l-.3-.8v-.6l-.2-.7v-.8l-.2-.6v-.7l-.2-.8v-1.5l-.2-.7v-1.4h1v2.8l.2.7v.7l.2.7v.7l.2.7v.7l.2.6v.7l.3.6v.6l.3.5v.6l.3.7.3.6.2.6.2.5.2.5v.6l.4.5.2.7.3.5v.5l.4.5.2.5.3.5.2.5.3.5.3.4h-.7zm.7.8l-.4.3-.3-.4h.7zm8-17.3h1v1.7l-.3.7v.7l-.3.8v.7l-.2.7-.2.7-.2.5-.3.7v.6l-.4.6-.2.6-.3.5-.2.6-.3.6-.4.6-.2.5-.3.5-.4.5-.2.4-.4.6-.3.4-.3.5-.3.4-.4.3-.4.3-.4.4-.3.3-.5.4-.4.3-.3.3-.6-.8.5-.3.3-.3.4-.4.4-.3.3-.4.3-.4.3-.4.4-.4.3-.4.4-.4.3-.5.3-.4.4-.4.3-.5.3-.3.3-.6.3-.4.2-.5.3-.5.2-.5.3-.6.2-.6.2-.6.2-.6.2-.7.2-.7.2-.7v-.7l.3-.8v-.7l.2-.7v-.8zm2.4-42.3l.4-1 .3.5v7.9l-.2 1.6v5.1l-.2 1.6v1.7l-.2 1.7v4.6l-.2 1.6v2.9l-.2 1.3v1.4l-.2 1.3v2.5l-.2 1v2.2l-.2 1v1.6l-.2.7v1.1h-1v-2l.2-.8v-1.8l.2-1v-2.2l.2-1.2v-2.7l.2-1.3v-1.5l.2-1.4V457l.2-1.6v-1.6l.2-1.6V449l.2-1.6V443l.2-1.6V433l.5.5zm.4-1h.3v.5l-.3-.5zm-16-13.4h-1l.8-.4.5.2.4.4.5.4.5.4.5.5.4.4.4.4.5.5.4.6.5.4.4.5.5.4.5.6.5.5.5.5.5.6.6.5.5.6.7.5.5.6.5.5.6.5.5.5.5.4.6.4.4.4.5.3.4.3.5.3.4.3.5.2.4.2-.3 1-.5-.2-.5-.3-.5-.2-.6-.3-.6-.4-.6-.3-.5-.4-.6-.4-.5-.4-.6-.5-.5-.5-.5-.5-.5-.5-.6-.5-.5-.5-.7-.5-.5-.6-.5-.5-.6-.5-.5-.6-.5-.4-.5-.5-.5-.5-.5-.5-.5-.5-.5-.4-.4-.4-.5-.4-.4-.5-.6-.4-.4-.3-.4-.4.8-.3zm-1 0v-1l.8.6-.8.2z"/>
+        <path fill="#fff" d="M387 405.6L373 385c-2.8 10.2-6.3 82.8-2.2 88.8a36 36 0 006.4 19.3c4-3 9.8-8.5 8-16.7-1.6-8.2.4-62.3 2-70.7z"/>
+        <path fill="#21231e" d="M373.3 384.7l14.2 20.6-.8.5-14.3-20.5v-.4l1-.3zm-1 .2l.4-1 .5.7-.8.2zm-1.2 88.7h-1l.2.3-.5-.8-.3-1.2-.3-1.5v-1.8l-.3-2-.2-2.5v-2.6l-.2-2.8v-20.3l.2-3.7V431l.2-4 .2-3.6v-3.8l.3-3.7.2-3.7.2-3.4.3-3.5.2-3.2.3-3 .2-3 .3-2.5.3-2.4.2-2 .3-2 .3-1.3.4-1 1 .2-.3 1-.2 1.5-.3 1.8-.3 2-.2 2.4-.3 2.5-.3 2.8-.2 3-.3 3.3-.3 3.3-.2 3.4-.2 3.6-.2 3.7v3.7l-.3 3.8v3.8l-.2 3.7v3.8l-.2 3.6v19.6l.2 2.6.2 2.3.2 2v1.8l.4 1.5.3 1 .3.7v.2zm0-.2v.2-.2zm5.7 19.2l.6.8-.7-.2-.3-.4-.3-.6-.3-.5-.3-.6-.3-.5-.2-.6-.3-.6-.3-.5-.3-.6-.4-.5-.2-.6-.3-.6v-.6l-.4-.6-.2-.6-.2-.6-.3-.6-.3-.6-.2-.7v-.6l-.3-.5-.2-.7v-.7l-.3-.6v-.6l-.2-.7v-.6l-.2-.7v-1.5l-.2-.7v-.7h1v1.4l.2.7v.6l.2.6v.7l.2.6v.7l.2.6.2.6v.6l.3.6.2.7.2.6.2.7v.6l.3.6.2.5.3.6.2.6.3.6.2.5.3.6.3.5.3.5.3.6.3.4.2.5.3.4.3.4.3.5.4.5h-.7zm.6.8l-.4.3-.4-.5.7.2zm7.4-17l1-.3v.8l.2.7v3l-.2.7-.2.7v.7l-.3.7-.2.6-.2.6-.2.6-.3.6-.3.5-.4.6-.3.4-.4.5-.5.4-.3.5-.4.4-.4.4-.4.4-.5.5-.4.4-.3.5-.4.3-.4.4-.5.3-.4.3-.3.4-.4.3-.6-.8.4-.3.5-.3.4-.2.3-.4.3-.3.4-.3.4-.4.4-.3.4-.4.4-.5.4-.3.4-.4.4-.5.3-.5.5-.5.3-.5.3-.5.4-.5.3-.5.2-.6v-.6l.3-.5.2-.5.2-.7v-.6l.2-.6v-3.1l-.2-.7v-.6zM387 406v-1l.6.7-.2 1-.2 1v1.4l-.3 1.7-.2 2-.2 2v2l-.3 2.4v2.5l-.3 2.6v2.8l-.2 2.7-.2 2.8v3l-.2 2.8v3l-.2 3v8.5l-.2 2.8v13.5l.2 2v1.5l.2 1.4v1l.2 1-1 .2v-1l-.2-1v-1.5l-.2-1.7v-4l-.2-2v-15.5l.2-3V441l.2-3v-2.8l.2-3 .2-2.7v-2.8l.2-2.7.2-2.5V419l.3-2.3v-2.2l.3-2v-2l.3-1.5.3-1.4v-1.2l.3-1 .5.7zm0-1h.7v.7l-.6-.6zm0 0v1l-.3-.2.4-.7zm0 1h-.2v-.2l.3.3z"/>
+        <path fill="#fff" d="M358 451.2c-.8 11.3-1.2 19-1 23 .2 7.6 2 14.2 5.5 19.2 4-3 9-8.5 8.4-16.6-2-31.5 1.4-61 5.4-89.6-3.4-2.5-9-5-12.5-7.6-6.8 38.3-9 62-6 71.6z"/>
+        <path fill="#21231e" d="M357.4 474h-1v-7.4l.2-.7V463l.2-.7V459l.2-1v-1.8l.2-1v-3l.2-1h1v2l-.2 1v2l-.2 1v2.8l-.2.7v3.2l-.2.7v4.2l-.2.6v4.3zm4.8 19l.6.8h-.7l-.3-.6-.3-.5-.3-.5-.2-.5-.2-.5-.3-.5-.3-.6-.2-.4-.3-.6-.2-.5-.3-.6-.2-.7-.2-.6-.2-.6-.2-.5-.2-.6v-.7l-.3-.6v-.7l-.3-.6v-.7l-.2-.6-.2-.6v-.7l-.2-.7v-1.4l-.2-.7v-1.5l-.2-.7v-.7h1v2.2l.2.7v1.2l.2.7v.6l.2.6v.7l.2.5.2.7v.6l.3.6v.6l.3.6.2.6.2.6.2.6.2.6.2.5.2.6.2.6.3.6.2.5.2.5.2.5.3.5.3.5.3.5.3.5.3.4h-.8zm.6.8l-.4.3-.3-.3h.8zm7.6-17h1v3.7l-.3.7v.6l-.2.7v.7l-.4.6-.2.6-.2.6-.3.6-.3.6-.3.5-.2.6-.3.5-.4.5-.2.5-.4.4-.4.5-.4.4-.3.6-.4.4-.5.4-.4.4-.3.4-.4.3-.4.3-.5.4-.4.3-.2.3-.6-.8.3-.3.4-.3.3-.3.3-.2.4-.4.4-.3.4-.3.4-.4.3-.4.4-.5.3-.4.3-.4.4-.4.3-.5.3-.5.3-.5.2-.5.3-.5.3-.5.2-.6.3-.6.2-.5.2-.6.2-.8v-.6l.2-.6v-.7l.2-.6v-3.1zm5.7-89.2l.7-.8.2.5-.5 2.6-.4 2.6-.3 2.7-.3 2.7-.4 2.7-.3 2.7-.3 2.7-.4 2.8-.3 2.8-.3 2.7-.3 2.8-.2 2.8-.2 2.8-.3 2.7-.2 2.8v3l-.3 2.7-.2 2.8-.2 2.8v2.8l-.2 3v8.5l-.2 3v8.6l.2 3v3l.2 2.8.2 3h-1l-.2-3v-3l-.2-2.8v-5.8l-.2-3V451l.2-2.8v-3l.2-2.7v-2.7l.3-3 .2-2.7.2-2.8V428l.3-2.7.3-2.8.3-2.8V417l.4-2.8.3-2.7.3-2.8.4-2.7.3-2.7.4-2.7.4-2.7.4-2.8.3-2.7.5-2.7.4-2.7v.6zm.7-.8l.2.2v.3l-.3-.5zm-12.3-7l-1-.3.8-.3.3.2.4.2.2.3h.3l.4.3.3.3.4.2.4.2.5.3.4.2.3.2.4.3.4.2.5.3.5.2.4.2.4.2.4.2.5.3.4.2.5.2.4.2.3.2.4.3h.4l.5.4.4.2.3.2.3.3.4.3.3.3.4.2-.6.8-.2-.2-.4-.3h-.3l-.3-.3-.3-.3-.4-.2-.4-.2-.4-.3-.4-.2-.4-.2-.4-.3-.4-.2-.4-.3-.5-.2-.4-.2-.4-.2-.5-.2-.5-.3-.4-.2-.4-.2-.4-.2-.4-.2-.4-.3h-.4l-.4-.4-.4-.2-.4-.2-.4-.3-.4-.3-.3-.3-.4-.2-.4-.2.8-.3zm-1-.3l.2-.8.6.5-.8.3zm-6 71.4l.8.6-.8-.2-.3-1v-1l-.3-1-.2-1.3v-1l-.2-1.4V443l-.2-1.6v-5l.2-1.8v-2l.2-2 .2-2 .2-2.3.2-2.3.2-2.5.3-2.4.3-2.5.3-2.6.4-2.8.4-2.8.4-3 .4-2.8.5-3 .6-3.2.5-3.2.6-3.3.6-3.5.6-3.5.6-3.5 1 .2-.6 3.5-.6 3.5-.6 3.4-.5 3.3-.4 3.3-.5 3-.4 3-.4 3-.4 3-.4 2.7-.3 2.7-.3 2.7-.3 2.5-.2 2.4-.3 2.4-.3 2.3v2.2l-.3 2v2l-.2 2v9.8l.2 1.4v1.2l.3 1 .2 1.2v1l.4 1-1-.3zm.8.6l-.5.6-.3-.8.8.2zm0 0l-.7-.7 1 .3-.3.3zm-.7-.7l1-1v1.3l-1-.4z"/>
+        <path fill="#fff" d="M343.6 471.8l4 14.7c.2 7.7 5 14 8.3 19 4-3 7.5-8 6.5-16-5.8-46.5-3.8-77.3 6-115-22 15-32.3 46.6-25 97.3z"/>
+        <path fill="#21231e" d="M347 486.6l-3.8-14.7 1-.3 3.8 14.6-1 .3zm1-.3zm7.6 19l.6.7h-.7l-.3-.6-.3-.5-.4-.5-.4-.5-.3-.5-.5-.6-.3-.6-.4-.5-.3-.7-.4-.5-.2-.6-.4-.5-.3-.6-.2-.5-.4-.6-.3-.7-.2-.6-.3-.6-.3-.5-.3-.7-.3-.6-.3-.7-.2-.7-.2-.6-.2-.7-.2-.7-.2-.7v-.6l-.2-.7v-.8l-.2-.8v-.7h1v1.4l.2.7v.7l.2.7.2.6v.6l.3.7v.5l.4.7.2.6.3.6v.6l.4.7.3.6.3.6.3.4.3.6.4.6.3.6.3.5.4.6.3.5.4.5.3.6.3.4.4.5.3.4.4.5.3.4.3.5.4.3h-.8zm.6.7l-.4.3-.3-.4h.8zm5.8-16.5h1v5.5l-.2.6v.7l-.3.6v.4l-.3.6-.2.6-.3.5-.2.6-.2.5-.3.6-.3.5-.3.6-.3.4-.2.4-.3.4-.4.5-.2.3-.3.4-.4.4-.3.3-.3.4-.4.4-.4.3-.3.3-.7-.8.4-.3.4-.4.3-.3.4-.3.4-.3.3-.4.4-.3.4-.4.3-.4.3-.4.3-.4.3-.4.3-.4v-.5l.4-.3.2-.5.2-.5.2-.5.2-.5.2-.5.2-.6v-.6l.2-.5v-.6l.2-.7v-5.1zm6.8-114.7l-.6-1 .8.7-1 3.5-.8 3.5-.8 3.4-.7 3.4-.7 3.4-.7 3.3-.6 3.5-.6 3.4-.4 3.2-.5 3.3-.3 3.4-.4 3.2-.4 3.4-.4 3.3-.2 3.3-.2 3.4-.2 3.4v3.6l-.2 3.5v14.7l.3 3.7.3 4 .2 3.8.3 4 .4 3.8.3 4 .5 4.2.4 4.3.6 4.4h-1l-.6-4.2-.4-4.3-.5-4.2-.3-4-.4-4-.3-4-.2-3.8-.2-3.8v-3.7l-.2-3.7v-14.3l.2-3.4.2-3.4.2-3.4.2-3.4.3-3.3.3-3.4.4-3.3.4-3.3.6-3.4.5-3.3.7-3.4.6-3.3.7-3.4.7-3.4.8-3.5.8-3.4.8-3.5 1-3.6.8.6zm-.6-1l1-.6-.2 1.3-.8-.6zm-24 98h-1l-.7-4.6-.5-4.6-.5-4.5-.3-4.3-.3-4.2-.2-4.2v-8l.2-3.8.2-3.7.3-3.7.4-3.4.5-3.4.6-3.3.8-3.3.7-3 1-3 1-3 1-2.8 1-2.8 1.2-2.5 1.3-2.5 1.4-2.4 1.5-2.3 1.4-2 1.6-2.2 1.7-2 1.7-2 2-1.6 1.8-1.7 2-1.6 2-1.5.6.8-2 1.4-2 1.6-1.8 1.6-1.8 1.7-1.8 2-1.6 2-1.6 2-1.5 2-1.4 2.3-1.4 2.4-1.4 2.4-1.2 2.6-1 2.7-1 2.7-1 3-1 3-.7 3-.7 3-.6 3.4-.5 3.3-.5 3.5-.3 3.6-.3 3.7-.2 3.8v12l.4 4.4.3 4.3.5 4.5.5 4.6.6 4.7zm-1 0zm.4 0h.5-.4zm-.4 0z"/>
+        <path fill="#fff" d="M344.8 486.2l-20.3-6.7c-2.5 20.2 1.4 45.6 7 79 4.6 29 2 51.6-1.5 66.2 21.6-3 30.7-30.7 20-83-3-13.7-5.8-31.3-5.2-55.5z"/>
+        <path fill="#21231e" d="M324.7 479l20.2 6.7-.4 1-20.2-6.7-.3-.6.7-.4zm-.6.4v-.6l.7.2-.6.4zm8 79l-1 .3-.6-3-.5-3.2-.6-3-.5-3-.5-3-.5-2.8-.4-3-.4-2.7-.4-2.7-.4-2.7-.4-2.7-.3-2.7-.4-2.6-.3-2.6-.3-2.4-.2-2.5-.3-2.3-.2-2.4-.2-2.4v-2.4l-.3-2.3V500l-.2-2v-10.7l.2-2 .2-2v-2l.4-2 1 .3-.2 2-.2 1.8v2l-.2 2v4l-.2 2v4.3l.2 2.3v2.3l.2 2.3.2 2.3.2 2.2.2 2.4.3 2.4.2 2.5.3 2.5.3 2.5.3 2.6.4 2.8.4 2.6.3 2.7.4 3 .6 2.7.4 2.8.4 3 .5 3 .4 2.8.5 3 .4 3 .5 3.2zm-2 65.8v1l-.5-.6.4-1.4.2-1.4.3-1.5.3-1.5.3-1.6.4-1.6.3-1.7.2-1.8.2-1.7.2-1.8.2-2 .2-1.8v-2l.3-2 .2-2v-2l.2-2v-13.4l-.2-2.3-.2-2.4-.2-2.4-.2-2.5-.3-2.5-.3-2.6-.3-2.6-.4-2.6-.4-2.7 1-.2.3 2.7.4 2.7.3 2.5.3 2.6.3 2.6.2 2.5.2 2.6v2.4l.3 2.4v6.8l.2 2.3v4.3l-.2 2v2l-.2 2v2l-.2 2-.2 2-.2 1.8-.3 1.8v1.8l-.4 1.7-.2 1.8-.3 1.6-.2 1.6-.3 1.5-.3 1.5-.4 1.5-.3 1.4-.5-.8zm0 1h-.6v-.6l.7.6zm19.4-83.5l1-.2 1 5 .8 4.6.7 4.6.5 4.5.5 4.3.4 4 .3 4 .2 4v7.2l-.2 3.4-.2 3.2-.4 3-.4 3-.6 3-.6 2.6-.7 2.6-1 2.4-1 2.3-1 2.2-1 2-1.2 1.8-1.3 1.7-1.4 1.5-1.4 1.4-1.5 1.3-1.5 1-1.8 1-1.8.7-2 .7-2 .5-2 .2v-1l2-.3 1.8-.6 1.8-.6 1.7-.8 1.6-1 1.5-1 1.5-1 1.4-1.5 1.3-1.5 1.3-1.6 1-1.8 1.2-2 1-2 1-2.2.7-2.3.6-2.4.7-2.7.5-3 .4-2.8.4-3 .2-3.3v-3.5l.2-3.5v-3.7l-.3-3.8-.3-4-.3-4-.4-4.3-.7-4.4-.8-4.5-.8-4.7-1-5zm-4.8-55l.3-1 .3.5V503l.2 2 .2 1.8v2l.2 1.8v1.8l.2 1.8.2 1.7.2 1.8.2 1.7.2 1.7.2 1.6.2 1.6.2 1.6.2 1.5.3 1.5.3 1.5.3 1.5.2 1.4.3 1.4.3 1.4.3 1.4.3 1.3v1.3l.4 1.2-1 .2-.2-1.3-.3-1.3-.4-1.2-.2-1.4-.3-1.4-.2-1.4-.2-1.4-.3-1.5-.2-1.5v-1.5l-.4-1.6-.2-1.5-.2-1.6-.2-1.7-.2-1.7-.2-1.7-.2-1.8-.2-1.8v-1.7l-.3-2-.2-1.7v-2l-.3-1.8v-4l-.2-2v-13l.3.5zm.3-1l.3.2v.2l-.4-.5z"/>
+        <path fill="#21231e" d="M343.6 584h1v.7h-.8v-.2h-.2v-.4zm-4.3-40l1-.4.4 1.2.2 1.2v1l.4 1.3.2 1.3.2 1.2.2 1.2.2 1.2.2 1.3.2 1.3.2 1.2.2 1.3.2 1.3.2 1.2.2 1.3v1.4l.3 1.3v2.6l.3 1.3v1.3l.2 1.2v2.6l.2 1.3v9.1h-1v-7.6l-.2-1.2v-2.7l-.2-1.3V570l-.2-1.3v-1.3l-.2-1.3v-1l-.3-1.4v-1.3l-.3-1.3-.2-1.3v-1.2l-.3-1.3-.2-1.3-.2-1.3-.2-1.3v-1.2l-.4-1.2-.2-1.2-.2-1.2-.2-1.2-.3-1.2-.2-1.2-.2-1.2zm-5.5-50.4h1.2v6.4l.2 1.5v3.3l.2 1.5v1.6l.2 1.5v1.6l.3 1.5v3.1l.3 1.5.2 1.7v1.5l.3 1.6.2 1.5.2 1.6.2 1.4.2 1.6.3 1.5v1.6l.4 1.6.2 1.6.3 1.6.2 1.5.3 1.6.3 1.5.3 1.5.4 1.6-1 .3-.5-1.7-.4-1.6-.3-1.6-.3-1.5-.3-1.5-.2-1.6-.3-1.6-.2-1.5-.3-1.6-.2-1.6-.2-1.4-.3-1.6-.2-1.5-.2-1.6v-1.7l-.3-1.5-.2-1.6v-1.5l-.2-1.6v-1.4l-.2-1.6-.2-1.6V508l-.2-1.7V503l-.2-1.4v-6.4l-.2-1.6zm1.2 0h-1.2v-.2h.2v-.2h.2v-.2h.8v.2h.2v.4z"/>
+        <path fill="#fff" d="M344 367.3l13.2 2.2-4.6 23.3c-5 24.3-8.2 53-4.5 84.2 1.5 11.7 4 21.2 7.6 28.5-14.6-1.6-24-15.8-22.7-40.6-2.6-29-1.5-52 3.2-69.4 1.4-5 5.8-24.2 7.8-28.3z"/>
+        <path fill="#21231e" d="M357 370l-13-2.3v-1l13.3 2.3.4.6-.6.4zm.3-1h.5v.6l-.5-.6zm-4.2 24l-1-.3.2-.3v-.4l.2-.5v-.6l.2-.7v-.6l.3-.7v-.8l.2-.8v-1l.3-.7.2-1 .2-1v-.8l.2-1 .2-1 .2-1 .2-1 .2-1 .2-.8v-1l.3-.7.2-1v-.7l.3-.7v-.7l.3-.6v-.6l.2-.5v-.4l.2-.3v-.3l1 .2v.6l-.2.5v.5l-.3.6v.5l-.2.7-.2.8-.2.8v1l-.3.7-.2 1v.8l-.2 1-.2 1-.2 1-.2.8-.2 1-.2 1v1l-.3 1-.2.7-.2 1v.7l-.2.7v1l-.2.5-.2.6v.7l-.2.5v.7zm-4.4 84h-1l-.3-2.8-.3-3-.3-3-.2-2.8v-2.8l-.3-3V457l-.2-3v-11l.2-2.7v-2.7l.2-2.7.2-2.8.2-2.6.2-2.6.3-2.6.2-2.6.3-2.6.3-2.5.4-2.5.4-2.5.4-2.5.3-2.4.4-2.4.3-2.4.5-2.4.4-2.3.5-2.3.4-2.3 1 .2-.4 2.2-.4 2.3-.5 2.3-.4 2.4-.4 2.4-.5 2.4-.4 2.4-.2 2.4-.4 2.5-.3 2.5-.2 2.5-.3 2.6-.3 2.5-.2 2.5-.2 2.7-.2 2.6-.2 2.6v2.6l-.2 2.7v2.7l-.2 2.7v11.5l.2 3v2.7l.3 3 .2 2.7.3 3 .3 2.8.3 3zm7 29v-1l-.4.8-.4-.7-.3-.6-.3-.8-.4-.7-.3-1-.3-.6-.3-.8-.4-.8-.3-.8-.2-.8-.2-.8-.3-1-.2-.7-.3-1-.2-.8-.3-1-.2-1-.2-.8v-1l-.3-1-.2-.8-.2-1-.2-1v-1l-.3-1-.2-1v-1l-.3-1-.2-1v-1l-.2-1.2-.2-1 1-.2v1l.3 1v1.2l.2 1v1l.3 1 .2 1 .2 1v1l.2 1 .2 1 .2 1 .2 1 .3.8.3 1 .2.8.2 1 .3.7.2 1 .3.7.2.8.3 1 .3.7.3.8.3.7v.8l.4.8.4.7.3.7.4.7.3.6.3.7-.5.7zm.4-.7l.4.8h-1l.6-.7zM332.4 465l1-.2v8.8l.2 2 .2 2 .3 2 .4 1.8.4 1.7.4 1.8.5 1.7.5 1.5.6 1.5.6 1.5.7 1.3.8 1.3.7 1.3.8 1 1 1 .8 1.2 1 1 1 .8 1 .8 1 .8 1 .7 1.2.6 1.2.4 1.2.5 1.2.3 1.2.3 1.3.3h1.4l-.2 1h-1.3l-1.4-.4-1.3-.4-1.3-.4-1.2-.5-1.2-.5-1.2-.7-1-.6-1.2-.8-1-.8-1-1-1-1-1-1-1-1.2-.7-1.2-.8-1.3-.8-1.2-.7-1.4-.7-1.5-.5-1.6-.6-1.6-.5-1.7-.4-1.6-.4-1.8-.3-2-.2-1.8-.2-2-.2-2v-8.9zm1-.2zm2.3-69.4l1 .3-.5 1.6-.4 1.7-.4 1.7-.3 1.7-.3 1.8-.3 1.8-.3 1.8-.2 2-.2 1.8-.3 2-.2 2v2l-.3 2v2l-.2 2-.2 2.3v4.3l-.2 2.2v9.6l.2 2.5v2.4l.2 2.5v2.5l.2 2.6.2 2.6.2 2.5.2 2.6.2 2.8h-1l-.2-2.6-.2-2.6-.2-2.7-.2-2.7v-2.5l-.2-2.6v-2.5l-.2-2.4v-18.5l.3-2v-2.2l.3-2v-2.2l.3-2 .3-2 .3-2 .2-1.8.3-2 .4-1.8.4-1.8.3-1.8.5-1.7.4-1.7.3-1.7.4-1.6zm8.3-28.6v1l.4-.3-.2.4-.2.4-.2.6-.2.6-.3.7-.2.8-.2 1-.2.8-.3 1-.3 1-.2 1-.3 1-.3 1-.3 1.2-.4 1-.3 1.2-.3 1-.2 1.2-.3 1-.3 1.2-.3 1-.3 1-.3 1-.2 1-.3 1-.3 1-.2.8-.2.8-.2.7v.6l-.2.6v.5l-1-.3v-.5l.2-.7.2-.6.2-.8v-1l.4-.7.2-1 .2-.8.3-1 .2-1 .3-1 .2-1.2.3-1 .3-1.2.3-1 .4-1 .2-1.2.3-1 .2-1.2.3-1 .3-1 .3-1 .4-1 .2-1 .3-1v-.8l.4-.8.2-.7.3-.7v-.6l.3-.5.2-.5.5-.2zm-.5.2l.2-.3h.3l-.5.3zm.5.3v-.5.5zm-.5-.3l.2-.3h.3l-.5.3z"/>
+        <path fill="#fff" d="M336 370.4l6.4 7.4c-1.8 1.4 1.3 7-.4 18-1 6.4-4.8 13.8-5.6 22-2.5 26.5-2.5 59.8 5.4 81-14.5-1.6-19.5-14.8-20-39.6-.4-20.6-.4-44.7 4.7-72.7 1-6.5 4.2-11.7 9.4-16z"/>
+        <path fill="#21231e" d="M342 378.2l-6.5-7.5.8-.6 6.5 7.5v.7h-.7zm.8-.7l.4.4-.5.2v-.7zm-.3 18.5h-1l.2-1.2v-1l.2-1V385l-.2-.6v-1.2l-.2-.6v-1l-.2-.4v-2.8l.2-.3.3-.4v-.2l.7.8v.2h-.2v.5h-.2v2.2l.2.4v1.1l.2.6v1.1l.2.7v8.1l-.2 1v1l-.3 1zm0 0zm-5.6 21.7h-1v-1.8l.2-.7.2-.7v-.7l.3-1v-.6l.3-.8.2-.7.2-.8.2-.7.2-.7.2-.7.2-.6.2-.7.2-.7.3-.7v-.7l.3-.6.2-.7.2-.7.2-.6v-.7l.3-.6.2-.6.2-.5.2-.7v-.6l.2-.6v-.6l.2-.6v-.5h1v1.2l-.3.6v.7l-.2.6v.7l-.3.7-.2.6-.2.6v.7l-.3.7-.2.6-.3.7-.2.6-.2.6-.2.7-.2.7-.2.7-.3.7-.3.7-.2.8-.2.7-.2.7v.7l-.2.6-.2.7v.7l-.3.8v.7l-.2.7v1.5zm4.8 81.6v-1l-.4.7-.8-2-.6-2-.7-2.3-.6-2.2-.5-2.3-.5-2.4-.5-2.4-.4-2.4-.4-2.5-.4-2.5-.3-2.5-.3-2.6-.2-2.7-.2-2.7-.2-2.6v-2.7l-.2-2.7V455l-.2-2.8v-10.9l.2-2.7V436l.2-2.8v-2.7l.3-2.6.3-2.7.2-2.6.2-2.6.2-2.4h1l-.3 2.6-.2 2.6-.2 2.5-.2 2.6v2.6l-.2 2.6v2.7l-.2 2.6v2.7l-.2 2.7V455l.2 2.7v2.7l.2 2.7.2 2.5.2 2.7.2 2.6.3 2.5.3 2.6.4 2.4.4 2.4.4 2.5.4 2.3.5 2.4.7 2.2.6 2.2.6 2.2.6 2 .7 2-.5.7zm.5-.6l.3.7h-.8l.5-.7zm-21-39.5h1v2.2l.2 2.3v2l.2 2.2.2 2v2l.3 1.7.3 1.8.3 1.8.2 1.6.4 1.5.4 1.6.4 1.5.5 1.4.4 1.2.6 1.3.6 1.2.6 1 .7 1 .6 1 .8 1 .8 1 .8.6 1 .7 1 .7 1 .6 1 .5 1 .4 1 .4 1.3.3 1.3.2 1.3.2-.2 1-1.4-.2-1.3-.3-1-.4-1.3-.4-1.2-.5-1-.6-1.2-.5-1-.7-1-.7-.8-.7-1-1-.7-1-.7-1-.6-1-.7-1.2-.6-1-.5-1.4-.5-1.3-.5-1.5-.5-1.5-.4-1.5-.3-1.7-.4-1.5-.4-1.8-.3-1.8-.2-2v-2l-.3-2v-2l-.2-2.3v-2.2l-.2-2.3zm4.7-72.8l1 .2-.5 2.6-.4 2.6-.3 2.5-.4 2.6-.3 2.4-.4 2.5-.3 2.4-.3 2.4-.2 2.4-.2 2.5-.3 2.3v2.4l-.3 2.4-.2 2.3v2.4l-.2 2.2v2.3l-.2 2v4.5l-.2 2.2V459h-1v-26.9l.2-2.2v-2l.2-2.4v-2.3l.2-2.3.2-2.3.2-2.4.2-2.3.2-2.4.2-2.5.3-2.3.3-2.4.3-2.5.4-2.5.3-2.6.4-2.5.4-2.6.6-2.6.4-2.6zm1 .2zm9.3-16.5l-.8.7h.7l-.4.5-.5.4-.5.4-.4.4-.4.5-.4.3-.4.4-.4.5-.4.4-.4.5-.3.5-.4.5-.3.5-.3.4-.3.4-.3.5-.2.4-.3.5-.2.4-.3.5-.2.4-.2.6-.2.5-.2.5-.2.6-.2.5-.2.7v.5l-.3.6v.6l-.2.6v.6l-1-.2v-.6l.2-.6.2-.6v-.6l.3-.6v-.6l.3-.5.2-.6.2-.6.2-.4.3-.6v-.5l.4-.5.2-.6.3-.5.2-.6.3-.5.3-.6.4-.5.3-.6.4-.5.2-.6.4-.4.4-.5.4-.4.4-.4.5-.4.4-.5.5-.4.4-.4.5-.6.6-.4h.7zm-.7 0l.4-.3.3.4h-.7z"/>
+        <path fill="#fff" d="M372.3 390l-13.4-1.6c-2.6 12.7-4.5 21.7-5 26.2-1 9 1.8 17 5 23 5-3 7.2-9.4 9.2-18.6 2-9.2 2.7-19.2 4-29z"/>
+        <path fill="#21231e" d="M359 388l13.3 1.5v1l-13.5-1.6-.4-.7.5-.4zm-.6.3v-.4h.5l-.6.3zm-4 26.4h-1l.2-.6v-.8l.2-.6v-1l.2-.6v-.7l.3-.6v-.7l.2-.7v-.7l.3-.7v-1l.2-.7.2-.8.2-1v-.7l.3-1 .2-.8v-1l.2-1 .2-1 .2-1 .2-1 .2-1 .3-1 .2-1 .2-1.2.2-1.2v-1l.4-1.3 1 .2-.3 1.2v1l-.3 1.3-.3 1-.2 1.2-.2 1-.2 1-.2 1-.2 1-.2 1-.2 1v1l-.3 1-.2.8-.2.8v1l-.3.7v.8l-.3.7v.8l-.2.7-.2.7v.6l-.2.7v1.3l-.2.5v1.1l-.2.5v.9zm4.3 22.6l.5.8h-.7l-.3-.7-.3-.6-.4-.6-.3-.5-.3-.6-.2-.7-.3-.7-.2-.6-.3-.7-.2-.7-.3-.7-.2-.8-.2-.7v-.7l-.3-.7-.2-.7-.2-.7v-.8l-.3-.7v-.7l-.2-.8v-.8l-.2-.7v-.8l-.2-.8v-6.1h1v6.6l.2 1v1.4l.3.7v1.6l.3.8.2.7v.8l.3.7.2.7.3.7.2.6.2.7.2.6.2.6.2.6.3.7.3.5.2.6.3.7.3.6.3.6.3.5-.7-.2zm.5.8l-.5.4-.2-.5h.7zm8.6-19h1l-.3 1-.2.8-.2 1v.7l-.3.8-.2.7-.2.8-.2.7v.8l-.4.7-.2.7-.3.6v.7l-.4.6-.2.7-.3.6-.2.5-.3.5-.3.6-.3.5-.4.7-.3.5-.4.5-.5.4-.3.6-.4.4-.4.4-.4.4-.5.3-.4.5-.4.3-.4.3-.5-.7.4-.3.5-.3.4-.3.3-.4.4-.3.4-.4.4-.4.4-.5.3-.4.4-.4.4-.5.3-.4.4-.5.2-.4.3-.6.2-.5.3-.6.2-.7.3-.7.2-.6.3-.7.2-.6.2-.7v-.8l.3-.7.3-.7.2-.8.2-.8.2-.8.2-.8.2-.8.2-1zm4.5-28.5v-1l.5.5v1l-.3 1v.8l-.2 1v1l-.2.8v1l-.2.8v1l-.2 1v.8l-.2 1v1l-.2.8v1l-.2.8v1l-.2.8v1l-.2 1-.2.8v1l-.2.8-.2 1v.8l-.2 1-.2.8-.2.8v1l-.3.8v1l-.3.7h-1l.3-1v-.8l.3-1 .2-.7v-1l.3-.8v-1l.3-.8.2-1v-1l.3-.8v-1l.2-.8v-1l.2-.8v-1.8l.2-1v-1l.2-.8v-1l.2-.8v-1l.3-1v-1.8l.2-1v-.8l.2-1v-.8l.3-1v-1l.6.7zm0-1h.6l-.2.5-.5-.5zm0 0v1-1zm0 1z"/>
+        <path fill="#fff" d="M407 418.6h-11.8c-.4 11-.7 18.5-.5 22.3.4 7.5 2.3 14 5.5 18.7 3.6-3 7-8.3 7.6-16.2.6-8-.6-16.5-.7-25z"/>
+        <path fill="#21231e" d="M395.2 418.2h12v1h-12l-.5-.5.5-.5zm-.5.5v-.5h.5l-.5.5zm.5 22.2h-1v-11.4l.2-.8v-4.4l.2-.8v-5h1v7.8l-.2.7v5.6l-.2.7v7.7zm4.7 18.4l.6.7h-.8l-.3-.5-.3-.4-.3-.4-.4-.5-.2-.4-.3-.5v-.4l-.4-.6-.2-.5-.3-.5v-.6l-.3-.6-.2-.5-.2-.6-.2-.6v-.5l-.2-.6-.2-.7-.2-.6v-.6l-.2-.6-.2-.6v-.7l-.2-.5v-.7l-.2-.7v-.5l-.2-.7v-2.6l-.2-.7h1v1.1l.2.7v1.4l.2.7v.7l.2.6v.7l.2.6v.6l.3.6v.7l.3.6v.7l.3.5v.6l.2.6.2.5.2.5.2.5.3.6.3.5.2.6.3.5.2.6.3.5.2.6.3.5.3.6.4.4.2.5h-.7zm.6.7l-.5.5-.2-.5h.8zm6.7-16.6h1v1.6l-.2.7v1.4l-.3.8v.6l-.3.7-.2.7-.2.6-.2.6-.2.5-.2.5-.3.6v.5l-.4.7-.2.5-.3.5-.2.5-.3.4-.3.5-.3.5-.4.4-.3.3-.4.4-.4.4-.3.5-.4.3-.4.4-.4.3-.3.3-.4.3-.7-.6.2-.3.4-.2.3-.3.2-.4.3-.2.4-.3.2-.4.3-.3.3-.4.3-.4.4-.5.3-.4.2-.4.2-.4.3-.5.2-.5.3-.5.2-.5.3-.5.2-.6.2-.4v-.6l.3-.6v-.6l.3-.6v-.7l.3-.6v-1.4l.2-.7V444zm0-24.3v-1l.4.6v5.6l.2 1v4.6l.2.8v2.8l.2.8v9.2h-1v-11.8l-.2-.8V429l-.2-1v-3l-.2-1v-5.3l.4.5zm0-1h.4v.6l-.5-.5z"/>
+        <path fill="#fff" d="M420 424.2l-12 .6c0 11 0 18.4.3 22.2a37 37 0 006.2 18.6c3.5-3 6.8-8.6 7-16.5.3-8-1-16.3-1.5-24.8z"/>
+        <path fill="#21231e" d="M408 424.3l12-.6v1l-12 .6-.4-.5.5-.5zm-.4.5v-.5h.5l-.4.5zm1.2 22.2h-1v-4l-.2-.6v-17.8h1V445l.2.4v1.6zm5.4 18.2l.6.8h-.7l-.2-.5-.3-.5-.3-.5-.3-.5-.4-.5-.3-.5-.3-.5-.2-.5-.3-.5-.3-.5-.2-.6-.2-.5-.3-.7-.2-.6-.2-.6v-.4l-.3-.6-.2-.6v-.7l-.3-.6-.2-.5v-.6l-.3-.8v-.6l-.2-.7v-.8l-.2-.6v-.7l-.2-.8v-2h.8v.7l.2.7v1.4l.2.7.2.7v.7l.2.7v.6l.3.6v.7l.2.6v.5l.3.6.2.7.2.5v.6l.3.6.2.5.2.5.2.5.2.5.2.6.2.6.3.5.2.6.2.4.3.5.3.5.3.4.3.5.3.3h-.8zm.6.8l-.4.4-.3-.5h.8zm6.2-17h1v2.3l-.2.7v.7l-.2.7-.2.6v.7l-.3.6v.6l-.2.5-.2.6-.2.7-.2.6-.3.5-.3.6-.3.5-.2.4-.3.5-.4.4-.3.4-.3.5-.3.4-.3.4-.3.5-.2.4-.3.3-.3.4-.4.3-.3.4-.3.3-.4.3-.6-.8.3-.3.3-.4.3-.3.4-.3.3-.4.4-.3.4-.4.2-.5.3-.4.2-.3.3-.4.3-.5.2-.4.3-.5.2-.6.3-.5.2-.6.2-.5.2-.6.2-.6.2-.6.2-.5.2-.6v-.5l.3-.7v-.6l.2-.7v-.6l.2-.8V449zm-1-25.3v1l.5-.5v2.4l.2.8v1.5l.2.7v3.4l.2.7v1.5l.2.8v.8l.2.8v2.5l.2.7v2.3l.2.8v5.3h-1v-7.4l-.2-.7v-1.6l-.2-.8V437l-.2-1v-1.5l-.2-.7v-1.6l-.2-.8v-1.6l-.2-.8v-1.6l-.2-.8v-2.2l.4-.6zm-.5.6v-.6h.5l-.5.6zm.5.4v-1 1z"/>
+        <path fill="#fff" d="M395 412.4l-12-.8c-1.2 11-2 18.2-2.2 22-.2 7.7 1 14.2 4 19.3 3.8-2.8 7.7-8 8.8-15.7 1.2-8 .8-16.4 1.4-25z"/>
+        <path fill="#21231e" d="M383 411l12 1v1l-12-1-.4-.5.5-.4zm-.4.5v-.5h.5l-.4.5zm-1.3 22.2h-1V431l.2-.4V429l.2-.6v-1.2l.2-.6v-2.2l.2-.7v-1.4l.2-.8v-.8l.2-.8v-1l.2-.8v-1l.2-.8v-1l.3-1v-1l.2-1v-1l1 .2v2l-.3 1v1l-.2 1v.8l-.2 1v.7l-.2 1v.8l-.2.8v.8l-.2.8v1.3l-.2.7v1.4l-.2.6v1.1l-.2.6v1.7l-.2.5v2.7zm3.2 18.8l.5.8-.7-.2-.2-.4-.2-.5-.2-.4-.3-.5-.2-.4v-.5l-.3-.5-.3-.5v-.6l-.3-.5v-.7l-.3-.6v-.6l-.3-.4v-.6l-.3-.7V443l-.2-.5v-.7l-.2-.6V440l-.2-.8v-5.5h1v6.8l.2.7v.7l.2.6v.6l.2.5v.6l.2.7.2.6v.6l.3.5v.5l.3.6.2.5.2.7.2.5.2.5.2.5.2.5.3.5.2.5.2.5.2.4h-.7zm.5.8l-.4.3-.3-.5.8.3zm8.2-16h1l-.2.8v.8l-.3.7v.7l-.3.7-.2.6-.2.6-.2.6-.3.6-.2.6-.3.6-.2.6-.3.5-.3.6-.3.5-.4.5-.3.5-.3.4-.3.5-.3.4-.4.6-.3.4-.4.4-.3.3-.4.4-.3.5-.4.3-.5.3-.3.4-.4.3-.4.3-.3.3-.5-.8.3-.3.4-.2.3-.3.4-.3.2-.3.4-.2.3-.4.3-.3.3-.3.3-.4.2-.4.4-.5.3-.4.2-.3.3-.5.3-.5.3-.4.4-.5.2-.5.3-.6v-.5l.4-.6.2-.5.2-.5.2-.6.2-.7.2-.7.2-.6.2-.7v-.7l.2-.7.2-.8zm1.8-24.4v-1l.5.5v1.5l-.2.8v5.6l-.2.7v9l-.2.8v2.2l-.2.8v.7l-.2.8v1l-.2.6v.8l-1-.2v-.7l.2-.8v-1.5l.2-.7V432l.2-.8V428l.2-.8V421l.2-.7v-4.8l.2-.8v-2.3l.6.5zm0-1h.5v.5l-.5-.6z"/>
+        <path fill="#fff" d="M384 399.6l-13.2-5.4c-2.2 8.8-5.2 37.8 0 50 4.5-3 9-8.4 10.3-17 1.6-9 2-18.2 3-27.6z"/>
+        <path fill="#21231e" d="M371 393.7l13 5.4-.3 1-13-5.4-.4-.6.7-.3zm-.7.3l.2-.5.5.2-.7.3zm.3 50l.6.7-.7-.2-.5-1.2-.5-1.3-.3-1.4-.4-1.5-.3-1.5-.3-1.6-.2-1.7-.2-1.7v-1.8l-.2-1.8v-3.6l-.2-2V418l.2-2v-1.8l.2-1.8.2-1.8V409l.3-1.8.2-1.7V404l.3-1.6.2-1.5.3-1.4.2-1.3.2-1.2.2-1v-1l.3-1 1 .3-.2 1v.8l-.3 1.2-.3 1.2-.2 1.3-.2 1.4-.2 1.5-.2 1.6-.2 1.6v1.7l-.3 1.7v1.7l-.2 1.8v1.8l-.2 1.8v3.8l-.2 2v5.4l.2 1.8v1.7l.2 1.8.2 1.7.2 1.6.3 1.6.3 1.5.3 1.3.5 1.4.4 1.2.4 1h-.8zm.6.7l-.5.3-.2-.5.7.2zm9.4-17.7h1v1l-.3.8-.2.8v.7l-.3.8-.2.8-.3.7-.2.7-.3.7-.3.5-.3.7-.2.6-.3.6-.3.6-.3.6-.5.5-.3.7-.4.5-.4.5-.3.5-.3.4-.4.5-.4.5-.5.4-.4.3-.3.4-.4.4-.4.4-.5.4-.5.3-.4.4-.4.3-.6-.8.4-.4.4-.3.4-.3.4-.3.4-.4.4-.3.4-.4.4-.4.4-.4.3-.4.4-.4.3-.5.3-.4.4-.4.3-.5.4-.4.3-.6.3-.5.3-.6.3-.6.2-.6.3-.7.3-.5.2-.6.3-.8.2-.7.2-.7.3-.7v-.7l.3-.7.2-.8v-.8zm3-27l.4-1 .4.6v1l-.2.8v1.7l-.2 1v1l-.2.8v1.8l-.2.8v1.7l-.2 1v1.7l-.2 1v1.6l-.2 1v.7l-.2 1v.8l-.2.8v1l-.2.7v.8l-.2 1v.8l-.2 1v.7l-.3.8v.8h-1v-.8l.2-1v-1.5l.2-.8v-1l.2-.8v-1l.2-.7v-1l.2-.7v-1l.2-.7v-1.6l.2-1v-.7l.2-1V410l.2-.8v-1.8l.2-.8v-1.8l.2-1v-1.5l.2-1v-.8l.2-1 .3.6zm.4-1l.4.3v.3l-.4-.5zm0 .6l-.3.4.2-.4zm0-.5l.4.3v.3l-.4-.5z"/>
+        <path id="c" fill="#edb92e" stroke="#21231e" d="M387.8 701.2c8 6.3 15.2-8.3 8-27.6-5-14.2-30.6-8.7-16.4 10.5.7 1 1.6.6 1.5-.4-1-4 1.6-6.3 5.5-5.5 10.5 2 11 22-.6 17.6-2.2-.2-.4 4 1.7 5.6z"/>
+        <path fill="#edb92e" stroke="#21231e" d="M400 639.2c-1 3.4-5 7.6-8 10.8-4.5 4.8-3.4 12.2-.2 16 3.5 4.4 5 9.2 5.8 13 .5 2.3 1.5 7.4.8 15.5-.4 4-2.7 6-5 7.7-1 1 .5 3 4.3 6 .4.2 1.5 1 2 3 .2.4 2 .4 2.2 0 .4-2 1.6-2.8 2-3 3.7-3 5.4-5 4.2-6-2.2-1.7-4.6-3.8-5-7.7-.6-8 .3-13.2.8-15.5.8-3.8 2.3-8.6 6-13 3-3.8 4.2-11.2-.5-16-3-3.2-7-7.4-8-10.7 0-.8-.3-1-.7-1-.3 0-.7.2-.7 1z"/>
+        <path fill="#edb92e" d="M395 685.5h11.6c2 0 3.6 1.6 3.6 3.5 0 2-1.6 3.5-3.6 3.5H395c-2 0-3.5-1.5-3.5-3.5s1.6-3.5 3.6-3.5z"/>
+        <path fill="#21231e" d="M406.6 686H395v-1h11.6v1zm4 3h-1v-1l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.3v-.2h-.2v-.2h-.3l-.2-.2h-.5v-.2h-.6v-1h1l.2.2h.4v.2h.3l.2.2h.2v.2h.2v.2l.3.2.2.2v.2l.3.2.2.3v.3l.2.3v.4l.2.2v.8zm-1 0h1-1zm-3 4v-1h.8l.3-.2h.2l.2-.2.2-.2h.3v-.2l.2-.2v-.2l.2-.2.2-.3v-.3l.2-.2v-.8h1v1.2l-.2.2v.4h-.2v.3l-.2.3h-.2v.3h-.2v.3h-.3l-.3.2v.2h-.3l-.2.2h-.2l-.3.2h-.4l-.2.2h-.8zm-11.5-1h11.6v1H395v-1zm-4-3h1v1l.2.2v.3h.2v.2h.2v.2h.2v.2h.2v.2h.2l.3.2h.2l.2.2.3.2h.6v1h-1.2v-.2h-.3l-.2-.2h-.2l-.2-.2-.2-.2-.3-.2-.3-.3-.2-.3-.2-.3-.2-.2v-.2l-.2-.2v-.4l-.2-.2v-.8zm1 0h-1 1zm3-4v1H394v.2h-.3l-.2.2h-.2v.2h-.2v.2l-.2.2-.2.2-.2.2v.2l-.2.2v.5h-.2v.6h-1v-1.2l.2-.2v-.2h.2v-.3h.2v-.2l.2-.2v-.2h.2l.2-.2v-.2h.3v-.2h.3v-.2h.3l.3-.2h.2l.2-.2h.5l.2-.2h.7z"/>
+        <path fill="#fff" d="M417 579.2l.5-11c-4.4-2.2-15.2 0-19.7 10.2a64.7 64.7 0 01-18 25.2c10 1.8 18.4-.2 23.7-7.4 7.3-9.8 11.2-15.7 13.6-17z"/>
+        <path fill="#21231e" d="M418 568.3l-.4 11h-1l.4-11 .7-.5.3.5zm-.3-.5l.3.2v.3l-.3-.5zm-19.5 10.8l-1-.4.6-1 .5-.8.5-1 .6-.7.5-.8.5-.8.7-.7.6-.6.7-.7.7-.5.7-.6.6-.4.7-.5.8-.4.8-.4.7-.3.8-.3.7-.2.7-.3h.7l.8-.3h1.2l.7-.2h2l.7.2h.5l.6.2.5.2.4.2-.4 1-.4-.3h-.5l-.5-.2h-.5l-.5-.2h-3l-.7.2h-.6l-.7.3-.7.2-.7.2-.7.2-.8.3-.7.3-.7.4-.7.4-.5.5-.7.5-.7.6-.5.6-.6.6-.7.7-.6.6-.5.7-.6.8-.5 1-.3.7-.5 1zM380 603l-.2 1-.2-.8.6-.6.6-.5.7-.5.6-.6.7-.6.6-.6.5-.6.6-.6.6-.7.6-.7.5-.6.7-.7.5-.7.6-.7.5-.7.6-.8.4-.8.5-.7.5-.8.5-1 .5-.8.6-.8.6-1 .5-.8.6-1 .6-1 .5-1 .5-1 .5-1 .6-1 .5-1.2.5-1.2 1 .4-.6 1.2-.5 1-.6 1.2-.5 1-.4 1-.6 1-.5 1-.5 1-.6 1-.5 1-.6.8-.6.8-.5.8-.5.8-.6.8-.5.8-.6.7-.4.7-.6.8-.6.6-.5.7-.7.7-.6.6-.6.7-.4.6-.6.5-.6.6-.7.7-.6.5-.5.6-.6.6-.8.5-.2-1zm-.2 1h-1l.8-.8.2.8zm23.4-8l.8.5-.6.7-.5.6-.7.6-.6.6-.6.6-.5.5-.6.6-.7.5-.7.5-.7.4-.8.3-.7.4-.7.3-.7.3-.7.2-.7.3-.8.2-.8.2h-.8l-.8.2h-.8l-1 .2h-6.1l-1-.2-.8-.2-1-.2.2-1 1 .2.8.2h1l.8.2h6.6l.8-.3h.8l.7-.3.8-.2.7-.2.7-.3.7-.2.7-.2.8-.4.6-.3.7-.3.7-.4.6-.5.6-.5.5-.5.5-.5.6-.5.5-.6.7-.6.5-.7zm13.4-16.8h1l-.2.4-.2.2h-.2l-.3.3-.2.3-.3.2-.2.3-.3.3-.3.4-.3.3-.2.4-.4.5-.3.4-.3.3-.4.5-.3.5-.4.5-.5.6-.3.5-.4.5-.5.7-.5.6-.5.7-.5.7-.5.7-.5.6-.6.8-.6.8-.5.8-.6 1-.7.7-.7 1-.6.8-.8-.6.6-1 .7-1 .6-.7.7-1 .6-.7.6-.8.5-.7.5-.7.5-.7.5-.7.5-.8.5-.6.5-.6.4-.6.4-.6.4-.6.4-.5.4-.5.3-.5.3-.4.4-.5.3-.4.3-.4.3-.3.4-.3.3-.3.2-.2.3-.3.3-.2.4-.2h.2l.3-.2-.4.4zm1 0v.3h-.2l.2-.3z"/>
+        <path fill="#fff" d="M425.2 580.6l-11.8-5c-5 10-8.2 16.6-9.5 20.2-2.8 7-3.5 13.8-2.3 19.5a22 22 0 0014-11.6c3.8-7 6-15.3 9.5-23z"/>
+        <path fill="#21231e" d="M413.6 575.2l11.7 5-.3 1-11.8-5-.3-.8.6-.2zm-.7.2v-.4l.6.2-.7.2zm-8.7 20.6l-1-.4.2-.3.2-.4.2-.5v-.4l.2-.3.2-.5.2-.4.2-.5.2-.5.3-.5.2-.5.3-.6.2-.5.3-.6.3-.5.3-.7.2-.6.3-.6.3-.7.4-.8.3-.7.4-.8.2-.7.4-.8.4-.8.4-.8.4-.8.4-.8.4-1 .4-.8.5-.8.4-1 .8.5-.4.8-.5 1-.5.8-.4.8-.3 1-.4.7-.4 1-.5.7-.4.7-.3.8-.3.7-.4.6-.3.7-.3.7-.3.6-.2.7-.3.6-.3.5-.3.6-.3.6-.3.6-.2.5-.3.5-.3.5-.2.5-.2.4-.2.5v.5l-.2.4-.2.3v.3l-.3.4zm-2.7 18.8l.2 1-.6-.4v-.5l-.2-.7v-.6l-.2-.5v-1.7l-.2-.5v-3.7l.2-.6v-1.2l.2-.7v-.6l.2-.5v-.7l.2-.6.2-.7v-.6l.3-.8v-.6l.3-.7.2-.7.2-.7.2-.7.2-.7.2-.7 1 .4-.3.6v.7l-.4.6-.2.6-.2.6-.2.7v.5l-.3.6v.8l-.3.6v.6l-.2.7v.6l-.2.6v.5l-.2.6v1.9l-.2.5v3.5l.2.5v1.2l.2.5v.7l.2.5-.6-.4zm.2 1h-.5v-.4l.5.4zm13.5-12.4l1 .5-.5.6-.3.6-.4.6-.3.6-.4.6-.4.5-.5.6-.5.6-.4.5-.4.6-.5.4-.4.5-.5.4-.5.3-.4.4-.6.4-.5.4-.5.4-.5.3-.5.4-.5.3-.4.2-.5.2-.4.2-.5.2-.4.3h-.4l-.5.2-.5.2h-.5l-.4.3h-.5l-.2-1h.9l.4-.3h.4l.4-.3h.5l.4-.3.5-.2.4-.2.5-.2.5-.2.5-.3.5-.3.4-.3.4-.4.4-.3.5-.4.4-.4.4-.4.6-.4.4-.5.4-.4.5-.6.3-.4.4-.5.4-.6.5-.6.4-.5.2-.7.4-.6.4-.6.3-.6zM425 581l.3-.8.3.6-.3.7-.3.8-.3.7-.3.7-.3.8-.2.7-.3.7-.2.7-.3.7-.3.8-.3.7-.2.6-.3.8-.4.7-.3 1-.2.6-.2.7-.3.8-.3.8-.2.7-.3.7-.3.8-.3.7-.2.7-.3.7-.3.8-.3.7-.5.7-.3.7-.3.6-.5.6-.3.7-1-.6.5-.6.3-.7.3-.6.3-.6.4-.7.3-.6.3-.7.3-.7.2-.7.3-.7.2-.7.3-1 .3-.6.3-.7.3-.7v-.8l.4-.7.3-.7.3-.8.2-.7.3-.7.3-.8.3-.7.3-.7.3-.7.3-.7.2-1 .3-.6.3-.8.3-.7.4-.8.3-.8.3.7zm.3-.8l.5.2-.2.4-.3-.6z"/>
+        <path fill="#fff" d="M428.6 580.6l-12.7-2c-2.4 10.8-4 18-4.4 22-1 7.5 0 14 2.7 19.4 4.3-2.3 8.8-7 10.7-14.7 2-7.8 2.2-16.3 3.6-24.7z"/>
+        <path fill="#21231e" d="M416 578.2l12.6 2v1l-12.8-2-.4-.6.6-.4zm-.6.4v-.5l.6.2-.6.4zm-3.3 22h-1l.2-.5V599l.2-.6v-.5l.2-.6v-.5l.2-.6v-.6l.2-.5v-.6l.2-.6v-.6l.2-.6.2-.7v-.6l.3-.7v-.7l.2-.8v-.8l.3-.8.2-.8v-.8l.3-1 .2-.7.2-1 .2-.8.2-1 .2-1 .2-1 .2-1 1 .3-.2 1-.2 1-.2 1-.2 1-.2.8-.2 1-.2.7-.2 1-.2.7v.8l-.3.8-.2.8v.8l-.2.7v.6l-.2.7-.2.7v.6l-.2.6-.2.7v.4l-.2.6v.6l-.2.5v1.1l-.2.6v.4l-.2.4v1.2zm2 19l.5.8-.7-.2-.2-.5-.3-.5-.2-.5v-.6l-.3-.4-.2-.5-.2-.5-.2-.6v-.6l-.2-.6v-.6l-.3-.6v-.6l-.2-.6v-.6l-.2-.6v-2.8l-.2-.6v-5.4l.2-.7v-1.5h1v3.1l-.2.7v5.1l.2.6v1.2l.2.6v.6l.2.6v.6l.3.6v.5l.2.6v.7l.3.5v.5l.3.6.2.5.2.5.2.5.3.5.2.5-.7-.2zm.5.8l-.5.3-.2-.5.7.2zm10-15.2l1 .2-.2.7-.2.8v.7l-.3.7-.3.7-.2.5-.3.6-.4.7-.3.6-.3.6-.3.4-.3.6-.4.5-.3.5-.4.5-.4.5-.4.4-.4.5-.4.3-.4.4-.4.4-.4.5-.4.3-.4.4-.4.3-.4.3-.4.3-.4.4-.5.3-.4.3-.4.2-.5.2-.5-.8.4-.2.4-.3h.4l.4-.4.4-.3.4-.3.4-.3.4-.3.4-.3.4-.3.3-.3.4-.4.4-.4.5-.4.3-.4.4-.5.3-.4.4-.6.2-.5.3-.6.3-.5.3-.6.4-.6.3-.5.3-.6.2-.6.3-.5.2-.6.3-.8.2-.7.2-.6.2-.8zm4-25v1l.5-.5v.8l-.2.8v.7l-.2.8v.8l-.2.8v.8l-.2.8v.7l-.2.8v.8l-.2.8v1.7l-.2.7v.8l-.2.8v.8l-.2.8v.7l-.2.8v1l-.2.6v.8l-.2.8-.2.7v.7l-.2.7-.2.8v.7l-.3.7-.2.7-1-.2.2-.8.2-.7v-.7l.2-.8v-.7l.3-.7v-.8l.2-.8v-.7l.2-.8v-1.5l.2-.8v-.7l.2-.8v-1l.2-.7v-.7l.2-.8v-1.6l.2-.8v-.8l.2-.7v-1l.2-.7v-.8l.2-.8v-.8l.2-1v-.7l.3-.8.5-.4zm-.4.3v-.4h.5l-.4.5zm.5.6v-1 1z"/>
+        <path fill="#fff" d="M430.4 563.4h7.6c4.4 2 9 12.2 3.7 22a65.8 65.8 0 00-9.5 29.2c-7.4-6.8-10.8-14.7-8.2-23.3 3.4-11.7 6.8-25.2 6.4-28z"/>
+        <path fill="#21231e" d="M438 564h-7.6v-1h7.8l-.2 1zm0-1h.2-.2zm4 22.5l-.8-.5.5-1 .4-.8.4-.8.3-1 .3-.8.2-1v-.7l.3-1V574l-.2-1v-.6l-.3-.8-.2-.7-.3-.8-.2-.7-.3-.6-.3-.7-.3-.6-.3-.6-.3-.4-.3-.5-.4-.3-.4-.4-.3-.4-.4-.4-.5-.3-.4-.3-.3-.2.5-1 .4.4.5.2.5.4.4.4.4.4.4.4.4.5.4.6.3.6.3.6.3.6.3.7.2.7.3.7.2.6.2.8v.7l.3 1v.8l.2.8v3.5l-.2 1v1l-.4.8-.3 1-.3 1-.4.8-.4 1-.5 1zM432 615l.5-.7-.8.3v-.8l.2-1v-2.3l.3-1v-.7l.2-.8.2-1 .2-.8v-1l.2-.7.3-1 .2-.8.2-1 .2-.7.3-1 .3-.8.3-1 .4-1 .4-.8.4-1 .4-1 .4-1 .4-1 .5-1 .4-1 .5-1 .5-1 .5-1.2.6-1 .6-1.2 1 .5-.7 1-.6 1.2-.7 1-.5 1-.5 1.2-.5 1-.4 1-.5 1-.5.8-.4 1-.3 1-.3 1-.4.8-.3 1-.3.8-.2.8-.3 1-.4.8-.2.8-.2 1-.2.7-.2 1v.7l-.3.8v1l-.3.7v.8l-.2.8v1l-.2.7v1.8l-1 .2zm.7-.3v1l-.8-.7.7-.3zm-9.2-23.6l1 .4-.3.8-.2.8v.8l-.2.7v.8l-.2.8v3l.2.8.2.8v.7l.3.7.3.7.2.8.3.7.4.7.4.6.3.7.5.7.4.7.4.7.5.6.4.7.5.7.4.6.6.7.6.6.6.7.7.6.5.7-.6.7-.8-.6-.7-.7-.6-.7-.7-.6-.6-.7-.6-.7-.4-.7-.6-.7-.4-.7-.5-.8-.3-.7-.5-.7-.3-.8-.5-.7-.3-.7-.3-.8-.4-.7-.2-.7-.2-.8-.2-.7v-.8l-.2-.8v-.8l-.2-.8v-2.5l.2-.8v-.8l.3-.8.3-1 .2-.7zm7-28v1l.4-.7v1.8l-.2.5v1.1l-.2.7-.2.7v.8l-.3.8v.8l-.2 1-.2.8-.2 1-.3 1v1l-.4 1-.2 1-.3 1-.2 1-.2 1-.3 1.2-.3 1-.3 1.2-.3 1-.3 1.2-.3 1.2-.3 1-.3 1.2-.2 1-.4 1.2-1-.3.4-1 .3-1 .5-1.2.3-1 .3-1.2.4-1.2.3-1 .3-1.2.3-1 .3-1.2.3-1 .2-1 .2-1 .3-1.2.2-1 .2-1 .2-1 .2-.8.2-1 .2-.8.2-.8v-.8l.3-.7v-.8l.2-.7v-.6l.2-.6v-2l.4-.6zm-.6.5v-.6h.4l-.5.5zm.4 0v-.6.4zm-.5 0v-.6h.4l-.5.5z"/>
+        <path fill="#fff" d="M433.8 558.2l-12-4.3c-4.3 10-7.2 16.8-8.4 20.5-2.3 7.3-2.6 14-1 19.6a21.3 21.3 0 0014-11.6c3.3-7.3 4.5-16.3 7.4-24.2z"/>
+        <path fill="#21231e" d="M422 553.4l12 4.3-.4 1-12-4.4-.3-.6.6-.3zm-.7.3l.2-.4h.4l-.7.4zm-7.4 21l-1-.3v-.4l.2-.4v-.4l.3-.4v-.4l.3-.5.2-.5v-.5l.3-.5.2-.5.2-.6.3-.6.2-.5.2-.6.3-.6.2-.6.2-.6.3-.7.3-.6.3-.7.4-.7.3-.8.3-.8.3-.7.4-.8.3-1 .4-.8.3-1 .4-.8.5-1 .4-.8.3-1 1 .5-.5 1-.4 1-.4.8-.3 1-.4.8-.4.8-.4.8-.3.8-.4.8-.4.8-.3.7-.3.8-.3.8-.3.7-.3.6v.8l-.4.6-.2.6-.3.6v.6l-.3.6-.2.5-.2.5-.2.5v.5l-.3.5-.2.4v.5l-.3.4v.3l-.2.3v.4zm-1.8 19l.3 1-.6-.4-.3-.6v-.5l-.2-.6v-.5l-.2-.5v-.6l-.2-.7V583l.2-.7V581l.3-.6v-.7l.2-.6v-.6l.3-.6.2-.7v-.6l.3-.7.2-.6.2-.6 1 .3-.3.6-.2.7-.2.7-.2.6v.7l-.2.6v.7l-.2.6-.2.6v.6l-.2.6v1l-.2.7v6.5l.2.6v1.1l.2.4.2.6v.5l.2.5-.6-.3zm.3 1h-.5v-.4l.5.3zM426 582l.8.6-.3.6-.4.7-.2.5-.4.6-.4.7-.4.6-.4.5-.4.5-.4.5-.5.5-.5.5-.5.4-.4.4-.5.4-.4.4-.4.4-.5.3-.5.5-.5.3-.5.3-.5.4-.4.2-.5.3h-.5l-.5.4-.5.2-.5.2-.5.2h-.4l-.6.3-.4.2h-.5l-.3-.8.4-.2h.5l.5-.3.5-.2h.4l.5-.3.4-.2.4-.3.5-.2.5-.2.5-.3.4-.3.5-.3.5-.4.4-.3.6-.3.4-.4.5-.3.4-.4.4-.5.4-.4.4-.4.4-.4.4-.5.4-.5.4-.5.4-.5.4-.6.3-.6.3-.6.3-.6.3-.7zm7.6-23.4l.4-1 .3.7-.3.8-.3.8-.2.8-.3.7-.2.8-.2 1-.2.6-.2.8-.3.8v.8l-.3.7-.2.8-.2.8-.2.8v1l-.3.6-.2.8-.2.8-.2.8v.7l-.3.8-.2.8-.3.7-.2.8-.2.7-.3.8-.3.7-.2.7-.3.8-.3.7-.3.7-.2.6-1-.5.4-.5.3-.7.3-.7.3-.6.3-.7.3-.8.2-.8.2-.7.3-.8.2-.7.2-.8.2-.7v-.8l.4-.8.2-.8.2-.8.2-.8.2-.8.2-.7.2-.7.2-.8.2-.8.2-.8.2-1 .2-.6.2-.8.3-.8.3-.8.2-.7.3-.8.3-.8.3-.7.3.6zm.4-1l.4.3v.3l-.4-.6zm-.2.6l-.2.4.2-.4zm.2-.5l.4.2v.3l-.4-.6z"/>
+        <path fill="#fff" d="M425.6 549.7l-2.6-16.4c-2.8-.7-6.5 5.8-10 9.5-1 1-2 1.7-2.6 2.8a23.3 23.3 0 00-3.4 8 62.3 62.3 0 01-13 27.6c10.2-.2 18-3.8 21.8-12 5-11 7.7-17.7 9.8-19.5z"/>
+        <path fill="#21231e" d="M423.4 533.3l2.7 16.4h-1l-2.5-16.3.6-.6.4.5zm-.3-.4h.4v.2l-.3-.4zm-9.7 10.2l-.8-.7.4-.4.2-.2.3-.4.4-.4.2-.4.3-.4.4-.4.2-.5.3-.4.4-.5.2-.4.3-.3.4-.5.2-.4.3-.4.4-.3.2-.3.3-.4.3-.3.4-.3.3-.4.3-.2.3-.2.4-.2.4-.3h.3l.4-.3h.3l.4-.2h1.1l-.2 1h-1l-.3.2-.2.2-.3.2-.3.2-.3.2-.3.3v.4l-.5.3-.3.3-.3.3-.4.4-.3.4-.3.5-.4.4-.3.3-.3.4-.3.4-.4.5-.3.5-.3.4-.4.4-.3.4-.4.4-.3.4-.4.4-.4.4-.3.4zm-2.5 2.7l-.8-.7v-.2h.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l1 .6h-.2l-.2.2v.2h-.2v.2h-.2l-.2.2v.2h-.2l-.2.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.2h-.2zm-3.3 7.7l-1-.2v-.6l.2-.4v-.3l.2-.3v-.8l.2-.3v-.3l.2-.3v-.3h.2v-.4l.2-.3v-.2l.2-.2v-.2l.3-.3v-.2l.2-.2v-.2l.3-.2v-.3h.2v-.3l.3-.3v-.2l.3-.2v-.2l.2-.3.2-.2.8.6-.3.3v.2l-.2.2-.2.2v.4l-.2.2-.2.2v.3l-.2.3v.2l-.2.3-.2.2v.2l-.2.3v.2l-.2.3v.2l-.2.3v.2l-.2.3v.5l-.2.3v.2l-.2.3v.5l-.2.3v.7zm-13.4 27v1l-.3-.8.5-.8.5-.7.5-.6.5-.8.5-.7.5-.7.4-.6.6-.7.4-.7.5-.8.4-.7.4-.7.4-.8.4-.7.4-.7.4-.8.4-.8.4-.8.4-1 .4-1 .3-.8.3-1 .3-.8.4-1 .3-1 .4-1 .3-1 .3-1.2.3-1 .3-1.3.2-1.3.3-1.2 1 .2-.3 1.2-.3 1-.4 1.3-.3 1.2-.4 1-.4 1-.3 1.2-.4 1-.4 1-.4 1-.3 1-.5.8-.4 1-.3.8-.4.8-.4 1-.5.8-.4.8-.3.7-.5.8-.4.8-.5.8-.4.7-.6.7-.5.7-.5.7-.5.7-.5.8-.5.7-.5.6-.5.8-.5.7-.4-.8zm0 1h-1l.7-.8.4.7zm21.3-12.8l1 .4-.5.7-.4 1-.4.6-.4.7-.5.7-.4.6-.5.6-.5.6-.5.6-.6.5-.6.4-.6.5-.7.4-.6.4-.8.4-.7.4-.7.4-.7.3-.7.3-.8.3-.8.2-.8.2-1 .2-.7.2-1 .2-.7.2h-1l-.8.2h-1l-.8.2h-2v-1h2.8l1-.2h.8l.8-.2 1-.2h.7l1-.3.7-.2.7-.3.8-.2.7-.3.7-.3.7-.3.6-.3.7-.3.6-.4.7-.5.6-.4.6-.4.5-.4.6-.6.5-.5.5-.4.5-.6.5-.6.4-.7.5-.6.4-.6.3-.7.3-.8zm9.8-19.2h1v.3l-.3.3v.2l-.3.2-.2.2-.2.2-.2.3-.3.4-.2.2-.2.4v.4l-.4.5-.2.5-.3.5-.2.5-.3.6-.2.6-.3.6-.3.6-.4.7-.3.8-.3.8-.4.7-.3.8-.4 1-.4.7-.4 1-.4.8-.4 1-.4 1-.5.8-.3 1-.5 1-1-.4.6-1 .4-1 .5-1 .4-1 .5-1 .4-.8.3-1 .4-.7.4-.8.4-.8.4-1 .3-.6.4-.7.4-.7.3-.6.4-.7.3-.6.2-.4.2-.6.3-.5.2-.5.3-.4.2-.5.3-.3.2-.4.2-.3.2-.4.2-.3.2-.3.2-.2.3-.2.3-.2-.2.4zm1 0v.3-.3z"/>
+      </g>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#d"/>
+      <path fill="#fff" stroke="#21231e" d="M536.4 415a38 38 0 004.8-1.5 66.2 66.2 0 01-21.4-22c-7.8-12 3.3-33 8-44.3a53 53 0 0021.2-31c1-7.3-19-4.7-33 2-17 8-19.3 5.7-25.4 7-2.2 10.5 2.4 11.4 6.7 11-9.4 15-13.3 29.8-15 51.4-2-21.6-6-36.5-15.3-51.5 4.3.6 9-.3 6.7-10.7-6-1.4-8.4.8-25.4-7.2-14-6.5-34-9-33-1.8 3 13.7 11.8 24 21.3 31 4.6 11.2 15.7 32.4 8 44.2a67.3 67.3 0 01-21.5 22c1.7.7 3.3 1.2 5 1.5-1.2 1.5-11 4.5-12.3 3.7-7.6-5.3-15-18-21.4-25.2-18.2-20.8-27.3-36.7-24-49.6 4.5-14 20.8-29.6-.8-27-21.7 2.8-39.6 32.5-45.4 68.3-2 13.2-3.3 24.4-4.7 33.5 11.8-4.3 17-8.5 20.2-13.7-1.4 5-2.5 9.7-3.2 14.2 9.7-1.7 16.7-6.4 19.2-15 1-3.6 2.3-6.5 3.6-9 3 1 7 1 11.6 0 1.7 4 15 19 22.2 30 8 12.2 20.2 21.6 24.2 22 2 .4 2.7-4 2.2-10.2 21 .2 42.3.3 63-.4 20.7.7 41.8.6 63 .4-.6 6 0 10.6 2 10.3 4-.5 16.2-10 24.3-22.2 7-10.8 20.5-25.7 22.2-30a20 20 0 0011.6.2c1.3 2.5 2.5 5.4 3.5 9 2.5 8.6 9.5 13.3 19.2 15-.7-4.5-1.8-9-3.2-14 3.2 5 8.4 9.3 20.2 13.6-1.4-9-2.7-20.3-4.8-33.5-5.8-35.8-23.7-65.5-45.4-68.2-21.6-2.6-5.3 13-.7 27 3.3 12.8-5.8 28.7-24 49.5-6.5 7.3-13.8 20-21.4 25.2-1.2.8-11-2.2-12.2-3.8z"/>
+      <g id="e">
+        <path fill="#edb92e" d="M440.6 356.8c-2 1.8-8.8 1.8-18 2.4-14.8.5-23.4-4-25.3-13.5 5.6 6.6 12.2 10 19.7 8 10.2-2.5 16-4.3 18.3-3.8 1.6.4 4 3.3 5.3 6.8z"/>
+        <path fill="#21231e" d="M422.6 359.7v-1h1.8l.7-.2h2.5l.8-.2h2.8l.8-.2h3l.5-.2h1l.4-.2h.5l.4-.2h.4l.5-.2h.3l.3-.2h.4l.3-.2h.2v-.3h.3l.6.7h-.3l-.3.3-.3.2h-.2l-.3.3h-.4l-.3.2h-.4l-.4.2h-.5l-.5.2h-1l-.5.2h-1.5l-.6.2H432l-.6.2h-2.8l-.8.2h-2.3l-1 .2H423zm0 0zm-25-14.3l-.7.6.8-.4.2 1 .2.7.3.8.3 1 .3.6.5.7.4.7.4.6.5.6.4.6.6.6.6.5.6.4.7.5.6.3.8.5.8.4.8.3 1 .4.8.2 1 .3 1 .2 1 .2h1l1 .3h1.2l1.2.3h6.6v1H416l-1-.2h-1.3l-1-.3h-1.2l-1-.3-1-.3-1-.3-1-.2-1-.4-.8-.3-.8-.4-1-.4-.7-.5-.7-.5-.7-.5-.7-.6-.6-.5-.6-.6-.4-.8-.5-.7-.3-.7-.4-.8-.4-.7-.4-1-.3-.7-.3-1-.2-.8 1-.4zm19.3 8l.2 1h-.8l-.7.2h-1.4l-.7.2h-2.8l-.6-.2-.7-.2h-.7l-.6-.3h-.7l-.6-.3-.8-.3-.6-.3-.6-.2-.6-.3-.6-.4-.6-.3-.6-.4-.6-.4-.6-.6-.6-.4-.6-.5-.5-.6-.6-.6-.4-.6-.6-.5-.5-.6-.6-.7.7-.6.5.6.5.6.6.6.5.5.5.5.6.5.4.5.6.5.6.4.5.5.7.4.6.3.6.3.4.3.6.2.6.3.6.2.7.2h.5l.6.3.7.2h.6l.7.2h4.7l.6-.3h.7zm18.5-4l-.3 1h-2.6l-.4.2h-.9l-.5.2-.5.2h-.5l-.6.2h-.5l-.6.3h-.5l-.7.3-.7.2h-.6l-.7.3-.7.2-.8.2-.8.2h-.8l-.8.3-1 .3-.8.2-1 .2-.8.3-.3-1 1-.2.8-.2 1-.2.7-.2 1-.2.7-.2.8-.2.7-.2.8-.2.7-.2.7-.2.6-.2h.6l.6-.3h.6l.6-.3h.6l.5-.2h.6l.5-.2h.6l.4-.2h.9l.3-.2h2zm0 0zm5.4 7.8l-.7-.8-.2.6v-.7l-.3-.3v-.3l-.3-.3v-.3l-.3-.2v-.3l-.2-.2-.2-.3v-.3l-.3-.2-.2-.3v-.2l-.2-.2-.2-.3v-.2l-.3-.2h-.2v-.3h-.2l-.2-.3v-.2h-.3l-.2-.2v-.2h-.2v-.2h-.4v-.2h-.2l.3-1h.2l.2.2.2.2h.2l.2.2.2.2h.2v.3l.3.2.2.2h.2l.2.3v.2l.2.2.2.2.2.2.2.2.2.3v.2l.3.2.2.3.2.3v.3l.3.4.2.3v.3l.3.3v.3l.3.3v.3l.2.3v.6zm0-.6l.2.3-.3.2v-.6zm-21.5-35.4v1.5h-.4v-.4h-.2v-.7l.2-.2h.2v-.2h.2zm15.3 4l-.5 1.3-.6-.2-.5-.2h-.6l-.5-.2-.4-.2-.5-.2-.4-.2-.5-.2-.4-.2h-.5l-.4-.3-.5-.2h-.4l-.4-.3h-.5l-.4-.3h-.5l-.4-.2h-.4l-.5-.2h-.4l-.3-.2h-1.3l-.4-.2H420v-2h2.9l.5.2h1l.4.2h.5l.3.2.5.2h.5l.4.2.5.2h.5l.4.3h.6l.5.3.6.2h.5l.6.3.5.2.6.2h.5l.6.3.6.2.5.2.6.2h.5zm9 2.5v1.5H442l-.3-.2h-.4l-.3-.2h-.3l-.4-.2h-.3l-.4-.2h-.4l-.3-.2h-.5l-.3-.2-.4-.2h-.3l-.4-.2h-.2l-.3-.2h-.3l-.3-.3h-.7l-.2-.2h-.4l-.2-.2.4-1.5h.2l.2.2h.2l.2.2h.3v.2h.4l.3.2h.3l.3.2h.4l.3.2.3.2h.4l.3.2h.4l.3.2h.4l.4.2h.3l.4.2h.4l.3.2h.6l.3.2h1zm0 1.5v-1.5h.4v.2h.2v.2h.2v.9h-.2v.2h-.2v.2h-.2zm23.4 7.5l.2-1.2h.2v.2h.2v.8h-.6zm-10-2l.4-1.2h.5l.3.2h.4l.3.2h1.1l.2.2h.6l.2.2h.6l.3.2h.7l.4.2h.8l.3.2h.9l.2.2h.9l.5.2h.8l-.2 1.3h-.9l-.4-.2h-.6l-.4-.2h-.7l-.4-.2h-1.4l-.3-.2h-.7l-.3-.2h-.6l-.3-.2h-.5l-.4-.2h-.5l-.3-.2h-.5l-.2-.2h-.5l-.2-.2zm.4-1.2l-.3 1h-.2v-.8h.8z"/>
+        <path fill="#21231e" d="M431.5 332l-.7 1.3-.4-.3-.4-.2-.4-.3-.3-.2-.4-.3-.4-.3-.3-.3-.4-.3-.4-.2-.3-.4-.3-.3-.2-.3-.3-.3-.3-.4-.2-.3-.3-.4-.2-.3-.3-.4-.2-.4-.2-.3-.3-.5-.2-.4-.2-.2v-.4l-.3-.4-.2-.3-.2-.4-.2-.3v-.4l-.2-.3-.2-.3-.2-.4 1.4-.7.2.2.2.4v.3l.3.2.2.4.2.3v.3l.3.3.2.4.2.3.2.4v.3l.3.4.3.3.2.4.2.4.2.4.3.3.2.4.3.4.2.3.3.4.3.3.3.3.3.2.3.3.3.3.2.2.4.3.3.2.2.2.3.2zm7.6-5.3l1.5.8-.2.4-.2.3-.2.4-.2.4-.3.5-.3.4-.2.2-.3.4-.3.3-.3.2-.3.3-.3.3-.3.3-.2.4-.3.2-.3.2-.4.2-.3.2-.3.2h-.3l-.5.2h-.3l-.3.2h-2.2l-.4-.2-.3-.2h-.2l.7-1.5h.5l.2.2h1.7l.3-.2h.2l.3-.2h.2l.3-.3.2-.2.3-.2h.2l.3-.3.2-.3.3-.2.2-.3.3-.4.2-.3.3-.3.2-.4.2-.3.3-.4.2-.5.2-.4v-.3z"/>
+        <path fill="#21231e" d="M429.6 331l-2.2-2.3c-1-1.3-.5-3 2-5.4 1.5.7 3 1.3 4.2 2-1 3-2.2 4.8-4 5.6zm-6.3 82l-.4 1h-.4v-1h.8zm23.8-3.6l1 1-.7.5-.6.4-.7.5-.6.4-.7.5-.7.3-.7.4-.7.4-.7.4-1 .3-.6.3-.8.2-.7.2-1 .2-.7.2h-.8l-.8.2h-5l-1-.2h-.8l-.8-.3h-1l-.8-.4h-1l-.7-.3-1-.3-.8-.3.3-1 .8.2 1 .3 1 .3.7.2 1 .2.7.2h.8l1 .2h.7l.7.2h4.8l.7-.2h1l.6-.3.7-.2h.7l.7-.4.7-.3.7-.3.8-.3.6-.4.7-.4.7-.5.6-.5.6-.5.5-.5.6-.6zm3-2.8l1 .8h-.2v.2h-.2l-.2.2v.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2v.2h-.2l-1-.8h.2v-.2h.2v-.2h.2l.2-.2.2-.2.2-.2v-.2h.2v-.2h.2l.2-.2.2-.2.2-.2v-.2h.2l.2-.2.2-.2v-.2h.2zm1 .8l-1-.8.2-.2h.7v.2h.2v.8z"/>
+        <path fill="#21231e" d="M452.2 401.3l-1.2-.2v-.2h.2l.2-.2h.6v.4h.2v.2zm-5.5 16l.3 1-.7-.8.2-.4.2-.4.2-.5v-.4l.3-.4.2-.5.2-.5v-.5l.3-.4.2-.5.2-.5v-.5l.3-.5v-.5l.3-.5v-.5l.3-.5v-.5l.3-.5v-.5l.2-.5.2-.6v-.5l.2-.6v-.5l.2-.4v-.6l.2-.6v-.5l.2-.7v-.6l.2-.6 1.2.3v.6l-.2.5v.6l-.2.6v.6l-.2.6v.5l-.2.6-.2.4v.6l-.2.5v.6l-.3.6v.5l-.3.6v.6l-.3.5v.5l-.2.5-.2.5v.5l-.3.5-.2.5v.5l-.2.4-.2.5-.2.6-.2.5-.2.6-.2.5-.2.5-.2.5-.7-.8zm-.4.2l1 .5v.2h-.2v.2h-.4l-.2-.2v-.2h-.2v-.4zm15.2-9.5l1 .7-.3.4-.4.6-.3.4-.4.4-.2.4-.4.4-.4.4-.4.4-.4.3-.4.4-.5.3-.4.4-.6.3-.4.3-.5.3-.5.3-.5.3-.5.2-.5.3-.5.3-.6.2-.5.3-.7.2-.5.3-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.3-1.2.6-.2h.6l.5-.3.6-.2.6-.2.6-.2h.6l.5-.3.6-.3.4-.2.5-.2.4-.3.5-.2.4-.3.5-.3.4-.4.5-.3.3-.3.5-.3.4-.3.4-.3.4-.2.4-.4.4-.3.4-.3.4-.3.3-.4.3-.4.3-.4.3-.4.2-.4.3-.4zm1 .7l-1-.7h.2v-.2h.7v.2h.2v.7z"/>
+        <path fill="#21231e" d="M461.3 400.2H460v-.2h.2v-.2h1v.4zm4.4 15.7l.7 1-.8-.3-.3-.4-.3-.4-.2-.5-.3-.5-.2-.4-.3-.4-.2-.5-.3-.5-.2-.4-.2-.5v-.5l-.3-.5-.2-.5-.2-.5-.2-.5v-.5l-.2-.5-.2-.5v-.6l-.3-.5v-.5l-.3-.6v-.4l-.2-.6v-.6l-.2-.5v-.7l-.2-.6v-.6l-.2-.5v-1.2h1v.5l.2.6v.6l.2.5v1.4l.2.5.2.6v.5l.2.5v.6l.3.5v.4l.2.5.2.4v.5l.2.4.2.5.2.4.2.5.2.4.2.4.2.5.2.4.2.5.3.4.3.4.2.4.3.5.2.3.3.4.3.3h-1zm0 .7l1-.7v.8l-.2.2h-.2v.2h-.4v-.2h-.2zm7.6-12.6l1 .4v.6l-.2.5v.5l-.2.5-.2.5-.2.5-.2.5-.2.5-.2.4-.2.4-.2.4-.3.5v.4l-.4.4-.2.5-.3.4v.3l-.4.3-.3.4-.3.4-.2.3-.3.3-.3.4-.3.3-.4.3-.3.3-.3.3-.3.2-.3.3-.3.4-.3.2-.3.3-.7-1 .3-.3.3-.2.3-.3.3-.2.2-.3.3-.3.2-.2.3-.3.3-.4.3-.3.2-.4.3-.4.4-.3.2-.4.3-.4v-.4l.4-.3.2-.5.3-.4v-.3l.3-.4.2-.4.2-.6.2-.4v-.5l.3-.4.2-.4.2-.5v-.4l.3-.5v-.4l.3-.5zm1 .4l-1-.3v-.2h.8v.2h.2v.4z"/>
+        <path fill="#edb92e" d="M406 317.8c-16.7 1.8-16 12.6-.4 28 3 3 4 3 4.6-.2 1.2-5.3 7-8.5 10.2-4.4 2 2.7 1.6 4.3 8.6 3.3 9 7.5 16.2 12.8 4.5 12.3-5-.2-9 2.8-15.7 2.5 2 4 2.3 4.3 3.4 4.6 6.5 1.2 13.3-2.8 19.8-1.6 14.3 2.6-23-38.6-22.4-40.3 1-4-9-11.5-12.7-4.2z"/>
+        <path fill="#21231e" d="M406 345.5l-.7.7-1.4-1.5-1.5-1.4-1.2-1.4-1.2-1.4-1-1.3-1-1.3-.8-1.3-.8-1.2-.8-1.2-.6-1.2-.5-1-.5-1.2-.3-1-.3-1v-1l-.2-1v-1l.2-1 .2-.8.4-.8.4-.8.6-.7.6-.7.8-.6.8-.6 1-.5 1-.5 1-.4 1.4-.4 1.3-.3 1.3-.2 1.6-.2v1l-1.5.2-1.4.2-1.2.3-1.2.3-1 .4-1 .5-1 .4-.6.5-.7.7-.6.6-.4.6-.4.6-.4.7-.2.8-.2 1v1.7l.2.8.2 1 .4 1 .4 1 .5 1 .5 1.3.7 1 .8 1.3 1 1.4.8 1.2 1 1.3 1.2 1.3 1.2 1.3 1.4 1.4 1.4 1.5zm3.8 0l1 .2v.3l-.2.3v.5l-.2.2v.2l-.2.2v.2l-.2.2-.3.3v.2h-.3l-.2.2H408l-.2-.2h-.2l-.2-.2h-.2l-.2-.3-.2-.2h-.2l-.3-.4h-.2l-.2-.3-.3-.3-.2-.2.7-.7.2.2.3.3.2.2.3.2.2.2.2.2h.2l.2.2.2.2h.3v.2h.6l.2-.2v-.2l.2-.2v-.2l.2-.4v-.4l.2-.3zm11-4.6l-.8.5-.3-.4h-.3l-.3-.4-.2-.2-.3-.2h-.3l-.3-.2h-.5l-.3-.2h-1.5l-.3.2-.4.2h-.2l-.4.3-.3.2-.2.2-.4.2-.3.2-.2.3-.3.3-.2.4-.3.3-.2.4-.3.5-.2.4-.2.3v.5l-.2.4v.5l-1-.2v-.5l.2-.5.2-.5.2-.5.3-.5.2-.4.2-.4.3-.4.3-.4.3-.4.4-.3.4-.3.4-.3.4-.2.3-.2.3-.2.5-.2h.4l.4-.2h.4l.4-.2h1l.4.2h.6l.4.3.4.3.3.2.4.3.4.5.4.4zm8.6 3.2l-.7.7h.4-.5l-.6.2h-4.5l-.2-.2h-.3l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2h-.2v-.3l-.3-.3v-.2l-.3-.2v-.2h-.3l-.2-.3-.2-.3v-.2l-.3-.2v-.3l-.3-.2.8-.6h.2v.4l.3.2.2.3.3.3v.2l.2.2.2.2.2.2.2.2.2.2h.2v.2h.3l.2.2h.2l.2.2h5.4zm-.4 0l.2-.2.2.2h-.4zm4.5 13v-1h4.1l.5-.2h.4l.3-.3h.2v-1l-.2-.3-.2-.4-.3-.5-.4-.4-.5-.4-.4-.4-.4-.5-.6-.5-.6-.6-.6-.6-.7-.5-.6-.6-.7-.7-.7-.7-.8-.6-.8-.7-.8-.7-1-.7.8-.8.8.7.8.5.8.7.8.7.7.5.8.6.8.7.7.6.6.6.7.4.6.6.5.5.5.5.4.5.4.4.4.4.3.4.2.4v2.3l-.4.3-.3.2-.4.3-.6.2h-.6l-.7.2h-3.6zm-15.2 2l-1 .4.5-.8h3.4l.6-.2h.5l.5-.2h.5l.5-.2h.5l.4-.2h.5l.5-.2.4-.2h.6l.4-.2.5-.2h.4l.4-.2h.5l.3-.2h.5l.4-.2h.5l.5-.2h2.6v1H431l-.4.2h-.9l-.4.3h-.8l-.4.2h-.5l-.4.3h-.6l-.5.2h-.5l-.5.3h-.5l-.5.2h-.5l-.5.2h-.5l-.6.2h-.6l-.6.2h-3l.5-.7zm-1 .4l-.3-.8h.8l-.4.8zm4 4l-.2.8h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.3-.2-.2-.3-.3-.2-.2v-.2h-.2v-.4l-.3-.2v-.3h-.3v-.4l-.3-.3v-.4l-.3-.4 1-.5v.5l.2.3.2.3v.4l.3.3.2.2v.2l.3.2v.2l.2.2v.2h.2v.3l.2.2v.2l.2.2h.2v.2h.4v.2h.4zm-.2.8zm20-2.5v1l-.7-.2h-4.7l-.6.2h-.7l-.6.2h-.7l-.6.2-.6.2h-.6l-.6.2h-.7l-.7.3-.6.2h-.6l-.6.2h-.6l-.6.2h-4.6l-.6-.2.3-1 .6.2h4.8l.6-.2h.6l.5-.2h.6l.7-.2.7-.2h.6l.6-.2.6-.2h.7l.5-.2h.6l.7-.2h.7l.6-.2h4.9zm-23-40l1 .3.3.3.5.7.6.8.8 1.2 1 1.2 1 1.3 1 1.5 1.3 1.5 1.3 1.7 1.4 1.8 1.4 1.8 1.5 1.8 1.5 2 1.5 1.8 1.4 2 1.4 2 1.3 1.7 1.3 2 1.2 1.7 1 1.7 1 1.6.8 1.5.6 1.4.4 1.3.3 1.2v2l-.6.7-.8.5H441v-1h2l.4-.3.3-.4V360l-.3-1.2-.4-1.2-.6-1.3-.8-1.5-1-1.6-1-1.7-1-1.8-1.3-1.8-1.4-2-1.4-2-1.4-1.8-1.5-2-1.4-1.8-1.5-1.8-1.4-1.8-1.3-1.8-1.3-1.6-1.2-1.6-1-1.5-1.2-1.3-1-1.2-.7-1-.6-1-.5-.7-.3-.4v-.6zm-12-3.7v-1l-.5.2.4-.6.3-.7.5-.6.5-.4.5-.3.6-.3.5-.2.5-.2h2.6l.6.2.6.2.5.3.6.2.6.3.4.4.5.2.4.4.4.4.5.5.4.4.3.4.3.4.3.5.2.5.2.5v.5l.2.5v1l-1-.3v-1l-.2-.4v-.4l-.3-.4-.2-.4-.3-.4-.3-.4-.5-.4-.3-.4-.5-.4-.4-.4-.5-.3-.4-.3-.5-.3h-.7l-.5-.3-.5-.2h-.5l-.6-.2h-2l-.4.3-.5.2-.4.3-.5.5-.4.4-.3.4-.3.6-.4.3zm.4-.3l-.2.2h-.2l.4-.2zm-.5-.2v.5-.5zm.4.2l-.2.2h-.2l.4-.2z"/>
+        <path fill="#21231e" d="M407 317.2l-1.3.4v-.6h.2v-.2h.8v.2h.2v.2zm7.6 10.6l-.8 1-.4-.4-.3-.4-.3-.3-.3-.3-.4-.3-.3-.2-.3-.4-.3-.3-.2-.2-.3-.4-.3-.3-.3-.2-.4-.4-.3-.3-.2-.2-.2-.4-.2-.3-.3-.3-.2-.3v-.4l-.4-.3-.2-.4-.2-.4-.2-.4-.2-.4v-.4l-.3-.3-.2-.4v-.3l-.3-.3v-.4l-.3-.4 1.2-.4v.7l.3.3v.3l.3.4v.3l.3.4v.3l.3.4.2.3.2.3.2.4v.3l.3.3.2.4.3.3.2.3.3.4.2.3.3.3.3.3.4.4.2.3.3.3.2.3.3.3.4.2.2.3.3.3.4.4.2.3.4.3zm-.8 1l.8-1v.2h.2v.7h-.4v.2h-.7zm-9.5-4.6c.8 0 1.3.7 1.2 1.5s-.8 1.3-1.5 1.2c-.8-.2-1.3-.8-1.2-1.6s.8-1.3 1.5-1.2zm-45.9 38.4h.2v-.2h.4v.2h.2v.2l.2.2v.4h-.2l-.8-.8zm-22.7 56l.2-1V416l.4-1.5.3-1.5.4-1.7.6-1.8.5-2 .7-2 .6-2 .6-2 .6-2.2.8-2.2.7-2.2 1-2 .7-2.3 1-2.3.7-2.2 1-2.2.8-2 1-2.2.8-2 1-2 .8-2 1-1.7.8-1.5 1-1.6.7-1.5 1-1.3.7-1.2.8-1 .8-.8.8-.6.7 1-.6.5-.7.8-.7 1-.8 1-1 1.3-.7 1.5-1 1.5-.7 1.7-1 1.7-.8 2-1 1.8-.8 2-1 2-.8 2.3-1 2-.7 2.3-1 2.3-.7 2.3-.8 2.2-.7 2.2-.8 2.2-.6 2-.6 2-.6 2.2-.6 2-.5 1.8-.4 1.8-.4 1.6-.5 1.6-.2 1.4-.2 1.3v1H336zm5.6 80.5l-.7-2-.7-2-.7-2.2-.6-2.2-.6-2.2-.4-2.4-.4-2.3-.5-2.4-.4-2.5-.3-2.4-.3-2.5-.3-2.7-.2-2.6-.3-2.6-.2-2.5-.2-2.6v-3l-.2-2.7v-18.5l.3-2.7v-2.5l.2-2.6v-2.7l.3-2.6.2-2.5.2-2.5h1.2l-.3 2.6-.2 2.5-.2 2.6-.2 2.6v2.6l-.2 2.6v2.6l-.2 2.7v18.8l.2 2.6v2.6l.3 2.6.3 2.6.3 2.6.3 2.5.2 2.5.3 2.5.4 2.4.3 2.5.5 2.3.5 2.3.5 2.3.6 2.2.6 2 .7 2.2.7 2-1 .4zm1-.4v.8h-.8v-.2l1-.6z"/>
+      </g>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#e"/>
+      <path fill="#21231e" d="M473 398.4h-.2v.5h-.2v.8l.2.7v1.6l.2.8.2.8v.7l.3.8v.8l.3.7.2.8.3.7.2.7.2.7.3.7.3.8.3.7.3.7.2.7.3.6.4.6.2.7.4.5.4.7.4.7.4.5.5.6.4.8.5.6.4.6.5.6.6.6.2.2h.8v-.2l.6-.6.5-.6.5-.6.4-.6.5-.7.5-.5.4-.6.3-.8.4-.6.3-.7.4-.8.4-.6.3-.7.4-.8.3-.7.3-.7.3-.7.3-.6.2-.7.3-.7.3-.7.2-.8v-.7l.3-.7.2-.7v-.7l.3-.8v-1.4l.2-.8v-2.1h-1v.4l-.2 1v1.4l-.2.7v.7l-.2.7-.2.7v.8l-.3.7-.2.7-.2.7v.6l-.3.7-.3.7-.2.7-.3.7-.4.6-.2.7-.4.7-.3.6-.3.7-.4.6-.4.7-.3.6-.4.6-.5.6-.4.6-.4.7-.4.7-.4.6-.5.6h-.2l-.5-.7-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.3-.7-.4-.6-.4-.7-.3-.6-.3-.7-.4-.7-.2-.6-.3-.7-.2-.7-.2-.7-.2-.7-.2-.7-.2-.8-.2-.7-.2-.7v-.7l-.3-.6v-.8l-.2-.7v-2.3l-.2-.8v-.4h-.2v-.2h-.5z"/>
+    </g>
+    <g transform="translate(-32 32) scale(.53333)">
+      <path fill="#c6363c" d="M549.2 422v108.6a72 72 0 01-19.7 49.8 65 65 0 01-94.7.1 72.9 72.9 0 01-19.7-49.8V422h134.2z"/>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 -90)" xlink:href="#f"/>
+      <path fill="#fff" stroke="#21231e" d="M549.2 488.6v28h-53v83a63.8 63.8 0 01-14 1.5 59 59 0 01-14-1.5v-83h-53v-28h53V422h28v66.6h53z"/>
+      <use width="1350" height="900" transform="translate(0 -90)" xlink:href="#f"/>
+      <path id="f" fill="#fff" stroke="#21231e" d="M459 567.3V528c-8.4-2.3-29.3-10.6-30.3 7.6-.5 8.4 10.4 14 13.3 6.5 1.4-3.4 0-6-2-6.7-2.4-.8-4.6 1-4 3.6-8.8-4.7 8-14.6 15.5-1.7 2.2 3.7-3.7 7.6-3.7 10.4 0 2.7 5.8 7 3.7 10.3-7.7 12.8-24.3 3-15.5-1.6-.6 2.7 1.6 4.5 4 3.6 2-.8 3.4-3.3 2-6.8-3-7.5-13.8-2-13.3 6.5 1 18.2 22 10 30.4 7.6z"/>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#f"/>
+      <path fill="#21231e" d="M414 421v113.3l.2 1.7v2l.4 1.7.2 1.8.3 1.7.4 1.8.3 1.8.4 1.7.6 1.7.5 1.7.6 1.5.6 1.7.5 1.6.7 1.6.7 1.6.7 1.6.8 1.6.8 1.5.8 1.5 1 1.5.8 1.5 1 1.4.8 1.4 1 1.4 1 1.4 1 1.3 1 1.5 1.2 1.2 1 1.3 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1 1.3 1.3 1 1 1.4 1 1.3 1 1.4 1 1.5 1 1.4 1 1.3.8 1.4.8 1.5.8 1.4.8 1.6.7 1.5.6 1.5.7 1.5.6 1.6.5 1.6.5 1.5.5 1.6.5 1.8.4 1.6.4 1.7.4 1.8.2 1.7.3 1.7.2h1.7l1.6.2h8.9l1.7-.3 1.8-.3 1.7-.3 1.7-.2 1.7-.4 1.5-.4 1.7-.4 1.6-.5 1.6-.5 1.6-.5 1.5-.6 1.6-.7 1.6-.7 1.6-.7 1.5-.8 1.4-.8 1.6-.8 1.4-1 1.5-.7 1.4-1 1.2-1 1.4-1 1.3-1 1.2-1 1.3-1 1.2-1.3 1.2-1 1-1.3 1.3-1.2 1.2-1.2 1-1.3 1.2-1.2 1-1.4 1-1.2 1-1.4 1-1.4 1-1.4 1-1.4.7-1.5 1-1.5.7-1.5.8-1.5.8-1.6.7-1.6.6-1.6.6-1.6.6-1.6.5-1.7.5-1.6.5-1.8.4-1.7.6-1.7.3-1.8.2-1.8.3-1.7.3-1.8v-.9l.3-2 .2-1.7V421H414zm2.3 2.2H548V536l-.3 1.6-.2 1.8-.2 1.7-.3 1.8-.3 1.7-.4 1.7-.3 1.7-.5 1.5-.4 1.7-.4 1.6-.5 1.6-.5 1.6-.6 1.5-.8 1.6-.7 1.6-.7 1.5-.7 1.6-.7 1.4-.8 1.5-.8 1.4-1 1.3-.8 1.4-1 1.3-1 1.3-1 1.3-1 1.3-1 1.2-1.2 1.2-1 1.2-1.2 1-1.2 1.3-1.2 1-1.2 1-1.2 1-1.3 1-1.2 1-1.4 1-1.4 1-1.3.8-1.4 1-1.5.7-1.4.8-1.3.7-1.5.8-1.5.6-1.4.7-1.5.7-1.6.5-1.5.6-1.5.5-1.6.4-1.6.4-1.6.5-1.6.3-1.6.3-1.7.4H489l-1.8.3h-1.7l-1.6.2h-3.6l-1.6-.2H477l-1.6-.3h-1.6l-1.7-.4-1.5-.2-1.6-.3-1.7-.4-1.6-.3-1.6-.4-1.4-.5-1.6-.6-1.5-.5-1.5-.6-1.5-.6-1.4-.6-1.4-.8-1.4-.7-1.4-.8-1.4-.8-1.4-1-1.3-.7-1.4-1-1.3-1-1.2-1-1.3-1-1.2-1-1.2-1-1-1-1.3-1.3-1-1-1.2-1.3-1-1.2-1-1.3-1.2-1.4-1-1.3-1-1.3-1-1.3-.8-1.4-.8-1.4-1-1.5-.7-1.5-.8-1.4-.7-1.5-.8-1.4-.6-1.5-.6-1.5-.6-1.5-.5-1.6-.6-1.6-.5-1.6-.5-1.7-.4-1.6-.4-1.8-.4-1.7-.3-1.7-.3-1.7-.2-1.6-.2-1.8-.2-1.7v-5.4z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ru.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ru.svg
new file mode 100644
index 0000000..d643087
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ru.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ru" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#0039a6" d="M0 170.7h512V512H0z"/>
+    <path fill="#d52b1e" d="M0 341.3h512V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rw.svg
new file mode 100644
index 0000000..26e41f6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/rw.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-rw" viewBox="0 0 512 512">
+  <path fill="#20603d" d="M0 0h512v512H0z"/>
+  <path fill="#fad201" d="M0 0h512v384H0z"/>
+  <path fill="#00a1de" d="M0 0h512v256H0z"/>
+  <g transform="translate(374.4 133.8) scale(.7111)">
+    <g id="b">
+      <path id="a" fill="#e5be01" d="M116.1 0L35.7 4.7l76.4 25.4-78.8-16.3L100.6 58l-72-36.2L82 82.1 21.9 28.6l36.2 72-44.3-67.3L30 112 4.7 35.7 0 116.1-1-1z"/>
+      <use width="100%" height="100%" transform="scale(1 -1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#b"/>
+    <circle r="34.3" fill="#e5be01" stroke="#00a1de" stroke-width="3.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sa.svg
new file mode 100644
index 0000000..1cc41b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sa.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sa" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M124 0h496v496H124z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
+    <path fill="#199d00" d="M0 0h744v496H0z"/>
+    <path fill="#fff" d="M187.5 140.6c-.8 11.6-1.9 32 8 34.1 11.9 1.1 5.3-20.2 9.6-24 .9-2 2.4-2 2.5.5v18c-.1 6 3.7 7.6 6.7 8.9 3.2-.3 5.2-.2 6.5 2.8l1.4 31.3s7.3 2 7.6-17.6c.4-11.5-2.3-21.2-.7-23.4 0-2.2 2.8-2.3 4.8-1.3 3.1 2.2 4.5 5 9.3 3.8 7.4-2 11.8-5.6 12-11.2a51 51 0 00-3.4-16.1c.3-1-1.5-3.5-1.1-4.5 1.3 2 3.3 1.9 3.8 0-1.3-4.2-3.2-8.1-6.4-9.8-2.6-2.3-6.4-1.8-7.8 3a26 26 0 006 17.3 17 17 0 011.5 8.7c-2.1 1.3-4.2.7-6-1.1 0 0-5.9-4.5-5.9-5.4 1.6-10 .4-11.1-.5-13.9-.6-3.8-2.4-5-3.9-7.6-1.5-1.6-3.4-1.6-4.4 0-2.6 4.5-1.4 14.1.5 18.4 1.4 4 3.4 6.5 2.4 6.5-.8 2.2-2.4 1.7-3.6-.9a61.2 61.2 0 01-2.1-16.9c-.5-4.5-1-14-4-16.4-1.8-2.4-4.5-1.2-5.4 1a80 80 0 00.3 13c2 7 2.6 13.4 3.6 20.7.3 9.8-5.7 4.3-5.4-.6 1.4-6.3 1-16.3-.2-18.8-1-2.5-2.1-3.1-4.4-2.7-2-.2-6.7 5-8 13.8 0 0-1.2 4.5-1.7 8.4-.7 4.5-3.6 7.7-5.7-.6-1.8-6-2.9-20.9-5.9-17.4z"/>
+    <path fill="#fff" d="M219.9 188.2l-31 14.9c.3-7 14.7-19.8 24.5-20 6.4.2 4.8 2.5 6.5 5z"/>
+    <path fill="#fff" d="M214.5 197.9c-16.4 42.1 38.2 48 44.3 1.7.6-1.9 3-3.8 3.3-.7-1.3 42-42.2 44.8-49.2 31.6-1.7-3-2.2-10-2.4-14.2-1-8.2-5.4-5-6 3.2-.7 4.5-.6 5.8-.6 10.2 2.2 33 55 18.8 63.6-8.5 4.5-15.1-.8-26.3 1.7-26.3 5.2 5.7 12.6.8 14.2-1.2.7-1 2.4-1.6 3.6-.3 4 3 11.3 1.5 12.8-3.6.8-5.1 1.5-10.3 1.7-15.7-3.3 1-5.8 1.7-6 3l-.7 4.6c-.3 1.4-3.2 1.5-3.3-.4-1.3-5.7-6.5-6.5-9.7 2.4-2.1 1.8-6 2-6.4-.5.5-6-1.9-6.8-6.7-4l-4.7-35c2 0 3.9 1.4 5.7-.9-2-6.3-6.3-19-8.6-20-1.2-1.4-2.1-.5-3.6-.2-2.6.8-5 3-4.2 7.3l8 50.2c.4 2.1-1.4 5-3.7 4.7-3.9-2.7-4.9-8-11.5-7.8-4.9 0-10.4 5.3-11 10.4-.9 4-1.2 8.4 0 11.9 3.3 4 7.4 3.7 11 2.7 2.9-1.2 5.3-4.1 6.4-3.4.7.9.1 10.5-13.9 18-8.4 3.8-15.2 4.6-18.8-2.3-2.2-4.3.2-20.7-5.3-17z"/>
+    <path fill="#fff" d="M283.8 155c3.3-1.1 18.8-19 18.8-19l-2.3-1.8c-.9-.8-.8-1.5 0-2.3 3.8-2.2 2.6-7.2.6-9.4a9.4 9.4 0 00-8.4 0c-2.7 2.7-3.3 6.8-1.2 9.4 2 1 4.2 3 2.8 4.2-6.4 6.8-23.8 18.5-21.8 19 .4.5 11.2.5 11.5 0zm-93.9 63c-5.8 9.3-6.3 23.2-3 27.3 1.6 2 4.4 2.8 6.5 2.2 3.7-1.6 5.3-9 4.4-11.7-1.2-2-2.2-2.2-3.4-.6-2.6 5.2-3.7 1.6-3.9-1.3-.4-5.5.1-10.7.7-14.7.7-4.1 0-2.9-1.3-1.2zM439 203c-5.6-12.1-13.4-24.1-15.9-28.7a541 541 0 00-24-34.9c-6-7.2 9.9 3-2-11.3-4.5-4-4.8-4.1-8.6-7.3-1.9-1.4-6.5-3.8-7.3.2a23.5 23.5 0 00.4 8.6c.4 2 3.3 5.3 4.8 7.3 19 25.5 35.9 51.4 52.1 83.8 2.6-1.2 2-15.6.5-17.7z"/>
+    <path fill="#fff" d="M414.3 243.7c-1.1 1.3 2.7 6.6 7.7 6.6 8.4-1 15.7-5.7 22.5-18 1.8-3 5-9 5.1-13.9.7-28-1.4-49.8-5.6-70-.2-2 0-4.4.3-5 .5-.6 2.3 0 3.3-1.5 1.4-1.5-3.8-13.6-6.7-18.2-1.1-2.1-1.5-3.5-3.2.2-1.9 3-3 8.3-3 13.2 4 27.6 5.3 51.8 7.9 79.3.2 2.7-.2 6.6-2 8.1a77.8 77.8 0 01-26.3 19.2zm112.8-.1c-6 3.4-6 7.4-1.1 7.6 8.3-1 18.2-1.7 25-12 1.8-2.9 4-10.7 4.1-15.4.6-28-.4-49-4.6-69.2-.2-2-1.1-6.5-.8-7.1.6-1.4 3.3.1 4.3-1.5 1.4-1.4-7-12.3-10-17-1.1-2-1.5-3.4-3.2.3-1.9 3-2.5 8.4-1.8 13.1 4.5 30 7.8 52.5 8.4 79-.3 2.6-.4 4-1.6 7.1-2.6 3.4-5.5 7.6-8.3 9.6-2.7 2-8.5 4-10.4 5.5z"/>
+    <path fill="#fff" d="M531.6 216.7v-18.3a33 33 0 00-3-13.2c-1.8-4-.7-7.1-1.5-11.4-.8-4.2-.6-10.6-1.8-15.6-.4-2-1.4-8.2-1-8.8.4-1.4 2.3 0 3.2-1.6 1.4-1.5-4.8-17.5-7.9-22-1.1-2-3.1-1.4-5.7 2-2.3 2.1-1.4 7.1-.5 11.8 6 31.3 10.4 59.7 9.5 89.4-.3 2.6 8.8-7.5 8.7-12.3zm-44.3-38.8c-3.7 0-11.6-7.4-14-11.6a7.8 7.8 0 01.5-6.2c1.4-1 3.6-2 5.2-1 0 0 1.6 2.4 1.3 2.7 2 1 3 .4 3.2-.5.1-1.4-.7-2.3-.7-4 1-4.3 6-5 7.8-2.2 1.4 1.7 1.9 5.3 2.1 7.8 0 1.2-2-.3-3.2 0-1.1.4-1.4 1.7-1.5 2.9-.2 3.2-.6 8.3-.7 12zm-69.6 46.6c1-9.6-.3-26.5-.4-32.1-.4-13.3-2.6-39-3.6-43.2-1.2-8.1 3.3.9 2.7-3.8-1.5-8-6-13.6-11.2-21-1.7-2.3-1.6-2.8-4.3.6-2.8 6.6-.3 11.1.4 16.2 3.8 16.7 6 32 7 47.2a381.2 381.2 0 01.4 47.5c2.9.2 7.5-4.6 9-11.4z"/>
+    <path fill="#fff" d="M544.5 209.2c-6.7-11.1-16.7-23.2-19.4-27.7a639.2 639.2 0 00-28.2-36.7c-8.3-8.7 3.8-1.4-1.6-8.1-4.6-5-6-6.6-9.8-9.6-2-1.3-3.2-3.7-3.8.4-.3 3.6-.5 7.8-.3 10.9 0 1.7 1.8 4.8 3.3 6.7 20 24.7 42 50 59.7 81.7 2.5-1.4 1.7-15.6 0-17.6z"/>
+    <path fill="#1ba400" d="M242.8 188.6c-.5.9-1.6 2-1.2 3 .8 1 1.4 1.3 2.6 1.4 1 0 2.6.2 2.9-.4a3.2 3.2 0 00.5-3.2c-1-2.8-4.2-1.8-4.8-.8z"/>
+    <path fill="#fff" d="M467.2 351.3c8.9.3 14.7.4 22.6 1.3l9.2-1c10.3-1 10.8 14.7 10.8 14.7-.1 9.2-3.7 9.6-8.2 10.6-2.6.4-4-1.5-5.3-3.5-1.7.7-4 .8-6.9.4-3.7-.2-7.4-.2-11-.5-4-.3-6.1.5-10 .1-.9 1.3-2 3-4.3 2.5-2-.2-4.4-5.9-3.7-10.1 1.4-3.1 1-2.1.9-3.5-36.4-.9-73-2.5-108.7-2-28 0-55.5 1.2-83 2.4-14.7-.2-26-2.6-33.7-14 .7 0 37.5 2.2 48.2 1.5 20-.3 38.1-1.9 58.4-2.5 40 .7 79.5.7 119.5 3.5-3.8-2.6-4-8.8 2-10.3.4-.3.7 3 1.6 3 4.6-.3 2.6 6 1.6 7.4zM306.8 131c-6 17.3 3.4 36.2 10 34.4 4.8 2 7.8-7.1 9.8-17 1.3-2.8 2.3-3.1 3-1.7-.2 13.2 1 16.1 4.4 20.1a11 11 0 0014.3.3l5.9-6c1.3-1.3 3-1.4 4.9-.2 1.8 1.7 1.5 4.5 5.4 6.5 3.2 1.3 10.2.3 11.8-2.5 2.1-3.7 2.7-5 3.7-6.4 1.5-2 4.1-1.2 4.1-.5-.2 1.1-1.7 2.3-.7 4.3 1.8 1.4 2.3.5 3.4.2 3.8-1.8 6.7-10.2 6.7-10.2.1-3-1.6-2.8-2.7-2.2l-3 2.1c-2 .3-5.6 1.5-7.4-1.3-1.8-3.3-1.9-8-3.3-11.4 0-.2-2.4-5.3-.1-5.6 1.1.2 3.6.8 4-1.2 1.2-2-2.6-7.7-5.2-10.6-2.2-2.4-5.4-2.7-8.4-.2-2 2-1.8 4-2.2 6.1a9.6 9.6 0 002 8.4c2.1 4.1 6 9.4 4.7 17 0 0-2.3 3.5-6.2 3-1.6-.4-4.2-1-5.6-11.4-1-7.9.2-18.9-3.1-24-1.2-3.2-2-6.2-5-.8-.8 2-4.2 5.2-1.8 11.8a35 35 0 012 18.3c-1.4 2.1-1.7 2.9-3.6 5-2.5 2.7-5.3 2-7.4 1-2-1.3-3.6-2-4.5-6.3.2-6.8.5-17.9-.7-20.3-1.8-3.6-4.8-2.3-6.1-1.2a46.3 46.3 0 00-11.2 22.9c-1.7 5.5-3.5 4-4.8 1.7-3.1-3-3.3-25.9-7.1-22.1z"/>
+    <path fill="#fff" d="M325 168.7c2.8-2 1.5-3.3 5.6.8a69.8 69.8 0 019 30.3c-.3 2.5 1.5 4 2.3 3.5.4-5.8 14.7-14 27.7-15.2 2-.4 1-4.2 1.3-6.2-.8-7.2 4-13.8 10.9-14.3 9.2 1.4 12.3 6.3 12.5 13.8-1 14.5-16.1 17-24.6 18-1.3.6-1.8 1.2 0 1.9l35.5.1 1.8 1c.2 1-.5.2-2 2.5s-3.4 7.7-3.5 11.2a173 173 0 01-32.6 6.2c-3.8 2-5.7 4.6-5 7.5 1.3 3.3 9.9 6.5 9.9 6.7 1.6 1 3.5 3.4-.5 8.2-17.3-.7-30.7-8.1-35.3-18.5-1.4-1-3 0-3.9 1.4a54.7 54.7 0 01-24.9 20.7c-6.9 1.7-13.9-1-17.2-5.5-2.2-2.6-2.1-5.4-3-6-3.7 1.6-35.6 15.2-31.5 8.9 7.7-8.4 21.2-14.5 33-22.7 1-2.7 2.5-12 7.2-15 .2 0-.8 5.4-.7 7.7 0 1.9-.1 2.6.3 2.1.8-.5 15.2-11.8 16.3-15.3 1.4-2 .4-7 .4-7.2-2.6-7-6.4-7.5-7.8-11-1.3-4.6-.7-9.8 1.9-11.3 2.3-2.1 5-1.9 7.6.4 3 2.6 5.5 7.7 6.3 11.5-.5 1.5-3.8-1-5-.2 2 2 3 4.5 3.7 7.5 2 8 1.3 11-.5 16.2-6.4 13.4-14.6 17.5-21.8 22.4-.2.1-.3 3.5 2.4 5.3 1 1 4.7 1.4 9 0a52.8 52.8 0 0021.7-22.6c1.3-7.2-.5-14.8-2.4-21.4a252.7 252.7 0 01-6-16c-.2-4 .1-5.4 2-7.4zm-92.8-37.4c4 1.9 11.7 1 11.4-5.5l-.2-3.1c-.8-2-3.1-1.5-3.6.6-.2.6.3 1.7-.3 2-.4.3-1.7.1-1.6-1.7 0-.6-.4-1.2-.7-1.6-.3-.1-.4-.2-.9-.2-.6 0-.5.2-.9.7l-.3 1.5c0 .7-.3.9-.8 1-.5 0-.4 0-.8-.2-.3-.3-.6-.4-.6-.9l-.2-1.6a2 2 0 00-1-.6c-2.3 0-2.4 2.6-2.3 3.6-.2.1-.3 4.7 2.8 6z"/>
+    <path fill="#fff" d="M351.8 181.9c4 2 13.8.8 11.4-5.5l-.2-3c-.8-2-3-1.5-3.6.5-.1.6.3 1.7-.3 2-.3.4-1.6.2-1.6-1.6 0-.6-.4-1.2-.7-1.6-.2-.2-.4-.2-.9-.2s-.5.1-.8.6l-.3 1.5c-.1.7-.4 1-.8 1-.6 0-.4 0-.9-.2-.2-.3-.6-.4-.6-.9s0-1.3-.2-1.6c-.2-.3-.6-.4-1-.5-2.2 0-2.4 2.5-2.3 3.5-.1.2-.2 4.7 2.8 6zm69.8-21c4 2 11.7 1.1 11.4-5.4l-.2-3.1c-.8-2-3.1-1.5-3.6.5-.2.7.3 1.7-.3 2-.4.4-1.7.2-1.6-1.6 0-.6-.5-1.2-.7-1.6-.3-.1-.4-.2-1-.2-.5 0-.5.2-.8.7l-.3 1.5c0 .6-.3.9-.8 1-.5 0-.4 0-.8-.3-.3-.2-.6-.4-.6-.8 0-.5-.1-1.3-.3-1.7-.2-.3-.5-.4-1-.5-2.2 0-2.3 2.6-2.2 3.5-.2.2-.3 4.8 2.8 6zm36 52.7c-7 8-3.9 21.2-2.3 24 2.4 4.8 4.2 7.8 8.8 10.1 4.2 3 7.4 1.1 9.2-1 4.2-4.3 4.2-15.4 6.2-17.6 1.4-4 4.8-3.3 6.5-1.5a16 16 0 006 5.1c3.9 3.4 8.5 4 13.1 1 3.1-1.8 5.2-4.1 7-8.6 2-5.5 1-30.7.5-45.6-.1-1.2-4-20.6-4-20.8 0-.2-.6-9.9-1-12.2 0-.9-.3-1.2.7-1 1 .8 1.2.9 1.8 1.2 1 .2 2-1.6 1.4-3.3l-9.8-18c-.7-.7-1.7-1.5-3 .3a7 7 0 00-2.4 5.3c.3 4.3 1 8.6 1.3 12.9l4 21.8c1.2 15.6 1.5 28.3 2.7 44-.2 6.5-2.2 12.3-4.2 13 0 0-2.9 1.8-4.8 0-1.5-.7-7.2-9.6-7.2-9.6-3-2.7-4.8-2-7 0-5.6 5.5-8.2 15.9-12.1 23-1 1.6-3.9 3-7-.1-8-11-3.3-26.4-4.3-22.4zm-34.2-90.9c3.7 1.5 6.2 9 5.4 12.6-.7 4.4-2.7 9.3-4 8.6-1.6-.5 1-4.4-.5-8.5-.8-2.6-5.8-7.5-5.3-8.9-1-3 2.2-4.3 4.4-3.8z"/>
+    <path fill="#fff" d="M469.5 218c.7-9-.6-14.4-.8-19.6-.2-5.2-6-45-7-49-1.5-7.5 5.5-1 4.7-5.4-2.4-5.5-8.3-13.5-10.2-18.2-1.1-2-.7-3.9-3.2-.6a41 41 0 00-2.2 18.6c6 31.3 12.1 57.3 11.1 87.1 2.9 0 6.2-6.5 7.6-13zm62.4-82.7c3.4 1.7 5.3 11 5 13.6-.7 4.9-2.5 10-3.8 9.4-1.3-.6.3-7.2-.4-9.2-.7-2.9-5.2-8.1-4.8-9.7-.9-3.2 2-4.6 4-4zm-247.7 65.8c3.2 1.3 5 8 4.7 10-.6 3.6-2.3 7.4-3.5 7-1.3-.5.2-5.3-.4-6.8-.3-3.7-4.7-5.6-4.6-7.1-.8-3 1.9-3.5 3.8-3z"/>
+    <path fill="#1b9d00" d="M361.3 211.4c4 .2 6.1 3.5 2.3 4.8-3.8 1.3-7.5 2.3-7.5 7.8 1.4 7.7-2 5-4 4-2.3-1.7-8.9-5.7-9.8-14.5-.1-2 1.5-3.8 4.1-3.8 4 1 9.8 1.2 14.8 1.7z"/>
+    <path fill="#fff" d="M199 120.5c4.7 1.4 5 8.3 4.6 10.4-.6 3.7-2.3 7.6-3.5 7.1-1.3-.4 0-5.4-.6-7-.7-2.2-4.7-6.2-4.2-7.4-1-2.4 1.8-3.5 3.7-3zm92.9 32.6c-3.6 2-5 7.8-2.8 11.2 2.1 3 5.4 1.9 5.9 1.9 3.5.4 5.6-6.7 5.6-6.7s.1-2-4 1.8c-1.8.3-2-.3-2.5-1.3a8.7 8.7 0 01.6-5.6c.6-1.7-.8-2.5-2.8-1.3zm27-35.3c-1.7 1.3-5.4 5-5.5 9.3 0 2.4-.5 2.4 1 4 1.2 1.6 2.4 1.5 4.7.3a5 5 0 002.2-3.3c.6-2.8-2.9 1.3-3.3-1.8-.8-2.8 1.4-4 3.5-6.8 0-1.9 0-3.2-2.5-1.7zm21.9 4a56.9 56.9 0 00-1.6 10.7c-.6 2.7 2.8 3.8 4.4.3 2.3-6.3 2.3-9 2.5-11.7-.7-4-3.5-4-5.3.6zm137.5 69.9c.4-.5 19.4-14 19.4-14 1.9-.6 1.5 7 .6 7a75.3 75.3 0 01-20 13.9c-1 .6-1.9-5.2 0-7zm17.2-.1c3.3 1.6 4.7 11.4 4.3 14 .1 5.2-3.2 9.3-4.5 8.6-1.4-.6.1-6.4-.5-8.4-.7-2.9-3.6-8.3-3.1-9.8-1-3.3 1.8-5 3.8-4.4zm-112.4 42c1.3-2 5.3-4.7 5.4-4.7 1.9-1 3.7.7 3.6.6.3 1.9-1.2 3.6-.7 6.1.4 1 .7 2.1 2.6 1.7 3-2.3 5.8-2.5 8.8-2.7 2.3.2 2.3 4 .9 4.1-5.6 1.2-8 2.7-12 4.2-1.9 1.1-3.5-.3-3.5-.4s-1-1.1-.3-3.6c.1-2-.7-3-2.3-2.8-1.3.6-2.4 1-3-.4-.3-1-.3-1.5.5-2.1zm132.3 5.2c.8 1 1.4 2 0 3.7l-3.6 3c-.7 1.2-1 2.8.9 3.3 3.5 1 11.7-4.3 11.7-4.4 1.3-1 .9-2.9.7-2.9-.7-.9-2.5-.4-3.6-.5-.6 0-2.4-.3-1.6-1.9.8-1 1-1.6 1.5-2.9.6-1.2.1-2-1.9-2.7-2-.3-2.8-.1-5 0-1.3.3-1.7.8-2 2.3.2 2.2 1.5 2.1 3 3z"/>
+    <path fill="#259f00" d="M383.8 183.8c-.5 1-2.3.9-4 0s-2.5-2.5-2-3.4 2.3-.9 4 0 2.5 2.5 2 3.4zM297.5 132c-1 .3-2.3-.6-2.9-2s-.3-2.5.7-2.8 2.3.7 2.9 2 .3 2.6-.7 2.8z"/>
+    <path fill="#209000" d="M468.2 363.3c9 .4 17.6.1 26.6.6 1.7 1.3.5 4.8-.6 4.5l-7.6-.2c0-2.9-7.5-2.4-7.2.1-4 .5-7.6-.1-11.6-.3-1.2-1.5-1-4.1.4-4.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sb.svg
new file mode 100644
index 0000000..f61bafd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sb.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sb" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#0000d6" d="M0 491.4L956.7 0H0v491.4z"/>
+    <path fill="#006000" d="M992.1 0L26.3 496h965.8V0z"/>
+    <path fill="#fc0" d="M992.2 0H939L0 470.3V496h53.1l939-469.4V0z"/>
+    <path fill="#fff" d="M39 96.1l11.6-33.3-30.2-20.6h37.3L69.2 8.8l11.5 33.4h37.2L87.8 62.8 99.3 96 69.2 75.5zm185.2 0l11.6-33.3-30.2-20.6h37.3l11.5-33.4 11.5 33.4H303l-30 20.6L284.5 96l-30.1-20.6zm0 140l11.6-33.3-30.2-20.6h37.3l11.5-33.4 11.5 33.4H303l-30 20.6 11.6 33.3-30.1-20.6zm-92-69.2l11.5-33.3-30.1-20.6h37.2l11.5-33.3 11.5 33.3h37.3l-30.2 20.6 11.5 33.3-30-20.6zM39 236.1l11.6-33.3-30.2-20.6h37.3l11.5-33.4 11.5 33.4h37.2l-30.1 20.6L99.3 236l-30.1-20.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sc.svg
new file mode 100644
index 0000000..65d8943
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sc.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sc" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="scale(1 1.0321)">
+    <path fill="red" d="M0 0h992.1v496H0z"/>
+    <path fill="#090" d="M0 496l992.1-165.3v165.4H0z"/>
+    <path fill="#fff" d="M0 496l992.1-330.6v165.3L0 496.1z"/>
+    <path fill="#009" d="M0 496V0h330.7L0 496z"/>
+    <path fill="#ff0" d="M0 496L330.7 0h330.7L0 496z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sd.svg
new file mode 100644
index 0000000..72a7297
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sd.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sd" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="scale(1.0321)">
+    <path d="M0 330.7h992.1v165.4H0z"/>
+    <path fill="#fff" d="M0 165.3h992.1v165.4H0z"/>
+    <path fill="red" d="M0 0h992.9v165.4H0z"/>
+    <path fill="#009a00" d="M0 0v496l330.7-248L0 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/se.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/se.svg
new file mode 100644
index 0000000..e824395
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/se.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-se" viewBox="0 0 512 512">
+  <path fill="#066aa7" d="M0 0h512v512H0z"/>
+  <path fill="#fecc00" d="M0 204.8h512v102.4H0z"/>
+  <path fill="#fecc00" d="M134 0h102.4v512H134z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sg.svg
new file mode 100644
index 0000000..1444e5b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sg.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sg" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M27.7 0h708.6v708.7H27.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-20) scale(.72249)">
+    <path fill="#fff" d="M0 0h1063v708.7H0z"/>
+    <path fill="#df0000" d="M0 0h1063v354.3H0z"/>
+    <path fill="#fff" d="M245.2 59.4a124.6 124.6 0 001.1 243.9 126.9 126.9 0 11-1.1-243.9z"/>
+    <path fill="#fff" d="M202 162.4l-18.9-13.8 23.5-.2 7.2-22.3 7.5 22.3h23.4l-18.8 14 7.2 22.3L214 171l-19 13.8zm26 76.9l-19-13.8 23.5-.2 7.3-22.3 7.4 22.2h23.5l-19 14 7.3 22.3-19-13.6-19 13.8zm86.3-.6l-19-13.8 23.4-.2 7.3-22.3 7.4 22.3H357l-18.9 14 7.3 22.3-19.1-13.7-19 13.8zm25.7-76.2l-19-13.8 23.5-.2 7.2-22.3 7.5 22.2h23.4l-18.8 14 7.2 22.3-19.1-13.6-19 13.8zM271.7 112l-19-13.8 23.5-.2 7.3-22.3 7.4 22.3h23.5l-19 14 7.3 22.2-19-13.6-19 13.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sh.svg
new file mode 100644
index 0000000..599a09d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sh.svg
@@ -0,0 +1,81 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sh" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#006" d="M1024 512V0H0v512h1024z"/>
+    <path fill="#fff" d="M0 85.3h108L0 31V0h61.8l151 75.3V0h85v75.3L449 0h62.4v31L402.7 85.4h108.6v85.3H402.7l108.6 54.2V256h-62.4l-151-75.3V256h-85v-75.3L61.7 256H0v-31l108-54.3H0V85.3z"/>
+    <path fill="#ce1126" d="M471 0L300.5 85.3h40.9L511.3 0H471zm40.3 256L341 170.5h41l129.2 65v20.3zM171 85.2L0-.1v20.4l129.8 65H171zm-.4 85.3L0 255.9h40.8l170.7-85.3h-40.9z"/>
+    <path fill="#ce1126" d="M0 103h231V0h50v103h230.3v50H280.9v103h-50V153H0v-50z"/>
+    <path fill="#8fc5ff" stroke="#fff" d="M399.7 640.8c0 16.3-2.6 33.9-23.8 42.3-21.1-8.4-23.7-26-23.8-42.3h47.6z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#366cc9" stroke="#000" d="M375.9 683a34.3 34.3 0 0018.8-16h-2c-.6-.1-20.3-2-22.7-3-2-.7-9.8.7-13.4 2a34 34 0 0019.3 17z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#5d3100" stroke="#000" stroke-width=".1" d="M361.1 673h1.2c.3 0 .3 0 .4-.3s.4-.2.6-.1.6 0 .8-.2c.2-.2.2-.2.4 0s.3.1.5 0c.1 0 .5-.2.6-.5s.4-.4.5-.2.3.2.5.2.2.1.2.4c0 .2 0 .3.5-.1.4.4.5.2.5-.2s0-2-.2-2.1-.3-.8-.4-1.3c0-1 0-1-1-1.5 0-.3-.2-.4-1-.4.1-.1 0-.4-.2-.5s-.2-.2 0-.6c.2 0 .6 0 .7-.3.2-.2.8-.2 1.2 0s.8.2 1.5 0l1.2-.6c.5-.3.6-.4.6-.8 0-1-.3-2-.5-2.5-.3-.5-.3-1-.7-1.9-.4-.8-.4-1-.8-1.5-.2-.2-.3-.3-.3-.6a1.5 1.5 0 00-.5-1c-.8-.7-1-3-1.4-4.7-.2-1 0-3.3-.4-3.7-.7-.5-1-.4-1.5-.6-.4-.5-.5-1.4-.9-2.3-.5.1-.8.6-1.1.8s-.4.2-.4.7c0 .4-.3 1-.7 1.8s-1.3.5-2 1.6c-1.4-1.7-1.4-2.2-1.5-2.7 0-.5-.3-.6-1.1-1.3v-1.5c-.7-.5-1.1-.4-1.4 0-.3.3-.5.8-1 1-.2.4-1 1.2-1.6 2.3.6 9 2.6 18 8.7 25.2z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#ff0" stroke="#fff" d="M399.7 640.8c0-6.2-.3-12.2-.2-17.4a63.6 63.6 0 00-23.6-4.3c-5.3 0-15.7.8-23.6 4.3.2 5.2-.2 11.2-.2 17.4h47.6z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#cf6200" d="M264.3 312.1c1.2 2 3.6 5.6 3.8 7.5 1-1.8 1.6-2.7 1.8-3.8s1.6-3.4 1-4.6-.8-2.2.6-1.3c1.4.9 1.1 2.4.8 4.7-.8 6.3-3.5 7.6-3.9 11.9 3.8 8.9 1 12.1 5.1 20.8.7.4 2.4-.3 2.9-.1 2.2-1.6 3.8-1 6.9-.4 3 .7 4.7 2.8 4.7 4.8s0 2.4.7 3.6 2 3 1.6 4.2c-.2 1.3.3 2 .7 2.7s-.1 2-.5 3-.3 2 1.3 4c1.5 1.9 5.1 10 5.1 14.7s.3 7 2.2 7.9c2 .9 2.6 1.6 2.3 3.7s.9 12.7 1.2 14.4.9 1.3 1.6 2.2c.8.9 1.3 1.9 3.9 1.9s5-.4 6.7 0c2.3 3.1 3.7 7.5 4.2 10.2s.5 6.4 1.4 6.4 1.8.1 1.5-3.2-.5-3.9-1.6-5.6c-1.2-1.6-1.8-2.4-1.2-3.4s.8-2.7.5-4-.6-3.2 1.6-.7l3.5 4.1c.7 1 .9 2.6.7 4.2-.1 1.5.2 2.1 1 1.4 1-.8 2.1.5 1.6 2.2s.1 2.7 1.7 3.2 2.2.9 2.5 2 1.7 1.7 1.7-.6-.9-7.2-1.5-8.8c-.7-1.5-1.2-4.8-1.3-6.8s-.5-2.4-1.4-2.8-1.7-1-1.8-2-1-1.1-1.5-1.1-1.1-.5-1.4-1.1-.7-.7-1.3-.8-1.7.3-2-.7-.8-2.5-1.4-3.4-1.2-1-1.3-4c0-2.8-.1-3.2-1-4.2s-2.5-3.8-3.1-5c-.6-1-1.3-2.2-1.3.2s0 3.7 1.5 4.6c1.6 1 2 1 1.3 2.2s0 2.2.3 3.1.8 1.8 0 2.7c-.8.9-1.6.6-1.4-.8a8 8 0 00-1-4.2c-.7-1.2-1.2-2-2-1.3s-1.4-.1-.9-.6.4-1 0-1.3-.5-.8.2-1.6.6-1.1.2-3c-.4-1.7-3.2-10.7-4.5-12.8s-1.1-3.6.5-1.5 3.1 3.8 3.2 5.5c.2 1.7.6 2.7 1 3.4s1 .3 1.2-1 1.3-1-.5-3.7-5.1-7.2-6.4-15.3-1.8-13.5-3.1-15.6c-1.3-2.2-1.7-2.7-1.8-4.8s0-4.1-1-5.6-1.4-1.8-1.6.5c-.1 2.3.2 7.4.8 8.3s.3 3.2.1 4.5-2.1 2.6 2 5.2c1.8 1 1.5 2.4 1.2 3.3-.2.9-.5.8-1.4-.6-.9-1.5-1.8-2.6-2.7-3.4s-1-1.3-.9-3 .5-3.1 0-3.8c-.5-.6-.7-.1-1 1-.3 1-.5 3.8-1 4.5s-.8.3-1.2-1.4.1-4.2 1-7.2 1.5-6 .7-9.9c-.8-3.8-.4-5-3.4-8.2-3-3.2-6.2-6.3-7.7-10.3-1.4-4-1.6-7.4-3.2-9.2a21.1 21.1 0 00-5.1-4.8v-5.9c0-1.4-.7-2.3-2.3-2s-2.7 1.6-3.7 3.6c-1 1.9-1.8 1-3.3 4.3s-3.4 5-3.4 8.6z"/>
+    <path fill="#cf6200" d="M273.6 349.8c1 .7 2 1 3.5.3s3.4-3 5.5-.8c2 2.2 3.2 5.8 3.2 8.6s0 8.1 3.2 11c3.2 3 4.9 6 5 10 .1 3.8 1.5 9.7 2 11.3.3 1.5 1.2 3.3 2.2 4.3s1.8 4 2 7c0 3.2-.4 5.4 0 6.9s0 2.8-1.2 2-1.4-1.1-2-2.4-1.5-1-.8 1 2.5 3.6 4.2 3.6 2.2.3 3.2 1.3 1.2 1.6 3 1.6 2 0 3.7.5 1.7.2 2.6 0 1.8.5 2.4 2.2 2.2 6.3 2.2 7.5 0 2.6.9 3.9.6 2.6-.4 1.8-1-.5-1.8-.4-1.3-.2-2.3-.9c-1-.6-.4-.5-1.4-2s-1.7-2.1-1.7-1-.1 2.6-.9 2-1.1-.7-1.8 0-.9 1.1-1.7-.1-1.6-1.3-2.4-1.6-.8-.2-1.1-1.4c-.4-1.2-1.6-1.4-2.6-1.4s-1.6-.5-1.7-1.3c-.1-.8-.8-1.3-1.3-1.7s-.2-1.3-.4-2.2-.9-.5-1.4-.7-.9-.1-.9-1.4-.5-1.7-.9-2.6c-.3-1 0-1.8.3-2.8.2-1 .1-1.7-.6-2.6-.8-.9-.2-1.8-2.2-3.6s-3.1-.3-3.8-4.5c-.6-4.2-1.9-13-3-14.4s-2-2.4-3.1-2.8-2-.1-2-2.6c-.2-2.4-1-5.5-2.5-7l-3-2.7c-.8-.6-1-1.8 0-4s.7-5.2.5-6.6c-.1-1.4-.5-3.2-.2-4.7s.1-3.5-.3-4.5-.9-1.3-.2-2zm31-36.5a27.9 27.9 0 01-6 5.8c-2.5 1.7-5.6 3-3.9 6 1.8 2.9 3.1 3.2 3.5 5.5.3 2.2.8 4 2.5 4.6 1.8.5 2.4.2 2.4 3.8s0 5 1.6 6.3 1.4 2.7 2 6c.7 3.3.7 10.3 2.8 15s6.7 14 6.2 15.8-1.2 3.3.8 5.5 3.4 5.5 3.6 7.4c.2 1.9.5 2.6 2.6 1.9 2-.7 3-1.4 3.7-2.3.7-.8 2-.6 4 .4 1.9 1 4.8 2 6.5 1 1.7-1 2.6-2.6 4.1-2.6 2.4-1.7 3.3-5.3 3.8-6.3s.1-1-.9-2-.5-2.8-.7-4.5c-.1-1.7-.8-4.3-2.9-8-2-3.8-3.2-8.5-4.6-9.7-1.4-1.2-2-4-2.2-5.4-.2-1.4-1.8-2.6-2.8-3.6-1-1-2-2.6-3.2-8.6-1.2-6-2-10.3-2-11.3s-.3-1.2-1.3-1.5-1.5-2.1-1.2-3c.3-.8-.3-1.7-.7-2.7s0-2.9.7-4c.7-1 .5-3.9-.2-6.3s-1.3-4.4-4-4.8c-2.8-.3-3.3-1-4.4-3.2-1-2.3-2-6.2-2.4-7-.3-1-.8-1-2.9.6-2 1.7-2.7 2.3-2.7 5.5 0 2 .3 2.8 1 4 .7 1.2.9 1.5 1.4 4.8s3.4 8.3-.4 11.3-3.2 3.6-3 5.6c.1 2-1 3.4-1.7.5s0-4.6 2-6c2-1.3 4-3 2.6-5-1.4-1.8-1.9-6.3-2-8.3s-.6-2.8-1.8-1.2z"/>
+    <path fill="#00b800" d="M274 357c-.1 1.3.2 2.9.3 4 .1 1.5.5 4.5-.5 6.6-1 2.2-.8 3.4 0 4v.1a3 3 0 001.9-4.1c-.6-1.3-.4-2.7.3-3.9.6-1.2.6-1.9 0-2.7-.6-.9-.6-.9.1-3.3.6-2.1-.9-2.1-2.1-.8zm22 33.2c-.5-1.6-1.9-7.5-2-11.4a14 14 0 00-5-9.9c-2.5-2.2-3-6-3.2-8.8-1.9-1.2-2.7-.7-2.5 1.5.1 2.3 2.5 3.4 2.1 6.7-.3 3.4-.3 2.5 1.3 4.2s2.2 3.1 1.4 3.8c-.9.7-1 1.9.2 2.3 1.2.5 1.3 1.7 1.1 3-.1 1.1 1 1.4 1.7 2.2.6 1 .7 3 0 4.2-.6 1.2-.7 3 .5 2s1.7 0 2.6 1.6c.8 1.4 1.5 1 2.4.5a10.8 10.8 0 01-.7-2zm16.6 29.9c-.8 1.5-1.7 1-2.4.2s-1.7-.8-1.3-2.2.2-1.6-.8-2.4a7.7 7.7 0 00-.3-.2h-1.2c-1.8 0-2-.6-3-1.6a8.6 8.6 0 00-.6-.6v1c0 1.4 0 1.1-1.4 1.5s-1.2-1.4-1.5-2.6a4.3 4.3 0 00-.2-.6c-1.5-.3-3.2-2-3.7-3.7-.7-2 .1-2.2.7-1s1 1.8 2.1 2.5 1.5-.5 1.1-2a6.5 6.5 0 010-1.7c-.4-.5-.7-1-1.2-1.2-2-.9-1.5-1.1-1.3-2.8.1-1.6-.3-1.6-1.6-.8-1.3 1-1.4 0-1.4-2.7 0-2.5-1.7-2.5-2-.7-.4 1.8-1 .6-1.8-2s-1.8-3.2-2-.7c0 2-.6 2.5-2 1.4l.6 4c.7 4.2 1.7 2.7 3.8 4.5s1.4 2.7 2.1 3.6c.8.9 1 1.5.7 2.5-.3 1-.7 2-.3 2.9.4.9 1 1.3 1 2.5s.3 1.2.8 1.5c.3.1.8 0 1 .2l1-1.4c1.6-1.5 4 .1 4.7 2s1.7 2.5 2.8 1 .8-1.3 2 0 1.9 1.2 1.9 1.2 1.3-.5 2.2.3 1.4.6 3-1.8c1.7-2.4-.7-1.7-1.5-.1zm4.6-70.5c.5-3.8.1-7.6 1.7-9 1.5-1.3 3.4-4 3.2 1.8-.1 5.8-.3 5.5-1.5 6.8-1.2 1.4-2.2 1.7-1 4 1.2 2.2 1.3 2.4 1.2 5.8-.2 3.4-.2 4.8 1.2 6.5 1.3 1.7 1.7 1.9 2 3.8.4 1.8 1.5 4.4 3 5.8s3.3 5.3 3.5 8c.2 2.8 2.6 3.5 4.8 5.3 2.2 2-.5 3.3-2.2 2.5-1.7-1-1 0-2 1.1-1 1.2-1.4 1.4-2.3-.6s-3.8-3.5-5.1-4-2.6-2.7-3.8-5c-1-1.9-3-3.3-5-3.4.6 1.4.9 2.6.7 3.1-.5 1.9-1.2 3.3.9 5.5 2 2.2 3.4 5.5 3.6 7.4.1 1.8.5 2.5 2.5 1.8 2.1-.7 3.1-1.3 3.8-2.2.7-.8 2-.7 4 .4 1.8 1 4.7 2 6.4 1 1.8-1 2.6-2.6 4.2-2.6 2.4-1.7 3.2-5.3 3.7-6.3s.2-1-.8-2-.5-2.8-.7-4.5c-.2-1.8-.9-4.3-3-8-2-3.9-3.2-8.5-4.5-9.7-1.4-1.2-2-4-2.3-5.5-.1-1.3-1.7-2.5-2.7-3.6-1-1-2-2.5-3.3-8.5l-1.9-10.2c-1.2 2-2 2.4-2.5 1.1-.5-1.5-1.2-2.4-1.9-1.4s-.9-.8-.9-1.7c0-.8-.1-1-1-1-.8 0-.2-1.4-.5-4-.3-2.5-.9-2.9-1.2.2-.3 3.1-2 5-1.4 5.7.7.7.4 2-.3 4-.7 2.1-.4 3.3.2 4.7s-.4 4-.7 6.2c-.4 2.2 1.3 4.4 1.9.7zm-31.3-30.8c-1.3.1-2.2 1.2-1.4 5.1.4 2.4-1.4 1.9-2 .7-.8-1.2-1.3-3.8-2.7-6-1.3-2.2-.7 1.5-.8 3.6-.2 2 1.2 2 2.4 3.8s.1 2.4-1.2 2.4-.7 2.7-.4 4.6-.3 2.2-1.3.7c-1-1.6-.4-4-.2-6.9.2-2.9.3-2.2-1.6-2.9-1.8-.7-1.5-1-.8-2.7.7-1.7 1.4-2.6.5-3.5-.9-.8-.7-1.3.7-1.5 1.4-.2.8-1.2 2-1.6 1.2-.3 1.8.2 2-2 0-1.9.7-3 2-2.4 1 2.8 2 7.3 2.8 8.6zM303 339c0 3.6 0 5 1.6 6.3s1.3 2.8 2 6c.7 3.3.7 10.3 2.8 15l2.3 5.2a9.6 9.6 0 002.5-3.2c.5-1.2-1-3.6-2.3-5.7-1.2-2 .2-2.7 1.4-5.3 1.2-2.6-.2-2.7-2-3.4-2-.7-2-2.4-3-5.2s-.8-3.9-.1-5.4c.6-1.6.1-2.8-1.2-3.1-1.4-.4-1-1.4-.6-3.1.6-1.7.9-2-1.2-1.6-1.5.4-1.9.7-2.4 1.3.2.5.2 1.2.2 2.2z"/>
+    <path fill="#5d3100" d="M322.9 346.1c-.2 2.1-.2 3.1-.7 3.8-.5.7-.2 1.7.3 2.8s.9 2.4.4 4.2.3 3.5 1.3 4 1.6 0 1.2 2.4a7.4 7.4 0 002.2 6c1.2 1 2.1 2.7 2 3.7-.2 1 .8 2.1 2 2.6s1 .7 1 1.4.5.7 1.9 1 2.4 1.2 4 3.1 3.7 3 3.4.8 0-3.4-2-4.4c-2.1-1-3.7-6-4.5-9.4-.9-3.5-3.6-8-5.2-9-.2-2.3.2-3.5-1.4-4.7a5 5 0 01-2-4c0-1.2-.9-2.7-1.5-3-.7-.4-1-1.3-1-2.3s-1.3-.8-1.4 1z"/>
+    <path fill="#00d860" d="M313.8 438a50 50 0 0012.3-3.4 19 19 0 007.2 3.3c-3 .7-4.9.3-5.7-.2.4.9 1.4 2.3 2 2.4-2.8-.1-6-.8-7-1.8-2.4 1-6.5 1.3-8.9-.2zm5.5 4c1 .2 6.5 1.1 7.3 1.1-1.9 1.6-.3 3 2.7 2.8-1.5.2-3 .8-2 1a29 29 0 0011.2-2.2c-2.4 3.1-14.3 6-19.2-2.8zm4.9 7.7c1.5-.7 5.1-.5 6.9.4-2 .6-5.8.6-7-.4z"/>
+    <path d="M329.7 449.6c2.6-.4 10 1.4 12.7-.2-1 2.4-5.6 2.7-7.2 2.2-1.6-.6-3.1-1.2-4.2-1.1.5-.4-.4-.4-1.3-.9z"/>
+    <path fill="#00d860" d="M332.4 453.3c2 .3 9.1-.6 11.3-1.4 2.3.7 6.9 2 7.9 1.8-2.2 1.4-6.4.6-7.7 0-3.9 1.3-7 1.7-11.5-.4z"/>
+    <path fill="#00d860" d="M335.8 454.5c2.9.6 5.3.2 8.1-.8.9.4 3 .9 4.9.8 1.3.7 3 1.7 4.7 1.9-1.8.7-8.1 0-9.4-.8a26 26 0 00-10.1 2c0-1 .5-2.2 1.8-3.1z"/>
+    <path d="M332.4 440c2.2.7 10.3.4 14.4-1.5 1.6-.8 2.6.4.7 1.1-6.6 2.3-11.9 3.2-15.8 1.2-1.5-.9-1.6-1.6.7-.8z"/>
+    <path fill="#00d860" d="M371.8 429c-9.9 4.7-16.4 6.1-30.2 1.9-1.2-.4-2.1 0-.7.9 1.4.9 9 3 10.8 3s1.1 1 0 1.3-1.4 1.1.1.5 9.7-.8 13.1 1c1.5.8 1.9.6 1.7 0s.7-.9 1.8-1 1.7-.5.9-.9-1-.5-.3-.8.7-.6-.3-.8-1.6-.5-.7-1c.9-.4 2.2-.7 3.3-.8.2-.7-.2-2.6.5-3.2z"/>
+    <path d="M355.4 430.3c5.6.3 16-2.2 21.6-7.6 1.9 1.1 4.6 2.4 6 2.7s2.7 1.5.5 1.5-5.3-.9-6.7-1.5a38 38 0 01-21.3 5.5c-1.5-.1-2-.8-.1-.7z"/>
+    <path fill="#00d860" d="M338.7 399.4a15 15 0 009.7 3.3 21.4 21.4 0 007.2 3.5c-3 1.2-6.2 2.2-7 3.2-1.4-1.3-3.1-1-3.6-1.7-1.2 1-1 1.6-.2 2.2s7.3 1.6 8.9 1.1 2 1 .7 1.4c-3.5 1.2-10.2 0-12.5-3.7-2.3-3.7-4.3-5.1-10.6-1.7-.7-1.8-.7-2.3-2-2.3s-3.4-1.6-1.7-1.5 6.9-.7 11-3.8z"/>
+    <path fill="#00d860" d="M340.2 407.6c-1 .3-4.1 2-5.2 2.1-1.1.1-3 1.7-1 1.7 2 .1 4.5-2 6-2.3s1.5-1.8.2-1.5zm6.2 6.6c-.7.1-4 .9-5 .8s-1.7.2-1.6.8.3 1-1 1-2.6.3-3 .7-.5.8.9 1 2 .2 3.6-.5 3-1.8 4.7-1.9c1.6 0 3.3-2.2 1.4-2z"/>
+    <path d="M341.8 418.1c1.4 1 8.4 3.3 10.9 3.1s2 1 .1 1.4c-3.9.9-8.7-.8-12-3.4-1.5-1.3 0-1.8 1-1z"/>
+    <path fill="#00d860" d="M374.7 421.6c-5.3 1.6-10.7 1-12.9.5s-4.2-.7-2.7.7 6.2 2.3 9 1.6c-9.6 2.2-12.1 2-14.5 1.6a46 46 0 00-8.8 0c-1.4 0-3.3-.1-4.1-.7s-1.1-1.4 1.4-1.2c2.5.3 2.8-.2.6-.6s-5.2.6-2.2 2.5 9.4-.1 13.5 1c4.1 1.2 12.9 2 21.2-4.7.4-.3 1.1-1.3-.5-.8zm-26.1-7.9c.2.7.2 1.4 0 1.8s-.2 1 .6.4 1.4-1.4 2.2-1 3 .5 4 .3c1-.1 1.2-.3-.2-.9-1.4-.6-2.8-.8-3.6-.7s-1.7-.1-2.4-.4-.8-.1-.6.5z"/>
+    <path fill="#00d860" d="M362.3 416.2c-1.1 0-3-.6-4-1s-2.6-.6-1.5.9 5.9 2.3 7.6 1.6 1-1.5 2.6-.5c1.7 1 3.4 1.8 4.6 1.8s1.7 0 .3-.8-2-1-2-1.6-.4-1 .8-.6 2.6 1 3.6.5 2.8-1.6 4.4-1.6l.4-1c-2.4-.2-3.8.5-4.5.8s-1.8.4-3 .2-2.8-.4-3.2-.7-.4-.6.6-.8 1.4-.9 0-.6-5.2.1-7.2-.5-2.8-.7-3.7-.4c-.8.3-.7 1.2.5 1.3s4 .3 5 1.2.8 1-.3.5-3-.2-1 1.3z"/>
+    <path fill="#00d860" d="M379 413.9l-.3 1c2.4-.1 8.1.5 10 1.6 1.8-1.4 1.5-1.8 2.8-1.6s2.8.7 3.6.3 1.2-.3 2-.2c.7.2 2.4-.1 3.3-.7s3-1.4 4.2-1.4 2.5-.2.4-.6c-2.1-.3-5.3.4-6.4.7-1.1.4-4.4.7-6.3.7s-4.6 1-6.8.4-5.2-.2-6.5-.2z"/>
+    <path d="M408.8 412.8c-3.8 2.8-8.5 3.4-14 3.8-1.6.1-1.1.6.3.7 5.7.6 12.4-1.5 14.6-3.9.6-.6.6-1.7-.9-.6z"/>
+    <path fill="#00d860" d="M382.6 419.3c1.6 0 7.4 1.6 9.3 2.2 1.4-.1 1.8-.4 1.5-1s-.4-1 2.1-1c2.6.2 8.5.1 9.6.1 1-.3 2.9-1.9 3.8-2-2.3.2-12 .7-13.2.6s-1.8 0-2.6.4-1.2.7-2.2.3-2.7-1-3.6-.4c-1 .6-3 .1-4.7.8z"/>
+    <path fill="#00d860" d="M405.1 419.6c1-.4 2.9-2 3.8-2 1.7-.1 3.6.6 4.5.7s1.9 0 1.2-.7 0-2 2.6-1.6c2.6.3 4 .7 6.5.5s3.8 1.6 8.6-.3c-.3 2 .6 2 1.5 1.7s1.9-.3 3.4.9 11 1.3 13.1.9c2.2-.4 3.4.7 1.7 1.3-1.7.5-2 1.2-1.7 1.8.4.5.8 1.1-1.2.9-2.1-.3-2.5.3-3.5 1.1s-1.3 1-4.1.5c-2.9-.5-3.4-.1-5 .2s-1.8.2-3.4-.3-4.9-1-7-.4-3.5 1.3-5.3.8-2-.3-.8-1.4 1.4-1 3.6-1.3c2.2-.3 3.9-1 2.3-1.8s-2-.8-4 .2-3.2 1.7-5.5.4c-2.3-1.3-3.4-1-5-.6s-4.1-.5-6.3-1.5zm7.7 3.9c-3 .4-3.7-1.5-6.8-1.1-1 .1-2.8 1.4-.4 1.2 2.4-.2 5 1.1 7.3.9s1.3-1.2 0-1zm-3.4 2.2c1.6-.6 4.8.5 6.1.3s2.7.5 1.2 1-4.8-.8-6.3-.4-3.1-.1-1-.9zm-30.7 8.3c2.1 0 9.8-.2 12.8-6.7.2-.5.5-.7 1.4 0s4.5 2.7 11.1 3.3c1.9.2 3.9 1.1.1.8s-9.6-1.2-11.6-2.5c-3.3 5.3-9.3 6-13.8 5.8-2.7 0-2-.8 0-.7z"/>
+    <path fill="#00d860" d="M395.2 425.3c-1 1.4-4.5 3.8-6.1 4-1.7 0-6.5-.4-7.7-.8s-2.7-.3-1 .9 6 2 7.8 1.6c1.8-.3 3.7-1 5 0s4 2.4 5.4 2c1.5-.3 4.5-.3 5.5.2 1 .4 2.6 1.8.1 1s-4.5-.1-5.7-.7c1.3 1.8 4.2 4.7 6.7 4.7.6 0 1 1-.3 1.6 1.2.6 4 1 5.5-.3-.3.5-.1.9.5 1.2s1.4.8.3.9-3.8.4-4.6.1c2.5 1.6 9 4.2 15.6 2.9 1.3-.2 2-.8-.1-.7-4.3.1-4.5 0-5.3-.4-.8-.4-.6-.8.6-1.2 1.2-.4 4.3-.8 5.6-.8s2.5-.6 0-.6-6 0-7.2-.4-2.3-1-1-2 2.8-.6 3.5-1.4c-4.3 0-9.5-2.3-6.6-4.4.7-.5.5-.5-.6-.6s-4.3-1-5.7-1.8-.4-1.4.7-1.6c-2.5.4-7.5-1-10.9-3.4zm37.7-.2c-2.3 1.8-6.7 2.5-8.5 2.5s-2.2.6-.7.8 3 .4 3.7.2 1-.2 2 .2c1 .5 3 .7 4.8.1s4.8-.8 6-.7 2.6.1.1-.6c-2.4-.7-6.4-.2-7.3 0s-3.6.1-2.2-.3 2.6-1.2 3.3-1.8c-.5 0-.8-.2-1.2-.4zm-1.2 5a15 15 0 01-7.8 3c2.7 1 5 3.8 6.7 3.7-.9.5-2 1.2-3 1.4 1.7.4 4.5 0 6.8-1.4 3.9 1.1 8.9.4 10.5-1a12 12 0 01-6.8-2c1.2 0 2.3-.8 3-1.5-3 .5-8-1-9.4-2.2z"/>
+    <path fill="#00d860" d="M427.6 438.2c1.1-.1 2.1-.9 3-1.4-2.2.7-11.4-.8-14.2-3.2-2.7-2.5-2.7-.6-.8 1.1s5.3 4.4 12 3.5zm6.8 5.9c-1.2.6-6.7 1-8.5.6s-2.6-.2-2.1.5.6 1.4-.9 1.2-4 .1-5.2.5c-1 .4-2.4 1.4 0 1 2.2-.4 4.3-.9 6-.4s8 .6 9.2 0 .4-.5-.2-.5-.8-.3 0-.7 1.5-1.5 1.7-2.2zm-53.5-7.5a65 65 0 01-12 3.2 16.8 16.8 0 01-6 1.8c1 .8 4.4 1.6 5.8 1.2-.7.8-2.5 1.7-3.2 2 2-.2 4.5.3 5.5.4a15.4 15.4 0 01-8.3 1.8c.6 1 1.5 1.8 2.7 1.8a14 14 0 01-7 .2c.7 1.3 1.3 2 2.2 2.2-2 .2-4.6.6-6.8-.7 1.7 2.2 5.4 3 11 2.3 5.5-.6 10.1-3 11.4-4.1-2.3.3-5.4.4-7 .1 3.1-.7 9.8-3.6 11-4.7a6.2 6.2 0 01-3.5-1c1.8.2 8.1-.6 10-1.3a7.4 7.4 0 01-4.4-2.9 43.2 43.2 0 0021.5.7c1-.3 1.2-1.6-.9-1.4-3.6.2-10.5-.8-12.3-1.7a12.8 12.8 0 005.1 2.3c-3.3 1-8 1.6-14.8-2.2z"/>
+    <path fill="#00d860" d="M365.5 444.9c.7-.4 2.4-1.3 3.2-2a11 11 0 01-5.8-1.2c1.3 0 3.4-.7 6-1.8-4.7-.2-7.9-.2-9.6-1s-4.7-.7-5.9-.4-.7 2.1 4.1 1.6c-2 1.4-7.5 2-9.6 1.4.5 1.7 1 3.4.4 4.3 2.7 1.5 9.8 3.5 13.2 3.2-3-1.2-4.7-2.4-2.2-2.7s4-.8 6.2-1.4z"/>
+    <path d="M357.6 453.2c6.1-.5 14.3-.6 20.9-6.1 1.7-1.5 2.8-1 1.2.5-3.5 3-12.1 7.3-20.3 7.4-3.4 0-5-1.5-1.8-1.8z"/>
+    <path fill="#00d860" d="M403.6 443c-1.5.6-5.8 1.3-7.1 1.2-1.3-.2-3.1-.3-4.2.3s-1 1 .3 1.2 3.3.2 4.2.2a6.8 6.8 0 00-2.2 2c2-.6 5.8.3 7 1-1 .2-1.9-.1-2.6-.5 3.5 3.7 13.8 3.7 15.4 3-.7.6-1.5 1.2-2.2 1.4 2.9.5 6.2.4 9.5-1.5a29 29 0 01-5.2-.2 6.2 6.2 0 012.5-1.5 17 17 0 00-6.3.4c.4-.8 1-1.7 1.9-2a39 39 0 01-13.6-1.4c3.7.4 7.6-1.7 9.3-1.7-2.8 0-5.9-.7-6.7-1.9zm-12.9 2.9c-2.5.5-6.3 1.5-7.3 2s-2.1 1 .1 1a228.3 228.3 0 01.8-.2c-.9 0-2 0-.3-.6s3.9-1.7 6.7-2.2zm-5 6c.8 0 4.8 0 6.3-1.4 1.6 1.2 4.7 3 6.7 3s1.8.5 0 .7c-1.7.2-5.1-.9-6.8-2.2-2.3.9-4.3.2-6.3-.2zm-29.8 17.3c4 1.5 9.2 2.7 13 1.4 2.3 1.9 6.8 2 9.2 1.5 2.4-.5 4.6-.8 7.3.1s8.2 1 9.8 2.3c-1.4 0-4.4 0-5.2.2-.7.2-.3.6 1 1.3a26.9 26.9 0 00-14.2 3.6 8 8 0 017.5-4.7c-2.3-.8-9.7-.9-12.1.6-.7-.8-1.6-2-1.6-2.5-4 2.2-11.6-1-14.7-3.8zm-10.2-7.3c4.7-.6 8-2.1 9.4-3.6.8.8 4.3 1.6 8 .4a1.9 1.9 0 00-.5 2.3c-2.4 0-7.2 1.3-8.8 2.1-1.6.8-6.3 1.4-7.8.6s-1.6-1.6-.3-1.8z"/>
+    <path fill="#00d860" d="M362.6 461c-2.5 0-7.2 1.3-8.8 2.1.3.7.5 1.7.6 2.4a56 56 0 0119.2-2c-1.9 0-5.6 2-7.6 2.3 5-.4 9.9.7 11.2 1 1.2.3 1.5 1.3.5 2.2s-1.4 1 .7 1c2 .1 6.3-.1 8.2-2-.8-.8-2.8-.5-3.3-1.1a8.9 8.9 0 003.4-2.1c-3.4 0-4.7-.1-5.9-.4-1.1-.3-2-.6-.6-1.3a8.3 8.3 0 002.6-2c-2.6.7-6.5 1.3-9.8-1.3 1.3.4 4.2.2 5.2-.3-1.1-.6-2-1-2.9-1 2.6-1.3 7.8-2.5 14.3.1 3.2-.2 6.6-.1 9 .5 1.1-1 3.3-3.4 4.4-4-7.5.6-21.1-.9-20.9-4.8-2.4 3.2-8 5-10.5 4.5-.3 1.1.7 2.5 1.6 3.3-2.5.5-6.9 1-9 .5 1.2 1.2 3.4 2.2 4.7 2-2.7 0-4.1.6-6.3.4z"/>
+    <path fill="#00d860" d="M378.4 470c2 .1 6.3-.1 8.2-2-.8-.8-2.8-.5-3.3-1.1a9 9 0 003.4-2.1c5.4-.5 10.2-.2 12.5-1 2.4-.6 8.3-.2 9.4-.6-5.1.9-6.1 1.3-6.4 2.2s1.7 1.5 2.9 1.5c-2.3-.1-5.2 2.3-5.5 3.3-3-1.8-4.5.3-4.9 1a9.8 9.8 0 00-7.7 1.5c-2.8-.8-4.6-1.3-7.5-.8 1.8-.4 1.4-1.6-1.1-1.8zm24.6-15c1.8 0 5.6.2 7 0a8.3 8.3 0 00-2.4 1.6c4.4-.5 10.3-.8 12-.5-2-.4-4.2 1-5.3 1.7s-.5 1.1 1 1.3 3.5 1.4.8 1-8-.4-9.3-.2-2-.4-.2-.7 3.2-.9 4-1.4c-1.5.4-4.4.4-5.3.1s-1.5-.8-.5-1 .4-.7-.7-.5-3.9 1.3-5.4 2.7c1.6-1.7 3.1-3.2 4.3-4z"/>
+    <path d="M383.5 458a11 11 0 008.6 3.8c.8 0 2.4 1.1.3 1.2-5.3.2-8-1-10.4-4.5-.5-.8.4-1.7 1.5-.6zm32.1-45c2.9 1.3 8.6 2.5 13 2.3.8 0 2.3.8.4 1a23 23 0 01-13.7-2.6c-1.1-.6-.8-1.2.3-.7z"/>
+    <path fill="#00d860" d="M418.5 413c4.4-.2 7.7-.1 9 1.2 2.5-.8 7-1.3 8-1s2.2-.3-.2-.9c-2.3-.6-7.9-.8-9.6-.4-1.7.3-7.1.5-9 .3.8.1 1.3.2 1.8.7zm17 1.7c2-1.1 8 0 9.7-.9-1.3 1.6 4.1 1.7 8.8.5-1.8 1.1-5.6 1.3-7.3 2s-2.6.2-3.9-.3-4.5-1.8-7.3-1.3z"/>
+    <path fill="#00d860" d="M454 414.3c-4.6 1.2-10 1-8.7-.5-1.9.8-7.8-.2-9.8.9 2.1-1.3 3.7-.3 5.3-3 1 .3 3.2.4 4-.6 1.3.3 3.7.9 4.4 1.6.7.7 1.8-.2.9-1.3 2-.8.7 1 5.7-.3 1-.3 3.5-.7 4.4-.8a30.4 30.4 0 01-6.1 4z"/>
+    <path fill="#ff0" stroke="#000" stroke-width=".1" d="M373.4 664.2l-.2-22.2c0-1-.5-.8-.5 0v22l.7.2zm7.2-23.4l.8 23.4-.1.2h-.5l-.5-23.6h.3zm6.8 19.8l-.4-19c0-.6-.5-.5-.5.1l.4 18.9h.5z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M376.6 644.7l-7-.1c-.3 1.4 1.4 1.3 2 1 .8.5 1.4.5 1.8 0 .6.5 1.4.4 1.7 0 .8.7 1.7 0 1.5-1zm.5 3.4h-7c-1.3 1.2.3 1.8 1.7 1 .2.4 1 .6 1.6.3.6.4 1.4.1 1.8-.3.7.3 1.6.4 2-1zm-.2 4.5h-6.8c-.1 1.1 1.3 1 1.8.7.5.8 1.7.6 2.1.1.7.5 1.3.4 1.6 0 .7.6 1.4-.2 1.3-.8zm.4 4.4l-7.7-.1c-.4 1.3.8 1.5 1.3 1.2.2.7 1.2.5 1.5 0 .4.3.9.1 1.1-.2.1.7 1 .8 1.7.2 1.4 1 2.7-.2 2-1.1zm6.7-1.8h-6.3c.3 1.2.9 1.5 1.9.8.8.8 2 .5 2.3.1 1.4 1.1 2.1-.2 2.1-1zm-.6-4.4l-6.2-.2c.1 1.6 1.6 1.5 2.4.9.5.7 1.5.5 2 0 .7.8 2 .3 1.8-.7zm.8-4.9h-6.6c0 1.1 1.5 1.7 2.6.7.3 1.3 1.5.9 2 .4.8 1 2.5-.2 2-1zm-.4-3.3l-6 .1c0 1 1.4 1.4 1.9.6.3.5 1.3.4 1.6 0 .4.7 1 .2 1.2 0 .7.5 1.4.2 1.3-.7zm6.9 2.2l-7.2-.1c0 .7.7 1 1.2.7 0 .8 1 1 1.7.4.4.7 1.7.8 2.2 0 1 .9 2.2.2 2-1zm-.1 5.9h-7c0 1 1.1 1.3 1.8.8.1.8 1 .9 1.5.4.7.7 1.7.8 2.3 0 .8.3 1.5-.4 1.4-1.2zm-.4 5.3h-5.6c0 1 1.2 1 1.7.5.6.7 1.4.7 1.9.2.7.6 1.9.4 2-.7z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path stroke="#000" stroke-width=".1" d="M381.3 664.4c-3 0-6.1 0-8.2-.2s-2.7-.6-4.2-1.5l-5.6-3.4c-.5-.2-1 .1-.3.5l5.6 3.7c1.5 1 2.5 1.9 3.4 3 1.2 1.3 2 1.3 2.6 1.1s1.4-.5 2.3-.3c.8.2 2 .3 2.6.2.5.5 1.8.4 2.5.2s1.2-.2 1.7-.1h1.7c.5 0 1.8-.3 2.7-.2 1 .2 1.9 0 2.5 0a5 5 0 012-.1c.6-.4.8-.9 1-1.4.6-.1.8-.2.9-.5l.6-1.6h.2v-.6l-.4-.6.2-1 .5-.2-.2-1-8.8.2a2 2 0 00-.6 1.1l-2.6.4c-.3.1-.6.1-.9.5l-1.2 1.8z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path stroke="#000" stroke-width=".1" d="M391.8 660.5l1.3-4.9c.2-.5-.3-.6-.5 0l-1.3 4.9h.5z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M396.9 655c-1.1.5-1.7.8-2.2.6-.5-.2-1.1-.3-1.5-.1a.5.5 0 010 .1 493.3 493.3 0 01-1.1 3.8c.8.3 2.2.3 2.5 0 .4-.4 1.3-.3 1.8-.3.3-.4.4-.9.3-1.1s0-.7 0-1 .4-1.4.2-2z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="none" stroke="#000" stroke-width=".1" d="M371.7 645.6a53.2 53.2 0 01-8 14m2 1.2a54.5 54.5 0 0011.4-12.6m-7 4.3c-.3 2.7-1.1 7.5-1.5 10m2.6-4c-1 1-2.3 2.6-3.4 3.5m12.7-8.9c-.8.8-1.7 1.8-2.6 2m3.1-1.8a7 7 0 002.7 1.9m-3.2-6.2a8.5 8.5 0 01-3 1.7m3.4-1.6c.6.6 1.3 1.3 2.2 1.7m-5.4-4.9a7 7 0 002.7-1.5m.3 0c.7.7 2 1.4 2.7 1.6m-5.5-3.3a4 4 0 002.4-1.4m.3-.2c.7.6 2 1.4 2.7 1.5m3.2.8c-.4.5-1.5 1.3-2.2 1.3m2.7-1.3c.3.5 1.1 1.3 1.6 1.3m-4.8 6a7.2 7.2 0 002.8-1.9m.5.1a5.6 5.6 0 001.9 1.8m-4.1 5.2c.4 0 1.5-.6 1.8-1.3m.6-.3a7 7 0 002 1.7m-18.7.9c1.3-.4 3.8-2 5.1-3.5m-2.4 1.9c1 .7 2.3 1.5 3.2 1.7m-6.2-4.5a8 8 0 002.4-1.5m.5-.1c.3.4 2.4 1.7 3.3 1.7m-3.8-5.9a9.8 9.8 0 01-2.5 1.4m3-1.4c.7.5 2.2 1.4 3.1 1.4m-3.6-5.4c-.6.6-1.6 1.6-2.4 1.9m2.9-1.8c.4.7 1.6 1.7 2.4 1.8m8 2.6c1.9 3.3 5.3 7.4 8.7 9.6m-14.1-13.3c2.8 4 8.2 12.7 13.4 15.9m1-3.4a18.4 18.4 0 01-4.9 4.6m4.5-3.5c-1.7-2.8-2.6-6.3-4-11m-14 12.4l2 6m-2.4-6.1l1.9 6m-2.4-6.3l1.8 6.2m-2-6.1l1.4 6.1m0-.2h1.7m-.2-.6h-1.6m1.4-.5h-1.6m1.4-.5H374m1.3-.6H374m-.1-.5h1.3m-1.4-.4h1.3m-1.4-.5h1.2m-1.3-.4h1.1m-1.2-.5h1m-1.1-.4h1m-1.1-.3h1m-1-.4h.9m-2.6 0l-1.2 5m1.5-5l-1 5.2m1.3-5.4l-.8 5.5m1.2-5.6l-.6 5.8m.7-.4h-2m2-.5h-2.3m2.3-.6h-2.1m2-.5h-1.9m2-.5h-1.9m1.9-.6H371m1.7-.5H371m1.6-.5h-1.5m1.5-.5h-1.3m1.3-.5h-1.2m1.2-.3h-1.1m1 5.5v-5.9m6.5-2l-4 8.1m4.3-8.2l-3.4 8.3m3.6-8.4l-2.7 8.4m3-8.2l-2.2 8.2m.1-.3h-2.5m2.7-.8h-2.4m2.5-.6h-2m2.4-.6h-2m2.1-.6h-1.9m2.1-.6h-1.8m2-.7h-1.6m1.7-.5h-1.5m1.7-.6h-1.4m1.5-.4H378m1.4-.4H378m1.3-.4h-1m1-.3h-.9m1-.4h-.8m1-.4h-.8m.8-.3h-.7m3.4-.1l1.7 5.6m-1.4-5.5l2.1 5.4m-1.8-5.4l2.5 5.3m.6-.5l-2.8-4.9m2.8 5h-2m1.8-.8h-2m1.7-.6h-1.9m1.5-.7h-1.7m1.3-.6h-1.5m1.1-.7H383m1-.7h-1.2m.8-.6h-1m3.2.1L384 662m2.3-5.4l-1.6 5.3m.7-.1l1.2-5m.3.2l-1 4.7m-1.7-.3h1.7m-1.5-.6h1.7m-1.5-.7h1.6m-1.3-.6h1.5m-1.3-.7h1.4m-1.2-.6h1.3m-1-.7h1.2m-1-.6h1m.9.1l.8 3.6m-.5-3.8l1.1 3.7m-.7-3.7l1.2 3.7m-.7-3.5l1.3 3.5m-.1-.3h-1.7m1.5-.5h-1.6m1.4-.5h-1.5m1.3-.6H388m1.2-.5h-1.4m1.2-.5h-1.3m1.1-.5h-1.2" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#00b800" d="M358 403c4-2.6 10.7-2.1 14.2.5 4.1-2.3 11.6-1.7 15 1.4 5.3-3.6 9.8-4.1 15-.7 4-2.8 10-3 14.8.3 4.7-2.2 9.8-4 14.3.8-2.7-2-8.5-3.6-14.3.9-4.5-4.5-12.3-2.9-14.9.2a9.7 9.7 0 00-14.6.3c-4.6-3.9-11.6-4-15.3-1-3-2.4-7.3-4.3-14.3-2.7z"/>
+    <path fill="#cf6200" d="M428.1 397.5a303 303 0 01-74.7-1.4c-3.3-.9-2.4-2.1.4-1.5a240 240 0 0048.5 2c2.6-3.4 6.6-9.2 7.9-10.8s1.7-1.8 4.3-2.2l11-1.9.1 1.6c-.3.2-.6.7-.9.8 0 2.6.6 9 1 11.4.6 0 1.2-.3 1.5-.4 1-.2 1.9 2.1 1 2.4z"/>
+    <path fill="#cf6200" d="M461.6 398.5l2.7-.1c.8 0 2-.6 2.5-1.9l2.7-8-2-3.1a174.4 174.4 0 001-6.7l2.7-1c.1-.6-.1-2.2-.7-2.7-8.8.4-35 1.3-40 1.3-1 0-1.6 0-2 1.6-2.5 9.2 1 22 10.1 29.3.7.6 1.5.1.4-.9a32.8 32.8 0 01-5.5-7.1l6.5-.2c.6 2.2 2.2 6.8 2.5 7.5s1.1 1 .8-.2c-1-2.7-1.4-5.8-1.8-7.3l6.8-.1c0 2.4.3 5.7.4 6.6s.8 1 .8 0v-6.7l6-.2-.5 6.6c-.1 1 .4 1.6.7 0l.9-6.6 4.1-.1c0 1.3-1.4 5.5-1.7 6.6s.2 1.1.6 0a30 30 0 002-6.6z"/>
+    <path d="M432.4 397.4c-.6-1.4-2.8-6.4-3-10l8.7-.3a104 104 0 001.7 10.1l-7.4.2zm7.3-10.3l1.5 10.2 7-.2-.3-10.2-8.2.2zm-10-9c-.3 1.9-.4 5.8-.3 7.5l8.6-.1-.7-7.6-7.6.2zm9.2-.2c0 1.8.5 6.2.6 7.5l8.3-.2-.4-7.6-8.5.3zm10.2-.3c0 1.7.3 6.4.2 7.6l7.3-.2c0-1.7.3-6.5.2-7.7l-7.7.3zm9.1-.3l-.2 7.7 7.9-.3c.3-1.6 1-6 1.1-7.8l-8.8.4zm8 9c-2.7.2-7 .3-8.3.3a262 262 0 01-.9 10.2l8-.2a68 68 0 002.9-7.9l-1.7-2.3zm-16.8.5l.3 10.2 6-.2.8-10.2-7 .2zm-34.1-2l-3.3.7a246.9 246.9 0 01-8 11c4 0 10.2-.2 11.7-.3l-.4-11.3zm1.5-.2l.4 11.5 7-.5-1-12.2-6.4 1.2z"/>
+    <path stroke="#000" stroke-width=".1" d="M377.3 657h-7.7v-.2l7.7.1zm6-6.2c.1 0 .1 0 0 0l-6-.1c-.1 0-.1 0 0 0h6zm-6.4 1.7c.1 0 .1.1 0 .1h-6.8c-.1 0 0-.1 0-.1h6.8zm.2-4.4c.1 0 .1.1 0 .1H370c-.1 0-.1-.1 0-.1h7.1zm-.5-3.5c.1 0 .1.1 0 .1h-6.9c-.1 0 0-.2 0-.2l7 .1z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M383.8 642.6l-6 .1 6-.1z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path stroke="#000" stroke-width=".1" d="M384.1 646c.1 0 .1 0 0 0h-6.5c-.1 0-.1 0 0 0h6.5zm6.5 4.6v.1h-7c-.2 0-.2 0 0 0h7zm0-5.9c.2 0 .2.1 0 .1h-7.1c-.1 0-.1-.1 0-.1h7.2zm-6.6 10.4c.1 0 .1.1 0 .1h-6.4v-.1h6.4zm6.2.9c.1 0 .1 0 0 0h-5.6 5.6z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#ef072d" stroke="#000" stroke-width=".1" d="M395.3 657a3 3 0 000-1.4 1.1 1.1 0 01-.6 0 3 3 0 00-.3-.2c0 .4-.2 1.5-.4 1.9-.3 0-1 0-1.3-.2l-.3 1a3.5 3.5 0 001.5 0c0 .6-.1 1.1-.4 1.5.5 0 1 0 1.1-.3.3-.4.3-1 .4-1.3l.5-.1.5-.2.7-.1v-.6l.2-.4-1.6.5z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path stroke="#000" stroke-width=".1" d="M370.5 623.2c-.8 0-2.6 0-3 .2-.3.2-.4.3.2.4s1.7.5 2.3.8c.6.4 1 1 1 2a6 6 0 003 6.3c.1.1.2.2.1.6l-.3 1.1c0 .2-.1.4.2.3a20 20 0 01-1 1.6c-1.6-.2-3 0-3 1.8 0 .2 0 .4.2 0 .3-.4.6-.8 1.3-1-.4.7-.6 1.3-.5 1.7 0 .3.2.5.4 0 .1-.4.5-.8.8-1.1.2-.1.2-.1.1.2s.1.9.3 1.1c.2.2.3.1.2-.2 0-.4 0-1.1.5-1.3.6-.4 1.2-.2 1.4.2.3.5.5 0 .2-.4s-.6-.9-1-.9l1-1.7c0-.2.2-.3.4-.2 0 .1.2.1.3-.2l.7-1.4.6-.2 1 1.5v.6c0 .4-.4 1.3-.5 1.6-1.2 0-1.8 0-2.2.7-.2.3.1.4.4.3a2 2 0 011-.3c.2 0 .3.2 0 .3-.7.3-1.2.8-1.2 1.5 0 .2.2.3.3 0 .3-.5.8-.9 1.3-1 0 .5.1 1.3.5 1.5.3.2.3 0 .2-.3-.2-.5 0-1 .3-1.3.5-.6 1.7.2 2 .4.2.2.4.3.2-.3-.1-.7-1.1-1-2-1.2l1.2-4.2c.5.3 1-.5 1.8-.2 1.4.6 3.5 1.9 3.8 2.2.4.3.5.2.7 0 .2-.1.5 0 .8 0 .2.1.4.2.1-.4a7.2 7.2 0 00-2.4-2.6c.8 0 1.8 0 1.8-.2s-1.2-.6-1.7-.6a3.3 3.3 0 001.6-.8c.2-.2 0-.3-.8-.3-2.1 0-3.2 0-4.3-.6-1.8-1-2.9-2.2-3.8-2.6-.4-.3-.7-.9-1-1.4-.5-1.5-.5-2.3-1.8-2.8s-3 .1-3.7.8z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M370.6 623.6h-1.7s-.2 0 0 0l1.5.4c.3 0 .2.3 0 .2s-.4 0-.2.2c1 .7 1.2 1 1 3.7l.5.4c.2 0 .1.2 0 .1s-.5 0-.2.2.5.2.2.2-.6.2 0 .1c.5 0 .8.2 0 .3-.6 0-.4.2 0 .2.7 0 .5.2.3.2s-.3.2.2.2h.7c.1 0 .2 0 0 .1-.2 0-.2.2.1.2s.5 0 .2.1c-.1 0-.3.1 0 .2.7 0 .8.2.6.3s-.3.1 0 .1.6.1.3.2c-.2 0-.3.2 0 .2s.5.2.3.3-.3.2 0 .2.4.1.2.2c-.2.2-.3.2-.5 0 0-.2-.2-.2-.2 0l-.2-.3c-.1-.3-.3-.3-.3 0s-.2.1-.4 0a3.3 3.3 0 004 .8c.1 0 .2 0 .3.3l.6 1.1c.1.2.3 0 .3-.2l.6-1.7c0-.3.4-.5.3.3.3-.2 1.5-.3 2.5 0a12.2 12.2 0 012.7 1.5.6.6 0 00.5.1c.3 0 .4 0-.1-.5s-.3-.7 0-.5c.3.2.5.1.2-.2l-1-.9c-.1 0-.1-.2-.6-.2h-1.5c-.2 0-.4 0 .2.2.6.2 1.7 1 2 1.2s.4.6-.1.2-2.4-1.5-3.6-2c-2.7.3-4.9.6-6.5-1.1-.8-.9-.8-2.8.5-3.6-.2-.2-.2-.4-.1-.4v-.6c-.2-.1-.4-.3-.4-.5-.3 0-.5-.5-1-.3s-.6 0-.8-.1c-.1-.2-.2-.2-.5-.2s-.5 0-.5-.2.2-.2.6 0c.7.3 1.3.5 1.8-.2.4-.6-.2-1.1-1-1.3-.9-.2-1.5.5-1.9.8z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M375 623.3a2.8 2.8 0 00-1-.6c-.3 0-.3.2-.2.3v.6c.2.1.3.3 0 .3-.2.2 0 .9.3.7h.2s0 .3.2.3 0 .2 0 .3h.2c.2 0 .1.4-.1.5.3 0 .4 0 .4.2.1.2.4.3.4.6s0 .3-.4.2-.4 0-.5.2-.2.3 0 .3.4.1.1.2-.6 0-.7.3c0 .3 0 .4.2.3l.7-.4.5.1c.2.1 0 .5-.2.3s-.4 0-.5.1l-.5.2c-.2 0-.4 0-.3.5 0 1.4 1.1 2.4 3.1 2.4h3.3c-.6-.4-1-.6-1.3-.6h-.3c.1-.1 0-.3-.1-.3s-.3-.2-.5 0l-1 .5c-.2 0-.5 0-.2-.2l.9-.4c.2 0 .1-.2.1-.2s0-.3.3-.2c.6.4 1.5.9 1.8.9s.4-.2.2-.3-.3-.3-.3-.4.1-.2.5 0c.4.3 1 .5 1.3.6s.5.1 0-.2l-2.3-1.7c-.3-.3-.3 0-.2.2s-.3.3-.5.1-.3-.3 0-.4.2-.2-.1-.5c-.4-.3-.5-.3-.4 0 .1.3.1.5-.2.4s-.6-.3-.3-.4c.2-.2.5-.3 0-.6s-.2 0-.3.2-.4.2-.5 0-.3-.3-.2-.4.1-.2.3 0 .4 0 .1-.3-.4-.2-.3 0-.2.4-.6 0c-.2-.1-.2-.3 0-.4.2 0 .2-.1 0-.3-.7-1.2-.4-2.1-1.2-3z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path fill="#cf6200" d="M371.2 191.5c-.3.5-.5.5-1 .9-.8.5-1 2 .3 1.8.9-.1 1.4-.7 1.7-1a11.1 11.1 0 00-1-1.7zm-4-3.2c-1 1-1.2 1.4-.7 1.4.6 0 .4 0 0 .7-.5.7.8 1 1.3.6s.6-.7.9 0c.2.5 1 0 1.6-.5a14.2 14.2 0 00-3.1-2.2zm-1.8 5.5c-1.3.7-.8 4 1.1 3.1.6-.3 1.2-.2 1 .3l.1.9a6 6 0 002.2-1.6c1.2-1.3 0-1.3-1.7-1.3-1.8 0-2.4-.3-.6-1.3 1.5-1 .5-1.6-1.6-1.3.3.4.1 1-.5 1.2zm7.4 7.6c-1-1-.4-1.6.7-2l.5-.5-.8-3.3c-.6.1-1.2 1.3-1.4 2-.2.8-.5 1.3-1.3 1-.8-.2-1.6.7-1.7 1.6h.5c.4.1.6.6.5 1.1 2.3 0 2.7 1.5 3 2.6.5 1.2 1 1 1.4.4.3-.7-.5-1.9-1.4-3z"/>
+    <path fill="#ff0" d="M373.4 214.8c-.4 1-.4.9-1.8 1-1.4 0-3 .3-3.8 1-.4.5-2.8.6-2.8 1.7 0 1 0 1.9 1 2 1 0 1.2.2.8 1-.4.7-.7 2 1.1 2.1 1.8.1 3.1-.4 3.6.6.4 1 0 2.7.3 3.3s1.6 1 3.4 1.6c1.3.3 6 .6 7.5.4 1.5-.2 1-1-.5-1.2-1.5-.1-2.6-.3-3-1.4-.3-1-.6-1.6.3-2.5.8-1 1.6-1.6 1.1-3.1s-1.2-3.3-3-3.7c-1.7-.5-1.1-2.8-2.8-3-.7-.1-1.2-.1-1.4.2z"/>
+    <path fill="#cf6200" d="M365.1 228.8c1.5.1 2.8.5 1.6.9-1.3.3-2 1-.4 1.1 1.6.2 2.9.7 1.7 1.1s-1.4 1.1 0 1 2.1.8 1.1 1.4c-1 .6-1.7 1-2.4 0-.6-1-1-1.4-1.2-.6-.2.7-.6.2-1.1-1s-1.5-1.4-1.2-.5-1 1-2 .6a22.4 22.4 0 003.7 3c1.5-.5 3.3 0 3.9 0 .6 0 2.6.5 3.7 1s1.8-.4 1.4-1.5c-.5-1.2-.6-.8-1.1-.2-.6.7-.7-.2-.7-1.6 0-1.1-.7-.8-1-.1s-.8-.4-.5-1.1 0-1-.6-.8-.6 0-.7-1.3-.6-1.1-.8-.6-.7-.2-1.5-1.2c-.7-1-1.5-.4-2.8.2l1 .2z"/>
+    <path fill="#ff0" d="M380.7 236.7c-7 2.9-12 1.6-15.9-1 1.6-.4 3.4 0 4 0 .6.1 2.6.6 3.7 1.2s1.8-.5 1.4-1.6c1 1.2 1.6 2 2.8 2 1.2-.1 3-.3 4-.6zm-15-32.3c-.4-1.4-.8-1.8-1.6-1.7-.7 0-1-.1-2-.4-.8-.4-2 0-2 1.6s-1.2 2.3-2.5 3.2c-1.3 1-2 1.8-2 3.3s-.4 2-1.2 3l-1.5 1.7 1.7 1c.9.4.6 1-.4.8s-1.8.3-.3.6 2.3 1 .8 1c-1.5 0-3.2 1.2-.3.9 2.9-.3 4 1 .6 1-3.4.2-2.1 1.2-.3 1.2 3.2 0 2.2 1 1.4 1-.8 0-1.2 1 .9.8h.1c.3-.3.5-.7.7-1.2.3-1 .7-4 1.9-4.9 1.2-.8 1.8-2 1.8-2.9s1.8-4.6 3-5.5 1.7-3 1.3-4.5z"/>
+    <path fill="#cf6200" d="M363.2 204.4c-1.2-.8-2.4-.3-2.4 1.2s-.7 2-1.8 2.5a4.4 4.4 0 00-2.1 3c-.2 1.2.2 2-.7 3-.8.9-1 1.6-.3 2.2.6.5.6.6.8 1.3.3.8 1.7 0 1.7-.9s.4-.9 1.3-1.4c1-.5 2.5-3 2.2-3.7-.4-.6-1.2-1.2-.1-2.2 1.1-1 2.3-1 2.3-2s.3-1.2.7-1.6c.3-.3-.8-.8-1.6-1.4z"/>
+    <path d="M363.2 203.2c-.8-.3-1.2 1.4-.1 1.6s1.2-1.2.1-1.6zm-.2 2.2c-.8 0-1.8 1.2-.3 1s2-1.2.3-1zm-1.6 2c-1 .5-.7 1.7.5.8s1.6-1.8-.5-.7zm-1.4 1.9c-1 .4-.7 1.6.6.7 1.2-.8 1.6-1.8-.6-.7z"/>
+    <path d="M358.2 210c-.9.5-.3 1.7 1 .9s1.2-2-1-.8zm1 1.2c-.8.4-.2 1.6 1 .8s1.3-2-1-.8z"/>
+    <path d="M357.8 211.6c-1 .5-.4 1.6 1 .8s1.1-1.9-1-.8zm1 1.3c-1 .4-.4 1.6.9.7 1.3-.8 1.2-1.8-1-.7z"/>
+    <path d="M357.3 213.6c-1 .4-.4 1.6 1 .8s1.1-1.9-1-.8z"/>
+    <path d="M357.4 214.7c-1 .5-.4 1.6 1 .8s1.1-1.9-1-.8z"/>
+    <path fill="#cf6200" d="M356.7 225.6c-1 0-1.5 1.3-.4 1.6s1.4.3 1.4 1.2.3 2 1.5 2.1c1.2.1 2.3-1.3 1.2-1.7-1-.4-2-.8-2-1.7-.1-1-1-1.6-1.7-1.5z"/>
+    <path fill="#ff0" d="M388.2 218.2l.6.6c.8.7 2.4 0 2.2-.6s-1-2.4 1-.9l11.8 8.2c2.4 1.7.8 2-.3 1.4l-6.2-3c-2-1.1-2.2-.7-2.5-.3-.2.3 0 1 .7 1.7-1.2.2-3 0-3.6-1.3-.6-1.5-2.2-3.3-3.2-4.7-.4-.5-.6-.8-.5-1.1z"/>
+    <path fill="#00d860" d="M452 428.7c-1.7 1-3.8 3-2.4 5.7l.5-.3a158 158 0 0016.3-24l.1-.7a22.6 22.6 0 01-5.8 3.5c.8 2-2.8 4.7-4.7 5.5.8 1.3.5 3.2-1.2 3.6.4 1.1-.9 1.1-2.4 1.8s-2.3 1.1-2.8 2c.8-.5 2-1 2.6-.7s.8 1.1-.4 1.4-2 .9-2.3 1.4c1.7-.6 4-.3 2.4.8z"/>
+    <path stroke="#000" stroke-width=".1" d="M376 628.4c-.4-.3-.5-.1-.4 0s0 .4-.3.5h-1c-.2 0-.5.4 0 .3l1.6-.3c.2 0 .4-.2 0-.5zm.7.6c-.3-.3-.4-.2-.3 0s-.1.3-.3.3l-1.4.4c-.4 0-.4.3.1.3s1.5-.5 1.6-.5.2-.3.3-.2.3 0 0-.3zm.3.8l-1 .5c-.3 0-.5.3 0 .3s1-.5 1.2-.6l.4-.2s.4-.1 0-.4-.8 0-.6.1 0 .3 0 .3z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+    <path d="M360.6 190.5c-3.1-2-6.7 2.3-3.2 4.6 3 2.1 6.2-2.6 3.2-4.6z"/>
+    <path fill="#fff" d="M356.7 192.4h1c-.3 1 .7 2.4 2.2 2.1-1.2.9-3.5-.1-3.2-2.1zm12.2 46.8c1 .3 4.2.6 5.3.7l-1.4 2.8c-.3.8-.5.9-.5-.4s-.8-2.1-1.5-.8l-1.3 2.4c-.3.6-.8.8-.7-.6v-4z"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M399.7 640.8c0 16.3-2.6 33.9-23.8 42.3-21.1-8.4-23.7-26-23.8-42.3h47.6zm0 0c0-6.2-.3-12.2-.2-17.4a63.6 63.6 0 00-23.6-4.3c-5.3 0-15.7.8-23.6 4.3.2 5.2-.2 11.2-.2 17.4h47.6z" transform="matrix(4.9436 0 0 4.9441 -1482.9 -2891.1)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/si.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/si.svg
new file mode 100644
index 0000000..6de77ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/si.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-si" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M60.2 0h497.3v497.3H60.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="translate(-62) scale(1.0295)">
+    <path fill="#fff" d="M0 0h994.7v497.3H0z"/>
+    <path fill="#d50000" d="M0 331.6h994.7v165.7H0z"/>
+    <path fill="#0000bf" d="M0 165.8h994.7v165.8H0z"/>
+    <path fill="#d50000" d="M282 90.3c-3.9 59.9-6.1 92.7-15.2 107.9-9.9 16.3-19.5 28.2-58 42.6-38.4-14.4-48-26.3-57.9-42.6-9-15.2-11.3-48-15.2-107.9l5.7-1.9c11.4-3.5 20-6.3 26.3-7.5 9-2 16.7-4.1 41-4.6 24.3.4 32 2.7 41 4.6 6.4 1.3 15.3 4 26.6 7.5l5.7 2z"/>
+    <path fill="#0000bf" d="M276.4 88.3c-3.7 59.8-6.7 87.2-11.6 100.3-9.3 22.6-24.1 35-56 46.7-31.8-11.8-46.6-24.1-56-46.7-4.8-13.1-7.9-40.4-11.4-100.3 11.2-3.5 20-6.2 26.3-7.5 9-1.9 16.7-4.2 41-4.6 24.3.4 32.1 2.7 41.1 4.6 6.4 1.3 15.3 4 26.6 7.5z"/>
+    <path fill="#ffdf00" d="M208.8 106.6l1.5 3.7 6.7.9-4.3 2.6 4.2 2.8-6.1 1-1.9 3.3-2-3.4-6-.8 4-2.9-4-2.6 6.4-1 1.5-3.6z"/>
+    <path fill="#fff" d="M262.5 174.5l-3.7-3-2.7-4.4-5.2-4.6-2.8-4.6-5.2-4.7-2.6-4.6-2.8-2.3-1.9-1.7-4.7 4.1-2.6 4.6-3.3 2.9-3.5-2.8-2.7-4.7-10-17.7-10 17.7-2.6 4.7-3.6 2.8-3.2-3-2.6-4.5-4.7-4.1-1.9 1.7-2.8 2.3-2.6 4.6-5.2 4.7-2.8 4.6-5.3 4.6-2.6 4.4-3.7 3a64 64 0 0018 35.2c6.4 6.1 19.5 14.4 35.5 19.9a101 101 0 0035.7-20 64 64 0 0018.1-35.1z"/>
+    <path fill="#ffdf00" d="M224.8 81.5l1.5 3.6 6.7 1-4.3 2.5 4.2 2.9-6.1 1-1.9 3.3-2-3.4-5.9-.8 4-3-4.1-2.5 6.4-1 1.5-3.6zm-32 0l1.5 3.5 6.7 1-4.3 2.6 4.2 2.8-6.1 1-1.9 3.3-2.1-3.4-5.8-.8 4-2.9-4.1-2.6 6.4-1 1.5-3.6z"/>
+    <path fill="#0000bf" d="M254.2 197.2H247l-6.7-.5-8.1-4-9.2.1-7.9 3.9-6.2.5-6.3-.5-7.9-3.9h-9.1l-8.1 4-6.7.4h-7.4l-3.5-6 .1-.2 10.9 1.8 6.6-.5 8.1-4h9.2l8 4 6.2.5 6.2-.6 8-3.8h9l8.2 3.9 6.7.5 10.5-1.9.2.3-3.6 6zm-84 9.3l7.2-.5 8.1-4h9.1l8 3.9 6.2.6 6.2-.6 8-3.9h9.1l8.1 4 7.3.5 4.7-5.8-.2-.2-5 1.5-6.7-.5-8.1-4h-9.1l-8 4-6.2.5-6.2-.5-8-4h-9.1l-8.1 4-6.7.5-5-1.2v.2l4.4 5.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sj.svg
new file mode 100644
index 0000000..f4e5829
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sj.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sj" viewBox="0 0 512 512">
+  <path fill="#ef2b2d" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M128 0h128v512H128z"/>
+  <path fill="#fff" d="M0 192h512v128H0z"/>
+  <path fill="#002868" d="M160 0h64v512h-64z"/>
+  <path fill="#002868" d="M0 224h512v64H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sk.svg
new file mode 100644
index 0000000..fd72868
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sk.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sk" viewBox="0 0 512 512">
+  <path fill="#ee1c25" d="M0 0h512v512H0z"/>
+  <path fill="#0b4ea2" d="M0 0h512v341.3H0z"/>
+  <path fill="#fff" d="M0 0h512v170.7H0z"/>
+  <path fill="#fff" d="M203.2 395.5c-45.9-22-111.5-66-111.5-152.8s4.1-126.2 4.1-126.2h214.8s4.2 39.4 4.2 126.2S249 373.4 203.2 395.5z"/>
+  <path fill="#ee1c25" d="M203.2 384c-42.1-20.3-102.3-60.5-102.3-140.2s3.8-115.8 3.8-115.8h197s3.8 36.2 3.8 115.8-60.2 120-102.3 140.2z"/>
+  <path fill="#fff" d="M212.2 223c11.4.2 33.7.6 53.5-6 0 0-.6 7-.6 15.3s.6 15.3.6 15.3a172 172 0 00-53.5-6v44h-18v-44a172 172 0 00-53.5 6s.6-7 .6-15.3-.6-15.3-.6-15.3c19.9 6.6 42.1 6.2 53.5 6v-27.7a128 128 0 00-42.3 6.1s.5-7 .5-15.3-.5-15.4-.5-15.4c17 5.7 31.9 6.2 42.2 6-.5-17.4-5.6-39.4-5.6-39.4s10.5.8 14.7.8c4.2 0 14.7-.8 14.7-.8s-5.1 22-5.7 39.5a126 126 0 0042.3-6s-.5 7-.5 15.3.5 15.3.5 15.3c-17-5.7-31.9-6.1-42.3-6V223z"/>
+  <path fill="#0b4ea2" d="M203.2 280.8c-21.2 0-32.6 29.4-32.6 29.4s-6.3-14-23.6-14c-11.7 0-20.3 10.5-25.8 20.2 21.3 33.8 55.3 54.7 82 67.6 26.7-12.9 60.7-33.8 82-67.7-5.5-9.6-14.1-20-25.8-20-17.3 0-23.6 14-23.6 14s-11.4-29.5-32.6-29.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sl.svg
new file mode 100644
index 0000000..18c76d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sl.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sl" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <rect width="384" height="512" rx="4.6" ry="7.6"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(1.33333 1)">
+    <path fill="#0000cd" d="M0 341.7h512V512H0z"/>
+    <path fill="#fff" d="M0 171.4h512v170.3H0z"/>
+    <path fill="#00cd00" d="M0 0h512v171.4H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sm.svg
new file mode 100644
index 0000000..1ed18ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sm.svg
@@ -0,0 +1,89 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sm" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#19b6ef" d="M0 256h512v256H0z"/>
+    <path fill="#fff" d="M0 0h512v256H0z"/>
+  </g>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M252.9 361.8C308.8 320 369 234.6 298.5 189.7c-13.2-2.6-27.9-1.8-35 3.8-3.7-2.2-6.6-2-10.4 2-2.6-3.2-5.2-4.7-10.7-3a43.6 43.6 0 00-33.6-3.4c-61.5 37-23.9 124.6 44 172.7z"/>
+  <g stroke="#3a9d4f">
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M356.3 266.8s6.3-8.5 6.5-8.5c6.3-3.7 7-8.5 7-8.5 6.3-2 4.3-7.1 4.8-7.8a6.9 6.9 0 001.5-7.6c0-.9 2.2-8.9-.9-10 .2-8.5-5.1-7.7-9.3-2.1-4.5 1.3-5.5 5-4 9-5.8 0-6 8.5-4.3 13.3-7.8-.2-3.4 8.5-3.7 9-2.6 1.2 2 13.6 2.4 13.2zM307 339.5l4 2.4c.7 3 3.5 4.8 5.6 4.3 1 4.6 6 4 9.5 1.3 3 4.2 6.5 4.3 11.3 2.9 4.4 3.2 10 1.8 13.7-1.6 4 3.3 6.7 1 8.7-2.6 3.1.8 5.6.3 6.7-2.8 6.1-.5 3-6.2-2-8.7 4-3.4 8.5-10.6 2.2-11.7-2-1.4-5.6-1.1-8.4.2-.7-3.2-5.2-4-10-.4-1.7-3.6-7.5-1.9-10.2.6-3.5-3-7.6-3-13.7.5L307 339.5zm0-9.3c.7-4-2-11.2 2.2-12-.8-6.6.4-14.1 8-13.4 1.3-6.3 1-12.2 8.3-13 0 0 5.9-20.5 12-6.3 2.3 4 1.9 10.8-2.9 9.5 1 5-.7 9.5-6.3 9.3 2.5 3.6 1.7 8.4-1 10.7L307 330.2zm35.4-25.4l6.3-1.3c6.5-4.4 9.1-6.1 12.4-1.3 5.4-1.2 10.6-.6 10.4 3.7 6.5.4 6.4 4.5 5.7 7.8 1 5.7-1.5 13.2-5.5 4.1-12.6-7.7-19.7-6.7-39.7-2.2l10.4-10.8zm3.3-6.3c.2-.2 18.7-5 16.7-10.7 5.2-.8 6.3-6 6.5-6 10.9-3.5 10.2-9.8 10.2-9.8 3.1-3.4 8.6-6.7 7.4-12.6.4-6.7 1-10.9-8-6.5-6.8-.7-9.1 3.2-11.1 9-3.2-3.7-8.3 2.3-8.9 7.7 0 0-8.3 8-8.3 8.2l-6.9 12.8 2.4 7.9z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M346.1 284.1c-4.4-3.3-6.9-7.3-6-11.3-3-3.9-5-6.3-2.2-9.7l-2.2-8c-5.7-2.2-3.3-7-1.7-8.7-2.7-3.7-2.8-7.6-.3-11.1 0-7 4.9-4.4 9 0 0 0 6.7 4.8 1.7 9.1 5 1.7 6.5 6 3.7 7.8 4.3 2 5 5.9 2.6 8.5 4.4 3.5 2.7 8 4.1 12l-8.7 11.4z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M354 251.8c-.3-.2-7.5-9.4-5.5-10-.4-2.8-2.6-5.9-1.3-8.7-3.5-3.5-3.6-7.7-.9-11-2.4-3.3-1.3-7.7 2-10.5-1-5.3 2.7-6.6 6-7.6 2.5-8.6 6.5-6.4 8.8.2 3.4 3 2.9 7.5 1.7 10.9 4 2.7 1.6 6.1-.2 7.6l-10.7 29.1z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M352.9 206l-6.1-6.1c1.5-3.2 2.8-9-1.8-11.5-2.5-6.2-15-13.8-17.1.8-2-4.4-6-8.7-9-3.6-6.5-5.7-10-4-6.6 3.2 0 0-3 4.8 5 8.5.6.6-2.7 8.7 6.9 8.9-1.8 2.7 1.2 6.6 5 6.3-2.8 3.4 1.9 7 4.8 5.6-1.3 3.8-1.2 5.6 4 6.1l6 6.7 4.7 6.6 4.1-31.5z"/>
+    <path fill="none" stroke-linecap="round" stroke-width="2.2" d="M356.6 263c.2-.4 11.6-26.5 13.1-34.5m-12-12s2 21.3-3.3 37M322.8 195s23.3 22.4 25.5 31.6m-9.3-34s1.6 18.4 8 36.5m33.2 30.4s-23.3 19.6-34.7 36.8m12.6 32s-30.7 4.2-44.2 4.5m34 8.7s-38-1-40.8-3.7M329 292c0 .3-19.3 32.2-20 42.7"/>
+  </g>
+  <path fill="#65c7ff" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M252.7 355.7c-40.3-38-81.6-109.4-40.5-145.4 7.2 4.1 15.9.4 27.7-4.2 3.6 3.9 8.2 4.9 12.7 2 5.2 2.1 9 .4 11.5-2.4 11.6 6.8 26.5 10.3 30 3.6 40.4 38.4-.5 110-41.5 146.4z"/>
+  <path fill="#8fc753" fill-rule="evenodd" d="M252.9 354.6a227.1 227.1 0 01-45.2-61.5c2-1.8 3-2.3 4.1-5.4a46 46 0 0017.7-.3c1.6 6.1 2 11.2 5.8 16.3l8.2-16a36 36 0 0017.6 0c3.4 4.6 2.2 11.5 8.2 16.7 3.6-10.6 7.2-11.3 10.8-17 5.3 1.9 8.7 1 13-.3 2.3 2.6 1.2 2.5 5.4 6.4a206.4 206.4 0 01-45.6 61z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M205.5 175.3a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm-3.7-8.3a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm-4.4-7.6a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm-3-7.4a3.6 3.6 0 11-7 0 3.6 3.6 0 017 0zm.5-8.1a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm18.9-13.3a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm-7.1 1.2a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm-7.7 4.7a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm23.9-5.8a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm9.9.8a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017 0zm8.8-.5a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="1.1" d="M262.3 125.3a9.2 9.2 0 11-18.4 0 9.2 9.2 0 0118.3 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M271.9 130.9a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm9.3.7a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm9-.4a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm7.6-.3a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm9.5 1a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm7.4 4.7a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0z"/>
+  <path fill="#e40000" fill-rule="evenodd" stroke="#ac0000" stroke-width="2.4" d="M202 161.8l9.2 17.6h84.5l9.7-17c-5.7-3.9-9.6-6.9-17.7-5-4.7-6.7-9.7-8-17.2-7.2a12.3 12.3 0 00-8-4.2l-17.8.5c-4.6.4-8.2 4-8.4 4-7.6-1-14.5-.7-16.3 6.6-6.9-1.7-11.7.2-18 4.7z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M317.8 144.4a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm.6 8.3a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm-2.6 7.8a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zm-3.3 6.4a3.6 3.6 0 11-7 0 3.6 3.6 0 017 0zm-3.8 8a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm-50-10.2a5.3 5.3 0 11-10.5 0 5.3 5.3 0 0110.5 0zm1-12.1a6.4 6.4 0 11-12.7 0 6.4 6.4 0 0112.8 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M258.9 140.8a5.7 5.7 0 11-11.5 0 5.7 5.7 0 0111.5 0z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="1.1" d="M251.2 116.3v-4.6h-3.8l.1-3.4h3.3v-3h4.7v2.7h3.7v3.6h-3.9v4.8h-4.1z"/>
+  <path fill="none" stroke="#fd0" stroke-width="3.3" d="M210.7 179.4c-7.5-12.9-18.7-30.3-11.8-37.8 9.6-10.9 32-1 46.3-7.4 1 12.3-2.4 32.5 3.1 36.7l-5.1 4.5c-3.1-4-9-9.4-16.3.2-4.1-3.6-8.8-3-11 1.8-2.2.3-2 1.2-5.2 2zm85.5-.5c7.5-12.8 18.7-30.2 11.8-37.8-9.6-10.8-32-1-46.3-7.3-1 12.2 2.4 32.4-3.1 36.7l5.1 4.4c5-6.9 11-7.1 16.2.3 4.2-3.7 8.5-3.2 11.1 1.8 2.2.3 2 1.1 5.2 2z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M210.5 189a466 466 0 0184.5 0l3.3-9.6c-29.5-5.4-49.9-6-88.5-.7l.7 10.2z"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M249.7 351.3l.7-4.5c3 .9 5.3.5 7.8-.4l2.6-3.9-2-2.3c-1.7.4-3 2-4.2 3.4-1.7 0-3.2-.8-4.9-1.1l-1.6-6.9c-1.6-1.9-5-1.7-4.3 1.7l.4 2.6c.6 1.6.9 3.9 2 5v2.8l3.5 3.6zm1.3-19.5c-2.3 1.1-5-.8-7.8-2-2.6-.1-4.7 2-7.9 1.4.6-1.7 2-2 3-3-.7-4.4 1.6-5.9 2.3-5.9.6 0 3.2.7 3.2.7l2.6.3c1.6 2.8 3.7 5.4 4.6 8.5z"/>
+  <path fill="#ffe100" fill-rule="evenodd" stroke="#e9bf00" stroke-width="2.4" d="M235.5 390.5c7.5-12.3 60-36.8 109.2-89.9-50 48.3-81.4 60.1-122.4 89.6l13.2.3z"/>
+  <path fill="#9d4916" fill-rule="evenodd" stroke="#68300e" stroke-width="1.1" d="M307.6 334a3.8 3.8 0 11-7.6 0 3.8 3.8 0 017.6 0zm36.7-37.1a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0zm12.2-31.6a3.8 3.8 0 11-7.6 0 3.8 3.8 0 017.6 0zm-12-41a3.8 3.8 0 11-7.6 0 3.8 3.8 0 017.6 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#a9a9a9" stroke-width="1.1" d="M212.4 287.6v-16.2l-1.7-1.4v-3.8l3-.3.6-18-2-1.1-.2-3s2.2.8 2.2.2l.5-3.5s-1.3-.3-1.3-.9 1.6-1.9 1.6-1.9-.8-.8-1-1.3l-.9-3 .8-3-.5-1.7-1.4-2.5 2-1.9-.6-3c0-.5 1.3-2.8 1.6-3l2.5-3.3 4.6-1.1 5.5.8 3 2 .6 4.9s-.6 3-.8 3l-2.5 1s-2.7.3-3 0 .8 3.3.8 3.3v3.3l-.3 4.1s0 2-.2 2.2l-.9 1.1-.2 4.1 4.3 1.1-.2 2.5-3 .3.5 16.7 4.4.8v4.7l-2 1-.5 16.8h-15.3zm66.5.2v-16.1l-1.6-1.4v-3.8l3-.3.6-18-2-1.2-.2-3s2.2.8 2.2.3l.5-3.6s-1.4-.2-1.4-.8 1.7-1.9 1.7-1.9-.8-.8-1.1-1.4-.8-3-.8-3l.8-3-.6-1.6-1.3-2.5 1.9-2-.6-3a10 10 0 011.7-3l2.4-3.2 4.7-1.1 5.5.8 3 2 .5 4.8s-.5 3-.8 3-2.5 1.2-2.5 1.2-2.7.2-3 0 .9 3.2.9 3.2v3.3l-.3 4.1s0 2-.3 2.2l-.8 1.1-.3 4.1 4.4 1.1-.3 2.5-3 .3.6 16.7 4.3.8v4.6l-1.9 1.1-.5 16.7h-15.4zm-33.6.6v-16.2l-1.7-1.3V267l3-.2.6-18.1-2-1.1-.2-3s2.2.8 2.2.3l.5-3.6s-1.4-.3-1.4-.8 1.7-2 1.7-2l-1.1-1.3c-.3-.5-.8-3-.8-3l.8-3-.6-1.7-1.3-2.4 1.9-2-.6-3a10 10 0 011.7-3l2.5-3.3 4.6-1 5.5.8 3 1.9.5 4.9s-.5 3-.8 3-2.4 1.1-2.4 1.1-2.8.3-3 0 .8 3.3.8 3.3v3.3l-.3 4s0 2-.3 2.3c-.3.2-.8 1-.8 1l-.3 4.2 4.4 1-.3 2.5-3 .3.6 16.7 4.4.8v4.7l-2 1-.5 16.8h-15.3z"/>
+  <path fill-rule="evenodd" d="M216.4 287.4v-12.7h7.2V288l-7.2-.6zm33.6 1l.3-13h6.4v12.8l-6.6.3zm33.2-.2l-.5-12.2 6.8-.3v12.8l-6.3-.3zm-65-38.5h4v6.7h-4zm32.4.3h5.6v6.4h-5.6zm33 .5h5v6.1h-5z"/>
+  <path fill="none" stroke="#a8a8a8" stroke-width="1.1" d="M220.3 220.8c4.4 4.9 4.7 4.9 4.7 4.9m28-5c.7 1.7 2.1 5.3 3.8 5.5m31.2-4.6s1.3 3.8 3.3 4.3"/>
+  <path fill="#b97700" fill-rule="evenodd" d="M215.7 207c12.8-4.2-3-12.5-5.6 0-4.2.6-4.7 3.7-13.7 2.3-21.7 35.4-5.6 92.3 57.8 151.3-113.6-96.6-67.4-168-36-165.4 17.1 1.2 8.5 22.5-2.5 11.8z"/>
+  <path fill="none" stroke="#7d6c00" stroke-width="2.4" d="M219.2 188.8s10.5 2.8 10.5 7.3m0-8s7.2 3.1 8.8 6m48.1-4.8s-9.2 1.1-11.2 4m-2.8-3.3s-5.2 4.5-4.8 5.7m3.6 13.6c-.8-.4-4.4-5.2-3.6-11.2m-31.7 8s2.4-2.8 2.4-8m14.4-2l.4 11.6m10-1.6c0-.8 3.3-8.4-.3-12m-21.7-1.6s-2.8 7.6-.8 14m21.3-7.2s-4.4 1.2-6.4 3.2m-12.5-2c0-.4 4.8-1.2 6.4 1.6"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M235.3 322c.2 0 4-.7 4-2.6 2-1.2.5-4.7.5-4.7l-3.6-.7-4.9-5.6c-.2-1.7.4-3.3-.7-5-3.4.8-5.3 3.6-6.5 6.9.9 1 1 2.1 2.5 3 1.6.3 2.7-.6 4.2-.3.8 1.3.6 2.5.8 3.7 2 1.5 2.5 3.5 3.7 5.3zm-4.4-23.7v-6.6l-4.7-.1c-.6 1-1.7 1.4-2.4 2.3l-3.2 1.6c1.3 1.7 3 2.6 4 3.4 2.5.7 4.4.7 6.3-.6zm-14.8 9.7l-2.5-4.3a7.7 7.7 0 015 .3s1.1 2.7.3 3.7c-.4 1-2.9.5-2.8.3zm39 4.4a4.7 4.7 0 002.9-3.5l-4.8-5.5H249c-1-1.1-2.6-1.3-3.9-1.3 0 0 1.4 2 3.1 2.5 1.3 2.7 6.6 7.8 7 7.8zm4.6.7a16 16 0 016.5-1.4c-.2-1.7 3.1-5.7 3.1-5.7l6 7.8c-1.1.9-3 .6-4.5.9 0 0-2.9 2.8-3.2 2.9s-5.5 1.3-8-.2c-1.2-2.2.2-4.7.1-4.3zm3.4-13.7c.7-2.5 1-5 0-8 0 0-6.8-.2-6.8 0l-4.5 2s1.5 4.5 3.2 4c.8 2.4 3.1 1.8 4.2 2.6l3.9-.6zm26.5-6.8c-.9 2.8-1.4 5.8 0 8.6 1.2.2 2.6 1 3.7.8l5.5-9.8c-3.8-1.2-6.8-1.1-9.2.4z"/>
+  <path fill="#b97700" fill-rule="evenodd" d="M291.3 206c-12.8-4 3-12.4 5.6 0 4.2.7 4.7 3.8 13.7 2.5 21.6 35.3 5.6 92.3-57.8 151.2 113.5-96.6 67.4-168 36-165.4-17.2 1.2-8.5 22.5 2.5 11.8z"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M292.6 303.6c-.2 0-3.3 2.3-3.3 2.3l-4.4 1.7-4.7.1-1-3.2 3.6-3.2c-3-.5-6.1.7-8.5 3 0 0 0 3.5 2 5.3a41 41 0 004.8 4.3c2.3.4 4.4 0 5.9-1.1l5.6-9.2zm-24.8 32.2c1.5.4 12.1-13.6 12.1-13.6a10.7 10.7 0 00-5.2-5.8s-5.2 6-5.3 8.1c-.8 1.9-3.1 9-2.1 9.9-.1.2-.5 3 .5 1.4z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M198.8 338.6c-15.8-13.8-37.2-21.4-67-11 8 3.4 16.7 4.6 24.1 8.3l42.9 2.7z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M153 328.8c31.2.6 40.3 8.4 38.6 7.1"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.2" d="M199.4 340.2c-9.3 1.8-22.2 10.8-26 10.4-10.1-1.2-19.7-5.4-29.5-8.5-4.1-1.3-8.2 0-12.4 0 35-16.6 47-14.3 68-2z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M176.4 315.8s-11.7 1.6-17 2c-5.1-.4-12.7-5.2-21-14-4.4-4.8-14.3-4.2-14.3-4.2 22-4.7 39-.3 52.3 16.2zm-16-22.7c-15.9-1-35.7-15.3-40.2-32.2 0 .3 5.8 3.7 4.9 4.6 26 6.6 27.8 11.9 35.4 27.6zm26.7 27.3c2.3-14.4 3-24-4-32.5-5.5-6.5-7-10.4-11-19.5-1.1 19-5.2 34.6 15 52zm-25-40c11.8-17.2 13.8-30.2 12-50.6a88.4 88.4 0 01-4.6 11.7c-17.5 11-9.7 28.2-7.4 39z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M151.7 197.3c11.8 17.2 10 33.4 8.1 53.9a89.1 89.1 0 00-4.5-11.7c-17.6-11-5.9-31.5-3.6-42.2z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M161.4 224c28.6-14.5 17.6-32.8 22.8-46.9-19.8 14.8-22.4 30.5-22.8 46.8z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M165.3 220.3c3.6-10 10.7-27.2 11.4-27.2m-19.8 48.4c-.7-7.2-4.2-26.4-4.6-28.3"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M158.2 273.6c-16-1-33.1-22.7-37.7-39.6 0 .2 5.9 3.6 4.9 4.5 22.8 10.2 25.2 19.4 32.8 35zm-4.7-15c-11.8-17.2-13.9-30.2-12-50.6.3 1.6 4.2 11.7 4.5 11.7 17.5 11 9.7 28.2 7.5 39zm10.5-30.1c29.6-13.1 20.5-26.9 29.3-41.3-19.8 14.7-29 25-29.3 41.3z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M165.3 225.5c12-12 16.3-22 16.3-22"/>
+  <g fill-rule="evenodd">
+    <path fill="#ffe100" stroke="#e9bf00" stroke-width="2.4" d="M270.4 390.8l14.4.3c-47.7-44.8-139.3-64.3-126.5-146.6C145 333.8 233 342 270.4 390.8z"/>
+    <path fill="#9d4916" stroke="#68300e" stroke-width="1.1" d="M165.8 226.8a4.6 4.6 0 11-9.2 0 4.6 4.6 0 019.2 0zM163 252a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0zm4 36a3.8 3.8 0 11-7.6 0 3.8 3.8 0 017.6 0zm33.4 39.7a3.8 3.8 0 11-7.7 0 3.8 3.8 0 017.7 0zm4.8 11.4a3.8 3.8 0 11-7.6 0 3.8 3.8 0 017.6 0z"/>
+  </g>
+  <g fill="#fff" fill-rule="evenodd">
+    <g stroke="#000" stroke-width="1.1">
+      <path d="M222 372.3a16.7 16.7 0 01-5-6.2l-15-1.7-.2 8.6 20.3-.7z"/>
+      <path stroke-linejoin="round" d="M112.3 362.2c8.7 1.6 21.8-.8 26.1 4.8 5.2 5.8-16 14.8-13 19.8 6.5 7 13.3 4.1 20.6.3 1.8-3.8 3.1-10.5 4-12.5-2.6-6.1-9.8-9.1-8-18.4 12.2-4.6 35.5-4.2 38-2.4 2 3.8.2 5.6.6 8.7-2 3.8-7.2 10.4-7.2 14 12.7 4.4 16-.8 27.5-.5 13.4.2 21.6 3.8 24.5-1.5-2-4.6-14.3-.9-19-3.9-2.3-.8-3.8-2.6-5.8-4.7s-7.7-2.2-8.6-7.3c2.4-10.9 18.1-9.2 20.7-10.9l41 2.8c7.4-.2 11.6 13.2 1.6 17.2s-39.7-6-52.5 1c-.7-2.9-10-7.1-10.6-7.3-4 1.2-11.6.8-11.6.8-1.9 3.5-4 6-5.9 9.5-8.5-3.7-16.5 2.9-25.8 1l-14.5 1.5-9.2-.8-14 4 10-8.8-8.9-6.4z"/>
+      <path d="M111.7 360.5a3.9 3.9 0 11-7.7 0 3.9 3.9 0 017.7 0zm-1 19.1a3.9 3.9 0 11-7.8 0 3.9 3.9 0 017.8 0z"/>
+    </g>
+    <g stroke="#000" stroke-width="1.1">
+      <path d="M284 372.4c2.5-2.3 4-3.8 5-6.3l15-1.6.3 8.6-20.3-.7z"/>
+      <path stroke-linejoin="round" d="M393.7 362.3c-8.7 1.6-21.8-.8-26 4.8-5.2 5.8 16 14.8 13 19.8-6.6 7-13.3 4.1-20.7.3-1.7-3.8-3-10.5-4-12.5 2.7-6.1 9.9-9.2 8-18.5-12.1-4.5-35.4-4.1-38-2.4-2 3.9-.1 5.7-.5 8.7 2 4 7.1 10.5 7.1 14-12.7 4.5-16-.7-27.5-.4-13.4.2-21.6 3.8-24.5-1.6 2-4.6 14.3-.8 19-3.8 2.3-.8 3.8-2.7 5.9-4.7s7.7-2.2 8.5-7.3c-2.4-10.9-18.1-9.2-20.7-10.9l-41 2.8c-7.4-.2-11.5 13.2-1.5 17.2s39.6-6 52.5.9c.7-2.8 9.9-7 10.6-7.2 3.9 1.2 11.6.8 11.6.8 1.8 3.4 4 6 5.9 9.5 8.5-3.8 16.5 2.9 25.8 1l14.4 1.5 9.3-.8 14 4-10-8.8 8.8-6.4z"/>
+      <path d="M394.4 360.5a3.9 3.9 0 107.7 0 3.9 3.9 0 00-7.8 0zm1 19.2a3.9 3.9 0 107.7 0 3.9 3.9 0 00-7.7 0z"/>
+    </g>
+    <path d="M252.8 351.3c-3.5-.7-4.7-.5-7-.7l-5.5 16.9c8.4.7 16.3.7 16.3.7-5.1-1-3.9-16.8-3.8-17z"/>
+  </g>
+  <g font-family="Trebuchet MS" font-size="9" font-weight="bold">
+    <text x="448.6" y="344.3" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="448.6" y="344.3">L</tspan>
+    </text>
+    <text x="453.6" y="344.6" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="453.6" y="344.6">I</tspan>
+    </text>
+    <text x="456.7" y="345.1" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="456.7" y="345.1">B</tspan>
+    </text>
+    <text x="462.6" y="345.5" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="462.6" y="345.5">E</tspan>
+    </text>
+    <text x="468.3" y="345.6" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="468.3" y="345.6">R</tspan>
+    </text>
+    <text x="473.9" y="345.4" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="473.9" y="345.4">T</tspan>
+    </text>
+    <text x="479.3" y="344.5" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="479.3" y="344.5">A</tspan>
+    </text>
+    <text x="485.5" y="344.3" transform="translate(-581.2 -248.8) scale(1.7767)">
+      <tspan x="485.5" y="344.3">S</tspan>
+    </text>
+  </g>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M161.4 339.8c10.8 1.3 25.7.4 32.2 0m-48.4-36.7c9 7.2 28.9 11.4 28.6 11.4m11.3 2c-2.9-15-6.1-18.5-8.7-28m-46.5-16.9c15.3 6.9 17.6 11.4 27.3 18.2m5.5-15c1.3-18.4 4-23.3 8.5-27.5m-41.3-2.3a2102 2102 0 0023.7 25.3m-7.4-42.2c6.8 4.9 6.8 22.4 6.8 22.4"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sn.svg
new file mode 100644
index 0000000..fbbad5e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sn.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sn" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#0b7226" d="M0 0h170.7v512H0z"/>
+    <path fill="#ff0" d="M170.7 0h170.6v512H170.7z"/>
+    <path fill="#bc0000" d="M341.3 0H512v512H341.3z"/>
+  </g>
+  <path fill="#0b7226" d="M197 351.7l22-71.7-60.4-46.5h74.5l24.2-76 22.1 76H356L295.6 280l22.1 74-60.3-46.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/so.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/so.svg
new file mode 100644
index 0000000..96d88a9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/so.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-so" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M177.2 0h708.6v708.7H177.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(.72249)">
+    <path fill="#40a6ff" d="M0 0h1063v708.7H0z"/>
+    <path fill="#fff" d="M643 527.6l-114.3-74-113.6 74.8 42.3-121.5-113.5-75 140.4-1 43.5-121.1 44.5 120.8 140.3.1-112.9 75.7L643 527.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sr.svg
new file mode 100644
index 0000000..a0ca03e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sr.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sr" viewBox="0 0 512 512">
+  <path fill="#377e3f" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 102.4h512v307.2H0z"/>
+  <path fill="#b40a2d" d="M0 153.6h512v204.8H0z"/>
+  <path fill="#ecc81d" d="M255.9 163.4l60.2 185.2-157.6-114.5h194.8L195.7 348.6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ss.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ss.svg
new file mode 100644
index 0000000..7e6a47f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ss.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ss" viewBox="0 0 512 512">
+  <path fill="#078930" d="M0 358.4h512V512H0z"/>
+  <path fill="#fff" d="M0 153.6h512v204.8H0z"/>
+  <path d="M0 0h512v153.6H0z"/>
+  <path fill="#da121a" d="M0 179.2h512v153.6H0z"/>
+  <path fill="#0f47af" d="M0 0l433 256L0 512z"/>
+  <path fill="#fcdd09" d="M209 207.8L64.4 256l144.8 48.1-89.5-126v155.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/st.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/st.svg
new file mode 100644
index 0000000..da5df29
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/st.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-st" viewBox="0 0 512 512">
+  <path fill="#12ad2b" d="M0 0h512v512H0z"/>
+  <path fill="#ffce00" d="M0 146.3h512v219.4H0z"/>
+  <path fill="#d21034" d="M0 0v512l192-256"/>
+  <g id="c" transform="translate(276.9 261.5) scale(.33167)">
+    <g id="b">
+      <path id="a" d="M0-200V0h100" transform="rotate(18 0 -200)"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" x="700" transform="translate(-550.9)" xlink:href="#c"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sv.svg
new file mode 100644
index 0000000..e824395
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sv.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-se" viewBox="0 0 512 512">
+  <path fill="#066aa7" d="M0 0h512v512H0z"/>
+  <path fill="#fecc00" d="M0 204.8h512v102.4H0z"/>
+  <path fill="#fecc00" d="M134 0h102.4v512H134z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sx.svg
new file mode 100644
index 0000000..5d9fadf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sx.svg
@@ -0,0 +1,56 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sx" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h450v450H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="scale(1.1378)">
+    <path fill="#ed2939" fill-rule="evenodd" d="M0 0h675v225H300L0 0z"/>
+    <path fill="#002395" fill-rule="evenodd" d="M0 450h675V225H300L0 450z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 0l300 225L0 450V0z"/>
+    <path fill="#ff0" d="M151.4 169.8l.1-3.4s-1.9-3 .3-6.2c0 0-4.6-2.5-3.5-6.3 0 0-4.2-1-3.9-5.6 0 0-4.5-.3-5-4.2 0 0-4.5.8-6.4-3 0 0-4.4.9-5.7-2.2 0 0-4.2 1.5-6.8-2.1 0 0-4.5 1.8-6.4-1.6-1.8 3.4-6.3 1.6-6.3 1.6-2.5 3.6-6.8 2-6.8 2-1.2 3.2-5.6 2.3-5.6 2.3-2 3.7-6.5 3-6.5 3-.4 3.8-5 4.1-5 4.1a5.3 5.3 0 01-3.7 5.7c1 3.8-3.5 6.2-3.5 6.2 2.2 3.2.3 6.2.3 6.2v3.2l74.4.3"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M377.2 843.1v-3.5s-1.8-3 .4-6c0 0-4.6-2.5-3.5-6.3 0 0-4.2-1-3.9-5.6 0 0-4.5-.3-5-4.1 0 0-4.4.7-6.3-3 0 0-4.4.8-5.6-2.2 0 0-4.3 1.5-6.8-2.1 0 0-4.5 1.8-6.3-1.6-1.9 3.4-6.4 1.6-6.4 1.6-2.4 3.5-6.7 2-6.7 2-1.2 3.1-5.5 2.3-5.5 2.3-2 3.7-6.5 3-6.5 3-.4 3.7-4.9 4-4.9 4a5.1 5.1 0 01-3.7 5.6c1 3.8-3.5 6.2-3.5 6.2 2.2 3.2.3 6.2.3 6.2v3.2l73.9.3z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="red" d="M149.7 165.5c-11.7-1.2-25.2-4-35.6 1.9-7-4.1-16.7-3.9-25-3-4.4.7-9.7.7-14.4 1.5l-.7.1c-8.6.6-16.3-2-23.7-5.2 2.4 13.3 5 27 6.3 41 2.8 20.6-9.8 38-4.7 58.4 3.1 9.8 13.9 15.5 23.8 16.6a188.7 188.7 0 0128.2 4 28 28 0 014.9 1.7 17.3 17.3 0 015.7 4c5.4-5.5 13.2-7 21-7.8 13.8-1.7 31-.8 39.5-13.4v-.7c4.6-7 4-17.6 2-25.5-.2-2.7-.9-5.1-1.3-7.8-8.5-22.4-1.2-47.6 2.4-70.2-4.4 2.4-9.4 3.6-14.4 4.8-4 .5-8.3.3-12.4 0l-1.6-.4"/>
+    <path fill="#80cfe1" d="M167.2 229.9c-.1 1.5.7 2.6 1 4 1.6 9.8 3.2 22.8-7 28.9-11 7-25.7 4-38.6 7.8-2.6.7-6.2 3-8 4.7-1.2-.7-2.3-1.9-3.8-2.6-10.7-5.6-24.5-3.8-36.5-6.8-6-2-12.3-6.6-13.9-12.8-3.9-16.2 5.5-30 4.4-46a195.7 195.7 0 00-5.6-35.6 50 50 0 0030.8 3c7.8-1 17-1 24.2 2.2a49 49 0 0113.1-3c8.3.8 17.2 2.3 25.7 2.3a44 44 0 0015.8-4.2c-3 19-8.6 39-1.7 58"/>
+    <path fill="#fff" d="M150.3 233.7l-.1-17.9h2.2L125 198.1V189h2.6l-13.7-9.8-13.6 9.8h2.6v9.1l-27 17.7h2l.2 17.8h72"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M376 906.5v-17.8h2.1l-27-17.5-.1-9h2.6l-13.6-9.8-13.5 9.7h2.6l.1 9.1-27 17.5h2.2v17.7H376z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#fff" d="M158.7 257.1v5.6h-88V257h88"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M384.4 929.8v5.5H297v-5.6h87.4z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#fff" d="M76.5 256.8v-19H80l-.2 19.2.2-19-5-.1v-4h78.6v4h-4.9l.1 19.2-.1-19.2h3.6v19"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M302.8 929.4v-18.8h3.5l-.2 19 .2-18.8-5-.2v-4l78 .1v4h-4.8l.1 19-.2-19h3.6l.1 18.8" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M319.6 924.8v-13.1H309v13l10.5.1" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M312 914.4v7.6h4.8v-7.6h-4.9m59 10.4l-.1-13h-10.4v13h10.5" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M363.2 914.5v7.6h4.8v-7.6h-4.8m7.6-11v-13h-10.5v13h10.5z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M363.1 893.2v7.6h4.8v-7.6h-4.8m-43.6 10.3v-13.1H309v13h10.5z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M311.9 893.1v7.6h4.8v-7.6h-4.8m26.6 10.4v-13.1H328v13h10.5" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M330.8 893.1v7.6h4.8v-7.6h-4.8m22.3 10.4v-13l-10.5-.1v13l10.5.1" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M345.4 893.1v7.6h4.9v-7.6h-4.9" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#fff" d="M129.8 226.7l.1 30.4H99.4l-.1-30.5h30.5"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M355.7 899.5l.1 30.2h-30.3l-.1-30.2h30.3zm-30.5 8.6h30.6M329 929.7v-21.4m23.1 21.4v-21.3m14.7-21.8l-17-12.4h-19.3l-17 12.4h53.3M332 863.8v7.6h16.2v-7.6H332" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M336.4 865.7v3.8h7.4v-3.8h-7.4M340 855l9 6.4h-17.9l9-6.4" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#fff" d="M150.6 177.6c2.6 0 3.2 10.6 3.2 15.9a24 24 0 019.3 6.5h-24.8a24 24 0 019.1-6.5c0-5.3.6-16 3.2-15.9"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M376.3 850.8c2.6 0 3.2 10.5 3.2 15.8 2.2.6 7.1 3.7 9.2 6.4h-24.6c2.1-2.7 7-5.8 9.1-6.4 0-5.3.6-15.8 3.1-15.8m-49.5 49.5h2.2l-.6 1.2s1 1.4 0 3l.6 1h-2.2l.6-1s-1-1.8 0-3l-.6-1.2m4.5 0h2.2l-.6 1.2s1 1.4 0 3l.6 1h-2.2l.6-1s-1-1.8 0-3l-.6-1.2m5 0h2.1l-.6 1.2s1 1.4 0 3l.6 1h-2.1l.5-1s-1-1.8 0-3l-.6-1.2zm5.5 0h2.2l-.7 1.3s1.1 1.3 0 2.9l.6 1h-2.1l.6-1s-1-1.8 0-3l-.6-1.1zm4.9 0h2.2l-.7 1.3s1.1 1.3 0 2.9l.6 1h-2l.5-1s-1-1.8 0-3l-.6-1.1m4.9 0h2.2l-.7 1.2s1.1 1.3 0 2.9l.6 1h-2l.5-1s-1-1.8 0-3l-.6-1.1" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#ff0" d="M114.7 296a82 82 0 0032-5.6l14.6-1.3.2 17.6c-12.2 6.8-40.5 8.3-46.8 8.2-6.2 0-34.9-1.4-47.2-8.2l.2-17.7 14.5 1.3a86.9 86.9 0 0032.5 5.8"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M340.7 968.4c11.4 0 25.3-2.3 31.9-5.7l14.3-1.2.3 17.5c-12.1 6.7-40.3 8.2-46.4 8.1-6.2 0-34.7-1.4-47-8.2l.2-17.5 14.4 1.3c6.6 3.4 21 5.7 32.3 5.7" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#ff0" d="M30.2 220.7l12.8 4-3.9 20.7-12 1.9s-2-10.9 3.1-26.6"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M256.9 893.6l12.6 4-3.8 20.5-12 1.9s-2-10.8 3.2-26.4z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#7e7e7e" d="M39.1 245.2l-12 2.1 7.6-10.9 4.4 8.8"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M265.7 917.9l-12 2 7.6-10.7 4.4 8.7" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#ff0" d="M22.6 235.6l12.3.9c.3 10.4 1.5 50.1 49 52.3l-1.5 14.5c-57.8.6-62.1-48.8-59.8-67.7"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M249.3 908.4l12.2.8c.3 10.4 1.5 49.8 48.7 52l-1.5 14.4c-57.4.6-61.7-48.4-59.4-67.2zm44.8 70.1l14.4-3.1" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#ff0" d="M198.1 220.8l-12.7 4 4 20.7 12.1 2s2-11-3.4-26.7"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M423.5 893.7l-12.6 4 4 20.5 12 2s2-10.8-3.4-26.5z" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#7e7e7e" d="M189.4 245.3l12.1 2.1-7.7-10.8-4.4 8.7"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M414.9 918l12 2.1-7.7-10.7-4.3 8.6" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#ff0" d="M205.9 235.7l-12.3.9c-.2 10.4-1.1 50.2-48.6 52.3l1.6 14.4c57.8.7 61.8-48.7 59.3-67.6"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M431.2 908.5l-12.2.8c-.2 10.4-1 49.9-48.2 52l1.6 14.3c57.4.7 61.3-48.3 58.8-67zm-44.2 70l-14.4-3" transform="matrix(1.0075 0 0 1.0074 -228.6 -679.5)"/>
+    <path fill="#009fc5" d="M107 304.8c-.3.2-.8.2-1.3.2l-2.3-.1.2-2.9 2.3.1c.4 0 .8.2 1 .3.5.2.7.7.6 1.3 0 .5-.2.9-.5 1m-3.9 4.6l.3-3.5 2.6.2a3 3 0 002-.6c.4-.5.7-1 .7-1.7a2.2 2.2 0 00-.6-1.8 2.8 2.8 0 00-1.8-.7l-3.8-.2-.5 8.2h1.1m8.4-6.8h2.8l1 .2c.3.2.5.6.5 1.2s-.1 1-.4 1.2c-.3.2-.8.3-1.3.3h-2.7v-2.9m0 7.3v-3.5h2.6c.5 0 .9 0 1.1.2.4.1.6.5.6 1v1.4l.1.7.1.3h1.4v-.2a.7.7 0 01-.4-.5v-1.8c0-.5-.2-.9-.4-1a1.5 1.5 0 00-.7-.6l1-.7.2-1.3c0-.9-.4-1.6-1.2-1.9a4.1 4.1 0 00-1.6-.3h-3.9v8.2h1.1m8.8-1.7a4 4 0 01-.9-2.3c0-1.2.2-2 .7-2.6.5-.7 1.2-1 2.1-1 1 0 1.6.2 2.2.8.5.5.9 1.3 1 2.3 0 .9-.2 1.7-.6 2.4-.5.7-1.1 1.1-2.2 1.2-1 0-1.8-.2-2.3-.8m-1.4-5.2a4.7 4.7 0 00-.7 2.9 4.7 4.7 0 001.2 3 4 4 0 003.1 1 3.9 3.9 0 003.2-1.5 5 5 0 00.8-3.1 4.4 4.4 0 00-1-2.8c-.8-.9-2-1.3-3.4-1.2-1.5 0-2.5.6-3.2 1.7m38.7-11.9a4.2 4.2 0 012.1.1c1 .3 1.6 1 2 2l-1.2.2a2 2 0 00-1-1.2 3.1 3.1 0 00-1.7-.1 2.6 2.6 0 00-1.9 1.1c-.4.7-.5 1.5-.3 2.7.1 1 .5 1.7 1 2.2.6.6 1.3.8 2.3.6a2.8 2.8 0 001.8-1c.4-.4.6-1.2.4-2.1l-2.6.4-.2-.9 3.7-.6.7 4.4h-.7l-.4-1a4 4 0 01-1 1 3.8 3.8 0 01-1.8.8 3.8 3.8 0 01-2.7-.6 4.5 4.5 0 01-1.7-3 4.5 4.5 0 01.6-3.4 3.6 3.6 0 012.6-1.6m8.4-.6l2.6-1a2 2 0 011-.1c.4 0 .8.3 1 .9.2.5.2.9 0 1.2l-1.1.7-2.5 1-1-2.7m2.6 6.8l-1.3-3.3 2.5-.9a3 3 0 011-.2c.4 0 .7.3 1 .8l.5 1.3.3.6.2.2 1.3-.5v-.1c-.2 0-.4-.2-.6-.4l-.3-.6-.4-1c-.2-.5-.4-.8-.7-1a2.1 2.1 0 00-.9-.2c.3-.3.5-.6.6-1a2.2 2.2 0 00-.1-1.2c-.4-.9-1-1.4-1.9-1.4-.4 0-1 0-1.6.2l-3.7 1.4 3 7.7 1.1-.4m9.6-4l-4.7-7 5.2-3.3.6.9-4.3 2.7 1.5 2 3.9-2.4.5.8-3.9 2.5 1.6 2.3 4.3-2.8.6.8-5.3 3.4m4.2-12.1l1.3-1.5c.6-.7 1.3-1 2-.9a4 4 0 012.3 1.1 4 4 0 011.2 1.9c.2.5.1 1 0 1.4l-.6.7-1.4 1.5-4.8-4.2m7 3.2c1-1 1.3-2.2.7-3.5a5.9 5.9 0 00-1.5-2 4.6 4.6 0 00-2.7-1.2 3.2 3.2 0 00-2.8 1.2l-2.3 2.4 6.4 5.6 2.3-2.5m4.9-6.4l-7.3-4.3.6-1 7.3 4.3-.6 1m2.9-5l-8-3.1 2.4-5.6 1 .4-2 4.6 2.4.9 1.8-4.2 1 .4-1.8 4.2 2.6 1 2-4.6 1 .4-2.4 5.6m3.6-9.7l-8.3-1.8.3-1.3 7.6-2.6-6.7-1.4.2-1 8.3 1.7-.2 1.3-7.7 2.6 6.7 1.5-.2 1m-.7-10.5l.1-1c.5 0 1 0 1.2-.3.6-.3 1-.9 1-1.8v-1.2c-.2-.7-.6-1-1.2-1.1-.5 0-.8 0-1 .3-.2.3-.5.7-.6 1.3l-.4 1-.7 1.6c-.4.5-1 .7-1.7.6a2.5 2.5 0 01-1.8-1c-.5-.5-.6-1.2-.5-2.2 0-.8.3-1.5.8-2.1.5-.5 1.2-.8 2.1-.7v1c-.5 0-.9.1-1.1.3-.5.3-.8.8-.8 1.7-.1.6 0 1 .2 1.4.3.3.6.5 1 .5s.7 0 1-.4l.6-1.4.3-1.1c.2-.6.4-1 .7-1.3a2.2 2.2 0 011.8-.6c1 .1 1.6.5 2 1.2.3.7.4 1.5.3 2.4a3 3 0 01-1 2.3 3 3 0 01-2.3.6M28.2 252l.2 1c-.4.1-.8.3-1 .6-.6.4-.7 1-.6 2l.4 1.1c.4.6.9.9 1.5.8.4-.1.7-.3.9-.6l.2-1.4v-1.2l.4-1.6c.2-.5.7-.9 1.4-1a2.5 2.5 0 012 .5c.6.4 1 1 1 2a3 3 0 01-.2 2.3c-.3.6-.9 1-1.8 1.2l-.2-1c.4-.2.7-.3 1-.6.3-.4.4-1 .3-1.8-.1-.6-.3-1-.7-1.3a1.3 1.3 0 00-1-.3 1 1 0 00-.8.7 4 4 0 00-.2 1.5v1.2a3 3 0 01-.4 1.4 2 2 0 01-1.5 1c-1 .2-1.7 0-2.2-.6a4.3 4.3 0 01-1-2.2 3.4 3.4 0 01.3-2.5 2.7 2.7 0 012-1.2m-.5 10.9l8.1-2.5 2 5.7-1 .4-1.6-4.7-2.5.7 1.4 4.3-1 .3-1.3-4.3-2.8.8 1.6 4.8-1 .3-1.9-5.8m3.6 9.9l7.5-4 .8 1.4-5.2 5.4 7.5-1.2.8 1.3-7.5 4-.5-1 4.4-2.3.8-.4 1.1-.6-7.5 1.3-.5-1 5.1-5.4-.3.2-.8.4a6.1 6.1 0 01-.8.5l-4.4 2.3-.5-1m13.9 11c-.4 0-.7-.2-1.1-.6l-1.6-1.6 2.1-2 1.6 1.6.6.9c.2.5 0 1-.4 1.3-.4.4-.8.6-1.2.5m-6 .7l2.6-2.4 1.8 2a3 3 0 001.9.8 2.6 2.6 0 001.7-.8c.5-.5.8-1 .8-1.7 0-.6-.3-1.1-.8-1.7l-2.6-2.7-6.2 5.7.8.8m7.5 6.6l4.4-7 5.3 3.2-.5.9-4.4-2.6-1.3 2.1 4 2.4-.6.8-4-2.4-1.5 2.4 4.4 2.6-.5.9-5.4-3.3m13.3-1.3l2.7.8.8.5c.3.3.4.8.2 1.3-.1.5-.4.8-.8 1l-1.3-.1-2.5-.8.9-2.7m-2.3 6.9l1-3.4 2.6.8 1 .5c.2.3.3.7.1 1.2L62 297l-.2.7v.2l1.4.5v-.2l-.2-.6c0-.1 0-.4.2-.7l.3-1c.1-.5.2-.8 0-1a1.7 1.7 0 00-.5-.8c.4-.1.8-.2 1.1-.5.3-.2.5-.6.7-1 .3-1 .1-1.7-.5-2.3-.4-.2-.8-.5-1.5-.7l-3.7-1.2-2.6 7.8 1 .4"/>
+    <path fill="#bc715f" d="M69 154.4c1-2.4 9.9-8.7 39.4-6 0 0 5 3.1 7.9 2.7 1.6-.2-1 .1-3.2-1.7s-2.7-5.5 2.4-5.4c5 .1 24 1.2 24.3 2.9.3 1.7-10 2.4-13.8 2.3-3.9 0-3.4 1.9.4 1.7 12-.4 25-4.6 39 5.2 1.6 1.1-4.3 1.3-8.8-.6 0 0-12.2.7-17.4-.2 0 0-4 3.3-9.4 3 .7 1.7-2 8-18.5 3.3-2.8.8-12.7 2.5-11.7-.5-2.6 0-7.2.8-7.9-.7-.6-1.4 8.1-3.7 9.7-5.3 0 0-18.6.2-22.1-1 0 0-11 2.4-10.3.3"/>
+    <path fill="#008737" d="M75 180.4c.3-.5.5-1.5 1.3-1.5 1.9.5 3.1 3.9 5.4 1.7.8-.2 1 .9 1.7 1 .5 1.9 2-.3 3-.2a14.2 14.2 0 018.3-.8c0 1.8-1.4 3.8-3.2 4.9 0 1.8 1.7 3 1.7 4.9-.3.7 0 1.8-1 2-1.4-.3-2.7-.4-3.8-1.1-.2-.2-.3-.4-.5-.4-.2.7.8 1.3 1.2 2-.7 1-1.8 0-2.7 0-.3.7 0 1.5-.7 2-1.2-.1-1.5-1.4-2.2-2-.7.8.6 1.3.7 1.9-.4 2.4-.4 4.8-2.8 6.4l-1.6.8c-.4-1.3-.2-3.1-.5-4.4-1 1.6-1.7 3-3 4.3-1.7-.6-2.7-2.5-3-4.1a5.1 5.1 0 011.2-5.5c-.5-1-2.3-.7-2.5-2.1-2.6-1.7-4 3-5.7.5A7.6 7.6 0 0168 184c-.3-1-1.5-.7-2.2-1.2-1.7-1.4-4-2.8-3.9-5.3a12.3 12.3 0 0113 2.9"/>
+    <path fill="#ff0" d="M77.2 180.2c0 2 1.4.5 2.5 1.7-.9-.3-1.5 1.5-2.3.5l-.6.5c.3.7 1 .8.3 1.5-.9.4-1-.8-1.5-1.2 0-.2.1-.6-.2-.7-.5.4-1 .6-1.8.5-.2-.4-.6-1-.2-1.2.7-1 1.8.3 2.3-.3.1-.6-.4-1.3.3-1.8.4.1 1-.1 1.2.4m5.5 1.7c0 .4-.2 1 .3 1.2.7-.3 1.4 0 1.8.6 0 .4.1.8-.4 1l-1-.2c0-.2-.3-.3-.4-.5-.5-.2-.7.2-1 .4.2.4.8.7.6 1.2-.6.6-.9-.6-1.6-.3-.4-.2.2-1.1-.5-1.4-.9 0-.3 1.4-1.4.9-.4-.5-.8-1-.3-1.6a1.4 1.4 0 011.6.2c.7-.7.7-3.6 2.3-1.5m-6.8 3c.4.6-.1 1.5.4 2.2 1-1.7 1.8.4 2.9.2.3.4 0 1 .1 1.4-1.3.4-2.9.8-4-.3l-.4.4c.7.6 1.4 1.4.8 2.5-1 .2-2.5.2-3-.8-.2-.9.6-1.5-.3-2.1-.6.8-.6 1.9-2 1.1a1.6 1.6 0 01-.7-2.2c1-1.4 2.5 0 3.4-.7.2-1.2-.3-2.2.8-2.9 1-.1 1.4.6 2 1.2"/>
+    <path fill="#fff" d="M79.6 185.5c-.4 2-2-.1-2.7-.2 1-1.7 1.6.6 2.7.2m4.8 2.2c-1 .3-1-1-1.5-1.5l.5-.4 1 2"/>
+    <path fill="#ff0" d="M83 187.3c.2.7-.8 1.3.1 1.8l.7-.7c.8.2 1.6.4 2.1 1 .6 1.6-1 1.6-1.8 2h-.8c.2-.5-.4-.7-.6-1a.8.8 0 00-.9.4c.2 1 1.4 1.7.1 2.5-1 0-2.5.4-2.4-1-.4-.8 1-2-.5-2-.5 1-1 2-2.3 1l.1-1.5c1.2 0 2.7.2 3.3-1.2.3-1-.6-1.9.2-2.7 1.3-.3 2 .6 2.6 1.4"/>
+    <path d="M82 189.6c.4.8-.5.8-1 1.2-.5 0-.8-.2-1.2-.6-.2-.9.5-1 1-1.3.6-.3.8.4 1.2.7"/>
+    <path fill="#fff" d="M81.3 190c-.1.3-.3.2-.5.3l-.2-1c.4 0 .9.2.7.8"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sy.svg
new file mode 100644
index 0000000..904dc1f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sy.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sy" viewBox="0 0 512 512">
+  <rect width="512" height="170.7" y="170.7" fill="#fff" fill-rule="evenodd" rx="0" ry="0"/>
+  <rect width="512" height="170.7" y="341.3" fill-rule="evenodd" rx="0" ry="0"/>
+  <path fill="red" fill-rule="evenodd" d="M0 0h512v170.7H0z"/>
+  <path fill="#090" fill-rule="evenodd" d="M151.4 299.7l-30.8-22.2L90 300l11.4-36.6L70.9 241l37.8-.3 11.7-36.5 12 36.4H170l-30.4 22.8 11.7 36.4zm285.4 0l-30.7-22.2-30.6 22.5 11.4-36.6-30.5-22.5 37.7-.3 11.7-36.5 12 36.4h37.8l-30.4 22.8 11.6 36.4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sz.svg
new file mode 100644
index 0000000..b3009e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/sz.svg
@@ -0,0 +1,45 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sz" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M124 0h496v496H124z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
+    <path fill="#3e5eb9" fill-rule="evenodd" d="M0 0h744v496H0z"/>
+    <path fill="#ffd900" fill-rule="evenodd" d="M0 88.6h744v318.9H0z"/>
+    <path fill="#b10c0c" fill-rule="evenodd" d="M0 124h744v248H0z"/>
+    <rect width="602.4" height="10.6" x="74.2" y="242.7" fill="#ffd900" fill-rule="evenodd" stroke="#000" stroke-width="1.3" rx="5.2" ry="5.3"/>
+    <g stroke="#000" transform="translate(-609.5 -24.8)">
+      <path fill="#fff" fill-rule="evenodd" stroke-width="3.9" d="M-106.3 265.8l-88.6 35.4 88.6 35.4 88.6-35.4-88.6-35.4z" transform="matrix(.34 0 0 .3 1256.8 136.4)"/>
+      <rect width="442.9" height="7.1" x="761.8" y="223.2" fill="#ffd900" fill-rule="evenodd" stroke-width="1.3" rx="3.9" ry="3.5"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1806.3 90.3)"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1802.8 90.3)"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1799.2 90.4)"/>
+    </g>
+    <g stroke="#000" transform="translate(-637.8 -3.5)">
+      <path fill="#fff" fill-rule="evenodd" stroke-width="3.9" d="M-106.3 265.8l-88.6 35.4 88.6 35.4 88.6-35.4-88.6-35.4z" transform="matrix(.34 0 0 .3 1256.8 136.4)"/>
+      <rect width="442.9" height="7.1" x="761.8" y="223.2" fill="#ffd900" fill-rule="evenodd" stroke-width="1.3" rx="3.9" ry="3.5"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1806.3 90.3)"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1802.8 90.3)"/>
+      <path fill="none" stroke-width="2.5" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1799.2 90.4)"/>
+    </g>
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#3d5da7" stroke="#000" d="M338-.4c-5.5 12.4 4.3-4.1 28.4 16.7 4.4 3.8 8.3 14 8.3 21.1-1.1-1-2-3-3.2-4.5-1.8 2.3 1.7 12.6 2.2 17.5-3.8-2.7-3.4-4-4.7-7.4.3 4-.6 15.2.9 19.4-3-1-2.8-4.1-4.3-4.8 1 4.9-1 10.1-.4 15.6-1.8-2.2-3.6-4-4.4-4.9-.1 2.6-3.3 9.4-3.4 11.9-1.5-1.2-1.9-3-2.1-4.2-1.8 3-8.3 14-8.7 17.2-5-5.7-17.8-19.5-19.5-26.9-1.5 4.2-3.6 5.6-7.8 8.7-1.7-11.7-8-24.8-4.6-34.8a84.4 84.4 0 00-6.6 5.9A67.9 67.9 0 01338-.4z" transform="matrix(.96345 0 0 .74716 308.4 244.1)"/>
+      <path fill="#a70000" d="M614.1 289.9c2.3-4.5 4.3-6 5.8-8.8 2.5-5 2.9-9 5-8.5 2.3.6 2.3 2.7-.6 7.7-2.8 5-4.2 6-10.2 9.6zm15.1 10.6c-.3-3.4.7-4.8.5-7-.3-3.9-1.8-6.5.2-6.7 2-.2 3 1.1 3 5s-.6 4.9-3.7 8.7zm11.4 6.6c-.8-4.7-.2-6.8-.8-9.9-1-5.3-3-8.9-1-9.4 1.9-.5 3 1.3 3.7 6.7.8 5.5.4 7-1.8 12.6zm12-33.2c-2.9-2-4.5-2.2-6.3-3.6-3.2-2.4-4.8-5-5.8-3.7-1 1.3-.3 2.7 3 4.9 3.4 2.2 4.5 2.4 9 2.4zm-2 15.8c-1.5-3.1-3-3.9-4-5.8-1.7-3.5-1.7-6.5-3.5-5.7-1.8.7-2 2.3 0 5.7 2 3.3 3 3.9 7.5 5.8z"/>
+    </g>
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#3d5da7" stroke="#000" d="M329.6 20.7c-.3-2.7.3-3-1.3-5 2.2 1 2.3 3.7 5 1.8 1-.6 1.4-.6.2-3.5 2.8 0 12 3.5 13.4 3.6 3.9.2 10.9-4.4 15.7 1.2 4.7 5.1 3.1 10.4 3.1 17.5-1.8-1-1-1.4-3-4 1.6 6.2 0 17.4 0 24-.8-1.6-.7-1-1.4-2.6-2 6-4.4 7.3-4.4 14.3-.7-2.7 0-2.2-.8-3.6-2 4.5-15 8.4-10 13-4.4-2.8-6.4-2.5-8.5-5.1-.9.6-1.6 1.8-2.4 3.4-8-4-5-12.5-11.3-18.2-1 2.4-.6 2-1.8 5.9-1.2-5.4-1.6-8.9-3-12.8-1.2 2.2-1 1.3-3.3 4.7-1-6.6-2.4-8.2-1.8-12.5-2.4 1.8-.8 1-3.2 3.3 2.2-17 11.9-29.4 18.8-25.4z" transform="matrix(1.1018 0 0 1.01684 -263 231.7)"/>
+      <path fill="#a70000" d="M89.4 280.8c2.3-5.5 4.3-7.3 5.8-10.8 2.5-6.3 3-11.3 5.1-10.5 2.2.7 2.1 3.3-.8 9.5a24.7 24.7 0 01-10 11.8zm8.6 13.8c.9-5 2.3-6.8 2.9-10 1-5.6.4-9.7 2.4-9.5 2 .2 2.5 2.3 1.2 8-1.4 5.5-2.3 6.8-6.5 11.5zm10.2 9.6c.2-4.8 1.4-6.7 1.5-9.8.3-5.4-.7-9.3 1.2-9.3 2 0 2.6 2 2 7.4-.6 5.4-1.3 6.8-4.7 11.7zm21.9-31.4c-4.2-4.2-6.7-5-9.4-7.6-4.8-4.7-7.1-9.2-8.8-7.6-1.7 1.6-.7 4 4.3 8.4 5 4.5 6.8 5.2 13.9 6.8zm-2.5 16.2c-2.8-4.2-4.8-5.3-6.5-8-3.2-4.8-4.2-8.8-6-7.8-1.8 1-1.4 3.1 2 7.7s4.7 5.4 10.5 8z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#fff" stroke="#000" stroke-width="2" d="M637.8 230.3c-53.1 59-124 177.2-265.8 177.2-124 0-212.6-118.1-265.7-177.2C159.4 171.3 248 53.2 372 53.2c141.8 0 212.6 118 265.8 177.1z" transform="matrix(.66667 0 0 .6 124 109.8)"/>
+      <path d="M359.7 178.7c9.4 10.6 1.5 14.9 11.5 15.6 10.5.7 4.6 11.2 13.4 11.5 6.2.3-.6 25 5.4 33.2 6 8.5 11.1 2.5 11.2 8.6.1 6.4-16.5 5.7-16.8 25.3-.5 11.3-14 12-14.7 19.3-.8 6.8 26.7 10.6 26.3 16.8-.3 6-29.6 5-30.9 12-.6 6.3 40.2 11.4 43.5 29.4-6 2-23.4 4-36.6 4-82.6 0-141.7-71-177.1-106.4 35.4-35.4 94.5-106.3 177.1-106.3 0 0-24.5 22.5-12.3 37z"/>
+      <path fill="#fff" stroke-width="1pt" d="M261 210.2h8.6v28.4H261zm0 47.3h8.6v28.3H261zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.1-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4H347zm0 47.3h8.6v28.3H347z"/>
+      <path stroke-width="1pt" d="M391 210.2h8.5v28.4H391zm0 47.3h8.5v28.3H391zm17.1-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.2-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6zm17.1-47.3h8.6v28.4h-8.6zm0 47.3h8.6v28.3h-8.6z"/>
+    </g>
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#3d5da7" stroke="#000" d="M338-.4c-5.5 12.4 9.8-4.1 33.8 16.7a51.2 51.2 0 0110.9 26.2c-5.1-1.2-14.2-7-14.2-7s10.6 12.2 10.6 26.4c-3.7-2.7-5.6-2.3-6.8-5.6 0 4.5 3.3 7.5 3.3 14.6a49.8 49.8 0 00-7.3-5.7c3.5 7.1-6.5 20.9-1.5 25.5-8.7-1.5-17.7-8-21.2-15-1.9 1.4-2 3.7-2.2 6.2.3.2-13.3-11.7-12-16.3-1.9 3-2.1 4.6-2.5 8a44 44 0 01-11.3-18.8l-4.6 6.7c-1.6-11.7-1.6-11.3 1.7-21.3a84.4 84.4 0 00-6.6 5.9A67.8 67.8 0 01338-.4z" transform="matrix(.8811 0 0 .76298 16.9 161)"/>
+      <path fill="#a70000" d="M302.6 207c.8-6.5 2.5-9 3-13.2 1-7.4-.1-12.9 2.5-12.7 2.6.1 3.4 2.9 2.1 10.3s-2.4 9.1-7.6 15.6zm13.7 12c-.5-5.6.5-7.9.2-11.5-.6-6.2-2.5-10.4-.2-10.8 2.3-.4 3.4 1.7 3.7 8 .2 6.3-.4 8-3.7 14.3zm21.4 9.7c-2.3-4.7-4.3-6.2-5.8-9.2-2.6-5.4-3.2-9.9-5.2-9-2 .7-2 3 1 8.3 3 5.3 4.3 6.4 10 10zm7.4-42.7c-5.9-3.2-9-3.2-12.8-5.2-6.7-3.5-10.6-7.5-12-5.3-1.4 2.2.5 4.4 7.4 7.6 7 3.2 9 3.3 17.4 2.9zm2.2 17.8c-4.3-3.6-6.9-4-9.6-6.4-5-4-7.4-8-9-6.4-1.7 1.6-.6 3.7 4.6 7.5 5.1 3.9 6.9 4.3 14 5.3z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tc.svg
new file mode 100644
index 0000000..1029615
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tc.svg
@@ -0,0 +1,74 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tc" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)">
+    <path fill="#006" d="M1024 512V0H0v512h1024z"/>
+    <path fill="#006" fill-rule="evenodd" d="M0 0h512v256H0z"/>
+    <g stroke-width="1pt">
+      <path fill="#fff" d="M0 0v28.6L454.8 256H512v-28.6L57.2 0H0zm512 0v28.6L57.2 256H0v-28.6L454.8 0H512z"/>
+      <path fill="#fff" d="M213.3 0v256h85.4V0h-85.4zM0 85.3v85.4h512V85.3H0z"/>
+      <path fill="#c00" d="M0 102.4v51.2h512v-51.2H0zM230.4 0v256h51.2V0h-51.2zM0 256l170.7-85.3h38.1L38.2 256H0zM0 0l170.7 85.3h-38.2L0 19.1V0zm303.2 85.3L473.8 0H512L341.3 85.3h-38.1zM512 256l-170.7-85.3h38.2L512 236.9V256z"/>
+    </g>
+    <path fill="#fff" d="M493.6 140.9v116.5c0 95.6-37.6 183.1-149 236.4-111.4-53.3-149-140.8-149-236.4V140.9h298z"/>
+    <path fill="#fdc300" d="M483.6 152.8v108.6c0 89.2-35 170.9-139 220.5-104-49.6-139-131.3-139-220.5V152.8h278z"/>
+    <g stroke="#000" stroke-width=".1">
+      <path fill="#ff9e3d" d="M206 52.9a2 2 0 00-1.3-.5c.1-1.3-.8-1.8-1.5-2-.7-.3-1-.6-1-1.1-.1-.5-.5-.9-1.1-1-.6-.2-1.2-.8-1.4-1.1-.2-.3-.3-.3-.5.2s-.9 1.5-.2 1.5c-.5.4-.8.8-.5 1.4-.3.3-.5.7-.1.8l.6.4c-.4 0-.5.8.4 1-.2 0-.3.6.1.6-.5 0-1 .8-1.6.8-.7 0-1 .2-1 .5l-.6.8c.5 0 .8 0 1-.2s.7-.3 1 0c.3.2 1 .3 1.2.2-.6.5-1 1-1.1 1.6 0 .6-.5 1.2-1 1.4-.3.2-1 .6-1.1 1.2.5 1.4 1.3 1.7 2.1 2.1 1.4.6 2.3 1.1 2.9 1.8.6.6.8.1 1.7 1.3.9 1 1.7 3.2 2.6 3.5.9.4 2 .2 2.6-1 .7-1 1-12.4-2.2-14.3z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="#ff927f" d="M207.5 48.1c-.9 1-2 1.8-1.7 3.4s.3 4.2-1.2 5c-1.4 1-2.1 3.2-.4 4.5 1.8 1.3 1.9 2.9 2.1 4.3.3 1.5 1.1 2.7 2.3 1.7 1.2.2 1.8-.3 1.8-1.3s0-1.4 1-1.7c.8-.3 1-.6 1.5-1.4.4-.8.6-1.2.4-1.6a3.7 3.7 0 01-.2-2.2c.2-.7-.2-1-.4-1.5a1.9 1.9 0 01-.2-1.4c0-.6-.2-1-.6-1.3-.4-.3-.6-.6-.5-1 0-.5-.3-.8-.8-1.2s-.7-.8-.7-1.5-1.4-2.3-2.4-2.8z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="#ff9ee1" d="M207.8 67.3c2-.5 1.8-3.7 1.5-5-.3-1.4-1-3.3-.5-4.9.8-2.1-1-4.2-.5-5 .5-.9.4-1.3.3-1.6 0-.2-.5-.4-.5.1 0 .6-.2.8-.5 1.1s-.3 1.2 0 2c.2.9.8 2.2 0 3.9-1 1.7-.6 2.4-.3 3.2.6 1.3 1.8 5.6.5 6.2z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="none" d="M199 48.9c.2 0 .6 0 .6.2m-1 1.2c.2-.2.7 0 1.1-.2m-.7 1.4c.3 0 .8 0 1.3-.4m-.9 1.4c.4 0 1-.2 1.1-.7m-1 1.3c.7 0 1.5.2 1.6 0m-1.5 2.1c.4-.4 1.4-.7 1.7-1m-.6-5.5c.7.2.4.7.8 1 .6.4 0 1 .6 1.1.5.2.5.3.3.9-.1.7.5.7.3 1.2m2-.5c-.3 0-1.2 0-1.5.8m-4.8 7.7c.4 0 .5-.1.6-.3.1-.2.2-.4.5-.4s.8-.1.9-.3c0-.3.4 0 .7-.7.4-.6.6-1.3 1.4-1.6" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+    </g>
+    <g stroke="#000" stroke-width=".1">
+      <path fill="#00a728" d="M221.8 73.8c.3.4 0 1 .5 1.2.7.2.1 1 .9 1.4.7.3 0 1 .7 1.5.7.3 0 1 .8 1.5 1 .5-.2 1.5.5 1.9.7.4-.2 1.4.6 1.8.7.4-.4 1.1.4 1.7.7.5-.2 1.4.5 1.9s-.4 1.2.3 1.9c.6.5-.2 1 .2 2 .3.5-.3 2.7-1.8 2.5-.6 1-2.7 1.8-3.5 1.5-.8.6-3.3 1.3-4.6.1-1.3 1.2-3.8.5-4.6 0-.8.2-3-.7-3.5-1.6-1.6.2-2.1-2-1.8-2.6.4-.8-.4-1.4.2-2 .7-.6-.5-1.3.3-1.8s-.2-1.4.5-2c.8-.5-.4-1.3.4-1.6.8-.4-.1-1.4.6-1.8.6-.4-.4-1.4.5-1.9.9-.4 0-1.2.8-1.5.7-.4 0-1.2.7-1.5.8-.3.2-1.2.9-1.4.6-.3.2-.8.5-1.3 1.7.7 6.8 1.2 9 0z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="#fdc300" d="M213.5 76.7c0 .2 0 .5-.2.8-.5.6.2 1-.4 1.7-.5.7.1 1.2-.5 1.8-.6.6.1 1.2-.5 1.8-.6.7.1 1.2-.5 1.8-.6.6.1 1.3-.5 1.9-.6.6.1 1.4-.5 2-.7.8 0 1.4-.5 2-.5.5 0 1-.4 1.4.6-.5.6-1.3 1.1-1.6.5-.4-.1-1 .2-1.3s0-1.4.5-2 0-1.7.5-2 .1-1.6.7-2 0-1.3.4-1.8c.5-.5 0-1.3.5-2 .4-.5 0-1.1.3-1.6.2-.2.2-1.8-.2-1zm1.6.7c-.4.7.3.9-.2 1.6s.3 1.3-.3 2 .3 1.1-.2 1.8c-.5.8.2 1.2-.2 1.7-.5.6.3 1.1-.2 1.8-.6.7.2 1.2-.3 1.8-.4.6.2 1.3-.2 1.8s.3 1.2-.3 1.9.1 1-.2 1.5c.7-.2.4-1.1.7-1.3.2-.2-.1-1.5.3-1.8.4-.4-.3-1.4 0-1.8.7-.8.2-1.3.5-1.9.4-.6-.1-1.3.2-1.7.5-.7-.2-1.3.1-1.8.5-.7 0-1.2.3-1.7.5-.7 0-1.4.1-1.8.3-.3.6-1.9 0-2.1zm2.2.6c-.4 1 .3 1.3 0 2.1-.2.8.3 1.4 0 2.2-.3.9.4 1.5 0 2.6s.3 1.4 0 2.5c-.3 1.2.5 1.9 0 2.8-.6.9.6 1.2 0 2.1-.2.5 0 1.6.5.2.5-1.3-.3-1.5 0-2 .5-.6 0-2 .1-2.9.2-.7-.4-1.8 0-2.6.3-.9-.6-1.8-.2-2.5.3-.7-.2-1.6.2-2.2.3-.6-.3-1.4-.2-1.7.2-.3-.1-1.6-.4-.6z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="#ef072d" d="M221.5 74.4c0-6.3-1-8.5-4.2-8.5-3.3 0-4.2 2.2-4.2 8.5h8.4z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="none" d="M214.3 73.9c-.6.6.1 1-.5 1.8-.6.7 0 1.1-.5 1.8s.2 1-.4 1.7c-.5.7.2 1.2-.5 1.8-.6.6.1 1.2-.5 1.8-.6.7.1 1.2-.5 1.8-.6.6.1 1.2-.5 1.9-.6.6.1 1.4-.5 2-.7.8 0 1.4-.5 2s0 1-.4 1.4c-.4.4-.5 1-.3 1.2m6.3-19c-.6.8.3 1-.2 1.7-.5.6.2.8-.2 1.6s.3.9-.2 1.6.3 1.3-.3 2 .3 1.1-.2 1.8c-.5.8.2 1.2-.2 1.7-.5.6.3 1.1-.3 1.8-.5.7.3 1.2-.2 1.8-.4.6.2 1.3-.2 1.8s.3 1.2-.3 1.9.1 1-.2 1.5c-.3.5-.6 1.1-.3 1.3m4.6-19.8c-.3 1.2.4 2.2 0 3.2s.3 1.3 0 2.1c-.2.8.3 1.4 0 2.2-.3.9.4 1.5 0 2.6s.3 1.4 0 2.5c-.3 1.2.6 1.9 0 2.8-.6.9.5 1.1 0 2.1-.4 1 .3 1.4 0 2.4m3-20.8c.6.6-.2 1 .5 1.8.6.7 0 1.1.5 1.8s-.2 1 .3 1.7c.6.7 0 1.2.5 1.8.7.6 0 1.2.5 1.8.7.7 0 1.2.6 1.8.6.6-.2 1.2.5 1.9.6.6-.1 1.4.5 2 .7.8-.1 1.4.5 2 .5.5 0 1 .4 1.4.4.4.5 1 .3 1.2m-6.3-19c.5.8-.3 1 .2 1.7.5.6-.2.8.2 1.6.4.7-.3.9.2 1.6s-.3 1.3.3 2-.3 1.1.2 1.8c.5.8-.2 1.2.2 1.7.5.6-.3 1.1.2 1.8.6.7-.2 1.2.3 1.8.4.6-.2 1.3.2 1.8s-.3 1.2.3 1.9-.1 1 .2 1.5c.3.5.6 1.1.3 1.3" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path d="M213.1 74.4c0-6.3 1-8.5 4.2-8.5-1.5 0-2.4 1.2-2.7 2s-.1.7.2.4.2.4 0 .7c-.3.4-.6 1.4-.2 1 .4-.2.7.1.2.7s-.7 2-.3 1.5c.4-.5.5.3.2.7-.2.4-.2.7 0 .6.3-.2.2.6 0 1h-1.6zm7.7-.3c0-5-.6-6.5-1.8-7-.7-.3-.7-.2-.4.3s.3 1 0 .6-.4-.5-.6-.3l.8 2c.3.6 0 1-.4.3s-.4-.1 0 .5c.5.7.4 2.9.4 3.8l2-.2z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+      <path fill="#ef072d" d="M217.3 75.3c1.3 0 2.7-.2 3.7-.6 1.1-.4 1.2-.8.8-1.3-.3-.4-.9-.2-1.5.1a11.2 11.2 0 01-6 0c-.6-.2-1.2-.5-1.5-.1-.4.5-.4.9.8 1.3 1 .4 2.4.6 3.7.6z" transform="matrix(5.698 0 0 5.6987 -893.7 -100.8)"/>
+    </g>
+    <g fill="#b95a1e" fill-rule="evenodd">
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.07727 -.0499 .04732 .08148 313.5 245.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.08863 -.01984 .01882 .09346 329.5 211.7)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.0906 0 0 .09555 343 194.7)"/>
+      <path stroke="#000" stroke-width="5.5" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(.05623 0 0 .09555 369.9 257.3)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c106.3 0 124-35.4 124-35.4s35.5-70.9 17.8-88.6c-17.7-17.7-141.8-17.7-141.8-17.7V255z" transform="matrix(.0906 0 0 .09555 343 250.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c88.6 0 141.8-35.4 141.8-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-159.5-17.7-159.5-17.7v141.7z" transform="matrix(.0906 0 0 .09555 343 243.8)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s70.8-88.6 194.9-177.2c124-88.6 213.7-156.7 230.3-141.7 0 17.7-106.3 106.3-195 177.2-88.5 70.8-194.8 177.1-194.8 177.1l-35.4-35.4z" transform="matrix(.11244 0 0 .09555 325.5 194.9)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s70-52 204.4-124c132.2-64 318.9-53.2 318.9-35.5-17.8 17.8-177.2 17.8-283.5 70.9C971 75.5 868 148.8 868 148.8l-35.4-35.4z" transform="matrix(.11244 0 0 .09555 326.4 201.7)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s61.6-35 204.4-88.6c141.7-53.1 329.8-17.7 329.8 0-17.7 17.7-170.4 7-276.7 35.4-110 27.8-222 88.6-222 88.6l-35.5-35.4z" transform="matrix(.11244 0 0 .09555 326.5 213.3)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s71-71 222.4-88.6c152.3-17.7 276.3 88.6 276.3 106.3-17.7 17.7-159.5-78-265.7-64.3-112.6 13.7-197.6 82-197.6 82l-35.5-35.4z" transform="matrix(.11244 0 0 .09555 327.3 225.2)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 159.5-45.5 159.5-45.5s35.4-70.8 17.7-88.6c-17.7-17.7-177.2-7.6-177.2-7.6V255z" transform="matrix(.0906 0 0 .09555 343 235.3)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(.0906 0 0 .09555 343 228.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s35.3-70.9 17.6-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(.0906 0 0 .09555 343 220)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s17.7-70.9 0-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(.0906 0 0 .09555 343 211.6)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4S946.9 24.8 946.9-46.1c0-70.8-50.4-141.7-64.6-177.1 28.5 0 93.1 106.3 93.1 177.1 0 77.5-107.3 195-107.3 195l-35.4-35.5z" transform="matrix(.11244 0 0 .09555 323.3 187.9)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s-14.3-53.2-14.3-159.5a355 355 0 0185.7-230.3C910-249 847-152.4 847-46c0 77.5 21.1 195 21.1 195l-35.4-35.5z" transform="matrix(.11244 0 0 .09555 323.3 187.9)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s0-70.9-17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7v141.7z" transform="matrix(.0906 0 0 .09555 343 203.2)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s0-70.9-17.8-88.6c-17.7-17.7-177.2-17.7-177.2-17.7V255z" transform="matrix(.0906 0 0 .09555 343 194.7)"/>
+      <path stroke="#fdc301" stroke-width="11" d="M318.9 1318.1c55-122.3 70.9-336.6 70.9-372 0-99.8-33-585.2-35.5-779.6s124-301.2 248-301.2c106.4 0 177.2 71 177.2 177.2h-53.1a121 121 0 00-124-124c-106.3 0-188 83.7-195 248-7.5 190 21.4 683 17.8 815S374 1231.2 318.9 1318z" transform="matrix(-.0906 0 0 .09555 484.3 194.7)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.07727 -.0499 -.04732 .08148 513.9 245.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 32.9C903.7 33 957.3 135.3 957 133.2l-35.7 33.3c-19 17.8-141.8 17.8-140.2 17.7l-1.6-151.3z" transform="matrix(.0906 0 0 .09555 343 194.7)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.08863 -.01984 -.01882 .09346 497.9 211.7)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.0906 0 0 .09555 484.3 194.7)"/>
+      <path stroke="#000" stroke-width="5.5" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(-.05623 0 0 .09555 457.5 257.3)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c106.3 0 124-35.4 124-35.4s35.5-70.9 17.8-88.6c-17.7-17.7-141.8-17.7-141.8-17.7V255z" transform="matrix(-.0906 0 0 .09555 484.3 250.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c88.6 0 141.8-35.4 141.8-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-159.5-17.7-159.5-17.7v141.7z" transform="matrix(-.0906 0 0 .09555 484.3 243.8)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s70.8-88.6 194.9-177.2c124-88.6 213.7-156.7 230.3-141.7 0 17.7-106.3 106.3-195 177.2-88.5 70.8-194.8 177.1-194.8 177.1l-35.4-35.4z" transform="matrix(-.11244 0 0 .09555 501.9 194.9)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s70-52 204.4-124c132.2-64 318.9-53.2 318.9-35.5-17.8 17.8-177.2 17.8-283.5 70.9C971 75.5 868 148.8 868 148.8l-35.4-35.4z" transform="matrix(-.11244 0 0 .09555 501 201.7)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s61.6-35 204.4-88.6c141.7-53.1 329.8-17.7 329.8 0-17.7 17.7-170.4 7-276.7 35.4-110 27.8-222 88.6-222 88.6l-35.5-35.4z" transform="matrix(-.11244 0 0 .09555 500.9 213.3)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s71-71 222.4-88.6c152.3-17.7 276.3 88.6 276.3 106.3-17.7 17.7-159.5-78-265.7-64.3-112.6 13.7-197.6 82-197.6 82l-35.5-35.4z" transform="matrix(-.11244 0 0 .09555 500.1 225.2)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 159.5-45.5 159.5-45.5s35.4-70.8 17.7-88.6c-17.7-17.7-177.2-7.6-177.2-7.6V255z" transform="matrix(-.0906 0 0 .09555 484.3 235.3)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(-.0906 0 0 .09555 484.3 228.5)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s35.3-70.9 17.6-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(-.0906 0 0 .09555 484.3 220)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s17.7-70.9 0-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(-.0906 0 0 .09555 484.3 211.6)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4S946.9 24.8 946.9-46.1c0-70.8-50.4-141.7-64.6-177.1 28.5 0 93.1 106.3 93.1 177.1 0 77.5-107.3 195-107.3 195l-35.4-35.5z" transform="matrix(-.11244 0 0 .09555 504.1 187.9)"/>
+      <path stroke="#000" stroke-width="3.9" d="M832.7 113.4s-14.3-53.2-14.3-159.5a355 355 0 0185.7-230.3C910-249 847-152.4 847-46c0 77.5 21.1 195 21.1 195l-35.4-35.5z" transform="matrix(-.11244 0 0 .09555 504.1 187.9)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s0-70.9-17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7v141.7z" transform="matrix(-.0906 0 0 .09555 484.3 203.2)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s0-70.9-17.8-88.6c-17.7-17.7-177.2-17.7-177.2-17.7V255z" transform="matrix(-.0906 0 0 .09555 484.3 194.7)"/>
+      <path stroke="#fdc301" stroke-width="11" d="M318.9 1318.1c55-122.3 70.9-336.6 70.9-372 0-99.8-33-585.2-35.5-779.6s124-301.2 248-301.2c106.4 0 177.2 71 177.2 177.2h-53.1a121 121 0 00-124-124c-106.3 0-188 83.7-195 248-7.5 190 21.4 683 17.8 815S374 1231.2 318.9 1318z" transform="matrix(.0906 0 0 .09555 343 194.7)"/>
+      <path stroke="#000" stroke-width="4.4" d="M779.5 32.9C903.7 33 957.3 135.3 957 133.2l-35.7 33.3c-19 17.8-141.8 17.8-140.2 17.7l-1.6-151.3z" transform="matrix(-.0906 0 0 .09555 484.3 194.7)"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/td.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/td.svg
new file mode 100644
index 0000000..e3e81ce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/td.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-td" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#000067" d="M0 0h171.2v512H0z"/>
+    <path fill="red" d="M340.8 0H512v512H340.8z"/>
+    <path fill="#ff0" d="M171.2 0h169.6v512H171.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tf.svg
new file mode 100644
index 0000000..2061867
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tf.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-tf" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" fill="#fff" d="M0-21l12.3 38L-20-6.5h40L-12.3 17z"/>
+  </defs>
+  <path fill="#002395" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h312.3v210H0z"/>
+  <path fill="#002395" d="M0 0h102.4v204.8H0z"/>
+  <path fill="#ed2939" d="M204.8 0h102.4v204.8H204.8z"/>
+  <path fill="#fff" d="M282.4 234.2l16.5 26.3h46.9V352l-35.3-55-47.3 75.5h23l24.4-43.5 49.9 89.6 49.9-89.6 24.3 43.5h23L410.5 297l-35.2 55v-50.6h21.1l15.7-25h-36.8v-16h46.9l16.5-26.2H282.4zm55 112h-51.2v18h51.2zm97.3 0h-51.2v18h51.2z"/>
+  <use width="100%" height="100%" x="416" y="362" transform="translate(-172) scale(1.28)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="371" y="328" transform="translate(-172) scale(1.28)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="461" y="328" transform="translate(-172) scale(1.28)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="333" y="227" transform="translate(-172) scale(1.28)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="499" y="227" transform="translate(-172) scale(1.28)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tg.svg
new file mode 100644
index 0000000..2c1fd98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tg.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tg" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0-.2h496.3V496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(0 .3) scale(1.0316)">
+    <path fill="#ffe300" d="M0-.2h744V496H0z"/>
+    <path fill="#118600" d="M0 201.5h744v99.7H0zM0 0h744v99.7H0z"/>
+    <path fill="#d80000" d="M0 0h297.1v301.2H0z"/>
+    <path fill="#fff" d="M130.3 124.3c0-.9 18.3-51.5 18.3-51.5l16.6 50.6s55.6 1.7 55.6.8-44 33.2-44 33.2 20.7 58.1 19.9 56.5c-.8-1.7-48.1-34.9-48.1-34.9s-48.2 33.2-47.3 33.2 18.2-54.7 18.2-54.7L76.4 125l53.9-.8z"/>
+    <path fill="#118600" d="M0 396.4h744v99.7H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/th.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/th.svg
new file mode 100644
index 0000000..86850f5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/th.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-th" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#f4f5f8" d="M0 0h512v512H0z"/>
+    <path fill="#2d2a4a" d="M0 173.4h512V344H0z"/>
+    <path fill="#a51931" d="M0 0h512v88H0zm0 426.7h512V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tj.svg
new file mode 100644
index 0000000..853a4a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tj.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-tj" viewBox="0 0 512 512">
+  <path fill="#060" d="M0 0h512v512H0z"/>
+  <path fill="#fff" d="M0 0h512v365.7H0z"/>
+  <path fill="#c00" d="M0 0h512v146.3H0z"/>
+  <g fill="#f8c300" transform="translate(-256) scale(.73143)">
+    <path d="M672 340.7a12.5 12.5 0 0123.3 5.9v50h9.4v-50a12.5 12.5 0 0123.3-5.9 29.5 29.5 0 10-56 0"/>
+    <path fill="#fff" d="M678.7 327.6a20 20 0 0121.3 9.6 20 20 0 0121.3-9.6 21.5 21.5 0 00-42.6 0"/>
+    <path id="a" d="M695.3 376.6a38 38 0 01-63.8 24.3 39.5 39.5 0 01-59.8 17.5c3.7 36.4 58.3 29 62.3-6.4 17.2 30.1 55 21.5 66-15.4z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 1400 0)" xlink:href="#a"/>
+    <path id="b" d="M658.8 441.3c-7.6 16.5-22.8 19.3-36.1 6 0 0 5.3-3.8 11-4.8a18 18 0 014.3-14.3 22 22 0 019 11.8c8-1 11.8 1.3 11.8 1.3z"/>
+    <use width="100%" height="100%" transform="rotate(9.4 700 804)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(18.7 700 804)" xlink:href="#b"/>
+    <path fill="none" stroke="#f8c300" stroke-width="16" d="M603 478a340 340 0 01194 0"/>
+    <g transform="translate(700 380)">
+      <g transform="translate(0 -140)">
+        <path id="c" d="M488533-158734l-790463 574305L0-513674l301930 929245-790463-574305z" transform="scale(.00005)"/>
+      </g>
+      <g id="d">
+        <use width="100%" height="100%" transform="translate(-70 -121.2)" xlink:href="#c"/>
+        <use width="100%" height="100%" transform="translate(-121.2 -70)" xlink:href="#c"/>
+        <use width="100%" height="100%" transform="translate(-140)" xlink:href="#c"/>
+      </g>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#d"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tk.svg
new file mode 100644
index 0000000..c5ff6b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tk" viewBox="0 0 512 512">
+  <path fill="#00247d" d="M0 0h512v512H0z"/>
+  <path fill="#fed100" d="M90.7 384.2c-5.3 0 50-29.5 96.4-67.2 60.7-49.5 191.5-128.7 230-141.5 4-1.3-8.2 6.8-9.8 9.5-41.1 48.6-8.3 140.3 43 186.4 15.4 11.8 14.6 12.4 43.2 13.6v2.7l-402.8-3.5zm-3.3 5.4s-3.9 2.8-3.9 4.9c0 2.3 4.4 5.4 4.4 5.4l397.3 4.4 7.3-4.9-10.2-6.3-394.9-3.5z"/>
+  <path fill="#fff" d="M105.5 116.6l-4 12.1 10.4-7.5 10.3 7.5-4-12.1 10.4-7.5h-12.8l-3.9-12.2-4 12.2H95.2zm77.8 57.1l8.6-6.2h-10.6l-3.3-10.1-3.3 10.1h-10.6l8.6 6.2-3.3 10.1 8.6-6.2 8.6 6.2zm-144.7 13l-3.9-12.1-4 12.1H18l10.3 7.5-4 12.1 10.4-7.5 10.3 7.5-3.9-12.1 10.3-7.5zm77.9 121.9l-4.6-14.2-4.6 14.2H92.4l12 8.7-4.6 14.2 12.1-8.8 12 8.8-4.6-14.2 12-8.7z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tl.svg
new file mode 100644
index 0000000..ec6d44b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tl.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tl" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#cb000f" d="M0 0h999v496H0z"/>
+    <path fill="#f8c00c" d="M0 0c3.1 0 496 248.7 496 248.7L0 496.1V0z"/>
+    <path d="M0 0c2 0 330 248.7 330 248.7L0 496.1V0z"/>
+    <path fill="#fff" d="M181.9 288.9l-59-13L93 327l-5-57.8-58.8-13 53.1-24-3.2-57.5 39 42 53.6-24.4-28 52.2 38 44.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tm.svg
new file mode 100644
index 0000000..d856424
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tm.svg
@@ -0,0 +1,203 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tm" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#28ae66" d="M0 0h744v496H0z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M255.1 133.2c27 13 59.2 0 70.9-18 12-16.8 13.4-45-7.3-70.9 32 26.6 39.2 56.7 23.2 81.5-21.2 28.3-68.4 27.5-86.8 7.4z"/>
+      <path d="M297 76.2l1.5-5.4-4.4-3.3 5.4-.2 1.8-5.3 1.8 5.3h5.4l-4.3 3.5 1.6 5.3-4.4-3.2zm-27 33.6l1.6-5.3-4.4-3.4 5.5-.1 1.7-5.3 1.9 5.2 5.4.1-4.3 3.4 1.6 5.4-4.5-3.2zm1.8-26.5l1.6-5.4-4.4-3.3 5.4-.2 1.8-5.3 1.8 5.3h5.5l-4.3 3.5 1.6 5.3-4.5-3.2zm0-26.6l1.6-5.4L269 48l5.4-.2 1.8-5.3 1.8 5.3h5.5l-4.3 3.5 1.6 5.3-4.5-3.1zM242 90.4l1.5-5.4-4.3-3.4 5.4-.1 1.8-5.3 1.8 5.2 5.4.1-4.3 3.4 1.6 5.4-4.5-3.2z"/>
+    </g>
+    <path fill="#ca3745" d="M46 0h159.5v496H46.1z"/>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M46 129.3v-3.5l6.7-8.9-1.4-1.7 4-5.4-1.3-1.7-2.7 3.5-1.3-1.8 9.3-12.4 1.3 1.8-1.3 1.8 2.7 3.6 6.6-9-6.7-8.5-2.6 3.3 1.3 1.7-1.3 1.8L50 81.5l1.3-1.8 2.7 3.6 1.3-1.8-4-5.3 1.4-1.8-6.6-8.8V62l9.2 12.4-1.3 1.8 4 5.3-2.7 3.5 2.7 3.6 4-5.3 9.3 12.6L62 108l-4-5.3-2.7 3.5 2.7 3.5-4 5.4 1.3 1.7-9.2 12.4z"/>
+      <path d="M46 85l1.4 3.6v5.3h4l2.6 1.8-2.6 1.7h-4v5.4l-1.3 3.5V85z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M46 214.4v-3.6l6.7-8.8-1.4-1.8 4-5.3L54 193l-2.7 3.5L50 195l9.3-12.4 1.3 1.7-1.3 1.8 2.7 3.6 6.6-8.9-6.7-8.6-2.6 3.3 1.3 1.8-1.3 1.7-9.3-12.4 1.3-1.7 2.7 3.5 1.3-1.8-4-5.3 1.4-1.7-6.6-9V147l9.2 12.4-1.3 1.8 4 5.3-2.7 3.6 2.7 3.5 4-5.3 9.3 12.6-9.3 12.2-4-5.3-2.7 3.5L58 195l-4 5.3 1.3 1.8-9.2 12.4z"/>
+      <path d="M46 170l1.4 3.6v5.3h4l2.6 1.8-2.6 1.8h-4v5.3l-1.3 3.5v-21.2z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M46 299.4v-3.5l6.7-8.9-1.4-1.8 4-5.3-1.3-1.7-2.7 3.5-1.3-1.8 9.3-12.4 1.3 1.8-1.3 1.8 2.7 3.5 6.6-8.9-6.7-8.6-2.6 3.3 1.3 1.8-1.3 1.8-9.3-12.4 1.3-1.8 2.7 3.5 1.3-1.7-4-5.3 1.4-1.8-6.6-8.9v-3.5l9.2 12.4-1.3 1.8 4 5.3-2.7 3.5 2.7 3.6 4-5.3 9.3 12.6-9.3 12.2-4-5.4-2.7 3.6 2.7 3.5-4 5.3 1.3 1.8-9.2 12.4z"/>
+      <path d="M46 255.1l1.4 3.6v5.3h4l2.6 1.8-2.6 1.7h-4v5.3l-1.3 3.6V255z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M46 379.1v-3.5l6.7-8.9-1.4-1.7 4-5.4L54 358l-2.7 3.5-1.3-1.8 9.3-12.4 1.3 1.8-1.3 1.8 2.7 3.6 6.6-9-6.7-8.5-2.6 3.3 1.3 1.7-1.3 1.8-9.3-12.4 1.3-1.8 2.7 3.6 1.3-1.8-4-5.3 1.4-1.8-6.6-8.8v-3.6l9.2 12.4L54 326l4 5.3-2.7 3.5 2.7 3.6 4-5.3 9.3 12.6-9.3 12.2-4-5.3-2.7 3.5 2.7 3.5-4 5.4 1.3 1.7-9.2 12.4z"/>
+      <path d="M46 334.8l1.4 3.6v5.3h4l2.6 1.8-2.6 1.7h-4v5.4L46 356v-21.3z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M205.5 129.3v-3.5l-6.6-8.9 1.3-1.7-4-5.4 1.4-1.7 2.7 3.5 1.3-1.8-9.3-12.4-1.4 1.8 1.4 1.8-2.8 3.6-6.5-9 6.6-8.5 2.7 3.3-1.4 1.7 1.4 1.8 9.3-12.4-1.4-1.8-2.6 3.6-1.3-1.8 4-5.3-1.4-1.8 6.6-8.9V62l-9.2 12.4 1.3 1.8-4 5.3 2.7 3.5-2.7 3.6-4-5.3-9.3 12.6 9.3 12.2 4-5.3 2.7 3.5-2.7 3.5 4 5.4-1.3 1.7 9.2 12.4z"/>
+      <path d="M205.5 85l-1.3 3.6v5.3h-4l-2.7 1.8 2.7 1.7h4v5.4l1.3 3.5V85z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M206 214.4v-3.6l-6.7-8.8 1.4-1.8-4-5.3 1.3-1.8 2.7 3.6 1.3-1.8-9.3-12.4-1.3 1.7 1.3 1.8-2.7 3.6-6.6-8.9 6.7-8.6 2.6 3.3-1.3 1.8 1.3 1.7 9.3-12.4-1.3-1.7-2.7 3.5-1.3-1.8 4-5.3-1.3-1.7 6.5-9v-3.4l-9.2 12.4 1.3 1.7-4 5.3 2.7 3.6-2.7 3.5-4-5.3-9.3 12.6 9.4 12.2 4-5.3 2.6 3.5-2.7 3.6 4 5.3-1.3 1.8 9.3 12.4z"/>
+      <path d="M206 170l-1.4 3.6v5.3h-4l-2.6 1.8 2.6 1.8h4v5.3l1.3 3.5v-21.2z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M205.5 299.4v-3.5L199 287l1.3-1.8-4-5.3 1.4-1.7 2.7 3.5 1.3-1.8-9.3-12.4-1.4 1.8 1.4 1.8-2.8 3.5-6.5-8.9 6.6-8.6 2.7 3.3-1.4 1.8 1.4 1.8 9.3-12.4-1.4-1.8-2.6 3.5-1.3-1.7 4-5.3-1.4-1.8 6.6-8.9v-3.5l-9.2 12.4 1.3 1.8-4 5.3 2.7 3.5-2.7 3.6-4-5.3-9.3 12.6 9.3 12.2 4-5.4 2.7 3.6-2.7 3.5 4 5.3-1.3 1.8 9.2 12.4z"/>
+      <path d="M205.5 255.1l-1.3 3.6v5.3h-4l-2.7 1.8 2.7 1.7h4v5.3l1.3 3.6V255z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M205.5 379.1v-3.5l-6.6-8.9 1.3-1.7-4-5.4 1.4-1.7 2.7 3.5 1.3-1.8-9.3-12.4-1.4 1.8 1.4 1.8-2.8 3.6-6.5-9 6.6-8.5 2.7 3.3-1.4 1.7 1.4 1.8 9.3-12.4-1.4-1.8-2.6 3.6-1.3-1.8 4-5.3-1.4-1.8 6.6-8.8v-3.6l-9.2 12.4 1.3 1.8-4 5.3 2.7 3.5-2.7 3.6-4-5.3-9.3 12.6 9.3 12.2 4-5.3 2.7 3.5-2.7 3.5 4 5.4-1.3 1.7 9.2 12.4z"/>
+      <path d="M205.5 334.8l-1.3 3.6v5.3h-4l-2.7 1.8 2.7 1.7h4v5.4l1.3 3.5v-21.3z"/>
+    </g>
+    <path fill="#faae29" stroke-width="1pt" d="M46 33.7V30l6.7-8.8-1.4-1.8 4-5.3-1.3-1.8-2.7 3.5-1.3-1.7 9.3-12.4 1.3 1.7-1.3 1.8L62 9l6.6-9h2.7L62 12.4l-4-5.3-2.7 3.5 2.7 3.6-4 5.3 1.3 1.8-9.2 12.4zM46 0h8l-2.6 1.8h-4V7l-1.3 3.5V0zm159.5 33.7V30l-6.6-8.8 1.3-1.8-4-5.3 1.4-1.8 2.6 3.5 1.4-1.7-9.3-12.4-1.4 1.7 1.4 1.8-2.8 3.6-6.5-9h-2.7l9.3 12.5 4-5.3 2.7 3.5-2.7 3.6 4 5.3-1.3 1.8 9.2 12.4zm0-33.7h-8l2.7 1.8h4V7l1.3 3.5V0z"/>
+    <path fill="#faae29" d="M112.5 489s5.7-10 20.2-13.1c14.4-3 16.9 6.7 25.1 6.7 8.2 0 21.3-6.7 21.3-6.7s-13 12.8-23.1 12.5c-10-.3-13.5-6.7-23.8-5.8-10.3 1-19.7 6.7-19.7 6.4z"/>
+    <path fill="#faae29" d="M140.3 489s-5.7-10-20.1-13.1c-14.4-3-17 6.7-25.2 6.7s-21.3-6.7-21.3-6.7 13.1 12.8 23.2 12.5c10-.3 13.5-6.7 23.8-5.8 10.3 1 19.6 6.7 19.6 6.4z"/>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M93.2 472.4c-1.3-2.7-4.4-14.3-2.8-15.7 2.6-1 9.3 10.9 8.7 21.5-4.4 2.4-19.4-1-19.2-4.1 1-4.4 9.5-3 13.3-1.7z"/>
+      <path d="M84.1 462.3c-.8-3-2.1-15.2-.2-16.2 2.6-.2 7.4 13.2 5.1 23.4-4.7 1.2-18.9-6.2-18.2-9.3 1.7-4 9.8-.2 13.3 2z"/>
+      <path d="M76.8 451c-.6-3.1-.8-15.5 1.1-16.1 2.7.1 6.2 14.2 3 24-4.7.4-18.1-9.2-17.2-12 2-3.8 9.7 1.2 13 4z"/>
+      <path d="M71 438.8c-.3-3.1 1-15.3 3-15.6 2.6.7 4.4 15.4.2 24.4-4.8-.6-17-12.9-15.7-15.5 2.5-3.2 9.5 3.3 12.4 6.7z"/>
+      <path d="M66.9 426.2c.1-3.2 2.7-15 4.7-14.9 2.4 1.2 2.7 16.1-2.5 24.2-4.6-1.5-15.3-16-13.8-18.4 2.8-2.7 9 5.1 11.6 9z"/>
+      <path d="M68 411.8c-.3 12.6-2.6 12.7-6.8 3.4-1.8-3.5-2-18-.4-18.6 2.4 0 7.1 10.3 7.2 15.2z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M159 473.7c1.2-2.6 4.4-14.3 2.7-15.7-2.6-1-9.3 10.9-8.7 21.5 4.5 2.4 19.5-1 19.3-4.1-1.1-4.3-9.6-2.9-13.4-1.7z"/>
+      <path d="M168 463.6c.8-3 2.1-15.2.3-16.2-2.7-.2-7.5 13.3-5.2 23.5 4.7 1.1 19-6.3 18.2-9.3-1.7-4-9.8-.3-13.3 2z"/>
+      <path d="M175.4 452.2c.5-3 .8-15.4-1.2-16-2.6.2-6.2 14.3-3 24 4.8.5 18.2-9.2 17.2-12-2-3.7-9.7 1.3-13 4z"/>
+      <path d="M181.2 440.2c.2-3.2-1-15.4-3-15.6-2.6.7-4.5 15.3-.2 24.4 4.7-.6 16.9-13 15.6-15.6-2.5-3.2-9.4 3.3-12.4 6.8z"/>
+      <path d="M185.2 427.5c-.1-3.1-2.6-15-4.6-14.9-2.5 1.2-2.8 16.1 2.4 24.2 4.7-1.5 15.3-16 13.8-18.3-2.8-2.7-9 5-11.6 9z"/>
+      <path d="M184.1 413.1c.4 12.6 2.7 12.8 6.8 3.4 1.9-3.5 2.1-18 .4-18.6-2.4 0-7.1 10.4-7.2 15.2z"/>
+    </g>
+    <g transform="matrix(.96875 0 0 1.2258 182.4 -74.6)">
+      <path fill="#ca3745" stroke="#000" stroke-width=".1" d="M-3.5 290.6H-9v3.5h-5.3v3.5h-21.2l-3.6 3.6 1.8 1.8h8.9l1.7-1.8h-8.8l1.7-1.8h12.4l-5.3 5.3H-39l-3.5-1.7-3.6 1.7h-12.4l-5.3-5.3h12.4l1.8 1.8h-8.9l1.8 1.8h8.9l1.7-1.8-3.5-3.6h-19.5v-3.5h-5.3v-3.5h-5.3v-16h5.3v-3.5h5.3v-3.6h19.5l3.5-3.5-1.7-1.8h-8.9l-1.8 1.8h8.9l-1.8 1.7h-12.4l5.3-5.3H-46l3.6 1.8 3.5-1.8h12.4l5.3 5.3h-12.4l-1.7-1.7h8.8l-1.8-1.8h-8.8L-39 264l3.6 3.5h21.2v3.6h5.3v3.5h5.4v16z" transform="matrix(1.4884 0 0 1.24 3.5 -39.5)"/>
+      <path fill="#28ae66" stroke="#faae29" stroke-width="1pt" d="M375.6 499.7v24.8h10.6v7h10.6v7h35.5l14.2 10.7 14.1-10.6h39v-7l10.6-.1v-7H521v-24.9h-10.7v-7h-10.6v-7.2h-39l-14.1-10.6-14.2 10.6h-35.5v7.2h-10.6v7h-10.6z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#ca3745" d="M-75.6 296.6l-15.8 11v-11h15.8zm31.6 0l15.9 11v-11H-44zm-31.6 28.6l-15.8-11v11h15.8zm31.6 0l15.9-11v11H-44zm5.3-22l-5.3 4.4h10.6l-5.3-4.4zm-42.2 0l-5.2 4.4h10.5l-5.3-4.4zm0 15.4l-5.2-4.4h10.5l-5.3 4.4zm42.2 0l-5.3-4.4h10.6l-5.3 4.4z"/>
+      <path fill="#faae29" d="M-59.8 329.6l-5.3-4.4h10.6l-5.3 4.4zm0-22l-5.3-4.4h10.6l-5.3 4.4zm0-15.4l-5.3 4.5h10.6l-5.3-4.5zm0 22l-5.3 4.4h10.6l-5.3-4.4z"/>
+      <path fill="#faae29" stroke="#000" stroke-width=".1" d="M467.7 506.7H482v3.5h-14.2z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#c00" stroke="#000" stroke-width=".1" d="M414.6 510.2h7v3.6h-7zm56.7 0h7v3.6h-7z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#900" stroke="#000" stroke-width=".1" d="M439.4 489h14.1v3.5h-14.1zm0 7h14.1v3.6h-14.1z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#900" stroke="#000" stroke-width=".1" d="M435.8 492.5h21.3v3.6h-21.3zm3.6 32h14.1v3.4h-14.1zm0 7h14.1v3.5h-14.1zm-3.6-3.5h21.3v3.5h-21.3z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#faae29" stroke="#000" stroke-width=".1" d="M467.7 513.8H482v3.5h-14.2zm-56.7-7.1h14.2v3.5H411zm0 7h14.2v3.6H411zm-3.5-3.5h7v3.6h-7zm14.2 0h7v3.6h-7zm42.5 0h7v3.6h-7zm14.2 0h7v3.6h-7z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -374.1 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -367.6 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -361 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.5 -41.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -41.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -36.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -36.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -353.2 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -346.6 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -340 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -350.5 -52.2)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -342.7 -52.2)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -350.6 -47.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -342.7 -47.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -374.2 -60.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -367.6 -60.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -361 -61)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -63.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -63.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -58.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -58.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -395.3 -49.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -388.7 -49.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -382.1 -49.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -392.6 -52)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -384.8 -52)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -392.7 -47.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -384.8 -47.6)"/>
+    </g>
+    <path fill="#fff" d="M134.6 247.8l4.4-2 4.4 2h-8.8zm-13.2 0l4.4-2 4.4 2h-8.8zm-13.2 0l4.4-2 4.4 2h-8.8zm26.4-47.4l4.4 2.1 4.4-2h-8.8zm-13.2 0l4.4 2.1 4.4-2h-8.8zm-13.2 0l4.4 2.1 4.4-2h-8.8z"/>
+    <path fill="#28ae66" d="M131 254l-5.2 4.1-5.1-4.1-5.2 4.1-5-4.1v2l3.3 2.1-1.7 2v2.1h1.7l1.7-2 1.7 2h1.7v-2l-1.7-2.1 3.5-2 3.4 2-1.7 2v2.1h1.7l1.7-2 1.7 2h1.7v-2l-1.7-2.1 3.4-2 3.4 2-1.7 2v2.1h1.7l1.7-2 1.7 2h1.7v-2l-1.7-2.1 3.5-2V254l-5.2 4-5-4.1zm0-59.7l-5.2-4.2-5.1 4.2-5.2-4.2-5 4.2v-2.1l3.3-2-1.7-2.1v-2h1.7l1.7 2 1.7-2h1.8v2l-1.7 2 3.4 2.1 3.4-2-1.7-2.1v-2h1.7l1.7 2 1.7-2h1.7v2l-1.7 2 3.4 2.1 3.4-2-1.7-2.1v-2h1.7l1.7 2 1.7-2h1.8v2l-1.7 2 3.4 2.1v2l-5.2-4-5 4zm38.7 34.3l5.5-4.5-5.5-4.4 5.5-4.5-5.5-4.5h2.8l2.7 3 2.8-1.5h2.7v1.5l-2.7 1.5 2.7 1.5v1.5H178l-2.8-1.5-2.7 3 2.7 3 2.8-1.6h2.7v1.5l-2.7 1.5 2.7 1.5v1.5H178l-2.8-1.5-2.7 3 2.7 3 2.8-1.5h2.7v1.5L178 233l2.7 1.5v1.5H178l-2.8-1.5-2.7 3h-2.8l5.5-4.5-5.5-4.4zm-87.9 0l-5.5-4.5 5.5-4.4-5.5-4.5 5.5-4.5h-2.7l-2.8 3-2.7-1.5h-2.7v1.5l2.7 1.5-2.7 1.5v1.5h2.7l2.8-1.5 2.7 3-2.8 3-2.7-1.6h-2.7v1.5l2.7 1.5-2.7 1.5v1.5h2.7l2.8-1.5 2.7 3-2.8 3-2.7-1.5h-2.7v1.5l2.7 1.4-2.7 1.5v1.5h2.7l2.8-1.5 2.7 3h2.7l-5.5-4.5 5.5-4.4z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".3" d="M-26.6 214.4h1.8v1.7h-1.8zm-1.8 1.7h1.8v1.8h-1.7zm-8.8 8.9h1.8v1.8h-1.8zm1.8-1.8h1.7v1.8h-1.7zm-58.5 0h1.8v1.8H-94zm-8.9-8.8h1.8v1.7h-1.8zm1.8 1.7h1.8v1.8h-1.8zm0-39h1.8v1.8h-1.8zm-1.8 1.8h1.8v1.8h-1.8zm10.7-10.6h1.7v1.8H-92zm-1.8 1.8h1.8v1.8H-94zm56.7-1.8h1.8v1.8h-1.8zm1.8 1.8h1.7v1.8h-1.7zm7 7h1.8v1.8h-1.7zm1.8 1.9h1.8v1.7h-1.8zM-92 225h1.7v1.8H-92z" transform="matrix(1.24 0 0 1.1622 204.9 -5.5)"/>
+    <path fill="#fff" d="M119 224.1h-6.4v-4h4.3v-3.8h4.3v-3.5h4.4v4.3c-3.6 0-6.5 3-6.5 7z"/>
+    <path fill="#faae29" d="M132 224.1h6.5v-4h-4.3v-3.8h-4.3v-3.5h-4.3v4.3c3.5 0 6.4 3 6.4 7z"/>
+    <path fill="#fff" d="M132 224.1h6.5v4h-4.3v3.9h-4.3v3.4h-4.3v-4.3c3.5 0 6.4-3 6.4-7z"/>
+    <path fill="#faae29" d="M119 224.1h-6.4v4h4.3v3.9h4.3v3.4h4.4v-4.3c-3.6 0-6.5-3-6.5-7z"/>
+    <path fill="#28ae66" d="M132 224.1h-6.4v-7c3.5 0 6.4 3.2 6.4 7z"/>
+    <path fill="#ca3745" d="M132 224.1h-6.4v7c3.5 0 6.4-3.1 6.4-7z"/>
+    <path fill="#28ae66" d="M119 224.1h6.6v7c-3.6 0-6.5-3.1-6.5-7z"/>
+    <path fill="#ca3745" d="M119 224.1h6.6v-7c-3.6 0-6.5 3.2-6.5 7z"/>
+    <path fill="#28ae66" d="M132.4 249.8l-6.6-4-6.6 4-6.6-4-6.6 4v-2l4.4-2-2.2-2.1v-2h2.2l2.2 2 2.2-2h2.2v2l-2.2 2 4.4 2.1 4.4-2-2.2-2.1v-2h2.2l2.2 2 2.2-2h2.2v2l-2.2 2 4.4 2.1 4.4-2-2.2-2.1v-2h2.2l2.2 2 2.2-2h2.2v2l-2.2 2 4.4 2.1v2l-6.6-4-6.6 4zm0-51.4l-6.6 4.1-6.6-4.1-6.6 4.1-6.6-4.1v2l4.4 2.1-2.2 2v2.1h2.2l2.2-2 2.2 2h2.2v-2l-2.2-2 4.4-2.2 4.4 2.1-2.2 2v2.1h2.2l2.2-2 2.2 2h2.2v-2l-2.2-2 4.4-2.2 4.4 2.1-2.2 2v2.1h2.2l2.2-2 2.2 2h2.2v-2l-2.2-2 4.4-2.2v-2l-6.6 4.1-6.6-4.1zm24.1 30.9l-3.3-5.2 3.3-5.1-3.3-5.2 3.3-5.1H155l-1.7 3.4-1.6-1.7H150v1.7l1.7 1.7-1.7 1.7v1.7h1.7l1.6-1.7 1.7 3.5-1.7 3.4-1.6-1.7H150v1.7l1.7 1.7-1.7 1.7v1.8h1.7l1.6-1.8 1.7 3.5-1.7 3.4-1.6-1.7H150v1.7l1.7 1.7-1.7 1.7v1.8h1.7l1.6-1.8 1.7 3.5h1.6l-3.3-5.2 3.3-5.1z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".4" d="M-101 177.2l-7 7v26.6l7 7.1h32l7-7v-26.6l-7.1-7.1H-101zm-1.8-5.4l-17.7 17.8v16l17.8 17.6h35.4l17.7-17.7v-16l-17.7-17.7h-35.4z" transform="matrix(1.24 0 0 1.1622 231.2 -5.5)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 .7748 208.4 136)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 -.7748 208.4 312.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 -.7748 222.4 312.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 .7748 222.4 136)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 -.7748 201.4 312.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 -.7748 215.4 312.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 -.7748 229.5 312.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(1.8599 0 0 -1.7432 293.8 558.7)"/>
+    <path fill="#28ae66" d="M95 229.3l3.3-5.2L95 219l3.3-5.2-3.3-5.1h1.7l1.6 3.4 1.7-1.7h1.6v1.7l-1.6 1.7 1.6 1.7v1.8H100l-1.7-1.8-1.6 3.5 1.6 3.4 1.7-1.7h1.6v1.7l-1.6 1.7 1.6 1.7v1.8H100l-1.7-1.8-1.6 3.5 1.6 3.4 1.7-1.7h1.6v1.7l-1.6 1.7 1.6 1.7v1.8H100l-1.7-1.8-1.6 3.5H95l3.3-5.2-3.3-5.1z"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.24 0 0 1.046 253.2 57.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".4" d="M-99.2 180.7l-3.6 3.6v26.5l3.6 3.6h-5.3v-33.7h5.3z" transform="matrix(1.24 0 0 1.1622 222.4 -5.5)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 .7748 201.4 136)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 .7748 215.4 136)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(.992 0 0 .7748 229.5 136)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".4" d="M-99.2 180.7l-3.6 3.6v26.5l3.6 3.6h-5.3v-33.7h5.3z" transform="matrix(-1.24 0 0 1.1622 29.1 -5.5)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(-1.8599 0 0 -1.7432 -42.3 558.7)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(-1.8599 0 0 1.7432 -42.3 -110.5)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(1.8599 0 0 1.7432 293.8 -110.5)"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".4" d="M-101 177.2l-7 7v26.6l7 7.1h32l7-7v-26.6l-7.1-7.1H-101zm0-1.8l-8.8 8.8v26.6l8.8 8.9h32l8.8-8.9v-26.6l-8.9-8.8H-101z" transform="matrix(1.24 0 0 1.1622 231.2 -5.5)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.24 0 0 1.04607 253.2 61)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.24 0 0 1.046 253.2 64.8)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.24 0 0 1.04607 253.2 68.4)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.24 0 0 1.04607 253.2 53.6)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.24 0 0 1.046 -1.6 57.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.24 0 0 1.04607 -1.6 61)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.24 0 0 1.046 -1.6 64.8)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.24 0 0 1.04607 -1.6 68.5)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.24 0 0 1.04607 -1.6 53.6)"/>
+    <path fill="#970000" stroke="#000" stroke-width=".3" d="M-101 179v37h8.9v8.9h56.7V216h8.8v-37h-8.8v-8.8h-56.7v8.8h-8.9zm1.8 1.7v33.7h8.8v8.8h53.2v-8.8h8.9v-33.7h-8.9V172h-53.2v8.8h-8.8z" transform="matrix(1.24 0 0 1.1622 204.9 -5.5)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-28.4 69.1l-5.3-7.1v-5.3l-5.3-5.3h-10.6l-8.9-5.3h-28.3l-8.9 5.3h-10.6l-5.3 5.3V62l-5.3 7v14.3l5.3 7v5.4l5.3 5.3h10.6l8.9 5.3h28.3l8.9-5.3H-39l5.4-5.3v-5.3l5.3-7.1V69z" transform="matrix(1.24 0 0 1.1176 215.9 -35.5)"/>
+    <path fill="#faae29" d="M73 49.6v6l6.7 7.9v6l6.6 5.9h13.1l11 5.9h15.4V49.6H73.1z"/>
+    <path fill="#ca3745" d="M107.3 63.5l-8 5h-4.9l1.6 1.8-3.2 3.4 1.6 1.7 4.8-1.7 1.6 1.7.8-4.6 8.8-5.4-3.2-2z"/>
+    <path fill="#ca3745" d="M98.5 59.5l-8 5.1h-4.9l1.6 1.7-3.2 3.4 1.6 1.7 4.8-1.7 1.6 1.7.8-4.6 8.8-5.3-3.1-2zm-4.4-8l-8 5.2h-4.9l1.6 1.7-3.2 3.4 1.6 1.7 4.8-1.7 1.6 1.7.8-4.6 8.8-5.3-3.1-2z"/>
+    <path fill="#faae29" d="M178.5 49.6v-6l-6.6-7.8v-6l-6.6-6h-13.2l-11-5.9h-15.3v31.7h52.7z"/>
+    <path fill="#ca3745" d="M125.8 81.3h-4l-4.8-4h-7.5l-4-2 2-2 4 2h4.1l4-5.9 6.2 2v4h-6.1l6 5.9z"/>
+    <path fill="#fff" d="M73 49.6v-6l6.7-7.8v-6l6.6-6h13.1l11-5.9h15.4v31.7H73.1z"/>
+    <path fill="#ca3745" d="M125.8 18h-4l-4.8 3.9h-7.5l-4 2 2 2 4-2h4.1l4 5.9 6.2-2v-4h-6.1l6-5.9zm0 0h4l4.8 3.9h7.5l4 2-2 2-4-2H136l-4.1 5.9-6.1-2v-4h6l-6-5.9z"/>
+    <path fill="#fff" d="M178.5 49.6v6l-6.6 7.9v6l-6.6 5.9h-13.2l-11 5.9h-15.3V49.6h52.7z"/>
+    <path fill="#ca3745" d="M125.8 81.3h4l4.8-4h7.5l4-2-2-2-4 2H136l-4.1-5.9-6.1 2v4h6l-6 5.9zM98.5 39.7l-8-5h-4.9l1.6-1.8-3.2-3.4 1.6-1.7 4.8 1.7 1.6-1.7.8 4.6 8.8 5.3-3.1 2zm45.8-4l8-5h4.8l-1.5-1.8 3.2-3.3-1.7-1.7-4.7 1.7-1.7-1.7-.7 4.5-8.8 5.4 3.1 2z"/>
+    <path fill="#ca3745" d="M107.3 35.8l-8-5.1h-4.9l1.6-1.8-3.2-3.3 1.6-1.7 4.8 1.7 1.6-1.7.8 4.5 8.8 5.4-3.2 2zM94 47.5l-8-5h-4.9l1.6-1.8-3.2-3.4 1.6-1.7 4.8 1.7 1.6-1.7.8 4.6 8.8 5.3-3.1 2z"/>
+    <path fill="#fff" d="M77 49.6h2l2 2 2-2h42.8v27.7h-2l2 2v2l-6.1-6v-2h2v2h2v-2l-16.4-8.7h-14v-8.5l-6.1-4.5H83l-2 2 2 2h-2l-4.1-6z"/>
+    <path fill="#faae29" d="M77 49.6h2l2-2 2 2h42.8V21.9h-2l2-2v-2l-6.1 6v2h2v-2h2v2l-16.4 8.7h-14v8.6l-6.1 4.4H83l-2-2 2-2h-2l-4.1 6z"/>
+    <path fill="#28ae66" d="M86.3 49.6h39.5v23.8l-17.6-10H95v-7.9l-8.7-5.9z"/>
+    <path fill="#ca3745" d="M153.1 39.7l8-5h4.8l-1.6-1.8 3.2-3.4-1.6-1.7-4.8 1.7-1.6-1.7-.7 4.6-8.8 5.3 3.1 2zm4.4 8l8-5.2h4.8l-1.6-1.7 3.2-3.4-1.6-1.7-4.8 1.7-1.6-1.7-.7 4.6-8.8 5.3 3.1 2z"/>
+    <path fill="#fff" d="M174.6 49.6h-2l-2-2-2.1 2h-42.7V21.9h2l-2-2v-2l6 6v2h-2v-2h-2v2l16.5 8.7h14v8.6l6.1 4.4h4l2.1-2-2-2h2l4 6z"/>
+    <path fill="#28ae66" d="M165.3 49.6h-39.5V26l17.6 9.9h13.1v7.9l8.8 6z"/>
+    <path fill="#ca3745" d="M144.3 63.5l8 5h4.9l-1.6 1.8 3.2 3.4-1.6 1.7-4.8-1.7-1.6 1.7-.8-4.6-8.8-5.4 3.1-2z"/>
+    <path fill="#ca3745" d="M153.1 59.5l8 5.1h4.8l-1.6 1.7 3.2 3.4-1.6 1.7-4.8-1.7-1.6 1.7-.7-4.6-8.8-5.3 3.1-2zm4.4-8l8 5.2h4.8l-1.6 1.7 3.2 3.4-1.6 1.7-4.8-1.7-1.6 1.7-.7-4.6-8.8-5.3 3.1-2z"/>
+    <path fill="#faae29" d="M174.6 49.6h-2l-2 2-2.1-2h-42.7v27.7h2l-2 2v2l6-6v-2h-2v2h-2v-2l16.5-8.7h14v-8.5l6.1-4.5h4l2.1 2-2 2h2l4-6z"/>
+    <path fill="#ca3745" d="M165.3 49.6h-39.5v23.8l17.6-10h13.1v-7.9l8.8-5.9zm-79 0h39.5V26l-17.6 9.9H95v7.9l-8.7 6z"/>
+    <path fill="#ca3745" d="M130.1 49.6l11-6h6.7l-2.2-2 4.4-3.9-2.3-2-6.5 2-2.2-2-1 5.3-12.2 6.3 4.3 2.3zm-8.6 0l-11 6h-6.7l2.2 2-4.4 3.9 2.2 2 6.6-2 2.2 2 1-5.3 12.2-6.3-4.4-2.3z"/>
+    <path fill="#28ae66" d="M121.5 49.6l-11-6h-6.7l2.2-2-4.4-3.9 2.2-2 6.6 2 2.2-2 1 5.3 12.2 6.3-4.4 2.3zm8.6 0l11 6h6.7l-2.2 2 4.4 3.9-2.3 2-6.5-2-2.2 2-1-5.3-12.2-6.3 4.3-2.3z"/>
+    <path fill="#fff" d="M112.6 49.6l13.2-9.9 13.2 9.9-13.2 9.9-13.2-9.9z"/>
+    <path fill="#ca3745" d="M83 53.6l2.1 2-2 2h-2l-6.2-8h2l4.1 6h2l-2-2 2-2h4.1v2h-4zm0-8l2.1-2-2-2h-2l-6.2 8h2l4.1-6h2l-2 2 2 2h4.1v-2h-4zm85.5 8l-2 2 2 2h2l6.1-8h-2l-4 6h-2.1l2-2-2-2h-4v2h4zm0-8l-2-2 2-2h2l6.1 8h-2l-4-6h-2.1l2 2-2 2h-4v-2h4zm-44.8-4h4.1v16h-4z"/>
+    <path fill="#ca3745" d="M117.7 45.6h16.2v8h-16.2z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".1" d="M333 170l-10.6 5.4v8.8l10.7 5.4h10.6l10.6-5.4v-8.8l-10.6-5.3h-10.6z" transform="matrix(3.4444 0 0 3.7273 -1039.8 -283.1)"/>
+    <path fill="#c00" d="M84.5 384h2.2v-4.1H91v4h2.2v-9.4H91v4h-4.4v-4h-2.2v9.4zm56 31.5h2.3v-4h4.4v4h2.2V406h-2.2v4.1h-4.4v-4h-2.2v9.4zm-35.4-47.3h2.2V364h4.5v4h2.2v-9.4h-2.2v4h-4.4v-4H105v9.5zm32.5 0h2.2V364h4.4v4h2.3v-9.4h-2.3v4h-4.4v-4h-2.2v9.5zm20.7 15.7h2.2v-4h4.4v4h2.2v-9.4H165v4h-4.4v-4h-2.2v9.4zm0 15.8h2.2v-4h4.4v4h2.2v-9.4H165v4h-4.4v-4h-2.2v9.4z"/>
+    <path fill="#faae29" d="M125.8 421.9V387h53.1v15.8l-35.4 19h-17.7zm0-69.5V387H72.6v-15.8l35.5-19h17.7z"/>
+    <path fill="#fff" d="M125.8 352.4V387h53.1v-15.8l-35.4-19h-17.7zm0 69.5V387H72.6v15.8l35.5 19h17.7z"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(1 0 0 .8913 331.3 44.5)"/>
+    <path fill="#ca3745" d="M108 376v22.2h5.4l12.4 6.3 12.4-6.3h5.3V376h-5.3l-12.4-6.4-12.4 6.4H108z"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(-1 0 0 -.8913 -79.7 729.8)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(-1 0 0 .8913 -79.7 44.5)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(1 0 0 -.8913 331.3 729.8)"/>
+    <path fill="#ca3745" d="M83.3 399.8h2.2V395h4.4v4.7h2.2v-11H90v4.7h-4.4v-4.7h-2.2v11zm21.2 15.7h2.2v-4.7h4.5v4.7h2.2v-11h-2.2v4.7h-4.5v-4.7h-2.2v11zm-21.2-41h2.2v4.7h4.4v-4.7h2.2v11H90v-4.7h-4.4v4.7h-2.2v-11zm21.2-15.8h2.2v4.7h4.5v-4.7h2.2v11h-2.2V365h-4.5v4.7h-2.2v-11zm33.7 56.8h2.2v-4.7h4.4v4.7h2.3v-11h-2.3v4.7h-4.4v-4.7h-2.2v11zm21.3-30h2.2v-4.7h4.4v4.7h2.2v-11h-2.2v4.7h-4.4v-4.7h-2.2v11z"/>
+    <path fill="#ca3745" d="M138.2 415.5h2.2v-4.7h4.4v4.7h2.3v-11h-2.3v4.7h-4.4v-4.7h-2.2v11z"/>
+    <path fill="#ca3745" d="M138.2 415.5h2.2v-4.7h4.4v4.7h2.3v-11h-2.3v4.7h-4.4v-4.7h-2.2v11zm21.3-15.8h2.2V395h4.4v4.7h2.2v-11h-2.2v4.7h-4.4v-4.7h-2.2v11zm-21.3-30h2.2V365h4.4v4.7h2.3v-11h-2.3v4.7h-4.4v-4.7h-2.2v11z"/>
+    <path fill="#fff" d="M127.6 387.1l7-5.8h3.6v3h-3.5v1.4h5.3v-5.8h-5.3v-4.3h-7.1v4.3h1.7V377h3.6v3l-7.1 5.7-7-5.8V377h3.4v3h1.8v-4.4h-7v4.3h-5.4v5.8h5.3v-1.5h-3.5v-2.8h3.5l7.1 5.7-7 5.8h-3.6v-3h3.5v-1.4h-5.3v5.8h5.3v4.3h7.1v-4.3h-1.8v2.9h-3.5v-2.9l7-5.8 7.2 5.8v2.9h-3.6v-2.9h-1.7v4.3h7v-4.3h5.4v-5.8h-5.4v1.5h3.6v2.9h-3.5l-7.1-5.8z"/>
+    <g transform="matrix(1 0 0 .92857 198.4 17.6)">
+      <path fill="#ca3745" d="M-122.3 134.3l3.4-3.8h20.6l15.4-16.7h20.6l15.4 16.8h20.6l3.4 3.7-3.4 3.7H-47l-15.4 16.8H-83L-98.3 138H-119l-3.4-3.7z"/>
+      <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M372 391.5l2-2h22.8l17.1-19.4h19l17.2 19.5h22.8l1.9 2-1.9 1.9h-22.8L434.8 411H412l-15.2-17.5h-22.9l-1.9-2z" transform="matrix(.93104 0 0 .90908 -466.9 -221.3)"/>
+      <path fill="#faae29" d="M-64 136.2l6.8 7.4-3.4 3.7-1.8-1.8H-64v1.8l1.7 1.9h3.5l3.4-3.7v-3.8l-6.9-7.4 6.9-7.5v-3.7l-3.4-3.7h-3.5l-1.7 1.8v1.9h1.7l1.8-1.9 3.4 3.8-6.9 7.4-6.8-7.4 6.8-7.5v-1.9h-1.7l-6.8 7.5-6.9-7.5h-1.7v1.9l6.8 7.5-6.8 7.4-6.9-7.4 3.5-3.8 1.7 1.9h1.7v-1.9l-1.7-1.8h-3.5l-3.4 3.7v3.7l6.9 7.5-6.9 7.4v3.8l3.4 3.7h3.5l1.7-1.9v-1.8H-83l-1.7 1.8-3.5-3.7 6.9-7.4 6.8 7.4-6.8 7.5v1.8h1.7l6.9-7.4 6.8 7.4h1.7v-1.8l-6.8-7.5 6.8-7.4zm-8.6-9.4l-6.9 7.5 6.9 7.4 6.8-7.4-6.8-7.5zm-10.3 28v15l1.7-2 1.7 2 1.7-2 1.7 2 1.8-2 1.7 2 1.7-2 1.7 2 1.7-2 1.7 2 1.7-2 1.8 2v-15H-83zm20.6-41v-15l-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2v15h20.6zm29 16.8v-15l-1.6 2-1.7-2-1.7 2-1.8-2-1.7 2-1.7-2-1.7 2-1.7-2v15h13.7zm-65 0v-15l-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2v15h13.7zm65.1 7.4v15l-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2v-15h13.7zm-65.2 0v15l-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.8-2-1.7 2v-15h13.7z"/>
+      <path fill="#28ae66" d="M-62.4 154.8v9.3l1.8-1.9 1.7 2 1.7-2 1.7 2 1.7-2 1.7 2 1.8-2 1.7 2 1.7-2V138l-15.5 16.8zm-20.5 0v9.3l-1.8-1.9-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.8-2V138l15.5 16.8zm0-41v-9.3l-1.8 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.8 1.8v24.3l15.5-16.8zm20.5 0v-9.3l1.8 1.8 1.7-1.8 1.7 1.8 1.7-1.8 1.7 1.8 1.7-1.8 1.7 1.8 1.8-1.8 1.7 1.8v24.3l-15.5-16.8zm-49.7 35.4l-1.7-1.9-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2v-30l1.7 2 1.7-2 1.8 2 1.7-2 1.7 2 1.7-2 1.7 2 1.7-2v11.3h-6.8l-3.5 3.7 3.5 3.7h6.8v11.2zm78.9 0l1.7-1.9 1.7 2 1.7-2 1.8 2 1.7-2 1.7 2 1.7-2 1.7 2v-30l-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2v11.3h6.9l3.4 3.7-3.4 3.7h-6.9v11.2z"/>
+      <path fill="#fff" d="M-91.4 156s-1.4 1.4-1.4 2.2c0 .7 1.5 2.2 2.2 2.2.8 0 2.1-1.5 2.1-2.2s-1.4-2.2-1.4-2.2v-3s3 5.1 3 2.9c0-1.6-3-4.3-3-4.3h-1.5s-3 3.2-3 4.3c0 2.2 3-2.9 3-2.9v3z"/>
+      <path fill="#ca3745" d="M-73.5 161.7s-1.7 2-1.7 3 1.8 3.2 2.6 3.2c1 0 2.5-2.1 2.5-3.1s-1.7-3.1-1.7-3.1v-4.2s3 6.8 3 3.7c0-2-3-5.7-3-5.7h-1.7s-3.5 4.6-3 5.7c0 3.1 3-3.7 3-3.7v4.2z"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -482.4 -277.9)"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -463.5 -277.9)"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -444.7 -277.9)"/>
+      <path fill="#fff" d="M-91.7 112.8s-1.4-1.5-1.4-2.2c0-.7 1.5-2.3 2.1-2.3.8 0 2.1 1.5 2.1 2.2 0 .8-1.4 2.3-1.4 2.3v3s3.1-5.2 3.1-3c0 1.6-3 4.4-3 4.4h-1.5s-3.1-3.2-3.1-4.3c0-2.2 3 2.8 3 2.8v-3z"/>
+      <path fill="#ca3745" d="M-73.9 107s-1.7-2-1.7-3 1.9-3.1 2.6-3.1c1 0 2.6 2 2.6 3s-1.7 3.2-1.7 3.2v4s3-6.7 3-3.6c0 2-3 5.8-3 5.8H-74s-3.5-4.7-3-5.8c0-3 3 3.7 3 3.7V107z"/>
+      <path fill="#fff" d="M-54.9 156s-1.4 1.4-1.4 2.2c0 .7 1.5 2.2 2.2 2.2.8 0 2.1-1.5 2.1-2.2s-1.4-2.2-1.4-2.2v-3s3 5.1 3 2.9c0-1.6-3-4.3-3-4.3H-55s-3 3.2-3 4.3c0 2.2 3-2.9 3-2.9v3zm-.3-43.2s-1.4-1.5-1.4-2.3c0-.6 1.5-2.2 2.1-2.2.8 0 2.1 1.5 2.1 2.2 0 .8-1.4 2.3-1.4 2.3v3s3.1-5.2 3.1-3c0 1.6-3 4.4-3 4.4h-1.5s-3.1-3.2-3.1-4.3c0-2.2 3 2.8 3 2.8v-3z"/>
+      <path fill="#ca3745" d="M-106.3 145.6s-1.9 1.4-1.9 2c0 .7 2 2.2 2.9 2.1 1 0 2.8-1.3 2.8-2s-1.9-2.1-1.9-2.1v-2.8s3.4 4.5 3.4 2.5c0-1.4-3.4-3.9-3.4-3.9h-1.9s-3.9 3.2-3.3 3.9c0 2 3.3-2.5 3.3-2.5v2.8zm-.4-21.1s-1.9-1.4-1.9-2.1c0-.7 2-2.1 2.9-2 1 0 2.8 1.3 2.8 2s-1.9 2-1.9 2v2.8s3.4-4.5 3.4-2.4c0 1.3-3.4 3.8-3.4 3.8h-1.9s-3.9-3.1-3.3-3.8c0-2 3.3 2.4 3.3 2.4v-2.7zm66.3 20.6s-2 1.4-2 2.1c0 .7 2.1 2.1 3 2.1 1 0 2.8-1.4 2.8-2 0-.8-2-2.2-2-2.2v-2.7s3.4 4.5 3.4 2.4c0-1.3-3.3-3.8-3.3-3.8h-2s-3.8 3.1-3.3 3.8c0 2.1 3.4-2.4 3.4-2.4v2.8zm-.4-21s-2-1.4-2-2.1c0-.7 2.1-2.1 3-2.1 1 0 2.8 1.4 2.8 2 0 .8-2 2.1-2 2.1v2.8s3.4-4.5 3.4-2.5c0 1.4-3.3 3.9-3.3 3.9h-2s-3.8-3.1-3.3-3.8c0-2.1 3.4 2.4 3.4 2.4V124z"/>
+      <path fill="#fff" d="M-120.3 145.4c-.6-1.3-.4-1.9-.4-2.6 0-.7 1.7-2 2.3-2 .8 0 2.1 1.4 2.1 2.2 0 .7 0 1.3-.3 2.6l-.8-2.1c-1.1 3-1.2 3-1.8-.1l-1 2zm0-21.5c-.5 1.3-.4 1.9-.4 2.6 0 .7 1.7 2 2.4 2 .8 0 2.1-1.4 2.1-2.2 0-.7 0-1.3-.3-2.6l-.9 2.1c-1-3-1.1-3-1.8.1l-1-2zm92.5 21.2c-.6-1.3-.5-1.9-.5-2.6 0-.7 1.8-2 2.4-2 .8 0 2.1 1.5 2.1 2.2 0 .7 0 1.4-.3 2.6l-.9-2.1c-1 3-1.1 3.1-1.8 0l-1 1.9zm0-21.4c-.6 1.2-.4 1.8-.4 2.6 0 .6 1.7 2 2.3 2 .8 0 2.2-1.5 2.2-2.2 0-.8 0-1.4-.3-2.7l-1 2.2c-1-3.1-1-3.2-1.7 0l-1-2z"/>
+      <path fill="#ca3745" stroke="#000" stroke-width=".1" d="M115.2 177.2v-5.4h-16v-10.6H85v-3.5H72.6v-32H85v-3.5h14.2v-10.6h16v-5.3h21.2v5.3h16v10.6h14.1v3.6H179v31.9h-12.4v3.5h-14.1v10.6h-16v5.3h-21.2zm-1.8 1.7v-5.3h-16V163H83.3v-3.6H70.9V124h12.4v-3.5h14.1v-10.7h16v-5.3h24.8v5.3h16v10.7h14.1v3.5h12.4v35.4h-12.4v3.6h-14.2v10.6h-16v5.3h-24.7z" transform="matrix(1 0 0 .99999 -198.4 -7)"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tn.svg
new file mode 100644
index 0000000..d46a1cd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tn.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tn" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M124 0h496v496H124z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
+    <path fill="#e70013" d="M0 0h744v496H0z"/>
+    <path fill="#fff" d="M497.8 247.8a125.1 125.1 0 11-250.2 0 125.1 125.1 0 01250.2 0z"/>
+    <path fill="#e70013" d="M372.7 330.8a83 83 0 01-83-83 83 83 0 0183-83c11.4 0 24.5 2.7 33.3 9.2-60.6 2.3-76 53.7-76 74.5s9.8 67 76 73.8a70.4 70.4 0 01-33.3 8.5z"/>
+    <path fill="#e70013" d="M445.8 282.7L408.1 269l-24.9 31.4 1.4-40-37.6-14 38.6-11.1 1.7-40 22.4 33.2 38.6-10.8-24.7 31.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/to.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/to.svg
new file mode 100644
index 0000000..201d6bc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/to.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-to" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#c10000" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M0 0h218.3v175H0z"/>
+    <g fill="#c10000">
+      <path d="M89.8 27.3h34.8v121.9H89.8z"/>
+      <path d="M168.2 70.8v34.8H46.3V70.8z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tr.svg
new file mode 100644
index 0000000..861d4ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tr.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tr" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#e30a17" d="M0 0h512v512H0z"/>
+    <path fill="#fff" d="M348.8 264c0 70.6-58.3 127.9-130.1 127.9s-130.1-57.3-130.1-128 58.2-127.8 130-127.8S348.9 193.3 348.9 264z"/>
+    <path fill="#e30a17" d="M355.3 264c0 56.5-46.6 102.3-104.1 102.3s-104-45.8-104-102.3 46.5-102.3 104-102.3 104 45.8 104 102.3z"/>
+    <path fill="#fff" d="M374.1 204.2l-1 47.3-44.2 12 43.5 15.5-1 43.3 28.3-33.8 42.9 14.8-24.8-36.3 30.2-36.1-46.4 12.8-27.5-39.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tt.svg
new file mode 100644
index 0000000..87e439a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tt.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tt" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z" style="width:0"/>
+  <g fill-rule="evenodd">
+    <path fill="#e00000" d="M371 512L0 1v510.7l371 .3zM141 0l371 511V.2L141 0z"/>
+    <path d="M22.2.2h94.9l374.5 511.3h-97.9L22.2.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tv.svg
new file mode 100644
index 0000000..f30c8f3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tv.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tv" viewBox="0 0 512 512">
+  <defs id="defs540">
+    <clipPath id="a">
+      <path id="path537" fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <path id="rect597" fill="#009fca" fill-opacity="1" stroke-width="4.9" d="M0 0h512v512H0z"/>
+  <path id="path572" fill="#fff40d" fill-rule="evenodd" stroke-width="1pt" d="M478 226.3l7.1 20.4-18.4-12.6-18.5 12.6 7.1-20.4-18.5-12.6h22.9l7-20.4 7 20.4h22.8zm-57.2 162.8l7 20.4-18.4-12.7-18.4 12.7 7-20.4-18.4-12.7h22.8l7-20.4 7 20.5h22.9zm57.3-36.9l7 20.4-18.4-12.6-18.5 12.6 7.1-20.4-18.5-12.6h22.9l7-20.4 7 20.4h22.8zm-246.2 118l7.1 20.5-18.4-12.7-18.5 12.7 7.1-20.4-18.5-12.6h22.8l7-20.4 7.1 20.4h22.8zm43.1-88.4l-7-20.4 18.4 12.6 18.4-12.6-7 20.4 18.4 12.6h-22.8l-7 20.4-7-20.4h-22.8zm67.3-93l-7.1-20.4 18.4 12.6 18.5-12.6-7 20.4 18.4 12.6h-22.8l-7 20.4-7-20.4h-22.9zm56.5-19.3l-7-20.4 18.4 12.6 18.4-12.6-7 20.4 18.4 12.6h-22.8l-7 20.4-7-20.4h-22.9zm-56.5 161l-7.1-20.4 18.4 12.6 18.5-12.6-7 20.4 18.4 12.6h-22.8l-7 20.4-7-20.4h-22.9zM275 446.9l-7-20.4 18.4 12.6 18.4-12.6-7 20.4 18.4 12.6h-22.8l-7 20.4-7-20.4h-22.8z" opacity="1" stop-opacity="1"/>
+  <g id="g947" transform="scale(.5)">
+    <path id="path925" fill="#012169" d="M0 0h512v512H0z"/>
+    <path id="path927" fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
+    <path id="path929" fill="#C8102E" d="M184 324l11 34L42 512H0v-3zm124-12l54 8 150 147v45zM512 0L320 196l-4-44L466 0zM0 1l193 189-59-8L0 49z"/>
+    <path id="path931" fill="#FFF" d="M176 0v512h160V0zM0 176v160h512V176z"/>
+    <path id="path933" fill="#C8102E" d="M0 208v96h512v-96zM208 0v512h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tw.svg
new file mode 100644
index 0000000..5f284fc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tw.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#a)" transform="scale(1.0321)">
+    <path fill="#fe0000" d="M0 0h744v496H0z"/>
+    <path fill="#000095" d="M0 0h373.7v248H0z"/>
+    <path fill="#fff" d="M273.3 173l-45.8-9.4 9.7 45.8-35-31.1-14.4 44.5-14.8-44.4-34.8 31.3 9.5-45.8-45.8 9.7 31-35-44.5-14.4 44.5-14.8-31.4-34.8 45.9 9.5-9.8-45.8 35 31 14.5-44.5 14.7 44.5 34.8-31.4-9.4 45.9L273 74l-31.1 35 44.5 14.4-44.4 14.8z"/>
+    <path fill="#000095" d="M231 169.5l-14.4 7.7-14.1 8.3-16.4-.6-16.4.2-14-8.6-14.2-8-7.7-14.5-8.4-14 .5-16.4-.1-16.4 8.7-13.8 8-14.3 14.5-7.7 14-8.3 16.5.5 16.4-.2 13.9 8.7 14.3 8 7.7 14.5 8.3 14-.5 16.4.2 16.3-8.7 14z"/>
+    <path fill="#fff" d="M237 124.3a50.3 50.3 0 11-100.5 0 50.3 50.3 0 01100.5 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tz.svg
new file mode 100644
index 0000000..f993ff1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/tz.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tz" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M102.9 0h496v496H103z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-106.2) scale(1.0321)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#09f" d="M0 0h744.1v496H0z"/>
+      <path fill="#090" d="M0 0h744.1L0 496V0z"/>
+      <path d="M0 496h165.4L744 103.4V0H578.7L0 392.7v103.4z"/>
+      <path fill="#ff0" d="M0 378L567 0h56L0 415.3v-37.2zm121.1 118l623-415.3V118L177 496h-55.9z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ua.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ua.svg
new file mode 100644
index 0000000..18ebe0d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ua.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ua" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffd500" d="M0 0h512v512H0z"/>
+    <path fill="#005bbb" d="M0 0h512v256H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ug.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ug.svg
new file mode 100644
index 0000000..d9be945
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ug.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ug" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M124 0h496v496H124z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
+    <path fill="#ffe700" fill-rule="evenodd" d="M0 330.7h744v82.7H0z"/>
+    <path fill-rule="evenodd" d="M0 248h744v82.7H0z"/>
+    <path fill="#de3908" fill-rule="evenodd" d="M0 165.4h744V248H0z"/>
+    <path fill="#ffe700" fill-rule="evenodd" d="M0 82.7h744v82.7H0z"/>
+    <path fill-rule="evenodd" d="M0 0h744v82.7H0z"/>
+    <path fill="#fffdff" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M449.3 248a77.2 77.2 0 11-154.5 0 77.2 77.2 0 01154.5 0z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M358.4 188.8l-5-9.2c2-2 5.2-3.4 10.4-3.4l-.5 10-4.9 2.6z"/>
+    <path fill="#ffe700" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M363.3 186.4l.6-10.2s10.4-.6 16 6.1l-5.5 8-11.2-4z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M374.6 190.2l5.1-8c3.4 3.6 4.8 6.2 5.4 10 0 .2-8.1 2-8.1 2l-2.4-4z"/>
+    <path fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M361 320.9s9.6-11 28.2-8.7c-2.8-4.5-11.9-4-11.9-4s-2.8-21.4-.6-22.4 11.5 0 11.5 0c1.3 0 3.4-3.3 1.7-5.4s-6.6-10.2-4.6-11.8c2-1.6 13 .9 13 .9l-31-39.8s-3.2-15 3.2-22.1c7.6-6.4 6.8-13.2 6.6-13.1-1-7-11.6-12-18.8-5.6-4.2 5.1-1.4 9-1.4 9s-11 3-11.5 5c-.4 1.8 12.5-.4 12.5-.4l-1.2 8.8s-25.2 23-6 42.7c.3 0 .7-.9.7-.9s6.8 8.4 13.9 10.2c6.7 6.9 6 5.8 6 5.8s1.4 10.8.1 13a93.4 93.4 0 00-21.2-.2c-2.3.7-11.1.3-9 14.6l3.2-7.3s-.2 5.2 1.9 7c-.4-5.4 2-9.1 2-9.1s.4 6 1.8 6.8c1.3 1 1.3-9.6 8.6-8.8 7.3 1 12.6.7 12.6.7s2.4 20.6 1.6 22.6c-5.2-1.3-17.8.5-18.6 3.7 7.4-.5 10.8.4 10.8.4s-6 5.3-4.1 8.4z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M364 208s-18.4 20.2-10.5 35.7c.5-2.2.3-3.5.5-3.4-.4-.3 2.3 1.8 2 1.4.2-1.1-.7-3.5-.7-3.5l2.4.6-1.4-2.7 3.5.5s-1.2-3.4-.8-3.4a94 94 0 012.9.2c-5.2-9.3-.3-17 2-25.3z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" stroke-width=".9" d="M370.3 190.8s1 7-2.8 9c-.6.4-3 1.2-2.7 2.6.5 1.9 1.5 1.5 3 1.2 4-.7 8.6-9.2 2.5-12.8z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M363.5 196.7a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M357.6 202.5c-1 .8-6 6.1-1 8 5.2-1.4 3.7-2.3 4.9-3.5 0-2.3-2.6-3-3.9-4.5z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M368.7 252.4c-.3 1.2-1.4 5.4.2 8.6 4.4-1.8 6.4-1.3 7.9-.3-3.6-3-5-4.1-8.1-8.3z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M376.3 272.4l.2 9.8s3.5.7 5 0c1.6-.6 0-6.8-5.2-9.8z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M401.2 273.6s-6.4-15.3-22.5-19.2-14.1-21-12.8-22.1c.7-1.5 1.2-3.8 5.9-1.6 4.7 2.2 26.1 13 29.2 13.5s.4 29.8.2 29.4z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".8" d="M385.8 254.4c-.3.1 21.6 12.9 15 23.9 6.3-4.1 4.2-11.4 4.2-11.4s5.1 13.3-7.3 19.8c1.4 1.2 2.2.9 2.2.9l-2 2.1s-1 1.6 7.3-2.4c-2.3 1.8-2.5 3.1-2.5 3.1s.7 1.8 6.1-3a30.1 30.1 0 00-5.4 7.2c12-1.1 37.8-39.7-8.1-51.1l2 2.2-11.5 8.7z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M386.7 250.6c3 2 4 2.8 4.4 3.8-2.7-.6-5.2-.4-5.2-.4s-5.8-5.6-6.9-6c-.8 0-5.4-3-5.4-3-2.3-1.1-4.4-9 4-6.7 8.8 4.1 10 4.4 10 4.4L398 246l6 6.7s-10.7-5.3-12-5.4c3 2.4 4.6 5.6 4.6 5.6-3.4-1-6.3-1.8-9.9-2.3z"/>
+    <path fill="none" stroke="#fff" stroke-linecap="round" stroke-width=".8" d="M345.3 203.3s10.2-2.4 11.4-2"/>
+    <path fill="#de3908" fill-rule="evenodd" d="M0 413.4h744v82.7H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/um.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/um.svg
new file mode 100644
index 0000000..25b08ce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/um.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-um" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h130v130H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="scale(3.9385)">
+    <g stroke-width="1pt">
+      <path fill="#bd3d44" d="M0 0h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0z"/>
+      <path fill="#fff" d="M0 10h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0z"/>
+    </g>
+    <path fill="#192f5d" d="M0 0h98.8v70H0z"/>
+    <path fill="#fff" d="M8.2 3l1 2.8H12L9.7 7.5l.9 2.7-2.4-1.7L6 10.2l.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7L74 8.5l-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 7.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 24.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 21.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 38.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 35.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 52.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 49.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 66.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 63.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/un.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/un.svg
new file mode 100644
index 0000000..1d50ea9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/un.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-un" viewBox="0 0 512 512">
+  <path fill="#4b92db" fill-rule="evenodd" d="M0 0h512v512H0z"/>
+  <g transform="translate(-128.7) scale(.64)">
+    <path id="a" fill="#fff" d="M663.9 587a71 71 0 01-9.5 8.6c-21.2-22-46.2-46.2-69.9-46.2-14.7 0-25.2 11.2-37.6 19-17.1 11-40.6 17.2-60.7 9.1a66.2 66.2 0 01-29.2-20 63.6 63.6 0 0057.5 5c19.7-8.2 39.9-19.1 62.4-19.1 33.2 0 64.8 22.5 87 43.6zm-245.6-69c22 25 57.9 17 87.2 23.2 4.1 1 8 2.3 12.4 1.6-3.5-2.2-8.2-2.5-12.2-4-22.8-8.6-26.3-33-38.8-49.7 16 10.6 29.1 25 44 38.7a73.8 73.8 0 0036.7 16.2c-3.2 1.2-7.4 1-11 1.8-24 6-50.6 15.4-76.2 7a75.4 75.4 0 01-42-34.8zm-35.2-58c13.7 31.1 48.2 33.6 71 52.6a64 64 0 0013.5 9.2l.3-.2a99.5 99.5 0 01-15.1-16.5c-13.1-19-8.8-45-18.9-65.2a142 142 0 0123.1 34.9c8.5 20.2 11.4 43.3 30.5 58.7-20.7-6.8-44.5-5.5-63-17.6-19.6-12.8-37.7-33-41.4-55.8zm-14.7-62.8c2 27.4 31 42 45 64.5 3 4.8 6 9.8 10.3 13.6-.7-2.9-3-5.5-4.4-8.3a62.8 62.8 0 01-5.3-32.3c1.3-14 7.1-27 4.9-41.7 12 25.9 8.1 58.2 15 86.1 1.6 6.2 5.3 11.6 7.6 17.5-11.7-9-27.1-17-40-27a85.5 85.5 0 01-29-36.5 84.9 84.9 0 01-4.1-35.9zm.8-50.4c1.4-6.1 2.5-12.4 5.1-18-5 25.8 12.2 44.4 18 66.8 2.2 8.4 3 17.3 6.4 25.2.3.1.6-.2.8-.4-8.5-23.8 4-45.8 16-64.5a55 55 0 006.2-16.5c1.3 10.8-1 23.2-3 34.3-2.5 14.3-7.4 27.7-11.3 41.5a65 65 0 00-.5 27.4l-1.3-1c-9-16.6-26.8-29.6-32.1-47.8a102.6 102.6 0 01-4.3-47zm9.5-27.8a79 79 0 0119-50c.3-.2.6-.5 1-.4-12.6 19-1.1 43.2-2.8 64.9l-1.6 22.2c.2.2.2.9.8.6.8-2.5 1-5.1 1.4-7.7 3-18 18.8-30.4 32.1-43a28.5 28.5 0 007-10.4c-1.1 9-3.6 18.1-7.6 26.2-10.3 20.8-30.1 37.6-33.7 61.3-1.7-22.7-15.6-39.6-15.6-63.7zm33-65.9a46 46 0 0122-14.6c-16.5 11.3-15.6 31.4-20.6 48.2-1.8 6.1-4.5 11.9-6 18.2l.5.4a54 54 0 0113.5-19.9c11.5-10.8 28.8-17.4 34.5-33.3-.3 22.1-19.1 38.9-36.3 51.9a62.6 62.6 0 00-18.2 21.8c.6-6 1-11.2.4-17.1-1.8-19.3-3-41 10.3-55.6zm66.5-37.1c-12.1 10.7-20.2 24.4-29.6 36.7-7.7 10.3-18.4 16.6-27.5 25.2 5-10.2 5.8-22 12.1-31.9 10.7-17 28.5-23.6 45-30z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 1202.2 0)" xlink:href="#a"/>
+  </g>
+  <path fill="#fff" d="M351 279.5l-2.4-1.3a103.4 103.4 0 01-19 27.1l-13.4-13.4A83.9 83.9 0 00332 269l-2.3-1.2a81.6 81.6 0 01-15.3 22.2l-12.2-12.2a64 64 0 0012.4-18.3l-2.3-1.2a61.8 61.8 0 01-11.9 17.7L287 262.7a42.4 42.4 0 008.6-13.5l-2.3-1.2a40.1 40.1 0 01-8.1 12.9L273 248.7a22.6 22.6 0 005.8-14H296a39.8 39.8 0 01-2.7 13.3l2.3 1.2a42.5 42.5 0 003-14.4h19a61.2 61.2 0 01-5.3 23.6l2.3 1.2a64 64 0 005.5-24.9h17.2a80.8 80.8 0 01-7.6 33.2l2.3 1.2c5-10.6 7.7-22.3 7.9-34.4h19a102.3 102.3 0 01-10.3 43.5l2.3 1.3a105 105 0 0010.6-46c0-13.8-2.7-27.2-7.7-39.6l-2.3 1c4.7 11.7 7.2 24.3 7.4 37.3h-19a83.7 83.7 0 00-6-29.7l-2.3 1a81.1 81.1 0 015.7 28.7h-17.2a64 64 0 00-4.3-22l-2.3 1a61.5 61.5 0 014 21h-19a42.5 42.5 0 00-2.5-13.4l-2.4 1a40 40 0 012.4 12.4h-17.2a22.6 22.6 0 00-5.8-14l12.2-12.1a39.8 39.8 0 018.5 13.7l2.3-1a42.4 42.4 0 00-9-14.5l13.4-13.5a61.3 61.3 0 0113 20.5l2.4-1a63.9 63.9 0 00-13.6-21.3l12.2-12.1a81.1 81.1 0 0117.2 26.6l2.4-1a83.7 83.7 0 00-17.8-27.4l13.5-13.5a102.6 102.6 0 0121.8 33.3l2.3-1a105.2 105.2 0 00-23.2-35 105.2 105.2 0 00-35.2-23.3l-1 2.4a102.6 102.6 0 0133.5 21.8l-13.5 13.5a83.8 83.8 0 00-26.9-17.6l-1 2.4a81.1 81.1 0 0126.1 17l-12.2 12.2a64 64 0 00-20.1-13.2l-1 2.4a61.4 61.4 0 0119.3 12.6l-13.4 13.4a42.5 42.5 0 00-12.8-8.3l-1 2.4a40 40 0 0112 7.7l-12.2 12.2a22.6 22.6 0 00-14-5.8v-17.2a39.9 39.9 0 0114.3 3l1-2.3a42.5 42.5 0 00-15.2-3.3v-19a61.4 61.4 0 0122 4.6l1-2.4a64 64 0 00-23-4.7V152a81.2 81.2 0 0129.3 6l1-2.4a83.7 83.7 0 00-30.3-6.1v-19c13 .1 25.5 2.7 37.2 7.4l1-2.4A105.3 105.3 0 00256 128a104.8 104.8 0 00-47.2 11.2l1.2 2.2a102.4 102.4 0 0144.7-10.8v19a83.3 83.3 0 00-35.9 8.7l1.2 2.2a80.8 80.8 0 0134.7-8.4v17.3a63.7 63.7 0 00-26.7 6.4l1.1 2.2a61.3 61.3 0 0125.6-6.1v19a42.3 42.3 0 00-16.7 4l1.1 2.2a39.9 39.9 0 0115.6-3.7v17.3c-2.7.1-5.2.8-7.6 1.8l1.2 2.2a20.2 20.2 0 017.7-1.5 20.2 20.2 0 0114.3 6 20.2 20.2 0 016 14.3c0 11.1-9.1 20.3-20.3 20.3a20.1 20.1 0 01-14.4-6 20.2 20.2 0 01-5.9-14.3c0-5.5 2.1-10.6 6-14.4a20.3 20.3 0 016.6-4.4l-1.2-2.3a22.8 22.8 0 00-6.3 4l-12.2-12.1A40 40 0 01239 197l-1-2a42.7 42.7 0 00-11.2 7.6L213.3 189a61.6 61.6 0 0115.8-11l-1.1-2.2a64.4 64.4 0 00-16.4 11.5L199.4 175a81.3 81.3 0 0120.6-14.6l-1.2-2.2a84.3 84.3 0 00-21.2 15l-13.5-13.5a103 103 0 0125.9-18.4l-1.2-2.2a106.2 106.2 0 00-47.4 47.7l2.2 1.2a103 103 0 0118.7-26.5l13.5 13.5a84.2 84.2 0 00-15.4 22.1l2.2 1.2a81.4 81.4 0 0115-21.5l12.2 12.2a64.4 64.4 0 00-12 17.5l2.2 1.2a61.5 61.5 0 0111.5-17l13.5 13.5a42.7 42.7 0 00-8.2 12.6l2.2 1.2a39.9 39.9 0 017.8-12l12.2 12.2a22.7 22.7 0 00-5.8 13.9H216a40 40 0 013-14.1l-2.2-1.2a42.3 42.3 0 00-3.4 15.3h-19a61.3 61.3 0 015.6-24.4l-2.2-1.2a63.7 63.7 0 00-6 25.6h-17.2a81 81 0 018-33.8l-2.2-1.2a83.3 83.3 0 00-8.3 35h-19a102.4 102.4 0 0110.5-44l-2.2-1.3a104.8 104.8 0 00-10.9 46.6 105.8 105.8 0 004.3 29.7l2.5-.6a103.2 103.2 0 01-4.2-27.9h19a84 84 0 003.6 23.2l2.5-.6a81.5 81.5 0 01-3.5-22.6h17.2a64.3 64.3 0 003 18.4l2.5-.6a61.7 61.7 0 01-3-17.8h19a42.6 42.6 0 002.5 13.1l2.5-.6a40 40 0 01-2.4-12.5h17.2a22.6 22.6 0 005.8 14l-12.2 12.2a39.9 39.9 0 01-8.4-13.7l-2.5.6a42.4 42.4 0 009.1 14.9L211.6 276a61.3 61.3 0 01-14.2-23.6l-2.5.6a63.7 63.7 0 0014.9 24.8L197.6 290a80.9 80.9 0 01-19.4-32.8l-2.5.6a83.5 83.5 0 0020 34l-13.3 13.4a102.3 102.3 0 01-25.1-42.7l-2.5.6a104.9 104.9 0 0026.6 44.9c8.6 8.6 18.5 15.5 29.1 20.6l1.3-2.2A102.9 102.9 0 01184 307l13.5-13.4a83.9 83.9 0 0023.6 16.1l1.2-2.2a81.3 81.3 0 01-23-15.7l12.2-12.2a64 64 0 0019.3 12.8l1.3-2.2a61.4 61.4 0 01-18.8-12.4l13.4-13.4a42.4 42.4 0 0014.8 9l1.3-2.2a39.9 39.9 0 01-14.3-8.6l12.2-12.2a22.6 22.6 0 0014 5.8v17.2a40 40 0 01-12-2.2l-1.2 2.3a42.5 42.5 0 0013.1 2.4v19a61.4 61.4 0 01-22.5-4.7l-1.3 2.2a63.9 63.9 0 0023.8 5.1v17.2a81 81 0 01-32.3-7.2l-1.2 2.2a83.6 83.6 0 0033.5 7.6v19c-15-.2-29.6-3.6-43-10l-1.2 2.3A105.1 105.1 0 00256 339c16.8 0 33-4 47.5-11.3l-1.2-2.4a102.2 102.2 0 01-45 11v-19a83.5 83.5 0 0036.3-8.8l-1.2-2.3a80.8 80.8 0 01-35.1 8.6v-17.2a64 64 0 0027.3-6.7l-1.2-2.3a61.2 61.2 0 01-26.1 6.5v-19a42.3 42.3 0 0017.4-4.3l-1.2-2.3a39.8 39.8 0 01-16.2 4v-17.2a22.6 22.6 0 0013.9-5.8l12.2 12.2a40.2 40.2 0 01-9.9 6.8l1.2 2.3a42.6 42.6 0 0010.5-7.3l13.4 13.4a61.7 61.7 0 01-15.2 10.7l1.2 2.3a64.2 64.2 0 0015.8-11.2l12.2 12.2a81.6 81.6 0 01-20.2 14.3l1.2 2.3a83.9 83.9 0 0020.8-14.8l13.4 13.4a103.3 103.3 0 01-25.5 18.2l1.2 2.4a105.7 105.7 0 0027-19.6 105.6 105.6 0 0020.4-28.6z"/>
+  <path fill="#fff" d="M261.4 209v.9h.7v-.8zm-1-1h1v.7h-1zm-.7 0v-.7l-.7-.1v.6zm-1.4-.4l-.7-.1v-.7l.8.1zm-6.1-.8h.8v.6h-.8zM251 208v-.6l-.7-.1v.6zm-.7 1l-.9-.3.2-.6.8.2zm-1.5.7l-.1-.6.6-.1.1.6zM165 275h-.5v1h.9v1.5h.6l-.1-1.7-.9-.3zm8.4 9.4l-.4.7-1.2-1-.8-1.2-.4-1-.8-2 1.6.8.5 1.5.8.6zM195 313l-.8-1.3 1.3.2 1.3 1.2.6 1.4-.8.4-.4-.6-1-.3zm57.8-97h-1.2l-.2-2.4.7-.5V212h-3.8v-1l.5-.4-.9-.3-.6.9-.2 1-1.1.2v.5h-.8v1.4l-3 2.5-5.9-.2c-.4 1-1.5-.1-1.5-.1-.2-.7-1.7 0-1.7 0 0 1.1-2-.6-2-.6l-3.7-2.7c-2.1-2-5.3.6-5.4 1.1 0 1.5-2.5.3-2.5.3s-2.1-.6-2.4.2c-.4.9-1.7.7-1.7.7l-.3.4-1 .2-.2.7-1.3.2 3.2-.1c.8-.1-.3 1.8-.9 1.7l-1.5.1-.5.6h-1.4l-.6.8h-2s-1.2.9-1.1 1.2c.1.3-.2 1.3-.5 1.3s-1 1-.8 1.3c.2.3-.6 1.4-.6 1.4l-.2 1-.7.3v3l-1.2.8v1.3l-2 2 .3 1.8-1.6 1.7.2 1.7-1 .3-.2.8-.4 2.3h1c.6-.1.5 1.5 0 1.7-.4.2-1.6.6-1 1 .7.5-1.6.4-1.6-.3 0-.6-1.3-1.1-1.6-1-.3.3-.9-.9-.9-.9-1.1-1.2-4.7.1-4.7.1l-.6 1.7c-1.2.3-1.9 2.2-1.9 2.2-1 .3-1.7 1.5-1.4 1.8.3.4-.5.5-.5.5v2.3l-.5.8v2.6c.7 0 .6 1.2.6 1.2-1 0-.9 1.5-.9 1.5l-2.2.7-.4.7-2.8-.1-.7.7-.8-.7h-5.3l-.2-.6-1-.2-.2-1.2-1.6.1-.3.7h-1.7c.1 1.2-1.7 2.8-2 2.4-.1-.5-1.3-1.6-.8-1.9l2-.4v-.8h-4l-.4.6H161v1.8l-.7.2c-.6.4 0 1.5 0 1.5.8.8 0 2 0 2-.7.6.5 1.8.5 1.8.8.2-.5.9-.5.9.2 1 .8 1.4.8 1.4-.6 1 .4 1.6.4 1.6l.1 1.8.8.5v1.2l.4.7h1.7l-.1-2.7c-1.5-1.7 1.3-2.1 1.4-1.5 0 .7 1.3 1 1.3 1 .2 1.6 2 2.6 2.5 1 .5-1.7 1-.7 1.3 0 .3.8 2.3 2.7 2.3 2.7h1.6l.2 1.5c1.8-.1 2.4 0 3.1 2.6a4.7 4.7 0 002.8 3h1.5c0-1.3 1.5.2 1.5.9 0 .6 2.8 3 2.8 3l3 .7 2.6 2.2 2-.2h.9c.5-1.9 3 0 3.3.7.2.7 1.9 1.8 2 1.2.3-.5 1.5-.2 1.7 1.4.2 1.6 1 1.3 1 1.3h6l2.1-2h5.4c2.8-.1 1.1-4 .6-4-1-.7.3-3.8.3-3.8l-7.8-7.2c-1.8 0-.2-2.7-.2-2.7 1.4-.8-.3-2.2-.3-2.2.2-1.3-.7-2.8-.7-2.8-2-1.3-1.4-3.8-1.4-3.8v-1.7c-1.6-1.5.6-1.8.6-1.8.8-1.3-.5-2.2-.5-2.2l-.1-1.4-1.7-.2-.2-5.1-3.9-5.5c-.7-.2-.2-1.5-.2-1.5 1-.6-.2-1.9-.2-1.9l-.1-2.3 2.2-.3.6-.8h1v-2.8c.4-1.4 1.7-.7 1.7-.7l1.5.1.9-1.6.2-1.3h-1.2c-1.3-.9-.6-3.7-.6-3.7 2-3 4.3-1.3 4.3-1.3h1.5c2.3 1.4.2 4.3.2 4.3-.4.6-.2 2.7-.2 2.7l.6 3.4-1.4 1.2c-1.2.6-1.2 2.2 0 2.5 1 0 .6 2.1-.7.7-1.9 0 1 1.8.2 1.3 2 1 1.5-.8 1.5-.8l2.6-2c1-.8 2.6 1.5 2.6 1.9 0 .3 4.3 0 4.3 0 1.2.8 1.6 2.8 1.6 2.8 1.2-1.5 3.6-.1 1.8.7 1.7 1.1 1.7 2 1.7 2 1.4-.4 1.4.7 1.4 1l.4-1.6c-1.6-1.2 2.1-1.6 1 .6l-.6 1 1.1.8.1 2.5c2.4-.2 1.7-3.1 1.7-3.1l1-.3c0-1 .8-.4.8-.4-.7-3.7 1.7-4.3 1.7-4.3 1.4-.3 1.5-3.3 1.5-3.3-1-.4-.4-1.9.7-.6 1 1.3-.7-2.6-.7-2.6l-.8-.7-1.2-.2-.1-1.1h-2l-.2 1.5-.8.2-.2-.4-.3 1.1h-2v-1.3l1.1-.3.5-.6.3-1.8h1.4l1.8-.5c0-1.8 1-1.4 1-1.4l.7.5 1 .8v.6l-.6.4-.1.8.3 1.2h.9c.3-1.7 2.5-1.7 3.2-.6l.6-1.5c-1.5-.8 0-2 .4-1.4.4.5 1.4-1.4 1.4-1.4s.7 1 0-.4c-.8-1.3.5-2 .5-2-.2-1.2 1.4-1 1.4-1l.1-1.7-1.5-.1c-.3 1.5-1.6.2-1-.1s1.3-1 1.3-1v-1l.7-.3v-1h1.7l1.4-.7.3-.6h1.5l2.1-2-.2-.9c-1.3 0 0-1 0-1l.2-1.6z"/>
+  <path fill="#fff" d="M209.8 237.4l-1.9-.2.1.8h.6c.8 1.5 0 5.1 0 5.1s-1.2.1-1.4-.5c-.2-.7-.8 1.4-.3 1.7.4.3 1.9 0 2 1.2 0 1.2 1-.7 1-.7v-7.4z"/>
+  <path fill="#fff" d="M210.3 249.5l.2-1-.8-.3.1-1.6.7-.1v-.8l-1.5 1.1-1-.6v2.6l1.6 2.2zm.4 2.8l-.8.1v.9h.8zm-1 5.5l-.9.1v.8l1-.1zm1.3-2.6c.2 0 .4-.1.4-.4 0-.3-.2-.5-.4-.5s-.5.2-.5.5c0 .2.2.4.5.4z"/>
+  <circle cx="211.7" cy="257.1" r=".5" fill="#fff"/>
+  <circle cx="211.7" cy="244.7" r=".5" fill="#fff"/>
+  <path fill="#fff" d="M241.5 241.4l.3-1 .6-.4v-1l.5-.8.7-.8.2-.9 1-.6 1.3-.2.5-.7.3-1.3v-1l.5-.6 1.3-.5v-2h-.7v-.8l-1.2-.1-.3.5h-.5l-.1.9h.6l.1.6-.4.4-.2.6-.8.2-2 1.8v.9l-.6.8-.6 1.6h-2.3l-.4 2 .3 1.6zm9.4-5.3v-1.5l-.2-1.4-1.6-.8-1.2 1.1-.2 1.5v1l-1 .2-.3 3-.8.3v1l-1 .4-1.3.3-.2 1.4-.8.5-.4 1.3-.6 3.2s1 1.8 1.5 1a2 2 0 011.4-1l.3-.8 2.9.1c.2-1.2 1.6-.7 1.6-.2s1 .1 1 .1l.8-1.2h1.2v-1.3l.6-.3v-2c1.7-.5 1.5-2.1 1.5-2.1l.4-.5-.2-.8c-.9-.3-.4-1 .1-.9.5.3-.7-1-.7-1-.7.6-1.2-.6-1.2-.6h-1.6zm1.7 13c-.1 1.4-1.7 1.8-1.7 1.8l-1.2-.3-.6-.6-.1-1.5h1l.1.6h2.5zm5.7-6.8c.3 1 .2-1.5.7-1.4.4 0 0-1.5 0-1.5l-1.8 1.4c1 0 1 1 1.1 1.5zm5.7-5.7c.4 1 .3 2.4 1.9 3.5.5.4-.3 1-.9.8-.5-.4-2-2.7-2-2.7v-1.4c.3-.9.8-.6 1-.1zm1.4 32.6l-.7-.3-.7.6.3.3.3.5zm-4-1.5v1.4m16.2-3.5l-.4-.5-.8.5.3.6zm29.9 23.1l1 .4v1.9c1.3 1.3 5.5.2 5.5-.1l-.2-4-.6-.6v-2.7c.4-1.4-2-3.4-2.3-3-.2.4-1.6.1-1.6.5 0 .5-.9 2.6-.4 3.4.4.7-.3.7-.5 1.5 0 .8-1.1 2-1 2.7zm-2.4-4.3c-.2.8-.9 1.3-1.3 1-.5-.4.5.5.7 1a.6.6 0 001 0c.3-.5.2-1.5.4-2 .2-.3-.6-.4-.8 0zm-4.9-19.8h.7v2h-.7zm11-20.8c-.5-.6 2.1-1.7 2.6-.4.4 1.3 0 1-.5 1-.4-.2-1.5.2-2-.6zm2.2-13.8l1.2.2v-.7l-1-.2zm-2.8 1.4l.6-.3-.2-.5-.2-.3-.3.1-.8.5-.7-.5-.3.6.9.5.1.1h.2l.6-.4zm4-26.5h-1.7s.5.2-1-1.2-2.4.3-2.4.3l-1.7.3v1.7l-.8.3v1h1.2s0 1.3.4.7 3 .1 2.7 1.4c0 .6 2.7 2 2.4 3.7 1.3.2 1 1.6 1 1.6l1.8.3.6-1.1h.5v-.6l-1.2-.3-.2-3.4-.7-.6.2-.8-.9-.4.5-1.4-.8-1.5zm4.6 11h-.9l-1.9.2-1 2s.5.4 1 1.2c.3.7.6 5.2-.7 6-1.3.7 0 .2 0 .2l-.1 2.4c.3 1 .8.6 1.1 0 .4-.5.7-.6 1.1-1.2a5.7 5.7 0 001.2-2.2c0-.8.6-2 .3-2.3-.3-.3.3-1.8.3-1.8s.4-1 0-1.8.1-1.8.4-2.2l-.8-.5zm1.3 4.4v-.8h.7v1zm0 3l-.6-.3.3-.6.6.3zm-1-8.6l-.4-1s0-.8.2-1.2c.2-.5-.4-.9-.8-1-.3-.1-.2-1-.3-1.4 0-.4-.8-.8-.8-.8l-.2-1.9c0-.3-1-.8-.7-1l.9-1c.3-.3-.3-1.8.2-1.5.5.4.5 1 .7 1.3.2.5 0 2 .5 2.3.5.3-.1 1.4.7 1.4.9 0 .3 2 .3 2s-.2 1.6.3 1.7c.6 0 .3 2.7.3 2.7l-.9-.6zm-6.9-17.5c.3.5 1 .8 1 1.2 0 .5-.3.8.4.9.6.1 1-.1 1.3.4a3 3 0 010 1.9c0 .4.2 1 .7 1 .5 0 .6.2.6.5s.7-1.2.7-1.2c-.6-.4-1-1.4-1-1.4l-.5-1.7c0-.3-.7-.5-1-.6-.4 0-1-1-1-1h-1.2zm1-1a3 3 0 00-1-.9c-.4-.2-.7-.4-1.2-.4a.7.7 0 01-.6-1c.2-.5-.3-.8-.3-1.2 0-.4.3-.4.8 0 .6.2.5.3.9.9.4.5.6 1 1 1 .5-.2.8 1 1.2.6.4-.3.3.8.3.8l-1 .3zm-12.4 12.3c.6.6-3.2.4-3.2 0s.4-2 1.3-1.7c1 .4 1-1.9 1-1.9s-.8.1 0-.3c.7-.4 0-1-.4-1.4l-.6-.9h1.5c.6-.4.8-2.5.8-2.5 1.3.5 2-.4 2-.4s.2.7.6 1.2c.4.5-1 .8-.5 1 .5.4.7 1.4.5 1.7-.2.3-1.4 0-1.4-.3 0-.5-.4.5 0 1 .4.6-.5 1.4-.7 1.4-.2 0-1.6.2-.5.8 1.2.7 2.5.3 2.5.3s1 0 1.3.5c.3.5-.1.6-.7.6l-3-.2s-.8.8-.5 1zm-6.8 1c.5-.2 1.8-.3 2 0 .2.4-.7.8-.7.8l-1.3.2c-.4-.5-.5-1 0-1zm13.7-9.1c.9-.5 2.7-.5 2.6-1.1-.1-.7 1-.9 1-.9l.4 1.3 1 .7v1.2s.4-.2-.8 0c-1.2.4-.4 1-.4 1h-2.6l-.3-1-.9-1.2zm-4.1-5.9c.6 0-.2 2.5 1.5 2.3 1.7-.2 0 .8 1.4.9 1.2 0 1-1 1.3-1.8.5-.7.3-1.1-.5-1.4-.7-.2-.7-.2-1-1-.2-.9-1-1.1-1-1.1l-.3-1.3-1.4.9-1.4 1.8c0 1.4.7.7 1.4.7zm2.8 9.2l.3-.7.6.3-.3.7zm-1.1-1h.6v.7h-.6zm.5-14.4l.1 1h-.6l-.1-1zm-1.8 10h.7v.6h-.7zm-1.7 0v-.6l1-.1.1.6zm-8.7 10.4l-.6-.3.3-.7.6.2zm-3.4-2v-.6l1-.1v.6zm-20.8 0v.6l2.4-.1v-.7zm-1.5.8l-.2-1 .6-.1.2 1zm-.5.6l-.2-.6h.3l.2.5zm5.3-1.8v.8h1s.6.5.6.8.8.7 1.2.7c.4 0 1.6-.9 1.6-.9s.5-1.5 0-1.4c-.3.1-1.2.8-1.3.1 0-.6-1.4-.3-1.4-.3l-1.7.2zm5.3-1.2c0 .4-.2.8.5.9.6 0 1.8-.4 1.9.2 0 .7 0 1 1 1.4a5 5 0 002 .4l2-.2s1.5.3 1.8.6c1.2 1.2 2 1.5 2.2 1 .4-.6 0-1.8-.2-2.2 0-.4-1.6-2.5-2.1-2-.5.4-.6 0-1.6.3s-3 0-3-.4c-.2-.4-1.7-.6-1.7-1 0-.5-1-1-1-.4.2.7-.7 1-1 .8-.1-.2-.8.6-.8.6zm24.5-13.8l.8-2.4c-1.1-.2-.9-1.4-.9-1.4 0-1-1.6-2-2.1-1.7-.5.3-.3-2.3-.3-2.3s1-.6 1.4-.3c.4.3-3.7-5.4-4.5-4.9-.9.6-2.8-.5-2.7-1.5.1-1-3.8-4.2-3.8-4.2s-1.3-.8-1.5-.2c-.2.6-.6 1 0 1.4.6.3.5-.5 1.3.2.7.8 2.1 1.7 1.6 2.4-.6.6-1.2.9-1.2.9l.8.8h1.1l.2 1.9s1.3.6 1.6 1.4c.4.7.4 1.2 0 1.6-.3.4-1 1.2-.8 2 0 .7 1 1 1 1l.8.1.6.3v1.4c.9-.2 2.3 1 2.2 1.8-.1.7.2.3 1.2 1 1 .8.8 1 1.5 1.5.8.5 1.4.2 1.7-.8z"/>
+  <path fill="#fff" d="M285.4 176.6c-.1-.4-.4-2 .3-1.8.6 0 .2 0 1 .3.7.3.8-.5.8-.5h1.2l1.5 1.2-.3 1h-1c-.6-.8-1.6-.5-1.4.3.2.7-.5 2.1-1 2.2-.4.1-1.8.1-1.7-.5l.6-2.2zm-.9-2.9v-.9s0-.8-.6-.8-1.5-.7-1.3-1.1c.2-.4-1.8-.9-1.8-.9s-1.8-1.7-1.2-1.5c.7.2.3-.7.3-.7s-1.2.2-1.6 0c-.3 0-.2-1-.2-1s-1.3-.3-1.3 0 .5.3.7 1c.2.6 0 1.7 1 2 1 .1 1.2.3 1.3.8.1.4 1.3.5 1.3.5l.9.4 2.5 2.2zm-11.8-11.9l-.8-.2v1h1.1zm0-3.6c-1.1-.9 1.5.6 1.5.6.8 0 1.4.7 1.4 1 0 .3 1.1.2 1.1.2l.2-.8-.9-1-.7-.6s-1.2 0-1.2-.4c0-.3-1 1.3-1.4 1zm19.6.6c-.3 1-.5 2.3-1 2.3s-.3 1.4-.3 1.4h1.8c.4.2.4 1.3.4 1.3 1.6-.1 2.3 2 2 2.6-.1.5.7.5.7.5s0 1.7-.2 2.2c-.2.4 1.4.7 1.8 1.4.4.6-.2 2.8-.5 2.9-.4 0 .8.4.7 1-.1.5.3 0 .4.8l.4 2.7 1.4.1c.3-1.4 3-1.4 3.4-1.3 1.9.7 3.2 3.5 3.2 4.1 0 .7-1.1.8-1.1.8l.2 3.1c1.8.6 3.3 3.2 3 3.6-.2.4 1.3.3 1.3.3.2-2 2-1.3 2.2-.6 0 .6.4 2 .4 2l.5 1 .8.7h1.1l.3.6 1.4.2s1.2 1.3 1.3 1.6c.1.3 1.7.2 2.1.3.5.1 1.1.5 1.2 1 .1.6.8 1.4.8 1.4s1.2.3 1.3.8l.7 1.4 1 .8.1 1 1.2.1.3 1.3h2l1-.8c1.4-.8 2.4-1.8 2.5-2.2 0-.4.3-2 1.3-1.7 1.1.3.4-2.4.4-2.4s-1.5-1-1.4-1.6c0-.6-1.5-1.6-1.4-2 .1-.5-1.4-1.4-1.3-1.8.1-.4-.7-1.6-.7-1.6l-1.6-1.5-.2-1-1.3-.1-2.6-3.1.1-1h-.7v-1.2l-.7-.4-1.2-.1-2.4-2.6-.2-1.2h-1.1l.2-2.3c.7-1 .3-2.8.3-2.8s-1.5.8-2.2.4c-.8-.3.3-1 .3-1v-1l-.7-.6s-1.8.3-1.9 0l-.4-1.8-.1-1.8-.8-.4v-.6h-1.2v-1.2l-.7-.2-.6-.3-.1-1.3-2.4-.1-.7-1.1-.9-1.3-2.6-.2-.7-.7-1-.2-.8-.3-.3.5-2 .1-.1.7c-1 .5-5.3 0-5.4.4zm11.1-2.8c-.1-.8 2.2-1.6 2.7-1 .5.7 2 .8 2.2 4 .1 1.2-1.9-1.2-1.9-1.2l-1.6-.5c-.8-.2-1.3-.8-1.4-1.3zm-31.1 1.3l-.6-.2.4-1 .6.3zm-5.6-10.6l-1.3-1.4v-1.2l-.5-.4-.4-1.5-1.4-.4-1.4.5-1.4 1-1.7.2-.8 1 3.4.3.6 1 2.5.3 1.6 1.6c1.4.4 1.7-.2.8-1zm-.2-5.3c-.2-1-1.6 1.2-.2 1.6 1.4.5 2.8 0 2.8 0l.3-.6 5.3.1.7-1s1.2-.5 1.8-.3c.5.2 0-1.5-.5-1.3-.5.2-1.6.1-1.6.1h-1.9c0-.7-1.8-.4-1.9 0 0 .4-.7.6-.7.6l-2.5.2c-.2.6-1.5 1-1.6.6zM256 159.6c1.6.6 2.2.2 2.3-.3.1-.4.2-.5.9-.6.6-.1-.1-1.4-.7-1.3-.7.1-1.3-.2-1.4-.8-.1-.5-1.2-1.9-1.3-.8-.1 1-.8 1-.7 1.8.2.8.5 2 .9 2zm-12.2 1.3c-.1-.4 2.1-.5 2.4-.2.3.4.1 1 1 1s.6.6.5.9c-.1.3-1.2.2-1.3-.1 0-.4-1.7-.5-1.7-.5s-.8-.6-1-1.1zm35.3-22.5l-.5-.6-.5.5.8.8.2.2.2-.2 1-.9-.3-.5zm-5.7-3l-.3.5.8.5.2.1h.2l1.1-.8-.3-.6-1 .7zm-2.9 22.5h-1l-.1.6h.9l.7 1.1.5-.3-.8-1.2v-.1zm-35 30.2v1.2h1.7c.6 0-.6-.8-.6-.8s-1.2.1-1.1-.4zm2 0l.4-.5.6.5-.4.5zm-19.4-20.2l.5-.5.6.7-.4.5zM248 306.3l-.3.6.6.4-.2.2.5.4.5-.5.3-.3-.4-.2zm-7.6-7.7l-.7.5-.3.3.4.3.7.5.4-.5-.4-.3.3-.3zm79.5-20c-.1-.5-.8-.8-.8-.8l-.2.6.2.1v.8l.4.4c.3-.4.5-.7.4-1zm0-2.1v-1l1 .2v.9zm25.6-8.3c.5-.3 1-.9 1 .3 0 1.3-.6.9-1 1.3s-.6-1.2 0-1.7zm5.4-4.6v-.2a1.8 1.8 0 00-.1-.6l-.6.2v.5c.1.2.1.4.3.5l.4.1v-.6zm-1.4.5l.4 1.3.6-.2a12.7 12.7 0 01-.4-1.3l-.6.2zm-2.3 2.5h-.6c0 .5 0 1.1.5 1.2l.2-.6-.1-.5zm-2.8-12.8a.6.6 0 00-.3-.5c-.5-.2-1.3.1-1.7.4l.3.5c.5-.2 1-.4 1.1-.3l.6-.1zm-29.5-34.5c-.4.4-1.3.6-1.3.6l-.4 1.2-.5.4v1.1c-.1.8-1 1.2-1 1.2l-.5.5s-2.5.2-2.9 0c-1-.4-.3-1.7.4-1.6.6.1-.1-1.8-.1-1.8l.8-.1s.1-2 .4-2 0-.6-.5-1c-.4-.3-1-1.3-1.4-1.2h-2.1l-.3.6-1.2.2s.1.9-.1 1.1c-.6.8-3.1 2.4-2-.3l.3-.6v-1l-2-.1s-.9-.4-.9-.8v-1l-2.3-2.4-2.7-.4-.2-.5-1.6-.2c-2-1-3.6-.1-3.3 1.5.3 1.6.9 2.3-.2 2.3-1 0-1.3-1-1.3-1s-.8-.2-.8.2-.3 1.3 0 1.7c.3.5-.4 1.1-.8.8-.3-.3-1.1-1.3-1-1.6.3-.4-1.4-2.4.3-2.7 1.7-.4-.1-1.3.5-1.5l.9-.5h.8l.6-.4-1.4-.2-.9-.1-1.6-.1a4.5 4.5 0 00-1.9 2.3c-.8 1.7-2.9-.6-2.1-1.5.7-.8-2.4 0-2.9.4s-2.1.2-2.1.2c-.3 1-1.8-.1-1.4-.8.4-.6.4-1 .4-1l-.5-.2-.6 1.2c-1.5 0-2 .9-1.6 1.4.3.6-.5 0-.7.7-.2.7.1.7.8 1 .6.4-.4.4 0 .9.5.5 1.8 0 1 .8-.7.7-2.2.4-2.2.4-.1 1-2.1.7-2.3.4a79.8 79.8 0 00-1.9-2.2l-2-.1c-.2-1.6 1-.8 1.4-2 .4-1.2.6-3.1.6-3.1s-1.7-.1-1.8.4c0 .5-1.1.9-1.1.9s-.9.3-.6.7c.4.5-.6.7-.6.7s.2.7-.1 1c-.9.8-3 0-3.3-.3l-1.3-.5-1.3-.9-1.5.7-.4.4H253v1.3l2.8.3.2 2.7-1.2-.4h-.7l-.3-.7h-.7v2.3l.7.5.5.6h1l.3 1.4h2.6l.4.6 1.6.1 3 3.2-.2 1-.5.3c.2.7-1.4.3-1.4.3v.6l.8.1.7.5 1-1.9c1.2-.7 1.8.4 1.9 1 0 .7-.6.6-.6.6v1.5l.7.2c1 1.3-.4 2-.4 2l-.4 1.1c-.3 1-1.5.8-1.5.8l-.4.6-1.3.3 2.6.4c.2-.9.8-1.1 1.2-.7.3.4.3 1.2.3 1.2l.6.1v1.2l.6.2v3.5l.7.8c1.3-.5 1.3.4.6.8s-.2 2.4-.2 2.4l-.5.5v.9l-.6.4v1.2c-1.1-.6-2.4-.3-2.7 0-1-.7-3-.4-3 .1.7.9-.7 1-.7 1l-.8 1c.6 1-.5 1.1-.5 1.1v2l-1.3 1.3.1 2.8c0 .7 1.6.8 2 .4.3-.4 1.5.9 1.5.9h1l.2-2-.6-.3v-3.1l1-1.2c1.3-.5.9 2.8.9 3.1 0 1.2.6 1.1 1.2.9 1-.5.2 1.2-.7 1-.8 0-.3 1.1-.3 1.1l.5.3-1 .7-.8 1-1-.3-1.3-.1-.4-.8-.8-.1-.1 1.5-.5.7-1.3 1.3c1.7 0-.2 1.1-.6 1.1 1 .4-.1 1.3-2.6.6v.7l-.9.1.8.9.8.1-.3 1.8c0 1.4-3.5.5-3.8.1l-.1 2h-.6v3.2l1.1-.2v.8h2.9l4.1-4.3 2.5-.6c.2-1 1.3.2 1.3.2 1 0 1.2.7 1.2.7l1.4.2c1.2.3.5.4.6.9 0 .6.6.4.6.4l.2-1.4h.7l-.7-.7-1.2-.5-1.2-.5c-.9-1.2.2-1 1-1h1.4s1.6 2.3 1.6 2.8.8.6.8.6h.9l.3.7h1l.3.6h2v-1l-1.8-.3v-1l-1.4-.4c-.4-1.8.4-2.3.9-1.5l.6.1-.2-1.6.8-.2-.3-2.3-.6-.2v-.7h2.7c-.2-1.3 0-2 0-2h.8l.1.6 3.3.3 2.3-2.7c-.1-.2.2-.3 0-.6-.4-.3-.8 0-1.3-.3-.6-.3 0-2.1-.1-2.6-.1-.4 1.8-1 1.5 0-.4.9 0 1.3 0 1.3 1.3-1.3 2.5.1 2.4.5-.1.3.7.6 1.3.3.5-.3 1.2 1 1 1.6-.3.6-2.2.5-2.3-.1-.1-.7-.4-.4-.6-.1-.2.3-1.2.5-1.7.2a.5.5 0 01-.2-.2l-2.3 2.7h.1c1.3.7.7 1.7.2 2l-1.1.1-.2.5-2.8.2-.2 1c-1.4-.1-2 1.4-1.6 2.1.3.8 0 1.4 0 1.4l1.1.6 1.5-.5c.2-1 1.2-1.3 2-2 .9-.6 2.3 1.3 1.9 2.1-.5.9-.5 1.2-.5 1.2l.1 1-1 .4-.9.5v.5h-3l-.5.5-1.4.1-.4.7-1 .1s-1.5.8-.9 1.6c.6.9-2.7.8-3.4-.4-.2 1-1.4 0-1.4 0l-1.2-.2v-1.6c-.3-1.1-2.3-1.1-2.2-.4.1.8-3.8.4-3.8.4l-1.3.6-1.2.7v.5l-2 .2-.8.4-.4-.6h-.8l-.9 1.2c-2.2 0-4.3 1.4-4.1 2 .2.5-.9 1-.9 1l-1 .3-.6 1-1.2.4-.2 2.3-.7.4v1l-.7.2v.6h-1.1l.6 1.7.9.4c1.5.2.8 2 .8 2l.9.2.4 1.2.9 1.7c.3 1.3 1.3 1 1.7.9.4-.1.8 1.3.8 1.3h4.3s-.2.5.5.7c.8.2 5.7.4 5.9.1-.2-1 2.6-1.2 3.8-.3 1.2.9 2.8.3 2.8.3l1.6 2 1 2.3 1.8.6 1.3.3.4 1.8 1 .1.3 1.2c1.2.9-.3 2.7-.3 2.7v2.4l.8.4v.9l1.3 1.4 1.6.1 4 4.3 3.3 1 .5 1.7h.8l.7-.6 2.5-.1 1.3-1.2 1.4-.2 11.8-10-1-.7V301c1.8-1.4 2-3.9.1-4-1.3-.3-.7-1.7.6-2l.7-.2v-1l2.5-2.3v-1.7l-5.3-4.4c-2.4-1 0-6.1 1.5-6 1.6.1 0-8 0-8l-1-.4.3-2.6H298l-1.9 2.5-.5 1.7c-.2 2.3-6.8 1.8-7.1 1.5l-2.6-1.3s-1.7-1.4-2-1c-.3.5-1.8-.5-1.8-.2 0 .4-1.4-.7-1.4-.7l-2.1-.8 1.6-.3-.4-1.3 2.8 1.4c.3.4 1.7.3 1.7.3l.4.6s.9-.1 1.4.5c.5.7 3.3.1 3.3.1l.8.7 1.1.4 3.3.1.1-2 .7-.7-.1-1.3.7-.6v-1.1l.6-.2.1-2.4.6-.1V259l-1.6-1.5c-.1.5-1.8.5-1.8.5s-.4.8-.8.8.5 1 .2 1.6c-.2.7-1 .7-1 .7l-1.6.4-.4.5h-1.7l-.3-1.4 2-.5 1-.6.6-1c0-1.1 1.3-1 1.3-1s2.5-2 2.6-3c0-1 1-3.7 2.4-3.7h2.8c1-.4.7-1.8.7-1.8l1.4-.3.2.8s2 .2 2.2-.1c.2-.3.6-1 1.1-.8.6.4 2.3-.7 2.3-.7 0-.8 2.7-.5 2.7-.5l.4-1s-1.9-2.4-2.2-2.4c-.3 0-2-1.5-2.2-1-1.7-.4-1.6-2.8-1.6-2.8l-.6-1.5c0-.9-1.6-2.7-2-2.5-1.6-1.2-.4-2.6 0-2.7.5 0 1.5-1.6 1.5-1.6l.6-1.5 1.8-.5.2-1.4-1-.2s1-2 1.6-2l4.4-.1c.3-.2 1-2 1-2.3 0-.3.8-.4 1.1-.5.3-.1 1-1 1.3-1.4.2-.5-.5-3.2-1-2.7z"/>
+  <path fill="#fff" d="M256 258.2c.2-.2.3.5.6.4.4 0 .5.6.2.6s-.3.4-.3.5c0 .2 0 .6-.3.8-.2.3-.4.1-.8 0-.3-.2-.4-.2-.8-.2s-.1.6-.1.6-1.7 0-1.4-.3c.4-.2.7-.3.4-.5-.2-.1 0-.3 0-.6s.8-.2.6-.4c-.2-.3 0-1.2.4-.7l.2-.5c-.2-.3 0-.3-.5-.5s-.1-1.1-.1-1.1v-.7c.2-.8 1.8-.9 1.9-.2v1.3l.5.1s-.1.5-.5.5 0 .3-.2.5l.2.4zm-5.3.8c.3-.5.8-2.6 1.5-2 .6.7 1 0 1 0s.3.4.2 1c-.2.7-.4 1.3-.8 1.4-.4 0-.7.3-1.2.4-.4.1-.7-.8-.7-.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/us.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/us.svg
new file mode 100644
index 0000000..31f90c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/us.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-us" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <g stroke-width="1pt">
+      <path fill="#bd3d44" d="M0 0h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0z" transform="scale(3.9385)"/>
+      <path fill="#fff" d="M0 10h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0zm0 20h247v10H0z" transform="scale(3.9385)"/>
+    </g>
+    <path fill="#192f5d" d="M0 0h98.8v70H0z" transform="scale(3.9385)"/>
+    <path fill="#fff" d="M8.2 3l1 2.8H12L9.7 7.5l.9 2.7-2.4-1.7L6 10.2l.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7L74 8.5l-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 7.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 24.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 21.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 38.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 35.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 52.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 49.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm-74.1 7l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7H65zm16.4 0l1 2.8H86l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm-74 7l.8 2.8h3l-2.4 1.7.9 2.7-2.4-1.7L6 66.2l.9-2.7-2.4-1.7h3zm16.4 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8H45l-2.4 1.7 1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9zm16.4 0l1 2.8h2.8l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h3zm16.5 0l.9 2.8h2.9l-2.3 1.7.9 2.7-2.4-1.7-2.3 1.7.9-2.7-2.4-1.7h2.9zm16.5 0l.9 2.8h2.9L92 63.5l1 2.7-2.4-1.7-2.4 1.7 1-2.7-2.4-1.7h2.9z" transform="scale(3.9385)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uy.svg
new file mode 100644
index 0000000..0194a7c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uy.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-uy" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#0038a8" d="M284 56.9h228v56.9H284zm0 113.8h228v56.9H284zM0 284.4h512v57H0zm0 113.8h512v57H0z"/>
+  <g fill="#fcd116" stroke="#000" stroke-miterlimit="20" stroke-width=".6" transform="translate(142.2 142.2) scale(3.12889)">
+    <g id="c">
+      <g id="b">
+        <g id="a">
+          <path stroke-linecap="square" d="M1.5 9L6 12c-8 13 1 15-6 21 3-7-3-5-3-17" transform="rotate(22.5)"/>
+          <path fill="none" d="M0 11c-2 13 4.5 17 0 22" transform="rotate(22.5)"/>
+          <path d="M0 0h6L0 33-6 0h6v33"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(45)" xlink:href="#a"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(90)" xlink:href="#b"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1)" xlink:href="#c"/>
+    <circle r="11"/>
+  </g>
+  <g transform="translate(142.2 142.2) scale(.31289)">
+    <g id="d">
+      <path d="M81-44c-7 8-11-6-36-6S16-35 12-38s21-21 29-22 31 7 40 16m-29 9c7 6 1 19-6 19S26-28 32-36"/>
+      <path d="M19-26c1-12 11-14 27-14s23 12 29 15c-7 0-13-10-29-10s-16 0-27 10m3 2c4-6 9 6 20 6s17-3 24-8-10 12-21 12-26-6-23-10"/>
+      <path d="M56-17c13-7 5-17 0-19 2 2 10 12 0 19M0 43c6 0 8-2 16-2s27 11 38 7c-23 9-14 3-54 3h-5m63 6c-4-7-3-5-11-16 8 6 10 9 11 16M0 67c25 0 21-5 54-19-24 3-29 11-54 11h-5m5-29c7 0 9-5 17-5s19 3 24 7c1 1-3-8-11-9S25 9 16 7c0 4 3 3 4 9 0 5-9 5-11 0 2 8-4 8-9 8"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#d"/>
+    <path d="M0 76c-5 0-18 3 0 3s5-3 0-3"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uz.svg
new file mode 100644
index 0000000..641af1b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/uz.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-uz" viewBox="0 0 512 512">
+  <path fill="#1eb53a" d="M0 341.3h512V512H0z"/>
+  <path fill="#0099b5" d="M0 0h512v170.7H0z"/>
+  <path fill="#ce1126" d="M0 163.8h512v184.4H0z"/>
+  <path fill="#fff" d="M0 174h512v164H0z"/>
+  <circle cx="143.4" cy="81.9" r="61.4" fill="#fff"/>
+  <circle cx="163.8" cy="81.9" r="61.4" fill="#0099b5"/>
+  <g fill="#fff" transform="translate(278.5 131) scale(2.048)">
+    <g id="e">
+      <g id="d">
+        <g id="c">
+          <g id="b">
+            <path id="a" d="M0-6L-1.9-.3 1 .7"/>
+            <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+          </g>
+          <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+        <use width="100%" height="100%" transform="rotate(144)" xlink:href="#c"/>
+      </g>
+      <use width="100%" height="100%" y="-24" xlink:href="#d"/>
+      <use width="100%" height="100%" y="-48" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" x="24" xlink:href="#e"/>
+    <use width="100%" height="100%" x="48" xlink:href="#e"/>
+    <use width="100%" height="100%" x="-48" xlink:href="#d"/>
+    <use width="100%" height="100%" x="-24" xlink:href="#d"/>
+    <use width="100%" height="100%" x="-24" y="-24" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/va.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/va.svg
new file mode 100644
index 0000000..7da6d3e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/va.svg
@@ -0,0 +1,479 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-va" viewBox="0 0 512 512">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M256 0h256v512H256z"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M282.4-735.1c0 .6 56 222.8 118.2 300.5 69.4 87.3 113.2 87.4 113.2 87.4l70.9-17.8s-41.6 2.1-123.9-104.2c-83.4-107.7-109.4-286-108.1-282.8l-70.3 16.9z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M285-727.6c-1.5-9.4 33.9 221 140.2 327.2 53.1 53.1 88.6 53.1 88.6 53.1l88.6-17.7s-51.7 3.8-134-102.5c-83.5-107.8-108.6-263.3-108-263.9l-75.4 3.8z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M282.4-735.1c0 .6 56 222.8 118.2 300.5 69.4 87.3 113.2 87.4 113.2 87.4l70.9-17.8s-41.6 2.1-123.9-104.2c-83.4-107.7-109.4-286-108.1-282.8l-70.3 16.9z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M285-727.6c-1.5-9.4 33.9 221 140.2 327.2 53.1 53.1 88.6 53.1 88.6 53.1l88.6-17.7s-51.7 3.8-134-102.5c-83.5-107.8-108.6-263.3-108-263.9l-75.4 3.8z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.21538 .00384 -.00463 .17867 312.2 347.8)"/>
+    <g fill="#b00" stroke="#000" stroke-width="14.3">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01583 .00247 .00912 -.01043 340 336.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01553 .00281 .0093 -.0104 338.6 337.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01583 .00247 .00912 -.01043 336.7 339.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01606 -.001 .00564 -.01204 356.6 321)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01588 -.00034 .0061 -.01195 355.6 322.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01608 -.00073 .00592 -.01194 354.2 324)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01587 .0005 .007 -.0116 353.3 324.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01584 -.00241 .00408 -.01247 360.6 315.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0157 -.002 .00426 -.0125 359.7 316.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01584 -.00241 .00408 -.01247 358.5 318.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01575 -.00175 .00455 -.01242 357.5 320)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01601 .0014 .00808 -.01102 346.2 331.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01575 .00175 .00826 -.011 344.9 332.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01601 .0014 .00808 -.01102 343.1 334.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01553 .00281 .0093 -.0104 341.9 335)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0161 .00013 .00681 -.0116 351.7 326.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01587 .0005 .007 -.0116 350.5 327.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01601 .0014 .00808 -.01102 349.3 328.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01575 .00175 .00826 -.011 348 329.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01497 -.00495 .0011 -.0129 369.3 295.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01532 -.00352 .0025 -.01283 369.3 296.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0154 -.00394 .00232 -.01278 368.4 298.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01532 -.00352 .0025 -.01283 367.8 299.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01493 -.00453 .00126 -.01295 371.1 290)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01497 -.00495 .0011 -.0129 370.5 292)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01493 -.00453 .00126 -.01295 370 293.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01572 -.0029 .00353 -.01259 364.3 308.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0156 -.00249 .0037 -.01262 363.5 310)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01572 -.0029 .00353 -.01259 362.4 311.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0157 -.002 .00426 -.0125 361.7 313.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0154 -.00394 .00232 -.01278 366.9 301.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0156 -.00249 .0037 -.01262 367.2 302.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01572 -.0029 .00353 -.01259 366.1 304.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0156 -.00249 .0037 -.01262 365.3 306.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01384 -.0069 -.00138 -.01288 374 279.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01486 -.00518 .00082 -.01291 374 281.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01483 -.00476 .00099 -.01297 373.6 282.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01388 -.00647 -.00122 -.01295 374.7 273.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01384 -.0069 -.00138 -.01288 374.4 276)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01388 -.00647 -.00122 -.01295 374.3 277.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01486 -.00518 .00082 -.01291 373 285)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01493 -.00453 .00126 -.01295 372.4 286.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01497 -.00495 .0011 -.0129 371.7 288.2)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="14.3">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01599 .0016 -.00828 -.01091 422.7 331.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01571 .00195 -.00846 -.0109 424.1 332.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01599 .0016 -.00828 -.01091 425.9 334.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01594 -.00187 -.00468 -.01232 407.4 315)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01582 -.00121 -.00515 -.01226 408.3 316.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01598 -.0016 -.00497 -.01224 409.6 318.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01588 -.00037 -.00607 -.01196 410.4 318.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01562 -.00328 -.0031 -.01267 403.9 309)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01551 -.00286 -.00327 -.0127 404.7 310.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01562 -.00328 -.0031 -.01267 405.6 312.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01558 -.0026 -.00357 -.01265 406.6 314)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01609 .0005 -.0072 -.01144 417 326)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01585 .00088 -.00738 -.01143 418.2 327.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01609 .0005 -.0072 -.01144 419.8 329)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01571 .00195 -.00846 -.0109 421 329.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01607 -.00076 -.00589 -.01195 411.8 320.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01588 -.00037 -.00607 -.01196 413 322)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01609 .0005 -.0072 -.01144 414 323)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01585 .00088 -.00738 -.01143 415.3 324.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00577 -.00008 -.01293 396.7 289.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.015 -.00436 -.00148 -.01293 396.7 289.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01505 -.00478 -.00131 -.01288 397.4 291.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.015 -.00436 -.00148 -.01293 398 293.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00534 -.00025 -.013 395.3 283.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00577 -.00008 -.01293 395.8 285.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00534 -.00025 -.013 396.2 287)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01546 -.00376 -.00253 -.01275 400.7 302)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01538 -.00334 -.0027 -.0128 401.4 303.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01546 -.00376 -.00253 -.01275 402.3 305.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01551 -.00286 -.00327 -.0127 403 307)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01505 -.00478 -.00131 -.01288 398.6 295.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01538 -.00334 -.0027 -.0128 398.2 296.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01546 -.00376 -.00253 -.01275 399.1 298.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01538 -.00334 -.0027 -.0128 399.8 300)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01327 -.00764 .00239 -.01277 393.3 273)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01443 -.00598 .0002 -.01293 393.1 274.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01443 -.00556 .00003 -.013 393.5 276)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01334 -.00722 .00224 -.01286 393 267)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01327 -.00764 .00239 -.01277 393.1 269.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01334 -.00722 .00224 -.01286 393.2 270.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01443 -.00598 .0002 -.01293 394 278.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00534 -.00025 -.013 394.4 279.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01455 -.00577 -.00008 -.01293 395 281.5)"/>
+    </g>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.21538 .00384 .00463 .17867 452.2 346.2)"/>
+    <g transform="matrix(.12959 0 0 .10848 351.4 305.6)">
+      <path fill="silver" d="M324.6-255.4l-50.2 50.1L449.8-29.9l50.1-50z"/>
+      <circle cx="354.3" cy="-1428" r="35.4" fill="#fff133" stroke="#000" stroke-width="1pt" transform="scale(-1 1) rotate(45 -177.9 -1104.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M-402-957l37.5 37.7-25 25-37.6-37.6c-12.5-12.5 12.5-37.5 25-25z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M-346.6-926.5l-50.1 50a25 25 0 01-25-25c10.8-25.8 25-38.4 50-50a26.9 26.9 0 0125 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M-352-931.9l37.7 37.6-50.2 50.1-37.5-37.5c5-20 30-45.1 50-50.1z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M-309-889l-50.1 50.1a25.1 25.1 0 01-25-25c10.8-25.9 25-38.4 50-50.1a26.9 26.9 0 0125 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M-314.4-894.3L28.4-551.5l-50 50.1-342.9-342.8c5-20 30.1-45 50.1-50z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M49-531l-50.2 50.1a25.1 25.1 0 01-25-25c10.8-25.9 25-38.5 50-50.1A26.9 26.9 0 0149-531z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M49-531l225.4 225.5-50 50.1L-1.3-480.9c5-20 30.1-45 50.1-50z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M186.7-418.2l-75.1 75.1a25.1 25.1 0 01-25-25s0-25 25-50.1 50-25 50-25c11.7 1.5 21.5 12.4 25.1 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M186.7-418.2l50.2 75.1-50.1 50.1-75.2-50c-2.8-2.5 0-25.1 25-50.2s49-24.4 50.1-25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M336.6-506.7c0-35.4 0-86.6 17.7-130C372-593.3 372-542 372-506.7h-35.4z" transform="rotate(135 434.8 18.7) scale(1 -.81782)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="rotate(-45 399.4 -194.2) scale(1 .81782)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="rotate(135 434.8 18.7) scale(1 -.81782)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M-314.4-894.3l37.6 37.6c25 25 112.8 137.8 112.8 137.8s117.3 92.3 142.3 117.3L16-564c-25-25-180-129.8-180-129.8S-71.7-551.5-34.1-514l-37.6-37.6c-25-25-117.3-142.3-117.3-142.3S-289.3-769-314.4-794.1l-50-50c25 25 175.3 125.2 175.3 125.2s-100.2-150.3-125.3-175.4z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M299.5-230.3A907.4 907.4 0 00412.2-92.5a83 83 0 0050.1 25s0-25-25-50a899 899 0 00-137.8-112.8zm-62.6-112.8c87.6 87.7 187.9 137.8 250.5 200.5 50.1 50 15.4 88.4 1.4 100.6-14 12.1-52 50.3-101.6-.4C324.5-105 274.4-205.3 186.7-293c0-25 25.1-50 50.1-50z"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M218.3 257.9h23v73h-23z" transform="matrix(-1.2487 -1.4214 -1.3593 1.3175 1166.1 -102.6)"/>
+      <g fill="silver" stroke="#000">
+        <path stroke-width=".6" d="M301.2 396.9l17.7 17.7-17.7 17.7 8.8 8.8 17.7-17.7 35.5 35.5-17.7 17.7 8.8 8.8 17.7-17.7 17.8 17.7-53.2 53.2-35.4-35.4 17.7-17.8 8.9 8.9 8.8-8.9-35.4-35.4-8.9 8.9 8.9 8.8-17.7 17.7-17.7-17.7 8.8-8.8-8.8-8.9-35.5 35.4 8.9 8.9 8.8-8.9 17.8 17.8-17.8 17.7-8.8-8.9-8.9 8.9 35.5 35.4 8.8-8.9-8.8-8.8 17.7-17.7 35.4 35.4-53.1 53.1-17.8-17.7 17.8-17.7-9-8.8-17.6 17.7-35.5-35.5 17.8-17.7-8.9-8.8-17.7 17.7-17.7-17.7 124-124z" transform="matrix(-2.2946 0 0 2.2438 360.6 -1733.7)"/>
+        <path stroke-width="1.3" d="M318.9 786.6V822l88.6 88.6v-70.8L389.8 822h-35.5L319 786.6z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M230.4 698.8l70.4 70.4.8 35.2-71.2-71.3v-34.3z" transform="matrix(-1.1473 0 0 1.1219 157.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 259 -1387.9)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1189.1)"/>
+        <path stroke-width="1.3" d="M230.4 698.8l35.8 35.4v35.4l-35.8-36.5v-34.3z" transform="matrix(-1.1473 0 0 1.1219 218.8 -1349)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1507.1)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 137 -1427.6)"/>
+        <path stroke-width="1.3" d="M283.5 822l53.1-53.1v-35.4l-70.9 70.8 17.8 17.8z" transform="matrix(-1.1473 0 0 1.1219 137 -1546.9)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 35.4 -1447.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3L265.8 769v-35.4l35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1507.1)"/>
+        <path stroke-width="1.3" d="M389.8 822l-53.2-53v-35.4l70.9 70.8-17.7 17.8z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1546.9)"/>
+        <path stroke-width="1.3" d="M230.4 698l70.9 71h35.4l17.7 17.6v70.9l-124-124.4v-35z" transform="matrix(-1.1473 0 0 1.1219 -66.2 -1387.9)"/>
+        <path stroke-width="1.3" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 -5.3 -1447.5)"/>
+        <path stroke-width="1.3" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(-1.1473 0 0 1.1219 -5.3 -1447.5)"/>
+        <path stroke-width="1.3" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 -86.6 -1527)"/>
+        <path stroke-width="1.3" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 15 -1626.4)"/>
+        <path stroke-width="1.3" d="M265.8 768.9v-35.4l17.7 17.7-17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1348.1)"/>
+        <path stroke-width="1.3" d="M301.2 804.3L265.8 769l17.7-17.7 17.7 17.7v35.4z" transform="matrix(-1.1473 0 0 1.1219 137 -1427.6)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l-17.7-17.7 17.7-17.7v35.4z" transform="matrix(-1.1473 0 0 1.1219 15 -1586.6)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M196.5 254.2h25.2v80.2h-25.2z" transform="matrix(-1.2509 -1.4194 -1.3614 1.3153 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M242.1 24.8c-147 0-113.1 164.2-100.4 124 9.4-29.5 35.5-70.8 65-80.2C246.9 55.8 233.4 78 248 78c14.7 0 1.2-22.2 41.4-9.4 29.5 9.4 55.6 50.7 65 80.2 12.7 40.3 53-124-112.3-124z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M389.8 166.5a141.8 141.8 0 01-283.5 0v-17.7c0-29 35.4 124 141.7 124s141.8-124.7 141.8-124v17.7z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(1.8992 0 0 1.8865 224 -100.5)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M389.8 148.8a141.8 141.8 0 11-283.6 0 141.8 141.8 0 01283.6 0zm-53.2 0c0 14.7 22.8 3 9.4 43a81 81 0 01-56.6 55c-40.2 12.7-26.7-9.4-41.4-9.4-14.6 0-1.1 22.1-41.3 9.4a80.2 80.2 0 01-56.6-56.6c-12.8-40.2 9.3-26.7 9.3-41.4s-22-1.1-9.3-41.3a80.2 80.2 0 0156.6-56.6c40.2-12.8 26.7 9.3 41.3 9.3 14.7 0 1.2-22 41.4-9.3a80.3 80.3 0 0156.6 56.6c12.7 40.2-9.4 26.6-9.4 41.3z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M126.5 157.7c-20.2 0-1.9 67.6-9 51.7a126.5 126.5 0 010-103.4c7.1-16-11.2 51.7 9 51.7z" transform="matrix(-1.6618 0 0 1.7607 1107.2 -99.5)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M372 140a88 88 0 01-9.7 44.8c-8 13.7 9.8-44.8-8-44.8 17.7 0 1.7-58.6 8-44.8a107.7 107.7 0 019.8 44.8z" transform="matrix(-1.8992 0 0 2.0316 1166.1 -106.2)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M296.3 263a123.5 123.5 0 01-96.5 0c-14.9-6.2 48.2 9.8 48.2-7.9 0 17.7 63.1 1.7 48.3 8zM248 42.6c0-17.7-63-1.7-48.2-8a123 123 0 0196.5 0c14.8 6.3-48.3-9.7-48.3 8z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1257.6 -120)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.2929 -1.3819 1.3912 -1.2842 808.9 712)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1223.2 329.9)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M267.7 308.5c-9.2 1.9-20.2 1-30 1-9.7 0-19.3-2.7-28.5-4.6l8.8-10.3a149.3 149.3 0 0060 0l-10.3 14z" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1223.2 329.9)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.3912 1.2842 1.2929 1.3819 847.4 -345.2)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 789.1 314.4)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M267.6 281.5c-9.2 1.9-17.1 3-26.9 3s-23-.8-32.3-2.7l9.6 12.8a149.5 149.5 0 0060 0l-10.4-13.1z" transform="matrix(-1.3912 1.2842 1.2929 1.3819 850.6 -315.2)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M174 271.8l-.9 14.8-3.2 4.5 1-15 3-4.3zm156.5-6.2l3.6 4.2 1 13.6-2.9-3-1.7-14.8z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1237.6 329.9)"/>
+    </g>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M513.8-790.2l35.4-17.7 35.4 17.7s-73.3 35.5-73.3 159.5c0 88.6 125.2 106.3 125.2 212.6 0 45.6-34.1 88.6-69.6 88.6s-88.6-17.7-141.7-70.9c35.4 17.7 76 37.3 106.3 36 19.6-.3 55-17.7 55-53 0-71-122.8-107-122.8-213.3 0-124 50-159.4 50-159.4z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M520.3-790.2l46.6-17.7 10 17.7s-70.6 35.5-70.6 159.5c0 88.6 125.9 106.3 125.9 212.6 0 45.6-26.7 87.4-65.3 88.6-73.4 2.3-90.4-24-141.7-70.9 43.1 32.3 105 46.8 129 34.2 29.4-15.4 35-36 35-53.8 0-70.9-120.9-104.4-120.9-210.7 0-124 52-159.4 52-159.4z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M513.3-789.7c7-2.4 36-18.2 71.3 17.3 17.8 17.7 17.8 53.1 17.8 70.8l53.1-53.1s-29-86.9-107.6-53.6a334.8 334.8 0 00-34.5 18.6z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M523.8-796c8.8-2.8 36.7-6.3 64.6 18.6 17.7 17.7 19 42.9 19 60.6l40.6-38c3.4-3.1-24.8-81.2-99.2-54a154 154 0 00-25 12.9z" transform="matrix(-.21542 0 0 .17871 450.5 340.7)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.17534 -.01853 -.05985 .15541 365.6 343.2)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.15954 .02165 .00278 -.11904 258.9 126)"/>
+    <g transform="matrix(.12959 0 0 .10848 351.4 305.6)">
+      <g stroke-width="1pt" transform="rotate(45 478.1 -504.6)">
+        <circle cx="354.3" cy="-1428" r="35.4" fill="silver" stroke="#000" transform="translate(124 283.5)"/>
+        <path fill="#fff133" stroke="#000" d="M460.6-1126.8v53.2h35.5v-53.2c0-17.7-35.5-17.7-35.5 0z"/>
+        <path fill="silver" stroke="#000" d="M443-1066h70.8a25.1 25.1 0 000-35.5c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.4z"/>
+        <path fill="#fff133" stroke="#000" d="M443-1073.6v53.1h70.8v-53.1c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="silver" stroke="#000" d="M443-1013h70.8a25.1 25.1 0 000-35.4c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.5z"/>
+        <path fill="#fff133" d="M443-117h70.8v248.1h-70.9z"/>
+        <path fill="#fff133" stroke="#000" d="M443-1020.5v484.8h70.8v-484.8c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="silver" stroke="#000" d="M443-506.7h70.8a25.1 25.1 0 000-35.4c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.4z"/>
+        <path fill="#fff133" stroke="#000" d="M443-506.7v318.9h70.8v-318.9c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="#fff133" stroke="#000" d="M425.2-329.5h106.3a25 25 0 000-35.5s-17.7-17.7-53.2-17.7-53.1 17.7-53.1 17.7c-7.1 9.4-6.3 24 0 35.5z"/>
+        <path fill="#fff133" stroke="#000" d="M425.2-329.5l17.7 88.6h70.9l17.7-88.6c.3-3.8-17.7-17.7-53.2-17.7s-51.9 17.3-53.1 17.7z"/>
+        <path fill="#fff133" stroke="#000" d="M336.6-506.7c0-35.4 0-86.6 17.7-130C372-593.3 372-542 372-506.7h-35.4z" transform="matrix(1 0 0 .81782 124 173.4)"/>
+        <path fill="#fff133" stroke="#000" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="matrix(-1 0 0 .81782 832.7 173.4)"/>
+        <path fill="#fff133" stroke="#000" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="matrix(1 0 0 .81782 124 173.4)"/>
+        <path fill="#fff133" stroke="#000" d="M478.3-117a908.6 908.6 0 0117.8 177.2 83 83 0 01-17.8 53.2s-17.7-17.7-17.7-53.2c0-17.7 0-88.6 17.7-177.1zM443-241c0 124-35.4 230.4-35.4 319 0 70.8 51.6 73.4 70 72.1 18.6-1.3 72.4-1.2 71.7-72.2 0-88.5-35.4-194.8-35.4-318.9-17.7-17.7-53.2-17.7-70.9 0z"/>
+        <path fill="silver" stroke="#000" d="M443-1020.5v53.2c0 35.4 17.6 177.1 17.6 177.1S443-642 443-606.6v53.2c0-35.4 35.4-219 35.4-219s35.5 165.9 35.5 219v-53.2c0-35.4-17.7-183.6-17.7-183.6s17.7-124 17.7-159.4v-70.9c0 35.4-35.4 212.6-35.4 212.6S443-985.1 443-1020.5z"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M218.3 257.9h23v73h-23z" transform="matrix(1.2487 -1.4214 1.3593 1.3175 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M242.1 24.8c-147 0-113.1 164.2-100.4 124 9.4-29.5 35.5-70.8 65-80.2C246.9 55.8 233.4 78 248 78c14.7 0 1.2-22.2 41.4-9.4 29.5 9.4 55.6 50.7 65 80.2 12.7 40.3 53-124-112.3-124z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M389.8 166.5a141.8 141.8 0 01-283.5 0v-17.7c0-29 35.4 124 141.7 124s141.8-124.7 141.8-124v17.7z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -753.9 -120)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M196.5 254.2h25.2v80.2h-25.2z" transform="matrix(1.2509 -1.4194 1.3614 1.3153 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(-1.8992 0 0 1.8865 279.7 -100.5)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M389.8 148.8a141.8 141.8 0 11-283.6 0 141.8 141.8 0 01283.6 0zm-53.2 0c0 14.7 22.8 3 9.4 43a81 81 0 01-56.6 55c-40.2 12.7-26.7-9.4-41.4-9.4-14.6 0-1.1 22.1-41.3 9.4a80.2 80.2 0 01-56.6-56.6c-12.8-40.2 9.3-26.7 9.3-41.4s-22-1.1-9.3-41.3a80.2 80.2 0 0156.6-56.6c40.2-12.8 26.7 9.3 41.3 9.3 14.7 0 1.2-22 41.4-9.3a80.3 80.3 0 0156.6 56.6c12.7 40.2-9.4 26.6-9.4 41.3z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M126.5 157.7c-20.2 0-1.9 67.6-9 51.7a126.5 126.5 0 010-103.4c7.1-16-11.2 51.7 9 51.7z" transform="matrix(1.6618 0 0 1.7607 -603.6 -99.5)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M372 140a88 88 0 01-9.7 44.8c-8 13.7 9.8-44.8-8-44.8 17.7 0 1.7-58.6 8-44.8a107.7 107.7 0 019.8 44.8z" transform="matrix(1.8992 0 0 2.0316 -662.5 -106.2)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M296.3 263a123.5 123.5 0 01-96.5 0c-14.9-6.2 48.2 9.8 48.2-7.9 0 17.7 63.1 1.7 48.3 8zM248 42.6c0-17.7-63-1.7-48.2-8a123 123 0 0196.5 0c14.8 6.3-48.3-9.7-48.3 8z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.2929 -1.3819 -1.3912 -1.2842 -305.2 712)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -719.6 329.9)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M267.7 308.5c-9.2 1.9-20.2 1-30 1-9.7 0-19.3-2.7-28.5-4.6l8.8-10.3a149.3 149.3 0 0060 0l-10.3 14z" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -719.6 329.9)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.3912 1.2842 -1.2929 1.3819 -343.8 -345.2)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -285.5 314.4)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M267.6 281.5c-9.2 1.9-17.1 3-26.9 3s-23-.8-32.3-2.7l9.6 12.8a149.5 149.5 0 0060 0l-10.4-13.1z" transform="matrix(1.3912 1.2842 -1.2929 1.3819 -347 -315.2)"/>
+      <path fill="silver" stroke="#000" stroke-width="1pt" d="M174 271.8l-.9 14.8-3.2 4.5 1-15 3-4.3zm156.5-6.2l3.6 4.2 1 13.6-2.9-3-1.7-14.8z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1pt" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -733.9 329.9)"/>
+      <g fill="#fff133" stroke="#000">
+        <path stroke-width=".6" d="M301.2 396.9l17.7 17.7-17.7 17.7 8.8 8.8 17.7-17.7 35.5 35.5-17.7 17.7 8.8 8.8 17.7-17.7 17.8 17.7-53.2 53.2-35.4-35.4 17.7-17.8 8.9 8.9 8.8-8.9-35.4-35.4-8.9 8.9 8.9 8.8-17.7 17.7-17.7-17.7 8.8-8.8-8.8-8.9-35.5 35.4 8.9 8.9 8.8-8.9 17.8 17.8-17.8 17.7-8.8-8.9-8.9 8.9 35.5 35.4 8.8-8.9-8.8-8.8 17.7-17.7 35.4 35.4-53.1 53.1-17.8-17.7 17.8-17.7-9-8.8-17.6 17.7-35.5-35.5 17.8-17.7-8.9-8.8-17.7 17.7-17.7-17.7 124-124z" transform="matrix(2.2946 0 0 2.2438 143.1 -1733.7)"/>
+        <path stroke-width="1.3" d="M318.9 786.6V822l88.6 88.6v-70.8L389.8 822h-35.5L319 786.6z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M230.4 698.8l70.4 70.4.8 35.2-71.2-71.3v-34.3z" transform="matrix(1.1473 0 0 1.1219 346.3 -1288.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 244.7 -1387.9)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 448 -1189.1)"/>
+        <path stroke-width="1.3" d="M230.4 698.8l35.8 35.4v35.4l-35.8-36.5v-34.3z" transform="matrix(1.1473 0 0 1.1219 284.9 -1349)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 448 -1507.1)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 366.7 -1427.6)"/>
+        <path stroke-width="1.3" d="M283.5 822l53.1-53.1v-35.4l-70.9 70.8 17.8 17.8z" transform="matrix(1.1473 0 0 1.1219 366.7 -1546.9)"/>
+        <path stroke-width="1.3" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 468.3 -1447.5)"/>
+        <path stroke-width="1.3" d="M301.2 804.3L265.8 769v-35.4l35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 448 -1507.1)"/>
+        <path stroke-width="1.3" d="M389.8 822l-53.2-53v-35.4l70.9 70.8-17.7 17.8z" transform="matrix(1.1473 0 0 1.1219 448 -1546.9)"/>
+        <path stroke-width="1.3" d="M230.4 698l70.9 71h35.4l17.7 17.6v70.9l-124-124.4v-35z" transform="matrix(1.1473 0 0 1.1219 569.8 -1387.9)"/>
+        <path stroke-width="1.3" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.3" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 509 -1447.5)"/>
+        <path stroke-width="1.3" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(1.1473 0 0 1.1219 509 -1447.5)"/>
+        <path stroke-width="1.3" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 590.3 -1527)"/>
+        <path stroke-width="1.3" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 488.6 -1626.4)"/>
+        <path stroke-width="1.3" d="M265.8 768.9v-35.4l17.7 17.7-17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 448 -1348.1)"/>
+        <path stroke-width="1.3" d="M301.2 804.3L265.8 769l17.7-17.7 17.7 17.7v35.4z" transform="matrix(1.1473 0 0 1.1219 366.7 -1427.6)"/>
+        <path stroke-width="1.3" d="M301.2 804.3l-17.7-17.7 17.7-17.7v35.4z" transform="matrix(1.1473 0 0 1.1219 488.6 -1586.6)"/>
+      </g>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="20">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.9 291.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.9 289.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.9 287.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 377 285.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.8 299)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.8 297.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.8 295.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.9 293.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 377 275.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 377 274.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 377 272)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 377.1 270.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 377 283.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 377 281.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 377 279.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 377 278)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.6 322)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.6 320.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.6 318.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.6 316.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.5 329.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.5 328)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.5 325.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.5 324.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.7 306.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.7 305)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.8 302.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.8 301.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.6 314.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.7 312.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.7 310.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.7 308.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.2 352.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.3 351)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.3 349)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.3 347.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.2 358.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.2 356.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.2 354.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.4 337.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.4 335.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.4 333.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.5 331.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.3 345)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.3 343.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.4 341.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.4 339.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376 372)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376 370.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376 368.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.1 366.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376 378)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376 376)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376 374.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.1 364.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01298 .00767 -.00286 .01277 376.1 362.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01288 .00808 -.003 .01268 376.1 360.6)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="20">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 291.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 289.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 287.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 286)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 299.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 297.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 295.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 293.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.4 276.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 274.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.4 272.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.4 270.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 283.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 282.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 280)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.5 278.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 322.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 320.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 318.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 316.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 330)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 328.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 326.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 324.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 306.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 305.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.5 303)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 301.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 314.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 312.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 310.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 309)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 353)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 351.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 349.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 347.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 359)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 356.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 355.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 337.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 336)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.6 333.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.6 332.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 345.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 343.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 341.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 339.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.8 372.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.8 370.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 368.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.8 366.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.8 378.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.8 376.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.8 374.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 364.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01308 .00754 -.00269 .0128 379.7 363)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.013 .00796 -.00283 .0127 379.7 360.8)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="14.3">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0162 .00404 .00232 .0128 390 279.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0045 .013 -.01229 .00849 386.7 276.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01181 .00968 -.00565 .01213 388 278.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00986 .01097 -.01604 -.00222 386.4 273.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 .01104 -.01615 -.0021 388.6 273.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01037 .01067 -.01593 -.0027 377 273.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00985 .01076 -.01604 -.00257 379.1 273.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01037 .01067 -.01593 -.0027 381.8 273.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 .01104 -.01615 -.0021 383.7 273.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01037 .01067 -.01593 -.0027 373.9 272.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01138 .00976 -.01555 -.00406 375.4 272.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01504 .00625 -.01305 -.00773 374.5 271.2)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="14.3">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01307 -.00787 -.01355 .0062 420.7 360.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01263 -.00807 -.0137 .00611 422.6 359.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01307 -.00787 -.01355 .0062 425 359.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01263 -.00807 -.0137 .00611 427 358.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01559 .00255 -.00363 .01263 441.4 352.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0103 .01036 .00644 .01175 443.3 347)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0157 .00296 -.00345 .0126 442.4 350.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01221 -.00878 -.01414 .0052 411.6 362.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01175 -.00895 -.01428 .0051 413.6 361.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0134 -.00747 -.01328 .0066 416.7 361.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01125 -.00939 -.01454 .00455 417.5 360.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01307 -.00787 -.01355 .0062 429.4 358)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01263 -.00807 -.0137 .00611 431.4 357.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 382.8 363.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 -.01075 -.01521 .00257 384.9 363.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 387.4 363.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 -.01075 -.01521 .00257 389.5 363.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 373.7 364)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 -.01075 -.01521 .00257 375.7 364)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 378.3 363.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 -.01075 -.01521 .00257 380.3 363.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01117 -.0097 -.01466 .00406 401.9 363.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01105 -.00955 -.01463 .00433 404.1 363.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01153 -.0094 -.0145 .00444 406.7 362.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01175 -.00895 -.01428 .0051 409.1 362.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 392 363.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01015 -.01023 -.01499 .00338 394.4 363.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01123 -.00966 -.01464 .00412 397.3 363.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00994 -.01037 -.01505 .00317 398.9 363.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0074 -.01197 -.01544 .00039 345.1 362)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00689 -.01198 -.01552 .00025 347.1 362.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00882 -.01127 -.0153 .00171 350.2 363)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00832 -.01133 -.0154 .00158 352.3 363)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00689 -.01198 -.01552 .00025 338 361.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0074 -.01197 -.01544 .00039 340.6 361.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00689 -.01198 -.01552 .00025 342.6 361.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00882 -.01127 -.0153 .00171 364 363.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00832 -.01133 -.0154 .00158 366 363.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00984 -.01067 -.0151 .0027 369 364)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00934 -.01075 -.01521 .00257 371.1 364)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00882 -.01127 -.0153 .00171 354.8 363.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00832 -.01133 -.0154 .00158 356.8 363.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00882 -.01127 -.0153 .00171 359.4 363.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00832 -.01133 -.0154 .00158 361.4 363.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01592 -.00203 .00451 -.01237 330 344.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01266 -.00804 -.00338 -.01268 327.5 348.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0085 -.01144 -.0083 -.0109 327.4 351.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.00338 -.013 -.01242 -.0078 328 355)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01585 .00085 .00735 -.01145 335 339.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01609 .00047 .00716 -.01145 333.4 341)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01577 -.00162 .0047 -.01239 331.2 342.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0009 -.01346 -.01428 -.00493 329.9 357.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00393 -.01288 -.01527 -.00232 332.5 359.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0074 -.01197 -.01544 .00039 336 360.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01563 -.00324 -.00984 .00997 434.9 356.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01507 -.0042 -.0106 .0095 435 356.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01583 -.00244 -.0091 .01045 439.4 354.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01496 -.00447 -.01083 .0093 436.6 355.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01467 -.00556 .01183 .00831 430.2 346.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01428 -.00583 .012 .00825 428.5 345.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01514 -.0046 .01102 .00905 425.6 344.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01428 -.00583 .012 .00825 436.5 349.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01467 -.00556 .01183 .00831 434.2 348.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01428 -.00583 .012 .00825 432.5 347.7)"/>
+    </g>
+    <g stroke-width="1pt" transform="matrix(.07228 0 0 .0858 364.6 299.2)">
+      <path fill="#fff133" stroke="#000" d="M212.6-1995v53.2h-53.1v35.5h53.1v106.3H248v-106.3h53.2v-35.5H248v-53.1h-35.4z"/>
+      <ellipse cx="239.2" cy="-1813.5" fill="#fff133" stroke="#000" rx="62" ry="57.3" transform="matrix(.57143 0 0 .61816 93.6 -679)"/>
+      <path fill="#fff" stroke="#000" d="M602.4-1119.4c0 68.5-10.5 145.7-29.3 205-120-26.4-268-39.7-339-39.7-87.6 0-246.2 13.3-345.3 26.5a630.8 630.8 0 01-30.5-191.8c0-273.8 105.2-390.2 367.5-496 233.3 105.8 376.6 222.2 376.6 496z" transform="matrix(1.0576 0 0 1.3394 -5.8 363.7)"/>
+      <path fill="#fff133" stroke="#000" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1715 0 0 .74463 -32.8 -634.9)"/>
+      <g fill="#fff133" stroke="#000">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.1725 0 0 .74463 -33 -766.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.13516 -.18643 .29356 .72091 -190 -703.6)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.1416 .16986 -.26746 .725 182.2 -778.4)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.92597 -.09509 .18717 .73508 28.8 -521.9)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.92699 .091 -.17909 .7359 124.8 -554)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1725 0 0 .74463 -33 -674.5)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.0735 0 0 .74463 -9.3 -386.9)"/>
+      <g fill="#fff133" stroke="#000">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.1042 0 0 .74463 -12.9 -518.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.06903 -.18643 .27645 .72092 -160.7 -455.6)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.0751 .16986 -.25188 .725 189.8 -530.4)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.87203 -.09509 .17626 .73508 45.4 -273.9)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.873 .091 -.16866 .7359 135.8 -306)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1042 0 0 .74463 -12.9 -426.4)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.105 0 0 .74463 -16.1 -865.2)"/>
+      <g fill="#fff133" stroke="#000">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.0799 0 0 .70238 -6.2 -1031.3)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.0455 -.17585 .27037 .68 -150.8 -971.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.05143 .16022 -.24634 .68386 192.1 -1042.3)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.85284 -.0897 .17238 .69338 50.8 -800.3)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.85378 .08583 -.16494 .69414 139.3 -830.7)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.0799 0 0 .70238 -6.2 -944.2)"/>
+      </g>
+      <ellipse cx="234.1" cy="-822.1" fill="#b90000" rx="375.9" ry="120.5" transform="matrix(.96627 0 0 .41385 13 -517.5)"/>
+    </g>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M513.8-790.2l35.4-17.7 35.4 17.7s-73.3 35.5-73.3 159.5c0 88.6 125.2 106.3 125.2 212.6 0 45.6-34.1 88.6-69.6 88.6s-88.6-17.7-141.7-70.9c35.4 17.7 76 37.3 106.3 36 19.6-.3 55-17.7 55-53 0-71-122.8-107-122.8-213.3 0-124 50-159.4 50-159.4z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01859 -.00133 .0085 .02009 379 385.3)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M520.3-790.2l46.6-17.7 10 17.7s-70.6 35.5-70.6 159.5c0 88.6 125.9 106.3 125.9 212.6 0 45.6-26.7 87.4-65.3 88.6-73.4 2.3-90.4-24-141.7-70.9 43.1 32.3 105 46.8 129 34.2 29.4-15.4 35-36 35-53.8 0-70.9-120.9-104.4-120.9-210.7 0-124 52-159.4 52-159.4z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M513.3-789.7c7-2.4 36-18.2 71.3 17.3 17.8 17.7 17.8 53.1 17.8 70.8l53.1-53.1s-29-86.9-107.6-53.6a334.8 334.8 0 00-34.5 18.6z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1pt" d="M523.8-796c8.8-2.8 36.7-6.3 64.6 18.6 17.7 17.7 19 42.9 19 60.6l40.6-38c3.4-3.1-24.8-81.2-99.2-54a154 154 0 00-25 12.9z" transform="matrix(.21542 0 0 .17871 313.9 342.3)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.17534 -.01853 .05985 .15541 398.7 344.8)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1pt" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.15954 .02165 -.00278 -.11904 505.5 127.7)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01859 -.00133 .0085 .02009 382 385)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0313 -.00133 .01432 .02009 377.4 387.7)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0313 -.00133 .01432 .02009 380.4 387.5)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0388 -.00133 .01775 .02009 376.2 390.5)"/>
+    <path fill="#b00" stroke="#000" stroke-width="20" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0388 -.00133 .01775 .02009 379.9 390.3)"/>
+    <path fill="#ffe000" d="M0 0h256v512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vc.svg
new file mode 100644
index 0000000..ee72f78
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vc.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vc" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#f4f100" d="M0 0h510.4v512H0z"/>
+    <path fill="#199a00" d="M385.6 0H512v512H385.6z"/>
+    <path fill="#0058aa" d="M0 0h126.4v512H0z"/>
+  </g>
+  <path fill="#199a00" fill-rule="evenodd" d="M191.2 138.6l-49.5 76.2 47.8 79.3 46.7-78.6-45-76.9zm129.4 0L271 214.8l47.7 79.3 46.8-78.6-45-76.9zm-65.4 103.9l-49.4 76.1 47.7 79.4 46.7-78.7-45-76.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ve.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ve.svg
new file mode 100644
index 0000000..205fe84
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ve.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ve" viewBox="0 0 512 512">
+  <defs>
+    <g id="d" transform="translate(0 -36)">
+      <g id="c">
+        <g id="b">
+          <path id="a" fill="#fff" d="M0-5L-1.5-.2l2.8.9z"/>
+          <use width="180" height="120" transform="scale(-1 1)" xlink:href="#a"/>
+        </g>
+        <use width="180" height="120" transform="rotate(72)" xlink:href="#b"/>
+      </g>
+      <use width="180" height="120" transform="rotate(-72)" xlink:href="#b"/>
+      <use width="180" height="120" transform="rotate(144)" xlink:href="#c"/>
+    </g>
+  </defs>
+  <path fill="#cf142b" d="M0 0h512v512H0z"/>
+  <path fill="#00247d" d="M0 0h512v341.3H0z"/>
+  <path fill="#fc0" d="M0 0h512v170.7H0z"/>
+  <g id="f" transform="translate(256.3 358.4) scale(4.265)">
+    <g id="e">
+      <use width="180" height="120" transform="rotate(10)" xlink:href="#d"/>
+      <use width="180" height="120" transform="rotate(30)" xlink:href="#d"/>
+    </g>
+    <use width="180" height="120" transform="rotate(40)" xlink:href="#e"/>
+  </g>
+  <use width="180" height="120" transform="rotate(-80 256.3 358.4)" xlink:href="#f"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vg.svg
new file mode 100644
index 0000000..9572de3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vg.svg
@@ -0,0 +1,128 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-vg" viewBox="0 0 512 512">
+  <defs>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="red"/>
+      <stop offset="1" stop-color="#ff0"/>
+    </linearGradient>
+    <linearGradient id="c" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.7 -.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="d" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.7 -.5)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="e" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -4.5 -.3)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="f" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.7 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="g" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.7 .2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="h" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.7 .4)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -4.5 .4)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -4.5 .2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="k" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -4.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="m" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -4.5 -.5)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="n" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.65977 0 0 1.4919 -3.8 -.3)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="l" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.85004 0 0 1.9222 723.3 109.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <clipPath id="b">
+      <path fill-opacity=".7" d="M0 0h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#b)">
+    <path fill="#006" d="M0 0h1024v512H0z"/>
+    <path fill="#006" fill-rule="evenodd" d="M0 0h512v256H0z"/>
+    <g stroke-width="1pt">
+      <path fill="#fff" d="M0 0v28.6L454.8 256H512v-28.6L57.2 0H0zm512 0v28.6L57.2 256H0v-28.6L454.8 0H512z"/>
+      <path fill="#fff" d="M213.3 0v256h85.4V0h-85.4zM0 85.3v85.4h512V85.3H0z"/>
+      <path fill="#c00" d="M0 102.4v51.2h512v-51.2H0zM230.4 0v256h51.2V0h-51.2zM0 256l170.7-85.3h38.1L38.2 256H0zM0 0l170.7 85.3h-38.2L0 19.1V0zm303.2 85.3L473.8 0H512L341.3 85.3h-38.1zM512 256l-170.7-85.3h38.2L512 236.9V256z"/>
+    </g>
+    <path fill="#fff" fill-rule="evenodd" d="M256.4 193.6l213.7-.8-.4 190.3s7.5 29-89.6 73c34.9-3.6 73-40.9 73-40.9s15.4-19.8 23-8.7c7.5 11.1 14.6 16.6 20.1 21 5.6 4.4 10 16.3 1.6 25s-21.4 9.9-25-.8c-5.5 2.8-39.6 44-109.4 46-71-1.2-109.8-46.4-109.8-46.4s-9.5 15-23 3.2c-13-15.5-3.1-25.4-3.1-25.4s11-6.3 14.2-10.7c5.2-6 6.8-13.9 15.5-13.9 10.3.8 14.3 9.1 14.3 9.1s35.6 37.7 74.1 42.5c-86.8-41.7-90-67.4-89.6-73.8l.4-188.7z"/>
+    <path fill="#006129" fill-rule="evenodd" stroke="#000" stroke-width="1.7" d="M261.5 198.8l203.8-1.2v183.1c.4 23.8-39.6 48-102.3 79-64.6-33.4-101.9-53.6-102.3-79.4l.9-181.5z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M286 400.6l12-17.7 12.2 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M300.5 394a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M288.3 413.6h18.6s.4-2.3-1.9-3.8c9.8-1.3 7.2-10 15.4-10.4 1.6.2-4.3 3.6-4.3 3.6s-4.9 3.5-2.6 5.3c1.7 1.4 2.5-.9 2.8-2.6.2-1.7 7.9-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7H303c-.5-1-2.6-4.4-4.8-4.4-2.6.1-4.4 4.4-4.4 4.4h-17.4s-.6 4.4 8.2 5.3a10.5 10.5 0 005.3 4c-1.2 1-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M289.6 409.8h15.6m-22.7-9.1s1.3 7.2 7 9"/>
+    <path fill="url(#c)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(196.1 180.9) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M300.3 383.4a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M285.4 364.2l12-17.6 12 17.6"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M299.8 357.6a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M287.6 377.3h18.7s.3-2.4-2-3.9c9.8-1.3 7.2-10 15.4-10.4 1.6.2-4.2 3.7-4.2 3.7s-5 3.4-2.7 5.2c1.8 1.4 2.5-.9 2.8-2.6.2-1.7 8-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.6c-.5-.9-2.6-4.3-4.8-4.3-2.6 0-4.4 4.3-4.4 4.3h-17.3s-.6 4.5 8.2 5.3a10.5 10.5 0 005.2 4c-1.2 1-1.5 2.1-1.5 3.7z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M289 373.5h15.5m-22.6-9.2s1.2 7.3 7 9"/>
+    <path fill="url(#d)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(195.4 144.5) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M299.6 347a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M413.1 331.2l12-17.7 12.2 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.6 324.6a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M415.4 344.2H434s.3-2.3-1.9-3.8c9.8-1.4 7.2-10 15.4-10.5 1.6.3-4.3 3.7-4.3 3.7s-4.9 3.5-2.6 5.3c1.7 1.4 2.5-1 2.8-2.6.2-1.7 7.9-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7H430c-.5-1-2.6-4.4-4.8-4.4-2.6.1-4.4 4.4-4.4 4.4h-17.4s-.6 4.4 8.2 5.3a10.5 10.5 0 005.3 4c-1.2 1-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M416.8 340.4h15.5m-22.7-9.1s1.3 7.2 7 9"/>
+    <path fill="url(#e)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(323.2 111.5) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.4 314a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M288.3 295.8l12-17.6 12.2 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M302.8 289.2a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M290.6 308.9h18.6s.4-2.4-1.9-3.9c9.8-1.3 7.2-10 15.4-10.4 1.6.2-4.3 3.7-4.3 3.7s-4.9 3.4-2.6 5.2c1.7 1.4 2.5-.8 2.8-2.6.2-1.7 7.9-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.6c-.5-.9-2.6-4.3-4.8-4.3-2.6 0-4.4 4.3-4.4 4.3h-17.4s-.6 4.5 8.2 5.3a10.5 10.5 0 005.3 4c-1.2 1-1.5 2.1-1.5 3.7z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M292 305h15.5m-22.7-9s1.3 7.2 7 9"/>
+    <path fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(198.4 76.1) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M302.6 278.6a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M288.6 261l12-17.6 12.1 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M303 254.5a2.4 2.4 0 11-4.7 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M290.9 274.1h18.6s.3-2.3-2-3.8c9.8-1.3 7.3-10 15.5-10.4 1.6.2-4.3 3.6-4.3 3.6s-5 3.5-2.7 5.3c1.8 1.4 2.6-.9 2.8-2.6.3-1.7 8-2.8 6.9-7.7-1.9-4-12.6 2.7-12.6 2.7h-7.7c-.4-1-2.6-4.3-4.7-4.4-2.6.1-4.4 4.4-4.4 4.4h-17.4s-.6 4.4 8.2 5.3a10.5 10.5 0 005.2 4c-1.1 1-1.4 2-1.4 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M292.2 270.4l15.6-.1m-22.7-9.1s1.2 7.3 7 9"/>
+    <path fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(198.7 41.4) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M302.9 243.9a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M289.3 225.8l12-17.6 12 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M303.7 219.2a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M291.5 238.9h18.7s.3-2.4-2-3.9c9.8-1.3 7.3-10 15.4-10.4 1.6.3-4.2 3.7-4.2 3.7s-5 3.4-2.7 5.2c1.8 1.4 2.6-.8 2.8-2.5.2-1.7 8-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.6c-.5-1-2.6-4.4-4.8-4.4-2.6 0-4.4 4.4-4.4 4.4h-17.3s-.6 4.4 8.2 5.3a10.5 10.5 0 005.2 4c-1.1.9-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M292.9 235.1h15.5m-22.6-9.2s1.2 7.3 7 9"/>
+    <path fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(199.4 6.1) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M303.5 208.6a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M414.1 226.4l12-17.7 12.1 17.8"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M428.5 219.8a2.4 2.4 0 11-4.7 0 2.4 2.4 0 014.7 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M416.4 239.5H435s.3-2.4-2-3.9c9.8-1.3 7.3-10 15.5-10.4 1.6.2-4.3 3.6-4.3 3.6s-5 3.5-2.7 5.3c1.8 1.4 2.6-.9 2.8-2.6.3-1.7 8-2.8 6.9-7.7-1.9-4-12.6 2.7-12.6 2.7h-7.7c-.5-.9-2.6-4.3-4.8-4.3-2.6 0-4.4 4.3-4.4 4.3h-17.3s-.6 4.5 8.2 5.3a10.5 10.5 0 005.2 4c-1.1 1-1.4 2.1-1.4 3.7z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M417.7 235.7h15.5m-22.6-9.2s1.2 7.3 7 9"/>
+    <path fill="url(#i)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(324.2 6.7) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M428.3 209.2a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M413 261l12-17.7 12 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.4 254.4a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M415.2 274l18.7.1s.3-2.4-2-3.9c9.8-1.3 7.2-10 15.4-10.4 1.6.2-4.3 3.6-4.3 3.6s-4.9 3.5-2.6 5.3c1.8 1.4 2.5-.9 2.8-2.6.2-1.7 8-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.6c-.5-.9-2.6-4.3-4.8-4.3-2.6 0-4.4 4.3-4.4 4.3h-17.4s-.5 4.5 8.3 5.3a10.5 10.5 0 005.2 4c-1.2 1-1.5 2.1-1.5 3.7z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M416.6 270.3H432m-22.7-9.2s1.3 7.3 7 9"/>
+    <path fill="url(#j)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(323 41.3) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.2 243.8a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M411.4 296.4l12-17.7 12.1 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M425.9 289.8a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M413.7 309.4h18.6s.3-2.3-2-3.8c9.8-1.3 7.3-10 15.5-10.5 1.6.3-4.3 3.7-4.3 3.7s-5 3.5-2.7 5.3c1.8 1.4 2.6-.9 2.8-2.6.3-1.7 8-2.8 6.9-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.7c-.4-1-2.6-4.4-4.7-4.4-2.6.1-4.4 4.4-4.4 4.4h-17.4s-.6 4.4 8.2 5.3a10.5 10.5 0 005.3 4c-1.2 1-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M415 305.6h15.6m-22.7-9.1s1.2 7.2 7 9"/>
+    <path fill="url(#k)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(321.5 76.7) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M425.7 279.2a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.3" d="M413 401l12-17.7 12 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.4 394.3a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M415.2 414H434s.2-2.4-2-3.8c9.8-1.4 7.2-10 15.4-10.5 1.6.3-4.3 3.7-4.3 3.7s-4.9 3.5-2.6 5.2c1.7 1.4 2.5-.8 2.8-2.5.2-1.7 7.9-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7l-7.6-.1c-.5-.9-2.6-4.3-4.8-4.3-2.6 0-4.4 4.4-4.4 4.4h-17.4s-.5 4.4 8.3 5.3a10.5 10.5 0 005.2 4c-1.2.9-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M416.6 410.2H432m-22.7-9.2s1.3 7.3 7 9"/>
+    <path fill="url(#l)" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M814.5 330.3c.6-2.8 1.6-3.3 2.8-6.8.2-3.5-2.8-3-2-5.3 1.6-2.4.8-4.7-2-6.5.5 3.2-3.8 6.1-3.8 8.7 0 2.6 2.2 2 2 6 .1 2.2-.6 1.7-.8 3.9h3.8z" transform="translate(-406 70.7)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.2 383.7a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M412.8 366l12-17.7 12 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427.2 359.4a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M415 379h18.7s.3-2.4-2-3.8c9.8-1.4 7.2-10 15.4-10.5 1.6.3-4.2 3.7-4.2 3.7s-5 3.5-2.7 5.2c1.8 1.4 2.5-.8 2.8-2.5.2-1.7 8-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7h-7.6c-.5-1-2.6-4.4-4.8-4.4-2.6.1-4.4 4.4-4.4 4.4h-17.3s-.6 4.4 8.2 5.3a10.5 10.5 0 005.2 4c-1.2.9-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M416.4 375.2h15.5m-22.6-9.1s1.2 7.2 7 9"/>
+    <path fill="url(#m)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(322.9 146.3) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427 348.7a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M311.1 333.4l12-17.6 12.2 17.7"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M325.6 326.8a2.4 2.4 0 11-4.8 0 2.4 2.4 0 014.8 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M313.4 346.5H332s.3-2.4-1.9-3.8c9.8-1.4 7.2-10 15.4-10.5 1.6.3-4.3 3.7-4.3 3.7s-4.9 3.5-2.6 5.2c1.7 1.4 2.5-.8 2.8-2.5.2-1.7 7.9-2.8 6.8-7.7-1.8-4-12.6 2.7-12.6 2.7H328c-.5-1-2.6-4.4-4.8-4.4-2.6 0-4.4 4.4-4.4 4.4h-17.4s-.6 4.4 8.2 5.3a10.5 10.5 0 005.3 4c-1.2.9-1.5 2-1.5 3.6z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M314.8 342.7h15.5m-22.7-9.2s1.3 7.3 7 9"/>
+    <path fill="url(#n)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(221.2 113.7) scale(1.2884)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M325.4 316.2a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0z"/>
+    <g stroke="#000">
+      <path fill="#f7c600" fill-rule="evenodd" stroke-width=".8" d="M375.5 417.4s4.9 11.2 10.4 4.3 3.5-9.8 3.5-9.8L377 405l-3.6 7.7 2.1 4.6z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M386.2 416s.8 0 1.5-1.2-1.5-1.7-2.5-3l-1 2 2 2.1zm-28.1-3l-11 5.9s-5.4 1-5.8 0c-.4-1 .1-2 3-2.2 2.8-.1 10.5-7.1 10.5-7.1l3.3 3.3zm.1-194.6l.4 4c.1 1.3-2.2 4.1-2.3 4s-1.2.1-1 1 1.7 1 1.7 1-.7 2.9 0 3c.7.1-1.8 3.7 0 4.6 1.7 1 4.7 2.2 6 1.9 1.4-.3 0 5.3 0 5.3l-3.7 8 20.8-2-4.3-7s-2-1.3-1.5-5.3c.5-3.9-.3-21.6-.3-21.6l-14.9-2-.9 5.1zm-3.8 30.9s-6.8 3-6.5 11.4c-1.7 8.2-2.7 16.3-2.7 16.3s-8 9-10.4 12.3c-2.4 3.2-6 9.8-7.4 11.6s-6.6 7.6-6.5 9.7c.1 2.2-1.2 11.8 4 12.9 1.4.5 5.7-11.1 5.7-11.1s.3-5-1.2-6 3.3-4.2 3.3-4.2l11-8.2c2-1.6 7.6-7.8 7.6-7.8l3.1-37z"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M362.1 242.9s1.8 4.7 5.7 4c4-.9 8.5-4.5 8.5-4.5s3.7-.2 4.2.4c.5.5 9.9 9.6 9.6 12.4-.3 2.8-4.3 2-5.8 4s-4 6.5-3.3 10 2.7 8.2 2.5 10-1.8 2.2-1.8 3.2 1.2 2.5 1.2 4.3-1.6 4.3-1.3 6c.3 1.8.4 7 .4 7l-.4 23.8s1.3.8 1.5 2.1c.1 1.4 9.2 40.7 9.2 40.7s-.4 1.2-1.4 1 3.7 6.2 3.8 8 4.7 15.5 4.6 17.4c-.1 1.9-.8 6-1.2 6.2-.4.1 3 8.6 2.4 10-.5 1.3-6 1.2-6 1.2l-1.6-.3s.2 1.8-1 2-9-.5-9-.5-2.3 3.5-3.6 3.4c-1.4-.1-3.1-2.6-3.5-2.2-.4.4 1.2 2.7.8 3.4-.4.7-7.3 2.2-8.7-1-1.3-3.3.8-2.5.4-3.2-.4-.7-3.5-2.4-4.4-1.9s2.4 1.4 2.3 2.7c-.2 1.4-3 3.4-4 3.4s-3.7-5-7.5-4.4-6.2 1.4-6.2 1.4-4.5 2-6.4 1.5c-1.9-.4-2.7-1.9-2.7-2.7s1.4-4.3 1.2-5.4-1.2-2.1-1.2-3.8a31 31 0 013.1-7.1l-.1-24.9s-2.9 0-3-1.8 4.3-39.3 5-41.7c.7-2.5 2.4-11.1 2.4-11.1s-2 1-2.1 0 6-22.4 6-22.4 1.1-10.7 1.1-13.6-.5-6.7-.5-6.7-5.6-2.4-5.7-6c-.5-5.7 5.3-8.9 6-10.8l2.7-7.5s3-5.2 7.8-6z"/>
+      <path fill="#f7c600" fill-rule="evenodd" stroke-width=".8" d="M360.1 414.6s-13.1 6.9-15 7.4c-2 .5-3.1-2.3-1.2-2.8 1.9-.6 4.8-.8 4.8-.8s-4.4-3.6-4.3-3.7l6.2-2.3c.2 0 2 3.5 3.1 3.3s4.8-3 4.8-3l1.6 1.9z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M378.6 418.3c1.2 1.6 1.7 4.4 4.5 2.8 2.9-1.6-1.4-4.6-1.4-4.6l-3.1 1.8z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M383.8 418s1.3 1.2 2.5 0-2.4-3.9-2.4-3.9l-1.8 2 1.6 2z"/>
+      <path fill="none" stroke-width=".8" d="M379.7 248.2s-12 7.7-11.8 10.4m14.5-9l-2.8 2.9m6.4.3s-6 4.8-5 8m-23-13.3s-1.8 3.6-1.4 4.9c.4 1.2 3.3 5.8 3.8 8.6.4 2.8 0 4.9 0 4.9m-5.6-11.6s.6 4.3 1.4 5c.8.9 3 4.5 3.2 6m-5.7 7s3.5 1.7 6.8-5m5.3-4.8c-.2 0-2.6 6.6 1.7 9s7.6 2.2 9.5 1.5c1.9-.6 3.9-1.9 3.9-1.9m-17-.5s.2 9 13.4 17.7m-12.9-9.3s-.1 7.8 5 11.4m-7.7-20.6s-4 11.6-7 12.8m5.8-4.3s-.1 8.4-1.2 11.4m-1.1 2s2.7 3.4 5.7 3.1c3-.3 4.2-3.8 6.2-3.2 2 .5 4 2.1 8.6 1.7m-6.7 3.5s0 7 1.2 7.6.7 7 .7 7m-18.4-17.8s-.1 6.5-1 8.8c-.8 2.3-2.4 6.2-2.1 9.6m-5.1 3.8c.6-.3 3-2.3 3-2.3m1.1 1.5s-5.8 24.8-4.2 39.7m5.6-38.5s-3 18.6-1.6 22.1m.1-22.7l11.4.8m1.6-1.4s3 1.6 7.4 1.3M363 324s-.5 32-1.3 39m18-31.7s3.5 28 5.5 30.6m-12.3-27s2.2 24.7 3.4 26.8m-34 8.7s4.1-1.4 7.9-5.4c4.3 5.8 11 .2 11 .2s10.2 7 14.8-.8c7 4.6 10.6-.6 10.6-.6s2.5 3.9 4.4 3.5m-11.2 2.7s5.3 24.7 13 31.7m-40.2-34.3s.7 20.7 2 35.3m-3-12s-.6 13.6-1.4 14.5m-6.5 1.4s1.5 5.8 9 .4c7.4-5.4 7.5 2 7.8 2.9.2.8 1.5 6.6 4.3 1.7m6-8s-1.3 12 9.4 3.3c10.7-8.8 12.4-.2 12.7 2.5"/>
+      <path fill="#9c5100" fill-rule="evenodd" stroke-width=".8" d="M357.8 217.6s3 .4 4.6-.5c1.6-1 3.5-1.4 4.9.5s2.3 1.8 2.3 1.8-2 5 0 5.5c2 .6 3 .6 3 1.2.2.7-1.7 2.2-1.2 2.9.6.6 1.5 1.5 1.7 2 .1.5-1.3 2.8-.8 3.4.4.5 1.6 2.7 2.4 2.7s.3 3.4 2.7 2.6 2.3-3 2.3-3 2.6-.4 3.2-2.7c.7-2.3 2.3-2.9 2.3-2.9s3.3-1.7-1-4.4c0-19-12.5-17-12.5-17s-1.5-3.3-4-2.9c-2.3.4-2.5 3.3-4.2 3-1.8-.3-2.2-1.5-2.3-1.4-.2.2-1.7 2.9-1.7 3.5 0 .7-4.7-.9-4.3 2.6s2.7 3.4 2.6 3.1z"/>
+      <path fill="none" stroke-width=".8" d="M370.8 213s-1 6 5.4 5.4c-.8 3.3 1.6 4.4 1.6 4.4m4.7 3.6c.2 0 2.9 1.8-.1 4m-9 .7s1.3 1.7 2.8 1.3c1.5-.4 3.9 1.4 3.9 1.4s2 .7 2.3.3m-17.3 2.2s4.6 1.7 7.6-5.6m-16.1-2.1l2.7.1"/>
+      <path fill="none" stroke-linejoin="round" stroke-width=".8" d="M357 231.3h2.4l-2.1 1"/>
+      <path fill="none" stroke-linejoin="round" stroke-width="1.4" d="M360.4 223.7c.4 0 1.9-.5 2.1-.1s-1.6.6-2.1.1z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M389.6 255.8s4.4 13.4 5 16.8c.5 3.4 2.3 16.9 1.6 18.8-.7 1.9-7.6 11-8.4 13.2-.8 2.3-5.7 11.1-5.7 11.1s-1.2 8.7-1.7 9c-.6.5 1.4 2.6 1.2 3.3-.3.8-4 4.6-5.6 4.2-1.6-.4-4.2-2.3-4.3-4s.1-7.6 1.4-9.1 7.5-16.5 8-17.5c.3-.9 5.7-12.7 5.9-14.7.1-2-1.7-6.7-3.6-8.4-4.3-12.6-2.6-20.1 6.2-22.7z"/>
+      <path fill="none" stroke-width=".8" d="M326.6 313.8l.2 6m-5.8-6.4s3.8 6.3 3.5 9.7"/>
+      <path fill="none" stroke-linejoin="round" stroke-width=".8" d="M372 326.6s2.8-.3 2.7 4.5c1.8-5.9 5.5-6 5.5-6"/>
+    </g>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width="1.7" d="M362.2 462a137 137 0 0093.6-43.2c-.4-.4 7.5-11.5 13.9-10 6.3 1.7 15.4 20.3 26.5 24.3 5.6 8.7-1.6 16.6-4 18.2-2.3 1.6-13 6-14.6-.4-1.6-6.3-4.8-5.2-4.8-5.2s-50.7 49.6-109.4 47.6c-60.6.4-110.6-47.6-110.6-47.6l-4.3 4.8s-4.8 5.2-7.2 4.8c-2.3-.4-12.7-7.2-13.4-14-.8-6.7 6.3-11 6.3-11s17.4-13.5 19.4-20.6c4-4 11.5 2.7 11.5 2.7s46 52.8 97.1 49.6z"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M233 431.3s4.7-1.2 6.5.7a719 719 0 0013.5 13.6"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M243.8 436.8l-4.8 3.6s12 2.3 9.3 10.1M492 431s-2.4-1.2-6 1.5c-3.8 2.8-13.1 13.2-13.1 13.2"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M481.4 436.5l5 4s-10.6.7-8.3 10.8"/>
+    <path d="M293.4 444l-.3.4a3.5 3.5 0 00-2.5-.2c-.6.2-2 .8-3.8 1.9l-15.7 9.2-.4-.3 4-18.4.6-4c0-.5-.4-1-1-1.6l.3-.5 8.5 6-.3.5-.3-.2c-.8-.5-1.4-.8-1.8-.8a.8.8 0 00-.7.4 2.3 2.3 0 00-.3.6l-.5 2.2-2.5 11.5 9-5.3 2.2-1.4.7-.7.3-.9c0-.3 0-.6-.3-.9a5 5 0 00-1.3-1.2l.3-.5 5.8 4.1m5.7 27.3l-.3.5-10-5.4.3-.5.7.3a3 3 0 001.5.5c.3 0 .6-.2.9-.4.2-.2.6-.7 1.1-1.7l6.8-12.5a7 7 0 00.9-2c0-.2 0-.6-.3-1-.2-.3-.6-.6-1.1-.9l-.6-.3.2-.5 10 5.4-.3.5-.6-.3a3 3 0 00-1.5-.5c-.3 0-.6.2-1 .4-.2.2-.6.7-1 1.7l-7 12.5a7.1 7.1 0 00-.8 2l.3.9c.2.4.6.7 1.1 1l.7.3m36.3-8.5l-2.5 7.2-.6-.2a9.7 9.7 0 00-1.4-5.6 7.6 7.6 0 00-3.9-3.1 6 6 0 00-4.3 0 7.3 7.3 0 00-3.4 2.8 18.9 18.9 0 00-2.3 4.5c-.7 2-1.1 3.7-1.2 5.4s.3 3 1.1 4a6.8 6.8 0 003.3 2.4 8.3 8.3 0 001.6.4 12 12 0 001.7 0l1.6-4.2c.2-.8.4-1.3.3-1.6a1.6 1.6 0 00-.4-.9 2.7 2.7 0 00-1.2-.7l-.5-.2.2-.6 10 3.6-.3.5a4.5 4.5 0 00-1.7-.2c-.3 0-.6.2-1 .5l-.5 1.4-1.6 4.2a22.2 22.2 0 01-9-1.3 13.7 13.7 0 01-4.6-2.5 13.2 13.2 0 01-2.7-3.3 10.6 10.6 0 01-1.2-3.7 11 11 0 01.6-5c1-3 3-5.3 6-6.6a11.8 11.8 0 019.3-.3 9 9 0 012.6 1.2c.5.2 1 .7 2 1.5a9.8 9.8 0 001.5 1.1h.9a3 3 0 001-1l.6.3m15.3 24.6v.5l-11.3-1.7.1-.5h.7a3 3 0 001.6 0c.3-.1.5-.4.7-.7.2-.2.3-.9.5-2l2.2-14c.1-1.2.2-1.9 0-2.2 0-.3-.2-.5-.5-.8a2.8 2.8 0 00-1.4-.5l-.7-.1v-.6l11.3 1.7v.6l-.8-.1a3 3 0 00-1.5 0l-.8.7c-.2.3-.3 1-.5 2l-2.1 14.1a7.2 7.2 0 00-.2 2.1c.1.3.3.6.6.8.4.3.8.5 1.4.5l.7.2m29.2-7.1l-.5 7.6-19.2 1v-.6h.7a3 3 0 001.5-.4c.3-.2.5-.5.6-.8v-2l-.7-14.3a7.1 7.1 0 00-.3-2c0-.3-.3-.6-.7-.8-.4-.2-.9-.2-1.5-.2h-.7v-.6l11.5-.5v.6h-.9a3 3 0 00-1.5.4l-.6.8a7 7 0 000 2l.6 13.8c0 1.2.2 1.9.3 2.2.2.3.4.5.8.6h3.8a6.1 6.1 0 002.8-.8 5.3 5.3 0 001.9-2c.5-1 1-2.2 1.4-4h.7m21-3.7l-7.3 2.2-.3 2.3a4.7 4.7 0 000 1.8c.2.6.6 1 1.2 1 .3.2 1 0 2-.1l.3.5-7 2-.1-.5a3.3 3.3 0 001.6-1.4c.3-.7.6-2 .8-3.7l2.5-18.8.3-.1 12.6 14.8c1.2 1.4 2 2.2 2.6 2.5.5.2 1 .3 1.7.1l.1.6-10 3-.2-.6.4-.1c.8-.2 1.4-.5 1.6-.8.2-.3.2-.5.1-.8a2 2 0 00-.2-.6l-.8-1-1.9-2.3m-.9-1l-5.2-6.2-1 8.1 6.2-1.8m27.8-28.3l2.7 5.2-.5.2a9.1 9.1 0 00-2.3-2 4.3 4.3 0 00-2.2-.4c-.5 0-1.1.2-2 .7l-1.5.8 8 14.7 1.1 1.8c.3.2.6.3 1 .3a3 3 0 001.4-.4l.7-.4.2.5-10 5.4-.2-.5.6-.3a3 3 0 001.2-1l.2-1a6.6 6.6 0 00-.8-1.9l-8-14.7-1.3.7c-1.3.7-2.1 1.5-2.4 2.3-.4 1.2-.3 2.6.2 4.1l-.5.3-2.8-5.2 17.2-9.2m13-7.7l5.3 7 .3-.2c1.1-.9 1.7-1.8 1.6-2.9s-.4-2.3-1.3-3.7l.5-.4 6.8 9-.5.4a8.4 8.4 0 00-2.4-1.9c-.8-.4-1.5-.5-2.1-.4-.6.1-1.3.5-2.2 1.1l3.7 4.9a10 10 0 001.4 1.6c.3.2.6.2.9.2.3 0 .7-.2 1.2-.6l1-.8a7.8 7.8 0 003-4 7.8 7.8 0 00-.4-5l.5-.4 3.4 6.1-15 11.3-.4-.5.6-.4a3 3 0 001-1.2c.2-.3.2-.6 0-1a6.6 6.6 0 00-1-1.7l-8.6-11.4-1.2-1.4a1.5 1.5 0 00-1-.3c-.4 0-1 .2-1.5.6l-.6.4-.4-.4 14.5-11 3.9 5.2-.5.3a7.7 7.7 0 00-3-1.9 4.8 4.8 0 00-2.9.2l-2.8 1.9-1.8 1.3"/>
+    <path fill="none" d="M258.4 445.6c70.9 57.5 140.4 58.5 208.4 0"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vi.svg
new file mode 100644
index 0000000..2740f24
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vi.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-vi" viewBox="0 0 512 512">
+  <path fill="#fff" d="M0 0h512v512H0z"/>
+  <path fill="#369443" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M163.5 316s-.4-2.9 4.9-5c5.3-2 5.7-9.7 4.7-14.8 0 0-2.8 4.9-6.2 6.5 0 0-5.5 2.9-5.8 8.4 0 0 0 2-.4 3.5-.2.9-2.7-6.8 2-12.6 4.7-5.9 6-10.7 2.3-20 0 0-.4 5.6-4.1 8.9-3.8 3.2-4.2 3.5-4.2 11.2 0 0 0 2.7-1.3 3.6 0 0-3-4.3-3.7-7-.8-2.9-1.1-4 2.2-7.3 0 0 10.6-6.9 3-22 0 0-.3 5.3-4 8.3-3.6 3-3.3 5.1-3.5 10.4-.2 5.3-.6 5-1 5.7 0 0-6.7-12.4-1.5-19s8.1-8 2.4-20.3c0 0 .2 6.3-4.4 9.4s-3.5 10.5-3.5 10.5.3 2.7-.7 4.7c0 0-6.5-12.7-.3-19.5 5.3-5.8 5.7-9.9 2.8-18.1 0 0-.3 3.8-3.2 5.9-3 2-5.2 4-4.7 12 0 0 .2 5.5-.5 7 0 0-2.7-5-3.5-8.3-.7-3.3-1-5.2 1-8.5s10-12.8.4-26.4c0 0-.3 4.4-2.7 8.4-2.4 4-1.3 8.7-.8 12.3.6 3.6-1.2 7.1-1.2 7.1s-4.1-7.6-3.3-16.3c1-8.7-2.6-16-10.7-21 0 0-5.8 13.5 2.2 20.4 0 0 6.8 6.8 8.5 15 0 0-5.2-.6-9.8-9.7-4.7-9-14.4-7.6-15-7.7 0 0 1.5 14 16.4 18 0 0 9.6 1.7 11.3 8.7 0 0 1.6 4.8 2.3 7.4 0 0-3-1.2-5.8-5.3-2.8-4.2-2.4-4.7-11.8-5.6 0 0-3.8-.4-5.8-3.1 0 0 4 14.9 14.1 14.8 0 0 9.3-1 14.5 11.2l-2.4-1.6c-1.3-1-4.8-2.7-11.6-1.8s-8.7-.4-10.4-1c0 0 6.9 12.7 16.6 9 9.7-3.8 14.4 9.8 14.5 10.1 0 0-1.3-1-3-2.7-1.7-1.7-5.3-3.7-12-1.6 0 0-4.9 1.9-9.8.4 0 0 4.7 9.1 15.8 7.6 11-1.6 13.9 8.2 13.9 8.2l-2.5-1.7c-1-.8-4.8-3-12.8-.6s-10.9-.4-10.9-.4 4.5 8.1 13 9c0 0 4.7 0 6.8-.7a9 9 0 0111 3.3s-1 .2-2.6-.5c0 0-5.7-2-10 1.6 0 0-3.8 4-9.3 3.2 0 0 7 6.8 18.3 1 0 0 3.8-2.7 6.5-.6 2.8 2.1 9.3-2 9.3-2z"/>
+  <g fill="#f4c53d" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2">
+    <path d="M225.8 147s-1.3-11.7 8-12.8c9.6-1.1 14.4.9 14.4.9l4.3 8.5-1.5 5.8-6 2.7s1-8.8-7-9c-2 0-3.3.8-6.5.3-3.3-.6-5 3-5.7 3.5z"/>
+    <path d="M291 175.7c-1.4 1.8-6.9 2.4-6.9 2.4s5.7 4.3 8.1 10.6c2.5 6.2-65.8 0-65.8 0s3-2.1 5-6c0 0-3 1-6.1-2 0 0 2.3.8 5.2-3.7 0 0 4.4-5.6 7.5-7.1 0 0-1.5.9-4.9-1 0 0 6-.8 8-10.9 0 0 .4-2.2 2.7-5.5 2.2-3.2 1.7.7 5.9-4.3 0 0 1.9-3.6.2-5.7s-3.4-1.4-6.9-3.5-5-3.2-3.8-6.4c1.2-3.2 4.2-2.7 4.7-2.7.4 0 .7-2.8 4.4-4.7a29 29 0 0115.4-.3c1.5.9 7.6 2.7 11.1 11.6 3.6 9-1 12.4 8.8 26 0 0-4 .8-6.4 0 0 0 5 9 13.8 13.2z"/>
+    <path fill="none" d="M248.7 137.8c-7.8-.4-4.8-7.9-4.8-7.9"/>
+    <path d="M262.4 138.8s-1.4-.7-2.5-2.2c-1.7-2.2-5.4-3.2-7.4-1.2 0 0-2 2.3-3.8 2.4 0 0 2 .6 3.4 1.9 1.4 1.3 2.9 2.2 5 2 2-.4 2.4-1.5 3.3-2.1 1-.7 2-.8 2-.8z"/>
+  </g>
+  <path fill="#369443" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M162.3 333.2s-.2-5 6.2-5.5l18.8 26.2s-.7 1.7-9.2 1.5c0 0-1 0-1.4 1-.7 1.6-14.4-23.2-14.4-23.2z"/>
+  <g id="a" fill="#f4c53d" stroke="#010002" stroke-width="10" transform="translate(2.9 85) scale(.12044)">
+    <path d="M1495 1807.9s-49.9 85.6-110.2 87c0 0-103.7-12.6-133 14.5-20.5 18.9-41.4 34.5-50 82.8-8.4 48.3 16.5 58.7 22.4 60.8 0 0 4.6 34.5 38.7 25.5 0 0 2 36 62.2 18.7 60.3-17.3 85.3-11.8 97-71.8 11.9-60.1 22.8-59.1 33.5-66.3 14.4-9.7 41.5-18.8 61.6-30.4 18-10.4 87.2-45.6 110.8-48.3 23.6-2.8 18.4-82.2 18.4-82.2h-61l-29.5-43.5-61 53.2zm192-429.4s-61 49.7-112.2 0c0 0-20.6 24.8-62 17.6-41.2-7.3-48.1-29-52-41.4 0 0-35.8 20.8-66 4.3-30-16.4-30-41.3-30-41.3s-52.5 10.4-79.4-25.2c-26.9-35.5-10.5-70.7 4-74.9 0 0-56.7 14.9-72.2-33.8a56 56 0 0116.4-62.8s-119.4-.6-168.4-38c0 0-40.7-25.6-16.4-52.5 0 0-107.5-17.2-134.4-60 0 0-11.8-11.8-7.9-32.5 0 0 .7-11.7 12.5-12.4 0 0-122.6-19-158-59.4 0 0-17-18.6-8.5-43.5 0 0 1.8-6.5 4.7-11 0 0-111.6-23.5-166.6-73.2 0 0-31.8-28.3-15.4-66.3 0 0-186.5-51-143.3-133.2 0 0-87.2-28.3-59.6-107 0 0-72.1-36.6-40.7-94.6 30.1-55.5 122.6 9.7 232 40 0 0 296.4 93.2 442.3 118l414.6 617.3 241.9 93.2 24.5 172.6z"/>
+    <path d="M1689.9 923.9s-38.9-29.2-108.2 5.1c0 0-23.3 16.1-41.7-1.5a37.3 37.3 0 014.3-57.5c51.7-38.3 70.8-153.2-7.8-200.9 0 0-114-67.6-532.3-174 0 0-35-9.8-53.8-5.1a52 52 0 00-37.6 37.8S894 581.1 957 611.6c0 0 28.4 13 57.7 21.4 0 0-32.2-7-46 24.8-13 30.4 6 61.5 65 81.5 0 0 16 6.2 38.7 11.7 0 0-50.5 14.5-26.2 55.3 0 0 21.6 42.8 98 50.4 0 0-57 6.2-16.8 60.4 0 0 17.7 29.7 73.4 40.7 0 0-42.2 1.4-21 39.3 21.4 38 71.5 59.4 120.9 62.9 0 0 26.7 1.4 45.4-2.8 0 0-47 23.5-19.4 62.8 0 0 20.3 28 71.1 26.6 0 0-13.1 44 24.1 60.6 29 13 53.1-7.8 53.1-7.8s-9.8 47.1 32.5 63.7c0 0 21.1 10.9 52.6 0 0 0 24 53.9 109.6 16 85.6-37.7 20.2-355.1 20.2-355.1zm5 489.4s-12.5 67.4-112 152.2c0 0-76.8 67.7-74.9 145.7 2 79.5-13.7 88.4-43.9 115.3 0 0 62.3 4.9 92.4-36.6 0 0-1.3 69-10.5 75.3 0 0 19.6 1.2 47.9-29.7 0 0 17-18 32.8-24.9 0 0-18.4 47.7-4 91.9 0 0 4.6-17.3 28.9-24.9 0 0 44-9 61-72.5 0 0 11.1-42 80-79.4 0 0 78-29.4 76-67.8-2-38.5-173.6-244.6-173.6-244.6z"/>
+    <path stroke-miterlimit="10" d="M2056.5 2282.2s-17.9 78.8-80 72.5c0 0-43.9-4.2-40.6-77.4 0 0-64.9 34.6-75.4-51 0 0-59 13.7-58.3-66.3 0 0-55 9.6-48.5-61.5 0 0-59.7 16-59.7-51 0 0-139.6-23.2 151.4-288.6l259.6 154.6-48.5 368.7z"/>
+    <path d="M2085.4 1928.3s-43.3 38.4-74.1-19c0 0-42-2-48.5-33.8 0 0-34.1-3.4-40.7-35.9 0 0-46.5-4.8-45.2-44.1 0 0-84.6-6.6 0-102.4 84.6-95.8 228.1 159 228.1 159l-19.6 76.2zm48.2-23.8c42 0 89.5 262 77.2 419.9-4.5 57.3-35.2 104.1-77.2 104.1s-72.6-46.8-77-104.1c-12.4-157.9 35.1-419.9 77-419.9"/>
+    <ellipse cx="2133.6" cy="1902.5" rx="58" ry="86"/>
+    <path fill="none" stroke-miterlimit="10" d="M1935.9 2277.3s6.6-138.7 126.8-337.6m-202.2 286.6s-18.7-80.1 150.8-317c0 0-19.7-56.5 40.6-92.8M1802.2 2160s-5.3-86.7 160.6-284.5c0 0-14.7-51 45.4-91.8m-254.5 314.8s6.2-87.6 168.4-258.9c0 0-8-52.4 50-84.9m-278 292.8s11.7-100.1 182.8-252c0 0-5.9-39.4 51.1-79.4"/>
+    <path fill="none" d="M372.3 432s134.3 77.8 552.9 155.6M431.9 539S795.6 657.6 965 672.2m-389.9 0s213.4 67 463.3 109.3m-281.2 30.3s241 57.9 356.2 67.5M919 925.6s203.9 42.5 255.5 47.6m-125.7 57.3s148.8 22.6 208 21.4m-23.2 69s60.2-2.8 89.1-7.6m-33.4 104.3s51.2-13.8 81.3-33.1m-5.9 133.2s39.4-15.2 58.4-56.6m37.7 93.6s30.4-27.3 32.4-57.7m81.6 81.5s-11.4-9.9-3.6-52.7m-11.1-62.8s-6-12.2-4-31.6m-211-581.3s68.8 27.6 91.7 65.6c23 38 7.9 74.9 0 96-3.9 10.7-52.4 104.2 4.6 171.9M1346 1057s.4-.3 24.6-8m-169.8-91.4s41 8.2 81.3 8.6m-138-109.8s48.2 4.9 93.5 4.2m-165.2-109.8s69.5 13.8 106.8 14.5M1014.7 633s85.7 24.4 149.4 33.1m141.6 50.4s-61.6 57.3 12.5 110.5c0 0-30.8 48.3 30.8 98.7m-16.4 23.8s-9.2 92.2 103.6 92.2c0 0-21.7 82.1 87.2 79.4 0 0 12.4 65.6 91 52.4M1441.3 1895s-17.9 4-56.6 0m-108.8 48.3s-54.4-8.3-51.8 109.8m84.6-82.9s-49.2-6.2-46 108.4m520.7-384.5s-23.6 4.8-40 23.5c-16.3 18.6-47.8 15.1-47.8 15.1s17-13.8 23-48.3c5.8-34.5 24.9-44.9 24.9-44.9m-56.3-32.6s-23.6 4.8-40 23.4c-16.4 18.7-47.9 15.2-47.9 15.2s17-13.8 23-48.3c5.9-34.5 24.9-44.9 24.9-44.9m23.7 188.5s-20.6 4.3-34.9 20.5c-14.3 16.3-41.8 13.3-41.8 13.3s15-12 20-42.2c5.2-30.1 21.8-39.2 21.8-39.2"/>
+  </g>
+  <use width="100%" height="100%" stroke="#010002" stroke-width="10" transform="matrix(-1 0 0 1 517.8 0)" xlink:href="#a"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M379.7 272.7l-6.9-4-11.4 49.5-4.7-3.4 11.1-47.4-7.8.2 18.5-33.8 1.2 39zm27 13.4l-4.3-7-34.4 40.7-3.7-4.2 34.3-40-7-3.8 31.4-20.7-16.3 35z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M399.8 263.4l-5.7-5.8-30.8 59.2-4.7-2.8 31-59-7.6-2 26.1-27.6-8.4 38zm-44.1 71.5l-2.3 9.4 6.3 6.3-9 37.6-7.9-10.6-11.7 5.5 9-37.7 8.2-2.3 2.1-9.4s2.5-1 5.3 1.2z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M357.8 328.6l-4.5 8.5 4.5 7.8-17.9 34-5-12.5-12.7 2.1 17.9-34h8.5l4.4-8.4s3.2 0 4.8 2.5z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M358.6 331.1l-12.1 15.4 2.8 8.6-24.7 28.9-2.3-13.3-12.8-1 24.7-28.9 8.3 2 12.8-16.2s3.5 1.7 3.3 4.5zm-306.2-36c2.9-1.2 5-2.3 5-5.4 0-.7-.4-2.3-1.3-4.8l-19.3-59.1a50.8 50.8 0 00-2.4-6.4c-.9-1.7-2.6-2.4-4.9-3.3h24.6c-2.7 1.2-5.1 2.2-5 5 0 1.2.2 2.7.8 4.7L64.8 272l14.8-46.3c.6-2 1-3.5 1-4.6-.1-3-2.7-4-5.2-5.1h23.9c-2.2.9-4 1.5-4.9 3.3-.4.8-1.3 2.8-2.4 6.4l-19.3 59a30.2 30.2 0 00-1.3 5s-.9 3.7 5 5.3h-24zm412.2-6v-67a5.1 5.1 0 00-.6-2.6c-.3-.7-2-2.4-4.4-3.4h22.2a9.2 9.2 0 00-4.4 3.3 5.3 5.3 0 00-.6 2.7v67c0 1.1.2 2 .6 2.7.4.6 2 2.2 4.4 3.3h-22.2c2.4-1 4-2.7 4.4-3.3.4-.7.6-1.6.6-2.8z"/>
+  <path fill="#fff" stroke="#010002" stroke-width="1.2" d="M259.9 311.8s59.2-26.3 59.4-87H200.4c.2 60.7 59.5 87 59.5 87z"/>
+  <path fill="#a60032" stroke="#010002" stroke-width="1.2" d="M209.6 224.8v38.8s4.5 9 9.1 14.7v-53.5h-9.1zm18.3 0v64s5.7 5.6 9.1 8.3v-72.3h-9.2zm18.2 0v79s6.6 4.3 9.2 5.7v-84.7H246zm64 0v38.8s-4.5 9-9.1 14.7v-53.5h9.1zm-18.3 0v64s-5.7 5.6-9 8.3v-72.3h9zm-18.2 0v79s-6.6 4.3-9.2 5.7v-84.7h9.2z"/>
+  <path fill="#162667" stroke="#010002" stroke-miterlimit="10" stroke-width="1.2" d="M319.3 180.6s-29.1 15.2-59.4-1.2c-30.4 16.4-59.5 1.2-59.5 1.2v44.2h118.9v-44.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vn.svg
new file mode 100644
index 0000000..6b15814
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vn.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vn" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M177.2 0h708.6v708.7H177.2z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(.72249)">
+    <path fill="#ec0015" d="M0 0h1063v708.7H0z"/>
+    <path fill="#ff0" d="M661 527.5l-124-92.6-123.3 93.5 45.9-152-123.2-93.8 152.4-1.3L536 129.8 584.3 281l152.4.2-122.5 94.7L661 527.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vu.svg
new file mode 100644
index 0000000..397d30e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/vu.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vu" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M0 0h496v496H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="scale(1.0321)">
+    <g fill-rule="evenodd">
+      <path d="M0 0l336.6 212.6h407.5v70.9H336.6L0 496V0z"/>
+      <path fill="#ff0" d="M0 478.4l343.7-219.7h400.4v-21.3H343.7L0 17.7v32L322.4 248 0 446.5v31.8z"/>
+      <path fill="#40aa40" d="M0 496l343.7-219.6h400.4V496H0z"/>
+      <path fill="#ce0000" d="M0 0l343.7 219.7h400.4V0H0z"/>
+      <path fill="#ff0" d="M92.8 258.3c1.2.3 1.5.6 2.7-1.1.3-.9 1-2 1.6-3.2.9-1.4 1.3-2 2-.9.6.6 2.7-.5 3.6.1 1.3 1 .5.8 1.6-.2.8-1.8 0-1.6-1.1-2.4-.8-.5-3 .6-3.8 0 .3-1.7.9-2 1.9-2.3.8.6 3-.4 3.8-.4 1 .2 1.8.3 2.1-1.1.5-1 .3-.3 0-1-1-.6-3 .5-3.9 0-1-.9-.9-1.2-.2-2.5.8-.5 1.4-.3 2.5.4 1 .7 2.7-.7 3.7-.8.8-1 1.8-1.3 1.2-2.4-.3-1-.6-1-1.8-1.3-1.2-.8-2.7.7-3.2-.5 1-1.3 1.3-1 2.5-.3.7.3 3-1 3.6-1.1 1.1-.3.6.9 1.3-1.8-.2-1-2.1.7-3.2.4-1 .2-1.9-.2-2-1.3 0-1.5.8-1.6 1.8-1.4 1 .2 3.1-1 3.9-1 1.1.6 1.5.4 2.4-1 .6-1.6-.1-1-1.2-1.8-.9-.5-3 .6-3.8 0 .1-.5.4-1.3 1-1.6.8.2 1.5.1 2.5.8 1 .4 2.7-1.5 3.6-2.2-.2-1-1.9.4-2.9-.3-.6-.4-1.4-.9-1.6-1.4.6-1.7.3-1.6 1.9-1 .8-.3 2.2-.3 1.3-1.8-.2-.3-1-.2-1.7-.5-1-.6-1.8-1.2-2.7-1.5-.6-.1-1.6-.3-2.1-.2-.1 1 .2 1.6 0 2.8.5.7 1.3.7 1.5 1-.9.7-1.3.3-2.2.4-1.1-.8-.5-3.1-1.8-2.6.3.7.2 3.3.7 3.8.6.4 1.4.8 1.5 1.4-1 1.4-1.3 1.3-2.4.6-1-.6-.6-2.7-1.4-2.6-1 .7-1 .7-.8 1.8 0 1.3-.5 3.2.6 4 1.3 1 1.5.8.4 2.6-.7.9-1.1.7-2 .3-.8-.6-.6-2.8-1.3-3.6-1.3-.7-.6-.7-1.6.2-.4 1.3-.1 1.6.4 2.7.4.6.4 3 1.2 3 1.2.8 1.2.6-.2 2-1 0-1.5.3-2.3-.7-1-.7-.4-3-1.7-3.1-1.2.1-1.4.1-1.3 1.7.2 1.5-.3 3.7.8 4.6 1.1.5 1.8.4 2.1 1l-1.3 1.5c-.7 0-1.5-.5-2.4-.7-1-.4-.5-1.3-1.3-1.9-1 .3-1-1-1.5.3.2 1.1-.2 2.5.9 3.2.8.6 1.5 1.8 2.4 2.3 1 1.2.5 1.4 0 3-.8 0-1.8-.5-2.6-1.1-.9-.6-.7-2.8-1.6-3.4-.7-.7-.5-1.3-1.6.2 0 1.1.1 1.2.4 2 0 1-.3 3 .7 3.7l3 1c.7 1 0 .8-.8 2.2-.6 1.4-.6 1.6-1.4 2.3-.8 1-1 1.4-.4 2.7z"/>
+      <path fill="#ff0" d="M117.2 259.5c.7-1.1 1.1-1.3 0-3.3-.7-.6-1.5-1.9-2.3-3-1-1.5-1.3-2 0-2.5.8-.3.6-3 1.5-3.7 1.3-1 .9-.2.4-1.8-1.3-1.6-1.4-.7-2.6.2-.9.7-.6 3.4-1.5 4-1.5-1-1.4-1.6-1.4-2.9.8-.6.9-3.4 1.2-4.1.6-1 1-1.9-.2-2.8-.8-1-.2-.4-1-.3-.9.7-.6 3.4-1.5 4-1.2.9-1.4.5-2.4-.7 0-1 .4-1.6 1.4-2.5 1-.8.4-3.2.8-4.2-.6-1.3-.5-2.5-1.8-2.3-1 0-1.2.3-1.8 1.4-1.3 1-.5 3.2-1.8 3.2-.9-1.6-.5-1.8.7-2.7.5-.7.2-3.6.4-4.4.2-1.2 1-.2-1-2-1.2-.2-.3 2.6-1 3.6-.3 1.1-1 1.9-2 1.5-1.4-.6-1.2-1.4-.5-2.5.5-.9.3-3.6.6-4.5 1-.9 1-1.4 0-2.9-1.2-1.3-.9-.3-2.1.6-.9.6-.6 3.4-1.5 4-.5-.4-1-1-1.1-1.7.5-.8.7-1.6 1.7-2.4.8-.9-.3-3.5-.6-4.6-.9-.2-.3 2-1.4 2.9-.6.5-1.4 1.1-2 1.1-1.2-1.2-1.3-1-.2-2.4.2-1 .7-2.5-1-2-.4 0-.6 1-1.2 1.6-.9.6-1.8 1.3-2.4 2.2-.4.6-1 1.6-1 2.2.8.4 1.5.4 2.5 1 .9-.2 1.2-1 1.5-1.2.4 1.3-.2 1.6-.5 2.6-1.1.9-3-.7-3 .8.7 0 3 1.2 3.8.8.6-.5 1.2-1.1 1.8-1 1 1.5.7 1.9-.4 2.8-1 .7-2.8-.4-3 .4.3 1.4.3 1.4 1.3 1.6 1.3.5 2.8 1.8 4 1 1.4-1 1.3-1.3 2.6.5.5 1.1.2 1.5-.5 2.2-1 .7-3-.4-3.9 0-1.2 1.1-.9.3-.4 1.9 1 .8 1.3.7 2.5.5.8-.2 3 .8 3.4 0 1-1 1-1 1.7 1-.4 1.1-.4 1.7-1.6 2.2-1 .8-3-.8-3.5.5-.4 1.3-.5 1.6 1 2 1.5.4 3.3 1.9 4.6 1 .8-1 1-1.6 1.8-1.8l.8 2c-.3.8-1 1.4-1.6 2.3-.8.9-1.5 0-2.3.7 0 1-1.3.6-.3 1.6 1.1.3 2.3 1.2 3.3.4.9-.6 2.2-1 3-1.6 1.5-.6 1.5 0 2.8 1.2a7 7 0 01-2 2.3c-1 .6-2.9-.4-3.7.3-1 .4-1.4 0-.5 1.8 1 .5 1.1.3 1.9.3 1 .4 2.7 1.6 3.8.8.6-1 1.5-2 2-2.7 1.2-.5.8.2 1.7 1.6 1 1.2 1.3 1.3 1.6 2.4.6 1.2.9 1.7 2.4 1.5z"/>
+      <path fill="#ff0" d="M95 304.7c0-5.1-.8-10.3 0-10.3 45.3 0 56.6-31 56.6-51.5 0-20.6-15.7-41.3-45.3-41.3-34 0-45.4 20.2-45.4 41.3 0 20.6 17 36 34 36 22.7 0 28.4-5.1 45.4-25.7-5.7 25.7-34 36-45.3 36A44 44 0 0149.6 243c0-25.8 17-51.6 56.7-51.6 34 0 56.7 25.8 56.7 51.6 0 36-28.4 61.8-68 61.8z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/wf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/wf.svg
new file mode 100644
index 0000000..bb726a7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/wf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-wf" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ws.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ws.svg
new file mode 100644
index 0000000..155ad7b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ws.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ws" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ce1126" d="M0 0h512v512H0z"/>
+    <path fill="#002b7f" d="M0 0h256v256H0z"/>
+    <path fill="#fff" d="M147 231.4l-19.6-13.3-18.9 13.5 6-23.5-18-14.7 23.2-1.3 7.7-22.4 8.5 22.8 22.8.5-18.2 15.5zm-3.4-156.8l-15.6-10-15.4 10 4.2-19-13.7-12.1 18.3-1.6 6.8-17.5 7.1 17.7 18 1.4-14 12.5zM74.3 131l-15.2-10.8-15.4 10.4 4.6-18.3L34 100.2l18.2-.8 6.7-18.1 6.6 17.8 18.3 1.1-14.3 12zm139-12.7l-14.7-9.5-14.3 9.7 4-17.4-13-11.2 17.3-1.4 6-16.4 6.6 16.6 16.8 1-13.2 11.6zm-41.1 41.3l-9.7-6.2-9.6 6.2 2.5-11.6-8.7-7.7 11.4-1 4.4-11 4.5 11 11.2 1-8.5 7.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/xk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/xk.svg
new file mode 100644
index 0000000..69146ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/xk.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-xk" viewBox="0 0 512 512">
+  <path fill="#244AA5" d="M0 0h512v512H0z"/>
+  <path fill="#D0A650" d="M202.3 245.7l1.3-.7 1.6-.5s.8-.4 1.2-.4c.4 0 1.3.5 1.5.9.3.4 1.7 1 1.7 1s1 .4 1.1 0c.2-.2.6-.5 1-.5s.6-.4.6-.7c0-.3.2-.7.5-1.1.3-.4 1-.6 1-.6s1-.4 1-1 1.1-1 1.7-1c.5-.1 0-.4 1.3-.2 1.4.1 1.6-.3 1.7-.7 0-.5 0-.9.9-.8.8.1 1.3.1 1.3-.4 0-.4.8-.7-.6-1-1.4-.5-1.3-.2-1.4-.8-.1-.7 0-.6-1-.7-1 0-.4-.5-.5-1 0-.5-.3-.7-.5-1-.2-.4-.7-.4-.7-.8 0-.5 0-.8-.6-.8s-.7 0-.7-.4c0-.5.1-.9.6-.9s.8-.4.7-.9v-1.5l.6-.8 2.3-2c.2-.3.9-.6 1.2 0 .3.7.5.9.8 1.2.2.3 1 0 1.2-.2.2-.4.2-1.5.7-2.2.5-.6.8-1 .9-1.4s.3-1 .9-1 .9-.7.9-1.1.2-.9 1-1c.6 0 1-.5 1.2.1.2.7.4.7.9.9.4.2 1 .5 1.4.2.4-.3.5-.8 1-.5.5.3.9 0 1-.6l.2-1.5s.1-.4 1-.4.2-.5.6-.8c.5-.4.5-.7 1-.5.6.2 1.5-.2 1-.7-.4-.6-1.4-1.4-.9-2 .6-.6.8-1.7.3-1.8-.6-.1-1.4.1-1.5-.5-.1-.6-.3-1 .3-1.2.7 0 1.9 0 2.2-.4s1.5-.5 1.5-1.4c0-1 .3-1 .4-1.6.1-.5.1-1.6-.3-2.1a9.5 9.5 0 01-1.3-1.6 2 2 0 00-1.2-1c-.7-.2-1.3-.3-1.3-.8 0-.6.5 0 .5-1.3s-1-1.6-1-1.6l-1.3-.8s-2.4-.6-3-.6-1.4-.7-.7-1.1c.8-.5 1-1.2.7-1.8s-.5-1-1.5-1.3c-1-.3-1.3-.5-.9-1.1.5-.6.6-1 1.2-.6.5.4 1.4.6 2.2.2.7-.3 1-.6 1.4-.2.3.3.8.7 1.4.2.5-.6 1.5-.6 2-.4.5.3 1.6.2 2 0 .3-.2 1-.8 1-1.1s.5-1 1-1.2c.4-.3 1-1.1 1.5-1.1s.6-.5.6-.9.4-1 .5-1.2c0-.3 1-.7 1.6-.1.7.5 1.5.7 1.5.7h1.4c.5-.2 1.1-.4 1.8 0 .6.5 1.6.5 1.6.5l.1-1c0-.4.2-1-.1-1.2-.4-.3-.9-.6-.1-1.2.7-.5.7-.4 1.4-.4l1.8.1c.6 0 1.5.5 1.5 1s.4.9.8 1.1c.5.3 1 .5.9 1-.2.4-.2.7.3.7.6-.1.8.2.8.6s.1.7.7.9c.6.2.8.5.8 1l.1 1c.1.4.8 1.1.8 1.1s1 1.2-.3.6-1.6-.8-2-.7c-.5 0-.8.3-.8.3l-1 .2c-.6 0-1 1-.3 1.1.8.2 1 .3 1 1s-.2.4-.6.8c-.4.4-.7.2-1.3.2-.7 0-.8.5-.8 1s.2.4.5.8c.3.5.8.5 1.2.1.5-.4.9-.7 1.1.1s.7.8 1.2.8c.6 0 .8 0 1.2-.3.5-.2 1 0 1.2.7 0 .7.5.8 1 1 .4.3.7.5.8.9.1.4.4.6.8.3.5-.2 1.2-.4 1.5 0l.8 1v.8l1.8.6.2.8c0 .4.3.5.7.4h1.3s.7-.3.7-.8.3-.6.7-.6c.5 0 1.5.3 1.8-.2.3-.5 1.1-.7 1.7-.4l2.4.9s-.2 0 .3 1c.6.8 1.6.8 1.6.8l.3 1.1c.2.3 1 .5 1.5.2.4-.4 1-.8 1.6-.8.6 0 1 0 1-.3s-.6-.6-.6-1.2c0-.5.6-.5.7-1 0-.5.6 0 1 .3.3.2.8.7.8 1s.8 1.5 1.2 1.7c.5.2 1.7.3 2-.2.4-.4 1.3-.6 1.3.5-.1 1-.3 1 .3 1.4.7.4.8 1.6.2 1.9-.5.3-.7.4-.7 1s-.2 1.3.2 1.6c.5.4.8.6.8 1s.5 1.9.5 1.9.3 1.5.2 1.8-.2 1 .6.9c.8-.1 1-.1 1 .6s.3 1-.2 1.2c-.4.2-.7 1-.3 1.3.5.1.9.4 1 .7 0 .4.8 1 1.3.6.4-.3.5-.5.9-.6.4 0 .6-.3.3-.7-.4-.5-.5-.9-.1-1.2.4-.2.5-1 .5-1s.6-.8 1.2 0c.7.7.8.4 1.2.4.5 0 .7.5.7.9s1 .3 1 1l.1 2.3s0 1 .6 1.3c.5.4.4.4.1.9-.2.4-.1 1-.1 1.4s.1.5-.3.9c-.5.3-.7.7-.4 1.2.3.6.2.9 1 1.5.7.6.6.9.6 1.3s.7 1 .7 1.4c0 .5.6 1 1 1s1 .9 1 1.3l.2 1.6s-.1.2.4.2c.6 0 1 .6 1.1 0 .2-.7.8-.8 1.1-1 .4-.2 1.2-.5 1.5-.3.4.3.9.3 1.2.3h2.2s.4 0 .7.7c.3.7 1.1 1.4.7 1.8-.5.3-.5 1 0 1 .6 0 1.2 0 1.2.4 0 .5 0 .8.5.5s.8-.3 1 0c.1.4.5.4 1 .6.4.3.6.1.9-.2.3-.4 1.4-.7 1.4-.7s1.5-.3 2-.2l1.3.5s.4.9.2 1.4c-.2.5-.4.4-.2 1.2.2.8-.2.9-.5.8-.4-.1-.8-.1-.8.6s-.4.8-.4 1.4 0 .5-.3.8c-.4.2-.5.7 0 .8.6 0 .4.6.4 1v1s0 .5-.6.5c-.7 0-1.2 0-1.3.4s-.8 1-.2 1.5c.7.4.5.7.1.8-.4.2-.6 1 0 1.3.8.3.7.5.3.9-.5.3-1.4.6-1.4 1 0 .6-.2.6-.8.7s-.8.7-.1 1.6c.6.9.8.7 1.3.7.4 0 .4-.7.4-.7h2c.5 0 1.2 0 1.5-.2.4-.2 1.4-.7 1.4.1 0 .8.2.7.7 1 .4.4.5.1 1 .6.3.5.4.1.6-.5.3-.6.9-1.2 1.3-.5s.5.5 1 .5c.6 0 .8.3.8.7s.6.4 1.2.3.7.4 1 .8c.3.4.4.4.8.4.3 0 .7 0 1-.4.3-.3.6-.8 1-.2s1.1.4 1.3-.2c.2-.6 1-1.1 1.5-.4.4.6.8.6 1.3.7.4.1 1.1.1 1.4.5.3.5 1.2 1.2.5 1.7-.6.5-1.4 1.2-.8 1.3.6.2 1 .4 1.3.8.4.4 1.6.6 2.1.7.6 0 1 .2 1.7-.4.6-.5 1.3-.5 1.2.2-.1.7.3 1.5.3 1.5s.4 1 .4 1.5c0 .4 0 .5.8 1s.7.9 1.4.4c.6-.6.8-.8.8-1.2v-1.4s1-.2 1.3-.4 1.9-1 2.2-.7.9.2 1.2 0h1.5c.4 0 1 0 1.8-.6.7-.6.7-.4 1.2 0s.4 1 .2 1.3c-.3.3 0 1 .6 1 .7 0 .8.4.8.9l.2 1.3c.1.4.1.5 1.1.8 1 .2.9.8 1 1.3.2.4.2.7-.3.7-.6 0-.8.3-.8.7-.1.4-1 .6-1 .6l-.8-.2s-.6 0-.8.4c-.3.3-.9 1-.5 1.6.4.6.4 1 0 1.2-.4.3-.6 1.5-1 1.3s-.8 0-1.1.2c-.4.2-.3 1.4.4 1.8.8.5 1 1 1 1l.8 1.3-.5.7c-.2.4-.7 1.3-.2 1.5s.3 1-.2 1c-.6 0-1.2-.2-1.3.5-.1.7-.4.5-1 .4-.5 0-2-.4-2.3.3-.3.7-.4 1-1 .8-.7 0-.5 1-.3 1.5.2.4.9 1 .9 1s.5.4.5 1.3-.4.8-.7.2-1.1-.5-1.2.1c-.1.7-.2 1.7-.9 1.7-.6 0-.9.2-1.2.6-.2.3-.7.9-.7 1.2s-.1.7-.6.8c-.4 0-.5 1-.5 1s-1.1.2-1.2.6c-.1.4 0 1.1-.9 1.2-.9.1-1.4.7-1.7 1.1-.3.5-.4.8 0 1.2.4.4.6 1.8 1 2 .6.3 1 .4.8 1 0 .8-.6 1.3.1 1.3.8 0 1.2.2 1 .8-.3.6-.3.6-.9.9-.5.3-.8.3-.8 1s.2.6-.3.9c-.5.2-.5.6-.5 1 0 .6-.1.4-.7 1s-1.3.6-1.8.4c-.4-.1-.5-.1-.6-.6-.1-.6-1-.6-1.4-.5-.5.1-1.1.6-1.1.6s-.8.5-.5 1c.4.4.2 1-.4 1-.7 0-2.2.7-2.6 0-.5-.9-1.8-1.4-2-.3-.2 1 .6.9.5 2-.1 1-.3 1-.7 1.3-.3.3-.3.6-.4 1-.1.4-.2 1.4.4 1.7.7.4 1 1.3 1 1.8s0 1 .6 1c.7 0 1.2 0 1.3-.7.1-.6 1.4-.9 1.5.3s0 1.8.6 2.3c.4.5.8 1.2 1.2 1.5s1 2.4 1 2.4c-1 .2-1.2 1.4-1.8 1.6-.3.1-.6 0-1 .2-.2.2-.2.5-.5.7-.7.3-.5-.8-1.4-.4-.7.3-.8 1.2-1.8.8-.6-.2-1-2.3-1.1-2.8 0-.3-.7-1.2-.9-1.5-.6-1-1.8 0-2.2-.3-.7-.4-.4-1.2-1.3-1.2-2-.2-.6 1.1-1.4 1.4-1.5.6-1.5-1.4-2.7-.5-.4.3.7.6.4 1.2-.2.4-1.4 1.2-1.3 1.8.1.8 1 1 1.2 1.7.7 1.7-.4 3-2.2 1.6-1-.8-1.1-2.2-2.6-2.1-.4 0-.5.3-.9.4-.3 0-.6-.3-1-.2-.5.2 0 .6-.1.9l-.9.8c-.4.5-.3 1-.9 1.5-.5.3-.9.1-1.4.7-.6.6-.7 1.5-1.4 2.1-.4.3-.6-.9-1 0-.2 0-.2.1-.3.2v.6c1 2-1 2.6-1.7 4-.3.5.5 1 .2 1.4-.2.4-1.1 1.2-1.2 1.4 0 .2-.1.6-.3.8-.2.2-.7 0-.8.3 0 .3.6.6.8.8.2.2-.1.5 0 .6 1 1 .4.7.9 1.6 0 .2.4 0 .5.3.1.3-.2.3-.1.6l.8 1.1c0 .3-1.5 1-1.8 1-.9 0 .8-1.8-.7-1.8-.6 0-.6 1.4-.8 1.6h-.8c-.9 0-1.5 1.1-1.9 1.2h-1.1c-.4 0-.8.4-1.2.4-.2 0-.3-.2-.5-.3l-1.6-.5c-.3 0-.8.4-1 .2-.2-.1.3-.7-.4-1l-.6-1.4c.2-.8.5-1.7.4-2.5-.2-1-1.5-1.7-2-2.4-.2-.5-.4-2-1-2.3a5 5 0 01-1.4-1.7c0-.2.2-.5 0-.8-.2-.3-.7-.4-.8-.8-.1-.4 0-1.5-.4-1.7-.4-.3-3.3-.6-4-.7-.3 0-.6 0-.9-.3l-.4-.5-.9.1h-.7c-1 .6-1.1 1.4-2 2-.9.8-1.8.7-2.7 1.5-.6.5-1 1.7-1.5 2.2-.2.3-.6 0-.7.1l-1.6 1.5s0 .3-.2.4l-1 .2h-1c-.4.2-.4.7-2 1l-.3.2-.6.5h-.6c-.4 0-.7.3-1 .4-.9 0-2.2-.4-2.8-.1-.4.1-1.5 1.3-2 1.4h-.6c-.2 0-.5 1.4-.6 1.7l-2 1.7-.5.8c-.2.2-.5.4-.8.4-.4 0-1-.3-1.3-.4-.7 0-2.7-.2-3.3 0-.6 0-.4 1.9-2 2l-2.7.4s-.6-.4-1.2-.2c-.2 0-.8.7-.8 1v.3l.1.3c-.3.5-1.1 1-1.4 1.6l-.2.3c-.2.2-1.3.6-1.4.8-.3.6.7 1.2.6 1.5-.2.8-1.4 1.6-1.7 2.4-.1.3.4 1.3.3 1.7 0 1-.4 2.3-.4 3.3l.2 1.3.6.4c.1.2 1.4 2.6 1.4 2.9.2 1.7-2.3 1.1-.8 2.9l.6.8 2.3 1.8c0 .3-1.6.6-1.8.8-.8.8-1.4 2.1-2.1 2.9-.5.4-.9 0-1.4 1-.2.4 0 1.3-.3 1.6-.4.4-.7-.2-1 0-.2 0-.3.6-.4.7-.5.3-4.2 2.3-4.5 2.1-.2 0-.4-.7-.4-.9a2 2 0 00-.5-.8c-1-.8-2.4-1-3.3 0-.3.3-.3.7-.6 1l-1.6 1.2s-.3.4-.5.3c-.3 0-1.2-1-1.5-1.3-.4-.5-1.6-1.7-1.7-2.2 0-2-1.5-3.9-2.1-5.8h1c1-.6.7-2.4 2.5-1.7.3-.3.2-.6.7-.9.2 0 .5-.2.5-.3.7-1 1.4-4.6.8-5.6-.6-.8-1.2-.8-1.7-2.2v-1.2c0-.4-.7-2.4-.8-2.6-.1-.1-.5-.3-.5-.5 0-.1-.2-2.3-.1-2.5-.6-1.7-2.8-2.8-2.9-3l-.8-1.4c-.3-.5-.3-.8-.5-1.3 0-.2-.4-.4-.4-.7 0-.4 1.2-1.4 1.2-2.1 0-.3-.8-1-.7-1.5.2-.4 1-1.4 1-2 0-.6-1.3-2-1.5-2.7 0-.4.5-.7.4-.9l-1.7-1.8c-.1-.3.5-.6 0-1-.4-.5 0-.3-.1-.7l-.8-1.2-1.3-4.6c-.2-.3-.5-.5-.6-.8l-.4-1s-1.3-.4-1.5-.8c-.2-.3-.2-1.2-.6-1.7-.1-.3-.4-.2-.6-.4l-.2-.5c-.4-.5-1.1 0-1.6-2l-2-1.4-.2-.3c-.5-.2-1.2-.2-1.6-.6l-1.6-.1-.4-.6c-.6-.2-1.7-.1-2.2-.6-.5-.4-.6-2.2-1.3-2h-.4c-.5-.7-2.2-.8-3-1.2-.2-.1-.8 0-.8-.2l.1-1-1-1.1c-.6-.2-.3-.3-.8-.5-1.1-.1-1.2 0-2 .8l-.8.3c-.4.2-.5 1-1 .6l-.5-.4c-.3-.3-.5-.1-.6-.6-1-.5-3.6 1.2-4.2 0-.5-.3-.8 0-1.2-.3-.2-.2.5-2.4-1.4-3.2l1.4-1v-.8c0-.3.2-1 .1-1.3l-.4-.8c-.2-.3 0-.6-.2-1l-.6-.3c-.5-.4-1-.6-1.4-1.1l-.3-.4c-.3-.2-1.5-.6-1.4-1.1 0-.2.2-.2.3-.4 0-.2 0-.5.2-.7.5-.7 1.7-.4 1.5-1.7 0-.6-.5-1.1-.6-1.8l-.4-.5c-1.2-.1-1-1.3-1.4-1.6-1.3-.8-2.2-.3-.8-2 .2-.5-1.2-1.4-1.5-1.6-.5-.5-.2-1.5-.4-2-.1-.3-1-.7-1.2-1l-.4-.8v-.2c.3-.2.2-.5 0-.8 0-.2-.4-.1-.5-.2-1.2-1-2.5-1.5-4-2-.4-.2-.2-.5-.6-.7l-2.3-1c-.3 0-.4-.9-.6-1.1a3 3 0 00-.7-.8c0-.8-.5-.9-1-1.3l-.2-.5.5-1.7c.1-.3.5-.6.5-1l-.4-1.8c-.6-1.6-1.3-1.4-1-3.6.1-.5 0-.7.3-1.1l.2-.3 1-.7c.3-.4.5-1.5 1-1.8.2-.3 1.2-.8 1.3-1 .2-.2.4-.7.3-1h-1c-.1 0-.5-.4-.9-.4l-.2-.4-.2-.2-1-.3c-.5-.2-1-.2-1.5-.5-.7-.4-1.5-1.6-2.3-1.7-1-.2-1.6 0-2.5 0-.6.1-.6-.2-1-.4-.7-.2-.2.4-1.7-.1-.2-.2 0-.7.1-.9-.2 0-.5.1-.8 0-1.2-.3-.8-1.4-1-2-.2-.3-.7-.2-1-.2v-.3c.3-.3-.4-1.1-.4-1.2 0-.3 1.5-.5 1.7-.5.1-.2-.1-.4-.1-.6l.3-1.4-1-1c.1-.1.4-.3.4-.5.7-2 1.8-.4 2.8-2.2l.5-1h.2l.6.2c.1-.2.4-.3.6-.4l.4.1c1.8-.4 1.4-1 2.4-1.8.3-.2 1.1-.2 1.5-.4.4.2 1 .8 1.7 1.1.5.2 2.3.6 2.6.8.4.2.5.7.9.9 1 .5.4-.4 1.4-.2 1 .2 1.8 1 2.8 1.4h.7c.3 0 2-.4 2.1-.3l.7.3c.2 0 .4-.5.5-.5.7.1.8.4 1.7.3 0 0 .5-2.6 1-2.7.2 0 .9.6 1 .7.4 0 0-.6 0-.6 0-.2-.6-1.8-.5-2 0 0 .4.2.6 0 .6 0 1.2-.2 1.6-.6l.9-1.2c0-.2-.2-.7-.1-.8l.7-.5c.3-.3.4-.8.8-1 1.7-.2 2.2-1.5 3.7-1.7h.5l.3.5c.1.1 1 .7 1.3.7l.3-.3c.3 0 1.1-.5 1.2-.8 0 0-.2-.2 0-.4 0-.1 1-1 1.2-1h1.1l.5.5h.9c.2 0 .3-.4.5-.5l.1.1z"/>
+  <g id="h" fill="#FFF">
+    <path id="star" d="M281.4 124.5l12.9 39.7-33.8-24.5h41.7l-33.7 24.5 12.9-39.7z"/>
+    <path id="star_1_" d="M331.6 133.4l12.9 39.7-33.8-24.5h41.8L318.7 173l12.9-39.7z"/>
+    <path id="star_2_" d="M379.5 150.8l13 39.7-33.8-24.5h41.7l-33.8 24.5 13-39.7z"/>
+  </g>
+  <g id="h_1_">
+    <path id="star_3_" fill="#FFF" d="M230.4 124.5l-13 39.7 33.8-24.5h-41.7l33.8 24.5-13-39.7z"/>
+    <path id="star_4_" fill="#FFF" d="M180.2 133.4l-13 39.7 33.8-24.5h-41.7L193 173l-13-39.7z"/>
+    <g transform="scale(-1 1)">
+      <path id="star_5_" fill="#FFF" d="M-132.5 150.8l-12.9 39.7 33.8-24.5h-41.7l33.7 24.5-12.9-39.7z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ye.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ye.svg
new file mode 100644
index 0000000..d49d2c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/ye.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ye" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v504.3H0z"/>
+    <path fill="#f10600" d="M0 0h512v167.9H0z"/>
+    <path d="M0 344.1h512V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/yt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/yt.svg
new file mode 100644
index 0000000..7bf3837
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/yt.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-yt" viewBox="0 0 512 512">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h512v512H0z"/>
+    <path fill="#00267f" d="M0 0h170.7v512H0z"/>
+    <path fill="#f31830" d="M341.3 0H512v512H341.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/za.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/za.svg
new file mode 100644
index 0000000..9bae96f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/za.svg
@@ -0,0 +1,17 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-za" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M70.1 0h499.6v499.6H70.1z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="translate(-71.9) scale(1.0248)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M0 397.9v-296l220.4 147.9L0 397.9z"/>
+      <path fill="#00c" d="M150.4 499.7l247.4-166.5h351.6v166.5h-599z"/>
+      <path fill="red" d="M134.5 0h615v166.6H397.7S137.8-1.6 134.5 0z"/>
+      <path fill="#fc0" d="M0 62.5v39.3l220.4 148L0 397.8v39.4l277.6-187.4L0 62.5z"/>
+      <path fill="#093" d="M0 62.5V0h92.6l294 199h362.8v101.7H386.6l-294 198.9H0v-62.4l277.6-187.4L0 62.5z"/>
+      <path fill="#fff" d="M92.6 0h57.8l247.4 166.6h351.6V199H386.6L92.6 0zm0 499.7h57.8l247.4-166.5h351.6v-32.4H386.6l-294 198.8z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zh.svg
new file mode 100644
index 0000000..7873c1b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zh.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cn" viewBox="0 0 512 512">
+  <defs>
+    <path id="a" fill="#ffde00" d="M1-.3L-.7.8 0-1 .6.8-1-.3z"/>
+  </defs>
+  <path fill="#de2910" d="M0 0h512v512H0z"/>
+  <use width="30" height="20" transform="matrix(76.8 0 0 76.8 128 128)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-121 142.6 -47) scale(25.5827)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-98.1 198 -82) scale(25.6)" xlink:href="#a"/>
+  <use width="30" height="20" transform="rotate(-74 272.4 -114) scale(25.6137)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(16 -19.968 19.968 16 256 230.4)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zm.svg
new file mode 100644
index 0000000..105f107
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zm.svg
@@ -0,0 +1,27 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-zm" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill-opacity=".7" d="M248 0h496v496H248z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-256) scale(1.0321)">
+    <path fill="#198a00" d="M0 0h744v496H0z"/>
+    <path fill="#ef7d00" d="M656.8 178.2H744V496h-87.3z"/>
+    <path d="M569.6 178h87.2v318h-87.2z"/>
+    <path fill="#de2010" d="M480.5 178.3h89V496h-89z"/>
+    <g fill="#ef7d00" stroke="#000">
+      <path stroke-linejoin="round" stroke-width=".9" d="M685.6 63.5s32.9-14 36-16.9c1.5 1.7-13.1 19.4-41.5 26 25.8-6.2 47.8-25.3 52.2-24.7 1.3.3 1 18.7-58 34.6 40.8-10.7 64.6-30.4 64.3-28.2.3.4-4 15.5-39.8 27.2 10-2.3 37-18.8 36.7-15.6.9 1.3-26.2 36-75.1 24.7 39 10.2 64.4-14.3 68-13.9.8.2-7.2 21.4-56.4 22.7 23.6-2.4 16.8-.1 16.8-.1s-14 10.9-30.7 3.5c13.2 3.6 14.6 3.7 14.9 4.9-.9 1.4-11.7 3.6-22.2-2 8.4 3.4 16 4 16.1 5.3a11 11 0 01-10.3 1.3c-4.7-2.1-48.8-29.2-48.8-29.2l75-20.6 2.8 1zm-88.2 73.3a6 6 0 00-6.7 5.8s-.6.5-.2 3.3a16.2 16.2 0 011.6-2.5c.7 0 3.8 1 8.5-2.7-4.3 4.5-1.7 6.2-1.7 6.2s-1 3.6 2.3 4.3c-1-1.5-.4-2.7-.4-2.7s4.6-.5 4.3-6.2c.2 5.1 3 6.4 3 6.4s0 2.8 3 3c-1.6-1.4-1.3-3.6-1.3-3.6s4-2.9.6-7.7c2-1.1 3.7-4.3 3.7-4.3s-2.8-1.2-4-2.2c-.6-1.2 0-8.2 0-8.2l-1.7-9-4.7 14c.2-2 .3 6-6.3 6z"/>
+      <path stroke-linejoin="round" stroke-width=".9" d="M630 116.5c.1.2 5 5.5 9.6 5.2 1.7-1.4-3.7-4.6-3.7-5.3 2 1.7 9.9 8.5 15 6 2-2.8-3.7-2.4-9.9-10.2 4.3 2.9 15.2 9.3 20.3 6.8 2.1-2.3-11.3-9.6-15.8-15.2l-11.6-6-15.8 13 11.9 5.7z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M612.2 72.5s5.4-3.2 26.8-1.6c2.3.3 14.6-4.2 18.5-5.5 6.2-1.1 26-5.5 31.4-9.5 3.8-.5-1 7-5.8 8.7-5 2.3-23.4 8.7-30 7.8 7.9.1 3.5 6.5-9.5 3.4 6.2 3.5 4 4.1 4 4.1s-11 .6-14-1.9c7.4 2.8 4.4 3.8 4.4 3.8s-7.6.7-11-.9c5.3 1.6 2.6 2.6 2.6 2.6s-4.4.7-8-.6c-3.6-1.3-9.1-10.4-9.4-10.4z"/>
+      <path stroke-linejoin="round" stroke-width=".9" d="M620.8 119.5l.8 14.2-.8 1.1c-.4.5-10-1.5-8.7 6 0 3 0 3.7 2 5.4-.5-2-.3-3.4-.3-3.4s2.7 1.7 5.4-2.8c-1.8 4.4-.5 6-.1 6 .4.9-.7 4.5 2.9 4.4-1.4-1.3-.7-3.3-.7-3.3s3.8-.6 2.4-7.5c1.4-1.4 2 0 2 0s.4 4 3.7 3.2c1.5.9-.2 3.1-.2 3.1s2.4 0 3.1-2c.8-2 1.6-5.7-2.4-7.2-.5-1.5 1.6-1.6 1.6-1.6s2.5.8 3.3 2.1c.7 1.3.4-3.3-2.7-3.8-3.9-.1-4.1-1-4.1-1.1l-1-13.2-6.2.4z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" d="M634.3 131.6c0-.7-6.6-9.6-5-10.8 1.7.4 4.5 4.5 6.7 3.1-.6-1.6-2.6-.7-5-4.7-2.2-4.6-2.5-11.5-10.5-19 5.2 8 16.9 12.6 17.4 10.2s-10.3-11-9.8-13.2c2.1 4.4 13 14 21 13.3.5-1.9-6.6-5.7-8.4-9.2-5-3.4-18.7-15.2-19-17.9a32 32 0 00-9.5-10.3c-.6-.6-.7-1.3-.8-1.7-3.1-7.2 1-9.6 3.4-10 2-.1 2.5.1 4-.5l-5.1-2c2.2 1.6 7.8.2 6.5 4.8 2.5-.9 7.7-7-5.9-8.5-4.4-5-22.5-8-27 14.1.3.3.5.6 1.7 1.5-5.8-2.8-21.2-5-26.8-5.8-15-4.4-30.6-14.8-32.1-13.6-2 1 9 11.3 8.5 11.5-9.7-5.6-18.4-9.6-26.6-13.2-5.8-2.2-11.5-7.2-12.2-6.2-2 4.4 9.3 15.4 11.4 16.7 2 1.2 18.7 9 18.4 9-25-11.3-29.2-13.4-30.4-14.7-2.2-.5-7.6-7.7-9-7.3-.9.8.7 12.3 12.7 17.4 2 1.4 25.5 10 25.3 10.6l-28.1-11.6c-5.2-2-11.6-9.2-12.8-8.4-1.1.8 3 8.5 8.2 11 2.8 1.2 13.3 6.4 22.9 9.7.6.3-17.1-6.7-25.7-10.3-3.8-2-5.7-4.8-6.2-4.2-1 .6 1.4 12 28.8 18.5.7.3 9.6-2.1 9.2-1.8a111.8 111.8 0 01-15.4 2.7c-.3.8 1.7 4.9 15.9 4 1.8 0 11.6-3.5 10.8-2.8-.4.4-13.4 4.6-14.4 4.7-.8 0-5.4.6-5.5 1-.2.7 3.3 3.6 11 4 6.7.4 19.4-4 19.2-3.7-.3.3-12.3 4.4-12.7 4.6-.4.3-4.8.5-5 .9-.3.8 6.4 7.1 26.3.4-2 2.7-11.6 4.5-11.6 5 0 .4 2.1 2.5 5.5 3.2 1.7.4 4 .3 6 0a25 25 0 0013-7c.5 1.5-12.7 8.3-12.1 8.9 2.9 2.7 12.4-.4 13-.7A148 148 0 00587 91.7c.3 1.5-23 14.2-22.7 14.7 1.5 2.3 9.5-.2 9.8-.4l10.4-5.6c.3-.2-11.4 6.9-10.4 8-.5 4.5 18.3-3.2 19.8-4.2.7-.5-9 4.3-9 6.6 3 5.3 13.2 3.6 14.7 2.4.8-.5-1 4-.4 3.6a17 17 0 003-4.2c-.2 1.5-1.4 3.8-2 6.5-.6 2.7-.8 5.8-1.7 9-.2 1.4 6.2-2.8 5.3-12.8.5 5.2-2 15-1.4 15.4 1.4 1 5-4.8 5.5-8.8 1 2 3.4 6.2 5.4 7.2-.2-3 0-3-.9-5.9.5-4 .6-9.4.7-15.6 5.5 10.4 7.6 14.8 6.1 22.8 1.6.7 4.2-5.6 4-8.8 2 9 11 10.3 11.2 10z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" d="M543.9 65.6s-3.7 2.8-8.3 2.6c1.1 4.6 10.7 1.1 10.7 1.1s-4.6 5.1-8 6c2 1.5 10.3 1 11.7.2 1.4-.9 3.9-4 3.9-4s-8.5 9.8-9.8 9.7c-.1 1.1 9 .7 10.9-1 1.9-1.7 6.6-4.3 6.6-4.3s-12.5 8.7-13 8.7c4.6 1.3 14-1.4 20-5.1-8.9 5.9-9.7 7-14.2 9 4 .8 6 3.5 19.7-2.4 7.8-3.7 12.2-10.4 12.2-10.4a79.2 79.2 0 01-21 17.4c-.4 1 9.1 5 21.3-7.6"/>
+      <path stroke-linecap="round" d="M609.9 93s.8 3.9 4 6.8c3.3 3 3.6 5.9 3.6 5.9m-9.3-37.8s1.2 3.5 4.5 5.7a38 38 0 019 10.4 114 114 0 012.3 13.4m-36.7-24.2c.2 1.4-4.8 8 2.1 15.8-6.3 7.7-6.3 8.7-6.3 8.7s3.5 2 9.9-3.5c10.4 12.8 7 18.7 7 18.7"/>
+      <path stroke-linecap="round" stroke-linejoin="round" d="M599 103.9s-.9-1.4.8-6.5c1.6 1.8 3.3 2.2 4 3s8.7 1.9 9.2 7.1"/>
+      <path d="M608.3 55.7c0-.4-1.6-3.8-7.5.4 3.2.2 6.3 2 7.5-.4z"/>
+      <path stroke-linejoin="round" d="M664.7 71.2c.3.2 17.7 4 23.5 2-7.4 9.9-22.2 3.2-22.2 3.2 7.3 2.2 7.6 2 9.9 4 .7 2-13.3 1.1-18-1.5 13 4 13.2 3.8 13.6 5.3.6 2.2-21-.5-23-3.4 5.8 4.5 9 5.3 12.2 7.4-4 1.7-11.2 3.4-24.5-6 17.5 16 33.3 15 35.8 17.8-6.1 9-29.7-5.3-40.6-12.6-10.8-7.2 23.8 17.5 27 17.1-1.6 2.5-13 .3-13.8-.9"/>
+      <path stroke-linecap="round" d="M669.2 87.9c-2 .3-8 .3-9 .1"/>
+      <path stroke-linecap="round" stroke-linejoin="round" d="M538.8 63s13.2 7 18.8 6.5c-1.5 1.4-3.7 2-3.7 2 1.4.5 5.2 2.6 11 1.2-1.3 1.4-3.1 3-3.1 3s5 1.9 10.6-1a43.6 43.6 0 00-2.7 3.6l4 .3"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zw.svg
new file mode 100644
index 0000000..ca5b7a2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/1x1/zw.svg
@@ -0,0 +1,21 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-zw" viewBox="0 0 512 512">
+  <defs>
+    <clipPath id="a">
+      <path fill="#00f" fill-rule="evenodd" d="M1.3-.1h421.4v420.2H1.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#a)" transform="matrix(1.2149 0 0 1.2184 -1.5 .1)">
+    <path fill="#006400" d="M0 0h840v420H0z"/>
+    <path fill="#ffd200" d="M0 60h840v300H0z"/>
+    <path fill="#d40000" d="M0 120h840v180H0z"/>
+    <path d="M0 180h840v60H0z"/>
+    <path stroke="#000" stroke-width="20" d="M0 0v420l280-210z"/>
+    <path fill="#fff" d="M0 0v420l280-210z"/>
+    <path fill="#d40000" d="M106.5 104.4L162 275.1 16.8 169.6h179.5L51 275.1z"/>
+    <path fill="#fc0" d="M82.8 253.7l9.8-1.8 18.1-.7 6.7.6 15 2.5 1.1-1.5V242l1.8-9.3 3-9.4 3.3-7.5 4.2-7.8 6.8 1.7h1.8l.2-1.3-14.4-12.3-15-11.5-21.7-16.2-2-.5-2.3-17-1.7-5.1-2.3-2-4.3-1.4-4.8.2-2.2 1.2-4.6 1-2.4.4-1.6 1.9-.2 2.4 6.7.2 1.7.7-.2.7-3.8.5-1.8.6 2.1 1.6 2.2.8 2.8 1 .6 2 .2 25.8-1.5 4-.5 7.5 2.2 9-5.6 6.4L77 216l-.6 3.5-1.7 3.5-.2 2.2 1.1 2.4 4.3 14.2 2.2 11.7z"/>
+    <path d="M88 142c-1.8 0-2.6.2-4.3 1.1a10.8 10.8 0 01-4.6 1.4c-2.5 0-4.5 1.8-4.5 4.1v1.5l3.6-.1c10.6.3 1 1.3.2 1.4-2.6.5.6 2.6 3.7 3.7 3.3 1 3.1.4 3.1 15 0 11.9 0 13.6-1 16.3-1.3 4-1.3 10 0 14 .6 1.6 1 3 1 3.3 0 .2-1.6 2.1-3.5 4.3-3.5 4-5.6 8.1-5.6 11a6 6 0 01-1 2.6c-1.3 1.7-1.3 4.6-.1 5.7 1.3 1.2 6.6 21.8 6.7 25.7 0 1.4.2 1.4 8.3-.2 6.6-1.3 22.1-1.6 30-.6 3.6.5 7.8 1.3 9.3 1.6 4.8 1.3 4.6 1.5 4.6-4.3a74 74 0 015.1-26.7 94.7 94.7 0 016.9-14s1.8.2 4 .8c4.1 1 5.3.9 5.3-1 0-1-4.3-4.6-25.4-21a432.2 432.2 0 00-26.3-19.9c-.6 0-1.2-.3-1.3-.7l-1.5-9.5c-.7-4.9-1.7-9.7-2.1-10.7-1.4-3-4.1-4.5-8.6-4.8a31.2 31.2 0 00-2 0zm.1 1h2c6.6.4 7.8 2.2 9.6 14a173 173 0 011.2 9.4c0 .8-.9 1.8-3.2 3.3a46.8 46.8 0 00-10 9.5l-1.3 1.8-.3-4.2V165c.3-8.7 0-9.5-2.8-10.5-2.3-.8-5.3-1.6-4.5-2.1 1-.6 2-.2 4.4-.9 1-.2.9-.1.7-.9-.2-1.3-1.6-2-5.3-1.8-3 .2-3.3.1-3.1-.7.4-1.6 2-2.6 4.5-2.9a13.4 13.4 0 004.4-1.3 7 7 0 013.7-1zm14.9 25.8h.4c1.7.3 50.8 38.7 50.8 39.8 0 .4-.4.7-1 .7-.4 0-12.9-3.5-27.7-7.8-23.6-7-27-8-28-9.3a5.1 5.1 0 01-.1-6.2 5 5 0 001-2c0-1.2-2.5 1.8-3 3.5-.5 2 .5 5.4 2 6.5.6.5 5.1 2 10 3.5 8.4 2.4 9 2.7 9.4 4.1 1 3.3-2.5 7.2-7.5 8.3a14.6 14.6 0 00-5.2 2.4 68.2 68.2 0 01-17.2 10.4c-.4.3-.9 1.9-1.2 3.4-.6 3.3-.8 3.8-1.8 3.8-.5 0-.6-.3-.2-1.4.7-2 .6-4.4-.1-4.4-.5 0-.7.7-.7 1.8 0 1-.3 2.2-.7 2.5-.5.6-.6.2-.4-2.3.2-1.7.1-3-.1-3-.5 0-1.4 2.5-1.7 4.7-.2 1.3-.2 1.3-.6-.3-.3-1.2-.2-2 .7-3.5a9 9 0 001-3.5c0-1.3 1-2.6 5.7-7.3 3-3.1 6.7-7 8-8.7 2.3-2.8 2.4-3 2.3-5.9 0-1.6-.2-3.1-.4-3.3-.6-.6-1.4 2.6-1 4.3.2 1.6 0 2.1-3.3 6a113.2 113.2 0 01-7.5 7.8c-3.9 3.6-5.3 5.6-5.3 7.4 0 .6-.4 2-1 3.3s-.8 2.6-.6 2.9c.2.3 0 .3-.3 0-.5-.5-.5-1.3-.1-3a7 7 0 00.2-2.6c-.5-1-1.2.2-1.5 2.7-.2 1.4-.5 2.5-.8 2.3-.7-.4-.5-3 .4-4.4.5-.7 1-2.3 1.3-3.6.7-3.7 2.3-6.7 5.8-10.7a57.5 57.5 0 003.2-3.8l-1-3.3a25 25 0 01-.2-13.7c1.3-3.8 3.9-7.6 8-11.7 4-3.9 7.9-6.3 10-6.4zm15 32.2a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.5.3a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.6.5a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.4.5a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-6.3.6a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.4.4a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5.2.2a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-2.7 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5 .6c.1 0 3.7.8 8 2l7.9 2.3-1.5 2.7a96.2 96.2 0 00-2.4 4.4c-1 2-1.2 2-6 .9-5.2-1.2-13.4-2.3-21.8-3l-8-.7 3-1.1a50.4 50.4 0 005.3-2.4c2-1.1 2.8-1.3 5.9-1 4.5.3 7.5-.6 8.7-2.4l1-1.7zm-8.8.6a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5.6 0a.9.6 0 011 .6.9.6 0 01-1.6 0 .9.6 0 01.7-.6zm-8 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm5.3.2a.9.6 0 011 .5.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm-6.6 1.1a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.5 0a.9.6 0 011 .7.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.6.2a.9.6 0 011 .5.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm2.8 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-20.3 8.1a191.2 191.2 0 0135.1 4.2c.1.1-.6 2.5-1.7 5.4l-2 6c-.1.5-.8.5-2.5.3-8.3-1.3-32.3-1.2-41.5.2-5.3.8-6 .7-5.6-.4l1-3.5.6-2.7L93 221a63.4 63.4 0 0010.2-6.5h.9zm-27 14.2c.3 0 .9.3 1.6.8 1 .6 2.2 1.1 2.7 1.1 2.6 0 4 3.7 6.2 16l.8 4.4c.2 1 0 1.2-2.3 1.7-2.8.6-3.5.7-3.5.3 0-1-2.8-13.7-4-18.2a96.9 96.9 0 01-1.6-6 .1.1 0 01.1 0zm28.6 2h2.9l-1 1c-1.7 2-2.5 2.1-3.7.8a5 5 0 01-1-1.5c0-.2 1.3-.4 2.8-.4zm6.1 0h5.4l-1.2 1.2c-1.4 1.6-1.5 1.6-3 0l-1.2-1.3zm8.2 0h1.3c.7 0 2 0 2.8.2l1.5.3-1.4 1.3c-.8.7-1.5 1.3-1.6 1.2l-1.4-1.6-1.2-1.5zm8.5.3l1.2.3c.7.2 2.2.3 3.3.4h2l-1.5 1.3a8.9 8.9 0 01-1.8 1.3c-.1 0-1-.8-1.7-1.7l-1.5-1.6zm-30.2.1h.2c.1.2-.3 1-1 1.7l-1 1.4-1.5-1.2-1.5-1.3 2.4-.3 2.4-.3zm2.3.2l1.6 1.4 1.6 1.5-3 .2-3 .1 1.4-1.5 1.4-1.7zm18 0c.3 0 .5.1.8.3a6.6 6.6 0 011.3 1.7c.4.8.3 1-1 1l-2.5-.5-1.2-.3 1.3-1.3c.6-.6 1-1 1.4-1zm-8.3 0c.5 0 1 .3 1.6 1.3.7 1.1.7 1.1-2 1.1h-2.7l1.4-1.3c.7-.7 1.3-1 1.7-1zm17 .2l1.2 1.2c1.4 1.3 1.6 2.1.6 2l-2.8-.3-2.2-.2 1.6-1.3 1.6-1.4zm-35.2.7c.2 0 1 .5 1.6 1.2l1.2 1.3-2.5.4-3.5.5c-.7.2-.5-.3 1-1.6 1-1 2-1.8 2.2-1.8zm-3.7 0h.4c.8.2.8.4-.6 1.8l-1.5 1.5-.5-1.3c-.4-1-.3-1.3.6-1.7a4.8 4.8 0 011.6-.3zm46 1.8c.2 0 .2.2 0 .6-.2.8-1.1 1-1.1.2 0-.2.3-.5.7-.7h.3zm-21.4 1.6c7.7 0 15.5.2 17.4.4 3.1.4 3.4.5 3.4 1.7 0 1.4-.4 1.5-4.6.8-1.2-.3-6.3-.7-11.2-1.1a149.6 149.6 0 00-28.5 1c-1.9.2-2.4 0-2.4-.6 0-1.3 10.2-2.2 25.9-2.2zm-10.3 2.9h5.4l-1.2 1.3c-1.5 1.6-1.6 1.6-3 0l-1.2-1.3zm7 0l1.4 1.4 1.4 1.6-2.9.1h-2.9l1.5-1.6 1.4-1.5zm2.1 0h5.4l-1.2 1.3c-1.4 1.6-1.5 1.6-3 0l-1.2-1.3zm-12.8 0c.2 0 0 .5-.7 1.5-.7.9-1.4 1.6-1.5 1.6-.2 0-.9-.6-1.5-1.3l-1.2-1.3H96a9 9 0 002.7-.4 1 1 0 01.4 0zm2 .5l1.3 1.2 1.5 1.3-2.6.2-2.9.2 1.4-1.5 1.3-1.4zm17.4 0l1.4 1.6c1.6 1.7 1.5 1.8-2.1 1.1l-1.7-.3 1.2-1.2 1.2-1.2zm2 0h2.4c2.6 0 2.9.4 1.4 1.8-1.2 1-1.2 1-2.6-.5l-1.2-1.3zm-30.6.5c1.2 0 1.1.1-.4 1.6-1.1 1.1-1.2 1.1-1.6.3-.3-1 .6-1.8 2-1.9zm38.8.2c.4 0 1.2 0 2 .2l2.3.4-1.3 1.2-1.2 1.2-1.1-1.4-1-1.6h.3zm-36 .5c.3 0 .6.2 1.1.7 1 1 1 1 .2 1.4a8 8 0 01-2.4.4H90l1.3-1.4c.7-.7 1-1 1.3-1.1zm34.1.3c.4 0 .7.2 1.2 1l.9 1.2h-2.1c-1.4 0-2-.2-2-.6.2-.4.7-1 1.3-1.3l.7-.3zm6.4 1.3c.2 0 .2.2.2.5 0 1-.9 1.7-1.3 1-.1-.3.1-.8.5-1.1l.6-.4zm-25.9 1.2c8.7 0 18.3.6 24 1.6l1.6.3v4.4c0 3.3-.2 4.4-.7 4.4l-5-1a126 126 0 00-35-1l-2.3.3-.6-3.7a21 21 0 01-.4-3.8s2.3-.5 5-.8c3.3-.5 8.2-.7 13.4-.7z"/>
+    <path id="b" d="M124.8 217.8c-3 0-5.1 2.1-5.1 5.2 0 4.8 5.4 7.2 8.6 3.8s1-9-3.5-9zm0 1.2a4 4 0 014 4c0 3-3.3 5-6 3.7-2.7-1.5-2.5-6.1.4-7.3a4.3 4.3 0 011.5-.4z"/>
+    <use width="100%" height="100%" x="-20.1" y="-.6" xlink:href="#b"/>
+    <path d="M88 145.3a1.7 1.8 0 00-1.6 1.7 1.7 1.8 0 103.5 0 1.7 1.8 0 00-1.9-1.7zm.1.6a1.2 1.1 0 011.2 1.1 1.2 1.1 0 11-2.4 0 1.2 1.1 0 011.2-1.1z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ad.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ad.svg
new file mode 100644
index 0000000..7320bf2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ad.svg
@@ -0,0 +1,150 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ad" viewBox="0 0 640 480">
+  <path fill="#d0103a" d="M0 0h640v480H0z"/>
+  <path fill="#fedf00" d="M0 0h435.2v480H0z"/>
+  <path fill="#0018a8" d="M0 0h204.8v480H0z"/>
+  <path fill="#c7b37f" d="M300.4 136.6c7.7 0 10.9 6.6 18.6 6.6 4.7 0 7.5-1.5 11.7-3.9 2.9-1.6 4.7-2.5 8-2.5 3.4 0 5.5 1 7.3 4 1 1.6 1.8 4.9 1.3 6.7a40 40 0 01-2.7 8.3c-.7 1.6-1.3 2.5-1.3 4.2 0 4.1 5.6 5.5 9.4 5.6.8 0 7.7 0 12-4.2-2.3-.1-4.9-2-4.9-4.3 0-2.6 1.8-4.3 4.3-5.1.5-.1 1.3.3 1.7 0 .7-.3.4-1 1-1.4 1.2-1 2-1.6 3.6-1.6 1 0 1.6.1 2.5.7.4.4.6.8 1 .8 1.2 0 1.8-.8 3-.8a5 5 0 012.3.6c.6.3.6 1.5 1.4 1.5.4 0 2.4-.9 3.5-.9 2.2 0 3.4.8 4.8 2.5.4.5.6 1.4 1 1.4a6.2 6.2 0 014.8 3c.3.4.7 1.4 1.1 1.5.6.3 1 .2 1.7.7a6 6 0 012.8 4.8c0 .7-.3 1.6-.5 2.2-1.8 6.5-6.3 8.6-10.8 14.3-2 2.4-3.5 4.3-3.5 7.4 0 .7 1 2.1 1.3 2.7-.2-1.4.5-3.2 2-3.3a4 4 0 014 3.6 4.5 4.5 0 01-.3 1.8 9.6 9.6 0 014-1.4h1.9c3.3 0 7 1.9 9.3 3.8a21 21 0 017.3 16.8c-.8 5.2-.3 14.8-13.8 18.6 2.5 1 4.2 3 4.2 5.2a4.5 4.5 0 01-4.4 4.7 4.4 4.4 0 01-3.5-1.4c-2.8 2.8-3.3 5.7-3.3 9.7 0 2.4.4 3.8 1.4 6 1 2.2 1.8 3.5 3.7 5.1 1-1.5 2.1-2.6 4-2.6 1.7 0 3.2.6 3.9 2.2.2.5 0 .9.3 1.4.3.6.8.7 1.1 1.3.5 1 0 1.8.5 2.7.3.7.9.8 1.2 1.4.4 1 .5 1.6.5 2.7 0 3-2.7 5.2-5.7 5.2-1 0-1.4-.4-2.3-.3 1.7 1.7 3 2.5 4.3 4.5a17.7 17.7 0 013 10.3 22 22 0 01-2.8 11.2 20 20 0 01-7 8.5 35 35 0 01-16 6.4 74.4 74.4 0 01-11 1.4l-14.1.8c-7.2.4-12.2 1.5-17.3 6.6 2.4 1.7 4 3.5 4 6.4 0 3-1.8 5.3-4.7 6.2-.7.2-1.2 0-1.9.4s-.7 1.3-1.4 1.7a6.2 6.2 0 01-3.8 1 8 8 0 01-6.4-2.5c-2.2 1.8-3 3.4-5.5 4.9-.8.4-1.2 1-2.1 1-1.5 0-2.2-1-3.4-1.8a23 23 0 01-4.4-4c-2.3 1.3-3.6 2.4-6.3 2.4a7 7 0 01-4-1c-.6-.5-.8-1.2-1.5-1.6-.7-.5-1.3-.3-2.1-.7-3-1.3-5-3.5-5-6.8 0-2.9 1.8-4.7 4.4-6-5-5-10-5.8-17-6.2l-14-.8c-4.4-.3-6.8-.7-11-1.4-3.3-.5-5.2-.7-8.2-2.1-10.2-4.8-16.8-11.3-18-22.5-.2-1-.2-1.5-.2-2.5 0-5.8 2.3-9.4 6.4-13.5-1-.3-1.7 0-2.8-.3-2.5-1-4.4-2.7-4.4-5.5 0-1 0-1.7.5-2.6.4-.6 1-.7 1.2-1.4.2-1 0-1.6.4-2.5.3-.5.8-.6 1-1.2 1-1.9 2-3.4 4.1-3.4 1.8 0 3 1 3.8 2.5 1.8-.8 2.2-2.1 3.2-3.7a15.5 15.5 0 001.4-13.3c-.4-1.5-.6-2.5-1.8-3.7-1 1-2 1.4-3.4 1.4-2.9 0-5-2.5-5-5.3a4.8 4.8 0 013-4.6c-1.6-1.4-3-1.5-4.7-2.6-2.6-1.6-3.5-3.4-5.2-6-1.2-1.6-1.5-2.8-2-4.7a19 19 0 01-1-7.8c.6-5 1.5-8 4.6-11.9 1.8-2.3 3-3.7 5.8-4.9 2.3-1 3.7-1.7 6.2-1.7l2 .1a6.9 6.9 0 012.8.8c.4.2 1.1.9 1.1.4s-.3-.8-.3-1.3c0-2 1.5-4 3.6-4 1.5 0 2.1 1.4 2.9 2.7.4-.8.7-1.4.7-2.3 0-3.4-1.9-5.2-4-7.9-4.7-5.8-10.5-8.5-10.5-16 0-2.2 1-3.7 3-4.9.5-.3 1.3 0 1.8-.3s.4-1 .7-1.4c.5-.7 1-1 1.6-1.6 1-1 2-.6 3.1-1.5.6-.4.8-1 1.2-1.4 1.3-1.6 2.5-2.4 4.6-2.4 1 0 1.6 0 2.5.4l1 .5c.3-.2.8-.8 1.5-1.1a4 4 0 012.2-.6c1.1 0 1.8.6 3 .6.3 0 .4-.4.8-.6 1-.7 1.5-1 2.7-1 1.2 0 1.8.3 2.8 1 1 .5 1 1.3 2 1.8.5.3 1 .2 1.5.4 2.6.9 4.5 2.6 4.5 5.3 0 1.5-.3 2.5-1.4 3.5-.9.7-1.7.6-2.8 1a16 16 0 0011.3 3.5c4.2 0 9.3-1.7 9.3-5.9 0-2-1-3-1.8-4.8a18.8 18.8 0 01-2.1-8.5c0-2.8.3-4.5 1.9-6.7 1.6-2.3 3.6-2.9 6.5-2.9z"/>
+  <g fill="none" stroke="#703d29">
+    <path stroke-linejoin="round" stroke-width=".7" d="M272.4 159a3.6 3.6 0 002.4 2.4c.8.3 2.7.2 3.8-1.4 1-1.2 1-2.8.6-4a4.7 4.7 0 00-1.7-2.2l-5.1 5.2z"/>
+    <path stroke-linecap="round" stroke-width=".7" d="M401 236.1c-1.2-2.9-4.3-1.6-4.4 0-.5 3.7 2.7 4.8 5 4.2a4 4 0 002.5-2c.6-1 .8-2.4.4-3.7a4.9 4.9 0 00-.8-1.6 5 5 0 00-1.3-1.2c-.9-.6-1.9-.6-3.4-.6-5.5 0-10.4 6.5-12 13.4-.6 2.2-1.3 7.3-.3 12a22.4 22.4 0 005.9 11.3 25.7 25.7 0 009.9 5.8 7.9 7.9 0 004 .1c3.2-.7 4.7-3.8 3-7-1.3-2.5-5.3-4-7.2-.6-.1.3-.4.9-.4 1.5 0 .9.4 2 1 2.4 1.5.9 3.8.6 3.7-2"/>
+    <path stroke-width=".8" d="M383.8 274a11.3 11.3 0 016.6-3.7c3-.4 5.6.5 8.2 2a18.5 18.5 0 0110.8 17c0 3.6-1 7.5-2 9.4-.8 1.7-3 9-15.3 14-7.1 3-18 3.6-25.7 4-10.4.3-20 .7-25.5 7.6"/>
+    <g stroke-width=".7">
+      <path d="M386.4 285.7c-.3-1 0-2.1.8-3.3 1.2-1.6 3.7-2.1 6-1a7.4 7.4 0 012.5 2.2l1.1 1.6c.7 1.1 1 2 1 2.5 2.5 7-1.4 14.5-6.5 17.6-4 2.4-8.7 3.4-14.4 4-2.5.4-4 .3-6.5.5h-9.6a70.1 70.1 0 00-7.2 0c-2.9.3-5 .4-7.6.8-1.6.2-3.4.5-5.4 1-.6 0-1.2.2-1.8.4l-1.2.3c-3.6 1.1-7 2.4-9.8 4.2-.8.5-1.8 1-2.5 1.7l-1.3 1.2c-2 2-3.9 4-4.4 6.7v1.6c0 1.8 1.4 4.3 5.4 5m5.5-170c.8 1.4 1.3 2.3.8 3.9-.6 1.7-1.8 2.8-3.6 2.8-4 0-6.3-4.8-4.5-7.8 3.2-5.3 9.3-2.3 15 .3-.3-1.3-.8-1.8-.7-3.5.1-4.2 3.2-6 4.5-10 .7-2.3 1-4.3-.7-6-1.5-1.3-3.2-1.3-5.1-.6-3.8 1.5-8.5 5.9-16.6 6-8.2-.1-12.8-4.5-16.7-6-2-.7-3.6-.7-5.1.7-1.7 1.6-1.4 3.6-.7 6 1.3 3.8 4.4 5.7 4.5 10 0 1.6-.4 2-.7 3.4 5.7-2.6 12-5.9 15-.3 1.7 3.2-.5 7.7-4.5 7.7-1.8 0-3-1-3.6-2.7-.4-1.5 0-2.8.8-4"/>
+      <path stroke-linecap="round" d="M314.6 159.9a5.3 5.3 0 012.4 5c-.2 2.5-.8 3.1-2.8 4.5m2.4-3.8c-.1 1.5-.7 2.5-2.3 3.1"/>
+    </g>
+    <path fill="#c7b37f" stroke="none" d="M276.7 153.3l.7.5.8.8.5 1 .2.8v1.9l-.2.8-.5.6-.6.6-.9.5-1 .2-1 .2-1-.5-.9-.6-.5-.8-.4-1v-.4l4.8-4.6z"/>
+    <path stroke-linecap="round" stroke-width=".7" d="M275.2 157.2c-.3-1.7-2.2-2-3-1-1.1 1.5-.3 4 2 4.7a4 4 0 003.9-1.4c1-1.3.9-2.8.5-4a4.5 4.5 0 00-1.7-2.2c-2.7-2-7.1-1.6-8.6 2-1.8 4.4 2.2 7.8 6 10.3 4.6 3.2 10 3.8 14 3.8 9.2-.1 16.2-4.5 20.7-7 1-.6 2.1-.5 2.7.2a2 2 0 01-.3 2.7"/>
+    <path stroke-width=".7" d="M248 281.2l-2 .7-2 1.6-1 1.3-1.1 2-.5 1.5-.4 1.8-.2 1.4m19-10.1l-.1 1.8-.3 1.2-1 2.2-1.3 1.8-1.5 1.2-1.1.5-1.6.4"/>
+    <path stroke-width=".8" d="M319.7 329.1c-.3 1.7-1.9 3.6-5.3 4.2l-.6.2"/>
+    <path stroke-width=".9" d="M404.2 276.2a18.3 18.3 0 015.6 13.5c0 3.6-1 7.5-2 9.4-.8 1.7-3 9-15.3 14a85 85 0 01-25.6 4c-10.3.3-19.8.7-25.4 7.3"/>
+    <path stroke-width=".6" d="M387.5 282.9c.8-1 3.5-2.4 5.8-1.1a6.2 6.2 0 012.3 2"/>
+    <path stroke-width=".9" d="M401.6 273.8l1.4.5a7 7 0 004 0c2.8-.8 4.6-3.4 3.2-6.9a6 6 0 00-1.8-2.1"/>
+    <path stroke-linecap="round" stroke-width=".7" d="M240.3 199.8c-2 1.1-3.3 1.4-4.8 3.1a28.1 28.1 0 00-2.6 6.8m46-51.7c0 1.8-1.2 2.8-3 3.2"/>
+    <path stroke-width=".6" d="M397.1 192a19 19 0 0118.6 19.8c0 16-9.9 18.5-13.8 19.6"/>
+    <path stroke-width=".7" d="M398.4 192c8.1-.3 16.5 5.7 16.9 20.7.3 11.7-8 17-12 18"/>
+    <path stroke-width=".6" d="M393.8 248.4l.1-1.6.6-2.5.7-2 .9-1.6 1-1.3m7.8-3.4v1.5l-.5 1-.7 1.1-.8.6-1.2.5h-1.1l-.8-.1m-14.3-52.8l.3-1.7.8-1.6 1-1.5 1.6-2.2 1.4-1.4 2-2.2 2-1.9 1.1-1.3 1.5-1.9 1.4-2 .8-1.7.5-2.2.1-2.7-.2-.8m-12.3 128.2l1.6-.4 1.2-.6.7-.7.5-.8.3-1.2v-.9m-158.2-12.1h2.7l1.6-.6m5-36.5l-.2 1.4-.4.6-.4.6-.7.5-.7.3-1 .1h-.6m9.9-15.5l-.3 2.1-.5 1-.8 1.2-1.2.9-1.2.6-2.3.5m15.3-39.7l-.5 1.3-.5 1-.8 1-1 1-1.2.5-1.1.3-.6-.1m.3-6.2v1"/>
+    <g stroke-width=".6">
+      <path stroke-linecap="round" d="M254.3 224a6.9 6.9 0 01-2.1 1.4m150.5 44.8l.5.2c1.4.8 4.2-.2 3.4-2.4"/>
+      <path d="M397.8 239.6c1 1.3 2.9 1.7 4.4 1.3a4 4 0 002.5-2c.6-1 .8-2.4.4-3.7a4.9 4.9 0 00-.9-1.6 6.8 6.8 0 00-1.3-1.5l-.4-.2m6.4 34a4 4 0 00.1-.7 4 4 0 00-1.3-3l-.8-.8m.4.5c0-1.8-1.5-3.2-3.4-3.5m-4.2 2.8l-1.3-1a15.7 15.7 0 01-4.3-10.7c0-4.2 1.6-8.4 3.6-10M341.2 324l1.8-1.6 1.2-1 2.3-1.4 2.2-1 1.6-.5 3-.6 3.6-.6m-29.5 19.4a17 17 0 01-7.6 6.1 17.7 17.7 0 01-7.6-6.1"/>
+      <path stroke-linecap="round" d="M314.4 332.6a10 10 0 01-2.2 4.2"/>
+      <path d="M314.7 330.5l-.4 2.2M312 337l-1 1-1.7.9-2 .6m-5.6-177.8c.3-.8.5-1.4.5-2.6-.1-4.2-3.2-6.1-4.5-10-.7-2.3-1-4.3.7-6 1.4-1.4 3.2-1.4 5-.6 4 1.5 8.6 5.8 16.7 6-8.1-.2-12.8-4.5-16.6-6-2-.8-3.8-1-5.3.5-1.7 1.6-1.2 3.8-.5 6.1 1.3 3.9 4.2 5.8 4.3 10 0 1.2-.3 1.8-.5 2.6M320 148c8-.4 14.9-5.8 17.1-6.3 2-.4 3-.2 4.5 1.1-1.4-1.3-3-1.2-5-.5-3.8 1.5-8.4 5.8-16.6 6m79.6 112.9a15.5 15.5 0 01-6.2-12.4c0-4.1 1.7-8.4 3.6-10m-70 97.6c-1.3 2-4.3 5-7.6 6.2a17.7 17.7 0 01-7.6-6.2"/>
+      <path stroke-linecap="round" d="M306.7 163.7l2.3-1.3c1-.6 2.3-.5 2.9.2.6.7.7 2-.2 2.8"/>
+      <path d="M294.7 169.3c5.5-1.2 10-3.6 13.4-5.5M340.3 328c.5.3.8 1 .8 1 .1.2.3.5.3.8.3 1.5-.7 2.4-2 2.6-1.7.2-3-.8-3.5-2M294.4 169c5.5-1.1 10-3.6 13.4-5.5m97.6 106.9c-1 .4-1.6.3-3-.2l-1.8-1a20.7 20.7 0 01-8.4-9 18.8 18.8 0 01-1.7-4.6 12 12 0 01-.5-3.3 25.6 25.6 0 014.7-15.3c1.1-1.6 2.1-2.5 4.2-2.6m-143.7-39.3a7.1 7.1 0 012.7 5.7c0 3.1-2.6 8.2-9 10a8.3 8.3 0 01-6.3-.8"/>
+      <path d="M256.3 205.6c1.1.8 1.6 1.7 1.6 3.3 0 1-.7 2.4-1.9 3.7a12.4 12.4 0 01-8.8 4c-2 0-4-.4-6-1.7a9 9 0 01-3.8-5.4"/>
+      <path d="M256.2 212.3c1.3 1.2 1.7 2.7 1.7 4.6 0 2.7-1.1 4.8-3.7 7-.6.6-1.2 1-2 1.5m129.5-22.1v3.5m-.3-4.4v5m.3-15.8v6.6m-.3-8v8.9m-1.9 82a18.7 18.7 0 01-4.2 5.6 19.6 19.6 0 01-5.8 4.1 24.6 24.6 0 01-6.6 2.2 33 33 0 01-6.8.9c-2.5 0-3.9 0-6.4-.2-2.6-.2-4-.6-6.7-.8-2.2-.2-3.4-.4-5.6-.3a28.3 28.3 0 00-11 1.8c-2.6 1-5.7 3-6.3 3.8a22 22 0 00-6.4-3.8 22 22 0 00-5.1-1.4c-2.3-.4-3.5-.4-5.8-.4-2.2 0-3.4.1-5.6.3-2.6.3-4 .6-6.7.8-2.5.2-3.9.3-6.4.2a33 33 0 01-13.4-3 19.5 19.5 0 01-6.4-4.8m42.1 53.4l1.8-.2m30.3-2.4l1.8-.1 1.7-.7 1.2-.8 1.7-2 .3-.6.3-1.7v-.8m47-136.7c.7-2.6-.2-5.4-2.8-5.3m-132 46.5a8.2 8.2 0 01-3.5 4.7m3.6-46.7a6.5 6.5 0 01-3.6 4c-1.9.8-4 0-5.2-.8"/>
+      <path stroke-linecap="round" d="M243.8 202.4c1.5.8 3.1-.4 2.8-2.4a2.9 2.9 0 00-2.5-2.2"/>
+      <path d="M250.2 286.6c.3.3.4.7.8.8.7.2 1.2.4 1.9-.5.8-1.1.3-2.8-.5-3.9a5 5 0 00-5.8-1c-.8.5-1.7 1-2.6 2.2l-1.1 1.6c-.7 1.1-1 2-1.1 2.4-2 5.9.4 12 4.1 15.7"/>
+      <path stroke-linecap="round" d="M340.2 327.8l.7.8.2.9c.3 1.5-.7 2.4-2 2.6-1.6.2-2.8-.8-3.3-2"/>
+      <path d="M389.4 154.8a7.4 7.4 0 016.3 7c0 4.4-1.5 6-3.8 9.2-2.5 3.4-10.7 9.6-10.7 16.7 0 4.3 1.2 7 4.3 8.4 2 1 4.3 0 5.4-1 2.6-2.4 1.5-6.5-1.2-7-3.2-.6-3.9 4.6-.7 4.3m17.9 69a3.7 3.7 0 00-3.6-3 3.7 3.7 0 00-3.7 3.7c0 1 .4 2 1 2.6"/>
+      <path d="M383.9 195.1a7.1 7.1 0 00-2.7 5.7c0 3.1 2.6 8.2 9 10 2.4.7 4.8.6 6.2-.3m-156-10.3a9.4 9.4 0 00-4.8 3.5 16.9 16.9 0 00-2.2 12.7 15.8 15.8 0 002.3 5.6 8 8 0 001 1.2l1.2 1m64 92c4.9 2.1 8.4 3.7 11.4 8.5a10 10 0 011.2 4.9c0 2.7-1 5.7-3.3 7.6a8.3 8.3 0 01-6.7 2c-1.9-.2-3.7-1.6-4-2.6M254 224.1c2.7 2.2 3.9 4.2 3.9 7.5a8.4 8.4 0 01-4 7.5"/>
+      <path stroke-linecap="round" d="M251.5 236.4c4 5.1 6.3 8.1 6.4 14.1.1 5.7-1.7 9.6-5 13.7"/>
+      <path d="M329.8 169.3a4.1 4.1 0 001.5-2.2c.5-1.5.5-2.8-.2-4 1 1.4 1 2.5.7 4-.1 1-.8 1.5-1.6 2.3m51.5 86.1v16.2l-.1 2.5a34.4 34.4 0 01-.3 1.7"/>
+      <path d="M381.4 254v19.9l-.5 2.6m.5-43v14.6m.3-13.4v11.8m0-26.8v8.8m-.3-9.9v11m.3-19v3.5m-.3-4.2v5m-1.8 65.2l-.4.7a18.7 18.7 0 01-4.1 5.7 19.6 19.6 0 01-5.9 4 24.6 24.6 0 01-6.5 2.2c-2.7.6-4.2.8-6.9.9-2.5 0-3.9 0-6.3-.2-2.7-.2-4.1-.5-6.8-.8-2.2-.2-3.4-.3-5.6-.3-2.2 0-3.5 0-5.7.4a22 22 0 00-5.2 1.4c-2.7 1.1-5.7 3-6.4 3.8-.6-.8-3.7-2.7-6.3-3.8a22 22 0 00-5.2-1.4c-2.2-.4-3.5-.4-5.8-.4-2.2 0-3.4.1-5.6.3-2.6.3-4 .6-6.7.8-2.5.2-3.9.3-6.3.2a33 33 0 01-13.5-3 19.5 19.5 0 01-5.8-4.1 22 22 0 01-2.5-2.8m-2-3.2a10.1 10.1 0 01-2.3 7.7c-.8.9-2.6 2.6-5 2.6-3.7 0-4.8-2.5-5-3.2"/>
+      <path d="M255.6 278.9c.7.7 1.3 1.5 1.9 2.5 1 1.8.6 4.8-.1 6.2a4.4 4.4 0 01-.3.4m-20.3 18c2.3 2.4 5.7 5 10.9 7.1 7.1 3 18.1 3.6 25.7 4 10 .3 19.3.7 25 7m17.3-4a12 12 0 014 5.5m-7.3 11.5a8.2 8.2 0 01-.7.7 8.3 8.3 0 01-6.6 2c-2-.2-3.8-1.6-4.3-2.6m-5.4-2.9l.3.4a7.6 7.6 0 005.1 2.4m27 0a18 18 0 01-7.7 6.1 17.7 17.7 0 01-7.6-6.1l-.3-.5m15.6.4l.7.7a8.3 8.3 0 006.7 2 5.5 5.5 0 004-2.5l.5-.7"/>
+      <path d="M339 336.6l-.7 1.2-1.1 1-1.7.7h-1.6"/>
+      <path d="M343 325.3a7.7 7.7 0 012.4 2.9c.3.7.4 1.5.5 2.3a5.8 5.8 0 01-1.5 4.2 7.5 7.5 0 01-5.4 2.4 5.5 5.5 0 01-.4 0m.2-.2a6.8 6.8 0 01-5.2-2.2m63.7-67.9a23.8 23.8 0 01-4.8-6.4 18.8 18.8 0 01-1.7-4.5 12 12 0 01-.5-3.3 26 26 0 014.6-15.3c.7-.8 1.4-1.8 2.1-2.2m-1.3-75.9c2.5.2 4.8 3 4.8 5.7 0 3.8-1.3 5.5-4.4 9.3-2.6 3.2-10.6 9-10.3 14.5 0 1 .5 2 1.1 2.8m-3.2 3.5a7 7 0 002 1.4 5 5 0 004.3-.3M369 153a6 6 0 012.2 2.6c1.8 4.5-2.2 7.9-6 10.4a21.3 21.3 0 01-8.3 3.3"/>
+      <path d="M364.6 161.6a4.2 4.2 0 01-3.1-1.5 3.4 3.4 0 01-.7-1m-15 4.9a4.6 4.6 0 01-1.2-1c-1-1-1.5-2.3-.8-4.4.6-1.9 3.7-7.2 3.8-10.9.2-5.6-2-9-5.3-10.2"/>
+      <path stroke-linecap="round" d="M347.3 146.5l-.1 2-.6 2.2-1 3-1 1.9-.8 1.9-.4 1.3-.2 1 .1.9m38 126.3l.6.8c.7 1 3.2 3 5.5 3 3.7 0 4.6-2.6 4.7-3.2.5-2.9-.5-3.6-2-4.5 0 0-.8-.4-1.9-.2"/>
+      <path d="M237 274.4a6.9 6.9 0 01-3.7 0c-2.9-.9-5.2-3.6-4-7m13.4-31.8c.3.3.4.7.4 1 .4 3.8-2.8 4.8-5 4.2a5.6 5.6 0 01-3-2.3 4.7 4.7 0 01-.7-2.3m22-23.6c.6.5 1 1 1.3 1.7m-1.1-8.5c.5.4.9.9 1.1 1.3"/>
+      <path stroke-linecap="round" d="M257.9 210.5a8.5 8.5 0 01-1.6 2.4 12.4 12.4 0 01-8.8 4c-2 0-4-.4-6-1.7a9.5 9.5 0 01-4-5.6"/>
+      <path d="M255.4 195.3a7.8 7.8 0 012.4 3.4"/>
+      <path stroke-linecap="round" d="M257.8 203.2c-.9 3-3.5 6.6-8.6 7.9-2.4.6-5.6-.2-6.6-1"/>
+      <path d="M240 202.6c.3 2.6 2 4.6 5.4 4.6 4.7.1 7.6-6.7 3.4-11.5"/>
+      <path stroke-linecap="round" d="M229.4 225.5c.7.9 1.5 1.7 2.4 2.4a16.8 16.8 0 006 3.3m5.2.5c4.2-.5 6.6-3.7 6-7.3-.3-2.8-2.8-5-4.6-5.1"/>
+      <path d="M249.8 188.1c1.9 0 3 1.6 2.9 3"/>
+      <path stroke-linecap="round" d="M249.4 163a11.5 11.5 0 005 5.9m144.2 31c1.7 2.3.6 7-4 7a5.2 5.2 0 01-4.5-2.5"/>
+      <path d="M381.7 169.1V185"/>
+      <path stroke-linecap="round" d="M243.8 202.3c1.4 1 3.3-.7 2.5-2.6-.5-1.2-2.2-2.6-4.7-.9-2.8 1.9-2 7.8 3.2 7.9 4.7 0 7.6-6.8 3.4-11.6-4-4.6-11.3-3.6-16 .2A21.4 21.4 0 00225 207a22.5 22.5 0 000 9.2 20.9 20.9 0 003 7.5l1.3 1.7c.8.8 1 1.2 2 2a15 15 0 0010.4 3.7c4.6-.2 7.3-3.4 6.8-7.3-.4-3.8-4.2-5.7-6.7-3.9-1.7 1.2-2.3 4.9.7 5.8 1.6.5 3.1-1.7 2-3M374 150.9c2.7-1.4 4.8-1.2 6.3 1a9.9 9.9 0 011.6 7.2 9.2 9.2 0 01-3.5 5.8"/>
+      <path stroke-linecap="round" d="M380.5 152c3.1-2 6.5-1.1 8.3 1.6 1.3 2 1.7 3.6 1.6 6.1a11.2 11.2 0 01-5.7 9.2"/>
+      <path d="M395 159.2c2.6.2 4.6 2.5 4.6 5.1 0 3.8-1 5.5-4 9.3-2.7 3.3-10.6 9-10.4 14.6 0 2.1 1.8 4 3.3 4.2"/>
+      <path stroke-linecap="round" d="M395.4 202.3c-1.5 1-3.3-.6-2.5-2.4.5-1.2 2.2-2.8 4.7-1.1 2.7 1.9 2 7.8-3.3 7.9-4.7 0-8-6.6-3.4-11.6 4-4.6 11.7-3.7 16.5.1 2 1.6 6.1 6 7 12 1 7 .9 15.6-6.4 21-3 2.1-7 3.1-10.6 3-4.6-.2-7.3-3.5-6.8-7.4.5-3.8 4-5.4 6.7-3.9 2.8 1.5 2.3 5.4-.7 5.8-1.7.2-3.1-1.7-2-3"/>
+      <path d="M392.9 199.9c.8-3.5 3.7-3.8 6.2-3.8 6.5.1 11.1 8 11.2 15.5 0 9.5-4 15.2-11 15.5-1.9 0-5-.8-5-3"/>
+      <path stroke-linecap="square" d="M397 198.3c6.9 1.6 9.3 7.8 9.3 13.8 0 4.9-.5 11.6-10 13.9"/>
+      <path d="M408.4 265.3a3.9 3.9 0 10-6.3 2.4"/>
+      <path stroke-linecap="round" d="M394.4 259.4c1.4 2 3 4.1 6.3 6m-1.3 10.5c-3.2-2.2-9.5-5-15-2.2a7.6 7.6 0 00-4.4 4.4 10 10 0 001.8 9.5c.9 1 2.7 2.6 5 2.7 3.8 0 4.7-2.6 4.8-3.2.4-2.8-1.2-3.9-2-4.1-.7-.3-2.8-.2-3.2 1.3-.2.5-.2 1.3.2 2"/>
+      <path stroke-linecap="round" d="M340.5 328.4c1 2.2-.2 3.2-1.6 3.4-2.2.3-3.3-1.4-3.4-3a4.4 4.4 0 014.3-4.7c2.3 0 4.1 1.5 5 3.5.3.7.5 1.5.5 2.4a5.8 5.8 0 01-1.4 4.1 7.5 7.5 0 01-5.4 2.5c-4.2.1-7.5-3.8-7.5-7.8 0-7.7 11.4-12 16-13a84 84 0 0117.9-2.4c3.5-.1 6.2 0 10.1-.5 3.5-.3 5.4-.5 9-1.3a27.2 27.2 0 0012.6-6.4c2.9-2.7 4.5-4.5 5.9-8.2a17 17 0 00-1.3-13.9 14.3 14.3 0 00-10.3-6.8c-3.7-.5-7 1.1-9 4.8-1 1.8-.6 4.8.1 6.2a6 6 0 004.8 3c3.8 0 4.7-2.6 4.8-3.2.4-2.8-1.2-3.9-2-4.2-.7-.2-2.8-.1-3.2 1.4-.2.5-.2 1.3.2 2"/>
+      <path stroke-linecap="round" d="M337.2 316.2c-4.8 2.1-8.4 3.7-11.4 8.5a9.9 9.9 0 00-1.2 4.9c0 2.7 1.1 5.7 3.3 7.6a8.3 8.3 0 006.7 2c2-.2 3.7-1.6 4-2.6"/>
+      <path d="M385.1 224.1c-2.3.8-3.9 4.2-3.9 7.5a8.4 8.4 0 004 7.5"/>
+      <path stroke-linecap="round" d="M387.6 236.4c-4 5.1-6.3 8.1-6.4 14.1 0 5.7 1.7 9.6 5.1 13.7"/>
+      <path d="M365.9 152l.3-.5c1.7-2.4 4.7-3.1 6.9-1.5 2.6 2 3.3 5.4 2.6 9-.5 2.2-2 4.1-4 5.5"/>
+      <path stroke-linecap="round" d="M265.1 150.8c-2.6-1.2-4.7-1-6.3 1a8.7 8.7 0 00-1.6 7.2c.6 2.7 1.4 3.8 3.5 5.8"/>
+      <path d="M258.6 152a5.8 5.8 0 00-8.3 1.6 9.1 9.1 0 00-1.6 6.1c.2 4.2 2.8 7.6 5.8 9.2"/>
+      <path d="M249.7 154.8a6.8 6.8 0 00-6 6.6c0 4.5 1 6.3 3.5 9.6 2.5 3.4 10.7 9.6 10.7 16.7 0 4.3-1.2 7-4.3 8.4-2 1-4.3 0-5.4-1-2.6-2.4-1.5-6.5 1.2-7 3.3-.6 3.9 4.6.7 4.3"/>
+      <path d="M244 159.2c-2.5.2-5 2.3-5 5 0 3.8 1.5 5.6 4.6 9.4 2.6 3.3 10.1 9 9.9 14.5 0 2-1.5 4.6-2.9 4.3"/>
+      <path stroke-linecap="round" d="M238 236.1c1.3-2.9 4.4-1.6 4.6 0 .4 3.7-2.8 4.8-5.1 4.2a4 4 0 01-2.5-2 4.8 4.8 0 01-.4-3.7 4.9 4.9 0 01.9-1.6 5 5 0 011.2-1.2c1-.6 1.9-.6 3.4-.6 5.5 0 10.4 6.5 12 13.4.6 2.2 1.3 7.3.3 12a22.4 22.4 0 01-5.8 11.3 25.8 25.8 0 01-10 5.8 7 7 0 01-3.9.1c-2.8-.9-4.6-3.5-3.2-7 1.2-2.6 5.4-4 7.3-.6.2.3.4.9.4 1.5 0 .9-.4 2-1 2.4-1.4.9-3.7.6-3.6-2"/>
+      <path d="M233.8 270.4c1 .4 1.6.3 2.9-.2l1.8-1c2.6-1.5 5.6-3.8 8.4-9.1a18.8 18.8 0 001.7-4.5c.3-1 .5-2.2.6-3.3a25.6 25.6 0 00-4.8-15.3c-1.1-1.6-2-2.5-4.2-2.6m-9.5 31a3.9 3.9 0 116.3 2.3"/>
+      <path d="M232.2 261.4a3.7 3.7 0 013.7-3 3.7 3.7 0 013.6 3.7 3.8 3.8 0 01-1 2.6"/>
+      <path d="M239.4 261.3a15.5 15.5 0 006.2-12.4c0-4.1-1.6-8.4-3.6-10"/>
+      <path stroke-linecap="round" d="M244.7 259.4a16.5 16.5 0 01-6.3 6"/>
+      <path d="M254.6 273.7c-1-2.2-2.8-3.2-5.8-3.5-3-.3-5.5.5-8.2 1.9a18.6 18.6 0 00-10.8 17 25 25 0 002 9.5c.9 1.6 3 9 15.3 14a86.1 86.1 0 0025.7 3.9c10.4.4 20 .8 25.6 7.6"/>
+      <path stroke-linecap="round" d="M239.7 275.9c3.3-2.2 9.5-5 15.1-2.2a8 8 0 014.3 4.4 10 10 0 01-1.8 9.5c-.9 1-2.7 2.6-5 2.7-3.8 0-4.7-2.6-4.8-3.2-.4-2.8 1.2-3.9 2-4.2.7-.2 2.8-.1 3.2 1.4.2.5.2 1.3-.2 2"/>
+      <path d="M252.7 285.7c.3-1 .2-2.2-.8-3.3a5.1 5.1 0 00-6-1c-.7.5-1.6 1-2.4 2.2-.4.4-1 1.1-1.2 1.6-.7 1.1-1 2-1 2.5-2.5 7 1.5 14.4 6.5 17.6 4.4 2.8 8.8 3.6 14.4 4 2.5.3 4 .3 6.5.5h9.6a70.1 70.1 0 017.2 0c3 .3 5.1.4 7.6.8 1.6.2 3.5.5 5.4 1 .6 0 1.2.2 1.8.4l1.2.3c3.6 1.1 7 2.4 9.8 4.2.8.5 1.8 1 2.5 1.7l1.3 1.2c2 2 4 4 4.4 6.7v1.6c0 1.8-1.4 4.3-5.3 5"/>
+      <path d="M298.6 328.4c-1 2.2.2 3.2 1.6 3.4 2.2.3 3.3-1.4 3.5-3a4.4 4.4 0 00-4.4-4.7 5.5 5.5 0 00-5 3.5 6.9 6.9 0 00-.5 2.4 5.8 5.8 0 001.4 4.1 7.5 7.5 0 005.4 2.5c4.2.1 7.5-3.8 7.5-7.8 0-7.7-11.4-12-16-13a84 84 0 00-17.9-2.4c-3.5-.1-6.2 0-10.1-.5-3.5-.3-5.4-.5-9-1.3a27.2 27.2 0 01-12.5-6.4 17 17 0 01-4.7-22 14.3 14.3 0 0110.3-6.9c3.8-.5 7 1.1 9 4.8 1 1.8.6 4.8-.1 6.2a6 6 0 01-4.8 3c-3.8 0-4.7-2.6-4.8-3.2-.4-2.8 1.2-3.9 2-4.2.7-.2 2.8-.1 3.2 1.4.2.5.2 1.3-.2 2"/>
+      <path stroke-linecap="round" d="M273.3 152l-.4-.5c-1.7-2.4-4.7-3.1-6.9-1.5-2.6 2-3.3 5.4-2.5 9a9 9 0 004 5.5"/>
+      <path d="M366.8 159.6c-4 4.4-8.1 5.8-14.1 6-2 0-5.5-.6-7.6-2.1-1.3-1-2.8-2.6-1.9-5.5.6-1.9 3.7-7.2 3.8-10.9.3-5.6-1.9-8.7-5.3-9.9-6.2-2.2-13 4-17 5.4-2.1.7-3.2.8-5.1.8-2 0-3-.1-5.2-.8-4-1.4-10.7-7.6-17-5.4-3.4 1.2-5.5 4.3-5.3 10 .1 3.6 3.2 9 3.8 10.8 1 2.9-.5 4.5-1.9 5.5-2 1.5-5.7 2.1-7.5 2-6-.1-10.1-1.5-14.1-5.9"/>
+      <path stroke-linecap="round" d="M297.3 314.4c.8.3.2-.2 5.3 2a22 22 0 0111.3 8.9 10.5 10.5 0 01.9 7.3"/>
+      <path d="M297.7 336a8 8 0 003.2.9c4.2.1 7.5-3.8 7.5-7.8 0-2.8-1.5-5.2-3.6-7"/>
+      <path stroke-linecap="round" d="M298.6 328.4c-1 2.3.4 3.5 1.8 3.7 2.2.2 3.4-1.4 3.6-3a4.5 4.5 0 00-2.2-4.2"/>
+      <path d="M390.1 154.8c3.2 0 6 3.6 6 7.2 0 4.3-2.2 6.9-3.9 8.8-1.3 1.6-2.7 3-4.4 4.7"/>
+      <path stroke-linecap="round" d="M386.3 151.4a9 9 0 012.8 2.4c1.3 2 1.7 3.7 1.6 6.2-.2 4.2-3.2 7.1-6 9m-4.7-17.6l.6.7c1.9 2.2 2 5.4 1.6 7.2a8.2 8.2 0 01-3.8 5.4m-5-14.4c2.6 2 3.4 5.4 2.5 9-.6 2.5-2.2 4-4.2 5.2m11.1 41.1c.3 1 .9 1.3 1.5 2a13.5 13.5 0 006.2 3.5c2.4.7 4.6.2 6.3-.9m-163 54c1.2 0 2.5.9 3.3 2.3.1.2.4.8.4 1.5 0 .9-.4 1.8-1 2.2-1.5 1-4 .5-4-2"/>
+      <path d="M241.5 231.3c5 1 9.7 6.9 11.2 13.3.6 2.3 1.3 7.3.3 12a22.4 22.4 0 01-6 11.4 16.5 16.5 0 01-2.1 1.9l-1 .7m-8-12.1c2 0 3.8 1.9 3.8 4a3.8 3.8 0 01-1 2.6"/>
+      <path d="M234.6 260.7c2.1 0 4.1 2 4.1 4.2a3.9 3.9 0 01-1.4 3"/>
+      <path stroke-linecap="round" d="M254 239.5a18 18 0 013.8 7.7m0 8.5a17.3 17.3 0 01-1.5 4 17.8 17.8 0 01-3.6 4.7"/>
+      <path d="M254.3 224.3c1.8 1.5 3 3 3.5 4.8"/>
+      <path stroke-linecap="round" d="M257.9 219.5a10 10 0 01-3.4 4.6m-9.2-17.2l2.2-.6 1.3-1 .8-1.1.7-1.8.3-1.5"/>
+      <path d="M241 199.3c-.7.2-1.6.4-2.5.8a9 9 0 00-3.5 3 17 17 0 00-2.2 12.7 15.8 15.8 0 002.3 5.6l1 1.4c1.4 1.3 2.6 2 4.6 1.7"/>
+      <path stroke-linecap="round" d="M253 189.8c-.3 1.3-1 2.9-3 2.7"/>
+      <path d="M245.7 198.5c-2-1.9-6-2.4-10.1.2L234 200a8.8 8.8 0 00-1.4 1.6 17.5 17.5 0 00-2.4 5c-.7 3-.7 5.6-.6 6.3 0 1 .2 1.9.3 2.7.6 2.8 1.4 4.8 2.3 6.2.9 1.5 3 5 7.7 5.4 1.8.1 4.8-.7 5-3"/>
+      <path stroke-linecap="round" d="M363.8 157c.3-1.6 2.3-1.9 3-1 1.2 1.6.4 4.2-2 4.9a4 4 0 01-3.8-1.4c-1-1.3-.9-2.8-.5-4 .2-.8.9-1.5 1.7-2.2 2.7-2 7.1-1.6 8.6 2 1.8 4.4-2.2 7.8-6 10.3-4.6 3.2-10 3.8-14 3.7-9.2 0-16.1-4.4-20.7-7-1-.5-2.1-.4-2.7.3a2 2 0 00.3 2.7"/>
+      <path stroke-linecap="round" d="M365.6 155.5c1 0 1.2.4 1.5.8 1.2 1.5.3 4.1-2 4.9m17.8 51.5c-3.5 3.8-.2 10.3 2.4 11.8.9.7 1.3.3 2 .7"/>
+      <path d="M383.1 205.4c-1.1.8-1.5 1.7-1.6 3.3a5.3 5.3 0 001.4 4 14 14 0 009.3 3.7c2 0 4-.4 6-1.7a9 9 0 003.8-5.4m-20.8 61.8l-.2 2.5a18.9 18.9 0 01-2 7 18.7 18.7 0 01-4.2 5.6 19.6 19.6 0 01-5.9 4 24.6 24.6 0 01-6.5 2.3 43.8 43.8 0 01-13.2.6c-2.7-.2-4.1-.5-6.8-.8-2.2-.1-3.4-.3-5.6-.3a28.3 28.3 0 00-10.9 1.9c-2.7 1-5.7 3-6.4 3.8-.6-.9-3.7-2.8-6.3-3.8a22 22 0 00-5.2-1.5c-2.2-.4-3.5-.4-5.8-.4-2.2 0-3.4.2-5.6.4-2.6.2-4 .6-6.7.7-2.5.2-3.9.3-6.3.2a33 33 0 01-7-.8 24.6 24.6 0 01-6.5-2.2 19.6 19.6 0 01-5.8-4.1 18.7 18.7 0 01-4.2-5.7 19 19 0 01-2-6.9c-.2-1-.2-2.5-.2-2.5V169.3h123.2v101.8z"/>
+    </g>
+    <g fill="#c7b37f" stroke="#c7b37f">
+      <path stroke-width=".3" d="M248 285.6a2.5 2.5 0 115 0 2.5 2.5 0 01-5 0zM232.5 268c0-1.3.8-2.3 1.8-2.3s1.7 1 1.7 2.3c0 1.2-.8 2.2-1.7 2.2-1 0-1.8-1-1.8-2.2z"/>
+      <path stroke="none" d="M241.3 223.6c0-1 .8-1.8 1.7-1.8 1 0 1.7.8 1.7 1.8s-.7 1.8-1.7 1.8-1.7-.8-1.7-1.8zM272 158c0-1 .5-2 1.4-2 .9-.1 1.7.6 1.8 1.6 0 1-.5 2-1.4 2-.9.1-1.6-.6-1.8-1.6z"/>
+    </g>
+    <g stroke="#c7b37f" stroke-linecap="round" stroke-width=".6">
+      <path d="M239.3 234c-.4.1-.6.2-.8.5-.3.3-.4.4-.6.9l-.2 1.2m4.7 26.7l1-1 .6-1 .5-1 .7-1.3m-1.3 14l-1.5.7-1.1.6a17.4 17.4 0 00-1.3.8l-1.2 1m15-37.9l-.8-.8-1-.8-.9-.8"/>
+      <path stroke-linecap="butt" d="M254.2 225l-1.2.5a5.1 5.1 0 01-1.5.3"/>
+      <path d="M237.4 208.4c.2.6.2 1 .5 1.5.2.7.5 1.1.9 1.7a8.3 8.3 0 002.6 2.7l1.5.8m-1-5.8l1.3.6a7.4 7.4 0 003 .6l1.8-.1m7.2-40.7l-2-1.2c-.9-.5-1.3-.9-2-1.5a9.3 9.3 0 01-1.1-1.3l-.8-1.3m7.5-4.6l.6 1.7a7.8 7.8 0 001.4 2c1 1 1.7 1.3 2.8 2.2m1.4-6c.3.7.3 1 .7 1.6.2.5.4.8.8 1.2l1.3 1.3c.7.6 1.2.7 2 1.1"/>
+    </g>
+    <path fill="#703d29" stroke-width=".2" d="M333.3 151.6c0-1.7-1.7-1.8-2.4-1.8-1.8 0-2.3 1.1-4.6 2.3a11.9 11.9 0 01-6.7 2 12 12 0 01-6.7-2c-2.3-1.2-2.7-2.3-4.6-2.3a2.3 2.3 0 00-2.2 2.4v.9l.3.2c0-.8.1-1.2.5-1.7a2.2 2.2 0 011.6-.8c1.8 0 2.5 1.2 4.8 2.4 3 1.6 4.2 1.9 6.7 2a12 12 0 006.8-2c2.3-1.2 3-2.5 4.8-2.5.6 0 1 .4 1.3 1v.9l.2.1c0-.3.2-.4.2-1z"/>
+  </g>
+  <g fill="#703d29">
+    <path d="M264.4 294c.5-.5.9-.3 1-.6 0-.2 0-.2-.3-.3l-.9-.2-.8-.4c-.1 0-.4-.2-.5 0-.1.4 1 .4.6 1.4a3.7 3.7 0 01-.8 1.2l-2.6 3-.2.1v-4.3l.1-1.8c.2-.4.8 0 .9-.4 0-.1 0-.2-.3-.3-.2 0-.5 0-1.1-.3l-1-.5c-.2 0-.5-.2-.6 0l.1.3c.4.2.5.4.5 1v7.4c0 .5.1.6.2.7.1 0 .2 0 .4-.3l5.3-5.7z"/>
+    <path d="M267.5 295.2c.3-1.1 1-.4 1-.8.1-.2 0-.2-.2-.3l-1.3-.4c-.4 0-.8-.3-1.2-.4 0 0-.3-.1-.4 0-.1.5 1.1.5.8 1.5l-1.7 5.5c-.3 1-1 .6-1.1 1v.1l1.2.4 1.6.5h.3c.2-.4-1.2-.3-.7-1.7l1.7-5.4zm3.7 1c.2-.6.5-.5.9-.4 1 .3 1.4 1.3 1 2.5-.2.6-.4 1.2-2 .8-.3-.1-.7-.2-.6-.5l.7-2.3zm-2.8 5c-.5 1.4-1.2.8-1.3 1.2 0 .2.2.2.3.3l1.6.4.8.3h.4c.1-.5-1-.3-.7-1.5l.6-2c.1-.4.1-.5.6-.3.6.1.7.3.8.8l.3 2c.2.9.3 1.7 1 2 .5 0 1.2 0 1.4-.4l-.2-.2h-.3s-.3 0-.3-.3l-.7-3.6c0-.2.4-.2.8-.3a2 2 0 001-1.3c.1-.5.4-2.2-1.8-2.9l-2.1-.5-1.2-.4h-.3c-.1.5 1.1.4.7 1.7l-1.5 5zm8.4 2.5c-.4 1.4-1.4.5-1.5 1 0 .2.1.3.3.3l1.5.3 1.4.4c.3 0 .5.2.6-.1 0-.3-1.3-.3-1-1.8l1.3-5.2c0-.6.2-.6.6-.5l1 .2c1.1.3.5 1.5 1 1.6.2 0 .2-.4.2-.6l.1-1v-.4l-3.3-.7-3.2-.8c-.1 0-.2 0-.2.2l-.5 1.5c-.1.1-.2.4 0 .4.5.1.5-1.5 1.7-1.2l.9.2c.4.1.5.2.4.8l-1.3 5.4zm12.7-3.3c.4-.6.8-.5.9-.7 0-.2-.2-.2-.4-.3h-.9l-.9-.3c-.1 0-.4-.1-.4.1-.1.4 1 .2.8 1.3 0 .2-.1.6-.6 1.3l-2 3.3-.3.2v-.2l-.7-4a5.4 5.4 0 01-.1-1.8c0-.5.7-.2.7-.5 0-.2 0-.2-.4-.3l-1.1-.1c-.4 0-.7-.2-1-.3-.2 0-.5-.1-.6.1l.1.2c.5.2.6.4.7.9l1.3 7.3c.1.5.2.7.3.7.1 0 .2 0 .4-.3l4.2-6.6zm.6 6.8c0 .3 0 .3.2.5.6.2 1 .6 1.7.7 1.4.2 2.6-.7 2.8-2.2.3-1.5-.3-2.1-1.4-2.9-1.3-.9-1.8-1.1-1.7-2 .1-.7.7-1 1.4-1 1.8.3 1.6 2.6 1.8 2.6.3 0 .3-.1.3-.4l.2-1.6v-.4h-.6c-.4 0-.7-.5-1.6-.7-1.2-.2-2.3.7-2.5 2-.2 1.2.4 1.8 1.2 2.4 1.6 1.1 2.2 1.4 2 2.4-.1 1-.9 1.4-1.7 1.3-1.2-.2-1.6-1.4-1.8-2.6 0-.2 0-.3-.2-.3s-.2.3-.2.5v1.7zm15.8-4.5c.3-.7.8-.6.8-.9 0-.2-.1-.1-.4-.2h-.9l-.9-.1c-.1 0-.4 0-.4.2 0 .4 1 0 1 1.1 0 .2-.1.6-.5 1.4l-1.8 3.5-.1.3-.1-.3-1.1-4a5.4 5.4 0 01-.3-1.6c0-.5.7-.3.7-.6 0-.2 0-.2-.4-.2h-1.2l-1-.2c-.2 0-.5-.1-.6.1l.2.2c.4.2.6.3.7.8l2.1 7.1.4.7c.1 0 .2 0 .3-.4l3.5-7z"/>
+    <path d="M307.6 308.5c0 1.2-1 1-1 1.5 0 .2.1.1.3.1h2.2l.4-.1c0-.6-1.4.2-1.4-2v-4.2l.1-.1.2.1 5.1 6.3.3.1.2-.3v-6.7c0-1.3 1-1 1-1.3 0 0 0-.2-.3-.2h-2.3c-.2 0-.2.1-.2.2 0 .4 1.3.2 1.3 1.3v4l-.1.4-.4-.3-4.2-5.3c-.2-.3-.1-.3-.4-.3h-1.8l-.2.1c0 .6 1.2-.2 1.2 2.1v4.6zM318 303c0-1.1.8-.7.8-1.1 0-.1 0-.2-.4-.2h-2.6s-.3 0-.3.2c0 .4 1.1 0 1.1 1.2v5.7c0 1.1-.8.8-.8 1.2 0 0 0 .2.2.2h2.8c.2 0 .3 0 .3-.2 0-.4-1.2.2-1.2-1.3l.1-5.7zm4.5 5.5c0 1.5-1.2 1-1.2 1.4 0 .2.2.2.4.2h3c.3 0 .5 0 .5-.3s-1.4 0-1.4-1.4V303c0-.6 0-.6.5-.6h1c1.2-.1.8 1.2 1.3 1.2.2 0 .1-.4.1-.6l-.1-1c0-.2 0-.4-.2-.4l-3.3.1h-3.3l-.2.3-.1 1.6.1.4c.5 0 .2-1.6 1.4-1.6h.9c.4 0 .5 0 .6.6v5.6zm6.3-2.2h-.4l.1-.5.7-2.2v-.2l.2.1 1 2.1.2.4c0 .2-.2.2-.4.2h-1.4zm1.8.5c.3 0 .3 0 .8 1l.2.8c0 .7-.7.6-.7 1 0 .1.2.1.4 0h1.2l1.3-.1c.3 0 .4 0 .4-.2 0-.4-.6 0-1-.7l-3.4-7-.3-.4c-.2 0-.2.2-.3.4L327 309c-.2.7-.8.7-.7 1h2.3c.2-.1.5 0 .5-.3s-1.2 0-1.3-.9l.2-1c.2-.8.4-.8.6-.8l2.1-.2zm8.3-5c-.1-.8 0-.8 1.2-1 2-.2 1.4 1.3 2 1.2.2 0 0-.4 0-.6l-.1-1.1c0-.1-.1-.2-.3-.2-1 0-1.7.2-2.4.3l-2.8.4c-.2 0-.3 0-.3.2.1.5 1.3 0 1.4 1l.7 5.5c.2 1.5-.7 1-.6 1.5 0 0 0 .1.2 0l1.4-.1 1.2-.1c.3 0 .5 0 .5-.3s-1.2.1-1.4-1.2l-.2-1.7c-.1-.7-.1-.9.3-1h.8c1.1-.2 1 1.1 1.3 1 .3 0 .2-.4.1-.5l-.3-2.1c0-.3-.2-.3-.2-.3-.3 0-.1 1.1-1 1.2l-.7.1c-.5.1-.5 0-.6-.5l-.2-1.7zm4 2.8c.4 2.3 2.1 3.7 4.2 3.3 3.4-.7 3.5-3.6 3.2-5.3-.5-2.5-2.3-3.7-4.4-3.3-2.5.5-3.5 2.7-3 5.3zm1.1-1c-.3-1.6 0-3.4 1.7-3.7 1.4-.3 3 .8 3.4 3.4.3 2 0 3.6-1.8 4-1.9.4-3-2-3.3-3.6zm8.3-4.1c-.1-.7.2-.8.6-.9 1-.2 1.8.5 2.1 1.6.2.7.3 1.4-1.3 1.8-.3 0-.7.1-.8-.2l-.5-2.3zm0 5.7c.4 1.4-.5 1.3-.5 1.6.1.3.3.2.4.1.6 0 1-.3 1.6-.4l1-.2c.2 0 .2-.1.2-.2 0-.4-1 .3-1.3-1l-.5-2c0-.4-.2-.4.4-.5.5-.2.7-.1 1.1.3l1.3 1.6c.5.6 1 1.3 1.8 1.1.5-.1 1-.5 1-.9l-.2-.1-.3.1s-.3.1-.4 0l-2.4-2.9.5-.6c.2-.4.4-.9.2-1.6-.1-.5-.7-2.1-3-1.6l-2.1.6-1.2.2c-.2 0-.3.1-.2.2 0 .5 1.1-.2 1.4 1l1.2 5.2zm8.7-2c.3 1.4-1 1.2-.9 1.6 0 .3.3.2.5.2l1.4-.5 1.5-.3c.3 0 .5 0 .4-.4 0-.3-1.3.4-1.7-1l-1.3-5.3c-.2-.5 0-.6.3-.7l1-.2c1.1-.4 1.1 1 1.5.9.3 0 0-.5 0-.7l-.4-1s0-.3-.2-.2l-3.2.9-3.2.7v.3l.1 1.6c0 .2 0 .4.3.4.5-.1-.3-1.6 1-1.9l.8-.2c.4-.1.6 0 .7.5l1.4 5.3zm5.5-7.3c-.3-1 .6-.9.4-1.3h-.3l-1.4.4-1.2.3s-.3 0-.3.2c.1.4 1.2-.2 1.5.8l1.6 5.6c.2 1-.6 1-.5 1.3 0 .1 0 .2.2.1l1.1-.3 1.6-.4c.3 0 .3-.1.3-.3-.1-.3-1.1.5-1.5-.9l-1.5-5.5zm2.3 2.7c.7 2.3 2.6 3.4 4.7 2.7 3.2-1.1 3-4.1 2.4-5.7-.8-2.4-2.8-3.3-4.8-2.7-2.4.9-3.2 3.2-2.3 5.7zm1-1c-.6-1.7-.6-3.5 1.1-4 1.3-.5 3 .4 3.9 2.9.6 1.8.5 3.6-1.2 4.2-1.8.6-3.2-1.5-3.8-3.2zm7.6-5.5c-.2-.7 0-.8.4-1 1-.3 2 .3 2.4 1.4.2.6.4 1.3-1.1 1.9-.3 0-.7.2-.8 0l-.9-2.3zm.8 5.6c.6 1.4-.4 1.4-.2 1.7 0 .3.2.1.4.1l1.5-.7.9-.2c.2-.1.2-.2.2-.3-.2-.4-1 .4-1.4-.8l-.8-1.9c-.2-.4-.2-.5.3-.7.5-.2.7-.1 1.1.3l1.6 1.4c.5.5 1.1 1.1 2 .8.3-.2.9-.7.7-1l-.2-.1-.2.2h-.5l-2.8-2.5.4-.7a2 2 0 000-1.6c-.1-.6-1-2-3.1-1.2l-2 .9-1.2.4-.2.2c.2.4 1.1-.4 1.6.8l2 5z"/>
+  </g>
+  <g fill="#fedf00" transform="matrix(.64 0 0 .64 0 16)">
+    <path fill="#d52b1e" d="M412.7 249.3h82.1v82h-82.1z"/>
+    <path id="a" fill="#fff" d="M451.2 313.8s0 3-.8 5.3c-1 2.7-1 2.7-1.9 4a13.2 13.2 0 01-3.8 4c-2 1.2-4 1.8-6 1.6-5.4-.4-8-6.4-9.2-11.2-1.3-5.1-5-8-7.5-6-1.4 1-1.4 2.8-.3 4.6a9 9 0 004.1 2.8l-2.9 3.7s-6.3-.8-7.5-7.4c-.5-2.5.7-7.1 4.9-8.5 5.3-1.8 8.6 2 10.3 5.2 2.2 4.4 3.2 12.4 9.4 11.2 3.4-.7 5-5.6 5-7.9l2.4-2.6 3.7 1.2h.1z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 907.5 0)" xlink:href="#a"/>
+    <path d="M461.1 279l10.8-11.7s1.6-1.3 1.6-3.4l-2.2.4-.5-1.2-.1-1.1 3-.7V260l.3-1.3-3.2.2.3-1.4.5-1 1.9-.4h1.9c1.8-3.4 9.2-6.4 14.4-1 3.8 4 3 11.2-2 13.2a6.3 6.3 0 01-6.8-1.1l2-4c2.7 1.7 5-.3 4.8-2.4-.2-2.7-2-4.3-4.3-4.5-2.3-.2-4 1-5 3-.6 1.3-.3 2.2-.5 3.6-.2 1.5 0 2.3-.5 3.8a8.8 8.8 0 01-2.4 3.6l-11 12-43 46.4-3.2-3 43.2-46.7z"/>
+    <path fill="#fff" d="M429.5 283s2.7 13.4 11.9 33.5c4.7-1.7 7.4-2.8 12.4-2.8 4.9 0 7.6 1 12.3 2.8A171 171 0 00478 283l-24.2-31-24.4 31z"/>
+    <path d="M456.1 262.4l16.8 21.7s-2.2 10.5-9 26.3c-2.7-.6-5-1.1-7.8-1.3v-46.7zm-4.7 0l-16.8 21.7s2.2 10.5 9 26.3c2.7-.6 5-1.1 7.8-1.3v-46.7z"/>
+  </g>
+  <g fill="#d52b1e">
+    <path fill="#fedf00" d="M322.3 175.5h52.6V228h-52.6z"/>
+    <path d="M329.7 175.5h7.8V228h-7.8zm15 0h7.8V228h-7.8zm15 0h7.9V228h-7.9z"/>
+  </g>
+  <g fill="#d52b1e" stroke="#d52b1e" stroke-width=".5">
+    <path fill="#fedf00" stroke="none" d="M264.3 273.5c.1 1 .5 2.6 1.4 4.3 1 1.5.6 1.4 2.7 3.8a15.3 15.3 0 004 2.9 32.7 32.7 0 0015 2.6c2.7-.1 4.8-.4 6.6-.7a71 71 0 0111-.6c1.5 0 3 .3 4.7.6 3.5.7 7 2 7 2v-54.7h-52.6V271l.2 2.4z"/>
+    <path stroke-width=".3" d="M270.4 283.1l2.5 1.5 3.4 1.2v-52.2h-5.9zm29.2 2.4v-51.9h-5.8v52.8l5.8-.7zm11.7-51.9h-5.8v52.1c1.9.2 3.8.6 5.8 1v-53zm-23.4 0V287s-3.8.2-5.8 0v-53.4z"/>
+  </g>
+  <g transform="matrix(.64 0 0 .64 0 16)">
+    <path fill="#fedf00" d="M585.5 402.4a20.8 20.8 0 01-2.2 6.6c-1.5 2.3-1 2.3-4.3 6a26.3 26.3 0 01-13 7 51.8 51.8 0 01-16.6 1.6c-4.3-.2-7.5-.7-10.3-1-3.8-.6-6.7-.9-11-1a62.9 62.9 0 00-6.2 0 83.3 83.3 0 00-18.3 4.2V340h82.2v58.5l-.3 3.8z"/>
+    <g id="b">
+      <path fill="#d52b1e" d="M524.6 347l-.6.2-.8.8c-.4.4-.7.5-1.2.8l-.6.5c-.3.3 0 .6-.3 1-.1.4-.3.6-.6 1-.4.4-.7.5-1 1l-1.2 1-.3.1h-.6c-.4.2-.5.6-.8.8l.3.6.8 1.4c.2.3.2.7.5.8.5.2.9.2 1.3.1.8.2 1.3.2 2 .5l1.5.8c.5.3.8.4 1.3.5h1.8v.3l2 1a1.7 1.7 0 00-.1.4c-.1.3-.2.7-.1.8.6 1.9 1.2 3 1.5 3.2.6.2.8.9 1.1 1.5l-.3.3c-.6.6-1.2 1-1.7 1.8-.7 1.2-1.2 1.2-.3 2.8l1.5 2.4c.4.7.6 1.2.8 2 .2.7.3 1.2.3 2l1 .3.7-.6.6-1.2v-1c-.2-.1-.3-.4-.2-.7 0-.4.5-.3.7-.6.3-.5-.4-.8-.7-1.1-.6-.7-1.4-.9-1.6-1.9 0-.2 0-.4.4-.7l2-1.8c.2.1.6.2 1 .1l1.3.4c.6.2.9 0 1.2 0h.4l.1.6c.1 1-.1 3 .2 3.5l.3.6.2.6v2l-.2 1.7c0 .4-.2.7-.5 1-.2.4-.6.4-1 .7v1l1.1.5 1.3.3.7-.3.1-.6.5-.5c.4-.2.8 0 .9-.1.2-.3 0-.4 0-.8 0-.6-.2-1-.3-1.6a11.8 11.8 0 01-.1-2.8c0-.6 0-1 .2-1.5.1-1 .4-1.4.6-2.2.3-1 .3-1.6.4-2.5a24.4 24.4 0 0010.1-.6c.8.7 1.7 1.2 2.7 1.6v1c0 .3 0 .4.2.7l.3.3c.3 0 .5 0 .7-.2.2-.2.2-.4.2-.7v-.7h1.8v1.1c.1.3.3.4.5.4a.7.7 0 00.6 0c.3-.2.2-.6.3-1v-.7l1-.4a5.1 5.1 0 010 .9l-.3.9c-.2.6-.5.8-.8 1.4-.4.6-.5 1-1 1.5l-.6.7-.6.9-.9 1c-.7.6-1.2.2-2 .9l-.3 1 1.4.6 1.3.2.4-.2c0-.3 0-.6.3-.8.2-.3.4-.3.7-.4.4 0 .8 0 1-.2.4-.3.4-1 .7-1.5a12.7 12.7 0 013-3.9l1.7-1.4c.2-.4.5-.5.5-1l-.2-.6-.2-1c1.5.7 1 .7 1.2 1.4.3.6 0 1 .1 1.7.1.8.5 1.1.5 1.9.1.9-.1 1.4-.3 2.3-.1.8-.1 1.3-.5 2a3.8 3.8 0 01-1.1 1.5l-.6.5-.1 1 1.1.4 1.6.4.4-.3c.2-.7 0-1.7.4-1.7.4-.1.7 0 .8-.3v-.7l.7-4.5.4-1.9.4-1.7c.7-2-.2-2.3-1-3.6-.5-.7-.7-1-.7-1.5V362a42.7 42.7 0 010-2.8l.4-.2c1.2-.7 1.7-.9 2.4-2.5a3.4 3.4 0 00.3-1.5v-1l-.4-1a3.2 3.2 0 00-.6-.8c-.7-1-1.7-1.1-2.7-1.5-1.5-.5-2.5-.4-4-.5-1.8-.2-2.7-.2-4.4 0-2 0-3.1.4-5.1.7l-4.9.4c-2.3 0-4.4-.5-5.8-.4-2.4.2-2.5.8-6.2 1.1a67 67 0 01-3.8.2l-2.2-.7c.9-.3 1.1-.5 1.5-1 .3-.4.2-.7.6-1.1l.7-1a2.2 2.2 0 00-.9-.4h-1a3 3 0 00-1.2.3l-.8.6-2.2-1.2a8.8 8.8 0 00-3-.9zm2 11.8z"/>
+      <g fill="none" stroke="#fedf00" stroke-linecap="round">
+        <path d="M568.8 359.5l-.8.3c-.9.4-1.6.4-2.6.5-2.6.2-4.3-1.1-7-.9-1.4.1-2 1.2-3.5 1.6a9.3 9.3 0 01-1.7.2l.5-1s-1.2.3-2 .3a7.5 7.5 0 01-1.6-.2l1-1-1.3-.2a4 4 0 01-1-.7 20.5 20.5 0 001.7-.3c1.5-.4 2-1.2 3.9-1.4 1.1 0 3 0 7.6.8 3 .5 4.4.2 5.5-.3.8-.3 1-1 1.1-1.8.1-.8-.4-1.4-.8-1.8-.1 0-.5-.3-1.1-.4"/>
+        <path fill="#fcd900" stroke-linecap="butt" stroke-width=".5" d="M524.8 350.6c-.5 0-.9 0-1.3.3-.5.3-.6.7-1 1.1.5.1.8.4 1.2.3.4 0 .5-.2.8-.5.3-.4.4-.7.4-1.2h-.1z"/>
+        <path d="M536 363.8a13.6 13.6 0 001 2.3c.2.8 0 1.2.2 2v1.6m6.8-7l-.3 1.3-1 3.5v.7m-11-4c.9.2.6 3.3 1.9 4"/>
+        <path stroke-linecap="butt" d="M560.1 369.8l.4-.3a8.2 8.2 0 002.7-1.8"/>
+        <path d="M552.4 368c3.5-.9 5.9-2.6 7.6-2.9m-4-1.5h.8c1.5-.3 1.7.6 2.7 1.2 1.9 1 2.1 2.3 4.3 3.4l.4.1.8.4"/>
+        <path fill="#fcd900" stroke-linecap="butt" stroke-width=".5" d="M517.7 354.5h.7l.8-.2c.3 0 .5 0 .7.2.2 0 .2.1.3.3 0 .2.2.3.1.5 0 .2-.3.4-.6.4-.2 0-.4 0-.5-.3a.5.5 0 010-.4 1 1 0 01-.9 0 1 1 0 01-.6-.5z"/>
+      </g>
+      <path fill="#0065bd" d="M525.1 364.2l-2-.9c.4-.2.7-.2 1-.5.3-.4.3-.8.5-1.3s.2-1 .7-1.4c.3-.2.8-.2 1.1-.1.4 0 .8.4.9.7 0 .6-.2 1-.3 1.5 0 .6-.3.9-.2 1.4 0 .4.2.6.4 1l-2-.4zm-1 1a.6.6 0 11.7.5.6.6 0 01-.7-.6zm-1.7-16.6h-.2c-.4-.4-.4-.8-.6-1.2a4 4 0 01-.3-1.2v-2c0-.3 0-.6-.2-.9 0-.2-.4-.3-.3-.4 0-.1.3 0 .4 0 .4 0 .6.1 1 .4.3.3.5.6.6 1l.4 1.5.3.8.5.6-.7.8-.9.6zm3.6 10.6l2.2 1a9.2 9.2 0 003.5-3.8c.9-1.8 1-2.7 1.4-4.4l-1.8-.5h-.4c-.5 1.8-.7 2.7-1.6 4.2-.8 1.3-1.7 2.3-2.6 3l-.7.5zm5 18.2l.8-1.3 1.4-1.1h.4a8.7 8.7 0 01-.5 2.8l-.4 1-.5.5c-.5-.8-1.3-1.3-1.3-2zm33 1.8l1.4.6 1.5.9v.5l-1.5.2a8.4 8.4 0 01-1.3 0h-1l-.6-.4c.5-.7.8-1.6 1.4-1.8zm-9.8-2l1.4.5 1.5 1c0 .1.1.3 0 .4a9 9 0 01-2.7.3l-1-.1-.7-.3c.6-.7.9-1.7 1.5-1.8zm-17.4 2.1l1.5.5 1.5 1v.5a9 9 0 01-2.8.2h-1l-.6-.4c.5-.7.8-1.6 1.4-1.8zm-9-29.8c-.6-.3-1-1-.6-1.6.1-.2.4-.2.6-.4.2-.3.1-.5 0-.8l-.1-1-.2-1c0-.6 0-1 .4-1.6.2-.3.7-.6.8-.6.2.1 0 .5 0 .8 0 .5.1.7.3 1.2l.7 1.3c.2.6.4.8.4 1.4 0 .5 0 .7-.2 1.2a2 2 0 01-.6.8 2 2 0 01-.8.4 1.1 1.1 0 01-.6 0z"/>
+    </g>
+    <use width="100%" height="100%" y="36.6" xlink:href="#b"/>
+  </g>
+  <path fill="none" stroke="#703d29" stroke-width=".5" d="M264.1 175.5h52.6V228h-52.6zm58.2 0h52.6V228h-52.6zm-58 98c.1 1 .5 2.6 1.4 4.3 1 1.5.6 1.4 2.7 3.8a15.3 15.3 0 004 2.9 32.7 32.7 0 0015 2.6c2.7-.1 4.8-.4 6.6-.7a71 71 0 0111-.6c1.5 0 3 .3 4.7.6 3.5.7 7 2 7 2v-54.7h-52.6V271l.2 2.4zm110.4 0a13 13 0 01-1.4 4.3c-1 1.5-.6 1.4-2.7 3.8a15.4 15.4 0 01-4 2.9c-1.3.7-2.3 1-4.4 1.6a32.6 32.6 0 01-10.6 1c-2.7-.1-4.8-.5-6.5-.7a71 71 0 00-7.2-.6 40.5 40.5 0 00-3.9 0c-1.5 0-3 .3-4.7.6-3.5.7-7 2-7 2v-54.8H375v37.5l-.2 2.4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ae.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ae.svg
new file mode 100644
index 0000000..a7bdb17
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ae.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ae" viewBox="0 0 640 480">
+  <path fill="#00732f" d="M0 0h640v160H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path d="M0 320h640v160H0z"/>
+  <path fill="red" d="M0 0h220v480H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/af.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/af.svg
new file mode 100644
index 0000000..399c1c7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/af.svg
@@ -0,0 +1,81 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-af" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path d="M0 0h640v480H0z"/>
+    <path fill="#090" d="M426.7 0H640v480H426.7z"/>
+    <path fill="#bf0000" d="M213.3 0h213.4v480H213.3z"/>
+  </g>
+  <g fill="#fff" fill-rule="evenodd" stroke="#bd6b00" stroke-width=".5" transform="translate(1 27.3) scale(1.06346)">
+    <path d="M319.5 225.8h8.3c0 3.2 2 6.6 4.5 8.5h-16c2.5-2.2 3.2-5 3.2-8.5z"/>
+    <path stroke="none" d="M266.7 178.5l4.6 5 57 .2 4.6-5-14.6-.3-7-5h-23l-6.6 5.1h-15z"/>
+    <path d="M290 172.7h19.7c2.6-1.4 3.5-5.9 3.5-8.4 0-7.4-5.3-11-10.5-11.2-.8 0-1.7-.6-1.9-1.3-.5-1.6-.4-2.7-1-2.6-.4 0-.3 1-.7 2.4-.3.8-1.1 1.5-2 1.6-6.4.3-10.6 5-10.5 11.1.1 4 .6 6.4 3.4 8.4z"/>
+    <path stroke="none" d="M257.7 242.8H342l-7.5-6.1h-69.4l-7.5 6.1z"/>
+    <path d="M296.4 219.7l1.5 4.6h3.5l-2.8-4.6h-2.2zm-2 4.6l1 4.6h4l-1.5-4.6h-3.5zm7 0l2.8 4.6h5.9l-4.6-4.6h-4.1zm-34.5 10.4c3.1-2.9 5.1-5.3 5.1-8.8h7.6c0 2 .7 3.1 1.8 3h7.7v-4.5h-5.6v-24.7c-.2-8.8 10.6-13.8 15-13.8h-26.3v-.8h55.3v.8H301c7.9 0 15.5 7.5 15.6 13.8v7h-1l-.1-6.9c0-6.9-8.7-13.3-15.7-13.1-6 .1-15.4 5.9-15.3 13v2.2l14.3.1-.1 2.5 2.2 1.4 4.5 1.4v3.8l3.2.9v3.7l3.8 1.7v3.8l2.5 1.5-.1 3.9 3.3 2.3h-7.8l4.9 5.5h-7.3l-3.6-5.5h-4.7l2.1 5.4h-5l-1.3-5.4h-6.2v5.8H267zm22.2-15v4.6h5.3l-1-4.6H289z"/>
+    <path fill="none" d="M289.4 211.7h3.3v7.6h-3.3z"/>
+    <path fill="none" d="M284.7 219.8h3.2v-5.6c0-2.4 2.2-4.9 3.2-5 1.2 0 2.9 2.3 3 4.8v5.8h3.4v-14.4h-12.8v14.4zm25.6 3.3h4v3.2h-4zm-2.4-5.3h4v3.1h-4zm-3.9-5.4h4v3.1h-4zm-3.3-4.5h4v3.1h-4z"/>
+    <path fill="none" d="M298 219.8l4.2.2 7.3 6.4v-3.8l-2.5-1.8v-3l-3.6-2v-3.3l-3.5-1.2V207l-1.7-1.5-.1 14.4z"/>
+    <path d="M315.4 210.3h1v7.1h-1z"/>
+    <g id="a">
+      <path d="M257.3 186.5c-1.2-2-2.7 2.8-7.8 6.3-2.3 1.6-4 5.9-4 8.7 0 2 .2 3.9 0 5.8-.1 1.1-1.4 3.8-.5 4.5 2.2 1.6 5.1 5.4 6.4 6.7 1.2 1 2.2-5.3 3-8 1-3 .6-6.7 3.2-9.4 1.8-2 6.4-3.8 6-4.6l-6.3-10z"/>
+      <path fill="#bf0000" d="M257 201.9a10 10 0 00-1.6-2.6 6.1 6.1 0 00-2.4-1.8 5.3 5.3 0 01-2.4-1.5 3.6 3.6 0 01-.8-1.5 5.9 5.9 0 010-2l-.3.3c-2.3 1.6-4 5.9-4 8.7a28.5 28.5 0 000 2.3c.2.5.3 1 .6 1.3l1.1.8 2.7.7a7.1 7.1 0 012.6 2 10.5 10.5 0 011.8 2.6l.2-.8c.8-2.7.7-5.9 2.6-8.5z"/>
+      <path fill="none" d="M249.8 192.4c-.5 3.3 1.4 4.5 3.2 5.1 1.8.7 3.3 2.6 4 4.4m-11.7 1.5c.8 3 2.8 2.6 4.6 3.2 1.8.7 3.7 3 4.5 4.8"/>
+      <path d="M255.6 184.5l1-.6 17.7 29.9-1 .6-17.7-30z"/>
+      <path d="M257.5 183.3a2 2 0 11-4 0 2 2 0 114 0zm15.2-24h7.2v1.6h-7.2zm0 3.1h7.2v13.8h-7.2zm-.4-5h8c.2-2.7-2.5-5.6-4-5.6-1.6.1-4.1 3-4 5.6z"/>
+      <path fill="#bd6b00" stroke="none" d="M292.6 155.8c-1.5.6-2.7 2.3-3.4 4.3-.7 2-1 4.3-.6 6.1 0 .7.3 1.1.5 1.5.2.3.4.5.6.5.3 0 .6 0 .7-.3l.2-.8c-.1-2-.1-3.8.3-5.4a7.7 7.7 0 013-4.4c.3-.2.4-.5.5-.7a1 1 0 00-.3-.7c-.4-.3-1-.4-1.5-.1zm.2.4c.4-.2.8 0 1 .1l.1.2c0 .1 0 .2-.3.4a8.2 8.2 0 00-3.1 4.6 16.7 16.7 0 00-.3 5.6 1 1 0 01-.2.6s0 .1-.2 0c0 0-.2 0-.4-.3a3.9 3.9 0 01-.4-1.2c-.3-1.8 0-4 .7-6 .7-1.8 1.8-3.4 3-4z"/>
+      <path fill="#bd6b00" stroke="none" d="M295.2 157.7c-1.5.7-2.5 2.3-3 4.2a13.6 13.6 0 00-.3 5.9c.2 1.3 1 2 1.6 2 .3.1.6 0 .8-.3.2-.3.3-.6.2-1-.4-1.6-.5-3.4-.3-5.1.3-1.7 1-3.2 2.2-4.1.3-.3.5-.5.5-.8a.8.8 0 00-.2-.6c-.4-.3-1-.4-1.5-.2zm.2.5c.4-.2.8-.1 1 0l.1.3-.3.4a6.5 6.5 0 00-2.4 4.4c-.3 1.8-.1 3.7.2 5.2.1.4 0 .6 0 .8l-.5.1c-.3 0-1-.5-1.2-1.7-.3-1.7-.2-3.9.3-5.7.5-1.8 1.5-3.3 2.8-3.8z"/>
+      <path d="M272.3 187.4h8v11h-8zm.5 17.4h7.7v2.4h-7.7zm-.2 4.1h8v8.7h-8zm-.6 10.5h8.7v4.9H272zm1.1-16.6h7l1.4-2.4h-9.6l1.2 2.4zm9.4-8.6l.1-6h4.8a17.4 17.4 0 00-4.9 6z"/>
+      <path fill="none" d="M273.6 196.7c0 1.3 1.5.8 1.5.1v-5.6c0-1 2.4-.8 2.4-.1v6c0 1 1.7.9 1.6 0v-7c0-2.2-5.5-2.1-5.5-.1v6.7zm0 13.3h5.7v7h-5.7z"/>
+      <path d="M277.2 213h2v1h-2zm-3.5 0h2v1h-2zm2-3h1.5v3h-1.5zm0 4h1.5v3.1h-1.5zM244 139c.4 5.5-1.4 8.6-4.3 8.1-.8-3 1-5.1 4.3-8.1zm-6.5 12.3c-2.6-1.3-.7-11.5.3-15.8.7 5.5 2 13.3-.3 15.8z"/>
+      <path d="M238.4 151.8c4.4 1.5 8-3.2 9.1-8.7-3.6 5-9.5 5-9 8.7zm-3.3 5.1c-3.4-.9-1.4-11.7-.7-16 .7 4.5 3.1 14.5.7 16zm1.2-.3c.2-3.7 3.9-2.7 6.5-4.7-.5 2-2 5.2-6.5 4.7zm-4.2 5c-3.4-1-1.4-12.6-1.6-17.4 1 4.2 4.2 16.3 1.6 17.4zm1.6-.5c2.8.9 6.5-1 6.8-4.3-2.5 1.7-6.3.4-6.8 4.3z"/>
+      <path d="M229.5 166.7c-3.2.3-1.8-9.6-1.8-18.8 1.2 8.6 4.5 16.5 1.8 18.8z"/>
+      <path d="M230.7 166.3c2.2 1 6.1-.7 7.2-4.4-4 1.7-6.6 0-7.2 4.4zm25.6-22.2c-.6 4.9-2.6 7.7-5.5 7.2-.8-3 1.6-5 5.5-7.2zm-7.8 12.4c4.9.7 6.6-3 10-7.9-4.7 3.4-10.2 4-10 8z"/>
+      <path d="M247 156c-2.6-3.2 0-7.3 2-10.7-.4 5.1 1.3 8-2 10.7zm-1 5.3c-.4-3.2 5-3.9 7.4-5.6-.9 1.8-2 6.7-7.5 5.6z"/>
+      <path d="M244.8 161.3c-3.7-.4-2.2-6.7.5-10.1-1.1 4.8 2 8.1-.5 10.1z"/>
+      <path d="M242 166.6c-4.2-2-1.5-7.2 0-10.3-.6 4.1 2.8 7.2 0 10.2z"/>
+      <path d="M242.8 166c2.2 3 6.5-.8 7.4-5.2-3.7 3.1-6.5 2.6-7.4 5.3zm-9.6 20.3c-.4-4.3 2.8-12 .5-16.2-.3-.6.7-2.1 1.4-1.2 1 1.5 2 5.7 2.5 4.1.4-1.7.5-4.6 2-5.2 1-.3 2.3-.6 1.9 1-.4 1.4-1.2 3.4-.3 3.5.5 0 2-2 3.3-3 1-.8 2.6.6 1 1.8-4.8 4-9.5 5.9-12.3 15.2zm-8.7 64.5c-.6 0-1.3-.3-.6.6 5.7 7 7.3 9 15.6 8 8.3-1.1 10.3-3.4 16.2-6.7a14.6 14.6 0 0111.2-1c1.6.5 2.6.5 1.4-.7-1.2-1.1-2.5-2.7-4-3.8a17.5 17.5 0 00-12.7-2.7c-6 1-11.1 4.9-17.2 6.4a25 25 0 01-9.9 0zm47.8 12.5c1 .2 1.7 2.2 2.3.9.8-2.3.2-4-.8-3.9-1.2.3-3.1 3-1.5 3z"/>
+      <path stroke="none" d="M220.6 183c-1.2-1.4-.9-1.8 1-1.9 1.4 0 4.2 1 5.3.1 1-.7.5-3.7 1-5 .2-.9.7-2 2-.2 3.6 5.8 8 12.8 10 19.6 1 3.8 0 9.8-3.4 13.8 0-3.4-1.2-5.7-2.7-8.6-2-3.7-9.1-14-13.2-17.9z"/>
+      <path d="M235.5 213.4c4 0 4.7-5.3 4.7-6.8-2 .4-5.4 3.7-4.7 6.8zm34.5 51.9c2.8.6 2.7-6.2-.2-9.1 1.3 4.4-2 8.4.1 9zm-1.2-.1c.2 3.2-8-.4-10-3 4.8 2.1 9.8.4 10 3zm-3.5-4.6c.3 3.1-7 .3-9.3-2.1 4.9 1.6 9-.5 9.3 2zm1.3.4c2.9.7 2.4-6.4-.4-8.8 1.4 4.7-1.8 8.1.4 8.8zm-3-4.3c2.9.7 1.2-5.4-.9-7.8.4 4.4-1 7.5 1 7.8zm-1.5 0c.3 3.2-5.4.8-7.6-2.3 4.8 1.5 7.3-.3 7.6 2.3zm-1.5-2.5c1.8-1.3-.1-4.8-3.7-4.6.4 2.1 1.6 5.9 3.7 4.6zm14 14.7c.1 3.2-8 1.6-10.6-1.8 5.2 1 10.3-.8 10.5 1.8zm-32.4-5.8c.3 3.2-8.6-.4-10.8-3.4 4.7 1.6 10.5.8 10.8 3.4zm5.4 1.3c1.9-1.3-1.9-4.7-5-5.5.4 2.1 3 6.8 5 5.6zm.6 2.3c.2 2.9-9.5 1.3-12-1.4 8.3 1.5 11.7-1.1 12 1.4z"/>
+      <path d="M252.8 268.6c1 2.7-8.3 2-11.6.5 5.3 0 10.8-2.4 11.6-.5z"/>
+      <path d="M257.1 270.6c1 2.4-7.6 2.4-11.8 1 5.6 0 10.8-3.4 11.8-1zm6.3 1.3c1.6 2.9-7.6 3.1-10.5 1.7 5.2-.7 9.2-4 10.5-1.7zm-10.7-4.9c-2.9 1.8-2.7-3.6-5-7.3 3.6 3.3 7 5.6 5 7.3z"/>
+      <path d="M257.9 269c-2.4 2.1-4.4-5.3-6.6-9.5 3.6 4 8.8 7.7 6.6 9.4zm6.8 2c-2 2.4-8-7-10.2-12 3.3 3.9 11.8 10 10.2 12zm-5.8 7.2c-1 3.6-16.2-3.4-18-7.1 8.8 4.6 18.2 3.6 18 7zm-48.7-73.8c-.4-.5-1.4 0-1.2 1.1.3 1.5 2.5 9.2 6.3 11.8 2.7 2 17 5.1 23.4 6.5 3.6.7 6.5 2.5 8.9 5.3a94.4 94.4 0 00-3-9.8c-1.2-3-4.4-6.2-7.8-6.3-6.1-.3-14.1-.8-20-3.3a16 16 0 01-6.7-5.3z"/>
+      <path d="M245.5 234.9c2 1.4 4.1-3.7 1.7-8.6-.1 4.7-3.8 6.3-1.7 8.6z"/>
+      <path d="M247.4 239.6c2.7.8 3.5-4 1.8-7.8.3 4.1-4.3 6.6-1.8 7.8z"/>
+      <path d="M249.5 243.4c2.6 1.3 3.5-3.6 1.7-7.1.2 4.5-3.7 5.9-1.7 7z"/>
+      <path d="M248.4 243.7c-1 3-7-2.7-8-5.8 3.7 3.7 8.7 3.2 8 5.7z"/>
+      <path d="M245.7 239c-1.2 3-8.7-5-10.4-8.7 3.7 3.7 11.2 6.5 10.4 8.6z"/>
+      <path d="M244.2 234.3c-1.2 3.5-9.3-5.8-11.7-9.1 4 3.6 12.6 6.6 11.7 9.1zm-.3-3.4c3-.6-.1-3-3.7-6.9-.1 4.1.5 7 3.7 6.9z"/>
+      <path d="M239 228.5c1.3-1.3-1.1-1.9-4.1-5.3-.5 2.3 2.8 6.5 4.2 5.3zm14 15.2c1.6 1 2.6-2.3.7-5.2-.5 3.2-2.1 4-.7 5.2zm-34.2-20.3c-3.3 2-8.6-6-10-9.3 2.9 3.8 10.6 7.2 10 9.3z"/>
+      <path d="M221.7 228c-1.9 2-7.7-3.5-9.7-6.3 3 2.7 10.5 3 9.7 6.3z"/>
+      <path d="M224.8 232.2c-.6 2.8-9-3.5-11-6.5 3.6 3.5 11.6 3.2 11 6.5z"/>
+      <path d="M223.5 235.3c-1.3 2.5-8.2-3.8-9.9-7 4.3 3.6 11 4.5 10 7zM220 223c2.1-2.3 1.2-3.4-.4-7-.8 3.7-2.1 5.2.4 7zm2.9 4.3c4 .2 0-4.6-1-8.7.4 4.6-1 8.3 1 8.7z"/>
+      <path d="M225.4 231.1c2.7-.6 2-4.5-.2-9.2.5 5.1-2.3 8 .2 9.2zm-1 7.7c-1 3-8.8-4-10-6.8 4 3.4 10.7 4.5 10 6.8z"/>
+      <path d="M229.1 243.6c-1.1 3-9.3-3.2-11.8-6.6 4.9 4 12.4 3.6 11.8 6.6z"/>
+      <path d="M233.9 248.5c-1.3 4.3-9.9-2.6-12.4-6 5.4 4.2 13 3 12.4 6zm-8-11c2.3 1.1 3.2-5.4 1.9-10.1 0 5-4.7 8.8-2 10z"/>
+      <path d="M229.8 242.7c2.8.8 2-6.3-.5-11-.3 4.7-2.3 9 .5 11zm5 4.9c3 .1 1-6.1-1.6-9.6.4 4.5-1 9 1.6 9.6zm-5.5 2.6c-1 1.6-3.2-1.3-7-3.5 3.4 1 7.4 2 7 3.5zm-1.8-52.7c3-2.2.7-6.2 0-10-1 3.6-3.4 8.4 0 10zm0 5.3c-4.5-.5-3.8-6.1-4-9.7 1.4 4.9 5 5.7 4 9.8zm.6-.7c3.7-.2 3.5-4.4 3.7-8.6-1.9 3.9-4 4.5-3.7 8.6z"/>
+      <path d="M228 207.3c-3 .3-4.4-2.6-5-7 2.7 4.1 5.1 2.8 5 7zm1-.3c3.7.5 3-3.8 3-7-1.2 3-4.2 4-3 7z"/>
+      <path d="M223.2 205.2c.3 2.8 2.1 7.6 5 6.5 1.1-3.4-2.6-4.1-5-6.5z"/>
+      <path d="M229 212c-1.2-2.4 3-3.7 3.8-6.9.5 4.6.1 7.6-3.8 7zm-11.9-29.2c2.3-2.4.3-6.4-.4-10.2-1 3.6-2.5 8.4.4 10.2zm0 4.6c-4 .5-5-7.7-5.5-11.3 1.4 4.9 6 7 5.5 11.4zm.8 0c2.8-1.5 2.2-4.7 3-7-1.8 2.9-3.6 3.3-3 7z"/>
+      <path d="M217 192.8c-4.1.3-6.6-8.8-6.8-12.4 1.3 4.9 7.4 7.5 6.9 12.4zm.9-.2c4-.9 3.5-3.5 2.9-7.6-1.3 4.2-3.5 3.3-2.9 7.6z"/>
+      <path d="M217 198c-4.6.8-4.3-6.6-8-11.9 3.2 4 9 9 8 11.9zm1-.3c3.6.2 4-5.1 3.8-7.3-.9 2.2-5 4.2-3.7 7.4z"/>
+      <path d="M209.8 192.3c1.7 5.7 4.2 11.4 7.2 11 1.5-3.3-2.9-3.7-7.2-11z"/>
+      <path d="M218.1 202.4c-1.2-2.5 3-3.7 3.8-6.9.5 4.6.1 7.6-3.8 6.9zm-7.1-3.6c2.5 5.1 3.6 11 7 10.1 1.3-4-3.8-4.8-7-10.1z"/>
+      <path d="M218.7 208c-1.5-2.8 2.7-3.7 3.8-7.4.5 4.8 0 8.3-3.8 7.3zm7.2-34.5c2.4.6 5-2.1 4.1-6.2-2.8.6-4 3.2-4.1 6.2zm-7.9-2.1c.2 1.2 1.7 1.3 1.2-.4a5.3 5.3 0 010-3.4 7.5 7.5 0 000-4.6c-.4-1-1.8-.4-1.2.4.6.9.7 2.8.2 3.7-.6 1.3-.4 3-.2 4.3zm22.9 16c-1 1.3-2.9.4-1.4-1.5 1.2-1.5 3-2.8 3-4.4.2-2 1.3-5 2.4-6.1 1.1-1.1 2.4.4 1.2 1.2-1.3.8-2.2 4.4-2.1 5.8-.1 2-2 3.5-3.1 5zm-3-2.3c-1 1.4-2.4.5-1.6-1.7.7-1.5.8-3.5 1.6-4.6 1.2-1.7 3-3.1 4.1-4.2 1.2-1 2 0 1 1a27 27 0 00-3.3 4c-1.4 2.2-.8 4-1.8 5.5zm-15.7-7.2c-.1 2 1.5 2.4 1.4-.4 0-3-2.2-5.8-1-10.3.8-2.2.8-6.3.4-8.4-.4-2.2-2-.8-1.3.9.6 2-.1 5.6-.6 7.5-1.5 5.4 1.2 8 1 10.7zm4.3-11c-.2 1.9-1.8 2-1.3-.5.4-2 .4-3.6 0-5.3-.6-2.1-.4-5.7 0-7.2.5-1.6 2-.7 1.4.5a9.9 9.9 0 00-.3 5.9c.6 2 .5 4.8.2 6.7zM210.9 204c.8.9 2 .3 1-1-1-1-.7-1.2-1.3-2.4-.6-1.4-.5-2.1-1.2-3-.7-1-1.6 0-1 .7.8 1 .6 1.6 1 2.5 1 1.5.7 2.3 1.5 3.2zm20.4 24.6a8.6 8.6 0 014.4 6.7 16 16 0 002 7.1c-2-.5-3-3.7-3.3-6.8-.3-3.2-2-4.5-3-7zm5.1 5.9c1.7 3.1 4 4.3 4.2 6.6.2 2.7.4 2.8 1.1 5.4-2-.5-2.5-.7-3-4.7-.3-2.8-2.6-4.7-2.3-7.3z"/>
+      <path stroke="none" d="M289 263.3c1 1.8 2 4.5 4 4 0-1.3-2.1-2.3-4-4zm3 .6c3.7 1.6 7 1.2 7.5 3.6-3.6.4-5-1-7.6-3.6zm-16.1-12.7a14 14 0 015 7.7 29 29 0 003.6 7.8 13 13 0 01-5.3-7.4c-.7-3-1.6-5.3-3.3-8zm3.1 0c2.8 2.2 5.4 4.8 6.2 7.9.8 2.9 1.3 5.1 3.2 8-3-1.9-4.1-4.7-5-7.8-.7-3-2.5-5.2-4.4-8zm9.2 7.3a1.1 1.1 0 01.7-1.2 33.4 33.4 0 012.6-.8c1-.3 1.6.4 1.6.9v2c0 .7-.2.8-.7.9-.7.1-1.7.2-2.4.7-.6.4-1.2.1-1.5-.5l-.3-2zm10.6 0c0-.6-.2-1.1-.6-1.2a5.4 5.4 0 00-2.4-.4c-1 0-1.1.2-1.1.6v2.1c0 .8 0 .8.4 1 .7 0 1.8 0 2.5.6.5.3 1 0 1.1-.6l.1-2.1z"/>
+    </g>
+    <use width="100%" height="100%" x="-600" transform="scale(-1 1)" xlink:href="#a"/>
+    <g stroke="none">
+      <path d="M328.5 286.6c0 1.2.2 2.2 1 3.1a19 19 0 00-13.8 1.1c-1.8.8-4-1-1.9-2.7 3-2.3 9.7-1 14.7-1.5zm-57.5 0a7 7 0 01-.4 3c4.4-1.7 9.1-.2 13.6 1.6 3 1.3 3.3-1 2.8-1.7a6.5 6.5 0 00-5-2.9h-11zm3.8-21.7c-1.3-.5-2.7 0-4 1.4-4.3 4.2-9.4 8.3-13.5 11.6-1.5 1.3-3 3.7 3.4 6 .3.2 5 2 8 2 1.3 0 1.3 1.8 1 2.3-.5 1-.1 1.4-1.1 2.3-1.1 1 0 2.1 1 1.3 3.6-3.2 9.6-1.1 15.3.7 1.4.4 3.8.3 3.8-1.6 0-2 1.5-3.4 2.4-3.5 2.4.4 14 .5 17.5.1 2-.3 2.2 2.9 3.3 4 .8.9 3.7 1.1 5.8.2 4-1.8 10-1.8 12.5 0 1 .7 1.9 0 1.3-.7-.8-1-.7-1.6-1.1-2.4-1-2-.2-2.4.8-2.5 11-1.5 14.6-5.2 11.2-8.3-4.4-3.8-9.2-7.7-13.4-12.2-1.2-1.2-2-1.7-4.3-.7a66.5 66.5 0 01-25.3 5.9 76 76 0 01-24.6-5.8z"/>
+      <path fill="#bd6b00" d="M326.6 265.5l-1.6.4c-9 3.2-17.2 5.4-25.7 5.4-8.3 0-17-2.4-24.9-5.6a2.3 2.3 0 00-1.5 0c-.5.1-1 .4-1.3.7a115.5 115.5 0 01-11.8 10.3c-.7.5-.6 1.8.5 2.2 8.3 3 16.4 8.5 39.6 8.3 23.5-.2 31.8-5.6 39.2-8.1.5-.2 1-.5 1.3-1a1 1 0 00.1-.8 2 2 0 00-.6-.8c-4.3-3.5-8.8-6.3-11.8-10.4-.3-.5-.9-.6-1.5-.5zm0 .5c.5 0 1 0 1.1.3 3 4.3 7.7 7 11.9 10.5l.4.7a.5.5 0 010 .4c-.1.3-.6.6-1 .7-7.6 2.6-15.7 8-39 8.2-23.2.2-31.2-5.3-39.5-8.3-.8-.4-.7-1.2-.4-1.4 4.2-3.2 8.2-6.8 11.8-10.4a2.5 2.5 0 011.1-.6h1.2a68 68 0 0025 5.6c8.7 0 17-2.2 26-5.3a6.7 6.7 0 011.5-.4z"/>
+      <path d="M269.7 114.6c0-1.4 2-1.5 1.8.4-.3 2.3 4.5 8.3 4.9 12 .3 2.5-1.5 4.6-3.2 6a6.6 6.6 0 01-6.8.5c-.9-.8-1.7-3.3-1-4.3.2-.3 1.3 3.7 3.7 3.7 3.3 0 6-2.5 6-4.7.2-3.8-5.3-9.8-5.4-13.6zm9.5 9.4c.6-.4 1.4 1.3.8 1.7-.5.3-1.5-1.3-.8-1.8zm1.5-3.5c-.3.2-.8 0-.7-.2a12 12 0 013.6-3.3c.4-.2 1 .4.8.7a11 11 0 01-3.7 2.8zm12.6-10c.3-.6 2.1-1.3 2.6-1.7.4-.5.6.4.4.7-.3.7-1.9 1.7-2.6 1.8-.3 0-.6-.4-.4-.7zm4.3.3a8.3 8.3 0 012.5-3.4c.5-.3 1.3 0 1.1.4a9 9 0 01-2.9 3.3c-.3.3-.8 0-.7-.3zm-3.7 2.7c-.3.2-.1.7.1.8.6.2 1.5.2 2 0 .6-.4.3-2.9-.5-1.6-.6.8-1 .6-1.6.8zm-7.3 5.6c-1.3-1 .4-2.4 1.7-1.4 2.7 2-4 9.8-7.6 13.4-.7.7-1.3-1-.4-1.9a33.7 33.7 0 006.7-7.6c.4-.5.7-1.6-.4-2.5zm15.3-6.6c.1-1-1.6 0-1.6-1.3 0-.7 1.9-1.2 2.7-.4 1.3 1.4.3 3.7-2 3.9-1.8 0-5 2.7-4.5 3.2.5.7 5.4 1.1 8.3.7 1.8-.3 1.4 1.3-.4 1.5-1.8.2-3.2 0-4.8.6-2 .5-2.8 3-3.9 4-.2.2-.8-.8-.6-1.2.8-1.2 2-3 3.4-3.6.8-.3-2.4-.4-3.4-.7-.8-.2-.6-1.3-.3-1.9.4-.8 3.4-3.9 4.7-3.8 1.1 0 2.3-.3 2.4-1zm5 .2c.6-.5 1-1.3 1.5-1.8.3-.3.9 0 .8.8-.1.7-1 1.2-1.5 1.7-.5.3-1-.4-.7-.7zm6.5-2.3c.9 0 1 1.6.2 1.8-.6.2-1-1.7-.2-1.8zm-2.1 5c0 1.5.7 1.4 2 1.3 1.3 0 2.4 0 2.4-1.2 0-1.3-.7-2.5-1-1.6-.1.8-.3 2.2-.8 1.6-.4-.5-.2-.6-1 .2-.5.5-.5-.2-.8-.6-.2-.3-.8.2-.8.4zm-9.2 7.2c-.3 1.9 0 4.5.9 4.5 1.2 0 3.6-4 4.8-6.2.7-1.2 1.8-1.4 1.3-.1-.7 1.9-.6 6 0 7.2.4.6 3-.6 3.4-1.5.8-1.7.1-4.8.4-6.7.1-1.2 1.3-1.5 1.2-.3a75.6 75.6 0 00-.1 7.5c0 1 2.9 2.4 3.3-.6.2-1.8 1.2-3.7 0-5.7-.8-1.3 1.1-1.2 2.1.6.7 1.2-.6 3.2-.5 4.7 0 2.4-1.8 3.8-3.1 3.8-1.2 0-2-1.5-3-1.5s-2.2 1.7-3 1.6c-3.6-.2-1.7-5.3-2.8-5.4-1.2 0-2.5 5-4 4.9-1.4-.2-3-4.2-2.3-5.8.5-1.6 1.5-2 1.4-1zm16.9-8c-1.7-1 0-3.7.9-2.8 1.6 2 3.2 6.5 4.4 6.9.7.2.6-3.4 1.1-5 .4-1.3 1.8-.9 1.6.7-.1.5-2 6.4-1.8 6.6a47.1 47.1 0 013.3 7.8c.3 1.2-1.1.4-1.3.2-.9-1.4-2.4-6.5-2.4-6.2l-1.7 7.7c-.2 1-1.7.8-1.3-1 .3-1.4 2.3-8.3 2.2-8.6a17.2 17.2 0 00-5-6.3z"/>
+      <path d="M322 131.2c-.4 0-1.2 1 1.2 1.5 3.1.6 6.6-.5 7.6-3.6 1.3-3.7 2-7.2 2.7-8.5.8-1.5 1.8-1.4 1-3.6-.5-1.7-1.5-1.2-1.7-.3-.5 2.3-2.6 10-3.3 11.3-1.2 2.6-3.7 3.6-7.5 3.2z"/>
+      <path d="M328.4 119c-.4-.7-1.2 0-1 .7a1.2 1.2 0 001.2 1c.7 0 2.2.1 2.2-1 0-.8-.7-1.5-1.1-.6-.5.8-1 .7-1.3 0zm.7-3c-.2.2 0 1.1.3 1a7 7 0 003.3-.8c.2-.2.1-.7-.2-.7-1 0-2.6 0-3.4.5zm8.8 2.3c.8-1.2 2.8-1.3 2 .4a614.3 614.3 0 01-6.3 12.3c-.8 1.4-1.4.7-.8-.4.7-1.4 4.9-12 5.1-12.3z"/>
+      <path d="M330.2 133c-.2-.8-1.5-2-1.3.2.2 3.8 5.5 2.6 7 1.3s.3 4.3 2.2 4.9c1 .3 3-1.1 4-2.4 2.7-3.5 4.5-8.6 7-12 1-1.4-.5-2.4-1-1.3-2.4 3.8-5.2 11.6-8.3 13.6-2.5 1.6-1.7-2-1.8-3.2-.1-.8-1.1-2-2.4-.9a5.5 5.5 0 01-3.7 1.2c-.7 0-1.4 0-1.7-1.4z"/>
+      <path d="M339.6 126c0-.3-1.1-.4-1 .7 0 .8 1 1 1.1 1 1.5-1.2-.3-.6-.1-1.8zm-2.3 4.4c-.3 0-.6 1 .2 1.1l3.9-.2c.4 0 .6-.9-.4-.8-1.2 0-2.7-.3-3.7 0zm-62-16.6c.5 0 1.6 1.4 1.5 1.9 0 .2-1.2 0-1.5-.3-.3-.3-.2-1.6 0-1.6zm-5.3 10.4c-1 .6.2 1.7 1 1.2 2.8-1.9 7-3.8 8-7.5.3-1.2 1.4-3.1 2.5-3.5 1-.5 2.6 1.9 3.6 0 .6-1 2.7.7 3.2-.4.6-1.3.3-2 .3-3.4 0-.8-.7-1-1.2.3-.2.6 0 1.2-.1 1.6-.2.2-.6.4-1 .2-.2-.2 0-.7-.6-1-.2 0-.6-.1-.8.2-.7 1.3-1 2.5-2.1 1-.9-1-1.4-3.1-2-.3-.2 1-1.7 2.4-2.6 2.4-1.1 0-.8-3-3.2-2.5-1.3.3-1.2 2.7-1 3.5.3 1.3 4 .4 3.7 1.2-.6 2.7-4.4 5.4-7.7 7zm-22.7 13.2c-.1.5.5 1.7 1.1 1.8.6 0 1-1.3.8-1.8-.2-.3-1.8-.3-1.9 0zm3.3 4.9c-.4-.4-1.6.7-.6 1.5.5.5 2.5 1.1 3 .2.8-1.2-.7-5.5 0-6 .5-.5 2.8 2.8 4 3 2.7.4 2-4.6 5-4.2 1.9.2 2.1-2.2 1.8-3.8-.2-1.5-2.6-3.6-3.7-4.6-1.4-1.2-2.1 1-1.2 1.6 1.2 1 3.3 2.9 3.6 4.1.1.6-1.4 1.8-2 1.5-1.4-.8-2.6-4-3.8-4.7-.4-.2-1.4.3-1 1.3.6 1.1 3 2.7 3.1 3.9.1 1-1 3.2-1.8 3.2-.9 0-3-2.7-3.7-4-.4-.5-1.5-.5-1.7.4a22 22 0 00.5 5.5c.2 1.6-.9 1.7-1.5 1.1zm-4-8.6c-.4.4.8 1.2 1 1 .4-.4 2.1-2.3 1.8-3-.3-.6-2.6-2-3-1.3-.7 1.1 2.2 1.7 1.7 2a7 7 0 00-1.5 1.3zm4.1-8.4s.8 2.5 1.4 1.4c.4-.7-1.4-1.4-1.4-1.4zm1.2 4c-.2 0-1 .7-.5 1 .8.4 2.9.8 2.4-.7-.3-.9 3.2 0 2.3-2.4a3.7 3.7 0 00-1.7-1.7c-.4 0-1.5.5-.8.9.5.2 2 1.1 1.5 1.7-.7.6-1.1-.3-1.9-.1-.4 0-.1 1.2-.4 1.5 0 .2-.7-.4-.9-.3zm5.5-9.5a3.5 3.5 0 00-1.2 2c0 .2.3.6.5.5a3.2 3.2 0 001.2-1.9c0-.3-.2-.8-.5-.6zm2.8-.3c-.8-1 1-2.6 1.7-.5.5 1.3 5.5 7.9 6.5 10.1.8 1.5 0 2.1-.9 1-2.5-3.2-4.6-7.2-7.3-10.6zm5.2.1c.9-1 2.7-3 2.2-4-.4-1-1.5-1-1.7-.7-1 1.3.8 1 .5 1.4-.5 1-1 1.6-1.3 2.6-.1.3.1.9.3.7zm77.8 3.2c-.7-.5.6-3 1.5-2 2.3 2.7 3.4 11.6 4.1 18.3 0 0-1 .9-1 .7 0-3.5-1.5-14.4-4.6-17zm-53.1-8.6c-.8-1.8 1.1-2.4 1.4-1.2 1.3 5.8 4.5 10.2 7 14.1.7 1.2 0 2-1.7.8-1.2-.8-2.5-3.9-3-4-1.2-.2-3.8 5-9.1 3.5-1.4-.4-1.3-4.5-1.4-6.3 0-.9 1-1 1 0 0 1.7 0 5.2 2.1 5.4 1.8 0 5.6-2.4 6.4-4.4.8-2-1.9-5.9-2.7-8z"/>
+      <path d="M344.6 138.4c.4-1.2 6.1-10.8 6.9-12.9.4-1 2 1.8.4 3.3-1.4 1.2-5.5 8-6.3 10.4-.4 1-1.4.5-1-.8z"/>
+      <path d="M354.3 129.3c1-4 3.6.6 1.3 2.8-3.4 3.4-4.5 9.9-10 10.9-1.4.3-4-.7-4.8-1.3-.3-.2.2-1.6 1.1-.9 1.3 1 4.1 1.3 5.6.1a25.4 25.4 0 006.8-11.6zm-57 12.7c-.3.3-1 .3-1.1.7-.3 1.4 0 2.2-.3 3.6s-1.3 1.4-1.2.3c0-1.4 1.3-3.5.4-3.6-.6-.1-1-.9-.4-1.3 1.1-.7 1.7-.6 2.4-.4.3.1.4.5.2.7z"/>
+      <path d="M296.5 140c-1.4 1.4-2.8 1.9-4.1 3.5-.6.6-.5 1.5-.9 2.4-.3.9-1.4 1-1.7.9-.5-.4-.4-2-1-1.2-.6.9-.9 2-1.7 2-.7 0-2-1.5-1.3-1.5 2.3-.3 2.2-2 3-2.2 1-.1 1 1.5 1.7 1.2.4-.2.7-2.1 1.2-2.6 1.5-1.6 2.7-2.4 4.3-3.6.7-.6 1.3.5.5 1.2zm5.3 5c-1.2.2-1 1.7-.6 1.8.5.3 1.4.4 1.7-1.3.2-.7.3 3.5 1.8 1.9 1-1 3.1.2 4-1 .7-.9 1-1.5.4-2.7-.2-.3-1-.2-1 .7 0 .8-.5 1.7-1.3 1.6-.4-.1.2-1.9-.2-2.4a.5.5 0 00-.7 0c-.3.4.3 2.2-.6 2.4-1.2.2-.6-1.2-1-1.4-1.7-.8-1.8.2-2.5.3zm9-3c.9-.2.6-.2 2-1.3.5-.4.6.8.5 1.3 0 .7-1 .2-1.3.9-.4.9-.2 3-.4 3.8 0 .4-.8.4-.8 0-.2-1 .1-2 0-3.3 0-.4-.5-1.1 0-1.3zm-5-2.5c-.2.9-.2 1.6-.2 2.3 0 .5 1 .2 1 .1 0-.8.2-2 0-2.3-.2-.1-.7-.3-.8-.1z"/>
+      <path d="M299.5 130.2l-1.4 5.6-2-3.8v3.9l-4.4-5.2 1.5 5.6-4-3.4 2.2 3.8-7-4.5 4.4 5.2-5.6-2.8 4 3.4-9-3.4 8.7 4.3a29 29 0 0112.6-2.6c4.9 0 9.3 1 12.5 2.6l8.8-4.3-9 3.4 4-3.4-5.5 2.8 4.3-5.2-7 4.5 2.2-3.8-4 3.3 1.5-5.5-4.3 5.2V132l-2 3.8-1.5-5.6z"/>
+    </g>
+  </g>
+  <path fill="#fff" d="M311.3 295l-.3 2.6h-.4l-.1-1.8a9.3 9.3 0 00-.5-1.6 7.3 7.3 0 00-.5-1.3l-1-1.4.8-2.2a6.6 6.6 0 011.5 2.4 9.4 9.4 0 01.5 3.2m7-4.2c0 .7-.2 1.2-.5 1.5-.2.3-.6.6-1.3.7l.4 1.5a6.7 6.7 0 010 2 22.5 22.5 0 01-.1 1.3h-.4a8.2 8.2 0 00-.1-1.3 5.5 5.5 0 00-.2-1l-.4-1a10.5 10.5 0 00-.7-1.4l-1-1.7.6-2 1 1c.3.2.6.3 1 .3.8 0 1.2-.4 1.2-1.3h.4v1.4m6.4 4.8l-.5 2.1c-.4 0-.6-.3-.8-.7l-.4-1.3a12.4 12.4 0 01-.1-1.7 4 4 0 01-1 .2 2 2 0 01-1.3-.4 1.3 1.3 0 01-.5-1c0-.9.3-1.7.7-2.3.5-.7 1-1 1.5-1.1.5 0 .8.1 1 .4a2 2 0 01.3.9v2c0 .9.1 1.5.3 1.9 0 .3.3.6.8 1m-2-3.5c0-.6-.3-.8-.8-.8a1 1 0 00-.6.1c-.2.1-.2.2-.2.3 0 .3.3.5 1 .5l.6-.1m8.7 3l-.3 2.6c-.5-.4-1-1-1.4-2a25.4 25.4 0 01-1.3-4.1 52.8 52.8 0 01-1.8 5.5 2.9 2.9 0 01-.8.7v-2.5c.6-.7.9-1.1 1-1.5a7.6 7.6 0 00.8-1.7l.5-2.7h.4l.9 2.7c.2.6.5 1.2.9 1.6l1 1.4"/>
+  <path fill="#bf0000" d="M350.8 319.4c.4.4.6.8.7 1.2l.4 1.6-.8.1a7.8 7.8 0 00-1-1.5 18.8 18.8 0 00-1.1-1.2 46 46 0 00-1.7-1.5 34.4 34.4 0 00-2-1.7c-.4-.2-.6-.4-.6-.5a1.9 1.9 0 01-.3-.8 11.2 11.2 0 01-.2-1.6l2.7 2.2a44.3 44.3 0 012.5 2.2l1.4 1.5m-9.5-5.8l-.2 2H338l.3-2h3m8.4 8.9l-7.6 2.3-1.3-2 6.5-2-.7-.8a2.8 2.8 0 00-.9-.6 1.4 1.4 0 01-.4 1 2 2 0 01-1 .6 3.4 3.4 0 01-1.8 0 2 2 0 01-1.3-.7 4 4 0 01-.7-2.2c0-1 .3-1.6.9-1.8.7-.2 1.8 0 3 .7a8.1 8.1 0 013 2.4l2.3 3.1m-5.8-4a3.8 3.8 0 00-.8-.3 1.1 1.1 0 00-.6 0 .7.7 0 00-.5.3.5.5 0 000 .6l.5.2h.6l.4-.3.4-.5m-8-1.6l-.5 2-3.2-.3.5-2 3.1.3m7.5 7.7l-1.7.4a5.3 5.3 0 01-1.7 0 3.6 3.6 0 01-1.5-.4c-.3.5-.8 1-1.5 1.2a7.4 7.4 0 01-1.6.6l-1.2.3-1-2 1.1-.3a9.1 9.1 0 001.3-.4l.9-.5-1-.5h-.7a.4.4 0 00-.2 0 .6.6 0 00-.2.3h-.5c-.5-.8-.6-1.5-.3-2s.9-.8 2-1a6.8 6.8 0 012.6-.2c.8.1 1.3.4 1.5.9.2.2.2.5.2.7l-.4 1.2h.5a2 2 0 00.6 0l1.7-.3 1 2m-8 1.8l-1.6.3a3 3 0 01-2.2-.4 5.5 5.5 0 01-1.7-2.6l-.8-2.2a2 2 0 00-.8-1 4.6 4.6 0 00-.9-.5l.6-2.1c.6.3 1 .6 1.4 1l1 1.7.5 1.5 1.1 2.2c.3.3.7.4 1 .3l1.7-.2.7 2m-7-7.5l-1 1.9-3-.7 1-1.9 3 .7m1.8 8.4l-7.5.7-.4-2 6.2-.7a2.3 2.3 0 00-.6-.8 8.3 8.3 0 00-1-.6l.5-2c.7.4 1.2.9 1.6 1.3.3.5.6 1.2.8 2.1l.4 2m-6 1a17 17 0 01-2.2-.2 10.5 10.5 0 01-1.7-.5 5.6 5.6 0 01-1.3.4 9.9 9.9 0 01-1.7 0h-2a2.5 2.5 0 01-1.2-.3c-.3-.2-.5-.5-.8-1a4.1 4.1 0 01-1.5 1l-1.7.1h-1.7l.2-2.1h1.7c.8 0 1.5 0 2.1-.4a2 2 0 001.3-1.8l.7.1a30.2 30.2 0 00-.1 1.3c0 .3 0 .5.3.7.3.2.6.3 1 .3h1.5c1 0 1.6 0 2-.2.6-.2.9-.5 1-1.1l.1-.4s.3 0 .5-.2l.5-.2v.4a8.9 8.9 0 010 .3l-.3 1.1a12.4 12.4 0 002 .5c.1-.2 0-.4-.1-.7l-.3-.6a.5.5 0 01.1-.3l.3-.2 1-.9.5 1v1l-.2 2.9m-11.3-8.7l-2 1.3-1.3-.9-1.4 1-1.9-1 1.8-1.3 1.5.8 1.5-1 1.8 1m-3 8.2l-7.3-1.2.8-2 6.2 1c0-.4 0-.7-.2-1a5.2 5.2 0 00-.5-.8l1.6-1.7c.4.6.6 1 .7 1.6 0 .5-.2 1.2-.5 2.1l-.8 2m-6.1-1l-1.6-.3c-.9-.2-1.4-.6-1.5-1.2-.2-.6.1-1.5.8-2.8l1.2-2c.3-.5.4-.9.3-1.2a2.2 2.2 0 00-.3-.7l2.2-1.6c.3.5.3 1 .3 1.4 0 .5-.3 1.1-.7 1.8l-.8 1.4a5.8 5.8 0 00-.9 2.2c0 .4.2.6.5.7l1.6.4-1.1 2m-3.8-8l-2.5 1.1-1.8-1.7 2.6-1 1.7 1.7m-1 6.6a6.8 6.8 0 01-1.6 1.4 4.2 4.2 0 01-1.7.6l-2.4-.1a14.8 14.8 0 01-2.8-.7 7.7 7.7 0 01-3.4-2c-.6-.8-.6-1.5 0-2.2a7 7 0 012-1.6c.8-.5 2-1 3.8-1.6l.4.5-2.8 1.2c-.5.3-1 .6-1.3 1-.4.4-.3 1 .2 1.6a10.5 10.5 0 006.3 2.2c1.2 0 2-.3 2.3-.7.3-.3.4-.6.5-1l.2-1.6 2.5-1.5a8 8 0 01-.1 1.5 4.4 4.4 0 01-1 1.6l-1.2 1.4"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ag.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ag.svg
new file mode 100644
index 0000000..bdeee48
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ag.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ag" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ag-a">
+      <path fill-opacity=".7" d="M-79.7 0H603v512H-79.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#ag-a)" transform="translate(74.7) scale(.9375)">
+    <path fill="#fff" d="M-120 0h763.3v511.5H-120z"/>
+    <path d="M-118.3.6h760.9v216.1h-761z"/>
+    <path fill="#0061ff" d="M21.3 203.2h505V317h-505z"/>
+    <path fill="#e20000" d="M642.8 1.8V512H262L642.8 1.7zm-761.5 0V512H262L-118.7 1.7z"/>
+    <path fill="#ffd600" d="M440.4 203.3L364 184l64.9-49-79.7 11.4 41-69.5-70.7 41L332.3 37l-47.9 63.8-19.3-74-21.7 76.3-47.8-65 13.7 83.2L138.5 78l41 69.5-77.4-12.5 63.8 47.8L86 203.3h354.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ai.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ai.svg
new file mode 100644
index 0000000..29e6586
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ai.svg
@@ -0,0 +1,763 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ai" viewBox="0 0 640 480">
+  <defs id="defs1837">
+    <clipPath id="ai-a">
+      <path id="path1834" fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <path id="rect4120" fill="#012169" fill-opacity="1" stroke-width="4.4" d="M0 0h640v480H0z"/>
+  <path id="path1855" fill="#49497d" d="M484.3 180.4l2 2z"/>
+  <path id="path1857" fill="#0e0e6e" d="M486.3 180.4l2 2z"/>
+  <path id="path1859" fill="#262678" d="M480.2 182.4l2 2z"/>
+  <path id="path1861" fill="#808067" d="M482.3 182.4l2 2z"/>
+  <path id="path1863" fill="#58587b" d="M488.3 182.4l2 2z"/>
+  <path id="path1865" fill="#0e0e6e" d="M413.2 184.5l2 2z"/>
+  <path id="path1867" fill="#1b1b74" d="M476.2 184.5l2 2z"/>
+  <path id="path1869" fill="#6e6c70" d="M478.2 184.5l2 2z"/>
+  <path id="path1871" fill="#cc3" d="M416.8 188c0 52.6-6 111.7 33 152.8 8 8.4 23.4 27.7 36.5 27 13.7-.8 31.4-21.1 39.2-31 34-44.8 28.7-98.2 29.8-150.2-15.3 6.9-23 9.2-36.4 9-10 1-25.3-5.5-34.5-10-6 4-14.7 8.9-30.4 9.4-18 .8-23.8-2.3-37.2-7z"/>
+  <path id="path1873" fill="#99994e" d="M490.4 184.5l2 2z"/>
+  <path id="path1875" fill="#49497d" d="M492.4 184.5l2 2z"/>
+  <path id="path1877" fill="#0e0e6e" d="M555.3 184.5l2 2z"/>
+  <path id="path1879" fill="#a4a43d" d="M415.3 186.5l2 2z"/>
+  <path id="path1881" fill="#6e6c70" d="M417.3 186.5l2 2z"/>
+  <path id="path1883" fill="#3a3a7c" d="M419.3 186.5l2 2z"/>
+  <path id="path1885" fill="#1b1b74" d="M472 186.5l2 2z"/>
+  <path id="path1887" fill="#6e6c70" d="M474 186.5l2 2z"/>
+  <path id="path1889" fill="#a4a43d" d="M476.2 186.5l2 2z"/>
+  <path id="path1891" fill="#d0d045" d="M484.3 186.5l2 2z"/>
+  <path id="path1893" fill="#a4a43d" d="M492.4 186.5l2 2z"/>
+  <path id="path1895" fill="#8d8d5b" d="M494.4 186.5l2 2z"/>
+  <path id="path1897" fill="#3a3a7c" d="M496.5 186.5l2 2z"/>
+  <path id="path1899" fill="#262678" d="M549.2 186.5l2 2z"/>
+  <path id="path1901" fill="#53527c" d="M551.3 186.5l2 2z"/>
+  <path id="path1903" fill="#8d8d5b" d="M553.3 186.5l2 2z"/>
+  <path id="path1905" fill="#737370" d="M423.4 188.6l2 2z"/>
+  <path id="path1907" fill="#53527c" d="M425.4 188.6l2 2z"/>
+  <path id="path1909" fill="#1b1b74" d="M427.4 188.6l2 2z"/>
+  <path id="path1911" fill="#262678" d="M468 188.6l2 2z"/>
+  <path id="path1913" fill="#6e6c70" d="M470 188.6l2 2z"/>
+  <path id="path1915" fill="#a4a43d" d="M472 188.6l2 2z"/>
+  <path id="path1917" fill="#e5e59d" d="M482.3 188.6l2 2z"/>
+  <path id="path1919" fill="#fff" d="M420.9 193.8c-1 27.6-.2 58.6 4 88 4.9 15.5 4.2 24 11.3 33.2l99-.8c6-9.7 10.5-24.4 11-30.3 5.6-29.7 5.7-62.6 5.9-92a62 62 0 01-35.7 7.4 69 69 0 01-30.5-9.2c-9.5 5.6-12.8 8.2-28.4 8.9-12.2.6-22 1.6-36.6-5.2z"/>
+  <path id="path1921" fill="#f2f1d7" d="M486.3 188.6l2 2z"/>
+  <path id="path1923" fill="#d9d868" d="M488.3 188.6l2 2z"/>
+  <path id="path1925" fill="#a4a43d" d="M496.5 188.6l2 2z"/>
+  <path id="path1927" fill="#99994e" d="M498.5 188.6l2 2z"/>
+  <path id="path1929" fill="#49497d" d="M500.5 188.6l2 2z"/>
+  <path id="path1931" fill="#0e0e6e" d="M502.5 188.6l2 2z"/>
+  <path id="path1933" fill="#3a3a7c" d="M543.2 188.6l2 2z"/>
+  <path id="path1935" fill="#667" d="M545.2 188.6l2 2z"/>
+  <path id="path1937" fill="#99994e" d="M547.2 188.6l2 2z"/>
+  <path id="path1939" fill="#a4a43d" d="M549.2 188.6l2 2-2-2m-121.8 2l2 2z"/>
+  <path id="path1941" fill="#99994e" d="M429.5 190.6l2 2z"/>
+  <path id="path1943" fill="#6e6c70" d="M431.5 190.6l2 2z"/>
+  <path id="path1945" fill="#49497d" d="M433.5 190.6l2 2z"/>
+  <path id="path1947" fill="#1b1b74" d="M435.5 190.6l2 2-2-2m26.4 0l2 2z"/>
+  <path id="path1949" fill="#53527c" d="M463.9 190.6l2 2-2-2z"/>
+  <path id="path1951" fill="#8d8d5b" d="M466 190.6l2 2z"/>
+  <path id="path1953" fill="#a4a43d" d="M468 190.6l2 2z"/>
+  <path id="path1955" fill="#e5e59d" d="M478.2 190.6l2 2z"/>
+  <path id="path1957" fill="#fbfaf2" d="M480.2 190.6l2 2z"/>
+  <path id="path1959" fill="#f2f1d2" d="M490.4 190.6l2 2z"/>
+  <path id="path1961" fill="#d9d868" d="M492.4 190.6l2 2z"/>
+  <path id="path1963" fill="#a4a43d" d="M502.5 190.6l2 2z"/>
+  <path id="path1965" fill="#6e6c70" d="M504.6 190.6l2 2z"/>
+  <path id="path1967" fill="#3a3a7c" d="M506.6 190.6l2 2z"/>
+  <path id="path1969" fill="#0e0e6e" d="M533 190.6l2 2z"/>
+  <path id="path1971" fill="#32327b" d="M535 190.6l2 2z"/>
+  <path id="path1973" fill="#58587b" d="M537 190.6l2 2z"/>
+  <path id="path1975" fill="#808067" d="M539 190.6l2 2z"/>
+  <path id="path1977" fill="#a4a43d" d="M542.5 191.2l1.3.7z"/>
+  <path id="path1979" fill="#dddc7a" d="M419.3 192.6l2 2z"/>
+  <path id="path1981" fill="#d0d045" d="M421.3 192.6l2 2z"/>
+  <path id="path1983" fill="#a4a43d" d="M436.9 193.2l1.4.7z"/>
+  <path id="path1985" fill="#808067" d="M439.6 192.6l2 2z"/>
+  <path id="path1987" fill="#667" d="M441.6 192.6l2 2z"/>
+  <path id="path1989" fill="#58587b" d="M443.7 192.6l2 2z"/>
+  <path id="path1991" fill="#49497d" d="M445.7 192.6l2 2z"/>
+  <path id="path1993" fill="#737370" d="M457.9 192.6l2 2z"/>
+  <path id="path1995" fill="#99994e" d="M459.9 192.6l2 2z"/>
+  <path id="path1997" fill="#a4a43d" d="M461.9 192.6l2 2z"/>
+  <path id="path1999" fill="#e5e59d" d="M474 192.6l2 2z"/>
+  <path id="path2001" fill="#fbfaf2" d="M476.2 192.6l2 2z"/>
+  <path id="path2003" fill="#f2f1d2" d="M494.4 192.6l2 2z"/>
+  <path id="path2005" fill="#d9d868" d="M496.5 192.6l2 2z"/>
+  <path id="path2007" fill="#a4a43d" d="M507.9 193.2l1.4.7-1.3-.7z"/>
+  <path id="path2009" fill="#808067" d="M510.7 192.6l2 2z"/>
+  <path id="path2011" fill="#667" d="M512.7 192.6l2 2z"/>
+  <path id="path2013" fill="#58587b" d="M514.7 192.6l2 2z"/>
+  <path id="path2015" fill="#3a3a7c" d="M516.8 192.6l2 2z"/>
+  <path id="path2017" fill="#58587b" d="M526.2 193.2l1.4.7z"/>
+  <path id="path2019" fill="#737370" d="M528.9 192.6l2 2z"/>
+  <path id="path2021" fill="#99994e" d="M530.9 192.6l2 2-2-2z"/>
+  <path id="path2023" fill="#a4a43d" d="M533 192.6l2 2z"/>
+  <path id="path2025" fill="#dddc7a" d="M549.2 192.6l2 2z"/>
+  <path id="path2027" fill="#d0d045" d="M551.3 192.6l2 2z"/>
+  <path id="path2029" fill="#f2f1d7" d="M423.4 194.6l2 2z"/>
+  <path id="path2031" fill="#e0dea1" d="M425.4 194.6l2 2z"/>
+  <path id="path2033" fill="#dddc7a" d="M427.4 194.6l2 2z"/>
+  <path id="path2035" fill="#d9d868" d="M468 194.6l2 2z"/>
+  <path id="path2037" fill="#e5e3af" d="M470 194.6l2 2z"/>
+  <path id="path2039" fill="#f6f6e4" d="M498.5 194.6l2 2z"/>
+  <path id="path2041" fill="#e1e18c" d="M500.5 194.6l2 2z"/>
+  <path id="path2043" fill="#d4d456" d="M541 194.6l2 2z"/>
+  <path id="path2045" fill="#e1e18c" d="M543.2 194.6l2 2z"/>
+  <path id="path2047" fill="#eeedc1" d="M545.2 194.6l2 2z"/>
+  <path id="path2049" fill="#f2f1d2" d="M431.5 196.6l2 2z"/>
+  <path id="path2051" fill="#e0dea1" d="M433.5 196.6l2 2z"/>
+  <path id="path2053" fill="#dddc7a" d="M435.5 196.6l2 2z"/>
+  <path id="path2055" fill="#d0d045" d="M437.6 196.6l2 2z"/>
+  <path id="path2057" fill="#dddc7a" d="M461.9 196.6l2 2z"/>
+  <path id="path2059" fill="#e5e3af" d="M463.9 196.6l2 2-2-2z"/>
+  <path id="path2061" fill="#f6f6e4" d="M466 196.6l2 2z"/>
+  <path id="path2063" fill="#eeedc1" d="M504.6 196.6l2 2z"/>
+  <path id="path2065" fill="#e1e18c" d="M506.6 196.6l2 2z"/>
+  <path id="path2067" fill="#d4d456" d="M508.6 196.6l2 2z"/>
+  <path id="path2069" fill="#d9d868" d="M533 196.6l2 2z"/>
+  <path id="path2071" fill="#e1e18c" d="M535 196.6l2 2z"/>
+  <path id="path2073" fill="#eeedc1" d="M537 196.6l2 2z"/>
+  <path id="path2075" fill="#f6f6e4" d="M539 196.6l2 2z"/>
+  <path id="path2077" fill="#f2f1d7" d="M441.6 198.6l2 2-2-2z"/>
+  <path id="path2079" fill="#f2f1d2" d="M443.7 198.6l2 2-2-2z"/>
+  <path id="path2081" fill="#eeedc1" d="M445.7 198.6l2 2-2-2z"/>
+  <path id="path2083" fill="#f2f1d2" d="M455.2 199.3l1.3.7z"/>
+  <path id="path2085" fill="#fbfaf2" d="M457.9 198.6l2 2-2-2z"/>
+  <path id="path2087" fill="#fef8f1" d="M468 198.6l4 4v-4h-4z"/>
+  <path id="path2089" fill="#f2f1d7" d="M512.7 198.6l2 2-2-2z"/>
+  <path id="path2091" fill="#f2f1d2" d="M514.7 198.6l2 2-2-2z"/>
+  <path id="path2093" fill="#e5e3af" d="M516.8 198.6l2 2-2-2z"/>
+  <path id="path2095" fill="#e5e59d" d="M520.2 199.3l1.3.7-1.4-.7z"/>
+  <path id="path2097" fill="#e0dea1" d="M522.9 198.6l2 2-2-2z"/>
+  <path id="path2099" fill="#f2f1d2" d="M526.2 199.3l1.4.7z"/>
+  <path id="path2101" fill="#fbfaf2" d="M528.9 198.6l2 2-2-2z"/>
+  <path id="path2103" fill="#fef8f1" d="M463.9 200.7l2 2-2-2z"/>
+  <path id="path2105" fill="#fbbe66" d="M466 200.7l2 2z"/>
+  <path id="path2107" fill="#fbc477" d="M463.9 202.7l2 2-2-2z"/>
+  <path id="path2109" fill="#fcb144" d="M468 202.7l2 2z"/>
+  <path id="path2111" fill="#fe9f11" d="M463.9 204.8l2 2-2-2z"/>
+  <path id="path2113" fill="#fea522" d="M468 204.8l2 2z"/>
+  <path id="path2115" fill="#fae3c9" d="M461.9 206.8l2 2-2-2m8.2 0l2 2z"/>
+  <path id="path2117" fill="#fbead6" d="M480.2 206.8l2 2z"/>
+  <path id="path2119" fill="#f9d6aa" d="M482.3 206.8l2 2z"/>
+  <path id="path2121" fill="#fae3c9" d="M490.4 206.8l2 2z"/>
+  <path id="path2123" fill="#fef8f1" d="M492.4 206.8l2 2z"/>
+  <path id="path2125" fill="#f9d099" d="M461.9 208.8l2 2z"/>
+  <path id="path2127" fill="#fdab33" d="M470 208.8l2 2z"/>
+  <path id="path2129" fill="#fcf1e4" d="M474 208.8l2 2z"/>
+  <path id="path2131" fill="#fbc477" d="M476.2 208.8l2 2z"/>
+  <path id="path2133" fill="#fea522" d="M478.2 208.8l2 2z"/>
+  <path id="path2135" fill="#fcb755" d="M494.4 208.8l2 2z"/>
+  <path id="path2137" fill="#f9d6aa" d="M496.5 208.8l2 2z"/>
+  <path id="path2139" fill="#faca88" d="M461.9 210.9l2 2z"/>
+  <path id="path2141" fill="#fea522" d="M472 210.9l2 2-2-2m26.5 0l2 2z"/>
+  <path id="path2143" fill="#f8dcbb" d="M500.5 210.9l2 2z"/>
+  <path id="path2145" fill="#f6f6e4" d="M419.3 212.9l2 2z"/>
+  <path id="path2147" fill="#fbc477" d="M461.9 212.9l2 2z"/>
+  <path id="path2149" fill="#fbbe66" d="M502.5 212.9l2 2z"/>
+  <path id="path2151" fill="#f8dcbb" d="M504.6 212.9l2 2z"/>
+  <path id="path2153" fill="#faca88" d="M461.9 214.9l2 2z"/>
+  <path id="path2155" fill="#fcb755" d="M508.6 214.9l2 2z"/>
+  <path id="path2157" fill="#f8dcbb" d="M510.7 214.9l2 2z"/>
+  <path id="path2159" fill="#fef8f1" d="M459.9 217l2 2z"/>
+  <path id="path2161" fill="#fe9f11" d="M461.9 217l2 2z"/>
+  <path id="path2163" fill="#fdab33" d="M518.8 217l2 2z"/>
+  <path id="path2165" fill="#fcb144" d="M520.9 217l2 2z"/>
+  <path id="path2167" fill="#fbc477" d="M522.9 217l2 2z"/>
+  <path id="path2169" fill="#f9d6aa" d="M524.9 217l4 4z"/>
+  <path id="path2171" fill="#fef8f1" d="M526.9 217l2 2z"/>
+  <path id="path2173" fill="#fcb144" d="M459.9 219l2 2z"/>
+  <path id="path2175" fill="#fdab33" d="M488.3 219l2 2z"/>
+  <path id="path2177" fill="#fbc477" d="M490.4 219l2 2zm8 0l2 2-2-2z"/>
+  <path id="path2179" fill="#fea522" d="M500.5 219l2 2z"/>
+  <path id="path2181" fill="#fae3c9" d="M457.9 221l2 2z"/>
+  <path id="path2183" fill="#fcb144" d="M484.3 221l2 2z"/>
+  <path id="path2185" fill="#fae3c9" d="M486.3 221l2 2z"/>
+  <path id="path2187" fill="#f8dcbb" d="M502.5 221l2 2z"/>
+  <path id="path2189" fill="#fdab33" d="M504.6 221l2 2z"/>
+  <path id="path2191" fill="#fe9f11" d="M516.8 221l2 2z"/>
+  <path id="path2193" fill="#fcb755" d="M518.8 221l2 2z"/>
+  <path id="path2195" fill="#f9d099" d="M520.9 221l2 2z"/>
+  <path id="path2197" fill="#fbead6" d="M522.9 221l2 2z"/>
+  <path id="path2199" fill="#fcb144" d="M457.9 223l2 2z"/>
+  <path id="path2201" fill="#fbbe66" d="M482.3 223l2 2z"/>
+  <path id="path2203" fill="#f9d099" d="M506.6 223l2 2z"/>
+  <path id="path2205" fill="#fbead6" d="M514.7 223l2 2z"/>
+  <path id="path2207" fill="#fcf1e4" d="M455.9 225l2 2z"/>
+  <path id="path2209" fill="#fbbe66" d="M480.2 225l2 2z"/>
+  <path id="path2211" fill="#f9d099" d="M508.6 225l2 2z"/>
+  <path id="path2213" fill="#fae3c9" d="M514.7 225l2 2z"/>
+  <path id="path2215" fill="#fbc477" d="M455.9 227l2 2z"/>
+  <path id="path2217" fill="#fcb144" d="M478.2 227l2 2-2-2m32.5 0l2 2z"/>
+  <path id="path2219" fill="#fbbe66" d="M514.7 227l2 2z"/>
+  <path id="path2221" fill="#f6f6e4" d="M419.3 229l2 2z"/>
+  <path id="path2223" fill="#fea522" d="M455.9 229l2 2z"/>
+  <path id="path2225" fill="#fbead6" d="M478.2 229l2 2z"/>
+  <path id="path2227" fill="#fcf1e4" d="M510.7 229l2 2z"/>
+  <path id="path2229" fill="#fef8f1" d="M516.8 229l2 2z"/>
+  <path id="path2231" fill="#fcf1e4" d="M453.9 231.2l2 2z"/>
+  <path id="path2233" fill="#fbbe66" d="M476.2 231.2l2 2z"/>
+  <path id="path2235" fill="#faca88" d="M512.7 231.2l2 2z"/>
+  <path id="path2237" fill="#f9d099" d="M516.8 231.2l2 2z"/>
+  <path id="path2239" fill="#f9d6aa" d="M453.9 233.2l2 2z"/>
+  <path id="path2241" fill="#fcf1e4" d="M476.2 233.2l2 2z"/>
+  <path id="path2243" fill="#fae3c9" d="M486.3 233.2l2 2z"/>
+  <path id="path2245" fill="#fea522" d="M488.3 233.2l2 2z"/>
+  <path id="path2247" fill="#fcb144" d="M490.4 233.2l2 2z"/>
+  <path id="path2249" fill="#f9d6aa" d="M492.4 233.2l2 2z"/>
+  <path id="path2251" fill="#fef8f1" d="M512.7 233.2l2 2z"/>
+  <path id="path2253" fill="#fea522" d="M514.7 233.2l2 2z"/>
+  <path id="path2255" fill="#fdab33" d="M516.8 233.2l2 2z"/>
+  <path id="path2257" fill="#faca88" d="M453.9 235.2l-2.1 6 2-6z"/>
+  <path id="path2259" fill="#fea522" d="M474 235.2l2 2z"/>
+  <path id="path2261" fill="#fef8f1" d="M476.2 235.2l2 2z"/>
+  <path id="path2263" fill="#f9d099" d="M486.3 235.2l2 2z"/>
+  <path id="path2265" fill="#fdab33" d="M494.4 235.2l2 2z"/>
+  <path id="path2267" fill="#fae3c9" d="M496.5 235.2l2 2z"/>
+  <path id="path2269" fill="#f8dcbb" d="M514.7 235.2l2 2z"/>
+  <path id="path2271" fill="#f90" d="M516.8 235.2l2 2z"/>
+  <path id="path2273" fill="#fbead6" d="M519.5 236.6l.6 1.3z"/>
+  <path id="path2275" fill="#fea522" d="M478.2 237.2l2 2z"/>
+  <path id="path2277" fill="#fbbe66" d="M480.2 237.2l2 2z"/>
+  <path id="path2279" fill="#faca88" d="M482.3 237.2l2 2z"/>
+  <path id="path2281" fill="#fcb144" d="M484.3 237.2l2 2z"/>
+  <path id="path2283" fill="#fae3c9" d="M486.3 237.2l2 2z"/>
+  <path id="path2285" fill="#fe9f11" d="M488.3 237.2l2 2z"/>
+  <path id="path2287" fill="#fdab33" d="M498.5 237.2l2 2z"/>
+  <path id="path2289" fill="#fbc477" d="M500.5 237.2l2 2z"/>
+  <path id="path2291" fill="#faca88" d="M502.5 237.2l2 2z"/>
+  <path id="path2293" fill="#f9d6aa" d="M504.6 237.2l2 2z"/>
+  <path id="path2295" fill="#fae3c9" d="M507.9 237.9l1.4.7-1.3-.7z"/>
+  <path id="path2297" fill="#fef8f1" d="M510.7 237.2l2 2z"/>
+  <path id="path2299" fill="#fbc477" d="M516.8 237.2l2 2z"/>
+  <path id="path2301" fill="#fef8f1" d="M429.5 239.3l2 2z"/>
+  <path id="path2303" fill="#fcf1e4" d="M431.5 239.3l2 2z"/>
+  <path id="path2305" fill="#fcb755" d="M484.3 239.3l2 2z"/>
+  <path id="path2307" fill="#fbead6" d="M488.3 239.3l2 2z"/>
+  <path id="path2309" fill="#fea522" d="M490.4 239.3l2 2z"/>
+  <path id="path2311" fill="#fe9f11" d="M506.6 239.3l2 2z"/>
+  <path id="path2313" fill="#fcb144" d="M508.6 239.3l-2 4z"/>
+  <path id="path2315" fill="#fe9f11" d="M512.7 239.3l2 2z"/>
+  <path id="path2317" fill="#fbbe66" d="M514.7 239.3l2 2z"/>
+  <path id="path2319" fill="#fcf1e4" d="M516.8 239.3l2 2z"/>
+  <path id="path2321" fill="#fae3c9" d="M429.5 241.3l2 2z"/>
+  <path id="path2323" fill="#fe9f11" d="M431.5 241.3l4 4z"/>
+  <path id="path2325" fill="#fbead6" d="M433.5 241.3l2 2zm18.3 0l2 2z"/>
+  <path id="path2327" fill="#fae3c9" d="M453.9 241.3l2 2z"/>
+  <path id="path2329" fill="#fe9f11" d="M472 241.3l2 2z"/>
+  <path id="path2331" fill="#fbc477" d="M474 241.3l2 2z"/>
+  <path id="path2333" fill="#fea522" d="M476.2 241.3l2 2z"/>
+  <path id="path2335" fill="#fbc477" d="M482.3 241.3l2 2z"/>
+  <path id="path2337" fill="#fef8f1" d="M484.3 241.3l2 2z"/>
+  <path id="path2339" fill="#fbc477" d="M492.4 241.3l2 2z"/>
+  <path id="path2341" fill="#fff" d="M508.6 241.3l2 2z"/>
+  <path id="path2343" fill="#fdab33" d="M510.7 241.3l2 2z"/>
+  <path id="path2345" fill="#fbc477" d="M518.8 241.3l2 2z"/>
+  <path id="path2347" fill="#fef8f1" d="M429.5 243.3l2 2z"/>
+  <path id="path2349" fill="#fbead6" d="M435.5 243.3l2 2z"/>
+  <path id="path2351" fill="#f9d6aa" d="M445.7 243.3l2 2z"/>
+  <path id="path2353" fill="#fe9f11" d="M455.9 243.3l2 2z"/>
+  <path id="path2355" fill="#f9d6aa" d="M459.2 244l1.4.7z"/>
+  <path id="path2357" fill="#f8dcbb" d="M472 243.3l2 2z"/>
+  <path id="path2359" fill="#fcf1e4" d="M478.2 243.3l2 2z"/>
+  <path id="path2361" fill="#f9d6aa" d="M494.4 243.3l2 2z"/>
+  <path id="path2363" fill="#fdab33" d="M508.6 243.3l2 2z"/>
+  <path id="path2365" fill="#fcb755" d="M520.9 243.3l2 2z"/>
+  <path id="path2367" fill="#fef8f1" d="M522.9 243.3l2 2z"/>
+  <path id="path2369" fill="#53527c" d="M413.2 245.4l2 2z"/>
+  <path id="path2371" fill="#fcb755" d="M431.5 245.4l2 2z"/>
+  <path id="path2373" fill="#fea522" d="M435.5 245.4l2 2z"/>
+  <path id="path2375" fill="#fbead6" d="M443.7 245.4l2 2z"/>
+  <path id="path2377" fill="#fe9f11" d="M447.7 245.4l2 2z"/>
+  <path id="path2379" fill="#fcf1e4" d="M449.8 245.4l2 2z"/>
+  <path id="path2381" fill="#fbbe66" d="M455.9 245.4l2 2z"/>
+  <path id="path2383" fill="#fbc477" d="M457.9 245.4l2 2z"/>
+  <path id="path2385" fill="#fbbe66" d="M459.9 245.4l2 2z"/>
+  <path id="path2387" fill="#fea522" d="M470 245.4l2 2z"/>
+  <path id="path2389" fill="#f9d6aa" d="M496.5 245.4l2 2z"/>
+  <path id="path2391" fill="#fcb144" d="M522.9 245.4l2 2z"/>
+  <path id="path2393" fill="#8d8d5b" d="M555.3 245.4l2 2z"/>
+  <path id="path2395" fill="#e5e3af" d="M419.3 247.4l2 2z"/>
+  <path id="path2397" fill="#f8dcbb" d="M431.5 247.4l2 2z"/>
+  <path id="path2399" fill="#fdab33" d="M437.6 247.4l2 2z"/>
+  <path id="path2401" fill="#fe9f11" d="M443.7 247.4l2 2z"/>
+  <path id="path2403" fill="#faca88" d="M447.7 247.4l2 2z"/>
+  <path id="path2405" fill="#fcf1e4" d="M455.9 247.4l2 2z"/>
+  <path id="path2407" fill="#f9d099" d="M470 247.4l2 2-2-2m28.5 0l2 2z"/>
+  <path id="path2409" fill="#fbbe66" d="M524.9 247.4l2 2z"/>
+  <path id="path2411" fill="#fea522" d="M433.5 249.4l2 2z"/>
+  <path id="path2413" fill="#fdab33" d="M439.6 249.4l2 2z"/>
+  <path id="path2415" fill="#fea522" d="M441.6 249.4l2 2z"/>
+  <path id="path2417" fill="#fe9f11" d="M445.7 249.4l2 2z"/>
+  <path id="path2419" fill="#fef8f1" d="M447.7 249.4l2 2z"/>
+  <path id="path2421" fill="#fbbe66" d="M457.9 249.4l2 2z"/>
+  <path id="path2423" fill="#fef8f1" d="M470 249.4l2 2z"/>
+  <path id="path2425" fill="#fbbe66" d="M500.5 249.4l2 2z"/>
+  <path id="path2427" fill="#f9d099" d="M526.9 249.4l2 2z"/>
+  <path id="path2429" fill="#f9d6aa" d="M433.5 251.5l2 2z"/>
+  <path id="path2431" fill="#f9d099" d="M445.7 251.5l2 2z"/>
+  <path id="path2433" fill="#fcf1e4" d="M457.9 251.5l2 2z"/>
+  <path id="path2435" fill="#fdab33" d="M468 251.5l2 2-2-2m34.5 0l2 2z"/>
+  <path id="path2437" fill="#fbead6" d="M528.9 251.5l2 2z"/>
+  <path id="path2439" fill="#fea522" d="M435.5 253.5l2 2z"/>
+  <path id="path2441" fill="#fe9f11" d="M443.7 253.5l2 2z"/>
+  <path id="path2443" fill="#fcb144" d="M459.9 253.5l2 2z"/>
+  <path id="path2445" fill="#faca88" d="M468 253.5l2 2z"/>
+  <path id="path2447" fill="#f8dcbb" d="M502.5 253.5l2 2z"/>
+  <path id="path2449" fill="#fcb144" d="M528.9 253.5l2 2z"/>
+  <path id="path2451" fill="#d3d079" d="M419.3 255.6l2 2z"/>
+  <path id="path2453" fill="#faca88" d="M435.5 255.6l2 2zm24.4 0l2 2z"/>
+  <path id="path2455" fill="#fae3c9" d="M468 255.6l2 2-2-2m34.5 0l2 2z"/>
+  <path id="path2457" fill="#f8dcbb" d="M530.9 255.6l2 2-2-2z"/>
+  <path id="path2459" fill="#f2f1d7" d="M549.2 255.6l2 2z"/>
+  <path id="path2461" fill="#58587b" d="M556 256.9l.7 1.3z"/>
+  <path id="path2463" fill="#d9d868" d="M419.9 258.9l.8 1.4-.7-1.4z"/>
+  <path id="path2465" fill="#f8dcbb" d="M435.5 257.6l2 2z"/>
+  <path id="path2467" fill="#f9d6aa" d="M500.5 257.6l2 2z"/>
+  <path id="path2469" fill="#fe9f11" d="M502.5 257.6l2 2z"/>
+  <path id="path2471" fill="#fcb144" d="M530.9 257.6l2 2-2-2z"/>
+  <path id="path2473" fill="#f2f1d2" d="M549.9 258.9l.7 1.4z"/>
+  <path id="path2475" fill="#fcf1e4" d="M435.5 259.6l2 2z"/>
+  <path id="path2477" fill="#fef8f1" d="M498.5 259.6l2 2z"/>
+  <path id="path2479" fill="#fe9f11" d="M500.5 259.6l2 2z"/>
+  <path id="path2481" fill="#fdab33" d="M506.6 259.6l-2 4z"/>
+  <path id="path2483" fill="#fcb755" d="M508.6 259.6l2 2z"/>
+  <path id="path2485" fill="#fea522" d="M533 259.6l2 2z"/>
+  <path id="path2487" fill="#f9d099" d="M535 259.6l2 2z"/>
+  <path id="path2489" fill="#53527c" d="M555.3 259.6l2 2z"/>
+  <path id="path2491" fill="#808067" d="M415.9 263l.7 1.3z"/>
+  <path id="path2493" fill="#fea522" d="M437.6 261.6l2 2-2-2m6 0l2 2-2-2z"/>
+  <path id="path2495" fill="#fe9f11" d="M466 261.6l2 2z"/>
+  <path id="path2497" fill="#fae3c9" d="M498.5 261.6l2 2z"/>
+  <path id="path2499" fill="#fef8f1" d="M506.6 261.6l2 2z"/>
+  <path id="path2501" fill="#fcb144" d="M510.7 261.6l2 2z"/>
+  <path id="path2503" fill="#fcb755" d="M537 261.6l2 2z"/>
+  <path id="path2505" fill="#fef8f1" d="M539 261.6l4 4z"/>
+  <path id="path2507" fill="#e5e59d" d="M549.9 263l.7 1.3z"/>
+  <path id="path2509" fill="#32327b" d="M556 263l.7 1.3z"/>
+  <path id="path2511" fill="#fcb755" d="M438.3 265l.6 1.4z"/>
+  <path id="path2513" fill="#fef8f1" d="M445.7 263.6l2 2z"/>
+  <path id="path2515" fill="#fbbe66" d="M466 263.6l2 2z"/>
+  <path id="path2517" fill="#fbead6" d="M498.5 263.6l2 2z"/>
+  <path id="path2519" fill="#fe9f11" d="M502.5 263.6l2 2z"/>
+  <path id="path2521" fill="#fcf1e4" d="M504.6 263.6l2 2z"/>
+  <path id="path2523" fill="#fbead6" d="M510.7 263.6l2 2z"/>
+  <path id="path2525" fill="#fdab33" d="M539 263.6l2 2z"/>
+  <path id="path2527" fill="#667" d="M415.3 265.6l2 2-2-2z"/>
+  <path id="path2529" fill="#f6f6e4" d="M421.3 265.6l2 2-2-2z"/>
+  <path id="path2531" fill="#f9d6aa" d="M445.7 265.6l2 2-2-2z"/>
+  <path id="path2533" fill="#fdab33" d="M461.9 265.6l2 2-2-2z"/>
+  <path id="path2535" fill="#fe9f11" d="M463.9 265.6l2 2-2-2z"/>
+  <path id="path2537" fill="#fcf1e4" d="M466 265.6l2 2-2-2z"/>
+  <path id="path2539" fill="#fea522" d="M500.5 265.6l2 2-2-2z"/>
+  <path id="path2541" fill="#faca88" d="M502.5 265.6l2 2-2-2m10.2 0l2 2z"/>
+  <path id="path2543" fill="#fcb144" d="M541 265.6l2 2-2-2z"/>
+  <path id="path2545" fill="#dddc7a" d="M549.2 265.6l2 2-2-2z"/>
+  <path id="path2547" fill="#58587b" d="M415.3 267.7l2 2z"/>
+  <path id="path2549" fill="#f2f1d2" d="M421.3 267.7l2 2z"/>
+  <path id="path2551" fill="#fcb144" d="M438.3 269l.6 1.4z"/>
+  <path id="path2553" fill="#fea522" d="M445.7 267.7l2 2z"/>
+  <path id="path2555" fill="#fef8f1" d="M466 267.7l2 2z"/>
+  <path id="path2557" fill="#fea522" d="M468 267.7l2 2z"/>
+  <path id="path2559" fill="#fcb144" d="M472 267.7l2 2z"/>
+  <path id="path2561" fill="#fbead6" d="M474 267.7l2 2z"/>
+  <path id="path2563" fill="#f8dcbb" d="M500.5 267.7l2 2z"/>
+  <path id="path2565" fill="#fcf1e4" d="M502.5 267.7l2 2z"/>
+  <path id="path2567" fill="#fef8f1" d="M512.7 267.7l2 2z"/>
+  <path id="path2569" fill="#fe9f11" d="M514.7 267.7l2 2z"/>
+  <path id="path2571" fill="#fbead6" d="M543.2 267.7l2 2z"/>
+  <path id="path2573" fill="#d9d868" d="M549.2 267.7l2 2z"/>
+  <path id="path2575" fill="#3a3a7c" d="M415.3 269.7l2 2z"/>
+  <path id="path2577" fill="#e5e3af" d="M421.3 269.7l2 2z"/>
+  <path id="path2579" fill="#faca88" d="M447.7 269.7l2 2z"/>
+  <path id="path2581" fill="#fbead6" d="M468 269.7l2 2z"/>
+  <path id="path2583" fill="#fe9f11" d="M474 269.7l2 2z"/>
+  <path id="path2585" fill="#fcf1e4" d="M476.2 269.7l2 2z"/>
+  <path id="path2587" fill="#fbead6" d="M498.5 269.7l2 2z"/>
+  <path id="path2589" fill="#fae3c9" d="M500.5 269.7l2 2z"/>
+  <path id="path2591" fill="#fbead6" d="M502.5 269.7l2 2z"/>
+  <path id="path2593" fill="#fbbe66" d="M514.7 269.7l2 2-2-2m16.3 0l2 2z"/>
+  <path id="path2595" fill="#fcf1e4" d="M533 269.7l2 2z"/>
+  <path id="path2597" fill="#fef8f1" d="M535 269.7l2 2z"/>
+  <path id="path2599" fill="#f8dcbb" d="M537 269.7l2 2z"/>
+  <path id="path2601" fill="#fcb755" d="M539 269.7l2 2z"/>
+  <path id="path2603" fill="#fae3c9" d="M543.2 269.7l2 2z"/>
+  <path id="path2605" fill="#808067" d="M553.3 269.7l2 2z"/>
+  <path id="path2607" fill="#32327b" d="M415.3 271.8l2 2z"/>
+  <path id="path2609" fill="#a4a43d" d="M417.9 273l.7 1.5-.6-1.4z"/>
+  <path id="path2611" fill="#e5e59d" d="M421.3 271.8l2 2z"/>
+  <path id="path2613" fill="#fbc477" d="M437.6 271.8l2 2z"/>
+  <path id="path2615" fill="#f9d6aa" d="M449.8 271.8l2 2z"/>
+  <path id="path2617" fill="#fbbe66" d="M470 271.8l2 2z"/>
+  <path id="path2619" fill="#f9d099" d="M476.2 271.8l2 2z"/>
+  <path id="path2621" fill="#fae3c9" d="M494.4 271.8l2 2z"/>
+  <path id="path2623" fill="#fcb144" d="M496.5 271.8l2 2z"/>
+  <path id="path2625" fill="#fae3c9" d="M504.6 271.8l2 2z"/>
+  <path id="path2627" fill="#f8dcbb" d="M514.7 271.8l2 2z"/>
+  <path id="path2629" fill="#f9d099" d="M530.9 271.8l2 2-2-2z"/>
+  <path id="path2631" fill="#fbc477" d="M541 271.8l2 2z"/>
+  <path id="path2633" fill="#fbead6" d="M543.2 271.8l2 2z"/>
+  <path id="path2635" fill="#737370" d="M553.3 271.8l2 2z"/>
+  <path id="path2637" fill="#d9d868" d="M421.3 273.8l2 2z"/>
+  <path id="path2639" fill="#f9d099" d="M437.6 273.8l2 2z"/>
+  <path id="path2641" fill="#f9d6aa" d="M451.8 273.8l2 2-2-2m18.3 0l2 2z"/>
+  <path id="path2643" fill="#fbc477" d="M476.2 273.8l2 2z"/>
+  <path id="path2645" fill="#fef8f1" d="M486.3 273.8l2 2z"/>
+  <path id="path2647" fill="#f8dcbb" d="M488.3 273.8l2 2z"/>
+  <path id="path2649" fill="#fbc477" d="M490.4 273.8l2 2z"/>
+  <path id="path2651" fill="#fea522" d="M492.4 273.8l2 2z"/>
+  <path id="path2653" fill="#fbead6" d="M504.6 273.8l2 2z"/>
+  <path id="path2655" fill="#f2f1d2" d="M547.2 273.8l2 2z"/>
+  <path id="path2657" fill="#58587b" d="M553.3 273.8l2 2z"/>
+  <path id="path2659" fill="#99994e" d="M417.3 275.8l2 2z"/>
+  <path id="path2661" fill="#d0d045" d="M421.3 275.8l2 2z"/>
+  <path id="path2663" fill="#fcb144" d="M453.9 275.8l2 2z"/>
+  <path id="path2665" fill="#fae3c9" d="M455.9 275.8l2 2z"/>
+  <path id="path2667" fill="#fef8f1" d="M470 275.8l2 2z"/>
+  <path id="path2669" fill="#fcb755" d="M478.2 275.8l2 2z"/>
+  <path id="path2671" fill="#fbc477" d="M480.2 275.8l2 2z"/>
+  <path id="path2673" fill="#fcb144" d="M482.3 275.8l2 2z"/>
+  <path id="path2675" fill="#fea522" d="M484.3 275.8l2 2z"/>
+  <path id="path2677" fill="#fe9f11" d="M500.5 275.8l2 2z"/>
+  <path id="path2679" fill="#f9d6aa" d="M502.5 275.8l2 2z"/>
+  <path id="path2681" fill="#fef8f1" d="M530.9 275.8l2 2-2-2z"/>
+  <path id="path2683" fill="#e0dea1" d="M547.2 275.8l2 2z"/>
+  <path id="path2685" fill="#3a3a7c" d="M553.3 275.8l2 2z"/>
+  <path id="path2687" fill="#737370" d="M417.3 277.9l2 2z"/>
+  <path id="path2689" fill="#fbfaf2" d="M423.4 277.9l2 2z"/>
+  <path id="path2691" fill="#fea522" d="M439.6 277.9l2 2z"/>
+  <path id="path2693" fill="#fe9f11" d="M457.9 277.9l2 2z"/>
+  <path id="path2695" fill="#fcb144" d="M459.9 277.9l2 2z"/>
+  <path id="path2697" fill="#fbc477" d="M461.9 277.9l2 2z"/>
+  <path id="path2699" fill="#faca88" d="M463.9 277.9l2 2-2-2z"/>
+  <path id="path2701" fill="#fbc477" d="M466 277.9l2 2z"/>
+  <path id="path2703" fill="#fcb144" d="M468 277.9l2 2z"/>
+  <path id="path2705" fill="#fdab33" d="M470 277.9l2 2z"/>
+  <path id="path2707" fill="#fbc477" d="M498.5 277.9l2 2z"/>
+  <path id="path2709" fill="#fef8f1" d="M500.5 277.9l2 2z"/>
+  <path id="path2711" fill="#fdab33" d="M528.9 277.9l2 2z"/>
+  <path id="path2713" fill="#e1e18c" d="M547.2 277.9l2 2z"/>
+  <path id="path2715" fill="#a4a43d" d="M551.9 279.2l.7 1.4z"/>
+  <path id="path2717" fill="#262678" d="M553.3 277.9l2 2z"/>
+  <path id="path2719" fill="#58587b" d="M417.3 279.9l2 2z"/>
+  <path id="path2721" fill="#f2f1d2" d="M423.4 279.9l2 2z"/>
+  <path id="path2723" fill="#faca88" d="M439.6 279.9l2 2z"/>
+  <path id="path2725" fill="#fe9f11" d="M494.4 279.9l2 2z"/>
+  <path id="path2727" fill="#fbead6" d="M496.5 279.9l2 2z"/>
+  <path id="path2729" fill="#fbc477" d="M514.7 279.9l2 2z"/>
+  <path id="path2731" fill="#faca88" d="M528.9 279.9l2 2z"/>
+  <path id="path2733" fill="#d4d456" d="M547.2 279.9l2 2z"/>
+  <path id="path2735" fill="#32327b" d="M417.3 281.9l2 2z"/>
+  <path id="path2737" fill="#e5e59d" d="M423.4 281.9l2 2z"/>
+  <path id="path2739" fill="#fef8f1" d="M439.6 281.9l2 2z"/>
+  <path id="path2741" fill="#fe9f11" d="M441.6 281.9l2 2z"/>
+  <path id="path2743" fill="#fbead6" d="M494.4 281.9l2 2z"/>
+  <path id="path2745" fill="#fea522" d="M514.7 281.9l2 2z"/>
+  <path id="path2747" fill="#fcf1e4" d="M528.9 281.9l2 2z"/>
+  <path id="path2749" fill="#808067" d="M551.3 281.9l2 2z"/>
+  <path id="path2751" fill="#0e0e6e" d="M417.3 283.9l2 2z"/>
+  <path id="path2753" fill="#a4a43d" d="M419.3 283.9l2 2z"/>
+  <path id="path2755" fill="#d9d868" d="M423.4 283.9l2 2z"/>
+  <path id="path2757" fill="#f8dcbb" d="M441.6 283.9l2 2z"/>
+  <path id="path2759" fill="#f9d6aa" d="M512.7 283.9l2 2z"/>
+  <path id="path2761" fill="#faca88" d="M526.9 283.9l2 2z"/>
+  <path id="path2763" fill="#f2f1d2" d="M545.2 283.9l2 2z"/>
+  <path id="path2765" fill="#58587b" d="M551.3 283.9l2 2z"/>
+  <path id="path2767" fill="#8d8d5b" d="M419.3 286l2 2z"/>
+  <path id="path2769" fill="#f9d6aa" d="M443.7 286l2 2z"/>
+  <path id="path2771" fill="#fdab33" d="M484.3 286l2 2z"/>
+  <path id="path2773" fill="#fff" d="M486.3 286l2 2z"/>
+  <path id="path2775" fill="#fcb144" d="M489.7 286.6l1.4.7z"/>
+  <path id="path2777" fill="#fef8f1" d="M510.7 286l-2 4z"/>
+  <path id="path2779" fill="#fe9f11" d="M512.7 286l2 2z"/>
+  <path id="path2781" fill="#fdab33" d="M524.9 286l-2 4z"/>
+  <path id="path2783" fill="#e5e59d" d="M545.2 286l2 2z"/>
+  <path id="path2785" fill="#3a3a7c" d="M551.3 286l2 2z"/>
+  <path id="path2787" fill="#667" d="M419.3 288l2 2z"/>
+  <path id="path2789" fill="#f2f1d2" d="M425.4 288l2 2z"/>
+  <path id="path2791" fill="#f9d6aa" d="M445.7 288l2 2z"/>
+  <path id="path2793" fill="#fe9f11" d="M484.3 288l2 2z"/>
+  <path id="path2795" fill="#faca88" d="M486.3 288l2 2z"/>
+  <path id="path2797" fill="#fea522" d="M488.3 288l2 2z"/>
+  <path id="path2799" fill="#fcf1e4" d="M490.4 288l2 2z"/>
+  <path id="path2801" fill="#fdab33" d="M510.7 288l2 2z"/>
+  <path id="path2803" fill="#fef8f1" d="M524.9 288l2 2z"/>
+  <path id="path2805" fill="#d9d868" d="M545.2 288l2 2z"/>
+  <path id="path2807" fill="#a4a43d" d="M549.2 288l2 2z"/>
+  <path id="path2809" fill="#0e0e6e" d="M551.3 288l2 2z"/>
+  <path id="path2811" fill="#3a3a7c" d="M419.3 290l2 2z"/>
+  <path id="path2813" fill="#e5e59d" d="M425.4 290l2 2z"/>
+  <path id="path2815" fill="#fae3c9" d="M447.7 290l4 4z"/>
+  <path id="path2817" fill="#fe9f11" d="M449.8 290l2 2z"/>
+  <path id="path2819" fill="#f8dcbb" d="M488.3 290l2 2z"/>
+  <path id="path2821" fill="#fcf1e4" d="M506.6 290l2 2z"/>
+  <path id="path2823" fill="#fdab33" d="M508.6 290l2 2z"/>
+  <path id="path2825" fill="#fcb144" d="M520.9 290l2 2z"/>
+  <path id="path2827" fill="#fef8f1" d="M522.9 290l2 2z"/>
+  <path id="path2829" fill="#fbfaf2" d="M543.2 290l2 2z"/>
+  <path id="path2831" fill="#8d8d5b" d="M549.2 290l2 2z"/>
+  <path id="path2833" fill="#0e0e6e" d="M419.3 292l2 2z"/>
+  <path id="path2835" fill="#a4a43d" d="M421.3 292l2 2z"/>
+  <path id="path2837" fill="#d4d456" d="M425.4 292l2 2z"/>
+  <path id="path2839" fill="#f9d6aa" d="M486.3 292l2 2z"/>
+  <path id="path2841" fill="#f9d099" d="M504.6 292l2 2z"/>
+  <path id="path2843" fill="#fe9f11" d="M506.6 292l2 2z"/>
+  <path id="path2845" fill="#faca88" d="M518.8 292l2 2z"/>
+  <path id="path2847" fill="#eeedc1" d="M543.2 292l2 2z"/>
+  <path id="path2849" fill="#58587b" d="M549.2 292l2 2z"/>
+  <path id="path2851" fill="#737370" d="M421.3 294l2 2z"/>
+  <path id="path2853" fill="#f6f6e4" d="M427.4 294l2 2z"/>
+  <path id="path2855" fill="#fbbe66" d="M449.8 294l2 2z"/>
+  <path id="path2857" fill="#fcb144" d="M482.3 294l2 2z"/>
+  <path id="path2859" fill="#f8dcbb" d="M484.9 295.5l.7 1.3z"/>
+  <path id="path2861" fill="#fbbe66" d="M500.5 294l2 2z"/>
+  <path id="path2863" fill="#fe9f11" d="M502.5 294l2 2z"/>
+  <path id="path2865" fill="#fbc477" d="M514.7 294l2 2z"/>
+  <path id="path2867" fill="#fcf1e4" d="M516.8 294l2 2z"/>
+  <path id="path2869" fill="#d3d079" d="M543.2 294l2 2z"/>
+  <path id="path2871" fill="#a4a43d" d="M547.2 294l2 2z"/>
+  <path id="path2873" fill="#262678" d="M549.2 294l2 2z"/>
+  <path id="path2875" fill="#49497d" d="M421.3 296l2 2z"/>
+  <path id="path2877" fill="#e0dea1" d="M427.4 296l2 2z"/>
+  <path id="path2879" fill="#fae3c9" d="M447.7 296l2 2z"/>
+  <path id="path2881" fill="#fdab33" d="M476.2 296l2 2z"/>
+  <path id="path2883" fill="#fbc477" d="M478.2 296l2 2z"/>
+  <path id="path2885" fill="#fbead6" d="M480.2 296l2 2z"/>
+  <path id="path2887" fill="#fcb144" d="M486.3 296l2 2z"/>
+  <path id="path2889" fill="#f9d6aa" d="M512.7 296l2 2z"/>
+  <path id="path2891" fill="#99994e" d="M547.2 296l2 2z"/>
+  <path id="path2893" fill="#0e0e6e" d="M421.3 298.2l2 2z"/>
+  <path id="path2895" fill="#a4a43d" d="M423.4 298.2l2 2z"/>
+  <path id="path2897" fill="#d4d456" d="M427.4 298.2l2 2z"/>
+  <path id="path2899" fill="#f9d099" d="M445.7 298.2l2 2z"/>
+  <path id="path2901" fill="#fe9f11" d="M447.7 298.2l2 2-2-2m10.2 0l2 2z"/>
+  <path id="path2903" fill="#f9d6aa" d="M459.9 298.2l2 2z"/>
+  <path id="path2905" fill="#f9d099" d="M461.9 298.2l2 2z"/>
+  <path id="path2907" fill="#f9d6aa" d="M470 298.2l2 2z"/>
+  <path id="path2909" fill="#fae3c9" d="M472 298.2l2 2z"/>
+  <path id="path2911" fill="#fef8f1" d="M474 298.2l2 2z"/>
+  <path id="path2913" fill="#fbead6" d="M490.4 298.2l2 2z"/>
+  <path id="path2915" fill="#fae3c9" d="M492.4 298.2l2 2z"/>
+  <path id="path2917" fill="#faca88" d="M494.4 298.2l2 2z"/>
+  <path id="path2919" fill="#fbc477" d="M496.5 298.2l2 2z"/>
+  <path id="path2921" fill="#fdab33" d="M498.5 298.2l2 2z"/>
+  <path id="path2923" fill="#fe9f11" d="M508.6 298.2l2 2z"/>
+  <path id="path2925" fill="#f9d6aa" d="M510.7 298.2l2 2z"/>
+  <path id="path2927" fill="#e5e3af" d="M541 298.2l2 2z"/>
+  <path id="path2929" fill="#667" d="M547.2 298.2l2 2z"/>
+  <path id="path2931" fill="#737370" d="M423.4 300.2l2 2z"/>
+  <path id="path2933" fill="#f2f1d7" d="M429.5 300.2l2 2z"/>
+  <path id="path2935" fill="#fea522" d="M443.7 300.2l2 2z"/>
+  <path id="path2937" fill="#fe9f11" d="M453.9 300.2l2 2z"/>
+  <path id="path2939" fill="#fbbe66" d="M455.9 300.2l2 2z"/>
+  <path id="path2941" fill="#fcf1e4" d="M457.9 300.2l2 2z"/>
+  <path id="path2943" fill="#fea522" d="M506.6 300.2l2 2z"/>
+  <path id="path2945" fill="#fbead6" d="M508.6 300.2l2 2z"/>
+  <path id="path2947" fill="#dddc7a" d="M541 300.2l2 2z"/>
+  <path id="path2949" fill="#a4a43d" d="M545.2 300.2l2 2z"/>
+  <path id="path2951" fill="#262678" d="M547.2 300.2l2 2z"/>
+  <path id="path2953" fill="#49497d" d="M423.4 302.2l2 2z"/>
+  <path id="path2955" fill="#a4a43d" d="M426 303.6l.8 1.3z"/>
+  <path id="path2957" fill="#d3d079" d="M429.5 302.2l2 2z"/>
+  <path id="path2959" fill="#f9d099" d="M445.7 302.2l2 2z"/>
+  <path id="path2961" fill="#fcb144" d="M447.7 302.2l2 2z"/>
+  <path id="path2963" fill="#faca88" d="M449.8 302.2l2 2z"/>
+  <path id="path2965" fill="#f8dcbb" d="M451.8 302.2l2 2z"/>
+  <path id="path2967" fill="#fef8f1" d="M453.9 302.2l2 2z"/>
+  <path id="path2969" fill="#f8dcbb" d="M498.5 302.2l2 2z"/>
+  <path id="path2971" fill="#fcf1e4" d="M506.6 302.2l2 2z"/>
+  <path id="path2973" fill="#f6f6e4" d="M539 302.2l2 2z"/>
+  <path id="path2975" fill="#8d8d5b" d="M545.2 302.2l2 2z"/>
+  <path id="path2977" fill="#fbfaf2" d="M431.5 304.2l2 2z"/>
+  <path id="path2979" fill="#fbbe66" d="M498.5 304.2l2 2z"/>
+  <path id="path2981" fill="#faca88" d="M504.6 304.2l2 2z"/>
+  <path id="path2983" fill="#e1e18c" d="M539 304.2l2 2z"/>
+  <path id="path2985" fill="#49497d" d="M545.2 304.2l2 2z"/>
+  <path id="path2987" fill="#58587b" d="M425.4 306.3l2 2z"/>
+  <path id="path2989" fill="#e5e59d" d="M431.5 306.3l2 2z"/>
+  <path id="path2991" fill="#fe9f11" d="M498.5 306.3l2 2z"/>
+  <path id="path2993" fill="#fdab33" d="M502.5 306.3l2 2z"/>
+  <path id="path2995" fill="#fbfaf2" d="M537 306.3l2 2z"/>
+  <path id="path2997" fill="#a4a43d" d="M543.2 306.3l2 2z"/>
+  <path id="path2999" fill="#0e0e6e" d="M545.2 306.3l2 2z"/>
+  <path id="path3001" fill="#1b1b74" d="M425.4 308.3l2 2z"/>
+  <path id="path3003" fill="#a4a43d" d="M427.4 308.3l2 2z"/>
+  <path id="path3005" fill="#d0d045" d="M431.5 308.3l2 2z"/>
+  <path id="path3007" fill="#fbead6" d="M496.5 308.3l2 2z"/>
+  <path id="path3009" fill="#fe9f11" d="M500.5 308.3l2 2z"/>
+  <path id="path3011" fill="#fbead6" d="M502.5 308.3l2 2z"/>
+  <path id="path3013" fill="#e5e59d" d="M537 308.3l2 2z"/>
+  <path id="path3015" fill="#667" d="M543.2 308.3l2 2z"/>
+  <path id="path3017" fill="#6e6c70" d="M427.4 310.3l2 2z"/>
+  <path id="path3019" fill="#e5e3af" d="M433.5 310.3l2 2z"/>
+  <path id="path3021" fill="#faca88" d="M497 311.7l.8 1.4z"/>
+  <path id="path3023" fill="#fae3c9" d="M500.5 310.3l2 2z"/>
+  <path id="path3025" fill="#fbfaf2" d="M535 310.3l2 2z"/>
+  <path id="path3027" fill="#a4a43d" d="M541 310.3l2 2z"/>
+  <path id="path3029" fill="#1b1b74" d="M543.2 310.3l2 2-2-2m-115.8 2l2 2z"/>
+  <path id="path3031" fill="#a4a43d" d="M429.5 312.4l2 2z"/>
+  <path id="path3033" fill="#d0d045" d="M433.5 312.4l2 2z"/>
+  <path id="path3035" fill="#fbfaf2" d="M435.5 312.4l2 2z"/>
+  <path id="path3037" fill="#f9d6aa" d="M498.5 312.4l2 2z"/>
+  <path id="path3039" fill="#e5e59d" d="M535 312.4l2 2z"/>
+  <path id="path3041" fill="#6e6c70" d="M541 312.4l2 2-2-2m-111.5 2l2 2z"/>
+  <path id="path3043" fill="#8cbf84" d="M435.5 314.4l2 2z"/>
+  <path id="path3045" fill="#0cf" d="M436.4 314.4c7 14.8 32 49.8 51 49.2 18.6-.7 39.5-35 47.6-49.2z"/>
+  <path id="path3047" fill="#a4a43d" d="M539 314.4l2 2z"/>
+  <path id="path3049" fill="#1b1b74" d="M541 314.4l2 2-2-2m-111.5 2l2 2z"/>
+  <path id="path3051" fill="#a4a43d" d="M431.5 316.4l2 2z"/>
+  <path id="path3053" fill="#adb333" d="M435.5 316.4l2 2z"/>
+  <path id="path3055" fill="#1ac5b5" d="M437.6 316.4l2 2z"/>
+  <path id="path3057" fill="#68b070" d="M533 316.4l2 2z"/>
+  <path id="path3059" fill="#667" d="M539 316.4l2 2z"/>
+  <path id="path3061" fill="#58587b" d="M431.5 318.5l2 2z"/>
+  <path id="path3063" fill="#7fb15c" d="M437.6 318.5l2 2z"/>
+  <path id="path3065" fill="#27c2aa" d="M530.9 318.5l2 2-2-2z"/>
+  <path id="path3067" fill="#a4a43d" d="M537 318.5l-2 4z"/>
+  <path id="path3069" fill="#0e0e6e" d="M539 318.5l2 2-2-2m-107.5 2l2 2z"/>
+  <path id="path3071" fill="#a4a43d" d="M433.5 320.5l4 4z"/>
+  <path id="path3073" fill="#34be9e" d="M439.6 320.5l2 2z"/>
+  <path id="path3075" fill="#96b247" d="M530.9 320.5l2 2-2-2z"/>
+  <path id="path3077" fill="#53527c" d="M537 320.5l2 2z"/>
+  <path id="path3079" fill="#3a3a7c" d="M433.5 322.6l2 2z"/>
+  <path id="path3081" fill="#a2b23d" d="M439.6 322.6l2 2z"/>
+  <path id="path3083" fill="#0dc9c1" d="M441.6 322.6l2 2z"/>
+  <path id="path3085" fill="#5bb47c" d="M528.9 322.6l2 2z"/>
+  <path id="path3087" fill="#8d8d5b" d="M535 322.6l2 2z"/>
+  <path id="path3089" fill="#737370" d="M435.5 324.6l2 2z"/>
+  <path id="path3091" fill="#74b166" d="M441.6 324.6l2 2z"/>
+  <path id="path3093" fill="#27c2aa" d="M526.9 324.6l2 2z"/>
+  <path id="path3095" fill="#a4a43d" d="M533 324.6l-2 4z"/>
+  <path id="path3097" fill="#262678" d="M535 324.6l2 2z"/>
+  <path id="path3099" fill="#0e0e6e" d="M435.5 326.6l2 2z"/>
+  <path id="path3101" fill="#a4a43d" d="M437.6 326.6l4 4z"/>
+  <path id="path3103" fill="#42bb92" d="M443.7 326.6l2 2z"/>
+  <path id="path3105" fill="#0dc9c1" d="M524.9 326.6l2 2z"/>
+  <path id="path3107" fill="#96b247" d="M526.9 326.6l2 2z"/>
+  <path id="path3109" fill="#58587b" d="M533 326.6l2 2z"/>
+  <path id="path3111" fill="#3a3a7c" d="M437.6 328.6l2 2z"/>
+  <path id="path3113" fill="#adb333" d="M443.7 328.6l2 2z"/>
+  <path id="path3115" fill="#27c2aa" d="M445.7 328.6l2 2z"/>
+  <path id="path3117" fill="#74b166" d="M524.9 328.6l2 2z"/>
+  <path id="path3119" fill="#8d8d5b" d="M530.9 328.6l2 2-2-2z"/>
+  <path id="path3121" fill="#6e6c70" d="M439.6 330.6l2 2z"/>
+  <path id="path3123" fill="#96b247" d="M445.7 330.6l2 2z"/>
+  <path id="path3125" fill="#0dc9c1" d="M447.7 330.6l2 2z"/>
+  <path id="path3127" fill="#42bb92" d="M522.9 330.6l2 2z"/>
+  <path id="path3129" fill="#a4a43d" d="M528.9 330.6l-4 6 4-6z"/>
+  <path id="path3131" fill="#1b1b74" d="M530.9 330.6l2 2-2-2z"/>
+  <path id="path3133" fill="#0e0e6e" d="M439.6 332.6l2 2-2-2z"/>
+  <path id="path3135" fill="#8d8d5b" d="M441.6 332.6l2 2-2-2z"/>
+  <path id="path3137" fill="#7fb15c" d="M447.7 332.6l2 2-2-2z"/>
+  <path id="path3139" fill="#34be9e" d="M520.9 332.6l2 2-2-2z"/>
+  <path id="path3141" fill="#3a3a7c" d="M528.9 332.6l2 2-2-2z"/>
+  <path id="path3143" fill="#1b1b74" d="M441.6 334.7l2 2z"/>
+  <path id="path3145" fill="#a4a43d" d="M443.7 334.7L466 357z"/>
+  <path id="path3147" fill="#74b166" d="M449.8 334.7l2 2z"/>
+  <path id="path3149" fill="#27c2aa" d="M518.8 334.7l2 2z"/>
+  <path id="path3151" fill="#adb333" d="M520.9 334.7l2 2z"/>
+  <path id="path3153" fill="#667" d="M526.9 334.7l2 2z"/>
+  <path id="path3155" fill="#32327b" d="M443.7 336.7l2 2z"/>
+  <path id="path3157" fill="#42bb92" d="M451.8 336.7l2 2z"/>
+  <path id="path3159" fill="#0dc9c1" d="M516.8 336.7l-8.2 10.2 8.3-10.3z"/>
+  <path id="path3161" fill="#adb333" d="M518.8 336.7l2 2z"/>
+  <path id="path3163" fill="#737370" d="M524.9 336.7l2 2z"/>
+  <path id="path3165" fill="#49497d" d="M445.7 338.8l2 2z"/>
+  <path id="path3167" fill="#42bb92" d="M453.9 338.8l2 2z"/>
+  <path id="path3169" fill="#96b247" d="M516.8 338.8l2 2z"/>
+  <path id="path3171" fill="#8d8d5b" d="M522.9 338.8l-2 4z"/>
+  <path id="path3173" fill="#0e0e6e" d="M524.9 338.8l2 2z"/>
+  <path id="path3175" fill="#53527c" d="M447.7 340.8l2 2z"/>
+  <path id="path3177" fill="#42bb92" d="M455.9 340.8l2 2z"/>
+  <path id="path3179" fill="#96b247" d="M514.7 340.8l2 2z"/>
+  <path id="path3181" fill="#0e0e6e" d="M522.9 340.8l2 2z"/>
+  <path id="path3183" fill="#6e6c70" d="M449.8 342.8l2 2z"/>
+  <path id="path3185" fill="#42bb92" d="M457.9 342.8l2 2z"/>
+  <path id="path3187" fill="#96b247" d="M512.7 342.8l2 2z"/>
+  <path id="path3189" fill="#a4a43d" d="M518.8 342.8l-4 6 4-6z"/>
+  <path id="path3191" fill="#262678" d="M520.9 342.8l2 2z"/>
+  <path id="path3193" fill="#6e6c70" d="M451.8 344.9l2 2z"/>
+  <path id="path3195" fill="#42bb92" d="M459.9 344.9l2 2z"/>
+  <path id="path3197" fill="#96b247" d="M510.7 344.9l2 2z"/>
+  <path id="path3199" fill="#262678" d="M518.8 344.9l2 2z"/>
+  <path id="path3201" fill="#6e6c70" d="M453.9 346.9l2 2z"/>
+  <path id="path3203" fill="#68b070" d="M461.9 346.9l2 2z"/>
+  <path id="path3205" fill="#27c2aa" d="M506.6 346.9l2 2z"/>
+  <path id="path3207" fill="#adb333" d="M508.6 346.9l2 2z"/>
+  <path id="path3209" fill="#262678" d="M516.8 346.9l2 2z"/>
+  <path id="path3211" fill="#667" d="M455.9 348.9l2 2z"/>
+  <path id="path3213" fill="#74b166" d="M463.9 348.9l2 2-2-2z"/>
+  <path id="path3215" fill="#34be9e" d="M504.6 348.9l2 2z"/>
+  <path id="path3217" fill="#adb333" d="M506.6 348.9l2 2z"/>
+  <path id="path3219" fill="#8d8d5b" d="M512.7 348.9l-2 4z"/>
+  <path id="path3221" fill="#262678" d="M514.7 348.9l2 2z"/>
+  <path id="path3223" fill="#49497d" d="M457.9 350.9l2 2z"/>
+  <path id="path3225" fill="#96b247" d="M466 350.9l2 2z"/>
+  <path id="path3227" fill="#0dc9c1" d="M468 350.9l2 2z"/>
+  <path id="path3229" fill="#42bb92" d="M502.5 350.9l2 2z"/>
+  <path id="path3231" fill="#0e0e6e" d="M512.7 350.9l2 2z"/>
+  <path id="path3233" fill="#49497d" d="M459.9 353l2 2z"/>
+  <path id="path3235" fill="#a2b23d" d="M468 353l2 2z"/>
+  <path id="path3237" fill="#27c2aa" d="M470 353l2 2z"/>
+  <path id="path3239" fill="#74b166" d="M500.5 353l2 2z"/>
+  <path id="path3241" fill="#a4a43d" d="M506.6 353l-6 8z"/>
+  <path id="path3243" fill="#808067" d="M508.6 353l2 2z"/>
+  <path id="path3245" fill="#0e0e6e" d="M510.7 353l2 2z"/>
+  <path id="path3247" fill="#262678" d="M461.9 355l2 2z"/>
+  <path id="path3249" fill="#adb333" d="M470 355l2 2z"/>
+  <path id="path3251" fill="#42bb92" d="M472 355l2 2z"/>
+  <path id="path3253" fill="#0dc9c1" d="M496.5 355l2 2z"/>
+  <path id="path3255" fill="#96b247" d="M498.5 355l2 2z"/>
+  <path id="path3257" fill="#6e6c70" d="M506.6 355l2 2z"/>
+  <path id="path3259" fill="#1b1b74" d="M463.9 357l2 2-2-2z"/>
+  <path id="path3261" fill="#8d8d5b" d="M466 357l2 2z"/>
+  <path id="path3263" fill="#74b166" d="M474 357l2 2z"/>
+  <path id="path3265" fill="#0dc9c1" d="M476.2 357l2 2z"/>
+  <path id="path3267" fill="#34be9e" d="M494.4 357l2 2z"/>
+  <path id="path3269" fill="#adb333" d="M496.5 357l2 2z"/>
+  <path id="path3271" fill="#49497d" d="M504.6 357l2 2z"/>
+  <path id="path3273" fill="#0e0e6e" d="M466 359l2 2z"/>
+  <path id="path3275" fill="#6e6c70" d="M468 359l2 2z"/>
+  <path id="path3277" fill="#a4a43d" d="M470 359l4 4z"/>
+  <path id="path3279" fill="#96b247" d="M476.2 359l2 2z"/>
+  <path id="path3281" fill="#27c2aa" d="M478.2 359l2 2z"/>
+  <path id="path3283" fill="#68b070" d="M492.4 359l2 2z"/>
+  <path id="path3285" fill="#32327b" d="M502.5 359l2 2z"/>
+  <path id="path3287" fill="#49497d" d="M470 361l2 2z"/>
+  <path id="path3289" fill="#5bb47c" d="M480.2 361l2 2z"/>
+  <path id="path3291" fill="#27c2aa" d="M488.3 361l2 2z"/>
+  <path id="path3293" fill="#96b247" d="M490.4 361l2 2z"/>
+  <path id="path3295" fill="#a4a43d" d="M496.5 361l-2 4z"/>
+  <path id="path3297" fill="#808067" d="M498.5 361l2 2z"/>
+  <path id="path3299" fill="#0e0e6e" d="M500.5 361l2 2z"/>
+  <path id="path3301" fill="#262678" d="M472 363l2 2z"/>
+  <path id="path3303" fill="#8d8d5b" d="M474 363l2 2z"/>
+  <path id="path3305" fill="#8bb252" d="M482.3 363l2 2z"/>
+  <path id="path3307" fill="#1ac5b5" d="M484.3 363l2 2z"/>
+  <path id="path3309" fill="#5bb47c" d="M486.3 363l2 2z"/>
+  <path id="path3311" fill="#58587b" d="M496.5 363l2 2z"/>
+  <path id="path3313" fill="#0e0e6e" d="M474 365.2l2 2z"/>
+  <path id="path3315" fill="#667" d="M476.2 365.2l2 2z"/>
+  <path id="path3317" fill="#a4a43d" d="M478.2 365.2l2 2z"/>
+  <path id="path3319" fill="#99994e" d="M492.4 365.2l2 2z"/>
+  <path id="path3321" fill="#32327b" d="M494.4 365.2l2 2-2-2m-16.2 2l2 2z"/>
+  <path id="path3323" fill="#99994e" d="M480.2 367.2l2 2z"/>
+  <path id="path3325" fill="#a4a43d" d="M488.3 367.2l2 2z"/>
+  <path id="path3327" fill="#667" d="M490.4 367.2l2 2z"/>
+  <path id="path3329" fill="#0e0e6e" d="M492.4 367.2l2 2-2-2m-12.2 2l2 2z"/>
+  <path id="path3331" fill="#667" d="M482.3 369.2l2 2z"/>
+  <path id="path3333" fill="#a4a43d" d="M484.3 369.2l2 2z"/>
+  <path id="path3335" fill="#99994e" d="M486.3 369.2l2 2z"/>
+  <path id="path3337" fill="#32327b" d="M488.3 369.2l2 2z"/>
+  <path id="path3339" fill="#262678" d="M484.3 371.2l2 2z"/>
+  <path id="path3341" fill="#0e0e6e" d="M486.3 371.2l2 2z"/>
+  <path id="path3343" fill="#f90" d="M488.3 235.2c3.2 7.4 13.2 15.5 16 19.5-3.5 4-4.2 3.6-3.8 11 6-6.4 6.2-7 10.2-6.1 8.6 8.6 1.5 27-5.6 31-7.1 4.3-5.8-.1-16.5 5.2 4.9 4.2 10.6-.6 15.2.7 2.5 3-1.2 8.4.7 13.6 4-.4 3.6-8.7 4.6-11.7 3-11 21-18.6 21.9-28.7 3.8-1.7 7.5-.5 12 2-2.2-9.4-9.7-9.3-11.8-12.2-4.8-7.4-9.1-15.8-19.4-18-8-1.7-7.3.5-12.3-3-3.2-2.4-12.7-7-11.2-3.3z"/>
+  <path id="path3345" fill="#fff" fill-rule="evenodd" d="M510.9 243.6a1.6 1.6 0 11-3.3 0 1.6 1.6 0 013.3 0z"/>
+  <path id="path3347" fill="#f90" d="M463.2 266.5c5-6.2 7.6-19 9.8-23.2 5.2 1.2 5 2 11.5-1.8-8.5-2.4-9.2-2.2-10.2-6.1 3.6-11.7 23.2-14 30-9.6 7.2 4.3 2.7 5.2 12.4 12 1.4-6.2-5.5-9-6.5-13.6 1.5-3.7 8-3 11.6-7-2.2-3.5-9.3.8-12.4 1.4-11 2.5-26.3-9.8-35.6-6-3.3-2.5-4-6.4-4-11.7-7.1 6.5-3.5 13-5.2 16.3-4.2 7.7-9.7 15.5-6.8 25.6 2.2 7.8 3.8 6.2 3.2 12.3-.7 3.9-.4 14.5 2.2 11.4z"/>
+  <path id="path3349" fill="#fff" fill-rule="evenodd" d="M460 242.6c.9-.4 1.9-.1 2.3.7a1.6 1.6 0 11-2.2-.7z"/>
+  <path id="path3351" fill="#f90" d="M504.3 270.8c-8-1-20.1 3.3-25 3.7-1.5-5.1-.8-5.5-7.4-9 2.3 8.6 2.8 9 0 12-11.8 2.9-24-12.7-23.8-20.8 0-8.3 3.2-5 4-17-6 2-4.8 9.5-8.3 12.8-4 .6-6.6-5.3-12-6.3-1.8 3.7 5.5 7.5 7.6 9.9 7.9 8.2 5.2 27.5 13.3 33.5-.4 4.2-3.4 6.8-8 9.4 9.3 2.9 13-3.7 16.7-4 8.8-.2 18.3.4 25.5-7.3 5.4-6 3.3-6.5 8.8-9 3.7-1.4 12.6-7.2 8.6-8z"/>
+  <path id="path3353" fill="#fff" fill-rule="evenodd" d="M485.5 285.9a1.6 1.6 0 111.7-2.8 1.6 1.6 0 01-1.7 2.8z"/>
+  <path id="path5288" fill="#012169" stroke-width=".5" d="M0 0h320v240H0z"/>
+  <path id="path5290" fill="#fff" stroke-width=".5" d="M37.5 0l122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z"/>
+  <path id="path5292" fill="#c8102e" stroke-width=".5" d="M212 140.5L320 220v20l-135.5-99.5zm-92 10l3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z"/>
+  <path id="path5294" fill="#fff" stroke-width=".5" d="M120.5 0v240h80V0zM0 80v80h320V80z"/>
+  <path id="path5296" fill="#c8102e" stroke-width=".5" d="M0 96.5v48h320v-48zM136.5 0v240h48V0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/al.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/al.svg
new file mode 100644
index 0000000..e831b02
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/al.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-al" viewBox="0 0 640 480">
+  <path fill="#e41e20" d="M0 0h640v480H0z"/>
+  <path id="a" d="M272 93.3c-4.6 0-12.3 1.5-12.2 5-13-2.1-14.3 3.2-13.5 8 1.2-1.9 2.7-3 3.9-3.1 1.7-.3 3.5.3 5.4 1.4a21.6 21.6 0 014.8 4.1c-4.6 1.1-8.2.4-11.8-.2a16.5 16.5 0 01-5.7-2.4c-1.5-1-2-2-4.3-4.3-2.7-2.8-5.6-2-4.7 2.3 2.1 4 5.6 5.8 10 6.6 2.1.3 5.3 1 8.9 1 3.6 0 7.6-.5 9.8 0-1.3.8-2.8 2.3-5.8 2.8-3 .6-7.5-1.8-10.3-2.4.3 2.3 3.3 4.5 9.1 5.7 9.6 2 17.5 3.6 22.8 6.5a37.3 37.3 0 0110.9 9.2c4.7 5.5 5 9.8 5.2 10.8 1 8.8-2.1 13.8-7.9 15.4-2.8.7-8-.7-9.8-2.9-2-2.2-3.7-6-3.2-12 .5-2.2 3.1-8.3.9-9.5a273.7 273.7 0 00-32.3-15.1c-2.5-1-4.5 2.4-5.3 3.8a50.2 50.2 0 01-36-23.7c-4.2-7.6-11.3 0-10.1 7.3 1.9 8 8 13.8 15.4 18 7.5 4.1 17 8.2 26.5 8 5.2 1 5.1 7.6-1 8.9-12.1 0-21.8-.2-30.9-9-6.9-6.3-10.7 1.2-8.8 5.4 3.4 13.1 22.1 16.8 41 12.6 7.4-1.2 3 6.6 1 6.7-8 5.7-22.1 11.2-34.6 0-5.7-4.4-9.6-.8-7.4 5.5 5.5 16.5 26.7 13 41.2 5 3.7-2.1 7.1 2.7 2.6 6.4-18.1 12.6-27.1 12.8-35.3 8-10.2-4.1-11 7.2-5 11 6.7 4 23.8 1 36.4-7 5.4-4 5.6 2.3 2.2 4.8-14.9 12.9-20.8 16.3-36.3 14.2-7.7-.6-7.6 8.9-1.6 12.6 8.3 5.1 24.5-3.3 37-13.8 5.3-2.8 6.2 1.8 3.6 7.3a53.9 53.9 0 01-21.8 18c-7 2.7-13.6 2.3-18.3.7-5.8-2-6.5 4-3.3 9.4 1.9 3.3 9.8 4.3 18.4 1.3 8.6-3 17.8-10.2 24.1-18.5 5.5-4.9 4.9 1.6 2.3 6.2-12.6 20-24.2 27.4-39.5 26.2-6.7-1.2-8.3 4-4 9 7.6 6.2 17 6 25.4-.2 7.3-7 21.4-22.4 28.8-30.6 5.2-4.1 6.9 0 5.3 8.4-1.4 4.8-4.8 10-14.3 13.6-6.5 3.7-1.6 8.8 3.2 9 2.7 0 8.1-3.2 12.3-7.8 5.4-6.2 5.8-10.3 8.8-19.9 2.8-4.6 7.9-2.4 7.9 2.4-2.5 9.6-4.5 11.3-9.5 15.2-4.7 4.5 3.3 6 6 4.1 7.8-5.2 10.6-12 13.2-18.2 2-4.4 7.4-2.3 4.8 5-6 17.4-16 24.2-33.3 27.8-1.7.3-2.8 1.3-2.2 3.3l7 7c-10.7 3.2-19.4 5-30.2 8l-14.8-9.8c-1.3-3.2-2-8.2-9.8-4.7-5.2-2.4-7.7-1.5-10.6 1 4.2 0 6 1.2 7.7 3.1 2.2 5.7 7.2 6.3 12.3 4.7 3.3 2.7 5 4.9 8.4 7.7l-16.7-.5c-6-6.3-10.6-6-14.8-1-3.3.5-4.6.5-6.8 4.4 3.4-1.4 5.6-1.8 7.1-.3 6.3 3.7 10.4 2.9 13.5 0l17.5 1.1c-2.2 2-5.2 3-7.5 4.8-9-2.6-13.8 1-15.4 8.3a17 17 0 00-1.2 9.3c.8-3 2.3-5.5 4.9-7 8 2 11-1.3 11.5-6.1 4-3.2 9.8-3.9 13.7-7.1 4.6 1.4 6.8 2.3 11.4 3.8 1.6 5 5.3 6.9 11.3 5.6 7 .2 5.8 3.2 6.4 5.5 2-3.3 1.9-6.6-2.5-9.6-1.6-4.3-5.2-6.3-9.8-3.8-4.4-1.2-5.5-3-9.9-4.3 11-3.5 18.8-4.3 29.8-7.8l7.7 6.8c1.5.9 2.9 1.1 3.8 0 6.9-10 10-18.7 16.3-25.3 2.5-2.8 5.6-6.4 9-7.3 1.7-.5 3.8-.2 5.2 1.3 1.3 1.4 2.4 4.1 2 8.2-.7 5.7-2.1 7.6-3.7 11-1.7 3.5-3.6 5.6-5.7 8.3-4 5.3-9.4 8.4-12.6 10.5-6.4 4.1-9 2.3-14 2-6.4.7-8 3.8-2.8 8.1 4.8 2.6 9.2 2.9 12.8 2.2 3-.6 6.6-4.5 9.2-6.6 2.8-3.3 7.6.6 4.3 4.5-5.9 7-11.7 11.6-19 11.5-7.7 1-6.2 5.3-1.2 7.4 9.2 3.7 17.4-3.3 21.6-8 3.2-3.5 5.5-3.6 5 1.9-3.3 9.9-7.6 13.7-14.8 14.2-5.8-.6-5.9 4-1.6 7 9.6 6.6 16.6-4.8 19.9-11.6 2.3-6.2 5.9-3.3 6.3 1.8 0 6.9-3 12.4-11.3 19.4 6.3 10.1 13.7 20.4 20 30.5l19.2-214L320 139c-2-1.8-8.8-9.8-10.5-11-.7-.6-1-1-.1-1.4.9-.4 3-.8 4.5-1-4-4.1-7.6-5.4-15.3-7.6 1.9-.8 3.7-.4 9.3-.6a30.2 30.2 0 00-13.5-10.2c4.2-3 5-3.2 9.2-6.7a86.3 86.3 0 01-19.5-3.8 37.4 37.4 0 00-12-3.4zm.8 8.4c3.8 0 6.1 1.3 6.1 2.9 0 1.6-2.3 2.9-6.1 2.9s-6.2-1.5-6.2-3c0-1.6 2.4-2.8 6.2-2.8z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640 0)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/am.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/am.svg
new file mode 100644
index 0000000..0cd2178
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/am.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-am" viewBox="0 0 640 480">
+  <path fill="red" d="M0 0h640v160H0z"/>
+  <path fill="#00f" d="M0 160h640v160H0z"/>
+  <path fill="orange" d="M0 320h640v160H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ao.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ao.svg
new file mode 100644
index 0000000..a0b6dbb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ao.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ao" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="red" d="M0 0h640v243.6H0z"/>
+    <path d="M0 236.4h640V480H0z"/>
+  </g>
+  <path fill="#ffec00" fill-rule="evenodd" d="M228.7 148.2c165.2 43.3 59 255.6-71.3 167.2l-8.8 13.6c76.7 54.6 152.6 10.6 174-46.4 22.2-58.8-7.6-141.5-92.6-150l-1.3 15.6z"/>
+  <path fill="#ffec00" fill-rule="evenodd" d="M170 330.8l21.7 10.1-10.2 21.8-21.7-10.2zm149-99.5h24v24h-24zm-11.7-38.9l22.3-8.6 8.7 22.3-22.3 8.7zm-26-29.1l17.1-16.9 16.9 17-17 16.9zm-26.2-39.8l22.4 8.4-8.5 22.4-22.4-8.4zM316 270l22.3 8.9-9 22.2-22.2-8.9zm-69.9 70l22-9.3 9.5 22-22 9.4zm-39.5 2.8h24v24h-24zm41.3-116l-20.3-15-20.3 14.6 8-23-20.3-15h24.5l8.5-22.6 7.8 22.7 24.7-.3-19.6 15.3 7 23.4z"/>
+  <path fill="#fe0" fill-rule="evenodd" d="M336 346.4c-1.2.4-6.2 12.4-9.7 18.2l3.7 1c13.6 4.8 20.4 9.2 26.2 17.5a7.9 7.9 0 0010.2.7s2.8-1 6.4-5c3-4.5 2.2-8-1.4-11.1-11-8-22.9-14-35.4-21.3z"/>
+  <path fill-rule="evenodd" d="M365.3 372.8a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.6 0zm-21.4-13.6a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0zm10.9 7a4.3 4.3 0 11-8.7 0 4.3 4.3 0 018.7 0z"/>
+  <path fill="#fe0" fill-rule="evenodd" d="M324.5 363.7c-42.6-24.3-87.3-50.5-130-74.8-18.7-11.7-19.6-33.4-7-49.9 1.2-2.3 2.8-1.8 3.4-.5 1.5 8 6 16.3 11.4 21.5A5288 5288 0 01334 345.6c-3.4 5.8-6 12.3-9.5 18z"/>
+  <path fill="#ffec00" fill-rule="evenodd" d="M297.2 305.5l17.8 16-16 17.8-17.8-16z"/>
+  <path fill="none" stroke="#000" stroke-width="3" d="M331.5 348.8l-125-75.5m109.6 58.1L274 304.1m18.2 42.7L249.3 322"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aq.svg
new file mode 100644
index 0000000..2000e3c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aq.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-aq" viewBox="0 0 640 480">
+  <path fill="#072B5F" d="M0 0h640v480H0z"/>
+  <path fill="#FFF" d="M340.4 1a237.1 237.1 0 0197.4 29.9L455 .9h6.1l-18.8 32.7a241.2 241.2 0 0184.2 84.1L640 52.2v6.2l-110.8 64a239 239 0 0130.8 115h80v5.3h-80v1.3a239 239 0 01-30.8 113.7l110.8 64v6.2l-113.5-65.5a241.2 241.2 0 01-84.2 84.1l18.8 32.6H455l-17.2-29.9a238.4 238.4 0 01-96.4 29.9h-42.6c-34.8-3-67.4-13.6-96.4-29.9l-17.2 29.9H179l18.8-32.6a241.2 241.2 0 01-84.2-84.1L.1 427.9v-6.2l110.8-64a238.8 238.8 0 01-30.7-115H0v-5.3h80V236c1-41.2 12-80 31-113.6L.1 58.4v-6.2l113.5 65.5a241.2 241.2 0 0184.2-84.1L179 .9h6.2l17.2 30c29.2-16.5 62.2-27 97.4-30h40.6zM238.6 386.5l-33.5 58a233.5 233.5 0 00112.3 30v-66.9c-28.6-.4-55.4-8-78.8-21zm167 6.9l-6.1 3.5-6.4-2-11.6 2-1-.5c-18 7-37.4 11-57.7 11.2v67h1.2c40.3-.7 78.2-11.6 111.1-30.1l-29.5-51.1zm83.3-53l-9.8.9 2.6 5.9-5.3 5.3-8.6 1.6-2.6 4.7 6.4 3.2-12.2 11.2 3.6 5.9-9.4-2.1-10.7 6.4-14.3 6.8-3.2 4.8-2.2-1.8 2.2-4.6-9.5 3.5-2.1-3.5-3.6 2 29.5 51.2c33.9-20 62.2-48.4 82.3-82.2l-33.1-19.1zm-312.7-14.3l-58 33.5a236.4 236.4 0 0082.3 82.2l33.4-58a168.6 168.6 0 01-57.7-57.7zm119.6 6.4l-1.6 2.7-7.5.5h-2l-3.1 5.4-9-6.4-5 1.6.8 4.3-2.5-1.4-24.7 42.7c22.7 12.6 48.6 20 76.2 20.4v-64.8l-.3-.1-21.3-4.9zm52.1 4.9l-3.9 1.7 1.8 5.2h-13.4l-9.6-4.2v62.2a162 162 0 0051-9l-3.2-1.9-12.7 3.2-11.2-7.1v2.8L344 387l3.2-3.2-.5-9.7h3.7l2.2-6.2 2.7-1.3-2.2-3.2 3.2-1-.5-4.9-3.2-1.4 4.3-.5-2.7-11.6-6.3-6.4zM206 309l-25.2 14.5c13.8 22.9 33 42 55.8 55.8l24.6-42.6-4.6-2.5-.5 4.3-11.6-5.3-.6.5-5.9 2.1-1-4.2-13.8-6.8-14.8-4.8-2.4-11zm304.8-66.3l1.1 3.4-1.6 7.5 3.2 4.3 8.4 1.6-8.4 11.6 1.6 2 2.2 2.3-3.8 5.7 3.6 2.1-18.6 15.4 4.3 10.7-1 6.2-6.5 2.1-1.6 5.4-7.1 3.2-2 5.7 40 23.1a233.5 233.5 0 0030.1-112.3h-43.9zm-425.3 0v1.2c.7 40.4 11.5 78.2 30 111.1l58-33.4a166.9 166.9 0 01-21-78.9h-67zm72.3 0a161 161 0 0020.4 76.2l26.7-15.4-5-8.9 2.6-12.8-4.8-1.6-1.6-5.4 8-.9h-3.5l.3-8-11.6 3.6-.5-3-1.6 5.8-6.2 2.5-4.5-4-1.4-4.4-1.8-8.3 3.7-2.7 1.6 2 1.1-2.5-1.7-12.2h-20.2zm41.3 38.4l-1.6 3.5-5.1 1.1 3.2-4.3 3.5-.3zm-26-84.8l-3.7 5.2-1.1-3.6-4.8 1.5-.7.3c-3 12-4.8 24.7-5 37.7h19.5l-.3-1.6 4.3.9 2.3-19.9.6-.7 4.2-2.5-5.3.6-2-4.8 9.5-10.7-8.6-1.5-6.4 6.3-2.5-7.2zM524.6 125l-43.8 25.4 10.4 26.3-5.9 5.4-.3 6.2-3.9 4.7.7 2.3 3.7 2.5-2.1 1.7 4.6 4.7 7.3 1.2 2.3 3 2 4.3 5.3 2.2 6.5-4.3 4.2.5-5.3 7.5 5.3 13.8-6 5h45v-1.2a233.4 233.4 0 00-30-111.2zm-409 0a233.5 233.5 0 00-30 112.4h66.8v-.1c.3-17.2 3.2-33.8 8.3-49.4l-1.5.4-.4-5.3h3.6c.5-1.5 1-3 1.7-4.5l-5-8.4-3 1-2-3.5-1.2 3.2-3.2-2.3 3.2-2-4.8-1.7 1.1-2.5-3.8-2.2-1-8.4-3.8-1.2 2.4-1.4-4.3-10.7-23.1-13.4zm91.4 53l4.7 5.6 2.7-1.3-7.4-4.3zm-39 5h.7l-.2-1.2-.5 1.3zm68.5-82.1a164.3 164.3 0 00-55.8 55.7l40.7 23.5 30-6.9 1.2-6.4 2.5 1.3-.6-2.2 1.8-1 7.3-2.7v-7.3l2.5-2.8-29.6-51.2zm-85 74.1v.2-.2zm-5.3-7.1l6 3.6-.7 3.5-5.3-7.1zm54.2-129.6a235.8 235.8 0 00-82.2 82.2l21 12.1 1.3-9.5h3.2l-.5 4v.2h-.2l.1.7-.2 2 5.6 8 21 12.2.5-.7 1.4 1.8 4.7 2.7a168 168 0 0157.7-57.8l-33.4-58zm-61.8 107.6v.8l-1.5 4-1.7-4.8h3.2zm301-107.6L407 94.9l2.3-.8.7 4.3 3.4 2.2 2.5-4.4h3l1.9 9.7 7.2 5.7 2.2-1 5.9-2.2 16.4 5.7 3-1 1.3 5.8 4.3.7-1.1-2.8h3.5l1.1 5.9 4.3-4.7 10.2 6.3 2.6 11.6-4.2 1.2 1 8.4 43.5-25a235.8 235.8 0 00-82.3-82.3zm-302.5 103l1.6 3.8-3.2-2.2 1.6-1.6zm179-63.5h.8c-27.5.5-53.3 7.9-75.8 20.4l27 46.6 1.2-5-1.6-4.7 7.5-17.9v-11.4h3.6l4.5-6.4 5.3-1.6.5-6 7.2-8.8 3.4 1.7 14.8-5.3 1.5-1.6zM146.8 126v4h-.2v.4l-3.2-.3-.3-2 .1-.8v-.3l3.6-1zm-1.3-9.9l-2.1 4.9-1-2.2v-.3l3.1-2.4zm234-27l7 6 7.6.6c-4.7-2.5-9.6-4.7-14.5-6.6zM322.9 5.5v66.9c14.4.2 28.3 2.2 41.5 5.8l1.3-.7v1.1c12.7 3.6 24.8 8.6 36 14.9l33.5-58a233.5 233.5 0 00-112.3-30zm-2.7 0a234 234 0 00-115 30l33.5 58c23.4-13 50.2-20.7 78.8-21.1v-67h2.7zm26.2 74.3l11.3 2.5.2-.2c-3.8-1-7.6-1.7-11.5-2.3zm-22.2-2l15.5 3.6 2.3-2.3c-6-.7-12-1.1-18-1.4z"/>
+  <path fill="#072B5F" d="M321.5 69.1l1.6 8.4 1 .2h-1.3v71.4c14.6.4 28.4 4.3 40.5 10.8L399 98.1a162 162 0 00-4.8-2.5l2 .1 6 .9 4.8-1.7-.7 1.2 3.7 2.3v.5l3.2 2 .2-.3 7.4 5.3.5 2.5 2.5.5-.6 4.3-.3.5h.9l4.2-2a167.6 167.6 0 0136 42.2l14.5-8.4v.5l1.6 2.7.7 1.7-14.1 8.1c6 10.8 10.9 22.4 14.4 34.5l-1 1.2 1.7 1a168 168 0 016 42.2h21.8l-.4.3 1.6 5h-23v.1c-.5 28.6-8 55.4-21.1 78.8l18 10.3-.5 1-1.6 3.7 7.5 3.9H489l-25-14.2a168.6 168.6 0 01-57.7 57.7l4 6.8-4.7 2.8-4-6.9a167 167 0 01-21.1 10l-2.2-1.2-1.1-.4-2-1.2h-.1l1.8 1-2-.8-1.2-.7a155 155 0 0025.3-11.3l-35.7-61.8a90.5 90.5 0 01-40.5 10.8v9.2l-1.4-.6-4-2V331a90.5 90.5 0 01-40.5-10.8l-11 19.1-4.7-2.6 11.1-19.2a91.5 91.5 0 01-29.6-29.7L206 309l-.2-1.2V305l-1-1.5 35.2-20.3a90.5 90.5 0 01-10.8-40.5H178l-.7-5.3h51.9a90.5 90.5 0 0110.8-40.5l-25.5-14.7 2-1 5-1.2 21.2 12.2a91.5 91.5 0 0129.6-29.6l-6.1-10.6 2-7.3 8.7 15.2a90.5 90.5 0 0140.5-10.8V77.7h-1.3l.3-.2 3-3.2-1-5.2h3.1zM377 395h.3l1 .7-1.3-.7zm20.6-107a91.5 91.5 0 01-29.6 29.6l35.7 61.8c22.9-13.7 42-33 55.8-55.8l-61.9-35.7zm-74.8-38v75.6a86 86 0 0037.8-10L322.8 250zm-5.4 0l-37.8 65.5a84.8 84.8 0 0037.8 10.1V250zm165-7.3h-71.3a90.5 90.5 0 01-10.9 40.5l61.9 35.7a162.1 162.1 0 0020.3-76.2zm-155 4.7l37.8 65.4a86 86 0 0027.7-27.6l-65.5-37.8zm-14.6 0l-65.5 37.8a86 86 0 0027.7 27.6l37.8-65.4zm-2.7-4.7h-75.6c.4 13.7 4 26.5 10.1 37.8l65.5-37.8zm95.6 0h-75.6l65.5 37.8c6-11.3 9.7-24.1 10.1-37.8zm-10.1-43.1L330 237.4h75.6c-.4-13.7-4-26.5-10.1-37.8zm-151 0a85.2 85.2 0 00-10 37.8H310l-65.5-37.8zm217.5-38.4l-61.9 35.7a90.5 90.5 0 0110.9 40.5h71.3c-.4-27.7-7.8-53.6-20.3-76.2zm-187.1 6a86 86 0 00-27.7 27.7l65.5 37.8-37.8-65.5zm90.2 0l-37.8 65.5L393 195a86 86 0 00-27.7-27.7zm-47.8-12.8c-13.6.5-26.5 4-37.8 10.2l37.8 65.5v-75.7zm5.4 0V230l37.8-65.4a85.2 85.2 0 00-37.8-10.2zm-160 45.3l-2.4 1.3 2.5-9.7-2.1-1 1.2-2.7-1.3.3c.5-1.6 1-3.3 1.7-5h5.7c-2 5.5-3.8 11.1-5.3 16.8zm240.8-99l-35.7 62a91.5 91.5 0 0129.6 29.5l61.9-35.7c-13.8-22.8-33-42-55.8-55.7zm-264.3 31.8l9.3 5.4 2.2 3.1 5.7 7.5 11.8 3.2v.4l1.3-2 2 1 4.7 5.8 3.2 3.6 1.6 1.8 17.9 8.5 3.2 1.6 1 1 3.9 4.5-29-16.7c-3.6 6.5-6.8 13.4-9.5 20.5l-.3-1.4H165l-1-1.8a167 167 0 019.4-20l-34.8-20-.2-.7.5-3.6.3-1.7zm226.4-53.9l.3 3.7 6.4.7 5.3 4.1h-.5v.6h1l.6.5.9.8c-7-2.8-14.4-5.1-21.9-7l.3-.2 6.2-3.6 1.4.4zm-23.5.2l1.1.3 3 .7-3.2-.5-1-.4.6.3h-.8l.3-.4zm-24.6-1h-.2.2zm2.5-.1h-2.5 2.5z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ar.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ar.svg
new file mode 100644
index 0000000..4553b08
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ar.svg
@@ -0,0 +1,31 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ar" viewBox="0 0 640 480">
+  <path fill="#74acdf" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <g id="c" transform="translate(-64) scale(.96)">
+    <path id="a" fill="#f6b40e" stroke="#85340a" stroke-width="1.1" d="M396.8 251.3l28.5 62s.5 1.2 1.3.9c.8-.4.3-1.5.3-1.5l-23.7-64m-.7 24.1c-.4 9.4 5.4 14.6 4.7 23-.8 8.5 3.8 13.2 5 16.5 1 3.3-1.3 5.2-.3 5.7s3-2.1 2.4-6.8c-.7-4.6-4.2-6-3.4-16.3.8-10.3-4.2-12.7-3-22"/>
+    <use width="100%" height="100%" transform="rotate(22.5 400 250)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(45 400 250)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(67.5 400 250)" xlink:href="#a"/>
+    <path id="b" fill="#85340a" d="M404.3 274.4c.5 9 5.6 13 4.6 21.3 2.2-6.5-3.1-11.6-2.8-21.2m-7.7-23.8l19.5 42.6-16.3-43.9"/>
+    <use width="100%" height="100%" transform="rotate(22.5 400 250)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(45 400 250)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(67.5 400 250)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" transform="rotate(90 320 240)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="rotate(180 320 240)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="rotate(-90 320 240)" xlink:href="#c"/>
+  <circle cx="320" cy="240" r="26.7" fill="#f6b40e" stroke="#85340a" stroke-width="1.4"/>
+  <path id="h" fill="#843511" d="M329.1 234.3c-1.8 0-3.6.8-4.6 2.4 2 1.9 6.6 2 9.7-.2a7 7 0 00-5.1-2.2zm0 .4c1.7 0 3.4.8 3.6 1.6-2 2.3-5.3 2-7.4.4a4.3 4.3 0 013.8-2z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640.2 0)" xlink:href="#d"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640.2 0)" xlink:href="#e"/>
+  <use width="100%" height="100%" transform="translate(18.1)" xlink:href="#f"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640.2 0)" xlink:href="#g"/>
+  <path fill="#85340a" d="M316 243.7a1.9 1.9 0 101.8 2.9 4 4 0 002.2.6h.2a3.9 3.9 0 002.3-.6 1.9 1.9 0 101.8-3c.5.3.8.7.8 1.3 0 .6-.5 1.2-1.2 1.2a1.2 1.2 0 01-1.2-1.2 3 3 0 01-2.6 1.7 3 3 0 01-2.5-1.7 1.2 1.2 0 01-1.3 1.2c-.6 0-1.2-.6-1.2-1.2s.3-1 .8-1.2zm2 5.5c-2.1 0-3 1.8-4.8 3 1-.4 1.9-1.2 3.3-2s2.7.2 3.5.2c.8 0 2-1 3.5-.2 1.4.8 2.3 1.6 3.3 2-1.9-1.2-2.7-3-4.8-3a5.5 5.5 0 00-2 .6 5.5 5.5 0 00-2-.7z"/>
+  <path fill="#85340a" d="M317.2 251.6c-.8 0-1.8.2-3.4.6 3.7-.8 4.5.5 6.2.5 1.6 0 2.4-1.3 6.1-.5-4-1.2-4.9-.4-6.1-.4-.8 0-1.4-.3-2.8-.2z"/>
+  <path fill="#85340a" d="M314 252.2h-.8c4.3.5 2.3 3 6.8 3s2.5-2.5 6.8-3c-4.5-.4-3.1 2.3-6.8 2.3-3.5 0-2.4-2.3-6-2.3zm9.7 6.7a3.7 3.7 0 00-7.4 0 3.8 3.8 0 017.4 0z"/>
+  <path id="e" fill="#85340a" d="M303.4 234.3c4.7-4.1 10.7-4.8 14-1.7a8 8 0 011.5 3.5c.4 2.3-.3 4.8-2.1 7.4l.8.4a14.6 14.6 0 001.6-9.4 13.3 13.3 0 00-.6-2.3c-4.5-3.7-10.7-4-15.2 2z"/>
+  <path id="d" fill="#85340a" d="M310.8 233c2.7 0 3.3.7 4.5 1.7 1.2 1 1.9.8 2 1 .3.2 0 .8-.3.6-.5-.2-1.3-.6-2.5-1.6s-2.5-1-3.7-1c-3.7 0-5.7 3-6.2 2.8-.3-.2 2.1-3.5 6.2-3.5z"/>
+  <use width="100%" height="100%" transform="translate(-18.4)" xlink:href="#h"/>
+  <circle id="f" cx="310.9" cy="236.3" r="1.9" fill="#85340a"/>
+  <path id="g" fill="#85340a" d="M305.9 237.5c3.5 2.7 7 2.5 9 1.3 2-1.3 2-1.7 1.6-1.7-.4 0-.8.4-2.4 1.3-1.7.8-4.1.8-8.2-.9z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/as.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/as.svg
new file mode 100644
index 0000000..81b0d9f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/as.svg
@@ -0,0 +1,33 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-as" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="as-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#as-a)">
+    <path fill="#006" d="M-374-16H650v512H-374z"/>
+    <path fill="#bd1021" fill-rule="evenodd" d="M-374 240L650 496V-16L-374 240z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M650 11.4v457.2L-264.3 240 650 11.4z"/>
+    <g stroke="#000">
+      <path fill="#9c3900" fill-rule="evenodd" stroke-linejoin="round" stroke-width="1.8" d="M478 297.4s-6.4-5.2 1.2-13.7c-4.1-3.4-.3-10.1-.3-10.1s-7-2.6.3-13.4c-5.3-3.5-3-11.3-3-11.3s-17-6.4-.8-12.5c-13.4 5.8-25.9-7.9-25.9-7.9l-19.4.6c-3.3-16.2-29-2.1-10-48.5-4.9-.9-10.4-2.3-16 1.7-5.4 4.1-21.1 12.8-30.4 4.1s6-21.2 6.4-21.5c.3-.3 20.6-10.8 23.5-17.7-.3-5.3-6.7-9.3-.9-20.7 6.7-10.7 47.7-20.9 66.3-24.4a29.5 29.5 0 0013-11.9l2.1 7.6s41.3-12.2 43.3-18 .9 5.2.9 5.2c16.2-1.5 36.9-15.4 39.8-9 13.6-2.6 39.8-14.3 39.8-14.3s9-.3 2.6 9.6c4 6.4-1.2 12-1.5 12-.2 0 1.8 6.3-3.4 9.8 1.7 5.5-3.2 10-3.2 10s2.3 6.6-7 10c.9 5.9-5.2 7-5.2 7s.8 6.1-3.2 8.8c0 4.6-4.7 7-4.7 7s3 1.7-1.2 4.6a1568 1568 0 01-46.2 28.5c0-.3 30.8 5.5 32.9 6.6s25.3 16.6 25.3 16.6l-23.6 29s-26.1-2.8-27.3-1.4 5.5 2 7 4.4c1.4 2.3 3.8 7.8 8.4 7.2 4.7-.5-8.7 8.5-17.4 9.3 0 3.2 11 3.5 14 1 2.8-2.7-7 7.5-8.2 9s13-2.1 13-2.1-2.3 9.6-14.7 12.5c4.9 8.1 2.9 13.3 2.6 13.3s-8.2-8-15.7-6.6c2 7.8 8.1 15 9.9 16.2 1.7 1.2-13.7 1-15.7-3.5s-3.8 10.5 1.7 15.2c-6.4.3-11.9-3.5-11.9-3.5s-3.8 8.7-1.2 13c2.6 4.4-9-8.7-9-8.7l-22 9.3-5-8.4z"/>
+      <path fill="#ffc221" fill-rule="evenodd" stroke-width="1.9" d="M307.3 280.1c.5 0 32.1-.5 46.6-8.8a86.3 86.3 0 0017 19.1l4.7-16.5s11.4.5 12.4 3c-1.5 3.2-2 7.3-2 7.3s7.7.6 8.3 1.6c.5 1-2.1 9.8-2.1 9.8l33.1 7.8s2.6-13 5.2-11.4c2.6 1.6 14 17.6 30 18.6s17-13.4 17-13.4l3.7 2s6.7-14.4 7.8-14.4 2.5 2 11.3 2c2.6 3.1 3.7 10.4 3.7 10.4s-9.9 9.8-6.8 17.6 3.7 5.7 3.7 5.7l71.4 17s3.6 5.7-2.6 8.8c0 .5-72-16.5-72-16.5s-6.7 7.7-11.9 6.2-1.5 3-1.5 3l77.6 6.3s5.7 7.2 1.6 9.3c-5.2.5-83.9-5.2-83.9-5.2s-4.6 9.9-9.8 1.6c-3.6 5.7-7.8-1.6-7.8-1.6s-6.7 5.2-7.7-.5c-5.7 4.2-9.3-2.6-9.3-2.6l-33.2-2-2 3s5.7 1.6-3.1 5.2c-8.8 3.7 52.8 2.1 54.3 2.6 1.6.6-4.1 5.2-4.1 5.2s31.5 2 37.2-4.6c5.7-6.8-2 8.8-2 8.8s24.8-1 24.8-2.1-.5 7.7-17.6 6.7a112 112 0 0023.3 10.9s-13 3-28-.5c2.6 6.7 14 12.9 14 12.9s-8.3 7.2-26.9-10.4c5.2 9.4 1 13 .5 12a48 48 0 00-30-18.7c13 8.3 7.3 12 7.3 12s-6.8-12-17.6 0c-4.2-11-20.2-17.2-39.9-18.2-6.2-7.2-9.8-5.2-24.3-9.3-8.3-9.3-20.2-19.7-20.2-19.7s.5-14 14.5-12.4c1.6 4.7 1.6 3.1 1.6 3.1s15.5-5.7 20.1 2c6.8-11.8 16-1.7 17.6 2.4 4.5.7 27 1.3 27 1.3s-2.7-4.7-1-4.1c1.5.5 13.9-4.7 13.4-6.2-.6-1.6-1-6.8 1-6.3 2 .6-17.6-2.5-28.5 5.7-3.6-3.6-1-13.4-1-13.4l-32-6.7-1.6 8.2s-9.4 1.6-8.8-.5l-2.1 7.3s-12.4-3.1-12.4-3.7 3.6-18.6 3.6-18c0 .4-10.4 1-24.8 11.8-4.2-13-36.8-30-36.8-30.5z"/>
+      <path fill="none" stroke-width="1.9" d="M386 284.8l-6.7 30m12.9-18.7l-2 9.9m35.1-2l-3 9.2m60.4 53.8c-.5 0-16.5 2.1-18.6 1.6-2-.5 25.4 8.3 25.4 11.9m-35.7-9.8s-16-10.4-18.7-9.4c-2.5 1 16-.5 17.6-2m-32-.5s-16.6.5-18.2-1 16 11.3 19.2 10.3m-33.1-16.6c-.5 0-11.4-4.1-16-5.2 4 4.2 7.2 9.9 17.5 12m2.6-13.5c-.5-1-20.7-7.3-20.7-10.4a32.6 32.6 0 0017.6 2.1M499.8 321l-2 9.3"/>
+      <path fill="#ffc221" fill-rule="evenodd" stroke-width="1.9" d="M347.7 237.7s-21.7 18.6 0 29.5c1-7.3 2.6-8.3 2.6-8.3s18 6.7 29-9.3c-4.7-6.8-13-4.2-13-4.2s-17 0-18.6-7.7z"/>
+      <path fill="none" stroke-width="1.9" d="M365.8 246l-15 12.9m61.2 76.9s3.5 3.8.4 8.5m72.4-4.7l-5.7.5m-40.9-3.6l10.4 1.6m17.5-28.2s.3 10.5-8.4 10.2c-8.8-.3-5.9.3-5.9.3"/>
+      <path fill="none" stroke-width="1.9" d="M472.8 308.1s3.5 1.2 2.6 3.8c-.9 2.6.9 10.2-9.3 17.5-10.8 2.3-9.6-9-9.6-9"/>
+      <path fill="none" stroke-width="1.9" d="M476.6 311.4s6.3-3.8 7.2 2.3c.9 6-5.2 17.4-9.6 19.2-4.3 1.7-9.3-.3-8.7-3.2m18.9-15.7s5.8-4.7 7.6 1.4c1.7 6.1-4.7 19.8-7.3 20m7.8-20s3-1.4 5 .3m-14.3 20.6c-1.1.3-6 .6-7.8-3.2m-18.3-7l-6.1.4m28.4 22.6l-.5-9.6-2.4-3.2-4 4.1s-.6 9.6-2.4 10.5m2.4-10.8l-3.2-6-5 6s-.5 8.7-2.3 9.6m2.3-9.9l-2-5.8s-5.8 3.2-6.4 5.5c-.6 2.4-.9 8.7-2.3 9.3m2.3-10.4s.6-5.3-1.2-5.3c-1.7 0-9.5 7.3-9.8 13.7"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-linejoin="round" stroke-width="1.9" d="M348.4 237.8s2.9-2.9 3.8-6.4c.8-3.4-1.2-7.2 2.3-10.4s49.4-22.7 53.2-26.5a115 115 0 0011.6-13.6c.9-1.8 3.5 8.7-4.4 13.3 8.5-2.3 14-4.9 17.5-3.7-3.5 4.9-12.8 13-17.2 13 10.2-3.7 19.5-7 22.1-4.9 2.6 2-12.5 12.2-18.6 12.8 10.2-2.6 23.8-6.7 25.6-2.3-5.5 1.7-3.8 3.2-15.1 9.6a28.5 28.5 0 01-8.7 1.4c8.7-.9 20.6-4.4 21.8 2-7 2.7-9.6 6.1-15.4 7.6-5.9 1.4-19.2 4-27.4 7.3-8 3.2-20 12.5-20 12.5s-25.9.8-25.9.5c0-.3-5-11.9-5.2-12.2z"/>
+      <path fill="none" stroke-width="1.9" d="M360.6 235.8s.3-5.8 3-7.8c2.5-2 15.6-7 18.5-11.4 3-4.3-4.3 7.6-3.2 10.8m-13-.3s6.3 2.3 4.9 7.2"/>
+      <path fill="none" stroke-width="1.6" d="M373.4 230.4a4.8 4.8 0 11-9.6 0 4.8 4.8 0 019.6 0z"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.9" d="M570.1 220.1l50.3 9.6s5.5-6.4 2.6-9.9c7.6-1.7 5.5-11.6 5.5-11.6s8.7-3.8 1.5-12.5c5-5-1.2-8.7-1.2-8.7s2-8.7-4.3-9.6c1.7-7-11-9.3-11-9.3s-26.5 7.3-45.1 7.8c6 6.1-2.3 10-2.3 10s4.9 3.4 3.4 6.3c-1.4 3 1 6.1-5.5 8.2 8.4 3.7-.9 10.1-.9 10.1s9.3 6.4 7 9.6z"/>
+      <path fill="none" stroke-width="1.9" d="M565.2 209.4s44.4 5.2 46.5 5.2 9.8 2.6 11.3 5.2m-55.5-13l61.9 1.4m-61.6-3s58.7-3.4 62.8-9.5m-61-3.2s59-6.4 59.5-5.5m-61.6-1.8s57.2-9 57.8-7.5m-221.1-29.4s18 19.8 16.3 33.2"/>
+      <path fill="none" stroke-width="1.9" d="M419.3 171s5.8 8.4 8.1 9.3 22.7 2 23.9 10.8c1.1 5.5-4.4 3.7-3.5 7.8 1.4 5.2 15 12 30 4M464 207s12.2 18 30.2-1.4m-9.3 7.8s14.8 7.9 27-12.5m-15.7 14.3s7.3 6 22.4-2m20.9-8.2s22.4 4.6 23.8 6M548 200l15.7.6m-25.3-9.3s26.8-1.7 30.3 3.8M526.8 183s37.5 1.5 39.2 3.5m-30.8 34.9s6.4-1.8 7.3-1M520.7 237s8.4 7.2 19.2 4m-14.5 8.2s9.6 4.3 20.9 1.7m-17.7 5.5s9.6 6.4 16 5.3m-20.4-1.5s6.7 5 7 7.6m-16.3-1.8s2 10.5 9.3 14.3m-14.2-9.6s-3.2 13.6 4.9 22m-13.4-11.3c0 .3-.5 6.4-.2 7m-52-59.9l15.6-.8s5.8-2.4 1.8-6.1m2 3.5c.3 0 14.8 1.1 18.6 5.5 3.8 4.3 8.4 13 11 14.5 2.7 1.5 3.2-.6 3.2-.6m-6.4-2.3s-7.8 13.4-1.7 17.4m-2.6-2.6s-7 9.3-1.5 14m-1.4-1.2s-5.5 9 1.1 15.1m-3.6-39c-.3.4-6.7 4.9-9 3.8m2.3 10.4s2.6 2.7 4.9 2.3m-4.6 11.4l4.2 2.8m-3.6 7.6l3.6 2.2m-69.3-144.7s7.7 4 13.8 0c6.1-4 35.4-19 43-21.4 7.7-2.4 12-16.5 13.5-22.6m-5.8 16.5l42.8-12.5s7-5.8 7.3-16.5m-3 11.6s42.7-4.3 42.7-20.2m-6.7 11s45-12.2 49.2-16.8"/>
+      <path fill="none" stroke-width="1.9" d="M436.2 151.5s27.2-14 31.5-15.6c4.3-1.5 14-13.8-.6-13.8"/>
+      <path fill="none" stroke-width="1.9" d="M449.4 157c.3 0 22.3-14.4 29.6-16.2 4-5.5 1.8-11.3-4.9-10.1"/>
+      <path fill="none" stroke-width="1.9" d="M480.9 137.1c.6-.3 11.9-.6 7.9 8.3-5.8 4.2-30.9 16.8-30.9 16.8m17.1-34.5l47.7-16s4-8.2-1.8-9.4m39.7-14.4c0 .3 6.1 3.7 2.4 9.2-6.7 4-38.4 11.6-38.4 11.6M608.9 83l-45 12.6m41.6-2.5l-39 12m35.7-2.2l-34.6 10.4m28.1-.6c-.9 0-25.6 7.6-25.6 7.6m20.2 0l-16 6.4m12 2.2a321 321 0 00-13.8 5.8m9.8 1.2l-12.2 5.8m-8.9 7.3s1.5.6 1.2 2.5m-32 14.3s5.1 1.9.3 6.8c-2.5 3.3-9.5 2.4-13.8 8.5m46.8-83.7s6.4 1.5 1.5 9.8c-12.8 4.9-38.8 12.8-38.8 12.8s-1.2 2.2-4.6 4a758.6 758.6 0 01-40.3 12.2m84.3-29.3s7 3 0 8.2c-8 4.6-35.7 13.2-35.7 13.2s-.4 2.4-1.6 3.3c-1.2 1-37.9 13.2-37.9 13.2"/>
+      <path fill="none" stroke-width="1.9" d="M567.6 115.1s7.4 2.2 1 8.3a289 289 0 01-32.1 12.8s-2.5 3-6.5 4.3a919 919 0 00-29.3 11.6m68.8-28.7c2.1.9 8 1.8.9 7.3-8.3 3.7-28.4 11.6-28.4 11.6l-1.9 3.4-32 13.7m63.2-27.8s3 3.7-3.7 8c-7.3 4-23.2 10-23.2 10m23.2-9.4s3.4 2.1-.9 5.2c-4.9 2.4-24.1 12.5-24.1 12.5l-12.5 8.3"/>
+      <path fill="none" stroke-width="1.9" d="M523.6 112c0 .4 5.2 4.6 3.4 9.5 4.6 3.4 3.7 7 3.7 7s6.4 3.7 5.5 9c6.4 1.5 6 5.1 6 5.1l-2 3.4s6.3-.3.8 8c3.4 1.8 1.9 3.9 1.9 3.9m-1.9-3.7c-.9 0-22.3 8-27.8 12.9"/>
+      <path fill="none" stroke-width="1.9" d="M489.4 144.8s6.4-.3 5.5 6.7c7.4-2.5 5.8 4.6 5.8 4.6s8.6-3.4 7 7.3c5.6-1.2 4.6 4.3 4.6 4.3s5-.3 5 2.4c3.3-3 7-1.5 7-1.5s2.4-3.4 5.8-2.4m-34.9-15c0 .6-28.7 16.5-28.7 16.5m34.2-11.3L479 169.8m29-6.7c0 .3-18.9 11.3-18.9 11.3m23.2-7s-13.4 11-16.5 10.4m21.1-7s-7.6 5.7-14 8.5m22-11s2.4 3-12.9 11"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/at.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/at.svg
new file mode 100644
index 0000000..e63fb2e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/at.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-at" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M640 480H0V0h640z"/>
+    <path fill="#ed2939" d="M640 480H0V320h640zm0-319.9H0V.1h640z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/au.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/au.svg
new file mode 100644
index 0000000..18394ab
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/au.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-au" viewBox="0 0 640 480">
+  <path id="path617" fill="#006" stroke-width="1.3" d="M0 0h640v480H0z"/>
+  <path id="path625" fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M299.8 392.5l-43.7 3.8 6 43.4L232 408l-30.1 31.7 6-43.4-43.7-3.8 37.7-22.3-24.3-36.5 41 15.5 13.4-41.7 13.5 41.7 41-15.5-24.3 36.5m224.4 62.3L476 416.7l17.8 6.7 5.8-18.1 5.8 18.1 17.8-6.7-10.5 15.8 16.4 9.7-19 1.7 2.6 18.9-13-13.9-13.2 13.9 2.6-18.9-19-1.6m16.4-291.9L476 134.6l17.8 6.7 5.8-18.1 5.8 18.1 17.8-6.7-10.5 15.8 16.4 9.8-19 1.6 2.6 18.9-13-13.8-13.2 13.7 2.6-18.8-19-1.6M380.8 265l-10.5-15.8 17.8 6.7 5.8-18.1 5.9 18.1 17.8-6.7L407 265l16.4 9.7-19 1.7 2.7 18.9-13.2-13.9-13 13.9 2.5-18.9-19-1.6m216.3-38L570 221l17.8 6.7 5.8-18.1 5.9 18.1 17.8-6.7-10.5 15.8 16.3 9.7-19 1.7 2.6 18.8-13-13.8-13.2 13.8 2.6-18.8-19-1.7M542 320l-10.3 6.5 2.9-11.9-9.3-7.8 12.1-1 4.6-11.2 4.7 11.3 12.1.9-9.3 7.8 2.9 11.9"/>
+  <path id="path969" fill="#006" stroke-width=".5" d="M0 0h320v240H0z"/>
+  <path id="path971" fill="#fff" stroke-width=".5" d="M37.5 0l122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z"/>
+  <path id="path973" fill="#c8102e" stroke-width=".5" d="M212 140.5L320 220v20l-135.5-99.5zm-92 10l3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z"/>
+  <path id="path975" fill="#fff" stroke-width=".5" d="M120.5 0v240h80V0zM0 80v80h320V80z"/>
+  <path id="path977" fill="#c8102e" stroke-width=".5" d="M0 96.5v48h320v-48zM136.5 0v240h48V0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aw.svg
new file mode 100644
index 0000000..66adb11
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/aw.svg
@@ -0,0 +1,186 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-aw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="aw-a">
+      <path fill-opacity=".7" d="M0 0h288v216H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#aw-a)" transform="scale(2.2222)">
+    <path fill="#39c" d="M0 0v216h324V0H0z"/>
+    <path fill="#ff0" d="M0 144v12h324v-12H0zm0 24v12h324v-12H0z"/>
+  </g>
+  <path fill="#9cc" d="M142.7 28l2.9 3-3-3zm-3 6l3 3-3-3m5.9 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M139.7 37l3 2.9-3-3m5.9 0l3 3-3-3z"/>
+  <path fill="#6cc" d="M136.7 42.8l3 3-3-3z"/>
+  <path fill="#c66" d="M142.7 42.8l2.9 3-3-3z"/>
+  <path fill="#6cc" d="M148.6 42.8l2.9 3-3-3z"/>
+  <path fill="#ccf" d="M136.7 45.8l3 3-3-3zm11.9 0l2.9 3-3-3z"/>
+  <path fill="#fcc" d="M139.7 48.7l3 3-3-3m5.9 0l3 3-3-3z"/>
+  <path fill="#6cc" d="M133.8 51.7l3 3-3-3z"/>
+  <path fill="#c00" stroke="#fff" stroke-width="3.7" d="M142.2 34l-20.7 78.5L42.8 134l78.4 20.5 21 78.4 20.9-78.4 78.4-21-78.4-20.9-21-78.4z"/>
+  <path fill="#6cc" d="M151.5 51.7l3 3-3-3z"/>
+  <path fill="#9cf" d="M133.8 54.6l3 3-3-3m17.7 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M136.7 57.6l3 3-3-3m11.9 0l2.9 3-3-3z"/>
+  <path fill="#69c" d="M130.8 60.5l3 3-3-3z"/>
+  <path fill="#c33" d="M137.7 62.5l1 2-1-2m11.8 0l1 2-1-2z"/>
+  <path fill="#69c" d="M154.5 60.5l3 3-3-3z"/>
+  <path fill="#9cf" d="M130.8 63.5l3 3-3-3m23.7 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M133.8 66.4l3 3-3-3m17.7 0l3 3-3-3z"/>
+  <path fill="#69c" d="M127.9 69.4l3 3-3-3zm29.5 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M127.9 72.3l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#cff" d="M127.9 75.3l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#69c" d="M125 78.3l2.9 2.9-3-3z"/>
+  <path fill="#fcc" d="M130.8 78.3l3 2.9-3-3m23.7 0l3 3-3-3z"/>
+  <path fill="#69c" d="M160.4 78.3l3 2.9-3-3z"/>
+  <path fill="#9cc" d="M125 81.2l2.9 3-3-3z"/>
+  <path fill="#c33" d="M131.8 83.2l1 2-1-2m23.6 0l1 2-1-2z"/>
+  <path fill="#9cc" d="M160.4 81.2l3 3-3-3z"/>
+  <path fill="#cff" d="M125 84.2l2.9 3-3-3m35.5 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M127.9 87.1l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M122 90l3 3-3-3z"/>
+  <path fill="#c33" d="M128.9 92l1 2-1-2m29.5 0l1 2-1-2z"/>
+  <path fill="#9cc" d="M163.3 90l3 3-3-3z"/>
+  <path fill="#ccf" d="M122 93l3 3-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M125 96l2.9 3-3-3m35.5 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M119 99l3 2.9-3-3z"/>
+  <path fill="#c33" d="M126 100.9l.9 2-1-2m35.4 0l1 2-1-2z"/>
+  <path fill="#9cc" d="M166.3 99l3 2.9-3-3z"/>
+  <path fill="#ccf" d="M119 101.9l3 3-3-3m47.3 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M122 104.8l3 3-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M116 107.8l3 3-3-3z"/>
+  <path fill="#c33" d="M122 107.8l3 3-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M169.2 107.8l3 3-3-3m-62 3l3 2.9-3-3z"/>
+  <path fill="#ccf" d="M110.2 110.7l3 3-3-3m65 0l2.9 3-3-3z"/>
+  <path fill="#9cc" d="M178 110.7l3 3-3-3m-79.6 3l3 3-3-3z"/>
+  <path fill="#ccf" d="M101.3 113.7l3 3-3-3z"/>
+  <path fill="#fcc" d="M113.1 113.7l3 3-3-3z"/>
+  <path fill="#c33" d="M116 113.7l3 3-3-3m53.2 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M172.2 113.7l3 3-3-3z"/>
+  <path fill="#ccf" d="M184 113.7l3 3-3-3z"/>
+  <path fill="#9cc" d="M187 113.7l2.9 3-3-3z"/>
+  <path fill="#69c" d="M86.6 116.6l3 3-3-3z"/>
+  <path fill="#9cc" d="M89.5 116.6l3 3-3-3z"/>
+  <path fill="#cff" d="M92.5 116.6l3 3-3-3z"/>
+  <path fill="#fcc" d="M104.3 116.6l3 3-3-3z"/>
+  <path fill="#c33" d="M109.2 117.6l2 1-2-1m67.9 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M181 116.6l3 3-3-3z"/>
+  <path fill="#cff" d="M192.8 116.6l3 3-3-3z"/>
+  <path fill="#9cc" d="M195.8 116.6l3 3-3-3z"/>
+  <path fill="#69c" d="M198.7 116.6l3 3-3-3m-121 3l3 3-3-3z"/>
+  <path fill="#9cc" d="M80.7 119.6l3 3-3-3z"/>
+  <path fill="#cff" d="M83.6 119.6l3 3-3-3z"/>
+  <path fill="#fcc" d="M95.4 119.6l3 3-3-3z"/>
+  <path fill="#c33" d="M100.3 120.6l2 1-2-1m85.6 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M189.9 119.6l3 3-3-3z"/>
+  <path fill="#cff" d="M201.7 119.6l3 3-3-3z"/>
+  <path fill="#9cc" d="M204.6 119.6l3 3-3-3z"/>
+  <path fill="#69c" d="M207.6 119.6l3 3-3-3m-138.8 3l3 2.9-3-3z"/>
+  <path fill="#9cf" d="M71.8 122.5l3 3-3-3z"/>
+  <path fill="#fcc" d="M86.6 122.5l3 3-3-3z"/>
+  <path fill="#c33" d="M91.5 123.5l2 1-2-1m103.3 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M198.7 122.5l3 3-3-3z"/>
+  <path fill="#9cf" d="M213.5 122.5l3 3-3-3z"/>
+  <path fill="#69c" d="M216.4 122.5l3 3-3-3z"/>
+  <path fill="#6cc" d="M60 125.5l3 3-3-3z"/>
+  <path fill="#9cf" d="M63 125.5l2.9 3-3-3z"/>
+  <path fill="#fcc" d="M74.8 125.5l2.9 3-3-3zm135.8 0l2.9 3-3-3z"/>
+  <path fill="#9cf" d="M222.3 125.5l3 3-3-3z"/>
+  <path fill="#6cc" d="M225.3 125.5l3 3-3-3m-174.2 3l3 2.9-3-3z"/>
+  <path fill="#ccf" d="M54 128.4l3 3-3-3z"/>
+  <path fill="#fcc" d="M65.9 128.4l3 3-3-3z"/>
+  <path fill="#c33" d="M70.8 129.4l2 1-2-1m144.7 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M219.4 128.4l3 3-3-3z"/>
+  <path fill="#ccf" d="M231.2 128.4l3 3-3-3z"/>
+  <path fill="#6cc" d="M234.2 128.4l3 3-3-3z"/>
+  <path fill="#9cc" d="M42.3 131.4l3 3-3-3z"/>
+  <path fill="#ccf" d="M45.2 131.4l3 3-3-3z"/>
+  <path fill="#fcc" d="M57 131.4l3 3-3-3zm171.3 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M240 131.4l3 3-3-3z"/>
+  <path fill="#9cc" d="M243 131.4l3 3-3-3m-206.6 3l3 2.9-3-3z"/>
+  <path fill="#c66" d="M51.1 134.3l3 3-3-3zm183 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M249 134.3l2.9 3-3-3m-206.6 3l3 3-3-3z"/>
+  <path fill="#ccf" d="M45.2 137.3l3 3-3-3z"/>
+  <path fill="#fcc" d="M57 137.3l3 3-3-3m171.3 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M240 137.3l3 3-3-3z"/>
+  <path fill="#9cc" d="M243 137.3l3 3-3-3z"/>
+  <path fill="#6cc" d="M51.1 140.3l3 2.9-3-3z"/>
+  <path fill="#ccf" d="M54 140.3l3 2.9-3-3z"/>
+  <path fill="#fcc" d="M65.9 140.3l3 2.9-3-3z"/>
+  <path fill="#c33" d="M70.8 141.2l2 1-2-1m144.7 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M219.4 140.3l3 2.9-3-3z"/>
+  <path fill="#ccf" d="M231.2 140.3l3 2.9-3-3z"/>
+  <path fill="#6cc" d="M234.2 140.3l3 2.9-3-3m-174.2 3l3 3-3-3z"/>
+  <path fill="#9cf" d="M63 143.2l2.9 3-3-3z"/>
+  <path fill="#fcc" d="M74.8 143.2l2.9 3-3-3zm135.8 0l2.9 3-3-3z"/>
+  <path fill="#9cf" d="M222.3 143.2l3 3-3-3z"/>
+  <path fill="#6cc" d="M225.3 143.2l3 3-3-3z"/>
+  <path fill="#69c" d="M68.8 146.2l3 2.9-3-3z"/>
+  <path fill="#9cf" d="M71.8 146.2l3 2.9-3-3z"/>
+  <path fill="#fcc" d="M86.6 146.2l3 2.9-3-3z"/>
+  <path fill="#c33" d="M91.5 147.1l2 1-2-1m103.3 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M198.7 146.2l3 2.9-3-3z"/>
+  <path fill="#9cf" d="M213.5 146.2l3 2.9-3-3z"/>
+  <path fill="#69c" d="M216.4 146.2l3 2.9-3-3m-138.7 3l3 3-3-3z"/>
+  <path fill="#9cc" d="M80.7 149.1l3 3-3-3z"/>
+  <path fill="#cff" d="M83.6 149.1l3 3-3-3z"/>
+  <path fill="#fcc" d="M95.4 149.1l3 3-3-3z"/>
+  <path fill="#c33" d="M100.3 150l2 1-2-1m85.6 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M189.9 149.1l3 3-3-3z"/>
+  <path fill="#cff" d="M201.7 149.1l3 3-3-3z"/>
+  <path fill="#9cc" d="M204.6 149.1l3 3-3-3z"/>
+  <path fill="#69c" d="M207.6 149.1l3 3-3-3m-121 3l2.9 2.9-3-3z"/>
+  <path fill="#9cc" d="M89.5 152l3 3-3-3z"/>
+  <path fill="#cff" d="M92.5 152l3 3-3-3z"/>
+  <path fill="#fcc" d="M104.3 152l3 3-3-3z"/>
+  <path fill="#c33" d="M109.2 153l2 1-2-1m67.9 0l2 1-2-1z"/>
+  <path fill="#fcc" d="M181 152l3 3-3-3z"/>
+  <path fill="#cff" d="M192.8 152l3 3-3-3z"/>
+  <path fill="#9cc" d="M195.8 152l3 3-3-3z"/>
+  <path fill="#69c" d="M198.7 152l3 3-3-3z"/>
+  <path fill="#9cc" d="M98.4 155l3 3-3-3z"/>
+  <path fill="#ccf" d="M101.3 155l3 3-3-3z"/>
+  <path fill="#fcc" d="M113.1 155l3 3-3-3z"/>
+  <path fill="#c33" d="M116 155l3 3-3-3m53.2 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M172.2 155l3 3-3-3z"/>
+  <path fill="#ccf" d="M184 155l3 3-3-3z"/>
+  <path fill="#9cc" d="M187 155l2.9 3-3-3m-79.7 3l3 3-3-3z"/>
+  <path fill="#ccf" d="M110.2 158l3 3-3-3m65 0l2.9 3-3-3z"/>
+  <path fill="#9cc" d="M178 158l3 3-3-3m-62 3l3 2.9-3-3z"/>
+  <path fill="#c33" d="M122 161l3 2.9-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M169.2 161l3 2.9-3-3z"/>
+  <path fill="#fcc" d="M122 163.9l3 3-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M119 166.8l3 3-3-3z"/>
+  <path fill="#c33" d="M126 168.8l.9 2-1-2m35.4 0l1 2-1-2z"/>
+  <path fill="#ccf" d="M166.3 166.8l3 3-3-3z"/>
+  <path fill="#9cc" d="M119 169.8l3 3-3-3m47.3 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M125 172.7l2.9 3-3-3m35.5 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M122 175.7l3 3-3-3z"/>
+  <path fill="#c33" d="M128.9 177.6l1 2-1-2m29.5 0l1 2-1-2z"/>
+  <path fill="#ccf" d="M163.3 175.7l3 3-3-3z"/>
+  <path fill="#9cc" d="M122 178.6l3 3-3-3m41.3 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M127.9 181.6l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#cff" d="M125 184.5l2.9 3-3-3z"/>
+  <path fill="#c33" d="M131.8 186.5l1 2-1-2m23.6 0l1 2-1-2z"/>
+  <path fill="#cff" d="M160.4 184.5l3 3-3-3z"/>
+  <path fill="#9cc" d="M125 187.5l2.9 3-3-3m35.5 0l3 3-3-3z"/>
+  <path fill="#69c" d="M125 190.4l2.9 3-3-3z"/>
+  <path fill="#fcc" d="M130.8 190.4l3 3-3-3m23.7 0l3 3-3-3z"/>
+  <path fill="#69c" d="M160.4 190.4l3 3-3-3z"/>
+  <path fill="#cff" d="M127.9 193.4l3 3-3-3zm29.5 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M127.9 196.3l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#69c" d="M127.9 199.3l3 3-3-3m29.5 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M133.8 202.2l3 3-3-3m17.7 0l3 3-3-3z"/>
+  <path fill="#9cf" d="M130.8 205.2l3 3-3-3z"/>
+  <path fill="#c33" d="M137.7 207.2l1 2-1-2m11.8 0l1 2-1-2z"/>
+  <path fill="#9cf" d="M154.5 205.2l3 3-3-3z"/>
+  <path fill="#69c" d="M130.8 208.2l3 2.9-3-3m23.7 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M136.7 211.1l3 3-3-3m11.9 0l2.9 3-3-3z"/>
+  <path fill="#9cf" d="M133.8 214l3 3-3-3zm17.7 0l3 3-3-3z"/>
+  <path fill="#6cc" d="M133.8 217l3 3-3-3m17.7 0l3 3-3-3z"/>
+  <path fill="#fcc" d="M139.7 220l3 3-3-3m5.9 0l3 3-3-3z"/>
+  <path fill="#ccf" d="M136.7 222.9l3 3-3-3m11.9 0l2.9 3-3-3z"/>
+  <path fill="#6cc" d="M136.7 225.9l3 3-3-3z"/>
+  <path fill="#c66" d="M142.7 225.9l2.9 3-3-3z"/>
+  <path fill="#6cc" d="M148.6 225.9l2.9 3-3-3z"/>
+  <path fill="#ccf" d="M139.7 231.8l3 3-3-3m5.9 0l3 3-3-3z"/>
+  <path fill="#9cc" d="M139.7 234.7l3 3-3-3m5.9 0l3 3-3-3m-3 6l3 2.9-3-3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ax.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ax.svg
new file mode 100644
index 0000000..dad7d94
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ax.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ax" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ax-a">
+      <path fill-opacity=".7" d="M106.3 0h1133.3v850H106.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#ax-a)" transform="matrix(.56472 0 0 .56482 -60 -.1)">
+    <path fill="#0053a5" d="M0 0h1300v850H0z"/>
+    <g fill="#ffce00">
+      <path d="M400 0h250v850H400z"/>
+      <path d="M0 300h1300v250H0z"/>
+    </g>
+    <g fill="#d21034">
+      <path d="M475 0h100v850H475z"/>
+      <path d="M0 375h1300v100H0z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/az.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/az.svg
new file mode 100644
index 0000000..4293e9f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/az.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-az" viewBox="0 0 640 480">
+  <path fill="#3f9c35" d="M.1 0h640v480H.1z"/>
+  <path fill="#ed2939" d="M.1 0h640v320H.1z"/>
+  <path fill="#00b9e4" d="M.1 0h640v160H.1z"/>
+  <circle cx="304" cy="240" r="72" fill="#fff"/>
+  <circle cx="320" cy="240" r="60" fill="#ed2939"/>
+  <path fill="#fff" d="M384 200l7.7 21.5 20.6-9.8-9.8 20.7L424 240l-21.5 7.7 9.8 20.6-20.6-9.8L384 280l-7.7-21.5-20.6 9.8 9.8-20.6L344 240l21.5-7.7-9.8-20.6 20.6 9.8L384 200z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ba.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ba.svg
new file mode 100644
index 0000000..6402c10
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ba.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ba" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ba-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#ba-a)" transform="translate(80) scale(.9375)">
+    <path fill="#009" d="M-85.3 0h682.6v512H-85.3V0z"/>
+    <path fill="#FC0" d="M56.5 0l511 512.3V.3L56.5 0z"/>
+    <path fill="#FFF" d="M439.9 481.5L412 461.2l-28.6 20.2 10.8-33.2-28.2-20.5h35l10.8-33.2 10.7 33.3h35l-28 20.7 10.4 33zm81.3 10.4l-35-.1-10.7-33.3-10.8 33.2h-35l28.2 20.5-10.8 33.2 28.6-20.2 28 20.3-10.5-33 28-20.6zM365.6 384.7l28-20.7-35-.1-10.7-33.2-10.8 33.2-35-.1 28.2 20.5-10.8 33.3 28.6-20.3 28 20.4-10.5-33zm-64.3-64.5l28-20.6-35-.1-10.7-33.3-10.9 33.2h-34.9l28.2 20.5-10.8 33.2 28.6-20.2 27.9 20.3-10.4-33zm-63.7-63.6l28-20.7h-35L220 202.5l-10.8 33.2h-35l28.2 20.4-10.8 33.3 28.6-20.3 28 20.4-10.5-33zm-64.4-64.3l28-20.6-35-.1-10.7-33.3-10.9 33.2h-34.9L138 192l-10.8 33.2 28.6-20.2 27.9 20.3-10.4-33zm-63.6-63.9l27.9-20.7h-35L91.9 74.3 81 107.6H46L74.4 128l-10.9 33.2L92.1 141l27.8 20.4-10.3-33zm-64-64l27.9-20.7h-35L27.9 10.3 17 43.6h-35L10.4 64l-11 33.3L28.1 77l27.8 20.4-10.3-33zm-64-64L9.4-20.3h-35l-10.7-33.3L-47-20.4h-35L-53.7 0l-10.8 33.2L-35.9 13l27.8 20.4-10.3-33z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bb.svg
new file mode 100644
index 0000000..73f5329
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bb.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bb" viewBox="0 0 640 480">
+  <path fill="#00267f" d="M0 0h640v480H0z"/>
+  <path fill="#ffc726" d="M213.3 0h213.4v480H213.3z"/>
+  <path id="a" d="M319.8 135.5c-7 19-14 38.6-29.2 53.7 4.7-1.6 13-3 18.2-2.8v79.5l-22.4 3.3c-.8 0-1-1.3-1-3-2.2-24.7-8-45.5-14.8-67-.5-2.9-9-14-2.4-12 .8 0 9.5 3.6 8.2 1.9a85 85 0 00-46.4-24c-1.5-.3-2.4.5-1 2.2 22.4 34.6 41.3 75.5 41.1 124 8.8 0 30-5.2 38.7-5.2v56.1H320l2.5-156.7z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 639.5 0)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bd.svg
new file mode 100644
index 0000000..1e3433e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bd.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bd" viewBox="0 0 640 480">
+  <path fill="#006a4e" d="M0 0h640v480H0z"/>
+  <circle cx="280" cy="240" r="160" fill="#f42a41"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/be.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/be.svg
new file mode 100644
index 0000000..eaf016d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/be.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-be" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path d="M0 0h213.3v480H0z"/>
+    <path fill="#ffd90c" d="M213.3 0h213.4v480H213.3z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bf.svg
new file mode 100644
index 0000000..c92cce6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bf" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#de0000" d="M640 479.6H.4V0H640z"/>
+    <path fill="#35a100" d="M639.6 480H0V240.2h639.6z"/>
+    <path fill="#fff300" d="M254.6 276.2l-106-72.4h131L320 86.6 360.4 204l131-.1-106 72.4 40.5 117.3-106-72.6L214 393.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bg.svg
new file mode 100644
index 0000000..15ba696
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bg.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bg" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#d62612" d="M0 320h640v160H0z"/>
+    <path fill="#fff" d="M0 0h640v160H0z"/>
+    <path fill="#00966e" d="M0 160h640v160H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bh.svg
new file mode 100644
index 0000000..d4a32c0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bh.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bh" viewBox="0 0 640 480">
+  <defs id="defs448">
+    <clipPath id="bh-a">
+      <path id="path445" fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <path id="path1077" fill="#fff" stroke-width="4.8" d="M0 0h640v480H0" opacity="1" stop-opacity="1"/>
+  <path id="path1079" fill="#ce1126" stroke-width="5.1" d="M640 0H96l110.7 48L96 96l110.7 48L96 192l110.7 48L96 288l110.7 48L96 384l110.7 48L96 480h544" opacity="1" stop-opacity="1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bi.svg
new file mode 100644
index 0000000..091f2df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bi.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bi" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="bi-a">
+      <path fill-opacity=".7" d="M-90.5 0H592v512H-90.5z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#bi-a)" transform="translate(84.9) scale(.9375)">
+    <path fill="#00cf00" d="M-178 0l428.8 256L-178 512zm857.6 0L250.8 256l428.8 256z"/>
+    <path fill="red" d="M-178 0l428.8 256L679.6 0zm0 512l428.8-256 428.8 256z"/>
+    <path fill="#fff" d="M679.6 0h-79.9L-178 464.3V512h79.9L679.6 47.7z"/>
+    <path fill="#fff" d="M398.9 256a148 148 0 11-296.1 0 148 148 0 01296 0z"/>
+    <path fill="#fff" d="M-178 0v47.7L599.7 512h79.9v-47.7L-98.1 0z"/>
+    <path fill="red" stroke="#00de00" stroke-width="3.9" d="M280 200.2l-19.3.3-10 16.4-9.9-16.4-19.2-.4 9.3-16.9-9.2-16.8 19.2-.4 10-16.4 9.9 16.5 19.2.4-9.3 16.8zm-64.6 111.6l-19.2.3-10 16.4-9.9-16.4-19.2-.4 9.3-16.9-9.2-16.8 19.2-.4 10-16.4 9.9 16.5 19.2.4-9.3 16.8zm130.6 0l-19.2.3-10 16.4-10-16.4-19.1-.4 9.3-16.9-9.3-16.8 19.2-.4 10-16.4 10 16.5 19.2.4-9.4 16.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bj.svg
new file mode 100644
index 0000000..fa0df27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bj.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bj" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="bj-a">
+      <path fill="gray" d="M67.6-154h666v666h-666z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#bj-a)" transform="matrix(.961 0 0 .7207 -65 111)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="#319400" d="M0-154h333v666H0z"/>
+      <path fill="#ffd600" d="M333-154h666v333H333z"/>
+      <path fill="#de2110" d="M333 179h666v333H333z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bl.svg
new file mode 100644
index 0000000..ecf6ec4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bl.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bl" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bm.svg
new file mode 100644
index 0000000..5e2c873
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bm.svg
@@ -0,0 +1,98 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bm" viewBox="0 0 640 480">
+  <path fill="#cf142b" d="M0 0h640v480H0z"/>
+  <path fill="#00247d" d="M0 0h320v160H0z"/>
+  <path fill="#fff" d="M0 0v17.9L284.2 160H320v-17.9L35.8 0H0zm320 0v17.9L35.8 160H0v-17.9L284.2 0H320z"/>
+  <path fill="#fff" d="M133.3 0v160h53.4V0h-53.4zM0 53.3v53.4h320V53.3H0z"/>
+  <path fill="#cf142b" d="M0 64v32h320V64H0zM144 0v160h32V0h-32zM0 160l106.7-53.3h23.8L23.8 160H0zM0 0l106.7 53.3H82.8L0 12V0zm189.5 53.3L296 0h24L213.3 53.3h-23.8zM320 160l-106.7-53.3h23.9L320 148v12z"/>
+  <path fill="#fff" d="M553.8 148.3v135.5c0 36.2-72.3 48-72.3 48S409 320 409 283.7V148.3h144.7z"/>
+  <path fill="#2f8f22" d="M553.8 283.8c0 36.2-72.3 48-72.3 48S409 320 409 283.7c0 0 0-3 1.5-4.6 0 0-.8 6 3.8 10.6 0 0-3.6-6.5 0-12.8 0 0-1.4 8.2 3.7 12.8 0 0-2.8-6.6.3-14 0 0-1.5 12 4 14.5 0 0 1.5-7-.7-11.4 0 0 3.8 1.5 3.6 11.6 0 0 1.2-1.5 1.5-8.8 0 0 .2 8.4 3 10.3 0 0 1-.9-.3-4.6s.5-5.1.8-5c0 0-.6 4.1 2.9 7.3 0 0-1.5-6.6.6-7.5 0 0-.5 5.6 4 6.8 0 0 .3-1.6-.7-3.4 0 0-.8-2.1-.2-3.8 0 0 1.4 5 3.3 5.9 0 0-1.1-3 0-5.9 0 0 .2 4.2 4 6 0 0-2.5-3.3-1.6-6.9l24.1 1.2 12.5.6 37.5-2.6 6.4-5.6s2.6 3.5-1.5 9.1c0 0 4-.7 5.3-7 0 0 1.6 3.5-.6 7.4 0 0 4.4-4.5 5-9.5 0 0 1.8 4.9-2.4 10.1 0 0 3.7-1.3 5.3-6.8 0 0 1.3 3.3-2.3 8 0 0 6.8-3.5 6.6-11 0 0 2.8 4.1-.4 9.8 0 0 3.4-3.1 3.8-7.8 0 0 1.9 2.1-.2 7.9 0 0 4.2-4 4.9-8.3 0 0 .9 4-2.7 9 0 0 2.4-.6 4.8-5.5 0 0 .6 2-1.5 5.5 0 0 2.3-.4 3.8-4.9 0 0 .3 2.7-.4 5 0 0 1.8-1.1 2.2-6.1 0 0 1 1.6 1 3.7v.7z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M516.6 205.4s-2.5.5-5.8-.5c-3.2-1-4.5-.6-5.5 0 0 0 1.3-2.6-1.9-4.7 0 0 1 2.7-.4 3.9 0 0-.6.6-1.4-.3 0 0-1.1-1.2-2.3-2 0 0 2.7-1 2.2-3.8-.5-2.7-2-3-2.7-3.4a5 5 0 000 2s-3-1.6 1-3.9 3.3-3.7 2.6-4.9a11 11 0 00-3-3s.8 1.3.6 2.4c-.1 1-2 1.7-1.6-.1.4-2 0-1.6 0-3.6 0 0 3.5 1.2 5-2.3 0 0 1.3-3.6-3.2-5.4 0 0 1.1 1.5.6 2.6 0 0-1 1.8-2.1.4s-1.9-1.8-1.8-3.5c0 0 4.1.6 3-3.9 0 0-.7 3-6-1 0 0 3.5-3.6 2.1-6.4 0 0-.4-1.3-4.1-.6 0 0 3.2-2 1.9-3.8 0 0-.7-1.1-3.8.4 0 0 1.2-2-1.8-4.2 0 0-2 1-3 2 0 0-2-2.6-3.3-3.6 0 0-2.4.9-3 3.6 0 0-1.1-1.3-3.6-2 0 0-1.2 2.3.4 4.2 0 0-1.2 0-3.3-1 0 0-2.4-1-2 1 .3 2 .5 2.5 1 3.5 0 0-5.4-1.3-5.2 1.7a7.4 7.4 0 002.6 5.2s-3 4-5.6 1c0 0-1 1 1 3.5 0 0 2 2.1.3 3.5 0 0-2.1 1.7-3.1-1.6 0 0-3.5 3.4.6 6 0 0 2.6 1.5 5.3-.8 0 0-.9 6.6-3.4 5.3 0 0-1.5-1 1.2-2.4 0 0-4-.5-4.6 3.3 0 0-.5 3 3 4.2 0 0 2.6 1-.1 3 0 0-2 1.5-.7 3.7 0 0 1.5 2.4-2.4 2.7 0 0-2 0-2.8-.3 0 0-.9 1.6-.3 3.4 0 0-2-1.5-6.3.1-4.4 1.6-4.1.5-4.4 1l-1.3 2s2.3 3 2.4 2.8l-.5 3.3 1.2.5 9-4 9.3-4.8 7.4.4 4.7 1.1 6.1.5 4.5-2.4h6.4l7 3.5 8 4.8 4.2.8 3.2-.2v-6.5l-1.5-2.4z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M443.5 213s3.5 1.8 5-.3c0 0 1.9-3.7-2.3-5 0 0 2.3-2.7-.2-5.2 0 0-1.3-1.4-3.5-.4 0 0-1-2-3.1-1.9 0 0-2 0-2.6 2.1 0 0-2.6-1-4 .5 0 0-2.5 2.7.9 4.9l2.4.2 2.4-1.1 2.7.7s-.7 2.7 2.3 5.5z"/>
+  <path fill="#64b4d1" stroke="#000" stroke-width=".4" d="M521.8 206.6a5.6 5.6 0 015.8 3.2c2.2 5.2-2.5 8-2.5 8 .3 1.1.4 2.7.4 2.7 6.6.8 5.4 8.2 5.4 8.2l-2.2-1.8c-3.8-1.5-7.8 1.8-10.6 7.2-2.8 5.5-1.5 8-1 14.5s11 10.4 11 10.4l-8.2 21c-3.2 8.3-10 4.9-12 3.1-1.9-1.7-2.4-.7-3.3 0-1 .8 4.4 5-5.5 9-9.8 4-11.5 7-13.2 8-1.6 1-8.4.4-9-.5-.8-.8-.4-.8-3-2.4-2.5-1.5-6.8-3-11.5-5.2-4.7-2.3-4.6-5.2-4.5-5.8 0-.6 1.6-5.5-3.9-1.6s-10.2-1.9-10.2-1.9c-1-1.4-5.7-13.7-5.7-13.7a77.5 77.5 0 00-3.6-10s-.3.6 3.8-1.7c4-2.3 5.9-6.2 7.3-10 1.4-3.9 0-10.5-.5-11.8s-3.5-7.4-7.3-8.7c-3.7-1.3-6.3 2-6.3 2s-1.1-7.5 5.5-8.3c0 0 0-1.6.4-2.7 0 0-4.7-2.8-2.5-8 0 0 1.5-3.6 5.7-3.2l-1 2s-1 10.6 14.5 3.5c15.5-7.2 15-8.5 24-4l6.4-.1s9.3-4.4 12.3-2.5c3 1.9 13.7 7.9 13.7 7.9s10.4 3.9 12.5-3.3l-1.2-3.5z"/>
+  <path fill="#fff" stroke="#00247d" stroke-miterlimit="10" stroke-width=".5" d="M475 252.7s-.5-3.3-1-5.4c0 0-1.2-3.3.8-5.7l2.4-2.8s1.5-2 3.4-2.3c0 0 1.9 0 2-.4.2-.4 2.3-3.8 7.2 0 0 0 1.5-2.5 4-3 0 0 2.5-.7 3.8 1.2 0 0 2.9-2.2 5.4 1.4 0 0 3.4-2 6 1.9 0 0 3.3-1.7 5.4 1.8 2.1 3.6 1.7 5 1.7 5l1.6 5.7 5.5 6.8-12.8 4.8h-5.8l-11.5 3-20.4 1.6-5.6-6.7 8-7z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M457.8 286.6s-3 .1-4.6 1c-1.5.7-2.7 1.5-4.5 2.7 0 0-.9 1.1-4.4.4 0 0-6-1.4-6 3.3 0 0-7.4.6-4.4 7 0 0 2 5 6.2 1.5 0 0-2.7 3.8 2.5 5.3 0 0 3.7 1 4.8-2.9 0 0 .6-1.5-.8-3.3 0 0 1.8-.4 3-2.3 0 0-3.8 4.8.4 6.6 0 0 5.3 1.3 5.6-4.2 0 0-.5-2.6 1.6-3.5 0 0 4.2-1 6-5.6 0 0-6-3.2-5.4-6zm-12.3-48.2s-4.7-2.1-7 0c0 0-3-1.9-6.3 0 0 0-3.1 2-5.3 4.3 0 0-1.5 1.3-1 5.4 0 0 .9 2.9.4 4.3 0 0-1-.2-3.1 2.3 0 0-2.6 3-5 .3 0 0 .8 3.8 5.1 3.2 0 0-2.1 1.6-.3 5.9 0 0 1.4 3-.8 6.8 0 0 3.8-1.5 3.7-6 0 0-.4-3 .8-5.1 0 0-1.2 1.9 1.4 6 0 0 2 3 .4 6 0 0 3.7-1.3 3.4-5.8-.4-4.6-2.6-2.7-1.2-6.9 0 0 .4 2.2 1.5 3.3a6 6 0 012 5.9s2.2-2.8 1.7-5.7a11 11 0 00-1.1-3.7l7-4 3.6-6.3.1-10.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".5" d="M434.8 256.4s-3-.2-3.4-2.5m-5.1-1.5s1 0 2 1c0 0 .6 1 1.6.8"/>
+  <path d="M439.1 247.8s-1.5 0-2.4-.7c0 0-.8-.6-1.3.3 0 0-.8 1.4.6 2 0 0 1.9 1-1 2.8 0 0 3.4-1.3 2-3 0 0-1.5-1-1-1.4 0 0 .2-.4.8 0 .6.5 1.8.3 2.3 0z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".4" d="M484.9 256l1.8-.5-11.7-40.3-.4.1z"/>
+  <path d="M446 300.7s-2.7-1.6-5 .2c0 0 .3-1 2-1.4 0 0 1-2.7 3.6-2.4 0 0-1.1 1.3-2.5 2.3 0 0 1.5.2 2 1.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M436.4 307s-4.4-2.7-2-7.3c0 0 .7-1.3 2-1 0 0 2.7.8.6 4.6 0 0-1.1 2.4-.6 3.8zm8.8 4.4s-6.2-2.8-4.3-7.7c0 0 .6-1.6 2-1.5 0 0 2.4.2 1.9 3.4 0 0-.7 3 .4 5.8z"/>
+  <path d="M443.9 293.4s-1.9 1.4-2.6 2.3c0 0-.8-1-1.8-1.5 0 0 1.2-.2 1.8.3 0 0 1-.9 2.6-1.1z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M449.4 310.2s5-1.2 4-6.3c0 0-.5-2.2-2.5-1.9 0 0-2.5.7-.9 3.9 0 0 1 2.2-.6 4.3z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M471.5 203.7l4.8 1.6s4.5 2 10.3 0l4.4-1.7-3 4.6v2.4l1.8 2.7s-1.1.5-4.5-1.6c0 0-3.7-2.9-8.1 0 0 0-2.5 1.6-4.5 1.6l2.9-3.2-1.1-2.9-3-3.6z"/>
+  <path fill="#fff" d="M451.3 304.2s.2-.3 0-.4l-.4.2s-.5.8 0 2c0 0 .4.7.2 1.5l.1.3s.2-.1.2-.3c0 0 .3-.7-.2-1.5 0 0-.5-1.2.1-1.8z"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M518.8 213s-3.5 1.8-5-.3c0 0-1.8-3.7 2.4-5 0 0-2.3-2.7.1-5.2 0 0 1.3-1.4 3.5-.4 0 0 1-2 3.1-1.9 0 0 2 0 2.6 2.1 0 0 2.7-1 4.1.5 0 0 2.4 2.7-1 4.9l-2.4.2-2.4-1.1-2.6.7s.7 2.7-2.4 5.5z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M491 210.2s0 .7-.7.8c0 0-.8.3-1.3-.7v-.3c0-.4-.2-1.7 1.2-2.7 0 0 2.2-1.8 6.4.4A161 161 0 00509 214s2.6 1.3 6.6 1.5c0 0 5.5.4 7.8-3.5 0 0 1.8-2.9 0-4.8 0 0-.7-.8-1.9-.7-.4.1-1 .3-1.5 1 0 0-.9 1.2.1 2.1 0 0 1.3.8 1.8-.9 0 .2.4 1.5-.3 2.5 0 0-3.4 5-12.5-.1l-12-6.8s-6-3.1-9.7 1.8c0 0-2.9 4 .9 6.6 0 0 2.8 1.7 4.5-1 0 0 1.5-2.6-.8-3.7 0 0-2-1-2.8 1-.8 2 1.5 2.6 1.7 1.1 0 0 0-.3.2 0z"/>
+  <path fill="#e4cb5e" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M443.3 231v-7.6c0-.6 0-1 1-1.8.8-.7 1.8-1.9 3.1 1.4 0 0 2.7-2.9 3.6-3.3 0 0 1.6-1.3 2.7.6 0 0 1.4-2.2 2.5-2.7 0 0 2.7-1.7 2.8 3.5l2.1-2s1.7-1.3 3.5.6c0 0 3 3 3.4 3.8 0 0 .7.9.8 2.3 0 0 0 1.6.8 2.5 0 0 1 .9 1.9 1 0 0 2.1.1 3 2.2 0 0 .3-.4 1.4 9.4v18l-12.1 14.4-19.4-5.6-7.7-3.2-1.8-5.6 7.5-4.9 4-11-1.2-7.7-1.9-4.4z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".4" d="M496.7 240.4l1-1.3 2.1-1.7s3.4 8.8 3.5 10.7v2.7s5 1.3 6 9l-4.2 7.7-6.5-3.7-1.9-1.3v-22z"/>
+  <path fill="#fff" d="M435.2 300.8s.2-.3 0-.5l-.4.3s-1.3 1.4-.2 3.7c0 0 0 .3.3.2 0 0 .2 0 0-.3 0 0-1-2 .3-3.4z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".5" d="M454.8 299.3s.1-.7-.3-1.4c0 0-.3-.5-.2-1.2"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M459 221.1s0 1.9.6 3.3c.5 1.4 2.4 3.8 2.5 5"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M504.6 286.6s3 .1 4.6 1c1.6.7 2.8 1.5 4.6 2.7 0 0 .8 1.1 4.3.4 0 0 6.1-1.4 6.1 3.3 0 0 7.3.6 4.3 7 0 0-2 5-6.2 1.5 0 0 2.7 3.8-2.5 5.3 0 0-3.7 1-4.8-2.9 0 0-.6-1.5.9-3.3 0 0-1.8-.4-3-2.3 0 0 3.8 4.8-.4 6.6 0 0-5.3 1.3-5.6-4.2 0 0 .4-2.6-1.6-3.5 0 0-4.2-1-6.1-5.6 0 0 6-3.2 5.4-6z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M456.6 229.5l5 40.1m-3.8-40.2l5.6 37.4m-4.6-37.6l6.5 37.1"/>
+  <path fill="#784421" stroke="#000" stroke-width=".4" d="M469 263.1l1.8-.6-11.7-40.2h-.4z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M462.4 227.7l11.8 29.8m-12.6-29.3l11.4 31"/>
+  <path fill="#fff" d="M443 308.5s-1.4-1.3-1.2-3.6c0 0 0-.5-.2-.6 0 0-.3-.1-.3.5 0 0-.4 2.4 1.3 3.8 0 0 .1.2.3.1 0 0 .2 0 0-.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M463 227.3l12 27.2M459.7 229l7.5 36.6"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M520.5 256c-5.3-3-6.5-9.6-6.5-9.6a20.6 20.6 0 011.4-12c3.4-7.2 9.3-8.6 9.3-8.6s-5.8 4-7.4 9.4c0 0-1.2 4.6-.5 9 .7 4.6.4 3.4 1.5 6.9l2.2 5z"/>
+  <path fill="#784421" stroke="#000" stroke-width=".2" d="M497.6 239l-22.3 7.1-1.2 10c-5.3 7.7-16.1 9-16.1 9l8.4 9 16 3.3 8.5-6.5 7.7-7c-.8-3.8-.4-9.4-.4-9.4 0-1 .4-3.2.4-3.2s-1.3-9-1-12.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M474.4 253.6s14.7-4.6 23.5-8.3M467.3 262s18.4-3.3 31.3-10.7l4.7-3.2"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M503.3 250.8l-5 3.7s-20.6 9.4-36.3 9.7m36.2-3s-15.8 8.1-24.8 8.2"/>
+  <path fill="#d40000" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M517 238.4s4.7-2.1 7 0c0 0 3-1.9 6.4 0 0 0 3 2 5.2 4.3 0 0 1.5 1.3 1 5.4 0 0-.8 2.9-.3 4.3 0 0 1-.2 3 2.3 0 0 2.7 3 5 .3 0 0-.7 3.8-5 3.2 0 0 2 1.6.2 5.9 0 0-1.3 3 .8 6.8 0 0-3.8-1.5-3.6-6 0 0 .3-3-.8-5.1 0 0 1.1 1.9-1.5 6 0 0-2 3-.3 6 0 0-3.8-1.3-3.4-5.8.3-4.6 2.6-2.7 1.1-6.9 0 0-.3 2.2-1.4 3.3a6 6 0 00-2 5.9s-2.2-2.8-1.7-5.7 1-3.7 1-3.7l-7-4-3.5-6.3-.2-10.2z"/>
+  <path fill="#fff" stroke="#00247d" stroke-miterlimit="10" stroke-width=".5" d="M437.1 263.9s.7-3.1 3.6-2c0 0 1-5 6.5-5.2 5.4-.2 5.7 5.3 5.7 5.7 0 0 1.7-2.4 4.3-2.1 0 0 4.6-.3 3 7.1l.8 1s3.5-8.3 10.7-6.2c0 0 7 2.2 2.5 9 0 0 3.5 4.6 6.4 4.1 3-.4 5.6-1.3 8.5-6.5 3-5.2 9.8-6 11.5-5.7 1.7.3 3.1 1.5 3.4 2.7 0 0 3.6-12 16.6-10.2l5.2 2.7 2 .9-3 8.3-7.1 16.2-5.5 1.6-5.7-3.2-2 1-.1 4.9-7.5 5.4-5.2 2.1-5.7 4-1.4 3.5s-3.1-1.4-6.7 0l-1.2-3-3.4-3.1-13-6.2-2.3-7.6-2.4-1-2.7 3-3.8.5-5.8-4L437 264z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M493.8 204.9s-5-.2-4.8 5"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M526.4 259.6c-8.6-2.7-11-12-11-12a21.4 21.4 0 011.1-13c4-9.3 10.6-9.3 10.6-9.3a3.4 3.4 0 013.8 2.8c.3 2-1.1 2.7-1.1 2.7-2.3 1.3-3.8-.4-3.8-.4-1-1.3-.2-2.4-.2-2.4.6-.8 1.7-.4 1.7-.4 1 .2.8 1.4.8 1.4s.3-1.4-1-1.5c0 0-2.7-.6-5.7 3.2 0 0-4 5.1-4 11.8 0 0-.5 12.4 12.4 15.6 0 0-1.4 2-3.9 9.3 0 0-2.8 9.4-5.4 14.5 0 0-3.6 7.2-11.6 4.3 0 0-4.7-2.1-4.7-5.5 0 0-.3-3.2 2.5-3.4 0 0 2.8-.2 2.8 2.2 0 0 0 2.5-3 2 0 0-1-.3-.9-1.3 0 0 .2-1 1.5-.5s0 0 0-.1c0 0-.5-.2-1 0 0 0-.5.1-.5.9 0 0 0 .5.6.9l1.4.2s.8 1.6 2.6 2.2c2.5.7 4.6 0 5.9-1a9 9 0 002.5-3.6 95 95 0 004.4-11.3s1.5-4.8 2.8-7.3l.4-1z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M502 283.2s1.7-.2 1.7 1.2c0 0-.1 2-2.7 1.6 0 0-2.5-.5-1.6-3.3 0 0 .6-2 3-1.7 0 0 2.3 0 3.3 3.2 0 0 .8 2.7-.6 5-1.5 2.5-5.2 4.2-7 5 0 0-7.3 2.8-9.5 4.5 0 0-3.3 2.4-1.8 4.7 0 0 .6.9 1.4.9 0 0 1 0 1.1-1 0 0 0 .6-.6.9 0 0-.7.3-1.4-.3 0 0-.8-.8-.2-2 0 0 .9-1.4 3-.5 0 0 1.7.9 1 2.7 0 0-.7 1.8-2.8 1.7 0 0-1.6 0-2.7-1-1.6-1.8-1.7-5-.2-6.7 0 0 1.3-1.8 4-3l7.5-3c2.2-.9 4.1-1.9 5.4-3.4 0 0 1.1-1.2 1.5-3.4 0 0 .3-1.6-.7-2l-1-.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M502.2 283.2s1.8-.4 2.9 1.8c0 0 .6 1.3.7 2.1m.6-7.6s-1.8.3-.9 2.9c1 2.4 2.5 3.1 3 3.5"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M471.5 210.2s0 .7.8.8c0 0 .7.2 1.1-.7l.1-.3c0-.4.2-1.7-1.1-2.7 0 0-2.3-1.8-6.5.4 0 0-3.3 1.6-5.6 3 0 0-6 3.2-6.8 3.4 0 0-2.6 1.3-6.6 1.5 0 0-5.5.4-7.8-3.5 0 0-1.8-2.9 0-4.8 0 0 .7-.8 1.9-.7.5.1 1 .3 1.5 1 0 0 .9 1.2-.1 2.1 0 0-1.3.8-1.8-.9 0 .2-.3 1.4.4 2.5 0 0 3.3 5 12.4-.2l12-6.7s6-3.1 9.7 1.7c0 0 2.9 4-.8 6.7 0 0-2.8 1.7-4.6-1 0 0-1.4-2.6.8-3.7 0 0 2-1 2.9 1 .8 2-1.6 2.6-1.8 1.1 0 0 0-.3-.1 0zM442 256.1c5.3-3 6.5-9.7 6.5-9.7 1.2-6.7-1.4-12-1.4-12-3.4-7.2-9.3-8.6-9.3-8.6s5.8 4 7.4 9.4c0 0 1.3 4.6.5 9-.7 4.6-.4 3.4-1.5 6.9l-2.2 5z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M468.8 204.9s5-.2 4.7 5"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M436 259.6c8.7-2.7 11-12 11-12a21.4 21.4 0 00-1-13c-4-9.3-10.6-9.3-10.6-9.3a3.4 3.4 0 00-3.8 2.8c-.3 2 1.1 2.7 1.1 2.7 2.3 1.3 3.8-.4 3.8-.4 1-1.3.2-2.4.2-2.4-.6-.8-1.7-.4-1.7-.4-1 .2-.8 1.4-.8 1.4s-.3-1.4 1-1.5c0 0 2.7-.6 5.7 3.2 0 0 4 5.1 4 11.8 0 0 .5 12.4-12.4 15.6 0 0 1.4 2 3.9 9.3 0 0 2.8 9.4 5.5 14.5 0 0 3.5 7.2 11.5 4.3 0 0 4.7-2.1 4.7-5.5 0 0 .3-3.2-2.5-3.4 0 0-2.8-.2-2.8 2.2 0 0 0 2.5 3 2 0 0 1-.3.9-1.3 0 0-.2-1-1.5-.5s0 0 0-.1c0 0 .5-.2 1 0 0 0 .5.1.5.9 0 0 0 .5-.6.9l-1.3.2s-.8 1.6-2.7 2.2a6.3 6.3 0 01-5.9-1 9 9 0 01-2.5-3.6 95.2 95.2 0 01-4.4-11.3s-1.5-4.8-2.7-7.3l-.5-1z"/>
+  <path fill="#f5ce00" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M460.5 283.2s-1.6-.2-1.6 1.2c0 0 0 2 2.6 1.6 0 0 2.5-.5 1.6-3.3 0 0-.6-2-3-1.7 0 0-2.3 0-3.3 3.2 0 0-.8 2.7.6 5 1.5 2.5 5.2 4.2 7 5 0 0 7.3 2.8 9.5 4.5 0 0 3.3 2.4 1.8 4.7 0 0-.5.9-1.4.9 0 0-1 0-1.1-1 0 0 0 .6.6.9 0 0 .7.3 1.4-.3 0 0 .8-.8.2-2 0 0-.9-1.4-2.9-.5 0 0-1.8.9-1 2.7 0 0 .6 1.8 2.7 1.7 0 0 1.6 0 2.7-1 1.6-1.8 1.7-5 .3-6.7 0 0-1.4-1.8-4-3-1.6-.5-4.6-1.8-7.6-3-2.2-.9-4.1-1.9-5.4-3.4 0 0-1.1-1.2-1.5-3.4 0 0-.3-1.6.7-2l1-.2h.1z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M460.3 283.2s-1.8-.4-2.9 1.8c0 0-.6 1.3-.7 2.1m-.6-7.6s1.8.3.9 2.9c-1 2.4-2.5 3.1-3 3.5m23-76.4s4.3-2.7 8.7.3"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".4" d="M452.4 236s.6-2.5-2.2-6.7c0 0-1.8-3.9-2.7-6.3m6.2-2.7l2 5.5 2.4 5.7"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M454.4 238.6s1.7 1.8 1.5 4.7m-6.8-6.6s1.8.9 1.6 5.7c0 0-.1 3.4 2.5 5.2m-4.4 1.2s5.6-.6 6 2.9c0 0 0 3.3 2 3.6 0 0 2.8.3 3.4 3m-9.6-5.7s1 1.5 2 2.2m5.2-5.8s1.4 2.2 1.7 3.4M464 223s1.3 1.8 2.6 2.6m2.6 8s2.8 1.3 2.4 8.4c0 0-.4 4.1.8 6.4"/>
+  <path fill="#784421" stroke="#000" stroke-width=".4" d="M456 228.8l.3.7s5 .2 7.7-3.2l-.3-.7s-4.4-.2-7.6 3.2z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M474.1 255.6s17.3-5.1 24-8.1"/>
+  <path fill="#784421" stroke="#000" stroke-width=".2" d="M472.3 223.7l-.2-.5 8.5-3.3.2.6z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".4" d="M473 223.4l5.7 27.9m-4.7-28.2l6.5 27.7m-5.4-28.2l7.1 27.6m-4.3-28.6l9.7 20.6m-8.4-21l10.3 20.4m-9.4-20.9l11.2 20.4m-13 10.4l4.4-1.4m-7.7-1.3s12.8-3.8 22.6-7.7m-22.8 9s16.3-4.2 22.8-7.4m-17.8 20.7l.8 2.7 2.4-.8-.8-2.6m4.2-1.1l.8 2.6 2.3-.8-.8-2.6m-13.4-14.7l-.2-3.5 21.4-6.5 1.1 3m-13.4.7l1.1 3.2m6.3-5.4l1.4 3m.4-3.6l1.3 2.8m.4-3.3l1.3 3m0-3.4l2.4-1.3 1 2.6m-2.2-2l1.2 2.8"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".5" d="M444.6 276.2s-4.2-4.3 0-8.4c0 0-4.6-2.2-3.9-5.8m11.4 17.5s-4.4.6-3.1-7.8c0 0-1.8 3.3-2.4 5a3.9 3.9 0 001.7 4.5c.7.5 4.6 1.5 5.8-1m-6.9-13.6s-1.8 1.6-.5 4.6m2.3-4.2s.2 2.9 1.7 4.5m-.4-5.6s0 3.4 2.4 5.5m-1.2-6.7s0 3.8 2.8 6.2m11.3-.6s1.4-3.2 4.4-3c0 0-1.4.7-1.4 2.1 0 0-.2 2.5 2.4 2.7 0 0 2.1.3 3.2-.9"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".5" d="M472.8 284.6s-7.5-3.5-6.7-8.5c0 0 .3-3 3.3-4.5m-1.6 3.2s-.7 2.1.8 3.6m.9-5.1s-1 2.4.6 4.1m1.2-5.3s-1.1 2 .2 3.8m-7 9.2s4 3.6 7.2 3.6m-8.5-2.4s3.8 3 6.2 3.5m-7.6-2.7s4.7 4.1 7.6 4.4m11.5 3.8s-4.6 2.5-1 5.2m-2-7.9l7.6-3.8m-5.7 5.2s7.6-4.6 9.8-5.6m-5.9 6s6.5-4.4 10-6.3m-5.7 6s4.5-3.4 8.8-6m1.5-4.3s-2.2-3.2-9.4 0c0 0 2.7-2.4 7.9-4.3m7.2-13.7s.6 2.6 0 4.2"/>
+  <path fill="none" stroke="#00247d" stroke-miterlimit="10" stroke-width=".5" d="M492.4 278.4s1.5-2.2 5.3-3.3c0 0 1 2.5 4 2 0 0 4.4-.9 3-5.8 0 0-.9-3.6-6-4m15.2-6.1s5.1 1 5 5.1c0 0 .5 6.4-6.2 7.6m5.5-10.1s1.4-3.1 4.6-4.4m-3.8-1.8s1.4 2.3 2.3 2.6m-3-.8s1.3 1.7 1.7 2m-2.2-.4s.7 1 1.3 1.4m-28-25.9s1-1.6 3.6-1m10.2 13.3s1.6-6.6 7.1-4.2m-2.2-.5s.5-3-.8-4.6m-3 4.3s.7 1.3.1 2.3"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M517.3 311.4s6.2-2.8 4.3-7.7c0 0-.6-1.6-2-1.5 0 0-2.4.1-2 3.3 0 0 .8 3.2-.4 5.9z"/>
+  <path fill="#fff" d="M519.5 308.5s1.4-1.3 1.2-3.6c0 0-.1-.5.1-.6 0 0 .3-.1.3.5 0 0 .4 2.4-1.2 3.8 0 0-.1.2-.3.1 0 0-.2 0-.1-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M526.1 307s4.4-2.7 2-7.3c0 0-.7-1.3-2-1 0 0-2.7.8-.6 4.6 0 0 1 2.4.6 3.8z"/>
+  <path fill="#fff" d="M527.2 300.8s-.2-.3 0-.5l.3.3s1.3 1.4.3 3.7c0 0-.1.3-.4.2v-.3s1-2-.2-3.4z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M513 310.2s-4.9-1.2-4-6.3c0 0 .5-2.2 2.6-1.9 0 0 2.5.7.9 3.9 0 0-1 2.2.5 4.3z"/>
+  <path fill="#fff" d="M511.1 304.2s-.1-.3 0-.4c0 0 .3 0 .4.2 0 0 .5.8.1 2 0 0-.4.7-.2 1.5 0 0 0 .2-.2.3l-.2-.3s-.2-.7.2-1.5c0 0 .5-1.2 0-1.8z"/>
+  <path d="M516.5 300.7s2.8-1.6 5 .2c0 0-.2-1-2-1.4 0 0-.9-2.7-3.5-2.4 0 0 1 1.3 2.5 2.3 0 0-1.5.2-2 1.3zm2-7.3s2 1.4 2.7 2.3c0 0 .7-1 1.7-1.5 0 0-1.1-.2-1.7.3 0 0-1-.9-2.6-1.1z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".5" d="M507.7 299.3s-.2-.7.3-1.4c0 0 .3-.5.2-1.2m19.6-40.3s2.9-.2 3.4-2.5m5-1.5s-1 0-1.9 1c0 0-.7 1-1.7.8"/>
+  <path d="M523.5 247.8s1.5 0 2.3-.7c0 0 .9-.6 1.4.3 0 0 .8 1.4-.7 2 0 0-1.8 1 1.1 2.8 0 0-3.5-1.3-2-3 0 0 1.5-1 .9-1.4 0 0-.2-.4-.8 0-.6.5-1.8.3-2.2 0z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M525.5 211.2s.7-1 .4-3.7 2.2-3.1 3.1-2.3c0 0 1 .8 0 2.6a7 7 0 01-3.5 3.4z"/>
+  <path fill="#fff" d="M526.4 209.1s1-1 .5-3.1l.1-.2.3.1s.5 2.3-.5 3.5c0 0-.2.2-.4 0v-.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M524.8 210.2s-.1-1.2-2-3c-2-2-.4-3.7.8-3.7 0 0 1.2 0 1.7 1.9a7 7 0 01-.5 4.8z"/>
+  <path fill="#fff" d="M524.5 207.7s0-1.4-1.8-2.8v-.3h.3s1.9 1.5 1.9 3.2c0 0 0 .2-.2.2 0 0-.2 0-.2-.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M522.1 209.3s-.5-.9-2.9-1.8c-2.4-.8-1.8-2.9-.8-3.4 0 0 1.1-.4 2.2 1a6.4 6.4 0 011.5 4.2z"/>
+  <path fill="#fff" d="M521 207.6s-.5-1.2-2.7-1.8c0 0-.2 0-.2-.2 0 0 0-.2.3-.1 0 0 2.4.5 3.1 2l-.1.3s-.2 0-.3-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M523.6 210.2s-1.1.4-3.7-.9c-2.6-1.2-3.7 1-3.2 2 0 0 .4 1.3 2.4 1a7 7 0 004.5-2z"/>
+  <path fill="#fff" d="M517.6 211s1.2.8 3.3 0h.3s0 .2-.2.3c0 0-2.2 1-3.7.1 0 0-.2-.1 0-.3h.3z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M519.9 202.1s1.2.6 1 2.1"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".5" d="M525.5 202.3s.5 1.6 0 2.5"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M436.8 211.2s-.7-1-.4-3.7c.3-2.8-2.1-3.1-3-2.3 0 0-1 .8-.1 2.6a7 7 0 003.5 3.4z"/>
+  <path fill="#fff" d="M435.9 209.1s-.9-1-.5-3.1v-.2l-.4.1s-.4 2.3.6 3.5c0 0 .2.2.3 0v-.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M437.6 210.2s0-1.2 2-3c2-2 .4-3.7-.8-3.7 0 0-1.3 0-1.7 1.9a7 7 0 00.5 4.8z"/>
+  <path fill="#fff" d="M437.9 207.7s0-1.4 1.7-2.8c0 0 .2-.2 0-.3 0 0 0-.1-.2 0 0 0-2 1.5-2 3.2 0 0 0 .2.3.2 0 0 .2 0 .2-.3z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M440.2 209.3s.5-.9 3-1.8c2.3-.8 1.7-2.9.7-3.4 0 0-1-.4-2.2 1a6.4 6.4 0 00-1.5 4.2z"/>
+  <path fill="#fff" d="M441.3 207.6s.5-1.2 2.7-1.8c0 0 .2 0 .2-.2 0 0 0-.2-.2-.1 0 0-2.4.5-3.1 2v.3s.3 0 .4-.2z"/>
+  <path fill="#64b4d1" stroke="#00247d" stroke-miterlimit="2.6" stroke-width=".4" d="M438.7 210.2s1.2.4 3.7-.9c2.6-1.2 3.7 1 3.3 2 0 0-.5 1.3-2.5 1a7 7 0 01-4.5-2z"/>
+  <path fill="#fff" d="M444.7 211s-1.1.8-3.3 0h-.2v.3s2.4 1 3.8.1c0 0 .2-.1 0-.3h-.3z"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="2.6" stroke-width=".5" d="M442.5 202.1s-1.3.6-1 2.1"/>
+  <path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".5" d="M436.8 202.3s-.5 1.6 0 2.5"/>
+  <path d="M492.6 187.7s.8 2.3.5 4.4c-.3 2 .1 2.4.8 2.8.6.3 2-.3 2.1-1.8 0 0 1.6 3.2-1.5 5.3 0 0-2.3 1.4-4.2-.4-.7-.7-1-2.5-.6-4.2 0 0 .5-2.2-.4-4.6 0 0 1.3 1.4 1 4.1 0 0-.7 5 3 4.7 0 0 2.5 0 2.6-3 0 0-1 1-2.1.7a2 2 0 01-1.5-2.4c.1-1.3.5-3.6.3-5.6zm-4 8s-.3 4-3.8 4.9c0 0 .5-.7-.3-2.7 0 0-.8-1-.8-2.8 0 0-1 .9.2 3.2.8 1.4.1 3-.1 3.1-.3.1 5.8-.8 4.7-5.6zm-4.7-3.8s-.9-1-1-3.2c0-2.2-.4-2.8-.7-3 0 0 .4 1.9.3 3 0 1.3.1 2 .3 2.5 0 0-2 .3-3.2-2.5-1.1-2.7-2.3-2.5-2.9-2.5 0 0 .7.1 2 2.6 1.4 2.4 1.8 3 5.2 3zm-9-5.8s1 2.6 1.1 4c0 0-2.6-.8-3.3-3 0 0-2.7.9-1.7 4 0 0-2.4-.8-3.5-2.7 0 0 1.3 1 2.6 1.4 0 0-.2-2.6 3-3.5 0 0 .5 2.3 2.2 2.8l-.4-3zm4.2-4.6s1 1.3 2.8 1.3a3 3 0 002.7-1.3s-.1 2.2-2.7 2.3c0 0-2.8 0-2.8-2.3zM467.8 197l1.7 1.6s1 1 1.7-.2c0 0 1.1-2 2.4-1.9 0 0-1 .6-2 2.5 0 0-.2.6-1 .7-.4 0-.8.2-1.5-.6 0 0-.6-.7-1.3-2zm14-24.6c-2.7 0-.4 2-.4 2 0 3.4-2.6 4.5-4.4 3.5-1.9-1-.4-3.4-.4-3.4s-2 1.3-.8 3.3c1.3 2 4.8 1 6-.7 1.3 1.8 4.8 2.7 6 .7 1.4-2-.7-3.3-.7-3.3s1.5 2.4-.4 3.4c-1.8 1-4.5 0-4.4-3.4 0 0 2.3-2.1-.4-2.1zm1.7-3.7s1 1.7.8 4.1c0 0 .8-2.4-.8-4zm-8.4 3.9s-.2-1.8-2-2c0 0 1.6 1.1 2 2zm13.5 0s.2-1.8 2-2c0 0-1.5 1.1-2 2zm-16.2 2.7s1.4.4 2.2-.6l-2.2.6zm-4.5-11s1.6-.1 3.2 2.3c0 0-1.6.8-2 1.3 0 0 0-.8.8-1.4 0 0-.3-1.2-2-2.1zm26.8 0s-1.6-.1-3.2 2.3c0 0 1.6.8 2 1.3 0 0 0-.8-.8-1.4 0 0 .3-1.2 2-2.1zm-12.3 1.9s1.4.4 3.2-.6c0 0 2.2-1.2 3.6 0 0 0-1.2-.6-3.6.6 0 0-2.3 1.3-3.2 0z"/>
+  <path fill="#fff" d="M483.9 167.6s1.2-2.1 5-1.7c0 0-1 3-5 1.7z"/>
+  <ellipse cx="486.4" cy="166.9" fill="#784421" rx=".7" ry=".9"/>
+  <ellipse cx="486.4" cy="166.9" rx=".4" ry=".6"/>
+  <path d="M475.9 163s2.3.2 3.8 1c0 0 1.5 1 3.2-.3 0 0 1.9-1.1 3.1-2.6 0 0-2.9 2-4 2.3 0 0-1-.8-1.3-1.9 0 0 .1-.8 1.7-2.3 0 0-2.1.7-2.5 2.4a6 6 0 001.2 2s-.4.2-1.4-.5c0 0-2.3-.7-3.8 0zm6 14.2c-2 1.8 0 1.6 0 1.6s2 .2 0-1.6zm-1.2-11s-1.5.4-3.3-.6c0 0-2.2-1.2-3.6 0 0 0 1.2-.6 3.6.6 0 0 2.4 1.3 3.3 0z"/>
+  <path fill="#fff" d="M479.2 167.6s-1.2-2.1-5-1.7c0 0 1 3 5 1.7z"/>
+  <ellipse cx="476.6" cy="166.9" fill="#784421" rx=".7" ry=".9"/>
+  <ellipse cx="476.6" cy="166.9" rx=".4" ry=".6"/>
+  <path fill="none" stroke="#000" stroke-width="1.3" d="M554 148.3v135.5c0 36.2-72.3 48-72.3 48s-72.4-11.8-72.4-48V148.3h144.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bn.svg
new file mode 100644
index 0000000..ab6678f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bn.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bn" viewBox="0 0 640 480">
+  <path fill="#f7e017" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 33.3v213.4l640 100V233.3z"/>
+  <path d="M0 146.7v100l640 200v-100z"/>
+  <g fill="#cf1126" transform="translate(-160) scale(.66667)">
+    <path d="M695.7 569.7a117.2 117.2 0 01-49.4-17.2c-2.4-1.6-4.6-3-5-3-.4 0-.6 1.9-.6 4.1 0 6.4-2.6 9.6-9 11.3-6.2 1.6-15.6-1.6-23.2-8a68.3 68.3 0 00-24.7-13.5 39.9 39.9 0 00-28 3.6 8.7 8.7 0 01-2.8 1.3c-1.1 0-1-6.9.2-9 1.5-3 5.1-5.8 9.4-7.3 2.2-.8 4-1.8 4-2.3 0-.4-.8-2-1.7-3.6-2.9-5.1-1.7-10 3.4-13.9 5.2-4 14-4.6 21.7-1.7a32 32 0 004 1.4c1 0 .4-1.5-2.4-5.6-3.2-4.7-3.9-7-3.5-12.7a14.7 14.7 0 0113.5-13.5c5.8-.4 9.4 1.6 18 9.7a144 144 0 0086 41.6c8.3 1 24.8.5 34.5-1a156 156 0 0081.8-40.8c6.4-6 9.4-7.6 14.7-7.6 4.5 0 7.7 1.4 11 5 3 3.3 4 6.4 3.6 11.5-.2 3.2-.7 4.7-2.6 7.9-2.8 4.5-2.3 5 3.2 2.8 7.6-3 16.9-1.6 21.9 3.2 4.4 4.2 4.8 8.4 1.4 14-1.3 2.1-2.3 4-2.3 4.4 0 .6 1 .8 5.5 1.6 6 1 9.5 5.4 9.5 12.2 0 2-.3 3.7-.6 3.7s-2.6-.9-5-1.9c-7-2.9-11-3.6-19.2-3.5-6.2 0-8.3.3-12.6 1.7a57.5 57.5 0 00-19.5 11.5c-6.4 5.7-10.4 7.5-16.6 7.4-5.8 0-9.7-1.7-11.8-5-1.1-1.8-1.3-2.8-1-6.8.2-2.6.1-4.7 0-4.7-.3 0-2.5 1.4-5 3.1A80.5 80.5 0 01778 560a181.6 181.6 0 01-82.3 9.7z"/>
+    <path d="M706.3 525.2a136.4 136.4 0 01-97.9-55.7c-24.4-33.2-32-77.1-24.6-117.2 4-18.3 12-36.6 25.5-49.6a114.6 114.6 0 00-8.7 74.3c9 49.8 51 91.9 101.3 99.2 20 5.7 40.5-.4 59.5-6.5 42-14.8 74-54.6 77.8-99.1 3.3-24-.3-49.1-11.2-71 6.2 3.3 14 16.2 18.6 24.8 16 31 16.7 68.1 7.3 101.2-12.8 42.1-45 79-87.5 92.4a165.7 165.7 0 01-60 7.2z"/>
+    <g id="a">
+      <path d="M512 469.9c-2.5-.4-5.3 2.1-4.3 4.7 1.8 2.6 5 4 7.8 5.2a54.2 54.2 0 0023.2 3.6 49.6 49.6 0 0017-3c3-1 6.8-2 8-5.4 1.3-2.1-1-4.3-3.1-3.9-3 .7-6 2-9 2.9a57.7 57.7 0 01-20.3 2 54 54 0 01-14.4-4.2c-1.6-.7-3.1-1.7-4.9-1.9z"/>
+      <path d="M514.8 459.5c-2.5-.4-4.7 2.6-3.7 5 2 2.8 5.3 4.3 8.4 5.6a42.4 42.4 0 0017 2.9h1.5a37.6 37.6 0 0014.4-2.8c2.7-1.1 6.1-2.2 7.3-5.2.9-1.7.2-4.1-2-4.3-1.8 0-3.5 1.2-5.3 1.7a44.3 44.3 0 01-20.6 3.2c-4.4-.5-8.5-2.1-12.5-4-1.5-.7-2.8-1.8-4.5-2z"/>
+      <path d="M518.3 449.6c-2.2-.3-3.7 2.2-3.3 4.1.3 1.8 1.8 3 3.1 4a30 30 0 0018.6 5.3h1.6a28 28 0 0012-2.8c2.5-1 5.4-2.3 6.3-5.2.4-1.3.6-3.2-.9-4-1.6-.8-3.1.5-4.5 1a34 34 0 01-15.5 3.9 27 27 0 01-13.1-4c-1.5-.7-2.7-2-4.3-2.3z"/>
+      <path d="M481.5 302.7c-3.2 3.3-.7 9.3-1 13.5 1.8 13.2 3.9 26.5 8.8 39 6 12 18.8 18.5 26.5 29.2 2.8 5.1 1.8 11.3 2.4 17 .4 15.3.3 30.7 0 46 7 3.6 14.5 7 22.5 5.7 4.7-1.1 13.5-1.8 14.5-6.5l-1-79.5c-2.7-8.1-11-12.3-17.1-17.5a155.5 155.5 0 01-14.2-16.1c-2.6-4.5-12.9-6-9.2 1.6 2.2 6.7 7.7 11.6 9.1 18.6.3 3.9 5 11 1 13.2a24.5 24.5 0 00-10.7-10c-4.4-3.3-11.7-4.7-13.3-10.5a42.9 42.9 0 00-11-22c1.5-7.4 0-16.7-6.4-21.5l-.9-.2z"/>
+      <path d="M491.4 304.2c-3 .5-2.8 4.2-1.5 6.2a27.2 27.2 0 011.1 13.4 44.1 44.1 0 0110.6 21.7c0 3 3.2 4 5.3 5.5 4.9 3.1 10.3 5.4 14.7 9.3.9 1 1.6 2 1 0-.7-2.6-1-5.4-3-7.3-2.8-3-6.2-5.6-10.2-6.4-.3-4.2-2.3-8-4.1-11.6-2-3.5-4.1-7.2-7.5-9.4 0-6.1 0-12.5-2.6-18.2-.8-1.4-2-3.1-3.8-3.2z"/>
+      <path d="M499.7 306.6c-2 .6-1.6 3.2-1 4.7a54 54 0 011 13.2c3.9 3 6.2 7.4 8.4 11.6 1.4 2.8 2.6 5.8 3.1 8.9 3.1 1 5.8 3 8.2 5-1-2.8-3-5-4.5-7.7s-3-5.6-3.7-8.7c-3-3.1-4.6-7.6-4-12 .2-4.7-1.3-9.6-4.5-13.2-.8-.8-1.8-1.7-3-1.8z"/>
+      <path d="M509.2 308c-1.2.2-1.8 1.2-2.4 2.1-.3.9.8 1.8 1 2.8a21.8 21.8 0 011.4 10.4c-.1 2.5.8 5 2 7a3.9 3.9 0 013.5-2.8c.5 0 1.4.2 1-.7-.4-4.8-1.1-9.6-2.8-14a9.6 9.6 0 00-2.8-4.5c-.2-.2-.6-.4-1-.3z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 1440 0)" xlink:href="#a"/>
+    <path d="M715.7 476a35.6 35.6 0 01-29.9-24c.3-2.2 3 1.2 4.3 1.5a19 19 0 008 2.6c3.5 1.5 5.7 5 9.1 6.9 1.6 1.2 7.2 3.6 6.1-.3-1.3-2-2.2-4.6-1-7 1.8-4.1 4.7-7.7 7.7-11.2 2.1-.7 3.6 3.6 5.1 5 2.1 3.3 4.7 7.3 3.4 11.3-1.2 1.5-2 6 1.3 4.6 4-1.8 7.3-4.8 10.6-7.6 3-2 6.7-2.1 9.7-4 1.5-.3 4.4-3.1 5-1.6a44.9 44.9 0 01-7.4 12.3 32.1 32.1 0 01-18.8 10.9c-4.4.8-8.8 1-13.2.6z"/>
+    <path d="M731.5 460.2c.3-2.7-.3-5.4-1.7-8-2.1-4.2-5-8-8-11.9-2.8-1.6-4.3 3.7-6.1 5.2-2.9 4.3-6.5 8.7-6.7 14-1.6 2.5-4.6-2-5.9-3.5a19 19 0 01-4-12 50.8 50.8 0 013.6-20.6c2-5.6 5.1-11 4.8-17 .2-4.7-.7-9.7-4.4-12.8-3.6-2.8 2.3-3.4 4.1-2 3.2.3 4.9 5.5 7.8 4.2 1.1-2.7 1.4-6 3.8-8.1 2.3-3.2 4.7 1.3 5.5 3.5 1.7 1.8 0 6.5 2.6 6.6 3.2-2.3 5.5-6 9.6-6.9 1.7-1 4.5 0 2.3 1.8-3 2.9-5.6 6.4-6.2 10.7-.9 5.3.4 10.7 2.7 15.4 4.5 9.4 8 20 5.7 30.5-1 4.6-4.2 8.6-8 11.3-.5.3-1.3.3-1.5-.4z"/>
+    <path d="M726.7 389.6a21.2 21.2 0 00-5.6-7c-2.4 0-3.9 3-5.5 4.6-1.1 2.1-2.5 5.6-5.3 2.9-4.5-2.6-5.2-8.3-5.2-13-.3-7.6 2.8-14.7 5.5-21.6 1.7-4.3 1.3-9.2.2-13.6-1.3-5-5.4-8.6-8.5-12.6.2-1.5 4.2-.7 5.7-.4 3.4.9 5.4 3.8 7.9 6 1.8-.6 1-4.2 1.9-5.9 0-2.4 3.2-5.5 4.5-2.1 2 2.2 0 6.5 2.5 7.8 2.4-.9 3.6-3.5 5.8-4.7a8 8 0 017.8-.5c.9 2.2-2.6 4-3.6 6a20.4 20.4 0 00-3.8 18c1.4 5 3.8 9.5 4.7 14.5a40.1 40.1 0 01-.5 17.2c-.9 3.4-3.8 5.6-6.8 7-.8-.7-1.2-1.7-1.7-2.6z"/>
+    <path d="M711.6 326.9c-3.4-2.5-4.5-4.8-4.5-9.5 0-2.3.5-3.6 2-5.8 2.4-3.2 2-4.2-1.3-3.3-5.3 1.5-7.8.2-8-4.3 0-2.2.4-3.1 3.3-6.7 2.4-2.8 3.3-4.3 2.8-4.8-.5-.4-3.3 2-9 7.8a124 124 0 01-11.4 10.6c-9.8 6.6-19.2 7.6-23.5 2.5-2.2-2.6-2.1-4 .4-5.6a27.4 27.4 0 004.4-3.7 86 86 0 0116.1-11.6c3.6-1.8 4.4-3 2.1-3-3 0-12.5 6.2-19.8 12.8-2.1 2-5.2 4.2-6.8 5a25.4 25.4 0 01-13.9 1c-2.2-.7-6.3-4.5-6.3-5.9 0-.3 1-1.1 2-1.8a30 30 0 004.6-3.2c5.8-5 16.8-10.3 25.5-12.2 2.8-.5 1.7-2-1.4-1.8a56 56 0 00-25 11.7c-8.3 6.9-20.8 6.2-24.8-1.3-.7-1.3-1.2-2.5-1-2.7a92.8 92.8 0 0020.4-7.8 51.5 51.5 0 0118.1-6.5c2.8-.5 3-1.9.3-2.2-3.6-.4-9 1.4-18.5 6-12.3 6.1-15.8 7.2-22.2 6.8-6-.4-9.3-1.9-14-6.4-3.2-3-7.6-10.5-6.8-11.4a63.5 63.5 0 0015.8 1.3c8.3 0 10.6-.2 15-1.5a84.3 84.3 0 0024-12.1 57.5 57.5 0 0136.8-13.6c12.4 0 20.2 2.8 27.2 9.9 2.4 2.4 4.4 3.9 4.7 3.6.3-.3.6-4.5.7-9.3 0 0 3.7-.4 4.5.7 0 7.7 0 8.4 1.2 8.4.7 0 1.5-.8 2-2 1-2.5 5-6 9.2-8.2 9-4.5 24.7-4.7 37.3-.3a62.4 62.4 0 0116.7 9.5 90.2 90.2 0 0024 12c6.8 2 19 2.5 25.1 1a61.9 61.9 0 015.4-1c2.3 0-1.6 7.6-6.2 12.1-8.4 8.2-19.3 8.1-34.6-.1-9.6-5.2-21-8-21-5.2 0 .6.6 1 1.5 1 3.3 0 9.7 2.2 18.7 6.5a53.7 53.7 0 0018.3 6.5c2.3 0 2.4 1.5.2 4.7-2.3 3.4-6.2 5-11.7 5-5.3 0-8.3-1.1-13-5-8-6.6-27.6-14-26.9-10 .2.7 1.1 1.2 3.2 1.5a56 56 0 0123.1 11l5.9 4.3c1.1.6 1.1.8.2 2.5-1.4 2.8-5.2 4.9-9.2 5.3-5.2.6-9.8-1-14.5-5-10-8.3-19.3-14.3-22.3-14.3-2.5 0-1.4 1.4 3 3.7a79.7 79.7 0 0115.8 11c2 1.9 4.3 3.7 5 4.1 1.9 1 1.8 2.4-.2 5s-5.4 3.8-9.7 3.3c-8.6-.9-15.4-5-26-16a70.7 70.7 0 00-8.2-7.8c-1.4 0-.5 1.9 2.2 5 3.4 3.7 4 5.8 2.7 9-1.1 2.6-3 3.3-6.8 2.2-4-1-4.6 0-2 3.1 3.8 4.9 3.3 10.7-1.5 14.8a12 12 0 01-3.4 2.3c-.4 0-1.4-1-2.3-2.4-3-4.6-5.7-4.6-8.7 0a53.6 53.6 0 01-2 3 113.1 113.1 0 01-3-2.2z"/>
+    <path d="M726.7 233l-5.2 4-4.6-3.4v27.8h9.8z"/>
+    <path d="M694.9 204.3a88.3 88.3 0 01-9 32.3l11.1-10.3 7.7 9.2 8.4-9.4 8.5 8 8.2-8.3 8.5 10 7.4-8.2 12.6 9c-4.6-10-10.7-18.6-10-32.8-12.1 9-41 10.6-53.4.4z"/>
+    <path d="M717 197.6c-4.5 0-9.2.1-13.4 1a20.1 20.1 0 00-7.8 3c.3 8.6 41 12.1 51.9.2a20 20 0 00-8.2-3.3c-4-.8-8.6-.8-12.9-1v7.1H717v-7z"/>
+    <path d="M724.9 154h-6.3v49.4h6.4z"/>
+    <path d="M724.9 155.2l-2.4 23.7 24.3 11.9-12.3-16.5 16.8-5.5zm-2.7-6.1c-3.7 0-6.4 1.4-6.4 3s2.7 3 6.4 3 6.4-1.4 6.4-3-2.7-3-6.4-3z"/>
+  </g>
+  <g fill="#f7e017">
+    <path d="M314 375.9c2.7-.9 4.2-2.5 5.3-5.6.5-1.6.9-3.2.8-3.6-.2-1-1.4-1-2.6.1-.9.7-1 1.1-.8 2.6.7 3.7-.7 4.7-7.7 5.4-.7 0-2.8 0-4.5-.3-3.4-.4-4.6 0-3.4 1a7 7 0 002.1.9c1.9.5 8.8.2 10.8-.5zm14.7-.6c.4-.4 1.7-1 3-1.5 1.7-.5 2.6-1 3.3-2.2 2.1-3 1.7-5.7-1.3-9.3-1.7-2-2.4-1.9-3.7.3-1.2 1.8-1.1 2 .5 2.4.9.2 1.7.8 2.1 1.6 1.8 3.1 1.3 5-1.4 5-2.4 0-3 .4-3.7 2l-.6 1.9c0 .6 1 .5 1.8-.2zm-4.8-3.5c.4-1.3.6-3.5.5-8a33 33 0 00-.3-6.4c-.4-.4-2.3.8-2.6 1.7a3 3 0 00.5 2.1c.6 1.2.7 2.4.5 7-.3 6 .1 7 1.4 3.6z"/>
+    <path d="M312.6 369l.7-5c.1-1.7.5-3.8.7-4.7.7-2.3 0-2.9-1.8-1.6l-1.3 1 .2 3.3c.3 3-.2 8.5-.9 10.7-.2.6.1.4.9-.5.6-.7 1.3-2.2 1.5-3.3zm-10 1.6c2.4-2 2.1-5.6 2.7-8.4 0-1.9 1.2-4.1.4-5.8-2.3.4-3.7 2.6-2.5 4.7 0 2.5 0 5.2-1.3 7.4-1 1.5-4.4 1.1-4.2-1 .8-3-2.9-1.5-4.3-.7-1.1.8-3.5.9-2.6-1-.6-2.7-3.9-1-5.7-1-1.7 0-.1-3.5-2.6-3-4.5-.3-9.5.1-13.5-2.6-2.3-1.1-2-3.9-.7-5.7 1.4-2.4 1.8-5.5 4-7.4 2.3-2.1-2-1.2-3-.5-2.2 1.2-.2 4.3-2 6-1 1.8-2.4 4.2-4.8 3.9-3.5-.7-5.5-4-8-6-2.2-.5-1 3.4.2 4.2a21.9 21.9 0 007.4 3.6c2.6-.5 2.7 3 5 3.5 4 2 8.6 2.5 13.1 2.8 1.8.1.8 3.3 3.1 2.6 1.3.4 4.3-.5 4.4 1-2 2.4 1.9 2.3 3.3 2 1.9-.4 4.2-1 4.7 1.4 1.5 1.7 4.3 1.4 6.2.5l.7-.5z"/>
+    <path d="M262.8 350.4a23.9 23.9 0 002.4-4.2 16 16 0 012-3.6c1.2-1.2.5-2-1.4-1.6-1 .2-1.4.6-1.5 1.5a23 23 0 01-2.5 7c-1.7 2.5-1.7 2.6-1 2.6.3 0 1.2-.8 2-1.7zm-25-15.7c-1.9 0-2 1.2-.2 1.8 1 .3 1.7 1 2.3 2.3 1.7 3.5 2.8 4.2 7.5 4.6l3 .2.2 1.9c0 1 .3 1.8.5 1.8l2.6-1c2.2-1.2 4.3-3.8 4.3-5.5 0-1-1.8-2.2-3.4-2.2-.7 0-2 .6-3.1 1.4-3.4 2.4-7 2-9-1.2-1.5-2.6-3.2-4-4.7-4zm16.3 6.5c.9 0 1 .7.6 2a.9.9 0 01-1.7 0c-.4-1 .1-2 1-2zm126.5-4c-1.3 0-1.6.2-2.4 1.4-1.3 1.9-1.4 6-.2 7.4.7.9.8.9 2.3.2 2.2-.9 2.6-.8 2.5.3 0 3-4.2 8.7-8.6 11.7a9.7 9.7 0 00-2.4 2c-.3.8 1.3.7 3.3-.4a21 21 0 007.9-8c1.1-2.3 1.3-3 1.5-7 0-3.8 0-5-.6-6.2-.8-1.4-1-1.5-2.8-1.5h-.5zm.1 2.5c1 0 1 .2 1.2 1.6 0 1-.1 1.7-.7 2.3-.8.7-1 .7-1.6-.4-1-1.6-.4-3.5 1.1-3.5zm-20.2 28.5c3.9-2 6.2-4.1 7.6-7.2a20 20 0 001.3-3.1c0-.6-1.9-1.5-3-1.5s-1.4-.8-1-3c.5-2.1 0-4.8-1-4.8-.3 0-1 .5-1.3 1.1-.6 1-.7 1.4-.2 2.7.7 2 .1 3.6-1.7 4.9-.9.6-1.3 1.3-1.3 2l.1 1 2.1-1 2-1.2 1.1 1c.7.4 1.2 1.2 1.2 1.7 0 2.4-6.8 6.4-11.4 6.8-2.5.2-3 0-3.8-.8-.7-.7-.9-1.3-.7-2l.5-2.6c.4-2.1-.4-1.8-2 .6-1.2 2-1.6 4.1-.9 5.2.6 1 4.4 1.8 7.2 1.6 1.7 0 3.4-.5 5.2-1.4zm26-14.5c2.4-2.5 3.5-5.5 3.5-10v-3.5l2-1c2.7-1.2 5.2-3.7 5.2-5.1 0-1.4-.7-1.4-1.8.2-.9 1.1-2 1.8-6 3.7-1 .4-1.1.7-1.4 5-.2 5-1 6.8-3.7 10.2-1.7 2-1.8 2.4-.6 2.4.5 0 1.8-.9 2.8-2zm-26.7-2.8c.2-.7-1.2-1.2-1.7-.6-.3.2-.4.6-.2.9.4.6 1.6.4 1.9-.3zm36.8-9.5c.3-.8-1.1-1.3-1.7-.7-.2.3-.3.7-.1 1 .4.6 1.6.4 1.8-.3zm-44.3-25.9c-1 .5-1.5 1.5-2.1 2.3-.5.3-.1.6.1 1 1.7 1.7 2.4 4.2 3.2 6.5.8 2.7 1.8 5.6 1 8.4-.3 1-1.2 2.1-2.4 1.8-2-.1-4-.7-6-.7-1.9.1-3.3 1.8-5.1 1.6-1.2 0-1.2-2.4-2.2-1.7-.6 1.3-.3 2.7-.4 4 .2.3.8.1 1.1.2h3.7c.2 1.2.2 2.7 1 3.7 1.3.4 2.8 0 4-.5 1.2-.6 1.4-2.1 1.8-3.3.4-1.3 2-1 3-1.5a5.7 5.7 0 004-5.7c-.2-3.9-1.6-7.4-2.8-11-.5-1.6-.9-3.3-1.5-4.9l-.4-.2zm-6 21.8c1.3 0 1.9 1.6 1.6 2.7-.5 1.5-2.4.6-2.7-.5-.7-1-.3-2.3 1-2.2z"/>
+    <path d="M296 324.8c-.6 0-1.3.2-2 .7-3.5 2.5-4.5 5.4-2 6.6 1.7.8 1.3 1.8-1.5 3.2-4 2-7.5 1.7-14.2-1-1.6-.7-2-.4-1.7 1 .4 1.5 1.8 2.3 5.1 3 3.6 1 8 .7 10.8-.5a14 14 0 004.3-3.4l2.2-2.3 2.5.3c3.1.4 3.2.4 3.2 1.9 0 1.2 0 1.2 2.9 1.5l4.7.2c1.3 0 2 .3 2.4.9.6.7.9.8 5.6.4 4.4-.4 5.2-.4 7.2.3 1.4.4 3 .6 4.1.5 3.4-.4 8-3.1 8.7-5.1 0-.3 1.3-.7 2.7-1 3.4-.7 3.5-1.4.4-1.8a22.9 22.9 0 01-4.6-1.1 12.2 12.2 0 00-3.5-.9c-1.7 0-3.3 1-3.3 2.2 0 .7.2.8 2.3.6 1.8-.2 2.4-.1 3.4.7.7.5 1.1 1.1 1 1.3-.5.8-4.5 2.6-6.2 2.9a4.7 4.7 0 01-3-.5c-1.6-.8-3.8-.9-4.3-.2-.2.3-.6.1-1.3-.5l-1-1-2.4 1c-2.4 1-3.3 1-3.3-.2 0-.5-.7-.6-4.2-.3-3.9.2-4.3.1-5-.7-.7-.7-.7-1-.2-1.7.4-.8.4-1 0-1.5-.4-.4-1-.4-2.5 0-3.9 1-5 .5-5-2.5 0-1.9-1-3-2.3-3zm-1 2.8c.2 0 .4.1.7.4.3.3.5 1 .3 1.3-.3.9-2 .9-2.3 0-.2-.5 0-1 .5-1.3l.8-.4z"/>
+    <path d="M288 330.4c2.4-1.5 2.4-1.4 2.7-5.5.2-3 .2-3.2-.6-3.2-1.2 0-1.8 1.3-1.8 3.7 0 1.6-.2 2.3-1 3-2 2-6.8 1.1-7.5-1.3-.2-.8.1-1.6 1.1-3 2.1-3 1.7-3.8-1-1.5-1.7 1.6-2 1.6-1.7.3.3-1.3-.3-1.8-1.8-1.4-.7.2-1.2.6-1.3 1.6-.2.8-.6 1.3-1.3 1.5-1.2.3-3.2-.8-3.2-1.8 0-.7 3-4.4 6.9-8.4 1.4-1.5 2.6-3 2.6-3.1 0-.2-.8-.4-1.7-.4-1.4 0-1.8.2-1.8.8 0 .4-1.9 3-4.3 5.7-5 5.6-5.4 6.7-3 8.2a6 6 0 006.6-.2l1.6-1.1v2c0 2.5.5 3.5 2.5 4.5a8 8 0 008-.4zm104.4-34.6c-1.8 1.1-.4 3.4 0 5-.8 2-3.5 2.6-5.5 3-2.8.5-4.8 2.8-5.8 5.3-.6 1.6-2 4-3.5 1.6-1.3-1.3-3.7-2.4-5.2-.8-1.2 1.1-1.5 2.7-2 4.2-.7-1.1-1-2.8-2.4-3.2-2.4.3-1.5 3.3-.4 4.5 1 1.5 2 3.3 1 5-1 2-4 3.4-5.7 1.7-1.6-.9-.5-4-2.2-4.2-.8.6-.8 3.9-2.1 2.1-1-1.5-.4-3.6-1.6-4.9-1.3.2-2.4 2.5-2 3.7 1.8 2.4 2.6 5.4 3.3 8.3.4 1.2-.1 3.5 1 4 .7-1.9 0-4 .6-5.9 1.8-.2 3.7.6 5.5.2 2.7-.3 4.7-2.6 5.6-4.9.3-1.8 0-3.6-.1-5.4 2 .4 4.2.4 6.2 1 1 1.5-.3 3.7-.6 5.3-1 3.4-3.7 5.8-6.2 8-1.1.7-1.2 2.4.3 1.5a15 15 0 007.5-8c1.1-2.6.2-5.5 1-8.1 1-2 3.5-1.6 5.4-1.6 1.9 0 3.5-2.3 2.9-4.2-.6-2.2 1.7-3.2 3.2-4 2.1-1 3.7-3.1 3.5-5.5 0-1.3 0-3.6-1.7-3.7zm-7.3 12.5c2.2.6-.4 4.8-1.6 2.1-.4-1 .5-2.1 1.6-2.1zm-10.3 3c2.9-.1 1.8 4-.6 2.2-1.3-.7-.9-2.2.6-2.2zM270 327.6c0-.4-.2-.7-.6-.7-.7 0-1.2.7-.9 1.3.4.7 1.3.3 1.5-.6zm34-3.6c0-.7-.3-.9-.8-.8-1.1.2-1.3 1.7-.1 1.7.6 0 .9-.3.9-1zm-42-20.4c-1.3-.3-2.2.9-2.7 2-1 1.7-2.2 3.4-4 4.3-1.3.4-2.7-.1-3.9-.8-1.3-.7-1-2.3-1.6-3.4-1-.8-2.7.3-2.6 1.5-.1 1.6 1.3 2.5 2.6 3.1 1 .7 2.6 1 3 2.3 0 1.1.4 2.4 1.7 2 1.5 0 2 1.8 1.3 2.9a6.3 6.3 0 00-.7 4c.7.7 1.4-1 2-1.4l1-1.4c2.7.1 5.3.5 8 .4 2 0 3.5-1.2 4.7-2.6 1.8-1.8 3.2-3.9 5.1-5.4 1.4-.4.7-3-.8-2.2-1.3.5-1.7 2-2.6 2.9a31 31 0 01-5 5.2c-1.5.6-3.1.3-4.6 0-.6-.5 1.2-1 1.5-1.6.8-.8 1.8-1.6 2.3-2.7-.5-1-1.9-1-2.9-1-2.4.2-4.3 2.3-6.8 2.5-1.9 0-.9-2 0-2.7 1.6-2 3.4-3.8 5.1-5.7.5-.6 2.3-1.2 1.2-2-.4-.2-.9-.2-1.3-.2zm1.2 10c1.3.7-.8 1.8-1.6 1.7-1.1.3-1.2-.8-.2-1 .6-.4 1.2-.7 1.8-.7zm-3.8 2.6c.7 0 2.2.7.8 1.1-1 .8-2-.8-.8-1.1z"/>
+    <path d="M289.4 317.8c0-1-1.6-.8-1.8.2-.2.6 0 .7.8.6.6 0 1-.4 1-.8zm74.7-6.6c.2-.9-1-1.5-1.7-.8-.7.6 0 1.9.8 1.7.4 0 .8-.5 1-.9zM248 302.1c1.1-1 1.2-1.1.7-3.3-.8-3.1-.7-3.5.5-3.8 1.5-.3 5.3 1.7 6 3.3.8 1.3.7 1.4-.4 2.4-1.2 1.1-1.2 2.4 0 2.4 1 0 3.7-2.6 3.7-3.5 0-1.3-3-4.4-5.4-5.5a10.7 10.7 0 00-4.6-1c-3.1 0-3.5.7-2.7 4.2 1 4.2-.3 4.8-3.7 1.6a10.4 10.4 0 01-3.5-8.6c0-4 1.6-6.1 5.1-6.6 2.4-.3 2.3-.9 0-1.2-3.6-.6-6.6 1.8-7.7 6-1.3 4.7 1.6 10.4 6.7 13.3 2.7 1.5 3.7 1.6 5.3.3zm139.2-5.2c.3-.2.5-.9.5-1.4s.5-1.6 1.1-2.4c.6-.8 1-1.6 1-1.8 0-.8-1.3-.8-2.3 0-1.1.9-2 1-2 0l1.2-.9c1.6-.7 1.7-1.5.4-2.1-1.7-.8-3.5.6-3.6 3-.1 1.6 0 1.8 1.2 2.5 1.1.7 1.3 1 1.1 2-.3 1.6.4 2.2 1.4 1.1zm13-1.4c1-1 1.8-1.9 1.8-2.2 0-.3.9-1.2 1.9-2 2.8-2 3.5-4 2.2-7.3-.5-1.3-2-3-5.5-6a26 26 0 00-5.4-4.4c-.9 0-.7 3.4.2 3.7 1.7.6 2.8 1.3 5.4 3.7 3.2 2.8 4.6 5.5 3.8 7-.7 1.4-1.7 1-4.5-2a13.8 13.8 0 00-3.2-2.9c-.3 0-.5.6-.5 1.4 0 1 .5 2 2 3.5 2.3 2.6 2.5 4.1.7 5.5a5 5 0 01-1.4 1 33.2 33.2 0 00-9-10c-.3 0-.5.4-.5 1.4 0 1.3.2 1.7 1.2 2.2a38 38 0 017 7l1.8 2a9 9 0 002-1.7zm6-16.8c-.5-1.2-8.4-9.4-9.3-9.4-.4 0-.5.5-.4 1.8 0 1.6.3 1.8 1.4 2.1a20 20 0 014.6 3.7 17 17 0 003.7 3v-1.2zm-47.8 92.6a1.2 1 0 11-2.3 0 1.2 1 0 112.3 0zm4.2-1.4a1.2 1 0 11-2.4 0 1.2 1 0 112.4 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bo.svg
new file mode 100644
index 0000000..c2dcbc8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bo.svg
@@ -0,0 +1,676 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bo" viewBox="0 0 640 480">
+  <path fill="#007934" d="M0 0h640v480H0z"/>
+  <path fill="#ffe000" d="M0 0h640v320H0z"/>
+  <path fill="#d52b1e" d="M0 0h640v160H0z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M368.6 210.7l-98 97.9a91.8 91.8 0 00-1.3-1l98-97.8a6.3 6.3 0 011.3 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M374.7 204.5c-.4.7-1.4 2.5-1 3.8l-2-1.5c.5 1 .4 1.4-.1 1.8-.3.4-1.4.3-2.1.2.7.4 1.5.8 2.4 1h2c-.7.3-2.2.8-3.3 1-.5.1-1.6.2-2 0-.6.5-1.9-.4-1.3-1-.3-.3-.3-.8-.4-1.4 0-.7.1-1.9.7-3l.5 1.7c.2.5.7 1 1.1 1.4-.2-.5-.4-1.2.1-1.8.5-.5 1.3-.5 2-.2l-1.9-1.3c.8 0 3.3-1 4.1-1.5a62.3 62.3 0 004.9-3.8 57 57 0 00-3.7 4.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M387 222.8l-125.7 70.9a85 85 0 00-.9-1.2l125.7-71a5.6 5.6 0 011 1.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M394.9 218.3c-.6.6-2.2 2-2.2 3.4l-1.4-2c.2 1-.1 1.5-.7 1.7-.4.4-1.4 0-2-.3a5.1 5.1 0 002 1.5l1.7.6c-.6.1-2.3.3-3.4.2-.5 0-1.5-.2-1.9-.6-.7.4-1.6-.8-1-1.2 0-.4 0-.8.2-1.4.2-.7.7-1.8 1.6-2.8a7.8 7.8 0 000 1.8c0 .5.3 1 .5 1.6 0-.5 0-1.3.7-1.7.7-.4 1.4-.2 2 .3l-1.4-1.7c.8.1 3.5-.2 4.4-.5 1-.2 4.1-1.6 6-2.5-1.7 1-4.6 3-5.1 3.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M376.3 217.5l-113 85.2-1-1.1 112.9-85.2a6 6 0 011.1 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M383.4 212.1c-.5.6-1.8 2.3-1.6 3.6L380 214c.3 1 .1 1.5-.4 1.7-.4.4-1.5.2-2.1 0 .6.5 1.3 1 2.2 1.2l1.9.3c-.7.3-2.3.6-3.4.6-.5 0-1.6 0-2-.3-.6.5-1.7-.6-1.1-1.1-.2-.3-.1-.8-.1-1.4a6 6 0 011.1-3 7.8 7.8 0 00.2 1.8c.2.6.5 1 .9 1.6-.2-.5-.2-1.3.4-1.8.6-.4 1.3-.3 2 0l-1.6-1.5c.7 0 3.3-.6 4.2-1 1-.4 3.8-2 5.5-3.1-1.4 1.2-4 3.5-4.4 4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M271.4 210.7l98 97.9 1.3-1-98-97.8a6.3 6.3 0 00-1.3 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M265.3 204.5c.4.7 1.4 2.5 1 3.8l2-1.5c-.5 1-.4 1.4.1 1.8.3.4 1.4.3 2.1.2-.7.4-1.5.8-2.4 1h-2c.7.3 2.2.8 3.3 1 .5.1 1.6.2 2 0 .6.5 1.9-.4 1.3-1 .3-.3.3-.8.4-1.4 0-.7-.1-1.9-.7-3a8 8 0 01-.5 1.7c-.2.5-.7 1-1.1 1.4.2-.5.4-1.2-.1-1.8-.5-.5-1.3-.5-2-.2l1.9-1.3c-.8 0-3.3-1-4.1-1.5a62.3 62.3 0 01-4.9-3.8 57 57 0 013.7 4.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M253 222.8l125.7 70.9c.2-.3.6-1 .9-1.2l-125.7-71a5.6 5.6 0 00-1 1.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M245.1 218.3c.6.6 2.2 2 2.2 3.4l1.4-2c-.2 1 .1 1.5.7 1.7.4.4 1.4 0 2-.3a5.1 5.1 0 01-2 1.5l-1.8.6c.7.1 2.3.3 3.4.2.6 0 1.6-.2 2-.6.7.4 1.6-.8 1-1.2 0-.4 0-.8-.2-1.4a6.3 6.3 0 00-1.6-2.8v1.8c0 .5-.3 1-.5 1.6 0-.5 0-1.3-.7-1.7-.7-.4-1.4-.2-2 .3l1.4-1.7a17 17 0 01-4.4-.5 70.5 70.5 0 01-6-2.5c1.7 1 4.6 3 5.1 3.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M263.7 217.5l113 85.2 1-1.1-112.9-85.2a6 6 0 00-1.1 1z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M256.6 212.1c.5.6 1.8 2.3 1.6 3.6l1.7-1.7c-.3 1-.1 1.5.4 1.7.4.4 1.5.2 2.1 0a5.4 5.4 0 01-2.2 1.2l-1.9.3c.7.3 2.3.6 3.4.6.5 0 1.6 0 2-.3.6.5 1.7-.6 1.1-1.1.2-.3.1-.8.1-1.4a6 6 0 00-1.1-3 7.8 7.8 0 01-.2 1.8c-.2.6-.5 1-.9 1.6.2-.5.2-1.3-.4-1.8-.6-.4-1.3-.3-2 0l1.6-1.5a15 15 0 01-4.2-1c-1-.4-3.8-2-5.5-3.1 1.4 1.2 4 3.5 4.4 4z"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M300.1 283.4c4-2.6 15.1-4 16.7-3.6-8 6-16 6.3-16.7 3.7z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M300.2 283.5c.7 2.6 8.7 2.4 16.6-3.6a69 69 0 01-16.6 3.6z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M300.2 283.5c.7 2.6 8.7 2.4 16.6-3.6a69 69 0 01-16.6 3.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M300.1 283.4a40.6 40.6 0 0116.7-3.6c-8 6-16 6.3-16.7 3.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M347.6 220.2L322 272.5c-1.3 1-2.3-.3-2.7-.2-1.5 1.7-3.6 2-4 2.5-1.8 2.4-.8 4.3-.7 4.5 1.3 1.8-1.6 3.5-1.5 4-.6 1-2.7.9-3.1 2l-4.8 9.3c-.6.5-3.7 6.1-3.7 6.1-2 0-10.2-5.2-10.4-5.1 4.6-7.3 15.6-18.5 15.3-19.2 3.1-5.2 8-10.9 10.1-10.8 3-1.6 4.5-5.7 4-6.6 2.2 0 3.5-1.4 3.6-1.5l18.8-37.6c1.6-.5 1.4.1 1.9 1 0 0 1-1.2.9-1.3.9-.4 1.8.2 1.8.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M348.6 208.8c-.6 1 .2 1 .5 1.1l1 .3c1.3 0 2 .7 2 1l-30 61.3c-1.3 1-2.5-.3-2.9-.1l20.6-41.8 10-18.8-2.8-1.2c-.8-.2-1-.8-.7-1.6l12.6-21.6-10.2 21-.1.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M348.6 208.8c-.6 1 .2 1 .5 1.1l1 .3c1.3 0 2 .7 2 1l-30 61.3c-1.3 1-2.5-.3-2.9-.1l20.6-41.8 10-18.8-2.8-1.2c-.8-.2-1-.8-.7-1.6l12.6-21.6-10.2 21-.1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M308.8 272.4c-3 0-4.6 2-2.7 4.7m1.4-2.4c-1 .6-1.7-.3-1.7-.3m15.2-13c-1.5 5.6-4.3 9.3-5 10.4-2 2.2-3.9 7.2-3.5 8.1l-8.1 13.3"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M322 272.7c-1.4-.5-5.7-4.5-10-3.8-3.3 3.8-5.3 7.7-5.9 8.2 4 3.3 6.7 5 7.6 5.4.7-.4 1-1.5 1-1.5.9-1-.2-1.7-.2-1.7.2-2.5 2-4.2 3.8-4.3 2.2-.2 1.6-.4 1.9-.4 1-.6 1.8-1.9 1.8-1.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M322 272.7c-1.4-.5-5.7-4.5-10-3.8-3.3 3.8-5.3 7.7-5.9 8.2 4 3.3 6.7 5 7.6 5.4.7-.4 1-1.5 1-1.5.9-1-.2-1.7-.2-1.7.2-2.5 2-4.2 3.8-4.3 2.2-.2 1.6-.4 1.9-.4 1-.6 1.8-1.9 1.8-1.9z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M317.6 272.8c-2 0-4 .9-4.8 2.6l4.8-2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M317.6 272.8c-2 0-4 .9-4.8 2.6m-3.5.7c.1.4.7.6 1.1.5.6-.2.8-.7.6-1-.2-.5-.7-.7-1.2-.5-.5.1-.7.6-.5 1zm2.5-3.4c.1.4.7.6 1.2.4.5-.1.7-.6.5-1-.2-.4-.7-.6-1.2-.5-.5.2-.7.7-.5 1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M345.3 226.1c.8-.2 1.2-1.1.8-2l-4.7-1.7s-.6 0-1 .7c-.5.7.1 1.2.1 1.2l4.8 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M345.3 226.1c.8-.2 1.2-1.1.8-2l-4.7-1.7s-.6 0-1 .7c-.5.7.1 1.2.1 1.2l4.8 1.8"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M294.5 286c3.9-2.7 15-4.2 16.6-3.8-7.8 6.2-15.8 6.5-16.6 3.9z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M294.6 286c.7 2.7 8.7 2.3 16.5-3.8a62.4 62.4 0 01-16.5 3.9z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M294.6 286c.7 2.7 8.7 2.3 16.5-3.8a62.4 62.4 0 01-16.5 3.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M294.6 286a40 40 0 0116.6-3.9c-7.9 6.2-16 6.6-16.6 4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M340.7 222l-24.4 52.8c-1.3 1-2.4-.3-2.7-.2-1.5 1.7-3.6 2.1-4 2.5-1.8 2.5-.7 4.4-.6 4.6 1.3 1.8-1.5 3.5-1.4 4-.6 1-2.7.9-3.1 2.1-.1-.1-4.2 8.4-4.6 9.3-.6.5-3.5 6.2-3.5 6.2-2.1 0-10.3-5-10.5-5 4.4-7.3 15.1-18.7 14.9-19.4 3-5.3 7.7-11 9.9-11 3-1.6 4.3-5.7 3.7-6.6 2.3-.1 3.5-1.5 3.7-1.6l18-37.8c1.6-.6 1.3 0 1.9 1 0 0 1-1.2.9-1.4.9-.4 1.7.2 1.8.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M340.7 222l-24.4 52.8c-1.3 1-2.4-.3-2.7-.2-1.5 1.7-3.6 2.1-4 2.5-1.8 2.5-.7 4.4-.6 4.6 1.3 1.8-1.5 3.5-1.4 4-.6 1-2.7.9-3.1 2.1-.1-.1-4.2 8.4-4.6 9.3-.6.5-3.5 6.2-3.5 6.2-2.1 0-10.3-5-10.5-5 4.4-7.3 15.1-18.7 14.9-19.4 3-5.3 7.7-11 9.9-11 3-1.6 4.3-5.7 3.7-6.6 2.3-.1 3.5-1.5 3.7-1.6l18-37.8c1.6-.6 1.3 0 1.9 1 0 0 1-1.2.9-1.4.9-.4 1.7.2 1.8.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M341.4 210.6c-.5 1 .3 1 .6 1.2l1 .3c1.3 0 2 .6 2 1l-28.7 61.7c-1.3 1-2.5-.3-2.9 0l19.7-42.2 9.6-19-2.8-1c-.8-.3-1-.8-.7-1.7l12-21.8-9.6 21.1-.2.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M341.4 210.6c-.5 1 .3 1 .6 1.2l1 .3c1.3 0 2 .6 2 1l-28.7 61.7c-1.3 1-2.5-.3-2.9 0l19.7-42.2 9.6-19-2.8-1c-.8-.3-1-.8-.7-1.7l12-21.8-9.6 21.1-.2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M303 275c-3-.2-4.6 2-2.6 4.6m1.3-2.4c-1 .6-1.7-.3-1.7-.3m15-13.3c-1.5 5.7-4.2 9.4-4.7 10.6-2.2 2.2-3.9 7.3-3.5 8.1l-7.8 13.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M316.1 275c-1.3-.5-5.8-4.5-10-3.7-3.3 3.9-5.1 7.8-5.7 8.3a50 50 0 007.7 5.3c.7-.4 1-1.5 1-1.5.8-1-.2-1.8-.2-1.8 0-2.4 1.8-4.2 3.6-4.3 2.2-.2 1.6-.4 1.9-.4 1-.6 1.7-2 1.7-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M316.1 275c-1.3-.5-5.8-4.5-10-3.7-3.3 3.9-5.1 7.8-5.7 8.3a50 50 0 007.7 5.3c.7-.4 1-1.5 1-1.5.8-1-.2-1.8-.2-1.8 0-2.4 1.8-4.2 3.6-4.3 2.2-.2 1.6-.4 1.9-.4 1-.6 1.7-2 1.7-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M311.8 275.1c-2 0-4 1-4.7 2.7l4.7-2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M311.8 275.1c-2 0-4 1-4.7 2.7m-3.6.8c.2.4.7.6 1.2.4.5-.2.7-.6.5-1-.2-.5-.7-.6-1.2-.5-.5.2-.7.6-.5 1zm2.4-3.5c.2.4.8.6 1.3.5.5-.2.7-.7.5-1-.2-.5-.7-.7-1.2-.5-.5.1-.8.6-.6 1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M338.5 228c.8-.2 1.1-1.1.7-2l-4.7-1.6s-.5 0-1 .7c-.4.7.2 1.2.2 1.2l4.8 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M338.5 228c.8-.2 1.1-1.1.7-2l-4.7-1.6s-.5 0-1 .7c-.4.7.2 1.2.2 1.2l4.8 1.8"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M340.6 283.3a39 39 0 00-16.8-3.7c8 6.1 16.1 6.3 16.8 3.7z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M340.6 283.3c-.7 2.7-8.8 2.4-16.8-3.6a63.4 63.4 0 0016.8 3.6z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M340.6 283.3c-.7 2.7-8.8 2.4-16.8-3.6a63.4 63.4 0 0016.8 3.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M340.6 283.3c-4.2-3-15.8-4-16.9-3.7 8 6 16.2 6.3 16.9 3.6z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M292.7 219.3l25.7 52.9c1.3 1 2.4-.3 2.7-.2 1.6 1.7 3.7 2.1 4.2 2.5 1.8 2.4.8 4.4.7 4.6-1.4 1.8 1.5 3.5 1.4 4.1.6 1 2.7.8 3.2 2l4.8 9.3c.7.5 3.7 6.2 3.7 6.2 2.1 0 10.3-5.3 10.5-5.2-4.6-7.3-15.7-18.7-15.4-19.4-3.1-5.2-8.1-11-10.2-10.9-3-1.6-4.5-5.7-4-6.6-2.3 0-3.6-1.5-3.7-1.6l-19-37.9c-1.6-.5-1.3.1-1.9 1 0 0-1-1.2-.9-1.3-.9-.5-1.8.2-1.8.5z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M291.7 207.8c.5 1-.2 1-.5 1.2l-1.1.3c-1.2 0-1.9.7-1.9 1l30.2 61.9c1.3 1 2.5-.3 3-.1l-20.8-42.3-10-19 2.7-1.1c.8-.2 1-.8.7-1.6l-12.7-21.9 10.2 21.2.2.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M291.7 207.8c.5 1-.2 1-.5 1.2l-1.1.3c-1.2 0-1.9.7-1.9 1l30.2 61.9c1.3 1 2.5-.3 3-.1l-20.8-42.3-10-19 2.7-1.1c.8-.2 1-.8.7-1.6l-12.7-21.9 10.2 21.2.2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M331.9 272.1c3 0 4.6 2.1 2.7 4.7m-1.4-2.3c1 .6 1.7-.4 1.7-.4M319.5 261c1.6 5.7 4.4 9.5 5 10.6 2.2 2.2 4 7.3 3.7 8.2l8.1 13.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M318.6 272.4c1.3-.4 5.7-4.6 10-3.8 3.4 3.8 5.4 7.7 6 8.2-4 3.4-6.7 5-7.7 5.5-.7-.4-1-1.5-1-1.5-.9-1 .2-1.8.2-1.8-.1-2.4-2-4.2-3.8-4.3-2.3-.2-1.6-.4-2-.4-1-.6-1.7-1.9-1.7-1.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M318.6 272.4c1.3-.4 5.7-4.6 10-3.8 3.4 3.8 5.4 7.7 6 8.2-4 3.4-6.7 5-7.7 5.5-.7-.4-1-1.5-1-1.5-.9-1 .2-1.8.2-1.8-.1-2.4-2-4.2-3.8-4.3-2.3-.2-1.6-.4-2-.4-1-.6-1.7-1.9-1.7-1.9z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M323 272.5c2 0 4 1 4.8 2.7l-4.8-2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M323 272.5c2 0 4 1 4.8 2.7m3.6.6a1 1 0 01-1.2.5.7.7 0 01-.5-1c.1-.5.7-.6 1.2-.5.5.2.7.6.5 1zm-2.5-3.4c-.2.4-.8.6-1.3.5-.4-.2-.7-.7-.5-1 .2-.5.7-.7 1.2-.5.5.1.8.6.6 1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M295 225.4a1.4 1.4 0 01-.8-2l4.8-1.8s.5.1 1 .7c.5.7-.2 1.2-.2 1.2l-4.8 1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M295 225.4a1.4 1.4 0 01-.8-2l4.8-1.8s.5.1 1 .7c.5.7-.2 1.2-.2 1.2l-4.8 1.9"/>
+  <path fill="#00e519" stroke="#000" stroke-width=".1" d="M345.6 286a38 38 0 00-16.6-3.8c7.9 6.2 15.9 6.5 16.6 3.9z"/>
+  <path fill="#ffe533" stroke="#000" stroke-width=".1" d="M345.6 286c-.8 2.7-8.7 2.3-16.5-3.8a62.4 62.4 0 0016.5 3.9z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M345.6 286c-.8 2.7-8.7 2.3-16.5-3.8a62.4 62.4 0 0016.5 3.9z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M345.6 286a40.1 40.1 0 00-16.6-3.9c7.8 6.2 15.9 6.6 16.6 4z"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M299.5 222l24.4 52.8c1.3 1 2.3-.3 2.7-.2 1.5 1.7 3.6 2.1 4 2.5 1.7 2.5.7 4.4.6 4.6-1.4 1.7 1.5 3.5 1.4 4 .5 1 2.6.9 3 2.1.2-.1 4.2 8.4 4.7 9.3.6.5 3.5 6.2 3.5 6.2 2 0 10.3-5 10.5-5-4.4-7.4-15.2-18.7-15-19.4-2.9-5.3-7.7-11-9.8-11-3-1.6-4.3-5.7-3.7-6.6-2.3-.1-3.6-1.5-3.7-1.6L304 222c-1.6-.6-1.4 0-2 1 0 0-.9-1.2-.8-1.4-.9-.4-1.8.2-1.8.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M299.5 222l24.4 52.8c1.3 1 2.3-.3 2.7-.2 1.5 1.7 3.6 2.1 4 2.5 1.7 2.5.7 4.4.6 4.6-1.4 1.7 1.5 3.5 1.4 4 .5 1 2.6.9 3 2.1.2-.1 4.2 8.4 4.7 9.3.6.5 3.5 6.2 3.5 6.2 2 0 10.3-5 10.5-5-4.4-7.4-15.2-18.7-15-19.4-2.9-5.3-7.7-11-9.8-11-3-1.6-4.3-5.7-3.7-6.6-2.3-.1-3.6-1.5-3.7-1.6L304 222c-1.6-.6-1.4 0-2 1 0 0-.9-1.2-.8-1.4-.9-.4-1.8.2-1.8.6z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M298.8 210.6c.4 1-.3 1-.6 1.2l-1 .3c-1.3 0-2 .6-2 1l28.7 61.7c1.3 1 2.5-.3 2.9 0L307 232.5l-9.6-19 2.7-1c.9-.3 1.2-.8.8-1.7L288.8 189l9.7 21.1.2.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M298.8 210.6c.4 1-.3 1-.6 1.2l-1 .3c-1.3 0-2 .6-2 1l28.7 61.7c1.3 1 2.5-.3 2.9 0L307 232.5l-9.6-19 2.7-1c.9-.3 1.2-.8.8-1.7L288.8 189l9.7 21.1.2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M337.2 275c3-.2 4.5 2 2.6 4.6m-1.4-2.4c1 .6 1.8-.3 1.8-.3m-15-13.3c1.4 5.7 4.2 9.4 4.7 10.6 2.1 2.2 3.8 7.3 3.5 8.1l7.8 13.4"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M324 275c1.4-.5 5.8-4.5 10.1-3.7 3.2 3.9 5.1 7.8 5.7 8.3a54.1 54.1 0 01-7.8 5.3c-.6-.4-1-1.5-1-1.5-.7-1 .3-1.8.3-1.8 0-2.4-1.8-4.2-3.6-4.3-2.3-.2-1.6-.4-2-.4-1-.6-1.7-2-1.7-2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M324 275c1.4-.5 5.8-4.5 10.1-3.7 3.2 3.9 5.1 7.8 5.7 8.3a54.1 54.1 0 01-7.8 5.3c-.6-.4-1-1.5-1-1.5-.7-1 .3-1.8.3-1.8 0-2.4-1.8-4.2-3.6-4.3-2.3-.2-1.6-.4-2-.4-1-.6-1.7-2-1.7-2z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M328.4 275.1c2 0 4 1 4.7 2.7l-4.7-2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M328.4 275.1c2 0 4 1 4.7 2.7m3.6.8a1 1 0 01-1.2.4c-.5-.2-.8-.6-.6-1 .2-.5.8-.6 1.3-.5.4.2.7.6.5 1zm-2.5-3.5c-.2.4-.7.6-1.2.5-.5-.2-.7-.7-.5-1 .2-.5.7-.7 1.2-.5.5.1.7.6.5 1z"/>
+  <path fill="#cce5e5" stroke="#000" stroke-width=".1" d="M301.6 228c-.8-.2-1-1.1-.7-2l4.7-1.6s.6 0 1 .7c.5.7-.2 1.2-.2 1.2l-4.8 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M301.6 228c-.8-.2-1-1.1-.7-2l4.7-1.6s.6 0 1 .7c.5.7-.2 1.2-.2 1.2l-4.8 1.8"/>
+  <path fill="#a05a2c" stroke="#000" stroke-width=".1" d="M315.3 250.7l35.5-38a97.4 97.4 0 01-1.4-.9l-35.6 38a7.5 7.5 0 001.5.9z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M349.8 212.2c-1.2-1-3.4-2.2-5-1.8-.5-2.2 2.5-4.4 3.8-4-.3 2.3 3.2 3.8 3.1 3.8l-1.9 2z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M352.1 210.4c1 .8 1.4.8 2.8 1.6 1.4.7 3.2-1.1 4.1-1.7 0 0 1 3.4-1.1 5.6-2 2.3-4.6 2.8-6.5 2.1 0 0 2.6-2.5 1.5-3.6-1-1.1-1.4-1.2-2.5-1.9"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M-27.7-406.5h4.1v2.2h-4.1z" transform="matrix(-.67726 .73575 -.82314 -.56784 0 0)"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M308.2 290.3l-1 9 1.8-2.2c.3-.6 1.5-2.1 1.8-7.4 0 0-1-2.9-1.4-2.9-.7-.4-1.2 3.5-1.2 3.5zm2.2-20.1l-2.7 15.8c0 .5 1.3 1.6 2.1-1.2l1.5-10.5-1-4.1z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M315.9 284.6a8.7 8.7 0 01-1.4-2l-.4 3.1s2 1.5 1.7 4.3l.4-.6.2-1s.5-2 .5-3.1c0 0-.5-.2-1-.7z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M307.3 299.4s3.3-3 3.5-9.7l.4-1.9s0 1.5.8.4c.6-1.5.6-2.8.6-2.8s1.2-1.6 1.6.3l-1.2 9.6a51.4 51.4 0 01-.3 2s-.7-1-1.4.1c-.7 1.2-1.8 2.7-4 2zm4-25.1l-1.5 10.5s1.2.6 1.4 3c.1 1.2.6.6.8.4.2-.8 0-2.3 0-2.3l.6-7.3s-1.2-3.4-1.3-4.3z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M310.1 298.8l-.2 2.6s1 0 1.7-1.2c.8-1.1 1-2.8 1-2.8s-.7-1.1-1.3 0c-.5 1-1.2 1.4-1.2 1.4zm1.8-10.6c.6-1 .8-2.6.7-2.8l-.7.5c.2 1.2 0 2.3 0 2.3z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M315.3 287.1a4.4 4.4 0 00-1.3-1.5l-1.5 12s-.4 3-2.3 3.7c0 0 1.1 10.3 4.5 7.5.4-.4 1-3.6.9-5.5l-.9-6a26.8 26.8 0 01.5-4.7l.6-2.6c.2-.2 0-1.8-.5-2.9z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M316.9 285.3l1 1c.3 0-2.3 19.3-2.3 19.3s0-2-.7-6c-.6-3.2.2-7.5.9-9.6 0 0 .8-.5 1-4.7z"/>
+  <path fill="#f7e214" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M312.6 278.8l-.7 7.1s1.8-2.4 2.2-.2l.4-3.2s-1.5-2.4-2-3.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M311.3 287.8s-.6-6.1-3.6-1.8a10 10 0 000 3c0 .8.9 1.8 1.2 2.3.7 1 1.3-.2 1.3-.2s.7-1 1-3.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M287.8 237c-.1-3.5-1.2-9.3-1.3-13.3l-12-12.2s-1.4 9.9-5.8 15.5l19 10"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M288.7 237.3c.5-2.4 1-5 1.5-10.2l-7.7-7.6c0 3.2-3.6 8.1-3.9 14"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M295.3 244.7c1-4.3-1.3-4.8 2-10.8l-7.2-6.8c-1.3 4-2.2 6.6-2 10l6 4.4"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M267.6 270c-1.5-4.2.5-12.7.2-18-.1-3.5 2.5-16.7 2.4-20.6l-14.1-8.8s-.6 14.3-2.3 29.9c-1.4 8-1.4 15.3-.4 21.5 1.5 8.7 3 12.2 6.5 15.9 6.3 6.5 19.7 2.7 19.7 2.7 11.3-2.3 17.8-9.4 17.8-9.4s-3.7.8-9.6 1.4c-13-.9-18.2 2.4-18.6-11"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M305.4 278.8l.2-.1-5.9 1.9-8 .6c-17.2.4-15-10.3-14.3-27.5.1-6.6 1.4-14.8 1-17.7l-11.5-6.6c-3.8 10.6-2.6 18-3.3 23.5-.4 6-1.7 17.4.2 22.4 2.7 11.6 11.8 11.2 24.2 10.1 6.1-.5 9.4-2 9.4-2l8-4.6"/>
+  <path fill="#007a3d" stroke="#000" stroke-width=".1" d="M305.6 278.5a34.4 34.4 0 01-6 2.2l-8 .8c-12.5 1-19.8-7.7-18.2-27.6 0-7 .2-10.2 2.6-19.5l7 4v.7c-.5 2-1.5 7-1.5 9.2 0 16 10.1 28.2 23.9 30.3h.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M260 230.6c1 2 8 12.5 12 14.5m-11-7.6c1.3 2 9.8 14 13.6 14.6m-15.5 3.6c2 2.4 4 7 9.7 10m-7 3.3c4 3.7 13.6 11.6 23 12m-23-6c2 2.3 6.2 13.3 24 8.3m-26.7-6.3c1.2 2.6 10.1 17.3 26 11.6"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M277.8 264.8c-1.5-4.3.5-12.7.2-18.1-.1-3.5 1.5-15.5 1.5-19.5l-13.2-9.9s-.6 14.3-2.3 30a84 84 0 00-1.5 23.9c1.8 10 6.6 12.8 7.5 13.6 6.7 6 22 5.4 23.5 4.9 10.8-4 15.6-10.8 15.6-10.8s-5.2-.1-11.1.5c-13-1-19.7-.4-20.1-13.8"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M315.6 273.5h.2l-5.9 1.8-8 .6c-17.2.5-15-10.2-14.3-27.5.1-6.5.3-12.4 0-15.3l-10.3-7.6c-3.8 10.7-2.8 16.7-3.5 22.2-.4 5.8-1.7 17.3.2 22.3 2.7 11.7 11.8 11.2 24.2 10.2 6.1-.5 9.4-2.1 9.4-2.1l8-4.6"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M315.9 273.4c-2.4 1.2-6 2.1-6 2.1l-8 .8c-12.5 1-19.8-7.7-18.2-27.6 0-7-.3-7.5 2.2-16.9 3.8 2.5 11.1 8.8 11.1 8.8s-2 2.8-1.5 6.7c0 16 6.4 24 20.2 26.1l1.5-13"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M270.1 225.3c1.2 2 8.1 12.6 12 14.6m-10.8-7.7c1.2 2 9.7 14 13.5 14.7m-15.5 3.6c2 2.3 4 7 9.7 10m-7 3.3c4 3.6 13.6 11.6 23 12m-23-6c2 2.3 6.2 13.2 24 8.3m-26.7-6.4c1.2 2.7 10.1 17.3 26 11.7"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M256.2 224l-.7 6c-.2 4.4-.1 7.7.1 9.8 0 .2.9 5.5.6 5.8-1 1.1-1.1 1.2-2.2.4-.1-.2.5-5.6.5-6.3l.4-9.9c0-1 1-6.4 1-6.4s0-1.2.3.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M256.2 224l-.7 6c-.2 4.4-.1 7.7.1 9.8l.7 5.8c-1 1.1-1.2 1.6-2.3.7-.1-.2.5-5.9.5-6.6l.4-9.9c0-1 1-6.4 1-6.4s0-1.2.3.5z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M256 222.2s-1 6-1.2 9.6l-.3 7.9-.5 4.5c-.1.7.1.2 0 .2-.9.5-1.5.1-2-.3-.2-.1 1.4-3.8 1.4-4.5.9-10.8 2.4-17 2.4-17s-.6 3.7.3-.4"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M256 222.2s-1 6-1.2 9.6l-.3 7.9-.5 4.5c-.1.7.1.2 0 .2-.9.5-1.5.1-2-.3-.1-.1 1.4-3.8 1.5-4.5.8-10.8 2.3-17.1 2.3-17.1s-.6 3.8.3-.3zm-.4 17.3s-1 .4-1 .2m0-1.3s.7 0 .8-.2m0-1s-.6.3-.8 0m.8-1.6h-.6m.6-1.5h-.6m.5-2.1s-.3.1-.4-.1m.5-1.7h-.5m-.5 9.5s-.9.2-1-.1m1.1-2s-.9.1-1-.1m1-1.3h-.7m.9-1.5h-.7m.7-1.7h-.5m.7-1.5h-.6m.6-1.7s-.4.3-.4 0m0 9s-.9 0-.9-.3m12.8-19.8l-.7 6a63.4 63.4 0 000 9.8c0 .3 1 5.5.7 5.8-1 1.2-1.1 1.3-2.2.4-.1-.1.5-5.5.5-6.3l.4-9.8c0-1.1 1-6.5 1-6.5s0-1.1.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M266.4 218.7l-.7 6a73 73 0 00.1 9.8l.7 5.8c-1 1.2-1.2 1.6-2.3.7-.1-.1.5-5.8.5-6.6l.4-9.8c0-1.1 1-6.5 1-6.5s0-1.1.3.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M266.3 217s-1.2 6-1.3 9.5l-.3 8-.5 4.4v.3c-.9.5-1.5 0-2-.4-.2 0 1.4-3.7 1.4-4.5a127 127 0 012.4-17l.3-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M266.3 217s-1.2 6-1.3 9.5l-.3 8-.5 4.4v.3c-.9.5-1.5 0-2-.4-.2 0 1.4-3.7 1.4-4.5.9-10.8 2.4-17 2.4-17l.3-.4zm-.5 17.2s-1 .5-1 .2m0-1.2s.7 0 .8-.3m0-1s-.6.4-.8.1m.7-1.7h-.5m.6-1.5h-.6m.5-2s-.4 0-.4-.2m.5-1.7h-.5m-.5 9.6s-.9.1-1-.2m1.1-1.9s-.9 0-1-.2m1-1.3h-.7m.9-1.4h-.7m.7-1.7l-.5-.1m.7-1.4l-.6-.1m.6-1.6s-.4.2-.4 0m0 9s-.9 0-.9-.4"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M274.3 211.3s.5 5.1.2 8c-.3 3.5-.3 4.5-.6 6.6v3.9c.8.5 1.5.2 2 0 .3-.1-1-3.3-1-4 .5-8.9-.4-14.3-.4-14.3l-.2-.2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M274.3 211.3s.5 5.1.2 8c-.3 3.5-.3 4.5-.6 6.6v3.8c0 .5-.1 0 0 .1.8.5 1.4.2 2 0 .2-.1-1-3.3-1-4 .5-9-.4-14.3-.4-14.3l-.2-.2zm-.3 14.6s.9.2 1 0m-.8-1.7s.9.2 1 0m-1-1.2h.9m-.8-1.2h.7m-.5-1.4h.5m-.5-1.3h.5m-.4-1.4s.4.2.4 0m-1 7.4s1 .1 1-.1"/>
+  <path fill="#005000" stroke="#000" stroke-width=".1" d="M306 221.7h.8-.8z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M316.7 256.4s-.3-.2-.4 0l.1.2.3-.2zm-1 1.1l2.1-.1"/>
+  <path fill="#e8a30e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M292.2 284.2c-.2 3-7.4 6.6-12.7.1-5.7-4.5-4.5-11.4 0-12.3l54.7-53.3c2.2-1.2 2.4-2.3 3.5-3.5 2.3 2.5 7 6.8 9.6 9-1.6 1.2-2.9 2.5-3.2 3.5l-52 56.5z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M337.8 215c2.6-3.5 12.8 5.8 10 8.7-2.6 2.8-12.4-5-10-8.6z"/>
+  <path fill="#cccccf" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M347 223c-2 1.4-9.3-4.8-8.1-7.2 2-2.2 10.1 5.7 8 7.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M344 227.9a15.8 15.8 0 01-9.9-9m-23 44.8a16.3 16.3 0 01-11.4-11.6m9.1 14.3a16.3 16.3 0 01-11.4-11.6m-2.1 25.8c-5.8-1.8-10.4-6-12.2-12.1m9.8 14.8a18 18 0 01-12.3-12.2"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M279.4 285c-.3 1.4-1 1.8-2.1 1.4m13.7-2c-2.1 3.5-4.5 2.4-6.5 2.5"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M276.4 285.2c0 1 .8 1.6 1.7 1.6a1.7 1.7 0 001.7-1.6c0-1-.7-1.6-1.7-1.6s-1.7 1-1.7 1.9"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M279.5 284.9c-.3 1.3-1 1.7-2 1.3m13.5-1.7c-2.1 3.4-4.5 2.3-6.5 2.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M331.8 290.3l1 9-1.8-2.2c-.3-.6-1.5-2.1-1.8-7.4 0 0 1-2.9 1.4-2.9.7-.4 1.2 3.5 1.2 3.5zm-2.2-20.1l2.7 15.8c0 .5-1.3 1.6-2.1-1.2l-1.5-10.5 1-4.1z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M324.1 284.6l1.4-2 .4 3.1s-2 1.5-1.7 4.3l-.4-.6-.2-1s-.5-2-.5-3.1c0 0 .5-.2 1-.7z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M332.8 299.4s-3.4-3-3.6-9.7l-.4-1.9s0 1.5-.8.4c-.6-1.5-.6-2.8-.6-2.8s-1.2-1.6-1.6.3l1.2 9.6.3 2s.7-1 1.4.1c.7 1.2 1.8 2.7 4 2zm-4.1-25.1l1.5 10.5s-1.2.6-1.4 3c-.1 1.2-.6.6-.8.4-.2-.8 0-2.3 0-2.3l-.6-7.3s1.2-3.4 1.3-4.3z"/>
+  <path fill="#ffe000" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M329.9 298.8l.2 2.6s-1 0-1.7-1.2c-.8-1.1-1-2.8-1-2.8s.7-1.1 1.3 0c.5 1 1.2 1.4 1.2 1.4zm-1.8-10.6a6 6 0 01-.7-2.8l.7.5c-.2 1.2 0 2.3 0 2.3z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M324.8 287.1a4.4 4.4 0 011.2-1.5l1.5 12s.4 3 2.3 3.7c0 0-1.1 10.3-4.5 7.5-.4-.4-1-3.6-.9-5.5l.9-6a26.8 26.8 0 00-.5-4.7 31 31 0 00-.6-2.6c-.2-.2 0-1.8.5-2.9z"/>
+  <path fill="#d52b1e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M323.1 285.3l-1 1c-.3 0 2.3 19.3 2.3 19.3s0-2 .7-6c.6-3.2-.2-7.5-.9-9.6 0 0-.8-.5-1-4.7z"/>
+  <path fill="#f7e214" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M327.4 278.8l.7 7.1s-1.8-2.4-2.2-.2l-.4-3.2s1.5-2.4 2-3.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M328.7 287.8s.6-6.1 3.6-1.8c0 0 .2 2.4 0 3 0 .8-.9 1.8-1.2 2.3-.7 1-1.3-.2-1.3-.2s-.7-1-1-3.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M352.2 237c.1-3.5 1.2-9.3 1.3-13.3l12-12.2s1.4 9.9 5.8 15.5l-19 10"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M351.3 237.3c-.5-2.4-1-5-1.5-10.2l7.7-7.6c0 3.2 3.6 8.1 3.9 14"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M344.7 244.7c-1-4.3 1.3-4.8-2-10.8l7.2-6.8c1.3 4 2.2 6.6 2 10l-6 4.4"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M372.4 270c1.5-4.2-.5-12.7-.2-18 .1-3.5-2.5-16.7-2.4-20.6l14.1-8.8s.6 14.3 2.3 29.9c1.4 8 1.4 15.3.4 21.5-1.5 8.7-3 12.2-6.5 15.9-6.3 6.5-19.7 2.7-19.7 2.7-11.3-2.3-17.8-9.4-17.8-9.4s3.7.8 9.6 1.4c13-.9 18.2 2.4 18.6-11"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M334.6 278.8l-.2-.1 5.9 1.9 8 .6c17.2.4 15-10.3 14.3-27.5-.1-6.6-1.4-14.8-1-17.7l11.5-6.6c3.8 10.6 2.6 18 3.3 23.5.4 6 1.7 17.4-.2 22.4-2.7 11.6-11.8 11.2-24.2 10.1-6.1-.5-9.4-2-9.4-2l-8-4.6"/>
+  <path fill="#007a3d" stroke="#000" stroke-width=".1" d="M334.4 278.5a34.4 34.4 0 006 2.2l8 .8c12.5 1 19.8-7.7 18.2-27.6 0-7-.2-10.2-2.6-19.5l-7 4v.7c.5 2 1.5 7 1.5 9.2 0 16-10.1 28.2-23.9 30.3h-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M380 230.6c-1 2-8 12.5-12 14.5m11-7.6c-1.3 2-9.8 14-13.6 14.6m15.5 3.6c-2 2.4-4 7-9.7 10m7 3.3c-4 3.7-13.6 11.6-23 12m23-6c-2 2.3-6.2 13.3-24 8.3m26.7-6.3c-1.2 2.6-10.1 17.3-26 11.6"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M362.3 264.8c1.4-4.3-.6-12.7-.4-18.1.2-3.5-1.4-15.5-1.4-19.5l13.2-9.9s.6 14.3 2.3 30a84 84 0 011.5 23.9c-1.8 10-6.6 12.8-7.5 13.6-6.7 6-22 5.4-23.5 4.9-10.8-4-15.6-10.8-15.6-10.8s5.2-.1 11.1.5c13-1 19.7-.4 20.1-13.8"/>
+  <path fill="#ffe000" stroke="#000" stroke-width=".1" d="M324.4 273.5h-.2l5.9 1.8 8 .6c17.2.5 15-10.2 14.3-27.5-.1-6.5-.3-12.4 0-15.3l10.3-7.6c3.8 10.7 2.8 16.7 3.5 22.2.4 5.8 1.7 17.3-.2 22.3-2.7 11.7-11.8 11.2-24.2 10.2-6.1-.5-9.4-2.1-9.4-2.1l-8-4.6"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M324.1 273.4a34.4 34.4 0 006 2.1l8 .8c12.5 1 19.8-7.7 18.2-27.6 0-7 .3-7.5-2.2-16.9-3.8 2.5-11.1 8.8-11.1 8.8s2 2.8 1.5 6.7c0 16-6.4 24-20.2 26.1l-1.5-13"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M369.9 225.3c-1.2 2-8.1 12.6-12 14.6m10.8-7.7c-1.2 2-9.7 14-13.5 14.7m15.5 3.6c-2 2.3-4 7-9.7 10m7 3.3c-4 3.6-13.6 11.6-23 12m23-6c-2 2.3-6.2 13.2-24 8.3m26.7-6.4c-1.2 2.7-10.1 17.3-26 11.7"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M383.8 224l.7 6c.2 4.4.1 7.7-.1 9.8 0 .2-.8 5.5-.6 5.8 1 1.1 1.1 1.2 2.2.4.1-.2-.5-5.6-.5-6.3l-.4-9.9c0-1-1-6.4-1-6.4s0-1.2-.3.5"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M383.8 224l.7 6c.2 4.4.1 7.7-.1 9.8l-.7 5.8c1 1.1 1.2 1.6 2.3.7.1-.2-.5-5.9-.5-6.6l-.4-9.9c0-1-1-6.4-1-6.4s0-1.2-.3.5z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M384 222.2s1 6 1.2 9.6l.3 7.9.5 4.5c.1.7 0 .2 0 .2.9.5 1.5.1 2-.3.2-.1-1.4-3.8-1.4-4.5-.9-10.8-2.4-17-2.4-17s.6 3.7-.3-.4"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M384 222.2s1 6 1.2 9.6l.3 7.9.5 4.5c.1.7-.1.2 0 .2.9.5 1.5.1 2-.3.2-.1-1.4-3.8-1.4-4.5-.9-10.8-2.4-17.1-2.4-17.1s.6 3.8-.3-.3zm.4 17.3s1 .4 1 .2m0-1.3s-.7 0-.8-.2m0-1s.6.3.8 0m-.7-1.6h.5m-.6-1.5h.6m-.5-2.1s.4.1.4-.1m-.5-1.7h.5m.5 9.5s.9.2 1-.1m-1.1-2s.9.1 1-.1m-1-1.3h.7m-.9-1.5h.7m-.7-1.7h.5m-.7-1.5h.6m-.6-1.7s.4.3.4 0m0 9s.9 0 .9-.3"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M373.6 218.7l.7 6a73 73 0 01-.1 9.8c0 .3-.8 5.5-.6 5.8 1 1.2 1.1 1.3 2.2.4.1-.1-.5-5.5-.5-6.3l-.4-9.8c0-1.1-1-6.5-1-6.5s0-1.1-.3.6"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M373.6 218.7l.7 6a73 73 0 01-.1 9.8l-.7 5.8c1 1.2 1.2 1.6 2.3.7.1-.1-.5-5.8-.5-6.6l-.4-9.8c0-1.1-1-6.5-1-6.5s0-1.1-.3.6z"/>
+  <path fill="#f7e214" stroke="#000" stroke-width=".1" d="M373.7 217s1.2 6 1.3 9.5l.3 8 .5 4.4v.3c.9.5 1.5 0 2-.4.2 0-1.4-3.7-1.4-4.5a127 127 0 00-2.4-17l-.3-.4"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M373.7 217s1.2 6 1.3 9.5l.3 8 .5 4.4v.3c.9.5 1.5 0 2-.4.2 0-1.4-3.7-1.4-4.5-.9-10.8-2.4-17-2.4-17l-.3-.4zm.5 17.2s1 .5 1 .2m0-1.2s-.7 0-.8-.3m0-1s.6.4.8.1m-.7-1.7h.5m-.6-1.5h.6m-.5-2s.4 0 .4-.2m-.5-1.7h.5m.5 9.6s.9.1 1-.2m-1.1-1.9s.9 0 1-.2m-1-1.3h.7m-.9-1.4h.7m-.7-1.7l.5-.1m-.7-1.4l.6-.1m-.6-1.6s.4.2.4 0m0 9s.9 0 .9-.4m-10.5-22s-.5 5.2-.2 8.1c.3 3.5.3 4.5.6 6.6v3.9c-.8.5-1.4.2-2 0-.2-.1 1-3.3 1-4-.5-8.9.4-14.3.4-14.3l.2-.2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M365.7 211.3s-.5 5.1-.2 8c.3 3.5.3 4.5.6 6.6v3.8c0 .5.1 0 0 .1-.8.5-1.4.2-2 0-.2-.1 1-3.3 1-4-.5-9 .4-14.3.4-14.3l.2-.2zm.3 14.6s-.9.2-1 0m.8-1.7s-.9.2-1 0m1-1.2h-.9m.8-1.2h-.7m.5-1.4h-.5m.5-1.3h-.5m.4-1.4s-.4.2-.4 0m1 7.4s-1 .1-1-.1"/>
+  <path fill="#005000" stroke="#000" stroke-width=".1" d="M334 221.7h-.8.8z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M323.3 256.4s.3-.2.4 0l-.1.2-.3-.2zm1 1.1l-2.1-.1"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M291.7 215.5c0-2.1 2-3.3 2.2-3.6 1-.6 1.7-1.2 3.7-1.5l.2.9c0 .3-.5 1.6-2 2.7a11.5 11.5 0 01-4.1 1.5z"/>
+  <path fill="#a05a2c" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M291.6 214.7l29.7 38.4 1.4-1.3-30.2-39.1-.9 2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M291.2 207.2s3.2-.4 2.8-2.2c-.5-1.8-2.6-1.8-3.5-1.9-1 0-4 .7-4.8 1.5-.9 1-2.7 2.5-2.1 5s1.3 4.4 2.3 6c.9 1.6.7 3.2.4 3.9 0 .3-.4 1.3.4 1.6 1.2.5 1.5.5 2.5-.6s2.5-3 2.5-5c0-2.1 2-3.3 2.2-3.6 1-.6 1.7-1.2 3.7-1.5 0 0-.7-1.2-1.8-1-1.1 0-3.4-1-4.6-2.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M291.2 207.2s3.2-.4 2.8-2.2c-.5-1.8-2.6-1.8-3.5-1.9-1 0-4 .7-4.8 1.5-.9 1-2.7 2.5-2.1 5s1.3 4.4 2.3 6c.9 1.6.7 3.2.4 3.9 0 .3-.4 1.3.4 1.6 1.2.5 1.5.5 2.5-.6s2.5-3 2.5-5c0-2.1 2-3.3 2.2-3.6 1-.6 1.7-1.2 3.7-1.5 0 0-.7-1.2-1.8-1-1.1 0-3.4-1-4.6-2.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M291.2 207.2c-.4 0-1.7-.6-2.6-.3-.9.4-2.7 1.4-2.4 3m10.4-.3s-1.8.8-3.1 1.7c-.6.3-2.4 2-3.5 3.2-1 1-1.3 2.4-3.5 3.9m9-9l-1.4 1c-.7.3-.9.9-1.2 1.3"/>
+  <path fill="#e8a30e" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M347.8 284.2c.2 3 7.4 6.6 12.7.1 5.7-4.5 4.5-11.4 0-12.3l-54.7-53.3c-2.2-1.2-2.4-2.3-3.5-3.5a133 133 0 01-9.6 9 9.9 9.9 0 013.2 3.5l51.9 56.5z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M302.2 215c-2.6-3.5-12.8 5.8-10 8.7 2.6 2.8 12.4-5 10-8.6z"/>
+  <path fill="#cccccf" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M293 223c2 1.4 9.3-4.8 8.1-7.2-2-2.2-10.1 5.7-8 7.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M296 227.9a16 16 0 009.9-9m23 44.8c5.7-1.7 9.6-5.5 11.4-11.6m-9.1 14.3c5.7-1.8 9.7-5.5 11.4-11.6m2.1 25.8c5.8-1.8 10.4-6 12.2-12.1m-9.8 14.8a18 18 0 0012.3-12.2"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M360.6 285c.3 1.4 1 1.8 2.1 1.4m-13.7-2c2.1 3.5 4.5 2.4 6.5 2.5"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M363.6 285.2c0 1-.8 1.6-1.7 1.6a1.7 1.7 0 01-1.7-1.6c0-1 .7-1.6 1.7-1.6s1.7 1 1.7 1.9"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M360.5 284.9c.3 1.3 1 1.7 2 1.3m-13.5-1.7c2.1 3.4 4.5 2.3 6.5 2.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M339.6 175.5c1.8 2.9 4.4 8 5.2 12a22.5 22.5 0 01-7 20.8c-5.2 4.7-13.3 6-16.7 6.8-3.3.7-5.7 1.8-6.3 2.5 0-.5 0-1 .5-1.6 1.6-.7 4.1-1 7.8-1.8 7.2-1.5 14.8-4.2 19-12.2 5.4-10.3 2.2-18.4-2.5-26.4z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M341.6 206.2a.4.6 49.9 01-.6-.6.4.6 49.9 11.6.6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M346.6 205c-1.1.6-2.2.7-3 1a65.7 65.7 0 00-3.7 1.4c-.8.3-1.6 1.3-1.6 1.3s1.2 1.3 2.6 1.1c1.2-.1 1.7-.4 2.3-.7.6-.3.6-.6 1.4-1.2 1-.7 1.6-2 2-3zm-5.7 1.1c-.3.6-1.1.5-1.6.5l-.2.2c.6 0 1.5 0 2-.5l-.2-.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M346.6 205c-1 1-2.8 2-4.7 2.8a14 14 0 01-5 1l-.2.3c1.4-.1 3.4-.4 5-1.1a14.9 14.9 0 004.9-3zm-2.4 4.6c-2-.1-3 .5-4.8.9-1.7.4-3.7-.5-4.8 1.1 4.4 2.9 7.6 1 9.6-2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M340.2 213.6c-.8-.8-8-3.2-9.2-.5 1.7 2 6.8 2.4 9.2.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M338.5 215.5l-2.5-.4c-1-.1-1.3-.3-1.9-.4-1-.1-2.3-1.6-6-.5 1.4 3.4 6.4 4 10.4 1.3zm1.6-1.9c-3.8.8-8.3 0-10.1-1l-.3.2a16.3 16.3 0 0010.4.8zm4-4c-2.2 1.5-5.2 2.6-11.4 1.8v.2c8.5.7 9.3-.8 11.4-2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M338.5 215.5c-3 .1-4.7 1.4-10.3-1.3l-1.4-.6-.5.2 1.4.4c7 3 6.8 1.6 10.8 1.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M327.3 211.6a.4.6 66.2 10.4.7.4.6 66.2 00-.4-.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M327.1 212.3c-.6.1-.8.9-.8 1.3l-.4.2c.2-.6.4-1.4 1.2-1.7v.1z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M346 186.8a.4.6 15.8 11-1-.2.4.6 15.8 011 .2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M341.6 203.2c-.1-2.1-1.1.8-3.2-3.9-.6-1.4-.6-2.2-1-4.3 1.2 1.8 3 2.3 3.8 3.6.7 1.4.5 3.5.4 4.6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M337.5 195.2s1 2.4 2.4 4a7.9 7.9 0 011.8 3.7"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M338.5 197.2c1.3 1.7 3 3.8 3 6h.3c-.3-2.8-2-4.1-3-5.6l-.3-.4zm10.8 2.7c-1 .7-2 1-2.7 1.4l-1.4.9c-.4.2-1 .2-1.4.5-.7.5-2 2-2 2s1.3 1.1 2 1c2.4-.5 3.1-1.4 4.3-2.3 1-.8 1-2.5 1.2-3.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M340.7 204.8l-.2.4c1.3-.2 3.5-1.5 5-2.2 1.8-1 3-1.7 3.7-3a8.9 8.9 0 01-3.9 3c-1.5.7-3.7 2-4.6 1.8zm9.4-9.5c-.8.9-1.7 1.3-2.4 1.8l-1.3 1.1-1.2.8c-.6.6-1.5 2.2-1.5 2.2s.7.7 1.4.4c2.4-.3 3.1-1.4 4-3.5.5-1 1-1.8 1-2.8z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M341.5 199.4a.6.4 62 10.8-.3.6.4 62 00-.8.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M342.5 201.6l-.2.3c2.9-1.3 6.6-3.9 7.8-6.5a17.2 17.2 0 01-7.6 6.2zm8.3-10.7c-.7 1-1.6 1.4-2.2 2l-1 1.1-1.2.9c-.5.6-1.2 2.2-1.2 2.2s.8.9 1.5.5a12 12 0 002.1-1.6c.5-.4.6-1.4 1.2-2.2.7-1 .8-1.9.8-2.9z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M348.7 193.8c-1.4 1.6-3 3.1-4.6 3.8l-.2.4c2.6-1.5 3.7-2.8 4.9-4.1zm1-5.6c-.4 1-1 1.5-1.6 2l-.8 1.2-1 .9-.7 2.1s.6.6 1.2.2a12 12 0 001.8-1.6c.4-.5.6-1.4 1-2.2a4 4 0 00.2-2.6zm-4.3-1.1l-.5 1.6v-.4c0-.4.2-.9.4-1.3l.1.1z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M348.4 191a13 13 0 01-3.8 4v.3c2.2-1.6 3-3 3.8-4.2zm-5.6 10c-.2-.6-.3-1-.6-1.4.2.5.4 1 .4 1.6l.1-.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M341.9 181.3a.4.3 39.5 01-.5.5.4.3 39.5 01.5-.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.1 182.5l-1.2-.8 1.3 1v-.2zm5.6.4c-1.2 2.4-3.9 4-2.8 7.5 2.8 2.6 3-4.5 2.8-7.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M346.1 177.7c-.5 2.4-2.6 4.4-1.2 7.6 4 1 2-4.3 1.2-7.6z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.7 174c2 3.7 2.5 5.9.2 8.3 0 0-1.3-1.1-1.6-3.3-.2-1.8 1.2-4 1.4-5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M340.4 171.8c.5 2.4-1.5 3.5 1.4 6.5 2.1-2.4 1.1-3-1.4-6.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M339.6 176c-3.3.3-2-2.6-3-5.3 2 1.5 4.7 2.1 3 5.3zm2.2 4.4c-1-4.4-4-2.6-5.6-4.6.9 2.9 2.1 4.8 5.6 4.6zm1.4 4.1c-2.6-.1-4.8-1.4-6.2-4.4 2.7 1.2 5.7 1.4 6.2 4.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.6 188.3c-1-1.2-1-2-1.5-2.7a9 9 0 00-3-3.7c0 3 .4 6.5 4.5 6.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M344.2 191.6a20 20 0 00-5.6-5.7c1 2.2.6 6.3 5.6 5.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.7 196c-5-.1-4.5-4.8-4.5-7 .9 1.4 2 2.5 2.8 3.5.9 1 1.8 2.2 1.7 3.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.1 198.8c-.4-1 0-1.4-1-2.3-1-1-2.8-2.7-3.7-4.6-.1 1.7-.2 4.4 1.2 5.3 1 .7 2 .9 3.5 1.6zm-4.3 7.3c-3.9-3-1.6-5.6-1.2-7.9 1 2.6 3.7 4.8 1.2 7.9zm1.6-29.2c-1.3-2.3-2-3.6-3.7-6 2 2.7 2.8 4.5 3.9 6.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M338.9 206.8c.1-3-.7-5.7-1.3-8.5.5 3 1.3 6 1 8.8l.3-.3zm4.6-7.4c-.4-1.8-4.1-3-5-7.5.7 4.4 4.5 5.5 4.8 8l.2-.5zm.8-2.5l-.1.5c-.6-3-4-4.4-5-8.4 1.5 4.3 4.3 4.9 5.1 7.9zm.7-4.4c-1.7-2.6-4.1-3.6-6.4-6.7 2.1 3 4.8 4.4 6.4 7v-.3zm0-3.5c-2-.8-3.9-3-6-7.1 1.4 3 3 5.8 6 7.6v-.5zm-1-4c-2.1-1.7-5-2.8-7-4.9 1.7 2 5 3.3 7.1 5.2v-.3zm-1.6-4.3c-2.2-1.5-4.4-2-6.2-4.8 1.5 2.8 3.8 3.5 6.3 5l-.1-.2zm6.3 2.2c-.8 3.1-1.5 6.3-3.6 8.4v-.4c1-.5 2.5-3.7 3.6-8zm-2.6-5.1c-.1 3.2 0 6.5-1.7 8.3l-.1-.3c1.6-1.4 1.5-5 1.8-8zm-2.2-3.6c.5 2.8.6 5.3-.2 9.5l-.1-.3c.4-2.4 1-5 .3-9.2zm-3.4-2.3c1.1 2.4 2 4.8 1.2 7.4l-.2-.3c.9-2.4-.1-4.7-1-7zm-4.4 31.2c1.4 3.2-.4 5.6-2.5 7-1.6-4.7 1.8-4.2 2.5-7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M336.2 203.1c.2 2-2 4.2-2.6 7.6l-.3.2c1-4 3-5.6 2.9-7.8z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M343.7 181.2a.3.4 1.9 11-.6-.1.3.4 1.9 01.6.1z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.5 183v-1.6h-.2v1.7l.2-.1z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M342.8 180.9a.3.4 2 01-.5.2.3.4 2 01.5-.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M343.2 182.3l-.5-1.1.4 1.4v-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M344.7 186.9a.4.3 80.5 11-.7 0 .4.3 80.5 01.7 0z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M344.9 188.6a9.3 9.3 0 00-.4-1.4h-.1l.4 1.6v-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M343.6 187.2a.4.3 57 11-.5.5.4.3 57 01.5-.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M344.8 188.6a8.8 8.8 0 00-1.2-1v.1l1.3 1.1-.1-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M343.4 199.1a.3.4 12.7 11-.7-.2.3.4 12.7 01.7.2z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M342.8 200.8c.2-.5.2-1 .2-1.5a9 9 0 01-.4 1.7l.2-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M344 199.9a.3.4 50.5 10.5.4.3.4 50.5 10-.5-.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M342.7 201l1.3-.8v.1a8.7 8.7 0 00-1.3 1v-.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M340.7 205a.3.4 40.4 11-.4-.6.3.4 40.4 01.4.5z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M339.5 206.2l.9-1.3h-.1l-1 1.3h.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M338.8 204.5a.5.6 10 001 .1.5.6 10 10-1 0z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M339.4 205c-.3.7 0 1 0 1.2l-.1.3c-.2-.4-.3-.8-.1-1.5h.2zm-12.1 9.5c-.7 0-1-.4-1.3-.8h-.3c.4.5.8 1 1.5 1v-.3z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M327.3 215.2a.6.4 9.5 01.2-.9.6.4 9.5 11-.2.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M332.7 206a5.5 5.5 0 01-4 6.4c-.9-4 2.8-4 4-6.3z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M332.7 206.1a21 21 0 01-4.8 7.2h-.5c2.7-2.1 4.2-4.9 5.3-7.2z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M327.8 213.3a.5.4 9.8 11-.4-.7.5.4 9.8 01.4.7z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M326 213.8a8 8 0 001.4-.7h-.1l-1.7.6h.3zm2.5-5c0 1.2-1 2.4-2 3.2-.9.9-1 1.2-2.2 1.6-1.2-2.8 2.8-3.3 4.2-4.8z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M328.5 208.8c-1.3 2.5-3.5 3.8-4.7 5.4h-.1c1.6-2.2 3-2.7 4.8-5.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M300.4 175.5c-1.7 2.9-4.4 8-5.1 12a22.5 22.5 0 007 20.8c5.2 4.7 13.3 6 16.6 6.8 3.4.7 5.8 1.8 6.4 2.5 0-.5 0-1-.5-1.6-1.6-.7-4.2-1-7.8-1.8-7.2-1.5-14.9-4.2-19-12.2-5.4-10.3-2.2-18.4 2.5-26.4z"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M314.1 213.6c-.2.4-4 3.7-7.5 3.5-2.5-.2-2.9-.8-2.9-.8s-.2-.7 2-1.1c2.3-.5 6.2-2 8.4-1.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M303.8 216.3c2.7.3 5.5-.8 7.7-1.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M311.2 208.7a11 11 0 014.6 3.7c.9 1.5.7 1.9.7 1.9s-.2.3-1.3-1c-1-1.2-3.4-3.3-4-4.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M316.5 214.2c-.9-1.7-2.5-3-3.7-4.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M300.3 175.8c-.1-.3.3-3.4 2-4.4 1.3-.7 1.8-.5 1.8-.5s.3.3-.5 1.3c-1 1-2.1 3.2-3.3 3.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M304 171c-1.4.7-2.3 2.2-3 3.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M299.4 177.4c-.2-.2-1-3-.2-4.7.5-1.3.9-1.4.9-1.4s.3 0 .1 1.3c-.2 1.3-.2 3.8-.8 4.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M300 171.4c-.6 1.3-.6 3-.6 4.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M299.4 177.5c.2 0 2.7-.8 3.9-2.1.8-1 .8-1.3.8-1.3s-.2-.2-1.1.5c-1 .8-3 2-3.6 2.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M304 174.1c-.9 1.1-2.2 2-3.3 2.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M298.2 179.6a10 10 0 01-.9-5.2c.3-1.6.6-1.7.6-1.7s.4 0 .4 1.4c0 1.5.3 4.2-.1 5.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M298 172.7c-.5 1.7-.2 3.6 0 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.3 181.6c-.3-.2-2.3-3-2-5.2 0-1.7.5-2 .5-2s.3-.1.6 1.4c.3 1.6 1.2 4.3.9 5.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M295.7 174.5c-.2 1.8.5 3.7 1 5.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.2 184.1a9.9 9.9 0 01-2.4-4.7c-.2-1.5 0-1.8 0-1.8s.4-.1.8 1.3c.4 1.4 1.6 3.9 1.6 5.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M293.9 177.7c.1 1.7 1 3.4 1.5 4.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M298.2 179.6c.3 0 3.2-.2 4.6-1.7 1-1 1-1.5 1-1.5s-.2-.3-1.4.4c-1.1.8-3.4 1.8-4.2 2.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M303.7 176.5c-1 1.2-2.7 1.9-4 2.5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.3 181.6c.2 0 3.2 0 4.6-1.4 1.1-1 1-1.4 1-1.4s0-.3-1.2.3c-1.2.7-3.6 1.5-4.4 2.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M303 178.9c-1.2 1-2.8 1.7-4.1 2.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.4 184.2c.2 0 3.4-.2 4.9-1.7 1-1.1 1-1.5 1-1.5s-.1-.4-1.4.3c-1.2.8-3.7 1.8-4.5 2.9z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M302.3 181c-1.2 1.3-2.9 2-4.3 2.5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.8 183s-.3-.5-.3-1c0-.6.2-.8.2-.8l-.2-.2-.1.9v.3l-.5-.5a10.8 10.8 0 01-.1-.4h-.2l.3.7c.5.4.8 1.1.8 1.1"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.6 180.3a.5.4 83.5 11.1 1 .5.4 83.5 11-.1-1z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.8 180.3a.4.5 19.3 11-.3 1 .4.5 19.3 11.3-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.7 183l1-.7c.3-.4.3-.7.3-.7h.2l-.4.8-.2.2.6-.1.4-.2.1.1-.6.4c-.6 0-1.3.3-1.3.3"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M299.4 181.6a.4.5 45.6 10-.8.8.4.5 45.6 10.8-.8z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M298.4 180.8a.4.5 19.8 10-.3 1 .4.5 19.8 10.3-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.4 186.9c-.2-.2-2.4-2.6-2.8-4.8-.3-1.6 0-1.9 0-1.9s.3-.1.8 1.3c.6 1.5 2 4 2 5.4z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M292.6 180.3c.2 1.8 1.2 3.5 2 4.9"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.6 186.9c.3 0 3.5-.4 5-2 1-1.3 1-1.7 1-1.7s-.2-.4-1.4.5-3.8 2-4.6 3.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M301.5 183.2c-1 1.4-2.8 2.2-4.2 3"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.2 189.6c.3 0 3.5-.9 5-2.6 1.1-1.3 1-1.7 1-1.7s-.1-.2-1.4.7c-1.2 1-3.8 2.5-4.6 3.6z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M301.2 185.4c-1.1 1.4-3 2.4-4.3 3.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295 189.6c-.3 0-3.3-2.2-3.8-4.5-.3-1.7 0-2 0-2s.5-.3 1.2 1.2c.7 1.4 2.5 3.8 2.7 5.3z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M291.3 183.2c.3 1.8 1.5 3.5 2.5 4.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.2 193a11 11 0 004.6-3.6c.9-1.5.7-1.8.7-1.8s-.2-.3-1.3 1c-1 1.2-3.4 3.1-4 4.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M300.5 187.7c-1 1.6-2.5 3-3.8 4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295 193.2c-.3 0-3.6-1.7-4.4-4-.7-1.6-.4-2-.4-2s.4-.4 1.3 1c1 1.3 3.1 3.5 3.5 5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M290.3 187.2c.5 1.8 2 3.4 3.2 4.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295 191.6s-.4-.5-.5-1c-.2-.6 0-.9 0-.9h-.3v.8l.2.4-.6-.4-.3-.5-.2.2.5.6c.6.2 1.1 1 1.1 1"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M293 189a.6.4 69.4 11.4 1.2.6.4 69.4 11-.4-1.1z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M294.3 188.7a.4.6 5.2 110 1.2.4.6 5.2 110-1.2z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295 191.6s.6-.5.8-1c.3-.5.2-.8.2-.8h.3l-.3.8-.1.4.6-.3.4-.4.1.2-.6.5c-.6.1-1.2.7-1.2.7"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.5 189.4a.4.6 31.5 10-.6 1 .4.6 31.5 10.6-1z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.3 188.9a.4.6 5.7 10-.1 1.1.4.6 5.7 100-1.1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.4 196.2a12 12 0 01-5.1-4c-1-1.7-.8-2.1-.8-2.1s.2-.3 1.4 1c1.3 1.4 3.8 3.6 4.5 5.1z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M289.5 190.2c1 1.8 2.8 3.3 4.2 4.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.6 196.2c.4 0 4-1.9 5-4.4.6-1.8.3-2.3.3-2.3s-.4-.3-1.4 1.2c-1 1.4-3.4 3.8-3.9 5.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M300.9 189.6c-.7 2-2.3 3.7-3.6 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.6 199.3c.3-.1 3.7-2.3 4.5-4.8.7-1.9.4-2.3.4-2.3s-.4-.3-1.3 1.3c-1 1.5-3.2 4-3.6 5.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M301.5 192.3c-.7 2-2.2 3.8-3.4 5.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M296.3 199.3c-.4 0-4.7-1.3-6.2-3.8-1-2-.9-2.5-.9-2.5s.4-.4 1.8 1c1.5 1.4 4.5 3.5 5.3 5.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M289.3 193.1c1.1 2 3.3 3.6 5 4.8"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M300.1 205.7c.3-.2 2.6-3 2.8-5.6.2-1.8-.2-2-.2-2s-.3-.2-.8 1.4c-.5 1.7-1.8 4.6-1.8 6.2z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M302.8 198.1c-.1 2-1 4-1.8 5.6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M300 205.6c-.5.2-5.4 0-7.7-2.1-1.6-1.6-1.5-2.2-1.5-2.2s.2-.5 2.1.5c2 1 5.7 2.3 7 3.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M290.9 201.4c1.7 1.7 4.4 2.6 6.5 3.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M298.2 203c-.4.1-4.8-1-6.8-3.1-1.6-1.6-1.5-2.1-1.5-2.1s.2-.4 2 .8c1.6 1.2 5 3 6.3 4.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M290 197.9c1.6 1.7 4 3 5.8 4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M298.4 203c.4-.2 3.6-2.9 4-5.6.2-2-.2-2.5-.2-2.5s-.5-.2-1.2 1.5c-.7 1.8-2.6 4.7-2.6 6.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M302.2 195c-.2 2.2-1.5 4.3-2.5 6"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.4 201.5l-1-.8c-.4-.5-.5-.9-.5-.9h-.3a8 8 0 00.8 1.2l-.8-.1-.5-.3v.2l.7.4c.7 0 1.6.5 1.6.5"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M294.2 199.8a.7.5 45.9 111 1 .7.5 45.9 11-1-1z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M295.4 198.8a.7.5 71.6 11.4 1.3.7.5 71.6 11-.4-1.3z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.5 201.4s.4-.6.4-1.3l-.1-1h.2a7.8 7.8 0 00.1 1.3l.6-.5.2-.6.2.1-.4.8c-.6.5-1 1.4-1 1.4"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M299.1 198.2a.5.7 8 10-.2 1.3.5.7 8 10.2-1.3z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M297.6 198.1a.7.5 72.2 10.4 1.3.7.5 72.2 10-.4-1.3z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M301.8 207.6c-.3.2-4.3 1-6.8-.3-1.8-.9-2-1.4-2-1.4s0-.5 2 0c1.8.4 5.2.7 6.8 1.7z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M293.1 206c2 1 4.4 1.2 6.3 1.4"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M302 207.5c.2-.1 2-2.5 1.9-4.8 0-1.7-.4-2-.4-2s-.3-.2-.6 1.3c-.2 1.5-1 4-.9 5.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M303.5 200.8c.2 1.8-.4 3.6-.9 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M305.5 210.3c-.3.3-5 1.5-8 .3-2-1-2.1-1.5-2.1-1.5s0-.5 2.2-.1c2.1.3 6.2.4 8 1.3z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M295.5 209.2c2.2 1 5 1 7.3 1.1"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M305.8 210.3c.2-.3 1.2-3.8 0-5.6-1-1.4-1.5-1.3-1.5-1.3s-.4 0 0 1.5c.3 1.5.5 4.3 1.5 5.4z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M304.4 203.4c1 1.4 1.1 3.4 1.3 5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M303.3 208.7s-.5.4-1.2 0c-.6-.3-.8-.7-.8-.7l-.3.2 1 .7.3.2-.9.2-.6-.1v.3h1a13.6 13.6 0 001.5-.5"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M299.5 208.7a.8.5 24.1 111.4.7.8.5 24.1 11-1.4-.7z" overflow="visible" style="marker:none"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M300.3 207.2a.8.5 49.9 111 1.2.8.5 49.9 11-1-1.2z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M303.4 209s.6-.5.2-1.2l-.6-.9.1-.2.7 1 .2.3.2-.9v-.6h.2v1l-.5 1.5"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M303.7 205.1a.8.5 69.5 10.6 1.5.8.5 69.5 10-.6-1.5zm-1.5.8a.8.5 43.7 101 1 .8.5 43.7 10-1-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M308.3 211.8c-.3.4-4.2 3-7.4 2.3-2.3-.4-2.6-1-2.6-1s-.1-.6 2-.8c2.2-.1 6-1 8-.5z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M298.4 213.1c2.5.6 5.2 0 7.3-.5"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M310.8 212.6s-.5.7-1.3.5a3 3 0 01-1.2-.5l-.3.3 1.3.4.5.1-.9.6-.7.1v.3l1.2-.3c.2 0 1.4-1 1.4-1"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M306.6 214a.9.6 5.4 111.7.2.9.6 5.4 11-1.7-.1zm.4-2a.9.6 31.2 111.5 1 .9.6 31.2 11-1.5-1z" overflow="visible" style="marker:none"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M309.5 212.2c.2-.3.7-4-1-5.6-1.1-1.2-1.7-1-1.7-1s-.5.1.1 1.5c.7 1.4 1.4 4.2 2.6 5.1z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M306.8 205.6c1.4 1.2 1.9 3.2 2.3 4.7"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M311.4 213s.2-.7-.5-1.2c-.6-.5-1.1-.6-1.1-.6v-.4l1.2.7.4.3c.4.3 0-.8-.2-1l-.4-.7.3-.2.5 1 .2 2"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M309.7 209a.9.6 42.7 101.3 1.1.9.6 42.7 10-1.3-1.2zm-1.2 1.5a.9.6 17 101.7.6.9.6 17 10-1.7-.6z" overflow="visible" style="marker:none"/>
+  <path fill="#452c25" d="M319.1 209s-2.3 5.4-1.5 6c0 0 2.4-4.3 4.4-5.8 1.1-1 1.8 0 2-1 0-.8-3-2.1-3-2.1l-1.8 2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M319.1 209s-2.3 5.4-1.5 6c0 0 2.4-4.3 4.4-5.8 1.1-1 1.8 0 2-1 0-.8-3-2.1-3-2.1l-1.8 2.7"/>
+  <path fill="#452c25" d="M310.6 213.1s-3.4 6-2.5 6c.8 0 4.5-7.5 4.5-7.5l-1.3.2-.7 1.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M310.6 213.1s-3.4 6-2.5 6c.8 0 4.5-7.5 4.5-7.5l-1.3.2-.7 1.3z"/>
+  <path fill="#452c25" d="M311.6 211.5s-3.6 5.8-2.7 5.9c1 .1 4.8-7.4 4.8-7.4l-1.3.1-.8 1.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M311.6 211.5s-3.6 5.8-2.7 5.9c1 .1 4.8-7.4 4.8-7.4l-1.3.1-.8 1.4z"/>
+  <path fill="#452c25" d="M312.3 210.5s-4 5.4-3.2 5.6c1 .2 5.4-7 5.4-7l-1.3.1-.9 1.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.3 210.5s-4 5.4-3.2 5.6c1 .2 5.4-7 5.4-7l-1.3.1-.9 1.3z"/>
+  <path fill="#452c25" d="M313.4 209.5s-4.8 4.9-3.9 5.2c.8.3 6.2-6.2 6.2-6.2l-1.2-.1-1.1 1.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.4 209.5s-4.8 4.9-3.9 5.2c.8.3 6.2-6.2 6.2-6.2l-1.2-.1-1.1 1.1z"/>
+  <path fill="#452c25" d="M313.6 207.7s-4.2 5.4-3.3 5.6c.9.2 5.5-6.9 5.5-6.9l-1.3.1-1 1.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.6 207.7s-4.2 5.4-3.3 5.6c.9.2 5.5-6.9 5.5-6.9l-1.3.1-1 1.2z"/>
+  <path fill="#452c25" d="M312.5 212.4s-4 5.5-3.2 5.6c1 .2 5.4-7 5.4-7l-1.3.1-.9 1.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.5 212.4s-4 5.5-3.2 5.6c1 .2 5.4-7 5.4-7l-1.3.1-.9 1.3z"/>
+  <path fill="#452c25" d="M314.8 211.3s-2.4 4.5-2.1 4.6c.3.2 3.1-2.5 4.6-5.2 1.4-2.6-2.6.5-2.6.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.8 211.3s-2.4 4.5-2.1 4.6c.3.2 3.1-2.5 4.6-5.2 1.4-2.6-2.6.5-2.6.5"/>
+  <path fill="#452c25" d="M315 210.8s-2.3 5.5-1.5 6c0 0 3-3.3 3.7-5.9.8-2.6 0-.1 0-.1l-.2-2.9-2 2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M315 210.8s-2.3 5.5-1.5 6c0 0 3-3.3 3.7-5.9.8-2.6 0-.1 0-.1l-.2-2.9-2 2.7"/>
+  <path fill="#452c25" d="M313.8 210.4s-4.7 4.8-3.9 5.1c.9.3 6.3-6.1 6.3-6.1l-1.3-.1-1 1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.8 210.4s-4.7 4.8-3.9 5.1c.9.3 6.3-6.1 6.3-6.1l-1.3-.1-1 1z"/>
+  <path fill="#452c25" d="M314.2 211s-4.7 5-3.9 5.2c.8.3 6.2-6.2 6.2-6.2h-1.2l-1.1 1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.2 211s-4.7 5-3.9 5.2c.8.3 6.2-6.2 6.2-6.2h-1.2l-1.1 1z"/>
+  <path fill="#452c25" d="M314.6 211.8s-4.8 4.9-4 5.2c1 .3 6.3-6.2 6.3-6.2h-1.2l-1.1 1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.6 211.8s-4.8 4.9-4 5.2c1 .3 6.3-6.2 6.3-6.2h-1.2l-1.1 1z"/>
+  <path fill="#452c25" d="M315 205.1s-3.6 4.5-3 5.3c.4.8 3.6-2 4.7-4 1-2-1.7-1.4-1.7-1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M315 205.1s-3.6 4.5-3 5.3c.4.8 3.6-2 4.7-4 1-2-1.7-1.4-1.7-1.4"/>
+  <path fill="#452c25" d="M314.8 209.9s-3 5.8-2.2 5.5c.8-.4 3.8-4.7 4.2-5.7.3-1 .2-2 .2-2l-2.3 1.5.2 1.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.8 209.9s-3 5.8-2.2 5.5c.8-.4 3.8-4.7 4.2-5.7.3-1 .2-2 .2-2l-2.3 1.5.2 1.1"/>
+  <path fill="#452c25" d="M314.8 208s2.5-4.6 0 .9-3.4 4.5-3.4 4.5c-.2-.3 2.2-4 2.2-4s1.7-2.8 2.1-3.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.8 208s2.5-4.6 0 .9-3.4 4.5-3.4 4.5c-.2-.3 2.2-4 2.2-4s1.7-2.8 2.1-3.1"/>
+  <path fill="#452c25" d="M317.5 207.4s2.8-4.6 0 .9c-2.8 5.4-3.9 4.5-3.9 4.5-.2-.3 2.5-4 2.5-4s2-2.8 2.4-3.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M317.5 207.4s2.8-4.6 0 .9c-2.8 5.4-3.9 4.5-3.9 4.5-.2-.3 2.5-4 2.5-4s2-2.8 2.4-3.1"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M316.5 205.5s-3.5 4.5-3 5.2c.5.8 3.7-2 4.7-4s-1.7-1.4-1.7-1.4"/>
+  <path fill="#e8a30e" d="M352.8 251a32.8 37 0 11-65.6 0 32.8 37 0 1165.6 0z"/>
+  <path fill="none" stroke="#390" stroke-width=".8" d="M293.7 251c0-17 12-30.2 26.3-30.2s26.3 13.1 26.3 30.3" color="#000" font-family="Sans" font-weight="400" overflow="visible" style="line-height:normal;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration-line:none;text-transform:none;block-progression:tb;marker:none"/>
+  <path fill="#007934" stroke="#eee" stroke-width=".1" d="M287.2 253c1 19.5 15.3 35 32.8 35s31.9-15.5 32.8-35h-65.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M352.8 251a32.8 37 0 11-65.6 0 32.8 37 0 1165.6 0z"/>
+  <path fill="#d52b1e" stroke="#000" stroke-width=".1" d="M314.5 225.4c-.3 1.4 0 2.5.7 3.6.6.9 1 1.8.9 2.7a7.9 7.9 0 00-.7.5l-5.5-3.7 3.7 5.5a8 8 0 00-.2.2 4.9 4.9 0 00-3-.3 5 5 0 01-3.7-.8 4.5 4.5 0 003.1 2.1 5 5 0 012.6 1.3 8 8 0 00-.2.8l-6.6 1.3 6.6 1.3v.3a4.9 4.9 0 00-2.4 1.9 5 5 0 01-3 2c1.3.4 2.5 0 3.6-.7a5 5 0 012.7-.9l.4.7-3.6 5.6 5.4-3.7.3.2a4.9 4.9 0 00-.4 3 5 5 0 01-.7 3.6 4.5 4.5 0 002-3.1 4.9 4.9 0 011.4-2.5l.8.2 1.3 6.5 1.3-6.5h.3a4.9 4.9 0 001.8 2.3 5 5 0 012.1 3.1 4.4 4.4 0 00-.7-3.6 4.9 4.9 0 01-.9-2.8l.7-.4 5.5 3.7-3.7-5.5.2-.3c1 .5 2 .6 3 .4a5 5 0 013.7.7 4.5 4.5 0 00-3.1-2 4.9 4.9 0 01-2.6-1.4l.2-.8 6.6-1.3-6.6-1.2a7.9 7.9 0 000-.4 4.9 4.9 0 002.4-1.8 5 5 0 013-2 4.5 4.5 0 00-3.6.7 4.9 4.9 0 01-2.7.8 7.9 7.9 0 00-.4-.7l3.7-5.5-5.5 3.7a8 8 0 00-.3-.2c.5-1 .6-2 .4-3a5 5 0 01.7-3.6 4.5 4.5 0 00-2 3 5 5 0 01-1.4 2.6 8 8 0 00-.8-.2l-1.3-6.5-1.2 6.5h-.4a4.9 4.9 0 00-1.8-2.3 5 5 0 01-2-3.1z" overflow="visible" style="marker:none"/>
+  <use width="330" height="330" fill="#fcbf49" stroke-width="1.1" transform="rotate(22.5 -417.9 955.8) scale(.14262)"/>
+  <use width="330" height="330" fill="#fcbf49" stroke-width="1.1" transform="matrix(-.14262 0 0 .14262 334 232.7)"/>
+  <path d="M325.9 236.7c-1.7-1.4-3.8-1.6-4.9-.6-.8 1.1-.8 2.4.2 3.8a.5.5 0 00-.3.2 4.9 4.9 0 01-.3-4.1c1.5-1.3 3.7-1.4 5.2.7"/>
+  <path d="M323.3 236.3c-1 0-1.2.2-1.6.5-.4.4-.6.3-.7.4 0 0 0 .3.1.2.2 0 .5-.2.9-.6.4-.3.8-.3 1.3-.3 1.3 0 2 1 2.1 1 .2 0-.7-1.2-2.1-1.2"/>
+  <path d="M325 237.5c-1-1-2.7-1-3.4 0h.2c.8-1 2.5-.6 2.6 0"/>
+  <circle cx="323.1" cy="237.4" r=".6"/>
+  <path d="M321.6 237.6c.7.6 2.2.7 3.3-.1h-.5c-.7.7-1.8.6-2.5 0"/>
+  <path d="M325 237.8c-1.2 1-2.4.9-3.1.5-.7-.5-.7-.6-.6-.6l.8.4c.6.3 1.5.3 2.9-.2m-3.5 2a.4.4 0 11-.6.5c0 .1-.3.6-.9.6h-.1l.1.2c.1 0 .6 0 .9-.2a.6.6 0 10.6-1m.9 3c-.7-.5-1-1-1.7-1a2 2 0 00-.7.1h-.1l.1.2c.3 0 .7-.3 1.2 0l1.2.7m-.3 0c-1.4-.5-1.7-.2-2.1-.2h-.1l.1.3c.6 0 .9-.4 2.1-.1"/>
+  <path d="M322.4 243c-1.6-.2-1.1.8-2.4.8h-.1l.1.2c1.6 0 .9-.9 2.4-1m-8.2-6.3c1.6-1.4 3.7-1.6 4.8-.6.8 1.1.8 2.4-.2 3.8a.5.5 0 01.3.2 5 5 0 00.3-4.1c-1.5-1.3-3.7-1.4-5.2.7"/>
+  <path d="M316.7 236.3c1 0 1.2.2 1.6.5.4.4.6.3.7.4 0 0 0 .3-.1.2a4.1 4.1 0 01-.9-.6c-.4-.3-.8-.3-1.3-.3-1.3 0-2 1-2.1 1-.2 0 .7-1.2 2.1-1.2"/>
+  <path d="M315 237.5c1-1 2.7-1 3.4 0h-.2c-.8-1-2.5-.6-2.6 0"/>
+  <circle cx="-316.9" cy="237.4" r=".6" transform="scale(-1 1)"/>
+  <path d="M318.4 237.6c-.7.6-2.2.7-3.3-.1h.5c.7.7 1.8.6 2.5 0"/>
+  <path d="M315 237.8c1.2 1 2.4.9 3.1.5.8-.5.8-.6.6-.6l-.8.4c-.5.2-1.5.3-2.9-.2m3.5 2a.4.4 0 10.6.5c0 .1.3.6.9.6h.1l-.1.2c-.1 0-.6 0-.9-.2a.6.6 0 11-.6-1m-.9 3c.7-.5 1-1 1.7-1l.7.1h.1l-.1.2c-.3 0-.7-.3-1.2 0l-1.2.7m.3 0c1.4-.5 1.7-.2 2.1-.2h.1l-.1.3c-.6 0-.9-.4-2.1-.1"/>
+  <path d="M317.6 243c1.6-.2 1.1.8 2.4.8h.1l-.1.2c-1.6 0-.9-.9-2.4-1"/>
+  <path fill="#007934" stroke="#000" stroke-linecap="round" stroke-width=".1" d="M323.2 258.4c1.6.2 3.3.2 4.7-.3a9.9 9.9 0 014.2-.6c0-.2.5-.3.2-.5-.5-.3-1.2-.3-1.8-.6-1-.5-1.7-1.3-2.7-2-.1 0-.6-.3-.6-.5 2.2 3.2 7.5 1.5 12 1.2.4.1 1.5-.2 2.4-.5 1-.4 3.6 0 4.3-.5l-1.3-1c-.6-.8-2.3-.7-3-1.5-1.3-1.5-3.3-1.9-4.9-3-.3-.3-1-.2-1.6-.3-.6-.6 0-.5-5-4.7-4.5-1.8-4.2-3.2-7-4.3-1-.5-1.9-1.4-2.7-1.1a30 30 0 00-6.3 3c-1.2.6-2.7 2-3.8 2.8-.2.2-3.4 2.9-7 4.8a115 115 0 01-9.2 4.8c8-.4-7.3 2.3 29.1 4.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M303.3 249c2-1 10-5.3 12.4-8.4-.4 0 .6 1 .5 1.4.8 0 .4-1 1-1 .5 0 .9-.1 1.3-.3.5 0 .2.2.2.4-.7 1.2-2 2-3.2 2.9l.2.4c.4 0 .9 0 1.1-.2l.1-.3c.4.1.3.5.1.7-.3.6-1.4.5-1.8 1a6.2 6.2 0 01-1.5 1.7c.5-.4 1-1 1.7-1 1 0 1.3-.7 2.2-.9.9-.1 1.5-.9 2.2-1.4-.3.4-.9.7-.7 1.2a.6.6 0 00.6.2c-.7.8-2 1.4-2.4 2.4-.4-.2-.7.2-1 .2-.4.1-.3.8-.6 1-1.2.7-1.8 1.8-2.3 2.7l-1.3.7c-.7.3-4.6 3.4-4.7 3-.3-2.1-4.3 1.6-13.3-1.6m30.6-.1l-.2-.2c.1-.3-.5-.4-.5-.7 1 0 1.8 1.2 2.5.5.1-.1-.3-.4.4-.6 0 0-.2-.1-.1-.2h-.8l-.8-.3c-.3-.1-.5-.5 0-.6 1-.1 1.9.5 2.6.2.6-.3 1.1-.3 1.7-.5.3-.1 1.2 0 .9.2-.2.2-.7.1-1 .2-.5.1-1 .4-1.4.6.3 0 .2.3.7.2a6 6 0 012-.4v-.5h.3c-.3-.5.6-.2 1-.6l.1.1c-.5.2-.3.5-.4.8 0 0-.3 0-.2.2.2.2.2-.2.5 0h.6c.3 0 .7-.1.5-.4-.3-.2-.6-.5-.6-.8l-.1-.1c.5 0 1 .2 1.1.4.3.3.3.6.8.7.8.2.7-.2.7-.6.7 0 1.6.3 1.4.6 0 .3-.6.5-1 .5s-.2.3-.4.3c-.4 0-.9 0-1 .2-.2.2 0 .7.3.9.4.2 1.2 0 1.8 0 .1-.3.5-.4.9-.6.4-.3-.2-.5-.5-.7-.3 0 0-.1 0-.3.3-.3.9 0 1-.2.1-.3-.1-.6.1-.8.2-.1.5.1.4.3l.7-.2c.3 0 .5.3.4.4-.5.2-.8.4-.7.8 0 .2-.5.3-.3.5.4.3.4.5.5.9.2.3 1 .4 1.6.3-.2-.7 1.4-.4 2-.5.1 0 .1-.1 0-.2-.3-.2-.3-.3-.3-.6l-.1-.1c1 .3 2.8.8 3.6 1.4-1 .2-2.8-.2-3.8 0a15 15 0 01-3.7.6c-.5 0-1-.3-1.6-.3m-11.3-.7l-.4-.1"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M321.2 259.1c2 0 2.2 1.4 3.5.1 1.1.2 2.2-.2 2.2-.3 2.7.6 11.1-.2 10.6-.8-.9-1-2.3-1.4-3.4-2.2l-1.1-.4c-.7-.2-1.5 0-2-.3l-2.6-1.5c-.5-.4-.7-1-1.2-1.4-.6-.4-1.4-.5-2-.7-.9-.4-1.4-1.2-2.2-1.9l-1.1-.4c-.7-.3-1.2-1.1-1.9-1-1 .2-1.7 1-2.8 1.6-1 .4-1.4 1.1-2.2 1.6-.2.2-2.6 1.8-5.3 2.9a72.6 72.6 0 01-6.6 2.5s2.4 1.7 8 1.5l3.4 1 1.9-.3h4.8z"/>
+  <path fill="#007934" stroke="#000" stroke-width=".1" d="M309.8 254.8c1.2-.6 6-2.9 7.4-4.5-.1 0 .5.5.4.7.5 0 .2-.4.6-.5l.8-.1c.3 0 .1 0 .1.2-.4.6-1.3 1-2 1.5l.2.2h.7v-.3c.3.1.2.3.1.4-.2.4-.9.3-1.1.6a3 3 0 01-1 .9c.4-.2.7-.5 1.1-.5.6 0 .8-.4 1.3-.5.6-.1 1-.5 1.4-.8-.2.2-.5.4-.4.7l.4.1c-.4.4-1.2.7-1.5 1.2l-.6.1c-.3.1-.2.5-.4.6-.7.3-1 1-1.4 1.4l-.8.4c-.4.2-2.8 1.8-2.8 1.6-.2-1.1-2.6.5-8-1.2"/>
+  <path fill="#00a6de" stroke="#000" stroke-width=".1" d="M320 214.2c-18.1 0-32.8 16.5-32.8 36.9S301.9 288 320 288s32.8-16.5 32.8-37c0-20.3-14.7-36.9-32.8-36.9zm0 8.2c13.2 0 24.7 12.3 24.7 28.7s-11.5 28.6-24.7 28.6-24.7-12.2-24.7-28.6c0-16.4 11.5-28.7 24.7-28.7z" color="#000" font-family="Sans" font-weight="400" overflow="visible" style="line-height:normal;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration-line:none;text-transform:none;block-progression:tb;marker:none"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.7 266.8c0 .2 0 .2-.4.3-.4 0-.5 0-.5-.2s.1-.2.5-.2c.3-.1.4-.1.4 0z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.8 266.8l-.5.2h-.5c0-.2.2-.2.5-.3h.5zm-2.8 9c.8-2.2 1-3.8-.2-6 2-1.9 3.3-1.2 4.6 0-1.2 2.3-1 4-.2 6a4 4 0 01-4.2 0z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324 268.6v7.7h.1v-7.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.4 268.6a44.6 44.6 0 00-.3 7.7c0-2.9.2-5.3.4-7.6zm.7-2.4c-.4.4-.6.4-.4 1 .4-.3.4-.5.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.3 266.4c.2.3.6.4.3 1-.4-.3-.3-.4-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.3 267c.2.3.5.3.3.9-.3-.3-.4-.3-.4-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.2 267.4c.2.2.5.4.3 1-.4-.4-.3-.4-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324 267.9c.3.2.7.3.4 1-.4-.4-.2-.5-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324 268.4c.2.2.6.3.4 1-.3-.4-.4-.4-.4-1zm1.3-1.7c-.2.1-.6.1-.6.8.5-.3.5-.3.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.3 267.1c-.2.2-.7.2-.7.7.6-.2.5-.2.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.2 267.6c-.2.1-.6 0-.7.7.6-.3.6-.2.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.2 268.1c-.2 0-.7 0-.7.7.4-.1.4-.3.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325 268.6c-.4.1-.5 0-.6.7.5-.3.4-.2.5-.7zm.2.3c-.7 2.1-.8 4-.7 7.4h.1c0-3.4.1-5.2.8-7.3a2.8 2.8 0 00-.1 0zm1.2-2.2c-.4.3-.6.2-.5.8.4-.1.4-.3.5-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.6 266.8c.2.2.5.4.1 1-.3-.4-.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.4 267.4c.3.3.5.3.2.8-.2-.3-.3-.3-.2-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.3 267.7c.1.3.4.4.1 1-.3-.4-.3-.4-.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325 268.1c.3.3.6.5.3 1-.4-.4-.2-.5-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.9 268.6c.2.3.5.5.2 1-.3-.4-.3-.4-.2-1zm1.6-1.4c-.2.2-.6 0-.7.7.5-.2.5-.2.7-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.4 267.7c-.2 0-.6 0-.8.5.6-.1.6 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.3 268c-.3.2-.7 0-.9.7.7-.2.6-.2.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.1 268.6c-.2 0-.6-.2-.8.5.4 0 .4-.2.8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.8 269c-.3 0-.5 0-.7.6.5-.2.5-.1.7-.6zm.1.4c-1 1.9-1.1 3.6-.7 6.8l.2-.1c-.4-3-.2-4.7.6-6.6zm1.6-2.2c-.5.2-.7.2-.7.8.4-.2.5-.4.7-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.7 267.2c.1.3.4.5 0 1-.3-.5-.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.4 267.8c.2.2.4.4 0 .8 0-.4-.2-.4 0-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.2 268c.1.3.4.5 0 1-.3-.4-.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326 268.5c0 .3.4.5 0 1-.3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.7 268.9c.2.3.5.5 0 1-.1-.4-.2-.5 0-1zm1.8-1.1c-.2 0-.6-.1-.8.5.6-.1.5 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.3 268.2c-.2 0-.6-.1-.8.4.6 0 .6 0 .8-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.1 268.5c-.2 0-.6 0-.8.5.6 0 .5 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327 269c-.3 0-.7-.3-1 .4.5 0 .5-.1 1-.4zm-.5.4c-.3 0-.4 0-.7.5.5-.1.5 0 .7-.5zm-3-.7c.2 2.4.4 4.8.4 7.6h.1c.1-2.9 0-5.3-.4-7.6zm-.6-2.6c.4.4.5.4.4 1-.4-.3-.4-.5-.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.7 266.4c-.3.2-.6.4-.4 1 .4-.3.4-.4.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.7 267c-.3.3-.5.3-.3.8.2-.3.3-.2.3-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.8 267.4c-.2.2-.5.3-.3 1 .4-.4.3-.4.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324 267.9c-.3.2-.7.3-.5 1 .5-.4.2-.5.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324 268.4c-.3.2-.6.3-.4.9.3-.3.4-.4.4-.9zm-1.3-1.8c.2.2.6.2.6.8-.5-.3-.5-.2-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.7 267.1c.2.1.6.1.6.7-.5-.3-.5-.2-.6-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.8 267.5c.2.1.6.1.6.8-.5-.3-.5-.3-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.8 268c.2.1.7 0 .7.8-.4-.1-.4-.4-.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323 268.5c.3.2.5.1.5.8-.4-.3-.4-.3-.5-.8zm-.2.5a3.8 3.8 0 00-.2.1c.7 2 1 3.9.9 7.2h.1a19 19 0 00-.8-7.3zm-1.2-2.4c.4.3.5.3.5.8-.4-.1-.4-.3-.5-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.4 266.7c-.2.3-.5.4-.2 1 .3-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.6 267.3c-.3.3-.6.4-.2.9.2-.4.3-.4.2-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.7 267.6c-.2.3-.5.5-.1 1 .3-.4.2-.4.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323 268.1c-.3.3-.6.4-.3 1 .4-.5.1-.5.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323 268.6c-.1.2-.5.4-.1 1 .2-.4.3-.5.2-1zm-1.5-1.5c.2.1.6 0 .7.7-.6-.2-.5-.2-.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.6 267.6c.2 0 .6 0 .7.5-.5-.1-.5 0-.7-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.7 268c.2 0 .7 0 .8.6-.6-.2-.6-.2-.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.9 268.5c.2 0 .6-.2.8.6-.4 0-.5-.3-.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.2 269c.3 0 .4 0 .6.5-.5-.2-.4-.1-.6-.6zm0 .5a4.1 4.1 0 00-.2 0c.9 2 1 3.6.7 6.6h.2c.3-3 .2-4.6-.8-6.6zm-1.7-2.5c.4.3.6.2.6.8-.4-.1-.5-.3-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.3 267c-.1.3-.4.6 0 1 .3-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.6 267.6c-.2.3-.5.4-.1.9.1-.4.3-.4 0-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.8 268c-.2.2-.4.4 0 1 .2-.5.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322 268.4c-.1.3-.4.5 0 1 .3-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.3 268.8c-.2.3-.5.5-.1 1 .2-.4.2-.5 0-1zm-1.8-1.2c.2 0 .6 0 .8.5-.6 0-.6 0-.8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.6 268c.3 0 .7 0 .9.5-.6-.1-.6 0-.9-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.8 268.4c.3 0 .7 0 1 .5-.7-.1-.7 0-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321 268.9c.3 0 .7-.3 1 .5-.5 0-.5-.3-1-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.4 269.3c.3 0 .5 0 .7.5-.5-.1-.4 0-.7-.5zm2.2-3.2c.3.4.5.4.3 1-.4-.3-.3-.5-.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.3 266.4c-.2.2-.5.3-.4 1 .5-.3.4-.4.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.4 267c-.3.2-.6.3-.4.8.2-.3.3-.2.4-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.4 267.4c-.2.2-.5.3-.4 1 .4-.4.4-.4.4-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.5 268c-.3.1-.6.2-.5.8.5-.3.3-.4.5-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.5 268.4c-.2.2-.6.3-.4.9.3-.3.4-.3.4-.9zm-1.2-1.8c.2.2.6.2.6.8-.5-.3-.5-.3-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.3 267c.2.2.6.2.6.8-.5-.3-.5-.3-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.4 267.4c.2.2.6.2.6.9-.5-.4-.5-.3-.6-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.4 268c.2.1.7 0 .6.8-.4-.2-.3-.4-.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.6 268.5c.2.1.4.1.4.8-.4-.4-.4-.3-.4-.8zm-.4.3a2.7 2.7 0 00-.1 0c.5 2.5.7 4.7.6 7.5h.2c0-2.5 0-5-.7-7.5zm-1-2.4c.4.4.6.3.5 1-.4-.3-.4-.5-.5-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323 266.6c-.2.2-.5.4-.2 1 .3-.4.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.1 267.2c-.2.2-.5.3-.2.8.2-.3.3-.3.2-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.3 267.5c-.2.3-.5.4-.2 1 .3-.3.3-.4.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.5 268c-.3.3-.6.4-.3 1 .4-.4.2-.5.3-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M323.6 268.5c-.2.3-.6.4-.3 1 .3-.4.3-.5.3-1zM322 267c.3 0 .7 0 .8.6-.6-.2-.6-.1-.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.1 267.4c.2.1.7 0 .8.6-.6-.2-.6-.1-.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.3 267.8c.2.1.6 0 .7.7-.6-.2-.6-.2-.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.4 268.3c.2 0 .6-.1.8.7-.5-.1-.5-.3-.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.7 268.8c.3 0 .4 0 .6.6-.5-.2-.5-.1-.6-.6zm-.8.9c.6 1.4.8 2.6.7 3.7l-.3 2.5h.1c.6-2.5.5-4.4-.5-6.2z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.5 269.2l-.1.1c.8 2.1.9 4 .7 7h.1c.2-3 .1-5-.7-7zm-1.4-2.4c.4.3.5.2.5.8-.4-.1-.4-.3-.5-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.8 266.9c-.1.2-.4.4 0 1 .3-.4.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322 267.4c-.1.3-.4.4 0 1 .1-.4.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.3 267.8c-.2.2-.5.4 0 1 .2-.5.1-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.5 268.2c-.2.3-.5.5 0 1 .2-.5 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.7 268.7c-.1.2-.5.5-.1 1 .2-.4.3-.5.1-1zm-1.7-1.3c.2 0 .6 0 .8.5-.6-.1-.6 0-.8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.1 267.8c.3 0 .7 0 .8.5-.5-.1-.5 0-.8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.3 268.1c.2.1.7 0 .9.6-.6-.1-.6 0-.9-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.5 268.7c.2 0 .6-.3.9.5-.5 0-.5-.2-.9-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.9 269c.3.1.4 0 .6.6-.4-.1-.4 0-.6-.5zm-2-1.6c.5.2.7.2.8.7-.4 0-.5-.2-.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.7 267.4c0 .3-.3.5.2 1 .2-.5.1-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321 267.9c0 .3-.3.5.1.9.1-.4.2-.4 0-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.3 268.2c0 .3-.3.5.1 1 .2-.5.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.6 268.6c0 .3-.4.5.1 1 .2-.6 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322 269c-.2.3-.5.6 0 1 .1-.4.2-.5 0-1zm-2-1c.2 0 .6-.1.9.4-.6 0-.6 0-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.2 268.4c.2 0 .6-.2.9.4-.6 0-.6 0-.9-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.4 268.7c.3 0 .7-.1 1 .4-.6 0-.6 0-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M320.7 269.2c.2 0 .6-.3 1 .4-.5 0-.5-.2-1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M321.1 269.5c.3 0 .5 0 .8.5-.5 0-.5 0-.8-.5zm3.8-.7a25.9 25.9 0 00-.7 7.5 2.5 2.5 0 00.2 0c0-2.8 0-5 .7-7.4a2.8 2.8 0 00-.2-.1zm1-2.3c-.4.3-.5.3-.5.9.4-.2.5-.4.5-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.1 266.6c.2.3.5.5.2 1-.3-.4-.3-.4-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325 267.3c.3.2.5.3.2.8-.2-.3-.3-.3-.2-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.9 267.6c.2.2.5.4.2 1-.4-.4-.3-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.7 268c.2.3.5.5.2 1-.4-.4-.1-.5-.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M324.5 268.5c.2.3.6.5.3 1-.3-.4-.3-.4-.3-1zm1.6-1.5c-.2.2-.6 0-.7.7.5-.2.5-.2.7-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326 267.5c-.2 0-.6 0-.7.6.5-.2.5-.1.7-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.9 267.9c-.2 0-.7 0-.8.6.6-.2.6-.1.8-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.7 268.4c-.2 0-.6-.2-.7.6.4 0 .4-.3.7-.6z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.4 268.8c-.2.1-.4 0-.5.7.4-.2.4-.2.5-.7zm.2.4c-.9 2.1-1 4.1-.8 7h.2c-.2-3-.1-4.9.7-7zm1.5-2.3c-.5.3-.6.2-.6.8.4-.1.4-.3.6-.8z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.3 267c.1.2.4.5 0 1-.3-.5-.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326 267.5c.3.3.5.5.1 1-.1-.5-.2-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.9 267.8c.1.3.4.5 0 1-.3-.4-.2-.4 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.6 268.3c.2.3.5.5.1 1-.3-.5 0-.5-.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M325.4 268.7c.2.3.5.5.1 1-.2-.4-.3-.4-.1-1zm1.7-1.2c-.2.1-.6 0-.8.5.6 0 .6 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327 268c-.2 0-.6-.1-.8.4.6-.1.5 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.8 268.3c-.2 0-.7 0-.8.5.6-.1.5 0 .8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.6 268.8c-.2 0-.6-.3-.8.5.4 0 .4-.3.8-.5z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.3 269.2c-.4 0-.5 0-.7.5.4-.1.4 0 .6-.5zm0 .5c-1.1 2-1 4-.6 6.3h.2l-.3-2.9a6 6 0 01.8-3.3h-.1zm1.9-2c-.5.1-.7 0-.8.6.5 0 .5-.2.8-.7z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.4 267.5c0 .3.3.6-.2 1-.2-.5-.1-.5.2-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327 268c.2.3.4.5 0 .9-.1-.4-.2-.4 0-.9z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.8 268.3c.1.3.3.5-.1 1-.2-.5-.2-.5.1-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.5 268.7c0 .3.4.6-.1 1-.2-.6 0-.5 0-1z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M326.2 269c.1.4.4.7 0 1-.2-.4-.2-.4 0-1zm2-.8c-.3 0-.6-.2-1 .4.6 0 .6 0 1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.9 268.6c-.2 0-.6-.2-.9.3.6 0 .6 0 .9-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.7 268.9c-.3 0-.7-.2-1 .4.7 0 .6 0 1-.4z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327.4 269.4c-.2 0-.6-.4-1 .3.5 0 .6-.2 1-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M327 269.7c-.3 0-.5-.1-.8.4.5 0 .5 0 .8-.4zm-3.5 2.7h1.1c.7 0 1.2.2 1.2.4s-.5.3-1.2.3h-1.1c-.7 0-1.3-.2-1.3-.4s.6-.3 1.3-.3z"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width="0" d="M322.7 272.4l-.4.6a.3.3 0 00.2 0h.2l.4-.6h-.4zm.9 0l-.4.6h.4l.4-.6h-.4zm.9 0l-.4.7h.4l.4-.7h-.4zm.8 0l-.3.7h.4l.3-.6a.3.3 0 00-.2 0h-.2z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M316.5 268.8l.5 2.7.2.2v1.1c.3.5.3 1.1.5 1.6l.3.6h.4l.1.2-.2.2h-.6l-.3-.1v-.3h-.2l-.1-.6-.8-1c0-.1 0-.4-.2-.5l-.3-.3c-.5-1-1-3-1-3m-6.4-1l1.8.4-.5 2.6c-.3.8-.3.9-.2 1 .2.5.4 1.2 1.1 2.3l.6.4.5.3h.5l.1-.2c0-.1-.3 0-.5-.2 0-.3-.5-.8-.5-1.2-.3-.7-.2-.7-.2-1.5l.5-1.6c.2-.5.5-1.4.5-2l-.8-1.7-.5-.7m-1.6-1.1c-2.9 1-1.7 3.5-.9 3.6m9.2-8.1l.4-1v-.4l-.7.9"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M319.2 262.4c.2 0 .4.1.4 0v-.6c-.6-.4-1-.4-1-.7v-.2c0-.2-.8-.3-1-.4l-.4-.2h-.2c-.8 0-1.1.7-1.2 1.2 0 0-.2 2.1-.5 3a.7.7 0 01-.2.3l-.2.2c-2-.2-3.4-.2-4.2-.2-.8 0-1.8.7-1.8.7s-1 .6-1.1 1.6c-.1.3 0 .7.1 1 1 2.7 1.8 0 2.1.1h.4c.5 0 1.4 1.5 2.7 1.8 4 .9 5-1.2 5-5.8v-.2l.2-.4v-.8l1-.2.2-.1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M317.3 261l.4-1v-.4l-.9 1m-8.9 7.6c.3.8.7 1.5.7 1.8 0 .4-.3.6-.3.7h-.2l-.2.6a1.3 1.3 0 000 .6c0 .7.4 2.2.4 2.3 0 0 .3 0 .3.2v1.2c0 .2.3.3.3.3h.6l-.4-.4a.4.4 0 010-.2c0-.2.2-.4.3-.5v-.3l-.1-.2a8.3 8.3 0 01-.1-.9v-1.1l.2-.2.1-.2 1-.6.8-1 .2-.5a.5.5 0 000-.2 3.8 3.8 0 00-.3-.9 3.2 3.2 0 00-.6-.8m5.9 1.8c-.5.4-1.8.7-1.8 1 0 0 0 1.6-.2 2.2l-.3.6-.2.7-.3 1v.3l.4.3h-.4l-.6-.2V274l-.2-1.4.1-1-.1-3.6m4.7-5.4c.2.2.6.4 1.3.1.2.1.3.2.6-.2m-.3-.5h.2s.1 0 0 0c0 0 0-.1 0 0h-.2z"/>
+  <path d="M317.8 261.4c.2.3.4.3.6.1-.2-.3-.4-.1-.5-.1h-.1z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width=".1" d="M329.1 272.9a2 2 0 000 .7v.8a2 2 0 000 .7 2 2 0 000 .7c.2.2 1 .2 1.2 0a2.2 2.2 0 000-.7v-.7a2 2 0 000-.7v-.8a2.3 2.3 0 000-.8v-.7a2.2 2.2 0 000-.8v-.8a2.4 2.4 0 000-.8v-.7a2.2 2.2 0 000-.8 1.9 1.9 0 000-.8 2.5 2.5 0 000-.8 2.3 2.3 0 000-.8 3.3 3.3 0 000-.8 2.9 2.9 0 000-.7v-.8a2.6 2.6 0 000-.8 2.7 2.7 0 000-.8v-.8a2.3 2.3 0 000-.8v-.7a2 2 0 000-.3h-.9v1a2.3 2.3 0 000 .8v.8a2.7 2.7 0 000 .8 2.6 2.6 0 000 .8 3 3 0 000 .7l-.1.8v.8a2.4 2.4 0 000 .8 2.5 2.5 0 000 .8 1.9 1.9 0 000 .8c-.1.3-.1.5 0 .8v.7a2.4 2.4 0 00-.1.8 2.6 2.6 0 000 .8 2.2 2.2 0 000 .8 2 2 0 000 .7 2.3 2.3 0 000 .8z"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".1" d="M329.1 273.6c.3.2 1 .1 1.2 0m-1.2-.7h1.2m-1.2-.8h1.2m-1.1-.7h1.1m-1.1-.8h1.1m-1.1-.8h1.1m-1-.8h1m-1-.7h1m-1-.8h1m-1-.8h1m-1-.8h1m-1-.8h1m-1-.8h1m-1-.7h1m-1-.8h1m-1-.8h1m-.9-.8h.8m-.8-.8h.8m-.8-.8h.8m-.8-.7h.8m-1 15.5h1.1m-1.2.7h1.2"/>
+  <path fill="#007934" fill-rule="evenodd" stroke="#e7e7e7" stroke-width=".1" d="M331.5 257a13 13 0 012.1 0 13.7 13.7 0 00-.8-.3h2.2a5 5 0 00-1-.5 8 8 0 012.2.1l-1-.5c.9 0 1.2 0 2 .2a2.6 2.6 0 00-.9-.5 8 8 0 012.5-.2 8.6 8.6 0 00-8 .8 6 6 0 011-1.1 2.5 2.5 0 00-.7 0c.3-.3.8-.8 1.2-1l-.7.1 1.4-1a3.1 3.1 0 00-.9.1 5.2 5.2 0 011.6-1.1 4 4 0 00-1 0 8.7 8.7 0 012-1.3c-3.3.4-5.1 2.8-5.3 4.8a7 7 0 00-6.6-3.6c1 .3 1.8.7 2.4 1a4.4 4.4 0 00-1 .1c.7.2 1.5.6 2 1a3.4 3.4 0 00-1 0l1.8.8-.8.1a5 5 0 011.5.8h-.8c1 .4 1.1.6 1.3.7a8 8 0 00-7.3 3 10 10 0 012.2-1l-.5.8c.5-.4 1.3-.8 2-1a4.8 4.8 0 00-.4.7l1.8-1-.4.8 1.7-.7-.5.7 1-.4a6.2 6.2 0 00-2.9 5.8l.9-2v1a8.5 8.5 0 011-2v1l1-2v1l1.1-1.9v.8l.3-.6.7-.9.2.3c.3.4.4 1.1.5 1.8a3.2 3.2 0 00.2-.9c.3.7.7 1.8.7 2.4a3.6 3.6 0 00.2-1c.3.5.6 1.8.7 2.3l.3-.9c.3.8.4 1.7.5 2.3.8-3-.4-4.9-1.8-6.3.4.1.8.5 1.3 1a4.9 4.9 0 00-.3-.9l1.5 1.4-.2-.8c.6.4 1.1 1.2 1.5 1.6a5.4 5.4 0 00-.2-1 6 6 0 011.3 1.8l-.1-1c.7.6 1 1.3 1.3 1.7 0-2.7-3.1-5-6-5.3z"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M330.3 257.1c3.1-.5 7.2 2.3 7.2 5.3-.3-.4-.6-1.1-1.3-1.8l.1 1a6 6 0 00-1.3-1.7l.2 1c-.4-.4-.9-1.2-1.5-1.6l.2.8-1.5-1.4.3 1c-.5-.6-1-1-1.3-1.1m-1.8-1.5c-1.9-1.2-5.8-1-8.7 2.3a10 10 0 012.2-.9l-.5.8c.5-.4 1.3-.8 2-1a4.8 4.8 0 00-.4.7l1.8-1-.4.8 1.7-.7-.5.7 1-.4"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M329.7 256.6c-.4-2.2-3-4.8-6.9-4.6 1 .3 1.8.7 2.4 1a4.3 4.3 0 00-1 .1c.7.2 1.5.6 2 1a3.4 3.4 0 00-1 0l1.8.8a3.2 3.2 0 00-.8.1 5 5 0 011.5.7l-.7.1c1 .4 1 .6 1.2.7m1.5 1c-2.6.8-5.1 3.3-4.7 6.7 0-.4.5-1.5.8-2v1l1-2v1l1-2v1a13.3 13.3 0 011.1-1.9v.8a5 5 0 011-1.5m-1.6.2a8.7 8.7 0 00-.5 1.4m-.5-.8a9.7 9.7 0 00-.5 1.9m-.5-1a9 9 0 00-.5 2"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M329.9 258.6v-.6" class="fil1 str2"/>
+  <path fill="none" stroke="#e7e7e7" stroke-linecap="round" stroke-linejoin="round" stroke-width=".1" d="M332.6 261.3v1.3m-1-3l.1 1.6m-1-2.7l.1 1.3m4.8-.4l.6 1.2m-2-2.1l.8 1.4m-2-1.8c.3.3.5.7.7 1.2m-10.6-.8a4.7 4.7 0 011.7-1.2m-.2 1c.4-.6.6-.9 1.6-1.3m-.2 1c.4-.4.9-.8 1.7-1.1m-.4 1.2c.5-.5 1-.7 1.6-1m-3.7-4c.7 0 1.6.2 2.2.6m-1.2.4c.6 0 1.4.2 1.8.4m-1 .4c.6 0 1.3.3 2 .6m-1.3.2a4 4 0 011.7.6m.9.2a8.6 8.6 0 018.5-1.2 8 8 0 00-2.4.2c.4 0 .7.3.8.4h-2c.4 0 .7.2 1 .4a7.3 7.3 0 00-2.2 0l1 .3h-2.2l.8.3c-1 0-1.6 0-2 .2m4.8-1.6a6 6 0 00-2.2-.4m1 .7a5.8 5.8 0 00-2.5-.2m1.3.6a6.8 6.8 0 00-2.5-.2m1.3.7a5 5 0 00-2-.1m.8 1c.4.3.6.7.8 1.1m-3-3.1c.2-2 2-4.4 5.3-4.8a9 9 0 00-2 1.3h1c-.5.2-1.2.7-1.6 1.1a3.1 3.1 0 01.9 0 6.7 6.7 0 00-1.4 1l.7-.1a4.1 4.1 0 00-1.2.9h.7l-1 1.1m2-4c-.5.1-1.1.4-1.6.7m1 .4a4.5 4.5 0 00-1.5.5m.9.4c-.5.1-1 .4-1.5.7m1 .2a3.2 3.2 0 00-1.4.8m-.5 2.4a6 6 0 00-.3 1.1m1.2-2c1.8 1.6 4.1 3.7 3 7.6a6 6 0 00-.4-2.2l-.3.9a6.8 6.8 0 00-.7-2.4 3.5 3.5 0 01-.2 1 8.3 8.3 0 00-.7-2.4c0 .2 0 .6-.2.9 0-.9-.3-1.7-.7-2"/>
+  <path fill="#e8a30e" stroke="#000" stroke-width=".1" d="M293.3 233.5l1.3.7.3-.6c.1-.3.2-.5.1-.6 0-.2-.2-.4-.5-.5-.3-.2-.6-.3-.7-.2-.2 0-.4.2-.5.4l-.2.5c0 .1 0 .2.2.3m1.6 1l1.7.8h.3l.3-.5.3-.6a.6.6 0 000-.4.7.7 0 00-.2-.2 1.9 1.9 0 00-.3-.2c-.8-.4-1.3-.3-1.7.3l-.4.7m-2.6-.8a33 33 0 00.6-1.2 3.3 3.3 0 01.6-.7l.6-.4h.9c.2.1.3.3.4.6.1.2.2.5.1.7a2 2 0 011-.6l1 .1c.3.2.5.6.6 1 .1.5 0 1-.4 1.7a32.4 32.4 0 01-.7 1.3l-.3.7-1.4-.9-1.8-1-1.5-.7.3-.6m9-10.8c-.8.6-.7 1.5.3 2.6.5.6 1 1 1.5 1 .4.2.9 0 1.3-.3.3-.3.5-.6.4-1a3.1 3.1 0 00-.8-1.5c-.5-.7-1-1-1.4-1.2-.5 0-1 0-1.4.4m3.8-.2c.5.6.7 1.3.7 2a2.8 2.8 0 01-1.2 2 2.9 2.9 0 01-2 .7 2.4 2.4 0 01-1.8-1 2.8 2.8 0 01-.7-2c0-.7.4-1.4 1-2a2.9 2.9 0 012-.7c.8 0 1.4.4 2 1m8-2.6l.3 1a14.4 14.4 0 001.9-.7h.3a4.5 4.5 0 00.3.7l-.5.1-2.4.7-.7.2-.4-1.6-.5-2a12 12 0 00-.5-1.5l.6-.2.7-.2.3 1.6.6 2m9.2-3a12.2 12.2 0 000-1.6h.8l.7.1c-.2.5-.2 1-.3 1.7l-.2 2a11.9 11.9 0 00-.1 1.6h-.7l-.7-.1.3-1.7.2-2m9.9 5.3c1.6-1.3 2.7-2.2 3.1-2.7l.4.2.4.2a230 230 0 00-4.7 3.6l-.5-.3a316.2 316.2 0 01.2-2 362.5 362.5 0 00.4-3.8 7.7 7.7 0 001.2.7 34.8 34.8 0 00-.5 4m8.4 4l1.2-1.3.4.6.5.4a11.1 11.1 0 00-1.3 1.1l-1.5 1.4a12 12 0 00-1.1 1.1l-.5-.5-.5-.5 1.3-1 1.5-1.4m5 10l1.3-1.4h-2a18 18 0 00.7 1.4m-1.1-1.3l-2 .1a1.9 1.9 0 00-.1-.3 2.6 2.6 0 00-.2-.4h5.9l.3.6a82.5 82.5 0 00-4 4.3l-.2-.7a5.4 5.4 0 00-.3-.6 23.9 23.9 0 001.4-1.3 35 35 0 00-.4-.8 39.5 39.5 0 00-.4-1" font-family="Linux Biolinum" font-size="100" font-weight="700" letter-spacing="60" text-anchor="middle" word-spacing="0" style="line-height:125%;-inkscape-font-specification:Linux Biolinum Bold;text-align:center"/>
+  <path fill="#e8a30e" stroke="#000" stroke-linecap="square" stroke-linejoin="round" stroke-width=".1" d="M325 280.6l-.8 2.2h-2.4l1.9 1.5-.7 2.2 2-1.3 1.8 1.3-.6-2.2 1.8-1.4h-2.3zm9-3.9l-.7 2.2H331l1.8 1.5-.7 2.2 2-1.3 1.9 1.3-.7-2.2 1.9-1.4h-2.4zm14.2-25l-.8 2.3h-2.3l1.8 1.4-.6 2.3 1.9-1.4 1.9 1.4-.7-2.3 1.9-1.4h-2.4zm-6.7 17.9l.7 2.2h2.4l-1.9 1.4.7 2.3-2-1.4-1.9 1.4.7-2.3-1.8-1.4h2.3zm4.7-8.2l.8 2.2h2.3l-1.9 1.5.7 2.2-1.9-1.3-2 1.3.8-2.2-1.9-1.4h2.3zm-31.1 19.2l.8 2.2h2.3l-1.9 1.5.7 2.2-2-1.3-1.8 1.3.6-2.2-1.8-1.4h2.3zm-9.2-3.9l.8 2.2h2.4l-2 1.5.8 2.2-2-1.3-1.9 1.3.7-2.2-1.9-1.4h2.4zm-14-25l.7 2.3h2.3l-1.8 1.4.6 2.3-1.9-1.4-1.9 1.4.7-2.3-1.9-1.4h2.4zm6.6 17.9l-.7 2.2h-2.4l1.9 1.4-.7 2.3 2-1.4 1.9 1.4-.7-2.3 1.8-1.4h-2.3zm-4.7-8.2l-.8 2.2h-2.3l1.9 1.5-.7 2.2 1.9-1.3 2 1.3-.8-2.2 1.9-1.4h-2.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M321 248.1v-.5h.1l-.8-.5h-.7l-.8.5v.5h2.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M321 248.1v-.5h.1l-.8-.5v-.7h-.6v.7l-.9.5v.5h2.3zm.3.6v.2h-2.6v-.2h2.6"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M321.3 248.7v.2h-2.6v-.2h2.6zm-2.5 0v-.5h.1v.5-.5h-.1v-.1h2.4v.1h-.2v.5-.5h.1v.5"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M318.9 248.7v-.5.5-.5h-.1v-.1h2.4v.1h-.2v.5-.5h.1v.5"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M319.4 248.6v-.4h-.4v.4h.4"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M319.1 248.3v.2h.2v-.2h-.2m1.8.3v-.4h-.3v.4h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M320.7 248.3v.2h.1v-.2h-.1m.2-.3v-.3h-.3v.3h.3z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M320.7 247.7v.2h.1v-.2h-.1m-1.3.3v-.3h-.4v.3h.4z"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M319.1 247.7v.2h.2v-.2h-.2m.8.3v-.3h-.3v.3h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M319.7 247.7v.2h.1v-.2h-.1m.7.3v-.3h-.3v.3h.3"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M320.1 247.7v.2h.2v-.2h-.2m.4.2v.8h-1v-.8h1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width="0" d="M320.5 247.9v.8h-1v-.8h1zm-1 .2h1m-.9.6v-.6m.7.6v-.6m.5-.5l-.5-.4h-.6l-.5.4h1.6m-1-.5h.4m-.3-.1h.2-.2m0 1zm.1 0h.1zm.3 0h.1"/>
+  <path fill="#e7e7e7" fill-rule="evenodd" stroke="#000" stroke-width="0" d="M319.8 246h.4v.4h-.4v-.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M320 245.6v.4m-.2-.2h.4"/>
+  <path fill="#452c25" d="M317.1 210.3s-2.3 5.4-1.5 6c0 0 3-3.3 3.7-5.9.8-2.6 0-.2 0-.2l-.2-2.8-2 2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M317.1 210.3s-2.3 5.4-1.5 6c0 0 3-3.3 3.7-5.9.8-2.6 0-.2 0-.2l-.2-2.8-2 2.7"/>
+  <path fill="#452c25" d="M317.6 207.7s-2.8 6-2.1 6.4c0 0 2.3-2.7 3-4.8.5-2.1 0-.1 0-.1l.7-3.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M317.6 207.7s-2.8 6-2.1 6.4c0 0 2.3-2.7 3-4.8.5-2.1 0-.1 0-.1l.7-3.9"/>
+  <path fill="#452c25" d="M320.5 206.4s-2.8 6-2.1 6.4c0 0 2.3-2.7 3-4.8.5-2.2 0-.2 0-.2l.7-3.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M320.5 206.4s-2.8 6-2.1 6.4c0 0 2.3-2.7 3-4.8.5-2.2 0-.2 0-.2l.7-3.8"/>
+  <path fill="#452c25" d="M356.8 195.6l3.4 1.9s.8.7-1 .3a42 42 0 01-12.8-6.4c-3.3-2-4.3-2-4.3-2l4.5.1 10.2 6.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M356.8 195.6l3.4 1.9s.8.7-1 .3a42 42 0 01-12.8-6.4c-3.3-2-4.3-2-4.3-2l4.5.1 10.2 6.1z"/>
+  <path fill="#452c25" d="M358 194.8l3.3 1.9s.8.7-1 .3a45 45 0 01-12.8-6.4c-3.3-2.1-.6 1.7-.6 1.7l.5-2.5 10.5 5z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M358 194.8l3.3 1.9s.8.7-1 .3a45 45 0 01-12.8-6.4c-3.3-2.1-.6 1.7-.6 1.7l.5-2.5 10.5 5z"/>
+  <path fill="#452c25" d="M363.5 196.6s-4-.7-5.4-1.8c0 0 .2.5-1.7-.4 0 0 .7 1.7-4.8-2-5.5-3.8-3.6-2-3.6-2l1.6-.3 9.3 3.7a53 53 0 014.6 2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M363.5 196.6s-4-.7-5.4-1.8c0 0 .2.5-1.7-.4 0 0 .7 1.7-4.8-2-5.5-3.8-3.6-2-3.6-2l1.6-.3 9.3 3.7a53 53 0 014.6 2.8z"/>
+  <path fill="#452c25" d="M342.6 198.1l1.4 1.9s-.5 1.8-5.1-1.7-4.4-3.2-4.4-3.2l2.6-.3 5.6 3.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M342.6 198.1l1.4 1.9s-.5 1.8-5.1-1.7-4.4-3.2-4.4-3.2l2.6-.3 5.6 3.2"/>
+  <path fill="#452c25" d="M336.6 199s2.2 2.9 1.7 3.2c-.5.4-3 .2-4.8-2.5-1.9-2.8 0-.2 0-.2v-4.4l3.2 3.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M336.6 199s2.2 2.9 1.7 3.2c-.5.4-3 .2-4.8-2.5-1.9-2.8 0-.2 0-.2v-4.4l3.2 3.8"/>
+  <path fill="#452c25" d="M338.8 197.8s2.1 2.6 1.9 3c-.2.4-3.2.2-5.5-2.5-2.3-2.6-.3-3.4-.3-3.4l3.9 2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M338.8 197.7s2.1 2.7 1.9 3.1c-.2.4-3.2.2-5.5-2.5-2.3-2.6-.3-3.4-.3-3.4l4 2.8z"/>
+  <path fill="#452c25" d="M350.6 196.2s6 2.5 1.6 2.4c0 0-8.6-2.3-13-6.2l1.2-1.6 10.2 5.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M350.6 196.2s6 2.5 1.6 2.4c0 0-8.6-2.3-13-6.2l1.2-1.6 10.2 5.2"/>
+  <path fill="#452c25" d="M353.8 195.4s3.1 2 3.4 2.7c.2.8-10-1.9-15.3-6.3l2.4-1.2 9.4 4.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M353.8 195.4s3.1 2 3.4 2.7c.2.8-10-1.9-15.3-6.3l2.4-1.2 9.4 4.8z"/>
+  <path fill="#452c25" d="M344.5 197.2s2.3 1.9 2 2.1c-.3.2-5-.5-8.6-3.3l.4-1.7 6.2 2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M344.5 197.2s2.3 1.9 2 2.1c-.3.2-5-.5-8.6-3.3l.4-1.7 6.2 2.8"/>
+  <path fill="#452c25" d="M348.4 197s2.3 1.6 1.8 1.8c-.4.1-2.2 1.6-10.7-3.4l-1-.6 1.3-2 8.6 4.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M348.4 197s2.3 1.6 1.8 1.8c-.4.1-2.2 1.6-10.7-3.4l-1-.6 1.3-2 8.6 4.2z"/>
+  <path fill="#452c25" d="M339.7 192.4s2.8 2.4 2.4 2.8c-.4.4-3.6-.4-5-1.5-1.5-1-2.6-2.4-2.6-2.4l3-.7 2.2 1.8z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M339.7 192.4s2.8 2.4 2.4 2.8c-.4.4-3.6-.4-5-1.5-1.5-1-2.6-2.4-2.6-2.4l3-.7 2.2 1.8z"/>
+  <path fill="#452c25" d="M336.4 188.3l5 3s4.1 2.8 3.7 3.1c-.4.3-3.7-.8-6-2-2.2-1.3-5-4-5-4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M336.4 188.3l5 3s4.1 2.8 3.7 3.1c-.4.3-3.7-.8-6-2-2.2-1.3-5-4-5-4"/>
+  <path fill="#452c25" d="M333.2 202.4s1 2.4.4 2.6c-.6.3-2-.2-3-2.3-1.2-2.2 1-1.3 1-1.3l1.6 1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M333.2 202.4s1 2.4.4 2.6c-.6.3-2-.2-3-2.3-1.2-2.2.7-1.3.7-1.3l2 1z"/>
+  <path fill="#452c25" d="M334.9 200.9s1.4 2.3 1.1 2.6c-.3.2-2.2 1-4.2-2s2.1-2.3 2.1-2.3l1 1.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M334.9 200.9s1.4 2.3 1.1 2.6c-.3.2-2.2 1-4.2-2s2.1-2.3 2.1-2.3l1 1.7z"/>
+  <path fill="#452c25" d="M330.7 190.4s4.8 9.3 4.4 9.8c-.4.5-2.3 0-3.4-2.5s-1.9-5.6-1.9-5.6l.9-1.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M330.7 190.4s4.8 9.3 4.4 9.8c-.4.5-2.3 0-3.4-2.5s-1.9-5.6-1.9-5.6l.9-1.7z"/>
+  <path fill="#452c25" d="M336.3 192.8s4 3.3 3.2 3.8c-.8.4-2.4-.2-4.8-2.5-2.3-2.3 1.6-1.5 1.6-1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M336.3 192.7s4 3.5 3.2 3.9c-.9.4-2.5-.2-4.8-2.5s1.6-1.4 1.6-1.4z"/>
+  <path fill="#452c25" d="M334.4 192.8s2.8 5.3 2.5 5.8c-.4.5-2.5-1.3-3.6-2.7-1-1.3-1.9-3.3-1.9-3.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M334.4 192.8s2.8 5.3 2.5 5.8c-.4.5-2.5-1.3-3.6-2.7-1-1.3-1.9-3.3-1.9-3.3"/>
+  <path fill="#452c25" d="M312.9 203.6s-.2 3.1 0 3.3c.2.3 1.7.3 1.8-2 .1-2.4-.3-2.5-.3-2.5l-1.5 1.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.9 203.6s-.2 3.1 0 3.3c.2.3 1.7.3 1.8-2 .1-2.4-.3-2.5-.3-2.5l-1.5 1.1"/>
+  <path fill="#452c25" d="M313.8 199.9s-1 3.4 0 4.1c1 .7 1.9-3.4 2-4.3 0-1-2 .2-2 .2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.8 199.9s-1 3.4 0 4.1c1 .7 1.9-3.4 2-4.3 0-1-2 .2-2 .2z"/>
+  <path fill="#452c25" d="M314.6 204.3s.2 3.2.8 3.4c.6.1 1.6-1 1.6-1.8s-1-2.8-1-2.8l-1.4 1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.6 204.3s.2 3.2.8 3.4c.6.1 1.6-1 1.6-1.8s-1-2.8-1-2.8l-1.4 1"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M314.6 200.4s-1 3.5 0 4.2c1 .7 1.9-3.4 2-4.4 0-.9-2 .2-2 .2z"/>
+  <path fill="#452c25" d="M314.7 194.8s-1.6 1.7-1.6 2.6c0 1 2.4-1.2 2.6-1.6.2-.4-1-1-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M314.7 194.8s-1.6 1.7-1.6 2.6c0 1 2.4-1.2 2.6-1.6.2-.4-1-1-1-1z"/>
+  <path fill="#452c25" d="M313.6 194s-1.3 2.3-1 3c.4.8 1.6-.5 2.2-1.4.6-.8-1.2-1.7-1.2-1.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.6 194s-1.3 2.3-1 3c.4.8 1.6-.5 2.2-1.4.6-.8-1.2-1.7-1.2-1.7z"/>
+  <path fill="#452c25" d="M331.5 190.8s2 3.8 1.5 4c-.6.2-1.4-.7-2.3-1.9-.8-1.1.8-2.1.8-2.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M331.5 190.8s2 3.8 1.5 4c-.6.2-1.4-.7-2.3-1.9-.8-1.1.8-2.1.8-2.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M331.6 198.6s.7 3.3 0 3.6c-1.2.5-2-2.3-2-3.4 0-1.2 2-.2 2-.2zm-2.6 5.1s.2 2.5-.2 2.7c-.3.2-1.2.2-2.1-1.8-1-2-.5-1.2-.5-1.2l2.3-1.2.5 1.3"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M331.4 203.2s.2 2.5-.3 2.6c-.5 0-1.9-.8-2.5-2.3-.6-1.8 2.4-1.3 2.4-1.3l.4 1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M329 195.3s2.6 6 2.1 6.7c-.8 1.7-3.2-3.5-3.9-5.6-.8-2.2 1.7-1 1.7-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M327.7 196.3s3.6 6.5 2.1 6.6c-1.5.2-4.3-4.6-4.7-5.8-.5-1 2.6-.8 2.6-.8z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M327.5 197.7s1.8 6.2.6 5.6c-1-.5-2.5-5.2-2.6-6.2-.2-1 2 .6 2 .6zm6.2-8.8s2.7 4.1 1.8 4.2c-.8.2-4-2.7-4-3.2-.1-.5 2.2-1 2.2-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M332 189s3.5 4.8 2.4 5c-1 .2-1.1-.5-1.1-.5s-2.8-2.5-3-3.1c-.1-.6 1.6-1.4 1.6-1.4m3.5.1s2.4 2.5 1.8 3.3c-.6.8-4-3.1-4.4-3.6-.4-.5 2.9.2 2.9.2m-6 3.5s3.8 7.5 3 8.2c-.6.8-4.9-5.6-5-6.5-.2-.9 2-1.8 2-1.8"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M327.5 193.2s1.5 2.3 1.4 3.6c0 1.2-2.3-1.8-2.5-2.4-.2-.6 1-1.2 1-1.2zm3.1-1.2s1.2 2.4.8 3.1c-.3.8-2-1.4-2.5-2.3-.6-.8 1.7-.8 1.7-.8z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".2" d="M325 194.4s2 2 1.9 3.1c-.1 1.1-2.8-1.6-3-2-.3-.6 1.2-1.1 1.2-1.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M337.2 188.4s2.8 2.5 2.4 3c-.5.3-4.3-2.4-4.9-3-.6-.5 2.5 0 2.5 0z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M334.8 188.2l2.2 1.9s2 1.3 1.7 1.7c-.3.3-3.6-1.1-4.1-1.8-.6-.7-.6-1.4-.6-1.4l.8-.4zm7.3.6s8.4 3.4 8 4.2c-.3.8-8.8-2.7-10-3.7-1.4-.9 1.8-.6 1.8-.6"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M342.4 189.8s6.3 3.6 5.5 4c-.7.3-5.2-1-7.5-2.5a36.6 36.6 0 01-3.3-2.5l2.8-.6 2.5 1.7zm-15.5 4.4s1.2 2.4.8 3c-.4.8-1.5-.5-2.1-1.4-.6-.8 1.3-1.6 1.3-1.6zm.3 5.4s1 3.5-.1 4.2c-1.1.6-1.8-3.6-1.8-4.5 0-.9 1.9.3 1.9.3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M322.3 193.8s3.5-1.5 4.1-1.4c0 0 .8-.2 1.1-.5l1.3-1s-.6-4.3 3.9-3.8l11.5 1.1a45 45 0 016.5 2l9 3.9a30 30 0 014 2.3c.8.5-.1.1-.1.1s-10.7-5.7-14.5-6.4c-1-.2 0 1 0 1l-3.4-1.3a6 6 0 00-2.9-.6 5.8 5.8 0 01-2.2-.3c-.6-.2-3.8-.3-4.4-.4a7.3 7.3 0 01-1-.2l.3.4-1.6-.2-.5.6s-1.5.3-1.6-.2c-.1-.4-1 2.3-1.3 3-.4.9-1.9.9-2.3 1.4l-1 .9c-.2.1-1.3.8-1.7.8l-2.9.2-.6-1 .3-.4zm4.6 10l-.1 3.3c-.2.2-1.8.1-1.8-2.2s.5-2.4.5-2.4l1.5 1.2"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M327.3 201.4s-.3-1.4-.5-1.6c-.3-.2 0-.3 0-.3s-.5-1.4-.9-1.6c-.3-.2.1-.4.1-.4s-.6-1-1-1.2c-.4-.3 0-.4 0-.4s-.5-1.2-1.5-1.8c0 0-.7-.7-1.4-.9-.7-.2-2.4-.4-4.5-.3-2.2 0-3.2 1.5-3.2 1.5l-.1 1.8.3-.2-.5 2.2c0 .5.5 1.4.5 2.5v1c.1 1 .4 2 .8 2.9v.2c.2-.2.5.6.7 1 0 0 0 1 .2.6l.6 1.1c0 .2.5 1.4.5.9 0-.6.4 1.3.4 1.5l.5-.7.2.8h.5l-.2.8s1.2-1 1.3-1.4v-.6l.4-.4.6-1s1.5 1.2 1.7 1.7l.3.7.4-.3.3.8.3-.4.2.6.1.3c.1.1.4.2.8-.6.6-1 .6-1.9.6-2 0-.3.3.2.3.2s.6-1 .5-1.6c0-.7.3-.4.3-.4v-2.2c0-.4.3-.3.3-.3l-.2-2.3c-.2-.2.3-.2.3-.2z"/>
+  <path d="M324.3 196.7c.3 0 .4.4.6.6-.1-.4-.3-.7-.6-.8v.2m.3 1.2c.5.5.6 1.1.5 1.8v.1c0-.7 0-1.5-.5-2v.1m1.1.7a3 3 0 01.4 1.6c0-.6 0-1.2-.4-1.7m.4 2.5c0 .4 0 .7-.2 1a.4.4 0 000 .2 11 11 0 00.2-1.2m-.4 1.9v.7a3.8 3.8 0 000-.8m.7 0c.2.1.3.3.3.6a.4.4 0 000-.1 1.2 1.2 0 00-.3-.7v.2m0-2.6l.4.5v-.2a3.1 3.1 0 00-.5-.5v.2m-1.4 2a5.9 5.9 0 010 1 6.6 6.6 0 000-1m-.7.7a5.2 5.2 0 010 1 6.2 6.2 0 000-1.1v.1"/>
+  <path fill="#452c25" d="M310.7 194.3s-.8 3.2-.2 3.5c1.3.7 2-2.2 2.2-3.2.1-1.2-2-.3-2-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M310.7 194.3s-.8 3.2-.2 3.5c1.3.7 2-2.2 2.2-3.2.1-1.2-2-.3-2-.3z"/>
+  <path fill="#452c25" d="M312.6 194.3s-1.6 1.7-1.6 2.6c0 1 2.4-1.3 2.6-1.7.2-.4-1-.9-1-.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.6 194.3s-1.6 1.7-1.6 2.6c0 1 2.4-1.3 2.6-1.7.2-.4-1-.9-1-.9z"/>
+  <path fill="#452c25" d="M285 194.5s-3.3 1.7-3.6 2.4c-.3.7 10-1 15.8-5l-2.3-1.4-9.8 4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M285 194.5s-3.3 1.7-3.6 2.4c-.3.7 10-1 15.8-5l-2.3-1.4-9.8 4z"/>
+  <path fill="#452c25" d="M289 195.2s-6 2.2-1.7 2.3c0 0 8.7-1.8 13.3-5.4l-1.1-1.7-10.5 4.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M289 195.1s-6 2.3-1.7 2.4c0 0 8.7-1.8 13.3-5.4l-1.1-1.7-10.5 4.7z"/>
+  <path fill="#452c25" d="M298 189s-6.5 3.4-5.8 3.7c.7.4 5.3-.6 7.7-2l3.4-2.4-2.9-.8-2.5 1.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M298 189s-6.5 3.4-5.8 3.7c.7.4 5.3-.6 7.7-2l3.4-2.4-2.9-.8-2.5 1.6z"/>
+  <path fill="#452c25" d="M295.5 196.3s-2.3 1.9-2 2.1c.2.2 5-.5 8.6-3.4l-.5-1.7-6.2 2.9"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M295.5 196.3s-2.3 1.9-2 2.1c.2.2 5-.5 8.6-3.4l-.5-1.7-6.2 2.9"/>
+  <path fill="#452c25" d="M291.5 196s-2.2 1.7-1.7 1.8c.5.1 2.3 1.5 10.6-3.9l1-.6-1.5-2-8.4 4.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M291.5 196s-2.2 1.7-1.7 1.8c.5.1 2.3 1.5 10.6-3.9l1-.6-1.5-2-8.4 4.6z"/>
+  <path fill="#452c25" d="M289.8 189.6a66 66 0 00-13.9 7.2l17.9-7m11.2 10.6s-1.5 2.3-1.2 2.5c.3.3 2.1 1.2 4.3-1.7 2-3-2-2.5-2-2.5l-1.1 1.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M305 200.4s-1.5 2.3-1.2 2.5c.3.3 2.1 1.2 4.3-1.7 2-3-2-2.5-2-2.5l-1.1 1.7z"/>
+  <path fill="#452c25" d="M306.6 202s-1 2.4-.5 2.6c.6.3 2-.1 3.2-2.2 1.2-2.2-.6-1.1-.6-1.1l-2 .7zm-3.3-3.5s-2.2 2.7-1.7 3.1c.4.4 3 .3 4.9-2.4 1.9-2.6 0 0 0 0l-.5-2.5-2.7 1.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M306.6 202s-1 2.4-.5 2.6c.6.3 2-.1 3.2-2.2 1.2-2.2-.6-1.1-.6-1.1l-2 .7zm-3.3-3.5s-2.2 2.7-1.7 3.1c.4.4 3 .3 4.9-2.4 1.9-2.6 0 0 0 0l-.5-2.5-2.7 1.7"/>
+  <path fill="#452c25" d="M301.2 197.1s-2.2 2.6-2 3c.2.5 3.2.3 5.6-2.2s.5-3.5.5-3.5l-4 2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M301.2 197.1s-2.2 2.6-2 3c.2.5 3.2.3 5.6-2.2s.5-3.5.5-3.5l-4 2.6"/>
+  <path fill="#452c25" d="M297.4 197.3l-1.4 1.9s.3 1.8 5.1-1.5l4.5-3-2.5-.5-5.8 3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M297.3 197.2l-1.3 2s.3 1.8 5.1-1.5l4.5-3-2.6-.5-5.7 3z"/>
+  <path fill="#452c25" d="M282.2 194.5l-3 1.3s-.7.6 1 .7c1.8 0 5.5-.5 11.9-4 2.8-1.7 4.7-3.3 4.7-3.3l-2.4-.8-12.2 6z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M282.2 194.5l-3 1.3s-.7.6 1 .7c1.8 0 5.5-.5 11.9-4 2.8-1.7 4.7-3.3 4.7-3.3l-2.4-.8-12.2 6z"/>
+  <path fill="#452c25" d="M277 196.4s4.4-.5 6-1.6c0 0-.3.5 2-.4 0 0-1.2 2 5.3-2 6.5-3.8 0 0 0 0l7.2-4.1-.4-.8-14.7 6.2c-1 .3-5.4 2.7-5.4 2.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M290.3 192.4l7.2-4.1-.4-.8-14.7 6.2c-1 .3-5.4 2.7-5.4 2.7s4.4-.5 6-1.6c0 0-.3.5 2-.4 0 0-1.1 2 5.3-2z"/>
+  <path fill="#452c25" d="M308.5 202s-.4 3.4.1 3.5c.5.1 2-1 2.6-3 .6-2.2-2.4-2-2.4-2l-.4 1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M308.5 202s-.4 3.4.1 3.5c.5.1 2-1 2.6-3 .6-2.2-2.4-2-2.4-2l-.4 1.3"/>
+  <path fill="#452c25" d="M310.8 203.5s-.3 2.4 0 2.6c.4.3 1.3.4 2.3-1.6 1-2 .5-1.3.5-1.3l-2.3-1.2-.5 1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M310.8 203.4s-.3 2.5 0 2.7c.4.3 1.3.4 2.3-1.6 1-2 .5-1.3.5-1.3l-2.3-1.2-.5 1.4z"/>
+  <path fill="#452c25" d="M311.4 199s-1.9 4-.8 4c1 0 2.5-3 2.7-3.7.2-.7-1.9-.3-1.9-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M311.4 199s-1.9 4-.8 4c1 0 2.5-3 2.7-3.7.2-.7-1.9-.3-1.9-.3z"/>
+  <path fill="#452c25" d="M311.3 199s-.8 4.5.2 4c1-.3 1.6-3.7 1.7-4.4 0-.7-2 .4-2 .4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M311.3 199s-.8 4.5.2 4c1-.3 1.6-3.7 1.7-4.4 0-.7-2 .4-2 .4z"/>
+  <path fill="#452c25" d="M312.8 199.4s-1.1 3.5 0 4.2c1 .7 1.8-3.4 1.9-4.3 0-1-2 .1-2 .1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.8 199.4s-1.1 3.5 0 4.2c1 .7 1.8-3.4 1.9-4.3 0-1-2 .1-2 .1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M308.4 198.3s-1 3.2-.4 3.5c1.2.6 2.3-2.2 2.4-3.3.1-1.2-2-.2-2-.2zm-7.9-6.6s-2.8 2.4-2.5 2.7c.3.4 3.6-.2 5.1-1.3l2.1-1.5-2.5-1.6-2.2 1.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M303 189.3s-1.8 1.5-1.5 1.9c.4.3 3.6-1 4.2-1.7.6-.6.6-1.3.6-1.3l-3.3 1.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M304.9 189s-2.5 2.1-1.9 2.9c.6.7 4-2.6 4.5-3 .5-.4-2.9 0-2.9 0"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M303.8 188.2l-5 2.3s-4.2 2.7-3.8 3c.4.3 3.7-.6 6-1.7a37.9 37.9 0 005-3.1m-.9 2.1s-5.3 4.7-4.5 5.1c.8.5 4.4-1.4 6.8-3.7"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M305.8 192.4s-3 5-2.7 5.6c.4.5 2.6-1.2 3.7-2.5s2-3.2 2-3.2"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M307.6 192.8s-3.3 6.1-3 6.6c.4.5 2.4.1 3.5-2.3 1.2-2.4 1-4 1-4l-1.5-.3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M309.5 193.1s-3.7 7.6-3 8.3c.8.8 4.8-5.7 5-6.6.3-1.6-2-1.8-2-1.8m-7.7-4.9s-3.3 1.6-2.7 2c.7.2 3.8-1.2 4.2-1.3.5-.1-1.5-.7-1.5-.7z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M302.3 188.6s-2 1.6-1.6 2c.4.5 3.5-1.2 4-1.7.7-.5-2.4-.3-2.4-.3zm4.3.2s-2.8 3.7-2 3.8c.9.2 4.1-2.4 4.2-2.8 0-.5-2.2-1-2.2-1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M307.8 189.6s-3 3.7-2.1 4c.8.2 1-.4 1-.4s2.3-2 2.4-2.5c.2-.5-1.2-1.2-1.2-1.2"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M308.7 190.5s-2.1 3.7-1.6 4c.6.2 1.5-.8 2.4-1.9.9-1-.8-2.1-.8-2.1z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M309.3 192.2s-1.3 2.3-1 3c.4.8 1.6-.5 2.2-1.3.6-.8-1.2-1.7-1.2-1.7zm.5 6.5s-.8 3.2-.2 3.5c1.3.7 2-2.2 2.2-3.2.1-1.2-2-.3-2-.3z"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M315.7 194.4s-.9-.3-1.5-.3c0 0-1.9-1.4-3-1.6-1-.1 0-.2 0-.2s-.2-2.4-.5-2.6c0 0-.1-2.5-1.7-2.6-1.6-.2-5.1.1-5.7-.1-.7-.3-2.6-1-6.3 0-3.8 1-11.2 4.3-11.6 4.4-.4 0 8.5-2 11-3l3.3-.5s-2.8 1.4-.2.8c2.6-.6 2 0 2 0s-.2.6 1.3.3c1.4-.4 1.4 0 1.4 0s1.7.6 3-.2c0 0 .7 2.3 1.6 2.6 0 0 1 2.2 3.1 2.6l1.2.9 1.2.4 1.3-1"/>
+  <path fill="#452c25" stroke="#000" stroke-width=".1" d="M298.3 188s-8.6 3-8.3 3.9c.4.8 9-2.4 10.3-3.2 1.4-1-2-.7-2-.7"/>
+  <path d="M321.8 194.6l.5.2a1.5 1.5 0 00-.3-.3l-.7-.3.1.2.4.2M315 201c.2.2.2.5.3.8v-.2c-.1-.2-.1-.5-.3-.7v.1m1.2-6.5l.9-.2v-.1l-.9.1v.2m1.7-.2l.8-.1a.3.3 0 000-.1 2 2 0 00-.8.1v.1m-3 1.5a.3.3 0 000 .2v-.2m-.1 4.6a4.8 4.8 0 000 .7.4.4 0 000-.1v-.6"/>
+  <path fill="#bd8759" d="M316.6 213.9s-1 .7-1 1a3.8 3.8 0 00-.2.8s.8-.1.7.3c0 0 .3.2.8-.8.4-1 .8-1.5 1.1-1.5.4 0 .8.4 1 .6.2.2.4.4.8.3 0 0-.4-.6-.2-.7l.6-.1s-.3-.7-.9-.8c-.6-.1-1-.3-1-.6.2-.2 1-2.4 1-2.4l-1-1.5-.5 1.3.2 1-1 2.1c0 .1-2.4 1-2.7 1l-.8.9v.5s.3-.4.4-.2c0 0 .3-.3.6-.2.2.1.1.2.1.2l.5-.4.1-.1.6-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M316.6 213.9s-1 .7-1 1a3.8 3.8 0 00-.2.8s.8-.1.7.3c0 0 .3.2.8-.8.4-1 .8-1.5 1.1-1.5.4 0 .8.4 1 .6.2.2.4.4.8.3 0 0-.4-.6-.2-.7l.6-.1s-.3-.7-.9-.8c-.6-.1-1-.3-1-.6.2-.2 1-2.4 1-2.4l-1-1.5-.5 1.3.2 1-1 2.1c0 .1-2.4 1-2.7 1l-.8.9v.5s.3-.4.4-.2c0 0 .3-.3.6-.2.2.1.1.2.1.2l.5-.4.1-.1.6-.1"/>
+  <path fill="#bd8759" d="M323.1 209.2v2.1c0 .3 0 .8-.2 1.1-.2.3-.4.5-.7.5-.3 0-1 0-1.2.3l-.3.4s.5-.3.6 0l-.2.6.9-.2.8-.3.4.2v1c0 .4 0 1.2.3 1.2l.4-.5.5.5-.1-1.2a6.7 6.7 0 01-.3-1l1.5.6c0 .2.4.5.5.5.1 0 0-.5.2-.5.3-.1.4 0 .4 0s-.4-.8-1-1c-.5-.4-1-.4-1.2-.6l-.3-.9v-2.8l-1-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M323.1 209v2.3c0 .3 0 .8-.2 1.1-.2.3-.4.5-.7.5-.3 0-1 0-1.2.3l-.3.4s.5-.3.6 0l-.2.6.9-.2.8-.3.4.2v1c0 .4 0 1.2.3 1.2l.4-.5.5.5-.1-1.2-.3-1s1.4.5 1.5.7l.5.4c.1 0 0-.5.2-.5.3-.1.4 0 .4 0s-.4-.8-1-1c-.5-.4-1-.4-1.2-.6l-.3-.9v-2.8l-1-.2z"/>
+  <path fill="#dcddde" d="M315 197.3s0-1.3.3-1.4c0 0 .1-1.2 1.7-1 0 0 .5-.9 1.4-.4 0 0 .8-.4 1.3-.2l1 .7s.7-.1 1 .1c.3.3.2 1.1.2 1.1s.8.6.8 1.1v.9s.3.3.2.7c0 .4-.4 1-.4 1-.1 0 0 1-.3 1.3l-.8.5c-.2 0-.6.6-1 .6-.3 0-.8-.5-.8-.7 0-.2-.6-.4-.6-.4s-1 1.2-1.8 1c-.8-.2-1.1-.8-1.2-1l-.3-1s-.8-.4-.7-.9c0-.4.4-1 .4-1l-.3-1z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M317.8 212l-.2-.1m.6-.9a.8.8 0 01-.3-.1m0 .6h.2m5.5.5l.5.2m-.2-.6h-.3m.4-.5a.9.9 0 01-.5 0m0 1.8l.4.1m-.4.5a.2.2 0 01.2 0m-.1 1.6a.4.4 0 01.3 0m-5.1-2a.3.3 0 00-.3.1m1-.1c-.1.1-.3.2-.3.4m-4.5.5l.4.3m10-1a.3.3 0 00-.3.3m.7-.1a.2.2 0 000 .2"/>
+  <path fill="#d9c0b9" d="M313.4 215h.6s-.3.7-.2.8c0 .2-.5-.3-.3-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M313.4 215h.6s-.3.7-.2.8c0 .2-.5-.3-.3-.7z"/>
+  <path fill="#d9c0b9" d="M315.6 215.5s-.7 1 .1 1.5c0 0 0-1 .6-1.1l-.8-.4z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M315.6 215.5s-.7 1 .1 1.5c0 0 0-1 .6-1.1l-.8-.4z"/>
+  <path fill="#d9c0b9" d="M319.6 214.5l-.2-.5.2-.3h.6s.4.9 0 1.3c0 0 0-.5-.2-.5h-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M319.6 214.5l-.2-.5.2-.3h.6s.4.9 0 1.3c0 0 0-.5-.2-.5h-.4z"/>
+  <path fill="#d9c0b9" d="M321 213.4h.3l.1.3v.3l-.3.2s-.5-.2-.4.5c0 0-.3-1.2.2-1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M321 213.4h.3l.1.3v.3l-.3.2s-.5-.2-.4.5c0 0-.3-1.2.2-1.3z"/>
+  <path fill="#d9c0b9" d="M323.5 215.9l.4-.4.4.2-.3 1.2-.2-.3-.3-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M323.5 215.9l.4-.4.4.2-.3 1.2-.2-.3-.3-.7z"/>
+  <path fill="#d9c0b9" d="M326 214.8l.5 1s.6-.6-.2-1.5l-.4.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M326 214.8l.5 1s.6-.6-.2-1.5l-.4.5z"/>
+  <path d="M323.3 195.9l.2.2v-.1l-.2-.2m.1 2.2l.4.7v-.2a1.7 1.7 0 00-.4-.7v.2m-.4-1.6l.5.6v-.2l-.5-.5v.1m.5 3.5c0 .3 0 .6-.2.8v.2c.2-.4.2-.7.2-1.1a.5.5 0 000 .1m.5 1v.5a.4.4 0 000 .1 2.2 2.2 0 000-.6m1.8 3.9a4.8 4.8 0 01.1 1.3l-.1-1.5v.2m-.3.8l-.4 1 .4-.8v-.2m-10.3-2.9l.7 1.2v-.1l-.7-1.2v.1m1.8 0c-.2 0-.3-.3-.5-.4v.2c.2 0 .3.4.5.4v-.2m-1 1.8l.5 1v-.2l-.5-1v.2m1.2.4l.5.8v-.1c0-.3-.3-.6-.5-.8m0 1.3l.2.7v-.1l-.3-.7v.1m1.1.3a2.8 2.8 0 01.1.7 3.3 3.3 0 000-.9v.2m-.5 1c0 .3.1.7.3 1v-.2a3.2 3.2 0 01-.3-.9.4.4 0 000 .1m.2-4.4l.8.3v-.1a8 8 0 01-.8-.3v.1m.2 1.2l1 .4c-.3-.3-.7-.4-1-.6v.2m.3 1.2l.6.6v-.1a4.5 4.5 0 01-.6-.6v.1m.4 1.6l.2.7a1.8 1.8 0 00-.2-.8v.1m1-4v.5a10 10 0 010-.5m2.3-.9a3.6 3.6 0 01-.2.5v.1l.2-.4v-.2m1 0v.8a.4.4 0 000 .1 4.2 4.2 0 000-1m.2 1.6v.7a3.7 3.7 0 000-.8m.7 1.5c0 .3-.2.6-.5.8v.1c.3-.2.5-.4.5-.8m-2.4-1.5l-.2.4v.1l.2-.4m.3 1.8a1.9 1.9 0 01-.4.4v.1c.2 0 .3-.2.4-.3v-.1m-.9 1c-.3-.4-.4-.8-.3-1.3v-.1c-.2.5 0 1 .3 1.5v-.2m-1-1l-.1.5v-.6m2.6 1.3c0 .3-.2.5-.3.7v.1l.3-.6v-.2m1.7.7a9.2 9.2 0 01-.5.7v.2l.5-.8m.8.8a17 17 0 00-.2 1.3v.1l.2-1.3a.6.6 0 000-.1m1-1.6v.5-.5M315 202l.1 1.3v-.2a2.2 2.2 0 01-.1-1 .6.6 0 000-.1"/>
+  <path fill="#fff" d="M318.8 196.3c.7-.6 1.7-1.3 2.7-1v-.2c-1-.2-2 .5-2.7 1.1v.1m3.5.8c-.8-.5-2-.6-2.7 0 .7-.5 2-.3 2.7.2v-.2m-2.8 1.1c.3 1 .7 2 .5 3 .2-1-.2-2-.5-3m-1.1.6v3c0-1 .2-2 0-3.1a.4.4 0 000 .1m1.5-.7c1 .2 1.9.9 2.4 1.7v-.1a3.9 3.9 0 00-2.4-1.7v.1m-.8 1.3c0 .6 0 1.2-.2 1.8.2-.5.2-1.2.2-1.8m1.4-.1a3.1 3.1 0 011.2 2v-.1a3.2 3.2 0 00-1.2-2m-4.3 1.7c.2-.3.4-.6.8-.7v-.1c-.4 0-.6.4-.8.7v.1m1.4-5c-.1-.6-.5-1-1-1.2v.1c.5.3.9.6 1 1.2v-.2m-.8 0c-.5-.2-1-.2-1.5-.2a.3.3 0 000 .1c.5 0 1 0 1.5.3v-.2m1.5 0c0-.6 0-1-.4-1.3.3.3.5.7.4 1.2m1.8.7c.5-.3 1-.2 1.5-.2v-.2c-.5 0-1 0-1.5.2v.2m.9 1.2a2.6 2.6 0 011.7 1v-.3a2.6 2.6 0 00-1.7-1v.3m-3.1 2c-.2.6 0 1.5-.9 1.8v.2c.8-.3.7-1.1.9-1.8v-.3"/>
+  <path fill="#fff" d="M319.5 199c.3.7.7 1.4.5 2.2a.9.9 0 000 .3c.2-1-.1-1.8-.5-2.7v.2m1-.1c.7 0 1.3.7 1.4 1.4a1 1 0 000-.2 1.7 1.7 0 00-1.4-1.5v.3m0 1c.1.6.3 1.2.1 1.8v.2c.3-.7 0-1.5 0-2.2a1 1 0 000 .2m-.4-2.6c.7-.1 1.5-.2 2.2.3v-.3c-.7-.5-1.5-.4-2.2-.2v.2m-1.4-1.5c0-.6.6-1 1.2-1.3v-.2c-.6.2-1.2.6-1.3 1.3a1 1 0 000 .2m-.6.4c0-.7-.4-1.3-.7-1.9v.2c.3.6.6 1.1.6 1.8v-.1m-.6.4a2 2 0 00-1-1.4v.3c.5.3.9.7 1 1.3a.8.8 0 000-.2m-1-.3a2.9 2.9 0 00-1.2-.5v.2c.5 0 .8.3 1.2.5v-.2m2.2 3c0 .6.2 1.3-.2 1.9v.2c.4-.7.3-1.6.2-2.3v.1"/>
+  <path fill="#fff" d="M319.4 198.9c.2.6.5 1.3.4 2a5.8 5.8 0 00-.4-2.3v.3m.5-1c.6.3 1.3.5 1.7 1v-.3a3.6 3.6 0 00-1.7-.9v.3m-1.7-1.4a14.8 14.8 0 000-1.7 11.8 11.8 0 010 1.7m-1.2-.4a5.6 5.6 0 01-1.2-.8v.2l1.2.9v-.3m-.2 3.3c-.3.2-.5.5-.6.8v.2a1.6 1.6 0 01.6-.7v-.3m.9.5c0 .5-.3.9-.6 1.2v.2c.4-.4.6-.8.6-1.3 0 0 0-.3 0 0m2.1-3.6c.4-.6 1.3-.7 1.9-.9v-.2c-.6.2-1.5.2-2 .8v.3m-4 0a2 2 0 01-.5-.3v.2l.4.2v-.2m.1 3l-.4.3v.1a.7.7 0 000 .1.8.8 0 01.4-.2.7.7 0 000-.2m.5.1l-.6.6v.2l.6-.6v-.2m1 .3c-.1.6-.8 1.2-.3 1.8v-.2c-.3-.5.2-1 .4-1.4v-.2m.7 0c0 .6 0 1.1-.2 1.7a.9.9 0 000 .2 9.8 9.8 0 00.2-2m1.9-.6c.4.5.8 1.1 1 1.8v-.2a5 5 0 00-1-1.9v.3m.2-.5c.7.6 1.5 1 2 1.8v-.2c-.5-.8-1.3-1.3-2-1.8v.2"/>
+  <path fill="#fff" d="M320.5 197.8h.8l.6.5.6.4c.2.2.2.6.3.9a.7.7 0 000-.2l-.2-.7c0-.2-.3-.4-.5-.5l-.7-.4a1.4 1.4 0 00-.9-.2v.2"/>
+  <path fill="#fff" d="M322.3 199.3l.2.6v-.1l-.2-.7v.2m-2-3.6l1.5-.4v-.3l-1.5.4v.3m-2 .2c0-.2.1-.5.3-.7l.4-.8v-.3l-.4.7c0 .3-.3.5-.4.9v.2m-1.7 4.6l.1 1.3v-.2a1.4 1.4 0 010-.8.7.7 0 000-.2s0-.1 0 0m1 .7c-.2.3-.2.6-.1 1a.3.3 0 000-.2v-.7m.8-.5l-.2.7v.2l.2-.8s0-.2 0 0m0-1.5v.4-.5.1m-.3.2v.1a.7.7 0 000 .3v-.7.4m-.5-.2l-.1.5a.8.8 0 000 .2 3.3 3.3 0 01.1-.4v-.2m-.4 0l-.8.6v.3l.8-.7v-.2m-.6 0a1.6 1.6 0 01-.5.3v.3c.2 0 .3-.2.5-.3v-.2m-1-.3l-.4.2v.2c.2 0 .3 0 .4-.2v-.2m2.9 0v.4a.8.8 0 000-.2v-.4.1m.4-.2l.1.6v-.3a1 1 0 010-.3v-.1.1m.3 0v.3h.1a.8.8 0 00-.1-.6v.2m.4-.2l.4.2v-.2a.8.8 0 00-.4-.2v.2m.2-.3l.6.3v-.3a1.2 1.2 0 01-.6-.3v.2m.5-1h.4v-.2a2.3 2.3 0 00-.4-.1v.3m-.3-.6l.4-.3v-.3l-.4.4v.2m-.4-.5a1 1 0 01.2-.5v-.2a1 1 0 00-.2.7m-.3-.2l.4-.8v-.2l-.4.7v.2"/>
+  <path fill="#fff" d="M318.6 195.3v.9a.7.7 0 000-.3 3.7 3.7 0 010-.7v.1m-1.3.2l.2.3v.6l.1-.5-.3-.6v.2m-.2.5a4.5 4.5 0 00-.6-.4v.2l.6.5v-.2m.8.2c0-.6 0-1.2-.2-1.7v.3c.2.4.3.7.2 1.2a.8.8 0 000 .1m1.2-.7v-.2.2"/>
+  <path fill="#fff" d="M317.7 196.3l.2-1v-.2l-.2 1v.2m3.5 2c.3 0 .6.3.7.6v-.4c-.1-.3-.4-.5-.7-.6v.4m-1 2a1 1 0 010 .4 1.2 1.2 0 000 .3h.1v-1 .3m-.8-.5v1.2s0 .2 0 0v-1.4.2m-.4.4l-.3 1.2a1 1 0 000 .3s0 .1 0 0l.3-1.2v-.3m.5.2v1.1a1.3 1.3 0 000 .3v-1.6.2m-2.6.2a.6.6 0 010 .1v.4c.1-.2.1-.6 0-.8 0-.1 0 0 0 0v.3m1.2-.8v.4c0-.3.1-.6 0-.8v.3m.3 0a.4.4 0 01.1 0v.1a.8.8 0 000 .1v-.2l-.1-.5a1.3 1.3 0 000 .2v.2m.4-.3l.1.3v-.3l-.1-.4a.9.9 0 000 .1v.2m.8-.2l.5.6v-.4a9.3 9.3 0 01-.5-.6v.4m.5-.8l.3.6v-.4a4.1 4.1 0 01-.3-.5v.3m-4.3-2a1.7 1.7 0 00-.4-.2 1.1 1.1 0 000 .2v.2l.4.3v-.4m1.3-.5a.5.5 0 010 .1.8.8 0 000 .2v-.3a1 1 0 000-.4.8.8 0 000 .2v.2m1-1v.8c-.1 0-.1.1 0 .2v.1l.1-1.2a.6.6 0 000-.1v.2m.2 1.5l.5-.7v-.3l-.5.6v.4m.7 0l.2-.3v-.4l-.2.2a1.3 1.3 0 000 .2v.2m1 .2a7.6 7.6 0 01-.8 0v.4h.8v-.4m-.3.9l1 .6v-.4l-1-.6v.4"/>
+  <path fill="#fff" d="M320 198l.8.5v-.4l-.8-.5a2 2 0 000 .2v.2m-2-1.4l.1-.5v-.2.6m-2.3-1c.2.3.5.6.9.8l.6.7s.1-.4 0-.4l-.6-.6-1-.9c.1 0 0 .3 0 .4m.6 1a7.7 7.7 0 01-.4-.4 1.6 1.6 0 000 .2v.1l.4.5v-.3m-.3 2.5l-.3.6v.4l.3-.6v-.4m.3.4l-.1.6a1.3 1.3 0 000 .3l.1-.8v-.2a.6.6 0 000 .1m1 1.8c.2-.6.2-1.3.2-2v.2c0 .5 0 1-.2 1.4v.4m.6-1.5v.6a1.3 1.3 0 000 .3v-1.3a.6.6 0 000 .2v.2m.6-.2c.2.2.3.6.2 1v.1c.1-.5.1-1-.2-1.5v.4"/>
+  <path fill="#fff" d="M318.6 199.3a12.6 12.6 0 01.3 1.7v-.3l-.2-1.7v.3m.5-.1l.6 1v-.3l-.6-1v.3m1.1-1c0-.1-.3-.2-.5-.1v.3c.2 0 .4 0 .5.2v-.3"/>
+  <path fill="#fff" d="M319.7 198.1a7.5 7.5 0 011.1 0v-.4a7.5 7.5 0 00-1 0c-.1 0 0 .4 0 .4m.6-3c-.3.4-.4.9-.5 1.3v.3s0 .1 0 0c0-.4.2-.8.5-1.1v-.5m-1.5.4l.2 1a.7.7 0 000-.2v-.2l-.2-1v.4m-.3.5a1.6 1.6 0 01-.3-.5.8.8 0 000 .2v.2l.2.5v-.3m-.5.2a4 4 0 01-1.2-.6v.4l1.2.6s.1-.4 0-.4"/>
+  <path fill="#dba05f" d="M318.5 196.2l-2.2.4-1.8.2-1.3-.4c-.3 0-1.6-.2-2 .3l-.9.8c-.1.1-.7.6-.7.9 0 .2.1.5.4.5.3 0 .9.6.9.7 0 .3.8.5 1.5.5 1.3 0 2-.7 4-.5 1 .2 3-.7 3.4-1.2.4-.5.6-1 .2-1.7-.3-.6-1.4-.5-1.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M318.5 196.2l-2.2.4-1.8.2-1.3-.4c-.3 0-1.6-.2-2 .3l-.9.8c-.1.1-.7.6-.7.9 0 .2.1.5.4.5.3 0 .9.6.9.7 0 .3.8.5 1.5.5 1.3 0 2-.7 4-.5 1 .2 3-.7 3.4-1.2.4-.5.6-1 .2-1.7-.3-.6-1.4-.5-1.5-.5z"/>
+  <path d="M311.4 198.1v-.1l.1-.1.1-.2a.8.8 0 01.4-.3h.5-.2.2-.2l-.3.1c-.3 0-.3.4-.6.6"/>
+  <path fill="none" d="M311.3 198l.4-.4.6-.3h.3"/>
+  <path fill="none" d="M312 197.4l-.4.3c0 .2-.3.3-.3.3m.7-.5h.5m-.6 0h.5"/>
+  <path d="M312.4 197.9v-.1l-.2.1-.1.1-.3.2-.3.1.4-.2-.4.2.4-.1-.3.1h.1s.3 0 .7-.4"/>
+  <path fill="none" d="M312.3 197.8l-.3.2-.3.2-.2.1m.4-.1l.2-.2.2-.2m-.4.4l-.3.1m.4-.1l-.3.1"/>
+  <path fill="#c6262c" d="M312.9 196.5s0-.6-.6-.8c-.5-.2-1-.2-1.3-.2l-.5.2a2.5 2.5 0 00-.6.2l-.1.2c-.1.2-.4.4-.3.6.2.3 0 .3.2.3s-1 .3-.8.8c.3.6.5.4.6.3l.5-.2.7-.7 1-.4h.5l.7-.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M312.9 196.5s0-.6-.6-.8c-.5-.2-1-.2-1.3-.2l-.5.2a2.5 2.5 0 00-.6.2l-.1.2c-.1.2-.4.4-.3.6.2.3 0 .3.2.3s-1 .3-.8.8c.3.6.5.4.6.3l.5-.2.7-.7 1-.4h.5l.7-.3z"/>
+  <path d="M312.2 197.8c0 .1-.1.3-.3.3h-.3s.1-.4.3-.4h.3"/>
+  <path fill="#d9c0b9" d="M308.6 200.2s-.7-1.2 1.2-1.8c0 0 .6.3.8.6 0 0-.4.5-1.5.7 0 0-.5.1-.5.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M308.6 200.2s-.7-1.2 1.2-1.8c0 0 .6.3.8.6 0 0-.4.5-1.5.7 0 0-.5.1-.5.5z"/>
+  <path fill="#d9c0b9" d="M308.8 200s.8.2 1.3-.2c.5-.3.6-.2.7-.1 0 0 0-.4-.2-.7l-1 .5c-.4.2-.7.1-.8.5"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M308.8 200s.8.2 1.3-.2c.5-.3.6-.2.7-.1 0 0 0-.4-.2-.7l-1 .5c-.4.2-.7.1-.8.5z"/>
+  <path fill="#7a2e26" d="M311 199.6h.5v-.1h-.5a.3.3 0 000 .1m-.3-2l-.1.2v.1l.1-.2v-.1m.5.2l.3-.2v-.1c-.2 0-.3 0-.3.2v.1m.5.8a.3.3 0 00.2-.2.3.3 0 01-.2 0v.2m.4-.2a.8.8 0 00.4-.3v-.1a.7.7 0 01-.4.3v.1m-.7-.7c0 .2-.2.2-.3.4v.1c0-.1.3-.2.3-.4m.3 2c.4 0 .7 0 1-.2a3.1 3.1 0 01-1 0v.2m1.6 0c.4-.4.8-.7 1-1.3a2 2 0 01-1 1v.2m.3-.8c.3-.2.5-.4.6-.8v-.1a1.6 1.6 0 01-.6.8v.1m-.2-2l.7.4v-.1l-.7-.4v.2m6.3 1c.2-.5 0-1-.2-1.4.2.4.4.8.2 1.2v.2m-4.8-.7c.3.2 1 .7.8 1.2.3-.5-.4-1-.8-1.3v.1m2.1 2a1.4 1.4 0 00.1-.3 1.3 1.3 0 010 .3"/>
+  <path fill="#5e3f17" d="M317.9 199.2l.5-.2m-8.5-.3c-.3.2-.8.2-1 .7.2-.5.7-.5 1-.6"/>
+  <path fill="#842116" d="M309.7 197.3c.1 0 .3 0 .3.2a.4.4 0 000 .1.7.7 0 000-.3l-.3-.1m.7.4a.7.7 0 00-.1-.6v.5m.6-.5c0-.3-.1-.5-.3-.6v.1c.2.1.3.4.3.6a.4.4 0 000-.1m.5-.1c0-.3 0-.5-.2-.6v.1l.2.3a.4.4 0 000 .1m-.8-.7c.4-.2 1.4-.3 1.8.2v-.2c-.4-.4-1.4-.3-1.8 0"/>
+  <path fill="#7a2e26" d="M309.5 198.1v-.5s-.1 0 0 .1v.4m4.7 1.4a.6.6 0 00.3-.5.6.6 0 01-.3.3v.2m.7 0a.4.4 0 00.1-.3v-.1.3m4.3-2.4a1 1 0 010 .7.4.4 0 000 .1v-.9.1m-.5.5v.7c.1-.3.2-.6 0-.9v.2m-.4.3"/>
+  <path fill="#452c25" d="M324.3 210.5v.2l.1.1-.1-.4z"/>
+  <path fill="#dcddde" d="M314.4 195c-1.7 0-3.3-1-3.3-1a2.7 2.7 0 01-2.3-2.4c-.8-.4-1.6-2.5-1.6-2.5-1.3.7-3 0-3 0s0-.4-1.4 0c-1.5.3-1.3-.3-1.3-.3s.6-.6-2 0 .2-.8.2-.8c-.8.2-3.3.4-3.3.4-.9 0-1.8.5-2.8.8l-2.3.6-6.8 3-5.5 2.1c.2 0 3.4-2.1 7.5-4a87.8 87.8 0 0110.3-3.9 9.9 9.9 0 016.5 0c.6.2 4.2 0 5.7 0 1.6.3 1.8 2.9 1.8 2.9.3.1.4 2.6.4 2.6s-1 0 .1.1c1 .2 2.9 1.7 2.9 1.7h.7s.4-.5.9-.7l1.5-.5a11.6 11.6 0 012 0l2 .3 1.2.3h.5c1-.5 3-1.2 3.4-1.1 0 0 .7-.2 1.1-.5a105 105 0 001.3-1s-.6-4.5 3.9-4l11.5 1.2a43.9 43.9 0 016.5 1.8l5.2 2.4 4 1.7c2.3 1 4 2.4 4 2.4-1.5-.6-2.6-1.3-3.7-1.8-.9-.4-1.8-.5-2.6-.9l-3.6-1.7c-3.5-1.6-3.5-1.7-4.9-1.8-1 0 .7 1.2.7 1.2l-4.1-1.7a6 6 0 00-2.9-.5 5.8 5.8 0 01-2.2-.3c-.6-.2-3.8-.3-4.4-.4a7.3 7.3 0 01-1-.2l.2.4-1.5-.3-.5.7s-1.5.3-1.6-.2c-.1-.5-1 2.2-1.3 3-.4.8-2.2.6-2.7 1-.4.5-1.4.9-1.6 1h-1.3c-.6 0-.1 0-1 .3 0 0-.9 0-1.2-.2l-1.4-.4a27.5 27.5 0 00-3.5-.2 5.4 5.4 0 00-2.7 1.1"/>
+  <path fill="#e7e7e7" stroke="#000" stroke-width=".1" d="M314.4 195c-1.7 0-3.3-1-3.3-1a2.7 2.7 0 01-2.3-2.4c-.8-.4-1.6-2.5-1.6-2.5-1.3.7-3 0-3 0s0-.4-1.4 0c-1.5.3-1.3-.3-1.3-.3s.6-.6-2 0 .2-.8.2-.8c-.8.2-3.3.4-3.3.4-.9 0-1.8.5-2.8.8l-2.3.6-6.8 3-5.5 2.1c.2 0 3.4-2.1 7.5-4a87.8 87.8 0 0110.3-3.9 9.9 9.9 0 016.5 0c.6.2 4.2 0 5.7 0 1.6.3 1.8 2.9 1.8 2.9.3.1.4 2.6.4 2.6s-1 0 .1.1c1 .2 2.9 1.7 2.9 1.7h.7s.4-.5.9-.7l1.5-.5a11.6 11.6 0 012 0l2 .3 1.2.3h.5c1-.5 3-1.2 3.4-1.1 0 0 .7-.2 1.1-.5l1.3-1s-.6-4.5 3.9-4l11.5 1.2a43.9 43.9 0 016.5 1.8l5.2 2.4 4 1.7c2.3 1 4 2.4 4 2.4-1.5-.6-2.6-1.3-3.7-1.8-.9-.4-1.8-.5-2.6-.9l-3.6-1.7c-3.5-1.6-3.5-1.7-4.9-1.8-1 0 .7 1.2.7 1.2l-4.1-1.7a6 6 0 00-2.9-.5 5.8 5.8 0 01-2.2-.3c-.6-.2-3.8-.3-4.4-.4a7.3 7.3 0 01-1-.2l.2.4-1.5-.3-.5.7s-1.5.3-1.6-.2c-.1-.5-1 2.2-1.3 3-.4.8-2.2.6-2.7 1-.4.5-1.4.9-1.6 1h-1.3c-.6 0-.1 0-1 .3 0 0-.9 0-1.2-.2a17.9 17.9 0 00-1.4-.4c-.5-.2-3.1-.2-3.5-.2a5.4 5.4 0 00-2.7 1.1"/>
+  <path fill="#452c25" d="M314.6 194.4s-.2.2-.2.5v.2"/>
+  <path fill="#574f4c" d="M323.3 194l.7.5a.5.5 0 00-.1-.1 6.5 6.5 0 00-.7-.6.6.6 0 000 .1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bq.svg
new file mode 100644
index 0000000..4b74eb4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bq.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bq" viewBox="0 0 640 480">
+  <path fill="#21468b" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v320H0z"/>
+  <path fill="#ae1c28" d="M0 0h640v160H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/br.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/br.svg
new file mode 100644
index 0000000..3252a8e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/br.svg
@@ -0,0 +1,45 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-br" viewBox="0 0 640 480">
+  <g stroke-width="1pt">
+    <path fill="#229e45" fill-rule="evenodd" d="M0 0h640v480H0z"/>
+    <path fill="#f8e509" fill-rule="evenodd" d="M321.4 436l301.5-195.7L319.6 44 17.1 240.7 321.4 436z"/>
+    <path fill="#2b49a3" fill-rule="evenodd" d="M452.8 240c0 70.3-57.1 127.3-127.6 127.3A127.4 127.4 0 11452.8 240z"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M283.3 316.3l-4-2.3-4 2 .9-4.5-3.2-3.4 4.5-.5 2.2-4 1.9 4.2 4.4.8-3.3 3m86 26.3l-3.9-2.3-4 2 .8-4.5-3.1-3.3 4.5-.5 2.1-4.1 2 4.2 4.4.8-3.4 3.1m-36.2-30l-3.4-2-3.5 1.8.8-3.9-2.8-2.9 4-.4 1.8-3.6 1.6 3.7 3.9.7-3 2.7m87-8.5l-3.4-2-3.5 1.8.8-3.9-2.7-2.8 3.9-.4 1.8-3.5 1.6 3.6 3.8.7-2.9 2.6m-87.3-22l-4-2.2-4 2 .8-4.6-3.1-3.3 4.5-.5 2.1-4.1 2 4.2 4.4.8-3.4 3.2m-104.6-35l-4-2.2-4 2 1-4.6-3.3-3.3 4.6-.5 2-4.1 2 4.2 4.4.8-3.3 3.1m13.3 57.2l-4-2.3-4 2 .9-4.5-3.2-3.3 4.5-.6 2.1-4 2 4.2 4.4.8-3.3 3.1m132-67.3l-3.6-2-3.6 1.8.8-4-2.8-3 4-.5 1.9-3.6 1.7 3.8 4 .7-3 2.7m-6.7 38.3l-2.7-1.6-2.9 1.4.6-3.2-2.2-2.3 3.2-.4 1.5-2.8 1.3 3 3 .5-2.2 2.2m-142.2 50.4l-2.7-1.5-2.7 1.3.6-3-2.1-2.2 3-.4 1.4-2.7 1.3 2.8 3 .6-2.3 2M419 299.8l-2.2-1.1-2.2 1 .5-2.3-1.7-1.6 2.4-.3 1.2-2 1 2 2.5.5-1.9 1.5"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M219.3 287.6l-2.7-1.5-2.7 1.3.6-3-2.1-2.2 3-.4 1.4-2.7 1.3 2.8 3 .6-2.3 2"/>
+    <path fill="#ffffef" fill-rule="evenodd" d="M219.3 287.6l-2.7-1.5-2.7 1.3.6-3-2.1-2.2 3-.4 1.4-2.7 1.3 2.8 3 .6-2.3 2m42.3 3l-2.6-1.4-2.7 1.3.6-3-2.1-2.2 3-.4 1.4-2.7 1.3 2.8 3 .5-2.3 2.1m-4.8 17l-2.6-1.5-2.7 1.4.6-3-2.1-2.3 3-.4 1.4-2.7 1.3 2.8 3 .6-2.3 2m87.4-22.2l-2.6-1.6-2.8 1.4.6-3-2-2.3 3-.3 1.4-2.7 1.2 2.8 3 .5-2.2 2.1m-25.1 3l-2.7-1.5-2.7 1.4.6-3-2-2.3 3-.3 1.4-2.8 1.2 2.9 3 .5-2.2 2.1m-68.8-5.8l-1.7-1-1.7.8.4-1.9-1.3-1.4 1.9-.2.8-1.7.8 1.8 1.9.3-1.4 1.3m167.8 45.4l-2.6-1.5-2.7 1.4.6-3-2.1-2.3 3-.4 1.4-2.7 1.3 2.8 3 .6-2.3 2m-20.8 6l-2.2-1.4-2.3 1.2.5-2.6-1.7-1.8 2.5-.3 1.2-2.3 1 2.4 2.5.4-1.9 1.8m10.4 2.3l-2-1.2-2.1 1 .4-2.3-1.6-1.7 2.3-.3 1.1-2 1 2 2.3.5-1.7 1.6m29.1-22.8l-2-1-2 1 .5-2.3-1.6-1.7 2.3-.3 1-2 1 2.1 2.1.4-1.6 1.6m-38.8 41.8l-2.5-1.4-2.7 1.2.6-2.8-2-2 3-.3 1.3-2.5 1.2 2.6 3 .5-2.3 1.9m.6 14.2l-2.4-1.4-2.4 1.3.6-2.8-1.9-2 2.7-.4 1.2-2.5 1.1 2.6 2.7.5-2 2m-19-23.1l-1.9-1.2-2 1 .4-2.2-1.5-1.7 2.2-.2 1-2 1 2 2.2.4-1.6 1.6m-17.8 2.3l-2-1.2-2 1 .5-2.2-1.6-1.7 2.3-.2 1-2 1 2 2.1.4-1.6 1.6m-30.4-24.6l-2-1.1-2 1 .5-2.3-1.6-1.6 2.2-.3 1-2 1 2 2.2.5-1.6 1.5m3.7 57l-1.6-.9-1.8.9.4-2-1.3-1.4 1.9-.2.9-1.7.8 1.8 1.9.3-1.4 1.3m-46.2-86.6l-4-2.3-4 2 .9-4.5-3.2-3.3 4.5-.6 2.2-4 1.9 4.2 4.4.8-3.3 3.1"/>
+    <path fill="#fff" fill-rule="evenodd" d="M444.4 285.8a124.6 124.6 0 005.8-19.8c-67.8-59.5-143.3-90-238.7-83.7a124.5 124.5 0 00-8.5 20.9c113-10.8 196 39.2 241.4 82.6z"/>
+    <path fill="#309e3a" d="M414 252.4l2.3 1.3a3.4 3.4 0 00-.3 2.2 3 3 0 001.4 1.7c.7.5 1.4.8 2 .7.6 0 1-.3 1.3-.7a1.3 1.3 0 00.2-.9 2.3 2.3 0 00-.5-1c-.2-.3-.7-1-1.5-1.8a7.7 7.7 0 01-1.8-3 3.7 3.7 0 012-4.4 3.8 3.8 0 012.3-.2 7 7 0 012.6 1.2c1.4 1 2.3 2 2.6 3.2a4.1 4.1 0 01-.6 3.3l-2.4-1.5c.3-.6.4-1.2.2-1.7-.1-.5-.5-1-1.2-1.4a3.2 3.2 0 00-1.8-.7 1 1 0 00-.9.5c-.2.3-.2.6-.1 1s.6 1.2 1.6 2.2c1 1 1.6 1.9 2 2.5a3.9 3.9 0 01-.3 4.2 4.1 4.1 0 01-1.9 1.5 4 4 0 01-2.4.3c-.9-.2-1.8-.6-2.8-1.3-1.5-1-2.4-2.1-2.7-3.3a5.4 5.4 0 01.6-4zm-11.6-7.6l2.5 1.3a3.4 3.4 0 00-.2 2.2 3 3 0 001.4 1.6c.8.5 1.4.7 2 .6.6 0 1-.3 1.3-.8a1.3 1.3 0 00.2-.8c0-.3-.2-.7-.5-1a34.6 34.6 0 00-1.6-1.8c-1.1-1.1-1.8-2-2-2.8a3.7 3.7 0 01.4-3.1 3.6 3.6 0 011.6-1.4 3.8 3.8 0 012.2-.3 7 7 0 012.6 1c1.5 1 2.4 2 2.7 3.1a4.1 4.1 0 01-.4 3.4l-2.5-1.4c.3-.7.4-1.2.2-1.7s-.6-1-1.3-1.4a3.2 3.2 0 00-1.9-.6 1 1 0 00-.8.5c-.2.3-.2.6-.1 1s.7 1.2 1.7 2.2c1 1 1.7 1.8 2 2.4a3.9 3.9 0 010 4.2 4.2 4.2 0 01-1.8 1.6 4 4 0 01-2.4.3 8 8 0 01-2.9-1.1 6 6 0 01-2.8-3.2 5.4 5.4 0 01.4-4zm-14.2-3.8l7.3-12 8.8 5.5-1.2 2-6.4-4-1.6 2.7 6 3.7-1.3 2-6-3.7-2 3.3 6.7 4-1.2 2-9-5.5zm-20.7-17l1.1-2 5.4 2.7-2.5 5c-.8.2-1.8.3-3 .2a9.4 9.4 0 01-3.3-1 7.7 7.7 0 01-3-2.6 6 6 0 01-1-3.5 8.6 8.6 0 011-3.7 8 8 0 012.6-3 6.2 6.2 0 013.6-1.1c1 0 2 .3 3.2 1 1.6.7 2.6 1.7 3.1 2.8a5 5 0 01.3 3.5l-2.7-.8a3 3 0 00-.2-2c-.3-.6-.8-1-1.6-1.4a3.8 3.8 0 00-3.1-.3c-1 .3-1.9 1.2-2.6 2.6-.7 1.4-1 2.7-.7 3.8a3.7 3.7 0 002 2.4c.5.3 1.1.5 1.7.5a6 6 0 001.8 0l.8-1.6-2.9-1.5zm-90.2-22.3l2-14 4.2.7 1.1 9.8 3.9-9 4.2.6-2 13.8-2.7-.4 1.7-10.9-4.4 10.5-2.7-.4-1.1-11.3-1.6 11-2.6-.4zm-14.1-1.7l1.3-14 10.3 1-.2 2.4-7.5-.7-.3 3 7 .7-.3 2.4-7-.7-.3 3.8 7.8.7-.2 2.4-10.6-1z"/>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M216.5 191.3c0-1.5.3-2.6.7-3.6a6.7 6.7 0 011.4-1.9 5.4 5.4 0 011.8-1.2c1-.3 2-.5 3-.5 2.1 0 3.7.8 5 2a7.4 7.4 0 011.6 5.5c0 2.2-.7 4-2 5.3a6.5 6.5 0 01-5 1.7 6.6 6.6 0 01-4.8-2 7.3 7.3 0 01-1.7-5.3z"/>
+      <path fill="#f7ffff" d="M219.4 191.3c0 1.5.3 2.7 1 3.6.7.8 1.6 1.3 2.8 1.3a3.5 3.5 0 002.8-1.1c.7-.8 1-2 1.1-3.7 0-1.6-.2-2.8-1-3.6a3.5 3.5 0 00-2.7-1.3 3.6 3.6 0 00-2.8 1.2c-.8.8-1.1 2-1.2 3.6z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M233 198.5l.2-14h6c1.5 0 2.5.2 3.2.5.7.2 1.2.7 1.6 1.3s.6 1.4.6 2.3a3.8 3.8 0 01-1 2.6 4.5 4.5 0 01-2.7 1.2l1.5 1.2c.4.4.9 1.2 1.5 2.3l1.7 2.8h-3.4l-2-3.2-1.4-2a2.1 2.1 0 00-.9-.6 5 5 0 00-1.4-.2h-.6v5.8H233z"/>
+      <path fill="#fff" d="M236 190.5h2c1.4 0 2.3 0 2.6-.2.3 0 .6-.3.8-.5s.3-.7.3-1c0-.6-.1-1-.4-1.2-.2-.3-.6-.5-1-.6h-2l-2.3-.1v3.5z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M249 185.2l5.2.3c1.1 0 2 .1 2.6.3a4.7 4.7 0 012 1.4 6 6 0 011.2 2.4c.3.9.4 2 .3 3.3a9.3 9.3 0 01-.5 3c-.4 1-1 1.8-1.7 2.4a5 5 0 01-2 1c-.6.2-1.5.2-2.5.2l-5.3-.3.7-14z"/>
+      <path fill="#fff" d="M251.7 187.7l-.5 9.3h3.8c.5 0 .9-.2 1.2-.5.3-.3.6-.7.8-1.3.2-.6.4-1.5.4-2.6l-.1-2.5a3.2 3.2 0 00-.8-1.4 2.7 2.7 0 00-1.2-.7 13 13 0 00-2.3-.3h-1.3z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M317.6 210.2l3.3-13.6 4.4 1 3.2 1c.7.4 1.3 1 1.6 1.9.4.8.4 1.7.2 2.8-.2.8-.5 1.5-1 2a3.9 3.9 0 01-3 1.4c-.7 0-1.7-.2-3-.5l-1.7-.5-1.2 5.2-2.8-.7z"/>
+      <path fill="#fff" d="M323 199.6l-.8 3.8 1.5.4c1 .2 1.8.4 2.2.3a1.9 1.9 0 001.6-1.5c0-.5 0-.9-.2-1.3a2 2 0 00-1-.9l-1.9-.5-1.3-.3z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M330.6 214.1l4.7-13.2 5.5 2c1.5.5 2.4 1 3 1.4.5.5.9 1 1 1.8s.2 1.5 0 2.3c-.4 1-1 1.7-1.8 2.2-.8.4-1.8.5-3 .3.4.5.8 1 1 1.6l.8 2.7.6 3.1-3.1-1.1-1-3.6a19.5 19.5 0 00-.7-2.4 2.1 2.1 0 00-.6-.8c-.2-.3-.6-.5-1.3-.7l-.5-.2-2 5.6-2.6-1z"/>
+      <path fill="#fff" d="M336 207.4l1.9.7c1.3.5 2.1.7 2.5.7.3 0 .6 0 .9-.3.3-.2.5-.5.6-.9.2-.4.2-.8 0-1.2a1.7 1.7 0 00-.8-.9l-2-.7-2-.7-1.2 3.3z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M347 213.6a9 9 0 011.7-3.2 6.6 6.6 0 011.8-1.5 6 6 0 012-.7c1 0 2 0 3.1.4a6.5 6.5 0 014.2 3.3c.8 1.6.8 3.5.2 5.7a7.4 7.4 0 01-3.4 4.5c-1.5.9-3.3 1-5.2.4a6.6 6.6 0 01-4.2-3.3 7.3 7.3 0 01-.2-5.6z"/>
+      <path fill="#fff" d="M349.8 214.4c-.4 1.5-.5 2.8 0 3.8s1.2 1.6 2.3 2c1 .3 2 .2 3-.4 1-.5 1.6-1.6 2.1-3.2.5-1.5.5-2.7 0-3.7a3.5 3.5 0 00-2.2-2 3.6 3.6 0 00-3 .3c-1 .6-1.7 1.6-2.2 3.2z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M374.3 233.1l6.4-12.4 5.3 2.7a10 10 0 012.7 1.9c.5.5.8 1.1.8 1.9s0 1.5-.4 2.2a3.8 3.8 0 01-2 2c-1 .2-2 .2-3.1-.2.4.6.6 1.2.8 1.7.2.6.3 1.5.4 2.8l.2 3.2-3-1.5-.4-3.7a20 20 0 00-.3-2.5 2 2 0 00-.5-1l-1.2-.7-.5-.3-2.7 5.2-2.5-1.3z"/>
+      <path fill="#fff" d="M380.5 227.2l1.9 1c1.2.6 2 1 2.3 1 .3 0 .7 0 1-.2.3-.1.5-.4.7-.8.2-.4.3-.8.2-1.2a2 2 0 00-.7-1 23.7 23.7 0 00-1.8-1l-2-1-1.6 3.2z"/>
+    </g>
+    <g stroke-opacity=".5">
+      <path fill="#309e3a" d="M426.1 258.7a8.9 8.9 0 012.5-2.6 6.6 6.6 0 012.2-.9 5.5 5.5 0 012.2 0c1 .2 1.9.6 2.8 1.2a6.6 6.6 0 013 4.4c.3 1.7-.2 3.6-1.4 5.5a7.3 7.3 0 01-4.5 3.3 6.5 6.5 0 01-5.2-1.1 6.6 6.6 0 01-3-4.4c-.3-1.8.2-3.6 1.4-5.4z"/>
+      <path fill="#fff" d="M428.6 260.3c-1 1.3-1.3 2.5-1.1 3.6a3.6 3.6 0 001.6 2.5c1 .7 2 .9 3 .6 1-.3 2-1 2.9-2.4.9-1.4 1.3-2.6 1.1-3.6-.1-1-.7-1.9-1.6-2.6s-2-.8-3-.5c-1 .2-2 1-3 2.4z"/>
+    </g>
+    <path fill="#309e3a" d="M301.8 204.5l2.3-9.8 7.2 1.7-.3 1.6-5.3-1.2-.5 2.2 4.9 1.1-.4 1.7-4.9-1.2-.6 2.7 5.5 1.3-.4 1.6-7.5-1.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bs.svg
new file mode 100644
index 0000000..a14500b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bs.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bs" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="bs-a">
+      <path fill-opacity=".7" d="M-12 0h640v480H-12z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#bs-a)" transform="translate(12)">
+    <path fill="#fff" d="M968.5 480h-979V1.8h979z"/>
+    <path fill="#ffe900" d="M968.5 344.5h-979V143.3h979z"/>
+    <path fill="#08ced6" d="M968.5 480h-979V320.6h979zm0-318.7h-979V2h979z"/>
+    <path d="M-11 0c2.3 0 391.8 236.8 391.8 236.8L-12 479.2-10.9 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bt.svg
new file mode 100644
index 0000000..f4b6e63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bt.svg
@@ -0,0 +1,89 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bt" viewBox="0 0 640 480">
+  <path fill="#ffd520" d="M.1 0h640.1v480H.1z"/>
+  <path fill="#ff4e12" d="M.1 480h640.1V0z"/>
+  <g stroke="#000" stroke-width=".5">
+    <g fill="#fff" stroke-width=".4">
+      <path d="M345.4 150c-4-1.3-6.6.7-6.4 5.9 0 5.1 2.8 8 6.8 6.1l-.4-12z"/>
+      <path d="M348.9 140.4c-3.3-2.6-6.4-1.5-8 3.4-1.5 5 .1 8.6 4.5 8l3.5-11.4z"/>
+      <path d="M354.4 131c-2.8-3-6-2.4-8.4 2.2-2.3 4.6-1.3 8.5 3.2 8.7l5.2-10.8zm-3.6 45.5c-4.9 1.8-5.4 8.5-2.3 12.6 3 4.1 8.7 4.9 11.8 0l-9.5-12.6z"/>
+      <path d="M345.1 162.3c-4.6-1.5-8.8 4.7-9.5 10.3-.9 7-11 9.4-5.4 20.1 1.2-6.8 5.7-10.6 9.3-10.8 3.6-.3 9-1 11.3-5.4l-5.7-14.2zm14.7 27.6c-5.4 1.3-6.2 8.5-2.3 13.6 3.3 4.4 13.7 3.4 13.4-1l-11-12.6zm15.3 43.4c.3-4.7-7.2-6.5-10.8-5.6-3.6 1-10.5-.1-12-4-1.4 3.1.5 6.5 5.7 8.2 4 1.2 3.9 4 2.7 5.4 3 .5 11.7.5 14.4-4z"/>
+      <path d="M370.9 203.7c-5.3-2.4-8.4 1.2-10.4 4.6-3 5-12.1-1.4-15.2 5.3 4.2-1.8 8.4 2 10.4 3.3 5.7 3.7 16.6 2.6 18.2-6.2l-3-7z"/>
+      <path d="M374 209.8c-5.3 4-7.4 8.8-7.2 12 .1 3.2 4.6 10.3 9.5 10.7 2.8-5.8 4.3-18-2.3-22.7zm-22 24.9c0-2 2.8-2.7 4.8-2 1.9.6 4.9 2.5 3.8 4.6l-8.6-2.6zM323 224c-.5-2.3 3.2-6.3 8.2-4.1 5 2.2 5.7 6.4 3.6 8.1l-11.8-4z"/>
+      <path d="M335.2 228.4c-.4-1.3 3.3-3.9 9.4-2.4 6.2 1.6 7.7 5.6 7.5 8.7l-16.9-6.3zm-12.9-4.3c3.3-2.4 2-7-.9-8.5-5.2-2.6-3.3-9.2-6.7-10.5-3.3-1.3-6.5-3.6-6.7-6-1.6 3.3-.6 6.2 1.7 8.3 2.3 2-1.8 10.4 1.2 12.6l11.4 4.1zm-69-1.8c-2.7-4.2-9.1-3.5-11.8-.5-2.7 3-2.3 7.3.2 9.3l11.6-8.8zm15.5-6.3c-1-5.7-7.9-6.3-11.6-4.9-3.8 1.4-6.3 7.1-3.9 11.2l15.5-6.3z"/>
+      <path d="M279 215.2c2.5-4.7-2.3-11.8-7.7-12.8-4.5-1-9.8-.9-11.6-5.3-1 3.8 1.8 6.3 5.2 8.5 3.3 2.2-.6 7.8 4.8 11l9.4-1.4z"/>
+      <path d="M278.6 215.4c-1.2-3.4 1.1-8 5.7-7.6 4.7.3 7.3 3.6 5.3 7.9l-11-.3z"/>
+      <path d="M288.9 215.7c-.7-3.6 2.2-7.8 6.8-6.8 4.5 1 6.6 4.7 4 8.5l-10.8-1.8z"/>
+      <path d="M299 217.3c-.4-3.6 2.7-7.6 7.2-6.4 4.5 1.2 6.4 5 3.6 8.7l-10.7-2.3zm-77.6 59c-8.7 0-10.8 2-12 11-1.6 11 13.5 12.3 12-11z"/>
+      <path d="M225.2 264.7c-13.2-5-20.4 16-33.6 12.2 4.7 7.5 16.1 0 20.4.8 7.2 1.3 22.8-1.4 13.2-13zm-8.6 28.7c-6.6-3-13.6 7-12.4 11.5 1.7 5.5 16.7 1 12.4-11.5zM186 336.7c3.6 1 8 3 7.2 10-.8 7-14 21.1-25.8 22-11.8.7-16 15-26.3 11 9.6-1.8 9.6-12.6 17-16-5.4-2-8.2 10.3-15.2 10.3s-10.3 11.1-18.8 10.3c-8.5-.7-9.3 13.5-26.4 13.7-13 .1-29 15.3-34.9 8.7 12.7-1.8 17.8-8.8 25.3-16.5 12-12.3 25.7-6.8 30.4-17.7a31.6 31.6 0 01-18.3 5.4c-8-.2-16.6 12.6-25.5 7 5.1-.7 8.5-2.9 13.9-8.6 5.5-5.8 13.7-2 20.1-8 10-9.2 18.7-1.5 28.3-13-2.7-1.4-8.5-.5-13.9 2.4-5.4 2.8-12.3-2-18.5 1.4.7-7.6 15.2-3.3 24.2-8.5 10.2-6 18.6-4.2 26.6-3.5-11.2 0-15.5-10.7-31-7.6-6.7 1.4-12.1-9.3-18.8-3.9.2-4 7.2-7.2 14.4-3.3 7.2 3.9 10.1-3.4 24.5 5.7 6 3.7 16.1-2.4 22.5 1.6-.8-2.4-4.5-4-8.8-3.6 2.7-5.6 20.2-4.9 27.8.7z"/>
+      <path d="M197.4 328.3c-5.6-4.4-13.5.9-19-1.2 0 3.6 1.9 9 7.8 11.1 1.8-1.3 10-8.4 11.2-9.9z"/>
+      <path d="M206.3 315.8c-8.9-4.5-10.4 6.7-17.4 4.4.3 3.2 2.9 7.2 8.5 8.1l9-12.5z"/>
+      <path d="M211.6 305.6c-13.1-5.1-14.8 7.5-22.5 5 1.8 4.4 12.8 6.8 18.5 5.2l4-10.2zm18-55.2c-3.5-5-10.8-1-12 4.9-1.1 5.8 1.7 13.9 6.6 12l5.4-17z"/>
+      <path d="M238.5 235c-6-1.5-13-.8-12.2 5-2.4 1.1-3 8.7 3.3 10.4l8.9-15.5z"/>
+      <path d="M242.5 231c-6-7-12.5-6.9-16.2-4-6.9 5.5-13.5 2.4-13.7 7.8 4.1-3.2 7.8.6 11-.5 3.4-1.2 5.9 5.3 15.2 2.6l3.7-6zm-14.3 103.9c.9 1.7 6.4 2.4 9.1-.4 3.6-3.8-.3-14.2-6-15-5.7-.7-6.2 11.8-3.1 15.4z"/>
+      <path d="M221.8 335.1c8 3 11.5-3.7 7.2-8a80 80 0 01-7.2 8z"/>
+      <path d="M191.4 346.2c-1.6 4.7-9.6 5.4-18.6 19.8-9 14.5-17.6 8.4-19.8 18.3 10.8-8.7 19.3-3 25.8-11.6 9.7-13.1 17.8-11.2 21.6-20 5.4-12.7 29-12.4 30.4-32.3-8-1.5-33.3 19.9-39.4 25.8zm203.2-194.7c10.3 3.4 10.5 16.7 22.4 21.1 11.8 4.4 13 15 22.7 12.4-9-2.5-8.4-12.9-17.8-15.5-11-3-15.2-19.8-24-22.4m44 74.3c1.8 4.2 1.5 11.5-5 13.4 3.5 2.2 8.7.2 11.5-4.6-4.2 9.4-1.4 17.9 5.3 19.6-3.2-6.6 4-9.7 1.7-14 4.2 1.9 8 7.7 7.8 11.3 5.6-6.2-4-14.5-2.3-20.3l-19-5.4zM375 287.6c-6.3-5.5-9 1.5-12-1-3-2.2-6.8-2.5-8.3-.3 5.4.2 2.8 4.4 13.3 5.4-10.5.7-8.6 12.5-15.6 11.9 7.4 7 11.3-6.3 17.4-4.1-1.8.5 2.8 4.7-.4 10.4 5.2-.1 7.3-7.3 8-11l-2.4-11.3zm-139 60.2c-2.2-2-9-2.9-11.5-1.3-2.6 1.5-1.7 2 1.4 2.2 3.1.2 7 5.2.4 5.5-3.1.1-2 7.6-8.5 8.1 2.6 3.2 10.2 1.1 12.9-2.4-.5 2.9 3.3 5.5 1.8 9 4.7.5 2-9.7 9.5-9.2-3 .4-1.8 7.4 3.6 5.6-3.2 1.5-1.5 5.3 2 4.4-2.2.7-3 3.7.2 5.4 3.1-4.3-.4-19.5-11.7-27.3zm280.6-142.1a17.9 17.9 0 100-35.7 17.9 17.9 0 000 35.7z"/>
+      <path d="M423.4 227.2c5.5-5.1 13.7-7.7 19.4-3.8 5.6 3.8 24.4 8.4 33.7 2 9.3-6.4 13.7-9.8 17.8-9 3 4.6 6.8 6.8 11.4 7.2 1.4 1.6 6.5 2.8 9.3 2.5 4.1 1 9.1-.3 13.1-4.7 6.2 1 12-3.7 14.2-10.7 6.6-.7 7-8 2.8-13-3.8-.7-.9-13.8-14.9-11.2 6 3.6 1.4 10.8 6.3 14.2-3.3 0-7.7 1.4-8.7 6.4 1.3-3.4-.2-5.8-1-6.5 0-3-6.5-10.3-12.7-7.6 4.4 1 2 8 5.2 10.8a8.1 8.1 0 00-6.2 3.3c-1.7-3-7.6-6-11.2-6.3 0-1-.2-3-.7-4.1-1.6-3.1-3-6.8-2.3-11.5a48 48 0 00-7.2 11.4c-4.9-3.4-17 1.5-22.7 2.8-5.6 1.3-24.7-1.8-29-6.4a49.2 49.2 0 00-21-9.8c-11-3.2-11-15.2-23.1-23.5-.3 15 22.4 62.4 27.5 67.5zM297.2 341.1a17.3 17.3 0 100-34.6 17.3 17.3 0 000 34.6z"/>
+      <path d="M256 327.8c3.5 4.5 9.4 4.2 11.9 3.9 2 5.4 8.6 5.2 11.4 8.2 2.9 3 12.5 2.7 15.3 1-2.5-.2-5.9-1.8-9-4.5-4-3.2-2.2-9.8-5.2-12a11 11 0 002.2-8.6c2.4-1.4 4.2-3.7 4.4-4.9a15 15 0 009.6-4.1c2.2 2 7.7-.6 10.7 2.8.6-8.5-7.5-13-13-10.1-2.1-1.2-7.9-.4-9 1.1-1.7-.8-6.8 1.8-9 3.5 2.5-1.4 2.9-5.7 1.9-7.2 2.2-1 4.6-3.9 4.9-6 3 .5 7.7-1.6 9.7-1.1-3.3-4.4-8.8-6-14.5-5.5-5.9.3-8.4 4.4-9.2 8.8-3.4 2.1-4.6 9-3.3 11.5-2 0-3.9 1.9-4.6 3a26.7 26.7 0 00-9.4-2m1.3-7c-1.2-3.4.3-6.4 1.1-9 2-6.8.8-8.6-5.3-7.7a47 47 0 004.2 16.7z"/>
+      <path d="M248.6 282.3c1.6 1.6 7 2.3 7.6-2.6.7-5.6-1.6-7.8-6.5-5.6-.4 1.3-.8 6.5-1 8.2z"/>
+      <path d="M249.8 273.9c2 .8 6.5 2.5 9-2.3 2-4-.7-7-5-6.8-1 1.2-3 5.3-4 9.1z"/>
+      <path d="M253.6 264.4c.5 1.6 5.8 6.7 9.6 3 3.9-3.7 3.9-9.3-1.9-11.3-1.5.2-6.2 5.6-7.7 8.3z"/>
+      <path d="M261.3 256c1.1 3.3 4.8 8.8 11.5 6.3 6.7-2.6 3.8-11 .7-12.7a33 33 0 00-12.2 6.5z"/>
+      <path d="M273.5 249.6c-.5 2.9 0 10.6 9.2 10.5 9.1-.2 6.6-10.9 4.2-12.4-3.7 0-10 .1-13.4 2z"/>
+      <path d="M287.3 248c-1 2.3-3.3 16.7 14.6 12.7 2.3-.5 8.3-13.8-14.6-12.6z"/>
+      <path d="M297.1 249.4c-1.8 1.8 2.8 16.3 15 13.9 12-2.5 1.9-16.3-15-14z"/>
+      <path d="M307.4 251.6c-2 4 1 15.8 15.9 15.8 13.5 0-.7-15.6-15.9-15.8z"/>
+      <path d="M319.1 255c-1 2.3-2.1 14.8 15.5 15.9 12.7.8 9.6-17.3-15.5-15.9z"/>
+      <path d="M338 260.3c-2.1 3.9-4.4 13.5 14.9 14.3 12.3.5 4.7-14-14.8-14.3z"/>
+      <path d="M354.1 263.3c-2.8 3.8-.7 11.4 6.5 12.8 9 1.8 10.3-6.7 4.1-10.8-6.2-4-10.6-2-10.6-2z"/>
+      <path d="M363 265c-2.1 3.7-.9 12.4 12.8 12.4 2.8 0 13.6-11-12.9-12.3zM257.1 433a20 20 0 100-40 20 20 0 000 40z"/>
+      <path d="M404.1 141.7a35.2 35.2 0 00-5.4 8c-6.7 20 11.2 35 21.6 56.7a63 63 0 01-5.6 60.7c-4.4 5.8-3.1 7.5-8.8 13.4-2.2 2.3-4.6 5.2-3.8 13.4 3.6-1.3 8.7 2 9.7 5 2.6-1.4 6.2-.9 7.5.7 4.4-2 8-1 11.9 3 3.3-.4 7 0 10.3 3.7 1.8-3.6 5.4-5 8-4.1-.3-4.7 4.3-8 8.4-6.2a7.6 7.6 0 019.8-9c4.7-3.6 14-3.9 18.6 1.5-8.3-2.3-8 6.5-15 5.7 1.8 5.1-2.8 8.1-7.4 9.8 3-1.4 6.2-3.1 7.2-1.3 2.6-2.3 7.7-1.4 9-.3 3.4-1 6.7-.2 8.2 3.9 4.7 2.8 7.8 10 4.4 15.4-1-5.6-4.9-5.4-6.4-7.7-3.6 1.3-7.2 1.3-8.3-1-2 2-9 3.9-12 .8-1.2 4.6-5.2 8.5-9.9 8.5 1.3 3.6-2.3 9.7-5.1 12.8 4.4 2.3 3 7.5 2 10.6 6.8 1 1 7 12.7 10.8-5.7 1.8-16.8 0-18.3-7-5.7-.2-9.5-5.9-9.3-11.8-4.4-4.1-5-10 1-14.2-5.1 1.6-8-6.7-15.4-3.3-3.7 1.7-13.5-1.2-13.4-4.6-1.5 2.5-11 1.5-12.2-2.9-3.1 1.7-10.3-1.1-10.2-5.4-4 1.8-9.4-1.4-9.1-5.5-3.8-.5-4.2-3.9-4-6.7-3.3-1.6-2.4-4.8-1-8.6-2.4-2.6-1.4-6.2.4-9.6-2.5-2.6-2-5.6-1.3-9.3-12.3-1-27.8-4-63.3-14.9-53.6-16.5-68 22.2-56.2 46.4 13.7 28-1.5 34 3.1 54.8 5 1 7.5 5.2 7.2 9.6 3 .1 5 2.8 4 8a9 9 0 017.6 2.3c1.8-3.4 7.8-4.2 10.8-.3 6.7-.5 10.1 5 9.8 11.6a18 18 0 01-1.5 19.3c.4-2.7 0-6.5-.1-8.9-.3-4.2-6.2-5.1-5.6-8.6-3 .3-6-1.4-7-3.7a6.8 6.8 0 01-6.6 1.3c3.4 1.5 6.2 7.7 5.1 11.8 1.8 3.1 1.4 8.8-.7 11.2-1 5-5 6.8-10 4.6 2.9-1.8 3.9-5 3.8-7.7a10 10 0 01-2.9-6.3c-5 .8-12-3.5-13.2-5.2a20 20 0 00-20 20.1c-.6-4.1-5.8-8.2-5.1-11.7-3.1-9.5 1.3-18.4 13.9-20.2-1.6-3.6 3.8-7.3 1.8-11.4a97 97 0 00-14.7-20.1c4.4-7.5 3-17.5.5-23.7-3.7-8.9-7.2-6.7-20.3 7.7-21.4 23.5-50 17-75.2 32.5-6.7 4-13.4 5.6-6.2-1.6s26.2-14.4 38.6-20.6c23.2-11.6 42.8-30.9 50.5-68.5 18.1-88.4 85-59.2 127.2-42.8 39.7 15.5 32.5-19.5 12.4-40.7-24.2-25.3-19.3-45.3-8-61.3 20.3-2.8 59.4 4.3 51.5 11.1z"/>
+      <path d="M475.9 358.8a22 22 0 100-44.1 22 22 0 000 44z"/>
+    </g>
+    <g fill="none" stroke-width=".4">
+      <path d="M391.8 142.7c-5 21.7-.8 31.5 6.4 41 14.9 19.7 26.8 64.6 9.8 94"/>
+      <g stroke-linecap="round">
+        <path d="M417.5 252.3c2-.7 6-3.2 6.8-7.4m-5.2-2c.6-3.7 6.4-5.3 6.5-9.3m-6.4-5.2c-.4-3.9 5.8-7.4 4.9-11.2m-8.3-2.7c-.5-2.2 5.2-6.3 3.6-9.8m-7.8-3.8c-1.2-2.4 2.7-5.2 1-7.8m-7.2-3c-.4-1.6 2-5.3.7-7.5m-6.9-5.2c.5-.7 2.6-2.2 1.8-4.1m-6-5.3c.8-.4 3.3-1.2 3-3"/>
+        <path stroke-linejoin="round" d="M266 410.9c-5-1.8-11.5.7-12.8 5.1m3.9 4c.6-4.4 7.3-6.3 9.3-4.3-4.2-2.3-6.3 6-2.5 6.2m34.6-103.8c-3 1.6-4 7.2 0 11.5m4.6-10.2c-2.1 1.8-2 7.2 1.2 8.5-2.7-2 0-5.3 2-5.4 1.9-.1 3.2 2.2.8 4.5m177 5.2c-7.2-2-13 6.4-6.4 13.9-.2-7.2 5-12 11.3-10.7m-3 5a2.7 2.7 0 00-2.7 2.7c0 1.4 1.2 2.8 3.2 2.8 1.3 0 2.4-1.5 2.4-2.7m22.6-161c1.2 4.4 7.2 6.3 12 5.2m0-2.8c-3.7.1-6.8-3.4-6.6-6.3 0 2.2 5 3.2 6.6 1.8"/>
+        <path d="M267.9 331.7c-1-2.6 3-5.2 3.2-7.6.1-2.5 4.6-4.4 9.3.2m-2.2-27.4l-2.5 1.2m11.4 12.8c-1.1 0-3.4 0-4.6-.9m0 5.8c-.8.5-2.8 1.2-4 1.5m-40.1 76.3c-.2 2.3 2.2 5.7 3.4 6.7m6.6-12.2a10 10 0 00-1.3 7.6m20.5 0c-2.3-1.5-.8-5.4-1-8-.3-2.6 2.7-6.7 8.5-3.2M246 381c2.3-.4 4.7-.3 6.3.4m23-7.7a8.3 8.3 0 00-1.4 4m12.3-4.3c-1.8 0-3.4 1.3-4.2 2.6m-20.8-68.5c2 .7 7.4 4 7.6 7.4m14.3-24.2c-6.3-.1-8.8-6.5-4-6.5m15.3 15.2c-2.4 1-1.3 5.2 2.2 7.3m-17.3 33.1c-1.2-1.6.4-6 4.4-4.7m5 51.7c.3-4 5.2-6.2 7.2-1.8m-25.5 13c-.3-4.3 2-5.7 3.8-6 2-.2 4.7 1.4 6 4.2m-48.1 5c.2-2.6 2.4-5.3 4.7-4.9m231-109.4c-1.7 1.2-2.8 6.7 3.5 7.2M458 296c0 .6.8 1.5 1.3 2m29 8.3c-1.6-1.3-6 4-2 7.7m-39 35.6c-.9-3.7 2.5-4.7 5.8-3.9m-14-22.2c2-1.2 4-2.7 6.4-3.3m-7.4 17.5c0-3 1.6-5.7 3-6.4m8.4-29.1a16 16 0 002.4 9.2m28.2-9c-1.9.6-3.5 1.3-4.2 2.9m2.1 7.7c1-.8 2-1.7 2.4-2.3m46.3-110.2c0 3.6-4.5 5.6-7.5 3.3m17.3-3.1c2 1.5 8.9 0 7.3-4M528 221.4a11 11 0 01-4.9-3m19.1-7.7c-2.3.5-3.9 0-5-.5m-31.6 13.4a17 17 0 006.5-1.6M502 200.8c-1.7-.2-3 .1-3.9.8m29.8 5.5a11 11 0 01-3 5.2"/>
+        <path stroke-linejoin="round" d="M497.5 212.8c3.2-1.4 7.2 9.5 15 5.7m.6-11.4a11.3 11.3 0 00-1.8 5.6"/>
+      </g>
+      <path d="M359 190.4c1-.2 2.9-.5 3.3-1.8M226.5 310.3c3.9 2.2 6.6 5.9 5 11.4m172.1-143.2c1.2.8 5.5.8 8 0m3 2.6c0 1.8.5 8.6-3 10m1.3-.8c3.2 1 9.6.6 11.7-5.3m-4.5 5c1.7 2.6 2.2 7.6-2.8 10.3m4-6c3.8 1.2 12.4 1.4 11.5-6m-3 6c2.7 3.5 14 7.8 12.2.3m-22.5 10c4.3 1.1 10.5-1.9 8-9.6m12.3 3.9c.6 3 15 6 13.1-.7m-2.7 3.9c2.7 6.2 17 5.7 12.5-2.6m-2.3 6.5c2.8 3.4 15.5 1.4 10.4-7m-.1 6.8c7.9 6 17-2.5 7-8.7m4.6 6.8c7 5.5 15.5-4.5 9.4-7.3m-64.4 5c2.2.6 6.8.4 7.9-3.6m-1.8 2.7c-.2 5.8 9.6 8 12.1 1.3m-3.3 3.7c1.8 3.9 10.5 5.4 11.9-.1m-1.4 2.6c1.4 3.8 8.9 3.4 11-.6m-2.8 2.6c2.3 5 11.9 5 14-2.3m-1.6 3.2c3.7 2.3 11.7 1.4 11-5.8m-1.5 5.2c5.6 4.5 13.4.1 9.5-7.5m-.3 13.4c3-.5 4.5-6.4 1.4-8m-70 9c6-3.3 7.3-9 3-14.5m2.2 8.9c3.9 2.3 11.2-.2 12.5-5.8m-7.2 6.4c2.2 2.8 2.6 6.3-.3 9.5m2-5.9c6.9-4.2 15.4 3.6 9 8.4m-1-8.8c1.5-.4 4.2-3.2 4.4-6.4m-1.4 9.4c2.9-3 22.2 3 10 9.3m-1-17.4c3.8 1.4 5.7 6.7 0 8.5m5 4.4c4-4.3 17-1.6 12.3 3.8m-3.1-5.5c2.3-7.9 16.1-3 11.6.2m-14.4-8c.4 1.5.5 5.3-2 7.4m13.6-9a6.1 6.1 0 01-.8 5.3m9.5-5.2c.8 1.4 2 4.1-.8 6.3m-109.4-65.5c.1 7.3 2.7 12.2 12.6 7.6m-9.5 1.1c-5 6.6.6 13.7 10.3 6.6M365 165c6.7 7.2 18.7 2 11-9m8 15.2c-1.2 7.1 4.6 8.5 9.3 5.3m-34.2-10.3c1.2 7.1 8.5 12.7 15.6 8.4m-6.9 1.4c0 10.2 14 11.3 17.3.8m-5 6.4c4.5 9.3 14.3 5.5 17.5-.1m-27.4-14.7c1.8 4.5 5.4 9.5 13.7 5.8m-39.5-8c1.2 3.7 7.9 8.2 15.6 3m-10.8 1.8c-4.2 6 4 11.7 14 2.7m-9.1 4.7c1.6 8.5 5 15.4 17 4.4m-6 4.4c4.4 5.4 11.1 8.7 17.4-.4"/>
+      <path d="M387.3 188.8c-.4 6.5.8 9.7 5.9 9.4 4-.2 7.7-3.3 9.9-6.7m-10.8 6.7c-.2 7.4 5.6 13.2 16.5 5.7m-12 3c-2 5.5 4.1 14.5 16.2 9.9m-41.9-24.6c-.7 7 5.8 11.8 16.4 2.7m-11.2 5.1c.4 5.8 7 12.8 16.6 2.7m-12 4.7c-.7 9.9 8.4 12.7 16.1 5.1M367.2 200c2 .2 3.7-1.6 4.7-3m-.4 10.2c1.8.4 5-1.2 6-3.3m-1.4 15c2 2.3 9 .7 9.9-2.3m-2.2 2.2c3.8 9 14.1 8.7 18.4-1.5m-2 3.6c2 5.3 6.9 8.6 14.9 6.8m-11-1.4c-4.5 7.3 1.4 16 11.5 7.5m-9 3.5c-.5 4.6 3.7 9.9 9.5 10.5m-28.6-24c-1.5 10.4 6 15.4 15.3 9.8m-26.2-4.8c2.4 1.9 6.8 2.1 11 .6m5 6c-2.4 8.8 6.6 15.1 14.3 5.3M380 230.2c.2 4.5 4.5 9.4 12.1 8m21.3 9c-5.2 3.4-6.2 9.6 1 13.6m-13.6-15.4c.2 5.2 2.7 8.2 8.5 8.7m-16.1-11.4c-7.8 7-.2 15.3 9 8.3m-3.6 2.2c-2.6 8.1 7 13 12.2 4.8m-28.2-22c-2.8 8 .8 13.2 7.4 12.7m-17.6-14.3c.4 4.8 4.5 6.5 9.2 5.4m-6.2-.4c-3.5 6.7 1.8 10.3 8.8 7.8m21 15c-1 4.2-.4 7.2 5.9 8.7m-5.4-2.7c-7.6 3.4-8.3 10.8-2.4 15.5m-3.8-23.7a7.6 7.6 0 001.2 12.3m-35-35.8c-4.3 4.3-.2 16.2 9.5 9.7m15.7 5.3c-6 5-3.3 13.8 6.5 11.4m-16.3-15c-3.1 8.7-.2 11.8 6.8 11.9"/>
+      <path d="M359.3 236.1a8.2 8.2 0 00-1.5 12.2c2.3 2.6 6.7 1.4 8-1.9m-17.6-13.8c-5.9 7.6 0 16.6 8.4 14m23.3 8.6c-6 2.1-10.7 7.6-7 12.5 2.3 2.8 11.8 3.2 14.5-7.8M369 248.1c-3.5 5-2.4 9.8 4 12.2m-4.4-2.8c-3.8 2-6.2 4.5-5.3 9m-3.1-16.9c-1.4 6 .3 9.8 4 11.6m-4.1-4.4c-5.8-.4-8.8 2-6.8 7.8m.5-6.4c-5.7-2-6.6-7-4.1-12m-.8 7.6c-6.2.2-9 3.3-9 7.5"/>
+      <path d="M340.5 229.7c-4.5 1.9-6 8-4.3 11.3 1.7 3.3 7 3.6 10.2 1.4M328 224.9c-4.1 4.6.6 13.7 8 11.5m-18.6-15.1c-3.8 5.4.4 14.4 10.3 11.8m.5 25.1c-1-6.4 5.7-10.6 14-2.3m-4-13a10.1 10.1 0 00-3.3 8.5m-28-33.2c-4.3 7.2.9 13.8 10 11.2m13.8 6.7c-6 6-4 12.1.5 15.6m-4.4-8.5c-9.1.1-9.6 10.7-2.2 14m-4.7-24.6c-3.8 2.6-5 9.7 1.5 12.5m-1.8 3.4c-3.9-1.8-8.5.4-8.1 4.9m2.3-4.8c-3.5-8.2-13.6-6.8-12.7 1.7m15.5-11.9c-2.1.4-6.5 1.7-8.2 5m.6-14.3a7 7 0 002.5 11.4M296.7 216c-.8 5.6 1.4 8.3 8.4 7.8m-6-.7c-2.6 6.7 1 9.7 8 9.3m-6.4-1c-4.1 4.9-1.3 10.1 2.7 12.3m-4.6-6.1c-7.4-1-8.5 7.6-6 11.5"/>
+      <path d="M292.9 215.5c-4.5 2-7.1 7.6-4.7 11 2.5 3.5 7.4 2.4 10 .6m-8.4 1c-3.8 5.7-.4 10 3.6 11.6"/>
+      <path d="M275.3 214.8c-3 3.1-1.1 9.4 6 9.6 5.9 0 8.8-5.4 7-9.3m-8 9.3c-2.3 5.1-.8 10.7 8 9.8m3.6 8c-5.3-2.4-12.6 0-9.5 6.5m-.7-15.6c-2.2 3.1-1.5 7.5 1 10.2m-1.4-2c-3.6.7-7.1 2.6-5 8.3m-.5-4.6c-4.6-1.4-10.5 2-7 6.7m-.7-4.5c-4-.7-8.7 3.6-4.9 7.8m-1.5-3.5c-3.6 1-7.9 5-4.1 8.3m22.3-28.5c-5.2 2.3-5.7 8.1-3.3 12.4m-2.2-23c-7.7 3-7.6 13.2 1 16.4m-3.7-2.3c-4.6 2.7-5.5 7.9-2.4 11.2m-5.7-29.2c-3 1-2.8 10.5 5.4 10.3m-13.9-7.1c-6.2 4.1 1.3 14.5 11.3 7m-5.5 2.7c-.9 4.2.3 8.8 7.1 9.4m-6.7-3.8c-4.9 1.8-5.8 11.9 3 12.7m-18.6-21.8c-6.3 5.8 5.2 10.8 9.4 2.4m-18.1 7.2c-3.1 3.8 7.7 13.6 12.5-2.8m1.1-.3c.3 4 2.6 6.2 7.3 6.5m0 3.7c-7.7 1.2-10.1 10.7-1.6 12.8m-12.5-14c-.3 3.5 3.5 6.5 7.7 5.9m3.9 7.8c-7 1.6-7.9 10.6-1.7 10m-3.2 8.4c-5.8-1.7-6-8.6-.8-11.2"/>
+      <path d="M245.7 267.8c-4.9 3-3 10-.4 11s4.7-.2 5-2.4m-.5 10c.6 3.3-11.9 2-5.5-8.4m0 8.9c-4.2 6.6 2.6 12 6.9 6.3m-6.4 1.6c-1.7 5.3 4.7 9.1 8.8 5M231 245.4c-2.3 4.7 9.3 6.5 10-3.3m-13.2 10.3c-2.3 9.3 15.2 7.4 10.7-4.6m.4 6.2a8.2 8.2 0 0011.6-6.3m-5.3 6.6a10 10 0 004.7 6.3m-13.1-3.9c-.8 5 4.3 9.2 10 8.8m-9.1-3.9c-2.8 3.9-3.7 11.3 5.2 11.8M224 263c-1.4 4 7 8.1 11.8 1.5m-14.4 8.7c-.7 3 6.8 7 11-5.8m-3.3 6.5c1.8 3.2 7.9 5.8 11.6-.5m-6 3.9c-1.6 4.5 2.7 8.7 7.8 7.5m-17.5-8.5c-1 6.4 6.5 10.1 11 6.8m-15.9-4c-2.2 8.2 8.4 11.3 12.4 5.1m-2.7 2.5c.4 4.6 7.6 8.6 13.2 4.8m-26.1-1c-.5 2.1 8.1 4.2 9.4-3m-4.4 4.9c2 5.2 9 6.5 13 0m-2.3 2.6c1 5 7.2 7.7 12.8 4.3m2.3 2c-1.4 6.5 5.4 11.8 9.6 8.2m-20.6-9.4c-2 7.2 7 11.3 12 7.3m-22.8-11c-.5 6.8 4.8 10.8 10.8 7.8m-22.3-7c-1.8 4.3 7.8 7.9 12.3 4.2m-18.2 7.7c2.5 2.8 11 0 11.7-6.3m-2.3 4.6c3.1 3.6 10.5 5.6 13.4-2.2m-2.6 4c0 5.6 9.8 9.6 13-.6m11.7 2c-1 2.7 1.2 7 5.7 7.5m-13.9-9.2c-.6 3 3.9 7.4 8.7 5.7m.9 1.3c-1.3 3.3-.2 8.1 4.3 8m-3.9-1.8c-3.4 2.8-2 7.9 2.9 8m-4.6-3.2c-4.8 3.2-3.1 10.3 3.2 9.9M239 313c0 7 8.7 8 10.3 1.6m-3.3 4c-1.3 4.2 2 8.2 7.3 7m-6.3 42.8c1.2 1.7 6-1.2 4.7-4-1.3-2.8-6.4-1.3-5.8 1.7m4.6-2.9c.6-5.6-6-6.5-7.7-1.6m2.4-2.9c1.7-2.8-4-6.7-6.3-2.5m2-1.7c1.6-4.1-4.8-6-5.3-2.2m-1.5-5.4c.8-2 8-.8 5 3.5m5.5 5.1c2.8-2.6-2-7.8-5-6m24 13.9c-2.2.2-4.5 1.7-2.9 6.5 1.2 3.3 6.1 3.4 6.9 1.5"/>
+      <path d="M260.5 365.9c-2.2-1.5-7 1-4.8 5.6 1.6 3.5 5.8 2 6.4.2m-14 .8c1.2 2 6.6 1 7.6-1m-3.8-5.4c1.2-.8 3.3.2 3.7 1.2m-4-33c-3.8 2.5-1.5 10 4.3 8m-5.6-1.9c-3 2.3-.2 9.6 5.3 6.8m-4.3 0c-2.1 2.1-.1 7.8 5.2 6.7m-6-3.8c-1.2-.5-4.2-.2-5.5 1.8m2.1-28c-2.8 2.8-1.4 8.3 3.8 8.8m-4.8-3c-4 2-4 10 4 10.3m-4.3-1.3c-2.3 1.8-1.2 8.8 4.6 7.9m-2.8-.3c-.8.9-1 3-.2 3.9m-2.3-6.5c-2 0-4.8 1.5-5.5 3.7m-3.7-7.5c.7-2 7.1-2 7.6 4.1m.6-7.2c-.9.2-2.6 1-3 2.8m.2-21.7c-2.7 2.6-4 10.5 4.3 12m-9.9 4.4c0-2.1 5.8-4 7.8-.8M232 322.8c.8 1.6 4.8 3.8 7.2 2m-28-14.6a6.3 6.3 0 007.2 6.5c4.3-.5 5.2-4.2 3.9-6.7m-3.2 6.9c-2.9 3.4.6 8.3 3.8 6.9m-.6-9.4c1.7-.6 7.2-1.4 8.9 1.2m-26.8-.2c-1.3 2 6.7 3.9 9.4.2m-2.7 1.9c-.3 2.6 1 7 7.6 5.1"/>
+      <path d="M219.8 326.6c1-2.2-3.8-5.8-7.6-1.8-3.7 4 .6 8.5 2.9 7M202.7 318c-2 3.4 5.5 9.5 9.8 3.8"/>
+      <path d="M197.7 323.8c-2.7 2.8.7 7.9 4.7 6.3 4.1-1.5 3.7-5.8 2.7-6.9"/>
+      <path d="M192.5 329c-2.2 2 0 6.6 3 6.6s4.9-2.3 4.3-5.4m5-1.6c-.4 3 4 5 6.9 2.2m0-5.4c.5-.6.2-1.7-.5-2.3m-23.4 9.8c-2.5 2 3 7.6 6.3 2.5m13.1-3.5c-1.6 1.5 1 5.5 3.6 4.3m-12.4-1.5c.4 2.7 5.8 4.8 9.2.6m-6.3 2.1c-.8 1.8.9 4.5 3 4.2m48.3 11.8c-2 3.9 4.4 8.5 9 3.7m-4.4 2.1c-1 2.1.2 5.1 2 6.2m-8-1.7c.4-2 3.2-3.8 5.7-2.9m-9-2.2c.3-1.8 2.6-3.5 4.4-3m147.2-77.4c-9.2.1-5.3 14.8 2.6 11.9m-5.6-1c-1.8 2.9 1.7 7.6 5.6 4.8m-1 .6c-2.8 4.5 6.9 11.4 10.8 4.3m-3.1 2.7c0 4.3 12.5 7 10.7-1.5m-1.2 4.6c3 5 14 5.5 12.9-2m-2.5 5.2c2.3 3.4 13.2 5.4 12.8-1.5m-56.7-40.8c1.5 4 6.8 5.4 12.6 3m-16-.2c3.7 2.3-1.6 12.9-7.1 8.6m7.2-2c4 1.9 8.9.5 10.3-5.2m-2.5 4.4c.4 3 4.7 5.3 10.2 4.1m-20.1-1c5.2 4.4-2.3 13.4-5.7 9.3m7.6-6c2.5 1.8 8.8.8 9.4-4m-2.8 4c.5 3.1 3 4.3 6.4 4.4m-14.4-.1c2.6 3.6 9 4.6 11.9-.1m-2.9 2.7c-.2 3.4 3.6 6.3 7.6 5.5M375 295c3.3 1.7 7-4.7 4.1-9m-.2 15.7c4 .2 4.5-5.8.7-9.2m8.4 14.7c3.4-.8 2.3-8.1-5.8-8.7m16 14.1c3.2-.9.6-9-8.3-8.5m20.5 11.4c2.2-3.4-5-9-11-6m17 10.6c4 1.2 6.8-9.4-5.9-7.7m13.3 7.7c3.5-1 6-7.2-4.2-5.2m12 5.7c3 1.6 4.4-7.5-5-5m-47-23c3.9 2.1 10-.4 9.4-5.3m-1.5 4.2c1.3 2.3.8 6.8-1.7 8m2-2.6c2.6 1 6.1.1 8.2-4m-3.6 4c.7 1.8 1 5.4-.7 7.2m1.3-4.1c2.9 1.6 6.2-.5 7.6-3.5m-1.8 2.6c2 1.3 3.9 7.3.4 9.8m2-2.8c2.4 0 6 0 8.3-3m-1.7 1.7c2.2.6 4.8 4.2 3.9 7.4m.1-1.1c2.5-.3 6.7-2 7.9-5m-1.2 2a6.6 6.6 0 013.2 6.5m0-2.1c2.5-.1 4.7-1.4 5.3-4.1m-.6 1.8c1.8.6 4 2.7 4.1 5.1m-.3-1.5c1.8-.3 3.1-1.4 4.3-3.2m4.9-.3c2.3 2.3-.8 10-5.6 8.6m-43.9-164.7c-4.7 2.9-18.3 2-11.6-9.2m13 1.6c-9.5 3.8-21-3.5-9-11.3m-3.2-2.6c-7.8 0-13.1 12.6-2.6 17M348.6 138c-2 4 5.3 8.4 10.3 4.4 3.9-3.1 3.6-11.5 1.3-14.7m-15.6 19.8c-2.6 8.5 16.4 9 13.4-4.5m-14.4 17.2c.6 6.4 18.1 4.3 12.5-8.7m2-3.6c1.4 2 5.3 5.3 11.9 4.6m-9-13.5c.6 2.3 4.5 4 9.5 2.3M185.4 334.8c-4.5 3.1 2.4 8.1 4.9 2.6m-8.4-.2c-4.4 3.2 2.4 8.2 4.9 2.7m-8.6-.3c-4.4 3.2 2.4 8.1 5 2.7m-8.8-.5c-4.3 2.3.7 7.8 5 3m-9.2-.9c-4.3 2.3.7 7.8 5 3m16.6-9.6c-.1 3.3 6.1 4.6 8.4-.3m-4.5 3.3c-2 2.5 1.6 5.5 3.5 4.4m-11.8-4.8c-.2 2.8 5.2 4.4 7.8 1.3m-4.9 1.6c-1.7 2.2 1.7 5.3 4 4.4m-10.5-4.8c.2 2.2 3.3 4.7 6.6 3.3m-4.6-.3c-1.3 1.1-.7 3.8 1.1 4.7m-7.8-5c-.5 2 2.9 5.6 6.4 3.3m-5.7-1c-2 1.7-1.8 4.1.8 4.5m-5.8-4.7c-.2 1.4 1.5 3.6 3.7 3.3m-14.7-3.4c-2 1.1 3.2 6.7 6.5 1.5m-11.6.8c-2.6 1.2 3.8 7.4 6.7 1.1m10-1.3c-2 .4-3.3 3.3-1.6 4.5m-5-3.5c-.2 1.2 2.3 3 4.3 2.4m-5.9-1.9c-2 1.2-.9 4.6 1.4 4.1m-8.3-1.8c-1.8 1.3-.5 4 2 3.4m1.3-3.6c0 .7 1.7 1.8 3 1.3m-12.5-2.5c-2.3 1-2.1 6.6 5.5 3.6m-10.6-1.3c-3.2 1.5-2.1 5.8 4.8 1.7m.5.3c-.8.7-1.7 3.5 1.5 2.4m-7.2-1c-1.3 1.1-.5 3.5 2.3 2.6m-9-2.2c-2.3 1.3 2.8 3.1 6.2-.5m-4.6 2.1c-1 1-1 4.1 1.6 3m-8.2-1.7c-1.5 1.1 1 2.7 6 .5m-4 1.1c-1.9 1.5-1.7 3.4 1 2.8m-6.4-2c-2 1.9.9 3.1 4.4 1.6m-4.4.5c-3.4 1.5-1.9 4.4.2 3.3m113.8 6.5c-.8 1.7 1.8 3.1 4.3 2.7 2.3-.3 4.6-2.3 2.8-5m.1 3.4c2.4 1.8 6.5-.3 6.5-3"/>
+    </g>
+    <g fill="#fff" stroke-width=".4">
+      <path d="M396.8 103c-10.3-5-31.7-14.6-37.8-6.9 5.6-2.3 21.8.1 35.2 12.5l2.6-5.5z"/>
+      <path d="M403 102.5c-11.9-13.9-19-10.8-27.5-15.5-8-4.5-20.8-5.4-23.3 1.7 11.7-5.7 22.5 3 29.2 4.2 9 1.4 14.2 8.5 16.9 11.7l4.7-2zm44.9-1.8c-6.2-14.1-19.4-10.4-25.2-16.4-8.5-8.8-30-17-39-10.9 19.6-1 28 13.5 38.4 18.6 7.5 3.6 15.5 11.3 25.8 8.7z"/>
+      <path d="M424.7 99.2c-10.5-13.1-26.8-24.7-34.2-20.4 9.8.6 12.9 7.4 19.8 11.8 7 4.3 3.9 10.7 14.4 8.6zm-50.2 23.2c-11-4.1-32.7-6.2-42.8 6.4 16.8 2.9 42 1.3 42.8-6.4z"/>
+      <path d="M372.4 127.3c-11-5.2-19.7 2-30.1 1-19.8-2-34-.8-35.8 8.8 11.3-10.2 30.4-1.8 38.1-3.9 7.7-2 36.3-.3 45.3 3.6-4.6-5.7-11.8-7.2-17.5-9.5zm34.8-29.5c-2.6-8.5-2.4-17.5 10.3-16.9-3.2-4-15-6-17 8.9-14-10.3-29.4-12.1-32.2-3.2 7.2-6.2 18.4-1.7 31.8 13.5a23.8 23.8 0 017.1-2.3z"/>
+      <path d="M387.9 109.5c-8-5.2-18.8-13.5.1-16.9-8-4.3-20-2.4-18.7 12.5-21.6-8.7-37.1-5.8-40.4 2.9-3.6 9.5 9.8 14.8 12.1 8.7-2.4 1-10.8-1.8-6.4-7.2s26.8-1.3 48.1 9.8c6 3 26.3 2.6 5.2-9.8z"/>
+      <path d="M382.2 123.7c-6.1-12.6-26.1-1.2-30.1-13.4-5.6 17.9 28.4 8 30.1 13.4zm127.1 13.6c4.2 2.1 7.8-1.2 1.4-3.7 4.2 2 7.9-1.1 1.5-3.7 4.2 2 7.8-1.1 1.4-3.7-1.7 1.7-4.1 8-4.3 11.1zm2.2-24.2c9.3-9.8-.7-13.1 10.6-23.2 9.3-8.2 1.8-13.7 10.5-20 2.9-2.1 9-6.2 9.6-10.4 3.7 9.3-11.6 10.6-10.6 25.5.7 9.5-5.8 8.7-8.2 24.8-.5 3.3-2.9 10.8-11.9 3.3z"/>
+      <path d="M515.6 117.5c5.2-11 11.1-10.9 14-15.2 5.4-8.3 16.8 1.4 26.5-6-1.7 10.5-14.7 6.8-20.4 13.5-5.6 6.7-10.3 9.7-20 7.7z"/>
+      <path d="M517 121.1c9-7.2 15.6-2.4 21.8-6.2 15.7-9.5 22 2 36-2.6-3.6 9-24.4 1.3-33.4 8s-40.7 13.2-24.5.8zm-26.3 51.4c-.2-4.1-4-9.4-9.4-10-5.4-.7-7.8-6.4-11.9-6.6-4.1-.3-6.8-8.5-12.5-8.4-5.6.1-8 7.5 5.3 14.2 13.3 6.7 28 14.4 28.5 10.8zm-16.8 3.5c-5.6.2-6.4 8.5-11.8 8.7 7.4 4 12.9-1.8 16.7-7L474 176z"/>
+      <path d="M478.6 177c-5 4.1-6.4 12.7.7 15.2-4.2-5.9 7.5-8.5 3.9-14l-4.6-1.2z"/>
+      <path d="M483.4 177.3c-3.8 7.4 6.1 8.3 3.5 14 5.7-1.3 6.6-12 1.4-14.8l-4.9.7z"/>
+      <path d="M445.6 161.3c9.3-.5 17.7 4.5 23.4 12.6 3.6 5.1 15.7 7.2 19.9 3 4-4 1.8-12.8-8.5-10-2.6-4.3-10-2.8-13.7-6.4-3.6-3.6-17.5-13.9-21.1.8z"/>
+      <path stroke-linecap="round" d="M480.4 167c-2.5.5-3.3 4.7-1.7 6.9m7-4.4c.7 1.3.2 3.1-.2 4m-25.2-11.8c4.7.2 5.6 3.7 10.8 5"/>
+      <path d="M457.1 150a161 161 0 0137.6 12.3c8.1 4.6 20.7 6 31.6 2.8 11-3 32.2-5.9 31.1 7.8 5.8-6.9-1.5-14.2-16.2-15.5.3-6.7-6.9-12.7-12-8.7 4.7-.7 8.8 8.2-.6 11.8a8.4 8.4 0 00-11.7-9.8c4.4 1.3 9 8.8-1 11.6-6.3 1.8-15.4-.5-22.2-4.6-6.8-4.1-45-19-36.6-7.8z"/>
+      <path d="M498.6 143.3c-5.1 2.3-1.8 7.7-9.7 10.8-8 3-13.6 10.1-11.8 16.2 5.4-11.9 15-11.3 18.3-16 3.4-4.6 8.3-11.4 3.2-11z"/>
+      <path d="M500 144c-.2 9.4-7.6 6-4.7 19.2.9 4.1 2.6 10.8-.3 17.5 8.3-6 3-18.7 6.7-23.5 1.8-2.4 4.2-6 5-9-1.9 5.3-1.7 15.4 3.5 18-4.2-10 11.5-18.3.7-30-1.6 3-6.5 8-10.8 7.8zm-26.2-9.4c1.3 2 2.6 6.8 1.4 9.6 2.6-1.6 6.3-5.6 7.5-8.3 5.3.8 7.3 7.3 2.3 10.2 3 0 8.4 0 11.3-3.5-3.6-4-14.8-10.2-22.5-8z"/>
+      <path d="M393.7 116.1a10 10 0 00-4.8-2c-7.8-1.6-3.7-8.6 2.9-8.5 14.2-15.5 22.1-3.6 39.4-8.4 6-1.8 10.2-1.3 13.4.2 7.8-5.2 16.8-3.8 23.4 2.3a5.3 5.3 0 013-2.4c6.1-1.7 11 3.4 12.7 10.1 4.7-.8 10.1 1.5 13.7 4.7 4.9-2.5 8.2-2.6 9.5 0 4.4-2 10-3.4 12.9 3.6s-6.7 4.9-8.3 19.6c-1 9-11 12.6-19 7.2-12.8-8.7-25.3-10-31.5 3-6.1 13.2-11 20.8-26 16.5a16 16 0 00-16.7 6.5c-4.4 6-11 .4-19 1 10-1.5 6.1-4 14.9-4.6 8-.5 5.9-8 11-9-20 5.1-19.3-2.4-35.8 2.8 7.2-9.3 18.6-4.1 24.2-9.5-14.9-.3-21.6-10-28.3-6-10.5 6.5-6 24.8-33.5 23.2-13.4-.7-21.9 1-29.8 9 13.9-28.8 32.8-13 42-22.1a68 68 0 0012.3-14.7 6.1 6.1 0 014-3.2c-22.9-7.2-9-18.5 13.4-19.3z"/>
+      <path stroke-linecap="round" d="M506.9 112c.3.8.5 1.8.5 3 0 5.6-8.5 5.8-9 14.2-.3 4.4-.8 6.8-3.7 6.3-3-.5-5.6-5.1-2.8-10.5"/>
+      <path d="M398 107.7a10.9 10.9 0 00-6.2-2.1m52.8-8.3c6.8 3 10.1 10 20 10.4 9.6.3 15.5 14.2 31.5 5.1a38 38 0 011.2-.6M468 99.7a12.7 12.7 0 00-1.4 8.2m-29.8 21c-12 0-15.2 6.1-15.2 12 0 6 5.7 13.7 15.7 13.7s15.5-6.2 15.5-12.9-6.2-12.9-16-12.9z"/>
+      <path d="M439 154.3c-.2-3.3-6.3-2.8-6-5.4.2-2.6 3.3-3.6 3.3-7.2s5.4-3.9 7.2-1c1.8 2.8 7.2 8.3 8.4 5.5m-8.4-5.5a9.9 9.9 0 00-.4 13.1m4.3-8.8c-1 2-1.2 5-.1 6.8"/>
+      <path fill="none" d="M495.5 135.6c9.5.8 11-9.7 4-10.3m-15.7-17.8c-3.2-4.2-10.8-5.6-11 3.2"/>
+      <path d="M472 120.8c-3.2-8-11.5-9.1-15.8-5.1-3.7 3.3-3.8 12 4 13.8 2.8-3.3 8-7.5 11.8-8.7zm-3.5-5c-4.7-4.1-11.5 3.7-5.3 10.8m-83 8.7c3.2-.7 7.7.8 14.7 4 4.3 2.1 17.5 6.5 25.7 2.1-8.5 3.1-15-9.7-21.4-8.2-6.4 1.6-18.2 4-23.1-.8 12 .8 18.5-8.8 32.4-.5a24 24 0 0013.1 3.6c-11.3-13.6-26.2-4.9-27.8-16 6.8 7.4 23.5-1.6 32 12.1m-29.5-10c-1.6-2-1-4-2.6-5.5"/>
+    </g>
+    <path stroke="none" d="M483.8 107.5c-2.8-3-9-.7-7.2 5.4a9.6 9.6 0 017.2-5.5zM466.3 124a21.1 21.1 0 015.7-3.2 12.4 12.4 0 00-3.8-5.2c-1.5-1-5.7 4.7-1.9 8.3z"/>
+    <path fill="none" stroke-linecap="round" stroke-width=".4" d="M458.7 113.5c-4.6-3.1-8.9-2.8-10.3-.3-3.3 0-6.1 2.4-6.2 7.2m7.1 2.1c-5.5-3.8-13.1-2.4-12.6 6.1m-3.4 4.9c2.7-2.2 6.6-3.8 9.6 0m31.8-8.4c-1 1.4-1.8 3.6-.1 7-2-2.8-7.2-2.8-12.8 4.4m25.1-11.8c-6.7.8-6.5 5.2-1.1 7m-46.5-23.4c-5.7-1.1-9.8 2.2-2 5m12.8-8.8c-8-2-11.2.1-7.6 2m-15.5 30c-.2 2.9 1.3 6.6 6 2.4m-4.4 6.1c0 .8-.1 1.7-.7 2.4m-17.9-40c-4.9-1.5-5.8-6 0-5.6m-1.6 16c-5.4-1.9-5.4-7.1-1-6.6m11 3.8c-6.3-1.5-6.5-5.9-1.8-5.2m2.6-8.2c-3.4-.2-8.5 3.5.1 5.7m9.3 1.8c-7.9-1.1-7.7 2-3.1 4.1m9-11.6c-6-1.1-8.1 2.5-4 4m-15 18.3c-1.5-1.2-2.7-7 4.3-5.3m10.3 3.5c-4.7-1.3-9.2 3.4-4.9 6m11.2-11.5c-5-1-9.2.5-6.5 2.3"/>
+    <path fill="#fff" stroke-width=".4" d="M483.6 107.5a9.6 9.6 0 00-7 5.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bv.svg
new file mode 100644
index 0000000..71d098a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bv.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bv" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="bv-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#bv-a)">
+    <path fill="#fff" d="M-28 0h699.7v512H-28z"/>
+    <path fill="#d72828" d="M-53-77.8h218.7v276.2H-53zM289.4-.6h381v199h-381zM-27.6 320h190.4v190.3H-27.6zm319.6 2.1h378.3v188.2H292z"/>
+    <path fill="#003897" d="M196.7-25.4H261v535.7h-64.5z"/>
+    <path fill="#003897" d="M-27.6 224.8h698v63.5h-698z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bw.svg
new file mode 100644
index 0000000..3d65eda
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bw.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-bw" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#00cbff" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M0 160h640v160H0z"/>
+    <path d="M0 186h640v108H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/by.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/by.svg
new file mode 100644
index 0000000..9566c6a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/by.svg
@@ -0,0 +1,20 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-by" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="by-a">
+      <path fill-opacity=".7" d="M0 0h682.6v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#by-a)" transform="scale(.9376 .9375)">
+    <path fill="#b20000" d="M0 0h1024v340.1H0z"/>
+    <path fill="#429f00" d="M0 340.1h1024V512H0z"/>
+    <path fill="#fff" d="M0 0h113.4v512H0z"/>
+    <g fill="#b20000" stroke-width="1pt">
+      <path d="M5.4 8.7h5.4v8.7H5.4zm16.2 0h16.2v8.7H21.6zM27 0h5.4v8.7H27zm27 0h5.4v8.7H54zm21.6 8.7h16.2v8.7H75.6zM81 0h5.4v8.7H81zM16.2 17.4H27V26H16.2zm16.2 0h10.8V26H32.4zm37.8 0H81V26H70.2zm16.2 0h10.8V26H86.4zM10.8 26h10.8v8.7H10.8zm27 0h10.8v8.7H37.8zm27 0h10.8v8.7H64.8zm27 0h10.8v8.7H91.8zm10.8-17.3h5.4v8.7h-5.4zm-97.2 26h10.8v8.7H5.4zm37.8 0H54v8.7H43.2zm54 0H108v8.7H97.2zm-86.4 26h10.8v8.7H10.8zm5.4 8.7H27v8.7H16.2zm21.6-8.6h10.8v8.6H37.8zm-5.4 8.6h10.8v8.7H32.4zm-10.8 8.7h16.2v8.7H21.6z"/>
+      <path d="M27 86.8h5.4v8.7H27zm37.8-26h10.8v8.6H64.8zm5.4 8.6H81v8.7H70.2zm21.6-8.6h10.8v8.6H91.8zm-5.4 8.6h10.8v8.7H86.4zm-10.8 8.7h16.2v8.7H75.6zm5.4 8.7h5.4v8.7H81zM54 78h5.4v8.7H54zM0 78h5.4v8.7H0zm108 0h5.4v8.7H108zm-81 43.4h5.4v8.7H27zm-5.4 8.8h16.2v8.6H21.6zm-5.4 8.6h27v8.7h-27zM81 121.5h5.4v8.7H81zm-5.4 8.7h16.2v8.6H75.6zm-5.4 8.6h27v8.7h-27zm5.4 43.4h27v8.7h-27zm-10.8-34.7h37.8v8.7H64.8zm-54 0h37.8v8.7H10.8zm5.4 43.4h16.2v8.7H16.2zm-5.4-8.7h27v8.7h-27zM86.4 165h27v8.7h-27zM81 191h16.2v8.7H81z"/>
+      <path d="M21.6 199.6H27v8.7h-5.4zm64.8 0h5.4v8.7h-5.4zM0 164.9h27v8.7H0zm48.6 17.3h16.2v8.7H48.6zM54 191h5.4v8.7H54zm-16.2-26h37.8v8.7H37.8zM59.4 34.7h10.8v8.7H59.4zm-10.8 8.7h16.2v8.7H48.6zm-5.4 8.7H54v8.6H43.2zm16.2 0h10.8v8.6H59.4zM0 43.4h10.8v8.7H0zm5.4 8.7h10.8v8.6H5.4zm97.2-8.7h10.8V52h-10.8zM97.2 52H108v8.6H97.2zM0 130h5.4v8.7H0zm108 0h5.4v8.7H108zm-59.4 69.5h16.2v8.7H48.6zm-5.4 8.7H54v8.6H43.2zm16.2 0h10.8v8.6H59.4zm-21.6 8.6h10.8v8.7H37.8zm27 0h10.8v8.7H64.8zm-32.4 8.7h10.8v8.7H32.4zm37.8 0H81v8.7H70.2zM27 234.3h10.8v8.7H27zm48.6 0h10.8v8.7H75.6zM16.2 243h16.2v8.7H16.2zm64.8 0h16.2v8.7H81zm10.8-8.7h10.8v8.7H91.8zm5.4-8.7H108v8.7H97.2zm5.4-8.7h10.8v8.7h-10.8zm-91.8 17.4h10.8v8.7H10.8zm-5.4-8.7h10.8v8.7H5.4zM0 217h10.8v8.7H0zm21.6 34.8H27v8.6h-5.4zm64.8 0h5.4v8.6h-5.4zm-32.4-26h5.4v8.6H54zm-16.2 26h5.4v8.6h-5.4zm32.4 0h5.4v8.6h-5.4zm-16.2 0h5.4v8.6H54zm-54 0h5.4v8.6H0zm108 0h5.4v8.6H108zM54 130.2h5.4v8.6H54zM27 43.4h5.4v8.7H27zm54 0h5.4v8.7H81zm-32.4 60.7h16.2v8.7H48.6zm-10.8 8.7H54v8.7H37.8zm5.4 8.7h5.4v8.7h-5.4zm-10.8-17.4h10.8v8.7H32.4zm5.4-8.6H54v8.6H37.8zm5.4-8.7h5.4v8.7h-5.4zm16.2 8.7h16.2v8.6H59.4zm5.4-8.7h5.4v8.7h-5.4zm5.4 17.3H81v8.7H70.2zm-10.8 8.7h16.2v8.7H59.4zm5.4 8.7h5.4v8.7h-5.4zm21.6-17.4h10.8v8.7H86.4zm5.4-8.6H108v8.6H91.8zm10.8 8.6h10.8v8.7h-10.8zm-10.8 8.7H108v8.7H91.8zm5.4 8.7h5.4v8.7h-5.4zm0-34.7h5.4v8.7h-5.4zM0 104h10.8v8.7H0zm5.4-8.6h16.2v8.6H5.4zm10.8 8.6H27v8.7H16.2zm-10.8 8.7h16.2v8.7H5.4z"/>
+      <path d="M10.8 121.5h5.4v8.7h-5.4zm0-34.7h5.4v8.7h-5.4zm-5.4 69.4H27v8.7H5.4zm27 0H54v8.7H32.4zm27 0H81v8.7H59.4zm27 0H108v8.7H86.4zm-43.2 17.4h27v8.6h-27zm-37.8 0h27v8.6h-27zm75.6 0h27v8.6H81zm27 34.7h5.4v8.6H108zm-108 0h5.4v8.6H0zm5.4 295h5.4v-8.6H5.4zm16.2 0h16.2v-8.6H21.6zM27 512h5.4v-8.7H27zm27 0h5.4v-8.7H54zm21.6-8.7h16.2v-8.7H75.6zM81 512h5.4v-8.7H81zm-64.8-17.4H27V486H16.2zm16.2 0h10.8V486H32.4zm37.8 0H81V486H70.2zm16.2 0h10.8V486H86.4zM37.8 486h10.8v-8.7H37.8zm27 0h10.8v-8.7H64.8zm27 0h10.8v-8.7H91.8zm10.8 17.3h5.4v-8.7h-5.4zm-97.2-26h10.8v-8.7H5.4zm37.8 0H54v-8.7H43.2zm54 0H108v-8.7H97.2zm-86.4-26h10.8v-8.7H10.8zm5.4-8.7H27v-8.7H16.2zm21.6 8.7h10.8v-8.7H37.8zm-5.4-8.7h10.8v-8.7H32.4zm-10.8-8.7h16.2v-8.7H21.6zm5.4-8.7h5.4v-8.6H27zm37.8 26h10.8v-8.6H64.8zm5.4-8.6H81v-8.7H70.2zm21.6 8.7h10.8v-8.7H91.8zm-5.4-8.7h10.8v-8.7H86.4zm-10.8-8.7h16.2v-8.7H75.6zm5.4-8.7h5.4v-8.6H81zM54 434h5.4v-8.7H54zm-54 0h5.4v-8.7H0zm108 0h5.4v-8.7H108zm-81-43.4h5.4v-8.7H27zm-5.4-8.8h16.2v-8.6H21.6zm-5.4-8.6h27v-8.7h-27zM81 390.5h5.4v-8.7H81z"/>
+      <path d="M75.6 381.8h16.2v-8.6H75.6zm-5.4-8.6h27v-8.7h-27zm5.4-43.4h27V321h-27zm-10.8 34.7h37.8v-8.7H64.8zm-54 0h37.8v-8.7H10.8zm5.4-43.4h16.2v-8.7H16.2zm-5.4 8.7h27V321h-27zM86.4 347h27v-8.7h-27zM81 321h16.2v-8.7H81zM0 347h27v-8.7H0zm48.6-17.3h16.2V321H48.6zM54 321h5.4v-8.7H54zm-16.2 26h37.8v-8.7H37.8zm21.6 130.2h10.8v-8.7H59.4zm-10.8-8.7h16.2V460H48.6zm-5.4-8.7H54v-8.7H43.2zm16.2 0h10.8v-8.7H59.4zM0 468.6h10.8V460H0zm5.4-8.7h10.8v-8.6H5.4zm97.2 8.7h10.8V460h-10.8zm-5.4-8.7H108v-8.6H97.2zM0 382h5.4v-8.7H0zm108 0h5.4v-8.7H108zm-64.8-78.2H54v-8.6H43.2zm16.2 0h10.8v-8.6H59.4zm-21.6-8.6h10.8v-8.7H37.8zm27 0h10.8v-8.7H64.8zm-32.4-8.7h10.8v-8.7H32.4zm37.8 0H81v-8.7H70.2zM27 277.7h10.8V269H27zm48.6 0h10.8V269H75.6zM16.2 269h16.2v-8.7H16.2zm64.8 0h16.2v-8.7H81zm10.8 8.7h10.8V269H91.8zm5.4 8.7H108v-8.7H97.2zm5.4 8.7h10.8v-8.7h-10.8zm-91.8-17.4h10.8V269H10.8zm-5.4 8.7h10.8v-8.7H5.4zM0 295h10.8v-8.7H0zm21.6-34.8H27v-8.6h-5.4zm32.4 26h5.4v-8.6H54zm0 95.5h5.4v-8.6H54zm-27 86.8h5.4V460H27zm54 0h5.4V460H81zM48.6 408h16.2v-8.7H48.6zm-10.8-8.7H54v-8.7H37.8zm5.4-8.7h5.4v-8.7h-5.4zM32.4 408h10.8v-8.7H32.4zm5.4 8.5H54V408H37.8zm5.4 8.7h5.4v-8.6h-5.4zm16.2-8.7h16.2V408H59.4zm5.4 8.7h5.4v-8.6h-5.4zm5.4-17.3H81v-8.7H70.2zm-10.8-8.7h16.2v-8.7H59.4zm5.4-8.7h5.4v-8.7h-5.4zM86.4 408h10.8v-8.7H86.4zm5.4 8.5H108V408H91.8zm10.8-8.6h10.8v-8.7h-10.8zm-10.8-8.7H108v-8.7H91.8zm5.4-8.7h5.4v-8.7h-5.4zm0 34.7h5.4v-8.6h-5.4zM0 408h10.8v-8.7H0zm5.4 8.5h16.2V408H5.4z"/>
+      <path d="M16.2 407.9H27v-8.7H16.2zm-10.8-8.7h16.2v-8.7H5.4zm5.4-8.7h5.4v-8.7h-5.4zm0 34.7h5.4v-8.6h-5.4zm-5.4-69.4H27v-8.7H5.4zm27 0H54v-8.7H32.4zm27 0H81v-8.7H59.4zm27 0H108v-8.7H86.4zm-43.2-17.4h27v-8.6h-27zm-37.8 0h27v-8.6h-27zm75.6 0h27v-8.6H81zm27-34.6h5.4V295H108zm-108 0h5.4V295H0zm48.6-43.5H54v8.7h-5.4zm10.8 0h5.4v8.7h-5.4zm0-17.3h5.4v8.7h-5.4zm-10.8 0H54v8.7h-5.4zM10.8 477.3h10.8v8.7H10.8zm75.6-164.9h5.4v-8.7h-5.4zm-64.8 0H27v-8.7h-5.4zm27-8.7h16.2v8.7H48.6z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bz.svg
new file mode 100644
index 0000000..6824957
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/bz.svg
@@ -0,0 +1,145 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-bz" viewBox="0 0 640 480">
+  <defs>
+    <radialGradient id="a">
+      <stop offset="0" stop-color="#ffef5d"/>
+      <stop offset="1" stop-color="#ea5700"/>
+    </radialGradient>
+    <radialGradient id="b">
+      <stop offset="0" stop-color="#952d1a"/>
+      <stop offset="1" stop-color="#570a00"/>
+    </radialGradient>
+    <radialGradient id="c" cx="247.1" cy="238.3" r="36" fx="247.1" fy="238.3" gradientTransform="scale(1.22624 .8155)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="d" cx="322" cy="152.9" r="10.6" fx="322" fy="152.9" gradientTransform="scale(.93615 1.06821)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="e" cx="364.2" cy="237.8" r="36" fx="364.2" fy="237.8" gradientTransform="scale(1.2242 .81686)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <radialGradient id="f" cx="468.1" cy="156.1" r="10.7" fx="468.1" fy="156.1" gradientTransform="scale(.95596 1.04607)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+  </defs>
+  <path fill="#ce1126" d="M0 0h640v480H0z"/>
+  <path fill="#003f87" d="M0 34.3h640v411.4H0z"/>
+  <circle cx="320" cy="240" r="188.6" fill="#fff"/>
+  <circle cx="320" cy="239" r="156.3" fill="none" stroke="#552300" stroke-width="3.9"/>
+  <path fill="#007f00" d="M302 73.2c14-15.2 26.9 2.3 26.5 10.6C328.2 92 314 110 301 95.5c13.4 3.4 17.4-11.5 24.1-11.7-6.7.2-9.5-14.6-23.2-10.6zm-147.2 119c-7.4-19.4 14-23 21.3-19 7.3 3.9 17.3 24.6-1.6 29.6 9-10.4-2.7-20.5.2-26.6-2.9 6-17.5 2-19.9 16zM471.9 173c19.4 7.6 7.6 25.8-.2 28.4-7.9 2.7-30-4-21-21.2 1.6 13.6 17 12 19.7 18.1-2.6-6.2 10.3-14 1.5-25.3zM218.8 377.4c-20.7-2-14.3-22.7-7.5-27.4 6.8-4.7 30-4.3 26 14.7-5.3-12.6-19.7-6.8-24-12 4.3 5.2-6 16.3 5.5 24.7zm209.3-15c.3 20.7-21.1 16.8-26.6 10.6-5.4-6.2-7.7-29 11.8-27.3-12 6.6-4.6 20.2-9.4 25 4.8-4.8 17.1 4 24.2-8.2zM170 153c-1.9-20.6 19.8-18.3 25.7-12.6 6 5.8 10 28.4-9.6 28.2 11.5-7.6 3-20.5 7.4-25.6-4.4 5-17.3-2.8-23.5 10zm22.2 193c-20.5-3.5-12.7-23.7-5.6-27.9 7-4.2 30.1-2.3 25 16.4-4.5-13-19.3-8-23.1-13.6 3.8 5.5-7.2 16 3.7 25zM354.3 74c18.6-9.2 24.3 11.7 21 19.3-3.2 7.5-23 19.4-29.8 1.3 11.2 7.9 20.3-4.7 26.7-2.4-6.4-2.3-3.7-17-17.9-18.2zM394 388.3c-9.3 18.5-26.5 5.3-28.5-2.7s6.5-29.3 23-19c-13.8.5-13.4 16-19.8 18 6.4-2 13.3 11.4 25.3 3.7zm90.5-178.7c15.6 13.7-1.7 26.8-10 26.7-8.2-.1-26.8-13.8-12.5-27-3 13.4 12 17 12.4 23.6-.3-6.7 14.5-9.8 10-23.3zm-263-108.8c4.7-20 24.5-11.2 28.4-3.9 3.8 7.3.5 30-18 23.8 13.3-3.7 9.3-18.6 15-22-5.7 3.4-15.5-8-25.4 2.1zm-61.6 172.5c-18.2-10-4.2-26.5 4-28.1 8-1.7 29.2 7.7 18 23.7.2-13.7-15.4-14-17.2-20.5 1.8 6.5-12 12.7-4.8 25zm263.6-159.6c20.6-3 19.4 18.7 14 24.8-5.5 6.2-28 11.4-28.9-8 8.2 11 20.8 1.9 26.2 6-5.4-4.1 1.9-17.3-11.3-22.8zM306.3 408.1c-19 8.4-23.8-12.7-20.3-20 3.6-7.5 23.9-18.6 30-.1-11-8.4-20.5 3.8-26.8 1.3 6.3 2.5 3 17.2 17.1 18.8zM476.8 293c8.6 18.8-12.6 23.7-20.1 20.2-7.5-3.5-18.8-23.6-.2-29.7-8.4 10.9 4 20.3 1.4 26.6 2.5-6.3 17.3-3 19-17.1zm-325.1-60.6c-12-17 8-25.7 16-23.6 8 2 22.8 19.8 5.7 29.2 6.2-12.3-7.6-19.3-6.3-25.9-1.3 6.6-16.5 6.1-15.4 20.2zM264 395.6c-19.6 7.1-23-14.2-18.9-21.4 4-7.2 25-16.9 29.9 2-10.3-9.1-20.7 2.4-26.8-.5 6 2.9 1.8 17.3 15.8 19.9zm-5.7-314c11.6-17.2 27-2 28 6.3.9 8.1-10.3 28.2-25.4 15.8 13.8 1.3 15.4-14 22-15.2-6.6 1.2-11.7-13-24.6-7zm200.2 252.1c1.3 20.6-20.3 17.7-26 11.7-5.8-5.9-9.1-28.6 10.4-27.8-11.7 7.2-3.6 20.4-8.2 25.4 4.6-5 17.3 3.3 23.8-9.3zm-5.3-194.4c20.4 4 12 24 4.7 28-7.2 4-30.2 1.3-24.4-17.2 4 13.1 19 8.7 22.6 14.4-3.6-5.7 7.7-15.7-3-25.2zm-258.4-14.6c.2-20.6 21.5-16.2 26.8-9.9 5.3 6.3 7 29.3-12.4 27 12.2-6.3 5-20 10-24.7-5 4.7-17-4.5-24.4 7.6zM169 311c-18.6-9.4-5.1-26.4 2.9-28.3 8-2 29.5 6.7 19 23-.4-13.7-16-13.4-18-19.8 2 6.4-11.6 13.1-4 25zM392 91c19.5-7.3 23 14 19 21.2-4 7.2-24.9 17.1-29.9-1.7 10.4 9 20.7-2.6 26.9.3-6.2-2.9-2-17.3-16-19.8zm-41.3 314.8c-15.2 14.2-26.7-4.1-25.8-12.3.9-8.2 16.3-25.3 28.2-9.9-13-4.3-18 10.4-24.9 10 6.8.4 8.5 15.3 22.5 12.2zm132.7-158c14.2 15.1-4.4 26.5-12.6 25.5-8.2-.9-25.4-16.3-9.8-28-4.4 13 10.3 18 10 24.7.3-6.7 15.4-8.4 12.4-22.2z"/>
+  <path fill="#005800" d="M301 95.5c13.4 3.4 16.7-11.3 23.5-11.5-4 4.7-14.2 16.7-23.5 11.5zm1-22.3c14-15.2 26.9 2.3 26.5 10.6-11.5-20-15-17-26.6-10.6zM174.4 202.8c9-10.4-2.8-19.9 0-26 2.6 5.6 8.9 20.1 0 26zm-19.7-10.7c-7.4-19.3 14-22.9 21.3-19-23.1 1.4-22 6-21.3 19zm295.9-11.8c1.6 13.5 16.7 11.3 19.3 17.5-5.9-2-21-7.1-19.3-17.6zm21.2-7.3c19.4 7.6 7.6 25.8-.3 28.4 14.7-17.8 10.5-20 .3-28.4zM237.3 364.7c-5.3-12.6-19.2-6.4-23.4-11.7 6.2.3 22 1.2 23.4 11.7zm-18.5 12.7c-20.7-2-14.3-22.7-7.5-27.4-9.2 21.1-4.6 22.1 7.5 27.4zm194.5-31.7c-12 6.6-4.2 19.6-9 24.3-.4-6-1.3-21.8 9-24.3zm14.8 16.7c.3 20.7-21.1 16.8-26.6 10.6 22.3 6.6 22.7 2 26.6-10.6zM186 168.4c11.5-7.5 2.7-19.8 7-25 1 6.1 3 21.8-7 25zM169.9 153c-1.9-20.6 19.8-18.3 25.7-12.6-22.7-4.9-22.8-.2-25.7 12.6zm41.5 181.5c-4.4-13-18.7-7.6-22.5-13.2 6.1.7 21.9 2.7 22.5 13.2zM192.1 346c-20.5-3.5-12.7-23.7-5.6-27.9-10.6 20.5-6 21.8 5.6 27.9zM345.4 94.6c11.3 7.9 19.7-4.7 26.1-2.5-5.4 3-19.3 10.6-26 2.5zm8.9-20.6c18.6-9.2 24.3 11.7 21 19.3-3.5-22.8-8-21.1-21-19.3zm34.2 292.6c-13.8.5-12.8 15.6-19.3 17.6 2.5-5.6 9-20 19.3-17.5zm5.5 21.7c-9.3 18.5-26.5 5.3-28.5-2.7 16.7 16 19.2 12 28.5 2.7zm68-179c-3.1 13.4 11.9 16.3 12.2 23-4.9-3.8-17.2-13.7-12.2-23zm22.5.3c15.6 13.7-1.7 26.8-10 26.7 19.9-12 16.7-15.4 10-26.7zm-252.6-89c13.3-3.6 8.8-18 14.6-21.5-1 6-4 21.5-14.6 21.6zm-10.4-19.8c4.7-20 24.5-11.2 28.4-3.9-20-11.7-21.6-7.2-28.4 4zm-39.5 168c.1-13.6-15.2-13.3-17-19.8 5.6 2.7 19.9 9.7 17 19.9zm-22 4.5c-18.3-10-4.3-26.5 3.9-28.1-16.8 15.9-13 18.6-4 28.1zm248.6-142.8c8.2 11 20.2 1.6 25.6 5.7-6.1 1.2-21.7 4.1-25.6-5.7zm14.9-16.8c20.6-3 19.4 18.7 14 24.8 3.7-22.7-1-22.5-14-24.8zM316 388c-11-8.4-19.9 3.9-26.1 1.4 5.5-2.8 19.7-9.8 26-1.4zm-9.7 20.1c-19 8.4-23.8-12.7-20.3-20 2.7 22.8 7.2 21.4 20.3 20zm150.2-124.7c-8.4 10.9 4 19.7 1.5 25.9-2.8-5.4-10-19.5-1.5-26zm20.3 9.5c8.6 18.8-12.6 23.7-20.1 20.2 23-2.8 21.6-7.2 20.1-20.2zm-303.3-55c6.2-12.3-7.7-18.6-6.4-25.2 3.8 4.8 13.5 17.3 6.4 25.2zm-21.8-5.7c-12-16.9 8-25.5 16-23.5-22.1 7-19.8 11-16 23.6zm123.3 144c-10.3-9.1-20 2.5-26.2-.4 5.7-2.4 20.4-8.5 26.2.3zm-11 19.4c-19.6 7.1-23-14.2-18.9-21.4 1.1 23 5.7 21.9 18.9 21.4zm-3-291.9c13.7 1.3 14.7-13.8 21.3-15-3.1 5.3-11.4 18.8-21.4 15zm-2.7-22.2c11.6-17.1 27-1.8 28 6.3-14.5-18-17.6-14.3-28-6.3zM443 317.6c-11.7 7.2-3.3 19.8-7.9 24.8-.7-6.1-2.3-21.8 8-24.8zm15.6 16.1c1.3 20.6-20.3 17.7-26 11.7 22.4 5.7 22.7 1 26-11.7zm-25-183.6c4 13.1 18.5 8.3 22.1 14-6-1-21.8-3.5-22-14zm19.7-10.8c20.4 4 12 24 4.7 28 11.3-20.1 6.8-21.6-4.7-28zm-244 2.6c12.2-6.4 4.7-19.6 9.6-24.2.3 6.1.8 21.9-9.6 24.2zm-14.4-17.2c.2-20.6 21.5-16.2 26.8-9.9-22-7.1-22.6-2.4-26.8 10zm-4 181c-.3-13.7-15.6-12.8-17.6-19.2 5.7 2.4 20.2 9 17.6 19.2zM169 311c-18.5-9.4-5-26.4 3-28.3-16.2 16.4-12.3 19-3 28.3zm212.2-200.4c10.4 9 20-2.8 26.2 0-5.7 2.6-20.3 8.7-26.2 0zM392 91c19.5-7.3 23 14 19 21.3-1.2-23-5.8-21.9-19-21.3zm-38.9 292.6c-13-4.3-17.4 10.2-24.2 10 4.3-4.5 15.4-15.8 24.2-10zm-2.4 22.2c-15.2 14.2-26.7-4.1-25.8-12.3 10 20.7 13.8 17.9 25.8 12.3zM461 245.3c-4.4 13 10.2 17.3 9.9 24-4.5-4.2-15.8-15.3-9.9-24zm22.4 2.5c14.2 15.1-4.4 26.5-12.6 25.5 21-9.9 18.1-13.6 12.6-25.5z"/>
+  <g fill="#730000" stroke="#000" stroke-width=".5">
+    <path d="M349 120.3s.6-1.3 1.7-.6c1 .8 1.3 4.2 1.3 4.2l-1.6.8s.9-1.3-1.3-4.4zm-8.8 30.7s.8-1-.3-3.4l1.5-.5s.6 1.8-.2 3.9h-1m27-5.4l-3.7 2.3 1.9.8 4.5-2.6-2.7-.5m-49.7 14.6c-1 .8-1 2.1-1.7 3-.4.7-2 1.8-2 3-.2 1.1-.3 1.9.2 3.5.6 1.5 3 8.5 2 13.7-1 5.3-.6 7.5-.3 8.3.4.8 1.6 3 2.3 3 1.6-.2.9-.7 1.5-1.7 1.4-2.5 0-22.2-.7-27.6-.5-4.2-2.5-8-2.7-8.4l-.8-2.6c-1.5-3.5-3.3-6.5-3.3-13.9 0 0-4.7 1.1-8.8-8.2-2.2-4.7-5.3-4.2-9-5.7l1.6-1.1s3.2 1.6 4.7 1.6c1.6 0 1-3.2 1-3.2l1.7-1.5v6.8c0 3.1 4.3 7.4 6.8 8.7 1.6.8 3.6-2.4 3.1-5.6-.5-3 0-7.3 0-7.3l2.2 1.3s-.8 1.3-.6 2.1c.3.8 1.3-.7 2.1-1.5 0 0 .2.2 1 .2l-2.3 4c-.8 1.2-.8 6.2-.8 8 0 2 .7 6.2.7 7.6 0 1 1.8 5 3.3 7.4l1.6 3.5c1.2 1.9 1.3 3.2 2 4.7.4.8 1 3 1.6 7l.7 7c.2 2.4 2.2.6 4.5-1 2.4-1.8 2.4-6 2.4-6s1.8-1.6 1.5-.7c-.2 1 1 2 1 2-1.4 3.3-.6 2.9.9 2.8 1.5-.2 6.5-4 6.5-4 .7-.2 3.8-.2 3.3 0-.6.3-1.4 1.7-1.4 1.7l3.3-.4c-1.1.9-5.5 3.4-6.5 4a90.6 90.6 0 01-8.6 4.1c-2.3 1-6.7 3.2-6.9 5.4 0 2.3.3 8.3 0 10.3l-1 10.6h-10.4s2-7.6 0-9.7c-2.1-2.1-7-8.4-10-10.5-3.2-2 2-.5 2-.5v-2.1l4.8 5.7s8.3-7.3 0-17.3c-2.6-3.1-5.3-7.9-7.3-8.4-2.2-.6-3.3-1-6.9 0-3.7 1.1-12.6 1.1-16.3-4.8l3.1-.5 2.7-1s-1.1 3.7 6.3 3.7 8.4 0 7.8-6.8l2.2-1.1 1.6 1.5s-1.1 3.8-.5 5.3c.5 1.6 3 2.7 5.1 4.2 1 .7 1.6.8 2.2.8.9-.1 1-.1 2.2-1.3 1.8-2 1.4-1.8 3.2-3.4l1-1.6 1.1 2.9z"/>
+    <path d="M319 155c.5-.4 1.2-1.9 2-3.1 1.1-2 2.5-3.2 4-5.6 1.5-2.2 2-5.6 1.5-7.9l1.4.8v3.7l2.7-2 .8.4s-5.9 6-11.3 15.9l-1-2.2zm-51.3-20.3c.8 1.4 1.6 4 3.9 6l1.6-.4s-3.6-4.2-3.6-6l-1.9.4m9.2-2.4s.5 5-.8 6.9l1.6-.8s1-3.4.7-5.3l-1.5-.7zm51.4-15.7s-.3 7 1.1 11.3l1.9-.5s-.3-1.3 1.2-1.9c1.6-.5 5.3-2 7.2-3.6l-.6-1.6s-2.8 2.3-4.2 2.9c-1.3.5-2 1-3.1.7-1.1-.3-2.4-2-1.6-6l-1.9-1.3m20.7 32.8s-.4 5-.2 7.2l1.7.4s-.4-6 .7-6.5l-2.2-1m7.5 3.7s-1.9 3.2-4 3.5l3.4-.7s1-.5 2.4-2l-1.8-.8"/>
+  </g>
+  <g fill="#289400" stroke="#030" stroke-width=".5">
+    <path d="M326.6 138.4l1.3.8 1.3.2 3.2 2.6c1.2 1 1.2-.2 1.2-.2l.8 3.1h1l-.2 3.2 1.8-1.6 2.2 1.9s1.5-1.4 2.3-1.4c.8 0 1.1-.8 1.1-.8h.1c-5.2-2.4-7.4-5-5.9-7.6 2.6-4.4 6.8-1.6 8.1-1l19 10.2s1.3-.8.4-1.6c-1-.8-1.4-2.7-1-3.5.2-.8 2.4 2.4 3.4 2.7l3.5.7v-1s3 2.2 3 3.3c0 0 2.3-1.2 1.5-1.9-.7-.7 3.5 1.7 3.7 3l1-1c-.2 0 .2-3.2 1.3-4.6a4.8 4.8 0 012-1.9s1-1.7 2-1.7c0 0-1-.6-1.4-1.4-.5-.8-1.6-1.2-1.6-1.2s1.4-1 1.8-1.5c.4-.6.8-.7.8-.7s-2.2-1.9-3.8-2.2c0 0-.1-2.5-2-2.7h.8s-1.4-2.8-2.8-2.8c0 0 .9-1 1.6-1.1 0 0-1.6-2.2-3.9-1.4l1.5-.6s-1-1.1-4.4-.6c0 0 .3-1.3-1.2-2.4 0 0-1.2 0-1.2 1 0 0-1.2-1-2.7-1-1.4 0 .5 1.6.5 1.6s-2-1.3-3.1-1c0 0 .5-2.2-.8-3.3 0 0-1.4.7-1.8 1.7l-.4-1s-2 2.4-2.4 1.7c-.3-.4-.6-2-.6-2l-1.1 1.7.2-2.4s-1.4.8-2.5 3.3c0 0-1.3 1.3-1.3 2.4 0 0-1.1-1.2-2 0-1 1.4 0 1.1 0 1.1s-.5.5-1.5.7l.2.8s-1.2-.7-2.2-.4l.5 1.2s-2.6.2-2.7-2c0 0-2.1-1-2.4.2l-1.6 1s-.5-1-1.3-1.2c-1-.3-.2 1.3-.2 1.3s-.3-1.2-1.5-1.8c-1.2-.5-.2 1-.2 1s-1.5-1.2-.8-2.2c0 0-1.4 1.4-.7 2.7l-1 .7s-.5-.5-.4-1c0-.3-1.7 1.3-1.7 1.3s-1-2.6 0-2.6c.1 0-1.8 0-2.1 2.2 0 0-1.3 0-2.5.4s1 1.3 1 1.3-2-.4-3 .2l.7.9s-.7-.7-2.4-.1c-1.7.5.4.8.4.8s-1.7-.4-2.6 0c-.9.4.3 1 .3 1s-3.2-1-3.7-.6c-.5.3 1 1.8 1 1.8s-2 .5-2.3 2l1.8.7s-.8.4-1.2 1.1c-.4.8 1.2.4 1.2.4s-2.2 1.6-2.2 2.8c0 0 1.6.5 2.7-.7 1.2-1.2.4-.8.4-.8l.1.8s2.3-1 2.3-1.6c0-.5-.4.8-.4.8l2.2-1.2 1.5 1z"/>
+    <path d="M324.7 108l-.5-2.2 5 .6.9-2s2.4 1 3.1 1.8c0 0 4.6-1.2 6-.7l-.6 2.1s4.2.3 5.6.8c1.2.5-.6 1.6-.6 1.6s4.8.6 6.8 1.8c2.2 1.3 2.2 2.4 1.1 2.7l2.6 4.2s-4.2.5-5 1.5c-.7 1.1-1.5-1-1.5-1l-.8 2.9s-2.6-1.4-3.7-2.4c0 0-1.3 1.6-.5 2.4l-4.8-3.1s-2-.3-2 1.5l-3-3.4-2.6.8s-.8-1-1.7-1.4c-1.1-.2-.3 1.4-.3 1.4l-1.6-1.9-1.6-1.8s-1.3 1.8-2.4 1.8c-1 0-1-1.2-.8-2.1.3-.8-3.1-1-3.4 0 0 0-1-4 2.6-5l3.7-1zm-19 13.3l-1.6 1.6-1-.5-1.9 2.1-.4-1.1-1 1.7-1.7-.6-.8 1.3-1.5-.3s-1.2 1.2-2 1.5c-.8.2 0-1.8 0-1.8s-1.2 2-2 2c-.9 0-.6-1-.6-1s-.5 1.4-1.4 1.6c-.9 0-.5-1-.5-1l-1.6 1.2v-1l-.7-.3s.4-1.8 1.1-2.2c.7-.4-.7-1.5-.7-1.5l.7-.8s-2-.5-2-.1c0 0 1-2.6 2.4-3.1l.1-3s1.4-1.1 2.6-1.2c1.4-.2-.4-2.3-.4-2.3l3.2-1.8.4-2.3 4.7.4 1-2 3.8 1 3.3-1.7 2.3 2.7 3.5.3v3.1s4.1 1.3 4.6 1.7c0 0-.8 2.5-.8 3 0 0 3-.8 3.8-.6l.4 3.4s5 1.6 5.3 2.5c0 0-1 .7-1.7 1.6 0 0 .6 3 .6 4l-.4.5s-1.4-1.3-2.6-1.5l-1 2.1-1.7-1.1h-1.1s-.9-1-1.6-1v-1l-1.4.9s-2.2-1.1-2.2-1.8l.1-1.5-2.2 1.5s-.5-1.1-.4-1.6c0-.5-.9 1.1-.9 1.1s-1.2-2-1-2.4l-.4 1.7s-2.3-.8-2.6-2.4z"/>
+    <path d="M274.5 130.9s4.1 2 4.1 3c0 0 1.1-2.1.5-3l1.6 1.1s.5-1.9-.1-2.5c-.5-.5 3.5-2.1 4.4.5 0 0 2.4-2.5-2.3-4.7 0 0-.4-1.6 2.5-1.2 0 0-.2-1-.9-1.3h2.7s-1.6-1.4-4-1.8c-2.4-.4-1-.7-1-1.2-.2-.5 0-2.2 0-2.2s-1.4-.5-2.5 0l.4-.4s-2.5-.7-3.5-.1c0 0-1.5-.6-1.3-2.1 0 0-1.5-.1-2.1 1.4 0 0-1.4 1.6-3.3 1.6-.3 0-1.7-.8-1.7-.8l-1.2 2.7H265l.5 1s-2.8-.8-3.7 0c0 0 1.1 1.7.8 2.8 0 0-2.2.4-2.7.8-.6.4.8.7.8.7s-2.6.8-3.2 1.6l1 .7-1.2 1.6 1 .2-2.5.8c-.9.3 1.5.5 1.5.5l-1.1 1 1.8.3s-1.4 4-1.5 5.8c0 0 2.2-2.7 2.8-3l-1.8 3s3.4-1 3.7-1.6l.5-1 .1 1.6s1.3-1.7 1.5-2.4c.1-.7 2 .7 2 .7v-1l2.4.7c.7 0 .8-.3.8-.3l1.6-.2-.3 1.4s1.2-.8 1.5-1.6c.2-.8.8 0 .8 0l.8-3.1h1.6zm-13.4 13.8l1.6 3.3c-1.3 0-3.1 1.5-3.1 1.5.3 5.4-1 5.1-1 5.1.3 1-.3 2.8-.3 2.8l7.7-4.6.1-.5 9.2-4.3.3.5 2.6-1.5 1.9 4.9-1.9 1c.1 1.7 2.1 4.6 2.1 4.6l2.4-.6 2.7-1v1c0-.3 2.9-1.3 2.9-1.3l1.3 1.3c1-.1 2.7-2.5 2.7-2.5l2 .8s.7-1.2.7-2 2.6-.8 2.6-.8l1.7 1.2 2.3-1.8s.7 1.3 1.6 1.5c1 .1 3.4 2 3.4 1.6 0-.4 1-2.5 1-2.5l4.1 1.6c-.5-1.8-2-4-2-4s2-1.6 1.7-2c-.4-.4-1.6 0-1.6 0l1.2-2.4h-1.6l.5-.6-2.5-1 1.3-2.8c-.6-.7-7.3-2-7.3-2l1.6-1.5s-.8-1.2-1.6-1.2-4.9.1-5-.3l-1.8-1.8-2.6 1.9-1.3-.4-2.2.8s0 1.3-.3.4c-.3-.8-2.3-2.8-2.3-2.8-.4.7-3 3.8-3 3.8s-.5 1.7-1.3.5c-1-1.2-3-2.4-3.4-1.5-.2 1.1-2.1 2-2.5 1.8-.4-.3-2.5-.1-2.7.5-.1.7-2.5 2.4-2.5 2.4-1.4-.7-3.8-.3-3.8-.3s-.7 1.1-.8 2l-4.7 1.2zm44.2 39.6v-2l2.3 1.5 1.4-1.5 1.8 1.7 1-1.7v2.8l2.7-2.3 1.5.6v-2.2s1.9-3.1 1.1-3.7l1.6-.5s-2.7-2.6-3.4-3.1c-.8-.6-1.9-.6-1.9-.6s-2-2-3.4-2.7c-1.3-.5-2 .6-2 .6s-.8-1.5-2.2-1.8c-1.3-.3-1.3 1-1.3 1s-1-1-2.2-1.4c-1.3-.6-.4 1.2-.4 1.2l-4.5-1.4.6 1.4-4.2-1.1.5 1.5-3-.5-.2 1.3-4.2.8.8 1.4-2.6-1.1v1.9l-3 1 1.1 1-4.7 2.4c-.7.5 1.6 1.6 1.6 1.6l-4.2-.6 1.6 1.4-3.7 3.4 2.6 1.9-1.6 2.3 4 .8 1.5 2.6 3.2-.6v3l4.7-3.7s3.4 3 3.7 2.1c.2-.8.2-3.4.2-3.4h1.7V187l1.2 1 2.2-3.1 2.8 3.9 2.2-5 3.1.5zm19.1-11.8l-.4-4.5-1.4 1.4.6-4.2-2.2-.4.8-4.1-1.6-.8.4-2 1.6-1.1 2.8-2.8 6.6.1.7-2.1 4.7.8c.8.8 3.3-1.8 3.3-1.8h1l1 2s3.4-.4 5 .6l-1.9 2.6 3.5.3 2.3.5 2.4-.8 3.2-.2.7 1.3h3l-1 1.1 3.8 1.8-.8.8s2.2.8 3.7.8h.8s.8 1.8-.3 2.6c0 0 1.1 2.6 3.4 3.1 2.4.5 2.4.5 2.7 1 .3.6 0 3.2-2.7 3.2v2.7s-2 1.8-2.3 2.6l-1.6-1s-1.3 1.5-1.3 2.5c0 0-3.5-4.5-4.7-4.7-1.4-.2-1 2.6-1 2.6l-3.8-3.1-.5 2.1-3.1-2.6-1.9 1.3-3.3-3.5-3.2.4 1.2-1.6h-3.9l-.7-3.4-.6 2.8-2.4-1.6-3 3.3s-.4-.4-.9-2c-.5-1.5-1.8 2-1.8 2l-1.1-2.5-1.3 2.4s-1-1.8-2.1-2.4c-1-.5-2 3-2.4 4.5zm.6 10.3l.2-1.6 5.6-2.2 4.7-1.7 2.3-1.1 1.1 1.9 1.4-2.7 2.1 2.8 1.2-1.5 1.8 1.4h1.6l.3 2s3.9.3 4.2-.5c.3-.8.8 2.7.8 2.7l3.7.5.8 4.2s1.8 3.9 1.2 5.4c-.5 1.7-2-2-2-2s-.3 2.9-.6 3.7c-.2.8-5-.8-5-.8l-2 3.9s-2.2-3.1-3.2-3.1-1 3.1-1 3.1l-4.5-5.3c-1.3-1.5-1.6 1.6-1.6 1.6s-2-3.4-2-4.4c0-1-1.9-2.2-1.9-2.2s-3.2 3.7-5.6 4.7c0 0 .3-2.3-.5-3-.7-.9-3 1.5-3 1.5s-1.7-3.6 0-7.4z"/>
+  </g>
+  <g fill="none" stroke="#004b00" stroke-width=".5">
+    <path d="M350.8 124.5l.5 2s1.8-.4 3-.3l-.7 2.2s2.3-.4 3.4.3l-.5 1.2 2.7 1.2-2.5 2s4 1.5 4.9 2.7c0 0-2.7 1.8-3 1.7-.5-.2-.2.8.5 1.7l-2.2-.1s.9 2 .8 2.8c-.2.8-3.8.6-3.8.6m14.1-5.3s.7-3.9-.4-4.9c0 0 2.5 2.2 4.2 2.3 1.8 0 0-3.2 0-3.2s2.3 1.2 3.5 1.5c1.2.2-.9-2.4-.9-2.4s.7-1.3 2.7-.1m-45.4-15.5s0-1-.3-1.4c-2.4-3.2 2.4 2.4 3.4 2.6m4.5 0s1.6 1.2 2.3 1.2c.8 0-.5-3.1-.9-3.5-.3-.4 2.9 1.3 4 1.4 1.2.3 1.4-2 1.4-2s3.6.7 4.4 1.2m-25-.7l-.5-3m-24.2 12.7c-.2-.3 1-2 .5-2.9 0 0 .7.6 1.4.7.6.1.4-2.2.4-2.2l.7.3s2-1 1.7-1.8c-.4-.8 1.4 1.2 1.4 1.2s1.1-1.2 1.1-1.7 1.4 1.2 1.4 1.2 1.5-.3 1.5-1.2c0-.9 1.8.3 1.8.3s.8-1 .7-1.8m-19.7 9.8s.9-2-.1-3.4m-23.6 9.8c0-1 .5-3.6 0-4-.4-.4 1 .4 2.2.7m9.3-.4c-1.2-1.1-1.9-1.7-3.7-1.7m-16.2 8.3c.3-.7.8-2.4.5-3.3m25 51.7l1.3-2.6 1.6 3.7 1-2.3.4.7 2.4-2.5 2.5 3.8m40.7-16.5l1.7-3.3 2.3 1.2 1-3.3 2.4 1.5 1.3-3 2.7.7.2-2.2s1.8 1 2.3 1.9c.6.7 0-2.7 0-2.7l2.2 1s1.5-1.6-.6-2.4"/>
+    <path d="M343.6 163.1l2.3 3.4 2-2.2 1.7 3.8 2.3-1.4 3.2 1.9 1.5-1.2 3.5 2.5 1.4-3 3.2 1 2-3.5m-84.4-9.2s1.4-2.3 1-3.4c-.7-1 2.8 1.8 2.8 1.8s.7-2.3.3-3.4c-.6-1 3.9 3.2 3.9 3.2s.7-3.7 0-4.4c-.8-.8 4.3 1 4.3 1s2-.6 1.2-1.6c-.8-1.1 3.4 1.5 3.4 1.5s1-2.6 0-3.6 3.2 1.3 3.2 1.3l-1.6-2.8 3.4.2-.3-3.2m30.3 45.1l2.2-1 2 2 2.2-3.5 2.6 2.5.4-2.5 2.8 1.2.6-1.6 3.1 1.7.3-2.4 1.6.5.3-1.5"/>
+  </g>
+  <path fill="#9dd7ff" d="M283.1 298.1a69.8 69.8 0 01-6-13l42.4-37.2 42.3 37.1a64.7 64.7 0 01-6.2 13.3l-.3.5-3.2-1.2s-1.4 1.3-2.5 1.4c-1.4.2-2.7-1.3-2.7-1.3s-1.8 1.6-3.7 1.3c-1.9-.2-2.6-1.4-2.6-1.4s-2 1.6-3.4 1.3c-1.2-.3-2.1-1.2-2.1-1.2s-1.2 1.5-2.8 1.2c-1.6-.3-3-1.2-3-1.2s-2.5 1-4 1.3c-1.6.3-3-1.4-3-1.4s-2 1.4-2.8 1.4c-.8 0-3.7-1.4-3.7-1.4s-3 1-4.1 1c-1 0-4-1.3-4-1.3s-2.9.8-4.1.8c-1.4 0-3.4-.8-3.4-.8s-2.3 1.1-3.6.8c-1.4-.3-2.4-.8-2.4-.8s-2.6 1.1-4.2.8c-1.6-.3-3.4-1.4-3.4-1.4s-.3.8-3.4 1.4"/>
+  <path fill="#fff" stroke="#000" stroke-width=".7" d="M319.5 205.1V248l-42.3 37.4a84.2 84.2 0 01-4.4-27.1V205h46.7"/>
+  <path fill="#ffd83c" stroke="#000" stroke-width=".7" d="M319.5 205.1V248l42.2 37.4a84.2 84.2 0 004.3-27.1V205h-46.5"/>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#730000" d="M292.2 289.2c3.2 1.7 2 1.2 8.7 3.5a61.8 61.8 0 0020.7 2.8c8 0 12.4-.7 15-1.4 2.5-.7 3.1-1.8 3.1-1.8l-6.5 6.7s-26.3 1.4-31-1.7c-2-1-6-4.2-10-8z"/>
+    <path fill="none" d="M330.8 276.8s8.4 4.8 0 14m-37.8-1l12-11.6-1.3 15.4m6.3 1.4v-25.8m20.8 25.8v-27.4m-10.5 27.9V266"/>
+    <path fill="#ff0018" d="M310 270.6l-5.4 1.7 5.4.6v-2.3m10.3-4l-5.8 2.1 5.8.2v-2.4m10.5 1.6l-5.8 2.2 5.8.3V268zm3.4 12.4c-.3-1.1 3.4-1 3.4-1s1 3.9 0 6.3l-3.1-.6s.3-2.6-.3-4.7z"/>
+    <g fill="#fff">
+      <path d="M294.8 288.1l10.3-10-.5 6s-5.3 3.5-5.3 5.9l-4.5-1.9m5.5 2.1s1-3.1 4-4.7l-.3 6.3-3.7-1.6zm14.7-17.3s4.2-.6 7.4 0c0 0-.5 4.2 0 5 0 0-5.8-1.4-8.1.8 0 0-.8-4 .7-5.8zm-8.9 1s4.2-.5 7.4 0c0 0-.8 4.8-.3 5.5 0 0-4.7-2.6-7-.4 0 0-1.6-3.3 0-5z"/>
+      <path d="M305.9 279.4s4.2-.4 7.3 0c0 0-.5 4.3 0 5 0 0-5.5-1.2-7.8.8 0 0-1.1-3.9.5-5.8zm8.4-.7s6-.8 9.1-.3c0 0-1.2 3.4.3 5.7 0 0-6.5-1.7-9 .3 0 0-2-3.9-.4-5.7zm-9 6.5l8.2.6s-.8 6-.3 6.7c0 0-6.6-1.5-7.8.6 0 0-2.2-5.4 0-7.9zm9.2 0s7-.5 10.3 0c0 0-1.9 4.5.2 8.4 0 0-9.2-2.6-10.5-.5 0 0-2.1-5.4 0-7.9zm10.8-12.3s4.2-.6 7.3 0c0 0-.5 4.2 0 5 0 0-5.8-1.4-8 .8 0 0-.9-4 .7-5.8zm0 5.8s4.2-.5 7.3 0c0 0-.5 4.2 0 5 0 0-5.8-1.3-8 .7 0 0-.9-3.9.7-5.7zm.5 6s4.2-.6 7.4 0c0 0-1 6.6-.6 7.4 0 0-4.8-2.3-7-.3 0 0-1.4-5.2.2-7z"/>
+      <path d="M334.5 285.2s1.3 5 3 5.6l-2.2 2.8s-2.9-2-3.2-4.4c0 0 1.9-2.1 2.4-4z"/>
+    </g>
+  </g>
+  <g stroke="#000" stroke-width=".6">
+    <path fill="#006ac8" stroke="none" d="M355.4 298.7a66.2 66.2 0 01-36 28.3 67.3 67.3 0 01-36.3-28.8h.1c3-.7 3.4-1.5 3.4-1.5s1.8 1.1 3.4 1.4c1.6.3 4.2-.8 4.2-.8s1 .5 2.4.8c1.3.3 3.6-.8 3.6-.8s2 .8 3.3.8c1.3 0 4.1-.8 4.1-.8s3 1.3 4 1.3c1.1 0 4.2-1 4.2-1s2.9 1.4 3.7 1.4c.7 0 2.8-1.4 2.8-1.4s1.4 1.7 3 1.4c1.5-.2 4-1.3 4-1.3s1.4.9 3 1.2c1.6.3 2.8-1.2 2.8-1.2s.9.9 2.1 1.2c1.4.3 3.3-1.3 3.3-1.3s.8 1.2 2.7 1.4c1.8.3 3.7-1.3 3.7-1.3s1.3 1.5 2.7 1.3c1.1-.1 2.5-1.4 2.5-1.4l3.3 1"/>
+    <path fill="none" stroke-width=".5" d="M353.7 301.2c-1.4.1-1.6-.8-1.6-.8s-2 1.6-3.8 1.3c-2-.3-2.9-1.5-2.9-1.5s-2 1.6-3.4 1.3a5 5 0 01-2.3-1.1s-1.3 1.4-3 1.1c-1.6-.2-3-1.1-3-1.1s-2.7 1-4.4 1.3c-1.6.3-3-1.5-3-1.5s-3.8 1.2-4.6 1.2c-.9 0-3.6-1.2-3.6-1.2s-1.9 1.1-3 1.1-4.2-1.3-4.2-1.3-3 .8-4.3.8c-1.4 0-3.5-.8-3.5-.8s-2.5 1-3.9.8l-2.4-.8s-2.7 1-4.4.8c-1.6-.4-3.6-1.4-3.6-1.4s-.3.7-3.5 1.4h-.1"/>
+    <path fill="#5ac800" d="M293.1 305.2s-.3.7-2.8 1.2l-.7.2.6-.2-.7.3a44 44 0 0011.7 11c4.5 3 9.6 6.6 18.4 9.2a71 71 0 0017.8-9c6-4.5 9.2-7.2 12.6-11.7-2.7 1.5-2.3 1.5-3.7 1.3-1.3-.3-2.3-1.3-2.3-1.3s-1.3 1.5-3 1.3c-1.6-.3-3-1.3-3-1.3s-2.2 1.5-4.4 1.4c-1.6-.1-3-1.6-3-1.6s-3.8 1.3-4.6 1.3c-.9 0-3.6-1.3-3.6-1.3s-1.9 1.2-3 1.2-4.2-1.4-4.2-1.4-3 .8-4.3.8-3.4-.8-3.4-.8-2.5 1-4 .8c-1.3-.3-2.4-.8-2.4-.8s-2.7 1-4.4.8c-1.6-.3-3.6-1.4-3.6-1.4z"/>
+    <path fill="#ffd800" d="M319.6 326.9a89 89 0 0017.1-8.6c-1 0-4-1-2.9-1.2 0 0-1.2 1-2.3 1-1.1 0-4.2-1.3-4.2-1.3s-3 .7-4.3.7c-1.4 0-3.4-.7-3.4-.7s-2.6 1-4 .7l-2.4-.7s-2.8 1-4.4.7c-1.6-.3-3.6-1.3-3.6-1.3s-2.4 1.3-4 1.4a55 55 0 0018.4 9.3z"/>
+  </g>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#b34b00" d="M313.2 249c1.9-1.6 3-3 2.3-4.2-.7-1-1.8.6-3 .2 0 0-2-1.1-2.5-2-1-1.2-2.5-2.3-3.3-3.4-.9-1-4.2-5.3-9.1-10.3-1.5-.9-1.1-4.4-2.2-5.5 0-.8-10-10.6-13.4-14-1.5-1.1-2.2-1.8-4.7.5-2 1.7-2.7 3.6-.1 5.8l12.8 11.7c1.9 1.8 4.5 2.1 5.6 3l13 13.4c1.7 1.4 2.5 2.4 1.5 3.6-1 2 .1 2.3.3 2.3.2.1 1.1.1 1.7-.4l1-.7z"/>
+    <path fill="none" d="M280.7 214l13.4 13.2"/>
+    <path fill="#fff" stroke-width=".6" d="M298.8 220l1.1-2.5c.2-.4 3.8-6.2 5.6-6.3l11.3 8.2c0 .5-5 7.8-5.3 7.2 0 0-13.2-5.5-12.7-6.6z"/>
+    <path fill="#ccb8c8" stroke="none" d="M306 222c-1.6-1.2-4.1-2.4-6.2-3.8l-.9 2c.7.8 10 5.1 11.6 6 0 0-1.8-2-4.6-4.2z"/>
+    <path fill="none" stroke-width=".4" d="M299.8 218a73 73 0 005 3.1c2.7 2 4.4 4 6.4 5.2"/>
+    <path fill="#782121" d="M277.1 253l25.5-31.7c.5-.4 2.9-.4 3.2 2l-24.2 33s-2.7-.3-4.5-3.4z"/>
+    <path fill="#730000" d="M362.7 253.3c-1 .7-2.4.8-2.4.8-1.7-1.9-3-4-5.4-6.5l-25.5-31.3 2.7-2.6 23 26.9c.6.7 4.6 4.9 8.4 9.8 0 0 .3 2-.8 2.9z"/>
+    <path fill="#fff" d="M338.1 220.3l-4-5s-3.2.5-3.8 2.1c0 0-2.2 3.7-8.2 4.1 0 0 1.7 7 8.6 10.7 0 0 2.5-7.2 5-8.4 0 0 2.5-1.9 2.4-3.6z"/>
+    <path fill="#730000" d="M327.9 242c-.6-.3-1.2 0-2 .4-.9.5-1.8.3-1.7-.7 0-.8 0-.7 1-1.4a6.3 6.3 0 015-.5l-2.3 2.1m27.8-27.7c-.2-.7-.4-1.4.3-2.2.7-.8.7-2.2-1-1.5-1.7.7-2.2 2.5-.9 5.4l1.6-1.7z"/>
+    <path fill="#fff" d="M327.3 242.5l28.9-28.7 7.1 7.6s-1.5-.6-2-.2c-.5.4.5 1.9.5 1.9s-1.3-.5-1.9-.1c-.7.4 0 2 0 2s-1.2-.8-1.8-.5c-.5.4 0 2.3 0 2.3s-1.5-.5-2-.1c-.3.4 0 2 0 2s-1.5-.7-2.3 0 .4 1.9.4 1.9-2-.8-2.7.4c-.8 1.2.1 2.2.1 2.2s-1.6-.7-2-.4c-.4.4 0 2.3 0 2.3s-1.3-.8-2.2.2c-.9 1 .1 2 .1 2s-1.3-.8-2-.4c-.6.4.2 2.2.2 2.2s-1.2-.9-2.1 0c-.9 1 0 2 0 2s-1-1-2.2 0c-1 1 0 2.1 0 2.1s-1.5-.8-2.1 0c-.7.8.2 1.9.2 1.9s-1.2-.7-2-.3c-.7.4 0 2.1 0 2.1s-1.1-1.3-1.6-.6c-.6.7 0 2.4 0 2.4s-1-1.3-1.6-.6c-.7.6.4 2 .4 2s-2-.8-1.5-.8z"/>
+    <path fill="#7e4b7e" stroke="none" d="M354.5 216.2l-2.2 2.2.5 7.7s.5-2.2 1.1-.7c0 0 .2-1.8.7-1.5-.4-.2 0-7.8 0-7.8m-4.3 4.3l-1.6 1.5.6 7.7s.4-2.9 1.1-.6v-8.6m-17.6 17.2l-1.5 1.7.4 4.7s.5-3 1.1-.7l-.2-2.6.2-3"/>
+    <g fill="none" stroke="#7e4b7e" stroke-width=".9">
+      <path d="M330.9 218.3c1 1 4 5 4 5m-2.6-2.9c-.2.6-.6 2.3-1.5 3.2m2-2.8c-.2.4-.2 1.7-1.5 3m2-2.4c-.3.7-.4 1.2-.8 1.7m1-1c0 .4-.3.5-.4.8m-3.2-2.7a29 29 0 01-4.8 2.8m4-1.8a14 14 0 01-3.1 2.2m2.8-1c-.5.4-1.5 1.4-2.3 1.7m1.8-.5c-.4.5-1 .8-1.5 1.1"/>
+      <path stroke-linecap="square" d="M311.3 224.7c.3-.6.9-1.8 1.6-2.8 1-1.4 1.3-1.6 1.8-2"/>
+    </g>
+  </g>
+  <path fill="#289400" stroke="#060" stroke-width=".5" d="M217 303.4c1.5.7 0-4.8.5-6.8.6-2.2 4.8 5.2 6.8 6.2 2.2 1 15.3-5.2 15.3-5.2l3.1-5.8 1.7 4.8s3.6-4.2 4.6-5.8c1.1-1.6 0 3.1-1 4.7-1.1 1.5 3.1 2.1 2.6 5.3-.5 3 4.2-2.2 4.2-2.2l12.1 1s2-7.3 5.3-11.5l1 4.8 5-5.1a65.9 65.9 0 0041.3 39.2 66.6 66.6 0 0040.2-36.6l6.7 7s5.3-1.6 6.3-2.2a70.3 70.3 0 0115.5 5.6c1 .7.3-3.5.3-3.5s5.8 1.1 5.3 4.2c0 0 1.2-2.9 2.3-3.4 1.1-.5 3.6 2.7 4.2 3.7.5 1 13 2.6 14.7 3.6 0 0 1.3 1.6 1.3 2.7 0 0 2.7-.3 4.7-.3 0 0-1.5.8-1.5 2.4 0 1.6-.8 2.9-2.4 3.6-1.5.8 0 1.4 2 1.6 2.2.3 0 3-4.1 4.5 0 0-1 2.3.8 3.1 0 0-3.7.3-4.2-.8 0 0-1.3 2.5-1.3 3.8 0 0-4-1.3-5-1.9 0 0-1.6 1.6-.5 2.3 0 0-7.1-.7-8.5-3.4 0 0-2.5.8-2 1.7 0 0-5-3.4-6.6-3.4l-1 1.7s-3.5-2-4.5-2-.2 1.5-.2 1.5l-4.8-2.9-1.9 3-5-2.7c-1-.8-1.2 1.6-2 1.9 0 0-1.6-2.2-3.7-1.9 0 0-.8 2.6-.5 3.4l-7.1-1.5c-1.1-.3-.5 1.2 0 2.3 0 0-4.5-1.3-5.5-2l-.3 2s-3.7-.3-4.5-1l-2.3 3.1h-3.5l-.7 2.9s-6.6-1.9-7.2-.8c-.5 1 .3 2.6.3 2.6l-5.7-.7-.5 2.3s-6.7-2-8.2-1c0 0-2 2-3.4 2.6-1.3.5 0-.8 0-.8l-2-2.9s-2.4 1.3-3.8.8c-1.3-.6-5.5 2-6.8 1.3 0 0 0-1.9-1.1-2.4-1-.4-2.8-.4-3.6.8l-2.2-3c-1.2-2.2-3.1.1-3.1.1l-.3-2.5-3.6-.3c-2.2-.3-2.6-2.2-2.6-2.2s-5.6.6-6.4.3l1.4-1.3s-7.6 1.6-9.2 1c-1.7-.5 1.8-2.6 1.8-2.6l-8.4-2c-1.3-.4-9 1.2-10 1.2s-1.6-1.8-1.6-1.8-1.8 1.6-3.4 2.1c0 0-1.3-3.1-.5-3.4 0 0-5 1.3-5.3 2.6 0 0-1.2-2-1-3 0 0-2.4 3.8-3.5 4.6-1 .8-.2-1.9-.2-1.9s-2.9 3.7-4 4v-2.6s-8.4 4.5-10.7 3.9c0 0 0-1.9.8-2.4l-5.3-.2c-1.3-.2-2.8-.8-4.2-1.1-1.3-.2 1.9-1.6 4-1 0 0-5.8-2.1-7.6-1 0 0-.8-2.2 2.3-3 0 0-4-3.9-6.3-3.6 0 0 2.6-1.6 4.8-.8 0 0-2.5-6.6-4-7.4 0 0 5.5-1 7.1-.2z"/>
+  <path fill="#730000" stroke="#000" stroke-width=".5" d="M208.9 188.8L280 152c.3-2-.7-3.4-1.9-5-20.3 10-38.8 22.2-61.4 29.5-1.3.5-12.5 5.2-18.3 12.1a7.7 7.7 0 00-2 4.5s.2 3.1.9 4c0 0 .1.8 1.2 1.5 0 0 .7.3 1.1.2.5 0 1.4 0 2.6-2a52.4 52.4 0 016.7-8z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".5" d="M266.1 152.4l9.2-4.4s3.1 2.3 2.8 5c0 0 .7 6 8.2 10.2 0 0-6.3 8-17.4 8.6 0 0 1.2-10.4-1.1-13.5 0 0-.4.4-.2-.1.3-1-.2-4.5-1.7-5.3l.2-.5z"/>
+  <path fill="none" stroke="#7e4b7e" stroke-width=".8" d="M276.9 153.6c-2 .8-8.3 4.1-8.3 4.1m5.2-2.1c0 1-.6 3.3 0 5m-.8-4.7c0 .5-.8 2.2 0 4.6m-1-4.1c-.2 1-.4 1.5 0 2.6m-.8-2c-.2.5 0 .8 0 1.2m5.8-1.5c.3.7 2.9 4.8 4.5 6.5m-4.1-4.7c.3.8 1.7 3.6 2.8 4.7m-3-3c.4 1 1.1 2.7 2 3.7m-2-1.8a8 8 0 001.1 2.5"/>
+  <g stroke="#000" stroke-width=".5">
+    <path fill="#b34b00" d="M342.3 148.3l26.1 12.8c5.2 2.5 7.1.2 10 1.5l51.6 26.2c4.5 2 7 2.5 6.3 4.8-.1 3.7 1.7 3.7 2.2 3.8.4 0 2.1-.2 2.8-1.2l.6-.6c.6-.6.5-.7.7-1 2.1-3 3.3-5.8 1-7.5-2.5-1.3-2.8 1.5-5.6 1.2 0 0-4.8-1.8-6.6-3.1-3.2-1.8-7.8-3.9-8.8-5-3.3-.6-28-14.6-42.1-21.6-1.5-1.2-2.3-5.9-5.3-7.4-.8-1.3-19.8-10-29.8-15-3.6-1.3-5.7-2.2-8.3 2.3-2.3 4.4-1.8 6.8 5.2 9.8z"/>
+    <path fill="none" d="M344.5 142.8l29.2 14.6"/>
+  </g>
+  <g fill="#ffa54b" stroke="#000" stroke-width=".5" transform="translate(-40) scale(.96)">
+    <path fill="url(#c)" d="M309.7 165.1c-.2.6-.7.2-.7.4-.4 2.2-.3 3.3-.8 4.5a7.1 7.1 0 01-3.1 2.6c-2 .7-4.5 3.1-8.5.9l-.6-.5s1.1 4.1-3 6.2l-15.7 8.2s-1.5 2.8-.5 6.5c0 .6.3 1.1-.3 1.5-1 .7-2.7 2.8-3.7 6 0 0-3-1.3-3-3.2 0-2 1.2-3 1.5-4.4.3-1.3 1-4.7.7-5.7-.4-1.1-2.3-1.5-3-2-.6-.3-1.4.5-1.3 1.4.1 1 .8.8 1.6 1 0 0-.9 2-.8 3.4l-9.2 4.8 1.6 2.3c.4.7 1.3 10.2 4 14.7s3.7 3.2 4.3 3.8l2 2c.8.5 4 .8 4.5-1a9 9 0 013.2-4.1c2-1.6 6-5.4 6-7.2 0 0 2.3 6.8 2 12.4 0 0 8.5 1.7 16.1 1.9 7.6 0 11.5-1.5 11.5-1.5s1-6.4.6-7.7c0 0 1.2 4.2 2.2 5.6 1 1.8 2.1 5.3 4.3 5.5 2.2.1 4-2.1 4.2-3v-6.8h8.7s3.8 1.5 5 1.3c1.3-.1 2-1.3.8-1.7l-.4-.3c1.2 0 2.6.7 2.6.7h4.3l-.1-.5c-.3-1.2-2.6-2.2-4.2-3-1.6-.5-3.5-1.2-4.7-1.3a20 20 0 00-6.2.4c-.8 0-3.9.4-5.8 1.3-.5.3-1 .4-.8-1 .3-1.3.2-7.8-1.3-10.5-1.2-2-1-3.6-.9-5.2a87 87 0 000-8.8c-.3-1.7-2.5-4-6.6-4.4-3.8-.5-7-3.7-7.3-6.2-.3-2.6.4-7.2.8-9.3"/>
+    <g fill="none">
+      <path fill="url(#d)" d="M292.4 153.6c-.7 3.3-.7 6.1-.6 9.3.1 2.1 1.1 4.6 2 6.7a10 10 0 002.8 3.9c3.6 2.3 7-.2 8.9-1a6.4 6.4 0 002.7-2.5c.5-1.2.3-2.1.8-4.5l.7-.4c1-1.5.7-2 1.2-3 .6-1-.5-2.2-1.8-2 .6-1.9 1-4 .4-5.9-.2-.6.5-2.2-.6-1.8-4.6 1.8-10 1.4-14.8 1.4-.4 0-.8-.8-1.4-.7l-.3.5"/>
+      <path fill="#000" d="M292 155.3c-.5-.4-.6-1.3 0-3.2.7-2 0-2 1.1-3.2s.9-1.6 1.6-1.9c.7-.2 2.8-.2 3.5-.5a11 11 0 019-.3c1.5.8 2.5 2.8 3.4 3.6 1 .7 1.7 3.6 1.5 7.9-.3 4.3-1.2 3.5-1.2 3.5s-1.2-2-2.2-.3c0 0 0-1.7.2-3 .1-1.1-.6-3.4.1-4.9 0 0-5.8 1.8-8.7 1.7-3-.2-7.4-.9-7.6-1.6l-.7 2.2"/>
+      <path fill="#fff" stroke="#fff" d="M295 151.8c-.3-.6-1.8-2.9-.6-3.6 1-.6.4 2.8 2 3.5 0 0-.6 1.5-1.4.1z"/>
+      <path d="M298.3 160.1l-.9 3.2m10.6 1.6c.2.6.4.3 1 .4m.3-4c.5-.5 1.2-.2.8 1.3m-17.7-4.9l2.8 1c1.5.6.6 2.9.2 4.3-.2.7-1 2-.6 2.5.5.8 1.1.3 2 .4 0-.3.6-.5.8-.5.7 0 1.1.5 1.7.3.6-.3.5-1.2.3-1.7m-.1-4.5c0-.4 1-.8 1.5-.9 2.1-.4 3.6-.7 5.4.5m-5.7 11.1c-1.8.4-3.6.7-5.2-.2m0-.8c.8-.4 1.1-.8 2.1-.3a5 5 0 011.1-.4c.8 0 1.4.3 2.2.8m-5.5.3c1-.3 3.3-.3 5.4.1"/>
+      <path fill="#fff" stroke-width=".3" d="M292.3 160.1c.7 0 1.6-.9 3.2.3 1.1.8-1.8 1.5-1.3 1.4-1.4.2-1.8-.5-1.9-1.2 0-.1-.2-.5 0-.5zm8.4.8c.7-1.4 1.8-1 2.8-.8 1 .3.7.1 1.7.7-1.2.1-.9.2-1.7.6-.9.5-1.7.7-2.3.3-.2-.2-.7-.5-.7-1 0 .2 0 .3.2.3z"/>
+      <path fill="#000" stroke-width=".3" d="M293.8 161.4c.4 0 .7-.4.7-.8 0-.6-.3-1-.7-1-.5 0-.9.4-.9 1 0 .4.4.8.9.8zm8.6.2c.4 0 .7-.4.7-1a.8.8 0 00-.8-.8c-.4 0-.7.3-.7.8 0 .6.4 1 .8 1z"/>
+    </g>
+    <g id="g">
+      <g fill="none">
+        <path d="M345.9 213.7a3.9 3.9 0 00-1.9-1.4l-2-1c-.7-.4-1.7-.5-2.4-.9m.5 2.6l-.9-.5c-.3 0-.7 0-1-.2 0 0 0-.2-.2-.2a3.5 3.5 0 01-2.4-1.3m-62.8-9.3c1 .7 3.2 2.2 3.4 5.1a10.5 10.5 0 001 3M264 202c.5 1.7.6 7.4 6 13.4m-5-21.4c-.4 1.1-1 2.2.2 3m14.4 10.7c1.1-2.6 4.6-2.4 4.6-4.8"/>
+        <path d="M284.8 207.3c-.3-2.9-1-4.5-.4-8.7.2-1.2.4-5.9 0-8.1 0 0 1.6 7.8-3.7 9.3m34.4 12.5c0-4 1-6.2 1-6.2 1.2-5.6-1.2-7.7-.3-9.1.9-1.2 2-3.8.5-8.9 0 0 2.8 10.5-4.5 10.5-7.5 0-7.2-2.7-7.2-2.7"/>
+        <path d="M284.4 190.5c0 2 0 8.4 9 8.4 2.8 0 5.8-2 7.4-3.3m2.2-2.7c-.3-2-.3-4.4-.3-7m-13.6-3.4c2.4-.3 4.4-.6 9-.6m.2-6.3c.5 2.2-.3 5.8 4 6.3m4.3-7.1c-.6 1.6-.6 3.3-.8 4.4m.2 2.7c1.7 0 5-1.1 9-.3m1.4 22.8c.9 1.6 1 3.8 3.6 6.2m-31.7-11.4c.2 1.3-1.8 5.7-.3 9.3a12.3 12.3 0 01-1.2 11m6.7-19c-.9 1.7-2.3 3.3-2.6 4.7m6.6-1.6c0 1-2.7 8.7-4.7 10.9 0 0 3.6 1.4 3 6.6m7.4-21c0 1.2-.2 1.6 1 2.4m2.4 0c1.3 1.6 5.5 6.5 4.6 9.2m-7.4-6.5c.3 1 .3 6.3-.6 9m-2.1-.2c-1.1 0-2.8.8-3 2.7m8.7-3c1.1-.3 3.3 1.6 3.3 7m15.7-10.2c-2.1.6-3 1.7-2.4 1.1-1.1 1-2.2 1.6-2.2 1.6"/>
+      </g>
+      <path fill="#000" stroke-width=".3" d="M289.8 198c.6 0 1.1-.4 1.1-1 0-.3-.5-.7-1.1-.7-.5 0-1 .4-1 .8 0 .5.5.9 1 .9zm23 .3c.6 0 1.1-.4 1.1-1 0-.4-.5-.7-1-.7-.6 0-1.1.3-1.1.8s.5.9 1 .9z"/>
+      <path fill="#fff" d="M280.5 239.8c1.3-8 5-14.5 5.1-15.2 0 0 3.9.9 10.6 1.5 6.6.7 8.4.4 11.5.2l6.8-.8s1.2 2.4 1.3 4.8c.3 5.2 2.3 27.7 2.5 33.7 0 0 .8 3.6.8 12.3 0 9.6 2.6 29 2.6 39.4l-2.6.5s-14.5 1.1-14.5-.8c0-2.1-.8-27 1.4-42.1 0 0-.5-3-1.4-5.5-.8-2.5-4.3-10-4.3-11.7 0 0-5.7 16-6 18.8-.3 2.6-1.2 38.4-1.7 41.3 0 0-8.2 6.3-9.3 7-1.1.4-9-3.4-9.3-4.4a211 211 0 014.6-33.2c1.4-7.1.6-8.4.6-10.4s.1-27.5 1.3-35.4z"/>
+      <path fill="none" d="M294.3 275c-.6 2.2-1.7 4.3-3.6 5.7m-2.7-53.6c-.3 1.3-2.3 7.3-7.2 10.9m14.3-9.8c-1.1 3.6-5.5 22.7-6.3 45.4m-.3 7.1l-1.7 20.8m-.8 3a71.3 71.3 0 00-2.7 18.7m32.2-36c-.2 2-1 15.7 3.6 28m-18.5-86c-.3 2.3-.8 16.7-.8 17.8 0 1.2 1.6 2.8 2.4 3 0 0-1.6.6-2 6m-4-12.8c-.3 1.7-2 8.5-3 11.3m13-25.5s5 1 5.3 0c0 0 1.6 29.5 3.8 46m-11.2-42.2l-.6 16.5m2.5 2.1s1.9 2.8 1.4 4m-17.8-28l3 .8m5.2 1.6c-.3.9-.6 4.6-.6 4.6m8.8 38.9c.6.8 1.4 2 .8 4.4"/>
+      <path fill="#9b5f00" d="M285 224.4s0-3.2 1.1-4.8c0 0 3.5.7 8.4 1.2 5 .5 9 .9 12.6.5 3.7-.4 7.4-1.3 7.4-1.3s1 4.8.5 5.5c0 0-4 .8-8.3 1a86 86 0 01-14.5-.8 57 57 0 01-7.3-1.3z"/>
+      <path fill="#fff" d="M288 224.8l.7-4.8h1l-.2 5.1-1.4-.2m22-4.1l.1 5.5 1.3-.2-.1-5.6-1.3.3m-15.6 0l-.4 5.3h.7l.7-5.3h-1"/>
+      <path d="M276.8 320.8c-.3 1.3-.8 3.2-1 5.5 0 .5-.6 3.3 1 3.4 1 0 1.4-2.9 1.4-2.9s-1 3.3.3 3.7c1.8.4 2-3.6 2-3.6-.2 1.1-1.4 4 .3 4.3 1.9.3 2.4-3.9 2.4-3.9s-1.6 4.2.3 4.3c1.7 0 1.7-4 1.7-4s-.9 5 1.5 4.5c1.4-.2 1.7-2 2-3 .4-1.5 1.3-3.4.2-6.6-.8-2.3-.5-3-.5-3s-2.9 2.2-5.1 3.6c-1 .6-6.5-2.3-6.5-2.3zm29.7-4.4c-.5-.3-.4 1.9-.6 2.9-.1 1 .2 3.2 3.6 3 3.4-.3 6.7-1 8.9-.5 2.1.6 5.3.7 7 .7 1.7 0 2.8-.2 3.7-.5.7-.3 2.2.4 3 .4s1.7-1 1.6-1.8c0-1.3-1.3-1.3-3-1.4a22 22 0 01-5-1c-1.1-.3-3.1-1.5-5.7-2l-5.9.2c-1 0-7 .3-7.6 0z"/>
+    </g>
+    <g fill="none">
+      <path fill="#ffb366" d="M255.7 189.8c-.5.3-1.1-2 .4-2.9 0 0 .4-2 2-2.1 0 0 1.4-1.9 3.3-1.7 0 0 2.2-1.5 3-1.3.9.1 3 2.1 3 2.9.2.7 0 1.9-.5 2.4-.6.6-1-.1-1.1-1 0 0 .4 1.6-.8 2.2-1.2.7-1.1.2-1.2-.6 0 0-.4 1.6-1.2 1.9-.8.3-1.3-.5-2-.5 0 0 1.1.9.4 1.5-.7.5-1.5.3-2-.1-.5-.5-1.2-1.9-3.3-.6z"/>
+      <path d="M265.7 186c-.5-1.5-2.2-3-4-2.8m2.2 4.4c-.3-.4-.4-.8-.8-1.2-.9-1.5-2.8-1.4-4.4-1.8m2.4 4.5c-.6-.4-.8-1.2-1.4-1.5-1-.4-2-.9-3.3-.7"/>
+    </g>
+  </g>
+  <g stroke="#000" stroke-width=".5" transform="translate(-40) scale(.96)">
+    <path fill="url(#e)" d="M439.1 165.1c.7-.3.5.6.6 1 .4 1.3.4 2.7.9 3.9.6 1.1.8 1.5 1.8 2 1.6 1 6.4 3.6 9.8 1.5a3.1 3.1 0 00.7-.5s-1.3 4.1 3 6.2l15.6 8.2s1.5 2.7.6 6.5c-.2.6-.4 1.1.2 1.5 1 .7 2.6 2.8 3.8 6 0 0 3-1.3 3-3.2 0-2-1.3-3-1.6-4.4-.2-1.3-1-4.7-.6-5.7.4-1.1 2.1-1.5 2.8-2 .7-.3 1.6.5 1.3 1.4 0 1-.8.8-1.6 1 0 0 1 2 .8 3.4l9.4 4.8-1.6 2.3c-.5.7-1.5 10.2-4.2 14.6-2.8 4.5-3.7 3.3-4.2 4l-2.1 1.8c-.6.5-3.8.9-4.5-.9a9 9 0 00-3.1-4.1c-2-1.6-6-5.4-6-7.2 0 0-2.3 6.8-2 12.4 0 0-8.4 1.7-16.2 1.9-7.6 0-11.5-1.5-11.5-1.5s-1-6.4-.6-7.7c0 0-1.2 4.2-2 5.6-1.1 1.8-2.2 5.3-4.4 5.5-2.2.1-4-2.1-4.2-3v-6.8h-8.7s-3.8 1.5-5 1.3c-1.3-.1-1.9-1.3-.9-1.7l.4-.3a7 7 0 00-2.5.7H402l.1-.5c.3-1.2 2.6-2.2 4.3-3 1.6-.5 3.3-1.2 4.6-1.3 1.9-.2 3.2-.1 6.2.4.8 0 4 .4 5.8 1.3.5.3 1 .4.8-1-.3-1.3-1.2-5.5.3-8.3 1-1.9.9-3.5.8-5.2-.2-1.7-1.1-5.6-1.1-7.3 0-5.7 4.4-8 8.2-9.2 4.3-1.4 7.1-2.8 7-5.3-.2-2.7.5-7 .1-9"/>
+    <g fill="none">
+      <path fill="url(#f)" d="M456.3 153.6a20 20 0 011.2 5.3c0 1.2-.5 1.4-.1 2.8.7 2.4-.8 5-2.5 8-.8 1.2-1.4 3-2.7 3.8-3.4 2.1-7.5-.4-9.6-1.3a3.7 3.7 0 01-2-2.2c-.4-1.2-.5-2.3-.8-4 0-.3 0-1.2-.6-.9-1.3-1.4-1-2-1.6-3-.5-1 1-2.2 2-2a10 10 0 01-.2-5.9c.2-.6-.6-2.2.5-1.8 4.5 1.8 10 1.4 14.8 1.4.4 0 .7-.8 1.3-.7l.3.5"/>
+      <path fill="#000" d="M456.8 155.3c.4-.4.1-2.3-.4-4.3-.1-1-1-1.5-2-2.6s-1.6-1-2.3-1.4c-.6-.2-2-.2-2.8-.5-.6-.3-2.2-.1-3.7.1-2 .3-3.2.2-4.7 1s-2.8 1.8-3.3 3.3c-.4 1-1 2.5-.8 6.8.2 4.3 1 3.5 1 3.5s1.1-1.7 1.9-.6l-.3-3.6c-.1-1.2 0-2.8.5-4.6 0 0 4.6 1.7 9 1.7 3 0 7-.3 7.1-1l.7 2.2z"/>
+      <path d="M450.4 160.1c.7 1.8.1 1.3.4 2.4m-10.2 2c0 .8-.6.6-1 .6"/>
+      <path d="M456.9 158.8c-1-.7-2.7-.2-3.5.1-1.5.7-.7 2.3-.2 3.7.2.7 1 1.7.5 2.4-.4.8-.7.4-1.6.5 0-.3-.8 0-1.1 0-.6 0-1 .4-1.5.2-.6-.3-.5-1.2-.3-1.7m.1-4.5c0-.4-1.3-.8-2.7-.9-2.3 0-2.5.1-4.2 1.3m11.5 9c-.4-.6-1-1-2.1-.4 0-.2-1.6-.4-1.6-.4-.8 0-1.3.3-2.1.7m5.6.6c-1-.6-3.3-.2-5.6-.2m.2.8c1.7.5 3.5.8 5.2 0"/>
+      <path fill="#fff" stroke-width=".3" d="M456.4 160.1c-.7 0-1-.9-3.1.3-1.1.7 1.8 1.5 1.4 1.4 1.2.2 1.6-.5 1.7-1.2 0-.1.2-.5 0-.5zm-8.3.8c0-.8-1.8-1-2.9-.8-1 .3-.5.1-1.5.7 1 .1.7.2 1.6.6.9.5 1 .9 2.3.3.3-.1.7-.5.8-1 0 .2-.2.3-.3.3z"/>
+      <path fill="#000" stroke-width=".3" d="M455.1 161.4a.8.8 0 01-.8-.8c0-.6.3-1 .8-1 .4 0 .7.4.7 1 0 .4-.3.8-.7.8zm-8.7.2c-.4 0-.7-.4-.7-1 0-.5.4-.8.8-.8s.7.3.7.8c0 .6-.3 1-.8 1z"/>
+    </g>
+    <use width="100%" height="100%" fill="#730000" transform="matrix(-1 0 0 1 748.8 0)" xlink:href="#g"/>
+    <g fill="none">
+      <path fill="#730000" d="M491.6 193.5c.5.2 2-2 .5-3 0 0-.5-2-2-2 0 0-1.4-2-3.4-1.7 0 0-2-1.5-2.9-1.4-1 .2-3 2.2-3 3-.2.5 0 1.8.5 2.4.6.5 1-.1 1-1 0 0-.3 1.5.9 2.2 1.2.7 1.1 0 1.2-.7 0 0 .3 1.6 1.1 2 .9.2 1.4-.5 2-.5 0 0-1 .8-.3 1.3.7.6 1.5.3 2 0 .6-.5.3-1.8 2.4-.6z"/>
+      <path d="M482.5 189.8c.5-1.8 2.2-3.2 4-2.9m-2 4.4c.1-.4.2-.8.5-1.2 1-1.6 3-1.6 4.6-1.9m-2.5 4.5c.6-.4.8-1.1 1.4-1.4a5.3 5.3 0 013.2-.7"/>
+      <path fill="#730000" stroke="none" d="M482.3 186.8c-.9.7-1.8 1.8-1.9 2.2 0 .7 0 1.9.5 2.5.6.5 1 0 1.1-.8 0 .5 0 1.5.8 2 1.3.7 1.2.1 1.3-.7 0 0 .3 1.6 1 2 .9.2 1.4-.5 2-.5 0 0-1 .8-.3 1.3.7.6 1.5.3 2 0 .6-.5.3-1.8 2.5-.6.2.2.8-.4 1-1.1l-7.7-5.5-2.3-.8z"/>
+      <path d="M480.7 188.2c-1.5 2.6.5 4.1 1.1 2.6-.1 2.4 1.7 2.3 2.3 1.5.7 2.5 1.9 1.4 3 1.2-1.3 2.3 1.4 1.6 2 1 1-1.3 1.4-.2 2-.3l1.3-1.3m-8-5.7c-1.7 1-2.5 2.2-2.6 3.7m5-2.2c-1.8 1-2.6 2.2-2.6 3.7m5.4-1.7c-1.7.9-1.8 1.7-2.5 2.8"/>
+    </g>
+  </g>
+  <path fill="#5ac800" d="M238.5 310.7l-.2-4.5 1.9 1.6.4-3.4c.8-.2 2.1 1.3 2.1 1.3l-.2-3.4 2.8 3.1s-.2-2.6.8-4.2c0 0 2.2 1.9 2.2 4 0 1.9 1.8-2.6 1.8-2.6a3116.2 3116.2 0 001.6 5l1.3-1.9 1 4 2.4-3.5 1.8 4 4.2-.3.5 2.4 1.9-2 2.4 1.5s2-.6 3.1-.6 2.4 1.4 2.4 1.4.8-1.4 1.5-1.9 1.9.8 2.2 1.6l1.6-2.9s2 2 2.3 2.9c0 0 .3-2.4.8-3.2.5-.7 1.2.3 1.8 1.3l1.3-4.2s1.4.3 2.3 1.9c1.1 1.5 1.1-2.4 1.1-2.4s2.4 3.2 3 5.3c0 0-16.2 5.6-27.6 4a306 306 0 01-24.5-4.3m110.9-.5s.7-2.1 1.8-3.2c0 0 2 2.4 2 3.2l1.7-1 1.6 1.5 1.8-1.3 1.8 1.6 3.2-1.4 1.3 1.4 5-.6 1.8.8 1.8-2.3 1.6 1.8 2.7-2.6s1.3 1 1.5 1.8c0 0 2.2-1 2.7-1.8 0 0 2-.8 2.3.5 0 0 1.3-1 1.2-2-.1-1.2 1.5-.4 2 1 0 0 .5-2.2 2-2.4 0 0 1.2 1.3.9 3.7 0 0 2.3-1.9 3.4-2.1 0 0 .5 2.6-.3 5 0 0 2.4-4 3-2.7.1.8.7 3.5.1 5.3l2.2-1.3.8 2.6 2.3-.5s-13.9 2.1-27 .9c-13-1.3-25.3-5.9-25.3-5.9m-9.6 9.7c.6-.4-4.4 10.3-16.5 10.9-16.9.8-31.3-7.7-31.3-7.7s1.8-2.9 2.9-3.7c0 0 2.3 1.9 3 4.2 0 0 .4-1.5 1.2-2.9 0 0 2.9 1.4 3.4 3.2 0 0 1-1.8 1.8-2.3.8-.6 1.6 2 1.6 3.6 0 0 1.9-2 3-2 0 0 2 1 2.6 4.3 0 0 2-1.8 2.6-1.5 0 0 2.3 1.5 1.8 3.7-.3 1.2 2.3-1.4 5.5-2.2l2.9 2.2 3.4-4.7s2.1.8 2.1 2c0 0 1-3.7 1.8-4 .8-.5 1.8 1.1 1.8 2.2 0 0 .3-2.8 1.9-3.4 0 0 1.6 1 1.6 2.1 0 0 1.6-3.2 2.9-4z"/>
+  <path fill="none" stroke="#060" stroke-width=".5" d="M238.5 310.7l-.2-4.5 1.9 1.6.4-3.4c.8-.2 2.1 1.3 2.1 1.3l-.2-3.4 2.8 3.1s-.2-2.6.8-4.2c0 0 2.2 1.9 2.2 4 0 1.9 1.8-2.6 1.8-2.6l1.6 5 1.3-1.9 1 4 2.4-3.5 1.8 4 4.2-.3.5 2.4 1.9-2 2.4 1.5s2-.6 3.1-.6 2.4 1.4 2.4 1.4.8-1.4 1.5-1.9c.8-.5 1.9.8 2.2 1.6l1.6-2.9s2 2.1 2.3 2.9c0 0 .3-2.4.8-3.2.5-.7 1.2.3 1.8 1.3l1.3-4.2s1.4.3 2.3 1.9c1.1 1.5 1.1-2.4 1.1-2.4s2.4 3.2 3 5.3m58.7-.8s.8-2.1 1.9-3.2c0 0 2 2.4 2 3.2l1.7-1 1.6 1.5 1.8-1.3 1.8 1.6 3.2-1.4 1.3 1.4 5-.6 1.8.8 1.8-2.2 1.6 1.7 2.7-2.6s1.2 1 1.5 1.8c0 0 2.2-1 2.7-1.8 0 0 2-.8 2.3.5 0 0 1.3-1 1.2-2-.1-1.2 1.5-.4 2 1 0 0 .5-2.2 2-2.4 0 0 1.2 1.3.9 3.7 0 0 2.3-1.9 3.4-2 0 0 .5 2.5-.3 4.9 0 0 2.4-4 3-2.7.1.8.7 3.5.1 5.3l2.2-1.3.8 2.6 2.3-.5m-109.8 8s1.8-3 2.9-3.7c0 0 2.3 1.8 3.1 4.2 0 0 .3-1.6 1-3 0 0 3 1.4 3.5 3.2 0 0 1-1.8 1.9-2.3.7-.6 1.5 2 1.5 3.6 0 0 1.9-2 3-2 0 0 2 1 2.6 4.4 0 0 2-1.9 2.6-1.6 0 0 2.4 1.6 1.8 3.7-.3 1.2 2.3-1.4 5.5-2.1l2.9 2.1 3.4-4.7s2.1.8 2.1 2c0 0 1-3.6 1.8-4 .8-.5 1.9 1.1 1.9 2.2 0 0 .3-2.8 1.8-3.4 0 0 1.6 1 1.6 2.1 0 0 1.6-3.2 3-4"/>
+  <g fill="#fff">
+    <path d="M319.5 361.9c22 .2 35-7.8 42-12.6 16.8-11.2 20.3-11.6 23-11.4 3.1.3 7.7 1.3 8 4 .2 4.3-6.6 6.1-10.5 6.1-4 0-14.5-2.6-14.5-2.6l-2.7 1.9c1.8.8 23.2 8 27.3 1.2 4.2-6.8 8.4-17.9 8.4-17.9s-4.7-8.4-15.1-8.4c-10.6 0-20.8 6.7-27.6 11.7-6.9 5-15.5 11.8-38.3 11.8-22.9 0-31.6-6.8-38.4-11.8-6.9-5-17.1-11.7-27.6-11.7a18 18 0 00-15.2 8.4s4.2 11 8.4 18c4.1 6.7 25.5-.5 27.3-1.4l-2.6-1.8S261 348 257 348s-10.9-1.8-10.6-6c.2-2.8 4.8-3.8 8-4.1 2.7-.2 6.2.2 22.9 11.4a72 72 0 0042.2 12.6"/>
+    <path d="M284.1 336s0-1.9-.3-4.6c-.4-3.5-2.4-4.4-4-3.9-1.2.4-3.3 3-3.3 3v.1a31 31 0 00-3-1.8 18 18 0 016.3-3.6c1 0 14.5 5.4 18.8 9.1 1 1 1.8 7 1.2 9a46.5 46.5 0 01-15.7-7.2m-6.5 13.6s-2.9 3-3 8.3c0 6.3 4.5 6.6 7.5 6.5 3.7 0 6.6-2.1 6.5-8.9 0 0-6-2.5-11-6m77.1-13.6l.4-4.6c.4-3.5 2.4-4.4 4-3.9 1 .4 3.2 3 3.2 3v.1l3-1.8c-.7-1-5.2-3.6-6.2-3.6s-14.5 5.4-18.8 9.1c-1 1-1.8 7-1.3 9a45.5 45.5 0 0015.7-7.2v-.1m6.5 13.7s2.9 3 3 8.3c.2 6.3-4.5 6.6-7.5 6.5-3.6 0-6.5-2.1-6.5-8.9 0 0 6-2.5 11-6"/>
+  </g>
+  <path fill="#69f" d="M271.3 345.4S260.9 348 257 348c-4 0-10.9-1.8-10.6-6 .2-2.8 4.8-3.8 8-4.1 2.3-.2 5.3 0 17 7.5m96.1 0S378 348 382 348c3.9 0 10.7-1.8 10.4-6-.2-2.8-4.8-3.8-7.9-4.1-2.3-.2-5.4 0-17 7.5m-83.4-9.3a93.7 93.7 0 01-3.1-2.3c-1.5-1.1-3-2-4.5-3.2 0 0 2.1-2.7 3.2-3 1.7-.6 3.7.3 4.1 3.8.3 2.7.3 4.7.3 4.7m-7.1 27.6c1.8 1 3.9 1 5.1.8 3.7 0 6.6-2.1 6.5-8.9 0 0 4.5 2.3 11.8 4 0 0 1.2 1.5 1.4 4.4.3 2.5-1.4 5.1-3.3 5 0 0-10.3-2-16.5-3-3.7-.7-5-2.3-5-2.3m77.7-27.6l3.2-2.3 4.4-3.2s-2.1-2.7-3.2-3c-1.6-.6-3.6.3-4 3.8l-.4 4.7m7.1 27.6c-1.8 1-3.9 1-5.1.8-3.6 0-6.5-2.1-6.5-8.9 0 0-4.5 2.3-11.7 4 0 0-1.3 1.5-1.5 4.4-.2 2.5 1.5 5.1 3.4 5 0 0 10.3-2 16.5-3 3.6-.7 5-2.3 5-2.3"/>
+  <g fill="none" stroke="#000" stroke-width=".7">
+    <path d="M319.5 361.9c22 .2 35-7.8 42-12.6 16.8-11.2 20.3-11.6 23-11.4 3.1.3 7.7 1.3 8 4 .2 4.3-6.6 6.1-10.5 6.1-4 0-14.5-2.6-14.5-2.6l-2.7 1.9c1.8.8 23.2 8 27.3 1.2 4.2-6.8 8.4-17.9 8.4-17.9s-4.7-8.4-15.1-8.4c-10.6 0-20.8 6.7-27.7 11.7-6.8 5-15.4 11.8-38.2 11.8s-31.6-6.8-38.4-11.8c-6.9-5-17.1-11.7-27.6-11.7s-15.2 8.4-15.2 8.4 4.2 11 8.4 18c4.1 6.7 25.5-.5 27.4-1.4l-2.7-1.8S261 348 257 348s-10.9-1.8-10.6-6c.2-2.8 4.8-3.8 8-4.1 2.7-.2 6.2.2 22.9 11.4a72 72 0 0042.2 12.6z"/>
+    <path d="M271.3 345.4S260.9 348 257 348c-4 0-10.9-1.8-10.6-6 .2-2.8 4.8-3.8 8-4.1 2.3-.2 5.3 0 17 7.5zm96.2 0S378 348 382 348c3.9 0 10.7-1.8 10.4-6-.2-2.8-4.8-3.8-7.9-4.1-2.3-.2-5.4 0-17 7.5zm-83.4-9.3a92.6 92.6 0 01-3.1-2.3c-1.5-1.1-3-2-4.5-3.2 0 0 2.1-2.7 3.2-3 1.7-.6 3.7.3 4.1 3.8.3 2.8.3 4.7.3 4.7z"/>
+    <path d="M284.1 336s0-1.9-.3-4.6c-.4-3.5-2.4-4.4-4-3.9-1.2.4-3.3 3-3.3 3v.1a31.9 31.9 0 00-3-1.8 18 18 0 016.3-3.6c1 0 14.5 5.4 18.8 9.1 1 1 1.8 7 1.2 9a46.6 46.6 0 01-15.7-7.2m-6.5 13.6s-2.9 3-3 8.3c0 6.3 4.5 6.6 7.5 6.5 3.7 0 6.6-2.1 6.5-8.9 0 0-6-2.5-11-6z"/>
+    <path d="M280.1 351.1s-2.3 2.5-2.7 6.5c-.2 3.1 1.8 4.9 4.5 4.7 3.7-.2 5.1-5.3 3.4-8.1l-5.2-3"/>
+    <path d="M277 363.7c1.8 1 3.9 1 5.2.8 3.6 0 6.5-2.1 6.4-8.9 0 0 4.5 2.3 11.8 4 0 0 1.2 1.5 1.4 4.5.3 2.4-1.4 5-3.3 4.8L282 366c-3.7-.7-5-2.3-5-2.3zm77.7-27.6l3.3-2.3c1.3-1.1 2.8-2 4.4-3.2 0 0-2.2-2.7-3.3-3-1.6-.6-3.6.3-4 3.8l-.4 4.7z"/>
+    <path d="M354.7 336l.4-4.6c.4-3.5 2.4-4.4 4-3.9 1 .4 3.2 3 3.2 3v.1a31.9 31.9 0 013-1.8c-.7-.9-5.2-3.6-6.2-3.6s-14.5 5.4-18.8 9.1c-1 1-1.8 7-1.3 9a45.7 45.7 0 0015.7-7.2m6.5 13.6s2.9 3 3 8.3c.2 6.3-4.5 6.6-7.5 6.5-3.6 0-6.5-2.1-6.5-8.9 0 0 6-2.5 11-6z"/>
+    <path d="M358.7 351.1s2.4 2.5 2.8 6.5c.3 3.1-1.9 4.9-4.5 4.7-3.7-.2-5.1-5.3-3.4-8.1l5.1-3"/>
+    <path d="M361.9 363.7c-2 1-4 1-5.2.8-3.6 0-6.5-2.1-6.5-8.9 0 0-4.5 2.3-11.7 4 0 0-1.3 1.5-1.5 4.5-.2 2.4 1.5 5 3.4 4.8l16.5-2.9c3.6-.7 5-2.3 5-2.3z"/>
+  </g>
+  <path fill="none" stroke="#fff" stroke-width=".7" d="M299.6 361.4s3.3 2.4-.7 5.3m-9-6.8l10 4.3m-8.3-2.1l7.2 3.1m-4.6-5l5.4 2.5m39.7-1.3s-3.3 2.4.6 5.3m9-6.8l-10 4.3m8.4-2.1l-7.2 3.1m4.6-5l-5.4 2.5"/>
+  <path stroke="#000" stroke-width=".7" d="M261 331.4c.2.2.2.4.3.7a2.5 2.5 0 010 .8 2.4 2.4 0 01-1.2 1.6 3 3 0 01-2.2.4 3.7 3.7 0 01-1-.4 4.3 4.3 0 01-1-.6l-.3.4-.4-.1.4-2.9.5.1c0 .4 0 .7.2 1l.3 1 .7.6c.2.2.5.3.9.4h.7a1.2 1.2 0 00.9-.6 1.8 1.8 0 00.2-.6 1.7 1.7 0 00-.1-1 1.8 1.8 0 00-.7-.7 48.3 48.3 0 00-.8-.5l-.8-.6c-.5-.3-.8-.6-1-1-.2-.4-.2-.8-.1-1.4 0-.3.2-.6.4-.8a2.5 2.5 0 011.5-1 2.9 2.9 0 011 0l1 .4.8.6.3-.4.5.1-.5 2.8-.5-.1a11.2 11.2 0 000-1 3.6 3.6 0 00-.4-.8 2 2 0 00-.5-.7 2 2 0 00-.8-.4 1.4 1.4 0 00-1 .2c-.4.2-.6.5-.6.8v1l.7.7.8.5a14.1 14.1 0 011.3 1c.2 0 .4.3.5.5m12 1.6l-.5-.1a1.4 1.4 0 00-.5-.1c-.2 0-.4.1-.5.3a5.7 5.7 0 00-.6 1l-1.8 3.1a2.4 2.4 0 01-1.9 1.3h-1.1a4.2 4.2 0 01-1-.5 4.3 4.3 0 01-1-.8 3 3 0 01-.7-1 2.2 2.2 0 01-.1-1 2 2 0 01.2-.8l2.4-4.3a.9.9 0 00.1-.4v-.3a1.5 1.5 0 00-.3-.3l-.4-.3.2-.3 3.1 1.7-.2.3-.3-.1a2 2 0 00-.4-.1h-.4a.9.9 0 00-.2.3l-2.2 4a3.3 3.3 0 00-.3.7 1.8 1.8 0 000 .8c0 .2 0 .5.2.7l.9.8 1 .3a1.9 1.9 0 001.5-.5l.5-.6 1.6-3 .5-1v-.6c0-.2-.2-.3-.4-.5a3.6 3.6 0 00-.4-.3l.2-.4 3 1.7a19.2 19.2 0 01-.2.3m4.3 7.5a1.9 1.9 0 010 1.8 2 2 0 01-.8.8 2.2 2.2 0 01-1 .3l-1-.1a4 4 0 01-.9-.4l-3.5-2 .2-.4a5 5 0 00.8.3.5.5 0 00.3 0 .7.7 0 00.3-.3l3-5.3a1 1 0 00.1-.3.6.6 0 00-.1-.4 1.7 1.7 0 00-.3-.3l-.3-.2.2-.4 3.4 2 .7.5.6.7a1.6 1.6 0 010 1.6 1.8 1.8 0 01-.6.6l-.7.3a2.5 2.5 0 01-.7 0 3.3 3.3 0 01-.8-.2v.1a5 5 0 01.6.6l.5.7zm-.6-1.8c.2 0 .4-.2.5-.3a2.7 2.7 0 00.5-.6c.2-.4.3-.8.2-1.2-.1-.3-.4-.6-.9-.9l-.4-.2-.4-.3-1.6 2.8.6.4.8.3h.7zm-.6 2.7c.2-.4.3-.8.1-1.3 0-.4-.4-.8-1-1.1a29 29 0 00-.5-.4l-.4-.1-1.5 2.5a.6.6 0 000 .7c.1.2.4.4.7.5.5.3 1 .4 1.4.3.5-.2.8-.5 1.2-1zm18.9 4.3a3.5 3.5 0 00-.5 0 1.4 1.4 0 00-.6-.1c-.1 0-.3.1-.4.4a5.9 5.9 0 00-.5 1l-1.5 3.3c-.1.4-.4.7-.7 1a2.6 2.6 0 01-1 .4 3.2 3.2 0 01-1.1 0 4.3 4.3 0 01-2.2-1 3.1 3.1 0 01-.7-.8 2.2 2.2 0 01-.3-1 2 2 0 01.2-.9l2-4.5a.9.9 0 000-.4.7.7 0 00-.1-.3 1.6 1.6 0 00-.3-.3l-.4-.2.2-.4 3.3 1.4-.2.4a3.5 3.5 0 00-.4-.1 2.3 2.3 0 00-.4 0h-.3a1 1 0 00-.2.3l-1.9 4.3-.2.7a1.7 1.7 0 00.4 1.4c.2.3.5.5 1 .7l1 .2a1.9 1.9 0 001.5-.7 2.5 2.5 0 00.4-.6l1.3-3.1.3-1v-.7l-.4-.4a3.7 3.7 0 00-.5-.3l.2-.4 3.1 1.4-.1.3m9.2 10.8l-3.6-1v-.4a9 9 0 00.6 0l.4.1a.8.8 0 00.4-.2.7.7 0 00.2-.3l1.7-5.8a1.4 1.4 0 00-.1 0l-4.8 6h-.3l-.6-7.9-1.5 4.8-.2 1.1.1.6.5.4a3.2 3.2 0 00.5.3l-.2.4-3.2-1v-.4h.6a1 1 0 00.5 0c.2 0 .3-.2.5-.4l.3-1 1.2-4.2a1.7 1.7 0 00.1-.6 1 1 0 00-.1-.4 1.2 1.2 0 00-.4-.4 2 2 0 00-.5-.2l.1-.4 2.8.8.6 6.7 3.5-4.5.3-.5a2.8 2.8 0 00.2-.4l2.7.8-.1.4a3.9 3.9 0 00-.5 0 2.4 2.4 0 00-.4-.1.4.4 0 00-.3.1 1 1 0 00-.1.4l-1.7 5.8a.8.8 0 000 .3l.1.3a3.4 3.4 0 00.8.4l-.1.4m8.7-2.6a1.9 1.9 0 01.7 1.7l-.4 1c-.2.3-.5.4-.8.6-.3.2-.6.2-1 .3h-1l-4-.5v-.4h.5a1.7 1.7 0 00.4 0 .5.5 0 00.3-.2.7.7 0 00.1-.4l.8-6a1 1 0 000-.3.6.6 0 00-.3-.3 1.7 1.7 0 00-.4-.2h-.3v-.5l3.9.5c.3 0 .6 0 .9.2l.7.4a1.6 1.6 0 01.6 1.5l-.2.8a1.7 1.7 0 01-.6.5 2.6 2.6 0 01-.6.3 3.4 3.4 0 01-.8.2l.8.3.7.5zm-1.3-1.5l.4-.5.2-.7a1.5 1.5 0 00-.3-1.1c-.2-.3-.6-.5-1.1-.5a27.3 27.3 0 00-1-.1l-.4 3.2h.8c.3.1.6 0 .8 0a1.3 1.3 0 00.6-.3zm.5 2.8c0-.5 0-1-.3-1.3-.3-.3-.8-.5-1.4-.6l-.7-.1h-.4l-.3 2.9a.6.6 0 00.2.6l.8.3c.6 0 1 0 1.5-.4.3-.3.5-.7.6-1.4zm11.4 2.6h-2.2a44 44 0 00-1.4-2l-1.3-1.8h-1v2.7l.1.4.3.2h.4l.5.1v.4h-3.6v-.4h.4l.4-.1a.5.5 0 00.2-.2.7.7 0 00.1-.4v-6.4l-.3-.3a2.2 2.2 0 00-.4 0l-.4-.1v-.4h4.9a2.8 2.8 0 01.9.4l.6.6a2.3 2.3 0 010 1.8 2 2 0 01-.4.7 2.5 2.5 0 01-.7.4 5.3 5.3 0 01-.8.3l1 1.4c.3.4.7.8 1 1.4a2.5 2.5 0 001 .8 3 3 0 00.8.1v.4zm-3.1-6.2c0-.5-.2-1-.4-1.2-.3-.3-.8-.5-1.3-.5h-1v3.6h.8c.5 0 1-.1 1.3-.5.4-.3.6-.8.6-1.4zm13 5.6l-3.6.3v-.4l.7-.2c.2 0 .3-.2.3-.2v-.2a.5.5 0 000-.1l-.9-1.8-3 .2a9.6 9.6 0 00-.2.7l-.1.6a3.4 3.4 0 00-.1.4v.3c0 .2.1.3.4.3l.9.1v.4l-3.2.3v-.4a2 2 0 00.4-.1 1.3 1.3 0 00.7-.6l.2-.5 1.1-3.6 1.1-3.6h.5l3.4 7 .2.3a1.2 1.2 0 00.7.4h.4v.4zm-3.7-3.1l-1.6-3.2-1 3.4 2.6-.2zm15.7-6.7a27.9 27.9 0 00-.4.2 3.1 3.1 0 00-.8-.9c-.4-.2-.7-.4-1-.3a6.3 6.3 0 00-.3 0l-.6.2-1.4.4.9 3.2 1-.2.6-.3.3-.4.1-.4v-.6l.4-.2.9 3.2-.4.1a2.9 2.9 0 00-.3-.5l-.4-.4a.9.9 0 00-.5-.2 2.3 2.3 0 00-.6.1l-1 .3.8 2.8s0 .2.2.3a.6.6 0 00.3.2h.4l.4-.1.1.4-3.5 1-.1-.4a9.5 9.5 0 00.4-.2l.4-.2a.5.5 0 00.2-.3.8.8 0 000-.3l-1.6-5.9a1.1 1.1 0 00-.2-.3l-.3-.2a2.4 2.4 0 00-.4 0 2.4 2.4 0 00-.5 0l-.1-.3 6.4-1.8.6 2m9.4-.7l1 2.4-6 2.8-.2-.3.4-.3a1.4 1.4 0 00.3-.2.5.5 0 00.1-.3.8.8 0 000-.4l-2.7-5.4a1 1 0 00-.2-.3.5.5 0 00-.4 0h-.4a2 2 0 00-.4 0l-.2-.3 3.3-1.6.2.4a2.8 2.8 0 00-.4.2 2.2 2.2 0 00-.3.3.4.4 0 00-.2.3.8.8 0 00.1.4l2.5 5c0 .3.2.5.3.6l.3.2h.4l.7-.3.4-.2.4-.3.3-.2a.6.6 0 00.2-.3 6.3 6.3 0 00.2-2l.3-.2m4.5-8.3a4.2 4.2 0 011.5.8l1.2 1.4a5 5 0 01.6 1.7 4.1 4.1 0 010 1.6 4 4 0 01-.7 1.5 4 4 0 01-1.2 1 4 4 0 01-3.2.4 4 4 0 01-1.4-.7 5 5 0 01-1.2-1.4 5 5 0 01-.6-1.7 4.3 4.3 0 010-1.7 4 4 0 012-2.4 4 4 0 011.5-.6 3.9 3.9 0 011.5.1zm2.3 5.6a4 4 0 00-.2-1.3 7 7 0 00-.7-1.4 7.2 7.2 0 00-1-1.3 4 4 0 00-1-.8 2.4 2.4 0 00-1-.2c-.5 0-.8.1-1.2.3-.4.3-.7.6-.9 1a2.6 2.6 0 00-.3 1c0 .5.1.9.3 1.3a7.2 7.2 0 001.5 2.6c.3.4.7.6 1 .8a2.4 2.4 0 001.2.3c.3 0 .7 0 1.1-.3a2.3 2.3 0 001.2-2zm10.5-5.7l-1.9 1.3-2.3-.9-2-.6-.8.5 1.6 2.1.2.3h.4a1.8 1.8 0 00.3-.1l.4-.3.3.4-3 2-.2-.3a8.6 8.6 0 00.6-.5.5.5 0 000-.4.7.7 0 000-.3l-3.6-5a1 1 0 00-.2-.2.3.3 0 00-.4 0 3 3 0 00-.7.3l-.3-.4 3.2-2.2a4.6 4.6 0 01.9-.5 2.7 2.7 0 01.9-.2l.8.1a2.2 2.2 0 011.1 1.4v.8a2.5 2.5 0 01-.2.7 4.9 4.9 0 01-.5.8l1.6.5 1.6.5a2.5 2.5 0 001.2.1h.4a2.6 2.6 0 00.4-.3l.2.4zm-6.2-3.3c-.3-.4-.6-.6-1-.7-.4-.1-.9 0-1.3.3l-.8.6 2 3 .7-.5c.4-.3.7-.7.8-1.2 0-.5 0-1-.4-1.5zm13.2-2l.7 2.4-6.6 2.4-.2-.4a4.3 4.3 0 00.8-.4.6.6 0 00.2-.3.7.7 0 000-.4l-2.2-5.6a1 1 0 00-.1-.3l-.4-.1h-.4a2.2 2.2 0 00-.5 0l-.1-.3 6.1-2.3.7 1.9-.4.1a2.7 2.7 0 00-.8-.7l-.9-.3a4.3 4.3 0 00-.4.2l-.6.2-1.2.4 1.1 3.1 1-.3c.2 0 .4-.2.5-.3a.9.9 0 00.3-.4v-1.1l.4-.1 1.1 3-.4.2a3.2 3.2 0 00-.3-.5 1.5 1.5 0 00-.4-.3.9.9 0 00-.5-.2c-.2 0-.4 0-.6.2l-.9.3.9 2.4.2.5a.5.5 0 00.3.3h.5l.7-.3.5-.2a3.9 3.9 0 001-.4l.2-.3.2-1v-1l.5-.1m7.1-5.8c.4.3.8.7 1 1.3.3.5.5 1 .6 1.7a4.9 4.9 0 010 1.8 4.1 4.1 0 01-.8 1.5 3.9 3.9 0 01-2.7 1.6 3.9 3.9 0 01-3-.9 4.1 4.1 0 01-1-1.2 4.9 4.9 0 01-.6-1.7 5 5 0 010-1.9l.8-1.5a4 4 0 012.7-1.5 4 4 0 011.6 0l1.4.8zm-.1 6c.2-.4.3-.8.3-1.3v-1.5a7 7 0 00-.4-1.5 3.9 3.9 0 00-.7-1.2 2.4 2.4 0 00-.9-.7 2.3 2.3 0 00-1.1-.1c-.5 0-1 .2-1.2.5-.3.2-.6.6-.7 1a4 4 0 00-.3 1.2 7 7 0 00.4 3l.7 1.1c.2.4.5.6.9.7.3.2.7.2 1.2.2a2.3 2.3 0 001-.5 2.4 2.4 0 00.8-1z"/>
+  <path fill="none" stroke="#000" d="M366 205.1v53c0 10.6-1.4 52.6-46.5 69-45.3-16.4-46.7-58.4-46.7-69v-53H366"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ca.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ca.svg
new file mode 100644
index 0000000..4843fc3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ca.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ca" viewBox="0 0 640 480">
+  <path fill="#fff" d="M81.1 0h362.3v512H81.1z" transform="translate(74.1) scale(.9375)"/>
+  <path fill="#d52b1e" d="M-100 0H81.1v512H-100zm543.4 0h181.1v512h-181zm-308 247.4l-14.2 4.8 65.5 57.5c5 14.7-1.7 19-6 26.8l71-9L250 399l14.8-.4-3.3-71 71.2 8.5c-4.4-9.3-8.3-14.2-4.3-29l65.4-54.5-11.4-4.2c-9.4-7.2 4-34.7 6-52.1 0 0-38.1 13.1-40.6 6.2l-9.8-18.7-34.7 38.2c-3.8.9-5.4-.6-6.3-3.8l16-79.8-25.4 14.3c-2.1 1-4.2.2-5.6-2.3l-24.5-49-25.2 50.9c-1.9 1.8-3.8 2-5.4.8l-24.2-13.6 14.6 79.1c-1.2 3.2-4 4-7.2 2.3l-33.3-37.7c-4.3 7-7.2 18.3-13 20.9-5.7 2.4-25-4.8-37.9-7.6 4.4 15.9 18.2 42.3 9.5 51z" transform="translate(74.1) scale(.9375)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cc.svg
new file mode 100644
index 0000000..2c45698
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cc.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cc" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" d="M0-360l69.4 215.8 212-80.3L156-35.6 351 80.1 125 99.8l31.1 224.6L0 160l-156.2 164.3 31.1-224.5L-351 80l195-115.7-125.5-188.9 212 80.3z"/>
+    <path id="b" d="M0-210L54.9-75.5l144.8 10.6-111 93.8 34.7 141L0 93.3-123.4 170l34.6-141-111-93.8 145-10.6z"/>
+  </defs>
+  <path fill="green" d="M0 0h640v480H0z"/>
+  <circle cx="320" cy="240" r="66.7" fill="#ffe000"/>
+  <circle cx="340.8" cy="240" r="54.9" fill="green"/>
+  <circle cx="109.8" cy="173.3" r="69.8" fill="#ffe000"/>
+  <path fill="#802000" stroke="#7b3100" stroke-width="1.5" d="M105 226h17.5s.7-1.6-.2-2.4c-1-.8-4.7-1-3.7-3.8 2-5.8 2.4-4 3.7-17.8a739 739 0 002-35.5h-2.6s.5 6.7-1 15.5c-1.4 8.8-1.9 9.5-3.5 16.3a63.5 63.5 0 01-3.3 11.2c-1.4 4-1.6 4.1-3.8 7.8-2.3 3.6-1.5 2.2-2.7 4.4-.7 1.1-1.4.8-1.9 1.6-.4.8-.5 2.7-.5 2.7z"/>
+  <path fill="green" d="M118.3 122.5a23 23 0 01-1.2 9.2 26.5 26.5 0 00-2.3 9.8c-1.8.6-3.7-3.9-5.5-1.2 1.3 3.7 4.4 6.6 6.4 9.9.4 1 3.4 3.7 1.6 4.3-4.3-1.5-5.4-7-8-10.3a19 19 0 00-15.5-10c-2.5.1-10.4-.5-8.4 3.7 3 2 6.8 3.4 9.8 5.7 2.3.2 6.3 4 6.1 5.4-4-1.6-5.8-3.5-10-5.2-5.8-2.2-13.7-.9-17 4.8-.5 1.5-1.4 5.8.5 6.3 2.2-3.4 5.3-7.3 9.9-6.2 3.6.3-4 6.7-1.1 5.4 1-.4 3-1.8 4.6-2 1.5 0 2.3 1 3.4 1.2 2.3.3 3 1.2 2.7 1.8-.2.6-1 0-3.3.8-1.1.4-1.7 1.4-3 1.9-1.4.4-4.2.5-5.2 0-3.7-1.5-9.7-1.3-10.8 3.3 0 2-1.8-.2-2.6.7-.7 2.2-.8 4.4-4 4.2-2 2-4 4.2-6.6 5.7 1.5 3.4 7.3-3.4 7-.5-2.5 3.5 1.4 4.2 3 1.5 2.9-3 6.5-6.7 10.7-3.6 2 1.9 3.2-1 4.7-1 1 2.5 2.1.2 3.2-.5 1.7-.2 1.2 2.2 3.2.7 4.1-2.7 9.1-.4 13.1-3 4.3-2 .6 1.5-.5 2.9-1.9 3.6-.3 8.4-4.3 10.6-1.7 4.3 1.9 10-1.7 13.2-.5 2 4.6 1.8 6 2.6 2.6 0 0-5.8 2.5-6.6 3.4 2 3.2-3.8 2.5-5.6.4-4 .6-8.6 2.6-12.3 2.2-4.5 4.2 1.9 1.8 3.7-1.4 4.1-3.4 9.4-.3 13.3 1 .2 1.7 2.4 2.8 3 1.2.7 2.8-.1 3-2.1 1.6-6 .8-12.4 3-18.3 1.5-1.8 3.6-.3 4.5 1.4 3 3.5 5.1 7.8 8.7 10.7a15 15 0 017.8 7.3c0 2.6 7.4 3 5.2 0-2.1-2.7-.7-5.6 1.4-7.5 1.2.3.9-1.8 0-1-1.5-.3-1.6-3 .4-1.7 3.5 1.1-.2-2.5-1.5-2.6-2.9-1.8-6.2-3.8-7.6-7 3.8 0 7.7 2.1 11.5.9 3.1-1.6 6.2 0 7.3 2.8 2.4-.4 1.4-2.8 0-3.6 1.7-.7 3-2.2.8-3.5-1-1.4 1.5-4-1.7-3.8.1-2.5-.8-4.7-3.5-5.6-2.7-2.2-10.6 3.4-10.3-1.7-.8-2.8 3.2-.4 4.3-1.8 1.1-3-5.5-2.6-3.3-5 1.4-.8 8.1-2.1 2.9-3.1a8.3 8.3 0 01-7-1.1c-1.9 3.1-7.2-1.8-6.3 3.8-.7 2.1-5.5 7.6-6.8 3.4 1-3.3 6.8-4.3 5-8.8-.3-2.7-2.6.5-3.6.3-.6-1.7 1.6-3.8 3.2-4.2 3 2.4 3-3 6-2.5 2.1-.5-.7-1.4-1.3-1.8.6-1.5 3.9-2.3.7-3.7-2.9-2-5 2.1-7.3 2.3-2.2-2.5 2-3.7 3.2-5 .1-1-2.4-.3-1.7-1.2.7-1.1 5.2-1.2 3-3a14.7 14.7 0 00-10.2.6c-2 .6-2.5 5-4.2 4.8-.7-2 .3-5.8-2.4-6.3zm15 42.3c2.4-.4 0 3.7-1 3.6 0-1.4-3.6-1.3-1.3-2.6a7.3 7.3 0 012.3-1z"/>
+  <g fill="#ffe000" transform="translate(0 80) scale(.0635)">
+    <use width="100%" height="100%" x="7560" y="4200" xlink:href="#a"/>
+    <use width="100%" height="100%" x="6300" y="2205" xlink:href="#a"/>
+    <use width="100%" height="100%" x="7560" y="840" xlink:href="#a"/>
+    <use width="100%" height="100%" x="8680" y="1869" xlink:href="#a"/>
+    <use width="100%" height="100%" x="8064" y="2730" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cd.svg
new file mode 100644
index 0000000..739fab7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cd.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cd" viewBox="0 0 640 480">
+  <path fill="#007fff" d="M0 0h640v480H0z"/>
+  <path fill="#f7d618" d="M28.8 96H96l20.8-67.2L137.6 96h67.2l-54.4 41.6 20.8 67.2-54.4-41.6-54.4 41.6 20.8-67.2L28.8 96zM600 0L0 360v120h40l600-360V0h-40"/>
+  <path fill="#ce1021" d="M640 0L0 384v96L640 96V0"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cf.svg
new file mode 100644
index 0000000..9f19138
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cf.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cf" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cf-a">
+      <path fill-opacity=".7" d="M-12.4 32h640v480h-640z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#cf-a)" transform="translate(12.4 -32)">
+    <path fill="#00f" d="M-52 32h719.3v119H-52z"/>
+    <path fill="#ff0" d="M-52 391.6h719.3V512H-52z"/>
+    <path fill="#009a00" d="M-52 271.3h719.3v120.3H-52z"/>
+    <path fill="#fff" d="M-52 151h719.3v120.3H-52z"/>
+    <path fill="red" d="M247.7 32.5h119.9V512H247.7z"/>
+    <path fill="#ff0" d="M99.3 137.7l-31.5-21.8-31.3 22L47.4 101 16.9 78l38.2-1 12.5-36.3L80.3 77l38.1.7L88.2 101"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cg.svg
new file mode 100644
index 0000000..8b66be2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cg.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cg" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cg-a">
+      <path fill-opacity=".7" d="M-79.5 32h640v480h-640z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#cg-a)" transform="translate(79.5 -32)">
+    <path fill="#ff0" d="M-119.5 32h720v480h-720z"/>
+    <path fill="#00ca00" d="M-119.5 32v480l480-480h-480z"/>
+    <path fill="red" d="M120.5 512h480V32l-480 480z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ch.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ch.svg
new file mode 100644
index 0000000..f5ec8d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ch.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ch" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#d52b1e" d="M0 0h640v480H0z"/>
+    <g fill="#fff">
+      <path d="M170 195h300v90H170z"/>
+      <path d="M275 90h90v300h-90z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ci.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ci.svg
new file mode 100644
index 0000000..2bd7104
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ci.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ci" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#00cd00" d="M426.8 0H640v480H426.8z"/>
+    <path fill="#ff9a00" d="M0 0h212.9v480H0z"/>
+    <path fill="#fff" d="M212.9 0h214v480h-214z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ck.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ck.svg
new file mode 100644
index 0000000..e4f0d0c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ck.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ck" viewBox="0 0 640 480">
+  <path id="path628" fill="#006" d="M0 0h640v480H0z"/>
+  <path id="path638" fill="#fff" fill-rule="evenodd" d="M471.6 213l5.2-16.7-14-10.6 17.6-.2 6-16.5 5.6 16.5 17.7.5-14.1 10.5 5 16.7-14.5-10m27.1 13l10.4-13.9-9.7-14.8 16.7 5.8 11-13.5v17.6l16.4 6.4-16.8 5-.8 17.5-10.2-14.4m-98.4 15l-.7-17.5-16.8-5.2L431 198v-17.4l10.9 13.5 16.8-5.6-9.8 14.7 10.3 14-17-4.5m-39.6 40.9l-7.4-15.8-17.4 1.8 12.8-12.3L384 211l15.2 8.2 13.3-11.8-3.4 17.4 14.9 8.9-17.3 2.5M389 291.8l-13.3-11.1-15 9.2 6.4-16.7-12.9-11.6 17.3.7 7-16.4 4.3 17.2 17.2 1.5-14.6 9.8m3.2 60.4l-16.5-4.8-10.1 14.5-.7-17.9-16.4-5.5 16.1-6.2v-18l10.7 14.1 16.4-5.6-9.6 15m29.5 50.8l-17 2.4-3.5 17.4-7.8-16-17.1 1.6 12.2-12.3-7.1-16.4 15.3 8.5 12.8-11.8L393 362m45 38l-15.1 8.2 2.6 17.6-12.7-12.4-15.6 7.6 7.3-15.9-12.3-12.9 17.3 2.6 8-15.5 3.4 17.4m53.8 9l-8.3 15.3 11.7 13.2-17.4-3.3-8.9 15-2.4-17.3-17.2-4 15.8-7.4-1.7-17.5 12.2 12.8m57.4-13.1l-.5 17.4 16.3 6.4-17 5-1.2 17.5-10-14.3-17 4.4 10.8-13.9-9.4-14.7 16.6 5.7M559 209.8l12 12.6 15.9-7.4-8.3 15.8 11.5 13.1-17-2.8-9 15.5L562 239l-17-3.5 15.7-8m34.2 21l5.5 16.6 17.5.3-14.2 10.7 4.7 16.8-14.1-10-14.6 10.1 5.4-16.8-13.8-10.6 17.6-.4m19.5 33.2l-2 17.4 15.7 7.7-17.3 3.6-2.7 17.3-8.7-15.1-17.4 2.9 12-13-8.1-15.5 16 7.2m3 39.8l-7.8 15.6L603 379l-17.4-2.7-8.4 15.3-3-17.3-17.4-3.3 15.6-8-2.3-17.4 12.6 12.3m-9.8 39.1l-14.7 9.2 3.8 17.3-13.5-11.5-15 8.6 6.3-16.3-13.1-12.1 17.4 1.5 7-16 4.4 17.2"/>
+  <path id="path1423" fill="#006" stroke-width=".5" d="M0 0h320v240H0z"/>
+  <path id="path1425" fill="#fff" stroke-width=".5" d="M37.5 0l122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z"/>
+  <path id="path1427" fill="#c8102e" stroke-width=".5" d="M212 140.5L320 220v20l-135.5-99.5zm-92 10l3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z"/>
+  <path id="path1429" fill="#fff" stroke-width=".5" d="M120.5 0v240h80V0zM0 80v80h320V80z"/>
+  <path id="path1431" fill="#c8102e" stroke-width=".5" d="M0 96.5v48h320v-48zM136.5 0v240h48V0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cl.svg
new file mode 100644
index 0000000..287a37e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cl.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cl" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cl-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#cl-a)" transform="scale(.9375)">
+    <path fill="#fff" d="M256 0h512v256H256z"/>
+    <path fill="#0039a6" d="M0 0h256v256H0z"/>
+    <path fill="#fff" d="M167.8 191.7L128.2 162l-39.5 30 14.7-48.8L64 113.1l48.7-.5L127.8 64l15.5 48.5 48.7.1-39.2 30.4 15 48.7z"/>
+    <path fill="#d52b1e" d="M0 256h768v256H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cm.svg
new file mode 100644
index 0000000..b4272b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cm.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cm" viewBox="0 0 640 480">
+  <path fill="#007a5e" d="M0 0h213.3v480H0z"/>
+  <path fill="#ce1126" d="M213.3 0h213.4v480H213.3z"/>
+  <path fill="#fcd116" d="M426.7 0H640v480H426.7z"/>
+  <g fill="#fcd116" transform="translate(320 240) scale(7.1111)">
+    <g id="b">
+      <path id="a" d="M0-8L-2.5-.4 1.3.9z"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cn.svg
new file mode 100644
index 0000000..72080b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cn.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cn" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" fill="#ffde00" d="M-.6.8L0-1 .6.8-1-.3h2z"/>
+  </defs>
+  <path fill="#de2910" d="M0 0h640v480H0z"/>
+  <use width="30" height="20" transform="matrix(71.9991 0 0 72 120 120)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(-12.33562 -20.5871 20.58684 -12.33577 240.3 48)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(-3.38573 -23.75998 23.75968 -3.38578 288 95.8)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(6.5991 -23.0749 23.0746 6.59919 288 168)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(14.9991 -18.73557 18.73533 14.99929 240 216)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/co.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/co.svg
new file mode 100644
index 0000000..0d74127
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/co.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-co" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffe800" d="M0 0h640v480H0z"/>
+    <path fill="#00148e" d="M0 240h640v240H0z"/>
+    <path fill="#da0010" d="M0 360h640v120H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cr.svg
new file mode 100644
index 0000000..133b029
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cr.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cr" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#0000b4" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M0 75.4h640v322.3H0z"/>
+    <path fill="#d90000" d="M0 157.7h640v157.7H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cs.svg
new file mode 100644
index 0000000..8767581
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cs.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cz" viewBox="0 0 640 480">
+  <path fill="#ffffff" d="M0 0h640v240H0z"/>
+  <path fill="#d7141a" d="M0 240h640v240H0z"/>
+  <path fill="#11457e" d="M360 240 0 0V480z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cu.svg
new file mode 100644
index 0000000..079a29b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cu.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cu" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cu-a">
+      <path fill-opacity=".7" d="M-32 0h682.7v512H-32z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#cu-a)" transform="translate(30) scale(.94)">
+    <path fill="#0050f0" d="M-32 0h768v512H-32z"/>
+    <path fill="#fff" d="M-32 102.4h768v102.4H-32zm0 204.8h768v102.4H-32z"/>
+    <path fill="#ed0000" d="M-32 0l440.7 255.7L-32 511V0z"/>
+    <path fill="#fff" d="M161.8 325.5L114.3 290l-47.2 35.8 17.6-58.1-47.2-36 58.3-.4 18.1-58 18.5 57.8 58.3.1-46.9 36.3 18 58z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cv.svg
new file mode 100644
index 0000000..39a7b7e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cv.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cv" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cv-a">
+      <path fill-opacity=".7" d="M-123.4 0h682.6v512h-682.6z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#cv-a)" transform="translate(115.7) scale(.94)">
+    <path fill="#fff" d="M-123.4 233H723v206h-846.5z"/>
+    <path fill="#081873" d="M-122.8 0h846v256.6h-846zm.3 385.9h852.1V512h-852.1z"/>
+    <path fill="#de3929" d="M-122.5 302.6h846v39.6h-846z"/>
+    <path fill="#ffce08" d="M131 399.2l6.6 20.4H159l-17.4 12.7 6.6 20.5L131 440l-17.4 12.7 6.7-20.5-17.4-12.7h21.5M317 250.4l6.7 20.5H345l-17.4 12.6 6.6 20.5-17.4-12.7-17.4 12.7 6.6-20.5-17.4-12.6h21.6m-222 64.4l6.6 20.5h21.5L99 368.6l6.7 20.4-17.4-12.6L70.9 389l6.6-20.4-17.4-12.7h21.5M317 329.5l6.7 20.4H345l-17.4 12.7 6.6 20.4-17.4-12.6-17.4 12.7 6.6-20.5-17.4-12.7h21.6m-40.5-161.7l6.7 20.4H298l-17.4 12.7 6.6 20.5-17.4-12.7-17.4 12.7 6.7-20.5-17.5-12.7h21.6m-64.5-45.2l6.7 20.5h21.5l-17.4 12.6 6.6 20.5-17.4-12.6-17.4 12.6 6.7-20.5-17.4-12.6H192m-64.5 2.9l6.7 20.5h21.5l-17.4 12.6 6.7 20.5-17.5-12.7-17.4 12.7 6.7-20.5-17.4-12.6H121m-34.8 43.2l6.6 20.5h21.6l-17.5 12.6 6.7 20.5-17.4-12.7-17.4 12.7 6.6-20.5L58 271h21.5m119.2 149.4l6.7 20.5h21.5l-17.4 12.6 6.7 20.5-17.5-12.7-17.4 12.7 6.7-20.5-17.4-12.6H192m82.2-41.7l6.6 20.4h21.5L285 432.3l6.7 20.5-17.4-12.7-17.5 12.7 6.7-20.5-17.4-12.7h21.5"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cw.svg
new file mode 100644
index 0000000..533644d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cw.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="cw-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+    <path id="b" d="M0-1l.2.7H1L.3 0l.2.7L0 .4l-.6.4.2-.7-.5-.4h.7z"/>
+  </defs>
+  <g clip-path="url(#cw-a)" transform="scale(.94)">
+    <path fill="#002b7f" d="M0 0h768v512H0z"/>
+    <path fill="#f9e814" d="M0 320h768v64H0z"/>
+    <use width="13500" height="9000" x="2" y="2" fill="#fff" transform="scale(42.67)" xlink:href="#b"/>
+    <use width="13500" height="9000" x="3" y="3" fill="#fff" transform="scale(56.9)" xlink:href="#b"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cx.svg
new file mode 100644
index 0000000..f5b89b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cx.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cx" viewBox="0 0 640 480">
+  <path fill="#0021ad" d="M0 0h640v480H0z"/>
+  <path fill="#1c8a42" d="M0 0h640v480z"/>
+  <circle cx="320" cy="240" r="57.8" fill="#ffc639"/>
+  <path fill="#1c8a42" d="M284.7 214c4 5.5 10 14.6 14.8 12.2 3.7 0 5.7.3 6.2 2.8a37 37 0 0033-14.3s.8 0 .5-4.5c0-2 2.8-1.6 2.8-1 .4 1 .4 1.7.9 1.8 1-.4 2.7-3 4-4.6.3-.7.1-1.5.2-2.4.7-1.7 2.4-1.3 2.8-.4l.6 1.6c1.8 1.2 5 0 5.2 0 .3-1.4 1.2-1.2 1.2-1.2 1.2-.3.7-.2 1.5.2-.7 7.7 1.5 8 1.3 12 .1 4.4-1.3 5.6-1.3 7.3.4 2 7 2.1 4.6 3.9-2 1 0 3-3 3.8-8.8 4.5-10.4 8.3-10.4 8.3s-2.2 4.2-2.5 4.2c-1.5 2.8-3.3 1.2-4.4 2.6-.5 1.7-1 5.5 0 7.4.5 2.7 0 4.2-.7 6.9-.6 5.6-2.8 6.5-3.1 8.4-1 2.2.2 12-.8 12-6.5.2-11.5-1.2-14.1-1.7 2.5-10.9 1.5-20.4 1.5-21.4-.6-7.8-11.6-5.9-13.3-7-1.4-.2-2.3-1.3-2.7-1.8-1.6-.2-2.2-.6-3.7-.7-.8.4-.3.8-2 1.3-4.5.5-6.4-3.8-6.4-3.8.2-1.5-9.9.3-15.3-1-2.3 1.3-3.3 5-5.1 5.4 0 1.1-3-1-3.6-2-.2-3.4 2.8-4.8 2.8-4.8 2.4-1.7 3.8-2 5-3.1.5-2.9.2-5 1.5-7.1 1-1.7 2.5-1 3.5-1.6 1.1-.8 1.6-5.6.6-7l-4.7-4.2c-1.4-4.1 1.7-6.8 2.6-6.5z"/>
+  <path fill="#ffc639" d="M561.9 142.4c-2.6-10.3-26-32.7-43.7-46.9-4.2-2.8-7-1.1-6.4 3 2.2 3.6 3.8 7.6 6 11.3.6 2.5 1.8 4.2 2.4 6.6 0 0 .2 4.2.6 4.6 5.4 6 6.2 11.1 6.2 11.1a49 49 0 0011.5 15.6c6.2 3.9 1.6 16 1.8 22.5 0 4-2.9 3.6-5.5 3-20.1-18.5-40.1-18.5-57.8-23.9-6.8-.7-7 2.6-4.7 4.4a129 129 0 0039.1 29.6l7.7 4.8 8.8 7.3c6.8 4.4 7.3 8.4 7.3 8.8.2 8.2-4.2 14.6-5.5 17.2-2.3 8.7-7 10.2-7 10.2-37.6 25.4-57.4 32-118.4 24.1-1-.4-6.8.5 0 3 15.5 5.2 53.7 13.5 90.6-4 9-6.2 14.8-4.2 21.3-8a287.3 287.3 0 0128.3-15.4c8.3-4.5 31.3-9.4 36.6-13.8 6.1-.5 12.4-1.3 12.8-6.5 2-1.3 5-.3 7.2-4.6 4.8-.9 4-2.6 4-2.6-1.2-3.4-5.8-4.8-9-7.3-4.8-1.6-8-2-11.5-.4l-3.3 1.5s-5.1-.7-5.1-1.1c-11.4-.6-10.3-38.3-14.3-54z"/>
+  <path fill="#1c8a42" d="M588.6 204.2a2.8 1.8 16 11-5.4-1.7 2.8 1.8 16 015.4 1.7z"/>
+  <g fill="#fff" transform="matrix(.64 0 0 .64 0 80)">
+    <path id="a" d="M188.2 191l-12.8-12-12.9 11.8 1.4-17.4-17.3-2.8 14.5-9.8-8.6-15.2 16.7 5.3 6.5-16.2L182 151l16.7-5-8.8 15 14.4 10-17.3 2.5 1.2 17.4z"/>
+    <path d="M233.4 335.5l-13.8-9.1-13.4 9.6 4.8-15.5-13.6-9.5 16.6-.4 5-15.5 5.6 15.3 16.7-.1L228 320l5.3 15.4z"/>
+    <use width="100%" height="100%" x="2.5" y="269.1" xlink:href="#a"/>
+    <use width="100%" height="100%" x="-112.1" y="123.2" xlink:href="#a"/>
+    <use width="100%" height="100%" x="108.4" y="85" xlink:href="#a"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cy.svg
new file mode 100644
index 0000000..3d483a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cy.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cy" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path id="a" fill="#435125" d="M307.8 398.6a.8.8 0 01-.2-.2h-.1l-1.3-1.4-3.8-4.5-4.9-6.3-.6-.9-6.2-1.9-4.6-2.1 2.4-2.7 8.4 3.5 6.2 1.3 11.5 8.5-3.3 2.9a37.2 37.2 0 00-3.3 3.5l.7-.5.8.6-1.6.2zm-42.6-12.8a31.7 31.7 0 01-16-4.5s.7-1.3 2.3-2.4c1.6-1.2 4.4-2.5 9-2.6 5.4 0 12 1.9 19.5 5.4a28.8 28.8 0 01-14.8 4zm-23.5-5.2c-1 0-2-.4-2.6-1a5.2 5.2 0 01-1.1-2.4 11.7 11.7 0 01-.3-3.4 3.5 3.5 0 011.3-.2c2 0 3.6 1.7 4.3 3.4.4 1 .5 1.8.2 2.5-.2.6-1 1-1.8 1zm41.3-4.8c-13.9-2-19.8-7-22.3-10.9-2.6-4.1-2-8-2-8s.8-.2 2-.2c3.8 0 13.2 1.9 22.3 19zm-28.5-2.8c-5.9 0-10.4-1-13.4-3a8.3 8.3 0 01-3-3.3 5.4 5.4 0 01-.4-1.6 18.2 18.2 0 017.2-1.4 27 27 0 0118.9 8.7c-3.4.4-6.5.6-9.3.6zm-28.7-1c-6.2 0-14.8-2-20.2-7.3 0 0 5.9-1.5 12.4-1.7h1.2c5.9 0 10.4 1.1 13.4 3.4 1 .8 1.6 1.5 1.7 2.2.1.6-.2 1.2-.8 1.7-1.4 1-3.8 1.6-7.2 1.6h-.5zm-20.3-10.5a2.6 2.6 0 01-2-1 4.7 4.7 0 01-.8-2c-.3-1.4-.2-2.8-.2-2.9a2.4 2.4 0 011-.2c.9 0 1.6.5 2 1a5.6 5.6 0 011.4 2c.2.9.3 1.6 0 2.2 0 .4-.6 1-1.3 1zm46.9-1c-1 0-2-.4-2.6-1a5.2 5.2 0 01-1.1-2.4 11.7 11.7 0 01-.3-3.4 3.5 3.5 0 011.3-.2c2 0 3.7 1.7 4.3 3.4.4 1 .5 1.8.3 2.5-.3.6-1 1-2 1zm-22.8-1c-12.6-.4-19.2-4-22.4-7a14.6 14.6 0 01-3.4-4.3c-.5-1-.7-1.8-.7-2s1.2-.4 3-.4h.4c4.2 0 12.9 1.8 23 13.7zm13.6-1.2a30.8 30.8 0 01-18.9-9.3 19.4 19.4 0 01-4.1-7s1.2-.3 3-.4a14.2 14.2 0 011 0c5 .1 14.3 2.4 19 16.7zm-52-5a42 42 0 01-9.5-1c-5.3-1.4-7.6-3.4-8.6-4.9a5 5 0 01-.8-2 3.4 3.4 0 010-.8s3.5-1 8.4-1.1a35 35 0 017.4.6 21.7 21.7 0 0112.8 8.1s-4 1.2-9.7 1.2zm23.5-8.4a3.4 3.4 0 01-2.5-1 5.2 5.2 0 01-1.1-2.4c-.4-1.6-.3-3.2-.3-3.4a3.5 3.5 0 011.2-.3h.1c2 0 3.6 1.8 4.3 3.5.4 1 .4 1.8.2 2.4-.3.7-1 1.1-1.9 1.1zm-17.6-2.5a38.6 38.6 0 01-9.6-4.2c-4.4-2.7-9.9-7.5-10.5-15l1-.1h.3c1.3 0 4 .3 7.3 2.8 4.2 3.2 8 8.8 11.5 16.5zm11.5-.4a31.2 31.2 0 01-7.6-4.9 48.5 48.5 0 01-13.3-18.6s.9-.5 2.3-.6a3.3 3.3 0 01.2 0h.4c2 0 4.9.9 8.1 4.4 3.8 4 7.1 10.6 10 19.7zm-29.9-.9c-3.9 0-5.2-2-5.6-3a6 6 0 01-.4-3 8.5 8.5 0 012-.2 8 8 0 016.5 3c.2.4.8 1.4.3 2.3-.4.6-1.3 1-2.8 1zm-8.5-10.8a51.1 51.1 0 01-9-.7c-3.4-.6-5.3-3.5-6.4-5.9-1-2.5-1.4-5-1.4-5 10.6.3 15.7 3.4 18 6a9.4 9.4 0 012.6 5.5s-1.6.2-3.8.2zm11-11a42.7 42.7 0 01-2.4-3.4c-1.3-2-2.4-4-2.4-5.6 0-1.7-.4-5-.6-7l-.6-4.5c.3 0 6.6 2.4 6.6 8.4s-.6 12-.6 12v.1zm-8.2-.6h-.2a43.7 43.7 0 01-18.2-10.8c-1.7-2-2.8-5.2-3.1-9.4-.2-3 0-5.5 0-5.8a3.3 3.3 0 011.1-.1c1.4 0 3 .6 5 2a39.6 39.6 0 015.2 4.4c3.2 3.2 5.7 6.4 5.7 6.4.3.4 2 3.7 3.5 6.9a22 22 0 011.6 4.6c.1.6.2 1 0 1.4a.7.7 0 01-.3.4.9.9 0 01-.4 0z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 593.7 0)" xlink:href="#a"/>
+  <path fill="#d47600" d="M519 76.4l-1.8.7-.8.3-2.2-.1-2.2 1-3.8 2.6-.1.1-1.5.4-1.3-.6-.7.4-.3 1.5-.7 1.1-.9.6-3 .3-2.5 1.4-3.4-1-1.5.7-3.3 3-1.7.7h-.5l-2.3-.1-.9.3-1.4 1.3-2.6.2-.9.6-1.3 2.6L476 96l-.8.1-.8-.3-.7.1-.3 1.7-.6.7-1.8.6-1.4 1.2-1.3.6h-2l-1.7 1-3.1.2-1.3 1.2-.3.3-.6.3-1 .6-.2.2-1.2-.2-1.4.5-.6-.8-1 .5-1.2.1-1.6-.7-1.3-.6-.9.2-.3 1.5v.2l-1 1.2-1.7 1.1-.2.3-2 2.6-3.8 4-3.2 1.6-3.3 1-2.3 1.9-6 3-9.7 4.8-2 .6-2.8.4-5 1.9-4.4 1.3-.3.1-.8.3-6.3 1.9-2.9-.4-1.7.7-4.5-.5h-3.1l-2 .4-3.7 1.8-6.3 3-2 2-3.2 1.6-3.8 1.2v-1.6l-1.3.4-1 .3-3 .4h-1.7l-1.1-.3h-.2l-6.2 2.1-7 .7-3.5 1.1H333l-1.6.5-3.2.4-1.2-.3-.2-.1-9.4.4-4.3-.5-2 .5-3.5-1.2-5-.6-1.2-.3-2.6-.8-1.2.7-1 .1-2-.8h-.8l-1.8.6-1-.2-1-.8-2.1-.3-1.4-1.1-7.5 1-2-.6-6.9-2h-1l-1.4 1-2 .8-1.9.4-2.4.1-2.8-.7-2.8-1.4-1.1-.3-2.4.3h-.7l-4.4-2.3-5.6-3.5-3.8-1.9-1.5-.2-.2.7.7 2.2.3 2.3v2l-.1 1.3.3 1.1 1.4 1.6.6 1.5.4 4.2v4.3l-.7 6.8-.2 1-.8 3.6-.7 3.3-2.9 8.7-.7 1-2 1.3-4.3 3-3.2 1.8-1 .4-2.6.2H219l-2-1.1-2-.5-2.6-1.9-2.8-.6-3.2-1.8-.8-1-1.7-.2-2.4-.7-.9-.3-.6-.1-3-.1-2.9-1.3-1.5-.4h-2l-2.1 1-1.1.4-1.4-.5h-1l-1 1.7-.2.3-.8.4h-1.7l-.8.3-1.1.5-1 .4-.5.2h-.3l-.5.2h-.6l-1.2-.6-.6-.3-1-.2-.5.3-.1 1.9-.5 1.1-1.6 1.4-1.6 1.4-1 1.6-3 6.7-1.9 2.7-.5.7-2 2.1-1.7 1.3-3.9 3-3.7 1.5-3.2.6h-1.6l-3-.4-2.6-.8-3-1.8-3.1-2.6-4.7-4.5-.6-.4-.2-.1-1.4-1h-1.1l-.4.8-.3 1-.2.9-.5 5v.3l.3 2.1 3.6 5 1 2.6.2.3.7 1.2.6 1 1.3 3.6-.9 2 .4 1.4-1 .8-.2 1.2 3.1 4 .7 1.7-.7 2.4-1.3 1.4-.3.3.2 1 1.4 1.4 2.5 2.2 1.3 3.2 1 1 1.2-.3.6.5h1l1 1 .6.2 1 .5.8 1 .1 3.2 1.5 3.8v2.5l1 1.5.2 1.2-.5 3.3 1.2 1 1.2-.2.8.1 1.3 1.1 1.6 2.4 1.6-.2 1 .4 4.7 4.3 1 .6.9.4 1 1 1.4-1h.2l1.6-.2.7.5 1.4.9h1.7l4 1.2 1.6.4 3.4 2.1 1.5.9.8.7 1.2 1 2.2 1 2 .4 1 .2.9.3 4.2 1.7 2.3.5 2 .8 1.6.5h1.2l1.6-1.3h1.5l1.3.2 1.3-.2 2-1.2.3-.6 1.4-.6 4.8-.6 1.4.4 3.6-1.5 2.4.6 2-.7 4.7 1 1.2.9 1.4 1.5h1.7l-.7 1.1 2 2.2 1.9 2.7.1.4 1.3 3.9 1 1.4.7 1.9v1.2l-1 .9-.2.4v.2l.2.5.4-.2.7-.4 1-.2 1.6.2 1.1.1 1.7-.8 1.2-.6 1.8.8h2l.9.3 2.4 1.1 1.2.1.4-.3.3-.6-.1-.8-1-1.1-2-2.4-.8-1.2-.6-1.7-.2-2.2-.2-1.5.3-2 .5-.7.4-1.6.1-.4 1.2-1.5 3-2 3.2-2.8 2.5-1.7 2.6-1.1v-.3l.4.1 6.6-2.3 3-.5 20 1.4.7-.2.7-1.9.3-.3.3-.2 2.2-1 1-.2 2.8.7 1.2.3 1.9-1h1.3l2.7-1.5h1.7l.7-.2 3.3-2.4 3.1-.9.8-.4.3-.2 3.3-1.7 2-1.6 1.8-1 2-.4 5-.4 1.1-1.7 2.2-.3 1.3-1.5 1.5-.6 1.1-1.6 1-1.3 1.2-.7 4.1-.3 4.8.6.7-.4 1-3.9 1.2-.7 3-4.5v-1.6l.1-1.4.5-2-.3-3.4.4-3.6 1.9-4.5 1.7-1.8 2.7-1.9 1.4-.6 2-.3h.2l.5-.2h9.2l2.3-.1 5.7 1h.4l1.9.7 2.2 1.7 2.4 2.3.4.4 1.5.7.5.2 1.2-.2 1.8-1 1.4-1 1.8-1v-.2l1.1-1.5.4-.7 3.6-1.4 4.2-.2.5-.3h.2l1.1-1.4h1l2.6 1 1.7-.4 1.4.5 1.1-.1 2-.3 2.3 1.6 1.3.2 4.5 2.6h.4l.2.1.5-.2.8-.2h.1l.1.1.6.7.7.1.8-1-.3-.6-.1-.2-1.7-.3-1.4-2.5 1.4-1.5-2.2-2.6-.4-.5v-.1l-.8-1.2-3.8-5.8-5-4-1.7-1.3-.6-.5-2.7-2.7-1.9-2.5-.2-.5-.4-.9-1.1-2.4-2-1.5-1.6-1.8-3.4-4.6-.5-.7-.8-.5h-1.7l-.1-.2h-.1v-.1l.8-.8 1-.2.3-.9-1.7-4.9v-.2l-.1-1.5 1.3-7.1.2-.9 2.4-4.7 1.4-1.2 1.6-3.1 1.4-2 1.3-1.3.2-.1 2.3-1.4 2-.3 1.9-.3 3.3 1h3l.7-.1 1.4-.2 2.3-.7 1.1-.7.6-.8 1.2-4 .4-1.3.7-1.4 4.3-4.9 3.2-3 7.2-5.2 3.5-2.1 1.8-1.1 16.1-7.2 4.2-4.2 2.2-2.2 3.8-2.6 4.5-1.9 4-3 .8-1.1 1-3.5 1-.2.7-1.7.3-.5 3.1-2.2.4-.2 12.3-6.2 1.8.3 1-1.5 3.5-.6h.7l.9-.5.7-1.3v-.3l.1-3.4.8-.9.4-2.2.4-.6.4-.5 1-.7-.2-.4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cz.svg
new file mode 100644
index 0000000..8767581
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/cz.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-cz" viewBox="0 0 640 480">
+  <path fill="#ffffff" d="M0 0h640v240H0z"/>
+  <path fill="#d7141a" d="M0 240h640v240H0z"/>
+  <path fill="#11457e" d="M360 240 0 0V480z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/da.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/da.svg
new file mode 100644
index 0000000..ab47e0c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/da.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dk" viewBox="0 0 640 480">
+  <path fill="#c8102e" d="M0 0h640.1v480H0z"/>
+  <path fill="#fff" d="M205.7 0h68.6v480h-68.6z"/>
+  <path fill="#fff" d="M0 205.7h640.1v68.6H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/de.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/de.svg
new file mode 100644
index 0000000..1acf302
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/de.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-de" viewBox="0 0 640 480">
+  <path fill="#ffce00" d="M0 320h640v160H0z"/>
+  <path d="M0 0h640v160H0z"/>
+  <path fill="#d00" d="M0 160h640v160H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dj.svg
new file mode 100644
index 0000000..f328f3a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dj.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dj" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="dj-a">
+      <path fill-opacity=".7" d="M-40 0h682.7v512H-40z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#dj-a)" transform="translate(37.5) scale(.94)">
+    <path fill="#0c0" d="M-40 0h768v512H-40z"/>
+    <path fill="#69f" d="M-40 0h768v256H-40z"/>
+    <path fill="#fffefe" d="M-40 0l382.7 255.7L-40 511V0z"/>
+    <path fill="red" d="M119.8 292L89 270l-30.7 22.4L69.7 256l-30.6-22.5 37.9-.3 11.7-36.3 12 36.2h37.9l-30.5 22.7 11.7 36.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dk.svg
new file mode 100644
index 0000000..ab47e0c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dk" viewBox="0 0 640 480">
+  <path fill="#c8102e" d="M0 0h640.1v480H0z"/>
+  <path fill="#fff" d="M205.7 0h68.6v480h-68.6z"/>
+  <path fill="#fff" d="M0 205.7h640.1v68.6H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dm.svg
new file mode 100644
index 0000000..e35d7ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dm.svg
@@ -0,0 +1,152 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dm" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="dm-a">
+      <path fill-opacity=".7" d="M-85 0h682.7v512H-85z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#dm-a)" transform="translate(79.7) scale(.94)">
+    <path fill="#108c00" d="M-258.3 0H769.2v512H-258.3z"/>
+    <path fill="#ffd600" d="M-260 178.2H772.6v50.1H-260z"/>
+    <path fill="#ffd600" d="M181 0h48.5v512h-48.4z"/>
+    <path d="M227.8 0h48.4v512h-48.4z"/>
+    <path d="M-260 226.6H772.6v50.2H-260z"/>
+    <path fill="#fff" d="M-260 276.8H772.6v50.1H-260z"/>
+    <path fill="#fff" d="M276.2 0h48.5v512h-48.5z"/>
+    <rect width="273.8" height="275" x="-394.6" y="-393.9" fill="#e72910" ry="137.5" transform="scale(-1)"/>
+    <g stroke-width="1pt">
+      <path d="M250.5 137l5.6-16 5.1 15.7s17.1.5 17.1.2-13.5 10.3-13.5 10.3l6.1 17.6c-.2-.5-14.8-10.9-14.8-10.9s-14.8 10.4-14.5 10.4 5.6-17 5.6-17l-13.3-10.1 16.6-.3z"/>
+      <path fill="#ffe700" d="M251.3 137.7L256 124l4.4 13.6s14.9.4 14.9.2-11.7 9-11.7 9l5.2 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 5-14.8 5-14.8l-11.6-8.8 14.4-.2z"/>
+      <path fill="#108c00" d="M253.3 140l2.8-8 2.6 7.9s8.5.2 8.5 0-6.7 5.2-6.7 5.2l3 8.8c-.1-.3-7.4-5.4-7.4-5.4l-7.2 5.2c.2 0 2.8-8.5 2.8-8.5l-6.6-5 8.2-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M356.9 211.8l5.6-16 5 15.7s17.2.6 17.2.3-13.5 10.3-13.5 10.3l6 17.6c-.2-.5-14.7-10.9-14.7-10.9s-14.8 10.4-14.5 10.4 5.6-17 5.6-17L340.3 212l16.6-.3z"/>
+      <path fill="#ffe700" d="M357.6 212.6l4.9-13.9 4.4 13.7s14.8.4 14.8.2-11.7 9-11.7 9l5.3 15.1c-.2-.4-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.2z"/>
+      <path fill="#108c00" d="M359.7 214.9l2.8-8 2.5 7.8 8.6.2-6.8 5.1s3.2 9 3 8.8c0-.3-7.3-5.4-7.3-5.4l-7.3 5.1 2.8-8.5-6.6-5 8.3-.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M325.9 330.6l5.6-16 5 15.8s17.2.5 17.2.3-13.5 10.3-13.5 10.3l6 17.5c-.2-.5-14.7-10.8-14.7-10.8S316.7 358 316.9 358s5.7-17 5.7-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M326.6 331.4l4.9-13.8 4.4 13.6s14.8.5 14.8.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.3z"/>
+      <path fill="#108c00" d="M328.7 333.7l2.8-8 2.5 7.9s8.6.3 8.6.1-6.8 5.2-6.8 5.2l3 8.7c0-.2-7.3-5.4-7.3-5.4l-7.3 5.2 2.8-8.5-6.6-5 8.3-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M177.2 330.6l5.6-16 5 15.8s17.1.5 17.1.3-13.5 10.3-13.5 10.3l6.2 17.5c-.3-.5-14.8-10.8-14.8-10.8S168 358 168.2 358s5.7-17 5.7-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M178 331.4l4.8-13.8 4.4 13.6s14.8.5 14.8.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.6 9 4.9-14.8 4.9-14.8l-11.5-8.7 14.3-.3z"/>
+      <path fill="#108c00" d="M180 333.7l2.8-8 2.5 7.9s8.6.3 8.6.1-6.8 5.2-6.8 5.2l3 8.7c0-.2-7.3-5.4-7.3-5.4l-7.3 5.2 2.8-8.5-6.6-5 8.3-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M150 208.7l5.6-16 5.1 15.8s17.1.5 17.1.2-13.5 10.4-13.5 10.4l6.1 17.5c-.3-.5-14.8-10.8-14.8-10.8S140.8 236 141.1 236s5.6-17 5.6-17l-13.3-10 16.6-.3z"/>
+      <path fill="#ffe700" d="M150.8 209.5l4.8-13.8 4.5 13.6s14.7.5 14.7.2-11.7 9-11.7 9l5.3 15.2c-.2-.5-12.8-9.4-12.8-9.4s-12.8 9-12.5 9 4.8-14.8 4.8-14.8l-11.5-8.7 14.4-.3z"/>
+      <path fill="#108c00" d="M152.8 211.8l2.8-8 2.6 7.9 8.5.1-6.7 5.2 3 8.7c-.1-.2-7.4-5.4-7.4-5.4l-7.2 5.2c.2 0 2.8-8.5 2.8-8.5l-6.6-5 8.2-.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M324.6 174.1l-5.6 16-5-15.7s-17.2-.5-17.2-.3 13.5-10.3 13.5-10.3l-6-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17l13.3 10-16.6.3z"/>
+      <path fill="#ffe700" d="M323.9 173.3c0 .3-5 13.9-5 13.9l-4.3-13.6s-14.8-.5-14.8-.3 11.7-8.9 11.7-8.9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.7-14.4.2z"/>
+      <path fill="#108c00" d="M321.8 171l-2.8 8-2.5-7.8s-8.6-.3-8.6-.1 6.8-5.2 6.8-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2c-.2 0-2.9 8.5-2.9 8.5l6.7 5-8.3.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M367.3 290.3l-5.6 16-5-15.8s-17.2-.5-17.2-.2S353 280 353 280l-6-17.6c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17L384 290l-16.6.3z"/>
+      <path fill="#ffe700" d="M366.6 289.5l-4.9 13.8-4.4-13.6s-14.8-.4-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.8-14.4.2z"/>
+      <path fill="#108c00" d="M364.5 287.2l-2.8 8-2.5-7.9s-8.6-.2-8.6 0 6.8-5.2 6.8-5.2l-3-8.8c0 .3 7.3 5.4 7.3 5.4l7.3-5.2c-.2 0-2.9 8.6-2.9 8.6l6.7 5-8.3.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M261.4 375.3l-5.6 16-5-15.8s-17.2-.5-17.2-.3 13.5-10.3 13.5-10.3l-6-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.5-10.3-5.6 17-5.6 17L278 375l-16.6.3z"/>
+      <path fill="#ffe700" d="M260.7 374.4l-4.9 14-4.4-13.7s-14.8-.5-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.7-14.3.3z"/>
+      <path fill="#108c00" d="M258.6 372.2l-2.8 8-2.5-7.9s-8.6-.3-8.6-.1 6.8-5.2 6.8-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.5 6.6 5-8.3.2z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M162 290.3l-5.7 16-5-15.8s-17.2-.5-17.2-.2 13.5-10.3 13.5-10.3l-6-17.6c.2.5 14.7 10.8 14.7 10.8L171 263l-5.7 17 13.3 10.1-16.6.3z"/>
+      <path fill="#ffe700" d="M161.2 289.5l-4.9 13.8-4.4-13.6s-14.8-.4-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.9 14.8-4.9 14.8l11.5 8.8-14.3.2z"/>
+      <path fill="#108c00" d="M159.1 287.2l-2.8 8-2.5-7.9s-8.6-.2-8.6 0 6.8-5.2 6.8-5.2l-3-8.8c0 .3 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.6 6.6 5-8.3.1z"/>
+    </g>
+    <g stroke-width="1pt">
+      <path d="M198.7 175.8l-5.6 16-5.2-15.7s-17-.5-17-.3 13.5-10.3 13.5-10.3l-6.1-17.5c.2.5 14.7 10.8 14.7 10.8s14.8-10.3 14.6-10.3-5.6 17-5.6 17l13.2 10-16.5.4z"/>
+      <path fill="#ffe700" d="M197.9 175l-4.9 14-4.4-13.7s-14.8-.5-14.8-.2 11.7-9 11.7-9l-5.3-15.2c.2.5 12.8 9.4 12.8 9.4s12.8-9 12.6-9-4.8 14.8-4.8 14.8l11.4 8.7-14.3.3z"/>
+      <path fill="#108c00" d="M195.8 172.8l-2.8 8-2.5-7.9s-8.5-.3-8.5-.1 6.7-5.2 6.7-5.2l-3-8.7c0 .2 7.3 5.4 7.3 5.4l7.3-5.2-2.8 8.5 6.6 5-8.3.2z"/>
+    </g>
+    <g transform="matrix(1.04 0 0 1.04 -250.6 359.4)">
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="matrix(.16 -.02 0 .18 429.8 -215.6)">
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.4 0 0 1 -534.3 263.7)"/>
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.5 0 0 1 -547.2 267)"/>
+        <ellipse cx="680.2" cy="586.1" rx="30.8" ry="189.8" transform="matrix(1.2 0 0 1.1 -365 214.1)"/>
+      </g>
+      <g stroke="#000" transform="translate(72.9 -9.8)">
+        <path fill="#a95600" stroke-width=".5" d="M388.5-53c6-.3 3.4-3.3 6.4-5 3-1.6 7.3-.6 8.6 1.4 1.3 2 .3 4 2 4s47-2.5 48.6-.9c1.6 1.7 2 5 .3 6.3-1.6 1.4-58.9 3-60.9 1.6s-5-7-5-7.4z"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.15 0 0 .1 340.4 -81.7)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.15 0 0 .1 344.4 -81.6)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.15 0 0 .1 348.7 -81.8)"/>
+        <path fill="#ff0" stroke-width="3.9" d="M529.6 405.5c0 40 45.6 27.8 46.8 61.2-.7 35.4-76.7 3.5-78.6-61.2 1.9-64.8 75-98 76.7-61 1.2 30.6-45 21-45 61z" transform="matrix(.15 0 0 .1 352.7 -81.8)"/>
+        <ellipse cx="478.4" cy="-41.1" fill="#a95600" stroke-width=".4" rx="3.5" ry="3.4" transform="matrix(1.1 .02 -.02 1.15 -75.6 4.7)"/>
+      </g>
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="rotate(-5.8 688.4 -625.2)">
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 369.8 -361.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 364 -362.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 360.6 -370.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .35 369.3 -399.4)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 377.4 -379)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 373.2 -382.2)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 368 -386.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 363 -389.5)"/>
+      </g>
+      <path fill="#804bff" stroke="#000" stroke-width=".5" d="M482.6-141s-11.7 10-10.1 36.9c1.8 27 26.5 39.5 26.5 39.5s6.2-7.7 5.2-29.5c-2-31.8-13.8-45.7-13.8-45.7l-7.8-1.3z"/>
+      <g fill="#009200" stroke="#000" stroke-width="2.5" transform="rotate(4.5 181 769.9)">
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 369.8 -361.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 364 -362.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.17 0 0 .32 360.6 -370.6)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .35 369.3 -399.4)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 377.4 -379)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 373.2 -382.2)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 368 -386.7)"/>
+        <ellipse cx="427.1" cy="905" rx="20.8" ry="24.1" transform="matrix(.16 0 0 .33 363 -389.5)"/>
+      </g>
+      <ellipse cx="624.4" cy="606.1" fill="#c90000" stroke="#000" stroke-width="1pt" rx="58.3" ry="186.5" transform="matrix(.16 -.06 .06 .15 369.6 -145)"/>
+      <g fill="#009200" stroke="#000" transform="rotate(1 242.4 -1957.8)">
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.5" rx="10.8" ry="12.9" transform="matrix(.4 0 0 .3 445 -230.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 457.2 -236)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 452 -236)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .27 449.5 -233.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .27 449 -238)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 447 -238.8)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 448 -241.6)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.5" rx="10.8" ry="12.9" transform="matrix(.4 0 0 .3 432.8 -243.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.37 0 0 .27 446 -243.5)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 444.2 -247)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 436.1 -243.2)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 437.4 -243.9)"/>
+        <ellipse cx="218.1" cy="356.8" stroke-width="1.6" rx="10.8" ry="12.9" transform="matrix(.35 0 0 .3 439 -247)"/>
+      </g>
+      <g fill="#009200" stroke="#000" transform="matrix(.18 0 0 .2 421 -216.8)">
+        <ellipse cx="528.7" cy="564.5" stroke-width="2.5" rx="67.4" ry="205.6" transform="matrix(.98 -.3 .36 .87 -245.8 324.4)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.5" rx="13.3" ry="40.8" transform="rotate(-23.4 630.5 660.9)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.88 -.46 .95 1.18 -352.3 -10)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.88 -.46 .95 1.18 -348.4 44)"/>
+        <path stroke-width="1.5" d="M139.9 644c0 57.7-18.8 86.2-34.6 110.3 7.5-32.5 13-52.6 13-110.3 0-57.7 29.5-85.3 40.3-102-4.2 16.7-18.7 44.3-18.7 102z" transform="matrix(1.87 -.5 .98 1.16 -362 105.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.4" rx="13.3" ry="40.8" transform="matrix(1.8 -.4 .7 1.64 -915.6 -221)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.6" rx="13.3" ry="40.8" transform="matrix(1.63 -.23 .54 1.35 -739.5 -91.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="1.6" rx="13.3" ry="40.8" transform="matrix(1.63 -.2 .5 1.36 -750.6 -91.8)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.3 -.2 .47 1 -531 47.6)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.33 -.13 .4 1.03 -517.9 12.2)"/>
+        <path stroke-width="2.1" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(1.03 -.5 .46 1.18 12.8 -14.5)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.33 -.13 .4 1.03 -519.5 -34.4)"/>
+        <ellipse cx="528.7" cy="646.1" stroke-width="2.1" rx="13.3" ry="40.8" transform="matrix(1.33 -.1 .38 1.04 -534 -40.1)"/>
+        <path stroke-width="2.9" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.67 -.47 .46 .8 39.5 143.3)"/>
+        <path stroke-width="2.9" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.67 -.47 .46 .8 51.1 125.8)"/>
+        <path stroke-width="2.1" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.94 -.64 .64 1.1 -40.2 -10.7)"/>
+        <path stroke-width="2.7" d="M145.7 569.5c0 34-6.7 61.6-15 61.6s-15-27.6-15-61.6" transform="matrix(.67 -.52 .46 .88 68.6 71.2)"/>
+      </g>
+      <g fill="#804bff" stroke="#000" stroke-width="2.5">
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.16 0 0 .22 458 -214.3)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.16 0 0 .22 456.6 -220.2)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.16 0 0 .22 454.8 -225.8)"/>
+        <path d="M276.3 345.4c-12.3 9.2.4 25.2 12 30.7 13 7.7 86.6 58.2 136.3 12-40.8.8-118.7-63.2-148.3-42.7z" transform="matrix(.16 0 0 .22 450.9 -232.2)"/>
+      </g>
+      <g transform="rotate(1 -589.6 681.6)">
+        <path fill="#804bff" stroke="#000" stroke-width="2.5" d="M211.2 247.3c21.7-12 56.6-9.8 79.7 11.2 19.4 17 45.3 75.2 70.3 92.8a57.7 57.7 0 01-42.2-15.2c-28.8 15.5-38.1 16.7-64 15.7-35.8-1.4-62.4-17.7-68-40.6-6.3-21.8 4.8-52.5 24.2-63.9z" transform="matrix(.2 -.04 .05 .18 407.8 -213.6)"/>
+        <ellipse cx="287.2" cy="323" fill="red" stroke="#000" stroke-width="2.5" rx="14.2" ry="15" transform="matrix(.25 0 0 .13 401.8 -215.2)"/>
+        <ellipse cx="204.6" cy="348.3" fill="#ff0" stroke="#000" stroke-width="2.5" rx="23.3" ry="15.9" transform="matrix(.2 -.08 .07 .17 398.7 -208)"/>
+        <circle cx="283.9" cy="333.9" r="5.8" transform="matrix(.2 0 0 .2 411.3 -233.7)"/>
+        <path fill="#ff0" stroke="#000" stroke-width="6.6" d="M516.8 260.3c4.4 18-6.7 43-33.1 52.6-26.8 13.2-46.1 41.8-55.7 88-47.2-103.2-23-148.3 20.6-160.3 37.4-14.4 60.4-13.4 68.2 19.7z" transform="matrix(.1 0 0 .08 417.9 -191.5)"/>
+        <circle cx="199" cy="362.4" r="4.7" transform="matrix(.2 0 0 .2 418.7 -235)"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/do.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/do.svg
new file mode 100644
index 0000000..97bae5f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/do.svg
@@ -0,0 +1,6745 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-do" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="do-a">
+      <path fill-opacity=".7" d="M-222.6-115.2h958v718.4h-958z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#do-a)" transform="matrix(.67 0 0 .67 148.7 77)">
+    <path fill="#00319c" fill-rule="evenodd" d="M322 329h446.5v273.9H322z"/>
+    <path fill="#d62918" fill-rule="evenodd" d="M-256.7 329.8h445.2v273h-445.2z"/>
+    <path fill="#00319c" fill-rule="evenodd" d="M-255.8-115.2h445.2v305.4h-445.2z"/>
+    <path fill="#d62918" fill-rule="evenodd" d="M324.6-112.7h443V193h-443z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M-256.4 190.1H769.5v141.7h-1026z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M187.4-113.7h138.3v717H187.4z"/>
+    <path fill="#cecece" d="M246.5 194.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M247.2 194.3l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M247.9 194.3l.7.6-.7-.6z"/>
+    <path fill="#848c9c" d="M252.8 194.3l.7.6-.7-.6z"/>
+    <path fill="#848ca5" d="M254 194.5l.4.2-.4-.2z"/>
+    <path fill="#848c9c" d="M254.9 194.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M259.8 194.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M260.5 194.3l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M261.2 194.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M241.5 195l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M242.2 195l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M243 195l.6.6-.7-.7z"/>
+    <path fill="#42425a" d="M243.7 195l.7.6-.8-.7z"/>
+    <path fill="#425a84" d="M244.3 195l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M245.5 195.2l.5.2-.5-.2z"/>
+    <path fill="#002984" d="M247 195.2l.4.2-.5-.2z"/>
+    <path fill="#003994" d="M235.7 201.5a59 59 0 00-26.7 4.9c-4.8 2.8-4.3 10.7 2.1 10.5v.6h-1.4v.7l10.6-2.7v-.6H216v-.7h5l-1.4-2.7 25.3-2.7-1.4-4.7a69 69 0 0126 2v.7l-5.6-1.3c.6 2.9 4 2.2 6.3 1.3l-7 1.4v.6l16.2 1.5 16.8 3.9v.7l-9.1-1.4v.7l11.2 3.3-2-2v-.6l2.7 3.3c4.5.2 7.9 1.2 10.6 4.7l-9.8-4 5.6 12.7h.7v-2h.7v2l6.3-1.3c-1.6-6.8-4.5-14.8-11.2-18.1.6-2.6 0-3.7-2.2-5.4 2.6 5.2-1.7 7.3-5.6 3.4l-1.4 1.3 1.4-4.7-4.2 4 .7-4.6h-.7l-.7 4-2.1-2-.7 2-11.3-1.4v-6l1.4 2h.7v-2l3.5 2h.7l14.1.7.7 5.3h.7l2.1-4.6a74.3 74.3 0 00-26.7-4.7c.5-4.6-4.5-5.4-8.4-6-6.8-1-27.4-3.3-28.2 6z"/>
+    <path fill="#002984" d="M261 195.2l.5.2-.5-.2z"/>
+    <path fill="#00184a" d="M262.4 195.2l.5.2-.5-.2z"/>
+    <path fill="#314a7b" d="M263.4 195l.7.6-.8-.7z"/>
+    <path fill="#42425a" d="M264 195l.8.6-.8-.7z"/>
+    <path fill="#8c8c8c" d="M264.8 195l.6.6-.6-.7z"/>
+    <path fill="#ada5a5" d="M265.5 195l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M266.2 195l.7.6-.7-.7z"/>
+    <path fill="#ada5a5" d="M239.4 195.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M240.1 195.6l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M240.8 195.6l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M241.5 195.6l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M242.2 195.6l.7.7-.7-.7m23.3 0l.6.7-.7-.7z"/>
+    <path fill="#00216b" d="M266.2 195.6l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M266.9 195.6l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M267.6 195.6l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M268.3 195.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M237.3 196.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M238 196.3l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M238.7 196.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M239.4 196.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M246.5 196.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M247.2 196.3l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M247.9 196.3l.7.7-.7-.7m1.4 0l.7.7-.7-.7zm4.2 0l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M257.7 196.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M259.8 196.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M260.5 196.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M268.3 196.3l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M269 196.3l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M269.7 196.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M270.4 196.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M236 197l-.8 1.3.7-1.3z"/>
+    <path fill="#8c8c8c" d="M236.6 197l.7.6-.7-.6z"/>
+    <path fill="#10295a" d="M237.3 197l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M241.5 197l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M242.2 197l.7.6-.7-.6z"/>
+    <path fill="#ad9431" d="M243 197l.6.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M243.7 197l.7.6-.8-.6z"/>
+    <path fill="#395273" d="M244.3 197l.7.6-.7-.6z"/>
+    <path fill="#8c8442" d="M246.5 197l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M247.9 197l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M249.3 197l.7.6-.7-.6zm4.2 0l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M260.5 197l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M263.8 197.2l.5.2-.5-.2z"/>
+    <path fill="#295284" d="M264.8 197l.6.6-.6-.6z"/>
+    <path fill="#00184a" d="M270.4 197l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M271 197l.8.6-.7-.6z"/>
+    <path fill="#dedede" d="M271.8 197l.7.6-.7-.6z"/>
+    <path fill="#31394a" d="M236 197.6l.6.7-.7-.7z"/>
+    <path fill="#deb518" d="M241.5 197.6l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M244.3 197.6l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M246.5 197.6l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M247.9 197.6l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M255.6 197.6l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M256.3 197.6l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M257 197.6l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M258.4 197.6l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M262.6 197.6l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M264.8 197.6l.6.7-.6-.7z"/>
+    <path fill="#10214a" d="M271.8 197.6l1.4 1.4-1.4-1.4z"/>
+    <path fill="#cecece" d="M272.5 197.6l.7.7-.7-.7z"/>
+    <path fill="#212139" d="M235.2 198.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M241.5 198.3l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M242.2 198.3l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M243.2 198.7l.2.5-.2-.5z"/>
+    <path fill="#395273" d="M243.9 198.7l.2.5-.2-.5z"/>
+    <path fill="#6b735a" d="M245 198.3l.8.7-.7-.7z"/>
+    <path fill="#cead21" d="M247.2 198.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M248.6 198.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M255.6 198.3l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M256.3 198.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M257 198.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M258.4 198.3l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M259.1 198.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M262.6 198.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M264.8 198.3l.6.7-.6-.7z"/>
+    <path fill="#efefef" d="M273.2 198.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M234.5 199l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M235.2 199l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M241.5 199l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M245 199l.8.6-.7-.6z"/>
+    <path fill="#295284" d="M245.8 199l.7.6-.7-.6z"/>
+    <path fill="#4a636b" d="M247.2 199l.7.6-.7-.6z"/>
+    <path fill="#deb518" d="M247.9 199l.7.6-.7-.6z"/>
+    <path fill="#ad9431" d="M248.6 199l.7.6-.7-.6m9.1 0l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M259.4 199.4l.2.5-.2-.5z"/>
+    <path fill="#efbd08" d="M262.6 199l.7.6-.7-.6z"/>
+    <path fill="#ad9431" d="M263.4 199l.7.6-.8-.6z"/>
+    <path fill="#cead21" d="M264 199l.8.6-.8-.6z"/>
+    <path fill="#ad9431" d="M264.8 199l.6.6-.6-.6z"/>
+    <path fill="#002984" d="M272.5 199l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M273.2 199l.7.6-.7-.6m-38.7.6l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M235.4 200l.3.5-.3-.4z"/>
+    <path fill="#6b735a" d="M241.5 199.6l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M243 199.6l.6.7-.7-.7z"/>
+    <path fill="#184a8c" d="M245 199.6l.8.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M245.8 199.6l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M247.2 199.6l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M247.9 199.6l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M255.6 199.6l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M256.3 199.6l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M257 199.6l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M262 199.6l.6.7-.7-.7z"/>
+    <path fill="#4a636b" d="M263.4 199.6l.7.7-.8-.7z"/>
+    <path fill="#bd9c29" d="M264.5 199.9l.5.2-.5-.2z"/>
+    <path fill="#bdbdbd" d="M234.5 200.3l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M241.5 200.3l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M243 200.3l.6.7-.7-.7z"/>
+    <path fill="#8c8442" d="M243.7 200.3l.7.7-.8-.7z"/>
+    <path fill="#395273" d="M244.3 200.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M245.8 200.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M249.3 200.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M255.8 200.8l.3.4-.3-.5m1.2-.4l1.4 2-1.4-2z"/>
+    <path fill="#4a636b" d="M259.1 200.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M262 200.3l.6.7-.7-.7z"/>
+    <path fill="#deb518" d="M264 200.3l.8.7-.8-.7z"/>
+    <path fill="#ada5a5" d="M231.7 201l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M234.5 201l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M235.2 201l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M243 201l.6.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M245.8 201l.7.6-.7-.6z"/>
+    <path fill="#cead21" d="M246.5 201l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M247.2 201l.7.6-.7-.6z"/>
+    <path fill="#295284" d="M247.9 201l.7.6-.7-.6z"/>
+    <path fill="#deb518" d="M248.6 201l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M249.3 201l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M259.1 201l.7.6-.7-.6z"/>
+    <path fill="#ad9431" d="M262.6 201l.7.6-.7-.6z"/>
+    <path fill="#cead21" d="M264 201l.8.6-.8-.6z"/>
+    <path fill="#184a8c" d="M265.5 201l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M272.5 201l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M273.2 201l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M276 201l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M278.8 201l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M223.3 201.6l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M224 201.6l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M225.1 201.9l.5.2-.5-.2z"/>
+    <path fill="#42425a" d="M226 201.6l.8.7-.7-.7z"/>
+    <path fill="#314a7b" d="M226.8 201.6l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M228 201.9l.4.2-.5-.2z"/>
+    <path fill="#00216b" d="M228.9 201.6l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M243 201.6l.6.7-.7-.7z"/>
+    <path fill="#ffce08" d="M245.8 201.6l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M246.5 201.6l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M248.6 201.6l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M249.3 201.6l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M250.7 201.6l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M251.4 201.6l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M252 201.6l.8.7-.7-.7z"/>
+    <path fill="#395273" d="M254.9 201.6l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M259.1 201.6l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M259.8 201.6l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M261.2 201.6l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M262.6 201.6l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M264 201.6l.8.7-.8-.7m1.5 0l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M278.8 201.6l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M280 201.9l.5.2-.5-.2z"/>
+    <path fill="#314a7b" d="M281 201.6l.6.7-.7-.7z"/>
+    <path fill="#42425a" d="M281.6 201.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M282.3 201.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M283 201.6l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M283.8 201.6l.6.7-.6-.7z"/>
+    <path fill="#cecece" d="M284.4 201.6l.8.7-.8-.7m-65.4.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M219.7 202.3l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M220.4 202.3l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M221.1 202.3l.7.7-.7-.7z"/>
+    <path fill="#29396b" d="M221.8 202.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M222.5 202.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M223.3 202.3l.6.7-.7-.7z"/>
+    <path fill="#002984" d="M224 202.3l.6.7-.7-.7z"/>
+    <path fill="#00216b" d="M234.5 202.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M242.2 202.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M243 202.3l.6.7-.7-.7z"/>
+    <path fill="#184a8c" d="M264 202.3l.8.7-.8-.7z"/>
+    <path fill="#7b7b52" d="M264.8 202.3l.6.7-.6-.7z"/>
+    <path fill="#295284" d="M265.5 202.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M271.8 202.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M284.2 202.5l.5.3-.5-.3z"/>
+    <path fill="#00184a" d="M285.1 202.3l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M285.9 202.3l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M286.6 202.3l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M287.3 202.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M288 202.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M288.7 202.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M216.2 203l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M217 203l.6.6-.7-.6z"/>
+    <path fill="#525a6b" d="M217.6 203l.7.6-.7-.6z"/>
+    <path fill="#10295a" d="M218.3 203l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M219 203l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M226.8 203l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M234.5 203l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M271.8 203l-.7 1.3.7-1.3z"/>
+    <path fill="#395273" d="M275.3 203l.7.6-.7-.6z"/>
+    <path fill="#184a8c" d="M276 203l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M277.4 203l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M288.7 203l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M289.4 203l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M290 203l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M290.8 203l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M291.5 203l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M292.2 203l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M213.4 203.7l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M214.1 203.7l.7.6-.7-.7z"/>
+    <path fill="#314a7b" d="M214.8 203.7l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M215.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#002984" d="M216.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#184a8c" d="M221.1 203.7l.7.6-.7-.7z"/>
+    <path fill="#6b735a" d="M221.8 203.7l.7.6-.7-.7z"/>
+    <path fill="#395273" d="M222.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#5a6b63" d="M225.4 203.7l.7.6-.7-.7z"/>
+    <path fill="#efbd08" d="M226 203.7l.8.6-.7-.7z"/>
+    <path fill="#ffce08" d="M227.2 203.9l.5.2-.5-.2z"/>
+    <path fill="#4a636b" d="M228.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#00215a" d="M234.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#002984" d="M246.2 203.9l.5.2-.5-.2z"/>
+    <path fill="#00215a" d="M247.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M247.9 203.7l.7.6-.7-.7z"/>
+    <path fill="#29396b" d="M248.6 203.7l.7.6-.7-.7z"/>
+    <path fill="#425a84" d="M249.3 203.7l.7.6-.7-.7z"/>
+    <path fill="#636b7b" d="M253.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#737b94" d="M254.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#29396b" d="M259.1 203.7l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M260.3 203.9l.5.2-.5-.2z"/>
+    <path fill="#002984" d="M261.7 203.9l.5.2-.5-.2z"/>
+    <path fill="#6b6b4a" d="M271.8 203.7l.7.6-.7-.7z"/>
+    <path fill="#7b7b52" d="M276 203.7l1.4 5.3-1.4-5.3z"/>
+    <path fill="#cead21" d="M279.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#4a636b" d="M280.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#8c8442" d="M281.6 203.7l.7.6-.7-.7z"/>
+    <path fill="#395273" d="M284.4 203.7l-.6 2.6.6-2.6z"/>
+    <path fill="#002984" d="M291.5 203.7l.7.6-.7-.7z"/>
+    <path fill="#00215a" d="M292.2 203.7l.7.6-.7-.7z"/>
+    <path fill="#314a7b" d="M292.9 203.7l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M293.6 203.7l.7.6-.7-.7z"/>
+    <path fill="#cecece" d="M294.3 203.7l.7.6-.7-.7z"/>
+    <path fill="#efefef" d="M211.3 204.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M212 204.3l.7.7-.7-.7z"/>
+    <path fill="#31425a" d="M212.7 204.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M213.4 204.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M220.4 204.3l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M223.3 204.3l.6.7-.7-.7z"/>
+    <path fill="#deb518" d="M225.8 204.5l.5.3-.5-.3z"/>
+    <path fill="#7b7b52" d="M226.8 204.3l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M228 204.5l.4.3-.5-.3z"/>
+    <path fill="#00216b" d="M235.2 204.3l.7.7-.7-.7m8.5 0l.7.7-.8-.7z"/>
+    <path fill="#63636b" d="M244.3 204.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M261.2 204.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M262 204.3l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M262.6 204.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M263.4 204.3l.7.7-.8-.7z"/>
+    <path fill="#00184a" d="M264.3 204.8l.2.4-.2-.4z"/>
+    <path fill="#001039" d="M271 204.3l.8.7-.7-.7z"/>
+    <path fill="#deb518" d="M271.8 204.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M278.1 204.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M278.8 204.3l-.7 1.4.7-1.4z"/>
+    <path fill="#deb518" d="M279.5 204.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M281.6 204.3l1.4 1.4-1.4-1.4zm4.3 0l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M286.6 204.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M287.3 204.3l.7.7-.7-.7z"/>
+    <path fill="#ad9431" d="M288 204.3l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M288.7 204.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M294.3 204.3l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M295 204.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M295.7 204.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M296.4 204.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M209.9 205l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M210.6 205l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M211.3 205l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M217.6 205l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M221.1 205l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M221.8 205l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M222.5 205l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M224 205l.6.7-.7-.7z"/>
+    <path fill="#ffce08" d="M225.4 205l1.4 1.3-1.4-1.3z"/>
+    <path fill="#8c8442" d="M226 205l.8.7-.7-.7z"/>
+    <path fill="#003994" d="M226.8 205l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M227.5 205l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M228.2 205l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M235.2 205l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M241.5 205l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M242.2 205l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M243 205l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M244.3 205l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M262.6 205l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M263.6 205.4l.2.5-.2-.5z"/>
+    <path fill="#002984" d="M265 205.4l.2.5-.2-.5z"/>
+    <path fill="#313931" d="M271 205l.8.7-.7-.7z"/>
+    <path fill="#295284" d="M276.7 205l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M278.8 205l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M279.5 205l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M281 205l.6.7-.7-.7z"/>
+    <path fill="#efbd08" d="M281.6 205l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M283 205l.7.7-.7-.7m2.4.4l.2.5-.2-.5z"/>
+    <path fill="#cead21" d="M285.9 205l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M286.6 205l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M287.3 205l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M289.4 205l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M290 205l.8.7-.7-.7z"/>
+    <path fill="#cead21" d="M290.8 205l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M291.5 205l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M292.2 205l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M292.9 205l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M296.4 205l.7.7-.7-.7z"/>
+    <path fill="#31394a" d="M297.1 205l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M297.8 205l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M298.5 205l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M208.5 205.7l.7.6-.7-.6z"/>
+    <path fill="#212139" d="M209.2 205.7l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M209.9 205.7l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M212.7 205.7l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M213.4 205.7l.7.6-.7-.6z"/>
+    <path fill="#deb518" d="M214.1 205.7l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M215.5 205.7l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M217.6 205.7l.7.6-.7-.6z"/>
+    <path fill="#184a8c" d="M219 205.7l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M219.7 205.7l.7 2-.7-2z"/>
+    <path fill="#7b7b52" d="M221.1 205.7l.7.6-.7-.6z"/>
+    <path fill="#003994" d="M221.8 205.7v2.6h1.4v-2.6h-1.4z"/>
+    <path fill="#efbd08" d="M223.3 205.7l.6.6-.7-.6z"/>
+    <path fill="#deb518" d="M224 205.7l.6.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M225.4 205.7l.7.6-.7-.6z"/>
+    <path fill="#efbd08" d="M226.8 205.7l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M227.5 205.7l-.7 1.3.7-1.3z"/>
+    <path fill="#7b7b52" d="M228.2 205.7l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M235.2 205.7l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M238 205.7l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M239.7 206.6v1.6h3.3l-3.3-1.6z"/>
+    <path fill="#00215a" d="M240.8 205.7l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M241.5 205.7l.7.6-.7-.6z"/>
+    <path fill="#31394a" d="M244.3 205.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M267.6 205.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#002984" d="M268.3 205.7l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M270.6 206.1l.2.5-.2-.5z"/>
+    <path fill="#8c8442" d="M271 205.7l.8.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M280.2 205.7l.7.6-.7-.6z"/>
+    <path fill="#003994" d="M281.2 206.1l.2.5-.2-.5z"/>
+    <path fill="#deb518" d="M282.3 205.7l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M283 205.7l.7.6-.7-.6z"/>
+    <path fill="#295284" d="M284.4 205.7l.8.6-.8-.6z"/>
+    <path fill="#ad9431" d="M286.6 205.7l.7.6-.7-.6z"/>
+    <path fill="#003994" d="M287.3 205.7l.7.6-.7-.6z"/>
+    <path fill="#295284" d="M288 205.7l.7.6-.7-.6z"/>
+    <path fill="#8c8442" d="M289.4 205.7l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M290 205.7l.8.6-.7-.6z"/>
+    <path fill="#deb518" d="M290.8 205.7l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M291.5 207l2.1-.7-2.1.7z"/>
+    <path fill="#6b735a" d="M293.6 205.7l.7.6-.7-.6z"/>
+    <path fill="#295284" d="M295 205.7l-.7 1.3.7-1.3z"/>
+    <path fill="#10214a" d="M298.5 205.7l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M299.2 205.7l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M207 206.3l.8.7-.7-.7z"/>
+    <path fill="#42425a" d="M207.8 206.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M208.5 206.3l.7.7-.7-.7z"/>
+    <path fill="#ad9431" d="M212.7 206.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M214.6 206.6l.4.2-.4-.3m1.6-.2l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M217.6 206.3l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M221.1 206.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M225.6 206.8l.2.4-.2-.4z"/>
+    <path fill="#9c8c42" d="M226 206.3l.8.7-.7-.7z"/>
+    <path fill="#ffce08" d="M228 206.6l.4.2-.5-.3z"/>
+    <path fill="#8c8442" d="M228.9 206.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M236.1 206.8l.3.4-.3-.4z"/>
+    <path fill="#002984" d="M236.6 206.3l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M237.3 206.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M238 206.3l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M244.3 206.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M245 206.3l.8.7-.7-.7z"/>
+    <path fill="#21315a" d="M263.4 206.3l.7.7-.8-.7z"/>
+    <path fill="#00184a" d="M269 206.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M278.1 206.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M278.8 206.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M279.5 206.3l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M280.2 206.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M284.4 206.3l.8.7-.8-.7z"/>
+    <path fill="#184a8c" d="M285.1 206.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M286.6 206.3l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M287.3 206.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M288 206.3l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M289.4 206.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M290.8 206.3l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M292.2 206.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M292.9 206.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M293.6 206.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M295.7 206.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M299.2 206.3l.7.7-.7-.7z"/>
+    <path fill="#212139" d="M300 206.3l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M300.6 206.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M206.4 207l-.7 1.3.7-1.3z"/>
+    <path fill="#00215a" d="M207 207l.8.7-.7-.7z"/>
+    <path fill="#6b735a" d="M212.7 207l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M214.1 207l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M214.8 207v2.7h.7l-.7-2.7z"/>
+    <path fill="#9c8c42" d="M215.5 207l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M217 207l1.3 1.3-1.4-1.3z"/>
+    <path fill="#395273" d="M217.6 207l.7.7-.7-.7zm8.5 0l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M227.2 207.2l.5.2-.5-.2z"/>
+    <path fill="#deb518" d="M228.2 207l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M228.9 207l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M236.8 207.4l.3.5-.3-.5z"/>
+    <path fill="#002984" d="M244.3 207l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M245 207l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M262.6 207l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M263.4 207l.7.7-.8-.7z"/>
+    <path fill="#000818" d="M269.7 207l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M278.1 207l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M278.8 207l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M279.5 207l-.7 1.3.7-1.3z"/>
+    <path fill="#ffce08" d="M280.2 207l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M282.3 207l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M283.8 207l.6.7-.6-.7z"/>
+    <path fill="#395273" d="M285 207.2l.4.2-.5-.2z"/>
+    <path fill="#9c8c42" d="M290.8 207l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M291.5 207l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M294.3 207l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M298.5 207l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M299.2 207l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M300.6 207l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M301.3 207l1.4 1.3-1.4-1.3z"/>
+    <path fill="#00216b" d="M206.4 207.7l.7.6-.7-.6z"/>
+    <path fill="#295284" d="M212.7 207.7l.7.6-.7-.6z"/>
+    <path fill="#184a8c" d="M215.5 207.7l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M217 207.7l.6.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M219 207.7l.7.6-.7-.6z"/>
+    <path fill="#cead21" d="M221.1 207.7l.7.6-.7-.6m2.1 0l.8.6-.8-.6z"/>
+    <path fill="#7b7b52" d="M225.4 207.7l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M226.8 207.7l.7.6-.7-.6z"/>
+    <path fill="#efbd08" d="M228.4 208.1l.2.5-.2-.5z"/>
+    <path fill="#ad9431" d="M228.9 207.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M237.3 207.7l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M237.3 209l2.1-1.3-2 1.3z"/>
+    <path fill="#00216b" d="M239.4 207.7l.7.6-.7-.6z"/>
+    <path fill="#525a6b" d="M245 207.7l.8.6-.7-.6z"/>
+    <path fill="#63636b" d="M262.6 207.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M266.9 207.7l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M266.9 209l2-1.3-2 1.3z"/>
+    <path fill="#00184a" d="M269 207.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M269.7 207.7l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M276.7 207.7l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M278.1 207.7l.7.6-.7-.6z"/>
+    <path fill="#efbd08" d="M279.5 207.7l.7.6-.7-.6z"/>
+    <path fill="#deb518" d="M280.2 207.7l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M282.3 207.7l.7.6-.7-.6zm2.8 0l.7.6-.7-.6m1.4 0l.8.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M287.3 207.7l.7.6-.7-.6z"/>
+    <path fill="#efbd08" d="M288 207.7l.7.6-.7-.6z"/>
+    <path fill="#cead21" d="M290.8 207.7l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M291.5 207.7l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M293.6 207.7l.7.6-.7-.6z"/>
+    <path fill="#9c8c42" d="M300 207.7l.6.6-.7-.6z"/>
+    <path fill="#002984" d="M301.3 207.7l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M205 208.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M205.7 208.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M213.4 208.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M214.1 208.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M217.2 208.8l.2.4-.3-.4z"/>
+    <path fill="#ad9431" d="M219 208.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M220.4 208.3l.7.7-.7-.7z"/>
+    <path fill="#ad9431" d="M222.3 208.6l.5.2-.5-.2m1.6-.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M226 208.3l.8.7-.7-.7z"/>
+    <path fill="#4a636b" d="M228.9 208.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M243.7 208.3l.7.7-.8-.7z"/>
+    <path fill="#636b7b" d="M245 208.3l.8.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M262 208.3l.6.7-.7-.7z"/>
+    <path fill="#424242" d="M262.6 208.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M271 208.3l.8.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M280.2 208.3l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M284.4 208.3l.8.7-.8-.7z"/>
+    <path fill="#7b7b52" d="M285.1 208.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M286.6 208.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M291.5 208.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M292.9 208.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M293.6 208.3l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M294.3 208.3l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M295 208.3l-.7 1.4.7-1.4z"/>
+    <path fill="#5a6b63" d="M297.8 208.3l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M298.5 208.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M300.6 208.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M302 208.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M302.7 208.3l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M205 209l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M213.4 209l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M214.1 209l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M215.5 209l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M218.3 209l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M219 209l-.7 1.3.7-1.3z"/>
+    <path fill="#ad9431" d="M221.1 209l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M223.3 209l.6.7-.7-.7z"/>
+    <path fill="#4a636b" d="M226.8 209l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M227.5 209l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M228.2 209l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M244.3 209l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M245 209l.8.7-.7-.7m16.8 0l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M262.6 209l1.4 1.3-1.4-1.3z"/>
+    <path fill="#31394a" d="M263.4 209l.7.7-.8-.7z"/>
+    <path fill="#7b7b52" d="M281.6 209l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M282.3 209l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M284.4 209l.8.7-.8-.7z"/>
+    <path fill="#ad9431" d="M285.1 209l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M288 209l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M290 209l.8.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M292.9 209l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M295 209l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M295.7 209l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M299.2 209l-.7 2.7h.7V209z"/>
+    <path fill="#7b7b52" d="M300 209l.6.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M301.3 209l.7.7-.7-.7z"/>
+    <path fill="#425a84" d="M303 209.4l.2.5-.2-.5z"/>
+    <path fill="#42425a" d="M205 209.7l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M213.4 209.7l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#deb518" d="M215.5 209.7l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M217 209.7l.6.6-.7-.6z"/>
+    <path fill="#ffce08" d="M219 209.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M242.2 209.7l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M243 209.7l.6.6-.7-.6z"/>
+    <path fill="#63636b" d="M243.7 209.7l.7.6-.8-.6z"/>
+    <path fill="#efefef" d="M244.3 209.7l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M264 209.7l.8.6-.8-.6z"/>
+    <path fill="#21315a" d="M264.8 209.7l.6.6-.6-.6z"/>
+    <path fill="#00216b" d="M265.5 209.7l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M285.9 209.7l.7.6-.7-.6z"/>
+    <path fill="#8c8442" d="M288 209.7l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M288.7 209.7l.7.6-.7-.6z"/>
+    <path fill="#7b7b52" d="M290 209.7l.8.6-.7-.6z"/>
+    <path fill="#6b735a" d="M292.2 209.7l.7.6-.7-.6z"/>
+    <path fill="#bd9c29" d="M295.7 209.7l-.7 2 .7-2z"/>
+    <path fill="#5a6b63" d="M297.1 209.7l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M297.8 209.7l.7.6-.7-.6z"/>
+    <path fill="#5a6b63" d="M298.5 209.7l.7.6-.7-.6z"/>
+    <path fill="#395273" d="M300 209.7l.6.6-.7-.6z"/>
+    <path fill="#6b735a" d="M301.3 209.7l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M205 210.3l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M213.4 210.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M216.2 210.3l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M218.3 210.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M226.8 210.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M227.5 210.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M228.2 210.3l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M228.9 210.3l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M238 210.3l.7.7-.7-.7z"/>
+    <path fill="#848c9c" d="M238.7 210.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M242.2 210.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M265.5 210.3l.7.7-.7-.7z"/>
+    <path fill="#848c9c" d="M269 210.3l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M269.7 210.3l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M278.8 210.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M279.5 210.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M280.2 210.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M281 210.3l.6.7-.7-.7z"/>
+    <path fill="#4a636b" d="M290 210.3l.8.7-.7-.7z"/>
+    <path fill="#6b735a" d="M290.8 210.3l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M292.2 210.3l.7.7-.7-.7z"/>
+    <path fill="#cead21" d="M292.9 210.3l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M294.3 210.3l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M295 210.3l.7.7-.7-.7m2.6.3l.4.2-.4-.2z"/>
+    <path fill="#8c8442" d="M300 210.3l.6.7-.7-.7z"/>
+    <path fill="#184a8c" d="M301.3 210.3l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M302.7 210.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M205 211l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M205.7 211l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M214.1 211l.7.7-.7-.7z"/>
+    <path fill="#4a636b" d="M214.8 211l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M219.7 212.3l2.1-.6-2 .7z"/>
+    <path fill="#00215a" d="M221.8 211l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M222.5 211l.7.7-.7-.7z"/>
+    <path fill="#314a7b" d="M223.3 211l.6.7-.7-.7z"/>
+    <path fill="#42425a" d="M224 211l.6.7-.7-.7z"/>
+    <path fill="#636b7b" d="M224.7 211l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M225.4 211l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M226 211l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M226.8 211l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M227.5 211l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M280.2 211l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M281 211l.6.7-.7-.7z"/>
+    <path fill="#9c9494" d="M281.6 211l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M282.3 211l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M283 211l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M283.8 211l.6.7-.6-.7z"/>
+    <path fill="#314a7b" d="M284.4 211l.8.7-.8-.7z"/>
+    <path fill="#00184a" d="M285.1 211l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M285.9 211l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M287 211.2l.5.3-.5-.3z"/>
+    <path fill="#184a8c" d="M292.9 211l.7.7-.7-.7z"/>
+    <path fill="#5a6b63" d="M296.4 211l.7.7-.7-.7zm1.4 0l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M299.2 211l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M300.6 211l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M302.7 211l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M205 211.7l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M205.7 211.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M220.4 211.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M221.1 211.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M221.8 211.7l-.7 1.3.7-1.3z"/>
+    <path fill="#bdbdbd" d="M286.6 211.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M287.3 211.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M288 211.7l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M295 211.7l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M295.7 211.7l.7.7-.7-.7z"/>
+    <path fill="#deb518" d="M296.4 211.7l.7.7-.7-.7z"/>
+    <path fill="#bd9c29" d="M297.8 211.7l.7.7-.7-.7z"/>
+    <path fill="#7b7b52" d="M298.5 211.7l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M302 211.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M302.7 211.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M203.6 212.3l.7.7-.8-.7z"/>
+    <path fill="#63636b" d="M204.3 212.3l.6.7-.7-.7z"/>
+    <path fill="#001039" d="M205.2 212.8l.2.5-.2-.5z"/>
+    <path fill="#00216b" d="M217.6 212.3l-.7 1.4.7-1.3z"/>
+    <path fill="#00184a" d="M218.3 212.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M219 212.3l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M220.4 212.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M286.6 212.3l.7.7-.7-.7z"/>
+    <path fill="#212139" d="M287.3 212.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M288 212.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M289 212.8l.1.5-.2-.5z"/>
+    <path fill="#184a8c" d="M296.4 212.3l.7.7-.7-.7z"/>
+    <path fill="#9c8c42" d="M297.1 212.3l.7.7-.7-.7z"/>
+    <path fill="#295284" d="M300 212.3l.6.7-.7-.7z"/>
+    <path fill="#00216b" d="M302.7 212.3l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M303.4 212.3l.8.7-.8-.7z"/>
+    <path fill="#bdbdbd" d="M304.1 212.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M202.8 213l-1.4 2 1.4-2z"/>
+    <path fill="#10214a" d="M203.6 213l-1.4 2 1.4-2z"/>
+    <path fill="#003994" d="M204.3 213c-2 2.1-5 4.5-3.6 7.4-3.7 2-4.4 6.4-5.6 10l7.7 1.4 5.7-12.7-7.8.6v-.6l7-.7-3.5-5.4z"/>
+    <path fill="#002984" d="M214.1 213l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M214.8 213l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M216 213.2l.4.3-.4-.3z"/>
+    <path fill="#002984" d="M217.6 213l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M221.1 213l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M286.6 213l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M287.3 213l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M291.5 213l.7.7-.7-.7z"/>
+    <path fill="#184a8c" d="M297.8 213l.7.7-.7-.7z"/>
+    <path fill="#395273" d="M298.5 213l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M304.1 213l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M304.9 213l2 2-2-2z"/>
+    <path fill="#00216b" d="M205 213.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M205.7 213.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M212 213.7l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M213.2 214l.4.1-.4-.2z"/>
+    <path fill="#00216b" d="M214.1 213.7l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M221.1 213.7l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M286.6 213.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M291.5 213.7l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M292.2 213.7l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M293.4 214l.4.1-.4-.2z"/>
+    <path fill="#00216b" d="M294.5 214.1l.3.5-.3-.5m10.3-.4l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M205.7 214.4l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M210.1 214.8l.2.5-.2-.5z"/>
+    <path fill="#00184a" d="M211 214.6l.5.2-.4-.2z"/>
+    <path fill="#00215a" d="M216.2 214.4l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M220.4 214.4l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M221.1 214.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M285.9 214.4l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M286.6 214.4l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M287.7 214.6l.5.2-.5-.2z"/>
+    <path fill="#00215a" d="M288.7 214.4l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M289.4 214.4l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M290 214.4l.8.6-.7-.6z"/>
+    <path fill="#00184a" d="M295.5 214.6l.4.2-.4-.2z"/>
+    <path fill="#00216b" d="M305.6 214.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M200.7 215l.7.7-.7-.7z"/>
+    <path fill="#212139" d="M201.4 215l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M205.7 215l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M206.4 215l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M209 215.3l.4.2-.5-.3z"/>
+    <path fill="#00216b" d="M214.1 215l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M214.8 215l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M215.5 215l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M220.4 215l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M221.1 215l-.7 1.4.7-1.4z"/>
+    <path fill="#7b7373" d="M285.9 215l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M286.6 215l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M287.3 215l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M290 215l.8.7-.7-.7z"/>
+    <path fill="#00184a" d="M291.3 215.3l.4.2-.4-.3z"/>
+    <path fill="#002984" d="M292.2 215l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M296.4 215l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M297.1 215l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M297.8 215l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M306.3 215l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M307 215l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M200.7 215.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M208.5 215.7l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M213.2 216l.4.1-.4-.2z"/>
+    <path fill="#002984" d="M214.1 215.7l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M219.7 215.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M287.3 215.7l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M288 215.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M292.2 215.7l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M292.9 215.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M293.6 215.7l.7.7-.7-.7z"/>
+    <path fill="#31425a" d="M307 215.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M307.7 215.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M200 216.4l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M200.7 216.4l.7.6-.7-.6m5.7 0l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M211.8 216.6l.4.2-.4-.2z"/>
+    <path fill="#00216b" d="M217.6 216.4l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M218.3 216.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M219 216.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M219.7 216.4l.7.6-.7-.6m68.3 0l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M288.7 216.4l.7.6-.7-.6z"/>
+    <path fill="#314a7b" d="M289.4 216.4l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M290 216.4l.8.6-.7-.6m3.5 0l-.7 1.3.7-1.3z"/>
+    <path fill="#001039" d="M294.3 216.4l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M295 216.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M307.7 216.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M199.3 217l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M200 217l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M207.8 217l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M210.3 217.3l.5.2-.5-.2z"/>
+    <path fill="#002984" d="M214.1 217l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M214.8 217l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M215.5 217l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M216.2 217l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M217 217l.6.7-.7-.7z"/>
+    <path fill="#cecece" d="M217.6 217l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M290 217l.8.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M290.8 217l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M291.5 217l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M292.2 217l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M293.6 217l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M294.3 217l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M295 217l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M295.7 217l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M296.4 217l.7.7-.7-.7m2.8 0l.7.7-.7-.7m8.5 0l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M308.4 217l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M199.3 217.7l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M207.8 217.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M209.2 217.7l.7.7-.7-.7m2 0l.8.7-.7-.7z"/>
+    <path fill="#21315a" d="M212 217.7l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M212.7 217.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M214.1 217.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M214.8 217.7l.7.7-.7-.7m78 0l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M293.6 217.7l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M295 217.7l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M295.7 217.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M298.5 217.7l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M308.4 217.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M198.6 218.4l.7.6-.7-.6z"/>
+    <path fill="#10295a" d="M199.3 218.4l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M205 218.4l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M209.9 218.4l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M210.6 218.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M211.3 218.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M214.1 218.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M292.2 218.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M292.9 218.4l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M295.5 218.6l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M296.4 218.4l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M297.1 218.4l.7.6-.7-.6z"/>
+    <path fill="#080829" d="M297.8 218.4l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M301.3 218.4l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M309 218.4l.8.6-.7-.6z"/>
+    <path fill="#63636b" d="M198.6 219l.7.7-.7-.6z"/>
+    <path fill="#00215a" d="M200.7 219l.7.7-.7-.6z"/>
+    <path fill="#00184a" d="M202 219.3l.4.2-.5-.2z"/>
+    <path fill="#00216b" d="M202.8 219l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M209.2 219l.7.7-.7-.6z"/>
+    <path fill="#efefef" d="M209.9 219l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M298.5 219l.7.7-.7-.6z"/>
+    <path fill="#10295a" d="M299.2 219l.7.7-.7-.6z"/>
+    <path fill="#00216b" d="M303.4 219l.8.7-.8-.6z"/>
+    <path fill="#00184a" d="M304.6 219.3l.5.2-.5-.2z"/>
+    <path fill="#002984" d="M305.8 219.5l.2.4-.2-.4z"/>
+    <path fill="#212139" d="M309 219l.8.7-.7-.6z"/>
+    <path fill="#dedede" d="M198 219.7l.6.7-.7-.7z"/>
+    <path fill="#10214a" d="M207.8 219.7l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M208.5 219.7l-.7 1.4.7-1.4m90.7 0l1.4 1.4-1.4-1.4z"/>
+    <path fill="#10214a" d="M300 219.7l.6.7-.7-.7z"/>
+    <path fill="#00184a" d="M306.3 219.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M307 219.7l2.8 2.7-2.8-2.7z"/>
+    <path fill="#002984" d="M309 219.7l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M309.8 219.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M198 220.4l.6.6-.7-.6z"/>
+    <path fill="#001039" d="M198.6 220.4l.7.6-.7-.6z"/>
+    <path fill="#10295a" d="M207 220.4l.8.6-.7-.6z"/>
+    <path fill="#101831" d="M300.6 220.4l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M309.8 220.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M197.2 221l.7.7-.7-.6z"/>
+    <path fill="#101829" d="M198 221l.6.7-.7-.6z"/>
+    <path fill="#002984" d="M206.4 221l.7.7-.7-.6z"/>
+    <path fill="#9c9494" d="M207 221l.8.7-.7-.6z"/>
+    <path fill="#cecece" d="M213.4 221l.7.7-.7-.6z"/>
+    <path fill="#bdbdbd" d="M214.1 221v.7H295l-24.6-.6H214m86.5 0l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M301.3 221l.7.7-.7-.6z"/>
+    <path fill="#00216b" d="M309.8 221l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M310.5 221l.7.7-.7-.6z"/>
+    <path fill="#424242" d="M197.2 221.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M198 221.7l.6.7-.7-.7z"/>
+    <path fill="#52525a" d="M206.4 221.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M213.4 221.7l3.5 3.4-3.5-3.4z"/>
+    <path fill="#00216b" d="M214.1 221.7l2.1 2-2.1-2z"/>
+    <path fill="#003994" d="M214.8 221.7l5.9 7.4.4 26h6.4c0-8.2 1.8-16.8-4.3-23.3l8.5 5.3-3.5-10 19.7 18.7-14.8-22.7 14 18h.8v-19.4h-33.1z"/>
+    <path fill="#00184a" d="M247.9 221.7v20.1h.7l-.7-20z"/>
+    <path fill="#631808" d="M259.8 221.7v20.1h.7l-.7-20z"/>
+    <path fill="#de2110" d="M260.5 221.7v18.8l14.8-17.4-14.8 22.7 20.4-18.7-4.2 9.3 8.4-5.3c-4.5 8.3-4.2 14.5-4.2 24h6.4l.4-26 5.9-7.4h-33z"/>
+    <path fill="#b51010" d="M293.6 221.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M294.3 221.7l-1.4 2 1.4-2z"/>
+    <path fill="#8c8c8c" d="M301.3 221.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M302 221.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M310.5 221.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M196.5 222.4l.7.7-.7-.7z"/>
+    <path fill="#000818" d="M197.2 222.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M205.7 222.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M206.4 222.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M292.9 222.4l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M302 222.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M309 222.4l.8.7-.7-.7z"/>
+    <path fill="#10214a" d="M310.5 222.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M311.2 222.4l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M196.5 223l.7.7-.7-.6z"/>
+    <path fill="#00216b" d="M197.2 223l.7.7-.7-.6z"/>
+    <path fill="#63636b" d="M205.7 223l.7.7-.7-.6z"/>
+    <path fill="#002984" d="M233.1 223l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M302 223l.7.7-.7-.6z"/>
+    <path fill="#00184a" d="M310 223.5l.2.5-.2-.5z"/>
+    <path fill="#9c9494" d="M311.2 223l.7.7-.7-.6M196 224l.3.5-.3-.4z"/>
+    <path fill="#292921" d="M196.5 223.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M205 223.7l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M205.7 223.7l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M216.2 223.7l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M233.1 223.7l.7.7-.7-.7z"/>
+    <path fill="#212139" d="M233.8 223.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#100808" d="M274.6 223.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M292.2 223.7l-4.2 4.7 4.2-4.7z"/>
+    <path fill="#efefef" d="M302 223.7l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M302.7 223.7l.7.7-.7-.7z"/>
+    <path fill="#31425a" d="M311.2 223.7l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M196.5 224.4l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M205 224.4l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M217 224.4l.6.7-.7-.7z"/>
+    <path fill="#002984" d="M233.1 224.4l.7.7-.7-.7z"/>
+    <path fill="#6b5a00" d="M233.8 224.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M273.2 224.4l.7.7-.7-.7z"/>
+    <path fill="#7b5a00" d="M273.9 224.4l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M302.7 224.4l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M311.2 224.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M311.9 224.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M195.8 225l.7.7-.7-.6z"/>
+    <path fill="#002984" d="M204.3 225l.6.7-.7-.6z"/>
+    <path fill="#9c9494" d="M205 225l.7.7-.7-.6z"/>
+    <path fill="#cecece" d="M217 225l3.4 3.4-3.5-3.3z"/>
+    <path fill="#10214a" d="M217.6 225l.7.7-.7-.6z"/>
+    <path fill="#392121" d="M233.8 225l.7.7-.7-.6z"/>
+    <path fill="#cea508" d="M234.7 225.5l.3.5-.3-.5z"/>
+    <path fill="#293129" d="M235.2 225l1.4 1.4-1.4-1.3z"/>
+    <path fill="#631808" d="M272.5 225l.7.7-.7-.6z"/>
+    <path fill="#634a00" d="M273.9 225l.7.7-.7-.6z"/>
+    <path fill="#ce2110" d="M274.6 225l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M302.7 225l.7.7-.7-.6z"/>
+    <path fill="#00216b" d="M303.4 225l.8.7-.8-.6z"/>
+    <path fill="#636b7b" d="M311.9 225l.7.7-.7-.6z"/>
+    <path fill="#42425a" d="M195.8 225.7l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M204.3 225.7l.6.7-.7-.7z"/>
+    <path fill="#10214a" d="M218.3 225.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M233.8 225.7l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M235.2 225.7l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M271.8 225.7l.7.7-.7-.7z"/>
+    <path fill="#efbd08" d="M273.2 225.7l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M273.9 225.7l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M303.4 225.7l.8.7-.8-.7z"/>
+    <path fill="#10214a" d="M311.9 225.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M195.1 226.4l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M195.8 226.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M204.3 226.4l.6.7-.7-.7z"/>
+    <path fill="#10214a" d="M219 226.4l.7.7-.7-.7z"/>
+    <path fill="#634a00" d="M234.5 226.4l.7.7-.7-.7z"/>
+    <path fill="#deb508" d="M235.2 226.4l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M236 226.4l.6.7-.7-.7z"/>
+    <path fill="#211800" d="M271.8 226.4l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M273.9 226.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M303.4 226.4l.8.7-.8-.7z"/>
+    <path fill="#002984" d="M304.1 226.4l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M311.9 226.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M312.6 226.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M195.1 227l.7.8-.7-.7z"/>
+    <path fill="#002984" d="M195.8 227l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M203.6 227l.7.8-.8-.7z"/>
+    <path fill="#cecece" d="M204.3 227l.6.8-.7-.7z"/>
+    <path fill="#10214a" d="M219.7 227l.7.8-.7-.7z"/>
+    <path fill="#00184a" d="M228.4 227.5l.2.5-.2-.5z"/>
+    <path fill="#10295a" d="M234.5 227l.7.8-.7-.7z"/>
+    <path fill="#000818" d="M235.2 227l.7.8-.7-.7z"/>
+    <path fill="#392100" d="M236 227l1.3 1.4-1.4-1.3z"/>
+    <path fill="#00184a" d="M236.6 227l.7.8-.7-.7z"/>
+    <path fill="#7b1008" d="M271 227l.8.8-.7-.7z"/>
+    <path fill="#392100" d="M271.8 227l.7.8-.7-.7z"/>
+    <path fill="#210800" d="M272.5 227l.7.8-.7-.7z"/>
+    <path fill="#5a1008" d="M273.2 227l.7.8-.7-.7z"/>
+    <path fill="#631808" d="M279.5 227l.7.8-.7-.7z"/>
+    <path fill="#ce2110" d="M280.2 227l.7.8-.7-.7z"/>
+    <path fill="#7b1008" d="M288 227l.7.8-.7-.7z"/>
+    <path fill="#00184a" d="M304.1 227l.7.8-.7-.7z"/>
+    <path fill="#7b7373" d="M312.6 227l.7.8-.7-.7z"/>
+    <path fill="#636b7b" d="M195.1 227.8l.7.6-.7-.7z"/>
+    <path fill="#21315a" d="M203.6 227.8l.7.6-.8-.7z"/>
+    <path fill="#10295a" d="M220.4 227.8l.7.6-.7-.7z"/>
+    <path fill="#102110" d="M228.9 227.8l.7.6-.7-.7z"/>
+    <path fill="#002984" d="M229.6 227.8l.7.6-.7-.7z"/>
+    <path fill="#101810" d="M236 227.8l.6.6-.7-.7z"/>
+    <path fill="#00216b" d="M237.3 227.8l.7.6-.7-.7z"/>
+    <path fill="#b51010" d="M270.4 227.8l.7.6-.7-.7z"/>
+    <path fill="#211800" d="M271.6 228l.4.2-.4-.2z"/>
+    <path fill="#b51010" d="M272.5 227.8l.7.6-.7-.7z"/>
+    <path fill="#bd2110" d="M278.1 227.8l.7.6-.7-.7z"/>
+    <path fill="#5a2908" d="M278.8 227.8l.7.6-.7-.7z"/>
+    <path fill="#310000" d="M279.5 227.8l.7.6-.7-.7z"/>
+    <path fill="#7b1008" d="M287.3 227.8l.7.6-.7-.7z"/>
+    <path fill="#42425a" d="M304.1 227.8l.7.6-.7-.7z"/>
+    <path fill="#314a7b" d="M312.6 227.8l.7.6-.7-.7z"/>
+    <path fill="#10214a" d="M195.1 228.4l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M203.6 228.4l.7.7-.8-.7z"/>
+    <path fill="#42425a" d="M220.4 228.4V256h.7c0-7.9 2.5-20.3-.7-27.5z"/>
+    <path fill="#634a00" d="M228.9 228.4l.7.7-.7-.7z"/>
+    <path fill="#8c7300" d="M229.6 228.4l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M230.3 228.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M236 228.4l.6.7-.7-.7z"/>
+    <path fill="#211800" d="M236.6 228.4l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M237.3 228.4l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M269.7 228.4l.7.7-.7-.7z"/>
+    <path fill="#311000" d="M270.4 228.4l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M271 228.4l-1.3 2 1.4-2z"/>
+    <path fill="#7b1008" d="M271.8 228.4l.7.7-.7-.7m5.6 0l.7.7-.7-.7z"/>
+    <path fill="#7b5a00" d="M278.1 228.4l.7.7-.7-.7z"/>
+    <path fill="#6b5a00" d="M278.8 228.4l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M279.5 228.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M287.3 228.4v26.8h.7c0-7.7 2.4-19.7-.7-26.8z"/>
+    <path fill="#8c8c8c" d="M304.1 228.4l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M312.6 228.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M313.3 228.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M194.4 229l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M195.1 229l.7.8-.7-.7z"/>
+    <path fill="#002984" d="M202.8 229l.7.8-.7-.7z"/>
+    <path fill="#9c9494" d="M203.6 229l.7.8-.8-.7z"/>
+    <path fill="#00215a" d="M228.9 229l.7.8-.7-.7z"/>
+    <path fill="#bd9408" d="M229.6 229l.7.8-.7-.7z"/>
+    <path fill="#cea508" d="M230.3 229l.7.8-.7-.7z"/>
+    <path fill="#293129" d="M231 229l.7.8-.7-.7z"/>
+    <path fill="#002984" d="M231.7 229l.7.8-.7-.7z"/>
+    <path fill="#00184a" d="M236.6 229l.7.8-.7-.7z"/>
+    <path fill="#392100" d="M237.3 229l1.4 1.4-1.4-1.3z"/>
+    <path fill="#101829" d="M238 229l.7.8-.7-.7z"/>
+    <path fill="#5a1008" d="M269.7 229l.7.8-.7-.7z"/>
+    <path fill="#420000" d="M271 229l.8.8-.7-.7z"/>
+    <path fill="#ce2110" d="M276 229l.7.8-.7-.7z"/>
+    <path fill="#5a2908" d="M276.7 229l.7.8-.7-.7z"/>
+    <path fill="#bd9408" d="M277.4 229l.7.8-.7-.7z"/>
+    <path fill="#efbd08" d="M278.1 229l.7.8-.7-.7z"/>
+    <path fill="#631808" d="M278.8 229l.7.8-.7-.7z"/>
+    <path fill="#cecece" d="M304.1 229l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M304.9 229l.7.8-.8-.7z"/>
+    <path fill="#8c8c8c" d="M313.3 229l.7.8-.7-.7m-118.9.7l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M202.8 229.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M203.6 229.8l.7.6-.8-.6z"/>
+    <path fill="#313918" d="M229.6 229.8l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M230.3 229.8l.7.6-.7-.6z"/>
+    <path fill="#ad8c08" d="M231 229.8l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M231.7 229.8l.7.6-.7-.6z"/>
+    <path fill="#101829" d="M237.3 229.8l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M238.7 229.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M269 229.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M271 229.8l.8.6-.7-.6z"/>
+    <path fill="#ad1810" d="M276 229.8l.7.6-.7-.6z"/>
+    <path fill="#7b5a00" d="M276.7 229.8l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M277.4 229.8l.7.6-.7-.6z"/>
+    <path fill="#634a00" d="M278.1 229.8l-.7 1.3.7-1.3z"/>
+    <path fill="#ce2110" d="M278.8 229.8l.7.6-.7-.6z"/>
+    <path fill="#10214a" d="M304.9 229.8l.7.6-.8-.6z"/>
+    <path fill="#00216b" d="M306.3 229.8l.7.6-.7-.6z"/>
+    <path fill="#525a6b" d="M313.3 229.8l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M193.7 230.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M194.4 230.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M195.1 230.4l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M195.8 230.4l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M196.5 230.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M197.2 230.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M198 230.4l.6.7-.7-.7z"/>
+    <path fill="#314a7b" d="M202.8 230.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M229.6 230.4l.7.7-.7-.7z"/>
+    <path fill="#423100" d="M230.3 230.4l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M231 230.4l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M231.7 230.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M232.4 230.4l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M238 230.4l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M238.7 230.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M239.4 230.4l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M268.3 230.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M270.4 230.4l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M275.3 230.4l-.7 1.4.7-1.4z"/>
+    <path fill="#211800" d="M276.7 230.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M278.1 230.4l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M304.9 230.4l.7.7-.8-.7z"/>
+    <path fill="#000818" d="M306.3 230.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M309.8 230.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M310.5 230.4l.7.7-.7-.7z"/>
+    <path fill="#314a7b" d="M311.2 230.4l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M311.9 230.4l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M312.6 230.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M313.3 230.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M195.1 231l.7.8-.7-.7z"/>
+    <path fill="#dedede" d="M195.8 231l.7.8-.7-.7z"/>
+    <path fill="#bdbdbd" d="M196.5 231l.7.8-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M198.6 231l.7.8-.7-.7z"/>
+    <path fill="#314a7b" d="M199.3 231l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M200 231l.7.8-.7-.7z"/>
+    <path fill="#7b7373" d="M202.8 231l.7.8-.7-.7z"/>
+    <path fill="#cecece" d="M204.3 231l.6.8-.7-.7z"/>
+    <path fill="#efefef" d="M205 231l.7.8-.7-.7z"/>
+    <path fill="#001039" d="M231 231l2.1 2-2.1-2z"/>
+    <path fill="#392100" d="M231.7 231l5 4.8-5-4.7z"/>
+    <path fill="#001010" d="M232.4 231l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M238 231l.7.8-.7-.7z"/>
+    <path fill="#392100" d="M238.7 231l2.1 2-2-2z"/>
+    <path fill="#101810" d="M239.4 231l.7.8-.7-.7z"/>
+    <path fill="#310000" d="M268.3 231l1.4 1.4-1.4-1.3z"/>
+    <path fill="#392100" d="M269 231l.7.8-.7-.7z"/>
+    <path fill="#631808" d="M269.7 231l.7.8-.7-.7z"/>
+    <path fill="#420000" d="M276.7 231l.7.8-.7-.7z"/>
+    <path fill="#ce2110" d="M277.4 231l.7.8-.7-.7m7 0l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M304.9 231l.7.8-.8-.7z"/>
+    <path fill="#001000" d="M306.3 231l.7.8-.7-.7z"/>
+    <path fill="#00216b" d="M307.7 231l.7.8-.7-.7z"/>
+    <path fill="#21315a" d="M308.4 231l.7.8-.7-.7z"/>
+    <path fill="#7b7373" d="M309 231l.8.8-.7-.7z"/>
+    <path fill="#bdbdbd" d="M311.6 231.3l.5.2-.5-.2z"/>
+    <path fill="#cecece" d="M193 231.8l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M193.7 231.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M195.8 231.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#ada5a5" d="M196.5 231.8l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M197.2 231.8l2.1 2.6-2-2.6z"/>
+    <path fill="#9c9494" d="M198 231.8l.6.6-.7-.6z"/>
+    <path fill="#efefef" d="M199 232l.6.2-.5-.2z"/>
+    <path fill="#dedede" d="M200 231.8l-.7 1.3.7-1.3z"/>
+    <path fill="#8c8c8c" d="M200.7 231.8l2.1 3.3-2-3.3z"/>
+    <path fill="#314a7b" d="M201.4 231.8l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M202.1 231.8l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M202.8 231.8l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M204.3 231.8l.6.6-.7-.6z"/>
+    <path fill="#63636b" d="M205 231.8l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M284 231.3l.7.7-.7-.7z"/>
+    <path fill="#000818" d="M224 231.8l.6.6-.7-.6z"/>
+    <path fill="#00216b" d="M224.7 231.8l.7.6-.8-.6z"/>
+    <path fill="#001010" d="M233.1 231.8l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M238.7 231.8l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M267.6 231.8l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M268.3 231.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M274.6 231.8l-1.4 2 1.4-2z"/>
+    <path fill="#392100" d="M275.3 231.8l-2.1 2.6 2.1-2.6z"/>
+    <path fill="#ce2110" d="M276.7 231.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M283 231.8l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M283.8 231.8l.6.6-.6-.6z"/>
+    <path fill="#941808" d="M284.4 231.8l.8.6-.8-.6z"/>
+    <path fill="#8c8c8c" d="M296.6 232.2l.3.5-.3-.5z"/>
+    <path fill="#dedede" d="M300 231.8l.6.6-.7-.6z"/>
+    <path fill="#7b7373" d="M300.6 231.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M304.9 231.8l.7.6-.8-.6z"/>
+    <path fill="#080829" d="M305.6 231.8l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M306.3 231.8l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M307 231.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M307.7 231.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#cecece" d="M308.4 231.8l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M310.5 231.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M311.2 231.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M193 232.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M193.7 232.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M195.8 232.4l.7.7-.7-.7m5 0l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M202 232.7l.4.2-.5-.2z"/>
+    <path fill="#cecece" d="M203.6 232.4l.7.7-.8-.7z"/>
+    <path fill="#294200" d="M204.3 232.4l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M205 232.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M205.7 232.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M224 232.4l.6.7-.7-.7z"/>
+    <path fill="#8c7300" d="M224.7 232.4l.7.7-.8-.7z"/>
+    <path fill="#392121" d="M225.4 232.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M226 232.4l.8.7-.7-.7z"/>
+    <path fill="#00184a" d="M231.7 232.4v4.7h.7l-.7-4.7z"/>
+    <path fill="#001010" d="M233.8 232.4l.7.7-.7-.7m5.6 0l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M240.8 232.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M266.9 232.4l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M266.9 233.8l2-.7-2 .7z"/>
+    <path fill="#bd2110" d="M269 232.4l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M275.3 232.4l-.7 1.4.7-1.4z"/>
+    <path fill="#6b1821" d="M276 232.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M281.6 232.4l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M282.3 232.4l1.4 1.4-1.4-1.4z"/>
+    <path fill="#8c7300" d="M283 232.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M283.8 232.4l.6.7-.6-.7z"/>
+    <path fill="#ada5a5" d="M297.1 232.4l-.7 1.4.7-1.4z"/>
+    <path fill="#101810" d="M300.6 232.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M301.3 232.4l.7.7-.7-.7m3.3.3l.5.2-.5-.3z"/>
+    <path d="M305.6 232.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M306.3 232.4l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M307 232.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M307.7 232.4l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M310.5 232.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M311.2 232.4l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M193 233.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M194.2 233.3l.4.3-.4-.3m2.8 0l.4.3-.4-.3z"/>
+    <path fill="#ada5a5" d="M199.3 233.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M200 233.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M201.4 233.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M202.8 233.1l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M203.6 233.1l.7.7-.8-.7z"/>
+    <path fill="#397b00" d="M204.3 233.1l.6.7-.7-.7z"/>
+    <path fill="#428c00" d="M205 233.1l-1.4 5.4h-.7l1.3-4.7h-.6l-.7 5.3 2.8-1.3-3.5 5.3 2.8-2-3.6 2.7-.7 3.4h.7l7-8-2 .6v-.7l2-.6v-.7h-2.7l-.7-4.7z"/>
+    <path fill="#5a6b52" d="M205.7 233.1l.7.7-.7-.7z"/>
+    <path fill="#102121" d="M224.7 233.1l.7.7-.8-.7z"/>
+    <path fill="#efbd08" d="M225.4 233.1l.7.7-.7-.7z"/>
+    <path fill="#ad8c08" d="M226 233.1l.8.7-.7-.7z"/>
+    <path fill="#102121" d="M226.8 233.1l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M227.5 233.1l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M232.4 233.1c0 5.4 3.2 7.9 7.7 10.7-.3-4.5-4.1-8-7.7-10.7z"/>
+    <path fill="#001010" d="M233.1 233.1l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M234.5 233.1l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M239.4 233.1l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M240.6 233.3l.5.3-.5-.3z"/>
+    <path fill="#002984" d="M241.5 233.1l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M266.2 233.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M267.6 233.1l-1.4 2 1.4-2z"/>
+    <path fill="#941808" d="M268.3 233.1l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M275.3 233.1l-7 10.7c3.9-2.3 9.2-5.8 7-10.7z"/>
+    <path fill="#ce2110" d="M280.2 233.1l.7.7-.7-.7z"/>
+    <path fill="#6b2908" d="M281 233.1l.6.7-.7-.7z"/>
+    <path fill="#9c7b08" d="M281.6 233.1l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M282.3 233.1l-.7 1.3.7-1.3z"/>
+    <path fill="#ce2110" d="M283.8 233.1l.6.7-.6-.7z"/>
+    <path fill="#294221" d="M300.6 233.1l1.4 1.3-1.4-1.3z"/>
+    <path fill="#8c8c8c" d="M301.3 233.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M304.6 233.3l.5.3-.5-.3z"/>
+    <path fill="#103910" d="M305.6 233.1l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M306.3 233.1l.7 14h.7l2-12h-.6l-1.4 8h-.7l-.7-10z"/>
+    <path fill="#424242" d="M307 233.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M307.7 233.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M309.8 233.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M311.2 233.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M312.6 233.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M313.3 233.1l-.7 1.3.7-1.3z"/>
+    <path fill="#ada5a5" d="M315.4 233.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M193 233.8l2.1 2-2.1-2z"/>
+    <path fill="#cecece" d="M194.4 233.8l.7 2h.7l-1.4-2z"/>
+    <path fill="#9c9494" d="M195.1 233.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M197.2 233.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M198 233.8l-.8 1.3.7-1.3z"/>
+    <path fill="#425242" d="M199.3 233.8l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M200 233.8l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M200.7 233.8l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M202.8 233.8l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M204.5 234.2l.2.5-.2-.5z"/>
+    <path fill="#295200" d="M205.7 233.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M206.4 233.8l.7.6-.7-.6z"/>
+    <path fill="#4a4208" d="M225.4 233.8l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M226 233.8l.8.6-.7-.6z"/>
+    <path fill="#bd9408" d="M226.8 233.8l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M227.5 233.8l.7.6-.7-.6z"/>
+    <path fill="#001010" d="M233.8 233.8l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M235.2 233.8l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M240.1 233.8l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M240.8 233.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#001010" d="M241.5 233.8l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M255.6 233.8l.7.6-.7-.6z"/>
+    <path fill="#420000" d="M266.2 233.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M267.6 233.8l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M272.5 233.8l.7.6-.7-.6z"/>
+    <path fill="#181000" d="M273.9 233.8l-1.4 2 1.4-2z"/>
+    <path fill="#002984" d="M274.6 233.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M280.2 233.8l.7.6-.7-.6z"/>
+    <path fill="#7b5a00" d="M281 233.8l.6.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M283 233.8l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M296.4 233.8l.7.6-.7-.6z"/>
+    <path fill="#103910" d="M297.1 233.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M297.8 233.8l.7.6-.7-.6z"/>
+    <path fill="#4a6342" d="M300.6 233.8l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M304.9 233.8l.7.6-.8-.6z"/>
+    <path fill="#185200" d="M305.6 233.8l.7.6-.7-.6z"/>
+    <path fill="#7b8c73" d="M307 233.8l.7.6-.7-.6z"/>
+    <path fill="#395231" d="M309 233.8l.8.6-.7-.6z"/>
+    <path fill="#319400" d="M309.8 233.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M313.3 233.8l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M314.7 233.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M315.4 233.8l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M193 234.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M198 234.4l.6.7-.7-.7z"/>
+    <path fill="#424242" d="M198.6 234.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.3 234.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200 234.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M200.7 234.4l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M202.8 234.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M206.4 234.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M225.4 234.4l1.4 1.4-1.4-1.4z"/>
+    <path fill="#6b5a00" d="M226 234.4l.8.7-.7-.7z"/>
+    <path fill="#211800" d="M226.8 234.4l2 1.4-2-1.4z"/>
+    <path fill="#00216b" d="M228.2 234.4l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M234.5 234.4l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M236 234.4l.6.7-.7-.7m5 0l.6.7-.7-.7z"/>
+    <path fill="#00184a" d="M242.2 234.4l.7.7-.7-.7z"/>
+    <path fill="#bd9408" d="M253.5 234.4v.7l1.4 2.7h.7l-2.1-3.4z"/>
+    <path fill="#7b1008" d="M265.5 234.4l.7.7-.7-.7z"/>
+    <path fill="#311000" d="M266.9 234.4l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M267.6 234.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M271.8 234.4l-.7 1.4.7-1.4z"/>
+    <path fill="#211800" d="M272.5 234.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M273.9 234.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M279.5 234.4l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M280.2 234.4l-1.4 2 1.4-2z"/>
+    <path fill="#181000" d="M281 234.4l.6.7-.7-.7z"/>
+    <path fill="#6b5a00" d="M281.6 234.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M282.3 234.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M296.4 234.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.1 234.4l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M297.8 234.4l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M300.6 234.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M301.3 234.4l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M302 234.4l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M304.9 234.4l.7.7-.8-.7z"/>
+    <path fill="#297b00" d="M305.6 234.4l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M307 234.4v3.4h.7l-.7-3.4z"/>
+    <path fill="#7b7373" d="M308.4 234.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M309.5 234.7l.5.2-.5-.2z"/>
+    <path fill="#63636b" d="M310.5 234.4l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M311.2 234.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M312.4 234.7l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M313.3 234.4l-.7 1.4.7-1.4z"/>
+    <path fill="#7b7373" d="M314 234.4l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M314.7 234.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M315.4 234.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M192.3 235.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M193 235.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M195.8 235.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M198 235.1l.6.7-.7-.7z"/>
+    <path fill="#001000" d="M198.6 235.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M199.3 235.1v2l2.1-.6v-.7l-2-.7z"/>
+    <path fill="#213918" d="M200.7 235.1l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202.1 235.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204 235.3l.5.3-.5-.3z"/>
+    <path fill="#8c8c8c" d="M206.4 235.1l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M226.8 235.1l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M228.9 235.1l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M234.5 235.1l2.1 2-2.1-2z"/>
+    <path fill="#181000" d="M235.2 235.1l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M236.6 235.1l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M241.5 235.1l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M242.5 235.6l.2.4-.2-.4z"/>
+    <path fill="#00216b" d="M243 235.1l.6.7-.7-.7z"/>
+    <path fill="#7b5a00" d="M252.8 235.1v2.7h.7l-.7-2.7z"/>
+    <path fill="#ffce08" d="M253.5 235.1v3.4h-2.8v2h2.8v8h.7l.7-8h3.5v-2H255V235h-1.4z"/>
+    <path fill="#b51010" d="M264.8 235.1l.6.7-.6-.7z"/>
+    <path fill="#211800" d="M266 235.3l.4.3-.5-.3z"/>
+    <path fill="#b51010" d="M266.9 235.1l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M271.8 235.1l-2.1 2.7 2-2.7z"/>
+    <path fill="#002984" d="M273.2 235.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M278.8 235.1l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M281 235.1l.6.7-.7-.7z"/>
+    <path fill="#b51010" d="M281.6 235.1l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M297.1 235.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M297.8 235.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M298.5 235.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M300.6 235.1l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M301.3 235.1l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M302 235.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M304.9 235.1l.7.7-.8-.7z"/>
+    <path fill="#395231" d="M308.4 235.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M309.8 235.1l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M310.5 235.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M311.2 235.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M311.9 235.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M313.3 235.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M314 235.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M314.7 235.1l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M193.7 235.8l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M194.4 235.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M195.6 236l.5.2-.5-.2z"/>
+    <path fill="#9c9494" d="M196.5 235.8l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M198 235.8l.6.6-.7-.6z"/>
+    <path fill="#428c00" d="M198.6 235.8c-1.9 4-1.6 6.6 0 10.7h1.4l1.4-10h-.7l-.7 8h-1.4v-8.7z"/>
+    <path fill="#313931" d="M201.4 235.8l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M203.8 236.2l.2.5-.2-.5z"/>
+    <path fill="#6b735a" d="M206.4 235.8l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M227.5 235.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#100808" d="M228.2 235.8l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M228.9 235.8l2.8 2.7-2.8-2.7z"/>
+    <path fill="#001039" d="M229.6 235.8l.7.6-.7-.6z"/>
+    <path fill="#181000" d="M236 235.8l1.3 1.3-1.4-1.3z"/>
+    <path fill="#211800" d="M236.6 235.8l2.8 3.3-2.8-3.3z"/>
+    <path fill="#00216b" d="M237.3 235.8l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M241.5 235.8l.7.6-.7-.6z"/>
+    <path fill="#181000" d="M243 235.8l.6.6-.7-.6z"/>
+    <path fill="#311000" d="M264.8 235.8l.6.6-.6-.6z"/>
+    <path fill="#392100" d="M265.5 235.8l-.7 1.3.7-1.3z"/>
+    <path fill="#7b1008" d="M266.2 235.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M270.4 235.8l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M272.5 235.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M278.1 235.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M280.2 235.8l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M297.1 235.8l.7.6-.7-.6z"/>
+    <path fill="#319400" d="M297.8 235.8l.7.6-.7-.6z"/>
+    <path fill="#103910" d="M298.5 235.8l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M299.2 235.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M300.6 235.8l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M301.3 235.8l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M302 235.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M302.7 235.8l.7.6-.7-.6z"/>
+    <path fill="#315221" d="M304.9 235.8l.7.6-.8-.6z"/>
+    <path fill="#185200" d="M308.4 235.8l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M310.5 235.8l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M311.6 236l.5.2-.5-.2z"/>
+    <path fill="#ada5a5" d="M312.6 235.8l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M313.3 235.8l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M314 235.8l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M314.7 235.8l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M198 236.4l.6.7-.7-.7z"/>
+    <path fill="#103900" d="M201.4 236.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M206.4 236.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M227.5 236.4v18.8H221v.7l7-.7v3.3h.8c0-5.7 2.3-17.4-1.4-22z"/>
+    <path fill="#001010" d="M228.9 236.4l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M238 236.4l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M242.2 236.4l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M243 236.4l1.3 1.4-1.4-1.4z"/>
+    <path fill="#101829" d="M243.7 236.4l.7.7-.8-.7z"/>
+    <path fill="#631808" d="M264 236.4l.8.7-.8-.7z"/>
+    <path fill="#420000" d="M265.5 236.4l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M269.7 236.4l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M271.8 236.4l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M276.7 236.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M277.4 236.4l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M278.1 236.4l-2 2.7 2-2.6z"/>
+    <path fill="#181000" d="M278.8 236.4l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M279.5 236.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M280.2 236.4v18.8h.7l-.7-18.7z"/>
+    <path fill="#8c8c8c" d="M297.1 236.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M298.3 236.7l.5.2-.5-.2z"/>
+    <path fill="#52525a" d="M299.2 236.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M300.6 236.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M301.3 236.4l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M302 236.4l2.9 16.8h.7a21.2 21.2 0 00-3.6-16.8z"/>
+    <path fill="#63636b" d="M302.7 236.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M304.1 236.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M304.9 236.4l.7.7-.8-.7z"/>
+    <path fill="#297b00" d="M308.4 236.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M309.8 236.4l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M312.6 236.4l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M313.3 236.4l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M314 236.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M196.5 237.1l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M197.2 237.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.6 237.6l.2.4-.2-.4z"/>
+    <path fill="#294200" d="M201.4 237.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.3 237.3l.5.3-.5-.3z"/>
+    <path fill="#294200" d="M205.7 237.1l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M206.8 237.3l.5.3-.5-.3z"/>
+    <path fill="#294200" d="M207.8 237.1l.7.7-.7-.7z"/>
+    <path fill="#8c8442" d="M208.5 237.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M209.2 237.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M209.9 237.1l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M228.9 237.1c0 5-2.5 18.3.7 22.3 1.4 1.8 4.9 2 7 2.5 0-10.3 2-18.4-7.7-24.8z"/>
+    <path fill="#101829" d="M229.6 237.1l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M231 237.1l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M231.7 237.1l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M236.6 237.1l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M243 237.1l.6.7-.7-.7z"/>
+    <path fill="#00184a" d="M244.3 237.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M263.4 237.1l.7.7-.8-.7z"/>
+    <path fill="#211800" d="M263.4 238.5l2-1.4-2 1.4z"/>
+    <path fill="#ce2110" d="M265.5 237.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M269 237.1l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M271 237.1l.8.7-.7-.7z"/>
+    <path fill="#5a1831" d="M276 237.1l.7.7-.7-.7z"/>
+    <path fill="#311000" d="M276.7 237.1l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M278.1 237.1l.7.7-.7-.7z"/>
+    <path fill="#003994" d="M271.8 261.9c2.3-.6 5.6-.8 7.3-2.5 3.6-3.6 1.1-17.4 1.1-22.3-11 4.9-8.4 15-8.4 24.8z"/>
+    <path fill="#dedede" d="M297.1 237.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.8 237.1l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M298.5 237.1l5.6 21.4h-.7c-1-3.7-5.5-18-11.2-12.7 7.5.3 10 13.1 11.2 18.8h.7l9.2-26.8h-.7l-7 17.4h-.8c-1.9-5.7-1.7-13.7-6.3-18z"/>
+    <path fill="#296300" d="M299.2 237.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M300 237.1l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M300.6 237.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M301.3 237.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302.7 237.1l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M303.4 237.1l.8.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M304.1 237.1l-.7 1.4.8-1.4z"/>
+    <path fill="#297b00" d="M304.9 237.1l.7.7-.8-.7z"/>
+    <path fill="#395231" d="M307.7 237.1l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M309.8 237.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M311.9 237.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M313 237.3l.5.3-.4-.3z"/>
+    <path fill="#8c8c8c" d="M314 237.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M196.5 237.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M201.4 237.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202.8 237.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204.3 237.8l-2.9.7v.6l2.8-1.3z"/>
+    <path fill="#103900" d="M205 237.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M208.7 238.2l.2.5-.2-.5z"/>
+    <path fill="#428c00" d="M209.2 237.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M209.9 237.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M210.6 237.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M230.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M231.7 237.8l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M232.4 237.8l1.4 1.3-1.4-1.3m5 0l.6.7-.7-.7z"/>
+    <path fill="#181000" d="M238.7 237.8l2.1 2-2-2z"/>
+    <path fill="#002984" d="M239.4 237.8l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M244.1 238l.5.2-.5-.2z"/>
+    <path fill="#002984" d="M245 237.8l.8.7-.7-.7z"/>
+    <path fill="#dedede" d="M249.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#ada584" d="M250 237.8l.7.7-.7-.7z"/>
+    <path fill="#9c7b08" d="M252.8 237.8l.7.7-.7-.7z"/>
+    <path fill="#cea508" d="M254.9 237.8l.7.7-.7-.7z"/>
+    <path fill="#9c9463" d="M255.6 237.8l.7.7-.7-.7z"/>
+    <path fill="#bdb584" d="M256.3 237.8v.7h2.1l-2-.7z"/>
+    <path fill="#bdbdbd" d="M258.4 237.8l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M262.6 237.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M264.8 237.8l.6.7-.6-.7z"/>
+    <path fill="#bd2110" d="M268.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M269 237.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M269.7 237.8l-1.4 2 1.4-2z"/>
+    <path fill="#00184a" d="M270.4 237.8l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M275.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M276 237.8l.7.7-.7-.7z"/>
+    <path fill="#101829" d="M277.4 237.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M294.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M295 237.8l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M297.8 237.8l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M300 237.8l.6.7-.7-.7z"/>
+    <path fill="#efefef" d="M300.6 237.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M301.3 237.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M302.7 237.8l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M304.1 237.8l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M307 237.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M307.7 237.8l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M309.8 237.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M311.2 237.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M311.9 237.8l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M314 237.8l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M196.5 238.5l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M199.3 238.5v2h.7l-.7-2m5 0l.6.6-.7-.6m3.3.2l.5.2-.5-.2z"/>
+    <path fill="#214210" d="M209.2 238.5l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M209.9 238.5l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M231 238.5l.7.6-.7-.6z"/>
+    <path fill="#211800" d="M231.7 238.5v.6l2.1.7-2.1-1.3z"/>
+    <path fill="#00216b" d="M238 238.5l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M240.1 238.5l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M243.7 238.5l.7.6-.8-.6z"/>
+    <path fill="#392100" d="M244.3 238.5l2.2 2-2.1-2z"/>
+    <path fill="#101810" d="M245 238.5l.8.6-.7-.6z"/>
+    <path fill="#bd9408" d="M250 238.5v2h.7l-.7-2z"/>
+    <path fill="#310000" d="M262.6 238.5l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M263.4 238.5l-.7 1.3.7-1.3z"/>
+    <path fill="#631808" d="M264 238.5l.8.6-.8-.6z"/>
+    <path fill="#ce2110" d="M267.6 238.5l-.7 1.3.7-1.3z"/>
+    <path fill="#311000" d="M268.3 238.5l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M269.7 238.5l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M274.6 238.5l-.7 1.3.7-1.3z"/>
+    <path fill="#181000" d="M275.3 238.5l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M276.7 238.5l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M295 238.5l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M295.7 238.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M297.8 238.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M300 238.5l.6.6-.7-.6z"/>
+    <path fill="#7b7373" d="M300.6 238.5l.7.6-.7-.6z"/>
+    <path fill="#315221" d="M301.3 238.5l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M303.4 238.5l.8.6-.8-.6z"/>
+    <path fill="#103900" d="M304.1 238.5l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M307 238.5v4h.7l-.7-4z"/>
+    <path fill="#297b00" d="M307.7 238.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M309.8 238.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M311.2 238.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M311.9 238.5l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M313.3 238.5l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M196.5 239.1l.7.7-.7-.7m5.6 0l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M206.4 239.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M207 239.1l.8.7-.7-.7z"/>
+    <path fill="#294200" d="M208.5 239.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M209.2 239.1l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M231.7 239.1l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M233.8 239.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#00184a" d="M238.7 239.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M239.4 239.1l5.7 5.4-5.7-5.4z"/>
+    <path fill="#001039" d="M244.3 239.1l.7.7-.7-.7m1.4 0l.8.7-.7-.7z"/>
+    <path fill="#631808" d="M262 239.1l.6.7-.7-.7z"/>
+    <path fill="#311000" d="M263.4 239.1l.7.7-.8-.7m4.3 0l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M269 239.1l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M273.9 240.5l2.1-.7-2.1.7z"/>
+    <path fill="#00215a" d="M276 239.1l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295 239.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M295.7 239.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M297.8 239.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M298.5 239.1l.7.7-.7-.7z"/>
+    <path fill="#295210" d="M300.6 239.1l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M301.3 239.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 239.1l.8.7-.8-.7z"/>
+    <path fill="#185200" d="M304.1 239.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M309 239.1l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M309.8 239.1l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M310.5 239.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M311.2 239.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M312.6 239.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M313.3 239.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M195.8 239.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M196.5 239.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M202.1 239.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M202.8 239.8l-.7 2h.8v-2m2.8 0l-.7 1.3.7-1.3z"/>
+    <path fill="#397b00" d="M207.8 239.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M208.5 239.8l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M232.4 239.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M233.8 239.8l2.8 2.7-2.8-2.7z"/>
+    <path fill="#001039" d="M239.4 239.8l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M240.8 239.8l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M245 239.8l.8.7-.7-.7z"/>
+    <path fill="#00216b" d="M246.5 239.8l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M261.2 239.8l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M261.2 241.1l2.2-.6-2.2.6z"/>
+    <path fill="#bd2110" d="M263.4 239.8l.7.7-.8-.7z"/>
+    <path fill="#310000" d="M266.9 239.8l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M267.6 239.8l.7.7-.7-.7z"/>
+    <path fill="#101829" d="M268.3 239.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M273.2 239.8l-.7 1.3.7-1.3z"/>
+    <path fill="#181000" d="M274.6 239.8l-.7 1.3.7-1.3z"/>
+    <path fill="#00216b" d="M275.3 239.8l.7.7-.7-.7z"/>
+    <path fill="#426331" d="M295 239.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M295.7 239.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M296.4 239.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M298.5 239.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 239.8l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M301.3 239.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.1 239.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M309 239.8l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M309.8 239.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M310.5 239.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.2 239.8l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M312.6 239.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M196 241l.3.4-.3-.5z"/>
+    <path fill="#295200" d="M199.3 240.5l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M201.7 241l.2.4-.2-.5m1.1-.4l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M207.8 240.5l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M211.3 240.5l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M212 240.5l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M217.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M218.3 240.5l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M219 240.5l.7.6-.7-.6z"/>
+    <path fill="#001010" d="M233.8 240.5l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M240.1 240.5l.7.6-.7-.6z"/>
+    <path fill="#001010" d="M241.5 240.5l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M245 240.5l.8.6-.7-.6z"/>
+    <path fill="#211800" d="M246.2 240.7l.5.2-.5-.2z"/>
+    <path fill="#dedede" d="M249.3 240.5l.7.6-.7-.6z"/>
+    <path fill="#ada584" d="M250 240.5l.7.6-.7-.6z"/>
+    <path fill="#9c7b08" d="M252.8 240.5l.7.6-.7-.6z"/>
+    <path fill="#cea508" d="M254.9 240.5l.7.6-.7-.6z"/>
+    <path fill="#9c9463" d="M255.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M258.4 240.5l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M260.5 240.5l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M262 240.5l-1.5 2 1.4-2z"/>
+    <path fill="#941808" d="M262.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M266.2 240.5l-1.4 2 1.4-2z"/>
+    <path fill="#392100" d="M266.9 240.5l-1.4 2 1.4-2z"/>
+    <path fill="#001010" d="M267.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M273.2 240.5L271 243l2-2.6z"/>
+    <path fill="#002984" d="M274.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#4a6342" d="M295 240.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M295.7 240.5l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M296.4 240.5l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M298.5 240.5l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M301.3 240.5l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M304.1 240.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M304.9 240.5l-.7 1.3.7-1.3z"/>
+    <path fill="#185200" d="M309 240.5l.8.6-.7-.6z"/>
+    <path fill="#dedede" d="M309.8 240.5l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M310.5 240.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M311.9 240.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M312.6 240.5l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M314.7 240.5l.7.6-.7-.6z"/>
+    <path fill="#294221" d="M315.4 240.5l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M316.1 240.5l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M316.8 240.5l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M198.6 241.1v3.4h1.4V241h-1.4z"/>
+    <path fill="#103900" d="M204.3 241.1l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M207 241.1l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M207.8 241.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M210.6 241.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M211.3 241.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#425242" d="M212 241.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M216.2 241.1l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M217 241.1l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M217.6 241.1l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M218.3 241.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M219 241.1l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M234.5 241.1l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M236 241.1l1.3 1.4-1.4-1.4z"/>
+    <path fill="#002984" d="M236.6 241.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M240.8 241.1l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M242.2 241.1l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M245.8 241.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M246.5 241.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#001010" d="M247.2 241.1l.7.7-.7-.7z"/>
+    <path fill="#7b5a00" d="M252.8 241.1v7.4h.7l-.7-7.4z"/>
+    <path fill="#420000" d="M260.5 241.1l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M262 241.1l.6.7-.7-.7z"/>
+    <path fill="#313931" d="M266.9 241.1l.7.7-.7-.7z"/>
+    <path fill="#314a7b" d="M267.6 241.1l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M271.8 241.1l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M295 241.1l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M295.7 241.1l3.5 6h.7l-4.2-6z"/>
+    <path fill="#296300" d="M296.4 241.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M297.1 241.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M298.5 241.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M299.2 241.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M301.3 241.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#297b00" d="M302 241.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M304.9 241.1l.7.7-.8-.7z"/>
+    <path fill="#214210" d="M309 241.1l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M309.8 241.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M310.5 241.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M311.9 241.1l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M312.6 241.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M314 241.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314.7 241.1l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M311.2 245.8l7-2-1.4-2.7-5.6 4.7z"/>
+    <path fill="#214210" d="M316.8 241.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M317.5 241.1l.7.7-.7-.7m-121.7.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M196.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M201.7 242.3l.2.4-.2-.5m1.8-.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204.3 241.8l.6.7-.7-.7z"/>
+    <path fill="#425242" d="M207 241.8l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M210.6 241.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M211.3 241.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M212.7 241.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M215.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M216.2 241.8l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M214.1 251.8h-.7v-7.3h-.7l-.7 3.3h-.7v-3.3h-.7l-4.2 15.4h.7l1.4-2.7h.7l-1.4 3.4h.7l3.5-4.7-2.8 6h.7l7-10 1.4-10c-4.6 2-4.2 5.6-4.2 10z"/>
+    <path fill="#63636b" d="M218.3 241.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M235.2 241.8l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M237.3 241.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#efefef" d="M240.8 241.8l2.1 2-2-2z"/>
+    <path fill="#313931" d="M241.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M243 241.8l.6.7-.7-.7z"/>
+    <path fill="#101829" d="M246.5 241.8l.7.7-.7-.7z"/>
+    <path d="M247.9 241.8l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M259.8 241.8l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M262 241.8l.6.7-.7-.7z"/>
+    <path fill="#292921" d="M266.2 241.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M266.9 241.8l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M270.4 241.8l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M271 241.8l.8.7-.7-.7z"/>
+    <path fill="#001039" d="M272.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M295.2 242.3l.3.4-.3-.5z"/>
+    <path fill="#297b00" d="M295.7 241.8l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M297.1 241.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M297.8 241.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M298.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M299.2 241.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M301.3 241.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.9 241.8l.7.7-.8-.7z"/>
+    <path fill="#294221" d="M309 241.8l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M309.8 241.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M311.9 241.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M313.3 241.8l-1.4 2 1.4-2z"/>
+    <path fill="#297b00" d="M314 241.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M317.5 241.8l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M196.5 242.5l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M202.8 242.5l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M203.6 242.5l.7.6-.8-.6z"/>
+    <path fill="#314231" d="M206.4 242.5l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M207 242.5l-.6 1.3.7-1.3z"/>
+    <path fill="#7b7373" d="M210.6 242.5l.7.6-.7-.6z"/>
+    <path fill="#428c00" d="M211.8 242.7l.4.2-.4-.2z"/>
+    <path fill="#7b7373" d="M212.7 242.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M214.8 242.5l-.7 1.3.7-1.3z"/>
+    <path fill="#397b00" d="M215.5 242.5l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M218.3 242.5l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M236 242.5l.6.6-.7-.6z"/>
+    <path fill="#211800" d="M237 242.7l.6.2-.5-.2z"/>
+    <path fill="#313931" d="M242.2 242.5l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M243.7 242.5l.7.6-.8-.6z"/>
+    <path fill="#181000" d="M247.2 242.5l.7.6-.7-.6z"/>
+    <path fill="#211800" d="M248.1 243l.2.4-.2-.5z"/>
+    <path fill="#bdbdbd" d="M248.6 242.5l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M259.1 242.5l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M261.2 242.5l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M264 242.5l-1.3 2 1.4-2z"/>
+    <path fill="#211800" d="M264.8 242.5l-3.6 4 3.6-4z"/>
+    <path fill="#212118" d="M265.5 242.5l-.7 1.3.7-1.3z"/>
+    <path fill="#cecece" d="M266.2 242.5l-1.4 2 1.4-2z"/>
+    <path fill="#00216b" d="M269.7 242.5l-.7 1.3.7-1.3z"/>
+    <path fill="#181000" d="M270.4 242.5l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M271.8 242.5l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M293.6 242.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M294.3 242.5l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M295.7 242.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M297.1 242.5l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M297.8 242.5l.7.6-.7-.6z"/>
+    <path fill="#395231" d="M299.2 242.5l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M302 242.5v2h.7l-.7-2z"/>
+    <path fill="#296300" d="M305.3 242.7l.5.2-.5-.2m1.7-.2l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M309 242.5l.8.6-.7-.6z"/>
+    <path fill="#297b00" d="M309.8 242.5l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M311.9 242.5l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M313.3 242.5l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M317.5 242.5l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M318.2 242.5l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M196.5 243.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M200.7 243.1v.7h2.1l-2-.7z"/>
+    <path fill="#294200" d="M202.8 243.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M205 243.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M205.7 243.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M209.9 243.1l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M210.6 243.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M210.6 243.8v.7l2 .6v-2l-2 .7z"/>
+    <path fill="#5a5231" d="M212.7 243.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.8 243.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M217.4 243.4l.4.2-.4-.2z"/>
+    <path fill="#dedede" d="M218.3 243.1l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M236.6 243.1l.7.7-.7-.7z"/>
+    <path fill="#212118" d="M237.3 243.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M238 243.1l2.8 2.7-2.8-2.7z"/>
+    <path fill="#001039" d="M238.7 243.1l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M243 243.1l.6.7-.7-.7z"/>
+    <path fill="#001039" d="M244.3 243.1l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M247.2 243.1l.7.7-.7-.7z"/>
+    <path fill="#211810" d="M248.6 243.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M249.3 243.1l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M259.1 243.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M259.8 243.1l-.7 1.4.7-1.4z"/>
+    <path fill="#631808" d="M260.5 243.1l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M270.1 243.4l.5.2-.5-.2z"/>
+    <path fill="#313931" d="M271 243.1l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M292.9 243.1l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M293.6 243.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 243.1l.7.7-.7-.7z"/>
+    <path fill="#295210" d="M295 243.1l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295.7 243.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M297.8 243.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M298.5 243.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#8c8c8c" d="M299.2 243.1l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M305.6 243.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M308.4 243.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#184a00" d="M309 243.1l.8.7-.7-.7z"/>
+    <path fill="#214210" d="M311.2 243.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M312.6 243.1l.7.7-.7-.7m1.4 0l-4.2 2.7v.7l1.4.7 2.8-4z"/>
+    <path fill="#214210" d="M314.7 243.1l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M315.4 243.1l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M316.1 243.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M316.8 243.1l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M318.2 243.1l-.7 1.4.7-1.4z"/>
+    <path fill="#bdbdbd" d="M196.5 243.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M197.2 243.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M200.7 243.8l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.6 243.8l-.7 1.3.7-1.3z"/>
+    <path fill="#5a5231" d="M204.3 243.8l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M205 243.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M209.9 243.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M212.7 243.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#52525a" d="M213.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.1 243.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M216.4 244.3l.3.4-.3-.4m1.2-.5v4.7h.7l-.7-4.7z"/>
+    <path fill="#8c8c8c" fill-opacity=".5" d="M236.6 243.8v18h.7l-.7-18z"/>
+    <path fill="#cecece" d="M237.3 243.8l.7.7-.7-.7z"/>
+    <path fill="#211810" d="M238 243.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M239.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M243 243.8l2 2-2-2z"/>
+    <path fill="#212118" d="M243.7 243.8l.7.7-.8-.7z"/>
+    <path fill="#00215a" d="M245 243.8l.8.7-.7-.7z"/>
+    <path fill="#001039" d="M247.9 243.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M248.6 243.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#424242" d="M249.3 243.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M258.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M259.8 243.8l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M268.3 243.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M269 243.8l-2.1 2.7 2-2.7z"/>
+    <path fill="#212118" d="M269.7 243.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M270.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M271 243.8v18h.8l-.7-18m21 0l.8.7-.7-.7z"/>
+    <path fill="#296300" d="M292.9 243.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M295.7 243.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M296.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M298.5 243.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M300 243.8l.6.7-.7-.7z"/>
+    <path fill="#184a00" d="M305.6 243.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M306.3 243.8l-.7 1.3.7-1.3z"/>
+    <path fill="#185200" d="M308.4 243.8l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M314 243.8l-1.4 2 1.4-2z"/>
+    <path fill="#efefef" d="M314.7 243.8l-2.1 2.7 2.1-2.7z"/>
+    <path fill="#bdbdbd" d="M316.8 243.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M318.2 243.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M319 243.8l.6.7-.7-.7z"/>
+    <path fill="#63636b" d="M197.2 244.5l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M200.7 244.5l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M201.4 244.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M203.6 244.5l-.7 1.3.7-1.3z"/>
+    <path fill="#7b7373" d="M204.3 244.5l.6.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M205 244.5l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M205.7 244.5l.7.6-.7-.6m3.5 0l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M209.9 244.5l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M238 244.5l1.4 1.3-1.4-1.3z"/>
+    <path fill="#313931" d="M238.7 244.5l.7.6-.7-.6z"/>
+    <path d="M240.1 244.5l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M240.8 244.5l.7.6-.7-.6z"/>
+    <path fill="#212118" d="M244.3 244.5l1.4 1.3-1.3-1.3z"/>
+    <path fill="#211800" d="M245 244.5l2.9 3.3-2.8-3.3z"/>
+    <path fill="#00216b" d="M245.8 244.5l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M247.9 244.5v2h.7l-.7-2z"/>
+    <path fill="#313931" d="M248.6 244.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M250 244.5l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M257.7 244.5l.7.6-.7-.6z"/>
+    <path fill="#211800" d="M258.7 245l.2.4-.2-.5z"/>
+    <path fill="#211810" d="M259.1 244.5l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M262 244.5l.6.6-.7-.6z"/>
+    <path fill="#9c9494" d="M264 244.5l-1.3 2 1.4-2z"/>
+    <path fill="#efefef" d="M266.9 244.5l-.7 1.3.7-1.3z"/>
+    <path fill="#292921" d="M267.6 244.5l.7.6-.7-.6z"/>
+    <path fill="#211810" d="M269 244.5l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M269.7 244.5l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M291.5 244.5l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M292.2 244.5l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M296.4 244.5l2.1 2-2-2z"/>
+    <path fill="#297b00" d="M297.1 244.5l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M299.2 244.5l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M300 244.5l.6.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M302.7 244.5l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M306.3 244.5l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M308.4 244.5l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M310.5 244.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M318.2 244.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M319 244.5l.6.6-.7-.6z"/>
+    <path fill="#dedede" d="M197.2 245.2l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M198 245.2l.6.6-.7-.7z"/>
+    <path fill="#397b00" d="M200.5 245.4l.5.2-.5-.2z"/>
+    <path fill="#295200" d="M202.1 245.2l.7.6-.7-.7z"/>
+    <path fill="#6b735a" d="M204.3 245.2l.6.6-.7-.7z"/>
+    <path fill="#295200" d="M205 245.2l.7.6-.7-.7z"/>
+    <path fill="#396b10" d="M205.7 245.2l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M206.4 245.2l.7.6-.7-.7z"/>
+    <path fill="#efefef" d="M207 245.2l.8.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M209.2 245.2l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M211.3 245.2l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M213.4 245.2v6h.7l-.7-6z"/>
+    <path fill="#397b00" d="M216 245.4l.4.2-.4-.2z"/>
+    <path fill="#52525a" d="M239.4 245.2l.7.6-.7-.7z"/>
+    <path fill="#211810" d="M240.8 245.2l.7.6-.7-.7z"/>
+    <path fill="#cecece" d="M241.5 245.2l.7.6-.7-.7z"/>
+    <path fill="#00216b" d="M246.5 245.2l.7.6-.7-.7z"/>
+    <path fill="#cecece" d="M248.6 245.2l.7.6-.7-.7z"/>
+    <path fill="#392121" d="M249.3 245.2l.7.6-.7-.7z"/>
+    <path fill="#211800" d="M250 245.2l.7.6-.7-.7z"/>
+    <path fill="#cecece" d="M250.7 245.2l.7.6-.7-.7z"/>
+    <path fill="#efefef" d="M257 245.2l.7.6-.7-.7z"/>
+    <path fill="#211810" d="M257.7 245.2l.7.6-.7-.7z"/>
+    <path fill="#ada5a5" d="M259.1 245.2l.7.6-.7-.7z"/>
+    <path fill="#b51010" d="M261.2 245.2l.7.6-.7-.7z"/>
+    <path fill="#313931" d="M266.9 245.2l.7.6-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M269 245.2l-.7 1.3.7-1.3z"/>
+    <path fill="#294221" d="M291.5 245.2l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M292.9 245.2l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M293.6 245.2l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M294.3 245.2l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M297.8 245.2l.7.6-.7-.7z"/>
+    <path fill="#296300" d="M299.2 245.2l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M300 245.2l.6.6-.7-.7z"/>
+    <path fill="#296300" d="M302.5 245.4l.5.2-.5-.2z"/>
+    <path fill="#184a00" d="M306.3 245.2l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M307.7 245.2l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M308.4 245.2l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M310.5 245.2l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M315 245.6l.2.5-.3-.5z"/>
+    <path fill="#63636b" d="M198 245.8l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M200.3 246.3l.2.4-.2-.4z"/>
+    <path fill="#8c8c8c" d="M202.1 245.8l.7.7-.7-.7m2.4.5l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M205.4 246l.5.3-.5-.3z"/>
+    <path fill="#428c00" d="M206.4 245.8l.7 6h.7l-1.4-6z"/>
+    <path fill="#315221" d="M207 245.8l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M207.8 245.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M208.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M240.1 245.8l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M240.8 245.8l2.1 1.4v-.7l-2-.7z"/>
+    <path fill="#212118" d="M241.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M245 245.8l.8.7-.7-.7z"/>
+    <path fill="#002984" d="M247.2 245.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M249.3 245.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M250 245.8l2 2-2-2z"/>
+    <path fill="#313931" d="M250.7 245.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M251.4 245.8l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M257 245.8l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M257.7 245.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M258.4 245.8l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M260.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M265.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#211810" d="M266.2 245.8l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M267.6 245.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M290.8 245.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M291.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M292.2 245.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M292.9 245.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M293.6 245.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M294.3 245.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M295 245.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.1 245.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300 245.8l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M302 245.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302.7 245.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M306.3 245.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M307.7 245.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M310.5 245.8l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M311.9 245.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M313.3 245.8l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M314 245.8l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M195.1 246.5l1.4 1.3-1.4-1.3z"/>
+    <path fill="#dedede" d="M195.8 246.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M198 246.5l.6.7-.7-.7z"/>
+    <path fill="#292100" d="M198.6 246.5l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.3 246.5l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M201.4 246.5l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M205 246.5c-.2 3.6-1 6.7 2.8 8.7l-2.8-8.7z"/>
+    <path fill="#294200" d="M205.9 247l.2.4-.2-.5z"/>
+    <path fill="#214210" d="M207.8 246.5l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M208.5 246.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M240.8 246.5l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M245.8 246.5l.7.7-.7-.7z"/>
+    <path fill="#181000" d="M247.2 246.5l1.4 1.3-1.4-1.3z"/>
+    <path fill="#001039" d="M247.9 246.5l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M250 246.5l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M251.4 246.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M256.3 246.5l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M257 246.5l.7.7-.7-.7z"/>
+    <path d="M257.7 246.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M258.4 246.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M259.1 246.5l-.7 2 .7-2z"/>
+    <path fill="#5a1008" d="M259.8 246.5l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M260.5 246.5l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M261.2 246.5l-.7 1.3.7-1.3z"/>
+    <path fill="#63636b" d="M262 246.5l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M264.8 246.5l.6.7-.6-.7z"/>
+    <path fill="#212118" d="M265.5 246.5l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M266.2 246.5l-1.4 2 1.4-2z"/>
+    <path fill="#63636b" d="M266.9 246.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M290 246.5l.8.7-.7-.7z"/>
+    <path fill="#214210" d="M291.3 246.7l.4.2-.4-.2z"/>
+    <path fill="#9c9494" d="M292.2 246.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M295 246.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M295.7 246.5l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M298.5 246.5l.7.7-.7-.7m1.4 0l1.4 1.3-1.4-1.3z"/>
+    <path fill="#297b00" d="M300.6 246.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302.7 246.5l.7.7-.7-.7m3.6 0l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M307.7 246.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M309.8 246.5l1.4 1.3-1.4-1.3z"/>
+    <path fill="#214210" d="M311.2 246.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M311.9 246.5l-.7 1.3.7-1.3z"/>
+    <path fill="#9c9494" d="M312.6 246.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M313.3 246.5l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M314 246.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M317.5 246.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M318.2 246.5l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M195.1 247.2l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M196.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#5a1010" d="M198 247.2l.6.6-.7-.6z"/>
+    <path fill="#ce2110" d="M198.6 247.2l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M199.3 247.2l.7.6-.7-.6z"/>
+    <path fill="#311000" d="M200 247.2l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M200.7 247.2l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M201.4 247.2l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M204.3 247.2l.6.6-.7-.6z"/>
+    <path fill="#295200" d="M208.5 247.2l-.7 1.3.7-1.3m2.8 0l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M241.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#212118" d="M242.2 247.2l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M243 247.2l2.7 2.6-2.8-2.6z"/>
+    <path fill="#63636b" d="M243.7 247.2l.7.6-.8-.6z"/>
+    <path fill="#bdbdbd" d="M246 247.6l.2.5-.2-.5z"/>
+    <path fill="#520808" d="M246.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M248.6 247.2l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M250 247.2l.7.6-.7-.6z"/>
+    <path fill="#392121" d="M250.7 247.2l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M252 247.2l.8.6-.7-.6z"/>
+    <path fill="#9c7b08" d="M254.9 247.2l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M255.6 247.2l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M256.3 247.2l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M257 247.2l.7.6-.7-.6z"/>
+    <path d="M259.8 247.2l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M262.2 247.6l.2.5-.2-.5z"/>
+    <path fill="#9c9494" d="M264 247.2l.8.6-.8-.6m2.2 0l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M290 247.2l.8.6-.7-.6z"/>
+    <path fill="#425242" d="M290.8 247.2l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M291.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M295.7 247.2l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M296.4 247.2l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M298.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M298.5 248.5l2.1-.7-2 .7z"/>
+    <path fill="#103900" d="M302.7 247.2l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M306.3 247.2v2h.7l-.7-2m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M309.8 247.2l-.7 2 .7-2z"/>
+    <path fill="#8c8c8c" d="M311.9 247.2l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M312.6 247.2l-.7 1.3.7-1.3z"/>
+    <path fill="#296300" d="M313.3 247.2l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M314 247.2l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M316.1 247.2l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M316.8 247.2l.7.6-.7-.6z"/>
+    <path fill="#313931" d="M317.5 247.2l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M318.2 247.2l-1.4 2 1.4-2z"/>
+    <path fill="#295200" d="M195.1 247.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M195.8 247.8l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M196.5 247.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M197.2 247.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M198 247.8l.6.7-.7-.7z"/>
+    <path fill="#941808" d="M200 247.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M200.7 247.8l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M204.3 247.8l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M206.1 248l.5.3-.5-.3m2.4-.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M210.6 247.8l.7.7-.7-.7z"/>
+    <path fill="#524242" d="M242.2 247.8l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M243 247.8l.6.7-.7-.7z"/>
+    <path fill="#424242" d="M244.3 247.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M245 247.8l.8.7-.7-.7z"/>
+    <path fill="#ad1810" d="M246.7 248.3l.2.4-.2-.4z"/>
+    <path fill="#5a1008" d="M247.2 247.8l1.4 1.4-1.4-1.4z"/>
+    <path fill="#392100" d="M247.9 247.8l1.4 1.4-1.4-1.4z"/>
+    <path fill="#211810" d="M248.6 247.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M249.3 247.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250.7 247.8l-.7 1.4.7-1.4z"/>
+    <path fill="#211800" d="M251.4 247.8l.7.7-.7-.7z"/>
+    <path fill="#212118" d="M252 247.8l.8.7-.7-.7z"/>
+    <path fill="#6b5a10" d="M254.2 247.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M254.9 247.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M256.3 247.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M257 247.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M257.7 247.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M259.1 247.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M259.8 247.8l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M261.5 248.3l.2.4-.2-.4z"/>
+    <path fill="#63636b" d="M263.4 247.8l.7.7-.8-.7z"/>
+    <path fill="#392100" d="M264 247.8l-2 2.7 2-2.7z"/>
+    <path fill="#524242" d="M265.5 247.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M290 247.8l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M293.6 247.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M294.3 247.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M295.7 247.8l-.7 1.4.7-1.4z"/>
+    <path fill="#214210" d="M296.4 247.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M299.2 247.8l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M300 247.8l.6.7-.7-.7z"/>
+    <path fill="#103900" d="M300.6 247.8l-.7 2 .7-2z"/>
+    <path fill="#184a00" d="M302.7 247.8l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M307 247.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M309 247.8l.8.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M310.7 248.3l.2.4-.2-.4z"/>
+    <path fill="#63636b" d="M311.2 247.8l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M312.6 247.8l-5 7.4 5-7.4z"/>
+    <path fill="#294221" d="M313.3 247.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M314.7 247.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M315.4 247.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M316.1 247.8l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M316.8 247.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M195.1 248.5v1.3l1.4-1.3h-1.4z"/>
+    <path fill="#428c00" d="M196.5 248.5l1.4 2.7-2-1.4c.6 2.7 1.3 4.4 4.1 5.4v.7l-2.8-.7 1.4 2-2-.7 6.2 6 .7-2.6 2.2 1.3-4.3-4v-.7l2.1.7a12.3 12.3 0 00-7-8.7z"/>
+    <path fill="#294200" d="M197.2 248.5l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M198 248.5l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M198.6 248.5l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M200 248.5l1.4 1.3-1.4-1.3z"/>
+    <path fill="#7b7373" d="M200.7 248.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M201.4 248.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M204.3 248.5l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M206.4 248.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M207.8 248.5v6h.7l-.7-6m3 .5l.3.4-.3-.5z"/>
+    <path fill="#295200" d="M215.5 248.5l.7.7-.7-.7z"/>
+    <path fill="#527b31" d="M217.6 248.5l.7.7-.7-.7z"/>
+    <path fill="#734a42" fill-opacity=".6" d="M242.2 248.5v14.7h.7l-.7-14.7z"/>
+    <path fill="#ce2110" d="M243 248.5l1.3 1.3-1.4-1.3z"/>
+    <path fill="#311000" d="M243.7 248.5l.7.7-.8-.7z"/>
+    <path fill="#313931" d="M245 248.5l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M245.8 248.5l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M247.2 248.5v1.3h1.4l-1.4-1.3z"/>
+    <path fill="#313931" d="M249.3 248.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M250.7 248.5l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M251.4 248.5l.7.7-.7-.7z"/>
+    <path fill="#392121" d="M252 248.5l.8.7-.7-.7z"/>
+    <path fill="#423100" d="M252.8 248.5l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M253.5 248.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M254.2 248.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M254.9 248.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M255.6 248.5l-.7 1.3.7-1.3z"/>
+    <path fill="#9c9494" d="M256.3 248.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M259.8 248.5l-2.8 1.3v.7l3.5-1.3-.7-.7z"/>
+    <path fill="#ada5a5" d="M262 248.5l.6.7-.7-.7z"/>
+    <path fill="#424242" d="M262.6 248.5l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M264 248.5l.8.7-.8-.7z"/>
+    <path fill="#b51010" d="M264.8 248.5l.6.7-.6-.7z"/>
+    <path fill="#734a42" d="M265.5 248.5l-.7 15.4h.7a26.7 26.7 0 000-15.4z"/>
+    <path d="M294.3 248.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M296.4 248.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.1 248.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M299.2 248.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M300 248.5l.6.7-.7-.7z"/>
+    <path fill="#296300" d="M303.2 248.7l.5.2-.5-.2z"/>
+    <path fill="#103900" d="M307 248.5l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M309.8 248.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M311.2 248.5l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M313.3 248.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M314 248.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M314.7 248.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M315.4 248.5l-1.4.7v.6l1.4-1.3z"/>
+    <path fill="#52525a" d="M316.1 248.5l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M195.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M196.5 249.2l.7.6-.7-.6z"/>
+    <path fill="#293100" d="M198.6 249.2l.7.6-.7-.6z"/>
+    <path fill="#311000" d="M199.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M200 249.2l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M201.4 249.2l.7.6-.7-.6z"/>
+    <path fill="#5a2121" d="M202.1 249.2l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M202.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M203.6 249.2l.7.6-.8-.6z"/>
+    <path fill="#295200" d="M204.3 249.2l.6.6-.7-.6z"/>
+    <path fill="#397b00" d="M215.3 249.4l.4.2-.4-.2z"/>
+    <path fill="#526b42" d="M217.6 249.2l.7.6-.7-.6z"/>
+    <path fill="#de2110" d="M243 249.2v14l7.7 1.4c-1.7-5-2.7-12.8-7.8-15.4z"/>
+    <path fill="#5a1008" d="M244.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#100808" d="M245.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M246.5 249.2l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M248.6 249.2l.7.6-.7-.6z"/>
+    <path fill="#524242" d="M249.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M250.2 249.6l.2.5-.2-.5z"/>
+    <path fill="#efefef" d="M252.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M253.7 249.6l.3.5-.3-.5z"/>
+    <path fill="#bdbdbd" d="M254.2 249.2l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M257 249.2l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M259.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#100808" d="M260.5 249.2l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M261.2 249.2l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M262 249.2l.6.6-.7-.6z"/>
+    <path fill="#311000" d="M263.4 249.2l.7.6-.8-.6z"/>
+    <path fill="#ce2110" d="M264 249.2l-.6 1.3.7-1.3z"/>
+    <path fill="#de2110" d="M264.8 249.2l-2.9 2 2.9 8.7-5 1.3.7 2.7 5-.7-.8-14z"/>
+    <path fill="#214210" d="M294.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M295 249.2l.7.6-.7-.6z"/>
+    <path fill="#395231" d="M297.1 249.2l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M300.6 249.2l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M301.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M303.4 249.2v2h.8l-.8-2z"/>
+    <path fill="#185200" d="M306.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M307 249.2l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M309 249.2l.8.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M309.8 249.2l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M310.5 249.2l.7.6-.7-.6z"/>
+    <path fill="#102110" d="M312.6 249.2l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M313.3 249.2l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M314.7 249.8v.7h2.1l-2.1-.7z"/>
+    <path fill="#426331" d="M195.1 249.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M196.5 249.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M197.2 249.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.3 249.8l2.1 2-2-2z"/>
+    <path fill="#211800" d="M200 249.8l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M202.4 250.3l.2.4-.2-.4z"/>
+    <path fill="#7b7373" d="M203 250.3l.3.4-.2-.4z"/>
+    <path fill="#bdbdbd" d="M203.6 249.8l.7.7-.8-.7z"/>
+    <path fill="#397b00" d="M204.3 249.8l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M210.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M217.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M245 249.8l.8.7-.7-.7z"/>
+    <path fill="#211800" d="M245.8 249.8l1.4 1.4v-1.4h-1.4z"/>
+    <path fill="#631808" d="M247.2 249.8l.7.7-.7-.7z"/>
+    <path fill="#5a2121" d="M247.9 249.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M248.8 250.3l.2.4-.2-.4z"/>
+    <path fill="#8c8c8c" d="M250.7 249.8v.7h2l-2-.7z"/>
+    <path fill="#bdbdbd" d="M252.8 249.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M255.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M256.3 249.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M257.7 249.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M260.5 249.8l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M261.2 249.8l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M262.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M294.3 249.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M295 249.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M295.7 249.8l.7.7-.7-.7m1.6.5l.3.4-.3-.4z"/>
+    <path fill="#185200" d="M297.8 249.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M300 249.8l.6.7-.7-.7z"/>
+    <path fill="#082108" d="M300.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M301.3 249.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M306.5 250.3l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M308.4 249.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M309 249.8l.8.7-.7-.7z"/>
+    <path fill="#314231" d="M309.8 249.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M311.9 249.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M312.6 249.8l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M313.3 249.8l-.7 1.4.7-1.4z"/>
+    <path fill="#296300" d="M314 249.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M315.4 249.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M316.8 249.8l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M195.1 250.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M197.2 250.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M200.7 250.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M203.6 250.5l.7.7-.8-.7z"/>
+    <path fill="#397b00" d="M210.3 250.7l.5.3-.5-.3z"/>
+    <path fill="#8c8c8c" d="M217.6 250.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M245.8 250.5l.7.7-.7-.7z"/>
+    <path d="M247.2 250.5l3.5 13.4c4.3-1.5 10.9-2 13.4-6l-12.7 4-4.2-11.4z"/>
+    <path fill="#ada5a5" d="M247.9 250.5l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M249.3 250.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250 250.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M253.5 250.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M254.2 250.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M256.3 250.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M258.7 251l.2.4-.2-.5z"/>
+    <path fill="#9c9494" d="M259.1 250.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M260.3 250.7l.5.3-.5-.3z"/>
+    <path d="M261.2 250.5l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M262 250.5l.6.7-.7-.7z"/>
+    <path fill="#6b735a" d="M294.3 250.5l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M295 250.5l5.6 21.4h-.7v-1.3h-.7l.7 6h-.7v-1.3h-.7v5.3h-.7c0-6.8-2.7-12.9-6.3-18.7l-1.4 1.3v.7c5.1 4.9 6.7 15.4 7 22h-1.4l-2.8-14h-.7l2 18.8h-.6l-2.8-14h-.7l2 21.3h-.6l-1.4-17.4h-.7l1.4 17.4h-.7l-.7-9.3h-.7l.7 11.4h-.7l-.7-9.4h-.7l-2.1 12.7 7.7-.7v-.6l-5-.7v-.7l18.4 4.7v-.7l-8.5-2.7v-.6l12.7 2.7c-4-4.9-9-4-14.8-3.4v-.7l16.2.7v-.7l-11.3-2.6v-.7l11.3.7v-.7c-8-1.8-12-.8-18.3 4.7l1.4-6.7h-.7l-.7 2h-.7l3.5-10h.7l-.7 7.3 16.2-6v-.7l-14.8 4a42.2 42.2 0 0121.1-8.7v-.6c-8.4 0-13 1.9-19.7 6.7 5.3-6.6 13.5-7.3 21.1-10v-.8c-9.5.8-14 3-21.8 8 4.8-4.5 13-12.4 20.4-10.6l-1.4-3.4c-6.5 1.5-12.1 5-16.9 9.4 3.3-4.4 14.8-16.5 20.4-16-5.7-5-16.6 10.1-20.4 13.3l15.5-16.7-13.4 11.4 14.8-18.8v-.7c-7 2.5-9 10.8-14 15.4l10.5-16.7a26.8 26.8 0 00-9.9 14.7c-3.2.4-2 5.5-2 8h-.8c0-8-1-18-6.3-24.7z"/>
+    <path fill="#314231" d="M295.7 250.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M296.4 250.5l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M297.8 250.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300.6 250.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M301.3 250.5l.7.7-.7-.7m7 0l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M309 250.5l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M309.8 250.5l.7.7-.7-.7m1.4 0l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M311.9 250.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M313.3 250.5L309 254v.6l4.2-4z"/>
+    <path fill="#8c8c8c" d="M314 250.5l-.7 1.3.7-1.3z"/>
+    <path fill="#ada5a5" d="M314.7 250.5l.7.7-.7-.7z"/>
+    <path fill="#102110" d="M315.4 250.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M316.1 250.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M195.1 251.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M195.8 251.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M198 251.2l2 2-2-2z"/>
+    <path fill="#5a1008" d="M201.4 251.2l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M202.1 251.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M202.8 251.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M203.6 251.2l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M206.4 251.2l1.4 1.3-1.4-1.3z"/>
+    <path fill="#294200" d="M209.9 251.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M213.4 251.2l.7.7-.7-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M217.6 251.2l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M246.5 251.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M247.9 251.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M250.7 251.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M251.4 251.2v.7h2.1l-2.1-.7z"/>
+    <path fill="#efefef" d="M253.5 251.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M256.3 251.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M257.5 251.4l.5.2-.5-.2z"/>
+    <path fill="#dedede" d="M259.1 251.2l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M261.2 251.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M292.9 251.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M293.6 251.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M294.3 251.2l-.7 1.3.7-1.3z"/>
+    <path fill="#185200" d="M295.7 251.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M296.4 251.2l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M297.1 251.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M297.8 251.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M298.5 251.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 251.2l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M301.3 251.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M303.4 251.2l1.5 1.3-1.5-1.3z"/>
+    <path fill="#297b00" d="M304.1 251.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M306 251.4l.5.2-.5-.2z"/>
+    <path fill="#102110" d="M308.4 251.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M309 251.2l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M311.2 251.2l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M314 251.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M314.7 251.2l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M315.4 251.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M195.1 251.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M195.8 251.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M201.4 251.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M202.1 251.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M203.6 251.8l.7.7-.8-.7z"/>
+    <path fill="#397b00" d="M204.3 251.8l.6.7-.7-.7m2.2 0l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.9 251.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M212.7 251.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.6 252l.4.3-.4-.2z"/>
+    <path fill="#315221" d="M217 251.8l.6.7-.7-.7z"/>
+    <path fill="#420000" d="M246.5 251.8l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M247.9 251.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M249.3 251.8l-.7 1.4.7-1.3z"/>
+    <path fill="#7b7373" d="M250 251.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M250.7 251.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M256 252l.5.3-.4-.2z"/>
+    <path fill="#efefef" d="M257 251.8l1.4 4h.7l-2-4m2 0l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M260 252.3l.3.4-.2-.4z"/>
+    <path fill="#ada5a5" d="M260.5 251.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M261.2 251.8l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M262 251.8l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M292.9 251.8l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295 251.8l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M296.4 251.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.1 251.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M297.8 251.8l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M298.5 251.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M299.2 251.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M301.3 251.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 251.8l.8.7-.8-.7z"/>
+    <path fill="#184a00" d="M305.6 251.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307.7 251.8l1.4 1.4-1.4-1.3z"/>
+    <path fill="#103900" d="M308.4 251.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M310.5 251.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M312.6 251.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M313.3 251.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M314 251.8l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M314.7 251.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M315.4 251.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M195.8 252.5l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M202.1 252.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M203.6 252.5l-.7 1.4.7-1.4z"/>
+    <path fill="#396b10" d="M204.3 252.5l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M209.9 252.5l.7.7-.7-.7m1.4 1.4l2.1-.7-2.1.7z"/>
+    <path fill="#103900" d="M214.1 252.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M217 252.5l.6.7-.7-.7z"/>
+    <path fill="#941808" d="M246.5 252.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M249.3 252.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M251.4 252.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M252 252.5l.8.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M254.9 252.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M257.7 252.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M258.9 252.7l.5.3-.5-.3z"/>
+    <path fill="#efefef" d="M260.5 252.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M261.2 252.5l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M262 252.5l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M292.9 252.5l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M293.6 252.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M294.3 252.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M295 252.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M296.4 252.5l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M297.1 252.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.8 252.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M298.5 252.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M299.2 252.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M301.8 252.7l.5.3-.5-.3z"/>
+    <path fill="#103900" d="M304.1 252.5l.7.7-.7-.7m1.4 0l.8.7-.7-.7m2 0l.8.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path d="M311.9 252.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M312.6 252.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314 252.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M314.7 252.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M195.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M195.8 253.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M196.5 253.2l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M200 253.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M204.3 253.2l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M205 253.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M212 253.2l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M212.7 253.2l-.7 1.3.7-1.3z"/>
+    <path fill="#295200" d="M213.4 253.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M216.2 253.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M217 253.2l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M246.5 253.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M248.6 253.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250 253.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M251.2 253.4l.4.2-.4-.2z"/>
+    <path fill="#cecece" d="M252 253.2l2.2 2-2.1-2z"/>
+    <path fill="#8c8c8c" d="M254.9 253.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M255.6 253.2l1.4 2-1.4-2z"/>
+    <path fill="#8c8c8c" d="M256.8 253.4l.4.2-.4-.2z"/>
+    <path fill="#dedede" d="M260.5 253.2l1.4 1.3-1.4-1.3z"/>
+    <path fill="#bdbdbd" d="M261.2 253.2l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M262 253.2l.6.7-.7-.7z"/>
+    <path fill="#103910" d="M293.6 253.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M294.3 253.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M295 253.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M296.4 253.2l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M297.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M297.8 253.2l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M298.5 253.2l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M299.2 253.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M302 253.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M304.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M305.6 253.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307 253.2l1.4 1.3-1.4-1.3z"/>
+    <path fill="#184a00" d="M307.7 253.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M309.8 253.2l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M311.2 253.2l-.7 1.3.7-1.3z"/>
+    <path fill="#297b00" d="M311.9 253.2l.7.7-.7-.7m1.4 0l-.7 1.3.7-1.3z"/>
+    <path fill="#8c8c8c" d="M314 253.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M314.7 253.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M315.4 253.2l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M316.1 253.2l.7.7-.7-.7z"/>
+    <path fill="#8c9c84" d="M316.8 253.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M317.5 253.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M318.2 253.2l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M195.1 253.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M195.8 253.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M196.5 253.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M200 253.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200.7 253.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M202.8 253.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M205 253.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M211.3 253.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M212.7 253.8l-.7 1.4.7-1.3z"/>
+    <path fill="#294200" d="M213.4 253.8l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M216.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M247.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M248.6 253.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M249.3 253.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M250 253.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M253.5 253.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M254.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M254.9 253.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M256.3 253.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M258.4 253.8v.7h2.1l-2-.7z"/>
+    <path fill="#ada5a5" d="M260.5 253.8l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M262 253.8l.6.7-.7-.7z"/>
+    <path fill="#bd2110" d="M262.6 253.8l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M293.6 253.8l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M294.3 253.8l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M295 253.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.1 253.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.1 255.2l2.1-.7-2 .7z"/>
+    <path fill="#313931" d="M299.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M300 253.8l.6.7-.7-.7z"/>
+    <path fill="#185200" d="M302 253.8l1.4 1.4-1.4-1.3z"/>
+    <path fill="#297b00" d="M302.7 253.8l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M307 253.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M313.3 253.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M314 253.8l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M314.7 253.8l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M315.4 253.8l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M318.2 253.8l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M319 253.8l.6.7-.7-.7z"/>
+    <path fill="#425242" d="M319.6 253.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M320.6 254.3l.2.5-.2-.5z"/>
+    <path fill="#8c8c8c" d="M195.1 254.5l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M195.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M196.5 254.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M197.2 254.5l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M198 254.5l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M200.7 254.5l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M201.7 255l.2.4-.2-.4z"/>
+    <path fill="#315221" d="M202.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M205 254.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M205.7 254.5l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M210.6 254.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M212.7 254.5l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M214.8 254.5l-.7 1.4.7-1.4z"/>
+    <path fill="#9c9494" d="M215.5 254.5l-.7 1.4.7-1.4z"/>
+    <path fill="#941808" d="M247.2 254.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M249.3 254.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M250.7 254.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M251.9 254.8l.4.2-.4-.3z"/>
+    <path fill="#ada5a5" d="M252.8 254.5l.7.7-.7-.7m2.6.2l.4.3-.4-.3z"/>
+    <path fill="#8c8c8c" d="M257 254.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M257.7 254.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M262 254.5l-2.9.7v.7l3.5-.7-.7-.7z"/>
+    <path fill="#7b1008" d="M262.6 254.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M293.6 254.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M294.3 254.5l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M295 254.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M298.5 254.5l2.8 11.4h.7c0-4.1-.5-8.2-3.5-11.4z"/>
+    <path fill="#184a00" d="M299.2 254.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M300 254.5l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M302 254.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.9 254.5l.7.7-.8-.7z"/>
+    <path fill="#184a00" d="M307 254.5l.7.7-.7-.7m2 0l.8.7-.7-.7z"/>
+    <path fill="#103900" d="M309.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M310.5 254.5l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M312.6 254.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M313.3 254.5l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M314 254.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M316.1 254.5l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M316.8 254.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M317.5 254.5l.7.7-.7-.7z"/>
+    <path fill="#295210" d="M318.2 254.5l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M319 254.5l.6.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M319.6 254.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M195.1 255.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M195.8 255.2l2.1 1.3-2-1.3m2 0l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M198.6 255.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.3 255.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 255.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M203.6 255.2l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M205.7 255.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M206.4 255.2v.7h2l-2-.7z"/>
+    <path fill="#103900" d="M209.9 255.2l.7.7-.7-.7m2 0l.8.7-.7-.7z"/>
+    <path fill="#00215a" d="M227.5 255.2l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M247.2 255.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M249.3 255.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250 255.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M250.7 255.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M251.6 255.6l.3.5-.3-.5z"/>
+    <path fill="#bdbdbd" d="M254.4 255.6l.3.5-.3-.5z"/>
+    <path fill="#dedede" d="M255.1 255.6l.3.5-.3-.5z"/>
+    <path fill="#7b7373" d="M255.8 255.6l.3.5-.3-.5z"/>
+    <path fill="#bdbdbd" d="M256.3 255.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M257 255.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M262 255.2l.6.7-.7-.7z"/>
+    <path fill="#210800" d="M262.6 255.2l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M280.2 255.2l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M281 255.2v.7h6.3l-6.4-.7z"/>
+    <path fill="#520808" d="M287.3 255.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M291.5 255.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M293.6 255.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 255.2l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M295 255.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.8 255.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M299.2 255.2l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M300 255.2l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 255.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M303 255.6l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M306.3 255.2l.7.7-.7-.7m2 0l1.5 1.3-1.4-1.3z"/>
+    <path fill="#185200" d="M309 255.2l.8.7-.7-.7z"/>
+    <path fill="#296300" d="M309.8 255.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.9 255.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M312.6 255.2l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M313.3 255.2l-.7 1.3.7-1.3z"/>
+    <path fill="#297b00" d="M314 255.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M315.4 255.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M316.1 255.2l-.7 1.3.7-1.3z"/>
+    <path fill="#5a5231" d="M195.8 255.9l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M200.5 256l.5.3-.5-.2z"/>
+    <path fill="#8c8c8c" d="M203.6 255.9l.7.6-.8-.6z"/>
+    <path fill="#314231" d="M206.4 255.9l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M207 255.9l.8.6-.7-.6z"/>
+    <path fill="#295200" d="M209.2 255.9l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M209.9 255.9l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M211.3 255.9l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M213.4 255.9l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M214.1 255.9l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M220.4 255.9l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" fill-opacity=".3" d="M221.1 255.9v.6h6.4v10c3.8-6 .2-10.6-6.4-10.6z"/>
+    <path fill="#8c8c8c" d="M227.5 255.9l.7.6-.7-.6z"/>
+    <path fill="#420000" d="M247.9 255.9l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M249.3 255.9l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M250.7 256.5v.7l3.5-.7h-3.5m7-.6l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M258.4 255.9l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M259.1 255.9l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M262.6 255.9l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M263.4 255.9l.7.6-.8-.6z"/>
+    <path fill="#63636b" d="M280.2 255.9l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M281 255.9v.6h6.3l-6.4-.6z"/>
+    <path fill="#63636b" d="M287.3 255.9l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M291.5 255.9l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M292.2 255.9l.7.6-.7-.6m1.6.4l.3.5-.3-.5z"/>
+    <path fill="#296300" d="M294.3 257.2l2.1-.7-2.1.7z"/>
+    <path fill="#185200" d="M297.8 255.9l1.4 1.3-1.4-1.3z"/>
+    <path fill="#297b00" d="M298.5 255.9l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M300 255.9l.6.6-.7-.6z"/>
+    <path fill="#185200" d="M300.6 255.9l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M306.3 255.9l.7.6-.7-.6z"/>
+    <path fill="#319400" d="M307 255.9l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M307.7 255.9l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M311.9 255.9l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M313.3 255.9l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M314.7 255.9l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M195.8 256.5l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M197.2 256.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M198 256.5l.6.7-.7-.7m4 .2l.5.3-.5-.2z"/>
+    <path fill="#5a6b52" d="M203.6 256.5l.7.7-.8-.7z"/>
+    <path fill="#9c9494" d="M206.4 256.5l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M207 256.5l.8.7-.7-.7z"/>
+    <path fill="#294200" d="M209.2 256.5l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M211.3 256.5l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M212.7 256.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M213.4 256.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M220.4 256.5v5.4h.7l-.7-5.4z"/>
+    <path fill="#941808" d="M247.9 256.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M250 256.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M252 256.5l.8.7-.7-.7z"/>
+    <path fill="#efefef" d="M254.9 256.5l1.4 1.4-1.4-1.4z"/>
+    <path fill="#bdbdbd" d="M255.6 256.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M256.8 256.8l.4.2-.4-.2z"/>
+    <path fill="#dedede" d="M257.7 256.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M259.1 256.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M259.8 256.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M261 256.8l.5.2-.5-.2z"/>
+    <path fill="#9c9494" d="M262 256.5l.6.7-.7-.7z"/>
+    <path fill="#7b7373" d="M262.6 256.5l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M263.4 256.5l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M280.2 256.5v8.7h.7l-.7-8.7m7 0v10h.8l-.7-10z"/>
+    <path fill="#6b735a" d="M291.5 256.5l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M292.2 256.5l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M295 256.5l3.5 12h.7l-4.2-12z"/>
+    <path fill="#103900" d="M295.7 256.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.8 256.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300.9 257l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M302.7 256.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 256.5l-.6 1.4.6-1.4z"/>
+    <path fill="#184a00" d="M305.6 256.5l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M307.4 256.8l.5.2-.5-.2z"/>
+    <path fill="#185200" d="M308.4 256.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.2 256.5l.7.7-.7-.7z"/>
+    <path d="M311.9 256.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M312.6 256.5l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M314.7 256.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M195.8 257.2l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M196.5 257.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M198.6 257.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M199.6 257.6l.2.5-.2-.5m2.5-.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M202.8 257.2l1.4 1.3-1.3-1.3z"/>
+    <path fill="#213918" d="M203.6 257.2l.7.7-.8-.7z"/>
+    <path fill="#dedede" d="M206.4 257.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207 257.2l.8.7-.7-.7z"/>
+    <path fill="#103900" d="M208.5 257.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M209.9 257.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M210.6 257.2l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M212 257.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M212.7 257.2l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M247.9 257.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M250 257.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M252 257.2l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M252.8 257.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M253.5 257.2v.7h2.1l-2.1-.7m2.8 0l-2 1.3v.7l2-2m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M259.1 257.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M259.8 257.2l.7.7-.7-.7m2.8 0l-.7 1.3.7-1.3z"/>
+    <path fill="#210800" d="M263.4 257.2l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M291.5 257.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M292.4 257.6l.3.5-.3-.5z"/>
+    <path fill="#8c8c8c" d="M292.9 257.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M294.3 257.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M295.7 257.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M296.4 257.2l-.7 1.3.7-1.3z"/>
+    <path fill="#103900" d="M298.5 257.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M301.3 257.2l-.7 1.3.7-1.3z"/>
+    <path fill="#184a00" d="M303.7 257.6l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M305.6 257.2l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M308.4 257.2l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M311.9 257.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314 257.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M314.7 257.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M317.4 260.4l-2.8 4.7c1.9-1.3 3.7-2.4 2.8-4.7z"/>
+    <path fill="#dedede" d="M321.7 257.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M196.5 257.9l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M197.2 257.9l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M200 257.9l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M204.3 257.9l.6.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M206.4 257.9l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M207.8 257.9l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M208.5 257.9l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M209.9 257.9l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M212 257.9l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M214.6 258l.4.3-.4-.2z"/>
+    <path fill="#420000" d="M248.6 257.9l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M250 257.9l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M251.4 257.9l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M252 257.9l.8.6-.7-.6z"/>
+    <path fill="#dedede" d="M252.8 257.9l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M257.7 257.9l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M258.4 257.9l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M262.6 257.9l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M264 257.9l.8.6-.8-.6z"/>
+    <path fill="#cecece" d="M291.5 257.9l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M292.9 257.9l-.7 1.3.7-1.3z"/>
+    <path fill="#dedede" d="M293.6 257.9l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M294.5 258.3l.3.5-.3-.5z"/>
+    <path fill="#185200" d="M296.4 257.9l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M299.2 257.9l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M301.3 257.9l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M304.9 257.9l.7.6-.8-.6z"/>
+    <path fill="#296300" d="M305.6 257.9l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M306.3 257.9l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M307.7 257.9l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M311.2 257.9l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M313.3 257.9l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M314 257.9l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M320.3 257.9l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M321 257.9l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M197.2 258.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200.7 258.5l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M201.4 258.5l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M204.3 258.5l.6.7-.7-.7z"/>
+    <path fill="#efefef" d="M205.4 258.8l.5.2-.5-.2z"/>
+    <path fill="#214210" d="M206.4 258.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M207.8 258.5l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.2 258.5l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M209.9 258.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M211.3 258.5l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M214.1 258.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M214.8 258.5l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M228.2 258.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M248.6 258.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M250.7 258.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M253.5 258.5l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M256.3 258.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M257 258.5l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M259.8 258.5l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M260.5 258.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M264 258.5l.8.7-.8-.7z"/>
+    <path fill="#319400" d="M292.9 258.5l5 16.1h.6c0-5.6-1.8-11.7-5.6-16z"/>
+    <path fill="#425242" d="M293.6 258.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M296.4 258.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M299.2 258.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M301.6 259l.2.4-.2-.4m3.2-.5l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M305.6 258.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M306.3 258.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M307.7 258.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M310.5 258.5l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M313.3 258.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M314 258.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M315.4 258.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M316.1 258.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M319 258.5l.6.7-.7-.7z"/>
+    <path fill="#314231" d="M319.6 258.5l-1.4 2.7 1.4-2.7z"/>
+    <path fill="#313931" d="M320.3 258.5l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M197.2 259.2l2.1 2-2-2z"/>
+    <path fill="#314231" d="M198 259.2l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.1 259.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M205 259.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M205.7 259.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M207 259.2l.8.7-.7-.7z"/>
+    <path fill="#295200" d="M207.8 259.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M209.2 259.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M210.6 259.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M211.3 259.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M213.4 259.2l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M214.8 259.2l.7.7-.7-.7z"/>
+    <path fill="#101829" d="M228.2 259.2l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M248.6 259.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M250.7 259.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M251.6 259.7l.3.4-.3-.4z"/>
+    <path fill="#9c9494" d="M252 259.2l.8.7-.7-.7z"/>
+    <path fill="#7b7373" d="M252.8 259.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M253.5 259.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M257 259.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M257.7 259.2l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M258.4 259.2l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M263.4 259.2l.7.7-.8-.7z"/>
+    <path fill="#7b1008" d="M264 259.2l.8.7-.8-.7z"/>
+    <path fill="#10214a" d="M279.5 259.2l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M292.4 259.7l.3.4-.3-.4z"/>
+    <path fill="#296300" d="M293.6 259.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M294.5 259.7l.3.4-.3-.4z"/>
+    <path fill="#296300" d="M296.9 259.4l.5.3-.5-.3z"/>
+    <path fill="#103900" d="M299.2 259.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M305.3 259.4l.5.3-.5-.3m1.7-.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M309.8 259.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M312.6 259.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M313.3 259.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M314 259.2l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M314.7 259.2l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M315.4 259.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M316.1 259.2l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M318.2 259.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M319 259.2l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M189.5 259.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M190.2 259.9l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M198.6 259.9l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M199.3 259.9l1.4 1.3-1.4-1.3m4.3 0l.7.7-.8-.7m1.5 0l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M205.7 259.9l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M206.4 259.9l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M207 259.9l.8.7-.7-.7z"/>
+    <path fill="#397b00" d="M208.5 259.9v1.3h1.4l-1.4-1.3z"/>
+    <path fill="#295200" d="M209.2 259.9l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M210.6 259.9l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M212.7 259.9l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M214.8 259.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M215.5 259.9l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M228.2 259.9l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M228.9 259.9l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M229.6 259.9l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M249.3 259.9l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M250.7 259.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M252 259.9l.8.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M254.9 259.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M256 260.1l.5.2-.4-.2z"/>
+    <path fill="#313931" d="M257 259.9l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M257.7 259.9l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M261.2 259.9l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M262 259.9l.6.7-.7-.7z"/>
+    <path fill="#00184a" d="M278.1 259.9l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M278.8 259.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M279.5 259.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295 259.9l-.7 1.3.7-1.3z"/>
+    <path fill="#184a00" d="M297.1 259.9l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M299.2 259.9l1.4 1.3-1.4-1.3z"/>
+    <path fill="#297b00" d="M300 259.9l.6.7-.7-.7z"/>
+    <path fill="#296300" d="M301.3 259.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M302 259.9l-.7 1.3.7-1.3z"/>
+    <path fill="#184a00" d="M304.4 260.3l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M305.6 259.9l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M306.3 259.9l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M307 259.9l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M309.5 260.1l.5.2-.5-.2z"/>
+    <path fill="#425242" d="M312.6 259.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M313.3 259.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314.5 260.1l.4.2-.4-.2z"/>
+    <path fill="#cecece" d="M315.4 259.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M316.8 259.9l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M317.5 259.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M318.2 259.9l.7.7-.7-.7z"/>
+    <path fill="#8c9c84" d="M189.5 260.6l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M190.2 260.6l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M199.3 260.6l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M203.6 260.6l.7.6-.8-.6z"/>
+    <path fill="#295200" d="M204.3 260.6l.6.6-.7-.6z"/>
+    <path fill="#292100" d="M205.7 260.6l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M206.8 260.8l.5.2-.5-.2z"/>
+    <path fill="#311000" d="M207.8 260.6l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M210.6 260.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M212 260.6l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M212.7 260.6l.7.6-.7-.6z"/>
+    <path fill="#428c00" d="M209.7 267.4h-.7c-.1-3.8-1.6-6.3-5.6-7.4 0 2 1.6 10 5 7.4h.6l-1.4 6c2.1-2.2 10.8-10 7-13.5-3.2-2.9-4.8 6-4.9 7.5z"/>
+    <path fill="#295200" d="M214.1 260.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M215.5 260.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M229.6 260.6l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M230.3 260.6l.7.6-.7-.6z"/>
+    <path fill="#31425a" d="M231 260.6l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M231.7 260.6l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M249.3 260.6l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M251.4 260.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M252.8 260.6l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M253.5 260.6l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M259.8 260.6l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M260.5 260.6l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M276 260.6l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M276.7 260.6l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M277.4 260.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M278.1 260.6l.7.6-.7-.6m12 0l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M290.8 260.6l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M291.5 260.6l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M292.2 260.6l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M295 260.6l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M297.1 260.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M297.8 260.6l-.7 1.3.7-1.3m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M305.6 260.6l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M309 260.6l.8.6-.7-.6z"/>
+    <path fill="#185200" d="M311.9 260.6l.7.6-.7-.6z"/>
+    <path fill="#102110" d="M312.6 260.6l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M313.8 260.8l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M314.7 260.6l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M315.4 260.6l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M316.1 260.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M316.8 260.6l-2.1 3.3 3.5-3.3h-1.4z"/>
+    <path fill="#295200" d="M190.2 261.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M190.9 261.2l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M199.3 261.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M200 261.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M200.7 261.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 261.2v.7h2.2l-2.1-.7z"/>
+    <path fill="#294200" d="M205 261.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M205.7 261.2l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M208 261.7l.2.4-.2-.4z"/>
+    <path fill="#292100" d="M208.5 261.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.9 261.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M210.6 261.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M211.3 261.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M212 261.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M213.6 261.7l.3.4-.3-.4z"/>
+    <path fill="#8c8c8c" d="M215.7 261.7l.3.4-.3-.4z"/>
+    <path fill="#dedede" d="M231.7 261.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M232.4 261.2l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M233.1 261.2l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M233.8 261.2l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M234.5 261.2l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M235.2 261.2l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M249.3 261.2l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M251.4 261.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M252 261.2l.8.7-.7-.7z"/>
+    <path fill="#101810" d="M252.8 261.2l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M257.7 261.2l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M258.4 261.2l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M259.1 261.2l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M272.5 261.2l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M273.2 261.2l.7.7-.7-.7z"/>
+    <path fill="#10295a" d="M273.9 261.2l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M274.6 261.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M275.3 261.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M276 261.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M290 261.2l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M290.8 261.2l1.4 1.4-1.4-1.4z"/>
+    <path fill="#103910" d="M291.5 261.2l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M292.2 261.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295 261.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295.7 261.2l-.7 1.4.7-1.4z"/>
+    <path fill="#185200" d="M297.8 261.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M300 261.2l.6.7-.7-.7z"/>
+    <path fill="#184a00" d="M304.9 261.2l.7.7-.8-.7z"/>
+    <path fill="#103900" d="M308.4 261.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.2 261.2v.7h2.8v-.7h-2.8z"/>
+    <path fill="#425242" d="M314 261.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M314.7 261.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M315.4 261.2l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M317.5 261.2l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M190.2 261.9l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M191.1 262.3l.3.5-.3-.5z"/>
+    <path fill="#314231" d="M191.6 261.9l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M192.3 261.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M195.1 261.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M198.6 261.9l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M199.3 261.9l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M200.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M201.4 261.9l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M202.8 261.9l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M205.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M206.4 261.9l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M208.5 261.9l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M209.2 261.9l-.7 1.3.7-1.3z"/>
+    <path fill="#7b1008" d="M209.9 261.9l.7.7-.7-.7z"/>
+    <path fill="#5a3131" d="M210.6 261.9l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M211.3 261.9l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M219.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M220.4 261.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M221.1 261.9l.7.7-.7-.7m13.4 0l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M235.2 261.9l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M236 261.9l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M236.6 261.9l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M250 261.9l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M256.3 261.9l.7.7-.7-.7z"/>
+    <path fill="#7b0008" d="M257 261.9l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M254.2 262.6v.6h2.1c-5.4 8.4-1.5 19.7-.7 28.8h.7c2-8.2 2.2-20 0-28.1l2.8 1.3.7-2.6-.7-.7-4.9.7z"/>
+    <path fill="#940008" d="M259.1 261.9l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M259.8 261.9l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M271 261.9l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M271.8 261.9l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M272.5 261.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M273.2 261.9l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M289.4 261.9l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M290 261.9l.8.7-.7-.7z"/>
+    <path fill="#313931" d="M292.2 261.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M292.9 261.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M295.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.8 261.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300 261.9l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 261.9l-.7 1.3.7-1.3z"/>
+    <path fill="#103900" d="M304.9 261.9l.7.7-.8-.7z"/>
+    <path fill="#185200" d="M307.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M311.2 261.9l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M312.6 261.9l-.7 1.3.7-1.3z"/>
+    <path fill="#082108" d="M313.5 262.3l.3.5-.3-.5z"/>
+    <path fill="#52525a" d="M314 261.9l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M314.7 261.9l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M316.8 261.9l-2.1 2.7 2.1-2.7z"/>
+    <path fill="#295200" d="M190.2 262.6l.7.6-.7-.6z"/>
+    <path fill="#428c00" d="M191.6 262.6l1.4 4h.7l.7-2.7-2.8-1.3z"/>
+    <path fill="#295200" d="M192.3 262.6l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M193 262.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M193.7 262.6l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M195.1 262.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M195.8 262.6l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M198.6 262.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M199.3 262.6l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M202.1 262.6l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M202.8 262.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M206.4 262.6l.7.6-.7-.6z"/>
+    <path fill="#4a1000" d="M207 262.6l.8.6-.7-.6z"/>
+    <path fill="#294200" d="M207.8 262.6l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M210.6 262.6l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M213.2 262.8l.4.2-.4-.2z"/>
+    <path fill="#6b735a" d="M215.5 262.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M217 262.6l.6.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M217.6 262.6l.7.6-.7-.6z"/>
+    <path fill="#526b42" d="M218.3 262.6l.7.6-.7-.6z"/>
+    <path fill="#396b10" d="M219 262.6l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M219.7 262.6l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M220.4 262.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M221.1 262.6l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M250 262.6l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M252.8 262.6l-.7 1.3.7-1.3z"/>
+    <path fill="#ad0008" d="M253.5 262.6l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M259.8 262.6l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M289.4 262.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M290 262.6l.8.6-.7-.6z"/>
+    <path fill="#184a00" d="M292.2 262.6l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M292.9 262.6l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M295.7 262.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M296.4 262.6l-.7 1.3.7-1.3z"/>
+    <path fill="#185200" d="M297.8 262.6l1.4 1.3-1.4-1.3z"/>
+    <path fill="#297b00" d="M298.5 262.6l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M300.6 262.6l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M302.7 262.6l.7.6-.7-.6m1.4 0l1.4 1.3-1.3-1.3z"/>
+    <path fill="#185200" d="M304.9 262.6l.7.6-.8-.6z"/>
+    <path fill="#297b00" d="M307 262.6l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M307.7 262.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M310.5 262.6l1.4 1.3-1.4-1.3zm3.5 0l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M317.5 262.6l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M318.2 262.6l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M319 262.6l.6.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M319.6 262.6l.7.6-.7-.6z"/>
+    <path fill="#8c9c84" d="M189.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M190.2 263.2l2 3.4-2-3.4z"/>
+    <path fill="#103900" d="M190.9 263.2l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M193.7 263.2l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M194.4 263.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M195.1 263.2l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M195.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M198 263.2l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M199 263.4l.6.3-.5-.2z"/>
+    <path fill="#dedede" d="M200 263.2l.7.7-.7-.7z"/>
+    <path fill="#7b8c73" d="M202.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207 263.2l1.5 1.4v-1.4H207z"/>
+    <path fill="#4a1000" d="M208.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M209.9 263.2l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M215.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M216.2 263.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M217 263.2l.6.7-.7-.7z"/>
+    <path fill="#428c00" d="M214.8 268.6l1.4-.7v.7l-5 4c4.5-1.7 6.7-4 8.5-8l-2 1.3 1.3-2.7-4.2 5.4z"/>
+    <path fill="#294200" d="M219 263.2l-.7 1.4.7-1.4z"/>
+    <path fill="#397b00" d="M219.7 263.2l-.7 1.4.7-1.4z"/>
+    <path fill="#424242" d="M220.4 263.2l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M242.2 263.2l.7.7-.7-.7z"/>
+    <path fill="#845a52" d="M243 263.2l.6.7-.7-.7z"/>
+    <path fill="#734a42" d="M243.7 263.2l.7.7-.8-.7z"/>
+    <path fill="#842118" d="M244.3 263.2l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M245 263.2l.8.7-.7-.7z"/>
+    <path fill="#b51010" d="M245.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M250 263.2l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M251.4 263.2l.7.7-.7-.7z"/>
+    <path fill="#310010" d="M252.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#180821" d="M253.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#310010" d="M254.2 263.2l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M254.9 263.2l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M255.6 263.2l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M259.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M262 263.2l.6.7-.7-.7z"/>
+    <path fill="#7b1008" d="M262.6 263.2l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M263.4 263.2l.7.7-.8-.7z"/>
+    <path fill="#8c4a4a" d="M264 263.2l.8.7-.8-.7z"/>
+    <path fill="#9c9494" d="M265.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M289.4 263.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M292.2 263.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M292.9 263.2l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296.4 263.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300.6 263.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.4 263.7l.2.4-.2-.4m2.6-.5l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M312.6 263.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M316.8 263.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M317.5 263.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M319.6 263.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M320.3 263.2l1.4 1.4-1.4-1.4z"/>
+    <path fill="#8c8c8c" d="M189.7 264.3l.2.5-.2-.5z"/>
+    <path fill="#295200" d="M190.9 263.9l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M191.6 263.9l.7.7-.7-.7z"/>
+    <path fill="#102110" d="M194.4 263.9l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M195.1 263.9v.7l2.1.6-2-1.3z"/>
+    <path fill="#63636b" d="M196.5 263.9l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M198 263.9l.6.7-.7-.7z"/>
+    <path fill="#428c00" d="M198.6 263.9v3.3h-.7l-.7-2h-.7l.7 6.7h-.7l-.7-7.3h-.7l-.7 5.3h-.7l-3.5-2.7 2 4h-.6l-2.8-3.3c2.3 8 5.7 6.8 11.3 11.3 2.1 1.6 3.5 5.2 4.9 7.4l-2.9-2 1.4 2-3.5-2 4.3 4 .7-2h.7c-1.8 3.2-5 3.6-8.5 4v-.6l1.4-1.3 3.5.6c-2.5-2.5-5.6-3-9.1-2l4.2 3.4v.6L193 296l8.4-1.3-.7 1.3h.7l4.3-2-8.5 4v.7c7.1-.9 8-3.2 12-8-.6 2.1-.6 3.3 1.4 4.7l-1.1-8 9.5-10.8-3.5 2.7 2.8-4c-4 .8-5.7 3.6-5.6 7.3l-4.2 4h-.7c1.5-4.1 5.6-6.5 4.2-11.3-3.7 2.6-4.7 5.8-5 10l-2.7-13.4.7 2.7h-.7v-1.3h-.7l.7 9.3h-.7c-2.2-5-.3-15.4-5-18.7z"/>
+    <path fill="#9c9494" d="M200 263.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M203 264.3l.3.5-.2-.5z"/>
+    <path fill="#397b00" d="M205 263.9l1.4 1.3-1.4-1.3z"/>
+    <path fill="#5a1008" d="M209.2 263.9l.7.7-.7-.7z"/>
+    <path fill="#311000" d="M209.9 263.9l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M215.5 263.9l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M216.2 263.9l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M219.7 263.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M245 263.9l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M245.8 263.9l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M246.5 263.9l.7.7-.7-.7z"/>
+    <path fill="#6b2908" d="M247.2 263.9l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M247.9 263.9l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M250.7 263.9l.7.7-.7-.7z"/>
+    <path fill="#000818" d="M251.4 263.9l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M252 263.9l-.6 1.3.7-1.3z"/>
+    <path fill="#003994" d="M250 287.3h.7a35.9 35.9 0 013.5-23.4c-8.3 4-7.8 16.8-4.2 23.4z"/>
+    <path fill="#52525a" d="M254.2 263.9l.7.7-.7-.7z"/>
+    <path fill="#9c2118" d="M254.9 263.9l.7.7-.7-.7z"/>
+    <path fill="#ce0008" d="M257.7 263.9l.7.7-.7-.7z"/>
+    <path fill="#bd0008" d="M259.1 263.9l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M259.8 263.9l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M260.5 263.9l.7.7-.7-.7z"/>
+    <path fill="#7b5252" d="M261.2 263.9l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M262 263.9l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M262.6 263.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M279.5 263.9l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M288.7 263.9l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M289.4 263.9l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M290 263.9l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M290.8 263.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M292.9 263.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M293.6 263.9l-.7 1.3.7-1.3z"/>
+    <path fill="#103900" d="M296.4 263.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M298.8 264.3l.2.5-.2-.5z"/>
+    <path fill="#185200" d="M300.6 263.9l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M306.5 264.3l.2.5-.2-.5z"/>
+    <path fill="#297b00" d="M307 263.9l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M314 263.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M315.4 263.9l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M316.1 263.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M316.8 263.9l.7.7-.7-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M191.6 264.6l.7.6-.7-.6m2.8 0l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M196 265l.3.5-.3-.5z"/>
+    <path fill="#ada5a5" d="M197.2 264.6l.7.6-.7-.6z"/>
+    <path fill="#526b42" d="M198 264.6l.6.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M200 264.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M205 264.6l.7.6-.7-.6m3.5 0l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M209.2 264.6l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M209.9 264.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M215.7 265l.3.5-.3-.5z"/>
+    <path fill="#397b00" d="M217.6 264.6l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M218.3 264.6l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M219.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#313931" d="M228.2 264.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M247.9 264.6l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M248.6 264.6l.7.6-.7-.6z"/>
+    <path fill="#733939" d="M249.3 264.6l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M250 264.6l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M250.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M253.5 264.6l.7.6-.7-.6z"/>
+    <path fill="#6b5252" d="M254.2 264.6l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M257.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#5a1010" d="M259.1 264.6l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M259.8 264.6l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M279.5 264.6l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M288.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M289.4 264.6l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M290 264.6l.8.6-.7-.6z"/>
+    <path fill="#425242" d="M290.8 264.6l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M293.6 264.6l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M296.4 264.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M297.1 264.6l-.7 1.3.7-1.3z"/>
+    <path fill="#184a00" d="M300.9 265l.2.5-.2-.5z"/>
+    <path fill="#297b00" d="M303.4 264.6l1.5 1.3-1.5-1.3z"/>
+    <path fill="#185200" d="M304.1 264.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M305.6 264.6l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M310.5 264.6l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M313.3 264.6l-2.8 3.3 2.8-3.3z"/>
+    <path fill="#7b7373" d="M314 264.6l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M314.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M315.4 264.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M316.1 264.6l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M317.5 264.6l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M318.2 264.6l.7.6-.7-.6z"/>
+    <path fill="#395231" d="M319 264.6l.6.6-.7-.6z"/>
+    <path fill="#296300" d="M319.6 264.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M321.3 265l.2.5-.2-.5z"/>
+    <path fill="#8c8c8c" d="M321.7 264.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M189.7 265.7l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M190.2 265.2l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M192.3 265.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M194.2 265.5l.4.2-.4-.2z"/>
+    <path fill="#213918" d="M197.2 265.2l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M198 265.2l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M200 265.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M200.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M202.8 265.2l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.6 265.2l.7.7-.8-.7z"/>
+    <path fill="#103900" d="M205.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M209.2 265.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M212.7 265.2l-.7 1.4.7-1.4z"/>
+    <path fill="#103900" d="M217.6 265.2l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M219 265.2l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M219.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M228.2 265.2l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M228.9 265.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M229.6 265.2l.7.7-.7-.7m20.4 0l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M250.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M252.8 265.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M253.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#842118" d="M254.2 265.2l.7.7-.7-.7z"/>
+    <path d="M257.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#ad0008" d="M258.4 265.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M259.1 265.2l.7.7-.7-.7z"/>
+    <path fill="#debdb5" d="M278.1 265.2l.7.7-.7-.7z"/>
+    <path fill="#8c4a4a" d="M278.8 265.2l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M279.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#946b63" d="M280.5 265.7l.2.4-.2-.4z"/>
+    <path fill="#001000" d="M288.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M289.4 265.2l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M291.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M293.6 265.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 265.2l-.7 1.4.7-1.4z"/>
+    <path fill="#184a00" d="M297.1 265.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M298.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M299.2 265.2l-.7 1.4.7-1.4z"/>
+    <path fill="#103900" d="M303.7 265.7l.2.4-.2-.4m1.9-.5l.7.7-.7-.7z"/>
+    <path d="M309.8 265.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M310.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M313.3 265.2l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M314 265.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M314.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M316.8 265.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M317.5 265.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M319.6 265.2l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M320.3 265.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M321.7 265.2l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M322.4 265.2l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M186.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M187.8 266.1l.5.2-.5-.2z"/>
+    <path fill="#9c9494" d="M188.8 265.9l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M190.2 265.9l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M192.3 265.9l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M193.7 265.9l-.7 2 .7-2m2.1 0v2h.7l-.7-2z"/>
+    <path fill="#292100" d="M198 265.9l.6.7-.7-.7z"/>
+    <path fill="#9c9494" d="M200.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M203.6 265.9l.7.7-.8-.7m2.9 0l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M209.2 265.9l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M212.7 265.9l.7.7-.7-.7m2.6.2l.4.2-.4-.2z"/>
+    <path fill="#103900" d="M217 265.9l.6.7-.7-.7z"/>
+    <path fill="#7b7373" d="M219 265.9l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M228.9 265.9v10.7h-.7l-.7-9.4H221v19.4l2.9-1.3 1.4 4.7 3.5-2 .7 7.4 6.3-2c3 2 4.9 2 6.3-1.4h1.4l4.3 4-.7-12.7-12.7-.7v-.6l12 .6v-2c-9-.2-9.9-5.5-9.9-12.7l-7.7-2z"/>
+    <path fill="#b51010" d="M229.6 265.9l.7.7-.7-.7z"/>
+    <path fill="#7b5252" d="M230.3 265.9l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M231 265.9l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M250 265.9l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M250.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M252.8 265.9l.7.7-.7-.7z"/>
+    <path fill="#c6b5b5" d="M253.5 265.9l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M254.2 265.9l.7.7-.7-.7z"/>
+    <path fill="#6b0808" d="M257 265.9l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M257.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#5a3131" d="M258.4 265.9l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M276.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#a56363" d="M277.4 265.9l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M278.1 265.9l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M271.8 268c0 6.7-.7 12.2-9.1 12.6 1.8 5.1 11 1.9 14-.8 4.1-3.7 3.5-9 3.5-13.9l-8.4 2z"/>
+    <path fill="#bdbdbd" d="M288 265.9l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M288.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M291.5 265.9l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M294.3 265.9l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M299.2 265.9l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M304.9 265.9l.7.7-.8-.7z"/>
+    <path fill="#185200" d="M305.6 265.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M304.1 272l6.4-6c-3.5.8-5 3-6.4 6z"/>
+    <path fill="#103900" d="M309 265.9l.8.7-.7-.7z"/>
+    <path fill="#7b7373" d="M312.6 265.9l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M313.3 265.9l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M314 265.9l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M316.1 265.9l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M316.8 265.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M320.3 265.9l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M321 265.9l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M321.7 265.9l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M322.4 265.9l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M323.1 265.9l.7.7-.7-.7m-136.4.7l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M187.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#428c00" d="M188.5 266.8l.5.2-.5-.2z"/>
+    <path fill="#397b00" d="M189.7 267l.2.5-.2-.5z"/>
+    <path fill="#295200" d="M190.2 266.6l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M192.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M198 266.6l.6.6-.7-.6z"/>
+    <path fill="#425242" d="M200.7 266.6l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M203.6 266.6l.7.6-.8-.6z"/>
+    <path fill="#295200" d="M206.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M209.2 266.6v2h.7l-.7-2m3 .4l.3.5-.3-.5m2.6-.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M216.7 266.8l.5.2-.5-.2z"/>
+    <path fill="#295200" d="M218.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M219 266.6l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M220.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#5a3131" d="M227.5 266.6l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M231 266.6l.7.6-.7-.6z"/>
+    <path fill="#842118" d="M231.7 266.6l.7.6-.7-.6z"/>
+    <path fill="#8c6363" d="M232.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M233.1 266.6l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M249.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M250 266.6l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M252 266.6l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M252.8 266.6l.7.6-.7-.6z"/>
+    <path fill="#8c6363" d="M253.5 266.6l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M257 266.6l.7.6-.7-.6z"/>
+    <path fill="#4a2129" d="M257.7 266.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M258.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#d6a5a5" d="M274.6 266.6l.7.6-.7-.6z"/>
+    <path fill="#946b63" d="M275.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#a52921" d="M276 266.6l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M276.7 266.6l.7.6-.7-.6z"/>
+    <path fill="#4a2129" d="M280.2 266.6l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M281 266.6v.6h6.3l-6.4-.6z"/>
+    <path fill="#212139" d="M287.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M290 266.6l2.2 1.3v-.7l-2.1-.6z"/>
+    <path fill="#8c8c8c" d="M291.5 266.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M292.2 266.6l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M294.3 266.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M295 266.6l-.7 1.3.7-1.3m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M297.8 266.6l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M299.2 266.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M300.6 266.6l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M303.4 266.6l.8.6-.8-.6z"/>
+    <path fill="#103900" d="M304.9 266.6l.7.6-.8-.6m3.6 0l.7.6-.7-.6z"/>
+    <path fill="#313931" d="M311.9 266.6l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M312.6 266.6l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M315.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M316.1 266.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M321.7 266.6l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M322.4 266.6l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M323.1 266.6l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M187.4 267.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M188 267.2l.8.7-.7-.7z"/>
+    <path fill="#103900" d="M188.8 267.2l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M192.3 267.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M193.7 267.2l.7.7-.7-.7m5.2.5l.2.4-.2-.4m1.8-.5l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M201.4 267.2l.7.7-.7-.7m2.1 0l.8.7-.8-.7z"/>
+    <path fill="#294200" d="M204.3 267.2l.6.7-.7-.7m2.9 0l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.1 267.2l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M214.8 267.2l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M216.2 267.2l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M218.3 267.2l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M233.1 267.2l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M233.8 267.2l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M234.5 267.2l.7.7-.7-.7z"/>
+    <path fill="#943131" d="M235.7 267.5l.5.2-.5-.2z"/>
+    <path fill="#c6b5b5" d="M236.6 267.2l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M249.3 267.2l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M252 267.2l.8.7-.7-.7z"/>
+    <path fill="#efefef" d="M252.8 267.2l.7.7-.7-.7z"/>
+    <path fill="#943131" d="M253.5 267.2l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M256.3 267.2l1.4 6-1.4-6z"/>
+    <path fill="#6b0808" d="M257 267.2l1.4 1.4-1.4-1.4z"/>
+    <path fill="#733939" d="M257.7 267.2l.7.7-.7-.7z"/>
+    <path fill="#c69c94" d="M271 267.2l.8.7-.7-.7z"/>
+    <path fill="#ad3931" d="M272.3 267.5l.4.2-.4-.2z"/>
+    <path fill="#bd2110" d="M273.2 267.2l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M273.9 267.2l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M274.6 267.2l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M280.2 267.2v5.4h.7l-.7-5.4z"/>
+    <path fill="#003994" d="M281 267.2c0 12.5-7.3 17-19.8 16.1l-.7 12.7c2.7 0 6.4.2 7-2.7l2.9 2 2.8-2.6-.7 2.6 1.4-1.3h.7l4.2-.7-.7 2 2.1-2.6 1.4 1.3h2.1v-2l1.5.7.7-6c3.5-3 1.4-15 1.4-19.5h-6.4z"/>
+    <path fill="#424242" d="M290 267.2l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M292.2 267.2l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M297.8 267.2v2h.7l-.7-2z"/>
+    <path fill="#185200" d="M299.2 267.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M301.3 267.2v3.4h.7l-.7-3.4z"/>
+    <path fill="#185200" d="M304.1 267.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M304.9 267.2l.7.7-.8-.7z"/>
+    <path fill="#082108" d="M307.7 267.2l.7.7-.7-.7z"/>
+    <path d="M311.2 267.2l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M311.9 267.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M314.7 267.2l-1.4 2 1.4-2z"/>
+    <path fill="#63636b" d="M315.4 267.2l.7.7-.7-.7m-127.3.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M189.5 268l1.4 1.3-1.4-1.4z"/>
+    <path fill="#295200" d="M190.2 268l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M193 268l.7.6-.7-.7z"/>
+    <path fill="#397b00" d="M193.7 268l.7.6-.7-.7m2.1 0v1.4h1.4v-1.4h-1.4z"/>
+    <path fill="#8c8c8c" d="M201.4 268l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M204.3 268l.6.6-.7-.7z"/>
+    <path fill="#103900" d="M215.5 268l.7.6-.7-.7z"/>
+    <path fill="#396b10" d="M217.6 268l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M218.3 268l.7.6-.7-.7z"/>
+    <path fill="#8c7373" fill-opacity=".5" d="M236.6 268v6h.7l-.7-6z"/>
+    <path fill="#efefef" d="M248.6 268l.7.6-.7-.7z"/>
+    <path fill="#10214a" d="M249.3 268l.7.6-.7-.7z"/>
+    <path fill="#636b7b" d="M252 268l.8.6-.7-.7z"/>
+    <path fill="#ad1810" d="M253.5 268l.7.6-.7-.7z"/>
+    <path fill="#420000" d="M257 268l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M290 268l.8.6-.7-.7z"/>
+    <path fill="#63636b" d="M290.8 268l.7.6-.7-.7z"/>
+    <path fill="#425242" d="M292.2 268l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M295 268l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M299.2 268l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 268l1.5 1.3-1.5-1.4z"/>
+    <path fill="#103900" d="M304.1 268l.7.6-.7-.7m2.9 0l.7.7-.7-.7m2.8 0l-3.5 4 3.5-4z"/>
+    <path fill="#082108" d="M310.5 268l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M311.2 268l.7.6-.7-.7z"/>
+    <path fill="#314231" d="M314.7 268l-.7 1.3.7-1.4z"/>
+    <path fill="#bdbdbd" d="M188 268.6l.8.6-.7-.6z"/>
+    <path fill="#397b00" d="M188.8 268.6l.7.6-.7-.6m2 0l.8.6-.7-.6z"/>
+    <path fill="#294200" d="M194 269l.2.5-.3-.5m5 0l.2.5-.2-.5z"/>
+    <path fill="#526b42" d="M201.4 268.6l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M204.3 268.6l.6.6-.7-.6z"/>
+    <path fill="#314231" d="M205 268.6l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M209.2 268.6l.7.6-.7-.6m4.2.6v.7h2.1l-2-.6m2-.7l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M217.6 268.6l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M242.7 268.8l.5.2-.5-.2z"/>
+    <path fill="#8c8c8c" d="M243.7 268.6l.7.6-.8-.6z"/>
+    <path fill="#bdbdbd" d="M244.3 268.6l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M245 268.6l.8.6-.7-.6z"/>
+    <path fill="#9c9494" d="M248.6 268.6l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M249.3 268.6l.7.6-.7-.6z"/>
+    <path fill="#00215a" d="M251.4 268.6l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M252 268.6l.8.6-.7-.6z"/>
+    <path fill="#a51008" d="M253.5 268.6l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M257 268.6l.7.6-.7-.6z"/>
+    <path fill="#940008" d="M257.7 268.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M258.4 268.6l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M262.6 268.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M263.4 268.6l.7.6-.8-.6z"/>
+    <path fill="#8c8c8c" d="M264.5 268.8l.5.2-.5-.2z"/>
+    <path fill="#7b7373" d="M265.5 268.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M290 268.6l.8.6-.7-.6z"/>
+    <path fill="#103900" d="M290.8 268.6l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M291.5 268.6l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M292.2 268.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M292.9 268.6l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M295.5 268.8l.4.2-.4-.2z"/>
+    <path fill="#297b00" d="M298.5 268.6l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M299.2 268.6l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M300 268.6l.6.6-.7-.6z"/>
+    <path fill="#103900" d="M303.4 268.6l.8.6-.8-.6m2.9 0l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M314.7 268.6l.7.6-.7-.6z"/>
+    <path fill="#396b10" d="M188.8 269.3l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M190.9 269.3l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M196.8 269.7l.2.5-.3-.5z"/>
+    <path fill="#396b10" d="M201.4 269.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M203.6 269.3l.7.6-.8-.6z"/>
+    <path fill="#dedede" d="M205 269.3l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M205.7 269.3l2 2-2-2z"/>
+    <path fill="#294200" d="M208.7 269.7l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M214.1 269.3l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M217 269.3l.6.6-.7-.6z"/>
+    <path fill="#003994" d="M243 269.3c0 3.3.3 5 4.2 5.3.6-3.6-.6-4.6-4.3-5.4z"/>
+    <path fill="#002984" d="M244.3 269.3l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M245 269.3l.8.6-.7-.6z"/>
+    <path fill="#10214a" d="M245.8 269.3l.7.6-.7-.6z"/>
+    <path fill="#636b7b" d="M246.5 269.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M247.2 269.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M247.9 269.3l.7.6-.7-.6z"/>
+    <path fill="#31425a" d="M248.6 269.3l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M251.4 269.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M252.8 269.3l.7.6-.7-.6z"/>
+    <path fill="#ce1810" d="M253.5 269.3l.7.6-.7-.6z"/>
+    <path fill="#420000" d="M257 269.3l.7.6-.7-.6z"/>
+    <path fill="#ce0008" d="M257.7 269.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M258.4 269.3l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M260.5 269.3l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M261.2 269.3l.7.6-.7-.6z"/>
+    <path fill="#21315a" d="M262 269.3l.6.6-.7-.6z"/>
+    <path fill="#00216b" d="M262.6 269.3l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M263.4 269.3l.7.6-.8-.6z"/>
+    <path fill="#003994" d="M259.1 270.6c1.7 5.8 6.3 4 6.3-1.4l-6.3 1.4z"/>
+    <path fill="#efefef" d="M290 269.3l.8.6-.7-.6z"/>
+    <path fill="#185200" d="M290.8 269.3l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M291.5 269.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M292.2 269.3l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M292.9 269.3l.7.6-.7-.6m2.8 0l.7.6-.7-.6zm9.9 0l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M309 269.3l.8.6-.7-.6z"/>
+    <path fill="#214210" d="M313.3 269.3l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M314 269.3l-.7 1.3.7-1.4z"/>
+    <path fill="#5a6b52" d="M188.8 270l.7.6-.7-.7z"/>
+    <path fill="#397b00" d="M190.9 270l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M191.6 270l.7.6-.7-.7m2.8 0l.7.7-.7-.7m4.2 0l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M203.6 270l.7.6-.8-.7z"/>
+    <path fill="#cecece" d="M205.7 270l2 2-2-2z"/>
+    <path fill="#397b00" d="M212.7 270l.7.6-.7-.7z"/>
+    <path fill="#214210" d="M216.2 270l-.7 1.3.7-1.4z"/>
+    <path fill="#cecece" d="M217 270l-.8 1.3.7-1.4z"/>
+    <path fill="#002984" d="M247.2 270l.7.6-.7-.7z"/>
+    <path fill="#001039" d="M247.9 270l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M248.6 270l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M251.4 270l.7.6-.7-.7z"/>
+    <path fill="#b5adad" d="M252.8 270l.7.6-.7-.7z"/>
+    <path fill="#6b0808" d="M257 270l.7.6-.7-.7z"/>
+    <path fill="#de2110" d="M257.7 270l.7.6-.7-.7z"/>
+    <path fill="#524242" d="M258.4 270l.7.6-.7-.7z"/>
+    <path fill="#525a6b" d="M259.1 270l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M259.8 270l.7.6-.7-.7z"/>
+    <path fill="#002984" d="M260.5 270l.7.6-.7-.7z"/>
+    <path fill="#395231" d="M290.8 270l.7.6-.7-.7z"/>
+    <path fill="#296300" d="M291.5 270l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M292.2 270l.7.6-.7-.7z"/>
+    <path fill="#5a6b52" d="M292.9 270l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M295.7 270l1.4 1.3-1.4-1.4z"/>
+    <path fill="#297b00" d="M296.4 270l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M298.8 270.4l.2.4-.2-.4z"/>
+    <path fill="#297b00" d="M299.2 270l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M304.9 270l.7.6-.8-.7z"/>
+    <path fill="#296300" d="M308.4 270l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M312.6 270l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M188.8 270.6l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M191.6 270.6l.7.7-.7-.7m3 .4l.3.5-.3-.5z"/>
+    <path fill="#295200" d="M196.5 270.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M204.3 270.6l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M207.8 270.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M208.5 270.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M212 270.6l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M247.9 270.6l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M248.6 270.6l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M250.7 270.6l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M251.4 270.6l.7.7-.7-.7z"/>
+    <path fill="#ad0008" d="M257.7 270.6l.7.7-.7-.7z"/>
+    <path fill="#390821" d="M258.4 270.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M290.8 270.6l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M291.5 270.6l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M292.2 270.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M292.9 270.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M293.6 270.6l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300 270.6l.6.7-.7-.7z"/>
+    <path fill="#185200" d="M301.3 270.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.1 270.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307.7 270.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M311.9 270.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M312.6 270.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M188.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M189.5 271.3l.7.6-.7-.6m2.8 0l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M196.5 271.3l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M202.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M204.3 271.3l1.3 1.3-1.3-1.3z"/>
+    <path fill="#cecece" d="M205 271.3l1.4 1.3-1.4-1.3z"/>
+    <path fill="#001000" d="M207.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M210.6 271.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M211.3 271.3l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M214.1 271.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M214.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M215.5 271.3l.7.6-.7-.6z"/>
+    <path fill="#001039" d="M247.9 271.3l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M250.7 271.3l.7.6-.7-.6z"/>
+    <path fill="#7b0008" d="M257 271.3l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M289.1 271.5l.5.2-.5-.2z"/>
+    <path fill="#9c9494" d="M290.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M292 271.5l.4.2-.4-.2z"/>
+    <path fill="#7b7373" d="M292.9 271.3l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M293.6 271.3l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M296.6 271.7l.3.5-.3-.5m2.1 0l.3.5-.2-.5z"/>
+    <path fill="#296300" d="M300 271.3l.6.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M303.4 271.3l.8.6-.8-.6z"/>
+    <path fill="#297b00" d="M307 271.3l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M311.2 271.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M311.9 271.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M314.7 271.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M315.4 271.3l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M316.1 271.3l.7.6-.7-.6z"/>
+    <path fill="#395231" d="M316.8 271.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M317.5 271.3l.7.6-.7-.6z"/>
+    <path fill="#5a5231" d="M189.5 272l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M192.3 272l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M194.4 272l1.4 1.3-1.4-1.4z"/>
+    <path fill="#397b00" d="M195.1 272l.7.6-.7-.7m3.5 0l-.7 1.4h1.4l-.7-1.4z"/>
+    <path fill="#396b10" d="M201.4 272l.7.6-.7-.7z"/>
+    <path fill="#526b42" d="M203 272.4l.3.4-.2-.4z"/>
+    <path fill="#efefef" d="M207 272l-.6 1.3.7-1.4z"/>
+    <path fill="#294200" d="M207.8 272l.7.6-.7-.7m2.3.5l.3.4-.3-.4z"/>
+    <path fill="#295200" d="M210.6 272l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M212 272l.7.6-.7-.7z"/>
+    <path fill="#63636b" d="M212.7 272l.7.6-.7-.7z"/>
+    <path fill="#ada5a5" d="M213.4 272l.7.6-.7-.7z"/>
+    <path fill="#00184a" d="M247.9 272l.7.6-.7-.7z"/>
+    <path fill="#31425a" d="M250.7 272l.7.6-.7-.7z"/>
+    <path fill="#6b0808" d="M258 272.4l.2.4-.2-.4z"/>
+    <path fill="#bd0008" d="M258.4 272l.7.6-.7-.7z"/>
+    <path fill="#00215a" d="M259.1 272l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M288.7 272l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M289.4 272l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M290.8 272l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M291.5 272l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M292.9 272l.7.6-.7-.7z"/>
+    <path fill="#314231" d="M293.6 272l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M301.3 272v2.6h.7l-.7-2.7z"/>
+    <path fill="#185200" d="M303.2 272.1l.5.3-.5-.2m2.4-.3l-1.5 2 1.4-2z"/>
+    <path fill="#296300" d="M306.3 272l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M310.5 272l-1.4 3.3h.7l.7-3.4z"/>
+    <path fill="#63636b" d="M311.2 272l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M313.3 272l.7.6-.7-.7z"/>
+    <path fill="#425242" d="M314 272l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M314.7 272l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M315.4 272l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M317.5 272l.7.6-.7-.7z"/>
+    <path fill="#cecece" d="M318.2 272l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M189.5 272.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M192.8 272.8l.4.2-.4-.2z"/>
+    <path fill="#526b42" d="M201.4 272.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204 272.8l.5.2-.5-.2z"/>
+    <path fill="#314231" d="M205.7 272.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M207 272.6l-.6 1.3.7-1.3z"/>
+    <path fill="#397b00" d="M209.2 272.6v2l2-2h-2z"/>
+    <path fill="#5a6b52" d="M211.3 272.6l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M212 272.6l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M242.2 272.6l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M247.6 272.8l.5.2-.5-.2z"/>
+    <path fill="#7b7373" d="M250.7 272.6l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M258.7 273l.2.5-.2-.5z"/>
+    <path fill="#390821" d="M259.1 272.6l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M280.2 272.6l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M289.4 272.6l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M291.5 272.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M292.9 272.6l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M293.6 272.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 272.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M296.9 272.8l.5.2-.5-.2z"/>
+    <path fill="#185200" d="M298.5 272.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M302.7 272.6l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M310.5 272.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M311.2 272.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M311.9 272.6l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M312.6 272.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M313.3 272.6l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M318.2 272.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M189.5 273.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M190.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M193 273.3l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M195.1 273.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M198 273.3l.6.6-.7-.6z"/>
+    <path fill="#6b735a" d="M201.4 273.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M202.8 273.3l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M204.5 273.7l.2.5-.2-.5z"/>
+    <path fill="#315221" d="M207 273.3l.8.6-.7-.6z"/>
+    <path fill="#103900" d="M209.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M210.6 273.3l-.7 1.3.7-1.3z"/>
+    <path fill="#292921" d="M212 273.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M212.7 273.3l.7.6-.7-.6z"/>
+    <path fill="#733939" d="M220.4 273.3l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M227.5 273.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M242.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M250 273.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M250.7 273.3l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M257 273.3l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M257.7 273.3l.7.6-.7-.6z"/>
+    <path fill="#7b0008" d="M259.1 273.3l.7.6-.7-.6z"/>
+    <path fill="#636b7b" d="M265.5 273.3l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M280.5 273.7l.2.5-.2-.5z"/>
+    <path fill="#001000" d="M289.4 273.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M290 273.3l.8.6-.7-.6z"/>
+    <path fill="#6b735a" d="M291.5 273.3l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M294 273.5l.5.2-.4-.2z"/>
+    <path fill="#103900" d="M297.1 273.3l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M299.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M309.8 273.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M310.5 273.3l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M311.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M311.9 273.3l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M318.2 273.3l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M319 273.3l.6.6-.7-.6z"/>
+    <path fill="#314231" d="M190.2 274l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M193 274l.7.6-.7-.7z"/>
+    <path fill="#397b00" d="M195.1 274l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M195.8 274l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M198 274l.6.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M201.7 274.4l.2.4-.2-.4m1.1-.5l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M206.4 274l.7.6-.7-.7z"/>
+    <path fill="#397b00" d="M207 274l-.6 3.3h.7v-3.4z"/>
+    <path fill="#294200" d="M208.7 274.4l.2.4-.2-.4z"/>
+    <path fill="#bdbdbd" d="M211.3 274l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M212.2 274.4l.3.4-.3-.4z"/>
+    <path fill="#bdbdbd" d="M212.7 274l.7.6-.7-.7m5.6 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M219 274l.7.6-.7-.7z"/>
+    <path fill="#315221" d="M219.7 274l.7.6-.7-.7z"/>
+    <path fill="#310000" d="M220.4 274l.7.6-.7-.7z"/>
+    <path fill="#a51008" d="M228.2 274l.7.6-.7-.7z"/>
+    <path fill="#845a52" d="M236.6 274l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M242.2 274l.7.6-.7-.7z"/>
+    <path fill="#10214a" d="M243 274l.6.6-.7-.7z"/>
+    <path fill="#00216b" d="M250 274l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250.7 274l.7.6-.7-.7z"/>
+    <path fill="#a51008" d="M257 274l.7.6-.7-.7z"/>
+    <path fill="#940008" d="M257.7 274l1.4 1.3-1.4-1.4z"/>
+    <path fill="#bd0008" d="M258.9 274.2l.5.2-.5-.2z"/>
+    <path fill="#00215a" d="M259.8 274l.7.6-.7-.7z"/>
+    <path fill="#10214a" d="M264.8 274l.6.6-.6-.7z"/>
+    <path fill="#cecece" d="M265.5 274l-.7 1.3.7-1.4z"/>
+    <path fill="#103900" d="M289.4 274l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M290 274l.8.6-.7-.7z"/>
+    <path fill="#9c9494" d="M291.5 274l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M292.2 274l.7.6-.7-.7z"/>
+    <path fill="#103900" d="M294.3 274l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M297.1 274l.7.6-.7-.7zm7 0l.8.6-.7-.7z"/>
+    <path fill="#103900" d="M309 274l.8.6-.7-.7z"/>
+    <path fill="#184a00" d="M309.8 274l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M310.5 274l.7.6-.7-.7m6 .3l.6.2-.5-.2m1.6-.3l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M319 274l.6.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M190.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M190.9 274.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M193.7 274.6l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M195.8 274.6l1.4 1.3-1.4-1.3z"/>
+    <path fill="#397b00" d="M196.5 274.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M198 274.6l-.8 2 .7-2z"/>
+    <path fill="#bdbdbd" d="M202.8 274.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.6 274.6l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M205 274.6l.7.7-.7-.7z"/>
+    <path fill="#738c63" d="M209.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M210.6 274.6l-2.8 3.4 2.8-3.4z"/>
+    <path fill="#214210" d="M211.3 274.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M213 275l.2.5-.3-.5z"/>
+    <path fill="#efefef" d="M215.5 274.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M216.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M217 274.6l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M217.6 274.6v2h.7l-.7-2z"/>
+    <path fill="#397b00" d="M218.8 274.8l.5.2-.5-.2z"/>
+    <path fill="#214210" d="M219.7 274.6l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M220.4 274.6l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M228.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#943131" d="M236.6 274.6l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M243 274.6l.6.7-.7-.7z"/>
+    <path fill="#636b7b" d="M243.7 274.6l.7.7-.8-.7z"/>
+    <path fill="#10295a" d="M244.3 274.6l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M245.5 274.8l.5.2-.5-.2z"/>
+    <path fill="#001039" d="M246.5 274.6l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M250 274.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M250.7 274.6l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M257 274.6l.7.7-.7-.7z"/>
+    <path fill="#bd0008" d="M257.7 274.6l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M259.1 274.6l2.8 7.4-2.8-7.4z"/>
+    <path fill="#391810" d="M259.8 274.6l.7.7-.7-.7z"/>
+    <path fill="#636b7b" d="M260.5 274.6l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M261.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M264 274.6l.8.7-.8-.7z"/>
+    <path fill="#9c4a42" d="M271 274.6l.8.7-.7-.7z"/>
+    <path fill="#ce1810" d="M279.5 274.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M289.6 275l.2.5-.2-.5z"/>
+    <path fill="#395231" d="M290 274.6l.8.7-.7-.7z"/>
+    <path fill="#dedede" d="M291.5 274.6l-.7 1.3.7-1.3z"/>
+    <path fill="#296300" d="M292.2 274.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M294.3 274.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.1 274.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M303.4 274.6l.8.7-.8-.7z"/>
+    <path fill="#296300" d="M307.9 275l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M308.4 274.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M314.7 274.6l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M315.4 274.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M316.1 274.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M316.8 274.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M317.5 274.6l1.4 1.3-1.4-1.3z"/>
+    <path fill="#315221" d="M319 274.6l.6.7-.7-.7z"/>
+    <path fill="#7b7373" d="M190.9 275.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M191.6 275.3l1.4 1.3-1.4-1.3m2.1 0l2.1 1.3v-.7l-2.1-.6z"/>
+    <path fill="#294200" d="M194.4 275.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M197.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M201.4 275.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M202.8 275.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M203.6 275.3l.7.6-.8-.6z"/>
+    <path fill="#294200" d="M205 275.3v2h.7l-.7-2z"/>
+    <path fill="#295200" d="M207.8 275.3l.7.6-.7-.6z"/>
+    <path fill="#396b10" d="M208.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M209.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M210.6 275.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M212 275.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M214.1 275.3l-.7 1.3.7-1.3z"/>
+    <path fill="#63636b" d="M214.8 275.3l.7.6-.7-.6z"/>
+    <path fill="#396b10" d="M215.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M219 275.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M219.7 275.3l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M228.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#a51008" d="M236.6 275.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M246.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M247.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M250 275.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M252.8 275.3l.7.6-.7-.6z"/>
+    <path fill="#a51008" d="M257 275.3l.7.6-.7-.6z"/>
+    <path fill="#6b0808" d="M258.7 275.7l.2.5-.2-.5z"/>
+    <path fill="#7b0008" d="M259.8 275.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M260.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#ad3931" d="M271 275.3l.8.6-.7-.6z"/>
+    <path fill="#842118" d="M279.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M290 275.3l.8.6-.7-.6z"/>
+    <path fill="#184a00" d="M292.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M294.8 275.5l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M299.2 275.3l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M306.3 275.3l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M307 275.3l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M313.3 275.3l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M314 275.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M314.7 275.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M317.5 275.3l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M319 275.3l.6.6-.7-.6z"/>
+    <path fill="#cecece" d="M319.6 275.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M324.6 275.3l.6.6-.6-.6z"/>
+    <path fill="#8c8c8c" d="M325.5 275.7l.2.5-.2-.5z"/>
+    <path fill="#63636b" d="M191.6 276l.7.6-.7-.7z"/>
+    <path fill="#001000" d="M198 276l.6.6-.7-.7z"/>
+    <path fill="#397b00" d="M200.7 276l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M201.4 276l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M203.6 276l.7.6-.8-.7z"/>
+    <path fill="#103900" d="M207.8 276l.7.6-.7-.7z"/>
+    <path fill="#bdc6ad" d="M208.5 276l.7.6-.7-.7z"/>
+    <path fill="#214210" d="M209.9 276l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M211.3 276l.7.6-.7-.7z"/>
+    <path fill="#526b42" d="M213 276.4l.2.4-.3-.4z"/>
+    <path fill="#314231" d="M214.1 276l.7.6-.7-.7z"/>
+    <path fill="#397b00" d="M218.3 276l.7.6-.7-.7z"/>
+    <path fill="#214210" d="M219 276l.7.6-.7-.7z"/>
+    <path fill="#ce2110" d="M228.2 276l.7.6-.7-.7z"/>
+    <path fill="#ce1810" d="M236.6 276l.7.6-.7-.7z"/>
+    <path fill="#a59494" d="M237.3 276l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M246.5 276l.7.6-.7-.7z"/>
+    <path fill="#002984" d="M247.2 276l.7.6-.7-.7z"/>
+    <path fill="#10295a" d="M250 276l.7.6-.7-.7z"/>
+    <path fill="#c6b5b5" d="M252.8 276l.7.6-.7-.7z"/>
+    <path fill="#ce1810" d="M253.7 276.4l.3.4-.3-.4z"/>
+    <path fill="#bd0008" d="M259.8 276l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M260.5 276l.7.6-.7-.7z"/>
+    <path fill="#debdb5" d="M270.4 276l.7.6-.7-.7z"/>
+    <path fill="#ce1810" d="M271 276l.8.6-.7-.7z"/>
+    <path fill="#00184a" d="M279.5 276l.7.6-.7-.7z"/>
+    <path fill="#5a7b42" d="M289.4 276l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M290 276l.8.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M290.8 276l.7.6-.7-.7z"/>
+    <path fill="#315221" d="M292.2 276l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 276l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M295 276v2h.7l-.7-2z"/>
+    <path fill="#185200" d="M298 276.4l.3.4-.2-.4z"/>
+    <path fill="#296300" d="M299.2 276l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M302 276l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M305.6 276l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M306.3 276l.7.6-.7-.7z"/>
+    <path fill="#296300" d="M311.9 276l.7.6-.7-.7z"/>
+    <path fill="#395231" d="M312.6 276l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M313.3 276l.7.6-.7-.7z"/>
+    <path fill="#63636b" d="M318.2 276l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M319 276l.6.6-.7-.7z"/>
+    <path fill="#63636b" d="M319.6 276l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M322.4 276l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M323.1 276l.7.6-.7-.7z"/>
+    <path fill="#314231" d="M323.9 276l.7.6-.8-.7z"/>
+    <path fill="#001000" d="M324.6 276l.6.6-.6-.7z"/>
+    <path fill="#8c8c8c" d="M192.3 276.6l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M193 276.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M198 276.6l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M198.9 277l.2.5-.2-.4z"/>
+    <path fill="#8c8c8c" d="M201.4 276.6l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M203.6 276.6l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M207 276.6l-.6 1.3.7-1.3z"/>
+    <path fill="#425242" d="M207.8 276.6l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M209.2 276.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M211.3 276.6l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M213.4 276.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M217 276.6l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M217.6 276.6l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M219 276.6l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M228.9 276.6l.7.7-.7-.7z"/>
+    <path fill="#842118" d="M237.3 276.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M246.5 276.6l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M250 276.6v5.4h.7l-.7-5.4z"/>
+    <path fill="#bdbdbd" d="M252.8 276.6l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M257 276.6l.7.7-.7-.7z"/>
+    <path fill="#ad0008" d="M259.1 276.6l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M260.5 276.6l.7.7-.7-.7z"/>
+    <path fill="#9c4239" d="M270.4 276.6l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M278.8 276.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M288 276.6l1.4 1.3-1.4-1.3z"/>
+    <path fill="#4a6342" d="M289.6 277l.2.5-.2-.4z"/>
+    <path fill="#314231" d="M290.8 276.6l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M292.2 276.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M301.3 276.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302 276.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.9 276.6l.7.7-.8-.7z"/>
+    <path fill="#296300" d="M305.6 276.6l.7.7-.7-.7m4.9 0l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M311.2 276.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M311.9 276.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M319 276.6l.6.7-.7-.7z"/>
+    <path fill="#52525a" d="M319.6 276.6l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M320.3 276.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M321 276.6l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M321.7 276.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M322.7 277l.2.5-.2-.4z"/>
+    <path fill="#296300" d="M323.1 276.6l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M323.9 276.6l.7.7-.8-.7z"/>
+    <path fill="#bdbdbd" d="M324.6 276.6l.6.7-.6-.7z"/>
+    <path fill="#efefef" d="M193 277.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M193.7 277.3l.7.6-.7-.6z"/>
+    <path fill="#5a5231" d="M194.4 277.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M195.1 277.3l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M201.4 277.3l.7.6-.7-.6z"/>
+    <path fill="#526b42" d="M203.6 277.3l.7.6-.8-.6z"/>
+    <path fill="#213918" d="M207 277.3l.8.6-.7-.6z"/>
+    <path fill="#315221" d="M208.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M210.6 277.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M211.3 277.3l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M212.7 277.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M213.4 277.3l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M216.2 277.3l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M217 277.3l.6.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M219 277.3l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M228.9 277.3l.7.6-.7-.6z"/>
+    <path fill="#ce1810" d="M237.3 277.3l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M238 277.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M246.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M252.8 277.3l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M253.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#ad0008" d="M257.7 277.3l.7.6-.7-.6z"/>
+    <path fill="#bd0008" d="M258.4 277.3l.7.6-.7-.6z"/>
+    <path fill="#7b0008" d="M259.1 277.3l.7.6-.7-.6z"/>
+    <path fill="#940008" d="M260.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M261.2 277.3l.7.6-.7-.6z"/>
+    <path fill="#a5847b" d="M269.7 277.3l-.7 1.3.7-1.3z"/>
+    <path fill="#ce1810" d="M270.4 277.3l.7.6-.7-.6z"/>
+    <path fill="#392121" d="M278.8 277.3l.7.6-.7-.6z"/>
+    <path fill="#103910" d="M288 277.3l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M290.8 277.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M291.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M292.2 277.3l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M298 277.7l.3.5-.2-.5z"/>
+    <path fill="#297b00" d="M300.6 277.3l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M301.3 277.3l.7.6-.7-.6m2.8 0l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M309 277.3l.8.6-.7-.6z"/>
+    <path fill="#214210" d="M309.8 277.3l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M310.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M316.6 277.5l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M317.5 277.3l.7.6-.7-.6z"/>
+    <path fill="#6b735a" d="M318.2 277.3l.7.6-.7-.6z"/>
+    <path fill="#4a6342" d="M319 277.3l.6.6-.7-.6z"/>
+    <path fill="#184a00" d="M319.6 277.3l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M320.3 277.3l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M321 277.3l-.7 1.3.7-1.3z"/>
+    <path fill="#319400" d="M321.7 277.3l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M323.1 277.3l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M323.9 277.3l.7.6-.8-.6z"/>
+    <path fill="#dedede" d="M195.1 278l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M195.8 278l.7.6-.7-.7z"/>
+    <path fill="#5a5231" d="M196.5 278l.7.6-.7-.7z"/>
+    <path fill="#295200" d="M197.2 278l.7.6-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M201.4 278l.7.6-.7-.7z"/>
+    <path fill="#292100" d="M206.4 278l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M207 278l.8.6-.7-.7z"/>
+    <path fill="#63636b" d="M207.8 278l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M210.6 278l.7.6-.7-.7m2 0l.8.7-.7-.7z"/>
+    <path fill="#397b00" d="M215.5 278l.7.6-.7-.7z"/>
+    <path fill="#294200" d="M216.2 278l.7.6-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M229.6 278l.7.6-.7-.7z"/>
+    <path fill="#b51010" d="M238 278l1.4 1.3-1.4-1.4z"/>
+    <path fill="#a59494" d="M238.7 278l.7.6-.7-.7z"/>
+    <path fill="#a51008" d="M253.5 278l.7.6-.7-.7z"/>
+    <path fill="#de2110" d="M258.4 278v9.3h2.1l-2-9.4z"/>
+    <path fill="#6b0808" d="M259.4 278.4l.2.5-.2-.5z"/>
+    <path fill="#ce0008" d="M260.5 278l.7.6-.7-.7z"/>
+    <path fill="#7b7373" d="M261.2 278l.7.6-.7-.7z"/>
+    <path fill="#ce1810" d="M269.7 278l.7.6-.7-.7z"/>
+    <path fill="#ad1810" d="M278.1 278l.7.6-.7-.7z"/>
+    <path fill="#5a6b52" d="M288 278l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M288.7 278l.7.6-.7-.7z"/>
+    <path fill="#103910" d="M289.4 278l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M290.8 278l.7.6-.7-.7z"/>
+    <path fill="#9c9494" d="M291.5 278l.7.6-.7-.7z"/>
+    <path fill="#8c9c84" d="M292.4 278.4l.3.5-.3-.5z"/>
+    <path fill="#296300" d="M295 278l.7.6-.7-.7z"/>
+    <path fill="#297b00" d="M295.7 278l-.7 1.3.7-1.4z"/>
+    <path fill="#185200" d="M300.6 278l.7.6-.7-.7m2.1 0l-2 2.7 2-2.7z"/>
+    <path fill="#184a00" d="M303.4 278l.8.6-.8-.7z"/>
+    <path fill="#297b00" d="M307.7 278l.7.6-.7-.7z"/>
+    <path fill="#214210" d="M308.4 278l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M309 278l.8.6-.7-.7z"/>
+    <path fill="#cecece" d="M309.8 278l.7.6-.7-.7z"/>
+    <path fill="#bdbdbd" d="M310.5 278l.7.6-.7-.7z"/>
+    <path fill="#8c8c8c" d="M311.6 278.2l.5.2-.5-.2z"/>
+    <path fill="#6b735a" d="M312.6 278l.7.6-.7-.7z"/>
+    <path fill="#4a6342" d="M313.3 278l.7.6-.7-.7z"/>
+    <path fill="#426331" d="M314 278l.7.6-.7-.7z"/>
+    <path fill="#184a00" d="M314.7 278l.7.6-.7-.7z"/>
+    <path fill="#185200" d="M315.4 278l.7.6-.7-.7z"/>
+    <path fill="#296300" d="M316.6 278.2l.4.2-.4-.2z"/>
+    <path fill="#184a00" d="M321 278l.7.6-.7-.7z"/>
+    <path fill="#63636b" d="M321.7 278l.7.6-.7-.7z"/>
+    <path fill="#dedede" d="M322.4 278l.7.6-.7-.7m-125.2.7l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M198 278.6l.6.7-.7-.7z"/>
+    <path fill="#103900" d="M198.6 278.6l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M199.3 278.6l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200 278.6l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M201.4 278.6l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M202.1 278.6l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M206.4 278.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M207 278.6l.8.7-.7-.7z"/>
+    <path fill="#295200" d="M207.8 278.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M209.9 278.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M212.7 278.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M215.5 278.6l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M218.3 278.6l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M229.6 278.6l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M230.3 278.6l1.4 2-1.4-2z"/>
+    <path fill="#8c7373" d="M239.4 278.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M240.1 278.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M253.5 278.6l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M258 279l.2.5-.2-.4z"/>
+    <path fill="#6b2131" d="M261.2 278.6l.7.7-.7-.7z"/>
+    <path fill="#946b63" d="M268.3 278.6l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M269 278.6l.7.7-.7-.7m8.4 0l-.7 1.4.7-1.4z"/>
+    <path fill="#00216b" d="M278.1 278.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M288 278.6l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M288.7 278.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M289.4 278.6l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M291.5 278.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296 279l.2.5-.3-.4m2-.5l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M306.3 278.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M307 278.6l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M307.7 278.6l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M308.4 278.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M309 278.6l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M309.8 278.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M310.5 278.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M319 278.6l.6.7-.7-.7z"/>
+    <path fill="#184a00" d="M319.6 278.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M320.3 278.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M321 278.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M198 279.3l.6.7-.7-.7z"/>
+    <path fill="#bd2110" d="M198.6 279.3l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M200 279.3l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M202.1 279.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M205.7 279.3l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M206.4 279.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M207 279.3l.8.7-.7-.7z"/>
+    <path fill="#397b00" d="M209.7 279.5l.4.2-.4-.2m2.8 0l.4.2-.4-.2z"/>
+    <path fill="#103900" d="M214.8 279.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M217.6 279.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M218.3 279.3l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M240.1 279.3l.7.7-.7-.7z"/>
+    <path fill="#8c7373" d="M240.8 279.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M241.5 279.3l.7.7-.7-.7z"/>
+    <path fill="#943131" d="M253.7 279.7l.3.5-.3-.5z"/>
+    <path fill="#940008" d="M259.1 279.3l.7.7-.7-.7z"/>
+    <path fill="#ad0008" d="M259.8 279.3l.7.7-.7-.7z"/>
+    <path fill="#940008" d="M261.2 279.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M262 279.3l.6.7-.7-.7z"/>
+    <path fill="#a5847b" d="M266.9 279.3l.7.7-.7-.7z"/>
+    <path fill="#9c2118" d="M267.6 279.3l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M277.4 279.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M288.2 279.7l.2.5-.2-.5z"/>
+    <path fill="#297b00" d="M288.7 279.3v.7h2v-.7h-2z"/>
+    <path fill="#185200" d="M289.4 279.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.5 279.3l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M292.2 279.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M297.8 279.3l.7.7-.7-.7m7.8 0l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M306.3 279.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M307 279.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M317.5 279.3l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M318.2 279.3l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M319 279.3l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M319.6 279.3l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M198 280l.6.6-.7-.6z"/>
+    <path fill="#422100" d="M200.7 280l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M202.1 280l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M202.8 280l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M205.7 280l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M207 280l.8.6-.7-.6z"/>
+    <path fill="#294200" d="M209.2 280l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M212 280l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M214.1 280l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M214.8 280l.7.6-.7-.6z"/>
+    <path fill="#396b10" d="M217.6 280l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M218.3 280l.7.6-.7-.6z"/>
+    <path fill="#a51008" d="M231.7 280l.7.6-.7-.6m9.8 0l.7.6-.7-.6z"/>
+    <path fill="#9c2929" d="M242.2 280l.7.6-.7-.6z"/>
+    <path fill="#845a52" d="M243 280l.6.6-.7-.6z"/>
+    <path fill="#a59494" d="M243.7 280l.7.6-.8-.6z"/>
+    <path fill="#c6b5b5" d="M244.3 280l.7.6-.7-.6z"/>
+    <path fill="#8c7373" d="M245.5 280.2l.5.2-.5-.2z"/>
+    <path fill="#212139" d="M246.5 280l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M257.7 280l.7.6-.7-.6z"/>
+    <path fill="#ce0008" d="M259.1 280l.7.6-.7-.6z"/>
+    <path fill="#6b0808" d="M259.8 280l.7.6-.7-.6z"/>
+    <path fill="#ce0008" d="M261.2 280l.7.6-.7-.6z"/>
+    <path fill="#734a42" d="M262 280l.6.6-.7-.6z"/>
+    <path fill="#946b63" d="M262.6 280l.7.6-.7-.6z"/>
+    <path fill="#bd8c8c" d="M263.4 280l.7.6-.8-.6z"/>
+    <path fill="#a5847b" d="M264 280l.8.6-.8-.6z"/>
+    <path fill="#9c5a52" d="M264.8 280l.6.6-.6-.6z"/>
+    <path fill="#ad3931" d="M265.5 280l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M266.2 280l.7.6-.7-.6m9.8 0l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M276.7 280l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M288.7 280l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M290.3 280.4l.2.5-.2-.5z"/>
+    <path fill="#297b00" d="M291.5 280l.7.6-.7-.6z"/>
+    <path fill="#082108" d="M292.2 280l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M295.7 280v2h.7l-.7-2z"/>
+    <path fill="#103900" d="M304.9 280l.7.6-.8-.6z"/>
+    <path fill="#297b00" d="M315.4 280l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M316.1 280l.7.6-.7-.6z"/>
+    <path fill="#425242" d="M316.8 280l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M317.5 280l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M318.2 280l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M198 280.6l.6.7-.7-.7z"/>
+    <path fill="#7b1008" d="M198.6 280.6l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M200 280.6l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M200.7 280.6l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M202.8 280.6l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M205.7 280.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M206.4 280.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207 280.6l.8.7-.7-.7m2 0l.8.7-.7-.7m2 0l-1.3 2.7h.7l.7-2.7z"/>
+    <path fill="#397b00" d="M212 280.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M213.9 280.9l.4.2-.4-.2z"/>
+    <path fill="#397b00" d="M217 280.6l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M217.6 280.6l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M231.7 280.6l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M232.4 280.6l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M246.5 280.6l.7.7-.7-.7z"/>
+    <path fill="#8c6363" d="M253.5 280.6l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M258 281l.2.5-.2-.4z"/>
+    <path fill="#520808" d="M259.8 280.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M262 280.6l.6.7-.7-.7z"/>
+    <path fill="#7b1008" d="M275.3 280.6l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M276 280.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M288.7 280.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M292.2 280.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 280.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M303.4 280.6l.8.7-.8-.7z"/>
+    <path fill="#103900" d="M304.1 280.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M314 280.6l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M314.7 280.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M315.4 280.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M316.1 280.6l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M198.6 281.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M199.3 281.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M200 281.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M200.7 281.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M201.4 281.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 281.3l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M203.6 281.3l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M205.7 281.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M206.4 281.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M207 281.3l.8.7-.7-.7z"/>
+    <path fill="#294200" d="M211.3 281.3l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M212.7 281.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M213.4 281.3l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M217 281.3l-1.5 2 1.4-2z"/>
+    <path fill="#ad1810" d="M233.1 281.3l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M233.8 281.3l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M246.5 281.3l.7.7-.7-.7z"/>
+    <path fill="#8c7373" d="M253.5 281.3l.7.7-.7-.7z"/>
+    <path fill="#6b0808" d="M259.8 281.3l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M262 281.3l.6.7-.7-.7z"/>
+    <path fill="#ad1810" d="M273.9 281.3l.7.7-.7-.7z"/>
+    <path fill="#291029" d="M274.6 281.3l.7.7-.7-.7z"/>
+    <path fill="#29396b" d="M287.3 281.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M288.7 281.3l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M290 281.3l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M290.8 281.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M292.2 281.3l.7.7-.7-.7m10.5 0l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M303.4 281.3l.8.7-.8-.7z"/>
+    <path fill="#297b00" d="M309 281.3l1.5 1.3-1.4-1.3z"/>
+    <path fill="#185200" d="M309.8 281.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M310.5 281.3v.7h2.8l-2.8-.7z"/>
+    <path fill="#185200" d="M313.3 281.3l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M314 281.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314.7 281.3v.7h2.1l-2.1-.7z"/>
+    <path fill="#4a6342" d="M316.8 281.3v.7h2.1l-2-.7z"/>
+    <path fill="#7b8c73" d="M319 281.3l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M319.6 281.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M320.3 281.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M198.6 282l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M201.4 282l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M203.6 282l.7.6-.8-.6z"/>
+    <path fill="#295200" d="M205 282l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M205.7 282l.7.6-.7-.6z"/>
+    <path fill="#733939" d="M206.4 282l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M211.3 282l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M212 282l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M217 282l-.8 1.3.7-1.3z"/>
+    <path fill="#b51010" d="M234.5 282l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M235.2 282l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M236 282l1.3 1.3-1.4-1.3z"/>
+    <path fill="#ce1810" d="M246.5 282l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M247.2 282l.7.6-.7-.6z"/>
+    <path fill="#425a84" d="M250 282l.7.6-.7-.6z"/>
+    <path fill="#b5adad" d="M253.5 282l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M257.7 282l.7.6-.7-.6z"/>
+    <path fill="#940008" d="M260.3 282.2l.5.2-.5-.2z"/>
+    <path fill="#ad0008" d="M261.2 282l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M262 282l1.3 1.3-1.4-1.3z"/>
+    <path fill="#ce1810" d="M271.8 282l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M272.5 282l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M273.2 282l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M287.3 282l.7.6-.7-.6z"/>
+    <path fill="#396321" d="M288.7 282l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M290.8 282v2h.7l-.7-2z"/>
+    <path fill="#296300" d="M292.2 282l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M292.9 282l-.7 1.3.7-1.3z"/>
+    <path fill="#296300" d="M295.7 282v3.3h1.4l-1.4-3.3z"/>
+    <path fill="#297b00" d="M296.4 282l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M302 282l-1.4 2 1.4-2z"/>
+    <path fill="#297b00" d="M302.7 282l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M307.9 282.4l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M308.4 282l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M309 282l.8.6-.7-.6z"/>
+    <path fill="#297b00" d="M319 282l.6.6-.7-.6z"/>
+    <path fill="#184a00" d="M319.6 282l.7.6-.7-.6z"/>
+    <path fill="#313931" d="M320.3 282l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M198.6 282.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M199.3 282.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M200 282.6l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M201.4 282.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M202.1 282.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204.5 283l.2.5-.2-.4z"/>
+    <path fill="#7b1008" d="M205 282.6l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M205.9 283l.2.5-.2-.4z"/>
+    <path fill="#631808" d="M206.6 283l.2.5-.2-.4z"/>
+    <path fill="#294200" d="M209.2 282.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M214.8 282.6l.7.7-.7-.7z"/>
+    <path fill="#946b63" d="M220.4 282.6l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M236 282.6l.6.7-.7-.7z"/>
+    <path fill="#941808" d="M237.3 282.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M238 282.6l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M238.7 282.6l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M239.4 282.6v.7h5.7l-5.7-.7z"/>
+    <path fill="#941808" d="M245 282.6l.8.7-.7-.7z"/>
+    <path fill="#a51008" d="M245.8 282.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M246.5 282.6l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M247.2 282.6l.7.7-.7-.7m3 .5l.3.4-.3-.4z"/>
+    <path fill="#bdbdbd" d="M253.5 282.6l.7.7-.7-.7z"/>
+    <path fill="#ce1810" d="M254.4 283l.3.5-.3-.4z"/>
+    <path fill="#000818" d="M260.5 282.6l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M261.2 282.6l.7.7-.7-.7z"/>
+    <path fill="#080829" d="M262 282.6l.6.7-.7-.7z"/>
+    <path fill="#ce1810" d="M263.4 282.6l.7.7-.8-.7z"/>
+    <path fill="#b51010" d="M269 282.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M269.7 282.6l.7.7-.7-.7z"/>
+    <path fill="#5a1021" d="M270.4 282.6l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M271 282.6l.8.7-.7-.7z"/>
+    <path fill="#292921" d="M287.3 282.6l.7.7-.7-.7z"/>
+    <path fill="#5a7b42" d="M288.7 282.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M292.9 282.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M302 282.6l.7.7-.7-.7m3.6 0l1.4 1.4-1.4-1.4z"/>
+    <path fill="#185200" d="M306.3 282.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M307 282.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M315.4 282.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M316.1 282.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M316.8 282.6l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M317.5 282.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M318.2 282.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M319 282.6l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M319.6 282.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M198.6 283.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M199.3 283.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200 283.3l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M200.7 283.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M201.4 283.3l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M202.1 283.3l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M205 283.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M209 283.5l.4.2-.5-.2z"/>
+    <path fill="#396b10" d="M214.1 283.3l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M239.4 283.3l.7.7-.7-.7zm5 0l.6.7-.7-.7z"/>
+    <path fill="#391810" d="M247.2 283.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M253.5 283.3l.7.7-.7-.7z"/>
+    <path fill="#291029" d="M260.5 283.3l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M264 283.3v.7h5l-5-.7z"/>
+    <path fill="#082108" d="M287.3 283.3l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M288 283.3l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M289 283.8l.1.4-.2-.5z"/>
+    <path fill="#184a00" d="M293.1 283.8l.3.4-.3-.5z"/>
+    <path fill="#297b00" d="M301.3 283.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M304.9 283.3l.7.7-.8-.7z"/>
+    <path fill="#103900" d="M305.6 283.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.9 283.3l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M312.6 283.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M313.3 283.3l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M314 283.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M314.7 283.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M315.4 283.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M316.1 283.3l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M198.6 284l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M199.3 284l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M200 284l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M200.7 284l1.4 1.3V284h-1.4z"/>
+    <path fill="#292100" d="M202.1 284l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 284l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M205 284l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M205.7 284l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M206.4 284l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M208.5 284l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M212.7 284l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M213.4 284l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M214.1 284l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M247.2 284l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M247.9 284l.7.7-.7-.7m2 0l.8.7-.7-.7z"/>
+    <path fill="#dedede" d="M250.7 284l.7.7-.7-.7z"/>
+    <path fill="#a51008" d="M254.2 284l.7.7-.7-.7z"/>
+    <path fill="#390821" d="M260.5 284l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M287.3 284l1.4 1.3-1.4-1.3z"/>
+    <path fill="#5a6b52" d="M288 284l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M290.8 284l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M291.5 284l-.7 1.3.7-1.3z"/>
+    <path fill="#185200" d="M299.2 286l2.1-2-2 2z"/>
+    <path fill="#297b00" d="M303.4 284l1.5 1.3-1.5-1.3z"/>
+    <path fill="#103900" d="M304.1 284l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M304.9 284l.7.7-.8-.7m5.7 0l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M311.2 284l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M311.9 284l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M312.6 284l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M190.9 284.6l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M191.6 284.6l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M199.3 284.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M200.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M202.8 284.6l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M203.6 284.6l.7 2h.6l-1.4-2z"/>
+    <path fill="#397b00" d="M205.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M206.4 284.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M208.2 284.9l.5.2-.5-.2m2.4-.2l.7.6-.7-.7z"/>
+    <path fill="#315221" d="M211.3 284.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M212 284.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M212.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#391810" d="M247.9 284.6l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M250 284.6l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M254.2 284.6l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M257.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#6b0808" d="M260.5 284.6l.7.7-.7-.7z"/>
+    <path fill="#395231" d="M288.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M291.5 284.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M292.9 284.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M293.6 284.6l-.7 1.4.7-1.4z"/>
+    <path fill="#296300" d="M302.7 284.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M303.4 284.6l.8.7-.8-.7z"/>
+    <path fill="#185200" d="M309 284.6l.8.7-.7-.7z"/>
+    <path fill="#425242" d="M309.8 284.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M310.5 284.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M190.9 285.3l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M191.6 285.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M192.3 285.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M193 285.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M193.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M199.3 285.3l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M201.4 285.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202.1 285.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.6 285.3l.7.7-.8-.7z"/>
+    <path fill="#294200" d="M207.8 285.3l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.9 285.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M210.6 285.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M212 285.3l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M212.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M218.3 285.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M219 285.3l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M223.3 285.3l.6.7-.7-.7z"/>
+    <path fill="#10214a" d="M248.6 285.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M250.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#943131" d="M254.4 285.8l.3.4-.3-.4z"/>
+    <path fill="#a51008" d="M257.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M288 285.3l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M288.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.7 285.8l.3.4-.3-.4z"/>
+    <path fill="#296300" d="M293.6 285.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M296.2 285.5l.5.3-.5-.3m2.3-.2l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302 285.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307.7 285.3l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M308.4 285.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M309 285.3l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M190.9 286l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M191.6 286l.7.7-.7-.7zm2.1 0l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M194.9 286.2l.4.2-.4-.2z"/>
+    <path fill="#526b42" d="M195.8 286l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M196.5 286l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M197.2 286l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M198 286l.6.7-.7-.7z"/>
+    <path fill="#dedede" d="M198.6 286l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M199.3 286l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M200 286l-.7 1.3.7-1.3z"/>
+    <path fill="#397b00" d="M202.1 286l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M202.8 286l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207.8 286l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M209.2 286l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M209.9 286l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M212 286l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M212.7 286v2.7h.7l-.7-2.7z"/>
+    <path fill="#63636b" d="M213.4 286l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M218.3 286l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M219 286l1.4 1.3-1.4-1.3z"/>
+    <path fill="#cecece" d="M219.7 286l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M222.5 286l-1.4 2 1.4-2z"/>
+    <path fill="#181000" d="M223.3 286l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M248.6 286l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M249.3 286l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M250.7 286l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M257.7 286l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M288 286v2h.7l-.7-2z"/>
+    <path fill="#103900" d="M288.7 286l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M293.8 286.4l.3.5-.3-.5z"/>
+    <path fill="#297b00" d="M299.2 288l3.5-2-3.5 2z"/>
+    <path fill="#103900" d="M301.3 286l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M307 286l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M307.7 286l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M308.4 286l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M191.6 286.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M198 286.6l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M198.6 286.6l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M200 286.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M200.7 286.6l2.1 2-2-2z"/>
+    <path fill="#294200" d="M203.6 286.6l.7.7-.8-.7z"/>
+    <path fill="#103900" d="M205 286.6l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M209.2 286.6l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M211.3 286.6l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M212 286.6l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M212.7 286.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M214.1 286.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M218.3 286.6l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M219 286.6c-2.2 4.7-4.7 9.8 1.4 12.8 0-4 1.5-9.7-1.4-12.7z"/>
+    <path fill="#bd2110" d="M221.1 286.6l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M222.5 286.6l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M223.3 286.6l-.8 1.4h1.5l-.7-1.4z"/>
+    <path fill="#b51010" d="M224 286.6l.6.7-.7-.7z"/>
+    <path fill="#31394a" d="M249.3 286.6l.7.7-.7-.7z"/>
+    <path fill="#525a6b" d="M250.7 286.6l.7.7-.7-.7z"/>
+    <path fill="#8c7373" d="M254.4 287.1l.3.5-.3-.5z"/>
+    <path fill="#a51008" d="M257.7 286.6l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M286 287.1l.3.5-.2-.5z"/>
+    <path fill="#00216b" d="M286.6 286.6l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M287.3 286.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M288.7 286.6l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M291.5 286.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M296.4 286.6l-.7 1.4.7-1.4z"/>
+    <path fill="#103900" d="M300.6 286.6l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M305.6 286.6l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M306.3 286.6l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M307 286.6l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M307.7 286.6l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M308.8 286.9l.5.2-.5-.2z"/>
+    <path fill="#4a6342" d="M310.3 286.9l.4.2-.4-.2z"/>
+    <path fill="#295210" d="M311.2 286.6l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M311.9 286.6l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M312.6 286.6v.7h3.5l-3.5-.7z"/>
+    <path fill="#184a00" d="M316.1 286.6l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M316.8 286.6l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M317.5 286.6l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M318.2 286.6l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M319 286.6l.6.7-.7-.7m-127.3.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M193.7 287.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M194.9 287.6l.4.2-.4-.2z"/>
+    <path fill="#397b00" d="M196 287.8l.3.4-.3-.4z"/>
+    <path fill="#292100" d="M200.7 287.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M205 287.3l-.7 2h.7v-2m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M209.2 287.3l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M211.3 287.3l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M212 287.3c-1.7 4.3-1.2 6.9 1.4 10.7h.7v-10.7h-.7v8H212v-8z"/>
+    <path fill="#315221" d="M214.1 287.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M217.6 287.3l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M218.3 287.3l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M220.4 287.3l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M221.8 287.3l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M224 287.3l.6.7-.7-.7z"/>
+    <path fill="#cecece" d="M249.3 287.3l.7.7-.7-.7z"/>
+    <path fill="#001039" d="M250 287.3l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M250.7 287.3l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M257.7 287.3l.7.7-.7-.7z"/>
+    <path fill="#6b5252" d="M258.4 287.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M259.1 287.3l.7.7-.7-.7z"/>
+    <path fill="#290018" d="M259.8 287.3l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M260.5 287.3l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M286.6 287.3l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M287.3 287.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M288.7 287.3l1.4 1.4-1.4-1.4z"/>
+    <path fill="#297b00" d="M289.4 287.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.5 287.3v2h.7l-.7-2z"/>
+    <path fill="#185200" d="M293.6 287.3l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M300 287.3l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 287.3l.8.7-.8-.7z"/>
+    <path fill="#184a00" d="M304.1 287.3v.7h2.2l-2.2-.7z"/>
+    <path fill="#296300" d="M306.7 287.6l.5.2-.5-.2z"/>
+    <path fill="#297b00" d="M307.7 287.3l.7.7-.7-.7m4.9 0l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M313.3 287.3l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M314 287.3l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M314.7 287.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M315.4 287.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M316.1 287.3l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M192.3 288l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M201.4 288l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M205 288l.7.7-.7-.7m3.5 0l1.4 1.3-1.4-1.3z"/>
+    <path fill="#5a5231" d="M209.2 288l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M210.6 288l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M211.3 288l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M214.8 288l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M217.6 288l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M219.3 288.4l.2.5-.2-.5z"/>
+    <path fill="#295200" d="M220.4 288l.7.7-.7-.7z"/>
+    <path fill="#100808" d="M221.1 288l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M221.8 288l-.7 10.7 2.1-2h.8l-.7 2.7c5.5-1.6 6.5-5.2 4.9-10l-3.5 7.3h-.7V288h-.7l-1.4 7.4V288z"/>
+    <path fill="#295200" d="M222.5 288l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M224 288l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M227.5 288l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M228.2 288l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M250 288l.7.7-.7-.7z"/>
+    <path fill="#080829" d="M250.7 288l.7.7-.7-.7z"/>
+    <path fill="#c6b5b5" d="M254.2 288l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M257 288l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M257.7 288l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M286.6 288l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M287.3 288l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M288.4 288.2l.5.2-.5-.2z"/>
+    <path fill="#184a00" d="M293.6 288l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M295.7 288l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M299.2 288l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302 288l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M302.7 288l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M303.4 288l.8.7-.8-.7z"/>
+    <path fill="#297b00" d="M309.8 288l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M310.5 288l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M311.2 288l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M311.9 288l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M312.6 288l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M313.3 288l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M192.3 288.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#214210" d="M193 288.7l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M202.1 288.7l1.4 1.3v-1.3h-1.4z"/>
+    <path fill="#103900" d="M203.6 288.7l.7.6-.8-.6m2.9 0l-.7 1.3.7-1.3z"/>
+    <path fill="#397b00" d="M207 288.7l.8.6-.7-.6z"/>
+    <path fill="#295200" d="M208.5 288.7l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M210.6 288.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M212.7 288.7v3.3h.7l-.7-3.3z"/>
+    <path fill="#526b42" d="M214.8 288.7l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M217 288.7l.6.6-.7-.6z"/>
+    <path fill="#397b00" d="M217.6 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M221.1 288.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M222.5 288.7v2.6h.7l-.7-2.6z"/>
+    <path fill="#397b00" d="M224 288.7l.6.6-.7-.6z"/>
+    <path fill="#941808" d="M224.7 288.7l.7.6-.8-.6m2.2 0l-.7 1.3.7-1.3z"/>
+    <path fill="#293100" d="M227.5 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M228.2 288.7l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M250 288.7l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M250.7 288.7l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M251.4 288.7l.7.6-.7-.6z"/>
+    <path fill="#842118" d="M257 288.7l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M287.3 288.7l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M288 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M289.4 288.7l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M293.6 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M295.7 288.7l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M300.6 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M301.3 288.7l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M302 288.7l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M307.7 288.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M308.4 288.7l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M309 288.7l.8.6-.7-.6z"/>
+    <path fill="#101810" d="M309.8 288.7l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M310.5 288.7l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M311.6 288.9l.5.2-.5-.2z"/>
+    <path fill="#214210" d="M193.7 289.3l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M199.6 289.8l.2.4-.2-.4m9.6-.5l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M209.9 289.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M210.6 289.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M215 289.8l.3.4-.3-.4z"/>
+    <path fill="#dedede" d="M216.2 289.3l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M217 289.3l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M219 289.3l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M224.7 289.3l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M226.8 289.3l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M228.9 289.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250.7 289.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M251.6 289.8l.3.4-.3-.4z"/>
+    <path fill="#736b6b" d="M257 289.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M287.3 289.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M288 289.3l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M291.5 289.3l.7 2.7h.7l-1.4-2.7z"/>
+    <path fill="#297b00" d="M292.2 289.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M293.6 289.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295 289.3l.7.7-.7-.7zm4.2 0l1.4 1.4-1.4-1.4z"/>
+    <path fill="#184a00" d="M300 289.3l.6.7-.7-.7z"/>
+    <path fill="#185200" d="M300.6 289.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M305.6 289.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M306.3 289.3v.7l2.8.7v-.7l-2.8-.7z"/>
+    <path fill="#103900" d="M307 289.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M307.7 289.3l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M308.4 289.3v.7h2l-2-.7z"/>
+    <path fill="#297b00" d="M310.7 289.8l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M311.2 289.3v.7l2.8.7v-.7l-2.8-.7z"/>
+    <path fill="#185200" d="M312.6 289.3l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M313.3 289.3l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M314 289.3l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M314.7 289.3l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M315.4 289.3l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M193.7 290l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M197.7 290.2l.5.2-.5-.2z"/>
+    <path fill="#295200" d="M198.6 290l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M205 290l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M209.9 290l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M216.2 290l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M219.3 290.4l.2.5-.2-.5z"/>
+    <path fill="#397b00" d="M220.9 290.2l.5.2-.5-.2z"/>
+    <path fill="#294200" d="M224.7 290l.7.7-.8-.7z"/>
+    <path fill="#bd2110" d="M225.4 290l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M226 290l.8.7-.7-.7z"/>
+    <path fill="#397b00" d="M228.2 290l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M228.9 290l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M252 290l-.6 1.3.7-1.3z"/>
+    <path fill="#ce1810" d="M256.3 290l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M257 290l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M287.3 290l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M288 290l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M289.4 290l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M290 290l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M293.6 290l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M299.2 290l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M303.4 290l1.5 1.3-1.5-1.3z"/>
+    <path fill="#185200" d="M304.1 290l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M304.9 290l.7.7-.8-.7z"/>
+    <path fill="#185200" d="M306 290.2l.5.2-.5-.2m3-.2l.8.7-.7-.7z"/>
+    <path fill="#296300" d="M310 290.4l.2.5-.2-.5z"/>
+    <path fill="#319400" d="M311.2 290l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M311.9 290l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M314 290l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314.7 290l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M315.4 290l.7.7-.7-.7z"/>
+    <path d="M316.1 290l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M316.8 290l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M317.5 290l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M194.6 291.1l.3.5-.3-.5z"/>
+    <path fill="#52525a" d="M195.1 290.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M195.8 290.7l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M196.5 290.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M204.3 290.7l.6.6-.7-.6z"/>
+    <path fill="#397b00" d="M205 290.7l.7.6-.7-.6m3.2.2l.5.2-.5-.2z"/>
+    <path fill="#294200" d="M210.1 291.1l.2.5-.2-.5z"/>
+    <path fill="#397b00" d="M214.8 290.7l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M215.5 290.7l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M216.2 290.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M220.4 290.7v2h.7l-.7-2z"/>
+    <path fill="#397b00" d="M224.7 290.7v1.3h1.4l-1.4-1.3z"/>
+    <path fill="#211800" d="M225.4 290.7l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M227.5 290.7l.7.6-.7-.6z"/>
+    <path fill="#5a2908" d="M228.9 290.7l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M252 290.7l.8.6-.7-.6z"/>
+    <path fill="#9c2118" d="M256.3 290.7l.7.6-.7-.6z"/>
+    <path fill="#00216b" d="M285.9 290.7l.7.6-.7-.6z"/>
+    <path fill="#103910" d="M286.6 290.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M288.2 291.1l.2.5-.2-.5z"/>
+    <path fill="#296300" d="M289.8 290.9l.5.2-.5-.2z"/>
+    <path fill="#103900" d="M297.8 290.7l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M302.3 291.1l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M303.2 290.9l.5.2-.5-.2z"/>
+    <path fill="#319400" d="M295 298.7a38 38 0 0119.7-6c-6.5-3.8-17.5-1.5-19.7 6z"/>
+    <path fill="#297b00" d="M309 290.7l.8.6-.7-.6z"/>
+    <path fill="#185200" d="M310.5 290.7l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M311.2 290.7l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M311.9 290.7l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M312.6 290.7l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M313.3 290.7l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M195.1 291.3l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M201.4 291.3l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202.1 291.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M203.6 291.3l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M204.3 291.3l.6.7-.7-.7m3.6 0l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M214.8 291.3l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M215.5 291.3l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M218.8 291.6l.5.2-.5-.2m3.7-.3v2h.7l-.7-2z"/>
+    <path fill="#295200" d="M226.8 291.3l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M228.9 291.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M252 291.3l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M252.8 291.3l.7.7-.7-.7z"/>
+    <path fill="#8c6363" d="M256.3 291.3l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M285.1 291.3l.7.7-.7-.7z"/>
+    <path fill="#21315a" d="M285.9 291.3l.7.7-.7-.7z"/>
+    <path fill="#5a7b42" d="M286.6 291.3l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M290 291.3l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M291.5 291.3l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M300.6 291.3l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M301.3 291.3l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M312.6 291.3l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M313.3 291.3l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M314 291.3l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M314.7 291.3l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M315.4 291.3l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M193.7 292l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M194.4 292l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M200 292l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M200.7 292l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M201.4 292l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M203.6 292l.7.7-.8-.7z"/>
+    <path fill="#294200" d="M208 292.5l.2.4-.2-.4z"/>
+    <path fill="#295200" d="M209.9 292l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M215.3 292.2l.4.3-.4-.3z"/>
+    <path fill="#295200" d="M218.3 292l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M224.9 292.5l.2.4-.2-.4m2.1 0l.2.4-.2-.4z"/>
+    <path fill="#397b00" d="M228.9 292l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M242.2 292l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M243 292l.6.7-.7-.7z"/>
+    <path fill="#63636b" d="M252.8 292l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M256.3 292l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M283.8 292l.6.7-.6-.7z"/>
+    <path d="M285.1 292l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M285.9 292l.7.7-.7-.7z"/>
+    <path fill="#396321" d="M286.6 292l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M288 292l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M288.7 292l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M290 292l.8.7-.7-.7m2 0l.8.7-.7-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M299.2 292l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M300 292l.6.7-.7-.7z"/>
+    <path fill="#296300" d="M300.6 292l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M314.7 292l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M315.4 292l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M316.1 292l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M316.8 292l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M193.7 292.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M198 292.7l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M199 292.9l.6.2-.5-.2z"/>
+    <path fill="#397b00" d="M200 292.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M202.8 292.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M210.1 293.1l.2.5-.2-.5z"/>
+    <path fill="#397b00" d="M212 292.7v2.7h1.4v-2.7H212z"/>
+    <path fill="#6b735a" d="M214.8 292.7l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M215.5 292.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M218.3 292.7v3.3h.7l-.7-3.3z"/>
+    <path fill="#295200" d="M220.7 293.1l.2.5-.2-.5z"/>
+    <path fill="#392100" d="M242.2 292.7l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M243 292.7l.6.7-.7-.7z"/>
+    <path fill="#9c9494" d="M252.8 292.7l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M253.5 292.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M254.2 292.7l-.7 1.3.7-1.3z"/>
+    <path fill="#bd0008" d="M254.9 292.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M255.6 292.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M271.8 292.7l-.7 1.3.7-1.3z"/>
+    <path fill="#002984" d="M272.7 293.1l.3.5-.3-.5m7.5-.4l.7.6-.7-.6z"/>
+    <path fill="#00184a" d="M281 292.7l2.7 2v-.7l-2.8-1.3z"/>
+    <path fill="#001010" d="M283.8 292.7l.6.7-.6-.7z"/>
+    <path fill="#002984" d="M284.4 292.7l.8.7-.8-.7z"/>
+    <path fill="#103900" d="M285.1 292.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M285.9 292.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M286.8 293.1l.2.5-.2-.5z"/>
+    <path fill="#296300" d="M288.4 292.9l.5.2-.5-.2z"/>
+    <path fill="#184a00" d="M290 292.7l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M291.5 292.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M292.2 292.7l-.7 2.7.7-2.7z"/>
+    <path fill="#103900" d="M294.3 292.7l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M295.2 293.1l.3.5-.3-.5z"/>
+    <path fill="#103900" d="M295.7 292.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M297.1 293.4v.6h2.1l-2-.6z"/>
+    <path fill="#103900" d="M298.5 292.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M299.2 292.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307 292.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M307.7 292.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M308.4 292.7l-1.4.7v.6l1.4-1.3z"/>
+    <path fill="#315221" d="M309 292.7l.8.7-.7-.7z"/>
+    <path fill="#4a6342" d="M309.8 292.7v.7h4.9l-5-.7z"/>
+    <path fill="#295210" d="M314.7 292.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M315.4 292.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M316.1 292.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M316.8 292.7l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M317.5 292.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M318.2 292.7l.7.7-.7-.7m-125.2.7l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M193.7 293.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M196.5 293.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M197.2 293.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M198 293.4l.6.6-.7-.6z"/>
+    <path fill="#292100" d="M202.1 293.4l.7.6-.7-.6m5.7 0l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M214.1 293.4l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M214.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M215.5 293.4l.7.6-.7-.6m7 0l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M224.4 293.6l.5.2-.5-.2z"/>
+    <path fill="#295200" d="M226.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M236 293.4l.6.6-.7-.6z"/>
+    <path fill="#631808" d="M241.5 293.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M242.2 293.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#428c00" d="M243 293.4l.6.6-.7-.6z"/>
+    <path fill="#631808" d="M243.7 293.4l.7.6-.8-.6z"/>
+    <path fill="#8c7373" d="M254.2 293.4l.7.6-.7-.6z"/>
+    <path fill="#6b0808" d="M254.9 293.4l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M255.6 293.4l.7.6-.7-.6z"/>
+    <path fill="#000818" d="M267.6 293.4l.7.6-.7-.6z"/>
+    <path fill="#082108" d="M271.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M277.4 293.4l1.4 1.3v-1.3h-1.4z"/>
+    <path fill="#001039" d="M280.2 293.4l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M283.8 293.4l.6.6-.6-.6z"/>
+    <path d="M284.4 293.4l.8.6-.8-.6z"/>
+    <path fill="#296300" d="M285.1 293.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M285.9 293.4l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M290.3 293.8l.2.4-.2-.4z"/>
+    <path fill="#297b00" d="M293.6 293.4v.6l3.5 1.4v-.7l-3.5-1.3z"/>
+    <path fill="#185200" d="M294.3 293.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M295.7 293.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M297.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M304.9 293.4l.7.6-.8-.6z"/>
+    <path fill="#103900" d="M306 293.6l.5.2-.5-.2z"/>
+    <path fill="#214210" d="M308.4 293.4l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M309 293.4l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M309.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M310.5 293.4l.7.6-.7-.6m5.6 0l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M316.8 293.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M317.5 293.4l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M318.7 293.6l.5.2-.5-.2z"/>
+    <path fill="#315221" d="M193 294l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M195.1 294l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M195.8 294l.7.7-.7-.7m5.6 0l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.1 294l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M204.3 294l-.8 1.4.8-1.4z"/>
+    <path fill="#397b00" d="M205 294l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M207 294l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M207.8 294l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M208.5 294l.7.7-.7-.7m1.8.2l.5.3-.5-.3z"/>
+    <path fill="#295200" d="M214.1 294l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M214.8 294l.7.7-.7-.7z"/>
+    <path fill="#426331" d="M215.5 294l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M220.7 294.5l.2.4-.2-.4z"/>
+    <path fill="#295200" d="M222.5 294l.7.7-.7-.7m1.4 0l.7.7-.6-.7z"/>
+    <path fill="#397b00" d="M226.5 294.2l.5.3-.5-.3m2.4-.2l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M235.2 294l.7.7-.7-.7z"/>
+    <path fill="#211800" d="M236 294l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M236.6 294l1.4 1.4-1.4-1.4z"/>
+    <path fill="#b51010" d="M240.8 294l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M241.5 294l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M242.2 294l-1.4 4-2-1.3 2 5.3h.7v-2.6h.7v4.7c3.4-2.2 3-6 2.2-9.4h-.7v6.7h-.7l-.8-7.4z"/>
+    <path fill="#294200" d="M243.7 294l.7.7-.8-.7z"/>
+    <path fill="#ce2110" d="M244.3 294l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M253.5 294l.7.7-.7-.7z"/>
+    <path fill="#6b4242" d="M254.2 294l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M254.9 294l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M267.6 294l.7.7-.7-.7z"/>
+    <path fill="#10214a" d="M268.3 294l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M270.4 294l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M271 294l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M271.8 294l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M273.9 294l.7.7-.7-.7z"/>
+    <path fill="#001010" d="M277.4 294l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M280.2 294l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M283.8 294l.6.7-.6-.7z"/>
+    <path fill="#424242" d="M284.4 294l.8.7-.8-.7z"/>
+    <path fill="#319400" d="M285.1 294l-4.2 12c4-2 6-8 4.2-12z"/>
+    <path fill="#293129" d="M285.9 294l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M286.6 294l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M293.6 294l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296.2 294.2l.5.3-.5-.3z"/>
+    <path fill="#184a00" d="M297.1 294l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302.7 294l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302.7 294.7v.7h3.6l-3.6-.7z"/>
+    <path fill="#297b00" d="M304.9 294l.7.7-.8-.7z"/>
+    <path fill="#319400" d="M305.6 294v.7h4.9l-5-.7z"/>
+    <path fill="#296300" d="M310.5 294l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M311.2 294l-.7 1.4.7-1.4z"/>
+    <path fill="#7b7373" d="M311.9 294l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M312.6 294l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M319 294l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M192.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M193 294.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M194.4 294.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M195.1 294.7l.7.7-.7-.7m5 0v2h.6l-.7-2z"/>
+    <path fill="#103900" d="M200.7 294.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M204.3 294.7l.6.7-.7-.7z"/>
+    <path fill="#425242" d="M207 294.7l.8.7-.7-.7z"/>
+    <path fill="#315221" d="M208.5 294.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M210.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M214.1 294.7l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M215.5 294.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M222.3 295l.5.1-.5-.2z"/>
+    <path fill="#294200" d="M224.2 295.1l.2.5-.2-.5m1.9-.4l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M235.2 294.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M236 294.7l1.3 3.3h2.1l-3.5-3.3z"/>
+    <path fill="#311000" d="M236.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M240.8 294.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M243 294.7v2.7h.6l-.7-2.7z"/>
+    <path fill="#5a1008" d="M244.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M253.5 294.7l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M254.2 294.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M254.9 294.7l.7.7-.7-.7z"/>
+    <path fill="#083121" d="M267.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M268.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M269 294.7l.7.7-.7-.7z"/>
+    <path fill="#102110" d="M270.4 294.7l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M271 294.7l-.6 6h.7v-6z"/>
+    <path fill="#083121" d="M271.8 294.7l.7.7-.7-.7z"/>
+    <path fill="#000818" d="M273.9 294.7l.7.7-.7-.7z"/>
+    <path fill="#00216b" d="M276.7 294.7l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M277.4 294.7l-.7 1.3.7-1.3z"/>
+    <path fill="#00215a" d="M279.5 294.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M280.2 294.7l.7.7-.7-.7z"/>
+    <path fill="#00215a" d="M281 294.7l.6.7-.7-.7z"/>
+    <path fill="#103910" d="M281.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M282.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M283 294.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M283.8 294.7l-.8 1.3.8-1.3z"/>
+    <path fill="#294221" d="M284.4 294.7l.8.7-.8-.7z"/>
+    <path fill="#103900" d="M285.9 294.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M286.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M290.3 295.1l.2.5-.2-.5z"/>
+    <path fill="#103900" d="M293.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M295 294.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M301.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M302 294.7l.7.7-.7-.7m4.3 0l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M307 294.7v.7h2l-2-.7z"/>
+    <path fill="#4a6342" d="M309.5 295l.5.1-.5-.2z"/>
+    <path fill="#184a00" d="M311.2 294.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M311.9 294.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M312.6 294.7l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M313.3 294.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M314 294.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#7b7373" d="M192.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M197.2 295.4l.7 2.6h.7l-1.4-2.6z"/>
+    <path fill="#294200" d="M199 295.6l.6.2-.5-.2z"/>
+    <path fill="#295200" d="M202.1 295.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M202.8 295.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M203.6 295.4l.7.6-.8-.6z"/>
+    <path fill="#213918" d="M206.4 295.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M207 295.4l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M208.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M209.2 295.4l.7.6-.7-.6z"/>
+    <path fill="#5a2908" d="M209.9 295.4l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M210.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M211.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M214.1 295.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M215.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M220.4 295.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M226 295.4l.8.6-.7-.6z"/>
+    <path fill="#181000" d="M228.9 295.4l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M229.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#313918" d="M235.2 295.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M236 295.4l.6.6-.7-.6z"/>
+    <path fill="#293100" d="M237.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#5a1010" d="M238 295.4l.7.6-.7-.6z"/>
+    <path fill="#734a42" d="M239.2 295.6l.5.2-.5-.2z"/>
+    <path fill="#5a2121" d="M240.1 295.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M240.8 295.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M244.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M245 295.4l.8.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M253.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M254.2 295.4l.7.6-.7-.6z"/>
+    <path fill="#002984" d="M264 295.4l.8.6-.8-.6z"/>
+    <path fill="#00216b" d="M264.8 295.4l.6.6-.6-.6z"/>
+    <path fill="#103921" d="M267.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#319400" d="M268.3 295.4l-.7 8.7c2.6-2.5 2.5-5.8.7-8.7z"/>
+    <path fill="#102121" d="M269 295.4l.7.6-.7-.6z"/>
+    <path fill="#212139" d="M269.7 295.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M270.4 295.4l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M271.8 295.4l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M272.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#31425a" d="M273.2 295.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M273.9 295.4l.7.6-.7-.6z"/>
+    <path fill="#31425a" d="M274.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#42425a" d="M275.8 295.6l.4.2-.4-.2z"/>
+    <path fill="#184a00" d="M277.6 295.8l.3.5-.2-.5z"/>
+    <path fill="#42425a" d="M278.1 295.4l.7.6-.7-.6z"/>
+    <path fill="#636b7b" d="M278.8 295.4l.7.6-.7-.6z"/>
+    <path fill="#082108" d="M279.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#292921" d="M281 295.4l.6.6-.7-.6z"/>
+    <path fill="#185200" d="M281.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M282.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M283.8 295.4l.6.6-.6-.6z"/>
+    <path fill="#214210" d="M284.4 295.4l.8.6-.8-.6z"/>
+    <path fill="#185200" d="M291.5 295.4l.7.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M293.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M295 295.4l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M300 295.4l.6.6-.7-.6z"/>
+    <path fill="#103900" d="M300.6 295.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M301.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M307.7 295.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M308.4 295.4l.7.6-.7-.6z"/>
+    <path fill="#214210" d="M309 295.4l.8.6-.7-.6z"/>
+    <path fill="#7b7373" d="M309.8 295.4l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M310.5 295.4l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M311.9 295.4l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M312.6 295.4l-.7 1.3.7-1.3z"/>
+    <path fill="#8c8c8c" d="M313.3 295.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M314 295.4l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M192.3 296l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M193 296l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M193.7 296l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M194.4 296l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M195.1 296l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M196.3 296.3l.4.2-.4-.2z"/>
+    <path fill="#428c00" d="M199 296.3l.6.2-.5-.2z"/>
+    <path fill="#294200" d="M201.2 296.3l.5.2-.5-.2z"/>
+    <path fill="#397b00" d="M202.1 296l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M205.7 296l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M206.4 296l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M209.2 296l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M211.5 296.5l.3.4-.3-.4z"/>
+    <path fill="#295200" d="M212 296l.7 2.7h.7L212 296z"/>
+    <path fill="#8c8c8c" d="M214.3 296.5l.3.4-.3-.4z"/>
+    <path fill="#efefef" d="M215.5 296l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M216.2 296l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M220.4 296l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M224 296l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M225.4 296l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M228.2 296l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M228.9 296l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M229.6 296l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M230.3 296l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M231 296l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M231.7 296l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M232.4 296l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M233.1 296l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M235.2 296l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M236 296l1.3 1.4-1.4-1.4z"/>
+    <path fill="#103900" d="M236.6 296l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M238.7 296l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M239.4 296l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M240.1 296l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M245 296l.8.7-.7-.7z"/>
+    <path fill="#7b5252" d="M245.8 296l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M246.5 296l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M247.2 296l.7.7-.7-.7z"/>
+    <path fill="#002984" d="M260.5 296l.7.7-.7-.7z"/>
+    <path fill="#00184a" d="M261.2 296l.7.7-.7-.7z"/>
+    <path fill="#42425a" d="M262 296l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M262.6 296l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M263.4 296l.7.7-.8-.7z"/>
+    <path fill="#bdbdbd" d="M264 296l.8.7-.8-.7z"/>
+    <path fill="#dedede" d="M264.8 296l.6.7-.6-.7z"/>
+    <path fill="#214210" d="M269 296l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M269.7 296l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M273.2 296l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M276 296l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M276.7 296l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M278.8 296l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M281 296l1.3 1.4-1.4-1.4z"/>
+    <path fill="#296300" d="M281.6 296l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M282.3 296l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M283 296l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M283.8 296l.6.7-.6-.7z"/>
+    <path fill="#185200" d="M284.4 296l.8.7-.8-.7m5.7 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.7 296.5l.3.4-.3-.4m1.2-.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M294.3 296l1.4 1.4-1.4-1.4z"/>
+    <path fill="#184a00" d="M295 296l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M298.5 296l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M299.2 296l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M300 296l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M309.8 296l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M310.5 296l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M311.2 296l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M192.8 297l.4.1-.4-.2z"/>
+    <path fill="#efefef" d="M194.4 296.7l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M195.1 296.7l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M196.5 299.4l1.4-2c-1.8-.4-2.9.6-1.4 2z"/>
+    <path fill="#294200" d="M199 297l.6.1-.5-.2z"/>
+    <path fill="#295200" d="M200 296.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M204.3 296.7l.6.7-.7-.7z"/>
+    <path fill="#63636b" d="M205 296.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M205.7 296.7l.7.7-.7-.7z"/>
+    <path fill="#5a2121" d="M209.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M216.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M217 296.7l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M220.7 297.1l.2.5-.2-.5m2.5-.4l.8.7-.8-.7z"/>
+    <path fill="#63636b" d="M228.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M229.6 296.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M230.3 296.7l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M231 296.7l.7 4.7 3.5 2.7 5 .6.6-.6c-.5-1.9-6.2-9.7-7-5.4l-1.4-2H231z"/>
+    <path fill="#397b00" d="M232.4 296.7v1.3l1.4-1.3h-1.4z"/>
+    <path fill="#295200" d="M233.8 296.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M235 297l.4.1-.4-.2z"/>
+    <path fill="#397b00" d="M236.1 297.1l.3.5-.3-.5z"/>
+    <path fill="#294200" d="M237.3 296.7l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M239.4 296.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M240.1 296.7l.7.7-.7-.7z"/>
+    <path fill="#526b42" d="M245 296.7l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M247.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M247.9 296.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M248.6 296.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M249.3 296.7l.7.7-.7-.7m9.1 0l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M259.1 296.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M259.8 296.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M260.5 296.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M261.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M269 296.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M269.7 296.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M272.5 296.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M273.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M275.3 296.7l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M276 296.7l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M276.7 296.7l-5 8c5.6 0 8-2.9 8.5-8h-.7l-4.9 7.4 2.1-7.4z"/>
+    <path fill="#4a6342" d="M277.4 296.7l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M278.8 296.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M280.2 296.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M281 296.7l.6.7-.7-.7z"/>
+    <path fill="#184a00" d="M282.3 296.7l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M283 296.7l-4.9 8.7c3.3-1.5 5.7-5.2 5-8.7z"/>
+    <path fill="#082108" d="M283.8 296.7l.6.7-.6-.7z"/>
+    <path fill="#297b00" d="M284.4 296.7l.8.7-.8-.7z"/>
+    <path fill="#184a00" d="M290 296.7l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M294.3 296.7l.7.7-.7-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M298.5 296.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M301.1 297l.5.1-.5-.2z"/>
+    <path fill="#296300" d="M302 296.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302.7 296.7v.7h2.2l-2.2-.7z"/>
+    <path fill="#185200" d="M304.9 296.7l.7.7-.8-.7z"/>
+    <path fill="#184a00" d="M306 297l.5.1-.5-.2z"/>
+    <path fill="#185200" d="M307 296.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M307.9 297.1l.2.5-.2-.5z"/>
+    <path fill="#297b00" d="M308.4 296.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M311.9 296.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M312.6 296.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M313.3 296.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M194.4 297.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M196.5 297.4l-.7 1.3h1.4l-.7-1.3z"/>
+    <path fill="#103900" d="M197.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M202.8 297.4l.7.6-.7-.6z"/>
+    <path fill="#5a5231" d="M203.6 297.4l.7.6-.8-.6z"/>
+    <path fill="#ada5a5" d="M204.3 297.4l.6.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M207 297.4l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M207.8 297.4l.7.6-.7-.6z"/>
+    <path fill="#8c9c84" d="M208.5 297.4l.7.6-.7-.6z"/>
+    <path fill="#5a5231" d="M209.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#422100" d="M209.9 297.4l.7.6-.7-.6z"/>
+    <path fill="#5a2908" d="M210.6 297.4l.7.6-.7-.6z"/>
+    <path fill="#311000" d="M211.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M212.7 297.4l.7.6-.7-.6z"/>
+    <path fill="#5a6b52" d="M214.1 297.4l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M217 297.4l.6.6-.7-.6z"/>
+    <path fill="#103900" d="M223.3 297.4l.6.6-.7-.6z"/>
+    <path fill="#314231" d="M227.5 297.4l-.7 1.3.7-1.3z"/>
+    <path fill="#dedede" d="M228.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M230.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M231.7 297.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M236.6 297.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M238 297.4l-.7 1.3.7-1.3z"/>
+    <path fill="#103900" d="M240.1 297.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M243.2 297.8l.2.5-.2-.5z"/>
+    <path fill="#294200" d="M245.3 297.8l.2.5-.2-.5z"/>
+    <path fill="#dedede" d="M248.6 297.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M249.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M250 297.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M257.7 297.4l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M258.4 297.4l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M259.1 297.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M269.7 297.4l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M272.5 297.4l-.7 1.3.7-1.3z"/>
+    <path fill="#297b00" d="M273.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M275.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M276 297.4l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M277.9 297.6l.5.2-.5-.2z"/>
+    <path fill="#296300" d="M278.8 297.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M280.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#319400" d="M281 297.4l.6.6-.7-.6z"/>
+    <path fill="#082108" d="M281.6 297.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M282.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M283.8 297.4l.6.6-.6-.6z"/>
+    <path fill="#296300" d="M290 297.4l.8.6-.7-.6m1.4 0l.7.6-.7-.6z"/>
+    <path fill="#103900" d="M294.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M295.7 298v.7h2.1l-2-.7z"/>
+    <path fill="#103900" d="M297.1 297.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M297.8 297.4l.7.6-.7-.6z"/>
+    <path fill="#082108" d="M308.4 297.4l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M309 297.4l.8.6-.7-.6z"/>
+    <path fill="#395231" d="M309.8 297.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M310.5 297.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M311.2 297.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M312.4 297.6l.4.2-.4-.2z"/>
+    <path fill="#214210" d="M313.3 297.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M314 297.4l.7.6-.7-.6z"/>
+    <path fill="#5a5231" d="M194.4 298l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M199.3 298l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M200 298l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M200.7 298l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M201.4 298l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M202.1 298l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M202.8 298l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M204 298.3l.5.2-.5-.2z"/>
+    <path fill="#9c9494" d="M205 298l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M205.7 298l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M206.4 298l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M207 298l.8.7-.7-.7z"/>
+    <path fill="#428c00" d="M205.7 298.7v.7h6.3v.6h-6.3v.7h1.4v.7c-3.9.2-5.8 1.5-7.8 4.7l12-.7v.7c-3.3 1-8 .6-9.2 4 4.5-1.8 11-2.4 13.4-6.7l-4.2 2 2-2.7-6.2-.6v-.7l11.2.7v.6h-2v.7l9-.7v-.6h-2v-.7h4.2v-.7l-5.7 1.3-16.1-3.3z"/>
+    <path fill="#294200" d="M213.4 298l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M214.1 298l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M217 298l.6.7-.7-.7z"/>
+    <path fill="#314231" d="M217.6 298l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M220.4 298l1.4 1.4-1.4-1.4z"/>
+    <path fill="#397b00" d="M223 298.3l.5.2-.5-.2m3-.3l.8.7-.7-.7z"/>
+    <path fill="#efefef" d="M227.5 298l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M230.3 298l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M231 298l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M232.9 298.3l.4.2-.4-.2z"/>
+    <path fill="#295200" d="M238 298l2.1 1.4v-.7l-2-.7z"/>
+    <path fill="#103900" d="M239 298.5l.2.4-.2-.4z"/>
+    <path fill="#294200" d="M240.8 298l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M250 298l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M250.7 298l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M251.4 298l.7.7-.7-.7m5 0l-1.5 2 1.4-2z"/>
+    <path fill="#63636b" d="M257 298l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M257.7 298l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M269.7 298l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M272.5 298l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M273.2 298l-4.2 6.7c2.6-1.3 5-3.7 4.2-6.7z"/>
+    <path fill="#184a00" d="M273.9 298l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M274.6 298l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M275.3 298l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M276.7 298l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M277.4 298l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M278.1 298l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M280.2 298l1.4 1.4-1.4-1.4z"/>
+    <path fill="#297b00" d="M281 298l1.3 1.4-1.4-1.4z"/>
+    <path fill="#103900" d="M281.6 298l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M283 298l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M283.8 298l.6.7-.6-.7z"/>
+    <path fill="#185200" d="M288.7 298l.7.7-.7-.7zm5.6 0l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M296.4 298l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M309 298l.8.7-.7-.7z"/>
+    <path fill="#425242" d="M309.8 298l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M310.5 298l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M311.2 298l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M311.9 298l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M312.6 298l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M313.3 298l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M314 298l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M314.7 298l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M194.6 299.1l.3.5-.3-.5m2-.4l.6.7-.7-.7z"/>
+    <path fill="#526b42" d="M197.2 298.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M198.4 299l.5.2-.5-.3z"/>
+    <path fill="#bdbdbd" d="M199.3 298.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M200 298.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M202.8 298.7l.7.7-.7-.7z"/>
+    <path d="M203.6 298.7l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M204.3 298.7l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M205 298.7l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M214.1 298.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M214.8 298.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M217 298.7l.6.7-.7-.7z"/>
+    <path fill="#63636b" d="M217.6 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M218.3 298.7l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M220.4 298.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M221.8 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M222.5 298.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M224.7 298.7l.7.7-.8-.7z"/>
+    <path fill="#214210" d="M225.4 298.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M226 298.7l.8.7-.7-.7z"/>
+    <path fill="#efefef" d="M230.3 298.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M231 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M233.8 298.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#295200" d="M240.8 298.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M243 298.7v2.7h.6l-.7-2.7z"/>
+    <path fill="#295200" d="M245 298.7l.8.7-.7-.7z"/>
+    <path fill="#7b7373" d="M251.4 298.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M252 298.7l2.2 2.7-2.1-2.7z"/>
+    <path fill="#7b7373" d="M256.3 298.7l-1.4 2 1.4-2z"/>
+    <path fill="#efefef" d="M257 298.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M270 299.1l.1.5-.2-.5z"/>
+    <path d="M271.8 298.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M272.5 298.7l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M273.9 298.7l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M274.6 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M276.7 298.7l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M277.4 298.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M278.1 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M280.2 298.7l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M288.7 298.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M295 298.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295.7 298.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M309.8 298.7l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M310.5 298.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M311.2 298.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M313.3 298.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M314 298.7l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M314.7 298.7l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M315.4 298.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M193.7 299.4l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M195.1 299.4l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M195.8 299.4l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M196.5 299.4l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M203.6 299.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#214210" d="M204.3 299.4l.6.6-.7-.6z"/>
+    <path fill="#294200" d="M205 299.4v.6h3.5l-3.5-.6z"/>
+    <path fill="#295200" d="M208.5 299.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M209.2 299.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M209.9 299.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M210.6 299.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M211.3 299.4l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M214.8 299.4l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M215.5 299.4l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M216.2 299.4l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M217 299.4l.6.6-.7-.6z"/>
+    <path fill="#941808" d="M218.3 299.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M219 299.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M219.7 299.4l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M220.4 299.4l.7.6-.7-.6z"/>
+    <path fill="#de2110" d="M221.1 299.4l-.7 1.3.7-1.3z"/>
+    <path fill="#b51010" d="M221.8 299.4l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M222.5 299.4l.7.6-.7-.6z"/>
+    <path fill="#295200" d="M223.3 299.4l.6.6-.7-.6z"/>
+    <path fill="#102110" d="M224 299.4l.6.6-.7-.6z"/>
+    <path fill="#63636b" d="M224.7 299.4l.7.6-.8-.6z"/>
+    <path fill="#bdbdbd" d="M225.4 299.4l.7.6-.7-.6z"/>
+    <path fill="#315221" d="M231 299.4l.7.6-.7-.6z"/>
+    <path fill="#397b00" d="M235.2 299.4l2.1 2-2-2m4.1 0l.7.6-.7-.6z"/>
+    <path fill="#294200" d="M241.8 299.8l.2.5-.2-.5m3.2-.4l.8.6-.8-.6z"/>
+    <path fill="#6b735a" d="M267.6 299.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M271 299.4l.8.6-.7-.6z"/>
+    <path fill="#184a00" d="M271.8 299.4l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M273.9 299.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M274.6 299.4l.7.6-.7-.6z"/>
+    <path fill="#001000" d="M276.7 299.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M277.4 299.4l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M280.7 299.6l.5.2-.5-.2z"/>
+    <path fill="#184a00" d="M283 299.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M285.1 299.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#184a00" d="M295 299.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M297.1 299.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#185200" d="M297.8 299.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M298.5 299.4v.6h2.1l-2-.6z"/>
+    <path fill="#296300" d="M300.6 299.4l.7.6-.7-.6z"/>
+    <path fill="#184a00" d="M301.3 299.4v.6h3.5l-3.5-.6z"/>
+    <path fill="#296300" d="M304.9 299.4l.7.6-.8-.6z"/>
+    <path fill="#184a00" d="M305.6 299.4l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M306.3 299.4l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M307 299.4l.7.6-.7-.6z"/>
+    <path fill="#185200" d="M311.2 299.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#9c9494" d="M311.9 299.4l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M193.7 300l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M194.4 300l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M195.1 300l-1.4.7v.7l1.4-1.4z"/>
+    <path fill="#103900" d="M205 300l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M212 300l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M212.7 300l.7.7-.7-.7m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#391810" d="M216.2 300l.7.7-.7-.7z"/>
+    <path fill="#423100" d="M219.5 300.3l.5.2-.5-.2z"/>
+    <path fill="#ce2110" d="M221.1 300l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M221.8 300l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M222.5 300l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M223.3 300v.7h2.8l-2.8-.7z"/>
+    <path fill="#294200" d="M226 300l.8.7-.7-.7z"/>
+    <path fill="#315221" d="M226.8 300l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M227.5 300l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M228.2 300l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M231 300l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M235.2 300l.7.7-.7-.7m4.2 0l.7 2h.7l-1.4-2z"/>
+    <path fill="#315221" d="M245 300l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M254.2 300l.7.7-.7-.7z"/>
+    <path fill="#4a6342" d="M267.6 300l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M271 300l.8.7-.7-.7z"/>
+    <path fill="#185200" d="M273.2 300l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M273.9 300l-.7 1.4.7-1.4z"/>
+    <path fill="#297b00" d="M276 300l1.4 1.4-1.4-1.4z"/>
+    <path fill="#103900" d="M276.7 300l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M279.5 300l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M280.2 300l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M282.3 300l1.4 1.4-1.4-1.4z"/>
+    <path fill="#185200" d="M283 300l.7.7-.7-.7m2.2 0l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295.7 300l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M296.4 300l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.1 300l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M305.6 300l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M306.3 300l.7.7-.7-.7z"/>
+    <path fill="#101810" d="M307 300l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M307.7 300l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M308.4 300l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M309 300l.8.7-.7-.7z"/>
+    <path fill="#296300" d="M309.8 300l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M312.6 300l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M202.8 300.7l.7.7-.7-.7z"/>
+    <path fill="#5a5231" d="M203.6 300.7l.7.7-.8-.7z"/>
+    <path fill="#295200" d="M204.3 300.7l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M205 300.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M206.1 301l.5.2-.5-.3z"/>
+    <path fill="#397b00" d="M216.2 300.7l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M217 300.7l.6.7-.7-.7z"/>
+    <path fill="#631808" d="M217.6 300.7l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M218.3 300.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M219 300.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M219.7 300.7l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M220.4 300.7l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M221.1 300.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M227.5 300.7l-2.1 2 2-2z"/>
+    <path fill="#294200" d="M228.2 300.7v1.3h1.4l-1.4-1.3z"/>
+    <path fill="#213918" d="M228.9 300.7l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M229.6 300.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#8c8c8c" d="M231 300.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M236 300.7l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M239.4 300.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M241.5 300.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M245 300.7l.8.7-.7-.7m9.1 0l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M267.6 300.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M271 300.7l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M273.9 300.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M276 300.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M278.8 300.7l.7.7-.7-.7z"/>
+    <path d="M279.5 300.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M280.2 300.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M282.3 300.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M285.1 300.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M288 300.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M289.1 301l.5.2-.5-.3z"/>
+    <path fill="#185200" d="M290 300.7l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M290.8 300.7l-.7 1.3.7-1.3m2.8 0l.7.7-.7-.7m13.4 0l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M307.7 300.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M308.4 300.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M309 300.7l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M309.8 300.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M310.5 300.7l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M311.2 300.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M311.9 300.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M312.6 300.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M313.3 300.7l1.4 1.3-1.4-1.3z"/>
+    <path fill="#efefef" d="M201.4 301.4l-1.4 2 1.4-2z"/>
+    <path fill="#425242" d="M202.1 301.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 301.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M207.5 301.6l.5.2-.5-.2z"/>
+    <path fill="#397b00" d="M208.7 301.8l.2.5-.2-.5z"/>
+    <path fill="#294200" d="M218.8 301.6l.5.2-.5-.2z"/>
+    <path d="M220.4 301.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M221.1 301.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M223.3 301.4v.7h2l-2-.7z"/>
+    <path fill="#103900" d="M229.6 301.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M231 301.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M231.7 301.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M232.4 301.4l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M233.1 301.4l.7.7-.7-.7z"/>
+    <path fill="#4a4208" d="M233.8 301.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M236.6 301.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M237.3 301.4v1.3h1.4l-1.4-1.3zm7 0l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M245 301.4l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M266.9 301.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M267.6 301.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M269.7 301.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#185200" d="M272.5 301.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M273.2 301.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M275.3 301.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#103900" d="M276 301.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M279.3 301.6l.5.2-.5-.2m3-.2l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M284.4 301.4l1.5 1.3-1.5-1.3z"/>
+    <path fill="#185200" d="M285.1 301.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M290.8 301.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.5 301.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M292.2 301.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M292.9 301.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.8 301.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M298.5 301.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M299.2 301.4v1.3h1.4l-1.4-1.3z"/>
+    <path fill="#297b00" d="M300 301.4l.6.7-.7-.7z"/>
+    <path fill="#185200" d="M308.4 301.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M309 301.4l.8.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M311.9 301.4l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M312.6 301.4l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M313.3 301.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M314.7 301.4l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M201.4 302l.7.7-.7-.6z"/>
+    <path fill="#295200" d="M209.2 302l.7.7-.7-.6z"/>
+    <path fill="#294200" d="M209.9 302v.7h2.8l-2.8-.6z"/>
+    <path fill="#295200" d="M212.7 302l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M213.4 302v2l2.8-2h-2.8z"/>
+    <path fill="#294200" d="M216.7 302.3l.5.2-.5-.2z"/>
+    <path fill="#397b00" d="M217.6 302l.7.7-.7-.6z"/>
+    <path fill="#103900" d="M221.8 302l.7.7-.7-.6z"/>
+    <path fill="#295200" d="M222.5 302l.7.7-.7-.6z"/>
+    <path fill="#214210" d="M226 302l.8.7-.7-.6z"/>
+    <path fill="#63636b" d="M226.8 302l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M227.5 302l-.7 1.4.7-1.3z"/>
+    <path fill="#bdbdbd" d="M228.2 302v1.4h1.4l-1.4-1.3z"/>
+    <path fill="#cecece" d="M230 302.3l.5.2-.4-.2z"/>
+    <path d="M231.7 302l.7.7-.7-.6z"/>
+    <path fill="#bd2110" d="M232.4 302l.7.7-.7-.6zm1.4 0l.7.7-.7-.6z"/>
+    <path fill="#294200" d="M234.5 302l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M240.6 302.3l.5.2-.5-.2z"/>
+    <path fill="#5a6b52" d="M244.3 302l.7.7-.7-.6z"/>
+    <path fill="#7b7373" d="M266.9 302l.7.7-.7-.6z"/>
+    <path fill="#103900" d="M269.7 302l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M271.8 302l1.4 1.4-1.4-1.3z"/>
+    <path fill="#103900" d="M272.5 302l.7.7-.7-.6z"/>
+    <path fill="#184a00" d="M275.5 302.5l.3.5-.3-.5z"/>
+    <path fill="#297b00" d="M278.1 302l1.4 1.4-1.4-1.3z"/>
+    <path fill="#082108" d="M278.8 302l.7.7-.7-.6z"/>
+    <path fill="#296300" d="M282.1 302.3l.5.2-.5-.2z"/>
+    <path fill="#185200" d="M284.4 302l.8.7-.8-.6m8.7.4l.3.4-.3-.4z"/>
+    <path fill="#103900" d="M293.8 302.5l.3.5-.3-.5z"/>
+    <path fill="#297b00" d="M294.3 302l.7.7-.7-.6z"/>
+    <path fill="#296300" d="M296.4 302l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M297.1 302l-1.4 2 1.4-2z"/>
+    <path fill="#184a00" d="M300.6 302v.7h2.1l-2-.6z"/>
+    <path fill="#185200" d="M302.7 302l1.4 1.4V302h-1.4z"/>
+    <path fill="#297b00" d="M304.1 302l.7.7-.7-.6m5 0l2 2-2-2z"/>
+    <path fill="#63636b" d="M309.8 302l2 2-2-2z"/>
+    <path fill="#efefef" d="M313.3 302l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M314.5 302.3l.4.2-.4-.2z"/>
+    <path fill="#314231" d="M200.7 302.7l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M213.4 302.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M223.3 302.7l2.8 1.4v-.7l-2.8-.7z"/>
+    <path fill="#103900" d="M224 302.7l.6.7-.7-.7z"/>
+    <path fill="#292921" d="M224.7 302.7l.7.7-.8-.7z"/>
+    <path fill="#7b7373" d="M225.4 302.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M226 302.7l.8.7-.7-.7z"/>
+    <path fill="#9c9494" d="M227.5 302.7l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M229.6 302.7l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M231.7 302.7l.7.7-.7-.7z"/>
+    <path fill="#423100" d="M234.5 302.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M241 303.2l.3.4-.2-.4z"/>
+    <path fill="#397b00" d="M243.7 302.7l.7.7-.8-.7z"/>
+    <path fill="#9c9494" d="M244.3 302.7l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M266.9 302.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M269.2 303.2l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M269.7 302.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M271.8 302.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M274.6 302.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M278.4 303.2l.2.4-.2-.4m3.2-.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M284.4 302.7l.8.7-.8-.7z"/>
+    <path fill="#297b00" d="M286.6 302.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M287.3 302.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M285.9 303.4v.7l6.3-.7h-6.3z"/>
+    <path fill="#296300" d="M292.2 302.7l-.7 1.4.7-1.4z"/>
+    <path d="M294.3 302.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295 302.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M297.1 302.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.8 302.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M298.5 302.7l.7.7-.7-.7z"/>
+    <path d="M304.1 302.7l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M304.9 302.7l.7.7-.8-.7z"/>
+    <path fill="#315221" d="M305.6 302.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M306.3 302.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M307 302.7l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M200 303.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.2 303.4l-.7 1.3.7-1.3z"/>
+    <path fill="#294200" d="M209.9 303.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M212.7 303.4l-.7 2 .7-2z"/>
+    <path fill="#103900" d="M215.5 303.4l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M216.2 303.4l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M217 303.4l.6.7-.7-.7z"/>
+    <path fill="#295200" d="M217.6 303.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M218.3 303.4v.7h2.8l-2.8-.7z"/>
+    <path fill="#294200" d="M221.1 303.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M221.8 303.4l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M222.5 303.4l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M219.7 306.7l14.8-2c-4.6-1.8-11.3-1.6-14.8 2z"/>
+    <path fill="#397b00" d="M228.2 303.4v.7h2l-2-.7z"/>
+    <path fill="#294200" d="M230.3 303.4v.7h2l-2-.7z"/>
+    <path fill="#422100" d="M232.4 303.4l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M233.1 303.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M233.8 303.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M234.5 303.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#214210" d="M243.7 303.4l.7.7-.8-.7z"/>
+    <path fill="#bdbdbd" d="M266.2 303.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M270.4 304.7l2-1.3-2 1.3z"/>
+    <path fill="#103900" d="M274.6 303.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M277.4 303.4l-1.4 2h2.1l-.7-2z"/>
+    <path fill="#296300" d="M281.4 303.6l.5.2-.5-.2z"/>
+    <path fill="#185200" d="M283.8 303.4l.6.7-.6-.7z"/>
+    <path fill="#296300" d="M285 303.6l.4.2-.5-.2z"/>
+    <path fill="#185200" d="M290 303.4l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M292.2 303.4l-.7 1.3.7-1.3z"/>
+    <path fill="#319400" d="M292.9 303.4v.7l9.8 2.6v-.6l-9.8-2.7z"/>
+    <path fill="#296300" d="M295 303.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M298.5 303.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M299.2 303.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M300 303.4l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M304.1 303.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#314231" d="M304.9 303.4l.7.7-.8-.7z"/>
+    <path fill="#cecece" d="M305.6 303.4l1.4 1.3-1.4-1.3z"/>
+    <path fill="#dedede" d="M306.3 303.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M307 303.4l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M307.7 303.4l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M308.4 303.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M309 303.4l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M199.3 304l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M200 304l.7.7-.7-.6m2.8 0v1.3h2.1v-1.3h-2z"/>
+    <path fill="#295200" d="M205 304l.7.7-.7-.6z"/>
+    <path fill="#294200" d="M205.7 304l.7.7-.7-.6z"/>
+    <path fill="#295200" d="M206.4 304l.7.7-.7-.6z"/>
+    <path fill="#294200" d="M207.5 304.3l.5.2-.5-.2z"/>
+    <path fill="#8c8c8c" d="M215.5 304l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M217.6 304l.7.7-.7-.6z"/>
+    <path fill="#bdbdbd" d="M218.3 304v.7h2.8l-2.8-.6z"/>
+    <path fill="#52525a" d="M221.1 304l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M221.8 304l.7.7-.7-.6m12.7 0l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M236 304v.7h2l-2-.6z"/>
+    <path fill="#295200" d="M238 304l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M240.1 304l.7.7-.7-.6z"/>
+    <path fill="#103900" d="M240.8 304l.7.7-.7-.6z"/>
+    <path fill="#313931" d="M243.7 304l.7.7-.8-.6z"/>
+    <path fill="#bd8c8c" d="M244.8 304.3l.5.2-.5-.2z"/>
+    <path fill="#845a52" d="M245.8 304l.7.7-.7-.6z"/>
+    <path fill="#9c4a42" d="M253.5 304l.7.7-.7-.6z"/>
+    <path fill="#ad524a" d="M254.2 304l.7.7-.7-.6z"/>
+    <path fill="#845a52" d="M262 304l.6.7-.7-.6z"/>
+    <path fill="#bd8c8c" d="M263.1 304.3l.5.2-.5-.2z"/>
+    <path fill="#293129" d="M266.2 304l.7.7-.7-.6z"/>
+    <path fill="#082108" d="M268.3 304l.7.7-.7-.6z"/>
+    <path fill="#103900" d="M277.4 304l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M280.2 304l-.7 1.4.7-1.3z"/>
+    <path fill="#103900" d="M281 304l.6.7-.7-.6z"/>
+    <path fill="#297b00" d="M283 304l1.4 1.4-1.4-1.3z"/>
+    <path fill="#184a00" d="M283.8 304l.6.7-.6-.6z"/>
+    <path fill="#319400" d="M283.8 306l17.5 2.7v2.7c2-5.8-14.2-9.7-17.6-5.3z"/>
+    <path fill="#103900" d="M292.2 304l.7.7-.7-.6z"/>
+    <path fill="#184a00" d="M292.9 304l.7.7-.7-.6z"/>
+    <path fill="#185200" d="M293.6 304l1.4 1.4-1.4-1.3z"/>
+    <path fill="#297b00" d="M294.3 304l.7.7-.7-.6z"/>
+    <path fill="#296300" d="M300 304l.6.7-.7-.6z"/>
+    <path fill="#082108" d="M300.6 304l.7.7-.7-.6z"/>
+    <path fill="#103900" d="M301.3 304l.7.7-.7-.6z"/>
+    <path fill="#296300" d="M302 304l.7.7-.7-.6z"/>
+    <path fill="#214210" d="M305.6 304l.7.7-.7-.6z"/>
+    <path fill="#9c9494" d="M309 304l.8.7-.7-.6z"/>
+    <path fill="#425242" d="M309.8 304l.7.7-.7-.6z"/>
+    <path fill="#185200" d="M311 304.3l.4.2-.4-.2z"/>
+    <path fill="#9c9494" d="M311.9 304l.7.7-.7-.6m-113.3.6l-1.4 2 1.4-2z"/>
+    <path fill="#397b00" d="M199.3 304.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M200.7 304.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M202 305l.4.2-.5-.2m9.4-.3l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M214.8 304.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M219.7 304.7l-.7 1.4.7-1.4z"/>
+    <path fill="#293129" d="M220.4 304.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M232.9 305l.4.2-.4-.2z"/>
+    <path fill="#294200" d="M233.8 304.7l.7.7-.7-.7z"/>
+    <path fill="#423100" d="M234.5 304.7l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M235.7 305l.5.2-.5-.2z"/>
+    <path fill="#5a2908" d="M236.6 304.7l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M237.3 304.7v.7h2.1l-2-.7z"/>
+    <path fill="#ad1810" d="M239.4 304.7v.7h2.1l-2-.7z"/>
+    <path fill="#bd2110" d="M241.5 304.7l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M225.4 316.8v-.7l-4.3.7v-.7c19-5.7 47.1-5.7 66.2 0v.7l-3.6-.7c3.5 5 13 2 9.9-4-2.7-5-12.5-5.5-17.6-6.2-14.3-2-30-2.1-44.3.1-5 .8-11.3 1.2-15.3 4.6-3 2.4-1.9 7.3 2 8.4 2.4.7 5-1.1 7-2.2z"/>
+    <path fill="#ce2110" d="M266.2 304.7l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M269 304.7l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M270.1 305l.5.2-.5-.2z"/>
+    <path fill="#6b2908" d="M271 304.7l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M273.9 304.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M274.6 304.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M275.3 304.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M276.7 304.7l.7.7-.7-.7m3.5 0l-.7 1.4.7-1.4m2.8 0l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M293.6 304.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M295.5 305l.4.2-.4-.2z"/>
+    <path fill="#297b00" d="M296.4 304.7l-.7 1.4.7-1.4m4.2 0l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M301.3 304.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M302 304.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#7b7373" d="M302.7 304.7l.7.7-.7-.7z"/>
+    <path fill="#315221" d="M303.4 304.7l.8.7-.8-.7z"/>
+    <path fill="#185200" d="M304.1 304.7l.7.7-.7-.7z"/>
+    <path fill="#103910" d="M306.3 304.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M307 304.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#cecece" d="M310.5 304.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M311.2 304.7l.7.7-.7-.7z"/>
+    <path fill="#102110" d="M311.9 304.7l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M312.6 304.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M198.6 305.4l4.2 2-4.2-2z"/>
+    <path fill="#397b00" d="M210.1 305.8l.2.5-.2-.5z"/>
+    <path fill="#294200" d="M210.6 305.4l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M214.1 305.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M214.8 305.4l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M219.7 305.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M228.2 305.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M228.9 305.4l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M229.6 305.4l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M230.3 305.4l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M231 305.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M231.7 305.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M232.4 305.4l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M233.1 305.4l.7.7-.7-.7m41.5 0l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M275.3 305.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M276 305.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M276.7 305.4l.7.7-.7-.7z"/>
+    <path fill="#422100" d="M277.4 305.4l.7.7-.7-.7z"/>
+    <path fill="#4a4208" d="M278.1 305.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M278.8 305.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M280.2 305.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M282.3 305.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M283 305.4l.7.7-.7-.7m1.4 0l3.6.7-3.6-.7z"/>
+    <path fill="#297b00" d="M287.3 305.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296.4 305.4l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M297.1 305.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M297.8 305.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M298.5 305.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M302 305.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M304.1 305.4l.7.7-.7-.7z"/>
+    <path fill="#6b735a" d="M304.9 305.4l.7.7-.8-.7z"/>
+    <path fill="#184a00" d="M305.6 305.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M306.3 305.4l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M307 305.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M311.9 305.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M312.6 305.4l.7.7-.7-.7z"/>
+    <path fill="#292100" d="M198 306l.6.7-.7-.6z"/>
+    <path fill="#397b00" d="M202.8 306v1.4h1.4v-1.3H203m5.1.4l.2.5-.2-.5z"/>
+    <path fill="#294200" d="M209 306.3l.4.2-.5-.2z"/>
+    <path fill="#397b00" d="M212.7 306l.7.7-.7-.6z"/>
+    <path fill="#314231" d="M213.4 306l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M214.1 306l.7.7-.7-.6z"/>
+    <path fill="#425242" d="M219 306l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M222.3 306.3l.5.2-.5-.2z"/>
+    <path fill="#294200" d="M223.7 306.3l.5.2-.5-.2z"/>
+    <path fill="#292100" d="M224.7 306l.7.7-.8-.6z"/>
+    <path fill="#181000" d="M225.4 306l.7.7-.7-.6z"/>
+    <path fill="#310000" d="M226 306l.8.7-.7-.6z"/>
+    <path fill="#631808" d="M226.8 306l.7.7-.7-.6z"/>
+    <path fill="#941808" d="M227.5 306l.7.7-.7-.6z"/>
+    <path fill="#ad1810" d="M228.2 306l.7.7-.7-.6z"/>
+    <path fill="#ce2110" d="M228.9 306l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M244.3 306l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M245 306l.8.7-.7-.6z"/>
+    <path fill="#de3110" d="M245.8 306l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M248.6 306l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M249.3 306l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M254.7 306.3l.4.2-.4-.2z"/>
+    <path fill="#de3110" d="M255.6 306l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M259.6 306.3l.5.2-.5-.2z"/>
+    <path fill="#de3110" d="M260.5 306l.7.7-.7-.6z"/>
+    <path fill="#ad1810" d="M279.5 306l.7.7-.7-.6z"/>
+    <path fill="#941808" d="M280.2 306l.7.7-.7-.6z"/>
+    <path fill="#631808" d="M281 306l.6.7-.7-.6z"/>
+    <path fill="#5a2908" d="M281.6 306l.7.7-.7-.6z"/>
+    <path fill="#293100" d="M282.3 306l.7.7-.7-.6z"/>
+    <path fill="#185200" d="M283 306l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M283.8 306l.6.7-.6-.6z"/>
+    <path fill="#184a00" d="M288 306v.7h2l-2-.6z"/>
+    <path fill="#185200" d="M290 306l1.5 1.4-1.4-1.3z"/>
+    <path fill="#297b00" d="M290.8 306l.7.7-.7-.6z"/>
+    <path fill="#185200" d="M297.8 306l.7.7-.7-.6z"/>
+    <path fill="#001000" d="M298.5 306l.7.7-.7-.6z"/>
+    <path fill="#293129" d="M299.2 306l.7.7-.7-.6z"/>
+    <path fill="#214210" d="M300 306l.6.7-.7-.6z"/>
+    <path fill="#296300" d="M300.6 306l.7.7-.7-.6m2.1 0l1.4 1.3-1.4-1.3z"/>
+    <path fill="#63636b" d="M303.4 306l.8.7-.8-.6z"/>
+    <path fill="#dedede" d="M305.6 306l.7.7-.7-.6z"/>
+    <path fill="#63636b" d="M306.3 306l.7.7-.7-.6z"/>
+    <path fill="#214210" d="M307 306l.7.7-.7-.6z"/>
+    <path fill="#63636b" d="M307.7 306l.7.7-.7-.6z"/>
+    <path fill="#cecece" d="M197.2 306.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M204.3 306.7l.6.7-.7-.7z"/>
+    <path fill="#294200" d="M205 306.7l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M205.7 306.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M206.8 307l.5.2-.5-.2z"/>
+    <path fill="#397b00" d="M211.3 306.7l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M212 306.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M212.7 306.7l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M218.3 306.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M219.5 307l.5.2-.5-.2z"/>
+    <path fill="#294200" d="M218.3 308v.7l4.2-1.3-4.2.7z"/>
+    <path fill="#293100" d="M222.5 306.7l.7.7-.7-.7z"/>
+    <path fill="#5a2908" d="M223.3 306.7l.6.7-.7-.7z"/>
+    <path fill="#7b1008" d="M224 306.7l.6.7-.7-.7z"/>
+    <path fill="#b51010" d="M224.7 306.7l.7.7-.8-.7z"/>
+    <path fill="#de3110" d="M233.8 306.7l.7.7-.7-.7zm2.8 0l1.4 1.4-1.4-1.4z"/>
+    <path fill="#e75a10" d="M243.7 306.7l.7.7-.8-.7zm2.8 0l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M249.3 306.7l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M257 306.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ef9408" d="M258.4 306.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#e75a10" d="M261.2 306.7l1.4 1.4-1.4-1.4z"/>
+    <path fill="#de3110" d="M262 306.7l.6.7-.7-.7z"/>
+    <path fill="#e75a10" d="M264.8 306.7l.6.7-.6-.7z"/>
+    <path fill="#ef9408" d="M266.2 306.7l-.7 4.7.7-4.7z"/>
+    <path fill="#e75a10" d="M266.9 306.7l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M268.3 306.7l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M269 306.7l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M269.7 306.7l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M271 306.7l.8.7-.7-.7z"/>
+    <path fill="#de3110" d="M273.9 306.7l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M283 306.7l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M283.8 306.7l.6.7-.6-.7z"/>
+    <path fill="#4a1000" d="M284.4 306.7l.8.7-.8-.7z"/>
+    <path fill="#293100" d="M285.1 306.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M286.6 306.7l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M287.3 306.7v.7l7 1.4-7-2z"/>
+    <path fill="#297b00" d="M290 306.7l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.5 306.7l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M292.2 306.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M293.1 307.2l.3.4-.3-.4m6.1-.5l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M300 306.7l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M300.6 306.7l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M301.3 306.7l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M302 306.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M302.7 306.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M304.1 306.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M307 306.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M307.7 306.7l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M308.4 306.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M201.4 307.4l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.1 307.4l.7.7-.7-.7m6.4 0l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M209.2 307.4l.7.7-.7-.7z"/>
+    <path fill="#396b10" d="M209.9 307.4l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M210.6 307.4l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M211.3 307.4l.7.7-.7-.7m6.3 0l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M218.3 307.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M221.1 307.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M221.8 307.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M230.3 307.4l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M236.6 307.4l.7.7-.7-.7m2.1 0l.7.7-.7-.7m5.4.2l.5.3-.5-.3z"/>
+    <path fill="#e75a10" d="M245 307.4l.8.7-.7-.7z"/>
+    <path fill="#f7b508" d="M246.2 307.6l.5.2-.5-.2z"/>
+    <path fill="#ef9408" d="M257 307.4l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M261 307.6l.5.2-.5-.2z"/>
+    <path fill="#de3110" d="M264 307.4l.8.7-.8-.7z"/>
+    <path fill="#de2110" d="M268.5 307.9l.2.4-.2-.5z"/>
+    <path fill="#ef9408" d="M275.3 307.4l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ef7b08" d="M277.4 307.4l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M280.2 307.4l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M285.9 307.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M286.6 307.4l.7.7-.7-.7z"/>
+    <path fill="#293100" d="M287.3 307.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M288 307.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M293.6 307.4l.7.7-.7-.7z"/>
+    <path fill="#001000" d="M294.3 307.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M295 307.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M295.7 307.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M296.4 307.4l.7.7-.7-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M300.6 307.4l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M301.3 307.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M302 307.4l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M302.7 307.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M304 307.6l.4.2-.5-.2z"/>
+    <path fill="#bdbdbd" d="M304.9 307.4l.7.7-.8-.7z"/>
+    <path fill="#9c9494" d="M201.4 308l.7.7-.7-.6z"/>
+    <path fill="#397b00" d="M205.7 308l.7.7-.7-.6z"/>
+    <path fill="#396b10" d="M206.4 308l.7.7-.7-.6z"/>
+    <path fill="#526b42" d="M207 308l.8.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M207.8 308l.7.7-.7-.6z"/>
+    <path fill="#ada5a5" d="M208.5 308l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M209.2 308l.7.7-.7-.6z"/>
+    <path fill="#efefef" d="M217 308l.6.7-.7-.6z"/>
+    <path fill="#213918" d="M217.6 308l.7.7-.7-.6z"/>
+    <path fill="#4a1000" d="M219 308l.7.7-.7-.6z"/>
+    <path fill="#941808" d="M219.7 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M224.4 308.3l.5.2-.5-.2z"/>
+    <path fill="#ef7b08" d="M229.6 308l.7.7-.7-.6zm3.7.5l.3.5-.3-.5z"/>
+    <path fill="#de2110" d="M235.2 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M236 308l.6.7-.7-.6z"/>
+    <path fill="#e75a10" d="M237.3 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M245.8 308l.7.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M246.5 308l.7.7-.7-.6m1.4 0l.7.6-.7-.6zm2 0l.8.6-.7-.6z"/>
+    <path fill="#de2110" d="M255.6 308v2h.7l-.7-2z"/>
+    <path fill="#ef9408" d="M256.3 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M259.1 308l.7.7-.7-.6z"/>
+    <path fill="#de2110" d="M259.8 308l.7 2-.7-2z"/>
+    <path fill="#e75a10" d="M264 308l.8.7-.8-.6z"/>
+    <path fill="#ef9408" d="M264.8 308l.6.7-.6-.6z"/>
+    <path fill="#ef7b08" d="M274.6 308l.7.7-.7-.6z"/>
+    <path fill="#ffce08" d="M275.3 308l.7.7-.7-.6z"/>
+    <path fill="#f7b508" d="M276.7 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M278.1 308l.7.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M279.5 308l.7.7-.7-.6z"/>
+    <path fill="#ffce08" d="M280.2 308l-.7 2 .7-2z"/>
+    <path fill="#ef7b08" d="M281.2 308.5l.2.5-.2-.5z"/>
+    <path fill="#e75a10" d="M283 308l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M283.8 308l.6.7-.6-.6z"/>
+    <path fill="#941808" d="M288 308l.7.7-.7-.6z"/>
+    <path fill="#5a2908" d="M288.7 308l.7.7-.7-.6z"/>
+    <path fill="#184a00" d="M289.4 308l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M290 308l.8.7-.7-.6m4.4.4l.3.5-.3-.5z"/>
+    <path fill="#184a00" d="M295 308l.7.7-.7-.6z"/>
+    <path fill="#424242" d="M295.7 308l.7.7-.7-.6z"/>
+    <path fill="#8c8c8c" d="M296.4 308l.7.7-.7-.6z"/>
+    <path fill="#5a6b52" d="M297.1 308l.7.7-.7-.6z"/>
+    <path fill="#214210" d="M297.8 308l.7.7-.7-.6z"/>
+    <path fill="#296300" d="M298.5 308l.7.7-.7-.6z"/>
+    <path fill="#297b00" d="M301.3 308l1.4 1.4-1.4-1.3z"/>
+    <path fill="#314231" d="M302 308l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M303.4 308l.8.7-.8-.6z"/>
+    <path fill="#63636b" d="M304.1 308l.7.7-.7-.6z"/>
+    <path fill="#101810" d="M304.9 308l.7.7-.8-.6z"/>
+    <path fill="#8c8c8c" d="M201.4 308.7l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M204.3 308.7l.6.7-.7-.7z"/>
+    <path fill="#6b735a" d="M205 308.7l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M205.7 308.7l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M217 308.7l.6.7-.7-.7z"/>
+    <path fill="#311000" d="M217.6 308.7l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M218.3 308.7l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M221.8 308.7l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M222.5 308.7l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M223.3 308.7l.6.7-.7-.7z"/>
+    <path fill="#ffce08" d="M224 308.7l.6.7-.7-.7z"/>
+    <path fill="#ef9408" d="M224.7 308.7l.7.7-.8-.7z"/>
+    <path fill="#de3110" d="M231 308.7l.7.7-.7-.7zm6.3 0l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M249 309l.5.2-.5-.2z"/>
+    <path fill="#ef7b08" d="M256.3 308.7l.7.7-.7-.7m7.7 0l.8.7-.8-.7z"/>
+    <path fill="#de3110" d="M268.3 308.7l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M269.7 308.7l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M276 308.7v2.7l2.8-.6-2.8-2z"/>
+    <path fill="#e75a10" d="M278.1 308.7l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M279.5 308.7l.7.7-.7-.7m4 .3l.5.2-.5-.2z"/>
+    <path fill="#de3110" d="M285.1 308.7l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M285.9 308.7l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M289.4 308.7l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M290 308.7l.8.7-.7-.7z"/>
+    <path fill="#184a00" d="M291.3 309l.4.2-.4-.2z"/>
+    <path fill="#185200" d="M292.2 308.7l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M293.4 309l.4.2-.4-.2z"/>
+    <path fill="#319400" d="M295 308.7l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295.7 308.7l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296.4 308.7l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M297.1 308.7l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M297.8 308.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M298.5 308.7l1.4 2-1.4-2z"/>
+    <path fill="#63636b" d="M299.2 308.7l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M300 308.7l.6.7-.7-.7z"/>
+    <path fill="#297b00" d="M300.6 308.7l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M302.7 308.7l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M202.8 309.4l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M203.6 309.4l.7.7-.8-.7z"/>
+    <path fill="#dedede" d="M204.3 309.4l.6.7-.7-.7m11.3 0l.7.7-.7-.7z"/>
+    <path fill="#524242" d="M216.2 309.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M217 309.4l.6.7-.7-.7z"/>
+    <path fill="#de3110" d="M219.5 309.6l.5.3-.5-.3z"/>
+    <path fill="#f7b508" d="M221.8 309.4l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M223.3 309.4l.6.7-.7-.7z"/>
+    <path fill="#de2110" d="M227.5 309.4l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M228.2 309.4l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M231.2 309.9l.3.4-.3-.4z"/>
+    <path fill="#ef7b08" d="M246.5 309.4l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M247.2 309.4l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M248.1 309.9l.2.4-.2-.4m2.1 0l.2.4-.2-.4z"/>
+    <path fill="#ef9408" d="M256.8 309.6l.4.3-.4-.3z"/>
+    <path fill="#de3110" d="M259.1 309.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M263.4 309.4l.7.7-.8-.7zm8.4 0l-.7 2.7.7-2.7z"/>
+    <path fill="#de3110" d="M273.9 309.4l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M274.8 309.9l.3.4-.3-.4z"/>
+    <path fill="#ef7b08" d="M275.5 309.9l.3.4-.3-.4z"/>
+    <path fill="#e75a10" d="M278.8 309.4l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M280.2 309.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M281.2 309.9l.2.4-.2-.4z"/>
+    <path fill="#de3110" d="M282.3 309.4l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M285.1 309.4l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M285.9 309.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M290.8 309.4l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M291.5 309.4l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M292.2 309.4l.7.7-.7-.7z"/>
+    <path fill="#313931" d="M292.9 309.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M293.6 309.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M294.3 309.4l1.4 1.4-1.4-1.4z"/>
+    <path fill="#8c8c8c" d="M295 309.4l.7.7-.7-.7z"/>
+    <path fill="#5a6b52" d="M295.7 309.4l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M296.4 309.4l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M297.1 309.4l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M297.8 309.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M300 309.4l.6.7-.7-.7z"/>
+    <path fill="#294221" d="M300.6 309.4l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M302 309.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M302.7 309.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M202.1 310l.7.7-.7-.6z"/>
+    <path fill="#63636b" d="M202.8 310l.7.7-.7-.6z"/>
+    <path fill="#9c9494" d="M214.8 310l.7.7-.7-.6z"/>
+    <path fill="#631808" d="M215.5 310l.7.7-.7-.6z"/>
+    <path fill="#ce2110" d="M216.2 310l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M217.6 310l.7.7-.7-.6z"/>
+    <path fill="#ef9408" d="M218.3 310l.7.7-.7-.6zm2.1 0l.7.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M221.8 310l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M223.3 310l.6.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M226 310l.8.7-.7-.6z"/>
+    <path fill="#de3110" d="M229.6 310l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M235.2 310l.7.7-.7-.6z"/>
+    <path fill="#de2110" d="M236 310l.6.7-.7-.6z"/>
+    <path fill="#f7b508" d="M244.1 310.3l.5.2-.5-.2m2.1 0l.5.2-.5-.2z"/>
+    <path fill="#e75a10" d="M247.2 310l-.7 1.4.7-1.3z"/>
+    <path fill="#ef9408" d="M249 310.3l.5.2-.5-.2z"/>
+    <path fill="#e75a10" d="M250.7 310l.7.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M255.6 310l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M257 310l.7.7-.7-.6z"/>
+    <path fill="#de3110" d="M257.7 310l.7.7-.7-.6z"/>
+    <path fill="#f7b508" d="M261 310.3l.5.2-.5-.2z"/>
+    <path fill="#ef7b08" d="M263.4 310l.7.7-.8-.6z"/>
+    <path fill="#f7b508" d="M264.8 310l.6.7-.6-.6z"/>
+    <path fill="#ef9408" d="M270.4 310l.7.7-.7-.6zm9.1 0l.7.7-.7-.6z"/>
+    <path fill="#ef7b08" d="M280.2 310l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M282.3 310l.7.7-.7-.6m2.1 0l.8.6-.8-.6z"/>
+    <path fill="#f7b508" d="M285.1 310l.7.7-.7-.6z"/>
+    <path fill="#ef9408" d="M285.9 310l.7.7-.7-.6z"/>
+    <path fill="#e75a10" d="M288 310l.7.7-.7-.6z"/>
+    <path fill="#ffce08" d="M289 310.5l.1.5-.2-.5z"/>
+    <path fill="#7b1008" d="M292.2 310l.7.7-.7-.6z"/>
+    <path fill="#185200" d="M292.9 310l1.4 1.4v-1.3h-1.4z"/>
+    <path fill="#314231" d="M294.3 310l.7.7-.7-.6z"/>
+    <path fill="#dedede" d="M297.1 310l.7.7-.7-.6z"/>
+    <path fill="#9c9494" d="M297.8 310l.7.7-.7-.6z"/>
+    <path fill="#63636b" d="M298.5 310l.7.7-.7-.6z"/>
+    <path fill="#6b735a" d="M300.6 310l.7.7-.7-.6z"/>
+    <path fill="#184a00" d="M302 310l.7.7-.7-.6z"/>
+    <path fill="#52525a" d="M202.1 310.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M214.1 310.8l.7.6-.7-.6z"/>
+    <path fill="#631818" d="M214.8 310.8l.7.6-.7-.6z"/>
+    <path fill="#de3110" d="M217 310.8l.6.6-.7-.6z"/>
+    <path fill="#ffce08" d="M217.6 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M219 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M219.7 310.8l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M221.8 310.8l.7.6-.7-.6m4.3 0l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M227.5 310.8l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M228.2 310.8l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M230.3 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M231 310.8l-.7 1.3.7-1.4zm9.8 0l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M243.7 310.8l.7.6-.8-.6z"/>
+    <path fill="#ef9408" d="M247.2 310.8l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M247.9 310.8l.7.6-.7-.6m2 0l.8.6-.7-.6z"/>
+    <path fill="#ef9408" d="M250.7 310.8l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M256.3 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M258.4 310.8l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M263.4 310.8l.7.6-.8-.6z"/>
+    <path fill="#ef7b08" d="M264.8 310.8l.6.6-.6-.6z"/>
+    <path fill="#f7b508" d="M274.6 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M275.3 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M276.7 310.8l1.4 1.3-1.4-1.4z"/>
+    <path fill="#e75a10" d="M278.1 310.8l.7.6-.7-.6z"/>
+    <path fill="#ffce08" d="M278.8 310.8l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M283 310.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M284.4 310.8l-.6 1.3.6-1.4zm1.5 0l.7.6-.7-.6z"/>
+    <path fill="#de3110" d="M287.3 310.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M292.9 310.8l.7.6-.7-.6z"/>
+    <path fill="#319400" d="M294.3 310.8l.7.6-.7-.6z"/>
+    <path fill="#296300" d="M295.2 311.2l.3.5-.3-.5z"/>
+    <path fill="#314231" d="M295.7 310.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M296.4 310.8l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M300.6 310.8l.7.6-.7-.6z"/>
+    <path fill="#4a6342" d="M302 310.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M213.4 311.4l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M214.1 311.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M219 311.4l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M219.7 311.4l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M221.1 311.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M222 311.9l.3.4-.2-.4z"/>
+    <path fill="#ef9408" d="M223.5 311.9l.2.4-.2-.4z"/>
+    <path fill="#e75a10" d="M224 311.4l1.3 1.4-1.4-1.4z"/>
+    <path fill="#de3110" d="M226 311.4l.8.7-.7-.7z"/>
+    <path fill="#e75a10" d="M227.5 311.4l.7.7-.7-.7zm5.6 0l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M238 311.4l.7.7-.7-.7zm6.4 0l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M245 311.4l.8.7-.7-.7z"/>
+    <path fill="#de3110" d="M245.8 311.4l.7.7-.7-.7m1.8.2l.5.3-.5-.3m2.8 0l.5.3-.5-.3zm8.7-.2l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M259.8 311.4l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M260.5 311.4l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M262.6 311.4l.7.7-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M264.8 311.4v.7h2l-2-.7m3.5 0l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M269 311.4l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M274.6 311.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M279.5 311.4l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M281.2 311.9l.2.4-.2-.4z"/>
+    <path fill="#f7b508" d="M282.3 311.4l.7.7-.7-.7m2.1 0l.8.7-.8-.7z"/>
+    <path fill="#e75a10" d="M285.9 311.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M293.6 311.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M294.3 311.4l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M295.7 311.4l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M296.4 311.4l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M297.1 311.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M300.9 311.9l.2.4-.2-.4z"/>
+    <path fill="#296300" d="M301.3 311.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M302 311.4l.7.7-.7-.7m-88.6.7l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M214.1 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M217.6 312l.7.8-.7-.7z"/>
+    <path fill="#ffce08" d="M218.3 312l.7.8-.7-.7z"/>
+    <path fill="#ef7b08" d="M221.1 312l.7.8-.7-.7z"/>
+    <path fill="#f7b508" d="M222.5 312l.7.8-.7-.7z"/>
+    <path fill="#de2110" d="M224 312l.6.8-.7-.7z"/>
+    <path fill="#ef7b08" d="M225.4 312l.7.8-.7-.7z"/>
+    <path fill="#f7b508" d="M226.8 312l.7.8-.7-.7z"/>
+    <path fill="#ef7b08" d="M227.5 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M231 312l.7.8-.7-.7z"/>
+    <path fill="#ef7b08" d="M231.7 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M232.4 312l.7.8-.7-.7m42.9 0l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M276 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M276.7 312l.7.8-.7-.7z"/>
+    <path fill="#de3110" d="M277.4 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M278.8 312l.7.8-.7-.7m1.4 0l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M281.6 312l.7.8-.7-.7z"/>
+    <path fill="#ffce08" d="M282.6 312.5l.2.5-.2-.5z"/>
+    <path fill="#e75a10" d="M283.5 312.3l.5.2-.5-.2z"/>
+    <path fill="#de2110" d="M285.9 312l.7.8-.7-.7z"/>
+    <path fill="#ef7b08" d="M286.6 312l.7.8-.7-.7z"/>
+    <path fill="#e75a10" d="M288 312l.7.8-.7-.7zm1.6.5l.2.5-.2-.5z"/>
+    <path fill="#736b6b" d="M294.3 312l.7.8-.7-.7z"/>
+    <path fill="#cecece" d="M295 312l.7.8-.7-.7z"/>
+    <path fill="#8c8c8c" d="M295.7 312l.7.8-.7-.7z"/>
+    <path fill="#294221" d="M296.4 312l.7.8-.7-.7z"/>
+    <path fill="#082108" d="M297.1 312l.7.8-.7-.7z"/>
+    <path fill="#8c8c8c" d="M297.8 312l.7.8-.7-.7z"/>
+    <path fill="#103900" d="M301.3 312l.7.8-.7-.7z"/>
+    <path fill="#dedede" d="M302 312l.7.8-.7-.7z"/>
+    <path fill="#6b4242" d="M213.4 312.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M219.7 312.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M220.4 312.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M222.5 312.8l.7.6-.7-.6z"/>
+    <path fill="#f7b508" d="M225.4 312.8l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M226.8 312.8l.7.6-.7-.6z"/>
+    <path fill="#de3110" d="M227.5 312.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M243 312.8v.6h4.2l-4.3-.6z"/>
+    <path fill="#7b1008" d="M247.2 312.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M247.9 312.8v.6h13.3l-13.3-.6z"/>
+    <path fill="#ad1810" d="M261.2 312.8v.6h4.3l-4.3-.6z"/>
+    <path fill="#ce2110" d="M265.5 312.8l.7.6-.7-.6z"/>
+    <path fill="#de3110" d="M280.2 312.8l.7.6-.7-.6z"/>
+    <path fill="#ef7b08" d="M281 312.8l.6.6-.7-.6z"/>
+    <path fill="#e75a10" d="M281.6 312.8l.7.6-.7-.6z"/>
+    <path fill="#de3110" d="M283.5 313l.5.2-.5-.2z"/>
+    <path fill="#f7b508" d="M285.1 312.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#e75a10" d="M285.9 312.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M288 312.8l.7.6-.7-.6z"/>
+    <path fill="#631818" d="M294.3 312.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M297.4 313.2l.2.5-.2-.5z"/>
+    <path fill="#7b7373" d="M297.8 312.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M298.5 312.8l.7.6-.7-.6m2.1 0l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M301.3 312.8l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M205 313.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M205.7 313.4l.7.7-.7-.7z"/>
+    <path fill="#6b4242" d="M206.4 313.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M209.2 313.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M209.9 313.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M210.6 313.4l.7.7-.7-.7z"/>
+    <path fill="#6b2908" d="M213.4 313.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M218.3 313.4l.7.7-.7-.7z"/>
+    <path fill="#ffce08" d="M219.3 313.9l.2.4-.2-.4z"/>
+    <path fill="#f7b508" d="M221.1 313.4l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M224 313.4l.6.7-.7-.7z"/>
+    <path fill="#de3110" d="M224.7 313.4l.7.7-.8-.7z"/>
+    <path fill="#ad1810" d="M234.3 313.6l.4.3-.4-.2z"/>
+    <path fill="#941808" d="M235.2 313.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M236 313.4l.6.7-.7-.7z"/>
+    <path fill="#733129" d="M236.6 313.4l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M237.8 313.6l.5.3-.5-.2z"/>
+    <path fill="#845a52" d="M238.7 313.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M239.4 313.4v.7h2.8l-2.8-.7z"/>
+    <path fill="#ada5a5" d="M242.2 313.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M243 313.4v.7h2l-2-.7z"/>
+    <path fill="#cecece" d="M245 313.4l.8.7-.7-.7z"/>
+    <path fill="#63636b" d="M245.8 313.4l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M246.5 313.4l2 2-2-2z"/>
+    <path fill="#428c00" d="M247.2 313.4c1.8 2.3 3.3 3.2 6.3 2.7l-6.3-2.7z"/>
+    <path fill="#397b00" d="M251.4 313.4l1.4 3.4h1.4l-2.8-3.4z"/>
+    <path fill="#63636b" d="M252 313.4l2.2 2-2.1-2z"/>
+    <path fill="#cecece" d="M254.9 313.4l-.7 1.4.7-1.4z"/>
+    <path fill="#214210" d="M255.6 313.4l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M256.3 316.8l5.6-2.7c-2.8-1.1-6.2-.8-5.6 2.7z"/>
+    <path fill="#185200" d="M262 313.4l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M262.6 313.4l.7.7-.7-.7z"/>
+    <path fill="#946b63" d="M269 313.4l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M270.1 313.6l.5.3-.5-.2z"/>
+    <path fill="#8c3939" d="M271 313.4l.8.7-.7-.7z"/>
+    <path fill="#631808" d="M271.8 313.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M272.5 313.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M273.7 313.6l.4.3-.4-.2z"/>
+    <path fill="#ce2110" d="M274.6 313.4l.7.7-.7-.7z"/>
+    <path fill="#ef9408" d="M285 313.6l.4.3-.5-.2m1.7-.3l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M287.3 313.4l.7.7-.7-.7z"/>
+    <path fill="#f7b508" d="M288 313.4l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M289.4 313.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M294.3 313.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M297.8 313.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M298.5 313.4l.7.7-.7-.7zm3.5 0l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M302.7 313.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M204.3 314.1l.6.7-.7-.7z"/>
+    <path fill="#631818" d="M205 314.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M205.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M205 320.1c7.3-4.2 16.8 7.4 22.5-2l-.7-.7c-2.4.9-5.2 2.8-7.8 2.4-1.7-.2-19.4-11.7-14 .3z"/>
+    <path fill="#bd2110" d="M209.9 314.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M210.6 314.1l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M211.3 314.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M212 314.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M212.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M213.4 314.1l.7.7-.7-.7z"/>
+    <path fill="#de3110" d="M218.3 314.1l.7.7-.7-.7z"/>
+    <path fill="#ef7b08" d="M219.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M228.2 314.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M228.9 314.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M229.6 314.1l.7.7-.7-.7z"/>
+    <path fill="#733129" d="M230.3 314.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M231 314.1l.7.7-.7-.7z"/>
+    <path fill="#8c6363" d="M231.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M232.9 314.3l.4.2-.4-.2z"/>
+    <path fill="#bdbdbd" d="M234.3 314.3l.4.2-.4-.2z"/>
+    <path fill="#efefef" d="M235.2 314.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M246.5 314.1l2 2-2-2z"/>
+    <path fill="#103910" d="M254.9 314.1l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M261.2 314.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M262 314.1l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M273.7 314.3l.4.2-.4-.2z"/>
+    <path fill="#8c8c8c" d="M275 314.3l.5.2-.4-.2z"/>
+    <path fill="#8c7373" d="M276 314.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M276.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M277.4 314.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M278.1 314.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M278.8 314.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M279.5 314.1l.7.7-.7-.7z"/>
+    <path fill="#e75a10" d="M285.9 314.1l.7.7-.7-.7m2.3.5l.2.4-.2-.4z"/>
+    <path fill="#6b2908" d="M294.3 314.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M295 314.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M295.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#733129" d="M296.4 314.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M297.1 314.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M297.8 314.1l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M282.3 317.4c-1 9.4 16.6.1 21.1 2.7 2.5-5-3.2-7.4-7.6-4.7-2 1.3-3.1 3.9-5.8 4.4-2.6.4-5.4-1.4-7.7-2.4z"/>
+    <path fill="#ce2110" d="M302 314.1l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M302.7 314.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M303.4 314.1l.8.7-.8-.7m-99.8.7l.6.6-.7-.6z"/>
+    <path fill="#631808" d="M204.3 314.8l.6.6-.7-.6z"/>
+    <path fill="#941808" d="M212.7 314.8l.7.6-.7-.6z"/>
+    <path fill="#310000" d="M213.4 314.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M214.1 314.8l.7.6-.7-.6z"/>
+    <path fill="#ef9408" d="M219 314.8l.7.6-.7-.6z"/>
+    <path fill="#e75a10" d="M219.7 314.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M224 314.8l.6.6-.7-.6z"/>
+    <path fill="#ad1810" d="M224.7 314.8l.7.6-.8-.6z"/>
+    <path fill="#7b1008" d="M225.4 314.8l.7.6-.7-.6z"/>
+    <path fill="#6b2908" d="M226 314.8l.8.6-.7-.6z"/>
+    <path fill="#734a42" d="M226.8 314.8l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M227.5 314.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M228.2 314.8l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M228.9 314.8l.7.6-.7-.6z"/>
+    <path fill="#293129" d="M254.2 314.8l.7.6-.7-.6z"/>
+    <path fill="#297b00" d="M254.9 314.8l1.4 2-1.4-2m5 0l-.8 1.3.7-1.3z"/>
+    <path fill="#103910" d="M260.5 314.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M261.2 314.8l-.7 1.3.7-1.3z"/>
+    <path fill="#bdbdbd" d="M278.8 314.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M279.5 314.8l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M280.2 314.8l.7.6-.7-.6z"/>
+    <path fill="#734a42" d="M281 314.8l.6.6-.7-.6z"/>
+    <path fill="#733129" d="M281.6 314.8l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M282.3 314.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M283 314.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M283.8 314.8l.6.6-.6-.6z"/>
+    <path fill="#f7b508" d="M288.7 314.8l.7.6-.7-.6z"/>
+    <path fill="#420000" d="M294.3 314.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M295 314.8l.7.6-.7-.6m8.4 0l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M304.1 314.8l.7.6-.7-.6z"/>
+    <path fill="#efefef" d="M202.8 315.4l.7.7-.7-.7z"/>
+    <path fill="#842118" d="M203.6 315.4l.7.7-.8-.7z"/>
+    <path fill="#bd2110" d="M213.4 315.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M214.1 315.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M221.8 315.4l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M224.7 315.4l.7.7-.8-.7z"/>
+    <path fill="#bdbdbd" d="M225.4 315.4l.7.7-.7-.7z"/>
+    <path fill="#214210" d="M248.6 315.4l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M254.2 315.4l.7.7-.7-.7z"/>
+    <path fill="#293129" d="M259.8 315.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M282.3 315.4l.7.7-.7-.7z"/>
+    <path fill="#391810" d="M283 315.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M283.8 315.4l.6.7-.6-.7z"/>
+    <path fill="#5a1008" d="M284.4 315.4l.8.7-.8-.7z"/>
+    <path fill="#631808" d="M285.1 315.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M285.9 315.4l1.4 1.4-1.4-1.4m7.7 0l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M294.3 315.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M304.1 315.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M304.9 315.4l.7.7-.8-.7z"/>
+    <path fill="#8c8c8c" d="M202.8 316.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M203.6 316.1l.7.7-.8-.7z"/>
+    <path fill="#7b1008" d="M214.1 316.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M214.8 316.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M221.6 316.3l.5.2-.5-.2z"/>
+    <path fill="#631818" d="M225.4 316.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M226 316.1l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M245.8 316.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M246.5 316.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M247.2 316.1v.7h2l-2-.7z"/>
+    <path fill="#293100" d="M249.3 316.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M250 316.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M254.2 316.1l.7.7-.7-.7z"/>
+    <path fill="#082108" d="M254.9 316.1l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M257.7 316.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M258.4 316.1l.7.7-.7-.7z"/>
+    <path fill="#392100" d="M259.1 316.1l.7.7-.7-.7z"/>
+    <path fill="#733939" d="M259.8 316.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M260.5 316.1l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M261.2 316.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M262 316.1l.6.7-.7-.7z"/>
+    <path fill="#cecece" d="M281.6 316.1l-.7 1.3.7-1.3z"/>
+    <path fill="#5a1010" d="M282.3 316.1l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M283 316.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M285.9 316.1l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M292.9 316.1l1.4 1.3-1.4-1.3z"/>
+    <path fill="#5a1008" d="M293.6 316.1l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M304.9 316.1l.7.7-.8-.7z"/>
+    <path fill="#8c6363" d="M202.8 316.8l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M214.8 316.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M215.5 316.8l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M224.7 316.8l.7.6-.8-.6z"/>
+    <path fill="#7b1008" d="M225.4 316.8l-.7 1.3.7-1.3z"/>
+    <path fill="#100808" d="M226 316.8l.8.6-.7-.6z"/>
+    <path fill="#9c9494" d="M226.8 316.8l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M243 316.8l.6.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M243.7 316.8l.7.6-.8-.6z"/>
+    <path fill="#8c8c8c" d="M244.3 316.8l.7.6-.7-.6z"/>
+    <path fill="#52525a" d="M245 316.8l.8.6-.7-.6z"/>
+    <path fill="#7b1008" d="M245.8 316.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M246.5 316.8l.7.6-.7-.6z"/>
+    <path fill="#de2110" d="M245.8 320.1l5.6.7c-.4-4.1-4.8-5.1-5.6-.7z"/>
+    <path fill="#b51010" d="M250 316.8l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M250.7 316.8l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M251.4 316.8l.7.6-.7-.6z"/>
+    <path fill="#422100" d="M252 316.8l.8.6-.7-.6z"/>
+    <path fill="#941808" d="M252.8 316.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M253.5 316.8v.6h2.1l-2.1-.6z"/>
+    <path fill="#311000" d="M255.6 316.8l.7.6-.7-.6z"/>
+    <path fill="#293100" d="M256.3 316.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M257 316.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M257.7 316.8l.7.6-.7-.6z"/>
+    <path fill="#de2110" d="M257 317.4l.7 3.4 5-.7c-.6-3.3-2.6-3.3-5.7-2.7z"/>
+    <path fill="#b51010" d="M262 316.8l.6.6-.7-.6z"/>
+    <path fill="#423131" d="M262.6 316.8l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M263.4 316.8l.7.6-.8-.6z"/>
+    <path fill="#9c9494" d="M264 316.8l.8.6-.8-.6z"/>
+    <path fill="#bdbdbd" d="M264.8 316.8l.6.6-.6-.6z"/>
+    <path fill="#efefef" d="M265.5 316.8l.7.6-.7-.6z"/>
+    <path fill="#101810" d="M281.6 316.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M282.3 316.8l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M283 316.8l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M292.9 316.8l.7.6-.7-.6z"/>
+    <path fill="#734a42" d="M305 317.2l.3.5-.2-.5z"/>
+    <path fill="#8c8c8c" d="M202.8 317.4l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M214.8 317.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M215.5 317.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M223.3 317.4l.6.7-.7-.7z"/>
+    <path fill="#5a1008" d="M224 317.4l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M225.4 317.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M226.8 317.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M227.5 317.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M240.1 317.4l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M240.8 317.4l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M241.5 317.4l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M242.2 317.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M243 317.4l.6.7-.7-.7z"/>
+    <path fill="#b51010" d="M243.7 317.4l.7.7-.8-.7z"/>
+    <path fill="#de2110" d="M244.3 317.4l-2.8.7v4c2.5-1 3.9-2 2.8-4.7z"/>
+    <path fill="#5a1008" d="M245 317.4l.8.7-.7-.7z"/>
+    <path fill="#520808" d="M251.4 317.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M252 317.4v4h4.3v-4h-4.2z"/>
+    <path fill="#520808" d="M256.3 317.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M262.6 317.4l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M263.4 317.4l.7.7-.8-.7z"/>
+    <path fill="#bd2110" d="M264 317.4l.8.7-.8-.7z"/>
+    <path fill="#ad1810" d="M264.8 317.4l.6.7-.6-.7z"/>
+    <path fill="#7b1008" d="M265.5 317.4l.7.7-.7-.7z"/>
+    <path fill="#6b4242" d="M266.2 317.4l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M266.9 317.4l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M267.6 317.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M280.2 317.4l.7.7-.7-.7z"/>
+    <path fill="#5a1010" d="M281 317.4l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M281.6 317.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M283 317.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M283.8 317.4l.6.7-.6-.7z"/>
+    <path fill="#941808" d="M284.4 317.4l.8.7-.8-.7z"/>
+    <path fill="#7b1008" d="M292.2 317.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M292.9 317.4l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M203 318.6l.3.4-.2-.4z"/>
+    <path fill="#ad1810" d="M203.6 318.1l.7.7-.8-.7z"/>
+    <path fill="#ce2110" d="M207 318.1l.8.7-.7-.7z"/>
+    <path fill="#bd2110" d="M207.8 318.1l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M215.5 318.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M216.2 318.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M221.8 318.1l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M222.5 318.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M223.3 318.1l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M227.5 318.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M240.4 318.6l.2.4-.2-.4z"/>
+    <path fill="#941808" d="M240.8 318.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M245 318.1v2.7h.8l-.7-2.7m6.3 0v2.7h.7l-.7-2.7z"/>
+    <path fill="#941808" d="M256.3 318.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M257 318.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M262.6 318.1l-2 3.4h2V320l1.4.7V318h-1.4z"/>
+    <path fill="#de2110" d="M264 318.1v3.4l2.9.6.7-3.3-3.6-.7z"/>
+    <path fill="#bd2110" d="M266.9 318.1l.7.7-.7-.7z"/>
+    <path fill="#6b4242" d="M267.6 318.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M280.2 318.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M281 318.1l.6.7-.7-.7m3.6 0l.6.7-.7-.7z"/>
+    <path fill="#520808" d="M285.1 318.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M285.9 318.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M291.5 318.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M292.2 318.1l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M300.4 318.3l.5.3-.5-.3m3.8-.2l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M304.9 318.1l.7.7-.8-.7z"/>
+    <path fill="#cecece" d="M198 318.8l.6.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M198.6 318.8l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M202.1 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1010" d="M203.6 318.8l.7.6-.8-.6z"/>
+    <path fill="#bd2110" d="M205.7 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M206.4 318.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M207 318.8l.8.6-.7-.6z"/>
+    <path fill="#941808" d="M207.8 318.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M208.5 318.8l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M209.2 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M209.9 318.8l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M210.6 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M216.2 318.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M217.2 319.2l.2.5-.3-.5z"/>
+    <path fill="#b51010" d="M220.4 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M221.1 318.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M221.8 318.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M222.5 318.8l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M226.8 318.8l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M227.5 318.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M240.8 318.8l.7.6-.7-.6m15.5 0v1.3h1.4v-1.3h-1.4z"/>
+    <path fill="#8c8c8c" d="M267.8 319.2l.2.5-.2-.5z"/>
+    <path fill="#dedede" d="M280.2 318.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M281 318.8l.6.6-.7-.6z"/>
+    <path fill="#941808" d="M285.9 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M286.6 318.8l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M287.3 318.8l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M290.8 318.8l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M291.5 318.8l.7.6-.7-.6z"/>
+    <path fill="#ce2110" d="M292.2 318.8l.7.6-.7-.6m5 0l.6.6-.7-.6z"/>
+    <path fill="#7b1008" d="M297.8 318.8l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M299 319l.5.2-.5-.2z"/>
+    <path fill="#941808" d="M300 318.8l.6.6-.7-.6z"/>
+    <path fill="#7b1008" d="M300.6 318.8l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M301.3 318.8l.7.6-.7-.6z"/>
+    <path fill="#b51010" d="M302 318.8l.7.6-.7-.6z"/>
+    <path fill="#520808" d="M304.1 318.8l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M305.3 319l.5.2-.5-.2z"/>
+    <path fill="#bdbdbd" d="M309.5 319l.5.2-.5-.2z"/>
+    <path fill="#ada5a5" d="M195.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M196.5 319.4l.7.7-.7-.7z"/>
+    <path fill="#733129" d="M197.2 319.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M198 319.4l.6.7-.7-.7z"/>
+    <path fill="#de2110" d="M194.4 321.5c2.8 5.7 17.6 7.3 21.1 1.3-8.2 1-13.4-5.2-21.1-1.3z"/>
+    <path fill="#ce2110" d="M202.1 319.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M202.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M203.6 319.4l.7.7-.8-.7z"/>
+    <path fill="#ce2110" d="M206.4 319.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M214.8 322.1c-6.6-5-10.9 1.3 0 0z"/>
+    <path fill="#ce2110" d="M209.9 319.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M210.6 319.4l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M211.3 319.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M212 319.4l.7.7-.7-.7zm8.4 0l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M221.1 319.4l.7.7-.7-.7z"/>
+    <path fill="#5a2121" d="M226.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M240.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M281 319.4l.6.7-.7-.7z"/>
+    <path fill="#ce2110" d="M281.6 319.4l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M287.3 319.4l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M288 319.4l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M295.7 319.4l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M296.9 319.7l.5.2-.5-.2z"/>
+    <path fill="#bd2110" d="M297.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M293.6 321.5v.6c3.6.5 7.7 1.8 8.4-2.7l-8.4 2z"/>
+    <path fill="#520808" d="M302 319.4l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M303.4 319.4l.8.7-.8-.7z"/>
+    <path fill="#5a1008" d="M304.1 319.4l-.7 1.4.8-1.4z"/>
+    <path fill="#ad1810" d="M304.9 319.4l.7.7-.8-.7z"/>
+    <path fill="#ce2110" d="M305.6 319.4l.7.7-.7-.7z"/>
+    <path fill="#de2110" d="M292.9 322.8c3.5 6 18.3 4.4 21-1.3-7.6-3.9-12.8 2.3-21 1.3z"/>
+    <path fill="#941808" d="M309.8 319.4l.7.7-.7-.7z"/>
+    <path fill="#6b2908" d="M310.5 319.4l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M311.2 319.4l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M311.9 319.4l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M312.6 319.4l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M194.4 320.1l-1.4 2 1.4-2z"/>
+    <path fill="#5a3131" d="M195.1 320.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M195.8 320.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M204.3 320.1l.6.7-.7-.7z"/>
+    <path fill="#ad1810" d="M212 320.1l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M213.2 320.4l.4.2-.4-.2z"/>
+    <path fill="#bd2110" d="M214.1 320.1l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M226 320.1l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M226.8 320.1l-.7 1.4.7-1.4z"/>
+    <path fill="#631808" d="M240.8 320.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M245.8 320.1v.7l2.8.7-2.8-1.4z"/>
+    <path fill="#941808" d="M256.3 320.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ce2110" d="M257 320.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M259.8 320.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M262.6 320.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ad1810" d="M266.9 320.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M267.6 320.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M281 320.1l.6.7-.7-.7z"/>
+    <path fill="#5a2121" d="M281.6 320.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ce2110" d="M293.6 320.1l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M294.3 320.1l-.7 1.4.7-1.4z"/>
+    <path fill="#5a1008" d="M295 320.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M295.7 320.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M302 320.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M302.7 320.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M311.9 320.1l.7.7-.7-.7z"/>
+    <path fill="#5a2121" d="M312.6 320.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M313.3 320.1l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M194.4 320.8l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M204.3 320.8l.6.7-.7-.7z"/>
+    <path fill="#210800" d="M205 320.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M205.7 320.8l-.7 1.3.7-1.3z"/>
+    <path fill="#ce2110" d="M213.4 320.8l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M214.1 320.8l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M214.8 320.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M215.5 320.8l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M224.7 320.8l.7.7-.8-.7z"/>
+    <path fill="#5a1010" d="M225.4 320.8l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M240.8 320.8l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M244.3 320.8l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M245 320.8l.8.7-.7-.7z"/>
+    <path fill="#941808" d="M246 321.2l.2.5-.2-.5z"/>
+    <path fill="#b51010" d="M247 321l.4.2-.5-.2z"/>
+    <path fill="#7b1008" d="M248.6 320.8l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M249.3 320.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M250 320.8l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M250.7 320.8l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M251.4 320.8l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M256.3 320.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M257.7 320.8v.7h2.1l-2-.7z"/>
+    <path fill="#941808" d="M259.8 320.8l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M261.2 320.8l.7.7-.7-.7z"/>
+    <path fill="#310000" d="M262.6 320.8l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M266.9 320.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M267.6 320.8l.7.7-.7-.7m14 0l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M283 320.8l.7.7-.7-.7m9.2 0l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M292.9 320.8l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M294.3 320.8l.7.7-.7-.7m7.7 0l.7.7-.7-.7z"/>
+    <path fill="#210800" d="M302.7 320.8l.7.7-.7-.7z"/>
+    <path fill="#bd2110" d="M303.4 320.8l.8.7-.8-.7z"/>
+    <path fill="#7b1008" d="M313.3 320.8l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M314 320.8l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M193.7 321.5l3.5 4-3.5-4z"/>
+    <path fill="#420000" d="M205.7 321.5l.7.6-.7-.6z"/>
+    <path fill="#842118" d="M214.8 321.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M215.5 321.5l.7.6-.7-.6z"/>
+    <path fill="#524242" d="M216.2 321.5l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M217 321.5l.6.6-.7-.6z"/>
+    <path fill="#b51010" d="M217.6 321.5l.7.6-.7-.6m5.7 0l.6.6-.7-.6z"/>
+    <path fill="#5a1008" d="M224 321.5l.6.6-.7-.6z"/>
+    <path fill="#7b7373" d="M224.7 321.5l.7.6-.8-.6z"/>
+    <path fill="#efefef" d="M225.4 321.5l.7.6-.7-.6z"/>
+    <path fill="#845a52" d="M240.8 321.5l.7.6-.7-.6z"/>
+    <path fill="#bd2110" d="M242.2 321.5l.7.6-.7-.6z"/>
+    <path fill="#631818" d="M243 321.5l.6.6-.7-.6z"/>
+    <path fill="#7b5252" d="M243.7 321.5l.7.6-.8-.6z"/>
+    <path fill="#8c8c8c" d="M244.3 321.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M245 321.5l.8.6-.7-.6z"/>
+    <path fill="#de2110" d="M246.5 321.5v.6h2.8l-2.8-.6z"/>
+    <path fill="#b51010" d="M249.3 321.5l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M250 321.5l.7.6-.7-.6z"/>
+    <path fill="#5a1008" d="M250.7 321.5l.7.6-.7-.6z"/>
+    <path fill="#392100" d="M251.4 321.5l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M252 321.5l.8.6-.7-.6z"/>
+    <path fill="#7b1008" d="M252.8 321.5l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M254 321.7l.4.2-.4-.2z"/>
+    <path fill="#941808" d="M254.9 321.5l.7.6-.7-.6z"/>
+    <path fill="#311000" d="M255.6 321.5l.7.6-.7-.6z"/>
+    <path fill="#292100" d="M256.3 321.5l.7.6-.7-.6z"/>
+    <path fill="#4a1000" d="M257 321.5l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M257.7 321.5l.7.6-.7-.6z"/>
+    <path fill="#ad1810" d="M258.4 321.5l.7.6-.7-.6z"/>
+    <path fill="#de2110" d="M259.1 321.5v.6h2.8l-2.8-.6z"/>
+    <path fill="#b51010" d="M262 321.5l.6.6-.7-.6z"/>
+    <path fill="#5a1010" d="M262.6 321.5l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M263.4 321.5l.7.6-.8-.6z"/>
+    <path fill="#7b7373" d="M264 321.5l.8.6-.8-.6z"/>
+    <path fill="#6b2131" d="M264.8 321.5l.6.6-.6-.6z"/>
+    <path fill="#941808" d="M265.5 321.5l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M266.9 321.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M283 321.5l.7.6-.7-.6z"/>
+    <path fill="#631818" d="M283.8 321.5l.6.6-.6-.6z"/>
+    <path fill="#ad1810" d="M284.4 321.5l.8.6-.8-.6z"/>
+    <path fill="#b51010" d="M290 321.5l.8.6-.7-.6z"/>
+    <path fill="#7b1008" d="M290.8 321.5l.7.6-.7-.6z"/>
+    <path fill="#733939" d="M291.5 321.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M292.2 321.5l.7.6-.7-.6z"/>
+    <path fill="#631818" d="M292.9 321.5l.7.6-.7-.6z"/>
+    <path fill="#941808" d="M314 321.5l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M314.7 321.5l.7.6-.7-.6z"/>
+    <path fill="#63636b" d="M193 322.1l2.8 2.7-2.8-2.7z"/>
+    <path fill="#941808" d="M205.7 322.1l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M206.4 322.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#ce2110" d="M212 322.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M213 322.6l.2.4-.3-.4z"/>
+    <path fill="#631808" d="M213.9 322.4l.4.2-.4-.2z"/>
+    <path fill="#7b1008" d="M214.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#392121" d="M215.5 322.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M217 322.1l.6.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M217.6 322.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M218.3 322.1l.7.7-.7-.7z"/>
+    <path fill="#6b2131" d="M219 322.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M219.7 322.1l.7.7-.7-.7z"/>
+    <path fill="#9c4239" d="M220.4 322.1l.7.7-.7-.7z"/>
+    <path fill="#ad524a" d="M221.1 322.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M221.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M222.5 322.1l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M223.3 322.1l.6.7-.7-.7z"/>
+    <path fill="#efefef" d="M224 322.1l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M240.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#6b2131" d="M241.5 322.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M242.2 322.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M243 322.1l.6.7-.7-.7m2.1 0l.8.7-.8-.7z"/>
+    <path fill="#313931" d="M245.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M246.5 322.1v.7h2.8l-2.8-.7z"/>
+    <path fill="#296300" d="M249.3 322.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M250 322.1l-.7 2.7.7-2.7z"/>
+    <path fill="#319400" d="M251.2 322.4l.4.2-.4-.2z"/>
+    <path fill="#214210" d="M252 322.1l-.6 1.4.7-1.4z"/>
+    <path fill="#9c9494" d="M252.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M254 322.4l.4.2-.4-.2z"/>
+    <path fill="#efefef" d="M254.9 322.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M255.6 322.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M256.3 322.1l.7.7-.7-.7z"/>
+    <path fill="#428c00" d="M257 322.1c2.6 3 7 6.8 10.6 3.4L257 322z"/>
+    <path fill="#397b00" d="M258.4 322.1l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M259.1 322.1v.7h2.8l-2.8-.7z"/>
+    <path fill="#103900" d="M262 322.1l.6.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M262.6 322.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M265.5 322.1l.7.7-.7-.7z"/>
+    <path fill="#524242" d="M266.2 322.1l.7.7-.7-.7z"/>
+    <path fill="#5a1010" d="M266.9 322.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M284.4 322.1l.8.7-.8-.7z"/>
+    <path fill="#7b7373" d="M285.1 322.1l.7.7-.7-.7z"/>
+    <path fill="#734a42" d="M285.9 322.1l.7.7-.7-.7z"/>
+    <path fill="#ad524a" d="M287 322.4l.5.2-.5-.2z"/>
+    <path fill="#631808" d="M288 322.1l.7.7-.7-.7z"/>
+    <path fill="#733129" d="M288.7 322.1l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M289.4 322.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M290 322.1l.8.7-.7-.7z"/>
+    <path fill="#dedede" d="M290.8 322.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M292.2 322.1l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M292.9 322.1l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M294 322.4l.5.2-.4-.2z"/>
+    <path fill="#ad1810" d="M295.2 322.6l.3.4-.3-.4z"/>
+    <path fill="#ce2110" d="M295.7 322.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M301.3 322.1l.7.7-.7-.7z"/>
+    <path fill="#631818" d="M314 322.1l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M314.7 322.1l-.7 1.4.7-1.4z"/>
+    <path fill="#efefef" d="M315.4 322.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M192.3 322.8l2.8 2.7-2.8-2.7z"/>
+    <path fill="#cecece" d="M193 322.8l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M206.4 322.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M208.2 323l.5.2-.5-.2z"/>
+    <path fill="#941808" d="M209.2 322.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M209.9 322.8l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M210.6 322.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M211.8 323l.4.2-.4-.2z"/>
+    <path fill="#5a1008" d="M215.5 322.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M216.2 322.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M240.8 322.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M244.3 322.8l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M245 322.8l.8.7-.7-.7z"/>
+    <path fill="#297b00" d="M245.8 322.8l.7.7-.7-.7z"/>
+    <path fill="#319400" d="M241.5 325.5c3.3 3 6.8.2 9.2-2.7l-9.2 2.7z"/>
+    <path fill="#cecece" d="M252 322.8l-.6 1.3.7-1.3z"/>
+    <path fill="#8c8c8c" d="M256.3 322.8l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M257 322.8l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M262.6 322.8l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M263.4 322.8l.7.7-.8-.7z"/>
+    <path fill="#efefef" d="M264 322.8l.8.7-.8-.7z"/>
+    <path fill="#dedede" d="M266.9 322.8l.7.7-.7-.7z"/>
+    <path fill="#420000" d="M292.2 322.8l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M295.7 322.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M296.4 322.8l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M297.1 322.8l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M297.8 322.8l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M298.5 322.8l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M299.2 322.8v.7h2.1l-2-.7z"/>
+    <path fill="#ad1810" d="M301.3 322.8l.7.7-.7-.7z"/>
+    <path fill="#520808" d="M313.3 322.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M314.7 322.8l-1.4 2 1.4-2z"/>
+    <path fill="#8c8c8c" d="M315.4 322.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M191.6 323.5l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M193.7 323.5l.7.6-.7-.6z"/>
+    <path fill="#7b1008" d="M215.5 323.5l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M216.2 323.5l.7.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M243.7 323.5l.7.6-.8-.6z"/>
+    <path fill="#184a00" d="M244.3 323.5l.7.6-.7-.6z"/>
+    <path fill="#314231" d="M250.7 323.5l-.7 1.3.7-1.3z"/>
+    <path fill="#bdbdbd" d="M257 323.5l.7.6-.7-.6z"/>
+    <path fill="#213918" d="M257.7 323.5l.7.6-.7-.6m6.4 0l.6.6-.6-.6z"/>
+    <path fill="#bdbdbd" d="M264.8 323.5l.6.6-.6-.6z"/>
+    <path fill="#5a1008" d="M292.2 323.5l.7.6-.7-.6z"/>
+    <path fill="#631808" d="M312.6 323.5l.7.6-.7-.6z"/>
+    <path fill="#424242" d="M313.3 323.5l.7.6-.7-.6z"/>
+    <path fill="#7b7373" d="M314.7 323.5l-1.4 2 1.4-2z"/>
+    <path fill="#9c9494" d="M315.4 323.5l-.7 1.3.7-1.3z"/>
+    <path fill="#cecece" d="M192.3 324.1l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M214.8 324.1l-.7 1.4.7-1.4z"/>
+    <path fill="#63636b" d="M215.5 324.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M242.2 324.1l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M243 324.1l.6.7-.7-.7z"/>
+    <path fill="#296300" d="M243.7 324.1l.7.7-.8-.7z"/>
+    <path fill="#efefef" d="M250.7 324.1l.7.7-.7-.7m7 0l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M258.4 324.1l.7.7-.7-.7z"/>
+    <path fill="#397b00" d="M259.1 324.1l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M264.8 324.1l.6.7-.6-.7z"/>
+    <path fill="#425242" d="M265.5 324.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M266.2 324.1l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M292.2 324.1l.7.7-.7-.7z"/>
+    <path fill="#ad1810" d="M292.9 324.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M311.9 324.1l-1.4 2 1.4-2z"/>
+    <path fill="#424242" d="M312.6 324.1l-1.4 2 1.4-2z"/>
+    <path fill="#7b7373" d="M316.1 324.1l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M191.6 324.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M193 324.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#7b7373" d="M193.7 324.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M195.1 324.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M195.8 324.8l1.4 1.3-1.4-1.3z"/>
+    <path fill="#5a3131" d="M214.8 324.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M240.8 324.8l.7.7-.7-.7z"/>
+    <path fill="#425242" d="M241.5 324.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M242.2 324.8l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M248.6 324.8l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M249.3 324.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M259.1 324.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M259.8 324.8l.7.7-.7-.7m6.4 0l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M266.9 324.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M267.6 324.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M292.9 324.8l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M293.6 324.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M312.6 324.8l.7.7-.7-.7z"/>
+    <path fill="#a59494" d="M314 324.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M315.4 324.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M316.1 324.8l-.7 2 .7-2z"/>
+    <path fill="#bdbdbd" d="M192.3 325.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M194.4 325.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M195.1 325.5l5 4-5-4z"/>
+    <path fill="#9c9494" d="M195.8 325.5l.7.7-.7-.7z"/>
+    <path fill="#7b1008" d="M197.2 325.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M203.6 325.5l.7.7-.8-.7z"/>
+    <path fill="#631808" d="M204.3 325.5l.6.7-.7-.7z"/>
+    <path fill="#8c3939" d="M205 325.5l.7.7-.7-.7z"/>
+    <path fill="#843129" d="M209.9 325.5l.7.7-.7-.7z"/>
+    <path fill="#6b5252" d="M213.4 325.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M214.1 325.5l.7.7-.7-.7m26 0l.7.7-.7-.7z"/>
+    <path fill="#184a00" d="M240.8 325.5l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M247.2 325.5l.7.7-.7-.7z"/>
+    <path fill="#294221" d="M247.9 325.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M248.6 325.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M259.8 325.5l.7.7-.7-.7z"/>
+    <path fill="#213918" d="M260.5 325.5l.7.7-.7-.7z"/>
+    <path fill="#103900" d="M267.6 325.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M268.3 325.5l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M293.6 325.5l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M294.3 325.5l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M295 325.5l.7.7-.7-.7z"/>
+    <path fill="#842118" d="M297.8 325.5l.7.7-.7-.7z"/>
+    <path fill="#8c4a4a" d="M298.5 325.5l.7.7-.7-.7zm4.2 0l.7.7-.7-.7z"/>
+    <path fill="#631808" d="M303.4 325.5l.8.7-.8-.7z"/>
+    <path fill="#941808" d="M304.1 325.5l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M304.9 325.5l.7.7-.8-.7z"/>
+    <path fill="#cecece" d="M311.9 325.5l-2.1 2.7 2-2.7z"/>
+    <path fill="#8c8c8c" d="M312.6 325.5l-3.5 4.7 3.5-4.7z"/>
+    <path fill="#ada5a5" d="M313.8 325.7l.4.2-.4-.2z"/>
+    <path fill="#dedede" d="M192.3 326.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M193 326.1l1.4 2-1.4-2z"/>
+    <path fill="#efefef" d="M194.4 326.1l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M196.5 326.1l.7.7-.7-.7z"/>
+    <path fill="#52525a" d="M197.2 326.1l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M198 326.1l.6.7-.7-.7z"/>
+    <path fill="#bd2110" d="M201.4 326.1l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M202.1 326.1l.7.7-.7-.7z"/>
+    <path fill="#736b6b" d="M202.8 326.1l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M203.6 326.1l.7.7-.8-.7z"/>
+    <path fill="#efefef" d="M240.1 326.1l.7.7-.7-.7z"/>
+    <path fill="#314231" d="M240.8 326.1l.7.7-.7-.7z"/>
+    <path fill="#297b00" d="M241.5 326.1l1.4 1.4-1.4-1.4z"/>
+    <path fill="#185200" d="M246.5 326.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M247.2 326.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M247.9 326.1l.7.7-.7-.7m12.6 0l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M261.2 326.1l.7.7-.7-.7z"/>
+    <path fill="#294200" d="M262 326.1l.6.7-.7-.7z"/>
+    <path fill="#397b00" d="M266.9 326.1l-.7 1.4.7-1.4z"/>
+    <path fill="#52525a" d="M267.6 326.1l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M268.3 326.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M304.1 326.1l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M304.9 326.1l.7.7-.8-.7z"/>
+    <path fill="#631818" d="M305.6 326.1l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M306.3 326.1l.7.7-.7-.7m3.5 0l-.7 1.4.7-1.4z"/>
+    <path fill="#292921" d="M310.5 326.1l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M313.3 326.1l.7.7-.7-.7m1.4 0l-2.1 2.7 2-2.7z"/>
+    <path fill="#bdbdbd" d="M193.7 326.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M195.1 326.8l.7.7-.7-.7z"/>
+    <path fill="#424242" d="M198 326.8l.6.7-.7-.7z"/>
+    <path fill="#ad1810" d="M198.6 326.8l.7.7-.7-.7m2.1 0l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M201.4 326.8l.7.7-.7-.7z"/>
+    <path fill="#efefef" d="M202.1 326.8l.7.7-.7-.7z"/>
+    <path fill="#63636b" d="M241.5 326.8l.7.7-.7-.7z"/>
+    <path fill="#296300" d="M245 326.8l.8.7-.7-.7z"/>
+    <path fill="#425242" d="M245.8 326.8l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M246.5 326.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M262 326.8l.6.7-.7-.7z"/>
+    <path fill="#425242" d="M262.6 326.8l.7.7-.7-.7z"/>
+    <path fill="#295200" d="M263.4 326.8l.7.7-.8-.7z"/>
+    <path fill="#63636b" d="M266.9 326.8l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M306.3 326.8l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M307 326.8l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M309.8 326.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M312.6 326.8l.7.7-.7-.7z"/>
+    <path fill="#ada5a5" d="M314.7 326.8l-1.4 2 1.4-2z"/>
+    <path fill="#cecece" d="M195.8 327.5l2.8 2.7-2.8-2.7z"/>
+    <path fill="#7b7373" d="M196.5 327.5l.7.7-.7-.7z"/>
+    <path fill="#292921" d="M198.6 327.5l.7.7-.7-.7z"/>
+    <path fill="#b51010" d="M199.3 327.5l.7.7-.7-.7z"/>
+    <path fill="#941808" d="M200 327.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M200.7 327.5l.7.7-.7-.7m41.5 0l.7.7-.7-.7z"/>
+    <path fill="#185200" d="M243 327.5l.6.7-.7-.7z"/>
+    <path fill="#296300" d="M243.7 327.5l.7.7-.8-.7z"/>
+    <path fill="#395231" d="M244.3 327.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M245 327.5l.8.7-.7-.7m18.3 0l.7.7-.8-.7z"/>
+    <path fill="#5a5231" d="M264 327.5l.8.7-.8-.7z"/>
+    <path fill="#397b00" d="M264.8 327.5l.6.7-.6-.7z"/>
+    <path fill="#295200" d="M265.5 327.5l.7.7-.7-.7z"/>
+    <path fill="#9c9494" d="M266.2 327.5l.7.7-.7-.7m40.8 0l.7.7-.7-.7z"/>
+    <path fill="#5a1008" d="M307.7 327.5l.7.7-.7-.7z"/>
+    <path fill="#ce2110" d="M308.4 327.5l.7.7-.7-.7z"/>
+    <path fill="#391810" d="M309 327.5l.8.7-.7-.7z"/>
+    <path fill="#cecece" d="M311.9 327.5l.7.7-.7-.7z"/>
+    <path fill="#7b7373" d="M197.2 328.2l.7.6-.7-.6z"/>
+    <path fill="#313931" d="M199.3 328.2l.7.6-.7-.6z"/>
+    <path fill="#9c9494" d="M200 328.2l.7.6-.7-.6z"/>
+    <path fill="#ada5a5" d="M243 328.2l.6.6-.7-.6z"/>
+    <path fill="#9c9494" d="M243.7 328.2l.7.6-.8-.6m21.2 0l.6.6-.6-.6z"/>
+    <path fill="#ada5a5" d="M265.5 328.2l.7.6-.7-.6z"/>
+    <path fill="#cecece" d="M307.7 328.2l1.4 1.3-1.4-1.3z"/>
+    <path fill="#292921" d="M308.4 328.2l.7.6-.7-.6z"/>
+    <path fill="#bdbdbd" d="M309 328.2l.8.6-.7-.6m2 0l.8.6-.7-.6z"/>
+    <path fill="#8c8c8c" d="M195.1 328.8l.7.7-.7-.7z"/>
+    <path fill="#cecece" d="M195.8 328.8l2.8 2.7-2.8-2.7z"/>
+    <path fill="#7b7373" d="M198 328.8l.6.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M310.5 328.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M311.9 328.8l-.7 1.4.7-1.4z"/>
+    <path fill="#7b7373" d="M312.6 328.8l-.7 1.4.7-1.4m-116.8.7l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M198.6 329.5l.7.7-.7-.7z"/>
+    <path fill="#bdbdbd" d="M309.8 329.5l.7.7-.7-.7z"/>
+    <path fill="#8c8c8c" d="M196.5 330.2l1.4 1.3-1.4-1.3z"/>
+    <path fill="#efefef" d="M198.6 330.2l.7.6-.7-.6z"/>
+    <path fill="#dedede" d="M310.5 330.2l.7.6-.7-.6m-114 .6l1.4 1.4-1.4-1.4z"/>
+    <path fill="#efefef" d="M309.8 330.8l.7.7-.7-.7z"/>
+    <path fill="#dedede" d="M311.2 330.8l-.7 1.4.7-1.4z"/>
+    <path fill="#ecca5e" d="M230.9 207.5l1.1-.3a.8.8 0 00.4.5h.6c.3 0 .6 0 .7-.2a.3.3 0 00.1-.3.3.3 0 00-.1-.2 1 1 0 00-.4 0 6.5 6.5 0 01-1.8-.4 1 1 0 01-.7-.9c0-.4 0-.7.3-1 .3-.2.8-.4 1.4-.5.6 0 1 0 1.4.2.3.1.5.3.7.7l-1.1.3a.6.6 0 00-.3-.3 1 1 0 00-.6 0l-.6.1-.1.2.1.2c.1.1.5.2 1.1.2.7 0 1.1.2 1.4.4a1 1 0 01.4.7c0 .4 0 .7-.3 1-.3.4-.8.6-1.5.6-.6.1-1 0-1.4-.1a1.6 1.6 0 01-.8-.9zm-5.1-.4a2.1 2.1 0 01.1-1l.7-1c.4-.1.7-.3 1.2-.3a2 2 0 011.7.4c.4.4.7.8.8 1.5a2 2 0 01-.5 1.6c-.3.5-.8.7-1.5.8l-1.2-.1a1.9 1.9 0 01-.9-.7l-.4-1.2zm1.2 0c0 .4.2.7.4.9.2.2.5.2.8.2a1 1 0 00.7-.4c.2-.3.2-.6.2-1s-.2-.7-.4-.9a1 1 0 00-.8-.2 1 1 0 00-.7.4c-.2.2-.3.5-.2 1zm-3.6-2.3l-.1-1 1.1-.1.1 1-1.1.1zm.6 4.7l-.5-4.1 1.1-.2.5 4.2-1.1.1zm-6.8-5l2.2-.3h1.2c.3 0 .7.2 1 .4l.7.9c.1.3.3.8.3 1.3v1.3a2.5 2.5 0 01-.5 1 2 2 0 01-.8.6l-1 .3-2.4.2-.7-5.7zm1.3.8l.5 3.8h1l.7-.2.4-.3.3-.6v-1a3.3 3.3 0 00-.3-1 1.3 1.3 0 00-.4-.6 1.2 1.2 0 00-.6-.2h-1l-.5.1z"/>
+    <path fill="#ecca5e" fill-rule="evenodd" d="M233.4 223.4l17 21.4-.7 1-17.1-21.4zm44-1.6L258.3 247l-1.5-.5 19.1-25.2zm-48.4 5.8l20.2 18.8-.7 1-20.2-18.7zm-4.7 4.4l22.2 16.6-.5 1-22.3-16.5zm56-3.3l-20 19-1.2-.7 20-19zm4.4 3.5l-22.4 16.4-1-.8 22.4-16.4z"/>
+    <path fill="#7b5a00" fill-opacity=".6" d="M271.3 229.6l4.6-5.9-.6-.4-4 6.3z"/>
+    <path fill="#7b5a00" fill-opacity=".5" d="M260.8 243.5l4.6-5.9-.6-.4-4 6.3z"/>
+    <path fill="#7b5a00" fill-opacity=".7" d="M266 236.8l4.6-5.9-.5-.4-4.1 6.3z"/>
+    <path fill="#7b5a00" fill-opacity=".5" d="M276.8 237.6l6.5-4-.4-.6-6 4.6z"/>
+    <path fill="#7b5a00" fill-opacity=".4" d="M268.3 240l5.8-5-.5-.5-5.3 5.4z"/>
+    <path fill="#428c00" d="M213.6 288.6h-.7c-.1-3.8-1.6-6.3-5.6-7.3.1 2 1.6 10 5 7.3h.6l-1.4 6c2.1-2.2 10.8-10 7-13.4-3.2-3-4.8 6-4.9 7.4zm-5.3-47.9h-.8c0-3.8-1.6-6.3-5.6-7.3.1 2 1.6 10 5 7.3h.6l-1.4 6c2.1-2.2 10.8-10 7-13.4-3.2-3-4.8 6-4.9 7.4z"/>
+    <path fill="#ecca5e" d="M299.5 210.8h-1v-.7l-.7.5a1.7 1.7 0 01-.7 0c-.5 0-1-.2-1.2-.7-.3-.4-.5-1-.4-1.6.1-.7.3-1.2.7-1.6.4-.3.9-.4 1.4-.4.5.1.9.3 1.2.8l.3-2.1 1.1.1-.7 5.7zm-2.8-2.5v1a.9.9 0 00.8.5.9.9 0 00.7-.2c.2-.2.4-.5.4-1l-.1-1a.9.9 0 00-.7-.4.9.9 0 00-.7.2c-.2.2-.4.5-.4 1zm-4.6-1.2l-1-.3c.1-.4.3-.7.7-.8l1.3-.2 1.1.3.5.5v1l-.2 1.3v.8l.1.6-1.1-.1a4.7 4.7 0 010-.4 2 2 0 01-1.5.3c-.5 0-.8-.2-1-.5a1.1 1.1 0 01-.3-.9 1.1 1.1 0 01.8-1l1-.1 1-.1.1-.2-.1-.4-.6-.2a.9.9 0 00-.5 0 .8.8 0 00-.3.4zm1.4 1a8 8 0 01-.7.2h-.7l-.2.4a.5.5 0 000 .5.6.6 0 00.5.2c.2 0 .4 0 .7-.2a.7.7 0 00.3-.3v-.5l.1-.2zm-3-2.4v.8h-.8l-.2 1.6v.7l.2.1h.5v.8l-1 .1a1.5 1.5 0 01-.5-.2.8.8 0 01-.4-.3 1 1 0 010-.4v-.8l.2-1.8h-.5v-1l.6.1.1-.8 1.3-.5-.2 1.5h.8zm-4.6 3.6l-1.1-.1.5-4.1h1v.7l.5-.5.5-.1c.3 0 .5.1.8.3l-.5.9a1 1 0 00-.5-.2.7.7 0 00-.5 0l-.3.5-.2 1.4-.2 1.2zm-3-1.6l1 .3a1.8 1.8 0 01-.8.8 2 2 0 01-1.2.2c-.8-.1-1.3-.4-1.6-1-.2-.3-.3-.8-.3-1.4.1-.7.4-1.2.8-1.5.4-.4 1-.5 1.5-.4a2 2 0 011.5.7c.3.5.4 1.1.3 2l-2.9-.4c0 .4 0 .6.2.8.1.2.4.3.6.4l.5-.1a.9.9 0 00.3-.4zm.1-1.1c0-.4 0-.6-.2-.8a.8.8 0 00-.5-.3.8.8 0 00-.7.2 1 1 0 00-.3.7l1.7.2zm-8 1.5l.7-5.7 1.1.1-.2 2c.4-.2.8-.4 1.3-.3.5 0 1 .3 1.2.7.3.4.4.9.4 1.6-.1.7-.4 1.2-.8 1.5a1.7 1.7 0 01-2 .2 1.8 1.8 0 01-.6-.6v.6H275zm1.4-2v1c.2.3.5.5.8.5a.8.8 0 00.7-.2c.2-.2.3-.6.4-1 0-.5 0-.8-.2-1a.9.9 0 00-.6-.4.9.9 0 00-.7.2c-.2.2-.4.5-.4.9zm-3.1-3v-1l1.2.2v1l-1.2-.1zm-.6 4.8l.5-4.2 1.1.2-.5 4h-1.1zm-5-.6l.6-5.7 1.2.2-.6 4.7 3 .3v1l-4.3-.5z"/>
+    <path fill="#428c00" d="M201 254h-.6c-.1-3.8-1.6-6.2-5.6-7.3 0 2 1.5 10 4.9 7.4h.7l-1.4 6c2-2.2 10.7-10 7-13.5-3.2-3-4.9 6-5 7.5z"/>
+    <path fill="#fac349" fill-rule="evenodd" d="M226 232.8c0 .5-.6 1-1.4 1s-1.3-.5-1.3-1 .6-1 1.3-1 1.3.5 1.3 1zm4.3-4.7c0 .6-.5 1-1.3 1s-1.3-.4-1.3-1c0-.5.6-.9 1.3-.9s1.3.4 1.3 1zm4.1-4.3c0 .5-.6 1-1.3 1s-1.3-.5-1.3-1 .6-1 1.3-1 1.3.5 1.3 1zm43.3-1.7c0 .5-.5 1-1.2 1s-1.4-.5-1.4-1 .6-1 1.3-1 1.4.5 1.4 1zm3.1 6c0 .6-.5 1-1.3 1s-1.3-.4-1.3-1c0-.5.6-.9 1.3-.9s1.3.4 1.3 1zm4.6 4c0 .4-.6.8-1.3.8s-1.3-.4-1.3-.9.6-1 1.3-1 1.3.5 1.3 1z"/>
+    <path fill="#ecca5e" d="M262.6 199.3l-1-.2c0-.4.3-.7.6-.9.3-.2.7-.3 1.3-.3l1.1.2.5.5.2 1v2.1l.2.5h-1.1a4 4 0 01-.1-.3 1.4 1.4 0 000-.1 1.9 1.9 0 01-1.5.5c-.4 0-.8-.1-1-.4a1.1 1.1 0 01-.4-.9 1.1 1.1 0 01.7-1 4 4 0 011-.3l1-.2v-.1l-.1-.5-.6-.1-.5.1a.8.8 0 00-.3.4zm1.5.9l-.7.2-.6.2-.2.3c0 .2 0 .3.2.4a.7.7 0 00.4.2c.2 0 .4 0 .6-.2.2 0 .2-.2.3-.3v-.8zm-4.7-2.8v-1h1.2v1h-1.2zm0 4.8V198h1.2v4.2h-1.2zm-2.2 0H256V198h1.1v.6l.5-.6a1 1 0 01.5-.1c.3 0 .6 0 .8.2l-.4 1a1 1 0 00-.5-.2l-.4.1-.3.5-.1 1.4v1.2zm-1.9-4.2v.8h-.8v2.3l.1.1.2.1.5-.1v.9l-.9.1h-.5a.9.9 0 01-.4-.3 1 1 0 01-.1-.5 5.3 5.3 0 010-.8v-1.8h-.6v-.9h.6v-.8l1.1-.6v1.5h.8zm-5.8 1.2l-1-.2c0-.4.2-.7.5-.9.3-.2.8-.3 1.3-.3s1 0 1.2.2l.5.5.1 1v2l.3.6h-1.2a4.2 4.2 0 010-.3l-.1-.2a1.9 1.9 0 01-1.4.6c-.4 0-.8-.2-1-.4a1.1 1.1 0 01-.4-.9 1.1 1.1 0 01.6-1 4 4 0 011-.3l1.1-.2v-.1l-.1-.5-.7-.1h-.4a.8.8 0 00-.3.5zm1.5.9a9 9 0 01-.7.2l-.6.1c-.2.1-.3.3-.3.4a.5.5 0 00.2.4l.5.2c.2 0 .4 0 .6-.2l.3-.3v-.8zm-8 2v-5.8h3.4l.9.7c.2.3.3.6.3 1s0 .7-.2 1l-.5.5a1 1 0 01-.7.3h-2v2.2h-1.3zm1.2-4.8v1.6h1.7l.3-.4a.7.7 0 00.2-.4.7.7 0 00-.2-.5.8.8 0 00-.5-.3 6.2 6.2 0 00-.9 0h-.6zm2.4 110.6h-.8c0-.3.2-.6.4-.7.2-.2.5-.3.9-.4h.9c.2 0 .3.2.4.3.1.1.2.3.2.7l.2 1 .1.5.2.4-.8.2a3.5 3.5 0 01-.1-.3 1.5 1.5 0 01-1 .5c-.4 0-.6 0-.9-.2a.9.9 0 01-.3-.6.8.8 0 010-.5.8.8 0 01.3-.3l.7-.3.8-.3v-.1c0-.2-.1-.3-.2-.3h-.5a.6.6 0 00-.3 0 .6.6 0 00-.2.4zm1.3.5l-.5.2c-.3 0-.4.2-.5.2v.6h.5a.8.8 0 00.4-.1.5.5 0 00.1-.3v-.6zm-2.6-.3l-.8.2a.6.6 0 00-.3-.3.6.6 0 00-.4 0 .7.7 0 00-.5.2v.8c0 .3.1.6.3.7l.6.2a.6.6 0 00.3-.2l.2-.5h.8a1.4 1.4 0 01-.3.9c-.2.2-.6.4-1 .4-.5 0-.9 0-1.2-.2a1.6 1.6 0 01-.6-1.2c0-.5 0-.9.2-1.2a2 2 0 011.1-.6l1 .1c.3.1.5.3.6.7zm-4.8-.7v-.8h.8l.1.7-.9.1zm.6 3.5l-.5-3 .9-.2.5 3-.9.2zm-1.7.3l-.7-4.3.8-.1.7 4.2-.8.2zm-3.9.5l-.7-4.3h.9l.2 1.5c.2-.4.5-.6.9-.6s.7 0 1 .3c.3.2.5.6.6 1 .1.6 0 1-.2 1.3a1.3 1.3 0 01-1.4.6 1.4 1.4 0 01-.6-.4l.1.5-.8.1zm.6-1.7c0 .3.1.5.3.7a.7.7 0 00.6.2.6.6 0 00.5-.3c0-.2.1-.4 0-.8 0-.3-.1-.6-.3-.7a.7.7 0 00-.5-.2.7.7 0 00-.5.3 1 1 0 00-.1.8zm-2.3 2v-.5a1.2 1.2 0 01-.4.5l-.6.2h-.6a.8.8 0 01-.5-.4l-.2-.7-.3-2h.9l.2 1.4.2.8a.5.5 0 00.2.2.6.6 0 00.3 0 .7.7 0 00.4-.2.6.6 0 00.2-.3v-.8l-.3-1.3.9-.1.5 3-.8.1zm-6.4-2.3h.8v.4a1.2 1.2 0 011-.7c.4 0 .7 0 1 .3.3.2.5.6.6 1.1 0 .5 0 1-.2 1.3-.2.3-.5.5-1 .5a1.2 1.2 0 01-.4 0 1.8 1.8 0 01-.5-.3l.2 1.6h-.8l-.7-4.2zm1 1.4c.1.3.2.6.4.7a.7.7 0 00.6.2.6.6 0 00.4-.3c.1-.2.2-.4.1-.8 0-.3-.2-.5-.3-.7a.7.7 0 00-.5-.1.7.7 0 00-.5.3c-.1.2-.2.4-.1.7zm-2.3 1h1l-.5.7c-.2.2-.5.3-.9.4-.5 0-1 0-1.3-.4a1.7 1.7 0 01-.5-1c0-.5 0-.9.2-1.2a1.4 1.4 0 011-.6c.5 0 1 0 1.3.3.3.2.5.7.6 1.3l-2.2.3c0 .3.2.4.3.5.2.2.4.2.6.2a.5.5 0 00.3-.2.7.7 0 00.1-.3zm0-.9c0-.2-.2-.4-.3-.5a.6.6 0 00-.5-.1.6.6 0 00-.4.3.7.7 0 00-.1.5l1.3-.2zm-6.2 2.8l-.7-4.3 2-.3h1l.6.3.3.7c0 .3 0 .6-.2.8-.2.2-.4.4-.8.5l.5.3.6.6.7.8-1 .1-.9-.8-.5-.6a.7.7 0 00-.3 0 1.6 1.6 0 00-.5 0h-.2l.3 1.7-.9.2zm.5-2.6l.7-.1.8-.2a.5.5 0 00.2-.2.6.6 0 000-.3.5.5 0 00-.1-.4.6.6 0 00-.4 0h-1.4l.2 1.2zm67 .4l-.7-.2c.1-.3.3-.5.5-.6.3-.1.6-.2 1-.1l.9.2.3.4v.8l-.1 1a3.5 3.5 0 000 .5v.5l-.8-.1v-.3a1.6 1.6 0 01-.6.1 1.4 1.4 0 01-.6 0 1.1 1.1 0 01-.7-.3.8.8 0 01-.2-.7.8.8 0 01.6-.7 3 3 0 01.7 0l.9-.2v-.4l-.5-.2a.6.6 0 00-.4 0 .6.6 0 00-.2.3zm1.1.8l-.5.1h-.5l-.2.3a.4.4 0 000 .4.5.5 0 00.4.1.8.8 0 00.4 0 .5.5 0 00.3-.3 1.6 1.6 0 00.1-.4v-.2zm-2.9 1.2l-.8-.1.2-1.6v-.7a.4.4 0 00-.1-.2.5.5 0 00-.3-.2.7.7 0 00-.4.1.6.6 0 00-.3.3l-.2.7-.2 1.4-.8-.1.4-3.1h.8v.5c.3-.3.7-.4 1.1-.3l.5.1a.8.8 0 01.3.3.9.9 0 01.1.4v.5l-.3 2zm-5.5-3l-.7-.2c.1-.3.3-.5.5-.6h1c.4 0 .7 0 .9.2l.3.3v.8l-.1 1a3.4 3.4 0 000 .6v.4l-.8-.1a3.2 3.2 0 010-.3 1 1 0 00-.1 0l-.5.2a1.4 1.4 0 01-.6 0 1.1 1.1 0 01-.7-.4.8.8 0 01-.2-.7.9.9 0 01.6-.7h.7l.9-.2v-.4l-.5-.2a.7.7 0 00-.4 0 .6.6 0 00-.3.3zm1.1.9h-.6l-.4.1c-.2 0-.2.2-.2.3a.4.4 0 000 .3.5.5 0 00.4.2.8.8 0 00.4-.1.5.5 0 00.3-.3v-.5zm-2.4-1h-.8a.6.6 0 00-.2-.4.6.6 0 00-.3-.2.7.7 0 00-.6.2l-.3.6.1.8c.1.2.3.3.5.3a.6.6 0 00.4 0l.3-.5.8.3c-.1.3-.3.6-.6.8-.3.1-.6.2-1 .1a1.5 1.5 0 01-1.1-.6 1.6 1.6 0 01-.3-1.2c.1-.5.3-1 .6-1.2.4-.2.8-.3 1.2-.2.4 0 .7.1 1 .3.2.2.3.5.3.8zm-4.3-2v-.8l1 .2-.2.7h-.8zm-.6 3.5l.5-3h.9l-.5 3.1h-.9zm-.8-.1l-.9-.1.2-1.6v-.6a.4.4 0 000-.3.5.5 0 00-.3-.1h-.5c-.2 0-.2.2-.3.3l-.1.7-.2 1.4h-.9l.5-3.2.8.1v.5a1.4 1.4 0 011.6-.2.8.8 0 01.3.3.9.9 0 01.1.3 2.4 2.4 0 010 .6l-.3 1.9zm-4.2-4.1l.1-.8.9.1-.1.8-.9-.1zm-.5 3.5l.4-3.1.9.1-.5 3.1-.8-.1zm-5.2-3.9l.8.1v.5c.3-.3.6-.4 1-.4l.5.2.4.4.5-.3h.5c.3 0 .5 0 .6.2a.8.8 0 01.3.4v.7l-.3 2-.8-.2.2-1.7v-.6c0-.2-.2-.2-.3-.3a.6.6 0 00-.7.4l-.1.6-.2 1.5-.9-.1.3-1.7v-.6a.4.4 0 00-.1-.2.4.4 0 00-.3-.1.7.7 0 00-.3 0 .6.6 0 00-.3.3 2.1 2.1 0 00-.2.6l-.2 1.5h-.9l.5-3.2zm-4.2 1a1.6 1.6 0 011-1.3h1c.4 0 .8.2 1 .6.3.3.4.7.4 1.2a1.6 1.6 0 01-.7 1c-.4.4-.8.5-1.3.4a2 2 0 01-.8-.3 1.4 1.4 0 01-.5-.7v-.9zm.9.2l.1.7c.1.2.3.3.5.3a.8.8 0 00.6-.1l.4-.7c0-.3 0-.6-.2-.8a.7.7 0 00-.5-.3.8.8 0 00-.6.2c-.2.1-.3.4-.3.7zm-4.8-3.5l1.6.3c.4 0 .7 0 .9.2.2 0 .4.2.6.4.2.3.3.5.3.8a3.2 3.2 0 01-.3 2 1.9 1.9 0 01-.5.6l-.7.3h-.8l-1.7-.3.6-4.3zm.8.9l-.4 2.8.6.1h.6a.8.8 0 00.4 0c0-.2.2-.3.3-.5l.2-.7v-.8a1 1 0 00-.2-.5.9.9 0 00-.4-.2 4.4 4.4 0 00-.7-.2h-.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dz.svg
new file mode 100644
index 0000000..aa4eca2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/dz.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-dz" viewBox="0 0 640 480">
+  <path fill="#fff" d="M320 0h320v480H320z"/>
+  <path fill="#006233" d="M0 0h320v480H0z"/>
+  <path fill="#d21034" d="M424 180a120 120 0 100 120 96 96 0 110-120m4 60l-108-35.2 67.2 92V183.2l-67.2 92z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ec.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ec.svg
new file mode 100644
index 0000000..42fbef5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ec.svg
@@ -0,0 +1,138 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ec" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffe800" d="M0 0h640v480H0z"/>
+    <path fill="#00148e" d="M0 240h640v240H0z"/>
+    <path fill="#da0010" d="M0 360h640v120H0z"/>
+  </g>
+  <g fill-rule="evenodd">
+    <path d="M269.6 290.8L197 367.3l-1.2-1.6 72.4-76.5 1.2 1.6zm50.4 12.5l-94.8 100-1.6-1.6 94.7-100 1.7 1.6z"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(-.07 -.07 -.1 .1 265 429.6)"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(-.07 -.07 -.1 .1 240.6 390.5)"/>
+  </g>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M301.2 272.8s-17.7 336.6 53.1 336.6S460.6 574 460.6 574l-.8-185-158.6-116.2z" transform="matrix(.45 0 0 .64 72.4 -59.8)"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M344.5 304.2c0 17.7-7.9 269.8 27.5 269.8s88.6-17.7 88.6-17.7l-.8-167.3-115.3-84.8z" transform="matrix(.45 0 0 .64 72.4 -59.8)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M367.5 321.2c0 17.7 4.5 217.4 40 217.4h53.1l-.8-149.6-92.3-67.8z" transform="matrix(.45 0 0 .64 72.4 -59.8)"/>
+  <path fill-rule="evenodd" d="M206.2 116l72.4 76.5 1.3-1.6-72.4-76.5-1.3 1.6z"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M301.2 272.8S265.8 609.4 372 609.4c88.5 0 88.5-53.1 106.2-53.1l-17.7-124-159.4-159.5z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <g stroke="#000">
+    <path fill="none" stroke-width="2.3" d="M269.6 155.2c1.1 0 28.3-94 119-147.2" transform="matrix(.4 -.03 -.05 .35 135.1 147.4)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.14 -.22 .3 .14 175.9 257.4)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.18 -.1 .1 .17 177.6 256.7)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.18 .12 -.13 .33 181 96.4)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.17 -.03 -.03 .33 179.3 159.3)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.06 .25 -.17 .2 228 45.5)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.2 -.2 .2 .24 150.3 241)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.22 -.22 .25 .2 135.6 282.1)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.26 .1 -.2 .32 130.8 147.7)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.15 .2 -.32 .22 178.5 103.3)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.08 .1 -.14 .16 250.7 102.6)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.1 0 -.08 .17 238 136.4)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(0 .14 -.14 .08 287.4 81.1)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.07 .1 -.25 .15 220.7 115.6)"/>
+    <path fill="#005b00" fill-rule="evenodd" stroke-width="1pt" d="M421.4-20.3c0 18.1-4.6 31.7-11.4 45.3-5.6-18.1-9-27.2-9-45.3s6.8-35.1 12.4-48.7c2.3 12.4 8 30.5 8 48.7z" transform="matrix(.13 .22 -.33 .2 207 70.1)"/>
+    <path fill="none" stroke-width="2.4" d="M269.6 155.2c1.1 0 28.3-94 119-147.2" transform="matrix(.35 -.2 .14 .28 111.8 227.8)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.18 -.1 .1 .17 200.3 224.6)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.18 -.1 .1 .17 211.1 218.3)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.2 -.1 .07 .13 166.8 232.7)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.2 -.1 .07 .13 170 231.3)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width="1pt" d="M454.2-169.3c0 4-3.8 7.4-8.5 7.4s-8.5-3.3-8.5-7.4 3.8-7.3 8.5-7.3 8.5 3.3 8.5 7.3z" transform="matrix(.2 -.1 .07 .13 168.1 234.3)"/>
+    <path fill="red" fill-rule="evenodd" stroke-width=".3" d="M252.7 167.3c.4.8 0 1.8-1 2.3s-2 .2-2.4-.7 0-1.8 1-2.3 2-.2 2.3.7z"/>
+    <path fill="red" fill-rule="evenodd" stroke-width=".3" d="M255 164.9c.3.8 0 1.8-1 2.3s-2 .2-2.5-.6 0-1.9 1-2.4 2-.1 2.4.7z"/>
+    <path fill="red" fill-rule="evenodd" stroke-width=".3" d="M255.5 166c.4.8 0 1.9-1 2.3s-2 .2-2.4-.6 0-1.8 1-2.3 2-.2 2.4.6z"/>
+  </g>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M336.6 308.3c0 17.7-35.4 212.6 53.2 265.7 35.4 17.7 88.5-17.7 88.5 0l-17.7-141.7-124-124z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M372 343.7c0 17.7-17.7 159.4 35.5 194.9 35.4 35.4 124 25.8 124 25.8l-70.9-132.1-88.6-88.6z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill-rule="evenodd" d="M183.8 158l94.8 100 1.7-1.6-94.8-99.9-1.6 1.6z"/>
+  <path fill="#cececc" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M460.6 184.3l17.7 35.4v17.7c-.8-1.3 0 17.7-17.7 17.7S443 219.7 443 219.7s-17.7 35.4-17.7 70.9 17.7 53.1 17.7 53.1-2.6-36.7 17.7-35.4c20.4 1.2 17.7 17.7 17.7 17.7v35.4h17.8V219.7l17.7-35.4-27.2-53.2-26 53.1z" transform="matrix(.14 -.14 .1 .1 86.3 192.2)"/>
+  <path fill="#cececc" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M557.8 95.7l-26.3 70.8 17.7 53.2-35.4-17.7 35.4 53.1v35.5H567V255l35.5-53.1-35.5 17.7 17.8-53.2-26.9-70.8z" transform="matrix(.1 -.16 .14 .1 114 183.8)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.4 0 0 .3 43.8 69.8)"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.38 .1 -.15 .3 76 38.2)"/>
+  <path fill="#e10000" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M186.7 151.5c0 1-1 2-2.2 2-1.2 0-2.2-1-2.2-2s1-1.8 2.2-1.8c1.2 0 2.1.8 2.1 1.8zm-3.2 4c0 17.9 10.5 93.9 11.3 95.8 0 2.2-2.3 3.2-3.5.4-3.3-8.7-10.4-80-10.7-96.6-.1-6.9 1.9-7.4 4.2-7.3 1.9.1 4.1 1.9 4.1 4 0 2.4-2.9 4.3-5.4 3.7z"/>
+  <path fill="#0000c4" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(.48 .15 -.2 .48 16.7 31.6)"/>
+  <g fill-rule="evenodd">
+    <path d="M370.4 290.8l72.5 76.5 1.3-1.6-72.5-76.5-1.3 1.6zM320 303.3l94.8 100 1.6-1.6-94.7-100-1.7 1.6z"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(.07 -.07 .1 .1 375 429.6)"/>
+    <path fill="gray" stroke="#000" stroke-width="4.1" d="M478.4 60.2v88.6l17.7 88.6 17.7-88.6V60.2h-35.4z" transform="matrix(.07 -.07 .1 .1 399.4 390.5)"/>
+  </g>
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffdf00" stroke="#000" d="M301.2 272.8s-17.7 336.6 53.1 336.6S460.6 574 460.6 574l-.8-185-158.6-116.2z" transform="matrix(-.45 0 0 .64 567.6 -59.8)"/>
+    <path fill="#0000c4" stroke="#000" d="M344.5 304.2c0 17.7-7.9 269.8 27.5 269.8s88.6-17.7 88.6-17.7l-.8-167.3-115.3-84.8z" transform="matrix(-.45 0 0 .64 567.6 -59.8)"/>
+    <path fill="#e10000" stroke="#000" d="M367.5 321.2c0 17.7 4.5 217.4 40 217.4h53.1l-.8-149.6-92.3-67.8z" transform="matrix(-.45 0 0 .64 567.6 -59.8)"/>
+    <path d="M433.8 116l-72.4 76.5-1.3-1.6 72.4-76.5 1.3 1.6z"/>
+    <g fill="#005b00" stroke="#000">
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.16 -.07 .08 .35 309.5 211)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.2 -.05 .07 .4 291.5 182.6)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.23 .14 -.03 .4 296.5 69.4)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.25 .03 .02 .44 274.4 115)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.18 .17 -.04 .35 330 67)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.23 0 .03 .4 280.6 141.9)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.2 -.07 .07 .38 290.1 196.8)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.2 -.03 .05 .4 292.7 166.8)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.22 .15 -.05 .38 305 65.5)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.24 .05 0 .44 278.9 97.7)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.17 .17 -.06 .33 339 70)"/>
+      <path d="M428.2-17s81.5 90.7 111 154.1c29.4 63.5 54.4 156.3 54.4 156.3s2.2-86-36.3-163C505.2 32.8 425.9-12.5 428.2-17z" transform="matrix(.24 .02 0 .4 276.4 128)"/>
+    </g>
+    <path fill="#ffdf00" stroke="#000" d="M301.2 272.8S265.8 609.4 372 609.4c88.5 0 88.5-53.1 106.2-53.1l-17.7-124-159.4-159.5z" transform="matrix(-.58 0 0 .62 630.4 -10.2)"/>
+    <path fill="#0000c4" stroke="#000" d="M336.6 308.3c0 17.7-35.4 212.6 53.2 265.7 35.4 17.7 88.5-17.7 88.5 0l-17.7-141.7-124-124z" transform="matrix(-.58 0 0 .62 630.4 -10.2)"/>
+    <path fill="#e10000" stroke="#000" d="M372 343.7c0 17.7-17.7 159.4 35.5 194.9 35.4 35.4 124 25.8 124 25.8l-70.9-132.1-88.6-88.6z" transform="matrix(-.58 0 0 .62 630.4 -10.2)"/>
+    <path d="M456.2 158l-94.8 100-1.7-1.6 94.8-99.9 1.7 1.6z"/>
+    <path fill="#cececc" stroke="#000" d="M460.6 184.3l17.7 35.4v17.7c-.8-1.3 0 17.7-17.7 17.7S443 219.7 443 219.7s-17.7 35.4-17.7 70.9 17.7 53.1 17.7 53.1-2.6-36.7 17.7-35.4c20.4 1.2 17.7 17.7 17.7 17.7v35.4h17.8V219.7l17.7-35.4-27.2-53.2-26 53.1z" transform="matrix(-.14 -.14 -.1 .1 553.7 192.2)"/>
+    <path fill="#cececc" stroke="#000" d="M557.8 95.7l-26.3 70.8 17.7 53.2-35.4-17.7 35.4 53.1v35.5H567V255l35.5-53.1-35.5 17.7 17.8-53.2-26.9-70.8z" transform="matrix(-.1 -.16 -.14 .1 526 183.8)"/>
+    <path fill="#e10000" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c0 35.8 20.9 187.8 22.6 191.5.1 4.5-4.8 6.4-7.1.9-6.6-17.4-20.8-160-21.3-193.3-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.4 0 0 .3 596.3 69.8)"/>
+    <path fill="#0000c4" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.38 .1 .15 .3 564 38.2)"/>
+    <path fill="#e10000" stroke="#000" stroke-width=".7" d="M453.4 151.5c0 1 1 2 2.1 2 1.2 0 2.2-1 2.2-2s-1-1.8-2.2-1.8c-1.2 0-2.1.8-2.1 1.8zm3 4a1152 1152 0 01-11.2 95.8c0 2.2 2.3 3.2 3.5.4 3.3-8.7 10.4-80 10.7-96.6.1-6.9-1.9-7.4-4.2-7.3-1.9.1-4.1 1.9-4.1 4 0 2.4 2.9 4.3 5.4 3.7z"/>
+    <path fill="#0000c4" stroke="#000" d="M422.5 137c0 2-2 3.7-4.3 3.7s-4.4-1.7-4.4-3.7 2-3.8 4.4-3.8 4.3 1.7 4.3 3.8zm-6.2 7.9c31.5 61.4 48.7 166.7 50.4 170.5.1 4.4-4.8 6.4-7.1.8-2.5-3.3-12.7-100.2-49.1-172.2-.3-13.7 3.7-14.8 8.3-14.5 3.7.2 8.3 3.7 8.3 7.9 0 5-5.8 8.7-10.8 7.5z" transform="matrix(-.48 .15 .2 .48 623.3 31.6)"/>
+  </g>
+  <g fill-rule="evenodd" stroke="#000" stroke-width="1pt">
+    <path fill="#e10000" d="M478.4 698a53.3 53.3 0 0053.1 0V556.3h-35.4c17.7 53.1 17.7 106.3-17.8 141.7z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+    <path fill="#0000c4" d="M513.8 609.5c0 88.5-42.5 108.2-42.5 126 17.7 0 29.5-8.3 42.5-19.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(.35 0 0 .7 123.5 -90)"/>
+    <path fill="#0000c4" d="M478.4 609.5c-.9 51.7-44.8 99.6-36.5 110.2 9.4 9.5 36.5-21.7 71.9-4 17.7-17.7 19.4-107.6 17.7-106.3h-53.1z" transform="matrix(.35 0 0 .7 123.5 -90)"/>
+    <path fill="#ffdf00" d="M513.8 609.5c0 88.5-40.7 94.4-40.7 118 17.7 0 40.6-12.9 40.7-11.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(.35 0 0 .46 112.5 51)"/>
+    <path fill="#ffdf00" d="M478.4 609.5c-.9 51.7-43.8 95.7-35.5 106.3 9.5 9.4 35.5-17.8 70.9 0 17.7-17.8 19.4-107.7 17.7-106.3h-53.1z" transform="matrix(.35 0 0 .46 112.5 51)"/>
+    <path fill="#e10000" d="M478.4 698a53.3 53.3 0 0053.1 0V556.3h-35.4c17.7 53.1 17.7 106.3-17.8 141.7z" transform="matrix(-.58 0 0 .62 630.4 -10.2)"/>
+    <path fill="#0000c4" d="M513.8 609.5c0 88.5-42.5 108.2-42.5 126 17.7 0 29.5-8.3 42.5-19.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(-.35 0 0 .7 516.5 -90)"/>
+    <path fill="#0000c4" d="M478.4 609.5c-.9 51.7-44.8 99.6-36.5 110.2 9.4 9.5 36.5-21.7 71.9-4 17.7-17.7 19.4-107.6 17.7-106.3h-53.1z" transform="matrix(-.35 0 0 .7 516.5 -90)"/>
+    <path fill="#ffdf00" d="M513.8 609.5c0 88.5-40.7 94.4-40.7 118 17.7 0 40.6-12.9 40.7-11.7 17.7-17.8 19.4-107.7 17.7-106.3h-17.7z" transform="matrix(-.35 0 0 .46 527.5 51)"/>
+    <path fill="#ffdf00" d="M478.4 609.5c-.9 51.7-43.8 95.7-35.5 106.3 9.5 9.4 35.5-17.8 70.9 0 17.7-17.8 19.4-107.7 17.7-106.3h-53.1z" transform="matrix(-.35 0 0 .46 527.5 51)"/>
+  </g>
+  <g fill-rule="evenodd" stroke="#000">
+    <path fill="#908f8a" stroke-width="4.5" d="M198.6 78l-89.7 35.4 89.7 35.4 44.8-17.7 22.4 17.7 22.4 35.4 22.5-35.4 22.4-17.7H1535V95.7H333l-22.4-17.8c0-17.7 4.7-35.4 22.5-35.4h89.6c0-17.7-44.8-53.1-134.5-53.1-89.6 0-134.5 35.4-134.5 53.1h89.7c17.7 0 22.4 17.7 22.4 35.5l-22.4 17.7-44.9-17.8z" transform="matrix(.12 0 0 .22 217.8 324.4)"/>
+    <path fill="#b74d00" stroke-width="1.8" d="M204.3 95.7H541v17.7H204.4zm0-17.8H541v17.8H204.4zm0-17.7H541V78H204.4zm0-17.7H541v17.7H204.4zm0-17.7H541v17.7H204.4zm0-17.8H541v17.8H204.4zm0-17.6H541V7H204.4z" transform="matrix(.28 0 0 .27 216 334.6)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.25 0 0 .27 171.9 315.2)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.25 0 0 -.27 171.9 382.2)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.28 0 0 .27 159.6 315.2)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.25 0 0 .27 216.2 315.2)"/>
+    <path fill="#908f8a" stroke-width="3.3" d="M423.2 60.2l137.8 124h19.7L443 60.3h-19.7z" transform="matrix(.25 0 0 -.27 216.2 382.2)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.28 0 0 .27 238.4 315.2)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.28 0 0 .27 204 315.2)"/>
+    <path fill="#908f8a" stroke-width="3.1" d="M425.2 60.2v124h17.7v-124h-17.7z" transform="matrix(.28 0 0 .27 194 315.2)"/>
+  </g>
+  <g fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt">
+    <path d="M655.5 396.9c0 88-55.6 159.4-124 159.4s-124-71.4-124-159.4 55.5-159.5 124-159.5 124 71.4 124 159.4zm-17.7 0c0 78.2-47.6 141.7-106.3 141.7-58.7 0-106.3-63.5-106.3-141.7 0-78.3 47.6-141.8 106.3-141.8 58.7 0 106.3 63.5 106.3 141.8z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+    <path d="M579.8 250c-14.9-8.1-31.2-12.6-48.3-12.6s-33.4 4.5-48.3 12.5l7 16.4a82.8 82.8 0 0182.7 0l6.9-16.4z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+    <path d="M579.8 250c-14.9-8.1-31.2-12.6-48.3-12.6s-33.4 4.5-48.3 12.5l7 16.4a82.8 82.8 0 0182.7 0l6.9-16.4z" transform="matrix(.58 0 0 -.62 9.8 479.3)"/>
+  </g>
+  <path fill="#a7cfff" fill-rule="evenodd" d="M379.6 235.9c0 48.5-27.7 87.8-61.7 87.8s-61.6-39.3-61.6-87.8 27.6-88 61.6-88 61.7 39.4 61.7 88z"/>
+  <path fill="#afff7b" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M637.8 396.9c1.1 26.6-4.6 39.6-11.9 67.3-1.9 3-11-6.5-16.4-11.2s-7.8 4.2-14.6-3c-6.7-7.4-11 2-16-4.2s-51.3-7-51.3-7.6c4.6-2.2 28.2.2 24.4-11.1-4.3-11.8-31-.4-34.6-15.4-2.5-15-53.6-15.6-57.3-19.2 1.5 5.6 39.8 8 38.9 22.5-.9 6-37.7 7.7-41.3 12.7-3 6.3 29-1.7 30.1 6 0 3.2-4.7 0-21.3 5-8.4 2.5 15.4 10.3 6.4 14.6-9 4.3-28.3 6.2-27.5 8 3 9 44.7 19.6 40.6 21.1-14.8 6.6-22.6 10.9-29.7 14.7a167.9 167.9 0 01-31.1-100.2c31.7-11.4 25-13.8 83.6-13.8s78 2.3 129 13.8z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M637.8 396.9c-8 0-16.4 3.4-25 3.4-8.7 0-17.5-3.5-26.5-3.5s-19.3 4.6-28.5 4.6c-9.3 0-17.4-4.5-26.7-4.5s-18.6 3.4-27.8 3.4-18.3-3.5-27.2-3.5-17.7 3.5-26.2 3.5-16.8-3.5-24.7-3.5c0-19.5 3-38.1 8.4-55.1 27 2 11-15.7 27-15.7a33 33 0 0125.3 9.8c2.4 0 14.4-11.4 27.9-9.8 13.4 1.6 8.5 27.3 26.4 28.6 9 6.8 14.3 11.1 26.7 13.9 17.7 1.6 68.4-2.5 68.7-.2a188.2 188.2 0 012.2 28.6z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M549.9 474c0-5.7 13.5-9.5 13.5-18.6s-12-9.3-12.4-17.8c-.2-3.5 10.3-7 14.9-7.4s8.5 7.4 8.5 9.1-4.7-4.2-8.6-4.3-12.3.6-12.3 2.3c0 3.4 14.8 7.6 13.7 19-1.1 11.2-12.7 14.6-12.7 18s5 12.8 5 12.8-9.7-7.5-9.7-13.2z" transform="matrix(.2 0 0 .48 217.2 59.5)"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M549.9 474c0-5.7 13.5-9.5 13.5-18.6s-12-9.3-12.4-17.8c-1-4 11.8-6.6 16.4-6.9s10 8 10 9.6-5.4-5.2-9.3-5.3-14.6.6-14.6 2.3c0 3.4 14.8 7.6 13.7 19-1.1 11.2-12.7 14.6-12.7 18s5 12.8 5 12.8-9.7-7.5-9.7-13.2z" transform="matrix(-.2 0 0 .48 445.8 59.1)"/>
+  <path fill-rule="evenodd" d="M333 264.9c0 1.3-.7 2.4-1.5 2.4s-1.4-1.1-1.4-2.5.6-2.4 1.4-2.4c.8 0 1.5 1.1 1.5 2.5zm17 9h.4v19.5h-.5zm4.1-1.6h.5V292h-.5z"/>
+  <path fill-rule="evenodd" d="M352.6 281.2v-.5l4 .7v.5z"/>
+  <path fill="#b74d00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M497.3 478s26 11.4 31.7 18.2c5.6 6.8 3.4 6.8 3.4 6.8l57.7 2.3c0-3.4 10.2-3.4 12.5-11.4 2.3-7.9 2.3-10.2 2.3-10.2l-18.1 5.7 1-10.2H572l-2.3 10.2-34-1.1L538 461l-6.8 1.1-1 26c-1.2 0-31.8-7.9-33-10.1z" transform="matrix(.58 0 0 .62 7 -9.5)"/>
+  <path fill="#fede00" fill-rule="evenodd" stroke="#fede00" stroke-width="1pt" d="M440.5 316.3s37.7-11.2 92.1-10.4 92.1 12.8 91.3 12.8-10.4-18.4-10.4-18.4-38.4-10.5-81.7-11.3c-43.2-.8-80.9 8-80 8.8l-11.3 18.5z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill="#38a9f9" fill-rule="evenodd" d="M306 169.8l13.6-.2.2 7.9-13.6.3zm-31.2 4.3L270 182l16.2-2-1.3-7.7-10.1 2zm13.7-3l13.6-1.1.6 7.8-13.5 1.2zm48.9-.7l-13.5-1-.5 8 13.5.8zm29.2 5l4.9 9.6-14.6-3.6 1.6-7.7 8 1.6zm-11.8-3l-13.4-1.7-1 7.8 13.5 1.8z"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M532.6 323.5l-2.5-13.5-7.6 11.5 2.8-13.5-11.3 7.7 7.6-11.3-13.4 2.8 11.5-7.6-13.5-2.5 13.5-2.6-11.5-7.6 13.4 2.8-7.7-11.3 11.4 7.7-2.8-13.5 7.6 11.5 2.5-13.5 2.6 13.5 7.5-11.5-2.7 13.5 11.3-7.7-7.7 11.3 13.5-2.8-11.5 7.6 13.5 2.6-13.5 2.5 11.5 7.6-13.5-2.8 7.7 11.3L540 308l2.8 13.5-7.6-11.5z" transform="matrix(.58 0 0 .62 9.6 -10.2)"/>
+  <path fill="#ffdf00" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M547 293.9c0 9.3-6.6 16.8-14.8 16.8s-14.8-7.5-14.8-16.8S524 277 532.2 277s14.8 7.6 14.8 17z" transform="matrix(.57 0 0 .5 18.3 21.8)"/>
+  <path fill-rule="evenodd" d="M320.7 170.6c0 .5-1.3 1-2.8 1s-2.8-.5-2.8-1 1.2-1 2.8-1 2.8.4 2.8 1zm6 0c0 .5-.9 1-2 1s-2.2-.5-2.2-1c0-.6 1-1 2.1-1s2.1.4 2.1 1z"/>
+  <path fill="none" stroke="#000" stroke-width="1pt" d="M529.4 297.9l.8.8c-1.9-2-1-1.2 1.6 3.2 2.4-.5 3.1-1.4 4.8-2.4" transform="matrix(.56 -.18 .17 .6 -26.7 90.6)"/>
+  <path fill="none" stroke="#000" stroke-width="1pt" d="M527.8 304.3l.8.8c-1.9-2-1-1 3.2 1.6 4 .5 8.1-1.2 10.5-4" transform="matrix(.58 0 0 .62 8.7 -10.2)"/>
+  <path fill="#b7e1ff" fill-rule="evenodd" d="M281.4 194.8s1 8-5.1 18c-6 9.9-5.1 6.4-5.1 6.4s2.8 5.5 2.3 5.5-4.7-5-4.7-5l-5 5.5s4.6-8.5 4.1-8.5-1.4-3-1.4-3l3.7-1.5s5.6-10.4 5.6-9.9-16.7 11.4-16.7 11.4l22.3-18.8zm3.7 3c-.5 0 2.3 8 4.7 12 2.3 4 2.3 8.9 2.3 8.9l7.9 4-10.2-15.4 6.5 2.4-11.2-11.9zm0 20.9s5.6 6 6 8 .5 6.4.5 6.4l-2.3-5-3.3 4.5s2.4-7 1.9-7.5-3.7 2.5-3.7 2.5 1.4-4 1.4-4.4 0-3-.5-4.5zm-27.9 13.9c1.9-1.5 5.6-2.5 5.6-2.5s-2.3 4-2.8 4-1.8 0-2.8-1.5zm64.1-21.8s12.1 7.4 12.1 7.9-7.9-3.5-7.9-3.5l-4.2-4.4zm-21.8-15.5c1 .5 17.7 14.4 17.2 14.4s-7.4-4-7.4-3.4v3.4l-3.8-7.9-.9 3-5-9.5zm4.2 22.4l4.6 9.4 4.7-1s-8.8-8.4-9.3-8.4zm14.4-6l.5 9s2.7 2.5 2.7 2-2.7-10.5-3.2-11z"/>
+  <path fill="#984000" fill-rule="evenodd" d="M182.6 89.5s21-11.6 44.9-20.2a303.8 303.8 0 0154.2-14.4c7 0 19.2 17.8 21.2 17.8s10.1-5 20.3-5 16.1 8 18.2 8h18.2c2 0-6.1-19.8 0-18.8 3 .5 28.8 4.5 52.8 12.2 24 7.8 58 21.6 58 21.6S414.9 98 400 95.9c-2 1 0 13-3 7.7-4.6-1-21.7-3.7-24.7-3.7s-8.7 3.4-16.8 5.4c-8 2-18.2 5-18.2 5l13.2 20.7-16.2 8s-10.1-23.8-14.2-23.8-6 16.8-11.1 15.8c-5-1-7-15.8-11.1-19.8-4-3.9-25.4-5.4-33.5-7.3-8-2-21.1-3.5-28.2-5.5-7-2-14.2 5-17.2 5s4-6 1-7-5 3-7 3-23.3-4-25.3-5 5-4.9 3-4.9h-8.1z"/>
+  <path fill="gray" fill-rule="evenodd" stroke="#772600" stroke-width="3.7" d="M463-65c0 21.2-20.6 38.4-45.9 38.4S371.3-43.8 371.3-65s20.5-38.3 45.8-38.3S463-86.1 463-65z" transform="matrix(.22 0 0 .26 231.6 96.5)"/>
+  <path fill="#984000" fill-rule="evenodd" stroke="#772600" stroke-width="5.3" d="M284.7-60c6.7-6.6 15-16.6 36.7-16.6 5-1.7 5-11.7 16.6-11.7 11.7 0 8.3 10 16.7 13.4 8.3 3.3 76.6-3.4 76.6-3.4s6.6 5 6.6 11.7-5 11.6-6.6 11.6-68.3-5-73.3-3.3c-5 1.7-8.3 3.3-20 3.3-11.6 0-15-11.6-23.3-11.6s-16.6-1.7-30 6.7z" transform="matrix(.27 0 0 .32 205.4 100.7)"/>
+  <path fill="none" stroke="#772600" stroke-width="3.5" d="M487.9-76.6h26.6c9.6.1 12.9 3 21.7 3.3h23.3c8.5-.3 13-2.3 21.6-3.3 14.5-.2 9.6-1.3 6.7-10-2.6-6.5-3-9.6-6.7-13.3-1.4-8-4.6-10.8-5-20-1.5-7-4.3-11.7-1.6-20 3.8 5.7 5.3 8 15 8.4 10 0 13.9-.3 20 3.3 4.6 4.9 10.8 3.3 20 3.3 7.6 1.4 8.9 5.3 14.9 8.3 7.1 4 11.7 5 21.6 5 8 1.5 15 2.6 20 5 4.3 5.1 11 6.4 20 6.7 5 0 9-.5 13.3-1.7 7.7.4 15.5 0 25 0 6.2 7.2 7.6 9.9 18.3 10 7.4 5.2 13.6 6 20 8.3h25c9 .7 11.8 4.4 20 6.7a200.9 200.9 0 0021.6 8.3 108 108 0 0021.7 1.7c6.1 3.2 13.6 3.4 18.3 6.6 6.9 1.5 16.3 3.3 21.6 5 8.8 1.2 12.2 4 20 5 6.7 2-2.2 3.6-6.7 5-9.8-.3-10.5-4-20-5-5-2.9-12.6-2.5-20-5h-1.6c6.6 4 13 6.5 10 13.4-8.5 0-15.4-1.1-23.3-1.7-8.4-1.6-12.2-3.3-21.6-3.3 9.4-2.3 11.8.2 18.3 3.3 2.4 8-2.8 5-11.7 5-7.6-2.7-12.2-6-21.6-6.7h-20c9.9.4 12 4.1 18.3 8.4.5 2.6-.1 2.4-5 3.3-5.2-4.5-11.9-6-20-8.3-7.9-.3-16.2-1-23.3-3.4-4.9-.3-4.1-6.1 6.7 3.4 6.5 3.8 8.8 7 8.3 10-8.6-2.2-12.8-5.6-18.3-8.4a61.3 61.3 0 00-23.3-3.3c-8.6-2.3.9-3.6 6.6 5 12.4 8.8-1.6 5-6.6 3.3-7.5-2.1-15.3-5.2-21.7-6.6-5-1.5-9.4-2.9-15-3.4 8.7.8 11.6 3.9 15 10 8.8 6-.4 3.1-8.3 1.7-5-4.4-11.5-6.7-15-11.7-8.3-4.1-8.6-9-3.3 1.7 1.3 3.4 1 10.8 1.6 11.7-6.1-6.7-4.8-8.4-11.6-8.4-4.7-3.2-11.5-5.7-15-10-6.4-.6-6.8-2.9-13.3-5 5.3 6.3 12.4 12.5 16.6 18.4 7.6 4.2 9.7 8 15 11.6 2.1 3.7 8 6.7 1.7 1.7-7.2-7-12.5-8.7-23.3-13.3-6.2-5-8.4-7-15-11.7-9-2.9-5.5-4.5 0 5 6.3 5.8 11.1 12.2 16.6 16.7a67.8 67.8 0 0015 13.3c1.5 2.2 6 2.6 0 3.3-5-4.6-12.4-7.5-18.3-11.7-8.3-2.3-12.2-6.6-18.3-11.6-4-5.9-10.4-10.4-15-15-9.6-3.8 1.9 3.6 5 8.3 2.1 6.1 4.8 11 6.6 16.7 2.8 5.5-8.4-1.3-11.6-3.3a57 57 0 00-21.7-8.4 298 298 0 00-20-3.3c-7.5-2 4.1 4.8 8.4 11.7 8.4 7.9-8.3 1.4-13.3 0a125 125 0 00-25-1.7c-10.7.6-3 2 0 6.6 3.3 2.6 5.6 8 5 10-7-1-13-3-21.7-3.3-7 2.3-15.3 1.7-23.3 1.7-.3 4.2 1.5.6 5 5 5.8 2.3 9.6 5.1 8.4 8.3h-48.3c-5.3 1.4 1.1.7 5 6.7-2.2 5.4-5 3.3-11.7 3.3-4.5-1.8-13.6-2.6-18.3-5-4.7 0-4.3-1.2-8.3-1.7 14 10 7 7.5 15 15 1.3.5 4.5 1.7 1.6 1.7M371.3 73.3c-1 0-3.2-5.4-6.6-10-2.4-6-5.4-2.6-8.4-11.7.4-9.4.7-11 0-20-6.8-4.8-9.7-6.2-15-15-8.4-7 1.3-19 2.9-27.8-7.4-1.6-11 11.5-22.3 16.2-8.2 5.5-1-11.4-5-21.2-2.7-13.9-10.8 7-13.8 12.9-5.5 3.7-7.2 8.5-15 1.6 0-5.1 4.9-19.5 2.8-22.3-7.8 3.9-18 15.5-26.1 17.3-8.2-1.7 1.7-14.8 1.7-24.5-3-1-14.7 25.8-19.5 26s-2.7-26-5-25.4c-3.5 5-10.6 15.4-15.5 19-9.5-1.3 1.4-17.5 2.8-23.5 1.6-7.2-8.9 13.8-14.5 15.1-4.1 3.6-12.2 6-15 6.7 3.2-6.2 19-18.7 18-22.3-9.3.3-23.4 12.5-31.3 14-5.2 0-12.4 1.7-13.3 1.6.4-8 19.4-14.6 22.4-19.5-9.3 1.5-27.2 9.7-32.4 16.2-6.2 1.3-14 3-20 0 .9-7.5 14.9-22 18-26.8-8.5 3.7-12.7 6.6-21.7 8.3-1.7 1.7-6.5 5.3-5 1.7 2.7-7 6.7-10 10-15-7.5 1.4-10.3 5.7-18.3 10-5.1.2-19.7 14.9-24.6 15.1a69.1 69.1 0 01-28.3 13.3c-7.6 1.4-11.3 3-15 6.7 3.8-6.7 9.6-13 15-16.6a29.8 29.8 0 0115-13.4c1.9-2.3 7.1-2.9 1.6-3.3-4.7 4.2-12.7 9-16.6 11.7-5.1 3.2-11 6.4-13.4 5 2.7-7.2 7.5-9 11.7-15 8.8-5.6 0-2-6.7 0-4.3 3.8-12 6.7-18.3 10-7 1.8-11.7 6-20 8.3 0 2.4 2.4-4.3 3.4-6.7 6.8-7.4 8.6-9.5 16.6-11.6 2-2.9 4.4-1.7-1.6-1.7-4.6 4-10.8 6.2-16.7 10-5.9 1.3-13.6 1.7-21.6 1.7-10.4 1.2-9.5 2 0-3.4 5.3-5 9.7-3.7 10-10-6.3 4.6-14 8-21.7 11.7-6.4.2-8.1 1.7-15 1.7 3.3-3.4 5.3-7.7 10-10 7-7.7-4.4-1.5-6.7 0h-25c-4.4 5.6-.2 0 3.4-3.4 4.3-2.2 8.8-5.1 8.3-6.6-5 4.3-10.7 6.3-15 10-4.6 1.4-10 2-10 3.3 3.7-5.3 9.6-8.6 13.4-13.3 5.6-1.2 10.4-3 11.6-5h-23.3 16.6c8.5 0 15.7-.8 23.4-1.7 13.2-2.2-1.2-3.3-8.4-3.3-1.3-2.6 4.2-4 10-5C-6.7-69-.4-71.1 5-73.3a45.2 45.2 0 0013.3-6.6c-5 .2-5 1.4-10 1.6 7.5-.5 12.8-1.6 21.7-1.6a239 239 0 0021.6-8.3c3-3.6 4.2-3.4-3.3-3.4 6.7-2.1 16.2-3.2 21.6-5a94 94 0 0020-6.6c4.9-3.3 7.7-7.2 13.3-10 6.5 4.4 6.6 5 18.3 5 9.4-.1 15.2-2.4 20-6.7 7.2-2 8.5-5.4 16.7-6.6a134 134 0 0023.3 1.6c8-2.1 15.7-6 21.6-10 5.1-2.5 11.2-6.1 16.7-8.3 6 3.1 10.8 5.6 18.3 6.7 7.7-1.2 11.8-5 18.3-6.7a28 28 0 0115-8.3c9.7-4.8 9 1.5 13.3 6.6 5 5.2 11.4 2.7 18.3 5 3.9 6 6.7 10 11.7 13.3 3.9 4.8 8.5 6 16.7 6.7 3 4 .6 6.8 6.6 8.3 2.4 2.6 6.5 3.6 10 5" transform="matrix(.27 0 0 .32 205.4 104.9)"/>
+  <path fill="none" stroke="#782600" stroke-width="3.1" d="M468.7 30.8v.8c0-2.3 0-1 1.7 3.4.6 3.6-.8 3.2-2.5 5.8-.3 3.7-.8 6.4-.8 10.8-.6 3.6-2.6 7-4.2 10-1.6 3.1-8.5 4.9-8.3 9.2-4 1.1-4.1-1.5-4.2-5.9-2.4-2.7-3.2-6.4-5-10-1-3.4-3.4-6-5-10-2.4-3.7-4.5-4.8-6.6-9.1-.9-2-.7-4.6-2.5-5.8-2.7-3.5-4.5-4-9.2-4.2-3.6.8-5 2.4-8.3 3.3-2.6.9-7.6.6-10.8 1.7-.8 1.3 1.6 2 2.5 5-2.2 1.8-3 4.9-4.2 7.5-2 2.5-3.3 3.7-4.2 7.5 1.4 2.3.2 5.4-1.6 7.5-.6 3.8-2.5 5.9-3.4 9.1-2.6 1.9-3.6 3.6-5.8 6.7-1.9 2.7-3.6 2.5-8.3 2.5-3.7-1-4.2-3-7.5-4.2-.3-1-.6-1.3-1.7-1.6" transform="matrix(.27 0 0 .32 205.4 104.9)"/>
+  <path fill="#812e00" fill-rule="evenodd" d="M307.6 125.5s-.4 5-3.6 8.3-9.8 7.1-9.8 7.1 8.9-4.2 9.8-3.3c1 1-5.7 8.3-5.7 8.3s8.7-7.7 9.8-7.7 3.6 7.5 4.6 7.3c.9-.2-2-9.5-1.6-11 .4-1.4 0-9.3 0-9.3l-3.4.3zm20.5-.6s-.4 5.3-3.6 8.8-9.8 7.6-9.8 7.6 8.9-4.5 9.8-3.5c1 1-5.7 8.8-5.7 8.8s8.7-8.2 9.8-8.2 3.6 8 4.6 7.8c.9-.2-2-10.2-1.6-11.7.4-1.6 0-10 0-10l-3.5.4zm-28.7-48c0 .9-1 1.7-2.1 1.7s-2.2-.8-2.2-1.8 1-1.8 2.2-1.8 2.1.8 2.1 1.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ee.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ee.svg
new file mode 100644
index 0000000..aa917bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ee.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ee" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <rect width="640" height="477.9" rx="0" ry="0"/>
+    <rect width="640" height="159.3" y="320.7" fill="#fff" rx="0" ry="0"/>
+    <path fill="#1291ff" d="M0 0h640v159.3H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eg.svg
new file mode 100644
index 0000000..a755cd7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eg.svg
@@ -0,0 +1,38 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-eg" viewBox="0 0 640 480">
+  <path d="M0 320h640v160H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path fill="#ce1126" d="M0 0h640v160H0z"/>
+  <g fill="#fff" stroke="#c09300" transform="matrix(.8 0 0 .8 -40 0)">
+    <path stroke-linejoin="round" stroke-width="1.3" d="M450.8 302.4l68.5 63.6-4.9-115.5c-.7-17.5-15.9-13.5-27-7.2-11.1 7.2-24 7.2-37.4 2.5-13.5 4.7-26.3 4.7-37.4-2.5-11-6.3-26.3-10.3-27 7.2L380.7 366l70.1-63.6z"/>
+    <path id="a" fill="#c09300" stroke="none" d="M393.5 246.5l-4.8 112.3-8 7.2 4.9-115.5a24 24 0 017.9-4zm9.6 8l-4 94-8 8.2 4.8-108.5c1.6 1.6 6.3 5.5 7.2 6.3zm8.7 7.2l-3.1 78.4-6.5 6.3 4-89.4c1.6 1.5 4.8 3.8 5.6 4.7zm9.5 4l-3.1 66.8-6.3 5.1 3.1-74.3c1.6.7 4.7 2.4 6.3 2.4zm8.8 0l-2.3 55.7-6.5 6.3 2.5-61.3c1.5 0 5.6 0 6.3-.7z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 900 0)" xlink:href="#a"/>
+    <path fill="#c09300" stroke-width="1.1" d="M453.2 315l9.6 43.8-3.2 3.2-3.3-2.5-5.4-39 2.3 39-3.2 4-3.1-4 2.3-39-5.5 39-3.3 2.5-3.2-3.2 9.6-43.7h6.4z"/>
+    <g id="b" fill="none" stroke-linejoin="round" stroke-width="1.3">
+      <path fill="#fff" stroke-width="1.2" d="M428.5 295.8l-19.1 67.7 26.3 4 11.1-50.9-18.3-20.8z"/>
+      <path d="M422.2 319l2.3 5.5 12.4-11.8"/>
+      <path d="M430.8 305l2.6 24.3 7.9-10.4m-3.2 4l4.3 15m1.7-5.5l-8.7 13.2m2.7 13.2l-2.8-13.2-2.4-13.4-5.9 7.9-2.5-9.1-8.2 8.4 4.1 15.2 5.8-9.4 3.1 9.6 6-9.2"/>
+      <path d="M415 362l5.3-7.5 3.4 11.5 4.8-8 3.1 9.6"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 900 0)" xlink:href="#b"/>
+    <g stroke-linecap="round" stroke-linejoin="round" stroke-width="1.3">
+      <path stroke-width="2.4" d="M450 393.8c20 0 39-1.6 50.2-4.7 4.7-.9 4.7-3.3 4.7-6.5 4.8-1.6 2.4-7.2 5.7-7.2-3.4 1-4-5.5-8-4.7 0-5.6-5.7-6.3-10.4-4.7-9.5 3.1-26.3 3.9-42.2 3.9-16-.8-32.6-.8-42.2-4-4.7-1.5-10.3-.8-10.3 4.8-4-.8-4.7 5.6-8 4.7 3.3 0 .8 5.7 5.6 7.2 0 3.2 0 5.6 4.8 6.5 11 3.1 30.2 4.7 50.1 4.7z"/>
+      <path d="M422.9 363.5c6.4.9 13.6 1.6 19.2.9 3.2 0 5.5 5.5-.9 6.3-5.5.7-14.3 0-19-.8a231 231 0 01-18.4-4c-5.6-2.4-1.6-7 1.6-6.4a105.3 105.3 0 0017.5 4zm54.2 0c-6.4.9-13.6 1.6-19 .9-3.4 0-5.7 5.5.7 6.3 5.6.7 14.3 0 19-.8 4-.8 12.8-2.3 18.4-4 5.6-2.4 1.6-7-1.6-6.4a105.2 105.2 0 01-17.5 4z"/>
+      <path d="M403 360.4c-4.8-.9-7 4.7-5.5 7.9.7-1.6 4-1.6 4.7-3.2.9-2.4-.7-2.4.9-4.7zm19.2 14.7c0-3.2 3.1-2.8 3.1-6 0-1.5-.8-4-2.4-4a3.4 3.4 0 00-3.2 3.2c-.7 3.1 2.5 3.6 2.5 6.8zm22.7-9.1c4.7 0 4.2 6.3 2 9.5 0-2.3-4-3.2-4-4.8 0-2.4 3.6-2.4 2-4.7zm52-5.6c4.9-.9 7.2 4.7 5.6 7.9-.7-1.6-4-1.6-4.7-3.2-.9-2.4.7-2.4-.9-4.7zM478 375c0-3.2-3.2-2.8-3.2-6 0-1.5.8-4 2.4-4a3.4 3.4 0 013.2 3.2c.7 3.1-2.5 3.6-2.5 6.8zm-23-9c-4.7 0-4.2 6.3-2 9.5 0-2.3 4-3.2 4-4.8 0-2.4-3.6-2.4-2-4.7z"/>
+      <path stroke-width=".9" d="M404.7 362c1.6 0 4 .7 4.7 1.6l-4.7-1.6zm7.9 2.4c.8 0 4 .7 5.5 1.6l-5.5-1.6zm28.6 3.2c-1.5 0-4.7 0-5.5.7l5.5-.8zm-8.7 0c-.9-.9-4-.9-5.6 0h5.6zm62.8-5.6a8 8 0 00-4.7 1.6l4.7-1.6zm-7.8 2.4c-1 0-4 .7-5.6 1.6l5.6-1.6zm-28.7 3.2c1.5 0 4.7 0 5.6.7l-5.6-.8zm8.7 0c.9-.9 4-.9 5.6 0h-5.6z"/>
+      <g fill="#c09300" stroke="none">
+        <path d="M403.3 374.6c-.5-.1-.8-.6-.6-1 .1-.7.6-1 1-.8.4 0 .9.6.9.8l-.4.7-.2.1c0 .2-.4.2-.7.2zm55 3.9c-.2 0-.6-.5-.6-.7 0-.4.6-1 1-1l.8.4c.3.3.3.9-.1 1.2-.2.2-.8.2-1.1 0zm.3 2.5c-.4-.2-.5-.4-.6-.8 0-.5 0-.6.5-.9l.4-.2.4.2c.4.2.7.4.7.8 0 .3-.3.6-.7.8-.3.2-.4.2-.7 0z"/>
+        <path d="M407.8 370c-.4 0-.9.4-1.2.6-.6.1-1.4.5-2 0-.6-.1-1.4 0-1.5.8.1.7 1 1 1.6.6.4-.5 1.5-.9 1.7 0-.5.8-.4 1.7-.8 2.4 0 .5-.3.9-.5 1.3-.5 0-1 0-1.4.3a2 2 0 00-1.6.8c-.4.6-.8 1.2-.9 2 .1.6 1 .8 1.6.9l2 .6 3.2.9c1.6.5 3.2.7 4.8 1.1l.5.1c.7.2 1-.5 1-1l1-3.6c.2-.5.5-1.5-.4-1.3-.5.3-1 .8-1.6.8-.9 0-.4 1 0 1.3 0 .6-.2 1.3-.5 1.8-.6.3-1.2 0-1.8-.2-.5 0-1.7-.3-1.2-1l.5-1.8c.3-.6.3-1.3.5-2-.4-.7-1 .3-1.5.4-.4.2-1.6.3-1 1 .6.4.2 1.1 0 1.7 0 .7-.8 1-1.4.7-.6 0-1.5-.5-1-1.1l.5-1.8.7-2c0-.7.3-1.2.6-1.8 0-.7.5-1.3.5-2 0-.3-.2-.4-.4-.4zm-3.7 7.3a.3.3 0 01.3 0c.2.2.2.4 0 .6l-.3.2c-.5 0-.6-.1-.6-.3 0-.1 0-.2.3-.3a1.4 1.4 0 01.4-.2zm-1 5c-.5-.4-.4-.7.3-1.3.4-.2.5-.2.9.1.6.5.6.8 0 1.3-.2.2-.3.2-.5.2-.3 0-.4 0-.7-.2zm3 1a.9.9 0 01-.6-1.1c.2-.4.3-.5.9-.5.7 0 .8.1.9.7 0 .4 0 .5-.3.7a1 1 0 01-.8.2zm89.2 0c-.2-.1-.3-.2-.3-.5 0-.4.2-.7.8-.9.6-.3 1-.3 1.2.2.3.6.3.8-.1 1.2-.2.3-.3.3-.8.3s-.6 0-.8-.2zm-85 1.2c-.4 0-.6-.4-.6-.8 0-.3 0-.4.2-.6l.6-.2.6.1c.5.4.6.8.3 1.2-.3.4-.6.4-1.2.3zm21.8 1l-.2-.3c0-.6 0-1.1.2-1.7.1-.5 0-1 .2-1.5l.4-2.8c0-.5 0-1 .2-1.4.1-.8 0-1.5.2-2.2 0-.3.3-1 .6-.6.4.6.9 1 1.4 1.5.4.3 0 .7-.3.8-.4.1-.5.6-.5 1l-.2 1.2c0 .7 0 1.3-.2 2l-.1 1.8-.2 1.2c0 .4 0 .9-.4 1.1-.3.2-.8.2-1-.1zm29.7-9.8l-1.3 1.2c-.6.5.5.7.6 1.1.2.6.2 1.2.2 1.8.2.6.3 1.1.2 1.7 0 .7-.8.5-1.2.9-.5.2-.7.7-1 1a4.2 4.2 0 00-.4 1.6c0 .5-.3 1 0 1.4l.1.2h.5l1.5-.1c1.2-.2 2.5-.2 3.7-.3l2.2-.2c.6.1.9-.5.9-1-.4-.7-.1-1.4-.4-2-.2-.8-.1-1.5-.2-2.2 0-.6-.7-.8-1-.4-.4.4-1 .5-1.2.9-.3.6.6.6.8 1l.1 1.5c.1.6-.5.6-1 .7-.5.2-1.2.3-1.5-.3-.2-.5-.2-1-.2-1.5 0-1-.3-1.8-.3-2.7 0-1-.3-2.1-.3-3.2 0-.5-.1-1.2-.8-1.1zm-.6 8.2h.3v.8l-.3.1a3.3 3.3 0 01-.4.1 2.5 2.5 0 01-.2 0c-.2-.2-.2-.5.1-.8l.5-.2zm-30-9.2c-.3 0-.8.7-1.2.6-.9.1-.8 1-.1 1.3v.8c.1.8-.4 1.5-.3 2.3 0 .8-.3 1.7-.3 2.6-.3.9-.3 1.8-.4 2.7-.1.8-.7.5-1.2.3v-1c.1-.9-.5-1.1-1.2-1.2-.7 0-1-.5-.8-1.1.3-.4 1-.3 1.5-.3 1 .2.9-1.1.4-1.6-.4-.6-1.2-1-1.4-1.6 0-.8-.5-1.7-1.2-2.1-1.1-.1-2 .8-2.3 1.8-.5 0-1 .2-1.4.4-.7.2-1.7 1.4-.7 1.9.5.1 2.2.5 1.4 1.2-.4.8-1.2.8-1.9.6-.7 0-1.5-.4-1.5-1.2-.1-.8-.1-1.6-.4-2.3-.2-.8-1.1-.6-1.2.2-.7.5-.6 1.4-.1 2 .3.7 0 1.6-.3 2.2-.2 1-1.2 1-1.9 1.2-.3.2-1.6 0-1.1.7a4 4 0 002.4.3c.8 0 1.5-.7 2-1.4.5-.5 1.4-.2 2.2-.2.7 0 1.5.5 2.3.1.2-.5 1.2-1.5 1.5-.5 0 .9.7 1.3 1.5 1.2.9 0 .5.6.5 1.2 0 .9.7 1.4 1.5 1.8h.8c.7-.3 1.5-.6 1.8-1.4.3-.7.3-1.5.5-2.2.2-1.1.4-2.3.4-3.4.3-1 .2-2.1.4-3.2l.3-2.3c0-.5-.2-.5-.5-.4zm-6.7 4.1c.1 0 .2.2.2.5 0 .4.2.7.5.8v.3l-.8.2c-.5 0-.9-.2-1.2-.5l-.2-.2.3-.2.5-.5c.3-.3.5-.4.7-.4zm66-7.9a8.4 8.4 0 00-1.7.3c-1 0-1.5 1-.5 1.6.6 1.5 1.5-.4 2.5-.2 1.4.2 1.5 1.8 1.8 3 0 1.1.4 2.2.7 3.3 1 1.1-.7 1.8-1.4 1-.6-.7-2-1.5-2.7-.6-.9.4-1 1.6-1.7 2-1.2.3-1.3-1.2-2-1.8-.6-.9-1.7-1-2.6-1.2-.4-.9-.2-2.4-1-3-.8.3-2.2 1.7-1 2.4 1 1-.5 1.4-1 2-.8.9-1 2-1 3-1.3.7-1.5-.8-1.7-1.7 0-1.1-1-.8-1.7-.4-1 .4-1.4 1.3-2 2v2c.2.9 1.2.5 1.8.4 1-.4 1.4.7.6 1.3-.6.6-2.2.3-2 1.4h1.6c1-.3 2.2-1.1 2.3-2.3.2-1 1.7-.9 2.5-1.1 1-.3 2.3-.4 2.6 1 .7.7 2.2 1.5 3 .5a2.4 2.4 0 001.1-2.3c-.1-.8 1.3-.8 1.7-.3.5.8 2.1.6 2.9 0 .8-.5 1-1.6 2.2-1.6l5.4-1.5c1.4-.3-.2-1.2-.6-1.8-1-.5-2 1.7-3.2.6-1-.7-.9-2-1.2-3.1-.3-1.4-.2-3-1.2-4-.6-.7-1.6-.9-2.5-.9zm-6.8 9.5c.1 0 .3 0 .5.2.4.2.7.6.7 1 0 .2 0 .2-.3.3l-.5.2c-.2 0-.7-.3-.7-.5v-.4c-.2-.4-.2-.4 0-.6l.3-.2zm6.5.4c.4 0 .6 0 .8.3.1.4 0 .6-.4.8l-.5.2-.4-.3c-.2-.1-.3-.2-.3-.4 0-.3.4-.6.8-.7zm-9 0c.2 0 .3 0 .4.2.2.2.3.3.3.6v.6c0 .3 0 .2-.6.2s-.7 0-.7-.6c0-.4 0-.5.3-.7.1-.2.3-.2.4-.2zm-5.4 1.5a.6.6 0 01.4.4c0 .3 0 .5-.2.6-.3.1-.8.2-1 0a.6.6 0 010-.1c-.2-.1-.2-.2 0-.3v-.1l.2-.3a.5.5 0 01.6-.2zm9.2 1.2l.5.1v.6h-1.2l-.1-.2c0-.2 0-.3.2-.4l.6-.1zm-17.1 4.8c-.1 0-.3-.1-.1-.2.1-.3.5-.4.8-.6a3.4 3.4 0 001.4-1c0-.4.4-.6.4-1l-.1-1.4a1.8 1.8 0 00-.8-1c-.3-.1-.7-.2-.8-.6 0-.3.3-.6.4-.9l.6-1.2c.3-.3.7 0 .8.2l.5 1c.3.3.5.6.6 1 .2.4.4.7.4 1l.2 1.3c0 .5 0 1.1-.2 1.6l-.6.8c-.3.3-.6.6-1 .7-.3.1-.5.4-.9.4H468l-.1-.1zm-6.9.4c-.2-.2-.3-.3-.3-.6s0-.3.3-.6c.4-.4.6-.4 1.4 0 .7.4 1 .4 1 .1.1-.2.5-.5 1-.5a.8.8 0 01.5.2c.2.2.3.3.3.7 0 .5 0 .5-.3.8-.3.2-.3.2-.7.2a.9.9 0 01-.8-.6c0-.2 0-.3-.2-.1l-.2.1c-.2 0-.6.3-.8.5l-.5.1c-.4 0-.4 0-.7-.3zm-19.8-8.9c-.7 0-1.4.6-1.5 1.3.2.7.8 1.5.4 2.2.3 1-.8 1.4-1.5.9-.4-1-.6-2-1.3-3-.8-.2-1.1 1.1-1.7 1.6.3.7 1.1 1.4 1.2 2.3.2 1-.4 2-1.1 2.4-.7.7-1.7.5-2.5.6-1 .6.7.8 1.2.8 1 .1 2.1 0 3-.8.7-.3.6-1.7 1.5-1.8l4.8.3c.8.2 2.1-.1 2.7.5 0 1 1 1.8 1.9 2.2.5.2 1-.5 1.5-.6 1-.3.7-1.5 1.3-2h5c.2 0 .3-.5.6-.7l-.2-1.9c-.3-.8 0-1.8-.5-2.5-.9-.2-1.6.5-2.4.6-1 .4-1.7 1.3-1.8 2.3-.5.9-1.4-.2-1-1l-.1-1c-.5-.5-1.4-.3-2.1-.4l-3-.2c-1 0-1.9.1-2.7-.1-1 0-1-1-1-1.8a1 1 0 00-.7-.2zm2 3.7l1 .1h1.3c1 .2 2 .2 3 .2.2 0 .4.2.6.4v2c0 .3 0 .7-.2.8a.7.7 0 01-.2.2 1 1 0 01-.7-.5v-1.4a1.3 1.3 0 00-.7-.3l-2.6-.1-2-.1c-.3-.1-.7 0-.9-.4-.2-.2.1-.6.4-.7a2.3 2.3 0 011-.2zm11.3.3c.1 0 .2 0 .2.3l.2.5c0 .1 0 .2-.2.2-.5.2-1 .2-1.2 0 0-.1 0-.5.2-.6l.8-.4z"/>
+      </g>
+    </g>
+    <path stroke-width="1.1" d="M450 327.2c32.6-25 29.8-61.8 29.8-61.8l-2.5.2c-6.9 0-23.2-4-27-8.9-4 4.5-20.8 9-27.6 9l-2.5-.3s-2.9 36.7 29.8 61.8z"/>
+    <path stroke-width=".9" d="M477.2 268h-.8c-6.2 0-20.6-3.1-26.2-7.9-5.8 4.4-20.5 8-26.6 8a4.7 4.7 0 01-.8-.1 73.1 73.1 0 002.6 18.7 71 71 0 0024.6 37.1 71.2 71.2 0 0024.6-37.2 73.1 73.1 0 002.6-18.6z"/>
+    <path fill="#c09300" stroke="none" d="M439.4 265a62.2 62.2 0 01-16.6 3l.1 4.1a72.8 72.8 0 002.5 14.5 71 71 0 0014 26.8V265zm20.6 0v49.2a71.1 71.1 0 0014.6-27.6 73 73 0 002.5-14.5l.1-4h-.8c-3.8 0-10.4-1.2-16.4-3.2z"/>
+    <g stroke-width="1.3">
+      <path stroke-width="1.2" d="M462.3 253c.7.1-.9-3.5-.9-3.5 1.8 1.8 8.4 2.3 8.4 2.3-4-1.8-8-15.1-7.5-25.8.4-10.6-1.5-14.8-3-16.4-2-2-8.5-3.8-12.7-4-2.5-.1-2 1.8-2 1.8-4.5-1.1-9-1.6-11-.2-1.8 1.2-2.2 7.5-.8 6.4 3.3-2.7 6.2-.2 8.2 2.7 1.8 2.5 1.7 9.7-.9 18.2a60 60 0 01-10 17.7c4 0 9.6-3.5 9.6-3.5l-1.3 5.5c4.2-2 7.5-5.1 7.5-5.1l4 4.2c1.3-1.8 4-4.2 4-4.2s3.3 3.5 8.4 4z"/>
+      <path fill="none" d="M446.1 227.6s-2.2 16.4-6.4 21m10-21.5s-1 16.7-3.8 22m6.9-21.3s0 18.2 1 21.3m3-20.4s.8 15.3 4.6 20.8"/>
+      <path fill="#c09300" stroke-width=".3" d="M442 219.6a8 8 0 00-1-3.3c-2-3-4.9-5.4-8.2-2.7 0 0 1.1-3.5 3.6-3.6 1.8-.1 6.1 1.4 9.9 7.8 0 0-2.8-.6-3.5 0-1.2 1-.7 1.8-.7 1.8z"/>
+      <path fill="#c09300" stroke-width=".3" d="M432.4 209.3c.3-1 .7-1.8 1.3-2.1 2-1.4 6.4-1 10.9.2 0 0-.4-1.9 2-1.8 4.2.2 10.6 2 12.6 4a7.9 7.9 0 011.5 2.4c-1-1.4-3.8-1.3-4.5-1.2-1 .1-1.7 0-3.1.4-.7.2-1.7.4-2.3.8-.4.4-.8 1.6-1.4 1.6-1 0-1-.2-1.3-.5-.3-.5-.5-1.1-.9-1-1 .1-2.8-.7-5-2.5-2.3-1.8-3.2-2.2-6-2-3 .2-3.8 1.9-3.8 1.9v-.2z"/>
+      <circle cx="448.8" cy="210.7" r="1.2" stroke="none"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eh.svg
new file mode 100644
index 0000000..438c382
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eh.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-eh" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="eh-a">
+      <path fill-opacity=".7" d="M-158.7 0H524v512h-682.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#eh-a)" transform="translate(148.8) scale(.94)">
+    <path d="M-180 0H844v256H-180z"/>
+    <path fill="#107b00" d="M-180 256H844v256H-180z"/>
+    <path fill="#fff" d="M-180 169.3H844v176.1H-180z"/>
+    <path fill="#f0f" d="M310 195.6c-45.2-19.5-84.1 20.6-84 58 0 39.2 38 81 86 62.5-34-10-48-35.3-48-60.7-.3-25.2 15.8-54.6 46-59.9z"/>
+    <path fill="#ff1800" d="M363.1 294.2l-25.8-18.9-26 19 10-30.5-26-18.8h32l9.9-30.5 9.8 30.4h32.1l-25.9 18.8"/>
+    <path fill="red" d="M314.3 315.6a65.2 65.2 0 01-89.2-59.4 65 65 0 0189.5-60.9 60.6 60.6 0 00-51.2 59.2 61.3 61.3 0 0051 61.1zM-180 0l348.6 256.6L-180 512V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/en.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/en.svg
new file mode 100644
index 0000000..132dbed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/en.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb" viewBox="0 0 640 480">
+  <path fill="#012169" d="M0 0h640v480H0z"/>
+  <path fill="#FFF" d="M75 0l244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0h75z"/>
+  <path fill="#C8102E" d="M424 281l216 159v40L369 281h55zm-184 20l6 35L54 480H0l240-179zM640 0v3L391 191l2-44L590 0h50zM0 0l239 176h-60L0 42V0z"/>
+  <path fill="#FFF" d="M241 0v480h160V0H241zM0 160v160h640V160H0z"/>
+  <path fill="#C8102E" d="M0 193v96h640v-96H0zM273 0v480h96V0h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/er.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/er.svg
new file mode 100644
index 0000000..7a25798
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/er.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-er" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#be0027" d="M0 0h640v480H0z"/>
+    <path fill="#b4d7f4" d="M0 480l640-.3V240L0 480z"/>
+    <path fill="#239e46" d="M0 0l640 .3V240L0 0z"/>
+    <path fill="#f3e295" d="M186.2 360.4c-10.7 3-16.8 11.3-16.7 19.1l52.8-.2c.4-8.4-6.5-16.2-17-19.3 51.6-1 96.4-20.4 104.6-32.8-8-3.5-17.4 2.1-24 .8 15.7-7.3 63-37.9 55.3-70.7-6 18.2-24 33.3-31.8 37.4 17.7-26.8 41.8-54.8 20.9-76.4 1 12.5-8 26.3-12 27.4 10.3-28.4 20-64-2.1-87.4 2.9 8.5 1.7 32.4-2.3 33.5-1.2-19.3-4.5-59.8-24.8-59.3 6.4 5.8 9.2 21.4 9.4 37.2a57.5 57.5 0 00-21.1-27 118.3 118.3 0 00-41.5-42.2c1.8 12.7 3.3 22.7 21 35.9-9.2-.6-18.4-18.1-28.3-18.6-7.9-.4-14 7.1-26.9 2.8 1.4 4.2 7.4 6.1 8.7 9.2-2.8 2-9.3-.3-14.7-3 7.5 10 19 16 28.8 14 11.7-2.2 24.2-1 36.2 5.8a63 63 0 01-22.5.6c6.9 7 11.5 11.7 23.6 11.6 10.7 0 16.4-5.8 19.1-2.2 6.8 8 11.3 16 17 25.4-12.5 1.3-8.7-14.1-22.6-22-7.9 16 9 35.2 20.3 43.2a65 65 0 007.1 31.5c3.5 6.5 8 13.2 6.3 27.9-6.9-5-13.5-21.8-11-35.1-8.6 2.3-12 17.4-8 25 3 5.7 5 16.8 1.6 21.7-3.4 4.6-3.7 4-3.7 14 .1 5.8-3.2 12.8-8.5 17.7a35.5 35.5 0 001.1-15.8c-4.2 7.2-14.9 14.6-18.2 22.4-3.3 7.7-4.1 21.2-20 24.3-20.6 4-27.7 7.6-40.8 13-1.5-10 2.9-31 11.3-29.7 8.1 1.4 33-8.6 24-29.5-1.7 6.6-7.5 13-13.9 13.3 6.9-8.8 19-18 13.1-32.8a42.6 42.6 0 01-16.3 18c8.4-16 1-21-9-7.6-3.8 5.1-6.1 15.4-8.5 28.5-4-10.6-3.7-24.6-8.4-36-4.8-12.3 6.5-15.5 11.8-14.5 13 3.5 34.9 3.5 33.3-18.1-5.7 7.3-15.5 9.5-26.2 7 12-8.8 21.4-25.3 8-34a31 31 0 01-16.9 24.1 50.8 50.8 0 01-.3-24.8c-5.2 5.6-9 17-12.1 30.2-.3-13 2.2-22.3 4-29.3 2.8-10.1 9.6-3.5 20-2.8 10.2.6 24-5 21.4-18.7-3.4 5.5-10.5 7.6-17.7 7 8.7-5.3 23.8-14.6 15.5-29-3.5 5.4-4.6 10-14.7 11.7 2.6-6 3-14.7 11-18-14-2.9-22 6.3-26.2 20.7-1.6-10-3.6-13.6-4-21 7.6-8.3 8.4-24.8-8-28.4a35 35 0 001.2 17.4c-7.7-4.6-18.5-7.1-25.8-.7 5 5.3 12.5 10 24.2 4.2-2.8 9-10 7.5-19.8 4 6 11.3 13.6 13.3 22 12 4.4 11.6 4.6 20.4-8.3 37.2.6-10.4-.1-18.2-8.4-26.7-7.2-7-13 .3-1.8 15.8-6.8-5-14.4-15-16.7-25.1-2.2 12.4-.2 27.1 6.7 35.4-3.3 3.5-7-.4-12.5-9 2 27.4 13.7 32.7 29.4 26.6.4 15 .4 28.9 1.3 47-9.1-13.2-20.7-23-27.1-25.4-2 7.3 5.5 17 9.8 22.3-6.5-1.4-20.5-12-20.5-12-1.4 12.1 14.3 23.4 24.5 28.4-12-.5-17.3-5-25-12.4.2 33.8 36.6 27.9 43.5 22.7l3 52.5c-10.3-1.8-9.5-5-18.3-5.7-24.5-1-43.9-29.4-50.3-50.3-1.9 3.4-.4 7-2.1 11.3-4-10.3-9-23.6-15.9-29.8 1.8 6 2 12.1 1.4 23.3-2.4-7.2-4.5-9.5-4.7-18 .1-6.5 6.3-11.3 6-20.5-.3-6.7-6.4-21.3-7.3-32.5-3 11.6-4.8 23.8-9.4 31 2.3-12.4 1.6-21 5.4-29.3 4.4-8.7 8.1-16.6 5.2-25.4-2.8 3.4-1.9 6.5-9 14.8-1.5-9 9.2-23.5 19.6-29.3 7.3-3.8 16.5-17.6 10.5-27-6.9 5-10 11.6-19.7 23 7-27 25-34.2 46.5-34.3 4.7 0 14.3-1.7 17-8-6 2.3-13.2 2.6-19.6 1.4 4.7-6.9 14.4-6 23.6-6 7.1 0 18.3-1 22.8-11.2a50.8 50.8 0 01-31 1.9c13.7-7 35-7.8 46-17.1-12.5-9.3-43.7 2.2-63.4 15.7 5.5-5 14.2-14 19-21.2-10.8-5.2-38 25-47.4 43-9 5-12.5 13-16 18.5 4.7-16.1 5.2-27.8 9.2-41C80 138 92.6 194.6 86 208.2c.8-15 .1-34.1-6-44-9.4 7.2-10.2 49.5-1.4 84.7-3.2-9.4-9.2-18.2-11.1-29.7-14 25.4 8.2 55.5 26.7 79.2-14-7.3-27.7-22.9-36.8-36 2.5 45.6 50 55 57.4 66.2-10-4.7-29.1-13.9-37.3-4.2a99 99 0 0132.3 12.1c12.4 15.4 35.7 22.2 76.4 23.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ca.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ca.svg
new file mode 100644
index 0000000..fc7c2e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ca.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es-ca" viewBox="0 0 640 480">
+  <path fill="#fcdd09" d="M0 0h640v480H0z"/>
+  <path stroke="#da121a" stroke-width="60" d="M0 90h810m0 120H0m0 120h810m0 120H0" transform="scale(.79012 .88889)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ga.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ga.svg
new file mode 100644
index 0000000..4e213f5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es-ga.svg
@@ -0,0 +1,189 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es-ga" version="1.0" viewBox="0 0 640 480">
+  <g id="g5162" font-size="12" transform="matrix(1.06667 0 0 1.2001 0 -115.3)">
+    <path id="rect733" fill="#fff" fill-opacity="1" fill-rule="evenodd" stroke-width="1pt" d="M0 96h600v400H0z"/>
+    <path id="path556" fill="#09c" d="M600 437.8L86 96H0v57l516 343h84v-58.2"/>
+  </g>
+  <g id="g4979" font-size="12" transform="matrix(1.06667 0 0 1.06758 0 -76)">
+    <path id="path558" fill="#005bbf" fill-opacity="1" d="M296.6 401.2c-60 0-58.1-56.5-58.1-56.5v-86.9h116.3v86.9s2 56.5-58.2 56.5"/>
+    <path id="path559" fill="none" stroke="#000" stroke-width="1" d="M296.6 401.2c-60 0-58.1-56.5-58.1-56.5v-86.9h116.3v86.9s2 56.5-58.2 56.5z"/>
+    <path id="path560" fill="#d81126" fill-opacity="1" d="M296.1 203.2s-12.4-6-24.1 2.8c0 0-21.1-3-22.7 17.2 0 .8-.2 2.3.2 2.8.4.4.8 1.2.8 1.8 0 .6.3.9.5 1.1 0 .3.4.7.5 1.7 0 1.1-.2 1.6.9 2.7 1 1 1 4.1 1 5 0 .9.6 3.3 1 3.8.5.5 1.3 1.8 1.3 2.9 0 1 .4 4 .2 4.7-.2.8 1.2 1.7 2.4 2.1 1.2.4 16 5.2 37.6 4.8 21.6-.3 29.4-1.5 38.4-4.7 1.3-.5 1.6-1.7 1.5-2.3-.2-.6 0-2.6.3-3.1.4-.5 3-4.6 2.4-5.3-.5-.8-.5-2.4 0-3 .5-.7 2.1-3.7 2.4-5 .3-1.2.4-2.7 1-3.1.5-.4.7-1.9.8-2.2a4 4 0 011.2-1.6s1-5.1.4-7.6c-.7-2.5-4.5-13.3-19.8-11 0 0-11.4-8.7-28.2-4.5"/>
+    <path id="path561" fill="none" stroke="#000" stroke-width="1.5" d="M296.1 203.2s-12.4-6-24.1 2.8c0 0-21.1-3-22.7 17.2 0 .8-.2 2.3.2 2.8.4.4.8 1.2.8 1.8 0 .6.3.9.5 1.1 0 .3.4.7.5 1.7 0 1.1-.2 1.6.9 2.7 1 1 1 4.1 1 5 0 .9.6 3.3 1 3.8.5.5 1.3 1.8 1.3 2.9 0 1 .4 4 .2 4.7-.2.8 1.2 1.7 2.4 2.1 1.2.4 16 5.2 37.6 4.8 21.6-.3 29.4-1.5 38.4-4.7 1.3-.5 1.6-1.7 1.5-2.3-.2-.6 0-2.6.3-3.1.4-.5 3-4.6 2.4-5.3-.5-.8-.5-2.4 0-3 .5-.7 2.1-3.7 2.4-5 .3-1.2.4-2.7 1-3.1.5-.4.7-1.9.8-2.2a4 4 0 011.2-1.6s1-5.1.4-7.6c-.7-2.5-4.5-13.3-19.8-11 0 0-11.4-8.7-28.2-4.5h0z"/>
+    <path id="path562" fill="#bcac0b" fill-opacity="1" d="M337.6 240.8c-47-14.9-83.4-.7-83.4-.7s.4 1.6.8 2.1 1 1.7 1 2.6v2.8c0 .7-.4 3.7 2.2 3.6 0 0 32.8-12.8 75.4.7 0 0 1.2-1 1.2-2.5a8 8 0 011-4c.5-.8 1.8-3.4 1.8-4.6"/>
+    <path id="path563" fill="#c8b100" fill-opacity=".9" d="M294 319.3h-20.5s-2 18.3 13.8 23.9v1.6h3.3v2.2s-5.8 5.2-.7 11.2v1.8h.8v3h1v4.7s-.8 17-17.6 25.2v1h44.7v-1c-16.7-8.1-17.5-25.2-17.5-25.2V363h1V360h.8v-1.8c5-6-.8-11.2-.8-11.2v-2.2h3.4v-1.6c15.7-5.6 13.7-23.9 13.7-23.9H294"/>
+    <path id="path564" fill="none" stroke="#000" stroke-width="1" d="M294 319.3h-20.5s-2 18.3 13.8 23.9v1.6h3.3v2.2s-5.8 5.2-.7 11.2v1.8h.8v3h1v4.7s-.8 17-17.6 25.2v1h44.7v-1c-16.7-8.1-17.5-25.2-17.5-25.2V363h1V360h.8v-1.8c5-6-.8-11.2-.8-11.2v-2.2h3.4v-1.6c15.7-5.6 13.7-23.9 13.7-23.9H294h0z"/>
+    <path id="path565" fill="none" stroke="#000" stroke-width=".3" d="M286.6 342.9h19.7m-19 1.5h18.4m-15 2.5h11.5m-12.3 11.5H303m-12.4 1.4h11.6m-11.6 2.8h11.5m-18.5 23.2h25.5m-32.7 5.9h40m-41.5.9h43"/>
+    <path id="path566" fill="#ccc" fill-opacity="1" d="M296.6 318.3a13 13 0 100-26.1 13 13 0 000 26"/>
+    <path id="path567" fill="none" stroke="#000" stroke-width="1" d="M296.6 318.3a13 13 0 100-26.1 13 13 0 000 26z"/>
+    <path id="path568" fill="#ccc" fill-opacity="1" d="M266.3 280h-8.1v-8.2H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8V280"/>
+    <path id="path569" fill="none" stroke="#000" stroke-width="1" d="M266.3 280h-8.1v-8.2H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8V280"/>
+    <path id="path570" fill="#ccc" fill-opacity="1" d="M350.8 280h-8.1v-8.2h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1V280"/>
+    <path id="path571" fill="none" stroke="#000" stroke-width="1" d="M350.8 280h-8.1v-8.2h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1V280"/>
+    <path id="path572" fill="#ccc" fill-opacity="1" d="M308 269.7h-8.2v-8h-7.2v8h-8v7.2h8v8.2h7.2v-8.2h8.2v-7.2"/>
+    <path id="path573" fill="none" stroke="#000" stroke-width="1" d="M308 269.7h-8.2v-8h-7.2v8h-8v7.2h8v8.2h7.2v-8.2h8.2v-7.2"/>
+    <path id="path574" fill="#ccc" fill-opacity="1" d="M266.3 315.2h-8.1V307H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8v-7.2"/>
+    <path id="path575" fill="none" stroke="#000" stroke-width="1" d="M266.3 315.2h-8.1V307H251v8.2h-8.2v7.2h8.2v8h7.2v-8h8v-7.2"/>
+    <path id="path576" fill="#ccc" fill-opacity="1" d="M350.8 315.2h-8.1V307h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1v-7.2"/>
+    <path id="path577" fill="none" stroke="#000" stroke-width="1" d="M350.8 315.2h-8.1V307h-7.2v8.2h-8.2v7.2h8.2v8h7.2v-8h8.1v-7.2"/>
+    <path id="path578" fill="#ccc" fill-opacity="1" d="M266.3 350.7h-8.1v-8.1H251v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8v-7.3"/>
+    <path id="path579" fill="none" stroke="#000" stroke-width="1" d="M266.3 350.7h-8.1v-8.1H251v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8v-7.3"/>
+    <path id="path580" fill="#ccc" fill-opacity="1" d="M350.8 350.7h-8.1v-8.1h-7.2v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8.1v-7.3"/>
+    <path id="path581" fill="none" stroke="#000" stroke-width="1" d="M350.8 350.7h-8.1v-8.1h-7.2v8.1h-8.2v7.2h8.2v8.1h7.2v-8h8.1v-7.3"/>
+    <path id="path582" fill="#005bbf" fill-opacity="1" d="M296.5 185.8a7.8 7.8 0 100-15.7 7.8 7.8 0 000 15.7"/>
+    <path id="path583" fill="none" stroke="#000" stroke-width="1" d="M296.5 185.8a7.8 7.8 0 100-15.7 7.8 7.8 0 000 15.7z"/>
+    <path id="path584" fill="#fc0" fill-opacity="1" d="M303.8 176.6h-6.4v-10.4h2.5v-2h-2.5v-2.5h-2v2.4h-2.5v2.1h2.4v10.4h-6v1.4h14.5v-1.4"/>
+    <path id="path585" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".5" d="M303.8 176.6h-6.4v-10.4h2.5v-2h-2.5v-2.5h-2v2.4h-2.5v2.1h2.4v10.4h-6v1.4h14.5v-1.4"/>
+    <path id="path586" fill="#fc0" fill-opacity="1" d="M265.2 195.1s5.8-.6 9.1.7c0 0-3.8 4.4-3 10.1.4 3 1 4.5 1.9 6 .8 1.3 1.7 4.3 1.2 6.6h1.1s1.1-4.8-.7-7.4a10 10 0 01-1-10.3c1.9-3.8 4.6-5.3 4.6-5.3 3 1.2 9.6 0 11.4-1.3 1.9-1.3 2.8-3.2-.6-3.3-3.5-.2-9.3-.1-13.3 2.9 0 0-2.1-2.4-12.6-1.3-10.5 1.2-18 5.7-20.4 15.1-1.2 4.8 3.3 14.9 7.4 17.3 0 0-.1-1.6.3-2.8 0 0-7-7.9-5-15.2 2.2-7.2 10.6-12 19.6-11.8"/>
+    <path id="path587" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M265.2 195.1s5.8-.6 9.1.7c0 0-3.8 4.4-3 10.1.4 3 1 4.5 1.9 6 .8 1.3 1.7 4.3 1.2 6.6h1.1s1.1-4.8-.7-7.4a10 10 0 01-1-10.3c1.9-3.8 4.6-5.3 4.6-5.3 3 1.2 9.6 0 11.4-1.3 1.9-1.3 2.8-3.2-.6-3.3-3.5-.2-9.3-.1-13.3 2.9 0 0-2.1-2.4-12.6-1.3-10.5 1.2-18 5.7-20.4 15.1-1.2 4.8 3.3 14.9 7.4 17.3 0 0-.1-1.6.3-2.8 0 0-7-7.9-5-15.2 2.2-7.2 10.6-12 19.6-11.8z"/>
+    <path id="path588" fill="#fff" d="M284.9 193.7c1.8-.2 3.3-.5 3.2-.7 0-.3-1.5-.3-3.3-.2-1.8.1-3.2.5-3.2.7 0 .3 1.5.3 3.3.2"/>
+    <path id="path589" fill="none" stroke="#000" stroke-width=".7" d="M278.3 195.4s-2 2 0 0 6.4-3.2 8.9-2.7c2.4.6-.5.9-1.3 1-.8 0-2.4.3-4.8 0"/>
+    <path id="path590" fill="#fc0" fill-opacity="1" d="M327.7 195.8s-5.7-.7-9.1.6a14.6 14.6 0 011.2 16c-.9 1.5-1.8 4.4-1.3 6.7h-1s-1.2-4.7.7-7.4a10 10 0 00.9-10.2 12.6 12.6 0 00-4.5-5.4c-3.1 1.3-9.7 0-11.5-1.3-1.8-1.3-2.8-3.1.7-3.3 3.4-.2 9.3-.1 13.3 3 0 0 2-2.5 12.6-1.3 10.4 1.1 18 5.6 20.3 15 1.2 4.8-3.2 14.9-7.3 17.3 0 0 0-1.6-.3-2.8 0 0 7-7.8 4.9-15.1-2.1-7.3-10.5-12-19.6-11.8"/>
+    <path id="path591" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M327.7 195.8s-5.7-.7-9.1.6a14.6 14.6 0 011.2 16c-.9 1.5-1.8 4.4-1.3 6.7h-1s-1.2-4.7.7-7.4a10 10 0 00.9-10.2 12.6 12.6 0 00-4.5-5.4c-3.1 1.3-9.7 0-11.5-1.3-1.8-1.3-2.8-3.1.7-3.3 3.4-.2 9.3-.1 13.3 3 0 0 2-2.5 12.6-1.3 10.4 1.1 18 5.6 20.3 15 1.2 4.8-3.2 14.9-7.3 17.3 0 0 0-1.6-.3-2.8 0 0 7-7.8 4.9-15.1-2.1-7.3-10.5-12-19.6-11.8z"/>
+    <path id="path592" fill="#fff" d="M308 194.3c-1.8-.1-3.2-.4-3.2-.7 0-.2 1.5-.3 3.3-.2 1.8.2 3.3.5 3.3.7 0 .3-1.5.4-3.4.2"/>
+    <path id="path593" fill="none" stroke="#000" stroke-width=".7" d="M314.6 196s2.1 2 0 0c-2-1.9-6.4-3.2-8.8-2.6-2.5.5.4.8 1.2.9.9 0 2.5.4 4.9 0"/>
+    <path id="path594" fill="#fc0" fill-opacity="1" d="M291.1 189.3v22.3c-.2 2.2 2.7 5.3 4.8 6.2 0 0 5-1.6 5.3-6.2v-23.5h-1.7v20.4c0 2-1.4 5.8-3.3 6.4 0 0-3.6-.6-3.8-6.4v-19.8l-1.3.6"/>
+    <path id="path595" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M291.1 189.3v22.3c-.2 2.2 2.7 5.3 4.8 6.2 0 0 5-1.6 5.3-6.2v-23.5h-1.7v20.4c0 2-1.4 5.8-3.3 6.4 0 0-3.6-.6-3.8-6.4v-19.8l-1.3.6"/>
+    <path id="path596" fill="#fff" d="M241.8 219.8a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path597" fill="none" stroke="#000" stroke-width="1" d="M241.8 219.8a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path598" fill="#fff" d="M240.1 213.7a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path599" fill="none" stroke="#000" stroke-width="1" d="M240.1 213.7a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path600" fill="#fff" d="M241 206.3a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path601" fill="none" stroke="#000" stroke-width="1" d="M241 206.3a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path602" fill="#fff" d="M245.1 200.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path603" fill="none" stroke="#000" stroke-width="1" d="M245.1 200.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path604" fill="#fff" d="M250 195.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path605" fill="none" stroke="#000" stroke-width="1" d="M250 195.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path606" fill="#fff" d="M256.4 193.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path607" fill="none" stroke="#000" stroke-width="1" d="M256.4 193.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path608" fill="#fff" d="M263 192a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path609" fill="none" stroke="#000" stroke-width="1" d="M263 192a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path610" fill="#fff" d="M269.3 191.6a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path611" fill="none" stroke="#000" stroke-width="1" d="M269.3 191.6a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path612" fill="#fff" d="M275 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path613" fill="none" stroke="#000" stroke-width="1" d="M275 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path614" fill="#fff" d="M291 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path615" fill="none" stroke="#000" stroke-width="1" d="M291 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path616" fill="#fff" d="M296.2 191.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path617" fill="none" stroke="#000" stroke-width="1" d="M296.2 191.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path618" fill="#fff" d="M296.2 211.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path619" fill="none" stroke="#000" stroke-width="1" d="M296.2 211.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path620" fill="#fff" d="M351.3 221.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path621" fill="none" stroke="#000" stroke-width="1" d="M351.3 221.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path622" fill="#fff" d="M352.7 215a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path623" fill="none" stroke="#000" stroke-width="1" d="M352.7 215a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path624" fill="#fff" d="M351.6 208a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path625" fill="none" stroke="#000" stroke-width="1" d="M351.6 208a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path626" fill="#fff" d="M348.7 201.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path627" fill="none" stroke="#000" stroke-width="1" d="M348.7 201.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path628" fill="#fff" d="M343.8 197a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path629" fill="none" stroke="#000" stroke-width="1" d="M343.8 197a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path630" fill="#fff" d="M337.9 194a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path631" fill="none" stroke="#000" stroke-width="1" d="M337.9 194a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path632" fill="#fff" d="M331.1 192.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path633" fill="none" stroke="#000" stroke-width="1" d="M331.1 192.5a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path634" fill="#fff" d="M325 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path635" fill="none" stroke="#000" stroke-width="1" d="M325 192a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path636" fill="#fff" d="M319.4 191.3a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path637" fill="none" stroke="#000" stroke-width="1" d="M319.4 191.3a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path638" fill="#fff" d="M323 213a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path639" fill="none" stroke="#000" stroke-width="1" d="M323 213a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path640" fill="#fff" d="M324.4 208a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3"/>
+    <path id="path641" fill="none" stroke="#000" stroke-width="1" d="M324.4 208a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.3z"/>
+    <path id="path642" fill="#fff" d="M302 190.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path643" fill="none" stroke="#000" stroke-width="1" d="M302 190.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path644" fill="#fff" d="M289 190.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path645" fill="none" stroke="#000" stroke-width="1" d="M289 190.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path646" fill="#fff" d="M285.8 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path647" fill="none" stroke="#000" stroke-width="1" d="M285.8 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path648" fill="#fff" d="M268.8 213.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path649" fill="none" stroke="#000" stroke-width="1" d="M268.8 213.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path650" fill="#fff" d="M268 206.8a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path651" fill="none" stroke="#000" stroke-width="1" d="M268 206.8a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path652" fill="#fff" d="M270 200.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path653" fill="none" stroke="#000" stroke-width="1" d="M270 200.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path654" fill="#fff" d="M281.7 190.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path655" fill="none" stroke="#000" stroke-width="1" d="M281.7 190.6a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path656" fill="#fff" d="M277.2 192.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path657" fill="none" stroke="#000" stroke-width="1" d="M277.2 192.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path658" fill="#fff" d="M273 196a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path659" fill="none" stroke="#000" stroke-width="1" d="M273 196a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path660" fill="#fff" d="M296.2 194.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path661" fill="none" stroke="#000" stroke-width="1" d="M296.2 194.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path662" fill="#fff" d="M296.2 199.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path663" fill="none" stroke="#000" stroke-width="1" d="M296.2 199.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path664" fill="#fff" d="M296.2 204.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path665" fill="none" stroke="#000" stroke-width="1" d="M296.2 204.9a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path666" fill="#fff" d="M305.4 190.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path667" fill="none" stroke="#000" stroke-width="1" d="M305.4 190.2a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path668" fill="#fff" d="M309 189.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path669" fill="none" stroke="#000" stroke-width="1" d="M309 189.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path670" fill="#fff" d="M313.2 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4"/>
+    <path id="path671" fill="none" stroke="#000" stroke-width="1" d="M313.2 190a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.4z"/>
+    <path id="path672" fill="#fff" d="M323.5 201.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path673" fill="none" stroke="#000" stroke-width="1" d="M323.5 201.4a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path674" fill="#fff" d="M317.3 192.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4"/>
+    <path id="path675" fill="none" stroke="#000" stroke-width="1" d="M317.3 192.5a2.7 2.7 0 100-5.4 2.7 2.7 0 000 5.4z"/>
+    <path id="path676" fill="#fff" d="M321.1 196.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3"/>
+    <path id="path677" fill="none" stroke="#000" stroke-width="1" d="M321.1 196.1a2.7 2.7 0 100-5.3 2.7 2.7 0 000 5.3z"/>
+    <path id="path678" fill="#fff" d="M296 236l-7 3.6 6.3 4 7.5-3.8-6.8-3.8"/>
+    <path id="path679" fill="none" stroke="#000" stroke-width=".5" d="M296 236l-7 3.6 6.3 4 7.5-3.8-6.8-3.8"/>
+    <path id="path680" fill="#fff" d="M280.6 236.8l-10.5 1.6s-.2 5.7.3 7l10.9-1.4s.5-5.3-.7-7.2"/>
+    <path id="path681" fill="none" stroke="#000" stroke-width=".5" d="M280.6 236.8l-10.5 1.6s-.2 5.7.3 7l10.9-1.4s.5-5.3-.7-7.2z"/>
+    <path id="path682" fill="#058e6e" fill-opacity=".9" d="M279.5 238.8s-6.4.6-8 1.2v3.8s4.3-.7 8.1-1l-.1-4"/>
+    <path id="path683" fill="none" stroke="#000" stroke-width=".5" d="M279.5 238.8s-6.4.6-8 1.2v3.8s4.3-.7 8.1-1l-.1-4"/>
+    <path id="path684" fill="#fff" d="M310.7 237l10.6 1.7s.1 5.7-.4 7l-10.8-1.4s-.5-5.3.6-7.2"/>
+    <path id="path685" fill="none" stroke="#000" stroke-width=".5" d="M310.7 237l10.6 1.7s.1 5.7-.4 7l-10.8-1.4s-.5-5.3.6-7.2z"/>
+    <path id="path686" fill="#058e6e" fill-opacity=".9" d="M312 239.1s6.3.6 7.9 1.2l-.1 3.8s-4.2-.7-8-1l.1-4"/>
+    <path id="path687" fill="none" stroke="#000" stroke-width=".5" d="M312 239.1s6.3.6 7.9 1.2l-.1 3.8s-4.2-.7-8-1l.1-4"/>
+    <path id="path688" fill="none" stroke="#000" stroke-width=".5" d="M254.2 241.8s37-13.7 84.2 1.2m-82.7 6.7s35.9-13.4 80 .6m-79.8-9l7.2 2.1-5 5.4"/>
+    <path id="path689" fill="red" d="M256 247.8l4.2-3.5-4.7-.9s.6.7.5 1.4v3"/>
+    <path id="path690" fill="none" stroke="#000" stroke-width=".5" d="M256 247.8l4.2-3.5-4.7-.9s.6.7.5 1.4v3z"/>
+    <path id="path691" fill="none" stroke="#000" stroke-width=".5" d="M337.6 242.7l-7.7 1.4 5.2 6"/>
+    <path id="path692" fill="red" d="M335.3 248l-2.9-3 4.2-.4s-1.2.7-1.2 1.4c0 .6.2 1.5 0 2"/>
+    <path id="path693" fill="none" stroke="#000" stroke-width=".5" d="M335.3 248l-2.9-3 4.2-.4s-1.2.7-1.2 1.4c0 .6.2 1.5 0 2z"/>
+    <path id="path694" fill="none" stroke="#000" stroke-width=".5" d="M265.3 241.8c.6 0 1.2-.4 1.2-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm20.6-2.3c.7 0 1.2-.4 1.2-1 0-.5-.5-.9-1.2-.9s-1.2.4-1.2 1c0 .5.5.9 1.2.9zm0 3.3c.7 0 1.2-.4 1.2-.9s-.5-1-1.2-1-1.2.5-1.2 1 .5 1 1.2 1zm20.3-3.1c.6 0 1.2-.5 1.2-1s-.6-1-1.2-1c-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm20.1 3.7c.7 0 1.2-.5 1.2-1s-.5-1-1.2-1-1.2.5-1.2 1 .5 1 1.2 1zm-.3 2.6c.6 0 1.2-.4 1.2-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1zm-19.8-3c.6 0 1.2-.4 1.2-1 0-.5-.6-.9-1.2-.9-.7 0-1.2.4-1.2 1 0 .5.5 1 1.2 1zm-40 3c.7 0 1.3-.4 1.3-1 0-.4-.6-.9-1.2-.9-.7 0-1.2.5-1.2 1s.5 1 1.2 1z"/>
+    <path id="path695" fill="#fc0" fill-opacity="1" d="M253.6 231s.1 7.2 4.8 6.2 4.2-6.9 4.5-7.2c.4-.3.9-.3.9-.3s.6 5.7 5 5c4.4-.7 4.2-7.7 3.7-8.9l1-.3s1.7 8.2 6.7 7c5-1.2 4.5-6.4 4.5-6.4h.4s1.1 5.6 5.2 5.2c4-.3 4.8-1.6 4.3-7.2l2.7-.5s-1 8 3.9 8c4.8-.3 5-4.1 5.3-4.8h.8s.2 5.7 4.3 5.7c4 0 4.8-4.8 4.8-6.7l4 .2s-4.2 7.5 1.9 8.5c6 1 6.2-4.8 6.2-4.8h1.2s-.2 7.5 3.1 7.7c3.4.1 5.4-1 5.7-6.6l1.9.7s-1.6 9-7.9 7.4c-3.3-.9-4.4-4.7-4.2-5.7 0 0-2.3 4.2-6.9 2.8-4.5-1.3-4-4.5-4-5.5 0 0-2.7 5-6.5 3.9-3.4-1-4.7-2.2-4.7-4.6 0 0-1.7 3.9-5 3.7-3.4-.1-5-2.2-5.2-4 0 0-.7 3.6-5.2 3.9-3 .1-4.7-1.4-5.4-3.4 0 0-.9 3.6-5.2 4.2-2.7.3-5.4-1.2-6-3.7 0 0-.7 4.9-5 5.5-4.4.7-5.4-2.3-5.4-2.3s-.9 3.8-4.4 4.7c-3.5.8-5.8-.7-6.7-4.2-.8-3.5-.5-5-.5-5l1.4 1.8"/>
+    <path id="path696" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M253.6 231s.1 7.2 4.8 6.2 4.2-6.9 4.5-7.2c.4-.3.9-.3.9-.3s.6 5.7 5 5c4.4-.7 4.2-7.7 3.7-8.9l1-.3s1.7 8.2 6.7 7c5-1.2 4.5-6.4 4.5-6.4h.4s1.1 5.6 5.2 5.2c4-.3 4.8-1.6 4.3-7.2l2.7-.5s-1 8 3.9 8c4.8-.3 5-4.1 5.3-4.8h.8s.2 5.7 4.3 5.7c4 0 4.8-4.8 4.8-6.7l4 .2s-4.2 7.5 1.9 8.5c6 1 6.2-4.8 6.2-4.8h1.2s-.2 7.5 3.1 7.7c3.4.1 5.4-1 5.7-6.6l1.9.7s-1.6 9-7.9 7.4c-3.3-.9-4.4-4.7-4.2-5.7 0 0-2.3 4.2-6.9 2.8-4.5-1.3-4-4.5-4-5.5 0 0-2.7 5-6.5 3.9-3.4-1-4.7-2.2-4.7-4.6 0 0-1.7 3.9-5 3.7-3.4-.1-5-2.2-5.2-4 0 0-.7 3.6-5.2 3.9-3 .1-4.7-1.4-5.4-3.4 0 0-.9 3.6-5.2 4.2-2.7.3-5.4-1.2-6-3.7 0 0-.7 4.9-5 5.5-4.4.7-5.4-2.3-5.4-2.3s-.9 3.8-4.4 4.7c-3.5.8-5.8-.7-6.7-4.2-.8-3.5-.5-5-.5-5l1.4 1.8h0z"/>
+    <path id="path697" fill="#fc0" fill-opacity="1" d="M263.3 231.3a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path698" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M263.3 231.3a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path699" fill="#fc0" fill-opacity="1" d="M285.1 227.8a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path700" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M285.1 227.8a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path701" fill="#fc0" fill-opacity="1" d="M307.3 228.5a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path702" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M307.3 228.5a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path703" fill="#fc0" fill-opacity="1" d="M329.2 232a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3"/>
+    <path id="path704" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M329.2 232a1.7 1.7 0 100-3.3 1.7 1.7 0 000 3.3z"/>
+    <path id="path705" fill="#fc0" fill-opacity="1" d="M295.2 226h-1.5c-.4 1.5-3.6 2.4-3.6 2.4-.4-1.2.5-2.9.5-2.9-3.7-1-3.7-2.2-3.7-2.2.5-1.3 4-1.5 4-1.5-1-1.1-.8-3-.8-3 2.3.2 4.2 2.5 4.2 2.5s-2.3-1.2-2-5.2c0 0 1.2 0 2 .8 0 0 0-4.4 1.8-4.9h.2c1.8.5 1.8 4.9 1.8 4.9.8-.9 2-.8 2-.8.3 4-2 5.2-2 5.2s1.9-2.3 4.2-2.4c0 0 .1 1.8-.7 3 0 0 3.4.1 4 1.4 0 0 0 1.3-3.8 2.2 0 0 .8 1.7.5 3 0 0-3.3-1-3.6-2.5h-3.5"/>
+    <path id="path706" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M295.2 226h-1.5c-.4 1.5-3.6 2.4-3.6 2.4-.4-1.2.5-2.9.5-2.9-3.7-1-3.7-2.2-3.7-2.2.5-1.3 4-1.5 4-1.5-1-1.1-.8-3-.8-3 2.3.2 4.2 2.5 4.2 2.5s-2.3-1.2-2-5.2c0 0 1.2 0 2 .8 0 0 0-4.4 1.8-4.9h.2c1.8.5 1.8 4.9 1.8 4.9.8-.9 2-.8 2-.8.3 4-2 5.2-2 5.2s1.9-2.3 4.2-2.4c0 0 .1 1.8-.7 3 0 0 3.4.1 4 1.4 0 0 0 1.3-3.8 2.2 0 0 .8 1.7.5 3 0 0-3.3-1-3.6-2.5h-3.5 0z"/>
+    <path id="path707" fill="#fff" d="M296 226.8a3 3 0 100-6 3 3 0 000 6"/>
+    <path id="path708" fill="none" stroke="#000" stroke-width=".4" d="M296 226.8a3 3 0 100-6 3 3 0 000 6z"/>
+    <path id="path709" fill="#fff" d="M296 225.5a1.7 1.7 0 100-3.4 1.7 1.7 0 000 3.4"/>
+    <path id="path710" fill="none" stroke="#000" stroke-width=".3" d="M296 225.5a1.7 1.7 0 100-3.4 1.7 1.7 0 000 3.4z"/>
+    <path id="path711" fill="#fc0" fill-opacity="1" d="M319.1 228l1.5.3c0 1.5 3 3.1 3 3.1.6-1 .1-2.9.1-2.9 3.9-.1 4.1-1.4 4.1-1.4-.2-1.4-3.5-2.3-3.5-2.3 1-.9 1.3-2.7 1.3-2.7-2.3-.4-4.6 1.4-4.6 1.4s2.5-.6 3-4.6c0 0-1.1-.3-2 .3 0 0 .9-4.2-.8-5l-.2-.1c-1.9 0-2.8 4.3-2.8 4.3-.6-1-1.8-1.1-1.8-1.1-1.1 3.8.9 5.4.9 5.4s-1.4-2.6-3.6-3.2c0 0-.5 1.8 0 3 0 0-3.3-.5-4.1.6 0 0-.3 1.3 3.1 3 0 0-1.1 1.5-1 2.8 0 0 3.3-.3 4-1.7l1.5.3 2 .4"/>
+    <path id="path712" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M319.1 228l1.5.3c0 1.5 3 3.1 3 3.1.6-1 .1-2.9.1-2.9 3.9-.1 4.1-1.4 4.1-1.4-.2-1.4-3.5-2.3-3.5-2.3 1-.9 1.3-2.7 1.3-2.7-2.3-.4-4.6 1.4-4.6 1.4s2.5-.6 3-4.6c0 0-1.1-.3-2 .3 0 0 .9-4.2-.8-5l-.2-.1c-1.9 0-2.8 4.3-2.8 4.3-.6-1-1.8-1.1-1.8-1.1-1.1 3.8.9 5.4.9 5.4s-1.4-2.6-3.6-3.2c0 0-.5 1.8 0 3 0 0-3.3-.5-4.1.6 0 0-.3 1.3 3.1 3 0 0-1.1 1.5-1 2.8 0 0 3.3-.3 4-1.7l1.5.3 2 .4"/>
+    <path id="path713" fill="#fff" d="M318 228.6a3 3 0 111.4-6 3 3 0 01-1.3 6"/>
+    <path id="path714" fill="none" stroke="#000" stroke-width=".4" d="M318 228.6a3 3 0 111.4-6 3 3 0 01-1.3 6z"/>
+    <path id="path715" fill="#fff" d="M318.4 227.3a1.7 1.7 0 11.7-3.3 1.7 1.7 0 01-.7 3.3"/>
+    <path id="path716" fill="none" stroke="#000" stroke-width=".3" d="M318.4 227.3a1.7 1.7 0 11.7-3.3 1.7 1.7 0 01-.7 3.3z"/>
+    <path id="path717" fill="#fc0" fill-opacity="1" d="M272.3 227.6l-1.5.2c-.2 1.6-3.3 3-3.3 3-.5-1.2 0-3 0-3-3.7-.4-3.9-1.7-3.9-1.7.4-1.3 3.8-2 3.8-2-1-1-1.1-2.8-1.1-2.8 2.2-.2 4.4 1.8 4.4 1.8s-2.4-.8-2.7-4.8c0 0 1.3-.3 2.1.4 0 0-.5-4.3 1.2-5h.2c1.9.2 2.4 4.5 2.4 4.5.7-.9 2-1 2-1 .7 4-1.4 5.4-1.4 5.4s1.6-2.5 3.8-3c0 0 .4 1.9-.3 3.1 0 0 3.4-.3 4.1 1 0 0 .2 1.2-3.4 2.6 0 0 1 1.6.9 2.8 0 0-3.3-.5-4-2l-1.4.3-2 .2"/>
+    <path id="path718" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M272.3 227.6l-1.5.2c-.2 1.6-3.3 3-3.3 3-.5-1.2 0-3 0-3-3.7-.4-3.9-1.7-3.9-1.7.4-1.3 3.8-2 3.8-2-1-1-1.1-2.8-1.1-2.8 2.2-.2 4.4 1.8 4.4 1.8s-2.4-.8-2.7-4.8c0 0 1.3-.3 2.1.4 0 0-.5-4.3 1.2-5h.2c1.9.2 2.4 4.5 2.4 4.5.7-.9 2-1 2-1 .7 4-1.4 5.4-1.4 5.4s1.6-2.5 3.8-3c0 0 .4 1.9-.3 3.1 0 0 3.4-.3 4.1 1 0 0 .2 1.2-3.4 2.6 0 0 1 1.6.9 2.8 0 0-3.3-.5-4-2l-1.4.3-2 .2"/>
+    <path id="path719" fill="#fff" d="M273.2 228.4a3 3 0 10-.8-6 3 3 0 00.8 6"/>
+    <path id="path720" fill="none" stroke="#000" stroke-width=".4" d="M273.2 228.4a3 3 0 10-.8-6 3 3 0 00.8 6z"/>
+    <path id="path721" fill="#fff" d="M273 227a1.7 1.7 0 10-.4-3.3 1.7 1.7 0 00.4 3.3"/>
+    <path id="path722" fill="none" stroke="#000" stroke-width=".3" d="M273 227a1.7 1.7 0 10-.4-3.3 1.7 1.7 0 00.4 3.3z"/>
+    <path id="path723" fill="#fc0" fill-opacity="1" d="M340.2 234.1s-.8-2-2.5-1.3-1.5 1-3 1c0 0-.6-1.9.2-2.7 0 0-2.4-.9-3-3 0 0 1.3-1.5 4.4-.9 0 0-.1-1.5.3-2.2 0 0 3.3 1 3.3 2.9 0 0-1-3.6.8-6.2 0 0 1.5.6 1.4 2.3 0 0 .7-3.4 5.2-2.5 0 0-2.4 2.2-2.5 3.2-.2 1-2.2 2.7-2.3 3.3 0 .5-.2 1.5-.8 2.1-.6.6-.7 1.6-.7 2 0 .2 0 1.6-.8 2"/>
+    <path id="path724" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M340.2 234.1s-.8-2-2.5-1.3-1.5 1-3 1c0 0-.6-1.9.2-2.7 0 0-2.4-.9-3-3 0 0 1.3-1.5 4.4-.9 0 0-.1-1.5.3-2.2 0 0 3.3 1 3.3 2.9 0 0-1-3.6.8-6.2 0 0 1.5.6 1.4 2.3 0 0 .7-3.4 5.2-2.5 0 0-2.4 2.2-2.5 3.2-.2 1-2.2 2.7-2.3 3.3 0 .5-.2 1.5-.8 2.1-.6.6-.7 1.6-.7 2 0 .2 0 1.6-.8 2z"/>
+    <path id="path725" fill="#fff" d="M337.7 230.1a3 3 0 014.8-1.8c0 .5-.3 1.3-.8 1.8-.6.6-.7 1.6-.7 2a3 3 0 01-.4 1.6h-.5a3 3 0 01-2.4-3.6"/>
+    <path id="path726" fill="none" stroke="#000" stroke-width=".4" d="M337.7 230.1a3 3 0 014.8-1.8c0 .5-.3 1.3-.8 1.8-.6.6-.7 1.6-.7 2a3 3 0 01-.4 1.6h-.5a3 3 0 01-2.4-3.6z"/>
+    <path id="path727" fill="#fff" d="M339 230.4a1.7 1.7 0 013-.7l-.3.4c-.6.6-.7 1.6-.7 2v.2h-.6c-1-.1-1.5-1-1.3-2"/>
+    <path id="path728" fill="none" stroke="#000" stroke-width=".3" d="M339 230.4a1.7 1.7 0 013-.7l-.3.4c-.6.6-.7 1.6-.7 2v.2h-.6c-1-.1-1.5-1-1.3-2z"/>
+    <path id="path729" fill="#fc0" fill-opacity="1" d="M252.2 233.3s.8-2 2.5-1.2c1.6.9 1.4 1.1 3 1.1 0 0 .6-1.8 0-2.6 0 0 2.4-.7 3-2.8 0 0-1.2-1.6-4.3-1.2 0 0 .2-1.5-.2-2.2 0 0-3.3.8-3.4 2.6 0 0 1.2-3.5-.4-6.2 0 0-1.6.6-1.6 2.2 0 0-.5-3.4-5-2.7 0 0 2.3 2.3 2.3 3.3s2 2.8 2 3.4c0 .5.2 1.6.8 2.2.6.6.6 1.6.5 2 0 .2 0 1.6.8 2"/>
+    <path id="path730" fill="#bcac0b" fill-opacity="1" stroke="#000" stroke-width=".7" d="M252.2 233.3s.8-2 2.5-1.2c1.6.9 1.4 1.1 3 1.1 0 0 .6-1.8 0-2.6 0 0 2.4-.7 3-2.8 0 0-1.2-1.6-4.3-1.2 0 0 .2-1.5-.2-2.2 0 0-3.3.8-3.4 2.6 0 0 1.2-3.5-.4-6.2 0 0-1.6.6-1.6 2.2 0 0-.5-3.4-5-2.7 0 0 2.3 2.3 2.3 3.3s2 2.8 2 3.4c0 .5.2 1.6.8 2.2.6.6.6 1.6.5 2 0 .2 0 1.6.8 2z"/>
+    <path id="path731" fill="#fff" d="M254.8 229.4a3 3 0 00-4.6-2c0 .5.2 1.3.7 1.8.6.6.6 1.6.5 2 0 .2 0 1 .4 1.7h.4a3 3 0 002.6-3.5"/>
+    <path id="path732" fill="none" stroke="#000" stroke-width=".4" d="M254.8 229.4a3 3 0 00-4.6-2c0 .5.2 1.3.7 1.8.6.6.6 1.6.5 2 0 .2 0 1 .4 1.7h.4a3 3 0 002.6-3.5z"/>
+    <path id="path733" fill="#fff" d="M253.5 229.6a1.7 1.7 0 00-3-.9l.4.5c.6.6.6 1.6.5 2v.2h.7c.9 0 1.5-.9 1.4-1.8"/>
+    <path id="path734" fill="none" stroke="#000" stroke-width=".3" d="M253.5 229.6a1.7 1.7 0 00-3-.9l.4.5c.6.6.6 1.6.5 2v.2h.7c.9 0 1.5-.9 1.4-1.8z"/>
+    <path id="path735" fill="none" stroke="#000" stroke-width="1.5" d="M257.2 251.6s33.8-13.2 76.4.3"/>
+    <path id="path736" fill="none" stroke="#000" stroke-width=".5" d="M338.4 241.1c-47.1-15-84.7-.8-84.7-.8"/>
+    <path id="path737" fill="red" d="M296 237.8l-3.8 1.9 3.4 2.1 4-2-3.6-2"/>
+    <path id="path738" fill="none" stroke="#000" stroke-width=".5" d="M296 237.8l-3.8 1.9 3.4 2.1 4-2-3.6-2"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es.svg
new file mode 100644
index 0000000..576dd67
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/es.svg
@@ -0,0 +1,544 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-es" viewBox="0 0 640 480">
+  <path fill="#AA151B" d="M0 0h640v480H0z"/>
+  <path fill="#F1BF00" d="M0 120h640v240H0z"/>
+  <path fill="#ad1519" d="M127.3 213.3l-.8-.1-1-1-.7-.4-.6-.8s-.7-1.1-.4-2c.3-.9.9-1.2 1.4-1.5a12 12 0 011.5-.5l1-.4 1.3-.3.5-.3c.2 0 .7 0 1-.2l1-.2 1.6.1h4.8c.4 0 1.2.3 1.4.4a35 35 0 002 .7c.5.1 1.6.3 2.2.6.5.3.9.7 1.1 1l.5 1v1.1l-.5.8-.6 1-.8.6s-.5.5-1 .4c-.4 0-4.8-.8-7.6-.8s-7.3.9-7.3.9"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M127.3 213.3l-.8-.1-1-1-.7-.4-.6-.8s-.7-1.1-.4-2c.3-.9.9-1.2 1.4-1.5a12 12 0 011.5-.5l1-.4 1.3-.3.5-.3c.2 0 .7 0 1-.2l1-.2 1.6.1h4.8c.4 0 1.2.3 1.4.4a35 35 0 002 .7c.5.1 1.6.3 2.2.6.5.3.9.7 1.1 1l.5 1v1.1l-.5.8-.6 1-.8.6s-.5.5-1 .4c-.4 0-4.8-.8-7.6-.8s-7.3.9-7.3.9z"/>
+  <path fill="#c8b100" d="M133.3 207c0-1.3.6-2.3 1.3-2.3.8 0 1.4 1 1.4 2.4 0 1.3-.6 2.4-1.4 2.4s-1.3-1.1-1.3-2.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M133.3 207c0-1.3.6-2.3 1.3-2.3.8 0 1.4 1 1.4 2.4 0 1.3-.6 2.4-1.4 2.4s-1.3-1.1-1.3-2.5z"/>
+  <path fill="#c8b100" d="M134 207c0-1.2.3-2.1.7-2.1.3 0 .6 1 .6 2.1 0 1.3-.3 2.2-.6 2.2-.4 0-.6-1-.6-2.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134 207c0-1.2.3-2.1.7-2.1.3 0 .6 1 .6 2.1 0 1.3-.3 2.2-.6 2.2-.4 0-.6-1-.6-2.2z"/>
+  <path fill="#c8b100" d="M133.8 204.5c0-.4.4-.8.8-.8s1 .4 1 .8c0 .5-.5.9-1 .9s-.8-.4-.8-.9"/>
+  <path fill="#c8b100" d="M135.3 204.2v.6h-1.4v-.6h.5V203h-.7v-.6h.7v-.5h.5v.5h.6v.6h-.6v1.2h.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M135.3 204.2v.6h-1.4v-.6h.5V203h-.7v-.6h.7v-.5h.5v.5h.6v.6h-.6v1.2h.4"/>
+  <path fill="#c8b100" d="M135.9 204.2v.6h-2.5v-.6h1V203h-.7v-.6h.7v-.5h.5v.5h.6v.6h-.6v1.2h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M135.9 204.2v.6h-2.5v-.6h1V203h-.7v-.6h.7v-.5h.5v.5h.6v.6h-.6v1.2h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.9 203.7c.4.1.6.4.6.8 0 .5-.4.9-.8.9s-1-.4-1-.9c0-.4.3-.7.7-.8"/>
+  <path fill="#c8b100" d="M134.7 213.2H130v-1.1l-.3-1.2-.2-1.5c-1.3-1.7-2.5-2.8-2.9-2.5.1-.3.2-.6.5-.7 1.1-.7 3.5 1 5.2 3.6l.5.7h3.8l.4-.7c1.8-2.7 4.1-4.3 5.2-3.6.3.1.4.4.5.7-.4-.3-1.6.8-2.9 2.5l-.2 1.5-.2 1.2-.1 1.1h-4.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.7 213.2H130v-1.1l-.3-1.2-.2-1.5c-1.3-1.7-2.5-2.8-2.9-2.5.1-.3.2-.6.5-.7 1.1-.7 3.5 1 5.2 3.6l.5.7h3.8l.4-.7c1.8-2.7 4.1-4.3 5.2-3.6.3.1.4.4.5.7-.4-.3-1.6.8-2.9 2.5l-.2 1.5-.2 1.2-.1 1.1h-4.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M126.8 206.8c1-.5 3 1.1 4.6 3.6m11-3.6c-.8-.5-2.8 1.1-4.5 3.6"/>
+  <path fill="#c8b100" d="M127.8 215.3l-.5-1a27.3 27.3 0 0114.7 0l-.5.8a5.7 5.7 0 00-.3.8 22.9 22.9 0 00-6.6-.8c-2.6 0-5.2.3-6.5.8l-.3-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M127.8 215.3l-.5-1a27.3 27.3 0 0114.7 0l-.5.8a5.7 5.7 0 00-.3.8 22.9 22.9 0 00-6.6-.8c-2.6 0-5.2.3-6.5.8l-.3-.6"/>
+  <path fill="#c8b100" d="M134.6 217.7c2.4 0 5-.4 5.9-.6.6-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4-1.4-.5-4-.8-6.5-.8s-5 .3-6.4.8c-.2 0-.3.2-.4.3 0 .4.3.7 1 .9 1 .2 3.5.6 5.8.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.6 217.7c2.4 0 5-.4 5.9-.6.6-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4-1.4-.5-4-.8-6.5-.8s-5 .3-6.4.8c-.2 0-.3.2-.4.3 0 .4.3.7 1 .9 1 .2 3.5.6 5.8.6z"/>
+  <path fill="#c8b100" d="M142.1 213.2l-.5-.5s-.6.3-1.3.2c-.6 0-.9-1-.9-1s-.7.7-1.3.7c-.7 0-1-.6-1-.6s-.7.5-1.3.4c-.6 0-1.2-.8-1.2-.8s-.6.8-1.2.8c-.6.1-1-.5-1-.5s-.4.6-1.1.7-1.4-.6-1.4-.6-.5.7-1 1c-.5 0-1.2-.4-1.2-.4l-.2.5-.3.1.2.5a27 27 0 017.2-.9c3 0 5.5.4 7.4 1l.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M142.1 213.2l-.5-.5s-.6.3-1.3.2c-.6 0-.9-1-.9-1s-.7.7-1.3.7c-.7 0-1-.6-1-.6s-.7.5-1.3.4c-.6 0-1.2-.8-1.2-.8s-.6.8-1.2.8c-.6.1-1-.5-1-.5s-.4.6-1.1.7-1.4-.6-1.4-.6-.5.7-1 1c-.5 0-1.2-.4-1.2-.4l-.2.5-.3.1.2.5a27 27 0 017.2-.9c3 0 5.5.4 7.4 1l.2-.6z"/>
+  <path fill="#c8b100" d="M134.7 210.7h.2a1 1 0 000 .4c0 .6.4 1 1 1a1 1 0 001-.7l.2-.3v.4c.1.5.6.8 1.1.8.6 0 1-.4 1-1v-.1l.4-.4.2.5a.9.9 0 00-.1.4 1 1 0 001 1c.4 0 .7-.2.9-.5l.2-.2v.3c0 .3.1.6.4.7 0 0 .4 0 1-.4l.7-.7v.4s-.5.8-1 1c-.2.2-.5.4-.8.3-.3 0-.6-.3-.7-.6-.2.2-.4.2-.7.2-.6 0-1.2-.3-1.4-.8-.3.3-.7.5-1.1.5a1.6 1.6 0 01-1.2-.6 1.6 1.6 0 01-1 .4 1.6 1.6 0 01-1.3-.6 1.6 1.6 0 01-2.4.2 1.6 1.6 0 01-1.2.6 1.5 1.5 0 01-1.1-.5c-.2.5-.8.8-1.4.8-.2 0-.5 0-.7-.2-.1.3-.4.6-.7.6-.3 0-.6 0-.9-.2l-1-1 .1-.5.8.7c.5.4.9.4.9.4.3 0 .4-.4.4-.7v-.3l.2.2c.2.3.5.5.9.5a1 1 0 001-1 .9.9 0 000-.4v-.5l.4.4a.7.7 0 000 .1c0 .6.5 1 1 1 .6 0 1-.3 1.1-.9v-.3l.2.3c.2.4.6.7 1 .7.7 0 1.1-.4 1.1-1a1 1 0 000-.3h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.7 210.7h.2a1 1 0 000 .4c0 .6.4 1 1 1a1 1 0 001-.7l.2-.3v.4c.1.5.6.8 1.1.8.6 0 1-.4 1-1v-.1l.4-.4.2.5a.9.9 0 00-.1.4 1 1 0 001 1c.4 0 .7-.2.9-.5l.2-.2v.3c0 .3.1.6.4.7 0 0 .4 0 1-.4l.7-.7v.4s-.5.8-1 1c-.2.2-.5.4-.8.3-.3 0-.6-.3-.7-.6-.2.2-.4.2-.7.2-.6 0-1.2-.3-1.4-.8-.3.3-.7.5-1.1.5a1.6 1.6 0 01-1.2-.6 1.6 1.6 0 01-1 .4 1.6 1.6 0 01-1.3-.6 1.6 1.6 0 01-2.4.2 1.6 1.6 0 01-1.2.6 1.5 1.5 0 01-1.1-.5c-.2.5-.8.8-1.4.8-.2 0-.5 0-.7-.2-.1.3-.4.6-.7.6-.3 0-.6 0-.9-.2l-1-1 .1-.5.8.7c.5.4.9.4.9.4.3 0 .4-.4.4-.7v-.3l.2.2c.2.3.5.5.9.5a1 1 0 001-1 .9.9 0 000-.4v-.5l.4.4a.7.7 0 000 .1c0 .6.5 1 1 1 .6 0 1-.3 1.1-.9v-.3l.2.3c.2.4.6.7 1 .7.7 0 1.1-.4 1.1-1a1 1 0 000-.3h.3z"/>
+  <path fill="#c8b100" d="M134.6 213.3c-2.9 0-5.5.4-7.3 1l-.3-.2.1-.3a27 27 0 017.5-1c3 0 5.7.4 7.6 1 0 0 .2.2.1.3l-.3.2a27.3 27.3 0 00-7.4-1"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M134.6 213.3c-2.9 0-5.5.4-7.3 1l-.3-.2.1-.3a27 27 0 017.5-1c3 0 5.7.4 7.6 1 0 0 .2.2.1.3l-.3.2a27.3 27.3 0 00-7.4-1z"/>
+  <path fill="#fff" d="M131.8 214.4c0-.3.2-.4.5-.4a.4.4 0 01.4.4c0 .2-.2.4-.4.4a.4.4 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M131.8 214.4c0-.3.2-.4.5-.4a.4.4 0 01.4.4c0 .2-.2.4-.4.4a.4.4 0 01-.5-.4z"/>
+  <path fill="#ad1519" d="M134.7 214.5h-1c-.1 0-.3 0-.3-.3l.3-.3h2a.3.3 0 01.2.3.3.3 0 01-.3.3h-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.7 214.5h-1c-.1 0-.3 0-.3-.3l.3-.3h2a.3.3 0 01.2.3.3.3 0 01-.3.3h-1"/>
+  <path fill="#058e6e" d="M130 214.9h-.7c-.1 0-.3 0-.3-.2a.3.3 0 01.2-.3l.7-.1.7-.1c.2 0 .3 0 .4.2a.3.3 0 01-.3.4h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M130 214.9h-.7c-.1 0-.3 0-.3-.2a.3.3 0 01.2-.3l.7-.1.7-.1c.2 0 .3 0 .4.2a.3.3 0 01-.3.4h-.7"/>
+  <path fill="#ad1519" d="M127.3 215.3l.3-.4h.7l-.4.6-.6-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M127.3 215.3l.3-.4h.7l-.4.6-.6-.2"/>
+  <path fill="#fff" d="M136.6 214.4c0-.3.2-.4.4-.4a.4.4 0 01.5.4.4.4 0 01-.5.4.4.4 0 01-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M136.6 214.4c0-.3.2-.4.4-.4a.4.4 0 01.5.4.4.4 0 01-.5.4.4.4 0 01-.4-.4z"/>
+  <path fill="#058e6e" d="M139.3 214.9h.6a.3.3 0 00.4-.2.3.3 0 00-.3-.3l-.6-.1-.7-.1c-.2 0-.3 0-.4.2 0 .2.1.3.3.4h.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M139.3 214.9h.6a.3.3 0 00.4-.2.3.3 0 00-.3-.3l-.6-.1-.7-.1c-.2 0-.3 0-.4.2 0 .2.1.3.3.4h.7"/>
+  <path fill="#ad1519" d="M142 215.4l-.3-.5h-.7l.3.6.6-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M142 215.4l-.3-.5h-.7l.3.6.6-.1"/>
+  <path fill="#ad1519" d="M134.6 217.1a25 25 0 01-6-.6 25.5 25.5 0 0112.1 0c-1.6.4-3.7.6-6 .6"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M134.6 217.1a25 25 0 01-6-.6 25.5 25.5 0 0112.1 0c-1.6.4-3.7.6-6 .6z"/>
+  <path fill="#c8b100" d="M142 212l-.1-.3c-.2 0-.3 0-.4.2 0 .2 0 .4.2.4 0 0 .2 0 .3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M142 212l-.1-.3c-.2 0-.3 0-.4.2 0 .2 0 .4.2.4 0 0 .2 0 .3-.3z"/>
+  <path fill="#c8b100" d="M137.3 211.2c0-.2 0-.4-.2-.4 0 0-.2.1-.2.3 0 .2 0 .4.2.4l.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M137.3 211.2c0-.2 0-.4-.2-.4 0 0-.2.1-.2.3 0 .2 0 .4.2.4l.3-.3z"/>
+  <path fill="#c8b100" d="M132 211.2l.1-.4c.2 0 .3.1.3.3 0 .2 0 .4-.2.4l-.2-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M132 211.2l.1-.4c.2 0 .3.1.3.3 0 .2 0 .4-.2.4l-.2-.3z"/>
+  <path fill="#c8b100" d="M127.3 212l.1-.3c.2 0 .3 0 .4.2 0 .2 0 .4-.2.4 0 0-.2 0-.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M127.3 212l.1-.3c.2 0 .3 0 .4.2 0 .2 0 .4-.2.4 0 0-.2 0-.3-.3z"/>
+  <path fill="#c8b100" d="M134.6 208.5l-.8.5.6 1.3.2.1.2-.1.7-1.3-.9-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.6 208.5l-.8.5.6 1.3.2.1.2-.1.7-1.3-.9-.5"/>
+  <path fill="#c8b100" d="M132.8 210.5l.4.5 1.3-.4.1-.2-.1-.2-1.3-.3-.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M132.8 210.5l.4.5 1.3-.4.1-.2-.1-.2-1.3-.3-.4.6"/>
+  <path fill="#c8b100" d="M136.4 210.5l-.3.5-1.3-.4-.2-.2.2-.2 1.3-.3.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M136.4 210.5l-.3.5-1.3-.4-.2-.2.2-.2 1.3-.3.3.6"/>
+  <path fill="#c8b100" d="M129.3 209l-.7.7.9 1 .2.1.1-.1.3-1.3-.8-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M129.3 209l-.7.7.9 1 .2.1.1-.1.3-1.3-.8-.3"/>
+  <path fill="#c8b100" d="M128 211.2l.4.5 1.2-.6v-.2l-.1-.2-1.3-.1-.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M128 211.2l.4.5 1.2-.6v-.2l-.1-.2-1.3-.1-.3.6"/>
+  <path fill="#c8b100" d="M131.5 210.5l-.3.6H130l-.2-.2.1-.3 1.2-.6.5.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M131.5 210.5l-.3.6H130l-.2-.2.1-.3 1.2-.6.5.5"/>
+  <path fill="#c8b100" d="M126.6 211.4v.6l-1.4.2-.2-.1v-.2l1-.9.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M126.6 211.4v.6l-1.4.2-.2-.1v-.2l1-.9.6.4"/>
+  <path fill="#c8b100" d="M129.2 210.9c0-.3.2-.5.5-.5s.5.2.5.5a.5.5 0 01-.5.4.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M129.2 210.9c0-.3.2-.5.5-.5s.5.2.5.5a.5.5 0 01-.5.4.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M140 209l.7.7-.9 1-.2.1-.1-.1-.3-1.3.8-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M140 209l.7.7-.9 1-.2.1-.1-.1-.3-1.3.8-.3"/>
+  <path fill="#c8b100" d="M141.4 211.2l-.5.5-1.2-.6v-.2l.1-.2 1.3-.1.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M141.4 211.2l-.5.5-1.2-.6v-.2l.1-.2 1.3-.1.3.6"/>
+  <path fill="#c8b100" d="M137.8 210.5l.3.6h1.3l.2-.2-.1-.3-1.2-.6-.5.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M137.8 210.5l.3.6h1.3l.2-.2-.1-.3-1.2-.6-.5.5"/>
+  <path fill="#c8b100" d="M142.5 211.4l.1.6 1.3.2.2-.1v-.2l-1-.9-.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M142.5 211.4l.1.6 1.3.2.2-.1v-.2l-1-.9-.6.4"/>
+  <path fill="#c8b100" d="M134.2 210.4a.5.5 0 01.4-.4c.3 0 .5.2.5.4a.5.5 0 01-.5.5.5.5 0 01-.4-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M134.2 210.4a.5.5 0 01.4-.4c.3 0 .5.2.5.4a.5.5 0 01-.5.5.5.5 0 01-.4-.5z"/>
+  <path fill="#c8b100" d="M139.1 210.9c0-.3.3-.5.5-.5a.5.5 0 01.5.5.5.5 0 01-.5.4.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M139.1 210.9c0-.3.3-.5.5-.5a.5.5 0 01.5.5.5.5 0 01-.5.4.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M124.8 212.2l-.6-.7c-.2-.2-.7-.3-.7-.3 0-.1.3-.3.6-.3a.5.5 0 01.4.2v-.2s.3 0 .4.3v1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M124.8 212.2l-.6-.7c-.2-.2-.7-.3-.7-.3 0-.1.3-.3.6-.3a.5.5 0 01.4.2v-.2s.3 0 .4.3v1z"/>
+  <path fill="#c8b100" d="M124.8 212c.1-.2.4-.2.5 0 .2.1.3.3.2.5l-.5-.1c-.2-.1-.3-.4-.2-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M124.8 212c.1-.2.4-.2.5 0 .2.1.3.3.2.5l-.5-.1c-.2-.1-.3-.4-.2-.5z"/>
+  <path fill="#c8b100" d="M144.3 212.2l.6-.7c.2-.2.7-.3.7-.3 0-.1-.3-.3-.6-.3a.6.6 0 00-.4.2v-.2s-.3 0-.4.3v.7l.1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M144.3 212.2l.6-.7c.2-.2.7-.3.7-.3 0-.1-.3-.3-.6-.3a.6.6 0 00-.4.2v-.2s-.3 0-.4.3v.7l.1.3z"/>
+  <path fill="#c8b100" d="M144.3 212c0-.2-.3-.2-.5 0-.2.1-.2.3-.1.5l.5-.1c.2-.1.2-.4.1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M144.3 212c0-.2-.3-.2-.5 0-.2.1-.2.3-.1.5l.5-.1c.2-.1.2-.4.1-.5z"/>
+  <path fill="#c8b100" d="M124 223h21.4v-5.5H124v5.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M124 223h21.4v-5.5H124v5.6z"/>
+  <path fill="#c8b100" d="M126.2 226.8a1 1 0 01.4 0h16.5a1.4 1.4 0 01-1-1.2c0-.6.5-1.1 1-1.3a1.7 1.7 0 01-.4 0h-16a1.4 1.4 0 01-.5 0c.6.2 1 .7 1 1.3a1.3 1.3 0 01-1 1.2"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M126.2 226.8a1 1 0 01.4 0h16.5a1.4 1.4 0 01-1-1.2c0-.6.5-1.1 1-1.3a1.7 1.7 0 01-.4 0h-16a1.4 1.4 0 01-.5 0c.6.2 1 .7 1 1.3a1.3 1.3 0 01-1 1.2z"/>
+  <path fill="#c8b100" d="M126.6 226.8h16c.6 0 1 .3 1 .7 0 .4-.4.8-1 .8h-16c-.5 0-1-.4-1-.8s.5-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M126.6 226.8h16c.6 0 1 .3 1 .7 0 .4-.4.8-1 .8h-16c-.5 0-1-.4-1-.8s.5-.8 1-.8z"/>
+  <path fill="#c8b100" d="M126.6 223h16c.6 0 1 .4 1 .7 0 .4-.4.6-1 .6h-16c-.5 0-1-.2-1-.6 0-.3.5-.6 1-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M126.6 223h16c.6 0 1 .4 1 .7 0 .4-.4.6-1 .6h-16c-.5 0-1-.2-1-.6 0-.3.5-.6 1-.6z"/>
+  <path fill="#005bbf" d="M149.6 317.4c-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8c-1.4 0-2.7.3-3.7.8a8.3 8.3 0 01-3.8.8c-1.5 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.7-.8 8 8 0 00-3.7.8 8.3 8.3 0 01-3.8.8v2.4c1.5 0 2.8-.4 3.8-.9a8.2 8.2 0 013.7-.8c1.4 0 2.7.3 3.7.8s2.2.9 3.7.9a8.4 8.4 0 003.8-.9c1-.5 2.3-.8 3.7-.8 1.5 0 2.8.3 3.8.8s2.2.9 3.7.9v-2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M149.6 317.4c-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8c-1.4 0-2.7.3-3.7.8a8.3 8.3 0 01-3.8.8c-1.5 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.7-.8 8 8 0 00-3.7.8 8.3 8.3 0 01-3.8.8v2.4c1.5 0 2.8-.4 3.8-.9a8.2 8.2 0 013.7-.8c1.4 0 2.7.3 3.7.8s2.2.9 3.7.9a8.4 8.4 0 003.8-.9c1-.5 2.3-.8 3.7-.8 1.5 0 2.8.3 3.8.8s2.2.9 3.7.9v-2.4z"/>
+  <path fill="#ccc" d="M149.6 319.8a8 8 0 01-3.7-.9 8.3 8.3 0 00-3.8-.8c-1.4 0-2.7.3-3.7.8s-2.3.9-3.8.9-2.8-.4-3.7-.9a8.4 8.4 0 00-3.7-.8 8.2 8.2 0 00-3.7.8c-1 .5-2.3.9-3.8.9v2.3c1.5 0 2.8-.4 3.8-.9a8.1 8.1 0 013.7-.7c1.4 0 2.7.2 3.7.7a8.3 8.3 0 007.5 0 8.5 8.5 0 017.5.1 8.1 8.1 0 003.7.8v-2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M149.6 319.8a8 8 0 01-3.7-.9 8.3 8.3 0 00-3.8-.8c-1.4 0-2.7.3-3.7.8s-2.3.9-3.8.9-2.8-.4-3.7-.9a8.4 8.4 0 00-3.7-.8 8.2 8.2 0 00-3.7.8c-1 .5-2.3.9-3.8.9v2.3c1.5 0 2.8-.4 3.8-.9a8.1 8.1 0 013.7-.7c1.4 0 2.7.2 3.7.7a8.3 8.3 0 007.5 0 8.5 8.5 0 017.5.1 8.1 8.1 0 003.7.8v-2.3"/>
+  <path fill="#005bbf" d="M149.6 322a7 7 0 01-3.7-.8 8.3 8.3 0 00-3.8-.7c-1.4 0-2.7.2-3.7.7-1 .6-2.3.9-3.8.9s-2.8-.4-3.7-.9a8.4 8.4 0 00-3.7-.8 8 8 0 00-3.7.8c-1 .5-2.3.9-3.8.9v2.3c1.5 0 2.8-.3 3.8-.9a10.2 10.2 0 017.4 0 7 7 0 003.7.9 8.4 8.4 0 003.8-.8c1-.5 2.3-.8 3.7-.8 1.5 0 2.8.3 3.8.8s2.2.8 3.7.8V322"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M149.6 322a7 7 0 01-3.7-.8 8.3 8.3 0 00-3.8-.7c-1.4 0-2.7.2-3.7.7-1 .6-2.3.9-3.8.9s-2.8-.4-3.7-.9a8.4 8.4 0 00-3.7-.8 8 8 0 00-3.7.8c-1 .5-2.3.9-3.8.9v2.3c1.5 0 2.8-.3 3.8-.9a10.2 10.2 0 017.4 0 7 7 0 003.7.9 8.4 8.4 0 003.8-.8c1-.5 2.3-.8 3.7-.8 1.5 0 2.8.3 3.8.8s2.2.8 3.7.8V322"/>
+  <path fill="#ccc" d="M149.6 326.7a8 8 0 01-3.7-.8c-1-.5-2.3-.8-3.7-.8a8.4 8.4 0 00-3.8.8c-1 .5-2.3.8-3.8.8a7 7 0 01-3.7-.9 8.4 8.4 0 00-3.7-.7c-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v-2.3a8.3 8.3 0 003.8-.9 10.2 10.2 0 017.4 0 8 8 0 003.7.9 8.4 8.4 0 003.8-.8c1-.5 2.3-.8 3.8-.8 1.4 0 2.7.3 3.7.8s2.3.8 3.7.8v2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M149.6 326.7a8 8 0 01-3.7-.8c-1-.5-2.3-.8-3.7-.8a8.4 8.4 0 00-3.8.8c-1 .5-2.3.8-3.8.8a7 7 0 01-3.7-.9 8.4 8.4 0 00-3.7-.7c-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v-2.3a8.3 8.3 0 003.8-.9 10.2 10.2 0 017.4 0 8 8 0 003.7.9 8.4 8.4 0 003.8-.8c1-.5 2.3-.8 3.8-.8 1.4 0 2.7.3 3.7.8s2.3.8 3.7.8v2.3"/>
+  <path fill="#005bbf" d="M149.6 329a8.1 8.1 0 01-3.7-.8c-1-.5-2.3-.8-3.7-.8a8.4 8.4 0 00-3.8.8c-1 .5-2.3.8-3.8.8a7 7 0 01-3.7-.9 8.4 8.4 0 00-3.7-.7c-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v-2.3a8.3 8.3 0 003.8-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.7.3 3.7.7a8.4 8.4 0 007.5 0c1-.4 2.3-.7 3.8-.7 1.4 0 2.7.3 3.7.8s2.2.8 3.7.8v2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M149.6 329a8.1 8.1 0 01-3.7-.8c-1-.5-2.3-.8-3.7-.8a8.4 8.4 0 00-3.8.8c-1 .5-2.3.8-3.8.8a7 7 0 01-3.7-.9 8.4 8.4 0 00-3.7-.7c-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v-2.3a8.3 8.3 0 003.8-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.7.3 3.7.7a8.4 8.4 0 007.5 0c1-.4 2.3-.7 3.8-.7 1.4 0 2.7.3 3.7.8s2.2.8 3.7.8v2.3z"/>
+  <path fill="#c8b100" d="M126.2 308l.2.5c0 1.5-1.3 2.6-2.7 2.6h22a2.7 2.7 0 01-2.7-2.6v-.5a1.3 1.3 0 01-.3 0h-16a1.4 1.4 0 01-.5 0"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M126.2 308l.2.5c0 1.5-1.3 2.6-2.7 2.6h22a2.7 2.7 0 01-2.7-2.6v-.5a1.3 1.3 0 01-.3 0h-16a1.4 1.4 0 01-.5 0z"/>
+  <path fill="#c8b100" d="M126.6 306.5h16c.6 0 1 .3 1 .8 0 .4-.4.7-1 .7h-16c-.5 0-1-.3-1-.8 0-.4.5-.7 1-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M126.6 306.5h16c.6 0 1 .3 1 .8 0 .4-.4.7-1 .7h-16c-.5 0-1-.3-1-.8 0-.4.5-.7 1-.7z"/>
+  <path fill="#c8b100" d="M123.7 316.7h22V311h-22v5.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M123.7 316.7h22V311h-22v5.6z"/>
+  <path fill="#ad1519" d="M122 286.7c-2.2 1.2-3.7 2.5-3.4 3.2 0 .6.8 1 1.8 1.6 1.5 1.1 2.5 3 1.7 4a5.5 5.5 0 00-.1-8.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M122 286.7c-2.2 1.2-3.7 2.5-3.4 3.2 0 .6.8 1 1.8 1.6 1.5 1.1 2.5 3 1.7 4a5.5 5.5 0 00-.1-8.8z"/>
+  <path fill="#ccc" d="M126.8 305.6h15.6V229h-15.6v76.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M138 229.2v76.3m1.7-76.3v76.3m-12.9 0h15.6v-76.4h-15.6v76.5z"/>
+  <path fill="#ad1519" d="M158.4 257.7a49.6 49.6 0 00-23.3-2c-9.4 1.6-16.5 5.3-15.9 8.4v.2l-3.5-8.2c-.6-3.3 7.2-7.5 17.6-9.2a43 43 0 019.2-.7c6.6 0 12.4.8 15.8 2.1v9.4"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M158.4 257.7a49.6 49.6 0 00-23.3-2c-9.4 1.6-16.5 5.3-15.9 8.4v.2l-3.5-8.2c-.6-3.3 7.2-7.5 17.6-9.2a43 43 0 019.2-.7c6.6 0 12.4.8 15.8 2.1v9.4"/>
+  <path fill="#ad1519" d="M126.8 267.3c-4.3-.3-7.3-1.4-7.6-3.2-.3-1.5 1.2-3 3.8-4.5 1.2.1 2.5.3 3.8.3v7.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M126.8 267.3c-4.3-.3-7.3-1.4-7.6-3.2-.3-1.5 1.2-3 3.8-4.5 1.2.1 2.5.3 3.8.3v7.4"/>
+  <path fill="#ad1519" d="M142.5 261.5c2.7.4 4.7 1 5.7 1.9l.1.2c.5 1-1.9 3-5.9 5.4v-7.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M142.5 261.5c2.7.4 4.7 1 5.7 1.9l.1.2c.5 1-1.9 3-5.9 5.4v-7.5"/>
+  <path fill="#ad1519" d="M117.1 282c-.4-1.2 3.8-3.6 9.8-5.8l7.8-3.2c8.3-3.7 14.4-7.9 13.6-9.4v-.2c.4.4 1 8 1 8 .8 1.3-4.8 5.5-12.4 9.1-2.5 1.2-7.6 3-10 4-4.4 1.4-8.7 4.3-8.3 5.3l-1.5-7.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M117.1 282c-.4-1.2 3.8-3.6 9.8-5.8l7.8-3.2c8.3-3.7 14.4-7.9 13.6-9.4v-.2c.4.4 1 8 1 8 .8 1.3-4.8 5.5-12.4 9.1-2.5 1.2-7.6 3-10 4-4.4 1.4-8.7 4.3-8.3 5.3l-1.5-7.7z"/>
+  <path fill="#c8b100" d="M125.8 254c1.9-.6 3.1-1.5 2.5-3-.4-1-1.4-1-2.8-.6l-2.6 1 2.3 5.8.8-.3.8-.3-1-2.5zm-1.2-2.7l.7-.3c.5-.2 1.2.1 1.4.8.2.5.2 1-.5 1.5a4.4 4.4 0 01-.6.3l-1-2.3m7.3-2.5l-.9.3h-.8l1.3 6.1 4.3-.8-.2-.4v-.4l-2.5.6-1.2-5.3m8.4 5.2c.8-2.2 1.7-4.3 2.7-6.4a5.3 5.3 0 01-1 0 54.8 54.8 0 01-1.8 4.6l-2.4-4.3-1 .1h-1a131.4 131.4 0 013.5 6h1m8.8-4.7l.4-.9a3.4 3.4 0 00-1.7-.6c-1.7-.1-2.7.6-2.8 1.7-.2 2.1 3.2 2 3 3.4 0 .6-.7.9-1.4.8-.8 0-1.4-.5-1.4-1.2h-.3a7.3 7.3 0 01-.4 1.1 4 4 0 001.8.6c1.7.2 3-.5 3.2-1.7.2-2-3.3-2.1-3.1-3.4 0-.5.4-.8 1.3-.7.7 0 1 .4 1.2.9h.2"/>
+  <path fill="#ad1519" d="M277.9 211.6s-.7.8-1.3.9c-.5 0-1.1-.5-1.1-.5s-.5.5-1 .6c-.6.1-1.4-.6-1.4-.6l-1 1c-.6 0-1.1-.3-1.1-.3s-.3.4-.7.6h-.4l-.6-.4-.7-.7-.5-.3-.4-1v-.5c-.1-.6.8-1.4 2.2-1.7a3.9 3.9 0 012 0c.5-.5 1.7-.8 3-.8s2.4.3 3 .7a5.5 5.5 0 012.9-.7c1.3 0 2.5.3 3 .8.5-.2 1.2-.2 2 0 1.4.3 2.3 1 2.2 1.7v.5l-.4 1-.6.3-.6.7-.6.3s-.3.2-.4 0c-.4-.1-.7-.5-.7-.5s-.6.4-1 .2c-.5-.2-1-1-1-1s-.9.8-1.4.7c-.6-.1-1-.6-1-.6s-.7.6-1.2.5c-.5-.1-1.2-.9-1.2-.9"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.9 211.6s-.7.8-1.3.9c-.5 0-1.1-.5-1.1-.5s-.5.5-1 .6c-.6.1-1.4-.6-1.4-.6l-1 1c-.6 0-1.1-.3-1.1-.3s-.3.4-.7.6h-.4l-.6-.4-.7-.7-.5-.3-.4-1v-.5c-.1-.6.8-1.4 2.2-1.7a3.9 3.9 0 012 0c.5-.5 1.7-.8 3-.8s2.4.3 3 .7a5.5 5.5 0 012.9-.7c1.3 0 2.5.3 3 .8.5-.2 1.2-.2 2 0 1.4.3 2.3 1 2.2 1.7v.5l-.4 1-.6.3-.6.7-.6.3s-.3.2-.4 0c-.4-.1-.7-.5-.7-.5s-.6.4-1 .2c-.5-.2-1-1-1-1s-.9.8-1.4.7c-.6-.1-1-.6-1-.6s-.7.6-1.2.5c-.5-.1-1.2-.9-1.2-.9z"/>
+  <path fill="#c8b100" d="M276.5 207.6c0-1 .6-2 1.3-2 .8 0 1.3 1 1.3 2s-.5 1.8-1.3 1.8c-.7 0-1.3-.8-1.3-1.9"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M276.5 207.6c0-1 .6-2 1.3-2 .8 0 1.3 1 1.3 2s-.5 1.8-1.3 1.8c-.7 0-1.3-.8-1.3-1.9z"/>
+  <path fill="#c8b100" d="M277.3 207.6c0-1 .2-1.8.5-1.8.4 0 .7.8.7 1.8s-.3 1.7-.6 1.7c-.4 0-.6-.8-.6-1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.3 207.6c0-1 .2-1.8.5-1.8.4 0 .7.8.7 1.8s-.3 1.7-.6 1.7c-.4 0-.6-.8-.6-1.8z"/>
+  <path fill="#c8b100" d="M271 215.3a4.5 4.5 0 00-.5-1 27.4 27.4 0 0114.8 0l-.6.8a5.2 5.2 0 00-.3.8 22.9 22.9 0 00-6.6-.8c-2.6 0-5.2.3-6.6.8l-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M271 215.3a4.5 4.5 0 00-.5-1 27.4 27.4 0 0114.8 0l-.6.8a5.2 5.2 0 00-.3.8 22.9 22.9 0 00-6.6-.8c-2.6 0-5.2.3-6.6.8l-.2-.6"/>
+  <path fill="#c8b100" d="M277.8 217.7c2.4 0 5-.4 5.9-.6.6-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a24.1 24.1 0 00-6.5-.8c-2.5 0-5 .3-6.4.8-.2 0-.3.2-.4.3 0 .4.3.7 1 .9 1 .2 3.5.6 5.8.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.8 217.7c2.4 0 5-.4 5.9-.6.6-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a24.1 24.1 0 00-6.5-.8c-2.5 0-5 .3-6.4.8-.2 0-.3.2-.4.3 0 .4.3.7 1 .9 1 .2 3.5.6 5.8.6z"/>
+  <path fill="#fff" d="M283.5 208.4c0-.2.2-.4.4-.4s.5.2.5.4-.2.4-.5.4a.4.4 0 01-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M283.5 208.4c0-.2.2-.4.4-.4s.5.2.5.4-.2.4-.5.4a.4.4 0 01-.4-.4zm-.2-1.4a.4.4 0 01.4-.4c.2 0 .4.1.4.4s-.2.4-.4.4a.4.4 0 01-.4-.4zm-1.1-1c0-.2.2-.3.4-.3s.4.1.4.4c0 .2-.2.4-.4.4a.4.4 0 01-.4-.5zm-1.4-.4c0-.2.2-.4.4-.4.3 0 .5.2.5.4s-.2.4-.4.4-.5-.2-.5-.4zm-1.4 0c0-.2.2-.3.5-.3s.4.1.4.4c0 .2-.2.4-.4.4a.4.4 0 01-.5-.4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M287.8 211.2l.2-1a2.7 2.7 0 00-2.7-2.8c-.5 0-1 .1-1.3.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M283 209.2l.2-.8c0-1.1-1.1-2-2.5-2-.6 0-1.2.2-1.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M288.2 210c0-.3.2-.5.4-.5s.4.2.4.4c0 .3-.2.4-.4.4s-.4-.1-.4-.4zm-.2-1.6c0-.2.2-.4.4-.4a.4.4 0 01.5.4c0 .2-.2.4-.4.4-.3 0-.5-.2-.5-.4zm-1-1.1a.4.4 0 01.5-.4c.2 0 .4.1.4.4a.4.4 0 01-.4.4.4.4 0 01-.5-.4zm-1.3-.7c0-.2.2-.4.5-.4s.4.2.4.4c0 .3-.2.5-.4.5a.4.4 0 01-.5-.5zm-1.4.1c0-.2.2-.4.5-.4s.4.2.4.4-.2.4-.4.4-.5-.2-.5-.4z"/>
+  <path fill="#c8b100" d="M285.3 213.2l-.5-.5s-.6.3-1.3.2c-.6 0-.9-1-.9-1s-.7.7-1.3.7c-.7 0-1-.6-1-.6s-.7.5-1.3.4c-.6 0-1.2-.8-1.2-.8s-.6.8-1.2.8c-.6.1-1-.5-1-.5s-.3.6-1.1.7-1.4-.6-1.4-.6-.4.7-1 1c-.5 0-1.2-.4-1.2-.4l-.1.5-.3.1.1.5a27 27 0 017.3-.9c2.8 0 5.4.4 7.3 1l.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M285.3 213.2l-.5-.5s-.6.3-1.3.2c-.6 0-.9-1-.9-1s-.7.7-1.3.7c-.7 0-1-.6-1-.6s-.7.5-1.3.4c-.6 0-1.2-.8-1.2-.8s-.6.8-1.2.8c-.6.1-1-.5-1-.5s-.3.6-1.1.7-1.4-.6-1.4-.6-.4.7-1 1c-.5 0-1.2-.4-1.2-.4l-.1.5-.3.1.1.5a27 27 0 017.3-.9c2.8 0 5.4.4 7.3 1l.2-.6z"/>
+  <path fill="#fff" d="M271.3 208.4c0-.2.2-.4.4-.4s.4.2.4.4a.4.4 0 01-.4.4.4.4 0 01-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M271.3 208.4c0-.2.2-.4.4-.4s.4.2.4.4a.4.4 0 01-.4.4.4.4 0 01-.4-.4zm.2-1.4c0-.3.2-.4.4-.4s.5.1.5.4-.2.4-.5.4a.4.4 0 01-.4-.4zm1-1c0-.2.3-.3.5-.3s.5.1.5.4c0 .2-.2.4-.5.4a.4.4 0 01-.4-.5zm1.4-.4c0-.2.2-.4.5-.4s.4.2.4.4-.2.4-.4.4-.5-.2-.5-.4zm1.4 0c0-.2.2-.3.5-.3.2 0 .4.1.4.4 0 .2-.2.4-.4.4a.4.4 0 01-.5-.4z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M267.8 211.2a2.8 2.8 0 01-.2-1 2.7 2.7 0 012.7-2.8c.5 0 1 .1 1.4.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M272.7 209.2a1.7 1.7 0 01-.3-.8c0-1 1.2-2 2.6-2a3 3 0 011.5.4"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M266.6 210c0-.3.2-.5.4-.5.3 0 .4.2.4.4a.4.4 0 01-.4.4c-.2 0-.4-.1-.4-.4zm.1-1.6c0-.2.3-.4.5-.4s.4.2.4.4-.2.4-.4.4-.4-.2-.4-.4zm1-1.1c0-.3.2-.4.5-.4a.4.4 0 01.4.4.4.4 0 01-.4.4.4.4 0 01-.5-.4zm1.3-.7c0-.2.2-.4.5-.4.2 0 .4.2.4.4 0 .3-.2.5-.4.5a.4.4 0 01-.5-.5zm1.4.1c0-.2.2-.4.5-.4a.4.4 0 01.4.4.4.4 0 01-.4.4c-.3 0-.5-.2-.5-.4z"/>
+  <path fill="#c8b100" d="M277.9 210.7h.2a1 1 0 000 .4c0 .6.5 1 1 1a1 1 0 001-.7l.2-.3v.4c.1.5.6.8 1.1.8.6 0 1-.4 1-1a.7.7 0 000-.1l.4-.4.2.5a1 1 0 00-.1.4 1 1 0 001 1c.4 0 .7-.2.9-.5l.2-.2v.3c0 .3.1.6.4.7 0 0 .4 0 1-.4s.7-.7.7-.7v.4s-.5.8-1 1c-.2.2-.5.4-.8.3-.3 0-.6-.3-.7-.6a1.5 1.5 0 01-.7.2c-.6 0-1.2-.3-1.4-.8a1.5 1.5 0 01-1.1.5c-.5 0-1-.2-1.2-.6a1.5 1.5 0 01-1 .4c-.6 0-1-.2-1.4-.6-.2.4-.7.6-1.2.6-.4 0-.8-.1-1-.4a1.6 1.6 0 01-1.3.6c-.4 0-.8-.2-1.1-.5-.2.5-.8.8-1.4.8-.2 0-.5 0-.7-.2-.1.3-.4.6-.7.6-.3 0-.6 0-.9-.2a4.2 4.2 0 01-1-1l.1-.5.8.7c.5.4.9.4.9.4.3 0 .4-.4.4-.7v-.3l.2.2c.2.3.5.5.9.5a1 1 0 001-1 1 1 0 000-.4v-.5l.4.4v.1c0 .6.5 1 1 1 .6 0 1-.3 1.1-.9v-.3l.2.3c.2.4.6.7 1 .7.6 0 1.1-.4 1.1-1a1 1 0 000-.3h.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.9 210.7h.2a1 1 0 000 .4c0 .6.5 1 1 1a1 1 0 001-.7l.2-.3v.4c.1.5.6.8 1.1.8.6 0 1-.4 1-1a.7.7 0 000-.1l.4-.4.2.5a1 1 0 00-.1.4 1 1 0 001 1c.4 0 .7-.2.9-.5l.2-.2v.3c0 .3.1.6.4.7 0 0 .4 0 1-.4s.7-.7.7-.7v.4s-.5.8-1 1c-.2.2-.5.4-.8.3-.3 0-.6-.3-.7-.6a1.5 1.5 0 01-.7.2c-.6 0-1.2-.3-1.4-.8a1.5 1.5 0 01-1.1.5c-.5 0-1-.2-1.2-.6a1.5 1.5 0 01-1 .4c-.6 0-1-.2-1.4-.6-.2.4-.7.6-1.2.6-.4 0-.8-.1-1-.4a1.6 1.6 0 01-1.3.6c-.4 0-.8-.2-1.1-.5-.2.5-.8.8-1.4.8-.2 0-.5 0-.7-.2-.1.3-.4.6-.7.6-.3 0-.6 0-.9-.2a4.2 4.2 0 01-1-1l.1-.5.8.7c.5.4.9.4.9.4.3 0 .4-.4.4-.7v-.3l.2.2c.2.3.5.5.9.5a1 1 0 001-1 1 1 0 000-.4v-.5l.4.4v.1c0 .6.5 1 1 1 .6 0 1-.3 1.1-.9v-.3l.2.3c.2.4.6.7 1 .7.6 0 1.1-.4 1.1-1a1 1 0 000-.3h.2z"/>
+  <path fill="#c8b100" d="M277.8 213.3c-2.9 0-5.5.4-7.3 1l-.3-.2.1-.3c2-.6 4.6-1 7.5-1 3 0 5.7.4 7.6 1 0 0 .2.2.1.3l-.3.2a27 27 0 00-7.4-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.8 213.3c-2.9 0-5.5.4-7.3 1l-.3-.2.1-.3c2-.6 4.6-1 7.5-1 3 0 5.7.4 7.6 1 0 0 .2.2.1.3l-.3.2a27 27 0 00-7.4-1z"/>
+  <path fill="#fff" d="M275 214.4c0-.3.2-.4.5-.4a.4.4 0 01.4.4.4.4 0 01-.4.4c-.3 0-.5-.2-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M275 214.4c0-.3.2-.4.5-.4a.4.4 0 01.4.4.4.4 0 01-.4.4c-.3 0-.5-.2-.5-.4z"/>
+  <path fill="#ad1519" d="M277.9 214.5h-1c-.1 0-.3 0-.3-.3l.3-.3h2a.3.3 0 01.2.3.3.3 0 01-.3.3h-1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.9 214.5h-1c-.1 0-.3 0-.3-.3l.3-.3h2a.3.3 0 01.2.3.3.3 0 01-.3.3h-1"/>
+  <path fill="#058e6e" d="M273.2 214.9h-.6a.3.3 0 01-.4-.2.3.3 0 01.3-.3l.6-.1.7-.1c.2 0 .3 0 .4.2a.3.3 0 01-.3.4h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M273.2 214.9h-.6a.3.3 0 01-.4-.2.3.3 0 01.3-.3l.6-.1.7-.1c.2 0 .3 0 .4.2a.3.3 0 01-.3.4h-.7"/>
+  <path fill="#ad1519" d="M270.5 215.3l.3-.4h.7l-.4.6-.6-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M270.5 215.3l.3-.4h.7l-.4.6-.6-.2"/>
+  <path fill="#fff" d="M279.8 214.4c0-.3.2-.4.4-.4.3 0 .5.1.5.4 0 .2-.2.4-.5.4a.4.4 0 01-.4-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M279.8 214.4c0-.3.2-.4.4-.4.3 0 .5.1.5.4 0 .2-.2.4-.5.4a.4.4 0 01-.4-.4z"/>
+  <path fill="#058e6e" d="M282.5 214.9h.7a.3.3 0 00.3-.2.3.3 0 00-.2-.3l-.7-.1-.7-.1c-.2 0-.3 0-.4.2 0 .2.1.3.3.4h.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M282.5 214.9h.7a.3.3 0 00.3-.2.3.3 0 00-.2-.3l-.7-.1-.7-.1c-.2 0-.3 0-.4.2 0 .2.1.3.3.4h.7"/>
+  <path fill="#ad1519" d="M285.1 215.4l-.2-.5h-.7l.3.6.6-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M285.1 215.4l-.2-.5h-.7l.3.6.6-.1"/>
+  <path fill="#ad1519" d="M277.8 217.1a25 25 0 01-6-.6 25.4 25.4 0 016-.7c2.4 0 4.5.3 6.1.7-1.6.4-3.7.6-6 .6"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M277.8 217.1a25 25 0 01-6-.6 25.4 25.4 0 016-.7c2.4 0 4.5.3 6.1.7-1.6.4-3.7.6-6 .6z"/>
+  <path fill="#c8b100" d="M285.2 212l-.1-.3c-.2 0-.3 0-.4.2l.1.4c.2 0 .3 0 .4-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M285.2 212l-.1-.3c-.2 0-.3 0-.4.2l.1.4c.2 0 .3 0 .4-.3z"/>
+  <path fill="#c8b100" d="M280.6 211.2c0-.2-.1-.4-.3-.4 0 0-.2.1-.2.3 0 .2 0 .4.2.4l.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M280.6 211.2c0-.2-.1-.4-.3-.4 0 0-.2.1-.2.3 0 .2 0 .4.2.4l.3-.3z"/>
+  <path fill="#c8b100" d="M275.2 211.2c0-.2 0-.4.2-.4l.3.3-.2.4c-.2 0-.3-.2-.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M275.2 211.2c0-.2 0-.4.2-.4l.3.3-.2.4c-.2 0-.3-.2-.3-.3z"/>
+  <path fill="#c8b100" d="M270.5 212l.1-.3c.2 0 .3 0 .4.2l-.1.4c-.2 0-.3 0-.4-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M270.5 212l.1-.3c.2 0 .3 0 .4.2l-.1.4c-.2 0-.3 0-.4-.3z"/>
+  <path fill="#c8b100" d="M277.8 208.5l-.8.5.6 1.3.2.1.3-.1.6-1.3-.9-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.8 208.5l-.8.5.6 1.3.2.1.3-.1.6-1.3-.9-.5"/>
+  <path fill="#c8b100" d="M276 210.5l.4.5 1.3-.4.1-.2-.1-.2-1.3-.3-.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M276 210.5l.4.5 1.3-.4.1-.2-.1-.2-1.3-.3-.4.6"/>
+  <path fill="#c8b100" d="M279.6 210.5l-.3.5-1.3-.4-.1-.2v-.2l1.4-.3.4.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M279.6 210.5l-.3.5-1.3-.4-.1-.2v-.2l1.4-.3.4.6"/>
+  <path fill="#c8b100" d="M272.5 209l-.7.7.9 1 .2.1.2-.1.2-1.3-.8-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M272.5 209l-.7.7.9 1 .2.1.2-.1.2-1.3-.8-.3"/>
+  <path fill="#c8b100" d="M271.1 211.2l.5.5 1.2-.6v-.2l-.1-.2-1.3-.1-.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M271.1 211.2l.5.5 1.2-.6v-.2l-.1-.2-1.3-.1-.3.6"/>
+  <path fill="#c8b100" d="M274.7 210.5l-.3.6h-1.3l-.2-.2.1-.3 1.2-.6.5.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M274.7 210.5l-.3.6h-1.3l-.2-.2.1-.3 1.2-.6.5.5"/>
+  <path fill="#c8b100" d="M269.8 211.4v.6l-1.4.2-.2-.1v-.2l1-.9.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M269.8 211.4v.6l-1.4.2-.2-.1v-.2l1-.9.6.4"/>
+  <path fill="#c8b100" d="M272.4 210.9c0-.3.2-.5.5-.5a.5.5 0 01.5.5.5.5 0 01-.5.4.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M272.4 210.9c0-.3.2-.5.5-.5a.5.5 0 01.5.5.5.5 0 01-.5.4.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M283.2 209l.7.7-.9 1-.2.1-.1-.1-.3-1.3.8-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M283.2 209l.7.7-.9 1-.2.1-.1-.1-.3-1.3.8-.3"/>
+  <path fill="#c8b100" d="M284.6 211.2l-.5.5-1.2-.6v-.2l.1-.2 1.3-.1.3.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M284.6 211.2l-.5.5-1.2-.6v-.2l.1-.2 1.3-.1.3.6"/>
+  <path fill="#c8b100" d="M281 210.5l.3.6h1.3l.2-.2-.1-.3-1.2-.6-.5.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M281 210.5l.3.6h1.3l.2-.2-.1-.3-1.2-.6-.5.5"/>
+  <path fill="#c8b100" d="M285.7 211.4v.6l1.4.2.2-.1v-.2l-1-.9-.6.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M285.7 211.4v.6l1.4.2.2-.1v-.2l-1-.9-.6.4"/>
+  <path fill="#c8b100" d="M277.4 210.4c0-.2.2-.4.5-.4.2 0 .4.2.4.4 0 .3-.2.5-.4.5a.5.5 0 01-.5-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M277.4 210.4c0-.2.2-.4.5-.4.2 0 .4.2.4.4 0 .3-.2.5-.4.5a.5.5 0 01-.5-.5z"/>
+  <path fill="#c8b100" d="M282.3 210.9c0-.3.3-.5.5-.5.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 01-.5-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M282.3 210.9c0-.3.3-.5.5-.5.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 01-.5-.4z"/>
+  <path fill="#c8b100" d="M277 205.4c0-.5.4-.8.8-.8s1 .3 1 .8-.5.8-1 .8a.9.9 0 01-.8-.8"/>
+  <path fill="#c8b100" d="M278.5 205.1v.6H277v-.6h.4v-1.3h-.5v-.5h.5v-.6h.6v.6h.6v.6h-.6v1.2h.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M278.5 205.1v.6H277v-.6h.4v-1.3h-.5v-.5h.5v-.6h.6v.6h.6v.6h-.6v1.2h.4z"/>
+  <path fill="#c8b100" d="M279 205.1v.6h-2.4v-.6h1v-1.3h-.7v-.5h.6v-.6h.6v.6h.6v.6h-.6v1.2h1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M278.1 204.6c.4 0 .6.4.6.8 0 .5-.4.8-.9.8a.9.9 0 01-.8-.8c0-.4.2-.7.6-.8"/>
+  <path fill="#c8b100" d="M268 212.2l-.6-.7a2.3 2.3 0 00-.7-.3c0-.1.3-.3.6-.3.2 0 .3 0 .4.2v-.2s.3 0 .4.3v1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M268 212.2l-.6-.7a2.3 2.3 0 00-.7-.3c0-.1.3-.3.6-.3.2 0 .3 0 .4.2v-.2s.3 0 .4.3v1z"/>
+  <path fill="#c8b100" d="M268 212c.1-.2.4-.2.5 0 .2.1.3.3.1.5l-.5-.1c-.1-.1-.2-.4 0-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M268 212c.1-.2.4-.2.5 0 .2.1.3.3.1.5l-.5-.1c-.1-.1-.2-.4 0-.5z"/>
+  <path fill="#c8b100" d="M287.5 212.2l.6-.7c.2-.2.7-.3.7-.3 0-.1-.3-.3-.6-.3a.6.6 0 00-.4.2v-.2s-.3 0-.4.3v.7l.1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M287.5 212.2l.6-.7c.2-.2.7-.3.7-.3 0-.1-.3-.3-.6-.3a.6.6 0 00-.4.2v-.2s-.3 0-.4.3v.7l.1.3z"/>
+  <path fill="#c8b100" d="M287.5 212c-.1-.2-.3-.2-.5 0-.2.1-.2.3-.1.5l.5-.1c.2-.1.2-.4.1-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M287.5 212c-.1-.2-.3-.2-.5 0-.2.1-.2.3-.1.5l.5-.1c.2-.1.2-.4.1-.5z"/>
+  <path fill="#c8b100" d="M267.2 223h21.4v-5.5h-21.4v5.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M267.2 223h21.4v-5.5h-21.4v5.6z"/>
+  <path fill="#c8b100" d="M286.3 226.8a1 1 0 00-.4 0h-16.5c.6-.2 1-.7 1-1.2 0-.6-.4-1.1-1-1.3h17-.1c-.6.2-1 .7-1 1.3 0 .5.4 1 1 1.2"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M286.3 226.8a1 1 0 00-.4 0h-16.5c.6-.2 1-.7 1-1.2 0-.6-.4-1.1-1-1.3h17-.1c-.6.2-1 .7-1 1.3 0 .5.4 1 1 1.2z"/>
+  <path fill="#c8b100" d="M269.9 226.8h16c.6 0 1 .3 1 .7 0 .4-.4.8-1 .8h-16c-.6 0-1-.4-1-.8s.5-.8 1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M269.9 226.8h16c.6 0 1 .3 1 .7 0 .4-.4.8-1 .8h-16c-.6 0-1-.4-1-.8s.5-.8 1-.8z"/>
+  <path fill="#c8b100" d="M269.9 223h16c.6 0 1 .4 1 .7 0 .4-.4.6-1 .6h-16c-.6 0-1-.2-1-.6 0-.3.4-.6 1-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M269.9 223h16c.6 0 1 .4 1 .7 0 .4-.4.6-1 .6h-16c-.6 0-1-.2-1-.6 0-.3.4-.6 1-.6z"/>
+  <path fill="#005bbf" d="M263 317.4c1.4 0 2.7-.3 3.7-.8a8.4 8.4 0 013.7-.8c1.4 0 2.8.3 3.8.8s2.3.8 3.7.8c1.5 0 2.8-.3 3.8-.8a8.4 8.4 0 013.6-.8 8 8 0 013.7.8c1 .5 2.4.8 3.8.8v2.4a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.8c-1.4 0-2.7.3-3.6.8-1 .5-2.3.9-3.8.9a8 8 0 01-3.7-.9 8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.9-3.8.9v-2.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M263 317.4c1.4 0 2.7-.3 3.7-.8a8.4 8.4 0 013.7-.8c1.4 0 2.8.3 3.8.8s2.3.8 3.7.8c1.5 0 2.8-.3 3.8-.8a8.4 8.4 0 013.6-.8 8 8 0 013.7.8c1 .5 2.4.8 3.8.8v2.4a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.8c-1.4 0-2.7.3-3.6.8-1 .5-2.3.9-3.8.9a8 8 0 01-3.7-.9 8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.9-3.8.9v-2.4z"/>
+  <path fill="#ccc" d="M263 319.8c1.4 0 2.7-.4 3.7-.9s2.3-.8 3.7-.8c1.4 0 2.8.3 3.8.8s2.3.9 3.7.9a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.8c1.5 0 2.8.3 3.7.8 1 .5 2.4.9 3.8.9v2.3a8.3 8.3 0 01-3.8-.9 8.1 8.1 0 00-3.7-.7c-1.4 0-2.7.2-3.6.7-1 .5-2.3.9-3.8.9a7 7 0 01-3.7-.9c-1-.4-2.3-.7-3.8-.7a8.3 8.3 0 00-3.7.7 8.1 8.1 0 01-3.8.9v-2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M263 319.8c1.4 0 2.7-.4 3.7-.9s2.3-.8 3.7-.8c1.4 0 2.8.3 3.8.8s2.3.9 3.7.9a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.8c1.5 0 2.8.3 3.7.8 1 .5 2.4.9 3.8.9v2.3a8.3 8.3 0 01-3.8-.9 8.1 8.1 0 00-3.7-.7c-1.4 0-2.7.2-3.6.7-1 .5-2.3.9-3.8.9a7 7 0 01-3.7-.9c-1-.4-2.3-.7-3.8-.7a8.3 8.3 0 00-3.7.7 8.1 8.1 0 01-3.8.9v-2.3"/>
+  <path fill="#005bbf" d="M263 322c1.4 0 2.7-.2 3.7-.8 1-.4 2.3-.7 3.7-.7 1.4 0 2.8.2 3.8.7s2.3.9 3.7.9a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.8 8 8 0 013.7.8c1 .5 2.4.9 3.8.9v2.3a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.7c-1.4 0-2.7.3-3.6.7-1 .6-2.3.9-3.8.9-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.8-3.8.8V322"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M263 322c1.4 0 2.7-.2 3.7-.8 1-.4 2.3-.7 3.7-.7 1.4 0 2.8.2 3.8.7s2.3.9 3.7.9a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.8 8 8 0 013.7.8c1 .5 2.4.9 3.8.9v2.3a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.7c-1.4 0-2.7.3-3.6.7-1 .6-2.3.9-3.8.9-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.8-3.8.8V322"/>
+  <path fill="#ccc" d="M263 326.7a8 8 0 003.7-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.8.3 3.8.8s2.3.8 3.7.8c1.5 0 2.8-.3 3.8-.9a8.4 8.4 0 013.6-.7c1.5 0 2.8.3 3.7.8a8.3 8.3 0 003.8.8v-2.3a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.7c-1.4 0-2.7.3-3.6.7-1 .5-2.3.9-3.8.9-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.8-3.8.8v2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M263 326.7a8 8 0 003.7-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.8.3 3.8.8s2.3.8 3.7.8c1.5 0 2.8-.3 3.8-.9a8.4 8.4 0 013.6-.7c1.5 0 2.8.3 3.7.8a8.3 8.3 0 003.8.8v-2.3a8.3 8.3 0 01-3.8-.9 8.2 8.2 0 00-3.7-.7c-1.4 0-2.7.3-3.6.7-1 .5-2.3.9-3.8.9-1.4 0-2.8-.3-3.7-.8a8.4 8.4 0 00-3.8-.8 8.3 8.3 0 00-3.7.8c-1 .5-2.3.8-3.8.8v2.3"/>
+  <path fill="#005bbf" d="M263 329a8.1 8.1 0 003.7-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.8.3 3.8.8s2.3.8 3.7.8a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.7c1.5 0 2.8.3 3.7.8 1 .5 2.4.8 3.8.8v-2.3a8.3 8.3 0 01-3.8-.8 8.2 8.2 0 00-3.7-.8 8.4 8.4 0 00-3.6.7 8.2 8.2 0 01-3.8.9c-1.4 0-2.8-.3-3.7-.8-1-.5-2.3-.8-3.8-.8-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M263 329a8.1 8.1 0 003.7-.8c1-.5 2.3-.8 3.7-.8 1.4 0 2.8.3 3.8.8s2.3.8 3.7.8a8.2 8.2 0 003.8-.9 8.4 8.4 0 013.6-.7c1.5 0 2.8.3 3.7.8 1 .5 2.4.8 3.8.8v-2.3a8.3 8.3 0 01-3.8-.8 8.2 8.2 0 00-3.7-.8 8.4 8.4 0 00-3.6.7 8.2 8.2 0 01-3.8.9c-1.4 0-2.8-.3-3.7-.8-1-.5-2.3-.8-3.8-.8-1.4 0-2.7.3-3.7.8s-2.3.8-3.8.8v2.3z"/>
+  <path fill="#c8b100" d="M286.3 308l-.1.5c0 1.5 1.2 2.6 2.7 2.6h-22c1.5 0 2.7-1.2 2.7-2.6l-.1-.5h16.8"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M286.3 308l-.1.5c0 1.5 1.2 2.6 2.7 2.6h-22c1.5 0 2.7-1.2 2.7-2.6l-.1-.5h16.8z"/>
+  <path fill="#c8b100" d="M269.9 306.5h16c.6 0 1 .3 1 .8 0 .4-.4.7-1 .7h-16c-.6 0-1-.3-1-.8 0-.4.5-.7 1-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M269.9 306.5h16c.6 0 1 .3 1 .8 0 .4-.4.7-1 .7h-16c-.6 0-1-.3-1-.8 0-.4.5-.7 1-.7z"/>
+  <path fill="#c8b100" d="M266.9 316.7h22V311h-22v5.6z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M266.9 316.7h22V311h-22v5.6z"/>
+  <path fill="#ad1519" d="M290.6 286.7c2.1 1.2 3.6 2.5 3.4 3.2-.1.6-.8 1-1.8 1.6-1.6 1.1-2.5 3-1.8 4a5.5 5.5 0 01.2-8.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M290.6 286.7c2.1 1.2 3.6 2.5 3.4 3.2-.1.6-.8 1-1.8 1.6-1.6 1.1-2.5 3-1.8 4a5.5 5.5 0 01.2-8.8z"/>
+  <path fill="#ccc" d="M270.1 305.6h15.6V229h-15.6v76.5z"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M281.4 229.1v76.3m1.8-76.3v76.3m-13 .2h15.5V229h-15.6v76.5z"/>
+  <path fill="#ad1519" d="M254.2 257.7a49.6 49.6 0 0123.3-2c9.3 1.6 16.4 5.3 15.9 8.4v.2l3.5-8.2c.6-3.3-7.3-7.5-17.6-9.2a53.5 53.5 0 00-9.2-.7c-6.7 0-12.4.8-15.9 2.1v9.4"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M254.2 257.7a49.6 49.6 0 0123.3-2c9.3 1.6 16.4 5.3 15.9 8.4v.2l3.5-8.2c.6-3.3-7.3-7.5-17.6-9.2a53.5 53.5 0 00-9.2-.7c-6.7 0-12.4.8-15.9 2.1v9.4"/>
+  <path fill="#ad1519" d="M285.7 267.3c4.4-.3 7.3-1.4 7.7-3.2.2-1.5-1.2-3-3.8-4.5-1.2.1-2.5.3-3.9.3v7.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M285.7 267.3c4.4-.3 7.3-1.4 7.7-3.2.2-1.5-1.2-3-3.8-4.5-1.2.1-2.5.3-3.9.3v7.4"/>
+  <path fill="#ad1519" d="M270 261.5a13 13 0 00-5.7 1.9v.2c-.5 1 1.8 3 5.8 5.4v-7.5"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M270 261.5a13 13 0 00-5.7 1.9v.2c-.5 1 1.8 3 5.8 5.4v-7.5"/>
+  <path fill="#ad1519" d="M295.4 282c.4-1.2-3.8-3.6-9.7-5.8-2.8-1-5-2-7.8-3.2-8.3-3.7-14.4-7.9-13.6-9.4v-.2c-.4.4-1 8-1 8-.8 1.3 4.8 5.5 12.4 9.1 2.4 1.2 7.6 3 10 4 4.3 1.4 8.7 4.3 8.3 5.3l1.4-7.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M295.4 282c.4-1.2-3.8-3.6-9.7-5.8-2.8-1-5-2-7.8-3.2-8.3-3.7-14.4-7.9-13.6-9.4v-.2c-.4.4-1 8-1 8-.8 1.3 4.8 5.5 12.4 9.1 2.4 1.2 7.6 3 10 4 4.3 1.4 8.7 4.3 8.3 5.3l1.4-7.7z"/>
+  <path fill="#c8b100" d="M263.9 254.4c.6-2.3 1.4-4.4 2.1-6.6h-.5a5.2 5.2 0 01-.5.1 52.8 52.8 0 01-1.4 4.8c-1-1.4-2-2.7-2.7-4.1l-1 .2h-1a131.3 131.3 0 014 5.7h.5l.5-.1m6-6.6h-1a8 8 0 01-.8 0v6.2h4.2v-.7h-2.6l.1-5.5m6.8 1l2 .3v-.7l-5.8-.5v.8a19.3 19.3 0 012 0l-.4 5.6h1.6l.5-5.4m2.4 6c.3 0 .5 0 .8.2l.8.2.7-2.9.6 1.2.8 2.1 1 .2c.4 0 .7.2 1 .3l-.3-.7c-.4-1-1-1.9-1.3-2.9 1 0 1.9-.3 2.1-1.2.1-.6 0-1-.7-1.5-.4-.3-1.2-.4-1.7-.5l-2.4-.5-1.4 6m3-5.2c.7.2 1.5.3 1.5 1v.5c-.3.9-1 1.2-2 .9l.5-2.4m8 7l-.2 2 .8.5.9.5.5-7a3.4 3.4 0 01-.7-.3l-6.1 3.8.5.3.4.2 1.7-1.2 2.3 1.3zm-1.7-1.5l2-1.4-.2 2.3-1.8-1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M182.2 192.4c0-1 1-2 2-2s2.2 1 2.2 2c0 1.1-1 2-2.1 2a2 2 0 01-2.1-2z"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".3" d="M205.7 175.4c6.3 0 12 1 15.7 2.4a31.7 31.7 0 0014.6 2.3c2.7 0 6.5.8 10.3 2.4a27.3 27.3 0 017.4 4.7l-1.5 1.4-.4 3.8-4.1 4.7-2 1.8-5 3.9-2.5.2-.7 2.1-31.6-3.7-31.7 3.7-.8-2.1-2.5-.2-4.9-4-2-1.7-4.1-4.7-.5-3.8-1.5-1.4a27.6 27.6 0 017.5-4.7 26 26 0 0110.2-2.4c2 .2 4.2.1 6.6-.2a30 30 0 008-2c3.7-1.5 9-2.5 15.5-2.5z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M206.2 217.1c-11.8 0-22.4-1.4-29.9-3.6a1.1 1.1 0 01-.8-1.2c0-.5.3-1 .8-1.2a109 109 0 0129.9-3.6c11.7 0 22.3 1.4 29.8 3.6a1.3 1.3 0 010 2.4c-7.5 2.2-18 3.6-29.8 3.6"/>
+  <path fill="#ad1519" d="M206.1 215.6c-10.6 0-20.2-1.2-27.5-3.1 7.3-2 16.9-3 27.5-3.1a115 115 0 0127.6 3c-7.3 2-17 3.2-27.6 3.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M206.9 215.7v-6.3m-1.7 6.3v-6.3"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M203.6 215.7v-6.3m-1.6 6.3v-6.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M200.6 215.7v-6.3m-2.8 5.9v-5.7m1.3 5.8v-6m-3.8 5.6v-5.2m1.3 5.4v-5.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M192 214.8V210m1 4.7V210m1.2 5v-5m-3.4 4.7v-4.5"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M189.7 214.5v-4.2m-1.2 4.1v-4"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M186 214v-3m1.3 3.2v-3.5m-2.5 3.1V211"/>
+  <path fill="none" stroke="#000" stroke-width=".7" d="M183.7 213.6v-2.3m-1.3 2v-1.8m-1.2 1.6v-1.3"/>
+  <path fill="none" stroke="#000" stroke-width=".9" d="M179.8 212.8v-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M213.7 215.3v-5.8m-2.9 6v-6.1m-2.1 6.2v-6.3"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M206 207.4a108 108 0 00-30 3.9c.6-.3.5-1-.3-3-1-2.5-2.4-2.4-2.4-2.4 8.3-2.5 20-4 32.8-4a123 123 0 0133 4s-1.5-.1-2.5 2.3c-.8 2-.8 2.8-.2 3-7.5-2.2-18.4-3.7-30.3-3.7"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M206.1 201.9c-12.9 0-24.5 1.5-32.8 4a1 1 0 01-1.3-.6 1 1 0 01.7-1.3 121 121 0 0133.4-4.2c13.2 0 25.2 1.7 33.5 4.2.6.2.9.8.7 1.3-.2.5-.8.8-1.3.6-8.4-2.5-20-4-32.9-4"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M206.1 215.6c-10.6 0-20.2-1.2-27.5-3.1 7.3-2 16.9-3 27.5-3.1a115 115 0 0127.6 3c-7.3 2-17 3.2-27.6 3.2z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M197 204.8c0-.5.4-1 1-1 .5 0 1 .5 1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M206.1 205.6H203a1 1 0 010-2h6.4c.5 0 1 .5 1 1s-.5 1-1 1h-3.2"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".4" d="M190.3 206.5l-2.3.2c-.6.1-1-.3-1.2-.8a1 1 0 011-1.1l2.2-.3 2.4-.3c.5 0 1 .3 1.1.9.1.5-.3 1-.9 1l-2.3.4"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M181 206.7c0-.6.5-1 1.1-1 .6 0 1 .4 1 1 0 .5-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M174 208.5l1.2-1.6 3.3.4-2.6 2-1.8-.8"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".4" d="M222 206.5l2.3.2c.5.1 1-.3 1.1-.8a1 1 0 00-.9-1.1l-2.2-.3-2.4-.3a1 1 0 00-1.1.9c-.1.5.3 1 .9 1l2.3.4"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M213.3 204.8c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1m15.8 1.9c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1 0 .5-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M238.2 208.5l-1.1-1.6-3.3.4 2.6 2 1.8-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M177.3 212.8c7.4-2.1 17.6-3.4 28.8-3.4 11.3 0 21.4 1.3 28.9 3.4"/>
+  <path fill="#c8b100" d="M182.3 183.8l1.4 1 2-3.2a7.4 7.4 0 01-3.6-7.2c.2-4.1 5.2-7.6 11.7-7.6 3.3 0 6.3 1 8.5 2.4 0-.6 0-1.2.2-1.8a17.4 17.4 0 00-8.7-2.1c-7.4 0-13.2 4.1-13.5 9.1a8.9 8.9 0 003 7.6l-1 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M182.3 183.8l1.4 1 2-3.2a7.4 7.4 0 01-3.6-7.2c.2-4.1 5.2-7.6 11.7-7.6 3.3 0 6.3 1 8.5 2.4 0-.6 0-1.2.2-1.8a17.4 17.4 0 00-8.7-2.1c-7.4 0-13.2 4.1-13.5 9.1a8.9 8.9 0 003 7.6l-1 1.8"/>
+  <path fill="#c8b100" d="M182.4 183.8a9.3 9.3 0 01-4-7.3c0-3.2 2-6.1 5.3-8a8.5 8.5 0 00-3.4 6.8 8.9 8.9 0 003 6.7l-.9 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M182.4 183.8a9.3 9.3 0 01-4-7.3c0-3.2 2-6.1 5.3-8a8.5 8.5 0 00-3.4 6.8 8.9 8.9 0 003 6.7l-.9 1.8"/>
+  <path fill="#c8b100" d="M160.1 187.1a8.8 8.8 0 01-2.3-5.9c0-1.3.3-2.6 1-3.8 2-4.2 8.4-7.2 16-7.2 2 0 4 .2 5.9.6l-1 1.4a25.5 25.5 0 00-4.9-.4c-7 0-12.8 2.7-14.5 6.3a7 7 0 00-.7 3.1 7.3 7.3 0 002.7 5.6l-2.6 4.1-1.3-1 1.7-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M160.1 187.1a8.8 8.8 0 01-2.3-5.9c0-1.3.3-2.6 1-3.8 2-4.2 8.4-7.2 16-7.2 2 0 4 .2 5.9.6l-1 1.4a25.5 25.5 0 00-4.9-.4c-7 0-12.8 2.7-14.5 6.3a7 7 0 00-.7 3.1 7.3 7.3 0 002.7 5.6l-2.6 4.1-1.3-1 1.7-2.8z"/>
+  <path fill="#c8b100" d="M162.7 173.3a10.5 10.5 0 00-4 4.1 8.6 8.6 0 00-.9 3.8c0 2.3.9 4.3 2.3 5.9l-1.5 2.5a10.4 10.4 0 01-2.3-6.5c0-4 2.5-7.5 6.4-9.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M162.7 173.3a10.5 10.5 0 00-4 4.1 8.6 8.6 0 00-.9 3.8c0 2.3.9 4.3 2.3 5.9l-1.5 2.5a10.4 10.4 0 01-2.3-6.5c0-4 2.5-7.5 6.4-9.8z"/>
+  <path fill="#c8b100" d="M206 164.4c1.7 0 3.2 1.1 3.5 2.6.3 1.4.4 2.9.4 4.5v1.1c.1 3.3.6 6.3 1.3 8.1l-5.2 5-5.2-5c.7-1.8 1.2-4.8 1.3-8.1v-1.1c0-1.6.2-3.1.4-4.5.3-1.5 1.8-2.6 3.5-2.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M206 164.4c1.7 0 3.2 1.1 3.5 2.6.3 1.4.4 2.9.4 4.5v1.1c.1 3.3.6 6.3 1.3 8.1l-5.2 5-5.2-5c.7-1.8 1.2-4.8 1.3-8.1v-1.1c0-1.6.2-3.1.4-4.5.3-1.5 1.8-2.6 3.5-2.6z"/>
+  <path fill="#c8b100" d="M206 166c1 0 1.7.6 1.8 1.4.2 1.2.4 2.6.4 4.2v1c.1 3.2.6 6 1.2 7.7l-3.4 3.2-3.4-3.2c.7-1.7 1.1-4.5 1.2-7.7v-1a28.1 28.1 0 01.4-4.2 2 2 0 011.8-1.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M206 166c1 0 1.7.6 1.8 1.4.2 1.2.4 2.6.4 4.2v1c.1 3.2.6 6 1.2 7.7l-3.4 3.2-3.4-3.2c.7-1.7 1.1-4.5 1.2-7.7v-1a28.1 28.1 0 01.4-4.2 2 2 0 011.8-1.4z"/>
+  <path fill="#c8b100" d="M229.7 183.8l-1.3 1-2-3.2a7.4 7.4 0 003.6-6.3 7 7 0 000-.9c-.2-4.1-5.3-7.6-11.7-7.6a15 15 0 00-8.5 2.4 23 23 0 00-.2-1.8 17.4 17.4 0 018.7-2.1c7.4 0 13.2 4.1 13.4 9.1a8.9 8.9 0 01-3 7.6l1 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M229.7 183.8l-1.3 1-2-3.2a7.4 7.4 0 003.6-6.3 7 7 0 000-.9c-.2-4.1-5.3-7.6-11.7-7.6a15 15 0 00-8.5 2.4 23 23 0 00-.2-1.8 17.4 17.4 0 018.7-2.1c7.4 0 13.2 4.1 13.4 9.1a8.9 8.9 0 01-3 7.6l1 1.8"/>
+  <path fill="#c8b100" d="M229.6 183.8a9.1 9.1 0 004.1-7.3c0-3.2-2.1-6.1-5.3-8a8.5 8.5 0 013.4 6.8 8.9 8.9 0 01-3.2 6.7l1 1.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M229.6 183.8a9.1 9.1 0 004.1-7.3c0-3.2-2.1-6.1-5.3-8a8.5 8.5 0 013.4 6.8 8.9 8.9 0 01-3.2 6.7l1 1.8"/>
+  <path fill="#c8b100" d="M252 187.1a8.8 8.8 0 002.2-5.9 8.7 8.7 0 00-.9-3.8c-2-4.2-8.4-7.2-16-7.2a29 29 0 00-6 .6l1 1.4a25.4 25.4 0 015-.4c7 0 12.8 2.7 14.4 6.3.5 1 .7 2 .7 3.1a7.3 7.3 0 01-2.6 5.6l2.5 4.1 1.3-1-1.7-2.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M252 187.1a8.8 8.8 0 002.2-5.9 8.7 8.7 0 00-.9-3.8c-2-4.2-8.4-7.2-16-7.2a29 29 0 00-6 .6l1 1.4a25.4 25.4 0 015-.4c7 0 12.8 2.7 14.4 6.3.5 1 .7 2 .7 3.1a7.3 7.3 0 01-2.6 5.6l2.5 4.1 1.3-1-1.7-2.8z"/>
+  <path fill="#c8b100" d="M249.3 173.3a10.6 10.6 0 014 4.1 8.7 8.7 0 01.9 3.8 8.8 8.8 0 01-2.3 5.9l1.6 2.5a10.4 10.4 0 002.3-6.5c0-4-2.6-7.5-6.5-9.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M249.3 173.3a10.6 10.6 0 014 4.1 8.7 8.7 0 01.9 3.8 8.8 8.8 0 01-2.3 5.9l1.6 2.5a10.4 10.4 0 002.3-6.5c0-4-2.6-7.5-6.5-9.8z"/>
+  <path fill="#fff" d="M204.2 181.4c0-1 .8-1.8 1.8-1.8s1.9.8 1.9 1.8-.9 1.7-1.9 1.7a1.8 1.8 0 01-1.8-1.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M204.2 181.4c0-1 .8-1.8 1.8-1.8s1.9.8 1.9 1.8-.9 1.7-1.9 1.7a1.8 1.8 0 01-1.8-1.7z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M204.2 178c0-1 .8-1.8 1.8-1.8s1.9.8 1.9 1.8-.9 1.7-1.9 1.7a1.8 1.8 0 01-1.8-1.7m.4-3.7c0-.7.6-1.3 1.4-1.3.8 0 1.5.6 1.5 1.3 0 .8-.7 1.4-1.5 1.4s-1.4-.6-1.4-1.4m.4-3.3c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1m.2-2.8c0-.5.4-.8.8-.8.5 0 .9.3.9.8 0 .4-.4.8-.9.8a.8.8 0 01-.8-.8"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M206.2 191.8l1.2.2a4.6 4.6 0 004.5 6 4.7 4.7 0 004.4-3c.1 0 .5-1.7.7-1.7.2 0 .1 1.8.2 1.7.3 2.3 2.4 3.8 4.7 3.8a4.6 4.6 0 004.7-5l1.5-1.5.7 2a4 4 0 00-.4 1.9 4.4 4.4 0 004.5 4.2c1.6 0 3-.7 3.8-1.9l.9-1.2v1.5c0 1.5.6 2.8 2 3 0 0 1.7.1 4-1.6 2.1-1.7 3.3-3.1 3.3-3.1l.2 1.7s-1.8 2.8-3.8 4c-1 .6-2.7 1.3-4 1-1.4-.2-2.4-1.3-3-2.6a6.7 6.7 0 01-3.3 1 6.5 6.5 0 01-6.1-3.7 7 7 0 01-10.4-.3 7 7 0 01-4.6 1.8 6.9 6.9 0 01-5.7-3 6.9 6.9 0 01-5.7 3 7 7 0 01-4.7-1.8 7 7 0 01-10.4.3 6.5 6.5 0 01-6 3.7 6.7 6.7 0 01-3.4-1c-.6 1.3-1.5 2.4-3 2.7-1.2.2-2.9-.5-4-1.1-2-1.2-3.8-4-3.8-4l.2-1.7s1.2 1.4 3.4 3.1c2.2 1.8 3.9 1.6 3.9 1.6 1.4-.2 2-1.5 2-3v-1.5l1 1.2a4.6 4.6 0 003.7 2c2.5 0 4.5-2 4.5-4.3a4 4 0 00-.4-2l.8-1.9 1.5 1.5a4.4 4.4 0 000 .6c0 2.4 2 4.4 4.6 4.4 2.4 0 4.4-1.5 4.7-3.8 0 0 0-1.6.2-1.7.2 0 .6 1.7.7 1.6a4.7 4.7 0 004.5 3.1 4.6 4.6 0 004.5-6l1.2-.2"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M238.6 197.7c.3-.8 0-1.6-.6-1.8-.5-.2-1.2.3-1.5 1.1-.3.8 0 1.6.6 1.8.5.2 1.2-.3 1.5-1.1m-20.5-4c0-.8-.3-1.6-1-1.6-.5-.1-1 .5-1.2 1.4-.1.8.3 1.5.9 1.6.6 0 1.2-.6 1.3-1.4m-23.9 0c0-.8.4-1.6 1-1.6.6-.1 1.1.5 1.2 1.4.1.8-.3 1.5-.9 1.6-.6 0-1.1-.6-1.2-1.4m-20.6 4c-.2-.8 0-1.6.6-1.8.6-.2 1.2.3 1.5 1.1.3.8 0 1.6-.5 1.8-.6.2-1.3-.3-1.6-1.1"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M182.7 184a5.1 5.1 0 012.2 2.9s0-.3.6-.6 1-.3 1-.3l-.1 1.3-.3 2.2a7.4 7.4 0 01-.7 1.6 1.9 1.9 0 00-1.5-.4 1.8 1.8 0 00-1.2.9s-.7-.6-1.2-1.3l-1.1-2-.7-1.1s.5-.2 1.1 0c.6 0 .8.2.8.2a4.9 4.9 0 011-3.4m.4 9.8a1.8 1.8 0 01-.6-1c0-.5 0-.9.3-1.2 0 0-.9-.5-1.8-.7-.7-.2-2-.2-2.3-.2h-1l.2.5c.2.5.5.7.5.7a5 5 0 00-3 2 5.3 5.3 0 003.5 1l-.2.8v.6l1-.4c.3-.1 1.5-.5 2-1 .8-.4 1.5-1.1 1.5-1.1m2.7-.5a1.6 1.6 0 00.2-1.1 1.7 1.7 0 00-.6-1l1.4-1.3a10 10 0 012-.9l1.1-.4v.6a5.7 5.7 0 01-.2.8 5 5 0 013.4 1 5 5 0 01-2.9 2 6.4 6.4 0 00.7 1.2h-1c-.4 0-1.6 0-2.3-.2a11 11 0 01-1.8-.7"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M182.2 192.4c0-1 1-2 2-2s2.2 1 2.2 2c0 1.1-1 2-2.1 2a2 2 0 01-2.1-2"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M206.1 180.8a5.7 5.7 0 011.9 3.7s.2-.3.9-.5c.7-.3 1.2-.2 1.2-.2l-.5 1.4-.8 2.4a8.2 8.2 0 01-1 1.7 2.1 2.1 0 00-1.7-.7c-.6 0-1.2.3-1.6.7 0 0-.6-.7-1-1.7l-.8-2.4-.5-1.4 1.2.2c.7.2.9.5.9.5 0-1.4.8-2.8 1.8-3.7"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M204.6 191.8a2 2 0 01-.5-1.2c0-.5.1-1 .4-1.3 0 0-.8-.7-1.8-1-.7-.4-2-.7-2.5-.7l-1.2-.2.2.6.4.9a5.9 5.9 0 00-3.7 1.7c1 .9 2.3 1.6 3.7 1.6l-.4 1-.2.6 1.2-.2c.4-.1 1.8-.4 2.5-.7 1-.4 1.9-1 1.9-1m3 0a1.9 1.9 0 00.1-2.6s.9-.7 1.8-1a8 8 0 012.5-.7l1.2-.3-.1.7-.4.9c1.4 0 2.7.8 3.6 1.7a5.9 5.9 0 01-3.6 1.6 6.9 6.9 0 00.5 1.6l-1.2-.2-2.5-.7c-1-.4-1.8-1-1.8-1m22-8a5.2 5.2 0 00-2.2 3l-.7-.6c-.6-.3-1-.3-1-.3l.2 1.3c0 .3 0 1.3.3 2.2.2 1 .6 1.6.6 1.6a2 2 0 011.5-.4c.6.1 1 .5 1.3.9l1.1-1.3c.6-.8 1-1.7 1.1-2l.7-1.1s-.4-.2-1 0c-.7 0-1 .2-1 .2a4.9 4.9 0 00-1-3.4m-.3 9.8c.3-.3.5-.6.6-1a1.6 1.6 0 00-.2-1.2s.8-.5 1.7-.7c.7-.2 2-.2 2.3-.2h1.1l-.3.5a6.2 6.2 0 01-.4.7 5 5 0 012.9 2 5.3 5.3 0 01-3.5 1l.2.8v.6l-1-.4c-.3-.1-1.4-.5-2-1-.8-.4-1.4-1.1-1.4-1.1m-2.8-.5a1.7 1.7 0 01-.2-1.1c0-.5.3-.8.6-1 0 0-.6-.8-1.4-1.3-.6-.4-1.7-.8-2-.9a171.4 171.4 0 01-1-.4v.6c0 .5.2.8.2.8a5.2 5.2 0 00-3.5 1c.7.9 1.7 1.7 3 2 0 0-.3.2-.5.7l-.3.5h1c.4 0 1.7 0 2.3-.2a11.1 11.1 0 001.8-.7"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M226 192.4c0-1 1-2 2-2s2.1 1 2.1 2a2 2 0 01-2 2 2 2 0 01-2.1-2m23.2 4.4c-.4-.5-1.4-.4-2.2.2-.8.7-1 1.6-.5 2.2.5.5 1.5.4 2.3-.3.7-.6 1-1.6.5-2"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M246.3 198l.7-1c.7-.6 1.8-.7 2.3-.2l.1.2s1-2 2.3-2.6c1.3-.7 3.4-.5 3.4-.5a2.8 2.8 0 00-2.9-2.8 3 3 0 00-2.4 1l-.2-1s-1.3.3-1.9 1.8c-.6 1.5 0 3.6 0 3.6s-.3-.9-.7-1.5a8 8 0 00-2.4-1.6l-1.3-.7-.1.5a5 5 0 000 .8 7.9 7.9 0 00-3.7.5 4.7 4.7 0 002.5 2.2l-.8.7a4 4 0 00-.4.5l1.3.2 2.5.2a14.5 14.5 0 001.7-.2m-80.3 0c0-.4-.3-.7-.7-1-.7-.7-1.7-.8-2.2-.3l-.2.3s-1-2-2.3-2.7c-1.2-.7-3.3-.5-3.3-.5a2.8 2.8 0 012.8-2.8c1 0 1.9.4 2.4 1l.2-1s1.3.3 2 1.8c.5 1.5-.1 3.6-.1 3.6s.3-.9.8-1.5a8 8 0 012.4-1.6l1.3-.7v1.3a7.9 7.9 0 013.7.5 4.7 4.7 0 01-2.5 2.2l.8.7.4.5-1.2.2-2.6.2a14.7 14.7 0 01-1.7-.2"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".4" d="M163 196.8c.6-.5 1.6-.4 2.4.3.7.6 1 1.5.4 2-.5.6-1.5.5-2.2-.2-.8-.6-1-1.6-.5-2m41-6.3c0-1.1.9-2 2-2s2.1.9 2.1 2c0 1-1 2-2 2a2 2 0 01-2.1-2"/>
+  <path fill="#005bbf" stroke="#000" stroke-width=".3" d="M201.8 160.6c0-2.2 1.9-4 4.3-4s4.2 1.8 4.2 4-1.9 4-4.3 4a4.1 4.1 0 01-4.2-4"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".3" d="M205 149.3v2.2h-2.4v2.2h2.3v6.3H202l-.2.6c0 .6.1 1.1.3 1.6h7.9c.2-.5.3-1 .3-1.6l-.2-.6h-2.8v-6.3h2.3v-2.2h-2.3v-2.2h-2.4z"/>
+  <path fill="#ccc" d="M206.5 330.6a82 82 0 01-35.5-8.2 22.7 22.7 0 01-12.8-20.4v-32h96.4v32a22.7 22.7 0 01-12.8 20.4 81 81 0 01-35.3 8.2"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M206.5 330.6a82 82 0 01-35.5-8.2 22.7 22.7 0 01-12.8-20.4v-32h96.4v32a22.7 22.7 0 01-12.8 20.4 81 81 0 01-35.3 8.2z"/>
+  <path fill="#ccc" d="M206.3 270h48.3v-53.5h-48.3V270z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M206.3 270h48.3v-53.5h-48.3V270z"/>
+  <path fill="#ad1519" d="M206.3 302c0 12.6-10.7 22.9-24 22.9s-24.2-10.3-24.2-23v-32h48.2v32"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M168.6 320.9c1.5.8 3.6 2 5.8 2.6l-.1-54.7h-5.7v52z"/>
+  <path fill="#c8b100" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M158 301.6a24.4 24.4 0 005.5 15v-47.5h-5.4v32.5z"/>
+  <path fill="#c7b500" stroke="#000" stroke-width=".5" d="M179.4 324.7a26.6 26.6 0 005.6 0v-55.9h-5.6v56z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M190 323.5a19 19 0 005.8-2.5v-52.2H190l-.1 54.7z"/>
+  <path fill="#ad1519" d="M158.1 270h48.2v-53.5H158V270z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M158.1 270h48.2v-53.5H158V270z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".5" d="M201 316c2.4-2 4.6-6.8 5.4-12.2l.1-35H201l.1 47.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M206.3 302c0 12.6-10.7 22.9-24 22.9s-24.2-10.3-24.2-23v-32h48.2v32"/>
+  <path fill="#ad1519" d="M254.6 270v32c0 12.6-10.8 22.9-24.1 22.9s-24.2-10.3-24.2-23v-32h48.3"/>
+  <path fill="none" stroke="#000" stroke-width=".5" d="M254.6 270v32c0 12.6-10.8 22.9-24.1 22.9s-24.2-10.3-24.2-23v-32h48.3"/>
+  <path fill="#c8b100" d="M215.1 294.1l.1.5c0 .6-.5 1-1.1 1a1 1 0 01-1.1-1v-.5h-1.5a2.5 2.5 0 001.8 2.9v3.9h1.6V297a2.6 2.6 0 001.7-1.6h4.4v-1.2h-6m21.8 0v1.2h-4a2.5 2.5 0 01-.3.6l4.6 5.2-1.2 1-4.6-5.3-.2.1v8.7h-1.6V297h-.2l-4.8 5.2-1.2-1 4.7-5.3a2.1 2.1 0 01-.2-.4h-4V294h13zm2.6 0v1.2h4.4c.3.8.9 1.4 1.7 1.6v3.9h1.6V297a2.5 2.5 0 001.8-2.4 2 2 0 000-.5h-1.6l.1.5c0 .6-.5 1-1 1-.7 0-1.2-.4-1.2-1a1 1 0 01.1-.5h-5.9m-6.7 22.1a15.6 15.6 0 003.7-1l.8 1.4a17.6 17.6 0 01-4.3 1.2 2.6 2.6 0 01-2.6 2 2.6 2.6 0 01-2.5-2 17.5 17.5 0 01-4.6-1.2l.8-1.4c1.3.5 2.6.9 4 1a2.5 2.5 0 011.5-1.3v-6.7h1.6v6.7c.7.2 1.3.7 1.6 1.4zm-11-2.2l-.8 1.4a16.6 16.6 0 01-3.6-3.1c-.9.2-1.8 0-2.5-.5a2.4 2.4 0 01-.3-3.5l.1-.1a15.3 15.3 0 01-1.3-4.8h1.7a13.1 13.1 0 001 4c.5 0 1 0 1.4.2l4.1-4.5 1.3 1-4.1 4.5c.5.9.5 2-.1 2.8a15.2 15.2 0 003.1 2.6zm-6-4.8c.3-.4 1-.5 1.5 0s.5 1 .1 1.4a1.2 1.2 0 01-1.6.1 1 1 0 010-1.5zm-2.2-4.5l-1.6-.3-.3-4.3 1.7-.6v2.5c0 1 0 1.8.2 2.7zm1.4-5.3l1.7.4v2.2c0-.8.3 2.1.3 2.1l-1.7.6a14 14 0 01-.3-2.7v-2.6zm5.6 13.7a15.7 15.7 0 004.8 2.6l.4-1.6a13.7 13.7 0 01-4-2l-1.2 1m-.8 1.4a17.4 17.4 0 004.8 2.6l-1.2 1.1a18.7 18.7 0 01-4-2l.4-1.7m2.2-9.4l1.6.7 3-3.3-1-1.4-3.6 4m-1.3-1l-1-1.4 3-3.3 1.6.7-3.6 4m18.1 9.9l.8 1.4a16.7 16.7 0 003.6-3.1c.9.2 1.8 0 2.5-.5a2.4 2.4 0 00.3-3.5l-.1-.1a15 15 0 001.3-4.8h-1.7a13.3 13.3 0 01-1 4 3 3 0 00-1.4.2l-4.1-4.5-1.3 1 4.1 4.5a2.4 2.4 0 00.1 2.8 15 15 0 01-3.1 2.6zm6-4.8a1.2 1.2 0 00-1.5 0 1 1 0 00-.1 1.4 1.2 1.2 0 001.6.1 1 1 0 000-1.5zm2.2-4.5l1.6-.3.3-4.3-1.7-.6v2.5c0 1 0 1.9-.2 2.8zm-1.4-5.3l-1.7.4v2.2c0-.8-.3 2.1-.3 2.1l1.7.6.3-2.7v-2.6m-5.6 13.7a15.7 15.7 0 01-4.8 2.6l-.4-1.6a13.7 13.7 0 004-2l1.2 1m.8 1.4a17.4 17.4 0 01-4.8 2.6l1.2 1.1a18.6 18.6 0 004-2l-.4-1.7m-2.2-9.4l-1.6.7-2.9-3.3 1-1.4 3.5 4m1.3-1l1-1.4-3-3.3-1.6.7 3.6 4m-20.1-8.7l.5 1.6h4.5l.5-1.6h-5.5m21.1 0l-.5 1.6h-4.5l-.5-1.6h5.5m-11.6 21.9c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1zm1.9-7.8l1.7-.4v-4.3l-1.7-.5v5.2m-1.6 0l-1.7-.4v-4.3l1.7-.5v5.2"/>
+  <path fill="#c8b100" d="M211.5 294.2c.2-1 1-1.6 1.8-2V287h1.6v5.3c.8.3 1.5.9 1.7 1.6h4.4v.3h-6a1.2 1.2 0 00-1-.6c-.4 0-.7.3-1 .6h-1.5m12.2 0v-.3h4.1a2.4 2.4 0 01.2-.3l-5-5.7 1.2-1 5 5.6.2-.1V285h1.6v7.3h.3l4.9-5.5 1.2 1-4.9 5.5.3.6h4v.3h-13zm21.6 0a1.1 1.1 0 011-.6c.5 0 .8.3 1 .6h1.6c-.2-1-.9-1.6-1.8-2V287h-1.6v5.3c-.8.3-1.4.8-1.7 1.6h-4.4v.3h6m-30.2-15l6 6.8 1.3-1-6.1-6.7.3-.6h4.4V276h-4.4a2.6 2.6 0 00-2.5-1.7 2.6 2.6 0 00-2.7 2.5 2.5 2.5 0 001.8 2.4v5.2h1.6v-5.2h.3zm32 0v5.3h-1.7v-5.2a2.5 2.5 0 01-.4-.2l-6 6.8-1.3-1 6.2-6.9-.1-.3h-4.5V276h4.5a2.6 2.6 0 012.4-1.7 2.6 2.6 0 012.7 2.5 2.5 2.5 0 01-1.9 2.4zm-16.1 0v3.3h-1.7v-3.2a2.6 2.6 0 01-1.7-1.6h-4V276h4a2.6 2.6 0 012.5-1.7c1.2 0 2.2.7 2.5 1.7h4v1.6h-4a2.5 2.5 0 01-1.6 1.6zm-17.8 4l-1.7.4v4.3l1.7.5v-5.2m1.6 0l1.7.4v4.3l-1.7.5v-5.2m30.6 0l-1.7.4v4.3l1.7.5v-5.2m1.6 0l1.7.4v4.3l-1.7.5v-5.2m-25.5.8l1.6-.7 2.9 3.3-1 1.4-3.5-4m-1.3 1l-1 1.4 3 3.3 1.6-.7-3.6-4m18.5-1.1l-1.6-.7-3 3.3 1 1.4 3.6-4m1.2 1l1 1.4-3 3.3-1.5-.7 3.5-4m-20.3 9l.5-1.6h4.5l.5 1.6h-5.5m-6.7-17c0-.6.5-1 1.2-1a1 1 0 011 1c0 .6-.4 1-1 1a1.1 1.1 0 01-1.2-1zm12.1.8l-.5 1.6h-4.5l-.5-1.6h5.5m0-1.6l-.5-1.6h-4.5l-.5 1.6h5.5m15.7 17.8l-.5-1.6h-4.5l-.5 1.6h5.5m4.4-17c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1zm-16.1 0c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1.1 1a1.1 1.1 0 01-1.1-1zm6.2.8l.5 1.6h4.6l.5-1.6h-5.6m0-1.6l.5-1.6h4.6l.5 1.6h-5.6m-5.9 5l-1.7.5v4.3l1.7.5V281m1.7 0l1.6.5v4.3l-1.6.5V281"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M232.7 316.3a15.6 15.6 0 003.7-1.1l.8 1.4a17.6 17.6 0 01-4.3 1.2 2.6 2.6 0 01-2.6 2 2.6 2.6 0 01-2.5-2 17.5 17.5 0 01-4.6-1.2l.8-1.4c1.3.5 2.6.9 4 1a2.5 2.5 0 011.5-1.3v-6.7h1.6v6.7c.7.2 1.3.7 1.6 1.4zm-4.7-20.4a2.3 2.3 0 01-.2-.5h-4V294h4a2.6 2.6 0 01.2-.4l-5-5.6 1.2-1 5 5.5a2.2 2.2 0 01.2 0V285h1.7v7.3h.2l4.9-5.5 1.2 1-4.9 5.5.3.6h4v1.5h-4c0 .2-.2.4-.3.5l4.7 5.3-1.3 1-4.6-5.3-.2.1v8.7h-1.6V297l-.2-.1-4.8 5.3-1.2-1 4.7-5.3m-12.8-16.7l6 6.8 1.3-1-6.1-6.7.3-.6h4.4V276h-4.4a2.6 2.6 0 00-2.5-1.7 2.6 2.6 0 00-2.6 2.5 2.5 2.5 0 001.7 2.4v5.2h1.6v-5.2h.3zm6.5 34.8l-.8 1.4a16.6 16.6 0 01-3.6-3.1c-.9.2-1.8 0-2.5-.5a2.4 2.4 0 01-.3-3.5l.1-.1a15.3 15.3 0 01-1.2-4.8h1.6a13.1 13.1 0 001 4c.5 0 1 0 1.4.2l4.1-4.5 1.3 1-4.1 4.5c.6.9.5 2-.1 2.8a15.2 15.2 0 003.1 2.6zm-8.4-13.1V297a2.5 2.5 0 01-1.8-2.4c0-1 .8-2 1.8-2.4V287h1.6v5.3c.8.2 1.5.8 1.7 1.6h4.4v1.5h-4.4a2.6 2.6 0 01-1.6 1.6v3.9h-1.7m2.3 8.3c.4-.4 1.1-.5 1.6 0s.5 1 .1 1.4a1.2 1.2 0 01-1.6.1 1 1 0 010-1.5zm-2-4.5l-1.7-.3-.3-4.3 1.7-.6v2.5c0 1 0 1.8.3 2.7zm1.4-5.3l1.6.4v2.2c0-.8.3 2.1.3 2.1l-1.7.6-.3-2.7v-2.6zm5.5 13.7a15.7 15.7 0 004.8 2.6l.4-1.6a13.7 13.7 0 01-4-2l-1.2 1m-.8 1.4a17.4 17.4 0 004.8 2.6l-1.2 1.1a18.7 18.7 0 01-4-2l.4-1.7"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M221.9 305.1l1.6.7 3-3.3-1-1.4-3.6 4m-1.3-1l-1-1.4 3-3.3 1.6.7-3.6 4m-7.6-9.5c0-.6.5-1 1-1 .7 0 1.2.5 1.2 1 0 .6-.5 1.1-1.1 1.1a1 1 0 01-1.1-1zm25.7 19.4l.8 1.4a16.7 16.7 0 003.6-3.1c.9.2 1.8 0 2.6-.5a2.4 2.4 0 00.2-3.5l-.1-.1a15 15 0 001.3-4.8h-1.7a13.3 13.3 0 01-1 4 3 3 0 00-1.4.2l-4.1-4.5-1.3 1 4.1 4.5a2.4 2.4 0 00.1 2.8 15 15 0 01-3 2.6zm8.4-13.1V297a2.5 2.5 0 001.8-2.4c0-1-.7-2-1.8-2.4V287h-1.6v5.3c-.8.2-1.4.8-1.7 1.6h-4.4v1.5h4.4c.3.8.9 1.3 1.7 1.6v3.9h1.6zm-2.3 8.3a1.2 1.2 0 00-1.6 0 1 1 0 00-.1 1.4 1.2 1.2 0 001.6.1 1 1 0 000-1.5zm2-4.5l1.7-.3.3-4.3-1.7-.6v2.5c0 1 0 1.8-.2 2.7zm-1.3-5.3l-1.7.4v2.2c0-.8-.3 2.1-.3 2.1l1.7.6.3-2.7v-2.6m1.6-20.1v5.2h-1.6v-5.2a2.3 2.3 0 01-.4-.2l-6 6.8-1.2-1 6-7v-.2h-4.5V276h4.4a2.6 2.6 0 012.5-1.7 2.6 2.6 0 012.6 2.5 2.5 2.5 0 01-1.8 2.4zm-16 0v3.2h-1.7v-3.2a2.6 2.6 0 01-1.7-1.6h-4V276h4c.4-1 1.3-1.7 2.5-1.7s2.2.7 2.5 1.7h4v1.6h-4a2.5 2.5 0 01-1.6 1.6zm8.8 33.8a15.7 15.7 0 01-4.8 2.6l-.4-1.6a13.7 13.7 0 004-2l1.2 1m.8 1.4a17.4 17.4 0 01-4.8 2.6l1.2 1.1a18.7 18.7 0 004-2l-.4-1.7m-27.4-31.4l-1.7.5v4.3l1.7.5v-5.2m1.7 0l1.6.4v4.3l-1.6.5V283m30.5 0l-1.7.5v4.3l1.7.5V283"/>
+  <path fill="none" stroke="#c8b100" stroke-width=".3" d="M247.1 283.1l1.7.5v4.3l-1.7.5V283m-8.6 22l-1.6.7-2.9-3.3 1-1.4 3.5 4m1.3-1l1-1.4-3-3.3-1.6.7 3.6 4m-18.2-20l1.6-.7 3 3.3-1 1.4-3.6-4m-1.3 1l-1 1.4 3 3.3 1.6-.7-3.6-4m18.5-1.1l-1.6-.7-3 3.3 1 1.4 3.6-4m1.2 1l1 1.4-3 3.2-1.5-.6 3.5-4m-20.3 9l.5-1.6h4.5l.5 1.6h-5.5m0 1.5l.5 1.6h4.5l.5-1.6h-5.5M213 277c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1.2-1zm12.1.8l-.5 1.6h-4.5l-.5-1.6h5.5m0-1.6l-.5-1.6h-4.5l-.5 1.6h5.5m20.1 18.5c0-.5.5-1 1.1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1.1-1 1.1a1 1 0 01-1.2-1zm-4.4-.7l-.5-1.6h-4.5l-.5 1.6h5.5m0 1.5l-.5 1.6h-4.5l-.5-1.6h5.5m-11.6 21.9c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 01-1.2-1zm1.9-7.8l1.7-.4v-4.3l-1.7-.5v5.2m-1.6 0l-1.7-.4v-4.3l1.7-.5v5.2m15.7-32.6c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1zm-16.1 0c0-.6.5-1 1.1-1a1 1 0 011.1 1c0 .6-.5 1-1 1a1.1 1.1 0 01-1.2-1zm6.2.8l.5 1.6h4.6l.5-1.6h-5.5m0-1.6l.4-1.6h4.6l.5 1.6h-5.5m-6 5l-1.6.5v4.3l1.6.5V281m1.7 0l1.6.5v4.3l-1.6.5V281"/>
+  <path fill="#058e6e" d="M227.7 294.7a2.6 2.6 0 012.6-2.5 2.6 2.6 0 012.6 2.5 2.6 2.6 0 01-2.6 2.4c-1.4 0-2.6-1-2.6-2.4"/>
+  <path fill="#db4446" d="M230.9 229.7v-.6l.1-.3-2.3-.1a5.9 5.9 0 01-2.3-1.2c-.8-.7-1.1-1-1.6-1.2-1.3-.2-2.3.4-2.3.4s1 .4 1.7 1.3 1.5 1.3 1.8 1.4c.6.2 2.6 0 3.1.1l1.8.2"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M230.9 229.7v-.6l.1-.3-2.3-.1a5.9 5.9 0 01-2.3-1.2c-.8-.7-1.1-1-1.6-1.2-1.3-.2-2.3.4-2.3.4s1 .4 1.7 1.3 1.5 1.3 1.8 1.4c.6.2 2.6 0 3.1.1l1.8.2z"/>
+  <path fill="#ed72aa" stroke="#000" stroke-width=".4" d="M238.1 227.5v1.4c.2.6-.1 1.2 0 1.5 0 .4.1.6.3.9l.2.9-.7-.5-.6-.4v1c.1.2.3.8.6 1.1l1 1.3c.2.5.1 1.4.1 1.4s-.4-.7-.8-.8l-1.2-.7s.7.8.7 1.5c0 .8-.3 1.6-.3 1.6s-.3-.7-.8-1.1l-1-.9s.4 1.2.4 2v2.3l-.9-1-1-.7c0-.2.5.6.6 1.1 0 .5.3 2.3 1.8 4.5 1 1.3 2.3 3.6 5.3 2.9 3-.8 1.9-4.8 1.3-6.7a16.8 16.8 0 01-1-4.6c0-.8.6-2.9.5-3.3a8 8 0 01.2-3.1c.4-1.3.7-1.8.9-2.3.2-.6.4-.9.4-1.3l.1-1.3.7 1.3.1 1.5s.1-1 1-1.6c.8-.6 1.8-1.1 2-1.4.3-.3.3-.5.3-.5s0 1.8-.6 2.6l-1.7 2s.7-.3 1.2-.3h.9s-.6.4-1.4 1.6c-.8 1-.5 1.2-1 2.1-.6 1-1 1-1.7 1.5-1 .8-.5 4.2-.4 4.7.2.5 2 4.5 2 5.5s.2 3.2-1.5 4.6c-1.1 1-3 1-3.4 1.2-.4.3-1.2 1.1-1.2 2.8 0 1.7.6 2 1 2.4.6.5 1.2.2 1.3.6.2.3.2.5.5.7.2.2.3.4.2.8 0 .3-.8 1.1-1.1 1.7l-.8 2.4c0 .2-.1 1 .1 1.3 0 0 .9 1 .3 1.2-.4.2-.8-.2-1-.2l-.9.5c-.3-.1-.3-.3-.4-.8l-.1-.7c-.2 0-.3.2-.4.5 0 .2 0 .8-.3.8-.2 0-.5-.4-.8-.5-.2 0-.8-.2-.8-.4 0-.3.4-.9.7-1 .4 0 .8-.3.5-.5s-.5-.2-.7 0-.8 0-.7-.2v-.8c0-.2-.4-.5.1-.8.6-.3.8.2 1.4.1.6 0 .8-.3 1-.6.2-.3.2-1-.2-1.4-.4-.5-.7-.5-.9-.8l-.3-.9v2.2l-.7-.8c-.3-.3-.6-1.3-.6-1.3v1.3c0 .4.3.7.2.8-.1.1-.8-.7-1-.8a3.7 3.7 0 01-1-1l-.4-1.4a4.2 4.2 0 010-1.5l.4-1h-1.4c-.7 0-1.2-.3-1.5.2-.3.5-.2 1.5.2 2.8.3 1.2.5 1.9.4 2.1a3 3 0 01-.7.8h-.9a2.5 2.5 0 00-1.2-.3h-1.3l-1.1-.3c-.3.1-.8.3-.6.7.2.6-.2.7-.5.7l-.9-.2c-.4-.1-.9 0-.8-.4 0-.4.2-.4.4-.7.2-.3.2-.5 0-.5h-.6c-.2.2-.5.5-.8.4-.2-.1-.4-.4-.4-1s-.7-1.2 0-1.1c.5 0 1.3.4 1.4 0 .2-.3 0-.4-.2-.7s-.8-.4-.3-.7l.7-.5c.1-.2.4-.8.7-.6.6.2 0 .7.6 1.3.6.7 1 1 2 .8 1 0 1.3-.2 1.3-.5l-.1-1v-1s-.4.3-.5.6l-.4.8v-2a8 8 0 00-.2-.8l-.3.9-.1 1s-.7-.5-.5-1.5c.1-.7-.1-1.6.1-2 .2-.3.7-1.5 2-1.6h2.6l2-.3s-2.8-1.4-3.5-1.9a9.5 9.5 0 01-2-2l-.6-1.6s-.5 0-1 .3a5 5 0 00-1.2 1l-.7 1 .1-1.2v-.8s-.4 1.2-1 1.7l-1.4 1v-.8l.2-1s-.4.8-1.1 1c-.7 0-1.8 0-1.9.4 0 .5.2 1 0 1.4 0 .3-.4.5-.4.5l-.8-.4c-.4 0-.7.2-.7.2s-.3-.4-.2-.7c.1-.2.7-.6.5-.8l-.8.2c-.3.1-.8.3-.8-.2 0-.4.2-.7 0-1 0-.3 0-.5.2-.6l1.2-.1c0-.2-.2-.5-.8-.6-.6-.1-.8-.5-.5-.8.3-.2.3-.3.5-.6.1-.2.2-.7.7-.5.5.3.4.8 1 1a4 4 0 002-.2l1.5-1 1.5-1-1-.8c-.3-.3-.7-.9-1-1a8.3 8.3 0 00-1.8-.6 9 9 0 01-1.7-.5l.8-.3c.2-.2.6-.6.8-.6h.3-1.4c-.3-.1-1-.6-1.3-.6l-.8.1s.8-.4 1.4-.5l1-.1s-.9-.3-1.1-.6l-.6-1c-.2-.1-.3-.5-.6-.5l-1 .3c-.4 0-.6-.2-.6-.6l-.1-.5c-.2-.3-.6-.8-.2-1h1.4c0-.2-.5-.6-.8-.8-.4-.2-1-.5-.7-.8l.8-.5c.2-.3.3-1 .7-.7.4.2.8 1.2 1.1 1.1.3 0 .3-.8.3-1 0-.4 0-1 .2-.9.3 0 .5.4 1 .5.4 0 1-.1 1 .2 0 .3-.3.7-.6 1-.3.3-.4 1-.3 1.4.2.5.7 1.2 1.2 1.4.4.3 1.2.5 1.7.9.5.3 1.7 1.2 2.1 1.3l.8.4s.5-.2 1.1-.2c.7 0 2.1 0 2.6-.2.6-.2 1.3-.6 1-1-.1-.6-1.3-1-1.2-1.4 0-.4.5-.4 1.2-.4.8 0 1.8.1 2-1 .2-1 .2-1.5-.8-1.8-1-.2-1.8-.2-2-1-.2-.7-.4-.9-.2-1.1.3-.2.6-.3 1.4-.4.8 0 1.6 0 1.9-.2.2-.2.3-.7.6-.9.3-.2 1.4-.4 1.4-.4s1.4.7 2.7 1.7a15 15 0 012.2 2.1"/>
+  <path d="M228.1 226.8l-.2-.6v-.3s.8 0 .7.3c0 .2-.2.2-.3.3l-.2.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M228.1 226.8l-.2-.6v-.3s.8 0 .7.3c0 .2-.2.2-.3.3l-.2.3z"/>
+  <path d="M232 225.4v-.4s.7 0 1 .3c.5.4.9 1 .9 1l-.8-.4h-.5l-.3-.1v-.3h-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M232 225.4v-.4s.7 0 1 .3c.5.4.9 1 .9 1l-.8-.4h-.5l-.3-.1v-.3h-.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M237.3 231.3l-.4-.7a8 8 0 01-.3-.4"/>
+  <path fill="#db4446" d="M217.4 226.6s.5.4.8.4h.8s.2-.5.1-.8c-.2-1.2-1.2-1.4-1.2-1.4s.3.7.1 1a2 2 0 01-.6.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M217.4 226.6s.5.4.8.4h.8s.2-.5.1-.8c-.2-1.2-1.2-1.4-1.2-1.4s.3.7.1 1a2 2 0 01-.6.8z"/>
+  <path fill="#db4446" d="M215.2 227.6s-.4-.7-1.3-.6c-.8 0-1.4.8-1.4.8h1.2c.3.3.4 1 .4 1l.7-.6a7.2 7.2 0 00.4-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M215.2 227.6s-.4-.7-1.3-.6c-.8 0-1.4.8-1.4.8h1.2c.3.3.4 1 .4 1l.7-.6a7.2 7.2 0 00.4-.6z"/>
+  <path fill="#db4446" d="M214.2 230.6s-.8.1-1.2.6c-.4.5-.3 1.3-.3 1.3s.4-.5.9-.5l1 .2-.1-.8-.3-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M214.2 230.6s-.8.1-1.2.6c-.4.5-.3 1.3-.3 1.3s.4-.5.9-.5l1 .2-.1-.8-.3-.8z"/>
+  <path d="M228.2 230.5l.3-.5.3.5h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M228.2 230.5l.3-.5.3.5h-.7"/>
+  <path d="M229 230.5l.3-.5.4.5h-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M229 230.5l.3-.5.4.5h-.8"/>
+  <path d="M228.6 227.3l.8.3-.7.4-.1-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M228.6 227.3l.8.3-.7.4-.1-.6"/>
+  <path d="M229.5 227.6l.7.2-.5.4-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M229.5 227.6l.7.2-.5.4-.2-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M224.2 233.7s-.7.2-1 .6c-.4.5-.3 1-.3 1s.6-.5 1.5-.3l1.2.3 1.3-.3s-.7.8-.7 1.3l.2 1.1c0 .7-.6 1.6-.6 1.6l1-.3a4.6 4.6 0 001.7-.8l.9-1s-.2 1 0 1.4l.2 1.6.8-.6c.2-.1.7-.4.9-.7l.3-1s0 .8.4 1.3l.6 1.6s.3-.8.6-1.1c.3-.4.7-.8.7-1a4.3 4.3 0 00-.1-.9l.4.8m-11 .6s.5-.8 1-1l1.1-.8.9-.4m1 5l1.3-.8a4 4 0 001-1"/>
+  <path fill="#db4446" d="M216.6 240.4s-.4-.5-1.1-.3c-.7 0-1.2.9-1.2.9s.6-.2 1-.1.6.4.6.4l.4-.4.3-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M216.6 240.4s-.4-.5-1.1-.3c-.7 0-1.2.9-1.2.9s.6-.2 1-.1.6.4.6.4l.4-.4.3-.6z"/>
+  <path fill="#db4446" d="M215.8 243.2s-.6 0-1.1.3c-.5.4-.5 1.2-.5 1.2s.4-.4.8-.3l.9.2v-.6c.2-.4-.1-.8-.1-.8"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M215.8 243.2s-.6 0-1.1.3c-.5.4-.5 1.2-.5 1.2s.4-.4.8-.3l.9.2v-.6c.2-.4-.1-.8-.1-.8z"/>
+  <path fill="#db4446" d="M217.2 245.8s0 .8.3 1.3c.4.5 1.1.5 1.1.5l-.3-.7c0-.4.3-.8.3-.8s-.3-.3-.7-.3h-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M217.2 245.8s0 .8.3 1.3c.4.5 1.1.5 1.1.5l-.3-.7c0-.4.3-.8.3-.8s-.3-.3-.7-.3h-.7zm16 1.3s2 1.2 1.9 2.2c0 1-1 2.3-1 2.3"/>
+  <path fill="#db4446" d="M224.2 252.6s-.4-.6-1.1-.6c-.7 0-1.4.7-1.4.7s.8-.1 1 .2l.5.6.5-.3.5-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M224.2 252.6s-.4-.6-1.1-.6c-.7 0-1.4.7-1.4.7s.8-.1 1 .2l.5.6.5-.3.5-.6z"/>
+  <path fill="#db4446" d="M222.2 255.3s-1-.1-1.4.3c-.4.5-.4 1.3-.4 1.3s.6-.6 1-.5c.5 0 1 .3 1 .3v-.7l-.3-.7"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M222.2 255.3s-1-.1-1.4.3c-.4.5-.4 1.3-.4 1.3s.6-.6 1-.5c.5 0 1 .3 1 .3v-.7l-.3-.7z"/>
+  <path fill="#db4446" d="M224 258.1s-.3.7 0 1.1c.3.5 1 .8 1 .8s-.3-.4-.2-.8c.1-.3.7-.8.7-.8l-1.4-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M224 258.1s-.3.7 0 1.1c.3.5 1 .8 1 .8s-.3-.4-.2-.8c.1-.3.7-.8.7-.8l-1.4-.2z"/>
+  <path fill="#db4446" d="M236 259.3s-.8-.2-1.2 0c-.5.3-.8 1.4-.8 1.4s.7-.6 1.2-.5c.5 0 1 .3 1 .3v-.8l-.2-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M236 259.3s-.8-.2-1.2 0c-.5.3-.8 1.4-.8 1.4s.7-.6 1.2-.5c.5 0 1 .3 1 .3v-.8l-.2-.4z"/>
+  <path fill="#db4446" d="M236.4 262.2s-.6.6-.4 1.1l.6 1s0-.7.2-1l1-.3-.7-.5a15.8 15.8 0 01-.7-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M236.4 262.2s-.6.6-.4 1.1l.6 1s0-.7.2-1l1-.3-.7-.5a15.8 15.8 0 01-.7-.3z"/>
+  <path fill="#db4446" d="M239.4 263s-.3.8.2 1.3c.6.5 1 .5 1 .5s-.3-.7-.2-1.1c.1-.5.5-.7.5-.7l-.8-.2-.7.3"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M239.4 263s-.3.8.2 1.3c.6.5 1 .5 1 .5s-.3-.7-.2-1.1c.1-.5.5-.7.5-.7l-.8-.2-.7.3z"/>
+  <path fill="#ffd691" stroke="#000" stroke-width=".5" d="M208.8 316.4c2 .6 3 2 3 3.8 0 2.3-2.2 4-5 4-3 0-5.3-1.7-5.3-4 0-1.7 1-3.6 3-3.8l-.2-.4-.7-.7h1.2l.8.5.5-.7c.3-.4.6-.5.6-.5l.6.6.3.5.7-.4.8-.3s0 .4-.2.7l-.1.7"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".5" d="M206.3 326.7s-3.8-2.6-5.5-3c-2-.4-4.5 0-5.5 0 0 0 1.2.8 1.8 1.4.5.5 2.3 1.5 3.3 1.8 3 .8 6-.2 6-.2m1 .2s2.4-2.5 5-2.9c3-.4 5 .3 6.2.6l-1.5.8c-.5.3-2 1.5-4 1.6-2 0-4.4-.3-4.8-.2l-.9.1"/>
+  <path fill="#ad1519" stroke="#000" stroke-width=".5" d="M206.7 323.8a4.8 4.8 0 010-7.1 4.8 4.8 0 011.5 3.5 4.9 4.9 0 01-1.5 3.6"/>
+  <path fill="#058e6e" stroke="#000" stroke-width=".5" d="M205.7 329s.6-1.5.6-2.7l-.1-2.1h.8s.3 1.1.3 2l-.1 2.4-.7.1-.8.3"/>
+  <path fill="#fff" d="M254 190.7c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M254 190.7c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M255.4 188.2c0-.6.5-1 1.1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M255.4 188.2c0-.6.5-1 1.1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M256.4 185.2c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M256.4 185.2c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M256.5 182c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M256.5 182c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M255.7 179c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M255.7 179c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M254.1 176.1c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M254.1 176.1c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M252 173.8c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M252 173.8c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M249.4 171.8c0-.5.5-1 1.1-1a1 1 0 010 2c-.6 0-1-.4-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M249.4 171.8c0-.5.5-1 1.1-1a1 1 0 010 2c-.6 0-1-.4-1-1z"/>
+  <path fill="#fff" d="M246.5 170.3c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M246.5 170.3c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M243.3 169.1c0-.5.5-1 1.1-1a1 1 0 010 2 1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M243.3 169.1c0-.5.5-1 1.1-1a1 1 0 010 2 1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M239.9 168.5c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M239.9 168.5c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M236.6 168.3c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M236.6 168.3c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M233.3 168.5c0-.6.5-1 1-1 .7 0 1.1.4 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M233.3 168.5c0-.6.5-1 1-1 .7 0 1.1.4 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M230.1 168.5c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M230.1 168.5c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M231.7 171.2c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1m.6 3.1c0-.6.4-1 1-1s1 .4 1 1c0 .5-.4 1-1 1a1 1 0 01-1-1m0 3c0-.5.6-1 1.1-1a1 1 0 010 2 1 1 0 01-1-1m-1 2.8c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1 0 .6-.4 1-1 1a1 1 0 01-1-1m-1.9 2.6c0-.5.5-1 1-1 .7 0 1.2.5 1.2 1s-.5 1-1.1 1c-.6 0-1-.4-1-1"/>
+  <path fill="#fff" d="M227.6 166.5c0-.5.5-1 1.1-1a1 1 0 010 2 1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M227.6 166.5c0-.5.5-1 1.1-1a1 1 0 010 2 1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M224.8 165c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M224.8 165c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M221.6 164c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1 1-.6 0-1.1-.5-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M221.6 164c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1 1-.6 0-1.1-.5-1.1-1z"/>
+  <path fill="#fff" d="M218.3 163.4c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M218.3 163.4c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M215 163.5c0-.6.5-1 1.1-1 .6 0 1 .4 1 1 0 .5-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M215 163.5c0-.6.5-1 1.1-1 .6 0 1 .4 1 1 0 .5-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M211.7 164c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M211.7 164c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M208.6 165.1c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M208.6 165.1c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M156 190.7c0-.5.4-1 1-1s1 .5 1 1c0 .6-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M156 190.7c0-.5.4-1 1-1s1 .5 1 1c0 .6-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M154.5 188.2c0-.6.5-1 1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M154.5 188.2c0-.6.5-1 1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M153.5 185.2c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M153.5 185.2c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M153.4 182c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M153.4 182c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M154.2 179c0-.6.5-1 1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M154.2 179c0-.6.5-1 1-1 .6 0 1 .4 1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M155.8 176.1c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M155.8 176.1c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1s-.5 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M158 173.8c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M158 173.8c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M160.5 171.8c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M160.5 171.8c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M163.5 170.3c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M163.5 170.3c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M166.6 169.1c0-.5.5-1 1-1a1 1 0 010 2 1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M166.6 169.1c0-.5.5-1 1-1a1 1 0 010 2 1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M170 168.5c0-.5.5-1 1.1-1a1 1 0 010 2c-.6 0-1-.4-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M170 168.5c0-.5.5-1 1.1-1a1 1 0 010 2c-.6 0-1-.4-1-1z"/>
+  <path fill="#fff" d="M173.4 168.3c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M173.4 168.3c0-.5.4-1 1-1s1 .5 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M176.6 168.5c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M176.6 168.5c0-.6.5-1 1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1 1 0 01-1.1-1z"/>
+  <path fill="#fff" d="M179.8 168.5c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M179.8 168.5c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".4" d="M178.2 171.2c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1m-.7 3.1c0-.6.4-1 1-1s1 .4 1 1c0 .5-.4 1-1 1a1 1 0 01-1-1m-.2 3c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1m.9 2.8c0-.5.5-1 1-1 .6 0 1.1.5 1.1 1 0 .6-.5 1-1 1a1 1 0 01-1.1-1m1.8 2.6c0-.5.5-1 1-1a1 1 0 010 2 1 1 0 01-1-1"/>
+  <path fill="#fff" d="M182.3 166.5c0-.5.5-1 1-1a1 1 0 010 2 1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M182.3 166.5c0-.5.5-1 1-1a1 1 0 010 2 1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M185.2 165c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M185.2 165c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M188.3 164c0-.6.5-1 1-1 .7 0 1.1.4 1.1 1 0 .5-.4 1-1 1s-1-.5-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M188.3 164c0-.6.5-1 1-1 .7 0 1.1.4 1.1 1 0 .5-.4 1-1 1s-1-.5-1-1z"/>
+  <path fill="#fff" d="M191.6 163.4c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M191.6 163.4c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M194.9 163.5c0-.6.4-1 1-1s1 .4 1 1c0 .5-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M194.9 163.5c0-.6.4-1 1-1s1 .4 1 1c0 .5-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M198.2 164c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M198.2 164c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#fff" d="M201.3 165.1c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1"/>
+  <path fill="none" stroke="#000" stroke-width=".4" d="M201.3 165.1c0-.5.5-1 1-1 .7 0 1.1.5 1.1 1s-.4 1-1 1a1 1 0 01-1-1z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M174.7 228.9h-1v-1h-1.5v3.6h1.6v2.5h-3.4v7h1.8v14.3h-3.5v7.3h27.2v-7.3h-3.5V241h1.8v-7h-3.4v-2.5h1.6V228h-1.6v.9h-.8v-1h-1.6v1h-1.1v-1h-1.6v3.6h1.6v2.5H184v-7.8h1.7v-3.5H184v.9h-1v-1h-1.5v1h-.9v-1H179v3.6h1.7v7.8h-3.3v-2.5h1.6V228h-1.6v.9h-.9v-1h-1.8v1zm-6 33.7H196m-27.3-1.8H196m-27.3-1.8H196m-27.3-1.7H196m-27.3-2H196m-23.8-1.6h20.2m-20.2-1.8h20.2m-20.2-2h20.2m-20.2-1.7h20.2m-20.2-1.8h20.2m-20.2-1.8h20.2m-20.2-1.7h20.2m-22-1.8h23.8m-23.8-1.8h23.8m-23.8-1.8h23.8m-23.8-1.8h23.8m-20.4-1.7h17m-10.2-1.8h3.4m-3.4-1.8h3.4m-3.4-1.8h3.4m-3.4-1.7h3.4m-5.1-2.2h6.8m-12 7.5h3.6m-5-2.2h6.6m-6.7 32.6v-1.8m0-1.8v-1.7m-1.8 1.7v1.8m3.4 0V259m1.7 3.6v-1.8m0-1.8v-1.7m0-2v-1.6m0-1.8v-2m-1.7 7.4v-2m-3.4 2v-2m7 0v2m1.5-2v-1.6m-5.1-1.8v1.8m3.5-1.8v1.8m3.3-1.8v1.8M179 252v-2m1.7-1.7v1.7m0-5.3v1.8m-1.7-3.6v1.8m1.7-3.5v1.7m-3.3-1.7v1.7m-3.5-1.7v1.7m-1.6-3.5v1.8m3.3-1.8v1.8m3.4-1.8v1.8m1.7-3.6v1.8m-3.3-1.8v1.8m-3.5-1.8v1.8m-1.6-3.6v1.8m6.7-1.8v1.8m-3.4-5.3v1.8m15.3-1.8h-3.5m5-2.2h-6.6m6.7 32.6v-1.8m0-1.8v-1.7m1.8 1.7v1.8m-3.4 0V259m-1.7 3.6v-1.8m0-1.8v-1.7m0-2v-1.6m0-1.8v-2m1.7 7.4v-2m3.4 2v-2m-7 0v2m-1.5-2v-1.6m5.1-1.8v1.8m-3.5-1.8v1.8m-3.3-1.8v1.8m1.7-1.8v-2m-1.7-1.7v1.7m0-5.3v1.8m1.7-3.6v1.8m-1.7-3.5v1.7m3.3-1.7v1.7m3.5-1.7v1.7m1.6-3.5v1.8m-3.3-1.8v1.8m-3.4-1.8v1.8m-1.7-3.6v1.8m3.3-1.8v1.8m3.5-1.8v1.8m1.6-3.6v1.8m-6.7-1.8v1.8m3.4-5.3v1.8m-7 18v-2m0-5.4v-1.8m0 5.4v-1.8m0-5.3v-1.8m0-1.8v-1.7m0-3.6v-1.8m0-1.7v-1.8m-8.3 4.6h3.5m3.3-5.3h3.4m3.3 5.3h3.5"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M186.8 262.6v-4.7c0-.8-.4-3.5-4.6-3.5-4 0-4.4 2.7-4.4 3.5v4.7h9z"/>
+  <path fill="#c8b100" stroke="#000" stroke-width=".4" d="M179.3 258.2l-2.2-.3c0-.9.2-2.2.9-2.6l2 1.5c-.3.2-.7 1-.7 1.4zm6 0l2.2-.3c0-.9-.2-2.2-.9-2.6l-2 1.5c.3.2.7 1 .7 1.4zm-2.2-2.3l1-2a5.3 5.3 0 00-2-.4l-1.7.4 1.1 2h1.6zm-4.2-5.5v-4.9c0-1.3-1-2.4-2.5-2.4s-2.4 1-2.4 2.4v4.9h4.9zm6.8 0v-4.9c0-1.3 1-2.4 2.5-2.4s2.4 1 2.4 2.4v4.9h-4.9zm-1.7-12l.4-4.4h-4.2l.2 4.4h3.6zm3.3 0l-.4-4.4h4.4l-.5 4.4h-3.5zm-10 0l.2-4.4h-4.2l.5 4.4h3.5z"/>
+  <path fill="#0039f0" d="M185.3 262.6v-4c0-.7-.5-2.7-3.1-2.7-2.4 0-2.9 2-2.9 2.7v4h6zm-6.9-12.7v-4.2c0-1-.6-2.2-2-2.2s-2 1.1-2 2.2v4.3h4zm7.8 0v-4.2c0-1 .7-2.2 2-2.2s2 1.1 2 2.2v4.3h-4z"/>
+  <path fill="#ad1519" d="M190.8 269.8c0-9.7 7-17.6 15.6-17.6s15.6 7.9 15.6 17.6-7 17.5-15.6 17.5-15.6-7.8-15.6-17.5"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M190.8 269.8c0-9.7 7-17.6 15.6-17.6s15.6 7.9 15.6 17.6-7 17.5-15.6 17.5-15.6-7.8-15.6-17.5z"/>
+  <path fill="#005bbf" d="M195.4 269.7c0-7 5-12.8 11-12.8s11 5.7 11 12.8c0 7.2-5 13-11 13s-11-5.8-11-13"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M195.4 269.7c0-7 5-12.8 11-12.8s11 5.7 11 12.8c0 7.2-5 13-11 13s-11-5.8-11-13z"/>
+  <path fill="#c8b100" d="M201.2 260.9s-1.3 1.4-1.3 2.7a6 6 0 00.6 2.4c-.2-.5-.8-.8-1.4-.8-.8 0-1.4.6-1.4 1.3l.2.8.5.9c.1-.3.5-.5 1-.5s1 .4 1 1a.9.9 0 010 .2h-1.2v1h1l-.8 1.5 1-.4.8.9.8-.9 1 .4-.7-1.5h1v-1h-1.1a.9.9 0 010-.3 1 1 0 011-1c.4 0 .7.3 1 .6l.4-1 .2-.7a1.4 1.4 0 00-1.4-1.3c-.7 0-1.2.3-1.4.9 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M201.2 260.9s-1.3 1.4-1.3 2.7a6 6 0 00.6 2.4c-.2-.5-.8-.8-1.4-.8-.8 0-1.4.6-1.4 1.3l.2.8.5.9c.1-.3.5-.5 1-.5s1 .4 1 1a.9.9 0 010 .2h-1.2v1h1l-.8 1.5 1-.4.8.9.8-.9 1 .4-.7-1.5h1v-1h-1.1a.9.9 0 010-.3 1 1 0 011-1c.4 0 .7.3 1 .6l.4-1 .2-.7a1.4 1.4 0 00-1.4-1.3c-.7 0-1.2.3-1.4.9 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7z"/>
+  <path fill="#c8b100" d="M199.2 269.9h4.1v-1h-4.1v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M199.2 269.9h4.1v-1h-4.1v1z"/>
+  <path fill="#c8b100" d="M211.4 260.9s-1.3 1.4-1.3 2.7c0 1.3.6 2.4.6 2.4-.2-.5-.7-.8-1.4-.8-.8 0-1.4.6-1.4 1.3l.2.8.5.9c.2-.3.5-.5 1-.5a1 1 0 011 1 .9.9 0 010 .2h-1.2v1h1l-.8 1.5 1-.4.8.9.8-.9 1 .4-.7-1.5h1v-1h-1.1a.8.8 0 010-.3 1 1 0 011-1c.4 0 .8.3 1 .6l.4-1 .2-.7a1.4 1.4 0 00-1.4-1.3c-.6 0-1.2.3-1.4.9 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M211.4 260.9s-1.3 1.4-1.3 2.7c0 1.3.6 2.4.6 2.4-.2-.5-.7-.8-1.4-.8-.8 0-1.4.6-1.4 1.3l.2.8.5.9c.2-.3.5-.5 1-.5a1 1 0 011 1 .9.9 0 010 .2h-1.2v1h1l-.8 1.5 1-.4.8.9.8-.9 1 .4-.7-1.5h1v-1h-1.1a.8.8 0 010-.3 1 1 0 011-1c.4 0 .8.3 1 .6l.4-1 .2-.7a1.4 1.4 0 00-1.4-1.3c-.6 0-1.2.3-1.4.9 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7z"/>
+  <path fill="#c8b100" d="M209.4 269.9h4.1v-1h-4.1v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M209.4 269.9h4.1v-1h-4.1v1z"/>
+  <path fill="#c8b100" d="M206.3 269.6s-1.3 1.5-1.3 2.8.6 2.4.6 2.4c-.2-.5-.7-.9-1.4-.9-.8 0-1.4.6-1.4 1.4l.2.7.5 1c.1-.4.5-.6 1-.6a1 1 0 011 1 .9.9 0 010 .3h-1.2v1h1l-.8 1.5 1-.4.8.9.8-1 1 .5-.7-1.5h1v-1h-1.1a.9.9 0 010-.3 1 1 0 011-1c.4 0 .7.2.9.6l.5-1 .2-.7a1.4 1.4 0 00-1.4-1.4c-.7 0-1.2.4-1.4 1 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7"/>
+  <path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M206.3 269.6s-1.3 1.5-1.3 2.8.6 2.4.6 2.4c-.2-.5-.7-.9-1.4-.9-.8 0-1.4.6-1.4 1.4l.2.7.5 1c.1-.4.5-.6 1-.6a1 1 0 011 1 .9.9 0 010 .3h-1.2v1h1l-.8 1.5 1-.4.8.9.8-1 1 .5-.7-1.5h1v-1h-1.1a.9.9 0 010-.3 1 1 0 011-1c.4 0 .7.2.9.6l.5-1 .2-.7a1.4 1.4 0 00-1.4-1.4c-.7 0-1.2.4-1.4 1 0 0 .6-1.2.6-2.5s-1.4-2.7-1.4-2.7z"/>
+  <path fill="#c8b100" d="M204.3 278.6h4.1v-1h-4.1v1z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M204.3 278.6h4.1v-1h-4.1v1z"/>
+  <path fill="#c8b100" d="M237.6 223.4h-.3a1.5 1.5 0 01-.3.4c-.2.2-.6.2-.8 0a.5.5 0 01-.1-.4.5.5 0 01-.5 0c-.3-.1-.3-.5-.1-.7v-.5h-.3l-.1.2c-.2.3-.5.3-.7.2a.6.6 0 010-.2h-.3c-.5.2-.7-1-.7-1.2l-.2.2s.2.7.1 1.2c0 .6-.3 1.2-.3 1.2a9 9 0 012.9 1.6 9 9 0 012.2 2.3l1.2-.5c.6-.2 1.3-.2 1.3-.2l.2-.2c-.3 0-1.5.1-1.5-.4v-.2a.7.7 0 01-.2 0c-.2-.2-.2-.4 0-.7l.2-.1v-.3h-.3l-.2.1c-.2.3-.6.3-.8 0a.4.4 0 01-.1-.4.6.6 0 01-.5 0c-.2-.2-.3-.5 0-.8l.2-.3v-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M237.6 223.4h-.3a1.5 1.5 0 01-.3.4c-.2.2-.6.2-.8 0a.5.5 0 01-.1-.4.5.5 0 01-.5 0c-.3-.1-.3-.5-.1-.7v-.5h-.3l-.1.2c-.2.3-.5.3-.7.2a.6.6 0 010-.2h-.3c-.5.2-.7-1-.7-1.2l-.2.2s.2.7.1 1.2c0 .6-.3 1.2-.3 1.2a9 9 0 012.9 1.6 9 9 0 012.2 2.3l1.2-.5c.6-.2 1.3-.2 1.3-.2l.2-.2c-.3 0-1.5.1-1.5-.4v-.2a.7.7 0 01-.2 0c-.2-.2-.2-.4 0-.7l.2-.1v-.3h-.3l-.2.1c-.2.3-.6.3-.8 0a.4.4 0 01-.1-.4.6.6 0 01-.5 0c-.2-.2-.3-.5 0-.8l.2-.3v-.3z"/>
+  <path d="M235.4 224h.2v.3h-.1c-.1 0-.1-.2 0-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M235.4 224h.2v.3h-.1c-.1 0-.1-.2 0-.2z"/>
+  <path d="M236.3 224.8l-.3-.2v-.2h.1l.4.3.3.2v.2h-.2l-.3-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M236.3 224.8l-.3-.2v-.2h.1l.4.3.3.2v.2h-.2l-.3-.3"/>
+  <path d="M234.6 223.7l-.2-.2s-.1 0 0-.1l.3.1.3.1v.2h-.1l-.3-.1"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M234.6 223.7l-.2-.2s-.1 0 0-.1l.3.1.3.1v.2h-.1l-.3-.1"/>
+  <path d="M233.7 223h.2v.2h-.2s-.1-.1 0-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M233.7 223h.2v.2h-.2s-.1-.1 0-.2z"/>
+  <path d="M237.3 225.5v-.2h-.3l.1.2h.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M237.3 225.5v-.2h-.3l.1.2h.2z"/>
+  <path d="M237.9 226.2l.2.2h.1c.1 0 0-.1 0-.2l-.2-.2-.2-.2h-.1v.2l.2.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M237.9 226.2l.2.2h.1c.1 0 0-.1 0-.2l-.2-.2-.2-.2h-.1v.2l.2.2"/>
+  <path d="M238.8 227v-.3h-.3v.2h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M238.8 227v-.3h-.3v.2h.3z"/>
+  <path fill="#c8b100" d="M236.2 221.1h-.6l-.1.9v.1h.2l.7-.5-.3-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M236.2 221.1h-.6l-.1.9v.1h.2l.7-.5-.3-.5"/>
+  <path fill="#c8b100" d="M234.6 221.6v.5l.9.1h.1v-.2l-.5-.7-.5.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M234.6 221.6v.5l.9.1h.1v-.2l-.5-.7-.5.3"/>
+  <path fill="#c8b100" d="M236.4 222.6l-.4.3-.6-.7v-.1h1.1v.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M236.4 222.6l-.4.3-.6-.7v-.1h1.1v.5"/>
+  <path fill="#c8b100" d="M235.3 222a.3.3 0 01.4 0 .3.3 0 010 .3.3.3 0 01-.3 0 .3.3 0 01-.1-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M235.3 222a.3.3 0 01.4 0 .3.3 0 010 .3.3.3 0 01-.3 0 .3.3 0 01-.1-.3z"/>
+  <path fill="#c8b100" d="M233.2 221.1l-.2-.7-.4-.4s.4-.2.8.1c.4.3 0 .9 0 .9l-.2.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M233.2 221.1l-.2-.7-.4-.4s.4-.2.8.1c.4.3 0 .9 0 .9l-.2.1z"/>
+  <path fill="#c8b100" d="M234.2 221.4l-.4.4-.6-.6v-.2h1v.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M234.2 221.4l-.4.4-.6-.6v-.2h1v.4"/>
+  <path fill="#c8b100" d="M233.1 221l.3-.1v.3c0 .2-.1.2-.2.2l-.1-.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M233.1 221l.3-.1v.3c0 .2-.1.2-.2.2l-.1-.3z"/>
+  <path fill="#c8b100" d="M238.3 222.5h-.5l-.3.7v.2h.2l.8-.4-.2-.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M238.3 222.5h-.5l-.3.7v.2h.2l.8-.4-.2-.5"/>
+  <path fill="#c8b100" d="M236.7 222.8v.5l.8.2h.1v-.2l-.4-.7-.5.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M236.7 222.8v.5l.8.2h.1v-.2l-.4-.7-.5.2"/>
+  <path fill="#c8b100" d="M238.4 224l-.5.2-.4-.7v-.2h.1l.9.2-.1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M238.4 224l-.5.2-.4-.7v-.2h.1l.9.2-.1.5"/>
+  <path fill="#c8b100" d="M237.3 223.2h.4a.3.3 0 010 .4.3.3 0 01-.3 0 .3.3 0 010-.4"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M237.3 223.2h.4a.3.3 0 010 .4.3.3 0 01-.3 0 .3.3 0 010-.4z"/>
+  <path fill="#c8b100" d="M240.2 224.3l.1.5-.8.3h-.2v-.2l.4-.8.5.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M240.2 224.3l.1.5-.8.3h-.2v-.2l.4-.8.5.2"/>
+  <path fill="#c8b100" d="M240 225.8l-.5.1-.3-.8v-.1h.2l.8.3-.1.5"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M240 225.8l-.5.1-.3-.8v-.1h.2l.8.3-.1.5"/>
+  <path fill="#c8b100" d="M238.6 224.3l-.2.5.9.3h.1v-.1l-.3-.8-.5.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M238.6 224.3l-.2.5.9.3h.1v-.1l-.3-.8-.5.1"/>
+  <path fill="#c8b100" d="M239.5 225.2a.3.3 0 000-.3.3.3 0 00-.4 0 .3.3 0 000 .3.3.3 0 00.4 0"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M239.5 225.2a.3.3 0 000-.3.3.3 0 00-.4 0 .3.3 0 000 .3.3.3 0 00.4 0z"/>
+  <path fill="#c8b100" d="M240.8 227h.8l.5.3s.1-.4-.3-.7c-.3-.3-.8.2-.8.2l-.2.2"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M240.8 227h.8l.5.3s.1-.4-.3-.7c-.3-.3-.8.2-.8.2l-.2.2z"/>
+  <path fill="#c8b100" d="M240.3 226.1l-.3.5.8.5v-.1h.2l-.1-1-.6.1"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M240.3 226.1l-.3.5.8.5v-.1h.2l-.1-1-.6.1"/>
+  <path fill="#c8b100" d="M241 227s.1-.1 0-.2h-.3c-.2 0-.2.1-.1.2h.3"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M241 227s.1-.1 0-.2h-.3c-.2 0-.2.1-.1.2h.3zm38-21.9v.6h-2.4v-.6h1v-1.3h-.7v-.5h.6v-.6h.6v.6h.6v.6h-.6v1.2h1"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M134.4 217.1v-1.2m-.4 1.2v-1.2m-.2 1.2v-1.2m-.3 1.2v-1.2"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M133.2 217.1v-1.2m-.5 1.1v-1m.2 1v-1m-.7 1v-1m.2 1v-1m-.9 1v-1m.2 1v-1m.3 1v-1m-.7 1v-1m-.3.9v-.8m-.1.8v-.8m-.5.7v-.6m.2.6v-.6m-.4.5v-.5m-.2.5v-.4m-.3.3v-.3m-.3.3v-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M129.2 216.6v-.2"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M135.7 217v-1m-.5 1v-1m-.4 1.2V216m143 1.1V216m-.4 1.1V216m-.3 1.1V216m-.3 1.2V216"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M276.6 217.1V216m-.6 1v-1m.3 1v-1m-.8 1v-1m.3 1v-1m-.9 1v-1m.2 1v-1m.2 1v-1m-.6 1v-1m-.3.9v-.8m-.2.8v-.8m-.4.7v-.6m.2.6v-.6m-.5.6v-.6m-.2.5v-.4m-.3.4v-.4m-.2.3v-.2"/>
+  <path fill="none" stroke="#000" stroke-width=".2" d="M272.6 216.6v-.2"/>
+  <path fill="none" stroke="#000" stroke-width="0" d="M279.1 217v-1m-.6 1v-1m-.4 1.1V216"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/et.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/et.svg
new file mode 100644
index 0000000..9145fd7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/et.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-et" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="et-a">
+      <path fill-opacity=".7" d="M-61.3 0h682.7v512H-61.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#et-a)" transform="translate(57.5) scale(.94)">
+    <path fill="#ffc621" d="M-238 3.5H800v498H-238z"/>
+    <path fill="#ef2118" d="M-240 342.5H799.3V512H-240z"/>
+    <path fill="#298c08" d="M-238 0H800v180H-238z"/>
+    <circle cx="534.2" cy="353" r="199.7" fill="#006bc6" transform="matrix(.54 0 0 .54 -25.8 74)"/>
+    <path fill="#ffc621" d="M214.3 188.2l-6.5 4.5 23.5 33 6.3-4-23.4-33.5zm29.4 78l-9.7-6.8 4-12.7-48.1.7-14-10.7 65.7-.7 12.2-36.9 6.6 15-16.7 52zm76.5-70.7l-6.3-4.8-24.3 32.4 5.6 4.7 25-32.3zM254.8 247l3.5-11.2h13.3L256.4 190l6-16.5 20.5 62.4 38.8.5-12.2 10.7-54.7-.2zm90.6 51.2l2.7-7.4-38.3-13.3-2.8 7 38.4 13.7zm-69.1-46.4l11.7-.1 4.1 12.6 38.8-28.5 17.6.6-53.1 38.7 11.5 37.2-14-8.4-16.6-52.1zm-19.8 102l7.9.2.3-40.5-7.4-.5-.8 40.9zm22-80.3l3.8 11.1-10.7 8 39.4 27.7 5 16.8-53.6-38-31.5 22.7 3.5-16 44-32.3zm-103.3 13l2.3 7.5 38.7-12.2-2-7.2-39 11.9zm83.2-4l-9.4 7.1-10.8-7.7-14.2 46-14.4 10 19.5-62.7-31.4-23 16.3-1.6 44.4 31.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eu.svg
new file mode 100644
index 0000000..b6a39f5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/eu.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-eu" viewBox="0 0 640 480">
+  <defs>
+    <g id="d">
+      <g id="b">
+        <path id="a" d="M0-1l-.3 1 .5.1z"/>
+        <use transform="scale(-1 1)" xlink:href="#a"/>
+      </g>
+      <g id="c">
+        <use transform="rotate(72)" xlink:href="#b"/>
+        <use transform="rotate(144)" xlink:href="#b"/>
+      </g>
+      <use transform="scale(-1 1)" xlink:href="#c"/>
+    </g>
+  </defs>
+  <path fill="#039" d="M0 0h640v480H0z"/>
+  <g fill="#fc0" transform="translate(320 242.3) scale(23.7037)">
+    <use width="100%" height="100%" y="-6" xlink:href="#d"/>
+    <use width="100%" height="100%" y="6" xlink:href="#d"/>
+    <g id="e">
+      <use width="100%" height="100%" x="-6" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-144 -2.3 -2.1)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(144 -2.1 -2.3)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(72 -4.7 -2)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(72 -5 .5)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#e"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fi.svg
new file mode 100644
index 0000000..c3451a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fi.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fi" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#003580" d="M0 174.5h640v131H0z"/>
+  <path fill="#003580" d="M175.5 0h130.9v480h-131z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fj.svg
new file mode 100644
index 0000000..c7549b5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fj.svg
@@ -0,0 +1,122 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fj" viewBox="0 0 640 480">
+  <path id="path564" fill="#68bfe5" d="M0 0v480h640V0H0z"/>
+  <g id="g768" stroke-miterlimit="4.8">
+    <path id="path566" fill="#fff" d="M420.9 193.2v136.4c0 44.6 80.6 71 80.6 71s80.5-26.4 80.5-71V193.2z"/>
+    <path id="path568" fill="#d21034" d="M490.3 241.2v61.4h-69.4v22.3h69.4v71.5l11.2 4.3 11.1-4.3V325H582v-22.4h-69.4v-61.4z"/>
+    <path id="path570" fill="#d21034" d="M420.9 193.2H582V246H420.8z"/>
+    <g id="g642" stroke-miterlimit="3">
+      <g id="g580" fill="#fff" stroke="#000" stroke-width=".8" transform="translate(-96.9 97.5) scale(.66486)">
+        <ellipse id="ellipse572" cx="798.2" cy="192.2" rx="13.6" ry="11"/>
+        <ellipse id="ellipse574" cx="798.2" cy="186.5" rx="12.1" ry="6.1"/>
+        <ellipse id="ellipse576" cx="798.2" cy="198.8" rx="12.1" ry="6.1"/>
+        <ellipse id="ellipse578" cx="798.2" cy="192.2" rx="12.1" ry="6.1"/>
+      </g>
+      <path id="path582" fill="#ffd100" stroke="#000" stroke-width=".8" d="M578 235.4l-1.3-3.6s-3.6-1.5-3.9-3.4c-.6-5.1-2.4-7-5.2-7.8a6 6 0 00-4.5.5c-.8 1.2-5 1.2-7.2 1.3-2.3 0-2.4-1-2.4-1-1.7 0-2.5-1.3-2.5-1.3-1.1-2.3-2-3.2-2.6-3.5 3 0 5.2-1.3 8.6-4.8 3.6-3.8 6.2-2.4 6.2-2.4-1.8 3.6.6 3.3.6 3.3 4.8-2.5.6-8.7-.8-8.4-1.5.3-1.9-.7-1.9-.7 0 1.1-1.6 1.6-1.6 1.6 1.2-7.1-3-9-3-9-.6.6-1 1.9-1 1.9-1.2 4.3-5.1 3.6-9.5 1.5-4.4-2-16 2.2-19.7 3.7-3.7 1.5-10.4 3.7-16.4.4-6-3.4-7.5-2.8-9.9-2.1-2.3.6-6.5 1.6-8 .8a8.5 8.5 0 00-3.4-.9c.4-.2-.2-1.2-.2-1.2-1.9-2.5.2-4 .2-4s-3.4 1-2 6.8l.6.8s.4 1.9 1.4 2.4v.4s.9-.4 1.1.8c.3 1.2 1.6 0 2.1-1 0 0-.9 5.4 5.7 6.7 0 0-.7-.9-.5-1.4.3-.6-.8-1-.7-1.8.1-.9-1.6-1.2-.3-1.9 1.4-.6 2-1.9 5-.1 2.9 1.7 5.2 1.3 5.2 1.3s-1.8-3.6-.8-3.6 5.4 5.4 7.5 5.2c2.2-.3 6.4-2.8 8.5-1.9 0 0 .2-1 8.2-2.4 8-1.4 18-5.4 21.7-1.9 0 0 .4 2.8 2 3.5 0 0-.3 5.8-10.2 2.6l-3.6-1s-.6-1.7-19.5 3.2c0 0-1.1.4-1.9.9-.7.5-1.7-.3-5.5 1-3.7 1.5-17.7 6-26.3 4.4-1.9-.6-3.6-.3-3.7-.6 0-.3 1 .1 1 .1-.6-.7-.9-.8-.9-.8-7.2-.8-6-4-6-4l.4 1c1.2-1.6-.4-5.2-.4-5.2h-.1a3.8 3.8 0 000-.3l.5-.4c3.5-3 7.5-3.5 7.5-3.5-2.4-3-7.4-1.4-7.4-1.4.1-3.5-1.4-7.7-1.4-7.7a12 12 0 00-7.7 4.7c-.2-3.7-4.9-5.8-4.9-5.8 1.8 2.1.7 7.2.7 7.2h.2-.5l-.1 1.1h-.2s-1.7.6-3.7 5.2c0 0-.2 1-1 2v-.4s-2.3 3-7.4 0c0 0-7-4.1-9.6-4-2.4.2-4 1.3-3.9 2 0 0-5.7-.4-7.6 2.8 0 0-4.3 1.6-.6 5 0 0 .5 1.6 1.5 2.4 0 0-.1-3.2.7-2.3l.5.6c.1.4.5 1.6 1.2 2.3l.6-.2c0-.8.2-1.8.4-2.2h.2l1 1.6 1-.6c.6 0 1.3.5 1.3.5l1.3-1.1c1.3.2 1.7-2.4 1.7-2.4a4 4 0 003.1-.5c.6 2 5.2 4.3 5.2 4.3h.2l-.6.4c2.1 1.5 6 1.1 6 1.1-1.6.6-1.4 3.7-1.4 3.7-1 .4-1 1.3-1 1.3 3.2 1.3 5.3.2 5.3.2.2 1 0 1.2 0 1.2-1.3 2.7-1.9 5.4-1.9 5.4h.1v.2s-5.7 2-8.1 4.7c0 0-.3-.8-1-.8s-2.8-1.8-3.8-2.1c-1-.3-2.5.3-3-.2-.3-.4-.1-3.6-.8-4l-.7-2c-.4 1-2.4.8-2.4.8l-.8.6-.8-.1c-.2 0-.4.5-.5 1l-.3.3v-.6c-.3.3-1.1-.1-1.4-.1-.2 0-.4.4-.5.9l-1.9.1c-.3.2 0 2.6 0 2.6-2.3 1.2-1.2 3.1-1.2 3.1 1.2 6 11.5 3.3 12.3 4.1.8.8 2.6 1 3.5 1 1 0 2.1 2.2 3.4 2.4 1.3.2 0-1.8 6.1-3.2 6.1-1.5 8.2-4 8.2-4 1.9-.4 2.4-2.7 2.5-3.6l.2 1.4c.3 2.1-1.2 3-1.2 3l5.3-1.7c2.1-.5 1.8-2.4 1.8-2.4 2 5.8 5.7 6.2 5.7 6.2.7-2.2.6-2.9.6-2.9h1.7c0-1.3-1-2.2-1.7-2.6l2.6 1.5 1-.1c0 .9 1.3 1.7 1.3 1.7l.2-1.2c1.2 1.6 3.4 1 3.4 1a7.3 7.3 0 00-.2-.8c4.7 2.9 12.2-.8 12.2-.8 2 .4 2.3-.8 2.3-.8 2.2.3 2.8-1.3 2.8-1.3 5.3-.4 9.1-4.2 9.1-4.2 2.7-.2 2.8-2.1 2.8-2.1s2.6.5 5.2-2.7c6-8.5 14.8-4 14.8-4l-5.1.3c-13.5-.1-7.9 9-7.9 9h.8c1.3.2 5.7 3.7 4 6.2v.2c-2.8 3.7-7.8.2-9.3-3-1.4-3.2-4.4-2.5-4.4-2.5s-7.5 1.3-4.4 7.3c.1 1.5 1 3.2 3.8 4.8 1.5 2.2 6.5 2.4 10.1 1.6C524 244 533 240 533 240c.7-2 3-1.5 5-4.4 2-2.8-2.9-3.8-4-5.4-1-1.5.3-1.2.3-1.2 4.4 2.3 4.8-5.2 4.8-5.2a6.6 6.6 0 004.3 5.5c2.3-2.3.6-7.2.6-7.2 5.7 10.2 9.1 8.5 9.1 8.5-3-1.8-1.5-4.4-1.5-4.4 2.7 10.8 14 1.4 14 1.4-.6 1.6 0 2.5 1 3.5s2.2 1.4 1.6 3.3c-.5 1.8-5.8 1.4-5.8 1.4s-5-.2-4.6 4c.3 1 3.6 1.4 5 1.1 0 0-.6.2 1.3.4h2.2c2.1 0 4.5-.4 4.5-.4 2.9-.6 2.4-1.6 2.4-1.6 4.5-.8 5-3.8 5-3.8z"/>
+      <path id="path584" d="M429.6 216.7s.3-.5.7-.6c.4 0 .8.2 1.2.8l.3-.2s-1.2-1.8-.8-3c.3-.6.8-1 1.6-1.1v-.3c-1 .2-1.6.6-1.8 1.3a2 2 0 00-.2.7c0 .6.2 1.2.5 1.7a1.1 1.1 0 00-.8-.2 1 1 0 00-.8.6zm141 24c-3 .5-7.5.7-7.9-.2 0-.2 0-.8 2.4-2.4l-.2-.5c-2.1 1.4-3 2.3-2.7 3 .7 1.8 7.2.8 8.5.6zm-58.4 1.7c-.7-1-.3-2.5 1-4.3l-.5-.3c-1.4 2-1.7 3.6-1 5z"/>
+      <path id="path586" d="M508.1 237.8c0 1.9 1.4 3.6 3.9 5.1l.3-.5c-2.4-1.4-3.6-3-3.6-4.6-.2-2.5 2.5-4.5 2.6-4.5l-.3-.4c-.2 0-3 2.1-2.9 5zm52 .7c-.8 1.3-.5 2.8-.5 2.8h.5c0-.1-.2-1.4.5-2.5a3 3 0 012-1.2v-.5c-1.1.2-2 .7-2.4 1.4zM441 215.1h-.2v.2s-.2 1.6-1 2a.8.8 0 01-.6 0l-1.3-.7c-.2-.2-.4-.3-.8-.2a1.8 1.8 0 01-.4-1.4c.1-.7.6-1.4 1.6-2l-.2-.3c-1 .7-1.6 1.5-1.7 2.3 0 1 .5 1.6.5 1.6v.1h.2c.3-.1.3 0 .6.2l1.4.8h1c.7-.5 1-1.9 1-2.2 3.2.7 5.8-3.3 6-3.4l-.3-.2s-2.7 4-5.8 3.2z"/>
+      <path id="path588" d="M433.1 214.5a3 3 0 00.4 2c.3.5.7.8 1 .9.5 0 .8-.3 1.2-.6.2-.2.4-.4.6-.4l.3.2.2-.2-.5-.3c-.3 0-.6.2-.8.5s-.6.5-1 .5c-.2 0-.5-.3-.8-.8a2.2 2.2 0 01-.3-1.7c.4-1.4 2.1-2.5 2.1-2.5l-.1-.3c-.1 0-1.9 1.2-2.3 2.7zm-4.4 20.7c.1-.6.6-1 1.3-1.4-.2 0 .6.6 1.3.6l.5-.3c.2.2 1.4 1.3 1.4 2.7 0 .3 0 .6-.2.9l.3.1c.9-2.1-1.4-4-1.4-4h-.2l-.4.3c-.6 0-1.3-.6-1.3-.6-1 .4-1.4 1-1.6 1.6zm10.3-5.4c-.7.1-2.5.4-3.1 1.4-.2.4-.3.8-.1 1.2l.2.6c.6 1.6 1.2 3.2 1.9 3.6l.1-.3c-.6-.3-1.2-2-1.7-3.4l-.2-.6a1 1 0 010-1c.5-.7 2.2-1 3-1.1.4 0 .5 1.5.6 2.4h.3c-.1-1.4-.3-2.8-1-2.8z"/>
+      <path id="path590" d="M433.9 231.4c-.4.3-.3.8-.3.9 0 .1.2 4 2 4.8l.1-.3c-1.6-.7-1.8-4.5-1.8-4.6 0 0 0-.4.2-.6.3-.2.8-.3 1.6 0l.1-.3c-.9-.3-1.5-.2-1.9 0z"/>
+      <path id="path592" d="M432.4 231.7c-.8.6-.7 2.2-.7 2.3h.3s0-1.6.6-2c.3-.2.6-.2 1 0l.1-.4c-.5-.2-1-.2-1.3 0z"/>
+      <g id="g632" transform="translate(-96.9 97.5) scale(.66486)">
+        <path id="path594" d="M862.3 169.5s1.3 3 1.3 5.3c0 .4-.2.7-.3 1l-.5-1.3-.3 1s-.6 1.4.3 2.9c1.2 2 4.2 3.2 9 3.7v.1a.8.8 0 00-.4.1l-.2.2v.4c.2.5.7.5 1.8.5l.7.1.6.2-.1-.1c1 0 2.3.3 3.6.8l-1 .2 1.1.5c.1 0 8.7 3.5 12.2 6.3-1 .9-5.3 4-12.7 2.2l-1.2-.3.8 1s4.9 5.6 5.9 9c-1.7 0-8.2 0-10.5-2l-.5.5s3 4.6 3.8 8.1c-1 .2-3 .3-4.3-1.4l-.6-.7-.3 2c-.6-.5-1.4-1.1-1.4-1.9v-.4l-1.8.3-3.8-2.3a8 8 0 00-.6-.4l-.4.7.6.3c.8.6 2.2 1.7 2.3 3.3H863v.5c0 .3 0 1.4-.9 3.7-1.1-.2-5.3-1.7-7.8-8.8l-.8.2v.2c0 .7-.2 2.3-2.4 2.9l-6.5 2a4.5 4.5 0 00.8-2.8v-.8a20.3 20.3 0 01-.2-2.6c0-1.5.3-2.4 1.4-3l-.4-.8c-.1 0-9.6 3.9-14.3 2.3.2-1 1-4.2 2.6-7.6l-.2.2c.3-.2.6-.6.3-2.2v-.5l-.5.2s-3 1.4-7.4-.2c0-.4.3-1 1.2-1.4l.3-.1v-.8c0-1.2.1-4 1.8-4.6l-.2-.8s-5.1.4-8.2-1.3a11 11 0 014.5-1.9h.3v-.4a6 6 0 00-.5-2.3c1.2.4 2.6.7 3.1.3l.2-.1-.2-3.1h-.8l.1 2.6-3-.7-1.2-.4.8 1a4 4 0 01.7 2.4 12.7 12.7 0 00-5 2.3l-.5.4.5.3c2.4 1.6 6.1 1.8 8 1.7a8.4 8.4 0 00-1.3 4.5v.4a3.1 3.1 0 00-1.5 2.2v.3l.2.1a11 11 0 007.9.5v.9c-2 4.2-3 8.3-3 8.3v.4h.3c3.9 1.6 10.7-.5 13.8-1.6-.4.7-.7 1.5-.7 2.5a22.1 22.1 0 00.3 3.4c0 2.3-1.5 3.2-1.6 3.2l.3.8 8-2.4c1.8-.5 2.5-1.6 2.8-2.5 3.1 7.4 8 8 8.3 8.1h.3l.1-.3a14 14 0 001-4 439.6 439.6 0 002.4-.1v-.5c0-.7-.1-1.3-.4-1.8l1.4.8 1.3-.2c.3 1.3 1.9 2.4 2.1 2.5l.5.3.3-1.7c2 1.7 4.7 1.2 4.9 1.2l.3-.1v-.4c-.4-2.7-2.2-5.9-3.3-7.6 3.5 1.6 9.9 1.5 10.2 1.5h.4v-.5a30 30 0 00-5.6-9c8.2 1.5 12.6-2.8 12.8-3l.3-.3-.4-.2a53.8 53.8 0 00-11.6-6.3l.9-.2-1-.5a12.8 12.8 0 00-5.8-1.4c-1-1.2-1.5-1.3-1.6-1.4-5.6-.6-7.6-2.1-8.4-3.3v-.3l.2-.3c.5-.7.7-1.6.7-2.6 0-2.6-1.3-5.5-1.3-5.6l-.8.3z"/>
+        <path id="path596" d="M836.8 167.9s-.6 3-3.2 4.5c-2 1-4.5 1-7.6-.3l-.4-.1v.4a5 5 0 002 3.2c1.3 1 3.3 1.4 5.9 1.2-.9 1-3.6 4.4-3.6 7.8v.5c.4.2 4.6 1.4 6.6-1.1 0 1 .4 4.5 1.7 5.8.8.8 1 1.8 1 2.7 0 .8-.2 1.4-.2 1.4l-.2.6.5-.4c.2-.1 4.1-3 5.3-6.7 0 0 .7-1 1.9-1.3v.5c0 1.5.6 4.1 4.8 5.7l.3.1v-.3a7.1 7.1 0 010-.7c0-1.1 0-3 1.1-4a2.8 2.8 0 00.6-3.3c.9.2 2.9.9 3.7 2.4 1.2 2.2 5.3.4 5.5.4l-.1-.5s-1.8.4-2.9-.3a2.1 2.1 0 01-.8-1.5l-.2-2.4c0-1-.2-1.7-.7-2.2.5 0 1.6 0 2 1 .8 1.6 3.3 1.7 3.4 1.7l.9.1-.7-.5s-2.2-1.4-1.8-3.3l.3-1.4c.6-2.5 1.6-6.6.7-9.2l-.4.2c.2.6.3 1.4.3 2.2 0 2.2-.7 5-1 6.7l-.4 1.4a2.6 2.6 0 000 .5c0 1.3.7 2.2 1.3 2.7-.7-.1-1.7-.5-2-1.3-.7-1.4-2.3-1.4-3-1.3l-.6.1.4.4c.7.4.8 1 .8 2.3l.2 2.3c.1.8.5 1.4 1 1.8.6.4 1.2.4 1.7.5-1.2.3-2.9.5-3.5-.6-1.1-2.2-4.3-2.7-4.4-2.8h-.5l.2.4s.4.6.4 1.4c0 .5-.2 1.2-.7 1.7-1.1 1.1-1.3 3.2-1.3 4.3v.4c-3.6-1.5-4.2-3.7-4.2-5v-1l.2-.3h-.4a3.5 3.5 0 00-2.5 1.8 15 15 0 01-4.7 6.2 6.9 6.9 0 00.1-1c0-.9-.2-2-1-2.9-1.5-1.4-1.7-6-1.7-6v-.8l-.4.7c-1.6 2.8-6.2 1.4-6.3 1.4-.2-3.5 4-8.1 4-8.2l.4-.4h-.6c-2.7.4-4.8 0-6.2-1a4.6 4.6 0 01-1.6-2.5c3 1.1 5.6 1.2 7.6.1a7.4 7.4 0 003.4-4.8c3-6.6 5.5-7.7 5.5-7.7l-.1-.4c-.2 0-2.8 1-5.8 8z"/>
+        <path id="path598" d="M843.5 158h-.2l-2.4 3.3h.7a31 31 0 0119.7 9.2l.3.3 2.3-2.5-.2-.3c-6.5-10.2-20.1-10-20.3-10zm.2.9c1.6 0 13.2.3 19.2 9.3l-1.3 1.4a33 33 0 00-19.3-8.9 631.2 631.2 0 011.4-1.8z"/>
+        <path id="path600" d="M841.6 164.8a11 11 0 00-2.1 4.8l.1.4a7.3 7.3 0 00-2 5.5c0 1.3.2 2.6.6 3.8l.3.7c1.2 3.4 2.3 6.4 7.8 4.6 5.2-1.6 5.4-2 6.7-4.2l.4-.5c.7-1.2 1.5-1.4 2.3-1.7 1-.3 2-.6 3-2.4l.8-1.3c1-1.3 2.2-3 2.3-5h-.4a9.8 9.8 0 01-2.2 4.7l-1 1.4a3.6 3.6 0 01-2.6 2.2 3.9 3.9 0 00-2.6 1.8l-.4.6c-1.2 2.1-1.4 2.4-6.5 4-5 1.6-6-.9-7.2-4.4l-.3-.7c-1.4-3.8-.3-7.6 1.6-9l.6-.5-.9.1v-.1c0-.7.7-2.6 2-4.5 1.2-1.6 4-3.1 4-3.2l-.2-.4c-.2.1-2.9 1.7-4.1 3.3z"/>
+        <path id="path602" d="M839.2 178.7c.9.6 2.1.5 3.7 0 0 .5 0 1.7 1 2.5 1.2 1 3 1.2 5.5.6v-.5c-2.4.6-4.2.4-5.2-.5a3 3 0 01-.9-2.4v-.4l-.3.2c-1.5.6-2.7.7-3.6 0-1.5-1-1.4-3.7-1.4-3.7h-.4s-.2 3 1.6 4.2z"/>
+        <path id="path604" d="M842 175c-.6.2-.8.7-.8 1.1v.3c.2 1.2 1.5 2 2.6 2.3 1.2.3 2.6.4 3.1-.3.2-.3.4-.8 0-1.7a3.7 3.7 0 00-4.8-1.7zm2 3.3c-1-.3-2.2-1-2.3-2 0 0-.1-.7.5-.9a3.3 3.3 0 014.2 1.6c.3.4.3.8.1 1-.3.5-1.4.6-2.5.3zm-2-3.3zm1.6 6c-.3 2.5 0 2.6.1 2.6h.2l.2-.1 1.4-2-1.8-.8v.3zm.5.4l.7.3-.8 1.1v-1.4zm-4.2-2.4l-.1 2.3 2-2.4-2-.2v.3zm.4.2h.6l-.6.8v-.8z"/>
+        <path id="path606" d="M838.5 178.2s1.5 2.9 1.8 4c.1.6 1 1.4 2 1.7 1 .4 2 .4 2.7-.1l1.3-1.1c.4-.5.6-.6 1-.5v-.5c-.6 0-.9.2-1.3.6l-1.3 1c-.8.6-1.7.4-2.2.2-1-.3-1.7-1-1.8-1.5-.3-1-1.7-3.9-1.8-4l-.4.2zm2-8.6a5 5 0 00-2.4 2.8l.4.1s.7-1.8 2.1-2.5a2.9 2.9 0 012.4 0l.1-.4c-1-.4-1.8-.4-2.7 0zm10.8 5.2c.2 0 3.2 2.4 1.5 5.2l.3.3c2-3.3-1.5-5.9-1.5-6l-.3.5zm-9.2.4s-.5 1.7 2 2.3c0 0-2.3 0-2.5-.6-.1-.6 0-1.9.5-1.7zm7.5 2c0 .2-.2.3-.3.3a.3.3 0 01-.3-.2c0-.2.1-.3.3-.3.1 0 .3.1.3.3zm.2 1.2c0 .1 0 .2-.2.2a.3.3 0 01-.3-.2.3.3 0 01.3-.3c.1 0 .2.1.2.3z"/>
+        <circle id="circle608" cx="848" cy="177.8" r=".3"/>
+        <path id="path610" d="M848.8 179.4a.3.3 0 11-.6 0c0-.1.1-.2.3-.2l.3.2zm-7.1-7.3a.3.3 0 01-.6 0 .3.3 0 01.5 0z"/>
+        <circle id="circle612" cx="841.6" cy="173.2" r=".3"/>
+        <circle id="circle614" cx="840.1" cy="172.7" r=".3"/>
+        <path id="path616" d="M840.8 174.3a.3.3 0 01-.2.3.3.3 0 010-.6.3.3 0 01.2.3zm4.8-9.6s3.5 2.2.1 6.3c0 0 1.7-1.3 1.8-3.4.2-2.1-1.2-3.8-2-2.9zm13.5 5.9c-1.2.6-2.8-.5-3.6-1.5-.8-1-2.5-1.3-3.6.6-1 1.8-2.5 2.5-2.5 2.5s1.5-.8 3-2.5c1.5-1.6 2.4-.3 3.9.5 1.4.8 1.7 1 2.7.5v-.1z"/>
+        <path id="path618" d="M858.8 170.9a1.7 1.7 0 01-2.2-.1c-1-.8-1.7-1.8-2.8-1.2-1.2.6-3.3 2.2-3.3 2.2s3.5-2.4 4.2-1.8c.6.5 2.2 1.8 3.1 1.4l1-.5z"/>
+        <path id="path620" d="M856.1 172.3c-1.1-.8-2.2 1-3.1.8-1-.2-1.7-1.8-1.7-1.8s.8 1.6 2 1.3c1.3-.4 2.1-1.2 2.9-.6.7.6-.1.3-.1.3z"/>
+        <path id="path622" d="M854.4 172.6a2 2 0 01-2.4-1.9s.7 1.8 2.6 1.5l-.2.4z"/>
+        <path id="path624" d="M854.3 171.2c.1.5.1.8-.5.8s-1-.2-1-.8c0-.5 1.4-.4 1.5 0zm-7.8-3a.7.7 0 01-.7.6c-.4 0-.5-.2-.5-.6s0-.7.5-.7.7.3.7.7z"/>
+        <path id="path626" d="M844 165.7s3.8 0 2 4.7c0 0 1.4-2.3.5-4-1-1.6-2.3-1.2-2.3-1.2s-.4.3-.2.5z"/>
+        <path id="path628" d="M844 167.6c0 1 .6 1.9 1.8 2.9l.3-.4c-1.1-.9-1.7-1.7-1.7-2.5s.6-1.3.6-1.3l-.3-.3s-.7.6-.8 1.6z"/>
+        <path id="path630" d="M844.8 168.4c.1.5.6 1 1.2 1.2l.2-.4c-.5-.2-.9-.6-1-1-.2-.8.4-1.7.4-1.7l-.4-.3s-.7 1.2-.4 2.2zm5.1 2.6s.7 1.5-.3 3.1l-1 1.6s1.2-2.3.7-3.2c-.4-1 .6-1.5.6-1.5zm14.6 15.8c3.8.7 12.5 7.5 12.5 7.5l.5-.6c-.3-.3-8.9-7-12.9-7.7l-.2.8zm3.4 9.5c.2 3.5 4 5.6 4 5.7l.5-.7s-3.5-2-3.7-5h-.8zm-9.3.8c0 3.8 3.6 8.4 3.8 8.6l.6-.5s-3.6-4.6-3.6-8.1h-.8zm-12.1.4c.6 1.3.6 1.9.4 2.2-.2.4-.6.4-.6.4l.1.8c.3 0 .9-.2 1.2-.8.4-.7.3-1.7-.4-3l-.7.4z"/>
+      </g>
+      <g id="g640" fill="#fff" stroke="#000" stroke-width=".2">
+        <path id="path634" d="M429.6 216.3s.1 1.7 1.4 2.7c0 0-.1-1.8.3-2.6 0 0-.7-.8-1.7-.1zm2.6 1s.3 1.6 1.2 2.3l.6-.1s.2-2 .5-2.2c.3-.2-1.3.7-2.3 0z"/>
+        <path id="path636" d="M434.5 217.3l1 1.6 1.2-.7-.2-1.8s-.7-.2-2 .9zm4.7.3l-1.3 1.1s-.7-.5-1.2-.5l.2-1.7s1-.7 2.3 1.1zm-9.3 16s-.2-2.4 0-2.5c0 0 1 .3 1.4 0 0 0 .5 1.8.4 2.6-.2.8-1.1.5-1.8 0zm6-2.4s-.1-2 .2-2.3c0 0 2 .3 2.4-.8l.7 2s-2.1-.3-3.4 1z"/>
+        <path id="path638" d="M433.8 231.6s.3-2.1.7-2.2c0 0 1 .3 1.3-.1v2.6s0-1.1-2-.3zm-2.3.3s.5-1.9.8-1.9 1 .5 1.4.2v1.4s-1.6-.4-1.9 1.9l-.3-1.6z"/>
+      </g>
+    </g>
+    <g id="g682" fill="#00a651" stroke="#000" stroke-width=".8">
+      <path id="path644" stroke-width=".5" d="M461.7 270.4s5.2 4.9 3.9 9.2c0 0 3.3-7.3-.3-9.5-3.6-2-3.7-.5-3.6.3z"/>
+      <path id="path646" fill="#964b36" stroke-width=".5" d="M455 275.1s-1.3 2 .2 3.3c0 0-1.7 2.4-.4 4.4 0 0-1 2.1-.8 4.4 0 0-.8 3.5 1 5.1 0 0 2 1 3 .1 0 0 1.7-2.6.6-5.3 0 0 1.2-2.3-.2-5.2 0 0 .4-1.6-.7-3.5 0 0 .7-1.2.1-2.2 0 0-2.5-2.7-2.8-1z"/>
+      <path id="path648" stroke-width=".5" d="M456.5 269s-6.2-12-10.6-12.5c-4.4-.5-4.6-4.8-4.6-4.8s.5 2 4 2 10.2 5 11 8.7c.7 3.7 1.5 3.2 1.5 3.2l-1.3 3.4z"/>
+      <path id="path650" stroke-width=".5" d="M456.5 268.1s2.3-15.1 12.2-15.4c9.9-.2 6.6.8 9-.8 0 0-6.6 3.4-10.7 4-4.2.4-7.6 8.5-7.4 10 0 1.5-2.3 4.4-3.4 3.4-1.2-1 .3-1.2.3-1.2z"/>
+      <path id="path652" stroke-width=".5" d="M458.8 273.8s2.3-6 6.1-4c0 0-3-5.8-8.4-.8 0 0 2.4 3.3 2.3 4.8zm-7.5-6s3.2 13.4-1.8 17.5c0 0 .2-6.9-2.9-11-3-4.2 3-8.7 4.7-6.5z"/>
+      <path id="path654" stroke-width=".5" d="M451.7 270.1s5.9 5.7 6.2 7.6c.4 1.8 1.8-5.7-1-7.8s-5.7-2.5-5.7-2.5l.5 2.8z"/>
+      <path id="path656" fill="#964b36" stroke-width=".5" d="M440.8 285s.5 2.3 2 2.8c0 0 0 1.7 1.4 2.2 0 0-.7 1.5.4 2.4 0 0-.2 3 .8 3.5 0 0 2.7-.1 3.6-.9 0 0 .5-1.9-1-3.8 0 0 .3-1.8-1.2-2.8 0 0 .5-2.5-1.4-3.4 0 0-.3-2-1.4-3 0 0-2.2 3.1-3.2 3z"/>
+      <path id="path658" stroke-width=".5" d="M443.7 282s-7.7-2.8-12 1.2c0 0 6.6 1 7.4 2.3.8 1.3 4.9-2.2 4.6-3.5z"/>
+      <path id="path660" stroke-width=".5" d="M441.3 286.8l-1.4-1c-.7-.6-7.2-2.3-8.1 4 0 0-2.4-6.3 1-7 3.5-1 6.2 1 8.5 4m-5-12.8s2.3 5.2 3.2 5.4c.9.3 1.5-.6 1.5-.6s-3.1-4.6-4.8-4.8zm-1.8-7.9s-2-6.6-4.4-4.8c-2.4 1.7-1.8 6.5-1.8 6.5s-4.7-5-2-8.8c2.8-3.9 8.2.4 8.2 7.1z"/>
+      <path id="path662" fill="#964b36" stroke-width=".5" d="M439.9 279.8s0 1.3.9 1.6c.8.4 2.5 1 2.5.3s-1.3-3.7-1.8-3.3c-.5.4-1.4.4-1.6 1.4z"/>
+      <path id="path664" stroke-width=".5" d="M438.4 272s-.3-5.7 3.5-7.9c0 0 .7.2 1.1-1 0 0-3 7.3-2.1 11l-.1.4"/>
+      <path id="path666" stroke-width=".5" d="M439.1 265s6.8-14 15-9.1c0 0-8.6 1.7-11.7 7.9l-3.1 4.6-.2-3.4z"/>
+      <path id="path668" stroke-width=".5" d="M435.5 270.1s-2-9.4-3.3-10.6c-1.2-1.3-3.3-2.6-5.9-.5 0 0 4.4-3.9 9-.6 4.7 3.2 3.7 8.4 3.7 8.4l-.5 6.5-3.1-2.9"/>
+      <path id="path670" stroke-width=".5" d="M442.8 281.3s-8.3-15.7-13.7-4.5c0 0-1 2.9.1 4 0 0-3-2.3-1.6-7.8s10.5-3 13.2 1.5c2.6 4.5 3.3 6.8 3 7-.4.3-1-.2-1-.2zm23.3 4.5s6-12.4 9.5-6.8c0 0 1 2.8-.5 4 0 0-2.4-3-4.5.6-2.2 3.5-1.3 3.2-1.3 3.2s-2.2.6-3.2-1z"/>
+      <path id="path672" stroke-width=".5" d="M475 283s3.3 1.7 2.2 5.2c0 0 4.4-8.4-1.6-9.2 0 0 1.1 2.7-.5 4zm.5-8.6s7.9 2.3 8.1 5.7c0 0 1.4-6.6-3.1-8.6 0 0-5.4 1-5 3z"/>
+      <path id="path674" stroke-width=".5" d="M479 264c3.4-6.6 7.6 2.1 7.6 2.1s1.5-6.9-2.7-8.1c-4.3-1.3-7 14.7-7 14.7l-5 1s1.3-13.8 8.8-15h1"/>
+      <path id="path676" stroke-width=".5" d="M473 268s-4.8-9.8-8-10.8 1.7-2.5 3.7-.6 5.8 4.3 5.4 9.3L473 268zm-5 13.4s1.4-6.6 5.2-8.6c3.8-2 7.3-1.3 7.3-1.3s-4.5 1-5.3 3.3c-.7 2.2-2 2.4-2 2.4l-5.1 4.2z"/>
+      <path id="path678" fill="#964b36" stroke-width=".5" d="M466 285.8s-2 4-1.6 4.6c0 0-2.2 3.3-1.3 5 0 0 2.2 1.7 3.2 1 0 0 2.6-3.7 1.9-5.7 0 0 1.8-2.4 1.1-3.9 0 0-2.6.1-3.2-1z"/>
+      <path id="path680" fill="#000" stroke="none" d="M455 278.6c.2.1 1.5.7 2.3.4l.6-.5-.5-.2c-.3.6-1.7.1-2.1-.1l-.2.4zm-.1 4l-.2.5c.1 0 2.7.5 3.9-.6l-.4-.4c-1 .9-3.3.4-3.4.4zm-.7 4.4l-.3.4s3 2.1 4.9-.2l-.5-.3c-1.5 1.9-4 .2-4.1 0zm-11.5.6l.1.3c.1 0 2.6-1 2.8-2.9h-.3c-.1 1.6-2.5 2.6-2.6 2.6zm1.4 2.3v.3c.2 0 2.5-.2 2.9-1.8h-.3c-.4 1.3-2.5 1.5-2.6 1.5zm.5 2.4v.3c.1 0 2.7.1 3.6-1.3l-.3-.2c-.8 1.3-3.3 1.2-3.3 1.2zm19.7-1.7s1.1 1.2 2.4 1.1a2.3 2.3 0 001.7-.8l-.4-.4c-.4.5-.8.7-1.3.7-1 0-2-1-2-1l-.4.4z"/>
+    </g>
+    <g id="g688" fill="#964b36" stroke="#000" stroke-width=".3">
+      <path id="path684" d="M542 299.8a1.1 1.1 0 00-.3.3l.4-.3zm9.3-2.3c-.1-.2-.2-.1-.3-.2l-.4-.8h-.3l-.7-1.4a.4.4 0 000-.3 7.6 7.6 0 000-.4s-.2 0-.3-.2v-1.6l-.1-.5a2 2 0 01-.3-1.1v-1c.1-.4-.1-.6-.1-1l.1-.9v-5.4l-.1-1-.1-.4v-1.6 2.6l-.2-4.3-3.4-1.6s-.3 6.2-.2 7c0 .9.4 6.7.2 7.4l-.5 4.3s-1.6 1.2-2.2 2.4c-.7 1.3-.5 1.7-.7 1.7l1.5-.2-1.1.8a.7.7 0 01.7.1l.2.2.2-.2c.3 0 .5.4.7.3l.4-.2.2-.4c.1-.1.3 0 .4 0h.7c.3 0 .6-.5.9-.7.2-.2.4-.3.7-.3.3 0 .6.3 1 .3.2 0 .3 0 .5-.2l.4-.6.8-.1.4.1h.6l.3.2.2-.4-.1-.4z"/>
+      <path id="path686" d="M544.5 299.7h.6v.2a.2.2 0 00.2 0l.3.2h.3l.4.1c.2.1.4 0 .6-.1.2-.2.3 0 .6.2.1.1.1.1.2 0l.1-.1.3-.1.3-.1.4-.2.4.2a.8.8 0 01.2 0l.7-.5c.3-.2.5 0 .7 0h.3c.1-.1.2 0 .4 0 0-.1 0-.2.2-.3l.7.4c.1.1.7.2.6-.2 0-.4-.4-.1-.5-.4v-.6a.7.7 0 00-.3-.4c-.2 0-.2.1-.4 0l-.2-.6-.3.2c-.2 0-.2-.1-.3-.3-.3-.3-.4.2-.7.1-.2 0-.4-.5-.5-.7-.1-.1-.3-.5-.5-.4-.2.1 0 .5 0 .7h-.5c-.2 0-.2 0-.3.2-.2.4-.3.7-.7.6-.1 0-.3-.1-.4 0l-.5.2a1 1 0 01-.4 0l-.4-.4a.1.1 0 00-.2 0 8.7 8.7 0 00-.1-.2c-.2 0-.2 0-.3.3l-.1.5-.3.4-.4.1c-.2 0-.4.3-.4 0-.2-.4.3-1.1-.2-1-.1 0-.2 0-.3.2v.7c-.1.3-.7.8-.6 1 0 .3.4 0 .4 0l.2.4c.2.3.7-.4.7 0m-2.1-2.7v-.2l-.4-.1c-.2 0-.4.3-.5.4-.2.4-.2 1-.6 1h-.5v1s-.2 0-.2.2c-.1.4.2.2.4.2h1l.5-.1c.2 0 .4 0 .5-.2a2.2 2.2 0 00.2-.4v-.4c0-.2.3-.1.3-.4.1-.7-.6-.2-.5-.9"/>
+    </g>
+    <g id="g698" stroke="#000" stroke-width=".5">
+      <path id="path690" d="M550.8 277.9c0 .9-.6 1.6-1.4 1.6-.7 0-1.4-.7-1.4-1.6 0-.9.7-1.6 1.4-1.6.8 0 1.4.7 1.4 1.6zm-4.5-2c0 .9-.6 1.6-1.4 1.6s-1.4-.7-1.4-1.6c0-1 .7-1.6 1.4-1.6s1.4.7 1.4 1.6z"/>
+      <path id="path692" d="M548.7 276.5c0 1-.6 1.6-1.4 1.6-.8 0-1.4-.7-1.4-1.6 0-.9.6-1.6 1.4-1.6.8 0 1.4.7 1.4 1.6z"/>
+      <path id="path694" d="M546.4 278c0 .9-.6 1.6-1.4 1.6-.8 0-1.4-.7-1.4-1.6 0-.9.6-1.6 1.4-1.6.8 0 1.4.7 1.4 1.6z"/>
+      <path id="path696" d="M548.5 279.3c0 .8-.6 1.6-1.4 1.6-.7 0-1.4-.7-1.4-1.6 0-1 .7-1.7 1.4-1.7.8 0 1.4.7 1.4 1.6z"/>
+    </g>
+    <path id="path700" fill="#00a651" stroke="#000" stroke-width=".5" d="M549.2 261.5s13.9-19.4 28.8.7c0 0 .1 2-1.3 4.2l-.3-1.7-1 .3-.2-1-1.6-.1.5-2.2-1.7 1.4.2-1.5-2 2 .3-4.3-2.2 3.7.3-2.5-.8 1.1-.4-1.5-.7 1.5-1-.7v1l-1.8-1.5-.6 2-.9-2.2-.2 1.5-.9-1.7-.1 1.9-2.9-1.3.6 1.8-1.3-1 .2 1-1.9-.4.2 1.1-2-.4.3 1-2.7-.3 1 1-.3.6s15-5 16 13.8l-2.7 1.3.8-1.5-.8-.5-2.3-1.7.7-2.4-.8.3-.1-1.4-.4.2-.9-1.3-.2.5-.6-1.7-.7 1.2-.3-2.8-1 1.8-.2-1-.3.6-1.3-1.5-.4 1-.5-.8-.3 1-1.4-1.4v1l-1-.7-.3.5-2.1-1.1-.1 1-1.2-1-.3 1s13.6 7.8 9.4 20.4l-.8 1.6-.2-4.2-1.3 2.2.9-4.9-.9 1-.1-2-1.1 2-.4-2.2-.5.6-.8-3.2-.6 1.3-1-3.6-.8 1.5-.5-3.1-.5 1.9-1.5-2.8-.2 1.1-.9-2.2-.5.7s-2.5-.1-3.3-.7c-.7-.7-2.8 3.7-2.8 3.7l.2-2.6-.9 1.8v-1.8l-1.6 5.3-.4-3.8-.8 3.3-.4-1-.3 1.3-.5-.5-.4 1.5-.8-.6v2l-.8-1-.6 3-.4-1.2v1.3l-.6-.7-.6 3-1-1.3v2.2l.3 1.6-1-.5.4 2.6s-3.9-7.2.8-14.2c4.6-7 10.9-9 10.9-9l-.7-.6v-.6l-3.8 1.9v-1.1l-1 .8-.2-1.2-.6 1.1-.1-.5-1 1.4-.4-2-.6 2.4-.6-1.7-1.3 3.5V270l-1 2.8-.4-3-.7 3.4v-3l-1.2 3-.7-3-.5 3-.8-2.3-.7 3.4-1.2-3-.6 4.5-.7-1.8-.2 3.3-.8-2 .8 4.2-1-1.6.3 2.6-1.6-2.9v3.4l-.8-1.1-.4 1.3s-.3-13 8.6-15.6c8.9-2.5 14.6.8 14.6.8l-3.4-2.8.4-.9h-1.2l.5-1-2.7.1.8-1-2 .3v-.6l-1.3 1 .5-1.2-1.7 1.2-.1-1.7-1 1.4-.4-1.5-4 4 1-4.1-.7.9-.1-1-1.1 1.8-.3-1.2-.5 1.5-.4-1.8-.8 1.8-1-1.6-.3 2.1-.6-1.1-.8 1.6-1-1v1l-2-.9.4 1.5-1.5-1.2-.4 2-.8-1-.7 2.5-.6-2.4-.6 1.9s7.8-20.2 27.6-7c0 0 2.2 2.1 2.7 3.6s.1.2.1.2l-.4-13.9.8 6 .5-2-.1 3 2-4.3s-2.4 7.2-1.5 9.9c0 0 .9-8.4 3.9-9.4l-2.8 6 .9-.1-.6 1.2h.7l-.9 2-.5 1 .5 1 .8-.7z"/>
+    <path id="path702" d="M547.1 269.6l.4.4s1.3-1.4 3.4.4l.3-.4c-2.5-2.1-4-.4-4-.4zm-.6-6.8v.5l.9-.4-.7 1.2 1.5-.5-1.8 2.3.4.3 2.9-3.7-1.8.6.8-1.3-1.6.6.3-1.9h-.5l-.4 2.3z"/>
+    <path id="path704" d="M543.9 263l.6 1.3-1-.4 2.9 5.2.4-.5-.6 1.5.5.2 1.2-3.2-.4-.3-1 1.3-1.8-3.1.8.3-.8-1.7 1.1.6v-1.9h-.5v1l-1.8-1.1.4.8zm-1.9 6.4l.2.5c.8-.3 1.5-.4 2-.2.5.3.7.9.7 1l.5-.2s-.2-.9-1-1.2c-.6-.3-1.4-.3-2.4.1zm2.3 5.4l-.5-2.8h.6l.4 2.7zm3.8-.4l-.7-2.2.5-.1.7 2zm1.4 1.5l-.5-2.1.5-.1.6 2.1z"/>
+    <path id="path706" fill="#00a651" stroke="#000" stroke-width=".5" d="M442.6 340.2s-2.4-1-3.5-.2c-1 .7-.9 1.9-1.8 1.8 0 0 3.6.8 4.3-.1l1-1.2m.4.7s-1.6 2-1 3.3c.5 1.2 1.7 1.3 1.4 2.2 0 0 1.5-3.3.8-4.3s-1-1.1-1-1.1m-2.8-5.8s-2.5.8-2.8 2c-.2 1.4.6 2.1-.1 2.7 0 0 3.2-1.8 3.1-3v-1.5m1.2.7s1.2-2.3.5-3.4c-.8-1.2-2-1-1.8-2 0 0-1 3.5 0 4.4l1.1 1m-2.2-.9s0-2.6-1-3.2c-1.2-.7-2.2-.1-2.5-1 0 0 .7 3.6 1.8 4l1.5.3m4.4 4.2s2.7-1 3 2c.2 3-.2 2-.2 2s-1.4-3.2-3-3.7l.2-.3z"/>
+    <path id="path708" d="M443 341.3l.2 2.2h.4l-.3-2.2 1-4.9h-.4l-1 4.9z"/>
+    <path id="path710" d="M440.5 340.6l-.1.3c1.3.5 3-1 3.1-1l-.2-.3s-1.7 1.3-2.8 1zm3.4-2.9l-6-3 .2-.5 6 3z"/>
+    <path id="path712" d="M439.5 337l-.4-.4 1.2-1.2.4.4zm2.1-.6l-1.3-2.8.5-.2 1.3 2.8zm1.8 3.4v.6c1.7-.1 2 1 2 1l.6-.2c0-.3-.7-1.5-2.6-1.4z"/>
+    <path id="path714" fill="#fff" stroke="#000" stroke-width=".7" d="M471.2 341c2-1 2.4-5 2.4-5-.5 1.4-4.2 2.9-4.2 2.9 2.7-1.7 6-9.4 6-9.4-.8 2.7-8 5-12.6 7.6-4.6 2.6-2.2 10-2.2 10-1.3-.9-3.8-4.8-4.3-8.3-.5-3.5-1.8-4.9-5-5.3-3.1-.4-5 3.2-5 3.2l-4.7 2.4 4.8.2s3.4 1.1 3.4 3.8c0 2.6-3 13.3 2 19.3 3.3 4.1 16 6.5 16 6.5"/>
+    <path id="path716" fill="#fff" stroke="#000" stroke-width=".7" d="M461.9 349.3s1-4.8 4.1-4.6c3.1.2 4-3.6 5.9-4.1 1.9-.6 11.5-3.2 12.5-7.8 0 0-.9 7.6-9.7 11.4 0 0 7.1-2.3 8-3.9 0 0-3.2 6.8-10.9 7.9 0 0 7.2-.6 8.2-2.5 0 0-3.2 4.2-8.5 4.8 0 0 5 2 6.2.3 0 0-2.7 3.2-6 3.4l1 .2s-3.2 3.8-6.7 1.3-3.6.6-3.6.6"/>
+    <path id="path718" fill="#fff" stroke="#000" stroke-width=".7" d="M469 356.5s4.1 6.8 4.5 10.4c0 0 7.8 8.5 10.7 9 0 0-1.4.6-4-1.5 0 0 2.2 2.2 2.6 2.3.4 0-1.7-.2-2-.8a6 6 0 001.4 1.5l-.5-.2s-1-.1-1.6-.5c-.5-.4-.1 1-.1 1s-1.2-.3-1.6-.7c-.4-.4.1.9.1.9l-1-.3-.8.5s0 .5-.5 0c-.5-.3-1.4 0-1.4 0s-.6.6-1 .2c-.3-.4-1.5 1.6-1.5 1.6l-5-12.3"/>
+    <path id="path720" d="M473.9 378.7l-6.4-12.2.6-.4 6.4 12.3zm5.6-.8l-11-12.3.6-.5 11 12.3zm2.5-1L469.5 365l.5-.5 12.5 11.7z"/>
+    <g id="g732" transform="translate(-96.9 97.5) scale(.66486)">
+      <path id="path722" d="M823.4 360.8s-1.2-2.2-2.3-1.3c-1 .8-1.6 1-1.8.9 0 0 1 0 1.7-.5.6-.6 1.6-.3 2.4 1zm-6.6-1l.7 1.4-.8 2.3.6.2.7-2.5-.7-1.6-.5.2z"/>
+      <path id="path724" d="M823.2 360.5s-1 1-2.2.8l-1.3-.3h1.8c.7 0 1.6-.3 1.7-.5z"/>
+      <path id="path726" d="M822.9 360.7s-1.2-1.2-2-.8c0 0 1.4-.5 2.2.7l-.2.1z"/>
+      <path id="path728" d="M822.7 360.5s-1.3.9-2.7 0l-.1-.2h.2s1.7.7 2.6.2z"/>
+      <circle id="circle730" cx="821.6" cy="360.3" r=".4"/>
+    </g>
+    <path id="path734" d="M450 359.6s-.7 1.2-.3 2c.3.7 2 1 2.1 2 .2 1 .8 1 1.5 1l.9-.3s-3.1-1.6-4-4.3l-.2-.4z"/>
+    <g id="g744" fill="#964b36" stroke="#000" stroke-width=".5">
+      <path id="path736" stroke-width=".3" d="M549.4 334.8s5.6-7.4 10.6-5.5c5 2 8.1 3 8.1 3s.1 4.9-2.5 4.9-5.2-5-7.6-3.5a13 13 0 00-4.5 4.2c-.1.7-6.3.8-4.1-3.1z"/>
+      <path id="path738" d="M528.2 370.4s-1.6 1.6-.9 2c.7.4 2.1 0 2.1-.6s-1-1.6-1.2-1.4z"/>
+      <path id="path740" d="M527 372s-3-1.7-5.2 2.2c-2.3 3.8-4.1 10.1-5.4 11-1.3.8 12.8-6.2 13-9.2 0 0 .9-3.8-.6-3.7-1.5 0-1.6.2-1.9-.4z"/>
+      <path id="path742" stroke-width=".3" d="M527.3 372.4s-3 .7-3.6 4.9c-.6 4.2-4.7 6.3-5 6.5m49.4-51.6s-4.4 1.6-3.7 4.7"/>
+    </g>
+    <path id="path746" fill="#fff200" stroke="#000" stroke-width=".3" d="M533.7 341.3s.2-10.6 8.9-10.2c1.6.2.8 2.1.8 2.1s2-1.3 2.8.8c0 0 2.7-1.2 3 1.5 0 0 3-.4 2.6 2 0 0 2-.5 2 1.2 0 0 2.3-.9 2 1.5 0 0 2.6-1.7 2.3 1.4 0 0 2.6-1.9 3.5 1.2 1 3.2-2.6 9.8-6.1 11.5"/>
+    <path id="path748" d="M557.9 342s1.1 8.2-3.5 11.3l.1.2c4.9-3 3.7-11.5 3.7-11.6h-.3zm-5.7 9l.2.2c3-2.9 3.7-10.6 3.7-11h-.3s-.7 8-3.6 10.8zm-2.7-1.9h.3a26 26 0 014.1-10.3l-.2-.1s-3.8 5.5-4.2 10.4zm-2.2-1.4h.3c.5-5.7 4.4-10 4.4-10.1l-.2-.2s-4 4.5-4.5 10.3zm-3-2h.3c.3-6.7 4.8-10 4.8-10l-.2-.3s-4.6 3.4-5 10.4zm-2.8-1.6h.3c-.2-6.2 4.5-10 4.6-10l-.2-.2s-5 3.8-4.7 10.2zm-5-2.3h.3a10.2 10.2 0 016.8-8.4v-.3a10.5 10.5 0 00-7.1 8.7z"/>
+    <path id="path750" fill="#00a651" stroke="#000" stroke-width=".3" d="M528.6 354.2s-1.5-9.9 4.4-13c0 0 1.1-.2 1.7 1.2 0 0 3.1-1.3 3.2 1.3 0 0 1.6-1.2 2 .5 0 0 3.3-.7 2.7 1.8 0 0 2.8-.8 2.5 1.6 0 0 2.8-1 2.4 1 0 0 3-.6 2.2 1.8 0 0 3.7-.4 2.6 2.1 0 0 2.7-.7 2 1.4 0 0 3.6.7 2 3a24.1 24.1 0 01-9.8 7"/>
+    <path id="path752" fill="#00a651" stroke="#000" stroke-width=".3" d="M525.4 364.1s-2.4-8.2 2.2-10.3c0 0 .9-.2 1 .6 0 0 1-1.3 1.8-.1 0 0 2.3-1.1 2.9.6 0 0 1.5-1.3 2.3.6 0 0 1.5-.6 1.5 1 0 0 2-1 2 1 0 0 2-.8 1.5 1.2 0 0 3 .5 2.1 1.9 0 0 2.7.7 1.7 1.8 0 0 2.8-.3 1.3 1.6 0 0 2.2-.7 1 1.7-1.3 2.4-5.2 5-8 5.4"/>
+    <path id="path754" fill="#00a651" stroke="#000" stroke-width=".3" d="M528.3 370.6s-5.1-5-2.7-6.4c0 0 1 .3 1.5 1.4 0 0 1.2-1.8 2 0 0 0 1.8-.6 1.8.7l1.4 1s1.7-.1 1.4 1c0 0 1.9-.3 1.8.7 0 0 1.6.1 1.5 1.2 0 0 2.8.5 1.5 1.9 0 0-4.8 1-8.3-.4 0 0-1.7-.6-1.9-1.1z"/>
+    <path id="path756" d="M545.9 362.4v.3a36 36 0 008.6-8.7l-.3-.2c0 .1-5.4 7.5-8.3 8.6zm-1.8-1.3l.2.3c2.6-1.5 7.9-8.5 8-8.8l-.1-.2c-.1.1-5.5 7.2-8 8.7zm-1.5-.6l.2.2a48 48 0 007-10.3l-.2-.1s-4.2 7.9-7 10.2zm-1.3-1.8h.3c.5-3.8 6-9.9 6-10l-.3-.1c-.2.2-5.5 6.2-6 10.1zm-10.9-4.7h.3c-.4-5.5 4.1-11.5 4.2-11.5l-.3-.2s-4.7 6.2-4.2 11.7zm2.9.5h.3c-.8-4.4 4.4-10.6 4.4-10.7l-.2-.2c-.2.3-5.3 6.4-4.5 10.9zm4.4 1.6h.3c-.2-5 4.6-10 4.7-10l-.2-.3c0 .1-5 5.2-4.8 10.3zm-10.5 9h.3c-1.8-4.7 1.2-10.6 1.3-10.6l-.3-.2s-3.1 6.1-1.3 10.9zm2 .4l.3-.1c-1.6-4.7 1-11 1-11l-.2-.2s-2.7 6.5-1.1 11.3zm8.3 4.7v.2c5-1.7 8.3-6.3 8.3-6.3l-.3-.2s-3.2 4.5-8 6.3zm-1-1.1v.3c4-1.8 7.7-6.8 7.7-6.8l-.2-.2s-3.7 5-7.5 6.7zm-1-.4l.2.3c3-2.3 7-8 7-8l-.2-.2s-4 5.7-7 7.9zm-5-2.9h.4a21 21 0 012.5-10.9l-.3-.1s-3.2 6-2.5 11zm2.2 1.4l.2.2c3.2-2.9 4.3-10.6 4.3-11h-.3s-1 8-4.2 10.8zm2.2.8l.2.3a17 17 0 005.7-9.5h-.3s-1.2 6-5.6 9.3zm.5-13.4v.9l-3.4 11 .3.1 3.4-11c-.5-5.4 4.2-11.3 4.3-11.3l-.3-.2s-4.3 5.3-4.3 10.5z"/>
+    <path id="path758" d="M539 357.3c0 .2-1.1 7.7-5.2 10.5l.2.3c4.2-2.9 5.2-10.3 5.2-10.7 1.8-2.1 6-9.7 6-9.7l-.2-.2s-4.2 7.6-6 9.8zm-12 8.3c0 .1.6 4 1.4 5.2l.3-.1c-.8-1.3-1.5-5.1-1.5-5.2l-.3.1zm1.9 0l-.1 5.3h.3v-5.3h-.2z"/>
+    <path id="path760" d="M529 371l.3.1c1.3-2.8 1.7-4.8 1.7-4.8h-.3s-.4 1.9-1.7 4.7zm.3.1l.2.3a6.6 6.6 0 003-4h-.3s-.6 2.4-2.9 3.7zm.5.2v.3c2.4-.2 4-3.1 4-3.3h-.2s-1.6 2.8-3.8 3z"/>
+    <path id="path762" d="M530 371.5v.3c3.9-.3 5.6-2.6 5.6-2.7l-.2-.1s-1.7 2.2-5.4 2.5z"/>
+    <path id="path764" d="M530.3 371.5v.3c.1 0 5 1.1 6.7-1.4l-.3-.2c-1.5 2.4-6.4 1.4-6.4 1.3z"/>
+    <path id="path766" fill="none" stroke="#000" stroke-width="2.8" d="M420.9 193.2v136.4c0 44.6 80.6 71 80.6 71s80.5-26.4 80.5-71V193.2z"/>
+  </g>
+  <g id="g1157" transform="scale(.5)">
+    <path id="path1135" fill="#012169" d="M0 0h640v480H0z"/>
+    <path id="path1137" fill="#FFF" d="M75 0l244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z"/>
+    <path id="path1139" fill="#C8102E" d="M424 281l216 159v40L369 281zm-184 20l6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z"/>
+    <path id="path1141" fill="#FFF" d="M241 0v480h160V0zM0 160v160h640V160z"/>
+    <path id="path1143" fill="#C8102E" d="M0 193v96h640v-96zM273 0v480h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fk.svg
new file mode 100644
index 0000000..28ad702
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fk.svg
@@ -0,0 +1,90 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-fk" viewBox="0 0 640 480">
+  <defs id="defs2935">
+    <linearGradient id="b" x1="444.4" x2="470.9" y1="592.2" y2="577.1" gradientTransform="matrix(-1.08448 0 0 1.26674 909.5 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="f" x1="851.8" x2="646.2" y1="369.9" y2="369.9" gradientTransform="matrix(.85733 0 0 .9624 -161.5 .3)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="c" x1="458.2" x2="520.5" y1="562.5" y2="552.8" gradientTransform="matrix(-1.01941 0 0 1.3554 909.5 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="d" x1="472.4" x2="445.3" y1="578.7" y2="580.2" gradientTransform="matrix(1.08448 0 0 1.26674 49.7 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="e" x1="518" x2="456.4" y1="553.7" y2="558.1" gradientTransform="matrix(1.01941 0 0 1.3554 49.7 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="a">
+      <stop id="stop2921" offset="0" stop-color="#a43907"/>
+      <stop id="stop2923" offset="1" stop-color="#fff"/>
+    </linearGradient>
+    <linearGradient id="g" x1="388.5" x2="677.4" y1="507.2" y2="508.8" gradientTransform="matrix(.88927 0 0 1.54542 50.4 -413.6)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="h" x1="579.8" x2="556.8" y1="504.9" y2="505.9" gradientTransform="matrix(.91096 0 0 1.52008 49.7 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="581.4" x2="558.9" y1="512" y2="514.3" gradientTransform="matrix(-.88927 0 0 1.54542 908.8 -413.6)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="552" x2="589.8" y1="517.9" y2="503.9" gradientTransform="matrix(-.91096 0 0 1.52008 909.5 -414.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="linearGradient3141" x1="444.4" x2="470.9" y1="592.2" y2="577.1" gradientTransform="matrix(.85733 0 0 .9624 -162.4 -.6)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  </defs>
+  <path id="path2937" fill="#012169" d="M0 0h640v480H0z"/>
+  <path id="path2939" fill="#012169" fill-rule="evenodd" d="M0 0h400v200H0z"/>
+  <path id="path2949" fill="url(#linearGradient3141)" fill-rule="evenodd" stroke="#fff" stroke-width="10" d="M412.9 308.9a11.3 12.7 0 00-1.7 0c-3 .6-7.6 11.3-10 17.6-4.1 5.4-6.2 9.6-7.8 12.7-.7 1.2-1.7 2.6-1.4 4.2-6 1.6-6.3 7.4-6.3 9.6 0 2.5.7 3.7.7 3.7l3.6 7.5v.1c3.8 9 9.4 20.9 12.7 21.8 4.4 1.5 16-3.3 24.8-11.7a140.6 157.8 0 0053.2 12.1c20.4 0 38.7-5.5 53-12.1 8.8 8.4 20.4 13.2 25 11.7 3-1 8.7-13 12.6-21.8l3.5-7.6s.7-1.2.7-3.6c0-2.2-.3-8-6.3-9.6.3-1.6-.6-3-1.3-4.3-1.7-3.2-3.8-7.4-7.7-13-2.6-6.2-7.2-16.7-10-17.2-4.2-.8-13 1.5-13 2.4v.4l-17.7 18.6c0 .5.9 14 4.3 26a126 141.5 0 01-43.3 8.2c-17 0-31.5-3.4-43.2-8.3a116.6 130.9 0 004.3-26L424 311.8v-.4c0-.7-6.8-2.5-11.1-2.5zm4.4 23c2.3 0 4.6 2.2 6.5 4.4l-.1 1.3a67.5 75.7 0 01-2.8 10.2 73.6 82.6 0 01-12.2-9.9c1.9-2.3 5-5.4 8.2-5.8h.4zm126.6 0h.4c3.3.6 6.3 3.7 8.3 6a73.4 82.4 0 01-12.3 10 67.1 75.4 0 01-2.8-10.3 14.6 16.4 0 01-.2-1.3c2-2.3 4.3-4.3 6.6-4.3zm-142.4 26.4c2.4 2 5.4 4.4 9.1 6.8a10.5 11.8 0 01-3.2 1.6c-1.6.4-3.1.3-4.7 0a15 16.8 0 01-1-5.6 60.3 67.7 0 01-.2-2.8zm158.2 0l-.1 2.8a15 17 0 01-1 5.5 10.3 11.5 0 01-8-1.5c3.7-2.4 6.8-4.8 9.1-6.8z" opacity="1" stop-opacity="1"/>
+  <path id="path2951" fill="url(#b)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M426.2 339.6s-6.1-11.1-11.1-10.2c-5.1.7-10 7.8-10.2 8.2a44.5 52 0 01-7.5-9.5c.3-.4 7.8-20.9 12-21.8 4-.9 12.7 1.5 12.7 2.3z" opacity="1" stop-opacity="1"/>
+  <path id="path2953" fill="url(#c)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M439.8 327.7c0 .8-2.2 30.2-10.9 40.4-8.6 10.3-23 16.6-28.2 15.1-5-1.6-16.5-31.3-16.5-31.3s12.2 14.2 21.3 11.8c9.1-2.3 14.6-20.1 16.3-28.9 1.7-8.6.3-25.7.3-25.7l17.8 18.6z" opacity="1" stop-opacity="1"/>
+  <path id="path2955" fill="url(#d)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M532.9 339.6s6.2-11.1 11.2-10.2c5 .7 9.8 7.8 10.2 8.2a44.5 52 0 007.5-9.5c-.4-.4-7.9-20.9-12-21.8-4.1-.9-12.8 1.5-12.8 2.3z" opacity="1" stop-opacity="1"/>
+  <path id="path2957" fill="url(#e)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M519.3 327.7c0 .8 2.2 30.2 10.9 40.4 8.7 10.3 23 16.6 28.2 15.1 5-1.6 16.6-31.3 16.6-31.3s-12.3 14.2-21.4 11.8c-9-2.3-14.5-20.1-16.2-28.9-1.8-8.6-.4-25.7-.4-25.7l-17.8 18.6z" opacity="1" stop-opacity="1"/>
+  <path id="path2959" fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width="1.5" d="M401.2 326.2c-4 5.5-6.1 9.8-7.9 13-1.7 3.2-.6 7.7 3.2 14 4.3 6.7 39 33.4 84.1 33.4 45.2 0 79.8-26.6 84-33.4 4-6.4 5-10.8 3.3-14-1.7-3.2-3.9-7.5-7.9-13 0 8.3-28.7 38.5-79.4 38.5s-79.4-30.2-79.4-38.5z" opacity="1" stop-opacity="1"/>
+  <path id="path2961" fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M557.7 378.8l7.8-15.1-3.9-3.2c-1 3.8-5.5 5.1-6.3 10-.7 4.7 3 9.4 2.4 8.3z" opacity="1" stop-opacity="1"/>
+  <path id="path2963" fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M564.8 374.5s1.4-6.8-3-7.6c-4.4-.8-6.8 3.8-6.1 2 .6-2 3.2-4 3.7-10.7.3-6.7-.4-10.3-.4-10.3s1.8-8.7 8.8-7.5c7.2 1.3 7.5 7.6 7.5 9.9a9 9 0 01-.6 3.5z" opacity="1" stop-opacity="1"/>
+  <path id="path2965" stroke-width=".8" d="M539.2 351.7l1.5 2.8 1-.6-.7-2 .1-.3 1.7-1.2 4.4 8.7v.5l-1 .7.5.8 4.2-3-.4-.8-1 .6h-.3l-4.4-8.8 1.6-1.2h.4l1 1.6 1-.7-1.5-2.8-8 5.7zm-10.5 6.7l.4.8.9-.4.3.1 3.9 8.9-.1.4-.8.6.3.8 4.1-2.5-.3-.8-.9.4h-.4l-1.8-4.3 4.3-2.4 1.8 4v.5l-1 .6.4.9 4.2-2.5-.4-.8-.9.4-.3-.2-3.8-8.8v-.4l.8-.6-.3-.8-4.1 2.5.3.8 1-.5.3.2 1.5 3.6-4.2 2.5-1.6-3.7.2-.4.8-.5-.4-.9zm-2.4 7.6l.2.8 1.2-.3.4.1.9 3.7-.8.4c-2.5.8-4.4-.5-5.3-3.7-.8-3.2.2-5.6 2.5-6.4a3.5 4 0 011.4-.1l.3.2.8 1.7 1.2-.4-.7-3c-1.3 0-2.5.2-3.5.6-3.6 1.3-5.2 4.5-4.3 8.2 1 3.7 3.9 5.4 7.2 4.3a11.3 12.7 0 003.4-2L530 366l.2-.4.9-.4-.3-.9zm-9.7 10.3l4.7-1.7-.3-.9-1 .2-.3-.1-2.6-9.6.1-.3 1-.5-.2-.8-4.7 1.6.3.9 1-.3.4.2 2.5 9.5-.2.4-1 .4.3.9zm-25.5 4.6l8.3-.8-.3-3.4-1 .1-.2 2-.2.3-3.5.4-.4-4.9 2-.2.3.3.2 1.3h1l-.4-4.4h-1v1.4l-.2.4-2 .1-.4-4.4 3.1-.3.2.2.4 1.7 1.1-.1-.2-3-7.8.8v.9h1l.3.3.7 9.9-.1.3-1 .2v1zm-12.4-12.3v1h1l.2.3.1 9.9-.2.3-.9.2v.8h4.4v-.9h-1l-.2-.4V375h4.4v4.6l-.2.3-.9.1v1h4.4v-1h-1l-.1-.4-.2-10 .2-.3h1v-1h-4.5v1l1 .1.2.3v4l-4.3.1-.2-4 .3-.3h.9v-1zm-9.4-.3v3.3h1l.3-2 .2-.3h1.9v10.2l-.3.4h-1v1h4.6v-.9l-1-.1-.3-.4.1-10h1.8l.3.2.3 2h1v-3.3zM455 378.9l8 .4.2-3.3h-1l-.3 1.9-.2.2-3.5-.1.2-5 1.9.2.2.3.2 1.4h.8l.2-4.3h-.9l-.2 1.2-.2.3h-2l.2-4.6 3 .2.2.2.1 1.7h1.1v-2.9l-7.5-.4v.9l1 .2.1.3-.4 9.9-.2.3h-1v.9zm-18.6-5.4l4.4 1.6.2-.8-1-.5v-.4l2.5-9.5.3-.2 1 .3.2-.8-4.3-1.7-.2.9.9.4.2.4-2.7 9.4-.2.3-1-.3zm-7.6-3.3a8.4 9.4 0 002.6 1.6c2.4.8 4.3-.2 4.8-2.2a3 3.5 0 00-.5-3.2l-1.8-2c-.6-.9-.8-1.6-.6-2.5.3-.9 1.1-1.4 2.2-1 .4.2.8.4 1 .7v.3l-.2 2 1 .3.8-2.8a8 9 0 00-2.5-1.7c-2-.8-3.8.3-4.4 2.2a3.2 3.5 0 00.4 2.8c.4 1 1 1.5 1.5 2 .9 1 1.2 2 1 2.9-.3 1-1.2 1.5-2.4 1a4 4.5 0 01-1.2-.8l-.1-.3.4-2.2-1.1-.4zm-9.8-4.6l7.4 4 1.2-3-1-.5-.9 1.7-.3.1-3.1-1.8 1.8-4.3 1.8 1v.3l-.3 1.3.8.5 1.6-4-.8-.4-.7 1.1-.3.2-1.7-1 1.6-4 2.7 1.5.1.3-.4 1.6 1 .5 1-2.6-6.8-3.9-.4.8.8.6.1.4-3.6 9h-.3l-.9-.3zm-1.1-15l-3.7-2.9-.5.8.7.7.1.4-4.6 8.2-.4.1-.7-.5-.5.8 3.6 2.8c1.4 1 2.5 1.5 3.6 1.4 1.6-.2 3-1.2 4-3 1.8-3.4 1.3-6.6-1.6-8.8zm-1.6 0l.8.6c2 1.5 2.2 3.7.5 6.6-1.7 3-3.5 3.6-5.4 2l-.8-.4 5-8.7zm29.3 13l-.1.8.9.3.1.4-1.7 9.7-.3.2h-1v.8l4.1 1 .2-.8-1-.4-.1-.3.7-4.1h.3c1.5.4 1.8 1.3 1.8 3.2.1.9.1 1.7.8 2.7.3.4.7.8 1.4.9a10.1 11.4 0 001.5.2l.1-.8h-.1c-1-.3-1.5-.7-1.5-1.8-.2-1 0-2-.4-3a2.6 2.9 0 00-1.3-1.4c1.7 0 2.7-.9 3-2.5.4-2-.5-3.5-2.9-4l-4.4-1.1zm3 1.7l.6.2c1.4.4 2 1.4 1.7 2.9-.3 1.7-1.2 2.3-2.8 1.8l-.5-.1.9-4.8zm54.2 1l.1 1h1l.3.2 1.4 9.8-.2.3-1 .3.2.8 4.5-.8v-1l-1.1.2-.3-.3-.6-4h.3c1.6-.5 2.2.2 3 1.9.3.8.5 1.6 1.5 2.2.4.3 1 .4 1.8.3a12 13.6 0 001.6-.5l-.1-.9h-.2c-1.1.3-1.7 0-2.2-.9-.4-.8-.7-1.8-1.3-2.5-.4-.5-1-.8-1.8-.8 1.7-.8 2.5-2 2.3-3.7-.3-2-1.7-3-4.2-2.5zm3.5.5h.7c1.6-.4 2.5.2 2.8 1.8.2 1.6-.5 2.6-2.2 3h-.6l-.8-4.8z" opacity="1" stop-opacity="1"/>
+  <path id="path2967" fill="url(#i)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M401.5 378.8l-7.8-15.1 3.9-3.2c1 3.8 5.5 5.1 6.3 10 .7 4.7-3 9.4-2.4 8.3z" opacity="1" stop-opacity="1"/>
+  <path id="path2969" fill="url(#j)" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M394.3 374.5s-1.4-6.8 3-7.6c4.4-.8 6.8 3.8 6.2 2-.7-2-3.3-4-3.7-10.7-.4-6.7.3-10.3.3-10.3s-1.7-8.7-8.8-7.5c-7.1 1.3-7.5 7.6-7.5 9.9 0 2.2.7 3.5.7 3.5z" opacity="1" stop-opacity="1"/>
+  <path id="path2971" fill="#0072c4" fill-rule="evenodd" stroke="#fff" stroke-width="3.9" d="M480.5 356.1s-82-27-81.4-129.4l.6-135.6H561l.6 134.8c.5 102.4-81.4 130.1-81.4 130.1z" opacity="1" stop-opacity="1"/>
+  <g id="g2985" fill-rule="evenodd" opacity="1" transform="matrix(.73276 0 0 .82256 122.8 17.5)">
+    <path id="path2973" fill="#bcbcbc" d="M392.3 129c.2 0 1.5-1.3 2.8-2.4 1.7-1 3.3-2.1 5-3 1.4-.7 4-1.3 5.1-1.9a12.5 12.5 0 004.2-3.4c.2-2.1.5-3.7.5-6.2 1.8-1 3.4-1.8 5-2.4 2.3-.7 2.8-1.6 5.1-2 1.5-.5 3.9-.5 6-.5 2.3 0 3.7 1.7 5.8 2 2.5 1 3.6 1.7 5.6 3.4 1 1.4 1.7 2.6 3.6 3.6 1.5.8 2.9 2 4.6 2.4 2 1.1 3.6 1.8 5.1 3.4 1.4 1 2 2.4 3.2 3.4a36.1 36.1 0 004.7 3.4c2 1.3 4 2.3 7.1 2 1.7 0 3.5-.3 5.5 0 2.3 0 4.5 0 6.5.6 2.4 0 4.3.3 6.5.5 2 .3 4.1.4 6.4.4 2 .6 4.2.5 6.5.5h13c2.3 0 4.7.1 6.4.5a51 51 0 006.5-.5c2.5 0 4.4-.4 6.9-.5h7.8c2 .6 4.6 1 6 2 1.9.5 2.8 1.4 4.6 1.9 1.5.7 3.6 1.9 4.7 3.4a24.7 24.7 0 013.7 5.3c1.2 1.8 1.7 4 2.7 6.3.6 2.2 1 4.3 1 6.7.5 2.1.4 4.4.4 6.8-.5 2.2-.6 4.6-1.4 6.7 0 2.4-.5 4.5-.9 6.3-.4 2-.9 3.3-1 5.8v6.8c0 2.2-.6 3.8-.8 6.2a71 71 0 00-3.3 7.3 14.7 14.7 0 00-3.7 3.8c-1 .6-1.5 1.6-1.3 2 1.8.6 1.3 1.9 1.3 4.3.3 1.9.5 4.2 1 6.3.1 2.3.6 3.7 1.3 5.3.8 1 1 .5-.9.5-1.3 1-2.7.5-3.2-1.5a12 12 0 01-1.9-5.3c-.2-2.2-.6-4.4-1.3-5.8-.3-2.7-1-2.7-3.7-2.9-1.3-1.1-3-1.4-5.6-1.4-2.5 0-2.7-.3-2.7 2.4v6.8c-.5 2-1.4 3.5-1.9 5.3-1.4 1-2 2.7-3.7 3.8-.8 2.2-1.9 2.6-4.1 3l-2.8-3.4c1.3-2.2 2.4-2.5 3.2-4.9 1-1.9 1.6-3.1 2.3-4.8-1-1.5-1.8-2.2-2.7-4.3a26.3 26.3 0 01-2.3-5.3c-1.6-.6-4-.7-5.1-1.5-2.3-.5-2.9 2-5.6 2h-6.4c-2.9 0-3.6 1.5-6 1.4-.7.2-2.5-.1-5.1 0-2 .7-4.3.5-6.5.5-2.3 0-4.2-.6-6-1-2.1-.6-4.2-1.2-6.4-1.4-2.7 0-3.8.2-5.6 1.4-1.4.9-3.5 2.8-5 3.9-.7 1.6-1 4.3-2 6.2-.4 2-1.2 3.1-1.7 4.9a18.4 18.4 0 00-1.4 5.8c-.2 3.2-.9 2.8-2.8 1.9-.8-1.4-2-2.8-2.8-4.4.4-2.4 1-3.6 1-6.2-.5-2-1.5-1.8-2.8-.5 0 2.5 0 4.5-1 5.8a6 6 0 01-2.7 3.8c-.7 1.8-2.2 2.7-3.7 3.4-.2 0 0-.6 0-2-1.1-2.1 0-4 0-6.7 0-2.4-.2-4 .5-6.2 0-2.4-1-4.6-1.4-6.3-.9-1.8-1.4-2.7-3.7-3.4-1.7-.7-4-1.5-5.1-3a9.6 9.6 0 00-4.2-3.3c-2-.7-3.1-1.5-4.6-2.4-1.4-1.6-2.6-2.2-3.2-4.3-1-1.5-1.1-4.3-1.8-6.3a21.7 21.7 0 00-1.4-5.8 24.3 24.3 0 00-1.4-5.8c-.3-2-.8-4-1.4-6.3 0-2.3 0-4.6-.5-6.7v-6.8c-.3-2-.4-4.8-.9-6.3 0-2.6-.3-4-1-5.8-1-1.7-1-2.4-2.7-2.9-1.2 1.5-3.1 2.2-5.5 2.5-1.7-.4-4.1-.7-6-1.5-1.9-.4-3.1-1.2-4.6-2a43.2 43.2 0 00-2.8-3.8c-.3-2.5-.8-3.8-1-6.3 0-1.8.1-.8 2-3.3z"/>
+    <path id="path2975" fill="#fefefe" d="M419.6 146.4l.4-.4c-.8.8-.5.4 1.3-.3 1-.6 2.9-1.7 3.6-2.4.8-.4 2.2-1 3-1.7.8-1 1.7-1.8 2.9-2.7 1.2-1.1 2.4-1.5 3.9-2.4 1.8-.2 2.5-1 4.2-.4 1.6.4 2.3.4 3.6-1 1.3-.8 2.8-1.7 3.3-3V130c0 2.2-.5 3-2 3.7-1 1.3-2.4 2.6-3 3.8-1 1.5-1.2 2.3-2.2 3-.9 1.1-2.3 1.7-2.6 3.5.4.8 0 1.2 1 1.3.9.8 1.9.5 3.2 0a14.2 14.2 0 002.6-4c1.1-1.6 1.7-2.3 2.3-3.5 1.2-.8 1.9-1.4 2.3-2.7 1.3-.8 2.4-1.6 3.3-2.4 1-.6 1.5-1.1 2.9-1.4a6 6 0 01-1 3.8c-.3 1.9-.2 2.8.4 4 .9.7.7 1.2 1.3 2.5.5-1.2.8-3.4 1-4.8v-.3c0 1.4 0 3.4-.4 4.4 0 2 .5 2.9 1 4.4.5.8 1 1.3 1.6 1.7 0-2 .6-3.2.7-5 .4 1.3.3 3.2.6 4.7.1 1.6.7 2.8 1.3 4.1.8.4 1 1.8 1.3.7.8-2.4.8-5 1.3-7.5.1-1.3.2-3.2.7-4.1l-.7 4c.1-1.2.2-3 .7-4v-.4a39 39 0 01.7 5.5c0 1.5-.1 3 .3 4.4 1-.5 1.7-1.7 2.3-3a18.2 18.2 0 012.6-3.8l-2.6 3.7a18.2 18.2 0 012.6-3.7v-.3a40.3 40.3 0 00-.3 4.7c0 1.6 0 3.4.3 4.5.4 1.8.9 2.1 1 4 0 1-.2 2 .3 2.5 1.4.3 1.4-.5 1.6-2.4 0-2.2.6-3.7.7-5.8 0-2.6.3.3.6 1.3a13 13 0 011 4.5c0 1-.1 1.9.3 2.4 1.3-.6 1.8-2 2.6-2.8.7-1.6 1.4-2.3 2-3.4 1.7-.3 1.6-1 1.6-3 0-1.7-.1-3.4.4-4.8a41 41 0 001.3-4.5c.6-.3 1.2.6 1.6 1.4.7 1.1.6 2.7.6 4.4.4 1.5 1 2.7 1.7 4.1a15 15 0 002.3 3.4c.3 1.1.3 3 .3 4.5 1.3-1.5 1.5-3.6 1.6-5.8-.2-1.5-.2-3.4-.6-4.8 0-1.5-.4-3-.7-4.1-1-.5-1.3-1-.3-2.4 1-.9 2.2-.5 3.9-.3.9.9 1.2 1.4 1.3 3.4 0 1.8 0 3.2.7 4.4.6 1 1.2 1.7 1.6 3.4.5.5.9 1.2 1.6.4.4-1 .7-3 1-4.1.3-1.3.9-2 1.6-2.4 0 1.9 0 3 .7 4.4.6 1.5 1 2.1 1.6 3.8.7.5.8 1.5 1.7 2 .2-1.6.3-3.4.3-5.4V145c.1-1.6.5-2.5 1-3.8 1 1.4 1 1.9 1 3.8 1-.4 1.2-1.2 1.6-2.4.7-.7 1-1 1.3.7.2 1.8.6 3.4 1 5.1.6.8 1.4 2.7 2.2 3.4a16.4 16.4 0 002 2.8c.5 1 .6 1.7 2 2 0-2.3 0-4.6-.4-6.8 0-2-.4-2.7-.6-4.5-.6-1.1-.9-2.9-.7-3.4a11 11 0 013 4.1c.7 1.7 1.4 2.8 2 4.5a20 20 0 012.5 3.4c1.2 1 1.8 2.1 3 3 .6.6 2 1 2.3.7-.1-2-.4-3.7-1-5.4a9 9 0 00-1-4.1c-1.3-1.1-2.3-1.9-3-3.4-.4-.5-.5-.8-.6-1.7a26.3 26.3 0 014.6 4.7 7 7 0 002.6 2.4c.6.8 2.5 1.7 3.9 2a5.6 5.6 0 003.3 2.1l-3.3-2a5.6 5.6 0 003.3 2v.4a13 13 0 00-2-5.5 8.8 8.8 0 00-3-3.8 9.3 9.3 0 00-3.2-3c-.9-1-2.2-2.8-3-3.4 1.5-1 3.1.6 4.6 1.3 1.3 1.4 2.5 3.2 3.3 4.1a18 18 0 003 4.5c1.4.8 2.3 1.6 3.5 2.7 2 .5 1.2-.2.7-1.7-.7-2 0-2 1.3-.7.9.7 2 1.7 3.3 2.4.5.7 1.4 1.2 2.2.7.4-.5.4-.5.4-1-.7-2.2-1.3-3.8-3-4.5-.7-1-2-2-3-3-.6-1-1.3-1.6-1.9-2.8l2 2.7c-.7-1-1.4-1.5-2-2.7h-.3c2 0 2.7.6 4.2 1.4a6.8 6.8 0 013 2.4c.6.8 1.6 1.7 2.3 2.7l3.2 2.4c1.1 1.4 1.3 2.3 1.3 4.4.7 1 .8 3 1 4.1-.2 1.9-.9.4-1-.7-.2-1.5-.8-1.4-2-1 0 2 .3 2.6 1 4.1a8 8 0 01-1.2 3.4c-.8.5-1-1-1.7-1.7 0-2-.6-2.3-2-3.4v1.4c.8 1.4 1.6 2.7 1.7 4.7a12 12 0 01.7 4.5c0 1.7 0 3.3-.4 4.8 0 1.8-.3 2.6-.3 4.4v9.6a23.3 23.3 0 00-.3 4.4l.3-4.4c-.3 1.2-.3 2.7-.3 4.4v.3c-.6-1.7-1.3-3.2-1.7-5a10.3 10.3 0 01-2.2-3.5c-.3-1.5-.4-3.2-.7-4.4-.5-1.2-1-2.5-2-1.7-.4 2.5.1 4 1 6.4.5 1.6.5 3 1 4.5.8 1.8 1.4 2 0 4-.7 1.2-1 1.5-1.3 2.8-1.2.6-1.5 1-1.6 2.4-.4-1.3-1.4-2.9-2-4.4-.6-1.7-1.3-3.4-1.6-4.8-.8-1.2-1.8-3-2.6-3.8-.9-1-2-3-2.6-4-1.3-1.5-1.6-2.4-2.7-3.1-.2-.7-.6-1.6-1.3-1 0 1.6 0 3.3.4 4.7.3 2 .9 3.1 1 5.1v3.8c-.8-2-1.7-3.6-2.3-5.5-.8-1-1.5-3-2.3-3.7-.6-1.4-1-2.5-1.7-3.4-.1-1-.6-1-1-1.7 0 1.9.7 2.6 1 4 .7 1.4.9 3.5.7 4.2-.8-2.4-1.6-5-2.6-7.2-1-1.4-2-3.2-2.6-4.5-1-1.1-2-1.2-3-2a5.9 5.9 0 01-2.3-1.7c.3 1.8 1 3 1.3 4.4.3 1.7 1 3.1 1.3 4.5-.3 2.3-.8-.7-1.3-1.7-.3-2-1-3-1.6-4.1-.9-.7-1.7-1.8-2.6-2.4-1-.4-.6 0-.6 1.3 0 2.1 0 3.5.6 4.8.7 1 .7 2.3.7 4.1-.1 1.7-.4 3-.4 4.8v2.7c-.7-1.4-1.4-2.3-2-4.1-1-1.6-1.4-2.7-2.2-4.4-.7-.3-2-.6-2.6 0 .1 1.7.9 2.4 1 4.4-1.3 1.3-1.1 1.7-2-.3-.7-1.6-1.6-1.5-2.6-2.4-1.7-.2-1.1-1.3-1.6-2.8 0-1.3 0-2.6-.4-3.7-1.8 0-2.8 0-3.9 1-.5 1-.3 3 0 4.5v4.7c-.4 1.2-1 1.3-1.3 2.8-.6 1.4-.8 3-1.3 4-1.2 1.1-.7 1.2-1.3-.6v-11c0-1.8.3-2.7.3-4.4-.7-1.4-.8-1.7-3-1.7-.4.9-.2 2.5 0 3.4 0 1.7.2 3.3.4 4.5 0 1.8.2 2.9.3 4.4 0 1.8-.4 3.2-1.3 4-1.1.4-.1 1.2-1.3 1.5a15 15 0 01-3.6-2.4c-1.2-.4-2.4-.7-4.2-.7-2.2 0-2.2-.3-3-2a31.4 31.4 0 01-1.3-5.5c-.7-1.6-.8-2.7-1.3-4.5a6.2 6.2 0 00-2-2.4c-.4 1.8-.8 3.2-.9 5.2-.4.8-.5 2.8-.7 3.7-.6-1-.9-3-1.3-4.4-.6-2-1.1-3.4-3.2-2.7-2.2 0-2.3 0-2.3 2.4l2.6 4v4.8c0 2 .1 2.6-1.3 3-.5-2-1.7-4-3-5.7-.1-1.4-.5-1-1.9-1-.9 0-1.8-.2-2.3.3v3c-.8.2-1 0-1.6-.6-.6 1-.2 2.4 0 3.7-.4 1.6-1 3-1.6 3.8-.2-.5-.5-.3 0-.3-2.3-.9-4-1.4-6-2-1 0-1.9 1.1-2.5 2-1.7.5-2.4 1-4.3 1-1.8 0-2.6.3-4.2.3-1.2.3-2.7.4-4.3.4-.8-.3-2.4-.3-2.9-.7.7-1 1.4-1.5 2-3a20 20 0 002.6-2.5c.8-.6 1.8-1.9 2.6-2.7.5-1.7 1.2-2 2.3-2.7 2 0 2.3.7 4.2 1 1.9.7 3 1 4-.4 1.5-.6 2.8-1.7 4.5-2l3.3-2c1.4-.9 2-1.8 3.2-2.8.4-1.4 1.4-2.5 1-4-1.8-.5-2.9-.4-4 .6-1.3 1.2-1.6 1.7-3.2 2.7-1.3.4-2 1-3.6 1.4-1.3.5-3 .3-4.5.3s-3.4-.1-4.3.4c1.5-1 3.2-2 4.6-2.4 1.3-.9 1.8-1.3 3.6-1.4.8-1 1.6-1 2-2.7.5-2-1.3-1.4-2.7-.7-1.3.3-2.8 1.2-3.9 1.7a14.3 14.3 0 01-4.2.7c-.4-.6.3-1.1.6-2 1.5-.6 1.8-.8 2-2.4-1.8.2-2.4.8-4 1-1.6.4-3.3.6-5.2.7h-4.5c-1.6 0-2.5-.4-4.3-.4-1.3-.7-1.3-1-1.3-3 1-1.2 2-1 4-1l3.5-1.8c1.2-.2 2-.7 1.7-1.3h-4.6c-1.8-.8 0-1.1 1-1.7 1.5 0 3.2 0 4.2.6 2 0 2.7-.7 4.2-2 1.3-1 2-1.7 3.3-2.4 1-1.1 2-1.7 2.6-2.7 1.4-1.3 2.3-2 3-3.1.8-.5 1.4-1 1-1.7-2.1.2-3 1-4.3 2a10 10 0 01-2.6 2 8.2 8.2 0 01-4.3 1.5c-1.6 0-3-.3-4.5-.4-1.8-.2-.2-.6.3-1.4.7-.4 1.2-1.5.6-2.3-1.3-.5-3-.4-4.5-.4h-4.6c-1.7 0-2.4-.4-3.6-1-.3-1 0-.7 1.3-.7a18 18 0 004.3-.7c1.5-.4 1.7-1 2-2.7-1.6 0-3.3 0-4.3-.3zm-28.2-7.8c-.3-2.5-.9-3.8-1-6.3 0-1.8.1-.8 1.9-3.3.2 0 1.5-1.3 2.8-2.4 1.7-1 3.3-2.1 5-3 1.3-.7 4-1.3 5.1-1.9a12.5 12.5 0 004.2-3.4c.1-2.1.4-3.7.4-6.2 1.9-1 3.5-1.8 5.1-2.4 2.3-.7 2.8-1.6 5.1-2 1.5-.5 3.9-.5 6-.5 2.3 0 3.7 1.7 5.8 2 2.5 1 3.6 1.7 5.5 3.4 1.1 1.4 1.8 2.6 3.7 3.6 1.5.8 2.9 2 4.6 2.4 0 1.8.4 1.5-.8 1.5-.2 1.8-.6 1.6-2.3 1.7a8 8 0 01-3-2.8c.7-1.7.3 1.5 0 2.1-.8.7-1.3 1.4-2.2.7-.6-1.7-1-2.8-1-4.8-.3-2.1-.9-.6-1.3.3-.5 1.8-.3 2.4.3 3.8-1.7 0-3-.2-4.2-.4-1.2-.3-2.6.1-4 .7-1.7 1.1-1.1 1.1-.3 2.4 1.5.5 2.6 1.3 4 2 1.4-.2 3-.6 4.5-1 1.6-.5 3-.2 4.6 0 .8.5 1.8.5 2.3 1 0 1.1 0 2.2-.4 2.8-.6.5-1.3 1.7-2.3 2a16.1 16.1 0 01-4.5 1.8c-2 0-2.8.5-4.3 1.3-.2 1.8-.7 2.2-2.3 2.8a10.3 10.3 0 01-4.5 1c-1 0-1.9.1-2.3-.4a12.8 12.8 0 002.6-4c.3-.8.9-1.2.3-1.8-1.9.1-2.4.1-2.6 2-.2 1.9-.9 2.2-2.3 2.8.4-1.7.5-3 1-4.4a25 25 0 01-4.2.3c-1 .6-1.4.9-1 2-1.3.5-3 .2-4.6 0-1.4 0-.6-.6-1.6-1.3-.7-1.3-1.4-1.6-3-1.7-.7 1-2 1.3-2.9 2-1.4.5-2.3.1-3.6-.6-1.6 0-1.4.5-1 1.7.7.4 0 .9 1 1 1 .8 1.8 1 3.6 1 1.4-.4 3-.3 4.6-.3 1.6 0 1.3.4 1.3 2-1 .8-2.6.7-4.3.7a16.6 16.6 0 01-3.9-1c-1.5-.1-2.7-.4-3.9 0-.5.6-2 .8-.3 1 .7.7 4.5.3 4.7 1.5 1 1 .7 2.3-.8 2.3a2.2 2.2 0 00-2.3 0c-1 .2-2.4 0-4.3.2 2.5.2-1.8-2.7-2.7-3.9z"/>
+    <path id="path2977" fill="#bcbcbc" d="M401.7 127.3l-2 1.3c-1.4.8-3 2-3.9 2.7-.7.6-.7 1-1.6 1 1.5-.2 2.2-.6 3.6-1.3 1.7-.2 3.3-.6 4.2-1.4.9-.3 0-1.6-.3-2.4zm15-16.1c.2 0 .6 1 1.3 1.7.5 1.3 1 2.2 1 3.8.4-1.7 1-3 1.3-4.8-.5-1-.5-1.3-2-1.4 0 1 .2.3-1.6.7z"/>
+    <path id="path2979" fill="#c4c4c2" stroke="#000" stroke-width=".9" d="M349.4 417.7c-.5 0 .8-.5 1.3-.6.4-.8.6-1.3 1.3-1.8 1.1 0 1.7.4 2.2 1.1 1 .3 1.3.7 2.4.9.5.4 1 .4 0 .7-.6.3-1.5.4-2.6.4a7.2 7.2 0 00-2.6.7c-1.5 0-1.3 0-2-1.4z" transform="matrix(1.48 0 0 1.54 -109.5 -520)"/>
+    <path id="path2981" fill="#bcbcbc" d="M422.6 111.5v.4c0-1 0-.5.3 1.4a9 9 0 01.7 4 6.7 6.7 0 002-3c0-2.7-.5-2.6-3-2.8zm12 39.3h.4c-1 0-.4 0 1.3-1 1.1-.8 2-2 3.6-2.4a13 13 0 014.2-2.4c.8-.4 1.5-1 2.3-.3-.2 1.6-.5 2.3-2 3-.7 1-1.8 1.6-2.9 2-1 .6-2.2.6-2.6 1.8-1.8.8-2 .6-4.2-.7zm6.3 9.9c.5-.5 2.6-2.6 3.6-3.4a15 15 0 013.2-3.4c1-1.5 2.2-2.5 3-3.8l2.6-3.4c0 1.5-.2 3.5.3 4.4a7 7 0 01-1 4.1c-.7 1.2-1.3 2-3 2.8-1.4.8-2.3 1-3.5 2a26 26 0 01-3 1.7c-.9.4-.5.3-2.2-1zm-10.2 7.8h.4c-1 0-.5.1 1.3-1 1.4-1.4 2.5-2 4.2-2.7a10.3 10.3 0 004-1c.7-.2 1.3-.7 1.9 0 1 1.4 1.3 1.8-.3 2.7a9.4 9.4 0 01-3.3 1.7c-.8.7-2.4.7-4 1-1.2 0-2 .2-2.5-.7l2.6.7c-1.3 0-2 .2-4.3-.7zm14 0v-.3c0 1 0 .5.7-1.4 1.3-1.9 1.7-3 3.3-3.4.7-1 2-1.2 3.6-1.7.6 1 .1 2.2 0 3.4-.4 1.3-1.6 2.2-2.3 3.1-1 .7-1.4 1.4-3 1.7-1.2 0-.5 0-2.2-1.4z"/>
+    <path id="path2983" d="M412.8 124.2c0 .9-.7 1.7-1.6 1.7-1 0-1.7-.8-1.7-1.7 0-.9.8-1.7 1.7-1.7.9 0 1.6.7 1.6 1.7z"/>
+  </g>
+  <g id="g2991" fill="#005120" fill-rule="evenodd" stroke="#002b0d" stroke-width="1pt" opacity="1" transform="matrix(.73276 0 0 .82256 122.8 17.5)">
+    <path id="path2987" d="M351.8 479.6h.9c-2.8 0-1.1-.2 3.5 3.5 2-1.6 2-1.8 3.5 1 1 1.5 1.2-.2 2.7-1.8.7 3.2 1.1 6.5 3.5 3.5 2.8 0 5.6-.2 7.1.9 1.8 3.3 1.2-.6 2.6.9 4 .4 3.9-3.4 8.1-4.4 2.6 3.3 3.8.8 7-.8 2.5.6 4.8 4.3 5.3.7 2-3.2 2.1-3 3.5 0 2 1.8 2.8-.8 4.4-1.7 3 1.7 6.3 2 10.6.9.8 2.9 2.6 1.6 4.5.8 3.9 1.7 5.2 2.2 9.7 0 2.2-2.6 1 .1 2.6 1.8 3.3-1 2.4-1.2 6.2-.9 3.9 0 4.2 0 5.3-2.6 2 1.9 2.6 3.3 5.3.9 4.2 0 2.9.5 5.3-1 1.9 4 2.3 1.2 4.5 2.7a14.5 14.5 0 01-6.2 7c-1.7 3-2.8 6-6.2 7.2-2.5 2.5-5.2 4-8 6.2-3.8 1-8 .8-12.3.8H388c-2.6 1.4-7 2-10.6 2.7-4 0-8.7 0-11.5-.9-1.9-1.9-5.2-4-7-6.2-2-1.5-2-4.4-3.6-6.2-1.4-2.5-2-6.5-3.5-8.8z" transform="matrix(1.48 0 0 1.54 -103 -521.4)"/>
+    <path id="path2989" d="M437.5 487.6v.8c0-2.4.1-1.1-1.8 3.6-.3 1.1-1.2 1.4-2.6 1.8m-3.5-2.7h.9c-3.3 3-5.5 4.5-6.2 8l6.2-8c-3.3 3-5.5 4.5-6.2 8m-7.1-12.4s-.1 3.1-.9 4.4m-2.6 1.8v.8zm-7.1-5.3h.9-1c.4 0 .7 0 0 0zm-49.5 0c.4 0 2.2 2.8 4.4 4.4-.5 2.6-1.4 5.6 0 8m2.7-7.1c.4 0 2.1 2.8 4.4 4.4l-4.4-4.4c.4 0 2.1 2.8 4.4 4.4v.9c0-2.8-.2-5.6.9-7.1 1 1.7 2.2 4.3 2.6 1.8 5-.2 7.4-1.6 10.6-2.7 0 1.3-.2.7 1 1.8m60-3.6h.9c-1.7 1.4-3 4.3-4.4 6.2m-32.7-8.8h7" transform="matrix(1.48 0 0 1.54 -103 -521.4)"/>
+  </g>
+  <path id="path2993" fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M425.9 214.3c-11.5 0-15.4 13.5-26.9 13.5h-.6v.8c0 9.4.6 18.1 1.8 26.2 10.6-.8 14.5-13.4 25.7-13.4 11.5 0 15.3 13.4 26.8 13.4 11.6 0 15.4-13.4 26.9-13.4 11.5 0 15.4 13.4 26.9 13.4 11.5 0 15.3-13.4 26.8-13.4 11 0 15 12.5 25.6 13.4a139 156.1 0 001.9-27h-.7c-11.5 0-15.3-13.4-26.8-13.4s-15.4 13.5-26.8 13.5c-11.5 0-15.4-13.5-27-13.5-11.4 0-15.3 13.5-26.8 13.5-11.4 0-15.3-13.5-26.8-13.5zm0 52.7c-9 0-13.2 8.2-20.2 11.8a111 124.5 0 008.6 20.5c3.3-2.8 6.7-5.2 11.6-5.2 11.5 0 15.3 13.5 26.8 13.5 11.6 0 15.4-13.5 26.9-13.5 11.5 0 15.4 13.5 26.8 13.5s15.4-13.5 26.9-13.5a18.3 20.6 0 0111.3 5 112 125.7 0 008.6-20.4c-6.7-3.7-11-11.7-20-11.7-11.4 0-15.3 13.5-26.8 13.5S491 267 479.6 267s-15.4 13.5-26.9 13.5c-11.4 0-15.3-13.5-26.8-13.5zm53.7 52.7c-11.5 0-15.4 13.5-26.9 13.5-10.9 0-14.9-12-25-13.4a132 132 0 0039.3 33c3.6-3.2 7.3 3.6 12.5 3.6 5.3 0 9-6.9 12.5-3.8a129.1 145 0 0039-32.7c-9.8 1.7-14 13.3-24.6 13.3-11.5 0-15.3-13.5-26.8-13.5z" opacity="1" stop-opacity="1"/>
+  <g id="g3070" opacity="1" transform="matrix(.86465 0 0 .97062 -175.4 2.5)">
+    <path id="path2995" fill="none" stroke="#512007" stroke-width=".5" d="M332.5 541.4a110 110 0 0110.5-3l16.3 15.7-13.4 2.7z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path2997" fill="none" stroke="#512007" stroke-width=".6" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 31.3l6.7-31.1m-4.4 31.2l5.6-31.2m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.06 0 0 1.03 276.8 -178)"/>
+    <path id="path2999" fill="none" stroke="#512007" stroke-width=".4" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.25 0 0 1.76 1290.4 -502)"/>
+    <path id="path3001" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.25 0 0 1.3 1321.3 -302)"/>
+    <path id="path3003" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M395.3 572.2l.9-73s2.6-.3 2.6 0-.3 72.7-.6 73c-.3.3-3.2.5-2.9 0zm28.5-69.8l-.6 61.3-2 2.4.6-63.7z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3005" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363 560.2s3 30 36.4 29.1c33.4-.9 42.7-30.2 42.7-30.2l-14.5-.6c-.3 0-11.6 14-26.2 13.7-14.6-.3-19.2-3.8-22.4-6.7-3.2-3-6-7.3-6-7.3l-17-6.7 1 6.4zm90.3-3l-1-4v-3.4l1.6-3.6s-25.3 3.7-25.3 4l-.1 6.8 24.8.1z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3007" fill="none" stroke="#512007" stroke-width=".5" d="M448.5 549.8l-.6 6h4.1l-.3-6zm-4.3.3l-.3 6.4 2.6-.3.3-6.1zm-4.4 6.4v-5l2.6-.9.3 5zm-5-.3l.6-4.4 3 .3.2 4.7zm-5.5 0l.3-3.8 3-.3v4.4zm-67.4 3.7c.9 0 7.6 1.5 7.6 1.5l7 9.3" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3009" fill="none" stroke="#512007" stroke-width=".5" d="M366.8 561.1c.3.3 6.1 19.8 34 19.8s34.6-22.1 34.6-22.1" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3011" fill="none" stroke="#512007" stroke-width=".5" d="M439.8 559.4s-13.4 29-39 27c-25.5-2-29.6-11.6-31.6-16.6-2-5-3.2-9-3.2-9" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3013" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M373.2 558.2c.3-1.7.3-54.4.3-54.4l-1.7-.2-.3 53.7 1.7 1zm-41.5-17.1l22 10.7-.5 1.5S332 543.3 332 543c0-.3.2-1.5-.3-2z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3015" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M341.8 537.9c0 .8 3.2 18.6 3.2 18.6s2 .3 2 0l-3.4-18.3zm20.4.5c1.1 0 21-3.2 21-3.2l-.4 3.2-19.5 2z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3017" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M365 514.3c.7 0 7 3.2 9.7 2.4 2.7-.8.9-3 1.4-3 .6 0 2.6 1.5 3.8.3 1.2-1.1 2-4.6 1.5-4.3-.6.3-16 5.8-16.3 4.6z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3019" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M362.5 521.6c1.1.3 23.8-6.1 23.8-6.1s0 2-.3 2l-23.5 6.1z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3021" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M415 512.6s1.5 3.5 3 2.9c1.5-.6 2.9-1.8 2.9-1.8s1.2 3 3.2 2.4c2-.6 3.2-3.8 3.2-3.8s2 .6 2.9.3c.9-.3 2-5 2-5l-17.1 5zm-1.7 28.2c-.3.6 1.5 2 3 2s2-2 2.3-1.4c.3.5.3 3.2 4 2.3 3.7-.9 3.8-3.5 3.8-3.5s-1.1.9 1.5 1.2c2.6.3 5.2-3.8 5-3.8-.4 0-19 3.5-19.6 3.2z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3023" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363.4 513.1a5 5 0 00.2 2.7l19-6.4s.8-1.5 0-1.5-19.5 5.8-19.3 5.3zm25-4c.5 0 19.4-6.1 19.4-6.1s.3 2.6 0 2.6l-17.7 5.2-1.8-1.7z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3025" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M413.3 521.9s-2.9 3.2-2 7.5c.9 4.4 2 8.2 2.3 8.2.3 0 3.5-5.8 7-6.1 3.5-.3 9.9 3.2 9.9 3.2s-.9-7-.6-10.2c.3-3.2 5.2-8.7 5.2-8.7l-21.8 6z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3027" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M386.9 516.6s-.6 2.7-.3 2.7l24.7-6.4V511l-24.4 5.5z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3029" fill="#b6b6b4" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M355.5 551.8s-5.8-.8-5.5.6c.3 1.5 2.9 2.9 3.2 3.8.3.9-.9 4 .9 3.8 1.7-.3 3.4-1.5 3.4-2.4l-.3-5z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3031" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M387.8 537.3v2l20.9-2.9-.6-1.5z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3033" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M363 540.8c.4 0 0 2.6 2.4 2 2.3-.6 2.9-2 2.9-2s.6 3.2 3.8 2.9c3.2-.3 5-3.8 5-3.8s.2 2.6 2.2 1.7c2-.9 2.6-2.9 2.6-2.9l-18.3 2.6-.5-.5zm0-17.2s-2.6.9-1.7 6.1c.9 5.2 3 8.2 3.2 8.2.3 0 2.6-5 6.1-5.8 3.5-1 9.6 2.6 9.6 2.6s-.6-4.7.3-9a18 18 0 013.8-7.6s-20.4 5.5-21.2 5.5z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3035" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M411.9 538.7l.3 1.8s21-2.6 21-3c0-.2 0-2-.4-2-.3 0-20.6 3.5-21 3.2zm-.3-18.6l.3 2 24.7-6.6s.6-1.8.3-1.8-24.7 7.3-25.3 6.4z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3037" fill="none" stroke="#512007" stroke-width=".5" d="M414.2 510.8s-.3 1.8 0 1.8 18.3-4.4 18.3-4.7c0-.3 1.8-2 .3-1.7-1.4.3-18 5.5-18.6 4.6zm38.7 33.7l-18-28.4m-2.4 19.7c.3-.8 1.2-18.3 1.2-18.3" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3039" fill="#fecf3e" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M389 510c1 .2 3.1 3.2 4.3 2.6 1.2-.6 2.9-2.4 2.9-2.4s-.3 3.5 2 3c2.4-.6 2.7-3 2.7-3s1.7 1 3.2 0c1.4-.8 2.8-5.2 2.3-5.2s-16.9 5.2-17.5 5zm-.6 8.4c0 .6-3 5.2-2 9.6 1 4.4 2.5 8.4 2.8 8.4.3 0 4.7-4.6 8.5-5.5 3.7-.9 9.3 2.9 9 2.9-.3 0-1.5-4.4-1.5-7.6 0-3.2 4.4-13 4.4-13zm0 21c0 .2.8 2.2 2.9 2.2 2 0 2.3-2 2.3-2s-.3 3.5 2.9 3.2c3.2-.3 4.3-3.5 4.3-3.5s.3 1.8 3 .9c2.6-.9 6-3.8 5.8-3.8-.3 0-21 3.8-21.3 3z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <use id="use3041" width="992.1" height="496.1" x="0" y="0" transform="translate(-6.6 7.3)" xlink:href="#k"/>
+    <use id="use3043" width="992.1" height="496.1" x="0" y="0" transform="translate(6.6 3.8)" xlink:href="#k"/>
+    <use id="use3045" width="992.1" height="496.1" x="0" y="0" transform="translate(0 11)" xlink:href="#k"/>
+    <path id="k" fill="#be0f17" fill-rule="evenodd" stroke="#512007" stroke-width=".6" d="M409 477a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0z" transform="matrix(.04 -1.07 1.02 .04 251.6 668)"/>
+    <path id="path3048" fill="none" stroke="#512007" stroke-width=".5" d="M398.2 500c0-.2 9 3.8 9 4.1 0 .3 32 42.8 32.3 42.8m-16-42.8l8.2 3.5 2.6 6.4m-61.4-10.4c-.3 0 9 7 9 7l1.2 5.7M341.3 546c4-1.7 32.2-26.4 32.2-26.4m-39.8 21.7l31.7-26.7m21.2 4l30 49.8m-3.6-29.2s3.5 11.7 7 13.5a86 86 0 017.6 4.6" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3050" fill="none" stroke="#512007" stroke-width=".5" d="M412.6 539.5s2.5 13.8 6 16.4c3.5 2.6 7 5.5 7 5.5" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <path id="path3052" fill="none" stroke="#512007" stroke-width=".5" d="M391 439s3.4 19.2 10.4 23.6a950 950 0 0112.8 8.1" transform="matrix(1.25 0 0 1.3 256.3 -299.5)"/>
+    <path id="path3054" fill="none" stroke="#512007" stroke-width=".5" d="M390.7 438.7s7.5 15.2 14 19.8c6.3 4.7 15 9 15 9M366.3 440c2 3.5 1.7 10.2 4 12.5a66 66 0 015.8 7.6m-9.3-19.9c1.2 1.7 4.4 10.4 6.4 13 1.5 2.4 16.3 17.2 16.3 17.2" transform="matrix(1.25 0 0 1.3 256.3 -299.5)"/>
+    <path id="path3056" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M384.6 471.1a2.2 2.2 0 11-4.4 0 2.2 2.2 0 014.4 0zm10.7 4.7a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0zM409 477a1.9 1.9 0 11-3.8 0 1.9 1.9 0 013.8 0zm11.9-4.5c0 1-.7 1.7-1.6 1.7-.9 0-1.6-.8-1.6-1.7 0-.9.7-1.8 1.6-1.8.9 0 1.6.8 1.6 1.8zm9.6-5.7c0 .9-.9 1.6-1.9 1.6-1 0-1.9-.7-1.9-1.6 0-.9.9-1.6 1.9-1.6 1 0 1.9.7 1.9 1.6z" transform="matrix(1.25 0 0 1.3 256.3 -299.5)"/>
+    <path id="path3058" fill="red" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M374.1 404.4c-.9.6-15.4 4.1-13.4 3.8 2-.3 13.7 3 13.4 2-.3-1 0-5.2 0-5.8zm24.7-4.3c-.6 0-9 3.2-8.7 3.2.3 0 9.6 2.6 9.3 2-.3-.6-.3-4.4-.6-5.2zm25.3 2.9c-.6.3-10.5 2.6-8.7 2.9 1.8.3 8.4 2.6 8.4 2 0-.5 0-4.6.3-5z" transform="matrix(1.25 0 0 1.3 256.3 -299.5)"/>
+    <path id="path3060" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.25 0 0 1.3 256.3 -299.5)"/>
+    <path id="path3062" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 31.3l6.7-31.1m-4.4 31.2l5.6-31.2m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(1.25 0 0 1.36 225.3 -323.4)"/>
+    <path id="path3064" fill="none" stroke="#512007" stroke-width=".5" d="M413.6 471c.3-4.6 8.8-31 8.8-31m-5.9 30.1l6.7-30m-3.7 27.7c.2-1.7 4.9-27.6 4.9-27.6m-10.5 27c1.5-.8 5.8-2 5.8-2m-3.7-2.6c1.4 0 4.3-1.2 4.3-1.2m-3.5-2.3a24 24 0 014.4-1.2m-3.8-3.2l4.7-.8m-2.6-3c0 .3 3.2.3 3.2.3m-2.4-3.7l3.2.5" transform="matrix(-1.25 0 0 1.32 1259.2 -307.3)"/>
+    <path id="path3066" fill="#dd8b59" fill-rule="evenodd" stroke="#512007" stroke-width=".5" d="M426.4 558.5l27.6.6.3-2-28.5-.3zm1.2-7.3c3.2 0 27.3-4.6 27.3-4.6s.9-3 0-3-27.3 5.6-27.3 5.6z" transform="matrix(1.25 0 0 1.3 259.4 -430)"/>
+    <use id="use3068" width="992.1" height="496.1" x="0" y="0" transform="translate(0 5.5)" xlink:href="#k"/>
+  </g>
+  <path id="path4214" fill="#012169" stroke-width=".5" d="M0 0h320v240H0z" opacity="1" stop-opacity="1"/>
+  <path id="path4216" fill="#FFF" stroke-width=".5" d="M37.5 0l122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z" opacity="1" stop-opacity="1"/>
+  <path id="path4218" fill="#C8102E" stroke-width=".5" d="M212 140.5L320 220v20l-135.5-99.5zm-92 10l3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z" opacity="1" stop-opacity="1"/>
+  <path id="path4220" fill="#FFF" stroke-width=".5" d="M120.5 0v240h80V0zM0 80v80h320V80z" opacity="1" stop-opacity="1"/>
+  <path id="path4222" fill="#C8102E" stroke-width=".5" d="M0 96.5v48h320v-48zM136.5 0v240h48V0z" opacity="1" stop-opacity="1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fm.svg
new file mode 100644
index 0000000..54f3e77
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fm.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fm" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="fm-a">
+      <path fill-opacity=".7" d="M-81.3 0h682.6v512H-81.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#fm-a)" transform="translate(76.3) scale(.94)">
+    <path fill="#6797d6" d="M-252 0H772v512H-252z"/>
+    <path fill="#fff" d="M259.8 123l-32.4 22.2 12.4-35.9-32.5-22.2h40.1l12.4-35.9 12.4 36h40l-32.4 22.1 12.4 35.9M259.8 390l-32.4-22.2 12.4 36-32.5 22.1h40.1l12.4 35.9 12.4-36 40 .1-32.4-22.2 12.4-35.9m-188.4-92.4L79.3 306l1.4-38-37.5-11.7 38.4-11.7 1.3-38 22.3 30.8 38.4-11.8-24.6 30.7 22.4 30.7m274.2-11.7l24.6 30.7-1.4-38 37.5-11.7-38.4-11.7-1.3-38-22.3 30.8-38.4-11.8 24.6 30.7-22.4 30.7"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fo.svg
new file mode 100644
index 0000000..341d52e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fo.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fo" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="fo-a">
+      <path fill-opacity=".7" d="M-78 32h640v480H-78z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="0" clip-path="url(#fo-a)" transform="translate(78 -32)">
+    <path fill="#fff" d="M-78 32h663.9v480H-78z"/>
+    <path fill="#003897" d="M-76 218.7h185.9V32H216v186.7h371.8v106.6H216V512H109.9V325.3h-186V218.7z"/>
+    <path fill="#d72828" d="M-76 245.3h212.4V32h53.1v213.3H588v53.4H189.5V512h-53V298.7H-76v-53.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fr.svg
new file mode 100644
index 0000000..712c8a5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/fr.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-fr" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ga.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ga.svg
new file mode 100644
index 0000000..1f0a9ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ga.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ga" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#ffe700" d="M640 480H0V0h640z"/>
+    <path fill="#36a100" d="M640 160H0V0h640z"/>
+    <path fill="#006dbc" d="M640 480H0V320h640z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-eng.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-eng.svg
new file mode 100644
index 0000000..eab52bd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-eng.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-eng" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#ce1124" d="M281.6 0h76.8v480h-76.8z"/>
+  <path fill="#ce1124" d="M0 201.6h640v76.8H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-nir.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-nir.svg
new file mode 100644
index 0000000..e043b3e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-nir.svg
@@ -0,0 +1,132 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gb-nir" viewBox="0 0 640 480">
+  <path id="rect6943" fill="#fff" stroke-width="8.1" d="M0 0h640v480H0z"/>
+  <rect id="rect6703" fill="#fff" fill-rule="evenodd" rx="0" ry="0"/>
+  <rect id="a" width="640" height="96" y="192" fill="#c00" fill-rule="evenodd" rx="0" ry="0"/>
+  <use id="use6706" width="600" height="300" transform="matrix(0 .75 -1 0 560 0)" xlink:href="#a"/>
+  <path id="path6708" fill="#ebeae3" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M355.2 146.6c3-4.8 1.2-8-3.4-8.9 0 0-14.9 4.8-31 5.3-16 .5-35-4-35-4-3.5 2.1-2.7 7.2-1 10.4 0 0 16.8 5.6 36 5a111 111 0 0030.1-5.5c3.7-1.2 4.3-2.2 4.3-2.3z"/>
+  <path id="path6710" fill="#fff" stroke="#161111" stroke-width="1.6" d="M320 357.6l-30.9-64.2-70.9 5.4 40-58.8-40-58.8 71 5.4 30.8-64.1 30.9 64 70.9-5.3-40 58.8 40 58.8-71-5.4z"/>
+  <path id="path6712" fill="#b02320" fill-rule="evenodd" stroke="#000" stroke-width="1.3" d="M319.5 122.2c38.8 6.4 37.4 8.2 37.4 8.2l10.1-30.2s1.1-6-1.7-9.6-10.5-1.6-10.5-1.6-1-4.9-4.5-6c-3.4-1.2-16 4.5-20 5.8-4 1.3-6 2.5-11.5 2.4-5.5 0-15.4-5-17.3-6-1.7-.9-4.4-1.8-6.9-1.7-2.4 0-5 .7-6.3 2.4-1.2 1.7-1.2 3.9-1.2 3.9s-2-1.3-5.2-1.3-5 .4-6.5 2.1c-1.5 1.7-3.4 6.5-3.4 6.5l3.6 8.2.2 11.3 7.5 12 36.2-6.4z"/>
+  <path id="path6714" fill="#ebeae3" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M355.7 139.3s2 2.3 1.9 3.2c-.1.8-1 1.5-1 1.5s.7.6.5 1.5c-.1 1-1.4 1-1.4 1s.3.8-.5 1.2c-.7.4-3.8 1-3.8 1s-15-4.2-31-4.2-35 5.2-35 5.2-2-.7-2-2c-.2-1.2.1-2.1.1-2.1s-1 0-1.3-.9c-.4-1.3.1-2.3.1-2.3s-.7.2.1-1.5c.6-1.3 1.5-1.7 1.5-1.7s16.8-6 36-6.1c19.1 0 35.8 6 35.8 6.2z"/>
+  <path id="path6716" fill="none" stroke="#000" stroke-width="1.1" d="M276.2 101.5s-.6-2.2.8-4.1a4.3 4.3 0 014.7-1.4c.8.4.7 1.3 1.7 1.5 1 .3 1.8-.5 1.8-.5"/>
+  <path id="path6718" fill="#fc0" fill-opacity=".9" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M369.8 106.6l-5.8 12-2.3.4s-1.4-.8-5.4-.5c-2.8.2-3.7 1-3.7 1l5.2-12s.4 2.5 1 4c.8 2 3.7 3.7 3.7 3.7s.4-2.3-.4-5a55.9 55.9 0 00-2.8-7.3l10.5 3.7z"/>
+  <path id="path6720" fill="#121116" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M316.5 69.2h6.5v27.7h-6.5z"/>
+  <path id="path6722" fill="#f6ca1f" fill-rule="evenodd" stroke="#000" d="M276.6 120.2l4.1 9s17.9-7 38.9-6.8c31.5.2 40.5 6.5 40.5 6.5l4.6-11.1-3.5 2-3.6 2.3-4 1.5-5-.3-4.4-3.2-2.2-4.7-3.7 3.4-6.6 1.4-6.4-1.6-5.6-7.1s-4.2 7.9-9.6 8.4c-7.7.6-12.1-3.7-12.1-3.7s-2.9 6.4-7.6 7.5c-7.5 1.9-13.7-3.5-13.8-3.5z"/>
+  <g id="g6842" stroke-width="2.2">
+    <path id="path6724" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M348.4 65.7c0 1.8-1.4 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.5 3.4 3.4 0 013.3 3.4"/>
+    <path id="path6726" fill="#a3afb8" fill-rule="evenodd" d="M343.5 67.4s2.7 0 3-1.1c.3-1.2-.2-2.6-.2-2.6s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.7a3 3 0 01-2-.5z"/>
+    <path id="path6728" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M340.3 69.5c0 1.8-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.4-3.4A3.4 3.4 0 01337 66a3.4 3.4 0 013.4 3.3"/>
+    <path id="path6730" fill="#a3afb8" fill-rule="evenodd" d="M335.3 71.2s2.8 0 3-1.1c.3-1.1-.2-2.6-.2-2.6s1.3 1.5 1 2.6c-.4 1-.8 1.4-1.7 1.6a3 3 0 01-2-.5z"/>
+    <path id="path6732" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M358 63.4c0 1.9-1.6 3.4-3.4 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6734" fill="#a3afb8" fill-rule="evenodd" d="M353 65.2s2.7 0 3-1.2c.3-1.1-.2-2.5-.2-2.5s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.6a3 3 0 01-2-.4z"/>
+    <path id="path6736" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M368.6 65.6c0 1.8-1.5 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.4 3.4 3.4 0 013.3 3.3"/>
+    <path id="path6738" fill="#a3afb8" fill-rule="evenodd" d="M363.7 67.3s2.7 0 3-1.1c.3-1.2-.2-2.6-.2-2.6s1.3 1.4 1 2.6c-.4 1-.8 1.3-1.7 1.6a3 3 0 01-2.1-.5z"/>
+    <path id="path6740" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M376.8 72.3c0 1.8-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.4 3.4 3.4 0 013.4 3.3"/>
+    <path id="path6742" fill="#a3afb8" fill-rule="evenodd" d="M371.9 74s2.7 0 3-1.1c.2-1.1-.2-2.6-.2-2.6s1.3 1.5.9 2.6c-.4 1-.7 1.4-1.7 1.6-.6.1-1.5-.1-2-.5z"/>
+    <path id="path6744" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M380.3 83.3c0 1.9-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6746" fill="#a3afb8" fill-rule="evenodd" d="M375.4 85s2.7 0 3-1.1c.2-1.1-.2-2.6-.2-2.6s1.3 1.5.9 2.6c-.4 1-.7 1.4-1.7 1.6a3 3 0 01-2-.5z"/>
+    <path id="path6748" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M379 94.4c0 2-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.3 3.4 3.4 0 013.3-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6750" fill="#a3afb8" fill-rule="evenodd" d="M374 96.2s2.8 0 3-1.2c.3-1-.1-2.5-.1-2.5s1.3 1.4.9 2.5-.7 1.4-1.7 1.6a3 3 0 01-2-.4z"/>
+    <path id="path6752" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M374 104.2c0 1.9-1.5 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.4 3.4 3.4 0 013.3 3.4"/>
+    <path id="path6754" fill="#a3afb8" fill-rule="evenodd" d="M369.1 106s2.7 0 3-1.2c.3-1-.2-2.5-.2-2.5s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.6a3 3 0 01-2-.4z"/>
+    <path id="path6756" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M332.3 72.4c0 1.9-1.5 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6758" fill="#a3afb8" fill-rule="evenodd" d="M327.4 74.2s2.7 0 3-1.2c.3-1.1-.2-2.5-.2-2.5s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.6-.7.2-1.6 0-2.1-.4z"/>
+    <g id="g6764" stroke-width="2.7">
+      <path id="path6760" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322.1 71.5a2.8 2.8 0 01-2.8 2.9 2.8 2.8 0 01-2.8-2.9 2.8 2.8 0 012.8-2.8 2.8 2.8 0 012.8 2.8"/>
+      <path id="path6762" fill="#a3afb8" fill-rule="evenodd" d="M318 73s2.3 0 2.5-1c.3-.9-.1-2-.1-2s1 1.1.8 2c-.4 1-.7 1.2-1.4 1.4a2.5 2.5 0 01-1.8-.4z"/>
+    </g>
+    <g id="g6770" stroke-width="2.7">
+      <path id="path6766" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322.2 75a2.8 2.8 0 01-2.8 3 2.8 2.8 0 01-2.8-3 2.8 2.8 0 012.8-2.8 2.8 2.8 0 012.8 2.8"/>
+      <path id="path6768" fill="#a3afb8" fill-rule="evenodd" d="M318 76.5s2.3 0 2.6-1c.2-.8-.2-2-.2-2s1 1.2.8 2c-.3 1-.6 1.2-1.4 1.4a2.5 2.5 0 01-1.7-.4z"/>
+    </g>
+    <g id="g6776" stroke-width="2.7">
+      <path id="path6772" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322.4 80.3a2.8 2.8 0 01-2.8 2.8 2.8 2.8 0 01-2.9-2.8 2.8 2.8 0 012.9-2.9 2.8 2.8 0 012.8 2.9"/>
+      <path id="path6774" fill="#a3afb8" fill-rule="evenodd" d="M318.3 81.8s2.2 0 2.5-1c.2-1-.2-2.1-.2-2.1s1 1.2.8 2c-.3 1-.6 1.3-1.4 1.4a2.5 2.5 0 01-1.7-.3z"/>
+    </g>
+    <g id="g6782" stroke-width="2.5">
+      <path id="path6778" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322.7 85.8a3 3 0 01-3 3.1 3 3 0 01-3.1-3 3 3 0 013-3.2 3 3 0 013 3.1"/>
+      <path id="path6780" fill="#a3afb8" fill-rule="evenodd" d="M318.2 87.4s2.5 0 2.7-1-.2-2.3-.2-2.3 1.2 1.3.9 2.3c-.4 1-.7 1.2-1.5 1.4a2.6 2.6 0 01-1.9-.4z"/>
+    </g>
+    <path id="path6784" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M323 93.3c0 1.8-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.4 3.4 3.4 0 013.3-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6786" fill="#a3afb8" fill-rule="evenodd" d="M318 95s2.8 0 3-1.1c.3-1.1-.1-2.6-.1-2.6s1.3 1.5.9 2.6c-.4 1-.7 1.4-1.7 1.6a3 3 0 01-2-.5z"/>
+    <g id="g6792" stroke-width="2.4">
+      <path id="path6788" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322.7 108.5c0 1.8-1.4 3.2-3.2 3.2a3.2 3.2 0 01-3.2-3.2c0-1.7 1.4-3.2 3.2-3.2a3.2 3.2 0 013.2 3.2"/>
+      <path id="path6790" fill="#a3afb8" fill-rule="evenodd" d="M318 110.2s2.6 0 2.8-1.1c.3-1-.1-2.4-.1-2.4s1.2 1.3.8 2.4c-.3 1-.7 1.3-1.5 1.5-.6.1-1.5-.1-2-.4z"/>
+    </g>
+    <path id="path6794" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M313.6 72.3c0 1.9-1.6 3.4-3.4 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6796" fill="#a3afb8" fill-rule="evenodd" d="M308.6 74s2.7 0 3-1c.3-1.2-.2-2.6-.2-2.6s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.6a3 3 0 01-2-.4z"/>
+    <path id="path6798" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M305.2 69c0 1.9-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6800" fill="#a3afb8" fill-rule="evenodd" d="M300.3 70.8s2.7 0 3-1.2c.2-1-.2-2.5-.2-2.5s1.3 1.4 1 2.5c-.5 1.1-.8 1.4-1.8 1.6-.6.2-1.5 0-2-.4z"/>
+    <path id="path6802" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M297.2 65.3c0 1.8-1.5 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.3-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6804" fill="#a3afb8" fill-rule="evenodd" d="M292.3 67s2.7 0 3-1.1c.3-1.1-.2-2.6-.2-2.6s1.3 1.5 1 2.6c-.4 1-.8 1.4-1.7 1.6a3 3 0 01-2.1-.5z"/>
+    <path id="path6806" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M288 63.3c0 1.9-1.4 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6808" fill="#a3afb8" fill-rule="evenodd" d="M283.1 65s2.7 0 3-1.1c.3-1.1-.2-2.6-.2-2.6s1.3 1.5 1 2.6c-.4 1-.8 1.4-1.7 1.6a3 3 0 01-2-.5z"/>
+    <path id="path6810" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M277.2 65.8c0 2-1.5 3.4-3.3 3.5a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.4-3.5 3.4 3.4 0 013.3 3.4"/>
+    <path id="path6812" fill="#a3afb8" fill-rule="evenodd" d="M272.3 67.6s2.7 0 3-1.1c.3-1.2-.2-2.6-.2-2.6s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.7a3 3 0 01-2-.5z"/>
+    <path id="path6814" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M269.6 73.5c0 1.9-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6816" fill="#a3afb8" fill-rule="evenodd" d="M264.7 75.2s2.7 0 3-1.1c.2-1.1-.2-2.6-.2-2.6s1.3 1.5.9 2.6c-.4 1-.7 1.4-1.7 1.6a3 3 0 01-2-.5z"/>
+    <path id="path6818" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M266.4 84.2c0 1.9-1.5 3.4-3.3 3.4a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.3-3.4 3.4 3.4 0 013.4 3.3"/>
+    <path id="path6820" fill="#a3afb8" fill-rule="evenodd" d="M261.5 86s2.7-.1 3-1.2c.3-1.1-.2-2.6-.2-2.6s1.3 1.5 1 2.6c-.4 1-.8 1.4-1.7 1.6a3 3 0 01-2.1-.5z"/>
+    <path id="path6822" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M267.8 95.3c0 2-1.5 3.5-3.3 3.5a3.4 3.4 0 01-3.4-3.4 3.4 3.4 0 013.3-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6824" fill="#a3afb8" fill-rule="evenodd" d="M262.9 97.1s2.7 0 3-1.2c.3-1-.2-2.5-.2-2.5s1.3 1.4 1 2.5c-.4 1.1-.8 1.4-1.7 1.7a3 3 0 01-2-.5z"/>
+    <path id="path6826" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M273 105.5c0 1.8-1.5 3.4-3.4 3.4a3.4 3.4 0 01-3.3-3.4 3.4 3.4 0 013.3-3.5 3.4 3.4 0 013.4 3.4"/>
+    <path id="path6828" fill="#a3afb8" fill-rule="evenodd" d="M268 107.2s2.8 0 3-1.1c.3-1.1-.1-2.6-.1-2.6s1.3 1.4 1 2.5c-.5 1.1-.8 1.4-1.7 1.7a3 3 0 01-2.1-.5z"/>
+    <g id="g6834" stroke-width="2.8">
+      <path id="path6830" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.31597 -.08466 .13499 .50378 109.4 30)"/>
+      <path id="path6832" fill="#a3afb8" fill-rule="evenodd" d="M276.3 120.7s1.6-.5 1.5-1.6c0-1.1-.7-2.4-.7-2.4s1.1 1.1 1.2 2.3c0 1-.1 1.4-.6 1.8-.3.2-1 .2-1.4-.1z"/>
+    </g>
+    <g id="g6840" stroke-width="2.8">
+      <path id="path6836" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" d="M430.6 247.4a6.5 6.5 0 01-6.4 6.5 6.5 6.5 0 01-6.5-6.5 6.5 6.5 0 016.4-6.5 6.5 6.5 0 016.5 6.5" transform="matrix(.31758 .0784 -.125 .50636 260 -40.2)"/>
+      <path id="path6838" fill="#a3afb8" fill-rule="evenodd" d="M362.3 119.8s1.7.4 2.1-.7c.5-1 .5-2.5.5-2.5s.5 1.6 0 2.6-.8 1.3-1.4 1.3c-.4.1-1-.3-1.2-.7z"/>
+    </g>
+  </g>
+  <path id="path6844" fill="#b3a192" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M316.7 53.8l.3 5.7s-6.8.6-7 1.2c-1.4 3 1.5 7 1.5 7s2.3-1.8 8-1.8c5.5 0 8.3 1.4 8.3 1.4s1.4-2.3 1.4-4c0-1.7-.6-3.4-.6-3.4l-3.6-.4h-2.5l-.2-5.8-5.6.1z"/>
+  <path id="path6846" fill="#f0ddcb" stroke="#121116" stroke-linejoin="round" stroke-width=".6" d="M326.4 62.6c0 .7-.6 1.2-1.2 1.2-.7 0-1.3-.5-1.3-1.1 0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.3 1.1m2.7.7c0 .6-.5 1.2-1.2 1.2s-1.3-.6-1.3-1.2c0-.7.6-1.2 1.3-1.2.7 0 1.2.5 1.2 1.2m-5.5-.7c0 .6-.6 1.2-1.2 1.2-.7 0-1.2-.6-1.2-1.2s.5-1.2 1.1-1.2c.7 0 1.3.6 1.3 1.2m-5.6 0c0 .7-.6 1.3-1.3 1.3-.7 0-1.2-.6-1.2-1.2 0-.7.5-1.2 1.2-1.2s1.3.5 1.3 1.2m-3.1.2c0 .6-.6 1.2-1.3 1.2-.7 0-1.2-.5-1.2-1.2s.5-1.2 1.2-1.2 1.3.5 1.3 1.2m5.7-3.5c0 .6-.5 1-1 1a1 1 0 01-1.2-1c0-.6.5-1 1.1-1 .6 0 1 .4 1 1m0-4.7c0 .5-.4 1-1 1a1 1 0 01-1-1c0-.6.4-1 1-1s1 .4 1 1m0 2.5c0 .6-.4 1-1 1s-1-.4-1-1c0-.5.4-1 1-1s1 .4 1 1m-8.8 6.5c0 .7-.5 1.2-1.2 1.2-.6 0-1.2-.5-1.2-1.2 0-.6.5-1.1 1.2-1.1s1.2.5 1.2 1.1"/>
+  <path id="path6848" fill="#916c68" stroke="#4d3126" stroke-linejoin="round" stroke-width=".6" d="M320.9 62.4c0 .7-.6 1.2-1.4 1.2a1.3 1.3 0 01-1.3-1.2c0-.7.6-1.3 1.3-1.3.7 0 1.3.6 1.3 1.3"/>
+  <g id="g6854" stroke-width="2.5">
+    <path id="path6850" fill="#eee" stroke="#1e1e1e" stroke-linejoin="round" stroke-width="1.2" d="M322 45.5a2.5 2.5 0 01-2.4 2.5 2.5 2.5 0 01-2.5-2.5 2.5 2.5 0 012.5-2.6 2.5 2.5 0 012.5 2.5"/>
+    <path id="path6852" fill="#a3afb8" fill-rule="evenodd" d="M318.4 46.8s2 0 2.2-1c.2-.7-.1-1.8-.1-1.8s1 1 .7 1.9c-.3.8-.6 1-1.2 1.2a2.2 2.2 0 01-1.6-.3z"/>
+  </g>
+  <path id="path6856" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M280 130.1s2.2 2.1 2.8 4c.6 1.8 1.5 6.8 1.5 6.8s23.2-6.5 34.6-6c11.4.6 37.7 6.3 37.7 6.3l1-5.7c.5-3 2.7-6.3 2.7-6.3s-25.1-7.8-41-7a116 116 0 00-27.3 3.5 258.5 258.5 0 00-12 4.4z"/>
+  <path id="path6858" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M314.7 36h10s-2.5 1.7-3 3.4c-.4 1.4-.3 3.7-.3 3.7s2.7 0 4-1a78.8 78.8 0 013.7-2.9v12.7s-2.5-2.3-4-3.1a14.4 14.4 0 00-3.5-1.3s0 2 .8 3.3 4.3 5.8 4.3 5.8l-14.3.5s3.4-3.5 4.8-6.1c.9-1.7.5-3.5.5-3.5s-2.4 0-3.6.9c-1.3.8-3.4 3.3-3.4 3.3V39.5s1 2.4 3 3.3c2 .9 3.8.4 3.8.4s.4-2.4-.4-4c-.8-1.5-2.6-3.2-2.4-3.1z"/>
+  <path id="path6860" fill="#fc0" fill-rule="evenodd" stroke="#121116" stroke-width="1.2" d="M313.9 76.5s-7.1-.1-13.2-3.7-12.3-7.4-21.3-5.3c-1.8.5-8.6 3.5-11.6 13.2a26 26 0 002.4 18.7 50.2 50.2 0 005.6 7.4l3.7-2.5s-9.3-8-8.2-18.2c1-10.3 6.2-12.7 6.2-12.7s6.4-5 14.9-.3a80 80 0 0025.3 8.7c.6-.1-4-5.4-3.8-5.3z"/>
+  <path id="path6862" fill="#fc0" fill-rule="evenodd" stroke="#000" stroke-width="1.2" d="M274.5 115l-3.8-7.4 11.4-4.4s-2.8 3.6-3.4 6.2c-.8 3.2-.5 5.9-.5 5.9s1-.8 2.3-2.9c1-1.5 2.6-7.3 2.6-7.3l5.1 16.3s-2.6-2.6-4.5-2.9c-2-.4-4.6.3-4.6.3l-3 1-1.6-4.8z"/>
+  <path id="path6864" fill="#fc0" fill-rule="evenodd" stroke="#121116" stroke-width="1.2" d="M326.7 76.3s7.1 0 13.2-3.7c6.1-3.6 12.2-7.3 21.3-5.2 1.8.4 8.6 3.4 11.6 13.1a26 26 0 01-2.5 18.7 116.7 116.7 0 01-3.6 5.9l-4.4-1.6s8.1-7.3 7-17.6c-1.1-10.3-6.2-12.7-6.2-12.7s-6.4-5-14.9-.2c-8.5 4.7-16.8 6.8-16.8 6.8s-7.8 2-8.5 1.8c-.7 0 4-5.4 3.8-5.3z"/>
+  <path id="path6866" fill="#fc0" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M323 69.3h3V97h-3zm-10-.2h3.5v27.7H313z"/>
+  <path id="path6868" fill="#fc0" stroke="#121116" stroke-linejoin="round" stroke-width="1.2" d="M329.2 62.7c0 5-4.3 9-9.7 9-5.3 0-9.7-4-9.7-9 0-4.9 4.3-8.9 9.6-8.9 5.4 0 9.8 4 9.8 8.9"/>
+  <path id="path6870" fill="#fc0" fill-rule="evenodd" stroke="#000" d="M310.9 96.8l16.7-.2s-2 1.2-3.7 4.2c-1.6 3-1.4 4.8-1.4 4.8s2.5 0 4.3-1.3a25.9 25.9 0 003.8-3.7v15.3s-1.3-2-3.3-3c-2-1.3-4.8-1.3-4.8-1.3h-5.7s-2.6.2-3.7 1a29 29 0 00-3.7 3.2l-.3-14.6s.8 2.6 3.5 3.6 4.2 1 4.2 1 0-3.4-1.4-5a33 33 0 00-4.5-4z"/>
+  <path id="path6872" fill="#f6ca1f" fill-rule="evenodd" stroke="#000" stroke-width=".9" d="M320.2 108.8s2.4 5.7 5.3 8.2c1.6 1.5 6.6 2.6 8.8 2 5-1.3 8.6-5.3 8.6-5.3s-.2 4.4 3 6.9c3.1 2.4 5.6 3 8.2 2.3 2.7-.7 10-6.2 10-6.2l1.6 1.3s-4.3 4.2-8.7 6.3c-2.3 1.2-9.3.5-11.5-1.3-2.3-1.8-3.6-6.1-3.6-6.1s-1.4 2.8-4.4 3.8c-3 1-7 1-10.9-.2-2.5-.8-5.9-4.3-6.5-5.5-.6-1.1-.4-1.8-.4-1.8s-2 5.4-5.8 6.9a18.7 18.7 0 01-11.5.4c-3.6-1-3.9-3.1-3.9-3.1s-.2 5.7-8 7.3c-8 1.6-14.2-4.1-14.2-4.1l1.1-1.7s4.4 5 11.2 4.6c6.8-.5 9-9.2 9-9.2s3 4.5 11 4.6c7.9.1 10.2-10.3 10.2-10.3l1.4.2z"/>
+  <g id="g6882" fill="#fc0" stroke="#000" stroke-width="1.1">
+    <path id="path6874" fill-rule="evenodd" d="M300.6 112.1s0-2.7.7-3.6c.8-1.1 2-1.2 2.6-1 .7.2 1.4.8 1.3 2.8-.1 1.9-.7 2.8 0 3.6.5.7.6 1.2 1.7 1 1-.2 1.6-.5 1.3-1.5s-.5 0-.7-.8c-.2-.9 1-4.6.8-6.9-.2-2.2-1-4-2.8-4.5-1.6-.4-3-.4-4.5.7-1.4 1-3.3 4.5-3.3 4.5v7.5l3-.2v-1.6z"/>
+    <path id="path6876" fill-rule="evenodd" d="M295 114.1s-1.2-2.5-2-3a2.5 2.5 0 00-2.8 0c-.6.5-1 1.4-.1 3.1.8 1.7 1.7 2.4 1.4 3.3-.2.9 0 1.4-1.1 1.7-1.1.3-1.7.1-1.9-1-.2-1 .6 0 .4-1-.1-.8-2.8-3.7-3.5-5.9-.7-2.1-.6-4.1.8-5.2 1.3-1 2.5-1.6 4.3-1.2 1.8.4 4.9 2.9 4.9 2.9l3 6.8-2.8 1-.6-1.5z"/>
+    <path id="path6878" fill-rule="evenodd" d="M294.4 92.1s-3 5-2.3 8.8c.7 3.8 4.6 12 4.6 12v1l2.2-.2-.5-1.1s1-9.8.4-12.9a33 33 0 00-4.4-7.6zm4.7 22.7s1.5 1.7 3.2 2.6c2 .9 2.8 1 3.5.3.6-.4.4-2.2-.3-2.7-.6-.5-1.4-.2-1.5.3-.2.8-.4.8-1 .4-1-.4-3-1.7-3-1.7l-.9.8zm-2.3.4s-.6 2.2-1.8 3.7c-1.4 1.6-2.1 2-3 1.7-.7-.1-1.3-1.8-.9-2.6.4-.7 1.2-.8 1.5-.4.5.7.7.6 1.1 0l2-2.7 1.1.2z"/>
+    <path id="path6880" stroke-linejoin="round" d="M302.4 113.4c.2.6-1.8 1.5-4.3 1.9-2.5.4-4.6.3-4.8-.4 0-.6 1.9-1.5 4.4-2 2.5-.4 4.6-.2 4.7.5"/>
+  </g>
+  <g id="g6892" fill="#fc0" stroke="#000" stroke-width="1.1">
+    <path id="path6884" fill-rule="evenodd" d="M345.6 113.2s1-2.5 2-3.1c1.1-.8 2.2-.5 2.7 0 .6.3 1 1.2.3 3-.8 1.7-1.6 2.4-1.4 3.3.3 1 .2 1.4 1.3 1.6 1.1.3 1.7.1 1.8-1 .1-1-.5 0-.4-1 0-.8 2.6-3.9 3.2-6 .6-2.3.4-4.2-1-5.3-1.4-1-2.7-1.4-4.5-.9-1.7.5-4.7 3.1-4.7 3.1l-2.6 7 2.9.9.4-1.6z"/>
+    <path id="path6886" fill-rule="evenodd" d="M339.7 113.1s-.2-2.7-.9-3.5c-.9-1.1-2-1.1-2.6-1-.7.3-1.4 1-1.2 2.9.2 2 .8 2.8.3 3.6-.6.8-.6 1.2-1.7 1.1-1.1 0-1.7-.4-1.5-1.4.2-1 .6 0 .8-.9.1-.8-1.3-4.5-1.2-6.8 0-2.2.8-4 2.5-4.6 1.6-.5 3-.6 4.5.5 1.5 1 3.6 4.3 3.6 4.3l.4 7.4h-3v-1.6z"/>
+    <path id="path6888" fill-rule="evenodd" d="M346.8 92.3s-4.5 3.6-5.2 7.4c-.7 3.8.1 12.8.1 12.8l-.3 1 2 .6v-1.2s4.4-8.8 4.9-12a32 32 0 00-1.5-8.6zm-3.5 22.9s.8 2.1 2.1 3.5c1.5 1.6 2.2 1.9 3.1 1.6.7-.2 1.1-2 .7-2.6-.4-.7-1.2-.7-1.5-.3-.5.7-.7.5-1.1 0a77.7 77.7 0 01-2.2-2.6l-1.1.4zm-2.3-.5s-1.3 1.9-3 2.8c-1.9 1.1-2.7 1.2-3.5.6-.6-.3-.5-2.1.1-2.7.7-.5 1.4-.3 1.6.2.2.8.5.7 1 .4l2.8-2 1 .7z"/>
+    <path id="path6890" stroke-linejoin="round" d="M346.9 115c-.1.7-2.3.8-4.8.3s-4.4-1.4-4.3-2c.1-.7 2.3-.8 4.8-.3s4.4 1.4 4.3 2"/>
+  </g>
+  <path id="path6894" fill="#cca715" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M279 129.9s.6 2 1.7 1c1.2-1.1 17.3-7.5 40-7.5s37.5 6.3 38.4 6.7c.9.3 1.3.8 2 0 .8-1-.7-2.3-.7-2.3s-15.8-6.7-40.4-6.6c-24.7.1-40.6 7.1-40.6 7.1s-1 .8-.3 1.6z"/>
+  <path id="path6896" fill-rule="evenodd" d="M307.9 139.3s.7-2 2-2.4c1-.3 2.5.7 2.5.7s-1.9-.2-2.5.2c-.5.3-.7 1.2-.7 1.2s.4-.8 1.9-.7h1.6s-2.5.3-3 1c-.6.7 2.3 1 2.3 1s-4.5 0-5-.2c-.6-.3-1-1.2-2-1-1 .4-2 1.3-2 1.3s1.1-2 1.8-2 1.2 0 1.8.3l1.3.6zm-16.8 3.6s.3-2 1.5-2.7c1-.5 2.7.2 2.7.2s-2 .2-2.5.6c-.4.4-.4 1.4-.4 1.4s.3-.8 1.7-1a68.5 68.5 0 001.6-.3s-2.4.7-2.8 1.5c-.5.8 2.5.6 2.5.6s-4.4.8-5 .7c-.7-.2-1.2-1-2.1-.5-1 .4-1.8 1.5-1.8 1.5s.8-2.1 1.5-2.3c.7-.1 1-.2 1.8 0l1.3.3zm30.9-4.3s.8-2 2-2.3c1.1-.3 2.7.8 2.7.8s-2-.3-2.6 0c-.5.3-.7 1.2-.7 1.2s.4-.7 1.9-.5l1.6.1s-2.5 0-3.1.8c-.6.6 2.3 1.1 2.3 1.1s-4.5-.2-5-.5c-.6-.3-1-1.2-2-1-1 .2-2 1-2 1s1.2-1.8 1.9-1.8 1.1 0 1.8.4l1.2.7zm14.1 1.6s1-1.9 2.4-2c1-.2 2.4 1 2.4 1s-1.8-.4-2.5-.2c-.6.2-.9 1-.9 1s.5-.6 2-.3l1.6.4s-2.5-.2-3.2.4c-.7.6 2.1 1.4 2.1 1.4s-4.4-.8-5-1.1c-.4-.4-.7-1.4-1.7-1.3-1 .1-2.2.8-2.2.8s1.5-1.6 2.2-1.5c.7 0 1.1.1 1.7.5l1.1.9zm14 2.5s1-1.4 2.1-1.5c.9 0 1.9 1.1 1.9 1.1s-1.5-.5-2-.4c-.5.1-.8.8-.8.8s.5-.5 1.6-.1l1.3.4s-2-.4-2.6 0c-.6.5 1.6 1.4 1.6 1.4s-3.5-1-4-1.3c-.3-.3-.4-1.1-1.2-1.1-.9 0-1.9.5-1.9.5s1.3-1.3 1.9-1.1c.5 0 .9.2 1.3.5l.9.8z"/>
+  <path id="path6898" fill="#0f6545" stroke="#000" stroke-linejoin="round" stroke-width=".7" d="M305 129.7c.4 1.7-1.6 3.5-4.4 4-2.8.6-5.3-.3-5.6-2-.3-1.6 1.6-3.4 4.4-4 2.8-.6 5.3.3 5.6 2z"/>
+  <path id="path6900" fill="#cecfc1" d="M298.8 129.4c0 .4-.4.9-1 1-.6.1-1.2-.1-1.3-.5 0-.4.4-.8 1-1 .6 0 1.2.1 1.3.5z"/>
+  <path id="path6902" fill="#0f6545" stroke="#000" stroke-linejoin="round" stroke-width=".7" d="M344.1 131.8c-.5 1.6-3 2.2-5.8 1.4-2.7-.9-4.4-2.9-4-4.5.6-1.6 3.2-2.3 5.9-1.4 2.7.8 4.5 2.8 4 4.4z"/>
+  <path id="path6904" fill="#cecfc1" d="M338.8 128.5c-.2.4-.7.6-1.3.4-.6-.2-1-.7-.9-1 .1-.5.7-.6 1.3-.5.6.2 1 .7.9 1z"/>
+  <path id="path6906" fill="#1f2d86" stroke="#000" stroke-linejoin="round" d="M314.6 126h10.1v5h-10.1z"/>
+  <path id="path6908" fill="#707c8b" d="M318.9 127c0 .3-.4.5-1 .5s-1-.2-1-.5c0-.2.5-.4 1-.4s1 .2 1 .4z"/>
+  <path id="path6910" fill="#9f1209" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M286 131l1.6 5-3 1.7s-1.5 1-3 .2c-1.4-.7-2.2-3-1.4-4 1.5-1.8 5.7-3 5.7-2.9z"/>
+  <path id="path6912" fill="#8f322f" d="M283.4 134.6c0 .8-.7 1.5-1.5 1.5s-1.4-.7-1.4-1.5c0-.9.6-1.5 1.4-1.5s1.5.6 1.5 1.5z"/>
+  <path id="path6914" fill="#e2a494" d="M282 134a.8.8 0 01-.2.7.4.4 0 01-.5 0 .8.8 0 01-.4-.5.8.8 0 01.2-.7.4.4 0 01.5-.1c.2 0 .4.3.4.6z"/>
+  <path id="path6916" fill="#9f1209" fill-rule="evenodd" stroke="#000" stroke-width=".5" d="M353.9 131.7l-1.7 4.4 4 2s1.7.8 2.8-.1c1-.8 1.2-2.8.4-3.7-.7-1-5.6-2.6-5.5-2.6z"/>
+  <path id="path6918" fill="#aa675d" d="M358.6 135.2c0 .6-.6 1-1.3 1s-1.2-.4-1.2-1 .6-1 1.2-1c.7 0 1.3.5 1.3 1z"/>
+  <path id="path6920" fill="#e2a494" d="M357.4 135c0 .3-.1.6-.3.7a.5.5 0 01-.6 0 .8.8 0 01-.3-.6c0-.3.1-.5.3-.6a.5.5 0 01.6 0c.2 0 .3.3.3.6z"/>
+  <path id="path6922" fill="#f5d8bc" d="M328.6 126.4a.7.7 0 01-.8.7.7.7 0 01-.7-.7.7.7 0 01.7-.7c.4 0 .8.3.8.7zm4.3.2a.7.7 0 01-.7.7.7.7 0 01-.8-.7.7.7 0 01.8-.6c.3 0 .7.2.7.6zm-2.2 1.7c0 .5-.4.9-1 .9s-.8-.4-.8-.9.4-.9.9-.9.9.4.9 1zm2 2.8a.7.7 0 01-.6.7.7.7 0 01-.8-.7.7.7 0 01.7-.7c.5 0 .8.3.8.7zm-4.1-.5a.7.7 0 01-.7.7.7.7 0 01-.7-.7.7.7 0 01.7-.7c.4 0 .7.3.7.7zm-20.9-3.5a.7.7 0 01-.5.8.7.7 0 01-.9-.5.7.7 0 01.6-.8.7.7 0 01.8.5zm4.3-.7a.7.7 0 01-.6.8.7.7 0 01-.8-.5.7.7 0 01.5-.8.7.7 0 01.9.5zm-1.8 2.1c.1.5-.2 1-.6 1a.9.9 0 01-1.1-.6c-.1-.4.2-1 .7-1a.9.9 0 011 .6zm2.7 2.3a.7.7 0 01-.5.8.7.7 0 01-.9-.5.7.7 0 01.5-.8.7.7 0 01.9.5zm-4.2.4a.7.7 0 01-.5.8.7.7 0 01-.9-.5.7.7 0 01.6-.8.7.7 0 01.8.5zm-19.2-.2a.7.7 0 01-.4 1 .7.7 0 01-.9-.4.7.7 0 01.4-1 .7.7 0 011 .4zm4.1-1.3a.7.7 0 01-.4 1 .7.7 0 01-.9-.5.7.7 0 01.4-.9.7.7 0 011 .4zm-1.4 2.4a.9.9 0 01-.5 1 .9.9 0 01-1.1-.4.9.9 0 01.5-1.1.9.9 0 011.1.5zm3 1.8a.7.7 0 01-.4 1c-.4 0-.8-.1-1-.5s.1-.7.5-.9a.7.7 0 01.9.4zm-4.1 1a.7.7 0 01-.4 1 .7.7 0 01-1-.4.7.7 0 01.5-1 .7.7 0 011 .4zm56.2-5.8c-.1.4-.5.6-1 .5a.8.8 0 01-.5-1c0-.3.5-.5 1-.4.3 0 .6.5.5.9zm4.4 1.3c0 .4-.5.7-.9.6a.8.8 0 01-.6-1c.1-.3.5-.6 1-.5.4.1.6.5.5 1zm-2.7 1.2a1 1 0 01-1.1.7 1 1 0 01-.8-1.1 1 1 0 011.2-.7c.5.1.8.6.7 1.1zm1.5 3.5c-.1.4-.5.6-1 .5a.8.8 0 01-.5-.9c0-.4.5-.6.9-.5.4.1.7.5.6 1zm-4.3-1.6c0 .4-.5.6-.9.5a.8.8 0 01-.5-.9c0-.4.5-.6.9-.5.4 0 .6.5.5.9z"/>
+  <path id="path6924" fill="none" stroke="#000" stroke-width="1.2" d="M356 89s-2 1.9-4.5 1.9a7 7 0 01-4.6-1.6c-.8-.5.2-2 .2-2"/>
+  <path id="path6926" fill="none" stroke="#000" stroke-width="1.1" d="M312.9 92.8s-3.7-.7-5.3-1.2c-1.5-.5-1.1-1.5-3-1.4-1.7.1-3.5 1.4-3.1 3.2.4 1.8 1.7 2 3 1.7 1.2-.4.8-2.6-.8-2.4-1.7 0-.3 1.5-.3 1.5"/>
+  <path id="path6928" fill="none" stroke="#000" d="M287.3 90s1 1.5 3.7 1.2c2.7-.2 3.7-1.6 3.8-2.3.2-.6 0-1.8-.5-2.3-.5-.5-2.3-.7-2.3-.7"/>
+  <g id="g6934" stroke="#161111" stroke-width="1.6">
+    <path id="path6930" fill="#c00" d="M339.2 270.4c2.5-2.5 6.5-5.2 8.7-11 2-5.6 3-15.7 5-20.8 2.5-8.8 7.5-17.4 1.5-16.8-5.7.6-7.5 6-9.6 10-1 1.5-3.3 4.7-3.7 6.5-.1-3-1.7-11.9-2-20.8-.3-8.4 0-17-.3-20.3-.2-4.3-.2-8.3-1.2-11.4-.5-1.5-2.6-3-3.8-2.9-2.2 0-3.6 2-4 3.9l-.2 2.8c-.2 2.4 0 5.5-.2 8.3-.1 3 .2 6.2 0 9-.2 5.4-.6 10.5-.8 11.5 0-2-1-11.7-1.3-20.9l-.2-10c0-2.6 0-5.4-.2-7.4-.5-3.4-1.6-5-4-5-1.8 0-4.2 1.3-5 5-.3 2.1-.4 4.6-.3 7.4l.2 8c-.2 10.5-.4 21.5-.8 24.8 0-1-1.1-6.5-1.4-13.9l-.4-9.6-.3-9.6c0-1.6-.7-6.2-3.7-6-1.7-.2-3.4 1-4 5.3-.4 2.5-.4 6.6-.5 9.9-.1 6-.4 11.4 0 16.9l.1 7.7c0 .4-.9-2.9-1.3-7.4l-.8-8.6c0-2.3-.1-5.7-.3-8.5-.2-2.1-.1-4.5-2.5-4.3-2.4.1-3.8 1-4.3 5-.4 2.7-.4 8.5-.5 10.5.2 5.3-1.2 17.7-1.8 21.2-.2 2.5-1.2 5.7-1.6 9.2a70 70 0 001 20.6c2 7 7 10.2 6.8 15-.3 4.8 0 13.3 0 17 0 3.8 3.3 4 10 2.6 11.2-2.4 17.3 2.4 26.4-1.2-1.1-10.4 1.1-16.7 1-20.5zm-6.5-24.7c2.3-6.4 5.2-8.9 8-10.2"/>
+    <path id="path6932" fill="none" d="M307.4 239.2c3.5-1.4 7-2.4 10.6-3.6 4.3-1.2 8.5-3 13-3.6 2-.5 4.2-1 6.4-1m-36.1 42c.4-.3 1 .2 1.4.3.6.2 1.3.4 2 .3a107.4 107.4 0 014 0c1.7 0 3-.2 4.3-1m10 .6l1.6.9c.8.3 1.8.4 7.3 0 3.5.2 6.5-2.8 7.4-3.6"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-sct.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-sct.svg
new file mode 100644
index 0000000..169bfba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-sct.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-sct" viewBox="0 0 640 480">
+  <path fill="#0065bd" d="M0 0h640v480H0z"/>
+  <path stroke="#fff" stroke-width=".6" d="M0 0l5 3M0 3l5-3" transform="scale(128 160)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-wls.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-wls.svg
new file mode 100644
index 0000000..48a6420
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb-wls.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb-wls" viewBox="0 0 640 480">
+  <path fill="#00ab39" d="M0 240h640v240H0z"/>
+  <path fill="#fff" d="M0 0h640v240H0z"/>
+  <g stroke="#000" stroke-width="1.4">
+    <path fill="#d21034" d="M419 70.8h-.1zm-.1 0a693.8 693.8 0 00-111.8 75c-17 14.9-12.2 26.7-12.9 40 .6 9-1.9 17.4-7.4 22.4l-37.8 7.6-3.6-10.4c1.1-5.4 5.5-8 14.9-4.7.7-6.8-4.9-9.6-11.3-12-2.3-1.8-5-3-4.7-9-1-13.5 20.6 1 20.8 1 .2 0-.8-13.7-10.7-16.4-5.4-1.9-7.7-7.6-5.6-11.8 4.3-8.7 12.5.6 18.7 1-.2-5.7-1.8-9.7-6.7-14.2-2.6-1.7-9-2.9-9.2-5.6-.1-3.6 6-5.2 14.5-4.2-1.8-5.1-7.5-8.4-15.3-10.8l-4.6-8.1c-2.2-4-3.2-4.2 1.9-11.8 4.5-3 10.6-7.2 15.2-10.1l-5-.6c.6-5.5.7-7.4 2-16.5-5 6.7-11 5.5-16.6 8.2 0 0-15.6 2.8-20.7 9.5l-39.4-2c-8.4 1.1-15.5 3.5-16.9 11.6-19.1 2-39.1.3-53.7 18.5 10-.4 18.6-2.8 29.8-1.4 0 0 9.5.2 11.4 10.3.2.4 3.3.4 3.3.4l3.6 2.8 1.4-3.8 3.2 2.2 1-4.2 3.2 2.2.2-5 4.2 3v-6.7s15.6 0 20.4 10c.2.1-43.7 8-86.1 4.3l12.2-6c-15.4-3.2-30-6-43.6-16.7 5.1 19.4 31.7 42.1 37.2 42l-5.2-9.4 46 2c1.7 5.1 1 10.8 5 15.3 0 0-2.5 8.4 3.2 11.8.2.4 6.7-17 6.7-17s2 4.7 4 7.8c3-15 19.4-17.5 19.4-17.5l3.4 8c-5.1.8-11.5 11.2-8 17-3.5 0-9.6 10.1-7.7 15.6-2.9 2.9-10 6.7-8.3 18.8-5.6 1.2-9 11.5-7.2 22.5-8.8 8.1-6.6 23 1.2 29.1-3.2 3-5.2 5.1-5.2 8.7-3.1-1.1-6-.2-7.3 1.8-3.8-3.9-9.2-7.2-13-3.6-1-4.6-7-9.6-13.5-9a12.3 12.3 0 00-9-13s-1.5-22.6-8.3-30c-.7-4 .4-6.8 6-10.2 5.7-3 6.9-5.3 6.4-13.9 2.3-5.7 4-11.5-3-15.4.2 6.8-1.8 10-4.6 13-3.3-.4-4.4 3.4-6.6 5-3.1-4.1 6.5-10.6-.6-19.9-.4-.4-5-12-16.3-11.8 5.3 3.1 7.6 8.4 7.6 13.9a41.3 41.3 0 00-1.8 29.3c-4.7-7-7.4-20.4-11.3-22.7-3.4-.7-5-8.7-18.3-6.4 5.7 1.5 7.6 5.9 9 9.8-3.4 1.8-1.7 6.6.9 9.9-.5 7.7 4.1 12.2 11 15L85.6 237c-2.7-.3-7 10.4-8.6 10.7-2.7 1.7-7.4 6.2-2 7.5-1.6 5.7-3.1 9.2-11.7 10.4 0 0 9 5.4 16.6-3.8 8-.2 5.4-9.8 9.3-14 0-.3 2.3-1.7 5.5-10.2 1.4 7.6 9.2 30.8 26.7 42.3 15.3 16.4 28 31.9 27.8 53.7a54 54 0 0012.3-22.7 89 89 0 0130.8-3.6c-1.8 3.9-3.9 7.6-1.3 10-7.4 2.6-9 8-6 13.3-7.8 5.3-8.3 8.7-8.4 17.5-14.5 18.5-23.4 17.9-37.7 13-4.6-2.7-12-6.6-15.3-4.5-6.1-4.2-15-4.8-16.5 4.6 4.7-3.9 7.4-3.1 11.1.6-.7 1.9-1.3 3.7 1.4 4.8l-3.6 4c-6.6-1-15.6-1-17.9 8.7 3.4-2.9 11-3.5 17-.8l3.5 1.2.4 4.6s-9-1.4-11.4 13.3c8.4-9 14.4-6.7 14.4-6.7 3.3 4.8 15.3 4.1 24-3.8 12.1-6.8 15.7 3 23.5-3.4 6.5-4.8 14.2-1.6 19.5 4 6.1 2.3 12.5 4.2 17.5 0 0 0 6.2-3.9 12.3 2.4 0-7-5-10.9-11.8-11l-2-2c-6.5-1.4-13.7-.8-19.4-4a58 58 0 0114.1-27c9.3-10 16.2-14.6 28-29.9-.5 8.7 6.1 18.3 9.6 27 0 0 7-11.1 8-20.3.3 0 8.9-4.4 12.5-8.3 7.8 4.9 20.4-3.8 28.6-11 5 2 8.9 1.8 14.7 0-4.7 9.6 2.7 18.5 14.5 22.2 1 8.4 9.6 10.2 22.5 10.2.6 5 8.3 5.7 8.3 5.7-5 2.2-7.4 4.5-7.3 9.6-5 0-8.7 1.3-10 7-6.9.2-13.9.7-19.8 4-6.3-.9-14-3.5-18.9-8.6-2.5-2.1-3.2-5.2-7.6-6.4-2.8-3.3-6.2-2.6-7.3.6-2.9-2.3-13.8-3.3-15.7 7 5.2-3.7 9.7-5.1 13-.5-1.8 3.1 4.2 5 9.4 6.2 3.7.2 10.2 3.6 12.2 9.2a20 20 0 01-16.7-2.6 11 11 0 00-13-.8c-4.4-2.8-14.7 2.5-15.1 10.9 4.3-4 8.3-6 12.3-3.4-2 .4-1.3.6-1 1.8l10 5.8c-5 1.3-9.6 3.3-7.4 12.5 0 0 4-8 13-5 .2-.3 1.3 2.8 3.9.7 3.9-4.4 12.8-6.4 20.7-7.2 6.3-.7 12.6-2.6 18 1 5-2.5 10.4-4.2 16-.2 6.6 2 11.4 9.8 19.7 6.3 4.2-3 9.3-3 14.5 2.8 0-7.4-5.5-9.9-13.3-11.5l-5.4-3.2c-5-.8-10 .1-15.1-2.3a92.3 92.3 0 0057.7-42.4l12.5 4.4c3 .2 3.2 1.2 9.3 3 .2-8.9-3.7-18.1-19.8-19l-21-8c-4.6-4.8-6.6-14.9-.9-20.8 5.6-5 6.6-4.4 10.3-10.5 4.5-.4 8.7 4.2 12.8 4.2 2 5.9 13.4 11 20.6 9.3 4.5 4 13 6.2 22.5 3a18.2 18.2 0 0020.5 3c2.2 2.2 6.8 4 12 2.8.5 0 2.8 5.8 8.5 7.9-2.5 2.4-1 13 1.7 16.9a17 17 0 00-.9 12.7c-5.8 3.7-7 6.5-4.4 12.8-7.6 12.3-16.7 13.7-25.3 10l-9.3-6-9.8-9.6c-1.7-1.6-5.2-2-5.9 1.4 0 0-12.6-2.8-13.7 7.9 5.3-5.1 12.7-.6 12.7-.4s-1.8 1.4-.4 3.4c.3-.3 9.3 3.3 17.2 6.7 4.3 1.7 5.3 2.2 7.2 3.2a340.8 340.8 0 00-7.2-3.2 32.8 32.8 0 00-11-2.9c-4.4-.4-9.2-1-11.4 2.4-4.8 2-12.4 3.7-12 12.7 3.2-5.4 7.7-5.1 13.4-4.6l-.4 1.2c6.2 2.8 5-.8 10.8-1.3a44 44 0 0115.3 2.5c-4.5 1.3-10.7.7-13.6 4-.6 1-2.5.6-1.6 3.2 0 0-9-.2-11.3 12 9-5.7 15.9-5.5 16-5.5l2.9.6 11-7.3c.3 0 10.6-4.6 15.3.6 4.2 2 8.6 2.2 13-.4 8.4-3.7 16.3-4 24 1.2l7.1 4.2 3-2s8-2.2 13.8 4.9c-2.4-12.3-11.2-12.7-11.2-12.7l-2-1.8-12.4-4.9c-1.9-4.5-6.4-8-1.9-13.4 4.7-23.1 10.2-40.4 1.2-63.8 8.4 3.6 14.7 14.8 25.2 10.9 0-9.4-34.6-27.3-61-41.6C508 264 560 232.1 540 191.5l9.4-29.4c4.5 9 13.5 15.8 21.6 18.7-6.7-12.7-10.5-51.6-6.7-78.4a627 627 0 01-57.1 60c10 2.4 18.9.7 28.6-.5l-8.2 17c-26.6-15.7-57.8-4-58 16.8.9 24.2 30.8 27.7 48.1 19.2-3.4 22.1-54.2 14-54.2 14-18-6.2-35.1-5.2-54-5 3.9-12.1 25.7-22.9 42.4-18.1-23.3-26.2 3.3-58.7 35.4-68.6-35-11.6-4.9-38.3 21.3-57.4 0 0-75.3 31.7-82.2 31.6-21.4-1.6-15.6-27-7.4-40.6zm-236.4 30.4c1.8 0 3.8.2 5.5.6 3.4.9 7.5 1.3 7.5 2.4-1.6 2.6-5.5 5.7-9.3 5.6-3.8-.2-6-2.5-7.2-8.2.4-.2 1.8-.4 3.5-.4zm317 89.4c5 0 10.9 2 16.6 8.2-2.7 8-26.8 12-28.4.2-.5-3.6 4.6-8.3 11.8-8.4z"/>
+    <path fill="none" stroke-linejoin="round" d="M207.4 171.2l3.7 5.3m-.2.1s0 7.2 1.5 7.3m-3.3 3.9l3.8 6.3m-10.5 1.6c.2 0 4.7 5.2 4.7 5.2m3.9-4c0 .2 4.2 8.1 4.5 8.1m-10-2.6s1.4 9.6 2.7 9.3m-9 8.3l4.2 6.5m3.7-13.3s2.3 9.1 4.1 8.3m1.9-13.8c.1.2 4.3 6.1 5.4 5.3m-1 2.3l4 8m-10.6-1.8l3.3 9.4m-11-4.6s3 10.1 5.7 8.5m-6.8 5s.2 5.3 2.8 5.6m1.8-8.3c0 .2 2.7 3.8 2.7 3.8m5-10.1l2.1 3.5m4.9-10l3.3 4.1M206 176.7c.1 4.5 7.2-1.6 10-5.4m-13 21s7.7-5.5 13.7-13.8m-16.3 26.9c5.5-1.5 15.6-13.7 17.6-20.2m-18.7 32.3c1.5.7 20.3-13 20.8-22.9M198.8 228c0-.1 17.2-4.4 24.3-23.3M198 242.3s27.5-16.5 29-28.6M412.4 270s-1.8 14.2-16 16.4m20.5 9c.1-.2 13.6-15 10.1-19.5m21.1 5.2s-.2 10.3-8.6 17.4m25.4-14.4s.3 12.4-5 17.4m20.4-10s-6 11.7-8.1 12.9m7.9 7.8s7.8 2 10.3-3.2m-8.3 20.1s7.2 1.3 10.6-5.6m-11.4 18.7s5.9 5 9.9-1.6m-94-94.4s-.7 25.3 34.8 30.4c39.7 11 58.5 5.2 60.8 49.7-1.5 17-3.6 36-16 28.7m-117.4-85.5s5.7 10.1 12.5 9.4c9-2.6 12.3 2.9 12.3 2.9m-49-2.2s15 7.3 27.7-4.5m-26-6c1.3 17.5-20.1 27.5-28.6 25.8m29.6 41c.1 0 11.6-6.8 9.3-11.6m-32.1 1.5c.3-.4 19.3-2.2 22.8-9m-31.6-19s26.9.2 28.7 5.1m7-21s-26.2 44.9 22.2 44.9m-50-45.5s-5.6 16.7-13.6 22.4m-14.2-28.2s9.7 18.8 0 28.1M261 280.8c.1.3 3.1 26.7-3.5 34.2m-9.2-33.4s1 16.8-4 22.8 1.2 18.4 1.2 18.4m-60.5 8s3.6 6.3 8.5 4.1m-2.5-17.8s8 3.5 10.7 2.2m-2-30.4s-11.8 3.3-7.3 17.3c6.8 5.5 13.4 4.6 13.4 4.6m-29.4 37.4c-.1 0 1.4 11 9 2.7 5.3-11.2 22-42.6 25.9-53.4m7.8-5.1s-8.1-6.3-7.8 2.5c-.2 5.5 2.5 6.8 2.5 6.8.3 4 3.8 9.6 6.6 4.5 1.2-5-.8-7.2-.8-7.2m4.7-9c-7.3-.4-11.3 15.7 2.8 5.6m4.8-11s-1.8 2.5-4.7-.2c-1.5-2.6-6.8 12 2.5 12.5 1.7-4.3 6.8-5.5 6.8-5.5m4.4-13.8s-4.2 2-5.7 1.7c-5 1.1-4 12.8 2.3 12.1 2.2-2.5 4.5-6 4.5-6m-40.3-23c-.2 0-16.5 25.7 9.1 32.5m198-71s-10 8.4-.7 22c-31-.5-47.5 13.8-48.8 23.4-39.4-2.8-32.2 8.8-45 12.6-17.1-14.3-42.2-6.3-40.6 8-11.4-16.1-29-8.3-31.2-4.3-2.1 4-1.3-19.8-1.3-19.8s-11.5 5.2-19.4 14.6v-19.9c-9.6 2-18.9 2-28.8 1.8m-25.9-7.3s14.3 8 32-2.8M166 226.3s11 10 32 6.8m-25-29.7s2.4 8.1 26.3 8.6M181 184.6s9 11 21.2 9.3m-13.5-25s3.5 6 16.8 7m-9-24.5s7 7.6 15 6.3M238 89.3s3.1-3 8.3-1.5m-10.5 17.8s-9.6-.3-9-4c.8-4.4 10.2-7.5 10.2-7.5s12.5-8 14.4-10.8m-56.6 44l12.2 23.3 5.8-8.8 3 6 5-8.7 8.6 5.5-3.2-10.7 7.2-.5s-2-5.1-8.4-6.2c1.7-1.3 7.7-5.3 7.7-5.3s-3.4-4-8.8-4.1c1.8-1.9 4.2-6.5 4-6.5l-5.3-1.2s12.2 4 21.6-1.6M221 89.7c.1.1-.7 4.8-3.3 7.5m-43.7 5.3s7.5-2 13.1-.9c5.6 1.2 13.1 3.2 13.1 3.2s9-1.2 11.9-3.3m-56.8 6s-1 3.6-1.4 6c0 1.7-5.5 4-5.5 4m10.3-17.4s4.8 6 5 9.5c.1 3.4-3.6 6-3.6 6M109 141l-5-8 4.5-1.6m90.5 121c-4-5.2 3-84.2 17.7-104.8-5.1 37.2 12 75.2 16.3 75m-79-97s6.8 2.5 20.7-8.6m18.9 26.8l10 .1m300.3-62s-166.7 77.8-169.1 82c28.1-8.6 147.5-28.5 150.4-26.8-7 1.7-151.9 35-158.7 43 36.2-1.2 111.9 11.6 123.8 24C424.5 198.3 347.6 187 324 192c17.2 4.1 83.2 46.8 83.2 53.6-10-9.5-89.3-42.2-92.4-39 18.2 10.9 43.9 51.4 43.9 61.3-5.3-8.4-51.2-57.7-53.9-54.5 4.9 6.7 14.5 64.9 9.6 67.6 0-7-17.8-58-19.3-59.4-3.6 1-26.3 62-21.8 67.8-3-20.4.5-63 6-61.3-10 1.5-41.7 43.4-38.3 50 1-10.5 2.4-17.4 20.4-52.1-20 1.2-61.2 27.1-68.2 36.4 5.6-16.5 40.5-44.4 55.8-46.4m72-60.7c17.6-9.8 72-29.7 108.4-44.4m-142.6 97s12-.2 24-32.8c11.8-44.6 105.7-94.3 107.6-103.6M128 252.8s-2.8 6-6.2 7.6m19.7 1.4s-3.7 7.2-4.6 10.6m17.5-7s3 9.8.5 14.4m-36.4-40.1c-9.4 5.3 5.4 39 50.1 42.2m-7.2-18.2s-1.2 6 7.2 18c-2.4 13.4 10.2 23.9 15.2 25.6m-26-164.2l1.4-3.6 1.5 4 2.5-.1 1.6-4 1.4 4h2.4l1.5-4.4 2.3 4.2h2l1.5-5 3 3.6 1.2-.4 1-5.2 3.1 3.6 1-.5 1.4-5 2.5 3.7 1.3-.4 1.2-4.3 2.4 4m-39 6.2l18.8-.3c6 0 15.8-8.3 26.7-5.7m-84.9 46s3.1 6.8 7.4 3m-14.6 1.5s-6 16.2 1.2 20m-9.8-37.8s0 3.8 8-2m-32.5 86.7s6.3 2 5.3 6.7m-3-80.8s4 1.9 7.8-4m34.2 189.7c6.1-.4 7.5 2.4 13 2.4 6.6.2 12.9-2.4 21-4.7m53.1 15c-.2 0-3 5.8-.5 8.7m-87.5-8.2s9.8-8 15-3.1c4.9 1.7 7.6 1.4 7.6 1.4m-17.5-21.3s2.4 6.2-5.6 5.3m-2.4 9s5.1 3.2-.7 7.5m3.8 5.8s7 1 2.9 6.7M346 341.6s19 2 20 3.4c2.2-2.3 19.2-16.2-1.7-18.1a19 19 0 01-18.3 14.7zm-6.8 9.5c7.1 5.7 4.2 9.1 26.6-5.9m-36.8 13s10.5 11.4 18.2-2.4m-38.3 6.5l-14.3 7.5M269 380.3s8.7-7.4 12.7-3.5c4.1 4 21.3-3.4 21.3-3.4M275.5 348s3 6-2.8 6.7m-8.5 11.9s3 5.6-2.8 7m9.5 8.1s9 .5 5.8 7.3m78.4-8.5s-5 4.2-1.3 9m73-39s5.7 2.8-1.1 7.5m-5.7 9.9s4.3 4.5 1.4 8.2m10.6 9s5.9 1.7 5.2 6.6m77.8-11s-5 3.7-2.3 8.4M427 236.3c11.8-1.4 28.8 25 37.5 30.1m51.9-67.4s6 5.3.7 18m10.4-38.2c1.7 1.3 8.1 4.8 12.4 12.8m4.1-52.2l-8.3 22.5m17.6-23.6s-1.6 20-4 24M516 198.8c-2.7 8-26.8 12-28.4.2-.9-6 14.2-15.3 28.4-.2z"/>
+    <path stroke-linejoin="round" d="M182.3 101.3l9.3 1.7s-6.5 8.8-9.3-1.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb.svg
new file mode 100644
index 0000000..132dbed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gb.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gb" viewBox="0 0 640 480">
+  <path fill="#012169" d="M0 0h640v480H0z"/>
+  <path fill="#FFF" d="M75 0l244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0h75z"/>
+  <path fill="#C8102E" d="M424 281l216 159v40L369 281h55zm-184 20l6 35L54 480H0l240-179zM640 0v3L391 191l2-44L590 0h50zM0 0l239 176h-60L0 42V0z"/>
+  <path fill="#FFF" d="M241 0v480h160V0H241zM0 160v160h640V160H0z"/>
+  <path fill="#C8102E" d="M0 193v96h640v-96H0zM273 0v480h96V0h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gd.svg
new file mode 100644
index 0000000..f2254f3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gd.svg
@@ -0,0 +1,27 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gd" viewBox="0 0 640 480">
+  <defs>
+    <g id="c">
+      <g id="b">
+        <path id="a" fill="#fcd116" d="M0-1v1h.5" transform="rotate(18 0 -1)"/>
+        <use transform="scale(-1 1)" xlink:href="#a"/>
+      </g>
+      <use transform="rotate(72)" xlink:href="#b"/>
+      <use transform="rotate(144)" xlink:href="#b"/>
+      <use transform="rotate(216)" xlink:href="#b"/>
+      <use transform="rotate(288)" xlink:href="#b"/>
+    </g>
+  </defs>
+  <path fill="#ce1126" d="M0 0h640v480H0z"/>
+  <path fill="#007a5e" d="M67.2 67.2h505.6v345.6H67.2z"/>
+  <path fill="#fcd116" d="M67.2 67.3h505.6L67.2 412.9h505.6z"/>
+  <circle cx="319.9" cy="240.1" r="57.6" fill="#ce1126"/>
+  <use width="100%" height="100%" transform="matrix(52.8 0 0 52.8 320 240)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="-100" transform="translate(-30.3)" xlink:href="#d"/>
+  <use id="d" width="100%" height="100%" transform="matrix(31.2 0 0 31.2 320 33.6)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="100" transform="translate(30.3)" xlink:href="#d"/>
+  <path fill="#ce1126" d="M102.3 240.7a80.4 80.4 0 0033.5 33.2 111 111 0 00-11.3-45l-22.2 11.8z"/>
+  <path fill="#fcd116" d="M90.1 194.7c10.4 21.7-27.1 73.7 35.5 85.9a63.2 63.2 0 01-10.9-41.9 70 70 0 0132.5 30.8c16.4-59.5-42-55.8-57.1-74.8z"/>
+  <use width="100%" height="100%" x="-100" transform="translate(-30.3 414.6)" xlink:href="#d"/>
+  <use width="100%" height="100%" transform="matrix(31.2 0 0 31.2 320 448.2)" xlink:href="#c"/>
+  <use width="100%" height="100%" x="100" transform="translate(30.3 414.6)" xlink:href="#d"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ge.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ge.svg
new file mode 100644
index 0000000..8abdee3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ge.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ge" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="red" d="M272 0h96v480h-96z"/>
+  <path fill="red" d="M0 192h640v96H0z"/>
+  <path style="mix-blend-mode:multiply" fill="red" fill-rule="evenodd" d="M146.8 373.1c1-16.8 4-31.1 4-31.1s-9.8 1-14.8 1c-4.9 0-14.8-1-14.8-1s3 14.3 4 31.2c-16.9-1-31.2-4-31.2-4s1 7.4 1 14.8-1 14.8-1 14.8 14.3-3 31.2-4c-1 16.9-4 31.2-4 31.2s7.4-1 14.8-1 14.8 1 14.8 1-3-14.3-4-31.2c16.9 1 31.2 4 31.2 4s-1-9.8-1-14.8c0-4.9 1-14.8 1-14.8s-14.3 3-31.1 4zm368-288c1-16.8 4-31.1 4-31.1s-9.8 1-14.8 1c-4.9 0-14.8-1-14.8-1s3 14.3 4 31.1c-16.9-1-31.2-3.9-31.2-3.9s1 7.4 1 14.8-1 14.8-1 14.8 14.3-3 31.2-4c-1 16.9-4 31.2-4 31.2s7.4-1 14.8-1 14.8 1 14.8 1-3-14.3-4-31.1c16.9 1 31.2 4 31.2 4s-1-10-1-14.9 1-14.8 1-14.8-14.3 3-31.2 4zm-368 0c1-16.8 4-31.1 4-31.1s-9.8 1-14.8 1c-4.9 0-14.8-1-14.8-1s3 14.3 4 31.2c-16.9-1-31.2-4-31.2-4s1 7.4 1 14.8-1 14.8-1 14.8 14.3-3 31.2-4c-1 16.9-4 31.2-4 31.2s7.4-1 14.8-1 14.8 1 14.8 1-3-14.3-4-31.2c16.9 1 31.2 4 31.2 4s-1-9.8-1-14.8c0-4.9 1-14.8 1-14.8s-14.3 3-31.1 4zm368 288c1-16.8 4-31.1 4-31.1s-9.8 1-14.8 1c-4.9 0-14.8-1-14.8-1s3 14.3 4 31.2c-16.9-1-31.2-4-31.2-4s1 7.4 1 14.8-1 14.8-1 14.8 14.3-3 31.2-4c-1 16.9-4 31.2-4 31.2s7.4-1 14.8-1 14.8 1 14.8 1-3-14.3-4-31.2c16.9 1 31.2 4 31.2 4s-1-9.8-1-14.8c0-4.9 1-14.8 1-14.8s-14.3 3-31.2 4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gf.svg
new file mode 100644
index 0000000..e382883
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gf" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gg.svg
new file mode 100644
index 0000000..deb4af5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gg.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gg" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#e8112d" d="M256 0h128v480H256z"/>
+  <path fill="#e8112d" d="M0 176h640v128H0z"/>
+  <path id="a" fill="#f9dd16" d="M110 286.7l23.3-23.4h210v-46.6h-210L110 193.3z"/>
+  <use width="36" height="24" transform="rotate(90 320 240)" xlink:href="#a"/>
+  <use width="36" height="24" transform="rotate(-90 320 240)" xlink:href="#a"/>
+  <use width="36" height="24" transform="rotate(180 320 240)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gh.svg
new file mode 100644
index 0000000..3f97834
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gh.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gh" viewBox="0 0 640 480">
+  <path fill="#006b3f" d="M0 0h640v480H0z"/>
+  <path fill="#fcd116" d="M0 0h640v320H0z"/>
+  <path fill="#ce1126" d="M0 0h640v160H0z"/>
+  <path d="M320 160l52 160-136.1-98.9H404L268 320z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gi.svg
new file mode 100644
index 0000000..1b44fd6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gi.svg
@@ -0,0 +1,32 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gi" viewBox="0 0 640 480">
+  <path fill="#da000c" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v321.6H0z"/>
+  <g stroke="#000" transform="translate(-160) scale(1.875)">
+    <g id="a" fill="#da000c" stroke-linecap="square">
+      <path fill="#000" stroke="none" d="M196.6 116.3h64v44h-64z"/>
+      <path d="M229.8 153.9h-39l-8.7 5.7v6h47.7m-16.3-37c5.6 0 10.2 4.7 10.2 10.5v14.7h7.3v-56h-40.3v56h12.6v-14.7c0-5.6 4.5-10.5 10.2-10.5z"/>
+      <path fill="#000" stroke="none" d="M204.5 60h18.6v34h-18.6z"/>
+      <path d="M223 88.7h-16.2v-5.8h-11.9v5.8h-8v-5.8H182v10.4h41m-36.2 0h35v4.5h-35zm14-45.7V83h6v-9.7c0-3.6 2.5-6.6 6.1-6.8h.4a6.8 6.8 0 016.8 6.8V83h5.7V47.6zm-2.3-4.8v4.8h29.3v-4.8zm-3.7-9.1v9.1h35v-9.1h-5.3v4.7h-6.6v-4.7h-10v4.7h-6.5v-4.7zM182 159.6h48m31-2.8h-32.4l-9.8 4.7v7H261"/>
+      <path stroke-linecap="butt" d="M218.8 161.5H262"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 512 0)" xlink:href="#a"/>
+    <g fill="#f8d80e">
+      <g stroke-linecap="round">
+        <path stroke-width=".8" d="M273.3 150c-2.7 1-5 2.4-7.5 3.8a72.4 72.4 0 00-8.9 6c-1 .7-2 1.4-2.7 2.4-1 .8-2 2-1.8 3.5 0 .6.8-.8 1.4-.9a4.4 4.4 0 013.1-.4c1.3-1.4 3-2.3 4.4-3.4a77.4 77.4 0 0113-7.6l-1-3.4z"/>
+        <path d="M260.4 157.4v3.9m2.4-5.6v3.9m2.4-5.4v3.8m2.5-5.3v4"/>
+        <path stroke-width=".8" d="M238.9 150.2l-1.2 3.3a86.6 86.6 0 0115.8 8c1.7 1.2 3.5 2.3 4.8 3.9.3.8-.5 1.5-1.3 1.2-.7-.2-1.5-.5-2.2 0-1.1.5-2.1 2.2-.5 2.7 2.4 1.6 6.1.9 7.2-1.8.6-1.4.7-3.2-.5-4.4-2-2.3-4.8-4-7.4-5.7a89.2 89.2 0 00-14.7-7.2z"/>
+        <path d="M254 158l-.3 3.4m3.1-1.7l-.8 3.3m3.8-1l-1.8 2.6m2.7 3.6l-2.6-1.4m3.4-1.4l-3 .3m-.8 4l-.2-2.6m-1-.3l-2.4 1.8m-9.4-15.7v3.1m6.3.3v3.5m-3.2-5.2v3.3"/>
+      </g>
+      <path d="M235.8 227.6v8h5v-4h6.9v4h5.4v-8zm0 11v8H253v-8h-5.4v4h-6.9v-4z"/>
+      <path d="M253 193.7h5v58h-5z"/>
+      <path d="M253 198.7h5v50h-5zm2.6-19.3l10.6 6.2-10.6 6.2-10.7-6.2zm-14.3 4h-2.7v4.4h2.7l14.3 8.3 14.2-8.3h2.8v-4.4h-2.8l-14.2-8.3z"/>
+      <path d="M255.3 164.3a5 5 0 00-4 5.1v11.2a5 5 0 004.6 4.6 4.9 4.9 0 004.8-2.8l-1.7-1a2.9 2.9 0 01-3 1.8c-1.6 0-2.9-1.6-2.7-3.1v-11.2a2.9 2.9 0 013-2.6c.6-.2 1.5.7 1.9 0 .6-.9-.4-1.5-1-2h-1.9zm5.8 3.9a5 5 0 01-1.9 1.6v7.5l2 1.1v-10.2z"/>
+    </g>
+    <g fill="#da000c">
+      <path fill="#000" stroke="none" d="M240.8 38.4h29.3v53.2h-29.3z"/>
+      <path d="M238.8 38.4v44.5h9.3V69.7c0-3 2-7.3 7.9-7.3s8 4.3 8 7.3V83h9.2V38.4zm15.8 5h2.8v15.2h-2.8zm-8.3 3h3v11.1h-3zm16.5 0h2.9v11.1h-3zM235.6 32v6.3h40.8V32zm-3.8-7.4V32h48.5v-7.4h-6.1v4h-7v-4h-7.8v4h-6.8v-4h-7.9v4H238v-4zm-9 73.2v4.6h66.5v-4.6z"/>
+      <path d="M220 82.9v15h72v-15h-6.8v5.8H276v-5.8h-12.2v5.8H248v-5.8h-12.2v5.8h-9v-5.8z"/>
+      <path stroke-linejoin="round" d="M228.7 102.4v54.4h12.8v-20.4c0-9.5 6.4-14 14.5-14 7.8 0 14.5 4.5 14.5 14v20.4h12.8v-54.4z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gl.svg
new file mode 100644
index 0000000..20f5c5e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gl.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gl" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#d00c33" d="M0 240h640v240H0zm80 0a160 160 0 10320 0 160 160 0 00-320 0"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gm.svg
new file mode 100644
index 0000000..76d03af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gm.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gm" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="gm-a">
+      <path fill-opacity=".7" d="M0-48h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#gm-a)" transform="translate(0 48)">
+    <path fill="red" d="M0-128h640V85.3H0z"/>
+    <path fill="#fff" d="M0 85.3h640V121H0z"/>
+    <path fill="#009" d="M0 120.9h640V263H0z"/>
+    <path fill="#fff" d="M0 263.1h640v35.6H0z"/>
+    <path fill="#090" d="M0 298.7h640V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gn.svg
new file mode 100644
index 0000000..7841e8d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gn.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gn" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="red" d="M0 0h213.3v480H0z"/>
+    <path fill="#ff0" d="M213.3 0h213.4v480H213.3z"/>
+    <path fill="#090" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gp.svg
new file mode 100644
index 0000000..24a8260
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gp.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gp" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gq.svg
new file mode 100644
index 0000000..4cec1a5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gq.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gq" viewBox="0 0 640 480">
+  <path fill="#e32118" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v320H0z"/>
+  <path fill="#3e9a00" d="M0 0h640v160H0z"/>
+  <path fill="#0073ce" d="M0 0v480l180-240z"/>
+  <g stroke="#000">
+    <path fill="#fff" d="M281.6 191.8h76.6V272c0 27-35.2 6.2-38.2 20.6-5.2-14.8-38.2 6.6-38.2-22.2l-.2-78.6z"/>
+    <path fill="#73452b" stroke-width=".2" d="M325.4 279.8s-1 1-2.8.2c-1.8-.8-2-51.4-2-51.4 4-4.4 7.2-5.8 7.2-5.8l2.4 2c-9 4.6-8.2 11.2-7.4 22.6.2 4.2.2 9.6 1.2 14.8 1.4 6.6 4.2 12.2 4.4 16.4.2 2.6-3 1.2-3 1.2z"/>
+    <path fill="#73452b" stroke-width=".2" d="M319.2 221.6h3.6c-3 29-.4 46.2-.4 54.6 0 2.8 1.6 3.8 1.4 3.8-3.6 4-5.4-.2-5.4-.2z"/>
+    <path fill="#a36629" stroke-width=".2" d="M313.6 279.8c-3.4 1.6-3.8-1.6-3.6-2 7.4-15 10.6-48 3.8-51.6l.4-3.2c2.6.8 5 4.2 5 4.2 1 37 0 52.2-.6 52.8-3.6 3.8-5-.6-5.2-1"/>
+    <path fill="none" stroke-width=".2" d="M313.4 279.2c-.6-3.2 5.2-11.4 4.8-20m5 7c1.8 5 2.6 9.4 2.2 13.6"/>
+    <path fill="#009a3b" stroke-width=".2" d="M331 208c1.2-1.4 1.2-1.4 3.4-1.4.4-3 5.4-3 5.8.8 4-.8 4.8 1.6 3.2 4 3.8-1 7.2 0 6.2 4.4 6.8 1.8 4.2 6.6 1.2 7.6-.4 3-3.2 4-7 2.8-4.8 3.4-7.6 2.2-9.8-1.2-5.4.8-5.8-.4-8.2-3.4-4.2 1.8-5 1.8-8.6-.4-.2 2.8-1.2 2-3 1.8.2 3.6-1.2 5.2-4.4 4 2.4 5-3.8 7.2-6.8 3-2.8.2-3-.6-4.4-1.6-1.2 4-5.6 3.4-6.4 1.2-5.6-.8-5-3.8-.4-4 .4-3.2 3.2-2.6 5-2.2.2-2 1.4-1.6 2.4-1.2-.6-1.4-.2-2.2 1.6-2.6-2.6-3.4-1-4.6 1.6-5.8-1.4-3.2 1-3 2.8-3.2-.2-3.4.8-4 4.4-4.4-.4-1.2.2-2.2 2.2-2.2-1.2-3.4.4-4.2 4-3.6.6-5 11.2-2.6 10.4 4.2 3 .4 4 1 4.8 3.4z"/>
+    <path fill="none" stroke-width=".2" d="M309.6 206.2c.8.4 1.8 0 2 2.2 1.6-2.8 3.6-1.2 3.6 2m11-5.8c-.8 1.2-3.8 1.2-3.4 4.4-1-1.4-3-1.8-3.8-.4m12-.6c0 .8-.2 3.2-1 4.4m13.4-1c.2.2-2.8 0-4.2 1m11.6 11c-.8-.4-2.4-1.4-3.6.2 0-.8 0-3-2.2-3m-1.2 5.6c0-2-.4-2.6-.8-3.2m-5.8.4c-1.6-1.2-3.2.6-3.2 1.6m-8.4-3.4c0-.8-.6-2.4.8-3M302.8 230c.4-2 1.8-2 1.6-3-.2-1.6-2-3-4.2-.8m4.2.8c1.2-.4 2.4-.2 2.8.4m-6.2-7.8c.8-.8 2.8-.6 4 0m0-4.8c1 0 2.8-.4 3.4 1.4 2.2-3.4 3.8-3 4.2-2.2m4-.4c1.6-.6 4.4 1 6 3.8.8-2.2 2-1.8 3.2-2m7.6 2c2.6-1.2 4.2 1.2 5 2.2 1.2-1.6 2.2-1.6 3.4-1.6m-32.6 4.2c.6-1 2-1.2 3-.6-.2-1.8 1-2.6 1.8-2.2"/>
+    <path fill="gold" stroke-width=".7" d="M317.4 180.5l-4.4.2-2.2 4-2.4-3.8-4.4.2 2-4-2.4-3.7 4.6-.2 2-4 2.4 3.8 4.4-.2-2 4zm-18.8 1.5l-4.4 1-1.2 4.3-3.2-3.2-4.2 1 1.2-4.2-3-3.2 4.2-1.1 1.2-4.3 3.2 3.2 4.4-1-1.4 4.3zm-18.2 3.7l-4 2-.2 4.4-3.8-2.4-4 2 .4-4.5-3.8-2.4 4-2 .4-4.5 3.6 2.5 4-2-.2 4.4zm42.8-5.2l4.4.2 2 4 2.4-3.8 4.4.2-2-4 2.4-3.7-4.4-.2-2.2-4-2.4 3.8-4.4-.2 2 4zM342 182l4.2 1 1.2 4.3 3.2-3.2 4.2 1-1.2-4.2 3.2-3.2-4.4-1.1-1.2-4.3-3.2 3.2-4.2-1 1.2 4.3zm18 3.7l4 2 .2 4.4 3.8-2.4 4 2-.2-4.5 3.6-2.4-4-2-.2-4.5-3.8 2.5-4-2 .4 4.4z"/>
+    <g fill="#fff" stroke-width=".7">
+      <path d="M365.4 270.4l5 7.2 4.6-6.8-3.2-5.8zm-31.8 21l.4 7.2s2 0 3.8-.6c1.6-.6 3-1.8 3-1.8l-.2-3.8zm-26.8 0l-.4 7s-1.8 0-3.6-.4c-1.6-.4-3-1.4-3-1.4l-2-4.8zm-32.2-21l-5.2 7.2-5.6-9.2 4.2-4.4z"/>
+      <path d="M299.6 305.8c0 6.8 41.2 6.8 41.2 0v-9.6c0 5-41.2 4-41.2 0z"/>
+      <path d="M262.8 283.6c3.6 18.4 36.8 18.8 36.8 18.8v-6.2c-.8-2.4.6-3.2 6-4 2.2-.2 1.2-3.4 1.2-3.4s-14.4 2.6-24.6-1.4c-13.8-5.6-15.8-16.4-15.8-16.4s-1 8.4-3.6 12.6zm114.6 0c-3.4 18.4-36.6 18.8-36.6 18.8v-6.2c.6-2.4-.8-3.2-6.2-4-2.2-.2-1-3.4-1-3.4s14.4 2.6 24.6-1.4c13.6-5.6 15.2-16.4 15.2-16.4s1.4 8.4 4 12.6z"/>
+      <path d="M265.4 276.6c-9.2-5-2-10.2-1.2-25 1.4 9 11.6 12.8 10.4 18.6-4.2.2-6.2-6.2-8.2.8l-1 5.6zm109.4 0c9.2-5.2 1.6-10.2.8-25-1.4 9-11.4 12.8-10.2 18.6 4 .2 6-6.2 8 .8l1.4 5.4z"/>
+    </g>
+    <path stroke="none" d="M271 283.4l1 .8-2.2 2.4c-1 1-1.1 1.6-.5 2.2.7.7 1.3.4 2-.4l2.5-2.6.8.8-2.4 2.8c-1.3 1.5-2.5 1.2-3.6.2-.8-.8-1.4-2 0-3.5l2.4-2.7zm4 3.4l1 .6-.2 4.8 2.2-3.4 1 .6-3.2 5.2-1.2-.6.2-4.8-2.2 3.4-1-.6zm1.8 8.4l2.8-5.6 1 .6-2.6 5.4zm4.4-4.8l-2.2 5.8 2.2.8c2 .7 3-.2 3.6-1.9.7-1.8.4-3-1.6-3.9l-2-.8zm.8 1.4c2 .7 2.2 1.5 1.6 3-.6 1.3-1 1.8-3 .8l1.4-3.8zm5.8.8l-3.6 5.4 1.4.4.8-1.4 2.4.6.2 1.4 1.4.2-1.4-6.4-1.2-.2zm.4 1.4l.4 2.4-1.6-.2 1.2-2.2zm3-.9l-.2 6.2h2.3c2.2.1 2.8-1 2.9-3 0-1.8-.7-3-2.9-3l-2.1-.2zm1.2 1c2.2.1 2.5.8 2.5 2.3-.1 1.5-.4 2.1-2.6 1.8v-4zm19.8 7.7v6.4h1.4v-2.4s1.2 0 2.2-.2c.7-.2 1.3-.7 1.3-2 0-1.2-.7-1.8-1.9-1.8h-3zm1.4 1h1.4c1.1 0 1 1.8 0 1.8h-1.4v-1.8zm5.8-1l-2.6 6.4h1.4l.6-1.6h2.6l.6 1.6h1.4l-2.6-6.4h-1.4zm.6 1.4l1 2.4h-1.8l.8-2.4zm3.4 3.8l3.4-4.2h-3v-1h4.8v1L325 307h3.6v1.2h-5.2zm20.2-12.4l1.2-.2.6 3.6c.2 1.3-.4 2.1-1.3 2.5-1 .4-2.4 0-2.5-1.7l1-.2c.2 1 .6 1.1 1 1 .5-.2.7-.8.6-1.4zm2-.4l1.1-.2.6 3c.2 1.3.6 1.8 1.5 1.7 1-.2 1.1-.8.9-2l-.7-3.1 1.2-.2.8 3.3c.4 2-.6 2.7-2 3-1.1.2-2.4 0-2.8-2zm6.2 2.8l1-.4c.5.9 1.2.8 1.8.6.8-.4 1-1.1.5-1.4-.6-.3-2 .2-2.7 0-.9-.4-1.3-1-1.2-1.7 0-1 .8-1.4 1.7-1.7 1-.3 2-.2 2.7 1l-1.2.4c-.4-.7-1-.6-1.4-.4-.4.2-1 .5-.6 1 .2.5 1.7.2 2.5.2s1.4.6 1.5 1.3c.2 1.1-.2 1.7-1.5 2.2-1.5.6-2.9 0-3.1-1.1zm5.4-5l-1.6.8-.4-1 4.4-1.8.4.8-1.6.8 1.8 4.4-1 .6zm2.6-2.2l1-.6 2.8 5.2-1 .6zm6.8.4l1.2-.4a2.4 2.4 0 01-2.4 3.3c-3 0-3.4-3.4-2.9-4.5.8-1.9 3-1.8 4-.8l-1 .8c-.6-.8-2-.3-2 .4a2.7 2.7 0 001.4 3c1 .4 2.4-.8 1.7-1.8zm-.6-4.2l1-.8 3.6 4.8-1 .8zm3.8-3l-1 .8 2.2 6 1-1-.6-1.2 1.8-1.6 1.2.6 1-.8-5.6-2.8zm.4 1.4l2 1-1.2 1.2-.8-2.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gr.svg
new file mode 100644
index 0000000..581af28
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gr.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gr" viewBox="0 0 640 480">
+  <path fill="#005bae" fill-rule="evenodd" stroke-width="6.7" d="M0 0h640v53.3H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width="6.7" d="M0 53.3h640v53.4H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width="6.7" d="M0 106.7h640V160H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width="6.7" d="M0 160h640v53.3H0z"/>
+  <path fill="#005bae" stroke-width=".9" d="M0 0h266.7v266.7H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width="6.7" d="M0 213.3h640v53.4H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width="6.7" d="M0 266.7h640V320H0z"/>
+  <path fill="#005bae" fill-rule="evenodd" stroke-width="6.7" d="M0 320h640v53.3H0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke-width="6.7" d="M0 373.3h640v53.4H0z"/>
+  <g fill="#fff" fill-rule="evenodd" stroke-width="1.3">
+    <path d="M20 0h10v50H20z" transform="scale(5.33333)"/>
+    <path d="M0 20h50v10H0z" transform="scale(5.33333)"/>
+  </g>
+  <path fill="#005bae" stroke-width=".6" d="M0 426.7h640V480H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gs.svg
new file mode 100644
index 0000000..6833555
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gs.svg
@@ -0,0 +1,201 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gs" viewBox="0 0 640 480">
+  <defs>
+    <linearGradient id="b">
+      <stop offset="0" stop-color="#d5dfff"/>
+      <stop offset="1" stop-color="#fff"/>
+    </linearGradient>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#474747"/>
+      <stop offset="1" stop-color="#f50"/>
+    </linearGradient>
+    <linearGradient id="c" x1="109.3" x2="110.9" y1="218.5" y2="173.4" gradientTransform="matrix(1.5 0 0 .65 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="d" x1="125.9" x2="126" y1="316.4" y2="337.2" gradientTransform="matrix(1.23 0 0 .8 40.5 0)" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#b50000"/>
+      <stop offset="1" stop-color="#ffc500"/>
+    </linearGradient>
+    <linearGradient id="e" x1="407.9" x2="456.4" y1="149.4" y2="147.3" gradientTransform="matrix(.56 0 0 1.76 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="f" x1="215.8" x2="229" y1="103" y2="103" gradientTransform="matrix(.74 0 0 1.33 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="g" x1="117.6" x2="78.2" y1="1040.4" y2="1003.7" gradientTransform="matrix(2.56 0 0 .38 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="h" x1="264.7" x2="255" y1="246" y2="226.4" gradientTransform="matrix(.9 0 0 1.1 40.5 0)" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+  </defs>
+  <path fill="#006" d="M0 0h640v480H0z"/>
+  <g stroke-width="1pt">
+    <path fill="#fff" d="M0 0v33l403.2 261.7H454v-33L50.7 0H0zm454 0v33L50.7 294.6H0v-33L403.2 0H454z"/>
+    <path fill="#fff" d="M189.2 0v294.7h75.6V0h-75.6zM0 98.2v98.3h454V98.1H0z"/>
+    <path fill="#c00" d="M0 117.9v59h454v-59H0zM204.3 0v294.7h45.4V0h-45.4zM0 294.7l151.3-98.2h33.9L33.8 294.6H0zM0 0l151.3 98.2h-33.8L0 22V0zm268.8 98.2L420.1 0H454L302.6 98.2h-33.8zM454 294.7l-151.3-98.2h33.8L454 272.6v22z"/>
+  </g>
+  <path fill="#6a4c2d" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M463.8 350s-3 7.5-4.6 7.5c-1.6 0-7.6-3.2-7.6-3.2s-4.3 7-6.6 7.4c-2.2.4-8.2-1-8.2-1s-5.8 0-6-.9c-.2-.8.3-2.4.3-2.4s-8.3 6.5-10.1 6.1c-1.9-.4-8-8.2-8-8.2l-1 4.1-11.8-.4-10.3-6.6s-5.7 9.5-6 9.3c-.1-.2-10 2.2-10 2.2l-.6-1.8-6.6-4s5.1-7.1 5.1-7.3c0-.2-2.4-1-2.4-1l-3.7 3-7.6 5-7.7-3.5 3.3-6.2.4-4.5 6-9 73-71 36 66.4-5.3 20z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M515.6 354.3l19-.7-8-4 72.3-2.8-10.2-3.9-9-12.2-37.6-2.9s-2.8-2.1-7.4-1c-.2-3-3.7-6.8-3.7-6.8l-23-1.7-14.5 9.8 9.7 25 12.4 1.1z"/>
+  <path fill="url(#c)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M121.3 150.8l2.2-7.6s4-6.6 4-9.4c0-3 2.8-6.4 2.8-6.4s9-2.6 10.8 2.9c9.6-14.5 20.8-.7 20.8-.7l3.1-3.6 6.4-7.8s9 8.4 9 9.9 1.6.4 1.6.4l9.8-.8s4.7 3.7 3.7 10.6c3.4 2 6.6 14 6.6 14l-80.8-1.5z" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="#656263" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M515.5 218.7c1.4-.9 6-2.3 5.5-9-.6-6.7-6.4-7.5-9.6-7.3-3.3.3-6.2 3-6.2 3l-10.7-6.8s5.4-33.8 11-35.9c5.5-3.9 6.4-5.5 6.4-6.4s-2-3.2-2-3.2L475 149l-33 3.9s-2.6 3.9-2.2 5.5.4 3.2 6.3 7.8c6.6 5 11 33.9 11 33.9s-9.2 4.6-9.8 4c-.5-.6-3.3-1.1-4.7-.9-1.5.2-6.3 2.7-6.3 9 0 6.4 4.8 10 4.8 10s31.6-3.6 36.3 5.1c4.5-10.5 34.5-6.8 38.1-8.6z"/>
+  <path fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M549.5 183.6s.4-3.7 3-5.4c2.6-1.8 20-2.6 24.3 0s5.7 15.5 5.7 15.5 2.6 4.6 2.8 7.9l.5 5.6s14 18.1 14.2 34.6c1.6 11.1 1.2 41-3.2 52.4-.1 14.1-6 23.4-6 23.4s1.3 2.4 1.2 5c-.2 2.7-1.6 5.1-1.6 5.1l20.4 10.1-7.5-2.8 7.5 6.3-8.5-4 5 5-12.4-5.5s5.8 5.4 5.4 5.2l-9.2-4.3 5.4 5.6c-.2-.3-8-3.5-8-3.5l.3 3s-6.3-.4-6.3-5.1a23 23 0 01-5.2-4.2l-14.5-2.5-16.4-49 3.8-83 1-4.2-1.7-11.2z"/>
+  <path fill="#fb0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M538.5 448.8s-8.4-17.8-12.6-18c-3.8-7.2 13.2-66.2 46-69.5 18 1.4 1.4 20.7-10.4 14.8 1.5 5.2 7.4 12.6 7.4 12.6s-23.5 10.1-30.4 60zm-112.7 2.5s7-20.1 11.2-20.4c4.2-.2-11.2-67-44.8-67.6-18.1 1.5-1.5 21 10.4 15-1.4 5.2-7.4 12.6-7.4 12.6s23.6 10.2 30.6 60.4z"/>
+  <path fill="#00713d" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M456.6 325.5c-.1-.1-8.4 2.6-3 11.6.4-3.5 4-5.6 4-5.6s-5.6 6.7.4 12.4c.7-5.3 4.1-7 4.1-7s-4.2 12.3.1 14.8c.5-4.9 3.7-7 3.7-7s-3.8 11-.4 13.5c.4-4.2 3.2-6 3.2-6s-1.7 11.4 2.7 12.2c.1-4 3.4-8 3.4-8s-1.5 9.4 5.5 9.8c0-3.5 1.3-7.6 1.3-7.6s3.2 10 7.8 8.3v-8.4s2.9 9.5 8.4 7.7c-.8-2.7.3-5.8.3-5.8s3 5.9 8.2 4c.9-1.8-.2-5.3-.2-5.3s7.6 8 10 3.2c2.3-4.8-6.2-6.4-6.2-6.4h5.8s-1.9-4.9-9.6-6c2.6-1.1 5.4-.3 5.4-.3s-1.6-6-9.6-6.7c3.1-1 6.5-.3 6.5-.3s-1-5.7-9.8-7.4c1.4-1.5 5.1-1 5.1-1s-3.5-5.4-7.4-5.1-39.8-3.6-39.7-3.6z"/>
+  <path fill="none" stroke="#3ec26d" stroke-linecap="round" stroke-width="1.1" d="M491.9 354.7s3.1 1.6 3 3m-1.1-5.5s4 2.9 4 5m-.5-6.4s3.2 2 3.4 5.2m2-4s1.6 3.6 1 4.2m2.3-2.3c.2 2.8-.3 3-.3 3m-39.6-20.4s3.8 2.5 3.5 5.9m-3.7-3s1.7 1.8 1.3 2.9m3.3-5.7s2.6 3.5 1.7 6m2.6-3.7s1.2 2.2.1 3.4m2-2.4s1.3 2.2.1 3m-1.7 4.2s3.6.8 4 3.5m-1.9-5.9s3.7.3 4.1 4.2m.9-5.6s2.5 4.3 2 5.7m2.7-5.3s1 4.2.3 5.5m2.8-3.8v4.7m-4.7-11.2s2.4.9 2.2 3.1m0-5.2s3 1.7 2.7 5m.8-6.4s2.6 3 1.6 6.5m2.9-5.8s-1 3.8-.6 5.4m3.3-2.8s-1.6 1.3-.7 3m-14 11.8s.6 3 0 3.4m-3.7-5s1.9 3.2 1.2 4.8m-5.2-5s2.1 2.4 2 4.3m-5.2-3.8s2 1.8 1.8 2.9m-3.5-.1s1.9 2 1.8 2.3"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M430.9 222.2l26.7-.5s17.7 0 19.6 5.8c3.4-7.7 18.6-7.2 18.6-7.2l27.7-1 .5 67a71.5 71.5 0 01-44.9 52 68.6 68.6 0 01-45.3-52.6l-3-63.5z"/>
+  <path fill="#006b00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M440.4 222l39 103.8 35.2-106.1c-11 .7-34.4-1.7-37.3 8.3-4.5-9-29.1-5.4-36.9-6z"/>
+  <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-width=".6" d="M467 278.2c1.4.8 1.4-28.2 3.4-29.1l1.5-6c-1.7-3-9.3-2.8-12-.3a74.5 74.5 0 001.8 5.4c3.8 6.2 3 30.6 5.2 30z"/>
+  <path fill="#cdad56" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M456.5 54.3s2.8-3.1 2.9-3.9c.1-.7 12.5-1.2 19.9-15 4.1-7.2 0-3 0-3L479 29s5.1-4.9 3.3-7.5c-1.9-2.6-1.3 3.4-4.3 3.3-3-.2-1.4-6.5-1.4-6.5s-.2-.8-1-1.2c-1.3.2-1 2.4-2 2.7-1.2.2-2.2-5.3-2.2-5.3s-1.9-2.5-3.5 5.4c.9 8.4 6.2 6.7 6.2 12.2 0 5.5-4.7 9.8-6 10-1.5 0-1-4.7-1-4.7s-.7-2.3-1.2-2.3 2.7-.5 2.2-6.7c-1-7.5-2 1.7-4 1.4s-.5-7 .3-7.7-.9-3.8-5.3 4.2c-.4 3.8-.9-1-1.7-.8-1.5 3.1-1.3 5.4.9 8.3 3 2.8 5 5.7 5 7.2-.2 1.5-1.8 4.9-4 4.9s0-4.1 0-5.5c-.2-1.4-4-6.4-4-6.4s-2.6-4.2-2.3-4.4c.3 0-.3-.7-1.5 3.7s-2.8-3-2.8-3-1.7 5.5 2 8.7c-2.8-.4-3 .8-3 .8 0 1.5 3.8 2.1 4.3 4.7s-4 4.2-4 4.2 1.9 2.6 7.1-2.5c.1 3.2-2 5.5-2 5.5 1.8.8 3.1.7 3.4 2.7z"/>
+  <path fill="#cdad56" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".9" d="M439.3 54.3s-2.3-3.5-2.4-4.1c-.1-.7-11.5.8-17-13-3.4-6.7 0-2.8 0-2.8l.3-3.2s-3.7-4.6-2.1-7c1.6-2.3 1 3.1 3 3.1 2.5 0 1.1-5.9 1.1-5.9s.2-.7 1-1c1 .1 1.5 3.5 2.4 3.8 1 .2 3-4 3.6-5 .9 0 .8-3.5 2.2 3.7-.7 7.6-7 6.1-7 11.2 0 5 4 8.8 5.2 9 1.1 0 .7-4.3.7-4.3s.6-2 1-2c.5 0-3.6.8-3.2-5 1-5.2 3 .4 4.8 0 1.7-.3-.2-5.5.3-6.4 0-.8 2.6-4.2 3.5 3.4.4 3.6 2.3-3 3-2.8 1.3 2.9-.5 6.7-2.3 9.3-2.7 2.6-4 5.5-3.8 6.8.1 1.4.7 3 2.6 3 2 0 .7-2.3.8-3.5.1-1.3 3.3-5.3 3.3-5.3.6-1 .1-3 .8-3.8 1 0 1.4-1.4 2.5 2.6 1 4 2.3-2.6 2.3-2.6s1.5 4.9-1.7 7.8c2.5-.3 2.7.7 2.7.7 0 1.4-1.2 2-1.6 4.3a4 4 0 001.3 3.8s-1.6 2.4-6.1-2.3a7.8 7.8 0 001.7 5c-1.5.7-2.7.7-2.9 2.5z"/>
+  <path fill="#ffc900" fill-rule="evenodd" d="M508 237.4c-2.3-2-2.5-.2-3.7-.7-.5-.2-1-.8-1.5-1.2-.4-.5-.9-.7-1.5-.9l-.6 1.9c-.2.6.6 1.7.6 2.6-.2 1.4-.8 2.5-2.5 3 .5-1 .8-1 .6-2.2 0-.6-1.7-1.7-1.5-2.3.3-.9.8-2 .4-2.9-.7.5-1.6.3-2.4.6-.6.2-.6 1.4-1.4 1.8-1 .4-2.8.2-4.4-.7 1-.7 1.8-.2 2.7-1 .5-.3.5-1.9 1-2.3s1.6-.7 2.1-1c-.4-.6-.4-1.4-.8-1.9s-2.4-.4-2.8-.9c-.9-1-.7-2.3-1.6-3.3 2.2.9 2 2 2.5 1.9a4 4 0 012.7-.4c.5.2 1.6 1.6 2.2 1.9l.7-2c.2-.7-1-1.8-.7-2.4.4-1.3 1.4-2.4 1.9-3.6l.5 3.4c0 .6 1.2 1 1.3 1.5 0 .6-.6 2-.5 2.6l2.2-.1c.7-.2 1-1.7 1.7-1.8a8.4 8.4 0 013.6 0c-1 1-1.7 1-2.3 1.7-.5.4.1 1.6-1.3 2.5-.5.3-1.9 0-2.4.3l1.3 1.5s2.4.7 2.9 1.2c.9 1 1.3 2.2 1 3.3zm-59.8 1c2.3-2 2.6-.2 3.7-.7.6-.2 1-.7 1.5-1.2.4-.4 1-.6 1.5-.9l.6 2s-.6 1.6-.5 2.5c.1 1.4.7 2.6 2.4 3-.4-1-.7-1-.6-2.2 0-.6 1.8-1.7 1.6-2.2-.3-1-.9-2-.5-3 .8.6 1.7.3 2.4.6.6.3.6 1.4 1.5 1.8.9.4 2.8.2 4.3-.7-1-.7-1.7-.2-2.7-1-.5-.3-.5-1.9-1-2.2-.4-.4-1.6-.8-2-1.2.4-.5.3-1.2.8-1.7s2.3-.4 2.8-1c.9-1 .7-2.2 1.6-3.2-2.3.8-2 1.9-2.5 1.8-1.1-.5-2.2-.6-2.7-.4-.6.3-1.7 1.7-2.2 1.9l-.8-2c-.2-.7 1-1.8.8-2.4-.4-1.2-1.5-2.4-2-3.6 0 1.2-.3 2.2-.4 3.4-.1.6-1.3 1-1.4 1.5 0 .6.7 2 .6 2.7-.7-.2-1.6 0-2.3-.2-.6-.1-1-1.6-1.7-1.8a8.3 8.3 0 00-3.5.1c1 .9 1.7.8 2.3 1.7.5.3-.2 1.5 1.2 2.4.5.3 2 0 2.4.3l-1.3 1.5c-.4.5-2.4.7-2.8 1.2-1 1-1.4 2.2-1.1 3.3z"/>
+  <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-linejoin="round" stroke-width=".6" d="M506 244.1c-2.1 1.7-15.8 5.1-15.9 17-.1 11.8 2.4 14.5-.1 14.8-5 0-5.7-13.2-5.5-19 .1-5.9.3-5 .3-5s3.3 1 3 3.8c-.2 2.8 3.4-7 2.2-9.8 2.2 2.3 5.2 1.4 5.2 1.2 0-.1-1.7-2-2.4-3.3-.7-1.3 2.5.8 2.5.8s.1-2.3-2.7-2.1c-3.6 0 .6-1.2.6-1.2s2.1 2 3.5-.2a12 12 0 00-3.8-2.5s-2-3.8-4.6-4.5c-3.1-.8-2.7 1.3-6.2 1-.7 1.4-.7 1.5.7 2-2.4 1.6-1.1 5-1.1 5s3.8-1.7 3.6 1c-.1 2.7-2.2 2.2-3.6.6-1.3-.8-1.7.7-1.7.7l2 2.1s-3.9-.1-4.8 2.4c2-.1 3.2.5 3.2.5s-4.3 2-4.8 3c-.4 1-.5-1.2-.7-1.2l-4.2-1.5-1.4 6.5s2.8 2.8 4.4 1.9c1.5-1 4.3-3.6 6-2.9-5 3.8-9.8 9.2-12.5 10-.7-.7-3.1-3-4-1.9-1 1.2-.4 2.7.9 2.6 1.3-.2-4 1.2-3 3.4 1.2 2.3 1 2.1 2 1.5 1-.6-.8-.7 2.8-1.8 3.7-1 3.5-2 3.5-2s-.7 1.6-2.6 2c-2 .5-3.5.5-3.1 1 .4.7 1.2 1.7 1 2.3-.3.6 4-3.1 5.2-.1 3-.2 4.9-3.8 3.5-5.9.1 2.3 1.5 3 .7 4s6.6-3.4 3-6c1 2.2 1 4 1 4s1.8-.2 2.2-.8c.4-.6-.9 1.7-.3 2.1.6.5 3.2 3 2 4.8-.6-1-.7-2.7-1.6-2.5-.8.1-4.3 2.7-6.5 2.8s2.6 7.8 2.6 7.8-3.3-.4-3.7-.1c-.4.3-2.5-2.7-3-1-.6 2.3.8 1.4.8 1.4s-1.9-.9-2.8.2c-1 1-2 2-1.3 2.5s3.8.5 4.2.3-3.5.3-3.8.8c-.3.4-.8 2 0 2.7s3-.3 3.1-.8c.2-.4.3 1.7.3 1.7s3.6.3 3.6-3.5.3 2.7.3 2.7 3.7.6 3.8-3.1.4 2.5.4 2.5 2.4-.7 2.4-1.3c0-.6-.1 7.5-1.8 9.7-2.7-1.8-4.4 1.2-4.4 1.2s.2 4.3-.1 5.4c-.3 1 1.8-.6 2-1 .1-.5 2.6-1.7 2.8-2l.8-1.8s-.5 2.1-1.5 2.4-2 1.3-1.6 2.2c.5 1 2 1.5 2.6 2.4.5 1 2.5-5.2 2.5-5.2l.1 1.3s2.6-.6 2.9-1.8c.2-1.2-2.7-2.2-.3-4.2 2.4-1.9 0 1.8 0 1.8s.8 2.9 1.4 2.9 2-5.4.5-6.7c-1.4-1.4 2.1 1.6 2.1 1.6s2-5.5-.1-6.3l-3.1-1s1.1-1.5.6-1.7 3 3.3 3.5 2.4 1.4-3.6-2.7-5c-4-1.6-.1-5.8-.1-5.8s2.5 3 4.3 1.4c1.9-1.7-.1-1.7-.1-1.7s5.2-3.3 5.3-5l-2.6.2s3-2 2.2-5a3.5 3.5 0 01-2.7 1.6s2.6-2.6 2.1-5c-1.5 1.2-1.4 2.1-2.3 1.8s-2.7-9.7 1.2-10.3c4-.6 1.8 4.6 2 4.6.1 0 5.9-2.4 0-6.3 1.4-.4 4.4 2.3 4.4 2.3s-1.3-6.6-7.6-2.6c1.5-1.6 2.5-2.7 3.7-2.4 1.3.3 5.8-.1 5.8-1.5-1.1-.9-3.5.5-4.8 0-1.2-.4 9-1.2 8.2-6.3z"/>
+  <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M481.3 118.5s12.3-6.4 18.4 1.6m4.9 12.2c-.3 0-4.3 4-5.2 4m13.4 8.9s11.4.9 18.7-10.4" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M525 141.8s1 6.1 2.8 6.1-3 1.6-4.9.3c2.2 2.8 3.4 7.7 0 9.5" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M519.3 219s-4 4.3-9 4.6" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="none" stroke="#006b00" stroke-linecap="round" stroke-width="1.3" d="M523.9 199.4s-2.5-12.3-1-15.3c1-4 5-5.5 8-10.7m-8.3 17s-3 7.4-16.5 5m20.2-23.3s1 9.8-11.3 6.1m-3.7-50.2s-4.9 4.3-3 10.1" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#006b00" fill-rule="evenodd" d="M483.7 247.6s3-1.2 3.6-1.8a9 9 0 001.8-2.7c.3-.9-2-2.3-.9-4.2.7-.9 1.7-1 3.4 0s-1.5-3.3-3.2-3.5-2.8 1.3-3.3 1c-.4-.3.2 1.2-.5 1.2s1.4 1.2 1.2 1.9c-.1.8 2.3 3.3 2.1 3.9 0 .6-3.5 4-4.2 4.2z"/>
+  <path fill="#ffc900" fill-rule="evenodd" stroke="#ffc900" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.3" d="M534.3 97.1c2.8-.6 3.2 0 2.7 2.5a7 7 0 01-2.7-2.5z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1.3" d="M514.7 233.5s-1 6.4 1.5 7c-.1-2.5.5-4.2 1.2-4.9-.6-.2-2.6-2-2.7-2zm-5.7-7.9c-2.3-.3-6.2 1.6-5 4 1.8-1.7 3.6 0 4.9-1.6.4-.4.3-1.8.1-2.4zm0-4.5s-3.6-.6-4.1 1.9c2.5-.3 3.2-.6 4 0 .3-.6 0-1.8.1-2z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M493.5 185s2.2.8 2.9 3c1.7-1 2.5-5.8-2.9-3zm-5.4 5.4c.1 0 4.6-2.8 5-.2-.9 1-1.3 1.6-2 1.8-.6 0-1.8-1.8-3-1.6zm-.4 8.8s2.9-2.5 4-.8c1 1.6-1 1.5-1 1.5s-1-.4-3-.7zm-4-49.2s-3.6-1.4-5 1c2.3.4 3.1 1.2 4.2 2-.3-1-.8-2.6.8-3zm-6.9 18.5s.2-4.2 2.1-5.9c1.2.7 1.5 1.7 2.2 2.9-1.5.3-3.4.4-4.3 3zm9.5-3s-4 1.9-2.6 3.8c1.2-1.3 2.7-1 2.7-1l-.1-2.8z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M480.6 125.6c-1.4 1.6 1.8 5 5 4.5 1-3.7-4.1-5.7-5-4.5z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="none" d="M461.2 248.1c-.3.9 1 2 1.7 1.8.3-1-1.4-2.5-1.7-1.8z"/>
+  <path fill="#e80000" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M484.3 122.8s.6 2.9 3.4 2.1c-.4-2.3-2.4-4-2.4-4-.1.7.4 1.7-1 1.9zm1.9 8.5s1.5 1.7 4.6-1.8c-1.4.4-3.8-.8-3.8-.8s0 2.4-.8 2.6z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="#ffc900" fill-rule="evenodd" stroke="#006b00" stroke-linejoin="round" stroke-width="1pt" d="M480.5 118.9c-1.4 1.5.5 3.7 3.8 3.2.9-3.7-3-4.4-3.8-3.2z" transform="matrix(.46 0 0 .5 240.3 190.1)"/>
+  <path fill="url(#d)" fill-rule="evenodd" d="M144.6 266.6s7-2 10.8 1 3.7.3 3.7.3 5.5 2 7 1.6-1 .1 1-1.2c2.2-1.2-4.2.3-4.8-2.4-1-1.7.1-3.9-2.2-3.2-1.5-2 1-3.4.5-5.6-1.6 1.2-2.5-.4-3.8 2.5-3-.6-.4-4.8-3.7-5.2 0 3-2.4 3.2-2.6 4.9-1.4 1-7.7 4.7-5.9 7.3z" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="#c01500" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M392 437.9c4-1 25.2 4.7 33.4 13.5-1.7-15.7-6-27.7-6-27.7s-12.8-3.6-14.5-1.9a96.3 96.3 0 00-13 16.1zm-6.5-72.3c-1.5.2-3 1.2-4.5 3.7-1.7 4.2-3 14.9-5.4 17.4-2.5 2.5-4.8 2.7-4.8 5 0 2.2.3 7.4 7 9.4 6.7.3 17.4-10.7 17.4-10.7s5.5-6 7.7-12.4c-13 4.5-22.1-7.5-17.4-12.4zm187 69.8c-4-1-25.4 4.7-33.6 13.4a133 133 0 016-27.5c1.6-.4 12.5-3.6 14.2-1.9 2.5 2.7 10.7 10.7 13.4 16zm6-72c1.5.3 2 2.3 3.2 4.7 1.7 4.2 3.5 10.4 6 12.8 2.5 2.5 4.7 6.2 4.7 8.4s-.5 5.2-7.2 7.2c-6.7.3-16.3-8.3-16.3-8.3s-5.4-6-7.7-12.4c12.9 4.5 21.2-7 17.3-12.3z"/>
+  <path fill="#fb0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M378 424.2s13.5 9.2 13.7 13.5c36-53.5 128-70.1 180.5-3.8 7-9.2 14.2-12.1 14.2-12.1-55.2-72.2-165.1-63.2-208.4 2.4z"/>
+  <g fill="#1e5aa6" fill-rule="evenodd" stroke="#000" stroke-width="1.1">
+    <path d="M515 219.9l5.2-.2-9.4 12 11.3 13-22.2 28 21 25.2a70 70 0 01-8.6 15.4l-12-13.3 21.8-27.2-18-20.3L515 220zm-75.2 2.3l-5.6.2 10.5 11.4-11.2 13.9 23.2 25.1-19.2 25.7a75.8 75.8 0 009.2 16.5l11.4-14.4-23.4-26 17.1-21.8-12-30.6z"/>
+    <path d="M465.9 289.8l-8.3 11L487 335a74 74 0 0013.8-9.2L485.5 308l6.3-18.4 9 10.4-28.2 36a62 62 0 01-14.7-9.1l15-18.9-7-18.2zm-9.2-17.1l5.4 6.8-3.5-9.2-1.9 2.4zm38.6 6l4.3-5.8-1.6-2.2-2.7 8z"/>
+  </g>
+  <text x="-328.3" y="362.4" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(-49.4 182.5 -362) scale(.86)">
+    <tspan x="-328.3" y="362.4">L</tspan>
+  </text>
+  <text x="-292.3" y="384.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.6 -.6 .6 .6 337.3 11.7)">
+    <tspan x="-292.3" y="384.3">E</tspan>
+  </text>
+  <text x="-239.8" y="451.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.66 -.47 .5 .65 337.3 11.7)">
+    <tspan x="-239.8" y="451.7">O</tspan>
+  </text>
+  <text x="-188.5" y="430" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.7 -.48 .48 .7 337.3 11.7)">
+    <tspan x="-188.5" y="430">T</tspan>
+  </text>
+  <text x="-115.4" y="451.5" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.78 -.37 .37 .78 337.3 11.7)">
+    <tspan x="-115.4" y="451.5">E</tspan>
+  </text>
+  <text x="-94.1" y="453.1" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.35 .35 .8 337.3 11.7)">
+    <tspan x="-94.1" y="453.1">R</tspan>
+  </text>
+  <text x="-68.4" y="455" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.32 .32 .8 337.3 11.7)">
+    <tspan x="-68.4" y="455">R</tspan>
+  </text>
+  <text x="112" y="445.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 -.07 .07 .86 337.3 11.7)">
+    <tspan x="112" y="445.7">R</tspan>
+  </text>
+  <text x="180.2" y="430.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 0 0 .86 337.3 11.7)">
+    <tspan x="180.2" y="430.8">R</tspan>
+  </text>
+  <text x="414.8" y="275.2" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.75 .43 -.43 .75 337.3 11.7)">
+    <tspan x="414.8" y="275.2">R</tspan>
+  </text>
+  <text x="483.9" y="193.1" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(39.9 153.2 471.7) scale(.86)">
+    <tspan x="483.9" y="193.1">E</tspan>
+  </text>
+  <text x="309.1" y="414" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.83 .16 -.13 .82 337.3 11.7)">
+    <tspan x="309.1" y="414">O</tspan>
+  </text>
+  <text x="105.1" y="459.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.78 -.1 .12 .84 337.3 11.7)">
+    <tspan x="105.1" y="459.3">O</tspan>
+  </text>
+  <text x="-45.7" y="455.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.8 -.3 .3 .8 337.3 11.7)">
+    <tspan x="-45.7" y="455.8">A</tspan>
+  </text>
+  <text x="518.4" y="144.7" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.6 .6 -.6 .6 337.3 11.7)">
+    <tspan x="518.4" y="144.7">A</tspan>
+  </text>
+  <text x="271.2" y="388.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.84 .17 -.17 .84 337.3 11.7)">
+    <tspan x="271.2" y="388.3">A</tspan>
+  </text>
+  <text x="40.3" y="455.2" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.85 -.16 .16 .85 337.3 11.7)">
+    <tspan x="40.3" y="455.2">M</tspan>
+  </text>
+  <text x="94.4" y="448.1" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 -.1 .1 .86 337.3 11.7)">
+    <tspan x="94.4" y="448.1">P</tspan>
+  </text>
+  <text x="155.1" y="437.6" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.86 0 0 .86 337.3 11.7)">
+    <tspan x="155.1" y="437.6">P</tspan>
+  </text>
+  <text x="405.1" y="276.7" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(29.3 146.8 652.1) scale(.86)">
+    <tspan x="405.1" y="276.7">P</tspan>
+  </text>
+  <text x="232.1" y="409.8" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.85 .1 -.1 .85 337.3 11.7)">
+    <tspan x="232.1" y="409.8">I</tspan>
+  </text>
+  <text x="530.4" y="132.1" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(46.4 155 399.3) scale(.87)">
+    <tspan x="530.4" y="132.1">T</tspan>
+  </text>
+  <text x="464.2" y="218.5" font-family="Timmons" font-size="14" font-weight="bold" transform="rotate(36.4 149 515.6) scale(.87)">
+    <tspan x="464.2" y="218.5">T</tspan>
+  </text>
+  <text x="313.7" y="362" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.83 .24 -.24 .83 337.3 11.7)">
+    <tspan x="313.7" y="362">M</tspan>
+  </text>
+  <text x="513.7" y="123.3" font-family="Timmons" font-size="14" font-weight="bold" transform="matrix(.58 .64 -.64 .58 337.3 11.7)">
+    <tspan x="513.7" y="123.3">G</tspan>
+  </text>
+  <path fill="none" stroke="#fff700" stroke-linecap="round" stroke-width="1.1" d="M557.4 184.5s5.2-4.4 8.9-4.6m-8.2 4c.1-.1 31-4.5 32-5.4m-31.9 5.6l34.6-3m-34.7 3.2s36.7-1.8 39 0m-39.1-.2s36 .3 36.6 1.1m-36.5-1l34.6 2.8m-35-2.6c.2 0 35.3 3 38.7 7.5m1.9 6.3c-.2-.1-12-14.2-40.7-14m.2.3s19.8 1.4 26.1 8.3m-25.8-8.5s12.9-2.5 26.3 13.7"/>
+  <path fill="url(#e)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M247.4 217.7s20.7.9 20.7 2.9-15.4 5.9-15.6 14.4c-.2 8.5 11.8 9.2 12.6 20 .8 10.7-9.4 12.3-11.4 15.2-2 1.4-6.9 16.6-6.3 25.5.6 9 3.3 39.2 8 45.3 3.6 2.9 9 12 15 9.2 5.9-2.9 1.8-13.2 1.2-16s2.4-7.6 2.4-11.8c0-4.3-2.2-7.8-2-8.8.2-1 16.4 3.9 15.4 20-1 16-7.5 11-7.5 11s2 19.8-3 22.4c-9.2 5-15.9-1-15.9-1l.9 4-7-3.6s-9-12.8-11-18.5-4.4-31-3.6-36.5c.8-5.5 1.4-37.6 1-39.2s-2-28.5-1-32.5 7.3-22 7.1-22z" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="#ff7000" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M530.8 194.4s12.4-12 19.6-10.6c3.7 0 .2 2.6.2 2.6s6.3.5 7.1 3.3c.2 1.2-3 1.6-3 1.6s2.7.5 2.8 2.8-26.5.5-26.7.3z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M531.5 193.9s13.3-1.8 18.9-7.4m-5.4 3.7s9.8-.3 9.8 1"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M579.7 333.1s8.4-1.9 10.7-4.9c1.4-1 8.7 11-10.7 5z"/>
+  <path fill="none" stroke="#fff" stroke-linecap="round" stroke-width="1.1" d="M577.5 263.8s1 6.4-2 10.8c-1.5 1.7-6.3 4.7-6.3 6.8 0 2.1 1.8 4.9 1.4 7.3s-3 5-2.7 7c0 2.1 3 13.3 2.6 13.5m-8.4-66.4s-6.6 2.3-8 9"/>
+  <path fill="#c75b00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M559.3 190.2s2.3 6.3 9.6.4c-4.7-6.5-9.6-.2-9.6-.4z"/>
+  <path fill-rule="evenodd" d="M564.9 190c0 .4-.4.7-.8.7s-.8-.3-.8-.6.3-.6.8-.6.8.2.8.6z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M499.3 175.6s14 15 23 15c1.6 4.4-4.2 8.5-6.5 10.4-4.5-1.4-8.7.3-19.3-12.8.6-8.3 3-12.2 2.8-12.6zm18.8-35c1.8-5.6 5.4-10 8.5-10.5-.8-4.2 6.6-23 28-30.3 1.3 9.7-9.1 19.2-9.1 19.2s31.6-5.4 38-13.4c-.7 3.6-7.1 26-40.8 25.8 12.8 12.1-4.1 21.8-11.3 18.9 13.2-10.2-3.8-16.2-13.3-9.7z"/>
+  <path fill="#cccccd" fill-rule="evenodd" stroke="#ccc" stroke-width="1.1" d="M529 132.8c6.3-4.1 8.6-4.1 13.8-3.3l-3.7.6s-.4.5 2 2.7c-2.7-.7-5-2.2-12.2 0z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M526.5 130.1s12.6-6.7 19.6-11.3"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M515.7 201s17.3 4.8 19.3-20.1c-3.8-10.8-9-34-1-40.8-7.4-5-15.4.2-15.4.2-.5 1.1-7 10.5 1.8 26.8-21-5.5-12.4 14.3-12.4 14.3.8-3.1 12-6 14.7 9.8 1.1 4-7.5 10-7 9.8z"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M535.1 181s18.4-9.8 17.9-32.9c-15.6.4-21.1 20.5-21.1 20.5l3.3 12.4z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M453 179.9s-13.6 11.8-21.3 8c-5.7 3.4-12.4-2.6-12.4-2.6s7.8 29 36 8c-.5-6.4-2-13-2.3-13.4z"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M431.5 187.4c1.2-6 6-9 9.7-3.3 5 1 10.2-19.8-7.9-16.3 5.1-27.2-10.1-37.3-10.1-37.3s-5.4 30-3 35.6c2.5 5.6-3.5-10.3-23-14.7-.3 22.8 21.7 33.4 21.7 33.4s6.3 5.7 12.6 2.6z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M433.3 167.6s-8.5 7.2-6.5 17m-6.4-18s-2 7 2.3 17m-3.6 2.4s4-6.4 12.4 1.8"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M420.7 141.8c0-.2-12.9 0-5.2 13-5.7 1.8-18.5-6.5-9.7-17.6-29-.7-40.7-14.6-40.7-27.4 8.5 8.9 28.8 5.3 36 10.7-8.8-8.2-7-19.5-7-19.5s24.7 7.4 29.1 29.3c-1.5 4.2-2.1 11.8-2.5 11.4z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M400.9 119.9c4.7 4.9 17 6.3 23.2 11.7"/>
+  <path fill="#cccccd" fill-rule="evenodd" stroke="#ccc" stroke-width=".8" d="M406.5 134.2s10.2-1.3 13 2.3c-3.9 0-5.2-1-11 1.2 1.7-.9 1.2-2.3 2.1-2.3s-3.7-1.2-4.1-1.2z"/>
+  <path fill="#923f00" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M457 54.8s5.6-4.9 11.7-.4c-2.7 8.1-12.6 5-12.6 5s.3 4.1-.7 6c2 1.6 3.6 6.5 3.6 6.5s10.2-2.5 12.3 2c3.9-.6 6.7 0 6.7 0s7.9-2 10.7-2c2.7 0 11.6 2.3 12.4 3.9.8 1.6 3.8 12.6 5.7 12.4 2-.1-4.7 2.7-6.5-.1-1.8-2.8-1.3 3.6-1.3 3.6s5.5 5.9 6.2 7.2c.6 1.3-3.4 12-.3 19.3-2.8.2-3 3-3 3-.1 3.3-4.2 4.2-4.2 4.2l-1-4.4-2.8 1.6 1.1-3.4s3.8-9.2 4.1-12.1c.4-3-3.4-8.2-6.3-8.2s-5.1 9.3-5.1 9.3-1.5 7-1 7.7l-2-2.3s-1.3 4.3-2.3 5.6c-1 1.3-3 1.8-3 1.8s-1.5-4.3-1-6c.4-1.6 8-8 7.3-12.5-.6-4.6 0-3.5-.2-3.6-.1-.2-3.9-3.5-4-5.3-.2-1.8-5 2.3-11.2 1-1.9 3.3-2 11.6-2 11.6s-.8 10 .6 11.2c1.3 1.1-3.3 3.6-3.3 3.6l-3.3 4.4-1.1-2.6-2.3 1.6 1.3-3.3c0-2.4 3.2-9.2 3.2-15s.4-11.8.4-11.8-6-.3-6 5.9c.3 6.2-1.4 6.5-1 8.3.3 1.8 2 6.9 1.4 8.4-.5 1.4-2.4 2-2.4 2l-.5.8s-6 2.7-6 3.9c.2 1.1 0-3.3 0-3.3l-.4-4.7s3.6-2.3 3.6-8c0-5.8-.8-6.6-.7-8 .2-1.2 1-6 .9-6.5-.2-.4-3.5 1.4-4.5 1.4s1.8-3.5 2.2-6c.3-2.4-3.3 2.4-6.3-.4 1.4-3 3.5-4 3.8-6.2s-2.3 2-4.6.3c.2-2.2 2.5-4.1 2.5-4.1s-1.9-.2-2.6 0c-1.5-.5 1.6-2.8 1.8-6 .1-3.3-1.8-4.6-1.8-4.8 0-.2-3.3-3-3.8-4.1-.5-1.1-.5-2.5-.5-2.5s-5.4 4-11.8-4.4c5.9-5 12.1-1.3 12.1-1.3s1.7-4.6 9.2-4.2c7.5.3 9 4.5 8.7 4z"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M498.3 139.5s13.8.4 14 7.8c.1 7.3-4.2 5.4-4.4 5.4l-10-1.2.3-12z"/>
+  <path fill="#fffeff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M484.9 137.5s17.2-.2 16.2 7.3-5.3 6-5.3 6l-8.3-.7-2.6-12.6z"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M475.2 136.6l10 .9s6 .8 5.7 6.5c-.3 5.7-6.1 5.9-6.1 5.9l-9.7-.6.1-12.7z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M451.9 139.5c-.1 0-13.9.4-14 7.8-.2 7.3 4.2 5.4 4.3 5.4l10.1-1.2-.4-12z"/>
+  <path fill="#00f" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M465.3 137.5s-17.2-.2-16.3 7.3c1 7.5 5.4 6 5.4 6l8.3-.7 2.6-12.6z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M475 136.6l-10 .9s-6 .8-5.7 6.5c.2 5.7 6.1 5.9 6.1 5.9l9.7-.6-.2-12.7z"/>
+  <path fill="#5e0043" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M501.6 219.4s7.1-10.6 10.2-9.4c2.6.9.6 9-.7 9.8l-9.5-.4zm-49 1.9c-2.3-3.2-5.6-11.8-8.6-9.4-2.6.8-.6 9 .6 9.8l8-.4z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M457.3 200.4s14 8.6 18.5 8.8c4.6.3 19-11.1 19-11.1"/>
+  <path fill="#5e0043" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M458.6 166.8l2.7-3.4 13.4 6.8 13.6-6 2.7 2.8-15.2 10.7-17.2-11z"/>
+  <path fill="#474747" fill-rule="evenodd" stroke="#474747" stroke-linejoin="round" stroke-width="1.1" d="M448 166.6c1 1.3 9.7 11.9 11.3 20.6 1.6 8.7-.9-12-.9-12s10.7 5.3 11 8.6c.4 3.4 5.2-.2 5.4-.8l-31-20.1 4.2 3.7zm52.9-.6s-11.3 14.8-10 31c-2.3-7.8-.4-20.6-.4-20.6l-2.4 1.6s-2.6 11-5.8 12.6c-.6-1.3-.5-1.8-.5-1.8s-3.4 4.5-4.1 5c-.7.4.2 15 .2 15s1.2 10.6 2.5 10.5a45 45 0 00-3.4 1.9l-1.4-28.3 3.2-3.2s4.3-5.1 4.6-10.1c-1.9 1.5-4 2-4 2s-.5 7.1-2.1 8.1c-1.7 1-1.8 2.9-1.8 2.9l-.4-9.3L501 166z"/>
+  <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="1.1" d="M475.1 183.1l2.2 44.6"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M447.7 204.4s5.1 3 7 12.2c16.7-1.2 22 4.7 22 4.7s13.7-6.6 20-5.4c2.3-4.7 8.7-10.7 8.7-10.7"/>
+  <path fill="#b4b6b9" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M440.7 160.7l34.4 22.6 31-21s6.5-3.5 6-6-2.8-1.6-4-1.2c-1 .5-32.4 22.7-32.4 22.7l-33.4-21s-2.4-.9-2.9.7 1 2.4 1.3 3.2z"/>
+  <path fill="#474747" fill-rule="evenodd" stroke="#474747" stroke-linejoin="round" stroke-width="1.1" d="M502.3 154.9s-8.8-3.8-8.8-.5c0 3.2.2 3.5 1.6 5.6 1.4 2.1-1 3.4-1 3.4l-.9-2.3c-.5-1.4-5.2-2.4-5.6-4-.4-1.7 1-4.4-1.9-4.7a5.2 5.2 0 00-6.1 4.4 67.5 67.5 0 01-4.2 10.8l.5-17.2c6.2.4 17.7 1.8 26.6 2.8-2.7-.4 1 .2.9 1-.3.8-1.2 1-1.1.7zm-31.2-4.4c-1.6 0-9.5 1-11.5 2.1-2 1.2 3.3 3 2.6 4.6-.7 1.6-.7 4.7-3.2 4-2.5-.6-11-4.7-11.2-6.2-.2-1.4-2-1.5-2-1.5s24.1-3.2 25.3-3z"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M474.9 148.6v21.1m-16.3-46l-9.8 16.1"/>
+  <path fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M161.8 129.7s4.9 6.7 4.3 8.6a25 25 0 014.3 7.8" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M492.7 122.3s-9.1 12.8-8.8 13.8"/>
+  <path fill-rule="evenodd" d="M446.2 61.4c-.2.7-1.4 1-2.6.7s-2-1.3-1.8-2c.2-.8 1.3-1 2.6-.7s2 1.3 1.8 2zm3.7-.2c.2.7 1.4 1 2.6.6s2-1.3 1.8-2c-.2-.7-1.4-1-2.6-.6s-2 1.3-1.8 2z"/>
+  <path fill="#ff7000" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.1" d="M556.1 326.6s-3.3.6-3.2 1-9.8.5-10 .2c-.2-.3-1.5 1.7-1.5 1.7l1.6-1s2.4 2.6 3.1 2.4c.8-.2-.3 1 0 1.1.1.2.9-.4.9-.4l16.3-.3-7.2-4.7zm6.1 5.1l-13.3.4s-3.4 3-3.6 3.7 2.2 1 2.2 1l.7 2.5 1.7-.6s11.4 1.7 21.8-.6c5.3-1.9 6.2-4.1 2.5-5.5-3.7-1.3-11.9-.9-12-1z"/>
+  <path fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M208.4 404l28-1.3-5.3-4.4 75.7-3-2.6-6-84.7 3.3 10.2 4.8-23 .6.8 2.4-6-.2s6.6 2.6 6.9 3.7z" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width="1pt" d="M239.7 249.4c-2.2-1-12-2.4-22.8 4.7l.4 25s16-8.6 23.8-6.6c-.5-7.8-.5-17.8-1.4-23z" transform="matrix(.86 0 0 .86 337.3 11.7)"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M410.4 291.8L353.7 348m82-56l-46 60.7m44-76.5l-61.5 74.5m-1.8-1l6-7m69-29l-23.9 32.8m-1 4.3l.6 12.6m35.2-38.2L431 356.9m20.7-2.5l10.3-16.8m-6.3-3.3l-12.4 14M452 321l-8.5 10.3m-2.4-25.3s-25.7 37.6-25.3 40.7m22.6-45.6c-.6.4-22.2 29-22.2 29m-1.2 9l-4 4.8m-4.9 7.2l-6 7.8"/>
+  <path fill="#8a9396" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M407.6 205.2s-1.7 5.5 0 8.2 12.7 24.9 12.7 24.9 7.5-9.2 10.2-9.5c2.7-.2 1.5 23.9 1.5 23.9s-4.5 4.2-7.2 4c-2.7-.3 6.7 9.4 6.5 17.6s-12.5 49-17 49.7c-4.4.8 2-7.4 1.8-9.7-.3-2.2-1.5-.7-2.5-3.2s1.5-6.2 1-8.7-2.8-2-3-3.7 1.5-2.3 1.2-4.2c-.2-2-3-1.5-2.7-3.3s.5-1 .3-4.2c-.3-3.2-.8 2.2-3.5 2.5-2.8.2-5 6.4-5 6.4s-5.5 7.7-11 4.3c3.3 7 .8 10-.4 10.2s1 5.4-2 5.7 2.2 11.7-1.3 12.7c3.8 1.7.8 4 .8 4s-8.6.7-6.7 11.9c-25.4-9-37.8-24.4-37.6-40 .3-15.7 5.3-29.9 17.4-35 3.5-13 9.5-27 9.5-27s-1-5.7-.3-9.4c.8-3.7 4.3-7.4 4.3-7.4s-.5-9-.3-13.5c.3-4.4 2-6.4 2.2-9 .3-2.4-.7-15 1.8-17.3 2.5-2.3 7.2-2 9.7-3.5 2.5-1.5 5.7-4.2 9-4s6 2.5 6 2.5 12 0 12.8 4.7c.8 4.8-2.5 6.5-2.5 6.5s1.8 6.7-5.7 13z"/>
+  <path fill="#cecfcf" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M396.9 188.1c.4.7-.5 2-2 2.8s-3 .8-3.4.1c-.4-.7.5-2 2-2.8s3-.8 3.4-.1z"/>
+  <path fill-rule="evenodd" d="M394.8 189.3c0 .5-.4.9-1 .9-.4 0-.9-.4-.9-.8 0-.5.5-.9 1-.9s.9.4.9.9z"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M413 197.5s3 13.4-.7 22.8m1.5-28.7s6 7.8 5.2 17.4m-4.6-19.1c.2 0 5 4.1 4.8 7m-3.6-8.8s3.2 2.3 4 4.6"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M414 186.8s-11.5 18.8-10 30.6"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M414.8 186.2s-15.4 9.2-18.2 39"/>
+  <path fill="none" stroke="#000" stroke-width="1.1" d="M413.1 191.8l-6 4.5"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width=".5" d="M390.9 226.9s8.5-35.5 23.7-40.7"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M420.5 238.9s8.2-10.3 10-9.9c2 .4 1.4 23.8 1.4 23.8s-6 4.5-7.4 4.3c-1.3-.2 6.8 11 6.6 15.2l-.3 4.2s0-2.5-2-6.5c-1.8-4-.7-8.5-13-18.6-3-6.2 6 3.8 8 2.3 1.8-1.5-3.5-14.6-3.3-14.8z"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M406 181s-3.5 1-4 2.4c-.4 1.4-2.4 2.8-3.5 2.4a18.9 18.9 0 01-3.1-2.2"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M386.5 193.1s-5.2 5.2-2.7 5.8c2.5.6 5.2-4 5.2-4s0 7.9 2.1 6.6l8.6-5.7s2.2-.2 2.7 0c.5.1 6 4.8 9.5 3-2 5.4-4.4 6-4.4 6s-3.7 4.9-8.6 3.8c-4.8-1.1-6-3.2-6-3.2s-4.1.3-5.3-1.5c-1.3-1.9-1.8-3-1.8-3s-2.3 2.4-3 1.3c-.6-1.1 0-7.5 3.7-9z"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M415.7 186s-9.6-2.9-12.8 1.8c-3.3 4.7-2.5 7.3-.8 7.8"/>
+  <path fill-rule="evenodd" d="M417.1 185.7c0 1-.8 2-1.8 2s-1.8-1-1.8-2 .8-2 1.8-2 1.8.8 1.8 2z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M389.4 210s3.9 6 8.5 7.6-3.2 3-7.8 0c-3.4-4.6-2.5-8-2.5-8s1-.8 1.8.4zm33.3 35.2s-11-15.1-14.1-16c-3.1-.8 2.4-1.5 5.7 1.8 3.4 3.2-.9-5.3-.9-5.3l9.3 19.5z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M388.4 332.8c4.2-1 22.4 10.5 26.5 13.4 4 3 12.7 1 12.7 1s-4 2.5-6.5 3 7.4.7 7.4.7-23.3 6.4-47-6.1c-2.2-9.7 5-11.9 6.9-12z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M415 249s-3-.6-4.6-2.4c-1.6-1.8-3.8-6.2-6.1-8.1s-14-8.2-18.1-7.8c-4.2.5-5.5-.4-6-1-.5-.5-2.2.3-2 2.5.4 2.1-3.1 6.9-1.9 9.1a63.5 63.5 0 008.5 11.7c1.2.3.4 5.3.4 5.3s5.3 5.4 6.7 5.7c1.3.3 2.7 1.2 2.5 2.5-.1 1.3-5.8 8.2-5.8 8.2s-6.1 3.2-6.2 5c0 1.8 1.5 5.6 6.3 6.8a45 45 0 0018.6-1c.7-1 1.8-7.8 1.3-8.4-.4-.7-3.7-2.7-5.3-2.4-1.6.3-3.1 1.6-3 1.9.2.3-2.3 1.6-2.3.4s4.8-6.6 5.3-6.2c.5.5 7.3 1.2 8.6 4.6s1.3 5.9 4.9 5.5c3.5-.3 8.5-3.6 9-10.5.4-6.9-4-11.5-5.2-12.2-1-.6-4.8-2.9-5.1-4-.3-1-1-4.4-.5-5.2z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M350.4 279.3s11.6-3 14.6-3c3 .1 14.3 5.4 17.5 8.6 3.3 3.2 10 10.8 14.5 10.2 4.4-.7 5.6-1.6 5.6-1.6l-1.7 3.3s-3.6 1-5.4.5a19 19 0 01-8.8-5c-3.5-3.4-14.3-12.7-23.5-12-9.2.6-14.5 9.7-14.5 9.7s0-4.4.5-5.4c.3-1-2 2-2 2l3.2-7.3z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-width="1.1" d="M393 288.3c.1 0 3 .8 7.8.8s7.3-2.1 7.3-2.1l-.3-1.9.7-2.6s3.7 3.7 3.6 4.5c0 .7-1.5 1-1.5 1l-.5-1.8-1.3 1.6s-7 5.5-10.7 4.7c-3.8-.8-7.4-3.3-6.4-3.9s1.5-.4 1.4-.4zm-16.8 9.7s-4.2 0-6 .9c-2 .9-2.6 2-3.9 1.8-1.2-.1-2.2-1.8-1.8-2.4.5-1 3-2.4 7.7-2s4 1.7 4 1.7zm14.6 11.4c0-.2-.3-6.1-2.6-8.5a7 7 0 00-6.4-2.1c-1.3.3 4.7 2.9 5.3 4.6.6 1.7 2.5 6.5 2 7.7-.5 1.2-1.5-3.3-5.2-4.6s-8.7-.6-7.6 1 5.1.2 7.2 3.7 3.7 7.2 3.7 7.2l.6-2.5 2-.5.1-4.9 1-1.1z"/>
+  <path fill="#2b2b2b" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M387.8 328.5l-3.8-7.6s-1.2-4.9-4.4-6.2c-3.2-1.4-7.5-1.1-7.5.5-.1 1.7 6.8 3.7 7.3 4.6.5 1 .2 2.4-.4 2.5-.6 0-3.6-1.1-5.2-.7-1.6.3-2.5 2.4-4.8 1.8-2.3-.6-4.2-8-3.4-8.8 1-.7-1.7 1.4-2.2-.6-.5-2 .8-8-.1-8.7s-5.3-3.4-5.3-4c-.1-.4.2-29.6 24.6-5.4-10.5-12.4-14.6-11-16.5-11.2-1.4 0-10.9.9-13.3 13-2.4 12-5.2 4.5-5.2 4.5s-.5 5.2 2 6.7-1.2 5.9-1.2 5.9-4.6-11.2-3.9-16c-.9 3.9-.8 13.5 5 24a78 78 0 0029.9 21.1c8.9-13.6 8.4-15.2 8.4-15.4z"/>
+  <path fill="#8a9396" fill-rule="evenodd" stroke="#2b2b2b" stroke-linejoin="round" stroke-width="1.1" d="M371.9 328.6s4.9.6 6.2 3.1a24 24 0 012 6.4c.8-1.6 1.2-3 2.8-4.2s2.8-1.4 2.8-2.2c-.1-1-5.3-6.4-7.9-6.7-2.6-.3-7.1 2.8-7.1 2.8s-.9 1.2 1.2.8z"/>
+  <path fill="none" stroke="#8a9396" stroke-linecap="round" stroke-width="1.1" d="M383.1 341.4s12.8 5.9 33.8 6.2"/>
+  <path fill="none" stroke="#2b2b2b" stroke-linecap="round" stroke-width="1.1" d="M425.8 282.1s-1.1 10.7-9.4 32"/>
+  <path fill="none" stroke="#2b2b2b" stroke-width="1.1" d="M424.1 288.7s-2.5 7.7-9.3 13.5"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gt.svg
new file mode 100644
index 0000000..724e970
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gt.svg
@@ -0,0 +1,204 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gt" viewBox="0 0 640 480">
+  <defs>
+    <radialGradient id="a">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </radialGradient>
+    <radialGradient id="d" cx="447.4" cy="308.3" r="16.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="e" cx="451.6" cy="313" r="10.9" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="f" cx="454.1" cy="308.6" r="9.8" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="g" cx="458.4" cy="307.1" r="17.4" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="j" cx="446" cy="252.4" r="13" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="m" cx="477.9" cy="215.3" r=".3" gradientUnits="userSpaceOnUse">
+      <stop offset=".3" stop-color="#a50a0a"/>
+      <stop offset="1" stop-color="#4c0505"/>
+    </radialGradient>
+    <radialGradient id="n" cx="489.1" cy="210.3" r=".3" fx="489.1" fy="210.3" gradientTransform="scale(.97707 1.02346)" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#fff"/>
+      <stop offset="1" stop-color="#fff" stop-opacity="0"/>
+    </radialGradient>
+    <linearGradient id="h" x1="473.9" x2="472.4" y1="259.2" y2="232" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#b07e09" stop-opacity="0"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="i" x1="483.1" x2="485.5" y1="296.7" y2="326.6" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#b07e09" stop-opacity="0"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="k" x1="451.5" x2="455.4" y1="249.5" y2="240.6" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+    <linearGradient id="l" x1="473.3" x2="475.9" y1="237.3" y2="270.4" gradientUnits="userSpaceOnUse">
+      <stop offset=".2" stop-color="#f9f0aa"/>
+      <stop offset="1" stop-color="#b07e09"/>
+    </linearGradient>
+  </defs>
+  <path fill="#4997d0" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M213.3 0h213.4v480H213.3z"/>
+  <g transform="translate(0 40) scale(.66667)">
+    <g stroke="#24420e">
+      <path fill="none" stroke-width=".4" d="M452.1 377.5c2.7-.4 4.2-1.2 6-1.8m2.3-4a13 13 0 013 4.6m-8.1-5.1a15.4 15.4 0 013 4.2m-49.5-136.6c-1 1.6-3.1 2.7-4.8 3.4m-.3-.2c0-1.4-.3-3 0-4.4m-2 5l.7 2m2 1l-2 .3m-4-.9c0 2.6.4 5.6.6 7.9m-1.8-1a6 6 0 001.6 1.9m-4.6 6.4c.5 1 1 2.2 1.3 4m3.7-4.6l-2 1.5m1.7 4.4c-1 .9-2.2 1.5-3.5 2.1m-3.8 40.4a16 16 0 004 4.7m.6 1.7a8 8 0 01-3-1m4.4 8.5l1.7 1m-.4 3.4c1.2.8 2.5 2.3 3.7 3.9m-1.4 2.8c1.4.3 2.5.7 3.2 1m-1 2.5h2m1.3-5.3l-.5 4.2m1 1.6l.4-1.6m4.7 6l-.1 3.2m39.2 28l-1.2 1.5m-2.4-4l-.7-1.7"/>
+      <g stroke-width=".2">
+        <path fill="#406325" d="M486.1 385c-.8-1.3-2-2.1-3.3-2.7-7.7-4-15.4-5.9-24-7.3-2.1-.3-4.1-2.2-6.2-3.2-5-2.3-10.5-3.2-15.3-5.7a7.8 7.8 0 01-2-1.5c-2-2.2-5.5-2.9-7.6-5-8.4-7.8-17.2-15-21.8-25.5-5.6-12.7-12.5-25.8-11.6-40.3.6-9-.7-18.3 1.5-27 3.4-12.9 7.6-25.6 15.4-36.3l-1.3.8a103.6 103.6 0 00-15.4 36.3c-2.3 8.7-1 18-1.5 27-1 14.5 6 27.6 11.5 40.3 4.6 10.4 13.5 17.7 21.8 25.6 2.2 2 5.6 2.7 7.6 5a10 10 0 002 1.5c4.9 2.4 10.4 3.3 15.4 5.7 2 1 4 2.8 6 3.1a76.4 76.4 0 0124.2 7.3 8 8 0 013.3 2.6l1.3-.8"/>
+        <g fill="#67923d">
+          <path d="M406.3 331.6a46.9 46.9 0 01-.2-23.5c6.7 13 4.5 23.7.2 23.5zm45.9 45.4c-7.1.4-20.6 9.3-21.9 11.4 15.1.1 24-7.3 21.9-11.4zm7.5-4.3a60 60 0 01-14-26.5c15 10.8 18.9 24.3 14 26.5z"/>
+          <path d="M454.6 372.8a55.1 55.1 0 01-16-22.8c15.3 8.2 20.3 20.2 16 22.8zM439 366c1-7.8-5.6-24.2-7.5-26-3 16.5 3 27.6 7.6 26zm-27.3-24.3a42 42 0 01.5-21c5.5 11.7 3.3 21.2-.5 21zM398 265a51 51 0 0121-16c-6.7 14.6-18 19.9-21 16z"/>
+          <path d="M398.7 259.3a51.7 51.7 0 0117.4-20c-3.7 15.7-13.7 23.2-17.4 20zm27.9 99.2c-5-6.2-8-23.9-7.3-26.4 11.2 12.5 12 25.2 7.2 26.4zM397.9 322c-7 1.1-21.4-4.6-23-6.3 14.6-3.2 24.4 2 23 6.3zm-2.2-9.7c.8-5.5 8.6-15.8 10.3-16.6-1 12-7.4 18.6-10.3 16.6zM447 371a57.1 57.1 0 00-26.1 13.6c18 .1 28.7-8.7 26.1-13.6z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M406.4 331.5c4.2.2 6.4-10.4-.3-23.4a79 79 0 01.3 23.4zm11.2 20a48.8 48.8 0 00-21.7-11.2c8.9 12.1 19.9 15.1 21.7 11.2zm-24.4-53a57 57 0 00-14.8-24c1.5 17.2 10.6 26.7 14.8 24zm8.4 34.3c-5-3.7-19-5.4-21-4.7 10.2 8.2 20.2 8.4 21 4.7zm-9.4-24.9a42 42 0 00-16.9-13.7c5.5 12.4 14.6 17 16.9 13.7zm2.7-47.5c1-7.6-5.5-23.4-7.3-25.2-2.9 16 2.9 26.7 7.3 25.2zm4.5-15a48 48 0 00-.5-24.3c-6.4 13.5-3.8 24.6.5 24.4z"/>
+          <path d="M404.4 237.8a40.2 40.2 0 003.5-19.4c-7.2 9.7-7 18.9-3.5 19.4zm6-6.1a38.9 38.9 0 009-17.4c-9.7 7-12.2 15.8-9 17.4zm-16 43.2c0 .9-1-8.2-10.1-18.3.4 14.8 6.2 20.4 10 18.3zm32.5 85.8a53.1 53.1 0 00-25.8-6c12.6 10.4 24.9 10.6 25.8 6zm12 5.2c-4.5 1.6-10.4-9.4-7.5-25.9a99 99 0 007.5 26zm13.4 11.2c2 4-6.8 11.4-21.8 11.3 12-5 21.2-9.9 21.7-11.3zm7.3-4.5c5-2.3 1.1-15.5-14-26.4 8.6 13.2 14.5 24.6 14 26.4z"/>
+          <path d="M454.6 372.7c4.2-2.7-.7-14.5-16-22.7 9.5 11.2 16.2 21 16 22.7zm-42.8-31c3.7.2 6-9.3.5-21 .7 11 .4 20-.5 21zM398 264.9c3 4 14-1.3 20.9-15.9a90.6 90.6 0 01-20.9 16z"/>
+          <path d="M398.9 259.3c3.6 3.2 13.5-4.3 17.2-20-8 11.3-15.6 19.8-17.2 20zm27.7 99.1c4.7-1.1 4-13.8-7.3-26.3 5 13.5 8 24.8 7.3 26.3zM397.7 322c1.4-4.3-8.3-9.4-22.8-6.3 12.3 2.2 22 5 22.8 6.3zm-2-9.7c3 2 9.3-4.6 10.4-16.6a68.8 68.8 0 01-10.3 16.6zM447 371c2.6 5-8 13.7-26 13.5 14.2-5.8 25.3-11.7 26-13.5z"/>
+          <path d="M399.4 326.3a45.1 45.1 0 00-17-15.8c5 13.6 14.2 19.1 17 15.8z"/>
+        </g>
+        <g fill="#67923d">
+          <path d="M392.4 274c4-4.7 17.5-9.2 19.6-9-8 10.5-18 12.6-19.6 9zm25 77.5c-1.7 4-12.6 1-21.6-11.1a84.8 84.8 0 0021.7 11.1zm-24.3-53c-4.2 2.7-13.1-6.8-14.7-24 6.6 13.3 13 23.5 14.7 24zm8.4 34.3c-.7 3.7-10.7 3.6-20.8-4.7a74.6 74.6 0 0020.8 4.7zm-9.4-25c-2.4 3.3-11.3-1.2-16.8-13.6 8.2 8 15.5 13.7 16.8 13.6zm2.7-47.5c-4.4 1.6-10.1-9-7.3-25 2.7 13.5 6 24.2 7.3 25zm4.5-14.9c-4.3.3-6.9-10.8-.5-24.3-.8 12.8-.5 23.2.5 24.3zm5-7.6c-3.4-.6-3.7-9.7 3.6-19.4a66.2 66.2 0 00-3.6 19.4zm6-6.1c-3.1-1.7-.7-10.4 9-17.4a66.2 66.2 0 00-9 17.4z"/>
+          <path d="M394.3 274.9c-3.9 2.1-9.6-3.5-10-18.3 5 11.7 8.6 17.8 10 18.3zm32.5 85.8c-.9 4.6-13.1 4.4-25.7-5.9 13.2 4.3 24.3 6.7 25.7 5.9zm-8.2-9.5A41 41 0 01412 332c9 8.7 10.2 18.1 6.8 19.2zm-16.8-25a44.3 44.3 0 01-3-23c8.3 11.9 7.3 22.7 3 23zm-2.7.1c-2.7 3.3-11.9-2.1-16.8-15.8a77.8 77.8 0 0016.8 15.8z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M392.4 274c1.6 3.6 11.4 1.5 19.5-8.9-12 6.8-16.7 9.8-19.5 8.9zm9.3 52c4.3-.3 5.3-11-3-22.8a72.8 72.8 0 013 22.9zm17 25.2c3.4-1 2.2-10.5-6.7-19.2 4.4 9.7 7.2 18 6.7 19.2z"/>
+          <path d="M394.2 291.8a41 41 0 00-4.3-25.6c-4.7 15.4-.2 26.6 4.3 25.6z"/>
+        </g>
+        <path fill="#67923d" d="M394 293.8c-6 1.3-8.7-12-4.1-27.1 1 13.5 2.8 26.1 4 27z"/>
+        <path fill="#67923d" d="M392.7 293.7a53 53 0 019-24.7c2 15.8-4.5 26.3-9 24.7z"/>
+        <path fill="#406325" d="M392.8 293.6c4.4 1.6 10.9-8.8 8.9-24.6-3.5 13.3-7.5 23.8-8.9 24.6z"/>
+        <path fill="#67923d" d="M394.1 303.3a50 50 0 0110.6-23.7c.8 16.2-6.3 25.9-10.6 23.7z"/>
+        <path fill="#406325" d="M394.2 303.4c4.2 2.2 11.3-7.3 10.5-23.5-4.4 12.8-9 22.9-10.5 23.5z"/>
+      </g>
+      <g fill="#ba1f3e" stroke="#511124" stroke-width=".2">
+        <circle cx="396.8" cy="251.3" r="1.1"/>
+        <circle cx="405.2" cy="245.1" r="1.1"/>
+        <circle cx="401.6" cy="241.7" r="1.1"/>
+        <circle cx="392.5" cy="313.1" r="1.3"/>
+        <circle cx="395" cy="297.1" r="1.3"/>
+        <circle cx="408.2" cy="334.5" r="1.3"/>
+        <circle cx="402.4" cy="336.4" r="1.3"/>
+        <circle cx="446.7" cy="367.6" r="1.3"/>
+        <circle cx="449.6" cy="374.7" r="1.3"/>
+      </g>
+    </g>
+    <g stroke="#24420e">
+      <path fill="none" stroke-width=".4" d="M561.1 259c.7.6 1.2.8 2.3 1.9m-6.6-19c0-1.3-.6-3.6-.9-5m3.5 3c0 2-.3 3.8-1.1 5.5m-4.2-.5c1.8 1.6 3.5 3 5.3 3.9m3.8 1.2c.1 2-.1 4-.7 6m.4 1.5l1.3-2.3m-1.9 12.2c1.4.3 2.8 2 3.5 3.5m.5-1.3l1.6-2.2m1.7 30.8a23.9 23.9 0 01-2.4 3.4m-4 0c.8 1.4 1.6 3 2.6 4m2.5 5.9a13.2 13.2 0 01-4.5 4m.2 4.5c-1.1.8-2.5 3-3.7 4.7m8.4-20.2l-2.1.9m-1.4-7.5l1.3 1.1m-9.3 37.4H555m-2-1.8l.7 1.6m-7.8 5.1c-.2 1.9 0 3.7.2 5.6m4.3-9l1 2.2m3.9-.2l-2.5.5m-30.9 25.2l-1 1.8m12-4c-1.5.2-2.8 0-4.1-.2m-5.5 6a27.3 27.3 0 00-3-1m-14.6 2.7c-1 .7-2 2.4-3.1 4m-.6-4.5c-2.4 1.3-3.1 3.7-4.4 5.8m2.8 2.9a52.4 52.4 0 01-5.3-2m16.7-.8c-2.3-1.2-4.7-1-7.1-1.4m10.8-.4c-3.7-.7-7-.6-10.3-.1m7.8-2.6l-1.4-.6m-5.6 5.5l-2.3-1.3m58-49.2c-1.3.8-2.6 2.3-3.8 3.9m1.8-79.6l-2.1-.8"/>
+      <g stroke-width=".2">
+        <path fill="#406325" d="M474.4 384.9a8 8 0 013.3-2.7c7.7-4 15.4-5.8 24-7.2 2.1-.4 4.1-2.3 6.2-3.2 5-2.4 10.5-3.3 15.3-5.7a7.8 7.8 0 002-1.6c2-2.2 5.5-2.9 7.6-5 8.4-7.8 17.2-15 21.8-25.5 5.6-12.7 12.5-25.8 11.6-40.2-.6-9.2.7-18.4-1.5-27a104.8 104.8 0 00-15.4-36.4l1.3.8a103.8 103.8 0 0115.4 36.3c2.3 8.7 1 18 1.5 27.1 1 14.4-6 27.5-11.5 40.3-4.6 10.4-13.5 17.6-21.8 25.5-2.2 2-5.6 2.7-7.6 5a10 10 0 01-2 1.5c-4.9 2.5-10.4 3.4-15.4 5.7-2 1-4 2.8-6 3.2A76.4 76.4 0 00479 383a8 8 0 00-3.3 2.7l-1.3-.9"/>
+        <g fill="#406325">
+          <path d="M553.6 334.6c2.8-7.4 0-24.8-1.4-27-6.7 15.4-3.4 27.6 1.4 27z"/>
+          <path d="M546.5 341.6c2.3-5.6.6-19.3-.4-21-5.6 11.7-3.3 21.3.4 21zm16.8-74.1a47 47 0 00-19.2-14.6c6.2 13.3 16.5 18.2 19.2 14.6z"/>
+          <path d="M561.8 259.5a43.3 43.3 0 00-14.5-16.7c3 13 11.4 19.3 14.5 16.7zm4.7 15c-3.5-4.1-15.2-8-17-7.8 7 9 15.6 10.9 17 7.7zm-2.8 46.3a40 40 0 0020.3-5.7c-12.9-2.8-21.5 1.9-20.3 5.7zm-.1-5.7c0-5.6-6.4-16.8-8-18-.6 12 4.8 19.5 8 18z"/>
+          <path d="M564 301.4a50 50 0 00-10.6-23.6c-.8 16.2 6.3 25.8 10.6 23.6zm-53 75.3a47.7 47.7 0 0022.2 11c-8.8-12.3-20.1-15.1-22.1-11z"/>
+        </g>
+        <g fill="#67923d">
+          <path d="M553.6 334.4c-4.9.6-8.1-11.4-1.4-26.8-.5 14.2.2 25.7 1.4 26.8zm-53.4 43.7a48 48 0 0121.8 11.4c-15 .1-24-7.3-21.8-11.4zm0-8c2-8 15-21.2 17.5-22.1-3.6 17.1-13.7 25.5-17.5 22.2zm21.3-4.2c-1-7.8 5.6-24.2 7.5-26 3 16.5-3 27.6-7.5 26zm21.4-14.5a48.8 48.8 0 0121.7-11.2c-8.9 12.1-19.9 15.1-21.7 11.2zm25.8-53.3c1-6.3 9.7-17.9 11.6-18.9-1.2 13.6-8.3 21-11.6 19z"/>
+          <path d="M557 336.2a50.4 50.4 0 0124.4-5.5c-11.8 9.7-23.5 9.8-24.4 5.5zm10.3-24.5a44 44 0 0117.7-14.4c-5.8 13-15.3 17.8-17.7 14.4zm-1.5-45.6c0-7.6 8-22.7 10-24.2 1.1 16.1-5.7 26.2-10 24.2zm-7-26a40.6 40.6 0 010-20c5.5 11 3.7 20.2 0 20zm-4.1-2.1a49.8 49.8 0 01-10.5-22.1c11.8 9.3 14.4 20.4 10.4 22.1z"/>
+          <path d="M566.3 272.5c-.3.9 3-7.7 14.2-15.3-4 14.3-11 18.3-14.2 15.3zm-34.1 90c7-5.2 26.5-7.7 29.2-6.8-14.2 11.8-28.2 12-29.2 6.7zm14.3-20.9c-3.7.2-6-9.3-.5-21-.7 11-.4 20 .5 21zm16.9-74c-2.7 3.5-13-1.3-19.2-14.7a78.8 78.8 0 0019.2 14.6zm-1.7-8.1c-3.1 2.6-11.3-3.6-14.4-16.7 6.7 9.4 13 16.5 14.4 16.7zm4.8 15c-1.4 3.2-9.9 1.3-16.9-7.7 10.4 5.9 14.5 8.5 17 7.7zm-2.6 46.2c-1.3-3.7 7.3-8.3 20.2-5.5a69 69 0 00-20.2 5.5zm-.4-5.6c-3.2 1.5-8.5-5.9-8-17.9a68.5 68.5 0 008 18z"/>
+          <path d="M563.9 301.6c-4.2 2.2-11.3-7.4-10.5-23.5 4.4 12.8 9 22.9 10.5 23.5zm-52.7 75c2-4 13.1-1.3 22 11a80.3 80.3 0 00-22-11z"/>
+        </g>
+        <g fill="#406325">
+          <path d="M521.5 365.8c4.6 1.6 10.5-9.4 7.6-25.9-2.8 14-6.2 25.1-7.6 26z"/>
+          <path d="M531.8 360.6a55 55 0 004.6-27c-10 13.6-9.4 26.3-4.6 27zM500.1 378c-2 4.1 6.7 11.5 21.8 11.3a80.2 80.2 0 01-21.8-11.3zm.2-8c3.8 3.3 13.8-5 17.4-22.1-8.1 12.4-15.7 21.8-17.4 22zm42.7-18.7c1.8 4 12.7 1 21.7-11.1a84.5 84.5 0 01-21.7 11.1zm25.8-53.3c3.3 2.1 10.3-5.3 11.5-18.8a74.6 74.6 0 01-11.5 18.8zM557 336.2c.9 4.4 12.4 4.2 24.3-5.5-12.5 4-23 6.2-24.3 5.5zm10.3-24.6c2.5 3.4 11.9-1.4 17.7-14.4a75.1 75.1 0 01-17.7 14.4zM566 266c4.3 2 11-8 10-24-4.2 13-8.5 23.3-10 24zm-7-25.9c3.6.1 5.5-9 0-20 .9 10.5.8 19.1 0 20zm-4.2-2.2c4-1.7 1.4-12.7-10.4-22a81.8 81.8 0 0110.4 22zm11.6 34.7c3.2 3 10.2-1 14.2-15.4-7.8 10.1-12.7 15.2-14.2 15.4zm-34 89.9c1 5.2 14.9 5 29-6.7-14.9 4.8-27.4 7.6-29 6.7z"/>
+          <path d="M539.1 354.8a41 41 0 003.6-20.1c-7.5 10-7.2 19.5-3.6 20zm19.6-28.7a44.3 44.3 0 003-23c-8.3 11.9-7.3 22.7-3 23z"/>
+        </g>
+        <path fill="#67923d" d="M531.8 360.5c-4.8-.6-5.3-13.3 4.5-26.8-3.6 13.8-5.4 25.4-4.5 26.8zm35.2-68.3c-1-7.7 4-20.1 6.6-22.5 2.5 14.4-2.7 24-6.7 22.5zm-28 62.5c-3.6-.5-3.9-10 3.5-20a67.5 67.5 0 00-3.5 20zm23.4-104.2c-2.2-6 0-20 1.2-21.8 5.3 12.2 2.6 22.1-1.2 21.8zm-58.1 120.1c2.5-8 16.2-21 18.8-21.9-4.3 17.4-15 25.5-18.8 22zm54.5-41.6a45.1 45.1 0 0117-15.8c-5 13.6-14.3 19.1-17 15.8zm-.1-3c-4.3-.4-5.3-11 3-22.9a72.8 72.8 0 00-3 22.9z"/>
+        <path fill="#406325" d="M567 294c5.2 1.9 9-9.8 6.6-23.9a98.2 98.2 0 01-6.6 24z"/>
+        <path fill="#406325" d="M567.8 293.6c.5-7.5-7-23-9-24.7-2 15.8 4.5 26.3 9 24.7zm-5.2-43.2c3.8.4 6.4-9.4 1.1-21.7a73 73 0 01-1.2 21.7zm-58.1 120.1c3.8 3.6 14.4-4.4 18.7-21.8-8.8 12.3-17 21.6-18.7 21.8zm54.6-41.5c2.8 3.3 12-2.1 17-15.8a77.8 77.8 0 01-17 15.8z"/>
+        <path fill="#67923d" d="M567.7 293.5c-4.5 1.7-10.9-8.7-8.9-24.5 3.5 13.2 7.5 23.7 8.9 24.5z"/>
+      </g>
+      <g fill="#ba1f3e" stroke="#511124" stroke-width=".2">
+        <circle cx="564.6" cy="254.9" r="1.1"/>
+        <circle cx="568.4" cy="266.8" r="1.1"/>
+        <circle cx="569.8" cy="304.3" r="1.3"/>
+        <circle cx="564.6" cy="297.3" r="1.3"/>
+        <circle cx="549.9" cy="337.2" r="1.3"/>
+        <circle cx="556.2" cy="339.9" r="1.3"/>
+        <circle cx="513.8" cy="372.3" r="1.3"/>
+        <circle cx="506.8" cy="377.3" r="1.3"/>
+        <circle cx="557" cy="249.3" r="1.1"/>
+      </g>
+    </g>
+    <g id="b" fill="#8c959d" stroke="#485654" stroke-width=".1">
+      <path d="M434.3 336.3c-.2 1 .8 2.3 2 2 .5 0 .7-.5.2-.5-.4.1-.9 0-1.2-.3a1.7 1.7 0 01-.4-2l-.6.8z"/>
+      <path stroke="none" d="M437.2 338.3c-1 1.2-2.5 1.7-3.4.9-.6-.6-.8-1.2-.5-2l-1 1.3a4.4 4.4 0 001.6 1.8c1.2.5 3-.3 4-1.6.8-1 1.6-2.4 1-3.6a4 4 0 00-2-1.7l-1 1c.5-.2 1.2 0 1.7.4 1.3 1 .5 2.5-.4 3.5z"/>
+      <path fill="#485654" stroke="none" d="M437.2 338.3a4 4 0 01-1.1 1c-.5.2-1 .4-1.5.3a1.5 1.5 0 01-.7-.3 2.4 2.4 0 01-.5-.6 1.6 1.6 0 01-.3-.7c0-.3 0-.5.2-.8l.1.1-1.1 1.2c.3.4.6.9 1 1.2l.7.5a2 2 0 00.8.1 3 3 0 001.6-.5 5.1 5.1 0 001.3-1l1-1.4c.2-.5.3-1 .3-1.6a1.8 1.8 0 00-.2-.8 3 3 0 00-.5-.6 4.2 4.2 0 00-1.4-1h.1l-1 1.1h-.1c.2-.2.5-.2.8-.2a2 2 0 011.6 1.4c.1.5 0 1-.2 1.4a5.1 5.1 0 01-.9 1.2zm0 0c.4-.3.6-.7.8-1.2.2-.4.3-1 .2-1.4a2 2 0 00-.9-1c-.4-.3-1-.4-1.3-.2h-.1l1-1.2a4.2 4.2 0 012 1.6c.2.3.3.6.3 1 0 .5-.1 1-.4 1.6a6.4 6.4 0 01-1 1.4c-.3.5-.8.8-1.3 1.1-.5.3-1 .5-1.7.5a2.2 2.2 0 01-.8-.1 2.7 2.7 0 01-.8-.5 5 5 0 01-1-1.4l1-1.3h.2l-.1.8c0 .2 0 .5.2.7l.5.5.6.3c.5.1 1 0 1.5-.3a4 4 0 001.1-.9z"/>
+      <path fill="#6c301e" stroke="#351710" stroke-linejoin="round" stroke-width=".2" d="M515.2 249.3l-40.1 39.5L434 328l-4.6 5.4c-2 2.3-4.4 5.3-7.2 8-.4.6-1.1.4-1.7.8a23.4 23.4 0 00-5 4.3L403.2 360c-.7.9-1 1.4-.4 2l6.6 8.8c1.2 1.2 2.6 1.8 3.2.8 3.1-5.5 11-13.8 14-20.3 1.7-4 3.9-11.1 5.5-12.8 2-2.2 7.1-7.8 11.8-12.7l1-1 .9-1c23.5-24 50.7-53.1 70.5-73.6l-1-1z"/>
+      <path d="M431.9 328.1c-1.2 0-2-.7-2.9-1.4 1.2.4 2.4.8 3.5.4l-.6 1z"/>
+      <path fill="#b2b6ba" stroke-width=".2" d="M557 220.1l-31.8 26.2c-.3.4-.6.3-.9 0l-2.9-2.4v-.6l1.4-1.4c.2-.2 0-.3-.1-.6l-.6-.6c-.3-.1-.5 0-.7.2l-1.4 1.5c-.7 0-1.3.6-1.4 1.4-19.2 18.7-35.8 35.4-54.9 53.8l-22.6 21.6c-.8 1-4.3 2.9-6.6 4.4a5.6 5.6 0 00-1.8 1.5l-1.8 5.5-2.5 4.2c2.3 2.4 2.2 2.2 3.8 3.7l11.2-11.9.8-1a13.2 13.2 0 00-1.4-1.6 34.1 34.1 0 00-1.2-1l-.6-.6c-.2-.2.2-.5.4-.7 26.5-25.5 55-53.7 78.3-76.6a1.4 1.4 0 001 0l2.8 3.2c.6.6 1.2.6 1.7.4l31.9-28.6z"/>
+      <path fill="#485654" stroke="none" d="M431 330.4h.5a1.5 1.5 0 00.6-.1 124.9 124.9 0 011.5-4.8 1.5 1.5 0 00-.7-.4c.3 0 .5.2.7.4l-.7 2.4-.7 2.4a1.4 1.4 0 01-.6.2 2.9 2.9 0 01-.7-.1z"/>
+      <circle cx="438.2" cy="328.1" r=".6" fill="none" stroke-width=".2"/>
+      <circle cx="434.4" cy="331.9" r=".6" fill="none" stroke-width=".2"/>
+      <path fill="#485654" stroke="none" d="M441 322.4l-1-.8a11.6 11.6 0 01-.8-.8 11.4 11.4 0 011.8 1.6z"/>
+      <path d="M502.2 259l3.5 3.5.6-.6-3.5-3.4-.6.6z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-177.2 487 -.2)" xlink:href="#b"/>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#67923d" d="M434 365.4a55.9 55.9 0 00-29.3.9c16.3 8 29.5 4.6 29.2-1zm89 3.3a55 55 0 0129.2 1c-16.3 7.9-29.6 4.5-29.3-1z"/>
+      <path fill="#406325" d="M433.8 365.5c.3 5.5-12.8 8.9-29.1.9 15.3 1 27.8.4 29-1zm89.3 3.3c-.3 5.5 12.8 8.9 29 .9-15.2 1-27.7.4-29-1z"/>
+    </g>
+    <g id="c">
+      <path fill="#b2b6ba" stroke="#485654" stroke-width=".2" d="M508.5 360a237.5 237.5 0 00-76.1-68c3.6-.2 11.5 3.9 14.7 6 23.9 15.4 44.3 35.7 65.6 59.8a35.1 35.1 0 01-3.4 3l-.8-.8z"/>
+      <path fill="#8c959d" d="M510.6 359.8L509 361c-23-29.6-55.1-57.9-76.7-69.1 30.1 13.9 55.4 41.8 78 67.7h.2z"/>
+      <path fill="#485654" d="M510.6 359.8L509 361a302.3 302.3 0 00-16.9-19.7 336 336 0 00-18.3-18.3 284.2 284.2 0 00-19.8-16.8 195.9 195.9 0 00-10.6-7.6c-3.6-2.3-7.3-4.6-11.1-6.6v-.2a136 136 0 0122.5 13.3 210.9 210.9 0 0120 16.6 360 360 0 0118.3 18.5c6 6.4 11.6 13 17.4 19.4zm0 0a899.3 899.3 0 00-17.5-19.4 360.2 360.2 0 00-18.3-18.5 212 212 0 00-20-16.6 134.7 134.7 0 00-22.4-13.2v-.2a200.9 200.9 0 0121.7 14.3A285 285 0 01474 323a336 336 0 0118.3 18.3 302.3 302.3 0 0116.8 19.8l1.5-1.4z"/>
+      <g fill="#fab81c" stroke="#6c301e" stroke-width=".1">
+        <path stroke-width=".2" d="M517.5 355a18.3 18.3 0 00-5.3 2.3c-.2 1.4-2 3-3.6 3.3l-.5-.8a.1.1 0 00-.2 0 7.2 7.2 0 00-.6.3c-.6 0-1.3.2-1.6 1-.4 1 .4 2.3 1.2 3.1 1 .7 1.4 1 2.4 1 1.1-.3 1.7-1.3 2-1.6 3.7 4.5 6.5 7 11.2 10.6 2.1 0 3.2-1.3 2.5-2.8-.2-.5-.8-.8-1.3-.6v-.5c2.4-2.2 3.5-5 .9-9.9-2.2-4-4.7-5.3-7-5.3zm6.3 4.6l1 2c1.5 3 .2 6.6-2.4 7.8h-.2c.4-.7-.8-2.2-1.4-1.7.3-.7-.7-2-1.5-1.7.4-.7-.5-1.9-1.4-1.5.4-.7-.3-1.8-1.3-1.6.3-.9-.4-1.8-1.3-1.6 0-.8-.2-1.2-.5-1.5 1-.8 2.3-2.1 3.4-2.7 2.7-1.2 4.4 1 5.5 2.5z"/>
+        <path d="M524.9 362.8c-.5-.3-.8-.8-.6-1.1.2-.4.7-.5 1.2-.2.5.2.8.7.6 1-.1.4-.7.5-1.2.3z"/>
+        <path d="M524.6 361.8c-.5-.3-.8-.8-.6-1.2.2-.3.7-.4 1.2-.1.5.2.8.7.6 1-.1.4-.7.5-1.2.3z"/>
+        <path d="M524 360.6c-.5-.2-.8-.7-.6-1 .2-.4.7-.5 1.2-.3.5.3.8.8.6 1.1-.1.4-.7.5-1.2.2z"/>
+        <path d="M523.2 359.6c-.5-.3-.8-.8-.6-1.1.2-.3.7-.4 1.2-.2.5.3.8.8.7 1.1-.2.3-.8.5-1.3.2z"/>
+        <path d="M522.2 358.6c-.6-.2-.8-.8-.6-1v-.2c.2.1.7.2.6-.1 0-.2-.1-.3 0-.2l.6.2c.5.3.8.8.6 1.1-.2.4-.7.5-1.2.2z"/>
+      </g>
+      <path fill="#fab81c" d="M511.3 363.6c.6-1.8 2-3.4 3.5-3.8m-3.3 4c1.3.3 3.3-1.2 3.8-2.5m-2.6 4c1.6.4 3.3-1.2 4-2.4m-2.5 4c2 0 3.1-1.3 3.7-2.4m-2.2 4c1.6 0 3.2-1.4 3.6-2.5m-2.2 3.8a4 4 0 003.7-2m-2 3.4c1.6.1 3-.9 3.4-1.8m-1.6 3.3c1.6 0 2.7-1 3.1-2"/>
+      <path fill="#6c301e" d="M511.3 363.6a7.1 7.1 0 011.3-2.3l1-1 1.2-.5a4 4 0 00-1.2.6l-1 1a9.3 9.3 0 00-1.3 2.2zm.2.3c.4 0 .8 0 1.2-.2a4.9 4.9 0 001-.6l1-.8.6-1a2 2 0 01-.6 1 5 5 0 01-1 .9 4.6 4.6 0 01-1 .5 2.1 2.1 0 01-1.2.2zm1.2 1.4h1.2l1-.6a6.2 6.2 0 001.7-1.8 4.7 4.7 0 01-.7 1 5.2 5.2 0 01-.9.9 3.7 3.7 0 01-1 .5h-1.3zm1.5 1.6a4.2 4.2 0 001.1-.2 3.8 3.8 0 001-.5 4.7 4.7 0 001-.8l.6-1a4.5 4.5 0 01-1.5 1.9 3.4 3.4 0 01-2.2.6zm1.5 1.5a4.1 4.1 0 002.1-.8 5.1 5.1 0 001.5-1.6c-.1.3-.3.7-.6 1l-.8.7a4.2 4.2 0 01-1 .5c-.4.2-.8.2-1.2.2zm1.5 1.4a7 7 0 001-.2 4.6 4.6 0 001-.4 3.6 3.6 0 001.6-1.5l-.6 1c-.3.2-.6.5-1 .6a4.5 4.5 0 01-2 .5zm1.6 1.4h1a4 4 0 001-.5l.8-.5c.3-.3.5-.5.6-.8a2.5 2.5 0 01-.5.8 3.6 3.6 0 01-.9.6 3.7 3.7 0 01-2 .4zm1.8 1.5a4 4 0 001-.1 3.3 3.3 0 001.6-1 4 4 0 00.5-.8 3 3 0 01-1.2 1.5 3 3 0 01-1 .3 3 3 0 01-1 0z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-176.6 490 -.4)" xlink:href="#c"/>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#406325" d="M409.2 240a52.4 52.4 0 0019.5-17.9c-15.6 4.2-22.7 14.4-19.5 18zm145.8 4.7a50 50 0 00-15.6-19.9c2.8 15.2 12 22.8 15.6 20z"/>
+      <path fill="#67923d" d="M409.2 240c-3.3-3.5 3.8-13.6 19.4-17.8-11 8.4-19.2 16.2-19.4 17.8zm145.8 4.7c-3.7 3-12.7-4.6-15.5-19.7 7.2 11 14 19.5 15.5 19.7z"/>
+    </g>
+    <g stroke="#999270" stroke-width=".2">
+      <path fill="url(#d)" d="M452.2 318.1s-6.2.7-7.9-7.8c-1.8-9.1 5.3-10 5.3-10s8.1-.9 13.2-1l2.2 18-12.8.8z"/>
+      <path fill="url(#e)" d="M453 315.4s-4 .7-4.8-5.6c-.6-4.5 2.2-5.1 2.2-5.1l9.2 1.6v8.2l-6.6.9z"/>
+      <path fill="url(#f)" d="M450.4 304.7s5.9-.4 9-.8l1.3 5.7-7.1.4s-.5-5.1-3.2-5.3z"/>
+      <path fill="url(#g)" d="M449.2 300.4s7.5-1.9 8.5 6.5c.2 2.1-1 7.1-4.7 8.5l13.9-1.5-1.3-15-4.6.4s-10 .3-11.8 1z"/>
+      <path fill="#f9f0aa" d="M452.2 318.1s51.9-3.5 57.2-3.3c15.8-8.6 0-42.5-13.3-61.5 1.5-4.3-29.9-13.9-44-13-1.9 0-3.6.2-5.2.3-7.7.8-7.8 10.7-4.7 17 3 6 30.3 55 11.2 60.3l-1.2.2z"/>
+      <path fill="url(#h)" d="M507.8 273.3a148.3 148.3 0 00-11.7-20c1.5-4.3-29.9-13.9-44-13-1.9 0-3.6.2-5.2.3-7.7.8-7.8 10.7-4.7 17 1 1.8 4.3 8 7.9 15.7"/>
+      <path fill="url(#i)" d="M455 285c5.6 14.6 8.7 30-1.6 32.8l-1.2.3s52-3.5 57.2-3.3c8.6-4.7 7.8-16.8 3.2-30"/>
+      <path fill="url(#j)" d="M447.4 243.5c-3.7 0-4.7 3.6-4.6 5.8.1 6 4.6 6.2 4.6 6.2l6-.3 2.8-12.2-8.8.5z"/>
+      <path fill="url(#k)" d="M447.4 243.5l8.8-.5 1 9.1-7.8.4s2.5-7.3-2-9z"/>
+      <path fill="url(#l)" d="M496.1 253.3c6.7-1 6.6-10 2-13.7-15.5-.5-35.9-.1-50.6 1 1.7 0 6.3.4 6.9 6.5a8.2 8.2 0 01-3 7c-2 1.4-4 1.4-4 1.4h3.6l3-.4c21-2.7 42-1.8 42-1.8h.1z"/>
+      <path fill="#b07e09" stroke="none" d="M458.5 267.4c-.2-.3-.3-.7-.8-.8-.2 0-.6 0-.5-.4h.8l1.6-.2c.4.1.3.6 0 .5-.5 0-.2.5-.1.8l1.3 3c.1.4.4.7.7.7l1.1-.1c.3-.2.2-.6.2-1-.1-.3.5-.2.5 0l.4 1.4c0 .2-.2.1-.4.1l-3 .2c-.3 0-.8.3-1 0 0-.4.6-.2.6-.5l-.3-1-1.1-2.7zm4.8-.3c-.1-.3-.3-.7-.7-.8-.2 0-.6 0-.6-.4h.7l1.7-.2c.3 0 .4.5 0 .4-.3 0-.3.4-.2.7l1.5 3.4c0 .2.2.5.5.6.3 0 .7 0 .7.3 0 .2-.4.1-.6.1a6.6 6.6 0 00-1.6.2c-.2 0-.5 0-.5-.3s.5 0 .6-.4c0-.3-.2-.6-.4-1l-1.1-2.6zm4.5.7c0 .2.4 0 .5 0 .3 0 .6-.1.6-.4a1.7 1.7 0 00-.7-1.2c-.3-.3-.8-.2-1.1-.2l.1.5.6 1.3zm.6 1.6c.2.3.3.7.6 1 .2.2.6.1.8 0 .3 0 .5-.3.4-.5-.1-.7-.5-1.3-1.2-1.5a2.4 2.4 0 00-1 0l.2.5.2.5zm-2-2.4c-.2-.3-.3-.7-.7-1-.2 0-.6.1-.7-.2 0-.3.6-.1.8-.2.9 0 1.7-.3 2.6 0 .7.2 1.4.8 1.5 1.6 0 .4-.3.7-.6.8l.5.1c.6.2 1.1.6 1.4 1.1.2.4.3 1 0 1.4-.4.4-1 .4-1.4.4-.8 0-1.5 0-2.3.2-.2 0-.4-.5 0-.5.3 0 .3-.4.2-.6l-1.3-3zm7.4-1.9c.3 0 .4.3.5.5l.3.9c-.3.2-.5-.2-.6-.4-.1-.2-.4-.5-.7-.4a8.3 8.3 0 00-1.2 0c-.2.2 0 .4.1.6l.6 1.3c.2 0 .6 0 .8-.2 0-.2-.3-.7.2-.6.3.2.2.6.4.9l.5 1.1c-.3.3-.5-.1-.6-.4-.2-.3-.7-.3-1-.3-.2 0 0 .2 0 .3l.6 1.5c.2.3.7.3 1 .3.4 0 .8 0 1-.4.2-.2-.3-.7 0-.8.4 0 .4.4.5.6 0 .3.2.6.3.8 0 .2-.3.2-.4.2l-3 .2c-.4 0-.9.2-1-.2 0-.3.6-.1.6-.6l-.4-1-1.1-2.6c-.2-.3-.4-.6-.8-.7-.2 0-.6 0-.4-.4h1l2.8-.2zm2.3 1.3c-.1-.3-.3-.7-.7-.9-.2 0-.7 0-.7-.4.3-.2.7 0 1 0 .8 0 1.6-.3 2.4 0 .8.2 1.5.9 1.6 1.8 0 .4-.3.7-.7.8-.3 0 .2.1.3.2.7.3 1 .9 1.4 1.5.1.2.5.7.6.2 0-.5.7 0 .5.3 0 .4-.3.6-.7.6-.4 0-.9-.2-1.1-.6-.4-.6-.7-1.3-1.3-1.7-.2-.2-.5-.3-.8-.1v.4l.6 1.2c.2.3.6.3 1 .3.3.1.2.6-.2.5h-1.7c-.3.2-.9 0-.7-.3.3 0 .7-.2.5-.5l-1-2.6-.3-.7zm1.4 1c.2.3.6 0 .9 0 .3 0 .3-.5.2-.7-.1-.5-.4-1-.9-1.2-.2 0-.8-.2-.9.1l.7 1.6v.1zm7.2 1.6c.2.3.3.6.6.7.2 0 .6 0 .7.3 0 .3-.4.1-.6.2a7 7 0 00-1.6 0c-.3.1-.6 0-.6-.3.2-.2.7 0 .7-.4l-.5-1.1-1.1-2.9c-.1-.3-.5-.3-.7-.3-.3 0-.7 0-.7.4 0 .3.2.7 0 .8-.3 0-.4-.3-.5-.5l-.3-1c0-.2.3-.1.4-.1l4.2-.2c.3 0 .5.2.5.5s.3.6.4 1c-.1.3-.5 0-.5-.3-.2-.3-.6-.6-1-.7-.2 0-.6 0-.8.2l.2.7 1.2 3zm3.8-.9c-.2 0-.1.3-.1.4v.8c.1.3.5.3.8.4.2 0 .1.5-.2.4h-1.2c-.3.1-.7-.1-.5-.4.2 0 .4-.1.5-.3v-5c.2-.3.6 0 .6.1l3.6 4.6c.2.2.5.4.8.4.3 0 .4.5 0 .4h-1.5c-.2 0-.5.2-.7 0-.2-.1 0-.4.2-.4.3 0 0-.4-.1-.6l-.6-.8h-1.6zm1.1-.5c.2 0 0-.1 0-.2l-1.3-1.7v2h1.3zm3.1-1.8c-.1-.4-.3-1-.8-1-.3 0-.7-.2-.5-.5h1.7c.7 0 1.4 0 2 .2a4.3 4.3 0 013 3.4c0 .6-.1 1.3-.6 1.6-.8.5-1.7.4-2.5.3l-1.4.1c-.3 0-.4-.5 0-.4.4 0 .4-.5.2-.7l-1.1-3zm2 2.5c.1.3.2.7.5 1h1c.5 0 .7-.5.7-.9a4.3 4.3 0 00-.6-2.1 2.7 2.7 0 00-1.8-1.4h-1c-.1 0 0 .2 0 .4l1.2 3zm-21.1 12.4c0 .3.4.6.8.6.2 0 .7 0 .7.4-.2.2-.5 0-.8 0a8.6 8.6 0 00-1.5.2h-.9c-.2 0-.2-.4.1-.4.3 0 .6-.1.7-.4 0-.3-.2-.6-.3-.8l-1.2-2.8c0-.3-.4-.3-.7-.3-.2 0-.6.1-.7-.2 0-.3.5-.2.7-.4l1-.3c.2 0 .3.1.4.3l1.7 4zm.7-4.5h2c.4 0 .2-.5.4-.5.4 0 .4.5.4.7a.5.5 0 01-.6.6H475l.5 1.2.6-.2a2.8 2.8 0 012.6 1.6c.2.4.3 1 0 1.5-.4.5-1 .6-1.6.6-.5 0-1-.1-1.4-.6-.1-.2-.1-.7.2-.6.4 0 .7.2.7.6.1.2.5.1.7.1.3 0 .6-.2.6-.6 0-.4-.2-1-.5-1.3-.2-.4-.7-.7-1.2-.7l-.9.1c-.3 0-.3-.3-.4-.5a23.9 23.9 0 01-.7-1.9s.1-.2.2-.1zm6.9 1c-.2-.4-.4-.9-.9-1-.2 0-.7-.2-.4-.4h1.6a3 3 0 012.1.1 4.3 4.3 0 013 3.4c0 .6-.1 1.2-.7 1.5-.7.5-1.6.4-2.4.4l-1.3.2c-.3 0-.4-.5 0-.5s.3-.4.2-.7l-1.2-3zm2 2.4c.2.4.3.8.6 1 .3.2.6.1 1 0 .4 0 .6-.5.6-.9a4 4 0 00-.7-2.1 2.6 2.6 0 00-1.8-1.3 3 3 0 00-1 0v.3l1.3 3zm6.4-4.2c.3 0 .4.3.5.5 0 .3.2.5.3.8-.2.3-.5 0-.6-.3-.1-.2-.3-.5-.6-.5a9.7 9.7 0 00-1.3 0c-.2.2 0 .5 0 .6l.6 1.4c.3 0 .6 0 .8-.2.2-.2-.2-.7.2-.6.4 0 .3.5.4.8l.5 1.1c-.1.4-.5 0-.6-.3-.1-.3-.5-.3-.8-.3-.2 0-.4 0-.2.2l.6 1.5c.2.4.7.3 1 .3.4 0 .8 0 1-.3.2-.2-.2-.6 0-.8.4 0 .5.3.5.5l.3 1c0 .1-.3 0-.4 0l-3.1.2c-.3 0-.7.2-.9 0-.2-.5.5-.3.6-.6l-.3-.9-1.1-2.9c-.2-.3-.4-.6-.8-.7-.2 0-.6 0-.4-.4h1l2.8-.1zm-27.2 14.3c.1.5.6.7 1 .8.8.2 1.7.5 2.2 1.1.3.4.5.9.5 1.4 0 .5-.5.9-1 1a2.5 2.5 0 01-1.7-.1c-.2-.1-.1.4-.4.2-.3-.1-.2-.5-.4-.8a9 9 0 00-.3-1c0-.3.4 0 .5.2.3.6.9 1 1.6 1.1.4 0 .8-.2.8-.6 0-.5-.4-1-.8-1.2-.7-.3-1.4-.4-2-.8a2 2 0 01-1-1.6c0-.4.4-.8.8-.9a2.6 2.6 0 011.6 0c.2 0 .3-.3.6-.1 0 .2 0 .4.2.6l.3.9c-.2.2-.5 0-.5-.2-.3-.4-.6-.8-1-.8s-.8 0-1 .3v.5zm6.6-1.7c.4 0 .4.3.5.5 0 .3.2.6.3.8-.2.3-.5 0-.6-.2-.1-.2-.3-.5-.7-.5h-1.2c-.2.2 0 .4 0 .6l.5 1.4c.3 0 .6 0 .8-.2.2-.2-.2-.6.1-.7.4 0 .4.4.5.7 0 .4.3.8.5 1.3-.2.3-.6 0-.6-.3-.1-.3-.5-.4-.8-.3-.2 0-.4 0-.3.2l.6 1.5c.1.3.4.3.7.3.4 0 .9 0 1.2-.3.2-.2 0-.6 0-.8.3-.2.6 0 .6.3l.2 1c0 .2-.3.2-.4.2l-3 .2c-.4 0-.8.3-1 0 0-.4.5-.3.6-.6 0-.3 0-.5-.2-.8l-1-3c0-.3-.3-.6-.7-.6-.2 0-.6-.2-.4-.4h1l2.8-.3zm4.2 4.2c.1.3.3.6.6.7.3 0 .7-.1.8.2 0 .4-.5.2-.7.2a6.3 6.3 0 00-1.6.1c-.2 0-.5.2-.6-.1 0-.4.5-.2.6-.4l-.1-.8-1-3c-.2-.3-.3-.7-.7-.7-.2 0-.6 0-.5-.4.1-.2.5 0 .7 0 .7 0 1.4-.3 2.2-.2a2 2 0 011.7 1.2c.2.4.2 1 0 1.3-.5.4-1.1.5-1.7.6-.2 0 0 .2 0 .3l.3 1zm-.5-1.8h.6c.3-.1.5-.4.4-.7a2.2 2.2 0 00-.5-1.2c-.3-.3-.8-.3-1.1-.2-.2.1 0 .3 0 .5l.5 1.6zm6.1 1.5c0 .2.2.6.5.6.2 0 .7 0 .7.3s-.5.2-.7.2a7 7 0 00-1.6.1c-.2 0-.5 0-.5-.3.2-.2.7 0 .7-.4l-.3-1.2-1-2.9c0-.3-.4-.3-.7-.2-.2 0-.6 0-.7.3v.8c-.2.2-.4 0-.4-.3a6.6 6.6 0 00-.4-1c0-.3.3-.3.5-.3l4.1-.2c.3 0 .5.2.5.5l.4 1c-.1.2-.5 0-.5-.2-.2-.3-.5-.7-1-.8-.2 0-.5 0-.8.2l.2.6 1 3.2zm2.1-3.3c-.1-.3-.2-.7-.6-.8-.2 0-.6 0-.6-.4.1-.2.4 0 .6 0l1.8-.2c.3-.1.5.4.2.4s-.6.2-.5.5l.5 1.6.7 2.2c0 .2.3.4.5.4.3 0 .7 0 .6.4h-.7l-1.6.2c-.2 0-.5-.2-.4-.4.2-.1.6 0 .6-.4l-.3-1.2-.8-2.3zm5.8-1.6c.3 0 .3.3.4.5l.2.8c-.1.3-.5 0-.5-.2-.1-.3-.3-.6-.7-.6a9.7 9.7 0 00-1.2 0c-.2.2 0 .5 0 .6l.5 1.4c.2 0 .5 0 .8-.2.2-.2-.2-.6.1-.7.4 0 .4.5.4.7l.5 1.3c-.1.3-.5 0-.5-.2-.1-.3-.5-.4-.8-.4-.1 0-.5 0-.3.2l.5 1.5c.1.3.4.4.7.3.4 0 .9 0 1.2-.2.2-.2 0-.6.1-.9.3-.2.5.1.5.4a9.3 9.3 0 00.3 1c0 .2-.3.2-.5.2l-3 .1c-.3 0-.7.2-1 0-.1-.4.5-.3.6-.5a1 1 0 00-.1-.8l-1-3c0-.3-.3-.7-.7-.7-.2 0-.6-.2-.4-.4h1l2.9-.2zm2 1c-.1-.4-.4-.7-.8-.7-.3.1-.5-.6 0-.4h1.5l.7.9 2.1 2.9v-.3l.4-3.6c.2-.2.7 0 1-.2.3 0 1 0 .8.4-.4 0-.8.2-.6.6l1.2 3.6c0 .4.4.6.8.5.3 0 .3.6 0 .5H494c-.3.1-.8.1-.6-.3.3 0 .8-.2.5-.6l-1-3.2c.1.1 0 .3 0 .4l-.2 3-.1.8c-.3.1-.4-.1-.5-.3l-2.9-3.7.2.3c.3 1 .5 2 .9 2.9 0 .4.5.5.8.5.4.2.1.5-.2.4h-1.5c-.3 0-.3-.4 0-.4.5 0 .4-.5.2-.8l-1-3.3zm8.7.8c0 .2.4 0 .5 0 .3 0 .7 0 .7-.4 0-.5-.2-1-.5-1.2-.4-.3-.8-.2-1.2-.2l.1.5.4 1.3zm.5 1.6l.4 1c.3.2.6.1.9.1.2 0 .5-.2.4-.5 0-.6-.3-1.3-.9-1.5a2.4 2.4 0 00-1 0v.3l.2.6zM496 288c-.1-.4-.2-.8-.6-1-.2 0-.6 0-.6-.3s.5 0 .7-.1c1 0 1.8-.3 2.7 0 .7.2 1.3.9 1.3 1.6 0 .4-.3.7-.7.9 0-.2.4 0 .5 0 .5.2 1 .6 1.2 1.1.2.5.3 1 0 1.4-.4.4-1 .4-1.5.4l-2.3.1c-.3 0-.4-.5 0-.4.3 0 .4-.4.2-.7l-.9-3zm5-.2c0-.3-.2-.8-.6-1-.2 0-.6 0-.6-.3.2-.3.6 0 1-.1h2c.8 0 1.5.6 1.7 1.4.2.4 0 1-.3 1.2l-.5.2c.6.2 1.1.7 1.4 1.2l.5.8c.3.2.3-.1.3-.3.4-.2.6.3.4.6-.1.4-.7.5-1 .4-.4 0-.6-.3-.8-.6l-1-1.7a.9.9 0 00-.9-.2v.5l.5 1.1c.1.4.5.4.8.5.4 0 .4.5 0 .4h-1.8c-.2 0-.6.2-.7 0-.2-.5.4-.3.6-.6l-.2-.8-.8-2.7zm1.3 1c.1.2.6 0 .8 0 .3 0 .5-.3.4-.5 0-.5-.2-1-.5-1.3-.3-.2-.7-.2-1-.1-.2 0-.1.3 0 .5l.3 1.3zm7-2.6c.2 0 .3.3.3.5 0 .3.2.5.3.8-.2.3-.5 0-.5-.2-.2-.2-.3-.6-.7-.6a9.5 9.5 0 00-1.3 0c-.2.1 0 .4 0 .6l.4 1.3h.8c.3-.2-.1-.7.2-.8.4 0 .4.4.4.7 0 .4.3.9.4 1.3-.1.3-.5 0-.5-.2 0-.3-.4-.5-.7-.4-.1 0-.5-.2-.4 0l.5 1.7c0 .3.4.3.7.3.4 0 .9 0 1.2-.2.3-.2 0-.6.1-.8.3-.2.6 0 .5.3l.2 1c0 .2-.3.2-.4.2h-3.1c-.3 0-.6.2-.8 0-.3-.4.3-.3.4-.5.2-.2 0-.5 0-.7l-.9-3.1c0-.3-.3-.7-.6-.7s-.6-.1-.5-.4h1l3-.1zm-32.9 13.1c-.1-.4-.2-.8-.6-1-.3 0-.7 0-.5-.3.3-.2.6 0 1-.1.8 0 1.6-.2 2.4 0a3.5 3.5 0 012.6 2.3c.2.8.3 1.6-.2 2.3-.5.6-1.4.8-2.2.8-.7 0-1.3 0-1.9.2-.2.1-.6-.1-.4-.4.3 0 .7-.2.6-.5l-.4-1.5-.4-1.8zm1.6 2.5c.1.3.2.7.4.9.3.2.7.1 1 0 .4 0 .8-.4.9-.9a4 4 0 00-.4-2.2 2 2 0 00-1.5-1.2 3 3 0 00-1.1 0c-.1 0 0 .2 0 .4l.7 3zm7.1-4.5c.3 0 .3.3.4.5l.2.9c-.1.2-.5 0-.5-.2-.1-.3-.3-.6-.6-.6a9.3 9.3 0 00-1.3 0c-.2.1 0 .4 0 .6 0 .5.2 1 .3 1.4.3 0 .6 0 .8-.2.2-.2-.1-.6.2-.7.4 0 .3.5.4.7 0 .4.3.8.3 1.3 0 .3-.5 0-.5-.2 0-.4-.4-.5-.7-.4-.1 0-.5-.1-.3.1 0 .5.2 1 .4 1.6 0 .3.4.3.7.3.4 0 .9 0 1.2-.3.2-.2 0-.6.2-.8.3-.2.4.1.4.4 0 .3 0 .6.2 1l-.5.1-3 .2c-.3 0-.6.2-.9 0-.2-.2.1-.4.4-.4.3-.1.2-.5.2-.7l-.8-3.2c-.1-.3-.3-.7-.6-.7s-.6-.1-.5-.4l1-.1 2.9-.2zm6.5 4.1c0 .3.3.6.6.6.2.1.6 0 .7.3.1.3-.4.2-.6.2l-1.7.1c-.3 0-.6.1-.8 0-.3 0-.2-.4.1-.4.3 0 .6-.1.7-.4l-.1-.8-.7-2.8c0-.3-.4-.3-.6-.3-.2 0-.6.2-.7-.1 0-.4.5-.3.7-.4l1.1-.4c.2 0 .3.1.3.3l1 4.1zm3.7-3.3c0-.4-.3-.8-.7-.8-.3 0-.7 0-.8.3a1 1 0 00.4 1l.9.5.2-.6a1.4 1.4 0 000-.4zm.8 3c0-.6-.5-.9-1-1-.2 0-.4-.3-.5-.2a1 1 0 00-.4 1c.2.6.5 1 1 1 .4.1.8 0 1-.4a1 1 0 000-.5zm1-.3a1.2 1.2 0 01-.6 1.3 2.4 2.4 0 01-2 .2 1.7 1.7 0 01-1.2-1.3c0-.4.1-1 .6-1.3 0 0 .4-.1.1-.2-.5-.2-1-.6-1-1.2-.2-.5 0-1 .5-1.3a2 2 0 012.6.7c.2.4.2.9 0 1.2l-.6.5c.5 0 1 .4 1.2.8.2.1.3.4.3.6zm3.2.5c.2 0 .5 0 .5-.4.1-.1 0-.6.3-.5.3 0 .2.3.3.6 0 .4 0 .8-.4 1.1-.2.2-.5.1-.8.1h-1.7c-.2 0-.5.2-.7 0-.2-.2 0-.5 0-.7.2-.7.6-1.2 1-1.6.4-.3.8-.6.9-1.1a2 2 0 00-.3-1.2 1 1 0 00-1.4-.3c-.3.1-.4.5-.3.7.2.2.6 0 .7.4.2.2 0 .6-.3.6-.4 0-.8-.3-1-.7a1.2 1.2 0 01.6-1.4c.5-.3 1.1-.3 1.7-.2.5.2 1 .6 1.2 1.2.1.4.1.9-.1 1.3-.4.7-1.1 1-1.7 1.7-.1.1-.2.3-.1.6 0-.3.4-.2.5-.2h1zm4-.4c0 .3.2.6.5.7.2 0 .6 0 .7.2.1.3-.3.3-.5.3h-2.7c-.2-.1 0-.5.2-.4.3 0 .6-.1.7-.4v-.8l-.7-2.8c0-.3-.3-.3-.5-.3-.3 0-.6.2-.7 0-.2-.5.3-.4.5-.5l1.2-.4c.2 0 .3.1.4.3l.8 4.1z"/>
+    </g>
+    <g fill="#448127" stroke="#34541f" stroke-width=".2">
+      <path fill="url(#m)" stroke="#4c0505" d="M475.8 219.4L472 224c-1.2 5.2 1.8 9.2 7.7 12.6 4.7 3 13.5 3.7 16.3 1.3l-13.7-13-6.5-5.4z"/>
+      <path d="M503.6 354.3a322.5 322.5 0 00-2-2.5 100.5 100.5 0 01-32.7 28.6c15.1-4.3 25-15.2 34.7-26.1zM488 390a460 460 0 0118.2-32.3 274.3 274.3 0 00-2.1-2.7c-7.3 12.2-16 26.7-16 35zm42-114.5a62 62 0 00-4.3-13 126.5 126.5 0 00-43.8-44v-.3h.3l-.2-.1h.5l-.2-.3h.4l-.3-.4h.4l-.3-.3h.5l-.3-.4h.4l-.4-.3.6-.1-.5-.3.5-.1-.4-.3.6-.2-.5-.3.6-.3-.6-.4.7-.2-.7-.3.6-.4h-.8l.5-.7h-.7l.3-.5h-.6l.3-.5-.7.1.3-.6-.6.4.2-.7-.7.4.1-.7-.5.5v-.7l-.5.5v-.7l-.5.6v-.7l-.4.6-.2-.7-.3.6-.2-.7-.3.8-.2-.8-.3.8-.2-.7-.2.6-.1-.5-.3.7-.2-.7-.2.8-.3-.7-.2.8-.3-.7v.8l-.4-.6v.8l-.5-.6v.7l-.4-.3.2.7-.5-.3.2.7-.4-.3.1.6h-.4l.2.4h-.3l.2.4a9 9 0 00-.4 3.5c0 .2.6.4.7.6.3.4.2.6.2.6-1.6 2.6-3 4.6-3.1 7.6 1.2-1.6 2.6-3.6 4.4-3.6-.9 1.5-1.3 6.1-.3 6.9l.8-1.4c0 1 .1 1.8.4 2.3l1-1.7c0 1.5.2 2.7.6 3.3a6 6 0 011.6-1.6c-.2.9-.5 1.7-.4 2.7l2-2.5c-.4 1.6 0 2.8.4 4.5.4-2 .6-2.3 1.5-3.1.1 1.9-.2 3.6.2 4.7.8-1.7 1.4-1.5 2-2.6-.2 1.6-.5 3.3 0 4.7a4.5 4.5 0 011.9-2.6c0 2.2.5 1.8-.8 3.7.6.2 2.5-.4 3.6-.9-.5 1.2-.4 2.1-.9 3 1-.6 2-1.5 2.9-2.4-.4 1.4-1.5 2.8-1 4.1.3-1.3 1.3-2.3 2.3-2.5-.2.7-.3 2.2-1.3 2.9 2.4.2 3.4-1.4 4.6-2.7-.1 1.4 0 2.4 1.6 4.3-.3-2.4.2-1.9 1.3-3.3.6 2.1 1.2 4.4 3.4 6-1-2.3-1-3.5-.6-4.9.3 1.5 1.7 3.3 2 4.7.3-1.6.5-3.1 1-4.1a20.2 20.2 0 011.4 5.6c.5-1 .9-2 1.1-3.1 19.8 20.6 24.2 46.8 2.6 74.5 7.7-5.2 9.7-13.5 14-20.6-4.2 9.3-6 19.7-13.5 27.4 7.2-6.2 8.7-11.9 13-17.9-4.5 12.5-11 26.2-19.8 38.8a690.6 690.6 0 014.8 5.2l4-6.9c9.4-15.4 24.7-37.5 17-71.1z"/>
+    </g>
+    <path fill="#eac102" stroke="#a08307" stroke-width=".2" d="M473.2 215.3c-1 .2-1.4.6-2.1 1.4.9.2 1.6.3 2.5.3.2 0 .3-.3.3-.6l-.2-1c0-.2-.6-.1-.8 0l.3-.1z"/>
+    <path fill="#a08307" d="M471 216.7a9.9 9.9 0 011-.3 9.8 9.8 0 011.2-.2 9.8 9.8 0 01-1 .3 10 10 0 01-1.2.2z"/>
+    <circle cx="477.7" cy="215.4" r=".8" stroke="#000" stroke-width=".1"/>
+    <circle cx="477.9" cy="215.3" r=".3" fill="url(#n)"/>
+    <g fill="#34541f">
+      <path d="M488.2 389.7a83.4 83.4 0 011.5-4.4 96.2 96.2 0 011.8-4.4c1.2-2.9 2.7-5.7 4.1-8.4a199.6 199.6 0 014.7-8.2 354.4 354.4 0 012.4-4l2.5-4-2.4 4a400 400 0 00-2.4 4.1l-4.6 8.2a133.7 133.7 0 00-4.2 8.4 98.1 98.1 0 00-1.8 4.3 82.7 82.7 0 00-1.6 4.4zm-18.9-9.5a75.8 75.8 0 005-2.3 72.3 72.3 0 004.6-2.7 72 72 0 008.8-6.5 84.7 84.7 0 007.7-7.5 113.6 113.6 0 003.6-4.1l3.4-4.3a153.8 153.8 0 01-3.3 4.3 111.9 111.9 0 01-3.6 4.2 81.9 81.9 0 01-7.7 7.6 70 70 0 01-8.8 6.4 71.3 71.3 0 01-4.7 2.6 77 77 0 01-5 2.3zm37.3-29.3a138.7 138.7 0 004.3-6.7l4-6.8a341.8 341.8 0 003.7-7l3.7-7-1.7 3.5-1.8 3.6a256 256 0 01-3.7 7 160.5 160.5 0 01-4 6.8 93.5 93.5 0 01-4.5 6.6zm6-25.1a58.4 58.4 0 004.6-6.4 60.2 60.2 0 003.8-7 72.6 72.6 0 005-15l.4-2a61 61 0 00.7-6 52 52 0 000-7.9 50.6 50.6 0 00-1.3-7.8 53.4 53.4 0 00-2.4-7.6 53.5 53.5 0 012.5 7.5 50.5 50.5 0 011.3 7.9c.2 2.6.2 5.3 0 8a61.3 61.3 0 01-.6 6 90.3 90.3 0 01-.4 1.9 72.7 72.7 0 01-5 15 59.9 59.9 0 01-4 7 58.2 58.2 0 01-4.7 6.4z"/>
+      <path d="M510.9 320a36 36 0 004.9-5.8 52 52 0 003.8-6.6 96 96 0 003-7c.4-1.2 1-2.4 1.3-3.6l.4-.9.3-.9.6-1.8c.5-2.5.7-5.1.8-7.7a45.8 45.8 0 00-.6-7.7c-.4-2.5-1-5-1.7-7.5a80.2 80.2 0 00-2.6-7.3 80.3 80.3 0 012.7 7.3 57.4 57.4 0 011.7 7.5 46 46 0 01.6 7.7 41.4 41.4 0 01-.7 7.7l-.6 1.9-.3.9-.4.9-1.3 3.6a96 96 0 01-3.1 7 51.6 51.6 0 01-3.8 6.6 36 36 0 01-5 5.8z"/>
+      <path d="M505 349.2c1.3-1.6 2.4-3.3 3.6-5l1.8-2.5 1.7-2.5a68.8 68.8 0 003-5.4l2.6-5.5c1.8-3.7 3.5-7.4 5-11.3a75.3 75.3 0 003.5-11.7c.8-4 1.4-8 1.9-12.1.4-4.1.4-8.2 0-12.3a52.4 52.4 0 00-2.7-12 72.8 72.8 0 00-5.1-11.1 72.8 72.8 0 015.2 11.1 52.4 52.4 0 012.7 12c.5 4 .4 8.2 0 12.3-.4 4-1 8.1-1.8 12.1a75.5 75.5 0 01-3.5 11.8 145.1 145.1 0 01-5 11.2l-2.7 5.5a67.3 67.3 0 01-3 5.4c-.5 1-1.1 1.7-1.7 2.6l-1.8 2.5-3.6 5z"/>
+      <path d="M507.8 352.3l7-11.6a200.5 200.5 0 006.4-11.9 82 82 0 005-12.5c.7-2.2 1.2-4.3 1.7-6.5a59.3 59.3 0 00.6-3.4 127.7 127.7 0 001.4-16.8c0-4.5-.4-9-1.2-13.4a57.5 57.5 0 00-4-12.9 54 54 0 00-7-11.5 54 54 0 017 11.5 57.6 57.6 0 014.1 12.9 73.4 73.4 0 011.2 13.4c0 4.5-.3 9-.9 13.5a134 134 0 01-.4 3.4 58.8 58.8 0 01-.6 3.3 74.3 74.3 0 01-1.7 6.5 82 82 0 01-5 12.6c-2 4-4.3 8-6.5 11.8a442.5 442.5 0 01-7 11.5zM480 220.8h1.4a18.7 18.7 0 014.1 1.3c1.7.8 3.4 1.8 4.9 3a35.8 35.8 0 014.3 3.7 45.3 45.3 0 011.8 2.1l1.8 2.3a60.9 60.9 0 00-1.8-2.2 42 42 0 00-2-2 37.8 37.8 0 00-4.2-3.8 26.8 26.8 0 00-4.9-3 18 18 0 00-5.4-1.4z"/>
+    </g>
+    <g fill="#448127">
+      <path d="M496.4 231.6s3 1.8 4.7 4.4c0 0-4.7-.9-8-4.6"/>
+      <path fill="#34541f" d="M496.4 231.6a14.1 14.1 0 012.6 1.9 13 13 0 012.2 2.4l.1.3h-.2a14.5 14.5 0 01-2.3-.8 15.7 15.7 0 01-2.1-1c-1.4-.8-2.6-1.8-3.7-3a15.2 15.2 0 003.8 2.8 18.3 18.3 0 002 1 14.4 14.4 0 002.3.7v.2a11.2 11.2 0 00-1-1.3l-1.2-1.2a17.7 17.7 0 00-1.2-1 18.6 18.6 0 00-1.3-1z"/>
+      <path d="M489.6 230.7s7.2 4.6 8.2 5c0 0-1.6-3.5-5-5"/>
+      <path fill="#34541f" d="M489.6 230.7l4.1 2.5a139.9 139.9 0 003.1 1.8l1 .6v.1a10.7 10.7 0 00-1-1.5l-1.1-1.4a10.7 10.7 0 00-1.4-1.2l-1.5-.9a8.4 8.4 0 011.6.9 11.1 11.1 0 013.5 4l.2.3-.3-.1-2.1-1.2-2-1.3a151.6 151.6 0 01-4.1-2.6z"/>
+      <path d="M492.5 228.4s3.7 1.6 4.6 4.3c0 0-6.8-2.8-8-4.3"/>
+      <path fill="#34541f" d="M492.5 228.4a10.7 10.7 0 012.8 1.6 7.2 7.2 0 011.1 1.2l.8 1.5v.2h-.2a79.6 79.6 0 01-2-1 49.8 49.8 0 01-2.1-1 34 34 0 01-2-1.1l-1-.6-.8-.8.9.7 1 .6 2 1a84.2 84.2 0 004.1 2h-.1a4.8 4.8 0 00-.8-1.3 7.8 7.8 0 00-1-1.2 12.5 12.5 0 00-2.8-1.8z"/>
+      <path d="M486.8 231.3s6.6 4.7 8.6 4.7c0 0-2-3.3-5.4-4.7"/>
+      <path fill="#34541f" d="M486.8 231.3a127 127 0 004.1 2.6 35 35 0 003.3 1.7l1.2.3-.1.2a15.5 15.5 0 00-2.3-2.8l-1.4-1.1a11 11 0 00-1.6-1c1.1.5 2.2 1.2 3 2a12.8 12.8 0 012.5 2.8v.1h-.1a3.7 3.7 0 01-1.3-.3 13.7 13.7 0 01-1.1-.5 33.3 33.3 0 01-2.1-1.2 63.9 63.9 0 01-2.1-1.4 56.3 56.3 0 01-2-1.4z"/>
+      <path d="M486.8 232.7s3.4 3 5.4 3c0 0-2-3.3-5.4-4.8"/>
+      <path fill="#34541f" d="M486.8 232.7a31.2 31.2 0 002.5 1.8l1.4.7a5.3 5.3 0 001.5.4l-.1.1a12.4 12.4 0 00-1-1.4 13.3 13.3 0 00-2.7-2.5 11 11 0 00-1.6-.9c1.1.5 2.2 1.1 3 2a12.9 12.9 0 012.5 2.7v.2h-.1c-.6 0-1-.2-1.6-.4a11.4 11.4 0 01-1.4-.8l-1.2-.9a17.6 17.6 0 01-1.2-1z"/>
+      <path d="M485 226.2s7.2 5.1 8 7.9c0 0-6.4-3-7.6-4.5"/>
+      <path fill="#34541f" d="M485 226.2a51.6 51.6 0 012.3 1.7 51 51 0 012.2 1.8 25.7 25.7 0 012 2l1 1 .7 1.4v.2l-.2-.1a77 77 0 01-2-1 50.3 50.3 0 01-2-1 34.8 34.8 0 01-1.9-1.2 15.4 15.4 0 01-1-.7 4 4 0 01-.7-.7l.8.7a36.7 36.7 0 003 1.7 87.3 87.3 0 004 2l-.2.1a4.6 4.6 0 00-.7-1.2 12.2 12.2 0 00-.9-1.1l-2-2a51.1 51.1 0 00-2.1-1.9 71.2 71.2 0 00-2.3-1.7z"/>
+    </g>
+    <g stroke="#24420e" stroke-width=".2">
+      <path fill="#406325" d="M445 370.3a42.2 42.2 0 01-20.4 4.8c10-8.2 19.7-8.4 20.4-4.8zm69.8 4.5c5.2 4.7 21 8 23.5 7.4-10.6-10.7-22.1-11.8-23.5-7.4z"/>
+      <path fill="#67923d" d="M445 370.3c-.7-3.7-10.5-3.5-20.4 4.8a69.4 69.4 0 0120.4-4.8zm69.9 4.4c1.4-4.4 12.8-3.3 23.4 7.5a84 84 0 00-23.4-7.5z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gu.svg
new file mode 100644
index 0000000..00e8615
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gu.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gu" viewBox="0 0 640 480">
+  <path fill="#be0027" fill-rule="evenodd" d="M0 0h640v480H0z"/>
+  <path fill="#3b5aa3" fill-rule="evenodd" d="M25.6 27.3h589.5v428.4H25.6z"/>
+  <path fill="#cbe0e5" fill-rule="evenodd" d="M314.4 413.2a10 10 0 008.4.1c137.8-73.3 137.8-274.3.1-346.6a10 10 0 00-8.7.2c-134.3 73.4-134.7 272.1.1 346.3z"/>
+  <path fill="#add2d9" fill-rule="evenodd" d="M314.4 416.9c2 1.7 6.4 1.5 8.4 0 101.5-76 102-123.3 97.6-123.3h-201c-3 0 1.8 48.2 95 123.3z"/>
+  <path fill="#fdf9a1" fill-rule="evenodd" d="M235.3 331.2a39.2 39.2 0 0127.9 1.7c7.6 4 12 4 20.2 4 8.6.2 15.3 6.5 24.6 6.8 17.1.4 24.3 8.9 11 9-6.2 0-19.7-4.3-26.2-3.4-13.6 1.4-22.2 4.4-35 18.7l14.8 10c12.8-5.1 14.9-11 22-11.2 8-.3 10.7-5.2 20-5.2a92.6 92.6 0 0033-3.2c14.8-3.4 7.8-13.8-1.2-17.5-7.3-3.1-20.8-.1-29.2-3.2-6.4-2.5-1.2-6.5 2.3-7.3 3.4-.7 7.1.5 11.4 1.2 7.7.6 17.4-.1 24.1-1.2 14-2.1 13.4-6.2 20-6.3 5-.3 8.7-1.7 12-4.1 4-2.7 8.1-8 12.9-7.8l12.7.5-18 40.4-50.7 51.7-26.3 10-57.8-37.7-29.1-44.7 4.7-1.2z"/>
+  <path fill="#179a3b" fill-rule="evenodd" d="M301.8 292l116-.6 2-10.3s-4.1-.6-7.5-.8c-4.1-.3-11.3 4.4-16 4.3-3.5 0-7.3-6-10.7-6-6 0-6.4 5.3-12 5.5-4.5-.2-6.4-3.6-12.3-3.2-6 .3-5.6 3.7-13.3 3.5-10.2-.3-14.3-9.1-22.5-9.2-13.6-.2-14 13-23.8 16.7z"/>
+  <path fill="#fdf9a1" fill-rule="evenodd" d="M301.8 294.4l119.4-.6v-3.2l-122.2.6 2.7 3.2z"/>
+  <path fill="#a79270" fill-rule="evenodd" d="M350.8 330.3c1.9 7 3.8 9.4 11.2 11.3 7.3 1.7 18.5-5.4 11.6-12.3-6.6-6.4-13.6-8-19.5-13.8-12.5-12.3-31.3-42.5-31.3-63.8 0-18.3-1.8-55.8-1.8-91.3 0-2.3-7 6.4-7 8.8.4 31.3.4 55 1.6 86.6 2 23.1 13 38.7 22.7 52.7 4.3 6.8 10.6 14 12.5 21.8z"/>
+  <text x="465.1" y="269.5" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>G</tspan>
+  </text>
+  <text x="488.1" y="269.6" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>U</tspan>
+  </text>
+  <text x="516" y="269.6" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>A</tspan>
+  </text>
+  <text x="539.5" y="269.5" fill="#bd0728" stroke="#fff" stroke-width="1.6" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>M</tspan>
+  </text>
+  <path fill="#239e46" fill-rule="evenodd" d="M259.6 160.9c-1.5 3 3.6-.9 4.8-1.3 6.7-2.4 9.3-10.8 20.8-5.7 9 3.9 21.1 1.6 14.8 5.6-7.8 4.7-23.5 9.9-23.8 33.2 1.3 2.2 1.4 1.9 2.5-.6 2.4-5.4 13.7-20.1 19.3-18.9 2.3.6 8.9-6.7 9-4.6.7 5.8-9 17.6-8.8 33.3 0 3.7 4.5 4.9 6.6 2.3 2.2-2.3 3.4-4.6 7.2-7.6 6.6-5.4 4.8-28.6 5.6-27.5 4.7 6 5.4 23.3 12.4 30.3 5.9 5.9 10.6 3 9.3-5-2.5-16.4-10.2-11.7-13.9-28.6-.8-3.3-1-6.2 3.4-4.9 5.3 1.6 8.5 4 12.4 10 4 5.8 11.4 11.3 15.7 14.6 7.5 5.8 10.2.8 6.6-6.6a39.6 39.6 0 00-21-18.2c-6.2-2.2-8.4-2.4-13.8-3.4-1.5-.3-3-3.4-.4-5.1a42.5 42.5 0 0119.6-7.7c6.7-.2 12 5.2 16.7 6.6 9.4 2.4 9.4-3.5 5.2-8-3.4-3.7-10.6-10-17.3-9.1-13.5 1.7-12.6 1.3-21 6.8-3 1.8-6.4 3.8-5.1 1.6 3-5.5.2-4.5 4.9-10.1 3.6-4 6.3-7 10-8 3.4-.9 8-4.5 9.3-6.4 3.4-4.6.5-7.3-4.7-5.7-4.6 1.2-7 4.2-10 5-7.4 2.4-13.3 19-14.2 21.4-1.1 2.8-2.4 1.4-2.2-1 1-11.7 2-31.5-2-39.6-6.4-12-5.8-6.4-8.2-.7-3.6 9-2.3 17.5 0 26.3 1 4.4 4.6 9.4 5.3 12.9.5 2.7-1.6-.8-2.8-2.5-3.9-6-6.8-10-13.2-13.3a35.3 35.3 0 00-20.2-2c-1.8.6 2 3.2 3.5 4.4 4.3 3.4 12.4 4.5 18 7.9 4.6 2.9 8.2 4.7 9.8 8.7.6 3 1.6 7.4-.4 7.3-5.1-.3-13-4.8-29.4-3-8.4 1.2-15.6 8.3-20.3 16.9z"/>
+  <path fill-rule="evenodd" d="M295.3 310.6h4.7v7.9h-4.7z"/>
+  <path fill="#fdf9ff" fill-rule="evenodd" d="M271.7 257.9c18.8 26 49 41.2 49.6 53h-58.8c13.5-16.2 21.8-27.2 9.2-53z"/>
+  <path fill="#a68861" fill-rule="evenodd" d="M254.6 311.5c25.6 5.7 56.1 8.9 75.6-.8.2 5.7-6.3 14-11.7 14h-49c5.7-.9 9-2.6 18.2-3l-26 .2c-3 .1-8-7.6-7.1-10.4z"/>
+  <path fill="#be0027" fill-rule="evenodd" d="M312.6 425c2.6 1.5 6.7 1.4 9 .2 147.8-78.7 147.9-294.4.2-372a10.7 10.7 0 00-9.4.2c-144 78.8-144.4 292 .2 371.7zm.7-17.7a9.3 9.3 0 008 .1c123.6-72.8 125.1-265.1.1-334-2.4-1.8-5.9-1.2-8.3 0-118.4 70.1-125 254.5.2 333.9z"/>
+  <text x="465.1" y="269.5" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>G</tspan>
+  </text>
+  <text x="488.1" y="269.6" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>U</tspan>
+  </text>
+  <text x="516" y="269.6" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>A</tspan>
+  </text>
+  <text x="539.5" y="269.5" fill="#bd0728" font-family="helvetica" font-size="25.6" transform="matrix(1.33 0 0 1.33 -363 -108)">
+    <tspan>M</tspan>
+  </text>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gw.svg
new file mode 100644
index 0000000..ae17314
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gw.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-gw" viewBox="0 0 640 480">
+  <path fill="#ce1126" d="M0 0h220v480H0z"/>
+  <path fill="#fcd116" d="M220 0h420v240H220z"/>
+  <path fill="#009e49" d="M220 240h420v240H220z"/>
+  <g id="b" transform="matrix(80 0 0 80 110 240)">
+    <path id="a" d="M0-1v1h.5" transform="rotate(18 0 -1)"/>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+  </g>
+  <use width="100%" height="100%" transform="rotate(72 110 240)" xlink:href="#b"/>
+  <use width="100%" height="100%" transform="rotate(144 110 240)" xlink:href="#b"/>
+  <use width="100%" height="100%" transform="rotate(-144 110 240)" xlink:href="#b"/>
+  <use width="100%" height="100%" transform="rotate(-72 110 240)" xlink:href="#b"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gy.svg
new file mode 100644
index 0000000..e957f3e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/gy.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-gy" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#399408" d="M2.4 0H640v480H2.4z"/>
+    <path fill="#fff" d="M.2 0c-.9 0 619.6 241.5 619.6 241.5L0 479.8.2 0z"/>
+    <path fill="#ffde08" d="M.3 20.2c3.4 0 559 217.9 555.9 220L1.9 463.2.3 20.3z"/>
+    <path d="M1.9.8c1.8 0 290.9 240.9 290.9 240.9L1.8 477V.8z"/>
+    <path fill="#de2110" d="M.3 33.9c1.6-15 260.9 208.4 260.9 208.4L.2 451.7V33.9z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hk.svg
new file mode 100644
index 0000000..9e45292
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hk.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hk" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="hk-a">
+      <path fill-opacity=".7" d="M-89 0h682.6v512H-89z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#hk-a)" transform="translate(83.5) scale(.94)">
+    <path fill="#ba0000" fill-rule="evenodd" d="M618 512h-731.4V0H618z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M241.9 247.8s-51.6-22.2-44.2-79.8c7.1-27.7 19.8-46.6 42.7-56.9 10.8-3.3 21.8-4.8 33-5.7-3 2.8-5.4 5.6-6.7 9-2.4 6.4-.6 12.4 2.7 18.5 4.1 7 6.6 14.2 7.4 23.6a36.6 36.6 0 01-14.6 33.7c-6.6 5.1-14.4 6.9-20.8 12.7-5 4.8-8 9.7-9 18.1-.2 16.1 4.1 18.4 9.5 26.8z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="2.1" d="M232 164.5v-.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="2.1" d="M235.3 241.8c-20-17.7-18.3-62.4-3-77.3"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M244.6 154.5l3.3 5.5-6-2.5-4.7 5 .8-6.5-6-2.5 6.5-1.5.8-6.4 3.3 5.5 6.6-1.5"/>
+    <path fill="#fff" fill-rule="evenodd" d="M246.3 244s6-55.9 63.3-65.7c28.6-1.2 50.4 5.3 67 24.3 6.3 9.3 10.9 19.4 15 29.8-3.5-2-6.8-3.5-10.6-3.7-6.7-.5-12 3-16.8 7.9a53.2 53.2 0 01-20.4 14 36.6 36.6 0 01-36.5-4c-6.8-4.9-10.8-11.8-18.2-16.2a28.2 28.2 0 00-20-3.4c-15.5 4.6-16.3 9.4-22.8 17z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="2.1" d="M323 210.2h.3"/>
+    <path fill="none" stroke="#ba0000" stroke-width="2.1" d="M250 236c11.2-24.4 54.4-35.8 73.1-25.6"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M336.3 219.3L332 224l.6-6.5-6-3 6.3-1 .6-6.7 3.4 6 6.4-1.2-4.3 4.7 3.3 6"/>
+    <path fill="#fff" fill-rule="evenodd" d="M250.1 248s55-12 82.4 39.3c10.3 26.7 11 49.4-1.7 71.1-6.8 9-15 16.5-23.5 23.8.8-4 1.1-7.6.1-11.2-1.6-6.6-6.6-10.5-12.8-13.5a53.1 53.1 0 01-19.8-15 36.6 36.6 0 01-7.7-35.8c2.4-8 7.7-14 9.5-22.4a28 28 0 00-3.1-20c-9.3-13.2-14.1-12.5-23.4-16.3z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="2.1" d="M306.5 310.1l.2.2"/>
+    <path fill="none" stroke="#ba0000" stroke-width="2.1" d="M259 249c26.6 2.9 51.1 40.2 47.4 61.3"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M302.1 325.6l-5.9-2.6 6.5-1.5.8-6.7 3.1 5.7 6.5-1.5-4.5 5 3 5.7-5.8-2.6-4.5 5.1"/>
+    <path fill="#fff" fill-rule="evenodd" d="M248.9 253.7s26.9 49.4-14.5 90c-22.8 17.4-44.4 24.5-68.8 18.4-10.5-4-20-9.7-29.5-15.9 4-.3 7.7-1 10.9-3 5.8-3.4 8.1-9.3 9.3-16a53 53 0 018.8-23.3 36.6 36.6 0 0132.2-17.5c8.4.1 15.6 3.6 24.2 3 6.9-.9 12.3-2.8 18.4-8.8 10-12.5 8-17 9-27z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="2.1" d="M205.1 325.3l-.1.2"/>
+    <path fill="none" stroke="#ba0000" stroke-width="2.1" d="M250.3 262.4c4.9 26.4-24.1 60.5-45.4 62.7"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M189 325.4l.9-6.4 3.3 5.7 6.6-1-4.6 4.6 3.3 5.7-6.1-2.9-4.6 4.6.8-6.4-6.1-2.9"/>
+    <path fill="#fff" fill-rule="evenodd" d="M242.8 252.6S205.2 294.4 153 269c-24-15.7-37.8-33.8-40.1-58.8.3-11.3 2.4-22.1 5.1-33 1.7 3.6 3.6 6.8 6.5 9.2 5.1 4.3 11.5 4.5 18.3 3.4a52 52 0 0124.7.6 36.6 36.6 0 0127.3 24.6c2.7 7.9 1.8 15.9 5.3 23.8 3 6.2 6.6 10.6 14.3 14.4 15.2 5.3 18.7 1.9 28.4-.5z"/>
+    <path fill="#ba0000" fill-rule="evenodd" stroke="#000" stroke-width="2.1" d="M160.7 235.2l-.2-.1"/>
+    <path fill="none" stroke="#ba0000" stroke-width="2.1" d="M235 256.9c-23.2 13.3-65-2.7-74.2-22"/>
+    <path fill="#ba0000" fill-rule="evenodd" d="M155.3 220l6.3-1.3-4.3 5 3.1 5.9-5.8-2.8-4.3 5 .7-6.8-5.9-2.8 6.3-1.3.7-6.8"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hm.svg
new file mode 100644
index 0000000..a9dda07
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hm.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hm" viewBox="0 0 640 480">
+  <g stroke-width="1pt">
+    <path fill="#006" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M0 0v30.6l372.6 243h46.9V243L46.9 0H0zm419.5 0v30.6l-372.6 243H0V243L372.6 0h46.9z"/>
+    <path fill="#fff" d="M174.8 0v273.6h69.9V0h-70zM0 91.2v91.2h419.5V91.2H0z"/>
+    <path fill="#c00" d="M0 109.4v54.8h419.5v-54.8H0zM188.8 0v273.6h42V0h-42zM0 273.6l139.8-91.2h31.3L31.3 273.6H0zM0 0l139.8 91.2h-31.2L0 20.4V0zm248.4 91.2L388.2 0h31.3L279.6 91.2h-31.2zm171 182.4l-139.7-91.2h31.2l108.6 70.8v20.4z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M125.5 416.5L98 414l23.8-14-15.3-23 25.8 9.7 8.4-26.3 8.5 26.3L175 377l-15.3 23 23.7 14-27.5 2.5 3.8 27.3-19-20-19 20m370.5 1.9l-19.4-1.7 16.7-10-10.7-16 18.1 6.8 6-18.5 6 18.5 18-6.9-10.7 16.2L533 444l-19.3 1.7 2.7 19.2-13.4-14-13.4 14m2.7-307l-19.4-1.7 16.7-9.9-10.7-16.2 18.1 7 6-18.6 6 18.5 18-6.9-10.7 16.2 16.7 10-19.3 1.6 2.7 19.2-13.4-14-13.4 14m-105.2 97.7l-19.4-1.7 16.7-9.9-10.8-16.1 18.2 6.8 6-18.5 5.9 18.5 18.2-6.8-10.8 16.1 16.7 10-19.3 1.6 2.6 19.3L395 280l-13.4 14M588 246l-19.4-1.6 16.8-10-10.8-16.1 18.2 6.9 5.9-18.5 6 18.5 18-7-10.6 16.2 16.7 10-19.4 1.6 2.7 19.3-13.4-14.1-13.4 14M563 305.7l-9.5 8 3 12-10.6-6.5-10.5 6.6 3-12-9.6-8.1 12.4-1 4.7-11.4 4.7 11.5"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hn.svg
new file mode 100644
index 0000000..47af518
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hn.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-hn" viewBox="0 0 640 480">
+  <path fill="#0073cf" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <g id="c" fill="#0073cf" transform="translate(320 240) scale(26.66665)">
+    <g id="b">
+      <path id="a" d="M-.3 0l.5.1L0-1z"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" transform="translate(133.3 -42.7)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(133.3 37.3)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(-133.3 -42.7)" xlink:href="#c"/>
+  <use width="100%" height="100%" transform="translate(-133.3 37.3)" xlink:href="#c"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hr.svg
new file mode 100644
index 0000000..7b699d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hr.svg
@@ -0,0 +1,58 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-hr" viewBox="0 0 640 480">
+  <path fill="#171796" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v320H0z"/>
+  <path fill="red" d="M0 0h640v160H0zm320 364.1c51.3 0 93.3-42 93.3-93.3V160H226.7v110.8c0 51.4 42 93.4 93.3 93.4z"/>
+  <path fill="#fff" d="M320 362.6a91.8 91.8 0 0091.6-91.5V161.8H228.5V271a91.8 91.8 0 0091.5 91.5z"/>
+  <g fill="red">
+    <path d="M267.1 165.2H232v38.7h35.2zm0 77.4h35.3v-38.7H267zM232 270.9c0 3.5.2 7 .6 10.4h34.6v-38.7H232v28.3zm105.7-28.3h-35.2v38.7h35.2zm0 77.4h35.2v-38.7h-35.2zm35.2 21.2A89.2 89.2 0 00393 320h-20v21.2zM267.1 320h35.3v-38.7H267zm-20.1 0a89.2 89.2 0 0020.1 21.2V320H247zm79.1 38.7c4-.3 7.7-.8 11.5-1.6V320h-35.2v37.1a87 87 0 0011.4 1.6c4.1.3 8.2.2 12.3 0z"/>
+    <path d="M407.4 281.3c.4-3.4.6-6.9.6-10.4v-28.3h-35.2v38.7h34.6zm-69.8-38.7h35.2v-38.7h-35.2zm0-77.4h-35.2v38.7h35.2zm70.4 38.7v-38.7h-35.2v38.7z"/>
+  </g>
+  <path fill="#fff" d="M410 158.8l21.8-49.5-16.6-26.8-27.6 10.2-19.4-22.2-25.4 14.7L320 66.5l-22.7 18.6-25.5-14.6-19.4 22.2-27.6-10.3-16.6 27 21.8 49.4a217.8 217.8 0 0190-19.3c32 0 62.5 6.9 90 19.3z"/>
+  <path fill="#0093dd" d="M253 94.8l-27.4-10-15.3 24.7 5.9 13.3 14.8 33.7a219.7 219.7 0 0134.6-12L253 94.8z"/>
+  <path fill="#fff" stroke="#000" stroke-width=".3" d="M251.4 119.3a13.3 13.3 0 011.6 6.2c0 7.3-6 13.3-13.4 13.3a13.4 13.4 0 01-13.1-10.8 13.4 13.4 0 0011.7 6.9 13.4 13.4 0 0013.2-15.6z"/>
+  <path d="M227.6 114l1-4.9-3.8-3.2-.1-.1.2-.1 4.6-1.6 1-4.8v-.2l.2.1 3.7 3.2 4.6-1.6h.2v.2l-1 4.8 3.7 3.2.2.2h-.3l-4.6 1.6-1 4.8v.2l-.1-.1-3.7-3.2-4.6 1.6h-.3z"/>
+  <path fill="#f7db17" d="M233.6 107.6l3.5 3 4.3-1.5zm0-.2l7.8 1.6-3.4-3zm-8.3-1.6l7.8 1.5-3.5-3zm7.8 1.7l-7.8-1.5 3.4 3zm.4-.3l5.2-6-4.3 1.5zm-5.6 6.4l5.2-6-4.3 1.5zm5.3-5.9l-5.2 6 4.3-1.5zm5.6-6.4l-5.2 6 4.3-1.5zm-5.6 6l-2.6-7.6-.9 4.5zm2.7 8l-2.5-7.5-.9 4.5zm-2.4-7.6l2.6 7.5.9-4.5zm-2.7-8l2.5 7.5 1-4.5z"/>
+  <path fill="#171796" d="M297.5 87.4L272.1 73 253 94.9l12.6 49.6a219.8 219.8 0 0136.1-6l-4.2-51.1z"/>
+  <path fill="red" d="M262.5 132.2a232.3 232.3 0 0138.2-6.4l-1-12.9a245.6 245.6 0 00-40.4 6.7l3.2 12.6zm-6.3-25a258 258 0 0142.4-7l-1.1-12.7a270.7 270.7 0 00-44.5 7.4l3.2 12.3z"/>
+  <g transform="translate(-160) scale(.00237)">
+    <path fill="#0093dd" d="M212105 36890l-23 13-9517-7794-9497 7778 1788 21560c2543-210 5113-322 7709-322 2608 0 5190 113 7744 325l1795-21560z"/>
+    <g id="a">
+      <path d="M202545 46585c-18-2-44 10-69 45-186 250-359 469-545 720-195 61-242 180-167 348-261-26-291 193-302 432-250-379-522-482-814-307-11-230-187-338-439-392-180-10-319-65-436-145-60-42-110-64-170-106-126-88-226-5-172 74 267 434 535 868 802 1302-14 80 6 151 88 204 47 133 93 265 140 397-11 38-21 75-32 113-221-105-443-118-664-133-170-8-287-50-361-137-54-63-91-26-92 82-3 534 162 1014 599 1492-231 4-462 11-694 21-79 6-95 39-73 104 126 304 339 579 822 766-208 112-327 285-357 520-9 224-75 382-212 455-60 32-81 65-24 106 253 185 565 193 895 112-157 270-226 553-198 850 208 56 412 15 614-52-29 61-44 175-52 309-7 115-41 229-104 343-32 33-65 84 4 102 336 91 648 52 915-47 0 243 2 487 76 727 18 58 70 102 125 26 155-214 322-396 527-517 31 90 75 168 156 215 96 55 147 170 153 343 0 30-2 60 35 90 149 7 514-380 589-597 206 121 284 246 439 461 55 76 99 29 128-25 62-243 67-481 66-724 267 99 579 138 915 47 69-19 36-70 4-102-62-114-105-250-113-365-9-133-14-226-43-287 202 68 405 108 614 52 29-297-53-579-211-850 330 80 655 73 908-112 57-41 35-74-24-106-136-73-203-231-212-455-30-235-149-409-357-520 483-187 696-463 822-766 22-66 6-99-73-104-231-10-480-24-711-27 437-478 606-961 604-1495-1-108-38-146-92-82-74 87-179 137-348 146-222 15-435 24-656 128-11-38-21-75-32-113 46-132 106-260 153-393 82-53 102-123 88-204 267-434 513-868 781-1302 54-79-46-162-171-74-60 42-110 64-170 106-117 80-257 134-437 145-251 54-417 167-428 397-293-175-564-73-814 307-11-239-41-457-302-432 75-168 17-291-178-352-186-250-458-470-644-720-31-35-51-47-69-45z"/>
+      <g fill="#f7db17">
+        <path d="M205075 47978c-51-26-124 17-162 95s-33 170 19 196c40 20 84-6 119-56l22-36c2-3 4-6 5-9 38-78 49-163-2-188zm-5008 0c52-26 124 17 162 95s39 165-13 191-103-24-141-102-60-158-9-184zm4539 905c-32 0-59 27-59 59s26 59 59 59 59-26 59-59c0-32-26-59-59-59zm-4032 0a59.1 59.1 0 10.2 118.2 59.1 59.1 0 00-.2-118.2zm4294-304c-754-91-1506-133-2260-133s-1509 41-2269 115c-26 8-21 90 14 86 756-73 1507-113 2256-113 743 0 1485 40 2228 129 39 4 54-80 32-84z"/>
+        <path d="M200319 48495c768-75 1530-117 2289-116 754 0 1507 42 2261 133l111-184c-32 10-62 9-90-5-76-38-92-161-36-274 56-114 164-175 240-138 39 19 62 62 68 114l446-739c-204 130-328 214-581 252-281 41-409 139-368 307 38 156-57 133-201 54-314-171-541 71-652 353-73 186-159 181-168-13-4-70 0-131-7-200-21-223-89-286-216-224-161 78-175 25-137-58 28-60 86-128 66-221-9-67-66-92-151-98-182-244-467-483-649-727-182 244-374 483-556 727-86 5-142 30-152 98-20 93 52 157 80 217 38 82 23 135-137 57-127-61-186-3-207 220-7 69-10 139-13 209-9 194-95 199-168 13-111-282-352-524-667-353-145 79-203 102-182-54 23-172-107-266-388-307-253-37-377-122-581-252l419 682c12-25 29-45 53-57 76-38 184 24 240 138 56 113 40 237-36 274-10 5-21 8-32 10l100 163zm4389 911c-7 3-7 4-24 11-46 19-80 66-134 124-57 60-128 125-211 188-12 10-25 19-44-6s-7-35 6-44c80-62 149-124 204-182 30-32 56-63 77-92-95-11-190-21-284-30-79 24-157 55-222 95-59 35-107 77-137 125-8 14-16 27-44 11-27-16-19-30-11-44 35-58 91-107 158-147 33-20 69-38 106-54-107-9-214-18-321-25-22 13-42 29-61 47-20 19-39 42-56 67-9 13-18 26-44 8s-18-31-8-44c19-29 41-54 64-77l9-9c-80-5-161-10-241-14-2 2-5 5-8 7a340.4 340.4 0 00-93 126c-6 15-12 29-41 18-29-12-23-26-17-41 12-29 27-55 45-81 8-11 18-22 27-33-115-5-230-9-344-12-4 5-9 8-14 11-25 15-47 32-66 51s-35 40-48 63c-8 14-16 28-43 12-28-16-20-29-12-43 16-28 35-54 59-77 7-7 14-13 21-19-122-2-244-4-365-4-120 0-240 1-360 3 8 7 15 13 22 20 23 23 42 49 59 77 8 14 16 27-12 43s-35 2-44-12c-13-23-29-44-48-63s-41-36-66-51c-6-3-12-7-15-12-115 2-230 6-345 11 11 11 20 23 29 35 19 25 33 52 45 81 6 15 12 29-17 41s-35-3-41-18c-9-24-22-46-38-67-15-21-34-41-55-59-4-3-7-6-10-10-81 4-162 8-243 13 4 4 9 8 13 12 24 23 45 48 64 77 9 13 18 26-8 44s-35 5-44-8c-18-26-36-48-56-67s-41-35-64-49c-1-1-3-2-5-3-110 7-220 14-330 23 43 18 85 38 122 61 67 40 124 89 158 147 8 14 16 27-11 44-27 16-35 3-44-11-29-48-78-90-137-125-72-44-159-77-246-102h-2c-90 7-179 15-268 24 22 33 51 68 86 106 55 58 124 120 204 182 13 9 25 19 6 44s-32 15-44 6c-83-64-155-128-211-188-37-38-99-111-135-140-196-90-354-127-575-147-153-14-318-9-458-79 36 85 75 164 126 229 53 68 120 121 209 147 8 2 21 16 22 25 28 157 84 286 169 386 52 60 114 110 188 149-75-81-132-166-172-251-67-142-90-286-77-420 1-16 3-32 34-29 32 3 30 19 29 35-11 123 9 256 72 387 56 118 159 237 291 346 24 19 0 63-29 55-154-44-290-123-383-231-89-104-149-237-180-397-94-32-165-90-222-164-47-60-85-131-118-205 28 428 182 801 456 1137 61 75 165 182 255 216 92 35 95 100-20 101-34 1-69 1-105 1 84 31 164 66 233 105 127 73 217 162 224 273 1 16 2 32-29 34-32 2-33-14-34-29-6-86-82-160-192-223-113-65-259-117-402-160-154 0-312-1-459 3 39 28 80 57 131 84 82 44 188 86 343 122 89 21 166 52 233 91 71 42 130 93 177 150 10 12 20 25-5 45s-34 8-45-5c-42-52-95-98-159-135-61-36-133-64-216-84-161-38-272-81-358-128-75-40-131-82-184-123 180 393 450 573 835 689 23 7 43 13 61 19 3 1 6 1 9 2 86 21 175 40 266 55 92 15 166 28 261 37 16 1 32 3 29 34-3 32-19 30-34 29-99-9-174-22-266-38-58-10-115-21-171-33-26 6-64 9-107 12-232 14-420 225-435 494 0 5 0 11-1 16 88-80 179-157 273-212 117-68 239-103 364-69 15 4 31 8 22 39-8 31-23 27-39 22-106-28-212 3-316 63-108 63-213 158-315 253-24 147-82 285-205 377 61 34 104 65 163 45 86-39 172-78 261-108 91-31 184-52 282-57 16-1 32-1 33 31s-14 32-31 33c-91 4-179 24-264 53-75 26-149 58-222 91 221 47 460-1 667-79 60-22 105-42 133-41 51-30 112-53 172-79 66-28 132-51 182-57 16-2 32-4 35 28 4 32-12 33-28 35-112 13-127 21-222 79 0 21-66 57-126 96-36 24-70 52-87 67-95 86-144 181-188 287-29 70-52 145-68 224 55-108 121-211 201-303 94-108 208-201 345-265 14-7 29-13 42 15 13 29-1 35-15 42-129 60-236 147-324 250-90 103-161 222-219 345-31 64-8 1-42 86 110-122 212-224 323-307 132-100 283-157 418-133 15 3 31 6 26 37s-21 28-37 26c-116-21-250 32-369 121-121 92-244 223-366 361 184 26 366-26 542-85 91-30 183-135 239-152 19-24 38-46 57-67 33-37 67-71 102-100 12-10 24-20 45 4s8 34-4 45c-33 28-65 60-96 94-32 35-62 73-92 113-6 8-13 17-24 16-60 70-151 162-172 240-57 210-25 370-122 576 71-38 128-81 175-134 53-60 94-135 128-230 37-104 95-195 167-270 75-77 165-136 261-172 15-5 30-11 41 19s-4 35-19 41c-87 32-169 86-238 157-66 68-119 151-153 247-37 102-81 183-141 250-44 50-95 91-156 127 52-3 78-10 121-7 79-6 211-66 279-119 66-51 116-120 154-206 6-15 13-29 42-16s23 27 16 42c-42 96-99 174-173 231-56 43-121 75-196 93 161-5 311-42 467-100 65-24 87-168 127-208 32-58 66-112 105-158 47-56 101-101 164-127 15-6 29-12 41 18 12 29-3 35-17 41-52 21-98 60-139 108-36 42-68 93-98 147 10 73-51 228-53 305-7 205-2 409 53 612 53-71 107-134 162-192 0-5 0-10 1-15 18-106 33-219 40-332 7-112 7-223-6-329-2-16-4-32 27-35 32-4 34 12 35 28 14 111 14 226 7 340-6 90-16 180-30 269 54-51 53-51 77-103 37-80 59-159 67-237 9-80 5-157-13-230-4-15-7-31 24-38s35 8 38 24c19 80 25 165 14 252-8 65-24 132-49 199 56-42 114-82 178-122-4-75-5-153-3-227 2-68 7-134 18-190 4-20 7-40 47-33s37 27 33 48c-9 50-14 111-16 177-2 78 0 162 4 243 5 82 49 185 125 230 103 62 158 163 186 274 16-145 17-280 3-400-17-143-55-267-114-368-8-14-16-27 12-44 27-16 35-2 43 12 63 110 104 241 122 393 17 146 13 310-13 488 102-82 381-258 352-594-7-27-16-52-28-75-7-14-14-28 14-42s35 0 42 14c17 33 30 69 39 110 5 24 8 49 11 76 13-7 45-43 51-39 24 16 58 38 80 54-21-60-35-120-42-178-10-87-5-172 14-252 4-15 7-31 38-24s27 23 24 38c-18 73-22 151-13 230 9 77 31 157 67 237 4 8 8 16 5 25 24 21 47 42 70 65-13-84-22-170-28-255-8-115-7-230 7-341 2-16 4-32 35-28s29 20 27 35c-13 106-13 217-6 329 7 113 22 225 40 332 1 2 1 5 1 7 54 59 95 120 152 196 55-203 73-407 66-612-2-76-69-227-65-302-30-55-63-107-100-151-41-49-87-87-139-108-15-6-29-12-18-41 12-29 27-24 41-18 62 26 117 71 164 127 38 45 72 98 103 154 57 7 78 179 143 212 154 57 298 94 453 100-75-19-140-50-195-93-74-57-131-135-173-231-6-15-13-29 16-42s35 2 42 16c38 86 88 156 154 206 85 66 289 124 400 127-61-37-113-78-157-128-59-67-104-148-141-250-34-95-87-179-153-247a642 642 0 00-238-157c-15-6-29-11-19-41 11-29 26-24 41-19 96 36 186 94 261 172 72 74 130 166 167 270 34 95 75 169 128 230 47 54 105 98 177 135-98-207-66-367-122-577-35-129-232-277-193-320 45-51 133 88 248 127 175 59 357 111 540 85-122-138-244-269-366-361-119-90-237-140-352-120-16 3-31 6-37-26-5-31 10-34 26-37 135-24 269 32 401 132 111 84 201 175 311 298-18-47 0-14-30-77-59-123-130-241-220-345-89-102-196-189-324-250-14-7-28-13-15-42 13-28 28-22 42-15 137 65 251 157 345 265 81 93 147 198 203 307-15-81-39-157-68-227-44-106-93-201-188-287-62-56-209-140-208-179-29-15-33-11-63-24-61-26-121-46-164-52-16-2-32-4-28-35 4-32 19-30 35-28 50 6 115 28 182 56 33 14 66 43 98 60 53 4 139 47 208 74 206 78 446 126 666 79-73-33-147-65-223-91-85-29-172-49-264-53-16-1-32-1-31-33s17-31 33-31c98 4 191 26 282 57 89 30 175 69 261 108 59 27 101-7 163-45-123-92-181-230-205-376l-2-2c-102-95-207-190-315-253-104-60-210-91-316-63-15 4-31 8-39-22-8-31 7-35 22-39 125-33 247 1 364 69 94 55 186 132 274 213 0-6-1-11-1-17-15-270-203-480-435-494-78-5-189 21-186-32 4-59 97-44 234-86 385-116 655-296 836-690-54 41-110 83-186 124-86 47-198 91-358 128-82 19-154 48-216 84-64 38-117 84-159 135-10 12-20 25-45 5s-14-32-5-45c47-57 106-108 177-150 67-39 145-70 233-91 155-36 261-78 343-122 51-27 92-55 131-84-148-4-305-3-459-3-143 44-289 96-402 160-110 63-186 136-192 223-1 16-2 32-34 29-32-2-31-18-29-34 8-111 97-200 224-273 69-39 149-74 233-105-35 0-70 0-104-1-116-2-112-66-20-101 90-34 190-141 251-216 271-334 412-714 456-1130-33 72-69 140-115 198-57 73-128 131-222 164-31 160-91 293-180 397-92 108-216 185-369 230-29 8-52-35-29-55 132-109 221-226 278-344 62-131 83-264 72-387-1-16-3-32 29-35 31-3 33 13 34 29 12 134-10 278-78 420-40 85-97 170-172 251 73-39 136-89 187-149 85-100 141-229 170-386 1-8 14-22 22-25 89-27 155-79 209-147 51-65 90-143 126-228-140 69-304 64-457 78-213 19-369 68-554 152z"/>
+        <path d="M204649 49231c-680-88-1359-113-2041-114-684 0-1369 40-2058 112-20 6-15 33-14 46 2 28 37 35 121 27 643-60 1285-93 1932-93 674 0 1351 21 2038 102 33 9 77-85 22-81z"/>
+        <path fill-rule="evenodd" d="M200570 49160c683-71 1362-110 2038-110 675 0 1349 40 2025 127l31-127c-17 9-37 15-58 15a123 123 0 11113-171l60-170c-724-84-1446-122-2171-122-729 0-1459 38-2193 107l58 164c22-32 59-54 101-54a123 123 0 110 246c-12 0-25-2-36-6l33 94-2 7zm3067-416a123 123 0 100 246 123 123 0 100-246zm0 64a59.1 59.1 0 000 118c32 0 59-27 59-59s-26-59-59-59zm-1082-91a123 123 0 10123 123c0-68-55-123-123-123zm0 64a59.1 59.1 0 10.2 118.2 59.1 59.1 0 00-.2-118.2zm-1064-40a123 123 0 10-.2 245.8 123 123 0 00.2-245.8zm0 64c-33 0-59 26-59 59s26 59 59 59a59.1 59.1 0 000-118z"/>
+      </g>
+      <path d="M202601 47974c-14-68-49-129-100-175-51-47-116-78-187-88-33-4-39-58-7-68 60-20 114-67 157-133 45-69 79-157 95-256 5-34 64-35 69-1 15 84 51 153 97 208 55 66 125 112 193 138 31 12 25 63-8 68-59 9-105 42-141 87-50 62-81 145-100 221-8 33-62 31-69-2zm33-118c20-52 47-103 81-146 28-34 60-64 99-84-51-30-100-70-143-120-28-34-53-73-73-116-19 59-45 112-75 158-31 47-67 86-108 116 50 19 95 47 134 82 34 31 63 68 85 110zm799 5115l-515 206c-17 7-35 14-48-21-14-34 4-41 21-48l515-206c17-7 35-14 48 21 14 34-4 41-21 48zm59-326l-604 328c-16 9-33 18-51-15s-1-42 15-51l604-328c16-9 33-18 51 15s1 42-15 51zm-1826-65l604 328c16 9 33 18 15 51s-34 24-51 15l-604-328c-16-9-33-18-15-51s34-24 51-15zm51 322l515 206c18 7 35 14 21 48-14 35-31 28-49 21l-515-206c-17-7-34-14-21-48 14-35 31-28 48-21zm224 434c137 33 261 48 358 31 88-16 155-60 191-146v-493c-107-1-212-15-303-41-109-31-170-98-201-178-41-107-27-235-4-329 5-18 9-36 45-27s32 27 27 45c-20 82-33 194 1 284 23 60 69 110 152 133 91 25 198 38 307 38 107 0 214-13 304-40 82-24 148-69 192-123s65-117 57-176c-5-36-24-62-49-80-34-24-82-35-128-37-47-2-94 7-142 16-25 5-50 9-77 13-19 2-37 5-42-32s14-40 32-42c23-3 48-8 73-12 52-10 105-20 159-18 60 2 121 18 168 51 42 29 72 72 80 131 11 80-16 163-73 233-53 65-131 119-229 147-83 24-178 38-274 42v483c3 5 3 11 2 16 37 82 102 125 188 141 97 18 221 2 358-31 18-5 36-9 45 27 8 37-9 41-28 45-146 35-279 51-388 32-92-17-165-58-215-132-49 74-124 115-215 132-109 20-242 4-388-32-18-4-37-8-28-45 8-36 27-32 45-27zm356 210l402-9c19 0 38-1 38 37 1 38-18 38-37 38l-402 9c-19 0-37 1-38-37s18-38 37-38zm593-3082c151-125 293-227 423-297 133-72 254-111 359-106 19 1 37 1 36 39-1 37-20 37-39 36-92-4-200 32-322 97-125 67-263 166-410 289-14 12-29 24-53-5s-9-41 5-53zm-605 56c-141-130-298-240-445-314-139-71-268-108-363-100-19 2-37 4-40-34-4-37 15-39 34-40 110-10 252 31 404 107 152 77 315 191 461 325 14 13 28 25 2 53-25 27-39 15-53 2zm-213 1004c37-83 83-155 136-219 53-63 112-119 174-170 14-12 29-24 52 5 24 29 9 41-5 53-59 48-114 101-164 160-49 59-91 125-125 201-8 17-15 34-49 19s-27-32-19-49zm371-1734c49 66 88 139 114 223 26 82 40 175 39 279 5 80 6 165-7 249-13 86-42 170-97 246-43 60-101 97-165 113-53 13-109 10-164-7 29 100 51 208 6 308-8 18-33 27-51 18-43-22-86-43-128-62s-84-36-127-51l-1-1c-95-37-173-73-236-112-65-39-115-80-150-124l1 2c-44-49-72-106-88-170-14-55-20-114-22-174-72-39-138-78-194-116-64-43-118-87-161-131-13-14-26-27 1-53s40-12 53 1c39 40 89 80 150 121 60 40 128 81 204 121 124 13 247 51 370 109 106 50 211 115 317 192 13 7 19 16 27 20 8 6 16 13 25 19 51 22 104 28 152 16 47-11 90-39 122-84 48-66 72-139 84-214 12-77 11-157 6-234v-2c1-97-12-183-35-258-24-76-58-142-102-201-11-15-22-30 7-52s41-7 52 7zm-375 1047c-104-77-207-141-311-190-105-49-210-83-314-98 2 48 8 93 18 135 13 52 35 99 71 138l1 1c30 37 73 72 130 107 60 36 134 71 225 106l-1-1c45 16 89 34 133 54 31 14 61 28 93 44 19-83-10-179-37-267-2-8-5-15-9-29zm776-1003c-44 59-79 125-102 201-24 76-36 161-35 258v2c-5 77-6 158 6 234 12 75 37 148 84 214 32 45 75 72 122 84 48 12 101 6 152-16l25-19c6-4 13-12 27-20 105-77 211-143 317-192 123-58 246-95 370-109 75-40 144-80 204-121s111-81 149-121c13-13 26-27 53-1s14 39 0 53c-43 44-97 88-161 131-57 38-122 77-194 116-2 61-8 119-22 174-16 63-44 121-88 170l1-2c-35 44-85 85-150 124-63 38-141 75-237 112l-1 1c-43 15-85 32-127 51-43 19-85 40-128 62-18 9-43 0-51-18-45-100-23-208 6-308-55 18-111 20-164 7-64-15-122-53-165-113-55-76-84-160-97-246-13-85-12-169-7-249-1-104 13-196 39-279 26-84 65-158 114-223 11-15 22-30 52-7 30 22 19 37 7 52zm940 715c-105 15-209 49-314 98-104 49-207 113-311 190-4 13-6 21-8 29-27 88-56 184-37 267 31-15 62-30 93-44 44-20 87-38 133-54l-1 1c91-35 165-70 225-106 58-34 100-70 131-107l1-1c35-39 57-86 71-138 11-42 16-87 19-135z"/>
+      <path fill-rule="evenodd" d="M203459 50602a216.4 216.4 0 000 433 216.6 216.6 0 000-433zm0 69c-81 0-147 66-147 147s66 147 147 147 147-66 147-147-66-147-147-147zm0 60a87 87 0 10.1 174.1 87 87 0 00-.1-174.1zm-1697-124c119 0 217 97 217 216s-97 217-217 217a216.6 216.6 0 010-433zm0 69c81 0 147 66 147 147s-66 147-147 147-147-66-147-147 66-147 147-147zm0 60a87 87 0 11-.1 174.1 87 87 0 01.1-174.1z"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(-2.2 -55532.8 156275.8)" xlink:href="#a"/>
+    <use width="100%" height="100%" transform="rotate(2.2 459865.8 156275.8)" xlink:href="#a"/>
+  </g>
+  <path fill="#171796" d="M387.2 94.9l-19.3-22-25.2 14.5-4.3 51.1a219.7 219.7 0 0136.2 6L387.2 95z"/>
+  <path d="M347.7 98c.8-.2 1.7-.2 2.6.3.3.1.6.3.8.6.4-.3.7-.6 1.2-.8a4 4 0 011.8-1c.9-.5 1.8-.8 2.7-.9h2.8c.8 0 1.6.2 2.3.6l2 1c.8.4 1.5.8 2.2 1a9.1 9.1 0 004.5.5c.4-.2.7.1.2.4-3.3 2-5.9.2-8.1-.6a16.2 16.2 0 012.1 1.7c.8.8 1.8 1.6 3.5 2.4a8.4 8.4 0 005 .7l.4.1-.1.5a4.8 4.8 0 01-2.6.7 10 10 0 01-5.2-1.3c-1.4-.7-2.3-1.6-3.3-2.4a7.5 7.5 0 00-3-1.4 6 6 0 00-2.9 0c.3.1.5.2.6.4.5.3 1 .4 2 .5.4 0 .2.3-.5.7a2 2 0 01-1.6.8c-1 .6-1.3.2-1.7-.2 0 .3 0 .5-.2.8a.6.6 0 010 .4l.2.7c0 .2 0 .3.2.4.2.2.3.4.3.7 0 .2.1.3.3.4l.6.6c.6.2.8.7 1 1.2.4.2.6.5.7.9.2 0 .4.2.6.4l2.6.1c.8.1 1.4.6 2 1.2h1.2a4 4 0 011.3-.3h2.3c.5.2.9.4 1.2.8.5.5 1.2.4 1.8.2a2.7 2.7 0 012.4 0 2.3 2.3 0 011-.2c.4-.3.7-.4 1-.4.6 0 1 0 .9.8 0 .2-.2.4-.3.4-.3.6-.7.7-1.3.7-.1.4-.3.7-.5.8.3.9 0 1.3-.7 1.2 0 .3-.3.4-.6.4a1.4 1.4 0 01-1 .5l.4.6c.4.7-.2 1-.8 1v1.2c.7.4.8.8.2 1.2.4.7.3 1.3-.5 1.6 0 .4 0 .8-.3 1-.2.2-.5.3-.3.6.3.5.2 1.1-.2 1.2l-.2.1-.2.2a9.6 9.6 0 00-1.5 1c-.1 0-.2.1-.2 0a9.6 9.6 0 01-1.8 2.4c0 .5-.4 1-1 1.1a.4.4 0 01-.3.4c.3.3.5.6.2 1a3 3 0 01-1.3.8c-1 .3-1.7.2-2-.2-.4-.3-.3-.6 0-.7-.7 0-.8-.2-.8-.7 0-.2.1-.2.3-.1.4 0 .7-.2 1-.3l.5-.6c0-.7.5-1 1.1-1.3.5-.2 1-.6 1.4-1.2l.9-1.5a1.2 1.2 0 01-.3-.7 1.5 1.5 0 01-.5-.6c-.5 0-.7-.2-.7-.5a1.1 1.1 0 01-.3 0c-.3.1-.5.3-.7.2a6.9 6.9 0 01-1.1 1c-.2.3-.4.5-.7.5-1 .1-1.5 1.2-2 1.7-.2.1-.3.4-.4.7 0 .6-.1 1-.4 1h-.4a1.2 1.2 0 00-.4 0c.3.3.3.6 0 .9-.1.3-.4.4-.8.4a3.6 3.6 0 01-1.6-.2c-.4-.2-.5-.5-.5-.7-.3-.2-.4-.3-.3-.5 0-.2.2-.3.4-.2l.6-.2a5.2 5.2 0 011.8-1.4 3 3 0 01.7-.7c0-.5.5-1 1-1.4l.1-.6v-.3c-.2-.3-.3-.7-.1-1a1.3 1.3 0 010-.6c-1.1.6-1.5.4-1.6-.1-.4.3-.8.5-1 0-.4.1-.8.3-1.2.1l-.8.2-.4.7c0 .5-.2 1-.5 1.5a9.3 9.3 0 01-.7 1.5 1 1 0 01-.1.5c0 .6-.2.9-.5 1a2.4 2.4 0 01-.4.8v.2c.1.3.1.7-.2 1l-1 .6h-1c-.4-.3-.4-.4-.3-.6a.6.6 0 01-.5 0l-.4-.3c-.1-.2-.1-.4.1-.5l.9-.6c0-.2.2-.3.4-.4.2-.4.4-.6.6-.7l.7-1.5c.1-.1.2-.3.1-.4l.1-.3s.2-.1 0-.2a1.4 1.4 0 01.2-1.2c.3-.4.6-1.4.3-2v-.8h-.3c-.2-.2-.4 0-.6.2l-.4.6c-.1.8-.5 1.5-1 1.6v1.2c0 .4 0 .7-.2.7s-.4.2-.5.5a1 1 0 00-.1.3c.3.3.2.7-.1 1-.6.6-1.4.5-2.2.3-.6-.3-.8-.5-.7-.8-.8 0-.7-.7 0-.9.8-.2 1.4-.7 1.9-1.4 0-.8.2-1.3.7-1.4 0-.5.2-1 .4-1.4.2-.4.3-.8.2-1.3-.4-.3-.4-.6 0-1 .1 0 .1 0 0-.2-.3 0-.3-.3-.3-.5s0-.2-.2-.2c-.6-.1-.5-.4-.2-.7.1 0 .2-.3 0-.4l-.1-.4c-.4-.3-.2-.6 0-.9l-.4-.8c-.7 0-1-.4-.6-.9a3.4 3.4 0 01.7-.6c.1-.3.3-.6.2-.8-.2-.6.5-1 1-1.4a.9.9 0 01-.1-.4c-.3-.3-.2-.6.1-.8a1 1 0 01-.1-.5c-.8.2-.8-.3-.4-1-.5-.3-.4-.8.5-1.5a1 1 0 010-.4 2 2 0 00-1 .3c-.3.3-.6.2-.9.1a1.5 1.5 0 00-.4-.4.6.6 0 01-.2-.6c-1 0-1.1-.7-.6-1 .3-.3.6-.6.7-.9.2-.6.7-1 1.3-1.5v-.5a1.6 1.6 0 00-.7-.3 1.2 1.2 0 00-.6-.7c-.1 0-.2-.2 0-.4-.6-.4-.5-.7-.3-1z"/>
+  <g fill="#f7db17">
+    <path d="M364.5 122a1.4 1.4 0 01-.2 0 8.4 8.4 0 01-.8.7c-.2-.3-.5 0-.2.1l-.2.2c0 .3-.2.4-.5.4h-.1a3 3 0 010-.3 3.5 3.5 0 010-.4 3.9 3.9 0 00-.1.4 2.8 2.8 0 000 .4c-.8.3-1.3 1.1-1.9 1.7l-.4.8c0 .2 0 .9-.3.9h-.2c0-.1-.2-.1-.4 0h-1c-.2.2.4.2.7.3.1.1.2.3.1.5-.2.7-1.8.5-2.3.2-.2-.1-.2-.3-.2-.5h.3c.2 0 .4 0 .5-.2 0 0 .1 0 0-.1 0-.1 0-.1 0 0a1.3 1.3 0 01-.5 0 2.6 2.6 0 01-.5 0h-.2c0-.1.2 0 .2 0l.7-.3a5.3 5.3 0 011.9-1.4l.8-.7c0-.7.4-1 .8-1.5l.3-.7v-.3c-.2-.4-.3-.7-.1-1a1.5 1.5 0 010-.8.3.3 0 000-.1 6.2 6.2 0 01.8-.6v.8a1.3 1.3 0 00-.2.3.5.5 0 000 .2v.1a.4.4 0 010-.3l.3-.2.7-.4.7-.6v1l-.6.7v.1h.1a2.3 2.3 0 01.5-.7 3.2 3.2 0 011-.6v1a1.5 1.5 0 00.5.9z"/>
+    <path d="M349 113l.2-.2.4-.6a4 4 0 01.5-.6 4 4 0 00-.4.7 5.8 5.8 0 00-.4.5v.2c.1.3.1.5.3.7l.3-.4a1.6 1.6 0 01.4-.4 1.8 1.8 0 00.5-.6h.1l-.2.4a2 2 0 01-.3.3l-.4.3a1.3 1.3 0 00-.2.4v.3c-.2.3-.5.5 0 .7a.6.6 0 00.1.5l-.1.7c-.3.2 0 .2.1.2l.4-.4a4.3 4.3 0 01.3-.4l.4-.5.1-.5h.1a1.4 1.4 0 01-.1.6 2 2 0 01-.5.5 3.8 3.8 0 00-.2.4 2.6 2.6 0 00-.3.4c.2.1.2.4.2.7h.1l.2-.2.2-.4h.1l-.2.4-.2.3c.2.1.2.3 0 .5-.4.3-.3.4 0 .7v1.2l.1.3h-.1v-.3c-.4.7-.6 1.1-.7 1.8-.6.1-.5.8-.6 1.3a3.9 3.9 0 01-1.9 1.5c-.1 0-.5.1-.5.3 0 .1.2.3.4.2.4-.5.7-.2.2.2v.3c.5.4 1.6.5 2.2.2.3-.3.5-.5.2-.9 0-.5.2-1 .8-1.2v-.4l.1-1.3.2-.1c.2 0 .6-.7.7-1.3v-.4c.1-.2.2-.2.3 0 0-.2 0-.3.2-.4.2-.3.5-.6.8-.4a3 3 0 01-.1-.8 2.7 2.7 0 010-1l.2-.2.3-.7.3-.7h.1l-.3.7-.3.8v.1a2.5 2.5 0 00-.1 1l.2.9.2.4v.6c.4.6 0 1.7-.3 2.2a1 1 0 00-.1.8c.2.2 0 .4-.1.6v.1c0 .2 0 .4-.2.5l-.7 1.6c-.4.1-.5.3-.6.7-.3.1-.3.2-.4.4a2.7 2.7 0 01-.9.6c-.3.1 0 .2.2.4.2.1.4-.2.6-.4.2-.3.3-.2.2 0a2 2 0 00-.2.7l.7.3c.4 0 .9-.4 1.2-.6.3-.2.2-.5.1-.8a2 2 0 01-.5 0 3.4 3.4 0 01-.5-.3 2.8 2.8 0 001 .2v-.3a2.7 2.7 0 00.5-.8c.4-.2.4-.4.4-.9l.1-.5a10 10 0 00.7-1.6c.4-.4.5-.9.5-1.4 0-.2.1-.3.3-.3a3.8 3.8 0 00.3-.5l.1-.4a.8.8 0 01.2-.2 1 1 0 000-.5 1.1 1.1 0 00-.1-.4.5.5 0 01-.1-.2v-.2h.1c.1 0 0 0 0 0v.1a.5.5 0 000 .2c.2.2.2.3.2.5a1 1 0 010 .5.7.7 0 00-.2.2 1.7 1.7 0 000 .3l.6-.1.4-.5.2-.6c.1 0 0 0 0 0a2 2 0 01-.1.7l-.3.3c.4.2.7 0 1 0V119l.4-.7c.1 0 .1 0 0 0l-.2.8v1c.1.4.2.5.5.3l.4-.2v-.1a18.2 18.2 0 011.8-1.6c.1.1 0 .1 0 .1a6.5 6.5 0 00-.8.7l-.8.7v.3c0 .3.1.5.6.3l.6-.2a1.3 1.3 0 01.3-.2 8 8 0 01.5-.3l.5-.3a3 3 0 01.1-.6l.7-1.3a2.3 2.3 0 001.1-1.1h.1l-.4.7a2.5 2.5 0 01-.7.5l-.7 1.2a2.7 2.7 0 00-.1.5v.1a2.8 2.8 0 000 .8c.2 0 .4 0 .7-.3l.7-.7a1.7 1.7 0 01.2-.5 1 1 0 01.4-.4h.1v.1a.9.9 0 00-.4.3 1.7 1.7 0 00-.2.5v1.1l1-.5v1c0 .3.2.6.4.8a2.8 2.8 0 01.5-.6l.3-.3.2-.2.3-.2-.2.3-.2.2-.3.2v.5h.6c0 .5 0 .6.5.6a3.2 3.2 0 010-.5l.1-.5h.1a1.9 1.9 0 00-.1.5 3.1 3.1 0 000 .5c.2.3.3.4.7.6l.2-.5a1.4 1.4 0 000-.4h.1v.5l-.3.5v.5a3 3 0 01.2-.3l.3-.4c.1 0 .1 0 0 0 0 .2 0 .3-.2.4a4 4 0 00-.2.4l.2.2c-.6 1-1.3 2.5-2.5 3-.6.2-.9.5-1 1.2a1 1 0 00-.5.6l-1.2.3c0 .3 0 .4.3.4l.7-.3c.1 0 0 .5-.5.8v.1c.4.6 1.4.4 1.9.2.4 0 1-.5 1.2-.9.1-.2 0-.4-.2-.6-.8.1-.6-.6 0-.3.2 0 .3 0 .3-.3.6-.2.9-.5 1-1 .6-.7 1.2-1.4 1.6-2.1.1-.2.2-.4.1-.5a1 1 0 00.2-.5l.1-.4h.1v.5a4.5 4.5 0 01-.2.3c0 .1 0 .2.2.2l1.5-1c0-.3.2-.4.4-.4l.2-.1c.1-.4 0-.6-.2-.8-.1-.4.1-.5.4-.7.2-.2.2-.7.2-1v-.2a2.6 2.6 0 000-.3l.1.3v.1c.3-.1.6-.3.7-.6 0-.3-.1-.6-.3-.8a9.6 9.6 0 01-.6.2 10.2 10.2 0 00.7-.4 1.3 1.3 0 00.3-.2c.2-.3-.3-.5-.5-.6l-.7-.7v-.1l.7.6v-1.1l-.2-.4a1.1 1.1 0 01-.5-.4 1 1 0 01-.1-.5l.2.4.4.4h1c.3-.3-.2-.7-.3-.9l-.1-.5h.1a1 1 0 00-.2-.2.6.6 0 00-.1 0v-.2a.7.7 0 01.2.1l.2.2a.9.9 0 00.1 0c.3 0 .5-.2.7-.5a3.6 3.6 0 00-.3-.4 10 10 0 00-.5-.3v-.1h.1a4 4 0 01.8.8c.4 0 .4 0 .6-.3a1.5 1.5 0 00-.2-.4 2.5 2.5 0 00-.3-.4c0-.1 0 0 0 0 .2 0 .3.2.4.3l.2.5.4-.1c.3-.2 0-.8 0-1a2.8 2.8 0 00-.1 0l-.2-.2c0-.1 0 0 0 0h.2l.2.1.4-.6c0-.4 0-.2.5-.3.4 0 .6 0 .9-.6.1 0 .2 0 .2-.3s0-.4-.3-.4c-.5 0-.8 0-1 .3v.3c0 .1 0 0 0 0l-.2-.2c-.4 0-.7 0-1.1.2h-.2l.2.3.1.4a1 1 0 00-.2-.4 1.8 1.8 0 00-.3-.4 2.6 2.6 0 00-1-.2l.2.1.2.2v.1a7.7 7.7 0 01-.2-.2 6.5 6.5 0 01-.2-.2 2.7 2.7 0 00-.9.2l-.6.2.4.5.2.6a2.1 2.1 0 00-.3-.6 1.9 1.9 0 00-.4-.4 1.8 1.8 0 01-.5 0l.2.3-.3-.4a1.4 1.4 0 01-.5-.2 8.3 8.3 0 01.2 1.5 7.8 7.8 0 00-.2-.9 4.7 4.7 0 00-.1-.7 1.7 1.7 0 01-.2-.2 2.1 2.1 0 00-.6-.4 1 1 0 01-.2.7c-.1 0 0 0 0 0a.8.8 0 00.1-.8 3.1 3.1 0 00-1-.2 5.3 5.3 0 01.5.8l.3.5v.5a2 2 0 00-.1-.5.7.7 0 00-.3-.4 5.6 5.6 0 00-.3-.5 4.6 4.6 0 00-.3-.4h-.4.1a.6.6 0 010 .3.5.5 0 000-.2.7.7 0 00-.2-.1h-.8a5 5 0 011 2.3 4.8 4.8 0 00-.4-1.2 5.1 5.1 0 00-.7-1h-.6a1.7 1.7 0 01.4.4c0 .1 0 .1 0 0a1.6 1.6 0 00-.3-.1 2.4 2.4 0 00-.3-.2 5 5 0 00-.3 0l-.1.1a4.7 4.7 0 011 1.1c0 .1 0 0 0 0a3.8 3.8 0 00-.6-.6 4.7 4.7 0 00-.6-.4h-.6a5 5 0 01.5 1.7h-.1a3.5 3.5 0 00-.2-.8 6.2 6.2 0 00-.3-.9 8 8 0 01-.4 0 9.1 9.1 0 01.3 1.6v.1a9.3 9.3 0 00-.2-1 9.3 9.3 0 00-.3-.8 3.9 3.9 0 00-1.3-1 1.7 1.7 0 01.4 1.1v.1a1.6 1.6 0 00-.2-.7 1.7 1.7 0 00-.4-.6 2 2 0 00-.3 0 15.6 15.6 0 00-1 0c.2.1.4.4.4.6 0-.2-.3-.5-.6-.7h-.6l.3.3.2.5.2.6.4.4s.1 0 0 0c0 .1 0 .1 0 0a1.1 1.1 0 01-.5-.3 1.5 1.5 0 01-.2-.7 1.3 1.3 0 00-.2-.4 2.7 2.7 0 00-.3-.4h-.7l.2.8.1 1h-.1a7.1 7.1 0 000-1 4.5 4.5 0 00-.3-.8 1 1 0 00-.6-.5.6.6 0 010 .3h-.1a.5.5 0 000-.3c-.2-.5-.3-.7-.6-.8v.4l-.2.4h-.1l.1-.5v-.4c0-.6-.2-1-.8-1.2v.2l-.1.5h-.1v-.5a1.9 1.9 0 000-.3l-.5-.5a2.3 2.3 0 010 .7 3 3 0 01-.4.8h-.1a3 3 0 00.3-.8 2.2 2.2 0 00.1-.8 1 1 0 01-.2-.3v.2h-.1v-.2l.1-.1v-.1a.7.7 0 00-.3-.5 1.5 1.5 0 01-.2.5h-.1c-.1 0 0 0 0 0l.1-.3.1-.3a1 1 0 01-.1-.2.8.8 0 01-.1.2 1.2 1.2 0 01-.2.2c-.1-.1 0-.1 0-.1l.1-.2a.7.7 0 00.1-.2v-.2c0-.3 0-.4-.2-.7a.9.9 0 00-.3 0 2.8 2.8 0 00-.5.4v-.1a3.2 3.2 0 01.4-.3.9.9 0 01.4-.1.4.4 0 000-.2l-1 .3a1.6 1.6 0 01-.9-.2h.8c.3 0 .7 0 1.1-.2l.2-.6a1.7 1.7 0 01-.5 0l.6-.1v-.2c0-.2.3-.2.4 0 .2 0 .3.2.4.3.3.2.6 0 .9-.2h-.2v-.1h.3c.6 0 1 0 1.4-.5a7 7 0 01-1 0c-.2 0-.4 0-.6-.2l.7.1h1l.5-.3a5.4 5.4 0 01-2-.6 1.4 1.4 0 00-.6-.3c-.5 0-1 0-1.4.3l-.3-.3-.4-.2h-.6s-.1 0 0 0h1.2a4.5 4.5 0 011.7-.3 5.7 5.7 0 011.7-.2v-.2c.3-.3.4-.6.3-.9-.1-.2-.4-.5-.8-.7h-1.3a4 4 0 00-.8.1l.6.4.4 1v.1h-.2a2 2 0 00-.4-1c-.1-.2-.6-.3-.7-.4l-1.3.2-.7.4c.3-.1.6 0 .8 0 .3.2.5.4.6.8v.1h-.2a1 1 0 00-.5-.7c-.4-.2-1.2 0-1.6.3a4.2 4.2 0 00-.6.6h-.2v-.2l.7-.6.7-.4a2 2 0 011-.5l1.3-.2a1 1 0 00-.5-.5 1.4 1.4 0 00-.8 0c-.5.1-1 .4-1.5.7h.5l.1.2h-.5a1.4 1.4 0 00-.4 0l-1.5 1.2c-.5 0-.8 0-1 .2l-.1.6-.2.7c-.5.5-1 .9-1.3 1.5a1.4 1.4 0 01-.3.5.5.5 0 01.3.1v-.2l.2-.4h.1a1.2 1.2 0 00-.1.4v.5h-.2a.3.3 0 00-.1-.2.5.5 0 00-.3 0l-.3.2-.2.3c0 .3.2.3.5.3.6 0 .1.4.4.7l.5.4h.5c0-.4 0-.6.2-.6a.8.8 0 01.2-.4.8.8 0 000 .2.8.8 0 00-.1.2v.4a2.4 2.4 0 011-.2c.7-.8 1-.6.4 0l-.1.2a1.4 1.4 0 00-.2.6c-.2.1-1 .8-.7 1 .2 0 .4 0 .3.2-.1.2-.4.6-.3.9h.3a6.2 6.2 0 00.7-.6 3.8 3.8 0 00.5-.8h.1a9 9 0 01.3-.8c0-.2.1-.5.3-.7l.3.3a.4.4 0 00.2 0 .4.4 0 00.3 0l.2-.3h.1a1.2 1.2 0 01-.3.4.5.5 0 01-.3 0 .5.5 0 01-.2 0 1.1 1.1 0 01-.3-.3 12 12 0 00-.5 1.4v.1a5.6 5.6 0 01-1.2 1.4l.2.5 1-1 .8-1a6 6 0 01-.3.6v1.1h-.1v-.9l-.3.3a11.6 11.6 0 01-1 1c-.3.3-.6.3-.2.7l.3-.3.4-.3h.1v.1l-.4.3-.4.3a.6.6 0 00.1.3.5.5 0 01.1 0l.8-.6c.1 0 0 .1 0 .1l-.7.6a.7.7 0 01-.1 0c-.3.3-1.2.8-1 1.2l.6-.2.6-.5c.1 0 0 0 0 .1a2.5 2.5 0 01-.6.5v.2-.1a3.6 3.6 0 01-.7.1c.1.4 0 .7-.3 1 0 .1-1 .9-.6 1a1 1 0 00.3.2z"/>
+    <path d="M349.4 100.1a2.2 2.2 0 00-.6-.3 1.4 1.4 0 00-.5-.5c-.2-.2-.2-.1-.1-.3l.2-.1a.9.9 0 01.3 0 .4.4 0 01.2.2h.1c.1 0 0 0 0 0a.5.5 0 00-.2-.2 1 1 0 00-.4-.1.7.7 0 00-.4 0l-.2-.5.4.1.2.1a.7.7 0 00-.2-.2 2 2 0 00-.2 0 2.9 2.9 0 012.1.2c.4.1.6.3.8.6l-.2.2c-.5 0-.8 0-1 .2-.2.1-.2.4-.2.6z"/>
+  </g>
+  <path d="M365 121.8l-.4.2c0-.3.2-.4.3-.6v.2l.1.2zm2 4.2a2.3 2.3 0 01-.4.4 4 4 0 01-.5.4v-.1l.4-.4.4-.4zm1.3-1.6l-.2.3h-.1l.2-.3zm-.7 0a1.1 1.1 0 01-.2.3 1 1 0 01-.5.4v-.1a1 1 0 00.4-.3 1 1 0 00.1-.4h.1zm1.2-1.6a1 1 0 00-.1.2 1.1 1.1 0 00-.1.2h-.1a1.1 1.1 0 01.3-.5zm1 0v.5l-.3.5c-.1 0 0 0 0 0l.1-.5.2-.5zm-.4-6c.3.5.4 1 .4 1.5a7.3 7.3 0 01.1-.6 1.4 1.4 0 00.3-1.1c0-.1.1 0 .1 0v.6a1.7 1.7 0 01-.3.6l-.2 1h-.1v-.1c0-.6 0-1.2-.4-1.8v-.1zm-.8 1v.3h-.1v-.4h.1zm-.2 1.4a6.2 6.2 0 01.2 1.4 1 1 0 01.1-.1l.3-.3h.1a1 1 0 00-.3.3.7.7 0 00-.2.4 5 5 0 00-.1-.9 5.9 5.9 0 00-.2-.8zm1 .5a3.6 3.6 0 01.1 1.2v-.6a3.6 3.6 0 00-.1-.6zm1-.2v.6a1.5 1.5 0 010 .5 1.2 1.2 0 000 .6l.1.6a2.5 2.5 0 01-.3-.6 1.3 1.3 0 010-.6 1.4 1.4 0 00.2-.5 2.3 2.3 0 000-.6zm.5-1.5l-.1.3v.2h-.1v-.6h.1zm-.5-2.6v.2c.1 0 .1 0 0 0 0 .1 0 0 0 0v-.2s-.1 0 0 0c0-.1 0 0 0 0zm.2-2v.8a.8.8 0 00-.2.3 1.4 1.4 0 000 .6h-.1a1.4 1.4 0 010-.6.9.9 0 01.3-.4v-.7zm-2-.7c.4.2.6.4.8.7.2.2.3.5.3.9l-.6-.2v1.8c-.2.5-.5.8-1 1a3.8 3.8 0 000-1.8h.1a3.6 3.6 0 010 1.6 1.5 1.5 0 00.7-.8 3.7 3.7 0 00.1-1.9l.6.2c0-.3-.1-.5-.3-.8a2.5 2.5 0 00-.7-.6v-.1zm5.2-1v.2h-.1v-.2s0-.1 0 0h.1zm-1.2 0l.3.1a.8.8 0 01.1.2v.1a.8.8 0 00-.2-.2.6.6 0 00-.2-.2zm-1.8.5l.3.5v.6c-.1 0-.1 0 0 0l-.1-.6a1 1 0 00-.3-.5h.1zm-6 .5v.4l-.1.1v-.5zm1-.6l.2.4v.1h-.1v-.1l-.1-.3zm2.4 1.6v.1a1.1 1.1 0 010 .2.8.8 0 000-.2.6.6 0 00-.1 0v-.1zm.8-1.8v.2a.2.2 0 010 .2.1.1 0 000-.2c-.1-.1-.1-.1 0-.1zm-5.5.3a1 1 0 00.2.7c.2.1.2.3.3.4v.4h-.1v-.4a.9.9 0 00-.2-.3 1 1 0 01-.2-.4 1.1 1.1 0 01-.1-.4zm2.2 1.5l.2.7v.7c0 .3 0 .6.2.8l.6.7a2.9 2.9 0 01-.1-1l.3-1c.2 0 .2-.2.3-.3v-.4h.1v.4a1.5 1.5 0 01-.3.5 1.6 1.6 0 00-.3.9c0 .3 0 .6.2 1h-.1c-.4-.2-.6-.5-.8-.8a1.3 1.3 0 01-.2-.8v-.7a1.8 1.8 0 00-.2-.6c0-.1.1 0 .1 0zm-.9 1.4c0 .2 0 .5-.2.7a3.4 3.4 0 01-.4.6h.3a2.2 2.2 0 00.7-.6l.3-.3c.1 0 0 0 0 0a3.6 3.6 0 01-.2.4 2.5 2.5 0 01-.3.2 24.5 24.5 0 010 .4v-.2a1.5 1.5 0 00-.1-.1 2.2 2.2 0 01-.4.2l-.4.2v-.1l.4-.7.2-.7h.1zm-1 0v.1h-.1c-.1 0 0 0 0 0v-.2z"/>
+  <path d="M363 113.7c.2.3.2.6.2 1a1.9 1.9 0 01-.4.8 1.9 1.9 0 00-.5.6 2.6 2.6 0 00-.2.6l.2-.3.5-.3a4.6 4.6 0 001.1-.9h.1c.1 0 0 0 0 0a4 4 0 01-1.2 1 1 1 0 00-.4.3 2.3 2.3 0 00-.4.5c0-.4 0-.7.2-1l.5-.6.4-.8c0-.3 0-.6-.2-.9h.1zm2.3 3.5l.1.4.1.1c.2.3.3.5.3.8l-.1 1h-.1a1.8 1.8 0 00-.4-1 3.4 3.4 0 00-.8-.6v-.1c.4.2.7.4.9.7l.3.6a3.4 3.4 0 000-.6 1.3 1.3 0 00-.1-.7l-.1-.2c-.2-.2-.3-.3-.2-.4zm1 0l.1.2c0 .1 0 0 0 0h-.1l-.2-.2h.1zm1 .3l-.2.7-.2.7.2-.7.2-.7zm.7 4v.1a.3.3 0 010-.2zm-.7-1.2v.3l-.2.4v-.4l.1-.4h.1zm-1 0h.1v.1h-.1v-.1zm-1.1-.6a7.3 7.3 0 01-.1.2v.2h-.1a5 5 0 010-.2 5 5 0 010-.2h.1c.1 0 0 0 0 0zm-1.7 1.8a.7.7 0 00-.1.2 1.3 1.3 0 000 .2s-.1.1-.2 0v-.2a.8.8 0 01.2-.3h.1zm-4.8 4.6a.7.7 0 010 .2 1.1 1.1 0 01-.2.1c-.1 0-.1 0 0 0a.8.8 0 00.1-.3h.1zm.8-.4a.3.3 0 01-.1.2.6.6 0 01-.2 0 .4.4 0 00.1-.1.3.3 0 000-.1h.2zm1-.6a.5.5 0 010 .1.5.5 0 01-.2.1.4.4 0 000-.2h.2zm1.5-3.8l-.1.4a1.4 1.4 0 000 .4h-.1a1.4 1.4 0 010-.4v-.5h.1zm1-10.3a.9.9 0 01-.1.3 1.4 1.4 0 01-.2.3h-.1l.2-.3a.8.8 0 000-.3l.1-.1zm-1-1a1.9 1.9 0 01.1 1 1.8 1.8 0 000-.5 1.5 1.5 0 00-.2-.4c0-.1 0 0 0 0zm-1.4 1.7a1.5 1.5 0 01-.4-.4.7.7 0 01-.1-.4l.2.4.3.4zm1.5 2.6v.2h-.1v-.2zm-2-2l.6 1 .1.8c.2 0 .3-.1.4-.3v-.9a1.9 1.9 0 00.3-.6 3.5 3.5 0 00.1-.5h.1l.4.8.3.9h-.1a2.9 2.9 0 00-.3-.9 3.9 3.9 0 00-.3-.6 2.9 2.9 0 010 .4 2 2 0 01-.3.5l-.1 1-.4.3v.4h-.1c0-.4 0-.8-.2-1.2a2 2 0 00-.5-1zm1.2 5v.3l-.1.4h-.1v-.8h.1c.1 0 .1 0 0 0zm-2.2.9v.3l-.1-.3c0-.1.1 0 .1 0zm1.9-2.5a2.3 2.3 0 01-.2.6l-.3.5a1.1 1.1 0 00-.3.6 1.8 1.8 0 000 .7c0 .1 0 0 0 0a1.9 1.9 0 01-.1-.7c0-.2.1-.5.3-.7a2.1 2.1 0 00.3-.5 2.1 2.1 0 00.2-.6c.1 0 0 0 0 0zm-.5-.8v.6a2.2 2.2 0 01-.5.6 1.8 1.8 0 00-.4.5l-.2.5h-.1l.2-.6.5-.5a2 2 0 00.3-.5 1 1 0 00.1-.6h.1zm-2.4 1.2c0 .4 0 .7-.2 1-.1.3-.3.6-.6.8h-.1v-.1c.3-.2.5-.5.6-.8.2-.2.2-.6.2-1zm-3 1.7v.2l.1.1v.1h-.1l-.1-.2v-.2s-.1 0 0 0zm-1.3 0a2.7 2.7 0 000 .7l.4.6.1.5v.4l.4-.5a1.4 1.4 0 00.2-.6 1.6 1.6 0 010 .6l-.5.6h-.1a3.3 3.3 0 000-.5 1.8 1.8 0 00-.2-.4 2 2 0 01-.3-.7 2.7 2.7 0 01-.1-.7zm.2 4.2a2.6 2.6 0 01.1-.8h.1a2.5 2.5 0 00-.1.8h-.1zm-.2 1.1v-.4s0-.1.1 0v.4zm-.8 2l.2-.3.2-.3h.1a4 4 0 01-.2.4l-.2.2c-.1 0-.1 0 0 0zm-1.1-6.6v.2h-.1v-.2zm-2 4.5a2.9 2.9 0 000-.1v-.2h.1v.3zm5-8l-.3 1c0 .3.1.6.3.7.3.2.4.4.5.7v-.4c.1-.1.1-.3 0-.4h.1a2.7 2.7 0 010 1h-.1a6 6 0 010-.2l-.5-.6c-.3-.2-.4-.4-.4-.8l.2-1h.1zm-.4-1.3a2.5 2.5 0 010 .8 4 4 0 01-.3.7 2.4 2.4 0 00-.2 1c0 .4.1.7.3 1v.1a2.5 2.5 0 01-.2-2.1 3.8 3.8 0 00.2-.7c0-.3.1-.5 0-.8h.1c.1 0 0 0 0 0zm-2.3 3.3a.8.8 0 000 .4l.1.5c0 .1 0 0 0 0a1.5 1.5 0 01-.3-.5.9.9 0 01.1-.5h.1zm-1-.4v.3a.9.9 0 010 .3.4.4 0 00-.1.3l.1.2v.1a.8.8 0 01-.2-.3.5.5 0 010-.4.8.8 0 00.1-.2v-.3h.1zm5.8-8.6a2.3 2.3 0 00.3 1.5 2.6 2.6 0 01-.4-.7 2.3 2.3 0 010-.8h.1zm-.7.7a4 4 0 01.5 1.7h-.1a3.8 3.8 0 00-.5-1.6v-.1zm-3.6.1c-.4.5-.5 1-.6 1.3l.2.9.2.8a2.6 2.6 0 01-.2.8c-.1 0 0 0 0 0v-.8a2.3 2.3 0 000-.8 1.7 1.7 0 01-.3-1c0-.3.2-.7.6-1.2.1 0 0 0 0 0zm3.3-1.4v.5l-.4.4a.8.8 0 00-.3.4v.7c0 .1 0 0 0 0a1.9 1.9 0 010-.7 1 1 0 01.3-.5 1 1 0 00.3-.4.6.6 0 000-.4h.1zm-3.5.3v.7c0 .2-.2.4-.4.6a1.2 1.2 0 00-.4.6 2.9 2.9 0 00-.1.7h-.1a3 3 0 01.1-.8c0-.2.2-.4.4-.6l.4-.6a1 1 0 000-.6zm2 .1a.8.8 0 000 .2.5.5 0 00.1.3.6.6 0 01-.2-.2.8.8 0 010-.3h.1zm0-.5a.8.8 0 00-.5.4l-.2.7.2.5v.7a2.4 2.4 0 000-.7l-.3-.4a2 2 0 00-.5 1.2c0 .5.1 1 .5 1.5h-.1a2.7 2.7 0 01-.5-1.5c0-.5.2-.9.6-1.3 0-.3 0-.6.2-.8a1 1 0 01.5-.4zm-.7-.8v.1c0 .3 0 .6-.2.7a.8.8 0 00-.2.3 1.6 1.6 0 00-.1.4h-.1a1.7 1.7 0 010-.4 1 1 0 01.3-.4c.2-.1.2-.4.2-.6a2.7 2.7 0 000-.1h.1zm5.7 6l.1.5v.4a1.4 1.4 0 000-.4 1.9 1.9 0 00-.2-.4h.1zm0 2v.6l-.2.6-.3.6.2-.6a2.1 2.1 0 00.2-.6 1.6 1.6 0 000-.7h.1zm-1.2-1.8a2.5 2.5 0 01.7 2.5h-.1a2.4 2.4 0 00-.6-2.4v-.1c0-.1 0 0 0 0zm0 2a5.3 5.3 0 01-1 1.4 2.5 2.5 0 00-.5 1 1.4 1.4 0 00-.1-.6 1.9 1.9 0 00-.2-.4 1.4 1.4 0 01-.3-.9l.3-.8.3-.6a2.4 2.4 0 000-.6h.1c.1 0 0 0 0 0a2.6 2.6 0 01-.3 1.3 1 1 0 00-.3.7c0 .3 0 .6.2.8a2 2 0 01.3.8 2.6 2.6 0 01.5-.8 5 5 0 00.5-.6l.3-.7h.1zm-3.2-1a2.8 2.8 0 00.4 1.4v.1h-.1a2.3 2.3 0 01-.3-.7 3 3 0 010-.7zm-1.7 1v.3h-.1v-.3zm.6-1.6l-.1.5a1.4 1.4 0 01-.3.5c-.1 0 0 0 0 0l.2-.5a1.4 1.4 0 000-.5h.1zm-1.6 3.1a3.3 3.3 0 01-.3-1.7c0-.5.3-.8.6-1l.4-.7c.1-.2.2-.5.1-1s.1 0 .1 0v1l-.6.7a1.9 1.9 0 00-.5 1c0 .5 0 1 .3 1.7h-.1zm-1-1.1a.7.7 0 000 .3l.1.4a1 1 0 01-.2-.4.8.8 0 010-.4h.1zm4.6-3.2c.1.2.3.5.3.8 0 .3 0 .6-.2.9h-.1c-.1 0 0 0 0 0l.2-.9a1.5 1.5 0 00-.3-.8zm1.4-1.1a2.4 2.4 0 010 1.7 1.8 1.8 0 00-.2-.8 1.5 1.5 0 00-.5-.5c0-.1 0-.1.1 0a1.6 1.6 0 01.6 1v-.6a2.3 2.3 0 00-.1-.8zm.8-1.2l.4.8v1a2 2 0 000 .5 1 1 0 00.2.4 1 1 0 01-.2-.4 2.3 2.3 0 010-.5 3.5 3.5 0 00-.1-1 1.5 1.5 0 00-.4-.7c0-.1 0 0 .1 0zm-2.2-.2a1 1 0 00-.3.5v.7a2 2 0 010-.7c0-.2 0-.4.2-.5.1 0 .1 0 0 0zm-4.4 3a2 2 0 01-.3 1 2.5 2.5 0 01-.8.7c-.1 0 0 0 0 0l.7-.7c.2-.3.3-.6.3-1l.1-.1zm0-1.6v.5a2.2 2.2 0 01-.3.5l.1-.5v-.5h.1zm2.9-.2v1h-.1v-1zm.7-1.3c-.2.3-.3.5-.3.8l.2.7.3 1.2c0 .4-.2.7-.4 1.1l.3-1.1a1.9 1.9 0 00-.3-1.2l-.2-.7c0-.3 0-.6.3-.8.1 0 0 0 0 0zm-4.6-8.1a2 2 0 011-.5c.4 0 .8 0 1.2.3h.8-.8c-.4.5-.8.7-1.1.7a1 1 0 01-.9-.2c0-.1 0-.1 0 0a1 1 0 00.9 0c.2 0 .6-.1 1-.5a1.9 1.9 0 00-1-.1 2 2 0 00-1 .4c-.1 0 0 0 0-.1z"/>
+  <path d="M351.6 101a.3.3 0 01.3.3.3.3 0 01-.3.2.3.3 0 01-.2-.2.3.3 0 01.2-.3zm1.8 1.6a2.2 2.2 0 00.8-.7c.1 0 0 0 0 .1a2.3 2.3 0 01-.2.3l-.5.4c-.1-.1 0-.1 0-.1zm3.7-1.6a.5.5 0 01.3 0 .8.8 0 01.3.2.7.7 0 00-.3 0 .5.5 0 00-.2 0l-.1-.1zm-2 .1a.8.8 0 01.3-.4l.7-.1v.1a1 1 0 00-.7 0 .7.7 0 00-.3.5c-.1 0-.1 0 0 0zm.2.4a.4.4 0 010-.3.6.6 0 01.3-.1h.1a.5.5 0 00-.3.2.3.3 0 000 .2h-.1zm-3.6 1.1l-.1.3a.8.8 0 000 .3l-.1.1a1 1 0 010-.4c0-.1 0-.2.2-.3zm1 .5v.2-.2zm-.6-1.1a1 1 0 00.3 0h.3a1.4 1.4 0 01-.3.1 1 1 0 01-.3 0s-.1 0 0-.1zm.6-2a.3.3 0 00-.2.1.4.4 0 00-.1.2h-.1a.5.5 0 01.2-.3.4.4 0 01.2 0h.1zm-1 .2a.8.8 0 00-.2 0 .3.3 0 000 .2h-.1c-.1 0 0 0 0 0a.4.4 0 010-.2.9.9 0 01.3-.1zm-.7 0a.8.8 0 00-.1.1.7.7 0 00-.1.2h-.1a.7.7 0 01.1-.2.9.9 0 01.2-.2v.1zm-.8.7a1.7 1.7 0 00-.4.4v-.1a2 2 0 01.4-.4zm0 .9v.1l-.2.2c-.1 0-.1 0 0 0v-.2l.2-.2c.1 0 .1 0 0 0zm-.7.2v.3l-.1.1c-.1 0 0 0 0 0v-.4zm1 1.4v.6h-.1v-.6h.1zm-.6-.4v.3h-.1v-.3h.1zm-.6-4.5a.7.7 0 01.5.4v.1h-.1a.7.7 0 00-.2-.3.7.7 0 00-.2-.1v-.1zm5.2 6.7a1.6 1.6 0 010 1.4h-.1a1.6 1.6 0 000-1.3v-.1zm-1.7 2c0-.3.2-.5.3-.7l.4-.6c.2-.2.3-.4.3-.7a1.8 1.8 0 000-.7h.1a2 2 0 01-.3 1.5 6.3 6.3 0 00-.4.5l-.3.7h-.1zm-2.2-.6a.7.7 0 01.2-.3.9.9 0 01.3-.1.8.8 0 00-.2.2.6.6 0 00-.2.2zm-.4-.2l.3-.3.3-.2v.1a1 1 0 00-.3.2 2 2 0 00-.2.3c-.1 0-.1 0 0 0zm2.3-2.2h.2a.8.8 0 00.3 0v.1a.8.8 0 01-.6 0c0-.1 0-.1 0 0zm-1.2-.1l.1-.1c.1 0 .1 0 0 0v.1c-.1 0 0 0 0 0zm24.2 7a1.1 1.1 0 01.2.3h-.1a.8.8 0 000-.1.8.8 0 00-.2-.2c0-.1 0 0 0 0zm-26.8 12.5l.3.3a1 1 0 00.5 0v.1a1 1 0 01-.5 0 1.7 1.7 0 01-.4-.3c0-.1 0-.1 0 0z"/>
+  <g fill="red">
+    <path d="M368.9 99.6a8.2 8.2 0 001.7 0c-.6.3-1.2.6-2 .7a.8.8 0 00.3-.4.4.4 0 000-.3zm-1.4-.1h1.2v.4s0 .2-.2.3c0 0-.1 0 0 .1a5.6 5.6 0 01-1.3 0 1 1 0 00.3-.5.6.6 0 000-.4zm-10.5-3c.7-.2 1.3-.2 2-.2a1 1 0 01.5.4c.1.2.2.5.1.8l.1.1h.1l-.1-1a1 1 0 00-.3-.2h.2a5 5 0 012.1.6c.2.2.3.3.2.5l-.3.5v.2h.2l.3-.7a.7.7 0 000-.3l1.7.8a.5.5 0 010 .5 1 1 0 01-.5.3v.1l.1.1c.3 0 .5-.2.6-.4a.6.6 0 000-.4l1.2.6v.3c0 .2-.1.3-.3.4 0 0-.1 0 0 .1 0 .1 0 0 0 0 .3 0 .5-.2.6-.4a.5.5 0 000-.3l.4.1a8.1 8.1 0 001.3.4.5.5 0 01.1.4.7.7 0 01-.2.3v.2c-1.4-.1-2.7-.9-4.1-1.4l-.5-.2-1.6-.6-.1-.1a8.5 8.5 0 00-1.5-.4 6.1 6.1 0 00-1.6 0h-.1l-.1-.8a1.3 1.3 0 00-.5-.4z"/>
+    <path d="M354.6 97a8.7 8.7 0 012-.5c.4.1.6.3.7.5v.6a4.2 4.2 0 00-1.7.2 1.2 1.2 0 00-.7-.6 1.2 1.2 0 00-.3-.1zm7.4 3.9a9.4 9.4 0 00-.5-.4 7 7 0 00-3-.8c.3-.4.4-.8.3-1.1a1.7 1.7 0 00-.7-.8h1a8 8 0 012 .6c0 .3.1.6 0 .8 0 .3-.2.5-.5.7 0 0-.1 0 0 .1 0 .1 0 .1 0 0 .4-.1.6-.4.7-.7v-.8l1 .6 1 .8c0 .4 0 .6-.3.8h-.9v.2z"/>
+    <path d="M364 102.4l-1.8-1.4c.4 0 .7 0 1-.2.1-.1.3-.4.3-.8l1.1 1 .6.5v.4a.5.5 0 010 .2.6.6 0 01-.4.2h-.7z"/>
+    <path d="M366.2 103.8a11.8 11.8 0 01-2-1.3h.7a.8.8 0 00.4-.2l.1-.4a1 1 0 000-.2 10.5 10.5 0 002.1 1.4c0 .3 0 .4-.3.5a3 3 0 01-1 .1z"/>
+    <path d="M368.4 104.7a11.9 11.9 0 01-2-.8c.4 0 .7 0 1-.2.2 0 .3-.2.3-.5a10.8 10.8 0 001.3.6v.4l-.5.4s-.1 0 0 0z"/>
+    <path d="M373.2 104.2s.4-.1.2 0c-1.4 1-3.1 1-4.8.5.3-.1.5-.2.6-.4a.6.6 0 000-.5l1.7.4a.4.4 0 01-.1.3l-.5.3s-.1 0 0 .1c0 .1 0 0 0 0 .3 0 .5-.2.6-.3a.6.6 0 00.2-.4 9 9 0 002 0zm-9.7 24l-.2.4-1.2.3c0 .3 0 .4.3.4l.7-.3c.1 0 0 .5-.5.8v.1c.4.6 1.4.4 1.9.3a3 3 0 001.3-1l-.3-.6c-.4.1-.6 0-.5-.2a3.9 3.9 0 00-1.5-.2zm-15.1-4.8c-.3.3-.7.5-1 .6-.2 0-.6.1-.6.3 0 .1.2.3.4.2.4-.5.7-.2.2.2v.3c.5.4 1.6.5 2.2.2.3-.2.6-.5.2-.9a1.7 1.7 0 010-.2h-.6l-.4-.3-.4-.4zm10 3.5h-.1c-.2.2.3.2.6.3.2.1.2.3.2.5-.3.7-1.9.5-2.4.2-.2-.1-.2-.3-.2-.5h.3c.2 0 .4 0 .6-.2v-.2h-.2a1.3 1.3 0 01-.4.2 2.6 2.6 0 01-.5 0l-.2-.2h.2l.7-.2.1-.1c.5 0 1 0 1.3.2zm-7.2-.4l-.2.3a2.7 2.7 0 01-.9.6c-.2.1 0 .2.2.4.2.1.5-.2.6-.4.2-.3.3-.2.2 0l-.2.7.7.3c.4 0 1-.4 1.2-.6.3-.2.2-.5.1-.8a2 2 0 01-.5 0 3.4 3.4 0 01-.5-.3l-.7-.2zm2.8-26.4h.3l.6.1a4.5 4.5 0 011.7-.3 5.7 5.7 0 011.7-.2v-.2c.3-.3.4-.6.3-.9-.1-.2-.4-.5-.8-.7h-1.3a4 4 0 00-.8.1l.6.4.4 1c-.2.1-.2 0-.2 0 0-.4-.2-.6-.3-.9l-.8-.4a9 9 0 00-1.3.2c-.3 0-.5.2-.7.3l.8.1c.3.1.5.4.6.8-.1.1-.1 0-.1 0a1 1 0 00-.5-.6c-.4-.2-1.3 0-1.7.2a4.2 4.2 0 00-.6.6l2 .4zm-2.3-.4v-.1l.7-.6.7-.4a2 2 0 011-.5l1.3-.2a1 1 0 00-.5-.5l-.8-.1-1.5.8h.5l.1.2h-.4a1.4 1.4 0 00-.4 0h-.1l-1.3 1c.3.1.6.2.7.4z"/>
+  </g>
+  <path fill="#0093dd" d="M409 156.5l20.8-47-15.3-24.7-27.3 10-12.7 49.8a219.4 219.4 0 0134.5 11.9z"/>
+  <path fill="#fff" d="M382.6 113a251.7 251.7 0 0139.6 13.7l-8 18.2a232 232 0 00-36.5-12.7z"/>
+  <path fill="red" d="M415.4 142l5.4-12.2a248.6 248.6 0 00-39-13.5l-3.2 12.4a235.9 235.9 0 0137 12.8l-.1.4z"/>
+  <path d="M385.6 125.8c.3-.3.7-.2 1.1-.1.3-.2.7-.2 1-.2l.6-.2c.2 0 .2-.2 0-.3a.6.6 0 010-.3c-.7-.4-1-1-1.2-1.5-.3 0-.5-.2-.5-.3h-.5c-.8 0-1-.3-1.3-.5a1 1 0 01-.6-.4l-.3-.3c-.2-.3-.1-.7.2-.7h.7a2 2 0 01.9-.1c.3 0 .5-.3.9-.6v-.4s0-.2.2-.1a1 1 0 01.8.5c.5 0 1 .3 1.2.7.7 0 1.1.3 1.2.5 0 .2-.2.4-.5.6v.2l.4.4 1 .7c1-.1 2.6.6 4.8 2a18.6 18.6 0 014.1 1.2h.9c2.4-.4 4.7 0 6.8 1.5.8.1 1.5.4 2.2.7.5.2 1 .3 1.6.3a8 8 0 012.6.7c1 .2 1.9.6 2.4 1.2.4.5.3 1-.2 1.2-.3.6-.9.6-1.8.3-.6.1-1.3-.4-2-.9-.8-.2-1.6-.8-2.4-1.3l-1.3-.6h-.8v.2c.2.2.4.4.4.8v1c0 .4.3.6.7.9l1 .4c.2 0 .3.1.3.3l.4 1.7.4.3c.6.5.2 1-.3 1a3.1 3.1 0 01-1.3.8c-.4.2-.6 0-.7-.2a.5.5 0 01-.4-.2c-.5-.4-.1-1 1-.7l.2-.2a1.5 1.5 0 010-.9l-.3-.2a2.8 2.8 0 01-1-.6c-.6-.5-1.5-1-2.4-1.4-.7 0-1.2-.4-1.8-.7h-.8c-.2 0-.4 0-.5.2-.2.3-.5.2-.8.2h-1.6c-.4 0-.7 0-1 .3-.2.2-.4.2-.7 0a1 1 0 01-.3-.2c-.3 0-.5 0-.5-.2-.5-.1-.6-.2-.6-.4-.6-.1-.3-.6 0-.6l1.4.1c.4.1 1 0 1.2-.2l.5-.5a4 4 0 01-1.8-.5c-1.1-.7-2-.9-2.8-.3-.2.2-.3.2-.6.1a1 1 0 00-.5 0c-.5.1-.9 0-1.3-.1a4 4 0 01-1.8 0c-.6.3-1 .4-1.2.2a8.6 8.6 0 01-.6-.4c-.4-.1-.5-.2-.5-.3-.4 0-.5-.2-.5-.4-.2-.2 0-.3 0-.4.4-.2.7-.2 1 0 .3 0 .5.2.6.3h.6c.1-.2.5-.2 1-.2l.7-.2v-.2c-.4 0-.6-.4-.9-.7a3 3 0 01-1.5-.5c-.4 0-.7-.1-1-.3h-.7a2.5 2.5 0 01-1.4 0h-.8a1 1 0 01-1 .2 1.5 1.5 0 00-.8-.5c-.3-.1-.4-.2-.4-.4-.4-.2-.3-.4 0-.5.3-.1.5-.2 1 0l.5.2z"/>
+  <path fill="#fff" d="M401.2 130.5s0-.2-.3 0c-.8 0-1.6 0-2.2-.4-.7-.4-1.3-.8-2-.8l.7-.4h1.5c.7 0 1.4.2 2 .4.4.2.8.5 1 .8a3.4 3.4 0 01.8.7 2.5 2.5 0 01-.7 0 2.9 2.9 0 01-.8-.3z"/>
+  <path d="M403 94.7v.2l.9 4.9-3.7 3.2-.2.1.2.1 4.7 1.6 1 4.9v.2l.2-.1 3.7-3.3 4.6 1.6h.3v-.1l-1-4.9 3.7-3.2.2-.2h-.3l-4.6-1.6-1-4.9V93l-.2.1-3.7 3.3-4.7-1.6z"/>
+  <path fill="#f7db17" d="M400.6 103l3.5-3 4.4 1.4zm8.5-1.7l3.4-3 4.4 1.5zm7.8-1.3l-3.4 3-4.4-1.5zm-8.4 1.6l-3.5 3-4.3-1.5zm-5-6.4l4.3 1.4.8 4.6zm5.5 6.4l4.4 1.5.9 4.5zm5.1 6.1l-4.3-1.5-.9-4.5zm-5.6-6.4l-4.3-1.5-.9-4.5zm3-7.7l1 4.6-3.5 3zm-2.7 8.1l.8 4.6-3.4 3zm-2.8 7.5l-.9-4.5 3.5-3zm2.8-8l-.9-4.6 3.5-3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ht.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ht.svg
new file mode 100644
index 0000000..14f67d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ht.svg
@@ -0,0 +1,116 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ht" viewBox="0 0 640 480">
+  <path fill="#d21034" d="M0 0h640v480H0z"/>
+  <path fill="#00209f" d="M0 0h640v240H0z"/>
+  <g fill="#f1b517" stroke="#000" stroke-width=".2">
+    <path fill="#fff" stroke="none" d="M244.3 179.7h151.4v120.5H244.3z"/>
+    <path fill="#016a16" stroke="#016a16" stroke-width=".3" d="M350.5 266.8l-31 1-30.7.3s-15.8 5.8-22.3 7.1c-6.4 1.3-5.6 3.4-10.5 4.6-4 .9-4.5 1.1-6.8 1.3-1.5 0-3.2 1.2-5 2.4v16.7h151.5v-15.9c-1.6-.9-3.2-1.5-4.8-2-2.2-.8-3.7-1.6-7.7-2.5-5-1.1-4.2-3.3-10.6-4.6-6.5-1.3-22.1-8.4-22.1-8.4z"/>
+    <g transform="translate(-80) scale(1.6)">
+      <g id="a">
+        <path d="M244.5 143.5h1.4l2.6 10.7-.6 3.4-3.4-14z"/>
+        <path fill="#fff" d="M243 136.3l1 8.3h1l-2-8.2z"/>
+        <path d="M245.7 154.6l-4.3-11.5 1.6-.1 5 14-2.3-2.4z"/>
+        <path fill="#fff" d="M239.4 136.5l1.8 8h1.4l-3.2-8z"/>
+        <path d="M241.9 150.6l-2.5-5.5 1-.2 4.7 9-3.2-3.3z"/>
+        <path fill="#fff" d="M236 138.8l2.9 7.6h1.4l-4.2-7.6z"/>
+        <path fill="#0a328c" d="M242.3 151.4l-11.5-12.5c-3.6 2.8-2.9 8-2.9 8l13 10.2 1.3-5.7z"/>
+        <path fill="#d20014" d="M248.9 158.2l-8.5-8.6c-3.6.2-.8 5.5-.6 6.2l9 7.7v-5.3z"/>
+        <path d="M248.1 156.8L230.6 138l-.7.5 18.6 20.6-.4-2.3zm-18.5-20l-.4-.5v-.9l-3.6-2.3 1.6 3.7 1.3.2.3.4.8-.6z"/>
+        <path d="M227.7 138.1a8.4 8.4 0 012.7-2.2l1 1.5-2.2 1.8-1.5-1z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M225.8 141.3l.6 1c.4-.1 4-3.5 4-3.5h2.7l.7-.9c-2-2-3.7.3-3.7.3l-4.3 3z"/>
+        <path fill="#d20014" stroke="#d20014" d="M228 143c0-1 1.8-3.2 2-3.3 1.3.4 2.5 1.2 3.9-1.8-1.2 1.4-3.5 0-3.5 0l-1 .8v.4l-3 2.8 1.5 1.1z"/>
+        <path fill="#0a328c" d="M237.3 154.7l-14.4-11.4c-2.5 2.5-.4 10.2-.4 10.2l14 7.6.7-6.4z"/>
+        <path fill="#d20014" d="M249.2 164l-11.9-9.6c-4 .6-.8 6.5-.6 7.2l12.5 6.8v-4.5z"/>
+        <path d="M248.7 162l-25.6-19.2-.5.6 26.8 21-.7-2.4zm-26.8-20.2l-.4-.4-.2-.8-4-1.7 2.3 3.3h1.3l.4.4.6-.8z"/>
+        <path d="M220.3 143.4a8.2 8.2 0 012.3-2.6l1.2 1.3-1.8 2.1-1.7-.8z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M219 146.6v1.1c.4-.2 3.7-3.7 3.7-3.7l2.5-.5.6-.8c-1.8-2.1-3.7.7-3.7.7l-3.2 3.2z"/>
+        <path fill="#d20014" stroke="#d20014" d="M221 148.5c-.2-1 1.2-3.8 1.4-4 1.6.5 3 1.2 3.5-2-1 1.6-3.5.4-3.5.4l-.8 1v.5l-2.5 3.3 1.9.8z"/>
+        <path fill="#0a328c" d="M236.2 161.7a2783.3 2783.3 0 01-18.5-10.5c-1.3 2.3-.1 5.5.5 6 0 1.5-.6 2.3.7 5.5.4 2 1.3 3.9 2.7 5 1.6 6.4 8.2 6.9 10.7 1.6l4-7.6z"/>
+        <path fill="#d20014" d="M248.3 168.5l-12.5-7.3c-4 .5 0 8 .3 8.7l12.2 4.3v-5.7z"/>
+        <path d="M246.2 165.8l-28.3-15-.5.6 30 16.7-1.2-2.3zM216.5 150l-.5-.3-.3-.8-4.1-1 2.7 2.9 1.2-.2.6.3.4-.9z"/>
+        <path d="M215.2 151.8c.4-1 .8-1.9 1.8-3l1.4 1.1-1.4 2.4-1.8-.5z"/>
+        <path fill="#0a328c" stroke="#0a328c" d="M214.1 155.2l.6 1.2 3-4.6 2.5-.9.5-1c-2-1.8-3.5 1.4-3.5 1.4l-3.1 3.9z"/>
+        <path fill="#d20014" stroke="#d20014" d="M216.8 156.8c-.2-1 .5-4.2.7-4.3 1.5.5 2.8.6 3.2-2.6-1 1.5-3.3 1-3.3 1l-.7 1 .1.4-2 4 2 .5z"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#a"/>
+    </g>
+    <g transform="translate(-80) scale(1.6)">
+      <path fill="#016a16" stroke="#016a16" d="M248.8 125.6l-.5 9h2.9l-.4-9 3-.3-.3-3.6-7.5.3v3.2l2.8.4z"/>
+      <g id="b" fill="#016a16">
+        <path d="M249.8 121.9c-7.8-7.8-13.9-4-15.3-2.9 1 .2 1.8-.4 2.3-.5l-1 1.2s2.5-1 2.8-1c-.4.3-.8 1-.8 1 .2 0 1.6-1.1 1.8-1.1-.4.4-.5 1.5-.5 1.5l1.2-.5c.3.2-.1.6.1.6 2-.2 4.7 1.7 5 2.3"/>
+        <path d="M247.9 123.3c-.8-1.8-15.6-5-18.6.3 1.2.3 2.3-1 2.3-1v1.2l1.9-1.6-.7 1.6 1.5-1.3v1.3l2-2-.3 1.1 1.7-.7-.2 1"/>
+        <path d="M247.2 123.6c-3.8-2.5-9.6-.8-9.6-.8-3.8 2-5.8 1.7-6.2 5.6.3-.1 1.3-1.4 1.3-1.4l.8 1.5.2-2.1.6 1.7 1-2.8.2 1.9 1.4-1.9.6.6.6-1.5.6 1s1-.6 1.5-.3l1-1.2.3.9 1-1 .3.7.9-.8v.6h3"/>
+        <path d="M246.4 124c-2.7 0-10.3 2.9-12.2 5.8a13.3 13.3 0 011.3-.6l.3 1.2.5-1.2.1 1c.3-.8.6-.8 1.2-.1l.2-1.1.3 1 .5-1.1s.3 1.2.5 1.2c0 0 .8-2.2 1.2-2.3l.1 1.4.5-1.4.5 1v-1.4l.6 1s.2-1 .6-1.2l.8.7 3.4-2.5"/>
+        <path d="M246.9 124.7c-3.5 1.3-6.7 6.2-6.4 8.2 1.5-2 1.2-1.7 1.9.6 0 0 .2-2 .5-2.2l.5 1.4.1-1.9h.5l-.1-1.1.7.5c-.2-.7-.3-.9.4-1.5 0 0-1 .1-.2-1.5l.7.6s-.2-.7 0-1l2.6-.8"/>
+        <path d="M247.2 125l-1.3 2.6.7.2-1.6 1.1 1.3-.1s-2 .7-2.2 2.7l2-1s-1.7 1.8-2 2.9l1.3-1s-1.2 1.2-1 3l.9-1c-.2 2.3-.2 2.5.8 4.2 0 0-.2-2.6 0-3l2.3 2.4-1.2-3.3s1.4 2 2.2 1.9l-1.8-2.7 1.8 1.4-2-3 1.8.6s-1.3-1.7-1.2-2.8l1.3 1.4s-.5-1.5-.4-2l.7.1-1.3-1.4.9-.2-.1-1 .6-.1v-1.1m-1.1 0c-2.2 3-1.1 7.5-2.4 9.9"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#b"/>
+      <path d="M251 166.5s1.1-10 1.1-14.2c0-3.4-.8-10.8-.8-10.8H248s-.5 7.4-.4 10.8c0 4.2 1.1 14.2 1.1 14.2h2.3z"/>
+      <path d="M247.7 142h4l-.5-2.7h-2.9l-.6 2.6z"/>
+      <path d="M248 139.8h3.5l-.7-2.7h-2.2l-.7 2.7z"/>
+      <path d="M248.2 137.7h3l-.6-2.7h-1.9l-.5 2.7z"/>
+      <path d="M250.7 134.7h-2l-.3 1h2.5l-.2-1zm.4 29.7h-2.6m2.8-2h-3m3.4-2h-3.8m4-2.1h-4m4-2.2h-4.1m4.2-2h-4.4m4.4-1.7h-4.6m4.6-2.2h-4.6m4.5-2.1h-4.5m4.3-2.2h-4.1m3.9-2h-3.7"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M250 119c-.8-.3-2.3-1.3-1.9-1.9l.7-1.2c1-2.2 0-1.4 0-2-.2-.8 3.8-.2 3.8 1.3 0 .5-.3.2-.2 2.6l-.8 1.5a3.5 3.5 0 01-1.7-.2z"/>
+      <path d="M250.4 125l-1-.9.3-7.1 1 .3-.3 7.6z"/>
+      <path fill="#d20014" stroke="#d20014" d="M251.7 119.3c.6-.4 1-1.5.6-2.1-1-1.3-1.7-.8-3.4-1.4-.3.4-1 1-.9 1.6 2.3 1 1.4.2 2.2.3.4 0 .6.5 1.5 1.5z"/>
+    </g>
+    <g transform="translate(-80) scale(1.6)">
+      <use width="100%" height="100%" transform="matrix(1 0 0 -1 0 320.4)" xlink:href="#c"/>
+      <path fill="#016a16" stroke="#fff" stroke-linecap="round" d="M238.4 161.8c0 1.2-.9 2.3-1.9 2.3s-1.8-1-1.8-2.4v-1.2h3.7v1.2z"/>
+      <ellipse cx="236.5" cy="160.1" fill="#fff" stroke="none" rx="1.8" ry=".9"/>
+      <path fill="#016a16" stroke="#f1b517" d="M236.1 161l-.3-3.2h1.4l-.2 3.3h-.9z"/>
+      <path id="c" fill="#016a16" stroke="#fff" stroke-linecap="round" d="M238.5 160.1c-.2.5-1 .9-2 .9s-1.7-.4-2-.9a.8.8 0 000 .4c0 .7.9 1.2 2 1.2 1.2 0 2.1-.5 2.1-1.2a.8.8 0 000-.4z"/>
+      <g id="d">
+        <path d="M246 172.8l-7-2.2-3.1-5.3-10.9-.5.4 4 9.3 1.7.8 1.6 10.7 3-.2-2.3z"/>
+        <path fill="#503200" d="M238.7 174.3l-11.2-16.5-.5.5 11 16.4.7-.4z"/>
+        <path fill="#fff" d="M228.6 158.5l-1.2-2c-.3-.4-.6-.5-1.1-.2-.5.2-.4.7-.2 1.1l1 1.9 1.5-.8z"/>
+        <path d="M240 164.1l-22.5-2.3-.6 3.3 22.4 2.3.7-3.3z"/>
+        <path d="M217 161l-.5 4.5h1l.6-4.1-1-.4zm3.8.7l-.2 4.1h.6l.5-3.5-.8-.6zm15.3 1.8l-.6 3.8h1.1l.5-3.8h-1zm3.3.1l-.7 4.4 1.2.2.4-2.3c0 .5.5.8 1 .8.6 0 1-.5 1-1 0-.6-.4-1-1-1a1 1 0 00-1 .6l.3-1.6-1.2-.1zm-8 .7l-3.2 3.5.4.4 4-2.7-1.3-1.2zM224 173l3.1-3.5-.3-.4-4 2.7 1.2 1.2zm8.1-.9l-3.7-2.9-.4.3 3 3.8 1.1-1.2zm-9.3-6.7l3.9 2.8.4-.3-3-3.8-1.3 1.3zm4.2-2.3l.4 4.6h.5l1.2-4.5-2.1-.1zm1.2 11l-.3-4.5h-.6l-.7 4.6h1.6zm5.1-6l-4.8.4v.5l4.8.6V168zm-11.4 1.5l4.7-.7v-.4l-4.8-.5v1.6z"/>
+        <ellipse cx="227.7" cy="168.6" rx="1.3" ry="1.2"/>
+        <path fill-rule="evenodd" stroke-linecap="round" d="M234.4 168.6c0 3.5-3 6.5-6.7 6.5a6.6 6.6 0 01-6.7-6.5c0-3.6 3-6.5 6.7-6.5a6.6 6.6 0 016.7 6.5zm-1.3 0a5.3 5.3 0 01-5.4 5.2 5.3 5.3 0 01-5.4-5.3 5.3 5.3 0 015.4-5.1 5.3 5.3 0 015.4 5.2z"/>
+        <path d="M223.5 165.3l-1-.8m8.5 0l1-1m1 9.2l-1.1-.9m-8.4 1.9l1-1m21.7-10.6l1.1 6-.9.4-1-6.3h.8z"/>
+        <path fill="#fff" d="M245.6 161.4c-.5-.3-1.2.1-2.4-1.3-1.9 1.7 0 2 .2 3.7.5.2.9-1.4 2.3-1.5l2.3-.2-.5-.7h-2z"/>
+        <path fill="#fff" d="M246.4 162.5l-.2-1.7c-.3-.7-1-.1-1 .2l.2 1.7 1-.2z"/>
+        <path fill-rule="evenodd" d="M240.8 167.4v1.6c-.6.2-.5.6-.5 1.2v4.7c-.1.4-.7.4-1 .6-.3.3-.2.8 1 1l1 .1c1.5-.3 1.8-.8 1-1-.3-.2-.9-.4-1-.6v-1.2h1c.2 0 .7-.6.7-1.1v-2.5c0-1.4-1-1.6-1.4-1.5v-1.3h-.8zm1.6 2.7c0-.4-.6-.8-.8-.8-.2 0-.7.5-.7.9v1c0 .4.3 1.6.9 1.7.2 0 .6-.4.6-.8v-2z"/>
+        <path fill="#fff" d="M234.3 172.3c-.7-.2-.7 1.2-.7 1.2h1c.5.2.8.8.6 1.2-.3.2-2.2-.5-2.3 0 .3 1.9 2.9 2.6 3.8 1.8.9-.9 1.1-3-1.8-3.7l-.6-.5zm.6.6l-.3.6"/>
+        <path d="M215 173l-1-4m2.1 3.8l-1.5-3.1m4 2.3l-3.3-1.8m4.8 1.4l-6.2-2.7"/>
+        <path fill="#d20014" stroke="#d20014" d="M210.2 166l-2.6.1c-.2.1.5.9.4 1.1-.6 1.1-4.4 1-4.7.8-.5-.5 3.5-.8 3.6-1 0-.4-.6-1.2-.5-1.7 0-.7 1.7-1 1.7-1l2.1 1.7z"/>
+        <path fill="#503200" d="M213.2 168l-5-4.2s-.3-.2-.5 0 0 .4 0 .4l5.4 4.4.1-.5z"/>
+        <path d="M218.2 172.2l-4.2-3.6-.3-1-.8.6c-.3.2-.6.8-.6.8h1.1l3.6 3.4 1.1-.2z"/>
+        <circle cx="232.5" cy="177.1" r=".7"/>
+        <circle cx="230.6" cy="175.7" r=".7"/>
+        <circle cx="228.1" cy="176.6" r=".7"/>
+        <circle cx="224.2" cy="177.4" r=".7"/>
+        <circle cx="222.5" cy="177.6" r=".7"/>
+        <circle cx="220.8" cy="177.6" r=".7"/>
+        <circle cx="219.2" cy="177.6" r=".7"/>
+        <circle cx="220" cy="176.3" r=".7"/>
+        <circle cx="221.6" cy="176.4" r=".7"/>
+        <circle cx="223.1" cy="176.2" r=".7"/>
+        <circle cx="222.4" cy="175" r=".7"/>
+        <circle cx="220.8" cy="174.9" r=".7"/>
+        <path fill-rule="evenodd" d="M236.5 178c0-.3-.8-.2-.8-.6 0-.4 1.2 0 1.3.3.7-.6 1-.2 1.4 0 .6-.8 1.3-.8 2-.2.4-.4 1.4-.3 1.7.2.7-.6 1.3-.5 1.7 0 .2-.3.5-.3.7 0 .3-.7 1.2-.5 1.6 0 .3-.4.7-.1 1.1.1.3-.2.8-.2.8 0 0 .4-.6.3-.6.6 0 .2.4 0 .4.4 0 .3-.6.4-.7 0-.3.4-1.1.2-1.2-.2a.8.8 0 01-1.2 0c-.3.2-.7.2-.8 0-.5.5-1.4.4-1.7-.2h-.3a1 1 0 01-1.5 0c-.9.6-1.4.4-1.9 0-.5.7-1.4.7-1.5 0-.4.3-1.2.4-1.2 0 0-.2.7-.1.7-.4zm1.6.1c0 .2-.2.3-.4.3s-.4-.1-.4-.3.1-.2.4-.2.4.1.4.2zm1.9-.2c0 .2-.3.3-.6.3s-.5-.1-.5-.3c0-.1.2-.3.5-.3s.5.2.5.3zm3.5.2c0 .2-.2.3-.5.3s-.4-.1-.4-.3c0-.1.2-.3.4-.3s.5.1.5.3zm-1.9 0c0 .2-.2.3-.5.3s-.4-.1-.4-.4c0-.2.2-.4.4-.4s.5.2.5.4zm4 0c0 .1-.1.3-.3.3-.3 0-.5-.2-.5-.4s.2-.3.5-.3c.2 0 .4.1.4.3zm-1.2 0c0 .2 0 .3-.2.3s-.3-.1-.3-.3.1-.2.3-.2l.2.2zm2.4.1c0 .2 0 .4-.3.4-.1 0-.3-.2-.3-.4s.2-.3.3-.3c.2 0 .3.1.3.3z"/>
+      </g>
+      <use width="100%" height="100%" transform="matrix(-1 0 0 1 499.9 0)" xlink:href="#d"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M249.8 165.7c-2.5 0-4.5 1-4.5 2.1 0 .2 0 .4.2.6.5.6 2.3 1 4.4 1 2 0 3.6-.3 4.2-.9.2-.2.3-.4.3-.7 0-1.1-2-2-4.6-2z"/>
+      <path d="M254.4 168v7c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-7c0 .8 2 1.5 4.5 1.5 2.6 0 4.6-.7 4.6-1.5z"/>
+      <path fill="#d20014" stroke="#d20014" d="M245.3 168v1l2.2 7 1.8-5.4 2 5.5 1.3-5.2 1.8 3.5v-1.9l-1.6-3.4a8.3 8.3 0 01-.6.2l-1 3.8-1.5-3.6a14.5 14.5 0 01-.7 0l-1.5 3.6-1.6-4.4c-.4-.2-.6-.5-.6-.7z"/>
+      <path fill="#0a328c" stroke="#0a328c" d="M254.4 173.7v1.3c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-1.3c0 .9 2 1.5 4.5 1.5 2.6 0 4.6-.6 4.6-1.5z"/>
+      <path d="M251.7 175l-1.1.2v1.3l1.2-.1v-1.3zm-4.8-.1v1.3l1.1.2v-1.3a8.9 8.9 0 01-1.1-.2zm-1.6-1.2v1.3c0 .3.2.5.5.7v-1.3c-.3-.2-.5-.4-.5-.7zm9.1.2c0 .2-.4.5-.8.7v1.3c.5-.2.8-.5.8-.9v-1z"/>
+      <path fill="none" d="M254.4 168v7c0 .9-2 1.5-4.5 1.5s-4.6-.6-4.6-1.5v-7"/>
+      <path fill="#fff" stroke="#fff" d="M253.4 167.5c0 .5-1.6 1-3.5 1-2 0-3.6-.5-3.6-1s1.6-.9 3.5-.9c2 0 3.6.4 3.6 1z"/>
+      <path d="M248.7 168.2l.2 1.2h1l.1-1.2h-1.3zm4.1-.3l-1 .2.1 1.2 1-.2V168zm-5.4-2l-.7.3.1 1 .6-.2v-1zm2.4-.3h-.3l.2 1.2h.6l.2-1.2a9.7 9.7 0 00-.7 0zm2.7.4l-.1 1 .7.3v-1a5.3 5.3 0 00-.6-.3zm-6.5 2.8l.2-1.3-1-.5v1.5l.8.3zm8.4-.3v-1.3l-.8.3.8 1zm9.3-8.5c.8 0 2 1 2.1 2.5 0 1-1.7 1-1.7 1 0 .5-1 .9-1.8 1-.8 0 .2-1.5.2-1.5-.5-1.3.2-2.7.2-2.7l1-.3z"/>
+      <path d="M262.5 163h.8s0 .3.2.3.3-.4.3-.4h1.2"/>
+      <path fill="#d20014" stroke="#f1b517" d="M264.1 160.9c.7-.5.1-1.5-.4-1.5h-1c-.6 0-1.4.6-1.3 1 0 .5.4.7.8.6.2 0 .6-.6.8-.6.3 0 1 .6 1.1.5z"/>
+      <path fill-rule="evenodd" d="M214.2 174.8c-.6.1-.7.8-.5 1.5-2.6.7-5 1.7-7.4 2.4-.1-.5 1.2-1.8 1.2-1.8.3.1.6.9.6.9 0-1.6 1.6-2.6 1.6-2.6-1-.2-3.7 1-4 1.4 0 0 1-.2 1.2 0 0 0-2.2 2.3-2.3 3 .4.7 4 1.3 4 1.3 0 .2-1 1-1 1 1.5.2 3.7-.8 4.3-1.4 0 0-1.7-.2-3-1.3 0 0 .2.7 0 1 0 0-2-.6-2.3-1 0 0 5-1.2 7.4-2 .1.5.6 1.3 1.2 1.1.3-.1.2-.8 0-1.4a.8.8 0 00.6.2c.4 0 .7-.3.7-.7 0-.4-.3-.7-.7-.7a.8.8 0 00-.7.5c-.1-.5-.4-1.4-.8-1.3zm2 1.6c0 .2-.2.3-.4.3a.3.3 0 01-.4-.3c0-.2.2-.4.4-.4s.3.2.3.4z"/>
+      <path d="M293 177.9c.2-.4 0-2.2 0-2.2-.5 0-1 .7-1 .7.5-1.6-.8-4-.8-4 .9.1 3.9 3 4 3.6 0 0-1.3-.5-1.5-.4.3 1.5 1.3 2.2 1.7 3 0 0-1.7.3-1.6 1.8h-1.1c-.4-.5.1-1.3.1-1.3l-7.7-3.2c-.5-.2-1.6-.8-1.4-1.4.1-.5 2 .3 2.4.5l7 2.9z"/>
+      <path d="M285.6 176.5l1-1.6c.3-.5-.4-1-.9-.4l-1 1.5c-.4.9.5 1.1 1 .5z"/>
+    </g>
+    <g fill="#fff" stroke-width=".3">
+      <path d="M290.2 288.6l-.1-3-3.5.3-.2 3.1 3.8-.4z"/>
+      <path d="M264.4 292.7l-4.7-2.7c19.4 1.8 23.4-5 28.1-5.3 3-.3 3.3 3.2-2.3 1.5l1.5 3.6s-13.8 7.8-27.4 4.6l4.8-1.7zm84.8-4.1l.1-3 4.3.2.2 3.1-4.6-.3z"/>
+      <path d="M375.9 292l4.5-2.5c-22.4.7-17.3-3.6-28.4-4.8-3-.4-5 3.4 2.2 1.5l-1.4 3.6h3.5c7.6 5 17.8 5.5 24.6 3.9l-5-1.7z"/>
+      <path d="M285.5 286.3v5s12.3 4.6 34.4 4.6c22.2 0 34.4-4.6 34.4-4.6v-5s-9.3 4.3-34.4 4.3c-25 0-34.4-4.3-34.4-4.3z"/>
+    </g>
+    <path fill="#000" stroke="none" d="M287.3 291.3l1.1-3.7.5.2-1 3.2 2 .5-.2.5-2.4-.7zm3.6-1.6v-.7l.2-.7.6.2-.2.6-.3.7-.3-.1zm5.3-.3l.5.2-.4 2.1-.4 1a1.2 1.2 0 01-.5.4h-1a2 2 0 01-.9-.4 1 1 0 01-.4-.6l.1-1 .5-2.2.5.1-.5 2.2a2.1 2.1 0 000 .8.7.7 0 00.2.4l.5.2h1l.4-1 .4-2.2zm.6 4l.6-3.7h.6l1.5 3.4.5-3h.5l-.6 3.9-.5-.1-1.6-3.3-.5 3-.5-.1zm4 .7l.6-3.8h.5l-.5 3.8h-.5zm1.6-1.7c0-.6.3-1.1.7-1.4a2 2 0 011.4-.4c.4 0 .7.1 1 .3l.5.8c.2.3.2.7.1 1a2.2 2.2 0 01-.3 1 1.7 1.7 0 01-.8.7 2 2 0 01-1 .1 2 2 0 01-1-.3 1.7 1.7 0 01-.5-.8 2.1 2.1 0 01-.1-1zm.5 0c0 .5 0 1 .3 1.2.2.3.5.5.9.5s.7 0 1-.3c.3-.2.4-.6.5-1a1.9 1.9 0 000-1 1.2 1.2 0 00-.5-.5 1.3 1.3 0 00-.7-.3c-.3 0-.7 0-1 .3-.2.2-.4.6-.5 1.2zm3.7 2.3l.3-3.8h.6l1.8 3.2.2-3h.5l-.3 3.9h-.5l-1.9-3.2-.2 3h-.5zm5.6.4l.1-3.8 2.7.1v.5l-2.1-.1-.1 1.1 1.9.1v.5l-2-.1v1.8h-.5zm3 .1l1.5-3.8h.6l1.5 4h-.6l-.4-1.3h-1.7l-.4 1.2h-.6zm1-1.5h1.4l-.4-1a9.8 9.8 0 01-.2-.9l-.2.8-.5 1.1zm3.1 1.6v-3.8h.6v3.8h-.6zm2.5 0V292h-1.3v-.4h3.1v.4h-1.3v3.4h-.5zm4 0l-.3-4h.6l.1 3.4h2v.4l-2.5.1zm2.6-.2l1.2-4h.6l2 3.7h-.7l-.5-1h-1.7l-.3 1.3h-.6zm1-1.7h1.4l-.5-1-.4-.9a4.8 4.8 0 01-.1.8l-.4 1.1zm4.7 1.2l-.4-3.8 2.6-.3.1.5-2.1.2v1.2l2-.2v.5l-1.9.2.2 1.7h-.5zm3-2.1a2 2 0 01.2-1.6 2 2 0 011.3-.7l1 .1c.4.1.6.3.8.6l.4 1-.1 1a1.6 1.6 0 01-.6.8 2 2 0 01-.9.4 2 2 0 01-1-.1 1.7 1.7 0 01-.8-.6 2.1 2.1 0 01-.4-1zm.5-.1c0 .4.2.8.5 1 .3.3.6.3 1 .3s.7-.2 1-.5c.2-.3.2-.7.2-1.2a2 2 0 00-.3-.8 1.3 1.3 0 00-.6-.5 1.4 1.4 0 00-.7 0c-.4 0-.7.1-1 .4-.1.3-.2.7-.1 1.3zm4.1 1.3l-.6-3.8 1.7-.3h.8c.2 0 .4 0 .5.2l.3.6c0 .3 0 .5-.2.7-.1.2-.4.4-.7.5a1.4 1.4 0 01.3.1l.5.5 1 .9h-.7l-.7-.6a7.4 7.4 0 00-.5-.5 1.2 1.2 0 00-.3-.2.8.8 0 00-.3 0h-.3l-.6.1.4 1.7h-.6zm.2-2.2l1-.2a1.7 1.7 0 00.6-.2.6.6 0 00.3-.6.6.6 0 00-.2-.4h-.7l-1.3.1.3 1.3zm6.3-.4h.5c0 .4-.1.8-.3 1a2 2 0 01-1 .6 2 2 0 01-1 0 1.6 1.6 0 01-.8-.6 2.6 2.6 0 01-.5-1 2.2 2.2 0 010-1c0-.4.3-.7.5-.9l.9-.4h1c.4.2.6.4.8.8l-.5.2a1.2 1.2 0 00-.5-.5 1.1 1.1 0 00-.7 0 1 1 0 00-.7.3 1.1 1.1 0 00-.3.7v.7a2.3 2.3 0 00.4.8c.1.2.3.4.6.4h.7a1.1 1.1 0 00.6-.3c.2-.2.3-.5.3-.8zm1.4 1l-1-3.7 2.7-.7.2.4-2.3.6.3 1.1 2.1-.5.2.4-2.2.6.4 1.2 2.4-.6v.4l-2.8.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hu.svg
new file mode 100644
index 0000000..177da97
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/hu.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-hu" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M640 480H0V0h640z"/>
+    <path fill="#388d00" d="M640 480H0V320h640z"/>
+    <path fill="#d43516" d="M640 160.1H0V.1h640z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/id.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/id.svg
new file mode 100644
index 0000000..0663baf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/id.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-id" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#e70011" d="M0 0h640v249H0z"/>
+    <path fill="#fff" d="M0 240h640v240H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ie.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ie.svg
new file mode 100644
index 0000000..53f3464
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ie.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ie" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#009A49" d="M0 0h213.3v480H0z"/>
+    <path fill="#FF7900" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/il.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/il.svg
new file mode 100644
index 0000000..fc10b47
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/il.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-il" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="il-a">
+      <path fill-opacity=".7" d="M-87.6 0H595v512H-87.6z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#il-a)" transform="translate(82.1) scale(.94)">
+    <path fill="#fff" d="M619.4 512H-112V0h731.4z"/>
+    <path fill="#00c" d="M619.4 115.2H-112V48h731.4zm0 350.5H-112v-67.2h731.4zm-483-275l110.1 191.6L359 191.6l-222.6-.8z"/>
+    <path fill="#fff" d="M225.8 317.8l20.9 35.5 21.4-35.3-42.4-.2z"/>
+    <path fill="#00c" d="M136 320.6L246.2 129l112.4 190.8-222.6.8z"/>
+    <path fill="#fff" d="M225.8 191.6l20.9-35.5 21.4 35.4-42.4.1zM182 271.1l-21.7 36 41-.1-19.3-36zm-21.3-66.5l41.2.3-19.8 36.3-21.4-36.6zm151.2 67l20.9 35.5-41.7-.5 20.8-35zm20.5-67l-41.2.3 19.8 36.3 21.4-36.6zm-114.3 0L189.7 256l28.8 50.3 52.8 1.2 32-51.5-29.6-52-55.6.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/im.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/im.svg
new file mode 100644
index 0000000..31b2222
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/im.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-im" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="im-a">
+      <path fill-opacity=".7" d="M-77.6 0H605v512H-77.6z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#im-a)" transform="translate(72.8) scale(.94)">
+    <path fill="#ba0000" fill-rule="evenodd" d="M629.4 512H-102V0h731.4z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M281 376c.2-.6.6-6.8.4-6.8s-9.4-10.9-9.2-10.9c.2 0 11.8 2.6 11.8 2.2 0-.4 4.7-11.5 4.7-11.7l5.6 13.5 11.5 5-8 6.7 1.7 13c0 .3-8-7.6-8-7.6l-8.9 1s-1.2-4-1.6-4.4z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="2.6" d="M218.7 206.9c-7.7 4-37 37.5-41 42.7a77.3 77.3 0 01-16.8 23.4c-7.3 5.5-11.3 13-10.3 20 0 9 4.9 15 8.8 21.1 2.3 2.9 5.5 4.7 8.8 5 6.9.8 7.5 3 11 4.2 13.4 18.4 33.6 32 48 42.7a68.4 68.4 0 0118 12.4c4.2 8.2 3.4 16 2.8 20L237.3 439c-1.9 11 7.8 8.6 8.3 6.4 4.3-5.7 10.8-1.7 20-34.3l12.8-17.1s4.9-2 4.9-2.5c7.5-9 1.8-14-2.5-15.7l-9.2-3.4s-10.8-10.8-11.3-10.8c-5.1-14.9-30.3-46.6-36.1-51-4-4.3-6-6-9.8-8.4-5.9-2.8-7.8-3.8-11.4-5.2-3-1.2-.9-4.5 1-6 20-10.9 35.7-22.9 54.8-35.1l3-2-6.9-39.2-31.8-11.2c-1.7 1.1-3 2.3-4.4 3.4z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M245.3 413.1c0-.4 20-4 20-4l-2.5 7.4-19.7 6 2.2-9.3z"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M193.6 338.5a37.9 37.9 0 0121.6-20.4"/>
+    <path fill="none" stroke="#000" stroke-width="2.4" d="M244.6 413.3c1.3-.3 7-2 8.6-2.3 1.8-.4 3.5-.8 5.2-1.4 2-.4 3.2-.8 5.2-1.1a39 39 0 015-1.4M241 425.6a14.6 14.6 0 012.5-2c1.1-.4 5-2 6.5-2.3a54 54 0 004.7-1.4l4.6-1.2c1.5-.6 2.9-1 4.4-1.4"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M249 341.4h-.2c.8 0 .3 0-.9 1.4-.4 1.1-4 3.7-6.8 3.7a53 53 0 01-4.7.3l-1.3-.3m13.7 53.5h1.4c1.5 0 3 .3 4.2.3 1.5 0 2.9.4 4.3.4 1.5.2 3.2.1 4.7.4 1.6 0 3 .3 4.7.3 1.4.1 2.2.3 3.7.3l-3.7-.3c1.4.1 2.2.3 3.7.3m-32.7 33a13.6 13.6 0 012.3-2c1-.3 4.6-2 6-2.2a46.7 46.7 0 004.2-1.5l4.3-1c1.3-.7 2.6-1.1 4-1.5m5.8-41.2c-.8 2.3.3 2.9.7 3.9a12 12 0 005.7 3.4c1.2.3 2 .6 3.4 1.2.9 0 1.3.3 2 .5m-124.4-94.8h.3c-.9 0-.3.1 1.1-1 1-1.1 1.7-1.6 2.6-2.7m14.4 24c.2 0 16.6-8.2 18.3-10l3.7-2.9c1-.5 1.7-1.1 2.6-1.7.7-1 1.7-1.7 2.3-2.7 1-.9.5-1.8 1.4-2.9l1.3-3.8m20.8 12.2c.1.6-.2 2.4-.2 3.8 0 1.6-2.1 6.5-4.6 8"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M192.6 307.8l6.7 2.1c5 1.8 15.4 8.4 16.5 9.3 1 .8 3 1.6 3.6 2.5 1.2 1 2 2.1 2.9 3.2 1 1.2 2 2.3 2.5 3.4a113.2 113.2 0 0113.4 24.5c.7.7 1 1.7 1.7 2.8.6 1.4 1.3 2 2 3.1 1 .7 2.2 2 3.4 2.6 1.3 1.1 2.5 1.5 3.5 2.3 1.3.6 16.3 10 17 10.5 1.4 1.1 5.5 5.4 2.6 8.6-1.2 1-2.4 2.5-3.4 3-1.1 1.2-2.6 1.7-3.9 2.2-6.7 2-10.2 1.3-11.5 1.3h-1.4m-88.8-114.9c2 .8 1.2.2 2.9 1 1.2.5 2 .5 3 1 1.3.3 4.7 1 6.3 2.6 1.2 1 2 2 3.4 2.7a21.8 21.8 0 004.6 2.4c1.6.6 3.4 1.3 5 1.3h7.8-4 4"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M159 293.3c4.2-.3 11.3 1 11.5 1l9.4-.2c5-.4 6-2.3 6.8-3.7 1.9-2.8 3.1-3.8 4.6-6 2.2-1.6 5.4 2.3 5.5 2.3 8 7.6 1.6 16.8 1.2 17.1-4 3.7-4.9 3.9-7.3 1.6-2.4-2.9-3.1-4.2-5.1-5.2-3.9-1.8-11.8-.4-12-.4l-4.1 1.6c-2 .7-3.2 2.4-6.5 3-3.5.2-4.6-.1-6.3-2.9-2.3-3.5-1.2-7.8 2.3-8.2z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M381.8 120.7c-.6 0-6.3 2.8-6.2 3 .1.1-4.8 13.5-4.9 13.4-.1-.2-3.5-11.7-3.9-11.5-.3.2-12.3 1.6-12.4 1.7l9-11.5-1.3-12.5 9.8 3.8 10.5-8c.2-.1-2.7 10.8-2.7 10.8l5.2 7.2s-3 3-3.1 3.6z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="2.6" d="M265 257.9c7.1 4.7 50.7 13.9 57.3 14.8a77 77 0 0128.6 3.2c8.3 3.6 16.8 3.4 22.5-1 7.8-4.2 10.6-11.4 14-18a12 12 0 000-10c-2.6-6.4-1-8-1.6-11.6 9.4-20.8 11.4-45 13.6-62.9-.2-10.5.9-18.5 2-21.7a32 32 0 0116-12.2l40.7-10.6c10.6-3.8 3.7-11 1.5-10.4-7-1-6.8-8.6-39.7-.7l-21.2-2.7s-4-3.3-4.5-3c-11.5-2.1-13.1 5.3-12.5 9.8l1.6 9.8s-4.1 14.6-3.9 15c-10.5 11.8-26 49.6-27 56.9-.5 6.8-3 5.5-2.4 12.2 0 5.2-.6 2 1.1 12.6.5 3.2-3.5 3-5.7 2-19.2-12-37.4-19.9-57.5-30.5l-3.1-1.6-30.8 25.2 5.8 33.2c1.8 1 3.4 1.5 5.1 2.2z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M431.7 133.6a375 375 0 01-13.3-15.4l7.6-1.5 14.8 14.3-9.1 2.6z"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M392 215.2a37.9 37.9 0 01-28.4-8.8"/>
+    <path fill="none" stroke="#000" stroke-width="2.4" d="M432.2 134.1c-1-.9-5.2-5-6.2-6.4a66.5 66.5 0 00-3.8-3.8c-1.3-1.5-2.3-2.4-3.6-4a37.1 37.1 0 01-3.6-3.6m29.6 15c-.3 0-2-.7-3-1.2-.8-.9-4.2-3.4-5.1-4.6a54.2 54.2 0 00-3.5-3.4c-1.2-1.3-2.1-2-3.3-3.5a30.3 30.3 0 01-3.4-3"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M367.3 165.5l.1.3c-.4-.8-.2-.3 1.7 0 1.2-.2 5.2 1.7 6.5 4.1.8 1.1 2 2.8 2.6 4 .2.3.2 1 .4 1.3m40-38.2l-.2-.2-.6-1-1.8-3.9c-.7-1.2-1-2.7-1.7-3.9-.6-1.4-1.5-2.8-2-4.2-.8-1.5-1.2-2.8-2-4.4-.7-1.2-.8-2-1.6-3.3l1.6 3.3c-.7-1.2-.8-2-1.6-3.3m44.8 12.3a12 12 0 01-2.8-1c-.8-.7-4-3-5-4a47 47 0 00-3.3-3c-1-1.3-1.9-2-3-3.3a26.2 26.2 0 01-3.2-2.7m-38.9 15c2.5-.4 2.5-1.6 3.1-2.5.5-1 .9-3.5.2-6.6l-.6-3.5c-.4-.9-.4-1.4-.5-2m-21.7 154.8l-.1-.2c.4.8.2.3-1.6-.5l-3.5-1m13.9-24.3c-.1-.2-15.3-10.4-17.7-11-1.4-.7-2.7-1-4.3-1.8l-2.8-1.4c-1.3-.2-2.4-.7-3.5-.7-1.2-.4-1.9.4-3.2.2l-4 .7m.5-24.1c.4-.4 2.2-1 3.4-1.7 1.4-.7 6.7-1.3 9.2.1"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M365.7 231.2l-1.5-7a100 100 0 010-18.8c.2-1.3 0-3.4.5-4.5.3-1.4.8-2.7 1.3-4 .6-1.5 1.1-2.8 1.7-3.9.7-4 12-20.1 12.8-20.9a43 43 0 012-2.7c.3-1 1-1.8 1.6-3 1-1.1 1.2-2 1.8-3.2.1-1.1.6-2.9.6-4.2.3-1.7 0-3 .3-4.1-.2-1.5.7-19.2.8-20 .3-1.8 2-7.5 6.2-6.5 1.5.5 3.3.8 4.4 1.5 1.4.4 2.6 1.5 3.7 2.3 5 4.9 6.1 8.2 6.8 9.4l.7 1.2M352.6 276l-.1-.2c.4.7.2.3-.3-1.1-.1-1.3-.5-3-.7-4.2-.3-1.3-.9-2.7-.7-3.5-.5-1.3-.2-2.3 0-3.6.3-1.6.5-2.7.5-4.2.2-2 0-3.2.1-5-.5-1.5-.6-2.7-1.3-4.2l-2-4-2-3.5 2 3.4-2-3.4"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M369.5 267.6c-2.3-3.6-4.7-10.4-4.8-10.5l-4.7-8.2c-2.8-4-5-4-6.6-4-3.4-.3-4.9-1-7.4-1.1-2.6-1.2-.7-5.9-.8-6 2.7-10.6 14-9.6 14.4-9.4 5.1 1.7 5.7 2.4 4.9 5.6-1.3 3.5-2 4.8-2 7 .3 4.2 5.5 10.5 5.5 10.6l3.4 2.8c1.6 1.4 3.7 1.6 5.8 4.3 1.9 2.9 2.2 4 .6 6.8-2 3.8-6.2 4.9-8.3 2.1z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M105.2 168.7c.5.4 5.8 3.7 6 3.5s14-3.4 13.8-3.2-7.8 9.3-7.4 9.5c.4.2 8 9.4 8.2 9.5l-14.5-1.2-9.8 7.8-2.2-10.2L87 180c-.2-.1 10.5-3.6 10.5-3.6l3.2-8.3s4.1.7 4.7.6z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="2.6" d="M284 191.3c0-8.7-16.2-50.2-19-56.1a77.2 77.2 0 01-13-25.7c-1.5-9-6.3-16-13-18.4-7.9-4.1-15.5-2.5-22.8-1.8-3.6.7-6.7 2.7-8.4 5.5-4 5.7-6.1 5.2-8.9 7.7-22.5 3.5-43.8 15.1-60 23a68 68 0 01-19.3 10.2 32 32 0 01-19-6.6l-31.1-28.3c-9-6.7-11.2 3-9.5 4.5 3 6.4-3.5 10.3 21.2 33.6l9.3 19.2s-.5 5.2 0 5.4c4.4 10.8 11.6 8.1 15 5.1l7.3-6.7s14.5-4.6 14.7-5c15.6 2.3 55.8-5.3 62.4-8.5 6-3.3 6.3-.5 11.5-4.7 4.3-2.9 2-.6 10-7.9 2.4-2 4.3 1.3 4.8 3.7.4 22.7 3.8 42.2 5.9 64.8l.4 3.5 38 12 24.6-23-1-5.6z"/>
+    <path fill="#ffec00" fill-rule="evenodd" d="M88.7 119.8c.3.3-5.6 19.6-5.6 19.6l-5.4-5.5 3.8-20.3 7.2 6.2z"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M178.8 108.4c7.2 8 9.5 21.2 8.2 28.6"/>
+    <path fill="none" stroke="#000" stroke-width="2.4" d="M89 119.1c-.3 1.3-1.5 7.2-2 8.7a66.8 66.8 0 00-1.2 5.3l-1.4 5.2c-.2 1.7-.5 3.3-1 5m-3.7-33c.1.3.5 2 .6 3.1-.2 1.2-.5 5.4-1 6.9a54.4 54.4 0 00-.9 4.8l-1 4.6a30.6 30.6 0 01-.8 4.6"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M150.7 156.3l.1-.3c-.4.8 0 .3-.8-1.4-.9-1-1.4-5.3-.2-7.8a55 55 0 012-4.3c.1-.3.6-.7.8-1M98.8 129l-.1.2-.6 1c-.6 1.4-1.6 2.6-2.2 3.7-.6 1.3-1.7 2.3-2.3 3.6l-2.4 4c-.9 1.4-1.8 2.5-2.6 4l-2 3.2 2-3.2-2 3.2m-14.2-44.3c.2.2.7 1.9.8 3-.2 1-.4 5-.8 6.3l-.7 4.4c-.4 1.6-.5 2.7-1 4.3a26.2 26.2 0 01-.5 4.2M104 151c-1.7-1.9-2.7-1.2-3.8-1.3a12 12 0 00-5.7 3.5c-.8.9-1.5 1.6-2.6 2.5-.5.8-.9 1-1.4 1.5M232 90.4l-.1.3c.4-.8.1-.4.5 1.5.5 1.3.5 2.2 1 3.4m-27.9 1.8c0 .2-.3 18.5.5 20.9.2 1.5.6 2.7.8 4.6 0 1 .3 2 .4 3 .6 1.2.7 2.4 1.4 3.3.3 1.3 1.3 1.4 1.9 2.5.7.9 2 2.4 2.8 3m-20.5 12.9c-.6-.2-2-1.4-3.2-2-1.4-.8-4.9-4.9-5-7.8"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M206.5 121.6l-5 5a94.3 94.3 0 01-15.8 10.3c-1.2.6-2.7 2-4 2.1-1.3.6-2.7.8-4 1.1a113.4 113.4 0 01-28.7 1.5 43.2 43.2 0 01-3.4-.2c-1 .2-2 .1-3.3.2-1.6-.1-2.4.2-3.7.3-1 .6-2.7 1.1-3.9 1.9-1.5.6-2.5 1.5-3.6 2-1 .9-16.4 9.8-17.2 10.2-1.6.7-7.3 2.5-8.8-1.6-.4-1.6-1-3.3-1.1-4.5-.5-1.4-.2-3-.2-4.4 1.4-6.9 3.6-9.6 4.2-10.8l.7-1.2M251 108l-.1.3c.3-.7.2-.4-.8.8-1 .8-2.2 2-3.1 3-1 .8-1.8 2-2.6 2.4-.8 1-1.8 1.4-3 2a20 20 0 00-3.8 1.9c-1.7.8-2.7 1.7-4.2 2.6-1 1.2-2 2-2.8 3.4-.8 1.3-1.6 2.4-2.3 3.9l-1.8 3.5 1.8-3.5-1.8 3.5m11.7 73.1l.3-.5c-.5 1-.4.7.1-.9 0-1.8.5-4.1.5-5.8.3-1.8.6-3.7.6-5.5-.1-2-.1-4-.4-6 0-1.8-.3-3.7-.3-5.6 0-1.8-.2-3.3-.6-5a29.5 29.5 0 00-.4-4.8c.1-1.2-.2-2.4-.5-3.4l-1.2-5.1-1-4.1c-.2-1.6-1-3.6-1.4-4.9a13.6 13.6 0 01-1.1-3.4c-.5-1.1-1.2-2.4-1.3-3.6l-1.6-3.7-1.4-3.6c-.5-1.4-1.1-2.6-1.5-4-.5-.5-.6-1-.8-1.4"/>
+    <path fill="#ffe606" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M234.9 98.5a59 59 0 01-6.2 9.7l-4.2 8.4c-1.8 4.6-.7 6.5.1 7.8 1.7 3 2 4.6 3.2 6.8.5 2.8-4.5 3.8-4.5 3.9-10.4 3.6-15.7-6.4-15.7-6.9-1.4-5.2-1.2-6 2-7.1 3.6-.9 5-1 6.8-2.2 3.5-2.6 5.9-10.3 6-10.4l.4-4.4c.3-2-.6-4 .4-7.2 1.4-3.2 2.2-4 5.4-4.3 4.2-.3 7.5 2.6 6.3 5.9z"/>
+    <path fill="#ffef00" fill-rule="evenodd" stroke="#000" stroke-width="2.2" d="M221.3 199.7c-1.6-1.5 29.4 11.2 33.7 11.3 5.8-2.1 29.9-22.4 29.9-22.4.2 2 1.1 7.1 3.4 8.2-9.3 7.5-17.7 14.8-27 22.3.6 12-1.5 24.7 4.5 38 0 0-7.2.2-7.2 0-6.4-6.4-8.7-37.2-8.7-37.2l-30.6-13.6c1.5-1 2.6-3.9 2-6.7z"/>
+    <path fill="none" stroke="#000" stroke-width="2.2" d="M250.8 231.3c.5-.4-5.6 2.8-7.2 3.6-28.1 15-42.6 37-43.5 37.8l-2.2 3.4-2.3 3a60.6 60.6 0 01-3.6 4.7c-.2.6.4-.3.2.2m77.9-70.6a79 79 0 006.5 4.7c26.2 18.2 52.3 21.1 53.5 21.5 1 0 2.5.3 4 .5 1.2 0 2.6.4 3.8.5 1.4.2 4.4.8 5.8 1.2.6-.2-.5-.3 0-.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/in.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/in.svg
new file mode 100644
index 0000000..6b831bc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/in.svg
@@ -0,0 +1,25 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-in" viewBox="0 0 640 480">
+  <path fill="#f93" d="M0 0h640v160H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path fill="#128807" d="M0 320h640v160H0z"/>
+  <g transform="matrix(3.2 0 0 3.2 320 240)">
+    <circle r="20" fill="#008"/>
+    <circle r="17.5" fill="#fff"/>
+    <circle r="3.5" fill="#008"/>
+    <g id="d">
+      <g id="c">
+        <g id="b">
+          <g id="a" fill="#008">
+            <circle r=".9" transform="rotate(7.5 -8.8 133.5)"/>
+            <path d="M0 17.5L.6 7 0 2l-.6 5L0 17.5z"/>
+          </g>
+          <use width="100%" height="100%" transform="rotate(15)" xlink:href="#a"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(30)" xlink:href="#b"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(60)" xlink:href="#c"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(120)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="rotate(-120)" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/io.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/io.svg
new file mode 100644
index 0000000..d6e5854
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/io.svg
@@ -0,0 +1,138 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-io" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="io-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#io-a)" transform="scale(.9375)">
+    <path fill="#fff" fill-rule="evenodd" d="M0 0h1024v512H0z"/>
+    <path fill="#000063" fill-rule="evenodd" d="M1024 445.2c-11.5 7-21.3 23-51.8 23-61 0-76.2-33.9-122-33.9-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.2-57.9 24.2v43.7c18.3 0 27.4-24.2 58-24.2 45.6 0 60.9 34 121.8 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 40.3-9.6 51.8-16.5v-50.3zm0-84.9c-11.5 7-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 58-24.2 45.6 0 60.9 34 121.8 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 40.3-9.6 51.8-16.5v-50.3zm0-84.9c-11.5 7-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 58-24.2 45.6 0 60.9 34 121.8 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 40.3-9.7 51.8-16.6v-50.2zm0-84.9c-11.5 6.9-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-39.6 24.3-57.9 24.3v43.7c18.3 0 27.4-24.2 58-24.2 45.6 0 60.9 34 121.8 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 40.3-9.7 51.8-16.6v-50.2zm0-85c-11.5 7-21.3 23.1-51.8 23.1-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34C27.4 94.7 18.3 119 0 119v43.7c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76-34 45.8 0 61 34 122 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6v-50.2zm0-84.8c-11.5 6.9-21.3 23-51.8 23-61 0-76.2-34-122-34-30.4 0-45.6 34-76.1 34-61 0-76.2-34-122-34-30.4 0-45.6 34-76 34-61 0-76.3-34-122-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34-30.5 0-45.7 34-76.2 34-61 0-76.2-34-121.9-34C27.4 9.7 18.3 34 0 34v43.8c18.3 0 27.4-24.2 57.9-24.2 45.7 0 61 34 122 34 30.4 0 45.6-34 76.1-34 45.7 0 61 34 122 34 30.4 0 45.6-34 76-34 45.8 0 61 34 122 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.5 0 45.7-34 76.2-34 45.7 0 61 34 121.9 34 30.4 0 40.3-9.7 51.8-16.6V20.7z"/>
+    <path fill="#000063" fill-rule="evenodd" d="M0 0h261.3v158H0z"/>
+    <g stroke-width="1pt">
+      <path fill="#fff" d="M0 0v17.7L232.1 158h29.2v-17.7L29.3.1H0zm261.3 0v17.7L29.3 158H0v-17.7L232.1.1h29.2z"/>
+      <path fill="#fff" d="M108.9 0v158h43.5V0H109zM0 52.8v52.6h261.3V52.7H0z"/>
+      <path fill="#c00" d="M0 63.2v31.6h261.3V63.2H0zM117.6 0v158h26.1V0h-26.1zM0 158l87.1-52.7h19.5L19.5 158H0zM0 0l87.1 52.7H67.6L0 11.8V.1zm154.7 52.7L241.8.1h19.5l-87 52.6h-19.6zM261.3 158l-87-52.7h19.4l67.6 40.9V158z"/>
+    </g>
+    <path fill="#a24300" fill-rule="evenodd" stroke="#fff" stroke-width="6.9" d="M815-301.2l-17.8 708.7c0 37.3 80.1 37.3 88.6 0l-17.7-708.7H815z" transform="matrix(.2064 0 0 .4902 211.6 267.4)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.2354 .06743 -.1035 -.19501 591.3 322.6)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(.17703 -.18126 .22077 .14638 73.8 93.5)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(.1135 .2156 -.24917 .1076 581.8 -57.8)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.15682 .19451 -.23555 -.12827 705.9 197.8)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M496 549.2l17.8 70.9 35.4-53.2-17.7 88.6 35.4-35.4-35.4 88.6 35.4-35.5-35.4 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-35.4-88.6 35.4 35.5-35.4-88.6 35.4 35.4L443 567l35.4 53.2 17.8-70.9z" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M496 549.2v496m-70.8-177l70.9 106.2 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 797.2l70.9 106.3 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 726.4l70.9 106.3 70.8-106.3" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 673.2l70.9 88.6 70.8-88.6" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 620l70.9 88.7 70.8-88.6" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M443 567l53 106.2L549.3 567" transform="matrix(-.15547 -.16616 .17678 -.15123 275.8 396)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M460.6 549.2l28.7 70.9 42.2-53.2-10.2 88.6 28-35.4-17.8 88.6 25.2-35.5-25.2 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-45.6-88.6 45.6 35.5-53.1-88.6 43 35.4-25.3-88.6 35.4 53.2v-70.9z" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M467.2 584.6l28.9 124v336.7" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.2 885.8l59.9 88.6 60.6-88.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M434.5 815l61.6 88.5 60.6-88.5" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M435.4 744.1l60.7 88.6 59.8-88.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M432.8 691l63.3 70.8 53.1-70.9" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 637.8l70.9 70.9 45.4-70.9" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.1 593.2l53.2 87 35.3-95.6" transform="matrix(-.27108 -.06397 -.15704 .20433 684.1 -32.2)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M460.6 549.2l28.7 70.9 42.2-53.2-10.2 88.6 28-35.4-17.8 88.6 25.2-35.5-25.2 88.6 35.4-35.4-35.4 106.3 35.4-35.5-35.4 106.3 35.4-35.4-35.4 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-35.4-106.3 35.4 35.4-35.4-106.3 35.4 35.5-35.4-106.3 35.4 35.4-45.6-88.6 45.6 35.5-53.1-88.6 43 35.4-25.3-88.6 35.4 53.2v-70.9z" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M467.2 584.6l28.9 124v336.7" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.2 885.8l59.9 88.6 60.6-88.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M434.5 815l61.6 88.5 60.6-88.5" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M435.4 744.1l60.7 88.6 59.8-88.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M432.8 691l63.3 70.8 53.1-70.9" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 637.8l70.9 70.9 45.4-70.9" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M436.1 593.2l53.2 87 35.3-95.6" transform="matrix(.27011 .06695 .00989 .24471 240.8 -138.4)"/>
+    <path fill="#006d00" fill-rule="evenodd" stroke="#fff" stroke-width="8.3" d="M354.3 531.5l88.6 88.6 17.7-53.2v88.6l35.5-35.4-17.8 88.6 35.5-35.5-17.7 88.6 35.4-35.4-17.7 106.3 35.4-35.4-35.4 106.3 35.4-35.5-17.7 106.3-17.7 53.2-17.7 17.7-17.8-17.7-17.7-53.2-53.1-82.3 35.4 11.5-35.4-106.3 35.4 35.4-53.1-106.3 35.4 35.4-53.2-88.6 53.2 35.5-70.9-88.6 53.2 35.4-70.9-70.8 70.9 35.4-53.2-88.6z" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M379 560l64 95.5 17.6 53.2 8.9 45.2 8.8 78.8 9.4 70.9 8.4 141.7" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M425.2 903.5l63.7 71 50.7-88.7" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M417 815l70.7 88.5 50.7-88.5" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M407.5 752.4l70.9 80.3 45.9-88.6M372.1 637.8l88.5 70.9 25.9-70.9" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <path fill="none" stroke="#000" stroke-width="1pt" d="M360.6 602.4l82.3 53.1 10.5-53.1m-63.6 88.5l81 71 34-71" transform="matrix(.03453 -.23456 .24402 .04167 115.5 229.5)"/>
+    <g fill-rule="evenodd">
+      <path fill="#c00" stroke="#000" stroke-width="1pt" d="M541.5 1173.3l-1.7-229.1-61.1-107c-15.3-52.6-7.8-78 17-79.8 24.7-1.6 49.2 13.6 84.8 15.3 35.6 1.7 28.9-59.4 81.5-57.7 52.6 1.7 144.3 32.3 222.3 37.4 78.1 5 118.8-27.2 208.8-30.6 90-3.4 113.7 42.4 118.8 42.4s30.6-18.6 56-22c25.5-3.4 34 10.2 34 10.2s-1.7 57.7-13.6 91.6c-11.9 34-54.3 90-56 90-1.7 0-15.3 249.5-15.3 251.2 0 1.7-675.5-6.8-675.5-11.9z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <g stroke="#000" stroke-width="1pt">
+        <path fill="#fff100" d="M531.5 584.6s-68-52-69.8-177.1c-1-72 34.4-124 123-124 124 0 301.1 53.1 301.1 53.1v17.7s-141.7-53.1-301.2-53.1c-70.8 0-106.3 52-106.3 105.2 0 88.6 71 178.3 71 178.3v141.7h-17.8V584.6z" transform="matrix(-.13659 0 0 .12573 508.4 252.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 506.2 252.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 508.6 247.4)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 509.9 242.2)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 510.8 236.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 510.6 230.7)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 502.7 257)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 508.5 225)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 504 220.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 498 217.5)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 492 217.1)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 485.5 217.3)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 479 218.2)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 472.6 219)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 465.6 220)"/>
+        <path fill="#fff" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(-.13659 0 0 .12573 459.6 221.6)"/>
+      </g>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 268.6 252.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 266.1 247.4)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264.9 242.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264 236.7)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 264.2 230.7)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 266.2 225)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 270.6 220.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 276.7 217.5)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 282.7 217.1)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 289.2 217.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 295.7 218.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 302.2 219)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 309.1 220)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 315.1 221.6)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 272 257)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M531.5 584.6s-68-52-69.8-177.1c-1-72 34.4-124 123-124 124 0 301.1 53.1 301.1 53.1v17.7s-141.7-53.1-301.2-53.1c-70.8 0-106.3 52-106.3 105.2 0 88.6 71 178.3 71 178.3v141.7h-17.8V584.6z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3" d="M1240.2 531.5s15.3-35.4 70.9-35.4c37.8 0 70.8 35.4 70.8 70.8v70.9h35.5v-70.9c0-35.4 35.4-70.8 70.8-70.8 53.2 0 70.9 35.4 70.9 35.4s0-106.3-70.9-106.3c-53.1 0-70.8 35.4-70.8 35.4s17.7-53.1 17.7-106.3-35.4-88.6-35.4-88.6c0 6.8-35.5 35.5-35.5 88.6s17.7 106.3 17.7 106.3-17.7-35.4-70.8-35.4c-70.9 0-70.9 106.3-70.9 106.3z" transform="matrix(.04553 0 0 .0479 299.4 309)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3" d="M1240.2 531.5s15.3-35.4 70.9-35.4c37.8 0 70.8 35.4 70.8 70.8v70.9h35.5v-70.9c0-35.4 35.4-70.8 70.8-70.8 53.2 0 70.9 35.4 70.9 35.4s0-106.3-70.9-106.3c-53.1 0-70.8 35.4-70.8 35.4s17.7-53.1 17.7-106.3-35.4-88.6-35.4-88.6c0 6.8-35.5 35.5-35.5 88.6s17.7 106.3 17.7 106.3-17.7-35.4-70.8-35.4c-70.9 0-70.9 106.3-70.9 106.3z" transform="matrix(.04553 0 0 .0479 347.8 309)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M531.5 832.7V673.2s35.4 53.2 88.6 53.2c43.5 0 88.6-70.9 88.6-70.9s41.5 53.2 88.6 53.2c42 0 88.5-68.6 88.5-68.6s43.2 68.6 88.6 68.6c45.5 0 88.6-53.2 88.6-53.2s46.3 70.9 106.3 70.9c53.1 0 70.9-53.2 70.9-53.2v159.5H531.5z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M708.7 832.7v-124S815 744 815 832.7H708.7z" transform="matrix(.13659 0 0 .12573 242.2 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M708.7 832.7v-124S815 744 815 832.7H708.7z" transform="matrix(-.13659 0 0 .12573 532.5 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M602.4 832.7C602.4 744 708.7 688 708.7 688S815 744 815 832.7H602.4z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M602.4 832.7C602.4 744 708.7 688 708.7 688S815 744 815 832.7H602.4z" transform="matrix(.13659 0 0 .12573 314.8 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M584.6 847.5c0-88.6 124.1-159.4 124.1-159.4s124 70.8 124 159.4h-248z" transform="matrix(.13659 0 0 .12573 290.6 250.9)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M1275.6 655.5c-35.4-17.7-166-35.4-376.3-35.4s-350 17.7-385.5 35.4c-35.4 17.7-35.4 53.2 0 70.9 35.4 17.7 175.3 35.4 385.5 35.4s340.9-17.7 376.3-35.4c35.4-17.7 35.4-53.2 0-70.9z" transform="matrix(.13505 0 0 .12573 265.9 275)"/>
+      <path fill="gray" d="M435.8 366.3c0 4.5-40.3 4.5-48.4 4.5-8.8 0-48.4 1.2-48.4-4.5 0-4.4 39.9-4.4 48.4-4.4 8.4 0 48.4.9 48.4 4.4z"/>
+      <path fill="#c00" d="M343.8 350.3c0 1.5-1 2.7-2.4 2.7s-2.4-1.2-2.4-2.7 1-2.6 2.4-2.6c1.3 0 2.4 1.2 2.4 2.6zm92 0c0 1.5-1.1 2.7-2.5 2.7-1.3 0-2.4-1.2-2.4-2.7s1.1-2.6 2.4-2.6c1.4 0 2.4 1.2 2.4 2.6z"/>
+      <path d="M392.2 349c0 1.4-2.2 2.6-4.8 2.6s-4.9-1.2-4.9-2.7 2.2-2.6 4.9-2.6 4.8 1.2 4.8 2.6z"/>
+      <path fill="#006300" d="M415.4 349c0 1.4-1.6 2.6-3.6 2.6s-3.6-1.2-3.6-2.7 1.6-2.6 3.6-2.6 3.6 1.2 3.6 2.6zm-49.8 0c0 1.4-1.6 2.6-3.6 2.6s-3.7-1.2-3.7-2.7 1.6-2.6 3.7-2.6c2 0 3.6 1.2 3.6 2.6z"/>
+      <path fill="#fff100" stroke="#000" stroke-width="2.2" d="M1257.9 496s35.4-53 70.9-53h35.4v35.3c0 53.2-53.1 71-53.1 71h141.7s-53.2-17.8-53.2-71V443h35.5c35.4 0 70.8 53.2 70.8 53.2V354.3s-35.4 53.2-70.8 53.2h-35.5V372c0-53.1 53.2-70.8 53.2-70.8H1311s53.1 17.7 53.1 70.8v35.5h-35.4c-35.5 0-70.9-53.2-70.9-53.2v141.8z" transform="matrix(.07805 0 0 .07185 279.5 298)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3.3" d="M1381.9 549.2h70.9s-53.2-17.7-53.2-70.9V443h35.4c35.5 0 71 53.2 71 53.2V354.3s-35.5 53.2-71 53.2h-35.4V372c0-53.1 53.2-70.8 53.2-70.8h-70.9v248z" transform="matrix(.03903 0 0 .06287 285 307.3)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="3.3" d="M1381.9 549.2h70.9s-53.2-17.7-53.2-70.9V443h35.4c35.5 0 71 53.2 71 53.2V354.3s-35.5 53.2-71 53.2h-35.4V372c0-53.1 53.2-70.8 53.2-70.8h-70.9v248z" transform="matrix(-.03903 0 0 .06287 489.7 307.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M903.5 602.4a17.7 17.7 0 11-35.4 0 17.7 17.7 0 0135.4 0z" transform="matrix(.13659 0 0 .12573 266.4 252.7)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="2.2" d="M1257.9 496s35.4-53 70.9-53h35.4v35.3c0 53.2-53.1 71-53.1 71h141.7s-53.2-17.8-53.2-71V443h35.5c35.4 0 70.8 53.2 70.8 53.2V354.3s-35.4 53.2-70.8 53.2h-35.5V372c0-53.1 53.2-70.8 53.2-70.8H1311s53.1 17.7 53.1 70.8v35.5h-35.4c-35.5 0-70.9-53.2-70.9-53.2v141.8z" transform="matrix(.07805 0 0 .07185 279.5 251.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M903.5 602.4a17.7 17.7 0 11-35.4 0 17.7 17.7 0 0135.4 0z" transform="matrix(.13659 0 0 .12573 266.6 206.3)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M850.4 655.5h70.9v53.2h-71z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <path fill="#fff100" stroke="#000" stroke-width="1pt" d="M850.4 683.3h70.9v202.5h-71z" transform="matrix(.13659 0 0 .12573 266.4 208.2)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 246)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 240.3)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 235)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1pt" d="M478.4 549.2a17.7 17.7 0 11-35.5 0 17.7 17.7 0 0135.5 0z" transform="matrix(.13659 0 0 .12573 324.4 229.4)"/>
+      <path d="M392.5 357.5c0 1-2.2 1.8-5 1.8s-4.8-.8-4.8-1.8 2.2-1.8 4.9-1.8 4.9.8 4.9 1.8zm44.6 4.4c-.3.7-2.7.8-5.4.1-2.7-.6-4.6-1.6-4.4-2.3.3-.7 2.7-.8 5.4-.1 2.7.6 4.6 1.6 4.4 2.3zm-18.7-3c0 .9-2.4 1.4-5.2 1.3-2.7-.2-4.9-1.1-4.8-2 .1-.9 2.5-1.4 5.2-1.2 2.8.2 5 1 4.8 1.9zm-81.8 3c.2.7 2.6.8 5.3.1 2.7-.6 4.7-1.6 4.4-2.3-.3-.7-2.7-.8-5.4-.1-2.6.6-4.6 1.6-4.3 2.3zm19.5-3.4c.1.9 2.5 1.4 5.2 1.2 2.8-.2 5-1 4.8-2 0-.8-2.4-1.4-5.2-1.2-2.7.2-4.9 1-4.8 2z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/iq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/iq.svg
new file mode 100644
index 0000000..ab90fd0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/iq.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-iq" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path fill="#ce1126" d="M0 0h640v160H0z"/>
+  <path d="M0 320h640v160H0z"/>
+  <g fill="#007a3d" transform="translate(-179.3 -92.8) scale(1.75182)">
+    <path d="M325.5 173.2a5 5 0 01-1.4-1c-.3-.5-.1-.5 1.2-.2 2.3.7 3.8.4 5.3-.8l1.3-1.1 1.5.7c.9.5 1.8.8 2 .7.7-.2 2.1-2 2-2.6 0-.7.6-.5 1 .3.6 1.6-.3 3.5-2 3.9-.7.2-1.4.1-2.6-.3-1.4-.5-1.7-.5-2.4 0a5.4 5.4 0 01-5.9.4zm5.8-5.3a8 8 0 01-1-4c.1-.6.3-.8.8-.6 1 .3 1.2 1 1 3 0 1.8-.3 2.3-.8 1.6zm-67.6-1.9c-.1 1.3 2.4 4.6 3.5 5.2-.8.3-1.7.2-2.4.5-4 4-18.4 18-21 21.4 7.8.2 16.4-.1 23.7-.4 0-5.3 5-5.6 8.4-7.5 1.7 2.7 6 2.5 6.6 6.6v17.6H216a9.7 9.7 0 01-12.3 7.5c2-2 5.4-2.8 6.6-5.7 1-6.4-2-10.3-4-14a24 24 0 007-3.6c-2.3 7 6.2 6.3 12.4 6.1.2-2.4.1-5.2-1.7-5.6 2.3-.9 2.7-1.2 6.6-4.4v9.6l46.1-.1c0-3 .8-7.9-1.6-7.9-2.2 0 0 6.2-1.8 6.2h-35.7v-6c1.5-1.6 1.3-1.5 11.6-11.8 1-1 8.3-7.6 14.6-13.7zm89.1-.3c2.5 1.4 4.5 3.2 7.5 4-.3 1.3-1.5 1.8-1.8 3.1v27c3.4.7 4.2-1.3 5.8-2.3.4 4.3 3.2 8.5 3 12h-14.5v-43.7zm-19.4 14.5s5.3-4.5 5.3-4.7V199h3.8l-.1-26.3c1.5-1.6 4.6-3.8 5.3-5.4v42h-33.4c-.5-8.7-.6-17.7 9.6-15.8V190c-.3-.6-.9.1-1-.7 1.6-1.6 2.1-2 6.5-5.8l.1 15.5h3.9v-18.8zm-12.6 18.6c.7 1 3.2 1 3-.8-.3-1.5-3.5-1-3 .8z"/>
+    <circle cx="224" cy="214.4" r="2"/>
+    <path d="M287 165.8c2.5 1.3 4.5 3.2 7.6 4-.4 1.2-1.5 1.7-1.8 3v27c3.4.7 4.1-1.2 5.7-2.3.5 4.3 3.2 8.6 3.1 12H287v-43.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ir.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ir.svg
new file mode 100644
index 0000000..ffb37b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ir.svg
@@ -0,0 +1,219 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ir" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ir-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.7v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#ir-a)" transform="translate(80) scale(.9375)">
+    <path fill="#fff" d="M-192 0h896v512h-896z"/>
+    <path fill="#da0000" d="M-192 343.8h896V512h-896z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-21.6 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm41.9 0v3.3h-9.8v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M52.4 367.7v3.4H33.8v-3.4zm-34.6-7.9H21v11.3h-3.3z"/>
+      <path d="M49.6 351H53v20h-3.4zm-8.4 0h3.3v20h-3.3zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M17.8 359.9H21V371h-3.3z"/>
+      <path d="M17.8 359.9H21V371h-3.3z"/>
+      <path d="M17.8 359.9H21V371h-3.3zm-39.3 0h3.3V371h-3.3zm28.8 0h3.4V371H7.3zm-14.3 0h3.4V371H-7z"/>
+      <path d="M9.6 367.7v3.4H-5.5v-3.4zm1-8.7v3.4H1V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-102.2 351h49v3.3h-49zm7.3 16.8h3.4v3.3H-95zm41.9 0v3.3h-9.8v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M-28.2 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.3v11.3h-3.3z"/>
+      <path d="M-31 351h3.4v20H-31zm-8.4 0h3.3v20h-3.3zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M-62.8 359.9h3.3V371h-3.3z"/>
+      <path d="M-62.8 359.9h3.3V371h-3.3z"/>
+      <path d="M-62.8 359.9h3.3V371h-3.3zm-39.3 0h3.3V371h-3.3zm28.8 0h3.3V371h-3.3zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M-71 367.7v3.4h-15v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M58.3 351h49v3.3h-49zm7.3 16.8H69v3.3h-3.4zm41.9 0v3.3h-9.8v-3.4zm5.3-16.8h3.4v20h-3.4z"/>
+      <path d="M132.3 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M129.5 351h3.4v20h-3.4zm-8.4 0h3.4v20H121zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M97.7 359.9h3.4V371h-3.4z"/>
+      <path d="M97.7 359.9h3.4V371h-3.4z"/>
+      <path d="M97.7 359.9h3.4V371h-3.4zm-39.3 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M89.6 367.7v3.4H74.4v-3.4zm1-8.7v3.4H81V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M622.7 351h49v3.3h-49zm7.3 16.8h3.4v3.3H630zm41.9 0v3.3H662v-3.4zm5.3-16.8h3.3v20h-3.4z"/>
+      <path d="M696.7 367.7v3.4H678v-3.4zm-34.6-7.9h3.4v11.3H662z"/>
+      <path d="M694 351h3.3v20h-3.4zm-8.5 0h3.4v20h-3.4zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M662 359.9h3.5V371H662z"/>
+      <path d="M662 359.9h3.5V371H662z"/>
+      <path d="M662 359.9h3.5V371H662zm-39.2 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M654 367.7v3.4h-15.2v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M138.7 351h49.1v3.3h-49zm7.4 16.8h3.3v3.3h-3.3zm41.8 0v3.3h-9.8v-3.4zm5.3-16.8h3.4v20h-3.4z"/>
+      <path d="M212.8 367.7v3.4h-18.6v-3.4zm-34.7-7.9h3.4v11.3h-3.4z"/>
+      <path d="M210 351h3.4v20H210zm-8.5 0h3.4v20h-3.4zm-44.8 8v3.4h-17.9V359zm39.3 0v3.4h-17.9V359z"/>
+      <path d="M178.1 359.9h3.4V371h-3.4z"/>
+      <path d="M178.1 359.9h3.4V371h-3.4z"/>
+      <path d="M178.1 359.9h3.4V371h-3.4zm-39.3 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.2 0h3.3V371h-3.3z"/>
+      <path d="M170 367.7v3.4h-15.1v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M219.5 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm41.9 0v3.3h-9.8v-3.4zM274 351h3.3v20H274z"/>
+      <path d="M293.5 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M290.7 351h3.4v20h-3.4zm-8.4 0h3.4v20h-3.4zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M258.9 359.9h3.4V371h-3.4z"/>
+      <path d="M258.9 359.9h3.4V371h-3.4z"/>
+      <path d="M258.9 359.9h3.4V371h-3.4zm-39.3 0h3.3V371h-3.3zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371H234z"/>
+      <path d="M250.8 367.7v3.4h-15.2v-3.4zm1-8.7v3.4H242V359z"/>
+    </g>
+    <path fill="#239f40" d="M-192 0h896v168.2h-896z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M300.7 351h49v3.3h-49zm7.3 16.8h3.4v3.3H308zm41.9 0v3.3H340v-3.4zm5.3-16.8h3.3v20h-3.3z"/>
+      <path d="M374.7 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3H340z"/>
+      <path d="M372 351h3.3v20H372zm-8.5 0h3.4v20h-3.4zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M340 359.9h3.5V371H340z"/>
+      <path d="M340 359.9h3.5V371H340z"/>
+      <path d="M340 359.9h3.5V371H340zm-39.2 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M332 367.7v3.4h-15.2v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M381.4 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm42 0v3.3h-9.9v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M455.4 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M452.7 351h3.3v20h-3.3zm-8.5 0h3.4v20h-3.4zm-44.8 8v3.4h-17.9V359zm39.3 0v3.4h-17.9V359z"/>
+      <path d="M420.8 359.9h3.4V371h-3.4z"/>
+      <path d="M420.8 359.9h3.4V371h-3.4z"/>
+      <path d="M420.8 359.9h3.4V371h-3.4zm-39.3 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371h-3.3z"/>
+      <path d="M412.7 367.7v3.4h-15.1v-3.4zm1-8.7v3.4H404V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M462.2 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm41.9 0v3.3h-9.8v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M536.2 367.7v3.4h-18.6v-3.4zm-34.7-7.9h3.4v11.3h-3.4z"/>
+      <path d="M533.4 351h3.4v20h-3.4zm-8.4 0h3.3v20H525zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M501.6 359.9h3.3V371h-3.3z"/>
+      <path d="M501.6 359.9h3.3V371h-3.3z"/>
+      <path d="M501.6 359.9h3.3V371h-3.3zm-39.4 0h3.4V371h-3.4zm28.9 0h3.3V371h-3.3zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M493.4 367.7v3.4h-15.1v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M543.4 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm41.9 0v3.3h-9.8v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M617.4 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.3v11.3h-3.3z"/>
+      <path d="M614.6 351h3.4v20h-3.4zm-8.4 0h3.3v20h-3.3zm-44.8 8v3.4h-18V359zm39.3 0v3.4h-18V359z"/>
+      <path d="M582.8 359.9h3.3V371h-3.3z"/>
+      <path d="M582.8 359.9h3.3V371h-3.3z"/>
+      <path d="M582.8 359.9h3.3V371h-3.3zm-39.3 0h3.3V371h-3.3zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371H558z"/>
+      <path d="M574.6 367.7v3.4h-15.1v-3.4zm1-8.7v3.4H566V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-183.8 351h49v3.3h-49zm7.3 16.8h3.4v3.3h-3.4zm42 0v3.3h-9.9v-3.4zm5.2-16.8h3.4v20h-3.4z"/>
+      <path d="M-109.8 367.7v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M-112.5 351h3.3v20h-3.3zm-8.5 0h3.4v20h-3.4zm-44.8 8v3.4h-17.9V359zm39.3 0v3.4h-17.9V359z"/>
+      <path d="M-144.4 359.9h3.4V371h-3.4z"/>
+      <path d="M-144.4 359.9h3.4V371h-3.4z"/>
+      <path d="M-144.4 359.9h3.4V371h-3.4zm-39.3 0h3.4V371h-3.4zm28.8 0h3.4V371h-3.4zm-14.3 0h3.4V371h-3.4z"/>
+      <path d="M-152.5 367.7v3.4h-15.2v-3.4zm1-8.7v3.4h-9.6V359z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-21.6 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm41.9-.2v3.4h-9.8v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M52.4 160.2v3.4H33.8v-3.4zm-34.6-7.9H21v11.3h-3.3z"/>
+      <path d="M49.6 143.4H53v20.2h-3.4zm-8.4 0h3.3v20.2h-3.3zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M17.8 152.3H21v11.3h-3.3z"/>
+      <path d="M17.8 152.3H21v11.3h-3.3z"/>
+      <path d="M17.8 152.3H21v11.3h-3.3zm-39.3 0h3.3v11.3h-3.3zm28.8 0h3.4v11.3H7.3zm-14.3 0h3.4v11.3H-7z"/>
+      <path d="M9.6 160.2v3.4H-5.5v-3.4zm1-8.7v3.3H1v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-102.2 143.4h49v3.4h-49zm7.3 17h3.4v3.2H-95zm41.9-.2v3.4h-9.8v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M-28.2 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.3v11.3h-3.3z"/>
+      <path d="M-31 143.4h3.4v20.2H-31zm-8.4 0h3.3v20.2h-3.3zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M-62.8 152.3h3.3v11.3h-3.3z"/>
+      <path d="M-62.8 152.3h3.3v11.3h-3.3z"/>
+      <path d="M-62.8 152.3h3.3v11.3h-3.3zm-39.3 0h3.3v11.3h-3.3zm28.8 0h3.3v11.3h-3.3zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M-71 160.2v3.4h-15v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M58.3 143.4h49v3.4h-49zm7.3 17H69v3.2h-3.4zm41.9-.2v3.4h-9.8v-3.4zm5.3-16.8h3.4v20.2h-3.4z"/>
+      <path d="M132.3 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M129.5 143.4h3.4v20.2h-3.4zm-8.4 0h3.4v20.2H121zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M97.7 152.3h3.4v11.3h-3.4z"/>
+      <path d="M97.7 152.3h3.4v11.3h-3.4z"/>
+      <path d="M97.7 152.3h3.4v11.3h-3.4zm-39.3 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M89.6 160.2v3.4H74.4v-3.4zm1-8.7v3.3H81v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M622.7 143.4h49v3.4h-49zm7.3 17h3.4v3.2H630zm41.9-.2v3.4H662v-3.4zm5.3-16.8h3.3v20.2h-3.4z"/>
+      <path d="M696.7 160.2v3.4H678v-3.4zm-34.6-7.9h3.4v11.3H662z"/>
+      <path d="M694 143.4h3.3v20.2h-3.4zm-8.5 0h3.4v20.2h-3.4zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M662 152.3h3.5v11.3H662z"/>
+      <path d="M662 152.3h3.5v11.3H662z"/>
+      <path d="M662 152.3h3.5v11.3H662zm-39.2 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M654 160.2v3.4h-15.2v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M138.7 143.4h49.1v3.4h-49zm7.4 17h3.3v3.2h-3.3zm41.8-.2v3.4h-9.8v-3.4zm5.3-16.8h3.4v20.2h-3.4z"/>
+      <path d="M212.8 160.2v3.4h-18.6v-3.4zm-34.7-7.9h3.4v11.3h-3.4z"/>
+      <path d="M210 143.4h3.4v20.2H210zm-8.5 0h3.4v20.2h-3.4zm-44.8 8v3.4h-17.9v-3.3zm39.3 0v3.4h-17.9v-3.3z"/>
+      <path d="M178.1 152.3h3.4v11.3h-3.4z"/>
+      <path d="M178.1 152.3h3.4v11.3h-3.4z"/>
+      <path d="M178.1 152.3h3.4v11.3h-3.4zm-39.3 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.2 0h3.3v11.3h-3.3z"/>
+      <path d="M170 160.2v3.4h-15.1v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M219.5 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm41.9-.2v3.4h-9.8v-3.4zm5.3-16.8h3.3v20.2H274z"/>
+      <path d="M293.5 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M290.7 143.4h3.4v20.2h-3.4zm-8.4 0h3.4v20.2h-3.4zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M258.9 152.3h3.4v11.3h-3.4z"/>
+      <path d="M258.9 152.3h3.4v11.3h-3.4z"/>
+      <path d="M258.9 152.3h3.4v11.3h-3.4zm-39.3 0h3.3v11.3h-3.3zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3H234z"/>
+      <path d="M250.8 160.2v3.4h-15.2v-3.4zm1-8.7v3.3H242v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M300.7 143.4h49v3.4h-49zm7.3 17h3.4v3.2H308zm41.9-.2v3.4H340v-3.4zm5.3-16.8h3.3v20.2h-3.3z"/>
+      <path d="M374.7 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3H340z"/>
+      <path d="M372 143.4h3.3v20.2H372zm-8.5 0h3.4v20.2h-3.4zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M340 152.3h3.5v11.3H340z"/>
+      <path d="M340 152.3h3.5v11.3H340z"/>
+      <path d="M340 152.3h3.5v11.3H340zm-39.2 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M332 160.2v3.4h-15.2v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M381.4 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm42-.2v3.4h-9.9v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M455.4 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M452.7 143.4h3.3v20.2h-3.3zm-8.5 0h3.4v20.2h-3.4zm-44.8 8v3.4h-17.9v-3.3zm39.3 0v3.4h-17.9v-3.3z"/>
+      <path d="M420.8 152.3h3.4v11.3h-3.4z"/>
+      <path d="M420.8 152.3h3.4v11.3h-3.4z"/>
+      <path d="M420.8 152.3h3.4v11.3h-3.4zm-39.3 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3h-3.3z"/>
+      <path d="M412.7 160.2v3.4h-15.1v-3.4zm1-8.7v3.3H404v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M462.2 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm41.9-.2v3.4h-9.8v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M536.2 160.2v3.4h-18.6v-3.4zm-34.7-7.9h3.4v11.3h-3.4z"/>
+      <path d="M533.4 143.4h3.4v20.2h-3.4zm-8.4 0h3.3v20.2H525zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M501.6 152.3h3.3v11.3h-3.3z"/>
+      <path d="M501.6 152.3h3.3v11.3h-3.3z"/>
+      <path d="M501.6 152.3h3.3v11.3h-3.3zm-39.4 0h3.4v11.3h-3.4zm28.9 0h3.3v11.3h-3.3zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M493.4 160.2v3.4h-15.1v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M543.4 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm41.9-.2v3.4h-9.8v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M617.4 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.3v11.3h-3.3z"/>
+      <path d="M614.6 143.4h3.4v20.2h-3.4zm-8.4 0h3.3v20.2h-3.3zm-44.8 8v3.4h-18v-3.3zm39.3 0v3.4h-18v-3.3z"/>
+      <path d="M582.8 152.3h3.3v11.3h-3.3z"/>
+      <path d="M582.8 152.3h3.3v11.3h-3.3z"/>
+      <path d="M582.8 152.3h3.3v11.3h-3.3zm-39.3 0h3.3v11.3h-3.3zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3H558z"/>
+      <path d="M574.6 160.2v3.4h-15.1v-3.4zm1-8.7v3.3H566v-3.3z"/>
+    </g>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M-183.8 143.4h49v3.4h-49zm7.3 17h3.4v3.2h-3.4zm42-.2v3.4h-9.9v-3.4zm5.2-16.8h3.4v20.2h-3.4z"/>
+      <path d="M-109.8 160.2v3.4h-18.6v-3.4zm-34.6-7.9h3.4v11.3h-3.4z"/>
+      <path d="M-112.5 143.4h3.3v20.2h-3.3zm-8.5 0h3.4v20.2h-3.4zm-44.8 8v3.4h-17.9v-3.3zm39.3 0v3.4h-17.9v-3.3z"/>
+      <path d="M-144.4 152.3h3.4v11.3h-3.4z"/>
+      <path d="M-144.4 152.3h3.4v11.3h-3.4z"/>
+      <path d="M-144.4 152.3h3.4v11.3h-3.4zm-39.3 0h3.4v11.3h-3.4zm28.8 0h3.4v11.3h-3.4zm-14.3 0h3.4v11.3h-3.4z"/>
+      <path d="M-152.5 160.2v3.4h-15.2v-3.4zm1-8.7v3.3h-9.6v-3.3z"/>
+    </g>
+    <path fill="#d90000" stroke-width="1pt" d="M-68.8 339.5h6V350h-6zm160.5 0h6V350h-6zm-283.7 0h6V350h-6zm81.5 0h6V350h-6zm80.9 0h6V350h-6zm40 0h6V350h-6zm40.9 0h6V350h-6zm80.4 0h6V350h-6zm203 0h6.1V350h-6zm-162.1 0h6V350h-6zm40 0h6V350h-6zm40.5 0h6V350h-6zm40.4 0h6V350h-6zm323.2 0h6V350h-6zm-242.7 0h6V350h-6zm40.8 0h6V350h-6zm41.3 0h6V350h-6zm38.8 0h6V350h-6zm41.3 0h6V350h-6zm40.4 0h6V350h-6zm119.7 0h6V350h-6zm-38.8 0h6V350h-6zm-808.9 0h6V350h-6z"/>
+    <path fill="#239e3f" stroke-width="1pt" d="M-68.8 162.6h6v10.5h-6zm160.5 0h6v10.5h-6zm-283.7 0h6v10.5h-6zm81.5 0h6v10.5h-6zm80.9 0h6v10.5h-6zm40 0h6v10.5h-6zm40.9 0h6v10.5h-6zm80.4 0h6v10.5h-6zm203 0h6.1v10.5h-6zm-162.1 0h6v10.5h-6zm40 0h6v10.5h-6zm40.5 0h6v10.5h-6zm40.4 0h6v10.5h-6zm323.2 0h6v10.5h-6zm-242.7 0h6v10.5h-6zm40.8 0h6v10.5h-6zm41.3 0h6v10.5h-6zm38.8 0h6v10.5h-6zm41.3 0h6v10.5h-6zm40.4 0h6v10.5h-6zm119.7 0h6v10.5h-6zm-38.8 0h6v10.5h-6zm-808.9 0h6v10.5h-6z"/>
+    <g fill="#da0000">
+      <path d="M279.8 197.5c8.4 10.4 34.5 67.6-15.7 105.2-23.7 17.8-9 18.6-8.3 21.6 38-20.1 50.3-47.5 50-72-.2-24.4-13.2-46-26-54.8z"/>
+      <path d="M284.8 194.8a73.3 73.3 0 0115.7 112.4c27.2-6 62-86.4-15.7-112.4zm-57.6 0a73.3 73.3 0 00-15.6 112.4c-27.3-6-62-86.4 15.6-112.4z"/>
+      <path d="M232.2 197.5c-8.4 10.4-34.5 67.6 15.7 105.2 23.6 17.8 9 18.6 8.3 21.6-38-20.1-50.3-47.5-50-72 .2-24.4 13.2-46 26-54.8z"/>
+      <path d="M304.2 319.1c-14.9.2-33.6-2-47.5-9.3 2.3 4.5 4.2 7.3 6.5 11.7 13.2 1.3 31.5 2.8 41-2.4zm-95 0c14.9.2 33.6-2 47.5-9.3-2.3 4.5-4.2 7.3-6.5 11.7-13.2 1.3-31.5 2.8-41-2.4zm27.3-138.7c3 8 10.9 9.2 19.3 4.5 6.2 3.6 15.7 3.9 19-4.1 2.5 19.8-18.3 15-19 11.2-7.8 7.5-22.2 3.2-19.3-11.6z"/>
+      <path d="M256.4 331.6l7.8-9 1.1-120.1-9.3-8.2-9.3 7.8 1.9 121 7.8 8.5z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/is.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/is.svg
new file mode 100644
index 0000000..a7524b5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/is.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-is" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="is-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="0" clip-path="url(#is-a)">
+    <path fill="#003897" d="M0 0h666.7v480H0z"/>
+    <path fill="#fff" d="M0 186.7h186.7V0h106.6v186.7h373.4v106.6H293.3V480H186.7V293.3H0V186.7z"/>
+    <path fill="#d72828" d="M0 213.3h213.3V0h53.4v213.3h400v53.4h-400V480h-53.4V266.7H0v-53.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/it.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/it.svg
new file mode 100644
index 0000000..5cb92aa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/it.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-it" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#009246" d="M0 0h213.3v480H0z"/>
+    <path fill="#ce2b37" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/je.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/je.svg
new file mode 100644
index 0000000..d90f124
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/je.svg
@@ -0,0 +1,29 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-je" viewBox="0 0 30 22.5">
+  <defs>
+    <clipPath id="je-a">
+      <path fill-opacity=".7" d="M-5.3-6h40v30h-40z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#je-a)" transform="matrix(.75 0 0 .75 3.975 4.5)">
+    <path fill="#fff" d="M-10.3-6h50v30h-50z"/>
+    <path fill="#df112d" fill-rule="evenodd" d="M-10.3-6v2L11.6 9l-21.8 13v2H-7l21.8-13 21.7 13h3.2v-2L18 9 39.8-4v-2h-3.3L14.7 7-7-6h-3.2z"/>
+    <g transform="translate(-9.7 -6) scale(.20361)">
+      <path fill="#e8112d" stroke="#000" stroke-width=".1" d="M132.7 22.2c3.1 12.8 1.4 28.6-12.9 37.4-14.2-8.8-16-24.6-12.8-37.4 3.4-3 18.6-4.9 25.7 0z"/>
+      <path fill="#f9dd16" stroke="#000" stroke-width=".1" d="M119.8 19.7a26 26 0 0113 3.1 28 28 0 014.9-12.1c-2.5 0-3.6 1.3-3.6 2.6-.6-1.7-3-1.6-3.8-.7 2.7 1.8.6 5-1.8 4.4-1.1-.3-1.7-1.1-2-2.3a1.3 1.3 0 10-.5 0 2.9 2.9 0 01-3.1 1.3c-1.3-.3-1.9-1.5-1.9-2.5 0-2.7 2.6-3.1 3.4-2.6 0-1.8-2.9-3.3-3.8-1.8a4.8 4.8 0 00-.8-5.8A4.8 4.8 0 00119 9c-.9-1.5-3.7 0-3.7 1.8.7-.5 3.3-.1 3.3 2.6 0 1-.6 2.2-1.8 2.5a3 3 0 01-3.2-1.3 1.3 1.3 0 00.6-.4 1.3 1.3 0 10-1.1.4c-.2 1.2-.9 2-2 2.3a2.4 2.4 0 01-1.8-4.4c-.8-1-3.2-1-3.8.7 0-1.3-1.1-2.6-3.6-2.6a28 28 0 015 12.1 26 26 0 0113-3.1z"/>
+      <g id="b" stroke="#000">
+        <g fill="#f9dd16" stroke-width=".1">
+          <path d="M130.7 32.2c-.4 0-.4.5-.5.5.8 0 1.2-.3 1.4-.7v.6c.6-.2.8-.7.6-1l.7.2c-.4-.3-.1-1-.8-1.4.2 0 .6.2.8.5-.1-.7-.2-1.1-.8-1.5h.5a.9.9 0 01-.4-.8c0-.4-.2-.4-.6-.3l-1.8.1c-1 0-2 0-2.8-.6 1.3.6 3-.6 3-1.5 0-1-1.4-2-4-1.4-2.6.6-5.8.4-5.8-.5s2.3-1 3.5-.8c1.2.2 2 .3 4.2-.5-.5.2-2.3.3-3.7-.1s-4.8-.4-4.8 1.4c0 1.9 3.6 1.7 6.8 1.2 1.8-.2 2.8 0 2.8.5 0 .6-1.7.8-3 .7a10 10 0 00-4.1.3c-1.3.4-2.2 0-3.6.3-.7 0-2.4 0-3.2-1.4-.5.4-2 1.1-2.3 1.9-.3.6 0 1.3.4 2 .6.8-.3.7-1 .7-.8 0-2 0-2.6-.8-.6-.6-1.3-1.1-1.9-.7-.3.3 0 .6.2.5l.8.2a1 1 0 00-1 .1c-.3.2 0 .6.3.5.2-.1.7-.2 1 0-.3 0-.7 0-.8.2s0 .4.3.4c.6 0 .7.4 1.3.3a.9.9 0 00-.7.4c.6-.3 1.1.4 1.8.2-.2.1-.7.4-.7.6.4-.5 3.2.4 3.2-.7l-.1.8c.3-.2 1.4-.3 1.8-1 0 .2 0 .5-.2.6.3 0 .8-.2 1.3-.9.2-.3.2-.5.2-.7.5 0 .8-.1 1.2-.4.4-.3.8.3 1.5-.2.6-.4 1.2 0 1.6-.2.3-.2.8 0 1.2-.2s1 .1 1.6-.4c1 .4 2.3 1 5.2.5 1.6-.3 2.2.3 2.2 1 0 .6-.4.6-.6.6-1 .1-1.3-.3-1.7-.2-.2.1-.4.5 0 .7-.3.1-.3.4-.1.5s.5 0 .8-.1c-.4.1-.7.4-.5.7.1.2.4.3.7 0 .3-.4.8-.7 1.2-.7zm-18.6-8c-.8-.3-1-.3-.9.4 0 .3.3.7.5.9 0-.3.1-1 .4-1.2z"/>
+          <path d="M114.8 24.3c.8-.4 1.1-.4.9.3 0 .3-.3.7-.5.9 0-.3 0-1-.4-1.2z"/>
+          <path d="M113.5 23.8c1.6 0 1.8.8 1.7 1.7 0 1-.5.6-.8 2-.1.4-.5.5-1 .5-.3 0-.7 0-.9-.6-.3-1.3-.8-1-.8-2 0-.8.2-1.6 1.8-1.6z"/>
+          <path d="M109.4 27.5c-.4-.2-.7 0-.9 0 .6.1.6.8 1.8 1-.3 0-.4.2-.7 0 .5.4 1 .9 2.2.9.7 0 .2.3-.2.1.4.5 1.3.1 1.9 1 0-.7-1-1.7-.5-2.4-1.7-.1-1.8-1-2.7-1.7-.8-.6-.9-1.2-1.2-2.3-.1-.5-.7-.8-1-.7-.3 0-.5.3-.2.5.2.2.6.2.6.7-.3-.4-.8-.5-1-.3-.1.2 0 .5.2.5.5 0 .2.6.7 1-.5-.5-.9-.6-1.2-.3-.1.2 0 .5.4.5.5 0 1 1.2 1.8 1.5zm13 4.6c-.2 0-.1.5-.5.5.8 0 1.3-.2 1.6-.5l-.2.5c.4-.3 1.5-.4 2-.3s.6-.1.8-.4c.2-.4 0-.6-.3-.8-.3-.3-.4-.7-.3-1.3-1.4-2-4-1-4-.2.9 1.1 1 1 1.8 1.1.7.2 1.2.2.7.6-.2.2-1 0-1.5.1-1.3 0-2-.9-2.3-.4-.3.4 0 .6.6.6-.4 0-1 0-.9.4.2.7.8-.1 1.1.1-.2 0-.6.1-.6.3 0 .2.5.5 1 0a1.6 1.6 0 011-.3z"/>
+        </g>
+        <path fill="none" stroke-width=".1" d="M123.5 29.2c-.4-.2-.9-.3-1.4-.2m-5.6 0c-.4.8-.2 1.2-.1 1.6m-4-5.6c.2.2.4-.2.8.2-.1-.1-.3.3-.6 0m2-.1c-.3 0-.5-.3-.9.1.1-.1.3.3.6 0m-.6 0v.3c.1.7.3 1-.3 1-.5 0-.3-.3-.2-1v-.3"/>
+        <path fill="#ff0016" stroke-width=".1" d="M113.5 27.7c.4 0 .6 0 .6-.6 0-.2.3-.3.1-.7.2.4-.7.4-.7.2 0 .2-1 .2-.8-.2-.1.4.2.5.1.7 0 .6.2.6.7.6z"/>
+        <path stroke-width=".1" d="M113 26.5l-1-.3m1 .3h-1m1 .1l-.9.3m1.7-.4l1-.3m-1 .3h1.2m-1.2.1l1 .3"/>
+        <path fill="#0051ba" stroke-width="0" d="M108.1 23.4c-.3-.4-1 0-1 .4.2-.3.6.1.9 0 .1 0 .3-.2.1-.4zm-.3.9c-.3-.4-1.1 0-1.1.4.2-.3.6.1.9 0 .1 0 .3-.3.2-.4zm-.2 1.2c-.4-.4-1.1 0-1 .5.2-.3.6 0 .8 0 .2-.1.3-.4.1-.5zm.3 3.7c-.4-.4-1 .1-1 .6.2-.4.7 0 1-.2 0 0 .2-.3 0-.5zm0 .7c-.5-.1-1 .6-.7 1 0-.5.6-.3.8-.5l-.1-.5zm.6.7c-.5-.2-1 .4-.7.8 0-.3.6-.2.7-.4v-.5zm11.7 1.1c-.5-.1-1 .5-.7 1 0-.5.6-.3.8-.5l-.1-.5zm.6.6c-.5-.1-.9.6-.6 1 0-.5.6-.4.7-.6.1-.1.1-.4 0-.4zm-.4-1.4c-.4-.2-1 .4-.9.8.2-.4.7-.1.9-.3V31zm8.3 1c-.4-.1-.8.6-.6 1 0-.4.6-.3.8-.5 0-.2 0-.5-.2-.5zm0-.7c-.4-.3-1 .3-.8.7.2-.3.7-.1.9-.3v-.5zm.4 1.3c-.5 0-.9.7-.6 1 0-.4.6-.3.7-.5.1-.2 0-.4-.1-.5zm-15.6-5.2c.3 0 .4.1.4.7 0 1 0 1.6-.4 1.6-.3 0-.3-.5-.3-1.3 0-.4 0-.7-.1-.6 0-.3.1-.4.4-.4z"/>
+      </g>
+      <use width="30" height="18" transform="matrix(.9 0 0 .9 11.6 13.7)" xlink:href="#b"/>
+      <use width="30" height="18" transform="matrix(.67 0 0 .75 39.2 27.5)" xlink:href="#b"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jm.svg
new file mode 100644
index 0000000..535daf4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jm.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jm" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path d="M0 0l320 240L0 480zm640 0L320 240l320 240z"/>
+    <path fill="#090" d="M0 0l320 240L640 0zm0 480l320-240 320 240z"/>
+    <path fill="#fc0" d="M640 0h-59.6L0 435.3V480h59.6L640 44.7z"/>
+    <path fill="#fc0" d="M0 0v44.7L580.4 480H640v-44.7L59.6 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jo.svg
new file mode 100644
index 0000000..3a17678
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jo.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jo" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="jo-a">
+      <path fill-opacity=".7" d="M-117.8 0h682.6v512h-682.6z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#jo-a)" transform="translate(110.5) scale(.9375)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M-117.8 0h1024v170.7h-1024z"/>
+      <path fill="#fff" d="M-117.8 170.7h1024v170.6h-1024z"/>
+      <path fill="#090" d="M-117.8 341.3h1024V512h-1024z"/>
+      <path fill="red" d="M-117.8 512l512-256-512-256v512z"/>
+      <path fill="#fff" d="M24.5 289l5.7-24.9H4.7l23-11-15.9-19.9 23 11 5.6-24.8 5.7 24.9L69 233.2l-16 19.9 23 11H50.6l5.7 24.9-15.9-20z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jp.svg
new file mode 100644
index 0000000..d415816
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/jp.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-jp" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="jp-a">
+      <path fill-opacity=".7" d="M-88 32h640v480H-88z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#jp-a)" transform="translate(88 -32)">
+    <path fill="#fff" d="M-128 32h720v480h-720z"/>
+    <circle cx="523.1" cy="344.1" r="194.9" fill="#d30000" transform="translate(-168.4 8.6) scale(.76554)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ke.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ke.svg
new file mode 100644
index 0000000..c1fd2d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ke.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ke" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" stroke-miterlimit="10" d="M-28.6 47.5l1.8 1 46.7-81c2.7-.6 4.2-3.2 5.7-5.8 1-1.8 5-8.7 6.7-17.7a58 58 0 00-11.9 14.7c-1.5 2.6-3 5.2-2.3 7.9z"/>
+  </defs>
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path d="M0 0h640v144H0z"/>
+  <path fill="#060" d="M0 336h640v144H0z"/>
+  <g id="b" transform="matrix(3 0 0 3 320 240)">
+    <use width="100%" height="100%" stroke="#000" xlink:href="#a"/>
+    <use width="100%" height="100%" fill="#fff" xlink:href="#a"/>
+  </g>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640 0)" xlink:href="#b"/>
+  <path fill="#b00" d="M640.5 168H377c-9-24-39-72-57-72s-48 48-57 72H-.2v144H263c9 24 39 72 57 72s48-48 57-72h263.5V168z"/>
+  <path id="c" d="M377 312c9-24 15-48 15-72s-6-48-15-72c-9 24-15 48-15 72s6 48 15 72"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640 0)" xlink:href="#c"/>
+  <g fill="#fff" transform="matrix(3 0 0 3 320 240)">
+    <ellipse rx="4" ry="6"/>
+    <path id="d" d="M1 5.8s4 8 4 21-4 21-4 21z"/>
+    <use width="100%" height="100%" transform="scale(-1)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="scale(1 -1)" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kg.svg
new file mode 100644
index 0000000..936767b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kg.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kg" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kg-a">
+      <path fill-opacity=".7" d="M-85 0h682.7v512H-85z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#kg-a)" transform="translate(79.6) scale(.9375)">
+    <path fill="#be0027" d="M-128 0h768.8v512H-128z"/>
+    <path fill="#ff0" d="M105.5 261.1c13.6-16.6 41.9-.4 65-12.3-27.4 1.5-42.3-13.2-63.9-11.1 22.4-13.8 41.5 4.5 66.5-2.8-33.1-2.8-31.7-17.7-61.9-19.8 26.8-11.4 40 11.8 66.3 6.5-31-7.1-35-25.3-58-29.2 33.6-5 31.4 14.8 64.3 17.2-33.4-14.3-24.7-26.8-52.6-37.7 31.3-.7 29.2 21 61 26.6-27.2-17.2-23.9-32.9-46.2-45.2 26.5.5 29 27.6 56.1 36-24.1-19.1-17.8-35.3-38.6-52.4 26.4 6.2 22.5 29.6 50 44.6-20.4-22.6-12.6-38.8-30.3-57.3 25.4 8.1 15.7 30.4 42 51.6-15-24.9-5.7-40.8-20.6-61.7 23.6 12.1 12.2 34.9 34 57.5-10.3-25.5 0-41.3-10.5-63.9 20.2 15 8.2 39.3 24.5 62.5-6-32 7.8-37.2 3.5-65.2 15.3 18.8-1.8 37.6 10 65.3-1.5-31.5 15.3-38.8 12.4-64 15.1 22.6-8.5 42.3 1.4 66.5 2.5-29.8 22.1-37.6 22.4-60.8 12 21.3-14 36.7-9.8 65 8.5-31.2 29.4-35 32-56 7.1 24.6-21.4 36-19.7 63.4 8.5-27.7 34.6-31 40-51.4 3.3 26-22.4 30.7-29.7 59.5 13.5-23.5 37.2-25.4 47.8-44-.8 25.8-29.8 29.2-38.7 53.3 16.7-20.5 37.7-17 54.4-35.1-1.8 23.3-31.3 22-47 46.1 18.1-16.7 45.4-11.7 59.3-26.1-.7 20.6-36.9 19-54 37.5 21-11.6 47.8-4.8 63.2-15.5-2.8 18-41 13.8-59.3 28 25.2-7 44.7 3.7 65-4-9.9 17.5-44.6 6.4-63 17.8 22-3.7 45.2 9.6 65.1 5.3-6.5 15.2-44.6-1-65 8.5 24.4-.2 40.3 15.5 63 14.4-12.3 13.8-45.7-5.1-65.2-1.9 23.8 5 42 24.6 60 25.6-14.9 11.3-42.5-14.5-65-11.3 23.2 6.2 42.6 32.5 55.8 33.1-14.3 9.8-42.5-22.5-61.8-21.3 23.5 10.6 34.2 37.5 49.7 41.3-19.1 6.1-37.9-29.2-58.4-30.5 23.8 15 25.1 38 43.4 48.2-19.3 4.7-33-35.2-53.3-38.6 19.5 14.3 22.5 45 35.4 54.6-19.6 1-26.7-40.7-46.8-46.7 17.2 14.4 13.1 45.6 26.5 59-20.4-4.3-17.8-40.6-39.1-52.9 15.3 19.4 7.5 46.9 17.5 62.4-19.9-8-11.3-40.6-30.2-59 10.3 20.6-.8 44.6 7.4 64.5-18.2-8.9-6-47.4-19.9-62.7 6.4 23.8-5.4 43.5-.6 64.8-18.6-21.5 2.8-43.2-13.3-65.1 4.2 25.1-13.4 42.7-10.6 63.7-14.7-17.2 8-44.7-3.5-66.4 2.4 24.7-20.3 46.4-18.7 62-12-20 13.3-43.6 6.5-66.3-1.4 23.6-24.4 36.4-28.7 57.9-7.7-23.7 19.6-40.8 17.2-64.1-7.8 22.1-30 31-37.8 52.5-6.4-23.7 26-36.2 26.8-61-10 23.2-36.5 28.4-45.3 46.2-3.3-23.5 33.8-34 35.2-56.3-12 21.4-41 22.3-51 39.3-1.5-23.4 37.6-26.3 43.7-50.8-11.9 18.2-43.7 15.9-57 30.7 2.1-21.7 44.4-23 51.2-42.6-15.8 15.2-45 9-61.5 21 9.2-21.4 48.9-16.9 57.8-32.3-17.5 9.1-48.6.2-64 9.4 14-20.2 44.8-8.1 62.3-22-28.4 4.1-45.5-7.2-65.2-2z"/>
+    <path fill="#ff0" d="M356 256.1a99.2 99.2 0 11-198.5 0 99.2 99.2 0 01198.4 0z"/>
+    <path fill="#be0027" d="M343.2 256.3a86.3 86.3 0 11-172.6 0 86.3 86.3 0 01172.6 0z"/>
+    <path fill="#ff0" d="M331.2 256.5a74 74 0 11-148.2 0 74 74 0 01148.2 0z"/>
+    <path fill="#be0027" d="M194 208c20.5-.5 46 1.4 62.9 14.8a97.1 97.1 0 0160.5-14.3l11 20.1a101 101 0 00-50 8.2 85.3 85.3 0 0134.6 72.1c-2.7 3.4-7 7.1-9.7 10.5 4-28.5-11-60.3-32.9-77 17.8 25.6 28.3 48.6 25.4 80.4l-10 6.4c4.6-28-2-61-22.7-80 12 17.5 23.8 49 16.4 81-3.2 1-8.2 3.7-11.4 4.6a96 96 0 00-10.8-78.7c-13.8 19.8-18.3 50-10.5 78-3.8-1-6.7-2.2-10.6-3.1-5.7-30 2.2-64 15.9-81.7-14 8.1-27.1 42.7-23.4 78l-9.3-4.3c-4.5-26.3 7.4-60.6 24.5-80.4-19.4 12.2-35.2 42.3-32.5 74.6-3-2.6-5.7-3.9-8.7-6.6-3.4-28.2 13-56.6 32.1-73.6-16.1-7.3-30-8.7-50-8.4 3.1-6.5 6-14.1 9.2-20.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kh.svg
new file mode 100644
index 0000000..7cd890a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kh.svg
@@ -0,0 +1,61 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-kh" viewBox="0 0 640 480">
+  <path fill="#032ea1" d="M0 0h640v480H0z"/>
+  <path fill="#e00025" d="M0 120h640v240H0z"/>
+  <g fill="#fff" stroke="#000" transform="matrix(1.2 0 0 1.2 85.6 -522)">
+    <g stroke-linejoin="bevel">
+      <path d="M139 623.5h113.8v43.8H139z"/>
+      <path d="M247 647.6h3.5v16.5H247zm-108-8.1h113.8v5H139zm0-7h113.8v4.6H139z"/>
+      <path stroke-width=".9" d="M139 625.7h113.8v4.3H139z"/>
+      <path d="M169 647.6h3.6v16.5H169zm49 0h3.6v16.5H218zm-78 0h3.5v16.5H140zm7 0h3.5v16.5H147zm7.5 0h3.5v16.5h-3.5zm7.5 0h3.5v16.5H162zm62.8 0h3.6v16.5h-3.6zm7.5 0h3.6v16.5h-3.6zm7.5 0h3.6v16.5h-3.6z"/>
+      <path stroke-linejoin="miter" d="M94.5 669.5a9.3 9.3 0 004.4-5.3H292a9.3 9.3 0 004.4 5.3z"/>
+    </g>
+    <path d="M193 556.8s-.1-4.1 2.3-4.2c2.3 0 2.2 4.2 2.2 4.2zm-12.5 54.5v-5.5c0-2.8-2.8-3-2.8-5 0 0-.4-3 .4-4.4 1.1 4 3 3.3 3 1.6 0-1.4-1-2.8-3.3-6.3-.8-1.1-.3-4.6.7-5.9.4 3 .9 4.5 2.2 4.5.8 0 1.4-.5 1.4-2 0-2-1.3-3-2-4.8a5 5 0 011.1-5.3c.5 3 .4 4.2 1.7 4.2 2.7-.9 0-4.8-.6-5.8-.6-1.1 1-3.4 1-3.4.8 2.7 1 2.9 2 2.6 1.2-.3 1-2-.4-3.4-.9-1-.8-2.3.2-3.3 1 1.9 2.2 1.8 2.3.6l-.8-4.4H204l-.9 4.3c-.2 1.2 1.4 1.5 2.4-.5 1 1 1.1 2.4.2 3.3-1.4 1.4-1.6 3.1-.4 3.4 1 .3 1.2 0 2-2.6 0 0 1.5 1.5 1 3.4-.6 1-3.3 5-.6 5.8 1.3 0 1.2-1.2 1.7-4.2a5 5 0 011 5.3c-.6 1.8-2 2.8-2 4.8 0 1.5.7 2 1.5 2 1.3 0 1.8-1.4 2.2-4.5 1 1.3 1.5 4.8.7 6-2.3 3.4-3.4 4.8-3.4 6.2 0 1.7 2 2.4 3-1.6.9 1.4.5 4.4.5 4.4 0 2-2.7 2.2-2.8 5v5.5zm7.2-46l-.4-3.1h15.9l-.4 3.1zm1-3.2l-.2-2.5H202l-.3 2.5zm2.3-2.6l-.3-2.6h9l-.1 2.6zm33 110c-2-.7-5-2.9-5-5v-24.3l2.6-3.4H169l2.5 3.4v24.3c0 2.1-2 4.3-4 5z"/>
+    <path stroke-linejoin="bevel" d="M178.2 647.6h3.6v16.5h-3.6zm30.4 0h3.6v16.5h-3.6z"/>
+    <path d="M168 609.2v27.6h54v-27.6a4.2 4.2 0 00-2.6 2.8v11.8h-48.7V612s-.6-2-2.8-2.8z"/>
+    <path d="M214.6 669.5c-1.8-.7-5.6-2.9-5.6-5v-27.2c.4-1.5 2.4-2.4 3.7-3.4H177c1.7 1 3.6 1.7 4.3 3.4v27.2c0 2.1-3 4.3-4.8 5z"/>
+    <path d="M219.4 634.2v-19.6h-4.9v-1.9h-38.8v2h-5v19.5zM207 669.5c-1.8-.7-4.3-2.9-4.3-5v-23.2l1.4-2.1h-17.7l1.5 2v23.3c0 2.1-2.6 4.3-4.3 5z"/>
+    <path d="M190.7 639.2h9v30.3h-9z"/>
+    <path stroke-linejoin="bevel" d="M204.4 632.5c0-2 5.8-2.1 8.8-3.8h-36c3 1.7 8.7 1.8 8.7 3.8l1.2 3.9 15 .6z"/>
+    <path d="M211.4 611.3c0-4.9.2-6.7 1.7-6.7V620c-3.7 1.4-6.3 6-6.3 6h-23.2s-2.6-4.6-6.3-6v-15.5c1.8 0 1.8 2 1.8 6.7zm1.7-2c0-5.6 4.9-6.2 4.9-6.2v5c-1.9-.1-2.8 1.6-2.8 4 0 2.5 1.5 2.5 1.5 2.5v14.2h-3.6z"/>
+    <path d="M177.3 609.3c0-5.6-4.9-6.2-4.9-6.2v5c1.9-.1 2.8 1.6 2.8 4 0 2.5-1.5 2.5-1.5 2.5v14.2h3.6z"/>
+    <g fill="none" stroke-width=".8">
+      <path d="M186.8 570.6H204m-19.2 5.4h21m-23 6.5h24.9m-27 7.9h29.5m-30.2 9h30.4"/>
+      <path stroke-width="1" d="M170.8 629h48.6m-33.2 0h18v6.6h-18z"/>
+    </g>
+    <path d="M184 614.2c3 3.6 2.6 9.7 2.6 13.3H204c0-3.6-.4-9.7 2.6-13.3zm9.7-41l-2.4-1.3v-3.5c1 .3 2 .4 2.2 2 .3-2.3 1-2.1 1.9-3 1 .9 1.5.7 1.9 3 0-1.6 1.2-1.7 2.1-2v3.5l-2.3 1.2z"/>
+    <path d="M193.5 578.9l-4-2.8V573c1.5.3 3 .5 3.2 2.2.4-2.5 1.3-3.7 2.7-4.7 1.3 1 2.2 2.2 2.7 4.7.1-1.7 1.7-1.9 3-2.2v3.2l-3.9 2.7z"/>
+    <path d="M193.2 587.8l-4.5-4v-4.7c1.6.4 3.4.6 3.6 3.1.5-3.5 1.5-5.4 3-6.8 1.6 1.4 2.6 3.3 3.2 6.8.2-2.5 2-2.7 3.6-3.1v4.7l-4.6 4zm8.4 5.3l-4 5.7h-4.7l-4.1-5.7zm-15.2 9.5c2 1.1 2.8 3.4 3 7.6H201c.2-4.2 1-6.5 3-7.6z"/>
+    <path stroke-linejoin="bevel" d="M204.2 593v-5.6a5.2 5.2 0 00-3.8 3.3c0-2-2.5-6.3-5.2-8.5-2.7 2.4-5.3 6.4-5.2 8.4-.5-1.5-1.8-2.7-3.8-3.2v5.7z"/>
+    <path stroke-linejoin="bevel" d="M205 602.6V597c-2.1.6-3.5 1.7-4.1 3.3 0-2-2.7-6.3-5.7-8.5-3 2.5-5.8 6.4-5.7 8.5-.5-1.5-2-2.7-4.1-3.3v5.7z"/>
+    <path stroke-linejoin="bevel" d="M207.4 614.3v-6.6a9.6 9.6 0 00-5.1 3.8c0-3.5-4-9-7.1-10.7-3.2 1.8-7.1 7.4-7.1 10.7a9.7 9.7 0 00-5.2-3.8v6.6z"/>
+    <path stroke-linejoin="bevel" d="M206 629v-6.8c-2.4.9-3 3.1-3.8 4.7.3-6.9-3.8-14.2-7-16.1-3.2 1.9-7.4 9.4-7 16-.8-1.4-1.5-3.7-3.8-4.6v6.7z"/>
+    <path d="M204.4 639.2v-6.8c-2.5.6-2.6 1.5-3.4 3 .3-4.1-2.6-8.8-5.8-10.6-3.2 1.8-6 6.5-5.8 10.6-.8-1.5-.9-2.4-3.4-3v6.8z"/>
+    <g id="a">
+      <path d="M99 664.2v-20.4c-.7-2.6-3-5-4.6-5.4v-18l3.7 2 4.3 18.9v23z"/>
+      <path d="M99 664.3v-20.5c-.7-2.6-3-5-4.6-5.4v-19.2c2.5 0 3.7 3.2 3.7 3.2l4.3 18.9v22.9z"/>
+      <path d="M96.3 669.5c1.7-.7 4.2-2.9 4.2-5v-25.6l-1.2-2H143l-1.7 2v25.6a6 6 0 003.4 5z"/>
+      <path d="M135.8 669.5c-1.7-.7-4.2-2.9-4.2-5v-24.3l3.6-3.4h-29.6l3.6 3.4v24.3c0 2.1-2.5 4.3-4.2 5z"/>
+      <path d="M131.7 669.5c-1.7-.7-4.3-2.9-4.3-5v-22l2.4-3.3H111l2.4 3.3v22c0 2.1-2.5 4.3-4.3 5z"/>
+      <path d="M116 639.2h8.9v30.4h-9z"/>
+      <path stroke-linejoin="bevel" d="M103.7 647.6h3.6v16.5h-3.6zm30.8 0h3.5v16.5h-3.6zm-33.9-27.8h4.4v17h-4.4zm0-3.2h4.3v3.2h-4.3zm35.6 6.9h6.1v13h-6.1z"/>
+      <path d="M104.9 636.6v-29c1.2 0 1.4 4.3 4.2 4.3 1.5 0 1.4-1.8.5-3.2-.7-1.3-1.6-3-.4-6.3.9 2.5 3.1 3.3 2.7 1.8-.7-2.7-2.8-3.2-1.2-7.3.5 3.4 2.7 3.3 2.2 1.3-.6-2.3-1.9-3.3-.3-6.5.9 3.7 2 3.5 2 1.2 0-3.4 0-7 4.2-8.3 0 0 .3-3 1.9-3 1.5 0 1.8 3 1.8 3 4.3 1.3 4.2 5 4.2 8.3 0 2.3 1.1 2.5 2-1.2 1.6 3.2.3 4.2-.3 6.5-.5 2 1.7 2.1 2.2-1.3 1.6 4.1-.5 4.6-1.2 7.3-.4 1.5 1.8.7 2.7-1.8 1.2 3.3.3 5-.4 6.3-.8 1.4-1 3.2.5 3.2 2.8 0 3-4.2 4.2-4.2v28.9zM98 614.7v22.1h2.5v-22.1c-.9-.5-1.7-.5-2.5 0z"/>
+      <path d="M98.2 629c3.1 1.6 6.2 3.5 7 7.8h-7zm43.2-6.6v14.4h2v-14.4c-.6-.3-1.5-.4-2 0z"/>
+      <path d="M143.4 629c-3.1 1.5-6.2 3.3-7 7.7h7zm-20.6-33.7l1.8-1.5v-2c-.6 0-1 .3-1.5 1a5 5 0 00-2.5-3 5 5 0 00-2.6 2.9c-.5-.7-.8-.8-1.5-1v2l1.8 1.6z"/>
+      <path d="M123.8 600.2l.8-1.9v-2.5c-.6 0-1 .3-1.5 1a5 5 0 00-2.5-3 5 5 0 00-2.6 2.9c-.5-.7-.8-.8-1.5-.9v2.5l.8 1.9z"/>
+      <path d="M124 606.8l2.6-3.3v-3.2c-1 0-1.5.5-2.2 1.6-.7-2.3-2-2.7-3.8-3.8-1.9 1-3.2 1.5-3.8 3.7-.8-1.1-1.3-1.4-2.3-1.5v3.2l2.7 3.3z"/>
+      <path d="M124.7 613.3s3.2-2.7 3.3-4.2v-3.5c-1.2.1-2.3.4-3.2 1.9-.8-2.9-2-3.7-4.2-5-2.3 1.3-3.5 2.1-4.2 5-1-1.5-2-1.8-3.3-2v3.6a15 15 0 003.3 4.2z"/>
+      <path d="M126 625.3s4.4-4.7 4.5-6.6v-5.4c-1.6.2-3.2 1.3-4.4 3.6-1-4.5-2.6-7.6-5.5-9.8-3 2.2-4.6 5.3-5.6 9.8-1.2-2.3-2.7-3.4-4.3-3.6v5.4c.3 1.9 4.4 6.6 4.4 6.6z"/>
+      <path d="M126 632.4s3.7-3.7 4.5-5.3v-5.4c-1.6.2-3.2 1.3-4.4 3.5a14 14 0 00-5.5-9.2c-3 2.2-4.6 4.7-5.6 9.2-1.2-2.2-2.7-3.3-4.3-3.5v5.4c1 1.6 4.4 5.3 4.4 5.3z"/>
+      <path d="M127.5 636.6c-1-4.7-2-8.2-7.1-11.7-5.2 3.5-6.1 7-7.2 11.7z"/>
+      <path d="M130.2 639.2v-6.8c-2.4 1-4.5 2.3-5.3 3.8-.8-3.8-2.5-5.4-4.6-7.7-2.1 2.3-3.5 4-4.4 7.7-.8-1.5-2.9-2.9-5.2-3.8v6.8z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 390.7 0)" xlink:href="#a"/>
+    <path d="M72.7 694.3H318v12.5H72.7zm-6.5 12.5h258.3v12.5H66.2zm19.4-31.3H305v8.1H85.6z"/>
+    <path d="M79.2 683.6h232.4v10.6H79.2zm10.2-14.3h212v6.2h-212z"/>
+    <path d="M112.4 669.3h16v50h-16z"/>
+    <path d="M116 669.3h8.9v50h-9zm71 0h16v50h-16z"/>
+    <path d="M190.7 669.3h9v50h-9zm71.5 0h16v50h-16z"/>
+    <path d="M265.7 669.3h9v50h-9z"/>
+    <path fill="none" d="M99 664.2h193M115.8 713h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m65.8 37.5h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m-8.6-6.3h8.6m-8.6-6.2h8.6m66.2 37.5h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2m-9.2-6.3h9.2m-9.2-6.2h9.2"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ki.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ki.svg
new file mode 100644
index 0000000..604890c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ki.svg
@@ -0,0 +1,36 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ki" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ki-a">
+      <path fill-opacity=".7" d="M-86.3 0h682.6v512H-86.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#ki-a)" transform="translate(81) scale(.9375)">
+    <path fill="#e73e2d" fill-rule="evenodd" d="M-164.3 0h835.8v306.5h-835.8z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M204.3 282.1c-19.4-15.2-55.6-10-61.6-51.3 27.7 21.5 22.7-1.2 64 19.3l-2.4 32z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M209.5 263.4c-13.9-20.4-50-26.6-43-67.7 19.9 28.9 22 5.7 55.2 37.9l-12.2 29.8z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M215.8 250c-5-24.1-36-43.6-13.8-79 7.2 34.4 18 13.8 36.4 56.2L215.8 250z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M230.3 237.6c2.7-24.5-20.8-52.6 11.1-79.4-3.6 34.9 13 18.7 17.5 64.6l-28.6 14.8z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M243.3 227.7c12.4-21.3 2.5-56.5 42.6-67.9-17.6 30.3 4.2 22.3-10.5 66l-32.1 1.9z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M262 230.3c18.6-16.2 20.4-52.8 62-50.9-26.3 23.2-3 22.5-31 59.4l-31-8.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M278.6 239.9c22.5-10.1 34.9-44.5 74.1-30.5-32 14.5-9.5 20.7-47 47.7l-27.1-17.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M292.5 255c24.4-3.4 46-33 79.7-8.4-34.7 4.9-15 17.1-58.5 32.5l-21.2-24.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M379.5 259.6l-112.1 2.5 4.7 30.2 107.4-32.7z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M363 218.4l-103.8 39.9 17.3 33.3 86.5-73.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M280.6 280.7l53.7-97.6-82.4 76.7 28.7 20.9z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M279.5 272.6l17.2-109.4-53.8 97.2 36.6 12.2z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M273 263.7l-18-110.2-20 110.7 38-.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M263.7 254.3l-52.3-92 20 111.8 32.3-19.8z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M255.6 253.6l-81.1-68.5 57.6 98 23.5-29.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M146 218.9l87 71.9 13.4-37.6L146 218.9z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M232.1 260.9l-102.3-1.5 101.9 34 .4-32.5z"/>
+    <path fill="#fec74a" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M315.1 279.2a61.4 61.4 0 11-122.7 0 61.4 61.4 0 01122.7 0z"/>
+    <path fill="#005989" fill-rule="evenodd" d="M-165.1 303.4h839.9V512h-840z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M-165.6 454c15.6 7.2 38 25.3 62 25.3 40-.3 41-27.4 81.6-26.1 40.7 1 33.3 29.6 88.2 29.5 45.4-.2 60-34.7 99.2-30.6 29-1.5 40.8 32.7 85.3 33.2 46.2 1 63.1-37.3 92-34.1 31 0 41 30.8 84.3 31 55.2.3 64.9-32 99.3-30 24.6-.5 44 23.7 80 24.3 28.6.5 52.7-21.2 69-29l.7-36.8c-17 6.3-42.4 27.1-67.7 27.3-36.6 1.4-59.1-24-84.5-23.7-30.4.3-42.5 31.3-94 31.3-47.2 0-58-31.3-88.4-31.3-29.7.2-38.8 34-90.3 33.4-42-.5-58.3-32.3-88-32-31.5 0-64 30.9-99 29.4-48-2-58.5-29.4-90-29.4-23.5 0-49 25.6-77.3 26-28.2.5-59.9-25.5-62.8-26l.4 38.3zm0-73c15.6 7.3 38 25.4 62 25.4 40-.3 41-27.4 81.6-26.2 40.7 1 33.3 29.7 88.2 29.5 45.4 0 60-34.6 99.2-30.5 29-1.5 40.8 32.7 85.3 33.1 46.2 1 63.1-37.2 92-34 31 0 41 30.8 84.3 31 55.2.3 64.9-32 99.3-30 24.6-.5 44 23.7 80 24.3 28.6.5 52.7-21.2 69-29l.7-36.8c-17 6.3-42.4 27-67.7 27.3-36.6 1.3-59.1-24-84.5-23.7-30.4.3-42.5 31.3-94 31.3-47.2 0-58-31.3-88.4-31.3-29.7.2-38.8 34-90.3 33.4-42-.5-58.3-32.3-88-32-31.5 0-64 30.8-99 29.3-48-2-58.5-29.4-90-29.4-23.5 0-49 25.7-77.3 26.1-28.2.4-59.9-25.5-62.8-26l.4 38.3z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M-165.6 309c15.6 7.2 38 25.2 61.9 25.2 40-.2 41-27.4 81.6-26.1 40.6 1 33.2 29.6 88.1 29.5 45.3-.1 60-34.7 99-30.5 29-1.5 40.8 32.7 85.3 33.1 46.1 1 63-37.3 92-34.1 30.8 0 41 30.8 84.2 31 55 .3 64.7-32 99.2-30 24.5-.5 43.9 23.7 79.8 24.3 28.7.5 52.7-21.2 69-29l.7-36.8c-17 6.4-42.3 27.1-67.7 27.3-36.4 1.4-59-23.9-84.4-23.7-30.3.3-42.4 31.3-94 31.3-47 0-57.8-31.3-88.2-31.3-29.7.3-38.8 34-90.1 33.4-42-.5-58.3-32.2-88-32-31.5 0-64 30.9-98.8 29.4-48.1-2-58.5-29.4-90-29.4-23.5 0-48.9 25.6-77.2 26-28.2.5-59.8-25.4-62.8-26l.4 38.3z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.8" d="M136.8 76c61-4.2 50-9.4 74.5-13.4 31 4.3 34.5 23 51.8 34.5 0 0-6.5 22-27.7 18.9-2.9-8.8 10.2-11.6-27.5-34.6-22-1.3-61.3 3.9-71-5.4zm189.3 33.9l-44 1.8v10.9c29.7 1 35-3 44-12.7z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-linejoin="round" stroke-width="1.7" d="M174.8 108c7.7-3.9 11.5-2.3 18.2-2.5 4.5 8.3 8.8 9 18.8 10a49.5 49.5 0 0039.9 21.8c29.9-.8 39.4-21.7 59.5-24h21.2c-3.5-6-6.3-9.5-14-9.9-15.8-.8-36.2-.4-54 3.6l-25.1 6.3c-7.4-3.6-25.3-22.4-36.8-22-6.7 1.8-6.7 4.1-10 6.7-6.5 2.8-13 1.4-17.7 10z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.7" d="M205.1 99a3.2 3.2 0 11-6.3 0 3.2 3.2 0 016.3 0z"/>
+    <path fill="#ffc84b" fill-rule="evenodd" stroke="#d8aa3f" stroke-width="1.8" d="M225.6 107.8c44.9-54.1 84.1-47.5 135.3-51.2 1.7 6.3 1 15.7-23.3 24-33.4 5-93.1 40.2-93.4 40.2-11.1-.6-18.9-12.2-18.6-13z"/>
+    <path fill="none" stroke="#d9a43e" stroke-linecap="round" stroke-width="1.8" d="M317.9 72.5L351 74m-36.7 4l24.1 2"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/km.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/km.svg
new file mode 100644
index 0000000..a6ccb8d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/km.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-km" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="km-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#km-a)" transform="scale(.9375)">
+    <path fill="#ff0" d="M0 0h768.8v128H0z"/>
+    <path fill="#fff" d="M0 128h768.8v128H0z"/>
+    <path fill="#be0027" d="M0 256h768.8v128H0z"/>
+    <path fill="#3b5aa3" d="M0 384h768.8v128H0z"/>
+    <path fill="#239e46" d="M0 0v512l381.9-255.3L0 0z"/>
+    <path fill="#fff" d="M157.2 141.4c-85-4.3-123.9 63.5-123.8 115.9-.2 62 58.6 113 112.8 110C117 353.5 81.2 314.6 81 257c-.3-52.1 29.5-97.5 76.3-115.6z"/>
+    <path fill="#fff" d="M156 197l-12-9.3-14.6 4.6 5.2-14.4-8.8-12.4 15.2.6 9-12.3 4.3 14.7 14.4 4.8-12.6 8.5zm-.3 52.1l-12-9.4-14.6 4.6 5.3-14.3-8.9-12.4 15.3.5 9-12.2 4.2 14.6 14.5 4.9-12.7 8.5zm.2 52.6l-12-9.4-14.5 4.6 5.2-14.3-8.8-12.4 15.2.5 9-12.2 4.3 14.6 14.4 4.8-12.6 8.6zm-.2 53l-12-9.3L129 350l5.3-14.4-8.9-12.4 15.3.6 9-12.3 4.2 14.7 14.5 4.8-12.7 8.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kn.svg
new file mode 100644
index 0000000..d13066b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kn.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kn" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kn-a">
+      <path fill-opacity=".7" d="M-80.1 0h682.7v512H-80.1z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#kn-a)" transform="translate(75.1) scale(.9375)">
+    <path fill="#ffe900" d="M-107.8.2h737.6v511.3h-737.6z"/>
+    <path fill="#35a100" d="M-108.2.2l.8 368.6L466.6 0l-574.8.2z"/>
+    <path fill="#c70000" d="M630.7 511.5l-1.4-383.2-579 383.5 580.4-.3z"/>
+    <path d="M-107.9 396.6l.5 115.4 125.3-.2 611.7-410.1L629 1.4 505.2.2l-613 396.4z"/>
+    <path fill="#fff" d="M380.4 156.6l-9.8-42.2 33.3 27 38-24.6-17.4 41.3 33.4 27-44.2-1.5-17.3 41.3-9.9-42.2-44.1-1.5zm-275.2 179l-9.9-42.3 33.3 27 38-24.6-17.4 41.3 33.4 27-44.1-1.5-17.4 41.3-9.8-42.2-44.1-1.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ko.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ko.svg
new file mode 100644
index 0000000..39508cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ko.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kr" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kr-a">
+      <path fill-opacity=".7" d="M-95.8-.4h682.7v512H-95.8z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#kr-a)" transform="translate(89.8 .4) scale(.9375)">
+    <path fill="#fff" d="M610.6 511.6h-730.2V-.4h730.2z"/>
+    <path fill="#fff" d="M251.9 256a112.5 112.5 0 11-225 0 112.5 112.5 0 01225 0z"/>
+    <path fill="#c70000" d="M393 262.6c0 81-65 146.8-145.3 146.8s-145.2-65.8-145.2-146.8 65-146.9 145.3-146.9S393 181.6 393 262.6z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm27.4 23.7l83.6-96.7 19.9 17-83.7 96.9z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm55.4 48l83.6-96.9 19.9 17.2-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm508.8-96.8l83 97.4-20 17-83-97.4zm-55.7 47.5l83 97.4-20 17-83-97.4z"/>
+    <path fill="#fff" d="M417.6 133.2L496 65.4l14.7 17-84 75.4-9.3-24.6z"/>
+    <path d="M514.2 372l-80.4 95.8-19.7-16.4 80.4-95.8zM431.8 53.1l83 97.4-19.9 17L412 70zm109.7 341.6L461 490.5l-19.8-16.4 80.5-95.8zm-55.1-45.8L406 444.7l-19.7-16.4 80.4-95.8z"/>
+    <path fill="#3d5897" d="M104.6 236.7c4.6 37 11.3 78.2 68.2 82.4 21.3 1.3 62.8-5 77-63.2 18.8-55.8 75-71.8 113.3-41.6C385 228.5 391 251 392.4 268c-1.7 54-32.9 101-72.8 122-46 27.3-109.6 27.9-165.3-13.5-25.1-23.5-60.2-67-49.7-139.8z"/>
+    <path fill="#fff" d="M436 370.6l78.6 67.6-14.6 17-87.1-71.8 23-12.8z"/>
+    <path d="M-1.9 357.2l83 97.3-20 17-83-97.3z"/>
+    <path fill="#fff" d="M-16.2 437.3l78.6-67.9 14.7 17-84 75.5-9.3-24.7z"/>
+    <path d="M25.7 333.7l83 97.3-20 17-83-97.3zM-30 381.2l83 97.3-20 17-83-97.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kp.svg
new file mode 100644
index 0000000..06b4e38
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kp.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kp" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kp-a">
+      <path fill-opacity=".7" d="M5 .1h682.6V512H5.1z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#kp-a)" transform="translate(-4.8 -.1) scale(.93768)">
+    <path fill="#fff" stroke="#000" d="M776 511.5H-76V.5h852z"/>
+    <path fill="#3e5698" d="M776 419H-76v92.5h852z"/>
+    <path fill="#c60000" d="M776 397.6H-76V114.4h852z"/>
+    <path fill="#3e5698" d="M776 .6H-76V93h852z"/>
+    <path fill="#fff" d="M328.5 256c0 63.5-53 115-118.6 115S91.3 319.5 91.3 256s53-114.8 118.6-114.8c65.5 0 118.6 51.4 118.6 114.9z"/>
+    <path fill="#c40000" d="M175.8 270.6l-57-40.7 71-.2 22.7-66.4 21.1 66.1 71-.4-57.9 41.2 21.3 66.1-57-40.7-58 41.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kr.svg
new file mode 100644
index 0000000..39508cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kr.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kr" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kr-a">
+      <path fill-opacity=".7" d="M-95.8-.4h682.7v512H-95.8z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#kr-a)" transform="translate(89.8 .4) scale(.9375)">
+    <path fill="#fff" d="M610.6 511.6h-730.2V-.4h730.2z"/>
+    <path fill="#fff" d="M251.9 256a112.5 112.5 0 11-225 0 112.5 112.5 0 01225 0z"/>
+    <path fill="#c70000" d="M393 262.6c0 81-65 146.8-145.3 146.8s-145.2-65.8-145.2-146.8 65-146.9 145.3-146.9S393 181.6 393 262.6z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm27.4 23.7l83.6-96.7 19.9 17-83.7 96.9z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm55.4 48l83.6-96.9 19.9 17.2-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8z"/>
+    <path d="M-49.4 126.4l83.6-96.7 19.9 17.1-83.7 96.8zm508.8-96.8l83 97.4-20 17-83-97.4zm-55.7 47.5l83 97.4-20 17-83-97.4z"/>
+    <path fill="#fff" d="M417.6 133.2L496 65.4l14.7 17-84 75.4-9.3-24.6z"/>
+    <path d="M514.2 372l-80.4 95.8-19.7-16.4 80.4-95.8zM431.8 53.1l83 97.4-19.9 17L412 70zm109.7 341.6L461 490.5l-19.8-16.4 80.5-95.8zm-55.1-45.8L406 444.7l-19.7-16.4 80.4-95.8z"/>
+    <path fill="#3d5897" d="M104.6 236.7c4.6 37 11.3 78.2 68.2 82.4 21.3 1.3 62.8-5 77-63.2 18.8-55.8 75-71.8 113.3-41.6C385 228.5 391 251 392.4 268c-1.7 54-32.9 101-72.8 122-46 27.3-109.6 27.9-165.3-13.5-25.1-23.5-60.2-67-49.7-139.8z"/>
+    <path fill="#fff" d="M436 370.6l78.6 67.6-14.6 17-87.1-71.8 23-12.8z"/>
+    <path d="M-1.9 357.2l83 97.3-20 17-83-97.3z"/>
+    <path fill="#fff" d="M-16.2 437.3l78.6-67.9 14.7 17-84 75.5-9.3-24.7z"/>
+    <path d="M25.7 333.7l83 97.3-20 17-83-97.3zM-30 381.2l83 97.3-20 17-83-97.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kw.svg
new file mode 100644
index 0000000..b4a4bf2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kw.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="kw-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#kw-a)" transform="scale(.9375)">
+    <path fill="#fff" d="M0 170.6h1024v170.7H0z"/>
+    <path fill="#f31830" d="M0 341.3h1024V512H0z"/>
+    <path fill="#00d941" d="M0 0h1024v170.7H0z"/>
+    <path d="M0 0v512l255.4-170.7.6-170.8L0 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ky.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ky.svg
new file mode 100644
index 0000000..1a2d9c9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ky.svg
@@ -0,0 +1,63 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ky" viewBox="0 0 640 480">
+  <path fill="#006" d="M0 0h640v480H0z"/>
+  <path fill="#006" fill-rule="evenodd" d="M0 0h400v200H0z"/>
+  <g stroke-width="1pt">
+    <path fill="#fff" d="M0 0v27l334.4 215.3h42.1v-27L42.1 0H0zm376.5 0v27L42.1 242.4H0v-27L334.4 0h42.1z"/>
+    <path fill="#fff" d="M156.9 0v242.3h62.7V0H157zM0 80.8v80.7h376.5V80.8H0z"/>
+    <path fill="#c00" d="M0 97v48.4h376.5V96.9H0zM169.4 0v242.3h37.7V0h-37.7zM0 242.3l125.5-80.8h28L28.2 242.3H0zM0 0l125.5 80.8h-28L0 18V0zm223 80.8L348.3 0h28.1L251 80.8h-28zm153.5 161.5L251 161.5h28l97.5 62.7v18.1z"/>
+  </g>
+  <path fill="#fff" fill-rule="evenodd" d="M448.3 179.1c-1 .6-3 2.5-5 1.9-2-.6-6.6-8.6-11.6-7.4-5 1.3-8.1 3.1-10.1 3.1s-7.6 1.8-7.6 6.7.5 8.6 1.5 8.6 2.5-3.1 2.5-3.1.5 6.1 4 6.1 11.2.6 11.7 2.5c.5 1.8-3.5 6-2.5 9.7 1 3.7 5.5 9.8 5.5 9.8s-6.5 4.8-6.5 8 1 6 1 6l-29.3 1.2s-2 86.7-1 93.4l3.5 23.2s-6.6-2.2-12.1 3.3c-5.6 5.5-25 15-25.5 19.2-.5 4.3-2.3 8-.3 11 2 3 9.2 11.4 7.1 11-6.8-1.1-9.3-10.8-13.9-14.3-4.5-3.5-13.3-2.8-14.4.9-1 3.7-.5 9.8 0 11 .5 1.2 6.1 20.7 7.6 25s17.4 10.7 24.5 10c13.4.4 19.4-5.7 20-5.1.4.6 28.7 29.8 86.8 29.9 45.2 0 79.2-29.3 79.2-28.7 0 .6 18.7 6.1 25.3 4.3 6.5-1.9 16.1-6.1 18.1-10.4 2-4.3 7.6-26.2 8.1-29.9s0-8-4.5-9.2-7-.9-9.6.3-3.3 4.6-7 10.7c-2.1 1.9-7.4 6.7-5.9 5.5s4.8-10.3 5.3-13.4c.5-3 2-8.5-1.5-11.6-3.5-3-9-4.3-15.1-8.8-6-4-10.6-10.7-14.2-10.7-3.5 0-7.5-1.8-7-1.8s4.5-9 3.5-18c-1-9.2.5-96.8 0-96.8s-25.2 1.9-25.2.6 2-9.7 0-15.2-10.7-9.2-8.1-10.4c2.5-1.2 13.6-4.3 13-9.1-.4-5-7.5-4.3-10.5-6.1-3-1.9-12.1-10.4-13.1-10.4s26.2-16.5 24.2-16.5-12.6-3-16.2-1.2c0-3 14.7-12.2 12.2-13.4-2.6-1.3-14.2-2.5-11.1-3 3-.7 4-8 3.5-8l-13.1 1.8s-3-4.3-4-4.3-5.6 2.5-5.6 2.5l-2.6-6.7-5.5 3.6-2.5-3s-4.6 1.2-4.6 0c.2 0-.5-3-1.2-3s-5.7 3.8-5.9 3.6c-.2-.2-5.7-8-5.7-7.8l-4.1 14.7c-.2 0-4 .4-4.1.6-.2.3-20-11.4-19.8-11.2l5.1 11.2s-4.2 2.4-4.2 2.6l.7 5-13.2-4.5s5 10 4.6 10l-9.6.5 4.4 8.4-1.6 5s14.2 10 13.2 10.6zm84.3 212.4c1.3 1.8 8.1 10.4 7.1 10.4s-18 11.3-24.7 13.4a351 351 0 01-27.8 5.8c1.3-.3 20-10.5 27.5-15.4a119 119 0 0018-14.2zm-105.5-.3c-1 1.2-5.8 10.7-5.8 10.7s13.9 9.7 24.2 13.4c10.4 3.6 28 4.9 27 4.6-1-.3-22.1-9.8-28.2-14.7-6-4.9-17-14-17.2-14z"/>
+  <g fill="#fec500" fill-rule="evenodd" stroke="#6d6666">
+    <path stroke-width="1.4" d="M394.6-213l35.4 21.4c6.6 4.1 28 22.2 29.6 21.4 1.6-.8 13.2-9.9 13.2-9.9S448.9-199 434-203s-39.5-8.2-39.5-9.9z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M390.5-231.9c2.5 0 47.7 23 61.7 34.6s19.7 26.3 21.4 26.3c1.6 0 23-3.3 22.2-3.3-.8 0-9.9-29.6-30.4-38.7-20.6-9-74-18.9-74.9-18.9z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M603.5-296c-.8 0-9 24.7-11.5 32-2.5 7.5-6.6 23-6.6 23s-36.2 3.4-34.5-.7c1.6-4.2 55-54.3 52.6-54.3z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.4" d="M398.8-261.5s42.7 28.8 57.5 45.2c14.8 16.5 29.6 45.3 30.4 45.3.9 0 40.3-8.3 40.3-7.4s-46-46-68.2-60-59.2-21.4-60-23z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M443.2-273.8s21.3 32.9 25.5 44.4a1347 1347 0 0016.4 41h33.7s-16.4-37-34.5-55-40.3-28.8-41.1-30.4z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.4" d="M454.7-291.9c.8 2.5 31.2 31.2 38.6 50.1a402 402 0 0113.2 42.8l29.6-7.4s-26.3-48.5-42.8-61.7c-16.4-13.1-37-22.2-38.6-23.8z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.4" d="M700.5-209.7s-61.7 6.6-83.9 12.3-34.5 27.2-34.5 27.2 28.8 10.7 30.4 9 19-18.9 37.8-25.5c19-6.5 51.9-22.2 50.2-23z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M698-250c-1.6.9-51 41.1-66.6 54.3-15.6 13.1-30.4 27.1-32 28-1.7.8-32.1-4.2-30.5-5.8 1.7-1.6 45.3-37 74-52.6 28.8-15.7 52.7-22.2 55.1-23.9z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M685.7-278.8c-5 5.8-53.4 45.3-66.6 59.3S584.6-181 584.6-181s-25.5-11.5-23.9-16.5c1.7-4.9 36.2-33.7 60.9-50.1 24.6-16.5 66.6-29.6 64.1-31.3z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.4" d="M636.4-282a725 725 0 00-35.4 39.4c-5.7 8.2-23 44.4-23 44.4s-25.5-22.2-25.5-23 32-34.5 51-47.7 33.7-10.7 32.9-13.1z" transform="matrix(.307 0 0 .37108 317 244.3)"/>
+    <path stroke-width="1.5" d="M565-241.8a10.5 10.5 0 11-20.8 0 10.5 10.5 0 0120.9 0zm21 14c0 5.1-4.7 9.3-10.4 9.3s-10.5-4.2-10.5-9.3 4.7-9.3 10.4-9.3 10.5 4.1 10.5 9.3zm-46.5-10.5c0 5.2-5.7 9.3-12.8 9.3-7 0-12.8-4.1-12.8-9.3s5.8-9.3 12.8-9.3c7 0 12.8 4.2 12.8 9.3z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.5" d="M573.2-219c0 9.9-6.5 18-14.5 18s-14.5-8.1-14.5-18 6.5-18.1 14.5-18.1 14.5 8 14.5 18zm-39.5.5c0 7.7-6.5 14-14.5 14s-14.6-6.3-14.6-14 6.5-14 14.6-14c8 0 14.5 6.3 14.5 14z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.5" d="M514-207.5c0 6.8-5 12.2-11.1 12.2s-11-5.4-11-12.2c0-6.7 4.9-12.2 11-12.2 6 0 11 5.5 11 12.2zm81.3-1.1c0 8-7.5 14.5-16.8 14.5-9.4 0-16.9-6.5-16.9-14.5s7.5-14.6 16.9-14.6c9.3 0 16.8 6.5 16.8 14.6zm-40.7-21c0 4.9-6 8.8-13.3 8.8s-13.4-4-13.4-8.8 6-8.7 13.4-8.7 13.3 4 13.3 8.7z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.5" d="M557-210.4c0 7-8.4 12.8-18.6 12.8s-18.6-5.7-18.6-12.8c0-7 8.3-12.8 18.6-12.8s18.6 5.8 18.6 12.8zm47.6 22.7c0 8.7-7.8 15.7-17.4 15.7s-17.5-7-17.5-15.7 7.8-15.7 17.5-15.7c9.6 0 17.4 7 17.4 15.7zm-95.3-4c0 5.7-4.4 10.4-9.9 10.4s-9.9-4.7-9.9-10.5 4.4-10.4 9.9-10.4 9.9 4.6 9.9 10.4z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.5" d="M579-193.5c0 7.4-6.7 13.4-15 13.4-8.4 0-15.2-6-15.2-13.4S555.6-207 564-207c8.4 0 15.1 6 15.1 13.4zm-47.6-.6c0 6.4-6 11.6-13.4 11.6s-13.4-5.2-13.4-11.6c0-6.4 6-11.6 13.4-11.6s13.4 5.2 13.4 11.6z" transform="matrix(.307 0 0 .37108 317 246)"/>
+    <path stroke-width="1.5" d="M554.6-190.6c0 7-6.2 12.8-14 12.8-7.6 0-13.9-5.8-13.9-12.8 0-7 6.3-12.8 14-12.8s14 5.7 14 12.8zm-60.4-76.8c3.4 0 27.9 8.2 27.9 8.2s-30.3 11.6-25.6 10.4 33.7-4.6 31.4-4.6c-2.3 0-25.6 22.1-18.6 21 7-1.2 20.9-15.2 22-15.2 1.2 0 15.2 22.1 16.4 21 1.1-1.2 0-22.2 1.1-22.2s29 14 26.7 12.8a123.2 123.2 0 01-17.4-17.4c1.2 0 38.4 3.5 36 2.3l-24.4-11.6s16.3-15.1 12.8-15.1-30.2 15.1-27.9 14c2.3-1.2 29-31.5 29-31.5L557-282.5s4.7-18.6 2.4-17.4c-2.4 1.2-21 24.4-22.1 24.4s-5.8-23.2-5.8-23.2 1.1 25.5-5.9 26.7c-7 1.2-31.3 5.8-31.3 4.7z" transform="matrix(.307 0 0 .37108 317 246)"/>
+  </g>
+  <g fill-rule="evenodd">
+    <path fill="#00389b" d="M445.5 216.5c.2.9 5.9 16.4 14.7 16s12.3-3 11.9-3.2a18 18 0 01-6.2-8.5 44 44 0 01-2.5-8l-17.9 3.7zm31.2-6s6.5 15.3 9.3 17.5c2.9 2.1 9.5 3.8 12.3 3.6 2.9-.2 6.3 0 6.3 0s-2.9-1.5-5.2-9.9l-3-11.2h-19.7zm39.3 5.6s-1.2 11.2 0 14c1.3 2.8 7.5 8 7.5 8s7.5-1 7.7-8a36 36 0 00-2.5-13.3L516 216z"/>
+    <path fill="#005120" stroke="#000" stroke-width="1.5" d="M289 21s1.1 4.7 0 8.2-11.1 12.8-11.1 20.3c0 7.6 11.6 30.8 47 31.4 35.6.6 80.3-19.2 79.7-19.8-.6-.5-84.9-57-86-56.4-1.2.6-29.7 17.5-29.7 16.3zm234.2 40.1s7.6 20.4 10.5 22.7c2.9 2.3 4 7 4.7 7s48.8 10.4 48.8 10.4 4.6-13.3-2.3-23.8c-7-10.5-33.2-37.8-33.2-37.8l-28.5 21.5zm33.2-25c1.1 0 12.8 10 22 4.7 9.4-5.2 24.5-19.2 24.5-19.2s-12.8 4-22.1 3.5c-9.3-.6-23.8 11.6-24.4 11z" transform="matrix(.307 0 0 .37108 350.7 188.7)"/>
+    <path fill="#005120" stroke="#000" stroke-width="1.5" d="M287.2 23.3s-3.5-9.8-12.8-10.4c-9.3-.6-26.2 1.1-32-3.5C236.6 4.7 235-6.3 232-5.7c-3 .5-10.5 0-11 0s-3.6-9.3 4.6-14 15-.6 19.7-4 11.7-5.9 21-6.5c9.3-.5 24.4 11.7 31.4 14.6 7 2.9 22 6.4 27.9 3.5 5.8-3 38.3-15.7 50-16.3 11.6-.6 36-1.2 45.3-.6s46 5.3 57 10.5S547.7 7 555.8 11.7c8.1 4.7 26.2 11.6 26.2 11.6S550 54.7 534.2 60a354.9 354.9 0 01-95.4 11.6c-29.6-1.7-52.9-4.7-75.5-16.3-22.7-11.6-47.1-22.7-48.3-28.5-1.2-5.8-.6-13.3-.6-13.3l-27.3 9.8z" transform="matrix(.307 0 0 .37108 350.7 188.7)"/>
+    <path fill="#005120" stroke="#000" stroke-width="1.5" d="M251.2-14.4c-1.2.5-7 2.9-5.9 4 1.2 1.2 3.5 4.7 10.5 4 7-.5 14.5-4.6 14.5-4.6s-8.7-4-19.1-3.4z" transform="matrix(.307 0 0 .37108 350.7 188.7)"/>
+    <path stroke="#000" stroke-width="1.5" d="M250.6-13.3v6.4s8.1 2.3 8.1.6c0-1.7.6-5.8-1.2-5.8s-6.4-.6-7-1.2z" transform="matrix(.307 0 0 .37108 350.7 188.7)"/>
+    <path fill="#001707" stroke="#000007" stroke-width="1.5" d="M332-8.4c2-3.7 0-8.7 11.9-14.4 11.9-5.8 32.7-4.2 32.7-4.2s-6 4.6-6.2 9.3c-.2 4.7.4 6.8.4 6.8s-11.3-3.7-20-1.5-18.6 4.6-18.9 4zm53.4-20.2c-1.2.6-10.3 10.7-9.3 13.8 1 3 13.2 10.5 17.1 9.8 4-.6 21.8-9.2 22.8-13.5 1-4.3 1.9-10.1.4-11.3-1.4-1.3-30.8 1.6-31 1.2zm39.3-1.6c-2.3 2.2-1.5 13.1-.7 14.3.9 1.3 15 15.5 18.1 16.3 3.1.8 26-1.5 27.8-4s7.4-12.9 5.7-15.3c-1.6-2.5-6.5-5.8-21.8-9s-24.2-3-29.1-2.3zm58.1 13.7c3.7 1.9 25.3 12.4 38 20.8 12.8 8.4 18 18 21.6 18.9 3.7.8 18.7-8.2 19.3-10.7.7-2.5-18.3-15.6-31-21.6-12.7-6-47.9-6.7-47.9-7.4zm-4.5 8.9c-1.9 1.6 23 45 27.7 46.4 4.8 1.5 33.1-8.4 32.7-11.7-.4-3.3-7.8-9.9-25.3-19.5-17.4-9.7-31.6-16-35.1-15.2zM447.5 8.2c-4 2.3-10.1 41.1-6.2 43 3.9 1.8 52-4.8 53.9-9C497 37.7 475.4 3.4 469 3.4c-6.4 0-18 1.6-21.6 4.7zM397.7 0c-5.1 4.7-4 40.9-1.8 43.1 2.2 2.3 30.8 9.7 33.9 7 3-2.6 7.2-43.3 4.3-46.4-2.9-3.1-10.9-10.5-17-11.1-6.2-.6-16.5 6-19.4 7.4zm-64.5-.6c-4.7 3.7-5 13.3.2 15 5.1 1.6 17.9 7.2 29.8 12.3 12 5.1 18.7 11.3 22.2 11.1 3.5-.2 6.8-36.4 3-38.4A62 62 0 00363.7-4a156 156 0 00-30.4 3.3z" transform="matrix(.307 0 0 .37108 350.7 188.7)"/>
+  </g>
+  <path fill="#d40f0f" fill-rule="evenodd" d="M388 359.2c2.6-2.5 6.6-8.7 12-9 5.5-.2 11.3 4.8 11.3 4.8s5.7 23.5 5.4 23.5c-.2 0-9.5 6.7-9.7 6.7-.3 0-4-9.2-7.5-8.3-3.5.8-3.2 13.4-3.8 12.6-.5-.9-15.2-18.2-14.6-18.8.5-.6 7.2-10.7 6.9-11.5zm151.9-3c1.7-.4 9.5-6.2 15-6 5.4.3 8.6 2.8 11.4 5.4 3 2.5 6.4 9 6.4 9s-7 19-7.5 19-3.5 1.6-4 .2-2.3-5.8-5.8-6.4c-3.4-.6-4.3 6.2-4.3 6.2L539.9 356z"/>
+  <path fill="#fddc59" fill-rule="evenodd" d="M543.6 362c0 1.7 10.7 28 27.9 33 17.3 5.1 22.7-4.7 24.7-8 2-3.4 9.2-3.1 9.2-3.1s-1.7 24.6-4.6 27.7c-2.8 3-5.1 9.8-21.2 10-16.1.3-30.8-15-35.7-19.5a91.6 91.6 0 01-13.8-21.6c-2.6-5.3 13.8-18 13.5-18.5zM356 414.4c.3 0 7.8 8.1 18.8 7.3 10.9-.9 29.6-7.3 38.2-18.5a96 96 0 0013-23.3s-12.7-22.4-13-22.4c-.3 0-1.4 7.3-3.7 12-2.3 4.8-8.7 18.3-19.3 22.5-10.6 4.2-10.6 5.9-15 5.3a59.3 59.3 0 01-15.5-7.6L354 403s-1.1 8.7 2 11.5z"/>
+  <path fill="#fddc59" fill-rule="evenodd" d="M387.8 358.4c-.8 0-21.2 11.1-20.4 15.9.9 4.7 35 72 108.2 72.9 73.3.8 118-61 114.8-71.3-3.3-10.3-26-22.2-26-22.2s5.6 4.7 4.8 11c-.8 6.4-26 61-89.5 59.5-63.4-1.6-93.5-50-93.5-55.5s3.2-8.7 1.6-10.3z"/>
+  <path fill="#d40f0f" fill-rule="evenodd" d="M586.2 407.4c1.7-1.4 12.3-30.5 18.4-29.7 6 .8 4 9.5 3.4 11.8-.5 2.2-6.6 22.4-6.6 22.4s.3-4.8-3.7-6-10.7 2-11.5 1.5zM356 414.7c0-1.6-4.8-7.2.9-8.7 5.7-1.6 13 1.5 13 1.5s-4-11.8-9-21.4c-4.9-9.5-6.5-7.9-10.6-6.3-4 1.6-4 5.8-1.5 12.1 2.5 6.4 7.2 24.4 7.2 22.8z"/>
+  <path fill="#fdc400" fill-rule="evenodd" d="M423.2 360.4l7-24-19.6-15 24.6-.6 8-23.6 8.1 23.6 24.6.4-19.6 15.2 7.2 23.9-20.2-14.3z"/>
+  <path fill="#fff" fill-rule="evenodd" d="M555.6 235.8v92c.2 45-45.7 84.4-76.1 92.1-30.5-7.6-76.3-47-76.2-92v-92h152.3z"/>
+  <path fill="#d40f0f" fill-rule="evenodd" stroke="#000" stroke-width="1.5" d="M177.2 326l.4 160.7s2.4-3.3 35-1.3c32.6 2 35.4 35.5 70.9 35.5 35.4 0 35.4-35.5 70.8-35.5s35.5 35.5 70.9 35.5 35.4-35.5 70.9-35.5 35.4 35.5 72.8 37.5c33.5-2 33.5-37.5 69-39.5l35.3 2V326h-496z" transform="matrix(.307 0 0 .35829 349 119)"/>
+  <path fill="#0062bb" fill-rule="evenodd" d="M403.3 312v19h11c10 .8 10.8 12.8 21.7 12.8s10.8-12.8 21.7-12.8 11 12.8 21.8 12.8 10.9-12.8 21.7-12.8 10.3 12 21.8 12.8c10.3-.8 10.8-12 21.8-12.8h10.8v-19h-10.8c-11 0-11 12.7-21.8 12.7S512.1 312 501.2 312s-10.8 12.7-21.7 12.7-10.9-12.7-21.8-12.7-10.8 12.7-21.7 12.7-11-12.7-21.8-12.7h-10.9zm3.3 38l7.6 19.1c10 .8 10.9 12.7 21.8 12.7 10.8 0 10.8-12.7 21.7-12.7s11 12.7 21.8 12.7 10.9-12.7 21.7-12.7 10.3 12 21.8 12.7c10.3-.7 10.6-12 21.5-12.7l7.8-19.3-7.5.3c-11 0-11 12.7-21.8 12.7S512.1 350 501.2 350s-10.8 12.7-21.7 12.7-10.9-12.7-21.8-12.7-10.8 12.7-21.7 12.7-11-12.7-21.8-12.7h-7.6zm72.9 70c10.9 0 35.8-19.1 35.5-19.1.3 0-2.9-12.7-13.8-12.7s-10.8 12.7-21.7 12.7-10.9-12.7-21.8-12.7-13.6 12.7-13.7 12.7c-.5 0 24.6 19 35.5 19z"/>
+  <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M90.8 117.6c.9 0 8.3 1.2 13.6.8 5.4-.4 7.4-2.5 7.4-2.9v-1.2h7s1.2 5.7.4 6.1-2.9 2.1-3.3 2.1 0-2.9-.8-2-1.2 2-1.2 2-.9-1.2-1.3-1.2-1.2 1.2-1.2 1.2 0-1.2-.4-1.2-2.5 2-2.5 2l-2-1.6s-1.3 2-1.7 2-2.9-1.6-2.9-1.6l-4 2.5s0-3.7-.9-3.3c-.8.4-5.3.4-5.3.4S90.4 124 90 124s-2-2-1.6-2 1.2-1.2.8-1.7c-.4-.4-2.5 0-2.5-.4s-.8-2.8-.4-2.8l2 .4V115h2.1l.4 2.5z" transform="matrix(1.5005 0 0 1.3054 287 126.3)"/>
+  <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M98.3 94.1c-.5 0-3.3 3.3-3 7 .5 3.7 7.5 9 7.5 9s3.7-1.6 4.9 0 1.2 6.6.8 6.6-5.3 1.3-5.3.5c0-.9 0-1.7-.4-1.7l-5 .4.4-1.6-4-.8 1.6-1.7s-6.6-2.9-6.2-2.9 2.9-1.6 2.9-1.6l-5-3.3h3s-4.2-3.3-3.8-3.3l2.5.4-1.2-3.3h1.2L88 95.4l2-.9 1.3 2.1-.5-5 3 .5v4s1.2-2.4 1.2-2.8c0-.4 3.7 1.7 3.2.8z" transform="matrix(1.5005 0 0 1.3054 287 126.3)"/>
+  <path fill-rule="evenodd" d="M530 282.4c-.8.7-3.1 2.2-3.1 2.2l5-.4a7 7 0 01-2-1.8zm4.4 2.6c-.3.4-1.2 4.6-.6 4.3a29 29 0 003.1-3.4l-2.5-.9zm7.1.5c.8.7 4.3 3.8 3.9 3.1-.5-.7-1-3.5-1.3-3.6-.3-.1-2.3.8-2.6.5zm-62.1-4.4c-.5.1-4.3 2.7-4.3 2.7l6.1-1c-.3 0-2-1.3-1.8-1.7zm4 3.2c-.6.6-2.6 4.3-1.9 4.2a27 27 0 004.2-2.6l-2.3-1.6zm-2.5-5.2l-3.5-1.5 4.3-1-.8 2.5zm-61-1.7l-4.7-3.3 5.9 1.6-1.2 1.7zm-4 2.1c-.7 0-6.5 3.2-6.4 3.2s8.2.2 8 0c-.1-.1-1.3-3-1.7-3.2zm3.7 4.7a40 40 0 00-5 3.4h7l-2-3.4zm-.7-33.4s-1.7-3.8-1.5-3.8l4.3 3-2.8.8zm4.7-4.7l.4-2.4s4.2 2.8 4 2.8c-.1 0-4.1 0-4.4-.4zm6.4 1.7l.5-3.5s3.9 4.6 3.5 4.7c-.3.2-3.7-.6-4-1.2z"/>
+  <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M137.3 110.9c0 .2 4.3 3.7 4.4 4.5 0 .8-7.8 1-7.8 1s-2.3-1.7-3-1.6c-.7 0-1 1.8-1 1.8l1.8 1-3.5.2 1 2 2.7-.2-.6 1.8s1.6 1.3 2 1c.3-.1 1.3-2 2.1-2.3.8-.3 2.6-.3 2.6-.3s-1.4 2.3-.7 2.3c.6 0 3.4-2.4 3.4-2.4l.7 2.2 2-2.5s0 2 .3 2 3.2-2.5 3.2-2.5 2.3 2.8 2.6 2.6c.3-.2.6-3 1-3s2.2-.3 2.2-.5-1.3-1-1.5-2.5c-.2-1.5.2-4.8.1-4.8s-13.8.5-14 .2z" transform="matrix(1.5005 0 0 1.3054 286 126.6)"/>
+  <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M115.4 104.6h40.3c4 0 7.8-1.6 7.8-4.1 0-2.5-6.6-2.9-9-2-2.5.8-13.2 5.7-17.7 5.3s-8.7-3.3-9.1-6.2c-.4-2.9 2-5.3 6.6-5.3s10.3 1.6 11.5 1.2 4.1-3.7 5.3-4.1c1.3-.4 5-.8 5-.8l-1.7 1.2 5.4-1.2s-4.1 4.5-8.3 5.7c-4 1.3-12.7.8-16 .8s-5-.4-4.5 2.1c.4 2.5 2.9 4.1 5 3.7 2-.4 8.1-2.5 8.1-2.5l-1.6-1.2 7.4-.4s-.4-1.2 0-1.2l4.1.4s-2.5-1.3-2-1.3 2 0 5.3.4 10.3 1.7 9.9 5c-.5 3.3-3 6.1-5.8 6.1s-5.3-.8-5.3.5c0 1.2 3.3 2 5.3 2s4.5-1.6 5-1.6 1.2 2.4 1.6 2.4 2.9-.8 2.9-.8l-1.7 4.5 2.9.8s-1.6 1.7-1.2 1.7 2.8 0 2.8.4-3.2 2.9-3.2 3.3 2.4 1.6 2.4 1.6-1.6 2.5-2 2.1l-2-2.5s-.5 1.7-1.3 1.7-2.5-.4-2.5-.4 1.2-2.5.8-2.5-2.4 1.6-2.4 1.2l-1.3-1.2s3.3-1.3 3.3-3.3c0-2-1.3-3.9-7.3-4.2-6-.3-6 1.4-10.5 1.2-4.4-.2-4.4-2-7.7-2s-13.4 4.2-18.2 4c-4.7 0-10.6-.3-10.4-.5.2-.2 3.9-9.7 4-10z" transform="matrix(1.5005 0 0 1.3054 286 126.6)"/>
+  <path fill="#fdc400" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M106.9 102.5c-.4.2-4 .7-4.2 4.5-.2 3.8.3 3.8.7 3.6.4-.2 1.2-3.5 1.2-3.5s-1.2 4.5.1 5.5a9.3 9.3 0 002.8 1.5l.5-3.6s-1 3.5 1.5 4.7c2.4 1.2 3.4.3 3.1-.6a70 70 0 00-.9-3.3l2 2.4c.2.2 1 1.8 3.6 1 2.4-.6.7-2.3.7-2.3l-3-2.4s3 3.1 4.4 2-1-3.6-1-3.5 2 3.5 2.8 1.4-1.2-2.8-1.8-4.9c-.6-2-1.1-2.2-.5-3.5.6-1.2.7-3.6.7-3.6s2.6.7 2.4-1.5c-.2-2.2-2.8-2.7-3.3-2.8-.5 0-.4-2.2-.6-2.1-.2 0-1.9 1.3-1.9 1.3s-1.4-3.4-1.7-3.2-2 2-3.2 2c-1.2.2-2 2-2 2s-4.3-2.1-4.2 1.3c.1 3.4 2.6 2.5 2.6 2.6s-.4 4.8-.8 5z" transform="matrix(1.5005 0 0 1.3054 287 126.3)"/>
+  <path fill-rule="evenodd" d="M450.9 253.3c.7-.3 1.8-1.2 3-1.1s3.4 1 2.4 1.6c-1 .5-1.8.8-3 .5-1-.3-2-.8-2.4-1zm12.6-.2c-.8-.2-1.9-1.1-3.2-1s-3.2 1-2.2 1.6a4 4 0 002.8.5c1.2-.3 2-.9 2.6-1z"/>
+  <path fill="#000039" fill-rule="evenodd" stroke="#000" stroke-width=".4" d="M111 103.2c0 .5.4 4.8.6 4.5l1.7-4.4-2.3-.1z" transform="matrix(1.5005 0 0 1.3054 287.1 126.4)"/>
+  <path fill="none" stroke="#000" stroke-width=".8" d="M110 103.2c0-1.3.8-1.2 2.4-1 1.7.2 2.5 1 2.4 1.3-.1.2-1.5.7-2.6.6-1.3-.4-2.3 0-2.2-1z" transform="matrix(1.5005 0 0 1.3054 287.1 126.6)"/>
+  <path fill="none" stroke="#000" stroke-width="1.5" d="M112.4 100l-.2 2m7.1-7.2s1.4.7 1.2 1.3c-.2.6-1.2.9-1.2.9m-11.2-2.7c-.3.1-.7.3-1 1.2-.1.8 1 1.3 1 1.3" transform="matrix(1.5005 0 0 1.3054 287.1 126.6)"/>
+  <path fill="none" stroke="#000" stroke-width="1.5" d="M111.2 136.1s-1.5 1.5 1 1.5.7-1.3.7-1.3" transform="matrix(1.5005 0 0 1.3054 287.4 77.6)"/>
+  <path fill="#fdc400" fill-rule="evenodd" d="M462.4 403.8l6.4-21.1-17.9-13.2 22.4-.5 7.2-20.8 7.4 20.7 22.3.4-17.7 13.3 6.4 21-18.3-12.4z"/>
+  <path fill="#003017" fill-rule="evenodd" d="M465.4 398.1l5.3-16.7-14.8-10.5 18.6-.4 6-16.5 6.2 16.4 18.5.4-14.7 10.5 5.4 16.7-15.3-9.9z"/>
+  <path fill="#fdc400" fill-rule="evenodd" d="M425.7 361.1l6.3-19.9-17.6-12.5 22-.5 7.2-19.7 7.3 19.7 22 .3-17.5 12.6 6.5 20-18.2-11.9z"/>
+  <path fill="#003017" fill-rule="evenodd" d="M428.7 355.8l5.3-15.9-14.7-9.9 18.4-.4 6-15.6 6 15.6 18.4.3-14.6 10 5.4 15.8-15.2-9.4z"/>
+  <path fill="#fdc400" fill-rule="evenodd" d="M499.6 361.1l6.4-20-17.8-12.4 22.3-.5 7.3-19.7 7.4 19.7 22.3.3-17.8 12.6 6.5 20-18.3-12z"/>
+  <path fill="#003017" fill-rule="evenodd" d="M502.6 355.8l5.4-15.9-15-9.9 18.6-.4 6-15.6 6.3 15.6 18.6.3-14.8 10 5.4 15.8-15.3-9.4z"/>
+  <path fill="none" d="M373.3 372.6c8 34.5 41.9 60.1 87.5 66.2 58.6 7.8 114.5-21.9 124.8-66.3"/>
+  <path d="M373.1 377.9l11-6.2 1 2.2-4.3 2.5 1.5 3.1 4.3-2.4 1 2.2-11 6.2-1-2.2 5-2.8-1.5-3.2-5 2.9-1-2.3m4.6 9.6L388 380l3.5 5.9-1.7 1.2-2.2-3.7-2.4 1.8 2 3.4-1.5 1.2-2.1-3.4-2.9 2 2.3 3.9-1.7 1.3-3.6-6m7.2 11l9-9.2 1.6 1.8-3.5 3.7 2.1 2.5 3.5-3.6 1.6 1.9-9 9.3-1.6-1.9 4-4.2-2-2.6-4.1 4.2-1.6-1.8m11.8 5.5l1.5 1.4 2.7-5-4.2 3.6m-5.7 1.7l10.2-8.3 2.3 2.3-6 12.4-1.9-1.9 1.6-3-2-2-2.5 2.2-1.7-1.7m9 8.3l6-9.2-2.1-1.8 1.2-1.8 6.1 5-1.2 1.8-2.1-1.7-6.1 9.2-1.9-1.5m5 4l6.5-11.7 1.9 1.3-2.5 4.6 2.7 1.8 2.5-4.6 2 1.4-6.5 11.7-2-1.3 3-5.4-2.7-1.8-3 5.3-1.9-1.3m12.1 7.7l5.2-12.5 5.9 3-.9 2-3.8-1.9-1.2 3 3.6 1.8-.9 2-3.5-1.9-2.3 5.5-2-1m11.4-2a15 15 0 00-1 4.2c0 .6.3 1 .9 1.3.6.3 1 .2 1.5-.3.4-.4 1-1.7 1.7-3.8s1-3.5 1-4.2a1.4 1.4 0 00-1-1.3c-.5-.3-1-.2-1.4.3-.4.4-1 1.7-1.7 3.9m-2.2-1a16 16 0 012.4-4.8 3 3 0 011.7-.7c.5 0 1.2 0 2 .4s1.2.7 1.6 1.1c.4.5.7 1 .8 1.8.1.5 0 1.2-.1 2a25.2 25.2 0 01-1 3.4l-1.2 3.2c-.4.7-.8 1.3-1.2 1.6-.5.4-1 .7-1.6.7-.6.1-1.2 0-2-.4s-1.3-.7-1.7-1.1a3.7 3.7 0 01-.8-1.8l.1-2 1-3.4m10.6-2.9l2.2.8-2.4 8.8a4.7 4.7 0 00-.2 2.2c.1.4.5.7 1 1 .6.1 1 0 1.4-.2.3-.3.6-1 .9-2l2.3-8.8 2.2.7-2.4 9a9.8 9.8 0 01-.7 2 2.9 2.9 0 01-.7.9 2.9 2.9 0 01-1.6.6 4.8 4.8 0 01-2-.3c-1.3-.4-2.1-1-2.5-1.9-.4-.8-.4-2 0-3.7l2.5-9m5.9 16.1l2.7-13.4 2.3.6 1.3 10.1 1.8-9.3 2 .5-2.6 13.4-2.3-.6-1.3-10.2-1.8 9.4-2.1-.5m12 .7l1 .2h1.2a1 1 0 00.5-.3c.3-.3.5-.8.7-1.4a24.1 24.1 0 00.8-5.8 3 3 0 00-.4-1.4 1 1 0 00-.4-.5l-1-.2-1-.2-1.3 9.6m-2.5 1.6l1.9-13.6 3.6.7c.8.1 1.3.3 1.8.5.4.2.7.5 1 .9.3.5.5 1.2.6 1.9 0 .7 0 1.8-.2 3.3a31 31 0 01-.7 4 6.4 6.4 0 01-1 2c-.3.5-.7.8-1.3 1-.5.1-1.4 0-2.6-.2l-3.1-.5m9.5 1.6l1.2-13.7 6.3.7-.2 2.3-4-.5-.3 3.2 3.8.4-.2 2.1-3.8-.4-.3 3.8 4.1.4-.2 2.3-6.4-.6m10.4-1.1h2.2a1 1 0 00.5-.5c.2-.3.4-.8.5-1.4a23 23 0 00.2-3v-3a3 3 0 00-.6-1.3 1 1 0 00-.5-.3l-1-.2h-1l-.3 9.7M470 441l.5-13.7 3.7.1a6 6 0 011.7.3c.5.2.8.4 1.1.8a4 4 0 01.9 1.8l.2 3.3a31.6 31.6 0 01-.4 4.1 4 4 0 01-.7 2c-.3.6-.7 1-1.2 1.2-.5.2-1.4.3-2.6.2l-3.2-.1m13.8.2l-.5-13.7 2.3-.1.5 13.7h-2.3m6.1-.3l-.8-11.4-2.7.2-.1-2.2 7.5-.7.2 2.2-2.6.3.8 11.4-2.3.2M498 426l2.3-.4 1.4 9c.2 1.1.4 1.8.7 2.1.3.4.7.5 1.3.3.6 0 1-.3 1.1-.8.2-.4.2-1.1 0-2.2l-1.4-9 2.2-.5 1.5 9.4.2 2-.3 1.2a3.3 3.3 0 01-1.2 1.3 5 5 0 01-1.8.7c-1.4.3-2.4.1-3.1-.4-.7-.6-1.2-1.7-1.4-3.4L498 426m12.3 3.5l1-.3c.6-.2 1-.4 1.3-.8.2-.4.2-1 0-1.7 0-.7-.3-1.2-.7-1.4-.3-.2-.8-.3-1.5 0l-1 .2.9 4m-.5 8l-3-13.3 4-1c1.1-.3 2-.3 2.7.2.6.4 1.1 1.3 1.4 2.6.3 1.4.2 2.4-.2 3.2-.4.8-1.2 1.4-2.3 1.7l-1.7.4 1.3 5.7-2.2.6m8.8-9.7a15 15 0 001.5 4c.4.4.9.5 1.5.3s1-.6 1-1.2-.2-2-.9-4.2-1-3.5-1.5-4c-.3-.5-.8-.6-1.4-.4-.6.2-1 .7-1 1.3-.1.6.2 2 .8 4.2m-2.3.8c-.4-1.4-.6-2.5-.7-3.4a5.6 5.6 0 010-2c.2-.8.4-1.3.8-1.8a5 5 0 011.8-1 4.1 4.1 0 012-.3c.5.1 1 .4 1.6.9.4.3.7.9 1 1.6a24.7 24.7 0 011.9 6.6 6 6 0 010 2.1 3.7 3.7 0 01-.8 1.7 4 4 0 01-1.8 1.1c-.8.3-1.4.4-2 .3a3 3 0 01-1.5-.9 5 5 0 01-1.1-1.6c-.4-.8-.8-2-1.2-3.3m11.3 3.1l-4.6-12.7 2.2-1 6.2 7.6-3.2-8.9 2-.9 4.6 12.7-2.2 1-6.2-7.6 3.2 9-2 .8m14.3-7l-4.8-10.1-2.3 1.3-1-2 6.7-3.9 1 2-2.3 1.4 4.8 10.1-2 1.2m5.4-3.2l-6.6-11.6 2-1.4 2.5 4.6 2.7-2-2.6-4.5 2-1.3 6.5 11.6-2 1.3-3-5.2-2.6 1.8 3 5.3-2 1.4m8.3-6l-7.4-11 5-4.2 1.3 1.9-3.3 2.7 1.7 2.5 3-2.5 1.2 1.7-3 2.5 2 3 3.4-2.7 1.2 1.8-5 4.3M562 404l1.6-1.8.6.6c.5.6 1 1 1.2 1 .4 0 .7 0 1-.4.4-.4.6-.8.6-1.2a2 2 0 00-.5-1.2 2 2 0 00-.9-.5 4.2 4.2 0 00-1.5 0l-1.4.3a6.4 6.4 0 01-2.6.2 3.3 3.3 0 01-1.5-1 3.8 3.8 0 01-1.1-2.7 4.1 4.1 0 011.2-2.7c.8-1 1.7-1.3 2.5-1.3s1.7.5 2.6 1.4a3.8 3.8 0 01.3.4l-1.6 1.7-.2-.3a3 3 0 00-1.3-.9c-.3 0-.7.1-1 .5-.3.3-.4.6-.4 1 0 .3.1.6.4 1 .3.3 1 .4 2.2.2l1.5-.3a5.3 5.3 0 012.5-.1c.6.1 1.2.6 1.8 1.2a4 4 0 011.1 2.8 4.5 4.5 0 01-1.3 2.9c-.9 1-1.8 1.4-2.6 1.4-1 0-1.8-.6-2.7-1.6l-.5-.6m9.5-3.9l-9.5-8.8 4.1-5.4 1.6 1.5-2.6 3.4 2.2 2 2.4-3.2 1.5 1.4-2.4 3.2 2.6 2.5 2.6-3.6 1.6 1.5-4 5.5m2.3-12.3l1.1-1.8-4.8-2.3 3.7 4.1m2.3 6.1l-8.7-10.2 1.7-2.8 11.8 5-1.4 2.3-2.9-1.3-1.5 2.4 2.3 2.5-1.3 2.1m1.4-11.1l1.1-2.3.7.4c.7.4 1.2.6 1.5.5.3 0 .6-.3.8-.7.2-.5.3-1 .2-1.3 0-.4-.4-.7-.8-1a1.5 1.5 0 00-1-.2c-.3 0-.8.3-1.4.6l-1.3.8a6.6 6.6 0 01-2.4 1 3 3 0 01-1.7-.5 3.5 3.5 0 01-1.8-2.1 4.3 4.3 0 01.4-3c.5-1.1 1.2-1.8 2-2 .9-.4 1.8-.2 2.8.4a3.5 3.5 0 01.4.2l-1 2.2-.3-.2c-.6-.3-1-.5-1.4-.4-.3 0-.6.3-.9.8-.1.4-.2.7 0 1 0 .4.2.6.6.8.4.3 1.2.1 2.2-.5l1.3-.8c1-.6 1.8-1 2.4-1 .6 0 1.3.2 2 .6 1 .5 1.6 1.3 1.9 2.2.2 1 0 2-.5 3.2-.5 1.3-1.2 2-2 2.3-1 .3-2 0-3.1-.6a11.5 11.5 0 01-.6-.4"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kz.svg
new file mode 100644
index 0000000..049d6fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/kz.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-kz" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#6fdcff" d="M0 0h640v480H0z"/>
+    <g fill="#ffe400">
+      <path d="M60.2 467c3.3 3.2 2.2 8.5 11.3 7.8 13.8 0 14.2-8.4 14.2-14.3S65 446.4 64 437.7c-1-8.7 4.8-11 9.6-11 4.7 0 8 2.7 8 5.1S79.4 435 76 435s1.5-1.7-1.4-3-4.8 2-4.8 4c0 2.2 7.2 2.8 12 1.3 1 4.7 1.4 5-5.3 13 4.8-3.1 5.2-3.8 10.5-2-5.3-4.6-1.3-13.8-1.2-16.1s-1-5.1-3-6.5c-3.9-3.5-12.2-3.7-17.2-1.4-7.3 3.2-7.7 12.8-5.8 16L80 460.7c1.4 2.4 2 9.2-6.6 9.5-9 .7-12.2-11.6-13.8-15.7-2.1 4.5-4.5 16.8-13.6 16.1-8.6-.3-10.2-7-8.8-9.5l20.7-21c2-3.2 1.6-12.8-5.7-16-5-2.3-13.3-2-17.1 1.4-2.2 1.4-3.4 4.1-3.2 6.5s4.1 11.5-1.1 16c5.2-1.7 5.7-1 10.5 2-6.7-7.9-6.2-8.2-5.3-13 4.8 1.6 12 1 12-1.1s-2-5.6-4.9-4.2c-2.8 1.4 2 3.1-1.4 3.1-3.3 0-5.7-.7-5.7-3s3.3-5.3 8.1-5.3 10.5 2.4 9.5 11.1-22 18.1-22 24c0 6 1.4 13.1 15.2 13.1 9 .7 10.1-4.6 13.4-7.8z"/>
+      <path d="M59.1 343.3c3.3-3.2 6-12.6 15-12 13.8 0 19 7.7 19 13.6 0 5.9-28 54-29 62.7-1 8.7 4.8 11.1 9.5 11.1 4.8 0 8.1-2.7 8.1-5.2s-2.4-3-5.7-3 1.4 1.7-1.4 3-4.8-2-4.8-4.1c0-2.1 7.2-2.8 12-1.2.9-4.7 1.3-5-5.3-13 4.8 3 5.2 3.8 10.5 2-5.3 4.6-1.4 13.7-1.2 16s-1 5.2-3.1 6.6c-3.8 3.5-12.2 3.6-17.2 1.4-7.2-3.3-7.6-12.8-5.7-16L87 346.6c1.5-2.4-2.3-10.4-10.9-10.7-9-.7-12.1 8.8-13.7 12.9l12.3-1s.5 2 0 3.2a110 110 0 00-12.3 1.6l-.5 6.2h6l-.4 2.8s-5.1-.4-5.6 0c-.5.3-1 6.2-1 6.2s-1 .4-2 .4-2-.4-2-.4-.4-5.9-.9-6.2c-.5-.4-5.6 0-5.6 0l-.5-2.8H56l-.5-6.2s-6-1.2-12.3-1.6c-.4-1.2 0-3.1 0-3.1l12.3.9c-1.6-4.1-4.7-13.6-13.7-13-8.6.4-12.4 8.4-11 10.8L58 405.2c1.9 3.1 1.5 12.7-5.7 16-5 2.2-13.4 2-17.2-1.4-2.1-1.4-3.3-4.2-3.1-6.5s4-11.6-1.2-16c5.3 1.7 5.8 1 10.5-2.1-6.6 8-6.2 8.3-5.2 13 4.7-1.6 11.9-1 11.9 1.2 0 2-2 5.5-4.8 4.1-2.8-1.4 2-3-1.4-3-3.3 0-5.7.6-5.7 3s3.3 5.2 8 5.2 10.5-2.4 9.6-11c-1-8.7-29-57-29-62.8 0-6 5.2-13.5 19-13.5 9-.7 12.3 8.7 15.5 11.9z"/>
+      <path d="M59.1 319.4c3.3 3.2 6 12.6 15 12 13.8 0 19-7.7 19-13.6 0-5.9-28-54-29-62.7-1-8.7 4.8-11.1 9.5-11.1 4.8 0 8.1 2.7 8.1 5.2s-2.4 3-5.7 3 1.4-1.6-1.4-3-4.8 2-4.8 4.1c0 2.1 7.2 2.8 12 1.2.9 4.7 1.3 5-5.3 13 4.8-3 5.2-3.8 10.5-2-5.3-4.6-1.4-13.7-1.2-16s-1-5.2-3.1-6.6c-3.8-3.4-12.2-3.6-17.2-1.4-7.2 3.3-7.6 12.8-5.7 16L87 316c1.5 2.4-2.3 10.4-10.9 10.7-9 .7-12.1-8.8-13.7-12.9l12.3 1s.5-2 0-3.2a110 110 0 01-12.3-1.6l-.5-6.2h6l-.4-2.8s-5.1.4-5.6 0c-.5-.3-1-6.2-1-6.2s-1-.4-2-.4-2 .4-2 .4-.4 5.9-.9 6.2c-.5.4-5.6 0-5.6 0l-.5 2.8H56l-.5 6.2s-6 1.2-12.3 1.6c-.4 1.2 0 3.1 0 3.1l12.3-.9c-1.6 4.1-4.7 13.6-13.7 13-8.6-.4-12.4-8.4-11-10.8L58 257.5c1.9-3.2 1.5-12.7-5.7-16-5-2.2-13.4-2-17.2 1.4-2.1 1.4-3.3 4.2-3.1 6.5s4 11.5-1.2 16c5.3-1.7 5.8-1 10.5 2.1-6.6-8-6.2-8.3-5.2-13 4.7 1.6 11.9 1 11.9-1.2 0-2-2-5.5-4.8-4.1-2.8 1.4 2 3-1.4 3-3.3 0-5.7-.6-5.7-3s3.3-5.2 8-5.2 10.5 2.4 9.6 11c-1 8.7-29 57-29 62.8 0 6 5.2 13.5 19 13.5 9 .7 12.3-8.7 15.5-11.9z"/>
+      <path d="M59.1 160.6c3.3-3.2 6-12.6 15-12 13.8 0 19 7.7 19 13.6 0 5.9-28 54-29 62.8-1 8.6 4.8 11 9.5 11 4.8 0 8.1-2.7 8.1-5.1s-2.4-3.2-5.7-3.2 1.4 1.8-1.4 3.2-4.8-2.1-4.8-4.2c0-2 7.2-2.8 12-1.2.9-4.7 1.3-5-5.3-13 4.8 3.1 5.2 3.8 10.5 2-5.3 4.6-1.4 13.8-1.2 16s-1 5.2-3.1 6.6c-3.8 3.5-12.2 3.6-17.2 1.4-7.2-3.3-7.6-12.8-5.7-16L87 164c1.5-2.4-2.3-10.4-10.9-10.7-9-.7-12.1 8.8-13.7 12.9l12.3-1s.5 2 0 3.2c-6.4.4-12.3 1.6-12.3 1.6l-.5 6.2h6l-.4 2.8s-5.1-.3-5.6 0-1 6.3-1 6.3-1 .3-2 .3-2-.3-2-.3-.4-6-.9-6.3c-.5-.3-5.6 0-5.6 0l-.5-2.8H56l-.5-6.2s-6-1.2-12.3-1.6c-.4-1.2 0-3.1 0-3.1l12.3.9c-1.6-4.1-4.7-13.6-13.7-13-8.6.4-12.4 8.4-11 10.8L58 222.5c1.9 3.2 1.5 12.7-5.7 16-5 2.2-13.4 2-17.2-1.4-2.1-1.4-3.3-4.2-3.1-6.5s4-11.5-1.2-16c5.3 1.7 5.8 1 10.5-2.1-6.6 8-6.2 8.3-5.2 13 4.7-1.6 11.9-.9 11.9 1.2 0 2-2 5.5-4.8 4.1-2.8-1.3 2-3-1.4-3-3.3 0-5.7.6-5.7 3s3.3 5.2 8 5.2 10.5-2.4 9.6-11c-1-8.7-29-56.9-29-62.8 0-5.9 5.2-13.5 19-13.5 9-.7 12.3 8.7 15.5 12z"/>
+      <path d="M59.1 136.7c3.3 3.2 6 12.7 15 12 13.8 0 19-7.7 19-13.6 0-5.9-28-54-29-62.7-1-8.7 4.8-11.1 9.5-11.1 4.8 0 8.1 2.8 8.1 5.2s-2.4 3.1-5.7 3.1 1.4-1.7-1.4-3.1-4.8 2-4.8 4.1c0 2.1 7.2 2.8 12 1.2.9 4.7 1.3 5-5.3 13 4.8-3 5.2-3.8 10.5-2-5.3-4.5-1.4-13.7-1.2-16s-1-5.2-3.1-6.6c-3.8-3.4-12.2-3.6-17.2-1.3-7.2 3.2-7.6 12.8-5.7 15.9L87 133.4c1.5 2.4-2.3 10.4-10.9 10.8-9 .6-12.1-8.8-13.7-13l12.3 1s.5-2 0-3.2a111.5 111.5 0 01-12.3-1.5l-.5-6.3h6l-.4-2.8s-5.1.4-5.6 0c-.5-.3-1-6.2-1-6.2s-1-.4-2-.4-2 .4-2 .4-.4 5.9-.9 6.2c-.5.4-5.6 0-5.6 0l-.5 2.8H56l-.5 6.3s-6 1.1-12.3 1.5c-.4 1.3 0 3.2 0 3.2l12.3-1c-1.6 4.2-4.7 13.6-13.7 13-8.6-.4-12.4-8.4-11-10.8L58 74.8c1.9-3.1 1.5-12.7-5.7-16-5-2.2-13.4-2-17.2 1.4-2.1 1.4-3.3 4.2-3.1 6.5s4 11.6-1.2 16c5.3-1.7 5.8-1 10.5 2.1-6.6-8-6.2-8.3-5.2-13 4.8 1.6 11.9 1 11.9-1.2 0-2-2-5.5-4.8-4.1-2.8 1.4 2 3.1-1.4 3.1-3.3 0-5.7-.7-5.7-3.1s3.3-5.2 8-5.2 10.6 2.4 9.6 11c-1 8.7-29 57-29 62.8 0 6 5.2 13.6 19 13.6 9 .7 12.3-8.8 15.5-12z"/>
+      <path d="M60.2 13c3.3-3.2 2.2-8.5 11.3-7.8 13.8 0 14.2 8.4 14.2 14.3S65 33.6 64 42.3c-1 8.7 4.8 11 9.6 11 4.7 0 8-2.7 8-5.1S79.4 45 76 45s1.5 1.7-1.4 3-4.8-2-4.8-4c0-2.2 7.2-2.9 12-1.3 1-4.7 1.4-5-5.3-13 4.8 3.1 5.2 3.8 10.5 2-5.3 4.6-1.3 13.8-1.2 16.1s-1 5.1-3 6.5c-4 3.7-12.3 3.7-17.3 1.5-7.3-3.2-7.7-12.8-5.8-16L80 19.3c1.4-2.4 2-9.2-6.6-9.5-9-.7-12.2 11.6-13.8 15.7C57.5 21 55.1 8.6 46 9.3c-8.6.3-10.2 7-8.8 9.5l20.7 21c2 3.2 1.6 12.8-5.7 16-5 2.3-13.3 2.1-17.1-1.4-2.2-1.4-3.4-4.1-3.2-6.5s4.1-11.5-1.1-16c5.2 1.7 5.7 1 10.4-2-6.6 7.9-6.1 8.2-5.2 13 4.8-1.6 12-1 12 1.1s-2 5.6-4.9 4.2c-2.8-1.4 2-3.1-1.4-3.1-3.3 0-5.7.7-5.7 3s3.3 5.3 8.1 5.3 10.5-2.4 9.5-11.1-22-18.1-22-24c0-6 1.4-13.1 15.2-13.1 9-.7 10.1 4.6 13.4 7.8z"/>
+    </g>
+    <g fill="#ffe400" transform="translate(-194.7 8.3) scale(1.0673)">
+      <rect width="170.2" height="161.3" x="425.9" y="104.5" rx="85.1" ry="80.7"/>
+      <path d="M507 56.4c-.8 0-4.6 26.8-6 32.8-1.4 13.5 18 13 14.8-.5L507 56.3zm6.8 259.8c.7 0 6.5-26.5 8.4-32.4 2.3-13.3-17.1-14-15-.4l6.6 32.8zM378.2 184.6c0 .7 27.9 6.3 34.1 8.1 14 2.3 15-16 .6-14l-34.7 6zm271.7 3.2c0-.7-28.2-5.3-34.5-6.9-14.1-1.7-14.2 16.6 0 14.1l34.5-7.2zM406.8 99.6c-.5.5 17.9 21.3 21.6 26.4 9.6 10 22.3-4 9.6-10.8l-31.2-15.5zm211.1 171c.5-.5-19.7-19.7-23.9-24.4-10.5-9.2-21.8 5.7-8.6 11.5l32.5 13zm-169-200c-.6.3 8 26.1 9.4 32.2 4.8 12.7 22.2 4.4 13.2-6.5L449 70.6zM572 303c.7-.3-6-26.6-6.9-32.7-3.9-13-21.8-6-13.7 5.6l20.7 27zm30.3-214.4c-.6-.5-22.8 16.6-28.2 20-10.7 9 3.8 21.2 11.2 9.3l17-29.3zm-183 193.7c.5.5 24-15 29.6-18.1 11.3-8.2-2.2-21.4-10.5-10l-19 28.1zm-35-144.1c-.3.6 24 14.7 29.3 18.4 12.5 6.5 19.8-10.5 5.5-13.2l-34.8-5.2zM638 236.6c.3-.6-23-16.3-28-20.3-12-7.4-20.5 9.1-6.4 12.7l34.4 7.6zM557.4 63.7c-.7-.2-14.6 23.4-18.3 28.5a7.8 7.8 0 0014 4.7l4.3-33.2zM463.5 308c.7.3 16.3-22.4 20.3-27.3 7.3-11.6-10.4-19-13.7-5.6l-6.6 32.9zM386 238.7c.3.6 28-6 34.5-7 13.6-3.8 6-20.6-6-12.8L386 238.7zM638.1 136c-.2-.6-28.3 4.1-34.8 4.7-14 2.9-7.5 20.2 5 13.2l29.8-17.9z"/>
+      <path d="M534.6 58.1c-.7-.1-10.1 25.4-12.9 31-4.1 13 15 16.2 14.7 2.4L534.7 58zM486.1 314c.7.2 12-24.7 15.2-30.2 5-12.6-13.8-17-14.5-3.3L486 314zm-9.7-253.4c-.7.2 1.9 27.2 1.9 33.4 1.9 13.3 20.6 8.7 14.4-3.7l-16.3-29.7zm68 251.9c.7-.1 0-27.2.5-33.4-.9-13.5-20-10.1-14.6 2.7l14 30.7zM428.2 83c-.6.4 12.7 24.3 15.2 30 7.2 11.7 22.7.7 11.8-8.6l-27-21.4zM593 290.9c.6-.4-11-25.2-13-31-6.3-12.1-22.5-2.1-12.4 7.8l25.4 23.2zM393 116.6c-.4.6 21.1 18.4 25.6 23 11.1 8.4 21.4-7.2 7.8-12.1L393 116.6zm234.2 139.7c.4-.6-19.7-19.8-23.9-24.6-10.4-9.1-21.8 5.8-8.6 11.6l32.5 13zm-249.6-97.8c-.2.7 26.3 10.8 32.1 13.7 13.4 4.5 17.7-13.4 3.1-13.8l-35.2.1zM645 216.3c.3-.6-25.4-12.4-31-15.7-13-5.4-18.7 12.2-4.2 13.6l35.2 2.1zM376.7 210c.1.6 28.7.2 35.2.7 14.2-.7 10.8-18.8-2.8-13.9L376.7 210zm270.2-45c0-.7-28.6-2.2-35-3.1-14.3-.2-12.2 18.1 1.7 14l33.3-11zm-245.7 98.4c.4.6 26-11.6 32-13.9 12.4-6.5 1-21.4-8.9-11.3l-23.1 25.2zm222.3-152.3c-.4-.6-26.7 9.9-33 11.8-12.9 5.7-2.6 21.3 8 11.9l25-23.7zM442.8 298.8c.6.3 18.9-20.5 23.5-24.9 8.7-10.7-8-20-12.9-7l-10.6 31.9zM582.5 75c-.5-.4-20.3 19.1-25.2 23.2-9.4 10.1 6.6 20.5 12.4 7.9L582.4 75z"/>
+      <g transform="matrix(2.1824 0 0 2.0629 -405 -272.6)">
+        <path d="M360.1 247.9c.7 2.5.8 16.5 14.9 30 14 13.4 38 16.4 38 16.4s.1 1.9-1.6 2c-1.7.2-9.9-1.5-14-2.8-4-1.2-7.6-3.4-8-3.3-.5.2-1.3 1.6-2.5 1.4s-7-6.2-9.6-7.8a80.6 80.6 0 01-13.7-15.3c-2.8-4.5-3.5-7.5-4.4-7.5s-4.2 2.2-4.2 2.2-3-4.5-5.6-11.7c-2.7-7.2-2.4-11.4-1.8-11.7.7-.3.7 5.3 2.7 10.4 2 5.2 4.8 6.8 4.8 6.8s-1.8-2.7-3.2-9.4-2-13.2-1-15.2 1.9-2.6 2-2.5c.2.2-1.7 3.1-.4 10.8s4.8 14.2 5.6 13.9c.8-.3-.5-1.9-1-6.4s.5-7.3 1.6-7.7c.5-.4 1.3 5 1.4 7.4zm-9.8 12.8c-2.7-2.5-6.9-11.2-7.8-10.8-1 .5 6.8 13 7 14 .2 1.2 1.9 4.6.6 4.1s-10.6-10.3-9.5-8.4 8.1 10.5 7.7 11-5.8-4.8-6-4.1c-.1.6 5.3 5.8 5.2 6.4s-3.5-3.3-3.5-2.5 3.5 4.7 3.5 5.3-3-2.8-2-1c.9 2 3.5 3.7 3.4 4.3s-2.2-.8-2.2-.5c0 .3 3.9 1.7 4.8 2.8 1 1.1 7.4 8.5 12.2 12.2s18.6 10.2 19.6 10.2c.9 0 2.3-2 2-2.8-.3-.8-13.8-5.4-17.5-8.8-3.8-3.4-13-11.6-13.8-12-.7-.5-2.8-.3-2.8-.8s2.7.3 2.5 0c-.1-.3-3.7-1.9-3.6-2.2.2-.3 2.5.6 2.5.3s-4.2-2.6-4-3.1c.1-.5 3.1 1.4 3.1 1 0-.2-4-3-3.9-3.5.1-.5 3.1 2.2 3 1.6s-2.4-4-2.4-4.4c0-.5 3.6 3.4 4 2.6.2-.7-1.3-7.2-1.2-7.3s2.7 1.4 3.1.5c.5-1-1.8-2.3-4-4.1zm46.1 49.2c-1.9.3-2.8-.4-1.7-2 1.5 0 5.5-1.3 6.9-1.9s2.9-1.4 4.1-2.5c1.2-1.3 2 .7 1.3 1.8-.5.7-2.8 2-4.5 2.7-2.5.8-4.7 2-6.1 1.9zm12.5-5.1c-1.3-1.4-.2-2.4 1.7-3.5 2.8-1.5 2-3.6 5.6-5.3 1.6-1 24-10 31.3-14.8s27.8-20.3 33.3-31c5.4-10.6 2.8-11.4 3.6-11.8.7-.5 1.5 1.5 1.4 3.9-.2 2.3-2 9.3-1.4 10s8.2-5.5 11.4-13 5.6-15.3 7.1-15.3c1.6 0-2.6 12.8-5.3 17.8-2.6 5-5.7 7.5-5 8.6.8 1 8.6-5.5 11.3-10.3 2.6-4.9 5.1-9.2 5.6-8.3a34 34 0 01-6.7 16.1c-4.2 4.8-9.2 8.3-8.4 9 .7.8 6.4 1.6 12.3-2.4 6-4.1 6.6-10 7.3-9.7.8.3-.7 8.4-6.4 13.4s-13.2 5.5-13 6.6c.4 1 16.3-4.6 16-3.3-.3 1.2-20.6 9.2-20.8 10 0 .6 3.5.8 9-.5 5.4-1.2 10.6-5.5 11.3-4.5.2 1.4-3.9 4.8-10.1 6.4-6.3 1.6-9.4 3.7-9.6 4.2-.1.5 11.2-1.4 11.2-.8s-14.8 3.5-14.9 4.3c-.2.7 14-2.9 13.8-2-.4.7-19.3 6.3-19.1 6.6.1.4 15.8-3.4 15.5-2.8-.4.7-26.4 8-26.6 8.5-.2.4 23-5.2 22.8-4.7s-12 3.4-12 3.7c0 .3 9.5-1.5 9.3-1-.1.4-24 6.5-24.5 7.4-.5 1 12.4-2.5 12.2-.7s-27.7 11-27.8 9.3c-.2-1.7 16.7-6 16.6-6.5-.2-.5-9.7 1-9.9.1-.1-1 6.3-3 5.8-3.4-.5-.5-5.3 1.4-4.9.3.5-1.1 9.6-5.3 9.4-5.6-.1-.3-3.3 1-3 0 .4-1.1 19.7-6.7 19.4-7.4-.3-.6-8.9 1.4-9.7 1.6-.3-.6 12-5.2 11.8-6-.4-.7-6.6 2.7-7 1.8-.2-1 10.9-5.3 10.2-6s-5.7 1.8-6.4 1.1 10.5-8.4 8.8-8.6c-1.7-.1-3.8 2.4-4 .8.2-2 8.7-5.3 6.8-6.9-3-.9-13.1.7-17.3 3.2s-18.2 16.4-21.6 18.6c-3.4 2.1-15 7-17.2 8-3.4 1.2-4 3-7.5 4.8-6.3 1.7-6.2 3.6-9.2 4.7-1.1.3-12.4 5.7-12.5 5.3zm-15.8 7c-1.9 1-3.6 3.4-2.5 4.4.6 1.2 2.5-2.7 4-2.5l8 .4c4.3.3 6.4-.9 8.8-.7s7.7-1.3 10.2-1.3 3 .3 3.2-.8c.3-1-7.8-.3-11.4-.4-3.6-.2-8.1.7-10.8.7-2.5-.1-6.8-.9-9.5.2z"/>
+        <rect width="3.4" height="3" x="401.7" y="309.1" rx="1.7" ry="1.5"/>
+        <path d="M445 307.7c1.7-.3 6.3 1.3 9.5 2 5.8 2.3 16.6 1.2 16.6 2.3s-.7 2.4-3.2 2.6-8.8-1-8.6-1 5 2.3 3.6 2.9-5.5-1.3-6.2-.8 3.8 1.4 3 1.7c-.6.3-3.7-.4-4.7-.3-1 .2.8 1.3-.4 1.7-1.2.5-3.2-.6-4-.3-.9.3 1.8 2 .6 2.2-1.2.2-4-.8-5.6-1-1.6 0 1.5 1.6.5 1.8-1 .1-3.8-1.3-4.5-1.3s0 2-1 2-2.2-1.7-2.8-1.7 0 2-1 2-1.4-2.1-2.2-2c-1 .2 0 2.7-1.4 2.5-1.3-.1-1.5-2.6-2.6-2.5-1 .2.2 2.5-.8 2.5s-1.2-2.3-2.2-2.5c-1-.1-.6 2.2-1.2 2.2s-1.2-2.2-1.6-2.2c-.3 0 0 2.2-1.2 2s-1.2-2.4-1.5-2.3c-.4.2-.4 1.8-1.2 1.8s-.9-1.6-1.2-1.4c-.4.1-1.6 2.1-2.4 1.8-.9-.3.2-1.9-.2-1.9s-1.4 1.1-2 1 0-1.4-.2-1.4-1.7.8-2.4.8-2.6 1-3.1.1c-.5-1 1.3-1 1.7-1.9.3-.9-1-3.6.4-4.5 1.3-1 5.6 1.3 12-.3 11.6-3.1 20.6-6.7 21.5-6.6z"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/la.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/la.svg
new file mode 100644
index 0000000..a87bc98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/la.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-la" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="la-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#la-a)">
+    <path fill="#ce1126" d="M-40 0h720v480H-40z"/>
+    <path fill="#002868" d="M-40 119.3h720v241.4H-40z"/>
+    <path fill="#fff" d="M423.4 240a103.4 103.4 0 11-206.8 0 103.4 103.4 0 11206.8 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lb.svg
new file mode 100644
index 0000000..0967842
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lb.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lb" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="lb-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#lb-a)" transform="translate(80) scale(.9375)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path fill="red" d="M-128 384h768v128h-768zm0-384h768v128h-768z"/>
+      <path fill="#fff" d="M-128 128h768v256h-768z"/>
+    </g>
+    <path fill="#007900" d="M252.1 130c-7.8 15.5-13 15.5-26 26-5.2 5.1-13 7.7-2.6 13-10.5 5.1-15.7 7.7-20.9 18.1l2.6 2.6s10-4.8 10.4-2.6c1.8 2.1-13 10-14.9 11.3l-11 7c-13.1 10.3-21 7.7-28.7 23.3l26-2.6c5.2 18.2-13 20.8-26 28.6l-20.9 13c5.3 18.2 20.9 7.8 33.9 2.6l2.6 2.6v5.2l-26 13s-30.8 17.6-31.3 18.2c-.2 1 0 5.2 0 5.2 10.4 2.6 26 5.2 36.5 0 13-5.2 15.6-10.4 31.2-10.4a100.6 100.6 0 01-52 20.8v10.4c15.6 0 26 0 39-2.6l33.8-10.4c7.8 0 15.7 7.8 13 15.6-7.7 28.6-39 23.4-49.4 46.8L213 369c10.4-5.2 20.8-10.3 33.8-7.7 15.6 5.2 15.6 15.6 36.4 20.8l-5.2-13c5.2 2.6 10.4 2.6 15.7 5.2 13 5.2 15.6 10.4 31.2 7.8-13-15.6-15.6-13-26-23.4-10.4-15.6-15.7-39 0-41.6l18.2 5.2c18.2 2.6 18.2-2.6 44.2 7.8 15.7 5.2 20.9 13 39 7.8-7.7-18.2-36.3-31.2-54.6-36.4 20.9-13 15.6 5.2 44.3-2.6v-5.2C369.3 278 361.4 265 332.8 265l44.3-5.2v-5.2s-43.7-11.4-44.7-11.9c.3-1.3 1.4-3.3 4.3-4.5 8.3 5.4 33.3 4.8 34.8 4.7-.8-6.4-12.7-11.7-23-16.9 0 0-44.7-27.5-44.9-29.9.9-7 18.3 1.1 37 6.5-5.2-10.4-15.6-15.6-26-18.2l15.6-2.6c-10.4-23.4-36.4-20.8-52-31.2-10.5-7.8-10.5-13-26.1-20.7z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="3.2" d="M224 303c1.9-6.1 4.4-11.6-7.2-16.9-11.6-5.3 5.8 21.1 7.2 17zm13.7-12.3c-2.3.3-3.6 8.8 1.1 11.2 5.2.8 1-11.1-1.1-11.2zm13.5-1c-2.4.8-2.5 12.8 6 10.6 8.6-2.1 0-11.5-6-10.5zM267 259c1.8-3-.1-15-7.4-10-7.4 5.1 5 10.8 7.4 10zm-16-10c2.3-.9 2.5-8.3-4-6.3-6.3 1.9 2.3 7.8 4 6.3zm-14.4 2.9s-4.5-6.2-8-4.9c-4.3 4.2 8.3 5 8 4.9zM187 271.7c1.9.2 16-2.3 20.9-7.8 4.9-5.5-25.1 2.3-25.1 2.4 0 .1 2.8 4.9 4.2 5.4zm141.1-35c.7-1.3-7.5-7.1-12.4-4.8-1.3 4.3 12.4 5.7 12.4 4.8zm-27.8-14c1.6-2.2-3.5-11.3-13.7-6.2-10.2 5 10.7 9.8 13.7 6.3zm-32.1-5.3s2.5-8.2 8.6-6.6c7 5.3-8.3 6.9-8.6 6.6zm-6-6.2c-1-2.3-7.3-1-14.6 3.9-7.4 4.7 16.8 1.4 14.6-4zm18.7-22.1s6.5-3 8.5 0c2.7 4.3-8.6 0-8.5 0zm-5.5-2.9c-1.3-2.6-8.5-2.9-8.3 1-1.2 3 9.4 2.4 8.3-1zm-17.2 0c-.7-1.5-11 0-14 6.2 5 2.4 16.3-2.3 14-6.2zm-22 6.3s-13.4 8.3-14.3 14.3c.4 5.2 16.8-9.4 16.8-9.4s1.4-5.8-2.4-4.9zm-14.9-7.5c.4-1.7 6.7-5.6 7.2-5.3.5 1.7-5.1 6.3-7.2 5.3zm4.3 31.6c.3-2.5-16-2.3-9.9 5.2 5.2 6.3 11-4.1 9.9-5.2zm-15 10.7c-.8-1.6-2-6-4.2-6.4-1.9 0-11.7 2-12.5 3.6-.4 1.3 4.1 9.4 5.6 9.6 1.8.7 10.9-6 11.2-6.8zm88.4 55.2c.5-1.8 17.3-7.5 23-2 6.8 9.3-23.4 5-23 2zm46 10.9c3.7-6.2-11.3-13.6-17.6-6.5 2.2 8.5 14.6 11.6 17.6 6.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lc.svg
new file mode 100644
index 0000000..8ba746c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lc.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lc" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#65cfff" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M318.9 42l162.7 395.3-322.6.9L318.9 42z"/>
+    <path d="M319 96.5l140.8 340-279 .8L319 96.5z"/>
+    <path fill="#ffce00" d="M318.9 240.1l162.7 197.6-322.6.5 159.9-198.1z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/li.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/li.svg
new file mode 100644
index 0000000..6b4160c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/li.svg
@@ -0,0 +1,43 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-li" viewBox="0 0 640 480">
+  <path fill="#002b7f" d="M0 0h640v240H0z"/>
+  <path fill="#ce1126" d="M0 240h640v240H0z"/>
+  <g fill="#ffd83d" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" transform="scale(.8)">
+    <g id="a">
+      <path stroke="none" d="M216.4 122.3l-1.9 62.5h-63.4c-7.8-15.2-14.2-28-14.2-45.5 0-14.6 11.5-26.2 28-26.2 17.5 0 36.8 5.9 51.5 9.2z"/>
+      <g stroke-width="1.5">
+        <path d="M144.5 125.2v36m5-39.7v48m5.2-50.5v57.2m5-58.4v44.9m5.1-45.1v45.3m5.1-47v47m5.1-47v47m5.1-46.5v47m5.1-46.5v46.9m5.1-44v47m5-46.5v52.9m5.2-52.9v47m5-47v47"/>
+        <path fill="#000" d="M176.4 118c10.8 1.7 34.4 12.8 31.7 27.7-3.8 21.2-16.2 12.7-32.6 9.7l-12.4 4.1c-4.5 4.5-11 8.7-15.4 3.2h-7.4v28.8h81.4V122z"/>
+      </g>
+      <circle cx="212.8" cy="113" r="4.9"/>
+      <circle cx="201.7" cy="110.3" r="4.9"/>
+      <circle cx="190.4" cy="107.5" r="4.9"/>
+      <circle cx="179.1" cy="105.6" r="4.9"/>
+      <circle cx="167.8" cy="104.5" r="4.9"/>
+      <circle cx="156.8" cy="105.1" r="4.9"/>
+      <circle cx="146.2" cy="108.7" r="4.9"/>
+      <circle cx="137.3" cy="115.3" r="4.9"/>
+      <circle cx="131" cy="124.4" r="4.9"/>
+      <circle cx="127.9" cy="135.2" r="4.9"/>
+      <circle cx="128" cy="146.3" r="4.9"/>
+      <circle cx="130.2" cy="157.2" r="4.9"/>
+      <path d="M215 119.5l-.5 6.5c-12.3-2-29.7-8.8-46-8.8-15 0-26.6 6-26.6 21.2 0 14.9 6.3 28.5 14.7 42.3l-8.7 4c-7.8-15-14.3-28-14.3-45.4 0-14.6 11.5-29 31.3-29 17.5 0 35.4 6 50.1 9.2z"/>
+    </g>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 444 0)" xlink:href="#a"/>
+    <path d="M222 53.1l-5.2 9.7 5.2 9.6 5.1-9.6L222 53zm0 24.4l-5.2 9.6 5.2 9.7 5-9.8-5.1-9.6zM203.6 75l8.1 5.1 8.1-5.1-8-5.2-8.2 5.2zm20.5 0l8.1 5.1 8.2-5.1-8.2-5.2-8 5.2z"/>
+    <circle cx="222" cy="75.1" r="3.9"/>
+    <circle cx="222" cy="100" r="10.5"/>
+    <path fill="none" stroke-width="1.5" d="M219.3 89.9v6.6a62.5 62.5 0 00-7.4.8m20.2 0a62.1 62.1 0 00-7.5-.8v-6.6m-12.8 12.7a61.4 61.4 0 0110.2-.9c3.4 0 6.8.3 10 .9"/>
+    <path d="M211.8 117.7c-1 17-3 34.5-9.7 47.1l10.8-4.4c3.8-14.3 4.6-32.8 5.7-41.6l-6.8-1.1zm20.4 0l-6.9 1.1c1.2 8.8 2 27.3 5.7 41.6l10.8 4.4c-6.6-12.6-8.6-30-9.6-47.1z"/>
+    <path d="M222 154.7c-13 0-22.5 6-23 21.6-3.2-5.6-16.5-23-29-20.7-7.4 1.4-14 11.7-12.8 23.4-6.2-17.6-24.1-20.5-37.3-10 11.7 9.5 16.9 37.8 26.7 50h150.7c9.8-12.2 15-40.5 26.7-50-13.1-10.5-31.1-7.6-37.2 10 1-11.7-5.5-22-13-23.4-12.4-2.3-25.7 15.1-28.9 20.7-.5-15.5-10-21.6-23-21.6z"/>
+    <g stroke-width="1.5">
+      <path fill="#000" d="M297.1 219c0 5.6-33.6 11.7-75.1 11.7s-75.2-6-75.2-11.7c0-5.5 33.7-8.5 75.2-8.5 41.4 0 75.1 3 75.1 8.5z"/>
+      <circle cx="222" cy="114.4" r="3.5"/>
+      <circle cx="222" cy="122" r="3.7"/>
+      <circle cx="222" cy="130.2" r="4.1"/>
+      <circle cx="222" cy="139.3" r="4.7"/>
+      <circle cx="222" cy="149.4" r="5.1"/>
+      <path fill="#000" stroke="none" d="M220 159.2c-.6 0-1.1.5-1 1.4l.6 4.3c.2 1.5 1 1 1.3 0 .2-1.2.1-2 .2-4.1 0-1.1-.6-1.6-1.2-1.6zm4 0c-.6 0-1.1.5-1.1 1.6 0 2.1 0 2.9.2 4 .2 1.2 1 1.6 1.3 0l.5-4.2c.2-1-.4-1.4-.9-1.4zm-7.7.6a1 1 0 00-1 1c0 1 .3 2.3.4 3.8.2 1.5 1.3 1 1.4 0 0-.8.2-2.2 0-3.9 0-.6-.2-.9-.6-1a.8.8 0 00-.2 0zm11.1 0c-.3 0-.6.3-.7 1a20.1 20.1 0 00.2 3.8c0 1 1.2 1.5 1.3 0 0-1.5.4-2.7.4-3.7 0-.6-.5-1-1-1.1a.8.8 0 00-.2 0zm-15.4 1.7c-.5.1-1 .7-.8 1.3.3 1.3.6 2.7.6 4 0 1.1.9.7 1 0a59.8 59.8 0 00.1-4c0-1-.5-1.4-1-1.3zm19.6 0c-.3.1-.6.5-.6 1.3l.2 4c0 .7 1 1.1 1 0 0-1.3.2-2.7.5-4 .2-.6-.3-1.2-.7-1.3a.6.6 0 00-.3 0zm-59 .2c-.6 0-1 .7-.6 1.5.6 1.4 1.3 2.2 1.9 3.6.5 1.3 1.4.5 1.1-.4l-1.4-3.7c-.3-.7-.7-1-1-1zm98.8 0c-.4 0-.7.3-1 1-.9 1.9-1.2 2.8-1.5 3.7-.2 1 .6 1.7 1.2.4l1.8-3.6c.4-.8 0-1.5-.5-1.5zm-94.8 0c-.5.2-.7.7-.5 1.3.6 1.2 1.3 2.5 1.8 3.8.4 1.1 1.4.8 1-.2l-1-3.7c-.4-1-1-1.3-1.3-1.2zm90.5 0c-.4.1-.8.5-1 1.2-.7 2-.8 2.6-1.1 3.7-.4 1 .6 1.3 1 .2l1.8-3.8c.2-.6 0-1.1-.4-1.3a.6.6 0 00-.3 0zm-85.5 1c-.6.1-1 .9-.6 1.9.4 1.2 1 2.3 1.6 3.7.6 1.4 1.5 1.1 1.3.2-.3-.9-.5-2.3-1.2-4.5-.3-1-.7-1.4-1.1-1.3zm80.8 0c-.4 0-.9.3-1.2 1.3-.6 2.2-1 3.6-1.1 4.5-.3 1 .7 1.2 1.2-.2.6-1.4 1.2-2.5 1.6-3.7.4-1 0-1.8-.5-1.9zm-93.2.7c-.6 0-1 1-.7 1.7.5 1 .9 1.4 1.4 2.6.6 1.2 1.2.3 1-.5-.3-.8-.6-1.7-.8-2.8-.2-.8-.6-1-1-1zm105.6 0c-.4 0-.7.2-1 1l-.7 2.8c-.2.8.4 1.7 1 .5.5-1.2.8-1.5 1.4-2.6.3-.7-.2-1.6-.7-1.7zm-67 2.8c-.7 0-1.3.8-1 1.5.2 1.2.8 2.2 1.1 3.7.4 1.3 1.3.7 1.2-.2a28.7 28.7 0 00-.5-4c-.2-.7-.5-1-.9-1zm28.4 0c-.3 0-.7.3-.8 1a28.7 28.7 0 00-.6 4c0 .9.9 1.5 1.2.2l1.2-3.7c.2-.7-.4-1.5-1-1.5zm-14.2 1.2c-.8 0-.9 1-.9 1.7a12.3 12.3 0 01-2 6.4c-1 1.2-2.3.9-3.5.2a22.3 22.3 0 01-3.3-2.2c-1.4-1-2.4-.4-.8 1.9 4.6 6.6 9.6 12.2 9.6 23 0 1.3.3 1.7.9 1.7s.8-.4.8-1.8c0-10.7 5-16.3 9.6-23 1.6-2.2.6-2.8-.7-1.8a21 21 0 01-3.3 2.2c-1.3.7-2.6 1-3.5-.2a12.3 12.3 0 01-2-6.4c-.1-.7-.2-1.7-1-1.7zm-35.3-1.6a.6.6 0 00-.2 0c-.3.1-.4.4-.3 1l1.1 3.9c.3 1 1.4.7 1.2-.5l-.6-3.1c-.2-.8-.8-1.3-1.2-1.3zm70.6 0c-.5 0-1 .5-1.2 1.3-.4 1.4-.4 1.8-.6 3-.3 1.3.9 1.5 1.1.6l1.2-4c0-.5-.1-.8-.4-.9a.6.6 0 00-.2 0zm-91.6.4c-.6 0-1 .8-.4 1.8.6 1.2 1.7 2.6 2.2 3.5.5.8 1.4.2.8-.8-.6-1-.8-2.3-1.6-3.8a1 1 0 00-1-.7zm112.5 0c-.3 0-.7.2-1 .7-.7 1.5-1 2.7-1.5 3.8-.6 1 .2 1.6.7.8.5-.9 1.6-2.3 2.2-3.5.6-1 .2-1.8-.4-1.8zM134 169.5c-.6 0-.8 1.2-.2 2a19.2 19.2 0 002.6 2.7c.8.8 1-.2.6-1l-1.8-2.7c-.5-.7-.9-1-1.2-1zm175.9 0c-.3 0-.7.3-1.1 1l-1.9 2.7c-.4.8-.2 1.8.7 1a19 19 0 002.6-2.7c.6-.8.4-2-.3-2zm-170.8 1c-.6 0-1 .4-.5 1.3l1.9 3.8c.5 1 2 1.3 1.4-.2l-1.3-3.8c-.3-.7-1-1-1.5-1zm165.8 0c-.6 0-1.3.4-1.6 1.1l-1.2 3.8c-.6 1.5.9 1.2 1.4.2.5-1 1.3-2.5 1.8-3.8.5-.9.1-1.3-.4-1.3zm-175.6.4c-.8 0-.8.7-.1 1.2.9.7 2 1.4 3 2.3 1.3 1 1.7 0 1-.8-.6-.8-1.2-1.6-2.9-2.5-.4-.2-.7-.2-1-.2zm185.3 0c-.2 0-.6 0-1 .2-1.6.9-2.3 1.7-3 2.5-.6.9-.1 1.8 1.1.8 1-.9 2.2-1.6 3-2.3.8-.5.7-1.2 0-1.2zm-109.6.7c-.5 0-.8.5-.7 1.2l1 3.6c.2 1.1 1.5 1.1 1.3 0-.2-1-.3-2.3-.7-3.9-.1-.6-.4-.9-.8-1a.6.6 0 00-.1 0zm33.8 0c-.3 0-.6.3-.8 1-.4 1.5-.5 2.8-.7 3.9-.2 1 1.1 1 1.3-.1l1-3.6c.2-.7-.2-1.2-.6-1.2a.6.6 0 00-.2 0zm-64-2c-.3 0-.5.7-.2 1.7a26 26 0 011.6 9c-.3 1.2-1 1.3-1.9 1a18.8 18.8 0 01-2.8-1.7c-.8-.5-1.7.1-.5 1.1 6 5 10.3 10.7 12 17.6.2 1.4 1.1 1.6.9 0-1.4-8.7-1.7-15.9.4-20.3.8-1.7 0-3.3-1.2-.6-.9 1.8-2.2 2.5-3.3 1a47.9 47.9 0 01-4-7.7c-.2-.7-.5-1-.8-1.1a.3.3 0 00-.1 0zm94.1 0c-.3 0-.6.4-.8 1-.7 2-2.9 6.2-4 7.8s-2.4.8-3.2-1c-1.3-2.7-2-1.1-1.3.6 2.1 4.4 1.8 11.6.5 20.3-.3 1.6.6 1.4 1 0a32.4 32.4 0 0111.8-17.6c1.2-1 .3-1.6-.5-1a18 18 0 01-2.8 1.5c-1 .4-1.6.3-1.9-1-.2-1.2.2-3.9 1.7-9 .2-.8 0-1.5-.3-1.6a.3.3 0 00-.2 0zM144.4 172c-.5 0-1 .4-.7 1.2.4 1.4 1.2 2.8 1.5 3.6.3.9 1.2.5 1-.7l-.5-3.1c0-.6-.7-1-1.3-1zm155.1 0c-.6 0-1.2.4-1.3 1l-.4 3.1c-.2 1.2.7 1.6 1 .7.2-.8 1-2.2 1.4-3.6.3-.8-.1-1.2-.7-1.2zm-136.3-1.7c-.6-.1-.7 1.5-.2 2.2l2.8 3.1c.8 1 1.3.1.8-.7l-2.6-3.8c-.3-.5-.6-.8-.8-.8zm117.5 0c-.2 0-.5.3-.8.8l-2.6 3.8c-.5.8 0 1.7.9.7l2.7-3.1c.5-.7.5-2.3-.2-2.2zm-132 4c-.4 0-.7.2-.5 1 .2 1.2.5 2 .8 3.1.3 1 1 .9 1-.1l-.3-3.2a1.1 1.1 0 00-1-.9zm146.5 0a1 1 0 00-1 .8l-.3 3.2c0 1 .8 1.2 1 .1l.9-3c.2-.9-.2-1.2-.6-1.2zm-133.4 1.4c-.6 0-1.1.7-.4 1.6 1.1 1.5 2.4 2.5 2.9 3 .4.6 1.5.4.8-.7l-2.3-3.5c-.2-.4-.6-.5-1-.4zm120 0c-.2 0-.5.1-.6.4l-2.4 3.5c-.7 1.1.4 1.3.9.8.4-.6 1.7-1.6 2.9-3.1.7-1 .1-1.6-.5-1.6a.9.9 0 00-.2 0zm-140.7 4.1c-.4 0-.6.4 0 1.3a17 17 0 013.3 6.4c.1 1.4-.5 1.4-1.1 1.4-1.9 0-2.8-1.4-4.4-1.8-1.7-.3-2 .5-.8 1.4a53.4 53.4 0 0114.7 13.8c1 1.9 2.3 2.5 1.6.8a23.7 23.7 0 01-2.4-12.6c.5-2.8 1.2-4.6 1.1-6.2 0-1.5-1-1.4-1.3 0l-1 2.8c-.4.5-1.8.8-3-.9a48 48 0 00-5.6-5.8c-.3-.3-.7-.5-1-.6zm161.7 0c-.3 0-.7.2-1.1.6a48.2 48.2 0 00-5.5 5.8c-1.3 1.7-2.7 1.4-3 1a12 12 0 01-1-2.9c-.4-1.4-1.3-1.5-1.4 0 0 1.6.6 3.4 1.1 6.2s0 7.2-2.3 12.6c-.8 1.7.6 1 1.6-.8a53 53 0 0114.6-13.8c1.2-.9 1-1.7-.7-1.4-1.7.4-2.6 1.8-4.4 1.8-.6 0-1.3 0-1.2-1.4.1-1.3 1.8-4.4 3.3-6.4.6-1 .5-1.3 0-1.3z"/>
+      <path d="M150.1 212.7l2 6.1m2-7.3l1.8 6.2m2.6-7l1.2 6.4m2.8-7.1l1.3 6.3m3.8-6.8l1 6.4m4.5-6.4l1.1 6.3m4.3-8.1l.8 6.4m4.2-6.1l.8 6.4m4.1-7l.8 6.4m4-7l.5 6.5m4.8-6.5l.4 6.5m4.4-6.8l.3 6.5m4.9-6.8l.3 6.4m5.7-6.6l.3 6.5m79 .2l-2 6.1m-2-7.3l-1.7 6.2m-2.6-7l-1.2 6.4m-2.8-7.1l-1.3 6.3m-4-6.8l-1 6.4m-4.4-6.4l-1.1 6.4m-4.2-8.2l-.8 6.4m-4.3-6.1l-.8 6.4m-4-7l-.9 6.4m-4-7l-.5 6.5m-4.8-6.5l-.4 6.5m-4.3-6.8l-.3 6.5m-5-6.8l-.2 6.4m-5.8-6.6l-.2 6.5m-7.2-7v7.2"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lk.svg
new file mode 100644
index 0000000..4a377f1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lk.svg
@@ -0,0 +1,22 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-lk" viewBox="0 0 640 480">
+  <path fill="#ffb700" d="M0 0h640v480H0z"/>
+  <path fill="#ff5b00" d="M26.7 240l88-213.3h88v426.6h-88z"/>
+  <path fill="#005641" d="M26.7 26.7h88v426.6h-88z"/>
+  <path fill="#8d2029" d="M229.3 26.7H616v426.6H229.3z"/>
+  <path id="a" fill="#ffb700" stroke="#000" stroke-width="1.1" d="M579.3 408.6s3.6 7.3 7.6 10.4c6 4.4 18 4 23.3 9.3 6.1 6.1-.5 14.2-.5 15l.4 4.2s-4.2 0-6 .3c-2.6.4-3.6 2.6-8.6 2.3-12.3-.8-11.8-12-12.5-21.5-.6-3.6-2-8.4-2.9-12-.7-3-.8-8-.8-8z"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 845.3 0)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="matrix(1 0 0 -1 0 480)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="rotate(180 422.7 240)" xlink:href="#a"/>
+  <g transform="translate(0 -76)">
+    <use width="100%" height="100%" stroke="#000" stroke-width="5.6" xlink:href="#b"/>
+    <g id="b" fill="#ffb700">
+      <path d="M363.5 415.8l2.3-1.4 1 1.4c1.3 1.8 5 1.7 7.4 0l1.9-1.5 1.6 1.4c2 1.9 5.8 1.9 8.3 0 1.7-1.2 2-1.3 3-.3.7.6 2.7 1.2 4.4 1.5 3.2.4 3.2.4 5-2.4 1.6-2.3 1.8-3.2 1.5-5.5a59.4 59.4 0 01-.6-5.3c-.2-2.6-.1-2.6 3.6-4a50.5 50.5 0 005.4-2c1.5-.9 5.7-5.8 5.7-6.8 0-.2-1.6-.6-3.6-.8-8-1-9.3-5.2-4.1-13 8.3-13 13.4-25.5 13.4-33.4 0-3.6.3-4.8.7-4 1.9 3.1-1.5 16.4-6.5 26l-2 3.8 1.9-.4c1-.3 7.4-3 14-6 18.2-8.2 24.4-9.8 36.2-9.3 9.9.4 14 2.3 21 9.6 3.7 4 7.3 6.7 13.8 10.8 13.8 8.6 14.4 9.4 15.1 19.6.7 10.3.3 10.9-7.5 12.6-6.7 1.5-10.9 4.6-12 9-.6 2.2.7 2.3 4 .1l2.5-1.6 1.1 1.6c1.5 2.1 4.5 2.1 7 0l2-1.5 2 1.5c3 2.5 7 1.9 8.2-1.2.2-.5.8-.4 2 .7 2.3 2 8 2.8 8.6 1.2.2-.6-.2-2-1-3.2-3.3-5-4.4-7.3-4.4-10 0-3.8 1-5.7 5.4-8.7 5.2-3.8 6.8-8.6 2.8-8.6-2.4 0-4.9-2.2-6.5-5.7-3.2-7.2-2.5-15.2 2.3-28.6a57.6 57.6 0 005.4-25.2c0-7.4-.2-8.6-1.8-12.7a45.4 45.4 0 00-4.6-8.1l-2.8-3.7 3.5-3c10.8-8.9 8.6-23.5-4.4-29.1-4-1.8-5-1.9-12-1.9-4 0-10.5.6-14 1.3a98.2 98.2 0 01-14.2 1.2c-6.8 0-8-.2-10.6-1.6-2.7-1.4-3.2-2.1-3.7-5.5a2 2 0 00-1.1-1.5c-1-.3-5.2 3.4-5.8 5-.4.9-.6.8-1.5-.3a13.4 13.4 0 01-2-3.6c-1-3.3.3-5.7 4.2-7.6l3-1.4-1.8-1.1c-3.6-2.3-9.8-.7-12 3-.7 1-1.4 2-1.6 2-.2 0-1.4-1-2.6-2.3-4.7-4.6-3.1-11.4 3.2-13.4 3.3-1.1 6.3-.3 6.9 2 1 3.3 3.8-1.1 3.3-5.2-.3-2.7-.3-2.8 1.6-2.8 2.6 0 8 3.4 9.8 6 2 3.1 1.8 8-.4 11.6l-1.7 2.8 2.3-.4c3.2-.7 6.4-2.7 8-5.2a12 12 0 00.4-10.4c-1.5-2.7-1.3-3.1.9-2.2 3.6 1.5 5.6 3.2 7 6.1 1.4 2.6 1.5 3.2.8 6a17 17 0 01-2.2 4.8c-1.2 1.6-1.3 1.9-.3 1.9 1.8 0 5.4-1.7 6.7-3 .7-.8 1.7-2.5 2.2-4l1-2.5 1 2c1.5 2.7 4.5 5.2 8.1 6.8 3.9 1.6 5.5 1.7 3.5.2-1.4-1-4-8.5-3.1-9.2a51 51 0 0111.7 9c5.7 5.1 9.3 6.8 14.5 6.8 6.7 0 10.6-5.8 7.6-11.3-1.7-3.2-5.6-3.7-8-1-1 1.3-1.3 2.3-1 3.7.4 1.6.3 1.8-1.2 1.8-2 0-5.8-2.5-12.6-8.2a102 102 0 00-32.1-18.7 70.4 70.4 0 00-24.3-1.3c-6.4 1.2-14 4.9-18.2 8.8-7.3 7-7.4 16.3-.3 24.8l2 2.4-1.3 2.2a9.3 9.3 0 00.4 10.4c1 1.4 2 2.5 2.3 2.5.2 0 .4-.9.5-2 .2-2.7 1.4-4.5 3.4-5.2 1.8-.7 3-.3 11.2 3 8.7 3.4 23 3.6 38.2.6a42.6 42.6 0 0120 .2c7.2 3 8.8 10.7 3.6 16.5-2.3 2.6-4.4 3.6-11.7 5.6a54.3 54.3 0 01-19.5 1.5c-10.8-.1-14.7.1-19 1-4.9 1-7.8 1.1-21.8.8l-16.3-.4 1.8 1.4a22 22 0 003.1 2.3c1.3.7 1.2.8-.6 1.5-1 .4-3.4.7-5.3.7h-3.3l-.4 2.8a10 10 0 000 4c.4 1 .2 1.2-.8.8-.7-.3-2.6-.8-4.3-1.1a26.7 26.7 0 01-5-1.6c-1.9-1-2.1-1-2.8.3-.6 1-6.2 5.2-7 5.2a26.7 26.7 0 00-2.2-7.5c-1-2.1-1.9-4.5-2.2-5.2-.3-1.1-.5-1.2-1-.3-.3.5-.7 2-1 3.2a15.5 15.5 0 01-1.8 4.6l-1.5 2.2-1-1.9c-1-2-2.6-4.2-3.2-4.2-.2 0-.5.6-.7 1.5-.5 1.6-4.4 6.3-5.4 6.3-.3 0-.6-1.3-.6-3 0-1.5-.3-2.9-.7-2.9-.4 0-.7.5-.7 1 0 1.2-3.3 5-4.5 5-.4 0-1.2.4-1.7 1-1.2 1.3-2.2 1.1-1.7-.4a9 9 0 00-.4-3.8l-1-3.2c-.2-.5-1.4-.3-4 .5-4 1.3-5.4 1-3.3-.6.8-.6 2-2.7 2.6-4.6.7-2 1.7-3.7 2.2-3.9.7-.2.7 0-.2 1.2a5.7 5.7 0 00-1.1 2.6c0 .5-.5 1.8-1 2.9-.6 1-1 2-.9 2.1s1.7-.5 3.5-1.3l3.2-1.6v1.4c0 .8.4 2.8.9 4.5l.9 3 2.2-1c2.2-1 4.3-4.6 4.3-7.5 0-1.4.8-1.2 1.2.3 0 .4.6 2.1 1 3.7l1 2.8 1.5-1.8c.9-1 1.9-3 2.3-4.3.8-2.4 2-3.5 2-1.7 0 1.2 3.4 5.8 4 5.4.4-.2 1-1.9 1.5-3.8 1-4 2.5-6.6 3.5-6 .4.2.5.6.3 1-.2.2.6 2.8 1.8 5.6a2557.7 2557.7 0 012.6 6.3c.4 1 .8 1 3.3-1.3 1.5-1.4 3-2.9 3.1-3.4.3-.8.6-.7 2 .2a25 25 0 009.5 2.8c.2-.2.4-2 .4-4l.1-3.7 2 .4c1 .3 3.3.3 5 0l3-.4-2.7-2c-1.5-1-3-2.3-3.4-2.9-.3-.6-1.7-1.2-3.2-1.3-4.1-.4-11.4-4.4-11.4-6.4 0-.4 1 .3 2.2 1.4 2.8 2.5 6.6 4 10 4h2.4l-1.5-2a11.9 11.9 0 01-2-5.2c-.2-3-.5-3.4-3.6-5.5a35.2 35.2 0 01-5-4.3l-1.7-1.9-.9 2.3c-.5 1.3-1 2.3-1.3 2.3-.2 0-1.2-.8-2-1.7a7 7 0 00-2-1.6c-.3 0-1 1.2-1.8 2.7l-1.4 2.7-1-1.5a23.8 23.8 0 00-3-3.4c-1.2-1-1.7-1.8-1.3-1.8.4 0 1.7 1 3 2.3l2.2 2.3 1-1.7a6 6 0 00.5-3.8c-.4-1.8-.3-1.9.3-.7a16 16 0 003 3l2.2 1.8 1.5-2.7c1.5-2.8 1.5-2.8 2.1-1.1 1 2.1 7.5 7.5 13 10.6 1 .5.6-1.1-1-5a12.7 12.7 0 01-.8-4c0-1.8-.5-2.6-2.8-4.4a10.9 10.9 0 01-5-8.4c-.3-1.7-.9-3.5-1.4-4.1-.6-1-.8-.4-.6 2.6.2 2.1-.1 4.7-.6 5.8l-.8 2-.6-1.7c-.4-.9-2-2.5-3.5-3.5s-2.6-2-2.4-2.2c.2-.2 1.8.7 3.5 2 2.7 2.1 3.2 2.3 3.6 1.4.4-1 0-5.6-.8-8.8-.4-1.6-.4-1.6 1.6.4 1.4 1.4 2.2 3.2 2.9 6.2.8 3.8 1.2 4.5 4.7 7.6 2.1 1.9 4 3.3 4.1 3.2.2-.2.4-5 .6-10.8.4-11.1 0-13.8-2.7-17.2l-1.4-1.8 2.2-2.3a16 16 0 004.7-8.8l.4-2.7-2.4 2.3c-2 1.9-3 2.3-5.3 2.3s-3.2-.4-4.7-2a20 20 0 00-8.3-4.8c-1.2-.4-1.6-.2-1.6.6 0 .6-.6 2.2-1.4 3.7l-1.4 2.6-3-3c-1.9-1.7-4-3.2-5.7-3.6-4.1-1-4.3-1-4.3 2.1 0 4.7-2 5.6-5.6 2.5-2.8-2.4-5-3-10.3-2.3l-4 .4.7 1.8c.6 1.5.5 2.2-.8 3.9-2.1 2.8-4.8 4-9 4-2 0-4.4.4-5.4.9s-3.6 1-5.7 1.2c-2 .2-4.3.6-5 .8-1 .4-1 0-.7-2.2.5-3.4-2-6-5.7-6-4.9 0-7.1 4.4-5.2 10.2a44.6 44.6 0 011 3.8 23 23 0 005.2 6.6c2.6 2.6 5 5.3 5.4 6a9 9 0 003 2.5l2.2 1.2-.3-2.4c-.3-2.6.2-3 1.6-1.1.5.6 1.8 1.7 2.8 2.3 1.7 1 2 1 2 .2 0-.6.3-1.9.7-2.9l.7-1.8 1.3 2.5c.7 1.4 3 4.5 5.1 7 4.1 4.7 6.7 10 5.4 11.2-.6.5-2 .5-5-.1-2.2-.4-5-.7-6.2-.5-2.3.3-2.5 0-1-1.8 1.5-2 1.2-2.3-1.8-2.3-3.5 0-12.2-1.7-15.6-3-3.2-1.3-4-1-5 2.1l-1.7 5.6-1 3 3.6-.3a37 37 0 005.5-1 6 6 0 012.2-.3c.2.1-.3 1.3-1 2.7l-1.4 2.4 2.2-.4c1.2-.3 3-.9 4-1.4 1.8-.8 2-.8 3.4 1.5 1.7 2.7 3 2.6 3.3-.3.3-3 1.3-2.6 3.2 1.4 1.8 3.8 3.6 5.2 4 3 .1-.8 1-2 2.1-2.8 2.2-1.5 3.8-1 4.7 1.3 1 2.5-1.2 5-7.4 8.8a43 43 0 00-21.7 31c-1.9 11.8 4 24 15.6 32.9 5.6 4.2 14.5 8.6 13.9 7-2.4-7.3-2.3-21 .1-23.3.4-.4.3 1-.3 3.1-2 7.9-1 14.1 4 28.7 4.4 13.2 3.8 18.9-2.6 22.6-2 1.2-3.3 1.4-8.8 1.3-6 0-6.7 0-8.6 1.6a15.7 15.7 0 00-4.3 8.6c0 1.3 1.4 1.1 4-.4z"/>
+      <path d="M460.5 415.5l2.5-1.6 1.7 1.6c2.2 2.1 4.9 2 7-.1 1-1 1.8-1.6 1.9-1.5l.9 1.6c.5.9 1.6 1.3 3.6 1.5 2.3.1 3 0 4-1.4l1-1.7 2.5 1.6c6.8 4.4 10.4-.2 7.3-9.3-1.5-4.6-.6-7.2 4.3-13 2.1-2.5 3.8-5.2 3.8-6 0-1.1-.4-1.3-3.2-1.2-2.6 0-3.4-.3-4.8-1.8-2.3-2.5-2.1-5.4.4-8.6l2-2.5-3.6-2.4a59.7 59.7 0 01-8-7.1 25.7 25.7 0 00-17.5-9l-4.7-.5v3.6c0 4.5 2.2 8.9 8 16.3 6.6 8.4 7 9.7 7.3 20.7l.3 9.3-2 1.8c-1.7 1.6-2.4 1.9-8 2.2-5.3.3-6.5.6-8 2a8.7 8.7 0 00-3.4 5.3c-.3 1.5-.2 1.8.9 1.8.7 0 2.4-.7 3.8-1.6zm-142.2-24a5.8 5.8 0 001-3c0-1 .6-1.4 3.2-1.8l3.1-.4-2-1.7c-2.5-2-2.8-3.5-.6-3.5s5.8-2.2 6.4-3.9c.3-.8 0-1.8-.4-2.3-1.2-1.4-3.5-1.2-3.9.4-.5 1.6-1.2 1.6-3 0-2.5-2.5-2.6-7.6 0-10.6 1.1-1.4 1.1-1.4-.4-2.9-1.6-1.6-2.8-4.6-2-5.4.2-.2 1.5 0 2.8.5 2 .6 2.7.6 3.5 0 2.3-1.9-.2-4.3-4-3.7-1.6.2-2.2 0-2.4-.8-.2-.6-1.5-1.4-3-1.8-2.7-.7-2.7-.7-2.7 1.2 0 2-1.2 2.4-3.4 1.1-1.8-1-3.5-.2-3.5 1.7 0 1.8 1.7 2.6 5 2.4 2.4-.1 2.5 1.7.2 4.3l-1.7 2 1.3 1.9c2 2.8 1.8 7.5-.3 9.9l-1.7 1.8-1.1-1.5c-1.6-2-3.7-1.9-4.3.3-.3 1.4 0 2 1.8 3.6 1.2 1 3 1.8 3.9 1.8 2.3 0 2.2 1.9-.2 3.7l-2 1.5 3 .4c1.6.3 3 .7 3 1 0 1.3 2 5.2 2.6 5.2.4 0 1.2-.7 1.8-1.5z"/>
+      <path d="M356.5 374.9c2.7-1 8.5-6 8.5-7.1 0-.4-1.6-2.2-3.6-4-4-3.6-8.5-9.9-9.7-13.5-.6-2-3.5-5.2-11.7-13.2l-10.9-10.5-3.1.8c-1.8.4-3.9.8-4.7.8-1.5 0-1.5 0 .5 1.6l2 1.6 3-1.6c2.7-1.6 2.8-1.6 3.1-.3.2.7-.2 2-1 2.9-.7.9-1.1 2-1 2.3.3.3-.4 1-1.5 1.6-2 1-3.5 4.3-1.9 4.3 1.5 0 4.7-4 4.3-5.3-.2-.7 0-1.4.2-1.6 1.3-.7 1.2 2.4 0 4-.8.8-1.2 1.8-1 2.2.2.3-.5 1-1.6 1.6-2 1-3.5 4.3-1.9 4.3s4.7-3.8 4.4-5.2c-.2-.7-.2-1.5.1-1.7.9-.4 1.3 2 .6 3.2a2.3 2.3 0 000 2.2c.7 1.3 0 3.7-1.3 4.5-.5.3-.2 1 1.2 2 2 1.4 2 1.6 2 8 0 5.4.2 6.8 1.2 7.7 1 1 1.2 1 1.2 0s2-2.4 3.5-2.4c.5 0 3.4 2.5 6.5 5.5s6.4 5.7 7.3 5.8l2.2.4c.3 0 1.7-.3 3.1-1zm-33.3-26.1c0-1.7-3.6-3.6-7.9-4-3.5-.5-3.5-.4-3.5 1.3 0 1.4.5 2 3 3 3.8 1.7 8.4 1.5 8.4-.3z"/>
+      <path d="M327.1 348.6c1.8-1.6 2.6-3.4 1.5-3.4-1.2 0-4.4 2.8-4.4 4 0 1.6.6 1.5 3-.6zm-3.7-5.1c.1-1-.5-1.6-2.3-2.5-4-1.7-8.6-2.6-9.7-1.7-2.1 1.7-.7 3.9 2.6 4.3 1.4.1 3.2.5 4.1.9 2.6 1 5 .5 5.3-1zm0-5.3c.2-1.3-.7-1.8-8-4.4-5.5-2-7.9-1-6.1 2.3.6 1.1 1.6 1.6 3.9 2 1.7.2 4 .7 5.1 1.1 3 1 4.8.6 5-1zm3.6-4.9c1.1-1.1 2-2.4 2-3 0-1.5-4.3 1.3-4.9 3.3-.6 2.3.5 2.2 3-.3zm-3.6-.3c.2-1.6-2.4-3-7.6-4.1-3.9-.9-5.6-.4-5.3 1.4.2 1 1.5 1.7 5 2.8 5.9 1.8 7.6 1.8 7.9-.1zm5-7.4c6.8-3 7.3-10.5 1-12.5-2.6-.8-4.2-.3-5.2 1.4-.8 1.4-.3 3.8.7 3.8.4 0 .7.5.7 1 0 2.7-10.2 3.8-14.4 1.7-1.5-.7-2-2.7-.9-2.7 1 0 1.6-2 1.1-3.3-.6-2-2.6-2.6-5.3-1.8-6.3 1.6-6.1 9 .3 12a33.6 33.6 0 0022 .4z"/>
+      <path d="M324.3 319.8c.4-.4.2-1-.4-1.4-1.4-1.1-1.3-2.8.2-4.7 1.2-1.4 1.3-3.6 1.7-25.1.7-37.1 3.5-65 7.1-71.8 1.5-2.6 1.3-2.6-2.5 0a36 36 0 00-11.7 13.6c-6.2 11.5-8.3 27-8.3 60.2 0 18.8.1 21.3 1.2 23 1 1.8 1 2.4.4 4.2-.5 1.1-.7 2.3-.5 2.5 1.4 1.3 11.4 1 12.8-.5zm56.1-35.4c.3-.3-.2-2-1-3.6-1.2-2.6-1.7-3-3.4-3a65 65 0 01-23-6.4c-5.1-2.3-7-2.8-7.5-2.2-1.6 1.5 1 5 5 6.9a64 64 0 0018.3 3.7c2.7 0 2.8 0 1.2 2.3l-1 1.6h3l5 .6c3 .7 3 .7 3.4.1z"/>
+      <path fill="#000" d="M412 301.1c0-1-2.9-3.5-5.7-5.2-2.3-1.3-2.7-1.4-2.7-.3 0 1.6-1.4 5.7-2 5.7-.3 0-.8-.8-1-1.7-.3-1-1.4-3-2.5-4.3l-2-2.5-1.4 2.3c-1.4 2.2-3.9 4.3-5 4.3-.2 0-.3-1.2 0-2.5.1-1.6 0-2.8-.5-3-.4-.3-.8-.2-.8.2 0 .8-3.4 4.6-4 4.6-.4 0-.8-1-1-2.4l-.8-4.8c-.2-1.2.3-.4 1 2l1.6 4.1 1.6-2.5a11 11 0 001.6-3.4c0-.5.3-.7.7-.5.4.2.9 1.9 1.1 3.7l.5 3.4 1.8-2a28.8 28.8 0 002.6-3.2c.7-1.2.8-1.2 2.3 0 .8.8 2.1 2.5 2.9 3.9s1.5 2.4 1.6 2.3l.6-3.2.4-3c.1-.5 5.4 3 7.4 4.7 1.2 1.1 2.4 1.9 2.6 1.7.2-.2.4-1.8.4-3.7 0-2.8-.3-3.6-2-5.1-2-1.8-2-1.8-2.8-.5-1 1.7-2.1 1.7-2.1 0 0-1.2-3.8-5.9-4.7-5.9-.3 0-1.1 1-1.8 2.3s-1.5 2.3-1.7 2.3c-1 0-6.3-6-6.3-7 0-.8.4-.6 1.3.8a21 21 0 003.1 3.6c2 1.8 2.8 1.4 3.6-2.1.3-1 .7-1.8 1-1.8.8 0 5.4 4.9 6 6.5l.7 1.6.5-1.8c.6-2.2 1.3-2.2 2.3-.2.4.8 2.4 2.6 4.4 3.8l3.7 2.4.7-2.4c.4-1.3 1-2 1.2-1.6.4.5-.6 4.5-1.3 5.3 0 .1-1.3-.6-2.6-1.5l-2.5-1.8v3.2c0 1.7-.2 3.8-.4 4.6-.5 1.6-1.7 2-1.7.6zm-18.5-25.4c-4.4-3.6-5-4.4-5-6.2l.1-1.8.3 1.7c.2 1 1.4 2.6 2.8 3.8l2.6 2 1.5-1.8c.9-1 1.6-2.2 1.6-2.6 0-1.2.2-1.1 3.2 1.5 2.6 2.3 2.7 2.3 3 .8.3-.8.2-2.4 0-3.5-1-3-.8-3.4.5-1.6l2.4 2.8c1 1.1 1.1 1.1 1.5-.3.3-.9.5-2.4.5-3.4v-1.9l2.3 2.7c2.3 2.6 2.5 2.7 3.1 1.4.5-.7.8-2.4.8-3.7 0-1.8.2-2.2.6-1.6.8 1.2.3 4.2-1.1 6.8l-1 2-1.3-2.1c-1.7-2.6-2.3-2.6-3.3.2-1 2.7-1.7 2.9-2.7.8-.6-1.3-.8-1.1-1.2 1.7l-.5 3-3-2.3-3-2.3-1.5 1.5c-.7.9-1.3 2-1.3 2.4 0 1-.8 1-1.9 0zm39-13.6c-1.5-1.4-2.6-2.8-2.4-3 .3-.3.5-.4.6-.2a67 67 0 003 3c3.4 3.6 2.7 3.7-1.1.2zm-52-5.4c-1.4-2-1.3-3.2.5-5.4 1.2-1.5 1.8-1.7 4-1.4 1.5.1 4.6 1.4 6.9 2.8a21.2 21.2 0 0011 3l-1.7-2.8c-2.2-3.3-2.2-3.7.4-1.7 2.6 2.1 5.7 2.7 12.7 2.5l3.4-.1-2-2c-2.7-2.7-1.9-3 1.2-.3 2.8 2.5 2.7 2.7-3.4 3.3a23 23 0 01-7.6-.5c-3.4-1-3.6-.9-2.9.2.4.7 1 1.2 1.3 1.2.4 0 .7.4.7.8 0 1.3-7.4.1-11-1.6-8-4.1-9-4.5-11-3.9a4.3 4.3 0 00-2.4 2.3c-1.3 3.3 3.4 5.9 5.3 3 .6-.9.5-1.4-.5-2.5-1.4-1.4-1.2-1.6.6-1 1.3.5 1.4 3.6.2 4.8-1.3 1.3-4.5 1-5.7-.7z"/>
+      <path fill="#000" d="M412.4 248.6c-1-1-.2-1.2 4.3-1.3 5.6-.1 9-1 13-3.6 3.2-2 4.1-1.6 1 .5-2.7 2-7 3.4-11.3 3.8l-5.1.7c-.8.2-1.7.1-2-.1z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lr.svg
new file mode 100644
index 0000000..00e3629
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lr.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lr" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="lr-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#lr-a)" transform="scale(.9375)">
+    <path fill="#fff" d="M0 0h767.9v512H0z"/>
+    <path fill="#006" d="M0 0h232.7v232.8H0z"/>
+    <path fill="#c00" d="M0 464.9h767.9V512H0z"/>
+    <path fill="#c00" d="M0 465.4h767.9V512H0zm0-92.9h767.9v46.2H0zm0-93.2h766V326H0zM232.7 0h535.1v46.5H232.7zm0 186h535.1v46.8H232.7zm0-92.7h535.1v46.5H232.7z"/>
+    <path fill="#fff" d="M166.3 177.5l-50.7-31-50.4 31.3 18.7-50.9-50.3-31.4 62.3-.4 19.3-50.7L135 95h62.3l-50.1 31.7 19.1 50.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ls.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ls.svg
new file mode 100644
index 0000000..5dd5b0c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ls.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ls" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#009543" d="M0 336h640v144H0z"/>
+  <path fill="#00209f" d="M0 0h640v144H0z"/>
+  <path stroke="#000" stroke-width="1.6" d="M319.6 153c-2.7 0-5.4 3-5.4 3l.3 32.4-10.3 10.7h8.3v18.5l-49 66-7.2-2.6-12.7 27s31.3 19.6 76.7 19c49.8-.5 76.9-19.9 76.9-19.9l-13-26.6-6.5 2.8-49.6-65.6v-19.1h8.2L325.1 188v-32.2s-2.7-3-5.5-2.9z"/>
+  <path fill="none" stroke="#000" stroke-width="8" d="M336.7 230.4h-33.9s-12.2-25.9-10.3-44c2-18.4 12.6-27.1 26.6-27.3 16.6-.1 25.2 8.1 27.8 26.6 2.6 18.3-10.2 44.7-10.2 44.7z"/>
+  <path fill="#fff" d="M260.5 292.1c-.6.7-4.7 8.9-4.7 8.9l7-1.5-2.3-7.4zm4 10.5l-7.4 2.4 8.9 3.5-1.5-5.9zm3.3-10.3l3.7 10.9 9-2.6-2.3-5.2-10.4-3.1zm5.8 14.8l1.2 4.4 12 3-4.8-10.2-8.4 2.8zm13.2-9.3l4.3 10.2 9-3.5-3-4.5-10.3-2.2zm6 13.9l1.4 3.8 14 2-5.9-9.2-9.6 3.4zm13.4-11l5.2 9.1 13-4.8-1.4-3.5-16.8-.7zm7.6 12.4l2.7 4.8 16.2-.5-6-9-13 4.7zm17.1-12l4.4 7.6 10.4-5-2.8-4-12 1.4zm17 5.8l-10.3 5.1 2.7 4.5 13.8-2.2-6.2-7.4zm3.3-8l5.3 6.7 8.7-6.9-3-3-11 3.2zm15.9 3.5l-8.3 6.3 2.2 3.9 11.4-3-5.3-7.2zm11.4-13l2 2.9-5.7 8.5-5.9-7.6 9.6-3.8zm3.9 7.3l3.5 7-7 2.4-.6-3.3 4-6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lt.svg
new file mode 100644
index 0000000..36e30e9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lt.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lt" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt" transform="scale(.64143 .96773)">
+    <rect width="1063" height="708.7" fill="#006a44" rx="0" ry="0" transform="scale(.93865 .69686)"/>
+    <rect width="1063" height="236.2" y="475.6" fill="#c1272d" rx="0" ry="0" transform="scale(.93865 .69686)"/>
+    <path fill="#fdb913" d="M0 0h997.8v164.6H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lu.svg
new file mode 100644
index 0000000..bf6ca16
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lu.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lu" viewBox="0 0 640 480">
+  <path fill="#00a1de" d="M0 240h640v240H0z"/>
+  <path fill="#ed2939" d="M0 0h640v240H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lv.svg
new file mode 100644
index 0000000..efa5a32
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/lv.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-lv" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#981e32" d="M0 0h640v192H0zm0 288h640v192H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ly.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ly.svg
new file mode 100644
index 0000000..fcc2dc9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ly.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ly" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ly-a">
+      <path d="M166.7-20h666.6v500H166.7z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#ly-a)" transform="matrix(.96 0 0 .96 -160 19.2)">
+    <path fill="#239e46" d="M0-20h1000v500H0z"/>
+    <path d="M0-20h1000v375H0z"/>
+    <path fill="#e70013" d="M0-20h1000v125H0z"/>
+    <path fill="#fff" d="M544.2 185.8a54.3 54.3 0 100 88.4 62.5 62.5 0 110-88.4M530.4 230l84.1-27.3-52 71.5v-88.4l52 71.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ma.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ma.svg
new file mode 100644
index 0000000..8de4077
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ma.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ma" viewBox="0 0 640 480">
+  <path fill="#c1272d" d="M640 0H0v480h640z"/>
+  <path fill="none" stroke="#006233" stroke-width="11.7" d="M320 179.4L284.4 289l93.2-67.6H262.4l93.2 67.6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mc.svg
new file mode 100644
index 0000000..45133dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mc.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mc" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#f31830" d="M0 0h640v240H0z"/>
+    <path fill="#fff" d="M0 240h640v240H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/md.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/md.svg
new file mode 100644
index 0000000..a86be90
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/md.svg
@@ -0,0 +1,70 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-md" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#00319c" d="M0 0h213.3v480H0z"/>
+    <path fill="#ffde00" d="M213.3 0h213.4v480H213.3z"/>
+    <path fill="#de2110" d="M426.7 0H640v480H426.7z"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M360.4 320.4l24.2 35c1.4 2 2.7 3.9.7 5.2-2 1.3-1.4 6.4 0 8.4 2.7 3.9 6 4.5 8 3.2l18.4-11.6c2-1.2 2.7-4.5 0-8.4-1.5-2-6-4.5-8-3.2-2.1 1.3-3.5-.7-4.8-2.6l-24.3-35"/>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M177.2 696.3c0 24.4-9.6 44.3-21.3 44.3-11.7 0-21.3-19.9-21.3-44.3S144.3 652 156 652s21.3 19.8 21.3 44.3z" transform="matrix(.52728 -.42386 .44358 .50386 -32.4 20)"/>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width=".7" d="M262 306.1l-21.5 36.7c-1.2 2-2.4 4-4.5 3-2.1-1.2-6.6 1.7-7.8 3.8-2.4 4-1.5 7.2.7 8.4l19.2 10.2c2 1.1 5.4.2 7.8-3.8 1.1-2.2 1.4-7.3-.7-8.4-2.1-1.1-1-3.2.3-5.2l21.4-36.7"/>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="1.7" d="M331.2 280.6h-19.6c-.6.6-6.2 35.6-12.2 49-7.3 16.3-29.2 30.7-29.2 30.7s13.1 4 17 6.6c1-.3 22-4.7 24.4-30.3 2.4 25.6-14.6 37.3-14.6 37.3s24.4 7 24.4 23.3c0-16.3 24.4-23.3 24.4-23.3s-12.2-11.7-14.7-37.3c5 25.6 23.5 30 24.5 30.3 3.9-2.6 17-6.6 17-6.6s-21.9-14.4-29.2-30.7c-6-13.4-11.6-48.4-12.2-49zm-83-116.7l36.6 11.7c12.1 0 24.4-11.7 24.4-23.4.4-26-9.8-35-12.2-35l4.8-4.6-7.3-7s2.5-12.1 26.9-11.7c24.4.5 24.4 11.7 24.4 23.3s-12.2 11.7-12.2 35c0 11.7 12.2 23.4 24.4 23.4l36.6-11.7v116.7H248.1V163.9z"/>
+  <g fill="none" stroke="#000">
+    <path stroke-width=".5" d="M302.2 292.2l14.6 15 14.7-15 14.6 15 29.3-15 14.3 15.8 15-15.8 21.6 15.8 22.3-15.8 14.6 15 14.7-15" transform="matrix(.16672 0 0 .46773 253.9 31.9)"/>
+    <path stroke-width=".2" d="M432.3 435.8l-7.1 39m10.6-39v39m7.1-39v39m7.1-39l3.5 39m3.6-39l3.5 39" transform="matrix(.68905 0 0 .65843 16.2 -144)"/>
+  </g>
+  <g stroke="#000" stroke-width="2.5">
+    <path fill="#a77b3b" fill-rule="evenodd" d="M318.9 361.4c35.4 17.7 35.4 53.2 35.4 70.9-1.2 16.1 0 354.3 0 354.3s-2.3-20-17.7-35.4L319 733.5l-17.7-17.7c-13-11.8-17.7-35.5-17.7-53.2v-248s0-17.8 35.4-53.2z" transform="matrix(-.68905 0 0 .65843 443.4 -144)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.68905 0 0 .65843 443.4 -237.3)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.68905 0 0 -.65843 443.4 530.2)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(-.68905 0 0 .65843 443.4 -190.7)"/>
+    <path fill="none" d="M301.4 557l-.2 158.8" transform="matrix(-.68905 0 0 1.24911 443.4 -566.8)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(-.68905 0 0 1.12111 431.4 -464)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(-.68905 0 0 1.2559 419.2 -548.3)"/>
+  </g>
+  <g stroke="#000" stroke-width="2.5">
+    <path fill="#a77b3b" fill-rule="evenodd" d="M318.9 361.4c35.4 17.7 35.4 53.2 35.4 70.9-1.2 16.1 0 354.3 0 354.3s-2.3-20-17.7-35.4L319 733.5l-17.7-17.7c-13-11.8-17.7-35.5-17.7-53.2v-248s0-17.8 35.4-53.2z" transform="matrix(.68905 0 0 .65843 199.3 -144)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.68905 0 0 .65843 199.3 -237.3)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.68905 0 0 -.65843 199.3 530.2)"/>
+    <path fill="none" d="M283.5 574c.4 0 17.7-17.7 17.7-17.7l17.7 17.7 17.7-17.7 17.7 17.7" transform="matrix(.68905 0 0 .65843 199.3 -190.7)"/>
+    <path fill="none" d="M301.4 557l-.2 158.8" transform="matrix(.68905 0 0 1.24911 199.3 -566.8)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(.68905 0 0 1.12111 211.4 -464)"/>
+    <path fill="none" d="M301.4 539.3l-.2 176.5" transform="matrix(.68905 0 0 1.2559 223.6 -548.3)"/>
+  </g>
+  <path fill="#a77b3b" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M177.2 696.3c0 24.4-9.6 44.3-21.3 44.3-11.7 0-21.3-19.9-21.3-44.3S144.3 652 156 652s21.3 19.8 21.3 44.3z" transform="matrix(.63605 .25323 -.26502 .60778 361.1 -165.2)"/>
+  <path fill="red" fill-rule="evenodd" d="M248.1 175.6h146.5v70H248.1z"/>
+  <path fill="#564dff" fill-rule="evenodd" d="M248.1 245.6h146.5v35c0 23.3-36.6 23.3-73.2 46.6C284.7 304 248 304 248 280.6v-35z"/>
+  <path fill="none" stroke="#ff0" stroke-width="2" d="M336.6 485.4h212.6V645c0 35.4-53.1 35.4-106.3 70.9-53.1-35.5-106.3-35.5-106.3-71V485.5z" transform="matrix(.68905 0 0 .65843 16.2 -144)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M385.6 129.9S335 185.4 335 238.5c0 53.1 53.1 70.9 53.1 70.9s-17.7 0-17.7 70.8c0 35.5 53.1 17.8 53.1 35.5s-.7 60.5 0 88.6c0 17.7-35.4 0-35.4 17.7 0 8.8 26.6 53.1 53.2 53.1s53.1-44.3 53.1-53.1c0-17.7-35.4 0-35.4-17.7v-88.6c0-17.7 53.1 0 53.1-35.5 0-70.8-17.7-70.8-17.7-70.8s53.2-17.7 53.2-70.9-50.7-108.6-50.7-108.6 28.5 73.2 28.5 108.6c0 17.7-13.3 53.2-48.7 53.2 0 0-9-17.8-17.7 0 0 0-10.2-17.8-17.7 0-2.6 6-7.2-17.8-17.8 0-4.4 4.7-8-17.8-17.7 0-17.7 0-53.1-17.8-53.1-53.2s32.9-108.6 32.9-108.6z" transform="matrix(.48234 0 0 .30917 108.5 140.1)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M382.7 248c-3.6 3.6 4.6 61.3 7 63.8 3.6 3.5 24.9 3.5 28.4 0 2.5-2.5 0-56.7-3.5-60.2-3.6-3.6-29.4-6-32-3.6z" transform="matrix(.48234 0 0 .30917 110.4 201.6)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M382.7 248c-3.6 3.6 4.6 61.3 7 63.8 3.6 3.5 24.9 3.5 28.4 0 2.5-2.5 0-56.7-3.5-60.2-3.6-3.6-29.4-6-32-3.6z" transform="matrix(-.48234 0 0 .30917 532.4 201.6)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M414.6 228.5a16 16 0 11-32 0 16 16 0 0132 0z" transform="matrix(.5544 0 0 .38542 82.7 183.7)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="2.5" d="M414.6 228.5a16 16 0 11-32 0 16 16 0 0132 0z" transform="matrix(.55441 0 0 .38543 118 183.7)"/>
+  <path fill-rule="evenodd" d="M336.8 307.5c0 1.5-2 2.7-4.3 2.7-2.4 0-4.3-1.2-4.3-2.7s2-2.7 4.3-2.7 4.3 1.2 4.3 2.7zm-22.3 0c0 1.5-1.9 2.7-4.2 2.7-2.4 0-4.3-1.2-4.3-2.7s1.9-2.7 4.3-2.7c2.3 0 4.2 1.2 4.2 2.7z"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M439.4 550l-7.8-10.3-12.8 1.7 1.8-12.8-10.3-7.7 10.3-7.8-1.8-12.8 12.8 1.8 7.8-10.3 7.8 10.3 12.7-1.8-1.7 12.8 10.2 7.8-10.2 7.8 1.7 12.7-12.8-1.7z" transform="matrix(.67225 0 0 .64237 26 -133.3)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M496 591.7l21.3 10.7 21.3-10.7-21.3-10.6-21.2 10.6z" transform="matrix(.68905 0 0 .65843 16.2 -144)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M496 591.7l21.3 10.7 21.3-10.7-21.3-10.6-21.2 10.6z" transform="matrix(.68905 0 0 .65843 -88.8 -144)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M535 659c-3.5-7-14.1-10.6-21.2-10.6s-14.2 0-21.3 10.7c0-14.2 10.5-21.3 21.3-21.3a22.7 22.7 0 0121.2 21.3z" transform="matrix(.59753 -.3279 .34316 .57097 -165.2 86.5)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 13.7 -155.7)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 8.8 -139.4)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 6.4 -148.7)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 18.6 -139.4)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 21 -148.7)"/>
+  <path fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M386.2 652a7 7 0 11-14.1 0 7 7 0 0114.1 0z" transform="matrix(.68905 0 0 .65843 13.7 -146.4)"/>
+  <g fill-rule="evenodd">
+    <path fill="#da4500" d="M297.8 120.4c-12.4 0-14 2-19.6 3.9 0-5.4 13.8-11.7 26-11.7 0 3.9-3.2 7.8-6.4 7.8z"/>
+    <path fill="#cac9c7" d="M316.5 108c0 2.5-2.2 4.6-4.9 4.6s-4.9-2.1-4.9-4.7 2.2-4.6 4.9-4.6 4.9 2 4.9 4.6z"/>
+    <path fill="#ff0" stroke="#000" stroke-width="1.1" d="M361.4 357.9v10.6h17.7v53.1h10.7v-53.1h17.7v-10.6h-17.7v-14.2H379v14.2h-17.7z" transform="matrix(.68905 0 0 .65843 16.2 -144)"/>
+    <path fill="#da4500" d="M304.3 112.6a78.5 78.5 0 00-29.3 3.9c0-7.2 8.4-15.6 22.8-15.6 3.2 0 6.5 7.8 6.5 11.7z"/>
+  </g>
+  <g fill-rule="evenodd">
+    <path fill="#008500" stroke="#000" stroke-width=".7" d="M67.3 613c-14.2-14.2-16.6-21.4 3.6-10.1l283.7 247.5-3.4 7L67.4 613z" transform="matrix(.38821 .29653 -.14073 .23692 237.4 71.3)"/>
+    <path fill="#008f00" d="M228.4 330.4c.8-10.6-18.6-22-19.4-21.3-.7.8 1.2 7 4.9 10.1-7-3.6-14.4-5.8-14.6-4.3-.6 2.2 11 7.2 12 9.2 0 1.4-8.6 1.2-8.4 2.6.2 1.4 24.3 13.6 25.5 3.7zM209 299.6c.8-10.6-18.6-22-19.3-21.3-.8.7 1.1 6.9 4.8 10.1-7-3.6-14.4-5.9-14.6-4.3-.5 2.1 11 7.2 12 9.2.1 1.4-8.5 1.2-8.4 2.6.2 1.4 24.3 13.5 25.5 3.7zm-14.8-28c.8-10.6-18.6-22-19.4-21.3-.7.7 1.2 6.9 4.9 10.1-7-3.6-14.4-5.9-14.6-4.3-.5 2.1 11 7.2 12 9.2 0 1.4-8.5 1.2-8.4 2.6.2 1.4 24.3 13.6 25.5 3.7zm-14.6-30.4c.7-10.5-18.6-22-19.4-21.3-.8.8 1.2 7 4.8 10.2-7-3.7-14.4-5.9-14.5-4.3-.6 2.1 11 7.2 11.9 9.1.1 1.4-8.5 1.3-8.3 2.7.1 1.4 24.2 13.5 25.5 3.6z"/>
+    <path fill="#008f00" d="M184.6 239.9c9.4-5.7 7.5-27.4 6.5-27.6-1.1-.1-5.2 5-5.7 9.8-1.1-7.6-3.6-14.6-5-13.8-2.1.8.4 12.7-.7 14.6-1 1-6-5.8-7-4.8-1.2 1 2.8 26.7 12 21.8zm13.6 26.6c10.8-2.4 16.7-23.4 15.7-23.9s-6.6 3-8.7 7.4c1.6-7.5 1.7-14.9 0-14.6-2.3.1-4 12.1-5.7 13.5-1.3.6-3.7-7.3-5-6.8-1.4.6-6.6 26.1 3.7 24.4zm16.2 27.2c9.9-4.8 10-26.6 9-26.8-1-.3-5.5 4.5-6.5 9.2-.4-7.7-2.2-14.8-3.7-14.1-2.2.6-.8 12.6-2 14.4-1.2.9-5.5-6.3-6.7-5.4-1.2.8.4 26.8 10 22.7zm17.6 35.6c10.3-3.9 12.8-25.5 11.8-25.9-1-.3-6 4-7.5 8.6.4-7.7-.6-15-2.2-14.4-2.3.4-2.1 12.5-3.5 14.2-1.3.7-4.8-6.8-6-6-1.3.6-2.5 26.7 7.4 23.5z"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M209 776c0 7.8-10.2 14.2-23 14.2s-23-6.4-23-14.2 10.3-14.2 23-14.2 23 6.4 23 14.2z" transform="matrix(.60164 .32097 -.3359 .5749 389.6 -146.8)"/>
+  <g fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-width=".5">
+    <path d="M156 414.6v-7.1h7v-7.1h7v7h7.2v7.2H170v17.7h-7v-17.7h-7zm7 60.2h7v205.5h-7z" transform="matrix(.49887 .1571 -.1826 .4713 451.4 -3.7)"/>
+    <path d="M159.4 676.8h14.2v56.7h-14.2zM156 439.4h21.3c14.1 0-3.6 39-3.6 39h-14.1s-17.8-39-3.6-39zm17.6-5.4c0 3-3.1 5.4-7 5.4s-7.1-2.4-7.1-5.3 3.1-5.4 7-5.4 7.1 2.4 7.1 5.4z" transform="matrix(.49887 .1571 -.1826 .4713 451.4 -3.7)"/>
+  </g>
+  <path fill="#ff1900" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M209 776c0 7.8-10.2 14.2-23 14.2s-23-6.4-23-14.2 10.3-14.2 23-14.2 23 6.4 23 14.2z" transform="matrix(.57449 -.36357 .38048 .54895 -2.3 4.2)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/me.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/me.svg
new file mode 100644
index 0000000..613083f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/me.svg
@@ -0,0 +1,116 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-me" viewBox="0 0 640 480">
+  <path fill="#d3ae3b" d="M0 0h640v480H0z"/>
+  <path fill="#c40308" d="M24 24h592v432H24z"/>
+  <path fill="#b96b29" d="M424.5 236.1a58 58 0 0019.4-9.2c7-5.6 8.3-10.1 8.8-12.5.6-2.4.8-4.3-1-3-1.8 1.4-7.1 5.6-10.7 7.6-3.7 2-7 3-9 3.6-2 .5-3.6.9-1.7.1 2-.7 8.1-2.9 13-7.7 4.7-4.8 8.5-12 8.6-16.4 0-4.4-.3-4-1.7-3-1.4 1.1-6.4 7.3-9.3 9.7a90 90 0 01-9.7 6.9c-2.3 1.3-5.5 2.8-1-.3 4.5-3 13-10.3 16.5-19.7a35.4 35.4 0 002.7-15.8c0-1-.8-2.8-1.6-1.1-.8 1.7-6.5 13-11 18-4.6 4.8-3.5 3.9-4.6 4.7-1 .8-2.7 2.2-.5-.6a51.2 51.2 0 0012.2-31.7c0-3.6-1.5-8.6-2.2-10.1-.7-1.5-1.4-2.6-1.7-.9a191 191 0 01-5.8 18.4 75 75 0 01-6.7 12.8c-.8 1.1-2.8 3.6-.6-.5a77.4 77.4 0 007-27.6 44 44 0 00-2.6-20.9c-1.6-3.1-3-4.2-3-4.2s.3 7.8-2 19-5.7 17-5.7 17-1.5 1.7-.5-1a62.4 62.4 0 001.4-34.5c-2.3-7.5-6.2-11.3-6.2-11.3-1 10.7-.9 24.5-4.8 35.7-.7-.7-1.7-1.9-2.1.6a63.1 63.1 0 01-7 19.4c-4.8 8.8-6.8 10-6.8 10l-1.5-3.4c-.6-1.2-1-1.8-1.8-.2s-3.5 7.8-9.4 14.6-9.2 10.2-9 15.3c.1 5 2.8 7.7 6.4 10 3.6 2.3 4.2 3.6 3.7 6.4-.6 2.8-3.8 3.7-6.6 3.8-2.7.1-6.2-.1-7.5.6-1.2.7-1.3 2.5-2.6 3.7-1.2 1.3-1.8 2-3 2.2l-1 .1c-.2-13.5 5-19.5 5-19.5l-14.6-17.1a50.8 50.8 0 01-2.2 1 4 4 0 00-.4-.6 11 11 0 01-2.6-7.8c.7 0 2.2.6 3.5.3 1.3-.2.3-1.6 0-2.8-.5-1.3-.9-5.7-.6-7.3l.4-2.3s2.1 2.3 3.4 2.3c1.3 0 1.2-1.3 1.4-2.8.3-2.2 1.3-5 3-6.5 0 0 2.4 1.6 5 1.6s6.2-.7 9-3.5c3-2.7 2.9-3.3 2.9-3.3s5.3 1.8 9.3 2c4 .2 8.3-.4 10.4-4.7 2-4.2-.6-8.2-1-8.8-.6-.7-1.9-1.2-1.9 0s.1 4.4-2.4 6c-2.4 1.6-4.3 1.5-6.6.8a20.5 20.5 0 00-13.1-.4 17 17 0 016.1-4.2c3-.9 4.8.4 5.8 1.6 1 1.2 1.9 3 2.7.3.8-2.8.3-6-1-8a7.6 7.6 0 00-7.2-3c-3 .2-4 .7-4 .7s-1.5-4.3-5.3-5a21 21 0 00-14 3s-3.1.7-6.4-.2a21 21 0 01-5.4-2.8l1.1-3.5 1.9-.6c1-.4.7-.7.9-1.5.1-.8-1.8-2.2-1.8-2.2s-.3-2.5 2.9-4.1l2.8-1.4s1.9.3 2.6-.2c.8-.6.8-1 .8-1s1.4-.4 2-1.2c.4-.9.5-2.1.2-3.1-.4-1-.9-1.2-.4-1.7s1-1.6 1-2.4l.1-1s1.1-.4 1-2c0-1.7-.9-2.3-1.4-2.5l-.9-.1s0-1-.9-2.3c-.8-1.4-1.4-2-1.4-2s.6-.4.3-1.5-1.1-1.7-1.9-2c-.7-.2-1.5 0-1.5 0l-3.7-2.1-1.5-.8s0-1-.4-1.6c-.5-.5-1.5-.8-2-.8s-1 .3-1 .3l-6-1.4c-1.8-.2-1.9-.4-1.9-.4s-3.8-1.8-5.2-2l-2-.5s1.6-1.8 1.7-4a6 6 0 00-2.8-5l-1.6-.8V93l2.8.3.2-4.6-2.7.3.4-2.7h-5.8l.4 2.7-2.8-.2.3 4.5 3-.4-.4 1.7s-1 .2-2 .9a5.4 5.4 0 00-2.6 4.7c0 2.2 1.3 4 1.3 4l-1.8.4c-1.5.3-5.3 2.1-5.3 2.1s0 .2-1.8.4l-6 1.4s-.6-.3-1-.3-1.6.3-2 .8c-.4.6-.5 1.6-.5 1.6l-1.4.8-3.7 2.1s-.8-.2-1.6 0c-.7.3-1.5 1-1.8 2-.3 1.1.3 1.6.3 1.6s-.6.5-1.5 1.9a6 6 0 00-.9 2.3l-.8.1c-.6.2-1.5.8-1.5 2.5 0 1.6 1 2 1 2v1c.1.8.6 2 1.1 2.4.5.5 0 .7-.3 1.7-.4 1-.3 2.2.2 3 .5 1 2 1.4 2 1.4s0 .3.7.9 2.6.2 2.6.2l2.9 1.4c3.2 1.6 2.9 4 2.9 4s-2 1.5-1.8 2.3c.1.8 0 1.1.9 1.5l1.9.6 1 3.5a21 21 0 01-5.4 2.8c-3.2.9-6.4.2-6.4.2a21 21 0 00-13.9-3c-3.8.7-5.4 5-5.4 5s-1-.4-4-.8c-3-.3-5.8 1-7.1 3-1.4 2.1-1.8 5.3-1 8.1s1.6.9 2.6-.3 2.8-2.5 5.8-1.6c3 1 6 4 6.2 4.2 0 0-.5-.3-3.9-.8-3.7-.5-6.9.4-9.2 1.2-2.3.7-4.2.8-6.7-.8-2.4-1.6-2.4-4.8-2.4-6 0-1.2-1.3-.7-1.8 0-.4.6-3 4.6-1 8.8 2 4.3 6.3 5 10.4 4.7 4-.2 9.3-2 9.3-2s0 .6 2.8 3.3a13 13 0 009 3.5c2.7 0 5-1.6 5-1.6 1.7 1.5 2.7 4.3 3 6.5.2 1.5.1 2.8 1.4 2.8 1.4 0 3.5-2.3 3.5-2.3l.4 2.3a26 26 0 01-.6 7.3c-.4 1.2-1.4 2.6 0 2.8 1.3.3 2.7-.2 3.5-.3 0 3.2-.7 5.3-2.6 7.8a4.4 4.4 0 00-.4.6 53.9 53.9 0 01-2.2-1l-14.6 17.1s5.3 6 5 19.6a20.6 20.6 0 01-1-.2c-1.2-.2-1.8-1-3-2.2-1.3-1.2-1.4-3-2.6-3.7-1.3-.8-4.8-.5-7.5-.6-2.8 0-6-1-6.6-3.8-.5-2.8.1-4 3.7-6.4 3.6-2.3 6.3-5 6.4-10 .2-5.1-3-8.5-9-15.3-5.9-6.8-8.6-13-9.4-14.6-.8-1.6-1.2-1-1.8.2l-1.5 3.3s-2-1.2-6.8-10a63 63 0 01-7-19.3c-.4-2.5-1.4-1.3-2-.6-4-11.2-3.8-25-4.9-35.7 0 0-3.9 3.8-6.2 11.3-2 6.8-2 14.9-1.3 22 .6 6.7 2 10.7 2.7 12.5 1 2.7-.5 1-.5 1s-3.4-5.8-5.7-17c-2.3-11.2-2-19-2-19s-1.4 1-3 4.2a44 44 0 00-2.6 21 77.4 77.4 0 007 27.5c2.2 4 .2 1.6-.6.5a71 71 0 01-6.7-12.8c-2-5.5-5.6-16.6-5.8-18.4-.3-1.7-1-.6-1.7.9s-2.3 6.5-2.2 10.2a51.2 51.2 0 0012.2 31.6c2.2 2.8.5 1.4-.5.6-1-.8 0 .1-4.5-4.7a91.7 91.7 0 01-11-18c-.9-1.7-1.6.1-1.7 1.1-.1 1-.7 6.5 2.7 15.8 3.5 9.4 12 16.7 16.5 19.7 4.5 3.1 1.3 1.6-1 .3a90 90 0 01-9.7-6.9c-2.9-2.4-7.9-8.6-9.3-9.7-1.4-1-1.7-1.4-1.7 3 .1 4.4 3.9 11.6 8.7 16.4 4.8 4.8 11 7 12.9 7.7 1.9.8.3.4-1.7-.1a40.2 40.2 0 01-9-3.6 93 93 0 01-10.7-7.6c-1.8-1.4-1.6.6-1 3 .5 2.4 1.9 6.9 8.8 12.5a57.7 57.7 0 0019.4 9.2c2.9.8.9.8.9.8l-6.8-1.4a71.3 71.3 0 01-16.7-7.3c-2.3-1.5-2.7-2-2.4 1a20 20 0 008.9 12.9 49.6 49.6 0 0017.2 4.8c2.5.1 1.8.4.7.5a50.5 50.5 0 01-19.2-3.2l-.5-2c-.2-1.2-.9-1-1.2-.8-.4.3-.7.5-2 1.1-1.3.7-1.3-.1-1.4-.5l-.3-3c0-.8-.5-.9-1.1-.6l-4.7 2c-1 .4 0 1.3.5 2.3a147.3 147.3 0 001.5 2.6l-3.7 1c-.8.2-.6.8-.3 1.4l1.9 4.6c.3.8 1.1.3 1.1.3l2.7-1.6 1 3.7s-1.3.3-2.7 1.2c-1.3 1-1 2.3.7 2.7 1.6.5 3.6 1.4 5.7 5.3 2.2 3.9 2.7 10.9 4 22 1.4 11 8.4 16.6 9.4 17.3 1 .7.4 1.3.4 1.3s-1 1.4-.5 3.5a5.3 5.3 0 003.2 3.8c1 .3.7 1.3.7 1.3s-.5 2.3 0 6.7c.5 4.3 4 9.1 5 10 1 .8 1 1.2 1 1.6-.2.3-.9 0-2 1a12.2 12.2 0 00-3.4 3.6c-.8 1.6-.5 2.5-.2 4.5.2 2.1 3.3 4 3.3 4s-.6.1-.7 1.7c-.1 1.5 1 3.2 2.4 4.4 1.3 1 4 1.6 4 1.6l.3 2.2c.2 1 1.9 1.9 3 2.5 1.1.6 3.3.3 4.2-.2.9-.4 1.5.1 2 1 .6 1 .4 4.4.4 5.8 0 1.4-.8 2.8-.4 3.5.5.7 1.8.2 3.2-.5 1.3-.8 1.6-.2 2.8.5a9 9 0 003.5 1.4c.5 0 .3-1.3.3-2.3s.2-3.4.7-3.8c.2-.2 2.3-.3 3.8-1 .7-.3 1.7-.6 1.7-1.3.1-.7-1-.7-3.2-1.9-2.3-1.1-2.7-1.8-4.2-2.8-1.4-1-.7-1.3-.7-1.8 0-.4.7-.9 1-1.4.2-.6 0-1.8 0-1.8l1.8-1.8 2-2.3c.8-.6 2-3.6 2.7-4.5.8-1 2.5-2 3.6-3.4a29.7 29.7 0 0111.3-7.6s-.1 2.6 1 3.9 2.6-1 7.5-4.5c5-3.5 8.6-4.7 8.6-4.7l2.4 3.3c1.3 1.6 2.5-.1 8.5-8.5 4.8-6.5 11-12.6 13.5-14.8l1.3.6-.4 1c-.5 1.8-1.4 3-2.6 5.3-1.1 2.4-3 3-5 6.2s-2.4 5.5-2.6 8.8c-.2 3.3 1.7 4 1.7 4s-3 3-4 5.2c-.9 2.2-1.3 6.7-1.3 6.7s-.5.2-1.6 2.5-3.1 2.6-6 5.5c-3 3-6.2 4.2-7.7 5-1.5 1-1 1.9-.7 3 .4 1.2 2.5 2.4 5 3.3 2.3.9 3.2.5 4.8.5 1.7-.1.4 1.2-.3 1.9s-1.6 3.1-1.5 5.8c.2 2.7 2.2 2 4.7 1.6a28 28 0 005.3-1.6l-.2.8c-.3.7-.4 1.3-.4 3.4 0 2.1.3 3.2 1 3.7.5.6 1.8-.6 2.7-.9.9-.2 2.4-1.1 4.6-1.6 2.2-.5 3-1.5 3-1.5s-.5.7-.6 2.2c-.2 1.6-.1 3.8.2 5.2a9.4 9.4 0 002.9 4.2c1.5 1.4 1.8.8 3-1 1-1.7 3.3-3.9 3.3-3.9l1.7 5.5c1.5 4.9 6.5 9 6.5 9s5-4.1 6.5-9l1.6-5.5s2.3 2.2 3.4 4c1.1 1.7 1.5 2.3 3 1a9.4 9.4 0 002.8-4.3c.3-1.4.4-3.6.3-5.2-.2-1.5-.7-2.2-.7-2.2s.8 1 3 1.5 3.8 1.4 4.7 1.6c.9.3 2.1 1.5 2.7 1 .6-.6 1-1.7 1-3.8 0-2.1-.1-2.7-.4-3.4l-.3-.8s2.9 1.2 5.4 1.6c2.5.5 4.5 1 4.6-1.6a10 10 0 00-1.4-5.8c-.7-.7-2-2-.4-2 1.7.1 2.5.5 5-.4 2.3-1 4.4-2.1 4.8-3.3.4-1.1.9-2-.7-3-1.5-.8-4.7-2-7.6-5-3-2.9-5-3.2-6-5.5-1.1-2.3-1.6-2.5-1.6-2.5s-.5-4.5-1.4-6.7c-1-2.2-4-5.2-4-5.2s2-.7 1.7-4c-.2-3.3-.5-5.5-2.5-8.8-2.1-3.2-4-3.8-5-6.2-1.3-2.4-2.2-3.5-2.7-5.2l-.4-1a146 146 0 011.8-.8c2.4 2.2 8.7 8.2 13.5 14.8 6 8.4 7.2 10.1 8.5 8.4l2.4-3.2s3.7 1.2 8.6 4.7c5 3.5 6.4 5.7 7.5 4.4.6-.6.8-1.7.8-2.6a104 104 0 0111.8 4.2c4.3 1.8 4.7 2.8 8.1 5.4 3.4 2.7 8.2 2.5 12.8 1a304 304 0 0021.6-7.5c4.9-2 8.4-4 9-4.9.4-1 1-3.7 1-4.7s-1-2.4-1.4-2.7c-.4-.2-.2-1-.1-1.6 0-.6-.3-2.5-1-3.3-.8-.8-.7-1.1-.6-3.5.2-5-3.4-11.4-8.4-13.4 0 0-.2-.6-.6-1l-1-.6v-3.5c0-.6.2-.5.6-.4.3.2.9.9 1.7 1.1.8.2 1.3-.4 1.5-1.3.2-1 .8-2.8 1.2-3.7.3-1-.1-1-.5-1.2l-2.2-.4c-.6-.1-.6-.2-.4-.5l1-2c.8-1 .1-1.1-.6-1.4a58.4 58.4 0 00-4.9-1.3c-.9-.2-1 .6-1 1v2.6c0 .6-.5.4-.9.3a12.6 12.6 0 01-1.7-1.2c-.7-.4-1 0-1.3.7l-1.3 4.3c-.2.9-.1 1.5.2 1.6.3.2 2 0 3 0 .9 0 .3.6.3.6l-1.3 2.3c-.4.7-1 .8-1.8.8h-2s-5.3.2-9.2 3-5 5.3-5.6 6.7c-.6 1.4-1.3 1.1-1.9 1.6-.6.5-2.3 2.3-2.3 3.4s.4 1.7-1.3 2.8c-1.7 1.1-3 5.9-.8 8.3 2.3 2.5 3.2 5 4 6.2.6 1.2 0 1.7-.7 1.7s-1.8-1-2.9-1.8l-8.5-6.5c-2.3-1.7-.6-1.5-.6-1.5s.6 0 1.9-.5c1.3-.6 1.5-1.3.2-1.7a16.7 16.7 0 01-4.6-2.6c-.7-.7-1-1.4.3-2.1 1.3-.7 4.2-2.6 2-3.2-2.4-.7-5-1.1-7.3-1.8-2.2-.6-2.4-1.2-2.4-1.2l1.5-2.1s1.1-1.7-.2-1.9c-1.4-.2-4.8-.6-7.8-2a18.8 18.8 0 01-11.3-12.5v-.1c1.2 2.2 3.8 6.4 7.8 6.5 5.5.2 6.1-1.5 4.9-3.3-1.3-1.8-2.7-3.4-3-4-.4-.5-.5-1.2 1 .2 1.4 1.3 4 5.9 12.3 5.4 8.2-.6 8.2-2.2 8.2-2.6 0-1.6-1.7-1.9-2.7-2.9-.5-.5-.8-1.2.9-.6s5.7 1.4 11.3.2c2.1-.5 8-3 8.5-6 0 0-3.7-.2-6.3-1.3-2.5-1-4-2-1.3-1.4 2.7.5 8 1.6 12.7 0 2.7-.9 6.2-3 6.2-7.1 0 0-5-1-6.9-1.8-1.9-.6-2.5-1.2-2.5-1.2s7.3 2.3 13.8-1c6.6-3.3 6.9-7.9 6.9-9 0-1-.2-1.3-.2-1.3s-6 1.4-10.4 1.4c-4.5 0-5.9-.4-5.9-.4s12.5-.4 18.8-4.2c6.3-3.9 6.7-11.5 6.7-11.5s-7.1 2.6-11.6 3.1-7.2.5-8.3.4c-1.1 0-1.8-.4.7-.5a49 49 0 0017.2-4.8c5.3-3.1 8.6-9.7 8.9-12.8.3-3.1 0-2.6-2.4-1-2.3 1.4-11 5.9-16.7 7.2l-6.8 1.4s-2.2-.1.7-.9zm-225.2 14.4l-2.5 1.4-1.3-2.7c-.2-.6-.1-.8.2-.8l2.3-.4h.3c.3.7.6 1.6 1.1 2.4h-.1zm76.8 45a20.1 20.1 0 01-8.8 7c-3 1.4-6.3 1.8-7.7 2-1.4.2-.2 2-.2 2l1.4 2s-.2.6-2.4 1.3c-2.2.6-5 1-7.2 1.7-2.3.6.6 2.5 2 3.2 1.2.7 1 1.5.2 2.1-.7.7-3.2 2.2-4.6 2.6-1.3.4-1 1.1.2 1.7 1.4.5 5 1.2 5 1.2l-2.3 1.8a18.9 18.9 0 01-8.7 3c-2.5.1-6.6.3-11.7 0l-5.8-.3-.5-4.3a21.5 21.5 0 00-3-7.8l-3.7-5 .2-1.5c.2-.8 0-1.7-.5-3.3-.6-1.5-3.6-3.8-3.6-3.8l-.2-3.2c0-1.6-1-7.7-2-10.6-1-2.9-5.7-10.5-7.8-14a39.2 39.2 0 01-4.3-19.8l.5-1.3a12.9 12.9 0 003.5 3.2c6.3 3.8 18.8 4.2 18.8 4.2s-1.4.4-5.9.4-10.4-1.4-10.4-1.4-.2.3-.2 1.4c0 1 .3 5.6 6.9 9 6.5 3.2 13.8 1 13.8 1s-.6.5-2.5 1.1c-1.8.7-7 1.8-7 1.8 0 4 3.6 6.2 6.3 7.2 4.7 1.5 10 .4 12.7-.1 2.8-.6 1.2.3-1.3 1.4-2.6 1.1-6.3 1.3-6.3 1.3.6 3 6.4 5.5 8.6 6 5.5 1.2 9.6.4 11.2-.2 1.7-.6 1.4.1.9.6-1 1-2.7 1.3-2.7 2.9 0 .4 0 2 8.2 2.6 8.2.5 11-4 12.4-5.4 1.4-1.4 1.3-.7 1-.1-.4.5-1.8 2.1-3 4-1.3 1.7-.7 3.4 4.8 3.2 4 0 6.6-4.4 7.8-6.6v.1l.3.3a51.7 51.7 0 01-2.4 5.3zm66.4-178.2l-1.1-2s3 1.4 5 3.5c1.8 2 1.7 3.2 2 4.2.3 1 0 2.9-.3 4.7-.3 1.7-.3 2.8.1 3.4.3.7.7 1 .7 1l-2.7.8c-1.3.6-3 1-4 .2-.9-.8-1.1-1.3-.5-1.8.6-.5 2.8-1.2 3-5 .3-3.7-1.5-7.6-2.2-9zm-17 10.3c.8-1.8 1-3.5.5-7.2-.4-3.1-1-5.7-1.2-9 0 0 2.3.4 5.6 3.4s4 6.1 4 7.6-.7 3.4-.9 4.8c0 1.5.4 2.8.4 2.8s-1.1.5-2.2 1.3c-1.1.7-1.9 1.2-3.5 1-1.7 0-2.7-.7-3.7-1.2l-1.5-.6s1.9-1.1 2.6-3zm-16-12.8a14 14 0 015.6-3.5c-.1 3.4-.7 6-1.2 9-.5 3.8-.3 5.5.5 7.3.7 1.8 2.6 2.9 2.6 2.9s-.6 0-1.6.6c-1 .5-2 1.2-3.6 1.3-1.7 0-2.4-.4-3.5-1.1a14 14 0 00-2.3-1.3s.5-1.3.4-2.7c-.1-1.5-1-3.3-1-4.8.1-1.6.8-4.6 4.1-7.7zm-11.8 18.3c-1 .8-2.7.4-4-.2l-2.6-.8s.3-.3.6-1c.4-.6.4-1.7.1-3.4-.3-1.8-.5-3.7-.3-4.7.3-1 .3-2.2 2.1-4.2 1.9-2.1 5-3.6 5-3.6l-1.2 2.1c-.7 1.4-2.5 5.3-2.2 9 .3 3.8 2.5 4.5 3 5 .6.5.4 1-.6 1.8zm43.8 31.7c-3.2 1.7-5 1.3-5 2.7.2 1.3 3.1 2.3 3.1 2.3s-3 3.2-5.3 4.6c-2.3 1.5-5 2.4-5 2.4s-1 .2-.4 1.6a5.4 5.4 0 002.2 2.9l1.1.5s-4 4.3-5.8 5.7a15.3 15.3 0 01-4.3 2.5c-1.4.6-.7 3-.4 4 .4 1 1.6 2.5 2.4 2.7.7.2 1 .8 0 2.2-.7 1.1-3 4-4 5.6h-.1l-4.2-5.6c-.9-1.4-.6-2 0-2.2.8-.2 2-1.6 2.4-2.7.3-1 1-3.4-.4-4a15.2 15.2 0 01-4.2-2.5 80.2 80.2 0 01-5.8-5.7l1-.5a5.4 5.4 0 002.3-2.9c.5-1.4-.4-1.6-.4-1.6s-2.7-1-5-2.4c-2.4-1.4-5.4-4.6-5.4-4.6s3-1 3-2.3c.2-1.4-1.6-1-4.9-2.7-3.2-1.8-4.3-4.1-4.3-4.1s3.8-1.3 5.7-5a7 7 0 00.7-3.6h.1c6 2 13.1 2.8 19.4 2.8a63 63 0 0019.3-2.8h.2a7 7 0 00.7 3.6c1.9 3.7 5.6 5 5.6 5s-1 2.3-4.3 4z"/>
+  <path fill="#d4af3a" d="M361.2 237.8c0-10.2 4.7-16.7 4.7-16.7l-12.7-14.6c-12.2 4.7-23.3 5-33.2 0-9.9 5-21 4.7-33.1 0L274 221.1s4.7 6.5 4.7 16.6-2 17.8-3.1 22.7c-1.2 5-2.1 14.1.5 20.7a26.3 26.3 0 0016.7 17c11.3 4.8 17.3 7.3 21.2 10.6 4 3.2 5.9 5.9 5.9 5.9s2-2.7 6-6c3.9-3.2 9.8-5.7 21-10.4a26.4 26.4 0 0016.8-17.1c2.7-6.6 1.7-15.8.5-20.7-1.1-5-3-12.5-3-22.6z"/>
+  <path fill="#b96b29" d="M357.2 242c-1.6-9.8 4-18.3 4-18.3l-10.9-12.8c-8.4 4.7-20.1 4.1-30.3-.6-10.1 4.7-21.8 5.3-30.2.6l-11 12.8s5.7 8.5 4 18.3c-1.5 9.7-5 25-4.1 31.3.9 6.3 5.3 13.6 9.8 17.4a58 58 0 0016.2 8.7 46.7 46.7 0 0115.3 10s1.5-1.5 3.7-3.2c2.3-1.7 7-5 11.7-6.8a59 59 0 0016.1-8.7c4.6-3.8 9-11.1 9.9-17.4.8-6.3-2.6-21.7-4.2-31.4z"/>
+  <path fill="#1d5e91" d="M356.1 243.1a32.5 32.5 0 013.2-19l-9.8-11c-8.4 4.4-18.5 3.3-29.5-.6-11 3.9-21.1 5-29.4.7l-9.9 11s4.7 8.4 3.2 18.9-4 22.4-3.6 29.4l.2 1.4h9s.5-.6 1.5-1 1.3-.7 1.3-.7.2-1.8 1.2-2.2c1.1-.4 1.6-.4 2-.4.5 0 .8-.1 1.3-.6.5-.6 2-1.8 2.6-3.6.6-1.9 1-2.6 1-3.8 0-1.2.4-3 .4-3s-.2-.6-1.1-.3c-1 .3-1-.6-1.2-1.5 0-.9 0-2.7.5-3.6l.7-1.1-.4-1.5s-5.7 1.2-6.7-3.3-1.1-6.5-1.3-7c-.1-.5-.3-.7-1-.7-.8 0-2.4-.4-3.6-2.7-1-2.3-1.2-3.3-.8-4.2.3-.9.9-.5 1-.3.3.3 1.8 2.5 2.4 1.9.6-.6.3-.6-.6-2.3-.8-1.8-.5-2.3-.4-3.2l-.3-2.5c0-.4.5-.8 1-.6.6.3 1 .6 1.3 1 .2.2.3.6.8.4.5-.3.2-1.9.2-2.4 0-.6.6-1 1.3-.5a2.2 2.2 0 011.2 1.8c0 .6 0 1.1.3 1.1s.6-.9.7-1.4c0-.6.4-1.5.9-.7.5.7.7 1.7.5 2.8-.2 1.1.2.5-.2 2.4-.4 2-.6 2.8-.5 4.2 0 1.5 0 2.3.8 4 .7 1.8 1.3 3.8 2.6 3.9h1.7s1.5-2.8 2.6-3.5c1.2-.6 2.8-.7 4-.9 1-.1 1.5-.5 1.5-.8 0-.2-.3-.3-1.7-.5s-2.5-.5-2.6-1.6c0-1 .3-2-.6-2-1 0-3.2-.8-4-2.2-.8-1.5-.6-1.8-.5-2.7 0-.8 1.1-2.4 1.8-.9.7 1.6 1.1 1.8 1.7 2 .5.4 1.3.5 1-.5-.5-1-.7-1.7-.6-2.5 0-.8.6-1.1 1.2-1.2l3.4-1 1-.2s.1-.7 1.4-1a9 9 0 013-.5c.8 0 1.5.1 2.7-.4a5.7 5.7 0 012.9-.7 3.7 3.7 0 011.9.8c.5.3.4.9.4 1.4 0 .5 0 .8.8.8.9 0 1.6 0 2.3.3.8.3 1.8.7 1.2 1.5-.7.8-.7 1.7-1.2 1.7-.4 0-.4.4-.5.7-.2.3-.4.5.1.8.5.3.5.6 1.2 1.2.6.6 1.6 1.3.6 2.3-1 1-2.7 1.8-2.7 1.8s-1 .5.1 1.1c1.2.7 1.7 2 2.1 2.3l1.2.8c.3.1.2 1 .2 1l-1.5.8c-.8.4-1.7.8-2.5.8s-1.3 0-1 .7c.4.8 1 1.6 1.1 2l.3 1.2s1.4.3 2.6.3l4.3-.2c2.6-.3 3.4-.4 5.9-.1 2.5.2 2.9.2 3.5.4l1.4.6s3.5 0 5.5-.5c2-.4 2.4-1.7 2.1-2.4-.3-.6-.2-1.6-3.6-2-3.5-.6-4.8-.4-7.5-.9-2.8-.5-7-1.9-7.7-5.3-.8-3.4 2-4.8 3.3-5.5l5.8-2.3c1.4-.5 3.9-1 6.5-.7 2.7.4 4.2 1 5.3.5 1-.7 1.9-.2 1.7.8-.2 1-1.3 2.9-4.3 3.8-3 .9-6.6 1-8.5.5-2-.6-3.4-1.3-4.6-.9-1.2.4-2.5 1.9-1.3 3.7 1.3 1.7 7.9 2.3 9.6 2.4 1.8.2 8.3-.2 10.2 3 1.8 3.2.3 6.9-1.8 7.7a29 29 0 01-5.7 1.5l-1.7.3s.8 1.7.8 2.4-.1 2 .7 2.6c.8.5 2 .9 3.3.7 1.4-.1 3 .8 3.1 2 .1 1.3.5 3 .6 5.5.2 2.5 0 4.5 0 4.5s0 1-.4 1.9c-.3 1-2 4.4-2 4.4h9.5l.2-1.4c.4-7.1-2-19-3.6-29.5z"/>
+  <path fill="#6d8c3e" d="M281.6 278.6a27.4 27.4 0 0011.6 14.3c8.2 5 11.8 4.3 19.5 9.3 7.7 5 7.2 5.8 7.3 5.8.1 0-.4-.8 7.3-5.8s11.3-4.4 19.5-9.3a27.4 27.4 0 0011.6-14.3h-76.7z"/>
+  <path fill="#d4af3a" d="M288.3 237.2c.9 1 1.5 1.2 2.9 1 1.3 0 1.7.9 1.9 2 .2 1 .2 3.5 1.2 5.8s4.2 2.5 4.2 2.5c0-1.1.5-2.6 1-3.9 0-.2.5-1.2-.7-1.2s-1.1-.5-1.8-1.6c-.7-1-2-4-2.4-6a16 16 0 01.6-5.7c.4-1 .4-1.7 0-1.9h-1s.2 1-.1 1c-.3.2-.6-.4-.8-1-.3-.7-.5-.6-1-.6s-.5.5-.1 1c.3.4.1 1.3.1 1.3l-1.4-1c-.5-.2-1.4.2-1.5.8-.1.5.3 2 1.2 2.7s1 2.2.6 3c-.2.6-1.5.5-1.8.2a.8.8 0 00-1.2 0c-.4.5-.8.7.1 1.6zm-.5-2.5l-.7-.6a35.1 35.1 0 01-.5-.7l-.1.7c0 .5.6 1.2.6 1.2l.7-.6zm2-6.4c.4-.1.7-.2.4-.7-.4-.5-.6-1-1-1-.3-.2-.6-.1-.6-.1l.5 1.3c0 .5.2.7.6.5zm2.4-2c0 .5 0 .7.4.5.4-.2.5-.7.3-1a2 2 0 00-.6-.7l-.3-.2s.2 1 .1 1.5zm3.4.6l-.1-1s0 .6-.3 1c-.2.3-.1.2 0 .5.3.2.4 0 .4-.5zm5.4 23.5c.7 1.6 2.4-.9 4-2.9s1.5-.4 1.3 1.2a7.6 7.6 0 001 4.5c.7 1 1.2.4 1.5-.4.2-.7.5-2.4 1-3.2.5-.7 1 0 1 .6.1.7 1 2.2 1.7 3.1.8 1 1.2-.3 1.5-1.4l.7-3.5c.2-.6 1 0 1 0l1.6 1.5c1 1 1.1-.6 1.2-1.4.1-.8-.1-2.5.2-2.8.3-.3 1.2.4 2.5 1 1.4.7 1.3-.6 1.2-1.3a7.4 7.4 0 00-2-3.4c-1.2-1-1.3-2-1-2.5.4-.5 1.7 0 2.6-.1l1.8-.3c.7-.2.7-.8.7-.8s-.5-.8-1.4-1.6c-.9-.8-1.4-1.4-2.5-1.6-1.1-.3-2.6 0-2.6 0l-.2-.4c-.1-.3-.4-.3-.6 0l-1.2 1.1c-.4.4-.7.6-1 .5-.2-.2.3-.6.3-.6s.5-.4 1-1.4c.6-1 .7-2 .3-2.6-.4-.4-1.5 0-2.2 0-.6 0-1 .2-1-.2 0-.3.6-.1 1.4-.2.8-.1 1.3-1 1.5-1.9s.5-.6 1-.2c.4.5.9.4 1 0l1-1.8c.5-.8.8-1.9.3-2.6-.6-.8-2-.7-2.6-.2-.6.5-1 1-1.1 2.1-.2 1.2-.5.5-.5.2 0-.4-.4-1-.2-1.5.2-.4 0-1 0-1s-.1-1-1.2-1.1a8.6 8.6 0 00-3.5.3c-1 .2-.9 1.2-.9 1.2l-1.7.1c-.9.1-2 .5-2.8.7-.8.2-1.1.3-1.1.7l.1 1.1s.7 0 1 .3.2.5-.2.7c-.4.2-.6.2-.6.7s.2.7.7.7c.4 0 1.3 0 2.3.4s1.3 1.4 1.2 2c0 .5-1.5 1.2-2.3 1.2s-1 .1-1 .6 1 .4 1 .4l2.6.3c1.7.2 2 .6 2.8 1.2.7.7.2.9-.2 1-.4.3-1 .8-1.5 1-.6.2-1 .6-1.5.7-.5.1-1.8 0-4.2 1-2.4 1-3.3 4.1-3.3 4.1l1.4-.7c1.1-.5 2.5-1.2 3.8-2 1.2-.7 1.2.4.6 1.5s.6.9 1 .6l2-1.3c1.2-.6.8.4.8.4s-.4.7-.5 2.5c-.1 1.7 1.7 0 2.5-1 .9-1.1 1.2 0 .6 1.2-.6 1.3-1.8 2.3-2.5 2.3s-1.2-.8-1.3-1.2c0-.4.3-1.7-.1-2-.5-.3-1.7 0-2.6.6-.9.5-1 .1-1.3-.4-.2-.4.3-.6.1-1-.2-.2-.6 0-1 .2l-2.8 1.5c-1.7.9-1.6 1.3-1.6 2.5s.3 1.5 1 3z"/>
+  <path fill="#d4af3a" d="M316.7 224.2l1-.5 1.5-.3c.7 0 .6-.5.4-.8-.1-.4-.4-.5-1.4-.5-.9 0-1.5.5-2 .7l-1.1.4.4.6c.4.5.9.6 1.2.4zm3.8 3.7l.8-.2 1.3-.6c.6-.2.8-.3 1.2-1 .4-.8-.4-.8-1.5-1-1-.3-1.6 0-1.7.5-.1.4 0 .8-.5 1.6s0 .7.4.7zm-.3 1c-1 0-2.3 1.5-2.7 1.8-.4.3-.2.6-.2.6l.4 1.2c.2.7.2 1.7.2 1.7h.8c.6 0 1-.2 1.6-.7a4 4 0 011.8-.7c.9-.2 1.3-.3 2.2-.8 1-.5-.5-1.4-1.5-2.2a3.7 3.7 0 00-2.6-1zm-14 3.6c.8-.1 1.2-.5 1.2-1s-.4-1-1.5-.9c-2.6.3-5.1-.7-5.6-3.2 0 0-.8 1.6.8 3.4 1.6 1.8 4.3 1.8 5.1 1.7zm-8.9 41l.5.4h4c.7-.2.7-.8.7-1.2 0-.5.4-2 1-4.7.5-2.6 1.5-4.5 1.9-5.6.4-1-.4-1.4-.7-2l-.8-2.5c-.1-.6-1-.5-1.6-.5-.5 0-.6.9-.7 1.7 0 .8-.4 3.1-.8 5.1-.4 2-2.7 4.7-3.3 5.3-.6.6-1.2.8-1.6.8-.4 0-1.4 0-1.8.3a2.4 2.4 0 00-1 1.6c0 .6.9 1 .9 1l1-.8c.3-.4 1-.5 1.5-.6.7-.1.7.1.5.4-.2.3-.1.4.3 1.2zm-6-.2c-.4 0-.6.4-.7.6h2.6a1.4 1.4 0 00-.3-.7c-.3-.3-1.1-.1-1.7 0z"/>
+  <path fill="#d4af3a" d="M294.8 273.2a3 3 0 00-1 .7h2.9c0-.2.1-.6-.2-.9-.7-.5-1.3 0-1.7.2zM319 272c-.3 0-.6.3-1 .6-.5.3-.6.8-.7 1.2a.3.3 0 000 .1h1.3a.2.2 0 000-.1c0-.4.2-.7.7-1.1.5-.5 0-.7-.3-.7zm2.3 1.3c0-.4-.1-.7-.4-.7-.2 0-.7.5-1 .8a2.4 2.4 0 00-.5.5h1.7l.2-.6z"/>
+  <path fill="#d4af3a" d="M332.3 260.4c.8-.6.7-.8.7-1.5 0-.6 0-.8-.3-1a5.9 5.9 0 00-2.8-.8c-1.1 0-3.4.3-4.2.8-.9.6-1.3 2.7-1.3 3.8 0 1 .2 1.2.5 1.2s.8-.8.8-.8l1.8 2.5c.7 1 .4 1.4 0 2.2-.2.8-1.4 2.9-2.2 3.3-1 .5-1.6 0-2.6-.1-1.1-.2-1.7.1-2.3.7s0 1.1.4 1.1c.3 0 .8 0 1.2.5.3.3.1 1.2 0 1.6h5.2c.9-.4 1.5-1.6 1.7-2.3.3-.7 1.4-1.7 2-2.2.5-.5.5-.8.5-2s-.2-1.7-.6-2.5c-.5-.8-.8-2-.6-2.6 0-.7 1.2-1.4 2-2z"/>
+  <path fill="#d4af3a" d="M323.7 247.4c.6.9.3 1-.4 1.2a8.5 8.5 0 01-2.8.2c-1.1-.1-1.1 0-1.1.6a5 5 0 01-.8 2.7c-.7 1-1.6.6-2 .2-.6-.3-.9-.2-1 .4l-1.2 2.1c-.5 1-.9 1-1.3.9-.4-.1-.7-.7-1.1-.7-.4 0-1-.8-1.6-1.8-.6-.9-.9.1-1.3 1-.4.8-.7 1.3-1.5 1.2-.7 0-1.6-1.5-2-2.3-.4-.8-.7-1.6-1.3-1.6-.7 0-1.7 1.4-2.4 1.7-.7.4-1 .3-1.3-.2-.3-.4-.7.2-1.1 1.2-.4 1.1 0 2 .6 2.3.6.3 1.7-.5 2.5-1 .8-.6 1.1-.5 2-.5.8 0 .7 1.4 1 3.3.4 2 1.5 2.2 1.5 2.2s.4.3 1.3-1.1c.9-1.5 1-3 1.8-3 .9 0 1 .2 1.8 1.4.8 1.1 1.5 2 2 1.1.5-.8.9-2.1 1.5-2.6.5-.4 1-.6.4.3-.5.8-.8 1.7.4 1.4 1.2-.4 5.7-2.2 7.6-2.6l4.7-.5 4-.3c1 0 1 0 1.1-.7 0-.7-.5-.5-2.3-.5-1.8 0-3 .2-4.3.4-1.3.2-1.8.2-1.6-.2.2-.3.6-.5 2-.7a58 58 0 016-.5c1.6 0 1 .5 1 1.5-.2 1 0 2.6.2 3.5 0 1 .1 1.3 1 2.7s3.7 2.2 4.5 2.6c.9.5.7 0 .7-.8s.7-.8 1.4-.3c.7.4 2 .7 2.9 1 .8.2 1 .4 1 .8 0 .5 0 1.5.2 2.4 0 1 0 1.2-.4 1.8l-2 2.3s-.8 0-2.3.4c-1.6.3-2.1 1.1-2.3 1.7-.1.7.3.9.4 1.1v.8h.4c0-.2.3-.5.5-.8.6-.7 2-.9 2.9-.5.6.3.6 1 .5 1.3h3.6l2-3.9a6 6 0 00.6-2.6c0-1.2.2-5.8 0-6-.3-.3 0-1.1 0-2.4-.1-1.3 0-2.3-2.4-2.5-2.4-.2-3.2-1.2-4-2-.8-.8-.6-2.7-1.2-5-.7-2.2-2.3-2.6-5-3.1a23.3 23.3 0 00-7-.5c-2.2.2-4.8.5-6.2.4-1.5-.2-1.2.2-.7 1z"/>
+  <path fill="#d4af3a" d="M337.3 273.4l-.5.5h2.4a1 1 0 00-.2-.7c-.4-.4-1-.2-1.7.2zm4.4-.2a2.2 2.2 0 00-.8.7h2.5a1 1 0 000-.3c-.1-.4-.9-.8-1.7-.4zm-61 1.6a24.1 24.1 0 00.5 2.3h77.6l.6-2.3h-78.8zm52.3-37.1c2.4 1.6 10.2 1.7 13.9 2.4 3.6.8 3.4 3.6 2.3 5-1.2 1.5-6.3 1.7-7.2 1.8.5.3 1.2 1.4 1.2 1.4l2.1-.2a11 11 0 006.1-2c1.9-1.6 1.8-4 .1-5.8-1.6-1.6-4.3-1.8-7-2.1-2.8-.3-5-.5-8-1-3.2-.6-4.7-1.8-4.7-3.6s1.7-2.8 2.9-3.1c1.2-.4 3.1-.9 4.9-.2 1.7.6 3.7.7 7.1.3 3.4-.5 4.2-2.8 4.2-2.8s-.4.2-2.2.2c-1.7 0-3-.7-6-.7-3.2 0-4.3 1-5.8 1.6-1.5.5-5.4.9-6.5 3.4-1.2 2.5.1 3.7 2.6 5.4z"/>
+  <ellipse cx="312.6" cy="226" fill="#b96b29" rx="1.5" ry="1.4"/>
+  <path fill="#b96b29" d="M344 228.4c-2-.2-4.5.4-4.5.4s.5.4 1.2.3c.6 0 1.8 0 3.7.3 1.9.3 3.2-.6 3.2-.6l-3.6-.4z"/>
+  <path fill="#1d5e91" d="M325.6 264.6c-.5-.8-.6-.7-1.2-.2-.5.4-1-1.2-1.1-2.2l.4-4.1s-2.6.5-4 1l-4 .9c-1.1.2-1.8.5-2.4.4-.6-.2-1.9-.2-2.9-.2s-1 .2-2 1.2-1.3 1.5-2 3.4a20 20 0 00-1.4 6 15.6 15.6 0 01-.7 3.1h12.2l.5-1.2a3 3 0 011.4-1.4c.5-.2 1-.2 1.2-.8.2-.5.8-1 1.4-1.2.7-.3 1.8-.2 2.8.1 1 .3 1.4-.4 1.7-.8.3-.4.4-1 1-1.6.5-.7 0-1.3 0-1.3l-1-1.1zm19.5.3c-.1-.7 0-.8-.5-.9-.4 0-1.1-.2-1.7-.5-.6-.2-.5 1.4-.5 1.4s-1.5.2-3.1 0-3.5-1.7-4.2-2.2a5.5 5.5 0 01-1.4-1.5l-1 .7c-.5.3-.8 1.3-1 2.4 0 1 1.3 2.2 1.4 3.2 0 1-1.2 3.1-1.8 4a9 9 0 00-1.2 2.4h5.9a3 3 0 01.6-1c.6-.6 1.6-.7 1.6-.7l.2-.8c.2-.5.9-1.2 2.3-1.8 1.5-.5 3.3-.6 3.3-.6s.7-.6 1.2-1.4c.5-.8 0-2 0-2.7z"/>
+  <path fill="#d4af3a" d="M296.2 329.6c1.1.4 3.2-.4 4.2-1.6 1-1.3 1.4-3.2 2.1-4.3l1.3-1.9s-.2 1.8-1.2 4.3a15.5 15.5 0 00-.8 6.8c.4 2.7 2.2 3.1 3.2 2.7.8-.2 2-1.4 3-3.2l1-2c.6-1.3 1.2-3.5 1.5-3.4.7.1.3 1.6 0 2.6-.5 2-1.5 5-1.6 7 0 1.7.2 5 2 5.2 1.8.1 2.8-1.5 3.8-5.2s1.2-5 1.7-5c.4 0 .4 2.6.4 3.7a18.2 18.2 0 001.6 7.4c.9.8 1.6.7 1.6.7s.7.1 1.6-.7c.9-.8 1.6-6.3 1.6-7.4 0-1 0-3.6.5-3.6s.6 1.2 1.6 4.9 2 5.3 3.8 5.2c1.9-.2 2-3.5 2-5.3 0-1.8-1.1-4.8-1.6-6.9-.5-2 .2-1.9 1.6.8l1.3 2.5c1 1.6 2 2.5 2.6 2.7 1 .4 2.8 0 3.2-2.7.5-2.7-1.6-10.5-1.6-10.5l1 1.3c.7 1.1 1 3 2 4.3 1 1.2 3.1 2 4.2 1.7 1-.4 1.2-2.4.4-6.1s-4-5.7-6.4-8.6a31.6 31.6 0 01-4-8.2 27 27 0 00-7.9 5.6l-5.9 6.3s-1-1.3-5.8-6.3a27 27 0 00-8-5.6c-.2.6-2.2 5.2-4.4 7.9-1 1.3-2.5 2.3-3.6 3.6a12.4 12.4 0 00-2.4 5.3c-.8 3.6-.6 5.7.5 6z"/>
+  <path fill="#d4af3a" d="M296 342c1.5-1.2 2.2-2 2.2-2s1-.8.8.9c-.3 1.6-.8 5-.5 6.4.4 1.4.5 2.7 2.3 1.6 1.8-1 2.3-1.7 3.1-2.6.9-.9 1.8-1.3 1.6.1-.3 1.4-.9 3.6-.6 6.4.3 3 1.7 3.3 3.6.9a32.3 32.3 0 003.5-5.9c.5-1.2 1.6-2.2 1.6 0 0 4.8 1.1 11.8 6.4 13.6 5.3-1.8 6.4-8.8 6.4-13.6 0-2.2 1.1-1.2 1.7 0a32.4 32.4 0 003.5 5.9c1.8 2.4 3.2 2 3.5-.9.3-2.8-.3-5-.5-6.4-.2-1.4.6-1 1.5-.1s1.3 1.5 3 2.6c1.9 1 2-.2 2.4-1.6.3-1.5-.2-4.8-.5-6.4-.2-1.7.8-.8.8-.8l2.1 2a6 6 0 003.4 1.2s.9-5-1.2-8c-2-3-2.9-4-2.9-4s-1.1 0-2-.4c-1-.3-1.8-1-1.8-1v2.8l3.1 3.1c.6.8 1.8 2 0 .8a50.5 50.5 0 01-3.1-2.4s-.4 2.5-1.1 3.2c-.7.6-1.8.7-2.2.5l-.4-.1-.2 1s1.6 3 1.8 4.1c.3 1.2 0 1-.8-.5-.7-1.5-2.2-3.5-2.8-4.5-.6-1.1-1.6-1.8-1.5-.5.1 1.4-.5 3.9-1 4.8-.4.9-.7 1.2-.7 1.2l1.1 4c.1.7 0 1.5-.5.6-.6-.8-2.1-4.2-2.1-4.2s-2.1 0-2.7-.7c-.6-.6-1.6-2.9-1.6-2.9s-.8 3-1.5 4c-.7.9-2.4 1.8-2.4 1.8l-.2 6c-.2 1-.2 1.3-.6 1.3s-.4-.4-.5-1.3l-.3-6s-1.6-1-2.3-1.9c-.7-1-1.6-3.9-1.6-3.9s-1 2.3-1.5 3c-.6.5-2.7.6-2.7.6s-1.6 3.4-2.2 4.2c-.5.9-.6.1-.5-.5l1.1-4.1s-.3-.3-.7-1.2c-.5-1-1-3.4-1-4.8.1-1.3-.8-.6-1.5.5s-2 3-2.8 4.5-1 1.7-.8.5c.2-1.2 1.8-4.1 1.8-4.1l-.1-1-.5.1c-.4.2-1.4.1-2.2-.5-.7-.6-1-3.2-1-3.2l-3.2 2.4c-1.8 1.2-.6 0 0-.8l3.2-3.1v-2.8s-1 .7-1.8 1c-1 .4-2.1.4-2.1.4l-2.9 4c-2 3-1.2 8-1.2 8s2 0 3.4-1.3zm25.8 33.5L320 373s-.4.8-1.8 2.4a43 43 0 01-4.5 4s.3 4.2 1.8 6.5c1.3 1.9 2.5 3.6 4.5 5 2-1.4 3.3-3.1 4.5-5 1.6-2.3 1.9-6.5 1.9-6.5s-3.2-2.4-4.6-4z"/>
+  <path fill="#b96b29" d="M319.4 380.6c0 1 0 3.4.6 3.4s.5-2.4.6-3.4l.2-3.3h-1.6s0 2.3.2 3.3z"/>
+  <path fill="#d4af3a" d="M320 151.3c-5.7.1-12.3-.7-16-2l-3.8.8a52 52 0 0019.8 3.3c8.8-.1 13.8-1 19.8-3.3l-4-.8a50.7 50.7 0 01-15.8 2zm20.5-4.7c-.4-.4-3-2.2-3.7-2.5-.6-.4-.1-1.3 0-1.6.1-.4 3-1.2 4.6-1.7 1.6-.4 1.4-.7 1.4-.7s-1-1.1-6.8-1.7c-5.8-.7-16-.5-16-.5s-10.2-.2-16 .5c-5.8.6-6.8 1.7-6.8 1.7s-.2.3 1.4.7a19 19 0 014.6 1.6c.1.4.6 1.3 0 1.6a45 45 0 00-3.7 2.6c-.5.4-.5 1 .2 1s.7 0 2.7-.4a94.4 94.4 0 0135.2 0c2 .4 2 .4 2.7.4.7 0 .7-.6.2-1z"/>
+  <path fill="#d4af3a" d="M333.9 149c-4-.4-6.5-1-13.9-.9-7.4.1-10 .5-13.9 1 2.5 1 6.6 1.5 13.9 1.5s11.4-.5 13.9-1.5zm-15-57.5l-.1 2.8 3-.2-.3-2.7 3.3.5.1-2.6-3.4.3.6-2.9h-3.8l.7 2.9-3.3-.3v2.6zm6.5 7.1h-4v-3.4a6 6 0 00-1.3-.2l-1 .1v3.5h-4.3a4.6 4.6 0 00-.2 2h11v-.6a5.4 5.4 0 00-.2-1.4z"/>
+  <path fill="#1d5e91" d="M320.1 105a5.5 5.5 0 005.2-3.4H315a5.5 5.5 0 005.2 3.5zm2.3-9.5v2.4h2.7a5.3 5.3 0 00-2.7-2.4zm-4.5 0a5.3 5.3 0 00-2.8 2.4h2.8v-2.4z"/>
+  <path fill="#b96b29" d="M323.3 140l-3.3-1.5-3.3 1.7c-1.2.5-1 .4-1.4 1.2-.3.9 0 1.2.6 1.4l4.1 2 4.6-2c.8-.4.7-.8.4-1.5-.2-.6-.7-.8-1.7-1.3z"/>
+  <path fill="#d4af3a" d="M320 139.3l-3.5 1.7 3.6 1.9 3.5-1.9zm0-12.3s-.3 1.2-.7 1.8c-.4.5-.7 1-.6 1.7 0 .6.8 1 1.3 1 .4 0 1.2-.4 1.3-1 0-.7-.2-1.2-.6-1.7-.4-.6-.7-1.8-.7-1.8z"/>
+  <circle cx="320" cy="132.8" r=".7" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M317.6 129.4s1.1-1.3 1.6-2.2l.8-1.5.8 1.5c.4.9 1.6 2.2 1.6 2.2s1.6-1 2.6-4c1-3.2-.3-6.6-.7-10.1a208 208 0 01-.8-9.8 7.3 7.3 0 01-3.5 1 7.3 7.3 0 01-3.6-1s-.3 6.2-.8 9.8c-.4 3.6-1.6 6.9-.6 10 1 3.2 2.6 4 2.6 4z"/>
+  <ellipse cx="320" cy="122.3" fill="#b96b29" rx="2.8" ry="2.7"/>
+  <ellipse cx="320" cy="115.8" fill="#b96b29" rx="2.7" ry="2.6"/>
+  <ellipse cx="320" cy="109.7" fill="#b96b29" rx="2.6" ry="2.5"/>
+  <ellipse cx="320" cy="121.8" fill="#d4af3a" rx="1.5" ry="1.4"/>
+  <circle cx="320" cy="115.4" r="1.4" fill="#d4af3a"/>
+  <ellipse cx="320" cy="109.2" fill="#d4af3a" rx="1.3" ry="1.2"/>
+  <path fill="#b96b29" d="M319.9 336c.2.1.2-.3.2-1.2l.4-4c.2-1.2-.3-1.1-.6-1-.3 0-.5.9-.5 1.4l.1 4.2c0 .6.2.6.4.7z"/>
+  <path fill="#d4af3a" d="M290.4 359.1l5.2-3.6a11.8 11.8 0 004-4h-1c-.6 0-1-.7-1.1-1.5 0-.8 0-2.3.2-4.1.2-1.8-.3-3.3-.3-3.3s-1.2 1.1-3 2c-2 1-2.7.6-2.7.6l-.4-1.9-2 3.7c-1.1 2-4.2 4.2-6.4 5.8a28.6 28.6 0 01-6.4 4c-1.8.7-.7 1.5-.7 1.5s1.8 1.8 6.5 2.7c4.6.8 6.9-1 8.1-1.9z"/>
+  <path fill="#d4af3a" d="M306.8 357.3c-1.7-.2-2.7-.8-3-2.6-.2-1.2 0-5.7 0-5.7l-1.1 1.2c-.7.8-2 1-2 1l-1 1.6a9.3 9.3 0 01-3 3.2 50.7 50.7 0 00-4.6 3.2 28.1 28.1 0 01-4.3 3.1 7 7 0 00-3.6 4.7c-.5 2.4 0 3.1 1.8 3 1.8-.1 2 0 5-.7 3-.8 7.3-4.1 10.4-6 3-2 5.4-6 5.4-6z"/>
+  <path fill="#d4af3a" d="M315 360s-1.2-1.6-1.7-3.4l-1.3-5.4-1.5 3.3c-1 2.1-2.7 2.7-2.7 2.7s0 .9-1.5 2.7a21 21 0 01-5.7 4.8c-2.1 1.2-5 3-6.4 5.1-1.5 2.2-1.7 4.4-1 5.4.8 1 1.8-.1 3.2-.9 1.4-.7 5.5-1.3 11.2-4.4 5.6-3 7.4-9.9 7.4-9.9z"/>
+  <path fill="#d4af3a" d="M317.5 372.7c1.5-2.4 1.8-8 1.8-8l-1.3-1c-.8-.7-2.2-2.9-2.2-2.9l-2 3.8c-1 1.8-1.5 2.4-3.6 4.3-2.1 2-5 3.9-6.2 6-1.2 2-.5 6.1.3 7.5.8 1.5 2 1 3-.1l3.7-3.3c2.1-1.8 5-4 6.5-6.3z"/>
+  <path fill="#b96b29" d="M299 325.3c.8-1.7 1.7-3.7 2.5-4.8a15 15 0 001.3-2.2s-2 1.8-2.8 3.1c-.8 1.4-1.3 2.6-1.7 4-.3 1.4-.2 1.6.7 0zm8 1.5l.5-1.9s.3-1 .1-1.1c-.2-.1-1 .6-1.6 2.5-.5 1.8-1.4 4.5-1.2 4.6.2 0 1.8-3 2.2-4.1zm6.3 5l.3-.8s.7-2 .7-2.5c0-.4-.2-1-.8.1s-.6 2.2-.7 2.6c0 .5-.7 2.1-.5 2.3.2.1.6-.9 1-1.7zM293.7 351l-.8-.5-1.3 1.5c-.7.7-1.5 1-2 1.7a8 8 0 01-2.7 2.3c-1.3.7-1.8 1-1.6 1.1.3.2 1.2-.3 1.2-.3s.3 0 1.9-1c1.6-.9 2-1.4 3-2.3 1-.9 2.3-2.5 2.3-2.5zm6.8 8.1c.6-.6 1.3-1 1-1.4-.4-.3-.8-.3-1.4.2l-2.8 2.6-2 1.5c-.7.6-2.3 1.4-3 1.8-.8.5-.1.5-.1.5l1.2-.5 2.5-1s.7-.3 1.6-1c1-.7 2.4-2 3-2.7zm7.9 5.5c.5-1 0-.8-.9-.4-.8.3-2.7 2.4-3.8 3.1-1.1.8-2 1.1-3 1.6-.9.4-.9.7-.8.9 0 .2.4.2.8 0l1.6-.9 1-.2c.6 0 1.3-.6 2.4-1.6 1.2-1 2.2-1.5 2.7-2.5zm3.7 7.2c-1.4.8-3.8 2.7-4.5 4-.6 1.2-1 2.1-.8 2.3.2.2.9-.2 1.2-.7l.9-1.2s2.4-2.4 3.3-3a8.3 8.3 0 002.6-3c.4-1 .1-1.4.1-1.4s-1.5 2.1-2.8 3z"/>
+  <path fill="#c52126" d="M275 170a22.3 22.3 0 00-8.3-2.6c-3.7-.3-6.5.2-9.5 1-2.2.6-4 .7-5.7.3-2.6-.7-4.6-3-5.3-6 0 0-2.4 3.1 0 6.5a7.2 7.2 0 004.4 2.9c5 1 10-2 14.3-2.4 4-.2 7.3 2.4 7.3 2.4s1 .8 2.3 0c1.4-.8 1.8-1.4.5-2.2z"/>
+  <path fill="#d4af3a" d="M260.3 317.5l-1.2-.2c-.7 0-2.2-.6-2.7-.8-.4-.2-1.1-.2-1.6.3-.4.5-4 2.7-4 2.7h6c2 0 3.5-2 3.5-2z"/>
+  <path fill="#d4af3a" d="M277.4 316.4v-.5l-.8-1.8s-1 .6-1.9 1.5c-1.2 1.3-2.4 3-3 3.7-1 1.3-2.4 2.5-1.2.5s1.6-3 2.6-4.4c1-1.3 1.7-2 1.5-2l-3.4-.5c-2.5-.3-4.1-1.3-5.3-2l-3.3-1.9s-4.3 1.9-5.9 2.3c-1.6.4-2.6.6-1 1.4 1.6.8 2.9 1 3.7 1.5a11 11 0 004.6 1.2c1.4 0 3.9 0 3 1-1 1.1-2.1 3-3.2 6a20.3 20.3 0 00-1 7v2.5s1.8-2 6.6-5 6.6-4 7.5-4.4c.9-.4 1.3-.4 1.1-1.5l-.6-4.6z"/>
+  <path fill="#d4af3a" d="M295.6 302a68.5 68.5 0 01-.9-.4 1 1 0 00-.2 0 15 15 0 00-4.6 4.2c-1.2 1.9-2.4 2-1.1 0a17.9 17.9 0 013.2-4.2 23.5 23.5 0 011-.8 53.3 53.3 0 01-7.3-4.2l-1.6 2.5c-1 1-3.3 2-3.3 2s1.8-2 2.4-3.3l.8-2.5a31.6 31.6 0 01-4.8-4.6 17.8 17.8 0 01-4.1 7.4c-3.8 4.2-11.3 6.3-11.3 6.3s-2.6.3-.5.9c2.2.5 3.7 1.5 7.8.8l5-1.1c.6-.2 2 0 0 .7-2 .8-6.9 1.5-8.7 1.4-1.9-.2-4.4-.6-1.8.8 2.7 1.4 3.8 2 5.4 2s2.3.5 3.9.5 2-.3 3-.5c1.2-.3 2 .1 2 .6 0 .4-1.6 1.7-1.5 4.7 0 3.1.3 5.1.5 6 .3 1 1 2.4 1.4 3.2.5.8.7 1.7 1.1-.1.5-1.8 1.5-4.4 1.9-6.1.3-1.7.6-1.8.7-2.7.2-.9 1.2-1.6.7 0a133.4 133.4 0 00-1.3 5.2c-.3 1.5-1.1 4.2.2 2 1.4-2 6.4-7.7 7.3-8.8l2-2.8c.7-.8 2.4-1.9 3.3-3.1a28.5 28.5 0 013.9-4l-4.5-2zm-69.5-129.2c0 3.1 3.5 9 5.5 12.2 1.9 3.1 2.4 4.4 2 4.6-.2.2-1-1.4-2.1-2.8s-3.2-4.7-5-7.2c-1.6-2.5-4.2-8.4-4.5-8.9-.4-.5-.5-.9-1.4-.2-.8.7-2.5 7.2-.5 11.6 2 4.4 5 7.6 6.3 9.2 1.3 1.5 3 4 2.7 4.1-.3.2-.8-.4-2.3-2L221 187a51.6 51.6 0 01-3.8-6c-.2-.5-.6-.4-.8-.2-.5.6-1.4 1.9-1 5.4a17 17 0 005.3 10.2c2.3 2.4 4.6 4.5 4.2 4.9-.3.3-2.7-1.8-4.3-3.3-1.6-1.6-5.5-5.4-6.4-6.5-.9-1-2.1-.5-2 3.7 0 4.3 4.7 8.5 6.6 10.9 2 2.3 4.4 3.7 4.2 4.2-.2.5-2.2-.7-3.4-1.6l-7-4.6c-1-.7-1.4.6-.2 4.6 1.2 4 4.7 7.2 6.8 8.7 2 1.5 5.4 3.3 5.2 3.8-.2.4-1.6-.2-3.6-1.1a39.4 39.4 0 00-6-2.3c-1.6-.5-1.6.7-1.6.7s-.3 3.5 2.2 6.2a13.3 13.3 0 008 4.3c2.6.5 3 .6 3 1-.1.4-.4.5-1 .5l-5.4.2c-2.2 0-3.4.6-3.4 1.6s-.1 2.3 3.3 4.6 7.2 2.6 8.8 3c1.6.3 1.7.4 1.4.9-.4.5-1.1.4-3.6.7-2.6.2-4.1 1.2-4.5 2-.3.6.2 2.6 2.3 4 2 1.4 4.8 1.9 8.8 1.6 4-.3 5-.3 5.1.3.2.7-1.2 1-3.2 1.2-2 .4-3.5.4-4.7 1.3-1.1 1-.2 2.9 1.7 4.3 2 1.4 6.8 1.4 8.8 1.3 2-.2 5-.9 5.3-.4.2.6-1.5 1.4-3.6 2.1-2 .8-2.7 1.2-3 2.1-.5.9-.1 1.7 2.3 2.6 2.5 1 6.1 1 8 0 1.9-.8 2.9-1.1 3.2-.8.4.3 0 .7-.4 1.1-.4.5-2 1.8-4 2.3-2.1.6-2.3.6-3 2.2-.8 1.7 1 3 4.8 3.2 3.8.1 8.8-1.4 10.4-2.3 1.6-1 2.2-1.1 2.5-.8.2.3.2.5-.6 1.1-.8.6-3.4 2.5-4.7 2.8-1.2.3-1.4 1.3-1.4 2.1 0 1-.3 2.6 3 3.5 3.4.8 7.3.2 11-2.4a8.3 8.3 0 002.2-2 28 28 0 01.2-8c-.7 0-2-.3-3.4-.9-2-.8-2.8-2.6-3.3-3.6-.4-1-1.1-1-2-.8-.7.3-1.5.6-2.6.6a7.9 7.9 0 01-5.3-2.8c-1.8-2-1.4-4-1.5-5 0-1-1.7-.3-2.5-.3s-3.1-.4-5.3-1.9c-2.1-1.4-2.1-3.4-2.3-4.3-.2-.8-1-1.3-1.7-1.6-.7-.2-1.8-.5-3.3-1.7a6.9 6.9 0 01-2-4.4c-.1-.8-1-.8-4-2.4-3-1.5-2.7-4.7-2.6-6 .1-1.3 1.5-2.3 1.5-2.8s-1-.6-2-1.2-3.5-1.6-3.6-5.4c0-3.7 2.4-4.1 2.4-4.1l-1.4-.8c-1-.6-3.8-2.5-3.8-4.7s1-3.2 1.8-3.8 2.7-1 2.7-1-1.3-.9-1.8-2.6c-.5-1.7-.7-3.9.5-5.4 1.3-1.6 3.4-1.6 4.6-1.6 1.1 0 2.1.6 2.5.3.4-.3.5-.6 0-1.5a6.6 6.6 0 010-3.7c.3-.8.4-2.2 3.2-3.2 2.9-.9 6 1 6.9 1.6.9.5.5-.8.5-1.7 0-1-2-3.3-4.2-6.6a73 73 0 01-5.6-10.2 65.7 65.7 0 01-4.5-13.4c-.3-1.6-1-.8-1-.8s-.6.2-2.2 4.1a25 25 0 00-1.6 10.5z"/>
+  <path fill="#d4af3a" d="M276.5 241.4c-1.7-.1-4-1-5.7-3.6-1.7-2.5-4.3-3-8.8-3-4.4.1-6.5-2-7.6-5.2-1.1-3 .1-6.6 4.7-8.9 4.6-2.2 6.7-4.7 6.8-8.6.2-3.9-4.5-8.7-9.3-14.1-4.7-5.5-8.4-13.2-8.4-13.2s-1.4 1.8-1.4 3.7c0 1.8.7 3.7 0 4.2s-1-.8-3.7-2c-2.8-1.2-5-1.4-6.7.6-1.8 2 0 5.4 1.5 7 1.6 1.7 2.9 3 2.4 3.5-.4.6-2.7-.9-3.5-1.4-.8-.5-2.6-2.5-5.3-2.3-2.6.3-3.6 1-3.8 3.3-.3 2.3 2.4 4.2 4.1 5.1 1.7.9 2.4 1.6 2 2-.5.3-.9 0-1.7-.3a8 8 0 00-4.3 0c-1.4.6-3.6 2.5-1.5 4.8s6.4 3.2 7.2 3.3c.9.2 1.3 0 1.4.6 0 .7-1.8.7-4.1.8-2.4.1-3 2.4-2.7 4 .3 1.8 4.2 3.7 6.4 4 2.1.4 2.9 0 3 .7.2.6-.2.8-1.4 1.2-1.2.3-3.5.6-4 2.5-.4 1.9-.5 2.7 1.3 4.4 1.8 1.6 4.8 1.4 5.6 1.2.9-.2 2-1.1 2.8-.3.9.9-.8 1.6-2.3 2.6-1.4 1-1.3 3 1.2 4.4 2.5 1.4 5 .9 6 .5 1-.3 2.4-2 3.1-1 .7 1.1-2.2 1.5-3.4 3-1.2 1.4-.7 3.8 1.7 5.3s6.4.4 7-.2c.7-.6 1.6-.8 2.1-.3s-.2 1.9-.8 3c-.5 1.3-1.4 4.8 2.2 6.2s6.9-1.7 7.5-2.3c.6-.6 1.2-.7 1.7-.5.5.3.3.8-.1 1.4-.5.6-1.4 3.2 1.2 5a6.3 6.3 0 004.7 1l2-7.2h-.6c-.3 0-.4.5-.4.7 0 .2 0 .4-.2.4-.3 0-.4.2-.8.5-.5.3-.9.7-1.1.5-.3-.2 1-.8 1.2-1.2.3-.4 1-1 1-1.4 0-.4.2-.6.9-1.1l.4-.6a100.5 100.5 0 001.7-12.7h-1.2zM203 187.6a37.3 37.3 0 009.3 12.1l-1-3.2c-.4-1.4-.2-2.9-.2-2.9s-1.3-1.7-3.8-5.6c-2.6-3.9-3.9-9.6-3.9-9.6s2.4 5.7 4.2 8.8c1.8 3 4 5.5 4 5.5s.6-2.7 1.2-2.8c.5-.2.9.2 1.3.8.5.6.9.6.9.6l-1.6-2.8-1.5-2.2c-1.5-2.3-4.6-6.6-6.1-10.9-1.6-4.3-5.1-15.1-5.7-18.3-.6-3.2-1.2-1.4-1.8.9a27.6 27.6 0 00-1 10.7 53.5 53.5 0 005.7 18.9zm5 21a135.9 135.9 0 003.5 2.5l-.6-1.7-.3-2.9-2.8-2.5a41.7 41.7 0 01-5.6-6c-3-3.6-.6-1.4 1.8 1.2s7 6.3 7 6.3v-.8a3.1 3.1 0 01.7-1.9c.4-.6.2-.6-2.4-2.6a74.5 74.5 0 01-17.6-24.4s-1.4 9 4 18.7c5.4 9.9 10.8 13 12.2 14.1zm28.5 56.3c3-1.2 2.1-4.1 2.1-4.1s-1.8.5-3.5 1.2c-1.7.6-5.8 1.8-7.4 1.8-1.7 0-1.7-.2-1.7-.4s1.2 0 3.6-.4a29 29 0 007.2-3.1c.7-.5.6-.6-.4-.7a4.5 4.5 0 01-2.4-.9c-.4-.3-1.5.1-4.2.8a50.8 50.8 0 01-21.5.7c-.6-.2-1.3.2.7 3.7 2.1 3.5 9.4 5.3 14.4 5.3s10.1-2.8 13-3.9zm-13.4-7.2c5.2 0 7.1-1.5 7.1-1.5l-.7-1.3c-.7-1-.6-2.9-.6-2.9l-3.4.6c-2.1.3-4.6.6-7.4.1-2.8-.5-1.6-.8.6-.5 2.2.2 6.4-.6 7.8-1 1.4-.5.8-1-.1-1.3-1-.3-3.5-1.9-3.5-1.9s-6.3.8-12.1.2c-6-.7-9.6-2.2-10.8-2.4-1.2-.2-1.2.3-1.2.3s-.3.6 1.8 3.7c2 3.2 6 5.3 9.3 6.3 3.4 1 8 1.6 13.2 1.6zm-1.4-12.2l-.5-1.3c-.3-1 .6-1.9.6-1.9s-1.2-.3-5.1-.8c-3.9-.5-4.1-.8-6.5-1.3-2.4-.6-4-1.3-4-1.5.1-.3.9 0 2.3.6 1.4.5 7.4 1.2 9.9 1.5 2.5.4 3.9.6 4.3.4.5-.3 2-.7 2-.7l-2.4-.5a8.4 8.4 0 01-3.2-1.3c-.7-.5-.9-.6-4-1-3.3-.3-5.8-1.3-11.5-3.4-5.7-2-10-4.6-11.1-5.5-1.2-1-1-.3-.8 1 .3 1.1.3 2.6 3.2 6 2.8 3.3 4.2 4.8 11.5 7.4 7.2 2.7 15.3 2.3 15.3 2.3zM200.2 228a40.6 40.6 0 0015.5 6.4c.4-.4-.4-2 0-2.8.4-1.1 1-1.1 2.6-1.2 1.6-.1.5-.4.2-.4l-3-.7c-2.6-.7-5.2-1.1-8.7-2.4-3.5-1.4-4.6-2.3-4.5-2.6.1-.3 1.6.8 5 2 3.2 1.3 7 1.8 9 2.3 2.1.4.3-.5-.7-1-1-.6-2.3-2.8-2.3-2.8s-2.3-.4-6-1.5a48.8 48.8 0 01-10-4.2c-1.1-.6-2.2-1.4-3.3-2.2l-5.1-3.7c-1.3-1-1-.2-.8.4s1 3.2 3 6.1c2 3 2.7 3.8 9.1 8.3zm-1-12.7c6.3 5 11.7 6.6 12.6 7 1 .4.9-.2.7-.7-.2-.5-.3-2.2-.3-2.2l-4.8-2.8a79.6 79.6 0 01-7.1-4.7c-1.9-1.3-.8-1.2-.2-.7.6.5 3.1 2 5.7 3.6l6.4 3.9s.1-.9.7-1.4c.5-.5 1.8-.4 1.8-.4l-1-1.3c-.4-.6-2.5-1.3-4.9-2.4a57.5 57.5 0 01-9.6-6.8c-3-2.6-9-9.1-9.5-9.7-.4-.5-.6-.4-.7.3 0 .6-.2 1 .4 4 .7 3 3.5 9.4 9.8 14.3zm22.3-47.2c.7 1.5 1.5 2.6 2 3.6a52 52 0 011.4 2.4s.2-.5 0-1.4c-.1-.8-.2-2 0-3.5l.3-2.3c0-.7-.4-1.4-.5-1.9l-1.5-7c-.5-2.7-1-6.4-.9-9.7 0-3.2.5-1.6.5 0a62.2 62.2 0 002.8 17.2s0-.9.5-2.1c.5-1.3 1.3-2.7 2-4.2.5-1.6.3-1.9.3-1.9s-2.2-10.6-2.8-15.6c-.6-5-1.5-18.1-1.5-18.1-3.3 3.2-5.7 11.8-6 20-.4 6 .6 11.7.9 14 .5 4.5 1.3 8 2.5 10.5zm-7.2 16.8c.1-2.4.7-4.3 2.2-4.8 0 0-1.3-2.4-2.5-5.8a45.7 45.7 0 01-1.9-7.7c-.8-5.6-1.5-11.5.2-2 1.7 9.7 3.7 13 3.7 13l2.5 4a17.3 17.3 0 01-.4-4.9c.1-1.9.4-4.5 1-6.5 0 0-3-6-4.9-13a82.2 82.2 0 01-3.2-22.7s-3 2.3-4 13.9a69 69 0 007.3 36.5zm33.3 88.6l-2-1.3c-1.4-.9-1-3.7-1-3.7l-1.4 1a19.2 19.2 0 01-3.7 2.2c-1.5.6-2.2 1-3 1.2-1 .3-.8 0 0-.5.8-.4 1-.7 3-1.4 1.9-.8 5.7-4.2 5.7-4.2l-2.5-.1c-1.6 0-3.6-.9-3.6-.9s-1.6 1.4-8 4.2a50 50 0 01-11.8 3.5s.7 3.2 3.8 4.3c2.5 1.1 6 1.8 12.9.2a43.5 43.5 0 0011.6-4.5zm8.4 6.5c.5-2.7-1-4.6-1-4.6l-1.3 1.1c-1 .9-2.4 2.5-5 3.9-2.8 1.3-3.7 1.2-1.1-.2s6.4-5.3 6.4-5.3l-1-.4c-1-.4-2.8.3-10 4.6s-11.4 4.5-11.4 4.5 3.2 3.9 12 3.6c8.7-.3 11.8-4.5 12.4-7.2zm16.5-3.1s-1 1.3-2.3 2.2c-1.3.9-4.7 1.4-4.7 1.4l-.8 1.2c-.7 1-2.2 3-3.7 4-1.6 1.2-4 2-4.1 1.6-.1-.3 1.4-.8 2.9-1.8 1.5-.9 2.8-2.6 3.8-3.7 1-1.2-.4-1-.4-1h-3.5c-1.7-.2-1.4 0-1.9.7l-2.4 3-4.4 5.1c-1 1.2-.2 1.5-.2 1.5s.4.7 4.3 1.2c2.4.2 5 0 7.8-1.6a23 23 0 005.2-4.5c4.6-5.1 4.4-9.3 4.4-9.3zm2 10.5l-1.4 1.8 1.2-3c.3-.6.7-1 1-1.4-.7-1.4-1.3-3-1.6-4.7-.5 1.4-1.8 5.5-3.4 8.1-2 3.2-3.8 4.4-2.7 5.3 1.2.8 3.4 1 6-.2 2.4-1.2 3.1-3.3 3.5-5a24.8 24.8 0 01-1.2-2.1 5 5 0 00-1.3 1.2z"/>
+  <ellipse cx="274" cy="158.6" fill="#d4af3a" rx="1.8" ry="1.6"/>
+  <path fill="#d4af3a" d="M270.3 155.5c1.6 0 2.4-.8 4.2-.6 2.2.2 5 1.4 8.6 3.3a14.6 14.6 0 009.8.9c1-.3 2-.9 2.9-1.4 4.2-2.4 3.2-7.1 3.2-7.1a16.7 16.7 0 01-10.7 3.2l1 .8c.5.6 1.7 1.4 1.3 1.7-.4.3-2-1.2-3.2-2.2a19.4 19.4 0 00-6.5-3.2c-3.3-1-7-1-9.5.4-2.5 1.3-2.7 3-2.3 3.7.2.4.6.5 1.1.5zm46.2 34.7c-.8-.2-2.1-.4-3.8-2a71.4 71.4 0 01-6.3-7c-.5-.8-.3-1.5.9-2 1.1-.5 2-2 2-2s-2.6-1-4.3-2.2a44 44 0 01-6.2-5.7c-.6-1-.3-1 .5-1.3.8-.3 1-.8 1-.8s-1.8-1.2-3.5-2.6a71 71 0 01-4-3.6c-2.6 1-6.7.6-8.9.2-3.8-.7-6.6-2.3-6.6-2.3l-.6 1.8c-.5 1.2-2.3 1.8-4 .7-1.8-1.2-1.4-3.7-1.4-3.7s-1.5-1-4.4-2c-3-1.1-5.4-1.3-7.8-.2-2.4 1.1-3.6 4.4-3.6 7 0 2.4 1.4 1.3 1.6 1 .3-.3.9-2.1 3.9-2.6s5.7 1 9.2 3.8c3.4 2.8 4.1 3 5.9 4.8 1.7 1.8.3 2.7-2.6 3.7-3 1-6.8-1-6.9-.9-.6.3 1.3 3 3.8 4 2.6 1 5.8.3 8.3-.8 1.7-.6 2 0 2.6.6a15 15 0 014 9 4 4 0 002.6-3c0-.6.2-1.8 1.2-1 1 1 1.7 6 1.7 8.2s-.7 5.3-.7 5.3h.7l2.3-1.2c1.1-.7 1.2 0 1.2 1.3s.4 3.6 2 7.8c1.7 4.2 4.1 5.5 4.1 5.5s.5-.8 1-2.5.8-4.8.8-7.7c0-2.8-.8-8.8-.8-8.8s3.5 4.2 7 5.2c3.6 1 7.2.4 8.7-1.3 1.5-1.7.1-2.5-.6-2.7z"/>
+  <path fill="#d4af3a" d="M293 201s-1 2.5-1.7 3.3l-.8 1s1 1 2.6 1.4l3 .8s-1.8-2.4-2.4-4.1l-.7-2.3zm21.4-1.3a71.6 71.6 0 00-.8-2.1 15 15 0 01-8.2-1.7s1.7 3.3 3.3 4.5l1.9 1.2s-1.7.3-3.9-2c-2.2-2-3.1-4.6-3.1-4.6s.5 5.8-.4 9.3l-1.1 4s4.6.9 9.8-.6c5.2-1.4 5.6-1.9 5.6-1.9s.6-.1-.2-1.2a28 28 0 01-2.9-5z"/>
+  <path fill="#b96b29" d="M305 187a11 11 0 01-1.8-2.3s-.5.5 0 1.3a15 15 0 004.3 3.7 11.1 11.1 0 003 1.2v-.4s-3.9-1.7-5.5-3.5zm-6.3 12l-.4-8.3c0-1-.7-.8-.7-.8l-.8.3 1.6 10.6c.1 1.2.7 1 1 1-.6-.3-.7-2.5-.7-2.8zm-9.8-31.4c-.6-.6-2-1-.7.4s3 3.2 3.5 4.7c.5 1.4.8 3.3 0 2.9-.9-.4-1.5-.4-2.4-1.2a15 15 0 00-3.2-2.1c-.7-.2-2 0-1 1a24.8 24.8 0 004 3.6c1.8 1.3 3 2 4 2.6a36.9 36.9 0 001.9 1.3s-.9-6-2.5-8.5a26.3 26.3 0 00-3.6-4.7zm-32 99.2a7 7 0 01-2.8 1.3s-.8 0-.8.2 1 0 1.8-.1a8 8 0 002.6-1.4c.5-.4 1.2-.8 1-1.4-.3-.6-.6.5-1.8 1.4zm10.3 5.5l-2.2 1.8-1.3.7c-.7.2-.9.6-.9.6s.2.2.9 0 2.7-1.7 3.4-2.3c.7-.6 1-.7.7-1s-.4 0-.6.2zM225.3 198c.4.4.8 1 1 .9.2-.2 0-.5-.5-1l-.8-.9-1.1-1.5c-.4-.4-1-.7-.3.3l1.7 2.2zm-3.2 7l1.4 1.3c.5.5.8 1.1 1.1.8.3-.3-.7-.9-1.2-1.5a7.5 7.5 0 00-1.4-1.4 10 10 0 00-1.2-.8l1.3 1.6zm1.2 11.2c.8.9 2 1.1 2.1.8.2-.4 0-.6-.7-1a24 24 0 01-2.3-1.4l-1.4-1.1c-.4-.4-.8-.7-1-.6-.1.1 1.1 1.5 1.5 1.7.4.2 1 .8 1.8 1.6zm2.3 9c0-.3 0-.5-.6-.5a26.9 26.9 0 01-1.6-.2s-1.3-.5-1.3-.2c-.1.3 1 .8 1.5.8l1.4.4c.3.2.6 0 .6-.3zm1 9.8c-1.4 0-2.6-.3-2.7 0-.1.1.6.5 1.3.7.8.3 2 .3 3 .4 1 0 1-.2 1-.6 0-.5-1.2-.5-2.6-.5zm11 10.8c-.2-.2-.7 0-1.5 0-.8.3-2 .5-2.8.5l-2.4-.1-.9.2c0 .2 1.2.2 3 .4 1.7.2 2.9-.2 3.7-.3.8-.2 1.1-.5 1-.7zm4.6 7.6a5.6 5.6 0 01-2.2.4l-2.2.3s-.8 0-.6.4c0 .3.3 0 1-.1h2.3c1.1 0 1.8-.4 2.5-.5.7-.1 1.5-.5 1.2-1-.4-.4-1.2.2-2 .5zm8.9 5.8l-2.4 1.8-1.2.6c-.7.4-.7.6-.6.8.2.2.6-.3 1-.5.5-.1 1.8-1 2.5-1.6.7-.6 1.6-1 1.5-1.5-.2-.4-.3-.1-.8.4zm-14.8-74.8l1.7 2.3c1.6 1.9.7.1.3-.4l-3.4-4.5c-.8-.9-.9-.5-.5 0l1.9 2.6zm-3.2 9.8c.2-.2-.3-.4-1.2-1.5l-2.6-3.3s-.5-1-.7-1c-.1.1.6 1.8 1.3 2.5.7.7 1.7 2 2.2 2.7.5.6.7.9 1 .6zm4.2 18.5c0-.5-1.7-.5-2.5-.6l-2.2-.5s-1.6-.3-1.7 0c0 .1.3.3 1.2.5l3.4.8c1 .1 1.8.3 1.8-.2zm-4.2-10c1.1 1 1.9 1.4 2.5 1.7.6.4 1 .8 1.4.5.3-.4-.3-.7-1.3-1.1-1-.5-1.4-.9-1.4-.9l-1-.5c-.6-.3-1.4-.6-.2.3zm9.9-6.5l-1.4-1s-.8-.8-1-.5c-.2.3 1 1 1.5 1.6.6.5 1.6 1.9 2 1.6.6-.3-.4-1.1-1.1-1.7zm-6.5 25.7l-1.6.4c-.6.2-.7.4.5.4 1.1 0 1.5-.3 2.7-.5 1-.2 1.5-.3 1.3-.7-.2-.3-.8-.2-1.2 0l-1.7.4zm1.7 9.3c0 .2.8 0 1.4-.2.6-.2 1.8-.9 2.5-1 .7-.3.7-.4.7-.8s-.8 0-1.7.2c-.9.3-2 1.2-2 1.2s-.8.4-.9.6zm12 5.6c.9-.5 1-.8.7-1-.3-.3-.5-.3-1.2.2a51 51 0 01-2 1.5l-1 .5c-.6.2-1.2.7-1 1 .1.1 1.2 0 1.7-.6s2-1 2.8-1.6zm5.7 7.5c.3-.3 1.3-.6 1.8-1 .4-.3.7-1.3.3-1.4-.3-.1-.5.4-1.3 1l-3.5 2.4-.7.3c-.8.2-.4.5.2.4.6-.1 1-.1 1.8-.7l1.4-1zm8.3 7.1a10 10 0 002.3-1.7c.5-.4 1.1-1 .7-1.3-.3-.3-.7.1-1.3.6l-2.1 2.2s-.3 0-1 .7c-1 .7 0 .5.2.3a3 3 0 011.2-.8z"/>
+  <path fill="#d4af3a" d="M295.2 143.5l3.2 1.4 3.4-2.4-4-1z"/>
+  <ellipse cx="309.2" cy="142.1" fill="#b96b29" rx="3.2" ry="3.1"/>
+  <circle cx="309.2" cy="141.4" r="1.9" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M302.4 131.4c.9.3 2 .2 2 .2s.3-1.4-.5-2.1l-2-1.7-.5-.6-.1 2c0 .8.3 1.9 1.2 2.2z"/>
+  <circle cx="304.2" cy="133" r=".6" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M299.8 132.4l-.8.9s.6 0 1.2.4c.5.4 1.2.7 1.8.6.7 0 1-.7.8-1-.1-.5-.4-1-1.5-1.3-1-.4-1.3 0-1.5.4zm2.2 3.7c-2 .2-4.7-2-4.7-2-.2 1.8-1.3 2.7-3 3l.1.1s1.6.8 3.5 1.1a7 7 0 002.5-.2c1-.2 2.3-.5 3-1 1.2-.7.8-2.6.8-2.6s-.2 1.5-2.2 1.6zm-7.9-2c-.8-.3-2-.9-2.6-1-.5 0-1.2 0-1.1.9.1 1 1.1 1.4 2 1.4 1 0 1.5-.3 2.1-.6.6-.3.5-.4-.4-.7zm-6.3-3.4c-.9-.7-1.7-.9-1.7-.9s-.6 1.6-.3 2.6c.4 1 1 1.2 2 1.2.8 0 2-.5 1.7-1.2a5 5 0 00-1.7-1.7z"/>
+  <ellipse cx="288.6" cy="135.1" fill="#d4af3a" rx=".7" ry=".5"/>
+  <path fill="#d4af3a" d="M290.6 127.3a11 11 0 012-9.3c2.5-3.6 7-5.1 7-5.1l1.5-1.8c1.4-1.5 4.2-3.4 4.2-3.4l-5.2 1.5a2.3 2.3 0 01-2.2 2.4c-.5 0-1-.2-1.3-.4-1 .1-4.4 2.2-5.3 2.9l.3 1.2a2.3 2.3 0 01-2.2 2.3c-.4 0-.7 0-1-.2a9.6 9.6 0 00-.3.5 23.4 23.4 0 00-1.7 3.7c.6.4 1 1.1 1 2 0 1.3-.9 2.3-2 2.3a7.9 7.9 0 000 1.5c.1.7.4 1.2 1.7 1.6 1.3.3 3.1 2.6 3.1 2.6.1 0 1-1.6.4-4.3z"/>
+  <path fill="#d4af3a" d="M298.6 110.3c.5-.4.6-1 .2-1.4-.4-.3-1-.3-1.5.1s-.6 1-.2 1.4c.3.3 1 .3 1.5-.1zm-8.5 5.7c.6-.5.7-1.3.3-1.7-.5-.4-1.2-.4-1.8.1s-.6 1.3-.2 1.7c.4.4 1.2.4 1.8-.1z"/>
+  <circle cx="285.1" cy="123.2" r="1.3" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M313.3 105c-.7.2-2 .6-3.8 1.6 1.3 0 2.3.8 2.3 1.9 0 1-1.1 2.2-2.4 2.2a2.2 2.2 0 01-2.2-2.2l.1-.7-1.7 1.2a17.6 17.6 0 00-7.2 8c-2 3.8-2.8 8-2 10.4 1 2.5 4.2 3 4.3 3 0 0-.4-.3-.5-.8l.3-1.6v-2.1s.8-.1 1.2.4l1.4 1.7 1.6 1.5s.6-1 .6-2.1-.7-2.3-.9-4.3c-.1-2 1-5.5 2.8-8 2-2.6 5.5-5 6.6-5.5a2.1 2.1 0 001.3-1.7l.3-2c0-1.2-1-1.1-2-.9z"/>
+  <path fill="#d4af3a" d="M309.2 109.5c.7 0 1.4-.7 1.4-1.3 0-.6-.6-1-1.3-1-.8 0-1.4.4-1.4 1s.6 1.3 1.3 1.3zm6.2 24.4c1 .4 2.1.1 2.6-.2.6-.4.7-1.3.1-1.8a2 2 0 00-2.1-.2l-2 1.3s.4.5 1.4.9z"/>
+  <path fill="#d4af3a" d="M318.6 135c-.4.6-.7.9-1.8 1-1 0-2.3 0-3-.8a7.7 7.7 0 01-1.3-1.7h-1.2s-.4 1.7-1 2.1c-.5.5-2.5.6-3.3 0-.9-.7-1.6-1.4-1.8-1.3-.1 0 0 .7.9 1.4s1.5 1.3 2.9 1.3h8s1.6 0 2-1c.5-.9.5-1.5.3-1.7-.2-.3-.4.1-.7.7z"/>
+  <path fill="#d4af3a" d="M306.4 133.7c1.2.6 1.9.2 2.3-.3l.6-.8-1.7-.7c-.6-.4-1-.7-1.5-.6l-.6.1s-.3 1.6 1 2.2z"/>
+  <ellipse cx="300.7" cy="121.9" fill="#b96b29" rx="2.7" ry="2.6"/>
+  <path fill="#b96b29" d="M305.3 112.7c-1-.7-2.6-.4-3.5.6-.9 1.1-.7 2.6.4 3.3 1 .7 2.6.4 3.5-.6.8-1.1.7-2.6-.4-3.3z"/>
+  <ellipse cx="300.6" cy="121.5" fill="#d4af3a" rx="1.6" ry="1.5"/>
+  <path fill="#d4af3a" d="M304.2 113a1.8 1.8 0 00-2 .8c-.3.6.1 1.2 1 1.4 1.7.3 2.5-1.8 1-2.2zm-40.7 206s-4.1 2-5.4 2.3l-1.6.4s-2.8 2.5-4.9 3.8a18.3 18.3 0 01-7.1 2.4c-3.2.4-12 .3-16 .1-4-.1-6.4.8-8.1 2.7-1.7 2-2.1 4.7 0 6.8 2.2 2.1 4.6 1 5.4-.2.8-1.3.4-3 0-3.7-.3-.8.7-1 1.8-1.1a24.3 24.3 0 0110.7 2.3c1.3.7.6.8-.3.7-1-.2-2-.5-3.5-1.1-1.6-.6-3-1-4-1s-.7.5-.5.9l1 1.6c.1.4-.3 1.9-.3 1.9l.5 1 .8-1.5c.2-.5-.1-1.5.1-2 .2-.4 1-.4 1.7.4a6.7 6.7 0 011.8 3.5c.3 2-.3 3.3-.3 3.3s.8.7 1 1.1l-.3 2.3s.6.3 1-.7c.6-1 1.2-3 1.3-3.6.2-.7.6-1.9 1.4-1 .8 1 1.4 2 1.5 2.6l.2 1s1.8-1.7 2.4-2.8a17 17 0 013.6-3.9c1.7-1.4 4.6-4.2 6-5.2 1.5-1 5.2-3 6.4-3.6 1.1-.7 1.3-.8 1.5-2.7.2-2 1.2-3.8 1.6-5.1l.6-1.9zm-65.8-73.7c0-.4-.7-1.5-.8-2.1-.2-.6-.8-.3-.8-.3s-1.3.8-2.3 1c-1 .3-1 0-1.2-.6l-.5-3.2c-.2-1-.4-1-.8-.8l-2.4 1c-.9.3-.6.7-.3 1.2l1.6 3.1c.5.7 0 1-.4 1.3l-2.3.6c-1 .4-1 .6-.8 1 0 .3.8 1.7 1.1 2.3.4.6.7.2.7.2s1.1-1 2-1.4c.9-.4 1-.3 1.2.4l1.5 4.8c.2.7.5.6 1 .4l1.6-.4c.5-.2.7-1.3.7-1.3l-2.5-4.4c-.5-1 0-1.1.4-1.2.4 0 1.6-.2 2.6-.5 1-.2.7-.8.7-1.2zm22.3 96.5c-.1-.8 0-1.7-.6-2.3a8.1 8.1 0 01-1.8-3c-.3-1 .3-1.6.2-2.2-.1-.6-1-.6-1.7 0-.8.7-1.9 1.3-1.9 3.2 0 2 .7 4.2 3.4 5 2.6.8 2.6.2 2.4-.6zm2.7-.9s-.5-.3-.8.2c-.2.5-.2.7.5 1.9.7 1 1.2 1.3 2 1.8s.2-.5.1-.8c0-.3 0-.7-.2-1s-.3-.5-.3-1.3-1.3-.8-1.3-.8z"/>
+  <path fill="#d4af3a" d="M226 350c.5-.8 1-1 2.1-1.5a15.3 15.3 0 014.2-1c.7 0 2.5-1.4 2.2-3-.3-1.4-1.4-2-2.3-2.2-1-.3-1.8-.3-2.1.2-.3.5-.9 1-2 1.4s-1.1.7-1.8 1c-.6.1-.1.5-.7 1-.5.4-1.3 0-2.1-.3-.9-.2-1-.4-1.9-.4l-3.4-.2h-.7c-.6 0-.6 0-.9.6s.1 2.1.7 2.9c.6.7 2.6 1 3.9 1.5l3 .8c1.2.1 1.3 0 1.8-.8zm12.2 1.2c1-.7.4-2 .2-2.7-.3-.7-1.7-.9-2.5-.9-.7 0-1.1 0-1.5.4-.4.3-1 .8-2 1.2-1.2.3-2 .7-3.6 1.3-1.5.6-2 1.6-2.6 2-.6.4-1.9 0-1.9 0s-.9-.2-1.2 0c-.3.3 0 .8.6 1.5.6.6 1.8.6 3 1 1.4.4 1.6 0 2.1-.3s1-1 1.8-1.6c1-.6 3-.7 3.9-.8 1-.1 2.6-.4 3.7-1.1zm0-4.6c.4.4 1 1 1.3.3.4-.6 1-2 .6-2.8-.4-.8-1-1.5-1-1.5l-1 3c-.4.5-.4.6 0 1zm-4-7c0-1.2-1-2.8-1-2.8s-.3 1.2-.9 2.2c-.5 1-1 1.6-1 1.6l1.7.4c.5 0 1.1 0 1.1-1.3zm-7.6 2.8c1.4-.2 2.1-.8 2.7-1.3.6-.5 1-1.9.6-2.6-.4-.7-1.4-1.4-1.8-1.4h-.8s-.4 1.3-1 2c-.5.6-1.1 1-1 1.9 0 .8-.1 1.7 1.3 1.4zm2.8-6.3a2.4 2.4 0 00-.6-1.9l-.8-.7-.2 1.6-.1.6.7.6c.4.1 1 .4 1-.2zm-17.3-35.7l1-6a39 39 0 00-6.3-15.4c-2.4-3.8-5-10-6-13.2a37.4 37.4 0 01-2-10c0-2.3 1-3.5 1-3.5s.5-.6.1-1-1 0-1.7.6a7.5 7.5 0 00-1.5 2.6l-.3 1.1s-1.2-.3-3.3-.1c-2 .2-3 .3-3 .8 0 .4.3.7 1.7 1.4 1.5.6 2.4.9 3.1 1.7.8.9 2.6 5.2 3.2 7.3.6 2.1 1.8 7.8 2.3 12.2a49 49 0 004 14.4c.8 1.5 4.5 8.5 7.7 7zm3.7 10.4c-1.4.8-1.3 6.4-.7 9.3.6 2.9 3.4 6.5 4.3 7.5.9 1 1 1 1.5.7l.7-.2s1.2-.5 2.1-1.2c1-.7.6-2.5.4-4-.1-1.6-1.4-4.8-3.6-8.5-2.2-3.6-3.3-4.4-4.7-3.6zm1.5-4.5c0-1.9-1.6-3.2-3.4-3.2-.9 0-1.6.2-2.1.6-1.9 1.7-.7 5.8 2 5.8.9 0 2-.1 2.7-.8.7-.6.8-1.6.8-2.4zm26.5 52.7a7 7 0 01-2.2-1.2 10 10 0 01-3.1-3c-.3-.7-.3-.7-1.4-.4-1 .4-2.5.3-3.6.4-1 0 .2 1.3 1 2.4.7 1.2.4 5.1.4 5.1l-.1.9c-.2.6 0 1 .2 1 .3.2.5 0 1.3-1 .8-.9 2.2-3.2 2.2-3.2l1.4.3c1.2.3 3.1.1 4.1-.2 1-.3.6-1-.2-1.1z"/>
+  <path fill="#d4af3a" d="M239.2 362c-.5 0-.7-.1-1 .2l-.6 1.4c-.1.3 0 .6.2.9l.8.5s.4.5.8.7c.5.2.5-.4.5-.9l.3-1.9c0-.6-.4-.8-1-.9z"/>
+  <path fill="#1d5e91" d="M435 324.2c-1.3-.3-1.9-.8-1.9-.8s-.5 0-1 .7c-.3.8-2 1.8-2 1.8s-2.2.6-2.5 2.2c-.3 1.5.8 2 1.8 1.9 1.1-.2 3.7-.7 4.9-2.1 1.1-1.4 1.3-2.2 1.5-2.7.2-.5.4-.7-.9-1zm3.5-12.4a15 15 0 00-7.4-9.9l-2.1 7.5c-.5 1.8-.5 1.7.9 2l6.7 1.6c.9.3 2.4 1 1.9-1.2zm-20.6-3.2c1 .1 1-.3 1.3-1.7l2.1-8.2s-4.5-.1-8.5 1.8c-3.9 1.9-5.6 5.4-5.6 5.4s1 .4 3.7 1 6 1.5 7 1.6zm-10.5 9.3l-2.2-.4s1 3.8 2.7 6c1.7 2.2 3.5 3.2 7 3.3 3.5 0 6-1.9 6.5-3.4.4-1.5 1.1-2.6 1.1-2.6s-6.2-.8-8.8-1.4l-6.3-1.5z"/>
+  <path fill="#d4af3a" d="M406.3 315.5l15.5 3c1 .3 2 .5 2.2.2.3-.3.5-.5 1.6-.9 1.2-.4 1.1-1.5 1.1-1.5l.4-2.2c.2-1 .8-1.4 2-.1 1.3 1.3 1.5 3.2 1.7 5 .3 2 3.2 2.4 4.4 2.6 1.1.2 1.6-.2 2.3-1.3.7-1 1-3.2 1.2-4.6.2-1.4 0-1.2-1.4-1.6l-9.3-2.2c-1.2-.2-1-1-.7-1.9.1-.8 2.8-9.2 2.8-9.2a18.9 18.9 0 00-7.7-2.3l-2.3 10c-.3 1.3-1.2 1.3-2.5 1-1.4-.2-11.3-2.5-11.3-2.5l-.8 1.8a15.5 15.5 0 00-1.1 5.2c0 1.2.4 1.2 1.9 1.5z"/>
+  <path fill="#d4af3a" d="M440.3 323.3c-1.3-.9-2.3-1.1-3 .5-.7 1.6-.7 4-2.4 5.6-1.8 1.7-4.2 3.4-6.6 3.2-2.4-.2-3.7-.7-3.2-3.5.6-2.7 4.3-3.6 5.1-5 .9-1.5.7-3.1-.6-4.2-1.3-1.1-3.1-1.3-3.6-1a8 8 0 00-2.8 3.7c-.7 2-1.2 3.7-2.8 5a12.2 12.2 0 01-9 2c-3.1-.8-4.3-1.8-5.5-5-1.2-3.1-2.6-8.3-3.2-9-.7-.5-1.5-1-2.8 0-1.4 1-1.5 2.4-1.7 3.6-.2 1.1 0 2.5 1.4 4.1 1.4 1.7 2.8 3.3 3.3 5 .5 1.8 2 4.4-.1 4.5-2.2.2-3.2.2-4.8-1.4-1.7-1.6-8.2-6-10-7.4a29 29 0 00-2.5-2c-3 0-6-1.2-9-3.3 0 0 1.8 4.4 2.1 6.1.4 1.7.3 2.6.3 2.6l9.1 4.6a168 168 0 0110.3 5.8c2.5 1.5 4.7 4 9.1 3 4.5-.9 13.5-3.6 16.5-4.5 2.9-.9 11-2.9 14-5 3-2 3.2-1.9 3.7-4 .5-2 0-3.1-1.3-4zm-17.2-31l2.2-.3c1.5-.1 1 1.3.7 1.9l-1.4 2.7c-.6 1 .2 1.2.6 1.4l2.3.6c1.3.3 1-.6 1-1l.3-3.8c.1-.9 1-.6 1.2-.5l1.7 1c.6.3 1 0 1-.4l.8-2c.2-1-.4-.8-1-.8h-2.4c-1 0-.4-1-.4-1l1.3-2.1c.6-.9.4-1-.2-1.2l-2.8-.7c-.5-.1-.7 0-.7.3l-.1 2.7c0 .7 0 1-1 1-.8.1-1.3-.4-2-1.1-.7-.8-1-.5-1-.2l-.8 3c-.2.7.1.6.6.6zm4.8 21.8s-.1 1.7-.3 2.3c-.2.7-.6 1.6.1 1.8.8.2 1.4.5 1.8.4.5-.1.3-1 0-1.7a6.4 6.4 0 00-1.1-2.2l-.5-.6zm10.5 7c.2.5.7.6 1 .7.4.1 1 .1 1-.5s0-1.5-.5-2.2c-.5-.8-.8-1.3-1.1-.2-.4 1-.6 1.6-.4 2.2zm-36.7-7l1.4.4s0-1.7.3-2.8c.2-1.2.7-2 .3-2-.4 0-.7.4-1 .9-.3.5-1.1.6-1.4 2-.3 1.3.1 1.4.4 1.4z"/>
+  <circle cx="408.9" cy="311.2" r="2.3" fill="#b96b29"/>
+  <circle cx="415.5" cy="312.8" r="2.4" fill="#b96b29"/>
+  <circle cx="434.6" cy="316.9" r="2.4" fill="#b96b29"/>
+  <circle cx="422.1" cy="314.4" r="2.4" fill="#b96b29"/>
+  <circle cx="423.8" cy="308.6" r="2.4" fill="#b96b29"/>
+  <circle cx="425.5" cy="302.9" r="2.4" fill="#b96b29"/>
+  <circle cx="409.1" cy="310.9" r="1.2" fill="#d4af3a"/>
+  <circle cx="415.6" cy="312.6" r="1.2" fill="#d4af3a"/>
+  <circle cx="434.8" cy="316.6" r="1.2" fill="#d4af3a"/>
+  <circle cx="422.2" cy="314.1" r="1.2" fill="#d4af3a"/>
+  <circle cx="424" cy="308.4" r="1.2" fill="#d4af3a"/>
+  <circle cx="425.7" cy="302.6" r="1.2" fill="#d4af3a"/>
+  <path fill="#d4af3a" d="M349.5 359.1l-5.2-3.6a11.8 11.8 0 01-3.9-4h1c.6 0 1-.7 1-1.5.1-.8 0-2.3-.2-4.1-.2-1.8.3-3.3.3-3.3s1.3 1.1 3.1 2c1.9 1 2.6.6 2.6.6l.5-1.9 2 3.7c1 2 4.1 4.2 6.3 5.8 2.2 1.7 4.6 3.4 6.4 4 1.8.7.8 1.5.8 1.5s-1.8 1.8-6.5 2.7c-4.7.8-7-1-8.2-1.9z"/>
+  <path fill="#d4af3a" d="M333.2 357.3c1.7-.2 2.7-.8 3-2.6.2-1.2-.1-5.7-.1-5.7l1.2 1.2c.6.8 2 1 2 1s.2.6.9 1.6a9.3 9.3 0 003 3.2c1.6 1 3.5 2.2 4.7 3.2a28.1 28.1 0 004.2 3.1 7 7 0 013.6 4.7c.6 2.4.1 3.1-1.7 3-1.9-.1-2 0-5-.7-3-.8-7.3-4.1-10.4-6-3.1-2-5.4-6-5.4-6z"/>
+  <path fill="#d4af3a" d="M325 360s1.2-1.6 1.6-3.4l1.4-5.4 1.4 3.3a4.9 4.9 0 002.8 2.7s0 .9 1.5 2.7a21 21 0 005.6 4.8c2.2 1.2 5 3 6.5 5.1 1.5 2.2 1.6 4.4 1 5.4-.8 1-1.8-.1-3.2-.9-1.5-.7-5.6-1.3-11.2-4.4-5.6-3-7.5-9.9-7.5-9.9z"/>
+  <path fill="#d4af3a" d="M322.5 372.7c-1.6-2.4-1.8-8-1.8-8l1.3-1c.7-.7 2.2-2.9 2.2-2.9l2 3.8c1 1.8 1.4 2.4 3.6 4.3 2 2 5 3.9 6.1 6 1.3 2 .6 6.1-.2 7.5-.8 1.5-2 1-3.1-.1L329 379c-2.1-1.7-5-4-6.5-6.3z"/>
+  <path fill="#b96b29" d="M341 325.3c-.8-1.7-1.8-3.7-2.5-4.8a15 15 0 01-1.3-2.2s2 1.8 2.8 3.1c.8 1.4 1.3 2.6 1.6 4 .4 1.4.2 1.6-.6 0zm-8 1.5l-.5-1.9s-.3-1-.2-1.1c.2-.1 1 .6 1.6 2.5.6 1.8 1.5 4.5 1.3 4.6-.2 0-1.9-3-2.2-4.1zm-6.3 5l-.4-.8s-.6-2-.6-2.5c0-.4.2-1 .7.1s.6 2.2.7 2.6c.1.5.7 2.1.5 2.3-.1.1-.5-.9-1-1.7zm19.5 19.2l.9-.5 1.2 1.5c.7.7 1.5 1 2 1.7a8 8 0 002.8 2.3c1.3.7 1.8 1 1.5 1.1-.2.2-1.1-.3-1.1-.3s-.4 0-2-1c-1.5-.9-1.9-1.4-2.9-2.3l-2.4-2.5zm-6.8 8.1c-.6-.6-1.2-1-.9-1.4.4-.3.8-.3 1.3.2l2.9 2.6 2 1.5c.7.6 2.3 1.4 3 1.8.8.5 0 .5 0 .5l-1.2-.5-2.4-1-1.7-1c-1-.7-2.4-2-3-2.7zm-7.8 5.5c-.5-1 0-.8.8-.4.9.3 2.8 2.4 3.9 3.1 1 .8 2 1.1 3 1.6.8.4.8.7.8.9 0 .2-.4.2-.8 0l-1.7-.9-1-.2c-.5 0-1.3-.6-2.4-1.6-1.1-1-2.1-1.5-2.6-2.5zm-3.7 7.2c1.4.8 3.8 2.7 4.4 4 .6 1.2 1 2.1.9 2.3-.3.2-1-.2-1.2-.7l-1-1.2s-2.4-2.4-3.2-3a8.3 8.3 0 01-2.7-3c-.3-1 0-1.4 0-1.4s1.4 2.1 2.8 3z"/>
+  <path fill="#c52126" d="M365 170a22.3 22.3 0 018.3-2.6c3.6-.3 6.4.2 9.5 1 2.1.6 3.9.7 5.6.3 2.6-.7 4.6-3 5.3-6 0 0 2.4 3.1 0 6.5a7.2 7.2 0 01-4.3 2.9c-5.1 1-10.1-2-14.3-2.4-4.1-.2-7.3 2.4-7.3 2.4s-1 .8-2.4 0c-1.3-.8-1.7-1.4-.4-2.2z"/>
+  <path fill="#d4af3a" d="M379.6 317.5l1.2-.2c.7 0 2.2-.6 2.7-.8.5-.2 1.2-.2 1.6.3.5.5 4.1 2.7 4.1 2.7h-6c-2.1 0-3.5-2-3.5-2z"/>
+  <path fill="#d4af3a" d="M362.6 316.4v-.5l.8-1.8s1 .6 1.8 1.5c1.2 1.3 2.5 3 3 3.7 1 1.3 2.5 2.5 1.3.5s-1.6-3-2.6-4.4l-1.6-2 3.4-.5c2.5-.3 4.2-1.3 5.3-2l3.3-1.9s4.3 1.9 6 2.3c1.6.4 2.5.6 1 1.4-1.6.8-3 1-3.7 1.5a12 12 0 01-4.6 1.2c-1.5 0-4 0-3 1a22 22 0 014.2 13l-.1 2.5s-1.8-2-6.6-5a71 71 0 00-7.4-4.4c-.9-.4-1.3-.4-1.2-1.5l.7-4.6z"/>
+  <path fill="#d4af3a" d="M344.4 302a68.5 68.5 0 00.8-.4h.3c.5.3 3.4 2.3 4.6 4.2 1.2 1.9 2.4 2 1 0a17.9 17.9 0 00-3.2-4.2 23.4 23.4 0 00-1-.8 53.3 53.3 0 007.3-4.2c.4.6 1 1.7 1.7 2.5 1 1 3.2 2 3.2 2s-1.8-2-2.4-3.3l-.8-2.5a31.7 31.7 0 004.8-4.6c.3 1.3 1.3 4.2 4.2 7.4 3.7 4.2 11.2 6.3 11.2 6.3s2.6.3.5.9c-2.1.5-3.6 1.5-7.8.8l-5-1.1c-.5-.2-2 0 0 .7 2.1.8 7 1.5 8.8 1.4 1.8-.2 4.4-.6 1.7.8-2.6 1.4-3.7 2-5.3 2s-2.3.5-4 .5c-1.5 0-2-.3-3-.5-1.2-.3-1.9.1-1.9.6 0 .4 1.5 1.7 1.5 4.7 0 3.1-.3 5.1-.6 6-.3 1-1 2.4-1.4 3.2-.4.8-.6 1.7-1-.1-.5-1.8-1.5-4.4-1.9-6.1l-.8-2.7c-.1-.9-1.1-1.6-.6 0a133.4 133.4 0 011.2 5.2c.4 1.5 1.1 4.2-.2 2-1.3-2-6.4-7.7-7.2-8.8l-2.1-2.8c-.7-.8-2.4-1.9-3.2-3.1a28.5 28.5 0 00-4-4l4.5-2zm69.5-129.2c-.1 3.1-3.5 9-5.5 12.2-2 3.1-2.5 4.4-2.1 4.6.3.2 1.1-1.4 2.2-2.8l4.9-7.2c1.7-2.5 4.2-8.4 4.6-8.9.3-.5.4-.9 1.3-.2s2.6 7.2.5 11.6c-2 4.4-5 7.6-6.2 9.2-1.3 1.5-3 4-2.7 4.1.3.2.7-.4 2.3-2a47.3 47.3 0 009.6-12.5c.2-.4.5-.3.8 0 .5.5 1.4 1.8 1 5.3a17 17 0 01-5.3 10.2c-2.3 2.4-4.6 4.5-4.3 4.9.4.3 2.7-1.8 4.3-3.3 1.6-1.6 5.6-5.4 6.4-6.5 1-1 2.2-.5 2.1 3.7 0 4.3-4.7 8.5-6.7 10.9-2 2.3-4.3 3.7-4.1 4.2.2.5 2.1-.7 3.4-1.6l7-4.6c.9-.7 1.3.6.1 4.6-1.2 4-4.6 7.2-6.7 8.7-2 1.5-5.4 3.3-5.2 3.8.2.4 1.6-.2 3.5-1.1 2-1 4.3-1.8 6-2.3 1.6-.5 1.6.7 1.6.7s.4 3.5-2.1 6.2a13.3 13.3 0 01-8 4.3c-2.6.5-3 .6-3 1s.4.5 1 .5l5.3.2c2.3 0 3.5.6 3.5 1.6s0 2.3-3.3 4.6c-3.5 2.3-7.3 2.6-8.9 3-1.6.3-1.6.4-1.3.9.3.5 1 .4 3.6.7 2.5.2 4 1.2 4.4 2 .3.6-.2 2.6-2.3 4-2 1.4-4.7 1.9-8.7 1.6-4-.3-5-.3-5.2.3-.1.7 1.2 1 3.2 1.2 2 .4 3.6.4 4.7 1.3 1.2 1 .3 2.9-1.7 4.3-1.9 1.4-6.7 1.4-8.7 1.3-2-.2-5.1-.9-5.3-.4-.2.6 1.5 1.4 3.5 2.1 2.1.8 2.7 1.2 3.1 2.1.4.9 0 1.7-2.4 2.6a12 12 0 01-8 0c-1.8-.8-2.8-1.1-3.2-.8-.3.3 0 .7.4 1.1.4.5 2 1.8 4.1 2.3 2 .6 2.3.6 3 2.2.8 1.7-1.1 3-4.9 3.2-3.7.1-8.7-1.4-10.3-2.3-1.6-1-2.2-1.1-2.5-.8-.3.3-.2.5.6 1.1.8.6 3.3 2.5 4.6 2.8 1.3.3 1.4 1.3 1.4 2.1 0 1 .4 2.6-3 3.5-3.3.8-7.3.2-10.9-2.4a8.3 8.3 0 01-2.2-2 28 28 0 00-.3-8c.7 0 2-.3 3.4-.9 2-.8 2.8-2.6 3.3-3.6s1.2-1 2-.8c.8.3 1.6.6 2.7.6a7.9 7.9 0 005.3-2.8c1.7-2 1.4-4 1.5-5 0-1 1.6-.3 2.4-.3.8 0 3.2-.4 5.3-1.9 2.2-1.4 2.2-3.4 2.4-4.3.2-.8 1-1.3 1.7-1.6.7-.2 1.7-.5 3.2-1.7 1.5-1.2 2-3.5 2-4.4.2-.8 1-.8 4-2.4 3-1.5 2.8-4.7 2.6-6 0-1.3-1.5-2.3-1.5-2.8s1-.6 2-1.2 3.6-1.6 3.6-5.4c0-3.7-2.4-4.1-2.4-4.1l1.5-.8c1-.6 3.7-2.5 3.7-4.7s-1-3.2-1.7-3.8c-.7-.5-2.7-1-2.7-1s1.2-.9 1.8-2.6c.5-1.7.7-3.9-.6-5.4-1.2-1.6-3.4-1.6-4.5-1.6-1.2 0-2.2.6-2.6.3-.4-.3-.4-.6 0-1.5.4-.8.4-3 .1-3.7-.3-.8-.4-2.2-3.3-3.2-2.9-.9-5.9 1-6.8 1.6-1 .5-.5-.8-.5-1.7 0-1 1.9-3.3 4.1-6.6 2.2-3.4 3.2-5.1 5.7-10.2A65.7 65.7 0 00409 159c.4-1.6 1-.8 1-.8s.7.2 2.2 4.1a25 25 0 011.7 10.5z"/>
+  <path fill="#d4af3a" d="M363.4 241.4c1.7-.1 4-1 5.7-3.6 1.7-2.5 4.3-3 8.8-3 4.5.1 6.6-2 7.7-5.2 1-3-.2-6.6-4.8-8.9-4.5-2.2-6.6-4.7-6.8-8.6-.1-3.9 4.6-8.7 9.3-14.1 4.8-5.5 8.5-13.2 8.5-13.2s1.4 1.8 1.4 3.7c0 1.8-.7 3.7 0 4.2s.9-.8 3.7-2c2.7-1.2 5-1.4 6.7.6 1.7 2 0 5.4-1.6 7-1.5 1.7-2.8 3-2.4 3.5.4.6 2.8-.9 3.5-1.4.8-.5 2.6-2.5 5.3-2.3 2.7.3 3.6 1 3.9 3.3.2 2.3-2.4 4.2-4.2 5.1-1.7.9-2.4 1.6-2 2 .5.3 1 0 1.7-.3a8 8 0 014.3 0c1.4.6 3.6 2.5 1.6 4.8-2.1 2.3-6.4 3.2-7.3 3.3-.8.2-1.3 0-1.4.6 0 .7 1.8.7 4.2.8 2.3.1 3 2.4 2.7 4-.4 1.8-4.3 3.7-6.4 4-2.2.4-3 0-3.1.7-.2.6.2.8 1.4 1.2 1.2.3 3.6.6 4 2.5.4 1.9.5 2.7-1.3 4.4-1.8 1.6-4.7 1.4-5.6 1.2-.9-.2-1.9-1.1-2.8-.3-.8.9.8 1.6 2.3 2.6 1.5 1 1.4 3-1.1 4.4-2.5 1.4-5 .9-6 .5-1-.3-2.5-2-3.2-1-.7 1.1 2.2 1.5 3.4 3 1.2 1.4.8 3.8-1.6 5.3-2.5 1.5-6.4.4-7.1-.2-.7-.6-1.6-.8-2-.3-.6.5.2 1.9.7 3 .5 1.3 1.5 4.8-2.2 6.2s-6.9-1.7-7.5-2.3c-.6-.6-1.2-.7-1.7-.5-.5.3-.2.8.2 1.4.4.6 1.4 3.2-1.2 5a6.3 6.3 0 01-4.7 1c-.6-2-1.3-4.2-2-7.2h.5c.4 0 .5.5.5.7 0 .2-.1.4.2.4.3 0 .3.2.8.5.4.3.8.7 1 .5.3-.2-.9-.8-1.2-1.2-.3-.4-1-1-1-1.4 0-.4-.2-.6-.8-1.1a2.4 2.4 0 01-.5-.6 97.9 97.9 0 01-1.2-7.2 57.1 57.1 0 01-.4-5.5h1.1zm73.7-53.8c-3.9 7.8-9.3 12.1-9.3 12.1l1-3.2c.3-1.4.1-2.9.1-2.9s1.4-1.7 3.9-5.6c2.5-3.9 3.8-9.6 3.8-9.6s-2.3 5.7-4.1 8.8c-1.9 3-4 5.5-4 5.5s-.7-2.7-1.2-2.8c-.5-.2-1 .2-1.4.8-.4.6-.8.6-.8.6l1.5-2.8 1.6-2.2c1.4-2.3 4.5-6.6 6-10.9a169 169 0 005.7-18.3c.7-3.2 1.3-1.4 1.9.9.6 2.3 1.4 5.7.9 10.7a53.5 53.5 0 01-5.6 18.9zm-5 21a135.9 135.9 0 01-3.5 2.5l.5-1.7.3-2.9 2.9-2.5a41.7 41.7 0 005.6-6c2.9-3.6.5-1.4-1.9 1.2-2.3 2.6-6.9 6.3-6.9 6.3v-.8a3.1 3.1 0 00-.7-1.9c-.4-.6-.2-.6 2.3-2.6a73.8 73.8 0 0017.6-24.4s1.5 9-4 18.7c-5.4 9.9-10.8 13-12.2 14.1zm-28.5 56.3c-3-1.2-2.2-4.1-2.2-4.1s1.8.5 3.5 1.2a36 36 0 007.5 1.8c1.6 0 1.6-.2 1.7-.4 0-.2-1.3 0-3.7-.4a29 29 0 01-7.2-3.1c-.7-.5-.6-.6.5-.7a4.5 4.5 0 002.3-.9c.4-.3 1.5.1 4.2.8a50.6 50.6 0 0021.5.7c.7-.2 1.4.2-.7 3.7-2 3.5-9.3 5.3-14.4 5.3-5 0-10-2.8-13-3.9zm13.4-7.2c-5.2 0-7.2-1.5-7.2-1.5l.7-1.3c.7-1.1.6-2.9.6-2.9l3.4.6c2.2.3 4.7.6 7.5.1s1.6-.8-.6-.5a29 29 0 01-7.8-1c-1.4-.5-.9-1 0-1.3 1-.3 3.5-1.9 3.5-1.9s6.3.8 12.2.2c5.9-.7 9.6-2.2 10.8-2.4 1.1-.2 1.1.3 1.1.3s.3.6-1.7 3.7c-2 3.2-6 5.3-9.4 6.3a50.3 50.3 0 01-13.1 1.6zm1.3-12.2l.6-1.3c.3-1-.6-1.9-.6-1.9s1.2-.3 5-.8c4-.5 4.2-.8 6.5-1.3 2.4-.6 4-1.3 4-1.5 0-.3-.8 0-2.2.6a94 94 0 01-14.3 1.9c-.4-.3-2-.7-2-.7l2.4-.5a8.4 8.4 0 003.2-1.3c.7-.5 1-.6 4.1-1 3.2-.3 5.8-1.3 11.5-3.4 5.6-2 10-4.6 11-5.5 1.2-1 1.1-.3.8 1-.3 1.1-.2 2.6-3.1 6-2.9 3.3-4.3 4.8-11.5 7.4-7.3 2.7-15.4 2.3-15.4 2.3zm21.4-17.6a40.5 40.5 0 01-15.5 6.4c-.3-.4.4-2 0-2.8-.3-1.1-1-1.1-2.6-1.2-1.5-.1-.5-.4-.1-.4l3-.7c2.5-.7 5.1-1.1 8.6-2.4 3.6-1.4 4.6-2.3 4.5-2.6 0-.3-1.6.8-4.9 2-3.2 1.3-7 1.8-9 2.3-2.2.4-.4-.5.6-1 1-.6 2.4-2.8 2.4-2.8s2.3-.4 6-1.5a48.8 48.8 0 0010-4.2l3.2-2.2 5.2-3.7c1.3-1 .9-.2.7.4s-1 3.2-3 6.1c-2 3-2.7 3.8-9 8.3zm1-12.7c-6.2 5-11.7 6.6-12.6 7-1 .4-.8-.2-.7-.7.2-.5.3-2.2.3-2.2l4.8-2.8c2.5-1.4 5.3-3.4 7.2-4.7 1.8-1.3.7-1.2.1-.7-.5.5-3.1 2-5.7 3.6l-6.4 3.9s0-.9-.6-1.4c-.5-.5-1.9-.4-1.9-.4l1-1.3c.5-.6 2.6-1.3 4.9-2.4 2.3-1 6.5-4.2 9.6-6.8 3.1-2.6 9.1-9.1 9.5-9.7.4-.5.7-.4.7.3 0 .6.3 1-.4 4s-3.4 9.4-9.7 14.3zM418.5 168c-.7 1.5-1.5 2.6-2 3.6L415 174v-1.4c.1-.8.3-2 0-3.5 0-.8-.3-1.6-.2-2.3 0-.7.3-1.4.4-1.9l1.6-7c.4-2.7.9-6.4.8-9.7 0-3.2-.5-1.6-.5 0s-.1 4-.6 7.8c-.5 3.7-2.1 9.4-2.1 9.4s-.1-.9-.6-2.1l-1.9-4.2c-.6-1.6-.4-1.9-.4-1.9s2.3-10.6 2.8-15.6c.6-5 1.6-18.1 1.6-18.1 3.2 3.2 5.6 11.8 6 20 .4 6-.6 11.7-1 14-.5 4.5-1.3 8-2.5 10.5zm7.2 16.8c0-2.4-.6-4.3-2.2-4.8 0 0 1.4-2.4 2.6-5.8a45 45 0 001.8-7.7c.9-5.6 1.6-11.5-.1-2-1.7 9.7-3.8 13-3.8 13l-2.4 4c.3-1.7.4-3 .3-4.9 0-1.9-.3-4.5-1-6.5 0 0 3-6 5-13a81.4 81.4 0 003.1-22.7s3 2.3 4 13.9a68.4 68.4 0 01-7.3 36.5zm-33.2 88.6l1.9-1.3c1.5-.9 1-3.7 1-3.7a48.7 48.7 0 005.2 3.2c1.4.6 2.1 1 3 1.2 1 .3.7 0 0-.5-.8-.4-1-.7-3-1.4-2-.8-5.8-4.2-5.8-4.2l2.5-.1c1.6 0 3.6-.9 3.6-.9s1.6 1.4 8 4.2a50 50 0 0011.8 3.5s-.6 3.2-3.7 4.3c-2.6 1.1-6 1.8-13 .2a43.5 43.5 0 01-11.5-4.5zm-8.4 6.5c-.6-2.7 1-4.6 1-4.6l1.3 1.1c1 .9 2.3 2.5 5 3.9 2.7 1.3 3.7 1.2 1-.2a39.3 39.3 0 01-6.3-5.3l1-.4c1-.4 2.7.3 10 4.6 7.1 4.3 11.4 4.5 11.4 4.5s-3.2 3.9-12 3.6c-8.7-.3-11.9-4.5-12.4-7.2zm-16.6-3.1s1 1.3 2.3 2.2c1.3.9 4.8 1.4 4.8 1.4l.8 1.2c.6 1 2.1 3 3.7 4 1.5 1.2 4 2 4 1.6.2-.3-1.3-.8-2.8-1.8-1.5-.9-2.9-2.6-3.9-3.7-1-1.2.5-1 .5-1h3.5c1.7-.2 1.3 0 1.8.7l2.4 3 4.4 5.1c1 1.2.3 1.5.3 1.5s-.5.7-4.4 1.2c-2.4.2-5 0-7.7-1.6a23.4 23.4 0 01-5.2-4.5c-4.7-5.1-4.5-9.3-4.5-9.3zm-2 10.5l1.5 1.8s-.7-2-1.3-3l-.9-1.4c.7-1.4 1.2-3 1.6-4.7.4 1.4 1.7 5.5 3.4 8.1 2 3.2 3.8 4.4 2.6 5.3-1.1.8-3.4 1-6-.2-2.4-1.2-3-3.3-3.4-5a24.8 24.8 0 001.2-2.1c.3.2.8.5 1.3 1.2z"/>
+  <ellipse cx="-365.9" cy="158.6" fill="#d4af3a" rx="1.8" ry="1.6" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M369.7 155.5c-1.6 0-2.5-.8-4.3-.6a26 26 0 00-8.5 3.3 14.6 14.6 0 01-9.8.9c-1-.3-2-.9-2.9-1.4-4.3-2.4-3.2-7.1-3.2-7.1a16.7 16.7 0 0010.6 3.2l-.9.8c-.6.6-1.7 1.4-1.4 1.7.4.3 2-1.2 3.3-2.2 1.3-1 3.2-2.2 6.5-3.2s7-1 9.4.4c2.5 1.3 2.7 3 2.4 3.7-.2.4-.7.5-1.2.5zm-46.2 34.7c.8-.2 2-.4 3.8-2a69 69 0 006.3-7c.5-.8.3-1.5-1-2-1-.5-1.9-2-1.9-2s2.5-1 4.3-2.2c1.7-1.2 5.6-4.8 6.2-5.7.5-1 .3-1-.5-1.3-.9-.3-1-.8-1-.8s1.8-1.2 3.5-2.6a71 71 0 004-3.6c2.6 1 6.6.6 8.8.2 3.8-.7 6.7-2.3 6.7-2.3l.6 1.8c.5 1.2 2.2 1.8 4 .7 1.8-1.2 1.4-3.7 1.4-3.7s1.4-1 4.4-2c3-1.1 5.3-1.3 7.7-.2 2.4 1.1 3.6 4.4 3.6 7 0 2.4-1.3 1.3-1.6 1-.3-.3-.8-2.1-3.8-2.6s-5.8 1-9.2 3.8c-3.4 2.8-4.2 3-6 4.8-1.6 1.8-.3 2.7 2.7 3.7s6.7-1 6.9-.9c.5.3-1.3 3-3.9 4-2.5 1-5.8.3-8.3-.8-1.7-.6-2 0-2.5.6a15 15 0 00-4 9 4 4 0 01-2.6-3c-.1-.6-.3-1.8-1.2-1-1 1-1.8 6-1.8 8.2s.7 5.3.7 5.3h-.7l-2.3-1.2c-1-.7-1.2 0-1.2 1.3s-.4 3.6-2 7.8c-1.7 4.2-4 5.5-4 5.5s-.5-.8-1-2.5a33 33 0 01-.8-7.7c0-2.8.7-8.8.7-8.8s-3.4 4.2-7 5.2-7.1.4-8.6-1.3c-1.5-1.7-.2-2.5.6-2.7z"/>
+  <path fill="#d4af3a" d="M347 201s1 2.5 1.6 3.3c.6.9.9 1 .9 1s-1.1 1-2.7 1.4a35.5 35.5 0 01-3 .8s1.8-2.4 2.4-4.1l.7-2.3zm-21.5-1.3a71.6 71.6 0 01.9-2.1 15 15 0 008.1-1.7s-1.6 3.3-3.3 4.5l-1.8 1.2s1.6.3 3.8-2c2.2-2 3.2-4.6 3.2-4.6s-.5 5.8.4 9.3l1 4s-4.6.9-9.8-.6c-5.2-1.4-5.6-1.9-5.6-1.9s-.6-.1.2-1.2a28 28 0 003-5z"/>
+  <path fill="#b96b29" d="M335 187l1.7-2.3s.6.5 0 1.3a16 16 0 01-4.2 3.7c-1.6.9-3.1 1.2-3.1 1.2v-.4s4-1.7 5.5-3.5zm6.3 12l.4-8.3c0-1 .6-.8.6-.8l.8.3-1.5 10.6c-.2 1.2-.7 1-1 1 .5-.3.6-2.5.7-2.8zm9.8-31.4c.6-.6 1.9-1 .6.4-1.3 1.4-3 3.2-3.4 4.7-.5 1.4-.8 3.3 0 2.9.8-.4 1.4-.4 2.3-1.2 1-.7 2.6-2 3.3-2.1.7-.2 2 0 1 1a24.8 24.8 0 01-4 3.6l-4 2.6a36.9 36.9 0 01-2 1.3s1-6 2.6-8.5a26.3 26.3 0 013.6-4.7zm32 99.2c1.2 1 2.8 1.3 2.8 1.3s.7 0 .7.2-.9 0-1.8-.1a8 8 0 01-2.6-1.4c-.4-.4-1.1-.8-.9-1.4.2-.6.6.5 1.8 1.4zm-10.4 5.5l2.3 1.8 1.3.7c.6.2.8.6.8.6s-.1.2-.8 0c-.7-.2-2.8-1.7-3.5-2.3-.6-.6-1-.7-.7-1 .3-.2.4 0 .6.2zm42-74.4c-.4.4-.9 1-1 .9-.3-.2 0-.5.4-1l.8-.9 1.1-1.5c.4-.4 1-.7.3.3l-1.7 2.2zm3.1 7l-1.3 1.3c-.5.5-.9 1.1-1.2.8-.3-.3.7-.9 1.2-1.5a7.5 7.5 0 011.4-1.4 10 10 0 011.3-.8l-1.4 1.6zm-1.2 11.2c-.8.9-2 1.1-2 .8-.2-.4 0-.6.7-1a24.4 24.4 0 004.6-3c.2 0-1 1.4-1.4 1.6-.4.2-1 .8-1.9 1.6zm-2.2 9c0-.3-.1-.5.5-.5l1.6-.2s1.3-.5 1.4-.2c0 .3-1 .8-1.6.8l-1.4.4c-.3.2-.5 0-.5-.3zm-1 9.8c1.4 0 2.6-.3 2.7 0 0 .1-.7.5-1.4.7-.7.3-2 .3-3 .4-.9 0-1-.2-1-.6 0-.5 1.3-.5 2.7-.5zm-11 10.8c.1-.2.6 0 1.4 0 .8.3 2.1.5 2.8.5l2.4-.1 1 .2c0 .2-1.3.2-3 .4-1.8.2-3-.2-3.8-.3-.8-.2-1-.5-.9-.7zm-4.6 7.6a6 6 0 002.1.4l2.3.3s.7 0 .6.4c-.1.3-.4 0-1-.1h-2.4c-1.2 0-1.8-.4-2.5-.5-.7-.1-1.5-.5-1.1-1 .4-.4 1.1.2 2 .5zm-9 5.8l2.5 1.8 1.1.6c.8.4.7.6.6.8-.1.2-.6-.3-1-.5a16.4 16.4 0 01-2.5-1.6c-.7-.6-1.6-1-1.4-1.5.1-.4.3-.1.8.4zm14.9-74.8l-1.7 2.3c-1.6 2-.7.1-.4-.4l3.4-4.5c.8-.9 1-.5.5 0l-1.8 2.6zm3.2 9.8c-.2-.2.3-.4 1.1-1.5l2.7-3.3.6-1c.2.1-.6 1.8-1.3 2.5-.7.7-1.6 2-2.1 2.7-.5.6-.8.9-1 .6zm-4.3 18.5c0-.5 1.8-.5 2.6-.6l2.2-.5s1.6-.3 1.6 0c0 .1-.3.3-1.2.5l-3.3.8c-1 .1-1.9.3-1.9-.2zm4.3-10a15.3 15.3 0 01-2.5 1.7c-.6.4-1.1.8-1.4.5-.4-.4.2-.7 1.2-1.1l1.5-.9 1-.5c.5-.3 1.3-.6.2.3zm-10-6.5l1.4-1s.9-.8 1-.5c.2.3-1 1-1.5 1.6-.5.5-1.5 1.9-2 1.6-.5-.3.5-1.1 1.2-1.7zm6.6 25.7l1.5.4c.7.2.7.4-.4.4s-1.6-.3-2.7-.5-1.5-.3-1.3-.7c.1-.3.7-.2 1.2 0l1.7.4zm-1.8 9.3c.1.2-.8 0-1.4-.2-.5-.2-1.7-.9-2.4-1-.7-.3-.7-.4-.7-.8s.7 0 1.6.2c1 .3 2 1.2 2 1.2l1 .6zm-12 5.6c-.8-.5-1-.8-.7-1 .3-.3.6-.3 1.2.2a51 51 0 002 1.5l1.1.5c.5.2 1.2.7 1 1-.2.1-1.2 0-1.7-.6s-2-1-2.9-1.6zm-5.6 7.5c-.4-.3-1.4-.6-1.8-1-.5-.3-.8-1.3-.4-1.4.4-.1.6.4 1.4 1l3.5 2.4.7.3c.7.2.4.5-.2.4-.7-.1-1-.1-1.8-.7l-1.4-1zm-8.4 7.1a9.2 9.2 0 01-2.2-1.7c-.5-.4-1.2-1-.8-1.3.4-.3.8.1 1.4.6l2.1 2.2s.2 0 1 .7c.9.7 0 .5-.3.3a3 3 0 00-1.2-.8z"/>
+  <path fill="#d4af3a" d="M338.2 142.5l4-1 2.5 2-3.1 1.4z"/>
+  <ellipse cx="-330.8" cy="142.1" fill="#b96b29" rx="3.2" ry="3.1" transform="scale(-1 1)"/>
+  <circle cx="-330.8" cy="141.4" r="1.9" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M337.5 131.4c-.8.3-1.9.2-1.9.2s-.3-1.4.5-2.1l2-1.7.5-.6v2c.1.8-.3 1.9-1.1 2.2z"/>
+  <circle cx="-335.8" cy="133" r=".6" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M340.2 132.4l.8.9s-.7 0-1.2.4c-.6.4-1.2.7-1.9.6a.9.9 0 01-.8-1c.2-.5.5-1 1.5-1.3 1-.4 1.3 0 1.6.4zm-2.2 3.7c2 .2 4.6-2 4.6-2 .3 1.8 1.4 2.7 3 3v.1s-1.7.8-3.5 1.1a7 7 0 01-2.5-.2 10.6 10.6 0 01-3-1c-1.2-.7-.9-2.6-.9-2.6s.2 1.5 2.2 1.6zm7.8-2c.8-.3 2-.9 2.6-1 .5 0 1.3 0 1.1.9 0 1-1 1.4-2 1.4s-1.5-.3-2-.6c-.6-.3-.5-.4.3-.7zm6.3-3.4c1-.7 1.7-.9 1.7-.9s.6 1.6.3 2.6-1 1.2-1.9 1.2c-.8 0-2.1-.5-1.8-1.2.4-.6.8-1 1.7-1.7z"/>
+  <ellipse cx="-351.3" cy="135.1" fill="#d4af3a" rx=".7" ry=".5" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M349.4 127.3c.5-2.7.4-5.6-2-9.3a16 16 0 00-7-5.1L339 111c-1.4-1.5-4.3-3.4-4.3-3.4l5.2 1.5a2.3 2.3 0 002.3 2.4c.4 0 .9-.2 1.3-.4 1 .1 4.4 2.2 5.2 2.9a2.3 2.3 0 00-.3 1.2 2.3 2.3 0 002.3 2.3c.3 0 .7 0 1-.2l.3.5a23.4 23.4 0 011.6 3.7c-.6.4-1 1.1-1 2 0 1.3 1 2.3 2 2.3v1.5c0 .7-.4 1.2-1.7 1.6-1.3.3-3 2.6-3 2.6-.2 0-1.1-1.6-.4-4.3z"/>
+  <path fill="#d4af3a" d="M341.3 110.3c-.4-.4-.5-1-.1-1.4.3-.3 1-.3 1.5.1s.6 1 .2 1.4c-.4.3-1 .3-1.6-.1zm8.5 5.7c-.5-.5-.6-1.3-.2-1.7.4-.4 1.2-.4 1.7.1.6.5.7 1.3.2 1.7-.4.4-1.2.4-1.7-.1z"/>
+  <circle cx="-354.8" cy="123.2" r="1.3" fill="#d4af3a" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M326.6 105c.7.2 2 .6 3.8 1.6-1.3 0-2.3.8-2.3 1.9 0 1 1.2 2.2 2.5 2.2s2.2-1.1 2.2-2.2c0-.2 0-.5-.2-.7l1.8 1.2c4.2 2.8 5.1 4.1 7.2 8 2 3.8 2.8 8 1.9 10.4-.9 2.5-4.2 3-4.2 3s.4-.3.4-.8l-.2-1.6c-.2-1 0-2.1 0-2.1s-.8-.1-1.2.4l-1.5 1.7-1.5 1.5s-.7-1-.7-2.1.8-2.3 1-4.3c0-2-1-5.5-2.9-8a22 22 0 00-6.6-5.5 2.1 2.1 0 01-1.3-1.7l-.2-2c-.1-1.2 1-1.1 2-.9z"/>
+  <path fill="#d4af3a" d="M330.8 109.5c-.8 0-1.4-.7-1.4-1.3 0-.6.5-1 1.3-1 .7 0 1.3.4 1.3 1s-.5 1.3-1.2 1.3zm-6.2 24.4c-1 .4-2.2.1-2.7-.2-.5-.4-.7-1.3 0-1.8a2 2 0 012-.2l2 1.3s-.3.5-1.3.9z"/>
+  <path fill="#d4af3a" d="M321.4 135c.3.6.6.9 1.7 1 1.1 0 2.3 0 3-.8a7.7 7.7 0 001.3-1.7h1.3s.4 1.7 1 2.1c.5.5 2.4.6 3.3 0 .8-.7 1.6-1.4 1.7-1.3.2 0 0 .7-.8 1.4s-1.5 1.3-3 1.3H323s-1.6 0-2-1c-.5-.9-.6-1.5-.3-1.7.2-.3.3.1.7.7z"/>
+  <path fill="#d4af3a" d="M333.5 133.7c-1.2.6-1.9.2-2.3-.3l-.5-.8 1.7-.7c.5-.4.9-.7 1.5-.6l.6.1s.2 1.6-1 2.2z"/>
+  <ellipse cx="-339.3" cy="121.9" fill="#b96b29" rx="2.7" ry="2.6" transform="scale(-1 1)"/>
+  <path fill="#b96b29" d="M334.7 112.7c1-.7 2.6-.4 3.5.6.8 1.1.7 2.6-.4 3.3-1 .7-2.6.4-3.5-.6-.9-1.1-.7-2.6.4-3.3z"/>
+  <ellipse cx="-339.4" cy="121.5" fill="#d4af3a" rx="1.6" ry="1.5" transform="scale(-1 1)"/>
+  <path fill="#d4af3a" d="M335.8 113c.7-.2 1.5.2 1.9.8.3.6 0 1.2-1 1.4-1.7.3-2.5-1.8-1-2.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mf.svg
new file mode 100644
index 0000000..bf46785
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mf" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mg.svg
new file mode 100644
index 0000000..76e84fc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mg.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mg" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ff3319" d="M213.3 0H640v240H213.3z"/>
+    <path fill="#00cc28" d="M213.3 240H640v240H213.3z"/>
+    <path fill="#fff" d="M0 0h213.3v480H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mh.svg
new file mode 100644
index 0000000..f74e99d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mh.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mh" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#3b5aa3" d="M0 0h639.9v480H0z"/>
+    <path fill="#e2ae57" d="M0 467L639.9 0v87L0 480v-13z"/>
+    <path fill="#fff" d="M22.4 480L640 179.2l-.1-95.5L0 480h22.4zm153-464.8L169 118l-27-65.6 10.4 69.8-41.9-56.4 27.5 64.3-55-42.6 42.8 53.6-62.1-27.6 54.4 41.2-67.7-9 64 25.4L14 180.3l100.6 6.7-63.7 26.2 67-9-54.3 40 63-27.6-43 54 54.6-41.3-27 62.9 43.6-54.7-11.8 68.1 27.5-63.7 6.2 100.7 9.7-100.4 23.7 64-9-69 43.4 54.8-28.6-64 54.6 44-43.4-54.9 64.9 27-57.4-41.9 69.9 11.8-67-25.7 104.1-6.5-104-9.7 68.5-22.8-71 9 58.6-41-66 26.5 45.6-55.3-55.6 43.4 26.7-66.4-43.1 56.4 9.3-70.4-25.7 66.5-9.6-102.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mk.svg
new file mode 100644
index 0000000..1f1eaf6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mk" viewBox="0 0 640 480">
+  <path fill="#d20000" d="M0 0h640v480H0z"/>
+  <path fill="#ffe600" d="M0 0h96l224 231.4L544 0h96L0 480h96l224-231.4L544 480h96zm640 192v96L0 192v96zM280 0l40 205.7L360 0zm0 480l40-205.7L360 480z"/>
+  <circle cx="320" cy="240" r="77.1" fill="#ffe600" stroke="#d20000" stroke-width="17.1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ml.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ml.svg
new file mode 100644
index 0000000..66da1bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ml.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ml" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="red" d="M425.8 0H640v480H425.7z"/>
+    <path fill="#009a00" d="M0 0h212.9v480H0z"/>
+    <path fill="#ff0" d="M212.9 0h214v480h-214z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mm.svg
new file mode 100644
index 0000000..c77927e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mm.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mm" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" fill="#fff" d="M0-.5l.2.5h-.4z" transform="scale(8.844)"/>
+    <g id="b">
+      <use width="18" height="12" transform="rotate(-144)" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(-72)" xlink:href="#a"/>
+      <use width="18" height="12" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(72)" xlink:href="#a"/>
+      <use width="18" height="12" transform="rotate(144)" xlink:href="#a"/>
+    </g>
+  </defs>
+  <path fill="#fecb00" d="M0-.1h640V160H0z"/>
+  <path fill="#ea2839" d="M0 320h640v160H0z"/>
+  <path fill="#34b233" d="M0 160h640v160H0z"/>
+  <use width="18" height="12" x="9" y="6.4" transform="matrix(40 0 0 40 -40 0)" xlink:href="#b"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mn.svg
new file mode 100644
index 0000000..6c62973
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mn.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mn" viewBox="0 0 640 480">
+  <path fill="#c4272f" d="M0 0h640v480H0z"/>
+  <path fill="#015197" d="M213.3 0h213.4v480H213.3z"/>
+  <circle cx="107" cy="189.1" r="35" fill="#f9cf02"/>
+  <circle cx="107" cy="173.2" r="38.2" fill="#c4272f"/>
+  <path fill="#f9cf02" fill-rule="evenodd" d="M91.1 131.8a15.9 15.9 0 0031.8 0c0-6.3-4-7.2-4-9.5 0-2.4 2.4-5.6-2.4-9.6 2.4 4-1.6 4.8-1.6 8.8 0 4 1.6 4 1.6 7.1a3.2 3.2 0 01-6.3 0c0-3.1 3.1-6.3 3.1-11 0-4.9-.7-6.5-3.1-10.4-2.4-4-6.4-7.2-3.2-10.4-4.8 1.6-2.4 8-2.4 12s-3.2 6.3-3.2 11 2.4 5.7 2.4 8.8a3.2 3.2 0 01-6.3 0c0-3.1 1.6-3.1 1.6-7.1s-4-4.8-1.6-8.8c-4.8 4-2.4 7.2-2.4 9.6 0 2.4-4 3.1-4 9.5z"/>
+  <circle cx="107" cy="179.5" r="25.4" fill="#f9cf02"/>
+  <path fill="#f9cf02" d="M37 230.4v152.7h31.8V230.4zm108.2 0v152.7H177V230.4zm-70 25.5v12.7h63.6v-12.7zm0 89v12.8h63.6V345zm0-114.5h63.6L107 249.5zm0 133.7h63.6L107 383z"/>
+  <circle cx="107" cy="306.8" r="33.7" fill="#f9cf02" stroke="#c4272f" stroke-width="3.8"/>
+  <path fill="none" stroke="#c4272f" stroke-width="3.8" d="M107 273a16.9 16.9 0 010 33.8 16.9 16.9 0 100 33.7"/>
+  <circle cx="107" cy="289.9" r="6.4" fill="#c4272f"/>
+  <circle cx="107" cy="323.6" r="6.4" fill="#c4272f"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mo.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mo.svg
new file mode 100644
index 0000000..30e9129
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mo.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mo" viewBox="0 0 640 480">
+  <path fill="#00785e" d="M0 0h640v480H0z"/>
+  <path fill="#fbd116" d="M295 108.7l40.5 29.5L320 90.5l-15.5 47.7 40.6-29.5z"/>
+  <g id="mo">
+    <path fill="#fff" d="M320 331.6H217.5a146.3 146.3 0 01-3.8-4H320a2.1 2.1 0 011.4 2c0 .8-.5 1.7-1.4 2zm0-31.3a13 13 0 001.2-7.6 12.4 12.4 0 00-1.2-3.8 82 82 0 01-32.5 19 81 81 0 01-23.5 3.5h-63.1a144.4 144.4 0 005.8 8h61c20 0 38.2-7.2 52.3-19.1zm-109.6-24.7a32.3 32.3 0 01-9.7 2 81 81 0 0060.8 27.5 80.9 80.9 0 0058.5-25 441 441 0 004.5-58.8 441 441 0 00-4.5-67.7c-6.6 6-19 18.7-24.8 38.3A81 81 0 00292 215a80.7 80.7 0 0013.7 45 80.7 80.7 0 01-17-49.5c0-12.4 2.8-24.2 7.8-34.7a32.5 32.5 0 01-7.5-13 80.7 80.7 0 00-10.5 40c0 18 5.9 34.7 15.9 48.1a95 95 0 00-73.4-29.4 32.6 32.6 0 016.8 8.9 95 95 0 0168.6 29.4 95 95 0 00-61-22.2 95 95 0 00-36.7 7.3 81.2 81.2 0 0082.6 52.2c-4.7.8-9.5 1.3-14.4 1.3a80.8 80.8 0 01-56.4-22.8zM320 364.4h-53.1a143.5 143.5 0 0053.1 10.1 11 11 0 001.3-5 11 11 0 00-1.3-5.1zm0-24.5h-93.6a143.8 143.8 0 007.8 6.2H320a4.6 4.6 0 001.3-3.1 4 4 0 00-1.3-3.1zm0 12.5h-76.7a143.6 143.6 0 0014.4 8H320a7.6 7.6 0 001.2-4.2 7.5 7.5 0 00-1.2-3.8z"/>
+    <path fill="#fbd116" d="M200.5 174.8l25.4 23.6-6.7-34-14.6 31.4 30.3-16.8zm36.9-32l34.7.6-27.7-21 10.1 33.3 11.3-32.9z"/>
+  </g>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 640 0)" xlink:href="#mo"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mp.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mp.svg
new file mode 100644
index 0000000..bf9ed63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mp.svg
@@ -0,0 +1,86 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mp" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="mp-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#mp-a)">
+    <path fill="#0071bc" fill-rule="evenodd" d="M-160 0h960v480h-960z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M370 365.7s15.2-16.1 29.8-13c4.4-17 21-18.4 21-18.4s-1.7-18.7 19.5-22.8c.6-12.7 13.5-23.3 13.5-23.3s-2.6-19.7 10.8-24.3c-8.2-15.6 2.8-27 2.7-27.3-.2-.3-14-24.8-1.6-31.8-13-11-8.8-23.4-8.8-23.4s-14.2-3.7-9.1-20.7c-11.7-2-14-20.9-14-20.9s-18 3.7-20.2-12c-12 1.9-13.2-9.8-13.4-9.8-.1 0-23.5 6.3-28.2-11.4-9.1 4.7-13-3.7-13-3.7s-13 6.5-20.8-6c-15.5 9.7-24.2-.4-24.2-.4s-20.3 13.4-27 3c-12 12.2-22.8 7-22.8 7s-9 16-23.7 12c-3.3 14.9-20.2 15.2-20.2 15.2s1.8 13.1-18.4 16.7c-2.6 15.5-13.2 18-13.2 18s1 15.2-8.5 20c3.4 8.5-5.4 18.9-5.4 18.9s9.4 11.7-3.4 24.9c12.3 3.2 3.4 24.4 3.4 24.4s17 7.6 6.3 21.7c12.2 4 8.4 13.6 8.5 19.3 7.8 3.5 14.6 1.8 11.3 17.4 23.8 2.7 12.6 15.8 12.6 15.8s11 .5 6.7 9.3c20.3-.5 23.3 15.2 23.3 15.2s18.8-5 21.3 2.3-8.2 56.7-8.2 56.7-16 0-27.8-12.8c-27.8-.7-21.6-19-22-19-.5 0-9.3 3.4-13.8-11.9-18.6 3.8-18-11.8-18.2-12-.1-.1-8.3-3.8-5.3-11.5-19.1 1.7-17.7-17-17.7-17-4.2-1.7-5.7-5.6-5.1-9.5-2.5-.9-19.5-1.2-10.7-23.6-16.2-9.8-6.1-21-6.1-21s-22.4-11.6-5.1-25c-13-19 1-28.5 1-28.5s-17.9-18.1.3-31c-3-27.5 13.4-34.1 13.4-34.1s-8.6-22.4 14.8-31.8c1.5-22.7 17.9-23.3 17.9-23.3s.4-18 26.2-16.2c5-16.1 22.5-12.9 22.5-12.9s5.4-19.5 29.3-10.1c12.1-23.7 30.2-11.6 30.2-11.6s11.4-7.4 17-5c7.3-12.5 22.8-.6 32.7 1.9 3.7-1.5 16.6-11.2 26.5 1 13.2-8.5 24.5 7 24.5 7s18.1-9.2 26.6 11.8c38.5-3.5 33 21.7 33 21.7s30.2-6.9 23.6 23.3c27.6 1.9 24.8 20 24.8 20s17.4 13.2 9.8 25c15.5.8 9.8 15.7 9.8 15.7s11.9 4.6 2 23c22.7 18.1 4.4 36.2 4.3 36-.2-.1 12.1 14.6 1 31.6 3.4 27-10.2 33.8-10.2 33.8s3.5 17.5-11.7 22.4c-.3 20.5-19.7 23-19.7 23s5.2 9-14 18.3c-.8 13.7-20.8 14.8-20.8 14.8s-1.9 25.2-27.4 18.4c-6.1 20.2-36 14.2-36.6 14-.5-.3-5.7-43.4-5.7-43.5z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.9" d="M185 124s6.4 5.6 5.2 14c-1.2 8.3-6 19.9-5 28.5.6 3.5.3 9.7.3 9.7s-5.7-8.2-5.8-17 6.2-17.1 6.2-23.6-1.1-11.7-1-11.5zm-3.2 2.6s-8.4 8-9.5 15.7c-.8 4-1 22.7-1.2 31-.2 2.5-1.2 12.5-1.4 16.2-.3 3.6 6.1-6.2 6.5-14.3-.2-8.3-.2-25.8.6-28.5.8-3.4.6-7.1 1.8-10.5l3.2-9.6z"/>
+    <g fill="#ffd200" fill-rule="evenodd" stroke="#ef8a10">
+      <path stroke-width="1.9" d="M366 100.5s10.8-5 14-14.4-9.5-9.4-11.1-6.4c-1.7 3 1.4 10.3.6 12.3-.8 2-5.2 6.6-3.5 8.4z"/>
+      <path stroke-width="2.5" d="M269.8 103.9s7-9.7 5.2-19.4c-1.9-9.6-12.8-3.6-12.8-.2s6.2 8.3 6.5 10.4c.3 2.1-1.3 8.4 1 9.1zm-19.1 5.7s7-9.7 5.2-19.3c-1.8-9.7-12.8-3.7-12.8-.3 0 3.4 6.3 8.4 6.6 10.5.2 2-1.3 8.3 1 9.1zm-21.1 6.5s7-9.6 5.2-19.3c-1.9-9.7-12.8-3.7-12.8-.3 0 3.4 6.2 8.4 6.5 10.5.3 2-1.3 8.3 1 9.1zm-15 14.9s7.1-9.7 5.3-19.3c-1.8-9.7-12.8-3.7-12.8-.3 0 3.4 6.3 8.4 6.5 10.5.3 2-1.3 8.3 1 9.1zM199 145.4s7-9.7 5.2-19.4-12.8-3.6-12.8-.2 6.3 8.3 6.6 10.4c.2 2.1-1.3 8.4 1 9.2z"/>
+      <path stroke-width="1.9" d="M235 61.7s-9.4 7.4-10.2 17.2c-.8 9.8 11.3 7 12.2 3.7 1-3.3-3.7-9.7-3.4-11.8.3-2 3.5-7.7 1.4-9zm31.3-9.6s-9.3 7.4-10.2 17.2c-.8 9.8 11.3 7 12.3 3.7.9-3.3-3.8-9.8-3.5-11.9.3-2 3.5-7.7 1.4-9zm-116.7 84.5s2 11.8 10.2 17.3c8.2 5.4 11.5-6.6 9.1-9s-10.3-1.4-12-2.6c-1.7-1.3-5-6.8-7.3-5.7zm-15.6 40s0 12 7.3 18.7c7.2 6.6 12.4-4.7 10.4-7.4s-10-3-11.4-4.5c-1.5-1.6-4-7.5-6.3-6.7zm36 44.8s-4.2-11.2-13.3-15c-9.1-3.6-10 8.8-7.2 10.7 2.9 1.8 10.4-.7 12.3.2 2 .9 6.3 5.6 8.3 4zm-7.4-19.4s7.2-9.5 5.6-19.1c-1.7-9.7-12.7-4-12.8-.6 0 3.4 6 8.5 6.3 10.6.2 2.1-1.5 8.3.9 9.2zm225.6-91.9s10.8-5 14-14.3-9.5-9.4-11.1-6.5c-1.7 3 1.4 10.4.6 12.3-.8 2-5.2 6.7-3.5 8.5zm32.8 16.4s6.4-10.1 3.9-19.6c-2.5-9.5-13-2.8-12.8.6.2 3.3 6.8 7.9 7.2 10 .4 2-.7 8.4 1.7 9zm89.6 93s-4.3-11.1-13.4-14.9c-9.1-3.7-10 8.8-7.2 10.6 2.9 1.9 10.5-.7 12.3.2 2 1 6.3 5.7 8.3 4.1zm-43.8 7s.2-12 7.5-18.6c7.3-6.6 12.4 4.9 10.4 7.6-2.1 2.7-10 2.8-11.6 4.3-1.4 1.5-4 7.4-6.3 6.6zm-7-126.8s-11.3-4.3-20 0c-9 4.4-.2 13.4 3 12.5 3.3-1 6.4-8.3 8.4-9.1 2-.8 8.4-1 8.5-3.4zM434 78.3s-11.1-4.3-20 0c-8.8 4.4-.1 13.4 3.2 12.5 3.2-1 6.4-8.3 8.3-9.1 2-.8 8.4-1 8.5-3.4zm-38-20.4s-9.5 7.3-10.4 17c-1 9.8 11.2 7.1 12.2 3.9 1-3.3-3.7-9.8-3.4-11.9.4-2 3.6-7.6 1.6-9zm-24.8-6s-4.4 11.1-.1 20c4.3 8.9 13.3.2 12.4-3-.9-3.3-8.2-6.5-9-8.4-.8-2-.9-8.5-3.3-8.6zm-70.5 43s7.7-9.2 6.6-19c-1.1-9.7-12.5-4.5-12.7-1.1-.3 3.4 5.6 8.8 5.7 10.9.1 2-1.9 8.2.4 9.1z"/>
+    </g>
+    <path fill="#8c8a8c" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M342.8 114.4s18.5 1.2 19.4 11.8-4.4 17.1-4.4 17.1 2.3 23-15.8 29.7c-19.4 2.3-49.9.5-49.9.5s-9 2.2-12.6-16.3a305 305 0 01-4.6-31.6s1.8-10.4 14.9-11c13-.7 52.8 0 53-.2z"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="1.9" d="M357.7 143.2s-10 12.4-9 17.5"/>
+    <path fill="#8c8a8c" fill-rule="evenodd" stroke="#000" stroke-width="1.9" d="M344.3 172.3c2.5 2.1 4.8 4.4 5.3 12l1 15.4 13 116.6 11.4 84.3.8 13s-2.7 9.7-10.4 10.5c-5.5 11.6-35.7 15-38.7 14.9-2.7-.2-12.3-4.2-18.1-3.7-5.9.5-16 4.4-20.5 3.8-4.5-.7-14.8-4.2-16.6-11.6-12.7-4-14.7-13.7-14.7-13.7l13.7-97.5 13.3-123.4s1.6-16.4 8.2-18.9c6.9-.6 42.4.7 52.3-1.7z"/>
+    <path fill="none" stroke="#000" stroke-width="1.9" d="M274.4 341.1l-2.7 86.3m86.5-74.9l7.6 71.2"/>
+    <path fill="none" stroke="#000" d="M136.6 296.3l-.3 1m358.7-4.1l.3 1"/>
+    <path fill="none" stroke="#6b18b5" stroke-linejoin="round" stroke-width="1.9" d="M127 179.8s5.6 7.9 6.7 12.4c1 4.5 2.9 13.4 5.3 17 2.5 3.7 16.6 23.9 17.4 32.3.1 5.6-5.9 15-14.7 15.2-5.6-.2-19.8-3.8-20.4-16-.6-12.3 4.3-12.5 5-20 .5-7.4.7-40.7.7-40.9z"/>
+    <path fill="none" stroke="#6b18b5" stroke-linejoin="round" d="M224.5 72.8s-6 .4-10.4 2.9c-3.5 2.1-9.5 5.3-13.6 11-10.6 8.2-26.5 12-31.5 19-3 4.6-2.8 15.7 4.7 20.5 4.8 2.7 19 7 25.8-3.1 6.8-10.2 2.7-13 6-19.6a117.4 117.4 0 0119-30.7zM367 58s-4.4-4-9.3-5.5c-4-1-10.6-.6-17.5-1.3-13.3-1.8-27-11.4-35.3-10.2-5.4 1-13.3 9-11.5 17.6 1.3 5.4 7.3 16.2 19.4 14.1 12-2.1 12-4.8 19-7 17.4-9.7 35-7.7 35.2-7.7zm141.4 137.4c1-2.3-.9-6.6-2.2-11.5-1.2-4-3.1-10-7.7-15.5-5.4-12.2-4.5-29-10-35.4-3.7-4-14.6-6.6-21-.4-3.9 4-11.4 16.6-3.2 25.7 8.2 9 11.8 5.7 17.4 10.5 13.5 9 20 25 26.7 26.6zM503.5 302c1.9-2.5 5.2-7.4 4.8-11.5-.3-3.2 1.5-13 1.7-17.3 1.2-13.3 9.5-24.2 7.2-35.7-1.3-5.4-9.2-13-17.8-10.8-5.2 1.6-17 8-14.3 20 2.7 12 6.6 11.7 9.1 18.7 7.3 14.5 2.7 31.7 9.3 36.6z"/>
+    <path fill="none" stroke="#000" stroke-width="1.9" d="M405.5 386.8s-2.3 4.4 6.8 8.2m11.3-18.4s10-2.5 16.8 0m13.2-25.4c0 .2-1.4 4.5 6.6 10.8m-.8-22s5.9 4.3 15.8 4m-75.4 8.6s.3 11.5-5.6 16.8m25.4-34.5s9.7 2.4 17.7-1.6m44.6-15.3s2.1 3 12.9 2.5m-54.9-9.3c.3.2 12.7 4.2 20.5.6m4.2-47.8s.5-.7 4.3 12.7m5.2-50.4s-.5 7.1-6.2 10.2m42.9-39.4s-8.4 6.8-6.8 9.5m-34.7-14.4s4.3 7.3-2.8 12.3M448.2 161s7.5-.3 10.8 6.1m-24.8-27.3h5.7m24-26c0 .1 1.5 1.5-1.4 4.5m-52-3.8s4 6.2 3.3 13.9m19.8-35.1c1.8-.2 7.7-2.8 7.7-2.8m-33.4-22c-.1 0-2.2 7.7 1.6 10.5m-11.1 25c0 8.4 6.6 6.3 2 14.3M382.2 97a57 57 0 00-10.4 9.4m-16.4-13.7s4.4 4.3 3.3 10.2m-16-13.7s-2.2 6.6-5.1 8.3m-18-10c-.1.3-3.6 7.8-6 9.1m-25.6-9c.2 0 3.5 7-.8 12m-6.5-48c.2.2.7 5.4-2.6 10m-28.7 1.9c0 .1 1.4 5.9-7.8 7.8m-9.9 45.2c.2.3 8.9 1.7 8.9 1.7M210 136.6c.2-.2 10.6-3.3 10.6-3.3m-27.4 16.3c.3 0 7.3 1.3 9 .4m-14 6s2.3 1.3.4 13m-34.2-43.5l4.2 6.2m-18.5 26c0-.2 4.2 6.2 9.8 7.4m23 25.2a49 49 0 008-2M170 213.8c.2 0-.1-4.3 5.2-7.3M163 224.7c0 .2 5 6.4 8.5 7.3m-11.5 4.7c.6-.2 6-4.9 12.2-4.5m-13.9 20.6s.2 5.4 16.2 4m-14.6 15c0-.2 4.7-10.8 14.2-14.8m-1.4 28.4s1.4-4.6 9.4-7.7m-.5 25.5s5.7-4.7 7.8-5.3m-.7 19.3s3.5 3.6 12.2-2.7m-54 5.6c1-.2 13.7-3.1 18 3.5m-13 7s13.4-1.8 15.1-.4m32.7 3.1s-1.8 3.7 14.7-2.4m5.8 9c-3 5 .7 9-3.2 11.3m-47-4.3c.5-.4 6-2.3 5.2-10.3m-.2 22.3c.7-.2 9.9-4.2 11.8-2.1m6.3 13.7s1.2-8.2 3.8-9m10 21.3s7.7-.1 11-2.6m3.8-25c.2.2 7.1 3.8 22 .2m-16.4 33s2 10.6 2 13"/>
+    <g fill="#de2010" fill-rule="evenodd" stroke="#000" stroke-width="1.5">
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.60885 -.2011 .2072 1.65762 94.8 75)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.60885 -.2011 .2072 1.65762 93.4 57.3)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.58497 -.3417 .35206 1.633 78 74)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.4455 -.73446 .7567 1.4893 55.9 163)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.4455 -.73446 .7567 1.4893 48.9 147.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.3781 -.85423 .88011 1.41987 40 167.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.28907 -.98346 1.01327 1.32812 33.8 193)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.1329 -1.15994 1.19508 1.16722 35.3 239)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(1.02138 -1.25922 1.29739 1.05234 34.3 262.7)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.79817 -1.41132 1.45408 .82236 51.9 315)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.66642 -1.4781 1.52289 .6866 56.8 337.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.56582 -1.51945 1.5655 .58296 57.9 352.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.4482 -1.5582 1.60543 .46178 63 370.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.20288 -1.60864 1.65738 .20903 94.7 408.9)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.06506 -1.62008 1.66918 .06703 106.3 427.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(.06506 -1.62008 1.66918 .06703 88.8 428)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.36132 -1.5806 1.62852 -.37226 172.5 473.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.49045 -1.54542 1.59227 -.50531 188.3 485.8)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.67103 -1.476 1.52073 -.69138 221.9 499.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.7945 -1.41337 1.4562 -.81858 241.4 508.3)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-.94339 -1.31867 1.35863 -.97197 271.6 515.4)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.05159 -1.2341 1.27151 -1.08344 292.4 520.2)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.13737 -1.15553 1.19056 -1.17183 308.9 526.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.2301 -1.05628 1.08829 -1.26738 331.4 529.6)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.33573 -.91908 .94693 -1.3762 362.5 526.1)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.47374 -.67597 .69645 -1.51841 415.9 504)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.52895 -.53958 .55593 -1.5753 438.7 497.5)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.61445 -.12005 .15429 -1.33344 500.5 406)"/>
+      <path d="M232.8 119c0-2-.8-4-2-5-1.4-1.1-3-1.1-4.2 0s-2.1 3-2.1 5c0 2.1.8 4 2 5.1 1.4 1.1 3 1.1 4.2 0s2.2-3 2.1-5z" transform="matrix(-1.58082 -.36035 .37125 -1.62873 468.4 480.8)"/>
+    </g>
+    <path fill="#ffe300" fill-rule="evenodd" d="M480 194.7c2.2-2.3 4.2-3 6.7-2.1-1-6.1-2.8-8.2-5.2-7.4-2.3.7-3.4 3.8-1.5 9.5zm3.3 18.2c2.3-2.1 4.3-2.6 6.8-1.6-.4-6-2.2-8.3-4.6-7.7-2.4.5-3.6 3.6-2.2 9.3zm-7.8-35c1.5-2.7 3.3-3.8 6-3.7-2.5-5.6-4.8-7.1-7-5.8-2 1.3-2.2 4.6 1 9.6zm-8.1-16.6c1.5-2.8 3.3-3.9 6-3.7-2.5-5.7-4.9-7.2-7-5.9-2 1.3-2.2 4.6 1 9.6zm-19.5-30.5c1-3 2.6-4.4 5.2-4.6-3.3-5.2-5.9-6.3-7.7-4.7s-1.5 5 2.5 9.3zM435 117.5c1-3 2.4-4.4 5-4.8-3.4-5-6-6-7.8-4.4-1.8 1.7-1.4 5 2.8 9.2zM408.3 95c0-3.2 1-5 3.3-6.2-4.8-3.7-7.7-3.8-8.8-1.7s.2 5.1 5.5 7.9zm14 10.5c.4-3.1 1.7-4.8 4.3-5.5-4.2-4.5-6.9-5.2-8.4-3.3-1.5 2-.7 5.1 4 8.8zm-30-19.3c-.3-3.1.5-5 2.7-6.5-5.2-3.2-8-3-9-.8-.9 2.3.8 5.1 6.4 7.3zM376.2 79c-.8-3-.3-5 1.7-6.8-5.6-2.4-8.4-1.9-9 .5-.6 2.4 1.5 4.9 7.3 6.3zm-17.5-5.4c-1.1-3-.8-5 1.1-7-5.8-1.9-8.5-1.1-9 1.3-.3 2.4 2 4.8 7.9 5.7zm-17.3-3.4c-1.2-2.8-1-5 .7-7-6-1.5-8.6-.5-8.8 2-.3 2.4 2.2 4.6 8.1 5zm-18.2-1.4c-1.6-2.7-1.6-4.8 0-7-6.1-.9-8.7.4-8.6 2.8 0 2.5 2.7 4.4 8.6 4.2zm-35.7 2.7c-2.2-2.2-2.7-4.3-1.8-6.8-6 .6-8.2 2.4-7.6 4.8.6 2.4 3.7 3.6 9.4 2zm17.6-2.3c-1.9-2.5-2.2-4.6-.9-7-6.1-.2-8.5 1.3-8.2 3.8.3 2.4 3.2 4 9 3.2zm-34.9 6c-2.4-1.9-3.3-3.8-2.7-6.4-6 1.5-7.8 3.6-6.9 5.8 1 2.3 4.2 3 9.6.6zm-33 15.2c-2.8-1.4-4-3.1-3.9-5.8-5.6 2.6-7 5-5.6 7 1.3 2 4.6 2.2 9.5-1.2zm16-8.1c-2.7-1.7-3.6-3.6-3.2-6.2-5.9 1.8-7.6 4-6.5 6.2 1.1 2.2 4.4 2.8 9.6 0zm-45.6 28.8c-3-.8-4.6-2.3-5-5-5 3.8-5.8 6.4-4.1 8.1 1.8 1.7 5 1.2 9-3.1zm14.1-11.6c-3-1-4.4-2.6-4.6-5.2-5.2 3.2-6.3 5.8-4.7 7.7 1.6 1.8 5 1.5 9.3-2.5zm-26.7 24c-3-.6-4.7-1.9-5.4-4.5-4.6 4.1-5.2 6.9-3.3 8.4 1.9 1.6 5 .7 8.7-4zM183.7 138c-3.2-.2-5-1.3-5.8-3.8-4.2 4.5-4.6 7.2-2.6 8.6 2 1.4 5.1.2 8.4-4.8zm-9.4 15c-3.2.2-5-.7-6.4-3-3.4 5.1-3.4 8-1.2 9s5.1-.6 7.6-6zm-8.3 16c-3 .6-5 0-6.7-2.2-2.7 5.5-2.3 8.3 0 9 2.3.8 5-1.2 6.7-6.9zm-6.6 16.3c-3 1.1-5 .8-7-1-1.8 5.8-1 8.5 1.5 8.9 2.4.3 4.7-2 5.5-8zm-4.5 18.2c-2.8 1.3-4.9 1.2-7-.5-1.4 6-.4 8.5 2 8.7 2.5.3 4.7-2.2 5-8.2zm-1.8 15.2c-2.6 1.4-4.7 1.6-7 .5-.7 4.9.6 6.8 3 6.6 2.4-.2 4.3-2.4 4-7.1zm307-72.2c1.1-3 2.7-4.4 5.3-4.6-3.2-5.2-5.7-6.3-7.6-4.8-1.9 1.6-1.6 5 2.3 9.4zm25.2 85c2.3-2.2 4.4-2.7 6.8-1.6-.4-6.1-2.2-8.3-4.6-7.8-2.3.6-3.6 3.6-2.2 9.4z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.9" d="M461.3 132s-7 6.9-5.7 15.2c1.2 8.3 6.5 18.6 5.5 27.3-1 8.6-2.5 14.3-2.5 14.3s8-9.1 8-18c.2-8.7-5.4-20.3-5.4-26.7s.3-12.2.1-12zm12.7 28s-5.3 4-4.8 13c.5 9.1 10 25.8 10 25.8s6.8 14 6.5 17.7c-.2 3.7 1.3-3.5.6-11.5s-11-25.8-11-25.8-2.2-3.6-2-9.7c.2-6 .8-9.4.8-9.5z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M313 47.4c0-1.8-2.2-3.4-4.8-3.4s-4.7 1.6-4.7 3.4 2 3.4 4.7 3.4 4.7-1.5 4.7-3.4zm2 8c0-1.8-2.2-3.3-5-3.3-2.6 0-4.8 1.4-4.8 3.2s2.2 3.3 4.9 3.3 4.8-1.5 4.8-3.3zm6-9.4s-5.6 4.1-3.3 5.8c2.3 1.7 8.6-3.6 8.6-3.6L321 46zm163.3 95.4c0-1.2-.5-2.3-1.4-2.9a2.6 2.6 0 00-3 0c-.9.6-1.4 1.7-1.4 2.9s.5 2.3 1.4 2.9a2.6 2.6 0 003 0c.9-.6 1.4-1.7 1.4-2.9zm-2.1-8c0-2-1.4-3.5-3-3.5s-3.1 1.6-3.1 3.6 1.4 3.5 3 3.5 3.1-1.6 3.1-3.5zm1.5 16.2c0-1-.6-1.8-1.2-1.8s-1.2.8-1.2 1.8.5 1.9 1.2 1.9 1.2-.9 1.2-1.9zm4.9-14.4c0-1.2-.6-2.1-1.2-2.1-.7 0-1.2.9-1.2 2s.5 2.2 1.2 2.2c.6 0 1.2-1 1.2-2.1zm-13.4 1.4c0-1-.6-1.7-1.2-1.7s-1.2.8-1.2 1.7.5 1.8 1.2 1.8 1.2-.8 1.2-1.8zm2.1 11.4c0-1.5-1.1-2.7-2.5-2.7s-2.5 1.2-2.5 2.7c0 1.6 1 2.8 2.5 2.8s2.5-1.2 2.5-2.8zm-6.6-5c0-1.3-1-2.4-2.1-2.4-1.2 0-2.2 1-2.2 2.4s1 2.4 2.2 2.4c1.1 0 2-1 2-2.4zm-1-6.8a2 2 0 00-1-1.7 1.8 1.8 0 00-1.9 0 2 2 0 00-.9 1.7 2 2 0 001 1.8 1.8 1.8 0 001.8 0c.6-.4 1-1 1-1.8zm30.1 34.4c-2.7-3.6-7.1-5.1-9.8-3.4-2.6 1.7-2.6 6 .2 9.7 2.7 3.6 7 5.1 9.7 3.4 2.7-1.8 2.7-6 0-9.7zm7.8 66.7c.5-4.5-1.6-8.4-4.8-8.8-3.2-.3-6.2 3-6.8 7.4-.5 4.4 1.7 8.3 4.9 8.7 3.2.4 6.2-3 6.7-7.3zm1.6 38.8c1-4.4-.9-8.5-4-9.2-3.2-.6-6.5 2.4-7.4 6.8-.9 4.3 1 8.4 4 9 3.2.7 6.5-2.3 7.4-6.7zm7.5-36.4c0-1.7-1.2-3.1-2.6-3.1s-2.7 1.4-2.7 3.1c0 1.8 1.2 3.2 2.7 3.2s2.6-1.4 2.6-3.2zm-6.5 7.3l-5.4 6.2s-5.1.1-4.8 1.8c.2 1.6 7 6.6 7 8.6-.1 2 4.4-.5 4.4-.5l3.7-11.1s-.2-7.7-2.2-7.6c-2 .2-2.5 2.5-2.7 2.6zm-357.4-2.4a2.6 2.6 0 10-5.1 0 2.6 2.6 0 005.1 0zm2.5-8c0-1.4-1.2-2.6-2.6-2.6s-2.6 1.2-2.6 2.7 1.2 2.7 2.6 2.7a2.7 2.7 0 002.6-2.7zM134 199.2c-1-2.2-3-3.4-4.5-2.7-1.5.7-2 3-1 5.2s3 3.4 4.5 2.7c1.6-.7 2-3 1-5.2zm6.5 23.4c-1.4-2.8-4.1-4.4-6.2-3.5s-2.7 3.9-1.4 6.7 4 4.4 6.2 3.5 2.7-3.9 1.4-6.7zm6.8 17.2c.5-3.5-1-6.8-3.2-7.2-2.3-.5-4.4 2-4.9 5.5-.4 3.5 1 6.7 3.3 7.2 2.2.5 4.4-2 4.8-5.5zm-11 2.5c1.4-3.3.9-6.8-1.1-7.8s-4.8.7-6.2 4-.9 6.7 1.2 7.8 4.7-.7 6.1-4z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M131.3 234.8c0-1.7-1.3-3-2.9-3s-2.9 1.4-2.9 3 1.3 3 3 3 2.8-1.3 2.8-3zm-2.3-7.5c0-1.5-1.2-2.7-2.6-2.7a2.7 2.7 0 00-2.6 2.8c0 1.4 1.2 2.7 2.6 2.7s2.6-1.3 2.6-2.8zm2.4-14.3c0-2.6-1.1-4.6-2.5-4.6s-2.5 2-2.5 4.6c0 2.5 1.1 4.6 2.5 4.6s2.5-2 2.5-4.6zm7.8-1.1c.3-2.5-.5-4.7-2-5-1.3-.1-2.7 1.8-3 4.3-.4 2.5.5 4.7 1.9 4.9 1.3.2 2.7-1.7 3-4.2zm55-110c1.1-3.6 0-7.2-2.3-8-2.3-.9-5 1.3-6 4.9-1 3.6 0 7.2 2.3 8 2.3.9 5-1.3 6-4.9zm-10.4 15.9c3-2.7 4.4-6.3 3-8.1-1.5-1.9-5.2-1.2-8.3 1.4s-4.3 6.2-2.9 8c1.5 1.9 5.2 1.3 8.2-1.3zm-6-8.8c3-2.3 4.2-5.4 2.8-7s-5-1-8 1.2c-3.1 2.3-4.4 5.4-3 7s5 1 8.1-1.2zm23.5-15.5c2-1.6 2.9-3.8 2-4.9-1-1-3.5-.7-5.6.9s-2.9 3.7-1.9 4.8c1 1.1 3.4.7 5.5-.8z"/>
+    <path fill="#6b18b5" fill-rule="evenodd" d="M189 108.5c1.4-2.2 1.5-4.5.2-5.2-1.3-.7-3.5.4-4.9 2.6s-1.5 4.5-.2 5.2c1.3.7 3.5-.5 4.9-2.6zm17.7-9.3c2.2-1.9 3-4.3 2-5.5-1.2-1.2-4-.6-6.2 1.2s-3 4.3-1.9 5.5c1.2 1.2 3.9.6 6.1-1.2zm-32 21.6c2 0 3.6-1.1 3.4-2.3 0-1.1-1.9-2-4-1.9-2 .1-3.6 1.2-3.4 2.3.1 1.2 2 2 4 2zm38.7-33.1c1.4-2.2 1.5-4.5.2-5.2-1.2-.7-3.4.4-4.8 2.6s-1.5 4.5-.2 5.2c1.3.7 3.4-.4 4.8-2.6z"/>
+    <path fill="#ffd200" fill-rule="evenodd" stroke="#ef8a10" d="M446.8 153.4s6.4-10.1 4-19.7c-2.5-9.5-13-2.7-12.8.7.2 3.3 6.8 7.9 7.2 10 .4 2-.8 8.3 1.6 9z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.3" d="M324.9 69.3s23 .9 23.1 15.8c0 2.3 0 5-.8 11.7 4.6-2.5 7.6-9.3 7-13.7.1-15.1-20.5-25.5-29.3-13.8z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.3" d="M310.3 68.6s18.5-3.8 18.7 11c.1 15-6 17.3-6 17.3s14.3-3 14.4-18.1c0-15.2-18.3-21.9-27.1-10.2z"/>
+    <path fill="#f7df73" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.5" d="M373.3 390s86.8-24.6 113-131C471 368.1 376 403 376 403l-2.8-13z"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M382.2 396.6c2.7 0 9.3-7.4 13.1-8.2 3.8-.8 4.2-4.7-.1-4.8-4.4-.2-8.2 5-8.2 5s-3.8 3.2-7.8 3.6c-4 .4-1.4 5.4 3 4.4z"/>
+    <path fill="#8c1800" fill-rule="evenodd" stroke="#8c1800" stroke-width="2.5" d="M432.2 359.3s-9 5.2-7.8 6.5c1.3 1.3 9.3-5 9.5-5 .1-.2 3.4-4.2-1.7-1.5z"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M400.7 383s-2.7-1 4.2-3.6c7-2.7 6.5-5.8 8.8-7.1 2.2-1.3 7-4.7 8-2.7s-5 6-6.5 6.4c-1.4.4-8.3 6.8-10.3 7.3-2 .6-3.4.3-4.2-.3z"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="3" d="M445.6 346c-6 6.7-6 6.5-6 6.5"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.8" d="M454.5 335.2l-5.7 6.9"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.5" d="M463.4 321l-6.4 10.2"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="2.3" d="M470.9 306.6l-5.3 10.5m8.6-18l-1.6 3.6"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.4" d="M478 289l-1.4 4.4"/>
+    <path fill="#f7df73" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="1.5" d="M160.3 216s52-14.7 67.6-78.5c-9.1 65.5-66 86.2-66 86.2l-1.6-7.7z" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M250.7 394.4c-2.7 0-9.2-7.5-13-8.3-3.8-.9-4.2-4.8.1-5 4.4 0 8.1 5.1 8.1 5.1s3.8 3.3 7.7 3.8c4 .4 1.4 5.4-2.9 4.4z"/>
+    <path fill="#8c1800" fill-rule="evenodd" stroke="#8c1800" stroke-width="1.5" d="M195.5 197.6s-5.4 3.2-4.6 4c.7.7 5.5-3 5.6-3.1.1-.1 2-2.5-1-.9z" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="#8c1800" fill-rule="evenodd" d="M232.4 380.6s2.6-1-4.2-3.7-6.5-6-8.7-7.2c-2.2-1.3-7-4.7-8-2.7s5 6 6.5 6.4c1.4.5 8.2 7 10.2 7.5 2 .6 3.3.3 4.2-.3z"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.8" d="M203.5 189.7l-3.5 3.9" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.7" d="M208.9 183.2l-3.4 4.1" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.5" d="M214.2 174.7l-3.8 6.1" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width="1.4" d="M218.7 166.1l-3.2 6.3m5.2-10.9l-1 2.2" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="none" stroke="#8c1800" stroke-linecap="round" stroke-width=".8" d="M223 155.5l-.9 2.7" transform="matrix(-1.65528 0 0 1.70062 524.8 20.4)"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.3" d="M490.4 239.3c.5 6.7 7 13 4.4 24.7-3.2 13.3-14.8 44.7-12.8 50.2-3.4-4.7-2.8-9-3-15.6-.4-6.5 9.4-30.9 10.3-39.1 0-7.4.7-17.5 1.1-20.2z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.3" d="M490.4 239.4s10.7 13.5 10.1 24.2c-.5 10.7-6.5 23.2-4.5 28.7a21.7 21.7 0 01-4.6-14.2c-.3-6.5 5.3-13.8 4.1-20.9-1.1-7-5.2-17.8-5-17.8zm-349.3 3c-.4 6.7-5.4 12.7-2.8 24.3 3.2 13.3 15 30 13 49.2 3.5-4.7 4.5-10 4.8-16.5.2-6.5-13-28.5-13.8-36.8 0-7.4-.8-17.5-1.2-20.2z"/>
+    <path fill="#217900" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.3" d="M141.1 242.6s-10.4 13-9.8 23.7c.1 7.1 13.2 36.8 11.2 42.4 3.5-4.7 4.4-4.1 4.3-11.2-3.8-18.3-10.7-29.9-9.5-37 1.1-7.1 4-18 3.8-18z"/>
+    <path fill="#fff" stroke="#000" stroke-dashoffset="1" stroke-linecap="square" stroke-linejoin="round" stroke-width="1.7" d="M100 125.8l22 68.2h72l-58 42.2 22.1 68.2-58-42.1-58 42.1 22-68.2L6 194h71.8z" transform="matrix(1.16516 0 0 1.16534 202 -23.6)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mq.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mq.svg
new file mode 100644
index 0000000..b389d43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mq.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mq" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mr.svg
new file mode 100644
index 0000000..b53ce61
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mr.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mr" viewBox="0 0 640 480">
+  <path fill="#cd2a3e" d="M0 0h640v480H0z"/>
+  <path fill="#006233" d="M0 72h640v336H0z"/>
+  <path fill="#ffc400" d="M470 154.6a150 150 0 01-300 0 154.9 154.9 0 00-5 39.2 155 155 0 10310 0 154.4 154.4 0 00-5-39.2z" class="st1"/>
+  <path fill="#ffc400" d="M320 93.8l-13.5 41.5H263l35.3 25.6-13.5 41.4 35.3-25.6 35.3 25.6-13.5-41.4 35.3-25.6h-43.6z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ms.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ms.svg
new file mode 100644
index 0000000..5796863
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ms.svg
@@ -0,0 +1,78 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ms" viewBox="0 0 640 480">
+  <path id="rect950" fill="#012169" stroke-width=".7" d="M0 0h640v480H0z" opacity="1" stop-opacity="1"/>
+  <path id="path962" fill="#fff" stroke-width=".8" d="M384.9 111h205.5l-.3 146.3c1.7 58.7-34.9 95.2-102.3 111.7-47.9-12-103-36.5-103.2-110l.3-148z" opacity="1" stop-opacity="1"/>
+  <path id="path964" fill="#00a2bd" stroke="#000" stroke-width="1.8" d="M389.4 115.4h196.4l-.2 140.2c1.6 56.3-33.4 91.2-97.8 107-45.8-11.4-98.5-35-98.6-105.4l.2-141.8z" opacity="1" stop-opacity="1"/>
+  <path id="path966" fill="#a53d08" stroke-width=".8" d="M584.3 272.2c-7.2 53.7-48.6 77.2-96.5 89.7-42.5-11.4-88.2-29.6-97-89.5l193.5-.2z" opacity="1" stop-opacity="1"/>
+  <path id="path968" fill="#000" stroke-width=".8" d="M480 141.5l-.3-17.6 14 .1.1 17.5H532l.1 13.7-38.3.2-.3 161.4-13.6.1-.2-161.7-38 .2v-14z" opacity="1" stop-opacity="1"/>
+  <path id="path970" fill="#ff9a08" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M449 278.8l35 36.3c12.1-13.3 3.7-63-12.2-72.1-1.9 5.9-5.1 13-8.6 15.2-7.5 5.2-26.1 11.2-19.9 15 1.4-1.9 5.1-3.7 6.9.6 2 6.9-7.8 7.3-7.8 7.3s-6.2-.8-7.3-7c-1-6.4 9.3-12.2 10.2-12.6.8-.3 14.3-4 16.6-15.9 2.9-11.8 5.8-10 6.3-10.2 17.7 1.7 29.2 33.3 29.9 55.5.6 22.2-9 37-10.8 38-1.7.9-42-47.9-42-47.9l3.8-2.2z" opacity="1" stop-opacity="1"/>
+  <path id="path972" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M474.6 245l.2 65.5" opacity="1" stop-opacity="1"/>
+  <path id="path974" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M470.6 246.3l.3 59.4" opacity="1" stop-opacity="1"/>
+  <path id="path976" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M466.4 254.9l.2 47.2" opacity="1" stop-opacity="1"/>
+  <path id="path978" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M462.9 258.2l.2 39.1" opacity="1" stop-opacity="1"/>
+  <path id="path980" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M459.2 260v33" opacity="1" stop-opacity="1"/>
+  <path id="path982" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M455.2 262.6v26.1" opacity="1" stop-opacity="1"/>
+  <path id="path984" fill="#ff9a08" stroke="#000" stroke-width=".8" d="M451.7 264.7v20" opacity="1" stop-opacity="1"/>
+  <g id="g994" fill="none" stroke="#ffdf00" stroke-linecap="round" stroke-width="1.8" opacity="1" transform="matrix(.8 0 0 .8 -230.7 -7)">
+    <path id="path986" stroke-width="1" d="M849 362.4l45.1 51.6"/>
+    <path id="path988" d="M896.3 329.9s20.4 44.7 1.5 81.4"/>
+    <path id="path990" d="M843.7 353s1.5-3.9 3.4-2.3"/>
+    <path id="path992" d="M840.2 341.6s-8.2 7.2-3.7 11.9"/>
+  </g>
+  <path id="path998" fill="#008021" stroke="#000" stroke-width=".3" d="M494 175.4c2.3-2 3.6-3.3 5.1-3 1.5.2 3.5 0 5-.4a31 31 0 0112-.4c1 .2 2.5.7 4.6 2.5 2.1 1.8 5.2 5 4.2 13.6s-.7 12.3-1.2 17.2c-.8 8.5-2.7 15.5-6 15 4.5 8 5 15 8 20.5s4.8 16.8 3.7 29c-1.2 12.3-4.4 39.7 5.3 58.2-1.6 1.1-5.5 0-9-3.7s-5-3.6-7.8-1.4c-8.8 6.7-17 14.8-29.1 6.7-2.8-1.8-3.6-4-1.6-9.7 5-14 7.5-33.4 6.7-42.4V175.4z" opacity="1" stop-opacity="1"/>
+  <g id="g1010" fill="#ffe1cf" stroke="#000" stroke-width=".4" opacity="1" transform="matrix(.8 0 0 .8 -230.7 -7)">
+    <path id="path1000" d="M916.2 217.2a12 12 0 01-.1 8.5c-1.3 3-1.6 6.4.6 10.6 3.4-5 8.3-4 11.2-6.8 2.9-2.9 3.5-5.6 5.6-6.2-2.1-1.9-5.4-4-4.7-9.4.7-5.5 8.3-10 1.4-18.3a10 10 0 00-16.7 1.5c-.4 1 .2 3-.9 4.3-.7 1-1.6 1.8-2.6 2.5-.6.5-1 1.1-.3 2 .3.3.8.3 1.3.5l-1 1.8c-.4.4-.2.8.2 1.2-.6 1.7.5 2-.2 3.2-.7 1.1-1.5 2.5.8 3.8.7.3 3.8 1 5.4.8z"/>
+    <path id="path1002" d="M888.1 246c-4 1-10.5-.8-15.4-.2-2.2.2-3.9-.9-3.6-3 .3-2.2.6-5.5.1-8.6a39.5 39.5 0 014.8-18.4 41.2 41.2 0 004.8-14.6c0-2.3.2-4.8 2.2-6.1 1.5-1 1.8-1.9 2.3-2.7 1.2-1.8 2.4-2.2 2.5-1.1.1.6-.1 1.2-.7 2 1.3-1 3.5-2.3 4-2.6.5-.4 3-2.2 3.2-.5 1-.5 1.7-.5 2 0 .2.7 0 .9-.4 1.3.7-.1 1.5 1.1 0 2.3.8-.3 1.6 1 .2 2.1-1.3 1.2-3 2-3.4 3-.5 1-4 3.6-5.3 4.1-1.4.6-1.5 1.4-1.5 3.4 0 22.2-2.6 20.4-2.6 25.8 0 1.4-.3 2.7 1.1 2.3 1.5-.5 3.6-1.1 5.7-1.1v12.5z"/>
+    <path id="path1004" d="M889 293.8c6.5-3.3 14-4.5 17.9-5.5a78 78 0 0013-5.6c3.1-1.6 5.6-3.8 7.3-4.3a8.1 8.1 0 004.8-4 63 63 0 008.6-27.3c0-5-1.3-10.7-6.2-6.7a37 37 0 00-11 16.5c-2 8-3.7 9.8-4.1 11.4-.5 1.6-2.1 1.6-4 2a33.4 33.4 0 00-17 8 170 170 0 01-17.8 11.5c-4.6 2.6-5.5 2.8-6.5 5-1 2-2 3.6-2.8 4.5-.9 1-1.1 2-1 3.2.2 1-.2 5.3-.3 6.7 0 1.5.3 1.8.9 1.9.5 0 1.3-.2 1.6-2-.3 1.8 2.1 1.2 2.2-.1 0 1.9 2.5.8 2.6-1 0 1.3 2 .4 2.1-.1.5-1.5.8-3 1.4-4.2.8-1.7 1.7-3.9 3.4-5 1.9-1.4 1-3 4.9-5z"/>
+    <path id="path1006" d="M935.7 411.9c.4 1.6 1.2 3.4 1.5 4.5.3 1-.2 1.4-.5 2a41 41 0 00-3.4 11c-.1 1.5-1.2 3-1.7 4-.6 1-.3 1.8 1 2.8.5.4 2.5-.2 2.7-1.2.8.7 2 .5 2.6-.6.7.6 1.8.2 2.5-.9.6.4 1.6-.4 2-1 1 .5 2-.1 2-2 0-.5.3-1.2.6-1.6.3-.5.4-1.4.4-2.2 0-.8.4-2.4 1.1-3.5.7-1.1 1.9-3.1 1.4-5-.5-1.7-1.2-1.6-1.9-4-1.6-1.7-3.7-4-6-4.2-2.2-.1-3.5 1.4-4.3 1.9z"/>
+    <path id="path1008" d="M894.7 424.3c2 2 6.5 2 9.7-1.3-1.1-.5-3.7-1.7-4.8-2.6-1.6 1.6-3.4 3.4-5 3.9z"/>
+  </g>
+  <path id="path1012" fill="#870f00" stroke="#000" stroke-width=".3" d="M501.4 149c.6-4 3.5-4 5.3-3.5.8.1 2.6.3 4.4-.2 3.4-.9 6 .3 5.6 3.6 1 .7 2 2.3 1.7 3.7-.1 1.4.2 2 1.4 2.1 1.3.2 4 1.8 2.2 4 1.7 1 3 3.7 2.1 5.4-.9 1.8-3.6 2.1-4.8.5-1.3.6-3.3.7-4.6-.6-.9 1-3 .9-3.5 0-.4-1-1-1.4-1.9-1.7-.9-.3-1-2.8.4-3.1-.1-.8 0-1.6.3-2 .3-.4 0-1.2-.8-1.8-.8-.7-1.5-3-.7-4.4-1.4.5-4.4-.9-5-1.8-.7-1-1.6-1-2.1-.2z" opacity="1" stop-opacity="1"/>
+  <g id="g1088" fill="none" stroke="#000" stroke-width=".4" opacity="1" transform="matrix(.8 0 0 .8 -230.7 -7)">
+    <path id="path1014" d="M916.2 217.2c2.8-.3 3.7-2 5.8-2"/>
+    <path id="path1016" d="M910.2 209.4l.7.4c.5.3 1.2.4 1.7.5"/>
+    <path id="path1018" d="M911 206.4l1.2.7"/>
+    <path id="path1020" d="M917.5 195c-1.6-1.6 2.8-4.8 7.5-.2 1 .9 3.1.9 3.8.7"/>
+    <path id="path1022" d="M924 197.5c2.2-.5 5.4-.5 6.4 2 1 2.4 2.8.8 4.3 3.7 1.5 2.9 3.9 6.1 6.2 3.9"/>
+    <path id="path1024" d="M931.7 213.7a5 5 0 01-.5-4c-.8-1-.5-3.1 0-4.1"/>
+    <path id="path1026" d="M925.5 207.7c.1.9 1.3 2.5 3 2.8"/>
+    <path id="path1028" d="M937.5 214.5c-1-1.3-.9-2.5-.6-4"/>
+    <path id="path1030" d="M927 200.1c0 1.3.7 3 2 3.6.4.8 1.8 2.8 4.7 2.5"/>
+    <path id="path1032" d="M934.3 194.9a13.6 13.6 0 00-6.6-3.1"/>
+    <path id="path1034" d="M916.7 236.3c-2.5 3.3-4 7.9-3 14.4 1.2 6.5 3.1 16-1.6 20.3"/>
+    <path id="path1036" d="M935.4 283.6c-3.3-.8-8-.8-10.7 1.1-2.5 1.9-6.9 2-9.8.6"/>
+    <path id="path1038" d="M928.4 283.3c-2.9.5-4.2 2.6-4.2 7.9 0 5.3-1.2 13.1-.2 20.8"/>
+    <path id="path1040" d="M923.2 285.6c-2 .5-3.9.5-3.5 5.6"/>
+    <path id="path1042" d="M913.4 291.3c.1-3 1.2-6 3.2-5.4"/>
+    <path id="path1044" d="M934.2 292c.1-7-1.4-8.9-3.4-8.8 2.7 0 4.6.4 5.8 11.6.8 8.4 2.6 11.3 4.6 17.9 5.2 17 2.6 43.2 5.2 52.5"/>
+    <path id="path1046" d="M930.2 294c5.5 15.8 8.4 33.4-.5 61.6 6 16.8 12 28.9 13.2 35.8"/>
+    <path id="path1048" d="M913 331.4c1-3.6-2.7-4 .5-16.7 1.4-5.5 1.6-8.8.7-10.5"/>
+    <path id="path1050" d="M914.2 311.7c-1.3 5.6 4.2 16.1 1.5 23.8"/>
+    <path id="path1052" d="M908.9 336.9c0 5 1.1 11.3.9 16.2-.3 4.9 1.7 7.1 4 11.8 8.4 16.7 14 28.6 13.3 44.4-.2 2.9.8 9-2.2 10.7"/>
+    <path id="path1054" d="M909.1 424.2c.9 0 1.8-.4 2.9-3a81 81 0 003-28.8"/>
+    <path id="path1056" d="M916.8 404.5c.4 3.3.4 10.1-1.7 15.5"/>
+    <path id="path1058" d="M922.3 394.6c1.3 7 1.1 13.4.1 17.9"/>
+    <path id="path1060" d="M919.4 412.5c.2 2.8 1.5 10-.7 10.6"/>
+    <path id="path1062" d="M930.2 379c5.4 8.4 9.5 29 14 33.3"/>
+    <path id="path1064" d="M934.8 409c-.1-2.3-.2-5.5-1.5-7"/>
+    <path id="path1066" d="M877.2 308c.1-1.5-.2-3 1.6-5.5"/>
+    <path id="path1068" d="M874.6 309c.3-5.5.2-6 1.8-7.6"/>
+    <path id="path1070" d="M872.4 309.1c0-4-.4-5.3 1.2-7.8"/>
+    <path id="path1072" d="M892.3 190.2l-5.7 4.3"/>
+    <path id="path1074" d="M893.9 191.5c-.7.1-2.7 1.8-6.2 4.5"/>
+    <path id="path1076" d="M894 193.8c-1.2.5-3.3 2.5-5.2 3.9"/>
+    <path id="path1078" d="M885.1 193.4l-2 2"/>
+    <path id="path1080" d="M935.3 435c-.3-.3-.3-1.6.3-3"/>
+    <path id="path1082" d="M938 434.4c-.5-.4 0-2.2.3-3.3"/>
+    <path id="path1084" d="M940.4 433.5c-.5-.2-.6-1.2 0-2.6"/>
+    <path id="path1086" d="M942.3 432.5c-.3-.1-.4-.7.1-2.2"/>
+  </g>
+  <g id="g1094" fill="#000" stroke="none" stroke-width=".4" opacity="1" transform="matrix(.8 0 0 .8 -230.7 -7)">
+    <path id="path1090" d="M914 199.6c1 1.3 2.1 1.2 2.3 2 .2 1 .3 1 .5 1.3.2.2-.5.2-.8 0h-1.7c-.5 0-1.1-.7-.8-.7.4-.1.4-.2.3-.5 0-.3.2-.7.4-.8l-.1-.4c-.2-.4-.4-1.2-.1-1z"/>
+    <path id="path1092" d="M914.6 198.3a8 8 0 014.3 2c.8 1 .1.7-.3.7s-1.3-.2-1.7-.8a5.8 5.8 0 00-2.4-1.4c-.4-.1-.8-.6.1-.5z"/>
+  </g>
+  <path id="path1746" fill="#012169" stroke-width=".5" d="M0 0h320v240H0z" opacity="1" stop-opacity="1"/>
+  <path id="path1748" fill="#FFF" stroke-width=".5" d="M37.5 0l122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z" opacity="1" stop-opacity="1"/>
+  <path id="path1750" fill="#C8102E" stroke-width=".5" d="M212 140.5L320 220v20l-135.5-99.5zm-92 10l3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z" opacity="1" stop-opacity="1"/>
+  <path id="path1752" fill="#FFF" stroke-width=".5" d="M120.5 0v240h80V0zM0 80v80h320V80z" opacity="1" stop-opacity="1"/>
+  <path id="path1754" fill="#C8102E" stroke-width=".5" d="M0 96.5v48h320v-48zM136.5 0v240h48V0z" opacity="1" stop-opacity="1"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mt.svg
new file mode 100644
index 0000000..93fe67b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mt.svg
@@ -0,0 +1,49 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mt" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ce0000" d="M320 0h320v480H320z"/>
+    <path fill="#fff" d="M0 0h320v480H0z"/>
+  </g>
+  <g transform="translate(-12.4 -30.8) scale(1.5986)">
+    <path fill="#f1eeee" fill-rule="evenodd" d="M104.8 108c0 .9-.9 1.5-2 1.5-1.2 0-2-.6-2-1.4 0-.8.8-1.5 2-1.5 1.1 0 2 .7 2 1.5z"/>
+    <path fill="#c00" fill-rule="evenodd" d="M40.7 101v37.2H78c0 6.2 6.2 12.4 12.4 12.4v37.2h37.3v-37.2c6.2 0 12.4-6.2 12.4-12.4h37.2V101H140c0-6.2-6.2-12.4-12.4-12.4V51.4H90.4v37.2c-6.3 0-12.5 6.2-12.5 12.4H40.7z"/>
+    <path fill="#ffe600" fill-rule="evenodd" d="M42 102.2V137h37.2c0 6.2 6.2 12.4 12.4 12.4v37.2h34.7v-37.1c6.2 0 12.4-6.2 12.4-12.4H176v-34.8h-37.2c0-6.2-6.2-12.4-12.4-12.4V52.6H91.6v37.2c-6.2 0-12.4 6.2-12.4 12.4H42z"/>
+    <path fill="#707070" fill-rule="evenodd" d="M43.2 103.5v32.2h37.2c0 6.2 6.2 12.4 12.4 12.4v37.2h32.3v-37.2c6.2 0 12.4-6.2 12.4-12.4h37.2v-32.2h-37.2c0-6.2-6.2-12.4-12.4-12.4V53.9H92.8V91c-6.2 0-12.4 6.2-12.4 12.4H43.2z"/>
+    <path fill="#a0a0a0" fill-rule="evenodd" d="M44.5 104.7v29.8h37.2c0 6.2 6.2 12.4 12.4 12.4V184h29.7v-37.2c6.2 0 12.4-6.2 12.4-12.4h37.2v-29.8h-37.2c0-6.2-6.2-12.4-12.4-12.4V55.1H94.1v37.2c-6.2 0-12.4 6.2-12.4 12.4H44.4z"/>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M94.4 89.2c2.1 2.2.4 7.5-4 11.9s-9.6 6-11.8 4c-2.2-2.3-.4-7.6 4-12s9.6-6 11.8-3.9z"/>
+      <path fill="gray" d="M91.7 91.8c2.2 2.2 1.6 6.3-1.3 9.3s-7 3.5-9.2 1.3c-2.2-2.2-1.6-6.3 1.3-9.2s7-3.5 9.2-1.4z"/>
+      <path fill="#d0d0d0" d="M80.8 98.4l.8-.8 3.5 1.7-1.7-3.5.9-.9 3.5 7-7-3.5zm5.2-5.2l1-1 5.2 5.4-.9.8z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M139.3 105c-2.2 2.2-7.5.4-11.8-4s-6.2-9.6-4-11.8c2.2-2.2 7.5-.4 11.9 4s6 9.6 4 11.8z"/>
+      <path fill="gray" d="M136.7 102.4c-2.2 2.2-6.3 1.6-9.2-1.3s-3.5-7-1.4-9.2c2.2-2.2 6.4-1.6 9.3 1.3s3.5 7 1.3 9.2z"/>
+      <path fill="#d0d0d0" d="M130.1 91.4l.9.9-1.8 3.5 3.5-1.8 1 1-7.1 3.4 3.5-7zm5.3 5.3l.8.8-5.2 5.3-.9-.9z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M123.5 150c-2.2-2.2-.4-7.5 4-11.9s9.6-6.1 11.8-4c2.2 2.2.4 7.5-4 11.9s-9.6 6.1-11.8 4z"/>
+      <path fill="gray" d="M126.2 147.3c-2.2-2.2-1.6-6.3 1.3-9.2s7-3.5 9.2-1.3c2.2 2.2 1.6 6.3-1.3 9.2s-7 3.5-9.3 1.3z"/>
+      <path fill="#d0d0d0" d="M137.1 140.7l-.9 1-3.5-1.8 1.8 3.5-.9.8-3.5-7 7 3.5zM132 146l-1 .9-5.2-5.3.9-.9z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#d0d0d0" d="M78.6 134.2c2.2-2.2 7.5-.4 11.8 3.9s6.1 9.7 4 11.8c-2.2 2.2-7.5.5-11.9-3.9s-6-9.7-4-11.8z"/>
+      <path fill="gray" d="M81.2 136.8c2.2-2.2 6.3-1.6 9.2 1.3s3.5 7 1.3 9.2c-2.1 2.2-6.3 1.6-9.2-1.3s-3.5-7-1.3-9.2z"/>
+      <path fill="#d0d0d0" d="M87.8 147.8l-.9-1 1.8-3.4-3.5 1.7-1-.9 7.1-3.5-3.5 7zm-5.3-5.3l-.8-.9 5.2-5.2.9.8z"/>
+    </g>
+    <path fill="none" stroke="#707070" stroke-width="1pt" d="M269.3 414.6c0 41-34.1 74.4-76.2 74.4S117 455.7 117 414.6s34.1-74.4 76.2-74.4 76.2 33.3 76.2 74.4z" transform="matrix(.34191 0 0 .35003 43 -25.5)"/>
+    <path fill="none" stroke="#707070" stroke-width="1pt" d="M269.3 414.6c0 41-34.1 74.4-76.2 74.4S117 455.7 117 414.6s34.1-74.4 76.2-74.4 76.2 33.3 76.2 74.4z" transform="matrix(.2605 0 0 .26669 58.6 9)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" d="M100.3 140.7a1.2 1.2 0 11-2.5 0 1.2 1.2 0 012.5 0zm19.8 0a1.2 1.2 0 11-2.5 0 1.2 1.2 0 012.5 0zm-12 0v1.3h-1.6c-1.7 0-1.7 1.3 0 1.3h1.6v1.2c0 1.4 1.5 1.5 1.6.1v-1.4h1.7c1.7 0 1.7-1.2 0-1.2h-1.6v-1.3c0-1.3-1.7-1.3-1.7 0z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width=".1" d="M102.8 122.3v.8s-.4.5-2.9.7c-2.5.2-2.9 0-2.9 0 .1.7.6 1.9.4 3.3.1 1.7-.4 3.2-.4 3.2 0 .1-.3.2-.8.1.4-.4.4-1.4.4-3 0-1.4-1.5-3.7-1.2-4.3.3-.6 7.4-.8 7.4-.8zm9.8-2.6l6.5-.1s1 2 .9 3c0 1-.4 2-.8 1.5-.5-.5.2-.4.3-1.5 0-1.2-.8-2.3-.8-2.3s-1.8.7-4.4.6c-2.6-.2-1.4-1.2-1.7-1.2z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width=".1" d="M113.4 121.6c2.4-.1 4 .2 4 .2s1 2 1 3c-.1 1-.4 2-.9 1.5-.4-.4.2-.3.3-1.5 0-1.1-.8-2.3-.8-2.3s-1.7.7-4.3.6c-2.6-.2-1.8-.3-2.1-.4-.3 0-.4.8-4.3.9-4 0-6-.9-6-.9s-.4.6-2.8.8h-3c.1.6.6 1.8.5 3.3 0 1.6-.5 3.2-.5 3.2h-.7c.4-.3.3-1.4.4-2.9 0-1.5-1.6-3.7-1.3-4.4.4-.6 2.2 0 2.5-.3.3-.4-1.6-2.7-1.2-4.8.3-2.1 2.4-1.5 4.9-1.5 2.5.1 8 .8 9.4 0 1.4-.7.8-3.4 2-5.1a4.1 4.1 0 013.3-1.5c.9 0 2 3 2 3.7l-.3.4h-.4v.3c-1 .1-1.1-.8-1.7-1.4-.2 1 .8 4.4.8 6.6 0 1.8-.7 2.6-.8 2.5z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width=".1" d="M105.5 118.4c0 .7-3.1 2.4-3.4 3-.2.7.8 1 .5 1.4-.3.4-.6.2-.7.3l-1.2-2.5s3-1.4 2.9-2c-.1-.6-2.2-1-2.6-2.4s-.2-4.3-.5-4.9c-.3-.6-4-1.2-4-2 0-1 3.8-3.4 4.2-3.8.4-.4.8.4.4.7-.4.4-3.3 2.7-3.3 3 0 .4 2.4.8 3.2.8.9 0 1.3-.4 1.3-.8 0-.3-.9-.3-.9-1s.5-1.2 1.3-1.2c.4 0 1.2.5 1.2 1.1s-.7.7-.8 1.1c-.1.5.8.8 1.6.8s3.6 2.1 4 2.5c.5.3.9.3.5.7-.4.4-.2.8-.6.4a1.5 1.5 0 01-.4-.7c0-.3-3-1.8-3.5-1.5-.4.4 0 4.8 0 5.2 0 .7.9.7.8 1.8z"/>
+    <path fill="#a7a7a7" fill-rule="evenodd" d="M100.3 109.9h5v5.1h-5z"/>
+    <rect width="30.6" height=".4" x="138.6" y="-25.7" fill="gray" fill-rule="evenodd" rx=".5" ry=".2" transform="matrix(.55442 .83223 -.88237 .47055 0 0)"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="#707070" stroke-width="1pt" d="M180.7 42.5a7 7 0 11-14.2 0 7 7 0 0114.2 0z" transform="matrix(.11563 0 0 .10345 80.7 101.5)"/>
+    <path fill="gray" fill-rule="evenodd" d="M115.9 112.5c0 .3-2 .7-4.1.7-2.2 0-4.1-.4-4.1-.7 0-.3 1.9.5 4 .5 2.3 0 4.2-.8 4.2-.5z"/>
+    <path fill="#a7a7a7" fill-rule="evenodd" d="M100.7 115h4.1v1.5h-4z"/>
+    <path fill="gray" fill-rule="evenodd" d="M114 111.4c-.4.8-.7 1.3-.8 1.2 0 0 .2-.8.6-1.5l.8-1.2c.1.1-.2.8-.6 1.5zm1 2l-.8.5a3.2 3.2 0 01.8-.9c.5-.4.9-.6.9-.5l-.8.8z"/>
+    <path fill="gray" fill-rule="evenodd" d="M114.6 112.4l.5 1.2-.8-1-.5-1.2.8 1zm-.4 3.2s-1.2.2-2.8.2-2.9-.1-2.9-.2l2.9-.2c1.6 0 2.8 0 2.8.2zm-9.4-.4c0 .1-.9.2-2 .2-1.2 0-2 0-2-.2 0 0 .8-.2 2-.2 1.1 0 2 .1 2 .2z"/>
+    <path fill="#d0d0d0" fill-rule="evenodd" stroke="gray" stroke-width=".1" d="M95.8 128s.7 1.6 3.6 1.6c2.8 0 3.8-.5 2.7-1.3s-3.4-.6-3 .1c.2.8-.9 1-1.1.5-.3-.5-1.3-2.1.5-2.2 1.9-.1 5.8-.7 6.8.4s-1.1 2 .5 2.3c1.5.2 1.8-.3 4.5-.4 2.7-.2 3.8.5 4.7.4 1 0 .8-1.7 0-2-.7-.5-2.1-.6-2.5-1-.3-.5-1.3 0-1.2-.6 0-.5 1.4.3 1.4.1l.2-.2h-.3l.1-.2-.2.1.1-.2s-.3.2-.3 0h-.2c.2-.2.1-.2 0-.3h-.3v-.3c-.2 0-.2 0-.3.2v-.5c0-.1.2-.2.5-.2.7 0 1 .8 1.3.8.2 0 .5-.8 1.4-.5l1.5.6c.5.3-.3.6 0 1s2.1 1.7 1.6 3.2c-.5 1.4-2 1.6-2 2.2-.2.6 4.3.4 5.4.6a3 3 0 011.9 1.2l-2 .1s-1-.5-3.5-.6c-2.5 0-3.4-1-4.4-1.2l-4 .2-3-.3c-.6-.1-4.2 1.6-4.2 2h-2.4s.3-.9 1.7-1c1.3-.2 2.7-.8 2.6-1.2l.4-2.6c0-.6.6-1 .5-1.2-.1-.4-1.7-.7-3.2-.7-1.5 0-3.1.1-3.4.4-.2.4 0 1.5.3 1.3.3 0-.1-.8.2-.9a6.8 6.8 0 012-.3c.8 0 2.1.7 2.1 1 0 .1.4.8-.2 1.1a8.2 8.2 0 01-3.1.4 7.5 7.5 0 01-3-.8c-.4-.3-.7-1-.7-1.1z"/>
+    <path fill-rule="evenodd" d="M114 125.5a.3.3 0 11-.6 0 .3.3 0 01.6 0z"/>
+    <path fill="#d0d0d0" d="M129.5 120.8l1.6.3 2.7-1.8-.2 1-1.4.9-.8.4.5.8.9 1.4-.2 1-1.7-2.9-1.6-.3.2-.8zm-2.7-11.8l3-1.4-.8-1.8.4-.2 2 4.4-.3.2-.9-1.9-3 1.5-.4-.8zm-4.8-5.8l2.8-2.6.6.6v4.4l2.2-2 .5.6-2.8 2.6-.6-.6v-4.4l-2.2 2-.5-.6zm-12.4-5l.5-3.8h.8l-.5 3.5 3 .3v.5l-3.8-.5zm-6.1.6l-.7-3.8.8-.2.6 3.4 3-.6v.5l-3.7.7zm-11.3 5.5l-.3-.3 2-1.6 1 1a5.7 5.7 0 01-.8 1.2 5.7 5.7 0 01-.9 1 5.2 5.2 0 01-1.4.8c-.5.1-1 .2-1.3 0a1.6 1.6 0 01-1-.5 1.7 1.7 0 01-.3-1c0-.4.1-.9.4-1.3.2-.4.6-.8 1-1.1a4.8 4.8 0 011.1-.7l.9-.2c.2 0 .5 0 .7.2l-.4.5a1.3 1.3 0 00-.6-.1l-.6.1a3.2 3.2 0 00-.7.5c-.3.2-.6.4-.7.7a2 2 0 00-.4.6v.5c0 .3.1.6.3.8l.7.5 1-.1a4.1 4.1 0 002.1-2l-.4-.6-1.4 1.1zm-.1 27.7l-3.2 2.3-2.4-3.4.4-.3 2 2.7.9-.7-1.6-2.3.3-.2 1.7 2.3 1.4-1 .5.6zm-4.7-5c.5-.1.8-.4 1-.9v-1.5a2.6 2.6 0 00-.9-1.3c-.3-.3-.8-.4-1.2-.3a1.4 1.4 0 00-.8.5c-.1.2-.3.5-.3.8l.1 1.1c.2.6.4 1 .8 1.4.3.3.8.4 1.3.2zm.3.8a1.7 1.7 0 01-1.7-.4 3.7 3.7 0 01-1.1-1.8c-.2-.6-.2-1-.2-1.6s.2-.8.4-1.1a1.6 1.6 0 011-.7 1.6 1.6 0 011 .1c.4.2.7.4 1 .8a4.5 4.5 0 01.8 3 2.3 2.3 0 01-.4 1.1c-.2.3-.5.5-.8.6zm.3-7.8h-4v-2.8l.2-1.2.4-.7a.8.8 0 01.6-.2c.3 0 .5.1.7.4.1.3.3.7.3 1.3a2.5 2.5 0 01.7-1.1l1.1-1v1l-.8.7-.6.6a1.7 1.7 0 00-.3.4 1.6 1.6 0 000 .4v.4l-.1 1H88v.8zm-2.2-.9v-1.7a4 4 0 000-.9 1 1 0 00-.2-.4.5.5 0 00-.3-.2c-.2 0-.4.1-.5.3l-.2 1v2h1.3zm10.7-16.9v-4.5l.8-.5 4.1 2-.8.5-1.2-.6-2.1 1.3v1.4l-.8.4zm.7-2.3l1.8-1-1-.6a8.3 8.3 0 01-.9-.5l.1.8v1.3zm18.6-1.2L120 97l.7.5-.3 4.6-.7-.6.1-1.3-2-1.5-1.3.5-.7-.5zm2.4-.2l1.7 1.2v-1.2a8.4 8.4 0 01.2-1 3.7 3.7 0 01-.7.5l-1.2.5zm10.3 14.3l3.8-.9.6 2.7.2 1.2-.2.7a.8.8 0 01-.5.4c-.3 0-.6 0-.8-.2a2.8 2.8 0 01-.7-1.2 2.5 2.5 0 010 .5l-.4.8-.8 1.2-.2-1 .6-1 .4-.6a1.6 1.6 0 00.2-.8 3.7 3.7 0 00-.1-.5l-.2-.9-1.7.4-.2-.8zm2.3.3l.4 1.7c0 .3.2.6.3.8 0 .2.2.3.3.4l.4.1c.1 0 .3-.2.3-.4a2.1 2.1 0 000-1l-.5-1.9-1.2.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mu.svg
new file mode 100644
index 0000000..102ed3b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mu.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mu" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#00a04d" d="M0 360h640v120H0z"/>
+    <path fill="#151f6d" d="M0 120h640v120H0z"/>
+    <path fill="#ee2737" d="M0 0h640v120H0z"/>
+    <path fill="#ffcd00" d="M0 240h640v120H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mv.svg
new file mode 100644
index 0000000..2525c92
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mv.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mv" viewBox="0 0 640 480">
+  <path fill="#d21034" d="M0 0h640v480H0z"/>
+  <path fill="#007e3a" d="M120 120h400v240H120z"/>
+  <circle cx="350" cy="240" r="80" fill="#fff"/>
+  <circle cx="380" cy="240" r="80" fill="#007e3a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mw.svg
new file mode 100644
index 0000000..5bd17f8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mw.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mw" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#f41408" d="M0 0h640v480H0z"/>
+    <path fill="#21873b" d="M0 320h640v160H0z"/>
+    <path d="M0 0h640v160H0z"/>
+    <path fill="#f31509" d="M220.5 141c22.3-49.2 84.5-72.8 138.8-52.5a98.4 98.4 0 0158 52.5H220.5zm-26 6.4a332.3 332.3 0 01-52.4-7.8c-4.1-1.3-4.3-3.6-3.8-5.3.5-1.7 3.1-3.6 6.2-3 5.6 1.4 28.8 7 50 16.1zm124.6-85.9c-4.2-21-5.2-44-4.8-48C314.7 9.6 317 9 319 9s4.7 1.8 4.7 4.7c0 5.3-.1 27-4.6 48zm11.6.5a249 249 0 01-.3-48.2c.8-3.9 3.2-4.4 5.1-4.2 2 .1 4.5 2.1 4.2 5-.5 5.3-2.6 26.9-9 47.4zm10.4 1.3c-.2-21.3 3-44.3 4.1-48 1.1-3.9 3.6-4.2 5.5-3.9 2 .3 4.3 2.5 3.8 5.3-1 5.3-5.2 26.6-13.4 46.6zm11 2.2c1.8-21.2 7.3-43.8 8.8-47.5 1.5-3.7 4-3.8 5.8-3.4 2 .5 4 2.8 3.3 5.6-1.6 5.1-7.7 26-17.8 45.3zm10.9 3.2c3.9-21 11.5-43.1 13.3-46.7 1.9-3.5 4.3-3.5 6.2-2.9 1.8.6 3.7 3.2 2.7 5.8A264 264 0 01363 68.7zm10.1 3.8c5.8-20.7 15.5-42 17.7-45.5 2.2-3.4 4.6-3.1 6.4-2.3 1.8.7 3.4 3.4 2.1 6-2.5 4.8-12.5 24.4-26.2 41.8zm10 4.7a262.9 262.9 0 0122-43.9c2.4-3.2 4.9-2.7 6.6-1.8a4.4 4.4 0 011.5 6.1c-3 4.6-14.9 23.4-30.1 39.6zm9.4 5.5c9.7-19.4 23.3-39 26.1-42 2.8-3 5.2-2.3 6.8-1.3a4.4 4.4 0 011 6.2c-3.5 4.4-17.2 22.1-34 37zm8.8 6.2c11.6-18.6 27-37 30.1-39.7 3-2.8 5.4-2 6.9-.8a4.3 4.3 0 01.3 6.2c-3.8 4.1-19.1 20.7-37.3 34.3zm8.3 6.9a284 284 0 0133.8-37.2c3.3-2.5 5.5-1.5 6.9-.3a4.3 4.3 0 01-.3 6.3c-4.1 3.8-21 19.1-40.4 31.2zm7.6 7.5A278.4 278.4 0 01454.4 69c3.6-2.3 5.7-1.1 7 .3 1.2 1.3 1.5 4.4-1 6.2a306 306 0 01-43.2 27.8zm6.5 7.8A297.1 297.1 0 01464 79.6c3.7-2 5.7-.6 6.8.9 1.2 1.4 1.1 4.5-1.4 6.1-4.8 3-24.3 15.6-45.7 24.5zm5.9 8.3a307 307 0 0143-28.1c4-1.7 5.9-.2 6.9 1.3 1 1.6.6 4.6-2 6a320.8 320.8 0 01-48 20.8zm5.4 9.6a313.4 313.4 0 0145.8-24.4c4.1-1.4 5.8.3 6.6 1.9.9 1.6.3 4.6-2.6 5.8-5.3 2.2-27 11.4-49.8 16.7zm4.2 9.2a320 320 0 0148-20.8c4.2-1 5.7.8 6.4 2.5.6 1.6-.3 4.6-3.2 5.5-5.5 1.9-28 9.3-51.2 12.8zm3.4 9.8a324.5 324.5 0 0149.8-16.9c4.2-.6 5.6 1.2 6.1 3 .5 1.7-.7 4.5-3.7 5.3-5.7 1.3-28.8 7-52.2 8.6zM307.8 62a252.4 252.4 0 01-9.7-47.4c0-3.9 2.3-4.8 4.2-5 2-.1 5 1.5 5.2 4.3.5 5.3 2.6 26.9.4 48.1zm-11 1.3a251 251 0 01-14.3-46.4c-.4-4 1.8-5 3.7-5.3 2-.3 5 1 5.6 3.8a263 263 0 015 47.9zm-11 2.2A259 259 0 01267 20.3c-.8-3.9 1.3-5.1 3.2-5.6 1.9-.4 5 .6 5.9 3.4 1.5 5.1 7.7 26 9.6 47.3zm-10.5 3A264 264 0 01252.5 25c-1.1-3.8.8-5.2 2.6-5.8 1.9-.6 5.1.2 6.2 2.8 2 5 10.2 25.4 14 46.4zM265.2 72a270.4 270.4 0 01-27-41.5c-1.4-3.7.4-5.3 2.2-6 1.8-.8 5-.2 6.4 2.4 2.5 4.8 12.5 24.5 18.4 45.1zm-10.3 5a275.6 275.6 0 01-31-39.2c-1.7-3.5-.1-5.2 1.6-6.1 1.7-.9 5-.6 6.6 1.9 3 4.6 15 23.3 22.8 43.4zm-9.4 5.4A285.2 285.2 0 01211 45.7c-2.1-3.4-.7-5.2 1-6.3 1.5-1 5-1 6.7 1.4 3.4 4.3 17.1 22 26.8 41.5zm-8.7 6a292.2 292.2 0 01-37.9-33.9c-2.4-3.2-1.1-5 .4-6.2a5.5 5.5 0 016.8.8c3.8 4 19.2 20.7 30.7 39.3zm-8.5 7a299 299 0 01-41-30.7c-2.8-3-1.7-5-.3-6.3a5.5 5.5 0 016.9.3c4.2 3.7 21 19 34.4 36.6zm-7.4 7A306.6 306.6 0 01177.2 75c-3-2.8-2.1-4.8-.8-6.2 1.2-1.4 4.5-2.1 6.9-.3a292 292 0 0137.6 34zm-7 8.2a313 313 0 01-46.2-23.8c-3.3-2.5-2.6-4.7-1.5-6.1 1.1-1.5 4.3-2.5 6.9-.9 4.8 3.1 24.3 15.5 40.8 30.8zm-6.3 8.8c-22.2-7-44.9-17.6-48.4-19.9-3.6-2.2-3-4.4-2.1-6s4-2.8 6.8-1.4c5 2.7 25.8 13.5 43.7 27.3zm-5.3 9c-22.8-5.3-46.3-14-50.1-16-3.7-2-3.5-4.2-2.6-5.8.8-1.6 3.7-3.1 6.6-2 5.3 2.3 27 11.4 46.1 23.8zm-4.2 9a328.5 328.5 0 01-51.4-12.2c-4-1.6-3.8-3.9-3.2-5.5.7-1.7 3.5-3.4 6.4-2.5 5.6 1.9 28 9.3 48.2 20.2z"/>
+    <path fill="#f31509" d="M194.5 147.4a332.4 332.4 0 01-52.4-7.8c-4.1-1.3-4.3-3.6-3.8-5.3.5-1.7 3.1-3.6 6.2-3 5.6 1.4 28.8 7 50 16.1z"/>
+    <path d="M129.4 141.5h381.2v12.6H129.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mx.svg
new file mode 100644
index 0000000..7de1b66
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mx.svg
@@ -0,0 +1,382 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-mx" viewBox="0 0 640 480">
+  <defs>
+    <radialGradient id="b" cx="842.3" cy="103.7" r="25.9" gradientTransform="matrix(.14152 .03595 -.03453 .14198 213.1 162.4)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="c" cx="651.5" cy="550.5" r="25.9" gradientTransform="matrix(-.13441 -.05384 .04964 -.12489 397.9 -24.3)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <radialGradient id="d" cx="380.8" cy="740.4" r="25.9" gradientTransform="matrix(.07536 .00282 -.00343 .14804 412.4 -203.6)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#fff"/>
+      <stop offset="1" stop-color="#f15770"/>
+    </linearGradient>
+  </defs>
+  <path fill="#ce1126" d="M426.7 0H640v480H426.7z"/>
+  <path fill="#fff" d="M213.3 0h213.4v480H213.3z"/>
+  <path fill="#006847" d="M0 0h213.3v480H0z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M355.8 289.4l.2 4.5 1.7-1.1-1.3-3.7z"/>
+  <circle cx="355.6" cy="288.2" r="1.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M361.1 296.4l-3.2-3.1-1.5 1.2 4.5 2.6z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M360.9 298.2c-.5-.6-.3-1.5.3-2 .7-.5 1.6-.4 2 .2.5.6.3 1.5-.3 2-.7.5-1.6.4-2-.2z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M386.3 249.6l3.4 3.3.4-1.7-3.1-2z"/>
+  <circle cx="385.9" cy="248.7" r="1.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M395.2 251.6L390 253l.5-1.7 4.4-.4z"/>
+  <circle cx="396" cy="250.8" r="1.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M378 276.8l-3.2-4.8.5-.3 3.5 4.2z"/>
+  <circle cx="374.5" cy="270.8" r="1.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M378.1 277l4 .7.1-.5-3.3-1.4z"/>
+  <circle cx="383.3" cy="277.7" r="1.4" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M284.6 288c0 .8-.5 1.2-1 1.2s-1-.5-1-1.2.5-1.3 1-1.3 1 .7 1 1.4z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M284.6 290.3l1 5-1.3-.5-.4-4.3z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M285.7 288.6c.6.7-.4 1.9-1.4 2.2-1 .3-2.4-.2-2.4-1.2s1.6-.5 2-.6c.6-.2 1.2-1.2 1.8-.4z"/>
+  <ellipse cx="277" cy="296.3" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx="1.6" ry="1.1"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M279.6 296l4.8-.2-.8-1-4 .4z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M280 295.4c.5 1.3.5 3-.9 2.7-1.4-.1-1-1.4-1.2-1.8-.2-.9-1-1.7-.2-2.5s2 .4 2.3 1.6z"/>
+  <ellipse cx="264.4" cy="269.2" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx=".9" ry="1.4"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M264.4 272.4l.1 4.6-1.2-1v-3.8z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M266.2 271c.3 1-1.3 1.6-2.4 1.4-1-.2-1.9-.7-1.7-1.7.1-1 1.5-.8 2-.5.4.3 1.8-.8 2.1.7z"/>
+  <ellipse cx="256.2" cy="276.5" fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" rx="1.6" ry=".7"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M259.1 276.5l3.6-.3 1.6 1.2-5.3-.2z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M257.8 274.5c1 0 1.6 1.1 1.5 2.3-.2 1.1-1 2-2 2-.9-.2-.8-1-.8-1.2 0-.3.5-.7.6-1 0-.4-.3-1.3-.1-1.6 0-.4.3-.5.8-.5zm-3-28.3c-.4.6-1.2 1.1-1.6.9-.4-.3-.2-1.2.2-1.8.4-.7 1-1 1.4-.8.4.3.4 1 0 1.7z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M250.7 253.5l2-4.8-.2-.3-2.4 3.4z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M252.4 248.7c-1-.7-1.2-1.5-1-2.3.4-.7 1.2-.2 1.2-.2l.8.7c.4.2 1 0 1.4.6.5.6.2 1.2-.1 1.4-.4.1-1.5.4-2.3-.2zm-8.5-.6c.7.4 1.1 1 .9 1.5-.3.5-1 .5-1.8 0-.7-.3-1-1-.8-1.5.2-.4 1-.5 1.7 0z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M246 250.2l3.8 2.2-.1 1.8-4.1-3.5z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M246 250.6c-.8 1-1.6 1-2.3.7-.7-.5-.1-1.2-.1-1.2l.8-.7c.2-.4 0-1 .7-1.4.7-.4 1.2 0 1.3.3.1.4.3 1.5-.4 2.3z"/>
+  <path fill="#aa8c30" d="M356.6 289.8l-.4.4-.3 1v-1.5l.5-.3.2.4zm.2-.9s-.3.5-1.1.5-1.2-.4-1.3-.8c-.1-.4-.1-.7.2-1.2.2-.5-.4.4-.4.4v1l.6.6.5.2h.4l.7-.2.4-.3v-.2zm4.2 7.3s-.4.2-.7.1c-1.9-.6-3.5-1.8-3.5-1.8l3.8 2.4.4-.7zm2.4 1.1s0 .7-.8 1c-.7.3-1.2.2-1.5-.1s-.4-.6-.4-1.2l-.1.6.4.8.8.4.5-.1.5-.2.4-.5.3-.5-.1-.2zm24.3-47.6l-.1.4v.7l-.9-1 .4-.5.6.4zm-.5-1.2c0 .7-.9 1.6-1.6 1.3-.7-.3-1.2-1-.9-1.8l-.2.3.1 1.1.7.6h.9l.6-.3.4-.7v-.5zm10 1.8s-.1-.4 0 0-.6 1.7-1.4 1.6c-.7-.1-1-.8-1-1.4 0-.6-.1.2-.1.2v.8l.5.4.6.4.6-.2.7-.3.2-.6v-.9z"/>
+  <path fill="#aa8c30" d="M393.8 251s0 .4-.4.7l-1.3.7 2.8-.8-.2-.7-.9.2zm-17.1 22.5l-.1.5v.8l-1.6-2.5.5-.3 1.2 1.5zm-.9-2.4c-.2.7-1.4 1-2 .8-.5-.4-1-1.6-.3-2l-.4.2-.1.7.2.7.6.7.5.1.8-.2.6-.4s.4-1.3.1-.6zm5.6 5.7s0 .3-.5.3h-1.6l2.6.6.2-.6-.7-.3z"/>
+  <path fill="#aa8c30" d="M384.6 277.5c.3.8-.5 1.7-1.5 1.4-1-.3-1.3-1.3-1-1.8l-.2.6.2.8.6.6h1.3l.6-.7.2-.7-.1-.2zm-99 11.1c.3.3-.1 1.5-1.2 2-1.2.4-1.7 0-2-.4-.3-.4-.3-.8-.3-.8l-.2.2.2.6.5.5 1 .2.8-.1.7-.5.4-.3.3-.5v-.6l-.1-.3z"/>
+  <path fill="#aa8c30" d="M284.6 291.1l-.3.4-.3.8v-1.4l.5-.3.1.5zm-3.8 4s0 .3.2.5l1 .3h-1.8l-.2-.7h.8zm-.6 1.2v.2a1.4 1.4 0 01-.1.5c-.2.5-.3 1-1 .9a1.2 1.2 0 01-1-1.1c0-.4-.2-.6-.2-.6v.6l.4 1 .7.3h.5l.5-.2.2-.6.1-.5v-.5zm-4.7-.1s.2.8 1.2.8 1.2-.2 1.2-.2v.3l-.2.2H276l-.3-.3-.3-.5v-.3zm-9.4-25.4v.4c-.1.3-.7 1-1.8 1-1 0-1.5-.3-1.8-.7-.3-.3-.4-.8-.4-.8v.5l.4.7 1.1.5h1l1-.3.5-.5.1-.6-.1-.2zm-1.7 2.3s-.4 0-.6.2a4 4 0 00-.4.4v-1.3h1v.7zm-4.7 3.4l.5.3c.5.3 3.1.5 3.1.5h-4.1l.1-.8h.4zm-.5 0l-.2.6c-.2.5-.7 1.6-1.6 1.4-.9-.1-.7-.8-.7-.8v-.4l-.2.7.2.4.4.2.7.1.4-.2.6-.5.2-.5.2-.6v-.3zm-2.2.2s0 .2-.7.2-1.7-.3-1.7-.3l.4.4.5.2h1.3l.2-.5zm-2-29s0 .5-.3.8c-.4.3-1.3.5-1.8.2s-1.5-1.3-1.5-1.3l.4.8.7.6 1 .3 1-.2.4-.4.2-.3-.2-.4z"/>
+  <path fill="#aa8c30" d="M252 249.1v.6l-.2 1.1.9-2-.4-.2-.3.5zm-5.4 1.5l.2.5c.2.5 2.3 2.6 2.3 2.6l-3.3-2.9.4-.5.4.3zm-1 .3s-.5.3-1 .3c-.3 0-1 0-1-.4-.1-.5.1-.7.1-.7l-.3.6.1.4.5.3h.7l.6-.3.2-.2zm-1.5-1.4h-.5c-.7 0-1.4-.8-1.4-.8l.5.8 1 .5.4-.5z"/>
+  <path fill="#9ca168" d="M399.9 240.2c-.3 3.8-4.1 5.8-6.1 7.2-2 1.4-3 3.2-3 3.2l-.6 2.2-.3 1.5-.1.5c.1.4.3 1 .3 2l-.1 4.3 2.7-1.9 1.9-.7.6-.1s-2.2 2.1-3 4.4c-.8 2.3-2.4 7.2-5.3 8.8-3 1.6-4.8 1-5.7 1.8-1 .8-1 1-1 1l-1.3 1.8-1 1.2-.9.7-.6.4a7.5 7.5 0 01-.2 1.7l-.7 2.4s.6-.4 1.3-.5h1.3s-.5.6-.7 1.3c-.2.6.1 4.6-3.6 7-3.8 2.3-13.4 2-13.4 2l-1.8.7-1.7 1.3-1.6 1.7v.4s-1.3 1.5-2.1 2l-2.8 1.9 2.2.1 3.5 1.5s-2.2 0-3.6.5c-1.5.6-8.2 4.4-11.4 4.3-3.3-.1-8-4.9-8-4.9l-2-1.4-3.5-.7-4.3-.2v-.6l.1-.7s1.5-.2 3.8.1c2 .2 2.7 1 4.4 1.1 1.7.2 3 0 3.5-.3.7-.3 5.9-4.7 5.9-4.7l5.8-2 2.3.3 1 .2.9.3-1 1a7.3 7.3 0 01-1.4 1.1l.7.6 3.7-.6 1.2.3.3.2c0-.3.2-.8.6-1.3.4-.6 2.5-2.3 3.4-2.9l1.4-1c.3-.3 1.5-3.3 1.5-3.3l.1-1.6 4.1-4 2.8-2.9 1.2-3.3-.2-.7s1 1 .9 3c-.2 2.2-.7 2.9-.7 2.9s2.8-2 4.3-2.6c1.2-.5 2-.5 2.4-.5.4-.2 1.5-.9 2.1-1.8.8-1.2 1-1.5 1-2l.2-2.8-.3-7 2.4-5.4 3.5-3.1.7-.4-.4 1.2v1.5s1.8-2.5 2.7-2.9l.5-.3a7 7 0 00.8-2l.3-3v-3l-.5-2.3-1.7-4.3v-5.8l-1.2-1.6s1.1 0 2.5 2a13.5 13.5 0 011.9 5l3.3-10.3s.9 1.2 1.5 3.3l.8 3.3 1.4-2.8.1 1c.2 1 2.3 2.1 2 6zm-67.3 65s-.7-1.6-3.9-3.2c-3.1-1.5-5.5-1.8-5.5-1.8v1.1l5 2.2 2.4 2 2-.3z"/>
+  <path fill="#717732" d="M355.4 295.6c.3-.4 3-2.8 4.4-3.5s3.2-.8 3.2-.8c1.9-.4 2.2-.1 6.6-2.5 4.3-2.4 5.3-5.2 6.2-5.9.8-.7 2.3-.8 2.3-.8l-3.4 3.9a28.5 28.5 0 01-5.8 4.5 17.8 17.8 0 01-7.6 1.8 7.7 7.7 0 00-4 2c-1.3 1-2 2.2-2 2.2s-.2-.5 0-.9zm12-12.7c-4 3.7-5.3 7.2-5.3 7.2l5.4-4.9c1.9-1.8 4.5-2.6 5.6-3.7 1.2-1.1 1.3-2 2-2.7l1.3-1s-1.8-1.4-9 5.1zm-8.5 8.6s1.7-.8 2.4-2.3c.5-1.2.2-1.5 1-2.8 0 0 4.2-4 5.7-5.8 2.6-3.1 1.4-5.7 1.4-5.7s.3 1.3-.8 2.7c-1 1.4-6.5 5-7.2 7.2-.6 2.2-.3 2.3-.6 3.4-.6 2.6-1.9 3.3-1.9 3.3zm-2.8 10.5s-2.1-1.4-4.5-1.3c-4.9.4-9 3.4-12.2 3.4-3.1.1-4.4-1.5-6.9-3.2-2.6-1.8-9.2-1.5-9.2-1.5v.3s4.4 0 6.4.6c3.6 1 5.6 4.8 9.7 4.6 5.5-.3 9.9-3.6 12-3.6 3.8 0 4.7.7 4.7.7zm-24-2.4s3.7.6 6.6-1.5c3-2.1 6.4-5 8.3-5.2 2 0 4 .4 4 .4s-2.5-1-4.4-1c-2 0-4 .2-5.8 1.3-1.8 1.1-2.7 3-4.6 4.3a12.8 12.8 0 01-4.1 1.7zm-.7 5c-.5 0-1.1.3-1.3.3-.2 0-1.3-1.2-3-2-1.6-1-4-1.4-4-1.4s-.3 0 .3.2l3.8 1.5a8.6 8.6 0 012.6 2.1c.1.3.6.9 1.5.8 1 0 1.3-.5 1.2-1 0-.3-.6-.5-1.1-.5zm2.6-3.6s1.5.8 4 .8c5.2-.2 8.6-3.8 12-5 3.4-1.4 5.2-.3 5.2-.3s.1-.2 0-.2a7 7 0 00-3.9-1.2c-5.7 0-11.2 3.7-13.5 4.7-2.3 1-3.8 1.2-3.8 1.2zm56-39.9c-1.8 1.9-4.5 7.7-5.6 9.3-1.2 1.6-2.7 2-3.3 2.7-.6.6-2.7 3.5-3.2 4.1-.5.7-.6.5-1 .8-.3.3-.5.3.1.2.6-.1.8-.5 1.6-1.5 1-1 .9-1.4 2.3-2.7 1.4-1.2 3.9-2.6 5.1-4.2 1.3-1.5 3.8-7.5 5.2-9 1.4-1.5 4-2.4 4-2.4s-2-.6-5.3 2.7zm-9 11.1s-.1-1 1.2-2.6 1.7-1.3 2.8-3.6c1-2.3 1.5-4.5 2.3-6.9.9-2.4 2.3-4.8 2.3-4.8s-1.3.2-2.7 2a34.5 34.5 0 00-4.8 8.7c-1.1 3.4-1.1 7.2-1.1 7.2zm-1.7 2.2s.5-.2.5-3.2c.1-2.9-.1-7 .7-9 .9-2 5.4-7 5.4-7s-1.9.5-4.5 2.5-3.7 4.7-3.6 6.7c.2 2 1.3 4.2 1.4 6.1l.1 4zm10.5-20.1s1.1-4 1.6-5 .5-1.5 2.7-4c1.3-1.5 2.6-2.4 3.1-4.4.6-2 .6-7.7.6-7.7s-.6.5-1.1 1.5c-.5 1-.1 4.7-1 6.4-.8 1.7-2.7 5.6-3.7 6.5 0 0-.2-2.9.2-5.7.3-3 1.3-3.8 1.7-5.7.4-1.9.2-6.7.2-6.7s-1.5 1.5-2.3 3.4c-.8 1.8-1.2 5-1.2 7.5s.5 4.5.6 5.9c.1 1.4.2 2-.4 3.6l-.6 2a34.8 34.8 0 01-.7 2.6l.3-.2zm-3.5-21.6s1.4 1.7 1.2 3.6c-.3 2-1 4.5-.2 6.5.7 2 1.9 2.2 2.2 3.4.3 1.2.3 3.4.3 3.4s.6-4.3.2-5.5c-.5-1.1-.7-.6-1.3-1.8s0-4.7-.4-6.7c-.5-2-2-2.9-2-2.9z"/>
+  <path fill="#9ca168" d="M306.7 304.8s.4-1 3.1-2.4a34 34 0 017.3-3c.3.3-.3 1.8-.3 1.8l-2.6.8-2.1 1.2-2.5 1.6h-2.9z"/>
+  <path fill="#9ca168" d="M313.6 297.7c-3.4.1-5.3 1-6 1-.2.1-.7.5-1.2.3a4.9 4.9 0 01-1.5-1.5l-.7-.7-.2 2.5-5-4.4-.6 3-.7 1.3-5-4.8.2 3.7-1.4.1-3.6-2.5-1 .4 1.2 2.2-4.6.3-1 .8a6.3 6.3 0 00-1 1v.4h1.9c.4-.2.6-.7.7-.5.2.2.3 1.2.9 1.1.6 0 2.7-1.7 4.2-1 1.7.8-2.2 2-1.8 3.1.4 1.2 3.2.7 4 .3.6-.3 2.7-3 3.6-2 1.2 1.4-2.5 2.5-1.8 3.9.6 1.3 2.7 1 3.7.4 1-.5 3.4-4.1 3.9-3.4.9 1.4-2 2.7-1.3 3.7.8 1 2.3 0 3.4-.8s1.5-2.5 3-3.3c1.4-.8 1.3-.5 1.7-.5.4 0 1.5-1.1 1.5-1.1l3.5-1.5 1.6.2.9.4 1.7.2.2-1.4s-2-1-3.3-1zm-27.4 0l.7-1.3-.4-.6s-1.2-.7-2.3-1.8a6.9 6.9 0 00-2-1.6L280 291l-.8-2.8-.5-.9-1.3.6-1.7-6.1-.3-1.1h-.7l-1.5 3.6-1.5-2.3-.4-5-1 1-1.3 1.4-2.3-4.6s-.1-.1-.3.3c0 .3-.3 1.8-.1 2.6a26.2 26.2 0 01-6-5.2l-1-2.5 1-2 .5-2.6-2.2.9-.4-5.7-.3-1.8-2.7 3.8-1-1.7v-3.6l-.7-.2-1 2s-1.1-2-1.6-2.5c.1-.8.2-2.9-.3-4.5-.6-2-1.3-3.1-1-4.8.2-1.6.9-1.8.8-2.5 0-.8-1.2.5-.8-.5.4-1 3.8-3.2 3.1-4.4-.7-1.1-4 1.9-3.3-.1.8-2 4-2 4.2-4.9.1-1.7-3 1.1-3.3.2-.3-.8 2-2.6 1.9-3.8 0-1 .4-1.2-.2-1.8-.6-.6-2.6 2.3-2.6 2.3l-2-.7-.8 3-.6 2.5-2.6-1.5.7 3.1.6 3-2.7-.7 1.4 2.6 1.9 2 1.1 1.5.9.4 1 1.1.5 1.7.6 1.9.1 1.8v2.4l-.1.4v1.1c-.5 0-1.4-.8-1.7-.3-.3.6 1.6 2 1.2 2.4-.3.4-3-.5-3.2.3-.2 1 .2 2.2 1.8 2.6s5.3 1.2 4.7 2c-.6.7-4.7-2.3-4.5-.1a3.8 3.8 0 002.6 3.4c1 .4 5.1 0 4.9 1-.3.9-3.3-.4-3.6 1-.3 1.4 2.1 1.6 2.6 1.6s2.2-.1 2.9.4l4.3 4.1a75.7 75.7 0 004.6 3.4c-.8 0-2.4-.3-2.6.3-.3.7 6 3 4.2 3.8-1.8.7-3.8-2-4.3-.4-.6 1.7 1.2 3 2.2 3.6 1 .6 6.7.1 5.6 1.4-1.1 1.3-5.3-.8-5.3.7s2.7 4 4.2 3.9c1.4 0 3-2.4 3.6-1.1.7 1.2-1 1.7.3 2 1.4.4 2.3-1.4 4-1 1.5.3 4 1.3 5.4 2.5a79 79 0 012.9 2.8z"/>
+  <path fill="#717732" d="M308.4 304.1c1 0 1 .6 1.2.6.1 0 1.8-1.5 3.3-2.3a17.5 17.5 0 014-1.4l.1.2s-2.8.7-4.2 1.7l-3 2.1c-.2.2-.8.7-1.7.7-1 0-1.4-.6-1.4-.9 0-.2.7-.7 1.7-.7zm8.5-4.3s-.9.1-1.3-.3a4.3 4.3 0 00-2.6-.8 7 7 0 00-4 1.8c0 .1-.3.6-1.4 1.3.4.1 1.1-.4 2-1a7.4 7.4 0 013.6-1.4c1-.2 1.7.4 2.2.7.5.4 1.4.3 1.4.3v-.6zm-50.5-20.6v-.7a16.1 16.1 0 01-2.2-1.1c-1.6-1-5-3.8-5-3.8l2.8 2.7c1.4 1.3 4 2.9 4 2.9h.4zm35.6 25.2l1.5-2.1c.9-1.5 1.7-2 1.9-2.2.1-.2-.4-.9-.7-1.4l-.2-1.2s.4.8 1 1.3a9.5 9.5 0 011.1 1s1.4-.2 1.4-.5c0-.2 0-.4-.2-.5-.3-.1-.5.2-1.1 0-1.3-.6-1.8-2.6-2.6-2.6-.8-.1-.2 2-.6 2-1.1.2-2-4.3-5-4.5-2 0-2.3.3-2.4.7 0 .5 2.5 3.1 1.6 3.5-.8.4-3.5-4.2-5.5-4.2-1.9 0-2 .7-2 1.1.2.4 2.2.8 1.8 2.2-.5 1.4-2.5-2-4.3-1.9-1.8.2-2 .3-2 .9-.1.5.6 1.2.3 1.4-.2.2-1.4.1-2.3.7-.9.7-2.1 2.4-2.1 2.4s1.2-1.7 2.7-1.9a50 50 0 015.6 0l-1.1-.8c-.6-.5-1.1-1.6-1.1-1.6l1.7 1.5c.8.7 1.9 1.2 1.9 1.2s1.7.2 1.8.4c.1.2 0 .6-.8 1.3l-1.7 1.7 2-1.6 1.5-1.2 1.4.2c.1 0 0-.5-.8-1.7l-1.6-2.5s1 .9 2 2.3c1.1 1.3 1 2 1.4 2 .4 0 1 .2 1.4.1.4 0 .3.6-.4 1.7s-1.2 2.5-1.2 2.5.8-1.2 1.6-2c.7-.8 1.1-1.7 1.5-1.8h1.5l-.8-1.6c-.6-1-.8-2.6-.8-2.6s.6 1.4 1.4 2.5l1.3 1.9 1.4-.1.3.1c0 .5-.2.7-.7 1.8a17.7 17.7 0 00-1 2.1zM280.5 292c1.2.5 1.7.5 1.7.5s-1.7-1-2.1-2.4c-.5-1.4 0-4.4-.8-4.3-.7 0-1.1 2.1-1.8 1.7-.8-.4.2-4.4-.6-6-.8-1.7-2.6-2.9-3-2.3-.4.6-.3 4.2-1.5 3.5-1.1-.8.1-4-.2-5.3-.4-1.5-1.2-2.5-1.9-2.1-.6.3.3 3-.7 3s-.9-1.9-1.3-2c-.5-.2-.6.3-.9 0-.2-.4 0-1.7-.6-1.6-.6.1-.5 1.2-.3 1.7.1.6.5 1.4.7 1.8.2.4 1 .9 1 1.2-.1.3-.5.6-1 .6h-1.9s1.4.4 1.9.4 1.4-.2 1.7.2c.2.5 1.4 2 1.4 2s.3-.8.4-2.2c.2-1.5 0-2.7 0-2.7s.5 1.6.4 2.7c0 1-.4 3-.4 3s1.1.8.8 1c-.3.3-1.5.3-2.8.3-1.4 0-3.3-.5-3.3-.5a13.7 13.7 0 006.7 1.3l1.8 2s.9-1.5 1-3v-3l.4 2.8c0 1.3-.4 3.6-.6 3.8a5 5 0 01-1.9 1l-3.5.5s2.2.3 3.8 0c1.5-.4 1.7-.9 2.2-.6l.8.7 1.3 1c.1.1-.7.4-1 .7l-1.5.7 2.2-.7a22.3 22.3 0 001.1-.4l.5.2-.1-1.2-.3-1.8s.5.8.7 1.6l.1 1.6s.2.2 1.4.6zm-31.1-35.6s.3-1.7.3-3.6a14.3 14.3 0 00-1.9-5.8l1-1.4-1.2 1-1.2-.5a3 3 0 01-.9-1l1.2.8c.6.2.7.1.7.1l-.5-2-1.9-1c-1.3-.6-2.5-1.8-2.5-1.8l2.8 1.5c1 .4 1.6.4 1.6.4l1.6-.6 1.7-1.1s-1 .6-1.8.7l-1.6.3-.3-2.4-1.1-1.1c-.9-1.2-1.6-2.9-1.6-2.9s1 1.2 1.7 1.7c.7.6 1.4 1.5 1.4 1.5l1.6-1 2.8-2-2.7 1.3-1.6.7s-.2-1 0-1.5c.3-.4.8-1.2.7-1.6 0-.5-.4-.3-.5-.7-.2-.3.4-2.6.4-2.6l.1 1.2c0 .5-.2 1 .4 1 .6 0 3.2-2.7 3.6-3.2.3-.5.8-1.8-.6-1.3-1.4.6-1 1.8-2.2 1.7-.4 0-.8-1.5-1.2-1.2-.4.4-1.4 1.3-1.6 2.4-.2 1 .2 2.6-.4 3.1-.6.5-1-1.8-2.2-1.5-1.2.3-1.5 2-1.3 2.6.2.6 2.7 3.5 2 4-.9.3-2.9-2.6-4-.6-1 1.9 3.4 4 4 4.4.5.5 0 .6.8 1.6s1.8 1.2 2.4 1.8a13 13 0 012.1 5.9l-.1 2.7zm11.7 17.1s-1-1.2-.7-3.3c.3-2 1.8-5.7 1.3-6.2s-2 2.2-2.4 1.6c-.4-.6.9-4.3.2-5.8-.6-1.5-.7-2.5-2-2.3-1.3.1-1.8 4.4-2.5 3.6-.6-.7.4-2.6 0-3.7-.5-1-.7-1.3-1.3-1.2-.7.2-1 2.2-1.4 2.1-.5 0-1.2-2.3-2.2-2-.9.3 2.3 4.5 2.3 4.5s.5-.5.8-1.2l.6-1.5s.3 1.3 0 1.9c-.2.5-.3 1.7-.3 1.7s-.8.3-2.1 0a8.8 8.8 0 01-2.3-.7s.8.6 2.1 1l2.7.7a44.9 44.9 0 002 2.7l.8-2.1 1.3-3.5-.6 3.9-.7 3s-1 0-2.6-.3l-3.6-.8 3.6 1.2 2.8.7 1.4 1.9 1-1.5 1-1.8s-.3 1.4-.7 2.3a27.4 27.4 0 01-.7 1.4l-1.8.2h-2.5a19.6 19.6 0 004.5.9s0 .5.7 1.3a4.6 4.6 0 001.3 1.3z"/>
+  <path fill="#fff" d="M314.4 310.8s-.6-.6-1.4-1c-.9-.5-1.2-.4-1.2-.4l-.4-.1.8-2 5.5-5.3.9-5.3h3.4v7.2l1 .5 6.2 3.7v1.6l-1 .4-.7.4-2.3.2-4-3-1.8-1.7-3 4-2 .8z"/>
+  <path fill="#016848" d="M318.8 296.7l-.1 1c0 .9 0 5.2-.2 5.8-.2.6-3.2 1.8-4.9 3.3-1.7 1.5-1.8 2.6-1.8 2.6s-.5 0-1.6.4c-1 .4-1.5 1-1.5 1s.6-2.6 3.4-5c2.7-2.6 4-2.8 4.4-3.2.3-.4 0-5 0-5.5.1-.4.5-.4.7-.4h1.6zm7 15.7l.8-1.1 1-.8-1.5-.8c-1.5-.6-2.3-.4-3.3-1.2a13.6 13.6 0 01-2.2-2l-1.5 1.2 1.7 2c.9.8 2.7 1.1 3.5 1.6a8.8 8.8 0 011.6 1.1z"/>
+  <path fill="#cd202a" d="M321.5 296.6s1.7 0 1.9.2l.2.6c0 .1 0 4-.2 5.3a8 8 0 01-1.4 3l-4 3.7c-1.2 1.2-2.4 2.8-2.4 2.8l-.8-1c-.3-.4-.7-.6-.6-.9a10 10 0 013.3-3.4c2-1.3 3.6-2.8 4-4.9.3-2 0-5.4 0-5.4z"/>
+  <path fill="#cd202a" d="M332.5 310s-.4-.4-1.8-.4l-1.5.1s-.8-1-2-1.7c-1.2-.8-2.1-.7-3.5-1.6-1.3-.8-2-2.1-2-2.1l1-2s1.2 1.5 2.4 2.4c1.1.9 3.7 1.7 4.6 2.4l2.8 2.9z"/>
+  <path fill="#30c2dc" stroke="#0872a7" stroke-width=".5" d="M345 286.4s-3.6-1.4-3.4-2.7c.3-1.2 8.3-3.3 8.3-3.3l.1-2.1s-1.2-.1-3.2.5c-2 .7-5.2 1.6-8.6 1.6a1735.4 1735.4 0 00-34.4-2.2c-3.7-.3-6-6-6-6l-1.8.4s.5 2.7-.4 3a65 65 0 01-13.9-6l-.6 2.6s7.3 4 7.1 5.5c-.2 1.4-2.4 1.3-2.4 1.3l1 1.8c.3 0 12 .6 12.3 4.1 0 1.5-3 2.3-3 2.3l1 1.2v.6s6.7 0 8.5 1c1.8 1 2.7 2.6 5 3.8 2.2 1.3 17.3 1 19.6.3 2.7-.7 4.3-3.7 8.7-5 4.3-1.4 5.7-1.4 5.7-1.4z"/>
+  <circle cx="284.5" cy="280.7" r="2.1" fill="#fff" stroke="#0872a7"/>
+  <circle cx="296.4" cy="270.9" r="2.1" fill="#fff" stroke="#0872a7"/>
+  <circle cx="346.5" cy="286.6" r="2.1" fill="#fff" stroke="#0872a7"/>
+  <path fill="#f8c83c" d="M275.1 267.8c-.7 1.6 2 4.6 4 5 1.8.2 2.8-.2 3.2-1.1a2.8 2.8 0 00-.4-2.5c-1.2-1.7-6-3-6.8-1.4z"/>
+  <path fill="#fff" d="M281 270.2c0-1-1.6-1.9-2.6-1.9s-2 0-1.8.5c.1.6 2.7 1.3 2.8 1.6 0 .3-.8.6-.4 1 .5.4 1 .1 1.4-.2.4-.3.7-.4.7-1z"/>
+  <path fill="#f8c83c" d="M297.7 288.3c.4 1.4-.7 2-2 2.7-1.5.6-4.3.2-5-.9-.6-1.1 1-3 2.8-3.4 1.7-.4 3.8.3 4.2 1.6z"/>
+  <path fill="#fff" d="M294.8 289c.5 0 .6 1 1 .8.5 0 1-.8.8-1.3-.1-.6-1-1.3-1.8-1.2-.8 0-3 2-2.8 2.5.2.5.8.5 1.2.3.4-.2 1-1 1.6-1z"/>
+  <path fill="#f8c83c" d="M349.2 281c1.3 1.7 3.6.2 4.2-.5.6-.6 2.4-1.7 1.7-2.8-.8-1.1-2-1-3-1-.8 0-2.6 1.4-2.9 2-.3.5-.6 1.6 0 2.4z"/>
+  <path fill="#fff" d="M349.6 280s.1-1.9 1.8-2c1 0 1 .3 1.8.7.7.4 1-.5 1-.5s0 1.3-1.1 1.3c-1.2 0-.8-.5-2-.7-1-.2-1.5 1.1-1.5 1.1z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".5" d="M321.9 276.4l-.9-.6h-2.8l-3.4.1 3.4 9.9 4 5.8 1.6.6 3.1-.2.6-1.6-1.2-9.5-4.4-4.5z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".5" d="M310.6 277l.2-1.1 1.8-.1a7.2 7.2 0 012.2.1s2.3 2.9 3.1 4.7c.8 1.8 1.7 4.8 2.7 6.6 1 1.9 3.2 5 3.2 5h-4l-2-.6-5.6-9-1.6-5.6z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".5" d="M308.2 275.8h2.6a14 14 0 013.9 5.4c1 2.8.5 3.2 1.8 6.2 1.4 2.9 3.2 4.9 3.2 4.9s-3.9.2-6-.2c-2.3-.4-3-.3-3.6-1a9.2 9.2 0 00-1.7-1.3h-2.2l.5-3.1-.6-6.9.1-3.5 2-.5zm23.4 1.8l-3.7-1.5-7-.4.6 3.6a30.2 30.2 0 002.6 7.7c1.1 2 2.2 4.4 2.8 5 .6.5 4.6-1.1 4.6-1.1l2.6-.4-.3-2.8-.4-1 .6-8-.6-1.2-1.8.1z"/>
+  <path fill="#f9aa51" stroke="#953220" stroke-linecap="round" stroke-linejoin="round" stroke-width=".5" d="M307.1 277.7c0 .8 1 .9 1.2.8.2 0 1-.3 1-1.5s-.7-2.1-2.2-2.2c-1.4 0-2.5 1.7-2.5 3 0 1.2 1.2 1.8 1.2 2.3 0 0-1.2 1.1-1.1 3.1 0 2 1.6 3.6 1.6 3.6s-1.7 1.3-1.7 2.7c0 1.4 1.3 2.3 2.6 2.3 1.2 0 2.8-.8 2.8-1.8s-1-1.7-1.7-1.7c-.8 0-1.1.5-1.1.8m25.6-10.9c0 .9-.6 1-1 1s-1.2-.4-1.2-1.5c0-1 1.4-1.6 2.4-1.6.9 0 2.4 1.2 2.4 2.7 0 1.5-1 2.6-1 2.6s.6.3.6 2.2c0 2-1.2 3.3-1.2 3.3s1.6.6 1.6 2.6-1.4 2.6-2.3 2.6c-1 0-2.6-.5-2.6-1.9 0-1.3.8-1.8 1.5-1.8.6 0 1.3.7 1.3 1.5"/>
+  <path fill="#953220" d="M309.5 288.6l.4.6c.2.4.3 1 .8 1.4.8.7 7.2 1 9.2 1 2 0 7.8.2 8.9-.4 1-.7 1.2-1.8 1.9-2.3l.9-.4-.9.7v1.4l.5.8s-.1.4-.8.8c-.7.4-1.3.5-2.3.6-1 .1-13.2.1-15.2-.2-2-.4-1.8-.3-2.4-.7a4.3 4.3 0 01-1-1l.3-.8-.3-1.4zm20-11.8l1 .5s-.9.3-1.6 2.3c-.7 2-.1 2.5-.6 2.7-.5.2-5.8 0-5.8 0l-1-2.1 8-3.3z"/>
+  <path fill="#231f20" d="M346.4 276s-.9-.3-1.3-1c-.4-.8-.8-1.7-.5-2 .4-.1 1 .5 1 1.1 0 .6.8 2 .8 2zm10.4-2.8s.7 1.2 1 1.3l1.2.6s-1.5 0-2-.4a8.3 8.3 0 01-1-1.5h.8z"/>
+  <path fill="#231f20" d="M360 274.2s-1 .5-1.6.2c-.8-.3-1.4-.7-1-1 .2-.4.4-.3.8.2.4.4 1.8.6 1.8.6zm5.3-4.5s-.8.6-1.3.6-1.5-.2-1.5-.4 1.3-.4 1.6-.3h1.2zm-8-10.5s-1.1.4-1.5 1c-.4.5-.3 1.2.2 1.2s.6-.7.6-1l.7-1.2zm-5.2 2.9s-.9.5-1 1c-.3.5-.5 1.6 0 1.6s.7-.8.7-1.2c0-.5.3-1.4.3-1.4z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".5" d="M342.8 268.4l-2.9 3s6.6 3.7 11.7 3.5c5-.1 10.8-4 11.2-5 .4-.7 0-4.3-.6-5.4-.7-1.1-4.2-3.8-5.5-3.7-1.3.1-3.7 1.9-5.8 4-2.2 2.1-2 3.9-5 3.7l-3.1-.1z"/>
+  <path fill="#0c8489" d="M342 269.6s7 1 9.1-.8c2-1.8 4.3-5.3 5.7-6 1.4-.9 2-.9 2-.9l1.6 1.1 1.8 1.5.6 3.4v1.8l-2.2 1.8-4 1.9-4 1.2-3.2-.1-6.7-2-1.7-1.1-.4-.4 1.4-1.4z"/>
+  <path fill="#04534e" d="M352.8 265.5c0-.6.4-.6 1-.6s1 .2 1 .8-.5 1.4-1 1.4c-.6 0-1-1-1-1.6zm2.8 1.8c0-.6.4-.8 1-.8.7 0 1.3.7 1.3 1.2s-.5 1-1.1 1c-.7 0-1.2-.9-1.2-1.4zm-1 4.2c0-.7.5-.8 1.1-.8.6 0 1 .3 1 1a1.2 1.2 0 01-1.1 1.2c-.7 0-1-.7-1-1.4zm-3.7-1.3c0-.7.7-1 1.3-1 .6 0 1 .7 1 1.4s-.4 1.3-1 1.3-1.3-1-1.3-1.7zm-5.9.7a1.4 1.4 0 113 0 1.4 1.4 0 01-3 0z"/>
+  <path fill="#8cbebf" d="M355.6 267.3c0-.5.7-.8 1-.8.5 0 .8.4.8.8s-.3 1-.7 1c-.4 0-1-.5-1-1zm-1 4c0-.5.6-.8 1.2-.8s1 .3 1 .8-.5 1-1 1c-.6 0-1.1-.4-1.1-1zm-3.7-1.2c0-.6 1-.9 1.5-.9.4 0 .3.4.3 1 0 .7-.3 1.2-.7 1.2s-1-.7-1-1.3zm1.8-4.7c0-.5.4-.5.8-.5s.6.1.6.7-.3 1-.6 1c-.4 0-.8-.6-.8-1.2zm-7.7 5.1c0-.6.6-1.3 1.4-1.3s1.7.3 1.7 1c0 .6-1 1.8-1.8 1.8-.9 0-1.3-.8-1.3-1.5z"/>
+  <path fill="#231f20" d="M347.7 269.4s-1 .1-1.5.6-.5 1-.3 1.2c.3.2.7-.3.8-.6 0-.2 1-1.2 1-1.2zm4.7-1s-1 .6-1 1.3c-.1.6 0 1 .2 1 .3 0 .5-.9.4-1.2-.1-.3.4-1.2.4-1.2z"/>
+  <path fill="#231f20" d="M353.2 269.3s-.6 0-1 .4c-.5.5-.9 1-.6 1 .3 0 .8-.2.8-.5 0-.2.8-.9.8-.9zm1-5.4l-.8.6c-.2.2-.5 1-.2 1 .3.2.5 0 .8-.5.2-.5.2-1.1.2-1.1zm3.5 2.3s-.9 0-1.2.5c-.3.4-.5.8 0 .8.3 0 .4-.2.6-.5.1-.4.6-.8.6-.8zm-.5 4.1s-.2.7-.8 1c-.5.3-.7.5-1 .1-.1-.4.2-.6.4-.7l1.4-.4z"/>
+  <path fill="#04534e" d="M362.8 267.5s.4 2-1.3 3c-1.7.9-6.4 4.2-10.9 3.8-4.5-.4-9.6-3-9.6-3l-.7.4 1.2.5 3.4 1.4 4 1.2 2.5.1 2.1-.2 4-1.3 3.3-1.7 1.8-1.4.4-.6v-1.9l-.2-.3z"/>
+  <path fill="#231f20" d="M274.9 242.2s1 .9 1 1.6c-.2.8-.4 1.1-.7 1-.3-.2-.3-1-.3-1.3v-1.3zm7.7 7.1s-.3 1.4-.9 1.5c-.5.1-.9-.4-.8-.7.1-.2.6 0 .8-.2l.9-.6zm-16.8 1s.4.8 1 1c.8 0 1-.4 1-.6-.1-.2-.4-.2-.8-.2l-1.2-.1zm3 6s.7.6 1.5.7a1.3 1.3 0 001.3-.7c0-.2-1-.2-1.3 0-.3.3-1.5 0-1.5 0zm5.3 4.4s1.4-.2 1.6-.6c.2-.4.6-1 .3-1.3-.3-.4-.5.5-.7.9-.1.3-1.2 1-1.2 1z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".5" d="M282.6 257.1s1-6-4-10.4c-5-4.3-8.1-3.2-9.8-1.6-1.7 1.6-3.2 6.7 2 11.3 5.3 4.5 11.7 3 11.7 3l.1-2.3z"/>
+  <path fill="#0c8489" d="M267.6 250.7s-.1-3.4 1.5-4.4c1.5-1 6.8-1.8 9.3 3.1 2.6 5 2.7 7.4 2 10h-2.7l-4.3-1.8-3.5-2.6-2.3-4.3z"/>
+  <path fill="#04534e" d="M282 258s-.9 1-2.7 1c-1.7-.2-10-2.3-12-9.8v1.7l.1.5.6 1.5 1.7 2.5 2.2 1.9 2.8 1.4 2 .6 2.5.4h1.5l1.3-1.7z"/>
+  <path fill="#04534e" d="M277.7 255.9c0-.7.3-.7.8-.7s1-.2 1 .4c0 .7-.4 1.6-1 1.6-.4 0-.8-.7-.8-1.3zm.3-4c0-.4.4-.8 1-.8.5 0 .9.4.9.9 0 .4-.4.8-1 .8-.5 0-.9-.4-.9-.8zm-3.7 4.4c0-.4.4-.7 1-.7s1 .3 1 .7c0 .3-1 .8-1.5.8-.6 0-.5-.5-.5-.8zm-.4-4.6c0-.6.3-.4.8-.4s1.2.1 1.2.7-.7 1.4-1.2 1.4-.8-1.2-.8-1.7zm-3.4.7c0-.5.3-1.1.9-1.1s1.3.6 1.3 1.1c0 .5-.5 1-1.1 1-.6 0-1.1-.5-1.1-1zm.6-4c0-.6.3-.5 1-.5.6 0 1.1.2 1.1.7 0 .5-.7 1.2-1.4 1.2-.6 0-.7-1-.7-1.5zm3.7-.5c0-.4.5-.3 1-.3.7 0 1.1.4 1.1 1s-.7 1-1.3 1c-.6 0-.8-1.2-.8-1.6z"/>
+  <path fill="#8cbebf" d="M271 248.3c.2-.4.4-.7.8-.7.5 0 .9.1.9.7 0 .4-.4.9-.8.9-.5 0-1-.5-.8-1zm-.6 4c0-.5.2-1 .7-1s1 0 1 .5-.5 1.1-1 1.1-.7-.1-.7-.6zm4.4-4.3c0-.4.3-.4.8-.4s.8 0 .8.5c0 .4-.4.7-.8.7s-.8-.4-.8-.8zm-.9 3.9c0 .5.5 1 1 1s1-.5 1-1c0-.6-.6-1-1-1s-1 .4-1 1zm4.3-.6c0 .5.4.9 1 .9.5 0 .9-.4.9-.9s-.5-.9-1-.9-1 .4-1 1zm-4.1 5c0-.5.5-.9.9-.9s.9.3.9.7c0 .4-.8 1-1.2 1-.5 0-.6-.4-.6-.9zm3.6-.7c0-.5.4-.6 1-.6.5 0 .8.1.8.6 0 .6-.5 1-1 1s-.8-.5-.8-1z"/>
+  <path fill="#231f20" d="M278.7 249.4s.5.7.6 1.3v1.2c-.3 0-.6-.4-.7-.9-.1-.5 0-1.6 0-1.6zm-3.2-3.3s.4.5.4 1 0 1-.3 1-.3-.4-.3-.8l.2-1.2zm-3.7.5s.4.5.4 1 0 1-.3 1-.3-.4-.3-.8l.2-1.2z"/>
+  <path fill="#231f20" d="M270.5 247.3l1 .4c.3.4.5.8.3 1-.1.2-.5-.1-.6-.4l-.7-1zm2.8 3.8s.7 0 1.1.5c.4.3.8.6.5.9-.2.2-.7-.2-1-.5l-.6-.9zm-3.4 0l1 .3c.3.2.4.7.2.8-.1.1-.4 0-.6-.4l-.6-.8zm8.3 2.5l.2 1.4c0 .5.1 1-.2 1s-.3-.7-.3-1c0-.5.3-1.4.3-1.4z"/>
+  <path fill="#231f20" d="M277.3 254.9l.8.5c.3.2.3.6.1.6l-.4-.5a9.2 9.2 0 01-.5-.6zm-3.7.2l.9.3c.2.2.3 1 .2 1.1 0 .1-.4 0-.6-.3l-.5-1z"/>
+  <path fill="#04534e" d="M272.1 243.8s-3.2.7-3.8 2.9c-.6 2-.7 4.4-.7 4.4l-.4-2.7.6-1.7 1-1.6 1.4-1 1.3-.4.6.1zm10.2 12.5s.4-.8-.6-3.4c-1-2.5-3-6-3-6l1.6 1.8 1.2 2 .6 1.8.5 1.7v1.6l-.3.6z"/>
+  <path fill="#231f20" d="M285.6 252.2s1.2.7 1.3 1.1c.1.4.2.6-.1.7-.3.1-.8-.4-1-.7a6.5 6.5 0 01-.2-1.1zm-4.8 12.8s.6-1 1.3-1.3c.7-.4 1.2-.4 1.4-.1.2.2-.4.7-1 .9l-1.7.6zm8.1 3.1s.8-.4 1.3-1c.5-.5.6-.9.4-1-.2-.3-.8 0-1.1.5-.3.4-.6 1.5-.6 1.5zm-.9-.7s.3-1 .6-1.4c.3-.3.6-.5 1-.3.2.2 0 .6-.2.9a7.8 7.8 0 01-1.4.8z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".5" d="M301.5 261.2s-5-7.2-12.8-7.6a7.4 7.4 0 00-8 7c.2 1.6 2.6 5.2 10.9 5.8 8.3.6 9.6-3.9 10-4.1.3-.2-.1-1-.1-1z"/>
+  <path fill="#0c8489" d="M295.6 256.3s2 1.5 3 2.8c.8 1.2 1 2.2.5 2.3-.5.2-5-4-8.8-4.9-3.7-.9-6.9 0-7.6 1.7s-.4 4.5 1.2 5.6c1.8 1 9.7 2.3 9.7 2.3l3.7-.5 2.3-1.3.5-1.3.6-1.6.2-.7-1.9-2-3.4-2.5z"/>
+  <path fill="#04534e" d="M289.2 257.3c0 .4-.5.7-1 .7s-.9-.3-.9-.7c0-.5.4-.9 1-.9s1 .4 1 .9zm-4.6 1.6c0-.5.6-.4 1-.4.6 0 1 .3 1 .8s-.8 1.1-1.3.9c-.6-.3-.7-.8-.7-1.3zm5 2.7c0-.6.4-1 1-1 .7 0 1.2.4 1.2 1s-.8 1.2-1.5 1.2-.7-.6-.7-1.2z"/>
+  <path fill="#8cbebf" d="M285.8 262.7c0-.5.6-.6 1-.6.5 0 1 .5 1 1s-.5.9-1 .9c-.4 0-1-.8-1-1.3z"/>
+  <path fill="#04534e" d="M292.5 264.5c0-.4.2-.8.7-.8.4 0 1 .3 1 .7 0 .4-.5.9-1 .9a.8.8 0 01-.7-.8zm3-2.3c0-.5.3-.4.8-.4s1 .2 1 .8-.6.8-1.1.8c-.5 0-.7-.6-.7-1.2z"/>
+  <path fill="#8cbebf" d="M289 256.9c0 .4-.2.6-.7.6s-.9-.2-.9-.6c0-.5.2-.6.6-.6s1 .1 1 .6zm-2.5 1.9c0 .5-.7.7-1 .7-.5 0-.8-.2-.8-.7 0-.5.3-.6.8-.6s1 .1 1 .6zm1 3.8c0 .4 0 .7-.5.7s-1-.3-1-.7c0-.4 0-.7.5-.7s1.1.3 1.1.7zm4-1.3c0 .4-.7 1-1.2 1-.4 0-.6-.9-.6-1.3s.4-.7.8-.7 1 .6 1 1zm5.8 1.3c0 .4-.7.4-1 .4-.5 0-.8-.5-.8-1 0-.4.1-.8 1-.7.5 0 .8.8.8 1.3zm-3.4 1.7c0 .5-.3.8-.7.8a.8.8 0 01-.8-.8c0-.4.4-.6.8-.6s.7.2.7.6z"/>
+  <path fill="#231f20" d="M294.4 262s.8-.3 1.5-.3c.6 0 .6.3.6.4 0 .1-.5.3-.7.2a86.2 86.2 0 01-1.4-.4zm-3.3 2.8s.6-.4 1.1-.5c.5-.1.9 0 .8.4 0 .3-.2.3-.6.3l-1.3-.2zm-2.2-5s1.4.6 1.7 1.1c.3.6.4.7.1.9-.3.2-.6-.2-.8-.5l-1-1.5z"/>
+  <path fill="#231f20" d="M288.5 261.6l1.6-.3c.5 0 .6 0 .7.2 0 .2-.1.3-.5.3l-1.8-.2zm-3.4 0s1.2.2 1.5.5c.3.3.3.6.1.7 0 .2-.6.1-.8 0l-.8-1.2z"/>
+  <path fill="#231f20" d="M285 263.3s.4-.7.8-.8 1-.1 1 .1c.1.2-.4.5-.7.6l-1.2.1zm-1-5.1l1.2.3c.4.3.5.6.4.7 0 .1-.5.2-.8 0-.5-.4-.7-1-.7-1zm2.6-3s1.2.4 1.6 1c.4.5.3.8.1.9l-.9-.4c-.3-.3-.8-1.4-.8-1.4z"/>
+  <path fill="#04534e" d="M300 263.7s-2.3 2-7.7 1.9c-5.5-.2-10.4-2.5-11.6-5l.5 1.2 1.2 1.6 3.8 2 4.3.9 3.3.2 3.2-.6 2.5-1.1.4-.7.2-.4zm.8-2.5s-.9-1.2-2.2-2.3c-1.2-1.2-6.2-4.4-6.2-4.4l4 1.8 2.7 2.2 1.8 2-.1.7z"/>
+  <path fill="#231f20" d="M301 256.4s1.4.5 1.6.8l.5.6s-.3 1-.6.6l-.8-.9-.7-1.1zm4-2.2s1.3.5 1.8 1.1c.5.7.4 1.2.2 1.3-.2 0-1-.7-1.2-1a47.3 47.3 0 00-.7-1.4z"/>
+  <path fill="#231f20" d="M306.4 254s1.2.8 1.4 1.2c.1.4.5 1 .1 1-.3.2-.9-.4-1-.8l-.6-1.5zm6.8 1.5s1 .4 1 1.2v1.3l-.7-.7v-.7l-.3-1zm1.8.7s.8.7.9 1.2c0 .5.2.8-.3 1-.4 0-.6-.5-.6-1v-1.2zm-12.3 15s.6.2 1.2 0c.5-.2 1-.7.9-1-.1-.4-.4-.7-.8-.2-.4.4-.2.6-.5.8l-.7.3zm6.8 1.8s.9-.2 1.5-.9c.6-.6.9-1 .5-1.2-.4-.2-1 0-1 .5l-1 1.6zm5.5.1l1.3-.9c.5-.4.7-.7.4-1-.3-.5-.6-.2-.8 0l-.2.7-.6 1.2z"/>
+  <path fill="#231f20" d="M316.7 273.1s.8-.9 1-1.4c.1-.5.2-1-.1-1-.4 0-.8.5-.8.9v1.5z"/>
+  <path fill="#8cbebf" stroke="#04534e" stroke-width=".5" d="M299.9 264.1c0-2.4 3.5-8 7.5-8 1.6 0 4.9 1 7.5 2.1 2.2 1 3 2 4.4 2.4 1.5.4 3.7.1 3.7.1l5-.5-4 5.7-1.4 1.2s-1.2 2.4-4.7 3.8c-3.6 1.4-9.5.4-12.2-.3-2.7-.7-6-3.2-5.8-6.5z"/>
+  <path fill="#04534e" d="M299.9 264.1h.2c0-.5.2-1.3.6-2.1a12.2 12.2 0 012.7-3.8c1.1-1 2.5-1.8 3.9-1.8.8 0 2 .2 3.4.6a29.4 29.4 0 014.1 1.4c1 .5 1.8 1 2.4 1.5.7.4 1.3.8 2 1a9 9 0 002 .2l1.8-.1 4.4-.5-3.6 5.2-1.4 1.2v.1a9 9 0 01-4.6 3.7c-1.3.4-2.8.6-4.5.6-2.8 0-5.9-.5-7.6-1a8.4 8.4 0 01-3.8-2.1 5.7 5.7 0 01-1.8-4h-.5c0 1.7.8 3.2 2 4.4a9 9 0 004 2.3c1.7.4 4.8 1 7.7 1a14 14 0 004.7-.7 9.4 9.4 0 004.9-4h-.3l.2.1 1.4-1.3 4.3-6.2-5.6.7h-.1a14.8 14.8 0 01-3.4-.1 5.5 5.5 0 01-1.9-1c-.6-.4-1.4-1-2.5-1.4a29 29 0 00-4.2-1.5c-1.3-.4-2.6-.6-3.4-.6h-.1c-1 0-2 .3-3 1a11.2 11.2 0 00-3.3 3.5 8.3 8.3 0 00-1.4 3.7h.3z"/>
+  <path fill="#0c8489" d="M324 264.9c-.4.3-1 .3-1.4.3-.5 0-11.6-6.7-15-6.4-3.5.3-6.8 1.7-6.9 5.3 0 3.5.8 3.5 1.5 4.5s7.5 2.5 7.5 2.5h4.1l3.3-.4 3-1.6 1.5-1.3 1.1-1.3 1.3-1.6z"/>
+  <path fill="#04534e" d="M306.5 263c0 .8-.3 1.3-1 1.3-.6 0-1.1-.3-1.1-1s.4-1 1-1c.7 0 1 .1 1 .8zm1.1-3c0-.6.6-.8 1.2-.8.7 0 1.2.2 1.2.8 0 .6-.5 1-1.2 1-.6 0-1.2-.4-1.2-1zm6.7 1.8c0-.5.4-.9 1-.9.5 0 .9.4.9 1s-.4.8-1 .8a1 1 0 01-1-.9zm1.3 4c0-.6.5-1 1-1 .6 0 1.2.2 1.2.8s-.2 1.3-.8 1.3c-.6 0-1.4-.4-1.4-1zm-3.2 2.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1 0 .5-.5.9-1 .9-.7 0-1.2-.4-1.2-1zm-6-1c0-.6.3-1 .9-1a1 1 0 110 1.9 1 1 0 01-1-1z"/>
+  <path fill="#8cbebf" d="M306.4 263c0 .5-.4 1-1 1a1 1 0 01-1-1c0-.6.4-.8 1-.8s1 .2 1 .7zm3.3-3.2c0 .5-.2.9-.8.9-.5 0-1.3-.4-1.3-.9s.5-1 1-1c.6 0 1 .5 1 1zm6.4 1.7c0 .5-.4.9-1 .9s-.9-.4-.9-.9c0-.4.4-.8 1-.8s.9.4.9.8z"/>
+  <path fill="#04534e" d="M312.7 264.2c0 .7-.3 1.2-1 1.2-.6 0-1.1-.3-1.1-1s.3-1 1-1 1 .2 1 .8z"/>
+  <path fill="#8cbebf" d="M308 267.2c0 .5-.4 1-1 1s-1-.5-1-1 .6-.8 1.2-.8.8.3.8.8zm4.5-3a1 1 0 01-1 1 1 1 0 01-1-1 1 1 0 011-1 1 1 0 011 1zm5.2 1.3c0 .6-.3 1-1 1-.6 0-1.1-.4-1.1-1s.2-.8.8-.8c.6 0 1.3.2 1.3.8zm-3.3 2.7c0 .6-.4 1-1 1s-1.1-.4-1.1-1c0-.5.5-.8 1-.8.6 0 1 .3 1 .8z"/>
+  <path fill="#231f20" d="M314.8 265s1.6-.2 1.9 0c.3.4.3.8.1 1-.1 0-.8.1-1-.1 0-.3-1-1-1-1zm-1.7-5.4s1.3.3 1.8.9c.5.5.4 1 .4 1.1-.2.1-.6.2-1-.2l-1.2-1.8zm-3.7 2.6s1.5.8 1.8 1.3c.3.4.4.8.2 1-.1.2-.8 0-1-.3 0-.3-1-2-1-2z"/>
+  <path fill="#231f20" d="M308.7 263.3s1.7.2 2 .5c.5.4.8.4.8.6 0 .3-.3.4-.5.4a3.6 3.6 0 01-1.2-.5l-1-1zm-1.9-4.8s1.7.2 2 .5c.4.3.5 1 .1 1.2-.4.2-.8-.2-1-.5a8.2 8.2 0 00-1-1.2zm-3.6 2.5s1.5.8 2 1.4c.3.4.5.7 0 1-.4 0-.9-.7-.9-1a9 9 0 00-1.1-1.4z"/>
+  <path fill="#231f20" d="M302.8 263l1.5-.2c.5 0 1.2-.1 1.2.2 0 .4-.6.5-1 .4l-1.7-.4zm8.6 5.6s1.1-.7 1.7-.6c.5.1.7.1.7.4 0 .4-.7.3-.9.3l-1.5-.1zm-6-.9s.4-.6.9-.7c.4 0 .6 0 .7.2 0 .2-.4.6-.6.6h-1z"/>
+  <path fill="#04534e" d="M322.6 266.6s-1.6 2-4 3a14 14 0 01-7.2 1.1 15.2 15.2 0 01-11.2-5.2l.4 1.1 2 2.6 2.3 1 3.5 1 3.3.3h2.5l3-.5 1.9-.7 1.3-.8 1-.8 1.2-2zm-3-5.9s-1 .3-3-.9-4.3-2.8-8.8-2.8c-4.5 0-5.9 3-6.2 3.2l2-2.6 2-1.1 1.7-.3h1.5l2 .6 1.7.6 2.1.7 1.8 1 2.2 1.1 1 .5zm6 1.4h-3.4c-.8 0-.8.2-1 .4a4 4 0 01-.2.4l-.8-1.7 3.5-.5 2 .7-.2.6z"/>
+  <path fill="#0c8489" stroke="#04534e" stroke-width=".5" d="M320.7 280.4c.2.5.6 1 1.1 1h1.6l3.6-.3 1.2-1.4.8-3.2 1-1.2 3.3-1.9 2.8-.8 1.9-.2 2.5-.8 1.9-1 .8-1.2.8-1.8-.8-2.5-2-2.7-3.4-1.3H335l-3 1.1-5.5 1.3s-3 1.3-4.3 3.7c-1.3 2.3-1.2 3-1.5 6-.2 3.2 0 7.2 0 7.2z"/>
+  <path fill="#8cbebf" d="M322.2 279.2c1 0 .2-1.7 1.4-3.8 1.2-2 2.6-4.6 3-4.6s.4.4.9.3c.4-.2 1.2-.8 1.2-1 0-.2 0-1.3 1-2 .8-.8 2.1-1.9 2.7-2 .6-.1 1-.3 1 0 .1.3-.3.7.1.8.4.2 1.4.1 1.6-.5l.2-1s.6-.5 1.8-.3c1.2.3 1.3.2 1.4.7.1.4-.5.5-.4.8v.6c.2.2.4 1 1.2 1 .8-.1 1.1-.6 1.1-.6l.3-.4s.2-.5-.1-.7c-.3-.2-.2-.4 0-.3.4.1 1.6 1.8 2 1.1.4-.7.5-1.7.2-2a91.2 91.2 0 01-1.9-2.7l-3-1-4 .3-4 2.2-3.6 2s-.2 2.9-.8 2.3c-.7-.5-1.6-2-1.9-1.5-.3.5-.9 2.7-1.3 3.8-.3 1-1.4 4.4-1.3 5.6.1 1.2.8 2.9 1.2 2.9z"/>
+  <path fill="#8cbebf" d="M325.8 274.4c-.3 0-.7.3-.8.5-.2.2-.3.5-.2 1 0 .3.7.7.7.7h.5l1-.3.3-.8c0-.5-.3-.6-.4-.6a29 29 0 01-1.1-.5zm6.2-5c-.6-.3-.8.1-1 .3v.5s.2.8.4 1c.3 0 1.1.3 1.3 0 .3-.2.5-.4.5-.9s-.7-.7-.7-.7l-.5-.3zm5 1.1c0-.2-.5-.3-.9-.2-.3 0-.7.4-.6 1 .2.7.8.7 1.2.6.5-.1.4-.8.4-.9l-.1-.5zm-14.4 1c0 .3.5 1 1.2.9a1.3 1.3 0 001.2-1c0-.4-.4.3-1 .5s-.7.2-1 0c-.2-.4-.4-.4-.4-.4z"/>
+  <path fill="#04534e" d="M327.3 275.5s0 .6-.4 1c-.5.3-.8.3-1 .3-.3 0-.6 0-.8-.3l-.3-.7s.5.8 1.3.6a2 2 0 001.2-.9zm13.3-8.3s0 .6-.5.9c-.5.3-.7.3-1 .3-.2 0-.6-.1-.7-.4-.6-1-.3-1.5-.3-1.5s.4 1.6 1.3 1.5a2 2 0 001.2-.8zm-11.9 2.9s-.4 1.2-1.2 1.2c-.9 0-.8-.2-.7-.4 0-.1.3.2.7 0 .4 0 1.2-.8 1.2-.8zm2.3-.3s0 1 .2 1.2c.3.4.7.5 1 .5s.6 0 .9-.4.1-.8.1-.8l-.2.5c-.3.3-.5.3-.8.3s-.7 0-.8-.3l-.4-1zm4.3-4.3s.2.7-.3 1.2c-.5.6-1.5.2-1.5.2s.8.3 1.2-.2c.4-.4.6-1.2.6-1.2z"/>
+  <path fill="#04534e" d="M321.7 281.1s5.3 0 5.7-.8c.4-.7-.4-3.6 2.7-5.8 3.2-2.2 5.7-2.2 7.4-2.3 1.7-.2 5.3-1.3 6-4.5.3-2-2.3-2.2-3.3-4-1-2-3.6-1.2-3.8-1.2-.1 0-3 0-4.3 1.3-.9.8-.8 1.8-1.1 2.2-.4.5-4 0-4.3.6-.4.6.1 1.7-.2 2-.2.3-1-.8-1-.8l.2-2.8 4.5-2.6 5-2.8 3.5.1 3.5 1.8 1.7 2s.3.8.5 2.3a5.3 5.3 0 01-.2 2c-.8 2.8-3.7 4.8-6.7 5a14 14 0 00-7 2.5c-1.4 1-2.1 5.3-2.1 5.9 0 .5-6.6.1-6.6.1v-.2z"/>
+  <path fill="#231f20" d="M324 270.8c-.3.3-.7.2-.8 0-.2-1 .3-2.2.3-2.2v1.6c.1.2.4.1.5.3v.3zm3.2-.6c-.2-.1-.1-1 0-1.3.2-.3 1.7-1.4 1.7-1.4l-.6 1.5c-.2.4-.7 1.3-1 1.2zm-1.2 5.3c-.3 0-.3-.4-.3-1s1-1.6 1-1.6l-.4 1.2.2 1c0 .3-.3.4-.5.4z"/>
+  <path fill="#231f20" d="M328.4 274s-.5.6-1 .9c-.5.3-1.1.7-1.4.6-.4 0 .1-.8.3-.9l2.1-.6zm4.5-6.4s-.6.5-.9 1.2c-.3.7-.4 1.3-.1 1.4.3.2.7-.8.8-1.1l.2-1.5z"/>
+  <path fill="#231f20" d="M334.6 269.9s-.5-.4-1.2-.6c-.8-.2-1 0-1.2.2 0 .2-.6.5-.3.7.2.2.6-.3.8-.3.2-.1.5-.3.9-.2l1 .2zm-1-4.5c.3.3.7-.2 1-.6.4-.4.7-1.2.7-1.2l-1 .7c-.4.3-.9 1-.7 1.1zm6.9-.1s-1 .4-1.2.8c-.3.4-.7.8-.4 1 .3.3.6-.2.8-.5l.8-1.3zm-2 4.6s-.3.6-.9 1c-.5.4-1.2.5-1.3.3-.1-.2.1-.6.3-.7l.8-.2a7.3 7.3 0 001.1-.4z"/>
+  <ellipse cx="328.8" cy="207.4" fill="url(#b)" rx="2.9" ry="4.3" transform="rotate(8.7)"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M295.4 247l-1.7 4.2 1.4-.2.7-3.8z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M296.1 245.1c-.6 0-1.1.4-1.2 1 0 .7.4 1.3 1 1.4.6 0 1.1-.4 1.2-1 0-.7-.3-1.3-1-1.4z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M369.7 255.8l-4.2 4 1.7.4 2.9-3.8z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M371.6 254.1a1.5 1.5 0 00-2 .6c-.5.7-.3 1.5.4 2 .7.3 1.6 0 2-.7.4-.6.2-1.5-.4-1.9z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".3" d="M262.8 233l2.2 4.9 1-1.4-2.6-3.7z"/>
+  <path fill="#fcca3e" stroke="#aa8c30" stroke-width=".2" d="M261.9 230.9c-.6.4-.6 1.3-.1 1.9.4.6 1.3.7 1.8.2.6-.5.6-1.3.1-2a1.3 1.3 0 00-1.8-.1z"/>
+  <path fill="#aa8c30" d="M296.6 245.3s.3.1 0 0c-.5 0-1.4.4-1.4 1a1 1 0 001 1c.5 0-.2.2-.2.2l-.7-.2-.2-.4-.2-.5.1-.6.4-.5.5-.2h.3l.4.2z"/>
+  <path fill="#aa8c30" d="M295.6 248.1s-.3 0-.5.3a49.4 49.4 0 01-.7 1.1l1-2.3.4.2-.2.7zm76.4 6.4s.3.4-.1 0c-.4-.3-1.8-.2-2.1.5-.4.8 0 1.4.6 1.7.6.2-.2 0-.2 0l-.7-.5-.1-.6v-.7l.5-.6.7-.3h.7l.3.2.4.3z"/>
+  <path fill="#aa8c30" d="M369.4 257.3s-.3-.2-.8 0l-1.4.9 2.3-2.2.5.6-.6.7zm-107-26.7s.4-.1 0 .1c-.5.3-.8 1.4-.3 2 .6.5 1.3.4 1.7 0 .4-.5 0 .2 0 .2l-.7.4h-.6l-.6-.3-.4-.6v-.8l.2-.5.3-.3.3-.2z"/>
+  <path fill="#aa8c30" d="M264 233.8s-.3.1-.2.6l.3 1.5-1.2-2.7.7-.2.4.8z"/>
+  <ellipse cx="337.6" cy="-128.1" fill="url(#c)" rx="4.6" ry="3.1" transform="rotate(62.9)"/>
+  <path fill="#e92736" d="M262.6 241.2s1 .2 1.5 0 .6-.7.7-.8.3-.6.2-1a3.8 3.8 0 00-1-1.4l-1-.1c-.1-.1 0-.4-.2-.5-.3 0-1.7 1.6-1.5 1.8.3.3.4 0 .5.1v1.1c0 .3.8.8.8.8z"/>
+  <path fill="#e92736" d="M264 238.1c.1.3.7 1 .9 1 .2.2.8.2 1 0 .3 0 1-.7 1-1a1.5 1.5 0 00-.1-.7c-.2-.3-.1-1-.4-1.1-.2 0-.3-.1-.5-.3v-.7c-.3-.3-2.6 1.1-2.4 1.4.2.2.4 0 .5.1v1.3z"/>
+  <path fill="#e92736" d="M269.2 237.6c.2-.4.1-1.5-.1-1.8s-.6-.3-.7-.4c0-.1.3-.2.3-.5s-2.6.1-2.4.4c.2.3.6.1.6.3 0 .2-.4.4-.5.6l.3 1.1c0 .2 0 .4.2.5l.6.2h1.4c.1-.1.2-.1.3-.5zm22 12.8s.3.7.8 1h1l.6-.5c.2-.2.4-1.2.3-1.4 0-.2-.5-.6-.5-.8 0-.2.3-.2.2-.4-.1-.2-2-.2-2 .2 0 .3.3.2.2.3 0 .2-.5.5-.6.7-.2.1 0 1 0 1z"/>
+  <path fill="#e92736" d="M293.8 249.5c0 .2-.2 1 0 1.1 0 .2.3.7.5.8h1.2a1.2 1.2 0 00.4-.6c.1-.3.6-.7.5-.9-.1-.2-.2-.2-.1-.4 0-.2.3-.2.3-.5s-2.1-1-2.2-.7c0 .3.3.2.2.4 0 .2-.7.6-.8.8z"/>
+  <path fill="#e92736" d="M297.3 252.5c.3-.2 1-.9 1-1.1 0-.4-.3-.6-.2-.7l.5-.1c.1-.2-1.6-1.6-1.7-1.3 0 .3.3.4.2.5l-.7.1c-.1.1-.5.6-.5.8 0 .2-.3.2-.2.5l.2.4c.1.2.8.9 1 .9h.4zm66 5.5s0 .8.4 1.2c.3.3.6.3.8.4h.7a3 3 0 001-1c0-.3-.3-.8-.2-1s.3 0 .3-.2c0-.3-1.6-1.1-1.7-.8-.1.2.2.3 0 .4l-.8.2c-.2 0-.5.8-.5.8z"/>
+  <path fill="#e92736" d="M366 258.5l-.8.8c0 .2 0 .7.2.8 0 .2.7.6 1 .5.1 0 .3 0 .5-.2.2-.1.8-.2.8-.4l.1-.4c.1-.1.4 0 .6-.2.2-.2-1.2-1.7-1.4-1.5-.2.2 0 .3 0 .4-.2 0-.9 0-1 .2z"/>
+  <path fill="#e92736" d="M366.4 262.2h1.4l.4-.5c.1 0 .1.2.4.2.2 0 0-2-.3-1.8-.2.1-.1.5-.2.4-.2 0-.3-.3-.5-.3a2.4 2.4 0 00-1 .1s-.2 0-.3.2l-.2.4v1c.1.2 0 .2.3.3z"/>
+  <path fill="#f7e204" d="M264.2 239c.2.4-.1 1.2-.3 1.4-.1.2-1.3-.1-1.3-.3 0-.2-.1-.6 0-.8.2-.2.6-.7.9-.6.3 0 .6.3.7.4zm.3-1.3c-.2.3 0 .6.2.7.1.2 1 .4 1.2.3.2-.2.6-1.5.4-1.7-.2-.2-.6-.2-.7-.2-.2 0-1 .6-1.1.9zm2.7-1.3v.7c.2.1.7.5 1 .5.3 0 .5-1 .5-1.1 0-.2-.1-.3-.3-.4l-1.2.2zm26.1 13.7c0 .4-.7.7-.9.7-.2 0-.7-1-.6-1 .1-.2.3-.5.5-.5s.7 0 .9.2l.2.7zm1.1-.6c-.2.1-.3.4-.3.6 0 .2.3.8.5.9.2 0 1.2-.5 1.3-.7 0-.2-.2-.5-.4-.6l-1-.2zm2.4 1c-.2 0-.4.3-.4.5 0 0 0 .6.3.8.2.2.8-.2.9-.3v-.4c0-.2-.8-.6-.8-.6zm68.6 8.2c-.2.2-.9.2-1 0-.3 0-.3-1-.1-1 .1-.1.4-.3.6-.2.2 0 .6.3.6.6l-.1.6zm1 .1c-.3 0-.5.1-.6.3-.1.1-.2.7 0 .9.1.1 1.2.2 1.3 0v-.5l-.7-.7zm1 2h-.5c-.1 0-.4.4-.4.7 0 .2.7.3.8.3l.3-.2-.1-.8z"/>
+  <ellipse cx="438.6" cy="-93" fill="url(#d)" rx="2.2" ry="4.5" transform="rotate(47.9)"/>
+  <path fill="#a8ac71" d="M285.8 199.3s-3.8.3-6.5-.1-2-7.3-2.1-7.5c0-.2-1.6-1.8-1.4-3.3.3-1.5 5.2-5.5 5.8-5.8.5-.1 1.5.3 1.5.3s1.2-1.2 1.6-1.2c.4 0 .9.7.8 1-.2.3-1.9 1.3-2 2-.2.8 0 1.5-.5 2.3-.5.7-1.4 1.7-1.5 2.4-.1.6-.4 1.1 0 1.4.5.2 2.1 0 3.5-.6 1.4-.7 2-1.5 2.1-1.4.2 0-.8 1.7-2.3 2.4-1.5.6-2.5 1.3-3.3 1.2 0 0-.8 2 1.8 2.2 2.6 0 4-.6 4-.6l-1.5 5.3zm-15 16s2 .8 2 3-2.1 4.1-2 8c0 4 .6 4 5.8 8.3a5.7 5.7 0 011.6 2.5c.3 1.3 1.2 8.9 6.2 8.9s5.8-3.3 5.8-3.3l-2.2-3.1s-1.7.5-2.7.3a3.4 3.4 0 01-2.3-2.1c-.6-1.2-.7-4.1-1.6-5.4-2-3.2-5.8-3.7-5.9-7 0-3.4 2.3-3.7 1.7-7.7-.7-4-5.4-5.8-5.4-5.8l-1.9-.8-.7 4 1.6.2z"/>
+  <path fill="#f1a720" d="M284.7 187.6c1.7-.4.7-4.8.7-4.8l-1.2 1s.8 1 .8 2-.3 1.8-.3 1.8z"/>
+  <path fill="#a8ac71" d="M287.8 231.5l-.9-.7c-.6-.4-3.2-2.6-2.8-8.9.5-7.2 11-11 11.6-13.8.8-3.2 3.1-4.5-5.2-11l-2 2.2 3.5 2.6s.7-.4.8.6c0 1-1 1.7-1.2 2.5-.2.7-5.4 4.3-5.8 4.6l-3 2.4s-1.3 1.3-2.5 4.1c-1.3 2.8-.7 6.4-.7 6.4s0 7.6 8.2 9z"/>
+  <path fill="#78732e" d="M282.7 235.5l.6 2.7-1.7.6h-.7l-.5.2-1.3 1.2h-.3s-.2 0-.3-.8c0-.8-.2-1.5-.2-1.5l1.6.7h.6l.3-.1.7-1.5 1.2-1.5zm-4.8.5l-.8-1-1-.9 1.2-.6h1.2l-.2 1.5-.4 1zm2.7-4.3s.8.3 1 1l.6 1.2-2-.2-1.4-.4 1-1.4.8-.2zm-.7 11.9s-.4-.3-.7-.9l-.4-1.6 1.3-.3 1.5.7h.4l-.3.8-1.5 1.3h-.3zm5-4.1s-1-.4-1.2-1c-.2-.5-.4-.4-.4-.4l-.3 1.5-.5 1.5.2.2 1.1-.3.9-.9.3-.6zm-4.7 4.8l1.4.7c.8.5 1.2.5 1.2.5l.6-.6.7-1.3v-.1l-3 .3-.9.5zm4.4-1.2l2.7-1.6.1-1.4-.5-.4h-1.5l-.5 1.8-.3 1.6zm-1.8 2.5s1.8.8 5-.4c1.4-.5 1.7-1.2 1.7-1.2l-1.3-.5-1.2 1-4.2 1zm-2.5-20.3l-.4-1.4c-.2-.8-.1-1.1-.1-1.1l.9.5 1.3 1-1 .7-.7.3zm2.2 3.7l-.9-1a12.4 12.4 0 01-.6-1.2l1 .2 1.1.6-.5 1.4h-.1z"/>
+  <path fill="#c6c7a6" d="M276.6 187c-.2.7-.4 1.9.5 2 .4.2 2.3 0 4.5-2.4 1-1.2 1-2.4 1-2.4l.5-1.3s-.9-.6-2.2.2c-1.3.8-4.3 4-4.3 4z"/>
+  <circle cx="282.5" cy="183.6" r=".4" fill="#1c242f"/>
+  <path fill="#a8ac71" d="M279.7 184a17.7 17.7 0 00-1.7 1.7s1.4-.4 2.6-1.5c.6-.6 2-.8 2.6-.7.4.1.2-.4 0-.5-.3-.3-1.4-.4-1.6-.3l-1.9 1.3z"/>
+  <path fill="#78732e" d="M284.1 224.5v-2.2l-.9.8-.8 1.1 1.3.5.4-.2zm-4.5-2.6v-2.3c0-1 .5-3.1.5-3.1l.6 1.4 1.5 2.4.5.4-1.3 1-1.4.4-.4-.2zm4.5-.6l.3-1c.1-.6.5-1.4.5-1.4v.1a25 25 0 00-2 1.7l.8.7h.5m-3.7-6s.2-.6 1-1.5l1.3-1.8.6 2.4.4 2v.4l-.7.2c-.2 0-1.6 0-1.8-.3l-.8-1.3zm4.8 2.9l.8-.9 1-1-3.2.6.5 1 .8.3zm-2-6.7s.3 0 1.2-1c.8-.8 1.3-.7 1.3-.7l.3 3.4-1.6-.5-1.2-1.2z"/>
+  <path fill="#78732e" d="M287.3 216.2l2-2-3.3-1 .6 2.3zm1.4-5.2l.2-3.3s-.7.3-1.5 1l-1.2.9.4.6 1 .7h1zm2.8-3.2V205s-.5.8-1 1.2l-.9.8.9.6h1zm1.2 3.5l1.6-1.3a6.5 6.5 0 001.5-1.7l-4.2-.3.2 1.7 1 1.6zm-9.6-13.8l-.2 1.8h3.5l-.9-1.2-1-.6-1-1zm6.6 16.2c.2 0 1.1-.8 1.6-1.2.4-.5 1.2-1 1.2-1l-3.3-.3v2.2l.5.3zm6.3-5.9s.4-1.3.3-2.6c0-1.2-.2-1.8-.2-1.8l-2.5 1.7.4 1.2 1 1 1 .5z"/>
+  <path fill="#78732e" d="M291.8 204.8s.7-1 .8-1.4v-.4h2l1.1.2h.2l-.9 1.1-1.2.7-1.5.2-.5-.4zm4-2l-1.3-2c-.4-.7-.8-1-.8-1l-1 2.7v.3h3z"/>
+  <path fill="#fff" d="M271.6 222.2l-.3.8s1.3-.7 2.3-.7c1 0 2.1 1.3 2.1 1.3l.2-.9s-1.3-1.3-2.2-1.3c-.8-.1-2 .8-2 .8zm.7-5.8l.3.4c0 .1.1-1 1.4-1.5 1.4-.6 2-.1 2-.1s-.2-.8-.8-1c-.6-.1-1.1 0-1.8.5a3.7 3.7 0 00-1.1 1.7zm4.4 4.4s-.6-1.4-1.6-1.6c-1.1-.3-2.5.5-2.5.5l-.2.7s1.5-.8 2.5-.4c1.1.5 1.5 1.7 1.5 1.7l.3-1zm-5-5.1l.4.5s-.2-1.4.5-2.1a4.9 4.9 0 011.1-1l-.6-.3s-.9.5-1.2 1.1a3.2 3.2 0 00-.2 1.8zm-.5-2.3c.3-.8 1.2-1 1.2-1l-.3-.3h-.5s-.5.3-.9 1c-.3.9-.3 2-.3 2l.6.3s-.1-1.4.2-2zm7.8-19.2c.9-.4 1.5-.3 1.5-.3s-1.3 1.3-.7 2.9c-.7 1.3-.9 2.3-.9 2.3h.7l.4-1.8c.8 1.3 2 2 2 2h1s0-1.3.4-2.4h.1a5 5 0 002 1.5v-.4s-1.1-.6-1.7-1.5l-.1-.1a4.2 4.2 0 011.8-1.7l.7.6.2-.2-.5-.7h-.6l-1.8 1.7a9.2 9.2 0 01-.8-1.5l-.4-.2s-1.1.1-2 1.7c-.2-1.2 1.1-2.4 1.1-2.4v-.5l-2.4.6c-1 .3-1.7 1.2-1.7 1.2v.8s1-1.1 1.7-1.6zm1.5 2.2c.6-1 2-1.5 2-1.5s0 .7.7 1.7c-.5.9-.8 2.2-.8 2.2s-1-.6-1.9-2a1.6 1.6 0 01-.2-.3l.2-.1zm-7.6 21.1v.8s.8-.9 2-1c1.2 0 2.3 1 2.3 1s0-1-.2-1.2c-.1 0-1.1-.6-2-.6s-2.1 1-2.1 1zm21.4-11.2l-.5-1 .6-.3a12.5 12.5 0 001.7-1.6l-.4-.6h-1.6l-1.4-.1.5-1.7.6-1.4-.6-.5s.2.5-.8.6c-1 .1-2.8-.8-2.8-.8v.4l2.5.7c.6 0 1-.1 1.2-.3l-.5 1.3-.3 1 .2.2v.8l1.4.1 1.6.1s-.8 1-1.7 1.5a2.3 2.3 0 01-.3 0l-1-1.5-.1.5.7 1.2a5 5 0 01-1.5-.1l-.4.4v2.5l-1.8-.6-.3.3v-.1l-.4.4s-.4 1.4-.3 3.1v.1a4.9 4.9 0 01-2.4-1.3l-.4.3s-.3 1.4 0 3.2c-1.3-.3-2.5-1.5-2.5-1.5l-.5.5a60 60 0 00.7 4.7 4.9 4.9 0 01-.7 0c-1.4 0-2.3-1.3-2.3-1.3l-.4 1s.6 2.7 2 4l.4.2c-1.3 1-2.8 1.2-2.8 1.2v.9a44.7 44.7 0 002.2 1.5 4.8 4.8 0 01-1.6 1l.2.5 1.8-1.3 1.8.5v-.5l-1.5-.3.1-.1c.5-.4 1.4-1.8 1.4-1.8v-1s-.5 0-1.1-.6c1.8-1.2 1.9-1.8 1.9-1.8l.4-.6s-.7-.3-1.1-1.2l2.9-.7.2-.2s-.7-1.2-1-2.6l3 .6.4-.4-.5-2.4c1.8 0 3.2.2 3.2.2l.3-.3s-1-1.9-1-3a4.8 4.8 0 001 0h3l.3-.5s-1.4-1-1.7-1.5zm-10.5 15.5s-.5 1-1.4 2l-.2.2a4.6 4.6 0 01-.5-.2c-1.1-.6-1.4-1.3-1.4-1.3l2.5-1.6 1 .9zm.9-3.2l-2 2a4.1 4.1 0 01-.4-.5c-.8-1.2-2-2.1-1.8-3.8 0 0 .7 1.2 2.2 1a14 14 0 001-.1c.4 1 1 1.4 1 1.4zm2-2.5l-2.7.7a5.3 5.3 0 01-.1-.5c-.5-1.6-.5-4-.5-4s1 .8 2.6 1.2l.7 2.6zm-.5-3c-.2-1.4.1-2.9.1-2.9s.8.8 2.3 1c.1 1.5.3 2.1.3 2.1l-2.7-.1zm5.8-2.2s-1 .4-2.8.1a15.3 15.3 0 010-.5 23 23 0 010-3l2.3.7a10 10 0 00.5 2.7zm0-3.1h-.2V205s1 .3 1.7.2c.2.4 0 .5.5 1.2.4.7 1.1 1.3 1.1 1.3s-2.3.2-3.2 0zm-7.6 18.6l-.1-.5s-1 .7-1.2 1.4a1.6 1.6 0 01-.3-.1l-2-.8.2.4 1.8.8h.2l-.5 1.4.2.3.5-1.7 1.2.1-.2.8-.4 1.5.5.3h2l-.3-.4-.7-.1h-1.1l.3-1.2.3-.8-.3-.7-1 .2a3 3 0 01.9-.9zm-11.3-1.3c1.3 0 2.3.9 2.3.9v-.6s-1-1.4-2.1-1.4c-1.2 0-2.5 1.2-2.5 1.2v1.2s1-1.3 2.3-1.3zm13.3 19.4c-1.3.6-2.7.6-2.7.6l.8-1.5c2.5-.8 3-2.4 3-2.4l-.2-.7s-.6 1.6-2.6 2.4c.4-1.2.7-3.2.7-3.2l-.7-.2s-1 1.3-2 1.6a7.7 7.7 0 00.8-2.7l-.3-.5s-.7.6-1.7.8a1.8 1.8 0 01-.6 0c.6-.8 1.7-3.2 1.7-3.2l-.2-.5s-.8 2.1-1.7 3.2a10.6 10.6 0 01-.3.4c-1-.3-2.2-1-2.2-1l.1.3s.8.6 1.8 1a27.3 27.3 0 01-1.3 1.2v1l3 .4c-1 1.6-2 2.1-2 2.1l.5.7s1.3 0 3.7-.6c-.6 1.2-1.2 1.8-1.2 1.8s2.2.2 3.7-.6 2-1.6 2-1.6l-.4-.4s-.4 1-1.7 1.6zm-6.9-4l1.2-1.5c1.6.3 2-.1 2-.1s.3.8-.6 2.3c-1.1 0-2.6-.8-2.6-.8zm1.4 3l1.3-1.6.3-.3c1.5 0 2.3-1.3 2.3-1.3s.2 1.2-.5 2.7c-1.9.7-3.4.5-3.4.5zm-1.9-9.8c1.5 0 3.3.7 3.3.7l-.2-.7-2.9-.6a3.6 3.6 0 011.6-1.6l-.5-.3s-.6.1-1.4 1.5a4.1 4.1 0 00-.2.4 4 4 0 00-.3 0 5 5 0 00-2.4.7l.2.4s1.1-.5 2.3-.5a25.7 25.7 0 00-.7 2.4l.3.6 1-3zm-3-6.2l-.3-.7s-1.5-.6-2.7 0c-1.1.5-2 1.9-2 1.9l.5.9s.8-1.5 1.9-1.9c1-.3 2.6-.2 2.6-.2zm3 2.4l-1-.6s-1.7.5-2.2 1.1c-.6.6-1.1 2.1-1 2.5.2.5.7.7.7.7s.3-1.5 1.1-2.3c.8-.8 2.4-1.4 2.4-1.4zm-3.9-.5a4.5 4.5 0 012-1l-.7-.5s-1.5.2-2.2.9c-.8.7-1.8 2.1-1.8 2.1l.9.9s1.2-1.8 1.8-2.4zm5.2-44.7v-.1c.8-1 1.6-1 1.9-1h.6a9.3 9.3 0 00-.8 2.5c-.2 1-.7 1.2-1 1.9-.4.7-1.1 1.8-1.2 2.8 0 1 .3 1.6.5 1.7.3.1.8-.4.7-.7 0-.3-.3 0-.4 0-.2 0-.2-.3-.3-.9-.1-.6.7-2.2 1-2.8.3-.5 1-1.1 1-2l.7-2.5c0-.1-.4-.2-1.3-.3-.6 0-1.5.5-1.9 1.2-.4.6-1.7 1.1-1.7 1.1s1.4 0 2.2-1z"/>
+  <path fill="#78732e" d="M285.2 194.5h-2.5l.7 2zm-3-.1l-.5-.4a1.5 1.5 0 00-.3-.3l-.9.5-.5 1.9.3.3 2-2zm-.3 5l-1.8-2.7-1 2.2.5.2 1.2.2h1.1zm7.4 44.7a9 9 0 01-4.8 1.5 6.7 6.7 0 01-3.4-1 4 4 0 01-1.5-1.7c-.6-1.1-.8-2.5-1-4-.3-1.3-.5-2.6-1.1-3.6-.8-1.3-2.4-2.1-3.8-3.3a7.3 7.3 0 01-2.8-5.2 8.1 8.1 0 010-.8c0-1.7.5-3.2 1-4.5s1.2-2.5 1.2-3.5v-.5c-.3-.7-1-1.4-1.5-1.9s-1.2-.8-1.2-.8l-1-.2-.1.3 1 .2v-.1.1l1.3 1c.5.4 1 1 1.1 1.5a1.9 1.9 0 010 .4c0 1-.5 2-1 3.3a11.7 11.7 0 00-1.2 4.7v.8a7.7 7.7 0 003 5.5c1.5 1.1 3 2 3.7 3.2.8 1.2 1 3 1.3 5 .2.8.4 1.7.8 2.5s.9 1.5 1.6 2a7 7 0 003.7 1c2.7 0 4.9-1.6 4.9-1.6l-.2-.3z"/>
+  <path fill="#78732e" d="M287.2 239.2a2.6 2.6 0 01-1.3.4c-.5 0-1.1-.2-1.7-.8a4 4 0 01-1.2-2.3c-.2-.9-.3-2-1-3.3-.5-1.5-2-2.6-3.5-3.7-1.3-1.1-2.6-2.2-2.9-3.4a3.3 3.3 0 010-.7c0-1 .4-2 .8-3.1a10.8 10.8 0 00.9-4.8c-.2-2-1.7-3.5-3.2-4.5a14.1 14.1 0 00-2.8-1.4l-.1.3h.2c.5.3 1.8.9 3 1.8 1.3 1 2.4 2.2 2.6 3.8v.8c0 1.5-.4 2.7-.9 3.9s-.9 2.2-.9 3.2l.1.8c.3 1.3 1.6 2.4 3 3.6 1.5 1 3 2.2 3.5 3.5.6 1.3.7 2.4.9 3.2.2 1 .4 1.7 1.2 2.5.7.7 1.4.9 2 .9a2.8 2.8 0 001.4-.4l-.1-.3z"/>
+  <path fill="#a8ac71" d="M296.4 231.6s1.7.4 1.6 1.8a13.3 13.3 0 01-.8 3.4l-2.4-2.2 1.3-1.2.5-.7-.2-1.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M266.4 214.5s-1.7.6-2.1-.1c-.4-.8-.2-1.4-.2-1.5 0-.2-1-.3-1-1.3.1-1 1.4-.9 1.6-.9.3 0 .4-1.5 1.3-1.4.8 0 1.2 1 1.2 1l-.8 4.2z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M268.3 215s-1.5.8-2 0c-.4-.7 0-1.6-.1-1.8-.2-.1-1-.4-.9-1.3.2-.9 1.1-.6 1.4-.8.3-.1.6-1.4 1.5-1.2.9.3 1 1 1 1l-1 4.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M270.8 215.3s-.5 1-1.5.8c-1-.2-.7-1.7-.9-2-.1-.3-.9-.5-.8-1.4.2-1 1.1-.9 1.5-1 .3-.1.7-1.6 1.4-1.4.7.3 1.3 1.1 1.2 1.5 0 0-1.5.5-1.7 1.5-.2 1 .8 2 .8 2z"/>
+  <path fill="#af7029" d="M293.7 231.2l-2.2-2.6c-.9-1.3-2.3-2.7-2.3-2.7l-2.2-1.1-1.4-2.4-.2-2.8.6-1.6.8-1.2s-4.6 1.7-2.2 10.5c1 3.8 3.5 4.3 3.5 4.3l4.3-.3h1.3z"/>
+  <path fill="#816c2a" d="M291.6 201.7c.4 0 .6.2.8.4l.2.6v.4c-1.6 3.4-4.8 5-7.8 7a13.8 13.8 0 00-3.8 4 12 12 0 00-1.6 6.8c.1 5 2 7.8 4.2 9.3a9.7 9.7 0 005.2 1.5h.4l1.4-.1a35.8 35.8 0 013-.2l1.8.1.9.4a.8.8 0 01.2.5c0 .4-.3.8-.6 1.2l-1 .7.2.3a4 4 0 001-.8c.4-.4.7-.9.7-1.4 0-.2 0-.5-.3-.7-.2-.3-.6-.4-1.1-.5l-1.8-.1c-2 0-4.5.3-4.5.3v.2-.2a6.8 6.8 0 01-.3 0 9.4 9.4 0 01-5-1.5c-2.1-1.4-4-4-4-9v-.4c0-2.7.5-4.7 1.5-6.3 1.4-2.4 3.7-3.8 6-5.3a14 14 0 005.5-5.7v-.5c0-.2 0-.6-.2-.8-.2-.3-.5-.5-1-.5v.3z"/>
+  <path fill="#fff" d="M297.8 232.7s-1 2-1.4 2c-.2 0 1 .3 1.3.8l-.3.5s-1.2-.9-2-1v-.6l1.1-.7a4 4 0 00.9-1.7l.4.7z"/>
+  <path fill="#fcca3d" d="M302 234l-2.7.8-1.3-1s0-1-.5-1.5l-1.6-1c-.6-.2-2.5-.2-2.5-.2l-5-5.3 2 .2 2.8-.4 2.7-.2 1.4.2 1.6.4.8.7.8.8.8 1.3.6 1.6.2 1.7v1.9z"/>
+  <path fill="#af7029" d="M302.2 233.8s-1 .3-2.2.3c-1.3 0-2-.2-2-.2l-.2.9c-.2.9-.5 1.3-.5 1.3v3.2l2.6.5 1.4-.5.7-3.5.2-2z"/>
+  <path fill="#fcca3d" d="M301.5 232.5v1.2l.6.2v-1.2zm-2.5-30l-.3-2.1-.8-1.5-1.1-1.5-1.2-1.3-.6-.5-.3-.5-2.9.2-1.4 1.7s3.8 2.8 5.3 5.8a7 7 0 012.8 1.7l.1-.2.4-1.8z"/>
+  <path fill="#af7029" d="M296.3 205c0 2.2-.5 3.2-.8 3.7l1.8-2 1.2-2.2a7 7 0 00-2.8-1.7c.4.7.6 1.4.6 2.1z"/>
+  <path fill="#816c2a" d="M300.3 237.9l-1.4-1.6c-.6-.6-1.3-1-1.3-1l-.2.4h.1l1.2.8a17.6 17.6 0 011.3 1.6l.3-.2z"/>
+  <path fill="#6f5b24" d="M302 235.5s-.3 1-1.3 1.8c-1 1-2.2 1.5-2.2 1.5l2.8 1 1.9-1.7-1.2-2.6z"/>
+  <path fill="#404118" d="M302.4 237.8l-.2.3-.5.5-.4.5.6-3 .6 1v.4z"/>
+  <path fill="none" stroke="#78732e" stroke-width=".2" d="M285.8 199.3s-3.8.3-6.5-.1-2-7.3-2.1-7.5c0-.2-1.6-1.8-1.4-3.3.3-1.5 5.2-5.5 5.8-5.8.5-.1 1.5.3 1.5.3s1.2-1.2 1.6-1.2c.4 0 .9.7.8 1-.2.3-1.9 1.3-2 2-.2.8 0 1.5-.5 2.3-.5.7-1.4 1.7-1.5 2.4-.1.6-.4 1.1 0 1.4.5.2 2.1 0 3.5-.6 1.4-.7 2-1.5 2.1-1.4.2 0-.8 1.7-2.3 2.4-1.5.6-2.5 1.3-3.3 1.2 0 0-.8 2 1.8 2.2 2.6 0 4-.6 4-.6l-1.5 5.3z"/>
+  <path fill="#ab6d29" stroke="#4d2a15" stroke-width=".4" d="M318.7 170.6s-7-1.3-7 4.5c.1 1.9.5 2.5 2 3 1.5.3 4.4.5 7 2.7 2.5 2.3 2.7 4 2.7 5.3 0 1.4-.7 2.6-.7 2.6l1.6 7.7 1.6 5.7 4.8-2.7 2.8-8.5-3.6-15.2-11.2-5.1z"/>
+  <path fill="#4d2a15" d="M325.6 200s2.5-1 3-3c.3-.5-2.4-2.9-2.4-2.9-.1 0 1.3.7 2 1.3.6.6 1.1.9 1.3.8.2-.1 1.3-2.7.9-3.3-.4-.6-1.1-2-2.1-2.6-1-.7-2.4-.6-2.4-.6s1.9-.6 2.8 0c1 .5 1 1 1.1.9.1-.3-.2-2.9-.6-3.7-.4-1-.8-1.3-2-1.6-1.1-.2-2.3-.1-2.3-.1s1.6-.9 2.8-.6c1.3.3 1.3 1 1.4.8 0-.1-.6-2.4-1-3a6.7 6.7 0 00-2.1-1.8l-1.8-.2h-.6s1-.6 2.1-.5c1.2.1 1.3.5 1.4.4.2 0-.1-.2-.8-.7s-4.2-2-4.2-2h-3.3s0-.8 1-1c.9-.1 1.1.1 1-.1 0-.3-2.6-.8-2.6-.8H316l-3 .3s.2-.5.7-.9c.3-.3.9-.5 1.3-.6 1-.3-.6-1.1-.6-1.1l.9-1.3 3.9.3 8.2 4.8 3.9 3.3 2.4 6.2-.7 10.8-5.5 4.5-2.4.3.5-2.3z"/>
+  <path fill="#d2a567" d="M318.4 173.3s-.2-.7-.2-1.7.2-.9.2-.9-2.7-.3-4.6 1.2c-1.9 1.5-.8 4.1-.8 4.1s.8-.8 1.9-1.2c1-.4 3-.3 3-.3.2-.2-.4-1-1.1-1.1-.8-.2-2.1-.2-2.1-.2s.8-.5 2.2-.4c1.4.1 1.6.5 1.6.5z"/>
+  <path fill="#8f4620" d="M326.7 200.9l-1.8.6 1 7.5 7.2 12.1 3.7-.6 1.3-2.3 1 .5c.4.4 1.8 2.8 3 3.3 1.1.4 1.7.2 2.7 1 1 1 4.9 6.6 5 6.8.3.2-.1-2.4-.1-2.4l-1.2-3.4-1.4-2.4-.3-.6h2l1.2.8 2 1.5.9 1.2.5 1.2.2 1 .5 1.6 1 2.3 1.3 2.1.4-.9-.6-2.5-2-6-1-2 1.9 1.2c.4.1 1.8 2.2 1.8 2.2l.9 2.2.6 2 .4 1.7.7 1.9 1-.7-.1-1.3-1-4.2-.4-4.5s.6 0 1.2.7a9 9 0 011.2 2.3l.5 4.1.7 3.8 1.2 3.8 1.2 2.4.9 1.3v-2l-1.6-16 .2-.6s.2-.1.8.7c.5.7 1 1.9 1 1.9l.5 2.5.2 1.7.3 3.3.5 3.5 1.6 3.8.9 2 .5-2.4-.8-17.1.4-.5s.9.7 1.2 1.3l.8 1 .6 3.8.4 10.7.4 2.8 3.2-28.2 2-.4.2-.6-1.5-1-3.2-5-2.1-4.9-3.8-7-6.6-8-5.2-4.3a20 20 0 00-1.9-1.3l.4-1 1-1.7-.1-.1h-.9l-2.2.4-2.2-.7-4.4-3-4.6-2.3-2.8-1-6.6-1.6-6.6-1h-3l-2.6.5s-1.4.6-1.8 1.5c-.5.8-.5 1.4-.4 2.6.2 1.3 1 1.9 2.8 2.7 1.8.7 6.2 3.6 6.2 3.6l2 2.1.8 1 .2.8 1.4 11.1-2.8 6-2 1z"/>
+  <path fill="#ab6d29" d="M333.8 218.2s1.2 2 2.9.5c1.7-1.6-.8-6-.7-6.3 0-.3.7-.3.7-.3l1.3 2.2s.7 1.3.4 3.2c-.2 2-2.1 3.7-2.1 3.7l-2.2-.5-.3-2.5z"/>
+  <path fill="#4d2a15" d="M375.3 244.2l-1.6-4.5-.4-3.5c0-.6-.3-7.9-.5-9.3 0-1.4 0-3-.2-3.1l-1.6-2.2-.7-.7.5-.3s.6.6.7.3c.2-.4 0-2-.6-4.5-.7-2.5-3.9-8.3-3.9-8.3l.4.2.9 1 1.8 1.5 4.1 1.5 2.2.3 1.4 2.9s1 4.9 1 7.4c0 2.4-.2 4.5-1.2 7-1 2.4-1.2 10.3-1.3 11.5-.1 1.3-.6 2.5-.6 2.5l-.5.3z"/>
+  <path fill="#8f4620" d="M375.3 231.2s.8-1 1.2-2.4c.4-1.4.5-12.4-.8-13.7a10 10 0 00-4-2.3c-.2 0 1 3.5 1 3.5l.8 1.4.6 1.8c.1 1 .9 3.1 1 6l.2 5.7z"/>
+  <path fill="#4d2a15" d="M369.3 238s.5-5.1.3-9c-.3-3.7-.6-4.2-1-4.9a32.3 32.3 0 01-2.5-6.3c-.9-3.2-1.5-5.6-2-6.2-.6-.6-1.7-2-2-1.6-.3.3-.3 1.1-.3 1.1l-1.5-.4-.4-1 .5-1.6v-.7l-.3-1.1 2 1.6 4.2 2.8 2 8.6 2 5.3.2 9-.2 8-1-3.5zm2.4-24.7s1 1 1.7 1.4c.7.4 1.8 1.1 1.6 1.2a8 8 0 01-2-.8l-1.2-.8v-1z"/>
+  <path fill="#4d2a15" d="M363.7 236s.8-1.8.7-4.1a49 49 0 00-1.6-8.6c-.4-.7-2-1.7-3.5-4.8s-1.3-3.8-2.3-5c-1-1-2-2.4-2-2.4l.3-3.3 3.6 1.8 1.6.8 1.8 8.7 1.6 2.5.7 3.5.9 8 .4 6.6-.2.5-2-4.2zm-4.2-3.7s.1-2.5-.5-4.8c-.7-2.3-1.1-4-1.9-4.8-.7-.7-2.5-2.6-4.1-5-1.6-2.5-3.9-5-3.9-5v-3.3l2 1.5a57.1 57.1 0 012.4 1.2l1 3.7 1.2 2.7 1.8 2.4 1.2 1.1.7 4 .4 2.3 1 3.2-.4 1.7-.9-.9zm-3 0l-1-.9s.6-.6.3-2c-.3-1.2-.6-2.4-1.2-3.7-.6-1.2-.7-2-1-2.3a121 121 0 00-4.5-4c-1-1-2.7-2.6-3.7-3.3-1-.6-1.8-.8-1.8-.8l-.5-4s1.3 1.8 2.1 2a54.7 54.7 0 002.1.8l2.8 5 1 1.3 2.6 2 1 2.2.9 2.5 1 3.4.1 2-.2-.1zm-5.5-1s-1.7-2-2-3.2c-.2-1.2.2-1.2-.3-2.6-.5-1.4-2.3-3.5-3.7-4.6-1.4-1.2-3.4-2.8-3.3-3.8.1-.9.4-1 .4-1l.8.8 4.5 4.7 1.4 2.5 1 3.1.7 1.5.7 1.8-.2.7zm16-23.3s3.1 3.8 4 .3c.3-1.6-1.2-4.6-1.2-4.6s-2.8-5-3.8-6.2l-5.7-7.3-3.5-1.6 1.2 2s2.6 2.6 5.9 8.4c3.3 5.7 2.7 8.9 2.7 8.9h.5zm-17.8-23s6.1 5.2 10 10.8c4 5.7 5.5 9.4 4.7 10.2-1 .7-3.4-.4-4.4-2-1-1.6-1.8-4.4-5.5-8.6-3.7-4.2-5.5-4.8-5.5-4.8l-2.7-4.3 3.4-1.3zm-3.2 12.5s3.6 3 6 5.4a37.4 37.4 0 013.4 4.2l1.4 1.4s-.9-1.5-.4-2c.5-.6 1.1-.3 1.1-.3l-11.5-12v3.3zm-.7.3s1.2 2.3 3 4.1a464.6 464.6 0 004.1 4l.8 2.9s-5.2-4-5.2-3 1.2 3 1.2 3l-1.6-1-2.2-3.1-1.3-2.8-1.5-3.8 2.7-.3z"/>
+  <path fill="#4d2a15" d="M329.5 210.2s2.7 2.4 4.2 0c1.5-2.3.3-5 .3-5s3.9 5.6 5 .3c.2-1-2.4-4.6-2.4-4.6l1-.9 1.9 3.3s1.8-.8 1.8-3-1.9-5.3-1.9-5.3l1.8 2s3.6 0 3.7-2c0-2.2-3-4.5-3-4.5s2.4.1 2.4-1.3c0-1.4-3.4-2.4-3.4-3.3 0-.9 1-2.4 2.5-1.5 1.5.8 3.5 1.4 4.4-.2.8-1.6-.1-2-.1-2l-2.1-.4-3.4-1.8-2.7-1-2.8-.4 1 2 .8 5.8v2.6l.5 5.8-1.4 4.7-.7.9-.5.6-1.2 2.6-1.6 1.8-2.2 2.7-2 2.1z"/>
+  <path fill="#ab6d29" d="M348.8 220.9s-.7-1.7-2.2-2.9a7.8 7.8 0 00-3.8-1.2l4 4.2 2-.1zm5.6 1s-1.3-2.6-2.8-4.2c-1.5-1.6-2.5-3.6-3-3.6h-.6l.4 3.3 2.7 2.7s2.6 2 3.3 1.8zm4.6-.2s-.6-3-2.2-6c-1.5-2.8-3.1-4-3.1-4l.4 3 1.2 3 2 3 1.7 1zm3.8-1.7s1-6.2 0-8c-.9-1.6-2.7-2-2.7-2l-.6 1 .6 4.3 1.5 3.4 1.2 1.3zm3.7-10.3s.9.4 2 2.5a40 40 0 012.6 8.6c0 .3-.5.2-.7.2-.2-.1-3.9-6-3.9-6l-.6-5.4h.6z"/>
+  <path fill="#d2a567" d="M340.4 216.8s2-.4 2-1c0-.8-2.4-2.2-2.2-3.3 0-.5 2 .1 2.1-.3.1-.4-2-3.6-1.3-4.4.6-.8 2.4 3.5 2.4 3.5s1 2 .7 3.2c-1.2 3.6-3.7 2.3-3.7 2.3zm4.6-4.4c.1-.3 3.1.4 3.1.2.2-.7-2.7-3-2.7-3s-.6-1.2-.4-1.4c.2-.2 2 .2 2 0 .2-.3-2-3.2-2-3.7s.6 0 .6 0 1.7 1.7 2.6 3.2c1 1.4 1.8 2.6 1.5 4.9-.4 2.5-5 .6-4.7-.2zm13.6-4.6s-.5-2-.2-2.3l1.1-.5s-1.6-1-2.4-1c-.7 0-.8-.2-1 0-.2.4 1.3 2.4 1.3 2.4l1.2 1.4z"/>
+  <path fill="#d2a567" d="M349.4 209.4s4.7 1.2 4.9.8c.2-.3-3.7-4-3.7-4s-.3-.6-.2-.8c0-.2 1.7-.3 2.2.1s0 1.2.1 1.5c.2.3 1.7 2.5 2 2.1.2-.3-.4-3-.3-3.3.2-.2 1.8 1.6 2.3 1.9.4.3 3 2.3 3.3 1.4.3-1 .4-1.1.3-1.7 0-.6.9 2.6-.3 3-1.2.4-2.6-.4-2.6-.4l-1.1-.8-.6-.7s.7 2.5-.2 2.7c-.8.3-1.7.2-1.7.2l-2-.2-2.4-1.8zm10.7-3.2s5 3 5.4 2.5c.5-.5-1.2-7.5-1-8.2.3-.6 4 7.9 2.2 9-1.4 1-2 .3-2 .3l-2.5-1.3-2-2.3zm13.8 12.6l1 .5.7.2-1.4.2-.3-1zm-4.8-16.4l.7.3.7.3s-.4.3-.6.2h-.4l-.4-.8zm-1.4-2.5s.5.3 1.1-.2c.7-.4.7-.8.6-1 0-.2-1-.2-1.4-.5-.3-.2-.3-.6-.3-.6h-1.1l-.4.1 1.5 2.2zm4.3 14.4s1.5 1 2 1c.4 0 1.1.5 1 .6 0 .1-1.2.2-1.8-.1-.6-.3-.7-.1-.7-.1l-.5-1.4zm-8.1-22.5h.6c.3 0 .5-.2.6 0 .2.2 0 1.2-.3 1.5l-1 .5a48.4 48.4 0 01-1.6-2.2l1.7.2zm-7.1-6.4h1.5c.5 0 1 .3 1.5.6.4.3.9 3.3.6 3.8-.2.6-3.6-2-3.7-2.1 0-.3-1.5-2.5-1.5-2.5l1.6.2zm-3.2-1.4s2.5.2 2.2-1.3a3.2 3.2 0 00-1.3-2.3l-2.9 2.1 2 1.5zm-6.5-2.8s.7.4 1.4 0c.7-.2 2.6-2.7 4-3 1.4-.3 1.7-.3 2 0 .2.4 0 1.8-.2 2.2-.3.4-4.4 2-4.4 2l-1.5-.1a9.6 9.6 0 01-1.3-.5v-.6zm-.7-4.5c-.7-1.4-1.7-2-2.2-1.9-.4.1 1.4 1.5 1.7 3.5.3 2 .2 3.3.2 3.4l.8.1.2-.7.1-.5v-.5l-.1-1-.2-.9-.2-.6-.3-.9zm-5.8-2a15.4 15.4 0 00-5.5-3.7c-.2 0 4 2.5 5 4 .9 1.7.9 3.9 1.3 4.2.4.3.8-.2.9-.2 0 0 .3-.5.2-.7l-.2-1-.7-1-.4-.8-.6-.8zm-5.5-2.3c-2.4-2-6.6-3-10-3-3.5-.2-5.3.2-4.8 2s2 2.8 5 2.8c2.9 0 3.6-.3 5.2.2a9.7 9.7 0 013.6 2c.5.5-1.1-1.5-2.6-2.6-1.5-1.2-2.5-1.7-2.5-1.7s-.3-.7 1.7-.4c2 .3 4.7 1.6 5.5 3.3.7 1.7.6 2.6.6 3 0 .3.7-.2.7-.2l.3-.9s0-.6-.3-1.4c-.4-.7-.5-1-1.4-2-.9-1.1-1-1-1-1zm-9.6 28.5c1.5 0 4.8-2.8 5.2-6.7.5-4-1.9-11.9-2.5-12.7-.5-.9 1-.4 1.7.4a25 25 0 012.5 10.6c0 4.2-.8 5.3-3 7.5-2.2 2-4 1.8-4 1.8l.1-.9zm5.1 11.6s.7 1 1.6.6c1.5-.5 3.8-1.7 3.8-3.8 0-1.4-1.8-2.7-1.9-3.2v-1l1.6.4.5 2.2s.6.7 1.3.4c.6-.2 2.5-1.6 2.2-3-.3-1.2-2-2.9-2.2-3.5-.2-.7 0-1.2 0-1.2l1.6.2.4 2s.4.6 1.3.4c.8-.1 2.4-1.7 2-2.5l-1.5-2.6v-.9l.5.4s.6.2 1.8-.1c1.1-.4 2.3-1.2 2.3-2s-1-1.6-1-2v-.6h.8l1 1.2.1 1.4-.3 1.2-1.4 1.6-1.4.6h-.4l.8 1.4-.2 2-1.3 1.2-1.7 1-.1 1.9-1 2-2 1.2h-.7l-.2 1.2-1.4 2-2.3 1.5-1.7.3-1-1.4.1-.5z"/>
+  <path fill="#d2a567" d="M343.4 191.4s4 1.1 3.8-1.4c0-1.3-3.8-4.5-4-5-.3-.6-.2-1.3-.2-1.3l1.9 1.8s2.5.6 3.2-.9c.7-1.4.1-2.3 0-2.3l.6-.1 1.1.2-.1 2.2-1.3 5.5s.3 2.2-1.4 2.3c-1.7.2-3.6-1-3.6-1zm3.7 29.5s0-1.1-.8-2c-.9-.7-2.5-1.4-2.8-1.6a63 63 0 002.8 3.5h.8zm5.6.2s-2-2.4-2.3-3.3c-.5-.8-1.5-2.6-2.3-2.7-.8 0 .8 3 .8 3l3.2 2.9h.6zm5.4 0l-2.1-4.2c-.4-.9-1.3-3.4-2.3-4.1-1-.7.1 1.1.1 1.1l1.1 3.3 1.9 2.9 1.3 1zm3.9-2.4s-.1-2.7-.5-4.6c-.3-1.8-1.7-3.4-1.8-3.3v3.3l2.3 4.6zm8.1 2l-2-4.7c-.5-1.6-1.8-4.1-2-4.2l.4 3 1.7 4.7 2 1.2zm7-8.5s-1.2-1.2-3.9-2.3c-2.7-1-5.4-1.2-5.4-1.2l.3.4 1.3 1 2.8 1.5 3.7.9 1.3-.3z"/>
+  <path fill="#202020" d="M348.2 213.8s0 2.4 1.3 3.8c1.2 1.5 4 4 4.6 4.6.6.5 1 3.4 1.9 5.8.8 2.4 1 4.4 1.4 5.1.4.7 1.1 1.8.5 1.7-.5-.1-1-.8-1.4-1.7-.3-.9-.2-.9-.2-2 0-1.3-1.8-7.5-2.7-8.1-.9-.7-4.8-4-6.4-6.3-1.5-2.3-1.2-2.8-1.2-2.8h2.2z"/>
+  <path fill="#202020" d="M354.6 229.3c-.8-1.7-1-3.3-1.2-4.3a16 16 0 00-4.4-4.2c-.6-.3-1.9 0-2.4-.3l-3.7-4s-.5.5-.3.6c.1.1 3.4 3.7 4.6 4.8 1.2 1.2 1.9 3.7 2.7 5.7.9 2 .5 1.6.6 2.5.1 1 .7 1.5 1.3 1.5.6 0 .8-.2.6-.4a10.3 10.3 0 01-2.2-3.5c-.7-1.7-1.5-4.9-2.5-6l-.3-.3 1.3-.2c.8 0 4.1 3 4.4 4 .3.8 0 1.2 1.4 4.2s2 3.7 2 3.7h.2s-1.2-2-2-3.8zm-5.2-19.9s2.5 1.5 3.2 1.7a9.8 9.8 0 001.2.3s.4 4.4 2.1 6.8c1.8 2.5 3.2 3.4 3.2 3.4s0 4.8 1.4 8c1.3 3.3 1.5 7.3 1.2 8-.3.6-1.4-2-2-4.3l-2-6.2a13 13 0 00-2.5-4.4c-.8-.7-.2-.6.3-.2.4.4 1.7 2 2.5 4.5s1.1 5 1.5 5c.5 0 .8-.3.8-.9 0-.4-.6-1.8-1-4.1a17 17 0 00-1.2-4.7c-.4-.6-1-.7-2.4-3.4a20.3 20.3 0 01-2.5-5.3c-.2-1.2 0-1-.2-1.3-.2-.1-.4 0-1.6-.6-1.1-.6-2-2.3-2-2.3z"/>
+  <path fill="#202020" d="M355.7 208.5s1.4 1.2 2.3 1.5c.8.4 2 .4 2 .4s-.3 4.2 1.3 6.9 3.3 4.2 3.3 4.2.3 1 .8 6.8l.7 8.3c.1 2.3.2 10.6-.1 10.3-1.3-1-.2-5.4-.9-7.3-.6-1.8-1.6-2.1-2.8-7.4-1.2-5.2-.4-6.4-1.3-8.3-.9-2-2-2.2-2-2.2s1.6.4 2.3 2c.6 1.6.7 6 1.3 8.2 1.2 4.9 2.9 7.4 2.9 7.4s-.4-6.2-.8-9.7c-.5-3.5-.5-6.4-1.1-7.7-.7-1.4-2.1-2.4-3-4.2-.8-1.8-1.1-5.3-1.5-6.2-.4-.9-.6-.6-1.2-.8-2-.8-2.2-2.2-2.2-2.2z"/>
+  <path fill="#202020" d="M360.1 206.2s1.3 1.5 3.1 2.6c1.8 1 2.8.7 3 1 .3.2-.3 3.8 1.6 7.2 1.9 3.4 2.6 3.5 2.6 4l.6 13.9c.3 3.4.5 14.8-.9 14.8s-.1-8.5-.8-10.4c-.7-2-.7-1.4-1.3-3-.7-1.6-.7-7.8-1.8-11.5-.8-2.8-1.6-3.2-1.6-3.2s1.4.7 2 3c.6 2.2.8 10 1.5 11.1.8 1.3 1.8 2.8 2 4a157 157 0 00-.4-15.6c-.3-1-3.5-6.6-3.7-9.7-.3-3.2-.4-3.5-.7-3.7-.2-.3-1.1 0-2.6-1.5-1.5-1.4-2.6-3-2.6-3z"/>
+  <path fill="#202020" d="M367.3 208c0-.3 1 1.7 3.7 2.8 2.9 1.2 5.6 1 6 1.3.3.3 2 4.5 2.1 10.2.1 5.6-1 5.1-1.8 10-.9 4.9-1 14.8-1.5 16.3-.2.5-.5.8-.8 1.7-.3 1 .2 2.8-.7 2.8-.8 0-1-1.4-1-2.1 0-.8 1-3.5 1-6.2s-.6-3-1-6.2c-.4-3.3-.4-13.5-.8-14.5-.3-1-2.1-3.1-2.1-3.1s1.9 1.2 2.4 2.6c.4 1.3.5 12.7 1 15 .5 2.4.3-.5.5-1.8s.9-7 .8-10c-.1-3-1.4-9.4-2.4-10.5 0 0 .5.6 1.1 2 0 .1.4.5.8.7l1 .5s-.6 0-1-.3c-.4-.1-.6-.4-.6-.4a23.9 23.9 0 011.3 8c.1 5.2-.7 16.4.1 16.5.8.2.7-6 1.5-11.2.8-5 2-5.8 1.6-9.9-.3-4.1-1.4-8.6-2.3-9.2-.9-.5-3.4-.3-5.6-1.8-2.2-1.4-3.4-2.9-3.3-3.2zm-35.8 5.7s.8.4 1.7 0c1-.5 3.5-2.5 3.5-3.3v-1.6s0 .3.7.4c.8.1 2.8-1.4 3-2.4a8 8 0 00-.1-3.1c-.2-.4.6.3 1 0 .4-.4 2.4-1.7 2.4-3 0-1.4-1.1-2.6-1.1-2.6s1 .2 1.6 0c.5-.1 2.5-1.3 2.4-2.4 0-1.2-.7-3-2.3-3.2 0 0 1.2.3 2.3-.1 1-.4 1.5-1 1.5-2.3 0-1.2-2.3-4-2.6-4.2-.4-.2 2.4.8 3-.3.8-1.1.9-1.9.7-2.5-.2-.7-.8-.8-.8-.8s1.2.3 2.8-.5 3-2 3.8-1.9c.8 0-2.3 1.7-2.5 2.6 0 .4.9 1 2.3 2 0 .1 0 .2.2.3.7.3 3 .4 3.3.5.2.2-2.4.1-2.2.3a34.1 34.1 0 015.7 5.4c.1 0 .5.4 1 .5l1.3.3h-1.6a65.3 65.3 0 013.3 4.7c0 .1.4.6.9.8.5.2 1 .1 1.1.2.1.2-1.4 0-1.3.2a82 82 0 013.3 6s-3-5.3-6.7-9.5c-3.8-4.2-4.7-4.7-4.8-4.4-.2.4 2.7 4.1 4.3 6.7 1.6 2.6 3 5.9 3 5.9s-3.7-7.8-9-12.6c-5.2-4.8-5.8-5.5-6.3-5.4-.6.2-1 3.8-.7 4.5.3.7 4.2 3.6 7.4 7.5 3.3 3.8 7.5 10.4 7.5 10.4s-3-4.7-8-10-6.9-6.6-7.3-6.5c-.4 0-.4 1-1 1.8-.6.7-1.8.6-1.8 1s4.2 4.3 5 4.7c.9.5 1.4.3 2 .6l1.4 1-1.6-.5c-.6-.2-1.3-.3-1.3 0s3.5 4.3 4 4.6c.6.3 1 .1 1.7.4.8.3 2 1.1 2 1.1s-1.3-.7-2.1-.8c-.9-.2-1.2 0-1.2.2s2.6 3.6 2.5 3.6c-.1 0-4-4.6-7.3-7.5-3.3-3-4.8-3.6-5-3.5-.2.1 0 1-.9 1.3-.8.3-1.5.4-1.5.7 0 .3 3 3 5 5.4a149.4 149.4 0 014 4.5l-4.5-4.3c-2.3-2.2-3.5-3-3.8-3-.2.2-.2 1.3 0 1.6.2.3 4.6 5.4 4.4 5.5-.1.2-5-6-5.4-6-.3 0-.5.7-.8 1-.4.4-1.8.4-1.8 1 0 .4 7 7.3 6.9 7.5 0 0-5.8-5-6-4.7-.2.3 2.4 5 2.2 5.2-.1 0-3.4-5-3.7-5-.3 0-.2.6-1 1.3-1 .8-2 .4-2 .8 0 .3 4.8 5.7 4.7 5.8-.2.1-5-5.1-5-4.8-.1 0-.4.3-.2.7.3 1.3 1.4 3.6 1.3 3.8 0 0-1.6-3.2-2-3-.4 0-.4.7-1.2 1.1-.7.5-1.3.4-1.3.7 0 .3.8 1 1.2 1.7.4.7.7 2.4.7 2.4s-.5-1.4-1.1-2.3c-.7-.9-1.3-1.5-1.9-1.5s-.8.5-.8.5l-.5-1.2z"/>
+  <path fill="#202020" d="M377 212s1.5 0 1.7-.4c.2-.3-.6 0-2-1.6s-5-12.1-9-17.4c-6.6-8.7-12.7-12.7-12.7-12.7s7.3 4.2 13 12.4c5.6 8.4 7 14.9 8.6 16.6 1.6 1.7 3.2 2 3 2.5 0 .5-.3.8-.9 1l-2 .1.2-.4zm-48-2.2l.3.1c.3 0 2.3-1.9 2.2-2.5 0 0-1-.3-1.6-1-.7-.8-.9-1.9-.9-1.9s.7 1.3 1.2 1.6c.6.4 1.4.6 1.8.3.3-.2 3.2-2.4 3-3.2 0 0-.9 0-1.8-.6-.8-.6-1-2-1-2s.6 1.1 1.5 1.5c.8.4 1.7.3 2 0 .2-.3 2-3 1.8-3.7 0 0-1 0-1.8-.5-.9-.6-1.3-2.2-1.3-2.2s.6 1.3 1.7 1.5c1.1.3 2-.4 2.2-1.2.2-.8.8-3.7-.2-4.5 0 0-1.4.5-2.4 0-1-.6-1.4-1.9-1.4-1.9s.9 1.2 2 1.4c1.2.1 1.7-.5 1.9-1a5.9 5.9 0 00-.1-3c-.4-1-1.1-.8-1.3-2.2 0 0-.3.5-1.8.5s-2.3-1.6-2.3-1.6 1.2 1 2.4 1a1.9 1.9 0 001.6-1.9c0-.7-.6-1.4-1-2.1-.2-.8-.3-1.7-.5-1.6-.2 0-.5.8-2 .6-1.5-.3-1.8-1.3-1.8-1.3s1 .7 2 .7c.8 0 1.3-.5 1.3-1 0-.6-.3-1.7-2.2-3.3a58.1 58.1 0 00-3.5-2.7 21.8 21.8 0 006.6 5.3s1.7.6 2 0c.1-.6.1-1.4-.5-2.4-.5-1-2-2.6-2-2.6s1.6 1.3 2.3 2.7c.8 1.3.4 2.2.5 2.6 0 .3 3.3 1.6 4 1.1.8-.4.5-1.4-.2-2.3l-1-1.8s.7.8 1.2 1.8c.6 1 1 1.7.8 2.1-.2.5-.6.7-.6.9l2.3 1.3c1 .6 2.3 1 2.5.8.2-.4.3-1.1.2-2.2-.1-1-.7-2.7-.7-2.7s.7 1.6.8 2.7-.1 2 .1 2.4c.3.4 1.1.5 1.1.5s-.6.4-2 0c-1.5-.4-7.7-3.6-8-3.3-.3.4 2.9 2.3 4.3 3.7 1.5 1.3 2.2 2.8 2.2 2.8s-1.1-1-2.2-1.6c-1.1-.6-4.4-2.3-4.7-2-.2.2 1.3.5 1.4.7.1.3-1 1.3-1 1.8 0 .4 4.7 3.7 4.5 4-.1.4-1.2 1.3-1.4 1.2-.1 0-2.5-1.8-2.5-1.6s1.4 1.5 1.4 1.7c0 .3-1 .8-.8 1.4.2.6 2.6 2.6 2.6 3.3 0 .7-1.4 1.3-1.1 1.7l1.5 2s-1.4-.9-1.8-1.4c-.4-.4-1.3-1.5-1.5-1.3-.1.1-1 2-1 2.5.2.4 1.3 1 1.5 2.3.2 1.1-.2 2.4-.3 2.4 0 0-1.6-2-2-2.1-.2 0-.6.1-.9.6s-1.2 2.1-1 2.4c0 .3 1.6.7 1.6 1.9a3.4 3.4 0 01-1 2.3l-2.1-2.4c-.2 0-2.2 2.3-2.3 2.6 0 .2 1.4 1.3 1.2 1.7-.3.4-1.3-.2-1.8.1l-1.7.7c-.2 0-.5-.6-.5-.6z"/>
+  <path fill="#202020" d="M355 180l.5-1c.3-.3 1.5-1.7 1-2-.4-.2-2 .3-3 .2-1 0-1.7.2-4.6-2.3 0 0-9.3-6.4-23.6-7.3-4.6-.2-6.6 1.4-6.8 2.2 0 .2 1.2-1.8 5.7-1.7 2 0 16.5 1.1 24 7 .4.3 2.9 2.7 5.2 2.4 2.3-.2 2.8-.5 2.7-.2 0 .4-.7 1.2-.9 1.6a9.2 9.2 0 00-.3 1.1zm-25 2v-.2c-.2-.4-1.1-1.7-2.7-3.1a37.4 37.4 0 00-8-4.3c-.3-.1 6 2.9 7.7 4.5l3 3z"/>
+  <path fill="#d2a567" d="M330 192.2s-.4-.6-1.7-1.4a9.9 9.9 0 00-2.5-1.1l3 .7a4.8 4.8 0 011.1 1.8zm-.8-5.3s-.4-.6-2.1-1.2-2.2-.5-2.2-.5 1.6-.7 2.8 0a2.7 2.7 0 011.5 1.6zm-1-4.5s-.4-.8-2-1.3c-1.5-.6-2.6-.7-2.6-.7s1.6-.4 3.2.2c1.5.6 1.4 1.8 1.4 1.8zm-2-2.8s-.4-.6-3.3-1.3c-3-.7-4-.7-4-.7s4.1-.4 5.2.1c1.1.5 2.2 1.9 2.2 1.9zm-5.3-3s-1.8-.6-3.5-.7-4.4.1-4.4.1 5-.8 6.3-.5c1.4.3 1.6 1 1.6 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M304.5 238.4s.9 1.6 2.6 1.6c1.8.1 3.1 2.6 3.1 2.6l-1.9 1.9-4.6.2-1.5-2.4 2.3-3.9zm0-1.6c.2-.3-1.3-3.3-2.4-3.8-1-.5.4 1 .2 1.6-.3.6-.4 1.4-.3 1.5 0 0 .9 1.4.4 2-.4.5 2.2-1.3 2.2-1.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M303.8 241.4s.8.4 1.4.2c.7-.2 1.3-.9 1.3-.9m-3.6-.5s2.6-1.9 2.4-2.9c-.2-1-.7-1-1-.9a7 7 0 00-2.1 1.7c-.1.3.7 2.1.7 2.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M301 241.5s.6 1.3 1.4 1.3c.8 0 2-.7 2-1.2.1-.5-.8-1.5-1.3-1.7-.6-.3-1.9.4-1.9.4l-.1 1.2z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M303.4 239.8c0 .4-1.7 1.2-2.3 1.2-.5 0-1.6-1.3-1.2-1.5l1.5-.4c.4-.2.5-.8.7-.8.3 0 1 .1 1.1.5.2.5.4.6.2 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M301.8 240.9s-2.6 3.4-3.7 3.3c-1-.2.5-5 .5-5l1.2.6c.9.2 1.7.6 2 1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M297.2 238.4s3.3.6 3.4 1.1c.2.6-1.5 1.3-2.5 1.3-.9 0-.9-2.4-.9-2.4z"/>
+  <path fill="#202220" d="M289 243.4s.5 1.6 1.9 1.7c1.4 0 2.8-1.5 2.8-1.5l-3.4-1.3-1.3 1.1z"/>
+  <path fill="#4b4139" d="M289 243.4l.4.9c.3.4.7.8 1.5.9h.1c1.4 0 2.7-1.6 2.7-1.6l-3.4-1.4-1.4 1.2h.1l1.3-1 3.3 1.3v-.1l-.2.2c-.4.4-1.4 1.2-2.4 1.2h-.1a1.8 1.8 0 01-1.4-.8 2.8 2.8 0 01-.3-.6v-.1l-.1-.1z"/>
+  <path fill="#202220" d="M290 243s.5 1.2 2.4 1.2 3.3-1.5 3.3-1.5l-3-2.3-2.7 2.6z"/>
+  <path fill="#4b4139" d="M290 243s.5 1.2 2.4 1.3c2 0 3.4-1.5 3.4-1.5l-3-2.5-3 2.7h.2l2.8-2.5 2.9 2.3v-.1a5 5 0 01-3.2 1.4 3 3 0 01-2-.6 2.2 2.2 0 01-.3-.4 1.1 1.1 0 01-.1-.1h-.1z"/>
+  <path fill="#4b4139" d="M290.2 243.3s.9.6 1.8.7c1 0 2.2-.3 2.2-.3l-1.1.4-.8.1-.8-.1-.6-.3-.6-.4v-.2z"/>
+  <path fill="#202220" d="M292.4 241.6s.8 2 2.6 1.8c1.7-.2 1.7-1.2 1.7-1.2l-2-2.8-2.3 2.2z"/>
+  <path fill="#4b4139" d="M292.4 241.6l.5 1c.4.4 1 1 1.8 1l.3-.1c.8-.1 1.3-.4 1.5-.7.3-.3.3-.6.3-.6l-2-3-2.5 2.4h.1l2.4-2.1 1.9 2.7c0 .2-.3 1-1.8 1.1h-.2a2.2 2.2 0 01-1.7-.8 4 4 0 01-.4-.6v-.2a1.5 1.5 0 01-.1-.1h-.1z"/>
+  <path fill="#4b4139" d="M292.6 242s1 1.3 2 1.3a3 3 0 001.5-.4v.1l-.5.3-.8.1h-.8l-.7-.5-.6-.9zm-3.2 2s.8.9 1.5.9a4.7 4.7 0 001.9-.6h.1l-.2.1-.8.4-.9.3-.7-.1-.6-.4-.3-.4v-.2z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M297 238.3c.8-.2 2.4 2 2.4 3.2s-.5 2.7-1.3 2.7-2.6-1.7-3-2.5c-.4-.9-.8-1.4-.5-1.9.3-.4 2.4-1.5 2.4-1.5zm-8 .2s-1.4-1-1.9-.5-.3 2.3 0 2.6c.4.4 2-.8 2-.8l-.2-1.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M288.8 239.7s-1.8.2-1.8 1 .9 1.6 1 1.8c.2.1 1.8-.7 1.8-.7l-1-2.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M289.5 241.1s-1.8.6-1.8 1.2.8 1.7 1.3 1.7 1-1 1.2-1.3c.3-.2-.7-1.6-.7-1.6zm.8-5.1s-.3-.5-1-.2c-.8.3-1.6 1-1.5 2.3.1 1.1.6 2 .6 2l2.7-1-.8-3.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M290.5 238s-2.2.8-2.3 1.7c-.1.9.5 1.7 1 2 .7 0 2.6-1.8 2.6-1.8l-1.3-1.8z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M292.5 241.7s-2.2 1.5-2.5 1.5c-.3 0-1.2-1.2-1-2 .2-.8 1.7-1.3 2.3-1.6.6-.2 1.2 2.1 1.2 2.1zm2-8.2s-.7-.6-2-.5c-1.4.1-2.4 2-2.6 2.8-.2.9 0 2.6.5 2.8.5.3 3.3-2 3.3-2l.8-3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M291.8 240.3c-1-.1-1.8-1.5-1.7-2.3.2-.8 2-2.2 3-2 1 .1.8 2.5.8 2.5s-1.2 1.9-2.1 1.8z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M294.7 240s-.4 1.2-1.4 1.7c-1 .4-1.5 0-2-.7-.6-.8.2-1.2.6-1.6.5-.4 1.7-.7 1.7-.7l1.1 1.4z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M293.2 237.2s-1 .8-.4 1.8 1 1.4 1.8 1.5c.8.1 1.3-.2 1.9-.9.6-.7 1.5-1 1.4-2-.1-.9-.4-1.6-1-1.8-.5-.3-2.2 0-3.7 1.4z"/>
+  <path fill="#202220" d="M296.2 233s-1-.5-1.9 0c-.8.5-1.4 1.5-1.5 2.4l.2 2.3s1.2-.4 2-1c.7-.6 1-.8.8-1.1 0-.2-.4-.4-.4-1.2 0-1.4.8-1.5.8-1.5z"/>
+  <path fill="#4b4139" d="M296.2 233s-1.2-.3-1.9.1a3.2 3.2 0 00-1.3 1.9c-.3.8-.1 1-.1 1v-1.4c.4-.8 1-1.5 1.6-1.7.8-.3 1.7 0 1.7 0z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M328.8 257l1.6-.8 2-1.2.4 2.2-1.8 1.4h-1.5l-.9-.7.2-1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M326.4 257.2h1c1.1 0 1.2-.3 1.4-.3.2.1.5 1.3.5 1.3l-.4.7-1.5.9-1.3-.8-.1-1.8h.4zm12.1-.8s-.3-.5-.9-1l-2.2-1.9v5l2.3-.1 1.1-1.5-.3-.5z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M326.4 257.2s-.4-.5-1.3-.4c-1 0-2 .9-2.1 1.5-.1.7 0 2.6.5 3 .5.4 1.2.5 2.2.3 1-.3 6.4-3.6 6.4-3.6l-1.4.3c-.7.2-1.4-.1-1.4-.1s-.7.8-1.6 1c-.8 0-1-.5-1.2-.9l-.1-1.1z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M330 258.9l-1.2.5-1.3.6.4 1.6 2.3.5 1.4-1.1v-1.6l-1.7-.5zm10.4-1.2l-.8-.8c-.4-.4-1-.5-1-.5l-1.3 1.5v1l1.2.7.9.2 1.1-.8-.1-1.3z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M332.6 257s-1 .4-1.5.8l-1.2 1c0 .2 1.1 1.4 1.1 1.4l1.2.1 2.5-1.7-.2-1.6h-1.9zm9.5 2l-.5-.7c-.4-.4-1-.6-1.2-.6-.3 0-1.3 1.5-1.3 1.5v.4l.8 1 1.6.5 1.1-1.2-.5-.9z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-linecap="round" stroke-linejoin="round" stroke-width=".3" d="M338 260.8l1.2.2s0 .3.3.5c.3.3.3 0 .3 0s.2 1.2 1.4 2c0 0 1.4.6 2 .2.8-.4.7 0 .7 0l2-2.4s0-.5-.5-.5c0 0 .4-1.6-1-2-1.2-.2-2.2.2-2.2.2s-1 1.8-1.6 1.6a2.4 2.4 0 01-.8-.5l-.7-.9s-.4.1-.9-.2c-.5-.3-.9-1.1-.9-1.1s-.7-.1-1-.4l-.5-.8-1.9 1.4s0 .5-1.1 1.3-1.7.8-1.7.8-.4 1.7-1.6 1.4c-1.2-.3-2-1.6-2-1.6s-.9-.2-1.4.6c-.6.7-.9 1-.9 1.7 0 .8.5 1.8 1 2.2.3.3 1.5 1.3 3 .6 1.4-.8.9-2 .9-2l.8-.5c.9-.6 1.8-1.5 2.5-1.7"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-width=".3" d="M335.8 250.8v3.2s.4 2.9-.2 3.7c-.6 1-2.9.7-3.2 0-.3-.8-.2-3.2-.2-3.2l3.6-3.7z"/>
+  <path fill="#f8c83c" stroke="#977c2e" stroke-linecap="round" stroke-linejoin="round" stroke-width=".3" d="M333.3 260.5s-.5.8 1 1c.4 0 .7-.2.9-.4.4-.4.3-.8.3-.8s-.2 1.2 1.2 1.2c1.4.1 1.3-1.3 1.3-1.3"/>
+  <path fill="#202220" d="M321.2 263.1s-.8-1.4.1-1.9c1-.5 1.5 0 2.1 0 .6 0 .4-1.4.3-1.7a3.7 3.7 0 00-.7-1.2c-.2-.2-3.5.2-3.4 2.3 0 2.1 1.6 2.5 1.6 2.5zm5 5.2s-1-1.5-.4-2.4c.5-.9 1-.3 1.2-.4.3 0 .4-.6 0-1.6-.5-1-1.1-1.4-1.4-1.5-.4 0-2.3 1.4-2 3.2a3.5 3.5 0 002.6 2.7zm18.2-1.8s3.5 1.5 3.7-2c.2-2-1.5-3.3-2-3.3-.4 0-.7.3-1.3 1-.7.8-1.1 1.3-.9 1.6.3.3 1.3-.3 1.8.8.7 2-1.3 1.9-1.3 1.9z"/>
+  <path fill="#4b4139" d="M326.2 268.3s-2.7-.6-2.7-3.3c0-1.8 2-2.6 2-2.6s-1.8 1-1.8 2.6c-.1 2.7 2.5 3.3 2.5 3.3zm-5-5.2s-1.6-.3-1.7-2.6c-.2-2.3 3.5-2.2 3.5-2.2s-3.5.2-3.4 2.4c.2 2.2 1.6 2.4 1.6 2.4zm23.2 3.4s.7.3 1.5.3 1.8-.3 2-1.6c.4-1.3.3-2-.6-3.1-.6-.9-1.2-.8-1.2-.8s.6 0 1 .8c.6.8 1.3 1.6.8 3.1s-2 1.5-2.5 1.5a5.5 5.5 0 01-1-.2z"/>
+  <path fill="#904720" d="M302.6 192.4l-.6-.2.4-1 1.9-.7 1.8-.1 2-.1.8.6 1 2.3-3.6 2.2-.6.2-.2-1-.6-1.4z"/>
+  <path fill="#202020" d="M337 245.5l-.3-5.5-14.8 4.6 5.8 5.5z"/>
+  <path fill="#d2a567" d="M309.4 235.9l-1.2-1-1.4-.8h-1.1l-.2.3.2.5 1.3 1.6 2.3 1.2.8.7.5.2-1.1-2.7zm-.3 2.3l.8.2.9 1 .5 1 .7 1.3.2.8-1.6-.3-4.8-1.5.4-1.2.8-.7.7-.3 1-.2z"/>
+  <path fill="#d2a567" d="M312.2 242.2h.8l.6-.5-.3-1.8.3-5.8-3.9-4.6-.8 2.6 1.1 4.7.9 2.8z"/>
+  <path fill="#ab6d29" d="M309.4 231.7s-.2.4.1 2c.3 1.5.9 4.9 2.2 7.2l-1.3-1.9s-2-4.6-1.7-8.2c.3-3.5.7.8.7.8zm2.9 2.9s-.9 1-1 1.9v2.2s0-1 .8-1.3c.9-.3.7 2.3.8 2.6l.5-4.7-1.1-.7zm.4 9.6l-4.4-1c-2.3-1-3.5-1.8-3.4-2.3 0-.6 4 .1 4.6.2l2.4 1h1l1.9-.8.2 2-2.3 1zm-7.3-.8s1 .8.5 1a4.4 4.4 0 01-2.3.3l4.2 1 .9-.7-3.3-1.6z"/>
+  <path fill="#d2a567" d="M304.2 242.2c.2-.2.3.7 1.8.8 1.5.2 2.2-.2 2.2-.2l.7.4.8.2-.7 1.1-2.8-.8-1.5-.8-.5-.7z"/>
+  <path fill="#ab6d29" d="M314 240.3l.8 1 .5-2.4v-2.5l-1.6-1z"/>
+  <path fill="#4d2a15" d="M309.7 236.1l-1.3-2.1-1.7-3.1 1-1.8 1.3 1.8s-.4 1.3-.1 2.5c.2 1.2.8 2.7.8 2.7z"/>
+  <path fill="#d2a567" d="M300.8 244s.6-.9 1.9-1a7.6 7.6 0 012.4.2l2.6 1.4.6.9-5-.7-2.5-.8z"/>
+  <path fill="#8f4620" d="M314 235l.2 4c0 1 .7 2 .6 2.3-.2.4-.4.6-1 .9-.6.2-2 0-2 0s1.3-.2 1.4-.5c0-.2-.4-1.4-.5-2.4 0-1 .1-2.2-.3-2.2-.3 0-.7.4-.8.6 0 0 .4-3.8.8-4.2.4-.4 1.6 1.6 1.6 1.6z"/>
+  <path fill="#ab6d29" d="M304.7 243s-.5-.4-.5-.8c0-.3.6 1.6 3.4 1.5 2.8 0 2.6-.2 2.6-.2h1.3s-.3 1.3-.5 1.4a61 61 0 00-2.2 1.4l-.7.4v-.2l-.3-2.1-2.4-1-.7-.4z"/>
+  <path fill="#8f4620" d="M309.7 236.1s-3.2-3.3-4.3-5.5c-1-2.2-.4-5.2-.4-5.2l3 4s-.4.7-.3 2c.2 1.2 2 4.7 2 4.7z"/>
+  <path fill="#ab6d29" d="M307.6 248.3c0-.3-.2-1 .4-1.8 2-2.4 6.8-4 6.8-4v2.8l-6.2 3h-1z"/>
+  <path fill="#8f4620" d="M308 246c.3-.1 1.4-1 1.4-1.3 0-.4-.7-.4-2.1-.7-1.5-.3-2.6-1-2.6-1s1.7 1.4 2.4 1.7c.7.2.6.5.5.7l.4.6zm8.3.7s-.9-1.3-1.2-2.1c-.3-.8-.3-2.1-.3-2.2l-1 .7-2 .7s2 0 2 .6c0 .7-3 1-3 1 0 .1 2.4-.4 2.3.1-.2.6-1.2.7-2.5 1.2l-2.3 1-.7.5s.6.4 1.5.3c.9 0 2.9-.5 2.9-.5l3.8-1.5.5.2z"/>
+  <path fill="#ab6d29" d="M316.3 246.7s-1-.3-1.8-4.8-.6-5.7-.6-5.7l1.8 1.3 1.7 3-1.1 6.2z"/>
+  <path fill="#8f4620" d="M316.9 239.3s-.9 2.5-.9 4c0 1.4-.1 2.4.3 3.4s1.8 2.3 1.8 2.3l.7-.6.3-2 .1-3.4-2.3-3.7z"/>
+  <path fill="#202020" d="M319.4 242.7s.4 6.3-1.2 6.5c-.7 0-1.9-2.4-1.9-2.5 0 0 1.4 2.3 2 2.1 1-.4.6-6.6.6-6.6l.5.5zm-3.1 4s-.3 0-.7-.8c-.4-.7 0 .6-3.4 1.8-3.4 1.2-4.6.5-4.6.5s1.1 1 4.5 0 3.1-1.3 3.6-1.4h.6z"/>
+  <path fill="#ab6d29" d="M310 238.7s.6.5 1.2 1.7a363.3 363.3 0 001 2h.2s-.4-1.3-1-2.2l-2.2-3.1.8 1.6z"/>
+  <path fill="#8f4620" d="M308 246.5s.3-1.1 0-1.4c-.3-.2-.7 0-3-.2a34 34 0 01-4.2-.9s1.6 1 3 1.4l3.5.8.5.1.2.2z"/>
+  <path fill="#202020" d="M308 246.5l-.2-.5c-.3-.3-.7.1-3.5-.7-2.8-.7-3.5-1.3-3.5-1.3s1 1 3.4 1.5l3.8 1z"/>
+  <path fill="#ab6d29" d="M309.3 238.2s-2.1.1-2.8.7c-.7.5-1.6 2-1.6 2l1.3.1s-.1-1.2.5-1.9c.7-.6 1.7-.7 2.6-.9z"/>
+  <path fill="#8f4620" d="M305.3 234.2s.8 1.2 1.7 1.5c.9.4 1.8.8 2.2 1.2.4.4.9 1.8.9 1.8s-3-1.3-3.7-2a9.6 9.6 0 01-1.1-2.5z"/>
+  <path fill="#8f4620" d="M308.2 235s-.3-.5-1.1-.9-1.4-.3-1.7-.1-.1.2-.1.2l1 1.7.7-.2s-1.6-1-1.3-1.3c.8-.7 2.5.5 2.5.5z"/>
+  <path fill="#202020" d="M316.3 231.1l17-8.7 8 11.1-14.7 4-7.7.6-3.8-2.7z"/>
+  <path fill="#4d2a15" d="M339 235.9l21 18.2-2.3 1.6-5-1.4-10.2-10.1-3.8-3.8z"/>
+  <path fill="#4d2a15" d="M366 250.5l-12-9.1-15.3-11.5.4 5.5 17.4 16 5.7 2.7 3-.8 1.4-1.6-.6-1.2z"/>
+  <path fill="#803f1d" d="M339 237.6s6 6.9 10.6 10.4 9 7.3 10 6.7c.8-.5.5-1 .5-1l-21.3-17.5.1 1.4z"/>
+  <path fill="#4d2a15" d="M353.8 255.1l-2.1 1.7-2.5-1-13-13.2.7-2.5 1.8.3z"/>
+  <path fill="#202020" d="M366 250.5s-1.6 3.8-5 2.9c-3.4-.9-22-18.5-22-18.5v1.8s18.8 17.3 22.5 18c3.6.7 6.6-2.5 6.2-2.8a43.7 43.7 0 00-1.7-1.4z"/>
+  <path fill="#803f1d" d="M336.9 240.4s6 7.7 9.1 10.5c3.2 2.9 6 5 7.2 4.8 1.3-.2-.7-1.7-.7-1.7l-9.1-9-4.7-4.6s-1.8-.7-1.8 0z"/>
+  <path fill="#202020" d="M338.4 240.4s15.2 15.5 16.4 15.9c2.5.7 6.2-2 6.2-2l-1.3-.7-.2.5s-.7 1.6-4 .9c-3.2-.7-16.6-15.1-16.6-15.1l-.5.5z"/>
+  <path fill="#4d2a15" d="M344 255.3l-5.5-6.4-1.2-2.1-.3-2.7 11 11.1-1.5 1-1.4-.4z"/>
+  <path fill="#202020" d="M354.1 255.5s-1.3 2-3.2 1.6a5.4 5.4 0 01-2.8-1.7L337.5 245l-.3-1.6s11.7 12.3 13.7 12.8c1.6.4 2.7-1.4 2.7-1.4l.5.7z"/>
+  <path fill="#202020" d="M348.2 255.1s-.5 1.6-2 1.4c-1.6-.3-2-.9-2-.9l-6.6-7.7-.1-2s6.8 9.3 8.3 9.8c1.6.5 2-1 2-1l.4.4z"/>
+  <path fill="#b07229" d="M341.3 234.9s6.3 5.4 6.8 5.6c.5.3 2.7.4 2.8.7.2.3-1.4 0-1.5.3-.1.4 3.2 3 3.7 3.1.5 0 3.2 0 3.1.4 0 .3-1.8 0-1.9.4 0 .4 2.9 2.7 3.4 2.8.5 0 3.9 0 3.9.4 0 .3-2.7 0-2.7.5.1.6 4.6 3.4 4.4 3.8-.2.4-5.4-3.5-5.5-3.3-.2.2-.4 1.4-.7 1.6-.3.2 0-1.6-.2-2.4-.3-.8-3.4-3.1-3.7-2.9-.3.3 0 1.7-.4 1.7s.1-1.7-.2-2.3a16 16 0 00-3.6-3c-.4 0-.1 1.3-.4 1.5-.3.2-.2-1.5-.6-2-.4-.5-7-6.5-6.7-7z"/>
+  <path fill="#4d2a15" d="M330.5 252.3s0 2.4-1 2.8c-1.1.3-3.1-4.4-3.1-4.4l-.5-4.4 3.1 3 1.5 3zm8.4-1.2V250c0-.6-.3-1.5-.3-1.5l-.2-2.4-.6-1.7-.4-1h-.7l-1.7 1.2-.5 1.6.8 3 .8 2.7 1.3.4 1.5-1z"/>
+  <path fill="#4d2a15" d="M336.8 255.3c.3-.1-.4-3.4-.4-3.4l-2-4.8-.5-1.7-1.5-.6-1 1.2.2 1.9s1.5 3.2 2.2 4.3c.8 1.1 2.3 3.3 3 3.1z"/>
+  <path fill="#202020" d="M335 245a6 6 0 011.4 2.6s1.3 3.6 1.1 4c-.2.3-1 .3-1 .3s1.8 1.8 2.3 1.6c.5-.2.3-2 .1-2.4-.1-.4-.7 0-1-.5-.1-.4-.8-2.7-.8-4.2v-2.7c.2-.3 1.5 3 1.5 4.7l.6.7-.6-3.2-.7-2.3c0-.2.3-.8.3-1.5v-1s.6.5.9.5c.3 0 .7-.4.8-2 .2-1.5-.1-6-.1-6l-6.8 9 2 2.5z"/>
+  <path fill="#202020" d="M335 244.3s-.3 2.4.6 4.8l1.3 3c.2.3.2 2.9-.1 3.2 0 0-1.8-4.4-2.4-6.6-.5-2.1-.7-3-1-3.2l-.8-.2 2.4-1z"/>
+  <path fill="#4d2a15" d="M334.4 257c.2 0 0-1 0-1l-.2-2.3-2.4-4.9-2.6-2.3-1.4-2-.2 4s2 4 3.1 5c1.3 1.2 3.3 3.6 3.7 3.5z"/>
+  <path fill="#202020" d="M324.7 246s.4 1.1.4 1.8v1.4l1.8 3.5c.9 1.5 1.7 3.1 2.4 2.8.7-.4 1-1.5 1-1.7.1-.1-.8 1.3-1.2 1.1a40 40 0 01-2.3-6.6l-1-.8a18.4 18.4 0 01-1.1-1.4zm7 5.5l-1.7-3.1c-.5-1-1.2-1.7-1.4-1.7-.2 0-.5-2-.5-2s.7 1.3 1.6 1.7c1 .5 1.5.8 2 .7l.2 2-.2 2.4z"/>
+  <path fill="#5c3a1d" d="M327.4 248.3s.5 1.4 1.4 2.7c.8 1.3 2.3 2.9 2.3 2.9s-1.6-1.6-2.5-2.8a14 14 0 01-1.4-2.8h.2z"/>
+  <path fill="#202020" d="M332 246.7s.5-1.2.8-1.3l1.2-.3s-.7-.1-1.2-.8l-1.3-1.3.4 2 .1 1.7zm-.4.4s2 4 2.4 5.5c.5 1.3.4 3.4.4 3.4s-.2-1.5-.6-2.7l-2.4-5c-.1-.3.2-1.2.2-1.2z"/>
+  <path fill="#4d2a15" d="M334.2 244.4l.5-6-.5-2.2-2.7-6s-.1.8-.8.8a6.2 6.2 0 01-3.1-1.8 9.2 9.2 0 00-.2 4.8l5.3 9.9 1.5.5z"/>
+  <path fill="#8b441f" d="M323.8 248.3s.8 1 1.3 1c.4-.2.3-2.1-.3-3.2-.6-1-7-9.6-8-10.1s7 12.3 7 12.3z"/>
+  <path fill="#8b441f" stroke="#5c3a1d" stroke-width=".1" d="M328.1 244.8c.2.4.6 3.1-.5 3.4-1.5.3-8.5-9.4-9.6-10.7 0 0-4.4-2.8-4.5-3.5-.1-.7 4.7 1 4.7 1l9.5 9 .5.8z"/>
+  <path fill="#202020" d="M323.8 248.3s-.8-1.3-.9-2.3c0-1-.4-1.5-.4-1.9 0-.3-5.2-7.7-5.7-8.2-.6-.5-2.3-1.4-2.3-1.4a15.5 15.5 0 00.3 2.4s1.6 3 4 5.7a458.4 458.4 0 005 5.8z"/>
+  <path fill="#4d2a15" d="M331.6 247c.7-.3.4-2.7.1-3.5a458.4 458.4 0 00-4.4-9.4l-1.3.4-2.3-1.8-1.4-1.5s.5 2.1.4 3.1v1.6l3.3 5.9 5.6 5.3zm4.7-5.2l1-1.3-.5-4.4-2.8-9.4s-.7.1-1.4-.3c-.6-.4-1.4-1.3-1.4-1.3l.7 5.7 2.9 8 .2 2.3 1.3.7z"/>
+  <path fill="#202020" d="M327.7 244s-2.8-3-3.7-4.5l-1.7-3s-.8.3-1.8 0c-1-.5-2.2-1.8-2.2-1.8s-.8 1.5 3.2 5.6c4.6 4.6 6.2 3.7 6.2 3.7z"/>
+  <path fill="#8b441f" d="M334.4 245c1.2-.4 1.1-5.4 0-8.7-1-3.3-2.9-6.2-2.9-6.2s2.3 5.4 2.8 7.5c.4 2.2 0 3.7-.4 3.6-.4-.1-.4-1.3-1.3-3.4-1-2-1.6-2.6-1.6-2.6s3.3 8.8 2.3 8.6c-.9-.2-5.3-9.9-5.5-10.2-.2-.2-.4.4-.4.4s4 12.2 7 11z"/>
+  <path fill="#4d2a15" d="M337 221.3l2 4.2.6 4.4.2 3.7s0 7.4-.8 7.6c-1 .1-1.4-.7-1.4-.9a2729 2729 0 01-1.7-8.3l-1.7-8.5.6-.6.2-1.2 1.3-.1.7-.3z"/>
+  <path fill="#8b441f" d="M331.6 247c.8 0 0-2 0-2s-.6 1-1.2.3c-.5-.7-1.3-3.1-1.3-3.1l-.5-1.5s-.6 1.6-1.3 1.6-4.6-6.4-4.6-6.4l-.4.6s5.4 11.1 9.3 10.6z"/>
+  <path fill="#202020" d="M329.1 242.2s.7-1.6.4-3c-.3-1.5-2.2-5.1-2.2-5.1s-.6.1-1.4-.2a9.6 9.6 0 01-2.2-1.2 38.3 38.3 0 005.4 9.5zm3.1-2.3s-.5-3.4-2-6.6c-1.6-3.1-2.6-4.1-2.6-4.1v3.5s1.5.5 2.6 2.4c1 2 2 4.8 2 4.8zm4.3-5.8s-.3-3.7-.8-5.8l-1.2-5s0-.2.3-.4h.6c.8.3 1.1 2.2 1.1 2.2l-.1-3.1-.3-.5h-1.4s.3 1-.1 1.3c-.3.3-.6-.2-.7-.3l-.2.4.4 2-.1 1.7s.5 2.2 1.2 3.5c.6 1.4 1.3 4 1.3 4zm3.3-.5s.6-5.3-.6-8.7c-1.2-3.4-2.2-4.2-2.2-4.2l-.6.6s1.8 3 2.4 5.6l1 6.7zm-5.4 2.7s-.6-4.1-1.3-6.8a82.8 82.8 0 01-1-3.6l-1.1-1s.7 2.7.6 3.6l-.1 1.4s.5 1.4 1.3 2.6a25.5 25.5 0 011.6 3.8z"/>
+  <path fill="#904720" d="M337.2 242.9c1 0 .1-6-.3-7.5-.4-1.6-3-8.8-3-8.8s3 10.3 2.8 10.8c-.3.8-1.5-3.1-1.7-3-.2 0 2.2 6.9 1.3 7-.8 0-1.3-1.5-1.3-1.5l.1 1.5s.6 1.4 2.1 1.5z"/>
+  <path fill="#904720" d="M338.5 239.9c.7 0-.2-5.7-.7-8.2l-2-7.5s1.5 3.5 2.3 7.5c.8 4 1.4 9 .6 9.2-.8 0-1.2-.8-1.2-.8v-.9s.3.7 1 .7z"/>
+  <path fill="#312317" d="M328.8 246.5c0 .4 0 2.4-1 2.2-1-.1-2.9-1.9-3.3-3 0 0 2.2 2.5 3 2.4.8 0 .8-2.5.6-3.2 0-.6.6 1.6.6 1.6z"/>
+  <path fill="#d2a567" d="M334.1 219.5s1.4.9 2.4.3a4 4 0 001.8-3c0-.8 0-1.5-.7-2.4-.7-.9 1 .7 1 2.3 0 1.6 0 4.3-2.5 5-2.5.5-1.4-.2-1.4-.2l-.6-2z"/>
+  <path fill="#8f4620" d="M332.1 214.7s1.6 2.6 2.2 5c.7 2.3.5 3.2.2 3.3-.4 0-.6-.3-.7-.9 0-.6-1.7-7.4-1.7-7.4z"/>
+  <path fill="#1e2121" d="M304.1 218l10.6 15.3 13.2-15-8.3-8.6z"/>
+  <path fill="#4d2a15" d="M317.5 208.5l-.6 2.4 1.3 4.1 2.2 2.3 2.5 1.7.6-2 .6-2.2.7-.2 1.6.6 1-1.5 1.8-3.1-.4-1.2-.4-.9-2.7-4.6-.9 1.7-.8.5-1.6-.8-1.8 2.4-2.3-1z"/>
+  <path fill="#5c3818" d="M323 219s.4-.3.6-1.6c.2-1.2.2-4.9-.1-6.4-.3-1.5-1.3-4.4-1.5-4.2-.2.3 1.5 3.3 1.3 7-.3 3.6-.2 4.6-1 5-.7.3.6.2.6.2z"/>
+  <path fill="#5c3818" d="M323.6 212.8s1.7 2.5 2.5 1.6c.9-.9.5-4 0-5.3l-1.2-3 .5-.6.9 3.4c.3 1.4 1.3 5.2.1 6-1.1.6-2.8-1.5-2.8-1.5v-.6z"/>
+  <path fill="#8f4620" d="M317.9 214.6s.6-1 1.4-1c.8 0 1 .3 1 .3l.6 2 1.2 2.2 1 1-.5.6-.9.2-2.5-1.4-.7-1-.6-3z"/>
+  <path fill="#d2a567" d="M322 236.3c-.8.5-2.7-.5-3.7-1.4l-6.8-6.7-.8-3.2 2.2.6 3.9-1.7.7-1.3 4.6-2.4 2.6-1.4 5.5-.1 1.4-2.7s1.8 3.2 2.1 4.5c.4 1.4.3 5.4-.2 5.7-.5.3-2.3-1.2-2.6-1.3-.2-.1 1.4 5.7 0 6-1.3.2-3.6-2.2-3.6-2.2s1 5.2-.2 5.2a10 10 0 01-5-2.6s1.3 4.3 0 5z"/>
+  <path fill="#8f4620" d="M321 229.6l1.1 1.7c.3.4 0 2.9-.2 3.4-.3.9-1.6-1.2-2.3-3l-2.2-3.8c0-.4 3.5 1.7 3.5 1.7zm10.8-12.9s2 8.1 1 8.4c-1 .3-3.6-2.6-4-3l-4-6.4-.8-.8.2-.4 1.7.6 6 1.6z"/>
+  <path fill="#8f4620" d="M317.9 232.3c-.4.3-1.3-1-1.7-1.4l-3-3.3a11.5 11.5 0 01-2.2-2.5c0-.3-.8-1.1-.8-1.1l.7-1h.9s5.4 4.2 5.7 5c.4.6.6 4.1.4 4.3zm8 0c-.2.3-3.7-2.3-5.2-4.4-1.5-2.2-3-4-3.5-5l-.6-1.9 1 .2s8.8 10.8 8.4 11.2zm1.3-3.7c-.2.3-1.7-.9-2.7-2.1-1-1.3-.4-2.9-.4-2.9s3.3 4.8 3.1 5zm2-.5c-.5.3-2.5-2.2-4.2-5-1.3-2-1.6-2.3-1.8-2.5-.5-.3-1.4-.4-1.4-.4l-.2-.3 1-.2.6-.8 1-1.3 4.3 8.5s1 1.9.7 2z"/>
+  <path fill="#ab6d29" d="M318.3 234.9c0 .3 0 .6-1.2.5a21 21 0 01-9.9-7.8l-3-5 1.1-1.4 9.6 11 3.4 2.7z"/>
+  <path fill="#8f4620" d="M318.3 234.9c0 .5-.5.6-1.1.5-.6-.2-3-1-6.9-5.3a33.3 33.3 0 01-5.3-7.4l-.2-1.8 1.2-.5 6.5 10 5.8 4.5z"/>
+  <path fill="#4d2a15" d="M324.6 230.6s-2-1.5-3.2-3a24 24 0 01-3.8-5.7c.1-.7 1.2-.7 1.2-.7v-1.8l.2-.6 1.9.8 2.3 2.9.9 1.1s1.5 3.7 1.2 4c-.3.3-2.4-2-2.7-1.7-.3.3 2.4 4.4 2 4.7zm-3.7-1s.7 1 .4 1.7c-.3.7-.5 1-1.5-.4a16 16 0 00-2.3-3c0 .1.1 2.3-.3 2.3-.5 0-2-1.9-3-3.3l-2.5-3.9v-2l-.1-2.5.3.9.4.7 3.6 4.2 1-.7 2.1 4 2 2zm-13.5-6.1s2.8 4.8 5.3 7.5a17.4 17.4 0 005.6 3.9l-8.4-9.9-2.5-1.5zm21.2 2.8a12 12 0 01-3-3.4c-1-1.6-1.9-4-1.8-5 0-1 .4-3.4.4-3.4s2.8 3 3.4 4.3c.5 1.4 1.7 3.3 1.4 3.5-.2.2-2.1-1.3-2.4-1-.2.4 2.3 4.8 2 5zm3.2-3c-.3.1-1.8-1.6-2.1-2.6a14.8 14.8 0 01-.6-3.2l-1.2-3v-3.3l1.4-.2 1.9 2.7s.7 1.5.7 3.7c0 2.3.3 5.6 0 5.8zm-22.5 8a41.8 41.8 0 01-4-6l-1-2.9.5.4s.8 3.2 4.7 7.1c4 4 4.9 4.2 4.9 4.2s.7 2.2.4 3c0 0-2.9-2.6-5.5-5.7z"/>
+  <path fill="#202020" d="M313.6 235.9s-3.4-3-6-6.4a46.6 46.6 0 01-4.4-6.6l1.2-1a46.3 46.3 0 009.2 14zm4.7-1l-6-6.1c-2-2.2-3-4.4-3-4.4l1.6.6s.7 1.7 2 3.5l5.4 6.4zm-.8-7s-2.1-2.6-3.1-4.2l-2-3.8s2.8 3.3 3.6 3.5c.9.2.9 0 .9 0s-.4 1.2-.1 2.2l.7 2.3zm.9-10.6s.3 1.9.1 3c-.2 1-.8 1-.8 1a15.7 15.7 0 004 4l-1.8-2.7c-.5-1-1.3-2-1-2.8.4-1 2.1.6 2.6 1l2.6 2.8s-.8-2.5-1.8-3.4a53.6 53.6 0 00-4-2.9z"/>
+  <path fill="#202020" d="M327 222.8l-1.7-4.2-1.6-5.2v2.8c-.1 1.2-.5 3-1 3.3-.6.2-.7.3-1.7 0-1-.2.7.5.7.5s1 0 1.4-.5c.4-.5.5-1.5 1-1.4.4.2 1 1.7 1.3 2.4l1.6 2.3z"/>
+  <path fill="#202020" d="M323.7 213.4s2 2.3 3 1.3c.8-1 .3-4 .3-4s1.2.5 1.6.2c.4-.4.2-1.5.2-1.5s2.3 3.2 3.3 5.3c1.1 2 1.6 5.8 1.6 5.8s-1.8-3-2.7-5.8c-.9-2.6-2.1-3.8-2.3-3.5a5.3 5.3 0 00-.3 3c.2 1 1 2.1 1.5 3.5l1.1 3.4-1.6-2.5c-.7-.8-1.3-1.2-1.7-1.6-.4-.4-1-1.2-1.7-1.4-.6-.3-1.8-.9-1.8-.4s-.3-1-.3-1l-.2-.8z"/>
+  <path fill="#171717" d="M316.8 223.3a27 27 0 004.2 6.3s-2-1.8-2.8-3a15.5 15.5 0 01-1.4-3.3z"/>
+  <path fill="#8f4620" d="M330.2 223.9c-.3 0-1.3-.3-1.4 0 0 .4.6 1.8 1.3 2.5.7.7 1 .7 1.1.6.2 0 0-.7-.2-1.4v-1.7c-.1-.3-.8 0-.8 0z"/>
+  <path fill="#d2a567" d="M306 209.4l-1.3.7-1.4 3 .4 5.3 2.1 3c.8 1.2 3.5 4.2 4.2 4 .7-.2 1.4-2.3 1.5-3.4l.2-3.2 1.8 2.3c1.1 1.3 2 2.4 2.6 2.3.5 0 2-3.2 2-3.6.1-.4-3.8-10-3.8-10l-1.8-1-6.6.6z"/>
+  <path fill="#ab6d29" d="M314.8 217.4l1 3.7c.5 1.2 0 2.3.3 2.3.2 0 2.3-2.7 2.3-4 0-1.2 0-2.5-.5-6.3s.2-5 .2-5l-1.2-1-2 4.2-.1 6.1zm-7-2.2l.7 5c.3 1.2 1 3.3 1.4 3.2.4 0 1.6-3.3 1.7-4.4 0 0-.9-1.6-.8-5.5 0-4-.4-4.4-.4-4.4l-2.6 6.1z"/>
+  <path fill="#45392d" d="M302.5 207.5s-3.1 4.6-3 7c0 2.5.4 2 1.1 4.2.7 2.3 1.1 5.6 1.2 5.9 0 .2.5-.2.5-.5l.2-16.6z"/>
+  <path fill="#ab6d29" d="M302.5 208s-2.7 4.3-2.5 6.6c.2 2.3.5 2.3 1.3 4.4.8 2 .8 5.4.8 5.4s1-.2 1.9-.9c1-.7 1.8-2.1 1.8-2.1l-1-2.1a8 8 0 01-.6-2l-.8-1 .2-4.1.7-3v-1l-1.8-.1z"/>
+  <path fill="#dbad6c" d="M317.2 215.3s-1.3-.3-1.9-.6c-.6-.3-.8-1.1-.8-1.1l.4-.8 2.3 2.5z"/>
+  <path fill="#d2a567" d="M303 208.5s-2 4.3-1.7 7.2 1.9 6.6 2 6.7c.2 0 0-.3.1-1v-8.7l.9-2.8v-1.5l-1.3.1z"/>
+  <path fill="#8f4620" d="M307.8 209.5s.3 1.2.1 1.8c-.2.5-1.2 1.2-1.6 2-.5.8-1 2.8-1 2.8s.4-1.1 1-1.8c.7-.7 1-1.2 1-.8.2.4.4 2 .3 2.3-.1.3-.7.8-1 2-.4 1.3 0 2.4 0 2.4l.5-2.2c.2-.6.7-1 .7-1l1 2.4s0-1.1.3-2c.1-.8 1-2 1.3-2 .3 0 .8-.1-.3-.7-.4-.2-.1-4.2.1-4.4.3-.2 1.9-.2 1.7-.8a11 11 0 00-1.6-2.2c-.1-.1-2.5 2.2-2.5 2.2z"/>
+  <path fill="#dbad6c" d="M317 218.1l-1.5-.3c-.5 0-.6-.6-.6-.6l.2-.6 1.2.7.7.8z"/>
+  <path fill="#8f4620" d="M304.4 218.6c0 .4-.3.9-.5 1.5-.3.7-.4 1.6-.4 1.6l-.4-3.3-.3-2.4c-.2 0-.7.7-.7.7s0-1.6.3-2.3c.3-.7.5-1.8.3-2-.3-.1-.8.3-1 .7a30.8 30.8 0 00-.8 1.3s.3-1.3.6-1.9c.3-.5 1.8-2.2 2-2.8.4-.7.4-1.4.4-1.4h1s1 .8 1 1.5c0 .4-1 .9-1 1 0 0-.8-.1-1 3.2-.2 3.4.6 3.2.5 4.6zm9.4-8.7s.2 1.8 0 2.4c-.2.6-.7 1-1.1 1.8-.4.7-.4 2.4-.4 2.4l.5-1.4.7-1c.1 0 .6.7.8 1.7l.8 2.5s-.2-1.2.1-1.2.5-.1.9.2l.9.8s0-.5-.7-1.1c-.6-.7-1-.6-1.1-1.5-.2-1-.3-1.8-.2-2.2 0-.3.5.3.9.7l1.5 1.4-.7-1v-3c0-1 0-1.9.4-2.1.3-.3.4-1.6.2-1.8-.1-.2-3.5 2.4-3.5 2.4z"/>
+  <path fill="#1e2121" d="M324.6 206.1a23.7 23.7 0 001.5 7.1s-1-2-1.6-3.6-.9-3.5-1.3-3.6c-.4-.2-1 .8-1 1.5s.5 3.3 1.1 4.2c.6 1-1-1.2-1.3-2.3l-.7-2.2s-.4 1-.3 2c.2 1.1 1.1 2.7 1.1 2.7l-1-1-.6-.7s0 1.5.4 2.1l1.2 1.7-1.3-1-.4-.8s.2 2.1.6 3.3l1.5 3s-1.2-1-2-2.9c-.8-1.8-1.2-7.3-1-8.1l1.1-1.9c.6-.8 1.3-4.7 1.3-4.7s.9 3.6 1.5 4.3c.6.7 1.2 1 1.2 1zm-8.6-1l.8 1.3.6 1s-1 1.1-2.3 2c-1.2 1-2.8 2-3.1 1.5-.4-.5-.4-1-.4-1s1.4-.8 2.4-1.8a6.6 6.6 0 001.6-2.2c.2-.6.5-.9.5-.9zm-10.9 3.5s.2 2.2 1.2 2.2c.9 0 3.7-2.9 3.9-3 .2-.1.4-.8.4-1l-.2-.8s-3 3-4 3.2c-.9 0-1.3-.6-1.3-.6zm.1-3l-.3 2c0 .5.2.9.2.9s-2.2.7-2.5 0c-.4-.6-.1-1.6-.1-1.6h1.5c.6-.2 1.2-1.3 1.2-1.3zm20.3-3.1l1.5 3.2 1.4 2.8s-1.4-1.7-1.9-2l-1.2-1 .2-1.1v-2z"/>
+  <path fill="#dbad6c" d="M302.1 207h1.3c.5 0 .8-.2.8-.2l.9-1.2s-.5 1.4-.2 2.5c.3 1 1 1.1 1.2 1.1a4 4 0 002.2-1.1c.9-1 2.1-1.9 2.1-1.9s-.3 1.3.2 2.7c.5 1.3 1.2 1.3 2.2.4 1-.8 2-2.2 2.6-2.8l.7-1 1.1-1 1-5.4-.5-.7-1.4.7-1.7-.7-.5-.7-1 1.7-1 .6-.5.1-1.2.3-.5-1.1-.3-.8-.6-.3-2.4 2.5-1.4-.1-1.3 2.2-1 1.3-1 2.4.2.5z"/>
+  <path fill="#8f4620" d="M313.9 201.5s.2 1.3-.5 3.6-1.6 3.9-1.6 3.9 2.4-1.5 3.6-4.2c1.1-2.6.9-5.7.9-5.7l-2.4 2.4zm3-2.5s.2.4 0 2.4l-.8 4 .6 1.2c.4.7 1.2 1.8 1.7 1.6.6-.2 1.6-.9 2.2-2.2.6-1.4 1.1-2.7 1.4-2.9.2-.2.3.1.4.2 0 .1.3 1.3.9 1.8.5.5 1.3 1.3 1.6 1 .4-.2.8-.9.7-1.2l-1.3-4-1.6-4-1-1.6-2.8.3-2 3.4z"/>
+  <path fill="#ab6d29" d="M321.7 195.3s.8 1.7.9 3.6c0 1.8-.4 3.8-.4 3.8s.2-2.3 0-3.7c-.3-1.4-.7-2.3-.7-2.7l.2-1z"/>
+  <path fill="#4d2a15" d="M325.6 202.6v2.3c-.2.8-1.3-.5-2-3-.6-2.5-.5-3-1-4.3l-.9-2.2 1.5-.3 2.4 7.5zm-7 4.6s2.8-1.5 3.1-6.2c.2-2.1-1.2-5.7-1.2-5.7s0 3.8-1 6.2a60.9 60.9 0 01-1.9 4s.7-.2 1-.6l.8-1.1s.1.7-.1 1.6l-.6 1.8zm-2.3-8.1s-.1 1-1.3 2c-1 .9-3.1 1.9-3.1 1.9s1.5-1.4 2-2.6c.6-1.2.1-2 .1-2s-.2.6-.8 1.1c-.6.5-1.6.6-1.6.6s0-.6.7-1.3c0-.1 0-.4.2-.7.3-1 1.1-2.3 1.1-2.3s.7 1.4 1.3 2l1.4 1.3z"/>
+  <path fill="#1e2121" d="M324.7 193.6a17.6 17.6 0 00.9 9s-1.4-2.2-1.7-3c-.4-1-.4-2.3-.7-3a3.2 3.2 0 00-1-1c-.3-.2-1-.1-1-.1s.8-.4.8-1.1v-1l1.4.3h1.3zm-6 9.8s1.4-2 1.8-4.6c.4-2.6 0-3.5 0-3.5s-.6 0-1.1-.5c-.5-.5-1.3-1.8-1.3-1.8s.2 1.4 0 3c-.4 1.6-1.8 3-1.8 3s.8.4 1.4 0c1.5-.9 1.4-2.5 1.4-2.5s.3.2.3 2.2-.7 4.7-.7 4.7z"/>
+  <path fill="#8f4620" d="M301.2 206.9c-.3 0 1-2 1.8-3.4l2.1-3.4s.3.3.8.3a3.6 3.6 0 002.4-1.7 7 7 0 001-2.5c0-.3-.1 1.8 1 3 1 1.1.9 1 1.3 1 0 0 0 1.4-.4 2.7l-.8 3.3s.2-2.5-.3-3.2c-.4-.8-.6 0-1 1-.3.9-1.1 1.5-1.1 1.5s.6-1.1 1-2.3c.4-1.2.2-1.2 0-1.2 0 0-.2-.1-.6.4-.5.5-.9.6-.9.6s.5-.4.7-1a6 6 0 011-1.8c.2-.3.4-.7.4-1 0-.2 0-.7-.2-.7s-.5.3-1.4 1.2l-1.3 1.3-.9 2.6a17 17 0 01-1 2.8l-.6.4.9-2.4 1-3.4c-.2-.3-.7-.3-.8 0l-2 2.8c-1 1.4-1 3.1-1.2 3.2l-1-.1z"/>
+  <path fill="#874f20" d="M325.7 192.1c0 .2 0 1.2-1 1.5a3.5 3.5 0 01-2.3-.2c-.2 0-.2-1.4-.2-1.4l3.5.1z"/>
+  <path fill="#b27129" d="M306 195.4s-.2.9-.8 2c-.5 1.2-1.4 2.2-1.3 2.4 0 .1.6.7 1.4.6.8 0 1.1-4.8 1.1-4.8l-.1-.2h-.3z"/>
+  <path fill="#dbad6c" d="M318.4 192.7s-.3 6.4-2.1 6.4-2.7-3.2-2.7-3.2-.1 4.3-2.4 4.3c-1 0-2.1-3.4-1.9-4 0 0-.4 2.3-1.5 3.2-2.2 1.7-3.5.9-3.6.6 0-.3 1.8-2 2-4.6 0 0 .4.1 1-.6s.7-1.6 1.3-1.5c.5.2 3-1 3-1l1.4-1.7s.2.5 1.2-.2a3.6 3.6 0 001.3-1.7l2.7 2.3.3 1.7z"/>
+  <path fill="#b27129" d="M311.4 186.6l2.7 3.8.6-.5c.4.5.6.9.4 1.2-.4 1-1.3 2.3-.5 3.7 0 0-.3-.8.1-1.8s.7-1.4 1-1.3c.2 0 .6 5.8 1 5.8.3 0 .9-2.7.9-4.5 0-1.8.3-.3.5 0 .2.4 1.8 3 3.1 2.6 1.4-.4 1.2-2.8 1.2-3.3 0-.6-1-3.7-1-3.7l-6.1-3.9-.5 1.6c-.3 1-3.4.3-3.4.3z"/>
+  <path fill="#8f4620" d="M320 186s.4.4 1 1.9.7 6.4-.1 6.4c-.8 0-2.3-1-2.6-1.6-.3-.7 0-3.1-.4-3.8a8.1 8.1 0 01-1.2-2.7l.1-2 1.4-.5 1.9 2.3z"/>
+  <path fill="#4d2a15" d="M319.6 184.5l2.6 3.9 2.3 3.3 1.2.4a2.5 2.5 0 01-3.2.5c-.9-.5-.4-2-1.5-4.5-1.2-2.5-3.2-3.6-3.2-3.6l.7-.7 1.1.7z"/>
+  <path fill="#1e2121" d="M318.2 182.4s2.3 1.5 3.1 3.2c.9 1.7 1.3 2.7 2.3 4.3 1 1.6 2.1 2.1 2 2.2 0 .1-.7.3-1.2 0a4.7 4.7 0 01-1.4-1.6 35 35 0 00-2.4-4.2c-.5-.7-2.3-2-2.3-1.9 0 .1.5.5 1.5 2.1a7 7 0 011.2 3.1l-1.1-2c-1-1.5-2.8-3.3-2.9-3-.1.2 1 1.9 1.5 2.9l1.3 3.3-1.8-3c-1-1.5-1.2-1.3-1.6-1.8l-1.4-1.8s1 .3 1.8-.3c1-.6 1.4-1.5 1.4-1.5z"/>
+  <path fill="#8f4620" d="M312.3 186.7s1.5.3 2.3.2h1.1s.5.6.5 1.4c0 .7-.5 2.1-.8 2.2-.2 0-.2-1.3-.5-1.8l-2.6-2z"/>
+  <path fill="#b27129" d="M313.1 190.6s.5 1.6.1 3.9c-.4 2.2-1.7 4.6-2 4.6-.3 0-.2-2.6-.4-4a38.8 38.8 0 000-.4l-.5 1.6.4-2.6-.1-.8 1.6-2 .9-.3z"/>
+  <path fill="#8f4620" d="M310.3 192.3c-.5.5-1.2.4-1.8.6-.6.2-.9 1-.9 1s.5-.3.7-.2c.3.1.5.1.1 1.2-.5 1.1-2.2 3-2.1 3 0 0 2-1.5 2.5-2.5.7-.9.6-1.4.8-1.8 0-.3.8-.7 1-.7.1 0 .5 0 .6.7l.6 2.6.8-2.6c.2-1 .2-2.9.2-2.9l-.6-.1c-.5-.1-1.5-1-1.5-1s.2 2-.5 2.7z"/>
+  <path fill="#dbad6c" d="M318.3 180.8s.6 1.5-.7 2.6c-.4.3-.7.5-1.4.6a4.5 4.5 0 01-1.7-.6l-4-1.6-2-.6-1-.3.2-1.1h3l3 1.2 1.3.5 1.1.2h.9l.7-.2.4-.3.2-.4z"/>
+  <path fill="#ab6d29" d="M318.3 180.8c0 .3-.3 1.1-.6 1.3-.3 0-.8.3-2 0-1.1-.2-2.3-1-3.6-1.3-1.3-.4-2.3-.7-3.3-.7s-.5-.4-.5-.4 2.3-.3 4.3.5c2 .7 2.9 1.2 4 1.2 1.4 0 1.7-.6 1.7-.6z"/>
+  <path fill="#4d2a15" d="M307.6 179.6h.9c.4 0 .7-.3.7-.3s0 .5-.2.7c-.3.2-1 .1-1.2.1l-.2-.5z"/>
+  <path fill="#dbad6c" d="M315.3 184.4s1.3 1.3 1 2.4l-2.7-1.2-4.2-1.7-2.3-.7-.3-.4.6-.8.2-.8 2.8.4 3 1 1.9 1.8z"/>
+  <path fill="#dbad6c" d="M312.4 186.3s2.4 3.1 1.8 4.1l-5.6-3.5-2 3.3-4.7-2.3s3.8-3 4.2-3.5l.5-.7 2 .4 3.4 1 .4 1.2z"/>
+  <path fill="#ab6d29" d="M311 181.6s2 .5 3.3 1.2c1.3.6 3 .8 3 .8s-.6.7-2 .8c-.4 0-1.4-.8-2-1.3-.7-.4-2.6-1-2.6-1l.3-.5z"/>
+  <path fill="#4d2a15" d="M307.6 180.6s1.4.3 2.2.7c1 .3 1 .2 1.2.1.3 0 .3-.2.3-.2s.2 1-.5 1-1-.3-1.8-.7c-1-.4-1.5 0-1.5 0v-1z"/>
+  <path fill="#ab6d29" d="M315.4 186s1 .7.9.9c-.2 0-.7.3-1.6.4a3.4 3.4 0 01-2-.4c-.6-.2-1-1.3-2.5-2a18 18 0 00-2.8-.9l-1.3-.2 1-.4 3.2.6 2.8.9 1.7.8.6.4zm-5.4 2l.6 2.6-.4 1.5-.8.6-.8-.3-.3-.5s.4-.6 0-1.1c-.3-.6-2-1.2-2-1.2s.7-1.3 1.4-1.6c.8-.3.4-1.2.4-1.2l1.9 1.2z"/>
+  <path fill="#4d2a15" d="M306.8 182.8s.5.4 1.5.5c.5 0 1.3.2 2.2.5l1-.3-.5.4c.9.2 2 .7 2.5.9a5.8 5.8 0 012 1.3l-2-1a17.4 17.4 0 00-3-.9c-2-.3-4-.2-4.3-.4-.4 0 .1-.1.4-.3.2-.2.2-.7.2-.7z"/>
+  <path fill="#ab6d29" d="M314 189.8s.7.7 0 .9c-.6.2-2.4.2-3.2-.7l-.6-1.2a14 14 0 00-2.4-1.7c-.7-.5.3-.5.3-.5l3.6 1.5a13 13 0 012.3 1.7z"/>
+  <path fill="#4d2a15" d="M314 189.9s-1.2-1.8-4.9-3.3l1.2-.2h-2a24 24 0 00-.8-.3c-2-.6-2-.6-2.2-.8-.1-.3-.4 0-.6.3l-.7 1a5 5 0 012.5-.1c1.1.3 1 .7 1 1-.1.5-1.4 2-1.3 2.1.2 0 1-1.5 2-1.3 1 .3 1.2.8 1.2.8s0-.6-.2-.8c-.2-.2-1.3-1.3-1-1.3.3 0 1.6.3 3.3 1.2 1.8.9 2 1.1 2.6 1.7z"/>
+  <path fill="#dbad6c" d="M308.1 187s2.8.8 2.7 3.8c-.1 3-2.3 2.4-2.5 1.3-.2-1 .3.5 1 .4.9-.2 1-1 1-2.2 0-1-.3-1.6-1-2.2a12 12 0 00-1.2-1z"/>
+  <path fill="#6c3f18" d="M296 179.9s.4.2-.4 2.3c-.8 2.1-1.3 2.8-2.5 4.2-2.2 2.4-3.2 2.5-3 3.5.3 1 1.1.8 1.3.8.2 0 4.3-6 4.3-6l.9-3.5-.2-1-.3-.3z"/>
+  <path fill="#dbad6c" d="M306.1 175.6s1.2 1.8.8 5c-.3 3.4-4.7 6.3-4.7 6.3l-6.4 4.4-2.7-.2h-.8c-.4-.1-.8-.5-.9-.5l-.5-1.2.9-1 2.3-2.3 1.4-2s.7-1.3.8-2.5c0-1.1-.2-1.7-.2-1.7l.5.8.3 1.8-.2 2 1.6-1.2 2.2-1s.7 0 1-1.3c.5-1.2.9-3 .9-3.8l-.1-1.8h.3c.2 0 .7 1.2.7 1.7l.4 2.8 1-1 1-1.5c.2-.5.4-1.3.4-1.8z"/>
+  <path fill="#904720" d="M306.8 192.2s.5.4.3 1.6c-.2 1.2-1.1 1.8-1.6 1.8V194l-1.4-1.2-1.5-.4.3-.3c.1-.2 1.7-.8 1.7-.8l2.2.9z"/>
+  <path fill="#ab6d29" d="M305.7 192.2s.5.4 1.2.3c.7-.2 1-1.3.6-1.8-.4-.4-.2 1-.7 1.3-.4.1-1-1.2-1.5-1.3-.7-.1-1.6.3-1.9.7-.2.4 1 0 1 0l.7.3h.5l.1.5z"/>
+  <path fill="#904720" d="M296.5 187.6s.8.3 1.7.1l3.1-1 1.8-1.3c.7-.7 3.1-2.2 3.4-5.1.2-3-.4-4.7-.4-4.7s3.5 3.8.5 8.2c-2 2.8-3.8 3.7-3.8 3.7s3.4-1 3.7-.2c.3.8-.1 2-.2 2.3 0 0 1.9.4 2.2 1.4.1.6-2.2-.7-4-.2-1.8.4-2.5 1.4-2.5 1.4s-.4-.5-2-.5c-1.5 0-2.2.7-3.1.7-1 0-3.7-.6-4.2-1.4l1.8-2.2c.8-1.6 2-1.2 2-1.2z"/>
+  <path fill="#ab6d29" d="M303.8 179.7s1.3-1.3 1.8-2.3c.4-1 .5-1.8.5-1.8s.2 1-.6 2.3-1.7 2-1.7 2v-.2z"/>
+  <path fill="#904720" d="M303.4 176.7s1.1 4.4 0 6.1c-1.3 1.8-6.5 4.1-6.5 4.1s4-2.1 5.2-4.6 1.1-4.5 1.1-4.5l.2-1z"/>
+  <path fill="#1e2121" d="M298.2 187.7s1.7 0 2.6-.6c1-.5 2.3-1.7 2.3-1.7s-1.2 1-1.6 1c-.3 0-.6-.5-.5-.9 0 0-.3.8-1 1.4-.8.5-1.8.8-1.8.8zm3.9-5.4s1.4-1.4 1.4-4.4c0-3-1.2-2.5-1.2-2.5s1 .7.7 3c-.2 2.3-1 4-1 4zm1.7.3s1.6-.3 2.1-1.3.6-2.7.6-2.7-.2 1.7-.7 2.3c-.4.6-2 1.7-2 1.7zm-1 9.5s.8-1.5 1.9-1.1c1 .4 1 1.2 1 1.2s-.4-.6-1.2-.7c-.7 0-1.6.6-1.6.6zm-2.9-2.7l3.7-1 3-1s-1.2 1.3-3 2.3c-1.6 1-3 1-3 1s3.2-1.4 3.4-2c0 0-3 .9-4 .7z"/>
+  <path fill="#fff" d="M296.2 185.8a2.6 2.7 67.8 01-3 4.4"/>
+  <path fill="#f16e16" d="M296.1 186.1a2.3 2.4 67.8 01-2.7 3.8"/>
+  <path d="M295 187.4a1 1 0 11-.8 1.4"/>
+  <path fill="#d5d3ca" d="M295.2 188.6a.3.3 0 11-.6-.1.3.3 0 01.3-.3.3.3 0 01.3.4z"/>
+  <path fill="#ab6d29" d="M296.8 184.2s1.6-1.5 1.9-3.5c.3-2 .1-3.2.1-3.2l.9 1 .3 1.4-.5 2.6 1.6-.8c.6-.8 1.5-4.2 1.2-6.3 0 0 .4 1-.2 3.8-.6 2.9-1 3.2-3.2 4.4a9.6 9.6 0 00-3.8 4.2 19 19 0 01-2.3 3l1.6-2.6c.8-1.8 1.7-2.8 1.7-2.8l.7-1.2z"/>
+  <path fill="#904720" d="M296.1 185.4s.7-2 .7-3.1-.7-2.4-.7-2.4 1-.1 1 2.2c.1 2.4-.4 2.6-1 3.3z"/>
+  <path fill="#4d2a15" d="M299.2 182.8s.7-1.7.7-3c0-1.1-1-2.3-1-2.3s1.1.3 1.2 2.4c.1 2.2-.2 2.2-1 3z"/>
+  <path fill="#ab6d29" d="M292.1 191s-.6-.8-.5-1.3c0-.6 0-.7 1.4-2.2a13 13 0 002.5-3c.3-.9 1.5-3 .6-4.6 0 0 .6 2.4-.8 4.3a15.7 15.7 0 01-3.3 3.7c-1.1.8-1.3 1.2-1.2 1.7 0 .5.1 1 .3 1 .4.3 1 .3 1 .3z"/>
+  <path fill="#6c4119" d="M305.5 195.6s.3 0 .5-.3.2-1-.3-1.6a3.3 3.3 0 00-1.7-1.1l-2-.4s.4.8 1.3 1.3c.4.2 1.2 0 1.6.4.5.4.6 1.7.6 1.7z"/>
+  <path fill="#6c4119" d="M305.5 195.6s1.5-.5 1.6-2l-.1-1.2s.2.5.8.7l.6-.2s-1 2.8-3 2.7z"/>
+  <path fill="#bf802d" d="M294.8 195.3l.8.8.9 1 3.7-1 1.2-1.2-1-1.6h-2.7l-3 2z"/>
+  <path fill="#f9c83a" stroke="#8f4620" stroke-width=".4" d="M303.8 194l-.7-.9-.7-.6c-.6-.3-2.8-.3-2.8-.3l-1.6.3s-.5.5-1.3.3a22 22 0 01-2.6-1l-1.9-.7s-1.3-.6-1.6-.5c-.3.1-1.5 1.3-1.5 1.3s-.2.7.3.7c.4 0-.7.2-.7.2s-2.8 1.6-3.2 4.4c-.5 2.7 4.6 6.8 6.5 4.7 0 0-2.8-2-2.2-3.7.5-1.7 1.8-2.8 4-3 2.1 0 2.3-.3 3.2-1 1-.6 2.7-1 4 .3 1.3 1.4-5 2.7-5 2.7l.7 1s7.7-2.7 7-4.1z"/>
+  <path fill="#fcf3d8" d="M289.4 200.7s-3.1-.8-2.9-3.7c.3-2.8 3-3.9 3.4-4 .4-.2.3-1.6.8-1.8a2.4 2.4 0 012 .5l1.4.8s-5.5 2.4-5.5 5.6c0 2.1.8 2.5.8 2.5z"/>
+  <path fill="#fdeaaf" d="M303.8 193.8s-.4.2-.5 0c-.6-1-2-1.4-3-1.3-1.5 0-2.4.5-3.4.5s-.7-.1-1.8-.2c-1.1 0-3.5-1.8-4-1.6-.6.2-.8.8-.8 1.1.1.4-1 .4-1 .1-.2-.2.7-1.7 1.7-1.7 2.6 0 4.6 1.7 5.8 1.7 1.3 0 1.7-.7 3.4-.7s3.5.8 3.6 2z"/>
+  <path fill="#513625" d="M295.2 195.8s1.3-.2 2.2-.6l2.2-.8-2 1.2-2 .5-.4-.3z"/>
+  <path fill="#f9c83a" d="M290.8 202.3c-.2 0-1.3 0-3-1.1-1.8-1.2-2.3-3.2-2.3-3.2s-.4-1.9 1.4-3.8c1.8-1.9 2.1-1.3 2.2-1.2.1 0 0 .1 0 .1l-1.7 1.3-.7 1.3-.7 1.2v1.4l.8 1.5 2.5 1.5 1.5 1z"/>
+  <path fill="#8b5122" d="M289.8 191.4v-.2.3-.3.3-.3l-.3.2h.2v-.2l-.2.2.2-.2h-.2a.3.3 0 000 .2l.2-.2h-.2.2-.2.2-.2.2l-.2-.1.2.1-.2-.1-.1.1a4.6 4.6 0 00-.4.5l-.2.6v.1c0 .3.2.5.4.6h1.4a.3.3 0 00.1-.4.3.3 0 00-.3-.2l-.7.1a.8.8 0 01-.3 0v-.2a.5.5 0 010-.2 3 3 0 01.3-.5l.2-.1v-.1l.1-.2a.3.3 0 00-.3-.2.3.3 0 00-.2.3.3.3 0 00.3.2z"/>
+  <path fill="#f9c83a" d="M295.1 194.1l-3.8 1.1c-.3.2 1.2 0 2.4 0l1.3.1.9-.2c1.4-.5 4.4-1.6 4.7-.3.2 1-4.1 2-4.1 2v.5l3.4-.9 1.9-1 .5-.9-1.7-1.2H298l-1.2.3-1.7.5z"/>
+  <path fill="#8f4620" d="M289.7 199.5c.3.8.9 2 1.6 2.3 0 0 .1 0 0 0 0 .1-.5.5-1.7.1-1.2-.3-3-.7-4.1-4v.7l.7 1.3 1.1 1.2 1.9 1.1 1.2.3 1-.2.6-.4-1.1-1-1.4-2.3.2 1z"/>
+  <path fill="#fcca3d" d="M302.1 232.6v1.2h-.7v-1.5zm-4.7-34.4l-1.2-1.4-.8.1 1.2 1.8z"/>
+  <path fill="#816c2a" d="M302 235.5l-1.7-1a10 10 0 00-2.4-.6v.3h.2l2.1.6a14.3 14.3 0 011.7 1l.1-.3zm0-3.1h-3a4 4 0 00-1.3.7l.1.2a3.8 3.8 0 012.6-.7 23 23 0 011.4.1v-.3zm-.4-2.7l-2.6 1.4-1.6 1.2.2.2.5-.4a16.5 16.5 0 012.6-1.6l1-.5-.1-.3zm-1.7-2.7s0 .7-.3 1.2a8.6 8.6 0 01-.6.8 86.3 86.3 0 01-2.5 2.6l.2.3a220.4 220.4 0 002.5-2.7l.7-.8c.3-.6.3-1.3.3-1.4h-.3zm-2.1-1.2a4.2 4.2 0 01-.2 2.2l-1 2.2-.4.9-.2.3.2.2s1.3-2.2 1.7-3.5c.2-.5.2-1 .2-1.5a4 4 0 000-.9h-.4zm-2.1-.3a8.7 8.7 0 000 1.2c0 .6 0 1.2-.2 1.7l-.7 1.8-.3 1 .3.1 1-2.8c.2-.5.2-1.2.2-1.8v-1.2h-.3zm-1.6 0v1.2l-.3 2a52.2 52.2 0 00-.5 2.5h.3l.2-.8.3-1.7c.3-1 .3-3.2.3-3.2h-.3zm-1.8.3a13 13 0 000 2.9 14 14 0 00-.4 2.5h.3a23.3 23.3 0 01.4-2.4l.1-1.4v-1.6h-.4zm-1.3.2v.2a9 9 0 01-.3 2.2l-.6 1.9-.2 1h.3l.8-2.9a8.9 8.9 0 00.3-2.2v-.2h-.3zm-1.6 0v.7c0 .6 0 1.4-.4 2a5.5 5.5 0 01-1.3 1.6 9.8 9.8 0 01-.7.4l-.2.2.1.3s1.7-1 2.4-2.3c.4-.7.5-1.6.5-2.2v-.7h-.4zm-.9-.3v.2a6.7 6.7 0 01-1 1.9c-.3.4-.9.8-1.3 1.1a12.1 12.1 0 01-.8.5l.2.3s1.4-.8 2.1-1.7a8 8 0 001.1-2.2h-.3zm-1.5-.7v.1a6.2 6.2 0 01-1 1.3c-.1.2-.5.4-.9.6l-.6.4.1.3.7-.4 1-.7.7-.9.3-.6-.3-.1zm-.7-1l-.3.3-.9 1a6.5 6.5 0 01-.5.4l-.4.3.1.3.7-.4c.7-.6 1.5-1.7 1.5-1.7l-.2-.2zm-.4-.6l-.2.2-.9.6a2 2 0 01-.8.3v.4l.6-.3c.7-.3 1.5-1 1.5-1l-.2-.2zm-.2-.7l-.8.4-.6.3a1.9 1.9 0 01-.4.2v.3c.2 0 .3 0 .5-.2l1.4-.7-.1-.3zm-.4-1.3l-.5.5-.9.3v.3a2 2 0 001.2-.5 3.8 3.8 0 00.5-.4l-.3-.2zm.1-2.2l-.6.5c-.3.3-.6.6-.7 1a.6.6 0 01-.1 0v.5l.2-.2a.8.8 0 00.2-.2c0-.2.4-.6.7-.9a7.9 7.9 0 01.5-.5l-.2-.2zm10.7-12.8h1.6l.1-.2v-.1h-.1v.3-.1h-.2.1-.1v-.2l.1.1v-.1.1-.1h-1.5v.3zm0-1h.2c.2 0 .4 0 .6-.2.4-.1.7-.4 1-.6l.5-.3a.8.8 0 01.3 0v-.4l-.6.2-1 .7-.8.3-.1.3zm0-1.5l.7-.2 1.2-.8c.4-.3.7-.4 1-.4v-.3c-.3 0-.5 0-.8.2l-1.2.7a3 3 0 01-1 .5v.3zm-.6-1.4l1.5-1 1.6-1.2-.1-.3-1.7 1.2c-.5.5-1.1.9-1.5 1l.2.4zm-1-1.5l3.2-2.3-.2-.3-3.2 2.3.1.3zm-1.5-1.6a20.7 20.7 0 013.4-2.3l-.2-.2-1.5 1-1.9 1.3.2.2zm-1-1a123.7 123.7 0 012.6-1.8l.8-.5-.1-.3a7.6 7.6 0 00-.8.5 113 113 0 00-2.7 2l.1.2z"/>
+  <path fill="#78732e" d="M294.5 195.4l.1.1a17.3 17.3 0 012.5 2.5c1 1.2 1.8 2.7 1.8 4.1v.5a9.5 9.5 0 01-2.5 5c-2 2.3-4.8 4.4-7 6.4a18 18 0 00-3 3.1 6.1 6.1 0 00-1.2 3.7 6.4 6.4 0 001.1 3.4 4.4 4.4 0 003.9 2c1.8 0 3.8-.7 5.6-.7 1.6 0 3 .4 4.4 1.9 1.3 1.4 1.7 3.6 1.7 5.7 0 1.6-.2 3-.4 4.2a25.6 25.6 0 01-.4 1.8h.3s.8-2.8.8-6c0-2.1-.4-4.5-1.8-6a5.8 5.8 0 00-4.6-1.9c-1.9 0-3.9.6-5.6.6a4 4 0 01-3.6-1.8 6 6 0 01-1-3.3v-.1c0-1.6.7-3 1.9-4.3 1.8-2 4.5-4 7-6.2 2.3-2.2 4.4-4.5 4.7-7.5v-.5c0-1.8-1.1-3.5-2.3-4.8a17.2 17.2 0 00-2.3-2.2l-.1.3z"/>
+  <path fill="#a8ac71" d="M292.1 198.4l-.4-.3-.3.1.6.5zm1 1l-.3-.3h-.1l.2.4z"/>
+  <path fill="#78732e" d="M294.5 201l-.2-.4-.2.2.3.3zm1 1.5l-.1-.3h-.3l.4.5zm.7 1.5l-.2-.4v.4zm0 1.5v-.4l-.2-.1v.5zm0 1v-.5l-.1-.1v.6zM284 221.1l.1-.7c.1-.3-.3.1-.3.1v.5l.2.1z"/>
+  <path fill="#fff" d="M284 222.1l-.3.1.1.5.1-.2v-.4z"/>
+  <path fill="#78732e" d="M284 223.9v-.4h-.2v.6z"/>
+  <path fill="#fff" d="M284 224.9v-.4h-.1v.4zm.3 1.4v-.4l-.2.1.1.4zm.4 1.4l-.1-.5h-.2l.2.6z"/>
+  <path fill="#a8ac71" d="M285.6 229.7l-.2-.3h-.2l.3.3zm1.5 1.4l-.5-.3c-.3-.3-.1.2-.1.2l.4.2h.2zm9.8.8l-.4-.3c-.2 0 0 0 .2.4.1.3.2-.1.2-.1z"/>
+  <path fill="#fff" d="M297.7 232.5l-.3-.3v.3h.2z"/>
+  <path fill="#a8ac71" d="M297.9 233c-.1-.2-.2.1-.2.1l.2.3v-.5zm0 1.3v-.5c0-.2-.1 0-.1 0v.5h.1z"/>
+  <path fill="#fff" d="M297.4 235.7l.2-.4h-.2v.4zm-14.8-52s.5-.2.1.4l.3-.5h-.5z"/>
+  <path fill="#f9c83a" d="M294.6 195l.4.3h-.5l.1-.3z"/>
+  <path fill="#8f4620" d="M295 195.3l-.7.1c-.2 0 .2-.2.2-.2l.4.1z"/>
+  <path fill="#977c2e" d="M301 239.1s.3 0 .5-.3-.1.4-.1.4l-.3.1-.2-.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/my.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/my.svg
new file mode 100644
index 0000000..a08f085
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/my.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-my" viewBox="0 0 640 480">
+  <path fill="#cc0001" d="M0 0h640v480H0z"/>
+  <path id="a" fill="#fff" d="M0 445.8h640V480H0z"/>
+  <use width="100%" height="100%" transform="translate(0 -68.6)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -137.2)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -205.8)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -274.3)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -343)" xlink:href="#a"/>
+  <use width="100%" height="100%" transform="translate(0 -411.5)" xlink:href="#a"/>
+  <path fill="#010066" d="M0 0h372.6v274.3H0z"/>
+  <g fill="#fc0">
+    <path d="M149.7 48.5c-49 0-88.9 39.7-88.9 88.6a88.8 88.8 0 0089 88.6 88.7 88.7 0 0048-14 78.9 78.9 0 01-25.8 4.2 78.7 78.7 0 01-78.8-78.5 78.7 78.7 0 01106.2-73.7 88.7 88.7 0 00-49.7-15.2z"/>
+    <path d="M297.1 183.2l-37.4-19.5 11 40-25-33.5-7.8 40.7-7.7-40.7-25.1 33.4 11.2-40-37.6 19.5 28-31.3-42.5 1.6 39-16.3-39-16.5 42.5 1.7L178.9 91l37.4 19.5-11-40 25 33.5 7.8-40.7 7.7 40.7 25.1-33.3-11.2 39.9 37.6-19.4-28 31.2 42.5-1.6-39 16.4 39 16.5-42.5-1.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mz.svg
new file mode 100644
index 0000000..2e98e99
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/mz.svg
@@ -0,0 +1,21 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-mz" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="mz-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#mz-a)" transform="scale(.9375)">
+    <path fill="#009a00" fill-rule="evenodd" d="M0 0h768v160H0z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 160h768v16H0z"/>
+    <path fill-rule="evenodd" d="M0 176h768v160H0z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 336h768v16H0z"/>
+    <path fill="#ffca00" fill-rule="evenodd" d="M0 352h768v160H0z"/>
+    <path fill="red" fill-rule="evenodd" d="M0 0v512l336-256L0 0z"/>
+    <path fill="#ffca00" fill-rule="evenodd" d="M198.5 333l-51.2-37.5L96.1 333l19.9-60.3-51.5-37.1 63.5.2 19.3-60.4 19.4 60.5 63.5-.3-51.5 37.1z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M102.8 290.9h37c3 3.3 9.5 4.7 15.8 0 11.6-6.4 34 0 34 0l4.4-4.7-10.7-35.2-3.9-4.2s-8.3-5-24-3.3c-15.7 1.7-21.2-.5-21.2-.5s-13.7 1.6-17.6 3.6l-4.4 4.4-9.4 39.9z"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M110.3 281.8s35.2-4.4 45.4 9.1c-5.7 4-10.8 4.3-16.2.3.8-1.5 12.6-13.8 42.7-9.7"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M148 246.6l-.3 38.8m31.7-38.3L186 278"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M117 246.6l-3.7 16"/>
+    <path fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M78.9 295.1l8.6 10.2c1 .6 2 .6 2.9 0l12.8-15.4 5.4-6.7c.9-1 1.1-2.1 1-3l10.4-9.3 2.2.2c-1-.2-1.7-.7-1-1.8l2.4-1.8 1.8 2.3s-2.6 3.4-2.9 3.4h-2.8l-5.4 4.9 2.4 2 3.5 9.8 4.4-3.1-2.8-10 6.1-6.7-2.3-3.6 1.6-2s21.3 13.4 29.6 9.8c.2 0 .5-9.6.5-9.6s-22.2-2.3-22.7-6.7 5-5 5-5l-2.4-3.2.5-1.8 3.9 4.8 8.7-7.4 51.5 58.6c2.8-1.1 3.4-1.8 3.6-4.6L155 241.5l3.8-4.1c.8-.9 1-1.2 1-2.6l6-5.1a7.3 7.3 0 013.8 3L186 219c.4.4 1.7.8 2.6.4l26.9-25.9-29.3 20.7-1-.7c0-.9 1-1 0-2.6-1.2-1.4-2.9 1.3-3.1 1.3-.3 0-4.3-1.4-5.2-3.2l-.2 4.7-7.5 7-5.7-.3-8.2 8-1 3 1.3 2.7s-4.4 3.8-4.4 3.6c0-.3-.9-1.2-1-1.3l3.8-3.4.5-2.3-1.2-2c-.4.3-5.2 5.4-5.5 4.8l-14-15.5.8-2.9-8.7-9.5c-3.2-1.1-8.3-1.3-9.3 5.7-.8 1.6-7.4.2-7.4.2l-3.6.8L85.2 241l11.3 13.6 23.2-29.3.7-8.3 4.8 5.4c1.7.2 3.2.3 4.7-.5l13.7 15.3-2.3 2.3 2 2.2 2.4-1.6.9 1.3c-1.1.6-2 1.5-3.1 2.1-1.8-1.2-3.6-2.7-3.5-5l-7.7 6.4-.3 1.2-22.9 19-2 .3-.5 6 14.9-12.4v-1.8l1.5 1.3 11.6-9.3s.8 1 .5 1-10.3 9.3-10.3 9.3l-.2 1-1.8 1.6-1-.8-14 12.4h-2l-7.7 7.7c-2 .2-3.7.4-5.4 1.5l-13.8 12.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/na.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/na.svg
new file mode 100644
index 0000000..f2f571f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/na.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-na" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="na-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#na-a)">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#3662a2" d="M-26.4.2l.8 345.6L512.5 0-26.4.2z"/>
+    <path fill="#38a100" d="M666.4 479.6L665 120.3 122.3 479.8l544-.2z"/>
+    <path fill="#c70000" d="M-26 371.8l.4 108.2 117.5-.1L665.4 95.4l-.7-94.1-116-1L-26 371.7z"/>
+    <path fill="#ffe700" d="M219.6 172l-21.8-13.2-12.6 22.1-12.2-22.2-22 12.9.6-25.4-25.4.2 13.2-21.8-22.1-12.5 22.2-12.3-12.8-22 25.4.6-.1-25.5 21.7 13.2L186.3 44l12.2 22.2 22-12.9-.6 25.4 25.4-.2-13.2 21.8 22.1 12.5-22.2 12.3 12.8 22-25.4-.6z"/>
+    <path fill="#3662a2" d="M232.4 112.4c0 25.6-20.9 46.3-46.6 46.3s-46.6-20.7-46.6-46.3 20.8-46.2 46.6-46.2 46.6 20.7 46.6 46.2z"/>
+    <path fill="#ffe700" d="M222.3 112.4a36.5 36.5 0 11-73 0 36.5 36.5 0 0173 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nc.svg
new file mode 100644
index 0000000..4a2ac30
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nc.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-nc" viewBox="0 0 640 480">
+  <path fill="#009543" stroke-width=".9" d="M0 0h640v480H0z"/>
+  <path fill="#ed4135" stroke-width=".9" d="M0 0h640v320H0z"/>
+  <path fill="#0035ad" stroke-width=".9" d="M0 0h640v160H0z"/>
+  <circle cx="240" cy="240" r="157.3" fill="#fae600" stroke="#000" stroke-width="5.3"/>
+  <path stroke="#000" stroke-width="6.4" d="M213.3 263.5h53.3M213.3 224h53.3M240 83.2V352"/>
+  <path stroke-width="1.1" d="M176.6 384.4c64.2 26.3 124.4 1.7 124.4 1.7s-22.7-24.6-34.3-34.2c-11.4-9.4-44.8-9-56.2 0a488.7 488.7 0 00-33.9 32.5z"/>
+  <ellipse cx="240" cy="312.5" stroke-width="1.1" rx="17.6" ry="25.6"/>
+  <ellipse cx="240" cy="243.7" stroke-width="1.1" rx="21.3" ry="13.5"/>
+  <circle cx="240" cy="181.3" r="21.3" stroke-width="1.1"/>
+  <path stroke-width="1.1" d="M265.6 101.9s1.8 3-2 10c-18.6 33.5-37.3 34.2-40.8 37.1-4 3.2-5.6 3-5.6 3 .3-2.9.5-14.6.7-15.7 2.9-15.7 26.5-15.5 45-31.5 2.9-2.5 2.7-3 2.7-3z"/>
+  <path d="M265.5 163s4 11.2 4.5 22.5c1 18 18.2 18.5 30 18.5v-10c-8.9 0-16.6-1.3-23-14.5a115 115 0 00-11.5-16.5zm-.5 145s6.3-7.8 13.7-26c3.8-9.5 13-15 21.3-15v-14c-19 0-28.2 7-29.1 17.4-2 21.1-5.9 37.6-5.9 37.6z" transform="translate(-80) scale(1.06667)"/>
+  <use width="100%" height="100%" transform="matrix(-1 0 0 1 480 0)" xlink:href="#leaf"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ne.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ne.svg
new file mode 100644
index 0000000..f470907
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ne.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ne" viewBox="0 0 640 480">
+  <path fill="#0db02b" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v320H0z"/>
+  <path fill="#e05206" d="M0 0h640v160H0z"/>
+  <circle cx="320" cy="240" r="68" fill="#e05206"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nf.svg
new file mode 100644
index 0000000..46d7e8f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nf.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nf" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M194.8 0h250.4v480H194.8z"/>
+    <path fill="#198200" d="M0 0h194.8v480H0zm445.2 0H640v480H445.2z"/>
+    <path fill="#198200" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".7" d="M313.5 351.3v52.6l21.3.2s-6.8-45.8-3.1-52c3.7-6 7.2-5.2 7.2-5.2s13.9 4.2 15.4 3.5c1.5-.6-.2-5.2 7.2-4.6 2.4-.9 1.1-5 3.3-5.2 2.2-.3 44.5 11.8 53.7.4-2.4-6.4-10.7-.5-12.9-.2-2 0-10.3-4-15.1 0-4.4-3.3-24.4-5.5-24.4-5.5-2.6-2.6 47.6 1.3 50.5-.7 5.9-5.9-11-5.2-13.6-3.3a14.8 14.8 0 00-14.2-.6c-1.7-4.1-18-2.4-27-3.5-3-1.7-2.5-2.7-.5-3.8 19 .8 37.8 3.3 56.8 2.5 5.1-6.7-6.5-9.3-13.6-3.5-4.2-7-12.7-.3-18.4-1-5.7-.6-3-7.6 4.2-6.5 7.2 1 20.1-.4 22.5-3.7s-1.4-6.7-13.3-3.5c-4-4-13 0-17.1 1.3-5.6-3.1-18.5-.5-22.8.6-4.3-2.6 22.5-7 22.5-7 10.4-.2 16.3-2 19.5-2.8 15.7-8.4-.2-9.3-8.4-3.2-5.1-4-10 .3-14.6 1.8a38.2 38.2 0 01-13.4 2c0-.6 12.6-8.3 12.6-8.3s15.3-1.1 18.4-1.5c3-.5 18.8-8.5-2.7-3.1-7.4.6-11.8.2-14.7.4-16.5-1.7 1.6-3.3 1.6-3.3s23.4-2.1 23.7-3.3c.4-9-19.1-4.8-19.3-4.8 0-6.5-18.2.2-18.2 0-3.5-2 2-4.1 2-4.1 4.8-1.2 12-1.6 13.9-3.1 0 0 13.6-.1 15.2-3.7-3.3-9.3-28.8 1.6-32.2 3.2-4.6 0 3-7.4 3.3-7.6.2-.3 21-1.1 30.9-14.5.7-8.1-11.6 4.6-11.6 4.6-1-10.6-13.4.7-20.6 1.5-7.3 1-7.5-3.3-2.5-4 5-.6 10.8-.1 13.6-7.8 2.9-7.7 11.4.4 13-2.4 1.5-2.9-3.1-5.3-3.1-5.3s6.4-6.6-4-6.3c-10.2.2-23.6-1.4-23.6-1.4s10.7-4.1 20.8-4c10 .3 4.6-7.1-5-7.1-9.7 0-14.7-3.3-14.7-3.3l16.4-6.2-1-4.6s9.6-7.7-4-5.9l-15.2 2-27.4 4.1c-.2 0-7.4-2.2-.4-4s31.8-6.7 35.5-5.4c3.7 1.3-.4-9.2-13.6-10.5-13.1-1.3-21.3 3.3-21.3 3.3s-8.5-3.1-.6-5.7c7.9-2.7 20.4.9 20.4.9s14-4.2 2.4-6c-11.6-1.7-15.3 1.6-20.6 1.8-2.1-2.7 18.2-3.3 19.5-5.5-2.2-4-14.8 0-22.2 0-3-1.3-3.3-3.5.3-4.8 7.5-.3 14.6.1 22.1-.2-.2-4 0-8.7-.2-12.8-9.6-1.7-20.8 1.3-26.1 1 1.4-4.3 22-5.5 24.3-6.7 4.8-6-20.1 0-20.4 0-4.3-.6-4-3.4-1.3-5 6.4-.7 20.6 1 19.6-3.4-.8-4-10-1.9-13.6-1-3.8.9-9.3.2-9.3.2-2.3-3.2 21.5-1.9 21.3-4.4-.3-2.8-15.1-.8-20.2-.6-3.9-2.7 19-4.5 19.3-4.8.9-7.3-15.3 0-18.4 0-3 0-1.5-4.6-1.5-4.6s6.3-2.9 6.1-3.3a22 22 0 00-5.2-2c-.5 0 0-5 0-5s5.2-4 4.8-5.1c-.5-1.1-6.2.9-6.2.9v-4.4s4.2-.4 4.6-2.4c.5-2-5-2.2-5-2.2l-2.2-23-2 21.5-7.2 1s5 2.9 6 5.8c.8 2.8-6.2 2-6.2 2s5.7 4.8 6.1 6.5c.5 1.8-7.9 2.2-7.9 2.2s7 5 7.5 7.9c.4 2.8 0 4.4 0 4.4s-11.6-10.1-19-7.3c-4 2 8.8 3 17.2 10.3 0 1.7-20.5-5-21.2-.8.4 1.1 21.9 4.2 23.4 7-7.8.3-24-1.7-23.4.9-1.7 3 15.2 1.3 22.3 3.7 2.1 2.4 1.9 4.4-1.7 4.6-6.9-3.3-22.1-5.7-22.2-1.5.1 1 15.8.4 21.5 4.1-7.6 1.8-33.4-3.5-33.5-1 .7 1.3 4.8 6.5 11.8 6.3 7-.2 23.3 2.8 24.4 5 1 2.2-21.1-4.6-29.4-.6-8.4 4 23.9 1.5 29.1 6.3 5.3 4.9-10.5-.4-10.5-.4s-22-3-25.2-1.5c-3.3 1.5-7 5-7 5s2.2 4.4 4.4 3.5c2.2-.9-.7 2.7-.7 2.7s30.7 7.4 37.5 14c6.8 6.6-39-10.3-39-10.3s-18.5 6.8 1 7.2c-2.2 3.3 1.2 5.3 1.2 5.3s32.4 6.8 35.7 12c3.3 5.3-22.1-5-27.9-7.9-5.7-2.8-21.9 1.8-21.7 2.9.3 1 8 2.6 8.1 4.6.3 2-9.4 2.6-9.4 4.4 0 1.7 41 10.3 52 19.5s-32.2-11-32.2-11 2.4 3.3 0 4.2c-2.5.9-11-12.3-25-4.2-2.6 3.4 12.2 6 16 6.4-1.3 3.3-2.4 4.4 2.8 7.7s-10.3-4.8-10.3-4.4l1.1 5.7c-4.8-4-10.7-5.1-16.2-1.1 0 0-.2 4 5.5 6.4-3.1 6.3 3.5 4.3 14 10.3-15.6-4.1-16.9 3.5-5.7 5.2s41.9 2.9 49.1 12.3c7.3 9.4-10.3-3.6-12.3-4-.4.3-.8 4.9-.8 4.9-4.7-2.7-9-5.2-14.6-6.3-.5.9-.3 2.1-.8 3-5-3.7-9.5-6.2-16.9-6.6l-.9 3.5s-6.1-7.7-18.2 0c-6.7 4.9 25.5 1.8 30.7 7.5 5.3 5.7 1.1 6.6 1.1 6.6l-13.1-4.9s-15.6-2.8-20 .7 64 12 66 21.5c1.4 5-16-5.4-31.1-9.9l-1.8 5s-6-6-12.7-7c-.2 0 1.3 6 1.3 6s-16.8-8-25.4-3.8c-8.5 4.2 29.8 6.4 33.3 10.3 3.5 4-11.6-2.6-13 0-1.2 2.7-19.9-4.8-19.6-1.3.2 3.5 2.6 5.5 2.6 5.5s38.8 3.7 40.1 8.3c1.3 4.6-21.5-2.6-21.5-2.6s-2.2 3.3-.4 4.8c1.7 1.6-13.2-8.7-11.8-2-4.9-1.9-17.4-7.8-15.6-3.2 1.7 4.6 35.3 11.2 35.3 11.2s-14.7 1-14 4.8c-19-11.5-18.5-4.2-18-4 .4.2-24.4-6.1-5.7 4s10 8.3 10.3 8.5c.2.2 2 5 1.5 5-.4 0-12.7-6.5-16.9-7-4.1-.4-23.9 5.5-2.8 14.8s34-2.2 45.6-1c11.6 1.4 17 3.4 16 7-1.1 3.8-11.9-12.1-23.2 1.7-13-2.6-21.7-4-15 5.4-21-7.9-34 2.4-7.4 6.6 26 .8 42-6.4 42-6.4s4.5 8.1 10.8 2.4c6.4-5.7 6.6 2.2 6.8 2.2l6.2-2.6h1.5z"/>
+    <path fill="#fff" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".8" d="M316 320.2v-3.7s-8.2-1.5-12.3-.7c-2.3-1.3-4.6-3.1-7.5-1.6-.5 1.2 5.3 4.3 7.2 4.3a41.1 41.1 0 0012.7 1.7zm0 6s-8.3-3.1-11.6.4c.5 3.7 9.7 5.5 11.7 4.5 1.9-1 0-4.8-.1-5zm14 1.4v2.6s9.8 1.9 11.6-.2c1.7-2.1-8-3.5-11.7-2.4zm-.5-10.2l.3 2.9s8.6 1.9 11.9-2.8c3.3-4.7-7.5 0-12.2-.1zm.4-10v2s6.5 1 8-1.8c1.4-2.8-7.8 0-8-.2zm-13.4-6c-1-1.3-4.5-4.8-13.8-5.8-6.5 0 11.7 9.5 13.8 5.9zm13.2-9.7l-.2 2.7s22-6.6 27.1-6.1c4.6-1.3 5.6-4.5 5.4-4.5-4-2.9-22.9 2.3-32.3 7.9zm.5-7.8l-.3 2.6s15.5-3 19.7-6c4.1-3-19.2 3.5-19.4 3.4zm-.6-7.6v2.6s10.3-.4 12.5-2.4c1.3-2.1-9.2-.3-12.5-.2zm21.6 21.7s5.4.8 6.4-.8c-.2-2.8-6.4 1-6.4.8zM330 266.6l.1 5.7s24.9-7.9 26.5-9.3c1.5-1.5 5-6-26.6 3.6zm-.7-7.9v4.2s10-.8 14.6-4.5c4.6-3.8-14.6.4-14.6.3zm-12-9.3l.6 3.7-32.9-10.6c.1 0-1.6-5.4 32.3 6.9zm.5-13.3c0 .4 0 3.6-.2 3.5 0 0-22.8-9.5-23.7-8.7-3-7 24 5.4 24 5.2zm11.1 6l.4 3.1s14-2.9 14.8-4.3c.8-1.4-15.2 1.2-15.2 1.1zm.3 7.4c.2.7.4 3.3.4 3.3s5.6-.5 6.5-1.8c.8-1.3-6.9-1.5-6.9-1.5zm-.8-17v3s15.4-3 17-4.4c1.7-1.5-17.3 1.4-17 1.4zm0-8.5c0 .2-.5 3.1-.1 3.1s18.6-3 21.5-5.7c2.8-2.5-21 2.9-21.3 2.6zm-.2-14.9v3.3s11.8-2.5 14-5c2.2-2.5-14 2-14 1.7zm-2-21.6l.2 4.8s16-2.2 18.2-4.8c2.3-2.7-18.5 0-18.4 0zm-7.4-36.5v3s-7.5-.3-5.7-1.6 5.7-1.1 5.7-1.4zm7 4l.2 4.2s9.7-1 10.4-2.5c.8-1.5-10.4-1.6-10.6-1.6zm-.6 6s.2 2.6.4 2.6 3.9-.3 4.7-1.3c.8-1-4.7-1-5-1.3zm-8.2 11.8c0 .3.3 4 0 3.8s-21.2-6.1-23.2-6c-1.9 0-2.4-4.9 23.2 2.2zm1.7 6.9c0 .7.5 4.6-.3 4.4-.7-.2-14.3-4.5-12.9-5.8 1.4-1.3 13.2 1.7 13.2 1.4zm-1.2 29l.1 3.5s-23.7-7.2-24.5-8.4c-.8-1.2-3.1-6.8 24.4 4.9zm1 8.5v3.3l-32.2-11.3s-2.6-8.4 32.1 8z"/>
+    <path fill="#fff" stroke="#000" stroke-linejoin="round" stroke-width=".8" d="M280.3 328.7l-.2 3.5s-6.2-1.8-8.2-5.3c3.6-1 8.5 1.9 8.4 1.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ng.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ng.svg
new file mode 100644
index 0000000..42ee5ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ng.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ng" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#008753" d="M426.6 0H640v480H426.6zM0 0h213.3v480H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ni.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ni.svg
new file mode 100644
index 0000000..f77ed63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ni.svg
@@ -0,0 +1,129 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ni" viewBox="0 0 640 480">
+  <defs>
+    <linearGradient id="f" x1="498.7" x2="500.6" y1="289.1" y2="283.4" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#510000"/>
+      <stop offset=".3" stop-color="#8a0000"/>
+      <stop offset="1" stop-color="#a00"/>
+    </linearGradient>
+    <linearGradient id="g" x1="501.4" x2="502.9" y1="291.4" y2="287.4" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#ff2a2a"/>
+      <stop offset="1" stop-color="red"/>
+    </linearGradient>
+    <linearGradient id="b" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse">
+      <stop offset="0" stop-color="#F5F549"/>
+      <stop offset="1" stop-color="#97C924"/>
+    </linearGradient>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="#025"/>
+      <stop offset=".5" stop-color="#04a"/>
+      <stop offset="1" stop-color="#025"/>
+    </linearGradient>
+    <linearGradient id="h" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="v" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="o" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="p" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="q" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="r" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="u" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="x" x1="98.9" x2="125" y1="1440.2" y2="1440.2" gradientTransform="scale(4.45715 .22436)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="l" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="m" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="444.5" x2="634.4" y1="317.5" y2="317.5" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="s" x1="484.8" x2="484.8" y1="311.7" y2="317.6" gradientUnits="userSpaceOnUse" xlink:href="#b"/>
+    <linearGradient id="y" x1="47.9" x2="61.7" y1="3054.2" y2="3054.2" gradientTransform="scale(9.12405 .1096)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <clipPath id="ni-c">
+      <path d="M500 226.4l-63.7 110.3h127.4z"/>
+    </clipPath>
+  </defs>
+  <path fill="#0067c6" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path fill="#c8a400" d="M248 239.5l8 .5v-1.2l-3-.2.2-3.8 3.3-2.4.1-1.5-3.5 2.5c-.1-.8-.6-1.7-1.4-2-.8-.2-1.6-.2-2.3.3-.8.6-1 1.6-1 2.5l-.4 5.3zm1.2-1.1l.3-4c.1-.6.2-1.4.8-1.8a1 1 0 011.5.5c.4 1 .2 2.1.1 3.2l-.1 2.2-2.6-.1zm-.2-11.2l7.8 1.8 1.8-7.6a198 198 0 01-1.1-.2l-1.5 6.4-2.4-.5 1.4-5.8-1.1-.3-1.4 5.8-2-.5 1.4-6.2-1.2-.2-1.7 7.3zm2.8-10.5l7.6 2.7.4-1.1-3-1 1.2-3.5c.2-1 .4-2-.1-3a2.5 2.5 0 00-2-1c-1 0-1.6.7-2 1.5-.6 1-1 2.2-1.3 3.4l-.8 2zm1.5-.7l1.2-3.4c.3-.6.6-1.3 1.3-1.5a1 1 0 011.2.9c.2 1-.3 2-.6 3l-.7 1.9-2.4-.9zm2.7-9l4.3 2.6c.8.4 1.8.6 2.7.2a6.5 6.5 0 002.4-3c.4-1 .8-2.2.2-3.2-.6-1-1.7-1.4-2.7-2l-2.7-1.6-.6 1 4 2.4c.7.4 1.2 1 1.1 1.9a6 6 0 01-1.2 2.5c-.4.6-1.2 1.1-2 1-.8-.2-1.5-.8-2.2-1.2l-2.7-1.5-.6 1zm5.8-9.3l6.3 4.8 3-3.8c.6-.9 1-2 .7-3a2.5 2.5 0 00-2-1.4c-.5 0-1 .3-1.2.4.2-.9-.5-1.7-1.2-1.9-1-.3-2 .3-2.6 1l-2 2.5-1 1.4zm1.6-.3c.7-1 1.4-2 2.2-2.8.4-.4 1-1 1.5-.6.5.2.7.9.4 1.3-.4.9-1 1.5-1.6 2.3l-.8 1.1-1.7-1.3zm2.6 2l2.3-3c.4-.4 1-1 1.6-.8.6.1 1 .7.8 1.3-.3 1-1.1 1.8-1.8 2.7l-1 1.3-2-1.5zm3-10.2l5.5 5.8 4.7-4.5-.8-.8-3.8 3.6h-.1l-4.7-5zm7-6.2l4.9 6.3 1-.7-5-6.3zm7.2-4.9a6.7 6.7 0 00-2 1.8 3.6 3.6 0 00-.1 4.2 4.1 4.1 0 001.6 1.5 3.6 3.6 0 002 .4 6.5 6.5 0 002.7-1 5.4 5.4 0 002-2c.4-.8.5-1.6.3-2.4l-1 .4c.2 1.6-.8 2.4-2 3-1.8 1.2-3.5 1.1-4.6-.5-1.1-1.9 0-3.4 1.6-4.4 1.1-.7 2.2-1.2 3.2-.5l.9-.8a3.2 3.2 0 00-2-.6c-.9 0-1.7.4-2.6 1zm9.5-4.7l-.9 9 1.3-.5.2-2.8 4-1.6 2.2 1.8 1.2-.5-6.8-5.9-1.2.5zm1 1l2.7 2.2-3 1.2.3-3.5zm16.5-6l.5 8 4.3-.2c1.2-.2 2.4-.4 3.1-1.4 1-1 1.2-2.7.7-4.1a3.5 3.5 0 00-2.7-2.4c-1.2-.2-2.4 0-3.6 0l-2.3.2zm1.2 1.1l3.5-.1a3 3 0 011.8.5c.8.6 1.3 1.5 1.2 2.5a2.7 2.7 0 01-2 2.4c-.6.2-1.3.2-1.9.3l-2.2.1-.4-5.7zm10-1.5l-.5 8 7.8.4v-1.1l-6.6-.4.1-2.4 6 .3v-1.1l-5.9-.3.1-2.2 6.4.4v-1.2l-7.5-.4zm20.8 3.3l-2.9 7.5 1 .4 2.4-6v-.2l.2.3 2.8 8 1.3.5 2.9-7.5-1-.4-2.3 6-.1.2-.2-.3-2.7-8zM353 176l-3.7 7-1-.5 3.6-7.1zm6 3.5a6.7 6.7 0 00-2.4-1 3.6 3.6 0 00-4 1.5 4.1 4.1 0 00-.6 2.1c0 .7.1 1.4.6 2.1.4.7 1 1.3 2 2a6 6 0 002.7 1 3.5 3.5 0 002.2-.7l-.8-.9c-1.4 1-2.5.3-3.6-.4-1.8-1.2-2.5-2.8-1.4-4.5 1.2-1.8 3.1-1.3 4.7-.3 1 .7 2 1.5 1.8 2.7l1 .4a3.2 3.2 0 00-.3-2c-.4-.8-1-1.4-1.9-2zm7.6 5.7l-8.3 3.4 1 .9 2.6-1 3.3 2.8-.7 2.7 1 .9 2.1-8.8-1-.9zm-.3 1.4l-.8 3.4-2.5-2 3.3-1.4zm6.4 4.2l-6.2 5 .7 1 2.5-2 2.4 3-.7 4 .9 1.1.8-4.2c.7.5 1.7.8 2.5.4.7-.4 1.4-1 1.4-1.8 0-1.1-.7-2-1.3-2.8l-3-3.7zm-.2 1.6l2.6 3.2c.4.6.9 1.4.4 2-.3.6-1.1.6-1.6.2-1-.7-1.6-1.7-2.4-2.6l-1-1.1 2-1.7zm9.5 11.1l-9 .4.7 1.2 2.8-.1 2.2 3.8-1.6 2.3.7 1.2 4.9-7.6-.7-1.2zm-.7 1.2l-2 3-1.5-2.8 3.5-.2zm5.9 9.4c-.5-1.3-1.3-2.7-2.7-3.4a3.8 3.8 0 00-4.5 1c-1 1-1 2.5-.7 3.9.3 1.5 1 3 2 4.1l-.6.2.4 1.1 3.8-1.3-1.5-4.1-.8.3 1 3-1.2.5a7 7 0 01-2.1-3.8c-.3-1.1-.3-2.4.5-3.2 1-1 2.6-1.3 3.7-.5s1.7 2.1 2 3.4c.3.9.2 1.9-.4 2.6-.2 0 0 .3.1.4l.3.5a2.8 2.8 0 001.1-2.2 7 7 0 00-.4-2.5zm2.3 6.3l-4.5.8a4.1 4.1 0 00-1.9.8 2.5 2.5 0 00-.8 1.5v2.4c.3 1 .6 1.7 1 2.3.3.6.7 1 1.2 1a4 4 0 002 0l4.5-.8-.2-1.1-4.4.8c-2 .4-2.6-.6-3-2.4-.3-1.8 0-3 1.9-3.3l4.4-.9-.2-1.1zm2.4 13.6l-8.3-3.6.1 1.4 2.6 1 .3 4.4-2.4 1.5.1 1.3 7.7-4.7-.1-1.3zm-1.2.7l-3 1.9-.2-3.2 3.2 1.3zm-136.5 20l-1.2.3 1.3 4.9 1.2-.3zm131.6 0l1.2.3-1.3 4.9-1.2-.3zm-119.2 20.5l-9 1 .8 1.1 2.8-.3 2.4 3.6-1.4 2.5.8 1 4.3-7.8-.7-1.1zm-.7 1.3l-1.7 3-1.8-2.6 3.5-.4zm4.1 3.6l-5.7 5.3.8.8 4.8-4.5-2.6 7 1 .9 6.8-2-4.7 4.3.8.8 5.7-5.3-1.2-1.2-7 2 2.6-6.7zm8.3 8.4l-4.8 6.5 6.2 4.6.7-.9-5.3-4 1.5-2 4.7 3.7.7-1-4.7-3.5 1.3-1.7 5 3.8.7-1-6-4.5zm7.8 5.8l-3.7 7 1 .6 1.5-2.8 3.4 1.8.8 4 1.3.7-.9-4.2c.9.3 2 .1 2.5-.6.5-.6.9-1.3.6-2.1-.2-1-1.3-1.6-2.1-2.1l-4.4-2.3zm.5 1.5l3.6 2c.6.4 1.3.9 1.2 1.6 0 .7-.7 1-1.3.9-1.2-.2-2.2-.9-3.2-1.4l-1.5-.8 1.2-2.3zm8.6 3.2l-3 7.4 1 .5 3-7.4zm7.2 2.5a6.7 6.7 0 00-2.6-.4 3.6 3.6 0 00-3.4 2.6 4.1 4.1 0 000 2.1c0 .8.4 1.4 1 2a6 6 0 002.4 1.3 5.4 5.4 0 002.9.2 3.4 3.4 0 002-1.2l-1-.6c-1 1.3-2.3 1-3.6.5-2-.7-3.1-2-2.5-4 .7-2 2.7-2 4.4-1.5 1.2.4 2.3 1 2.4 2.1l1.2.2a3.2 3.2 0 00-.9-2 5.4 5.4 0 00-2.3-1.3zm8 1.8l-5.2 7.3 1.3.2 1.6-2.3 4.4.7.9 2.6 1.3.2-3-8.5-1.3-.2zm.5 1.3l1.2 3.4-3.2-.5 2-2.9zm18.3-1.2c-1 .1-1.7.4-2.4.9a3.6 3.6 0 00-1.7 3.9c.1.7.4 1.3 1 2 .4.5 1 .8 1.8 1 .7.2 1.7.2 2.8 0 1-.2 2-.6 2.6-1.2a3.4 3.4 0 001.1-2h-1.2c-.3 1.6-1.5 2-2.8 2.2-2.1.4-3.7-.3-4.1-2.3-.4-2.1 1.3-3.1 3-3.5 1.3-.2 2.5-.3 3.2.7l1-.4a3.2 3.2 0 00-1.6-1.3 5.4 5.4 0 00-2.7 0zm5.3-1l2.3 7.7 7.5-2.2-.4-1.1-6.3 1.9-.7-2.4 5.7-1.7-.3-1-5.7 1.6-.6-2 6-1.8-.3-1.1-7.2 2.1zm8.7-2.7l3.3 7.3 1-.5-2.8-6 7.8 3.5h.5l1-.5-3.4-7.3-1 .5 2.8 6-8-3.6-1.2.6zm8.8-4.1l.6 1 2.8-2h.2l3.7 5.7 1-.7-3.7-5.6v-.1l2.9-2-.6-.9zm8-5.6l5.4 6 .9-.9-2.1-2.3 2.8-2.6 4 .6 1.2-1-4.3-.6c.5-.7.7-1.8.2-2.6-.4-.7-1-1.3-1.9-1.2-1 0-2 .8-2.7 1.4l-3.5 3.3zm1.6.1l3-2.8c.6-.4 1.4-.9 2-.5.7.3.7 1.1.3 1.6-.6 1-1.5 1.7-2.4 2.6l-1.1 1-1.8-2zm7.7-9.4l3.6 8.3.8-1-1-2.6 2.7-3.4 2.7.6.9-1-8.8-2-.9 1.1zm1.4.3l3.5.7-2 2.5-1.5-3.2zm2.1-4.8l6.7 4.3 3.5-5.4-1-.6-2.7 4.3-.1.2h-.1l-5.7-3.8z"/>
+  <g clip-path="url(#ni-c)" transform="matrix(.8 0 0 .8 -80 0)">
+    <path fill="#fff" d="M500 226.4l-31.5 54.5-15.4 26.7h93.8l-14.7-25.4-32.2-55.8z"/>
+    <g id="e">
+      <g id="d">
+        <path fill="#17c0eb" stroke="#17c0eb" stroke-width=".1" d="M500 226.4l-2.4 4 2.4 55 2.4-55z" opacity=".6"/>
+        <path fill="#fff" d="M500 277.5h-.1l.1 3 .1-3h-.1z"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(72 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(144 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-144 500 285.5)" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-72 500 285.5)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(8 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(16 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(24 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(32 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(40 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(48 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(56 500 285.5)" xlink:href="#e"/>
+    <use width="100%" height="100%" transform="rotate(64 500 285.5)" xlink:href="#e"/>
+    <path fill="red" d="M500 265.8a44.2 44.2 0 00-29 10.8L456.4 302a45 45 0 00-.8 8.3h5a39.4 39.4 0 0178.7 0h5a45 45 0 00-.7-8.3L529 276.6a44.3 44.3 0 00-29-10.8z"/>
+    <path fill="#f60" d="M500 266.7a43.5 43.5 0 00-30.3 12.2l-12 20.9a43.6 43.6 0 00-1.3 10.4h4.3a39.4 39.4 0 0178.6 0h4.3a43.9 43.9 0 00-1.3-10.5l-12-20.8a43.5 43.5 0 00-30.3-12.2z"/>
+    <path fill="#ff0" d="M500 267.5a42.7 42.7 0 00-32 14.3l-8.7 15a42.7 42.7 0 00-2 13.5h3.3a39.4 39.4 0 0178.7 0h3.5c0-4.7-.8-9.2-2.1-13.4l-8.8-15.1a42.6 42.6 0 00-31.9-14.3z"/>
+    <path fill="#0f0" d="M500 268.3a42 42 0 00-34.9 18.6l-2.8 4.9a41.8 41.8 0 00-4.3 18.5h2.7a39.4 39.4 0 0178.6 0h2.7a41.8 41.8 0 00-4.3-18.5l-2.8-5a42 42 0 00-34.9-18.6z"/>
+    <path fill="#0cf" d="M500 269a41.2 41.2 0 00-41.2 41.3h1.9a39.4 39.4 0 0178.6 0h1.9A41.2 41.2 0 00500 269z"/>
+    <path fill="#00f" d="M500 269.8a40.4 40.4 0 00-40.4 40.4h1.4a39 39 0 1178 0h1.4A40.4 40.4 0 00500 270z"/>
+    <path fill="purple" d="M500 270.7a39.6 39.6 0 00-39.6 40.3h.8v-.8a38.8 38.8 0 1177.6.8h.8v-.8a39.6 39.6 0 00-39.6-39.6z"/>
+    <path fill="#510000" d="M500.4 288.1c-.7 0-1.2-.5-1.8-.6a2.2 2.2 0 00-.7 2.1c.3.1.3.4.9.9s.5.7.4 2c0 .4.1 1.5.6 1.6.5.1 1-.3 1.1-1.2.1-.7.4-1.2.7-1.6.3-1.9-.2-2.6-1.2-3.2z"/>
+    <path fill="red" d="M497.2 283.5c-.6 0-1.6 1-2 .5-.2-.3-.3-.9 0-1.4a4.8 4.8 0 012.2-2.3c2.3-1.4 3.9-1 5 1 1.1 1.8 2.2 3.8 2.3 5.4 0 .5.3 1.4-.2 1.9-1.3 1.4-4.6-1.5-6.5-1-.6.1-1.4.6-2 .2-.4-.3 0-1 .3-1.3.6-.5 1.5-2.4 1.4-3.2 0-.4 0 .2-.5.2z"/>
+    <path fill="url(#f)" d="M497 282.6c-1.2.4-1 1-1.6 1.5.2.1.8.3 1.4-.3.2-.2.5-.3.7-.3l-.7.7a5.2 5.2 0 00-1.4 1.8c-.3.8-.4 1.7-.3 1.8 0 0 .4.8 1.5 1.2 2 .8 2.4 2.5 4.5 2.5 1.6 0 1.4-1.1 2.7-.9 1 .2 1.7-.7.6-1.2a14 14 0 00-5.4 0c-.4-4 0-2.6-.1-4.4-.1-1.7-.7-1.8 0-3.3-.5 1-1.2.8-2 .8z"/>
+    <path fill="#ff2a2a" d="M501 279.8l-.1.6.3 1 .2 1c0 .3.4.4.7.6.4.3 0 1 .3 1.1.2 0 .5-1 .5-1.2v-.7a15.3 15.3 0 00-.5-.9 3.6 3.6 0 00-.2-.3 4.2 4.2 0 00-.8-.9 4 4 0 00-.3-.2l-.2-.1z"/>
+    <path fill="url(#g)" d="M501.3 287.4l-2-.7c-1.3-.4-2.6-1.2-3.5-.8-.3.1-.3.4-.4.9 0 .5-.5 1.3 0 1 .6-.4 2.4.8 3 1.1.3.2 1 .6 1.1 1 .2.6 0 1.8 0 2.4 0 .5.2 1.8.7 2 .6.1 1.1-.4 1.3-1.3.3-.9.4-1.4.8-1.9s.8-.8 1.3-.9c.6 0 1.4.5 1.4-.2 0-.4-.4-.8-.2-1.4.1-.5-.4-.4-.9-.6l-2.7-.6z"/>
+    <path fill="#910000" d="M498.4 288.9c-.4-.2-2.3-1.5-3-1-.3 0-.4 0-.4-.3l.2-.9c0-.3.2-.8.5-1 .7-.6 2.3.5 3.1.8l-.4 2.4z"/>
+    <path fill="#ff3a3a" d="M501.8 291.4c.9-1.6 1.5-1.4 2.6-1.4.4 0 .5-.3.4-.7-.3.6-1.7 0-2.5.3-1.5.7-1.2 3.7-2 4 .8.7 1.1-1.7 1.5-2.2z"/>
+    <g fill="url(#h)">
+      <path fill="#fff" d="M453.1 307.6l-10 17.3H557l-10-17.2h-93.8z"/>
+      <g id="n" fill="url(#i)">
+        <path id="k" fill="url(#j)" d="M449.7 321.4a36 36 0 00-4.7.3l-.5.9c2.4-.3 4.7-.7 7.2-.7 3.2 0 6.2.8 9.7.8h4.6c3.5 0 6.4-.8 9.7-.8 3.3 0 6.3.8 9.8.8h4.6c3.5 0 6.4-.8 9.7-.8 3.3 0 6.3.8 9.8.8h4.5c3.5 0 6.5-.8 9.8-.8 3.3 0 6.3.8 9.8.8h4.5c3.5 0 6.5-.8 9.8-.8 2.6 0 5 .5 7.5.7l-.5-1a38 38 0 00-4.4-.2h-4.5c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8H522c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8H498c-3.5 0-6.5.7-9.8.8-3.3 0-6.3-.8-9.8-.8h-4.5c-3.5 0-6.5.7-9.8.8-3.3 0-6.2-.8-9.7-.8h-4.6z"/>
+        <use width="100%" height="100%" y="-1.1" fill="url(#l)" xlink:href="#k"/>
+        <use width="100%" height="100%" y="-2.2" fill="url(#m)" xlink:href="#k"/>
+      </g>
+      <use width="100%" height="100%" y="-3.3" fill="url(#o)" xlink:href="#n"/>
+      <use width="100%" height="100%" y="-6.7" fill="url(#p)" xlink:href="#n"/>
+      <path fill="url(#q)" d="M453.2 307.5v.2h93.7l-.1-.2h-93.6zm-.2.3l-.1.3H547l-.1-.3h-94zm-.2.4l-.2.3h94.8l-.2-.3h-94.4zm-.3.5l-.3.5h95.6l-.3-.5h-95zm-.4.7l-.3.5h96.4l-.3-.5h-95.8zm-.4.7l-.2.4h97l-.2-.4h-96.6zm-.4.7l-.2.4H549l-.3-.4h-97.4zm-.4.7l-.3.6h98.8l-.3-.6H451z"/>
+      <path fill="url(#r)" d="M457.4 312.3c3.4.7 3.7 0 3.7 0zm81.5 0s.3.7 3.7 0z"/>
+    </g>
+    <g fill="#ccd11e">
+      <g id="t">
+        <path fill="url(#s)" d="M530.6 297c-1.7 0-2.2.9-2.2.9-2.7 10.6-11.8 21.3-22.6 21.3h-8V330h61.4l-6.2-11c-9.7-1.4-17.6-11.3-20.1-21.1 0 0-.6-.9-2.3-.9z"/>
+        <path fill="#97c924" d="M530.6 297.5c-.8 0-1.2.1-1.5.3l-.3.3a33.6 33.6 0 01-8.4 14.7c-4 4.1-9 6.9-14.6 6.9h-7.7v9.9H559l-5.7-10c-4.7-.7-9-3.2-12.4-6.8a33.6 33.6 0 01-8.4-14.7l-.3-.3a2.8 2.8 0 00-1.6-.3z"/>
+        <path fill="#ede71f" d="M530.6 297.5h.4v10.8a13 13 0 01-2 6.4c-.5 1.6-1 1-2.3 2.9a25.4 25.4 0 01-5.2 1.2c-2.5.4-8 .8-10.9.1a23 23 0 009.8-6 30.6 30.6 0 002.1-2.5 33.7 33.7 0 003-4.4l1-2a33.9 33.9 0 001.3-2.9 29.8 29.8 0 001-3l.3-.3.6-.2 1-.1z"/>
+        <path fill="#c6cb24" d="M530 298.9c-.5 6-2.3 13.2-6.7 17.8-1.6 1.3-3.7 2.6-5.6 2.3 6.7-5.5 10.8-14 12.2-20.1z"/>
+        <path fill="#9ecb34" d="M524.5 309.3c-1 2.7-4.8 6.7-8.8 10h-2.9c2.5-.2 8.3-5 11.7-10z"/>
+      </g>
+      <use width="100%" height="100%" x="-15.3" xlink:href="#t"/>
+      <g fill="#c6cb24">
+        <path fill="url(#u)" d="M502.2 298c2.8 10.5 11.8 21.2 22.6 21.2h8.1V330h-65.8v-10.8h8c10.8 0 19.9-10.7 22.6-21.3 0 0 .6-.8 2.3-.8 1.7 0 2.2.8 2.2.8z"/>
+        <path fill="#97c924" d="M500 297.5c.8 0 1.2.2 1.5.3l.3.3a33.6 33.6 0 008.4 14.7c4 4.1 9 6.9 14.6 6.9h7.7v9.9h-65v-10h7.7c5.5 0 10.6-2.7 14.6-6.8a33.6 33.6 0 008.3-14.7l.3-.3a3 3 0 011.6-.3z"/>
+        <path fill="#ede71f" d="M499.3 297.5a3.4 3.4 0 00-.3 0l-.6.3-.3.3a28.9 28.9 0 01-1 3 34.2 34.2 0 01-1.2 3 34.2 34.2 0 01-1 1.9 33.6 33.6 0 01-3 4.4 30.7 30.7 0 01-2.1 2.4 23 23 0 01-9.8 6.1c2.8.7 4 0 6.5-.4 2-.3 4.2-.6 6-1.2 1.5-2 1-1.3 1.5-2.9 1.2-2.2 3-4.2 3.4-6.7 1.6-3 1.9-8.6 1.9-10.2z"/>
+        <path d="M499.3 298.9c-.4 6-2.3 13.2-6.7 17.8-1.6 1.3-3.6 2.6-5.6 2.3 6.8-5.5 10.9-14 12.3-20.1z"/>
+        <path fill="#9ecb34" d="M493.8 309.3a31 31 0 01-8.8 10h-2.8c2.5-.2 8.2-5 11.6-10z"/>
+        <path fill="#ede71f" d="M501 297.6l.5.2.4.3a32.3 32.3 0 001 3 33.6 33.6 0 001.2 3l1 1.9a33.6 33.6 0 003 4.4 30.7 30.7 0 002.1 2.4 24 24 0 009.8 6.5c-7.3 0-10.4-.6-13-4a19 19 0 01-4.2-7c-.5-2-2-6.5-1.9-10.7z"/>
+        <path d="M501.5 298.9c.4 6 2.2 12 6.6 16.6 1.6 1.4 3.6 2.6 5.6 2.3a31.1 31.1 0 01-12.2-18.9z"/>
+      </g>
+      <g id="w">
+        <path fill="url(#v)" d="M484.8 297c-1.8 0-2.3.9-2.3.9-2.5 9.8-11.8 22.3-21.5 23.8l-4.8 8.3h49v-11.3c-8.8-2.4-15.9-11.7-18.2-20.8 0 0-.5-.8-2.3-.8z"/>
+        <path fill="#97c924" d="M484.8 297.5c-.8 0-1.3.2-1.6.3l-.3.3a43.4 43.4 0 01-8.1 15c-3.4 4.3-9.7 8.6-14 9l-4.3 7.5h48v-10.7a23.2 23.2 0 01-9.5-6 33.6 33.6 0 01-8.4-14.8l-.3-.3a2.9 2.9 0 00-1.5-.3z"/>
+        <path fill="#93bc30" d="M483.4 298.9c-.6 9-5.6 20.5-11.3 22.4-1.9.7-5.1.9-6.2 1a36 36 0 0017.6-23.4z"/>
+        <path fill="#ede71f" d="M484.8 297.5h-.5v10.8c0 2.3.9 4.2 2 6.4l.2.5c.5 1.1.8 1.5 2.3 2.7a22 22 0 0014.8 4c-1.1-.9-2.3-1.7-3.4-2.4l4.5-.5a23 23 0 01-9.7-6.2 30.5 30.5 0 01-1.4-1.5l-.6-.8a35 35 0 01-3.2-4.5 34.2 34.2 0 01-1-2 34 34 0 01-1.6-3.9 31.7 31.7 0 01-.6-2l-.3-.3a2.2 2.2 0 00-.6-.2 3.6 3.6 0 00-1-.1z"/>
+        <path d="M485.4 298.9c.5 6 2.3 13.2 6.7 17.8 1.6 1.3 3.6 2.6 5.6 2.3a38.5 38.5 0 01-12.3-20.1z"/>
+        <path fill="#9ecb34" d="M489.6 307.3a35 35 0 0014.6 14.9h2.5c-4.4-2.4-11.5-5.8-17-15z"/>
+      </g>
+      <use width="100%" height="100%" x="-15.4" fill="#c6cb24" xlink:href="#w"/>
+    </g>
+    <path fill="#fff" d="M556.5 324.7c-.6.2-4.4-.2-6.4 0l-1.3.3h-3.3c-3.6 0-6.7 1-10.1 1-3.4 0-6.5-1-10-1H522c-3.6 0-6.7 1-10.1 1-3.4 0-6.5-1-10-1h-3.4c-3.6 0-6.7 1-10 1-3.5 0-6.5-1-10.1-1H475c-3.6 0-6.6 1-10 1-3.5 0-6.5-1-10.1-1h-3.4c-2.8 0-6.2.6-8.9.8l-6.3 10.9h127.4z"/>
+    <path fill="url(#x)" d="M548 323.1h-.6c-3.2.1-5.6 1.1-11.2 1.1s-6.2-1-12.6-.8c-6 0-8.4 1.2-11.7 1.2-3.2 0-8.4-.7-12.5-.3-4 .4-8.8 1.3-12 1.3-3.9 0-7.8-.7-11.8-.3-4.1.4-6 1.5-11.1 1.5-4.4 0-9-.7-12.8-.7-3.4 0-7.2 1-10 1.4l-.9 1.5c2.3-.3 8.6-1.3 10.8-1.3 2.4 0 10.7.5 15.3.3 4.7-.1 5.2-1.2 10.7-1.2 3.8 0 6.6.4 10.5.4 2.5 0 4.7-1.2 8.4-1.2l2.8-.1c3.1-.5 8.4 0 12 .2 3.3.2 5.5-.6 9-.7l4.4-.1c3.5-.2 6.4.6 9.7.6 3.2-.2 6.4-1 9.8-1l4.5-.2c2.3 0 5.9 0 8.3.5l-.8-1.4c-2.4-.1-5.3-.7-8.2-.7z"/>
+    <g id="A">
+      <path id="z" fill="url(#y)" d="M450.3 334.8c-3.4 0-6.4.8-9.6.9a31.8 31.8 0 01-3.6-.3l-.5.8h6c3.5 0 6.4-.8 9.6-.9 3.3.1 6.2 1 9.7 1h4.5c3.4 0 6.4-.9 9.6-1 3.3.1 6.3 1 9.7 1h4.5c3.5 0 6.4-.9 9.7-1 3.2.1 6.1 1 9.6 1h4.5c3.4 0 6.4-.9 9.7-1 3.2.1 6.2 1 9.6 1h4.5c3.5 0 6.4-.9 9.6-1 3.3.1 6.2 1 9.7 1h4.5l1.8-.1-.5-.8c-1 .1-2.1.3-3.2.3-3.3 0-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.5 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5c-3.4 0-6.4 1-9.6 1-3.3-.1-6.2-1-9.7-1h-4.5z"/>
+      <use width="100%" height="100%" y="-1.3" xlink:href="#z"/>
+      <use width="100%" height="100%" y="-2.6" xlink:href="#z"/>
+    </g>
+    <use width="100%" height="100%" y="-3.9" xlink:href="#A"/>
+    <use width="100%" height="100%" y="-7.7" xlink:href="#A"/>
+    <path fill="#97c924" d="M443.9 324.7l-2.5 4.2c2.9-.5 7.1-1.7 10.7-1.7 3.6 0 8 .9 12.4 1 5 0 7-1.2 11-1.6 4.1-.4 8 .5 12 .6 3.1 0 7.9-1.1 12-1.5 4-.5 7.7.3 12.5.3 4.9.1 5.7-1.2 11.6-1.3 6.4-.1 7 .9 12.6.9 4.2.2 7.9-.9 11.7-1.1 3.8-.3 5.5 0 8.3 0l-1.9-3.2-101.3 2.3z"/>
+    <path fill="#fff" d="M550 324.6l4 .3a91.4 91.4 0 002.9.3l-.4-.5c-.6.2-4.4-.2-6.4 0z"/>
+  </g>
+  <path fill="#c8a400" d="M320 179.9l-25.7 44.5L268 270h104l-25.7-44.6L320 180zm0 2.4l25.2 43.7 24.7 42.8h-99.8l25.2-43.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nl.svg
new file mode 100644
index 0000000..2026937
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nl.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nl" viewBox="0 0 640 480">
+  <path fill="#21468b" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v320H0z"/>
+  <path fill="#ae1c28" d="M0 0h640v160H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/no.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/no.svg
new file mode 100644
index 0000000..56e78e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/no.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-no" viewBox="0 0 640 480">
+  <path fill="#ed2939" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M180 0h120v480H180z"/>
+  <path fill="#fff" d="M0 180h640v120H0z"/>
+  <path fill="#002664" d="M210 0h60v480h-60z"/>
+  <path fill="#002664" d="M0 210h640v60H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/np.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/np.svg
new file mode 100644
index 0000000..4e151e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/np.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-np" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="np-a">
+      <path fill-opacity=".7" d="M0-16h512v512H0z"/>
+    </clipPath>
+  </defs>
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <g clip-path="url(#np-a)" transform="translate(0 15) scale(.9375)">
+    <g fill-rule="evenodd">
+      <path fill="#ce0000" stroke="#000063" stroke-width="13.8" d="M6.5 489.5h378.8L137.4 238.1l257.3.3L6.6-9.5v499z"/>
+      <path fill="#fff" d="M180.7 355.8l-27 9 21.2 19.8-28.5-1.8 11.7 26.2-25.5-12.3.5 28.6-18.8-20.9-10.7 26.6-9.2-26.3-20.3 20.6 1.8-27.7L49 409l12.6-25-29.3.6 21.5-18.3-27.3-10.5 27-9L32.2 327l28.4 1.8L49 302.6l25.6 12.3-.5-28.6 18.8 20.9 10.7-26.6 9.1 26.3 20.4-20.6-1.9 27.7 27-11.4-12.7 25 29.4-.6-21.5 18.3zm-32.4-184.7l-11.3 8.4 5.6 4.6a93.8 93.8 0 0030.7-36c1.8 21.3-17.7 69-68.7 69.5a70.6 70.6 0 01-71.5-70.3c10 18.2 16.2 27 32 36.5l4.7-4.4-10.6-8.9 13.7-3.6-7.4-12.4 14.4 1-1.8-14.4 12.6 7.4 4-13.5 9 10.8 8.5-10.3 4.6 14 11.8-8.2-1.5 14.3 14.2-1.7-6.7 13.2 13.7 4z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nr.svg
new file mode 100644
index 0000000..cfdc0d1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nr.svg
@@ -0,0 +1,12 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nr" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="nr-a">
+      <path fill-opacity=".7" d="M-54.7 0H628v512H-54.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#nr-a)" transform="translate(51.3) scale(.9375)">
+    <path fill="#002170" d="M-140 0H884v512H-140z"/>
+    <path fill="#ffb20d" d="M-140 234.1H884V278H-140z"/>
+    <path fill="#fff" d="M161.8 438l-33-33-10.5 45.4-12-45-31.9 34 12.1-45L42 407.9l33-33-45.4-10.6 45-12-34-31.8 45 12L72 288l33 33 10.6-45.4 12 45 31.8-34-12 45 44.5-13.5-33 33 45.4 10.5-45 12 34 32-45-12.2z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nu.svg
new file mode 100644
index 0000000..b38585e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nu.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-nu" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="nu-a">
+      <path fill-opacity=".7" d="M0 0h496v372H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#nu-a)" transform="scale(1.2902)">
+    <path fill="#fff" fill-rule="evenodd" d="M0 0h499.6v248.1H0z"/>
+    <path fill="#c00" d="M0 0v18.6L119.2 80l44.9 1.3L0 0z"/>
+    <path fill="#006" d="M51 0l144.6 75.5V0H51z"/>
+    <path fill="#c00" d="M214.9 0v96.4H0v55h215v96.4h66v-96.4h215v-55H281V0h-66z"/>
+    <path fill="#006" d="M300.2 0v71.1L441.6.6 300.2 0z"/>
+    <path fill="#c00" d="M304.7 78.9l39.8-.3L498.9.6l-41 .6L304.8 79z"/>
+    <path fill="#006" d="M0 167.5v52.8L99.2 168 0 167.6z"/>
+    <path fill="#c00" d="M381.9 169.7l-41.4-.3 155.8 77.5-1-17.7-113.5-59.5zM38.7 248.3l146.1-76.8-38.3.3L0 248.1"/>
+    <path fill="#006" d="M497.9 21.8l-118 58.5 116.4.5v87.1h-99.1l98.2 53.3 1.4 27-52.4-.6-143.6-70.5v71.2H196V177L61.3 248l-60.9.2V496H992V.4L499 0M.6 28L0 79.4l104.4 1.3L.5 28z"/>
+    <g fill="#ffd900" fill-rule="evenodd" stroke-width="1pt">
+      <path d="M496 0h496.1v496h-496z"/>
+      <path d="M0 248h523.5v248H0z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#000067" d="M290.9 125.3a42.8 42.8 0 11-85.5 0 42.8 42.8 0 0185.5 0z"/>
+      <path fill="#fff40d" d="M240.2 114.3l8.2-24.6 8.2 24.6h26.7l-21.6 15.2L270 154l-21.6-15.3-21.6 15.2 8.3-24.5-21.6-15.2zm148.5 4l4.1-11.5 4 11.6h13.3l-10.7 7 4.1 11.5-10.7-7-10.7 7 4.1-11.5-10.7-7zM244.1 204l4-11.5 4.1 11.5h13.2l-10.7 7 4.1 11.6-10.7-7.1-10.7 7 4.1-11.4-10.7-7.1zm0-167l4-11.6 4.1 11.5h13.2L254.7 44l4.1 11.5-10.7-7-10.7 7 4.1-11.5-10.7-7zM98.9 118.2l4.1-11.5 4 11.5h13.3l-10.7 7.1 4.1 11.5-10.7-7-10.7 7 4.1-11.5-10.7-7z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nz.svg
new file mode 100644
index 0000000..ba7cac0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/nz.svg
@@ -0,0 +1,41 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-nz" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="nz-c">
+      <path d="M0 0h600v300H0z"/>
+    </clipPath>
+    <clipPath id="nz-d">
+      <path d="M0 0l300 150H0zm300 0h300L300 150zm0 150h300v150zm0 0v150H0z"/>
+    </clipPath>
+    <g id="b">
+      <g id="a">
+        <path d="M0 0v.5L1 0z" transform="translate(0 -.3)"/>
+        <path d="M0 0v-.5L1 0z" transform="rotate(-36 .5 -.2)"/>
+      </g>
+      <use transform="scale(-1 1)" xlink:href="#a"/>
+      <use transform="rotate(72 0 0)" xlink:href="#a"/>
+      <use transform="rotate(-72 0 0)" xlink:href="#a"/>
+      <use transform="scale(-1 1) rotate(72)" xlink:href="#a"/>
+    </g>
+  </defs>
+  <path fill="#00247d" fill-rule="evenodd" d="M0 0h640v480H0z"/>
+  <g transform="translate(-93 36.1) scale(.66825)">
+    <use width="100%" height="100%" fill="#fff" transform="matrix(45.4 0 0 45.4 900 120)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="matrix(30 0 0 30 900 120)" xlink:href="#b"/>
+  </g>
+  <g transform="rotate(82 534.2 125) scale(.66825)">
+    <use width="100%" height="100%" fill="#fff" transform="rotate(-82 519 -457.7) scale(40.4)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="rotate(-82 519 -457.7) scale(25)" xlink:href="#b"/>
+  </g>
+  <g transform="rotate(82 534.2 125) scale(.66825)">
+    <use width="100%" height="100%" fill="#fff" transform="rotate(-82 668.6 -327.7) scale(45.4)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="rotate(-82 668.6 -327.7) scale(30)" xlink:href="#b"/>
+  </g>
+  <g transform="translate(-93 36.1) scale(.66825)">
+    <use width="100%" height="100%" fill="#fff" transform="matrix(50.4 0 0 50.4 900 480)" xlink:href="#b"/>
+    <use width="100%" height="100%" fill="#cc142b" transform="matrix(35 0 0 35 900 480)" xlink:href="#b"/>
+  </g>
+  <path stroke="#fff" stroke-width="60" d="M0 0l600 300M0 300L600 0" clip-path="url(#nz-c)" transform="scale(.60681 .73139)"/>
+  <path stroke="#cc142b" stroke-width="40" d="M0 0l600 300M0 300L600 0" clip-path="url(#nz-d)" transform="scale(.60681 .73139)"/>
+  <path fill="#fff" d="M151.7 0v79.4H0V140h151.7v79.4h60.7v-79.3H364V79.4H212.4V0z" clip-path="url(#nz-c)" color="#000" font-family="sans-serif" font-weight="400" overflow="visible" style="line-height:normal;text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;block-progression:tb;isolation:auto;mix-blend-mode:normal"/>
+  <path fill="#cc142b" d="M163.8 0v91.5H0v36.4h163.8v91.5h36.4V128h163.9V91.5H200.2V0z" color="#000" font-family="sans-serif" font-weight="400" overflow="visible" style="line-height:normal;text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;block-progression:tb;isolation:auto;mix-blend-mode:normal"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/om.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/om.svg
new file mode 100644
index 0000000..68fe15d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/om.svg
@@ -0,0 +1,115 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-om" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="om-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#om-a)">
+    <path fill="#ef2d29" fill-rule="evenodd" d="M-3.3-21.6H699v553H-3.3z"/>
+    <path fill="#009025" fill-rule="evenodd" d="M174.6 317.3h535.7V525H174.6z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M174.6-35.4h564.9v190h-565z"/>
+    <g stroke="#ef2d28">
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19848 0 0 .17744 111.3 -13.4)">
+        <rect width="138.2" height="85" x="17.7" y="467.7" stroke-width="1.4" rx="11.3" ry="11.8"/>
+        <rect width="131.1" height="78" x="21.3" y="471.3" stroke-width="1.3" rx="10.7" ry="10.9"/>
+        <path stroke-width="1.3" d="M65 396l9.7.5.4 5.8 8 5.3 6.2-6.7 7.5 5.3-7 5.8 1.7 8 8.8-.5V430l-7-.4-3.6 6.6 8 7.5-6.2 6.2-6.7-6.6-9.7 2.6.5 9.7-10.6 1-1.4-9.4-8.8-4.8-4.9 6.6-7.5-4.9 4.4-7.5-5.3-4.8H34l-.4-13.7 7.5.9 5.3-8-6.2-6.2 8-7 5.7 5.7 9.7-1.8L65 396z" transform="matrix(.68108 0 0 .5852 38 260.7)"/>
+        <ellipse cx="68.9" cy="426.8" stroke-width="1.3" rx="11.1" ry="9.9" transform="matrix(.65819 0 0 .70224 38.8 209.6)"/>
+        <path stroke-width="1.3" d="M39 474.8l-10.7 10.6m17.8-10.6l-10.7 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6L78 485.4m17.7-10.6L85 485.4m17.8-10.6L92 485.4m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m-17.7-10.6L78 485.4m46-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m0-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.7 10.6M85 474.8l10.6 10.6m-17.8-10.6l10.7 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6M85 474.8l10.6 10.6m-46-10.6l10.5 10.6m-17.7-10.6l10.7 10.6m-17.8-10.6L46 485.4m-17.8-10.6L39 485.4m0 49.6l-10.6 10.7M46 535l-10.7 10.7M53.2 535l-10.7 10.7M60.2 535l-10.6 10.7M67.3 535l-10.6 10.7M74.4 535l-10.6 10.7M81.5 535L71 545.7M88.6 535L78 545.7M95.7 535L85 545.7m17.7-10.7L92 545.7m18-10.7l-10.7 10.7M117 535l-10.6 10.7M88.6 535L78 545.7m46-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m0-10.7l10.6 10.7M127.6 535l10.6 10.7M120.5 535l10.6 10.7M113.4 535l10.6 10.7M106.3 535l10.6 10.7M99.2 535l10.7 10.7M92 535l10.7 10.7M85 535l10.6 10.7M78 535l10.6 10.7M70.9 535l10.6 10.7M63.8 535l10.6 10.7M56.7 535l10.6 10.7M85.1 535l10.6 10.7m-46-10.7l10.5 10.7M42.5 535l10.7 10.7M35.4 535l10.7 10.7M28.4 535L39 545.7"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19848 0 0 .17744 19.1 -14)">
+        <rect width="138.2" height="85" x="17.7" y="467.7" stroke-width="1.4" rx="11.3" ry="11.8"/>
+        <rect width="131.1" height="78" x="21.3" y="471.3" stroke-width="1.3" rx="10.7" ry="10.9"/>
+        <path stroke-width="1.3" d="M65 396l9.7.5.4 5.8 8 5.3 6.2-6.7 7.5 5.3-7 5.8 1.7 8 8.8-.5V430l-7-.4-3.6 6.6 8 7.5-6.2 6.2-6.7-6.6-9.7 2.6.5 9.7-10.6 1-1.4-9.4-8.8-4.8-4.9 6.6-7.5-4.9 4.4-7.5-5.3-4.8H34l-.4-13.7 7.5.9 5.3-8-6.2-6.2 8-7 5.7 5.7 9.7-1.8L65 396z" transform="matrix(.68108 0 0 .5852 38 260.7)"/>
+        <ellipse cx="68.9" cy="426.8" stroke-width="1.3" rx="11.1" ry="9.9" transform="matrix(.65819 0 0 .70224 38.8 209.6)"/>
+        <path stroke-width="1.3" d="M39 474.8l-10.7 10.6m17.8-10.6l-10.7 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6L78 485.4m17.7-10.6L85 485.4m17.8-10.6L92 485.4m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m-17.7-10.6L78 485.4m46-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m17.7-10.6l-10.6 10.6m0-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.7 10.6M85 474.8l10.6 10.6m-17.8-10.6l10.7 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6m-17.7-10.6l10.6 10.6M85 474.8l10.6 10.6m-46-10.6l10.5 10.6m-17.7-10.6l10.7 10.6m-17.8-10.6L46 485.4m-17.8-10.6L39 485.4m0 49.6l-10.6 10.7M46 535l-10.7 10.7M53.2 535l-10.7 10.7M60.2 535l-10.6 10.7M67.3 535l-10.6 10.7M74.4 535l-10.6 10.7M81.5 535L71 545.7M88.6 535L78 545.7M95.7 535L85 545.7m17.7-10.7L92 545.7m18-10.7l-10.7 10.7M117 535l-10.6 10.7M88.6 535L78 545.7m46-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m17.7-10.7l-10.6 10.7m0-10.7l10.6 10.7M127.6 535l10.6 10.7M120.5 535l10.6 10.7M113.4 535l10.6 10.7M106.3 535l10.6 10.7M99.2 535l10.7 10.7M92 535l10.7 10.7M85 535l10.6 10.7M78 535l10.6 10.7M70.9 535l10.6 10.7M63.8 535l10.6 10.7M56.7 535l10.6 10.7M85.1 535l10.6 10.7m-46-10.7l10.5 10.7M42.5 535l10.7 10.7M35.4 535l10.7 10.7M28.4 535L39 545.7"/>
+      </g>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M538.6 531.5c1.7 166.6 24.8 202 3.5 202s-31.9-92.1-31.9-205.5 14.2-205.5 35.5-205.5-9 31.9-7.1 209z" transform="matrix(-.32136 -.12684 -.20158 .20221 345.9 61.4)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.2" d="M545.7 779.5l-60.3 17.7c56.7 60.3 120.5 85 138.2 74.4 17.7-10.6-31.9-35.4-78-92z" transform="matrix(-.19848 0 0 .17744 145.3 -13.4)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M547.3 786.9l-51 14.7c56.7 60.3 112.8 77.4 127.3 70 14.6-7.3-30.3-28-76.3-84.7z" transform="matrix(-.19334 0 0 .17062 142.8 -8.1)"/>
+      <path fill="none" stroke-width="1.8" d="M353.1 634.2c.2 1.3.8 7.1 1.3 9.4 0 3.2.3 5.6.6 8.1.8 2.2.7 4.2 3.1 5a9.9 9.9 0 005 4.4 27.7 27.7 0 006.3 3.8 11.6 11.6 0 007.5.6c2.2-1.5 3.8-3.1 5.6-4.4.4-2 .8-4.9 1.3-6.9a32.6 32.6 0 00-1.3 8.2c.2 3 1.3 4.4 2.5 6.8" transform="matrix(-.13978 0 0 .12414 123 20.4)"/>
+      <path fill="none" stroke-width="1.8" d="M389.4 681.7l.6-.6c-1.5 1.5-.9.8 2.5-1.3 2.4-1.2 5-1.8 8.1-2.4h8.8c3.4 0 5.7.5 8.1 1.2 1.8 1.8 4.4 2.8 6.3 4.4a11 11 0 013.7 5c1.7 1.7 2.8 4.3 4.4 5.6.7 2.9 2.1 2.8 3.1 5-3 .2-5.3.6-6.9 2.5-2.6 1.3 2.2-1.3 3.2-2.5 2-.6 2.5-1.2 5.6-1.2 2.8-1 4.6.7 7.5 1.2 1.7 1 2.2 1.3 4.4 1.3" transform="matrix(-.13978 0 0 .12414 124.9 19.7)"/>
+      <path fill="none" stroke-width="1.8" d="M438.1 724.9c1.3 0 7.1 1.1 9.4 0 2.6-.7 4-2 5.6-4.4.8-1.7 0 3 0 5 .3 3.7 1.4 3.7 3.2 6.2 1.8 1.2 3.7 2.8 5.6 3.8a18 18 0 005.6 3.1c2 1 4.1 1.8 5.6 3.1 2.1 1.5 2 3.3 3.2 5.7-.3 3-.8 4.8-2.5 6.2-.8 2.1-2.4 4.2-3.8 5.6-1.5 3-3.3 4.3.6 5 2.2 1 3.4.2 5.7 0" transform="matrix(-.13978 0 0 .12414 127 18.2)"/>
+      <path fill="none" stroke-width="1.8" d="M480.6 771.7c1.6-.4 7-2.2 9.4-3.1h8.8c3.3.3 4 1.3 6.8 2.5 1.9 1.9 3.1 3.2 5.7 4.4 1.3 1.7 4 4.7 5 6.9a25.5 25.5 0 011.2 8c0 3.7-1 4.4-1.2 7.6a19.3 19.3 0 01-3.8 7.5c-.3.8-.5 1-1.2 1.2" transform="matrix(-.13978 0 0 .12414 127.4 17.8)"/>
+      <path fill="none" stroke-width="2.3" d="M538.1 818c.4 0 1.2 2 2.5 3.7 2.9 3 3.2 3.2 7.5 3.2 4-.2 3.5-1.6 6.3-2.5 1.3-2 2.9-3.6 4.4-6.3 1-1.6 1.9-4.1 3-5.6 1.2-1.9 2.6-3.3 3.8-5 1.2-.5 1.6-1 3.2-1.3-3.6.6-4 1.9-6.3 3.8a58.9 58.9 0 00-3.1 5.6c-.4 2.7-1.2 4.8-1.3 8.1 0 3.5 0 5.9 1.3 8.8 1.5 1.5 2.5 3.1 4.4 4.4a36.7 36.7 0 014.3 5l5.7 3.7c1.8 1.1 3.9 2.2 6.8 2.5 3.7-.3 4.8-1.3 7.5-2.5 2.4-1.7 4.2-2.8 6.3-4.4a21 21 0 004.4-5c3.3-.8 5.5-.5 7.5 1.3a16.5 16.5 0 014.3 4.4c1 .5 2.8 2 3.8 2.5" transform="matrix(-.09924 0 0 .09799 109.5 38.8)"/>
+      <path fill="none" stroke-width="1.9" d="M503.8 836.1c-.8.3-3.8 2.4-5 3.1-.8 2.7-2.1 4.1-2.5 7-.7 2.6-.7 5.6-.7 8.7.7 3.2 2 5.5 3.2 8 2 1.4 3 2.4 5.6 3.8 2.5.4 5 .7 8.1.7 2 .6 5.6.9 7.5 0 2.8-.4 4.9-1.5 6.9-2.5 2.3-1.3 3.7-2.6 6.2-3.8 1.3-1.8 3.2-3.5 5-5.6 1.6-2.1 2.7-3.3 3.8-5.6-1 2.6-2.3 5-3.1 7.5-1.5 2.6-2.3 3.6-2.5 6.8-1 2.6-.7 5.8-.7 8.8.3 2 .4 5.8 1.3 7.5v1.9" transform="matrix(-.12338 0 0 .12229 111.4 19.3)"/>
+      <path fill="none" stroke-width="1.2" d="M541.3 799.2v.7c0-1.7 0-.9-.7 2.5-1.1 1.4-4 1.8-6.2 1.2-2-1.7-2-3-5.6-3.7-3.6.2-5 1.2-7 2.5a9.5 9.5 0 00-5 4.3c-.7 2.1-1.1 3.6 1.3 4.4a15.2 15.2 0 007 2.5c2.8 0 4.9-.3 6.2 1.3 2 2 1.8 3.2 1.8 6.8.7 1.1.8 4.4 1.3 5.7a10.6 10.6 0 005.6 1.2c.7-2 1.4-5.4 1.9-7.5.5-2.2.6-5.4 1.9-6.9a16.6 16.6 0 014.3-4.4 8 8 0 013.8-2.4c-2.5 1.2-2.8 2.6-3.1 5.6 2.1 1 2.7 1.8 6.2 1.9 3.5-.3 4.3-1.2 5.6-3.2.3 3.2 1.3 4.2 2 7 1.2 1.8 1.7 3.7 3 6.2-.5 3-1.7 3.1-1.8 6.8-.8 2.5-.8 4.8-2.5 6.3-.8 1-1.4 1.1-3.2 1.2 3.6 0 5.8-.4 8.2-1.8 1.8-1.2 3.2-2.6 5-3.8a23.9 23.9 0 017.5-3.8c2.9 0 5-.3 6.2 1.3 1.8 1.3 3 3.5 3.8 6.3.5 3.2.8 5.4-.7 7.5-1 2.4-1.3 3.3 0 6.2 1.5 2 3.6 2.3 7 3.1 2.3-.1 4.6-.6 6.2-1.2" transform="matrix(-.19848 0 0 .17744 145.3 -13.4)"/>
+      <g fill-rule="evenodd" stroke-width="1.3" transform="matrix(-.19848 0 0 .17744 145.3 -13.4)">
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4h-35.4z" transform="matrix(1.4216 -.73423 .46161 .89375 -716.8 541)"/>
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4" transform="matrix(1.1373 -.58739 .44532 .86221 -554.8 471.8)"/>
+        <path fill="#fff" d="M563.4 301.2c.2 18.9 0 40.2 0 60.2H535c0-20-.2-41.3 0-60.2h28.4z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M559.8 304.7c.2 19 0 33.1 0 53.2h-21.2c0-20-.2-34.3 0-53.2h21.2z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M542.1 311.8h14.2v39h-14.2zm0 0l14.2 39m-14.2 0l14.2-39m-14.2-198.4h14.2" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <circle cx="545.7" cy="92.1" r="3.5" fill="#ef0000" transform="matrix(1.6046 .45375 -.36215 1.5787 -734.9 -170.8)"/>
+      </g>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M538.6 531.5c1.7 166.6 24.8 202 3.5 202s-31.9-92.1-31.9-205.5 14.2-205.5 35.5-205.5-9 31.9-7.1 209z" transform="matrix(.32136 -.12684 .20158 .20221 -181.5 60.8)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.2" d="M545.7 779.5l-60.3 17.7c56.7 60.3 120.5 85 138.2 74.4 17.7-10.6-31.9-35.4-78-92z" transform="matrix(.19848 0 0 .17744 19.1 -14)"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width="1.3" d="M547.3 786.9l-51 14.7c56.7 60.3 112.8 77.4 127.3 70 14.6-7.3-30.3-28-76.3-84.7z" transform="matrix(.19334 0 0 .17062 21.6 -8.8)"/>
+      <path fill="none" stroke-width="1.8" d="M353.1 634.2c.2 1.3.8 7.1 1.3 9.4 0 3.2.3 5.6.6 8.1.8 2.2.7 4.2 3.1 5a9.9 9.9 0 005 4.4 27.7 27.7 0 006.3 3.8 11.6 11.6 0 007.5.6c2.2-1.5 3.8-3.1 5.6-4.4.4-2 .8-4.9 1.3-6.9a32.6 32.6 0 00-1.3 8.2c.2 3 1.3 4.4 2.5 6.8" transform="matrix(.13978 0 0 .12414 41.4 19.7)"/>
+      <path fill="none" stroke-width="1.8" d="M389.4 681.7l.6-.6c-1.5 1.5-.9.8 2.5-1.3 2.4-1.2 5-1.8 8.1-2.4h8.8c3.4 0 5.7.5 8.1 1.2 1.8 1.8 4.4 2.8 6.3 4.4a11 11 0 013.7 5c1.7 1.7 2.8 4.3 4.4 5.6.7 2.9 2.1 2.8 3.1 5-3 .2-5.3.6-6.9 2.5-2.6 1.3 2.2-1.3 3.2-2.5 2-.6 2.5-1.2 5.6-1.2 2.8-1 4.6.7 7.5 1.2 1.7 1 2.2 1.3 4.4 1.3" transform="matrix(.13978 0 0 .12414 39.5 19)"/>
+      <path fill="none" stroke-width="1.8" d="M438.1 724.9c1.3 0 7.1 1.1 9.4 0 2.6-.7 4-2 5.6-4.4.8-1.7 0 3 0 5 .3 3.7 1.4 3.7 3.2 6.2 1.8 1.2 3.7 2.8 5.6 3.8a18 18 0 005.6 3.1c2 1 4.1 1.8 5.6 3.1 2.1 1.5 2 3.3 3.2 5.7-.3 3-.8 4.8-2.5 6.2-.8 2.1-2.4 4.2-3.8 5.6-1.5 3-3.3 4.3.6 5 2.2 1 3.4.2 5.7 0" transform="matrix(.13978 0 0 .12414 37.4 17.6)"/>
+      <path fill="none" stroke-width="1.8" d="M480.6 771.7c1.6-.4 7-2.2 9.4-3.1h8.8c3.3.3 4 1.3 6.8 2.5 1.9 1.9 3.1 3.2 5.7 4.4 1.3 1.7 4 4.7 5 6.9a25.5 25.5 0 011.2 8c0 3.7-1 4.4-1.2 7.6a19.3 19.3 0 01-3.8 7.5c-.3.8-.5 1-1.2 1.2" transform="matrix(.13978 0 0 .12414 37 17.2)"/>
+      <path fill="none" stroke-width="2.3" d="M538.1 818c.4 0 1.2 2 2.5 3.7 2.9 3 3.2 3.2 7.5 3.2 4-.2 3.5-1.6 6.3-2.5 1.3-2 2.9-3.6 4.4-6.3 1-1.6 1.9-4.1 3-5.6 1.2-1.9 2.6-3.3 3.8-5 1.2-.5 1.6-1 3.2-1.3-3.6.6-4 1.9-6.3 3.8a58.9 58.9 0 00-3.1 5.6c-.4 2.7-1.2 4.8-1.3 8.1 0 3.5 0 5.9 1.3 8.8 1.5 1.5 2.5 3.1 4.4 4.4a36.7 36.7 0 014.3 5l5.7 3.7c1.8 1.1 3.9 2.2 6.8 2.5 3.7-.3 4.8-1.3 7.5-2.5 2.4-1.7 4.2-2.8 6.3-4.4a21 21 0 004.4-5c3.3-.8 5.5-.5 7.5 1.3a16.5 16.5 0 014.3 4.4c1 .5 2.8 2 3.8 2.5" transform="matrix(.09924 0 0 .09799 55 38.2)"/>
+      <path fill="none" stroke-width="1.9" d="M503.8 836.1c-.8.3-3.8 2.4-5 3.1-.8 2.7-2.1 4.1-2.5 7-.7 2.6-.7 5.6-.7 8.7.7 3.2 2 5.5 3.2 8 2 1.4 3 2.4 5.6 3.8 2.5.4 5 .7 8.1.7 2 .6 5.6.9 7.5 0 2.8-.4 4.9-1.5 6.9-2.5 2.3-1.3 3.7-2.6 6.2-3.8 1.3-1.8 3.2-3.5 5-5.6 1.6-2.1 2.7-3.3 3.8-5.6-1 2.6-2.3 5-3.1 7.5-1.5 2.6-2.3 3.6-2.5 6.8-1 2.6-.7 5.8-.7 8.8.3 2 .4 5.8 1.3 7.5v1.9" transform="matrix(.12338 0 0 .12229 53 18.6)"/>
+      <path fill="none" stroke-width="1.2" d="M541.3 799.2v.7c0-1.7 0-.9-.7 2.5-1.1 1.4-4 1.8-6.2 1.2-2-1.7-2-3-5.6-3.7-3.6.2-5 1.2-7 2.5a9.5 9.5 0 00-5 4.3c-.7 2.1-1.1 3.6 1.3 4.4a15.2 15.2 0 007 2.5c2.8 0 4.9-.3 6.2 1.3 2 2 1.8 3.2 1.8 6.8.7 1.1.8 4.4 1.3 5.7a10.6 10.6 0 005.6 1.2c.7-2 1.4-5.4 1.9-7.5.5-2.2.6-5.4 1.9-6.9a16.6 16.6 0 014.3-4.4 8 8 0 013.8-2.4c-2.5 1.2-2.8 2.6-3.1 5.6 2.1 1 2.7 1.8 6.2 1.9 3.5-.3 4.3-1.2 5.6-3.2.3 3.2 1.3 4.2 2 7 1.2 1.8 1.7 3.7 3 6.2-.5 3-1.7 3.1-1.8 6.8-.8 2.5-.8 4.8-2.5 6.3-.8 1-1.4 1.1-3.2 1.2 3.6 0 5.8-.4 8.2-1.8 1.8-1.2 3.2-2.6 5-3.8a23.9 23.9 0 017.5-3.8c2.9 0 5-.3 6.2 1.3 1.8 1.3 3 3.5 3.8 6.3.5 3.2.8 5.4-.7 7.5-1 2.4-1.3 3.3 0 6.2 1.5 2 3.6 2.3 7 3.1 2.3-.1 4.6-.6 6.2-1.2" transform="matrix(.19848 0 0 .17744 19.1 -14)"/>
+      <g fill-rule="evenodd" stroke-width="1.3" transform="matrix(.19848 0 0 .17744 19.1 -14)">
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4h-35.4z" transform="matrix(1.4216 -.73423 .46161 .89375 -716.8 541)"/>
+        <path fill="#fff" d="M531.5 359.6c0-165.2 8-299.4 17.7-299.4 9.8 0 17.7 134.2 17.7 299.4" transform="matrix(1.1373 -.58739 .44532 .86221 -554.8 471.8)"/>
+        <path fill="#fff" d="M563.4 301.2c.2 18.9 0 40.2 0 60.2H535c0-20-.2-41.3 0-60.2h28.4z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M559.8 304.7c.2 19 0 33.1 0 53.2h-21.2c0-20-.2-34.3 0-53.2h21.2z" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <path fill="#fff" d="M542.1 311.8h14.2v39h-14.2zm0 0l14.2 39m-14.2 0l14.2-39m-14.2-198.4h14.2" transform="matrix(1.4216 -.73423 .45889 .88849 -716.7 541.4)"/>
+        <circle cx="545.7" cy="92.1" r="3.5" fill="#ef0000" transform="matrix(1.6046 .45375 -.36215 1.5787 -734.9 -170.8)"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19848 0 0 .17744 19.1 -14)">
+        <path stroke-width="1.3" d="M305.6 396.9c0 124 .5 170.7-5.6 177.1-5.8 6.9-167.1 0-167.1 35.4s132.8 71 172.7 71c53.2 0 79.7-35.5 79.7-106.4V397h-79.7z" transform="matrix(1.3333 0 0 1 -141.7 0)"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 35.4)"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="scale(1 .99999)"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 17.7)"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 53.1)"/>
+        <ellipse cx="256.9" cy="210.8" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 394.3)"/>
+        <ellipse cx="292.3" cy="246.3" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 391.1)"/>
+        <ellipse cx="327.8" cy="264" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 390.5)"/>
+        <ellipse cx="363.2" cy="264" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 390.5)"/>
+        <ellipse cx="398.6" cy="246.3" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 391.1)"/>
+        <ellipse cx="434.1" cy="210.8" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 394.3)"/>
+        <path stroke-width="1.3" d="M265.8 485.4L372 581.1m-95.6-95.7l95.7 85M290.5 489l81.6 70.9m-71-71l71 60.3M311.8 489l60.2 49.6M322.4 489l49.6 39m-39-39l39 28.3M343.8 489l28.4 21.2M354.3 489l17.8 14.2M365 489l7 7m-106.2 0L372 591.8m0-106.3L255 591.7m106.3-106.3l-102.7 92.2m88.6-88.6l-81.5 70.8m70.8-70.8l-70.8 60.2M326 489l-60.2 49.6m49.6-49.6l-49.6 39m39-39l-39 28.3M294 489l-28.3 21.2m17.7-21.2l-17.7 14.2m7-14.2l-7 7m106.3 0L255 602.5m117-95.7L255 613m117-95.7L255 623.6m117-95.7L255 634.4m117-95.7L255 644.9m117-95.7L255 655.5m117-95.7L255 666.1m117-95.6L255 676.8m117-95.7l-109.9 99.2M372 591.7l-99.2 88.6m95.6-74.4l-78 70.9M365 620l-63.8 56.7m56.7-39l-32 28.3m-60.1-159.4l102.7 92.1m-102.7-81.5l102.7 92.2M265.8 528l99.2 88.5m-99.2-78l99.2 88.7m-99.2-78l95.6 85m-99.2-77.9l95.7 85M262.2 567l88.6 78m-92.1-71l88.6 78M255 581l85 74.4m-85-63.8l81.5 70.9M255 602.3l71 63.7"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(1 0 0 .99999 0 70.9)"/>
+        <path stroke-width="1.3" d="M255.1 613l63.8 56.7m-63.8-46l56.7 49.5m-56.7-39l49.6 42.6m-49.6-32l35.5 32M255 655.5l28.4 24.8M255 666.1l17.7 14.2"/>
+        <ellipse cx="256.9" cy="210.8" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 447.5)"/>
+        <ellipse cx="292.3" cy="246.3" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 444.3)"/>
+        <ellipse cx="327.8" cy="264" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 443.6)"/>
+        <ellipse cx="363.2" cy="264" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 443.6)"/>
+        <ellipse cx="398.6" cy="246.3" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 444.3)"/>
+        <ellipse cx="434.1" cy="210.8" stroke-width="4.4" rx="8.9" ry="26.6" transform="matrix(.54545 0 0 .14383 130.5 447.5)"/>
+        <path stroke-width="1.3" d="M113.4 652l127.5-74.4m-134.6 70.8l120.5-70.8m-124 63.7l109.8-63.7M99.2 634.3l95.7-56.7M92 627.2l88.6-49.6m-85 39l60.2-35.5M92 609.4l46-28.3m-46 17.7l32-17.7m0 74.4l120.4-70.9M134.7 659L248 591.7m-102.7 70.9l106.3-63.8m-95.7 67.3l88.6-53.1M170 666.1l78-46m-67.4 49.6l67.3-39m-56.7 42.5l53.2-31.9m-39 32l42.5-24.9m-28.3 28.4L248 659m-14 17.8l17.7-10.6"/>
+        <path stroke-width="1.3" d="M265.8 396.9v17.7a321.1 321.1 0 00106.2 0v-17.7a321.1 321.1 0 01-106.2 0z" transform="matrix(0 1 -.99999 0 655.5 308.3)"/>
+        <path stroke-width="1.3" d="M49.6 623.6l42.5-35.4m-42.5 10.6l42.5 42.5"/>
+        <path stroke-width="1.3" d="M260.1 388l5.6 26.6c35.5 5.9 65.3 5.9 100.8 0l11.1-26.6c-35.4 5.9-82 5.9-117.5 0z" transform="matrix(0 .63333 -.8 0 423.8 416.3)"/>
+        <path stroke-width="1.3" d="M258.7 350.8v-17.9c-10.7.2-17.8-10.5-17.8-21.2l-35.4.1c0 10.6-7 21.3-17.7 21.3v17.7h70.9z" transform="matrix(1.4983 0 0 1 -15.6 53.1)"/>
+        <path stroke-width="1.4" d="M296 343.7h45.6V365H296zm3.9-21.3h37.9v21.3h-38zm0-21.2h37.9v21.2h-38zm3.8-28.4H334v28.4h-30.3zm-1.3-24.8h33v24.8h-33z"/>
+        <ellipse cx="237.4" cy="161.2" stroke-width="1.3" rx="42.5" ry="33.7" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <path stroke-width="1.3" d="M258.7 159.4c0 9.3 10.6 24.8 10.6 24.8-7.7 6.2-20.2 10.7-31.9 10.7s-26.3-2.6-31.9-10.7c0 0 10.6-15.4 10.6-24.7s-10.6-21.3-10.6-21.3a54.6 54.6 0 0132-10.6c11.6 0 24 4.5 31.8 10.6 0 0-10.6 12-10.6 21.3z" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <path stroke-width="1.3" d="M251.6 159.4c0 9.3 10.6 28.4 10.6 28.4-7.7 6-13 7-24.8 7s-19.2 1.1-24.8-7c0 0 10.6-19 10.6-28.4s-10.6-24.8-10.6-24.8c7.7-6 13-7 24.8-7 11.7 0 17.1 1 24.8 7 0 0-10.6 15.5-10.6 24.8z" transform="matrix(1.0333 0 0 1 75.3 63.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0333 0 0 1 75.3 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0333 0 0 1 163.2 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0333 0 0 1 119.3 60.2)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0333 0 0 1 119.3 24.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0702 0 0 1 80 226.8)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.0702 0 0 1 140.6 226.8)"/>
+        <path stroke-width="1.3" d="M212.6 311.8h49.6l-24.8 31.9-24.8-31.9z" transform="matrix(1.0702 0 0 1 64.8 53.1)"/>
+        <circle cx="194.9" cy="166.5" r="10.6" stroke-width="1.3" transform="matrix(1.427 0 0 1.3333 40.7 167.7)"/>
+      </g>
+      <g fill="#fff" fill-rule="evenodd" transform="matrix(.19848 0 0 .17744 18.8 -19.1)">
+        <rect width="81.5" height="21.3" x="262.2" y="524.4" stroke-width="1.2" rx="4.3" ry="3.7"/>
+        <path stroke-width="1.2" d="M368.5 506.7c-9.8 0-17.7 8.3-17.7 18.5v16.1a18 18 0 0017.7 18.5 18 18 0 0017.7-18.5v-16a18 18 0 00-17.7-18.6zm0 7c-5.9 0-10.6 6.7-10.6 14.9v9.3c0 8.2 4.7 14.8 10.6 14.8 5.9 0 10.6-6.6 10.6-14.8v-9.3c0-8.2-4.7-14.8-10.6-14.8zm-92.1-3.5c-6 0-10.6 6.6-10.6 14.9v16.4c0 8.2 4.7 14.8 10.6 14.8 5.9 0 10.6-6.6 10.6-14.8V525c0-8.3-4.7-14.9-10.6-14.9zm0-7a18 18 0 00-17.7 18.5v23.2a18 18 0 0017.7 18.5c9.8 0 17.7-8.3 17.7-18.5v-23.2a18 18 0 00-17.7-18.6z"/>
+        <path stroke-width="1.2" d="M248 517.3c-5.9 0-10.6 6.6-10.6 14.8v3.9c0 8.2 4.7 14.8 10.6 14.8 6 0 10.7-6.6 10.7-14.8v-3.9c0-8.2-4.8-14.8-10.7-14.8zm0-7a18 18 0 00-17.7 18.5v10.6a18 18 0 0017.7 18.5c9.8 0 17.8-8.3 17.8-18.5v-10.6a18 18 0 00-17.8-18.6z"/>
+        <path stroke-width=".9" d="M478.4 237.4c-6 0-10.7 6.6-10.7 14.8v16.5c0 8.1 4.8 14.8 10.7 14.8 5.8 0 10.6-6.6 10.6-14.9v-16.4c0-8.2-4.8-14.8-10.6-14.8zm0-7a18 18 0 00-17.8 18.4V272a18 18 0 0017.7 18.6c9.9 0 17.8-8.3 17.8-18.6v-23.2a18 18 0 00-17.7-18.5z" transform="matrix(1.8 0 0 1.1176 -655.5 242.2)"/>
+        <path stroke-width=".9" d="M478.4 237.4c-6 0-10.7 6.6-10.7 14.8v16.5c0 8.1 4.8 14.8 10.7 14.8 5.8 0 10.6-6.6 10.6-14.9v-16.4c0-8.2-4.8-14.8-10.6-14.8zm0-7a18 18 0 00-17.8 18.4V272a18 18 0 0017.7 18.6c9.9 0 17.8-8.3 17.8-18.6v-23.2a18 18 0 00-17.7-18.5z" transform="matrix(1.8 0 0 1.1176 -425.2 245.7)"/>
+        <rect width="42.5" height="21.3" x="375.6" y="524.4" stroke-width="1.2" rx="2.3" ry="3.7"/>
+        <rect width="24.8" height="28.4" x="336.6" y="520.9" stroke-width="1.2" rx="1.3" ry="4.9"/>
+        <rect width="24.8" height="28.4" x="219.7" y="520.9" stroke-width="1.2" rx="1.3" ry="4.9"/>
+        <rect width="49.6" height="35.4" x="141.7" y="517.3" stroke-width="1.2" rx="2.6" ry="6.1"/>
+        <rect width="46.1" height="35.4" x="450" y="520.9" stroke-width="1.2" rx="2.5" ry="6.1"/>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pa.svg
new file mode 100644
index 0000000..09b3e11
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pa.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pa" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pa-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#pa-a)">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M92.5 0h477.2v480H92.4z"/>
+    <path fill="#db0000" fill-rule="evenodd" d="M323 3.6h358v221.7H323z"/>
+    <path fill="#0000ab" fill-rule="evenodd" d="M3.2 225.3h319.9V480H3.2zm211.6-47.6l-42-29.4-41.7 29.6 15.5-48L105 100l51.6-.4 16-48 16.3 47.9h51.6l-41.5 30 15.9 48z"/>
+    <path fill="#d80000" fill-rule="evenodd" d="M516.9 413.9l-42.4-27.7-42.1 28 15.6-45.6-42-28 52-.5 16.2-45.4 16.4 45.3h52l-41.8 28.5 16 45.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pe.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pe.svg
new file mode 100644
index 0000000..71a1be1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pe.svg
@@ -0,0 +1,244 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-pe" viewBox="0 0 640 480">
+  <path fill="#d91023" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M213.3 0h213.4v480H213.3z"/>
+  <g fill="#00a854" stroke="#d4af37" stroke-width="2" transform="translate(245.3 154) scale(.17778)">
+    <g id="g" stroke-width="4.3" transform="matrix(.44722 -.20656 .2582 .35777 89.4 -67.3)">
+      <path d="M480.2 566.9c31.3 33 62.4 68.1 79 111.2 25.1 69.7 18.3 151.5-22.6 214a328.2 328.2 0 01-142 116.4 224.7 224.7 0 01-164.8 3.5c-20-7.4-38.9-18-57.5-28.3-8.4-1.4-13.9 8.6-7 13.3 62.4 40.6 130.9 42.2 202 28.2a273.1 273.1 0 0099-50.4c44.4-33.2 82.7-77.5 99.8-131 26.2-79 9.3-171.3-45.1-234.6a488.2 488.2 0 00-44.7-47.1l4 4.8z"/>
+      <path d="M170.6 983.3c-8.1-.8-12.2 11.8-5.1 13.6 4.2-1 10.7-12 5-13.6zm304.2-430.9c-4.5-5.6-14-2.9-17.7-7.3-4-4.7 2.9-6.5-.3-10-3-3.5-7.7-1.7-12-6.5-4.2-4.7-.4-8.8-4-12-3.7-3.4-4.2.8-8.4-3.8s-1.7-12.7-6.3-18.6c-4.5-5.7-3-12.5 2.5-11.2 3.6.8 5 4.4 10.4 5.7 5.4 1.4 7.6-2.5 11.2 1 3.5 3.4.3 9 4 14s5.9 1.2 8.6 5.5c2.7 4.4.5 6.6 2.2 11.7s8.4 3.1 10.9 10.8c2.5 7.6-1 20.7-1 20.7z"/>
+      <path d="M478.1 564.8c-5.5-26.2-27-57-52.6-79.5 15.3 12 44.9 40.5 54.4 79.3l-1.8.2z"/>
+      <path d="M460.2 524.4c-4.2-2.9-7.3-2.8-10.5-3.2 3-.2 5.9-.5 9.5 1.1l1 2.1zm-15.2-19c-4.5-1.4-7.4-.3-10.6.4 2.8-1.2 5.5-2.4 9.2-2l1.4 1.7zm4.4 3.5c-2.2-5.6-2.2-9.7-2.5-14-.1 3.9-.3 7.8.9 12.6l1.6 1.4zm13.5 18.1c-2.2-5.5-2.2-9.6-2.5-14-.1 4-.3 7.9 1 12.7l1.5 1.3zm92.3 155c-8.3-3.1-17.2 0-23.9-2.4-7.2-2.6 1.1-8.6-4.4-10.4-5.6-1.8-10.2 5.7-17.8 3.2-7.6-2.4-6.3-10-12.5-11.4-6.3-1.3-6.4 7.2-13.9 4.9-7.4-2.3-7.5-12.3-16-15.7-8.2-3.4-9-11.4-1.3-13.4 5.2-1.3 10.3 2 18 .2s7-8.7 13.1-7.1c6.1 1.5 4.4 10.4 11.4 13.2 7 2.8 11.4-4.9 16.7-2 5.3 3 .3 9.5 4.6 13.7 4.4 4.3 7.8-2.3 14.2 4.2 6.4 6.6 11.8 23 11.8 23z"/>
+      <path d="M563.5 691.6c-22.9-25.6-58.6-41.4-101.8-49.7 25 3.4 76.7 15 105.2 50l-3.4-.3z"/>
+      <path d="M524.3 661.5c-6.7-.6-10.8 1.3-15.2 2.8 3.8-2 7.5-4 13-4.4l2.2 1.6zm-27.9-10.9c-6.5 1.2-10 4-14 6.7 3.3-2.9 6.4-5.8 11.5-7.7l2.5 1zm7.2 1c-5.2-4.5-7-8.9-9.1-13.3 1.5 4.3 2.8 8.5 6.4 12.8l2.7.5zm25.3 11c-5.1-4.5-6.8-8.9-9-13.3a35 35 0 006.4 12.8l2.6.5zm25.8 223c7-5.4 9.2-15 14.7-19.4 5.8-4.7 6.2 5.9 10.6 2 4.4-3.7.9-12 6.9-17.2 6-5.2 11.4.2 15.8-4.4 4.3-4.7-2.4-9.7 3.4-14.8 5.8-5.2 13.9.5 21-5 7.1-5.3 14-1.4 11.5 6.4-1.7 5.3-7 7.9-9.7 15.6-2.6 7.8 3.2 11-1.2 15.5-4.5 4.4-10.7-2.2-16.7 2.3s-2 12.7-7.3 15.7c-5.1 3-7.6-5.1-13.4-3.8-5.7 1.4-2.2 8-10.9 10a67.8 67.8 0 01-24.7-2.9z"/>
+      <path d="M542.7 887.4c32.6-5.3 64.3-27.5 93.8-60.3-16 19.9-52.6 58.3-95.8 63.1l2-2.8z"/>
+      <path d="M587.6 870.5c4-5.6 4.7-10.2 5.8-15-.5 4.5-.8 9-3.3 14l-2.5 1zm23.5-18.1c2.5-6.4 2-11 2-16 .6 4.5 1.4 8.8.1 14.3l-2.1 1.6zm-4.6 5.7c6.4-2 10.8-1 15.5-.4-4.2-1.1-8.3-2.4-13.7-1.7l-1.8 2zm-22.2 15.8c6.3-2 10.7-1 15.4-.4-4.2-1.1-8.3-2.4-13.7-1.6l-1.7 2zm2.2-84c5.9-6.6 6.3-16.4 11-21.8 4.9-5.8 7.1 4.5 10.8 0 3.6-4.6-1.3-12.1 3.6-18.4 5-6.2 11.4-2 14.8-7.4 3.4-5.4-4-9 .7-15.2 4.8-6.2 13.7-2.1 19.9-8.9 6-6.6 13.4-4 12.3 4.2-.7 5.4-5.5 9-6.7 17.1-1.3 8.2 5.1 10.2 1.5 15.5-3.6 5.2-10.9-.1-16 5.5-5 5.6.3 12.9-4.3 16.8-4.6 3.9-8.5-3.6-13.9-1.2-5.4 2.5-.8 8.4-9 12s-24.7 1.8-24.7 1.8z"/>
+      <path d="M575 794c31.1-11.5 58.3-39.3 81.5-77.3-12.2 22.6-41.4 67.4-83 80.5l1.5-3.2z"/>
+      <path d="M616.1 768.7c3-6.2 2.8-10.8 3-15.7.4 4.4.9 8.8-.7 14.3l-2.2 1.4zm19.9-22.3c1.3-6.7 0-11.2-.9-16 1.4 4.2 3 8.4 2.7 14l-1.8 2zm-3.5 6.5c6-3.1 10.4-3 15.1-3.3-4.3-.3-8.5-.7-13.7 1l-1.4 2.3zm-19 19.8c5.8-3 10.3-3 15-3.3-4.3-.3-8.5-.7-13.7 1l-1.4 2.3zm-46.2-31.5c-7.9-5.6-18.3-4.8-24.7-9.3-6.9-4.6 3.6-8.6-1.8-12-5.4-3.4-12.4 3-19.8-1.6-7.4-4.7-3.8-12.4-10-15.5-6.3-3-9 5.7-16.2 1.2s-4.5-15-12.5-20.8c-7.9-5.8-6.4-14.4 2.4-14.3 5.8 0 10.4 4.9 19.1 5.2 8.7.2 5-4.4 11-1 6.2 3.2 5 12 11.6 17 6.7 4.8 15.2-4.7 20-.2s-2.4 10 1 15.6 9-.2 14 8.4 5.9 27.3 5.9 27.3z"/>
+      <path d="M573.4 753.5c-17-33.1-50.6-59.7-94.2-80.4 25.7 10.6 77.4 37 97.8 81.6l-3.6-1.2z"/>
+      <path d="M540.3 711c-7-2.4-11.9-1.6-17-1.2 4.6-1 9.2-2.1 15-1l2 2.2zm-26.6-19c-7.3-.7-11.8 1.4-16.7 3 4.2-2.1 8.3-4.3 14.3-4.8l2.4 1.7zm7.4 3c-4.3-6.2-4.8-11.3-6-16.4.4 4.8.7 9.6 3.3 15.1l2.7 1.2zm23.8 18.5c-4.2-6.2-4.8-11.2-5.9-16.4.4 4.9.6 9.6 3.3 15.2l2.6 1.2zm43.1 36.9c4.5-7.7 3-17.5 6.5-23.8 3.7-6.7 8 3 10.6-2.3 2.6-5.2-3.6-11.5 0-18.7s10.7-4.3 13-10.3c2.3-6-5.7-8-2.2-15 3.5-7.1 13-5 17.7-13 4.5-7.7 12.3-6.8 12.8 1.5.4 5.5-3.6 10-3.2 18.2.4 8.2 7 9 4.5 14.8-2.5 5.9-10.7 2.2-14.5 8.8-4 6.5 2.7 12.5-1 17.3-3.7 4.8-9-1.7-13.9 1.9-4.8 3.5 1 8.3-6.4 13.5s-23.9 7-23.9 7z"/>
+      <path d="M577.5 756.8C605.8 739 627 706 642.3 664c-7.6 24.7-27.4 74.7-65.6 96.3l.8-3.4z"/>
+      <path d="M613 723.3c1.6-6.6.5-11.2-.2-16 1.2 4.3 2.5 8.5 2 14.1l-1.9 2zm15-26c0-6.9-2.1-11-4-15.5 2.3 3.9 4.5 7.6 5.4 13.2l-1.4 2.3zm-2.1 7.1c5.2-4.3 9.6-5.1 14.1-6.5-4.3.7-8.5 1.1-13.2 4l-1 2.5zM611 727.8c5.1-4.3 9.6-5 14-6.4-4.2.6-8.4 1-13.2 3.9l-.8 2.5zM557.4 639c3.6-8.6.8-18.5 3.6-25.6 3-7.5 8.7 2 10.7-3.8 2.1-5.9-5.2-11.5-2.4-19.5s10.6-6 12.2-12.6c1.6-6.6-7-7.5-4.3-15.3 2.7-7.9 13-7.1 16.8-16 3.7-8.6 12-8.8 13.6-.3 1 5.7-2.5 11-1 19.5 1.4 8.4 8.4 8.2 6.6 14.7-1.9 6.5-10.8 3.8-14 11.2-3.2 7.3 4.4 12.6 1.2 18.2-3.2 5.5-9.6-.6-14.1 3.8-4.6 4.4 2 8.5-5 15-7 6.4-24 10.7-24 10.7z"/>
+      <path d="M547.3 647.1c27-22.6 44.8-59.9 55.3-105.8-4.6 26.8-18.8 81.6-55.7 109.5l.4-3.7z"/>
+      <path d="M579.8 607.3c.8-7.2-.9-11.7-2.2-16.7 1.8 4.3 3.7 8.5 4 14.4l-1.8 2.3zM592 578c-.9-7.2-3.7-11.1-6.1-15.6 2.7 3.7 5.6 7.3 7.2 13L592 578zm-1.3 7.7c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.2-8.7 2.3-13.3 5.9l-.6 2.8zm-12.4 26.4c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.3-8.7 2.4-13.3 6l-.6 2.7z"/>
+      <path d="M533.4 605.3c4.2-6.6-1-18.7 2.2-24 3.6-5.8 7.3 2.8 9.8-1.7 2.6-4.5-.4-10.3 3-16.4 3.6-6.2 8.6-1.7 10.9-6.9 2.2-5.2-2-5.3 1.3-11.4 3.4-6 12-3.9 16.5-10.6 4.4-6.6 11.5-5.5 11.8 1.9.2 4.8-2.9 7.1-2.7 14.4.1 7.2 4.6 9.5 2.2 14.6-2.5 5-9 1.5-12.6 7.1-3.8 5.6.3 7.8-3.2 11.8-3.5 4-6.4 1.5-10.9 4.4-4.5 3-.7 11.3-7.6 15.6s-20.7 1.2-20.7 1.2z"/>
+      <path d="M522.1 611.2c24.3-10.6 48.6-42.4 63.7-78.7-7.5 21.4-27.5 63.7-63 81l-.7-2.3z"/>
+      <path d="M556.9 582.6c1.7-5.8.8-9.8.3-14 1 3.8 2 7.5 1.5 12.5l-1.8 1.5zm14.4-22.2c.2-6-1.6-9.7-3.2-13.8 1.9 3.5 4 6.9 4.6 11.8l-1.4 2zm-2 6.2c4.8-3.6 8.9-4.1 13-5.1-3.9.4-7.8.6-12.2 2.8l-.9 2.3zm-14.2 20c4.8-3.6 8.9-4.2 13-5.2-3.8.4-7.7.6-12.2 2.9l-.8 2.2zm-173.3 425.7c3.6-9 1-19.7 3.7-27.1 2.9-7.9 8.4 2.5 10.4-3.6s-5-12.5-2.2-20.9c2.8-8.4 10.3-5.8 12-12.8 1.5-7-6.8-8.3-4.1-16.5 2.6-8.3 12.5-7 16.3-16.2 3.7-9 11.7-8.8 13.2.4 1 6-2.4 11.5-1 20.6 1.3 9.1 8.1 9.3 6.3 16-1.8 6.9-10.5 3.6-13.7 11.3-3.1 7.6 4.3 13.7 1.1 19.4-3.2 5.7-9.3-1-13.8 3.4-4.4 4.4 2 9.2-4.9 15.7-6.8 6.5-23.3 10.3-23.3 10.3z"/>
+      <path d="M375.2 1016.4c26.5-22.7 40.7-57.4 51.2-105.9-4.7 28.3-15.5 82-51.6 109.8l.4-3.9z"/>
+      <path d="M403.8 979.7c.8-7.6-.8-12.6-2-18 1.6 4.8 3.5 9.4 3.6 15.7l-1.6 2.3zm12-30.5c-.7-7.7-3.4-12-5.8-17 2.7 4.2 5.5 8.1 7 14.3l-1.1 2.7zm-1.2 8.1c4.7-5.3 9.1-6.6 13.5-8.6-4.2 1.1-8.5 2-13 5.7l-.5 3zM402.4 985c4.7-5.3 9.1-6.7 13.5-8.6-4.2 1.1-8.4 2-12.9 5.6l-.6 3zm158.7-152.7c-7.2-7.5-19.3-10.1-25.2-16-6.3-6.3 7-6.5 2-11.2-5-4.7-15.2-1.3-22-7.7-7-6.5-.4-12.1-6.5-16.8-6-4.7-12 2.2-18.7-4.1-6.8-6.3-.2-14.6-7.4-22.3-7-7.6-2.6-14.7 7.5-11.8 6.6 1.9 10.2 7.6 20 10.6 10 3 13.7-3 19.5 1.8 5.9 4.8-2 11.2 3.9 17.6 6 6.4 16 2.6 20 8.1 4 5.6-6 8-4 14 2 6.2 10.3 2.7 13.1 11.8 2.9 9.2-2.2 26-2.2 26z"/>
+      <path d="M540.3 797c-7.2-4.3-13-5.1-19-6.5 5.6.7 11.1 1.1 17.6 4l1.4 2.5zm-24-25.2c-8.2-2.9-14-2.5-20.2-2.6 5.6-.5 11-1.2 18 .3l2.1 2.3zm7.4 5c-2.8-6.8-1.8-11.4-1.4-16.3-1.1 4.4-2.5 8.6-1.3 14.3l2.7 2zm21 23.9c-2.7-6.8-1.7-11.4-1.3-16.3-1.1 4.4-2.5 8.7-1.3 14.4l2.6 1.9z"/>
+      <path d="M561.7 840c-8.5-34.5-35.7-63.7-78.5-95.8 25.8 17.5 73.7 52.4 82.2 98l-3.7-2.2z"/>
+      <g id="d">
+        <path d="M527.3 890.5c-3.4-8.8-19.8-13-22.7-20.1-3-7.6 9.1-5.3 6.6-11-2.6-5.7-13.4-4-17-11.8-3.4-7.8 5-12.3 1.3-18.2-3.6-5.9-11.8 0-15.4-7.5-3.5-7.6 6-14.8 2.7-24-3.2-9 4-15.4 11.8-10.6 5.3 3.2 6.2 9.6 13.9 14.4 7.7 4.9 13.7-.6 17 5.4 3.2 6-6.7 11-4 18.5 2.8 7.6 13.6 5.6 15 12 1.2 6.3-9 6.9-9.7 13.4-.7 6.5 8.3 4.5 7 14.3s-6.5 25.2-6.5 25.2z"/>
+        <path d="M520 853.1c-4.7-5.7-13-9-18-11.4a58 58 0 0117.8 8.5l.2 3zm-10-24.9c.4-7.3 3.2-11.8 5.7-16.7-2.9 4.2-5.9 8.3-7.2 14.3l1.6 2.4zm12.5 26c.3-7.3-.1-9.7 2.3-14.6-2.9 4.2-2.6 6.3-3.9 12.3l1.6 2.4z"/>
+        <path d="M525.2 906.6c6.8-36.5-12.8-78.4-38.3-118.7 16.1 22.4 52.2 73.9 40.7 121.6l-2.4-2.9z"/>
+        <path d="M505.4 821.9c-6.2-4.4-11.7-5.1-17.2-6.4 5.2.5 10.5.9 16.2 3.6l1 2.7z"/>
+      </g>
+      <path d="M493.6 566.1c-2-7-11.8-8.6-13.4-14.2-1.8-6 5.2-4.7 3.7-9.2-1.5-4.5-6.4-4.9-8.4-11s3-8.2 1-12.8c-2-4.6-4.2-1-6.2-7s3.4-12.3 1.5-19.6c-1.9-7 2.1-12.6 6.6-9.2 3 2.3 3 6.2 7.4 9.7 4.4 3.6 7.9.9 9.8 5.5 1.8 4.7-3.3 8.5-1.8 14.5 1.6 6 4.9 3.7 5.6 8.8.8 5-2.1 6.2-2.5 11.6-.4 5.3 6.4 6.4 5.7 14.4-.7 8-9 18.5-9 18.5z"/>
+      <path d="M491.7 578.8c5.2-26.2-2.3-63.4-17-94.8 9.3 17.3 25.2 56 18.7 95.4l-1.7-.6z"/>
+      <path d="M491.1 534.4c-2.7-4.4-5.5-5.7-8.3-7.5 2.8 1.1 5.5 2 8.2 5.1l.1 2.4zm-6.5-23.8c-3.5-3.2-6.6-3.5-9.8-4.2 3 .1 6 .1 9.3 2l.6 2.2zm2.7 5c.2-6 1.8-9.8 3.2-14-1.6 3.7-3.3 7.1-4.1 12l1 2zm5.3 22.3c.1-6 1.7-9.8 3.1-13.9-1.6 3.6-3.3 7-4 12l.9 1.9zm17 37.3c-.1-6.9-6.8-11.4-7.1-16.9-.3-5.8 14.6-4.3 14.2-8.8-.4-4.4-5.4-4.8-6-10.8s5.4-8 4.4-12.5-4.1-1-4.7-6.9c-.6-5.8 2-12.4 1.8-19.5-.1-7 5.6-12.4 9.4-9 2.6 2.2 1.5 6 5.2 9.5s8.4 1 11.3 4.5c3 3.5 2.3 6.4 2.4 12.3 0 6 4.1 3.6 3.6 8.6-.5 5-3.9 6.1-5.7 11.4-1.8 5.2 5.2 6.2 2.3 14.1-2.8 7.9-31 24-31 24z"/>
+      <path d="M499.2 585.6c24.4-21.6 36.5-63.2 18.3-94a68.8 68.8 0 018.1 50.3 92.1 92.1 0 01-24.8 44.3l-1.6-.6z"/>
+      <path d="M522.3 550.8a31.2 31.2 0 00-8.7-11.5c2.6 1 7.1 6.2 9.2 9.2l-.5 2.3zm4-26.8c-3-3.2-6.1-3.5-9.2-4.2 3 .1 6.2.1 9.2 2v2.2zm1.1.2c1.8-6 4.4-9.6 7-13.7-2.7 3.5-5.4 7-7.4 11.8l.4 1.9zm-4.2 27.5c1.7-5.9 7.8-3.8 12.4-5.2-3.5 0-10.8-1.5-13 3.3l.6 1.9zm-44.3 24.2c-6.5-4.6-4.6-15.7-9.7-19.5-5.5-4-6.7 3.8-10.8.6-4-3.2-2.7-8.6-8.2-13-5.6-4.4-9.5.2-13.5-3.6-4-3.9.5-4.8-4.9-9.2-5.4-4.3-13.9-.8-20.6-5.5-6.7-4.6-13.8-2.3-11.9 3.8 1.3 4 5.2 5.4 7.3 11.4 2 6-2 8.8 2.1 12.5 4.1 3.7 9.9-.5 15.5 3.4s2 6.5 7 9.2 7.1 0 12.7 1.5c5.7 1.5 4.2 9.2 12.7 11.4 8.5 2.1 22.3-3 22.3-3z"/>
+      <path d="M492.6 578.5c-28.8-4-64.1-25.6-91.1-52.7 14.5 16.3 48.3 47.3 91 54.8l.1-2z"/>
+      <path d="M447.2 561.7c-3.5-4.5-3.8-8-4.6-11.6.2 3.3.1 6.7 2.3 10.6l2.3 1zm-22-15.6c-2-5-1.1-8.4-.7-12-1 3.2-2 6.4-1.3 10.7l2 1.4zm4.1 4.7c-6.2-2-10.6-1.6-15.3-1.6 4.2-.5 8.4-1 13.7 0l1.6 1.6zm21 13.8c-6.2-2-10.6-1.7-15.3-1.7 4.2-.4 8.4-1 13.7 0l1.6 1.7zm50.2 41c-8-3.5-6.6-15.4-13-18.4-6.8-3-7.7 5.4-12.7 2.9-5.1-2.6-3.9-8.5-10.8-12-7-3.4-11.3 2.3-16.3-1-5-3.2.3-5-6.5-8.5s-16.5 2-25-1.6c-8.1-3.4-16.4.4-13.7 6.4 1.8 4 6.6 4.5 9.5 10.4 2.9 5.8-1.7 9.6 3.5 12.6s11.7-2.5 18.6.4c7 3 2.9 6.4 9 8.2 6 1.8 8.5-1.5 15.3-1 6.8.4 5.7 8.7 16 9.2 10.2.6 26.1-7.6 26.1-7.6z"/>
+      <path d="M517 605.6c-34.5 1.6-78.1-13.7-112.2-36.4 18.4 14 61 39.5 112.3 38.5l-.1-2.1z"/>
+      <path d="M461.8 597.2c-4.5-3.9-5.1-7.5-6.3-11.1.4 3.5.6 7 3.5 10.6l2.8.5zm-27.3-11.7c-2.8-4.8-2-8.5-1.8-12.4-.9 3.6-2 7.1-.6 11.4l2.4 1zm5.3 4c-7.5-.8-12.8.5-18.4 1.4 5-1.3 10-2.7 16.3-2.8l2 1.4zm26 10c-7.6-.8-12.8.5-18.4 1.5 5-1.4 9.9-2.8 16.3-2.8l2 1.4z"/>
+      <path d="M517.5 629.7c-8.3-3-7.6-15-14.2-17.5-7-2.7-7.3 5.9-12.6 3.7-5.2-2.2-4.3-8.2-11.5-11.2s-11.1 3-16.3 0c-5.2-2.9 0-5-7-8s-16.4 3-25 0c-8.5-3-16.5 1.4-13.4 7.2 2 3.9 7 4.1 10.2 9.7 3.2 5.7-1 9.7 4.3 12.4 5.3 2.7 11.5-3.2 18.6-.8 7.2 2.5 3.3 6.2 9.5 7.6 6.1 1.4 8.4-2 15.2-2 6.8 0 6.3 8.3 16.5 8.2 10.3-.2 25.7-9.3 25.7-9.3z"/>
+      <path d="M534 628.6c-34.4 3.9-79-8.6-114.4-29 19.3 12.7 63.4 35.4 114.6 31.1l-.3-2z"/>
+      <path d="M478.3 623.9c-4.8-3.7-5.6-7.2-7-10.8.6 3.5 1 7 4.1 10.4l3 .4zm-28-10c-3-4.6-2.6-8.4-2.7-12.3-.6 3.7-1.4 7.3.2 11.4l2.5 1zm5.5 3.7c-7.6-.4-12.7 1.3-18.3 2.6 5-1.7 9.8-3.4 16.2-3.9l2 1.3zm26.6 8.3c-7.6-.3-12.7 1.3-18.3 2.6 5-1.6 9.8-3.4 16.2-3.8l2 1.2z"/>
+      <g id="a">
+        <path d="M207.2 997.4c6.6-4.3 15.2-3.2 20.6-6.6 5.7-3.5-3-7 1.5-9.7 4.5-2.5 10.3 3 16.5-.5s3.3-9.9 8.5-12.1c5.2-2.3 7.3 5 13.4 1.5 6-3.3 3.8-12 10.6-16.4 6.6-4.4 5.5-11.4-1.8-11.7-4.9-.1-8.7 3.6-16 3.5-7.2 0-8-6-13.1-3.6-5 2.4-1.5 9.7-7.1 13.4-5.6 3.8-11.2-2-15.2 1.5s1.9 8-1 12.5-7.4-.5-11.6 6.3c-4.3 6.8-5.3 21.9-5.3 21.9z"/>
+        <path d="M202 1007c14.5-26 42.6-46.3 79-61.5-21.5 7.7-64.6 27.1-82 62.4l3-.8z"/>
+        <path d="M230 974c5.7-1.7 9.7-.9 14-.4a31 31 0 00-12.5-1.4l-1.6 1.8zm22.1-14.5c6.1-.2 9.8 1.6 13.9 3.1-3.5-1.8-7-3.8-11.9-4.4l-2 1.3zm-6.1 2.2c3.6-4.9 4.1-8.9 5.1-13-.4 3.8-.6 7.7-2.9 12l-2.2 1zm-20 14.1c3.6-4.8 4.1-8.9 5.1-13-.4 3.9-.6 7.7-2.8 12.1l-2.3 1z"/>
+      </g>
+      <g id="b">
+        <path d="M210.3 1024.5c9 3.6 19.3 0 26.7 2.7 7.8 3-1.9 9.7 4.2 11.8 6.2 2 11.9-6.4 20.2-3.7 8.4 2.8 6.5 11.5 13.4 13 6.9 1.4 7.6-8.2 15.8-5.6 8.2 2.6 7.6 14 17 17.8 9 3.8 9.4 12.9.6 15.1-5.9 1.5-11.5-2.1-20.2 0-8.8 2-8.4 9.7-15.2 8-6.8-1.7-4.2-11.8-12-15-7.6-3.2-13 5.6-18.8 2.3-5.8-3.4.3-10.7-4.3-15.6-4.6-4.8-8.8 2.7-15.7-4.7-6.8-7.4-11.7-26.1-11.7-26.1z"/>
+        <path d="M201.6 1013.7c24 29 63.2 46.9 111.1 56.2-27.9-3.8-85.2-16.8-115-56.5l3.9.3z"/>
+        <path d="M243.7 1047.8c7.5.6 12.2-1.5 17.3-3.3-4.5 2.2-8.8 4.6-15 5.1l-2.3-1.8zm30.6 12.2c7.4-1.3 11.5-4.6 16-7.6-3.7 3.3-7.4 6.7-13.3 8.8l-2.7-1.2zm-8-1c5.5 5.1 7.2 10 9.4 15-1.4-4.8-2.7-9.6-6.5-14.5l-3-.5zm-27.8-12.4c5.5 5 7.2 10 9.4 15-1.4-4.8-2.6-9.6-6.5-14.5l-2.9-.5z"/>
+      </g>
+      <use width="744.1" height="1052.4" transform="translate(44 17.4)" xlink:href="#a"/>
+      <use width="744.1" height="1052.4" transform="translate(59.3 11.2)" xlink:href="#b"/>
+      <g id="e">
+        <path d="M353.5 1034.1c9.8 1 18.8-5.3 26.7-4.7 8.4.6.7 9.8 7.2 10 6.4.3 9.9-9.3 18.7-9 8.8.4 9.2 9.2 16.3 8.7 7-.5 5.3-9.9 14-9.6s11 11.2 21 12.3c9.8 1.1 12.5 9.7 4.5 14.3-5.3 3-11.7 1-19.7 5.4s-5.7 11.7-12.7 12c-7 .1-7.1-10.2-15.5-11.2-8.3-.9-11.3 9-17.8 7.4-6.5-1.6-2.4-10.3-8.1-13.7-5.8-3.3-8 5-16.5-.2s-18-21.7-18-21.7z"/>
+        <path d="M342.3 1026.2c30.8 21 73.5 27.4 122.6 23.2-28.2 4-87.3 7.3-126.4-22.4l3.8-.8z"/>
+        <path d="M392 1047.2c7.4-1.4 11.5-4.8 16-7.9-3.8 3.4-7.4 6.8-13.2 9l-2.8-1zm33 3.3c6.8-3.3 10-7.6 13.6-11.7-2.8 4.2-5.5 8.4-10.7 12l-3-.3zm-8.1 1.2c6.6 3.4 9.5 7.6 13 11.7-2.7-4.1-5.1-8.4-10-12l-3 .3zm-30.3-4.2c6.7 3.3 9.6 7.6 13 11.7-2.6-4.2-5-8.4-10-12l-3 .3z"/>
+      </g>
+      <path d="M292.7 1024.5c5-5 13.2-6.2 17.3-10.2 4.4-4.3-4.5-5.2-1-8.4s10.2 0 15-4.4c4.8-4.3.5-8.8 4.7-12 4.3-3 8 2.4 12.7-1.8 4.8-4.2.5-10.7 5.6-16 5-5.2 2.1-10.7-4.7-9.2-4.5 1-7 5-13.8 6.6-6.7 1.7-9-3-13 .2-4.1 3.2 1 8.4-3.1 12.7-4.2 4.4-10.8 1-13.7 4.8-2.8 3.9 3.8 6.2 2.3 10.6-1.5 4.4-7 1.3-9 7.9-2.2 6.6.7 19.3.7 19.3z"/>
+      <path d="M292 1030.3c6.7-25 25.7-44.8 55.3-65.9-17.7 11.3-50.8 34.2-57.7 67.3l2.5-1.4z"/>
+      <path d="M307.6 1000c5-2.9 8.9-3.1 13-3.8-3.8.2-7.6.2-12 1.9l-1 1.8zm16.8-17.3c5.5-1.6 9.4-1 13.6-.7-3.7-.7-7.4-1.5-12-.8l-1.6 1.5zm-5.1 3.3c2-4.8 1.5-8.3 1.3-12 .7 3.4 1.5 6.6.5 10.7l-1.8 1.3zm-14.8 16.3c2-4.8 1.5-8.2 1.4-11.9.6 3.3 1.4 6.5.5 10.7l-1.9 1.2zm41 15c4-6.2 12-9.1 15.4-14.1 3.5-5.3-5.7-4.4-2.8-8.4 3-4 10.4-2.1 14.3-7.6 4-5.5-1.2-9.3 2.4-13.3 3.7-4.1 8.6.8 12.5-4.5 4-5.4-1.7-11.2 2.4-17.7 4-6.4 0-11.5-6.6-8.6-4.4 2-6.1 6.6-12.6 9.7-6.4 3-9.8-1.4-13.2 2.8-3.5 4.1 2.8 8.4-.6 13.8-3.3 5.4-10.7 3.2-12.8 7.7-2.1 4.6 5 5.7 4.4 10.5-.6 4.8-6.7 2.7-7.6 10-.8 7.2 4.7 19.7 4.7 19.7z"/>
+      <path d="M346 1023.4c1.6-27.1 16.9-51.5 42.6-79.3-15.7 15.3-44.6 45.6-45 81.3l2.3-2z"/>
+      <path d="M355.6 988.8c4.4-3.8 8.3-4.9 12.3-6.4-3.8 1-7.6 1.7-11.7 4.3l-.6 2.1zm13.5-21.1c5.3-2.8 9.3-3 13.6-3.5-4 0-7.8 0-12.4 1.6l-1.2 1.9zm-4.6 4.3c1.2-5.3-.1-8.8-1-12.5 1.3 3.2 2.8 6.4 2.6 10.9l-1.6 1.6zM353 992c1-5.4-.2-8.9-1-12.6 1.3 3.3 2.7 6.4 2.6 10.9L353 992z"/>
+      <g id="f">
+        <path d="M505.9 948.8c7.7-4.2 11.3-13.2 17.4-16.7 6.6-3.7 5.3 6.8 10.2 3.8 5-3 2.8-11.8 9.5-16 6.7-4 11.3 2.3 16.3-1.6s-.9-10 5.7-14c6.5-4.1 13.6 2.8 21.5-1.4 7.8-4 14 1 10.3 8.3-2.5 5-8.2 6.6-12 13.8-3.8 7.2 1.5 11.4-3.6 15-5.1 3.6-10.2-3.9-16.8-.5-6.6 3.5-4 12.2-9.6 14.3-5.6 2-6.8-6.4-12.7-6-5.9.3-3.5 7.6-12.3 8-8.8.3-24-7-24-7z" transform="translate(9.4 -7.9)"/>
+        <path d="M493.7 948.5c33 .2 67.7-16.3 102-43.7-18.9 17-61 48.6-104.4 46.2l2.4-2.5z" transform="translate(9.4 -7.9)"/>
+        <path d="M540.7 939.4c4.8-4.8 6.1-9.3 8-13.8-1.1 4.3-2.1 8.6-5.4 13.2l-2.6.6zm26-14c3.5-5.8 3.7-10.5 4.5-15.3-.1 4.5 0 8.9-2.2 14.1l-2.3 1.2zm-5.4 5c6.6-1 10.7.8 15.3 2.1-4-1.8-7.8-3.7-13.2-3.9l-2.1 1.7zm-24.4 11.8c6.5-.9 10.7.8 15.3 2.2-4-1.8-7.9-3.7-13.3-4l-2 1.8z" transform="translate(9.4 -7.9)"/>
+      </g>
+      <path d="M583 716.2c3.6-8.6.8-18.5 3.6-25.6 3-7.5 8.7 2 10.7-3.9s-5.2-11.5-2.3-19.4 10.5-6 12.1-12.6c1.6-6.6-7-7.5-4.3-15.4 2.8-7.8 13-7 16.8-15.9 3.7-8.6 12-8.8 13.6-.3 1 5.7-2.5 11-1 19.4 1.4 8.5 8.4 8.3 6.6 14.8-1.9 6.5-10.8 3.8-14 11.2-3.2 7.3 4.4 12.6 1.2 18.2-3.2 5.5-9.6-.6-14.1 3.8-4.6 4.4 2 8.5-5 15-7 6.4-24 10.7-24 10.7z"/>
+      <path d="M573 724.4c27-22.6 44.7-59.9 55.2-105.8-4.6 26.8-18.8 81.6-55.7 109.4l.4-3.6z"/>
+      <path d="M605.4 684.6c.9-7.2-.9-11.7-2.2-16.7 1.8 4.3 3.7 8.5 4 14.4l-1.8 2.3zm12.3-29.2c-.9-7.2-3.7-11.2-6.1-15.6 2.7 3.7 5.6 7.3 7.2 13l-1.1 2.6zm-1.3 7.7c4.8-5.2 9.3-6.7 13.9-8.8-4.4 1.3-8.7 2.4-13.3 6l-.6 2.8zM604 689.5c4.8-5.2 9.3-6.7 13.9-8.7-4.4 1.3-8.7 2.4-13.3 6l-.6 2.7z"/>
+      <path d="M572.3 672c4.4-7.6 3-17.3 6.4-23.6 3.7-6.7 8 3 10.6-2.3 2.7-5.3-3.6-11.6 0-18.8 3.7-7.1 10.8-4.3 13-10.3 2.4-6-5.7-8-2.2-15 3.5-7.1 13-5 17.7-13 4.6-7.6 12.4-6.8 12.9 1.5.4 5.5-3.6 10-3.2 18.2.3 8.2 7 9 4.5 14.8-2.6 6-10.7 2.3-14.6 8.8-3.9 6.5 2.7 12.6-1 17.4-3.7 4.8-9-1.8-13.8 1.8-4.8 3.5.9 8.3-6.4 13.5s-24 7-24 7z"/>
+      <path d="M561.8 678.5c28.2-17.8 49.4-50.8 64.8-92.9C619 610.3 599 660.3 561 682l.8-3.4z"/>
+      <path d="M597.2 645c1.6-6.6.5-11.2-.1-16 1.1 4.3 2.5 8.5 2 14.1l-2 2zm15-26c0-6.9-2-11-3.9-15.5 2.2 3.9 4.5 7.6 5.3 13.2l-1.4 2.3zm-2 7.1c5.1-4.3 9.5-5.1 14-6.5-4.2.7-8.4 1.1-13.2 4l-.9 2.5zm-14.9 23.5c5.2-4.4 9.6-5.2 14.1-6.5-4.2.6-8.5 1-13.2 3.9l-.9 2.6zm-28.6 126.3c-7.8-5.6-18.2-4.8-24.7-9.2-6.8-4.7 3.7-8.6-1.7-12-5.4-3.5-12.5 3-19.9-1.7-7.3-4.7-3.8-12.3-10-15.4-6.3-3.1-8.9 5.7-16.1 1.2-7.3-4.5-4.5-15-12.6-21-7.8-5.7-6.4-14.3 2.4-14.2 5.9 0 10.4 4.9 19.1 5.2 8.8.3 5-4.3 11.1-1s4.9 12 11.5 17c6.7 4.9 15.2-4.7 20-.1 5 4.5-2.3 9.9 1 15.6 3.5 5.7 9-.3 14 8.3 5 8.6 6 27.3 6 27.3z"/>
+      <path d="M572.9 788.2c-17-33.1-50.6-59.6-94.2-80.4 25.7 10.6 77.4 37 97.7 81.6l-3.5-1.2z"/>
+      <path d="M539.7 745.8c-7-2.5-11.8-1.6-17-1.3 4.7-1 9.2-2 15.2-1l1.8 2.3zm-26.5-19.1c-7.4-.6-11.8 1.4-16.8 3 4.3-2 8.4-4.3 14.4-4.8l2.4 1.8zm7.3 3c-4.2-6.2-4.8-11.2-5.9-16.4.4 4.8.6 9.6 3.3 15.1l2.6 1.2zm23.9 18.5c-4.2-6.1-4.8-11.1-6-16.3.5 4.8.7 9.6 3.3 15.1l2.7 1.2zm30.3 95.2c5.8-6.6 6.3-16.4 11-21.9 4.8-5.8 7.1 4.6 10.7 0 3.7-4.6-1.2-12 3.7-18.3 5-6.3 11.3-2 14.8-7.4 3.4-5.4-4-9 .7-15.2 4.8-6.2 13.7-2.2 19.8-9 6-6.5 13.5-4 12.4 4.2-.7 5.5-5.5 9-6.7 17.2-1.3 8.1 5 10.2 1.5 15.4-3.6 5.2-10.9 0-16 5.5s.2 12.9-4.3 16.8c-4.6 4-8.5-3.6-13.9-1.1-5.4 2.4-.8 8.3-9 11.9-8.1 3.5-24.7 1.9-24.7 1.9z"/>
+      <path d="M563.2 847.5c31.1-11.6 58.3-39.4 81.5-77.3-12.2 22.6-41.4 67.4-83 80.5l1.5-3.2z"/>
+      <path d="M604.3 822.2c3-6.2 2.8-10.9 3-15.8.4 4.5.9 8.9-.7 14.3l-2.3 1.5zm19.9-22.3c1.3-6.8 0-11.3-.9-16 1.4 4.2 3 8.3 2.7 14l-1.8 2zm-3.5 6.5c6-3.2 10.4-3 15.1-3.4-4.3-.3-8.5-.7-13.7 1l-1.4 2.4zm-19 19.8c5.8-3.1 10.3-3 15-3.4-4.3-.2-8.5-.7-13.7 1l-1.4 2.4z"/>
+      <use width="744.1" height="1052.4" transform="rotate(15 310 758.4)" xlink:href="#c"/>
+      <use id="c" width="744.1" height="1052.4" transform="rotate(5 93.2 577.1)" xlink:href="#d"/>
+      <use width="744.1" height="1052.4" transform="rotate(-10 275 690.3)" xlink:href="#e"/>
+      <use width="744.1" height="1052.4" transform="rotate(10 225.4 653.9)" xlink:href="#f"/>
+    </g>
+    <use width="1" height="1" transform="matrix(-1 0 0 1 840 .1)" xlink:href="#g"/>
+  </g>
+  <g stroke="#d4af37" stroke-width=".5">
+    <path fill="#007ea8" d="M291 195.6l-14 17.5a26.2 26.2 0 017.3 17.9 53.7 53.7 0 01-2.8 17.5v.2H320V196c-8.5 5.2-20.1 7.3-29-.4z"/>
+    <path fill="#fff" d="M349 195.6c-8.8 7.7-20.5 5.6-29 .4v52.7h38.5v-.2a53.7 53.7 0 01-2.8-17.5c0-6 2.7-13.5 7.3-17.9l-14-17.5z"/>
+    <path fill="#d91023" d="M281.5 248.7c-2.1 6.5-4.8 12.2-5.6 21.6-1.2 14 10 21.5 14.6 23.7 7.2 3.4 14.6 2.2 22.3 3.2 3.5.5 5.5 2.7 7.2 4.5 1.7-1.8 3.7-4 7.3-4.5 7.6-1 15 .2 22.2-3.2 4.6-2.2 15.8-9.8 14.6-23.7-.8-9.4-3.5-15.1-5.6-21.6h-77z"/>
+  </g>
+  <g stroke="#d4af37" stroke-width="3">
+    <g fill="#00a854" stroke-width="6.2" transform="matrix(.08444 0 0 .08889 232.8 247.5)">
+      <g id="j" stroke-width="3.1">
+        <path d="M1074.7-201.4s5.9-20.4 18-29.3c12-9 25.2-5.7 33.2-8.9-5.4 6.8-6 20.3-18 29.3s-33.2 8.9-33.2 8.9zm48.7-36.4c-8.3 2.3-13.5-.3-25 4m17.4 1.8c-8.4 2.2-14.1-1.4-25.4 3.4m16.2 3.4c-8 2.8-11.7-1.2-22.5 4m13.3 3c-8 2.7-9.6-1.8-17.5 4.2m9.3 1.8c-5.2 1.7-7.5-.2-12.2 5m46.4-30.5c-4.5 7.3-3.5 13-10.8 22.8m3.2-17.1c-4.5 7.3-2.8 13.9-10.5 23.3m1.3-16.5c-5 6.8-2.2 11.5-10.3 20.4m1-13.5c-4.9 6.8-1 9.7-9 15.6m.9-9.5c-3 4.5-2 7.3-8.3 10.2"/>
+        <path d="M1130.8-243.6l-24.2 18-31.6 24 32-23.5 24.2-18m-23-73.9s16.7 13 20.5 27.5c3.8 14.5-4 25.5-4 34.1-4.4-7.4-16.7-13-20.7-27.5s4.1-34.1 4.1-34.1zm15.6 58.7c1-8.6 5.3-12.4 5.7-24.6m-8.1 15.3c1-8.5 6.4-12.6 6.2-24.7m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.3 2.5-17.9m-5.1 8c.3-5.4 3-7-.2-13.2m11.2 54.5c-5.1-7-10.8-8.1-17.1-18.5m14.7 9.3c-5.2-7-12-7.8-17.8-18.4m14.8 7.3c-4.5-7.1-9.9-6.3-15.2-17.1m12.2 6c-4.5-7.1-8.6-4.6-11-14.2m8.4 4.3c-3-4.5-6-4.5-6.4-11.5"/>
+        <path d="M1126.6-249.3l-7.8-29.1-10.6-38.3 10 38.5a5074.4 5074.4 0 007.8 29"/>
+        <g id="h">
+          <path d="M1206.4-261.9s16.8 13 20.6 27.6c3.8 14.5-4 25.5-4 34-4.4-7.4-16.7-13-20.6-27.4-4-14.5 4-34.2 4-34.2zm15.7 58.7c1-8.5 5.4-12.4 5.7-24.6m-8.1 15.4c1-8.6 6.4-12.6 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.2 2.5-17.8m-5.1 8c.4-5.5 3-7-.2-13.2m11.2 54.4c-5.1-6.9-10.8-8-17.1-18.5m14.7 9.3c-5.2-6.9-12-7.7-17.8-18.3m14.8 7.2c-4.5-7-9.9-6.3-15.1-17m12.1 6c-4.5-7.2-8.6-4.7-11-14.3m8.4 4.4c-3-4.5-6-4.6-6.4-11.5"/>
+          <path d="M1224.9-194.1l-7.8-29.2-10.6-38.2 10 38.4a5155 5155 0 007.8 29.1m-53.8 57.3s2.9-21 13.5-31.6c10.7-10.6 24.2-9.2 31.6-13.5-4.3 7.4-3 20.9-13.5 31.6-10.6 10.6-31.6 13.5-31.6 13.5zm43-43c-8 3.4-13.4 1.7-24.2 7.5m17.4-.7c-8 3.4-14.2.7-24.6 7m16.5 1.1c-7.4 3.9-11.7.5-21.7 7.2m13.6 1c-7.5 3.8-9.7-.4-16.7 6.7m9.5.4c-5 2.4-7.5 1-11.3 6.8m41.5-37c-3.4 8-1.7 13.4-7.5 24.1m.7-17.3c-3.4 7.9-.7 14.1-7 24.6m-1.1-16.5c-3.9 7.4-.5 11.7-7.2 21.7m-1-13.6c-3.8 7.5.4 9.7-6.7 16.7m-.5-9.5c-2.4 5-.9 7.5-6.7 11.3"/>
+          <path d="M1219.9-186.6l-21.3 21.4-27.9 28.2s18.9-18.4 28.3-27.8a5074.4 5074.4 0 0021.4-21.3"/>
+        </g>
+        <path d="M1057-278.6s20.6-5.1 34.4.9c13.8 6 17.5 19 24.3 24.3-8.5-1.2-20.5 5-34.4-.9-13.8-5.8-24.2-24.3-24.2-24.3zm55.9 24c-6-6-6.5-11.8-15.9-19.6m7.1 15.8c-6-6-5.9-12.9-15.6-20.2m5 15.7c-6.3-5.5-4.7-10.7-14.7-17.4m4.2 12.9c-6.4-5.5-3.3-9.2-12.5-13m3.1 9c-4-3.7-3.6-6.7-10.4-8m49.7 24.8c-8.6-.2-13 3.5-25.2 2m16.4-5.8c-8.6-.2-13.4 4.6-25.4 2.6m14.9-7.1c-8.4-.9-11 3.9-22.8 1.3m12.2-5.8c-8.3-.9-8.9 3.9-18-.1m8.6-4c-5.4-.4-7.2 2-13-2"/>
+        <path d="M1121.7-251.2L1094-263l-36.6-15.4 36.3 16a5135.7 5135.7 0 0027.7 12M1072.3-384s14.7-15.3 29.5-17.5c14.9-2.3 25 6.7 33.5 7.6-7.8 3.5-14.7 15.2-29.5 17.6-14.9 2.4-33.5-7.7-33.5-7.7zm60-9.4c-8.4-2-11.8-6.6-23.9-8.2m14.5 9.7c-8.4-2-11.9-7.8-24-8.9m12.6 10.7c-8.3-1.3-9.7-6.5-21.7-7m10.4 8.7c-8.3-1.2-7.7-6-17.5-4.3m7.4 6c-5.4-1-6.6-3.8-13.1-1.3m55.3-5.4c-7.4 4.4-9.2 9.9-20.2 15.1m10.8-13.6c-7.4 4.4-9 11-20.2 15.7m8.8-14c-7.5 3.8-7.3 9.2-18.6 13.3m7.3-11.5c-7.5 3.7-5.5 8-15.3 9.5m5.2-7.9c-4.8 2.5-5.2 5.5-12.1 5.1"/>
+        <path d="M1141.6-395l-29.8 4.6c-13.1 2-39.2 6.4-39.2 6.4l39.3-5.8 29.8-4.6M1102-455s20 7 28.2 19.6c8.2 12.6 4.2 25.5 6.9 33.7-6.4-5.7-19.9-7.1-28.2-19.6-8.3-12.6-6.9-33.7-6.9-33.7zm33.4 50.8c-1.7-8.5 1.1-13.5-2.4-25.2m-2.8 17.2c-1.7-8.5 2.1-14-2-25.5m-4.3 15.9c-2.3-8 1.8-11.6-2.7-22.7m-3.7 13c-2.3-8 2.3-9.4-3.2-17.6m-2.4 9.2c-1.3-5.3.6-7.6-4.3-12.5m27.8 48.2c-7-5-12.8-4.4-22.1-12.2m16.9 4.2c-7.1-5-13.8-3.6-22.7-11.9m16.4 2.3c-6.5-5.3-11.4-2.9-19.8-11.5m13.4 1.9c-6.5-5.3-9.5-1.7-15-10m9.4 1.5c-4.3-3.4-7.1-2.4-9.6-9"/>
+        <path d="M1141-396.4l-16.6-25.2-22.1-33 21.6 33.3a5079.8 5079.8 0 0016.5 25.2"/>
+        <g id="i">
+          <path d="M1213.7-401.8s16.7 13 20.6 27.5c3.8 14.5-4.1 25.5-4.1 34.1-4.3-7.4-16.6-13-20.6-27.5s4-34.1 4-34.1zm15.7 58.7c1-8.6 5.3-12.4 5.6-24.6m-8 15.4c1-8.6 6.4-12.7 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.5-22.4m-7.5 11.3c.3-8.4 5.1-8.3 2.5-17.9m-5.2 8c.4-5.4 3-7-.2-13.1m11.3 54.4c-5.2-6.9-10.8-8.1-17.2-18.5m14.7 9.3c-5.2-7-11.9-7.7-17.8-18.4m14.9 7.3c-4.5-7.1-10-6.3-15.2-17.1m12.2 6c-4.5-7.1-8.6-4.6-11.1-14.2m8.4 4.3c-3-4.5-6-4.5-6.3-11.5"/>
+          <path d="M1232.1-334.1l-7.8-29.1-10.5-38.3s6.5 25.6 10 38.5a5074.4 5074.4 0 007.7 29m-64.4 39s8.2-19.5 21.3-27c13-7.4 25.7-2.6 34-4.8-6.1 6-8.3 19.4-21.3 27-13 7.6-34 4.9-34 4.9zm52.6-30.3c-8.5 1.2-13.4-1.9-25.2 1m17 3.8c-8.6 1.2-14-3-25.6.4m15.6 5.3c-8.2 1.9-11.4-2.5-22.8 1.4m12.9 4.4c-8.2 1.8-9.3-2.9-18 2.2m9.1 2.9c-5.3 1-7.4-1-12.6 3.6m49.6-25c-5.3 6.8-5 12.6-13.4 21.4m5.2-16.6c-5.4 6.8-4.4 13.5-13.2 22m3.2-16.3c-5.7 6.2-3.5 11.2-12.6 19m2.7-13.2c-5.7 6.1-2.2 9.4-10.9 14.3m2-9.2c-3.5 4-2.8 7-9.4 9.1"/>
+          <path d="M1227.7-330.3l-26 15.1-34.3 20.1 34.5-19.5a5074.4 5074.4 0 0026.1-15.1"/>
+        </g>
+        <path d="M1182.2-442s19.7-8 34.2-4c14.5 4 20 16.3 27.4 20.7-8.6 0-19.6 7.8-34.1 4-14.5-4-27.5-20.7-27.5-20.7zm58.7 15.9c-6.9-5.2-8.1-10.9-18.5-17.2m9.2 14.7c-6.8-5.2-7.6-12-18.2-17.9m7.2 14.9c-7.1-4.5-6.3-10-17-15.2m5.9 12.2c-7-4.5-4.6-8.6-14.2-11.1m4.3 8.4c-4.5-3-4.5-6-11.4-6.4m52.7 17.6c-8.6 1-12.5 5.2-24.6 5.5m15.4-8c-8.6 1-12.7 6.4-24.8 6.1m13.7-9.1c-8.4.3-10.4 5.4-22.4 4.5m11.3-7.5c-8.4.3-8.3 5-17.9 2.4m8-5c-5.4.2-7 2.8-13.1-.4"/>
+        <path d="M1250-424l-29-7.9-38.5-10 38.3 10.7a5074.4 5074.4 0 0029 7.8m-34.7-73.7s19.5 8.2 27 21.3c7.4 13 2.6 25.7 4.8 34-6-6.1-19.4-8.3-27-21.3-7.5-13-4.8-34-4.8-34zm30.3 52.7c-1.2-8.6 2-13.4-.9-25.3m-3.9 17c-1.2-8.6 3-13.9-.3-25.6m-5.4 15.6c-1.8-8.2 2.6-11.4-1.3-22.8m-4.4 12.8c-1.8-8.2 2.8-9.3-2.2-17.8m-2.9 9c-1-5.3 1-7.5-3.6-12.7m24.9 49.8c-6.8-5.4-12.6-5.1-21.4-13.5m16.6 5.2c-6.8-5.4-13.5-4.4-21.9-13.2m16.2 3.2c-6.2-5.7-11.2-3.5-19-12.6m13.3 2.7c-6.2-5.7-9.5-2.3-14.4-11m9.3 2c-4-3.5-7-2.7-9.1-9.4"/>
+        <path d="M1250.3-436.4l-15-26.2-20-34.3 19.5 34.6a5040.8 5040.8 0 0015 26.2"/>
+        <use width="744.1" height="1052.4" transform="translate(-32 -18)" xlink:href="#h"/>
+        <path d="M1142.4-297.9s16.8 13 20.6 27.6c3.8 14.5-4 25.5-4 34-4.4-7.4-16.7-13-20.6-27.4-4-14.5 4-34.2 4-34.2zm15.7 58.7c1-8.5 5.4-12.4 5.7-24.6m-8.1 15.4c1-8.6 6.4-12.6 6.2-24.8m-9.2 13.7c.3-8.4 5.4-10.4 4.6-22.4m-7.6 11.3c.4-8.4 5.2-8.2 2.5-17.8m-5.1 8c.4-5.5 3-7-.2-13.2m11.2 54.4c-5.1-6.9-10.8-8-17.1-18.5m14.7 9.3c-5.2-6.9-12-7.7-17.8-18.3m14.8 7.2c-4.5-7-9.9-6.3-15.1-17m12.1 6c-4.5-7.2-8.6-4.7-11-14.3m8.4 4.4c-3-4.5-6-4.6-6.4-11.5"/>
+        <path d="M1160.9-230.1l-7.8-29.2-10.6-38.2 10 38.4a5155 5155 0 007.8 29.1m-53.8 57.3s2.9-21 13.5-31.6c10.7-10.6 24.2-9.2 31.6-13.5-4.3 7.4-3 20.9-13.5 31.6-10.6 10.6-31.6 13.5-31.6 13.5zm43-43c-8 3.4-13.4 1.7-24.2 7.5m17.4-.7c-8 3.4-14.2.7-24.6 7m16.5 1.1c-7.4 3.9-11.7.5-21.7 7.2m13.6 1c-7.5 3.8-9.7-.4-16.7 6.7m9.5.4c-5 2.4-7.5 1-11.3 6.8m41.5-37c-3.4 8-1.7 13.4-7.5 24.1m.7-17.3c-3.4 7.9-.7 14.1-7 24.6m-1.1-16.5c-3.9 7.4-.5 11.7-7.2 21.7m-1-13.6c-3.8 7.5.4 9.7-6.7 16.7m-.5-9.5c-2.4 5-.9 7.5-6.7 11.3"/>
+        <path d="M1155.9-222.6l-21.3 21.4-27.9 28.2s18.9-18.4 28.3-27.8a5074.4 5074.4 0 0021.4-21.3"/>
+        <use width="744.1" height="1052.4" transform="translate(-62 -40)" xlink:href="#i"/>
+        <use width="744.1" height="1052.4" transform="translate(-31 -20)" xlink:href="#i"/>
+      </g>
+      <use width="744.1" height="1052.4" transform="matrix(-1 0 0 1 2501 0)" xlink:href="#j"/>
+      <path fill="#947245" d="M1250.5-437.1c-8.6 41.6-8.6 79.1-8.6 79.1-.5 14-7.4 23.7-13.8 20-54.9-31.7-60.3-37.5-89.1-59.6 24.3 26.4 31.2 38.2 86.7 70.2 10.7 6.2 12 16.4 11.6 29.5l-1.6 61.7c-.3 9 5.7 50.1-22.6 34.2-65.4-36.6-63.8-33.6-95.1-51.6 38 32.3 24.4 23.4 90.6 61.7 12 6.9 24.5 24.5 24.5 32.8 0 124.3 1.9 101.5-12.8 139.1h60.4c-14.7-37.6-12.8-14.8-12.8-139 0-8.4 12.6-26 24.5-33 66.2-38.2 51.5-29.3 89.6-61.6-31.3 18-28.7 15-94.1 51.6-28.3 15.9-22.3-25.2-22.6-34.2l-1.6-61.7c-.5-13.1.9-23.3 11.6-29.5 55.5-32 62.4-43.8 86.7-70.2-28.8 22-34.2 28-89.1 59.6-6.4 3.7-13.3-6-13.8-20 0 0 0-37.5-8.6-79.1z"/>
+    </g>
+    <g stroke-width="2.7">
+      <path fill="#e3e4e5" stroke-linecap="square" d="M264.4 424.6c-.2 1 1.6 12.4.6 15.7-.5 4.5-.6 5.2-1.7 11.1-1 5.9-2.4 17.3-4.4 24.2a37.3 37.3 0 00-.7 12.4l3.6 19.4s1.6 2 1.8 2.7c.3.8-.1 2 0 2.3 1 1.3 1.1 2.7 2.2 3.8.2.2 1 .1 1.1.4.2.2 1.5.3 1.8.4.8.8.6 1.3 1 2.4h-6.3c.2-2.8-2-3.9-2-3.9-.3-.3-2.9-1-3.2-2.7-.4-2.4 0-2.8 0-2.8s-2.2-9-3-11.4c-.6-1.7-.7-2.6-1-4-.7-4.3-1-6.2-3.2-12.5-.6-1-2-1.4-1.9-2.9l.7-1.4v-1.2l1.1-15.5a1.9 1.9 0 00.3-.7c.6-8.8-4.1-17-7.1-25-.6-1.4-.1-3-.7-4.4-3.2-1-5.4-6.4-6.6-9.8a23 23 0 01-.7-11.6 5 5 0 011-2.5m63.2 36.7a8.3 8.3 0 012.5-.4l1 1.5c1.5 2.8 3.4 15.4 4.4 21.2l1.5 7.9s-.4 2 .3 4.3l.6 2.1c.8 3 1.7 3.8 1.7 3.8.2.8 1.4 6.8 1.7 7.5a75.2 75.2 0 012.6 16.7c-.1 4.7-.1 4.2.3 4.6 1 1 1.5.4 3.8 6.1 0 .5.2-.2.5.2.2.6.7.5 1.1.6.8 0 .6.2 1.2.3a6.3 6.3 0 001.6 0h5.5a5.4 5.4 0 00-4.9-3.4c-.8-.5-1.8-1.2-2.1-2.3l-2.3-3.3c.1-.7-.4-1.7-.6-2.5l-2-23.2s.4-2.3.4-4.7c-.2-12.8.6-25.6 1-38.5.2-1 4-4.7 4-4.7" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" stroke-linecap="square" d="M356.8 323.8a7.3 7.3 0 00-5.5 2.5 22 22 0 00-3 10.6c-.1.8.2 1.4 0 2.2a83.3 83.3 0 00-1.7 5c-.7 4.2-.9 19.7-2 25.6-1 6-6 14.6-8 17.4a9.7 9.7 0 01-4.5 2.2c-.8.2-7.2-.5-7.2-.5-8.4-.6-21-5.2-29.5-6.4-8.4-1.1-18.7-.6-26.6-1.4 0 0-10-3.7-19.1-1-9 2.6-14.1 7.5-22 19.5 0 0-3.4 4.1-3.4 5.5a17 17 0 005.2 12.8c1.1 1 .8.1.7-.1.4.7.7 2.4 1.2 3a43.7 43.7 0 013.2 5.2c.8 1.5.4 3.3 1.1 4.8 3.9 8.3 2 16.8 2 26.5a2 2 0 01-.1.8c-.1 5.7-5.7 13.3-5.7 19v1.2l-.7 1.6c0 1.6-2.1 1.9-1.5 3 3 6.7 3.4 8.7 4.5 13.2.4 1.7.6 2.6 1.3 4.5 1 2.4 4 12 4 12s-.3.6.3 3.2c.4 1.8 3.3 2.3 3.6 2.6a6 6 0 002.7 4.7c0 .4 2.5.3 2.8.3l3-.2c0-1.3-.4-2-1.3-2.8-.3-.1-1.5-.5-1.7-.7l-.6-1c-1.3-1.1-1.5-2.6-2.6-4-.2-.2.1-1.6-.2-2.4-.3-.9-2.2-2.8-2.2-2.8l-5.2-20.9c-.7-4.7 2.8-7.4 3.2-11.3 0-.8 4.6-12.2 4.8-12.8 3.3-8.9 8.8-22.8 8.7-28.7-.1-6.6-.3 1.3.3-3.7.5-3.8-1.7-13.8-1.5-14.8 12.4 20.7 24.5 28.2 44.5 26.2a9 9 0 012.5 0s.5 1.1.5 1.6c.8 2.9-1 15.3-1.7 21.2l-.8 7.8s-1 2-1 4.2v2.1c-.1 3 .6 4 .6 4l-.5 7.4a60.9 60.9 0 01-2.3 15.4c-.2.6-.7 1.5-1.3 1.6-.6.5-1.5 1.4-1.6 2.2 0 .6 0 1.2.2 1.8 0 .5.5 1.2.8 1.6.4 1.8.2 3.6.2 5.4l.3 1.7c.1.5.6.5 1 .6.7.2.5.6 1 .8l1.6.1h5.4c-.1-2-2-3-3.5-4-.7-.6-.6-.8-.6-1.8l-.1-4c0-.7.3-1 .5-1.5.3-.7.1-1.7.1-2.5 1-6.9 2.2-14 4-20.6 1.5-2 2.1-4.3 2.5-6.7 0 0 1.2-3.2.8-5l5-30a3.9 3.9 0 012.4-2.3c6.1-2.7 12.3-4.6 18-8.6 6.4-4.4 10.2-11.6 14.7-18 1-2 2.1-3.6 3.2-5.4a93 93 0 0010-27.2c1.5-8.5 1-16.9 3.4-27 .5-2.1 2.4-3.8 2.8-6v-.5l1.2-.1 3.8-.5h3.2l1.8.1c.5 0 1.4.6 1.9.6s1-.1 1.3-.6c.7-.8.7-.5.9-1.3 0-.2.3 0 .4 0 .5-.2.9-.8 1.4-1 .4 0 .7-.2.8-.5v-1.6c0-.8 0-.8-.5-1h-.2c-.6-.2 0-1.4 0-2a3.8 3.8 0 00-.1-1.6 2.4 2.4 0 00-.9-1.1l-.9-1c-2.8-2.3-4-4.1-6-6 .3-.4.3-.6.2-1.3-1-2.7-2.7-3.2-5.6-5.4a25.6 25.6 0 00-10.1-3.7h-1.6a6.6 6.6 0 00-.4 0z" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#d18219" stroke="none" d="M311.9 205.5a1.4 1.4 0 00-1 .5 4.6 4.6 0 00-.7 2v.5l-.3 1c-.1.8-.2 3.8-.4 5a10.9 10.9 0 01-1.5 3.4c-.2.3-.8.4-.9.4h-1.4c-1.6-.2-4.1-1-5.8-1.3-1.6-.2-3.6-.1-5.1-.3 0 0-2-.7-3.8-.2-1.7.5-2.7 1.5-4.3 3.8 0 0-.6.8-.6 1.1a3.4 3.4 0 001 2.5l.2.2c0-1.4.2-2 .2-2a5.7 5.7 0 00.4 2l.7 1.1c.3 1 .6 3.7.8 4.8 0 .6-.4 2.6-.7 3.5-.5 1.7-.8 3.2-.1 2 .3-.4 1.4-2.6 2-4.6.6-2 1.2-3.2 1-3.6l-.3-3.1a1.7 1.7 0 010-.2v-.3l.2-1.5c2.9 5.4 7.5 6 10.5 2.3a15.6 15.6 0 00-.4 4.7v.8l-.5 5.1v.1l-.2.6v.8l.1.1v.8-.1c.3-.2.4-.6.4-1v-.1l.2-.3v-.5l1-6a.6.6 0 010-.2l.8-.7c.1-.2.7-2.6.6-4-.2-3.5 4.3-4.5 5.8-2.8.6-.3 1-.7 1.5-1.2a7.8 7.8 0 001-1.8v-.4a11.7 11.7 0 00.2-.8 14.6 14.6 0 00.2-1.3l.1-1.3.1-1.3a14.8 14.8 0 01.3-1.4l.1-.3.2-.3.1-.3.1-.3v-.1h.2-1.7a2.1 2.1 0 01-.8-1l.3-1.7c.4-.8.8-.2 1.7 0a7.6 7.6 0 012.5 1.4h.9v-.3a1.7 1.7 0 000-.2v-.2a.5.5 0 00-.1-.1l-.2-.2-1.2-1.2v-.2c-.1-.6-.5-.7-1-1.1a5 5 0 00-2-.7h-.3a1.3 1.3 0 00-.1 0z"/>
+      <path fill="none" stroke-linecap="square" d="M356.8 323.8a7.3 7.3 0 00-5.5 2.5 22 22 0 00-3 10.6c-.1.8.2 1.4 0 2.2a83.3 83.3 0 00-1.7 5c-.7 4.2-.9 19.7-2 25.6-1 6-6 14.6-8 17.4a9.7 9.7 0 01-4.5 2.2c-.8.2-7.2-.5-7.2-.5-8.4-.6-21-5.2-29.5-6.4-8.4-1.1-18.7-.6-26.6-1.4 0 0-10-3.7-19.1-1-9 2.6-14.1 7.5-22 19.5 0 0-3.4 4.1-3.4 5.5a17 17 0 005.2 12.8c1.1 1 .8.1.7-.1.4.7.7 2.4 1.2 3a43.7 43.7 0 013.2 5.2c.8 1.5.4 3.3 1.1 4.8 3.9 8.3 2 16.8 2 26.5a2 2 0 01-.1.8c-.1 5.7-5.7 13.3-5.7 19v1.2l-.7 1.6c0 1.6-2.1 1.9-1.5 3 3 6.7 3.4 8.7 4.5 13.2.4 1.7.6 2.6 1.3 4.5 1 2.4 4 12 4 12s-.3.6.3 3.2c.4 1.8 3.3 2.3 3.6 2.6a6 6 0 002.7 4.7c0 .4 2.5.3 2.8.3l3-.2c0-1.3-.4-2-1.3-2.8-.3-.1-1.5-.5-1.7-.7l-.6-1c-1.3-1.1-1.5-2.6-2.6-4-.2-.2.1-1.6-.2-2.4-.3-.9-2.2-2.8-2.2-2.8l-5.2-20.9c-.7-4.7 2.8-7.4 3.2-11.3 0-.8 4.6-12.2 4.8-12.8 3.3-8.9 8.8-22.8 8.7-28.7-.1-6.6-.3 1.3.3-3.7.5-3.8-1.7-13.8-1.5-14.8 12.4 20.7 24.5 28.2 44.5 26.2a9 9 0 012.5 0s.5 1.1.5 1.6c.8 2.9-1 15.3-1.7 21.2l-.8 7.8s-1 2-1 4.2v2.1c-.1 3 .6 4 .6 4l-.5 7.4a60.9 60.9 0 01-2.3 15.4c-.2.6-.7 1.5-1.3 1.6-.6.5-1.5 1.4-1.6 2.2 0 .6 0 1.2.2 1.8 0 .5.5 1.2.8 1.6.4 1.8.2 3.6.2 5.4l.3 1.7c.1.5.6.5 1 .6.7.2.5.6 1 .8l1.6.1h5.4c-.1-2-2-3-3.5-4-.7-.6-.6-.8-.6-1.8l-.1-4c0-.7.3-1 .5-1.5.3-.7.1-1.7.1-2.5 1-6.9 2.2-14 4-20.6 1.5-2 2.1-4.3 2.5-6.7 0 0 1.2-3.2.8-5l5-30a3.9 3.9 0 012.4-2.3c6.1-2.7 12.3-4.6 18-8.6 6.4-4.4 10.2-11.6 14.7-18 1-2 2.1-3.6 3.2-5.4a93 93 0 0010-27.2c1.5-8.5 1-16.9 3.4-27 .5-2.1 2.4-3.8 2.8-6v-.5l1.2-.1 3.8-.5h3.2l1.8.1c.5 0 1.4.6 1.9.6s1-.1 1.3-.6c.7-.8.7-.5.9-1.3 0-.2.3 0 .4 0 .5-.2.9-.8 1.4-1 .4 0 .7-.2.8-.5v-1.6c0-.8 0-.8-.5-1h-.2c-.6-.2 0-1.4 0-2a3.8 3.8 0 00-.1-1.6 2.4 2.4 0 00-.9-1.1l-.9-1c-2.8-2.3-4-4.1-6-6 .3-.4.3-.6.2-1.3-1-2.7-2.7-3.2-5.6-5.4a25.6 25.6 0 00-10.1-3.7h-1.6a6.6 6.6 0 00-.4 0z" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#d39044" stroke-linecap="square" d="M382.3 343.8l-.3 1.2v.2l.3-1.2v-.2z" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M335 432.9c-2.1 8.3-7.2 10-3.5 17 0 0-1.6 0-2.6-2.8a17 17 0 01-.7-6.3 46.8 46.8 0 011.2-8.5" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M338.8 429.4c-2.1 8.4-7.2 10-3.5 17.1 0 0-2 0-3-2.7a19 19 0 01-.8-5.4c0-1.7.4-4.7.8-6a31 31 0 011.2-3.2" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M345.8 418.4c-3 5.5-5.3 10.2-6.6 14.3-1.2 4-2 6.3.4 10.6 0 0-1.6-.8-3.7-4.6a13 13 0 01-.8-6.6 30.6 30.6 0 01.8-4.4 30 30 0 01.8-2.6" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M348.5 414.9c-1.8 2.8-2.4 5.5-3.4 7.7a29 29 0 00-3.1 10.5c0 2-.3 3.7 1.9 7.1 0 0-1-.1-1.7-.5a6.2 6.2 0 01-2.3-2.7 15 15 0 01-1.3-6.5c0-1.5.5-3.7.9-5.2s1.8-4.5 1.8-4.5" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#d18219" fill-rule="evenodd" stroke-width="1.4" d="M353.3 334.5c0-.2-11.6-3.6-13.3-13.8 2.3-2.2 14.3 5.7 14.5 13" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill-opacity=".5" fill-rule="evenodd" stroke-width="1.4" d="M340.4 320.8c.1.2 6.3.2 11.2 10.6-1.1-1.2-6 1.7-11.1-10.2" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill-rule="evenodd" stroke-width="1.4" d="M368.7 335.6c.2-.2.4-.5.1-.8-5-3.2-4.8.7-8.4.7 1.7 0 1.7.2 2.3 1 2.3 2.4 4 2.2 6-.2" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="none" stroke-linecap="square" d="M381.2 349.8c-.6.6-2.5-.8-4-1" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill-rule="evenodd" stroke-linecap="square" d="M382.3 346s-.5-.5-4.3-1c0 0 2.6-2.7 2.8.3" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="#fff" fill-rule="evenodd" d="M302.7 436.9a33.6 33.6 0 00-1 1.8c-1 2.3-1.4 4.5.5 8 0 0-1.6 0-2.6-2.8-.5-1.3-.8-3.3-.7-6.3l.2-2.4" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+      <path fill="none" d="M230.7 419.1s-1.5-6.2 2.1-13" transform="matrix(.19494 0 0 .1962 242.4 142)"/>
+    </g>
+    <g fill="#e7ca00" stroke-width="2.3">
+      <path d="M401.4 879.5c-2-1.6-4-6.3-3.2-8.9-2.7-2.2-9.7 2.2-6.3 8.6 3.3 6.4 8 5.8 9.5.3zm19.1 6c.6-3.6-.7-9.7-7-10.8-6.1-1-8 4.6-6.9 10.3 4.5-3.4 11.7-1.6 14 .5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M407.4 882c1-4.7 5.9-6 10.6-5.6-3-3.3-6-8.8-10.3-5.6-3.3 2.5-5.6 6.2-.3 11.2z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M404.8 879.3c.5-3.6 2-8.4 5.9-10.4-3.4-3-11.7-2.1-12.3 4.1-.6 6.2 3 7.5 6.4 6.3zm-16 40c5.4 1 12.4-1.7 10.4-13.6-1.9-11.3-10.2-14-10.8-11.4 4.8 1.7 4.1 17.7.5 25.1z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M396.8 918.1c5.3 1 13.7-2.1 9.9-13.8-3.7-11.5-12.2-10-12.8-7.2 4.7 1.9 6.5 13 2.8 21z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M376.7 918.2c3.9 3.4 13.9 4.7 17-6.9 3-10.9.3-14.4-3.6-16.1 2 5.6-5 21.6-13.4 23zm25.5-1c3.2-1.8 10.6-5 5.8-16-4-9-10.1-5.2-11.8-3.7 4.3 1.8 8.1 11.5 6 19.7z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M409.2 914.6c3-2 10.7-7 4.6-17.8-6.1-10.5-14.2-3.5-14.2-.7 3.5 1 9.6 10 9.7 18.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M416.7 907.3c2-2.8 7.2-9.8-.7-16.8a6.7 6.7 0 00-12 4.3c3.2-.5 10.6 5.2 12.7 12.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M421.2 896.3c.5-3.6 2-12.6-7-14.7-9-2-9.6 8.6-8.1 10.4 2.4-2.2 10.5-1 15 4.3zm-50.3 18.6c3.4 4.2 13.4 7 18.7-4.1 5-10.7 2.7-14.7-1-17.2 1 6.1-9 21.3-17.7 21.3z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M360.9 906.7c3.2 6.6 19.2 14 25.5 2 5.9-11.6 1-22.2-4-26.2 2.4 11.8-12 29.7-21.6 24.2z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M352.4 898.4c7.8 17.2 24.1 14.2 29.6 1.7 5.2-11.8 3.8-18.8-2.2-24.4-4 15.2-12.2 23.7-27.5 22.7z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M342 884c5.9 21.5 27 19 36 6.6 6.4-8.7 4.2-15.1 1-19-7 8.3-19 15.6-37.1 12.4z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M338 871c.6 21.8 26 24.3 37.4 11.7 8-8.8 7.3-15.4 5.2-19.3-8.4 8.4-25.3 18.4-42.6 7.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M332.7 850.2c-3.9 28.4 29.1 37.6 43.5 20.7 7.7-9 7.3-15.4 5.2-19.3-14.3 10-39.2 11.2-48.7-1.4z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M329.5 823.5c-9.5 30.7 19.2 41.6 38 38.6 14.9-2.4 23.2-20 21.1-23.8-18.6 13.1-55.4 1.8-59.2-14.7z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M329 799.7c-12.6 29.9 15.4 47.4 38.6 45.7 15.3-1.2 27.8-7.1 27.2-19.6-22.7 8-58.2-5.4-65.8-26.1z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M330 775c-12.7 30.5 14.7 55.6 43.4 56.3 14.7.3 21.4-3.6 27.2-13.3-20.7 3.5-64.9-28-70.6-43z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M329.6 765.3c-11.4 35.9 80.3 80.4 85 33.7-22 11.5-81.8-20.7-85-33.7z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M327.5 755.6c-15.4 19.8 93 78.2 95.5 28.4-9.7 5-29.8.7-49.2-8.1-19.4-8.8-33.2-22.9-46.3-20.3z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M311 751.1c19.6.5 61.3 31 89.3 36 17.8 3.3 32.4-4.2 24.1-35.5-28.5 29.1-83-17.8-111.8-6.8-3-1.4.7 8.4-1.6 6.3z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M314.7 755.5c19-11.8 58.4 10.1 86.2 11.3 17 .7 38.4-18.6 24.4-47-21.9 37.6-82.9 7.5-108.6 27.3-2 4.3-.9 10-2 8.4z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M307.1 756.8c20.2-14.8 61.6-6.2 88-8.4 17.6-1.4 43.8-32 19.9-57.5-14.9 53.9-64.5 27.3-107.3 58.3-2.1 5.5.8 8.9-.6 7.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M314.4 752c16.7-15.7 57.6-14.7 82-27.1 16.2-8.3 32.8-43.6 4.3-61.4-3 56.7-55.2 39-87.5 81-.7 6 2.8 8.4 1.2 7.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M316.1 744.5c12.4-22.1 50.3-27.6 70.8-46 18.4-16.5 23.4-46.4-7.6-56-2.6 59.3-43.8 46.8-60.7 82.3-3.2 7.8-1.6 20.5-2.5 19.7z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <path d="M325.5 722c12.7-20.2 22.2-13.3 42.4-34 17.3-17.7 22.6-60.3-7.8-61.3 4.5 51.5-15.3 52-29.2 79.7.5 6.1-3.6 16-5.4 15.5z" transform="matrix(.01896 -.24347 .22029 .02096 145.1 340.8)"/>
+      <g stroke-width="3">
+        <path fill-rule="evenodd" d="M310.4 602.7l-10.5 5.6L250 762.1l18.1 40 17.2 2.6L306 803l30.7-138.4 8.7-56.5-21-12.4-14 6.9z" transform="matrix(.01291 -.19952 .15288 .02036 190.6 323)"/>
+        <path d="M309.3 597.5l1.3 6.1c9.8-6.8 20.4-.2 23.3 15.6 2.9 15.8-3 39-13.7 56.7a167.2 167.2 0 00-17 56.2c-1.8 18.8 1.9 41.7-2.2 62.6-2.6 10-7.9 9.1-18.2 8.5 4.1 6.8 9.3 10.6 16 10.3 14.4-3.2 24.7-16.1 28.5-44.8a106 106 0 019.8-72 85.9 85.9 0 0026.3-50 54 54 0 00-9.6-39.1c-11.5-17.4-20.8-18-29.6-16.4l-15 6.3z" transform="matrix(.01291 -.19952 .15288 .02036 190.6 323)"/>
+      </g>
+      <path fill-rule="evenodd" stroke-width=".5" d="M-325.7 629.7c0-3.1 2-5.6 4.5-5.6s4.5 2.5 4.5 5.6h-9z" transform="matrix(1.00994 .34063 .4261 -.98295 369.3 1013.3)"/>
+      <path d="M295.5 723c-3.8 7.3-11.3 10.6-16.7 7.5-5.4-3.2-6.7-11.7-3-19 3.8-7.3 11.3-10.6 16.8-7.4 5.4 3.1 6.7 11.7 2.9 19zm-19-82c-2.5-3.5-6.3-5.7-10.3-5a12 12 0 00-6.6 3.9l-.2-1c-1.4-7.7 4.8-16.8 11.4-18 3-.5 5.7.6 8 2.7a15.2 15.2 0 00-1.2 8.8 15.2 15.2 0 001 3.6 18.3 18.3 0 00-2 5z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M300.3 632.4c-2.9-3.6-6.7-5.8-11-5.2-4 .5-8 3.6-10.7 7.7a18.8 18.8 0 01-1.1-4.1c-1.4-9 6-19.1 13.7-20.2a9.8 9.8 0 015.6.8 15.6 15.6 0 000 4 18.3 18.3 0 005 10.2 18.6 18.6 0 00-1.5 6.8zm-42.3 45l-.4.6a14.5 14.5 0 01-8.5-4.7 13.4 13.4 0 009 4zm6.8-13.6a17 17 0 01-8.1-12.3c-1.4-8.7 5.8-18.6 13.3-19.6a9.1 9.1 0 012.2-.1 18.1 18.1 0 00-3.6 13c.4 2.8 1.5 5.4 3 7.6a20.8 20.8 0 00-6.8 11.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M258.3 689.2c-2 .6-4 .4-5.8-.8-4.4-2.9-5.6-10.5-2.6-17 3-6.3 9-9.2 13.3-6.3a9.3 9.3 0 013.6 5.1 7.5 7.5 0 00-5.4.4c-4.7 2.2-7.1 8.6-5.4 14.3a11 11 0 002.3 4.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M262.4 694c-3-1-5.8-3.5-7.4-7.3-3-7-.9-15.6 4.7-19.2a9.6 9.6 0 019-.9 17.5 17.5 0 001.1 9.7 12.7 12.7 0 006.2 6.7 9.6 9.6 0 00-7.7 1.3 14 14 0 00-5.9 9.6zm-5.1 49.4c-7-4.5-11.4-14-9.7-21.1 1.4-6 6.7-8.4 12.5-6.4a25.9 25.9 0 00-1.4 18.2 19 19 0 008 11.4c-2.7.7-6 0-9.4-2.1z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M251.7 770a12.3 12.3 0 01-1-1c-5.6-6.5-7-16.9-3.2-23 3.7-5.8 10.7-6 16.3-.7-3 6.5-2.3 15.4 1.6 22.2a11.9 11.9 0 00-10.3.2 14.1 14.1 0 00-3.4 2.2z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M268 783.8c-5.3-.3-10.6-6.3-12.4-14.5-2-9.1 1.3-17.6 7.3-18.9h.3c2.8 4.7 7.1 7.5 11.7 7.7v.2c-6.6 4.6-9.8 15.3-7 25l.2.5zm-2.8-66.2c-6.6 2-14.4-2.7-17.5-10.7-3-8 0-16.3 6.5-18.4 1.7-.5 3.5-.6 5.3-.3 1.5 4.7 4.3 8.4 7.6 10.5a26 26 0 001 17.5 10.8 10.8 0 01-2.9 1.4z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M270 727.9c-7-4.5-11.4-14-9.7-21.1 1.6-7.1 8.7-9.3 15.7-4.8a21.5 21.5 0 015.4 5 25 25 0 00-3 23.1c-2.6.4-5.5-.3-8.5-2.2z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M284.7 750.9c-3.7 7.6-11.2 10.5-16.7 6.3-5.5-4-7-13.7-3.3-21.3 3.7-7.7 11.2-10.5 16.7-6.4s7 13.7 3.3 21.4zm-9.3-47.8a12.2 12.2 0 01-11.2.4c-6.2-3.4-7.6-12.5-3.2-20.4a18 18 0 0113.4-9.4 9.7 9.7 0 007.9 2.6l.5.5c-8 3.4-12.2 13.3-9.4 22a16 16 0 002 4.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M284.2 666c1.2 8-4.1 15.3-10.5 16.2-6.3.9-12.4-4.8-13.7-12.8a17.6 17.6 0 015.8-15c2.7 4.3 7 6.9 11.4 6.3 1.6-.3 3.2-.9 4.6-1.9a23.1 23.1 0 012.4 7.2z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M287.2 705.7c-5.7 3-12.2-1.4-14.5-9.6-2.3-8.3.5-17.5 6.2-20.4a8 8 0 015.4-.8 25.5 25.5 0 00-1.7 3.6c-3.4 9-1.7 20 3.8 24.3.9.7 1.8 1.2 2.8 1.5a10 10 0 01-2 1.4z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M304.5 668a14 14 0 01-1 7.8c-5.3-3.2-12.2 0-16 7.3a15 15 0 01-8.3-11.6c-1.2-7.7 5-16.4 11.7-17.4v1c1.2 7.4 7.2 12.9 13.6 12.4v.4z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M303.5 696.7c-4.3 9.2-12.9 13.3-19.2 9.2-6.3-4.2-8-15.1-3.7-24.4 4.2-9.2 12.9-13.4 19.2-9.2 6.3 4.2 8 15.1 3.7 24.4zm-14.1-41.5a14.8 14.8 0 01-6.4 6.9c-6.3 3.1-14-.3-17-7.8-3.1-7.4 1-18.5 7.2-21.7a9.2 9.2 0 018.2 0l-.1.6c-1.7 9.7 2 19.1 8 22zm31.2-41a14 14 0 01-.9 7.4c-2.5-3.1-5.8-5-9.4-4.5-4.4.6-8.6 4.6-10.7 9.4a15.9 15.9 0 01-4.4-8.8c-1.2-7.8 5.2-16.6 11.9-17.6 6.6-.9 12.3 6.2 13.5 14z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M322.4 630.6c1 6.6-3.1 12.8-8.5 14.7-2.4-3.5-5.9-5.7-9.6-5.1a9.6 9.6 0 00-2.9.8 15.3 15.3 0 01-3-7c-1.1-7.3 5-15.7 11.3-16.6 6.3-.9 11.7 5.9 12.8 13.2z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M293.2 654.4a8.5 8.5 0 01-9.4.2c-5.1-3.4-6.5-12.3-3-19.8 3.4-7.4 10.4-10.8 15.5-7.4a12 12 0 014.8 9c-5.1 3.8-9 11.1-8 17.7l.1.3zm-36.7 144.3c-5.8 2-12.1-2.4-14.4-10.5-2.4-8.7.6-18.3 6.6-21.4 5.7-2.9 12.2 1 15 8.5-6.2 4.5-9.3 14.2-7.2 23.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M270.6 803.8c-6.3 2.8-13.2-1.1-15.5-8.8-2.3-7.7 1-16.3 7.3-19.2 5.4-2.5 11.4 0 14.4 5.7a21.6 21.6 0 00-6.2 22.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M267.6 818c-5.7 2.5-12-1-14-7.9a15.9 15.9 0 011.9-13.3c4 3.4 9 4.4 13.8 2.1a14.5 14.5 0 003-2 14.3 14.3 0 011.7 3.8c.8 2.4.9 4.9.5 7.2a20.6 20.6 0 00-4.6 8.5c-.7.6-1.5 1.1-2.3 1.5zm8.5 29.3c-6.4 2.9-13.5-1-15.8-8.8-2.3-7.8 1-16.5 7.3-19.4l1.5-.5a26.6 26.6 0 00.9 9.4c2 7.2 6.9 12 12.3 13a13.3 13.3 0 01-6.2 6.3z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M285.2 848.4c-6.2 2.8-13-1-15.2-8.4a17.7 17.7 0 010-10c4 3.6 9.2 4.7 14 2.4a16 16 0 006.6-6.2 16.6 16.6 0 011.6 3.6c2.3 7.4-.9 15.8-7 18.6z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M293.1 863.4c-6.1 2.8-13-1-15.2-8.5a17.8 17.8 0 01-.6-6.2c2.3.4 4.8 0 7.2-1a18 18 0 008.9-11.4c3 1.4 5.6 4.4 6.8 8.4 2.2 7.5-1 15.8-7 18.7zM273 786c-2.8-1.8-5-4.8-6.3-8.6-2.4-8.3 1-17.5 7.8-20.6 6.8-3.2 14.3 1 16.8 9.3 1.9 6.2.4 13-3.5 17.4a11 11 0 00-10.5-.8c-1.7.8-3.1 1.9-4.3 3.3zm46.8-134.5c1 6.6-5.5 17-12.1 18.4-6.7 1.4-11-1.9-14-6.2-3-4.4-4.3-10-2.6-15.2 1.7-5.2 6-10.4 10.4-12.3 4.4-2 7.4-1.2 11 1.7 3.5 3 6.3 7 7.3 13.6z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M285.2 808.6c-6.2 2.8-13-1-15.2-8.5-2.3-7.5.9-15.8 7-18.7 6.1-2.7 13 1 15.2 8.5 2.2 7.5-1 15.9-7 18.7z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+      <path d="M283.1 834.2c-6 2.7-12.8-1-15-8.4-2.2-7.3 1-15.6 7-18.4 6-2.8 12.8 1 15 8.4 2.2 7.3-.9 15.6-7 18.4z" transform="matrix(.01896 -.24408 .22029 .01391 146.3 342)"/>
+    </g>
+  </g>
+  <path fill="#e7ca00" stroke="#d4af37" stroke-width=".5" d="M291 194.8l-.4.5-14 17.5-.4.3.4.4a25.8 25.8 0 017.1 17.5 53.1 53.1 0 01-2.7 17.4c-2 6.5-4.8 12.3-5.6 21.9a22.5 22.5 0 005.2 16.6 29 29 0 009.7 7.6c7.3 3.5 14.8 2.3 22.4 3.2 3.3.5 5.2 2.6 7 4.4l.3.4.4-.4c1.7-1.8 3.6-4 7-4.4 7.4-1 15 .3 22.3-3.2a29.4 29.4 0 009.7-7.6c3.3-4 5.8-9.5 5.2-16.6-.8-9.6-3.5-15.4-5.6-22a53 53 0 01-2.7-17.3c0-5.9 2.6-13.2 7.1-17.5l.4-.4-.3-.3-14.1-17.5-.4-.5-.4.4a19.8 19.8 0 01-14.2 5c-5-.3-10-2.1-14.1-4.7l-.3-.2-.3.2a29.8 29.8 0 01-14 4.6 19.8 19.8 0 01-14.3-4.9l-.5-.4zm.1 1.5a21 21 0 0014.6 4.9 30.4 30.4 0 0013.8-4.3V248h-37.3a54 54 0 002.6-17.1c0-6-2.6-13.3-7.1-18l13.4-16.7zm57.8 0l13.4 16.8a26.9 26.9 0 00-7.1 17.9 54 54 0 002.6 17.1h-37.3V197a30.4 30.4 0 0013.8 4.3 21 21 0 0014.6-4.8zm-67 52.9H358c2.1 6.4 4.6 12 5.4 21.1a21.4 21.4 0 01-5 16 28.4 28.4 0 01-9.3 7.2c-7 3.3-14.3 2.2-22 3.2-3.5.4-5.6 2.5-7.2 4.3-1.7-1.8-3.7-3.9-7.2-4.3-7.7-1-15 .1-22-3.2-2.3-1-6.2-3.4-9.4-7.3s-5.6-9-5-15.9c.8-9.1 3.4-14.7 5.4-21.1z"/>
+  <g fill="#008f4c">
+    <path fill="#00a854" d="M373.3 171.4l-.1.1-.6 4.2-.5 3.6-2.4-1c-3.1-1.4-9.5-2.1-10-1.2-.1.6.6 4 1.7 8 .3.8 0 1-1.8 1.6-1.3.4-2.6 1-3.1 1.4-1 .6-.8.8 1.4 2.8l2.4 2.1-1.2 1c-1 .8-1 .8 2.8 4.5 4.3 4 6.5 5.2 9.4 5.2.9 0 1.9.2 2.6 0 1-.2 1.7-.5 4-.7 2.6.2 5 1.4 6 2l.6 1.4c-1.8-2-5.8-2.7-6.6-2.8-.8 0-1.2.2-2.1.5s-1.3.7-2.1 1.9c-.6 1.5.6 3.1 2 3.3 1.9.3 3.2-.7 3.2-2.4 0-1.3-.7-2.3-.1-2.3 2.2.2 5.6 2 6.2 4.2.8 2.8.6 3-.7 1a12.8 12.8 0 00-3.9-3.4c-.4 0-1.5 2.5-1.5 3.6 0 .8-.2 1-.8.7-.5-.3-1.6-.5-2.5-.6l-1.6-.3.4 2.5c.2 1.4.9 3.5 1.4 4.6l1.1 2-2.4-.7c-5.3-1.6-4.9-1.7-4.5 1 .1 1.4.4 3 .6 3.4.3.7 0 .9-1.8.9-1.1 0-2 .1-2 .3 0 1.1 4 6.6 6.1 8.2 2.5 2 7.2 4 9 4 .7 0 2.3.5 3.9 1l2.8 1v3.1c0 3.3-1 10-1.6 10-.1 0-1-1.4-2-3.2-2-3.8-2-3.7-2.5-2.8-.4.6-.5.5-.5-.3a17 17 0 00-3.8-7.3l-1.2-1.1-.7 1.3-.6 1.3-2.7-3c-1.5-1.6-3-2.9-3.1-2.7-.3 0-.6 1.4-.8 3-.5 4.3-.7 4.6-2.4 3l-1.4-1.4-.4 1.3a40 40 0 001.2 13.9 48.8 48.8 0 011.7 6.4c.6 3.8 2.8 8 5.5 10.8 1 1 1 1.4.5 1.4-.4 0-1.2.4-1.6.9-2 2.1-.2 5 2.8 4.4 1.5-.2 1.8-.1 2.3 1 .8 1.6.8 4.5.1 5.7-.5 1-3.5 2.2-4 1.7-.1-.1-.2-1.8-.2-3.7v-3.5l-2.5 1.4a29.7 29.7 0 00-12.9 18.4c-.4 2.2-1.7 2.4-3.3 5a20.1 20.1 0 00-4.5 3.6c-2.5 2.4-3.2 2.8-7 3.7-4.7 1.2-14.7 2.8-22.2 3.6-6.5.6-27.1 4-28.4 4.5a90 90 0 01-3 1.2 6.8 6.8 0 00-2.6 2c-.8 1.1-.8 1.5-.2 2.5 1.3 2.6 4 2.5 9.6-.2a31 31 0 017.8-2.5c2-.3 4.9-1 6.4-1.3 1.5-.4 5.8-1.1 9.4-1.7a199 199 0 0036.4-7.8c5.6-2 5.5-2 10.7-1.5 5.8.6 13-1.2 16-4 .7-.5 2.4-2.6 4-4.6 1.4-2 3.3-4 4-4.5 1.9-1.3.8-1.7-4.2-1.7h-4.2l1.5-3.1c1.6-3.6 3.3-8.4 3-8.7-.1-.1-1.6 0-3.2.5-1.7.3-3.1.6-3.2.5l.4-1.7c.4-1 1-1.7 1.9-1.9l2-.5a7 7 0 012.7.3c1.8.5 1.9.6 1.6 2.2-.2 2 .8 3.3 2.6 3.3 1.4 0 2.9-1.4 2.9-2.6 0-1.4-2-3-3.2-2.7a11 11 0 01-3.9-.6l-2.7-1 2.6-.5c4-.9 5.3-.7 6 .5.3.8 1 1.2 2 1.3 3.2.3 4.3-4.2 1.2-5.2-1.1-.3-3.6.9-3.6 1.8 0 .3-.8.5-1.8.5a17.3 17.3 0 00-6 1.1l3.9-1.9a60 60 0 006.7-2.5c4.6-2 9-7.3 10.7-12.3a54 54 0 002.2-13c-.3 0-2 .6-3.7 1.4-3.3 1.5-3.3 1.5-3.3.4 0-2 .9-8.1 1.2-9 .3-.5.2-.8-.3-.8a28 28 0 00-9.7 5.3c-3 2.5-3.4 2.6-3.4 1.6 0-.7.5-2 1-2.8 1-1.5 1.2-1.6 3-1.3 1.8.3 2 .1 2.8-1 1.1-1.6.5-3.6-1.2-4.1-1-.3-.9-.5 1-1.4a16 16 0 006.5-7l1.2-2-1.8.2c-1 0-1.8.2-1.8 0l.7-2.1c.4-1.2.8-3 .8-4.2 0-2-1.9-9.8-2.6-10.6-.3-.3-1.3.2-2.4 1.1l-2 1.6-1.9-4.1a58.7 58.7 0 00-2-4.3c-.2-.2-.8.3-1.6 1-1.5 1.4-1.6.6-.3-2.4 1.3-2.6 1.8-3 3.2-2 1.8 1 3.7 0 3.9-2 .1-1.3-.1-1.8-1-2.5-.7-.4-1.6-.6-2-.5-.5.2-1-.2-1.3-1.2a2.9 2.9 0 00-1.9-1.8c-2.6-.7-4.5 2.6-2.5 4.5.7.7.7 1.3.2 5-1 5.9-1.3 6.4-2 3.8-.8-3-.4-11.2.6-13.6 1.9-4.2.8-10.8-2.2-14.2a35.4 35.4 0 00-10.7-7.7zm-3.5 13.8a21 21 0 015.4 5.2c2.6 3 5.6 8.3 7.6 12.3-.7-.8-1.1-.9-3.2-3.7-1.6-2.3-4.4-7.4-7-10-2.3-2.4-3.2-3.8-2.9-3.8z"/>
+    <path d="M382.5 239c-.5 2-.9 2.3.1 3.8.5.7 1.3 1 2.2 1 1.4 0 2.1 1 3.3 4.6.1.6.3.6.3-.1 0-.6-.4-1.8-1-3-.6-1.1-.8-2-.5-2.2 1-.6.5-3.1-.6-4-1.6-1-2.1-.7-3.8 0z"/>
+  </g>
+  <path fill="#9eab05" d="M288.6 321.4c-1 .9-1.3 2.2-.5 3 1.1 1.2 5.1.1 5.6-1.4.5-2.2-2.9-3.3-5-1.6z"/>
+  <path fill="#75b52b" d="M374.5 175.6a27 27 0 004.7 9.7c.7 1 1.4 1.6 1.6 1.5 0-.2-1.3-3.2-3.2-6.7-2.6-5-3.4-6-3.1-4.5zm-17 13.5a27 27 0 008.2 2.3c0-.9-2.4-2-5.3-2.3-1.7-.2-3-.2-2.8 0zm3.2 6.1c.6.6 9.5 4.7 12 5.5 1.4.5 3.4.8 4.3.7 1.5-.2 1.3-.3-1.9-1.3a53 53 0 01-5.8-2.4c-3-1.5-9.5-3.4-8.6-2.5zm29 13a93 93 0 00-2.4 15c-.3 3.3-.2 4.4.4 5.1.6.9.8.5 1.3-4a194 194 0 001.4-17.7c-.1 0-.5.6-.8 1.5zm-8.6 4c.2 4.1 2 8.4 2.6 6.5a15 15 0 00-1.2-5.5l-1.6-4.4.2 3.5zm-5.7.2l1.8 2.3 1.2 1.5v-1.3a3 3 0 00-1.3-2.3c-1.6-1.3-2.6-1.4-1.7-.2zm-7.2 12.4a76 76 0 007.4 5.6c1.5 1 1.5 1-.4-1.3-2-2.3-5-4.5-6.3-4.5-.4 0-.7 0-.7.2zm2.8 10.8c1.4 5.6 2.4 8.8 3 9.1.3.2.6.4.7.3.2-.3-2.4-8-3.2-9.3l-.8-1.3.3 1.2zm5.9 4.4c0 .8.4 2.3 1 3.4.5 1.1.9 1.7.8 1.2l-.6-3.1c-.4-2.7-1.2-3.7-1.2-1.5zm-10.3 3.8c1 3.2 3.4 8.2 7 14 2.5 4.2 2.5 4.2 2.7 2.4 0-1.4-.4-2.6-2.3-5.8a534.9 534.9 0 01-5-8.6 22.5 22.5 0 00-2.9-4.6c-.2 0 0 1.2.5 2.6zm31.5.7a75.5 75.5 0 00-8.2 11.5c-.5 1-.6 2-.4 2.8.3 1.2 1 .3 6-7.7 3.1-5 5.5-9 5.3-9-.3 0-1.4 1.1-2.7 2.4zm-8 37.3a2 2 0 001.8 3c1.5 0 2.4-1.7 1.6-3.1-.6-1.2-2.8-1.1-3.4.1z"/>
+  <path fill="#d91023" d="M375.1 205.2c-1.9 1.3.1 4.7 2.2 3.5 1.2-.8 1.4-2.7.3-3.5a4.2 4.2 0 00-1.2-.7l-1.3.7zm13.3-10.9c-1.1.3-1.6 1.9-.8 3.2 1 1.8 3.5 1 3.5-1 0-1.6-1.2-2.5-2.6-2.2zm3.4 3.9c-.2.4-.2 1.2 0 1.9 0 .9.4 1.1 1.5 1.1 1.9 0 2.9-1.3 2-2.6-.7-1.1-3-1.4-3.5-.4zm-19 75c-2 1.5-.1 4.2 2.2 3.3 1-.4 1.5-1.6.9-2.7-.7-1.4-1.9-1.6-3.1-.6zm10.3-33.6c-.6.5-.4 2.4.2 3 1.6 1.6 3.8 0 3.3-2.1-.3-1-.7-1.3-1.8-1.3-.7 0-1.6.2-1.7.4zm9.4 0c-.4 1.4.5 2.7 1.8 2.7s2.2-1.2 2-2.6c-.1-1-.5-1.2-1.8-1.3-1.4-.2-1.7 0-2 1.1zm1.3 37c-.3 1.4.5 2.7 1.9 2.7 1.2 0 2.1-1.2 1.9-2.6-.1-.9-.5-1.2-1.8-1.3-1.4-.1-1.7 0-2 1.2zm-3 4.6c-2 1.5-.2 4.2 2.2 3.3 1-.4 1.4-1.6.8-2.7-.7-1.4-1.8-1.6-3-.6z"/>
+  <path fill="#75b52b" d="M369.7 185.6l2.2 2.6a59 59 0 016.2 8.5c2 3.2 4.5 6.4 4.5 5.8 0-.6-4.5-8.2-6.2-10.5-2.4-3.2-6.1-7-6.8-7-.2 0-.1.2.1.6z"/>
+  <path fill="#eac102" fill-opacity=".5" d="M382.7 249c0 .4-.6 3.8-.8 7.7a157.5 157.5 0 01-3 25.7l.1.9.9-1.2c.9-1.2 1.8-2.1 3.1-3a145.4 145.4 0 0017-19.4c5.2-6.8 6.4-8.6 6.3-8.7-.2-.2-1.8 1.4-8.2 9.3a244 244 0 01-6.6 7.7c-4.5 5-9.5 9.5-10.8 11.3l.4-2.1a93 93 0 001.8-20.6v-8.2l-.2.6zM370 282.2l-2.7 4.7a69 69 0 01-10.4 14.6c-1 1-.7 1.2-1 1.4-1.2 1.2 3.6 2 7.3 2.5 4.9.4 7.6-.5 20.7-7.5 3-1.6 3.9-2 3.3-2a35 35 0 00-8.8 3.4c-5.6 2.6-8 3.8-10.6 4.3-2 .5-4.8.5-6.5.1h-1.2l.6-.3c.6 0 1.3-.1 1.6-.3.3-.3 1.3-1 2.3-1.5a82.5 82.5 0 0016-14 39 39 0 00-5.5 4.3 46.9 46.9 0 01-15 10.1l-.9.2.8-.8 2.3-3.3a63.5 63.5 0 008.5-17l-.8 1.1zm.2-64.8a55 55 0 005.7 7.2c3.2 3.6 5 5 7.5 8.2 2.6 3.2 2.8 3.4 5.6 6 3.5-4.7 5.7-11 7.2-15 1.4-3.9 2.6-7.3 2.7-12.5-2 4.4-2.1 6-3.7 10.7-1.6 4.8-5 13-6.4 14.8-.1.2-7.4-8.8-10.6-12.5-3.4-4-8-7.3-8-6.9z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M372.7 174.8l-.6 4.5-1.9-.9c-1.9-.9-6.9-2-9.3-2-1.3 0-1.4.2-1.1 1.7.3 1.6 1.6 6.2 2 7.2.1.3-.7.8-2 1.1a11 11 0 00-3 1.4c-1 .7-.8.8 1.1 2.5 2.3 2 2.5 2.7 1.2 3.6-.7.5-.4 1 3 4.2 2 2 4.6 4 5.6 4.6 2.6 1.3 7.7 1.3 10.4 0 1.9-1 2-1 3.2-.2 1.3.8 1.3.8.7 0a30 30 0 00-5.3-3.2 32 32 0 01-15.3-17c-1.2-3.5-1.2-5.3 0-5.3 2.2 0 6.6 1 9 2.2 3.8 1.7 10.4 8 12.3 11.7 1.3 2.6 1.4 3.5 1.5 7.3 0 4.5.7 6.3.8 2.3.2-5 .4-6.2 1.1-8.2 1.6-3.7.8-9.4-1.7-12.8a36 36 0 00-6-5.1 41 41 0 01-4.7-3.6c-.2-.3-.7 1.5-1 4zm6.5.8c3.4 2.3 4.4 3.3 5.5 5.5 1.6 3.4 2 7.5 1.2 10.5l-.7 2.2-1.4-2.8a27 27 0 00-5.7-7.1 30.5 30.5 0 00-5-4.4c-.5 0-.3-3.4.5-6.4.3-1.3 0-1.5 5.6 2.5zm-16.4 12.3a8 8 0 001.8 2c.5.4 1 1.1 1.1 1.7.3.9 0 1-2.3 1-2.4 0-2.8-.2-4.7-2-1-1.1-1.9-2.1-1.7-2.2.4-.4 3.7-1.8 4.3-1.9.4 0 1 .6 1.5 1.4zm6.8 7.8c3 2.7 3.8 3.3 7.4 4.7 1.9.8 2 .9 1.2 1.6-1.1 1.1-6.7 1.5-9.3.7-2.2-.7-10.1-7.9-9.3-8.4a14 14 0 015.4-1.2c1.4 0 2.3.5 4.6 2.6zm14.7 9.3c-.2.2 0 1.4.4 2.5 1 2.5 1 3.3 0 5a10 10 0 00-.8 3.5 12 12 0 01-.6 3.6l-.5 1.6-1.7-1a5 5 0 01-2-2.2c-.4-1.5-.2-4.7.4-7.8.5-2.1.8-2.7 1.5-2.7.8.1.8 0 .3-.6-.5-.7-.7-.7-1.3.1a7 7 0 00-1 2.5c-.3 1.7-.3 1.7-1.7 1-2.2-1.2-3-1-3 .7s.8 4.3 1.9 6c1.2 1.7 1.2 1 0-1.3-1.3-2.7-1.8-5.7-.9-5.7.4 0 1.2.4 1.9.8.9.6 1 1.2 1 4.2-.1 4-.5 4.2-5.3 2.6-1.5-.6-3-1-3.1-.8-.2.2.6 4.5 1.1 5.8.3.6-.1.8-2 .6l-2.4-.2 1.4 2.4a20 20 0 0014 10.1c2 .4 4.4 1.1 5.3 1.6 1.2.6 1.4.6 1 0-.3-.3-1.5-1-2.6-1.3-2.9-1-5.7-3.1-9.4-7s-5.5-7.1-5.5-9.6c0-1.4.2-1.7.8-1.4l3.9 1c4.3 1.2 5.4 1.8 8.1 4.7 3 3.1 3.9 5 4.8 9 .4 1.9.8 3.4 1 3.6.6.7.8-1.6.2-3.6-.9-3.3.5-9.8 3.4-15.5 1.3-2.5 5.2-6.3 5.8-5.6.2.2.9 2.4 1.5 4.8 1.4 5.1 1.2 6.6-1.2 11.7a18.5 18.5 0 01-6.1 7.7c-2 1.4-1.5 1.8 1.3 1.1 2.4-.6 6.4-4.2 8.5-7.7l1.1-2-2 .4-2 .3 1-2.7c1.2-3.4 1.2-4.7 0-8.8l-1.3-4.8-.3-1.4-1.7 1.1a9.4 9.4 0 00-1.9 1.6c-.6.9-1.3-.1-3-4l-2-3.7c-.3 0-1.1.6-1.9 1.4l-1.3 1.4.3-1.4c.3-1 .2-1.4-.2-1.1-.2 0-.5.8-.5 1.4 0 2.4-.9 2.4-1.6 0-.4-1.3-.9-2.2-1-2zm7.4 12.7a31.5 31.5 0 00-2.9 8.3l-.6 3.6-.8-2a17.6 17.6 0 00-2.2-3.7c-1.4-1.6-1.4-1.7-.8-5.3.9-5.7 2-8.7 4-11l1.9-2 1.8 3.7 2 3.7-2.4 4.7zm-19.3 8.3c6.2 6.5 8.4 9 7.3 8.6a17.4 17.4 0 01-10.3-7.5 19.5 19.5 0 01-1.8-3c0-.2.6-.3 1.4-.3.9 0 2 .7 3.4 2.2zm29 4c-2 3.2-3.3 4.4-5.5 5.5l-2 1 2-2.1a32.5 32.5 0 003.2-4.1c1-1.6 1.7-2.1 3.3-2.4.2 0-.2 1-1 2z"/>
+  <path fill="#005000" d="M382.9 209c.7 1.5 2 3 2 2.5 0-.3-.5-1.2-1.3-2-.7-.9-1-1-.7-.5z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M369.4 235.3l-.8 3.8-.5 2-1.5-1.4-1.4-1.4-.4 2.4a32 32 0 001.5 12.8 52 52 0 011.6 6.4c.6 4.6 4.4 10 9.4 13.4.9.7 1.2 1.5 1.5 3.8l.4 3v-2.9a64.6 64.6 0 00-1.4-8.3c-1.6-7.3-1-10.4 2.6-17.8l2.6-5.4 2.7 5.4c3.6 7.2 4 9.7 2 15.6a33.4 33.4 0 01-1.8 4.8c-.3.4-.4.8-.3 1.1.2.2 0 .7-.2 1.1-.4.6-.5.6-.2-.2.2-.6-.5 0-1.7 1.2a13.6 13.6 0 00-2.3 3.3c-.3.9-.2.9.6-.1l1.8-2.4c.5-.7 1.1-1.2 1.3-1 .8.4 1.5-1 3.2-5.6a28 28 0 017-12.4 27 27 0 017.8-5.2l5-2.3c.5 0-1 8.8-2 11.4a26.1 26.1 0 01-5.8 9.4c-2.2 2-6.4 4-10.5 5.2-1.7.5-3.3 1-3.4 1.3-.3.4 3.7-.7 7.5-2 5.4-2 10.5-7.3 12.5-12.8 1-2.5 3-13 2.5-13.3 0 0-1.7.6-3.8 1.6l-3.6 1.7.3-3.4c.2-1.9.6-4.4 1-5.8.5-2.3.5-2.4-.5-2a32 32 0 00-10 6l-3 2.7.2-4.7c.2-3 0-4.3-.2-3.6-.3.6-.5 2-.5 3.3 0 2.5-1.2 7.5-1.7 7.5-.2 0-1-1.4-2-3.2-1.7-3.2-2.4-4-2.5-2.7 0 .3-.5-.7-1.2-2.4a22.5 22.5 0 00-2.6-5l-1.5-1.9-.8 1.6-.8 1.5-2-2.5c-1-1.4-2.4-2.7-2.9-3-.8-.5-1-.2-1.2 1.4zm3.5 1.5c2 2.4 6.2 10.4 6.7 12.7l.3 1.3-.9-1.3c-1.6-2.3-6-6.3-8.8-7.8-1.3-.8-1.3-1-1-2.7l.7-3.2c.2-.8.5-1.4.7-1.4a13 13 0 012.3 2.4zm7 5c1.5 3 1.8 5 1 6.2-.6 1-4.8-7.7-4.4-9.4.3-1 .5-1.2 1.2-.6.4.4 1.4 2 2.3 3.7zm-9 1.5a25 25 0 017.5 7.4c.4 1 .3 1.7-.5 3.3a24 24 0 00-1.6 11.8v2.9c-.7 0-4.4-4.7-6-7.6a38.3 38.3 0 01-5-19.8l.4-2 1 1c.7.6 2.6 2 4.3 3zm30.8 0a75.1 75.1 0 00-.7 5.2c-.3 2.7-.4 2.8-3.3 4.7a23.9 23.9 0 00-5.2 4.6c-1.2 1.5-2.3 2.7-2.5 2.5-.3 0-.6-1.3-.8-2.6a20.8 20.8 0 00-1-4c-.6-1.6-.6-2 .4-3.3 2.1-3 11.2-9.4 13.2-9.4.2 0 .1 1 0 2.3zM374.4 268c1.8 1.9 3 3.4 2.8 4 0 .7-.7.4-2.7-1.6a19 19 0 01-5.6-8.5c-.3-1.3-.1-1.2 1 .7a30 30 0 004.5 5.4z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M369.4 280.5a31.6 31.6 0 00-11.6 17.4c0 1.6-1.8 3-1.5 2.8.2.7 1.8 0 2.5-2.5 1.3-4.7 5-13.2 9.9-16.6 1.4-1 3-1.8 3.2-1.8.2 0 .3 1.9.2 4.3 0 3.4-.4 5-1.4 6.9a28 28 0 01-8.5 9.3c-2.5 1.4-2.7 2-.4 1.1 2.5-1 8.4-7 10-10.3.8-1.7 1.4-3.3 1.4-3.7 0-.3.7-.9 1.5-1.2 1.8-.7 11-3 11.1-2.7.4.4-3.5 8.6-4.7 10.2-2 2.5-6.6 6-8.9 6.7-1 .3-3.4 1.6-5 1.9l-4.6.6-1.8 1 1.8-.3 5.3-.6c5.6-2 7.8-3.2 11.4-6l2.4-2 4.6.2 3.7.3-1.7 2.1a481.4 481.4 0 00-4 4.8 17.5 17.5 0 01-3.7 3.7 29.4 29.4 0 01-12.3 2.5c-4 0-4.2 0-6.2-1.8-2.1-1.8-3-2.2-3.2-1.4 0 .3-1.9 1-3.8 1.8-4 1.3-4.9 1-2.6-1.1.9-.8 1.8-.8 3.6-1 0 0 3.9 1 4 .1 0-.8-4-.7-4-.7-1.7.1-2.2 0-.7-1.8 1.6-1 2.3-3.1 1.4-2.7-2.2 2.7-3.7 3.8-7 7a18.3 18.3 0 01-8 3.6c-2.8.7-7.5 1.4-10.2 1.8-5.4.6-7.6 2-2.5 1 2.6-.5 6-.8 10.3-1.6 6.1-1.5 6.5-1.6 9.6-3.2 2.5-2.6 2.9-2.9 1.6-.8-.5 1.6.3 1.5 5.2-.3 3.8-1.5 4-1.5 5-.6.9 1 .8 1-1.1 1.8a124 124 0 01-20.4 5.6c-4.7 1-8.6 1.8-8.8 2-.4.4 5.6-.2 6.8-.8.6-.2 4.8-1.3 9.5-2.3 4.6-1.1 9.9-2.7 11.8-3.4 3.1-1.3 3.6-1.3 6.3-.8 3.4.6 9.1 0 13.2-1.3 3.2-1 5.4-2.9 8.6-7.4 1.3-1.9 3-3.8 3.7-4.3l1.3-1-4.4-.3c-2.5-.1-4.6-.4-4.7-.5a87 87 0 003-7.4l1.4-4.2-1.8.4-3.5.6-1.8.3.7-1.8c.4-1 .7-1.8.5-1.8l-1 1.7c-.8 2-1.8 2.4-1.5.6.2-.8 0-.6-.6.5a5.5 5.5 0 01-2.2 2.1l-2.2.8c-1 .5-1 .2-.8-3.4.1-2.4 0-3.9-.3-3.9s-1.7.8-3.1 1.8z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M321.8 313.9c-3 .2-9 1.1-18.9 2.7l-10 1.6c-.4 0-.5.2-.4.4.1.2-.6.5-1.5.7-2.3.4-4.9 2.5-4.9 4 0 1.4 1.7 3 3 2.7.7-.2.7-.3-.2-.3-2.2-.1-3-2.8-1.4-4.3 1.5-1.3 8.2-3.3 12-3.6a212.6 212.6 0 0023.6-3.6c3.3-.5 2.7-.7-1.3-.3z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M313.4 318.8a80.2 80.2 0 00-17.6 4.6c-3.6 1.8-3.1 2 .7.2a32 32 0 016.8-2l9.3-1.8 8.7-1.7 2.8-.4h-2.3c-1.3 0-5 .4-8.4 1z"/>
+  <path fill="#fff" d="M353.6 305.4c-1.7 1-3.3 2.8-1.5 2.6 1.4-.2 6.4-1.7 6.8-2.7-2 .2-3.5-.3-5.3 0z"/>
+  <g stroke="#d4af37" stroke-width=".9">
+    <path fill="#fff" d="M367.7 432.4c-1.5.5-2.5 1-9 .5-4.6-.3-10.3-1.1-13.2-1.2-5.6 0-5.6.3-15.5 7.1-7 4.8-16 4.4-22.7 3-4-2-5.8-2.3-5.2-1.3 1.1 1.8 9 4.4 13.4 4.4 7 0 12.2-1.8 20.7-7.1 6.6-4.2 9.5-4.5 18.5-2.5 10.6 2.1 12.2 1.2 20.9-2.7-2.6 0-3.2 0-4 .4 1.4-1.6 1.5-3.2 1.8-4.2.4-.6-.8.2-2.1 1.2l-3.6 2.4z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+    <path fill="#d91023" d="M354 429.8c-4.9-.7-8.2-1.4-11.3-1-3.4.3-5.8 2-9.9 4.5-4 2.7-7.7 4.6-8.1 4.6-.6 0-5.8 1.2-9.8 1.2-1.8 0-5.9-1.3-8.6-2.3-5.7-2.1-7.8 1.4-1.8 3.9a33.4 33.4 0 0015.6 1.8c5-.8 9.6-3 13.4-5.8 7.7-5.6 3.2-3 6.2-4.2 3-1.3 5.9-.9 5.9-.9 4 .2 11.9 1.5 15.9 1.6 7.2-.7 6-.7 8.4-2 .8-.6 3.5-2.3 3.6-2.7.2-.4 1.4-2.7 1.2-2.8-7.5 5.1-11.2 5.1-20.7 4.1z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+    <path fill="#d91023" d="M341 435.4l-7.1 4c-6.2 3.8-12 5.6-18.8 5.6-3 .5-13-3.6-11.5-3.1 1.6 3 4 3.4 9.6 4.5 4 .8 6.6.1 11.1-.8 5-.6 7-3 9-4.3a33.5 33.5 0 0114-5.4c1 0 4.7 2.1 8.9 3 4.1.9 6.1 1.1 10.4.4s8.7-4.2 12.8-6.9c-.6.2-2 .2-4 .3-6 3.5-16 4.8-21.2 2.4-5.4-1.3-10.5-1-13.2.3z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+  </g>
+  <path fill="#00a854" d="M276.4 176.3a37.7 37.7 0 00-17.5 13.2c-1 1.2-1.8 2.2-1.9 2.1 0 0 .4-2.7 1.2-5.7.7-3 1.2-6.1 1.2-6.8 0-1.2-.1-1.1-2 1a41 41 0 00-7 13c-.7 2.2-1 4.7-1 9.3l.1 6.3-1.2-4.5c-1.3-4.7-2.6-8-4-9.6-.6-1-.8-1-1.3-.3-1 1.5-.3 7.8 1.4 12.4.1.6-.5-.2-1.4-1.7-1-1.6-2-2.7-2.3-2.6-.6.3-.6 5.3 0 7.4.4 1.4.4 1.4-1.3-.5-2.9-3.3-3.5-3.6-3.5-1.3 0 .9.3 2.4.7 3.4l.8 2-1.6.4c-2.3.4-3 1.1-3 3 0 2 1.4 6.8 2 7.2.9.5 1.1 0 1.8-3l.6-2.6 1.9 2.5a76.7 76.7 0 018.8 17.7c2.2 6.4 2.3 7.7.3 3.7a72 72 0 00-3.2-5.2c-2-2.8-12.6-13.9-13.3-13.9-.8 0 0 3.5 1.3 6.4.7 1.4 2.7 4.2 4.4 6.2l2.9 3.6c-.2 0-1.4-.8-2.7-1.7-2.6-2-5.3-3.5-5.6-3.2-.1.1.9 2.3 2.3 4.8l2.4 4.6-1.6-.3a6 6 0 00-2.8.3c-1 .6-1 1.1-1 3.5 0 3.3.8 6.7 1.5 6.7.8 0 2-3.2 2-4.9 0-1.3 0-1.3 2.6 1.1 3.7 3.6 8.6 9.6 13.4 16.6l4 6-4.7-3.6c-4.6-3.3-14-8.6-15.5-8.6-.4 0-.8.2-.8.5 0 .2 3 3.3 6.7 6.8l6.7 6.3-3.5-1.1a71 71 0 00-5.3-1.5c-1.7-.4-1.7-.3 2.2 3.3a68 68 0 008.7 6.7c2.6 1.6 4.3 2.8 3.7 2.7a35.1 35.1 0 00-11.5-1.9c0 .7 3.5 3.5 6 4.8 1.4.7 5 2 7.8 3 6 2.1 9.6 4 12.6 6.6l2 1.9-3.5-1.6c-4.1-1.8-15.3-5.5-16.5-5.5s3.8 5 8.8 8.7a80.2 80.2 0 0019.5 9.7c5.2 1.7 9.6 2.6 18 3.6 3.6.5 7 1 7.8 1.3.6.3 5 1 10 1.5a99.7 99.7 0 0130.7 7.2c1.7.8 3.5 1.1 7.2 1.3 5.5.3 5.8.1 4.2-2.9-1.3-2.5-3.7-3.9-8.7-4.8l-9.2-1.8a726.1 726.1 0 00-29-5c-14-2.3-20.1-4.7-26.7-10.7A43.3 43.3 0 01269 263c.4-3 .6-5.5.5-5.6-.5-.4-3.7 6.3-4.6 9.4l-1 3.3.3-5.4c.3-8.3 3.5-16.1 8.2-20.6 1-1 1.8-2 1.8-2.2 0-.2-1 0-2.1.2-1.6.4-3 1.3-5 3.2l-2.6 2.7 1.3-2.4a27 27 0 018.3-9.6l2.9-1.9-1.7-.1c-3.4-.4-9.5 4-12.9 9.3-2 3-2 2.1 0-2.6a41.8 41.8 0 018-12.5c1.9-1.8 2.2-2.5 1.5-2.5-2.7 0-7.2 3.5-11 8.4-1 1.5-1 1.4.2-1.5a40 40 0 016.1-9.7c1.6-1.9 1.2-2.1-1.5-1a26.4 26.4 0 00-8.6 9.7c-1 2-1.8 3-1.7 2.5a61 61 0 00.8-3.3 46.4 46.4 0 0112.8-22.7c2.4-2.2 3-3.2 2.3-3.2-2 0-6.5 2.6-9.5 5.5-3.1 3-3.2 3-2 .9a57 57 0 0118.3-18.6l4.3-3c0-.8-7.8 1.6-11.3 3.3a42.3 42.3 0 00-4.4 3.2c-2.5 2-2.7 2.1-1.8.8 1.7-2.4 7.6-7.7 10-8.9 1.7-.9 2-1.2 1-1.3-2.3-.4-8.9 3-14 7.4l-2.2 1.9 1.2-2a48 48 0 0114.7-15.6 60.5 60.5 0 014.4-2.6c.3-.1.5-.4.4-.5-.2-.2-2 .2-4 1zm77 145a6 6 0 011.4 1.9c0 .2-1.1.4-2.5.4-2.5 0-2.6 0-2.6-1.4 0-2.6 1.6-2.9 3.8-.8z"/>
+  <path fill="#9eab05" d="M350.3 320.5c-1.3 1.2-1 3 .3 3.4 2.2.6 5 .4 5-.4s-3.3-3.8-4.1-3.8c-.3 0-.8.3-1.2.8z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M279 175.5a31.6 31.6 0 00-15 8.5c-.3.3-3 2.8-4.8 5.2-.8 1-2 2.5-2.5 3.5 0-1 .8-3.8 1.5-7 .9-4 1.2-7 1.1-7.2-.5-.5-4.2 4.4-6 8a30.9 30.9 0 00-3.6 16.7v6.4l-1.3-4.8c-1.3-5-3.6-10.3-4.7-10.6-.4-.1-.8.6-1 1.7-.3 1.6 0 3.3 2.1 12 .2.6-.4 0-1.2-1.6-2-3.4-2.7-4.1-3.2-3.8l1.4 2a44 44 0 013 6 85 85 0 015.7 19.1c-.1.1-.5-.3-.7-1l-1.6-4.2a74 74 0 00-3-6.7 38.2 38.2 0 01-4.6-12.7l-.3-2.5c-.7.6-.4 3.5.6 6.8l.9 3c-.1 0-1.3-1.3-2.6-3-1.8-2.4-2.6-3-3-2.5-.4.8-.1 2.3 1 5.2l.7 2H236c-1 0-2.1.2-2.7.6-.8.6-.9 1-.4 3.7.6 3.3 1.4 5.8 2 5.8 1.1 0 1-1 1.6-3.9l.6-1.8c.2.3.5.7 1 1.1a78 78 0 0110 19.4 111 111 0 013.8 16c0 .2-.7-1.7-1.3-4.2-2-8.7-5-13.8-14-22.6 0 0-3-3.7-5.5-5.2 0 2.1.4 2.5.4 2.5.7 3.1 2.2 5.9 7 11.4a43 43 0 013.8 5l-2.7-2.2c-2.7-2.4-7-5.1-7.3-4.7-.2.1.8 2.3 2.2 5 1.8 3.2 2.3 4.5 1.7 4.3-2-.8-2.7-.8-4 0-1.3.9-1.3 1-1 4.4.1 2 .6 4 .9 4.7.6 1 .6 1 1.2-.2.3-.7.8-2.1 1-3.2.2-1 .5-1.9.6-1.9a48 48 0 014 4 80.9 80.9 0 001.8 2.1 332 332 0 0113.6 17.8l1 1.8-1.7-1.3a74.7 74.7 0 00-19-11.7c-1-.3-1.2 0-.7.6 2.4 3.3 9.6 9.4 11.6 11 1.9 1.6 1.8 2.2 1.8 2.3-.1 0-1.4-.6-3.7-1.3-5.8-2-7.3-2.1-6.6-1.2a4 4 0 002.1.8 43 43 0 0115.8 6.8c3.4 2.3 11.5 10 12.6 12 .6 1.2.4 1.1-1.7-.6a43.7 43.7 0 00-11-6.2c-.3.1-2.1-.2-4-.7-2-.5-5-1.1-6.8-1.3l-3-.4 1.8 1.7c2.4 2.1 6.3 4 13 6.3a58.6 58.6 0 017.3 3c2.5 1.5 7.6 5.5 7.3 5.7a123.6 123.6 0 00-20-7.1c-1.2-.3-.8.2 2.3 3.3a75.9 75.9 0 007.9 6.3c10.9 7.2 20.8 10.3 39.2 12.5 3 .3 5.1.8 5 1-.2.3 4.4 1 9.4 1.5 13.4 1.6 21.8 3.4 29.4 6.5a23.4 23.4 0 008.9 2c3.4.2 4.5.2 4.5-.3 0-1.2-1.4-3.4-3.2-5-1.5-1.3-2.6-2-8.6-3.1-3.8-.6-7.3-1.4-7.7-1.7-.5-.3-8.1-1.3-16.8-2.7-19.1-3-25-4.5-30-7a40.3 40.3 0 01-22-34.7 56.1 56.1 0 01.3-9.2c.3-2 .5-3.6.4-3.7-.5-.5-4.4 7.3-5 10.3l-.3 2-.2-3.6a33.9 33.9 0 016.8-20.6s2.9-2.8 3.3-3.6v-.1c-2.1-.7-4.3 1-7.3 3.6-1.8 1.8-2 2.3-2.2 2.2.2-1.4 5.5-9.5 6.6-9.5.2 0 1.5-1.5 2-2 .6-1.5-3.2 2-5.9 5.7-6 8-7.4 16.1-7 26.9a36 36 0 01-.3 5.9c-.2 0-1.8-3.9-2.5-6.4-2-6.3 1-19.4 6.1-26.1l3.3-4.1c.8-1.4-3.5 3.4-5 5.7-.4.7-.8 1.2-1 1l.7-2.2a45.4 45.4 0 019.3-15.7c1.6-1.7 1.6-1.7.3-1.3-3 .9-5.8 3.2-8.7 6.6l-2.2 2.6c.3-1.3 3-7 5.2-10.1 1.4-1.9 2.7-3.2 2.7-3.6 0-.4-1.5 0-3.6 1.6a28 28 0 00-7.6 9c-1.3 2.6-1 1.9-1.5 2.3a43 43 0 0112.8-25.9c2.8-2.9 3.4-3.7 2.4-3.4-3 1-6.3 3-9.2 5.9-1.7 1.7-2.4 2.2-2.4 2s.8-1.7 2.5-4.3a53.8 53.8 0 0114.1-14.7c2.7-1.8 6.8-3.8 6.3-4a.5.5 0 00-.2-.1c.3-.5-1.1-.2-4.8 1a37.6 37.6 0 00-11.6 6.3c-1.5 1.4-1.2.3 2.6-3.5 2-2 5-4.5 6.6-5.3 2.6-1.6 2.4-2 .7-1.6a32 32 0 00-13.4 7.7l-.3.2c-1.2.7-2.3 2.3-2 1.6s.8-1.3 2.1-3.5a46.8 46.8 0 0116.8-15.8c1.7-1 1.8-1.6.6-1.4zm-38.8 27zm34.8-25.1h.2a73 73 0 00-12 11.6 60 60 0 00-7.3 13.2c-1 2.4-1.6 4-1.6 3.6a85.6 85.6 0 012.3-12l1.3-1.8a42 42 0 012.6-3.5c1.1-1.4 4.7-5.1 4.6-5.2l1.2-1c3.4-2.4 7.8-5 8.7-5zm-16.9 2.7h.1c.1.4-.5 4.8-1.7 10a230.5 230.5 0 00-4.6 25c-.4 3.7-.5 4-.8 2.4-.3-1-.6-6-.8-11-.3-10 0-12.8 2.6-18.4a29 29 0 015.2-8zm13.9 8.4l-3 3a57 57 0 00-15.9 27.3l-1 3.5.4-3.3a44.8 44.8 0 013.5-14.8c1.1-3 2.2-5.5 4.5-7.8.4-.5 1.5-1.4 1.7-1.8l2.8-2.1c2-1.7 6.2-4 7-4zm6 2.5c.3 0 .4 0 .4.2l-3 2.1a70 70 0 00-13.8 14 83.8 83.8 0 00-7.8 15.5c-1.5 4.2-1.4 2 .2-4a68.6 68.6 0 017.4-17.3l1.5-2c.7-.8.9-1.2 1.2-1 .2.1 1.4-.6 2.6-1.6 2.7-2.3 9.7-5.8 11.4-5.9zm-34.4 3.9c.1-.1.3.1.6.6a38 38 0 012.2 5.2A93.8 93.8 0 01251 226a82.5 82.5 0 00-2.8-9.6c-4.1-12.4-5.5-18.4-5-20.6l.4-1zm26.5 10.9s-1 1.2-2.5 2.6a49 49 0 00-13.1 27.7c-.5 2.8-1 5.3-1.3 5.5-.2.2-.6-1-.8-2.5a41.3 41.3 0 014.2-20.2l1.3-2.9c.4-.3.7-1 1.3-1.8 2.3-2.6 6.1-6.3 8.6-7.5l2.3-1zm-33.4 1.2l1 1.3a84.5 84.5 0 013.2 4.3c2.2 3.2 7.8 14.4 8.4 16.6.2.7-.5-.4-1.6-2.4a68.8 68.8 0 00-5.3-8c-4.2-5.6-5.7-8.2-5.7-10.2V207zm-1.1 7.4h.5c1.5 0 4.7 2.8 7.5 6.6a69 69 0 018.8 21.4c.9 4 2.4 14.2 2.4 16.5v1.6l-.9-1.5c-.4-.9-1.1-3.5-1.5-5.8a101.1 101.1 0 00-5.3-19c-2.3-5.8-7.1-14-9.3-16a2.5 2.5 0 00-.7-.6 7 7 0 00-1.5-1.5c-1.1-1-1.2-1.5 0-1.7zm-2.6.9l1.3.8c1.7 1.2 2.3 1.7 2 3.2-.3 1.5-.5 3-.8 3.4-.4.8-.8.2-1.2-1.4l-1-4-.3-2zm33.8 6.8c.2 0 .2.2 0 .6-.5.4-1.7 1.9-2.3 2.7a68.9 68.9 0 00-9 23.7c-.5 3.7-1.2 2-1.2-3a30.1 30.1 0 018.1-20.5c2-2.1 4-3.5 4.4-3.5zm-34.3 3.2c.5 0 2 1.5 5.4 5a72 72 0 017.6 8.7c1.9 3.3 4 8.2 4.5 10.7.2 1.4-.3.8-3.2-3.2a174.5 174.5 0 00-6.2-7.9c-5.5-6.4-7.6-9.5-8.2-12.7-.1-.4-.1-.7.1-.6zm38 1.3c.2 0-1 1.6-2.6 3.5a52.3 52.3 0 00-4.7 7c-2 4-5.1 13.3-6.2 19-1.1 6-1.2 5.9-1-.7.5-12.6 5-22.8 12-27.3l2.6-1.5zm-37.5 9.1l1.6.8c.9.5 3 2 4.6 3.3 1.7 1.5 3.2 2.4 3.4 2.2.3-.2.4-.1.2.2a16 16 0 003 4.8 68.3 68.3 0 019 16.5c.5 1.7 1 3 .8 3.2l-3.4-5.2a61.1 61.1 0 00-11.8-14.8 19.6 19.6 0 01-5-6.5l-2.4-4.5zm40.6 6.7c-.9.8-2.8 3-2.8 3a31.7 31.7 0 00-6.6 12.7 75 75 0 001.7 28.5 48 48 0 01-4-11c-.9-4.5-.8-14.9 0-18.4 1-4 3.2-8.6 5.2-10.8 1.7-2 5-4 6.5-4zm-39.4 1.8c.8 0 1.7.4 3.1 1.3 5.5 3.5 12.5 12.6 20.5 27 6.4 11.5 10.1 20.2 4.9 11.5a265.6 265.6 0 00-25.2-34.4l-.1-.2a20.3 20.3 0 00-3.6-3c-2-1.2-2.1-1.7-.4-2.1l.8-.1zm-2 2.3c.5 0 1 .3 1.4.7.6.8.3 4.7-.5 5.1-.6.4-.8-.1-1.3-3.1-.3-2.2-.2-2.7.5-2.7zm36.1 13.7v6a43 43 0 0014 34.7c5.9 5.2 12.5 8 23 9.8 3.5.6 6.7 1 7 1.3.5.1 5.3.6 5 1.1-.1.2.3.3 1 .2 2.1-.4 8.5 1 10.2 1a186 186 0 0123.7 5c1.4.6 4.4 4.1 4.4 5.2 0 .3-1.6.4-4.4.2a21 21 0 01-8.5-2.2c-6.7-3-16-5-27.2-6-5.8-.5-24.7-3.8-30.1-5a68.2 68.2 0 01-17.8-6 52 52 0 01-14.4-9.5l-3.3-3.2 2.8.8c8.3 2.4 15 5.4 23.4 10.7 6.7 4 8.9 5.2 12.5 6 3.3 1 4.3 1 4.3.4 0-.2-1.7-.9-3.8-1.5a37.2 37.2 0 01-24.6-41.3 54 54 0 012.8-7.7zM235 262l.7.2c3 .5 15.2 8.2 19.4 12.3a30.4 30.4 0 014.3 5.8l1.6 3-2.8-2.2a66.5 66.5 0 00-6.4-4.4 86 86 0 01-10-8.5L235 262zm8.4 21.4l1.1.2c1 .1 3.6.7 5.9 1.2 8 1.9 17.8 8 22.8 14.4l2.2 2.9-2.3-1.2c-1.2-.6-2.2-1.3-2-1.5.2-.5-5-4.8-7.7-6.2a92.8 92.8 0 00-8.8-3.6c-6.2-2.3-10-4.1-11.2-5.6-.3-.4-.4-.6 0-.6z"/>
+  <path fill="#cab313" fill-opacity=".5" d="M272.2 234.2c-1.1.4-2.9 2-4 2.9-2.2 1.6-2.5 2.2-.4.7 1.6-1 4.3-3 6.6-3.4.3 0-.9 1.2-1.5 1.8-.9 1-.6 1 1.3-.3l2.4-1.8c0-.4-2.4-.6-4.4.1zm-34.7 38c0 1.2 15.8 12.9 16.5 12.1.1 0-2-1.5-4.6-3.1a65 65 0 01-7.8-5.8c-1.7-1.6-3.9-4-4.1-3.3z"/>
+  <g stroke="#d4af37" stroke-width=".9">
+    <path fill="#fff" d="M246.2 432.3a31 31 0 01-16.4.7 21 21 0 00-6.2 0l2.8 1.8c1.3.8.8.6 3.1 1.7-.4.4-.6.6-2.4 1.3 2.4.5 5.4.8 8.3.6a37 37 0 008.7-1.4 47 47 0 019-1.8c1.2 0 5.4 1.3 9.4 3.4 8.6 4.7 14.6 6 20.6 6 4.1 0 8.4-1 13.3-4.2 3.6-2.3.6-2.2-3-.7-5 2-15.2 3-27-3.2a44.4 44.4 0 00-14.6-5.6c-.4 0-3 .6-5.6 1.4z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+    <path fill="#d91023" d="M219.9 429.5c1.4 1.2 1.2 1.5 3.8 3.5 3.5.4 10.6 1.1 13.2 1.1 2.4 0 6.8-.4 10-1.2 6.2-1.3 9.2-1 20.5 4 13.1 6.8 20.5 5.6 27.3 2.3 9.4-3.6.2-2-3.2-3-1.1.3-2.5 1.8-5.2 2.7-3.8 1.4-5.8 1.4-10.3-1-2.9-1.4-5.4-2-8-3.5-2.5-1.5-3.1-1.3-7.3-2.7l-6.2-1.2-9.4-.5a44 44 0 01-21.5-1.3c-5.4-1.7-6.4-1.4-3.7.8z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+    <path fill="#d91023" d="M244.3 436.8a35 35 0 01-17.2 1l-3.9 1.3c-5 1.7-5 1.8-2.9 2.4 1.3.4 6.3.7 11.3.6 8.5 0 9.3-.1 14-2.4a24 24 0 017-2.5c1 0 4.5 2 7.7 3.7 8.8 4.6 12.1 6 19.4 5.9 7.3 0 16.7-5.3 17.9-7a28 28 0 01-17.3 4.8 41 41 0 01-19.8-7c-5.8-3.1-7.8-3.2-16.1-.8z" transform="matrix(.59548 0 0 .58466 141.4 62.9)"/>
+    <g stroke-width=".8">
+      <path fill="#fff" d="M293.5 417.7c1.2-1.4.8-2-2.5-2.4a47.2 47.2 0 01-23.1-10.9c-2.2-2.3-3.1-2.5-3.1-.7 0 2 6.7 8.1 11.6 10.6a45.6 45.6 0 0014.5 4.7c.8 0 1.9-.5 2.6-1.3z" transform="matrix(-.20995 -.43098 -.90458 .22461 742 335.3)"/>
+      <path fill="#d91023" d="M290.7 421.4c.2-.4-.4-2.4-3.1-3a41.8 41.8 0 01-19-9.8c-3.6-3.5-5.3-3.9-4.1-.7 1.6 4.6 14.3 11 19.3 12.6 5 1.6 6.1 2 6.9.9z" transform="matrix(-.20995 -.43098 -.90458 .22461 742 335.3)"/>
+      <path fill="#ed1c24" d="M295.5 415.4l.8-1.4-4-2.6c-4.7-.6-13-3.6-18.6-6.7a21.5 21.5 0 00-6.1-2.6c-1.5 0-1.6 0 .1 1.9a44 44 0 0021.8 10.4c2.3.4 4.7 2 6 1z" transform="matrix(-.20995 -.43098 -.90458 .22461 742 335.3)"/>
+      <path fill="#fff" d="M293.5 417.7c1.2-1.4.8-2-2.5-2.4a47.2 47.2 0 01-23.1-10.9c-2.2-2.3-3.1-2.5-3.1-.7 0 2 6.7 8.1 11.6 10.6a45.6 45.6 0 0014.5 4.7c.8 0 1.9-.5 2.6-1.3z" transform="matrix(.23749 -.41683 .88814 .2813 -101.9 308.3)"/>
+      <path fill="#d91023" d="M289 420.6c0-.2 1.2-1.6-1.4-2.2a41.8 41.8 0 01-19-9.8c-4.2-4.6-6.3-5.6-4.1-.7 1.6 4.6 14.3 11 19.3 12.6 5 1.6 4.4 1.3 5.1.1z" transform="matrix(.23749 -.41683 .88814 .2813 -101.9 308.3)"/>
+      <path fill="#ed1c24" d="M295.5 415.4l.8-1.4-4-2.6c-4.7-.6-13-3.6-18.6-6.7a21.5 21.5 0 00-6.1-2.6c-1.5 0-1.6 0 .1 1.9a44 44 0 0021.8 10.4c2.3.4 4.7 2 6 1z" transform="matrix(.23749 -.41683 .88814 .2813 -101.9 308.3)"/>
+    </g>
+    <path fill="#fff" d="M319.7 402.7a30.7 30.7 0 00-16.7 13.1c-2 3-4 4.4-2.6 5 1.5.8 2.9-1.3 5.6-4 7-7 12.5-10 20-10h6l-1.8-2.5c-2.1-3-4.6-3.3-10.5-1.6zm-50.5 2.4c-1.2 1.4-.9 2 2.6 2.5A49.4 49.4 0 01296 419c2.3 2.4 3.3 2.6 3.3.7 0-2-7.1-8.5-12.2-11-4.4-2.4-12.2-5-15.1-5-1 0-2 .5-2.8 1.4z" transform="matrix(.59517 .01882 -.01898 .58436 150 60.3)"/>
+    <path fill="#d91023" d="M318.6 399.5a52 52 0 00-5.4 2.3 48 48 0 00-9.9 9.6l-3 4.2c-1.3 2-1.5 3.2-.8 3.3.6.2 2-.7 3.5-2.7 6-8.4 11.6-12.2 19.8-13.9 4.2-.8 4.8-.8 6.3.7 1.2 1-.3-.2-.6-1-.5-1.8-1.8-2.7-4.5-3.2a13.3 13.3 0 00-5.4.7z" transform="matrix(.59517 .01882 -.01898 .58436 150 60.3)"/>
+    <path fill="#d91023" d="M272 403.3c-.2.4 1.8 1.2 4.5 1.7a42 42 0 0119 9.9c3.5 3.5 5.3 3.8 4 .6-1.5-4.5-14.2-11-19.2-12.5-5-1.6-7.6-.8-8.3.3zm48.5 4A39.3 39.3 0 00307 416c-4 3.9-5.8 6.3-4.2 6.3.3 0 2.7-1.9 4.3-3.3 7-6 19.8-9.4 25.4-7.3 2.8 1 1.5-2-.4-4.8-1.1-1.7-8-.7-11.5.6zm-53-.2l-3.4 3.1 5 .9c5 .6 14.3 4 20.5 7.4 2.7 1.6 5.8 2.9 6.7 2.9 1.7 0 1.8 0-.1-2.1a48.7 48.7 0 00-24-11.6c-2.7-.4-3.4-1.8-4.8-.6z" transform="matrix(.59517 .01882 -.01898 .58436 150 60.3)"/>
+    <path fill="#d91023" d="M304.5 422.4a33.6 33.6 0 00-1 14.1c1.6-.2 2.7-.2 5.3-.7.3-2.2.7-4.7.6-7.4.3-3.7 0-1.8 2.1-4.8-2.3-1.5-3-1.6-7-1.2z" transform="matrix(.59548 0 0 .58466 140.8 64.7)"/>
+    <path fill="#fff" d="M296.2 428.6c0 4.2.3 5.2.3 7.2 2.3.3 7.4 1 7 .2v-8l1-5.5-3.7-.6-3.2.4-1.4 6.3z" transform="matrix(.59548 0 0 .58466 140.8 64.7)"/>
+    <path fill="#d91023" d="M291 428.8c.1 3.4-.5 4.5-.1 6.5 1 .3 5 .2 6.3.5-.2-4.3-.2-.5-.6-6.2l1.2-7.3-3.6.3s-2.2-.7-3.7-.7c1.3 2.3.5 7 .5 7z" transform="matrix(.59548 0 0 .58466 140.8 64.7)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pf.svg
new file mode 100644
index 0000000..7a32556
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pf.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pf" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pf-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#pf-a)">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M80 0h480v480H80z"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-width="2pt" d="M277.3 340.8s10.8-8.8 21.4-8.8 13.4 7.3 20.8 7.9c7.3.6 13.4-7.3 22.5-7.6 9.1-.3 20.5 6.4 20.5 6.4l-39.8 12-45.4-10zm-22.9-13l135.4.7s-11.7-12.7-25.5-13c-13.8-.2-10 6-20.5 6.8-10.6.9-13.2-6.4-22.9-6.2-9.6.3-15.2 6.2-22.5 6.5-7.4.3-16.7-7.3-22.3-7-5.6.3-25.5 8.7-25.5 8.7l3.8 3.6zm-17.3-16l167 .5c2.7-3.8-8.2-12.9-18.1-13.7-8.2.3-14 8.5-20.8 8.8-6.8.3-14.4-8.5-22-8.2-7.6.3-15.5 8.2-23.1 8.2-7.7 0-13.2-8.5-22.9-8.5s-14 9.3-21.4 8.8c-7.3-.6-13.8-9.4-20.8-9.4s-18.7 10.5-21 10c-2.4-.7 2.9 4.3 3.1 3.4z"/>
+    <path fill="red" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.5" d="M301.3 218.9l38.4 10.2v-54.8c-17.6 1-32.2-33.4-1.2-35.7-30.5-4.4-34 3.5-37.5 12l.3 68.3z"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-linecap="round" stroke-width="5" d="M277 258.7l86.7.3"/>
+    <path fill="none" stroke="#000" stroke-linecap="round" stroke-width="4" d="M281.1 238l10.3 13.7m-10.3 0l11.1-13.5M287 237l-.3 8.5m10.8-7.6l10.3 13.8m-10.3 0l11.1-13.5m-5.2-1.2l-.3 8.5m11.1-7.6l10.3 13.8m-10.3 0l11.1-13.5m-5.2-1.2l-.3 8.5m11.7-7.6l10.2 13.8m-10.2 0l11.1-13.5m-5.3-1.2l-.2 8.5m11-7.6l10.3 13.8m-10.2 0l11.1-13.5M354 237l-.3 8.5"/>
+    <path fill="#ef7d08" fill-rule="evenodd" d="M218.7 259.6l36.9.3v-23.1l-42.2-2.1 5.3 24.9zm-1.8-32l39.3 3.9-.3-16.4-38.4-15.3-.6 27.9zm8-32.7l30.1 14.6 4.3-4.5s-2.8-1.9-2.6-3.7c0-1.7 2.8-2 2.8-4 0-1.7-3-2-3.1-3.7-.2-2 2.4-4 2.4-4l-27.2-23.7-6.8 29zm198 65h-39l-.3-22.6 42.8-3.2-3.5 25.8zM384.2 232l46.3-5.6-10-26.7-36.6 15.6.3 16.7zm33.7-39.6L384.5 210c-.5-2-.9-3.8-3.2-5.3 0 0 2-1.2 2-3.2s-2.6-2.4-2.6-3.5 2.4-2.2 2.6-4.9c-.3-1.8-2.6-4.4-2.2-4.9l26-19.8 10.8 24zm-72.4 39.1l16.7-.7.3-6.7-17 7.4zm-51-.5l-17.5-.5v-7l17.6 7.5zm0-2l-17.5-9v-11.8s-2 .3-1.8-2c.1-4.9 12.9 8.9 19.4 13.4l-.1 9.4zm51-1.1v-7.7s15.8-14.2 19.1-16.9c0 3-1.8 5.2-1.8 5.2v11.2l-17.3 8.2zM243 163.8l17.8 19.7c.4-1.8 4.5-2.1 8.6-1.8 4 .3 7.3-.3 7.3 2.6s-2 2.5-2 4.6 3 1.9 3 4.5-2.2 2.1-2.2 4.1c0 1.7 2.4 1.8 2.4 1.8l16.6 16.1v-17.2l-34.2-53.7-17.3 19.3zm27.4-20.4l23.3 47.5s.2-43.8 4.1-46.1l-6.5-12-20.9 10.6zm101 1.9l-26 46.2V172s2.2-3.2-1.2-3c-3.4.3-7.5-.2-7.5-.2l10.4-36.6 24.3 13zM398 165c-.3.5-17.5 18-17.5 18-.8-2-6-1-11-1-4.9 0-5.6 1.6-5.3 2.9.5 3.3 2.2.8 2.2 4 0 3.1-2.4 2-2.7 4.2.3 2.7 3.8 2 1.7 4l-19.9 19.2v-18.2l37.1-57.6L398 165z"/>
+    <path fill="red" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width="2.5" d="M309.8 268.4c-8.3 13.8-30.6 9.7-35.9 0-1.5-.4-.6-59.5-.6-59.5s-2.5-1.1-2.6-3c-.1-1.8 3.4-2 3.4-4.3s-3.6-1.4-3.7-3.8c0-2.2 3.9-2 3.7-4-.2-2.4-4.3-2-4.5-4.2 0-1.7 3-3.2 3.8-4a61.3 61.3 0 01-2.8 0l-6.4.1c-4.6 0 0 1 0 3.6 0 1.7-2.3 2.9-2.5 4.3-.1 1.6 3.2 2.6 3.3 4.5 0 1.6-3.3 1.7-3.2 3.3.2 2.5 3 3.1 2.9 4.7 0 1.5-3.6 2.1-3.7 3.3.2 2.4.6 60.8.6 60.8 5.7 29.8 38.8 37.3 48.2-1.8zm21.9 0c8.3 13.8 30.6 9.7 35.8 0 1.6-.4.7-59.5.7-59.5s2.5-1.1 2.6-3c.1-1.8-3.2-2-3.2-4.3s3.4-1.4 3.4-3.8c0-2.2-3.5-2-3.3-4.2.2-2.3 3-2 3.1-4.2.1-1.9-1.7-3-2.6-3.8h2.7l6.4.1c4.5 0 0 1 0 3.6 0 1.7 2.3 2.9 2.5 4.3 0 1.6-3.2 2.6-3.3 4.5 0 1.6 3.3 1.7 3.2 3.3-.2 2.5-3 3.1-3 4.7.1 1.5 3.7 2.1 3.7 3.3l-.5 60.8c-5.7 29.8-38.9 37.3-48.2-1.8z"/>
+    <path fill="#083d9c" fill-rule="evenodd" stroke="#083d9c" stroke-width="2pt" d="M301.7 295.6H339c.3-.3-8.4-13-18.6-12-11.5.3-19.3 12-18.7 12zm118.9-1h-51s6.6-3.8 8.4-7.4c3.3 1.8 2.4 3.6 9 3.9 6.6.3 12.9-7.5 19.2-7.2 6.3.3 14.4 11 14.4 10.8zm-201 0h51s-6.6-3.8-8.4-7.4c-3.3 1.8-2.4 3.6-9 3.9-6.6.3-13-7.5-19.2-7.2-6.3.3-14.4 11-14.4 10.8zm3.8-16l36.3.3s-2.3-5-2.6-11.1c-9.4-3.2-17 7-23.8 7.3-6.7.3-13.7-7.3-13.7-7.3l3.8 10.8zm194 0l-36.4.3s2.3-5 2.6-11.1c9.4-3.2 17 7 23.8 7.3 6.7.3 13.7-7.3 13.7-7.3l-3.8 10.8zM311 279l18.4-.5s.3-5.6-9.3-5.6-8.8 6.4-9.1 6.1zm-11.2-7.9a17 17 0 008.2-7.6l-12.6.3s-5.8 3.5-8.7 7.3h13.1zm40.8 0a17 17 0 01-8.2-7.6l12.6.3s5.8 3.5 8.7 7.3h-13.1z"/>
+    <path fill="#de2010" fill-rule="evenodd" d="M-40 360h720v120H-40zm0-360h720v120H-40z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pg.svg
new file mode 100644
index 0000000..5fb0cd5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pg.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pg" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path d="M1.6 0l-.5 480h640L1.6 0z"/>
+    <path fill="red" d="M640.6 480l.5-480H1.1l639.5 480z"/>
+  </g>
+  <path fill="#fc0" stroke="#fc0" stroke-width="1.1" d="M178 54l-3.8-.2c-1.2-2.8-4.5-3.8-6.6-2.6A333 333 0 01156 51l7.1 3.1C165 59 171 60 171 60c-.6 8.8-8.9-1.1-15.9 3.9-5 3-5 6.5-7.7 12.3-.9 1.6-4.4 5.8-4.4 5.8l5.9-.5L147 84l7-1-1.5 1.4c1 .2 8-1.7 8-1.7L160 85l8-2.9s1.6 1.3 3 1.9l1-4 4 1 1-4c6 8 8 16 19 18l-1-4a262.2 262.2 0 018.7 4l.9-1.7c4.8 3.4 8.7 3.3 11.4 3.7l-2-5 2 1-3-8 3 1-4-6 1.5-1-.5-3c6 2 14 5 15 12 1 11-11 14-19 13 6 5 17 3 22-2 2-2 3-5 4-8 1 3 3 7 3 11-1 9-13 12-21 13 9 5 25-1 26-14 0-11-7-16-10-21l-1-5.4 3 1.4s-1.8-3.3-2-4c0 0-3.1-8.5-4.2-10.4l2.2.4-8.2-10.3 2.3-.2S215.6 44 213 43l3-1c-6-3-13-1-19 3l1-3-1.8.2v-3.5L198 36l-3-1 2-5-3 1 1-5s-2.2 1-3.6.9a51.7 51.7 0 001.6-3.4c-1-1.5 0-4.5 0-4.5-7 1-8 2-12 8-6 11-4 16-3 27z" transform="matrix(2.21989 0 0 2.21194 1.1 0)"/>
+  <path fill="red" fill-rule="evenodd" stroke="red" stroke-width="1.4" d="M215.8 70.4c.5.9 6.2 3.6 10.4 6-1.1-4.6-9.4-5.6-10.4-6z" transform="matrix(2.21989 0 0 2.21194 1.1 0)"/>
+  <path fill="#fff" fill-rule="evenodd" d="M175 399l-14.2-9-19 9.1 4.3-16.2-14.5-15.1 16.7-1 10-18.4 6.1 15.5 20.7 3.8-13 10.6zm36.2-79l-6.6-3-6.3 3.6 1-7.2-5.4-4.9 7.1-1.3 3-6.6 3.5 6.4 7.2.8-5 5.2zm32-45.2l-14.5-7-13.9 7.8 2.3-15.7-11.8-10.8 15.7-2.8 6.6-14.4 7.6 14 15.8 1.8-11 11.5zm-65.8-63l-17-8.5-16.5 9.1 2.8-18.6-13.8-13 18.7-3 8-17 8.7 16.7 18.8 2.3-13.3 13.4zm-60.8 65.4l-17-10-17 10.3 4.3-19.3-15.1-13 19.7-1.8 7.7-18.3 7.9 18.2 19.8 1.6-14.9 13z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ph.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ph.svg
new file mode 100644
index 0000000..a0c37d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ph.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ph" viewBox="0 0 640 480">
+  <path fill="#0038a8" d="M0 0h640v240H0z"/>
+  <path fill="#ce1126" d="M0 240h640v240H0z"/>
+  <path fill="#fff" d="M415.7 240L0 480V0"/>
+  <g fill="#fcd116">
+    <path stroke-width="1pt" d="M26.7 42.4L41 55l16.6-9.2-7.4 17.5 14 13-19-1.6-8.1 17.2-4.3-18.5L14 71l16.3-10zm323.8 172.3l.4 19 18 6.3-18 6.2-.4 19-11.5-15.1-18.2 5.5 10.8-15.6-10.8-15.6 18.2 5.5zM37.2 388.1l8 17.2 19-1.6-13.9 13 7.4 17.5-16.6-9.1-14.4 12.4 3.6-18.7L14 409l18.9-2.4z"/>
+    <path stroke-width="5.3" d="M151.4 139.1l-6.2 6.2 3.1 47-3 .3-5.7-42.9-5.1 5 7.6 38.4a47.5 47.5 0 00-17.2 7.1l-21.7-32.4H96l26.4 34.3a48 48 0 00-2.4 2l-31.1-35.5h-8.8v8.8l35.4 31-2 2.5-34.3-26.3v7.1l32.5 21.7c-3.4 5.2-5.9 11-7.1 17.2L66.3 223l-5.1 5 42.9 5.7c-.2 1-.3 2.1-.3 3.1l-47-3-6.2 6.2 6.2 6.2 47-3.1.3 3.1-42.9 5.7 5 5 38.4-7.6a47.5 47.5 0 007.1 17.2l-32.5 21.7v7.2l34.3-26.3a48 48 0 002 2.4l-35.4 31v8.8H89l31-35.4 2.5 2L96 312.2h7.2l21.7-32.5c5.1 3.4 11 5.9 17.2 7.1l-7.6 38.4 5 5 5.7-42.9c1 .2 2 .3 3.1.3l-3 47 6.1 6.2 6.3-6.2-3.1-47 3-.3 5.7 43 5.1-5.1-7.6-38.4a47.5 47.5 0 0017.2-7.1l21.7 32.5h7.2l-26.4-34.3a48 48 0 002.4-2l31.1 35.4h8.8v-8.8l-35.4-31 2-2.4 34.3 26.3v-7.2l-32.5-21.7c3.4-5.1 5.9-11 7.1-17.2l38.3 7.6 5.1-5-42.9-5.7c.2-1 .3-2 .3-3.1l47 3 6.2-6.1-6.2-6.2-47 3-.3-3 42.9-5.7-5-5-38.4 7.5a47.5 47.5 0 00-7.1-17.2l32.5-21.7v-7.1l-34.3 26.3a48 48 0 00-2-2.4l35.4-31v-8.9H214l-31 35.5a48 48 0 00-2.5-2l26.4-34.3h-7.2L178 200.2c-5.1-3.4-11-5.9-17.2-7.1l7.6-38.3-5-5-5.7 42.8-3.1-.3 3-47z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pk.svg
new file mode 100644
index 0000000..387265c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pk.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pk" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pk-a">
+      <path fill-opacity=".7" d="M-52.3 0h682.6v512H-52.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#pk-a)" transform="translate(49) scale(.9375)">
+    <path fill="#0c590b" d="M-95 0h768v512H-95z"/>
+    <path fill="#fff" d="M-95 0H97.5v512H-95z"/>
+    <g fill="#fff">
+      <path d="M403.7 225.4l-31.2-6.6-16.4 27.3-3.4-31.6-31-7.2 29-13-2.7-31.7 21.4 23.6 29.3-12.4-15.9 27.6 21 24z"/>
+      <path d="M415.4 306a121.2 121.2 0 01-161.3 59.4 122.1 122.1 0 01-59.5-162.1A118.6 118.6 0 01266 139a156.2 156.2 0 00-11.8 10.9A112.3 112.3 0 00415.5 306z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pl.svg
new file mode 100644
index 0000000..c00513a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pl.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pl" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M640 480H0V0h640z"/>
+    <path fill="#dc143c" d="M640 480H0V240h640z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pm.svg
new file mode 100644
index 0000000..07ea24c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pm.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pm" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pn.svg
new file mode 100644
index 0000000..80682ab
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pn.svg
@@ -0,0 +1,62 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pn" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pn-a">
+      <path d="M-15-7.5h30v15h-30z"/>
+    </clipPath>
+  </defs>
+  <path fill="#00247d" d="M0 0h640v480H0z"/>
+  <g clip-path="url(#pn-a)" transform="translate(320 160) scale(21.33333)">
+    <circle r="20" fill="#00247d"/>
+    <path stroke="#fff" stroke-width="3" d="M-20-10l40 20m-40 0l40-20"/>
+    <path stroke="#cf142b" stroke-width="2" d="M-20-10l40 20m-40 0l40-20"/>
+    <path fill="#fff" d="M0 0l20 10h-3L-3 0m3 0l20-10h3L3 0M0 0l-20 10h-3L-3 0m3 0l-20-10h3L3 0"/>
+    <path stroke="#fff" stroke-width="5" d="M-20 0h40M0-10v20"/>
+    <path stroke="#cf142b" stroke-width="3" d="M-20 0h40M0-10v20"/>
+  </g>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M410 310.4a59.7 59.7 0 00-20.1 29.3c-6 28.9-14 35.3-26.5 29 0 15.6 13.6 16.8 19.6 7.7 0 14.5 5.3 27.1 17.1 37.9 5 4.5 6 1.4 3.6-3.6s-2.4-21.2-7.1-30.5c7.6 5.5 18.8 2.4 17.8-12.6-9.7 5.7-19.5 5.5-20.5-8.1-1.2-16 5-39.1 16-49.1zm-11.6-114.8c.6-5.7-.6-11.6-4.8-15.2-8-7.2-16-4.8-21.9 1-8.8-4.8-13.5 12-23.5 9.2 1.7 5.5 4.3 7.8 9.3 6-5.2 4.7 0 10.4-6.2 16.2 11.2 3.5 17.2-2.7 16.7-13.4 4.3 3.8 11 3.6 14.5-.7-6-2-6-7.1-3.6-12 3.6-7 20.4-6.8 19.5 9z"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M424.2 278.5c-12.6 6.7-35.7 3.8-37.9-12.6-2.1-16.4 13.8-23.8 18.1-26 6.7-3.3 12 2.6 9.8 9.5a10.8 10.8 0 005.5-16.2c9.7.7 18.8-6.6 22.6-17.1-3.4 3.3-12.8 1-20.5.5 2.4-2.6 2.4-7.7 1.7-10.3-8.1 8.3-19.8 4.5-35.3 28.6 2.4-8.3 7-25 9.6-36a27.1 27.1 0 00.6-3.3c.9-15.7-15.9-16-19.5-8.8 4 4.4 2 9.6.5 17.4-1.6 9.3-5.2 30.7-8.3 37.9-1-11.2-8.4-12-9.8-17.4-2.1 1.4-3.3 5.2-2.9 7.8-2.6-2.8-11.6.7-15-3.5-3.5 7.1 2.2 14.3 8.2 17.3-3.5.3-4.4 4.5-8.2 4.5a23.3 23.3 0 0016.5 8.8c6 .5 10.6 2.7 14.3 10.1 6 11.9 28.6 19.6 50 8.8z"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M455.7 264c-7.2 19.7-26.7 33.8-35.6 36-15 3.6-45.6 18.4-53.8 26"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M410 310.4c-11.4 9.6-17.3 33.1-16 49.1.3 4.4 1.5 7.5 3.4 9.3.8-9 7.1-32.4 23.2-42.9 13.6-8.8 34.8-28.6 42.7-51.2a18 18 0 00-8.4-9.8c-7.8 21.4-28.7 31.6-45 45.5z"/>
+  <path fill="#316d3a" stroke="#000" stroke-width=".6" d="M448.4 254.8c-4 6-13.2 14.4-22 17.8 1.9-2.2 2.5-5 2.6-7.2a80.8 80.8 0 01-42.7.5 58.2 58.2 0 0057.7-17.2c2 2.2 3.6 4 4.4 6.1z"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M362.7 304.7c-18.2 17-6.2 32 1 35.3-2 11.9 9.3 10.4 9 20.4 4.6-2.6 5.8-9.5 5-15 5.8 6.2 20.3-.7 23.4 10.8 2-12.7-7.9-25.3-20-24.1 5-4.5 2.1-11.9-2.6-13.8-1 9.3-11.5 9.3-15.5 6.4-4-2.8-7.4-12.1-.3-20z"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M402.2 413.1c-2 1.1-1.9 3.7-.6 5.3 2.5 3.4-1.8 11 6.3 12.6 2.4.5 4.2-1 5.1-3.7 2.5-7.5-5.5-8.4-6.2-12-.7-3.5-3-3.2-4.6-2.2z"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M409 427.2c-2.7 1.2-5 3-4 11.5.5 3.6.2 12.2-2.8 12.3 1.9 1 6 2 7.6-.3 1.6 2.7 5.2 2 6.7-1.4 1.9 1.6 4.5-1 4.5-3.3 1.7 1 5-.5 4.1-5.6 2 .7 4.7-.7 5.7-2-3-.6-10.5-4.7-12.3-8-1.8-3.1-6.4-4.7-9.5-3.2z"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M367.7 186.2a31.4 31.4 0 014-4.9m41.3 36.4c2.1-1.1 5.3-1.3 8.9-1m-12.1 234c-.8-1.1-1.1-6.2-.6-9.2m7.3 7.8"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M535 305c29.3 24.5 31.2 44 26.7 55.4-2.4-10.7-14.5-27.3-27.2-31.6l.5-23.9z"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M482.6 291.1h54.3v64.4c0 54.7-30.5 87.1-61.5 104.3A114.3 114.3 0 01414 355.5V291h38c0 3.4.4 8.4 4.3 13.4 9-1 19.2-7.7 26.2-13.4z"/>
+  <path fill="#006ec7" stroke="#000" stroke-width=".6" d="M536.9 291.1v64.4c0 16.5-2.8 31-7.5 43.6l-54-99-53.9 99"/>
+  <g fill="#f7e017" stroke="#000" stroke-width=".6">
+    <path d="M500 429.6l5.2 2.6a38.3 38.3 0 002.4-21c-3 7.9-13.6 7.6-16.4 12.4a34.6 34.6 0 014.8 3 55 55 0 01-16.7 11v-51c0-3.6-1.2-6.6-1.2-9.6v-10.5c0-2.4-.5-5.9-2.7-5.9-2.1 0-2.6 3.5-2.6 5.9V377c0 3-1.2 6.4-1.2 9.6v51c-2.6-7.6-12.9-5-17.6-12.6a13.5 13.5 0 015.7-.2c-3.5-12.2-13.3-13.1-15.2-16.7 0 5-2.1 16.7 1.2 21.7a13.3 13.3 0 013.2-2.6c4 8.8 22.3 8.8 26.5 23.3 3.5-5.3 15.9-11.5 24.6-20.9z"/>
+    <path d="M475.4 387.1c4 0 17-1.3 21.6-1.3 1.2 0 2.2-1.8 2.2-4s-1-4-2.2-4c-4.6 0-17.5-1.4-21.5-1.4s-17 1.3-21.6 1.3c-1.2 0-2.2 1.8-2.2 4s1 4.1 2.2 4.1c4.6 0 17.5 1.3 21.5 1.3zm-2.6-20.9"/>
+    <path d="M453.9 385.8c1.2 0 2.2-1.8 2.2-4s-1-4-2.2-4"/>
+    <path d="M455.7 385.8c1.2 0 2.2-1.8 2.2-4s-1-4-2.2-4m11.7 8.8c1.5 0 2.7-2.1 2.7-4.8 0-2.7-1.2-4.9-2.7-4.9m2.8 10c1.5 0 2.8-2.3 2.8-5.1s-1.3-5.1-2.8-5.1m9.1 10.2c1.6 0 2.8-2.3 2.8-5.1 0-2.9-1.2-5.2-2.8-5.2m3 10.2c1.4 0 2.7-2.3 2.7-5 0-2.8-1.3-5-2.8-5m12.8 9.1c1.2 0 2.2-1.8 2.2-4.1s-1-4.1-2.2-4.1m-46.2 49.5a18.1 18.1 0 015.2-2.2m43.4 2.6l-1.4-1m4 3c3.3-3.5 6-7.6 7.6-12.2"/>
+  </g>
+  <g stroke="#000" stroke-width=".6">
+    <path fill="#fff" d="M464.5 336.6c0-1.2 1-1.7 2.1-2.5 1.3-1 1.9-1.5 3.1-1.5h15.6c1.2 0 1.5.3 1.5 1.4v21.2c0 1.1-.3 1.4-1.5 1.4h-20.8v-20.2"/>
+    <path fill="#e5e5e5" d="M481.5 358.5c2 0 1.7 0 3-1.5 1.6-1.5 1.5-1.4 1.5-2.8v-19.4c0-1-.3-1.3-1.4-1.3h-14.4c-1.1 0-1.6.4-2.9 1.4-1 .8-1.9 1.3-1.9 2.3v21.3h16z"/>
+    <path fill="#fff" d="M483 358c0 1-.3 1.4-1.4 1.4h-15.7c-1.1 0-1.4-.3-1.4-1.4v-21.3c0-1 .3-1.3 1.4-1.3h15.7c1.1 0 1.4.3 1.4 1.4V358z"/>
+  </g>
+  <path fill="#96877d" stroke="#000" stroke-width=".6" d="M513.3 278.7a12 12 0 012.4 12.4h-4.5c1.9-5.7.7-11.2-7.4-11.9-12.1-1-26.2 22.4-47.4 25.3-6.2-7.4-5.9-21.5 2-28.1a86.7 86.7 0 00-18.6-30.2"/>
+  <path d="M460.5 285c-1-16-7.5-29-16.5-38a25 25 0 0019-3c8-5.3 28.4-14.5 35.9-10.5a11.7 11.7 0 01.5 6.1c-1.8-4.7-21.6 2.7-27.2 5-5.3 2.4-7.7 5.8-5.8 13.3-3.1-2.6-2-5.1-5.3-7a50 50 0 012.8 13.2c-1.2-3.2-3.4-10.1-8-14.2a78 78 0 015.9 36.8 30 30 0 0013.1-5.5c-2.5 3.6-9.7 6.1-14.3 7-2 2.6-3.5 9-3.4 12.6-.3-4.4 1-15.2 3.3-15.9zm52.8-6.3c-4-4.4-11.3-6.8-20.7-4.2a29.8 29.8 0 017.3-2.4c-.4-2.5-2.7-13.3-3-15.9l2.6-1a178 178 0 004 16.8c1 .2 2.8.6 4.5 1.4-.8-2.5-4.8-20.5-4.7-22.4l3.6-2c1.4 9.8 3.7 24 6.4 29.7z"/>
+  <path fill="#96877d" stroke="#000" stroke-width=".6" d="M511.2 291.1c1.9-5.7.7-11.2-7.4-11.9-6.3-.5-13 5.6-21.2 12h28.6zm-52.7-51.3"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M458.4 276.4c1.3 3.8 2.2 7.4 2.3 10.7m-13.1-58.3c-2.2 3.2-4 6.6-4.7 9.4 4 1.4 12 2 15.6 1.6"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M439.8 246.2l4.2.8a24.9 24.9 0 0019-3c6-4.3 22.2-17.7 40.6-19.1"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M435 242c5.8 1.3 17.6 1.8 23.5-2.2a80.4 80.4 0 0140.5-15.6"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M535 305c20 13.8 34.8 27.1 39 48.6 4.4 21.4 12.5 27.1 22.5 21.4-2.4 12.4-14.8 13.8-25.3 4.3 1 14.3-4.8 31.4-19.5 37.6-1-8.6 4.7-15.3 3-22.4-.6-3-.9-10.2 3.2-13.6-7.9 2.7-20.3-2.3-21.5-14 9 4.3 20.8 5 25.3-6.4 4.5-11.5 2.6-31-26.7-55.6zm25.3-111.5c6.1-16.3 22.4-14.6 27.8-7.7 16-9 18.1 11.5 31.7 7.4-.2 3.8-4.8 7.4-9.7 7.2 5.2 4.7-2.2 11.9 9 16.2-9.5 4.7-22.9-.3-26.5-13.4-3 6.2-14.3 6.2-18.8 1.2 9.8-2.6 9-11.7 3.6-15.2-5.5-3.6-15.3-2.2-17.1 4.2zM511.9 229a86.8 86.8 0 0023.6 36.8c11.4 10.5 28.7 7.8 38.3-2.2.3 20-20.4 21.5-31.9 15.3-5-2.8-9.2-1.3-4.3 3 7.4 6.7 23.6 11.7 42.7 15.8 33.3 7.1 21.4 33.6 11.6 33.4 2.9-.1 5.2-3 1.1-6.7-29-26-87.8-15.7-86.8-73.9-6.2 15.3-31.7 9.3-19.8-8.8 3.8 3.1 10.5 3.3 12.4-1.4 1.5-3.7.5-10.2-6.2-15.7 1.1-.1 3.5 0 3.2-2.7.3 1.6 1.8 4 5.5 3.2 1.1 1.6 2.2 2.8 3.8 2.2.3-.2 1.2-.6.8-2.3.3 3.1 4 4.3 6 4z"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M542 279c13.7 9 29.3 9 43.7-7.6 4.6-5.3 11.7-9.8 16.7-10.3s4.8-5.2 8.6-6.2c-2.4-.7-3.3-3.5-6.9-3.2 9-3.1 6.3-10.2 10.7-13.7-3.6 1.3-9.1-4-14.3 2.8 1.3-3.2-.5-6.9-1.8-8.3.5 3.6-7 4.3-8.4 13.4-.8 5-3.6 4.7-4-3.1-.4-5.8-3.2-21.7-6.5-29.8-3.3-8.1-4.1-19.2.4-21m-33.5 234.4c3 1.5 5.5 3.5 3.9 13-.7 4-.8 13.6 2.7 13.9-2.2 1-6.8 1.9-8.5-.6-2 2.9-6 1.9-7.4-2-2.2 1.7-5-1.3-5-3.9-1.8 1.2-5.5-.7-4.3-6.4-2.3.7-5.2-1-6.2-2.5 3.3-.5 11.9-4.7 14-8.2 2.2-3.5 7.4-5 10.8-3.3z"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M544.7 452.7c1-1.3 1.6-6.9 1-10.3m-8.4 8.4a15.7 15.7 0 005.1-8.2m-10 4.3c2-.8 6.7-6.5 7.8-10.2m-12.2 3.7a26 26 0 0012.1-9"/>
+  <path fill="#f7e017" stroke="#000" stroke-width=".6" d="M506.2 250.6c-.4 24.5 9.7 36.8 23.8 44.8-5.2-3-3-13.8-10-17.3 1.7 0 4.3 2.3 8.5 1.3-2-4.5-5.4-11.4-13.1-12.3 2-.3 6.4.4 9.2-.6-4-6.2-14.7-3.3-18.4-15.9zm-2.6-23.2c-.8-.3-1.6-1.1-2.3-2.3-3.7.8-5.2-1.5-5.5-3.2.2 2.8-2.1 2.7-3.2 2.8 6.7 5.5 7.7 12 6.2 15.7-2 4.7-8.6 4.5-12.4 1.4-.5 10.1 12.6 13.5 17.4.7 0 2.2 2.7 2 3.4 4.8 3.4-5.5.9-13.4-3.6-19.9z"/>
+  <path fill="#cf142b" stroke="#000" stroke-width=".6" d="M487 150.7c0-2.2 3.6-5 8.6-5 6 .2 10.7 5.6 15.5 5.1 4.8-.5 2.5 2.1 1.4 2.9-1 .7-1.6 1.8-1.2 3 .4 1.4-.3 2.2-2.2 1-4.3-2.7-8.6 1-14.3-1-4.9-1.8-7.7-2.8-7.8-6z"/>
+  <path fill="#96877d" stroke="#000" stroke-width=".6" d="M462.5 207a36.5 36.5 0 00-15.9-17.7l-.2-4a53 53 0 0010.7-8c17.9 8.5 42.2-3.6 53.4-16.3l4.3 2.7-2.2 2.8-2.2-1.2c-2.8 3.4-13 13-16.1 15a61 61 0 0011.4 1.7c10-7.1 17.9-13.6 21.7-14l3.2 4.2-2.9 2-2.2-1.2a114.6 114.6 0 00-27.7 41c-6.6-1.5-30.5-.5-35.3-7.1z"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M463.4 204.3c-1.6-8.9 1-18.7 5.5-21.7a35.6 35.6 0 0036.8-.6"/>
+  <path fill="none" stroke="#000" stroke-width=".6" d="M463.4 199.6c7.6-.2 24.2 1.1 28.3 1.7 4 .6 10.8 2.3 9.8 4.3m-34.6-7.2l2.2-2.2-2.2-2.2-2.2 2.2 2.2 2.2z"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M472.1 154c-2.7-3.8-10.3-5-11.9.1-.7 2.3-1.8 4.7-3.6 5.8-1.7 1-1.3 4.3-.6 5.7 2 3.4.3 6.7 4 9 0-2.7 4-5.6 7.5-6.3 3.4-.7 8.7-3.8 9.4-7.2.7-3.5 1.9-6.4-4.8-7z"/>
+  <path fill="#96877d" stroke="#000" stroke-width=".6" d="M455 188.3h.9v6.5l.6.3 5.6-3.2.5.9-5.7 3.2a1.7 1.7 0 010 .6l5.7 3.3-.5.8-5.7-3.2"/>
+  <path fill="#337321" stroke="#000" stroke-width=".6" d="M450.7 215c-.7-.8-2-3.1-2-4.8a6.2 6.2 0 014.1 1.6c-.1-1.2-.6-3.8-.3-5 1.3.5 4 2 5 3.8"/>
+  <path fill="#f7e017" d="M490.5 151.9c0-.9 2-2.9 5.5-2.8 4.2 0 8 3 11.4 2.9 3.4-.3 1.7.8 1 1.1-.7.3-1 .8-.8 1.3.2.5-.2.9-1.6.4-3-1.1-6 .4-10-.5-3.4-.7-5.4-1-5.5-2.4z"/>
+  <g stroke="#000" stroke-width=".6">
+    <path fill="#f7e017" d="M454.4 222.2c-3.6 4.2-7.2 3.5-7.9.8-.7-2.8 2-4 1-6.5-1-2.3 1.5-3.4 2.7-2.3 1.2 1 5-2.4 6.7 1.2 1.6 3.5 3 6 2 7.5-1 1.4-3.8.7-4.5-.7zm15.3-6.5c-.7-1.5 3-4.6 5-2.4 1.9 2.1 4.9-2.4 6.5 1 1.7 3.4 2.2 5.2 3 7.1.9 2-4.5 3-6.1 1.3.2 1.1-4.7 2-6-1.2l-2.4-5.8zm24.8 2c-.9-1.7 3.5-4 5.7-1 .6-1.3 5-1.5 5.2 2.1l.5 7.2c.1 1.5-2.6 2.8-4.5-.9-3.5.8-5.2-1.2-5.6-3.3a17 17 0 00-1.3-4.1z"/>
+    <path fill="#337321" d="M456.7 215.3c-.6-1.2 3-3.6 5.4-1.8 2.5 1.8 5.9-1.5 7.3 1.7 3 6.5 3.1 7 2.2 8.2-.9 1.3-4.7.8-5.6-1-.2 1.2-3.5 1-5.2.1-2-1-3.4-5-4.1-7.2zm25 .3c-.8-1.8 4.8-3.4 7.2-.2 1.3-1.2 4-1.2 5.6 2.3 1.5 3.5 1.8 5.5.6 6.4-.8.6-3.6 1-4.6-.5-1.3.8-5.4.1-6.3-2.1-.8-2.3-1.6-4.3-2.4-6zm23.8 3.5c-.2-1.6 2.9-2.4 4 0 1.1 2.5 4.8.3 5 4.3a9 9 0 01-1.5 5.2c-1.1 1.4-6.6 0-7-3"/>
+    <path fill="none" d="M454.4 222.2c-1.3-1.8-3.1-4.7-5.4-1.6m17 1.8"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pr.svg
new file mode 100644
index 0000000..191c56a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pr.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pr" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pr-a">
+      <path fill-opacity=".7" d="M-37.3 0h682.7v512H-37.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#pr-a)" transform="translate(35) scale(.9375)">
+    <path fill="#ed0000" d="M-37.3 0h768v512h-768z"/>
+    <path fill="#fff" d="M-37.3 102.4h768v102.4h-768zm0 204.8h768v102.4h-768z"/>
+    <path fill="#0050f0" d="M-37.3 0l440.7 255.7L-37.3 511V0z"/>
+    <path fill="#fff" d="M156.4 325.5L109 290l-47.2 35.8 17.6-58.1-47.2-36 58.3-.4 18.1-58 18.5 57.8 58.3.1-46.9 36.3 18 58z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ps.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ps.svg
new file mode 100644
index 0000000..a6dedf5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ps.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ps" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ps-a">
+      <path fill-opacity=".7" d="M-118 0h682.7v512H-118z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#ps-a)" transform="translate(110.6) scale(.9375)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M-246 0H778v170.7H-246z"/>
+      <path fill="#fff" d="M-246 170.7H778v170.6H-246z"/>
+      <path fill="#090" d="M-246 341.3H778V512H-246z"/>
+      <path fill="red" d="M-246 512l512-256L-246 0v512z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pt.svg
new file mode 100644
index 0000000..fa9621f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pt.svg
@@ -0,0 +1,57 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-pt" viewBox="0 0 640 480">
+  <path fill="red" d="M256 0h384v480H256z"/>
+  <path fill="#060" d="M0 0h256v480H0z"/>
+  <g fill="#ff0" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".6">
+    <path d="M339.5 306.2c-32.3-1-180-93.2-181-108l8.1-13.5c14.7 21.3 165.7 111 180.6 107.8l-7.7 13.7"/>
+    <path d="M164.9 182.8c-2.9 7.8 38.6 33.4 88.4 63.8 49.9 30.3 92.9 49 96 46.4l1.5-2.8c-.6 1-2 1.3-4.3.6-13.5-3.9-48.6-20-92.1-46.4-43.6-26.4-81.4-50.7-87.3-61a6.3 6.3 0 01-.6-3.1h-.2l-1.2 2.2-.2.3zm175.3 123.8c-.5 1-1.6 1-3.5.8-12-1.3-48.6-19.1-91.9-45-50.4-30.2-92-57.6-87.4-64.8l1.2-2.2.2.1c-4 12.2 82.1 61.4 87.2 64.6 49.8 30.8 91.8 48.9 95.5 44.2l-1.3 2.3z"/>
+    <path d="M256.2 207.2c32.2-.3 72-4.4 95-13.6l-5-8c-13.5 7.5-53.5 12.5-90.3 13.2-43.4-.4-74.1-4.5-89.5-14.8l-4.6 8.6c28.2 12 57.2 14.5 94.4 14.6"/>
+    <path d="M352.5 193.8c-.8 1.3-15.8 6.4-37.8 10.2a381.2 381.2 0 01-58.6 4.3 416.1 416.1 0 01-56.2-3.6c-23.1-3.6-35-8.6-39.5-10.4l1.1-2.2c12.7 5 24.7 8 38.7 10.2A411.5 411.5 0 00256 206a391.8 391.8 0 0058.3-4.3c22.5-3.7 34.8-8.4 36.6-10.5l1.6 2.7zm-4.4-8.1c-2.4 2-14.6 6.3-36 9.7a388.2 388.2 0 01-55.8 4c-22 0-40.1-1.6-53.8-3.6-21.8-2.8-33.4-8-37.6-9.4l1.3-2.2c3.3 1.7 14.4 6.2 36.5 9.3a385 385 0 0053.6 3.4 384 384 0 0055.4-4c21.5-3 33.1-8.4 34.9-9.8l1.5 2.6zM150.3 246c19.8 10.7 63.9 16 105.6 16.4 38 .1 87.4-5.8 105.9-15.6l-.5-10.7c-5.8 9-58.8 17.7-105.8 17.4-47-.4-90.7-7.6-105.3-17v9.5"/>
+    <path d="M362.8 244.5v2.5c-2.8 3.4-20.2 8.4-42 12a434 434 0 01-65.4 4.4 400 400 0 01-62-4.3 155 155 0 01-44.4-12v-2.9c9.7 6.4 35.9 11.2 44.7 12.6 15.8 2.4 36.1 4.2 61.7 4.2 26.9 0 48.4-1.9 65-4.4 15.7-2.3 38-8.2 42.4-12.1zm0-9v2.5c-2.8 3.3-20.2 8.3-42 11.9a434 434 0 01-65.4 4.5 414 414 0 01-62-4.3 155 155 0 01-44.4-12v-3c9.7 6.5 36 11.2 44.7 12.6a408 408 0 0061.7 4.3c26.9 0 48.5-2 65-4.5 15.7-2.2 38-8.1 42.4-12zm-107 68.8c-45.6-.2-84.7-12.4-93-14.4l6 9.4a249.8 249.8 0 0087.4 14.3c34.7-1 65-3.7 86.3-14.1l6.2-9.8c-14.5 6.9-64 14.6-93 14.6"/>
+    <path d="M344.9 297.3a143 143 0 01-2.8 4c-10 3.6-26 7.4-32.6 8.4a295.5 295.5 0 01-53.7 5c-40.4-.6-73.5-8.5-89-15.3l-1.3-2.1.2-.4 2.1.9a286.5 286.5 0 0088.2 14.5c18.8 0 37.5-2.1 52.6-4.8 23.2-4.7 32.6-8.2 35.5-9.8l.7-.4zm5.3-8.8a287.2 287.2 0 01-2 3.5c-5.4 2-20 6.2-41.3 9.2-14 1.9-22.7 3.8-50.6 4.3a347.4 347.4 0 01-94.2-14L161 289a390 390 0 0095.4 14c25.5-.5 36.4-2.4 50.3-4.3 24.8-3.8 37.3-8 41-9.1a2.9 2.9 0 000-.2l2.6-1z"/>
+    <path d="M350.8 237.6c.1 30-15.3 57-27.6 68.8a99.3 99.3 0 01-67.8 28.2c-30.3.5-58.8-19.2-66.5-27.9a101 101 0 01-27.5-67.4c1.8-32.8 14.7-55.6 33.3-71.3a99.6 99.6 0 0164.2-22.7 98.2 98.2 0 0171 35.6c12.5 15.2 18 31.7 20.9 56.7zM255.6 135a106 106 0 01106 105.2 105.6 105.6 0 11-211.4 0c-.1-58 47.3-105.2 105.4-105.2"/>
+    <path d="M255.9 134.5c58.2 0 105.6 47.4 105.6 105.6S314.1 345.7 256 345.7s-105.6-47.4-105.6-105.6c0-58.2 47.4-105.6 105.6-105.6zM152.6 240c0 56.8 46.7 103.3 103.3 103.3 56.6 0 103.3-46.5 103.3-103.3s-46.7-103.3-103.3-103.3S152.6 183.2 152.6 240z"/>
+    <path d="M256 143.3a97 97 0 0196.7 96.7 97.1 97.1 0 01-96.7 96.8c-53 0-96.7-43.6-96.7-96.8a97.1 97.1 0 0196.7-96.7zM161.6 240c0 52 42.6 94.4 94.4 94.4s94.4-42.5 94.4-94.4c0-52-42.6-94.4-94.4-94.4a94.8 94.8 0 00-94.4 94.4z"/>
+    <path d="M260.3 134h-9.1v212.3h9z"/>
+    <path d="M259.3 132.8h2.3v214.7h-2.2V132.8zm-9 0h2.4v214.7h-2.3V132.8z"/>
+    <path d="M361.6 244.2v-7.8l-6.4-6-36.3-9.6-52.2-5.3-63 3.2-44.8 10.6-9 6.7v7.9l22.9-10.3 54.4-8.5h52.3l38.4 4.2 26.6 6.4z"/>
+    <path d="M256 223.8c24.9 0 49 2.3 68.3 6 19.8 4 33.7 9 38.5 14.5v2.8c-5.8-7-24.5-12-39-15-19-3.6-43-6-67.9-6-26.1 0-50.5 2.6-69.3 6.2-15 3-35.1 9-37.6 14.8v-2.9c1.3-4 16.3-10 37.3-14.3 18.9-3.7 43.3-6.1 69.6-6.1zm0-9.1a383 383 0 0168.3 6c19.8 4 33.7 9 38.5 14.6v2.7c-5.8-6.9-24.5-12-39-14.9-19-3.7-43-6-67.9-6a376 376 0 00-69.2 6.2c-14.5 2.7-35.4 8.9-37.7 14.7v-2.8c1.4-4 16.6-10.3 37.3-14.3 19-3.7 43.3-6.2 69.7-6.2zm-.6-46.2c39.3-.2 73.6 5.5 89.3 13.5l5.7 10c-13.6-7.4-50.6-15-94.9-14-36.1.3-74.7 4-94 14.4l6.8-11.4c15.9-8.3 53.3-12.5 87.1-12.5"/>
+    <path d="M256 176.7a354 354 0 0161.3 4.3c16 3 31.3 7.4 33.5 9.8l1.7 3c-5.3-3.4-18.6-7.3-35.6-10.5s-38.7-4.3-61-4.2c-25.3-.1-45 1.2-61.8 4.2a108.9 108.9 0 00-33.3 10.3l1.7-3.1c6-3 15.3-6.7 31.1-9.6 17.5-3.2 37.4-4.1 62.4-4.2zm0-9c21.4-.2 42.6 1 59.1 4a96 96 0 0130.6 10l2.5 4c-4.2-4.7-20-9.2-34.1-11.6-16.4-2.9-36.7-4-58.1-4.2a361 361 0 00-59.5 4.4 97.3 97.3 0 00-29.6 9.1l2.2-3.3c5.8-3 15.2-5.8 27-8.1a357 357 0 0159.9-4.4zM308.4 284a276.4 276.4 0 00-52.5-4c-65.5.8-86.6 13.5-89.2 17.3l-5-8c16.8-12 52.4-18.8 94.6-18.2 21.9.4 40.8 1.9 56.6 5l-4.5 8"/>
+    <path d="M255.6 278.9c18.2.3 36 1 53.3 4.2l-1.2 2.2c-16-3-33.2-4-52-4-24.3-.2-48.7 2.1-70 8.2-6.7 1.9-17.8 6.2-19 9.8l-1.2-2c.4-2.2 7-6.6 19.6-10 24.4-7 47.2-8.3 70.5-8.4zm.8-9.2a327 327 0 0157.3 5l-1.3 2.3a299 299 0 00-56-4.9c-24.2 0-49.9 1.8-73.3 8.6-7.5 2.2-20.6 7-21 10.7l-1.2-2.2c.2-3.4 11.5-7.9 21.7-10.8 23.5-6.9 49.3-8.6 73.8-8.7z"/>
+    <path d="M349.4 290.5l-7.8 12.3-22.7-20.1-58.6-39.5-66.2-36.3-34.3-11.7 7.3-13.6 2.5-1.3 21.3 5.3 70.4 36.3 40.6 25.6L336 272l13.9 16z"/>
+    <path d="M158.6 195.5c6-4 50.2 15.6 96.6 43.6 46.1 28 90.3 59.6 86.3 65.5l-1.3 2.1-.6.5c.1-.1.8-1 0-3.1-2-6.5-33.4-31.5-85.3-62.9-50.7-30.1-92.9-48.3-97-43.1l1.3-2.6zM351 290.4c3.8-7.6-37.2-38.5-88.1-68.6-52-29.5-89.6-46.9-96.5-41.7L165 183c0 .1 0-.2.4-.5 1.2-1 3.3-1 4.2-1 11.8.2 45.5 15.7 92.8 42.8 20.8 12 87.6 55 87.3 67 0 1 .1 1.2-.3 1.8l1.7-2.6z"/>
+  </g>
+  <g transform="translate(0 26.7) scale(1.06667)">
+    <path fill="#fff" stroke="#000" stroke-width=".7" d="M180.6 211a58.7 58.7 0 0017.5 41.7 59 59 0 0041.8 17.6 59.4 59.4 0 0042-17.4 59 59 0 0017.4-41.8v-79.2l-118.7-.2V211z"/>
+    <path fill="red" stroke="#000" stroke-width=".5" d="M182.8 211.1a56.4 56.4 0 0016.8 40 57 57 0 0040.2 16.8 56.9 56.9 0 0040.2-16.6 56.4 56.4 0 0016.7-40v-77H183v76.8m91-53.7v48.9l-.1 5.1a33.2 33.2 0 01-10 24 34 34 0 01-24 10c-9.4 0-17.7-4-23.9-10.2a34 34 0 01-10-24v-54l68 .2z"/>
+    <g id="e">
+      <g id="d" fill="#ff0" stroke="#000" stroke-width=".5">
+        <path stroke="none" d="M190.2 154.4c.1-5.5 4-6.8 4-6.8.1 0 4.3 1.4 4.3 6.9h-8.3"/>
+        <path d="M186.8 147.7l-.7 6.3h4.2c0-5.2 4-6 4-6 .1 0 4 1.1 4.1 6h4.2l-.8-6.4h-15zm-1 6.4h17c.3 0 .6.3.6.7 0 .5-.3.8-.6.8h-17c-.3 0-.6-.3-.6-.8 0-.4.3-.7.7-.7z"/>
+        <path d="M192 154c0-3.3 2.3-4.2 2.3-4.2s2.3 1 2.3 4.2H192m-5.8-9h16.3c.3 0 .6.4.6.8 0 .3-.3.6-.6.6h-16.3c-.3 0-.6-.3-.6-.7 0-.3.3-.6.6-.6zm.4 1.5H202c.3 0 .6.3.6.7 0 .4-.3.7-.6.7h-15.5c-.4 0-.6-.3-.6-.7 0-.4.2-.7.6-.7zm5-10.6h1.2v.8h.9v-.8h1.3v.9h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.4c-.3 0-.6-.2-.6-.5v-2zm4.6 2.7l.3 6.4h-4.3l.3-6.5h3.7"/>
+        <path id="a" d="M191 141.6v3.4h-4v-3.4h4z"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#a"/>
+        <path id="b" d="M186.3 139h1.2v1h.9v-1h1.2v1h.9v-1h1.2v2c0 .4-.2.6-.5.6h-4.3a.6.6 0 01-.6-.6v-2z"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#b"/>
+        <path fill="#000" stroke="none" d="M193.9 140.6c0-.6.9-.6.9 0v1.6h-.9v-1.6"/>
+        <path id="c" fill="#000" stroke="none" d="M188.6 142.8c0-.6.8-.6.8 0v1.2h-.8v-1.2"/>
+        <use width="100%" height="100%" x="10.6" xlink:href="#c"/>
+      </g>
+      <use width="100%" height="100%" y="46.3" xlink:href="#d"/>
+      <use width="100%" height="100%" transform="rotate(-45.2 312.8 180)" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" x="45.7" xlink:href="#d"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 479.8 0)" xlink:href="#e"/>
+    <g id="f" fill="#fff">
+      <path fill="#039" d="M232.6 202.4a8.3 8.3 0 002.2 5.7 7.2 7.2 0 005.3 2.4c2.1 0 4-1 5.3-2.4a8.3 8.3 0 002.2-5.7v-10.8h-15v10.8"/>
+      <circle cx="236.1" cy="195.7" r="1.5"/>
+      <circle cx="244.4" cy="195.7" r="1.5"/>
+      <circle cx="240.2" cy="199.7" r="1.5"/>
+      <circle cx="236.1" cy="203.9" r="1.5"/>
+      <circle cx="244.4" cy="203.9" r="1.5"/>
+    </g>
+    <use width="100%" height="100%" y="-26" xlink:href="#f"/>
+    <use width="100%" height="100%" x="-20.8" xlink:href="#f"/>
+    <use width="100%" height="100%" x="20.8" xlink:href="#f"/>
+    <use width="100%" height="100%" y="25.8" xlink:href="#f"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pw.svg
new file mode 100644
index 0000000..8127a2c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/pw.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-pw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="pw-a">
+      <path fill-opacity=".7" d="M-70.3 0h640v480h-640z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#pw-a)" transform="translate(70.3)">
+    <path fill="#4aadd6" d="M-173.4 0h846.3v480h-846.3z"/>
+    <path fill="#ffde00" d="M335.6 232.1a135.9 130.1 0 11-271.7 0 135.9 130.1 0 11271.7 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/py.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/py.svg
new file mode 100644
index 0000000..1402520
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/py.svg
@@ -0,0 +1,157 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-py" viewBox="0 0 640 480">
+  <path fill="#0038a8" d="M0 319.7h640V480H0z"/>
+  <path fill="#fff" d="M0 160h640v160H0z"/>
+  <path fill="#d52b1e" d="M0 0h640v160H0z"/>
+  <g fill="none" stroke="#000" transform="translate(-116.4) scale(1.45455)">
+    <circle cx="300" cy="165" r="42.2" stroke-width="1.1"/>
+    <circle cx="300" cy="165" r="34.7" stroke-width=".5"/>
+    <circle cx="300" cy="165" r="26.6" stroke-width=".4"/>
+  </g>
+  <path d="M287.3 263.7l-7.1 4.2-2.2-3.7a6.2 6.2 0 01-.7-1.6 2 2 0 01.1-1.3c.2-.4.5-.7 1-1 .4-.2.7-.3 1.1-.3a2.3 2.3 0 011.1.2l.8.6v-1.3l.3-.5 1.5-2.3 1.4 2.5-1.4 2.4-.3.8.1.6.1.2 3-1.7zm-5.5.3l-.6-1-.4-.5a.7.7 0 00-.5-.2.8.8 0 00-.5.1l-.4.6c0 .2.1.5.4.9l.5 1zm-6.7-5.5l-2.2-6.5 1.7-.6 1.3 4.1 1.3-.4-1.3-3.8 1.6-.5 1.3 3.7 1.5-.5-1.4-4.2 1.8-.5 2.2 6.6zm-2.9-9.7l-.4-4.2c-.2-1 0-1.6.4-2.1.4-.6 1-.9 1.8-1 .8 0 1.5.1 2 .6.5.4.8 1.2 1 2.2l.1 1.4 3-.4.4 2.6zm3.3-3l-.1-.6c0-.5-.2-.8-.4-1a.8.8 0 00-.7-.2 1 1 0 00-.6.4c-.2.1-.2.5-.2 1l.1.7zm-3.5-12.5l.3-2.6 4.8.6a4.2 4.2 0 011.4.4c.4.2.8.4 1 .8.4.3.5.7.6 1 .2.6.2 1.2.1 1.9l-.2 1.3c-.1.5-.3.8-.5 1.1a3 3 0 01-1.8 1.3h-1.4l-4.9-.5.3-2.5 5 .5c.4 0 .8 0 1-.2.4-.2.5-.6.6-1a1.4 1.4 0 00-.3-1c-.2-.4-.6-.5-1-.6zm1-6l1.7-4.6c.2-.8.6-1.3 1.1-1.5a2 2 0 011.6-.2c.5.2.8.5 1 .9.2.3.3.6.3 1 .3-.5.7-.8 1.1-1a2 2 0 011.4 0 2.2 2.2 0 011.5 1.8v1l-.3 1-1.5 4.2zm4-1.4l.4-1.1c0-.4.1-.7 0-.8 0-.2-.2-.4-.4-.5a.7.7 0 00-.6 0c-.2.2-.4.4-.5.8l-.4 1zm3 1l.5-1.2c.1-.4.2-.7 0-1a.8.8 0 00-.4-.4.7.7 0 00-.7 0l-.5.9-.4 1.2zm-3-9.6l1.3-2.2 5.4 3.2 2-3.4 1.8 1-3.4 5.6zm5-7.6l1.6-2 6.4 5.3-1.6 2zm11.1-4.3l2.2-1c.3.6.4 1.2.5 1.7a3.1 3.1 0 01-.3 1.5 4.5 4.5 0 01-1.2 1.5 4 4 0 01-2 1.1 3.5 3.5 0 01-2 0 4.7 4.7 0 01-2-1.6c-1-1-1.4-2-1.3-3.1a4.2 4.2 0 011.6-2.9 4.2 4.2 0 012.3-1c.7-.1 1.5 0 2.3.5l-1.4 1.9a1.9 1.9 0 00-.6-.3 1.5 1.5 0 00-.7 0 1.5 1.5 0 00-.6.4 1.5 1.5 0 00-.6 1.4c0 .4.4.9.8 1.4.6.7 1.1 1.1 1.6 1.2.4 0 .8 0 1.2-.4.4-.3.6-.6.6-1s-.1-.8-.4-1.3zm8.8-3.2l-2.5 1.4.3 1.4-2.3 1.2-1.2-8.7 2.5-1.3 6.6 5.8-2.4 1.3zm-1.3-1.3l-2.2-2.2.6 3zm7.8-8.5l3.8-.6a4.6 4.6 0 011.8 0c.5.1 1 .3 1.3.7s.7.7.9 1.2c.2.4.4 1 .4 1.5.2.9.2 1.6.1 2a3.4 3.4 0 01-.6 1.4 2.7 2.7 0 01-1 .9 6 6 0 01-1.5.5l-3.7.6zm2.9 1.4l.8 4.5.6-.1c.5-.1.9-.2 1-.4.3-.1.4-.4.5-.7v-1.4c-.2-.9-.5-1.4-.8-1.7-.3-.3-.8-.4-1.5-.3zm7.8-2.8l6.8.3v1.8l-4.3-.2-.1 1.3 4 .2-.1 1.7-4-.2v1.6l4.4.2-.1 1.9-7-.3zm10 .8l2.4.6-1.5 6 4 1-.6 2-6.3-1.6zm13.2 4.4l3.7 2.2c.8.4 1.3 1 1.4 1.6.2.6 0 1.3-.3 2a2.5 2.5 0 01-1.7 1.3c-.6.1-1.4 0-2.3-.6l-1.2-.7-1.6 2.6-2.2-1.3zm.4 4.4l.6.3 1 .3a.8.8 0 00.6-.4 1 1 0 000-.7c0-.3-.2-.5-.6-.8l-.6-.3zm7.2 9.6l-2.1-2-1.2.7-2-1.7 8-4 2 2-3.4 8.1-2-1.8zm.8-1.7l1.4-2.8-2.7 1.6zm1 5.5l6.9-4.7 2.3 3.5 1 1.7-.1 1.2a2.3 2.3 0 01-1 1.1c-.3.3-.7.4-1 .4a2.3 2.3 0 01-1.2-.2c-.2 0-.5-.3-.8-.5l.2.7-.2.6a3.3 3.3 0 01-.2.6l-1.3 2.3-1.6-2.3 1.3-2.6.3-.7a1 1 0 00-.2-.7l-.1-.2-2.8 2zm5.5-.6l.7.9.4.4c.2.2.3.2.5.2a.8.8 0 00.5-.1.8.8 0 00.3-.6c0-.2 0-.5-.3-.9l-.7-.9zm2.6 12.4l-1-2.8-1.5.2-1-2.5 8.9-.1 1 2.6-6.5 6-1-2.6zm1.5-1.2l2.4-2-3.1.3zm2.1 9l1.7-.2.6 3.9-3.5.5a8 8 0 01-1.3-1.8 6.8 6.8 0 01-.6-2 5 5 0 01.1-2.5 4 4 0 011.3-1.6 4.9 4.9 0 012.2-.9 5 5 0 012.4.2 3.6 3.6 0 011.7 1.4c.4.6.6 1.3.8 2.2v2a2.7 2.7 0 01-.6 1.3c-.3.4-.7.6-1.2.9l-.8-2.4c.3-.1.5-.3.7-.6s.1-.6 0-1a1.7 1.7 0 00-.7-1.2c-.4-.3-1-.4-2-.2a3 3 0 00-1.7.7c-.4.4-.5 1-.4 1.5 0 .3.1.6.3.8l.5.8h.8zm5.4 12l-.2 2.6-5-.4a4.2 4.2 0 01-1.3-.4 3 3 0 01-1-.8 3 3 0 01-.6-1.1 5.1 5.1 0 01-.2-1.8l.2-1.3.5-1.2a3 3 0 01.8-.8 2.6 2.6 0 011-.4 4.9 4.9 0 011.4-.2l5 .5-.3 2.5-5-.4c-.5 0-.9 0-1.1.3a1.4 1.4 0 00-.5 1c0 .4 0 .8.3 1 .2.3.5.5 1 .5zm-9.1 8.8l.9-2.8-1.2-.8.8-2.5 7 5.6-1 2.6-8.8.4.9-2.5zm1.9 0l3 .1-2.5-1.8zm3 6.8l-1.5 2.4h-3.3l1.5 2.9-1.4 2.4-2.5-5.2-3-1.8 1.4-2.2 3 1.8z"/>
+  <g fill="#009b3a" stroke="#000" stroke-width=".1">
+    <path d="M328.1 211.3s23.4 10.1 19.3 30.9c-4 20.8-17 20.6-22.2 23-5 2.2-8.6 5.5-10.6 5-2-.4-4.7-2-4.7-2s-.2 3.5 3.9 4c4.1.7 9.5-5.3 12-6 2.6-.6 18.5-2.4 22.4-23.5 4.5-22.6-20-30.7-20-31.4z"/>
+    <path d="M339.9 215.8a3.2.8 75.1 01-1.5 0 3.2.8 75.1 111.5 0z"/>
+    <path d="M339.1 216a3.3.7 63.3 11-1.4.5 3.3.7 63.3 011.4-.5zm-2.3 1.5a3.1.8 17 01-.2 1.6 3.1.8 17 01.2-1.6z"/>
+    <path d="M337.1 216.7a3.3.7 34.2 11-.7 1.3 3.3.7 34.2 11.7-1.3z"/>
+    <path d="M338.1 216.3a3.3.7 46.2 11-1 1 3.3.7 46.2 011-1z"/>
+    <path d="M339.7 219.2l-1 .6c-.3 0-.6-.3-1.2 0s-1 .9-1.1 1.2c-.1.3.2.5.9.1.7-.3.9-.9 1.2-1.1l1.3-.7.8-1.3c.3-.4 1.2-1 1.6-1.8.3-.6.2-1.1-.2-.9a3 3 0 00-1.2 1.3c-.2.4 0 1-.3 1.4l-.8 1.2zm7.3 2.4a1 4.8-1.6 11-2.2-.5 1 4.8-1.6 112.2.5z"/>
+    <path d="M345.8 221.5a5 1 77.5 11-2.2.1 5 1 77.5 112.1 0z"/>
+    <path d="M342 222.7a4.7 1.1 35 11-.7 2.2 4.7 1.1 35 11.7-2.2z"/>
+    <path d="M342.8 221.6a5 1 50.9 01-1.4 1.6 5 1 50.9 111.4-1.5z"/>
+    <path d="M344.3 221.5a5.1 1 61.8 11-1.8 1 5.1 1 61.8 111.8-1z"/>
+    <path d="M345.6 226.4l-1.8.4c-.3 0-.6-.7-1.5-.5-.9.2-1.7.8-2 1.2-.2.4.1.8 1.2.6 1.2-.2 1.6-1 2.2-1 .5-.2 1.4-.4 2-.4.2-.4 1-1.2 1.5-1.6.5-.5 2-1 2.7-1.8.7-.8.7-1.6 0-1.5a4.8 4.8 0 00-2 1.3c-.5.6-.4 1.5-.9 2l-1.4 1.3zm5.1 4.9a1 4.8 8.7 11-2-1 1 4.8 8.7 112 1z"/>
+    <path d="M349.6 231a1 5-2 11-2-.3 1 5-2 112 .3z"/>
+    <path d="M345.7 231.4a4.7 1.1 46 11-1 2 4.7 1.1 46 111-2z"/>
+    <path d="M346.7 230.5a5 1 61.8 11-1.7 1.3 5 1 61.8 111.7-1.3z"/>
+    <path d="M348.1 230.7a5.1 1 72.5 11-1.9.7 5.1 1 72.5 112-.7z"/>
+    <path d="M348.5 235.8h-1.7c-.3 0-.5-.8-1.4-.8a3.3 3.3 0 00-2.1.8c-.4.4-.1.8 1 .8s1.7-.5 2.3-.6h2l1.8-1.2c.6-.4 2.1-.6 3-1.3.7-.6.9-1.4.3-1.4a5 5 0 00-2.3.9c-.5.4-.6 1.3-1.2 1.7-.4.2-1.6 1.1-1.7 1m2.5 6.4a1 4.8 31.3 01-1.4-1.7 1 4.8 31.3 011.4 1.7"/>
+    <path d="M350.1 241.3a1 5 20.6 01-1.8-1.1 1 5 20.6 011.8 1.1m-3.7-1.2a4.8 1 70 01-1.8 1.5 4.8 1 70 011.8-1.5"/>
+    <path d="M347.6 239.7a1 5.1-4.9 01-2 .5 1 5.1-4.9 112-.5"/>
+    <path d="M349 240.4a1 5.2 5.5 11-2-.1 1 5.2 5.5 112 .1"/>
+    <path d="M347.3 245.3s-1.4-.5-1.6-.7c-.3-.2-.1-.8-1-1.3a3.1 3.1 0 00-2.2 0c-.5 0-.4.6.6 1 1 .6 1.8.2 2.3.4l1.8.9c.5-.2 1.6-.3 2.2-.4.6-.1 2.1.4 3.2 0 .9-.3 1.3-1 .7-1.2a4.5 4.5 0 00-2.3 0c-.7.1-1.1 1-1.8 1-.5 0-1.9.4-2 .3m1 7.7a1.3 5.5 48.5 11-1.1-2.4 1.3 5.5 48.5 111 2.4"/>
+    <path d="M347.3 251.9a1.2 5.8 37.5 11-1.5-2 1.2 5.8 37.5 111.5 2"/>
+    <path d="M343.7 249.2a1.3 5.5-3.5 11-2.4 1 1.3 5.5-3.5 112.4-1"/>
+    <path d="M345.1 249.2a1.2 5.9 11.6 01-2.3-.2 1.2 5.9 11.6 112.3.1"/>
+    <path d="M346.3 250.4a1.2 6 22.1 11-2.1-.8 1.2 6 22.1 112.1.8"/>
+    <path d="M343 255.3a16.3 16.3 0 01-1.6-1.4c-.2-.3.1-1-.7-1.8s-1.8-1-2.4-1c-.6.1-.6.7.3 1.6 1 1 2 .8 2.4 1.2.6.4 1.4 1.1 1.7 1.6l2.6.4c.7 0 2.2 1.1 3.5 1.1 1 0 1.8-.5 1.2-1a5.3 5.3 0 00-2.6-1c-.8 0-1.5.8-2.2.6l-2.3-.3m-2.3 7.3a1.4 6 79.8 11.3-2.9 1.4 6 79.8 11-.3 2.9"/>
+    <path d="M340.5 261a1.3 6.4 68.5 01-.5-2.6 1.3 6.4 68.5 01.5 2.7"/>
+    <path d="M338.4 256.4a1.4 6 26.2 01-2.8-.5 1.4 6 26.2 112.8.5"/>
+    <path d="M339.9 257.2a1.3 6.5 41.8 01-2.3-1.5 1.3 6.5 41.8 012.3 1.5"/>
+    <path d="M340.3 259.1a1.3 6.5 52.7 11-1.6-2 1.3 6.5 52.7 011.6 2"/>
+    <path d="M334.4 261.7a18.1 18.1 0 01-.7-2.2c-.1-.4.6-.8.3-2a4.3 4.3 0 00-1.9-2.3c-.5-.3-.9.2-.5 1.6.4 1.4 1.4 1.9 1.7 2.6l.8 2.4 2.2 1.9c.6.5 1.5 2.4 2.7 3.1 1 .7 2 .5 1.8-.2a6.2 6.2 0 00-2-2.4c-.7-.6-1.8-.3-2.5-.8-.4-.5-2-1.6-2-1.7"/>
+    <path d="M330.8 268a1.8 6.1 89 010-3.5 1.8 6.1 89 010 3.5"/>
+    <path d="M330 262.5a1.7 6.3 37.6 01-2.7-2.2 1.7 6.3 37.6 112.6 2.2"/>
+    <path d="M330.8 265.3a1.7 6.2 66.5 01-1.2-3.3 1.7 6.2 66.5 011.2 3.3m1.7-53.4a3.8.8 41.1 01-1.5.8 3.8.8 41.1 111.5-.8m-1.9 1.5a3.9.8 8.2 01.3 1.6 3.9.8 8.2 11-.3-1.6"/>
+    <path d="M331.4 212.4a4 .7 26.8 11-.8 1.3 4 .7 26.8 01.8-1.3M303.7 262s5.1 1.1 9.6 2.7c4.5 1.7 11.3 7.2 13.1 7.6 2 0 4.9-.7 6-3.6-3.2.8-5 2.1-8 .5-1.1-.4-4.6-3.6-8.5-5.3-3.8-1.7-11.5-3.6-11.5-3.6l-.7 1.7m5.5-46.5l5.9-3.1-6.5 1.7-.8 1.1 1.4.3"/>
+    <path d="M314.8 217c-2.3-.5-5.8-1.3-8-1.4 1.5-1.7 3.6-4.7 5-6.4-1 1.7-2.3 4-2.8 5.5 1.5.9 4 1.6 5.8 2.2"/>
+    <path d="M308.1 215.9a314.4 314.4 0 015.3-4.1l-6.1 2.7-.6 1.3h1.4"/>
+    <path d="M313.7 216.9c-2.3-.5-5.8-1.3-8-1.5 1.4-1.7 3.5-4.7 4.8-6.6-.8 1.8-2.2 4.1-2.7 5.8 1.6.9 4.1 1.6 6 2.3"/>
+    <path d="M307.3 216.2l6.1-2.6-6.6 1.1-.9 1 1.3.5"/>
+    <path d="M313 217c-2.3-.3-6-.7-8.2-.6 1.3-2 3-5.3 4.1-7.3-.6 1.9-1.7 4.4-2 6.1 1.7.8 4.3 1.2 6.1 1.7"/>
+    <path d="M306.6 216.2l4.2-5-5.3 3.9-.3 1.3 1.4-.2"/>
+    <path d="M313 217.3c-2.5 0-6.4-.3-8.8 0 1.2-2.3 2.7-6 3.6-8.3-.4 2.1-1.3 5-1.4 6.9 1.8.6 4.6 1 6.6 1.4"/>
+    <path d="M305.8 217.4l5-4.9-6.1 3.5-.4 1.4h1.5"/>
+    <path d="M311.9 217.4c-2.7 0-6.8-.1-9.5.2 1.8-2.5 4.2-6.6 5.6-9.1-1 2.3-2.4 5.4-3 7.5 1.9.7 4.8 1 6.9 1.4"/>
+    <path d="M304 217.8l6.6-5.5-7.4 3.9-.8 1.6h1.6"/>
+    <path d="M311 217.6c-2.7.4-6.9.8-9.4 1.5 1.3-2.7 3.1-7 4.2-9.7-.6 2.4-1.7 5.6-2 7.8 2 .4 5 .3 7.1.4"/>
+    <path d="M303.2 218.9l5-7-6.3 5.7-.3 1.7 1.6-.4"/>
+    <path d="M309.4 218.4c-2.6.3-6.8.5-9.4 1 1.5-2.6 3.5-6.8 4.8-9.4-.8 2.3-2 5.5-2.4 7.7 2 .5 5 .5 7 .7"/>
+    <path d="M302.3 219.6l6.4-5.5-7.3 3.9-.7 1.6h1.6"/>
+    <path d="M308.7 218.7c-2.7.6-6.9 1.3-9.4 2.1 1.2-2.7 2.8-7.1 3.8-9.8-.5 2.4-1.4 5.6-1.6 7.8 2 .3 5 0 7.2-.1"/>
+    <path d="M301.2 220l4-7.7-5.4 6.6-.1 1.7 1.5-.7"/>
+    <path d="M308.7 219.1c-3 .8-7.4 1.8-10 2.8 1-3.1 2.1-8 2.9-11.1-.3 2.7-.9 6.3-.8 8.8 2.3.2 5.5-.3 7.8-.5"/>
+    <path d="M300.4 221.7l5.2-7.6-6.6 6.1-.3 2 1.7-.5"/>
+    <path d="M307.5 220c-2.8.9-7.2 2.1-9.8 3.3.8-3.2 1.8-8.1 2.4-11.2-.1 2.7-.5 6.3-.3 8.7 2.2.1 5.4-.6 7.7-.8"/>
+    <path d="M299.4 222.8l3.9-8.4-5.6 7.2v2l1.7-.8"/>
+    <path d="M306.4 221.2c-2.8.6-7.3 1.5-10 2.4 1.1-3 2.5-8 3.4-11-.4 2.7-1.1 6.4-1.1 8.7 2.2.3 5.4-.1 7.7-.2"/>
+    <path d="M298.4 223.6l6.4-6.6-7.5 4.9-.6 1.8 1.7-.1"/>
+    <path d="M305.2 222.3c-2.9.4-7.3.8-10 1.5 1.3-3 3-7.8 4-10.8-.6 2.7-1.5 6.3-1.7 8.7 2.2.5 5.4.4 7.7.6"/>
+    <path d="M297.2 223l4.3-8.3-5.9 7v1.9l1.6-.7"/>
+    <path d="M305.5 221.3c-3 1.3-8 3-10.9 4.6 1-3.7 2-9.5 2.6-13.1 0 3.1-.5 7.4-.3 10.1 2.5 0 6-1.1 8.6-1.6"/>
+    <path d="M296.6 225.4l5.2-9.4-6.9 8-.2 2.2 1.9-.8"/>
+    <path d="M304.3 222.5c-3 1.4-7.8 3.4-10.6 5.1.8-3.6 1.5-9.5 2-13 0 3-.2 7.3.1 10 2.5-.3 6-1.5 8.5-2.1"/>
+    <path d="M295.5 226.8l3.8-10.1-5.7 9 .2 2.3 1.7-1.2"/>
+    <path d="M303 223.3c-3 1.5-7.8 3.5-10.6 5.3.7-3.7 1.4-9.5 1.9-13.1 0 3-.2 7.3.2 10 2.5-.3 6-1.6 8.5-2.2"/>
+    <path d="M294.7 228l5.8-8.9-7.4 7.3-.3 2.2 1.9-.6"/>
+    <path d="M302.7 222.8c-2.7 2.2-7 5.4-9.4 7.8 0-3.8-.5-9.5-.8-13 .6 2.9 1.3 7 2.3 9.5 2.4-.9 5.5-3 8-4.2"/>
+    <path d="M295 228.5l.6-10.7-2.8 10.4.8 2 1.4-1.7"/>
+    <path d="M302 223.8c-2.8 2.2-7 5.3-9.5 7.7 0-3.7-.5-9.5-.8-13 .7 3 1.3 7 2.3 9.5 2.4-.8 5.5-3 8-4.2"/>
+    <path d="M294.3 230.3l2.7-10.5-4.7 9.6.3 2.2 1.7-1.3"/>
+    <path d="M301.6 224c-2.5 2.6-6.6 6.4-8.9 9-.4-3.7-1.5-9.6-2.2-13.2 1 3 2.1 7.1 3.4 9.5 2.3-1.1 5.4-3.6 7.7-5.2"/>
+    <path d="M294.3 231.6l.5-11.1-2.7 10.8.8 2 1.4-1.7"/>
+    <path d="M300.8 226c-2.7 2.2-7 5.5-9.6 8 0-3.8-.7-9.8-1-13.5.7 3 1.5 7.3 2.5 9.9 2.5-1 5.7-3.1 8.1-4.5"/>
+    <path d="M293.5 232.9l3.8-10.5-5.8 9.3.2 2.3 1.8-1.1"/>
+    <path d="M300.8 226c-2.5 2.5-6.3 6.4-8.5 9.1-.4-3.8-1.5-9.8-2.1-13.4 1 3 2 7.2 3.2 9.6 2.3-1.2 5.1-3.7 7.4-5.3"/>
+    <path d="M293.6 233.4l-.4-11-1.8 11 1 1.9 1.2-1.9"/>
+    <path d="M299.6 226.8c-2.4 2.6-6.1 6.5-8.2 9.3-.5-4-1.8-9.8-2.5-13.5 1 3 2.3 7.2 3.5 9.6 2.2-1.2 5-3.8 7.2-5.4"/>
+    <path d="M293 234.5l1.2-11.2-3.3 10.6.7 2.2 1.4-1.6"/>
+    <path d="M299 227.2c-2 2.9-5.5 7-7.4 10-.8-3.8-2.5-9.5-3.5-13 1.3 2.8 2.8 6.8 4.2 9.1 2.1-1.4 4.7-4.2 6.8-6"/>
+    <path d="M293 235.6l-.8-11.3-1.4 11.2 1 2 1.1-2"/>
+    <path d="M298.9 227.9c-2 3-5.3 7.3-7 10.4-1-3.8-3-9.5-4.2-13 1.4 2.8 3.1 6.8 4.7 9 2-1.5 4.5-4.5 6.5-6.4"/>
+    <path d="M293.6 236.6l1.2-11.3-3.2 10.6.6 2.3 1.4-1.6"/>
+    <path d="M298.4 229c-1.7 3.1-4.5 8-6 11.3-1.3-3.6-3.8-9-5.3-12.4 1.7 2.6 3.7 6.3 5.5 8.4 1.9-1.8 4-5.2 5.8-7.4"/>
+    <path d="M293.3 237.6l-3.2-10.8 1 11.3 1.5 1.6.6-2.1"/>
+    <path d="M298.4 230.2c-1.8 3.2-4.8 8-6.3 11.3-1.3-3.6-3.8-9-5.4-12.3 1.7 2.6 3.8 6.3 5.6 8.3 2-1.8 4.2-5.1 6-7.3"/>
+    <path d="M293.4 239.6l-1.2-11.3-1 11.3 1.1 2 1.1-2"/>
+    <path d="M298.6 231.2c-1.9 3.1-5 7.9-6.5 11.1-1.3-3.6-3.7-9-5.2-12.4 1.7 2.6 3.7 6.4 5.5 8.4 2-1.7 4.3-5 6.2-7.1"/>
+    <path d="M293.3 240.5l-2.1-11-.1 11.2 1.3 1.8.9-2"/>
+    <path d="M297.8 232.8c-2 3-5.3 7.5-7 10.7-1.1-3.7-3.3-9.4-4.6-12.8 1.5 2.7 3.4 6.6 5 8.8 2.1-1.6 4.6-4.7 6.6-6.7"/>
+    <path d="M292.3 241.7l1-11.3-3.1 10.7.7 2.2 1.4-1.6"/>
+    <path d="M297.9 233c-1.7 3.3-4.6 8.3-6 11.6-1.4-3.5-4-8.8-5.7-12 1.8 2.4 4 6 5.8 8 2-1.9 4-5.3 5.9-7.5"/>
+    <path d="M292 242.7l-3.5-10.6 1.3 11.2 1.5 1.6.6-2.2"/>
+    <path d="M297.4 233.9c-1.2 3.6-3.2 9-4 12.7-2-3.2-5.5-7.8-7.6-10.7 2.1 2.1 4.9 5.2 7 6.7 1.6-2.3 3.2-6 4.6-8.7"/>
+    <path d="M295 243.5l-3.7-10.4 1.6 11.2 1.5 1.4.6-2.2"/>
+    <path d="M297.4 235c-1.2 3.6-3.2 9.1-4 12.7-2-3.2-5.4-7.7-7.6-10.5 2.1 2 4.9 5 7 6.6 1.6-2.3 3.2-6.1 4.6-8.8"/>
+    <path d="M295 245.3l-4.8-9.7 2.8 10.8 1.7 1.2.4-2.3"/>
+    <path d="M297 235.9c-.7 3.7-2 9.5-2.5 13.2-2.3-2.9-6.3-7-8.7-9.4 2.3 1.7 5.4 4.4 7.7 5.5 1.3-2.5 2.4-6.5 3.5-9.3"/>
+    <path d="M295.4 246.8l-2.6-10.9.4 11.3 1.4 1.7.8-2"/>
+    <path d="M297 237c-.4 3.9-1.2 9.8-1.2 13.5-2.6-2.5-6.9-6-9.5-8.1 2.4 1.4 5.7 3.6 8.1 4.4 1-2.6 1.8-6.8 2.6-9.7"/>
+    <path d="M295.5 247.6l-6.9-7.8 5.2 9.5 2 .6-.3-2.3"/>
+    <path d="M297.2 238.4c-.4 3.8-1.2 9.7-1.3 13.4-2.6-2.5-6.9-6-9.5-8.2 2.5 1.4 5.8 3.7 8.1 4.5 1.1-2.6 1.8-6.8 2.7-9.7"/>
+    <path d="M296.3 249.4L291 240l3.3 10.7 1.7 1.1.3-2.3"/>
+    <path d="M297.5 240c-.3 3.8-.8 9.7-.8 13.5a117 117 0 00-9.8-7.6c2.6 1.2 6 3.3 8.3 4 1-2.7 1.6-7 2.3-10"/>
+    <path d="M297 251.2l-6.6-8.3 4.8 9.8 1.8.8v-2.3"/>
+    <path d="M297.6 241.8c-.3 3.8-.8 9.7-.7 13.5-2.7-2.4-7.1-5.6-9.9-7.6 2.6 1.3 6 3.3 8.4 4 1-2.7 1.5-7 2.2-10"/>
+    <path d="M297.5 252.6l-4.5-10 2.5 11 1.6 1.3.4-2.3"/>
+    <path d="M297.7 242.9c.2 3.9.2 9.8.6 13.6a134 134 0 00-10.4-6.2c2.6.9 6.1 2.4 8.6 2.8.7-2.9.8-7.1 1.2-10.2"/>
+    <path d="M298.3 252.2l-8.3-5.7 7 7.8 2 .1-.7-2.2"/>
+    <path d="M298 243.3c.3 3.9.7 9.8 1.3 13.5-3-1.9-7.8-4.3-10.8-5.8 2.7.8 6.3 2.2 8.8 2.5.5-2.9.4-7.1.7-10.2"/>
+    <path d="M299.3 254.3l-7-8 5.3 9.6 1.9.7-.3-2.3"/>
+    <path d="M298.6 244.8c.5 3.8 1 9.7 1.9 13.4-3-1.7-8-3.8-11-5.1 2.7.6 6.4 1.8 8.8 2 .4-3 .2-7.2.3-10.3"/>
+    <path d="M300.6 255.7l-8.3-5.9 7 8 2 .1-.7-2.2"/>
+    <path d="M298.9 246.4c.7 3.8 1.7 9.7 2.7 13.3-3.1-1.5-8.2-3.1-11.3-4.1 2.8.3 6.5 1.2 9 1 .2-2.9-.3-7-.4-10.2"/>
+    <path d="M301.6 256.9l-7-8.2 5.2 9.7 2 .8-.2-2.3"/>
+    <path d="M299.3 247.4c1.1 3.7 2.6 9.5 4 13-3.3-1-8.4-2-11.6-2.6 2.8 0 6.5.3 9-.1 0-3-1-7.1-1.4-10.2"/>
+    <path d="M302 256.9l-9.7-2 9.1 4.5 1.9-.7-1.4-1.8"/>
+    <path d="M300 248.6c1 3.7 2.5 9.4 3.8 12.9-3.2-1-8.3-2-11.5-2.6 2.8 0 6.5.3 9 0 0-3-1-7.2-1.3-10.3"/>
+    <path d="M303.5 257.9l-9.2-4.5 8.2 6.7 2-.2-1-2"/>
+    <path d="M299.5 249.2c1.8 3.4 4.5 8.7 6.5 11.7-3.4-.2-8.6 0-11.8 0 2.7-.5 6.4-1 8.7-2-.7-2.9-2.4-6.7-3.4-9.7"/>
+    <path d="M305 258.9l-9.6-2.6 9 5 1.8-.5-1.3-2"/>
+    <path d="M300.4 250.7c1.9 3.3 4.6 8.6 6.7 11.6-3.4-.2-8.6 0-11.8.2 2.6-.7 6.4-1.2 8.6-2.2-.6-2.9-2.4-6.7-3.4-9.6"/>
+    <path d="M306.1 259.7l-8.9-5.3 7.8 7.4h2l-.9-2.1"/>
+    <path d="M301.2 251.5c2.1 3.1 5.3 8 7.6 10.9a90 90 0 00-11.6 1.7c2.6-1 6.2-2 8.4-3.3-1-2.8-3.1-6.5-4.4-9.3"/>
+    <path d="M306.8 260.5l-9.6-.3 9.5 2.9 1.7-1.1-1.6-1.5m5.6-46.6l6.9-1.1-6.9.1-1.2.6 1.2.4"/>
+    <path d="M316.2 215.4c-2-.6-5-1.6-7.1-2l7.4-3.5c-1.5 1-3.8 2.2-5 3.2 1.2.8 3.3 1.6 4.7 2.3"/>
+    <path d="M312 214.1l6.8-1.8-7 .9-1 .7 1.3.2"/>
+    <path d="M316.5 215.9c-2.4-.3-6-.7-8.3-.7 1.8-1.6 4.2-4.1 5.7-5.7-1 1.5-2.6 3.4-3.3 4.8 1.6.7 4.1 1.1 5.9 1.6"/>
+    <path d="M309.6 214.6l7-.8-6.8-.2-1.3.6 1 .4"/>
+    <path d="M314.7 216.1l-7.5-1.3 6.9-3.8c-1.4 1-3.4 2.4-4.4 3.4 1.3.6 3.5 1.2 5 1.7"/>
+    <path d="M309 214.6l6.1-2.7-6.7 1.8-.8.8h1.4"/>
+    <path d="M314.5 216.9c-1.7-.7-4.5-2-6.2-2.5l4.4-4.8c-.8 1.3-2 3-2.6 4.4 1.2 1 3 2 4.4 2.9"/>
+    <path d="M309.3 215l4.8-2-5.2.6-.6 1 1 .4m-4 44.6h-9.8l10 2.5 1.6-1-1.8-1.5"/>
+    <path d="M307.1 260.2l-10-2.3 9.6 4.7 2-.6-1.6-1.8"/>
+    <path d="M308.8 260.9l-10-.5 10 3 1.7-1-1.7-1.5"/>
+    <path d="M302.5 253.9c2.5 2.8 6.4 7.4 9.1 9.9-3.3.5-8.3 1.8-11.4 2.7 2.4-1.2 6-2.6 8-4-1.4-2.6-4-6-5.7-8.6"/>
+    <path d="M310.1 261.4l-10-3.3 9.4 5.6 2-.4-1.4-2"/>
+    <path d="M303.4 254.5c2.8 2.6 7 6.7 10 9-3.2.9-8 2.8-11 4 2.3-1.4 5.6-3.2 7.4-5-1.6-2.4-4.5-5.5-6.4-8"/>
+    <path d="M311 262l-9.5 1.9 10 .6 1.4-1.3-2-1.2"/>
+    <path d="M309 261.4l-9.8.8 10.1 1.7 1.6-1.2-2-1.3"/>
+    <path d="M310.8 262l-10.2-1.7 10 4 1.8-.7-1.6-1.7z"/>
+    <path d="M312.5 262.5l-10 .2 10.2 2.3 1.6-1.1-1.8-1.4z"/>
+    <path d="M305.7 256c2.8 2.6 7 6.8 9.9 9.2-3.3.7-8.3 2.4-11.3 3.4 2.4-1.3 5.8-2.9 7.7-4.5-1.6-2.5-4.4-5.7-6.3-8.2z"/>
+    <path d="M313.9 262.9l-10.2-2.6 9.8 5 1.9-.6-1.5-1.8z"/>
+    <path d="M306.6 256.5c3 2.4 7.6 6.2 10.7 8.2-3.2 1.1-7.8 3.5-10.6 4.9 2.2-1.7 5.3-3.7 7-5.5-1.8-2.4-5-5.3-7-7.6z"/>
+    <path d="M314.8 263.4l-9.3 2.6h10l1.3-1.5-2-1z"/>
+  </g>
+  <path fill="#fedf00" stroke="#000" stroke-width=".4" d="M327.6 249.5l-7.6-5.3-7.6 5.3 2.9-8.4-6.7-5.2h8.6l2.8-8.4 2.8 8.4h8.6l-6.7 5.2 2.9 8.4z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/qa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/qa.svg
new file mode 100644
index 0000000..0f93a9d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/qa.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-qa" viewBox="0 0 640 480">
+  <path fill="#8d1b3d" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0v480h158.4l97.8-26.7-97.8-26.6 97.7-26.7-97.7-26.7 97.7-26.6-97.7-26.7 97.8-26.7-97.8-26.6 97.7-26.7-97.7-26.7 97.7-26.6-97.7-26.7 97.8-26.7-97.8-26.6L256.1 80l-97.7-26.7 97.8-26.6L158.3 0H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/re.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/re.svg
new file mode 100644
index 0000000..827103b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/re.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-re" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ro.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ro.svg
new file mode 100644
index 0000000..d43c1e2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ro.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ro" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#00319c" d="M0 0h213.3v480H0z"/>
+    <path fill="#ffde00" d="M213.3 0h213.4v480H213.3z"/>
+    <path fill="#de2110" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rs.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rs.svg
new file mode 100644
index 0000000..6469365
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rs.svg
@@ -0,0 +1,292 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-rs" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="rs-a">
+      <path fill-rule="evenodd" d="M60 0h1200v900H60z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#rs-a)" transform="translate(-32) scale(.53333)">
+    <path fill="#fff" d="M0 0h1350v900H0z"/>
+    <path fill="#0c4076" d="M0 0h1350v600H0z"/>
+    <path fill="#c6363c" d="M0 0h1350v300H0z"/>
+    <g transform="matrix(1 0 0 1.00437 0 -.3)">
+      <path fill="#21231e" d="M473.4 259.4v-.2h1v.2l-.5.5-.6-.6zm1 0v.5h-.5l.4-.6zm-93 5.2l-1 .2.3-.6 4.2-.2 4-.3 4-.2 3.8-.3 4-.2 3.6-.3 3.7-.2 3.7-.2 3.5-.2h3.4l3.3-.3 3.2-.2 3.2-.2 3-.2h3l3-.2 3-.2 2.7-.2h2.8l2.7-.2 2.5-.2h2.5l2.4-.3h2.2l2.2-.2h2.2l2-.2h2l2-.2h5.3v1h-5.5l-1.8.2h-2l-2 .2h-2.2l-2.2.2-2.4.2h-2.4l-2.5.2-2.5.2H446l-2.8.3h-2.8l-3 .3-2.8.2h-3l-3 .3-3.3.2-3.3.2-3.3.2h-3.5l-3.5.3-3.6.2-3.5.3-3.8.2-3.8.2-4 .3-4 .2-4 .3-4.2.2.5-.6zm-1 .2l-.3-.5h.7l-.4.5zm6.4 31l-6.5-31 1-.2 6.5 31-.5.7-.5-.4zm.5.5h-.4l-.2-.4.5.3zm95-4l-.2 1h.2-5.8l-3 .2h-3l-2.8.2h-3l-3 .2h-6l-3 .2h-3l-3 .2h-3l-3 .2h-3.2l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-3 .2h-3l-2.8.2h-5.8l-2.7.2h-2.7v-1h5.8l2.7-.2h5.8l3-.2h3l2.8-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3.2l3-.2h3l3-.2h3l3-.2h3l3-.2h3l3-.2h3l2.8-.2h3l2.8-.2h.2zm-.2 0h.2zm94.5 3.4l1 .2-.5.3h-2.8l-2.8-.2h-8.8l-2.8-.2h-3l-3-.2H551l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3.2-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2h-3l-3-.2H485l-3-.2.2-1h2.8l3 .2h3l2.8.2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h3.2l3 .2h3l3 .2h3l3 .2h3l3 .2h3l3 .2h5.8l2.7.2h3l2.7.2h2.8l-.5.5zm1 .2v.3h-.5l.5-.4zm6.5-31.2l-6.5 31h-1l6.5-31.2.6-.4.4.6zm-.4-.6h.5v.6l-.4-.6zm-93.7-4.8h1l-.6-.5h5.4l2 .2h2l2 .2h2l2.4.2h2.4l2.4.3h5l2.6.3h2.7l3 .3 2.8.2h3l3 .3 3 .3 3.3.2 3.3.2 3.4.2h3.4l3.6.3 3.6.2 3.7.2 3.6.3 4 .2 3.8.3 4 .2 4 .3 4.2.2v1l-4.3-.2-4-.3-4-.2-4-.3-3.7-.2-3.8-.2-3.6-.3-3.6-.2-3.5-.2h-3.4l-3.3-.3-3.3-.2-3.2-.2-3-.2h-3l-3-.2-3-.2h-2.7l-2.6-.3h-2.6l-2.6-.3h-2.5l-2.4-.2-2.3-.2h-2.2l-2.2-.2h-2l-2-.2h-2l-1.8-.2h-3.3l-.5-.6zm.4.5h-.5v-.6l.4.5zm.5-.8v.2h-1v-.2l.3-.5.6.5zm-1 0v-.4h.3l-.4.4zm-8 .3l.2-1h8.8l.3.2v.8h-.5v.2h-.3l-.2-1h.2v.7h.2-8.2zm.2 0zm-8.3.2v-1l-.2 1h-.4l-.2-.2-.3-.3v-.5l.2-.2h9.4v1h-8.8l.2-.2v-.8h-.2.4v1zm0-1v1l-.6-.5.5-.5zm-.6.5v-.5h.5l-.6.5z"/>
+      <path fill="#edb92e" d="M583.5 264.2c3.2-6.6 6.7-13 11.2-18.7-11.7 8.8-18 7.5-18.7-4-.7-.2-1.7-.2-2.6-.2-9 14-17.7 12-26.2-5.8-11.5 18.4-21.4 18-29.2-1-13.3 16.6-24.5 16.7-33.6.2v-2c.5.2 0 .3-1 0l-.3-.3a69.3 69.3 0 01-1 .2c-.2 0-.5 0-.8-.2l-.2.4c-1.2.2-1.6 0-1 0v2c-9.2 16.4-20.4 16.3-33.7-.4-7.8 19-17.7 19.5-29.2 1-8.4 18-17 20-26 6-1 0-2 0-2.7.2-.8 11.4-7 12.7-18.8 4 4.6 5.5 8 12 11.3 18.6 34-1.4 67.6-3.2 101.3-5 34 1.8 67.6 3.6 101.5 5z"/>
+      <path fill="#21231e" d="M595 246l-.6-1 .7 1-.3.4-.4.5-.4.4-.5.6-.4.5-.3.6-.4.6-.4.6-.5.5-.3.6-.4.6-.4.4-.3.6-.3.6-.3.6-.4.6-.3.5-.3.6-.4.5-.3.6-.3.7-.4.6-.3.6-.3.5-.3.6-.2.8-.3.6-.4.6-.2.6-.3.6-.3.6-.3.6-1-.4.3-.6.3-.7.3-.6.2-.5.4-.6.3-.7.2-.6.3-.6.3-.6.4-.6.3-.6.3-.6.3-.6.5-.6.3-.6.4-.6.3-.6.4-.5.2-.5.4-.6.4-.7.3-.6.4-.5.4-.6.5-.6.4-.5.3-.6.4-.6.4-.6.5-.5.4-.6.4-.5.7.7zm-19.2-4l.3-1 .5.5v1l.2 1v1l.3.7.2.8.3.7.3.7.2.6.4.5.3.5.4.4.5.3.4.3.4.3.5.2h.4l.5.2h1.9l.7-.2.7-.2.8-.3.8-.3.8-.3 1-.5.8-.6 1-.5 1-.7 1-.7 1-.7 1-1 .7 1-1 .7-1 .8-1 .7-1 .6-1 .5-1 .5-1 .5-.8.4-1 .3-.7.3-.8.2h-.8l-.8.2h-2l-.7-.3-.5-.2-.6-.3-.5-.5-.6-.4-.5-.4-.5-.5-.3-.5-.4-.7-.3-.7-.2-.7-.3-.8-.2-1v-.8l-.2-1v-1l.2.3zm.3-1l.4.2v.3l-.3-.4zm-2.2.6l-.8-.6.4-.2h2v.2h.4l-.2 1h-1.2v-.2h-1.2l.4-.2zm-.8-.6v-.2h.4l-.4.2zm-25.3-5.2l-1-.6h1l.8 1.7.8 1.4.8 1.5.8 1.2.8 1.2.8 1.2.8 1 .8 1 .8.8.8.8.8.7.7.5 1 .4.7.3.8.3.7.3h2.3l.8-.2.8-.2.8-.3.8-.4.8-.6.8-.6.8-.7.8-.6 1-1 .7-1 .8-1 .8-1 1-1.4.8.6-.8 1.3-1 1-.7 1.2-1 1-.7 1-1 .7-.8.6-.8.6-1 .6-.7.4-1 .4-.8.2-1 .2h-3l-1-.4-.7-.3-1-.5-.7-.5-1-.6-.7-.7-1-.8-.8-1-.8-1-.8-1-.8-1.2-.8-1.3-.8-1.3-.8-1.5-.8-1.6-.8-1.7h1zm-1-.6l.6-.7.4.8h-1zm-28.3-.5l-.8-.6 1 .2.6 1.7.7 1.5.7 1.5.8 1.4.7 1.3.8 1.2.8 1 .8 1 .8.7.8.7.8.6 1 .5.7.4.8.2 1 .2h2.5l1-.3.8-.2 1-.4.8-.6 1-.7 1-.6 1-1 1-1 1-1 1-1.2 1-1.3 1-1.6 1-1.5 1.2-1.8 1 .6-1.2 1.7-1 1.5-1.2 1.5-1 1.3-1 1.3-1 1.2-1.2 1-1 1-1 .8-1 .7-1 .6-1 .4-1 .4-1 .4h-3l-1-.2-1-.3-.8-.6-1-.5-.8-.8-1-.8-.7-.8-1-1-.8-1-.8-1.3-.8-1.4-.8-1.5-.8-1.5-.7-1.7-.8-1.7h1zm-.8-.6l.5-.6.5.8h-1zm-33.8.7h1v-.2l.8 1.5 1 1.4.8 1.2 1 1.2.8 1 1 1 .8 1 1 .8.8.7 1 .6 1 .4 1 .4.8.3 1 .3 1 .2h2l1-.2 1-.3 1-.3 1.2-.4 1-.6 1.2-.6 1-.6 1.3-.8 1-1 1.3-1 1.2-1 1-1.3 1.4-1.3 1.2-1.4 1.2-1.5.8.7-1.3 1.5-1 1.5-1.3 1.3-1.2 1.3-1.2 1-1.2 1-1 1-1.3 1-1.2.7-1 .6-1.3.6-1 .5-1.3.3-1.2.3h-1l-1.2.2h-1l-1.2-.2-1-.2-1-.3-1-.4-1-.5-1-.7-1-.6-1-1-1-.8-1-1-1-1.2-.8-1.2-1-1.3-.8-1.5-1-1.5v-.3zm0 .3v-.3.3zm1-2.3v2h-1v-2l.8-.5.3.5zm-1 0v-.8l.8.2-.8.5zm-1 .3l1-.4-.4-.3h1l-.2.2v.4l.4-1h.2v.2l.2.2v.6h-1.8l-.5-.3zm.5.3h-.3v-.3l.3.3zm.3-1l.2.3-1 .4v-.4l.2-.7.6.2zm-.6-.4l.4-.2.2.4-.6-.3zm-1 1l.2-1h.8l.2 1h-1zm.2 0zm-.6-.4l-1-.4.7-.3h.8v1h-1l.4-.4zm-1-.4l.3-.4h.3l-.6.4zm0 .4v-.4l1 .4-.2.4-.4.3-.5-.7zm.8.4v.3h-.4l.4-.3zm-1-.3h-1l.7.4v.2h.2v-.8h-.2.2l.2-.2h.4l.2 1h-1.9v-.2h-.2v-.5h.2v-.2h.2l.8.4zm-.7-.5l.7-.3v.7l-.7-.5zm-.3 2.5v-2h1v2.3l-1-.3zm1 0v.2-.3zm-33.6 0l-1-.5h1l1 1.4 1.3 1.4 1.3 1.3 1.2 1.2 1.2 1 1.2 1.2 1 1 1.2.7 1 .7 1.2.7 1 .6 1.2.4 1 .3 1 .3h1l1 .2h1l1-.2 1-.2 1-.2 1-.4 1-.5 1-.7.8-.7 1-.8.8-1 1-1 .8-1 1-1.2.8-1.2.8-1.4 1-1.5.8.5-1 1.5-.8 1.4-1 1.2-.8 1.2-1 1.2-1 1-.8 1-1 .8-1 .7-1 .8-1 .5-1 .4-1 .4-1 .3-1.2.2h-2.2l-1-.2-1.3-.3-1-.3-1.2-.5-1-.6-1.2-.6-1.2-.8-1.2-.8-1.2-1-1.2-1-1.2-1-1.2-1.4-1.2-1.3-1.3-1.5-1-1.5h.8zm-1-.5l.3-.8.7.7-1 .2zm-28.3 1.5l-1-.4h1l1 1.6 1 1.4 1.2 1.5 1 1.2 1 1.2 1 1 1 1 1 1 1 .7 1 .8 1 .6.8.4 1 .3.8.4h2.8l.8-.2.8-.3.8-.5 1-.5.7-.6 1-.7.7-.8.8-1 .8-1 .8-1.3.8-1.3.8-1.4.8-1.5.7-1.6.8-1.8 1 .4-.8 1.7-.7 1.7-.8 1.5-.8 1.4-.8 1.3-1 1.2-.7 1-1 1-.7 1-1 .7-.8.7-1 .4-.8.5-1 .2-1 .2h-3l-1-.3-1-.3-1-.4-1-.6-1-.7-1-.8-1-1-1-1-1-1-1-1.4-1-1.3-1.2-1.5-1-1.5-1.2-1.7h1zm-1-.4l.5-.8.5.7h-1zm-25.6 6.5v-1l.3.2 1 1.3.7 1.2.8 1 .8 1 .8.8 1 .8.7.8 1 .6.7.5.7.3.8.3.8.2.8.2h2.3l.8-.4.8-.3.8-.4.7-.5 1-.6.7-.8.8-.8.8-.8.8-1 1-1 .7-1.2.7-1.2.8-1.3.8-1.6.8-1.5.8-1.7 1 .4-1 1.7-.7 1.5-1 1.4-.7 1.3-.8 1.3-.8 1.2-.8 1-1 1-.8 1-.8.8-.8.7-1 .6-.7.5-1 .5-1 .3-.7.3h-2.6l-1-.2-.8-.2-1-.4-.8-.4-1-.6-.8-.6-.8-.7-1-1-.7-.8-1-1-.8-1-1-1.3-.7-1.4.4.2zm0-1h.2v.2l-.3-.2zm-2.2.8h-1l.4-.5h1.2v-.2h1.5v1H389v.2h-.4l.2-.4zm-1 0v-.4h.4l-.4.3zm-18 3.6l-.6.7.6-1 1 1 1.2.6 1 .7 1 .6 1 .4.8.5 1 .4.7.3.8.3.8.3.8.2h.7l.7.2h1.7l.4-.2.5-.2.4-.3.4-.3.4-.3.4-.4.3-.5.2-.5.3-.6.3-.7.3-.7.3-.8v-.8l.3-1v-.8l.2-1h1v1l-.2 1-.2 1-.2 1-.2.7-.2.8-.3.8-.4.7-.2.6-.5.6-.4.5-.6.5-.5.4-.7.2-.6.2-.6.2h-3.3l-.8-.3-.8-.3-1-.3-.8-.4-1-.5-.8-.5-1-.5-1-.6-1-.7-1-.8-1.2-.8.7-.8zm11 18.5v1l-.4-.3-.3-.6-.2-.6-.3-.6-.3-.6-.4-.6-.3-.6-.3-.7-.3-.5-.4-.6-.4-.7-.3-.6-.4-.6-.3-.5-.4-.6-.4-.7-.4-.5-.3-.6-.4-.6-.4-.6-.4-.6-.3-.5-.4-.7-.3-.6-.3-.5-.4-.6-.4-.5-.4-.5-.4-.5-.4-.6-.4-.5-.4-.6-.4-.5.7-.8.4.5.4.6.4.5.4.6.4.5.4.5.4.5.4.6.4.6.4.5.3.6.4.6.4.5.4.6.4.6.3.6.5.6.3.6.3.6.5.6.3.6.3.6.5.6.3.7.3.7.4.6.3.6.4.5.4.6.3.7.3.7.3.6-.5-.3zm0 1h-.3v-.3l.4.3zm101.4-6v1l-3.2.2h-3.2l-3 .3h-3.3l-3 .3-3.3.2H460l-3 .3-3.3.3h-3.2l-3 .3H444l-3 .3h-3.3l-3.3.2-3 .2h-3.3l-3.2.3h-3l-3.3.3-3.3.2h-3l-3.3.3h-3.2l-3 .2-3.3.2h-3.3l-3.2.2h-3l-3.3.3H384l-3 .2-.2-1h3.2l3.2-.3h3l3.3-.2 3.2-.2h3l3.3-.3h3.2l3-.3h3.3l3.2-.3h3l3.3-.2h3.2l3-.3h3.3l3.2-.3 3-.2h3.3l3.2-.3h3l3.3-.3 3.2-.2h3l3.3-.3 3-.3h3.3l3.2-.3 3-.2h3.3l3.2-.3 3-.3h.2zm0 0zm101.2 5v1h-3l-3.3-.2-3-.2h-3.3l-3-.3h-3.3l-3.2-.3h-3l-3.3-.2-3.3-.2h-3l-3.3-.3-3.2-.2h-3l-3.3-.3h-3.3l-3-.3h-3.3l-3.2-.3-3-.3h-3.3l-3.3-.3h-3l-3.3-.3h-3l-3.3-.2-3-.2-3.2-.2h-3.2l-3.2-.3h-3l-3.3-.2.2-1h3l3.3.3 3.2.2 3 .2 3.3.2h3l3.3.3h3.2l3 .2 3.3.2 3.2.2h3l3.3.3h3l3.3.2 3.2.2h3l3.3.3h3.3l3 .3h3.3l3.2.3h3l3.3.3h3.3l3 .3h3.3l3.2.2h3.2l3 .2 3.3.2h3.2zm0 1zm0 0v-1l.5.7-.6.3zm.5-.3l-.2.3h-.4l.5-.3z"/>
+      <path fill="#edb92e" d="M459.4 276.2l22.7-11.5 23 11.5-23 11.4z"/>
+      <path fill="#edb92e" d="M474 259.2v.2c-17.6.7-48.6 2.5-93.2 5.3l6.5 31c29.6-.8 64.3-2 94.8-3 30.7 1 65.3 2.2 95 3l6.5-31c-44.6-2.8-75.6-4.6-93-5.3v-.2c1.7-.4-1-.4-8.4-.2-7-.2-10-.2-8 .2z"/>
+      <path fill="#edb92e" d="M597.3 236.7l-3.7-.6c-7 17.5-13.4 18-14.6 1.4 1.6-.6 1-3.3 2.8-2.2 1 .5 2-1 1.3-2-2-1.5-3.6-1.3-5.4.4-.8-2.7-3-4-5.4-2.8-1 .5-.7 2.5.4 2.4 1.8-.2 1 1.6 1.6 3-12.5 16.4-19 14.4-17.4-7.3-3-.7-6.5-1.3-9.6-2.4-11.5 23.3-19.7 24.3-26.4 3.4 1.4-1 1-3.8 3-3 1.3.6 2.3-1.5 1.2-2.4-2.4-2-5-1.3-6.8 1.3-1.4-3-4-4-6.6-2.2-1.2.7-.5 3 .8 2.6 2.3-.7 1.3 2.4 3 3.5-5 19.6-30.8 21-26.6-8.2-2.4 0-4.5 0-6.6.2l-6.7-.2c4.2 29-21.5 27.8-26.6 8 1.6-1 .6-4 3-3.4 1.2.3 2-2 .7-2.7-2.6-1.7-5.2-.7-6.6 2.2-1.7-2.7-4.3-3.4-6.7-1.4-1 1 0 3 1 2.5 2.2-.8 1.8 2 3.2 3-6.7 21-15 20-26.4-3.4-3 1-6.5 1.7-9.5 2.3 1.6 21.6-5 23.6-17.4 7 .6-1.2 0-3 1.7-2.8 1 0 1.5-2 .4-2.4-2.4-1-4.5 0-5.3 2.8-1.7-1.7-3.5-2-5.5-.4-.8 1 .4 2.5 1.3 2 1.8-1 1.2 1.6 2.8 2.2-1.2 16.5-7.6 16-14.6-1.3l-3.7.7c0 4 1.3 8.5 3.8 11.7 10.6 13.5 18.5 10.4 18.8-4.7 14 16.4 24.4 14.3 26.2-3 11.7 21.8 30.5 11.4 31-2 5 19.4 33.5 19.2 35.4-3 1.8 22.2 30.3 22.4 35.4 3 .4 13.4 19.2 23.8 31 2 1.7 17.3 12.3 19.4 26 3 .4 15 8.3 18.2 19 4.7 2.4-3.2 3.8-7.6 3.7-11.7z"/>
+      <path fill="#21231e" d="M593.7 235.6l3.7.6-.2 1-3.6-.6-.4-.7.5-.4zm-.5.3v-.4h.5l-.5.3zm-14.3 1l.2 1 .3-.6.2 1.4v1.4l.3 1.3.2 1.2.2 1 .3 1 .3 1 .3.7.3.7.3.6.3.5.3.5.4.2.3.2h1.3l.4-.3.4-.2.5-.4.4-.3.6-.6.5-.6.6-.7.7-1 .6-.8.7-1.2.6-1.2.6-1.3.7-1.3.5-1.5.7-1.6 1 .3-.8 1.6-.6 1.4-.7 1.4-.5 1.3-.7 1.3-.6 1-.6 1-.7 1-.7.8-.6.8-.6.6-.5.5-.6.3-.7.4-.5.2h-1.2l-.6-.2-.5-.2-.5-.4-.5-.4-.4-.6-.3-.6-.3-.8-.4-.8-.3-1-.2-1-.3-1-.2-1.3-.2-1.3-.2-1.5v-1.6l.3-.5zm-.5.4v-.4h.4l-.5.4zm3.5-2.7l-.5 1v-.2h-.4v.2h-.2v.2l-.2.2v.3l-.2.3-.2.3v.2h-.2v.3h-.3v.2h-.3l-.2.2-.3-1v-.2h.2v-.2h.2v-.2l.2-.2v-.5h.2v-.4l.2-.2v-.3l.2-.2.2-.2h.2l.2-.2h1l.2.2zm-.5 1zm1.3-2l.6-1v.2h.2l.2.3v1.6h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.5v.2h-.8l-.3-.2.5-1v.2h.4v-.2h.2v-.2h.2v-.8zm.6-1v.2-.2zm-6.3 1l1-.3-.8-.2h.2l.2-.3.2-.2.2-.2.3-.2h.2l.2-.2h.2v-.2h.4l.2-.2h2.3l.2.2h.2l.2.2h.2l.2.2h.2l.2.2.2.2-.6.8-.3-.2h-.2l-.2-.2-.2-.2h-.3l-.2-.2h-2.1v.2h-.3v.2h-.2l-.3.2v.2h-.3v.2l-.3.2-1-.3zm1 .3l-.7.5-.2-.8 1 .3zm-5.6-2.7l-.4-1h.5l.3-.2h2.1l.4.2h.4l.2.3h.2v.2l.3.2h.2l.2.2v.2l.2.2v.2l.2.2.2.2v.2l.2.3v.2l.2.2v.2l-1 .3v-.5h-.2v-.3l-.2-.2v-.2h-.3v-.3h-.2v-.4h-.3v-.2h-.3v-.2h-.6v-.2h-2l-.2.2h-.2zm0 1.4l.2 1h-.6v-.2h-.2l-.2-.2-.2-.2-.2-.2V231l.2-.2.2-.2.3-.2.4 1h-.2v1.2h.2zm2.2 3.7l-.8-.6v.5-.2h-.2v-1h-.2v-1l-.2-.2h-.7v-1.2h.6l.3.2.2.2h.2v.2l.2.3v.4h.2v1.5h.2v.8zm0-.5h.2l-.2.4v-.5zm-18-6.6l.3-1 .3.6v2l-.2 1.8v4.9l.3 1.4v1.3l.3 1 .2 1 .3 1 .4.8.3.8.4.5.5.5.4.3.4.3.5.2h1l.6-.2.7-.3.7-.4.8-.5 1-.4.7-.8 1-.8 1-1 1-1 1-1 1-1.4 1-1.4 1.3-1.4.8.6-1.2 1.5-1 1.3-1.2 1.3-1 1-1 1.2-1 1-1 .8-1 .8-.8.6-1 .5-.7.4-.8.3h-.8l-.8.2h-.7l-.7-.2-.6-.3-.6-.5-.5-.5-.4-.7-.5-.7-.4-1-.2-1-.2-1-.2-1.2-.2-1.3V229l.5.6zm.3-1h.3v.6l-.4-.6zm-9.3-1.6l-1-.4.7-.3.3.2h.3l.3.2h.3l.2.2h.3l.4.2h.6l.3.2h.3l.4.2h.6l.3.2h.5l.3.2h.7l.3.2h.6l.3.2h.5l.3.2h.8l.3.2h.3l-.3 1h-.8l-.2-.2h-.6l-.3-.2h-.8l-.3-.2h-.6l-.4-.2h-.7l-.4-.2h-.3l-.3-.2h-.6l-.3-.2h-.2l-.3-.2h-.6l-.4-.2h-.3l-.4-.2h-.4l-.3-.2h-.2l.7-.4zm-1-.4l.3-.4h.4l-.6.4zm-26.2 3.2l.6.8.3-.6.6 2 .5 1.7.7 1.6.6 1.6.7 1.4.7 1.2.6 1 .7 1 .7 1 .7.6.6.6.7.4.7.4.7.2h1.4l1-.2.6-.2.8-.4 1-.6.7-.6 1-.8 1-1 .8-1 1-1.2 1-1.3.8-1.4 1-1.6 1-1.7 1-1.8 1-2 1.2-2 1 .3-1.2 2.2-1 2-1 1.8-1 1.8-1 1.6-1 1.5-1 1.3-1 1.2-1 1-1 1-1 1-.8.7-1 .5-.8.4-1 .2-.8.2h-1.8l-.8-.3-.8-.3-.8-.5-.8-.6-.7-.8-.8-1-.7-1-.7-1-.7-1.4-.7-1.4-.7-1.5-.7-1.7-.6-1.7-.7-1.8.2-.6zm-.2.6v-.4l.2-.2-.2.5zm3.8-3.6l-.3 1h-.3l-.2-.2h-.2v.2h-.2v.2h-.2v.5h-.2v.4l-.2.3-.2.2v.2l-.2.3-.3.3-.2.3h-.2l-.5-.7.2-.2.2-.2v-.5h.2v-.4h.2v-.3l.2-.3v-.2l.2-.2.2-.3.2-.2h.2v-.2h.5v-.2h.7l.2.2zm.7-1.6l.6-.8.2.2.2.2v.2l.2.3v1.3l-.2.3v.2l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2h-1.1l.4-1h.7v-.2h.2v-.6h.2v-.7h-.2v-.2zm-7 1l1-.3h-1l.2-.3v-.3h.3l.2-.3.2-.3.2-.2.3-.3.3-.3h.2l.2-.3h.3l.2-.2h.5l.2-.2h2.2l.3.2h.2l.3.2h.3l.3.3h.2l.3.3.3.2-.6.8-.2-.2h-.2l-.2-.3-.4-.2h-.2l-.2-.2H521v.2h-.5l-.2.3h-.2v.2h-.2l-.2.3-.2.2-.3.3v.2l-.2.3-.2.2h-1zm1 .2l-.6.7-.3-1 1 .2zm-7-2l-.4-1h.3l.2-.2h.3l.4-.2h.2l.3-.2h.4l.3-.2h1.6l.2.2h.2l.3.2h.2l.2.3.3.2.2.2v.2l.3.2.2.2.2.2v.2l.3.2.2.3.3.4v.3l-.8.4-.2-.4-.2-.2v-.2l-.3-.2v-.2l-.3-.2-.3-.3h-.2v-.2h-.3l-.3-.2h-.2l-.3-.2h-.4l-.2-.2h-1.2l-.2.2h-.5l-.2.2h-.2l-.2.2-.2.2zm.5 1.7l.3 1h-.5l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2v-.2l-.2-.2V224l.2-.2.2-.3.3-.2.5 1h-.2v1.2h.2v.2h.4zm3.7 4l-1-.2.2.5h-.2l-.2-.2h-.2v-.3h-.2l-.2-.3v-.4l-.2-.2v-.3l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2h-.6l-.4-1h1.1l.3.2h.2v.4h.2v.3l.2.2v.2h.2v.5l.2.3v.5h.2v.4h.2l.2.2.2.2.3.6zm-.3-.5l.3.2v.3l-.3-.5zm-27-7.2v-1l.6.5-.3 2.7-.2 2.4v2.2l.2 2 .3 2 .4 1.7.5 1.5.7 1.4.6 1 .8 1.2 1 1 1 .7 1 .6 1 .5 1 .4 1.3.3h2.4l1.3-.2 1.2-.3 1.2-.5 1.2-.5 1-.7 1.2-1 1-.8 1-1 1-1.3 1-1.3.8-1.3.8-1.5.6-1.7.5-1.7 1 .2-.6 2-.7 1.6-.8 1.6-1 1.5-1 1.4-1 1.3-1 1-1.2 1-1.2 1-1.2.8-1.3.7-1.2.5-1.3.3-1.4.2h-2.5l-1.2-.3-1.3-.4-1.2-.5-1-.7-1-1-1-1-1-1-.8-1.5-.7-1.5-.6-1.6-.4-1.8-.3-2-.2-2.2V227l.2-2.6.3-2.7.5.6zm0-1h.7v.5l-.6-.5zm-6.6 1.2l.2-1h4l.2-.2h2.1v1h-4.1l-.2.2h-2zm.2 0zm-6.2-.8h-1l.5-.4h5.1l.2.2h1.2v1h-4l-.3-.2h-2l.5-.6zm-1 0v-.5h.5l-.5.6zm-26.4 7.8l.5.8.3-.5.6 1.7.5 1.7.7 1.5 1 1.4.8 1.4 1 1.2 1 1 1 1 1.2 1 1.2.6 1.2.5 1.2.5 1.2.3 1.2.2h2.4l1.2-.3 1-.3 1.2-.4 1-.7 1-1 .8-.8 1-1 .6-1.3.6-1.5.6-1.6.4-1.8.3-2v-2l.2-2.3-.2-2.5-.3-2.7h1l.3 2.6.2 2.5v2.2l-.2 2.2-.3 2-.5 1.8-.5 1.6-.7 1.5-.8 1.4-1 1.2-1 1-1 .8-1 .7-1.2.5-1.3.4-1.3.3H463l-1.2-.2-1.3-.3-1.3-.5-1.3-.6-1.3-.7-1.2-1-1.2-1-1-1-1-1.2-1-1.3-1-1.5-.7-1.6-.7-1.7-.6-2 .2-.5zm-.2.5v-.3l.2-.2-.2.5zm3.7-4l-.2 1-.2-.2h-.7v.2l-.2.2v.4l-.2.2v.5l-.2.2v.2l-.2.3v.2l-.2.2v.2h-.2v.3h-.3l-.2.2h-.2l-.4-.7.2-.2.2-.2h.2v-.3l.2-.2v-.5l.2-.2v-.5l.2-.3v-.3l.2-.2.3-.3.2-.2h.2l.2-.2h1.1zm.4-1.8l.6-1v.2h.3v.3h.2v.2l.2.2v1.5l-.2.2v.2l-.2.2-.3.2-.2.2h-.9l.3-1h.4v-.4l.2-.2v-.8h-.2v-.2h-.2zm-6.7 2l.8-.6h-.8v-.2l.2-.3.3-.4v-.2l.3-.2.2-.2.2-.2.2-.2.2-.2.2-.2h.2l.3-.3.3-.2h.2l.3-.2h.5l.2-.2h1.6l.4.2h.2l.3.2h.2l.3.2.2.2h.3l-.6 1-.2-.2h-.2l-.2-.2h-.3l-.2-.2h-.5l-.2-.2h-1.3l-.2.2h-.3v.2h-.3l-.2.3-.2.2-.3.3-.3.3-.2.2v.2l-.2.2-.2.2v.3h-.2l-1 .2zm1 0l-.5.7-.5-.8h1zm-7-1.2l-.8-.8.2-.2.2-.2h.3l.2-.3h.2l.2-.2h.3l.3-.2h2.5l.3.2h.2l.3.2.2.2h.2l.2.3h.2l.2.2.2.2.2.3.2.2h.2v.4l.3.2-.8.6-.2-.2v-.3l-.3-.2-.2-.2-.3-.3-.2-.2h-.2l-.2-.2v-.2h-.2l-.2-.2h-.4l-.2-.2H441l-.2.2h-.2l-.2.2h-.2l-.2.3h-.2l-.2.3zm.5 1.6l.4 1h-1.3l-.2-.2-.3-.2h-.2v-.2l-.2-.3v-.2l-.2-.2v-1.6l.2-.2.2-.2v-.2l.8.8-.2.2v1l.2.2.2.2h.4zm3.8 3.6l-1-.4.2.6h-.2v-.3h-.3v-.2h-.2v-.3h-.2v-.5h-.2v-.6h-.2v-.5l-.2-.2-.2-.2h-.2v-.2h-.5v.2l-.5-1h.4l.2-.2h.6l.2.2.3.2h.2v.2l.2.2.2.3v.2l.2.2v.2l.2.3v.2l.2.2.2.2.2.2.2.2.2.6zm-.2-.6l.3.2v.4l-.2-.6zm-26.6-2.5l-.3-1 .5.4 1 2 1 2 1.2 2 1 1.6 1 1.6 1 1.5 1 1.4.8 1.2 1 1 .8 1 1 .8.7.6 1 .6.6.4.8.2.8.2h1.3l.7-.2.7-.4.7-.4.7-.6.7-.7.8-.7.6-1 .7-1 .8-1.3.6-1.4.7-1.5.7-1.5.7-1.8.6-2 1 .5-.7 2-.6 1.6-.7 1.7-.6 1.5-.7 1.4-.7 1.3-.7 1.2-.7 1-.8.8-.7.8-.7.6-.8.5-1 .4-.7.4H432l-1-.2-.7-.3-1-.5-1-.6-.8-.8-1-1-.8-1-1-1-1-1.2-1-1.3-1-1.5-1-1.6-1-1.8-1-1.8-1-2-1-2.2.5.3zm-.3-1h.3l.2.4-.6-.3zm-9 3h-1l.4-.6h.7l.3-.2h.6l.4-.2h.9l.3-.2h.5l.3-.2h.6l.4-.2h.3l.3-.2h.6l.3-.2h.5l.3-.2h.3l.4-.2h.3l.3-.2h.3l.3-.2h.3l.2 1h-.7l-.3.2h-.3l-.3.2h-.3l-.3.2h-.5l-.3.2h-.3l-.4.2h-.6l-.4.2h-.6l-.3.2h-.6l-.2.2h-.6l-.3.2h-.7l-.3.2h-.8v.2h-.4l.4-.5zm-1 0v-.5h.4l-.4.5zm-17.4 7l1 .3v-.5l1 1.4 1 1.4 1.2 1.3 1 1 1 1 1 1 1 .8.8.8 1 .6.6.4.8.4.7.3h.6l.6.2h.4l.5-.2.3-.2.5-.2.4-.5.3-.5.4-.7.2-.7.3-1 .2-1 .2-1v-2.7l.2-1.5v-5l-.2-1.8h1v2l.2 1.8v4.9l-.2 1.4v1.4l-.3 1.2-.3 1-.3 1-.2 1-.4.7-.4.7-.6.5-.5.5-.7.3-.7.2H402l-.6-.2-.8-.4-1-.5-.7-.5-1-.6-1-.8-1-.8-1-1-1-1-1-1.2-1-1.3-1.2-1.4-1-1.6-.2-.5zm0 .4v-.3.4zm2-3.7v1h-.6v.8l-.2.3v1h-.2v.3l-1-.4v-.4l.2-.2v-.9h.2v-.5l.2-.2v-.2h.4v-.2h1zm.3-1.4l.3-1 .2.2h.2v.2h.2v.7h.2v1.2l-.2.2v.3l-.2.2-.2.2h-.2l-.2.2h-.5v-1h.4v-.2h.2v-.8l-.2-.2zm-5.7 2.7l.7-.8-.8.2v-.2l.2-.3v-.3l.2-.3v-.2l.2-.2.2-.2v-.2l.3-.2v-.2l.3-.2h.2v-.3h.3l.3-.2.2-.2h.4v-.2h2.5l.3.2h.2l.3.2-.4 1-.3-.2h-.5l-.2-.2h-1.3l-.3.2h-.2v.2h-.2l-.2.2v.2h-.2l-.2.2v.2h-.2v.3l-.2.2v.2h-.2v.5l-.2.2-1 .3zm1-.3l-.4.8-.7-.5 1-.3zm-5.8-.2l-.7-.6v-.2l.3-.2h.3l.2-.2h.2l.2-.2.3-.2h.2l.2-.2h2.1l.2.2h.2l.2.2h.2l.2.2.3.2.2.2h.2l.2.3v.2l-.7.8v-.2h-.3v-.2l-.3-.2-.3-.2h-.3v-.2h-.2l-.2-.2h-2v.2h-.3l-.2.2-.2.2h-.2l-.2.2zm-.7-.6v-.2zm1.4 1.7l.6 1h-1.3l-.3-.2-.2-.2v-.2h-.2l-.2-.2v-.3l-.2-.2v-.8l.2-.3h.2l.7.5v.8h.2v.2h.2v.2h.2zm3.6 2.7h-1l.3.5v-.2h-.3v-.2h-.3v-.3h-.2v-.2h-.2v-.2l-.2-.2v-.3h-.2v-.2l-.2-.3v-.2h-.7l-.6-.8h.2l.2-.2h1.1l.3.2.2.2v.2h.2v.4l.2.2v.5h.2v.2l.2.2.2.2h.2l.4.6zm-.4-.5h.4v.4l-.4-.5zm-14.7-.4v-1l.4.3.8 1.5.6 1.5.7 1.3.7 1.3.6 1.2.6 1 .6 1 .6 1 .5.6.6.7.5.7.6.4.5.5.3.2.5.2h1.1l.3-.3.3-.2.4-.4.3-.4.4-.5.3-.6.3-.8.3-.8.2-1 .3-1 .3-1.3.2-1.3v-1.4l.2-1.4h1v1.5l-.2 1.4-.2 1.3-.2 1.2-.2 1-.2 1-.3 1-.4.8-.4.8-.4.6-.4.6-.5.4-.5.4-.5.2-.6.2h-1.1l-.6-.3-.7-.4-.6-.4-.5-.6-.6-.6-.7-.7-.7-.7-.6-1-.6-1-.6-1-.6-1.2-.6-1.2-.7-1.4-.7-1.5-.6-1.7.5.3zm0-1h.3v.3l-.4-.4zm-3.8.6l3.6-.6v1l-3.6.6-.5-.5.4-.5zm-.5.5v-.4h.4l-.5.4zm4.7 11.4l-.8.7-.3-.3v-.3l-.3-.3-.2-.3-.3-.3-.2-.3-.2-.3v-.4l-.3-.3-.2-.4-.2-.4v-.4l-.2-.4v-.4l-.3-.4v-.4l-.2-.3v-.4l-.2-.4v-.9l-.2-.3v-.8l-.2-.5V238l-.2-.5v-.7h1v1.9l.2.4v1.1l.2.5v.7l.2.3v.4l.2.4.2.3v.4l.2.5.2.3v.4l.2.3.2.4.2.2v.3l.3.4.2.2v.3l.3.3.2.4.2.3.2.3.2.3zm18.7-4.7l-.8.7 1-.3-.2 1.4v1.4l-.2 1.3-.2 1.2-.2 1-.3 1-.2 1-.3 1-.4.7-.4.8-.4.7-.6.6-.5.5-.5.4-.7.3-.6.3h-.7l-.8.2h-.7l-.8-.2-.8-.2-.8-.2-1-.4-.7-.5-1-.7-1-.6-.8-.8-1-1-1-1-1-1-.8-1-1-1.3.8-.6 1 1.3 1 1 .8 1 1 1 1 .8.7 1 1 .5.7.6.8.5.8.4.7.2h.7l.7.3h1.4l.6-.2.4-.2.6-.2.4-.3.5-.5.4-.5.4-.6.4-.7.3-.8.3-.8.3-1 .4-1 .2-1 .2-1.2v-1.2l.2-1.3v-1.3l1-.4zm-1 .4V242l1 1-1 .4zm27.3-3.2l-1 .4 1-.2-.2 1.6v1.5l-.4 1.3-.4 1.3-.4 1.2-.4 1.2-.5 1-.7 1-.6 1-.6.7-.6.7-.8.6-.7.5-1 .4h-.8l-1 .3h-2.8l-1-.3-1-.4-1.2-.4-1-.6-1.2-.6-1.2-.8-1-.8-1.3-1-1.2-1-1.3-1.2-1.2-1.3-1.3-1.5-1.3-1.5.7-.7 1.2 1.5 1.3 1.4 1.2 1.2 1.2 1.2 1 1 1.3 1 1 .8 1.2.7 1 .7 1 .6 1 .4 1 .3 1 .2h1l.8.2h.8l1-.2.7-.3.7-.4.7-.5.7-.4.6-.6.6-.7.5-.8.5-1 .4-1 .5-1 .2-1.2.4-1.3.3-1.3v-1.5l.3-1.6h1zm-1 0l.2-1.5.8 1.5h-1zm31.8-1.8l-.8.3h1v1l-.3 1.4-.4 1.2-.4 1.2-.5 1-.6 1.3-.6 1-.7 1-.8 1-1 1-1 .7-1 .7-1 .7-1 .6-1.2.5-1.2.4-1.2.3h-3.8l-1.3-.2-1.3-.4-1.4-.4-1.3-.7-1.3-1-1.3-.8-1.3-1.2-1.3-1.2-1-1.5-1.3-1.6-1.2-1.8-1-2 .8-.5 1 2 1.2 1.6 1.2 1.7 1.2 1.4 1 1.3 1.3 1 1.2 1 1.3.7 1.2.6 1.2.5 1.3.5 1.2.2h3.6l1.2-.3 1-.3 1-.3 1.2-.5 1-.6 1-.7.7-.8 1-1 .6-.7.6-1 .6-1 .6-1 .4-1 .4-1.2.3-1V239h1zm35.6-3l-1 .2h1l-.2 2-.4 2-.6 1.6-.6 1.7-.8 1.6-1 1.3-1 1.3-1 1-1.3 1-1.3 1-1.3.8-1.3.6-1.5.6-1.5.3-1.5.2h-1.5l-1.6.2-1.4-.2-1.6-.2-1.5-.3-1.5-.5-1.4-.6-1.4-.7-1.4-1-1.3-1-1.2-1-1-1.2-1-1.4-1-1.4-1-1.6-.6-1.6-.5-1.8 1-.3.5 1.7.6 1.6.8 1.5 1 1.3 1 1.3 1 1.2 1.2 1 1.2 1 1.3.8 1.3.7 1.4.5 1.4.5 1.4.3 1.5.2h4.4l1.5-.3 1.4-.4 1.3-.5 1.3-.5 1.3-.7 1-1 1.2-.8 1-1 1-1.3 1-1.4.6-1.4.7-1.7.5-1.7.4-1.8.2-2h1zm35.5 3l-1 .2h1l-.4 1.8-.7 1.6-1 1.6-1 1.4-1 1.4-1 1.2-1.3 1-1.2 1-1.4 1-1.3.6-1.5.6-1.4.5-1.6.3-1.5.2-1.5.2h-1.6l-1.5-.2-1.4-.3-1.5-.4-1.4-.6-1.4-.6-1.3-.8-1.4-1-1.2-1-1-1-1.2-1.3-1-1.4-.7-1.7-.7-1.7-.5-1.7-.4-2-.4-2 1-.2.3 2 .3 1.8.5 1.7.6 1.6.8 1.3 1 1.4.8 1.2 1 1 1.2 1 1.2.8 1.3.7 1.3.6 1.4.6 1.4.3 1.4.2h4.5l1.4-.2 1.5-.3 1.4-.5 1.3-.5 1.3-.7 1.3-.8 1-1 1.2-1 1-1 1-1.4 1-1.3.7-1.5.6-1.6.5-1.7h1zm31 2h-1l1 .2-1.2 2-1.2 1.7-1.2 1.6-1.2 1.5-1.3 1.2-1.4 1.2-1.3 1-1.3.7-1.3.6-1.3.5-1.4.5-1.3.2H530l-1.3-.3-1.2-.3-1.2-.4-1-.5-1-.6-1-.7-1-.8-1-1-.7-1-.8-1-.6-1-.6-1-.5-1.2-.3-1.2-.3-1.2-.2-1.3v-1l1-.2v1.2l.2 1.2.3 1 .4 1.2.5 1 .6 1 .7 1 .7 1 .7 1 1 .8.8.7 1 .6 1 .6 1 .5 1 .4 1 .4 1.3.2 1.2.2h2.4l1.2-.3 1.2-.4 1.3-.4 1.2-.6 1.3-.7 1.2-1 1.2-1 1.2-1.2 1.2-1.3 1.2-1.6 1-1.6 1.2-2 1 .2zm-1-.2l.8-1.5.2 1.6h-1zm27.2 3.2h-1l1 .3-1.4 1.5-1.3 1.4-1.2 1.2-1.3 1-1.2 1.2-1.2 1-1.2.8-1 .8-1.2.6-1 .6-1.2.4-1 .4-1 .2-1 .2h-2l-1-.3h-.8l-.8-.5-.8-.5-.7-.6-.8-.7-.6-.8-.6-1-.6-1-.5-1-.5-1-.4-1.4-.3-1.3-.3-1.4-.2-1.6-.3-1.6 1-.2.2 1.6.2 1.5.3 1.3.3 1.3.4 1.2.4 1 .5 1 .5 1 .6.8.6.7.6.6.6.5.7.6.6.3.8.2h.8l.8.2h.8l1-.2 1-.2.8-.3 1-.4 1-.6 1.2-.6 1-.6 1.2-.8 1.2-1 1-1 1.4-1.2 1.2-1.2 1.3-1.4 1.3-1.5 1 .4zm-1-.4l1-1v1.4l-1-.4zm19 4.8l.7.7-1 1.2-1 1-1 1-1 1-1 1-.8.7-1 .6-.8.6-.8.4-1 .4-.7.3-1 .3-.7.2h-1.5l-.7-.2-.6-.3-.6-.3-.6-.4-.6-.5-.5-.6-.4-.7-.4-.8-.4-.8-.3-1-.3-1-.3-1-.3-1-.2-1.3V246l-.2-1.3v-1.3h1v2.6l.2 1.3.2 1 .2 1.2v1l.4 1 .4.7.3.8.5.6.4.5.4.5.4.5.5.3.5.3.6.3h.6l.6.2h.6l.7-.2h.6l.7-.4.8-.5 1-.4.7-.5 1-.6.7-1 1-.7.8-1 1-1 1-1 1-1.2zm4-10.7v-1l.6.4v2.9l-.2.4v.7l-.2.4v.5l-.2.4v.3l-.2.4v.3l-.3.4v.4l-.2.4-.2.4v.3l-.3.3-.2.4-.2.3-.2.4-.2.3-.2.4-.2.4-.2.3-.2.4-.2.4-.3.3-1-.6.3-.2.3-.3.2-.3.2-.4.2-.3.2-.3.2-.3v-.5l.3-.3v-.3l.2-.5.2-.3v-.4l.3-.3v-.4l.2-.3v-.7l.2-.4v-.3l.2-.4v-.5l.2-.4v-1l.2-.4v-1.8l.5.5zm0-1h.6v.4l-.5-.5zm0 0v1-1zm0 1z"/>
+      <path fill="#edb92e" d="M482 263h-22.5l-1.3.2H451l-1.3.2h-4.4l-1.2.2h-2.3l-6.3.4h-.3c-3 0-6 .3-9 .4h-.8l-18.2 1.3h-.2a965 965 0 00-26.4 2.4c-5 .6-6-5.3 0-6a960.5 960.5 0 0126.3-2.2 983.7 983.7 0 0137-2.2h2.4l15.4-.5h16.8a1082.3 1082.3 0 017.2 0h16.6l15.2.5h3.3a984 984 0 0137 2.3 960.5 960.5 0 0126.2 2c5.8.7 5 6.6 0 6a965.6 965.6 0 00-26.4-2.3h-.3a978.4 978.4 0 00-18.3-1.2h-.6l-9.2-.5h-.3c-2.2 0-4.3-.2-6.4-.3h-2.3l-1.2-.2h-4.5l-1.3-.2H506l-1-.2h-23z"/>
+      <path fill="#0c4076" d="M482 105a17.3 17.3 0 01.1 34.7c-9.3 0-17-7.8-17-17.3 0-9.6 7.7-17.3 17-17.3z"/>
+      <path fill="#edb92e" d="M485.3 85c1.6-.2 3-1.5 3-3.2 0-1.7-1.4-3-3-3.2 0-1.7-1.4-3-3.2-3a3 3 0 00-3 3c-1.6 0-3 1.5-3 3.2a3 3 0 003 3v6.5h-5.5a3 3 0 00-3-3c-1.8 0-3 1.3-3.2 3a3 3 0 00-3 3c0 1.8 1.3 3.2 3 3.2a3 3 0 003 3c1.8 0 3.2-1.2 3.2-3h5.5V119h6.3V97.6h5.5a3 3 0 003 3c1.8 0 3-1.4 3.2-3 1.7 0 3-1.5 3-3.2a3 3 0 00-3-3c0-1.8-1.4-3.2-3-3.2-2 0-3.2 1.4-3.2 3h-5.5V85z"/>
+      <path fill="#21231e" d="M487.8 81.8h1v1h-.2v.5h-.2v.3l-.2.3-.2.2v.2h-.2l-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2v.2h-.8l-.2.2h-.3v-1h.7V84h.2l.3-.2h.2v-.2h.2v-.2l.2-.2V83h.2l.2-.2v-.4l.2-.2v-.4zm-3-3.2h1l-.5-.5h.2l.3.2h.4l.3.2h.3l.2.2.2.2h.2v.2h.2l.2.2.2.3.2.2v.2h.2v.4h.2v.5l.2.2v.7h-1V81h-.2v-.4l-.2-.2V80h-.4v-.2h-.2v-.2h-.2l-.3-.2h-.2V79h-.8l-.4-.6zm.4.5h-.4v-.4l.4.5zm-3-3v-1h.7l.2.2h.2l.3.2h.2l.2.2.2.2h.2v.3l.2.2.2.3.2.2v.2h.2v.4h.2v.8h.2v.3h-1V78h-.2v-.5h-.2v-.2l-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.4l-.3-.2h-.4zm-3.2 3v-1l-.5.6v-.8l.2-.2V77h.2v-.6h.2v-.2l.2-.2.2-.2.2-.2h.2v-.2h.3v-.2h.3l.3-.2h.4l.2-.2h.4v1h-.5v.2h-.3l-.2.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.2h-.2v.5h-.2v1l-.6.5zm.5-.4v.5h-.5l.5-.4zm-3 3.2h-1V81l.2-.3v-.5l.2-.2v-.2l.2-.2.2-.3.2-.2h.2l.2-.2h.2v-.2h.3v-.2h.5l.3-.2h.7v1h-.7l-.2.2h-.2l-.2.2-.2.2-.2.2-.2.2v.2h-.2v.4l-.2.2v.8zm3 3h-1l.5.6h-1V85h-.7v-.2h-.3v-.2h-.2l-.2-.2-.2-.2V84h-.2v-.2l-.2-.2-.2-.3v-.5h-.2v-1h1v1h.2v.4h.2v.2h.2v.2l.2.2h.2v.2h.2l.3.2h.7v.2h.2l.5.5zm-.5-.4h.5v.5l-.5-.6zm-.5 7V85h1v6.3l-.5.5-.5-.5zm1 0v.4h-.5l.5-.5zm-6-.6h5.5v1h-5.5l-.5-.5.5-.5zm0 1h-.5v-.5l.5.5zm-3-3v-1h1.2v.2h.3l.3.2.3.2.3.2v.2l.2.2.2.3.2.3.2.3v.4l.2.2v.8h-1v-.7l-.2-.2V90h-.2v-.2h-.2v-.2l-.2-.2-.2-.2h-.2V89h-.4l-.2-.2h-.8zm-3.2 3v-1l-.5.4v-.8l.2-.3V90l.2-.3v-.2h.2v-.2l.2-.2h.2v-.3h.2l.2-.2.2-.2h.2V88h.7v-.2h1.1v1h-1l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2v.2h-.2v.4h-.2v.8l-.2.2v.3l-.5.5zm.5-.5v.5h-.5l.5-.5zm-3 3h-1V93h.2v-.2h.2v-.3l.2-.3.3-.3v-.2h.2v-.2h.2v-.2h.2l.2-.2h.2V91h.7l.2-.2h.8v1h-.7l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2v.2h-.2v.5h-.2v.7zm3 3.2h-1l.5.5h-1v-.2h-.5l-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2v-.2h-.3v-.2l-.2-.2V96h-.2v-.4l-.2-.3v-.8h1v.9h.2v.2l.2.3h.2v.2h.2v.2h.2v.2h.2l.2.2h.5v.2h.4l.6.5zm-.5-.5h.5v.5l-.5-.5zm3 3v1h-1l-.2-.2h-.3v-.2h-.3v-.2h-.2l-.2-.2-.2-.3v-.2h-.2v-.3h-.2V99h-.2v-.5l-.2-.2V98h-.2v-.5h1v.7h.2v.4h.2v.2l.2.2v.2h.2v.2h.2v.2h.2l.2.2h.2l.3.2h.6zm3.2-3v1l.5-.4v.8l-.2.2v.3h-.2v.3l-.2.3-.2.2-.2.2-.2.2-.3.2-.2.2h-.2l-.2.2h-.2l-.3.2h-.8v-1h.9v-.2h.2l.2-.2h.2v-.2h.2l.2-.2V99h.2v-.2l.2-.3v-.2l.2-.2v-.4l.5-.5zm-.5.6V97h.5l-.5.6zm6 .5h-5.5v-1h5.5l.5.6-.5.5zm0-1h.5v.6l-.5-.5zm-.5 22V97.6h1V119l-.5.5-.5-.5zm.5.5h-.5v-.5l.5.5zm6.3 0H479v-1h6.3l.5.5-.5.5zm.5-.5v.5h-.5l.5-.5zm0-21.4V119h-1V97.6l.5-.5.5.6zm-1 0V97h.5l-.5.6zm6 .5h-5.5v-1h5.5l.5.6-.5.5zm0-1h.4v.6l-.4-.5zm3 3v1h-1l-.3-.2h-.2l-.3-.2-.2-.2h-.2v-.2h-.2l-.2-.2v-.2h-.2v-.2l-.2-.2V99h-.2v-.2h-.2v-1l-.2-.2h1v.4l.2.2v.2l.2.3v.2h.2v.2h.2l.2.2v.2h.2l.3.2h.2v.2h1.1zm3.2-3v1l.5-.5v.7h-.2v.5l-.2.3v.4h-.2v.3h-.2v.2h-.2v.2h-.3v.2l-.3.2h-.3l-.2.2h-.3l-.2.2h-.8v-1h.9v-.2h.2v-.2h.2l.2-.2.2-.2V99h.2v-.2l.2-.2v-.2l.2-.2v-.6l.6-.6zm-.5.5V97h.5l-.5.5zm3-3h1v.9l-.2.3v.2h-.2v.6h-.2l-.2.2v.2h-.2v.2h-.3v.2h-.2v.2h-.3l-.3.2h-.2l-.3.2h-.7v-1h.8V97h.2v-.2h.2l.2-.2.2-.2h.2V96l.2-.3v-.2h.2v-.7l.2-.3zm-3-3.2h1l-.5-.6h.7l.2.2h.4l.3.2.3.2.3.2.2.2.2.3.2.2v.5h.2v.3h.2v.7l.2.3v.4h-1v-.6h-.2v-.4l-.2-.2-.2-.2v-.2h-.2l-.2-.2-.2-.2h-.2V92h-.5l-.2-.2h-.5l-.5-.5zm.5.5h-.5v-.5l.5.5zm-3-3v-1h1.1l.2.2h.4v.2h.3v.2l.3.2.2.3h.2v.3h.2v.4l.2.2v.4h.2v.7h-1v-.8h-.2V90l-.2-.2-.2-.2-.2-.2-.2-.2h-.2V89h-.5v-.2h-.6zm-3.2 3v-1l-.6.5v-.9l.2-.2V90l.2-.3.2-.3.2-.3h.2v-.2l.2-.2h.2v-.2h.2l.2-.2h.3l.2-.2h.3l.2-.2h1v1h-1l-.3.2h-.2v.2h-.2l-.2.2v.2l-.2.2-.2.2v.2l-.2.2v.7l-.7.6zm.5-.5v.5h-.6l.6-.5zm-6-.5h5.5v1h-5.5l-.5-.5.5-.5zm0 1h-.5v-.5l.5.5zm.5-7v6.5h-1V85l.4-.6.6.5zm-1 0v-.4h.4l-.4.5zm.5 0v-.4.5zm-.5 0v-.4h.4l-.4.5z"/>
+      <path fill="#21231e" d="M499.8 122.4h-1v-1.7l-.2-1v-.7l-.3-.8-.2-.8-.2-.8-.3-.8-.3-.7-.4-.6-.4-.7-.4-.7-.5-.7-.5-.6-.5-.6-.6-.5-.7-.6-.6-.6-.6-.5-.5-.6-.7-.4-.7-.4-.6-.4-.8-.3-.7-.4-1-.3-.7-.2h-.8l-.8-.2h-.8l-1-.2h-1v-1h2l.8.2h1l.8.3.8.4.8.2.8.4.8.3.8.4.7.4.7.6.7.5.7.6.6.6.6.6.6.6.6.6.5.7.5.7.5.7.4 1 .4.6.4.8.3.8.3 1 .3.7.2.8v1l.2.7v2zM482 140.2v-1h1.8l1-.2.7-.2.8-.2.8-.2 1-.3.6-.2.8-.3.7-.4.8-.3.7-.4.6-.5.7-.5.6-.5.6-.6.5-.5.5-.6.5-.6.5-.6.4-.7.4-.6.4-.8.3-.7.3-1 .3-.6.3-.8.2-.8v-1l.2-.7v-1.6h1v2.8l-.2.8-.2.8-.3 1-.3.7-.3.8-.3.8-.3 1-.4.6-.5.7-.5.7-.5.7-.6.6-.6.7-.6.6-.6.5-.7.6-.7.5-.7.6-.7.4-.8.4-.8.4-.8.3-.8.4-.8.2-1 .2-.8.2h-.8l-1 .2h-1zm-17.5-17.8h1v1.8l.2.7v.8l.3.8.2.8.3.7.3 1 .3.6.5.8.4.7.3.8.5.6.5.6.5.7.6.5.5.6.5.5.7.5.6.5.7.4.7.4.7.5.7.3.7.3.8.4.8.2.8.2.8.2h1.8l.7.2v1h-1.8l-.7-.2-1-.2-.8-.2-.8-.2-1-.3-.7-.2-.8-.4-.8-.4-.7-.4-.7-.5-.7-.4-.7-.5-.7-.4-.7-.6-.5-.7-.5-.6-.5-.7-.5-.7-.5-.7-.4-.7-.4-1-.3-.7-.5-.8-.2-.8-.3-1-.2-.7v-1l-.2-.8v-1.8zm17.6-17.8v1h-1.7l-.7.2h-.8l-.8.3-.8.3-.8.3-.7.3-.8.2-.8.4-.7.4-.7.4-.6.5-.7.4-.6.5-.6.5-.6.6-.5.7-.5.6-.5.7-.4.7-.5.7-.4.7-.2.8-.3.8-.3.8-.2.8-.2.8v.8l-.2 1v1.7h-1v-2.8l.2-1 .2-.8.3-1 .2-.8.4-.8.2-.8.4-.7.4-1 .5-.6.5-.7.5-.7.6-.6.6-.6.7-.6.6-.6.6-.5.7-.4.7-.5.7-.3.8-.4.8-.3.8-.4 1-.2.7-.3h1l.8-.2h.8l1-.2h.8z"/>
+      <path fill="#edb92e" d="M499 118.8a17.6 17.6 0 010 6c-5.5-.2-11.2-.3-17-.3-5.5 0-11.2 0-17 .3a17.5 17.5 0 01.3-6l16.8-.3c5.8 0 11.4.2 17 .3z"/>
+      <path fill="#21231e" d="M499.8 122.4h-1V120h-.2v-1l1-.2v1.7l.2.2v1.6zm-.7 3l.2-1-.6.3v-.8l.2-.2v-1.1h1v2.2h-.2l-.5.5zm.6-.5v.3h-.5l.6-.4zm-17.5 0v-1H494l.4.2h4.8v1h-10.6l-.5-.2h-6zm-17.4 0l1-.3-.5-.4h4.7l.4-.2H482v1h-11l-.5.2H465l-.5-.3zm.6.3h-.5v-.4l.5.3zm-.7-3h1v2.4l-1 .3v-2.6zm.8-4v1l.5-.3v.8l-.2.2v2.5h-1v-3h.2v-.4l.5-.5zm-.5.5v-.4h.5l-.5.4zm17.3-.8v1h-9.1l-.5.2H466l-.7.2v-1h2.5l.5-.2h9l.5-.2h4.2zm17.5.8l-1 .2.4.4h-3.6l-.5-.2h-10.3l-.5-.2h-2.1v-1h10l.5.2h6.1l.5.6zm-.5-.5h.4v.5l-.4-.5z"/>
+      <path fill="#edb92e" d="M468.8 133.2c-3.6-2.3-4.3 1.2-4.2 4.7.4 13.2 3 25.8-.6 42-1.4 6.4-3.7 10-1.5 11.3 5.7 3.2 8.3 6 7.4 7.7 1.5 3.2 5.7 2.6 12 1.6 6.6 1 10.7 1.6 12.4-1.6-1-1.6 1.7-4.5 7.4-7.7 2.2-1.2 0-5-1.5-11.3-3.5-16.2-1-28.8-.7-42 0-3.6-.5-7-4-4.8a28.6 28.6 0 01-26.8 0z"/>
+      <path fill="#21231e" d="M465 138h-1v-1.5l.2-.3v-1.6l.2-.3v-.3h.2v-.4l.2-.2v-.3h.2l.2-.3.2-.2.2-.2h.2l.2-.2h1.8l.4.2.4.2h.3l.4.3-.4 1-.4-.3h-.2l-.3-.2h-.3l-.2-.2h-1.2v.2h-.2v.2l-.2.2v.2l-.2.2v.4l-.2.3v.4l-.2.2v2.5zm-.5 42l-1-.2.3-1.5.3-1.4.3-1.6.2-1.4.2-1.5.2-1.4v-2.5l.2-1.4V154l-.2-1.2v-2.5l-.2-1.2V148l-.2-1.2v-1.2l-.2-1.3V142l-.2-1.3V138h1v3.5l.2 1.2v2.6l.2 1.2v1.3l.2 1.2v2.5l.2 1.2v1.3l.2 1.3v13.3l-.2 1.4v1.4l-.3 1.5-.2 1.4-.2 1.6-.2 1.4-.2 1.5-.3 1.6zm-1.8 11l-.4.8-.3-.2-.2-.2-.2-.2-.2-.2v-.2l-.2-.3V188l.2-.3v-.4l.2-.3v-.4l.2-.4v-.5l.3-.4.2-.4v-.5l.3-.3v-.5l.3-.5v-.6l.3-.4.2-.6v-.6l.3-.6 1 .3-.2.7v.6l-.3.5v.6l-.2.5-.2.4v.6l-.3.4v.5l-.3.4v.4l-.2.4v.4l-.2.4v.4l-.2.3v.4l-.2.4v1.9l.2.2.2.2zm7.6 7.8l-1 .4v-.4h.2v-1l-.2-.2v-.2l-.2-.2v-.4l-.3-.2-.2-.2-.2-.3h-.3l-.2-.4-.3-.2-.3-.3h-.3l-.4-.4-.4-.3-.3-.2-.5-.2-.4-.3-.3-.3-.5-.3-.5-.3-.4-.3-.5-.3-.6-.2.5-1 .6.4.5.3.5.3.4.3.5.4.4.3.5.3.5.2.3.3.4.3.4.3.3.4.2.2.3.3.3.2.2.2.2.3.3.2.2.2v.2l.3.3v.2l.3.2v.5l.2.2v1.1l-.2.3v-.5zm-1 .4v-.4.4zm13 1l-.2 1h.2-1.2l-.5.2h-1.2l-.6.2h-1l-.5.2h-4.7l-.4-.2h-.3l-.3-.2-.3-.2-.3-.2-.2-.2-.3-.2-.2-.2-.3-.3h-.2l-.2-.4-.2-.4 1-.4v.2l.2.3.2.2.2.2.2.2h.2l.2.2h.2l.3.2h.3l.3.2h.3l.2.2h4.3l.5-.2h1l.6-.2h1.1l.5-.2h.8zm-.2 0h.2zm12-1l1-.4v.4l-.3.4-.2.3h-.2l-.3.4-.2.2-.3.2-.3.2-.3.2-.4.2h-.3l-.3.2h-.4l-.4.2H486l-.6-.2h-.5l-.6-.2h-1.2l-.5-.2h-.6l.2-1h1.8l.5.2h.6l.6.2h1.1l.5.2h4.2l.3-.2h.3l.2-.2h.3l.2-.2.2-.2.3-.3.2-.2.2-.2v-.3l.3-.2v.5zm1-.4v.4-.4zm6.5-8l.5 1-.5.3-.5.4-.5.3-.4.2-.4.2-.4.3-.4.3-.4.3-.4.3-.3.3-.3.3h-.3l-.2.4-.3.2-.3.3h-.2l-.2.4-.2.2-.2.2v.2l-.3.2v.7h-.2v1.2l-.8.5v-.2l-.2-.2v-1.3l.2-.2v-.3l.3-.3v-.3l.3-.2.2-.3.2-.3.3-.3.2-.2.3-.3.3-.4.4-.2.3-.3.4-.2.4-.3.4-.3.4-.2.4-.3.5-.3.5-.3.5-.2.5-.3.5-.3.5-.3zm-1.7-10.7l1-.2v.6l.3.6.2.6.2.5v.7l.3.5v.5l.2.4v.6l.2.5.2.5v.4l.2.3v.4l.2.4v.5l.2.3v.7l.2.3v1.8l-.2.3v.2l-.3.3h-.2l-.2.3-.3.2-.5-1h.2l.2-.2v-.4h.2v-2.5l-.2-.3v-.3l-.2-.3v-.4l-.2-.4v-.4l-.2-.4v-.4l-.3-.5v-.6l-.2-.4v-.6l-.3-.5v-.6l-.3-.6v-.5l-.2-.6-.2-.6zm-.7-42h1v5.9l-.2 1.4v1.2l-.2 1.2v1.3l-.2 1.3v2.5l-.2 1.2v2.6l-.2 1.2v9.3l.2 1.4v1.4l.2 1.3.2 1.5.2 1.5.2 1.4.2 1.5.3 1.3.3 1.5-1 .3-.3-1.5-.3-1.5-.2-1.4-.2-1.5-.2-1.3-.2-1.5v-1.4l-.2-1.4V167l-.2-1.3v-10.3l.2-1.3v-2.5l.2-1.3V149l.2-1.2v-1.3l.2-1.2V143l.2-1.2V138zm-3.3-4.4l-.5-1h.4l.3-.2.2-.2h.3l.4-.2h1.2l.3.2h.2l.2.3v.2l.2.2h.2v.4l.2.2v.3h.2v.7l.2.3v1.5l.2.3v1.1h-1v-2.4l-.2-.3v-.8l-.2-.3v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-1.1l-.2.2h-.3l-.3.2-.3.2zm-27 0l.4-1 .8.5.7.5.7.4.7.2.7.3.8.2.8.3 1 .2.7.2 1 .2h.7l1 .2h.8l1 .2h4.6l.7-.2h1l.8-.3h.8l1-.3.7-.2.8-.3.8-.2.8-.3.7-.4.8-.3.7-.4.7-.3.5 1-.7.3-.7.4-.8.4-.7.3-1 .4-.7.3-.7.3-1 .2-.7.2-1 .2h-.8l-1 .2h-1l-.8.2h-4.6l-1-.2h-.8l-1-.2-.8-.2-1-.2-.7-.2-.8-.3-.8-.3-.8-.3-.8-.2-.8-.4-.7-.4-.7-.4z"/>
+      <g id="b">
+        <path fill="#edb92e" d="M363 212c-2-4-.3-9.8.3-11 .3-.8-.6-2.2-1-2.8-13-18.3-13.2-20-4.3-26.8 8-6 26.2-12 39.2-16.2 2.7-2 4.4-5 6.8-7.2-25 1.8-52 12-65.5 23.8-7.2 6.2 1.5 19 12.2 38 6.7 5 9.8 7 12.3 2.3z"/>
+        <path fill="#21231e" d="M362.8 200.7l1 .4v.2l-.2.2v.3l-.2.3v.5l-.2.2v.6l-.2.4v.7l-.2.3v1.6l-.2.4v2.5l.2.4v.4l.2.4v.4l.2.4v.3l.3.4-1 .3v-.4l-.3-.5v-.4l-.2-.4v-.4l-.2-.5v-.8l-.2-.6v-2.9l.2-.4v-1.2l.2-.3v-.4l.2-.2v-.6l.2-.3v-.6l.2-.2v-.2l.2-.2zm-1-2.2l1-.6v.2h.2v.4h.2v.4h.2v.2l.2.2v.4h.2v1.2l-1-.3v-.6l-.2-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2zm-4-27.5l.5 1-.8.5-.7.6-.7.6-.5.6-.6.5-.6.5-.5.6-.5.5-.3.4-.3.5-.3.5v.5l-.3.5v1.7l.2.6.2.8.2.7.4.8.4.8.4 1 .5 1 .6 1 .7 1 .7 1.3 1 1.2.7 1.3 1 1.4 1 1.5 1 1.5 1.3 1.7-.8.5-1.3-1.7-1-1.5-1-1.5-1-1.4-1-1.3-.8-1.2-.8-1.2-.7-1-.6-1-.7-1-.4-1-.6-1-.3-.7-.2-1-.2-.7v-.7l-.2-.7v-1.4l.2-.6.2-.6.2-.6.3-.6.4-.6.5-.5.5-.5.5-.5.6-.6.7-.5.7-.7.7-.6.7-.7zm39-16.2l.7.8h-.2l-1.2.5-1.2.5-1.2.4-1.4.3-1.3.4-1.4.5-1.4.4-1.3.5-1.5.5-1.4.5-1.3.5-1.3.5-1.4.5-1.4.5-1.3.5-1.4.5-1.4.5-1.3.6-1.3.6-1.3.5-1.2.7-1.2.5-1.2.6-1 .5-1.2.6-1 .4-1 .6-1 .6-1 .5-1 .7-.7.6-.7.6-.6-1 .8-.5 1-.6.8-.7 1-.6 1-.6 1-.4 1-.6 1.2-.6 1.2-.5 1-.7 1.4-.6 1.3-.5 1.3-.6 1.3-.5 1.2-.4 1.4-.5 1.3-.5 1.3-.5 1.4-.5 1.3-.5 1.4-.5 1.4-.5 1.4-.4 1.4-.5 1.3-.4 1.3-.4 1.3-.4 1.3-.5 1.2-.4 1.3-.5 1.3-.4 1.2-.3zm.7.8h-.2.2zm6.6-7v-1l.4.8-.2.2-.3.2-.3.3-.2.3-.2.2-.2.2v.3l-.3.2-.2.2-.2.2-.2.3-.3.3-.2.3-.2.2-.2.3v.3l-.3.2-.2.3-.2.2-.3.2-.2.3-.2.2-.2.2h-.2l-.3.4-.3.2-.2.2-.3.2-.2.2-.3.2-.2.2-.6-.8v-.2l.3-.2.3-.2.2-.2.2-.2.2-.2.3-.2.2-.2.2-.2v-.2l.3-.3.2-.2.2-.2.2-.2v-.2l.3-.2.2-.2.2-.3.2-.3v-.3l.3-.2.2-.2.2-.3.2-.2v-.2l.4-.3.2-.2.2-.2.2-.3.2-.2h.3l.2-.3.4.8zm0-1l1.4-.2-1 1-.4-1zM338.8 172l-.7-.8 1.5-1 1.4-1.2 1.4-1 1.5-1.2 1.5-1 1.7-1 1.7-1 1.7-1 2-1 1.8-1 2-1 2-1 2-.8 2-1 2.2-.7 2-.8 2.3-.8 2.3-1 2.2-.6 2.3-.7 2.3-.6 2.4-.5 2.3-.6 2.4-.7 2.4-.5 2.4-.4 2.4-.4 2.4-.4 2.3-.3 2.3-.3 2.4-.3 2.3-.2v1l-2.3.2-2.3.3-2.3.3-2.3.3-2.4.4-2.3.4-2.4.4-2.3.5-2.3.6-2.3.5-2.3.6-2.3.7-2.2.7-2.2.7-2.2.8-2.2.8-2.2.8-2 1-2 .7-2.2 1-2 1-2 1-1.8.8-1.8 1-1.8 1-1.7 1-1.6 1-1.5 1-1.6 1-1.5 1.2-1.4 1-1.2 1.2zm12.2 37.3l-.5.8-.2-.2-1-1.6-1-1.8-1-1.7-1-1.7-.8-1.7-1-1.6-.8-1.5-.8-1.5-1-1.5-.7-1.5-.8-1.4-.7-1.3-.7-1.4-.5-1.3-.6-1.3-.6-1.2-.4-1.2-.5-1.2-.3-1-.3-1-.4-1.2v-1l-.2-1v-2.8l.3-.8.3-.8.4-.7.5-.8.5-.7.6-.6.8.8-.6.5-.5.6-.4.7-.3.6-.3.7-.2.8v4.5l.4 1v1l.5 1 .4 1 .4 1.3.5 1.2.4 1.2.6 1.3.7 1.3.7 1.4.7 1.4 1 1.4.7 1.5 1 1.5.8 1.5 1 1.6.8 1.7 1 1.7 1 1.7 1 2 1 1.6h-.3zm-.5.8l-.2-.2.2.3zm12.5 1.3v1l.5-.2-.3.4-.2.4-.3.4-.3.3-.3.2-.2.3-.3.2-.3.2h-.3l-.5.2h-2.1l-.4-.2-.5-.2-.4-.2-.3-.2-.5-.2-.4-.3-.5-.3-.5-.3-.4-.4-.6-.3-.5-.3-.5-.4-.6-.4-.5-.4-.6-.4-.5-.5.5-.8.7.4.5.3.6.5.6.3.5.5.4.4.5.2.4.3.4.3.5.3.4.3.4.2.5.2.4.2h.5l.3.2h1.5l.2-.2h.3l.2-.3.2-.2.3-.2.2-.3v-.3l.4-.4.2-.4.4-.4zm-.4.3v-.4h.4l-.4.3zm.4.6v-1l.5.3-.5.6zm.5-.7l.3.6h-.8l.5-.7z"/>
+        <path fill="#edb92e" d="M359 213.6a34 34 0 01-1-4.7c-.7-2.8-.4-5.7.5-8.3-3-4.2-6.4-8.8-8.8-13.3-1.7-3.3-3-7-2-10.6 1-4 4.5-6.6 7.6-9 3.7-2.8 8.6-5.3 13.6-7.5 11-4.6 20-7 26.5-7l-4.2 3.8c-12 4-26.4 9.2-33.3 14.5-9 6.8-8.6 8.4 4.3 26.7.4.6 1.3 2 1 2.7-.6 1.2-1.8 7.2 0 11.4-1 2-2.6 1-4.2 1.2z"/>
+        <path fill="#21231e" d="M357.4 209l1-.2v.7l.2.2v.7h.2v.8l.2.3v.3l.2.3v.7h.2v.6h.2l-1 .4v-.3l-.2-.3v-.2l-.2-.3v-.5l-.2-.3v-.6h-.2v-.5l-.2-.3v-.7l-.2-.3v-.2zm1-.2zm-.4-7.8l1-.6v.5l-.2.4v.2l-.2.2v1l-.2.2v.8l-.2.2v4.7l.2.3-1 .2v-.6l-.2-.2V203h.2v-1l.2-.2v-.5l.2-.2v-.2l.2-.3v.5zm1-.6v.5-.6zm-9.7-12.8l1-.5v.6l.3.4.3.4v.4l.4.5.2.4.3.4v.5l.4.4.3.4.2.4.2.4.3.4.2.4.3.5.3.4.3.3.3.4.2.4.2.5.3.5.3.4.3.4.3.4.3.4.2.4.3.4.2.4.3.4.3.4.3.4.3.4-1 .6-.2-.4-.3-.4-.3-.4-.3-.4-.4-.4-.3-.4-.2-.4-.2-.4-.3-.4-.3-.4-.3-.5-.4-.4-.3-.3-.3-.4-.2-.4-.3-.5-.3-.5-.3-.4-.4-.4-.3-.4-.2-.5-.2-.4-.3-.5-.2-.4-.3-.4-.3-.4-.2-.4-.3-.5-.2-.4-.2-.5-.3-.5-.2-.4zm-2-11l1 .4-.2.3v4.1l.2.4v.3l.2.3v.7l.3.3v.4l.2.4v.6l.3.3v.3l.3.3v.2l.3.3v.3l.2.3-1 .6v-.3l-.2-.3-.2-.3v-.3l-.3-.4v-.3l-.3-.3v-.3l-.3-.3-.2-.3v-.3l-.2-.2v-.4l-.2-.3v-.3l-.2-.3v-.7l-.2-.4V180l-.2-.4V178l.2-.2v-.7l.2-.3zm7.7-9.2l.6.8-.3.2-.3.3-.3.2h-.3l-.3.3-.2.3-.2.2-.3.3-.3.3-.3.2-.3.3-.2.2-.3.3-.4.3-.2.2-.3.3v.3l-.4.3-.2.3-.2.2-.3.3-.3.3-.2.3-.2.4v.3l-.3.3-.2.3v.3l-.3.3v.3l-.2.3v.4l-1-.3v-.4l.2-.4v-.4l.2-.4.2-.4v-.3l.3-.4.2-.2.2-.3.2-.3v-.3l.4-.5.2-.3.2-.2.3-.3.4-.3.2-.3.3-.2.2-.2.3-.3.2-.3.3-.2.3-.3.3-.2.3-.3.2-.2.3-.2.3-.3.3-.2h.4l.3-.4.3-.2zm13.7-7.5l.4.8-.4.2-.4.2-.5.2-.5.2-.4.2-.5.2-.4.3-.6.2-.5.2-.5.2h-.5l-.4.3-.5.3-.3.2-.4.2-.5.3-.4.2-.4.2-.4.3-.5.2-.3.2-.4.3-.4.2-.5.2-.4.2-.2.3-.4.2-.4.2-.4.2-.3.3-.4.3-.4.2-.6-.8.3-.3h.4l.4-.4.4-.3.4-.2.4-.2.4-.2.4-.3.4-.2.4-.2.4-.2.4-.3.5-.2.5-.2.4-.2.4-.2.4-.3h.4l.5-.3.4-.3.6-.2.4-.2.5-.2.5-.3.4-.2.5-.2h.4l.4-.3.5-.2.5-.2.4-.2h.5zm0 0zm27-6.4l-.6-.7.5.7H394l-.6.2h-1.8l-.7.2h-.8l-.7.2h-.7l-.8.3-.8.2h-.7l-.8.2-.8.2-1 .2-.8.2-.8.3-1 .3-.8.3-1 .3-.8.2-1 .3-.8.3-1 .3-1 .5-1 .3-.8.4-1 .4-1 .4-1 .4-1 .4-.5-1 1-.4 1-.4 1-.4 1-.4 1-.3 1-.5 1-.3 1-.4 1-.3.8-.3 1-.3.8-.4 1-.2.8-.3h1l.8-.4.8-.2.8-.2.8-.2h.8l.8-.3.8-.2h.7l.7-.2h.8l.7-.2h1.4l.5-.2h1.9l.4.8zm-.3-1h1.4l-1 1-.4-1zm-4.4 4l4-3.7.8.6-4 3.8-.3.2-.5-1zm.7.8l-.2.2.2-.2zM358.3 172l-.6-1 .7-.5.7-.5 1-.5.7-.5.8-.5 1-.5.8-.4 1-.5 1-.4.8-.5 1.2-.4 1-.5 1-.3 1-.5 1.2-.5 1-.4 1.3-.5 1-.4 1.2-.5 1-.5 1.3-.5 1-.4 1.3-.4 1.2-.5 1.2-.4 1.2-.4 1.2-.5 1-.4 1.3-.3 1.2-.4 1-.3 1.2-.4.3 1-1.2.3-1 .3-1.3.4-1 .4-1.3.5-1.2.4-1.2.3-1.2.4-1 .4-1.2.6-1.2.4-1 .4-1.3.5-1 .3-1.3.5-1 .4-1.2.5-1 .4-1 .6-1.2.5-1 .5-1 .5-1 .5-1 .5-.8.5-1 .4-.8.4-.8.5-.8.4-.7.5-.7.4-.7.5zm4.4 26l-.8.5-1.3-1.7-1-1.5-1-1.5-1-1.4-1-1.3-.8-1.2-.8-1.2-.7-1-.6-1-.7-1-.4-1-.5-1-.4-.7-.2-1-.2-.7v-.7l-.2-.7v-1.4l.2-.6.2-.6.2-.6.3-.6.4-.6.5-.5.5-.5.5-.5.6-.6.7-.5.7-.7.7-.6.7-.7.6 1-.8.5-.7.6-.7.6-.5.6-.6.5-.6.5-.5.6-.5.5-.3.4-.3.5-.3.5v.5l-.2.6v2.2l.3.8.3.7.4.8.4.8.4 1 .6 1 .5 1 .7 1 .7 1.3 1 1.2.7 1.3 1 1.4 1 1.5 1 1.5 1.3 1.7zm1 3l-1-.3v-1h-.2v-.2l-.2-.2v-.2h-.2v-.4l.7-.7.2.2v.4h.2v.2l.2.2v.2l.2.2v.4h.2v1.4zm.2 11.6l-1-.5v.6l-.2-.4-.2-.5v-.4l-.2-.4v-.6l-.2-.4v-.5l-.2-.4v-5.4l.2-.4v-.7l.2-.4v-.5l.2-.3v-.4l.2-.2 1 .3v.2l-.2.2v.6l-.2.2v.6l-.2.3v1.1l-.2.4v5.1l.2.4v.8l.3.4v.4l.2.4.2.4v.4zm0-.4v.4-.4zm-5 1v1-1h.2l.2-.2h1.4v.2h1.5l.2-.2h.2v-.2h.2v-.2l.2-.2.2-.3 1 .6-.2.2-.2.2v.2l-.2.2h-.2v.2l-.3.2h-.4l-.2.2h-.3v.2h-3v-1zm0 1v-1l.6.2-.5.7zm.6-.8l.2.7h-.7l.6-.6z"/>
+        <path fill="#edb92e" d="M468 132.2c.3-2.3 0-2-.3 1.6-.3-.7-.8-1-1.4-1-1 0-1.7 1.6-1.8 5.2l.2 2.8c-33-.7-52.7 4.3-57.7 14-4.2 7.8 3 21 13.6 36 1.3 1.8 1.2 1.6 0 3-1.8 2.3-3.8 6-2.3 9.2a24.3 24.3 0 01-21 1.5c-1-3-3.4-4.4-5.4-5.8-.5-.2-2-1-2-1.4l-10.2-31.6c-9.5-30.7 75.3-33.5 88.3-33.5z"/>
+        <path fill="#21231e" d="M467.3 134l1-.4-1 .2V132h.2v-1.2l.2-.2.6-.3.3.3v1.6h-1V131l.4.2h.6v-.2 1l-.2.2v1.8h-1zm1 0l-.2 1.6-.7-1.5h1zm-2-.7v-1h.7v.2h.4v.2h.2v.2h.2v.2h.2v.2h.2v.2l-1 .5v-.2h-.2v-.2h-.2v-.2h-.4zm0 0zM465 138h-1v-1.8l.2-.3v-.9l.2-.3v-.7h.2v-.3l.2-.3.2-.3.2-.2h.2v-.2h.2v-.2h.5v1h-.2v.2h-.2v.2l-.2.2v.3l-.2.3v.6l-.2.2v2l-.2.3v.4zm-1 0zm.7 3.3v-1l-.5.5v-2.3h-.2v-.4l1-.2v1.8l.2.2v1l-.5.5zm.5-.5v.5h-.5l.5-.5zM407.4 155l-1-.5.7-1 .7-.8.7-1 .8-.7 1-.8 1-.8 1-.8 1-.7 1.3-.7 1.2-.7 1.4-.6 1.6-.6 1.5-.5 1.7-.7 1.7-.5 1.8-.4 2-.5 1.8-.5 2-.3 2.2-.4 2.2-.3 2.2-.2 2.4-.3 2.4-.2 2.5-.2h2.5l2.7-.2h2.7l2.8-.2h9v1H453l-2.8.2h-2.6l-2.6.2-2.5.2-2.4.2-2.3.3-2.2.2-2.2.3-2 .4-2 .3-2 .4-1.8.4-1.8.4-1.7.5-1.6.5-1.5.6-1.5.5-1.3.5-1.3.7-1.2.6-1 .7-1 .7-1 .7-1 .7-.6.8-.7.8-.6.8-.6 1zm13.6 35.5l-.8.6-1-1.3-1-1.4-1-1.4-1-1.5-.8-1.3-.8-1.4-1-1.3-.7-1.3-.8-1.3-.8-1.4-.7-1.2-.7-1.3-.6-1-.6-1.3-.5-1.2-.5-1.2-.5-1.2-.4-1-.5-1-.3-1.2-.3-1-.3-1-.2-1.2v-1l-.2-1V158l.3-.8.3-1 .2-.7.3-.8 1 .5-.4.7-.2.7-.2.8-.2.8v4.5l.2 1 .3 1v1l.5 1 .3 1.2.4 1 .5 1.2.5 1 .5 1.2.6 1.2.6 1.2.6 1.3.7 1 .7 1.4.8 1.3.8 1.3.8 1.3 1 1.3.8 1.4 1 1.3.8 1.4 1 1.4 1 1.5zm0 3.8l-.8-.7.2-.3.2-.2h.2v-.2l.2-.2v-.4l-.2-.2v-.2h-.2v-.3h-.2v-.3h-.2l.8-.7.2.3.2.3v.2h.2v.4h.2v.2l.2.2v1l-.2.2v.2h-.2v.2l-.2.2-.2.2-.2.3zm-2.5 9l-.4-.8-.2.7v-.3l-.2-.5v-.3l-.2-.3v-3.5l.2-.3v-.3l.2-.4.2-.3v-.3l.2-.3.2-.3v-.3l.3-.2v-.3l.3-.2.2-.3v-.2l.3-.3.2-.2v-.3l.3-.2.2-.2.8.7-.2.2-.2.2v.2h-.3v.3l-.3.3-.2.2v.3l-.3.3v.3l-.2.2-.2.3v.7l-.2.2v.2l-.2.3v.6l-.2.4v2.7l.2.3.2.3-.3.6zm.3-.5v.4l-.3.2.3-.6zm-22 1.8l1-.3-.2-.3.6.2.7.3.5.2.6.2h.8l.6.2.6.2h.7l.6.2h5.7l.7-.2h.5l.7-.3h.6l.7-.2.6-.2.7-.2.7-.2.6-.2.6-.3.6-.3.6-.2.7-.4.6-.3.5 1-.6.2-.7.4-.6.4-.7.2-.6.3-.7.2-.6.2-.6.2-.7.2-.6.2h-.6l-.7.3h-.7l-.6.2h-.7l-.7.2h-5l-.7-.2h-.7l-.6-.3h-.7l-.7-.3-.6-.3-.7-.3-.6-.2-.8-.3-.3-.4zm.4.3l-.2-.2v-.2l.2.3zm-5.6-5.8l.6-1 .2.2.2.2h.2l.2.2.2.2h.2l.2.2v.2h.3v.3h.3l.2.3h.2l.2.3.3.3.2.2.2.2.2.2v.2l.3.2v.2l.3.2.2.2v.2l.3.3.2.2.2.2v.2l.3.3v.3l.2.3-1 .3-.2-.2v-.3h-.2v-.3l-.2-.3-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.3-.2-.2-.2-.3-.3-.2-.2-.3-.3h-.2l-.2-.3v-.2l-.3-.2h-.2v-.3h-.3l-.2-.2h-.2l-.2-.2h-.2l-.2-.3h-.2l-.2-.2h-.2zm-2-1.7l.8-.3h.2v.2h.2l.2.2h.2v.2h.4v.2h.2l.2.2h.2l-.6 1-.2-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2zm-10.2-31.7l1-.3.2 1 .3 1 .2.8.3 1 .3 1 .3.8.4 1 .3 1 .3 1 .3 1 .3 1 .3.8.2 1 .4 1 .3 1 .2 1 .3 1 .3 1 .4 1 .3 1 .3 1 .3 1 .5 1 .3 1 .3 1 .5 1 .3 1 .3 1 .4 1.2.4 1 .3 1 .4 1.2-1 .3-.3-1-.2-1.2-.3-1-.4-1-.2-1-.3-1-.3-1.2-.4-1-.3-1-.3-1-.4-1-.3-1-.3-1-.3-1-.4-1-.4-1-.3-1-.4-1-.3-1-.3-.8-.3-1-.4-1-.3-1-.3-1-.3-.8-.3-1-.2-1-.3-1-.3-.8-.3-1-.4-.8-.2-1zm88.2-33.6h1l-.5.5h-5.4l-2.5.2h-2.8l-3 .2-3.3.2-3.5.2-3.7.3-3.8.3-4 .4-4 .5-4 .6-4.2.6-4 .7-4.2 1-4 .8-4 1-3.7 1-3.7 1.3-3.4 1.4-3.3 1.4-3 1.5-2.6 1.6-2.3 1.7-2 2-1.6 1.8-1.2 2.2-.8 2.2-.4 2.3v2.5l.7 2.7-1 .3-.6-2.8v-2.8l.3-2.6 1-2.4 1.2-2.2 1.8-2 2-2 2.5-2 2.7-1.6 3-1.5 3.3-1.6 3.5-1.3 3.6-1 4-1.2 3.8-1 4-1 4-.7 4.2-.6 4.2-.6 4-.6 4-.5 4-.4 4-.4 3.7-.4 3.5-.2 3.3-.2 3-.2h3l2.4-.2h5.4l-.6.4zm1 0v.5h-.5l.7-.5zm-.5 0h-.4.5zm.7 0v.5h-.6l.7-.5z"/>
+        <path fill="#fff" d="M405 190.2c3.5 0 6.4 2.8 6.4 6.4 0 3.5-3 6.4-6.4 6.4s-6.4-3-6.4-6.4c0-3.6 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M412 196.6h-1a6 6 0 00-3.4-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.6zm-7 7v-1c2.2 0 4.3-1.4 5.2-3.4a6 6 0 00.7-2.6h1c0 2.3-1.4 4.6-3.4 6a7 7 0 01-3.6 1zm-7-7h1c0 2.2 1.4 4.3 3.4 5.3a5.8 5.8 0 002.6.5v1a7 7 0 01-5.8-3.3 7 7 0 01-1-3.6zm7-7v1a6 6 0 00-5.2 3.3 6 6 0 00-.7 2.6h-1c0-2.4 1.4-4.7 3.4-6a6.8 6.8 0 013.6-1z"/>
+        <path fill="#fff" d="M350.8 203.6c3.2 0 6 2.7 6 6s-2.8 6-6 6c-3.3 0-6-2.7-6-6s2.7-6 6-6z"/>
+        <path fill="#21231e" d="M357.2 209.6h-1c0-2-1-4-2.8-4.8a5.4 5.4 0 00-2.6-.7v-1a7 7 0 015.4 3 6.5 6.5 0 011 3.6zm-6.4 6.4v-1c2 0 4-1.2 4.8-3a5.5 5.5 0 00.6-2.4h1c0 2-1.2 4.3-3 5.4a6.4 6.4 0 01-3.4 1zm-6.5-6.4h1c0 2 1.2 4 3 4.8.8.4 1.6.6 2.5.6v1a6.6 6.6 0 01-5.5-3 6.5 6.5 0 01-1-3.4zm6.5-6.5v1c-2 0-4 1.3-5 3a5.5 5.5 0 00-.5 2.6h-1c0-2.2 1.2-4.4 3-5.5a6.4 6.4 0 013.5-1z"/>
+        <path fill="#fff" d="M345 192.7c3.4 0 6 2.7 6 6s-2.6 6-6 6c-3.2 0-5.8-2.7-5.8-6s2.6-6 6-6z"/>
+        <path fill="#21231e" d="M351.5 198.7h-1c0-2-1.2-4-3-5a5.3 5.3 0 00-2.4-.5v-1c2.3 0 4.4 1.2 5.5 3a6.5 6.5 0 011 3.5zM345 205v-1c2 0 4-1 4.8-2.7a5.5 5.5 0 00.7-2.6h1c0 2.2-1.2 4.3-3 5.5a6.4 6.4 0 01-3.4 1zm-6.3-6.3h1c0 2 1.2 4 3 4.8a5 5 0 002.4.6v1c-2 .2-4.2-1-5.3-3a6.5 6.5 0 01-1-3.3zm6.4-6.5v1c-1.8 0-3.7 1-4.6 2.8a5.5 5.5 0 00-.7 2.7h-1c0-2.2 1.2-4.4 3-5.5a6.4 6.4 0 013.4-1z"/>
+        <path fill="#fff" d="M339.8 181.7c3.3 0 6 2.7 6 6s-2.7 6-6 6-6-2.7-6-6 2.7-6 6-6z"/>
+        <path fill="#21231e" d="M346.2 187.7h-1c0-2-1.2-4-3-5a5.4 5.4 0 00-2.4-.5v-1c2.2 0 4.3 1.2 5.4 3a6.5 6.5 0 011 3.5zm-6.4 6.4v-1c2 0 3.8-1 4.7-2.7.5-.8.7-1.7.7-2.6h1c0 2-1 4.3-3 5.4a6.4 6.4 0 01-3.4 1zm-6.4-6.3h1c0 2 1 4 3 4.8.7.4 1.5.6 2.4.6v1a6 6 0 01-5.4-3 6.5 6.5 0 01-1-3.3zm6.4-6.5v1c-2 0-4 1.2-4.8 3a5.5 5.5 0 00-.6 2.5h-1c0-2.2 1-4.4 3-5.5a6.4 6.4 0 013.4-1z"/>
+        <path fill="#edb92e" d="M444.3 202.2c3.4-.3 2.5 5.8 2 7.2-1 1.8-1.8 1.8-3 .2-.8-1.3-2.4-7.2 1-7.5z"/>
+        <path fill="#21231e" d="M446.6 209.6l-1-.4h.2v-.7l.2-.3v-.5l.2-.3V204h-.2v-.3l-.2-.2v-.2l-.2-.2h-.2l-.3-.2h-.2l-.2-.2h-.3v-1h.7l.3.2h.3l.3.2v.2l.3.3.2.2.2.3v.2l.2.3v.7l.2.3v3.7l-.2.3v.5l-.2.3v.5h-.2zm-3.7.3l.8-.7.2.3v.2h.2v.2h.2v.2h.7l.2-.2v-.2h.2v-.2h.2v-.3l1 .3v.2l-.2.2v.3h-.2v.2l-.2.2-.2.2h-.4v.2H444v-.2h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.3h-.3zm1.2-8.4v1h-.4v.2h-.3v.2h-.3v.3l-.2.2v.4h-.2v3.2l.2.2v.6l.2.2v.3l.2.2v.2l.2.2v.2h.2l-1 .7v-.5l-.2-.2v-.2l-.2-.4v-.2l-.2-.3v-.2l-.2-.3v-.7l-.2-.3v-3l.2-.3v-.3l.3-.3.2-.2.2-.3h.2l.2-.3.3-.2h.4l.2-.2z"/>
+        <path fill="#fff" d="M444.5 205.5c8-.6 6 13.8 4.4 17-2 4.2-4 4.3-6.7.5-2-3-5.8-17 2.2-17.5z"/>
+        <path fill="#21231e" d="M449.4 222.7l-1-.4.2-.3.2-.4v-.4l.3-.5.2-.5v-.6l.2-.6.2-.7V217l.2-.7v-5.1l-.3-.7v-.6l-.3-.7-.3-.6-.3-.5-.3-.5-.3-.4-.3-.4-.4-.4-.5-.2-.5-.2-.5-.2h-1.4v-1h1.5l.6.2.7.2.5.4.6.4.4.4.4.5.4.7.3.6v.7l.3.6.2.7v.7l.3.8v6.3l-.3.7v.7l-.2.6v.6l-.3.6v.5l-.3.5v.4l-.3.3zm-7.5.5l.8-.5.2.3.2.3.3.3.2.3h.2v.4h.3l.2.3.2.2h.4l.2.2h1v-.2h.3l.2-.3v-.2l.2-.2.2-.2h.2l.2-.4v-.3l.3-.3.3-.3.2-.4 1 .4-.3.4-.2.5-.2.3-.2.4-.2.3-.2.3-.2.2-.2.2-.2.3-.3.2h-.2v.3h-.4l-.2.2H445l-.4-.2h-.2l-.3-.3v-.2l-.4-.2-.2-.2-.2-.2-.3-.2-.3-.3-.3-.4-.2-.4-.3-.4zm2.5-17.2v-1 1h-.6l-.7.2-.5.2-.5.3-.4.3-.5.4-.3.4-.3.4-.3.6-.2.5v.6l-.2.5v.7l-.2.7v.6l.2.7v1.4l.2.7v.8l.3.7v.6l.3.7.2.6.2.5.2.6.2.7.2.5.2.4.2.4.2.4.2.3-1 .5v-.3l-.3-.5-.2-.4-.2-.4v-.6l-.4-.5-.2-.7-.2-.6-.2-.7-.2-.7v-.7l-.3-.6v-.8l-.2-.7V213l-.2-.7v-.8l.2-.7v-.6l.2-.7v-.7l.4-.6.2-.6.4-.6.4-.5.4-.5.5-.4.6-.3.7-.3.7-.2h.8v1zm0-1v1-1z"/>
+        <path fill="#edb92e" d="M379.7 210.8c3.3-1 4 5 3.6 6.6-.4 2-1.2 2.2-2.7 1-1-1.2-4-6.5-1-7.6z"/>
+        <path fill="#21231e" d="M383.8 217.5l-1-.2v-2.8l-.2-.3v-.7l-.2-.3v-.3l-.2-.2v-.3l-.3-.2-.2-.2-.3-.3-.3-.3h-.3l-.3-.2h-.6l-.4-1h1.5l.2.2.3.2.2.2.3.2.2.3.2.2v.3l.3.3v.4l.2.3v.3l.2.3v.3l.2.4v.6l.2.3v2.5zm-3.5 1l.7-.6h.2v.2h.2l.2.2h.2v.2h.4l.2-.2v-.2h.2v-.6h.2v-.3l1 .2v.4h-.2v.4l-.2.3v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-1v-.2h-.3l-.2-.2h-.2v-.2h-.2l-.2-.2v-.2zm-.7-8.2l.3 1h-.3l-.2.2h-.2v.2l-.2.2v.2l-.2.2v1.8l.2.4v.3l.2.3v.2l.2.3.2.3v.3l.2.3.2.3v.2l.3.2v.2l.2.2.3.3.2.2-.7.6h-.2v-.4l-.3-.2v-.2l-.3-.2v-.3l-.3-.2v-.2l-.2-.3v-.3l-.3-.3v-.4l-.2-.3v-.3l-.3-.3v-.7l-.2-.3V212l.3-.2.2-.3.2-.3.3-.2.2-.2h.2l.4-.3z"/>
+        <path fill="#fff" d="M380.7 214c7.7-2.5 9.2 12 8.4 15.5-1 4.5-2.8 5-6.2 2-2.6-2.4-9.7-15-2-17.5z"/>
+        <path fill="#21231e" d="M389.6 229.6l-1-.2v-.8l.2-.4v-2.9l-.2-.7V223l-.3-.7v-.7l-.3-.8-.2-.7-.2-.6-.2-.7-.3-.7-.2-.6-.3-.6-.3-.4-.4-.5-.3-.4-.4-.3-.4-.4-.4-.4-.5-.2h-.5l-.5-.2h-1.1l-.6.3-.4-1 .7-.2h2.2l.7.2.7.2.5.4.5.5.5.4.4.5.4.5.4.6.3.7.3.6.3.6.3.7.2.8.2.8.2.7v.8l.3.7v1.5l.2.7v4.4zm-7 2.3l.5-1 .5.4.2.2.3.3h.3l.3.3h.2l.3.3h.3l.2.2h1.4l.2-.2.2-.2.2-.3.3-.3v-.6l.2-.2v-.3l.2-.4v-.2l.2-.4 1 .2v.4l-.2.4v.4l-.2.4-.2.3v.3l-.2.3-.2.4v.3l-.3.2h-.2v.3l-.3.2h-.2l-.2.3h-.8l-.3.2h-.5l-.3-.2h-.2l-.3-.2h-.4l-.3-.3-.3-.2h-.3l-.3-.3-.3-.3-.2-.2-.3-.3zm-2-18.5l.3 1-.7.2-.6.3-.4.3-.4.4-.4.4-.3.5-.2.5v.5l-.2.6v2.5l.2.6.2.7.2.6.2.7.3.7v.7l.4.6.3.7.4.6.4.6.3.6.4.6.4.5.3.4.3.4.4.4.2.4.3.3-.5 1-.3-.4-.3-.3-.4-.4-.4-.5-.3-.5-.4-.5-.4-.6-.3-.7-.5-.6-.3-.6-.4-.6-.3-.6-.3-.7-.3-.7-.3-.7-.3-.7-.2-.8-.2-.8v-.7l-.2-.7V218l.2-.7.2-.6.2-.6.3-.5.4-.5.6-.5.6-.4.7-.2.6-.3zm0 .5v-.5.5z"/>
+        <path fill="#edb92e" d="M464.2 137.8c-17.2-1.6-35 .2-52.3 7-14.8 6-13.4 23.2 4.6 47-1.7 3-2.6 6.8-2.7 11h4.8c-1.3-2.8 0-6.4 1.8-9 1-1.5 1.3-1.2 0-3-10.7-15-17.8-28.2-13.6-36 5-9.7 24.6-14.7 57.7-14 0-1 0-1.8-.2-2.7 0 0-.2 0-.3-.2z"/>
+        <path fill="#21231e" d="M412 145.4l-.3-1 1.7-.6 1.6-.6 1.7-.6 1.6-.5 1.6-.4 1.6-.5 1.6-.4 1.7-.4 1.5-.4 1.7-.4 1.6-.4 1.7-.3 1.6-.3 1.8-.3h1.6l1.7-.3 1.7-.2 1.7-.2 1.6-.2h3.3l1.6-.2h11.5l1.6.2h1.6l1.6.3v1l-1.7-.2h-4.9l-1.6-.2h-9.7l-1.6.2H443l-1.5.3-1.7.2-1.6.2-1.6.2H435l-1.7.4-1.6.3-1.7.3-1.6.4-1.6.3-1.7.5-1.5.4-1.6.4-1.8.5-1.6.6-1.6.6-1.7.6-1.6.6-1.6.6zm5 46.7l-1-.4.2.5-1.7-2-1.5-2.3-1.5-2-1.3-2.2-1.3-2-1.2-2-1-2-1-2-1-2-.7-1.7-.6-1.8-.5-1.8-.6-1.7-.4-1.6-.3-1.7-.2-1.6v-4.4l.2-1.3.3-1.3.4-1.2.5-1.2.5-1.2.7-1 .8-1 .8-1 1-.7 1-.8 1.3-.8 1.4-.6 1.3-.5.4 1-1.2.5-1.2.6-1 .7-1 .8-1 1-1 .8-.6 1-.7 1-.5 1-.5 1-.3 1.2-.3 1.2-.2 1.2v3.8l.2 1.5.3 1.7.3 1.6.5 1.6.6 1.6.7 1.8.8 1.8 1 2 .8 1.8 1 2 1.2 2 1.2 2 1.4 2 1.4 2.2 1.5 2 1.7 2.3v.6zm0-.5l.2.3-.2.3v-.5zm-3 11v1l-.6-.6v-2.5l.2-.4v-1l.2-.4v-.7l.2-.5v-.4l.2-.2v-.4l.2-.3v-.3l.2-.3v-.4l.2-.3v-.3l.2-.3v-.3l.3-.3v-.3l.2-.2.2-.3v-.3l.3-.3v-.4l1 .5v.4l-.3.2v.3l-.2.2-.2.3v.3l-.2.3v.4l-.2.3v.3l-.2.4v.3l-.2.3v.3l-.2.4v.7l-.2.3v.8l-.2.4v.8l-.2.4v1.4l-.2.4v.7l-.5-.6zm0 1h-.6v-.6l.5.5zm4.3-.4l1-.4-.5.8h-4.6v-1h4.6l-.5.7zm1-.4l.3.7h-.8l.4-.7zm1-9l.7.6-.2.2v.3l-.2.2-.2.2v.2l-.3.3v.4l-.2.3-.2.2v.3l-.2.3v.2l-.2.3v.7l-.2.2v.5l-.2.3v2.2l.2.3v.4l.2.2-1 .5v-.5l-.2-.3v-.7l-.2-.3v-2.7l.2-.3v-.3l.2-.2v-.3l.2-.3v-.3l.2-.4v-.3l.2-.3.2-.3v-.2l.2-.3.2-.3v-.3l.3-.3v-.3h.3l.2-.3zm0-2.5l.7-.5.2.3.2.3v.2h.2v.4h.2v.4l.2.2v.5l-.2.2v.2h-.2v.2l-.2.2v.2h-.2v.3l-.2.2-.8-.6v-.2l.2-.2.2-.2v-.2h.2v-.4h.2v-.2h-.2v-.2l-.2-.2v-.3h-.2v-.3h-.2zm-13.8-36.5l1 .5-.4.7-.2.7-.2.8-.2.8v4.5l.2 1 .3 1v1l.5 1 .3 1.2.4 1 .5 1.2.5 1 .5 1.2.6 1.2.6 1.2.6 1.3.7 1 .7 1.4.8 1.3.8 1.3.8 1.3 1 1.3.8 1.4 1 1.3.8 1.4 1 1.4 1 1.5-.8.6-1-1.3-1-1.4-1-1.4-1-1.5-.8-1.3-.8-1.4-1-1.3-.7-1.3-.8-1.3-.8-1.4-.7-1.2-.7-1.3-.6-1-.6-1.3-.5-1.2-.5-1.2-.5-1.2-.4-1-.5-1-.3-1.2-.3-1-.3-1-.2-1.2v-1l-.2-1V158l.3-.8.3-1 .2-.7.3-.8zm57.7-13.7h1l-.5.5h-14.5l-2.6.2H445l-2.5.3-2.4.2-2.3.3-2.2.2-2.2.3-2 .4-2 .3-2 .4-1.8.4-1.8.4-1.7.5-1.6.5-1.5.6-1.5.5-1.3.5-1.3.7-1.3.6-1 .7-1 .7-1 .7-.8.7-.8.8-.7.8-.6.8-.6 1-1-.5.7-1 .7-.8.7-1 .8-.7 1-.8 1-.8 1-.8 1-.7 1.2-.7 1.3-.7 1.4-.6 1.6-.6 1.5-.5 1.7-.7 1.7-.5 1.8-.4 2-.5 1.8-.5 2-.3 2.2-.4 2.2-.3 2.2-.2 2.4-.3 2.4-.2 2.5-.2h2.5l2.7-.2h2.7l2.8-.2h9l-.6.6zm1 0v.5h-.5l.5-.5zm-1-2.3l.7-.7v1.9h.2v1h-1v-2.3l-.2-.2v-.4.3zm.7-.7v.3-.2zm-1.2-.4l.8.7v-.6.2h.2v.2l-.7.7v-.4h-.2v-.6zm0 .7l-.3-.2.3-.4v.7zm.8 0l-.8-.6h.4l.4.7zm-.4-.7h1l-.6.8-.4-.7z"/>
+        <path fill="#fff" d="M380.6 142.7c3.4 0 6 2.7 6 6s-2.6 6.3-6 6.3-6.2-2.7-6.2-6.2a6 6 0 016.2-6z"/>
+        <path fill="#21231e" d="M387.2 148.8h-1c0-2-1.2-4-3-5a5.6 5.6 0 00-2.6-.6v-1c2.2 0 4.5 1.2 5.6 3a6.7 6.7 0 011 3.6zm-6.6 6.7v-1c2 0 4-1.2 5-3a7 7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2 1.2 4.2 3 5a5.6 5.6 0 002.6.7v1a6.6 6.6 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.6-6.7v1.2c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1c0-2.2 1-4.4 3-5.6a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M392.6 138.7c3.4 0 6.2 2.8 6.2 6.2 0 3.3-2.8 6-6.2 6a6 6 0 01-6-6c0-3.5 2.6-6.3 6-6.3z"/>
+        <path fill="#21231e" d="M399.3 145h-1c0-2.2-1.3-4.3-3.2-5.2a5.6 5.6 0 00-2.4-.6v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.7zm-6.7 6.6v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.7-2.7h1c0 2.2-1.2 4.4-3.2 5.6a6.6 6.6 0 01-3.4 1zM386 145h1c0 2 1.2 4 3 5a5.6 5.6 0 002.6.6v1a6.7 6.7 0 01-5.6-3.2 6.7 6.7 0 01-1-3.5zm6.6-6.8v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.7h-1c0-2.4 1.2-4.7 3.2-5.8a6.6 6.6 0 013.4-1z"/>
+        <path fill="#edb92e" d="M394.2 144a261.2 261.2 0 002 2.4c-9.8 5.4-14 11-13 16.7.2 1 3.2 11.5 9.8 31.7 4.5 3 7.8 6 10 8.4-.2.4.8 1.2.5 1.5.7 3-2.8 2.4-5 1.7-1.2-3-4.6-6-6.6-7.5-.5-.2-2-1-2-1.4l-10.2-31.6c-3-9.8 3.6-16.8 14.4-21.7z"/>
+        <path fill="#21231e" d="M396.3 147l-.5-1v.7h-.2v-.2h-.2v-.2l-.2-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2l.8-.7.2.2h.2v.4h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l.2.2v1zm.2-1l.3.6-.5.3.2-1zm-12.7 17l-1 .2v-3.9l.2-.6.2-.5.2-.6.2-.5.3-.5.2-.5.3-.6.4-.5.3-.6.4-.6.5-.5.4-.6.6-.5.5-.5.6-.5.6-.6.5-.5.7-.4.7-.5.6-.5.8-.5.8-.5 1-.5.7-.5.8-.5.5 1-1 .4-.7.5-.8.4-.8.5-.8.4-.7.5-.7.4-.6.5-.7.4-.6.5-.6.4-.5.5-.6.4-.5.6-.5.5-.4.5-.3.5-.3.5-.3.5-.2.5-.2.5-.2.5-.2.5-.2.5v.5l-.2.5v3.1zm0 0zm9.5 31.3l-.6.8-.2-.2-.6-1.8-.7-1.8-.5-1.8-.6-1.7-.5-1.6-.5-1.5-.5-1.5-.5-1.5-.4-1.4-.4-1.2-.4-1.3-.4-1.3-.4-1-.3-1.3-.4-1-.3-1-.3-1-.3-1-.3-.8-.2-.8-.2-.8-.2-.6-.2-.7v-.5l-.3-.5v-.5l-.2-.4v-.8h-.2v-.3h1v.3l.2.3v.4l.2.3v.5l.2.5.2.6.2.7.2.7.2.7.2 1 .3.7.2 1 .2 1 .3 1 .3 1 .4 1 .4 1.2.3 1.2.3 1.3.5 1.3.4 1.4.5 1.5.4 1.5.7 1.6.5 1.6.5 1.7.6 2 .6 1.7.5 1.8-.2-.2zm-.6.8l-.2-.2.2.3zm10.7 8.4l-.7-.6v.6l-.2-.2-.2-.2-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2-.2-.2-.2-.3-.3-.2-.3-.2-.2-.2-.3-.3-.3-.3-.3-.2-.4-.3-.3-.2-.4-.3-.4-.3-.3-.2-.4-.3-.4-.3-.4-.3-.3-.3-.5-.3-.4-.2-.3-.3-.4-.2-.4-.3-.5-.3-.4-.3-.3-.3.6-.7.4.3.4.3h.5l.4.4.3.3.4.3.4.3.5.3.3.2.4.3.3.4.4.3.2.2.4.2.3.3.2.2.3.3.3.3.3.2.4.3.3.2.3.3.3.3.2.2.3.3.3.3.3.3.2.2.3.2.2.3.2.2.2.3v.6zm0-.6l.3.3-.3.4v-.6zm.6 1.6l-1 .2.2-.5v.2h-.2v.2-.2l-.2-.2v-.2h-.2v-1.2l.8.6v-.2h.2v.2l.2.2v.2l.2.2v.7l-.2.2.2-.6zm-1 .2v-.3l.2-.2-.2.6zm-5 1.8l1-.4-.4-.3h.4l.2.2h.7l.4.2h2.3v-.2h.2v-1.4l1-.2v1.6l-.2.3v.2l-.2.2h-.2l-.2.2h-.4l-.2.2h-3l-.3-.2h-.5l-.3-.2h-.5l-.3-.4zm.2.3h-.2v-.3l.2.3zm-6.6-7.5l.6-1 .2.3h.2l.2.3h.2l.3.3.2.3.2.2.2.2.2.2h.2l.2.3.3.2v.3l.4.2.2.3.2.2.3.3.3.2.2.3.3.3.2.2.2.3.2.4.2.3.2.3.2.2.2.3v.3l.3.3v.4l.3.3v.3l-1 .4v-.3l-.2-.4-.2-.3v-.2l-.3-.2v-.3l-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.2-.2-.3-.3-.2-.2-.3v-.2l-.3-.3-.3-.2-.2-.2-.2-.2-.3-.2-.2-.2-.2-.2h-.2l-.2-.3h-.2l-.2-.3h-.2l-.2-.3h-.2l-.2-.2zm.6-1l.3.3-.3-.2zm-2.7-.7l1-.3.2.2h.2v.2h.2v.2h.4v.2h.2l.2.2h.2l-.6 1-.2-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2zm-10-31.7l.8-.3.3 1 .3 1 .2.8.3 1 .3 1 .3.8.4 1 .3 1 .3 1 .3 1 .3 1 .3.8.2 1 .4 1 .3 1 .2 1 .3 1 .3 1 .4 1 .3 1 .3 1 .3 1 .5 1 .3 1 .3 1 .5 1 .3 1 .3 1 .4 1.2.4 1 .3 1 .4 1.2-1 .3-.3-1-.2-1.2-.3-1-.4-1-.2-1-.3-1-.3-1.2-.4-1-.3-1-.3-1-.4-1-.3-1-.3-1-.3-1-.4-1-.4-1-.3-1-.4-1-.3-1-.3-.8-.3-1-.4-1-.3-1-.3-1-.3-.8-.3-1-.2-1-.3-1-.3-.8-.3-1-.4-.8-.2-1zm15-22l-.7.5h.6l-1 .6-1 .4-1 .5-.8.4-1 .5-.7.4-1 .5-.7.5-.8.5-.7.6-.7.6-.5.6-.7.6-.5.6-.6.7-.5.6-.4.7-.4.6-.4.7-.3.7-.3.7-.3.7v.8l-.2.7v.7l-.2.8v2.6l.3.8v1l.3.7-1 .3-.2-1v-.8l-.3-1V159l.2-1 .2-.7.2-.6.3-.8.4-.7.5-1 .4-.6.4-.7.6-.7.5-.7.6-.6.8-.6.6-.6.8-.6.7-.6.7-.5.8-.6 1-.5.7-.5 1-.5 1-.5.8-.5 1-.5 1-.5.6.2zm-.5-.3l.4-.2.2.4-.6-.2z"/>
+        <path fill="#edb92e" d="M356 217l-.4 2c-2.8.5-5.3.7-7.3.3 3.4-3.3 6-4 7.6-2.4z"/>
+        <path fill="#21231e" d="M355 218.8l.4-2 1 .2-.3 2-.3.4-.6-.6zm1 0v.5h-.3l.4-.4zm-8 .2l.7.7-.3-1 .2.2h4.1l.3-.2h1l.2-.2h.7l.2-.2h.3l.2 1h-.8l-.4.2h-.5l-.4.2h-1.3v.2h-3.7l-.4-1zm.2 1l-1-.3.8-.7.2 1zm8.2-3l-1-.2.2.5v-.2h-.6v-.2h-.6l-.2-.2H353v.2h-.6l-.2.3-.2.2h-.3l-.2.2-.3.2-.2.2-.3.2-.3.2-.2.2-.3.2-.4.3h-.3l-.3.4-.3.3-.7-.7.3-.3.3-.3.3-.3.2-.2.3-.2.3-.2.3-.3h.4l.3-.3h.3l.2-.3h.3l.3-.3h.6l.3-.2h.5l.4-.2h1.3l.2.2h.3l.2.2h.2l.2.2.3.3v.5zm0-.5v.5-.5zm-.5.4h.4-.5zm.3-.5l.2.2v.3l-.2-.5z"/>
+        <path fill="#edb92e" d="M355.6 212.3c1.8.4 2 .7 2.7 1 1 0 2.4 0 3.3-1 4-2.2 4 2 2.5 5-1 2.4-.5 5 .6 7 1.2 2.2 1 3.2 0 4l-1.6 1c-1 1.2-1.8 1-2-.6-3.8-1.6-5-5.3-6.2-8.6-1.7-4.7-7.8-5.8.8-7.7z"/>
+        <path fill="#21231e" d="M358.4 212.7v1h-.7v-.2h-.4l-.2-.2h-.4l-.2-.2h-.8l-.3-.2.2-1h.4l.2.2h.4l.2.2h.4v.2h.8v.2h.4zm3-.7l.5 1v-.2l-.2.2h-.3v.2h-.2l-.2.2h-.2l-.2.2h-2.1v-1h2.2l.2-.2h.2v-.2h.2l.2-.2zm0 0zm3 5.6l-.8-.4v-.3l.3-.4v-.5l.2-.2v-.6l.2-.3v-2.2h-.2v-.2h-.2v-.2h-1.2l-.3.2-.3.2-.3.2-.6-1 .4-.2.3-.2h.5l.3-.2h1.8l.2.2.2.2v.2l.2.3v.4l.2.3v2.4l-.2.3v.3l-.2.4v.3l-.2.3v.3l-.3.3zm.6 6.3l-1 .4v-.4l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.5l-.2-.2v-.8l-.2-.2v-2.3l.2-.2v-.3l.2-.3v-.3l.2-.2 1 .4-.2.2v.4l-.2.2v.8l-.2.2v2l.2.2v.5l.2.2v.4h.2v.2l.2.2v.4h.2zm0 4.6l-.6-1h.2v-.2h.2v-1.6l-.2-.3v-.3l-.2-.2v-.2l-.2-.2v-.2l.8-.5v.2l.2.2v.2l.2.2v.2l.2.2v.2l.2.3v1.7l-.2.2v.2h-.2v.2h-.2v.2l-.2.2zm0 0zm-1.6 1l-.8-.7v-.2h.2l.2-.2h.2v-.2h.4v-.2h.2v-.2h.4v-.2h.2l.6.8h-.2v.2h-.4v.2h-.2l-.2.2h-.2v.2h-.2l-.2.2zm-.8-.7v-.2zm-1.8 0l.4-.8.3.4v.5h.2v.2h.4v-.2h.2v-.2h.2l.8.6-.2.2-.2.2-.3.2h-.2v.2h-1.1l-.2-.2v-.2l-.2-.2v-.4h-.2v-.7l.2.4zm.4-.8h.3v.4l-.3-.4zm-7-8l1-.3.2.2v.3l.2.3v.4l.2.3v.3l.3.3.2.4v.3l.2.3.2.3v.3l.3.3v.2l.2.3v.2l.3.3.2.3.2.2v.3l.3.2.2.3.2.2.2.2.2.2h.2l.3.3.3.2.3.2.3.2h.3l.2.2-.4 1-.3-.2-.4-.2-.2-.2-.4-.2-.3-.2-.2-.3-.3-.3-.2-.2-.3-.3-.3-.2-.2-.3-.2-.3-.2-.3-.3-.4-.2-.3-.2-.3-.2-.3v-.4l-.2-.3v-.3l-.3-.3v-.3l-.3-.2v-.3l-.2-.4v-.2l-.2-.3-.2-.3v-.3l-.2-.4v-.3zm1.4-8.4v1l-.6.2-.7.2h-.6l-.5.3h-.4l-.4.3h-.3v.3l-.2.2v.2h-.2v.2l.2.3.3.2.2.3.2.2.2.3.3.2v.3l.4.3.2.3.3.5.2.3.2.4.3.4.2.4v.5l.3.4-1 .3v-.4l-.3-.5-.2-.4-.2-.3-.3-.3-.2-.3v-.2l-.4-.3-.2-.3-.3-.3v-.4l-.3-.2-.3-.3-.3-.4v-.2l-.2-.3-.2-.4v-.6l.3-.3v-.2l.3-.3h.3l.4-.3.4-.3.5-.2h.4l.7-.3.8-.2.7-.2zm0 0zm0 1v-1 1zm0-1z"/>
+        <path fill="#edb92e" d="M357 212.5c3.5 1.2 4-.7 6-.6-.8 5-1.7 7.7-7 5-3-1.6-6.7.7-7.4 2.3-.3.6-2-.6-2.6-2-2.6-5.8 6.7-6.4 11-4.8z"/>
+        <path fill="#21231e" d="M363.6 212l-1-.2.5.6H362v.2h-.3l-.2.2h-.2l-.3.2h-.3v.2h-.7l-.2.2h-2l-.4-.2h-.3l-.3-.2.3-1h.3l.3.2h.4l.2.2h1.3l.2-.2h.2l.2-.2h.5l.2-.2h.2l.3-.2h.5l.2-.2h.4l.6.6zm-.5-.6h.7v.6l-.6-.6zm-7.2 6l.4-1 .5.4.5.2h.4l.4.3h.3l.4.2h1.7l.2-.2.3-.3.2-.3v-.2l.2-.2.2-.3v-.3l.2-.3v-.3l.2-.2v-.4l.2-.4v-.4l.2-.4v-.9l.2-.5 1 .2v.5l-.2.5v.8l-.2.5v.4l-.2.4v.4l-.3.4v.3l-.2.4-.2.4v.2l-.3.3-.2.3-.2.2-.3.2-.2.2h-.2l-.3.2h-.3l-.3.2h-1.6l-.4-.2-.4-.2h-.4l-.4-.3-.5-.3-.5-.3zm-6.8 2l-1-.3h.2v-.3h.3v-.3l.3-.2v-.2l.3-.2h.3l.2-.3.2-.2h.3l.2-.3h.3l.2-.3h.3l.3-.2h.3l.2-.2h.3l.4-.2h2.3l.3.2h.3l.3.2h.2l-.4 1h-.3l-.2-.2h-.5l-.3-.2h-1.8l-.3.2h-.3l-.3.2h-.3l-.2.3h-.2l-.3.2h-.2l-.2.2h-.2v.2l-.2.2h-.2v.3h-.2v.2h-.2v.2h-.2zm-3.5-2l1-.3v.4h.2v.4h.2v.2l.2.2h.2v.2l.2.2h.2v.2h.4v.2l.8.5v.2l-.3.2h-1v-.2h-.2l-.3-.2h-.2v-.2l-.2-.2-.2-.2h-.2v-.3h-.2v-.2h-.2v-.3h-.2v-.4h-.2v-.3zm11.8-5.4l-.3 1-.4-.2h-.5l-.3-.2h-.5l-.5-.2h-5l-.5.2-.4.2h-.4l-.4.3-.4.3-.3.2v.2l-.4.2-.2.2v.3l-.3.2v1.6l.3.4.2.5-1 .5-.2-.5-.2-.6V215l.2-.6.2-.4.2-.4.3-.3.2-.4.3-.3.4-.3.4-.2.4-.2.5-.2h.5l.5-.3h1.1l.5-.2h3.3l.6.2h.5l.4.2.5.2h.3zm0 .5v-.5.5z"/>
+        <path fill="#fff" d="M458.8 124.5c3.4 0 6.2 2.7 6.2 6 0 3.5-2.8 6.3-6.2 6.3s-6-2.8-6-6.2a6 6 0 016-6z"/>
+        <path fill="#21231e" d="M465.5 130.6h-1c0-2-1.3-4.2-3.3-5a5.5 5.5 0 00-2.4-.6v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.2 5-3a5.6 5.6 0 00.6-2.7h1c0 2.3-1 4.5-3 5.7a6.6 6.6 0 01-3.6 1zm-6.6-6.7h1c0 2 1.3 4.2 3.2 5a5.5 5.5 0 002.4.7v1a6.6 6.6 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.6 5.6 0 00-.6 2.6h-1c0-2.2 1.2-4.4 3.2-5.6a6.6 6.6 0 013.4-1z"/>
+        <path fill="#fff" d="M446.3 124.5a6 6 0 016 6c0 3.5-2.6 6.3-6 6.3s-6-2.8-6-6.2c0-3.4 2.6-6 6-6z"/>
+        <path fill="#21231e" d="M453 130.6h-1c0-2-1.3-4-3.2-5a5.5 5.5 0 00-2.5-.6v-1c2.3 0 4.5 1.2 5.6 3a6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.3 5-3a7 7 0 00.6-2.7h1c0 2.3-1.3 4.5-3.2 5.7a6.6 6.6 0 01-3.5 1zm-6.6-6.7h1c0 2 1.2 4.2 3 5a5.5 5.5 0 002.6.7v1a6.5 6.5 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.6 5.6 0 00-.6 2.6h-1a7 7 0 013-5.6 6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M433.8 125.5a6 6 0 016 6c0 3.5-2.6 6.3-6 6.3s-6-2.8-6-6.2 2.6-6 6-6z"/>
+        <path fill="#21231e" d="M440.4 131.6h-1c0-2-1.2-4-3-5a5.5 5.5 0 00-2.6-.6v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.6zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.6-6.7h1c0 2.2 1.3 4.3 3.2 5.2a5.5 5.5 0 002.4.5v1a6.4 6.4 0 01-5.6-3.2 6.7 6.7 0 01-1-3.4zm6.6-6.6v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1c0-2.3 1.3-4.6 3.3-5.7a6.6 6.6 0 013.3-1z"/>
+        <path fill="#fff" d="M422.3 127.7c3.3 0 6 2.8 6 6.2 0 3.3-2.7 6-6 6s-6.2-2.7-6.2-6 3-6.3 6.3-6.3z"/>
+        <path fill="#21231e" d="M429 134h-1a6 6 0 00-3.3-5.2 5.5 5.5 0 00-2.4-.6v-1c2.2 0 4.4 1.2 5.6 3.2a6.7 6.7 0 011 3.5zm-6.7 6.5v-1c2 0 4-1.2 5-3 .4-1 .6-1.8.6-2.6h1c0 2-1.3 4.3-3.3 5.5a6.6 6.6 0 01-3.4 1zm-6.7-6.6h1c0 2 1.2 3.8 3 4.8a5 5 0 002.7.7v1a7 7 0 01-5.7-3 6.7 6.7 0 01-1-3.6zm6.7-6.8v1c-2 0-4.2 1.3-5 3.2a5.7 5.7 0 00-.7 2.5h-1c0-2.5 1.3-4.7 3.3-6a6.6 6.6 0 013.3-.8z"/>
+        <path fill="#fff" d="M346.3 159.4a6 6 0 016 6.2c0 3.4-2.6 6.2-6 6.2s-6-2.8-6-6.2a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M353 165.6h-1c0-2-1.3-4-3.2-5a5.6 5.6 0 00-2.5-.7v-1c2.2 0 4.5 1 5.6 3a6.7 6.7 0 011 3.6zm-6.7 6.7v-1c2 0 4-1.2 5-3a7 7 0 00.6-2.7h1c0 2.3-1.3 4.5-3.2 5.7a6.6 6.6 0 01-3.5 1zm-6.7-6.7h1c0 2 1.3 4.2 3.2 5a5.6 5.6 0 002.5.7v1a7 7 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.7-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.6h-1a7 7 0 013-5.7 6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M356.8 152.8c3.4 0 6.2 2.7 6.2 6 0 3.6-2.8 6.3-6.2 6.3-3.4 0-6-2.6-6-6a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M363.5 159h-1c0-2.2-1.3-4.2-3-5a5.6 5.6 0 00-2.7-.7v-1a7 7 0 015.7 3 6.7 6.7 0 011 3.6zm-6.7 6.6v-1a5.7 5.7 0 005.7-5.7h1a7 7 0 01-3 5.6 6.6 6.6 0 01-3.7 1zm-6.6-6.7h1c0 2 1.2 4 3 5a5.6 5.6 0 002.6.6v1a7 7 0 01-5.6-3 6.7 6.7 0 01-1-3.7zm6.6-6.8v1c-2 0-4 1.3-5 3.2a5.7 5.7 0 00-.6 2.5h-1c0-2.3 1.2-4.6 3-5.8a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M368.8 147c3.4 0 6 3 6 6.3 0 3.4-2.6 6.2-6 6.2s-6-2.8-6-6.2a6 6 0 016-6.2z"/>
+        <path fill="#21231e" d="M375.4 153.3h-1c0-2-1.2-4.2-3-5a5.6 5.6 0 00-2.6-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1a7 7 0 01-3 5.7 6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2 1.4 4 3.2 5a5.6 5.6 0 002.6.7v1a6.9 6.9 0 01-5.7-3.2 6.7 6.7 0 01-1-3.5zm6.8-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.6 2.7h-1c0-2.3 1-4.5 3-5.7a6.6 6.6 0 013.6-1z"/>
+        <path fill="#fff" d="M338.2 169.5a6 6 0 016 6.2c0 3.4-2.6 6.2-6 6.2s-6.2-3-6.2-6.3 2.8-6.2 6.2-6.2z"/>
+        <path fill="#21231e" d="M344.8 175.7h-1c0-2-1.3-4.2-3.2-5a5.6 5.6 0 00-2.4-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.7v-1c2 0 4-1.3 5-3a5.7 5.7 0 00.6-2.7h1c0 2.3-1.2 4.5-3.2 5.7a6.6 6.6 0 01-3.4 1zm-6.7-6.7h1c0 2 1.2 4 3 5a5.6 5.6 0 002.7.7v1a6.9 6.9 0 01-5.7-3.2 6.7 6.7 0 01-1-3.5zm6.7-6.7v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.7 2.7h-1c0-2.3 1.2-4.5 3.2-5.7a6.6 6.6 0 013.5-1z"/>
+        <path fill="#edb92e" d="M454.2 276.3l-22 12.8-23.4-10 22-12.8z"/>
+        <path fill="#21231e" d="M431 266.7l-22 12.8-.4-1 22-12.7h.5v1zm-.4-1h.5-.4zm23.5 11l-23.3-10 .4-1 23.4 10v1h-.3zm.4-1l1 .5-1 .5v-1zm-22.4 13l22-13 .5 1-22 12.8h-.5v-.8zm.5.8l-.2.2h-.3l.5-.2zm-23.4-11l23.4 10-.4 1-23.3-10v-1h.4zm-.3 1l-1-.4 1-.4v1z"/>
+        <path fill="#c6363c" d="M431 270.6c5.8-.3 10.5 2.5 10.8 6.3.2 3.7-4.2 7-9.8 7.4-5.7.3-10.4-2.5-10.7-6.3-.2-3.6 4.2-7 9.8-7.4z"/>
+        <path fill="#21231e" d="M442.3 277h-1v-.7l-.2-.3v-.6l-.3-.3v-.2l-.3-.2-.2-.3-.2-.3-.3-.2-.3-.3-.2-.2-.3-.2h-.5l-.3-.3-.3-.2-.5-.2-.4-.2h-.3l-.4-.2h-.4l-.5-.3h-.9l-.5-.2h-.8l-.5-.2h-1l-.5.2v-1h3.6l.4.2.5.2h.5l.4.2.5.2.5.2.4.2.3.2.4.2.4.2.4.2.4.3.3.3.4.3.3.3.3.3.2.4.2.3.2.3.2.4v.3l.3.4.2.4v.8zm-10.3 8v-1l.4-.2h.9l.5-.2h.4l.4-.2h.5l.4-.3h.5l.4-.2.4-.2.4-.2.3-.2.4-.2.4-.3.4-.2.3-.2.3-.3.3-.2.3-.3v-.3l.3-.3.2-.4.2-.2v-.3l.2-.2v-.6l.2-.3v-1.1l1-.2v1.6l-.2.4v.3l-.3.5v.3l-.3.4-.3.3v.3l-.4.4-.3.3-.3.3-.3.2-.3.3-.4.3-.4.2-.4.3-.4.3-.4.2-.4.2-.5.2h-.4l-.4.2-.5.2h-.4l-.5.2h-.4l-.5.2h-1zm-11.2-6.8h1v.5l.2.3v.3l.2.3.2.3v.2l.3.3.2.2v.3l.4.2.2.3.3.2.2.2.3.2.4.2.2.2h.4l.4.3h.4l.4.2.4.2h.4l.5.2h1l.4.2h2.3v1H428l-.5-.2h-.4l-.5-.3h-.6l-.4-.3h-.4l-.5-.3-.3-.2-.3-.3-.4-.2-.4-.2-.3-.3-.3-.2-.3-.3-.3-.3-.3-.3v-.3l-.3-.3-.2-.3-.2-.4-.2-.3v-1l-.2-.4zm10.3-8l.2 1h-1.5l-.5.2h-.5l-.5.2-.4.2h-.5l-.4.3-.5.2-.4.2-.3.2-.4.2-.3.2-.3.3-.4.2-.3.3-.3.2-.2.3-.3.2-.2.3-.2.3-.2.4-.2.3v.3l-.3.3v.8l-.2.3v.6l-1 .2V277l.2-.4v-.3l.2-.4v-.5l.3-.3.2-.4.3-.3.2-.3.3-.3.2-.4.4-.3.4-.3.3-.3.4-.3.5-.2.3-.3.5-.3.4-.2.4-.2.6-.2h.4l.5-.2h.5l.5-.3h.5l.5-.2h1.1l.5-.2z"/>
+        <path fill="#edb92e" d="M382.4 270l23.8 9-19.7 13c-5-1.6-9-19-4-22z"/>
+        <path fill="#21231e" d="M406 279.4l-23.8-9 .4-1 23.7 9v1h-.3zm.3-1l1 .4-1 .5v-1zm-20 13.3l19.6-13.2.4.8-19.6 13.3h-.4v-1zm.5 1h-.4.4zm-4.2-23.3l-.4 1h.5l-.4.2-.4.3-.4.4-.2.5-.2.4-.2.7-.2.8v1.5l-.2.8v2.8l.3.8v1l.2.8.2 1 .2 1 .3.7v1l.5 1 .3.7.3.7.5.8.4.6.3.6.4.6.4.5.5.4.4.2.3.3.4.2-.3 1-.6-.3-.5-.3-.5-.3-.5-.5-.4-.6-.6-.6-.4-.7-.4-.7-.4-.7-.4-1-.3-.8-.3-1-.3-.8-.4-1-.2-.8-.2-1-.2-1v-.8l-.3-1v-5.2l.3-.8.2-.7.3-.6.3-.6.4-.5.4-.5.5-.4h.6zm-.5 0h.6-.5zm.4.4l.2-.4-.2.5zm-.3-.4h.6-.5z"/>
+        <path fill="#0c4076" d="M382.8 274.3c5.7-.6 10.5 2 11 5.8.3 3.8-4 7.4-9.6 8-3.6.3-6-3-6.3-6.3-.5-3.4 1-7 4.8-7.4z"/>
+        <path fill="#21231e" d="M394.2 280h-1v-.5l-.2-.3v-.3l-.2-.4-.2-.3-.2-.2-.2-.2-.2-.3-.2-.2-.3-.3-.2-.2-.3-.2-.3-.2-.4-.2-.3-.2-.4-.2-.3-.2h-.4l-.5-.3h-.4l-.4-.2h-.8l-.5-.2h-3.6l-.2-1h3.8l.4.2h.5l.4.2.4.2h.4l.5.3.4.2h.5l.4.3.2.2.4.3.3.2.2.3.3.3.3.3.2.2.3.3.2.3.2.3v.5l.3.4v.2l.2.4v.4zm-10 8.4v-1h1l.5-.2h.4l.6-.2.5-.2h.5l.4-.3.4-.2h.4l.4-.3.3-.3.4-.2.2-.2.4-.3.3-.2.2-.3.3-.2.2-.3.3-.3.2-.3.2-.2.2-.3v-.4l.3-.3v-.8l.2-.4v-1h1v1.6l-.2.3v.3l-.2.4-.2.3-.2.4-.2.3-.2.4-.3.4-.2.3-.3.3-.3.3-.5.3-.3.3h-.4l-.4.4-.4.2-.4.3h-.4l-.4.3-.5.2h-.5l-.4.3-.5.2h-.6l-.5.2h-.7l-.5.2h-.5zm-6.8-6.7h1v.7l.2.3v.3l.2.4v.3l.2.2v.2l.2.3.2.2v.3l.3.2.2.3v.2l.2.2h.2l.2.3h.2l.2.3.2.2h.3l.2.2h.2l.2.2h.2l.3.2h1.4v1h-2.1l-.3-.2h-.4l-.3-.3-.3-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.3-.2-.2v-.2l-.3-.3-.2-.3v-.2l-.3-.4v-.3l-.3-.3-.2-.3v-.3l-.2-.3v-.6l-.2-.3v-.3zm5.4-8v1h-.2l-.4.2h-.8l-.3.3-.3.2-.3.2-.2.2h-.2l-.2.2v.2l-.3.2v.3h-.3v.3l-.2.3-.2.2v.7l-.2.3v.4l-.2.3v2.2h-1V279l.2-.3v-.3l.2-.2v-.3l.2-.3.2-.3v-.4l.3-.3.2-.3.2-.2v-.3l.3-.2.3-.2h.2l.3-.3.4-.2.3-.2h.3l.3-.2h.7l.4-.2h.4z"/>
+        <path fill="#fff" d="M457.5 280.4c1.7 0 3.2 1.5 3.2 3.2 0 1.8-1.5 3.3-3.2 3.3-1.8 0-3.2-1.6-3.2-3.4 0-1.7 1.4-3.2 3.2-3.2z"/>
+        <path fill="#21231e" d="M461.2 283.6h-1v-.6l-.2-.2v-.2l-.2-.3v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.7v-1h1l.3.2.2.2h.2l.3.2v.2h.2v.2h.2v.3h.2v.2l.2.2v.2h.2v.2l.2.3v.5l.2.2v.2zm-3.7 3.8v-1h.4l.3-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2.2-.2v-.2l.2-.2v-1h1.2v.8l-.2.2v.3l-.2.2v.2l-.2.2-.2.3h-.2v.3h-.3l-.2.2-.3.2-.3.2h-.6v.2h-.6v.2h-.3zm-3.7-3.8h1v1h.2v.2l.2.2v.2l.2.2h.2v.2h.2v.2h.2l.2.2h.2v.2h1v1.2h-.7l-.2-.2h-.5v-.2h-.3l-.2-.2-.3-.2-.2-.2h-.2v-.3h-.2l-.2-.3-.2-.3v-.2l-.2-.3v-.3l-.2-.3v-.8zm3.7-3.7v1h-.9l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.3v.5h-.2v.8h-1v-1.2l.2-.2v-.3h.2v-.3l.2-.2.2-.2v-.2h.4v-.2l.2-.2h.2v-.2h.5v-.2h.4v-.2h1z"/>
+        <path fill="#fff" d="M408.7 283c1.8 0 3.2 1.6 3.2 3.4 0 1.7-1.5 3.2-3.3 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.4-3.3 3.2-3.3z"/>
+        <path fill="#21231e" d="M412.4 286.4h-1v-.9l-.2-.2v-.2l-.2-.2v-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.4l-.2-.2h-.8v-1.2h.7v.2h.7v.2h.3v.2h.3v.2h.3l.2.2.2.3h.2l.2.3.2.3v.3h.2v.6l.2.2v.9zm-3.7 3.7v-1h1v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.3h.2v-.5l.2-.2v-.4h1v.8l-.2.2v.3l-.2.2v.3h-.2v.3h-.2l-.2.3h-.2v.2h-.3l-.2.2h-.2v.2h-.3v.2h-.5l-.2.2h-.8zm-3.7-3.6h1v.8h.2v.5h.2v.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.5v.2h.7v1h-1.2v-.2h-.3v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.3h-.3v-.3h-.2v-.3l-.2-.2v-.2l-.2-.3v-.8zm3.7-3.8v1h-.7v.2h-.5v.2h-.2l-.2.2v.2h-.2l-.2.2v.2l-.2.2v.2h-.2v.7l-.2.3v.4h-1v-1l.2-.2v-.3l.2-.3.2-.3v-.3h.3v-.3h.2l.2-.2.2-.2h.2v-.2h.6l.3-.2h.5l.3-.2h.2z"/>
+        <path fill="#fff" d="M407 268.3c1.8 0 3.2 1.4 3.2 3.2 0 1.8-1.4 3.2-3.2 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.4-3.2 3.2-3.2z"/>
+        <path fill="#21231e" d="M410.7 271.5h-1v-.7l-.2-.2v-.3l-.2-.2h-.2v-.4h-.2v-.2h-.2l-.2-.2h-.2l-.2-.2h-.5v-.2h-.4v-1h.8v.2h.3l.3.2h.2l.3.2h.2v.2l.3.2.2.2.3.3.2.3v.3h.2v.4l.2.2v1zm-3.7 3.7v-1h1v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2.2-.2v-.4h.2v-1h1v1.2l-.2.2-.2.3v.3h-.2l-.2.3h-.2v.3h-.3v.2h-.2v.2h-.2l-.2.2h-.5l-.3.2h-.7zm-3.7-3.7h1v.8l.2.2v.4h.2v.2l.2.2v.2h.2v.2h.2v.2h.2l.2.2h.5l.2.2h.5v1h-.9l-.3-.2h-.2l-.3-.2-.3-.2h-.2l-.2-.2-.2-.3h-.3v-.3l-.2-.3v-.3h-.2v-.4l-.2-.2v-.8zm3.7-3.7v1h-.8v.2h-.5l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.3l-.2.2v.7h-1v-1.2h.2v-.6h.2v-.3h.2v-.3h.3l.2-.2v-.2h.3v-.2h.3l.2-.2h.4v-.2h.5l.2-.2h.7z"/>
+        <path fill="#fff" d="M457.3 266.2c1.8 0 3.2 1.4 3.2 3.2 0 1.8-1.4 3.2-3.2 3.2a3.2 3.2 0 01-3.2-3.2c0-1.8 1.6-3.2 3.3-3.2z"/>
+        <path fill="#21231e" d="M461 269.4h-1v-.8h-.2v-.3l-.2-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2h-.2l-.2-.2h-.2l-.3-.2h-.7v-1h1.1l.2.2h.3l.3.2.3.2.2.3h.2v.2h.2v.2h.2v.3h.2v.3l.2.2v.5l.2.2v.7zm-3.7 3.7v-1h1.2v-.2h.2l.2-.2.2-.2v-.2h.2v-.2h.2v-.2l.2-.2v-.5h.2v-.8h1v1.1l-.2.2v.2l-.2.2-.2.3-.2.3-.2.2-.2.2-.2.2h-.2v.2h-.3v.2h-.4l-.2.2h-1zm-3.7-3.6h1v.5l.2.2v.3l.2.2v.2h.2l.2.2v.2h.2v.2h.2l.3.2h.2l.2.2h.7v1h-1l-.3-.2h-.3l-.3-.2-.3-.2v-.2l-.3-.2-.2-.2v-.2h-.2v-.3h-.2v-.6l-.2-.2v-.7l-.2-.2v-.2zm3.7-3.7v1h-.7v.2h-.4l-.2.2h-.2v.2h-.2v.2l-.2.2-.2.2v.4h-.2v.8h-1.2v-.5l.2-.3v-.4l.2-.2v-.2h.2v-.3h.2v-.3h.2v-.2h.3v-.3l.3-.2.3-.2h.3l.2-.2h1z"/>
+        <path fill="#edb92e" d="M371 237.4c2.3-.8 6 4.6 7 4.5 1.2-3-1.2-10.5-5.5-16.3-3-1-3.2-3-3.8-7.3-.2-1.3-2.7-.4-2.7 2 0 2.3-.3 3.6.3 5.6.2.8 0 1.6-.8 2.3 4.5 1.8 5.6 4 5.4 9z"/>
+        <path fill="#21231e" d="M377.6 241.8l1 .3-.5.4h-.4l-.3-.2-.2-.2-.3-.3-.2-.2-.2-.2-.2-.2-.3-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2-.2-.3-.2-.2-.3h-.3l-.3-.3h-.2l-.3-.3-.3-.2h-.2l-.3-.2h-.4l-.2-.2h-.4l-.4-1h1.3l.3.2h.3l.3.2.2.2h.3l.3.3.2.2h.3l.3.3.3.3v.2l.4.2.2.3.3.2v.2l.4.3.2.2.2.2.2.2.2.2.2.2h.2v.2h.3v.2l-.4.3zm1 .3l-.2.4h-.3l.5-.3zm-6.3-15.8l.4-1 .2.2.3.5.4.5.4.6.4.7.4.5.3.6.5.6.3.6.3.6.4.6.3.6.2.6.2.6.2.5.2.6.2.7.2.5v.6l.3.5v.6l.2.4v.5l.2.4v3.3l-.2.3-1-.2v-.3l.2-.3v-3.6l-.3-.5v-.4l-.2-.5-.2-.5-.2-.5v-.5l-.4-.6-.2-.7-.2-.5-.3-.6-.2-.6-.3-.5-.3-.5-.4-.6-.3-.7-.4-.5-.4-.6-.4-.6-.3-.5-.5-.5-.4-.5.3.2zm.4-1l.2.2-.3-.2zm-4.5-6.7h1v.7l.2.3v1l.2.3v.5l.2.3v.5l.2.2v.4h.2v.3l.2.2v.2h.2v.3h.2l.2.2v.2h.2l.2.2h.2l.2.2h.2l.2.2h.2l.3.2-.4 1h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.2l-.2-.3-.2-.2h-.2v-.2l-.3-.2-.2-.2-.2-.2v-.2l-.2-.2v-.2l-.2-.3v-.2l-.2-.2v-.3l-.2-.2v-.9l-.2-.3v-.6l-.2-.3V219l-.2-.5zm-1.7 1.8h-1v-1l.2-.2.2-.2v-.4h.2l.2-.3h.2l.2-.2.3-.2h.2l.2-.2h1.2v.2h.2v.3l.2.2v.2h-1.6v.2h-.2v.2h-.2v.2h-.2v.3l-.2.2v.8zm.3 5.6l-1 .2v-.6l-.2-.2V224h-.2v-3.6h1v4.2l.2.2v.7l.2.2zm-1 2l-.5.8v-1l.2-.2v-.2h.2v-.4h.2v-.4l-.2-.2v-.2l1-.3v1.8h-.2v.4h-.2v.2h-.2v.2l-.2.2h-.2v-.7zm-.5.8l-.8-.3.7-.6v.8zm5 8.6h1-1v-.5l.2-.5v-2l-.2-.3v-.7l-.2-.3v-.6l-.2-.3v-.2l-.2-.3-.2-.3v-.2l-.3-.3v-.2l-.3-.2-.2-.2-.3-.2-.2-.2-.3-.2h-.3l-.3-.3-.2-.2-.3-.2-.4-.2h-.3l-.4-.2.4-1 .4.2.5.2.4.2.3.2.3.2.4.2.3.2.3.2.3.2v.2l.4.3.2.3.3.3v.2l.3.3v.4l.3.3v.3l.3.3v.7l.2.3v.7l.2.4v2.9h-1zm1 0h-1l.5-.5.6.4zm-1 0v-.4h.5l-.4.4z"/>
+        <path fill="#edb92e" d="M368.8 218.5c-.4 1-.6 1.8-.7 3.4 0 1 .5 2 1.2 3 .8 1 1.8 2 3 2.6.8.5 1.6 1.7 2.3 3 .7 1.4 1.2 3 1.2 4 0 3.5.8 6.7 2.4 7.3 1.2.3 1.6.2 2.4 0-.2-.6 0-1.5-.7-2.4a8 8 0 01-1.4-3.7c0-1-.5-1.6-.2-3.3.4-1.2 1-1.6 1-2.7-.3-2-2-6-4.3-6s-3.4-.3-4.6-3.4c-.3-1-1-1.6-1.2-2z"/>
+        <path fill="#21231e" d="M368.6 222l-1-.2v-1.2l.2-.2v-1h.2v-.7h.2v-.4l1 .3v.4h-.2v1l-.2.2v1.5l-.2.3zm1 2.8l-.8.6v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.4h-.2v-.5l-.2-.2v-.7l-.2-.2v-.7h1v1.1h.2v.7h.2v.4h.2v.4h.2v.2h.2v.2zm3 2.4l-.6 1v-.2h-.4v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.3v-.2h-.2l-.2-.2v-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2.8-.6.2.2.2.2v.2h.2l.2.2v.2h.2l.2.2.2.2h.2v.2h.2v.2h.3l.2.2.2.2h.2v.2zm2.4 3.2l-1 .4v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2l-.2-.2h-.2l.5-1h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l.2.2v.2l.2.2v.2h.2v.3h.2v.3h.2zm1.2 4.2h-1v-.8l-.2-.2v-.8h-.2v-.5h-.2v-.4h-.2v-.5h-.2v-.2l-.2-.2 1-.4v.4h.2v.4h.2v.5l.2.2v.3h.2v.6h.2v1h.2v.7zm-1 0zm3 6.8l-.3 1h-.3l-.2-.2-.3-.3v-.2l-.3-.2h-.2l-.2-.3v-.2h-.2v-.3l-.2-.2v-.3l-.2-.2v-.3l-.2-.2v-.5l-.2-.3v-.8l-.2-.3V236l-.2-.3v-1.5h1v2.1l.2.3v1.4l.2.2v.8l.2.2v.2l.2.2v.4l.2.2v.2l.2.2.2.2v.2h.2v.2h.2l.2.2zm1.7.8l1-.3-.5.5h-.4v.2h-1.4l-.2-.2h-.4l.3-1h.7v.2h1.2v-.2l-.3.7zm1-.3v.4h-.5l.4-.5zm-1.7-2l.8-.7h.2v.4h.2v.4h.2v.8l.2.2v1l-1 .4V241l-.2-.2v-.8h-.2v-.2zm-1.5-4h1v.8h.2v.8l.2.2v.2l.2.2v.2h.2v.5h.2v.2h.2v.2l-.7.7v-.2l-.2-.2v-.4h-.2v-.5h-.2v-.2l-.2-.3v-.2l-.2-.2v-.2l-.2-.3v-.4l-.2-.2v-.5zm1 0zm-1.2-3.4l1 .2v3l.2.2-1 .2v-.8l-.2-.2v-2.6zm1-2.5h1v.7h-.2v.6l-.2.2v.2l-.2.2v.2h-.2v.6h-.2v.2l-1-.2v-.4h.2v-.4l.2-.2v-.2l.2-.2v-.2l.2-.2v-.9zm-4-5.5v-1h1.1l.3.2h.2l.2.2h.3l.2.2.2.2v.2l.3.2v.2l.3.2.2.3v.2l.3.3.2.2.2.3v.2l.2.3v.2l.2.3v.3l.2.2v.3l.2.2v.5l.2.3v.8h-1v-1l-.2-.2v-.4l-.2-.3-.2-.4v-.2l-.2-.2v-.3l-.3-.3v-.2l-.2-.2v-.3l-.2-.2-.3-.3-.2-.2-.3-.3-.3-.2-.3-.2h-.8zm-5-3.7l1-.4v.3l.2.3v.2l.2.2v.2l.2.2v.2l.2.2.2.2v.2h.2v.2h.2v.2h.4v.2h.7v.2h1.7v1H373l-.3-.2h-.4v-.2h-.3v-.2h-.3v-.3h-.3v-.2l-.2-.2-.2-.3-.2-.2v-.2l-.2-.2-.2-.4-.2-.2v-.3l-.2-.2zm-.4-2l-1-.5h1.2v.4h.2v.2h.2v.2h.2v.4h.2v.2l.2.2v.2l.2.2-1 .4v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2h.8zm-1-.5l.5-1 .5 1h-1zm.6.2l.4.2-.4-.2zm-.5-.2l.4-1 .5 1h-1z"/>
+        <path fill="#edb92e" d="M360 227l2-1a6 6 0 014-.2c5.5 1.7 8 11.6 1.8 14-1.2.2-2.3-1-3.4-3.3a20.5 20.5 0 00-4-6.8c-1-1-1-2-.4-2.6z"/>
+        <path fill="#21231e" d="M362 225.5l.3 1h-.4v.2h-.4v.2h-.8v.2h-.2l-.2.2-.7-.7.2-.2v-.2h.4v-.2h.8v-.2h.4v-.2h.4zm4-.2l-.2 1h-.5v-.2h-2.1v.2h-.7l-.2.2-.5-1h.4l.3-.2h.8v-.2h1.6l.2.2h.4zm2 15l-.2-1h-.2l.5-.2h.6l.4-.4.4-.3.3-.4.3-.5.2-.4.2-.3.2-.5v-.5l.2-.5V232l-.3-.4-.2-.5-.2-.5v-.5l-.4-.4-.2-.5-.4-.3-.3-.5-.4-.3-.3-.5-.4-.3-.5-.3-.3-.4-.5-.2h-.4l.2-1h.6l.5.3.7.3.4.4.6.3.5.4.5.6.3.4.4.5.3.5.3.6.3.5.3.7.2.6v.6l.3.5v3.4l-.2.5-.2.6-.3.6-.2.5-.3.5-.4.5-.4.4-.4.3-.6.3-.6.3zm0 0zm-4-3.6l1-.4v.4l.2.2.2.3.2.3v.2h.2v.5h.2v.2l.2.2.2.2h.2v.2h.2l.2.2h.8v1.2h-.8v-.2h-.5l-.2-.2-.2-.2-.2-.2-.2-.2v-.2h-.2l-.2-.2v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.3-.3-.3zm0 0zm-4-6.6l.7-.6.2.2v.2h.2l.2.3v.3h.2l.2.3v.2l.2.2h.2v.3l.3.2v.2l.2.2.2.2v.4l.2.2.2.3v.3l.2.2.2.3v.3l.2.3v.3l.3.3.2.4v.3l.3.3v.3l-1 .4v-.6l-.2-.2v-.3l-.3-.2v-.3l-.2-.2v-.5l-.3-.3v-.2l-.2-.2v-.3l-.3-.2-.2-.3v-.2l-.3-.2v-.2h-.2v-.3h-.3v-.3l-.2-.2-.3-.3v-.2l-.2-.2h-.2v-.2l-.2-.2zm0 0zm0-3.4v1l.3-.2v.2h-.2v.8h.2v.4l.2.2.2.2v.2l-.7.7h-.2v-.2l-.2-.2-.2-.2v-.3h-.2V227h.2v-.2h.2l.4-.2zm-.4 0h.4-.4zm.4 1v-1l.3 1h-.3zm.3 0h-.2.3z"/>
+        <path fill="#edb92e" d="M362.8 227.7c5.4-2 9.4 8.3 4.3 10.2-2.6 1-2.8-2.4-3.4-4.3-.7-2.5-6-4-.8-6z"/>
+        <path fill="#21231e" d="M367.3 238.4l-.4-1h.3l.3-.3.3-.2.2-.3.2-.3.2-.3v-.5l.2-.4v-2.7l-.2-.4-.2-.5-.2-.4-.2-.4-.3-.4-.3-.4-.2-.3-.4-.4-.3-.2-.3-.2-.4-.2-.4-.2h-.4l-.3-.2h-1.3l-.4.2-.4-1h.6l.5-.2h1.6l.5.3.5.2.4.2.4.4.5.4.4.4.3.4.3.5.2.4.3.6.3.5.2.6.2.6v.5l.2.5v1.6l-.2.5v.5l-.3.5-.2.4-.3.5-.4.3-.4.4-.4.2-.5.2zM363 234l1-.4.2.2v.6l.2.2v.8l.2.2v.4l.2.2v.2l.2.3.2.3v.2h.2v.2h.2l.2.2h1.2l.3.8h-.3l-.3.2h-1.2l-.2-.2h-.2v-.2l-.3-.2-.3-.3v-.2l-.2-.2v-.2h-.2v-.3l-.2-.2v-.4h-.2v-.8l-.2-.2v-.8l-.2-.2v-.2zm-.4-6.7l.4 1h-.5l-.3.3h-.4l-.2.3h-.2l-.2.2v.2h-.2v.4h.2v.3l.2.2v.2h.3v.3l.3.2h.2l.2.2.2.2.2.2.2.2.2.3.2.3.2.2v.3l.3.2v.6l-1 .3v-.7l-.2-.2h-.2v-.3l-.3-.2h-.2v-.3l-.3-.2-.2-.2-.2-.2-.2-.2v-.2l-.2-.2h-.2v-.3l-.3-.3v-.2l-.2-.2v-.8l.2-.3v-.3l.3-.2.2-.2.3-.3.3-.2h.4l.4-.3.6-.2z"/>
+        <path fill="#0c4076" d="M363.4 229.3c2.6-1 6.2 5 3 6.5-2.3 1-4-.3-4.8-2-.7-2 0-3.8 1.7-4.5z"/>
+        <path fill="#21231e" d="M366.5 236.3l-.4-1h.3l.2-.2h.2v-.2l.2-.2v-2l-.2-.3v-.3h-.2v-.4l-.3-.3-.2-.2-.3-.4-.2-.2-.2-.2h-.2v-.2l-.3-.2h-1.1l-.3-1h1.5l.4.3.3.2.2.3.2.2.3.2.2.2.2.3v.3l.3.3.2.4.2.3v.4l.2.4v2.6l-.2.3-.2.4-.2.3-.2.2h-.4l-.3.3zm-5.4-2.5l1-.3.2.3.2.3v.2l.2.3.2.2.2.2h.3v.2h.2l.3.2h.4v.2h1.3l.3-.2.5 1h-.7l-.2.2h-1.9l-.2-.2h-.2v-.2h-.3l-.2-.2-.3-.2-.3-.3-.3-.3h-.2v-.3l-.2-.3-.2-.3v-.2l-.2-.2v-.2zm2.2-5l.3 1h-.3l-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.7l-.2.2v1.1l.2.2v.3l-1 .3v-.7l-.2-.3v-1.5l.2-.2v-.3l.2-.2.2-.3.2-.3v-.2l.3-.2v-.2h.3l.2-.2.3-.2h.2l.2-.2zm.2.5l-.2-.5.2.5z"/>
+        <path fill="#fff" d="M400 179.7c3.6 0 6.4 2.8 6.4 6.4 0 3.6-2.8 6.5-6.3 6.5s-6.3-3-6.3-6.4 3-6.3 6.4-6.3z"/>
+        <path fill="#21231e" d="M407 186h-1c0-2-1.4-4.3-3.3-5.2a5.8 5.8 0 00-2.6-.6v-1c2.4 0 4.7 1.2 6 3.2a7 7 0 011 3.7zm-7 7v-1a6 6 0 005.3-3.3 6 6 0 00.6-2.6h1c0 2.4-1.3 4.7-3.3 6a6.8 6.8 0 01-3.6 1zm-6.8-7h1a6 6 0 003.3 5.4 5.8 5.8 0 002.6.6v1a6.8 6.8 0 01-5.7-3.3 7 7 0 01-1-3.6zm7-7v1.2a5.9 5.9 0 00-5.3 3.2 6 6 0 00-.8 2.7h-1a7 7 0 013.3-5.8 6.8 6.8 0 013.6-1z"/>
+        <path fill="#fff" d="M395.4 169c3.5 0 6.4 3 6.4 6.4 0 3.6-3 6.4-6.4 6.4s-6.3-2.8-6.3-6.4c0-3.5 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M402.3 175.4h-1c0-2.2-1.3-4.3-3.2-5.3a5.8 5.8 0 00-2.6-.5v-1c2.4 0 4.6 1.3 6 3.2a7 7 0 011 3.7zm-7 7v-1c2.3 0 4.4-1.4 5.4-3.3a6 6 0 00.6-2.6h1c0 2.4-1.2 4.7-3.2 6a6.8 6.8 0 01-3.6 1zm-6.7-7h1a6 6 0 003.2 5.3c.8.4 1.7.6 2.6.6v1a6.8 6.8 0 01-5.8-3.2 7 7 0 01-1-3.6zm6.8-7v1c-2 0-4.2 1.4-5.2 3.3a6 6 0 00-.6 2.7h-1c0-2.3 1.2-4.6 3.2-6a7 7 0 013.6-1z"/>
+        <path fill="#fff" d="M410.7 131.5c3.4 0 6 2.7 6 6s-2.6 6.3-6 6.3-6.2-2.7-6.2-6.2a6 6 0 016.2-6z"/>
+        <path fill="#21231e" d="M417.3 137.7h-1c0-2.2-1.2-4.2-3-5a5.6 5.6 0 00-2.6-.7v-1a7 7 0 015.6 3 6.7 6.7 0 011 3.7zm-6.6 6.6v-1c2 0 4-1.2 5-3 .4-1 .6-1.8.6-2.6h1c0 2.2-1.2 4.5-3 5.6a6.6 6.6 0 01-3.6 1zm-6.7-6.7h1c0 2.2 1.3 4.2 3.2 5a5.6 5.6 0 002.5.7v1a6.6 6.6 0 01-5.6-3 6.7 6.7 0 01-1-3.6zm6.7-6.6v1c-2 0-4 1.2-5 3a5.7 5.7 0 00-.7 2.6h-1a7 7 0 013-5.6 6.6 6.6 0 013.7-1z"/>
+        <path fill="#fff" d="M400.4 136.2c3.5 0 6.3 3 6.3 6.4 0 3.5-2.8 6.4-6.3 6.4s-6.4-3-6.4-6.4c0-3.5 2.8-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M407.2 142.6h-1a6 6 0 00-3.3-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.6zm-6.8 7v-1c2 0 4.2-1.4 5.2-3.3a6 6 0 00.6-2.7h1c0 2.3-1.2 4.7-3.2 6a6.8 6.8 0 01-3.6 1zm-7-7h1c0 2.2 1.4 4.3 3.3 5.3a5.8 5.8 0 002.7.5v1a7.2 7.2 0 01-6-3.2 7 7 0 01-1-3.7zm7-7v1a6.2 6.2 0 00-5.3 3.3 6 6 0 00-.5 2.6h-1c0-2.4 1.2-4.7 3.2-6a6.8 6.8 0 013.7-1z"/>
+        <path fill="#fff" d="M392.8 145.3c3.5 0 6.3 2.8 6.3 6.4 0 3.5-2.7 6.4-6.2 6.4s-6.4-2.8-6.4-6.3c0-3.6 3-6.4 6.4-6.4z"/>
+        <path fill="#21231e" d="M399.6 151.7h-1a6 6 0 00-3.2-5.3 5.8 5.8 0 00-2.6-.6v-1c2.3 0 4.6 1.2 5.8 3.2a7 7 0 011 3.7zm-6.8 7v-1c2 0 4.2-1.4 5.2-3.4a6 6 0 00.6-2.6h1c0 2.3-1.2 4.6-3.2 6a6.8 6.8 0 01-3.6 1zm-7-7h1c0 2 1.4 4.3 3.3 5.2a5.8 5.8 0 002.8.6v1a7.4 7.4 0 01-6-3.3 7 7 0 01-1-3.6zm7-7v1a6 6 0 00-5.3 3.3 6 6 0 00-.6 2.7h-1c0-2.4 1-4.7 3.2-6a7 7 0 013.6-1z"/>
+        <path fill="#fff" d="M391.5 156.7c3.6 0 6.4 2.8 6.4 6.4s-3 6.5-6.5 6.5-6.3-3-6.3-6.4 2.8-6.3 6.3-6.3z"/>
+        <path fill="#21231e" d="M398.4 163h-1c0-2-1.3-4.2-3.2-5.2a5.8 5.8 0 00-2.7-.6v-1c2.4 0 4.7 1.2 6 3.2a7 7 0 011 3.7zm-7 7v-1a6 6 0 005.4-3.3 6 6 0 00.6-2.6h1c0 2.5-1.3 5-3.4 6a6.8 6.8 0 01-3.5 1zm-6.7-7h1c0 2.3 1.3 4.4 3.2 5.4.7.4 1.6.6 2.5.6v1a7 7 0 01-5.8-3.2 7 7 0 01-1-3.7zm6.8-6.8v1c-2 0-4.2 1.3-5.2 3.2a6 6 0 00-.6 2.7h-1c0-2.3 1.2-4.6 3.2-5.8a7 7 0 013.5-1z"/>
+        <path fill="#edb92e" d="M474.4 198c-2.7-5-5.6-8.2-8.6-9.6 4.2-13.2 5.2-30.2 2.7-51-.2-3.3-1-4.6-2.2-4.6-1 0-1.7 1.6-1.8 5.2.8 11.6 1.7 21.6 1.2 30.2-.5 7.6-2.3 14-4.2 21.2-.3 1 .4 1.7 3.8 3.7 2.6 1.5 4.2 3.3 4.7 5 .7-.2 1.2 0 1.5 0 2.5.8 3.6.6 3 0z"/>
+        <path fill="#21231e" d="M465.3 188.2l1 .3-.3-.6h.3l.3.2.3.2.2.2h.3l.3.3h.3l.4.4.2.2.3.2.2.3.3.3.3.3.3.3.3.2.3.3.3.3.2.3.2.5.3.3.3.4.2.3.3.4.3.3.2.4.3.4.3.5.2.5.3.4.3.4.3.5.3.5-1 .5-.3-.5-.2-.4-.3-.5-.2-.5-.3-.4-.3-.3-.2-.4-.3-.4-.3-.5-.3-.4-.2-.2-.3-.4-.4-.3-.2-.2-.3-.3v-.3l-.4-.3-.3-.4-.2-.3-.2-.2-.3-.2-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.3-.2h-.3l-.3-.3-.4-.2-.3-.6zm.3.6h-.4v-.6l.4.6zm2.4-51.5h1l.2 2 .2 1.8.2 2 .2 2v1.8l.2 1.8v1.8l.2 1.8v15l-.3 1.5-.2 1.5v1.5l-.3 1.5-.2 1.5-.2 1.4-.2 1.5-.2 1.3-.3 1.4-.3 1.3-.3 1.4-.3 1.3-.4 1.3-.3 1.3-.4 1.2-1-.3.4-1.2.4-1.3.4-1.3.3-1.3.3-1.2.3-1.3.3-1.4.2-1.3.3-1.4.3-1.5.2-1.4V172l.3-1.6V169l.2-1.7v-1.6l.2-1.6v-13.6l-.2-1.8v-2l-.2-1.7-.2-2-.2-1.8-.2-2-.2-2zm0 0zm-1.7-4v-1h.6v.2h.3v.2h.2l.2.3h.2v.5h.2v.3l.2.2v.3l.2.2v.4l.2.4v.9l.2.3v.4h-1v-.9l-.2-.2v-.6l-.2-.2v-.5h-.2v-.5h-.2v-.2l-.2-.2h-.2v-.2h-.4zM465 138h-1v-1.7l.2-.3v-1l.2-.3v-.7h.2v-.3l.2-.3v-.3h.2l.2-.2.3-.2.2-.2h.5v1h-.2v.2h-.2v.2l-.2.2v.3l-.2.3v.6l-.2.2v1.6l-.2.4v.7zm-1 0zm2.2 30.2h-1V154l-.2-1v-2.8l-.2-1v-2l-.2-1v-1l-.2-1v-2l-.2-1V139l-.2-1 1-.2v1l.2 1.2v2l.2 1v2.2l.2 1v2l.2 1v2l.2 1v2.8l.2 1v12zm-4.3 21.3l-1-.3.2-.6v-.7l.3-.8.2-.6.2-.7v-.7l.2-.7.2-.6.2-.7v-.6l.3-.6v-.6l.2-.6.2-.7v-.5l.2-.6.2-.8v-.6l.2-.7.2-.7v-.7l.2-.6v-.7l.2-.6v-.7l.2-.7v-.7l.2-.6V169l.2-.8h1v1.5l-.2.7v1.5l-.2.6v.7l-.2.8v.7l-.2.6v.8l-.2.7-.2.6v.8l-.2.6-.2.7v.7l-.3.7v.6l-.3.7v.6l-.3.6-.2.6v.6l-.3.7-.2.5-.2.7v.6l-.3.7-.2.7-.2.6v.7zm3.6 3l-.5 1-.2-.2h-.3l-.3-.3-.3-.2h-.4l-.2-.3h-.2l-.3-.3h-.3v-.2l-.3-.2h-.2l-.2-.2-.2-.3h-.2v-.2h-.2l-.2-.2v-.2l-.2-.2v-1l1 .2v.5h.2v.2l.2.2h.2v.2h.2l.2.2.3.3h.2l.2.2.2.2h.2l.2.3h.3l.3.3.3.2h.3zm0 0zm4.2 5.2l.4 1-.7-.4v-.2l-.2-.2v-.3l-.2-.2v-.3l-.2-.3-.3-.3-.2-.3-.3-.2-.3-.3v-.2h-.3v-.2h-.3v-.2l-.3-.2h-.2v-.3h-.3l-.2-.2h-.3l-.2-.2-.2-.2h-.2l.6-1 .2.2h.2l.3.3.2.2.2.2h.2v.3h.4l.2.3.3.3.3.3.2.2.3.3v.3l.3.2h.2v.3l.3.2v.2h.2v.3l.2.2v.2l.2.3v.3l.2.2v.2l-.6-.3zm.4 1h-.5l-.2-.4.7.3zm1.4-1.2l-.3 1h-1l-.4-.8h.2l.2-.2h1.4zm3.3.5h-1l.7-.4.2.2v.8l-.2.2h-.2v.2h-1.8l-.2-.2h-.3l-.2-.2h-.5l.3-1h.7l.2.2h1v.2h.7v.4l.7-.4zm-1 0v-1l.7.6-.8.4zm0 0h1l-1 .3v-.3z"/>
+        <path fill="#edb92e" d="M458.4 214.6c1.6-1 2-.8 2.4-1.4.6-.8.6-2.2.4-3.5-.8-5.3 2.4-4.6 6-2.2 1.7 1 3.5 4 5 5.3s2.8 1.5 3.2 2v9.2c-.4.6-1.7.7-3.2 2-1.5 1.5-3.3 4.2-5 5.4-3.6 2.3-6.8 3-6-2.2.2-1.3.2-2.7-.4-3.5-.5-.7-.8-.4-2.4-1.4a7 7 0 01-2.3-2.2c-.4-.8 0-1.7 0-2.6 0-1-.4-1.8 0-2.6.6-.8 1.4-1.6 2.4-2.2z"/>
+        <path fill="#21231e" d="M460.4 213l.8.5-.2.2-.2.2h-.4v.2h-.4l-.2.2h-.2l-.2.2h-.2v.2h-.5v.2l-.7-1h.6v-.2h.2l.2-.2h.2l.2-.2h.4v-.2h.4v-.2h.2zm.3-3.2l1-.2v2.9l-.2.3v.2h-.2v.2l-1-.5v-.2h.2v-.4h.2v-2.6zm6.7-2.8l-.6 1-.3-.3-.3-.2-.3-.2-.4-.2h-.3l-.3-.2h-.3l-.3-.2h-.3v-.2h-.4l-.2-.2h-1.1v.2h-.2v.2l-.2.2v.6l-.2.3v2l-1 .2v-3l.2-.4v-.3l.3-.2.3-.2.2-.2h.2l.2-.2h.2l.2-.2h1.5v.2h.5l.3.2h.3l.4.3h.3l.3.2.4.2.3.2.3.2.4.2zm5 5.4l-.6.7-.3-.2-.3-.3-.3-.3-.2-.2-.2-.2-.3-.3-.2-.2v-.2h-.2v-.3l-.3-.2-.3-.3-.2-.2v-.2l-.3-.2v-.2h-.3l-.2-.3-.3-.2-.2-.2h-.2l-.2-.2v-.2h-.3v-.2h-.2l.6-1 .2.2.3.2v.2h.3v.3h.3l.2.2.2.2v.2l.3.2h.2v.3l.3.3.2.2v.2l.3.2.3.3h.2v.3l.3.2.2.2.2.2.3.3v.2h.3v.3h.3v.3h.2zm3.5 2.4h-1.2v.3h-.2l-.2-.2h-.2v-.2h-.4l-.2-.2h-.2v-.2h-.3v-.2h-.3v-.2l-.3-.2-.3-.2-.2-.3.7-.6h.2v.2h.2v.2h.2v.2h.2v.2h.3l.2.2.2.2h.2l.2.2h.2l.2.2h.2v.2h.4v.2l.2.2v.2zm-.2-.2v.2-.2zm0 4.8h-1v-4.5l1-.2v4.5zm-1 0zm0 0h1-1zm0 0zm1 5l-1-.7v.3-4.4h1v4.7zm0-.4v.2-.2zm-3.3 2.5l-.7-.8h.2v-.2l.3-.2.3-.2h.3v-.2h.3v-.2h.2l.2-.2h.2v-.2h.4v-.2h.4v-.2l1 .5-.2.2-.2.2h-.2v.2h-.4l-.2.2h-.2v.2h-.4v.2h-.3v.2h-.2l-.2.2-.2.2v.2h-.3zm-5 5.3l-.7-.8h.2v-.2l.3-.2.3-.2.2-.2.3-.3.2-.2.2-.2.2-.2v-.2h.3v-.3l.2-.3.2-.2v-.2l.3-.2.3-.2v-.2l.3-.2.2-.2v-.2h.3v-.3l.3-.2.2-.2h.2v-.3h.3v-.3l.8.8-.2.2-.2.2-.2.2v.2h-.3v.3l-.3.2-.3.2-.2.2-.2.2-.2.2v.2l-.3.2v.2l-.2.2h-.2v.3h-.3l-.2.3v.2h-.2l-.2.3-.2.2-.3.3-.3.3-.3.2zm-6.8-2.7l1 .3v2.6l.2.2v.2h.2v.2h1.7v-.2h.4l.3-.2h.3l.3-.3.3-.3h.3l.2-.3.3-.2.3-.2.6.8-.4.2-.3.3-.3.2h-.4l-.3.3-.3.2h-.3l-.2.3h-.4l-.3.2h-.4l-.3.2h-.9l-.3-.2h-.3l-.2-.3-.2-.2-.2-.2v-.3l-.2-.2v-.7l-.2-.3V229zm-.3-3l.8-.6v.2h.2v.4h.2v.6l.2.2v2.4l-1-.2v-2.5h-.2v-.4h-.2v-.2zm-2.3-1.3l.7-.8h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.2v.2h.2l.2.2.2.2-.8.6-.2-.2h-.2v-.2h-.4l-.2-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.3zm.7-.8l.5.2-.5-.3zm-3-1.7l.8-.5.2.2v.2h.2v.4h.2v.2h.2v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2l-.5 1v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2zm-.3-3h1v2.4l-.7.5v-.2h-.2v-.4l-.2-.2v-2.1zm.3-2.8l.8.6v.4l-.2.2v1.8h-1V217h.2v-.4h.2zm2.4-2.4l.7 1h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2h-.2v.2l-1-.5h.2v-.2l.2-.2.2-.2v-.2h.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2l.2-.2h.2v-.2h.2zm.7 1l.5-.3-.5.3z"/>
+        <path fill="#21231e" d="M475.5 220.2v1c-4 .4-7 2-9.7 4.3 1.8-2.7 5.7-4.7 9.7-5.3zm0-1.6v-.8c-4-.5-7-2-9.7-4.4 1.8 2.7 5.7 4.6 9.7 5.2z"/>
+        <path fill="#edb92e" d="M461.2 207.3c1 .4 2.3 1 3.4 2 1.6 1.5.6 4-1.5 6.6-.6.7-1 2-1 3.5 0 1.3.5 2.7 1 3.5 2.2 2.5 3.2 5 1.6 6.6-1 1-2.3 1.5-3.4 2v-2.4c.2-1.3.2-2.7-.4-3.5-.5-.7-.8-.4-2.4-1.4a7 7 0 01-2.3-2.2c-.4-.8 0-1.7 0-2.6 0-1-.4-1.8 0-2.6.6-.8 1.4-1.6 2.4-2.2 1.6-1 2-.8 2.4-1.4.6-.8.6-2.2.4-3.5v-2.4z"/>
+        <path fill="#21231e" d="M465 209l-.8.6-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.4v-.2h-.5v-.2h-.2l-.2-.2h-.2l-.2-.2h-.2l.4-1h.2l.2.2h.2l.2.2h.3l.2.2h.2v.2h.3l.2.2h.2v.2h.3v.2h.2l.2.2.2.2.2.2zm-1.5 7.2l-.8-.6.2-.3v-.2h.2l.2-.3.2-.3v-.2l.3-.2v-.5l.2-.2v-.2h.2v-.3l.2-.2v-.4h.2v-1.6l-.2-.3-.2-.2-.2-.2.7-.7.3.3v.2l.2.2v.2h.2v.5l.2.2v1l-.2.2v.4l-.2.2v.5l-.2.3v.3l-.3.2v.5l-.3.2v.3l-.3.2-.2.3v.2l-.3.2-.3.3-.2.2zm-1 3.3h-1v-.7l.2-.2v-1.2h.2v-1h.2v-.4l.2-.2v-.2h.2v-.2l1 .6h-.2v.4h-.2v.2l-.2.2v.9h-.2v1.4h-.2v.5zm1 3.2l-.8.6v-.2h-.2v-.2h-.2v-.4h-.2v-1.1l-.2-.3V220h-.2v-.5h1v1.1l.2.2v.4l.2.2v.4l.2.2v.2h.2v.2zm1.5 7.3l-.8-.8h.2v-.2h.2v-.3l.2-.2v-1.9l-.2-.2v-.2l-.2-.2v-.2l-.2-.3v-.2l-.2-.2-.3-.3v-.3l-.3-.2-.2-.2v-.2l-.3-.3-.3-.2.8-.6.2.2h.2v.4l.2.2.2.3h.2v.3l.3.3v.5l.3.3v.3l.2.2v.5l.2.2v.5l.2.2v.7l-.2.4v.4l-.2.2v.2l-.2.2v.2l-.3.2v.2zm-4.3 1.7l1-.2-.7-.4h.7v-.2h.4l.2-.2h.2l.2-.2h.2v-.2h.4v-.2h.2l.2-.2.2-.2h.2v-.2h.2v-.2l.8.8h-.2v.2h-.2v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-.2v.2h-.4v.2h-.4v.2h-.5v.2h-.2l-.2.2h-.2l-.7-.3zm.7.4l-.6.3v-.6l.6.4zm-.7-3l1 .3v2l-1 .3v-2.4zm-.3-3l.8-.6v.2h.2v.4h.2v.6l.2.2v2.4l-1-.2v-2.4h-.2v-.4h-.2v-.2zm-2.3-1.3l.7-.8h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.2l.2.2.2.2.2.2-.8.6-.2-.2h-.2v-.2h-.4l-.2-.2h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.3zm0 0l-.3-.2.4.2zm-2.3-2.4l.8-.5.2.2v.2h.2v.4h.2v.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2l-.5 1v-.2h-.2l-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2zm0 0l.3.5-.3-.5zm-.3-3h1v2.4l-.7.5v-.2h-.2v-.4l-.2-.2v-2.2zm.3-2.8l.8.6v.4l-.2.2v1.8h-1V217h.2v-.4h.2zm2.4-2.4l.7 1h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2h-.2v.2l-1-.5h.2v-.2l.2-.2.2-.2v-.2h.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2h.2zm2.4-1l.8.5-.2.2-.2.2h-.4v.2h-.4l-.2.2h-.2l-.2.2h-.2v.2h-.5v.2l-.7-1h.6v-.2h.2l.2-.2h.2l.2-.2h.4v-.2h.4v-.2h.2zm.3-3.2l1-.2v2.9l-.2.2v.2h-.2v.2l-1-.5v-.2h.2v-.4h.2V210zm.5-2v-1l.5.6v2.1l-1 .2V207l.5.6zm0-1h.6v.6l-.6-.6zm0 0v1h-.2l.2-1zM361 226.3l.7-.3c-1.6-2.2-2-4.2-1.3-6.3-1.3 1.6-1 4.2.6 6.6z"/>
+        <path fill="#edb92e" d="M410.7 200c1.4 1.6 1.2 2 2 2.5 1 .6 2 .4 3.3 0 5-2 5 2 3.5 6.4-.7 2-2.8 4.3-3.7 6.2-1 1.7-.7 3-1 3.5a95.4 95.4 0 01-4 .6l-4 .5c-.6-.3-1-1.6-2.6-3s-4.4-3-6-4.6c-3-3.5-4.6-6.8.2-6.7 1.2 0 2.4-.2 3-1 .4-.7 0-1 .4-3 .3-1.2.8-2.3 1.4-3 .6-.8 1.5-.6 2.3-.7 1-.2 1.6-.7 2.5-.2 1 .4 2 1.2 2.7 2.3z"/>
+        <path fill="#21231e" d="M413 202l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.3-.3-.3.8-.6.3.2.2.3v.2h.2v.4h.2v.4h.2v.2l.2.2v.2h.2v.2l.2.2zm-.6 1zm3.5-1l.2 1h-.5l-.2.2h-.8v.2h-1.2l-.3-.2h-.2l-.2-.2h-.2l.5-1v.2h.8v.2h1l.2-.2h.4l.2-.2h.3zm4 7l-1-.3v-.4l.2-.4v-.5l.2-.4v-.3l.2-.3v-.7l.2-.4v-1.7l-.2-.2v-.4h-.2l-.2-.3h-.2l-.3-.2H417l-.4.3h-.4l-.3-.8.3-.2h.5l.4-.2h1.8l.3.2h.3l.2.3.2.4v.2l.3.3.2.4v3.3l-.2.4v.4l-.2.4v.4l-.2.4v.4zm-3.7 6.4l-1-.5v-.2l.2-.2.2-.2v-.2l.2-.2v-.4l.2-.2.2-.2v-.2l.2-.2.2-.2.2-.3.2-.2.2-.3.2-.2v-.2l.2-.2h.2v-.3l.2-.2v-.2l.2-.2.2-.3v-.2l.2-.2v-.2l.2-.3 1 .3v.2l-.2.3v.2l-.2.2-.2.3v.2l-.2.2v.3l-.3.2-.2.2v.2l-.2.2-.2.2v.2l-.2.2-.2.2v.2l-.3.2v.2l-.2.2-.2.2v.2l-.2.2v.4h-.3v.3l-.2.2-.2.2v.2zm-1.5 3.8l-.2-1-.3.2v-.4h.2v-1l.2-.2v-.4l.2-.3v-.4l.2-.3v-.2h.2l1 .4-.2.2-.2.3v.3h-.2v.7h-.2v.9l-.2.2v.4l-.2.2v.2l-.4.2zm.3 0h-.2.3zm-4.3.6v-1h1.1v-.2h1.2v-.2h1.1l.3-.2.2 1h-.4l-.3.2h-.9l-.2.2h-1.3v.2h-.7zm0 0zm0 0v-1 .5-.5 1-.5.5zm0-1zm-4 1.5l.4-1h-.2 1.3l.3-.2h1.9l.2-.2.2 1h-.8v.2h-1.4v.2h-2zm.2 0h-.3.2zm-3-3l.5-1 .2.3.3.3h.2l.2.3.2.2.2.3.2.2v.2h.2v.2h.2v.2l.2.2v.2h.2v.2h.2v.2l-.4 1v-.2h-.2l-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.3v-.2h-.2v-.2h-.3v-.3zm-6-4.8l.7-.6.2.2.3.3.3.3h.2v.3l.3.2h.3l.2.3h.2l.2.3.3.3.2.2.2.2h.2v.2l.3.2h.2l.2.3.2.2.3.3h.2l.2.3.3.2.2.2h.2v.2l-.5.8h-.3v-.2l-.3-.2h-.2v-.2l-.3-.2h-.3l-.2-.2-.2-.2h-.2v-.2l-.3-.2h-.2l-.2-.3h-.2v-.2h-.3l-.2-.2-.2-.2h-.2v-.3h-.3l-.2-.3-.2-.2h-.2v-.3h-.3v-.3l-.3-.2h-.2v-.3l-.3-.2zm.4-7.5v1H397l-.2.2h-.4l-.2.2v.2h-.2v1.5l.2.3v.3l.2.2.2.3.2.4.2.3.2.3.2.3.2.3.3.3v.2l.4.3.3.4-.8.5-.4-.3-.3-.3-.2-.4-.2-.4-.2-.3-.3-.4-.2-.3v-.4l-.3-.4v-.3l-.3-.3v-.3l-.3-.3V206l.2-.2.2-.2.2-.2.3-.2h.2l.3-.2h.7l.4-.2h.8zm2.5-.8l.8.5-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2l-.2.2h-.5l-.2.2h-1.1v-1h1.4l.2-.2h.2l.2-.2h.2v-.2h.2v-.2zm0 0zm.4-2.8l1 .2v.4h-.2v2h-.2v.4l-.2.2-1-.4h.2v-1.4l.2-.3v-.8l.2-.2zm1.4-3.2l.8.6-.2.2v.2h-.2v.4h-.2v.4h-.2v.4l-.2.2v.4l-.2.2v.4l-1-.2v-.7l.2-.2v-.4l.2-.2v-.4h.2v-.4h.2v-.4h.2v-.2h.2v-.4h.2zm.8.6l.5-.7-.4.8zm1.8-1.5l.2 1H404v.2h-.4v.2h-.2l-.8-.5.2-.2.2-.2h.2v-.2h.4l.2-.2h1.4zm.2 1h-.7.6zm2.7-1.2l-.5 1H406l-.2.2h-.4l-.2-1h.8l.2-.2h2.1zm3 3h-1v.2-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2.5-1v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2v.2l.2.2.2.2.2.2v.2l.3.3zm-.2-.4h.2v.3-.4zm-.8.3h1l-1 .2v-.3zm0 .2v-.3.2z"/>
+        <path fill="#21231e" d="M410 219.4h-.7c-1.4-3.8-3.5-7-6.3-9.5 2.8 1.4 5.5 5.3 7 9.4zm1.4-.2c.3 0 .5 0 .8-.2-.5-4 0-7.5 1.5-11-2 2.5-2.8 7-2.3 11.2z"/>
+        <path fill="#edb92e" d="M418.3 202c-.2 1.4-.4 3-1 4.3-1 2-3.8 1.3-6.6-.7-.8-.6-2.2-.8-3.4-.6-1.3.3-2.4.8-3 1.7-1.5 2.6-3.4 4-5.2 2.6-1-1-2-2.3-2.7-3.5.5-.2 1.2-.3 2-.3 1.3 0 2.5-.2 3-1 .5-.7 0-1 .6-3 0-1.2.6-2.3 1.2-3 .6-.8 1.5-.6 2.3-.7 1-.2 1.6-.7 2.5-.2 1 .4 2 1.2 2.7 2.3 1.4 1.6 1.2 2 2 2.5 1 .6 2.2.4 3.3 0 1-.4 1.7-.6 2.3-.5z"/>
+        <path fill="#21231e" d="M417.7 206.5l-1-.4.2-.2v-.5l.2-.2v-.4l.2-.2v-.9l.2-.2v-1.2h.2v-.4h1v1.1l-.2.3v1h-.2v.7h-.2v.7h-.2v.3l-.2.3v.2zm-7.2-.5l.5-.8.3.2h.2l.3.3h.2l.3.3h.2l.3.2.2.2h.2l.3.2h.4v.2h.7l.2.2h1v-.2h.2l.2-.2.2-.3.2-.2 1 .5-.2.2-.2.3-.3.3v.2h-.2l-.2.2h-.2l-.3.2h-2l-.2-.2h-.2l-.3-.2h-.2l-.2-.2h-.2l-.3-.2-.2-.2h-.2l-.3-.3-.2-.2h-.3l-.3-.3-.2-.2zm-3-.4l-.3-1h1.1v-.2h1.3v.2h.6v.2h.4v.2h.2l.2.2-.5.8h-.2v-.2h-.4v-.2h-2.4zm-2.7 1.3l-.8-.6v-.2h.2v-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2h.2l.2-.2h.3v-.2h.8l.2-.2h.5l.2 1h-.7v.2h-.4v.2h-.4l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2zm-6 2.7l.6-.8h.3v.2h.5l.2.2h.5l.3-.2h.3v-.2h.3v-.2h.2v-.3h.3v-.3h.3v-.3l.3-.3.2-.2.2-.2v-.2h.3v-.4l.3-.2.8.5v.2l-.3.2v.3l-.3.2h-.2v.3l-.3.2-.2.2-.2.2-.3.3h-.2l-.2.3h-.2v.3h-.3l-.3.2h-.4l-.3.2h-1.2l-.2-.2h-.2l-.2-.2-.2-.2h-.2zm-2.7-4.4l.5 1 .3-.8v.3h.2v.2l.2.2v.2h.2v.2l.2.2v.2h.2v.2l.2.2.2.2.2.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.2h-.2v-.2h-.2v-.3h-.2v-.2h-.2v-.4h-.2v-.2h-.2V205zm0 .8l-.4-.4.5-.3v.8zm2.4-1v1H397v.2h-.4l-.5-1h1.2v-.2h1.2zm2.5-.8l.8.5-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2l-.2.2h-.7l-.2.2h-1.2v-1h1.4l.2-.2h.4v-.2h.2v-.2h.2v-.2zm0 0zm.4-2.8l1 .3v.3l-.2.3v1.7h-.2v.7h-.2l-1-.4h.2v-1.4h.2v-1.3l.2-.2zm1.4-3.2l.8.6-.2.2v.2h-.2v.4h-.2v.4h-.2v.4l-.2.2v.7h-.2v.5l-1-.3v-.7l.2-.2v-.4l.2-.2v-.4h.2v-.4h.2v-.4h.2v-.2h.2v-.4h.2zm0 0l.4-.5-.4.5zm2.6-1l.2 1h-.6v.2h-1v.2h-.2l-.2.2-.8-.6.2-.2.2-.2h.2v-.2h.4l.2-.2h1.4zm0 0h.6-.6zm3 0l-.6.8H406v.2h-.5l-.2-1h.8v-.2h2.1zm-.6.8l.3.2-.2-.2zm3.3 1.6l-.6.6-.2-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2l-.2-.2.5-1v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2v.2l.2.2.2.2.2.2v.2zm2 2.5l-.6 1-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.3-.2-.3.7-.6.3.2.2.3v.2h.2v.2l.2.2v.4h.2v.2l.2.2v.2h.2v.2l.2.2zm-.6 1l-.2-.2h.2zm3.5-1l.2 1h-.5l-.2.2h-.8v.2h-1.3l-.2-.2h-.2l-.2-.2h-.2l.5-1v.2h.6l.2.2h1.1l.2-.2h.4l.2-.2h.2zm2.8 0h-1l.5.5h-1l-.2.2h-.4l-.2.2h-.2l-.3-1 .2-.2h.8v-.2h1.5l.5.4zm-.5-.5h.6l-.2.5-.5-.5z"/>
+        <path fill="#edb92e" d="M391.8 221.2c.7-1 1-.8 1.2-1.3.2-1-.3-2-1-3.2-2.2-4.6.3-4.2 3.6-2.4 1 .4 2 1.2 3 2 1 1 1.8 1.8 2.7 2.4 1.6 1.2 2.7 1.2 3 1.7 1 2 1.5 3.5 1.8 4.2.3.7 1 2.3 1.6 4.2 0 .4-1 .5-1.8 2-.7 1.2-1.2 3.5-2 4.7-1.4 1.6-2.5 2.6-3.4 2.4-1 0-1.6-1.3-1.8-4.2a4 4 0 00-1.5-3c-.5-.6-.6-.4-2-1.2a9.3 9.3 0 01-2.4-2c-.6-.6-.7-1.3-1-2-.3-1-.8-1.6-.7-2.4a3.8 3.8 0 01.8-2z"/>
+        <path fill="#21231e" d="M392.5 219.7l1 .3v.2l-.2.2v.2h-.2v.2h-.2v.2h-.2l-.2.2v.2h-.2l-.8-.5v-.2l.2-.2.2-.2.2-.2h.2v-.2h.2v-.2zm1 .3zm-1.8-3l1-.5v.4l.2.2v.4l.2.3v.2l.2.2v2l-1-.3v-1.2l-.2-.2v-.4h-.2v-.4h-.2v-.4zm4.2-3l-.6.8h-.3l-.2-.3h-.3l-.3-.3h-.3l-.3-.2h-.3l-.2-.2h-.5l-.2-.2h-.6v1.5l.3.4.2.3.2.4.2.5-1 .5v-.4l-.3-.4-.2-.4v-.7l-.2-.2v-1.5l.2-.2h.2l.2-.2h.2l.2-.2h1.2l.2.2h.6l.3.3.3.2h.3l.3.2.2.2.4.2h.3zm2.8 2l-.7 1v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2.5-1v.2h.2v.2h.2l.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2l.2.2.2.2.2.2h.2v.2h.2zm2.8 2.4l-.6.8h-.2v-.2h-.2v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.2l.6-1v.2h.2l.2.2v.2h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2l.2.2zm3.3 2l-1 .3v.2-.2h-.2v-.2h-.4l-.2-.2h-.2l-.2-.2h-.3l-.2-.2h-.3v-.2h-.3v-.2h-.3v-.2h-.3v-.2l.6-.8.2.2h.2v.2h.3l.2.2h.2l.2.2h.2v.2h.4l.2.2h.4v.2h.2l.2.2h.2v.3zm-.2-.3v.2zm1.7 4.5l-1 .4v-.7l-.2-.2v-.4l-.2-.2v-.5h-.2v-.4l-.2-.3v-.3h-.2v-.5h-.2v-.5h-.2v-.3l1-.4v.4l.2.3v.2l.2.3v.2l.2.3v.3l.2.3v.4h.2v.4l.2.2v.4h.2v.4zm0 0zm0 0l-1 .4h.3l.3.2-.5-.5.6.5-.5-.5.6.5-.5-.5.2.4-.2-.3v.2l1-.5v.2-.4.4l-.4-.5.6.5-.5-.5.6.5-.5-.5h.4v.3zm0-.2v.2-.2zm1.6 4.7l-1-.2v.3-.5l-.2-.3v-.2l-.2-.3v-.3l-.2-.3v-.2l-.2-.2v-.4l-.2-.2v-.2l-.2-.2v-.4l-.2-.2 1-.5v.4h.2v.5h.2v.5l.2.2v.3l.2.3v.5l.2.2v.3l.2.2v.2l.2.2v.6zm0-.3v.3-.3zm-1.7 2.4l-1-.4.2-.2v-.2h.2v-.2l.2-.2v-.2h.2v-.2h.2l.2-.2h.2v-.2h.2v-.2l1 .2v.4h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2v.2zm-2.2 5l-.7-.7.2-.3v-.2h.2v-.3l.2-.2v-.4l.2-.2v-.5h.2v-.4h.2v-.5h.2v-.2l.2-.3v-.2l.2-.3v-.2l.2-.2 1 .5-.2.2v.3h-.2v.4h-.2v.5l-.2.2v.3l-.2.2v.3l-.2.2v.3l-.2.2v.3l-.2.2v.3h-.2v.3h-.2v.3l-.2.2v.2zm-3.7 2.7l.2-1h.4v-.2h.2l.2-.2h.2v-.2h.2l.2-.2.2-.2.2-.2.2-.2.2-.3.2-.2v-.2h.2v-.3l1 .7h-.2v.3h-.3v.3h-.2v.3h-.4v.4h-.2v.2h-.2l-.2.2-.2.2-.2.2h-.3v.2h-.4v.2h-1zm-2.2-5h1v.3l.2.2v1.1h.2v.5l.2.2v.3l.2.2v.2h.2v.2h.2v.2h.2v1h-.8v-.2h-.2l-.2-.2-.2-.2v-.3h-.2v-.2l-.2-.2v-.3l-.2-.3v-.4h-.2v-1l-.2-.2v-1zm-1.2-2.6l.7-.6.2.2v.2h.2v.2l.2.2v.2h.2v.3l.2.2v.2h.2v.7h.2v.6l-1 .2v-1h-.2v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.4h-.2v-.2h-.2zm-2-1l.4-.8h.3v.2h.4v.2h.4v.2h.4v.2h.4v.2h.2v.2l-.6.7h-.2l-.2-.2h-.4v-.2h-.4l-.2-.2h-.2l-.2-.2h-.3zm-2.5-2l.7-.6.2.2.2.2.2.2.2.2h.2v.2h.2v.2h.2l.2.2h.2v.2h.2l.2.2-.5 1v-.2h-.2v-.2h-.4v-.2l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2zm-1.2-2.3l1-.4v.2h.2v.4h.2v.5h.2v.4h.2v.2l.2.2-.7.7h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.8h-.2v-.2zm-.6-2.5h1v.8h.2v.4l.2.2v.2l.2.2v.2l-1 .5v-1h-.2v-.4h-.2v-.6h-.2v-.8zm1 0v.2zm.4-1.5v-1l.3.8v.4h-.2v.2h-.2v.8h-.2v.2h-1v-.9l.2-.2v-.4l.2-.2v-.2h.2v-.4h.2v-.2h.2l.4.7zm0-1h1l-.7.8-.2-.8zm0 0v1l-.4-.8.4-.3zm0 1h-1l.6-.8.4.7z"/>
+        <path fill="#21231e" d="M406.5 226l.2 1c-1.4.4-2.6 1-3.6 1.8s-1.7 2-2.3 3.2c.2-1.4 1-2.7 2-3.7s2.3-1.8 3.8-2.2zm-.6-1.6l-.5-1c-1.6 0-3.2-.4-4.7-1-1.5-.7-3-1.6-4.4-2.8 1 1.3 2.6 2.4 4.3 3.3 1.6.7 3.5 1.3 5.2 1.5z"/>
+        <path fill="#edb92e" d="M391.4 213.8c1 .4 1.6.8 2.8 1.8.8.7 1.3 1.7 1.5 3 0 1 0 2.5-.3 3.8-.2.8 0 2.2.5 3.6.4 1.4 1 2.8 2 3.5 2.3 2.5 4 5 3.4 6.7a4 4 0 01-1.5 1.8c-.4-.6-1-1.2-1.4-2.2a8 8 0 00-1.5-3.5c-.5-.6-.7-1.3-2-2.2-1-.5-2-.3-2.6-1-1.2-1.6-3-5.5-1.3-7.2 1.7-1.7 2.3-2.7 1-5.6-.5-1-.5-1.8-.6-2.4z"/>
+        <path fill="#21231e" d="M394.5 215.2l-.7.8-.2-.2-.2-.2-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2h-.2l-.2-.2h-.4l.3-1h.4v.2h.4v.2h.4v.2h.4v.2h.2v.2h.2l.2.2.2.2h.2v.2h.2v.2zm1.7 3.2l-1 .2v-.6h-.2v-.7h-.2v-.4l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l.7-.8h.2v.2l.2.2v.2h.2v.2l.2.2v.2h.2v.4l.2.2v.4h.2v.8h.2v.2zm-.3 4h-1V221h.2v-2.4l1-.2v3.3l-.2.2v.5zm-1 0v-.3.3zm1.4 3.5l-1 .2v-.5l-.2-.3v-.4l-.2-.3v-.8h-.2v-1.4h1v1.9h.2v.7h.2v.7h.2v.3zm1.8 3.2l-.7.7v-.2l-.2-.2h-.2v-.4h-.2v-.2l-.2-.3v-.2h-.2v-.2l-.2-.3v-.2h-.2v-.5l-.2-.2-.2-.3v-.4h-.2l1-.4v.2l.2.2v.2l.2.3.2.2v.3l.2.2v.2h.2v.2h.2v.4h.2v.2h.2v.2h.2v.2zm3.6 7.2l-1-.4.2-.2v-1.3l-.2-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.2-.2-.2-.2v-.2l-.3-.2-.2-.3v-.3l-.3-.2-.2-.2-.2-.3-.2-.2-.2-.2-.2-.2-.3-.3h-.2l.7-.8.3.2.2.2.2.3.3.4.3.2.2.2v.3l.3.3.3.2.2.3v.2l.3.2.2.3v.2l.2.2.2.2v.2l.2.2v.2l.2.3v.7l.2.2v1.2l-.2.2zm-2.4 1.8l1-.4-.8-.2.2-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l1 .4v.2l-.2.2v.2l-.2.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2l-.2.2-.8-.2zm.8.2l-.5.3-.3-.5.8.2zm-2-2.5l1-.3v.4h.2v.4h.2v.2h.2v.2l.2.2v.2h.2v.4l-.8.4v-.2h-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.4l-.2-.2v-.2l-.2-.2v-.3zm-1.5-3.3l.8-.7v.2h.2v.2l.2.2v.2l.2.2v.2h.2v.5h.2v.4l.2.2v.4l.2.3v.7l-.8.2v-.4h-.2v-.5l-.2-.2v-.5h-.2v-.2l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2zm0 0zm-2-2.2l.4-1 .3.2.2.2h.2l.2.2.2.2.2.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2l-.7.7-.2-.2v-.2h-.2v-.2h-.2v-.4h-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2zm-2.7-1.3l.8-.6h.2v.2h.2v.2h.9l.2.2h.4l.2.2h.2l.2.2-.4 1v-.2h-.4l-.2-.2h-.9v-.2h-.4l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2zm-1.2-7.8l.7.7v.3h-.2v.3h-.2v2.2l.2.3v.5l.2.2v.2l.2.3v.2l.2.2v.2l.2.2v.2l.3.2v.2h.2v.3l.2.2-.7.7-.2-.3-.2-.3v-.2l-.2-.2v-.2h-.3v-.3l-.2-.3-.2-.4v-.2l-.2-.3v-.2l-.2-.2v-.6l-.2-.3v-2.1l.2-.3v-.2h.2l.2-.3.2-.3zm.7-5l1-.5v.5l.2.2v.3l.2.2v.7h.2v1.7l-.2.2v.2l-.2.2v.2h-.2v.3h-.2v.2l-.2.2-.3.3h-.2l-.2.3-.8-.6.2-.3h.2l.2-.3.2-.3.2-.2v-.3l.2-.2v-.2l.2-.3v-.7l-.2-.2v-.5l-.2-.2-.2-.4v-.2zm0-3v1l.4-.7v1.4h.2v1.1h.2l-1 .6v-.9h-.2v-.7l-.2-.2v-1l.4-.7zm-.6.5l-.3-.7h.7l-.5.6zm.4.3v-1 1zm0-1z"/>
+        <path fill="#edb92e" d="M434 226.2c-1.2 1-1.5 1-2 1.6-.3.8 0 2 .3 3.3 1.5 5-1.4 4.4-5 2.6-1.6-1-3.6-3.2-5.2-4.4-1.5-1-2.6-1-3-1.6a118.7 118.7 0 01-1-4.3c0-.7-.5-2.4-1-4.4.4-.7 1.4-1 2.5-2.5 1-1.7 2.2-4.7 3.6-6 3-3.2 6-4.5 6 1.3 0 1.4.3 3 1 3.6.6.6 1 .3 2.5 1 1 .6 2 1.3 2.6 2 .7 1 .5 2 .7 2.8 0 1 .5 1.7.2 2.6-.5 1-1 1.7-2 2.4z"/>
+        <path fill="#21231e" d="M432.6 228l-1-.5h.2v-.4h.4v-.2h.4v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.8.8-.2.2h-.2v.2h-.2l-.2.2-.2.2h-.2v.2h-.4v.2h-.2v.2zm-1-.5zm1 3.4l-.8.3v-.2l-.2-.2v-.7h-.2v-2.3h.2v-.2l1 .4v.2h-.2v2.1h.2v.7zm-5.4 3l.5-.8h.3l.3.3h.3l.3.3h.2l.3.2h.2l.3.2h.7l.2.2h.7v-.2h.2v-.4l.2-.3v-1.1l-.2-.3v-.3l-.2-.4 1-.4v.4l.2.4v.8l.2.3v1.1l-.2.4v.2l-.3.2-.2.2h-.2l-.2.2-.4.2h-1.2l-.3-.2h-.6l-.3-.3-.2-.2h-.3l-.3-.2-.4-.2-.3-.2h-.3zm-5.4-4.3l.6-1 .2.2.3.2.2.3h.2v.3h.3v.3l.3.2.2.2h.2v.3h.3l.2.3.2.3.2.2.3.3h.2v.2l.2.2h.2l.2.2v.2h.3v.2h.2l.2.2.3.2-.5 1-.2-.2h-.2v-.2l-.3-.2h-.2l-.2-.2-.2-.3h-.2l-.2-.2h-.2v-.3h-.3l-.3-.3h-.2v-.3l-.3-.3h-.2l-.2-.3-.3-.3h-.2v-.2h-.3l-.2-.3-.3-.3-.3-.2-.3-.2h-.2zm.6-1zm-4-1l1-.2v-.2h.2v.2h.4l.2.2h.4v.2h.7l.2.2h.2l.2.2.3.2h.2l.2.2-.6 1v-.2h-.3v-.2h-.2l-.2-.2-.2-.2h-.3l-.2-.2h-.2v-.2h-.4l-.2-.2h-.2l-.2-.2h-.2v-.2h-.2v-.3zm.2.3v-.3.3zm-.6-4.2v-1l.5.4v.4l.2.2v1h.2v1.3h.2v1h.2v.5l-1 .2v-.7l-.2-.3v-.7l-.2-.3v-.7h-.2v-.8l-.2-.2v-.6l.4.4zm0-1h.5v.4l-.5-.4zm-.5.6l1-.2v-.2l-.5-.2v1h-.3l-.2-.5zm1-.2zm-1.8-4.5l1 .4v-.2 1.1h.2v1.1l.2.3v.8l.2.2v.9l-1 .2V222l-.2-.2v-.8l-.2-.3v-.7h-.2v-.8l-.2-.2v-.3zm0 .3v-.3.3zm2.4-2.8l1 .5-.2.2-.2.2-.2.3-.2.2-.2.2h-.2v.2h-.2l-.2.2h-.2v.2h-.2v.2h-.2v.2h-.2l-1-.3h.2v-.4h.2v-.2h.4v-.2h.2l.2-.2.2-.2.2-.2h.2v-.2l.2-.2.2-.2v-.2h.2v-.2zm3.7-6.2l.8.7h-.2v.3h-.2v.3l-.3.3v.2l-.2.2v.2h-.2v.3l-.2.3v.4l-.3.2v.2l-.2.2v.2l-.2.2v.2l-.2.2v.3l-.2.3v.2l-.2.2v.2h-.2v.2l-.2.2-.2.2-1-.4.2-.2.2-.3v-.2h.2v-.3l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.3l.2-.2v-.2h.2l.2-.3v-.2l.2-.2v-.3l.2-.2v-.2l.3-.2v-.2l.2-.2.2-.3v-.2l.2-.2h.2v-.3zm6.8 1.8h-1v-1.4l-.2-.4v-.6l-.2-.2v-.4l-.2-.2h-.3v-.2h-1.2l-.3.2-.3.2h-.2l-.3.3-.2.3-.3.2-.2.2-.3.2-.2.2-.3.2-.2.3-.8-.7.3-.3.3-.3.3-.2.2-.3.3-.3.4-.2.3-.2.2-.2h.2l.3-.3h.2l.3-.2h.3l.2-.2h1.2l.3.2.3.3.2.2.2.2.2.3v.6l.2.5v.4l.2.3v1.5zm1 3.3l-.8.8-.2-.2v-.2h-.2v-.2l-.2-.2v-.6l-.2-.2v-.7l-.2-.2V212h1v2h.2v.3l.2.2v.2h.2v.2l.2.2zm0 0zm2.2 1l-.4 1-.3-.2h-.2l-.3-.2h-.4v-.2h-.9v-.2h-.4v-.2h-.2v-.2l.6-.7v.2h.4v.2h.8l.2.2h.4l.2.2h.2l.2.2zm2.8 2.2l-.8.6h-.2v-.2l-.2-.2h-.2v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2.3-1 .3.2h.2l.2.2.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2zm-.8.6l.4.5-.3-.5zm1.5 2.3l-1 .2V220l-.2-.2v-.8h-.2v-.4l.7-.6v.2l.2.2v.2l.2.2v2.2h.2v.2zm0 3l-.8-.4v-2.1l-.2-.2v-.4h1v1l.2.2v1.8zm-1.8 2.6l-.7-.8h.2v-.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2h.2v-.2l1 .4-.2.2v.2l-.2.2v.2h-.2v.4h-.2v.2h-.2v.2l-.2.2-.2.2v.2h-.2l-.2.2-.2.2zm-.7-.8z"/>
+        <path fill="#21231e" d="M418 222.6l-.2-1a14 14 0 007.8-5.3c-1.2 3-4.3 5.3-7.7 6.3zm.2 1.5c0 .4.2.7.3 1 3.4 0 6.4 1 9.2 3-2-2.3-5.8-3.8-9.5-4z"/>
+        <path fill="#edb92e" d="M432.7 233.3a11 11 0 01-3.4-1.5c-1.6-1.3-1.2-3.8.3-6.4.4-.8.5-2.2.2-3.5a6.3 6.3 0 00-1.4-3.5c-2.4-2.3-3.8-4.8-2.6-6.6.8-1.3 2-2 2.8-2.7.3.6.4 1.5.4 2.5 0 1.4.3 3 1 3.6.6.6 1 .3 2.5 1 1 .7 2 1.3 2.6 2 .7 1 .6 2 .7 2.8 0 1 .5 1.7.2 2.6-.5 1-1 1.7-2 2.4-1.2 1-1.5 1-2 1.6-.3.8 0 2 .3 3.3.3 1 .4 1.7.4 2.3z"/>
+        <path fill="#21231e" d="M429 232.2l.6-.8h.2v.2h.2l.2.2h.2l.2.2h.2l.2.2h.4v.2h.4l.2.2h.4l.2.2h.2l-.3 1h-.4v-.2h-.4l-.2-.2h-.3v-.2h-.4l-.2-.2h-.2l-.2-.2h-.2v-.2h-.2l-.3-.2h-.2v-.2zm0-7l1 .5v.2h-.2l-.2.4v.2l-.2.2v.2l-.2.3v.4l-.2.2v.5l-.2.2v1.5l.2.3v.2h.2v.3l.2.2.2.2-.6.8-.2-.2-.3-.3v-.2h-.2v-.3l-.2-.2v-.4l-.2-.3V228h.2v-.7l.2-.3.2-.3v-.3l.2-.2v-.3l.3-.3v-.5zm.3-3.3l1-.2v.8h.2v1.9l-.2.2v.7h-.2v.2l-1-.4h.2v-.6h.2V222zm-1.3-3.2l.7-.7v.2h.2v.4h.2v.2l.2.2v.2l.2.2v.2l.2.2v.5h.2v.7l.2.2v.8h-1v-1.2l-.2-.2v-.4h-.2v-.4h-.2v-.2l-.2-.2v-.2h-.2v-.2l-.2-.2zm0 0zm-2.7-7.2l1 .6h-.2v.7l-.2.2v.7l.2.2v.4l.2.2v.2l.2.2v.2l.2.2v.2l.3.2v.2l.2.2.2.2v.2l.3.3.2.3v.2l.3.2.2.2h.2l-.7.8-.2-.2-.2-.2-.3-.2-.2-.2v-.3l-.2-.2-.2-.2-.2-.2-.2-.2v-.2l-.3-.2-.2-.3h-.2v-.3l-.2-.2v-.3l-.2-.2v-.2l-.2-.3v-.4l-.2-.2v-1l.2-.3v-.2l.2-.2v-.2zm3.8-2.5l-.8.4.7.3h-.2l-.2.2h-.2l-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-1-.6h.2v-.2l.2-.2.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2h.2l.2-.2.2-.2h.2v-.2h.2l.2-.2.2-.2h.2v-.2h1.1zm-.6 0l.5-.5v.6h-.6zm1 2.8h-1v-2.1h-.2v-.4l1-.3v1h.2v2zm1 3.3l-.7.8-.2-.2v-.2h-.2v-.2l-.2-.2v-.7l-.2-.2v-.7l-.2-.2V212h1v1.7h.2v.6l.2.2v.2h.2v.2l.2.2zm2.3 1l-.4 1-.3-.2h-.2l-.3-.2h-.4v-.2h-.9v-.2h-.4v-.2h-.2v-.2l.6-.7v.2h.4v.2h.8l.2.2h.4l.2.2h.2l.2.2zm2.8 2.2l-.8.6h-.2v-.2l-.2-.2h-.2v-.4h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2l-.2-.2.3-1 .3.2h.2l.2.2.2.2h.2v.2h.2l.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2zm-.8.6l.4.5-.3-.5zm1.5 2.3l-1 .2V220h-.2v-.8h-.2v-.4l.7-.6v.2l.2.2v.2l.2.2v2h.2v.2zm0 3l-.8-.4v-2.2l-.2-.2v-.4h1v1l.2.2v1.8zm-1.8 2.6l-.7-.8h.2v-.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2h.2v-.4h.2v-.2l1 .4-.2.2v.2l-.2.2v.2l-.2.2v.2h-.2v.2h-.2v.2l-.2.2-.2.2v.2h-.2l-.2.2-.2.2zm-.7-.8zm-1 2.2l-1-.5v-.2h.2v-.2h.2v-.2h.4v-.2h.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l.8.8-.2.2h-.2v.2h-.2l-.2.2-.2.2h-.2l-.2.2h-.2v.2h-.2v.2zm-1-.5zm1 3.4l-1 .3v-.7h-.2v-3h.2l1 .4h-.2v2.6h.2v.2zm-1 .3zm.8 2.5l.3-1-.6.5v-1h-.2v-.9l-.2-.2 1-.5v.9h.2v1h.2v.7l-.7.5zm.7-.5v.7l-.7-.2.7-.5zm-.5 0l-.2.5.2-.5zm.5 0v.7l-.7-.2.7-.5z"/>
+        <path fill="#edb92e" d="M410.6 216.4c4 0 8 3.4 8.4 7.7.6 4.4-2.2 7.7-6 7.8-4 0-7.5-3-8.3-7.3-.7-4 1.8-8 6-8z"/>
+        <path fill="#21231e" d="M419.5 224l-1 .2v-.8l-.2-.4v-.3l-.2-.4v-.3l-.2-.4-.2-.3-.2-.3-.2-.4-.2-.3-.2-.3-.3-.2-.2-.3-.3-.3-.2-.2-.3-.3-.3-.2-.3-.2-.4-.2h-.3l-.3-.3h-.4l-.3-.3h-.3l-.4-.2h-.3l-.3-.2h-1.5v-1h1.9l.4.2h.3l.4.3h.4l.4.3.4.2.3.2.5.2.3.3.3.2.4.2.3.3.3.3.3.3.3.4.2.3.2.4.3.4.2.4.2.4.2.4v.4l.2.4v.4l.2.4v.8zm-6.6 8.3v-1h.9l.2-.2h.6l.3-.2h.4l.2-.2.3-.2h.2l.2-.3h.2l.2-.3.3-.3.3-.2v-.2l.3-.3.2-.2v-.3l.3-.3.2-.4v-.3l.2-.3v-.7l.2-.3V224l1-.2v2.5l-.2.4v.8l-.3.4v.3l-.2.3v.4l-.3.3-.2.3-.3.3h-.2l-.2.4-.3.2-.3.3h-.3l-.3.3-.3.2h-.2l-.3.3h-.4l-.2.2h-.4l-.3.2H413zm-8.7-7.7l1-.2v.7l.2.5v.3l.3.4v.3l.3.3.2.4.2.3.2.3.2.3.2.3.3.3.2.3h.3l.2.3.3.3.2.2.3.2.3.2h.4l.3.3.3.2h.3l.3.2h.7l.3.2h1.2v1h-2l-.3-.2h-.4l-.4-.3h-.4l-.4-.3-.3-.2-.4-.2-.3-.2-.4-.2-.4-.2-.3-.3-.2-.2-.2-.2-.3-.3-.2-.3-.3-.3-.2-.4-.2-.3-.2-.3-.2-.4-.2-.3-.2-.4v-.4l-.2-.4-.2-.4v-.8zm6.2-8.7v1h-1l-.3.2h-.4l-.3.2h-.3l-.3.3h-.2l-.2.3-.3.2-.2.2v.2l-.3.2-.2.2-.2.3-.2.3v.2l-.2.3v.4l-.3.3v.6l-.2.3v.7l-.2.3v.7l.2.4v.8l-1 .2v-3.3l.2-.3v-.3l.2-.4v-.3l.3-.4v-.3l.3-.3.2-.3.2-.3.2-.3h.2l.2-.4.3-.2.3-.2.3-.2.3-.2.3-.2.3-.2h.3l.4-.2h.4l.3-.2h.9z"/>
+        <path fill="#edb92e" d="M411 218.6c2.8-.2 5.7 2.4 6 5.5.5 3.3-1.5 5.8-4.4 5.8-2.8 0-5.5-2.3-6-5.3s1.3-5.8 4.3-6z"/>
+        <path fill="#21231e" d="M417.6 224l-1 .2v-.6l-.2-.3v-.2l-.2-.3v-.4l-.2-.2v-.2l-.2-.3-.2-.3v-.2l-.3-.2-.2-.2-.2-.3-.2-.2-.2-.2h-.2l-.2-.3h-.2l-.3-.3h-.2l-.2-.2-.4-.2h-.5v-.2h-1.1v-1h1.1l.4.2h.3l.2.2h.2l.3.2h.3l.2.3h.3l.2.2.3.2h.2l.3.3.2.3.2.2.2.2v.2l.3.3h.2v.4l.3.3v.3l.3.2.2.3v.3l.2.3v.8l.2.3zm-5 6.3v-1h1.1l.2-.2h.4l.2-.2h.2v-.2l.3-.2h.3v-.2l.3-.2v-.2h.2l.2-.3v-.2l.2-.2.2-.3v-.7l.2-.2v-1.6h1v2.2l-.2.3v.2l-.2.3v.2l-.3.3-.2.2v.3l-.3.2-.2.2-.2.2-.3.2-.2.2-.2.2h-.2l-.2.2h-.2l-.3.2h-.2l-.2.2h-1.5zm0-1zm-6.5-4.8h1l.2.4.2.4v.2l.2.3.2.3v.3l.3.2.2.2.2.2v.2l.3.2.2.2.3.3.2.2.2.2h.2v.3h.3l.2.2h.7l.2.2h1.1v1H411l-.4-.2h-.2l-.3-.2h-.2l-.2-.3h-.3l-.2-.3-.4-.3-.2-.3-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2-.2-.3v-.2l-.3-.2-.2-.2-.2-.3v-.3l-.2-.3v-.3l-.2-.2v-.7zm1 0zm4-6.4v1h-.6l-.2.2h-.5l-.2.2h-.2l-.2.2-.2.2h-.2l-.2.3v.2l-.3.2-.2.3v.2h-.2v.3l-.2.2v.2l-.2.2v.7l-.2.2v1.7h-1V222h.2v-.4l.2-.3v-.2l.2-.2v-.2l.3-.3v-.2h.2l.2-.3.2-.2.2-.2.2-.2h.2l.2-.2h.3l.2-.3h.2l.2-.2h.6l.3-.2h.6z"/>
+        <path fill="#0c4076" d="M411.2 220.7c2 0 3.6 1.5 4 3.5.2 2-1 3.6-3 3.6a4 4 0 01-3.7-3.4c-.3-2 1-3.6 2.7-3.7z"/>
+        <path fill="#21231e" d="M415.6 224l-1 .3v-.4l-.2-.2v-.4h-.2v-.3l-.2-.2-.2-.3-.2-.2-.2-.2h-.2l-.2-.2-.2-.2h-.2l-.2-.2h-.6v-.2h-.6v-1h1l.2.2h.2l.3.2h.3v.2h.3l.2.3v.2h.3l.2.2.2.2.2.3.3.2v.4h.2v.3l.2.3v.4l.2.2zm-3.3 4.3v-1h.7l.2-.2h.4v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.5l.2-.2v-1.1l1-.3v2h-.2v.3l-.2.3-.2.3-.2.2h-.2v.2l-.2.2h-.2v.2h-.3l-.2.2h-.4v.2h-1zm-4.3-3.8l1-.2v.5l.2.3v.4h.2v.2l.2.2.2.2.2.3.2.2.2.2h.3v.2h.4l.3.2h.8v1h-1.3l-.2-.2h-.2l-.3-.2h-.2v-.2h-.2v-.2l-.3-.2-.3-.2v-.2h-.2v-.3h-.3v-.3l-.2-.2v-.2h-.2v-.5l-.2-.2v-.5zm2.7-3.8h1l-.5.5h-.7l-.2.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.5h-.2v1.3l-1 .3v-1.8h.2v-.5h.2v-.3h.2v-.3h.3v-.3h.3v-.2h.3v-.2h.3v-.2h1l.2-.2h.4l-.5.5zm1 0v.5h-.5l.5-.5zm0 0h-1l.5-.5.5.5zm-1 0v-.5h.5l-.5.5z"/>
+      </g>
+      <path fill="#fff" d="M482 183c4 0 7 3 7 7s-3 6.7-7 6.7c-3.6 0-6.7-3-6.7-6.8 0-4 3-7 6.8-7z"/>
+      <path fill="#21231e" d="M489.5 189.8h-1c0-2.3-1.4-4.6-3.5-5.6a6.3 6.3 0 00-3-.7v-1c2.6 0 5 1.3 6.4 3.5a7.4 7.4 0 011 3.8zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5.2-3.7 6.5a7.3 7.3 0 01-3.7 1zM475 190h1a6.4 6.4 0 006.3 6.2v1a7.1 7.1 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.5v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.7 1.4-5 3.5-6.4a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 171c4 0 7 3 7 7a6.8 6.8 0 11-13.7-.2c0-3.7 3-6.7 6.8-6.7z"/>
+      <path fill="#21231e" d="M489.5 178h-1c0-2.4-1.4-4.7-3.6-5.8a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.3v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.5-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 178h1a6.4 6.4 0 006.3 6.3v1a7.1 7.1 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 159.6c4 0 7 3 7 7a6.8 6.8 0 11-13.7-.2c0-3.7 3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 166.5h-1c0-2.4-1.4-4.7-3.6-5.7a6.3 6.3 0 00-3-.7v-1c2.6 0 5 1.5 6.4 3.6a7.4 7.4 0 011 4zM482 174v-1c2.5 0 4.7-1.5 5.8-3.6.4-1 .7-2 .7-3h1c0 2.6-1.4 5-3.5 6.4a7.3 7.3 0 01-4 1zm-7.2-7.5h1c0 2.4 1.4 4.7 3.6 5.7a6.3 6.3 0 002.7.7v1a7.2 7.2 0 01-6-3.6 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.4 6.4 0 00-5.5 3.6 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.4a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 127c4 0 7 3.2 7 7s-3 6.8-7 6.8a7 7 0 01.1-13.8z"/>
+      <path fill="#21231e" d="M489.5 134h-1c0-2.4-1.4-4.7-3.6-5.8a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.3v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.5-1.5 5-3.7 6.3a7.3 7.3 0 01-3.7 1zM475 134h1c0 2.3 1.4 4.6 3.5 5.6a6.3 6.3 0 002.8.7v1a7.3 7.3 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.3 6.3 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.6 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#fff" d="M482 137.2c4 0 7 3 7 6.8s-3 7-7 7c-3.6 0-6.7-3.2-6.7-7s3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 144h-1c0-2.3-1.4-4.6-3.5-5.7a6.3 6.3 0 00-3-.6v-1c2.7 0 5.2 1.4 6.5 3.6a7.4 7.4 0 011 3.7zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 144h1c0 2.4 1.4 4.7 3.5 5.7a6.3 6.3 0 002.8.7v1a7 7 0 01-6-3.5 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.4 6.4 0 00-5.5 3.6c-.5 1-.7 2-.7 2.8h-1c0-2.5 1.4-5 3.5-6.2a7.3 7.3 0 013.8-1.2z"/>
+      <path fill="#fff" d="M482 148.2c4 0 7 3 7 6.8s-3 7-7 7c-3.6 0-6.7-3.2-6.7-7s3-6.8 6.8-6.8z"/>
+      <path fill="#21231e" d="M489.5 155h-1c0-2.3-1.4-4.6-3.6-5.7a6.3 6.3 0 00-3-.6v-1c2.6 0 5 1.3 6.4 3.4a7.4 7.4 0 011 4zm-7.4 7.4v-1c2.5 0 4.7-1.4 5.8-3.4a6.4 6.4 0 00.7-3h1c0 2.6-1.5 5-3.7 6.4a7.3 7.3 0 01-3.7 1zM475 155h1c0 2.4 1.4 4.7 3.5 5.7a6.3 6.3 0 002.8.7v1a7.3 7.3 0 01-6-3.4 7.4 7.4 0 01-1.2-4zm7.3-7.4v1a6.5 6.5 0 00-5.5 3.5 6.4 6.4 0 00-.7 3h-1c0-2.5 1.4-5 3.5-6.3a7.3 7.3 0 013.8-1z"/>
+      <path fill="#edb92e" d="M487 195.5c1 1.6.7 2 1.4 2.4.8.6 2 .6 3.4.4 5.3-1 4.5 2.3 2.2 6-1 1.7-3.8 3.5-5.2 5-1.4 1.5-1.6 2.8-2 3.2h-9.2c-.5-.4-.7-1.7-2-3.2-1.5-1.5-4.2-3.3-5.3-5-2.4-3.7-3-7 2.2-6 1.3.2 2.6.2 3.4-.5.6-.6.3-1 1.3-2.5a7 7 0 012.2-2.3c1-.5 1.8-.2 2.6-.2 1 0 2-.3 2.8.2a7 7 0 012.2 2.3z"/>
+      <path fill="#21231e" d="M488.7 197.5l-.7.8-.2-.2h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.3v-.2l.8-.6v.2h.2v.3l.2.2v.2h.2v.4h.2v.4h.2v.4h.2zm-.7.8l-.3-.3.3.3zm3.8-.4v1h-2.4l-.2-.2h-.2l-.2-.2h-.3l-.2-.2.7-1v.2h.2v.2h.8l.2.2h1.9zm2.6 6.6l-.8-.6.2-.3.2-.3.2-.4.2-.3v-.3l.3-.3v-.2l.2-.2v-.6l.2-.2v-1.3l-.2-.2h-.2v-.2h-.5l-.2-.2h-2l-.2-1h2.8l.3.2h.2l.2.2.2.2.2.2.2.2v.3l.2.3v1.7l-.2.3v.3l-.3.2v.4l-.3.3v.2l-.3.4v.3l-.3.2-.3.4zm-5.3 5.2l-.6-.7.3-.2v-.2h.3l.2-.3v-.2h.3l.2-.2h.2v-.3h.2l.2-.3.2-.2h.2l.2-.3h.2v-.3l.3-.2h.2l.2-.3v-.2l.2-.2.2-.2h.2v-.3h.3v-.4h.3v-.3h.2v-.3l1 .6-.2.2-.2.3v.3l-.2.2h-.2l-.2.3v.2l-.3.2-.3.3v.2h-.3l-.2.3-.2.2h-.2l-.2.3-.2.2-.3.3-.3.3h-.2v.3l-.3.2h-.2v.3l-.3.2h-.2v.3h-.2l-.2.3zm-2.3 3.3v-1l-.3.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2h.2v-.2l.2-.2.2-.3.3-.3.8.6v.2l-.2.2-.2.2-.2.3v.2h-.2v.2l-.2.2v.2l-.2.2v.2h-.2v.4h-.2v.2l-.2.2v.2h-.5zm.3 0h-.2.2zm-5 .2v-1h4.7v1h-4.5zm0-1h.2zm0 0v1-1zm0 0zm-4.7.8l.6-.8h-.4 4.2l.2 1h-4.7l-.3-.2zm.3 0h-.2.2zm-2.4-3.2l.7-.7v.2l.2.2.2.3.2.3.2.2v.2h.2v.4h.2v.4h.2v.4h.2v.4h.2v.2l-.5.8-.2-.2v-.2l-.2-.2v-.2h-.2v-.4h-.2v-.4l-.2-.2v-.2h-.2v-.2l-.2-.3-.2-.2-.2-.3-.2-.2zm-5.4-5.2l1-.6v.2l.2.3h.2v.3l.2.2h.2v.3h.3v.3l.2.2h.2l.2.3.2.2v.2l.3.2h.3l.2.3h.2l.2.2v.2h.2l.2.3h.2l.2.3h.2v.3l.3.2h.2v.3h.3v.3l-.6.8-.2-.2-.3-.3-.3-.2-.3-.2v-.2l-.2-.2h-.2l-.2-.3h-.2l-.2-.2h-.2v-.3l-.3-.2h-.2l-.2-.3v-.2h-.3l-.2-.3v-.2h-.3l-.2-.3v-.2l-.3-.2h-.2v-.3l-.3-.2-.2-.2-.2-.2zm2.7-6.7v1l-.6-.2h-2.1l-.2.2h-.2v.2h-.2v.4l-.2.2v1.1l.2.2v.3l.2.3v.2l.2.3.2.4v.3l.3.3.3.4.2.3.2.3-1 .6v-.4l-.3-.3-.2-.4-.2-.4v-.3l-.3-.4v-.4l-.3-.3v-.4l-.2-.3v-.6l-.2-.3v-1l.2-.2v-.2l.3-.2.2-.2.2-.2.4-.2h.3l.3-.2h2.5zm3-.5l.8.8-.2.2h-.2l-.2.2h-.4l-.2.2h-3v-1h2.5l.2-.2h.4v-.2h.2zm1.4-2.3l.7.6v.3l-.2.2v.2h-.2v.4h-.2v.8h-.2v.2h-.2v.2l-.2.2-.8-.7h.2v-.4h.2v-.4h.2v-.2l.2-.2v-.4h.2v-.3h.2v-.3zm0 0l.2-.4-.3.4zm2.3-2.4l.5.8-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-.2.2v.2l-1-.6.2-.2.2-.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2.2-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2zm2.8-.3v1h-2.4l-.5-.7h.2v-.2h.4l.2-.2h2zm3 .3l-.5.8h-.4v-.2H482v-1h2.5l.2.2h.2l.2.2zm0 0l.3.2-.3-.2zm2 3.2v-1l-.4.8-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2v-.2l.4-.8h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2l-.4.8zm.4-.8l.5.8h-1l.4-.8zm-.4-.2v1l-.4-.2.4-.8zm-.4.8l-.5-.8h1l-.4.8z"/>
+      <path fill="#21231e" d="M481.4 212.8l-1-.2c-.4-3.7-2-7-4.3-9.6 2.8 1.8 4.8 5.7 5.4 9.8z"/>
+      <path fill="#edb92e" d="M494.2 198.3c-.5 1-1 2.4-2 3.5-1.5 1.6-4 .5-6.5-1.6-.8-.6-2.2-1-3.6-1a6 6 0 00-3.4 1c-2.5 2-5 3.2-6.6 1.6-1-1-1.5-2.4-2-3.5h2.5c1.3.3 2.6.3 3.4-.4.6-.6.3-1 1.3-2.5a7 7 0 012.2-2.3c1-.5 1.7-.2 2.6-.2 1 0 2-.3 2.8.2.8.5 1.5 1.3 2.2 2.3 1 1.6.7 2 1.3 2.4 1 .6 2.2.6 3.5.4 1-.2 1.8-.2 2.4 0z"/>
+      <path fill="#21231e" d="M492.6 202l-.7-.6v-.2l.2-.2.2-.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.2v-.2l.2-.3v-.4l1 .5v.4l-.2.2v.2l-.2.2v.4h-.2v.2l-.2.2v.3h-.2v.2h-.2v.2h-.2v.3l-.2.2-.2.2h-.2zm-7.3-1.4l.7-.7h.2l.2.2.3.2.2.2.3.3h.3l.2.2h.2l.2.2h.2l.2.2h.2l.2.2h.4l.2.2h1.6l.2-.2.2-.2h.2v-.2l.8.7-.2.3h-.2v.3h-.3l-.3.2h-.3l-.2.2h-1.9l-.3-.2h-.3l-.2-.2h-.3l-.2-.2h-.3l-.2-.2-.2-.2h-.3l-.2-.3h-.3l-.2-.3-.2-.2-.2-.2-.2-.2-.3-.2zm.7-.7l.5.3-.5-.4zm-4-.2v-1h2v.2h.7v.2h.4l.2.2h.2l.2.2h.2v.2h.2l-.7.8h-.2v-.2h-.2v-.2h-1v-.2h-1v-.2h-1zm-3 .8l-.7-.7v-.2h.2l.2-.2h.2v-.2h.2l.2-.2h.5v-.2h1.2v-.2h1v1h-1.5v.2h-.5l-.2.2h-.4v.2h-.2l-.2.2zm-7.3 1.5l.7-.6.3.2.2.2h.2v.2h1.7v-.2h.5l.2-.2h.2v-.2h.3l.2-.2.2-.2h.3l.2-.3h.2l.2-.3.3-.2v-.2h.3l.7.6-.3.2-.2.2-.3.2-.2.2-.2.2h-.3l-.2.3h-.3l-.2.2h-.2l-.3.2h-.2l-.2.2h-.2l-.2.2h-.3l-.3.2H473l-.4-.2h-.2l-.2-.2-.2-.2-.3-.3zm-1.7-4l.2 1 .3-.7v.2l.2.2v.3l.2.2v.4l.2.2v.2h.2v.4h.2v.4h.2v.2h.2v.2h.2v.2l.2.2-.7.7h-.2v-.2h-.2v-.2h-.2v-.5h-.2v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.4h-.2v-.4l-.2-.2v-.4h-.2l.4-.8zm-.4.7l-.2-.6.6-.2-.4.7zm3-.6l-.2 1-.2-.2H470l-.2-1h2.4zm3-.5l.7.8-.2.2h-.2l-.2.2h-.4l-.2.2h-2.8v-1h2.3l.2-.2h.4v-.2h.2zm.7.8l-.5.4.5-.4zm.6-3l.7.5v.3l-.2.2v.2h-.2v.4h-.2v.8h-.2v.2h-.2v.2l-.2.2-.8-.7h.2v-.4h.2v-.4h.2v-.2l.2-.2v-.4h.2v-.3h.2v-.3zm2.3-2.5l.5.8-.2.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2v.2h-.2v.2l-.2.2-.2.2v.2l-1-.6.2-.2.2-.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2.2-.2h.2v-.2l.2-.2h.2v-.2h.2l.2-.2zm2.8-.3v1h-2.3l-.5-.7h.2v-.2h.4l.2-.2h2zm3 .3l-.5.8h-.4v-.2H482v-1h2.5l.2.2h.2l.2.2zm0 0l.3.2-.3-.2zm2.4 2.4l-.8.6-.2-.2v-.2h-.2v-.2l-.2-.2-.2-.2-.2-.2v-.2h-.2v-.2h-.2v-.2h-.4v-.2h-.2v-.2l.4-.8h.2l.2.2.2.2h.2v.2h.2v.2h.2v.2h.2v.2h.2v.2l.2.2.2.2v.2h.2v.2h.2v.2zm1.3 2.3l-.7.8-.2-.2h-.2v-.4h-.2v-.4h-.2v-.4l-.2-.2v-.2l-.2-.2-.2-.3v-.2l.8-.6v.2h.2v.3l.2.2v.2h.2v.4h.2v.4h.2v.4h.2zm-.7.8l-.3-.3.3.3zm3.8-.4v1h-2.4l-.2-.2h-.2l-.2-.2h-.4v-.2h-.2l.7-1v.2h.2v.2h.8l.2.2h1.9zm3 .5l-1-.4.3.8H492l-.2-1h2.4l.5.7zm-.5-.7h.6l-.3.7-.4-.7zm0 .5l.4.2-.5-.2zm0-.5h.6l-.3.7-.4-.7z"/>
+      <path fill="#edb92e" d="M482 211.7c4.4 0 8 3.4 8 7.7s-3.6 7.8-8 7.8-7.6-3.5-7.6-7.8 3.5-7.8 7.7-7.8z"/>
+      <path fill="#21231e" d="M483 212.8l.8-.2c.5-3.7 2-7 4.3-9.6a14.7 14.7 0 00-5 9.8z"/>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#b"/>
+      <path fill="#edb92e" stroke="#21231e" d="M577 293.6c2 .3 3 1.5 3 2.8 0 1.3-1 2.6-3 3a8.7 8.7 0 01-1.6.2c-60.8 5.2-125.7 5.2-186.5 0a8.7 8.7 0 01-1.6-.3c-2-.3-3-1.6-3-3 0-1.2 1-2.4 3-2.7a8.6 8.6 0 011.5-.3c60.7-5.2 125.6-5.2 186.4 0 .6 0 1 .2 1.5.3z"/>
+      <path fill="#21231e" d="M412 298.4h-.2v-.2h-.2v-1h.4v-.2.2-.2h2.3l.7-.2h3l.7-.2h3l.7-.2h3l.8-.2h3.3l.7-.2h3.8l.7-.2h.8v1.2h-2.9l-.7.2H428l-.7.2h-2.7l-.8.2H421l.7.2h3.7l.7.2h2.9l.7.2h3.7l.7.2h1.5v1.2h-3.7l-.7-.2h-3.8l-.7-.2h-2.9l-.7-.2H420l-.6-.2h-2.9l-.7-.2H413l-1-.2v-.2.2zm.2-.7zm46.6-2.6v1.3H453l-.7.2h-6.6l-.7.2h-5l-1 .2h-3.5v-1.2h3.5l.8-.2h5.2l.7-.2h5.9l.7-.2h6.8zm23.3 0v1h-13.7l-.7.2h-8.8v-1h1.4l.8-.2H482zm23.5 0v1.3h-11.1l-.7-.2H482v-1h23.6zm23.3 1v1h-5.2l-.8-.2h-5.2l-.7-.2h-6.5l-.8-.2h-4.3V295h.7l.7.2h7.5l.8.2h5l.8.2h5.1l.6.2h2.3zm23.4 1v.2h.4v1h-.2l-.2.2h-3l-.7.2h-2.2l-.7.2h-3.8l-.8.2h-2.8l-.7.2H534l-.8.2h-3.6l-.8.2v-1.2h2.2l.7-.2h3.7l.8-.2h3.7l.7-.2h1.8-1.4l-.8-.2h-2.7l-.7-.2H533l-.6-.2h-3.6V296h6.5l.7.2h3l.8.2h2.8l.7.2h3l.7.2h3l.7.2h1.5zm0 .7zm-116.7.7h.2l.2.2v.8h-.2v.2h-.2v-1.2zm93.3 1.2h-.2l-.2-.2v-.2h-.2v-.8h.2v-.2h.4v1.2zm-50.3-36.2v-1h3.8v1h-4zm0-1zm-1.2 0h1.2v1h-1.2v-1zm0 1zm-.6-1h.6v1h-.6v-1zm-1 0h1v1h-1v-1zm0 0zm-.8 0h.6v1h-.7v-1zm0 1zm-.5-1h.4v1h-.5v-1zm0 0zm-.8 0h.8v1h-.8v-1zm0 0zm-1.2 0h1.2v1h-1.2v-1zm-1 0h1v1h-1v-1zm0 0zm-.2 0h.2v1h-.2v-1zm-1 0h1v1h-1v-1zm-2.5 1v-1h2.6v1h-2.5zm0-1zm-.3 0h.2v1h-.2v-1zm0 1zm-.2-1h.2v1h-.2v-1zm0 0zm-1 0h1v1h-1v-1zm0 1zm-.5-1h.4v1h-.4v-1zm0 0zm-.4 0h.4v1h-.4v-1zm0 1zm-1.2-1h1.2v1h-1.2v-1zm0 0zm0 0v1-1zm0 1h-.2.2zm-1.2-1h1.2v1l-1.2.2v-1zm-.4 0h.4v1.2h-.4v-1zm-.8.2h.8v1h-.8v-1zm0 0h.3-.2zm-.3 0h.3v1h-.3v-1zm0 1h-.5.5zm-1-1h1v1h-1v-1zm-1 0h1v1h-1v-1zm0 0zm-.2 0v1-1zm0 1zm-1-1h1v1h-1v-1zm-.6 0h.5v1h-.4v-1zm0 0zm0 0v1-1zm0 1zm-4.2.2v-1h3.5v-.2h.4v1h-2.7l-.2.2h-.8zm0-1zm-.6 0h.5v1h-.6v-1zm0 0zm-1.7 0h1.6v1h-1.7v-1zm0 1zm-.2-1h.3v1h-.2v-1zm0 0zm-1.3 0h1.4v1h-1.3v-1zm-1 0h1v1h-1v-1zm-.6 0h.7v1h-.6v-1zm0 0zm0 0v1.2-1zm0 1.2zm-1.6-1h1.5v1h-1.5v-1zm0 1zm0-1v1-1zm0 0zm-1.2 0h1.2v1h-1.2v-1zm0 0zm0 0v1-1zm0 1zm-1.2-1h1l.2 1H444v-1zm-.8 0h.8v1h-.7v-1zm0 0zm-1.6.2h1.6v1h-1.5v-1zm0 1zm0-1v1-1zm0 0zm-6.2 1.3v-1h1.7l.2-.2h3.9v1H436l-.2.2zm0 0zm-.4-1h.3v1h-.2v-1zm0 0zm-9 1.4v-1h1.3l.3-.2h3.2l.3-.2h3.5v1h-5.1l-.3.2H426zm0 0zm-.3-1h.2v1h-.3v-1zm0 0zm-.5 0h.5v1h-.4v-1zm-18.2 2.2v-1h1.8l.5-.2h1.7l.5-.2h2.4l.6-.2h2.6l.6-.2h2.2l.6-.2h2.8l.6-.2h1.2v1h-2.1l-.6.2h-2.7l-.6.2h-2.3l-.6.2h-2.8l-.6.2h-2.2l-.5.2H408l-.6.2h-.6zm0 0zm-.3-1h.3v1h-.2v-1zm0 0zm0 0v1-1zm0 1zm-26.3 2.4v-1h.7l1-.2h.8l.8-.2h1.6l.8-.2h1l.7-.2h1.6l.8-.2h1.8l.8-.2h.8l1-.2h1.7l.7-.2h1.7l.8-.2h1.8l.7-.2h1.6l1-.2h1.5l1-.2v1H405l-.7.2h-1.7l-.8.2H400l-.7.2h-.8l-1 .2H396l-.8.2h-1.7l-.8.2H391l-.8.2h-.8l-.8.2H387l-1 .2h-.7l-.8.2H383l-1 .2h-.8l-.8.2zm0 0zm0-7v1h-.5l-.5.2h-.5l-.3.2-.4.2-.3.2h-.2l-.3.3-.2.2-.3.3v.5l-.2.2v1.1h.2v.3l.2.2.2.2.3.3.3.2h.2l.3.2h.3l.4.2h1v1h-1.6l-.4-.2-.4-.2-.3-.2-.3-.2-.3-.2-.4-.2-.2-.3-.2-.2v-.3l-.3-.3-.2-.3v-1.6l.2-.3.2-.3.2-.4.2-.3.2-.3.4-.3.3-.2.4-.2.3-.2h.4l.5-.2h.6l.5-.2zm0 1zm26.3-3.3v1H405l-.7.2h-1.7l-.8.2H400l-.7.2H396l-.8.2h-1l-.7.2H392l-1 .2h-1.6l-.8.2h-.8l-.8.2h-1.7l-.8.2h-.8l-.8.2H381l-.8.2v-1h1.7l.8-.2h.8l.8-.2h.8l.8-.2h1.7l.8-.2h1.6l1-.2h.8l.8-.2h1.8l.7-.2h1.7l1-.2h.7l.8-.2h1.8l.7-.2h1.6l1-.2h2.5zm0 1zm0 0v-1 1zm0-1zm37-2.2v1.2H439l-1 .2h-2.3l-1.3.2H431l-1.2.2h-2.2l-1.3.2H424l-1.2.2h-2.3l-1 .2H417l-1.2.2h-1.2l-1 .2h-2.3l-1.3.2h-1l-1.2.2h-1.2v-1h2.2l1.2-.2h1l1.2-.2h2.2l1.3-.2h1l1.2-.2h2.3l1-.2h2.3l1.3-.2h2.4l1.2-.2h2.3l1-.2h3.5l1.2-.2h3.5l1-.2h2.5zm1 1l-1 .2v-1h1v1zm0 0zm.2 0h-.3v-1l.2 1zm-.2-1zm.4 1h-.3l-.2-1h.4v1zm1.2 0h-1.2v-1h1.2v1zm0 0zm0 0v-1 1zm0-1zm15.4-.4v1h-5.5l-.5.2h-6.5l-.4.2h-2.6v-1h5l.5-.2h7.7l.5-.2h1.8zm.8 1h-.8v-1h.8v1zm0 0zm0 0v-1 1zm0-1zm1.4 1h-1.4v-1h1.4v1zm0 0zm.2 0h-.2v-1h.2v1zm0 0h-.2.2zm0 0v-1 1zm0-1zm1.2 1h-1.2v-1h1.2v1zm.5 0h-.6v-1h.4v1zm-.2-1zm.8 1h-.7l-.2-1h.8v1zm1 0h-1v-1h1v1zm0 0zm.2 0h-.3v-1h.2v1zm0-1zm.4 1h-.4v-1h.4v1zm3-1l.2 1H468v-1h3.3zm1.2 1h-1v-1l1-.2v1zm0 0v-1.2 1zm0-1.2zm1.3 1h-1.2v-1h1.2v1zm3.5-1v1h-3.5v-1h3.5zm0 0zm0 1v-1 1zm0 0zm1.3 0h-1.2v-1h1.2v1zm3.6-1v1h-3.5v-1h3.7zm3.8 0v1H482v-1h3.8zm1 1h-1v-1h1.2v1zm.2 0zm0 0v-1 1zm0-1zm3.6 0v1H487v-1h4zm1 1h-1v-1h1.2v1zm.2-1zm0 1v-1 1zm1 0h-1v-1h1v1zm3.3-1v1H493v-1h3zm.5 1h-.4v-1h.5v1zm0-1zm.3 1h-.3v-1h.3v1zm0 0zm1 0h-1v-1h1v1zm.6 0h-.7v-1h.8v1zm0-1zm.5 1.2h-.6v-1h.5v1zm1 0h-1v-1h1v1zm0-1zm0 1v-1 1zm0 0h.3-.2zm.3 0h-.2v-1h.3v1zm0 0zm1.3 0h-1.3v-1h1.4v1zm0-1zm0 1v-1 1zm0 0h.2zm1 0h-1v-1h1v1zm15.2-.6v1h-6l-.4-.2H504l-.6-.2h-.9v-1h6l.4.2h6.6l.4.2h1.7zm0 0zm0 1v-1 1zm0 0zm1.3 0h-1v-1h1v1zm.4 0h-.3v-1h.5v1zm0-1zm.2 1h-.2v-1h.2v1zm0 0zm1 .2h-1v-1h1v1zm37 1v1h-2.3l-1.2-.2h-1l-1.2-.2h-2.2l-1.3-.2H546l-1-.2h-1.3l-1-.2h-2.3l-1.3-.2H537l-1-.2h-4l-1-.2h-2.6l-1-.2H524l-1-.2h-2.4v-1h4.7l1.2.2h3.3l1.3.2h2.3l1.3.2h2.3l1 .2h2.4l1 .2h2.3l1.3.2h2.3l1 .2h2.3l1.2.2h1.2l1 .2h1.3l1 .2h1.3zm0 0zm0 1v-1 1zm0 0zm26.4 1.4v1H582l-.8-.2h-.8l-.8-.2H578l-.7-.2h-.8l-.8-.2H574l-.8-.2h-.8l-.8-.2h-1.8l-.7-.2h-1.5l-.8-.2H565l-.8-.2h-1.7l-.8-.2H560l-.8-.2h-1.6v-1h3.5l.8.2h1.6l1 .2h1.7l.7.2h1.7l.8.2h1.8l.7.2h.8l.8.2h1.8l.8.2h.8l.8.2h1.8l.7.2h.7l.8.2h1.8l.7.2zm0 1zm0 6v-1h1.6l.3-.2h.3l.3-.2.2-.2.2-.2h.2v-.3l.2-.2v-.2h.2v-1.4l-.2-.3v-.2h-.3l-.2-.3-.3-.2h-.2l-.3-.3-.4-.2h-.4l-.4-.2h-.4l-.5-.2v-1h.5l.6.2h.5l.5.3.4.3.4.2.3.2.4.3.3.3.2.3v.3l.3.2v.3l.2.3v1.3l-.3.3v.3l-.3.3-.3.4-.3.2-.3.2-.2.2-.3.2-.4.2h-.3l-.4.2H584zm0 0zm-26.5-2.4v-1h1.8l.8.2h1.8l.8.2h1.8l.7.2h1.7l1 .2h.7l.8.2h1.8l.7.2h1.6l.8.2h1l.8.2h1.6l.8.2h1l.7.2h1.5l.8.2h1l.7.2v1h-1l-.8-.2h-1.6l-.8-.2h-.8l-.8-.2h-1.7l-.8-.2h-.8l-1-.2h-1.6l-.8-.2h-.8l-1-.2h-1.4l-.8-.2H566l-.7-.2h-1.6l-1-.2H561l-1-.2h-1.6l-.8-.2zm0 0zm0-1v1-1zm0 0zm-.2 0h.3v1h-.4v-1zm0 1zM539 265v-1h2.9l.5.2h3l.5.2h2.3l.6.2h2.2l.6.2h2.3l.5.2h2.4l.5.2v1h-1.7l-.5-.2h-2.3l-.6-.2H550l-.7-.2H547l-.6-.2h-2.9l-.6-.2H540l-.6-.2h-.6zm-.4-1h.5v1h-.4v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-9.2-.5v-1h4l.3.2h3.2l.3.2h1.3v1h-1.6l-.3-.2H533l-.4-.2h-3.3zm0-1zm-.3 0h.2v1h-.3v-1zm0 1zm-6.4-.3v-1h4.5l.2.2h1.7v1h-4.4l-.2-.2h-1.7zm0-1zm0 0v1-1zm0 1zm-1.5-1h1.7v1H521v-1zm0 0zm-.7 0h.8v1h-.7v-1zm-1-.2h1v1H519l.2-1zm-.2 1zm0-1h.2v1-1zm0 0zm-1 0h1v1h-1v-1zm0 0zm-.2 0v1-1zm0 1zm-1.4-1h1.4v1h-1.4v-1zm0 1zm-.2-1h.2v1h-.2v-1zm0 0zm-.6 0h.6v1h-.7v-1zm-1 0h1v1h-1v-1zm-1.4-.2h1.4v1h-1.4v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-1.6-1h1.6v1h-1.6v-1zm0 0zm-.6 0h.6v1h-.6v-1zm-4.2 1v-1.2h3.3l.2.2h.8v1h-4.3zm0 0zm0-1.2v1-1zm0 0zm-.5 0h.6v1h-.5v-1zm-1 0h1v1h-1v-1zm0 1zm0-1v1-1zm0 0zm-1.3 0h1.2v1h-1.3v-1zm-1 0h1v1h-1v-1zm0 1h.6-.6zm-.2-1h.3v1h-.3v-1zm0 0h-.3.3zm-.8 0h.8v1h-.8v-1zm-.4 0h.4v1h-.4v-1zm-1.2 0h1.3v1H500v-1zm0 1h.2zm0-1v1-1zm0 0zm-1 0h1v1h-1v-1zm0 1zm-.5-1h.4v1h-.6v-1zm0 0zm-.4 0h.5v1h-.4v-1zm0 1zm-1-1h1v1h-1v-1zm0 0zm-.2 0h.2v1h-.2v-1zm0 1zm-.3-1h.3v1h-.3v-1zm0 0zm-2.6.8v-1h2.3v1H494zm-1-1h1v1h-1v-1zm-.2 0h.2v1h-.2v-1zm0 0zm-1 0h1v1h-1v-1zm-1.2 0h1.2v1h-1.3v-1zm0 0zm-.8 0h.8v1h-.8v-1zm0 0zm-.4 0h.4v1h-.5v-1zm0 1zm-.7-1h.7v1h-.7v-1zm0 0zm-1 0h1v1h-1v-1zm-.7 0h.6v1h-.6v-1zm0 1zm-1.2-1h1.2v1H486v-1zm0 0zm-3.7 1v-1h3.9v1h-4.1zm.4 1.8L460 276.6l-.4-1 22.7-11.3h.4v1zm-.5-1h.4-.5zm22.7 12.4l-23-11.4.4-1 22.7 11.5v1h-.3zm.4-1l1 .6-1 .4v-1zm-23 11.6l22.7-11.5.4 1-22.6 11.4h-.5v-.8zm.4 1h-.3.4zM460 275.7l22.8 11.5-.5 1-22.8-11.6v-1h.4zm-.4 1l-1-.5 1-.5v1z"/>
+      <path fill="#0c4076" d="M482 269c5.8 0 10.4 3.2 10.4 7s-4.6 7-10.3 7-10-3.2-10-7 4.5-7 10-7z"/>
+      <path fill="#21231e" d="M493 276h-1v-.3l-.2-.3v-.5l-.2-.3v-.3l-.3-.3-.2-.4v-.3l-.3-.2-.2-.2-.2-.3-.3-.2-.3-.3-.3-.2-.3-.2-.2-.2-.4-.2-.4-.2-.3-.2-.4-.2h-.5l-.4-.3h-.4l-.5-.2h-.8l-.5-.2h-1.9v-1.2h1.7l.6.2h.5l.5.2h.5l.5.2h.4l.5.3.4.2.5.2h.5l.4.3.3.2.4.2.3.3.4.3.3.2.3.3.3.3.2.4.3.3.2.4.2.4.2.4v.3l.2.5v.4l.2.2v.8zm-11 7.4v-1h1.6l.5-.2h1.1l.5-.2h.5l.4-.3h.4l.5-.3h.4l.3-.3h.4l.4-.3.3-.2.4-.3.3-.2.3-.2.3-.3.2-.3.2-.2.3-.3v-.3l.3-.3h.2v-.4l.2-.3v-.7l.2-.3v-.3h1v.4l-.2.4v.4l-.2.4v.3l-.2.3-.2.3-.2.4-.2.3-.3.3-.2.3-.3.2-.3.3-.3.3-.4.3-.3.3-.4.2-.4.3-.5.2-.4.2-.4.2h-.4l-.5.3h-.4l-.5.3h-.5l-.5.2h-1.1l-.5.2H482zm-10.6-7.4h1v1l.2.3v.3l.2.2.2.3v.4l.3.3.2.3.3.2.2.3.3.3.3.2.3.2.2.3.3.2.4.2h.2l.4.3h.4l.4.3h.5l.3.3h.9l.5.2h1.5l.6.2h.5v1h-1.9l-.5-.2h-.5l-.5-.2-.5-.2h-.4l-.5-.3h-.4l-.4-.3-.4-.2-.4-.2-.4-.3-.4-.2-.3-.2-.4-.2-.4-.3-.3-.3-.3-.3-.2-.4-.3-.3-.2-.3-.2-.4v-.3l-.2-.4-.2-.4v-.8l-.2-.4v-.4zm10.7-7.4v1h-1.3l-.5.2h-.3l-.5.2h-.5l-.4.2h-.4l-.6.3h-.4l-.4.3-.4.2-.3.2-.5.2-.3.2-.3.2-.4.2-.3.3-.3.2-.2.3-.3.3-.2.3-.2.3v.3l-.2.2v.3l-.2.3v.7l-.2.3v.3h-1V275l.2-.5.2-.4v-.2l.3-.4.3-.3.2-.3.3-.3.2-.3.3-.2.3-.3.3-.2.3-.3.3-.3.4-.2.4-.2.4-.2h.4l.4-.3.5-.2.5-.2h.5l.5-.2h1l.5-.2h1.1l.6-.2h.5z"/>
+      <path fill="#edb92e" d="M482 211.7c4.4 0 8 3.4 8 7.7s-3.6 7.8-8 7.8-7.6-3.5-7.6-7.8 3.5-7.8 7.7-7.8z"/>
+      <path fill="#21231e" d="M490.4 219.4h-1v-1l-.2-.3v-.4l-.2-.3v-.4l-.2-.4v-.3l-.3-.3-.2-.3-.2-.3v-.3l-.3-.2-.2-.3-.2-.2-.3-.2-.3-.2-.2-.2-.3-.2-.3-.2-.4-.2h-.3l-.3-.3h-.4l-.3-.2h-.4l-.4-.2H482V211l.6.2h1.2l.4.2h.4l.4.2.3.2.4.2h.4l.4.3.3.3.4.2.4.2.3.3.3.3.2.3.3.2.2.3.3.3.2.3.2.5.2.3v.4l.3.4v.8l.2.4v.8l.2.4v.4zm-8.3 8.3v-1h1.5l.3-.2h.3l.3-.2.4-.2h.3l.3-.2h.3l.2-.3.3-.2.2-.2.3-.2.3-.2.2-.3.2-.2.2-.2v-.3l.3-.3.2-.3.2-.4v-.3l.2-.4v-.7l.2-.4v-.8l.2-.4v-.4h1v1.2l-.2.4v.5l-.2.4v.3l-.3.4v.3l-.3.4-.2.3-.2.4-.3.4-.2.3-.3.3-.2.3-.3.3-.3.2-.3.3-.3.3-.3.2-.3.2-.3.2h-.4l-.3.2-.4.2h-.4l-.4.2H482zm-8-8.3h1v1.8l.2.3.2.3v.3l.2.3.2.3.2.2.2.3.2.3.2.3.2.3.2.3.3.2.2.3.3.3.3.2.4.2h.3l.3.3h.3l.4.3h.3l.3.2h.7l.4.2h.7v1h-1.6l-.4-.2h-.3l-.4-.3h-.4l-.4-.3-.4-.3-.3-.2-.5-.2-.3-.2-.3-.2-.4-.2-.3-.3-.3-.3-.2-.3-.3-.3-.2-.3-.2-.3v-.3l-.3-.4v-.3l-.3-.4v-.4l-.2-.5v-.4l-.2-.3v-1.4zm8-8.3v1.2h-1.3l-.4.2h-.3l-.3.2h-.4l-.3.3h-.3l-.3.2-.3.2-.2.2-.3.2-.2.3-.3.3-.2.2-.2.3-.2.3-.2.4-.2.3-.2.3-.2.3v.3l-.2.3-.2.3v.7l-.2.3v1.1h-1v-1.6l.2-.4v-.4l.2-.4.2-.4v-.4l.3-.3v-.4l.3-.2.2-.3.3-.3.2-.3.3-.4.3-.3.3-.3.2-.2.3-.2.4-.3.2-.2h.4l.3-.2.3-.2h.4l.4-.2h.5l.4-.2h1.1z"/>
+      <path fill="#edb92e" d="M482 213.7c3.3 0 5.8 2.6 5.8 5.7 0 3.2-2.5 5.8-5.7 5.8-3 0-5.5-2.6-5.5-5.8 0-3 2.5-5.7 5.6-5.7z"/>
+      <path fill="#21231e" d="M488.3 219.4h-1V218h-.2v-.7l-.2-.2v-.2l-.2-.3-.2-.2v-.2l-.3-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.3h-.4l-.2-.3h-.2l-.3-.2h-.6l-.2-.2H482v-1h1.8l.3.2h.3l.2.2h.3l.3.3h.4l.2.3h.2l.3.3.3.2.2.2.2.2.2.3v.2l.3.3v.2l.3.3v.2l.2.3.2.3v.6l.2.2v1.3zm-6.2 6.3v-1h1.1l.2-.2h.3l.2-.2h.2l.2-.2h.4l.2-.2.2-.2h.2l.2-.3.2-.2h.2v-.2l.3-.2v-.2l.3-.3.2-.3v-.2l.2-.3v-.2l.2-.3v-1.3h1v2l-.2.3-.2.3-.2.4-.2.3v.2l-.3.2v.2l-.3.2-.2.3h-.2l-.2.3h-.2l-.2.3-.3.2h-.2l-.2.3-.3.2h-.2l-.3.2h-.3l-.3.2h-1.4zm-6-6.3h1v1.3l.2.3v.2l.2.3v.2l.2.2.2.4.2.2v.2h.3l.2.3.2.3v.2h.3l.2.3h.3l.2.2h.2v.2h.4l.2.2h.2l.3.2h.9v1h-1.5l-.3-.2h-.3l-.3-.2h-.2l-.3-.3-.3-.2-.3-.2-.3-.2h-.2l-.2-.3h-.2l-.2-.4-.2-.2-.2-.2-.2-.3-.2-.3v-.3l-.2-.3h-.2v-.4l-.2-.3v-.6l-.2-.3v-.9zm6-6.2v1H481l-.2.2h-.4l-.3.2-.3.3h-.5l-.2.3h-.2v.3l-.3.2h-.2l-.2.3v.3l-.2.2v.2l-.2.3v.2l-.2.2v.2l-.2.3v.4l-.2.2v.7h-1V218l.2-.4v-.3l.2-.3.2-.3v-.2l.2-.3.2-.2.2-.3.2-.2.2-.3.2-.2.2-.2.2-.2.2-.2h.3l.2-.3h.2l.3-.2h.2l.3-.2h.3l.3-.2h.5l.3-.2h.6z"/>
+      <path fill="#0c4076" d="M482 215.8c2 0 3.7 1.6 3.7 3.6S484 223 482 223c-1.8 0-3.4-1.6-3.4-3.6s1.6-3.6 3.5-3.6z"/>
+      <path fill="#21231e" d="M486.2 219.4h-1v-.8h-.2v-.3l-.2-.2v-.2l-.2-.2-.2-.2-.2-.3h-.2l-.3-.2h-.2l-.2-.2h-.2v-.2H482v-1h1.4v.2h.5v.2h.3v.2h.3v.3h.3v.2l.2.2.2.3.2.3v.2l.2.2.2.3v.4l.2.2v.6zm-4 4.2v-1h.6v-.2h.5l.3-.2h.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2v-.2l.2-.2v-.4h.2v-1h1v1l-.2.2v.2l-.2.2v.2l-.2.2-.2.3-.2.2-.2.2-.3.2-.3.3h-.3l-.3.2-.3.2h-1l-.3.2zm-4-4.2h1v1.3l.2.2v.2l.2.2.2.2.2.2.2.2.2.2h.2v.2h.4l.2.2h.8v1.2h-.7l-.2-.2h-.3v-.2h-.5l-.2-.2-.3-.3h-.2v-.2l-.2-.2h-.2v-.2l-.2-.3-.2-.3v-.2l-.2-.2-.2-.3v-1.4zm4-4v1h-1l-.2.2h-.2l-.2.2h-.2v.2h-.2l-.2.3-.2.2-.2.2-.2.3v.4h-.2v1h-1V218l.2-.2.2-.3v-.2l.2-.2.2-.2.3-.3.2-.2.2-.2h.2l.2-.2h.2l.2-.2h.3l.3-.2h.9z"/>
+    </g>
+    <path fill="#c6363c" d="M314.6 301.2v271.3c0 48.5 18.8 92.6 49.2 124.6A162.9 162.9 0 00482 749a163 163 0 00118.5-51.7c30.4-32 49.2-76 49.2-124.5V301.2h-335z"/>
+    <path fill="#fff" d="M313.4 300v277l.2 4.6.3 4.5.3 4.6.5 4.4.5 4.5.7 4.3.8 4.4 1 4.3 1 4.2 1 4.3 1.2 4.2 1.3 4 1.4 4.2 1.4 4 1.7 4 1.6 4 1.8 4 2 3.8 1.8 3.8 2 3.7 2 3.7 2.2 3.6 2.2 3.6 2.4 3.5 2.4 3.6 2.4 3.4 2.6 3.3 2.6 3.2 2.7 3.2 2.8 3 3 3.2 1.6-1.7-2.8-3-2.7-3-2.6-3.3-2.5-3.2-2.7-3.3-2.4-3.3-2.5-3.4-2.2-3.5-2.3-3.5-2-3.6-2-3.6-2-3.7-2-4-1.8-3.7-1.7-3.8-1.6-4-1.7-4-1.4-4-1.5-4-1.2-4-1.2-4.2-1-4-1-4.3-.8-4.3-.8-4.3-.7-4.3-.6-4.2-.4-4.5-.4-4.4-.2-4.5-.2-4.5V302.5h332.7V577l-.2 4.5-.3 4.4-.3 4.3-.5 4.5-.6 4.3-.7 4.4-1 4.3-.8 4.3-1 4.2-1 4-1.2 4.3-1.3 4-1.3 4-1.4 4-1.6 4-1.6 4-1.7 3.8-1.7 3.8-2 4-2 3.6-2 3.6-2 3.6-2.3 3.5-2.3 3.5-2.3 3.4-2.5 3.3-2.6 3.3-2.6 3.2-2.6 3.2-2.7 3-2.8 3-3 3-2.8 3-3 2.7-3 2.6-3.3 2.6-3 2.6-3.4 2.4-3.3 2.5-3.3 2.3-3.4 2.2-3.5 2.2-3.5 2-3.5 2-3.6 2-3.7 1.7-3.7 1.8-3.8 1.7-3.8 1.5-3.8 1.4-4 1.3-3.8 1.3-4 1-4 1-4 1-4 1-4.2.6-4 .6-4.3.5-4 .4-4.3.4-4.3.2H482v2.4h4.5l4.3-.2 4.3-.3 4.4-.4 4.2-.4 4.2-.6 4.2-.8 4-.8 4.2-1 4-1 4-1.2 4-1.2 4-1.4 4-1.4 3.8-1.6 3.7-1.6 3.8-1.7 3.7-2 3.7-1.8 3.5-2 3.5-2 3.6-2.3 3.4-2.2 3.4-2.4 3.3-2.5 3.3-2.4 3.2-2.6 3.2-2.7 3-2.7 3-2.8 3-3 3-3 2.8-3 2.8-3 2.7-3.3 2.6-3.2 2.5-3.3 2.5-3.4 2.4-3.5 2.3-3.4 2.3-3.6 2-3.6 2.2-3.7 2-3.7 2-3.8 1.7-4 1.8-3.8 1.6-4 1.6-4 1.4-4 1.4-4 1.3-4.2 1.2-4.2 1-4.3 1-4.2 1-4.3.7-4.4.7-4.3.5-4.5.5-4.4.4-4.5.3-4.4V577l.2-4.5V300z"/>
+    <g fill="#fff" stroke="#21231e">
+      <path d="M483.7 734.8c1.4-.2 4 0 5.7-1.4 2.5-2 1.5-9.8 1.3-14.8-1-25.3-2.2-68-3.5-128-2-.2-3.6 0-5 .2a12 12 0 00-5 0c-1.4 59.8-2.5 102.5-3.6 127.8-.2 5-1.2 13 1.3 14.8 1.7 1.5 4.2 1 5.6 1.4h3z"/>
+      <path d="M499.6 734c-1.5 0-4 .5-6-.8-2.6-1.7-2.8-9.7-3-14.7a6148 6148 0 00-7.6-127.6c2-.6 3.6-.6 5-.5.3 0 .5 0 .7-.2 9.6 59.2 13.2 101.2 19.7 126.5 1 3.5 2.8 12.2-.2 15-1.7 1.7-4.2 1.6-5.6 2l-3 .3z"/>
+      <path d="M518.2 731.4c-1.5 0-3.8.8-6-.3-2.7-1.4-2.6-9.4-3.8-14.2-6.6-25.3-10.2-67.3-19.7-126.5 2-.7 3.6-.8 5-1h.2c15 57.6 19.6 98.2 31.4 123.2 1 3.5 4 12.7 1.2 16-1.5 1.7-4 1.8-5.4 2.3l-3 .6z"/>
+      <path d="M537 726c-1.5.3-4 1.6-6 .7-3-1.2-3.5-9.7-5.6-14.2-11.8-25-16.3-66-31.7-124 2-.8 3.5-1 5-1.3 1.3-.6 1-1 3-1.2 18 57.3 23.7 97 40.5 121.8 2.7 4 4.7 12 3 14.5-1.5 2-4 2.3-5.3 3l-3 .8zm-72.2 8c1.4 0 3.8.5 5.8-.8 2.7-1.7 3-9.7 3-14.7a7227 7227 0 017.7-127.6c-2-.6-3.6-.6-5-.5a25.4 25.4 0 00-.7-.2c-9.6 59.2-13.2 101.2-19.7 126.5-1 3.5-3 12.2 0 15 1.8 1.7 4.3 1.6 5.7 2l3 .3z"/>
+      <path d="M446 731.4c1.6 0 4 .8 6-.3 2.8-1.4 2.7-9.4 4-14.2 6.4-25.3 10-67.3 19.6-126.5-2-.7-3.6-.8-5-1h-.3c-15 57.6-19.6 98.2-31.4 123.2-1.2 3.5-4.2 12.7-1.3 16 1.5 1.7 4 1.8 5.4 2.3l3 .6z"/>
+      <path d="M427.3 726c1.5.3 4 1.6 6 .7 3-1.2 3.5-9.7 5.6-14.2 11.7-25 16.2-66 31.6-124-2-.8-3.5-1-5-1.3-1.3-.6-1-1-3-1.2-18 57.3-23.7 97-40.5 121.8-2.6 4-4.6 12-2.8 14.5 1.4 2 4 2.3 5.2 3l3 .8zm99.7-43c-1.3 0-3.3 1-5.4 0-2.8-1.4-4.6-9-6-14-12-23.5-23-65.3-40.8-123.4 1.8-.7 3-1 4.5-1 1-.5 2.4-1 4.3-1.2 19.3 57.5 28 99 46.7 122 3 3.8 5.4 12 4 14.4-1.2 1.8-3.4 2-4.6 2.6l-2.7.6z"/>
+      <path d="M512 685.8c-1.5 0-3.6.6-5.6-.5-2.6-1.6-3.5-9.4-4.5-14.3-5-25-13.7-67-26.3-126 1.8-.7 3.2-.8 4.5-.8 1.2-.4 2.6-.8 4.5-.8 15 58.7 18.3 102.6 32.4 125 2.6 4.2 4 12.5 2.3 14.8-1.3 1.7-3.5 1.7-4.8 2.2l-2.7.4z"/>
+      <path d="M496.4 687.6c-1.4-.2-3.5.3-5.4-1-2.4-1.7-2.4-9.6-2.8-14.6-2-25.3-6-68-11.6-127.6 2-.5 3.3-.4 4.6-.3 1.2-.2 2.6-.5 4.5-.4 8 59.6 12.8 102.8 18 127.2 1 5 2.4 12.6.4 14.8-1.4 1.5-3.6 1.4-5 1.8l-2.6.2z"/>
+      <path d="M437.2 682.8c1.4 0 3.4 1 5.5 0 2.8-1.4 4.6-9 6-14 12-23.5 23-65.3 40.8-123.4-1.8-.7-3-1-4.5-1-1-.5-2.4-1-4.3-1.2-19.3 57.5-28 99-46.7 122-3 3.8-5.4 12-4 14.4 1.2 1.8 3.4 2 4.6 2.6l2.6.6z"/>
+      <path d="M452.4 685.8c1.4 0 3.5.6 5.5-.5 2.5-1.6 3.4-9.4 4.4-14.3 4.8-25 13.6-67 26.2-126-1.8-.7-3.2-.8-4.5-.8a12 12 0 00-4.4-.8c-15 58.7-18.3 102.6-32.4 125-2.5 4.2-4 12.5-2.2 14.8 1.3 1.7 3.5 1.7 4.7 2.2l2.7.4z"/>
+      <path d="M468 687.6c1.3-.2 3.4.3 5.3-1 2.4-1.7 2.4-9.6 2.8-14.6 2-25.3 6-68 11.7-127.6-2-.5-3.3-.4-4.6-.3-1-.2-2.5-.5-4.4-.4-8 59.6-12.8 102.8-18 127.2-1 5-2.4 12.6-.4 14.8 1.5 1.5 3.7 1.4 5 1.8l2.7.2z"/>
+      <path d="M483.5 688c1.3 0 3.5.2 5.2-1.3 2.3-2 1.4-9.8 1.2-14.8-1.2-25.4-2-68-3.3-128a14 14 0 00-4.6 0c-1.2-.2-2.5-.3-4.4 0-1.2 60-2 102.6-3.2 128-.2 5-1 12.8 1.2 14.7 1.6 1.5 4 1 5.2 1.4h2.7z"/>
+      <path d="M516.5 648c-1 0-2.5 1-4 0-2.3-1.5-3.7-9.2-4.8-14-9.2-23.5-17.5-65.4-31.2-123.5 1.4-.7 2.4-1 3.4-1 .8-.5 1.8-1 3.3-1 14.7 57.4 21.3 99 35.7 121.8 2.4 3.8 4 12 3 14.5-.8 1.8-2.5 2-3.4 2.5l-2 .7z"/>
+      <path d="M505 651c-1 0-2.7.6-4.3-.6-2-1.5-2.7-9.4-3.4-14.3-3.7-25-10.5-67-20-126 1.3-.6 2.3-.7 3.4-.7 1-.4 2-.7 3.4-.8 11.5 58.7 14 102.6 25 125.2 2 4 3 12.4 1.6 14.6-1 1.7-2.7 1.8-3.6 2.2l-2 .5z"/>
+      <path d="M493 652.7c-1 0-2.6.4-4-1-2-1.7-2-9.6-2.2-14.5-1.5-25.4-4.5-68-9-127.7 1.5-.4 2.6-.4 3.6-.3 1-.3 2-.6 3.5-.4 6 59.6 9.7 102.7 13.6 127 .7 5 2 12.8.4 15-1.2 1.5-3 1.4-4 1.7l-2 .2z"/>
+      <path d="M447.8 648c1 0 2.5 1 4 0 2.3-1.5 3.7-9.2 4.8-14 9.2-23.5 17.5-65.4 31-123.5-1.2-.7-2.2-1-3.2-1-1-.5-2-1-3.4-1-14.7 57.4-21.3 99-35.7 121.8-2.4 3.8-4.2 12-3 14.5.8 1.8 2.5 2 3.4 2.5l2 .7z"/>
+      <path d="M459.4 651c1 0 2.6.6 4-.6 2.2-1.5 3-9.4 3.6-14.3 3.7-25 10.5-67 20-126a7.7 7.7 0 00-3.4-.7c-1-.4-2-.7-3.4-.8-11.4 58.7-14 102.6-24.8 125.2-2 4-3 12.4-1.7 14.6 1 1.7 2.7 1.8 3.6 2.2l2 .5z"/>
+      <path d="M471.3 652.7c1 0 2.6.4 4-1 2-1.7 2-9.6 2.2-14.5 1.5-25.4 4.5-68 9-127.7a9.5 9.5 0 00-3.6-.3c-1-.3-2-.6-3.6-.4-6.2 59.6-9.8 102.7-13.7 127-.7 5-2 12.8-.4 15 1.2 1.5 3 1.4 4 1.7l2 .2z"/>
+      <path d="M483.2 653.2c1-.2 2.7 0 4-1.4 1.7-2 1-9.7 1-14.7-1-25.3-1.6-68-2.5-128-1.5-.2-2.6 0-3.6.2-.8-.2-2-.4-3.4 0-1 59.8-1.6 102.5-2.4 128 0 5-.8 12.7 1 14.6 1.2 1.5 3 1.2 4 1.4h2z"/>
+      <path d="M475 559c-.2 4.4-.3 9-.3 14l-10.6 2.3c0 4.8 12 55.4 18 55.4 6.3 0 18.2-50.6 18.2-55.5l-10.6-2v-.2c0-5 0-9.6-.2-14-2.2 2-4.7 5.2-7.3 8-2.4-2.8-5-6-7-8z"/>
+    </g>
+    <g id="d">
+      <path fill="#edb92e" stroke="#21231e" d="M412 584.5c-3 .2-7 2-18.5 12-5 10.2-10 20.5-17 29.4-2.4 1.4-4.2 2.5-6 3.2a84 84 0 01-17-.5c-4.4-4-11.3-1.2-9 3.2-1.8 1.6 2.2 7.8 5.3 5.2 3-2.4 13-.2 16.4-1.4-1.3 3-10.4 5-16.8 5.5-5.8.2-5.4 6-3 10.5 2.7 1.8.5-.4 1.4.8 2.6 4 8.2 3.4 8.4-.4.2-4 13.8-9 15.8-12-2.5 6-8.2 11.5-11 17.3-3 3-5 3.7-1 10 4.4-.6 4.6-1.7 7.3.8 6-.6 7-2.4 6-7.2-1-5 3.2-14 4.6-16.6 1.2-2.4 1.5-4.8 2.8-6.3 2.2-2.5 12.6-7.7 15.2-6.3 5 2.7 8.7 1 9.3-3.7-1.6-1.2-.4-8-3.8-8.2-2.8-.3-4.4.6-7 2.7-4 3.2-6 5-7.4 4.6-3-.7 5.8-5 13.8-15.6 11-14.5 11.8-22 11.3-27z"/>
+      <use width="1350" height="900" transform="matrix(-1 0 0 1 801.6 0)" xlink:href="#c"/>
+      <path fill="#edb92e" stroke="#21231e" d="M345.2 634.5c-4-2.3-6.3-2.2-8-.5-.7 1-1.8.5-1.2-1 2.7-6.3 7-7 10.7-4.2l2.8 2.7c-.6 1-3.8 2.3-4.3 3zm57.4-5.6c4.3-3 8.3-3.6 10.5-2 1.3 1 2.5.3 1.4-1.2-4.4-6.2-9.6-6.5-13.5-3-1.2 1-2 2-2.8 3 1.3 1.6 4.3 3.2 4.4 3zM369 664.4c.2-.2-1-5.4-2.6-7-1.4 1-3 2-4.3 3.5-4.2 4.5-4 11 2.5 16.7 1.6 1.5 2.4 0 1.7-1.7-1-2.7.3-6.3 3-11.5zM352.6 651c-4 1.6-5.4 3.7-5.2 6.4 0 1.5-1 2-1.5.3-4.8-11.2.2-13.3 7.5-13 .4 2-.7 6.2-.8 6.2z"/>
+      <path fill="#21231e" d="M384 621.3l1 .6h-.2v1.8h.2v.4h.2v.2h.2l.2.3.3.2v.2h.4l.2.3h.2l-.6 1h-.2l-.3-.2h-.2l-.2-.2-.2-.2-.3-.3-.3-.3v-.2h-.2v-.3l-.2-.2v-.2h-.2v-.2l-.2-.2V622l.2-.3v-.2zm6.5.8l-.8 1-.2-.2-.3-.2-.2-.2-.2-.2h-.3l-.2-.3-.2-.3-.3-.2-.2-.2-.3-.2h-.7l-.2-.2h-.7v.2h-.2l-.2.2v.2h-.2v.3l-.2.2-1-.7v-.3l.2-.2.2-.2.2-.2.3-.3h.3l.2-.2h.4v-.2h.8l.2.2h.4l.2.2h.2l.2.2h.2l.2.3h.2l.2.3h.2l.3.3.2.3.2.2.3.2.2.2h.3z"/>
+      <path fill="#21231e" d="M387.3 617.6l1 .6v.4h-.2v.8l.2.2v.2l.2.2v.2l.2.2.2.3.3.2h.2l.2.2h.2l.2.2.2.2h.2l-.6 1h-.2l-.3-.2-.3-.3h-.2l-.2-.2-.2-.2-.2-.3v-.2h-.2l-.2-.2v-.2h-.2v-.5h-.2V618h.2v-.3zm6.5.8l-.7 1-.2-.3h-.2l-.2-.3-.3-.2-.3-.3h-.2l-.2-.3-.2-.2-.3-.2-.3-.2h-.3v-.2h-.8l-.2.2-.2.2-.2.2v.2l-.3.2-1-.6.2-.3v-.2h.3v-.3h.3l.3-.3h.2l.2-.2h.2v-.2h1.4l.2.2h.2v.2h.3l.3.3h.2l.2.2h.2l.2.3h.2l.3.3v.2l.3.2.3.2.2.2z"/>
+      <path fill="#21231e" d="M391 612.8l1 .6-.2.2v.6h-.2v1l.2.3v.3h.2v.4h.2l.2.3v.2h.2l.2.2.2.2.3.3.3.2h.2l.2.2-.6 1-.3-.2-.2-.2-.2-.2-.3-.2-.2-.2v-.2l-.3-.2v-.2l-.3-.2v-.2l-.3-.2v-.4l-.2-.3v-.2h-.2v-.7h-.2v-1l.2-.3v-.4l.2-.3v-.2zm7 1l-.8 1-.3-.3-.3-.2-.3-.3-.3-.2v-.2l-.3-.2-.3-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.2-.3-.2h-.2l-.2-.2h-.7l-.2.2-.2.2-.3.3v.2h-.2v.4l-1-.6v-.3l.2-.2.2-.3v-.2l.3-.2.2-.2v-.2h.3l.2-.2h.3l.2-.2h1.2l.2.2h.2l.2.2.3.2h.3l.2.3.2.2h.3l.2.3.3.2.2.2.3.2.2.2.3.2.2.3.3.2z"/>
+      <path fill="#21231e" d="M394.8 607.7l1 .5v.5l-.2.3v1.7l.2.2v.3l.2.2v.2l.2.2.3.3v.2l.3.2.2.2h.2l.2.3.2.2.3.2v.2l-.6.8-.3-.2v-.2l-.4-.2-.2-.3-.3-.3v-.2l-.3-.3-.2-.2v-.2l-.3-.3v-.2l-.3-.2-.2-.2v-.2l-.2-.2v-.3l-.2-.3v-2.1l.2-.2v-.2l.2-.3zm7.6 1.3l-1 .8-.2-.3-.3-.3-.3-.2-.3-.3-.3-.3v-.2l-.4-.2-.2-.2-.2-.2-.2-.2-.2-.2h-.2l-.2-.2h-.2l-.2-.2h-.3v-.2h-.7v.2l-.3.2-.2.3-.2.2v.2l-.3.2v.2l-1.2-.5.2-.3.2-.3v-.2l.3-.3.2-.2.2-.2.3-.2.3-.2h.5l.3-.2h.8l.3.2h.2l.3.2h.2l.2.3.3.3.2.2.3.2.2.2h.3l.2.3.3.3.2.2.3.3.3.4.3.3.4.3z"/>
+      <path fill="#21231e" d="M399 602.6l1.2.6v.2l-.2.2-.2.3v2.1l.2.2v.2l.2.2.2.2v.2l.2.2.2.2.2.2v.2l.3.2.2.2.2.2.3.2.2.2.3.2-.8 1-.3-.3-.2-.3-.3-.2-.3-.3-.2-.2-.3-.2-.2-.3v-.2l-.3-.2-.2-.2v-.2l-.3-.2v-.3h-.2v-.4l-.2-.2v-.2l-.2-.3v-2.6l.2-.2v-.2l.2-.2v-.2zm7.7 1.4l-1 .8-.2-.3-.3-.3-.2-.3-.3-.3-.3-.3-.2-.2-.2-.3-.3-.3-.2-.2h-.2l-.2-.3-.2-.2h-.2v-.2h-1.3l-.3.2v.2h-.2v.3l-.3.2-.2.3v.2l-1.2-.6.3-.3.2-.3.2-.2.2-.3v-.2l.4-.2h.2l.2-.2h.2l.2-.2h1.7l.2.2.2.2h.2l.2.3h.3l.3.3.2.3h.3l.2.3.3.3.2.2.3.3.3.4.4.3.3.3z"/>
+      <path fill="#fff" stroke="#21231e" d="M462.6 580.6l-9.5-5.4c-4 3-6.8 13.5 0 22.2 8.5 11 12 18.7 14 27.5 6.2-8 8.3-16.3 4.4-24.5-5.3-11-8.7-17-8.8-20z"/>
+      <path fill="#fff" stroke="#21231e" d="M470.4 573l-9.5-5.4c-4 3-12.5 13.2-5.6 22 8.5 10.8 17.3 19 19.4 27.7 6.2-8 8.8-16.2 5-24.4-5.4-11-9.4-17.2-9.4-20z"/>
+      <path fill="#fff" stroke="#21231e" d="M449.4 569.2l-9.5-5.4c-4 3-7 13.5-.2 22.2a65 65 0 0114 27.5c6.2-8 8.4-16.3 4.4-24.4-5.3-11-8.7-17-8.8-19.8z"/>
+      <path fill="#fff" d="M405.5 469c.2 8.7-1.4 66.5-1.8 74.7-.5 8.2-4 13.7-8 17-3.5-5-5.6-11.5-6-19.3-.4-4 .4-58.7.7-70 6.4-17 11.2-17.8 15-2.4z"/>
+      <path fill="#21231e" d="M404 543.8h-1l.2-1v-2.6l.2-1.7v-4l.2-2.3v-5l.2-2.7v-2.8l.2-3v-3l.2-3v-6.2l.2-3v-6.2l.2-3v-5.8l.2-2.7v-7.4l.2-2V469h1v11.7l-.2 2.5v8.3l-.2 2.8v6l-.2 3.2v3l-.2 3.2v6l-.2 3v3l-.2 2.8v5.3l-.2 2.5v2.3l-.2 2v3.6l-.2 1.5v2zm-8.7 17l.8-.5h-.6l.3-.4.4-.4.4-.3.4-.3.3-.4.5-.4.3-.3.3-.5.4-.4.4-.4.3-.4.4-.5.3-.4.2-.5.2-.5.3-.5.3-.5.2-.6.2-.5.3-.6.2-.5.2-.5v-.7l.3-.6v-.6l.3-.7v-.7l.2-.7v-.7l.2-.8v-1.5h1v2.3l-.2.7v.8l-.3.6v.8l-.3.7-.2.6-.2.8-.2.6-.2.6-.2.6-.3.6-.4.5-.2.6-.3.5-.2.5-.3.5-.3.5-.3.5-.4.4-.4.5-.3.4-.5.5-.3.4-.4.3-.3.4-.4.3-.2.4-.4.3-.4.3h-.7zm.7.2l-.4.3-.3-.4h.7zm-7-19.5h1v.6l.2.8v1.4l.2.7v.6l.2.7v.6l.3.6v1.5l.3.5v.7l.3.6.2.6.2.6.2.6.2.5.2.7.2.6.2.5.3.6.2.5.3.4.2.6.3.5.3.5.3.5.2.4.3.4.3.5.3.3-.7.6-.3-.6-.4-.4-.3-.5-.3-.5-.3-.5-.3-.6-.2-.6-.3-.5-.4-.7-.2-.5-.3-.6v-.6l-.3-.5-.3-.5-.2-.6-.2-.7-.2-.6v-.7l-.3-.6-.2-.6v-.7l-.3-.5v-.7l-.2-.7-.2-.6v-.6l-.2-.7v-1l-.2-.8v-1.5zm1-70.2l.8.3v8l-.2 2.3V492l-.2 2.7v11.6l-.2 3v19l-.2 2.2v11h-1v-20.9l.2-2.7v-14.6l.2-2.8V489l.2-2.6v-8.9l.2-2v-4.2zm0 0zm16-2.3h-1l-.4-1.3-.3-1.3-.4-1-.5-1.2-.4-1-.2-1-.4-.7-.4-.8-.4-.6-.4-.4-.4-.4-.4-.3-.3-.3h-.3l-.4-.2h-.7l-.4.3-.4.3-.5.5-.5.4-.5.5-.5.7-.5.7-.5.8-.5 1-.6 1-.5 1.2-.6 1.3-.6 1.3-.6 1.5-.6 1.6-1-.3.7-1.6.6-1.5.7-1.3.6-1.4.5-1.2.6-1 .5-1 .5-1 .5-.8.6-.7.5-.7.6-.6.6-.4.5-.4.6-.3.5-.2h1.1l.5.3.5.3.5.5.5.5.4.6.4.6.5.8.4.8.4 1 .5 1 .3 1 .4 1.4.4 1.3.4 1.4zm0 0z"/>
+      <path fill="#fff" d="M368 454.8l-2.6 79.6c-.8 7 8.4 49 13.5 57.4 12.3-5.3 15-33.8 12.6-61.6-2.4-27.8.4-51.8 2.3-56.8 0-6.3-1-12.8-1-19.3-8 .5-17.2.4-25 .8z"/>
+      <path fill="#21231e" d="M365 534.4l2.4-79.6h1l-2.5 79.6h-1zm1 0zm12.7 57l.3.8-.6-.2-.5-1-.6-1-.5-1.2-.7-1.4-.5-1.6-.6-1.6-.6-1.8-.6-2-.5-2-.6-2-.7-2.2-.6-2.2-.6-2.3-.4-2.3-.6-2.3-.5-2.3-.6-2.3-.6-2.3-.4-2.2-.5-2.2-.4-2.2-.3-2-.4-2.2-.3-2-.3-1.8-.3-1.7-.2-1.6v-1.4l-.3-1.3v-2.8h1v4.1l.2 1.5.2 1.6.3 1.7.3 1.8.3 2 .4 2 .4 2.2.5 2.2.4 2.2.4 2.3.5 2.2.4 2.3.6 2.3.5 2.4.6 2.3.7 2.2.5 2.2.6 2 .6 2.2.6 2 .6 2 .5 1.7.7 1.5.6 1.5.5 1.4.5 1.2.5 1 .5 1-.6-.3zm.3.8l-.4.2-.2-.4.6.2zm12-62h1l.3 2.5v2.7l.3 2.6v2.6l.2 2.6v12.5l-.3 2.4-.2 2.5-.2 2.3v2.3l-.4 2.3-.4 2.2-.3 2-.6 2-.4 2-.6 2-.5 1.7-.8 1.7-.6 1.5-.7 1.5-1 1.5-.7 1.3-1 1.2-1 1-1 1-1 1-1 .6-1.3.6-.3-1 1-.4 1-.7 1-.7 1-1 1-1 .7-1 .8-1.3.8-1.4.7-1.5.6-1.5.6-1.6.5-2 .5-1.7.5-2 .4-2 .3-2 .3-2 .3-2.3v-2.3l.4-2.3V558l.3-2.3V538l-.2-2.6-.2-2.6-.2-2.6zm2.4-56.8h1v.2l-.2.5-.2.7-.2.7-.2 1-.2.8-.2 1-.2 1.2v1.2l-.3 1.3-.2 1.3-.2 1.4v1.6l-.3 1.6v1.7l-.3 1.7v2l-.2 1.8v2l-.2 2V520l.2 2.5.2 2.5.2 2.6v2.5l-1 .2v-2.6l-.3-2.5-.2-2.5V520l-.2-2.5v-20.1l.2-2v-2l.3-2v-1.7l.2-1.7.2-1.8.2-1.6v-1.4l.3-1.5.2-1.3v-1.2l.3-1V477l.3-1 .2-.8.2-.7.2-.7.2-.5zm1 0v.2-.2zm-1.5-18.8v-1l.4.4v3.7l.2.6v2.5l.2.6v1.8l.2.6v2.4l.2.6v3.6l.2.6v2.4h-1V468l-.2-.5V465l-.2-.5v-1.9l-.2-.6v-1.7l-.2-.6v-3l-.2-.6V454l.5.6zm0-1h.4v.4l-.5-.4zm-24.6 1.2h-1l.4-.5h3.9l.8-.2h12.8l.8-.2h4.7l.8-.2h1.7v1h-4.1l-.7.2h-8l-.8.2h-7.1l-.8.2h-3.9l.4-.4zm-1 0v-.4h.4l-.4.4zm.5 0h.4-.5zm-.6 0v-.4h.4l-.4.4z"/>
+      <path fill="#fff" d="M353 468l1.8 79.5c-.4 7 11 48.5 16.4 56.5 12.6-9.8 10-49.8 8.2-62-4-24-3.2-52-2-56.5 0-6.3-.2-13.8-.6-20.4-8 1-15.8 2-23.7 2.8z"/>
+      <path fill="#21231e" d="M354.3 547.5l-1.7-79.6 1-.2 1.7 79.6h-1zm1 0zm15.6 56l.5 1-.7-.2-.5-1-.6-1-.6-1.2-.5-1.2-.7-1.6-.6-1.6-.7-1.8-.7-1.8-.7-2-.5-2-.7-2.2-.7-2.2-.6-2.2-.7-2.3-.7-2.2-.7-2.3-.6-2.3-.6-2.3-.5-2.3-.6-2.2-.6-2.2-.5-2-.6-2-.4-2-.4-2-.4-1.6-.3-1.6-.3-1.3-.2-1.3v-1.2l-.2-1v-.8h1v1.8l.2 1 .2 1.3.2 1.5.2 1.5.3 1.7.4 2 .4 1.8.4 2 .5 2 .6 2.2.4 2.2.6 2.3.7 2.3.6 2.3.7 2.2.6 2.3.7 2.3.7 2.3.7 2.2.7 2 .7 2.2.8 2 .7 1.8.6 1.7.8 1.7.6 1.4.6 1.3.6 1.2.5 1 .6.7h-.7zm.5 1l-.4.2-.2-.4h.7zM379 542l1-.2v1.2l.2 1.4.2 1.5.2 1.8.2 1.7v2l.3 2 .2 2v2l.2 2.3v12l-.2 2.4v2.3l-.3 2.4-.4 2.4-.3 2.4-.3 2.2-.4 2.2-.5 2.2-.4 2-.6 2-.7 2-.8 1.6-.8 1.7-1 1.5-1 1.3-1 1.4-1.2 1-.6-.8 1-1 1-1 1-1.4.8-1.4.8-1.6.8-1.7.6-1.8.6-2 .5-2 .6-2 .4-2.2.4-2.3.3-2.3.2-2.4v-2.3l.3-2.4V569l.2-2.2V560l-.2-2.3v-2.2l-.2-2v-2l-.2-2-.2-1.6-.2-1.8-.2-1.5v-1.3l-.3-1.2zm-2-56.7h1v.6l-.2.7-.2.7v1l-.2.8v2.4l-.2 1.3v2.8l-.2 1.6v15.2l.2 2v2.3l.3 2v2.4l.3 2.3v2.2l.3 2.2.4 2.3.2 2.4.3 2.2.2 2.3.3 2.2.4 2.3-1 .2-.5-2.3-.3-2.4-.3-2.3-.4-2.3-.2-2.4-.2-2.3-.2-2.3-.2-2.3-.2-2.2v-2.3l-.3-2.2V512l-.2-2v-16l.2-1.4v-1.3l.2-1.2v-2l.3-1v-.8l.2-.6v-.7.2zm1 0zm-1.2-20v-1l.5.6v3.4l.2.7v3.8l.2.6v6l.2.6v5.3h-1V480l-.2-.7v-5.7l-.2-.6v-4.5l-.2-.7v-2.4l.4.4zm0-1h.4v.6l-.5-.4zm-23.7 4v-1l.8-.2h.8l.7-.2h2.2l.7-.2h.8l.7-.2h.8l.7-.2h1.4l.7-.2h.8l.7-.2h.6l.8-.2h1.7l.6-.2h.7l.8-.2h.8l.7-.2h1.5l.8-.2h.7l.7-.2h.8l.7-.2v1h-.6l-.6.2h-.8l-.7.2h-1.6l-.7.2h-.8l-.8.2h-.8l-.7.2h-1.5l-.7.2h-.8l-.7.2h-.7l-.8.2H362l-.7.2h-.7l-.8.2h-.7l-.6.2H357l-1 .2h-.6l-.7.2h-.8l-.8.2zm.2 0zm0-1v1l-.6-.6.5-.6zm-.6.4v-.6h.5l-.4.5z"/>
+      <path fill="#fff" d="M342.2 486.7l21-.5c-2 8.6-.5 35.6 3.2 56.2 3.3 19.3 8 69.3-12 81.3-12.5-26.4-3-52-9.2-75-5-24.3-6-44.6-3-62z"/>
+      <path fill="#21231e" d="M363 486.7l-20.8.5v-1l21-.5.4.6-.5.4zm0-1h.7v.6l-.6-.6zm3.8 56.6l-1 .2-.3-2-.3-2-.3-2-.4-2-.3-2-.2-2-.2-2.2-.2-2-.2-2.2-.2-2-.2-2-.2-2-.2-2.2v-2l-.3-2v-2l-.2-2V499l-.2-1.7v-4.5l.2-1.4v-1.2l.2-1.2v-1l.3-1v-1l1 .3v.8l-.2 1v1l-.2 1.3v5.4l-.2 1.6v4.9l.2 1.8v4l.2 1.8v2l.3 2v2l.3 2 .2 2v2l.3 2.2.3 2 .2 2.2.3 2 .3 2 .3 2 .3 2.2.2 2 .3 2 .3 2zM354 624l.8-.6-.7-.2 2-1.2 1.5-1.4 1.5-1.6 1.4-1.8 1.3-2 1-2 1-2.3 1-2.6 1-2.5.6-2.8.6-2.7.4-2.8.4-3 .4-3 .3-3 .2-3v-3l.2-3v-6.2l-.2-3-.2-3v-3l-.4-3-.2-2.7-.3-2.7-.2-2.5-.4-2.5-.2-2.4-.3-2.2-.3-2-.3-2h.8l.4 1.8.3 2 .3 2.3.3 2.3.4 2.5.3 2.7.3 2.7.2 2.8.2 3 .2 2.8.2 3v15.5l-.3 3-.3 3.2-.4 3-.4 2.8-.5 3-.8 2.7-.7 2.7-.8 2.6-1 2.4-1 2.4-1.2 2.2-1.3 2-1.4 2-1.6 1.5-1.7 1.5-1.8 1.3h-.7zm.7 0l-.5.4-.3-.5h.7zm-10-75.2l1-.2.5 2.2.4 2.2.4 2.2.3 2.2.3 2.2.2 2.3v2l.2 2.4v25.4l.2 2.4v2.4l.3 2.4.3 2.4.3 2.4.5 2.4.4 2.4.5 2.4.7 2.5.7 2.4.8 2.5 1 2.5 1 2.4-.8.5-1.2-2.6-1-2.5-.8-2.6-.8-2.5-.7-2.5-.5-2.5-.5-2.4-.4-2.5-.2-2.3-.3-2.5-.2-2.4V594l-.2-2.4V564l-.2-2.3-.2-2.3-.2-2.2-.4-2.2-.3-2-.5-2.3-.5-2v-.2zm0 0zm-2.5-62.6v1l.5-.4-.3 1.6-.2 1.7-.2 1.7-.2 1.7-.2 1.7v1.8l-.3 1.8v3.5l-.2 2v7.3l.2 2v1.8l.2 2v2l.2 2 .2 2 .2 2 .2 2 .3 2 .2 2 .3 2.3.3 2 .3 2.2.4 2.2.4 2.2.4 2 .4 2.4.4 2.2-1 .2-.4-2.2-.4-2.3-.4-2.2-.4-2-.3-2.3-.4-2.2-.3-2-.3-2.2-.2-2-.3-2.2-.2-2-.2-2-.2-2v-2l-.2-2v-2l-.2-1.8v-13l.2-1.8v-1.8l.2-1.7.2-1.7.2-1.7.2-1.7.2-1.7.3-1.7.5-.4zm-.5.4v-.4h.5l-.5.4zm.5 0v-.4.5zm-.5 0v-.4h.5l-.5.4z"/>
+      <path fill="#fff" d="M422 454.4c0 8.7-3.2 66.5-4 74.6-.7 8-4.5 13.6-8.4 16.6-3.4-5-5.3-11.5-5.5-19.3 0-4 2.3-58.7 3-70 7-17 11.8-17.4 15-2z"/>
+      <path fill="#21231e" d="M418.5 529h-1v-1l.2-1v-1.5l.2-1.7v-2l.2-2v-2.3l.3-2.4v-2.5l.3-2.7.2-2.8v-3l.3-3 .2-3 .2-3v-3l.3-3.2.2-3 .2-3.2v-3l.3-3V474l.3-3v-2.5l.2-2.4V464l.2-2v-2l.2-1.8v-3.7h1v5.6l-.2 2v2l-.2 2.3v2.6l-.3 2.6-.2 2.7v2.8l-.3 3-.2 3v3l-.3 3-.2 3v3.2l-.3 3-.2 3.2-.2 3v3l-.2 2.7-.2 2.6v2.6l-.3 2.4v2.3l-.3 2v2l-.2 1.5v1.5l-.2 1.2v1zm-9.3 17l.8-.6-.7-.2.4-.2.3-.3.4-.4.3-.3.4-.3.4-.4.4-.3.3-.4.4-.4.4-.4.3-.5.4-.4.3-.6.3-.4.3-.5.3-.5.3-.5v-.5l.4-.6.2-.5.3-.7v-.6l.3-.6.2-.5.2-.7.2-.6V532l.3-.8v-.8l.2-.7v-.7h1v1.6l-.2.7-.2.7v.7l-.2.7-.2.7-.2.8-.2.6-.2.6-.2.6-.3.6-.2.6-.3.6-.3.5-.2.5-.3.5-.3.5-.5.5-.3.5-.3.4-.4.4-.4.4-.3.4-.5.4-.4.4-.2.4-.4.3-.4.4-.3.4-.4.3-.4.3h-.8zm.7 0l-.5.4-.3-.5h.7zm-6.4-19.7h1v2.8l.2.8v.7l.2.7v1.2l.3.6v.8l.2.6.2.7v.7l.3.6v.6l.3.5.2.6.2.6.2.6v.6l.3.5.3.6.2.4.2.5.3.5.3.5.2.5.3.4.4.4.3.5.3.4-.8.5-.3-.6-.4-.4-.3-.5-.3-.6-.3-.6-.3-.5-.3-.6v-.6l-.4-.5-.2-.6-.2-.6-.2-.4-.2-.6-.2-.6-.2-.6-.2-.6-.2-.7-.2-.6v-.7l-.3-.7v-.6l-.2-.7v-.6l-.2-.7v-1.4l-.2-.7v-1.5l-.2-.7v-1.5zm3-70l.8.3v-.2 2.6l-.2 1.6v2l-.2 2v2l-.2 2.4v2.5l-.2 2.6v2.8l-.3 2.8v2.8l-.2 3v2.8l-.2 3v3l-.2 2.8v3l-.3 2.7v2.7l-.2 2.7v7.3l-.2 2v3.8l-.2 1.6v3.3h-1v-6.8l.2-2V513l.2-2.4V508l.2-2.6.2-2.8v-2.8l.2-3V494l.2-3 .2-2.8v-3l.2-2.8v-3l.3-2.7V474l.2-2.5V469l.2-2.4v-4.2l.2-1.8V459l.2-1.5v-1.2zm-.2 0zm16.2-2h-1v.2l-.3-1.4-.3-1.2-.3-1.2-.4-1-.3-1-.4-1-.3-1-.4-.6-.5-.6-.4-.5-.2-.5-.4-.4h-.4l-.3-.2h-1.1l-.4.2-.5.2-.4.4-.5.5-.5.6-.6.7-.5.7-.5 1-.6.8-.5 1-.6 1.2-.7 1.2-.6 1.4-.6 1.4-.6 1.6-1-.4.7-1.6.8-1.4.6-1.4.6-1.2.6-1.2.6-1 .6-1 .6-1 .6-.7.5-.7.6-.6.6-.6.6-.4.5-.3h.6l.5-.3h1.2l.5.3.5.4.5.4.4.5.4.6.4.5.4.8.3 1 .4.8.3 1.2.3 1 .4 1.3.3 1.4.3 1.3zm0 0zm-.5 0h.6-.5zm.6 0z"/>
+      <path fill="#fff" d="M385 407.2c-.6 18.7-1 59-.8 62.6a51 51 0 006.7 22.6c4-3 7.7-8.5 8.4-16.6.6-6.7.8-39.5 1-56-4.3-2.6-8.7-6-12.2-9.7l-3.2-2.8z"/>
+      <path fill="#21231e" d="M384.7 469.8h-1v-23.4l.2-2.4v-19.6l.2-2.4v-9l.2-2v-3.8h1v7.8l-.2 2.4v9.4l-.2 2.5v12.5l-.2 2.4v25.4zm6 22.2l.5.8h-.7l-.3-.6-.3-.5-.4-.6-.4-.4-.3-.6-.4-.6-.3-.7-.3-.6-.2-.6-.3-.7-.3-.7-.3-.7-.3-.7-.3-.8-.2-.7-.3-.7-.3-.8-.2-.8-.2-.7-.2-.8v-.8l-.3-.8v-.8l-.3-.8v-.8l-.2-.8v-.8l-.2-.8v-.7l-.2-.7v-1.5h1v2.5l.2.8v.8l.3.7v.8l.2.8.2.8.2.8v.7l.2.7.3.8.2.7.2.8v.8l.4.7.2.7.3.7v.7l.4.6.3.7.3.7.2.6.3.6.3.5.3.6.4.6.3.6.3.5.3.4h-.7zm.5.8l-.4.3-.3-.3h.7zm7.7-17h1l-.2.8v.8l-.2.7v.8l-.3.7-.2.7v.7l-.2.5-.2.7-.2.6-.3.6v.6l-.4.6-.2.6-.3.5-.2.5-.3.6-.3.5-.3.5-.4.4-.4.5-.3.4-.5.6-.3.4-.4.4-.3.4-.4.4-.3.3-.3.4-.4.2-.4.3-.4.3-.6-.8.4-.3.3-.3.4-.3.4-.2.4-.4.4-.3.3-.3.4-.4.4-.4.3-.5.4-.4.3-.3.3-.5.3-.5.3-.4.3-.5.2-.6.3-.5.2-.5.3-.6.2-.6.2-.5.2-.6.2-.8.2-.6.2-.6v-.7l.3-.7v-.7l.2-.8v-.7l.2-.8zm1-55.5l.6-.8.2.4v18.8l-.2 2.2v14.6l-.2 2v8.9l-.2 1.5v4.3l-.2 1v2.6h-1V471l.2-1.5v-6.3l.2-1.8v-12l.2-2v-20.8l.2-1.7v-5.1l.2.3zm.6-.8h.2v.4l-.2-.5zm-12.4-9.8v1l.4-1 .3.4.2.5.4.3.3.3.3.5.3.3.4.3.3.4.4.4.3.3.4.4.4.3.4.3.3.3.4.3.3.4.4.3.4.3.5.3.3.2.4.2.4.3.4.3.4.3.4.3.4.3h.4l.4.4.4.3.4.2.4.2.4.3-.6.8-.4-.3-.4-.2-.4-.3-.4-.3-.4-.2-.4-.3-.4-.3-.4-.3-.4-.2-.4-.3-.4-.3-.4-.3-.4-.4-.3-.3-.4-.3-.3-.3-.4-.3-.4-.3-.5-.2-.4-.3-.2-.3-.4-.4-.4-.3-.3-.3-.4-.3-.4-.5-.4-.3-.4-.3-.3-.5-.5-.3-.3-.4-.3-.3.2-.8zm-.3.8l-1-.8h1.2l-.3.8zm-2.5-3.3h-1l1-.3.2.2.2.2v.2h.3v.3h.4v.2l.3.2.3.2v.2h.3v.2h.2v.2h.3l.2.2v.2h.2v.2l-.2.8v-1l-.3 1h-.2v-.2h-.2v-.2h-.2v-.2h-.2l-.2-.2v-.2h-.2l-.2-.2-.3-.3h-.3v-.3h-.3v-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2h-.2l1-.4zm-1 0v-1.4l1 1-1 .4z"/>
+      <path fill="#fff" d="M400 419.3c-.4 20-.2 51.7 0 54.3a34 34 0 005.4 19.3c4-3.2 8-8.8 8.8-17 .5-5 2-26.4 2-42.8-5.3-1.7-12-10.4-16.3-14z"/>
+      <path fill="#21231e" d="M400.4 473.5h-1v-12.9l-.2-1.7v-33.7l.2-2v-4h1v14.5l-.2 2v37.1l.2.5v.3zm4.7 19l.7.8h-.7l-.3-.6-.3-.5-.3-.5-.2-.5-.3-.5-.3-.5-.2-.6-.3-.5-.2-.5-.3-.5-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6-.2-.6v-.6l-.3-.7v-.6l-.3-.8v-.6l-.2-.7v-.8l-.2-.6v-.7l-.2-.8v-1.5l-.2-.7v-1.4h1v2.8l.2.7v.7l.2.7v.7l.2.7v.7l.2.6v.7l.3.6v.6l.3.5v.6l.3.7.3.6.2.6.2.5.2.5v.6l.4.5.2.7.3.5v.5l.4.5.2.5.3.5.2.5.3.5.3.4h-.7zm.7.8l-.4.3-.3-.4h.7zm8-17.3h1v1.7l-.3.7v.7l-.3.8v.7l-.2.7-.2.7-.2.5-.3.7v.6l-.4.6-.2.6-.3.5-.2.6-.3.6-.4.6-.2.5-.3.5-.4.5-.2.4-.4.6-.3.4-.3.5-.3.4-.4.3-.4.3-.4.4-.3.3-.5.4-.4.3-.3.3-.6-.8.5-.3.3-.3.4-.4.4-.3.3-.4.3-.4.3-.4.4-.4.3-.4.4-.4.3-.5.3-.4.4-.4.3-.5.3-.3.3-.6.3-.4.2-.5.3-.5.2-.5.3-.6.2-.6.2-.6.2-.6.2-.7.2-.7.2-.7v-.7l.3-.8v-.7l.2-.7v-.8zm2.4-42.3l.4-1 .3.5v7.9l-.2 1.6v5.1l-.2 1.6v1.7l-.2 1.7v4.6l-.2 1.6v2.9l-.2 1.3v1.4l-.2 1.3v2.5l-.2 1v2.2l-.2 1v1.6l-.2.7v1.1h-1v-2l.2-.8v-1.8l.2-1v-2.2l.2-1.2v-2.7l.2-1.3v-1.5l.2-1.4V457l.2-1.6v-1.6l.2-1.6V449l.2-1.6V443l.2-1.6V433l.5.5zm.4-1h.3v.5l-.3-.5zm-16-13.4h-1l.8-.4.5.2.4.4.5.4.5.4.5.5.4.4.4.4.5.5.4.6.5.4.4.5.5.4.5.6.5.5.5.5.5.6.6.5.5.6.7.5.5.6.5.5.6.5.5.5.5.4.6.4.4.4.5.3.4.3.5.3.4.3.5.2.4.2-.3 1-.5-.2-.5-.3-.5-.2-.6-.3-.6-.4-.6-.3-.5-.4-.6-.4-.5-.4-.6-.5-.5-.5-.5-.5-.5-.5-.6-.5-.5-.5-.7-.5-.5-.6-.5-.5-.6-.5-.5-.6-.5-.4-.5-.5-.5-.5-.5-.5-.5-.5-.5-.4-.4-.4-.5-.4-.4-.5-.6-.4-.4-.3-.4-.4.8-.3zm-1 0v-1l.8.6-.8.2z"/>
+      <path fill="#fff" d="M387 405.6L373 385c-2.8 10.2-6.3 82.8-2.2 88.8a36 36 0 006.4 19.3c4-3 9.8-8.5 8-16.7-1.6-8.2.4-62.3 2-70.7z"/>
+      <path fill="#21231e" d="M373.3 384.7l14.2 20.6-.8.5-14.3-20.5v-.4l1-.3zm-1 .2l.4-1 .5.7-.8.2zm-1.2 88.7h-1l.2.3-.5-.8-.3-1.2-.3-1.5v-1.8l-.3-2-.2-2.5v-2.6l-.2-2.8v-20.3l.2-3.7V431l.2-4 .2-3.6v-3.8l.3-3.7.2-3.7.2-3.4.3-3.5.2-3.2.3-3 .2-3 .3-2.5.3-2.4.2-2 .3-2 .3-1.3.4-1 1 .2-.3 1-.2 1.5-.3 1.8-.3 2-.2 2.4-.3 2.5-.3 2.8-.2 3-.3 3.3-.3 3.3-.2 3.4-.2 3.6-.2 3.7v3.7l-.3 3.8v3.8l-.2 3.7v3.8l-.2 3.6v19.6l.2 2.6.2 2.3.2 2v1.8l.4 1.5.3 1 .3.7v.2zm0-.2v.2-.2zm5.7 19.2l.6.8-.7-.2-.3-.4-.3-.6-.3-.5-.3-.6-.3-.5-.2-.6-.3-.6-.3-.5-.3-.6-.4-.5-.2-.6-.3-.6v-.6l-.4-.6-.2-.6-.2-.6-.3-.6-.3-.6-.2-.7v-.6l-.3-.5-.2-.7v-.7l-.3-.6v-.6l-.2-.7v-.6l-.2-.7v-1.5l-.2-.7v-.7h1v1.4l.2.7v.6l.2.6v.7l.2.6v.7l.2.6.2.6v.6l.3.6.2.7.2.6.2.7v.6l.3.6.2.5.3.6.2.6.3.6.2.5.3.6.3.5.3.5.3.6.3.4.2.5.3.4.3.4.3.5.4.5h-.7zm.6.8l-.4.3-.4-.5.7.2zm7.4-17l1-.3v.8l.2.7v3l-.2.7-.2.7v.7l-.3.7-.2.6-.2.6-.2.6-.3.6-.3.5-.4.6-.3.4-.4.5-.5.4-.3.5-.4.4-.4.4-.4.4-.5.5-.4.4-.3.5-.4.3-.4.4-.5.3-.4.3-.3.4-.4.3-.6-.8.4-.3.5-.3.4-.2.3-.4.3-.3.4-.3.4-.4.4-.3.4-.4.4-.5.4-.3.4-.4.4-.5.3-.5.5-.5.3-.5.3-.5.4-.5.3-.5.2-.6v-.6l.3-.5.2-.5.2-.7v-.6l.2-.6v-3.1l-.2-.7v-.6zM387 406v-1l.6.7-.2 1-.2 1v1.4l-.3 1.7-.2 2-.2 2v2l-.3 2.4v2.5l-.3 2.6v2.8l-.2 2.7-.2 2.8v3l-.2 2.8v3l-.2 3v8.5l-.2 2.8v13.5l.2 2v1.5l.2 1.4v1l.2 1-1 .2v-1l-.2-1v-1.5l-.2-1.7v-4l-.2-2v-15.5l.2-3V441l.2-3v-2.8l.2-3 .2-2.7v-2.8l.2-2.7.2-2.5V419l.3-2.3v-2.2l.3-2v-2l.3-1.5.3-1.4v-1.2l.3-1 .5.7zm0-1h.7v.7l-.6-.6zm0 0v1l-.3-.2.4-.7zm0 1h-.2v-.2l.3.3z"/>
+      <path fill="#fff" d="M358 451.2c-.8 11.3-1.2 19-1 23 .2 7.6 2 14.2 5.5 19.2 4-3 9-8.5 8.4-16.6-2-31.5 1.4-61 5.4-89.6-3.4-2.5-9-5-12.5-7.6-6.8 38.3-9 62-6 71.6z"/>
+      <path fill="#21231e" d="M357.4 474h-1v-7.4l.2-.7V463l.2-.7V459l.2-1v-1.8l.2-1v-3l.2-1h1v2l-.2 1v2l-.2 1v2.8l-.2.7v3.2l-.2.7v4.2l-.2.6v4.3zm4.8 19l.6.8h-.7l-.3-.6-.3-.5-.3-.5-.2-.5-.2-.5-.3-.5-.3-.6-.2-.4-.3-.6-.2-.5-.3-.6-.2-.7-.2-.6-.2-.6-.2-.5-.2-.6v-.7l-.3-.6v-.7l-.3-.6v-.7l-.2-.6-.2-.6v-.7l-.2-.7v-1.4l-.2-.7v-1.5l-.2-.7v-.7h1v2.2l.2.7v1.2l.2.7v.6l.2.6v.7l.2.5.2.7v.6l.3.6v.6l.3.6.2.6.2.6.2.6.2.6.2.5.2.6.2.6.3.6.2.5.2.5.2.5.3.5.3.5.3.5.3.5.3.4h-.8zm.6.8l-.4.3-.3-.3h.8zm7.6-17h1v3.7l-.3.7v.6l-.2.7v.7l-.4.6-.2.6-.2.6-.3.6-.3.6-.3.5-.2.6-.3.5-.4.5-.2.5-.4.4-.4.5-.4.4-.3.6-.4.4-.5.4-.4.4-.3.4-.4.3-.4.3-.5.4-.4.3-.2.3-.6-.8.3-.3.4-.3.3-.3.3-.2.4-.4.4-.3.4-.3.4-.4.3-.4.4-.5.3-.4.3-.4.4-.4.3-.5.3-.5.3-.5.2-.5.3-.5.3-.5.2-.6.3-.6.2-.5.2-.6.2-.8v-.6l.2-.6v-.7l.2-.6v-3.1zm5.7-89.2l.7-.8.2.5-.5 2.6-.4 2.6-.3 2.7-.3 2.7-.4 2.7-.3 2.7-.3 2.7-.4 2.8-.3 2.8-.3 2.7-.3 2.8-.2 2.8-.2 2.8-.3 2.7-.2 2.8v3l-.3 2.7-.2 2.8-.2 2.8v2.8l-.2 3v8.5l-.2 3v8.6l.2 3v3l.2 2.8.2 3h-1l-.2-3v-3l-.2-2.8v-5.8l-.2-3V451l.2-2.8v-3l.2-2.7v-2.7l.3-3 .2-2.7.2-2.8V428l.3-2.7.3-2.8.3-2.8V417l.4-2.8.3-2.7.3-2.8.4-2.7.3-2.7.4-2.7.4-2.7.4-2.8.3-2.7.5-2.7.4-2.7v.6zm.7-.8l.2.2v.3l-.3-.5zm-12.3-7l-1-.3.8-.3.3.2.4.2.2.3h.3l.4.3.3.3.4.2.4.2.5.3.4.2.3.2.4.3.4.2.5.3.5.2.4.2.4.2.4.2.5.3.4.2.5.2.4.2.3.2.4.3h.4l.5.4.4.2.3.2.3.3.4.3.3.3.4.2-.6.8-.2-.2-.4-.3h-.3l-.3-.3-.3-.3-.4-.2-.4-.2-.4-.3-.4-.2-.4-.2-.4-.3-.4-.2-.4-.3-.5-.2-.4-.2-.4-.2-.5-.2-.5-.3-.4-.2-.4-.2-.4-.2-.4-.2-.4-.3h-.4l-.4-.4-.4-.2-.4-.2-.4-.3-.4-.3-.3-.3-.4-.2-.4-.2.8-.3zm-1-.3l.2-.8.6.5-.8.3zm-6 71.4l.8.6-.8-.2-.3-1v-1l-.3-1-.2-1.3v-1l-.2-1.4V443l-.2-1.6v-5l.2-1.8v-2l.2-2 .2-2 .2-2.3.2-2.3.2-2.5.3-2.4.3-2.5.3-2.6.4-2.8.4-2.8.4-3 .4-2.8.5-3 .6-3.2.5-3.2.6-3.3.6-3.5.6-3.5.6-3.5 1 .2-.6 3.5-.6 3.5-.6 3.4-.5 3.3-.4 3.3-.5 3-.4 3-.4 3-.4 3-.4 2.7-.3 2.7-.3 2.7-.3 2.5-.2 2.4-.3 2.4-.3 2.3v2.2l-.3 2v2l-.2 2v9.8l.2 1.4v1.2l.3 1 .2 1.2v1l.4 1-1-.3zm.8.6l-.5.6-.3-.8.8.2zm0 0l-.7-.7 1 .3-.3.3zm-.7-.7l1-1v1.3l-1-.4z"/>
+      <path fill="#fff" d="M343.6 471.8l4 14.7c.2 7.7 5 14 8.3 19 4-3 7.5-8 6.5-16-5.8-46.5-3.8-77.3 6-115-22 15-32.3 46.6-25 97.3z"/>
+      <path fill="#21231e" d="M347 486.6l-3.8-14.7 1-.3 3.8 14.6-1 .3zm1-.3zm7.6 19l.6.7h-.7l-.3-.6-.3-.5-.4-.5-.4-.5-.3-.5-.5-.6-.3-.6-.4-.5-.3-.7-.4-.5-.2-.6-.4-.5-.3-.6-.2-.5-.4-.6-.3-.7-.2-.6-.3-.6-.3-.5-.3-.7-.3-.6-.3-.7-.2-.7-.2-.6-.2-.7-.2-.7-.2-.7v-.6l-.2-.7v-.8l-.2-.8v-.7h1v1.4l.2.7v.7l.2.7.2.6v.6l.3.7v.5l.4.7.2.6.3.6v.6l.4.7.3.6.3.6.3.4.3.6.4.6.3.6.3.5.4.6.3.5.4.5.3.6.3.4.4.5.3.4.4.5.3.4.3.5.4.3h-.8zm.6.7l-.4.3-.3-.4h.8zm5.8-16.5h1v5.5l-.2.6v.7l-.3.6v.4l-.3.6-.2.6-.3.5-.2.6-.2.5-.3.6-.3.5-.3.6-.3.4-.2.4-.3.4-.4.5-.2.3-.3.4-.4.4-.3.3-.3.4-.4.4-.4.3-.3.3-.7-.8.4-.3.4-.4.3-.3.4-.3.4-.3.3-.4.4-.3.4-.4.3-.4.3-.4.3-.4.3-.4.3-.4v-.5l.4-.3.2-.5.2-.5.2-.5.2-.5.2-.5.2-.6v-.6l.2-.5v-.6l.2-.7v-5.1zm6.8-114.7l-.6-1 .8.7-1 3.5-.8 3.5-.8 3.4-.7 3.4-.7 3.4-.7 3.3-.6 3.5-.6 3.4-.4 3.2-.5 3.3-.3 3.4-.4 3.2-.4 3.4-.4 3.3-.2 3.3-.2 3.4-.2 3.4v3.6l-.2 3.5v14.7l.3 3.7.3 4 .2 3.8.3 4 .4 3.8.3 4 .5 4.2.4 4.3.6 4.4h-1l-.6-4.2-.4-4.3-.5-4.2-.3-4-.4-4-.3-4-.2-3.8-.2-3.8v-3.7l-.2-3.7v-14.3l.2-3.4.2-3.4.2-3.4.2-3.4.3-3.3.3-3.4.4-3.3.4-3.3.6-3.4.5-3.3.7-3.4.6-3.3.7-3.4.7-3.4.8-3.5.8-3.4.8-3.5 1-3.6.8.6zm-.6-1l1-.6-.2 1.3-.8-.6zm-24 98h-1l-.7-4.6-.5-4.6-.5-4.5-.3-4.3-.3-4.2-.2-4.2v-8l.2-3.8.2-3.7.3-3.7.4-3.4.5-3.4.6-3.3.8-3.3.7-3 1-3 1-3 1-2.8 1-2.8 1.2-2.5 1.3-2.5 1.4-2.4 1.5-2.3 1.4-2 1.6-2.2 1.7-2 1.7-2 2-1.6 1.8-1.7 2-1.6 2-1.5.6.8-2 1.4-2 1.6-1.8 1.6-1.8 1.7-1.8 2-1.6 2-1.6 2-1.5 2-1.4 2.3-1.4 2.4-1.4 2.4-1.2 2.6-1 2.7-1 2.7-1 3-1 3-.7 3-.7 3-.6 3.4-.5 3.3-.5 3.5-.3 3.6-.3 3.7-.2 3.8v12l.4 4.4.3 4.3.5 4.5.5 4.6.6 4.7zm-1 0zm.4 0h.5-.4zm-.4 0z"/>
+      <path fill="#fff" d="M344.8 486.2l-20.3-6.7c-2.5 20.2 1.4 45.6 7 79 4.6 29 2 51.6-1.5 66.2 21.6-3 30.7-30.7 20-83-3-13.7-5.8-31.3-5.2-55.5z"/>
+      <path fill="#21231e" d="M324.7 479l20.2 6.7-.4 1-20.2-6.7-.3-.6.7-.4zm-.6.4v-.6l.7.2-.6.4zm8 79l-1 .3-.6-3-.5-3.2-.6-3-.5-3-.5-3-.5-2.8-.4-3-.4-2.7-.4-2.7-.4-2.7-.4-2.7-.3-2.7-.4-2.6-.3-2.6-.3-2.4-.2-2.5-.3-2.3-.2-2.4-.2-2.4v-2.4l-.3-2.3V500l-.2-2v-10.7l.2-2 .2-2v-2l.4-2 1 .3-.2 2-.2 1.8v2l-.2 2v4l-.2 2v4.3l.2 2.3v2.3l.2 2.3.2 2.3.2 2.2.2 2.4.3 2.4.2 2.5.3 2.5.3 2.5.3 2.6.4 2.8.4 2.6.3 2.7.4 3 .6 2.7.4 2.8.4 3 .5 3 .4 2.8.5 3 .4 3 .5 3.2zm-2 65.8v1l-.5-.6.4-1.4.2-1.4.3-1.5.3-1.5.3-1.6.4-1.6.3-1.7.2-1.8.2-1.7.2-1.8.2-2 .2-1.8v-2l.3-2 .2-2v-2l.2-2v-13.4l-.2-2.3-.2-2.4-.2-2.4-.2-2.5-.3-2.5-.3-2.6-.3-2.6-.4-2.6-.4-2.7 1-.2.3 2.7.4 2.7.3 2.5.3 2.6.3 2.6.2 2.5.2 2.6v2.4l.3 2.4v6.8l.2 2.3v4.3l-.2 2v2l-.2 2v2l-.2 2-.2 2-.2 1.8-.3 1.8v1.8l-.4 1.7-.2 1.8-.3 1.6-.2 1.6-.3 1.5-.3 1.5-.4 1.5-.3 1.4-.5-.8zm0 1h-.6v-.6l.7.6zm19.4-83.5l1-.2 1 5 .8 4.6.7 4.6.5 4.5.5 4.3.4 4 .3 4 .2 4v7.2l-.2 3.4-.2 3.2-.4 3-.4 3-.6 3-.6 2.6-.7 2.6-1 2.4-1 2.3-1 2.2-1 2-1.2 1.8-1.3 1.7-1.4 1.5-1.4 1.4-1.5 1.3-1.5 1-1.8 1-1.8.7-2 .7-2 .5-2 .2v-1l2-.3 1.8-.6 1.8-.6 1.7-.8 1.6-1 1.5-1 1.5-1 1.4-1.5 1.3-1.5 1.3-1.6 1-1.8 1.2-2 1-2 1-2.2.7-2.3.6-2.4.7-2.7.5-3 .4-2.8.4-3 .2-3.3v-3.5l.2-3.5v-3.7l-.3-3.8-.3-4-.3-4-.4-4.3-.7-4.4-.8-4.5-.8-4.7-1-5zm-4.8-55l.3-1 .3.5V503l.2 2 .2 1.8v2l.2 1.8v1.8l.2 1.8.2 1.7.2 1.8.2 1.7.2 1.7.2 1.6.2 1.6.2 1.6.2 1.5.3 1.5.3 1.5.3 1.5.2 1.4.3 1.4.3 1.4.3 1.4.3 1.3v1.3l.4 1.2-1 .2-.2-1.3-.3-1.3-.4-1.2-.2-1.4-.3-1.4-.2-1.4-.2-1.4-.3-1.5-.2-1.5v-1.5l-.4-1.6-.2-1.5-.2-1.6-.2-1.7-.2-1.7-.2-1.7-.2-1.8-.2-1.8v-1.7l-.3-2-.2-1.7v-2l-.3-1.8v-4l-.2-2v-13l.3.5zm.3-1l.3.2v.2l-.4-.5z"/>
+      <path fill="#21231e" d="M343.6 584h1v.7h-.8v-.2h-.2v-.4zm-4.3-40l1-.4.4 1.2.2 1.2v1l.4 1.3.2 1.3.2 1.2.2 1.2.2 1.2.2 1.3.2 1.3.2 1.2.2 1.3.2 1.3.2 1.2.2 1.3v1.4l.3 1.3v2.6l.3 1.3v1.3l.2 1.2v2.6l.2 1.3v9.1h-1v-7.6l-.2-1.2v-2.7l-.2-1.3V570l-.2-1.3v-1.3l-.2-1.3v-1l-.3-1.4v-1.3l-.3-1.3-.2-1.3v-1.2l-.3-1.3-.2-1.3-.2-1.3-.2-1.3v-1.2l-.4-1.2-.2-1.2-.2-1.2-.2-1.2-.3-1.2-.2-1.2-.2-1.2zm-5.5-50.4h1.2v6.4l.2 1.5v3.3l.2 1.5v1.6l.2 1.5v1.6l.3 1.5v3.1l.3 1.5.2 1.7v1.5l.3 1.6.2 1.5.2 1.6.2 1.4.2 1.6.3 1.5v1.6l.4 1.6.2 1.6.3 1.6.2 1.5.3 1.6.3 1.5.3 1.5.4 1.6-1 .3-.5-1.7-.4-1.6-.3-1.6-.3-1.5-.3-1.5-.2-1.6-.3-1.6-.2-1.5-.3-1.6-.2-1.6-.2-1.4-.3-1.6-.2-1.5-.2-1.6v-1.7l-.3-1.5-.2-1.6v-1.5l-.2-1.6v-1.4l-.2-1.6-.2-1.6V508l-.2-1.7V503l-.2-1.4v-6.4l-.2-1.6zm1.2 0h-1.2v-.2h.2v-.2h.2v-.2h.8v.2h.2v.4z"/>
+      <path fill="#fff" d="M344 367.3l13.2 2.2-4.6 23.3c-5 24.3-8.2 53-4.5 84.2 1.5 11.7 4 21.2 7.6 28.5-14.6-1.6-24-15.8-22.7-40.6-2.6-29-1.5-52 3.2-69.4 1.4-5 5.8-24.2 7.8-28.3z"/>
+      <path fill="#21231e" d="M357 370l-13-2.3v-1l13.3 2.3.4.6-.6.4zm.3-1h.5v.6l-.5-.6zm-4.2 24l-1-.3.2-.3v-.4l.2-.5v-.6l.2-.7v-.6l.3-.7v-.8l.2-.8v-1l.3-.7.2-1 .2-1v-.8l.2-1 .2-1 .2-1 .2-1 .2-1 .2-.8v-1l.3-.7.2-1v-.7l.3-.7v-.7l.3-.6v-.6l.2-.5v-.4l.2-.3v-.3l1 .2v.6l-.2.5v.5l-.3.6v.5l-.2.7-.2.8-.2.8v1l-.3.7-.2 1v.8l-.2 1-.2 1-.2 1-.2.8-.2 1-.2 1v1l-.3 1-.2.7-.2 1v.7l-.2.7v1l-.2.5-.2.6v.7l-.2.5v.7zm-4.4 84h-1l-.3-2.8-.3-3-.3-3-.2-2.8v-2.8l-.3-3V457l-.2-3v-11l.2-2.7v-2.7l.2-2.7.2-2.8.2-2.6.2-2.6.3-2.6.2-2.6.3-2.6.3-2.5.4-2.5.4-2.5.4-2.5.3-2.4.4-2.4.3-2.4.5-2.4.4-2.3.5-2.3.4-2.3 1 .2-.4 2.2-.4 2.3-.5 2.3-.4 2.4-.4 2.4-.5 2.4-.4 2.4-.2 2.4-.4 2.5-.3 2.5-.2 2.5-.3 2.6-.3 2.5-.2 2.5-.2 2.7-.2 2.6-.2 2.6v2.6l-.2 2.7v2.7l-.2 2.7v11.5l.2 3v2.7l.3 3 .2 2.7.3 3 .3 2.8.3 3zm7 29v-1l-.4.8-.4-.7-.3-.6-.3-.8-.4-.7-.3-1-.3-.6-.3-.8-.4-.8-.3-.8-.2-.8-.2-.8-.3-1-.2-.7-.3-1-.2-.8-.3-1-.2-1-.2-.8v-1l-.3-1-.2-.8-.2-1-.2-1v-1l-.3-1-.2-1v-1l-.3-1-.2-1v-1l-.2-1.2-.2-1 1-.2v1l.3 1v1.2l.2 1v1l.3 1 .2 1 .2 1v1l.2 1 .2 1 .2 1 .2 1 .3.8.3 1 .2.8.2 1 .3.7.2 1 .3.7.2.8.3 1 .3.7.3.8.3.7v.8l.4.8.4.7.3.7.4.7.3.6.3.7-.5.7zm.4-.7l.4.8h-1l.6-.7zM332.4 465l1-.2v8.8l.2 2 .2 2 .3 2 .4 1.8.4 1.7.4 1.8.5 1.7.5 1.5.6 1.5.6 1.5.7 1.3.8 1.3.7 1.3.8 1 1 1 .8 1.2 1 1 1 .8 1 .8 1 .8 1 .7 1.2.6 1.2.4 1.2.5 1.2.3 1.2.3 1.3.3h1.4l-.2 1h-1.3l-1.4-.4-1.3-.4-1.3-.4-1.2-.5-1.2-.5-1.2-.7-1-.6-1.2-.8-1-.8-1-1-1-1-1-1-1-1.2-.7-1.2-.8-1.3-.8-1.2-.7-1.4-.7-1.5-.5-1.6-.6-1.6-.5-1.7-.4-1.6-.4-1.8-.3-2-.2-1.8-.2-2-.2-2v-8.9zm1-.2zm2.3-69.4l1 .3-.5 1.6-.4 1.7-.4 1.7-.3 1.7-.3 1.8-.3 1.8-.3 1.8-.2 2-.2 1.8-.3 2-.2 2v2l-.3 2v2l-.2 2-.2 2.3v4.3l-.2 2.2v9.6l.2 2.5v2.4l.2 2.5v2.5l.2 2.6.2 2.6.2 2.5.2 2.6.2 2.8h-1l-.2-2.6-.2-2.6-.2-2.7-.2-2.7v-2.5l-.2-2.6v-2.5l-.2-2.4v-18.5l.3-2v-2.2l.3-2v-2.2l.3-2 .3-2 .3-2 .2-1.8.3-2 .4-1.8.4-1.8.3-1.8.5-1.7.4-1.7.3-1.7.4-1.6zm8.3-28.6v1l.4-.3-.2.4-.2.4-.2.6-.2.6-.3.7-.2.8-.2 1-.2.8-.3 1-.3 1-.2 1-.3 1-.3 1-.3 1.2-.4 1-.3 1.2-.3 1-.2 1.2-.3 1-.3 1.2-.3 1-.3 1-.3 1-.2 1-.3 1-.3 1-.2.8-.2.8-.2.7v.6l-.2.6v.5l-1-.3v-.5l.2-.7.2-.6.2-.8v-1l.4-.7.2-1 .2-.8.3-1 .2-1 .3-1 .2-1.2.3-1 .3-1.2.3-1 .4-1 .2-1.2.3-1 .2-1.2.3-1 .3-1 .3-1 .4-1 .2-1 .3-1v-.8l.4-.8.2-.7.3-.7v-.6l.3-.5.2-.5.5-.2zm-.5.2l.2-.3h.3l-.5.3zm.5.3v-.5.5zm-.5-.3l.2-.3h.3l-.5.3z"/>
+      <path fill="#fff" d="M336 370.4l6.4 7.4c-1.8 1.4 1.3 7-.4 18-1 6.4-4.8 13.8-5.6 22-2.5 26.5-2.5 59.8 5.4 81-14.5-1.6-19.5-14.8-20-39.6-.4-20.6-.4-44.7 4.7-72.7 1-6.5 4.2-11.7 9.4-16z"/>
+      <path fill="#21231e" d="M342 378.2l-6.5-7.5.8-.6 6.5 7.5v.7h-.7zm.8-.7l.4.4-.5.2v-.7zm-.3 18.5h-1l.2-1.2v-1l.2-1V385l-.2-.6v-1.2l-.2-.6v-1l-.2-.4v-2.8l.2-.3.3-.4v-.2l.7.8v.2h-.2v.5h-.2v2.2l.2.4v1.1l.2.6v1.1l.2.7v8.1l-.2 1v1l-.3 1zm0 0zm-5.6 21.7h-1v-1.8l.2-.7.2-.7v-.7l.3-1v-.6l.3-.8.2-.7.2-.8.2-.7.2-.7.2-.7.2-.6.2-.7.2-.7.3-.7v-.7l.3-.6.2-.7.2-.7.2-.6v-.7l.3-.6.2-.6.2-.5.2-.7v-.6l.2-.6v-.6l.2-.6v-.5h1v1.2l-.3.6v.7l-.2.6v.7l-.3.7-.2.6-.2.6v.7l-.3.7-.2.6-.3.7-.2.6-.2.6-.2.7-.2.7-.2.7-.3.7-.3.7-.2.8-.2.7-.2.7v.7l-.2.6-.2.7v.7l-.3.8v.7l-.2.7v1.5zm4.8 81.6v-1l-.4.7-.8-2-.6-2-.7-2.3-.6-2.2-.5-2.3-.5-2.4-.5-2.4-.4-2.4-.4-2.5-.4-2.5-.3-2.5-.3-2.6-.2-2.7-.2-2.7-.2-2.6v-2.7l-.2-2.7V455l-.2-2.8v-10.9l.2-2.7V436l.2-2.8v-2.7l.3-2.6.3-2.7.2-2.6.2-2.6.2-2.4h1l-.3 2.6-.2 2.6-.2 2.5-.2 2.6v2.6l-.2 2.6v2.7l-.2 2.6v2.7l-.2 2.7V455l.2 2.7v2.7l.2 2.7.2 2.5.2 2.7.2 2.6.3 2.5.3 2.6.4 2.4.4 2.4.4 2.5.4 2.3.5 2.4.7 2.2.6 2.2.6 2.2.6 2 .7 2-.5.7zm.5-.6l.3.7h-.8l.5-.7zm-21-39.5h1v2.2l.2 2.3v2l.2 2.2.2 2v2l.3 1.7.3 1.8.3 1.8.2 1.6.4 1.5.4 1.6.4 1.5.5 1.4.4 1.2.6 1.3.6 1.2.6 1 .7 1 .6 1 .8 1 .8 1 .8.6 1 .7 1 .7 1 .6 1 .5 1 .4 1 .4 1.3.3 1.3.2 1.3.2-.2 1-1.4-.2-1.3-.3-1-.4-1.3-.4-1.2-.5-1-.6-1.2-.5-1-.7-1-.7-.8-.7-1-1-.7-1-.7-1-.6-1-.7-1.2-.6-1-.5-1.4-.5-1.3-.5-1.5-.5-1.5-.4-1.5-.3-1.7-.4-1.5-.4-1.8-.3-1.8-.2-2v-2l-.3-2v-2l-.2-2.3v-2.2l-.2-2.3zm4.7-72.8l1 .2-.5 2.6-.4 2.6-.3 2.5-.4 2.6-.3 2.4-.4 2.5-.3 2.4-.3 2.4-.2 2.4-.2 2.5-.3 2.3v2.4l-.3 2.4-.2 2.3v2.4l-.2 2.2v2.3l-.2 2v4.5l-.2 2.2V459h-1v-26.9l.2-2.2v-2l.2-2.4v-2.3l.2-2.3.2-2.3.2-2.4.2-2.3.2-2.4.2-2.5.3-2.3.3-2.4.3-2.5.4-2.5.3-2.6.4-2.5.4-2.6.6-2.6.4-2.6zm1 .2zm9.3-16.5l-.8.7h.7l-.4.5-.5.4-.5.4-.4.4-.4.5-.4.3-.4.4-.4.5-.4.4-.4.5-.3.5-.4.5-.3.5-.3.4-.3.4-.3.5-.2.4-.3.5-.2.4-.3.5-.2.4-.2.6-.2.5-.2.5-.2.6-.2.5-.2.7v.5l-.3.6v.6l-.2.6v.6l-1-.2v-.6l.2-.6.2-.6v-.6l.3-.6v-.6l.3-.5.2-.6.2-.6.2-.4.3-.6v-.5l.4-.5.2-.6.3-.5.2-.6.3-.5.3-.6.4-.5.3-.6.4-.5.2-.6.4-.4.4-.5.4-.4.4-.4.5-.4.4-.5.5-.4.4-.4.5-.6.6-.4h.7zm-.7 0l.4-.3.3.4h-.7z"/>
+      <path fill="#fff" d="M372.3 390l-13.4-1.6c-2.6 12.7-4.5 21.7-5 26.2-1 9 1.8 17 5 23 5-3 7.2-9.4 9.2-18.6 2-9.2 2.7-19.2 4-29z"/>
+      <path fill="#21231e" d="M359 388l13.3 1.5v1l-13.5-1.6-.4-.7.5-.4zm-.6.3v-.4h.5l-.6.3zm-4 26.4h-1l.2-.6v-.8l.2-.6v-1l.2-.6v-.7l.3-.6v-.7l.2-.7v-.7l.3-.7v-1l.2-.7.2-.8.2-1v-.7l.3-1 .2-.8v-1l.2-1 .2-1 .2-1 .2-1 .2-1 .3-1 .2-1 .2-1.2.2-1.2v-1l.4-1.3 1 .2-.3 1.2v1l-.3 1.3-.3 1-.2 1.2-.2 1-.2 1-.2 1-.2 1-.2 1-.2 1v1l-.3 1-.2.8-.2.8v1l-.3.7v.8l-.3.7v.8l-.2.7-.2.7v.6l-.2.7v1.3l-.2.5v1.1l-.2.5v.9zm4.3 22.6l.5.8h-.7l-.3-.7-.3-.6-.4-.6-.3-.5-.3-.6-.2-.7-.3-.7-.2-.6-.3-.7-.2-.7-.3-.7-.2-.8-.2-.7v-.7l-.3-.7-.2-.7-.2-.7v-.8l-.3-.7v-.7l-.2-.8v-.8l-.2-.7v-.8l-.2-.8v-6.1h1v6.6l.2 1v1.4l.3.7v1.6l.3.8.2.7v.8l.3.7.2.7.3.7.2.6.2.7.2.6.2.6.2.6.3.7.3.5.2.6.3.7.3.6.3.6.3.5-.7-.2zm.5.8l-.5.4-.2-.5h.7zm8.6-19h1l-.3 1-.2.8-.2 1v.7l-.3.8-.2.7-.2.8-.2.7v.8l-.4.7-.2.7-.3.6v.7l-.4.6-.2.7-.3.6-.2.5-.3.5-.3.6-.3.5-.4.7-.3.5-.4.5-.5.4-.3.6-.4.4-.4.4-.4.4-.5.3-.4.5-.4.3-.4.3-.5-.7.4-.3.5-.3.4-.3.3-.4.4-.3.4-.4.4-.4.4-.5.3-.4.4-.4.4-.5.3-.4.4-.5.2-.4.3-.6.2-.5.3-.6.2-.7.3-.7.2-.6.3-.7.2-.6.2-.7v-.8l.3-.7.3-.7.2-.8.2-.8.2-.8.2-.8.2-.8.2-1zm4.5-28.5v-1l.5.5v1l-.3 1v.8l-.2 1v1l-.2.8v1l-.2.8v1l-.2 1v.8l-.2 1v1l-.2.8v1l-.2.8v1l-.2.8v1l-.2 1-.2.8v1l-.2.8-.2 1v.8l-.2 1-.2.8-.2.8v1l-.3.8v1l-.3.7h-1l.3-1v-.8l.3-1 .2-.7v-1l.3-.8v-1l.3-.8.2-1v-1l.3-.8v-1l.2-.8v-1l.2-.8v-1.8l.2-1v-1l.2-.8v-1l.2-.8v-1l.3-1v-1.8l.2-1v-.8l.2-1v-.8l.3-1v-1l.6.7zm0-1h.6l-.2.5-.5-.5zm0 0v1-1zm0 1z"/>
+      <path fill="#fff" d="M407 418.6h-11.8c-.4 11-.7 18.5-.5 22.3.4 7.5 2.3 14 5.5 18.7 3.6-3 7-8.3 7.6-16.2.6-8-.6-16.5-.7-25z"/>
+      <path fill="#21231e" d="M395.2 418.2h12v1h-12l-.5-.5.5-.5zm-.5.5v-.5h.5l-.5.5zm.5 22.2h-1v-11.4l.2-.8v-4.4l.2-.8v-5h1v7.8l-.2.7v5.6l-.2.7v7.7zm4.7 18.4l.6.7h-.8l-.3-.5-.3-.4-.3-.4-.4-.5-.2-.4-.3-.5v-.4l-.4-.6-.2-.5-.3-.5v-.6l-.3-.6-.2-.5-.2-.6-.2-.6v-.5l-.2-.6-.2-.7-.2-.6v-.6l-.2-.6-.2-.6v-.7l-.2-.5v-.7l-.2-.7v-.5l-.2-.7v-2.6l-.2-.7h1v1.1l.2.7v1.4l.2.7v.7l.2.6v.7l.2.6v.6l.3.6v.7l.3.6v.7l.3.5v.6l.2.6.2.5.2.5.2.5.3.6.3.5.2.6.3.5.2.6.3.5.2.6.3.5.3.6.4.4.2.5h-.7zm.6.7l-.5.5-.2-.5h.8zm6.7-16.6h1v1.6l-.2.7v1.4l-.3.8v.6l-.3.7-.2.7-.2.6-.2.6-.2.5-.2.5-.3.6v.5l-.4.7-.2.5-.3.5-.2.5-.3.4-.3.5-.3.5-.4.4-.3.3-.4.4-.4.4-.3.5-.4.3-.4.4-.4.3-.3.3-.4.3-.7-.6.2-.3.4-.2.3-.3.2-.4.3-.2.4-.3.2-.4.3-.3.3-.4.3-.4.4-.5.3-.4.2-.4.2-.4.3-.5.2-.5.3-.5.2-.5.3-.5.2-.6.2-.4v-.6l.3-.6v-.6l.3-.6v-.7l.3-.6v-1.4l.2-.7V444zm0-24.3v-1l.4.6v5.6l.2 1v4.6l.2.8v2.8l.2.8v9.2h-1v-11.8l-.2-.8V429l-.2-1v-3l-.2-1v-5.3l.4.5zm0-1h.4v.6l-.5-.5z"/>
+      <path fill="#fff" d="M420 424.2l-12 .6c0 11 0 18.4.3 22.2a37 37 0 006.2 18.6c3.5-3 6.8-8.6 7-16.5.3-8-1-16.3-1.5-24.8z"/>
+      <path fill="#21231e" d="M408 424.3l12-.6v1l-12 .6-.4-.5.5-.5zm-.4.5v-.5h.5l-.4.5zm1.2 22.2h-1v-4l-.2-.6v-17.8h1V445l.2.4v1.6zm5.4 18.2l.6.8h-.7l-.2-.5-.3-.5-.3-.5-.3-.5-.4-.5-.3-.5-.3-.5-.2-.5-.3-.5-.3-.5-.2-.6-.2-.5-.3-.7-.2-.6-.2-.6v-.4l-.3-.6-.2-.6v-.7l-.3-.6-.2-.5v-.6l-.3-.8v-.6l-.2-.7v-.8l-.2-.6v-.7l-.2-.8v-2h.8v.7l.2.7v1.4l.2.7.2.7v.7l.2.7v.6l.3.6v.7l.2.6v.5l.3.6.2.7.2.5v.6l.3.6.2.5.2.5.2.5.2.5.2.6.2.6.3.5.2.6.2.4.3.5.3.5.3.4.3.5.3.3h-.8zm.6.8l-.4.4-.3-.5h.8zm6.2-17h1v2.3l-.2.7v.7l-.2.7-.2.6v.7l-.3.6v.6l-.2.5-.2.6-.2.7-.2.6-.3.5-.3.6-.3.5-.2.4-.3.5-.4.4-.3.4-.3.5-.3.4-.3.4-.3.5-.2.4-.3.3-.3.4-.4.3-.3.4-.3.3-.4.3-.6-.8.3-.3.3-.4.3-.3.4-.3.3-.4.4-.3.4-.4.2-.5.3-.4.2-.3.3-.4.3-.5.2-.4.3-.5.2-.6.3-.5.2-.6.2-.5.2-.6.2-.6.2-.6.2-.5.2-.6v-.5l.3-.7v-.6l.2-.7v-.6l.2-.8V449zm-1-25.3v1l.5-.5v2.4l.2.8v1.5l.2.7v3.4l.2.7v1.5l.2.8v.8l.2.8v2.5l.2.7v2.3l.2.8v5.3h-1v-7.4l-.2-.7v-1.6l-.2-.8V437l-.2-1v-1.5l-.2-.7v-1.6l-.2-.8v-1.6l-.2-.8v-1.6l-.2-.8v-2.2l.4-.6zm-.5.6v-.6h.5l-.5.6zm.5.4v-1 1z"/>
+      <path fill="#fff" d="M395 412.4l-12-.8c-1.2 11-2 18.2-2.2 22-.2 7.7 1 14.2 4 19.3 3.8-2.8 7.7-8 8.8-15.7 1.2-8 .8-16.4 1.4-25z"/>
+      <path fill="#21231e" d="M383 411l12 1v1l-12-1-.4-.5.5-.4zm-.4.5v-.5h.5l-.4.5zm-1.3 22.2h-1V431l.2-.4V429l.2-.6v-1.2l.2-.6v-2.2l.2-.7v-1.4l.2-.8v-.8l.2-.8v-1l.2-.8v-1l.2-.8v-1l.3-1v-1l.2-1v-1l1 .2v2l-.3 1v1l-.2 1v.8l-.2 1v.7l-.2 1v.8l-.2.8v.8l-.2.8v1.3l-.2.7v1.4l-.2.6v1.1l-.2.6v1.7l-.2.5v2.7zm3.2 18.8l.5.8-.7-.2-.2-.4-.2-.5-.2-.4-.3-.5-.2-.4v-.5l-.3-.5-.3-.5v-.6l-.3-.5v-.7l-.3-.6v-.6l-.3-.4v-.6l-.3-.7V443l-.2-.5v-.7l-.2-.6V440l-.2-.8v-5.5h1v6.8l.2.7v.7l.2.6v.6l.2.5v.6l.2.7.2.6v.6l.3.5v.5l.3.6.2.5.2.7.2.5.2.5.2.5.2.5.3.5.2.5.2.5.2.4h-.7zm.5.8l-.4.3-.3-.5.8.3zm8.2-16h1l-.2.8v.8l-.3.7v.7l-.3.7-.2.6-.2.6-.2.6-.3.6-.2.6-.3.6-.2.6-.3.5-.3.6-.3.5-.4.5-.3.5-.3.4-.3.5-.3.4-.4.6-.3.4-.4.4-.3.3-.4.4-.3.5-.4.3-.5.3-.3.4-.4.3-.4.3-.3.3-.5-.8.3-.3.4-.2.3-.3.4-.3.2-.3.4-.2.3-.4.3-.3.3-.3.3-.4.2-.4.4-.5.3-.4.2-.3.3-.5.3-.5.3-.4.4-.5.2-.5.3-.6v-.5l.4-.6.2-.5.2-.5.2-.6.2-.7.2-.7.2-.6.2-.7v-.7l.2-.7.2-.8zm1.8-24.4v-1l.5.5v1.5l-.2.8v5.6l-.2.7v9l-.2.8v2.2l-.2.8v.7l-.2.8v1l-.2.6v.8l-1-.2v-.7l.2-.8v-1.5l.2-.7V432l.2-.8V428l.2-.8V421l.2-.7v-4.8l.2-.8v-2.3l.6.5zm0-1h.5v.5l-.5-.6z"/>
+      <path fill="#fff" d="M384 399.6l-13.2-5.4c-2.2 8.8-5.2 37.8 0 50 4.5-3 9-8.4 10.3-17 1.6-9 2-18.2 3-27.6z"/>
+      <path fill="#21231e" d="M371 393.7l13 5.4-.3 1-13-5.4-.4-.6.7-.3zm-.7.3l.2-.5.5.2-.7.3zm.3 50l.6.7-.7-.2-.5-1.2-.5-1.3-.3-1.4-.4-1.5-.3-1.5-.3-1.6-.2-1.7-.2-1.7v-1.8l-.2-1.8v-3.6l-.2-2V418l.2-2v-1.8l.2-1.8.2-1.8V409l.3-1.8.2-1.7V404l.3-1.6.2-1.5.3-1.4.2-1.3.2-1.2.2-1v-1l.3-1 1 .3-.2 1v.8l-.3 1.2-.3 1.2-.2 1.3-.2 1.4-.2 1.5-.2 1.6-.2 1.6v1.7l-.3 1.7v1.7l-.2 1.8v1.8l-.2 1.8v3.8l-.2 2v5.4l.2 1.8v1.7l.2 1.8.2 1.7.2 1.6.3 1.6.3 1.5.3 1.3.5 1.4.4 1.2.4 1h-.8zm.6.7l-.5.3-.2-.5.7.2zm9.4-17.7h1v1l-.3.8-.2.8v.7l-.3.8-.2.8-.3.7-.2.7-.3.7-.3.5-.3.7-.2.6-.3.6-.3.6-.3.6-.5.5-.3.7-.4.5-.4.5-.3.5-.3.4-.4.5-.4.5-.5.4-.4.3-.3.4-.4.4-.4.4-.5.4-.5.3-.4.4-.4.3-.6-.8.4-.4.4-.3.4-.3.4-.3.4-.4.4-.3.4-.4.4-.4.4-.4.3-.4.4-.4.3-.5.3-.4.4-.4.3-.5.4-.4.3-.6.3-.5.3-.6.3-.6.2-.6.3-.7.3-.5.2-.6.3-.8.2-.7.2-.7.3-.7v-.7l.3-.7.2-.8v-.8zm3-27l.4-1 .4.6v1l-.2.8v1.7l-.2 1v1l-.2.8v1.8l-.2.8v1.7l-.2 1v1.7l-.2 1v1.6l-.2 1v.7l-.2 1v.8l-.2.8v1l-.2.7v.8l-.2 1v.8l-.2 1v.7l-.3.8v.8h-1v-.8l.2-1v-1.5l.2-.8v-1l.2-.8v-1l.2-.7v-1l.2-.7v-1l.2-.7v-1.6l.2-1v-.7l.2-1V410l.2-.8v-1.8l.2-.8v-1.8l.2-1v-1.5l.2-1v-.8l.2-1 .3.6zm.4-1l.4.3v.3l-.4-.5zm0 .6l-.3.4.2-.4zm0-.5l.4.3v.3l-.4-.5z"/>
+      <path id="c" fill="#edb92e" stroke="#21231e" d="M387.8 701.2c8 6.3 15.2-8.3 8-27.6-5-14.2-30.6-8.7-16.4 10.5.7 1 1.6.6 1.5-.4-1-4 1.6-6.3 5.5-5.5 10.5 2 11 22-.6 17.6-2.2-.2-.4 4 1.7 5.6z"/>
+      <path fill="#edb92e" stroke="#21231e" d="M400 639.2c-1 3.4-5 7.6-8 10.8-4.5 4.8-3.4 12.2-.2 16 3.5 4.4 5 9.2 5.8 13 .5 2.3 1.5 7.4.8 15.5-.4 4-2.7 6-5 7.7-1 1 .5 3 4.3 6 .4.2 1.5 1 2 3 .2.4 2 .4 2.2 0 .4-2 1.6-2.8 2-3 3.7-3 5.4-5 4.2-6-2.2-1.7-4.6-3.8-5-7.7-.6-8 .3-13.2.8-15.5.8-3.8 2.3-8.6 6-13 3-3.8 4.2-11.2-.5-16-3-3.2-7-7.4-8-10.7 0-.8-.3-1-.7-1-.3 0-.7.2-.7 1z"/>
+      <path fill="#edb92e" d="M395 685.5h11.6c2 0 3.6 1.6 3.6 3.5 0 2-1.6 3.5-3.6 3.5H395c-2 0-3.5-1.5-3.5-3.5s1.6-3.5 3.6-3.5z"/>
+      <path fill="#21231e" d="M406.6 686H395v-1h11.6v1zm4 3h-1v-1l-.2-.2v-.2l-.2-.2v-.2h-.2v-.2h-.2v-.2h-.3v-.2h-.2v-.2h-.3l-.2-.2h-.5v-.2h-.6v-1h1l.2.2h.4v.2h.3l.2.2h.2v.2h.2v.2l.3.2.2.2v.2l.3.2.2.3v.3l.2.3v.4l.2.2v.8zm-1 0h1-1zm-3 4v-1h.8l.3-.2h.2l.2-.2.2-.2h.3v-.2l.2-.2v-.2l.2-.2.2-.3v-.3l.2-.2v-.8h1v1.2l-.2.2v.4h-.2v.3l-.2.3h-.2v.3h-.2v.3h-.3l-.3.2v.2h-.3l-.2.2h-.2l-.3.2h-.4l-.2.2h-.8zm-11.5-1h11.6v1H395v-1zm-4-3h1v1l.2.2v.3h.2v.2h.2v.2h.2v.2h.2v.2h.2l.3.2h.2l.2.2.3.2h.6v1h-1.2v-.2h-.3l-.2-.2h-.2l-.2-.2-.2-.2-.3-.2-.3-.3-.2-.3-.2-.3-.2-.2v-.2l-.2-.2v-.4l-.2-.2v-.8zm1 0h-1 1zm3-4v1H394v.2h-.3l-.2.2h-.2v.2h-.2v.2l-.2.2-.2.2-.2.2v.2l-.2.2v.5h-.2v.6h-1v-1.2l.2-.2v-.2h.2v-.3h.2v-.2l.2-.2v-.2h.2l.2-.2v-.2h.3v-.2h.3v-.2h.3l.3-.2h.2l.2-.2h.5l.2-.2h.7z"/>
+      <path fill="#fff" d="M417 579.2l.5-11c-4.4-2.2-15.2 0-19.7 10.2a64.7 64.7 0 01-18 25.2c10 1.8 18.4-.2 23.7-7.4 7.3-9.8 11.2-15.7 13.6-17z"/>
+      <path fill="#21231e" d="M418 568.3l-.4 11h-1l.4-11 .7-.5.3.5zm-.3-.5l.3.2v.3l-.3-.5zm-19.5 10.8l-1-.4.6-1 .5-.8.5-1 .6-.7.5-.8.5-.8.7-.7.6-.6.7-.7.7-.5.7-.6.6-.4.7-.5.8-.4.8-.4.7-.3.8-.3.7-.2.7-.3h.7l.8-.3h1.2l.7-.2h2l.7.2h.5l.6.2.5.2.4.2-.4 1-.4-.3h-.5l-.5-.2h-.5l-.5-.2h-3l-.7.2h-.6l-.7.3-.7.2-.7.2-.7.2-.8.3-.7.3-.7.4-.7.4-.5.5-.7.5-.7.6-.5.6-.6.6-.7.7-.6.6-.5.7-.6.8-.5 1-.3.7-.5 1zM380 603l-.2 1-.2-.8.6-.6.6-.5.7-.5.6-.6.7-.6.6-.6.5-.6.6-.6.6-.7.6-.7.5-.6.7-.7.5-.7.6-.7.5-.7.6-.8.4-.8.5-.7.5-.8.5-1 .5-.8.6-.8.6-1 .5-.8.6-1 .6-1 .5-1 .5-1 .5-1 .6-1 .5-1.2.5-1.2 1 .4-.6 1.2-.5 1-.6 1.2-.5 1-.4 1-.6 1-.5 1-.5 1-.6 1-.5 1-.6.8-.6.8-.5.8-.5.8-.6.8-.5.8-.6.7-.4.7-.6.8-.6.6-.5.7-.7.7-.6.6-.6.7-.4.6-.6.5-.6.6-.7.7-.6.5-.5.6-.6.6-.8.5-.2-1zm-.2 1h-1l.8-.8.2.8zm23.4-8l.8.5-.6.7-.5.6-.7.6-.6.6-.6.6-.5.5-.6.6-.7.5-.7.5-.7.4-.8.3-.7.4-.7.3-.7.3-.7.2-.7.3-.8.2-.8.2h-.8l-.8.2h-.8l-1 .2h-6.1l-1-.2-.8-.2-1-.2.2-1 1 .2.8.2h1l.8.2h6.6l.8-.3h.8l.7-.3.8-.2.7-.2.7-.3.7-.2.7-.2.8-.4.6-.3.7-.3.7-.4.6-.5.6-.5.5-.5.5-.5.6-.5.5-.6.7-.6.5-.7zm13.4-16.8h1l-.2.4-.2.2h-.2l-.3.3-.2.3-.3.2-.2.3-.3.3-.3.4-.3.3-.2.4-.4.5-.3.4-.3.3-.4.5-.3.5-.4.5-.5.6-.3.5-.4.5-.5.7-.5.6-.5.7-.5.7-.5.7-.5.6-.6.8-.6.8-.5.8-.6 1-.7.7-.7 1-.6.8-.8-.6.6-1 .7-1 .6-.7.7-1 .6-.7.6-.8.5-.7.5-.7.5-.7.5-.7.5-.8.5-.6.5-.6.4-.6.4-.6.4-.6.4-.5.4-.5.3-.5.3-.4.4-.5.3-.4.3-.4.3-.3.4-.3.3-.3.2-.2.3-.3.3-.2.4-.2h.2l.3-.2-.4.4zm1 0v.3h-.2l.2-.3z"/>
+      <path fill="#fff" d="M425.2 580.6l-11.8-5c-5 10-8.2 16.6-9.5 20.2-2.8 7-3.5 13.8-2.3 19.5a22 22 0 0014-11.6c3.8-7 6-15.3 9.5-23z"/>
+      <path fill="#21231e" d="M413.6 575.2l11.7 5-.3 1-11.8-5-.3-.8.6-.2zm-.7.2v-.4l.6.2-.7.2zm-8.7 20.6l-1-.4.2-.3.2-.4.2-.5v-.4l.2-.3.2-.5.2-.4.2-.5.2-.5.3-.5.2-.5.3-.6.2-.5.3-.6.3-.5.3-.7.2-.6.3-.6.3-.7.4-.8.3-.7.4-.8.2-.7.4-.8.4-.8.4-.8.4-.8.4-.8.4-1 .4-.8.5-.8.4-1 .8.5-.4.8-.5 1-.5.8-.4.8-.3 1-.4.7-.4 1-.5.7-.4.7-.3.8-.3.7-.4.6-.3.7-.3.7-.3.6-.2.7-.3.6-.3.5-.3.6-.3.6-.3.6-.2.5-.3.5-.3.5-.2.5-.2.4-.2.5v.5l-.2.4-.2.3v.3l-.3.4zm-2.7 18.8l.2 1-.6-.4v-.5l-.2-.7v-.6l-.2-.5v-1.7l-.2-.5v-3.7l.2-.6v-1.2l.2-.7v-.6l.2-.5v-.7l.2-.6.2-.7v-.6l.3-.8v-.6l.3-.7.2-.7.2-.7.2-.7.2-.7.2-.7 1 .4-.3.6v.7l-.4.6-.2.6-.2.6-.2.7v.5l-.3.6v.8l-.3.6v.6l-.2.7v.6l-.2.6v.5l-.2.6v1.9l-.2.5v3.5l.2.5v1.2l.2.5v.7l.2.5-.6-.4zm.2 1h-.5v-.4l.5.4zm13.5-12.4l1 .5-.5.6-.3.6-.4.6-.3.6-.4.6-.4.5-.5.6-.5.6-.4.5-.4.6-.5.4-.4.5-.5.4-.5.3-.4.4-.6.4-.5.4-.5.4-.5.3-.5.4-.5.3-.4.2-.5.2-.4.2-.5.2-.4.3h-.4l-.5.2-.5.2h-.5l-.4.3h-.5l-.2-1h.9l.4-.3h.4l.4-.3h.5l.4-.3.5-.2.4-.2.5-.2.5-.2.5-.3.5-.3.4-.3.4-.4.4-.3.5-.4.4-.4.4-.4.6-.4.4-.5.4-.4.5-.6.3-.4.4-.5.4-.6.5-.6.4-.5.2-.7.4-.6.4-.6.3-.6zM425 581l.3-.8.3.6-.3.7-.3.8-.3.7-.3.7-.3.8-.2.7-.3.7-.2.7-.3.7-.3.8-.3.7-.2.6-.3.8-.4.7-.3 1-.2.6-.2.7-.3.8-.3.8-.2.7-.3.7-.3.8-.3.7-.2.7-.3.7-.3.8-.3.7-.5.7-.3.7-.3.6-.5.6-.3.7-1-.6.5-.6.3-.7.3-.6.3-.6.4-.7.3-.6.3-.7.3-.7.2-.7.3-.7.2-.7.3-1 .3-.6.3-.7.3-.7v-.8l.4-.7.3-.7.3-.8.2-.7.3-.7.3-.8.3-.7.3-.7.3-.7.3-.7.2-1 .3-.6.3-.8.3-.7.4-.8.3-.8.3.7zm.3-.8l.5.2-.2.4-.3-.6z"/>
+      <path fill="#fff" d="M428.6 580.6l-12.7-2c-2.4 10.8-4 18-4.4 22-1 7.5 0 14 2.7 19.4 4.3-2.3 8.8-7 10.7-14.7 2-7.8 2.2-16.3 3.6-24.7z"/>
+      <path fill="#21231e" d="M416 578.2l12.6 2v1l-12.8-2-.4-.6.6-.4zm-.6.4v-.5l.6.2-.6.4zm-3.3 22h-1l.2-.5V599l.2-.6v-.5l.2-.6v-.5l.2-.6v-.6l.2-.5v-.6l.2-.6v-.6l.2-.6.2-.7v-.6l.3-.7v-.7l.2-.8v-.8l.3-.8.2-.8v-.8l.3-1 .2-.7.2-1 .2-.8.2-1 .2-1 .2-1 .2-1 1 .3-.2 1-.2 1-.2 1-.2 1-.2.8-.2 1-.2.7-.2 1-.2.7v.8l-.3.8-.2.8v.8l-.2.7v.6l-.2.7-.2.7v.6l-.2.6-.2.7v.4l-.2.6v.6l-.2.5v1.1l-.2.6v.4l-.2.4v1.2zm2 19l.5.8-.7-.2-.2-.5-.3-.5-.2-.5v-.6l-.3-.4-.2-.5-.2-.5-.2-.6v-.6l-.2-.6v-.6l-.3-.6v-.6l-.2-.6v-.6l-.2-.6v-2.8l-.2-.6v-5.4l.2-.7v-1.5h1v3.1l-.2.7v5.1l.2.6v1.2l.2.6v.6l.2.6v.6l.3.6v.5l.2.6v.7l.3.5v.5l.3.6.2.5.2.5.2.5.3.5.2.5-.7-.2zm.5.8l-.5.3-.2-.5.7.2zm10-15.2l1 .2-.2.7-.2.8v.7l-.3.7-.3.7-.2.5-.3.6-.4.7-.3.6-.3.6-.3.4-.3.6-.4.5-.3.5-.4.5-.4.5-.4.4-.4.5-.4.3-.4.4-.4.4-.4.5-.4.3-.4.4-.4.3-.4.3-.4.3-.4.4-.5.3-.4.3-.4.2-.5.2-.5-.8.4-.2.4-.3h.4l.4-.4.4-.3.4-.3.4-.3.4-.3.4-.3.4-.3.3-.3.4-.4.4-.4.5-.4.3-.4.4-.5.3-.4.4-.6.2-.5.3-.6.3-.5.3-.6.4-.6.3-.5.3-.6.2-.6.3-.5.2-.6.3-.8.2-.7.2-.6.2-.8zm4-25v1l.5-.5v.8l-.2.8v.7l-.2.8v.8l-.2.8v.8l-.2.8v.7l-.2.8v.8l-.2.8v1.7l-.2.7v.8l-.2.8v.8l-.2.8v.7l-.2.8v1l-.2.6v.8l-.2.8-.2.7v.7l-.2.7-.2.8v.7l-.3.7-.2.7-1-.2.2-.8.2-.7v-.7l.2-.8v-.7l.3-.7v-.8l.2-.8v-.7l.2-.8v-1.5l.2-.8v-.7l.2-.8v-1l.2-.7v-.7l.2-.8v-1.6l.2-.8v-.8l.2-.7v-1l.2-.7v-.8l.2-.8v-.8l.2-1v-.7l.3-.8.5-.4zm-.4.3v-.4h.5l-.4.5zm.5.6v-1 1z"/>
+      <path fill="#fff" d="M430.4 563.4h7.6c4.4 2 9 12.2 3.7 22a65.8 65.8 0 00-9.5 29.2c-7.4-6.8-10.8-14.7-8.2-23.3 3.4-11.7 6.8-25.2 6.4-28z"/>
+      <path fill="#21231e" d="M438 564h-7.6v-1h7.8l-.2 1zm0-1h.2-.2zm4 22.5l-.8-.5.5-1 .4-.8.4-.8.3-1 .3-.8.2-1v-.7l.3-1V574l-.2-1v-.6l-.3-.8-.2-.7-.3-.8-.2-.7-.3-.6-.3-.7-.3-.6-.3-.6-.3-.4-.3-.5-.4-.3-.4-.4-.3-.4-.4-.4-.5-.3-.4-.3-.3-.2.5-1 .4.4.5.2.5.4.4.4.4.4.4.4.4.5.4.6.3.6.3.6.3.6.3.7.2.7.3.7.2.6.2.8v.7l.3 1v.8l.2.8v3.5l-.2 1v1l-.4.8-.3 1-.3 1-.4.8-.4 1-.5 1zM432 615l.5-.7-.8.3v-.8l.2-1v-2.3l.3-1v-.7l.2-.8.2-1 .2-.8v-1l.2-.7.3-1 .2-.8.2-1 .2-.7.3-1 .3-.8.3-1 .4-1 .4-.8.4-1 .4-1 .4-1 .4-1 .5-1 .4-1 .5-1 .5-1 .5-1.2.6-1 .6-1.2 1 .5-.7 1-.6 1.2-.7 1-.5 1-.5 1.2-.5 1-.4 1-.5 1-.5.8-.4 1-.3 1-.3 1-.4.8-.3 1-.3.8-.2.8-.3 1-.4.8-.2.8-.2 1-.2.7-.2 1v.7l-.3.8v1l-.3.7v.8l-.2.8v1l-.2.7v1.8l-1 .2zm.7-.3v1l-.8-.7.7-.3zm-9.2-23.6l1 .4-.3.8-.2.8v.8l-.2.7v.8l-.2.8v3l.2.8.2.8v.7l.3.7.3.7.2.8.3.7.4.7.4.6.3.7.5.7.4.7.4.7.5.6.4.7.5.7.4.6.6.7.6.6.6.7.7.6.5.7-.6.7-.8-.6-.7-.7-.6-.7-.7-.6-.6-.7-.6-.7-.4-.7-.6-.7-.4-.7-.5-.8-.3-.7-.5-.7-.3-.8-.5-.7-.3-.7-.3-.8-.4-.7-.2-.7-.2-.8-.2-.7v-.8l-.2-.8v-.8l-.2-.8v-2.5l.2-.8v-.8l.3-.8.3-1 .2-.7zm7-28v1l.4-.7v1.8l-.2.5v1.1l-.2.7-.2.7v.8l-.3.8v.8l-.2 1-.2.8-.2 1-.3 1v1l-.4 1-.2 1-.3 1-.2 1-.2 1-.3 1.2-.3 1-.3 1.2-.3 1-.3 1.2-.3 1.2-.3 1-.3 1.2-.2 1-.4 1.2-1-.3.4-1 .3-1 .5-1.2.3-1 .3-1.2.4-1.2.3-1 .3-1.2.3-1 .3-1.2.3-1 .2-1 .2-1 .3-1.2.2-1 .2-1 .2-1 .2-.8.2-1 .2-.8.2-.8v-.8l.3-.7v-.8l.2-.7v-.6l.2-.6v-2l.4-.6zm-.6.5v-.6h.4l-.5.5zm.4 0v-.6.4zm-.5 0v-.6h.4l-.5.5z"/>
+      <path fill="#fff" d="M433.8 558.2l-12-4.3c-4.3 10-7.2 16.8-8.4 20.5-2.3 7.3-2.6 14-1 19.6a21.3 21.3 0 0014-11.6c3.3-7.3 4.5-16.3 7.4-24.2z"/>
+      <path fill="#21231e" d="M422 553.4l12 4.3-.4 1-12-4.4-.3-.6.6-.3zm-.7.3l.2-.4h.4l-.7.4zm-7.4 21l-1-.3v-.4l.2-.4v-.4l.3-.4v-.4l.3-.5.2-.5v-.5l.3-.5.2-.5.2-.6.3-.6.2-.5.2-.6.3-.6.2-.6.2-.6.3-.7.3-.6.3-.7.4-.7.3-.8.3-.8.3-.7.4-.8.3-1 .4-.8.3-1 .4-.8.5-1 .4-.8.3-1 1 .5-.5 1-.4 1-.4.8-.3 1-.4.8-.4.8-.4.8-.3.8-.4.8-.4.8-.3.7-.3.8-.3.8-.3.7-.3.6v.8l-.4.6-.2.6-.3.6v.6l-.3.6-.2.5-.2.5-.2.5v.5l-.3.5-.2.4v.5l-.3.4v.3l-.2.3v.4zm-1.8 19l.3 1-.6-.4-.3-.6v-.5l-.2-.6v-.5l-.2-.5v-.6l-.2-.7V583l.2-.7V581l.3-.6v-.7l.2-.6v-.6l.3-.6.2-.7v-.6l.3-.7.2-.6.2-.6 1 .3-.3.6-.2.7-.2.7-.2.6v.7l-.2.6v.7l-.2.6-.2.6v.6l-.2.6v1l-.2.7v6.5l.2.6v1.1l.2.4.2.6v.5l.2.5-.6-.3zm.3 1h-.5v-.4l.5.3zM426 582l.8.6-.3.6-.4.7-.2.5-.4.6-.4.7-.4.6-.4.5-.4.5-.4.5-.5.5-.5.5-.5.4-.4.4-.5.4-.4.4-.4.4-.5.3-.5.5-.5.3-.5.3-.5.4-.4.2-.5.3h-.5l-.5.4-.5.2-.5.2-.5.2h-.4l-.6.3-.4.2h-.5l-.3-.8.4-.2h.5l.5-.3.5-.2h.4l.5-.3.4-.2.4-.3.5-.2.5-.2.5-.3.4-.3.5-.3.5-.4.4-.3.6-.3.4-.4.5-.3.4-.4.4-.5.4-.4.4-.4.4-.4.4-.5.4-.5.4-.5.4-.5.4-.6.3-.6.3-.6.3-.6.3-.7zm7.6-23.4l.4-1 .3.7-.3.8-.3.8-.2.8-.3.7-.2.8-.2 1-.2.6-.2.8-.3.8v.8l-.3.7-.2.8-.2.8-.2.8v1l-.3.6-.2.8-.2.8-.2.8v.7l-.3.8-.2.8-.3.7-.2.8-.2.7-.3.8-.3.7-.2.7-.3.8-.3.7-.3.7-.2.6-1-.5.4-.5.3-.7.3-.7.3-.6.3-.7.3-.8.2-.8.2-.7.3-.8.2-.7.2-.8.2-.7v-.8l.4-.8.2-.8.2-.8.2-.8.2-.8.2-.7.2-.7.2-.8.2-.8.2-.8.2-1 .2-.6.2-.8.3-.8.3-.8.2-.7.3-.8.3-.8.3-.7.3.6zm.4-1l.4.3v.3l-.4-.6zm-.2.6l-.2.4.2-.4zm.2-.5l.4.2v.3l-.4-.6z"/>
+      <path fill="#fff" d="M425.6 549.7l-2.6-16.4c-2.8-.7-6.5 5.8-10 9.5-1 1-2 1.7-2.6 2.8a23.3 23.3 0 00-3.4 8 62.3 62.3 0 01-13 27.6c10.2-.2 18-3.8 21.8-12 5-11 7.7-17.7 9.8-19.5z"/>
+      <path fill="#21231e" d="M423.4 533.3l2.7 16.4h-1l-2.5-16.3.6-.6.4.5zm-.3-.4h.4v.2l-.3-.4zm-9.7 10.2l-.8-.7.4-.4.2-.2.3-.4.4-.4.2-.4.3-.4.4-.4.2-.5.3-.4.4-.5.2-.4.3-.3.4-.5.2-.4.3-.4.4-.3.2-.3.3-.4.3-.3.4-.3.3-.4.3-.2.3-.2.4-.2.4-.3h.3l.4-.3h.3l.4-.2h1.1l-.2 1h-1l-.3.2-.2.2-.3.2-.3.2-.3.2-.3.3v.4l-.5.3-.3.3-.3.3-.4.4-.3.4-.3.5-.4.4-.3.3-.3.4-.3.4-.4.5-.3.5-.3.4-.4.4-.3.4-.4.4-.3.4-.4.4-.4.4-.3.4zm-2.5 2.7l-.8-.7v-.2h.2l.2-.2v-.2h.2v-.2h.2v-.2h.2v-.2h.2v-.2l.2-.2h.2v-.2l.2-.2h.2v-.2h.2v-.2h.2v-.2l1 .6h-.2l-.2.2v.2h-.2v.2h-.2l-.2.2v.2h-.2l-.2.2v.2h-.2v.2h-.2v.2h-.2v.2h-.2v.2l-.2.2v.2h-.2zm-3.3 7.7l-1-.2v-.6l.2-.4v-.3l.2-.3v-.8l.2-.3v-.3l.2-.3v-.3h.2v-.4l.2-.3v-.2l.2-.2v-.2l.3-.3v-.2l.2-.2v-.2l.3-.2v-.3h.2v-.3l.3-.3v-.2l.3-.2v-.2l.2-.3.2-.2.8.6-.3.3v.2l-.2.2-.2.2v.4l-.2.2-.2.2v.3l-.2.3v.2l-.2.3-.2.2v.2l-.2.3v.2l-.2.3v.2l-.2.3v.2l-.2.3v.5l-.2.3v.2l-.2.3v.5l-.2.3v.7zm-13.4 27v1l-.3-.8.5-.8.5-.7.5-.6.5-.8.5-.7.5-.7.4-.6.6-.7.4-.7.5-.8.4-.7.4-.7.4-.8.4-.7.4-.7.4-.8.4-.8.4-.8.4-1 .4-1 .3-.8.3-1 .3-.8.4-1 .3-1 .4-1 .3-1 .3-1.2.3-1 .3-1.3.2-1.3.3-1.2 1 .2-.3 1.2-.3 1-.4 1.3-.3 1.2-.4 1-.4 1-.3 1.2-.4 1-.4 1-.4 1-.3 1-.5.8-.4 1-.3.8-.4.8-.4 1-.5.8-.4.8-.3.7-.5.8-.4.8-.5.8-.4.7-.6.7-.5.7-.5.7-.5.7-.5.8-.5.7-.5.6-.5.8-.5.7-.4-.8zm0 1h-1l.7-.8.4.7zm21.3-12.8l1 .4-.5.7-.4 1-.4.6-.4.7-.5.7-.4.6-.5.6-.5.6-.5.6-.6.5-.6.4-.6.5-.7.4-.6.4-.8.4-.7.4-.7.4-.7.3-.7.3-.8.3-.8.2-.8.2-1 .2-.7.2-1 .2-.7.2h-1l-.8.2h-1l-.8.2h-2v-1h2.8l1-.2h.8l.8-.2 1-.2h.7l1-.3.7-.2.7-.3.8-.2.7-.3.7-.3.7-.3.6-.3.7-.3.6-.4.7-.5.6-.4.6-.4.5-.4.6-.6.5-.5.5-.4.5-.6.5-.6.4-.7.5-.6.4-.6.3-.7.3-.8zm9.8-19.2h1v.3l-.3.3v.2l-.3.2-.2.2-.2.2-.2.3-.3.4-.2.2-.2.4v.4l-.4.5-.2.5-.3.5-.2.5-.3.6-.2.6-.3.6-.3.6-.4.7-.3.8-.3.8-.4.7-.3.8-.4 1-.4.7-.4 1-.4.8-.4 1-.4 1-.5.8-.3 1-.5 1-1-.4.6-1 .4-1 .5-1 .4-1 .5-1 .4-.8.3-1 .4-.7.4-.8.4-.8.4-1 .3-.6.4-.7.4-.7.3-.6.4-.7.3-.6.2-.4.2-.6.3-.5.2-.5.3-.4.2-.5.3-.3.2-.4.2-.3.2-.4.2-.3.2-.3.2-.2.3-.2.3-.2-.2.4zm1 0v.3-.3z"/>
+    </g>
+    <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#d"/>
+    <path fill="#fff" stroke="#21231e" d="M536.4 415a38 38 0 004.8-1.5 66.2 66.2 0 01-21.4-22c-7.8-12 3.3-33 8-44.3a53 53 0 0021.2-31c1-7.3-19-4.7-33 2-17 8-19.3 5.7-25.4 7-2.2 10.5 2.4 11.4 6.7 11-9.4 15-13.3 29.8-15 51.4-2-21.6-6-36.5-15.3-51.5 4.3.6 9-.3 6.7-10.7-6-1.4-8.4.8-25.4-7.2-14-6.5-34-9-33-1.8 3 13.7 11.8 24 21.3 31 4.6 11.2 15.7 32.4 8 44.2a67.3 67.3 0 01-21.5 22c1.7.7 3.3 1.2 5 1.5-1.2 1.5-11 4.5-12.3 3.7-7.6-5.3-15-18-21.4-25.2-18.2-20.8-27.3-36.7-24-49.6 4.5-14 20.8-29.6-.8-27-21.7 2.8-39.6 32.5-45.4 68.3-2 13.2-3.3 24.4-4.7 33.5 11.8-4.3 17-8.5 20.2-13.7-1.4 5-2.5 9.7-3.2 14.2 9.7-1.7 16.7-6.4 19.2-15 1-3.6 2.3-6.5 3.6-9 3 1 7 1 11.6 0 1.7 4 15 19 22.2 30 8 12.2 20.2 21.6 24.2 22 2 .4 2.7-4 2.2-10.2 21 .2 42.3.3 63-.4 20.7.7 41.8.6 63 .4-.6 6 0 10.6 2 10.3 4-.5 16.2-10 24.3-22.2 7-10.8 20.5-25.7 22.2-30a20 20 0 0011.6.2c1.3 2.5 2.5 5.4 3.5 9 2.5 8.6 9.5 13.3 19.2 15-.7-4.5-1.8-9-3.2-14 3.2 5 8.4 9.3 20.2 13.6-1.4-9-2.7-20.3-4.8-33.5-5.8-35.8-23.7-65.5-45.4-68.2-21.6-2.6-5.3 13-.7 27 3.3 12.8-5.8 28.7-24 49.5-6.5 7.3-13.8 20-21.4 25.2-1.2.8-11-2.2-12.2-3.8z"/>
+    <g id="e">
+      <path fill="#edb92e" d="M440.6 356.8c-2 1.8-8.8 1.8-18 2.4-14.8.5-23.4-4-25.3-13.5 5.6 6.6 12.2 10 19.7 8 10.2-2.5 16-4.3 18.3-3.8 1.6.4 4 3.3 5.3 6.8z"/>
+      <path fill="#21231e" d="M422.6 359.7v-1h1.8l.7-.2h2.5l.8-.2h2.8l.8-.2h3l.5-.2h1l.4-.2h.5l.4-.2h.4l.5-.2h.3l.3-.2h.4l.3-.2h.2v-.3h.3l.6.7h-.3l-.3.3-.3.2h-.2l-.3.3h-.4l-.3.2h-.4l-.4.2h-.5l-.5.2h-1l-.5.2h-1.5l-.6.2H432l-.6.2h-2.8l-.8.2h-2.3l-1 .2H423zm0 0zm-25-14.3l-.7.6.8-.4.2 1 .2.7.3.8.3 1 .3.6.5.7.4.7.4.6.5.6.4.6.6.6.6.5.6.4.7.5.6.3.8.5.8.4.8.3 1 .4.8.2 1 .3 1 .2 1 .2h1l1 .3h1.2l1.2.3h6.6v1H416l-1-.2h-1.3l-1-.3h-1.2l-1-.3-1-.3-1-.3-1-.2-1-.4-.8-.3-.8-.4-1-.4-.7-.5-.7-.5-.7-.5-.7-.6-.6-.5-.6-.6-.4-.8-.5-.7-.3-.7-.4-.8-.4-.7-.4-1-.3-.7-.3-1-.2-.8 1-.4zm19.3 8l.2 1h-.8l-.7.2h-1.4l-.7.2h-2.8l-.6-.2-.7-.2h-.7l-.6-.3h-.7l-.6-.3-.8-.3-.6-.3-.6-.2-.6-.3-.6-.4-.6-.3-.6-.4-.6-.4-.6-.6-.6-.4-.6-.5-.5-.6-.6-.6-.4-.6-.6-.5-.5-.6-.6-.7.7-.6.5.6.5.6.6.6.5.5.5.5.6.5.4.5.6.5.6.4.5.5.7.4.6.3.6.3.4.3.6.2.6.3.6.2.7.2h.5l.6.3.7.2h.6l.7.2h4.7l.6-.3h.7zm18.5-4l-.3 1h-2.6l-.4.2h-.9l-.5.2-.5.2h-.5l-.6.2h-.5l-.6.3h-.5l-.7.3-.7.2h-.6l-.7.3-.7.2-.8.2-.8.2h-.8l-.8.3-1 .3-.8.2-1 .2-.8.3-.3-1 1-.2.8-.2 1-.2.7-.2 1-.2.7-.2.8-.2.7-.2.8-.2.7-.2.7-.2.6-.2h.6l.6-.3h.6l.6-.3h.6l.5-.2h.6l.5-.2h.6l.4-.2h.9l.3-.2h2zm0 0zm5.4 7.8l-.7-.8-.2.6v-.7l-.3-.3v-.3l-.3-.3v-.3l-.3-.2v-.3l-.2-.2-.2-.3v-.3l-.3-.2-.2-.3v-.2l-.2-.2-.2-.3v-.2l-.3-.2h-.2v-.3h-.2l-.2-.3v-.2h-.3l-.2-.2v-.2h-.2v-.2h-.4v-.2h-.2l.3-1h.2l.2.2.2.2h.2l.2.2.2.2h.2v.3l.3.2.2.2h.2l.2.3v.2l.2.2.2.2.2.2.2.2.2.3v.2l.3.2.2.3.2.3v.3l.3.4.2.3v.3l.3.3v.3l.3.3v.3l.2.3v.6zm0-.6l.2.3-.3.2v-.6zm-21.5-35.4v1.5h-.4v-.4h-.2v-.7l.2-.2h.2v-.2h.2zm15.3 4l-.5 1.3-.6-.2-.5-.2h-.6l-.5-.2-.4-.2-.5-.2-.4-.2-.5-.2-.4-.2h-.5l-.4-.3-.5-.2h-.4l-.4-.3h-.5l-.4-.3h-.5l-.4-.2h-.4l-.5-.2h-.4l-.3-.2h-1.3l-.4-.2H420v-2h2.9l.5.2h1l.4.2h.5l.3.2.5.2h.5l.4.2.5.2h.5l.4.3h.6l.5.3.6.2h.5l.6.3.5.2.6.2h.5l.6.3.6.2.5.2.6.2h.5zm9 2.5v1.5H442l-.3-.2h-.4l-.3-.2h-.3l-.4-.2h-.3l-.4-.2h-.4l-.3-.2h-.5l-.3-.2-.4-.2h-.3l-.4-.2h-.2l-.3-.2h-.3l-.3-.3h-.7l-.2-.2h-.4l-.2-.2.4-1.5h.2l.2.2h.2l.2.2h.3v.2h.4l.3.2h.3l.3.2h.4l.3.2.3.2h.4l.3.2h.4l.3.2h.4l.4.2h.3l.4.2h.4l.3.2h.6l.3.2h1zm0 1.5v-1.5h.4v.2h.2v.2h.2v.9h-.2v.2h-.2v.2h-.2zm23.4 7.5l.2-1.2h.2v.2h.2v.8h-.6zm-10-2l.4-1.2h.5l.3.2h.4l.3.2h1.1l.2.2h.6l.2.2h.6l.3.2h.7l.4.2h.8l.3.2h.9l.2.2h.9l.5.2h.8l-.2 1.3h-.9l-.4-.2h-.6l-.4-.2h-.7l-.4-.2h-1.4l-.3-.2h-.7l-.3-.2h-.6l-.3-.2h-.5l-.4-.2h-.5l-.3-.2h-.5l-.2-.2h-.5l-.2-.2zm.4-1.2l-.3 1h-.2v-.8h.8z"/>
+      <path fill="#21231e" d="M431.5 332l-.7 1.3-.4-.3-.4-.2-.4-.3-.3-.2-.4-.3-.4-.3-.3-.3-.4-.3-.4-.2-.3-.4-.3-.3-.2-.3-.3-.3-.3-.4-.2-.3-.3-.4-.2-.3-.3-.4-.2-.4-.2-.3-.3-.5-.2-.4-.2-.2v-.4l-.3-.4-.2-.3-.2-.4-.2-.3v-.4l-.2-.3-.2-.3-.2-.4 1.4-.7.2.2.2.4v.3l.3.2.2.4.2.3v.3l.3.3.2.4.2.3.2.4v.3l.3.4.3.3.2.4.2.4.2.4.3.3.2.4.3.4.2.3.3.4.3.3.3.3.3.2.3.3.3.3.2.2.4.3.3.2.2.2.3.2zm7.6-5.3l1.5.8-.2.4-.2.3-.2.4-.2.4-.3.5-.3.4-.2.2-.3.4-.3.3-.3.2-.3.3-.3.3-.3.3-.2.4-.3.2-.3.2-.4.2-.3.2-.3.2h-.3l-.5.2h-.3l-.3.2h-2.2l-.4-.2-.3-.2h-.2l.7-1.5h.5l.2.2h1.7l.3-.2h.2l.3-.2h.2l.3-.3.2-.2.3-.2h.2l.3-.3.2-.3.3-.2.2-.3.3-.4.2-.3.3-.3.2-.4.2-.3.3-.4.2-.5.2-.4v-.3z"/>
+      <path fill="#21231e" d="M429.6 331l-2.2-2.3c-1-1.3-.5-3 2-5.4 1.5.7 3 1.3 4.2 2-1 3-2.2 4.8-4 5.6zm-6.3 82l-.4 1h-.4v-1h.8zm23.8-3.6l1 1-.7.5-.6.4-.7.5-.6.4-.7.5-.7.3-.7.4-.7.4-.7.4-1 .3-.6.3-.8.2-.7.2-1 .2-.7.2h-.8l-.8.2h-5l-1-.2h-.8l-.8-.3h-1l-.8-.4h-1l-.7-.3-1-.3-.8-.3.3-1 .8.2 1 .3 1 .3.7.2 1 .2.7.2h.8l1 .2h.7l.7.2h4.8l.7-.2h1l.6-.3.7-.2h.7l.7-.4.7-.3.7-.3.8-.3.6-.4.7-.4.7-.5.6-.5.6-.5.5-.5.6-.6zm3-2.8l1 .8h-.2v.2h-.2l-.2.2v.2h-.2v.2h-.2v.2h-.2l-.2.2-.2.2v.2h-.2v.2h-.2l-.2.2-.2.2-.2.2-.2.2v.2h-.2l-1-.8h.2v-.2h.2v-.2h.2l.2-.2.2-.2.2-.2v-.2h.2v-.2h.2l.2-.2.2-.2.2-.2v-.2h.2l.2-.2.2-.2v-.2h.2zm1 .8l-1-.8.2-.2h.7v.2h.2v.8z"/>
+      <path fill="#21231e" d="M452.2 401.3l-1.2-.2v-.2h.2l.2-.2h.6v.4h.2v.2zm-5.5 16l.3 1-.7-.8.2-.4.2-.4.2-.5v-.4l.3-.4.2-.5.2-.5v-.5l.3-.4.2-.5.2-.5v-.5l.3-.5v-.5l.3-.5v-.5l.3-.5v-.5l.3-.5v-.5l.2-.5.2-.6v-.5l.2-.6v-.5l.2-.4v-.6l.2-.6v-.5l.2-.7v-.6l.2-.6 1.2.3v.6l-.2.5v.6l-.2.6v.6l-.2.6v.5l-.2.6-.2.4v.6l-.2.5v.6l-.3.6v.5l-.3.6v.6l-.3.5v.5l-.2.5-.2.5v.5l-.3.5-.2.5v.5l-.2.4-.2.5-.2.6-.2.5-.2.6-.2.5-.2.5-.2.5-.7-.8zm-.4.2l1 .5v.2h-.2v.2h-.4l-.2-.2v-.2h-.2v-.4zm15.2-9.5l1 .7-.3.4-.4.6-.3.4-.4.4-.2.4-.4.4-.4.4-.4.4-.4.3-.4.4-.5.3-.4.4-.6.3-.4.3-.5.3-.5.3-.5.3-.5.2-.5.3-.5.3-.6.2-.5.3-.7.2-.5.3-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.6.2-.3-1.2.6-.2h.6l.5-.3.6-.2.6-.2.6-.2h.6l.5-.3.6-.3.4-.2.5-.2.4-.3.5-.2.4-.3.5-.3.4-.4.5-.3.3-.3.5-.3.4-.3.4-.3.4-.2.4-.4.4-.3.4-.3.4-.3.3-.4.3-.4.3-.4.3-.4.2-.4.3-.4zm1 .7l-1-.7h.2v-.2h.7v.2h.2v.7z"/>
+      <path fill="#21231e" d="M461.3 400.2H460v-.2h.2v-.2h1v.4zm4.4 15.7l.7 1-.8-.3-.3-.4-.3-.4-.2-.5-.3-.5-.2-.4-.3-.4-.2-.5-.3-.5-.2-.4-.2-.5v-.5l-.3-.5-.2-.5-.2-.5-.2-.5v-.5l-.2-.5-.2-.5v-.6l-.3-.5v-.5l-.3-.6v-.4l-.2-.6v-.6l-.2-.5v-.7l-.2-.6v-.6l-.2-.5v-1.2h1v.5l.2.6v.6l.2.5v1.4l.2.5.2.6v.5l.2.5v.6l.3.5v.4l.2.5.2.4v.5l.2.4.2.5.2.4.2.5.2.4.2.4.2.5.2.4.2.5.3.4.3.4.2.4.3.5.2.3.3.4.3.3h-1zm0 .7l1-.7v.8l-.2.2h-.2v.2h-.4v-.2h-.2zm7.6-12.6l1 .4v.6l-.2.5v.5l-.2.5-.2.5-.2.5-.2.5-.2.5-.2.4-.2.4-.2.4-.3.5v.4l-.4.4-.2.5-.3.4v.3l-.4.3-.3.4-.3.4-.2.3-.3.3-.3.4-.3.3-.4.3-.3.3-.3.3-.3.2-.3.3-.3.4-.3.2-.3.3-.7-1 .3-.3.3-.2.3-.3.3-.2.2-.3.3-.3.2-.2.3-.3.3-.4.3-.3.2-.4.3-.4.4-.3.2-.4.3-.4v-.4l.4-.3.2-.5.3-.4v-.3l.3-.4.2-.4.2-.6.2-.4v-.5l.3-.4.2-.4.2-.5v-.4l.3-.5v-.4l.3-.5zm1 .4l-1-.3v-.2h.8v.2h.2v.4z"/>
+      <path fill="#edb92e" d="M406 317.8c-16.7 1.8-16 12.6-.4 28 3 3 4 3 4.6-.2 1.2-5.3 7-8.5 10.2-4.4 2 2.7 1.6 4.3 8.6 3.3 9 7.5 16.2 12.8 4.5 12.3-5-.2-9 2.8-15.7 2.5 2 4 2.3 4.3 3.4 4.6 6.5 1.2 13.3-2.8 19.8-1.6 14.3 2.6-23-38.6-22.4-40.3 1-4-9-11.5-12.7-4.2z"/>
+      <path fill="#21231e" d="M406 345.5l-.7.7-1.4-1.5-1.5-1.4-1.2-1.4-1.2-1.4-1-1.3-1-1.3-.8-1.3-.8-1.2-.8-1.2-.6-1.2-.5-1-.5-1.2-.3-1-.3-1v-1l-.2-1v-1l.2-1 .2-.8.4-.8.4-.8.6-.7.6-.7.8-.6.8-.6 1-.5 1-.5 1-.4 1.4-.4 1.3-.3 1.3-.2 1.6-.2v1l-1.5.2-1.4.2-1.2.3-1.2.3-1 .4-1 .5-1 .4-.6.5-.7.7-.6.6-.4.6-.4.6-.4.7-.2.8-.2 1v1.7l.2.8.2 1 .4 1 .4 1 .5 1 .5 1.3.7 1 .8 1.3 1 1.4.8 1.2 1 1.3 1.2 1.3 1.2 1.3 1.4 1.4 1.4 1.5zm3.8 0l1 .2v.3l-.2.3v.5l-.2.2v.2l-.2.2v.2l-.2.2-.3.3v.2h-.3l-.2.2H408l-.2-.2h-.2l-.2-.2h-.2l-.2-.3-.2-.2h-.2l-.3-.4h-.2l-.2-.3-.3-.3-.2-.2.7-.7.2.2.3.3.2.2.3.2.2.2.2.2h.2l.2.2.2.2h.3v.2h.6l.2-.2v-.2l.2-.2v-.2l.2-.4v-.4l.2-.3zm11-4.6l-.8.5-.3-.4h-.3l-.3-.4-.2-.2-.3-.2h-.3l-.3-.2h-.5l-.3-.2h-1.5l-.3.2-.4.2h-.2l-.4.3-.3.2-.2.2-.4.2-.3.2-.2.3-.3.3-.2.4-.3.3-.2.4-.3.5-.2.4-.2.3v.5l-.2.4v.5l-1-.2v-.5l.2-.5.2-.5.2-.5.3-.5.2-.4.2-.4.3-.4.3-.4.3-.4.4-.3.4-.3.4-.3.4-.2.3-.2.3-.2.5-.2h.4l.4-.2h.4l.4-.2h1l.4.2h.6l.4.3.4.3.3.2.4.3.4.5.4.4zm8.6 3.2l-.7.7h.4-.5l-.6.2h-4.5l-.2-.2h-.3l-.2-.2h-.2l-.2-.2-.2-.2-.2-.2h-.2v-.3l-.3-.3v-.2l-.3-.2v-.2h-.3l-.2-.3-.2-.3v-.2l-.3-.2v-.3l-.3-.2.8-.6h.2v.4l.3.2.2.3.3.3v.2l.2.2.2.2.2.2.2.2.2.2h.2v.2h.3l.2.2h.2l.2.2h5.4zm-.4 0l.2-.2.2.2h-.4zm4.5 13v-1h4.1l.5-.2h.4l.3-.3h.2v-1l-.2-.3-.2-.4-.3-.5-.4-.4-.5-.4-.4-.4-.4-.5-.6-.5-.6-.6-.6-.6-.7-.5-.6-.6-.7-.7-.7-.7-.8-.6-.8-.7-.8-.7-1-.7.8-.8.8.7.8.5.8.7.8.7.7.5.8.6.8.7.7.6.6.6.7.4.6.6.5.5.5.5.4.5.4.4.4.4.3.4.2.4v2.3l-.4.3-.3.2-.4.3-.6.2h-.6l-.7.2h-3.6zm-15.2 2l-1 .4.5-.8h3.4l.6-.2h.5l.5-.2h.5l.5-.2h.5l.4-.2h.5l.5-.2.4-.2h.6l.4-.2.5-.2h.4l.4-.2h.5l.3-.2h.5l.4-.2h.5l.5-.2h2.6v1H431l-.4.2h-.9l-.4.3h-.8l-.4.2h-.5l-.4.3h-.6l-.5.2h-.5l-.5.3h-.5l-.5.2h-.5l-.5.2h-.5l-.6.2h-.6l-.6.2h-3l.5-.7zm-1 .4l-.3-.8h.8l-.4.8zm4 4l-.2.8h-.4v-.2h-.2l-.2-.2h-.2v-.2h-.2v-.2h-.2v-.2l-.2-.3-.2-.2-.3-.3-.2-.2v-.2h-.2v-.4l-.3-.2v-.3h-.3v-.4l-.3-.3v-.4l-.3-.4 1-.5v.5l.2.3.2.3v.4l.3.3.2.2v.2l.3.2v.2l.2.2v.2h.2v.3l.2.2v.2l.2.2h.2v.2h.4v.2h.4zm-.2.8zm20-2.5v1l-.7-.2h-4.7l-.6.2h-.7l-.6.2h-.7l-.6.2-.6.2h-.6l-.6.2h-.7l-.7.3-.6.2h-.6l-.6.2h-.6l-.6.2h-4.6l-.6-.2.3-1 .6.2h4.8l.6-.2h.6l.5-.2h.6l.7-.2.7-.2h.6l.6-.2.6-.2h.7l.5-.2h.6l.7-.2h.7l.6-.2h4.9zm-23-40l1 .3.3.3.5.7.6.8.8 1.2 1 1.2 1 1.3 1 1.5 1.3 1.5 1.3 1.7 1.4 1.8 1.4 1.8 1.5 1.8 1.5 2 1.5 1.8 1.4 2 1.4 2 1.3 1.7 1.3 2 1.2 1.7 1 1.7 1 1.6.8 1.5.6 1.4.4 1.3.3 1.2v2l-.6.7-.8.5H441v-1h2l.4-.3.3-.4V360l-.3-1.2-.4-1.2-.6-1.3-.8-1.5-1-1.6-1-1.7-1-1.8-1.3-1.8-1.4-2-1.4-2-1.4-1.8-1.5-2-1.4-1.8-1.5-1.8-1.4-1.8-1.3-1.8-1.3-1.6-1.2-1.6-1-1.5-1.2-1.3-1-1.2-.7-1-.6-1-.5-.7-.3-.4v-.6zm-12-3.7v-1l-.5.2.4-.6.3-.7.5-.6.5-.4.5-.3.6-.3.5-.2.5-.2h2.6l.6.2.6.2.5.3.6.2.6.3.4.4.5.2.4.4.4.4.5.5.4.4.3.4.3.4.3.5.2.5.2.5v.5l.2.5v1l-1-.3v-1l-.2-.4v-.4l-.3-.4-.2-.4-.3-.4-.3-.4-.5-.4-.3-.4-.5-.4-.4-.4-.5-.3-.4-.3-.5-.3h-.7l-.5-.3-.5-.2h-.5l-.6-.2h-2l-.4.3-.5.2-.4.3-.5.5-.4.4-.3.4-.3.6-.4.3zm.4-.3l-.2.2h-.2l.4-.2zm-.5-.2v.5-.5zm.4.2l-.2.2h-.2l.4-.2z"/>
+      <path fill="#21231e" d="M407 317.2l-1.3.4v-.6h.2v-.2h.8v.2h.2v.2zm7.6 10.6l-.8 1-.4-.4-.3-.4-.3-.3-.3-.3-.4-.3-.3-.2-.3-.4-.3-.3-.2-.2-.3-.4-.3-.3-.3-.2-.4-.4-.3-.3-.2-.2-.2-.4-.2-.3-.3-.3-.2-.3v-.4l-.4-.3-.2-.4-.2-.4-.2-.4-.2-.4v-.4l-.3-.3-.2-.4v-.3l-.3-.3v-.4l-.3-.4 1.2-.4v.7l.3.3v.3l.3.4v.3l.3.4v.3l.3.4.2.3.2.3.2.4v.3l.3.3.2.4.3.3.2.3.3.4.2.3.3.3.3.3.4.4.2.3.3.3.2.3.3.3.4.2.2.3.3.3.4.4.2.3.4.3zm-.8 1l.8-1v.2h.2v.7h-.4v.2h-.7zm-9.5-4.6c.8 0 1.3.7 1.2 1.5s-.8 1.3-1.5 1.2c-.8-.2-1.3-.8-1.2-1.6s.8-1.3 1.5-1.2zm-45.9 38.4h.2v-.2h.4v.2h.2v.2l.2.2v.4h-.2l-.8-.8zm-22.7 56l.2-1V416l.4-1.5.3-1.5.4-1.7.6-1.8.5-2 .7-2 .6-2 .6-2 .6-2.2.8-2.2.7-2.2 1-2 .7-2.3 1-2.3.7-2.2 1-2.2.8-2 1-2.2.8-2 1-2 .8-2 1-1.7.8-1.5 1-1.6.7-1.5 1-1.3.7-1.2.8-1 .8-.8.8-.6.7 1-.6.5-.7.8-.7 1-.8 1-1 1.3-.7 1.5-1 1.5-.7 1.7-1 1.7-.8 2-1 1.8-.8 2-1 2-.8 2.3-1 2-.7 2.3-1 2.3-.7 2.3-.8 2.2-.7 2.2-.8 2.2-.6 2-.6 2-.6 2.2-.6 2-.5 1.8-.4 1.8-.4 1.6-.5 1.6-.2 1.4-.2 1.3v1H336zm5.6 80.5l-.7-2-.7-2-.7-2.2-.6-2.2-.6-2.2-.4-2.4-.4-2.3-.5-2.4-.4-2.5-.3-2.4-.3-2.5-.3-2.7-.2-2.6-.3-2.6-.2-2.5-.2-2.6v-3l-.2-2.7v-18.5l.3-2.7v-2.5l.2-2.6v-2.7l.3-2.6.2-2.5.2-2.5h1.2l-.3 2.6-.2 2.5-.2 2.6-.2 2.6v2.6l-.2 2.6v2.6l-.2 2.7v18.8l.2 2.6v2.6l.3 2.6.3 2.6.3 2.6.3 2.5.2 2.5.3 2.5.4 2.4.3 2.5.5 2.3.5 2.3.5 2.3.6 2.2.6 2 .7 2.2.7 2-1 .4zm1-.4v.8h-.8v-.2l1-.6z"/>
+    </g>
+    <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#e"/>
+    <path fill="#21231e" d="M473 398.4h-.2v.5h-.2v.8l.2.7v1.6l.2.8.2.8v.7l.3.8v.8l.3.7.2.8.3.7.2.7.2.7.3.7.3.8.3.7.3.7.2.7.3.6.4.6.2.7.4.5.4.7.4.7.4.5.5.6.4.8.5.6.4.6.5.6.6.6.2.2h.8v-.2l.6-.6.5-.6.5-.6.4-.6.5-.7.5-.5.4-.6.3-.8.4-.6.3-.7.4-.8.4-.6.3-.7.4-.8.3-.7.3-.7.3-.7.3-.6.2-.7.3-.7.3-.7.2-.8v-.7l.3-.7.2-.7v-.7l.3-.8v-1.4l.2-.8v-2.1h-1v.4l-.2 1v1.4l-.2.7v.7l-.2.7-.2.7v.8l-.3.7-.2.7-.2.7v.6l-.3.7-.3.7-.2.7-.3.7-.4.6-.2.7-.4.7-.3.6-.3.7-.4.6-.4.7-.3.6-.4.6-.5.6-.4.6-.4.7-.4.7-.4.6-.5.6h-.2l-.5-.7-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.4-.6-.3-.7-.4-.6-.4-.7-.3-.6-.3-.7-.4-.7-.2-.6-.3-.7-.2-.7-.2-.7-.2-.7-.2-.7-.2-.8-.2-.7-.2-.7v-.7l-.3-.6v-.8l-.2-.7v-2.3l-.2-.8v-.4h-.2v-.2h-.5z"/>
+    <path fill="#c6363c" d="M549.2 422v108.6a72 72 0 01-19.7 49.8 65 65 0 01-94.7.1 72.9 72.9 0 01-19.7-49.8V422h134.2z"/>
+    <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 -90)" xlink:href="#f"/>
+    <path fill="#fff" stroke="#21231e" d="M549.2 488.6v28h-53v83a63.8 63.8 0 01-14 1.5 59 59 0 01-14-1.5v-83h-53v-28h53V422h28v66.6h53z"/>
+    <use width="1350" height="900" transform="translate(0 -90)" xlink:href="#f"/>
+    <path id="f" fill="#fff" stroke="#21231e" d="M459 567.3V528c-8.4-2.3-29.3-10.6-30.3 7.6-.5 8.4 10.4 14 13.3 6.5 1.4-3.4 0-6-2-6.7-2.4-.8-4.6 1-4 3.6-8.8-4.7 8-14.6 15.5-1.7 2.2 3.7-3.7 7.6-3.7 10.4 0 2.7 5.8 7 3.7 10.3-7.7 12.8-24.3 3-15.5-1.6-.6 2.7 1.6 4.5 4 3.6 2-.8 3.4-3.3 2-6.8-3-7.5-13.8-2-13.3 6.5 1 18.2 22 10 30.4 7.6z"/>
+    <use width="1350" height="900" transform="matrix(-1 0 0 1 964.3 0)" xlink:href="#f"/>
+    <path fill="#21231e" d="M414 421v113.3l.2 1.7v2l.4 1.7.2 1.8.3 1.7.4 1.8.3 1.8.4 1.7.6 1.7.5 1.7.6 1.5.6 1.7.5 1.6.7 1.6.7 1.6.7 1.6.8 1.6.8 1.5.8 1.5 1 1.5.8 1.5 1 1.4.8 1.4 1 1.4 1 1.4 1 1.3 1 1.5 1.2 1.2 1 1.3 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1 1.3 1.3 1 1 1.4 1 1.3 1 1.4 1 1.5 1 1.4 1 1.3.8 1.4.8 1.5.8 1.4.8 1.6.7 1.5.6 1.5.7 1.5.6 1.6.5 1.6.5 1.5.5 1.6.5 1.8.4 1.6.4 1.7.4 1.8.2 1.7.3 1.7.2h1.7l1.6.2h8.9l1.7-.3 1.8-.3 1.7-.3 1.7-.2 1.7-.4 1.5-.4 1.7-.4 1.6-.5 1.6-.5 1.6-.5 1.5-.6 1.6-.7 1.6-.7 1.6-.7 1.5-.8 1.4-.8 1.6-.8 1.4-1 1.5-.7 1.4-1 1.2-1 1.4-1 1.3-1 1.2-1 1.3-1 1.2-1.3 1.2-1 1-1.3 1.3-1.2 1.2-1.2 1-1.3 1.2-1.2 1-1.4 1-1.2 1-1.4 1-1.4 1-1.4 1-1.4.7-1.5 1-1.5.7-1.5.8-1.5.8-1.6.7-1.6.6-1.6.6-1.6.6-1.6.5-1.7.5-1.6.5-1.8.4-1.7.6-1.7.3-1.8.2-1.8.3-1.7.3-1.8v-.9l.3-2 .2-1.7V421H414zm2.3 2.2H548V536l-.3 1.6-.2 1.8-.2 1.7-.3 1.8-.3 1.7-.4 1.7-.3 1.7-.5 1.5-.4 1.7-.4 1.6-.5 1.6-.5 1.6-.6 1.5-.8 1.6-.7 1.6-.7 1.5-.7 1.6-.7 1.4-.8 1.5-.8 1.4-1 1.3-.8 1.4-1 1.3-1 1.3-1 1.3-1 1.3-1 1.2-1.2 1.2-1 1.2-1.2 1-1.2 1.3-1.2 1-1.2 1-1.2 1-1.3 1-1.2 1-1.4 1-1.4 1-1.3.8-1.4 1-1.5.7-1.4.8-1.3.7-1.5.8-1.5.6-1.4.7-1.5.7-1.6.5-1.5.6-1.5.5-1.6.4-1.6.4-1.6.5-1.6.3-1.6.3-1.7.4H489l-1.8.3h-1.7l-1.6.2h-3.6l-1.6-.2H477l-1.6-.3h-1.6l-1.7-.4-1.5-.2-1.6-.3-1.7-.4-1.6-.3-1.6-.4-1.4-.5-1.6-.6-1.5-.5-1.5-.6-1.5-.6-1.4-.6-1.4-.8-1.4-.7-1.4-.8-1.4-.8-1.4-1-1.3-.7-1.4-1-1.3-1-1.2-1-1.3-1-1.2-1-1.2-1-1-1-1.3-1.3-1-1-1.2-1.3-1-1.2-1-1.3-1.2-1.4-1-1.3-1-1.3-1-1.3-.8-1.4-.8-1.4-1-1.5-.7-1.5-.8-1.4-.7-1.5-.8-1.4-.6-1.5-.6-1.5-.6-1.5-.5-1.6-.6-1.6-.5-1.6-.5-1.7-.4-1.6-.4-1.8-.4-1.7-.3-1.7-.3-1.7-.2-1.6-.2-1.8-.2-1.7v-5.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ru.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ru.svg
new file mode 100644
index 0000000..f56fddb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ru.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ru" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#0039a6" d="M0 160h640v320H0z"/>
+    <path fill="#d52b1e" d="M0 320h640v160H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rw.svg
new file mode 100644
index 0000000..afed4e3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/rw.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-rw" viewBox="0 0 640 480">
+  <path fill="#20603d" d="M0 0h640v480H0z"/>
+  <path fill="#fad201" d="M0 0h640v360H0z"/>
+  <path fill="#00a1de" d="M0 0h640v240H0z"/>
+  <g transform="translate(511 125.4) scale(.66667)">
+    <g id="b">
+      <path id="a" fill="#e5be01" d="M116.1 0L35.7 4.7l76.4 25.4-78.8-16.3L100.6 58l-72-36.2L82 82.1 21.9 28.6l36.2 72-44.3-67.3L30 112 4.7 35.7 0 116.1-1-1z"/>
+      <use width="100%" height="100%" transform="scale(1 -1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#b"/>
+    <circle r="34.3" fill="#e5be01" stroke="#00a1de" stroke-width="3.4"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sa.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sa.svg
new file mode 100644
index 0000000..c9e8cca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sa.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sa" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sa-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#sa-a)" transform="translate(80) scale(.9375)">
+    <path fill="#199d00" d="M-128 0h768v512h-768z"/>
+    <path fill="#fff" d="M65.5 145.1c-.8 12-2 33 8.3 35.2 12.3 1.2 5.5-20.8 10-24.8.8-2 2.3-2 2.4.5v18.7c0 6 4 7.8 7 9 3.2-.2 5.4 0 6.6 3l1.6 32.3s7.4 2.2 7.8-18.1c.3-12-2.4-21.9-.8-24.2 0-2.3 3-2.4 5-1.3 3.2 2.2 4.6 5 9.6 4 7.6-2.2 12.2-5.9 12.3-11.7a47 47 0 00-3.5-16.6c.4-1-1.4-3.7-1-4.7 1.3 2.2 3.4 2 3.8 0-1.3-4.2-3.3-8.3-6.5-10-2.7-2.4-6.7-2-8 3-.8 5.7 2 12.4 6.1 18 .9 2.1 2.1 5.7 1.6 8.9-2.2 1.3-4.4.7-6.3-1.2 0 0-6-4.5-6-5.6 1.6-10.2.3-11.4-.6-14.3-.6-3.9-2.5-5.2-4-7.8-1.5-1.6-3.5-1.6-4.5 0-2.7 4.6-1.4 14.5.5 19 1.4 4.1 3.5 6.7 2.5 6.7-.8 2.3-2.5 1.7-3.8-1a66.6 66.6 0 01-2.1-17.4c-.5-4.6-1.1-14.4-4.2-17-1.8-2.4-4.5-1.2-5.5 1a82.4 82.4 0 00.3 13.4c2 7.4 2.7 14 3.7 21.5.3 10.1-5.8 4.4-5.5-.7a45 45 0 00-.3-19.4c-1-2.6-2.1-3.2-4.6-2.8-1.9 0-6.8 5.3-8.2 14.3 0 0-1.2 4.6-1.7 8.7-.7 4.6-3.7 8-5.9-.6-1.8-6.3-3-21.6-6-18z"/>
+    <path fill="#fff" d="M99 194.2l-32 15.4c.3-7.3 15.1-20.4 25.3-20.5 6.5.1 4.9 2.5 6.6 5.1z"/>
+    <path fill="#fff" d="M93.3 204.2c-16.8 43.5 39.5 49.6 45.8 1.8.6-2 3-3.9 3.4-.7-1.3 43.3-43.6 46.2-50.8 32.6a41.9 41.9 0 01-2.5-14.6c-1-8.5-5.5-5.2-6.2 3.2-.7 4.7-.5 6-.5 10.5 2.2 34.2 56.7 19.5 65.6-8.7 4.7-15.6-.8-27.1 1.7-27.1 5.4 5.8 13 .8 14.7-1.2.7-1 2.5-1.7 3.7-.4 4.2 3 11.6 1.6 13.2-3.7.9-5.3 1.6-10.7 1.8-16.2-3.5 1-6 1.7-6.3 3.2l-.7 4.6c-.3 1.5-3.2 1.5-3.4-.4-1.3-6-6.7-6.7-10 2.5-2.1 1.8-6.1 2.2-6.5-.5.5-6.2-2-7-7-4.1l-4.8-36.2c2 0 4 1.5 5.9-.9-2-6.5-6.5-19.7-9-20.7-1.1-1.4-2.1-.5-3.7-.1-2.6.8-5 3-4.2 7.4 3 18.8 5 33.1 8.1 52 .5 2.1-1.3 5-3.7 4.7-4-2.7-5-8.2-12-8-5 0-10.6 5.5-11.3 10.7-.9 4.2-1.2 8.7 0 12.3 3.5 4.2 7.7 3.8 11.4 2.9 3-1.3 5.5-4.3 6.6-3.6.7.9.1 10.9-14.3 18.5-8.7 4-15.7 4.8-19.4-2.3-2.3-4.5.2-21.4-5.6-17.5z"/>
+    <path fill="#fff" d="M165 160c3.3-1.2 19.3-19.6 19.3-19.6l-2.4-2c-.9-.7-.8-1.5 0-2.2 4-2.4 2.7-7.4.7-9.8a9.7 9.7 0 00-8.7.1c-2.8 2.7-3.4 7-1.2 9.6 2.1 1 4.2 3.2 2.8 4.4-6.6 7-24.5 19.1-22.4 19.5.4.6 11.5.6 11.8 0zm-97 65c-6 9.6-6.5 23.9-3.2 28.2 1.8 2 4.7 2.9 6.8 2.2 3.8-1.6 5.5-9.3 4.6-12-1.3-2-2.3-2.3-3.6-.7-2.6 5.4-3.7 1.7-4-1.3a70 70 0 01.8-15.2c.7-4.2 0-3-1.4-1.2zm257.1-15.3c-5.8-12.6-13.9-25-16.4-29.7a557.6 557.6 0 00-24.8-36c-6.2-7.4 10.2 3.1-2-11.7l-8.9-7.5c-2-1.4-6.8-4-7.6.2-.4 3.8-.2 5.8.4 8.9.5 2 3.5 5.5 5 7.5a565 565 0 0153.8 86.5c2.6-1.3 2-16.1.5-18.2z"/>
+    <path fill="#fff" d="M299.6 251.5c-1.2 1.3 2.8 6.8 8 6.8 8.6-1 16.2-5.8 23.2-18.6a33 33 0 005.3-14.2 317 317 0 00-5.8-72.4c-.3-2 0-4.4.2-5 .6-.7 2.5 0 3.5-1.7 1.5-1.5-4-14-7-18.7-1-2.2-1.5-3.6-3.3.2a27 27 0 00-3 13.6c4.1 28.5 5.4 53.4 8 81.9.3 2.8-.1 6.8-2 8.4a80.2 80.2 0 01-27.1 19.7zm116.5-.1c-6.2 3.6-6.2 7.7-1.2 7.8 8.6-1 18.8-1.7 25.8-12.3a41 41 0 004.2-16 303 303 0 00-4.7-71.4c-.2-2-1.1-6.7-.8-7.3.6-1.4 3.4.1 4.4-1.5 1.4-1.5-7.3-12.7-10.4-17.5-1-2.2-1.4-3.6-3.3.2a22.3 22.3 0 00-1.8 13.6c4.6 31 8 54.2 8.7 81.6-.4 2.6-.5 4-1.7 7.3-2.7 3.4-5.7 7.8-8.5 9.9-2.8 2-8.8 4-10.7 5.6z"/>
+    <path fill="#fff" d="M420.7 223.7c0-7.3.1-13.5-.1-19a34 34 0 00-3-13.5c-1.8-4.1-.7-7.4-1.6-11.8-.8-4.4-.6-11-1.8-16.1-.4-2-1.4-8.5-1.1-9.2.5-1.4 2.4 0 3.4-1.6 1.4-1.5-5-18-8.2-22.7-1.1-2.1-3.3-1.4-5.8 2-2.5 2.3-1.6 7.4-.6 12.3 6.1 32.3 10.8 61.6 9.8 92.3-.4 2.6 9-7.8 9-12.7zm-45.7-40c-3.9-.2-12-7.7-14.4-12a8 8 0 01.4-6.5c1.5-1 3.7-2 5.4-1 0 0 1.7 2.4 1.4 2.7 2 1 3 .5 3.2-.4.1-1.5-.6-2.4-.6-4 .9-4.6 6-5.3 8-2.4 1.4 1.8 2 5.5 2.1 8 0 1.3-2-.2-3.3 0-1.1.4-1.4 1.8-1.5 3-.2 3.3-.6 8.6-.7 12.5zm-71.8 48c1-9.8-.4-27.3-.5-33.1A477 477 0 00299 154c-1.2-8.4 3.4.9 2.8-4-1.5-8.3-6.1-14-11.6-21.5-1.7-2.5-1.7-3-4.4.6-3 6.7-.4 11.4.4 16.7 3.9 17.2 6.2 33 7.3 48.7a393.4 393.4 0 01.4 49c3 .1 7.6-4.7 9.3-11.8z"/>
+    <path fill="#fff" d="M434 216c-6.9-11.6-17.2-24-20-28.7a658 658 0 00-29.2-37.8c-8.5-9 4-1.5-1.6-8.5-4.7-5.1-6-6.8-10.1-9.9-2-1.3-3.2-3.8-4 .5a83 83 0 00-.2 11.2c0 1.7 1.8 5 3.4 7 20.7 25.5 43.4 51.5 61.6 84.2 2.6-1.3 1.7-16 0-18z"/>
+    <path fill="#1ba400" d="M122.6 194.7c-.5.9-1.6 2-1.2 3.1.7 1 1.4 1.3 2.6 1.3 1.1 0 2.7.3 3-.3.6-.7 1-2 .6-3.3-1.2-3-4.4-1.8-5-.8z"/>
+    <path fill="#fff" d="M354.2 362.5c9.2.4 15.2.5 23.3 1.4l9.6-1c10.6-1 11 15.1 11 15.1 0 9.5-3.7 10-8.4 11-2.7.4-4-1.6-5.5-3.6a14 14 0 01-7 .4c-3.9-.2-7.7-.2-11.5-.5-4-.3-6.2.5-10.3.1-.8 1.3-2 3.1-4.4 2.6-2-.3-4.5-6-3.8-10.5 1.5-3.2 1-2.1 1-3.5-37.6-1-75.5-2.7-112.3-2.2-28.8.1-57.2 1.3-85.7 2.5-15.2-.2-26.8-2.6-34.8-14.3.8 0 38.8 2.1 49.9 1.4 20.5-.2 39.3-1.9 60.2-2.5 41.2.7 82.1.7 123.3 3.6-4-2.7-4-9 2-10.6.5-.4.8 3.1 1.7 3 4.9-.3 2.7 6.3 1.7 7.6zM188.6 135.3c-6.2 17.8 3.6 37.4 10.4 35.5 5 2 8-7.4 10-17.6 1.5-2.9 2.5-3.2 3.2-1.7-.2 13.6 1 16.7 4.5 20.8 7.8 6 14.3.8 14.8.3l6-6.1c1.4-1.5 3.2-1.5 5.1-.3 1.9 1.7 1.6 4.6 5.6 6.6 3.4 1.4 10.5.4 12.2-2.5 2.2-3.9 2.8-5.2 3.8-6.6 1.6-2.1 4.3-1.2 4.3-.5-.3 1.2-1.9 2.3-.8 4.5 2 1.4 2.4.5 3.5.2 4-2 7-10.6 7-10.6.1-3.2-1.7-3-2.9-2.2l-3.1 2.1c-2 .3-5.7 1.6-7.6-1.3-1.9-3.4-1.9-8.3-3.3-11.8 0-.2-2.6-5.5-.2-5.8 1.2.2 3.7.9 4.1-1.2 1.2-2.1-2.6-8-5.3-11-2.3-2.5-5.5-2.8-8.6-.2-2.2 2-1.9 4.2-2.3 6.3a9.8 9.8 0 002 8.7c2.2 4.2 6.1 9.7 4.8 17.5 0 0-2.3 3.6-6.3 3.1-1.7-.3-4.4-1-5.8-11.8-1.1-8 .2-19.4-3.2-24.7-1.3-3.3-2.2-6.4-5.2-.9-.8 2.2-4.3 5.5-1.8 12.2a36 36 0 012 19c-1.5 2.2-1.8 2.9-3.7 5-2.6 3-5.5 2.2-7.7 1.1-2-1.3-3.6-2-4.6-6.5.2-7 .6-18.5-.7-20.9-1.9-3.8-5-2.4-6.3-1.2a47.7 47.7 0 00-11.5 23.5c-1.8 5.8-3.7 4.1-5 1.8-3.2-3-3.5-26.7-7.4-22.8z"/>
+    <path fill="#fff" d="M207.4 174.1c2.9-2 1.6-3.4 5.8.8a72 72 0 019.2 31.3c-.2 2.6 1.6 4.2 2.5 3.6.4-6 15.1-14.4 28.6-15.6 2-.5 1-4.4 1.3-6.4-.8-7.5 4.2-14.3 11.2-14.8 9.6 1.4 12.8 6.5 13 14.2-1.1 15-16.7 17.5-25.4 18.7-1.3.5-1.9 1.1 0 1.8l36.6.2 1.9 1c.2 1-.6.2-2 2.6a29.5 29.5 0 00-3.7 11.5c-10.9 3.6-22.2 5-33.6 6.5-4 2-6 4.7-5.2 7.7 1.4 3.3 10.2 6.7 10.2 6.8 1.7 1 3.6 3.5-.5 8.6-17.8-.8-31.7-8.4-36.5-19.1-1.4-1.1-3 0-4 1.4-7 9-13.8 17-25.7 21.4-7 1.8-14.3-1.1-17.7-5.7-2.3-2.7-2.2-5.6-3-6.2-3.9 1.7-36.9 15.7-32.7 9.1 8-8.5 22-14.9 34.2-23.3.9-2.9 2.5-12.5 7.3-15.6.3 0-.7 5.6-.6 8 0 2-.2 2.7.2 2.2.9-.5 15.7-12.2 17-15.8 1.4-2 .3-7.2.3-7.4-2.8-7.2-6.7-7.8-8.1-11.4-1.3-4.7-.7-10.1 2-11.7 2.4-2.1 5.2-1.9 7.9.5 3 2.7 5.6 8 6.4 11.9-.5 1.5-4-1-5-.3a16 16 0 013.7 7.8c2 8.2 1.4 11.4-.6 16.7-6.6 13.9-15 18-22.4 23.2-.2 0-.3 3.5 2.4 5.4 1 1 4.9 1.5 9.4 0a54.5 54.5 0 0022.3-23.3 51 51 0 00-2.4-22.2c-2.9-6.7-6.3-16.2-6.3-16.4-.1-4.2.2-5.6 2-7.7zm-95.8-38.6c4.2 2 12.2 1.1 11.8-5.7l-.2-3.1c-.8-2-3.2-1.5-3.7.5-.2.7.3 1.8-.3 2.1-.4.4-1.7.2-1.7-1.7 0-.6-.4-1.2-.7-1.6-.2-.2-.4-.2-.9-.2-.6 0-.6.1-.9.6-.1.5-.3 1-.3 1.6 0 .7-.4.9-.8 1-.6 0-.5 0-1-.2-.2-.3-.5-.4-.5-1l-.3-1.6c-.2-.3-.6-.5-1-.6-2.3 0-2.5 2.7-2.3 3.7-.2.2-.3 4.9 2.8 6.2z"/>
+    <path fill="#fff" d="M235.1 187.7c4.2 2 14.3.9 11.8-5.6l-.2-3.2c-.9-2-3.2-1.5-3.7.6-.2.6.3 1.7-.4 2-.3.4-1.7.2-1.6-1.6 0-.6-.4-1.3-.7-1.7-.3-.1-.4-.2-1-.2-.5 0-.5.2-.8.7-.2.5-.3 1-.3 1.6-.1.6-.4.8-.9 1-.5 0-.4 0-.8-.3-.3-.3-.6-.4-.6-.9l-.3-1.6c-.2-.3-.6-.5-1-.6-2.3 0-2.5 2.6-2.4 3.6-.1.2-.2 5 3 6.2zm72-21.6c4.2 2 12.1 1.1 11.8-5.6l-.2-3.2c-.9-2-3.2-1.5-3.7.5-.2.7.3 1.8-.4 2.2-.3.3-1.7.1-1.6-1.8 0-.6-.4-1.2-.7-1.6-.3-.2-.4-.2-1-.2-.5 0-.5.2-.8.7l-.3 1.5c-.1.7-.4 1-.9 1s-.4 0-.8-.2c-.3-.3-.6-.4-.6-.9s-.1-1.3-.3-1.7c-.2-.3-.6-.4-1-.5-2.3 0-2.5 2.6-2.4 3.6-.1.2-.2 4.9 3 6.2zm37.3 54.3c-7.3 8.3-4.1 22-2.4 25 2.4 4.8 4.3 7.9 9 10.3 4.3 3.1 7.7 1.2 9.5-1 4.3-4.5 4.4-16 6.4-18.2 1.4-4.2 5-3.5 6.7-1.6a16.5 16.5 0 006.2 5.3c4 3.5 8.8 4.2 13.6 1 3.2-1.9 5.3-4.2 7.2-8.9 2-5.6 1-31.6.5-47l-4.2-21.5c0-.2-.5-10.2-1-12.5 0-1-.3-1.3.7-1.2 1.1 1 1.2 1 2 1.3 1 .2 2-1.7 1.3-3.3l-10-18.6c-.8-.8-1.9-1.6-3.2.2a7.3 7.3 0 00-2.4 5.5c.3 4.4 1 8.9 1.3 13.3l4 22.6c1.3 16 1.6 29.2 2.9 45.3-.2 6.8-2.3 12.7-4.3 13.6 0 0-3 1.7-5-.2-1.5-.6-7.4-9.9-7.4-9.9-3-2.7-5-2-7.1 0-6 5.8-8.6 16.4-12.7 23.8-1 1.7-4 3-7.2-.1-8.2-11.3-3.4-27.3-4.4-23.2zM309 126.7c3.8 1.5 6.4 9.2 5.6 13-.8 4.5-2.8 9.5-4.2 8.9-1.6-.6 1-4.6-.5-8.8-.8-2.8-6-7.8-5.4-9.2-1-3.1 2.2-4.5 4.5-4z"/>
+    <path fill="#fff" d="M356.6 225c.7-9.2-.6-14.8-.8-20.2s-6.1-46.6-7.3-50.6c-1.5-7.8 5.7-1 4.9-5.6-2.5-5.6-8.6-13.9-10.5-18.8-1.2-2-.7-4-3.3-.5a42.3 42.3 0 00-2.3 19.2c6.2 32.3 12.5 59.1 11.5 89.8 3 0 6.3-6.7 7.8-13.3zm64.4-85.3c3.5 1.7 5.5 11.3 5.1 14-.7 5-2.5 10.4-3.8 9.7-1.5-.6.3-7.4-.4-9.5-.8-3-5.5-8.4-5-10-1-3.4 2-4.8 4.1-4.2zm-255.7 67.9c3.3 1.3 5.3 8.3 5 10.3-.8 3.7-2.5 7.7-3.8 7.1-1.3-.4.3-5.4-.3-7-.3-3.7-4.9-5.7-4.8-7.3-.8-3 2-3.5 4-3.1z"/>
+    <path fill="#1b9d00" d="M244.9 218.2c4.2.2 6.3 3.6 2.4 5-4 1.3-7.7 2.4-7.8 8 1.5 8-2 5.2-4 4.2-2.4-1.8-9.2-6-10.2-15-.1-2.1 1.6-4 4.3-4 4 1.1 10 1.2 15.3 1.8z"/>
+    <path fill="#fff" d="M77.4 124.4c4.8 1.4 5.1 8.6 4.8 10.7-.7 3.8-2.4 7.9-3.6 7.4-1.4-.5 0-5.7-.7-7.3-.7-2.2-4.8-6.4-4.4-7.6-.9-2.5 2-3.7 3.9-3.2zm95.9 33.6c-3.8 2-5.2 8-2.9 11.6 2.2 3 5.6 1.9 6 1.9 3.7.4 5.9-6.9 5.9-6.9s.1-2-4.2 1.9c-1.9.3-2-.4-2.5-1.4a9 9 0 01.5-5.7c.7-1.8-.7-2.6-2.8-1.4zm28-36.4c-2 1.3-5.7 5.2-5.8 9.6-.1 2.5-.6 2.5 1 4 1.3 1.8 2.4 1.7 4.8.4a5.1 5.1 0 002.3-3.4c.6-2.8-3 1.4-3.4-1.8-.8-3 1.5-4.2 3.7-7 0-2 0-3.3-2.7-1.8zm22.4 4a59.5 59.5 0 00-1.6 11.1c-.6 2.8 3 4 4.5.4 2.4-6.5 2.4-9.3 2.6-12-.7-4.3-3.6-4.2-5.5.5zm142 72.3c.4-.5 20-14.4 20-14.4 2-.7 1.5 7.2.6 7.1a77.8 77.8 0 01-20.7 14.3c-1 .7-1.9-5.3 0-7zm17.7-.2c3.5 1.7 4.9 11.8 4.5 14.5 0 5.4-3.3 9.6-4.7 9-1.4-.7.2-6.7-.5-8.8-.8-3-3.7-8.5-3.2-10.1-1-3.4 1.8-5.2 4-4.6zm-116 43.4a26 26 0 015.6-4.9c2-1 3.8.8 3.7.7.3 2-1.2 3.7-.7 6.3.4 1 .7 2.2 2.6 1.8 3.1-2.5 6-2.7 9-2.8 2.5.1 2.6 4.2 1 4.2-5.7 1.2-8.2 2.8-12.3 4.3-2 1.2-3.6-.3-3.6-.4s-1.1-1.1-.4-3.7c.2-2-.6-3.2-2.4-3-1.2.8-2.4 1.2-3-.3-.3-1-.4-1.6.5-2.2zm136.6 5.4c.8 1 1.4 2-.1 3.8l-3.7 3.2c-.6 1-1 2.8 1 3.3 3.6 1 12-4.5 12-4.6 1.4-1 1-3 .8-3-.8-.9-2.6-.3-3.8-.5-.6 0-2.5-.2-1.6-2a11.4 11.4 0 001.6-2.9c.5-1.2 0-2-2-2.7-2.1-.4-3-.2-5.3 0-1.2.2-1.6.8-1.9 2.3.1 2.3 1.5 2.2 3 3z"/>
+    <path fill="#259f00" d="M268.1 189.7c-.5 1-2.3 1-4 0s-2.7-2.6-2.1-3.5 2.3-.9 4 0 2.6 2.6 2.1 3.5zm-89-53.6c-1 .3-2.4-.6-3-2s-.3-2.6.7-2.9 2.3.7 3 2 .3 2.7-.8 3z"/>
+    <path fill="#209000" d="M355.2 375c9.4.4 18.2 0 27.5.5 1.7 1.5.5 5-.6 4.8l-7.8-.3c-.1-3-7.7-2.5-7.5.1-4.1.5-7.8-.1-12-.3-1.2-1.5-1-4.2.4-4.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sb.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sb.svg
new file mode 100644
index 0000000..b8e1f8e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sb.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sb" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sb-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#sb-a)" transform="scale(.9375)">
+    <path fill="#0000d6" d="M0 507.2L987.4 0H0v507.2z"/>
+    <path fill="#006000" d="M1024 0L27.2 512H1024V0z"/>
+    <path fill="#fc0" d="M1024 0h-54.9L0 485.4V512h54.9L1024 27.6V0z"/>
+    <path fill="#fff" d="M71.4 9.1l11.8 34.5h38.5L90.6 64.7l11.9 34.4L71.4 78 40.3 99.2l11.9-34.4-31.1-21.3h38.4zm191.1 0l11.9 34.5h38.5l-31.2 21.2 12 34.4L262.4 78l-31 21.3 11.9-34.4-31.2-21.3h38.5zm0 144.5l11.9 34.5h38.5l-31.2 21.2 12 34.4-31.2-21.3-31 21.3 11.9-34.4-31.2-21.3h38.5zm-95-71.4l11.9 34.4h38.4l-31 21.3 11.8 34.4-31-21.3-31.2 21.3 12-34.4-31.2-21.3h38.5zm-96.1 71.4l11.8 34.5h38.5l-31.1 21.2 11.9 34.4-31.1-21.3-31.1 21.3 12-34.4L21 188h38.4z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sc.svg
new file mode 100644
index 0000000..2286e14
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sc.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sc" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sc-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#sc-a)" transform="scale(.9375)">
+    <path fill="red" d="M0 0h992.1v512H0z"/>
+    <path fill="#090" d="M0 512l992.1-170.7V512H0z"/>
+    <path fill="#fff" d="M0 512l992.1-341.3v170.6L0 512z"/>
+    <path fill="#009" d="M0 512V0h330.7L0 512z"/>
+    <path fill="#ff0" d="M0 512L330.7 0h330.7L0 512z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sd.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sd.svg
new file mode 100644
index 0000000..9981494
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sd.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sd" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sd-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#sd-a)" transform="scale(.9375)">
+    <path d="M0 341.3h1024V512H0z"/>
+    <path fill="#fff" d="M0 170.6h1024v170.7H0z"/>
+    <path fill="red" d="M0 0h1024.8v170.7H0z"/>
+    <path fill="#009a00" d="M0 0v512l341.3-256L0 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/se.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/se.svg
new file mode 100644
index 0000000..e9977d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/se.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-se" viewBox="0 0 640 480">
+  <path fill="#066aa7" d="M0 0h640v480H0z"/>
+  <path fill="#fecc00" d="M0 192h640v96H0z"/>
+  <path fill="#fecc00" d="M176 0h96v480h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sg.svg
new file mode 100644
index 0000000..8931660
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sg.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sg" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sg-a">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#sg-a)">
+    <path fill="#fff" d="M-20 0h720v480H-20z"/>
+    <path fill="#df0000" d="M-20 0h720v240H-20z"/>
+    <path fill="#fff" d="M146 40.2a84.4 84.4 0 00.8 165.2 86 86 0 01-106.6-59 86 86 0 0159-106c16-4.6 30.8-4.7 46.9-.2z"/>
+    <path fill="#fff" d="M133 110l4.9 15-13-9.2-12.8 9.4 4.7-15.2-12.8-9.3 15.9-.2 5-15 5 15h15.8zm17.5 52l5 15.1-13-9.2-12.9 9.3 4.8-15.1-12.8-9.4 15.9-.1 4.9-15.1 5 15h16zm58.5-.4l4.9 15.2-13-9.3-12.8 9.3 4.7-15.1-12.8-9.3 15.9-.2 5-15 5 15h15.8zm17.4-51.6l4.9 15.1-13-9.2-12.8 9.3 4.8-15.1-12.9-9.4 16-.1 4.8-15.1 5 15h16zm-46.3-34.3l5 15.2-13-9.3-12.9 9.4 4.8-15.2-12.8-9.4 15.8-.1 5-15.1 5 15h16z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sh.svg
new file mode 100644
index 0000000..a768813
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sh.svg
@@ -0,0 +1,74 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sh" viewBox="0 0 640 480">
+  <path fill="#006" d="M640 480V0H0v480h640z"/>
+  <path fill="#fff" d="M0 73.3h76L0 26.8V0h43.5l106.4 64.8V0h59.9v64.8L316 0h44v26.8l-76.4 46.5H360v73.4h-76.4l76.4 46.6V220h-44l-106.4-64.7V220H150v-64.7L43.4 220H0v-26.7l76-46.6H0V73.3z"/>
+  <path fill="#ce1126" d="M331.7 0L211.5 73.4h28.8L360 0h-28.3zM360 220l-119.8-73.3H269l90.9 55.9V220zM120.4 73.4L0 0v17.5l91.4 55.9h29zm-.3 73.3L0 220h28.7L149 146.7h-29z"/>
+  <path fill="#ce1126" d="M0 88.6h162.6V0h35.2v88.6H360v43H197.8V220h-35.2v-88.5H0v-43z"/>
+  <path fill="#8fc5ff" stroke="#fff" stroke-width="1.1" d="M399.7 640.8c0 16.3-2.6 33.9-23.8 42.3-21.1-8.4-23.7-26-23.8-42.3h47.6z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#366cc9" stroke="#000" stroke-width="1.1" d="M375.9 683a34.3 34.3 0 0018.8-16h-2c-.6-.1-20.3-2-22.7-3-2-.7-9.8.7-13.4 2a34 34 0 0019.3 17z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#5d3100" stroke="#000" stroke-width=".1" d="M361.1 673h1.2c.3 0 .3 0 .4-.3s.4-.2.6-.1.6 0 .8-.2c.2-.2.2-.2.4 0s.3.1.5 0c.1 0 .5-.2.6-.5s.4-.4.5-.2.3.2.5.2.2.1.2.4c0 .2 0 .3.5-.1.4.4.5.2.5-.2s0-2-.2-2.1-.3-.8-.4-1.3c0-1 0-1-1-1.5 0-.3-.2-.4-1-.4.1-.1 0-.4-.2-.5s-.2-.2 0-.6c.2 0 .6 0 .7-.3.2-.2.8-.2 1.2 0s.8.2 1.5 0l1.2-.6c.5-.3.6-.4.6-.8 0-1-.3-2-.5-2.5-.3-.5-.3-1-.7-1.9-.4-.8-.4-1-.8-1.5-.2-.2-.3-.3-.3-.6a1.5 1.5 0 00-.5-1c-.8-.7-1-3-1.4-4.7-.2-1 0-3.3-.4-3.7-.7-.5-1-.4-1.5-.6-.4-.5-.5-1.4-.9-2.3-.5.1-.8.6-1.1.8s-.4.2-.4.7c0 .4-.3 1-.7 1.8s-1.3.5-2 1.6c-1.4-1.7-1.4-2.2-1.5-2.7 0-.5-.3-.6-1.1-1.3v-1.5c-.7-.5-1.1-.4-1.4 0-.3.3-.5.8-1 1-.2.4-1 1.2-1.6 2.3.6 9 2.6 18 8.7 25.2z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#ff0" stroke="#fff" stroke-width="1.1" d="M399.7 640.8c0-6.2-.3-12.2-.2-17.4a63.6 63.6 0 00-23.6-4.3c-5.3 0-15.7.8-23.6 4.3.2 5.2-.2 11.2-.2 17.4h47.6z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#cf6200" d="M394.6 297.9c1.2 1.9 3.3 5 3.5 6.8.8-1.7 1.5-2.4 1.6-3.5s1.5-3 1-4.2-.8-2 .4-1.2c1.3.9 1 2.3.8 4.4-.8 5.7-3.1 6.8-3.5 10.7 3.4 8 .9 11 4.6 19 .6.3 2.1-.3 2.6-.2 2-1.4 3.5-1 6.3-.3 2.8.5 4.3 2.5 4.3 4.3s0 2.2.6 3.2 1.7 2.7 1.5 3.9c-.3 1.2.2 1.9.6 2.4s-.2 2-.5 2.7-.2 1.9 1.2 3.6c1.4 1.8 4.6 9.1 4.6 13.4 0 4.4.3 6.4 2 7.2 1.8.8 2.3 1.5 2.1 3.3s.8 11.6 1 13.1.9 1.2 1.6 2c.7.8 1.1 1.7 3.5 1.7s4.6-.3 6 0c2.2 2.9 3.5 6.8 4 9.3s.4 5.8 1.2 5.8 1.6 0 1.4-3-.5-3.4-1.5-5c-1.1-1.5-1.7-2.2-1.1-3.1s.7-2.4.5-3.6-.6-3 1.4-.6l3.1 3.7c.6.7.8 2.4.7 3.8-.1 1.4.1 2 1 1.2.8-.7 1.8.5 1.3 2s.2 2.5 1.6 3 2 .8 2.3 1.8 1.5 1.5 1.5-.6c0-2-.8-6.5-1.4-7.9-.6-1.4-1-4.4-1.2-6.2s-.4-2.2-1.2-2.5-1.6-1-1.7-1.8-.8-1.1-1.3-1.1-1-.4-1.3-1-.6-.6-1.2-.7-1.5.3-1.8-.6-.7-2.3-1.3-3-1-1-1.1-3.7c0-2.6-.1-3-1-3.9s-2.2-3.4-2.8-4.4c-.5-1-1.1-2.1-1.1.1s0 3.4 1.4 4.2c1.4.8 1.7.8 1.1 2s0 2 .3 2.8.7 1.6 0 2.4c-.7.8-1.4.6-1.3-.7a7.3 7.3 0 00-1-3.8c-.5-1-1-1.8-1.7-1.2s-1.3-.1-.8-.6.3-.8 0-1.1-.5-.7.1-1.4.6-1 .2-2.7c-.3-1.6-2.9-9.8-4-11.7s-1-3.2.4-1.4 2.8 3.5 3 5c0 1.6.4 2.5.9 3s.8.4 1-.9 1.2-.8-.4-3.2c-1.7-2.5-4.7-6.6-5.9-14s-1.6-12.1-2.8-14.1c-1.1-2-1.5-2.5-1.6-4.3s0-3.8-.8-5.2c-.8-1.4-1.4-1.6-1.5.5-.1 2 0 6.8.7 7.6s.2 2.9 0 4-1.9 2.4 2 4.7c1.5 1 1.2 2.2 1 3-.2.9-.5.8-1.3-.5s-1.6-2.4-2.4-3-1-1.2-.8-2.9.4-2.8 0-3.3c-.5-.6-.7-.2-1 .8-.2.9-.4 3.5-1 4.2s-.6.2-1-1.3.2-3.9 1-6.5 1.3-5.5.6-9c-.7-3.5-.4-4.6-3-7.5-2.7-2.9-5.8-5.7-7-9.3-1.3-3.6-1.6-6.8-3-8.4a19.4 19.4 0 00-4.6-4.3v-5.4c0-1.3-.6-2-2.1-1.8s-2.5 1.5-3.4 3.2c-1 1.8-1.6 1-3 4s-3 4.5-3 7.8z"/>
+  <path fill="#cf6200" d="M403 332c1 .7 1.9 1 3.3.3s3-2.7 5-.7c1.8 2 2.8 5.3 2.8 7.8 0 2.6 0 7.4 3 10 2.9 2.7 4.4 5.5 4.5 9a61 61 0 001.7 10.3c.4 1.4 1.2 3 2.1 4s1.7 3.6 1.8 6.4c.1 2.8-.4 4.7 0 6.1s0 2.6-1 2-1.3-1.1-2-2.3-1.2-1-.6.8 2.3 3.4 3.8 3.4 2 .2 3 1.2c.9.9 1 1.4 2.6 1.4s1.9 0 3.4.4 1.5.3 2.3 0 1.7.5 2.2 2 2 5.7 2 6.9 0 2.3.8 3.5.6 2.3-.3 1.6-1-.5-1.6-.3-1.2-.3-2.1-.9c-1-.5-.4-.4-1.3-1.8s-1.5-1.9-1.5-.8-.2 2.3-.9 1.7-1-.6-1.6 0-.8 1-1.5-.1-1.5-1.2-2.2-1.4-.7-.2-1-1.3c-.4-1-1.5-1.3-2.4-1.3s-1.4-.4-1.5-1.1c-.1-.7-.7-1.2-1.2-1.5s-.2-1.2-.3-2-.8-.5-1.3-.7-.8-.1-.8-1.3-.5-1.5-.8-2.3c-.4-.9 0-1.7.2-2.6.2-1 .1-1.5-.6-2.3-.7-.8-.1-1.7-2-3.3s-2.8-.2-3.4-4c-.5-4-1.7-11.9-2.8-13.1s-1.7-2.3-2.8-2.6-1.7-.1-1.8-2.3c-.1-2.2-.8-5-2.2-6.4l-2.7-2.5c-.7-.5-1-1.6 0-3.6s.6-4.7.5-6c-.2-1.2-.5-2.9-.3-4.3s.1-3.1-.2-4-.8-1.2-.2-2zm28.1-33a25.4 25.4 0 01-5.4 5.2c-2.2 1.6-5 2.8-3.4 5.4 1.5 2.7 2.8 3 3 5 .4 2 .9 3.8 2.4 4.2 1.6.5 2.2.2 2.2 3.4s0 4.6 1.4 5.8 1.2 2.5 1.8 5.4c.7 3 .7 9.4 2.5 13.7s6.1 12.6 5.6 14.3-1 3 .8 5c1.9 2 3.1 5 3.3 6.7.1 1.7.4 2.3 2.3 1.7a6.8 6.8 0 003.4-2c.6-.8 1.9-.6 3.6.3 1.7 1 4.4 1.8 6 1 1.5-1 2.2-2.4 3.6-2.4 2.2-1.6 3-4.8 3.5-5.8.4-.9.1-.9-.8-1.8s-.5-2.5-.6-4c-.2-1.6-.8-4-2.7-7.4-1.8-3.4-3-7.6-4.2-8.7-1.2-1-1.8-3.7-2-5-.1-1.2-1.5-2.3-2.5-3.2-1-1-1.8-2.4-3-7.8-1-5.4-1.8-9.3-1.8-10.3s-.2-1-1.1-1.4-1.4-1.8-1-2.6c.2-.8-.4-1.6-.7-2.5s0-2.6.6-3.6.5-3.5-.1-5.7-1.3-4-3.8-4.4c-2.4-.3-3-1-3.8-3-1-2-2-5.5-2.2-6.3-.3-.8-.8-1-2.7.6-1.8 1.6-2.5 2-2.5 5 0 1.9.4 2.5 1 3.6.6 1 .8 1.4 1.2 4.3s3.1 7.6-.3 10.3c-3.4 2.6-3 3.3-2.8 5.1.2 1.9-1 3.1-1.5.5-.7-2.7 0-4.2 1.8-5.5 1.9-1.2 3.6-2.8 2.4-4.5-1.3-1.7-1.8-5.7-2-7.6s-.4-2.5-1.5-1z"/>
+  <path fill="#00b800" d="M403.4 338.5c0 1.3.2 2.7.3 3.8.1 1.3.5 4-.5 6-.9 2-.7 3 0 3.6h.1c2-.6 2.2-2.7 1.7-3.7a3.7 3.7 0 01.2-3.5c.6-1.1.6-1.7.1-2.5-.6-.8-.6-.8 0-3 .6-1.9-.8-1.9-1.9-.7zm20 30.2c-.4-1.4-1.7-6.8-1.8-10.3-.1-3.5-1.7-6.3-4.6-9-2.2-2-2.7-5.4-2.9-8-1.7-1-2.4-.6-2.2 1.4.1 2 2.2 3 2 6.1-.4 3-.4 2.3 1 3.7s2 3 1.3 3.5c-.8.6-.8 1.7.2 2.1 1.1.4 1.2 1.6 1 2.7-.1 1 1 1.3 1.5 2 .7.8.7 2.7.1 3.8-.6 1-.7 2.8.4 1.9 1-1 1.6-.1 2.4 1.4.7 1.2 1.4.8 2.2.5a9.8 9.8 0 01-.7-1.8zm15 27.1c-.6 1.4-1.4 1-2.1.3s-1.5-.7-1.2-2 .2-1.5-.7-2.2l-.3-.3h-1c-1.7 0-1.8-.4-2.8-1.4a7.8 7.8 0 00-.6-.5v.9c0 1.3 0 1-1.2 1.4s-1-1.3-1.3-2.3a3.9 3.9 0 00-.2-.7c-1.4-.2-3-1.7-3.4-3.3-.6-1.8 0-2 .7-.8s.8 1.5 1.8 2.2 1.4-.5 1-1.9a6 6 0 010-1.5c-.3-.5-.6-.8-1-1-2-.9-1.4-1-1.3-2.6.2-1.5-.2-1.5-1.4-.7-1.1.8-1.2-.1-1.2-2.5s-1.6-2.3-1.9-.7c-.4 1.7-1 .6-1.6-1.7s-1.7-3-1.8-.7c0 1.9-.6 2.3-1.8 1.3l.5 3.6c.6 3.8 1.5 2.4 3.4 4s1.3 2.5 2 3.3c.7.9.8 1.4.6 2.4-.3.9-.6 1.7-.3 2.5.4.9.9 1.2.9 2.4s.3 1 .8 1.3l1 .1.8-1.2c1.4-1.4 3.5.1 4.2 1.9s1.5 2.2 2.6.8.7-1.2 1.9.1 1.6 1 1.6 1 1.2-.4 2 .3 1.3.6 2.8-1.6c1.5-2.3-.7-1.6-1.4-.2zm4.2-64c.5-3.4.2-6.8 1.6-8 1.4-1.3 3-3.8 3 1.5-.2 5.3-.4 5-1.5 6.2-1 1.3-2 1.6-1 3.6 1.2 2 1.3 2.2 1.2 5.3-.2 3.1-.2 4.4 1 6 1.3 1.5 1.6 1.6 2 3.3.2 1.7 1.3 4 2.7 5.3s3 4.8 3.1 7.3c.2 2.5 2.4 3.1 4.4 4.9 2 1.7-.5 2.9-2 2.1-1.6-.7-1 0-1.9 1.1-1 1.1-1.2 1.3-2-.6s-3.4-3.1-4.7-3.6-2.3-2.5-3.4-4.5a6 6 0 00-4.5-3.1c.5 1.3.7 2.3.6 2.8-.5 1.7-1 3 .8 5 1.9 2 3.1 5 3.3 6.7.1 1.7.4 2.3 2.3 1.7a8.3 8.3 0 003.4-2c.6-.8 1.9-.7 3.6.3 1.7.9 4.3 1.8 5.9.9 1.5-1 2.3-2.3 3.7-2.3 2.2-1.6 3-4.9 3.4-5.8.5-1 .2-1-.7-1.9s-.5-2.5-.7-4c-.1-1.6-.7-3.9-2.6-7.3s-3-7.6-4.2-8.7c-1.2-1.1-1.9-3.7-2-5-.2-1.2-1.6-2.3-2.5-3.3-1-.9-1.9-2.3-3-7.7-.8-4.3-1.5-7.6-1.7-9.3-1.1 1.8-1.9 2.3-2.3 1-.5-1.4-1-2.1-1.7-1.2-.6 1-.8-.8-.8-1.6s-.1-.9-1-.9 0-1.2-.4-3.6c-.3-2.3-.8-2.6-1 .2-.4 2.8-2 4.5-1.3 5.1.6.6.3 1.9-.3 3.7-.6 1.9-.3 3 .1 4.2s-.3 3.6-.6 5.6c-.3 2 1.3 4 1.7.7zM414.2 304c-1.1.1-2 1.1-1.3 4.7.5 2.2-1.2 1.7-1.8.6-.6-1.1-1.1-3.4-2.4-5.4-1.2-2-.6 1.3-.7 3.2-.2 1.9 1 1.9 2.1 3.4 1.1 1.6.2 2.2-1 2.2s-.7 2.5-.4 4.2-.3 2-1.2.6c-1-1.4-.3-3.5-.2-6.2.2-2.6.4-2-1.4-2.6-1.7-.7-1.4-1-.7-2.5.6-1.6 1.2-2.4.4-3.1-.7-.8-.6-1.3.7-1.4 1.2-.2.7-1.1 1.8-1.4 1.1-.3 1.6.1 1.7-1.9.2-1.7.7-2.7 2-2.2.8 2.6 1.7 6.6 2.4 7.8zm15.7 18.4c0 3.2 0 4.5 1.4 5.7s1.2 2.5 1.8 5.4c.7 3 .7 9.4 2.5 13.7l2.1 4.7a8.8 8.8 0 002.3-3c.4-1-1-3.2-2-5-1.1-2 .1-2.6 1.2-5 1.1-2.2-.1-2.4-1.9-3-1.7-.6-1.7-2.2-2.6-4.7s-.8-3.6-.2-5 .2-2.5-1-2.8c-1.3-.3-1-1.2-.5-2.8.5-1.5.8-1.8-1.1-1.4-1.4.4-1.8.7-2.2 1.2l.2 2z"/>
+  <path fill="#5d3100" d="M447.8 328.8c-.2 1.8-.2 2.8-.7 3.4-.4.6-.1 1.5.4 2.5s.7 2.1.3 3.9.3 3 1.2 3.5 1.4 0 1.1 2.2a6.7 6.7 0 002 5.5c1.1.9 1.9 2.4 1.7 3.4-.1.9.8 1.8 1.9 2.3 1.1.5 1 .6 1 1.2s.4.7 1.6 1 2.2 1 3.6 2.8 3.4 2.6 3.1.8 0-3.2-1.8-4c-1.9-1-3.3-5.5-4-8.6-.9-3.2-3.3-7.3-4.7-8.1-.2-2.2.1-3.3-1.3-4.4a4.5 4.5 0 01-1.9-3.6c0-1-.7-2.4-1.4-2.8-.6-.3-.9-1-.9-2s-1-.8-1.2 1z"/>
+  <path fill="#00d860" d="M439.5 412.2a45 45 0 0011.2-3.2c1.9 1.3 5.1 3 6.5 3-2.6.6-4.4.3-5-.2.3.8 1.2 2.1 1.8 2.2-2.6 0-5.5-.7-6.4-1.6-2.3 1-6 1.2-8-.2zm5 3.5c1 .3 6 1 6.6 1-1.6 1.5-.2 2.8 2.5 2.6-1.3.2-2.8.7-1.8.9a28 28 0 0010.2-2c-2.2 2.8-13 5.5-17.5-2.5zm4.5 7c1.3-.6 4.6-.4 6.2.3-1.7.7-5.2.7-6.2-.2z"/>
+  <path d="M454 422.7c2.4-.4 9.1 1.2 11.5-.3-.8 2.2-5 2.5-6.5 2-1.5-.4-2.9-1-3.9-1 .6-.3-.3-.3-1.1-.7z"/>
+  <path fill="#00d860" d="M456.4 426a35 35 0 0010.3-1.3c2 .7 6.2 1.8 7.2 1.7-2 1.2-5.8.5-7 0a12.5 12.5 0 01-10.5-.4z"/>
+  <path fill="#00d860" d="M459.5 427c2.6.6 4.8.2 7.4-.6.8.3 2.6.7 4.4.7 1.2.6 2.7 1.5 4.3 1.7a19 19 0 01-8.6-.7 22 22 0 00-9.1 1.7c0-.8.5-2 1.6-2.7z"/>
+  <path d="M456.4 414c2 .6 9.4.3 13-1.5 1.6-.7 2.5.5.8 1-6 2.2-10.9 3-14.3 1.1-1.4-.7-1.6-1.4.5-.7z"/>
+  <path fill="#00d860" d="M492.2 404c-9 4.2-14.9 5.5-27.4 1.6-1.1-.3-2 0-.7.8 1.3.9 8.2 2.7 9.8 2.9s1 .8 0 1.1-1.2 1 .1.5 8.9-.7 12 .9c1.3.7 1.6.5 1.5 0s.6-.9 1.6-1 1.6-.4.8-.7-.9-.5-.3-.8.7-.6-.2-.8-1.5-.4-.7-.8c.9-.4 2-.7 3-.8.2-.6-.2-2.3.5-2.9z"/>
+  <path d="M477.3 405c5.1.4 14.6-2 19.6-6.8 1.7 1 4.2 2.2 5.5 2.4s2.4 1.4.4 1.4-4.7-.8-6-1.4a33.8 33.8 0 01-19.4 5c-1.4 0-1.7-.6-.1-.5z"/>
+  <path fill="#00d860" d="M462.1 377c1.8 1.3 4.9 3.3 8.9 3a19.5 19.5 0 006.5 3.3c-2.7 1-5.6 2-6.4 2.9-1.2-1.2-2.8-1-3.2-1.6-1.2 1-1 1.5-.2 2s6.6 1.4 8 1 2 .8.7 1.3c-3.1 1-9.2 0-11.3-3.4-2.2-3.3-4-4.6-9.7-1.5-.6-1.7-.6-2-1.7-2s-3.2-1.5-1.6-1.5 6.2-.6 10-3.4z"/>
+  <path fill="#00d860" d="M463.5 384.6c-1 .2-3.7 1.7-4.7 1.8-1 .2-2.7 1.6-1 1.6 1.9 0 4.2-2 5.5-2s1.4-1.7.2-1.4zm5.7 5.9c-.7.1-3.7.8-4.5.8s-1.7.1-1.6.7.3 1-1 .8-2.2.4-2.5.7-.5.7.7.8 1.9.3 3.3-.4 2.7-1.6 4.2-1.7c1.5 0 3-2 1.4-1.7z"/>
+  <path d="M465 394c1.3 1 7.6 3 9.8 2.9s1.9.9.2 1.3a14 14 0 01-11-3.2c-1.4-1.1 0-1.6.9-1z"/>
+  <path fill="#00d860" d="M494.8 397.2c-4.8 1.5-9.7 1-11.7.4s-3.8-.6-2.4.7c1.3 1.3 5.6 2.1 8 1.5-8.6 2-10.9 1.8-13 1.5-2.2-.4-6.2-.3-8-.2-1.2.2-3 0-3.8-.5s-1-1.3 1.3-1c2.3.1 2.6-.3.6-.6s-4.7.5-2 2.2 8.5-.1 12.3 1a21.4 21.4 0 0019.1-4.3c.4-.3 1-1.2-.4-.7zm-23.7-7.1c.2.6.2 1.2 0 1.6s-.1 1 .6.4 1.2-1.3 2-.9 2.7.4 3.6.2c.8 0 1.1-.3-.2-.8-1.2-.5-2.5-.7-3.2-.6s-1.6-.1-2.2-.4-.7 0-.6.5z"/>
+  <path fill="#00d860" d="M483.6 392.3c-1 0-2.8-.6-3.7-1s-2.3-.4-1.3 1 5.3 2 6.8 1.4 1-1.4 2.4-.4c1.5.9 3.1 1.5 4.2 1.5s1.5 0 .3-.7-1.8-.8-2-1.4-.2-1 1-.6 2.3 1 3.2.5 2.5-1.5 4-1.5l.3-.9c-2.1-.1-3.5.5-4 .7s-1.7.4-2.8.2-2.5-.3-2.9-.6-.3-.5.6-.7 1.2-.8 0-.6-4.8.2-6.6-.4c-1.8-.6-2.6-.7-3.3-.4-.8.3-.7 1.1.4 1.2s3.7.3 4.5 1.1.8.9-.2.5-2.8-.2-1 1.1z"/>
+  <path fill="#00d860" d="M498.8 390.2l-.4.9c2.2 0 7.4.5 9.1 1.5 1.7-1.3 1.4-1.7 2.5-1.4s2.7.6 3.3.3 1.1-.3 1.8-.2 2.2-.2 3.1-.7 2.7-1.2 3.7-1.2 2.3-.3.4-.6-4.8.3-5.8.7c-1 .3-4 .6-5.7.6s-4.1.8-6.1.3-4.8-.2-6-.2z"/>
+  <path d="M525.8 389.2c-3.5 2.6-7.7 3.1-12.7 3.5-1.5.1-1 .5.2.6 5.3.6 11.3-1.4 13.3-3.5.6-.6.5-1.6-.8-.6z"/>
+  <path fill="#00d860" d="M502 395.2a54 54 0 018.4 2c1.3-.2 1.7-.5 1.4-1s-.4-1 2-.8h8.6c.9-.3 2.7-1.7 3.5-1.7-2.1 0-10.9.5-12 .4s-1.7 0-2.4.4-1 .6-2 .2-2.4-.8-3.3-.2c-.8.5-2.7 0-4.2.7z"/>
+  <path fill="#00d860" d="M522.4 395.4c.8-.3 2.6-1.7 3.5-1.8 1.5-.1 3.2.5 4 .7s1.7-.1 1.2-.7-.1-1.8 2.3-1.5c2.4.3 3.6.7 6 .5s3.3 1.5 7.7-.3c-.3 1.8.5 1.9 1.3 1.6s1.8-.3 3.2.8 9.9 1.1 11.9.8c2-.4 3 .7 1.5 1.2-1.5.4-1.9 1.1-1.5 1.6.3.5.7 1-1.2.8-1.9-.2-2.2.4-3.1 1s-1.2 1-3.8.5c-2.5-.4-3-.1-4.4.1s-1.8.3-3.2-.2-4.4-1-6.3-.3-3.2 1.1-4.9.7-1.7-.3-.7-1.3 1.3-1 3.3-1.2c2-.2 3.5-.8 2.1-1.6s-1.8-.7-3.7.2-2.8 1.5-5 .4c-2-1.2-3-1-4.5-.6s-3.7-.5-5.7-1.4zm7 3.5c-2.7.4-3.4-1.3-6.2-1-.9.2-2.5 1.3-.3 1.1 2.1-.1 4.5 1 6.6.9s1.2-1.1 0-1zm-3 2c1.3-.5 4.2.5 5.5.3s2.4.5 1 1-4.3-.8-5.7-.4-2.8-.2-.9-.9zm-28 7.6c2 0 9-.3 11.7-6 .2-.5.4-.7 1.2-.1s4.1 2.5 10.1 3c1.7.1 3.5 1 .1.8s-8.7-1.2-10.5-2.3c-3 4.8-8.5 5.3-12.5 5.2-2.5 0-1.9-.7 0-.6z"/>
+  <path fill="#00d860" d="M513.5 400.5c-1 1.3-4.2 3.5-5.6 3.7-1.5 0-5.9-.3-7-.7s-2.4-.3-.9.8 5.5 1.8 7 1.5c1.7-.4 3.5-.9 4.7-.1s3.5 2.2 4.8 1.9c1.4-.3 4.1-.3 5 .1.9.4 2.4 1.7.1 1s-4.1-.2-5.2-.6c1.2 1.6 3.8 4.2 6 4.2.6 0 1 1-.1 1.5 1 .5 3.6 1 5-.3-.4.5-.2.8.4 1s1.3.7.2.9-3.4.4-4.1 0c2.2 1.5 8.1 3.9 14.1 2.7 1.2-.2 1.8-.7 0-.6-4 0-4.2 0-4.9-.4-.7-.4-.5-.8.6-1.1 1-.3 3.9-.8 5-.8s2.4-.4 0-.4-5.3 0-6.5-.4-2-1-.8-1.8 2.5-.6 3-1.3c-3.8 0-8.5-2.1-5.9-4 .6-.4.4-.5-.5-.6s-4-1-5.2-1.6-.4-1.3.6-1.5c-2.3.4-6.8-.8-9.8-3zm34.1 0c-2 1.5-6 2.2-7.7 2.2s-2 .6-.6.7 2.8.4 3.4.2 1-.2 1.8.2c.9.4 2.7.6 4.4.1s4.3-.8 5.4-.7 2.3.1.1-.5-5.8-.2-6.7 0-3.3 0-2-.3 2.4-1 3-1.6l-1-.3zm-1 4.5a13.5 13.5 0 01-7.1 2.7c2.4.9 4.4 3.4 6 3.3-.8.5-1.7 1.2-2.7 1.3 1.6.4 4.1 0 6.2-1.2 3.5 1 8 .3 9.6-1-2.3 0-5-.8-6.3-1.9 1.1 0 2.2-.6 2.7-1.3-2.6.5-7-.8-8.4-2z"/>
+  <path fill="#00d860" d="M542.8 412.3c1-.1 2-.8 2.7-1.3a22 22 0 01-12.8-2.9c-2.5-2.2-2.5-.5-.8 1s4.9 4 11 3.2zm6.2 5.3c-1 .6-6 1-7.7.6s-2.3-.2-2 .5.7 1.2-.7 1-3.7.2-4.7.5-2.2 1.2-.1.9 4-.8 5.6-.4 7.1.5 8.2 0 .4-.4-.1-.4-.8-.3 0-.7 1.3-1.3 1.5-2zm-48.5-6.7c-2.1.9-9.1 2.8-11 2.9-2.3 1-4.2 1.6-5.3 1.6.8.7 4 1.4 5.2 1-.7.8-2.3 1.6-2.9 2 1.9-.3 4 .2 5 .3a14 14 0 01-7.6 1.6c.6.8 1.4 1.6 2.5 1.6a13 13 0 01-6.3.2c.6 1.1 1.1 1.8 2 2-1.9.2-4.2.5-6.2-.6 1.5 2 4.9 2.6 9.9 2 5-.5 9.2-2.7 10.4-3.7-2.1.3-5 .4-6.3.1a37 37 0 009.9-4.3 5.6 5.6 0 01-3.2-1 31 31 0 009.1-1 6.7 6.7 0 01-4-2.6 39.2 39.2 0 0019.5.6c1-.3 1-1.5-.8-1.3-3.2.2-9.5-.7-11.2-1.5a11.6 11.6 0 004.7 2c-3 .9-7.2 1.5-13.4-2z"/>
+  <path fill="#00d860" d="M486.5 418.4c.6-.4 2.2-1.2 2.9-2-1.3.4-4.4-.3-5.2-1 1.1 0 3-.5 5.3-1.6-4.2-.1-7-.1-8.6-1s-4.3-.5-5.4-.3-.7 2 3.8 1.5a15.4 15.4 0 01-8.8 1.3c.5 1.5.8 3 .4 3.9 2.4 1.4 8.8 3.1 12 2.9-2.8-1-4.3-2.2-2-2.5s3.6-.7 5.6-1.2z"/>
+  <path d="M479.3 426c5.5-.5 13-.6 19-5.7 1.5-1.2 2.5-.8 1 .5a33 33 0 01-18.4 6.8c-3 0-4.4-1.4-1.6-1.7z"/>
+  <path fill="#00d860" d="M521 416.7c-1.3.5-5.2 1.2-6.4 1-1.2-.2-2.9-.2-3.8.3s-1 1 .3 1l3.7.3a6.2 6.2 0 00-2 1.7c2-.4 5.4.4 6.4 1a3 3 0 01-2.3-.5c3.1 3.4 12.5 3.4 14 2.8-.7.5-1.4 1-2 1.2 2.6.5 5.6.4 8.6-1.3-1 .1-4-.1-4.8-.2a5.6 5.6 0 012.3-1.3c-1.2-.3-4.8-.2-5.7.3a4 4 0 011.7-1.9c-4.6 0-10.2 0-12.2-1.1 3.2.3 6.8-1.6 8.3-1.6-2.5 0-5.3-.6-6-1.7zm-11.6 2.5c-2.3.5-5.7 1.5-6.7 2s-1.9.8.1.8a125.5 125.5 0 01.7-.2c-.8 0-1.7 0-.2-.5s3.5-1.5 6-2zm-4.6 5.5c.8 0 4.3 0 5.7-1.2 1.5 1 4.3 2.6 6 2.6 1.9 0 1.7.5.1.7a12 12 0 01-6.2-2c-2.1.8-3.8.2-5.7-.1zm-27 15.7c3.6 1.4 8.3 2.4 11.8 1.3 2 1.7 6.1 1.8 8.3 1.4 2.2-.5 4.2-.7 6.7 0 2.4.9 7.4 1 8.8 2.1-1.3 0-4 0-4.7.2-.6.2-.3.6 1 1.2-4-.2-10.9 1.5-13 3.3a7.3 7.3 0 016.8-4.3c-2-.7-8.8-.8-11 .6a6.7 6.7 0 01-1.4-2.4c-3.6 2-10.6-.9-13.4-3.4zm-9.3-6.6a16 16 0 008.5-3.2c.8.7 4 1.4 7.4.3-.7.5-.8 1.5-.5 2a26.2 26.2 0 00-8 2c-1.5.7-5.8 1.3-7.2.5-1.4-.7-1.4-1.4-.2-1.6z"/>
+  <path fill="#00d860" d="M483.9 433a26.2 26.2 0 00-8 2l.5 2a51 51 0 0117.5-1.8c-1.8.1-5.1 2-7 2.1 4.6-.3 9 .6 10.2 1 1.1.2 1.4 1 .5 2s-1.3.8.6 1c1.8 0 5.7-.3 7.4-2-.7-.7-2.5-.4-3-1a8 8 0 003.1-1.9 29 29 0 01-5.3-.3c-1-.3-1.8-.6-.5-1.3a7.6 7.6 0 002.2-1.7c-2.2.6-5.8 1.2-8.8-1.2 1.1.3 3.8.1 4.7-.3a6 6 0 00-2.6-.9c2.4-1.2 7-2.2 13 .1 2.8-.2 6 0 8.2.5 1-1 2.9-3.2 4-3.7-7 .5-19.3-.7-19-4.4-2.3 3-7.4 4.6-9.6 4.1-.2 1 .7 2.4 1.5 3-2.3.5-6.3.9-8.2.5 1.1 1 3 2 4.2 1.9-2.4 0-3.7.5-5.6.3z"/>
+  <path fill="#00d860" d="M498.1 441.2c2 0 5.8-.2 7.5-1.9-.7-.7-2.5-.4-3-1a8 8 0 003.1-1.9c5-.4 9.3-.2 11.4-.8 2.1-.6 7.5-.3 8.5-.6-4.7.8-5.6 1.2-5.8 2s1.5 1.3 2.6 1.3c-2 0-4.7 2.1-5 3-2.8-1.6-4 .3-4.4 1-1.1-.5-5-.4-7 1.3-2.5-.8-4.2-1.2-6.8-.8 1.6-.3 1.3-1.4-1-1.6zm22.4-13.7c1.6 0 5 .2 6.3 0a7.5 7.5 0 00-2.1 1.5c4-.5 9.4-.8 11-.5-2-.3-4 1-5 1.6s-.4 1 1 1.2 3.1 1.2.7.9-7.3-.4-8.5-.2-1.8-.4 0-.7 2.8-.8 3.6-1.2c-1.4.3-4.1.3-5 0s-1.3-.6-.3-.9.3-.5-.7-.4-3.5 1.1-5 2.5c1.6-1.6 3-3 4-3.7z"/>
+  <path d="M502.8 430.2a10 10 0 007.8 3.5c.7 0 2.2 1 .3 1.1-4.9.2-7.3-1-9.5-4.1-.4-.7.4-1.6 1.4-.5zm29.2-40.8c2.6 1.2 7.7 2.3 11.8 2.1.7 0 2 .7.3.9a21 21 0 01-12.4-2.3c-1-.6-.7-1.2.3-.7z"/>
+  <path fill="#00d860" d="M534.6 389.4c4-.1 7 0 8.1 1 2.3-.6 6.4-1 7.3-.8s2-.3-.2-.8-7.1-.7-8.7-.4c-1.6.3-6.5.5-8 .3.6 0 1 .2 1.5.7zm15.4 1.5c1.8-1 7.2 0 8.8-.7-1.1 1.4 3.8 1.5 8 .4-1.6 1-5.1 1.2-6.6 1.9s-2.4.1-3.5-.4-4.2-1.6-6.7-1.2z"/>
+  <path fill="#00d860" d="M566.8 390.6c-4.2 1-9.1 1-8-.4-1.6.7-7-.3-8.8.7 2-1.1 3.4-.2 4.8-2.6.9.2 2.9.3 3.6-.6 1.2.3 3.4.8 4 1.4.6.7 1.6-.2.8-1.1 2-.7.7.8 5.2-.3 1-.3 3.2-.7 4-.7a27.6 27.6 0 01-5.6 3.6z"/>
+  <path fill="#ff0" stroke="#000" stroke-width=".1" d="M373.4 664.2l-.2-22.2c0-1-.5-.8-.5 0v22l.7.2zm7.2-23.4l.8 23.4-.1.2h-.5l-.5-23.6h.3zm6.8 19.8l-.4-19c0-.6-.5-.5-.5.1l.4 18.9h.5z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#fff" stroke="#000" stroke-width=".1" d="M376.6 644.7l-7-.1c-.3 1.4 1.4 1.3 2 1 .8.5 1.4.5 1.8 0 .6.5 1.4.4 1.7 0 .8.7 1.7 0 1.5-1zm.5 3.4h-7c-1.3 1.2.3 1.8 1.7 1 .2.4 1 .6 1.6.3.6.4 1.4.1 1.8-.3.7.3 1.6.4 2-1zm-.2 4.5h-6.8c-.1 1.1 1.3 1 1.8.7.5.8 1.7.6 2.1.1.7.5 1.3.4 1.6 0 .7.6 1.4-.2 1.3-.8zm.4 4.4l-7.7-.1c-.4 1.3.8 1.5 1.3 1.2.2.7 1.2.5 1.5 0 .4.3.9.1 1.1-.2.1.7 1 .8 1.7.2 1.4 1 2.7-.2 2-1.1zm6.7-1.8h-6.3c.3 1.2.9 1.5 1.9.8.8.8 2 .5 2.3.1 1.4 1.1 2.1-.2 2.1-1zm-.6-4.4l-6.2-.2c.1 1.6 1.6 1.5 2.4.9.5.7 1.5.5 2 0 .7.8 2 .3 1.8-.7zm.8-4.9h-6.6c0 1.1 1.5 1.7 2.6.7.3 1.3 1.5.9 2 .4.8 1 2.5-.2 2-1zm-.4-3.3l-6 .1c0 1 1.4 1.4 1.9.6.3.5 1.3.4 1.6 0 .4.7 1 .2 1.2 0 .7.5 1.4.2 1.3-.7zm6.9 2.2l-7.2-.1c0 .7.7 1 1.2.7 0 .8 1 1 1.7.4.4.7 1.7.8 2.2 0 1 .9 2.2.2 2-1zm-.1 5.9h-7c0 1 1.1 1.3 1.8.8.1.8 1 .9 1.5.4.7.7 1.7.8 2.3 0 .8.3 1.5-.4 1.4-1.2zm-.4 5.3h-5.6c0 1 1.2 1 1.7.5.6.7 1.4.7 1.9.2.7.6 1.9.4 2-.7z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path stroke="#000" stroke-width=".1" d="M381.3 664.4c-3 0-6.1 0-8.2-.2s-2.7-.6-4.2-1.5l-5.6-3.4c-.5-.2-1 .1-.3.5l5.6 3.7c1.5 1 2.5 1.9 3.4 3 1.2 1.3 2 1.3 2.6 1.1s1.4-.5 2.3-.3c.8.2 2 .3 2.6.2.5.5 1.8.4 2.5.2s1.2-.2 1.7-.1h1.7c.5 0 1.8-.3 2.7-.2 1 .2 1.9 0 2.5 0a5 5 0 012-.1c.6-.4.8-.9 1-1.4.6-.1.8-.2.9-.5l.6-1.6h.2v-.6l-.4-.6.2-1 .5-.2-.2-1-8.8.2a2 2 0 00-.6 1.1l-2.6.4c-.3.1-.6.1-.9.5l-1.2 1.8z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path stroke="#000" stroke-width=".1" d="M391.8 660.5l1.3-4.9c.2-.5-.3-.6-.5 0l-1.3 4.9h.5z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#fff" stroke="#000" stroke-width=".1" d="M396.9 655c-1.1.5-1.7.8-2.2.6-.5-.2-1.1-.3-1.5-.1a.5.5 0 010 .1 493.3 493.3 0 01-1.1 3.8c.8.3 2.2.3 2.5 0 .4-.4 1.3-.3 1.8-.3.3-.4.4-.9.3-1.1s0-.7 0-1 .4-1.4.2-2z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="none" stroke="#000" stroke-width=".1" d="M371.7 645.6a53.2 53.2 0 01-8 14m2 1.2a54.5 54.5 0 0011.4-12.6m-7 4.3c-.3 2.7-1.1 7.5-1.5 10m2.6-4c-1 1-2.3 2.6-3.4 3.5m12.7-8.9c-.8.8-1.7 1.8-2.6 2m3.1-1.8a7 7 0 002.7 1.9m-3.2-6.2a8.5 8.5 0 01-3 1.7m3.4-1.6c.6.6 1.3 1.3 2.2 1.7m-5.4-4.9a7 7 0 002.7-1.5m.3 0c.7.7 2 1.4 2.7 1.6m-5.5-3.3a4 4 0 002.4-1.4m.3-.2c.7.6 2 1.4 2.7 1.5m3.2.8c-.4.5-1.5 1.3-2.2 1.3m2.7-1.3c.3.5 1.1 1.3 1.6 1.3m-4.8 6a7.2 7.2 0 002.8-1.9m.5.1a5.6 5.6 0 001.9 1.8m-4.1 5.2c.4 0 1.5-.6 1.8-1.3m.6-.3a7 7 0 002 1.7m-18.7.9c1.3-.4 3.8-2 5.1-3.5m-2.4 1.9c1 .7 2.3 1.5 3.2 1.7m-6.2-4.5a8 8 0 002.4-1.5m.5-.1c.3.4 2.4 1.7 3.3 1.7m-3.8-5.9a9.8 9.8 0 01-2.5 1.4m3-1.4c.7.5 2.2 1.4 3.1 1.4m-3.6-5.4c-.6.6-1.6 1.6-2.4 1.9m2.9-1.8c.4.7 1.6 1.7 2.4 1.8m8 2.6c1.9 3.3 5.3 7.4 8.7 9.6m-14.1-13.3c2.8 4 8.2 12.7 13.4 15.9m1-3.4a18.4 18.4 0 01-4.9 4.6m4.5-3.5c-1.7-2.8-2.6-6.3-4-11m-14 12.4l2 6m-2.4-6.1l1.9 6m-2.4-6.3l1.8 6.2m-2-6.1l1.4 6.1m0-.2h1.7m-.2-.6h-1.6m1.4-.5h-1.6m1.4-.5H374m1.3-.6H374m-.1-.5h1.3m-1.4-.4h1.3m-1.4-.5h1.2m-1.3-.4h1.1m-1.2-.5h1m-1.1-.4h1m-1.1-.3h1m-1-.4h.9m-2.6 0l-1.2 5m1.5-5l-1 5.2m1.3-5.4l-.8 5.5m1.2-5.6l-.6 5.8m.7-.4h-2m2-.5h-2.3m2.3-.6h-2.1m2-.5h-1.9m2-.5h-1.9m1.9-.6H371m1.7-.5H371m1.6-.5h-1.5m1.5-.5h-1.3m1.3-.5h-1.2m1.2-.3h-1.1m1 5.5v-5.9m6.5-2l-4 8.1m4.3-8.2l-3.4 8.3m3.6-8.4l-2.7 8.4m3-8.2l-2.2 8.2m.1-.3h-2.5m2.7-.8h-2.4m2.5-.6h-2m2.4-.6h-2m2.1-.6h-1.9m2.1-.6h-1.8m2-.7h-1.6m1.7-.5h-1.5m1.7-.6h-1.4m1.5-.4H378m1.4-.4H378m1.3-.4h-1m1-.3h-.9m1-.4h-.8m1-.4h-.8m.8-.3h-.7m3.4-.1l1.7 5.6m-1.4-5.5l2.1 5.4m-1.8-5.4l2.5 5.3m.6-.5l-2.8-4.9m2.8 5h-2m1.8-.8h-2m1.7-.6h-1.9m1.5-.7h-1.7m1.3-.6h-1.5m1.1-.7H383m1-.7h-1.2m.8-.6h-1m3.2.1L384 662m2.3-5.4l-1.6 5.3m.7-.1l1.2-5m.3.2l-1 4.7m-1.7-.3h1.7m-1.5-.6h1.7m-1.5-.7h1.6m-1.3-.6h1.5m-1.3-.7h1.4m-1.2-.6h1.3m-1-.7h1.2m-1-.6h1m.9.1l.8 3.6m-.5-3.8l1.1 3.7m-.7-3.7l1.2 3.7m-.7-3.5l1.3 3.5m-.1-.3h-1.7m1.5-.5h-1.6m1.4-.5h-1.5m1.3-.6H388m1.2-.5h-1.4m1.2-.5h-1.3m1.1-.5h-1.2" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#00b800" d="M479.6 380.3c3.6-2.3 9.8-1.9 13 .5 3.7-2.1 10.5-1.5 13.6 1.3 4.8-3.3 8.9-3.8 13.5-.6a12 12 0 0113.6.2c4.2-2 8.8-3.6 12.9.7a10.7 10.7 0 00-13 .8c-4-4-11.1-2.5-13.5.3a8.8 8.8 0 00-13.3.2c-4.2-3.5-10.4-3.6-13.8-1a15 15 0 00-13-2.4z"/>
+  <path fill="#cf6200" d="M543.3 375.3c-18.5 3.2-59 1-67.8-1.3-3-.7-2.2-1.8.4-1.2 10.2 2.3 32 2.3 44 1.7 2.3-3 6-8.3 7.1-9.8s1.6-1.6 4-2l10-1.7v1.4c-.2.3-.5.7-.8.8 0 2.4.5 8.2 1 10.3l1.3-.3c.8-.2 1.6 1.9.8 2.1z"/>
+  <path fill="#cf6200" d="M573.7 376.2h2.5c.7 0 1.8-.6 2.2-1.7l2.5-7.3-1.9-2.8 1-6.1 2.4-1c.1-.4-.1-1.9-.6-2.3l-36.2 1.2c-1.1 0-1.6 0-2 1.4a27 27 0 009.2 26.6c.6.5 1.4 0 .4-.8a29.8 29.8 0 01-5-6.5l6-.1c.4 2 1.9 6 2.2 6.8s1 .8.6-.3c-.8-2.4-1.2-5.2-1.5-6.6h6l.5 6c0 .8.7.8.7-.1v-6l5.5-.2-.5 6c-.1 1 .4 1.4.6 0l.8-6 3.8-.2c-.1 1.3-1.3 5-1.6 6s.2 1 .6.1a35 35 0 001.8-6z"/>
+  <path d="M547.2 375.3c-.6-1.3-2.6-5.9-2.8-9.2l8-.1c.3 2.5 1 7.9 1.5 9.1l-6.7.2zm6.6-9.4c.2 2 1.2 8.5 1.4 9.2l6.4-.1-.4-9.3-7.4.2zm-9-8.1a38 38 0 00-.3 6.8l7.7-.2-.6-6.8-6.8.2zm8.3-.2c0 1.6.4 5.6.5 6.8l7.6-.2-.4-6.9-7.7.3zm9.2-.3l.3 6.9c1.8 0 5.4 0 6.5-.2.1-1.5.3-5.9.2-7l-7 .3zm8.3-.3l-.2 7 7.1-.3c.3-1.5 1-5.4 1-7l-7.9.3zm7.2 8.3l-7.5.2-.7 9.2 7.2-.2a61.6 61.6 0 002.6-7c-.5-1-1-1.4-1.6-2.2zm-15.2.4l.2 9.2 5.5-.2.7-9.2-6.4.2zm-31-1.8l-3 .5a224.8 224.8 0 01-7.2 10.1l10.6-.3-.3-10.3zm1.4-.3l.4 10.5 6.4-.5-1-11-5.8 1z"/>
+  <path stroke="#000" stroke-width=".1" d="M377.3 657h-7.7v-.2l7.7.1zm6-6.2c.1 0 .1 0 0 0l-6-.1c-.1 0-.1 0 0 0h6zm-6.4 1.7c.1 0 .1.1 0 .1h-6.8c-.1 0 0-.1 0-.1h6.8zm.2-4.4c.1 0 .1.1 0 .1H370c-.1 0-.1-.1 0-.1h7.1zm-.5-3.5c.1 0 .1.1 0 .1h-6.9c-.1 0 0-.2 0-.2l7 .1z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#fff" stroke="#000" stroke-width=".1" d="M383.8 642.6l-6 .1 6-.1z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path stroke="#000" stroke-width=".1" d="M384.1 646c.1 0 .1 0 0 0h-6.5c-.1 0-.1 0 0 0h6.5zm6.5 4.6v.1h-7c-.2 0-.2 0 0 0h7zm0-5.9c.2 0 .2.1 0 .1h-7.1c-.1 0-.1-.1 0-.1h7.2zm-6.6 10.4c.1 0 .1.1 0 .1h-6.4v-.1h6.4zm6.2.9c.1 0 .1 0 0 0h-5.6 5.6z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#ef072d" stroke="#000" stroke-width=".1" d="M395.3 657a3 3 0 000-1.4 1.1 1.1 0 01-.6 0 3 3 0 00-.3-.2c0 .4-.2 1.5-.4 1.9-.3 0-1 0-1.3-.2l-.3 1a3.5 3.5 0 001.5 0c0 .6-.1 1.1-.4 1.5.5 0 1 0 1.1-.3.3-.4.3-1 .4-1.3l.5-.1.5-.2.7-.1v-.6l.2-.4-1.6.5z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path stroke="#000" stroke-width=".1" d="M370.5 623.2c-.8 0-2.6 0-3 .2-.3.2-.4.3.2.4s1.7.5 2.3.8c.6.4 1 1 1 2a6 6 0 003 6.3c.1.1.2.2.1.6l-.3 1.1c0 .2-.1.4.2.3a20 20 0 01-1 1.6c-1.6-.2-3 0-3 1.8 0 .2 0 .4.2 0 .3-.4.6-.8 1.3-1-.4.7-.6 1.3-.5 1.7 0 .3.2.5.4 0 .1-.4.5-.8.8-1.1.2-.1.2-.1.1.2s.1.9.3 1.1c.2.2.3.1.2-.2 0-.4 0-1.1.5-1.3.6-.4 1.2-.2 1.4.2.3.5.5 0 .2-.4s-.6-.9-1-.9l1-1.7c0-.2.2-.3.4-.2 0 .1.2.1.3-.2l.7-1.4.6-.2 1 1.5v.6c0 .4-.4 1.3-.5 1.6-1.2 0-1.8 0-2.2.7-.2.3.1.4.4.3a2 2 0 011-.3c.2 0 .3.2 0 .3-.7.3-1.2.8-1.2 1.5 0 .2.2.3.3 0 .3-.5.8-.9 1.3-1 0 .5.1 1.3.5 1.5.3.2.3 0 .2-.3-.2-.5 0-1 .3-1.3.5-.6 1.7.2 2 .4.2.2.4.3.2-.3-.1-.7-1.1-1-2-1.2l1.2-4.2c.5.3 1-.5 1.8-.2 1.4.6 3.5 1.9 3.8 2.2.4.3.5.2.7 0 .2-.1.5 0 .8 0 .2.1.4.2.1-.4a7.2 7.2 0 00-2.4-2.6c.8 0 1.8 0 1.8-.2s-1.2-.6-1.7-.6a3.3 3.3 0 001.6-.8c.2-.2 0-.3-.8-.3-2.1 0-3.2 0-4.3-.6-1.8-1-2.9-2.2-3.8-2.6-.4-.3-.7-.9-1-1.4-.5-1.5-.5-2.3-1.8-2.8s-3 .1-3.7.8z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#fff" stroke="#000" stroke-width=".1" d="M370.6 623.6h-1.7s-.2 0 0 0l1.5.4c.3 0 .2.3 0 .2s-.4 0-.2.2c1 .7 1.2 1 1 3.7l.5.4c.2 0 .1.2 0 .1s-.5 0-.2.2.5.2.2.2-.6.2 0 .1c.5 0 .8.2 0 .3-.6 0-.4.2 0 .2.7 0 .5.2.3.2s-.3.2.2.2h.7c.1 0 .2 0 0 .1-.2 0-.2.2.1.2s.5 0 .2.1c-.1 0-.3.1 0 .2.7 0 .8.2.6.3s-.3.1 0 .1.6.1.3.2c-.2 0-.3.2 0 .2s.5.2.3.3-.3.2 0 .2.4.1.2.2c-.2.2-.3.2-.5 0 0-.2-.2-.2-.2 0l-.2-.3c-.1-.3-.3-.3-.3 0s-.2.1-.4 0a3.3 3.3 0 004 .8c.1 0 .2 0 .3.3l.6 1.1c.1.2.3 0 .3-.2l.6-1.7c0-.3.4-.5.3.3.3-.2 1.5-.3 2.5 0a12.2 12.2 0 012.7 1.5.6.6 0 00.5.1c.3 0 .4 0-.1-.5s-.3-.7 0-.5c.3.2.5.1.2-.2l-1-.9c-.1 0-.1-.2-.6-.2h-1.5c-.2 0-.4 0 .2.2.6.2 1.7 1 2 1.2s.4.6-.1.2-2.4-1.5-3.6-2c-2.7.3-4.9.6-6.5-1.1-.8-.9-.8-2.8.5-3.6-.2-.2-.2-.4-.1-.4v-.6c-.2-.1-.4-.3-.4-.5-.3 0-.5-.5-1-.3s-.6 0-.8-.1c-.1-.2-.2-.2-.5-.2s-.5 0-.5-.2.2-.2.6 0c.7.3 1.3.5 1.8-.2.4-.6-.2-1.1-1-1.3-.9-.2-1.5.5-1.9.8z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#fff" stroke="#000" stroke-width=".1" d="M375 623.3a2.8 2.8 0 00-1-.6c-.3 0-.3.2-.2.3v.6c.2.1.3.3 0 .3-.2.2 0 .9.3.7h.2s0 .3.2.3 0 .2 0 .3h.2c.2 0 .1.4-.1.5.3 0 .4 0 .4.2.1.2.4.3.4.6s0 .3-.4.2-.4 0-.5.2-.2.3 0 .3.4.1.1.2-.6 0-.7.3c0 .3 0 .4.2.3l.7-.4.5.1c.2.1 0 .5-.2.3s-.4 0-.5.1l-.5.2c-.2 0-.4 0-.3.5 0 1.4 1.1 2.4 3.1 2.4h3.3c-.6-.4-1-.6-1.3-.6h-.3c.1-.1 0-.3-.1-.3s-.3-.2-.5 0l-1 .5c-.2 0-.5 0-.2-.2l.9-.4c.2 0 .1-.2.1-.2s0-.3.3-.2c.6.4 1.5.9 1.8.9s.4-.2.2-.3-.3-.3-.3-.4.1-.2.5 0c.4.3 1 .5 1.3.6s.5.1 0-.2l-2.3-1.7c-.3-.3-.3 0-.2.2s-.3.3-.5.1-.3-.3 0-.4.2-.2-.1-.5c-.4-.3-.5-.3-.4 0 .1.3.1.5-.2.4s-.6-.3-.3-.4c.2-.2.5-.3 0-.6s-.2 0-.3.2-.4.2-.5 0-.3-.3-.2-.4.1-.2.3 0 .4 0 .1-.3-.4-.2-.3 0-.2.4-.6 0c-.2-.1-.2-.3 0-.4.2 0 .2-.1 0-.3-.7-1.2-.4-2.1-1.2-3z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path fill="#cf6200" d="M491.6 188.4c-.3.5-.4.4-1 .8-.6.5-.8 1.8.4 1.7.8-.2 1.3-.6 1.6-1a10 10 0 00-1-1.5zm-3.6-2.9c-.9.9-1 1.3-.6 1.3.6 0 .3 0 0 .7-.5.6.7.9 1.2.4s.5-.6.8 0c.1.5 1 0 1.4-.4-.8-.8-1.9-1.5-2.8-2zm-1.6 5c-1.2.6-.8 3.7 1 2.8.6-.3 1-.1 1 .3-.1.3-.1.5 0 .8a5.4 5.4 0 002-1.4c1-1.3 0-1.2-1.6-1.2s-2-.3-.5-1.2c1.4-.9.4-1.4-1.5-1.2.3.4.2.8-.4 1.1zm6.7 6.9c-.9-1-.3-1.4.6-1.9a1.2 1.2 0 00.5-.4l-.8-3c-.4.2-1 1.3-1.2 1.8-.2.8-.4 1.2-1.2 1-.7-.2-1.4.6-1.5 1.4h.5c.3.1.4.6.3 1 2.1 0 2.5 1.4 2.9 2.4.4 1.1.8 1 1.1.3.3-.6-.4-1.7-1.2-2.6z"/>
+  <path fill="#ff0" d="M493.7 209.6c-.4.9-.4.8-1.7.8-1.2.1-2.8.3-3.5 1-.3.4-2.5.6-2.5 1.5 0 1 0 1.7 1 1.8.9 0 1 .2.7.9-.4.7-.6 1.8 1 2 1.6 0 2.8-.4 3.2.5.4 1 0 2.4.3 3s1.4.9 3.1 1.4c1.2.3 5.5.6 6.8.4 1.3-.2.8-1-.5-1-1.3-.2-2.3-.4-2.6-1.3-.3-1-.6-1.5.2-2.3.7-.9 1.4-1.5 1-2.9-.4-1.3-1.1-2.9-2.7-3.3-1.5-.5-1-2.6-2.6-2.8-.6 0-1 0-1.2.3z"/>
+  <path fill="#cf6200" d="M486.1 222.2c1.4.2 2.5.6 1.4.9-1 .3-1.7.9-.3 1 1.4.1 2.6.7 1.5 1s-1.2 1 .1 1 1.9.6 1 1.2c-1 .5-1.6.8-2.2-.1-.6-1-1-1.2-1.1-.5-.2.7-.6.2-1-.8s-1.4-1.4-1.1-.6-.8 1-1.8.6c1 1 2 2 3.3 2.7 1.4-.5 3 0 3.5 0 .6 0 2.4.5 3.4 1s1.7-.4 1.3-1.5c-.5-1-.5-.7-1 0-.6.5-.7-.3-.6-1.5 0-1-.7-.8-.9-.2s-.8-.4-.5-1 0-.9-.5-.7-.6 0-.7-1.2-.6-1-.7-.5-.7-.2-1.4-1.1c-.6-.8-1.3-.3-2.5.1l.8.2z"/>
+  <path fill="#ff0" d="M500.3 229.5c-6.4 2.5-11 1.4-14.4-.9 1.4-.5 3 0 3.6 0 .5 0 2.4.5 3.3 1s1.7-.4 1.3-1.5c.8 1.1 1.5 1.9 2.5 1.8 1 0 2.8-.2 3.7-.4zM486.7 200c-.4-1.3-.8-1.6-1.5-1.5-.7 0-1-.1-1.8-.4-.7-.3-1.7 0-1.9 1.5s-1 2-2.2 3c-1.1.8-1.8 1.5-1.8 2.9s-.3 1.7-1.1 2.8l-1.3 1.5 1.4.8c.9.4.6 1-.2.8s-1.7.2-.3.5 2 1 .7 1c-1.4-.2-3 1-.3.7 2.6-.3 3.6 1 .6 1-3.1 0-2 1-.3 1 2.9 0 2 .9 1.2.9-.7 0-1 1 .9.8l.7-1.1c.3-1 .6-3.7 1.7-4.4 1-.8 1.6-2 1.6-2.7s1.7-4.2 2.7-5 1.6-2.7 1.2-4z"/>
+  <path fill="#cf6200" d="M484.4 200.2c-1-.8-2.1-.3-2.1 1s-.8 1.8-1.7 2.3a4 4 0 00-2 2.7c0 1.1.2 1.8-.5 2.7-.8.8-.9 1.5-.4 2 .6.5.6.5.8 1.2.3.7 1.6 0 1.6-.8s.3-.8 1.1-1.3c.9-.4 2.3-2.7 2-3.3-.3-.6-1.1-1.2 0-2 1-.9 2-1 2-1.8 0-.9.3-1.2.6-1.5.3-.3-.7-.8-1.4-1.2z"/>
+  <path d="M484.4 199c-.7-.2-1.1 1.3-.1 1.5s1.1-1 .1-1.4zm-.1 2c-.8.1-1.7 1.1-.4 1s1.8-1.1.3-1zm-1.6 1.9c-.8.4-.6 1.5.6.7s1.4-1.7-.6-.7zm-1.2 1.6c-.8.4-.7 1.5.5.7 1.2-.7 1.5-1.7-.5-.7z"/>
+  <path d="M479.9 205.3c-.8.4-.3 1.4.8.7s1.1-1.7-.8-.7zm1 1c-.9.4-.4 1.4.8.7s1.1-1.7-.9-.7z"/>
+  <path d="M479.4 206.7c-.7.4-.2 1.4 1 .7s1-1.7-1-.7zm1 1.1c-.9.4-.4 1.4.8.7 1.2-.8 1.1-1.7-.9-.7z"/>
+  <path d="M479 208.5c-.8.4-.3 1.4.9.7s1-1.7-.9-.7z"/>
+  <path d="M479 209.5c-.7.4-.2 1.5 1 .7s1-1.7-1-.7z"/>
+  <path fill="#cf6200" d="M478.5 219.3c-.8.1-1.4 1.3-.4 1.5s1.3.3 1.3 1 .3 2 1.4 2c1 .1 2-1.1 1-1.5-.9-.4-1.7-.7-1.8-1.6 0-.8-1-1.4-1.5-1.4z"/>
+  <path fill="#ff0" d="M507 212.6l.6.6c.8.6 2.2 0 2-.5s-1-2.3 1-.9l10.6 7.4c2.2 1.6.8 1.8-.2 1.3s-4-1.7-5.7-2.7c-1.7-1-2-.6-2.2-.3-.2.3 0 1 .6 1.6-1 .1-2.7 0-3.2-1.2-.6-1.3-2-3-3-4.2-.4-.5-.5-.8-.4-1z"/>
+  <path fill="#00d860" d="M564.9 403.6c-1.4 1-3.4 2.8-2.1 5.2l.5-.2a142.4 142.4 0 0014.7-21.7l.1-.7a20.5 20.5 0 01-5.2 3.1c.7 1.9-2.6 4.3-4.3 5 .7 1.2.5 3-1 3.3.3 1-.9 1-2.3 1.6s-2 1-2.5 1.8c.7-.5 1.8-.8 2.3-.6s.7 1-.3 1.3-1.7.8-2.1 1.2c1.5-.5 3.7-.3 2.2.7z"/>
+  <path stroke="#000" stroke-width=".1" d="M376 628.4c-.4-.3-.5-.1-.4 0s0 .4-.3.5h-1c-.2 0-.5.4 0 .3l1.6-.3c.2 0 .4-.2 0-.5zm.7.6c-.3-.3-.4-.2-.3 0s-.1.3-.3.3l-1.4.4c-.4 0-.4.3.1.3s1.5-.5 1.6-.5.2-.3.3-.2.3 0 0-.3zm.3.8l-1 .5c-.3 0-.5.3 0 .3s1-.5 1.2-.6l.4-.2s.4-.1 0-.4-.8 0-.6.1 0 .3 0 .3z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+  <path d="M482 187.5c-2.8-1.9-6 2-2.9 4.2 2.8 1.9 5.7-2.4 3-4.2z"/>
+  <path fill="#fff" d="M478.5 189.2h.8c-.1 1 .8 2.3 2 2-1 .8-3-.2-2.8-2zm11 42.5c.9.3 3.9.6 5 .6l-1.4 2.5c-.3.8-.4.9-.5-.3 0-1.2-.7-2-1.3-.7l-1.2 2.2c-.3.5-.8.7-.6-.6s.1-2.6 0-3.7z"/>
+  <path fill="none" stroke="#000" stroke-width=".3" d="M399.7 640.8c0 16.3-2.6 33.9-23.8 42.3-21.1-8.4-23.7-26-23.8-42.3h47.6zm0 0c0-6.2-.3-12.2-.2-17.4a63.6 63.6 0 00-23.6-4.3c-5.3 0-15.7.8-23.6 4.3.2 5.2-.2 11.2-.2 17.4h47.6z" transform="matrix(4.4862 0 0 4.4867 -1190.9 -2609)"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/si.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/si.svg
new file mode 100644
index 0000000..a83515b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/si.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-si" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="si-a">
+      <path fill-opacity=".7" d="M-15 0h682.6v512H-15.1z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#si-a)" transform="translate(14.1) scale(.9375)">
+    <path fill="#fff" d="M-62 0H962v512H-62z"/>
+    <path fill="#d50000" d="M-62 341.3H962V512H-62z"/>
+    <path fill="#0000bf" d="M-62 170.7H962v170.6H-62z"/>
+    <path fill="#d50000" d="M228.4 93c-4 61.6-6.4 95.4-15.7 111-10.2 16.8-20 29.1-59.7 44-39.6-14.9-49.4-27.2-59.6-44-9.4-15.6-11.7-49.4-15.7-111l5.8-2c11.8-3.6 20.6-6.5 27.1-7.8 9.3-2 17.3-4.2 42.3-4.7 25 .4 33 2.8 42.3 4.8 6.4 1.4 15.6 4 27.3 7.7l5.9 2z"/>
+    <path fill="#0000bf" d="M222.6 91c-3.8 61.5-7 89.7-12 103.2-9.6 23.2-24.8 35.9-57.6 48-32.8-12.1-48-24.8-57.7-48-5-13.6-8-41.7-11.8-103.3 11.6-3.6 20.6-6.4 27.1-7.7 9.3-2 17.3-4.3 42.3-4.7 25 .4 33 2.7 42.3 4.7a284 284 0 0127.4 7.7z"/>
+    <path fill="#ffdf00" d="M153 109.8l1.5 3.7 7 1-4.5 2.7 4.3 2.9-6.3 1-2 3.4-2-3.5-6-.8 4-3-4.2-2.7 6.7-1 1.5-3.7z"/>
+    <path fill="#fff" d="M208.3 179.6l-3.9-3-2.7-4.6-5.4-4.7-2.9-4.7-5.4-4.9-2.6-4.7-3-2.3-1.8-1.9-5 4.3-2.6 4.7-3.3 3-3.7-2.9-2.7-4.8-10.3-18.3-10.3 18.3-2.7 4.8-3.7 2.9-3.3-3-2.7-4.7-4.9-4.3-1.9 1.8-2.9 2.4-2.6 4.7-5.4 4.9-2.9 4.7-5.4 4.7-2.7 4.6-3.9 3a65.8 65.8 0 0018.6 36.3 107 107 0 0036.6 20.5 104.1 104.1 0 0036.8-20.5c5.8-6 16.6-19.3 18.6-36.3z"/>
+    <path fill="#ffdf00" d="M169.4 83.9l1.6 3.7 7 1-4.6 2.7 4.4 2.9-6.3 1-2 3.4-2-3.5-6-.8 4-3-4.2-2.7 6.6-1 1.6-3.7zm-33 0l1.6 3.7 7 .9-4.5 2.7 4.3 2.9-6.3 1-2 3.4-2-3.4-6-.9 4-3-4.2-2.7 6.7-1 1.5-3.7z"/>
+    <path fill="#0000bf" d="M199.7 203h-7.4l-7-.5-8.3-4h-9.4l-8.1 4-6.5.6-6.4-.6-8.1-4H129l-8.4 4-6.9.6-7.6-.1-3.6-6.2.1-.2 11.2 1.9 6.9-.5 8.3-4.1h9.4l8.2 4 6.4.6 6.5-.6 8.1-4h9.4l8.4 4 6.9.6 10.8-2 .2.4-3.7 6.1zm-86.4 9.5l7.4-.5 8.3-4h9.4l8.2 4 6.4.5 6.4-.5 8.2-4h9.4l8.3 4 7.5.5 4.8-6h-.1l-5.2 1.4-6.9-.5-8.3-4h-9.4l-8.2 4-6.4.6-6.5-.6-8.1-4H129l-8.4 4-6.9.6-5-1.3v.2l4.5 5.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sj.svg
new file mode 100644
index 0000000..8e5d104
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sj.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sj" viewBox="0 0 640 480">
+  <path fill="#ef2b2d" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M180 0h120v480H180z"/>
+  <path fill="#fff" d="M0 180h640v120H0z"/>
+  <path fill="#002868" d="M210 0h60v480h-60z"/>
+  <path fill="#002868" d="M0 210h640v60H0z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sk.svg
new file mode 100644
index 0000000..3d9ea27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sk.svg
@@ -0,0 +1,9 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sk" viewBox="0 0 640 480">
+  <path fill="#ee1c25" d="M0 0h640v480H0z"/>
+  <path fill="#0b4ea2" d="M0 0h640v320H0z"/>
+  <path fill="#fff" d="M0 0h640v160H0z"/>
+  <path fill="#fff" d="M233 370.8c-43-20.7-104.6-61.9-104.6-143.2 0-81.4 4-118.4 4-118.4h201.3s3.9 37 3.9 118.4S276 350 233 370.8z"/>
+  <path fill="#ee1c25" d="M233 360c-39.5-19-96-56.8-96-131.4s3.6-108.6 3.6-108.6h184.8s3.5 34 3.5 108.6C329 303.3 272.5 341 233 360z"/>
+  <path fill="#fff" d="M241.4 209c10.7.2 31.6.6 50.1-5.6 0 0-.4 6.7-.4 14.4s.5 14.4.5 14.4c-17-5.7-38.1-5.8-50.2-5.7v41.2h-16.8v-41.2c-12-.1-33.1 0-50.1 5.7 0 0 .5-6.7.5-14.4 0-7.8-.5-14.4-.5-14.4 18.5 6.2 39.4 5.8 50 5.6v-25.9c-9.7 0-23.7.4-39.6 5.7 0 0 .5-6.6.5-14.4 0-7.7-.5-14.4-.5-14.4 15.9 5.3 29.9 5.8 39.6 5.7-.5-16.4-5.3-37-5.3-37s9.9.7 13.8.7c4 0 13.8-.7 13.8-.7s-4.8 20.6-5.3 37c9.7.1 23.7-.4 39.6-5.7 0 0-.5 6.7-.5 14.4 0 7.8.5 14.4.5 14.4a119 119 0 00-39.7-5.7v26z"/>
+  <path fill="#0b4ea2" d="M233 263.3c-19.9 0-30.5 27.5-30.5 27.5s-6-13-22.2-13c-11 0-19 9.7-24.2 18.8 20 31.7 51.9 51.3 76.9 63.4 25-12 57-31.7 76.9-63.4-5.2-9-13.2-18.8-24.2-18.8-16.2 0-22.2 13-22.2 13S253 263.3 233 263.3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sl.svg
new file mode 100644
index 0000000..51e2676
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sl.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sl" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#0000cd" d="M0 320.3h640V480H0z"/>
+    <path fill="#fff" d="M0 160.7h640v159.6H0z"/>
+    <path fill="#00cd00" d="M0 0h640v160.7H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sm.svg
new file mode 100644
index 0000000..dbe605e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sm.svg
@@ -0,0 +1,91 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sm" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#19b6ef" d="M0 240h640v240H0z"/>
+    <path fill="#fff" d="M0 0h640v240H0z"/>
+  </g>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M317 339.2C369.6 300 426 220 359.9 177.8c-12.3-2.4-26-1.7-32.7 3.6-3.5-2-6.3-1.8-9.8 1.9-2.5-3-5-4.4-10-2.9a40.8 40.8 0 00-31.5-3C218 211.8 253.4 294 317 339.1z"/>
+  <g stroke="#3a9d4f">
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M414 250.1s6-8 6.2-8c5.9-3.4 6.5-7.9 6.5-7.9 5.9-1.8 4-6.7 4.5-7.3a6.4 6.4 0 001.4-7.1c0-.8 2-8.4-.8-9.4.1-8-4.8-7.3-8.8-2-4.2 1.2-5.1 4.7-3.6 8.5-5.5 0-5.7 8-4.1 12.4-7.3-.2-3.3 8-3.5 8.4-2.4 1.2 1.9 12.8 2.3 12.4zm-46 68.2l3.6 2.2c.8 2.8 3.4 4.6 5.3 4.1 1 4.3 5.6 3.7 9 1.2 2.7 4 6 4 10.6 2.7 4 3 9.3 1.7 12.8-1.4 3.7 3 6.2.8 8.1-2.5 3 .8 5.2.3 6.3-2.6 5.7-.5 2.9-5.9-1.8-8.2 3.7-3.2 7.9-10 2-11-1.8-1.3-5.3-1-7.9.2-.7-3-4.8-3.7-9.4-.4-1.5-3.3-7-1.7-9.5.6-3.3-2.8-7.2-2.8-12.9.4L368 318.3zm0-8.7c.6-3.8-2-10.6 2-11.2-.7-6.3.3-13.3 7.5-12.7 1.2-5.9 1-11.4 7.8-12.2 0 0 5.5-19.1 11.2-5.9 2.2 3.9 1.8 10.2-2.7 9 .9 4.7-.7 8.9-5.9 8.7 2.3 3.4 1.6 7.9-1 10l-19 14.3zm33.1-23.9l6-1.2c6-4 8.5-5.7 11.5-1.2 5.1-1 10-.6 9.8 3.4 6 .5 6 4.3 5.3 7.4 1 5.3-1.4 12.3-5 3.8-11.9-7.2-18.6-6.2-37.3-2l9.7-10.2zm3.1-5.9c.2-.2 17.5-4.7 15.7-10 4.9-.8 5.9-5.7 6-5.7 10.3-3.2 9.7-9.1 9.7-9.1 2.9-3.1 8-6.3 6.9-11.8.3-6.3.9-10.2-7.6-6.1-6.3-.6-8.5 3-10.3 8.5-3-3.5-7.8 2.1-8.4 7.1 0 0-7.7 7.6-7.7 7.8l-6.5 12 2.2 7.3z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M404.5 266.4c-4.1-3.1-6.4-6.9-5.7-10.6-2.7-3.7-4.6-5.9-2-9.2l-2-7.5c-5.4-2-3.1-6.5-1.7-8.1-2.5-3.5-2.6-7.2-.2-10.4 0-6.5 4.6-4 8.3 0 0 0 6.4 4.5 1.7 8.5 4.7 1.7 6 5.7 3.4 7.4 4.1 1.8 4.7 5.5 2.5 8 4.1 3.2 2.6 7.4 3.8 11.1l-8.1 10.8z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M411.8 236c-.2-.1-6.9-8.7-5-9.3-.5-2.6-2.5-5.5-1.3-8.1-3.3-3.4-3.4-7.3-.8-10.4-2.2-3-1.2-7.1 1.8-9.8-1-5 2.6-6.2 5.7-7.1 2.3-8 6-6 8.2.2 3.2 2.8 2.7 7 1.6 10.2 3.8 2.5 1.5 5.7-.2 7l-10 27.4z"/>
+    <path fill="#4fd46b" fill-rule="evenodd" stroke-linejoin="round" stroke-width="2.4" d="M410.8 193.1l-5.7-5.7c1.5-3 2.7-8.3-1.6-10.8-2.4-5.7-14.2-12.9-16.1.8-1.8-4.1-5.6-8.2-8.3-3.4-6.2-5.3-9.5-3.7-6.3 3 0 0-2.9 4.5 4.6 8 .6.6-2.4 8.1 6.6 8.3-1.7 2.6 1 6.2 4.6 6-2.5 3.1 1.8 6.5 4.5 5.2-1.1 3.5-1 5.2 3.9 5.7l5.5 6.3 4.5 6.1 3.8-29.5z"/>
+    <path fill="none" stroke-linecap="round" stroke-width="2.2" d="M414.3 246.5c.3-.3 11-24.8 12.4-32.2M415.4 203s1.8 20-3.1 34.6m-29.7-54.7s21.9 21 24 29.7m-8.7-32s1.4 17.3 7.5 34.3m31 28.4S414.6 261.8 404 278m11.8 30s-28.8 4-41.4 4.3m32 8s-35.8-.8-38.4-3.4m20.5-43c0 .4-18.2 30.3-18.8 40"/>
+  </g>
+  <path fill="#65c7ff" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M316.9 333.4c-37.8-35.6-76.5-102.4-38-136.2 6.8 3.8 14.9.4 26-4 3.4 3.7 7.7 4.6 12 1.8a9 9 0 0010.7-2.1c11 6.3 24.9 9.6 28.2 3.3 37.8 36-.6 103.2-39 137.3z"/>
+  <path fill="#8fc753" fill-rule="evenodd" d="M317 332.4a212.8 212.8 0 01-42.3-57.6c2-1.7 2.9-2.2 3.9-5 5.8.8 8.9 1 16.5-.4 1.6 5.8 1.9 10.6 5.5 15.4l7.7-15a33.6 33.6 0 0016.5 0c3.2 4.2 2 10.7 7.7 15.6 3.4-10 6.7-10.6 10.1-16 5 1.8 8.2 1 12.3-.3 2 2.5 1 2.4 5 6a193.7 193.7 0 01-42.8 57.3z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M272.6 164.3a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.8 0zm-3.5-7.7a3.4 3.4 0 11-6.6 0 3.4 3.4 0 016.7 0zm-4-7.1a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm-2.8-7a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm.5-7.6a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm17.6-12.5a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M273.8 123.6a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm-7.3 4.3a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm22.4-5.4a3.4 3.4 0 11-6.6 0 3.4 3.4 0 016.6 0zm9.4.8a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm8.2-.5a3.4 3.4 0 11-6.6 0 3.4 3.4 0 016.7 0z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="1.1" d="M325.9 117.5a8.6 8.6 0 11-17.2 0 8.6 8.6 0 0117.2 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M335 122.7a3.4 3.4 0 11-6.8 0 3.4 3.4 0 016.7 0zm8.6.7a3.4 3.4 0 11-6.6 0 3.4 3.4 0 016.7 0zm8.5-.4a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm7.1-.3a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm8.9 1a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm7 4.4a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0z"/>
+  <path fill="#e40000" fill-rule="evenodd" stroke="#ac0000" stroke-width="2.4" d="M269.4 151.7l8.6 16.5h79.2l9.2-15.9c-5.4-3.7-9-6.5-16.7-4.8-4.3-6.2-9-7.3-16-6.7-2.1-2.1-4-3.4-7.6-4l-16.6.5c-4.4.4-7.8 3.8-8 3.8-7-.9-13.5-.7-15.2 6.2-6.5-1.6-11 .2-16.9 4.4z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M378 135.3a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm.6 8a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm-2.5 7.2a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm-3 6a3.4 3.4 0 11-6.8 0 3.4 3.4 0 016.7 0zm-3.7 7.5a3.4 3.4 0 11-6.7 0 3.4 3.4 0 016.7 0zm-46.8-9.6a5 5 0 11-10 0 5 5 0 0110 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M323.6 143a6 6 0 11-12 0 6 6 0 0112 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-width="1.1" d="M322.7 132a5.4 5.4 0 11-10.8 0 5.4 5.4 0 0110.8 0z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="1.1" d="M315.5 109v-4.2l-3.6-.1.2-3.2h3v-2.8h4.5v2.5h3.5l-.1 3.4h-3.6v4.5h-4z"/>
+  <path fill="none" stroke="#fd0" stroke-width="3.3" d="M277.6 168.2c-7.1-12-17.6-28.4-11-35.5 8.9-10.1 29.9-1 43.3-6.8 1 11.4-2.2 30.4 2.9 34.3l-4.8 4.2c-3-3.7-8.4-8.8-15.2.2-4-3.4-8.3-2.8-10.4 1.7-2 .3-1.9 1.1-4.8 1.9zm80-.5c7.2-12 17.6-28.3 11.1-35.4-9-10.1-30-1-43.3-6.9-1 11.5 2.2 30.5-3 34.4l4.8 4.2c4.7-6.5 10.4-6.7 15.3.2 3.9-3.4 7.9-3 10.4 1.7 2 .3 1.8 1 4.8 1.8z"/>
+  <path fill="#fd0" fill-rule="evenodd" stroke="#7d6c00" stroke-width="2.4" d="M277.3 177.1a437 437 0 0179.3 0l3.1-9c-27.7-5-46.8-5.6-83-.6l.6 9.6z"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M314.1 329.4l.6-4.2c2.9.8 5 .5 7.4-.4l2.4-3.7-1.8-2.1c-1.6.3-3 1.8-4 3.1-1.6.1-3-.7-4.6-1l-1.5-6.4c-1.5-1.8-4.7-1.7-4 1.5l.3 2.5c.6 1.5.9 3.6 1.9 4.7v2.6l3.3 3.4zm1.2-18.3c-2 1-4.6-.8-7.3-1.9-2.5-.1-4.4 2-7.4 1.3.6-1.6 1.9-1.9 2.8-2.8-.7-4.1 1.5-5.5 2.1-5.5.6 0 3.1.6 3.1.6l2.4.3c1.5 2.7 3.5 5 4.3 8z"/>
+  <path fill="#ffe100" fill-rule="evenodd" stroke="#e9bf00" stroke-width="2.4" d="M300.8 366c7-11.4 56.2-34.4 102.4-84.2-47 45.3-76.4 56.4-114.8 84l12.4.3z"/>
+  <path fill="#9d4916" fill-rule="evenodd" stroke="#68300e" stroke-width="1.1" d="M368.4 313.2a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm34.4-34.9a4 4 0 11-8.1 0 4 4 0 018 0zm11.4-29.6a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0zM403 210.3a3.6 3.6 0 11-7.1 0 3.6 3.6 0 017.1 0z"/>
+  <path fill="#fff" fill-rule="evenodd" stroke="#a9a9a9" stroke-width="1.1" d="M279.1 269.6v-15.2l-1.5-1.2v-3.6l2.8-.3.5-17-1.8-1-.2-2.8s2 .8 2 .3l.5-3.4s-1.3-.2-1.3-.7 1.6-1.8 1.6-1.8-.8-.8-1-1.3l-.8-2.8.8-2.9-.5-1.5-1.3-2.3 1.8-1.8-.5-2.8a10 10 0 011.5-2.9c.3-.2 2.3-3 2.3-3l4.4-1 5.1.7 2.8 1.8.5 4.6s-.5 2.8-.7 2.8l-2.3 1s-2.6.3-2.9 0 .8 3.2.8 3.2v3l-.2 3.9s0 1.8-.3 2-.8 1-.8 1l-.2 4 4 1-.2 2.3-2.8.2.5 15.7 4.1.7v4.4l-1.8 1-.5 15.7h-14.4zm62.4.3v-15.2l-1.5-1.3v-3.6l2.8-.2.5-17-1.8-1-.2-2.8s2 .7 2 .2l.5-3.3s-1.3-.3-1.3-.8 1.6-1.8 1.6-1.8-.8-.7-1-1.3l-.8-2.8.8-2.8-.6-1.5-1.2-2.3 1.8-1.8-.6-2.9a10 10 0 011.6-2.8l2.3-3 4.4-1.1 5.1.8 2.8 1.8.5 4.6s-.5 2.8-.7 2.8l-2.3 1s-2.6.3-2.9 0 .8 3.1.8 3.1v3.1l-.3 3.9s0 1.7-.2 2l-.8 1-.2 3.9 4 1-.2 2.3-2.8.3.5 15.6 4.1.8v4.4l-1.8 1-.5 15.7h-14.4zm-31.6.5v-15.2l-1.5-1.2v-3.7l2.8-.2.5-17-1.8-1-.2-2.8s2 .8 2 .3l.5-3.4s-1.2-.2-1.2-.7 1.5-1.9 1.5-1.9-.8-.7-1-1.2l-.8-2.9.8-2.8-.5-1.5-1.3-2.3 1.8-1.8-.5-2.9a9 9 0 011.5-2.8c.3-.2 2.3-3 2.3-3l4.4-1 5.1.7 2.8 1.8.6 4.6s-.6 2.8-.8 2.8l-2.3 1s-2.6.3-2.8 0 .7 3.1.7 3.1v3.1l-.2 3.9s0 1.8-.3 2l-.8 1-.2 3.9 4 1-.2 2.3-2.8.3.5 15.7 4.1.7v4.4l-1.8 1-.5 15.7H310z"/>
+  <path fill-rule="evenodd" d="M283 269.5v-12h6.6V270l-6.7-.5zm31.4 1l.3-12.2h6v11.9l-6.3.2zm31-.3l-.4-11.5 6.5-.2v12l-6-.3zm-60.8-36h3.8v6.1h-3.8zm30.3.2h5.3v6h-5.3zm31 .5h4.6v5.7H346z"/>
+  <path fill="none" stroke="#a8a8a8" stroke-width="1.1" d="M286.6 207c4 4.6 4.3 4.6 4.3 4.6m26.2-4.6c.8 1.5 2 4.8 3.6 5.1m29.3-4.4s1.3 3.6 3 4.1"/>
+  <path fill="#b97700" fill-rule="evenodd" d="M282.2 194c12-3.9-2.8-11.6-5.3 0-3.8.7-4.3 3.5-12.7 2.3-20.4 33-5.3 86.5 54.1 141.8-106.4-90.6-63.2-157.6-33.7-155 16 1 8 21-2.4 11z"/>
+  <path fill="none" stroke="#7d6c00" stroke-width="2.4" d="M285.6 177s9.7 2.7 9.7 6.8m0-7.5s6.8 3 8.3 5.6m45.1-4.5s-8.6 1.2-10.5 3.8m-2.6-3s-5 4.1-4.5 5.3m3.4 12.7c-.8-.3-4.2-4.9-3.4-10.5m-29.8 7.5s2.3-2.6 2.3-7.5m13.5-1.9l.4 11m9.4-1.6c0-.7 3-7.9-.4-11.3m-20.3-1.5s-2.6 7.2-.7 13.2m20-6.8s-4.2 1.2-6 3m-11.8-1.9c0-.3 4.6-1 6 1.6"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M300.6 301.9c.2 0 3.8-.7 3.8-2.4 1.8-1.2.5-4.5.5-4.5l-3.4-.6-4.6-5.2c-.2-1.6.3-3.1-.7-4.8-3.2.8-5 3.5-6 6.5.7 1 .8 2 2.3 2.9 1.5.2 2.5-.7 3.9-.4.7 1.3.5 2.4.8 3.6 1.9 1.3 2.3 3.2 3.4 4.9zm-4.1-22.2v-6.2l-4.4-.2c-.6 1-1.6 1.4-2.2 2.2l-3.1 1.6c1.3 1.5 2.9 2.4 3.8 3.2 2.3.6 4.1.6 5.9-.6zm-13.8 9.1l-2.4-4a7.2 7.2 0 014.7.3s1 2.5.3 3.4c-.4.9-2.7.5-2.6.3zm36.5 4.1a4.6 4.6 0 002.7-3.3l-4.5-5.1-4-.1c-1-1-2.4-1.2-3.6-1.2 0 0 1.2 2 2.8 2.3 1.2 2.6 6.2 7.4 6.6 7.4zm4.3.6c0-.1 4-1.4 6-1.3-.1-1.6 3-5.3 3-5.3l5.6 7.3c-1 .8-2.8.6-4.2.8 0 0-2.7 2.6-3 2.7s-5.2 1.3-7.6-.2c-1-2 .3-4.3.2-4zm3.2-12.8a14 14 0 000-7.6h-6.4l-4.2 2s1.3 4.2 3 3.8c.7 2.1 2.9 1.6 4 2.4l3.6-.6zm24.9-6.4c-1 2.7-1.4 5.5-.2 8 1.2.3 2.6 1 3.6.8l5.1-9.2c-3.5-1.1-6.4-1-8.6.4z"/>
+  <path fill="#b97700" fill-rule="evenodd" d="M353.1 193.2c-12-3.9 2.8-11.7 5.3 0 3.9.6 4.4 3.5 12.8 2.3 20.3 33 5.2 86.5-54.2 141.8 106.5-90.6 63.2-157.6 33.7-155.1-16 1-8 21 2.4 11z"/>
+  <path fill="#c76e2e" fill-rule="evenodd" d="M354.3 284.7c-.2 0-3 2-3 2l-4.2 1.7-4.4.1-1-3 3.4-3c-2.8-.5-5.7.7-8 2.8 0 0 0 3.3 2 5 1.1 1.4 4.5 4 4.5 4a7 7 0 005.4-1l5.3-8.6zm-23.2 30.1c1.4.4 11.3-12.7 11.3-12.7a10 10 0 00-4.9-5.4s-4.8 5.7-4.9 7.6c-.8 1.7-3 8.3-2 9.2-.1.2-.5 2.9.5 1.3z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M266.4 317.4c-14.8-12.9-34.8-20-62.7-10.3 7.5 3.2 15.6 4.3 22.5 7.9l40.2 2.4z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M223.4 308.3c29.3.6 37.8 7.9 36.3 6.7"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.2" d="M267 319c-8.8 1.6-20.8 10-24.4 9.7-9.5-1.1-18.5-5-27.7-8-3.8-1.2-7.7 0-11.6 0 32.8-15.5 44-13.4 63.7-1.8z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M245.4 296s-11 1.6-15.9 1.9c-4.8-.3-12-4.8-19.8-13-4-4.6-13.4-4-13.4-4 20.6-4.4 36.7-.2 49 15.2zm-15-21.2c-14.9-1-33.5-14.3-37.7-30.2 0 .2 5.5 3.5 4.6 4.3 24.4 6.2 26 11.2 33.1 25.9zm25 25.5c2.1-13.5 2.7-22.4-3.6-30.4-5.3-6-6.6-9.7-10.4-18.3-1.1 17.8-5 32.5 14 48.7zM232 263c11-16.1 13-28.3 11.2-47.5-.3 1.5-4 11-4.2 11-16.5 10.3-9.2 26.5-7 36.5z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M222.2 185c11 16.1 9.4 31.3 7.6 50.5-.3-1.5-4-11-4.2-11-16.5-10.3-5.5-29.5-3.4-39.5z"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M231.3 210c26.8-13.6 16.5-30.7 21.4-44-18.6 13.9-21 28.6-21.3 44z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M235 206.6c3.4-9.5 10-25.6 10.7-25.6M227 226.4c-.6-6.7-4-24.7-4.3-26.5"/>
+  <path fill="#006800" fill-rule="evenodd" stroke="#004100" stroke-linejoin="round" stroke-width="2.4" d="M228.3 256.5c-15-1-31-21.3-35.3-37.1 0 .2 5.5 3.4 4.6 4.2 21.4 9.6 23.6 18.2 30.7 32.9zm-4.4-14c-11-16.1-13-28.3-11.3-47.5.3 1.5 4 11 4.3 11 16.4 10.3 9.1 26.5 7 36.5zm9.9-28.3c27.7-12.3 19.2-25.2 27.4-38.7-18.6 13.8-27.1 23.4-27.4 38.7z"/>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M235 211.4a70.7 70.7 0 0015.2-20.7"/>
+  <g fill-rule="evenodd">
+    <path fill="#ffe100" stroke="#e9bf00" stroke-width="2.4" d="M333.6 366.4l13.4.2c-44.7-42-130.5-60.2-118.6-137.4-12.3 83.7 70.1 91.5 105.2 137.2z"/>
+    <path fill="#9d4916" stroke="#68300e" stroke-width="1.1" d="M235.4 212.7a4.3 4.3 0 11-8.6 0 4.3 4.3 0 018.6 0zm-2.6 23.6a4 4 0 11-8.1 0 4 4 0 018 0zm3.8 33.7a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm31.3 37.2a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm4.5 10.7a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0z"/>
+  </g>
+  <g fill="#fff" fill-rule="evenodd">
+    <g stroke="#000" stroke-width="1.1">
+      <path d="M288.2 349a15.5 15.5 0 01-4.8-5.8l-14-1.5-.2 8 19-.7z"/>
+      <path stroke-linejoin="round" d="M185.3 339.6c8.2 1.5 20.5-.8 24.5 4.5 4.8 5.4-15.1 13.9-12.3 18.6 6.2 6.5 12.5 3.8 19.4.2 1.7-3.5 3-9.8 3.8-11.7-2.5-5.7-9.3-8.6-7.5-17.3 11.3-4.2 33.2-3.9 35.6-2.2 1.8 3.6.1 5.2.5 8.1-1.9 3.7-6.7 9.8-6.7 13.1 12 4.2 15-.6 25.8-.4 12.6.2 20.2 3.6 23-1.4-2-4.4-13.5-.8-17.8-3.6-2.2-.7-3.6-2.5-5.5-4.4s-7.2-2-8-6.9c2.2-10.2 17-8.6 19.3-10.2l38.4 2.7c7-.2 11 12.3 1.5 16-9.4 3.8-37.1-5.5-49.2.9-.6-2.6-9.3-6.6-9.9-6.7-3.7 1-10.9.7-10.9.7-1.7 3.2-3.8 5.6-5.5 8.9-8-3.5-15.5 2.7-24.2.9l-13.6 1.5-8.6-.8-13.2 3.8 9.4-8.3-8.3-6z"/>
+      <path d="M184.7 338a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.2 0zm-1 18a3.6 3.6 0 11-7.2 0 3.6 3.6 0 017.3 0z"/>
+    </g>
+    <g stroke="#000" stroke-width="1.1">
+      <path d="M346.3 349.1c2.3-2.1 3.8-3.5 4.7-5.8l14-1.6.3 8-19-.6z"/>
+      <path stroke-linejoin="round" d="M449.1 339.6c-8.1 1.5-20.4-.7-24.4 4.5-4.9 5.5 15 14 12.2 18.6-6.2 6.6-12.5 3.9-19.4.3-1.6-3.5-2.9-9.8-3.8-11.7 2.6-5.8 9.3-8.6 7.6-17.3-11.4-4.3-33.3-4-35.6-2.3-1.9 3.7-.2 5.3-.6 8.2 2 3.6 6.8 9.8 6.8 13-12 4.3-15.1-.6-25.8-.3-12.6.2-20.3 3.5-23-1.5 1.9-4.3 13.4-.8 17.8-3.5 2.2-.8 3.6-2.5 5.5-4.5s7.2-2 8-6.8c-2.2-10.2-17-8.7-19.4-10.2l-38.4 2.6c-7-.2-10.9 12.3-1.5 16.1 9.4 3.8 37.2-5.6 49.2.8.7-2.6 9.3-6.5 10-6.7 3.6 1.1 10.8.7 10.8.7 1.8 3.3 3.8 5.7 5.6 9 8-3.6 15.5 2.7 24.2.8l13.5 1.5 8.7-.7 13.2 3.7-9.4-8.2 8.2-6z"/>
+      <path d="M449.7 338a3.6 3.6 0 107.3 0 3.6 3.6 0 00-7.3 0zm1 18a3.6 3.6 0 107.2 0 3.6 3.6 0 00-7.2 0z"/>
+    </g>
+    <path d="M317 329.3c-3.2-.6-4.4-.4-6.6-.6l-5.1 15.8c8 .7 15.3.7 15.3.7-4.8-1-3.7-15.8-3.6-15.9z"/>
+  </g>
+  <g font-family="Trebuchet MS" font-size="9" font-weight="bold">
+    <text x="448.6" y="344.3" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="448.6" y="344.3">L</tspan>
+    </text>
+    <text x="453.6" y="344.6" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="453.6" y="344.6">I</tspan>
+    </text>
+    <text x="456.7" y="345.1" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="456.7" y="345.1">B</tspan>
+    </text>
+    <text x="462.6" y="345.5" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="462.6" y="345.5">E</tspan>
+    </text>
+    <text x="468.3" y="345.6" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="468.3" y="345.6">R</tspan>
+    </text>
+    <text x="473.9" y="345.4" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="473.9" y="345.4">T</tspan>
+    </text>
+    <text x="479.3" y="344.5" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="479.3" y="344.5">A</tspan>
+    </text>
+    <text x="485.5" y="344.3" transform="translate(-465 -233.3) scale(1.6657)">
+      <tspan x="485.5" y="344.3">S</tspan>
+    </text>
+  </g>
+  <path fill="none" stroke="#00a400" stroke-linecap="round" stroke-width="2.2" d="M231.3 318.6c10.1 1.2 24.1.3 30.2 0M216 284.2c8.6 6.7 27.1 10.7 26.8 10.7m10.7 1.8c-2.8-14-5.8-17.4-8.3-26.2m-43.5-15.8c14.3 6.4 16.5 10.6 25.6 17m5.2-14c1.2-17.3 3.6-21.9 7.9-25.9m-38.7-2c5.2 5.7 22.2 23.7 22.2 23.7m-7-39.6c6.4 4.5 6.4 21 6.4 21"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sn.svg
new file mode 100644
index 0000000..c06616f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sn.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sn" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#0b7226" d="M0 0h213.3v480H0z"/>
+    <path fill="#ff0" d="M213.3 0h213.3v480H213.3z"/>
+    <path fill="#bc0000" d="M426.6 0H640v480H426.6z"/>
+  </g>
+  <path fill="#0b7226" d="M342 218.8h71.8l-56.6 43.6 20.7 69.3-56.6-43.6-56.6 41.6 20.7-67.3-56.6-43.6h69.8l22.7-71.3z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/so.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/so.svg
new file mode 100644
index 0000000..def9fa3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/so.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-so" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="so-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#so-a)" transform="translate(80) scale(.9375)">
+    <path fill="#40a6ff" d="M-128 0h768v512h-768z"/>
+    <path fill="#fff" d="M336.5 381.2L254 327.7l-82.1 54 30.5-87.7-82-54.2L222 239l31.4-87.5 32.1 87.3 101.4.1-81.5 54.7 31.2 87.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sr.svg
new file mode 100644
index 0000000..9a169fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sr.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sr" viewBox="0 0 640 480">
+  <path fill="#377e3f" d="M.1 0h640v480H.1z"/>
+  <path fill="#fff" d="M.1 96h640v288H.1z"/>
+  <path fill="#b40a2d" d="M.1 144h640v192H.1z"/>
+  <path fill="#ecc81d" d="M320 153.2l56.4 173.6-147.7-107.3h182.6L263.6 326.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ss.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ss.svg
new file mode 100644
index 0000000..4efa598
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ss.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ss" viewBox="0 0 640 480">
+  <path fill="#078930" d="M0 336h640v144H0z"/>
+  <path fill="#fff" d="M0 144h640v192H0z"/>
+  <path d="M0 0h640v144H0z"/>
+  <path fill="#da121a" d="M0 168h640v144H0z"/>
+  <path fill="#0f47af" d="M0 0l415.7 240L0 480z"/>
+  <path fill="#fcdd09" d="M200.7 194.8L61.7 240l139 45.1L114.9 167v146z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/st.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/st.svg
new file mode 100644
index 0000000..a6bd218
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/st.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-st" viewBox="0 0 640 480">
+  <path fill="#12ad2b" d="M0 0h640v480H0z"/>
+  <path fill="#ffce00" d="M0 137.1h640V343H0z"/>
+  <path fill="#d21034" d="M0 0v480l240-240"/>
+  <g id="c" transform="translate(351.6 240) scale(.34286)">
+    <g id="b">
+      <path id="a" d="M0-200V0h100" transform="rotate(18 0 -200)"/>
+      <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+    </g>
+    <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-144)" xlink:href="#b"/>
+    <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+  </g>
+  <use width="100%" height="100%" x="700" transform="translate(-523.2)" xlink:href="#c"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sv.svg
new file mode 100644
index 0000000..e9977d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sv.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-se" viewBox="0 0 640 480">
+  <path fill="#066aa7" d="M0 0h640v480H0z"/>
+  <path fill="#fecc00" d="M0 192h640v96H0z"/>
+  <path fill="#fecc00" d="M176 0h96v480h-96z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sx.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sx.svg
new file mode 100644
index 0000000..9ddaf0d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sx.svg
@@ -0,0 +1,56 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sx" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sx-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#sx-a)" transform="scale(.9375)">
+    <path fill="#ed2939" fill-rule="evenodd" d="M0 0h768v256H341.3L0 0z"/>
+    <path fill="#002395" fill-rule="evenodd" d="M0 512h768V256H341.3L0 512z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M0 0l341.3 256L0 512V0z"/>
+    <path fill="#ff0" d="M172.3 193.2l.1-4s-2.1-3.4.4-7c0 0-5.3-2.8-4-7.2 0 0-4.8-1.2-4.5-6.4 0 0-5-.3-5.6-4.7 0 0-5.1.8-7.4-3.4 0 0-5 1-6.4-2.5 0 0-4.9 1.6-7.7-2.5 0 0-5.2 2.1-7.3-1.8-2.1 3.9-7.3 1.8-7.3 1.8-2.8 4.1-7.7 2.4-7.7 2.4-1.4 3.5-6.3 2.5-6.3 2.5-2.3 4.3-7.4 3.4-7.4 3.4-.5 4.4-5.6 4.8-5.6 4.8a6 6 0 01-4.4 6.4c1.3 4.3-4 7.1-4 7.1 2.6 3.7.5 7 .5 7l-.1 3.7 84.7.4"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M377.2 843.1v-3.5s-1.8-3 .4-6c0 0-4.6-2.5-3.5-6.3 0 0-4.2-1-3.9-5.6 0 0-4.5-.3-5-4.1 0 0-4.4.7-6.3-3 0 0-4.4.8-5.6-2.2 0 0-4.3 1.5-6.8-2.1 0 0-4.5 1.8-6.3-1.6-1.9 3.4-6.4 1.6-6.4 1.6-2.4 3.5-6.7 2-6.7 2-1.2 3.1-5.5 2.3-5.5 2.3-2 3.7-6.5 3-6.5 3-.4 3.7-4.9 4-4.9 4a5.1 5.1 0 01-3.7 5.6c1 3.8-3.5 6.2-3.5 6.2 2.2 3.2.3 6.2.3 6.2v3.2l73.9.3z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="red" d="M170.3 188.2c-13.3-1.3-28.6-4.5-40.4 2.2-8-4.7-19-4.4-28.4-3.5-5.1 1-11.1 1-16.5 1.8l-.8.1c-9.7.7-18.5-2.2-27-6 2.8 15.2 5.7 30.7 7.2 46.6C67.6 253 53.3 272.7 59 296c3.5 11.2 15.8 17.7 27 19a214.7 214.7 0 0132.2 4.5 32 32 0 015.5 1.9 19.7 19.7 0 016.6 4.7c6-6.3 15-8.1 23.7-9 15.8-1.9 35.3-.9 45-15.2v-.8c5.3-8 4.6-20 2.3-29-.2-3.1-1-5.9-1.5-8.9-9.6-25.5-1.3-54.2 2.8-80a61 61 0 01-16.4 5.5c-4.5.6-9.5.4-14 .1l-2-.5"/>
+    <path fill="#80cfe1" d="M190.2 261.5c0 1.6.9 3 1.2 4.5 1.9 11.2 3.6 26-7.8 32.9-12.8 8-29.4 4.6-44.1 8.9-3 .8-7 3.5-9 5.4-1.4-.9-2.7-2.2-4.4-3-12.1-6.4-27.9-4.3-41.5-7.8-6.9-2.1-14-7.5-15.8-14.5-4.4-18.4 6.2-34.1 5-52.4-.8-14-3.2-27.3-6.4-40.4 10.7 5 23 5.8 35 3.4A51.6 51.6 0 01130 201c4.6-2 10-2.9 15-3.4 9.3 1 19.4 2.6 29.1 2.6 6.5-.4 12.4-2.2 18-4.7-3.3 21.6-9.8 44.2-1.9 66"/>
+    <path fill="#fff" d="M171 265.8v-20.4h2.4l-31-20-.1-10.5h3l-15.6-11-15.4 11h3v10.5l-30.9 20h2.5v20.3H171"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M376 906.5v-17.8h2.1l-27-17.5-.1-9h2.6l-13.6-9.8-13.5 9.7h2.6l.1 9.1-27 17.5h2.2v17.7H376z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#fff" d="M180.6 292.5v6.3H80.5v-6.4h100"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M384.4 929.8v5.5H297v-5.6h87.4z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#fff" d="M87.1 292.1v-21.5h4l-.2 21.7.2-21.6-5.8-.1v-4.7l89.4.2v4.5h-5.4v21.8l-.1-21.8h4l.2 21.6"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M302.8 929.4v-18.8h3.5l-.2 19 .2-18.8-5-.2v-4l78 .1v4h-4.8l.1 19-.2-19h3.6l.1 18.8" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M319.6 924.8v-13.1H309v13l10.5.1" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M312 914.4v7.6h4.8v-7.6h-4.9m59 10.4l-.1-13h-10.4v13h10.5" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M363.2 914.5v7.6h4.8v-7.6h-4.8m7.6-11v-13h-10.5v13h10.5z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M363.1 893.2v7.6h4.8v-7.6h-4.8m-43.6 10.3v-13.1H309v13h10.5z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M311.9 893.1v7.6h4.8v-7.6h-4.8m26.6 10.4v-13.1H328v13h10.5" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M330.8 893.1v7.6h4.8v-7.6h-4.8m22.3 10.4v-13l-10.5-.1v13l10.5.1" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M345.4 893.1v7.6h4.9v-7.6h-4.9" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#fff" d="M147.7 257.8l.2 34.6H113l-.1-34.6h34.7"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M355.7 899.5l.1 30.2h-30.3l-.1-30.2h30.3zm-30.5 8.6h30.6M329 929.7v-21.4m23.1 21.4v-21.3m14.7-21.8l-17-12.4h-19.3l-17 12.4h53.3M332 863.8v7.6h16.2v-7.6H332" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M336.4 865.7v3.8h7.4v-3.8h-7.4M340 855l9 6.4h-17.9l9-6.4" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#fff" d="M171.4 202c2.9 0 3.6 12 3.6 18 2.6.8 8.1 4.3 10.6 7.4h-28.2c2.4-3.1 7.9-6.6 10.4-7.3 0-6 .6-18.2 3.6-18"/>
+    <path fill="none" stroke="#000" stroke-width="1.2" d="M376.3 850.8c2.6 0 3.2 10.5 3.2 15.8 2.2.6 7.1 3.7 9.2 6.4h-24.6c2.1-2.7 7-5.8 9.1-6.4 0-5.3.6-15.8 3.1-15.8m-49.5 49.5h2.2l-.6 1.2s1 1.4 0 3l.6 1h-2.2l.6-1s-1-1.8 0-3l-.6-1.2m4.5 0h2.2l-.6 1.2s1 1.4 0 3l.6 1h-2.2l.6-1s-1-1.8 0-3l-.6-1.2m5 0h2.1l-.6 1.2s1 1.4 0 3l.6 1h-2.1l.5-1s-1-1.8 0-3l-.6-1.2zm5.5 0h2.2l-.7 1.3s1.1 1.3 0 2.9l.6 1h-2.1l.6-1s-1-1.8 0-3l-.6-1.1zm4.9 0h2.2l-.7 1.3s1.1 1.3 0 2.9l.6 1h-2l.5-1s-1-1.8 0-3l-.6-1.1m4.9 0h2.2l-.7 1.2s1.1 1.3 0 2.9l.6 1h-2l.5-1s-1-1.8 0-3l-.6-1.1" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#ff0" d="M130.5 336.8c13 0 29-2.7 36.5-6.5l16.5-1.5.4 20.1c-14 7.7-46.2 9.4-53.3 9.3-7.1 0-39.7-1.6-53.8-9.3l.2-20.2 16.5 1.5a98 98 0 0037 6.6"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M340.7 968.4c11.4 0 25.3-2.3 31.9-5.7l14.3-1.2.3 17.5c-12.1 6.7-40.3 8.2-46.4 8.1-6.2 0-34.7-1.4-47-8.2l.2-17.5 14.4 1.3c6.6 3.4 21 5.7 32.3 5.7" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#ff0" d="M34.4 251l14.5 4.6-4.4 23.5-13.7 2.2s-2.3-12.4 3.6-30.3"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M256.9 893.6l12.6 4-3.8 20.5-12 1.9s-2-10.8 3.2-26.4z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#7e7e7e" d="M44.5 278.9l-13.7 2.4 8.7-12.4 5 10"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M265.7 917.9l-12 2 7.6-10.7 4.4 8.7" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#ff0" d="M25.7 268l14 1c.3 11.8 1.8 57 55.8 59.5L93.8 345c-65.7.6-70.7-55.5-68-77"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M249.3 908.4l12.2.8c.3 10.4 1.5 49.8 48.7 52l-1.5 14.4c-57.4.6-61.7-48.4-59.4-67.2zm44.8 70.1l14.4-3.1" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#ff0" d="M225.4 251.2l-14.4 4.6 4.6 23.4 13.8 2.2s2.2-12.3-4-30.2"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M423.5 893.7l-12.6 4 4 20.5 12 2s2-10.8-3.4-26.5z" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#7e7e7e" d="M215.6 279l13.7 2.5-8.8-12.4-5 9.9"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M414.9 918l12 2.1-7.7-10.7-4.3 8.6" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#ff0" d="M234.3 268.1l-14 1c-.2 11.8-1.3 57-55.3 59.5l2 16.4c65.7.8 70.2-55.4 67.4-76.9"/>
+    <path fill="none" stroke="#000" stroke-width=".3" d="M431.2 908.5l-12.2.8c-.2 10.4-1 49.9-48.2 52l1.6 14.3c57.4.7 61.3-48.3 58.8-67zm-44.2 70l-14.4-3" transform="matrix(1.1464 0 0 1.1461 -260 -773.1)"/>
+    <path fill="#009fc5" d="M121.8 346.7c-.4.2-1 .3-1.5.2l-2.6-.1.2-3.3 2.6.2c.5 0 1 .1 1.2.3.5.2.7.7.7 1.4 0 .6-.3 1-.7 1.3m-4.3 5l.2-3.9 3 .2c1 .1 1.8-.2 2.3-.7.5-.4.8-1 .8-1.8a2.5 2.5 0 00-.6-2 3.2 3.2 0 00-2-.9l-4.4-.3-.6 9.4h1.3m9.4-7.7h3.2l1.1.2c.5.3.7.7.7 1.4 0 .6-.1 1-.5 1.3a2.6 2.6 0 01-1.4.3h-3.1V344m0 8.2v-4l3 .1c.5 0 1 0 1.2.2.4.2.7.6.7 1.2v2.3l.2.3h1.6v-.2a.8.8 0 01-.4-.5 3.4 3.4 0 01-.1-.8v-1.3c0-.6-.2-1-.4-1.2a1.7 1.7 0 00-.8-.6c.4-.2.8-.5 1-.8.2-.4.4-.8.4-1.4 0-1-.5-1.8-1.4-2.2a4.7 4.7 0 00-1.8-.4h-4.5v9.4h1.3m10-2a4.5 4.5 0 01-1-2.6c0-1.3.2-2.3.8-3a3.1 3.1 0 012.4-1 3 3 0 012.4.8c.7.6 1 1.5 1.1 2.6a5 5 0 01-.6 2.8c-.5.8-1.3 1.3-2.5 1.3s-2-.2-2.7-.9m-1.5-5.9a6 6 0 00-.8 3.3c.1 1.4.5 2.6 1.4 3.4a4.6 4.6 0 003.6 1.3 4.4 4.4 0 003.5-1.8 6 6 0 001-3.6 5 5 0 00-1.2-3.1c-.9-1-2.2-1.5-3.9-1.4-1.6 0-2.8.7-3.6 1.9m44-13.5c1-.1 1.8-.1 2.5.1 1 .4 1.7 1.1 2.2 2.3l-1.3.2a2.4 2.4 0 00-1.2-1.3 3.5 3.5 0 00-2-.2 3 3 0 00-2 1.3c-.5.7-.7 1.7-.5 3a4.5 4.5 0 001.2 2.6c.6.6 1.5.8 2.6.7a3.2 3.2 0 002-1.1c.6-.6.7-1.4.5-2.5l-3 .5-.1-1 4.2-.7.8 5h-.9l-.5-1-1 1c-.5.5-1.2.7-2 .9a4.3 4.3 0 01-3.2-.7 5 5 0 01-1.9-3.4 5.1 5.1 0 01.7-4 4.1 4.1 0 013-1.7m9.4-.7l3-1.1c.4-.2.8-.2 1.1-.2.6 0 1 .4 1.2 1 .2.6.2 1.1 0 1.5-.3.3-.7.6-1.3.8l-2.8 1-1.2-3m3 7.7l-1.4-3.7 2.8-1a3 3 0 011.1-.3c.5.1.9.4 1.2 1l.6 1.4.3.7.2.3 1.5-.6v-.2c-.3 0-.5-.1-.6-.4-.2-.1-.3-.4-.4-.7l-.5-1.2c-.2-.5-.5-.8-.7-1a2.4 2.4 0 00-1-.2l.6-1.2c0-.4 0-.9-.2-1.4-.4-1-1-1.6-2-1.6a4.5 4.5 0 00-1.9.3l-4.2 1.5 3.4 8.8 1.2-.4m11-4.7l-5.3-7.8 5.8-3.8.7 1-4.8 3 1.6 2.4 4.5-2.8.6.9-4.5 2.8 1.8 2.7 5-3.2.6 1-6 3.8m4.7-13.8l1.5-1.7c.8-.8 1.5-1.1 2.3-1 .9 0 1.7.5 2.6 1.3a4.7 4.7 0 011.4 2c.2.6.1 1.1 0 1.6a4 4 0 01-.7 1l-1.5 1.6-5.6-4.8m8.1 3.6c1.1-1.2 1.3-2.4.7-4a6.7 6.7 0 00-1.7-2.1 5.2 5.2 0 00-3.1-1.4c-1.2-.1-2.2.3-3.1 1.3l-2.6 2.8 7.2 6.3 2.6-2.8m5.6-7.3l-8.3-5 .7-1 8.3 4.9-.7 1m3.3-5.6l-9-3.6 2.6-6.3 1.1.4-2.1 5.2 2.7 1 2-4.7 1 .4-2 4.8 3 1.2 2.3-5.2 1 .4-2.6 6.4m4-11l-9.4-2 .4-1.5 8.7-3-7.7-1.7.3-1.1 9.4 2-.3 1.4-8.7 3 7.7 1.7-.3 1.2m-.8-12l.1-1.2c.6 0 1 0 1.4-.2.7-.4 1-1.1 1.2-2.1a3.7 3.7 0 00-.1-1.4c-.2-.7-.6-1.2-1.3-1.2-.6-.1-1 0-1.2.3-.3.3-.5.8-.7 1.5l-.5 1.2c-.2.8-.5 1.4-.8 1.7-.4.6-1 .8-1.8.7a2.8 2.8 0 01-2-1c-.6-.6-.8-1.5-.7-2.6.1-1 .4-1.8 1-2.4.5-.6 1.3-1 2.4-.8l-.1 1.2c-.5 0-1 0-1.2.3-.6.3-.9 1-1 1.9 0 .7 0 1.2.4 1.6.3.4.6.6 1 .6.5 0 .9 0 1.1-.4l.7-1.7.4-1.3c.2-.6.5-1 .8-1.4.5-.5 1.2-.7 2-.7 1.1.1 1.9.6 2.2 1.4.4.8.6 1.6.5 2.7a3.9 3.9 0 01-1.2 2.6c-.7.6-1.5.8-2.6.7m-195.6-.6l.3 1.2c-.6.1-1 .3-1.3.6-.5.5-.7 1.3-.5 2.4a4 4 0 00.4 1.2c.4.7 1 1 1.7.9.5-.1.8-.3 1-.7l.3-1.6v-1.3c0-.8.2-1.5.3-1.8.3-.6.9-1 1.7-1.2.8-.1 1.6 0 2.2.6.7.4 1.1 1.2 1.3 2.2a4 4 0 01-.3 2.6c-.4.8-1 1.2-2.1 1.4l-.2-1.1a3 3 0 001-.6c.5-.5.6-1.2.5-2.1-.2-.8-.4-1.3-.8-1.5a1.5 1.5 0 00-1.2-.3 1 1 0 00-1 .7l-.1 1.8-.1 1.3a3.5 3.5 0 01-.4 1.6 2.2 2.2 0 01-1.7 1.2c-1 .2-2-.1-2.5-.8a5 5 0 01-1.2-2.4 3.8 3.8 0 01.5-2.9 3 3 0 012.2-1.3m-.6 12.3l9.3-2.8 2.1 6.5-1.1.4-1.8-5.3-2.8.8 1.7 5-1.1.3-1.6-5-3.2 1 1.8 5.4-1 .3-2.3-6.6m4.1 11.3l8.5-4.5 1 1.6-5.9 6.1 8.5-1.4.9 1.5-8.5 4.5-.6-1 5-2.7.9-.4 1.3-.7-8.5 1.5-.6-1.1 5.8-6.2-.3.2-1 .5a7 7 0 01-.9.5l-5 2.6-.6-1m15.8 12.5c-.4-.1-.8-.4-1.2-.8l-1.8-1.8 2.4-2.2 1.8 1.8a3 3 0 01.7 1c.2.5 0 1-.5 1.5-.5.4-1 .6-1.4.5m-6.8.8l3-2.7 2 2.1c.8.7 1.5 1 2.2 1a3 3 0 002-.8 3 3 0 00.8-2c0-.6-.3-1.3-.9-1.9l-3-3-7 6.4 1 1m8.4 7.5l5.1-8 6 3.6-.6 1-5-3-1.5 2.5 4.5 2.7-.5 1-4.6-2.8-1.7 2.7 5 3-.6 1-6.1-3.7m15-1.6l3.1 1 1 .5c.4.4.5.9.2 1.5-.2.6-.4 1-.9 1.1l-1.5-.1-2.9-1 1-3m-2.6 7.9l1.3-3.8 2.8.9c.5.1 1 .3 1.1.5.3.3.4.8.3 1.4l-.5 1.5-.1.7v.3l1.5.5v-.2l-.2-.7.2-.7.4-1.2c.1-.6.2-1 0-1.2 0-.3-.3-.6-.6-.9.5 0 1-.2 1.3-.5.3-.3.6-.7.7-1.2.4-1 .2-1.9-.6-2.5a5.2 5.2 0 00-1.6-.9l-4.3-1.3-3 8.9 1.3.4"/>
+    <path fill="#bc715f" d="M78.5 175.6c1-2.7 11.3-10 44.8-6.8 0 0 5.7 3.5 9 3 2-.2-1 .2-3.6-1.9-2.5-2-3-6.3 2.7-6.1 5.8.1 27.3 1.3 27.7 3.3.4 1.9-11.4 2.7-15.7 2.6-4.4-.1-4 2.1.4 2 13.7-.6 28.6-5.4 44.3 5.8 1.9 1.3-4.7 1.5-9.8-.6 0 0-14 .7-20-.3 0 0-4.5 3.8-10.6 3.4.8 2-2.2 9.2-21 3.7-3.2 1-14.5 2.9-13.3-.5-3 0-8.2 1-9-.7-.8-1.7 9.2-4.2 11-6 0 0-21.2.2-25.2-1.3 0 0-12.5 2.8-11.7.4"/>
+    <path fill="#008737" d="M85.3 205.2c.4-.6.6-1.8 1.6-1.7 2 .5 3.5 4.4 6 1.9 1-.2 1.3 1 2 1.2.5 2.1 2.3-.5 3.5-.3 2.8-1.2 6.1-1.5 9.4-1 0 2.2-1.6 4.5-3.6 5.7 0 2 2 3.4 1.9 5.5-.3.8 0 2-1.2 2.3-1.6-.3-3-.4-4.3-1.3-.2-.1-.3-.4-.6-.3-.2.7 1 1.4 1.4 2.1-.8 1.3-2 .1-3.1.1-.3.8 0 1.7-.8 2.2-1.3 0-1.6-1.5-2.4-2.2-.9.9.6 1.4.8 2.1-.6 2.8-.5 5.5-3.2 7.3l-1.9.9c-.5-1.4-.2-3.5-.5-5-1 1.8-2 3.4-3.5 4.9-2-.6-3-2.8-3.4-4.7a5.8 5.8 0 011.3-6.2c-.5-1-2.5-.8-2.8-2.4-3-2-4.5 3.3-6.4.6a8.6 8.6 0 012-7.6c-.5-1-1.9-.8-2.7-1.4-1.8-1.6-4.5-3.2-4.3-6a14 14 0 0114.7 3.3"/>
+    <path fill="#ff0" d="M87.9 204.9c-.1 2.3 1.5.6 2.8 2-1-.4-1.7 1.7-2.7.5l-.6.6c.4.8 1 .9.4 1.8-1 .4-1.3-1-1.8-1.5 0-.2.2-.6-.2-.8-.6.5-1.2.7-2 .6-.2-.4-.7-1-.2-1.4.8-1 2 .4 2.6-.3.1-.7-.5-1.5.3-2 .5.1 1.2-.2 1.4.5m6.2 1.9c.1.4-.2 1 .4 1.4.8-.4 1.6-.1 2 .6 0 .4.1 1-.4 1.2l-1.2-.3c.1-.2-.3-.3-.4-.6-.5-.1-.9.3-1.2.6.3.4 1 .7.8 1.2-.7.7-1-.6-1.8-.2-.6-.2.1-1.3-.7-1.7-1 0-.3 1.6-1.6 1-.4-.5-.8-1.2-.4-1.7a1.6 1.6 0 011.9.2c.8-.9.8-4.1 2.7-1.7m-7.8 3.3c.5.8-.2 1.8.5 2.6 1-2 2 .4 3.2.2.4.5.1 1.1.2 1.6-1.5.4-3.3.9-4.6-.3l-.4.4c.8.7 1.5 1.6.9 2.8-1.1.2-2.9.3-3.4-.9-.3-1 .7-1.6-.4-2.4-.7 1-.7 2.2-2.2 1.3a1.9 1.9 0 01-.8-2.5c1-1.6 2.8 0 3.8-.7.2-1.4-.3-2.6 1-3.3 1-.2 1.5.6 2.2 1.2"/>
+    <path fill="#fff" d="M90.6 211c-.5 2.3-2.2-.1-3-.2 1-2 1.7.6 3 .2m5.4 2.5c-1.2.3-1-1.2-1.6-1.8l.5-.4c.4.5.7 1.5 1.1 2.2"/>
+    <path fill="#ff0" d="M94.4 213c.3.8-.8 1.5.2 2l.8-.7c.9.2 1.8.4 2.4 1.2.6 1.7-1.1 1.7-2 2.2h-1c.2-.6-.5-.8-.6-1a1 1 0 00-1.1.3c.2 1 1.5 2 .2 2.9-1.2 0-3 .4-2.9-1.2-.4-1 1.2-2.3-.5-2.4-.6 1.3-1.2 2.4-2.7 1.3l.2-1.8c1.4 0 3.1.3 3.7-1.3.4-1.1-.7-2.2.3-3 1.5-.4 2.3.6 3 1.5"/>
+    <path d="M93.4 215.6c.3.9-.6 1-1.1 1.4-.6 0-1-.2-1.4-.6-.3-1 .5-1.2 1-1.6.7-.3 1 .5 1.5.8"/>
+    <path fill="#fff" d="M92.5 216.2c-.1.2-.4.1-.6.2l-.2-1c.5 0 1 .1.8.8"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sy.svg
new file mode 100644
index 0000000..b30a3ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sy.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sy" viewBox="0 0 640 480">
+  <rect width="640" height="160" y="160" fill="#fff" fill-rule="evenodd" rx="0" ry="0"/>
+  <rect width="640" height="160" y="320" fill-rule="evenodd" rx="0" ry="0"/>
+  <path fill="red" fill-rule="evenodd" d="M0 0h640v160H0z"/>
+  <path fill="#090" fill-rule="evenodd" d="M201.9 281l-28.8-20.9-28.7 21.1 10.7-34.2-28.7-21.2 35.4-.3 11-34.1 11.3 34h35.4L191 246.9l10.9 34.2zm307.6 0l-28.8-20.9-28.7 21.1 10.7-34.2-28.6-21.2 35.4-.3 11-34.1 11.2 34h35.4l-28.5 21.4 11 34.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sz.svg
new file mode 100644
index 0000000..4904c42
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/sz.svg
@@ -0,0 +1,45 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-sz" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="sz-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#sz-a)" transform="translate(80) scale(.9375)">
+    <path fill="#3e5eb9" fill-rule="evenodd" d="M-128 0h768v512h-768z"/>
+    <path fill="#ffd900" fill-rule="evenodd" d="M-128 91.4h768v329.2h-768z"/>
+    <path fill="#b10c0c" fill-rule="evenodd" d="M-128 128h768v256h-768z"/>
+    <rect width="621.7" height="11" x="-51.4" y="250.5" fill="#ffd900" fill-rule="evenodd" stroke="#000" stroke-width="1.5" rx="5.8" ry="5.8"/>
+    <g stroke="#000" transform="translate(-757 -25.6) scale(1.0321)">
+      <path fill="#fff" fill-rule="evenodd" stroke-width="4.2" d="M-106.3 265.8l-88.6 35.4 88.6 35.4 88.6-35.4-88.6-35.4z" transform="matrix(.34 0 0 .3 1256.8 136.4)"/>
+      <rect width="442.9" height="7.1" x="761.8" y="223.2" fill="#ffd900" fill-rule="evenodd" stroke-width="1.3" rx="4.1" ry="3.8"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1806.3 90.3)"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1802.8 90.3)"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1799.2 90.4)"/>
+    </g>
+    <g stroke="#000" transform="translate(-786.3 -3.7) scale(1.0321)">
+      <path fill="#fff" fill-rule="evenodd" stroke-width="4.2" d="M-106.3 265.8l-88.6 35.4 88.6 35.4 88.6-35.4-88.6-35.4z" transform="matrix(.34 0 0 .3 1256.8 136.4)"/>
+      <rect width="442.9" height="7.1" x="761.8" y="223.2" fill="#ffd900" fill-rule="evenodd" stroke-width="1.3" rx="4.1" ry="3.8"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1806.3 90.3)"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1802.8 90.3)"/>
+      <path fill="none" stroke-width="2.7" d="M1224.4 280c-3.5 0-7-3.6-7-7.2s3.5-7 7-7" transform="matrix(-.50001 0 0 .5 1799.2 90.4)"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#3d5da7" stroke="#000" stroke-width="1.4" d="M338-.4c-5.5 12.4 4.3-4.1 28.4 16.7 4.4 3.8 8.3 14 8.3 21.1-1.1-1-2-3-3.2-4.5-1.8 2.3 1.7 12.6 2.2 17.5-3.8-2.7-3.4-4-4.7-7.4.3 4-.6 15.2.9 19.4-3-1-2.8-4.1-4.3-4.8 1 4.9-1 10.1-.4 15.6-1.8-2.2-3.6-4-4.4-4.9-.1 2.6-3.3 9.4-3.4 11.9-1.5-1.2-1.9-3-2.1-4.2-1.8 3-8.3 14-8.7 17.2-5-5.7-17.8-19.5-19.5-26.9-1.5 4.2-3.6 5.6-7.8 8.7-1.7-11.7-8-24.8-4.6-34.8a84.4 84.4 0 00-6.6 5.9A67.9 67.9 0 01338-.4z" transform="matrix(.9944 0 0 .77118 190.4 252)"/>
+      <path fill="#a70000" d="M505.9 299.2c2.3-4.6 4.4-6 5.9-9 2.6-5.2 3-9.4 5.3-8.8 2.3.6 2.3 2.8-.7 7.9-3 5-4.4 6.2-10.5 9.9zm15.5 11c-.3-3.6.8-5 .6-7.3-.3-4-2-6.7.1-6.9 2.1-.2 3.1 1.2 3.1 5.2s-.6 5-3.8 9zm11.8 6.8c-.9-5-.2-7-.8-10.2-1-5.6-3-9.2-1-9.7 1.9-.5 3 1.3 3.8 6.9.7 5.6.3 7.2-2 13zm12.3-34.3c-2.9-2.1-4.6-2.3-6.4-3.7-3.3-2.5-5-5.1-6-3.8-1 1.3-.3 2.7 3.1 5 3.5 2.3 4.6 2.5 9.3 2.5zm-2 16.3c-1.5-3.2-3.1-4-4.1-6-1.8-3.6-1.8-6.7-3.6-5.9-2 .8-2 2.4 0 5.9 2 3.4 3 4 7.7 6z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#3d5da7" stroke="#000" stroke-width="1.4" d="M329.6 20.7c-.3-2.7.3-3-1.3-5 2.2 1 2.3 3.7 5 1.8 1-.6 1.4-.6.2-3.5 2.8 0 12 3.5 13.4 3.6 3.9.2 10.9-4.4 15.7 1.2 4.7 5.1 3.1 10.4 3.1 17.5-1.8-1-1-1.4-3-4 1.6 6.2 0 17.4 0 24-.8-1.6-.7-1-1.4-2.6-2 6-4.4 7.3-4.4 14.3-.7-2.7 0-2.2-.8-3.6-2 4.5-15 8.4-10 13-4.4-2.8-6.4-2.5-8.5-5.1-.9.6-1.6 1.8-2.4 3.4-8-4-5-12.5-11.3-18.2-1 2.4-.6 2-1.8 5.9-1.2-5.4-1.6-8.9-3-12.8-1.2 2.2-1 1.3-3.3 4.7-1-6.6-2.4-8.2-1.8-12.5-2.4 1.8-.8 1-3.2 3.3 2.2-17 11.9-29.4 18.8-25.4z" transform="matrix(1.1372 0 0 1.0495 -399.4 239.2)"/>
+      <path fill="#a70000" d="M-35.7 289.8c2.3-5.7 4.4-7.5 6-11.2 2.6-6.4 3-11.6 5.2-10.8 2.3.8 2.2 3.4-.8 9.8a25 25 0 01-10.4 12.2zm8.8 14.3c1-5.1 2.4-7 3-10.3 1-5.8.5-10.1 2.6-9.9 2 .3 2.5 2.4 1.1 8.2-1.4 5.8-2.3 7.1-6.7 12zm10.5 9.9c.3-5 1.5-6.9 1.6-10 .3-5.7-.7-9.7 1.2-9.7 2 0 2.7 2 2.1 7.6-.6 5.6-1.3 7-4.9 12zm22.7-32.4c-4.4-4.3-7-5.1-9.8-8-4.9-4.8-7.3-9.4-9-7.7-1.8 1.6-.7 4 4.5 8.7 5.2 4.6 7 5.2 14.3 7zm-2.7 16.6C.8 294-1.2 292.8-3 290c-3.2-4.9-4.3-9.1-6-8-2 1-1.5 3.2 2 8 3.4 4.7 4.8 5.5 10.7 8.2z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#fff" stroke="#000" stroke-width="2.1" d="M637.8 230.3c-53.1 59-124 177.2-265.8 177.2-124 0-212.6-118.1-265.7-177.2C159.4 171.3 248 53.2 372 53.2c141.8 0 212.6 118 265.8 177.1z" transform="matrix(.68807 0 0 .61926 0 113.4)"/>
+      <path d="M243.2 184.4c9.8 11 1.6 15.4 12 16.1 10.8.8 4.6 11.6 13.8 12 6.4.2-.7 25.7 5.5 34.2 6.3 8.7 11.5 2.5 11.6 8.9.1 6.5-17 5.9-17.3 26-.5 11.7-14.5 12.5-15.2 20-.8 7 27.5 11 27.2 17.3-.4 6.3-30.7 5.3-32 12.4-.6 6.5 41.6 11.8 45 30.4-6.3 2-24.3 4-37.8 4-85.3 0-146.3-73.1-182.9-109.7 36.6-36.6 97.6-109.7 182.9-109.7 0 0-25.3 23.1-12.8 38.2z"/>
+      <path fill="#fff" stroke-width="1pt" d="M141.4 217h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zm17.7-48.8h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zM177 217h8.8v29.2H177zm0 48.8h8.8V295H177zm17.7-48.8h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zm17.7-48.8h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zm17.8-48.8h8.8v29.2h-8.8zm0 48.8h8.8V295h-8.8z"/>
+      <path stroke-width="1pt" d="M275.5 217h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zm17.7-48.8h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zM311 217h8.8v29.2H311zm0 48.8h8.8V295H311zm17.7-48.8h8.9v29.2h-9zm0 48.8h8.9V295h-9zm17.7-48.8h8.9v29.2h-8.9zm0 48.8h8.9V295h-8.9zm17.8-48.8h8.8v29.2h-8.8zm0 48.8h8.8V295h-8.8z"/>
+    </g>
+    <g fill-rule="evenodd">
+      <path fill="#3d5da7" stroke="#000" stroke-width="1.4" d="M338-.4c-5.5 12.4 9.8-4.1 33.8 16.7a51.2 51.2 0 0110.9 26.2c-5.1-1.2-14.2-7-14.2-7s10.6 12.2 10.6 26.4c-3.7-2.7-5.6-2.3-6.8-5.6 0 4.5 3.3 7.5 3.3 14.6a49.8 49.8 0 00-7.3-5.7c3.5 7.1-6.5 20.9-1.5 25.5-8.7-1.5-17.7-8-21.2-15-1.9 1.4-2 3.7-2.2 6.2.3.2-13.3-11.7-12-16.3-1.9 3-2.1 4.6-2.5 8a44 44 0 01-11.3-18.8l-4.6 6.7c-1.6-11.7-1.6-11.3 1.7-21.3a84.4 84.4 0 00-6.6 5.9A67.8 67.8 0 01338-.4z" transform="matrix(.9094 0 0 .78749 -110.6 166.1)"/>
+      <path fill="#a70000" d="M184.4 213.6c.8-6.7 2.5-9.3 3-13.6 1-7.7-.1-13.2 2.6-13.1 2.7.1 3.5 3 2.2 10.6-1.4 7.6-2.5 9.5-7.8 16.1zm14.1 12.4c-.5-5.7.5-8.1.2-11.8-.6-6.4-2.6-10.8-.3-11.2 2.4-.4 3.6 1.7 3.8 8.3.3 6.5-.3 8.2-3.7 14.7zm22.1 10c-2.4-4.8-4.5-6.3-6-9.5-2.8-5.6-3.3-10.1-5.4-9.3-2.2.8-2 3.2 1 8.7 3 5.4 4.5 6.5 10.4 10.2zm7.6-44c-6-3.3-9.2-3.3-13.2-5.4-6.9-3.6-11-7.7-12.4-5.5-1.4 2.3.5 4.5 7.7 7.8 7.1 3.3 9.3 3.5 18 3zm2.3 18.4c-4.5-3.7-7.1-4.3-10-6.7-5-4.1-7.6-8.2-9.3-6.6-1.6 1.7-.5 3.9 4.8 7.8 5.3 4 7.1 4.5 14.5 5.5z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tc.svg
new file mode 100644
index 0000000..a78d1fe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tc.svg
@@ -0,0 +1,67 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tc" viewBox="0 0 640 480">
+  <path fill="#006" d="M640 480V0H0v480h640z"/>
+  <path fill="#006" fill-rule="evenodd" d="M0 0h373.7v232.2H0z"/>
+  <g stroke-width="1pt">
+    <path fill="#fff" d="M0 0v26l331.9 206.2h41.8v-26L41.7 0H0zm373.7 0v26l-332 206.2H0v-26L331.9 0h41.8z"/>
+    <path fill="#fff" d="M155.7 0v232.2H218V0h-62.3zM0 77.4v77.4h373.7V77.4H0z"/>
+    <path fill="#c00" d="M0 92.9v46.4h373.7V92.9H0zM168.2 0v232.2h37.3V0h-37.4zM0 232.2l124.6-77.4h27.8L27.8 232.2H0zM0 0l124.6 77.4H96.7L0 17.3V0zm221.3 77.4L345.8 0h27.9L249 77.4h-27.8zm152.4 154.8L249 154.8h28l96.7 60v17.4z"/>
+  </g>
+  <path fill="#fff" d="M612.5 212.4v80c0 65.6-25.7 125.6-102.2 162.1C434 418 408.1 358 408.1 292.3v-79.8h204.5z"/>
+  <path fill="#fdc300" d="M605.7 220.6V295c0 61.2-24 117.2-95.3 151.3-71.3-34-95.4-90-95.4-151.3v-74.5h190.7z"/>
+  <g stroke="#000" stroke-width=".1">
+    <path fill="#ff9e3d" d="M206 52.9a2 2 0 00-1.3-.5c.1-1.3-.8-1.8-1.5-2-.7-.3-1-.6-1-1.1-.1-.5-.5-.9-1.1-1-.6-.2-1.2-.8-1.4-1.1-.2-.3-.3-.3-.5.2s-.9 1.5-.2 1.5c-.5.4-.8.8-.5 1.4-.3.3-.5.7-.1.8l.6.4c-.4 0-.5.8.4 1-.2 0-.3.6.1.6-.5 0-1 .8-1.6.8-.7 0-1 .2-1 .5l-.6.8c.5 0 .8 0 1-.2s.7-.3 1 0c.3.2 1 .3 1.2.2-.6.5-1 1-1.1 1.6 0 .6-.5 1.2-1 1.4-.3.2-1 .6-1.1 1.2.5 1.4 1.3 1.7 2.1 2.1 1.4.6 2.3 1.1 2.9 1.8.6.6.8.1 1.7 1.3.9 1 1.7 3.2 2.6 3.5.9.4 2 .2 2.6-1 .7-1 1-12.4-2.2-14.3z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="#ff927f" d="M207.5 48.1c-.9 1-2 1.8-1.7 3.4s.3 4.2-1.2 5c-1.4 1-2.1 3.2-.4 4.5 1.8 1.3 1.9 2.9 2.1 4.3.3 1.5 1.1 2.7 2.3 1.7 1.2.2 1.8-.3 1.8-1.3s0-1.4 1-1.7c.8-.3 1-.6 1.5-1.4.4-.8.6-1.2.4-1.6a3.7 3.7 0 01-.2-2.2c.2-.7-.2-1-.4-1.5a1.9 1.9 0 01-.2-1.4c0-.6-.2-1-.6-1.3-.4-.3-.6-.6-.5-1 0-.5-.3-.8-.8-1.2s-.7-.8-.7-1.5-1.4-2.3-2.4-2.8z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="#ff9ee1" d="M207.8 67.3c2-.5 1.8-3.7 1.5-5-.3-1.4-1-3.3-.5-4.9.8-2.1-1-4.2-.5-5 .5-.9.4-1.3.3-1.6 0-.2-.5-.4-.5.1 0 .6-.2.8-.5 1.1s-.3 1.2 0 2c.2.9.8 2.2 0 3.9-1 1.7-.6 2.4-.3 3.2.6 1.3 1.8 5.6.5 6.2z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="none" d="M199 48.9c.2 0 .6 0 .6.2m-1 1.2c.2-.2.7 0 1.1-.2m-.7 1.4c.3 0 .8 0 1.3-.4m-.9 1.4c.4 0 1-.2 1.1-.7m-1 1.3c.7 0 1.5.2 1.6 0m-1.5 2.1c.4-.4 1.4-.7 1.7-1m-.6-5.5c.7.2.4.7.8 1 .6.4 0 1 .6 1.1.5.2.5.3.3.9-.1.7.5.7.3 1.2m2-.5c-.3 0-1.2 0-1.5.8m-4.8 7.7c.4 0 .5-.1.6-.3.1-.2.2-.4.5-.4s.8-.1.9-.3c0-.3.4 0 .7-.7.4-.6.6-1.3 1.4-1.6" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+  </g>
+  <g stroke="#000" stroke-width=".1">
+    <path fill="#00a728" d="M221.8 73.8c.3.4 0 1 .5 1.2.7.2.1 1 .9 1.4.7.3 0 1 .7 1.5.7.3 0 1 .8 1.5 1 .5-.2 1.5.5 1.9.7.4-.2 1.4.6 1.8.7.4-.4 1.1.4 1.7.7.5-.2 1.4.5 1.9s-.4 1.2.3 1.9c.6.5-.2 1 .2 2 .3.5-.3 2.7-1.8 2.5-.6 1-2.7 1.8-3.5 1.5-.8.6-3.3 1.3-4.6.1-1.3 1.2-3.8.5-4.6 0-.8.2-3-.7-3.5-1.6-1.6.2-2.1-2-1.8-2.6.4-.8-.4-1.4.2-2 .7-.6-.5-1.3.3-1.8s-.2-1.4.5-2c.8-.5-.4-1.3.4-1.6.8-.4-.1-1.4.6-1.8.6-.4-.4-1.4.5-1.9.9-.4 0-1.2.8-1.5.7-.4 0-1.2.7-1.5.8-.3.2-1.2.9-1.4.6-.3.2-.8.5-1.3 1.7.7 6.8 1.2 9 0z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="#fdc300" d="M213.5 76.7c0 .2 0 .5-.2.8-.5.6.2 1-.4 1.7-.5.7.1 1.2-.5 1.8-.6.6.1 1.2-.5 1.8-.6.7.1 1.2-.5 1.8-.6.6.1 1.3-.5 1.9-.6.6.1 1.4-.5 2-.7.8 0 1.4-.5 2-.5.5 0 1-.4 1.4.6-.5.6-1.3 1.1-1.6.5-.4-.1-1 .2-1.3s0-1.4.5-2 0-1.7.5-2 .1-1.6.7-2 0-1.3.4-1.8c.5-.5 0-1.3.5-2 .4-.5 0-1.1.3-1.6.2-.2.2-1.8-.2-1zm1.6.7c-.4.7.3.9-.2 1.6s.3 1.3-.3 2 .3 1.1-.2 1.8c-.5.8.2 1.2-.2 1.7-.5.6.3 1.1-.2 1.8-.6.7.2 1.2-.3 1.8-.4.6.2 1.3-.2 1.8s.3 1.2-.3 1.9.1 1-.2 1.5c.7-.2.4-1.1.7-1.3.2-.2-.1-1.5.3-1.8.4-.4-.3-1.4 0-1.8.7-.8.2-1.3.5-1.9.4-.6-.1-1.3.2-1.7.5-.7-.2-1.3.1-1.8.5-.7 0-1.2.3-1.7.5-.7 0-1.4.1-1.8.3-.3.6-1.9 0-2.1zm2.2.6c-.4 1 .3 1.3 0 2.1-.2.8.3 1.4 0 2.2-.3.9.4 1.5 0 2.6s.3 1.4 0 2.5c-.3 1.2.5 1.9 0 2.8-.6.9.6 1.2 0 2.1-.2.5 0 1.6.5.2.5-1.3-.3-1.5 0-2 .5-.6 0-2 .1-2.9.2-.7-.4-1.8 0-2.6.3-.9-.6-1.8-.2-2.5.3-.7-.2-1.6.2-2.2.3-.6-.3-1.4-.2-1.7.2-.3-.1-1.6-.4-.6z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="#ef072d" d="M221.5 74.4c0-6.3-1-8.5-4.2-8.5-3.3 0-4.2 2.2-4.2 8.5h8.4z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="none" d="M214.3 73.9c-.6.6.1 1-.5 1.8-.6.7 0 1.1-.5 1.8s.2 1-.4 1.7c-.5.7.2 1.2-.5 1.8-.6.6.1 1.2-.5 1.8-.6.7.1 1.2-.5 1.8-.6.6.1 1.2-.5 1.9-.6.6.1 1.4-.5 2-.7.8 0 1.4-.5 2s0 1-.4 1.4c-.4.4-.5 1-.3 1.2m6.3-19c-.6.8.3 1-.2 1.7-.5.6.2.8-.2 1.6s.3.9-.2 1.6.3 1.3-.3 2 .3 1.1-.2 1.8c-.5.8.2 1.2-.2 1.7-.5.6.3 1.1-.3 1.8-.5.7.3 1.2-.2 1.8-.4.6.2 1.3-.2 1.8s.3 1.2-.3 1.9.1 1-.2 1.5c-.3.5-.6 1.1-.3 1.3m4.6-19.8c-.3 1.2.4 2.2 0 3.2s.3 1.3 0 2.1c-.2.8.3 1.4 0 2.2-.3.9.4 1.5 0 2.6s.3 1.4 0 2.5c-.3 1.2.6 1.9 0 2.8-.6.9.5 1.1 0 2.1-.4 1 .3 1.4 0 2.4m3-20.8c.6.6-.2 1 .5 1.8.6.7 0 1.1.5 1.8s-.2 1 .3 1.7c.6.7 0 1.2.5 1.8.7.6 0 1.2.5 1.8.7.7 0 1.2.6 1.8.6.6-.2 1.2.5 1.9.6.6-.1 1.4.5 2 .7.8-.1 1.4.5 2 .5.5 0 1 .4 1.4.4.4.5 1 .3 1.2m-6.3-19c.5.8-.3 1 .2 1.7.5.6-.2.8.2 1.6.4.7-.3.9.2 1.6s-.3 1.3.3 2-.3 1.1.2 1.8c.5.8-.2 1.2.2 1.7.5.6-.3 1.1.2 1.8.6.7-.2 1.2.3 1.8.4.6-.2 1.3.2 1.8s-.3 1.2.3 1.9-.1 1 .2 1.5c.3.5.6 1.1.3 1.3" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path d="M213.1 74.4c0-6.3 1-8.5 4.2-8.5-1.5 0-2.4 1.2-2.7 2s-.1.7.2.4.2.4 0 .7c-.3.4-.6 1.4-.2 1 .4-.2.7.1.2.7s-.7 2-.3 1.5c.4-.5.5.3.2.7-.2.4-.2.7 0 .6.3-.2.2.6 0 1h-1.6zm7.7-.3c0-5-.6-6.5-1.8-7-.7-.3-.7-.2-.4.3s.3 1 0 .6-.4-.5-.6-.3l.8 2c.3.6 0 1-.4.3s-.4-.1 0 .5c.5.7.4 2.9.4 3.8l2-.2z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+    <path fill="#ef072d" d="M217.3 75.3c1.3 0 2.7-.2 3.7-.6 1.1-.4 1.2-.8.8-1.3-.3-.4-.9-.2-1.5.1a11.2 11.2 0 01-6 0c-.6-.2-1.2-.5-1.5-.1-.4.5-.4.9.8 1.3 1 .4 2.4.6 3.7.6z" transform="matrix(3.909 0 0 3.9094 -339.1 46.6)"/>
+  </g>
+  <g fill="#b95a1e" fill-rule="evenodd">
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.053 -.03423 .03246 .0559 489 284.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.0608 -.01361 .0129 .06412 500 261)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(.06216 0 0 .06555 509.3 249.3)"/>
+    <path stroke="#000" stroke-width="8.1" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(.03857 0 0 .06555 527.7 292.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c106.3 0 124-35.4 124-35.4s35.5-70.9 17.8-88.6c-17.7-17.7-141.8-17.7-141.8-17.7V255z" transform="matrix(.06216 0 0 .06555 509.3 287.7)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c88.6 0 141.8-35.4 141.8-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-159.5-17.7-159.5-17.7v141.7z" transform="matrix(.06216 0 0 .06555 509.3 283)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s70.8-88.6 194.9-177.2c124-88.6 213.7-156.7 230.3-141.7 0 17.7-106.3 106.3-195 177.2-88.5 70.8-194.8 177.1-194.8 177.1l-35.4-35.4z" transform="matrix(.07714 0 0 .06555 497.2 249.5)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s70-52 204.4-124c132.2-64 318.9-53.2 318.9-35.5-17.8 17.8-177.2 17.8-283.5 70.9C971 75.5 868 148.8 868 148.8l-35.4-35.4z" transform="matrix(.07714 0 0 .06555 497.9 254.1)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s61.6-35 204.4-88.6c141.7-53.1 329.8-17.7 329.8 0-17.7 17.7-170.4 7-276.7 35.4-110 27.8-222 88.6-222 88.6l-35.5-35.4z" transform="matrix(.07714 0 0 .06555 498 262.1)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s71-71 222.4-88.6c152.3-17.7 276.3 88.6 276.3 106.3-17.7 17.7-159.5-78-265.7-64.3-112.6 13.7-197.6 82-197.6 82l-35.5-35.4z" transform="matrix(.07714 0 0 .06555 498.4 270.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 159.5-45.5 159.5-45.5s35.4-70.8 17.7-88.6c-17.7-17.7-177.2-7.6-177.2-7.6V255z" transform="matrix(.06216 0 0 .06555 509.3 277.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(.06216 0 0 .06555 509.3 272.6)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s35.3-70.9 17.6-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(.06216 0 0 .06555 509.3 266.8)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s17.7-70.9 0-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(.06216 0 0 .06555 509.3 261)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4S946.9 24.8 946.9-46.1c0-70.8-50.4-141.7-64.6-177.1 28.5 0 93.1 106.3 93.1 177.1 0 77.5-107.3 195-107.3 195l-35.4-35.5z" transform="matrix(.07714 0 0 .06555 495.7 244.7)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s-14.3-53.2-14.3-159.5a355 355 0 0185.7-230.3C910-249 847-152.4 847-46c0 77.5 21.1 195 21.1 195l-35.4-35.5z" transform="matrix(.07714 0 0 .06555 495.7 244.7)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s0-70.9-17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7v141.7z" transform="matrix(.06216 0 0 .06555 509.3 255.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s0-70.9-17.8-88.6c-17.7-17.7-177.2-17.7-177.2-17.7V255z" transform="matrix(.06216 0 0 .06555 509.3 249.3)"/>
+    <path stroke="#fdc301" stroke-width="16.1" d="M318.9 1318.1c55-122.3 70.9-336.6 70.9-372 0-99.8-33-585.2-35.5-779.6s124-301.2 248-301.2c106.4 0 177.2 71 177.2 177.2h-53.1a121 121 0 00-124-124c-106.3 0-188 83.7-195 248-7.5 190 21.4 683 17.8 815S374 1231.2 318.9 1318z" transform="matrix(-.06216 0 0 .06555 606.2 249.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.053 -.03423 -.03246 .0559 626.5 284.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 32.9C903.7 33 957.3 135.3 957 133.2l-35.7 33.3c-19 17.8-141.8 17.8-140.2 17.7l-1.6-151.3z" transform="matrix(.06216 0 0 .06555 509.3 249.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.0608 -.01361 -.0129 .06412 615.5 261)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.4 912.6v179.2c.1 75.7 19.8 105 54.3 103.6 34.4-1.3 41-58.8 34.5-92-6.6-33.3-53.2-199-53.2-199l-35.6 8.2z" transform="matrix(-.06216 0 0 .06555 606.2 249.3)"/>
+    <path stroke="#000" stroke-width="8.1" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(-.03857 0 0 .06555 587.8 292.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c106.3 0 124-35.4 124-35.4s35.5-70.9 17.8-88.6c-17.7-17.7-141.8-17.7-141.8-17.7V255z" transform="matrix(-.06216 0 0 .06555 606.2 287.7)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c88.6 0 141.8-35.4 141.8-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-159.5-17.7-159.5-17.7v141.7z" transform="matrix(-.06216 0 0 .06555 606.2 283)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s70.8-88.6 194.9-177.2c124-88.6 213.7-156.7 230.3-141.7 0 17.7-106.3 106.3-195 177.2-88.5 70.8-194.8 177.1-194.8 177.1l-35.4-35.4z" transform="matrix(-.07714 0 0 .06555 618.3 249.5)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s70-52 204.4-124c132.2-64 318.9-53.2 318.9-35.5-17.8 17.8-177.2 17.8-283.5 70.9C971 75.5 868 148.8 868 148.8l-35.4-35.4z" transform="matrix(-.07714 0 0 .06555 617.6 254.1)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s61.6-35 204.4-88.6c141.7-53.1 329.8-17.7 329.8 0-17.7 17.7-170.4 7-276.7 35.4-110 27.8-222 88.6-222 88.6l-35.5-35.4z" transform="matrix(-.07714 0 0 .06555 617.6 262.1)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s71-71 222.4-88.6c152.3-17.7 276.3 88.6 276.3 106.3-17.7 17.7-159.5-78-265.7-64.3-112.6 13.7-197.6 82-197.6 82l-35.5-35.4z" transform="matrix(-.07714 0 0 .06555 617 270.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 159.5-45.5 159.5-45.5s35.4-70.8 17.7-88.6c-17.7-17.7-177.2-7.6-177.2-7.6V255z" transform="matrix(-.06216 0 0 .06555 606.2 277.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 177.2-35.4 177.2-35.4s35.4-70.9 17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7V255z" transform="matrix(-.06216 0 0 .06555 606.2 272.6)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s35.3-70.9 17.6-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(-.06216 0 0 .06555 606.2 266.8)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s17.7-70.9 0-88.6c-17.7-17.7-212.6-17.7-212.6-17.7V255z" transform="matrix(-.06216 0 0 .06555 606.2 261)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4S946.9 24.8 946.9-46.1c0-70.8-50.4-141.7-64.6-177.1 28.5 0 93.1 106.3 93.1 177.1 0 77.5-107.3 195-107.3 195l-35.4-35.5z" transform="matrix(-.07714 0 0 .06555 619.8 244.7)"/>
+    <path stroke="#000" stroke-width="5.7" d="M832.7 113.4s-14.3-53.2-14.3-159.5a355 355 0 0185.7-230.3C910-249 847-152.4 847-46c0 77.5 21.1 195 21.1 195l-35.4-35.5z" transform="matrix(-.07714 0 0 .06555 619.8 244.7)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 212.6-35.4 212.6-35.4s0-70.9-17.7-88.6c-17.7-17.7-194.9-17.7-194.9-17.7v141.7z" transform="matrix(-.06216 0 0 .06555 606.2 255.2)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 255.1c159.6-1.4 195-35.4 195-35.4s0-70.9-17.8-88.6c-17.7-17.7-177.2-17.7-177.2-17.7V255z" transform="matrix(-.06216 0 0 .06555 606.2 249.3)"/>
+    <path stroke="#fdc301" stroke-width="16.1" d="M318.9 1318.1c55-122.3 70.9-336.6 70.9-372 0-99.8-33-585.2-35.5-779.6s124-301.2 248-301.2c106.4 0 177.2 71 177.2 177.2h-53.1a121 121 0 00-124-124c-106.3 0-188 83.7-195 248-7.5 190 21.4 683 17.8 815S374 1231.2 318.9 1318z" transform="matrix(.06216 0 0 .06555 509.3 249.3)"/>
+    <path stroke="#000" stroke-width="6.4" d="M779.5 32.9C903.7 33 957.3 135.3 957 133.2l-35.7 33.3c-19 17.8-141.8 17.8-140.2 17.7l-1.6-151.3z" transform="matrix(-.06216 0 0 .06555 606.2 249.3)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/td.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/td.svg
new file mode 100644
index 0000000..734473e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/td.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-td" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#000067" d="M0 0h214v480H0z"/>
+    <path fill="red" d="M426 0h214v480H426z"/>
+    <path fill="#ff0" d="M214 0h212v480H214z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tf.svg
new file mode 100644
index 0000000..3913728
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tf.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-tf" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" fill="#fff" d="M0-21l12.3 38L-20-6.5h40L-12.3 17z"/>
+  </defs>
+  <path fill="#002395" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h292.8v196.8H0z"/>
+  <path fill="#002395" d="M0 0h96v192H0z"/>
+  <path fill="#ed2939" d="M192 0h96v192h-96z"/>
+  <path fill="#fff" d="M426 219.6l15.4 24.6h44V330l-33-51.6-44.4 70.8h21.6l22.8-40.8 46.8 84 46.8-84 22.8 40.8h21.6L546 278.4 513 330v-47.4h19.8l14.7-23.4H513v-15h44l15.4-24.6H426zm51.6 105h-48v16.8h48zm91.2 0h-48v16.8h48z"/>
+  <use width="100%" height="100%" x="416" y="362" transform="scale(1.2)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="371" y="328" transform="scale(1.2)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="461" y="328" transform="scale(1.2)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="333" y="227" transform="scale(1.2)" xlink:href="#a"/>
+  <use width="100%" height="100%" x="499" y="227" transform="scale(1.2)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tg.svg
new file mode 100644
index 0000000..09ba198
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tg.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tg" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tg-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#tg-a)" transform="scale(.9375)">
+    <path fill="#ffe300" d="M0 0h767.6v512H0z"/>
+    <path fill="#118600" d="M0 208.1h767.6V311H0zM0 .2h767.6v102.9H0z"/>
+    <path fill="#d80000" d="M0 .3h306.5v310.6H0z"/>
+    <path fill="#fff" d="M134.4 128.4c0-.8 18.9-53 18.9-53l17 52.2s57.4 1.7 57.4.8-45.3 34.3-45.3 34.3 21.4 60 20.5 58.2c-.8-1.7-49.6-36-49.6-36s-49.7 34.3-48.8 34.3c.8 0 18.8-56.5 18.8-56.5l-44.5-33.4 55.6-.9z"/>
+    <path fill="#118600" d="M0 409.2h767.6V512H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/th.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/th.svg
new file mode 100644
index 0000000..66fcd8e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/th.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-th" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#f4f5f8" d="M0 0h640v480H0z"/>
+    <path fill="#2d2a4a" d="M0 162.5h640v160H0z"/>
+    <path fill="#a51931" d="M0 0h640v82.5H0zm0 400h640v80H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tj.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tj.svg
new file mode 100644
index 0000000..92ac160
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tj.svg
@@ -0,0 +1,22 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-tj" viewBox="0 0 640 480">
+  <path fill="#060" d="M0 0h640v480H0z"/>
+  <path fill="#fff" d="M0 0h640v342.9H0z"/>
+  <path fill="#c00" d="M0 0h640v137.1H0z"/>
+  <path fill="#f8c300" d="M300.8 233.6a8.6 8.6 0 0116 4V272h6.4v-34.3a8.6 8.6 0 0116-4 20.2 20.2 0 10-38.4 0"/>
+  <path fill="#fff" d="M305.4 224.7a13.7 13.7 0 0114.6 6.5 13.7 13.7 0 0114.6-6.5 14.7 14.7 0 00-29.2 0"/>
+  <path id="a" fill="#f8c300" d="M316.8 258.3a26 26 0 01-43.8 16.6 27 27 0 01-41 12c2.5 25 40 19.9 42.8-4.4 11.7 20.7 37.6 14.7 45.2-10.6z"/>
+  <use width="100%" height="100%" fill="#f8c300" transform="matrix(-1 0 0 1 640 0)" xlink:href="#a"/>
+  <path id="b" fill="#f8c300" d="M291.8 302.6c-5.3 11.3-15.7 13.2-24.8 4.1 0 0 3.6-2.6 7.6-3.3-.8-3.1.7-7.5 2.9-9.8a15 15 0 016.1 8.1c5.5-.7 8.2 1 8.2 1z"/>
+  <use width="100%" height="100%" fill="#f8c300" transform="rotate(9.4 320 551.3)" xlink:href="#b"/>
+  <use width="100%" height="100%" fill="#f8c300" transform="rotate(18.7 320 551.3)" xlink:href="#b"/>
+  <path fill="none" stroke="#f8c300" stroke-width="11" d="M253.5 327.8a233.1 233.1 0 01133 0"/>
+  <g fill="#f8c300" transform="translate(320 164.6) scale(.68571)">
+    <path id="c" d="M301930 415571l-790463-574305h977066l-790463 574305L0-513674z" transform="scale(.00005)"/>
+  </g>
+  <g id="d" fill="#f8c300" transform="translate(320 260.6) scale(.68571)">
+    <use width="100%" height="100%" transform="translate(-70 -121.2)" xlink:href="#c"/>
+    <use width="100%" height="100%" transform="translate(-121.2 -70)" xlink:href="#c"/>
+    <use width="100%" height="100%" transform="translate(-140)" xlink:href="#c"/>
+  </g>
+  <use width="100%" height="100%" fill="#f8c300" transform="matrix(-1 0 0 1 640 0)" xlink:href="#d"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tk.svg
new file mode 100644
index 0000000..312e881
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tk.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tk" viewBox="0 0 640 480">
+  <path fill="#00247d" d="M0 0h640v480H0z"/>
+  <path fill="#fed100" d="M108.1 354.6c-6.7-.1 62.8-37 120.9-84.4 76.2-62.1 240.3-161.4 288.6-177.6 5-1.7-10.3 8.6-12.3 11.9-51.5 61-10.4 176 54 233.9 19.4 14.8 18.4 15.6 54.3 17v3.4l-505.5-4.2zm-4.2 6.7s-4.9 3.5-4.9 6.1c0 2.9 5.5 6.7 5.5 6.7l498.5 5.5 9.2-6.1-12.8-7.9-495.5-4.3z"/>
+  <path fill="#fff" d="M106.8 109.1l-4 12.2 10.4-7.5 10.3 7.5-3.9-12.2 10.3-7.5h-12.8l-3.9-12.2-4 12.2H96.4zm78.1 57.4l8.6-6.3h-10.7l-3.3-10.1-3.3 10.1h-10.6l8.6 6.3-3.3 10.1 8.6-6.3 8.7 6.3zm-145.2 13l-4-12.2-3.9 12.2H19l10.3 7.5-3.9 12.2 10.3-7.5 10.4 7.5-4-12.2 10.4-7.5zm78.1 122.3l-4.6-14.2-4.6 14.2h-15l12.1 8.7-4.6 14.3 12.1-8.8 12.1 8.8-4.7-14.3 12.1-8.7z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tl.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tl.svg
new file mode 100644
index 0000000..94738dd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tl.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tl" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tl-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#tl-a)" transform="scale(.9375)">
+    <path fill="#cb000f" d="M0 0h1031.2v512H0z"/>
+    <path fill="#f8c00c" d="M0 0c3.2 0 512 256.7 512 256.7L0 512V0z"/>
+    <path d="M0 0c2.1 0 340.6 256.7 340.6 256.7L0 512V0z"/>
+    <path fill="#fff" d="M187.7 298.2L127 284.7l-31 52.8-5-59.7-60.7-13.3 54.9-24.9-3.3-59.3 40.2 43.4 55.4-25.3-28.9 54 39.2 45.8z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tm.svg
new file mode 100644
index 0000000..a0fadb6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tm.svg
@@ -0,0 +1,206 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tm" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tm-a">
+      <path fill-opacity=".7" d="M42.7 0h682.6v512H42.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#tm-a)" transform="translate(-40) scale(.9375)">
+    <path fill="#28ae66" d="M0 0h768v512H0z"/>
+    <g fill="#fff" stroke-width="1pt">
+      <path d="M263.3 137.5c27.9 13.4 61.1 0 73.1-18.6 12.4-17.4 13.9-46.5-7.4-73.2 33 27.4 40.4 58.5 23.9 84.1-22 29.3-70.6 28.4-89.6 7.7z"/>
+      <path d="M312.8 69.4l5.6.1L314 73l1.7 5.6-4.7-3.3-4.5 3.3 1.5-5.5-4.5-3.5 5.6-.1L311 64zm-27.7 34.8h5.6l-4.4 3.6 1.7 5.5-4.7-3.3-4.6 3.4 1.6-5.6-4.5-3.4 5.6-.2 1.8-5.5zm1.8-27.4h5.7l-4.5 3.6 1.7 5.5-4.6-3.3-4.6 3.4 1.6-5.6-4.5-3.5 5.6-.1 1.8-5.5zm0-27.5h5.7L288 53l1.7 5.5-4.6-3.2-4.6 3.3 1.6-5.5-4.5-3.5 5.6-.1L285 44zm-30.7 34.8h5.6l-4.5 3.6 1.7 5.5-4.6-3.3-4.6 3.4 1.6-5.6-4.5-3.4 5.6-.2 1.8-5.5z"/>
+    </g>
+    <path fill="#ca3745" d="M47.5 0h164.6v512H47.5z"/>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M47.5 133.5v-3.7l6.8-9.1-1.3-1.9 4-5.4-1.3-1.9-2.7 3.7-1.4-1.8 9.6-12.8 1.4 1.8-1.4 1.8L64 108l6.8-9.2-6.9-8.9-2.7 3.4 1.4 1.9-1.4 1.8-9.6-12.8 1.4-1.8 2.7 3.6 1.4-1.8-4.1-5.5 1.3-1.8-6.8-9.2V64l9.6 12.8-1.4 1.8 4.1 5.5-2.7 3.7 2.7 3.6L64 86l9.7 13-9.7 12.6-4-5.5-2.8 3.7 2.7 3.7-4 5.4 1.3 1.9-9.6 12.8z"/>
+      <path d="M47.5 87.8l1.4 3.6V97H53l2.8 1.8-2.8 1.9h-4v5.4l-1.4 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M47.5 221.3v-3.7l6.8-9.1-1.3-1.9 4-5.5-1.3-1.8L53 203l-1.4-1.9 9.6-12.8 1.4 1.9-1.4 1.8 2.8 3.7 6.8-9.2-6.9-8.9-2.7 3.4 1.4 1.9-1.4 1.8-9.6-12.8L53 170l2.7 3.6 1.4-1.8-4.1-5.5 1.3-1.8-6.8-9.2v-3.6l9.6 12.8-1.4 1.8 4.1 5.5-2.7 3.6 2.7 3.7 4.1-5.5 9.7 13-9.7 12.6-4-5.5-2.8 3.7 2.7 3.6-4 5.5 1.3 1.9-9.6 12.8z"/>
+      <path d="M47.5 175.5l1.4 3.7v5.5H53l2.8 1.8-2.8 1.8h-4v5.5l-1.4 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M47.5 309v-3.6l6.8-9.2-1.3-1.8 4-5.5-1.3-1.8-2.7 3.6-1.4-1.8 9.6-12.8 1.4 1.8-1.4 1.9 2.8 3.7 6.8-9.2-6.9-9-2.7 3.5 1.4 1.8-1.4 1.8-9.6-12.8 1.4-1.8 2.7 3.7 1.4-1.9-4.1-5.4 1.3-1.9-6.8-9.1v-3.7l9.6 12.8-1.4 1.9 4.1 5.4-2.7 3.7 2.7 3.7 4.2-5.5 9.6 13-9.7 12.6-4-5.5-2.8 3.6 2.7 3.7-4 5.5 1.3 1.8-9.6 12.8z"/>
+      <path d="M47.5 263.3L49 267v5.5h4l2.8 1.8L53 276h-4v5.5l-1.4 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M47.5 391.3v-3.7l6.8-9.1-1.3-1.8 4-5.5-1.3-1.8L53 373l-1.4-1.8 9.6-12.8 1.4 1.8-1.4 1.8 2.8 3.7 6.8-9.1-6.9-9-2.7 3.5 1.4 1.8-1.4 1.8-9.6-12.8 1.4-1.8 2.7 3.7 1.4-1.9-4.1-5.5 1.3-1.8-6.8-9.1v-3.7l9.6 12.8-1.4 1.8 4.1 5.5-2.7 3.7 2.7 3.6 4.2-5.4 9.6 13-9.7 12.6-4-5.5-2.8 3.6 2.7 3.7-4 5.5 1.3 1.8-9.6 12.8z"/>
+      <path d="M47.5 345.6l1.4 3.6v5.5H53l2.8 1.9-2.8 1.8h-4v5.5l-1.4 3.6v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M212.1 133.5v-3.7l-6.8-9.1 1.4-1.9-4.1-5.4 1.3-1.9 2.8 3.7 1.4-1.8-9.6-12.8-1.4 1.8 1.4 1.8-2.9 3.7-6.7-9.2 6.8-8.9 2.8 3.4-1.4 1.9 1.3 1.8 9.6-12.8-1.3-1.8-2.8 3.6-1.3-1.8 4-5.5-1.3-1.8 6.8-9.2V64l-9.5 12.8 1.3 1.8-4 5.5 2.7 3.7-2.8 3.6-4.1-5.5-9.7 13 9.7 12.6 4.1-5.5 2.8 3.7-2.8 3.7 4.1 5.4-1.3 1.9 9.5 12.8z"/>
+      <path d="M212.1 87.8l-1.4 3.6V97h-4l-2.8 1.8 2.7 1.9h4.1v5.4l1.4 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M212.6 221.3v-3.7l-6.8-9.1 1.3-1.9-4-5.5 1.3-1.8 2.7 3.7 1.4-1.9-9.6-12.8-1.4 1.9 1.4 1.8-2.8 3.7-6.8-9.2 6.9-8.9 2.7 3.4-1.4 1.8 1.4 1.9 9.6-12.8-1.4-1.9-2.7 3.7-1.4-1.8 4.1-5.5-1.3-1.8 6.8-9.2v-3.6l-9.6 12.8 1.4 1.8-4.1 5.5 2.7 3.6-2.7 3.7-4.1-5.5-9.7 13 9.7 12.6 4-5.5 2.8 3.7-2.7 3.6 4 5.5-1.3 1.8 9.6 12.8z"/>
+      <path d="M212.6 175.5l-1.4 3.7v5.5H207l-2.8 1.8 2.8 1.8h4v5.5l1.5 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M212.1 309v-3.6l-6.8-9.2 1.4-1.8-4.1-5.5 1.3-1.8 2.8 3.6 1.4-1.8-9.6-12.8-1.4 1.8 1.4 1.9-2.9 3.7-6.7-9.2 6.8-9 2.8 3.5-1.4 1.8 1.3 1.8 9.6-12.8-1.3-1.8-2.8 3.7-1.3-1.9 4-5.4-1.3-1.9 6.8-9.1v-3.7l-9.5 12.8 1.3 1.9-4 5.4 2.7 3.7-2.8 3.7-4.1-5.5-9.7 13 9.7 12.6 4.1-5.5 2.8 3.6-2.8 3.7 4.1 5.5-1.3 1.8L212 309z"/>
+      <path d="M212.1 263.3l-1.4 3.7v5.5h-4l-2.8 1.8 2.7 1.8h4.1v5.5l1.4 3.7v-22z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M212.1 391.3v-3.7l-6.8-9.1 1.4-1.8-4.1-5.5 1.3-1.8 2.8 3.6 1.4-1.8-9.6-12.8-1.4 1.8 1.4 1.8-2.9 3.7-6.7-9.1 6.8-9 2.8 3.5-1.4 1.8 1.3 1.8L208 342l-1.3-1.8-2.8 3.7-1.3-1.9 4-5.5-1.3-1.8 6.8-9.1v-3.7l-9.5 12.8 1.3 1.8-4 5.5 2.7 3.7-2.8 3.6-4.1-5.4-9.7 13 9.7 12.6 4.1-5.5 2.8 3.6-2.8 3.7 4.1 5.5-1.3 1.8 9.5 12.8z"/>
+      <path d="M212.1 345.6l-1.4 3.6v5.5h-4l-2.8 1.9 2.7 1.8h4.1v5.5l1.4 3.6v-22z"/>
+    </g>
+    <path fill="#faae29" stroke-width="1pt" d="M47.5 34.7v-3.6l6.8-9.2-1.3-1.8 4-5.5-1.3-1.8-2.7 3.7-1.4-1.9 9.6-12.8 1.4 1.9-1.4 1.8L64 9.2 70.8 0h2.8L64 12.8l-4.2-5.5-2.7 3.7 2.7 3.6-4 5.5L57 22l-9.5 12.8zm0-34.7h8.3L53 1.8h-4v5.5L47.4 11V0zm164.6 34.7v-3.6l-6.8-9.2 1.4-1.8-4.1-5.5 1.3-1.8 2.8 3.7 1.3-1.9-9.6-12.8-1.3 1.9 1.3 1.8-2.8 3.7-6.8-9.2H186l9.7 12.8 4.1-5.5 2.8 3.7-2.8 3.6 4.1 5.5-1.3 1.8 9.5 12.8zm0-34.7h-8.2l2.7 1.8h4.1v5.5l1.4 3.7V0z"/>
+    <path fill="#faae29" d="M116.1 504.7s6-10.4 20.8-13.5c14.9-3.2 17.5 6.9 26 6.9s22-7 22-7-13.5 13.3-24 13c-10.3-.3-13.8-7-24.5-6-10.6 1-20.3 6.9-20.3 6.6z"/>
+    <path fill="#faae29" d="M144.8 504.7s-5.9-10.4-20.7-13.5c-15-3.2-17.5 6.9-26 6.9s-22-7-22-7 13.5 13.3 23.9 13c10.4-.3 14-7 24.5-6 10.7 1 20.3 6.9 20.3 6.6z"/>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M96.2 487.5c-1.3-2.7-4.6-14.7-2.9-16.2 2.7-1 9.7 11.3 9 22.2-4.6 2.5-20-1-19.9-4.2 1.1-4.5 9.9-3 13.8-1.8z"/>
+      <path d="M86.8 477c-.8-3-2.2-15.6-.2-16.6 2.7-.2 7.6 13.7 5.3 24.2-4.9 1.2-19.5-6.5-18.8-9.6 1.8-4 10-.2 13.7 2z"/>
+      <path d="M79.2 465.4c-.6-3.2-.8-16 1.2-16.6 2.7.2 6.4 14.8 3.2 24.9-5 .4-18.8-9.6-17.8-12.5 2-3.8 10 1.3 13.4 4.2z"/>
+      <path d="M73.2 453c-.2-3.3 1-16 3.1-16.2 2.7.7 4.6 15.9.2 25.2-4.9-.6-17.4-13.3-16-16 2.4-3.3 9.7 3.4 12.7 7z"/>
+      <path d="M69 439.9c.2-3.3 2.8-15.5 4.9-15.4 2.5 1.3 2.8 16.6-2.5 25-4.8-1.6-15.9-16.5-14.3-19 2.9-2.8 9.3 5.3 12 9.4z"/>
+      <path d="M70.2 425c-.3 13-2.7 13.2-7 3.6-2-3.7-2.2-18.7-.5-19.3 2.5 0 7.4 10.7 7.5 15.7z"/>
+    </g>
+    <g fill="#faae29" stroke-width="1pt">
+      <path d="M164 489c1.3-2.8 4.6-14.8 2.9-16.3-2.7-1-9.6 11.2-9 22.2 4.6 2.5 20.1-1 19.9-4.2-1.1-4.5-9.8-3-13.8-1.8z"/>
+      <path d="M173.4 478.4c.9-3 2.2-15.6.3-16.6-2.7-.2-7.7 13.6-5.3 24.2 4.8 1.2 19.5-6.5 18.7-9.6-1.7-4.1-10-.2-13.7 2z"/>
+      <path d="M181 466.8c.6-3.2.8-16-1.2-16.6-2.7.2-6.4 14.7-3.1 24.8 5 .4 18.8-9.5 17.8-12.5-2.2-3.8-10 1.4-13.5 4.3z"/>
+      <path d="M187 454.3c.2-3.2-1-15.9-3.1-16.1-2.7.7-4.6 15.9-.2 25.2 5-.6 17.4-13.3 16.1-16-2.5-3.4-9.7 3.4-12.8 6.9z"/>
+      <path d="M191.2 441.2c-.1-3.2-2.8-15.5-4.8-15.3-2.6 1.2-2.9 16.6 2.5 25 4.8-1.6 15.8-16.5 14.2-19-2.9-2.8-9.3 5.3-12 9.3z"/>
+      <path d="M190 426.4c.4 13 2.7 13.1 7 3.5 2-3.6 2.2-18.7.5-19.2-2.5 0-7.4 10.7-7.5 15.7z"/>
+    </g>
+    <g transform="matrix(.99985 0 0 1.26515 188.3 -77)">
+      <path fill="#ca3745" stroke="#000" stroke-width=".1" d="M-3.5 290.6H-9v3.5h-5.3v3.5h-21.2l-3.6 3.6 1.8 1.8h8.9l1.7-1.8h-8.8l1.7-1.8h12.4l-5.3 5.3H-39l-3.5-1.7-3.6 1.7h-12.4l-5.3-5.3h12.4l1.8 1.8h-8.9l1.8 1.8h8.9l1.7-1.8-3.5-3.6h-19.5v-3.5h-5.3v-3.5h-5.3v-16h5.3v-3.5h5.3v-3.6h19.5l3.5-3.5-1.7-1.8h-8.9l-1.8 1.8h8.9l-1.8 1.7h-12.4l5.3-5.3H-46l3.6 1.8 3.5-1.8h12.4l5.3 5.3h-12.4l-1.7-1.7h8.8l-1.8-1.8h-8.8L-39 264l3.6 3.5h21.2v3.6h5.3v3.5h5.4v16z" transform="matrix(1.4884 0 0 1.24 3.5 -39.5)"/>
+      <path fill="#28ae66" stroke="#faae29" stroke-width="1.4" d="M375.6 499.7v24.8h10.6v7h10.6v7h35.5l14.2 10.7 14.1-10.6h39v-7l10.6-.1v-7H521v-24.9h-10.7v-7h-10.6v-7.2h-39l-14.1-10.6-14.2 10.6h-35.5v7.2h-10.6v7h-10.6z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#ca3745" d="M-75.6 296.6l-15.8 11v-11h15.8zm31.6 0l15.9 11v-11H-44zm-31.6 28.6l-15.8-11v11h15.8zm31.6 0l15.9-11v11H-44zm5.3-22l-5.3 4.4h10.6l-5.3-4.4zm-42.2 0l-5.2 4.4h10.5l-5.3-4.4zm0 15.4l-5.2-4.4h10.5l-5.3 4.4zm42.2 0l-5.3-4.4h10.6l-5.3 4.4z"/>
+      <path fill="#faae29" d="M-59.8 329.6l-5.3-4.4h10.6l-5.3 4.4zm0-22l-5.3-4.4h10.6l-5.3 4.4zm0-15.4l-5.3 4.5h10.6l-5.3-4.5zm0 22l-5.3 4.4h10.6l-5.3-4.4z"/>
+      <path fill="#faae29" stroke="#000" stroke-width=".1" d="M467.7 506.7H482v3.5h-14.2z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#c00" stroke="#000" stroke-width=".1" d="M414.6 510.2h7v3.6h-7zm56.7 0h7v3.6h-7z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#900" stroke="#000" stroke-width=".1" d="M439.4 489h14.1v3.5h-14.1zm0 7h14.1v3.6h-14.1z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#900" stroke="#000" stroke-width=".1" d="M435.8 492.5h21.3v3.6h-21.3zm3.6 32h14.1v3.4h-14.1zm0 7h14.1v3.5h-14.1zm-3.6-3.5h21.3v3.5h-21.3z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <path fill="#faae29" stroke="#000" stroke-width=".1" d="M467.7 513.8H482v3.5h-14.2zm-56.7-7.1h14.2v3.5H411zm0 7h14.2v3.6H411zm-3.5-3.5h7v3.6h-7zm14.2 0h7v3.6h-7zm42.5 0h7v3.6h-7zm14.2 0h7v3.6h-7z" transform="matrix(.74419 0 0 .62 -392 -6.5)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -374.1 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -367.6 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -361 -39)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.5 -41.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -41.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -36.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -36.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -353.2 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -346.6 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -340 -50)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -350.5 -52.2)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -342.7 -52.2)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -350.6 -47.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -342.7 -47.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -374.2 -60.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -367.6 -60.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -361 -61)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -63.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -63.1)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -371.6 -58.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -363.7 -58.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -395.3 -49.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -388.7 -49.8)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -382.1 -49.9)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -392.6 -52)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -384.8 -52)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -392.7 -47.7)"/>
+      <circle cx="413.7" cy="582" r=".9" fill="#fff" transform="matrix(.74419 0 0 .62 -384.8 -47.6)"/>
+    </g>
+    <path fill="#fff" d="M138.9 255.8l4.5-2.2 4.6 2.2h-9.1zm-13.6 0l4.5-2.2 4.6 2.2h-9.1zm-13.6 0l4.5-2.2 4.6 2.2h-9.1zm27.2-49l4.5 2.2 4.6-2.1h-9.1zm-13.6 0l4.5 2.2 4.6-2.1h-9.1zm-13.6 0l4.5 2.2 4.6-2.1h-9.1z"/>
+    <path fill="#28ae66" d="M135.1 262.1l-5.3 4.3-5.3-4.3-5.3 4.3-5.3-4.3v2.2l3.6 2-1.8 2.2v2.1h1.8l1.7-2 1.8 2h1.8v-2l-1.8-2.2 3.5-2.1 3.6 2-1.8 2.2v2.1h1.8l1.7-2 1.8 2h1.7v-2l-1.7-2.2 3.5-2.1 3.5 2-1.7 2.2v2.1h1.7l1.8-2 1.8 2h1.7v-2l-1.7-2.2 3.5-2.1V262l-5.3 4.3-5.3-4.3zm0-61.6l-5.3-4.3-5.3 4.3-5.3-4.3-5.3 4.3v-2.1l3.6-2.2-1.8-2V192h1.8l1.7 2.1 1.8-2.1h1.8v2.1l-1.8 2.2 3.5 2 3.6-2-1.8-2.2V192h1.8l1.7 2.1 1.8-2.1h1.7v2.1l-1.7 2.2 3.5 2 3.5-2-1.7-2.2V192h1.7l1.8 2.1 1.8-2.1h1.7v2.1l-1.7 2.2 3.5 2v2.2l-5.3-4.3-5.3 4.3zm40 35.4l5.8-4.6-5.7-4.6 5.7-4.6-5.7-4.6h2.8l2.9 3 2.8-1.5h2.8v1.6l-2.8 1.5 2.8 1.5v1.6h-2.8l-2.8-1.6-2.9 3.1 2.9 3 2.8-1.4h2.8v1.5l-2.8 1.5 2.8 1.5v1.6h-2.8l-2.8-1.6-2.9 3.1 2.9 3 2.8-1.5h2.8v1.6l-2.8 1.5 2.8 1.6v1.5h-2.8l-2.8-1.5-2.9 3h-2.8l5.7-4.6-5.7-4.6zm-90.6 0l-5.7-4.6 5.7-4.6-5.7-4.6 5.7-4.6h-2.9l-2.8 3L76 219h-3v1.6l3 1.4-2.9 1.5v1.6H76l2.8-1.6 2.8 3.1-2.8 3-2.8-1.4h-3v1.5l2.9 1.5-2.9 1.5v1.6h3l2.8-1.6 2.8 3.1-2.8 3.1-2.8-1.5h-3v1.5l2.9 1.5L73 242v1.5h3l2.8-1.5 2.8 3h2.9l-5.7-4.6 5.7-4.6z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".3" d="M-26.6 214.4h1.8v1.7h-1.8zm-1.8 1.7h1.8v1.8h-1.7zm-8.8 8.9h1.8v1.8h-1.8zm1.8-1.8h1.7v1.8h-1.7zm-58.5 0h1.8v1.8H-94zm-8.9-8.8h1.8v1.7h-1.8zm1.8 1.7h1.8v1.8h-1.8zm0-39h1.8v1.8h-1.8zm-1.8 1.8h1.8v1.8h-1.8zm10.7-10.6h1.7v1.8H-92zm-1.8 1.8h1.8v1.8H-94zm56.7-1.8h1.8v1.8h-1.8zm1.8 1.8h1.7v1.8h-1.7zm7 7h1.8v1.8h-1.7zm1.8 1.9h1.8v1.7h-1.8zM-92 225h1.7v1.8H-92z" transform="matrix(1.2798 0 0 1.1995 211.4 -5.6)"/>
+    <path fill="#fff" d="M122.9 231.3h-6.7v-4.2h4.5v-3.9h4.4v-3.6h4.5v4.5c-3.7 0-6.7 3-6.7 7.2z"/>
+    <path fill="#faae29" d="M136.3 231.3h6.7v-4.2h-4.5v-3.9H134v-3.6h-4.4v4.5c3.7 0 6.7 3 6.7 7.2z"/>
+    <path fill="#fff" d="M136.3 231.3h6.7v4.2h-4.5v3.9H134v3.6h-4.4v-4.5c3.7 0 6.7-3 6.7-7.2z"/>
+    <path fill="#faae29" d="M122.9 231.3h-6.7v4.2h4.5v3.9h4.4v3.6h4.5v-4.5c-3.7 0-6.7-3-6.7-7.2z"/>
+    <path fill="#28ae66" d="M136.3 231.3h-6.7v-7.2c3.7 0 6.7 3.3 6.7 7.2z"/>
+    <path fill="#ca3745" d="M136.3 231.3h-6.7v7.2c3.7 0 6.7-3.2 6.7-7.2z"/>
+    <path fill="#28ae66" d="M122.9 231.3h6.7v7.2c-3.7 0-6.7-3.2-6.7-7.2z"/>
+    <path fill="#ca3745" d="M122.9 231.3h6.7v-7.2c-3.7 0-6.7 3.3-6.7 7.2z"/>
+    <path fill="#28ae66" d="M136.6 257.9l-6.8-4.3-6.8 4.3-6.8-4.3-6.8 4.3v-2.1l4.5-2.2-2.2-2.1v-2.1h2.2l2.3 2.1 2.3-2.1h2.3v2.1l-2.3 2.1 4.5 2.2 4.6-2.2-2.3-2.1v-2.1h2.3l2.2 2.1 2.3-2.1h2.3v2.1l-2.3 2.1 4.5 2.2 4.6-2.2-2.3-2.1v-2.1h2.3l2.2 2.1 2.3-2.1h2.3v2.1l-2.3 2.1 4.5 2.2v2l-6.8-4.2-6.8 4.3zm0-53.1l-6.8 4.2-6.8-4.2-6.8 4.2-6.8-4.2v2l4.5 2.2-2.2 2.1v2.2h2.2l2.3-2.2 2.3 2.2h2.3V211l-2.3-2 4.5-2.2 4.6 2.1-2.3 2.1v2.2h2.3l2.2-2.2 2.3 2.2h2.3V211l-2.3-2 4.5-2.2 4.6 2.1-2.3 2.1v2.2h2.3l2.2-2.2 2.3 2.2h2.3V211l-2.3-2 4.5-2.2v-2.1l-6.8 4.2-6.8-4.2zm25 31.8l-3.4-5.3 3.4-5.3-3.4-5.3 3.4-5.3h-1.7l-1.7 3.5-1.7-1.8h-1.7v1.8l1.7 1.8-1.7 1.8v1.7h1.7l1.7-1.7 1.7 3.5-1.7 3.5-1.7-1.7h-1.7v1.7l1.7 1.8-1.7 1.8v1.8h1.7l1.7-1.8 1.7 3.5-1.7 3.6-1.7-1.8h-1.7v1.8l1.7 1.7-1.7 1.8v1.8h1.7l1.7-1.8 1.7 3.6h1.7l-3.4-5.4 3.4-5.3z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".4" d="M-101 177.2l-7 7v26.6l7 7.1h32l7-7v-26.6l-7.1-7.1H-101zm-1.8-5.4l-17.7 17.8v16l17.8 17.6h35.4l17.7-17.7v-16l-17.7-17.7h-35.4z" transform="matrix(1.2798 0 0 1.1995 238.7 -5.6)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 .79966 215 140.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 -.79966 215 322.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 -.79966 229.6 322.3)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 .79966 229.6 140.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 -.79966 207.8 322.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 -.79966 222.3 322.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 -.79966 236.8 322.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(1.9196 0 0 -1.7991 303.3 576.6)"/>
+    <path fill="#28ae66" d="M98 236.6l3.5-5.3L98 226l3.4-5.3-3.4-5.3h1.7l1.7 3.5 1.7-1.8h1.7v1.8l-1.7 1.8 1.7 1.8v1.7h-1.7l-1.7-1.7-1.7 3.5 1.7 3.5 1.7-1.7h1.7v1.7l-1.7 1.8 1.7 1.8v1.8h-1.7l-1.7-1.8-1.7 3.5 1.7 3.6 1.7-1.8h1.7v1.8l-1.7 1.7 1.7 1.8v1.8h-1.7l-1.7-1.8-1.7 3.6H98l3.4-5.4-3.4-5.3z"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.2798 0 0 1.07958 261.3 59.2)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".4" d="M-99.2 180.7l-3.6 3.6v26.5l3.6 3.6h-5.3v-33.7h5.3z" transform="matrix(1.2798 0 0 1.1995 229.6 -5.6)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 .79966 207.8 140.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 .79966 222.3 140.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-93.9 147l3.5 5.4 3.6-5.4H-94z" transform="matrix(1.02384 0 0 .79966 236.8 140.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".4" d="M-99.2 180.7l-3.6 3.6v26.5l3.6 3.6h-5.3v-33.7h5.3z" transform="matrix(-1.2798 0 0 1.1995 30 -5.6)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(-1.9196 0 0 -1.7991 -43.6 576.6)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(-1.9196 0 0 1.7991 -43.6 -114)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-104.5 180.7l3.5-3.5h-3.5v3.5z" transform="matrix(1.9196 0 0 1.7991 303.3 -114)"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".4" d="M-101 177.2l-7 7v26.6l7 7.1h32l7-7v-26.6l-7.1-7.1H-101zm0-1.8l-8.8 8.8v26.6l8.8 8.9h32l8.8-8.9v-26.6l-8.9-8.8H-101z" transform="matrix(1.2798 0 0 1.1995 238.7 -5.6)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.2798 0 0 1.07965 261.3 63)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.2798 0 0 1.07958 261.3 66.8)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.2798 0 0 1.07965 261.3 70.6)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(1.2798 0 0 1.07965 261.3 55.3)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.2798 0 0 1.07958 -1.7 59.2)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.2798 0 0 1.07965 -1.7 63)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.2798 0 0 1.07958 -1.7 66.8)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.2798 0 0 1.07965 -1.7 70.6)"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".3" d="M-76.2 154.1h7.1l1.8 1.8-1.8 1.8h-7V154z" transform="matrix(-1.2798 0 0 1.07965 -1.7 55.3)"/>
+    <path fill="#970000" stroke="#000" stroke-width=".3" d="M-101 179v37h8.9v8.9h56.7V216h8.8v-37h-8.8v-8.8h-56.7v8.8h-8.9zm1.8 1.7v33.7h8.8v8.8h53.2v-8.8h8.9v-33.7h-8.9V172h-53.2v8.8h-8.8z" transform="matrix(1.2798 0 0 1.1995 211.4 -5.6)"/>
+    <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M-28.4 69.1l-5.3-7.1v-5.3l-5.3-5.3h-10.6l-8.9-5.3h-28.3l-8.9 5.3h-10.6l-5.3 5.3V62l-5.3 7v14.3l5.3 7v5.4l5.3 5.3h10.6l8.9 5.3h28.3l8.9-5.3H-39l5.4-5.3v-5.3l5.3-7.1V69z" transform="matrix(1.2798 0 0 1.1535 222.8 -36.7)"/>
+    <path fill="#faae29" d="M75.4 51.2v6.1l6.8 8.2v6.1l6.8 6.2h13.6l11.4 6h15.8V51.3H75.4z"/>
+    <path fill="#ca3745" d="M110.7 65.5l-8.3 5.3h-5l1.7 1.7-3.3 3.5 1.7 1.8 5-1.8 1.6 1.8.7-4.7 9.2-5.6-3.3-2z"/>
+    <path fill="#ca3745" d="M101.6 61.4l-8.3 5.3h-4.9l1.6 1.7-3.2 3.5 1.6 1.8 5-1.8 1.6 1.8.8-4.7 9.1-5.5-3.3-2zm-4.5-8.2l-8.3 5.3h-5l1.7 1.8-3.3 3.5 1.7 1.7 5-1.8 1.6 1.8.7-4.7 9.2-5.5-3.3-2z"/>
+    <path fill="#faae29" d="M184.2 51.2v-6.1l-6.8-8.2v-6.1l-6.8-6.2H157l-11.3-6.1h-15.9v32.7h54.4z"/>
+    <path fill="#ca3745" d="M129.8 83.9h-4.2l-4.8-4.1H113l-4.2-2 2.1-2 4.2 2h4.2l4.2-6.2 6.3 2v4.2h-6.3l6.3 6z"/>
+    <path fill="#fff" d="M75.4 51.2v-6.1l6.8-8.2v-6.1l6.8-6.2h13.6l11.4-6.1h15.8v32.7H75.4z"/>
+    <path fill="#ca3745" d="M129.8 18.5h-4.2l-4.8 4H113l-4.2 2.1 2.1 2 4.2-2h4.2l4.2 6.2 6.3-2v-4.2h-6.3l6.3-6.1z"/>
+    <path fill="#ca3745" d="M129.8 18.5h4.2l4.9 4h7.7l4.2 2.1-2 2-4.3-2h-4.2l-4.2 6.2-6.3-2v-4.2h6.3l-6.3-6.1z"/>
+    <path fill="#fff" d="M184.2 51.2v6.1l-6.8 8.2v6.1l-6.8 6.2H157l-11.3 6h-15.9V51.3h54.4z"/>
+    <path fill="#ca3745" d="M129.8 83.9h4.2l4.9-4.1h7.7l4.2-2-2-2-4.3 2h-4.2l-4.2-6.2-6.3 2v4.2h6.3l-6.3 6zm-28.2-43l-8.3-5.2h-4.9L90 34l-3.2-3.5 1.6-1.8 5 1.8 1.6-1.8.8 4.7 9.1 5.5-3.3 2zm47.4-4l8.2-5.3h5l-1.7-1.7 3.3-3.5-1.6-1.8-5 1.8-1.6-1.8-.8 4.7-9.1 5.6 3.3 2z"/>
+    <path fill="#ca3745" d="M110.7 36.9l-8.3-5.3h-5l1.7-1.7-3.3-3.5 1.7-1.8 5 1.8 1.6-1.8.7 4.7 9.2 5.5-3.3 2zM97 49.2l-8.3-5.3h-5l1.7-1.8-3.3-3.5L84 37l5 1.8 1.6-1.8.7 4.7 9.2 5.5-3.3 2z"/>
+    <path fill="#fff" d="M79.5 51.2h2l2.1 2 2.1-2h44.1v28.6h-2l2 2V84l-6.3-6.1v-2h2.1v2h2.1v-2l-17-9H96.3v-9L90 53.4h-4.2l-2.1 2 2 2h-2l-4.2-6z"/>
+    <path fill="#faae29" d="M79.5 51.2h2l2.1-2 2.1 2h44.1V22.6h-2l2-2v-2.1l-6.3 6.1v2h2.1v-2h2.1v2l-17 9.1H96.3v8.9L90 49.2h-4.2l-2.1-2 2-2.1h-2l-4.2 6.1z"/>
+    <path fill="#28ae66" d="M89 51.2h40.8v24.5l-18.1-10.2H98.1v-8.2l-9-6.1z"/>
+    <path fill="#ca3745" d="M158 41l8.3-5.3h5l-1.7-1.7 3.3-3.5-1.6-1.8-5 1.8-1.6-1.8-.8 4.7-9.1 5.5 3.2 2zm4.6 8.2l8.3-5.3h4.9l-1.7-1.8 3.3-3.5-1.6-1.7-5 1.8-1.6-1.8-.8 4.7-9.1 5.5 3.3 2z"/>
+    <path fill="#fff" d="M180.2 51.2h-2.1l-2.1-2-2.1 2h-44.1V22.6h2.1l-2.1-2v-2.1l6.3 6.1v2H134v-2h-2.1v2l17 9.1h14.4v8.9l6.4 4.6h4.2l2-2-2-2.1h2l4.3 6.1z"/>
+    <path fill="#28ae66" d="M170.6 51.2h-40.8V26.7L148 36.9h13.6v8.2l9.1 6.1z"/>
+    <path fill="#ca3745" d="M149 65.5l8.2 5.3h5l-1.7 1.7 3.3 3.5-1.6 1.8-5-1.8-1.6 1.8-.8-4.7-9.1-5.6 3.3-2z"/>
+    <path fill="#ca3745" d="M158 61.4l8.3 5.3h5l-1.7 1.7 3.3 3.5-1.6 1.8-5-1.8-1.6 1.8-.8-4.7-9.1-5.5 3.2-2zm4.6-8.2l8.3 5.3h4.9l-1.7 1.7 3.3 3.5-1.6 1.8-5-1.8-1.6 1.8-.8-4.7-9.1-5.5 3.3-2z"/>
+    <path fill="#faae29" d="M180.2 51.2h-2.1l-2.1 2-2.1-2h-44.1v28.6h2.1l-2.1 2V84l6.3-6.1v-2H134v2h-2.1v-2l17-9h14.4v-9l6.4-4.5h4.2l2 2-2 2h2l4.3-6z"/>
+    <path fill="#ca3745" d="M170.6 51.2h-40.8v24.5L148 65.5h13.6v-8.2l9.1-6.1zm-81.6 0h40.8V26.7l-18.1 10.2H98.1v8.2l-9 6.1z"/>
+    <path fill="#ca3745" d="M134.3 51.2l11.4-6.1h6.8l-2.3-2 4.6-4.2-2.3-2-6.8 2-2.3-2-1 5.5-12.6 6.4 4.5 2.4zm-9 0L114 57.3h-6.8l2.2 2-4.5 4.2 2.3 2 6.8-2 2.2 2 1-5.5 12.6-6.4-4.5-2.4z"/>
+    <path fill="#28ae66" d="M125.3 51.2L114 45.1h-6.8l2.3-2-4.5-4.2 2.3-2 6.8 2 2.2-2 1 5.5 12.6 6.4-4.5 2.4zm9 0l11.4 6.1h6.8l-2.3 2 4.6 4.2-2.3 2-6.8-2-2.3 2-1-5.5-12.6-6.4 4.5-2.4z"/>
+    <path fill="#fff" d="M116.2 51.2L129.8 41l13.6 10.2-13.6 10.2-13.6-10.2z"/>
+    <path fill="#ca3745" d="M85.7 55.3l2.1 2-2 2h-2.2l-6.3-8.1h2.1l4.2 6.1h2.1l-2-2 2-2H90v2h-4.2z"/>
+    <path fill="#ca3745" d="M85.7 47.1l2.1-2-2-2h-2.2l-6.3 8.1h2.1l4.2-6.1h2.1l-2 2 2 2H90v-2h-4.2zm88.2 8.2l-2 2 2 2h2.1l6.3-8.1h-2l-4.3 6.1h-2l2-2-2-2h-4.3v2h4.2z"/>
+    <path fill="#ca3745" d="M174 47.1l-2.2-2 2.1-2h2.1l6.3 8.1h-2l-4.3-6.1h-2l2 2-2 2h-4.3v-2h4.2zm-46.3-4h4.2v16.3h-4.2z"/>
+    <path fill="#ca3745" d="M121.4 47.1h16.8v8.2h-16.8z"/>
+    <path fill="#28ae66" stroke="#000" stroke-width=".1" d="M333 170l-10.6 5.4v8.8l10.7 5.4h10.6l10.6-5.4v-8.8l-10.6-5.3h-10.6z" transform="matrix(3.555 0 0 3.847 -1073.2 -292.2)"/>
+    <path fill="#c00" d="M87.2 396.3h2.2V392H94v4.2h2.3v-9.8H94v4.2h-4.5v-4.2h-2.3v9.8zm57.9 32.6h2.3v-4.2h4.5v4.2h2.3V419H152v4.2h-4.6V419h-2.2v9.8zm-36.6-49h2.3v-4.1h4.6v4.2h2.2v-9.8h-2.2v4.2h-4.6v-4.2h-2.3v9.8zm33.5 0h2.3v-4.1h4.6v4.2h2.3v-9.8h-2.3v4.2h-4.6v-4.2H142v9.8zm21.4 16.4h2.2V392h4.6v4.2h2.3v-9.8h-2.3v4.2h-4.6v-4.2h-2.2v9.8zm0 16.3h2.2v-4.2h4.6v4.2h2.3v-9.8h-2.3v4.2h-4.6v-4.2h-2.2v9.8z"/>
+    <path fill="#faae29" d="M129.8 435.4v-35.9h54.9v16.3L148 435.4h-18.3zm0-71.7v35.8H75v-16.3l36.5-19.5h18.3z"/>
+    <path fill="#fff" d="M129.8 363.7v35.8h54.9v-16.3L148 363.7h-18.3zm0 71.7v-35.9H75v16.3l36.5 19.6h18.3z"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(1.0321 0 0 .92 342 45.9)"/>
+    <path fill="#ca3745" d="M111.5 388.1V411h5.5l12.8 6.6 12.8-6.6h5.5v-22.8h-5.5l-12.8-6.5-12.8 6.5h-5.5z"/>
+    <path fill="#faae29" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(-1.0321 0 0 -.92 -82.3 753.2)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(-1.0321 0 0 .92 -82.3 45.9)"/>
+    <path fill="#fff" stroke="#000" stroke-width=".1" d="M-177.2 368.5h21.3l-21.3-10.6v10.6zm24.8-1.8v17.7H-186v-14.1h-7.1l-8.9-5.3v-12.4l5.4-5.4h-7.1V365h-1.8v-19.5h17.7l35.4 21.2z" transform="matrix(1.0321 0 0 -.92 342 753.2)"/>
+    <path fill="#ca3745" d="M86 412.6h2.2v-5h4.6v5h2.3v-11.4h-2.3v4.9h-4.6v-5H86v11.5zm21.9 16.3h2.3v-5h4.5v5h2.3v-11.4h-2.3v4.9h-4.5v-5h-2.3V429zm-22-42.4h2.3v4.9h4.6v-5h2.3V398h-2.3v-5h-4.6v4.9H86v-11.4zm22-16.3h2.3v4.9h4.5v-5h2.3v11.5h-2.3v-4.9h-4.5v5h-2.3v-11.5zm34.7 58.7h2.3v-5h4.6v5h2.3v-11.4h-2.3v4.9h-4.6v-5h-2.3V429zm22-31h2.3V393h4.5v5h2.3v-11.5h-2.3v4.9H167v-5h-2.3V398z"/>
+    <path fill="#ca3745" d="M142.6 428.9h2.3v-5h4.6v5h2.3v-11.4h-2.3v4.9h-4.6v-5h-2.3V429z"/>
+    <path fill="#ca3745" d="M142.6 428.9h2.3v-5h4.6v5h2.3v-11.4h-2.3v4.9h-4.6v-5h-2.3V429zm22-16.3h2.3v-5h4.5v5h2.3v-11.4h-2.3v4.8H167v-4.9h-2.3v11.5zm-22-31h2.3v-4.9h4.6v5h2.3v-11.5h-2.3v4.9h-4.6v-5h-2.3v11.5z"/>
+    <path fill="#fff" d="M131.7 399.5l7.3-6h3.6v3H139v1.5h5.5v-5.9H139v-4.5h-7.3v4.5h1.8v-3h3.6v3l-7.3 6-7.3-6v-3h3.7v3h1.8v-4.5h-7.3v4.5h-5.5v6h5.5v-1.5H117v-3h3.7l7.3 6-7.3 5.9H117v-3h3.7V401h-5.5v6h5.5v4.4h7.3V407h-1.8v3h-3.7v-3l7.3-6 7.3 6v3h-3.6v-3h-1.8v4.4h7.3V407h5.5v-6H139v1.5h3.6v3H139l-7.3-6z"/>
+    <g transform="matrix(1.0321 0 0 .95838 204.8 18.2)">
+      <path fill="#ca3745" d="M-122.3 134.3l3.4-3.8h20.6l15.4-16.7h20.6l15.4 16.8h20.6l3.4 3.7-3.4 3.7H-47l-15.4 16.8H-83L-98.3 138H-119l-3.4-3.7z"/>
+      <path fill="#ca3745" stroke="#000" stroke-width=".3" d="M372 391.5l2-2h22.8l17.1-19.4h19l17.2 19.5h22.8l1.9 2-1.9 1.9h-22.8L434.8 411H412l-15.2-17.5h-22.9l-1.9-2z" transform="matrix(.93104 0 0 .90908 -466.9 -221.3)"/>
+      <path fill="#faae29" d="M-64 136.2l6.8 7.4-3.4 3.7-1.8-1.8H-64v1.8l1.7 1.9h3.5l3.4-3.7v-3.8l-6.9-7.4 6.9-7.5v-3.7l-3.4-3.7h-3.5l-1.7 1.8v1.9h1.7l1.8-1.9 3.4 3.8-6.9 7.4-6.8-7.4 6.8-7.5v-1.9h-1.7l-6.8 7.5-6.9-7.5h-1.7v1.9l6.8 7.5-6.8 7.4-6.9-7.4 3.5-3.8 1.7 1.9h1.7v-1.9l-1.7-1.8h-3.5l-3.4 3.7v3.7l6.9 7.5-6.9 7.4v3.8l3.4 3.7h3.5l1.7-1.9v-1.8H-83l-1.7 1.8-3.5-3.7 6.9-7.4 6.8 7.4-6.8 7.5v1.8h1.7l6.9-7.4 6.8 7.4h1.7v-1.8l-6.8-7.5 6.8-7.4zm-8.6-9.4l-6.9 7.5 6.9 7.4 6.8-7.4-6.8-7.5zm-10.3 28v15l1.7-2 1.7 2 1.7-2 1.7 2 1.8-2 1.7 2 1.7-2 1.7 2 1.7-2 1.7 2 1.7-2 1.8 2v-15H-83zm20.6-41v-15l-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2v15h20.6zm29 16.8v-15l-1.6 2-1.7-2-1.7 2-1.8-2-1.7 2-1.7-2-1.7 2-1.7-2v15h13.7zm-65 0v-15l-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2v15h13.7zm65.1 7.4v15l-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2-1.7 2v-15h13.7zm-65.2 0v15l-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.8-2-1.7 2v-15h13.7z"/>
+      <path fill="#28ae66" d="M-62.4 154.8v9.3l1.8-1.9 1.7 2 1.7-2 1.7 2 1.7-2 1.7 2 1.8-2 1.7 2 1.7-2V138l-15.5 16.8zm-20.5 0v9.3l-1.8-1.9-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.7-2-1.7 2-1.8-2V138l15.5 16.8zm0-41v-9.3l-1.8 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.7 1.8-1.7-1.8-1.8 1.8v24.3l15.5-16.8zm20.5 0v-9.3l1.8 1.8 1.7-1.8 1.7 1.8 1.7-1.8 1.7 1.8 1.7-1.8 1.7 1.8 1.8-1.8 1.7 1.8v24.3l-15.5-16.8zm-49.7 35.4l-1.7-1.9-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2v-30l1.7 2 1.7-2 1.8 2 1.7-2 1.7 2 1.7-2 1.7 2 1.7-2v11.3h-6.8l-3.5 3.7 3.5 3.7h6.8v11.2zm78.9 0l1.7-1.9 1.7 2 1.7-2 1.8 2 1.7-2 1.7 2 1.7-2 1.7 2v-30l-1.7 2-1.7-2-1.7 2-1.7-2-1.8 2-1.7-2-1.7 2-1.7-2v11.3h6.9l3.4 3.7-3.4 3.7h-6.9v11.2z"/>
+      <path fill="#fff" d="M-91.4 156s-1.4 1.4-1.4 2.2c0 .7 1.5 2.2 2.2 2.2.8 0 2.1-1.5 2.1-2.2s-1.4-2.2-1.4-2.2v-3s3 5.1 3 2.9c0-1.6-3-4.3-3-4.3h-1.5s-3 3.2-3 4.3c0 2.2 3-2.9 3-2.9v3z"/>
+      <path fill="#ca3745" d="M-73.5 161.7s-1.7 2-1.7 3 1.8 3.2 2.6 3.2c1 0 2.5-2.1 2.5-3.1s-1.7-3.1-1.7-3.1v-4.2s3 6.8 3 3.7c0-2-3-5.7-3-5.7h-1.7s-3.5 4.6-3 5.7c0 3.1 3-3.7 3-3.7v4.2z"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -482.4 -277.9)"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -463.5 -277.9)"/>
+      <ellipse cx="403.9" cy="391.5" fill="#28ae66" rx="3.5" ry="1.8" transform="matrix(.96774 0 0 1.0526 -444.7 -277.9)"/>
+      <path fill="#fff" d="M-91.7 112.8s-1.4-1.5-1.4-2.2c0-.7 1.5-2.3 2.1-2.3.8 0 2.1 1.5 2.1 2.2 0 .8-1.4 2.3-1.4 2.3v3s3.1-5.2 3.1-3c0 1.6-3 4.4-3 4.4h-1.5s-3.1-3.2-3.1-4.3c0-2.2 3 2.8 3 2.8v-3z"/>
+      <path fill="#ca3745" d="M-73.9 107s-1.7-2-1.7-3 1.9-3.1 2.6-3.1c1 0 2.6 2 2.6 3s-1.7 3.2-1.7 3.2v4s3-6.7 3-3.6c0 2-3 5.8-3 5.8H-74s-3.5-4.7-3-5.8c0-3 3 3.7 3 3.7V107z"/>
+      <path fill="#fff" d="M-54.9 156s-1.4 1.4-1.4 2.2c0 .7 1.5 2.2 2.2 2.2.8 0 2.1-1.5 2.1-2.2s-1.4-2.2-1.4-2.2v-3s3 5.1 3 2.9c0-1.6-3-4.3-3-4.3H-55s-3 3.2-3 4.3c0 2.2 3-2.9 3-2.9v3zm-.3-43.2s-1.4-1.5-1.4-2.3c0-.6 1.5-2.2 2.1-2.2.8 0 2.1 1.5 2.1 2.2 0 .8-1.4 2.3-1.4 2.3v3s3.1-5.2 3.1-3c0 1.6-3 4.4-3 4.4h-1.5s-3.1-3.2-3.1-4.3c0-2.2 3 2.8 3 2.8v-3z"/>
+      <path fill="#ca3745" d="M-106.3 145.6s-1.9 1.4-1.9 2c0 .7 2 2.2 2.9 2.1 1 0 2.8-1.3 2.8-2s-1.9-2.1-1.9-2.1v-2.8s3.4 4.5 3.4 2.5c0-1.4-3.4-3.9-3.4-3.9h-1.9s-3.9 3.2-3.3 3.9c0 2 3.3-2.5 3.3-2.5v2.8zm-.4-21.1s-1.9-1.4-1.9-2.1c0-.7 2-2.1 2.9-2 1 0 2.8 1.3 2.8 2s-1.9 2-1.9 2v2.8s3.4-4.5 3.4-2.4c0 1.3-3.4 3.8-3.4 3.8h-1.9s-3.9-3.1-3.3-3.8c0-2 3.3 2.4 3.3 2.4v-2.7zm66.3 20.6s-2 1.4-2 2.1c0 .7 2.1 2.1 3 2.1 1 0 2.8-1.4 2.8-2 0-.8-2-2.2-2-2.2v-2.7s3.4 4.5 3.4 2.4c0-1.3-3.3-3.8-3.3-3.8h-2s-3.8 3.1-3.3 3.8c0 2.1 3.4-2.4 3.4-2.4v2.8zm-.4-21s-2-1.4-2-2.1c0-.7 2.1-2.1 3-2.1 1 0 2.8 1.4 2.8 2 0 .8-2 2.1-2 2.1v2.8s3.4-4.5 3.4-2.5c0 1.4-3.3 3.9-3.3 3.9h-2s-3.8-3.1-3.3-3.8c0-2.1 3.4 2.4 3.4 2.4V124z"/>
+      <path fill="#fff" d="M-120.3 145.4c-.6-1.3-.4-1.9-.4-2.6 0-.7 1.7-2 2.3-2 .8 0 2.1 1.4 2.1 2.2 0 .7 0 1.3-.3 2.6l-.8-2.1c-1.1 3-1.2 3-1.8-.1l-1 2zm0-21.5c-.5 1.3-.4 1.9-.4 2.6 0 .7 1.7 2 2.4 2 .8 0 2.1-1.4 2.1-2.2 0-.7 0-1.3-.3-2.6l-.9 2.1c-1-3-1.1-3-1.8.1l-1-2zm92.5 21.2c-.6-1.3-.5-1.9-.5-2.6 0-.7 1.8-2 2.4-2 .8 0 2.1 1.5 2.1 2.2 0 .7 0 1.4-.3 2.6l-.9-2.1c-1 3-1.1 3.1-1.8 0l-1 1.9zm0-21.4c-.6 1.2-.4 1.8-.4 2.6 0 .6 1.7 2 2.3 2 .8 0 2.2-1.5 2.2-2.2 0-.8 0-1.4-.3-2.7l-1 2.2c-1-3.1-1-3.2-1.7 0l-1-2z"/>
+      <path fill="#ca3745" stroke="#000" stroke-width=".1" d="M115.2 177.2v-5.4h-16v-10.6H85v-3.5H72.6v-32H85v-3.5h14.2v-10.6h16v-5.3h21.2v5.3h16v10.6h14.1v3.6H179v31.9h-12.4v3.5h-14.1v10.6h-16v5.3h-21.2zm-1.8 1.7v-5.3h-16V163H83.3v-3.6H70.9V124h12.4v-3.5h14.1v-10.7h16v-5.3h24.8v5.3h16v10.7h14.1v3.5h12.4v35.4h-12.4v3.6h-14.2v10.6h-16v5.3h-24.7z" transform="matrix(1 0 0 .99999 -198.4 -7)"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tn.svg
new file mode 100644
index 0000000..c6aaecb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tn.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tn" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tn-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#tn-a)" transform="translate(80) scale(.9375)">
+    <path fill="#e70013" d="M-128 0h768v512h-768z"/>
+    <path fill="#fff" d="M385.8 255.8a129.1 129.1 0 11-258.2 0 129.1 129.1 0 01258.2 0z"/>
+    <path fill="#e70013" d="M256.7 341.4a85.7 85.7 0 010-171.3c11.8 0 25.3 2.8 34.4 9.5-62.6 2.3-78.5 55.5-78.5 76.9s10.1 69.1 78.5 76.2c-7.8 5-22.6 8.7-34.4 8.7z"/>
+    <path fill="#e70013" d="M332.1 291.8l-38.9-14.2-25.7 32.4 1.5-41.3-38.8-14.5 39.8-11.4 1.7-41.3 23.2 34.3 39.8-11-25.5 32.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/to.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/to.svg
new file mode 100644
index 0000000..4dd38e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/to.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-to" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#c10000" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M0 0h250v200.3H0z"/>
+    <g fill="#c10000">
+      <path d="M102.8 31.2h39.9v139.6h-39.8z"/>
+      <path d="M192.6 81v40H53V81z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tr.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tr.svg
new file mode 100644
index 0000000..f1910ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tr.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tr" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#e30a17" d="M0 0h640v480H0z"/>
+    <path fill="#fff" d="M407 247.5c0 66.2-54.6 119.9-122 119.9s-122-53.7-122-120 54.6-119.8 122-119.8 122 53.7 122 119.9z"/>
+    <path fill="#e30a17" d="M413 247.5c0 53-43.6 95.9-97.5 95.9s-97.6-43-97.6-96 43.7-95.8 97.6-95.8 97.6 42.9 97.6 95.9z"/>
+    <path fill="#fff" d="M430.7 191.5l-1 44.3-41.3 11.2 40.8 14.5-1 40.7 26.5-31.8 40.2 14-23.2-34.1 28.3-33.9-43.5 12-25.8-37z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tt.svg
new file mode 100644
index 0000000..19add52
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tt.svg
@@ -0,0 +1,5 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tt" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#e00000" fill-rule="evenodd" d="M463.7 480L0 1v478.8l463.7.2zM176.3 0L640 479V.2L176.3 0z"/>
+  <path fill-rule="evenodd" d="M27.7.2h118.6l468.2 479.3H492.2L27.7.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tv.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tv.svg
new file mode 100644
index 0000000..a63338d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tv.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tv" viewBox="0 0 640 480">
+  <defs id="defs830">
+    <clipPath id="tv-a">
+      <path id="path827" fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <path id="rect891" fill="#009fca" fill-opacity="1" stroke-width="11.8" d="M0 0h640v480H0z"/>
+  <path id="path862" fill="#fff40d" fill-rule="evenodd" stroke-width="1pt" d="M593.3 122.7H621l-22.3 15.2 8.5 24.7-22.3-15.3-22.2 15.3 8.5-24.7-22.3-15.2h27.5l8.5-24.7zm-69.2 196.8h27.6l-22.3 15.2 8.5 24.7-22.3-15.3-22.3 15.3 8.6-24.7-22.3-15.2H507l8.5-24.7zm69.2-44.6H621l-22.3 15.2 8.5 24.7-22.3-15.3-22.2 15.3 8.5-24.7-22.3-15.2h27.5l8.5-24.7zM295.8 417.7h27.6L301 432.8l8.6 24.6-22.3-15.2-22.3 15.2 8.6-24.6-22.4-15.3h27.6l8.5-24.6zm62.6-76.5h-27.6l22.3-15.3-8.5-24.6 22.3 15.2 22.3-15.2-8.6 24.6 22.3 15.3h-27.5l-8.5 24.6zm81.3-112.5H412l22.3-15.2-8.5-24.7 22.3 15.3 22.3-15.3-8.6 24.7 22.3 15.2h-27.5l-8.5 24.7zm68.3-23.3h-27.6l22.4-15.3-8.6-24.6 22.3 15.2 22.3-15.2-8.6 24.6 22.4 15.3H525l-8.5 24.6zM439.7 400H412l22.3-15.2L426 360l22.3 15.2 22.3-15.2-8.6 24.7 22.3 15.2h-27.5l-8.5 24.7zm-81.3 19.9h-27.6l22.3-15.2-8.5-24.7 22.3 15.2 22.3-15.2-8.6 24.6L403 420h-27.5l-8.5 24.7z" opacity="1" stop-opacity="1"/>
+  <g id="g1551" transform="scale(.5)">
+    <path id="path1529" fill="#012169" d="M0 0h640v480H0z"/>
+    <path id="path1531" fill="#FFF" d="M75 0l244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z"/>
+    <path id="path1533" fill="#C8102E" d="M424 281l216 159v40L369 281zm-184 20l6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z"/>
+    <path id="path1535" fill="#FFF" d="M241 0v480h160V0zM0 160v160h640V160z"/>
+    <path id="path1537" fill="#C8102E" d="M0 193v96h640v-96zM273 0v480h96V0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tw.svg
new file mode 100644
index 0000000..b614e44
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tw.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tw-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#tw-a)" transform="scale(.9375)">
+    <path fill="#fe0000" d="M0 0h768v512H0z"/>
+    <path fill="#000095" d="M0 0h385.7v256H0z"/>
+    <path fill="#fff" d="M282.1 178.6l-47.3-9.8 10 47.3-36-32.1-15 46-15.2-45.9-36 32.4 9.8-47.4-47.2 10.1 32-36.1-46-15 46-15.2-32.4-35.8 47.3 9.7-10-47.3 36 32.1 15-46 15.2 45.9 35.9-32.4-9.7 47.4 47.2-10.1-32 36.1 45.9 15-45.9 15.2z"/>
+    <path fill="#000095" d="M238.5 175l-15 7.9-14.5 8.6-17-.6-16.9.2-14.3-9L146 174l-8-15-8.6-14.5.6-16.8-.2-17 9-14.2 8.3-14.8 14.9-7.9 14.6-8.6 16.9.6 17-.2 14.3 9 14.7 8.2 8 14.9 8.6 14.5-.6 16.9.2 16.9-9 14.3z"/>
+    <path fill="#fff" d="M244.6 128.3a51.9 51.9 0 11-103.7 0 51.9 51.9 0 01103.7 0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tz.svg
new file mode 100644
index 0000000..5c80173
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/tz.svg
@@ -0,0 +1,13 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-tz" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="tz-a">
+      <path fill-opacity=".7" d="M10 0h160v120H10z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" stroke-width="1pt" clip-path="url(#tz-a)" transform="matrix(4 0 0 4 -40 0)">
+    <path fill="#09f" d="M0 0h180v120H0z"/>
+    <path fill="#090" d="M0 0h180L0 120V0z"/>
+    <path d="M0 120h40l140-95V0h-40L0 95v25z"/>
+    <path fill="#ff0" d="M0 91.5L137.2 0h13.5L0 100.5v-9zM29.3 120L180 19.5v9L42.8 120H29.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ua.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ua.svg
new file mode 100644
index 0000000..a93d06d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ua.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ua" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ffd500" d="M0 0h640v480H0z"/>
+    <path fill="#005bbb" d="M0 0h640v240H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ug.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ug.svg
new file mode 100644
index 0000000..c996cbd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ug.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ug" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="ug-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#ug-a)" transform="translate(80) scale(.9375)">
+    <path fill="#ffe700" fill-rule="evenodd" d="M-128 341.4h768v85.3h-768z"/>
+    <path fill-rule="evenodd" d="M-128 256h768v85.3h-768z"/>
+    <path fill="#de3908" fill-rule="evenodd" d="M-128 170.7h768V256h-768z"/>
+    <path fill="#ffe700" fill-rule="evenodd" d="M-128 85.4h768v85.3h-768z"/>
+    <path fill-rule="evenodd" d="M-128 0h768v85.3h-768z"/>
+    <path fill="#fffdff" fill-rule="evenodd" stroke="#000" d="M335.7 256a79.7 79.7 0 11-159.4 0 79.7 79.7 0 01159.4 0z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" d="M242 194.9l-5.2-9.5c2-2 5.3-3.6 10.7-3.6l-.6 10.5-5 2.6z"/>
+    <path fill="#ffe700" fill-rule="evenodd" stroke="#000" d="M247 192.3l.7-10.5s10.7-.6 16.5 6.4l-5.7 8.2-11.6-4z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" d="M258.6 196.3l5.3-8.2c3.5 3.7 5 6.3 5.5 10.3.1.1-8.3 2.1-8.3 2l-2.5-4.1z"/>
+    <path fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M244.6 331.1s9.9-11.3 29.1-8.9c-2.9-4.7-12.3-4.1-12.3-4.1s-2.8-22-.6-23.2 12 .1 12 .1c1.2 0 3.4-3.4 1.6-5.6-1.7-2.2-6.8-10.5-4.7-12.2 2.1-1.6 13.4 1 13.4 1l-32-41s-3.3-15.5 3.3-23c7.9-6.5 7-13.6 6.8-13.5-1.1-7.2-12-12.3-19.4-5.7-4.3 5.2-1.4 9.2-1.4 9.2s-11.5 3.1-11.9 5.1c-.5 2 12.9-.3 12.9-.3l-1.3 9.1s-26 23.6-6 44l.6-.8s7 8.6 14.3 10.5c7 7 6.3 6 6.3 6s1.3 11.1 0 13.3c-1.7-.5-19.3-1.2-21.9-.2-2.4.8-11.4.3-9.2 15.1l3.3-7.5s-.3 5.3 1.9 7.2c-.4-5.6 2.1-9.4 2.1-9.4s.4 6.2 1.8 7c1.4 1 1.4-10 9-9 7.4.9 12.9.6 12.9.6s2.5 21.4 1.7 23.4c-5.4-1.3-18.4.5-19.2 3.8 7.6-.5 11.1.4 11.1.4s-6.1 5.5-4.2 8.6z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M247.6 214.8s-18.9 20.8-10.7 36.7c.4-2.2.2-3.6.5-3.5-.5-.3 2.3 1.9 2.1 1.5 0-1.2-.8-3.7-.8-3.7l2.5.7-1.5-2.8 3.7.4s-1.3-3.4-.9-3.4l3 .2c-5.4-9.6-.3-17.6 2.1-26.2z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" d="M254.2 196.9s1 7.2-3 9.2c-.5.5-3 1.3-2.6 2.8.4 2 1.5 1.6 3 1.2 4.1-.7 8.9-9.4 2.6-13.2z"/>
+    <path fill="#fff" fill-rule="evenodd" d="M247.2 203a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" d="M241.1 209c-1 .9-6.2 6.3-1 8.3 5.3-1.4 3.8-2.4 5-3.6 0-2.5-2.6-3.1-4-4.6z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#9ca69c" stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M252.6 260.5c-.3 1.2-1.5 5.6.1 9 4.6-2 6.7-1.4 8.2-.4-3.7-3-5.2-4.3-8.3-8.6z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M260.4 281.1l.2 10.2s3.6.6 5.2 0 0-7-5.4-10.2z"/>
+    <path fill="#9ca69c" fill-rule="evenodd" stroke="#000" d="M286 282.4s-6.5-15.8-23.2-19.8-14.5-21.8-13.2-22.9c.8-1.5 1.3-3.9 6.1-1.6s27 13.4 30.2 14 .4 30.7.2 30.3z"/>
+    <path fill="#de3108" fill-rule="evenodd" stroke="#000" stroke-linejoin="round" stroke-width=".9" d="M270.2 262.5c-.3.2 22.3 13.4 15.5 24.7 6.4-4.3 4.4-11.7 4.4-11.7s5.2 13.7-7.6 20.4c1.4 1.2 2.3 1 2.3 1l-2.2 2.1s-1 1.7 7.6-2.5c-2.3 1.9-2.5 3.3-2.5 3.3s.6 1.8 6.2-3.1c-4.5 4.9-5.5 7.4-5.5 7.3 12.3-1 39-41-8.4-52.7l2.1 2.2-12 9z"/>
+    <path fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width=".9" d="M271.2 258.6c3 2.2 4.1 3 4.5 4-2.8-.6-5.3-.4-5.3-.4s-6.1-5.8-7.2-6.3c-.8 0-5.6-3-5.6-3-2.3-1.2-4.5-9.3 4.2-7a93 93 0 0010.3 4.6l10.7 3.4 6.2 6.9s-11-5.4-12.4-5.5c3 2.4 4.7 5.8 4.7 5.8-3.5-1-6.5-2-10.1-2.5z"/>
+    <path fill="none" stroke="#fff" stroke-linecap="round" stroke-width=".9" d="M228.4 209.9s10.5-2.6 11.8-2.2"/>
+    <path fill="#de3908" fill-rule="evenodd" d="M-128 426.7h768V512h-768z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/um.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/um.svg
new file mode 100644
index 0000000..1aa1162
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/um.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-um" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="um-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#um-a)" transform="scale(.9375)">
+    <g stroke-width="1pt">
+      <path fill="#bd3d44" d="M0 0h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8V197H0zm0 78.8h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8v39.4H0zm0 78.8h972.8V512H0z"/>
+      <path fill="#fff" d="M0 39.4h972.8v39.4H0zm0 78.8h972.8v39.3H0zm0 78.7h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8v39.4H0z"/>
+    </g>
+    <path fill="#192f5d" d="M0 0h389.1v275.7H0z"/>
+    <path fill="#fff" d="M32.4 11.8L36 22.7h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9H177l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 39.4l3.5 10.9h11.5L70.6 57 74 67.9l-9-6.7-9.3 6.7L59 57l-9-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7L124 57l-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5L330 57l3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 66.9L36 78h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7H29zm64.9 0l3.5 11h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zm64.8 0l3.6 11H177l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7h11.5zm64.9 0l3.5 11H242l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 11h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.2-6.7h11.4zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.5zM64.9 94.5l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 122.1L36 133h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9H177l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 149.7l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zM32.4 177.2l3.6 11h11.4l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 11H177l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 11H242l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 11h11.4l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 204.8l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 232.4l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.3-6.7H29zm64.9 0l3.5 10.9h11.5L103 250l3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 10.9H177l-9 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.5z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/un.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/un.svg
new file mode 100644
index 0000000..b623650
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/un.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-un" viewBox="0 0 640 480">
+  <path fill="#4b92db" fill-rule="evenodd" d="M0 0h640v480H0z"/>
+  <g transform="matrix(.6 0 0 .6 -40.6 0)">
+    <path id="a" fill="#fff" d="M663.9 587a71 71 0 01-9.5 8.6c-21.2-22-46.2-46.2-69.9-46.2-14.7 0-25.2 11.2-37.6 19-17.1 11-40.6 17.2-60.7 9.1a66.2 66.2 0 01-29.2-20 63.6 63.6 0 0057.5 5c19.7-8.2 39.9-19.1 62.4-19.1 33.2 0 64.8 22.5 87 43.6zm-245.6-69c22 25 57.9 17 87.2 23.2 4.1 1 8 2.3 12.4 1.6-3.5-2.2-8.2-2.5-12.2-4-22.8-8.6-26.3-33-38.8-49.7 16 10.6 29.1 25 44 38.7a73.8 73.8 0 0036.7 16.2c-3.2 1.2-7.4 1-11 1.8-24 6-50.6 15.4-76.2 7a75.4 75.4 0 01-42-34.8zm-35.2-58c13.7 31.1 48.2 33.6 71 52.6a64 64 0 0013.5 9.2l.3-.2a99.5 99.5 0 01-15.1-16.5c-13.1-19-8.8-45-18.9-65.2a142 142 0 0123.1 34.9c8.5 20.2 11.4 43.3 30.5 58.7-20.7-6.8-44.5-5.5-63-17.6-19.6-12.8-37.7-33-41.4-55.8zm-14.7-62.8c2 27.4 31 42 45 64.5 3 4.8 6 9.8 10.3 13.6-.7-2.9-3-5.5-4.4-8.3a62.8 62.8 0 01-5.3-32.3c1.3-14 7.1-27 4.9-41.7 12 25.9 8.1 58.2 15 86.1 1.6 6.2 5.3 11.6 7.6 17.5-11.7-9-27.1-17-40-27a85.5 85.5 0 01-29-36.5 84.9 84.9 0 01-4.1-35.9zm.8-50.4c1.4-6.1 2.5-12.4 5.1-18-5 25.8 12.2 44.4 18 66.8 2.2 8.4 3 17.3 6.4 25.2.3.1.6-.2.8-.4-8.5-23.8 4-45.8 16-64.5a55 55 0 006.2-16.5c1.3 10.8-1 23.2-3 34.3-2.5 14.3-7.4 27.7-11.3 41.5a65 65 0 00-.5 27.4l-1.3-1c-9-16.6-26.8-29.6-32.1-47.8a102.6 102.6 0 01-4.3-47zm9.5-27.8a79 79 0 0119-50c.3-.2.6-.5 1-.4-12.6 19-1.1 43.2-2.8 64.9l-1.6 22.2c.2.2.2.9.8.6.8-2.5 1-5.1 1.4-7.7 3-18 18.8-30.4 32.1-43a28.5 28.5 0 007-10.4c-1.1 9-3.6 18.1-7.6 26.2-10.3 20.8-30.1 37.6-33.7 61.3-1.7-22.7-15.6-39.6-15.6-63.7zm33-65.9a46 46 0 0122-14.6c-16.5 11.3-15.6 31.4-20.6 48.2-1.8 6.1-4.5 11.9-6 18.2l.5.4a54 54 0 0113.5-19.9c11.5-10.8 28.8-17.4 34.5-33.3-.3 22.1-19.1 38.9-36.3 51.9a62.6 62.6 0 00-18.2 21.8c.6-6 1-11.2.4-17.1-1.8-19.3-3-41 10.3-55.6zm66.5-37.1c-12.1 10.7-20.2 24.4-29.6 36.7-7.7 10.3-18.4 16.6-27.5 25.2 5-10.2 5.8-22 12.1-31.9 10.7-17 28.5-23.6 45-30z"/>
+    <use width="100%" height="100%" transform="matrix(-1 0 0 1 1202.2 0)" xlink:href="#a"/>
+  </g>
+  <path fill="#fff" d="M409 262l-2.1-1.2a96.9 96.9 0 01-17.9 25.4l-12.5-12.6a78.7 78.7 0 0014.7-21.3l-2.1-1.2a76.5 76.5 0 01-14.4 20.8l-11.4-11.4a60 60 0 0011.6-17.1l-2.1-1.2a58 58 0 01-11.2 16.6l-12.5-12.5a39.8 39.8 0 008-12.6l-2.1-1.2a37.6 37.6 0 01-7.6 12l-11.5-11.4a21.2 21.2 0 005.4-13h16.2a37.3 37.3 0 01-2.5 12.4l2.1 1.2a39.8 39.8 0 002.8-13.6h17.8a57.4 57.4 0 01-5 22.1l2.2 1.2a60 60 0 005.2-23.3h16.2a75.8 75.8 0 01-7.2 31l2.1 1.2a78.3 78.3 0 007.4-32.2h17.9a95.9 95.9 0 01-9.6 40.7l2.1 1.2a98.5 98.5 0 0010-43 98.7 98.7 0 00-7.2-37.1l-2.2 1a96.3 96.3 0 017 34.9h-17.9a78.5 78.5 0 00-5.5-28l-2.2 1a76 76 0 015.4 27H380a60 60 0 00-4-20.6l-2.2 1a57.6 57.6 0 013.8 19.6H360a39.9 39.9 0 00-2.4-12.6l-2.2 1a37.5 37.5 0 012.2 11.6h-16.2a21.2 21.2 0 00-5.4-13l11.5-11.5a37.3 37.3 0 017.9 12.8l2.2-.9a39.7 39.7 0 00-8.4-13.6l12.6-12.6a57.5 57.5 0 0112.2 19.2l2.2-1a59.9 59.9 0 00-12.8-19.9l11.5-11.4a76 76 0 0116.1 25l2.2-1a78.5 78.5 0 00-16.7-25.7l12.6-12.6a96.2 96.2 0 0120.5 31.3l2.2-1a98.7 98.7 0 00-21.8-32.8 98.6 98.6 0 00-33-21.9l-.8 2.3a96.2 96.2 0 0131.3 20.4l-12.6 12.6a78.5 78.5 0 00-25.2-16.4l-1 2.2a76 76 0 0124.5 16l-11.4 11.4a60 60 0 00-19-12.4l-.8 2.2a57.6 57.6 0 0118 11.8l-12.5 12.6a39.8 39.8 0 00-12-7.8l-.9 2.3a37.4 37.4 0 0111.2 7.2L334.2 203a21.2 21.2 0 00-13-5.4v-16.2a37.4 37.4 0 0113.3 2.9l.9-2.2a39.8 39.8 0 00-14.2-3.1v-17.8a57.6 57.6 0 0120.7 4.2l.9-2.2a60 60 0 00-21.6-4.4v-16.2a76.1 76.1 0 0127.5 5.6l.8-2.2a78.5 78.5 0 00-28.3-5.7v-17.9a96.3 96.3 0 0134.9 7l.8-2.3a98.7 98.7 0 00-36.9-7 98.3 98.3 0 00-44.2 10.4l1 2a96 96 0 0142-10v17.8a78.1 78.1 0 00-33.7 8.1l1.1 2a75.9 75.9 0 0132.6-7.8v16.2a59.7 59.7 0 00-25 6l1 2.1a57.5 57.5 0 0124-5.7V179a39.7 39.7 0 00-15.7 3.8l1 2a37.4 37.4 0 0114.7-3.4v16.2a21.3 21.3 0 00-7 1.6l1 2a19 19 0 017.2-1.3 18.9 18.9 0 0113.4 5.5A18.9 18.9 0 01339 219a19 19 0 01-19 19 18.9 18.9 0 01-13.4-5.6A18.9 18.9 0 01301 219a18.9 18.9 0 015.6-13.5 19 19 0 016.2-4.1l-1.1-2.1a21.4 21.4 0 00-6 3.8l-11.4-11.5a37.5 37.5 0 019.9-6.7l-1.1-2a40 40 0 00-10.5 7L280 177.3a57.8 57.8 0 0114.8-10.3l-1-2a60.4 60.4 0 00-15.4 10.7L266.9 164a76.3 76.3 0 0119.3-13.6l-1-2a79 79 0 00-20 14l-12.6-12.7a96.6 96.6 0 0124.3-17.2l-1.1-2.1a99.5 99.5 0 00-44.5 44.8l2 1a96.6 96.6 0 0117.6-24.8l12.7 12.7a79 79 0 00-14.5 20.7l2 1.1a76.3 76.3 0 0114.1-20.2l11.5 11.4a60.3 60.3 0 00-11.3 16.5l2 1.1a57.6 57.6 0 0111-15.9l12.6 12.6a40 40 0 00-7.8 11.8l2.1 1.2a37.4 37.4 0 017.3-11.3l11.5 11.4a21.3 21.3 0 00-5.4 13.1h-16.2a37.5 37.5 0 012.8-13.2l-2-1.2a39.7 39.7 0 00-3.2 14.4h-17.8a57.5 57.5 0 015.2-22.9l-2-1a59.7 59.7 0 00-5.6 23.9h-16.2a76 76 0 017.5-31.7l-2.1-1.1a78.1 78.1 0 00-7.7 32.8h-17.9a96 96 0 019.9-41.3l-2.1-1.1a98.3 98.3 0 00-10.2 43.6 99.2 99.2 0 004 27.9l2.3-.6a96.8 96.8 0 01-3.9-26.1h17.9a78.8 78.8 0 003.3 21.7l2.3-.6a76.4 76.4 0 01-3.3-21.1H260a60.3 60.3 0 002.8 17.2l2.4-.6a57.8 57.8 0 01-2.8-16.6H280a40 40 0 002.3 12.2l2.3-.6a37.6 37.6 0 01-2.2-11.6h16.2a21.2 21.2 0 005.4 13l-11.5 11.5a37.4 37.4 0 01-7.9-12.9l-2.3.6a39.7 39.7 0 008.6 14l-12.7 12.6a57.5 57.5 0 01-13.2-22.2l-2.4.6a59.8 59.8 0 0014 23.3L265.2 272a75.8 75.8 0 01-18.1-30.8l-2.3.6a78.2 78.2 0 0018.7 31.9L251 286.3a96 96 0 01-23.5-40.1l-2.4.6a98.3 98.3 0 0025 42 99 99 0 0027.3 19.4l1.2-2.1a96.4 96.4 0 01-26-18.1l12.6-12.6a78.7 78.7 0 0022.1 15l1.2-2a76.3 76.3 0 01-21.6-14.7l11.4-11.4a60 60 0 0018.2 12l1.2-2.1a57.6 57.6 0 01-17.7-11.6l12.6-12.6a39.7 39.7 0 0014 8.5l1.1-2.1a37.4 37.4 0 01-13.4-8.1l11.5-11.5a21.2 21.2 0 0013 5.4v16.2a37.5 37.5 0 01-11-2l-1.3 2a39.8 39.8 0 0012.3 2.4v17.8a57.5 57.5 0 01-21.1-4.4l-1.2 2a60 60 0 0022.3 4.8v16.2a76 76 0 01-30.3-6.8l-1.2 2a78.4 78.4 0 0031.5 7.2v17.8a96 96 0 01-40.2-9.3l-1.2 2a98.5 98.5 0 0042.6 9.7c15.8 0 31-3.7 44.6-10.6l-1.2-2.2a95.8 95.8 0 01-42.2 10.4v-17.9a78.3 78.3 0 0034-8.3l-1-2.1a75.7 75.7 0 01-33 8v-16a59.8 59.8 0 0025.6-6.4l-1.1-2.1a57.4 57.4 0 01-24.5 6v-17.8a39.7 39.7 0 0016.3-4l-1-2.2a37.3 37.3 0 01-15.3 3.8v-16.2a21.2 21.2 0 0013-5.4l11.5 11.5a37.7 37.7 0 01-9.3 6.3l1.1 2.2a40 40 0 009.9-6.8l12.6 12.5a57.9 57.9 0 01-14.3 10.1l1 2.1a60.2 60.2 0 0015-10.5l11.4 11.4a76.5 76.5 0 01-19 13.5l1.2 2.1a78.7 78.7 0 0019.5-13.9l12.5 12.6a96.9 96.9 0 01-23.9 17.1l1.2 2.2a99 99 0 0025.3-18.4A99 99 0 00409 262z"/>
+  <path fill="#fff" d="M325.7 196h-.6v.7h.6zm-1.5-1h.8v.6h-.8zm-1.4-.2l.6.1.1-.6h-.7zm-.6-.2h-.7v-.7l.8.1zm-5.8-.8h.8v.6h-.8zm-1.7 1.2l.7.1v-.6h-.6zm0 1l-.7-.3v-.6l.9.3zm-1.4.7v-.6l.5-.1.1.6zm-78.6 61.6v-.5h-.5v1h.8v1.3h.6v-1.5zm7.5 9l-1-1-.9-1.1-.4-1-.7-1.8 1.5.8.5 1.4.7.5.7 1.5zm20.7 27.1l-.1-.9-.9-1.2 1.3.2 1.2 1.1.6 1.3-.8.4-.3-.6zm54-91.9h-1l-.3-2.2.6-.4v-1.1h-3.5v-1.1l.4-.3-.8-.3-.6.8-.2.9-1 .2v.5h-.7v1.3l-2.8 2.3-5.6-.2c-.3 1-1.3 0-1.3 0-.3-.7-1.6 0-1.6 0 0 1-2-.6-2-.6l-3.4-2.5c-2-1.8-5 .5-5.1 1 0 1.4-2.3.3-2.3.3s-2-.6-2.3.2c-.3.8-1.6.6-1.6.6l-.2.4-1 .2-.2.6-1.2.2h3c.8-.2-.3 1.7-.8 1.6H280l-.5.6h-1.3l-.6.8-1.9-.1s-1 .9-1 1.2c.1.3-.2 1.2-.5 1.2s-.9 1-.7 1.2c.2.3-.6 1.3-.6 1.3l-.2 1-.6.3v2.7l-1.2.8v1.2l-1.8 2 .2 1.5-1.5 1.7.2 1.6-.9.3-.2.7-.4 2.1 1 .1c.5-.2.4 1.3 0 1.6-.4.2-1.5.6-.9 1s-1.6.3-1.6-.3c0-.7-1.2-1.2-1.5-1-.3.2-.8-.9-.8-.9-1-1-4.4.1-4.4.1l-.5 1.7c-1.1.1-1.8 2-1.8 2-1 .3-1.6 1.4-1.3 1.7.3.3-.5.4-.5.4v2.2l-.5.7v2.5c.7 0 .6 1 .6 1-1 .2-.8 1.5-.8 1.5l-2.1.7-.4.6h-2.6l-.7.6-.7-.7h-5l-.2-.5-1-.2v-1.1h-1.6l-.3.7-1.6.1c.1 1-1.6 2.5-1.8 2.1-.2-.4-1.3-1.5-.8-1.7a13 13 0 011.8-.4v-.7l-3.7-.1-.4.6-1.5.1v1.6l-.7.2c-.5.3.1 1.4.1 1.4.7.7 0 1.9 0 1.9-.7.6.4 1.7.4 1.7.8.2-.5.8-.5.8.2 1 .8 1.3.8 1.3-.6 1 .4 1.5.4 1.5l.1 1.7.7.4v1.2l.4.7h1.6v-2.6c-1.5-1.6 1.1-2 1.2-1.4.1.6 1.2 1 1.2 1 .2 1.5 2 2.4 2.4.8.5-1.5 1-.6 1.2.1.3.8 2.2 2.5 2.2 2.5h1.5l.2 1.4c1.7-.1 2.2 0 2.9 2.4a4.4 4.4 0 002.6 3l1.4-.1c0-1.3 1.4.2 1.4.8 0 .6 2.7 2.9 2.7 2.9l2.7.6 2.5 2 1.9-.2h.8c.5-1.7 2.9.1 3 .7.2.6 1.8 1.7 2 1.2.2-.5 1.3-.2 1.5 1.3.2 1.5 1 1.2 1 1.2l5.6-.1 2-1.7 5.1-.1c2.6-.1 1-3.7.5-3.7-.9-.7.3-3.6.3-3.6l-7.3-6.8c-1.7 0-.2-2.4-.2-2.4 1.3-.8-.3-2.2-.3-2.2.2-1.2-.7-2.6-.7-2.6-1.8-1.2-1.3-3.5-1.3-3.5V245c-1.5-1.4.6-1.6.6-1.6.7-1.2-.5-2.1-.5-2.1V240l-1.7-.2-.2-4.8-3.6-5.1c-.7-.2-.2-1.5-.2-1.5 1-.5-.2-1.7-.2-1.7v-2.2l2-.2.5-.8h1v-2.6c.4-1.4 1.6-.7 1.6-.7l1.4.1.8-1.5.2-1.2h-1c-1.3-.8-.7-3.4-.7-3.4 2-2.9 4.1-1.2 4.1-1.2l1.4-.1c2.1 1.4.2 4 .2 4-.4.6-.2 2.5-.2 2.5l.5 3.3-1.3 1c-1 .7-1 2.1.1 2.4.8.1.5 2-.7.7-1.8 0 1 1.6.2 1.2 1.8 1 1.4-.8 1.4-.8l2.4-1.9c1-.7 2.5 1.5 2.5 1.8 0 .3 4 .1 4 .1 1 .7 1.5 2.6 1.5 2.6 1-1.5 3.4-.1 1.7.7 1.6 1 1.6 1.9 1.6 1.9 1.3-.4 1.3.6 1.3.9l.4-1.5c-1.5-1.1 2-1.5 1 .5l-.6.9 1 .8v2.3c2.3-.2 1.7-2.9 1.7-2.9l1-.2c0-1 .7-.4.7-.4-.7-3.4 1.6-4 1.6-4 1.3-.4 1.4-3.1 1.4-3.1-1-.4-.4-1.8.6-.6 1 1.2-.6-2.4-.6-2.4l-.8-.7-1.1-.1-.1-1.1h-1.8l-.3 1.4-.7.2-.2-.4-.3 1H296l-.1-1.1 1-.3.5-.6.3-1.7h1.3l1.7-.5c0-1.7 1-1.3 1-1.3l.6.5.9.7v.6l-.5.3-.1.8.3 1.2h.7c.3-1.7 2.4-1.7 3-.6l.6-1.5c-1.4-.7 0-1.8.4-1.3s1.3-1.3 1.3-1.3.7 1 0-.3c-.7-1.2.5-1.8.5-1.8-.2-1.2 1.3-1 1.3-1l.1-1.7h-1.4c-.3 1.4-1.5.1-.9-.2.6-.3 1.2-.9 1.2-.9v-1l.6-.2.1-1h1.5l1.3-.6.3-.5 1.4-.1 2-1.8-.2-.8c-1.2 0 0-1 0-1l.2-1.5z"/>
+  <path fill="#fff" d="M276.7 222.6l-1.8-.2.1.7h.5c.8 1.4.1 4.8.1 4.8s-1.2.1-1.4-.5c-.2-.6-.7 1.3-.3 1.7.4.3 1.8 0 2 1 0 1.2.8-.6.8-.6v-7z"/>
+  <path fill="#fff" d="M276.7 231.2l.6-.1.1-.7-1.5 1-1-.6v2.4l1.6 2.1.6-1.4.2-.9-.7-.3zm.8 6.4v-1h-.7v.9zm-.9 4.8v-.7l-.8.1v.7zm1.2-3.1a.4.4 0 000-.9.4.4 0 00-.4.5c0 .2.2.4.4.4z"/>
+  <circle cx="278.5" cy="241" r=".4" fill="#fff"/>
+  <circle cx="278.5" cy="229.4" r=".4" fill="#fff"/>
+  <path fill="#fff" d="M312.4 214.5l-1-.1-.3.5h-.5v.8h.5l.1.6-.4.4-.2.5-.8.2-1.8 1.7v.8l-.6.7-.6 1.6h-2l-.5 1.9.3 1.5 1.8.7.2-1 .6-.3.1-1 .4-.7.6-.7.2-.8 1-.6 1.2-.3.5-.6.2-1.2v-.9l.5-.6 1.2-.5v-2h-.6zm2.8 6.9v-1.5l-.2-1.3-1.5-.7-1 1-.3 1.4v1l-1 .2-.2 2.7-.8.3.1 1-1 .3-1.2.3-.2 1.3-.8.5-.4 1.3-.5 2.9s1 1.7 1.4.9c.5-.8 1.3-1 1.3-1l.3-.6h2.7c.2-1 1.5-.6 1.5-.1s1 0 1 0l.7-1h1.1l.1-1.3.5-.3V227c1.6-.5 1.4-2 1.4-2l.4-.5-.2-.7c-.8-.3-.4-1 .1-.8.5.2-.7-1-.7-1-.6.6-1-.5-1-.5h-1.6zm1.6 12.2c0 1.2-1.6 1.6-1.6 1.6l-1-.3-.7-.5V233l.8-.1.2.6 2.3.1zm5.4-6.5c.2 1 .2-1.4.6-1.3.4.1.1-1.4.1-1.4l-1.8 1.3c.9.1 1 1 1.1 1.4zm5.3-5.2c.4.9.3 2.2 1.8 3.2.5.3-.3 1-.8.7a15 15 0 01-2-2.5V222c.4-.8.8-.5 1-.1zm.3 31l.3.5.7-1-.6-.3-.7.5zM325 251v1.2m14.4-2.6l.8-.5-.3-.6-.8.5zm28.9 21l.9.5v1.7c1.3 1.2 5.2.2 5.2-.1l-.2-3.8-.5-.5-.1-2.5c.4-1.3-2-3.2-2.1-2.8-.2.4-1.5 0-1.5.5 0 .4-.8 2.4-.4 3.1.4.7-.3.7-.4 1.4-.1.7-1.1 2-1 2.6zm-2.2-4c-.2.8-1 1.2-1.3 1-.4-.4.5.4.7.8.2.4.8.4 1 0 .2-.4 0-1.3.3-1.7.2-.4-.6-.5-.7 0zm-4.7-18.6h.7v2h-.7zm10.4-19.4c-.5-.6 2-1.7 2.4-.4.4 1.2 0 1-.4.9-.4-.1-1.4.3-2-.5zm2.1-13.6v.6l1 .2.1-.6zm-4.5 1.6l.8.5h.3l.6-.4v.2l.6-.2-.2-.5v-.3l-.4.1-.7.5-.7-.5zM375 192h-1.5s.5.2-1-1.1c-1.3-1.3-2.2.3-2.2.3l-1.6.2v1.6l-.8.3v1h1.2s0 1.1.3.6c.3-.5 2.8.1 2.6 1.4-.1.5 2.5 1.8 2.2 3.4 1.3.2 1 1.5 1 1.5l1.7.2.5-1 .5.1v-.6l-1.1-.3-.2-3.3-.7-.5.2-.8-.8-.3.4-1.3-.7-1.4zm4.3 10.3h-.8l-1.8.2-1 2s.5.3 1 1c.3.7.5 4.8-.7 5.5-1.2.7.1.3.1.3l-.2 2.3c.3 1 .8.5 1.1 0 .3-.5.6-.6 1-1.1.4-.5 1-1.5 1.1-2.2.1-.7.6-1.8.3-2.1-.3-.3.3-1.7.3-1.7s.4-.8 0-1.6.1-1.8.4-2.2l-.8-.4zm1.2 4.2l.1-.8h.6v.8zm0 2.8l-.5-.3.3-.6.5.3zm-.9-8l-.4-1s0-.8.2-1.2c.2-.4-.4-.8-.7-1-.3 0-.2-.8-.3-1.2 0-.4-.8-.7-.8-.7l-.2-1.9c0-.3-.9-.7-.6-1l.8-.9c.3-.2-.3-1.6.2-1.3.5.3.5.8.7 1.2.2.4 0 1.8.4 2.1.5.3 0 1.4.7 1.4.8 0 .3 1.9.3 1.9s-.2 1.4.3 1.5c.5.1.2 2.5.2 2.5l-.8-.5zm-6.4-16.5c.3.4.9.7.9 1.1 0 .4-.2.7.4.8.6.1 1 0 1.2.4.2.5.2 1.4 0 1.8 0 .4.2 1 .7 1s.6 0 .6.4c0 .3.6-1.1.6-1.1-.5-.4-1-1.3-1-1.3l-.4-1.7c0-.2-.7-.4-1-.5-.3 0-.8-1-.8-1l-1.2.1zm1-.9c-.3-.4-.6-.7-1-.9-.4-.2-.7-.4-1.1-.4a.7.7 0 01-.6-1c.2-.4-.3-.6-.3-1s.3-.4.8-.1c.5.3.4.4.8.9s.6 1 1 .9c.4-.1.7.9 1 .6.5-.3.4.7.4.7l-1 .3zm-11.7 11.4c.5.6-3 .4-3 0s.3-1.8 1.2-1.5c.9.3 1-1.8 1-1.8s-.8.1-.1-.3c.7-.4 0-1-.3-1.3l-.6-.8h1.4c.6-.4.8-2.3.8-2.3 1.2.4 1.8-.5 1.8-.5l.6 1.2c.4.5-1 .7-.5 1 .5.3.7 1.2.5 1.5-.2.3-1.3 0-1.3-.3s-.4.5 0 1-.5 1.2-.7 1.2c-.2 0-1.5.2-.4.8 1 .6 2.3.3 2.3.3s.9 0 1.2.4c.3.5-.1.6-.6.6l-3-.2s-.6.7-.3 1zm-6.4 1c.5-.1 1.7-.2 2 0 .1.4-.8.8-.8.8l-1.2.2c-.4-.5-.5-1 0-1zm12.9-8.5c.8-.4 2.5-.4 2.4-1-.1-.7 1-.9 1-.9l.3 1.2.9.7v1l-.7.2c-1.1.3-.4.8-.4.8H370l-.3-1-.8-1zm-4-5.5c.7 0-.1 2.3 1.5 2.1 1.6-.2 0 .7 1.3.8 1.2.1.9-.9 1.3-1.6.4-.7.2-1.1-.5-1.3-.7-.2-.7-.2-1-1-.1-.8-1-1-1-1l-.2-1.2-1.3.8-1.3 1.7c0 1.3.7.7 1.3.7zm2.7 8.5l.3-.6.6.3-.3.6zm-1-1h.6v.8h-.6zm.5-13.4v.9h-.5l-.1-.8zm-1.7 9.4h.6v.5h-.6zm-1.6 0v-.6h1v.5zm-8.2 9.8l-.6-.3.3-.7.6.3zm-3.2-1.9v-.6h1v.5zm-17.3-.2l-2.2.1v.6h2.3zm-3.6.9l-.2-.9.6-.1.2.9zm-.4.6l-.2-.5.3-.1.2.5zm5-1.7l-.1.7 1 .1s.5.4.5.7c0 .3.7.6 1.1.6.4 0 1.5-.8 1.5-.8s.5-1.4.1-1.3c-.4.1-1.2.7-1.3.1 0-.6-1.3-.3-1.3-.3l-1.6.2zm5-1c0 .2-.3.6.3.7.6.1 1.7-.4 1.8.2.1.6.1 1 1 1.3a5 5 0 001.8.4l2-.2s1.3.3 1.6.5c1.1 1.2 1.8 1.5 2.1 1 .3-.5 0-1.7-.2-2 0-.5-1.5-2.4-2-2-.5.4-.6 0-1.5.3s-2.8.1-2.9-.3c0-.4-1.5-.6-1.5-1s-1-1-.9-.3c.1.6-.7.9-.9.7-.2-.2-.8.6-.8.6zm22.9-13l.7-2.3c-1-.2-.8-1.3-.8-1.3-.1-1-1.5-2-2-1.6-.5.3-.3-2.1-.3-2.1s.9-.6 1.3-.3-3.4-5.1-4.2-4.6c-.8.5-2.6-.5-2.5-1.4.1-1-3.6-4-3.6-4s-1.2-.8-1.4-.2c-.2.6-.6 1 0 1.4.6.3.5-.5 1.2.2s2 1.6 1.5 2.2c-.5.6-1 .8-1 .8l.6.8h1.1l.2 1.7s1.2.6 1.5 1.3c.3.7.3 1.1 0 1.6-.3.4-.9 1-.8 1.8.1.7 1 1 1 1h.7l.6.4v1.3c.8-.2 2.1 1 2 1.6 0 .7.2.3 1.2 1s.7.8 1.4 1.4c.7.5 1.3.2 1.6-.8z"/>
+  <path fill="#fff" d="M347.5 165.6c0-.4-.3-1.8.3-1.7.6 0 .2 0 1 .3s.7-.5.7-.5h1.1l1.4 1-.2 1h-1c-.5-.7-1.5-.4-1.3.3.2.7-.5 2-.9 2.1-.4.1-1.7.1-1.6-.5l.5-2zm-.8-2.7v-.9s0-.8-.6-.8-1.4-.6-1.2-1c.2-.4-1.7-.8-1.7-.8s-1.7-1.6-1-1.4c.5.2.2-.7.2-.7s-1.2.2-1.5 0c-.3 0-.2-1-.2-1s-1.2-.2-1.2 0 .4.4.6 1c.2.6.1 1.6 1 1.8 1 .2 1.1.4 1.2.8.1.4 1.2.5 1.2.5l.8.4 2.4 2zM336 152.5l-.3-.8-.8-.2v1zm-.3-4.2c-1-.8 1.4.6 1.4.6.8 0 1.3.6 1.3.9 0 .3 1 .2 1 .2l.1-.7-.8-1-.7-.5s-1-.1-1-.4c0-.3-1 1.2-1.4.9zm18.3.6c-.3.9-.4 2.1-.9 2.1s-.3 1.3-.3 1.3l1.7.1c.4.1.4 1.1.4 1.1 1.5 0 2.1 2 2 2.5-.3.5.5.5.5.5s0 1.6-.2 2c-.2.4 1.3.7 1.7 1.3.4.6-.2 2.6-.5 2.7-.3.2.8.5.7 1-.1.5.3 0 .4.8l.3 2.5 1.4.1c.2-1.3 2.8-1.4 3.2-1.2 1.7.6 3 3.2 3 3.8 0 .6-1.1.7-1.1.7l.2 3c1.7.5 3 3 2.9 3.3-.2.4 1.2.3 1.2.3.2-1.8 1.9-1.2 2-.6 0 .6.4 2 .4 2l.5.8.7.7h1l.4.6 1.2.2s1.1 1.2 1.2 1.5c.1.3 1.6.2 2 .3.4 0 1 .4 1.1.9.1.5.7 1.3.7 1.3s1.2.3 1.3.7l.6 1.3 1 .8.1 1h1.1l.3 1.3 1.8-.1 1-.7a6 6 0 002.3-2c.1-.5.3-2 1.3-1.7 1 .3.3-2.2.3-2.2s-1.4-1-1.3-1.5c.1-.5-1.4-1.5-1.3-2 .1-.3-1.3-1.2-1.2-1.6.1-.4-.7-1.5-.7-1.5L387 175l-.2-1h-1.2l-2.4-3 .1-.8h-.7V169l-.7-.4h-1l-2.3-2.5-.2-1.1h-1l.2-2.1c.7-1 .3-2.7.3-2.7s-1.4.7-2.1.4c-.7-.3.3-1 .3-1v-.8l-.6-.6s-1.7.2-1.8-.1l-.4-1.6-.1-1.7-.7-.3-.1-.7-1.1.1v-1.2l-.6-.2-.6-.3-.1-1.2-2.2-.1-.7-1-.8-1.2-2.5-.2-.6-.6-1-.2-.7-.3-.3.5h-2v.7c-1 .5-5 0-5 .4zm10.5-2.7c-.2-.7 2-1.5 2.5-.9s1.9.7 2 3.8c.1 1-1.7-1.1-1.7-1.1l-1.5-.5c-.8-.2-1.2-.7-1.3-1.2zm-29.3 1.3l-.5-.3.4-.9.5.3zm-5.1-10l-1.3-1.3v-1l-.4-.5-.4-1.4-1.3-.4-1.3.5-1.4.9-1.5.2-.8 1 3.2.2.6 1 2.3.2 1.5 1.5c1.3.5 1.6-.2.8-.9zm-.2-5c-.2-.8-1.5 1.2-.2 1.6 1.3.4 2.6 0 2.6 0l.3-.6 5 .1c.4-.4.6-1 .6-1s1.2-.4 1.7-.2 0-1.4-.4-1.2c-.5.2-1.5 0-1.5 0h-1.8c-.1-.6-1.7-.3-1.8 0-.1.5-.7.6-.7.6l-2.3.2c-.2.6-1.4 1-1.5.6zm-9.9 17.2c1.5.5 2.1 0 2.2-.3.1-.4.2-.5.8-.6.6-.1-.1-1.3-.7-1.2-.6 0-1.2-.2-1.3-.7-.1-.6-1.1-1.9-1.2-.9-.1 1-.7 1-.6 1.8.1.7.4 1.7.8 1.9zm-11.5 1.1c0-.4 2-.4 2.3-.1.3.3.1.8 1 .8s.5.6.4 1c0 .2-1 .1-1.2-.2 0-.3-1.6-.4-1.6-.4s-.8-.6-.9-1.1zm34-21.7l-.8.6-.5-.5-.5.5.7.7.2.2.2-.2 1-.8zm-5.5-1.8l-.7-.4-.3.5.8.5h.3l1.1-.7-.3-.5zm-3.3 20.8h-.1l-1-.1v.6h.8l.6 1 .5-.3-.7-1zm-33 28.2l.1 1.1h1.5c.6 0-.5-.7-.5-.7s-1.2.1-1-.4zm2 0l.3-.4.6.5-.4.4zm-18.2-18.9l.4-.4.6.6-.4.4zm29 130.3l-1-.5-.3.5.6.3-.2.2.4.5.5-.5.3-.3zm-7.8-7.3l-.4-.5-.6.5-.3.3.4.2.7.5.3-.5-.4-.3zm74.2-19.2c-.1-.5-.7-.7-.8-.8l-.2.6.2.1.1.5-.1.2.4.4c.4-.3.5-.7.4-1zm1-2h-1v-.9l1 .2zm23-7.8c.5-.3 1-.8 1 .4-.1 1.1-.6.7-1 1.1-.3.4-.6-1.1 0-1.5zm5.1-4.3a.8.8 0 010-.1 1.6 1.6 0 00-.2-.7l-.5.3.1.4c0 .2 0 .4.2.5.1.1.2.1.4 0l-.1-.5.1.1zm-1.3.5l.4 1.2.5-.2a11.9 11.9 0 01-.3-1.2l-.6.2zm-2.2 2.4h-.6c0 .4 0 1 .5 1l.2-.5-.1-.5zm-2.6-12a.6.6 0 00-.4-.5c-.4-.2-1.1.1-1.5.4l.3.5c.4-.3.9-.4 1-.4l.6-.1zm-27.7-32.4c-.4.4-1.3.6-1.3.6l-.3 1-.4.5v1c0 .7-1 1.1-1 1.1l-.4.5h-2.7c-1-.4-.3-1.6.3-1.5.6.1-.1-1.7-.1-1.7l.8-.1s0-1.8.4-1.8c.3 0-.1-.6-.5-1-.4-.3-1-1.3-1.3-1.2h-2l-.3.6-1.1.2-.1 1c-.6.8-3 2.3-2-.2l.4-.7v-.9h-1.8s-1-.4-1-.8v-.9l-2.1-2.3-2.5-.3-.2-.5-1.5-.2c-1.8-1-3.4-.1-3 1.4.2 1.5.7 2.1-.3 2.1s-1.2-.8-1.2-.8-.8-.3-.8.1-.3 1.2 0 1.6c.3.4-.4 1-.7.7-.3-.3-1-1.2-.9-1.5.2-.3-1.4-2.2.2-2.5 1.6-.3 0-1.2.5-1.4l.8-.4h.8l.5-.4-1.3-.2-.8-.1-1.5-.1a4.2 4.2 0 00-1.8 2.2c-.8 1.5-2.7-.6-2-1.4.7-.8-2.2-.1-2.7.3s-2 .2-2 .2c-.3.9-1.7-.1-1.3-.7.4-.6.4-1 .4-1l-.5-.2-.6 1.2c-1.3 0-1.7.8-1.5 1.3.3.5-.4-.1-.6.6-.1.7.2.7.7 1 .6.3-.3.3.1.8s1.6 0 1 .7c-.8.7-2.1.4-2.1.4-.1 1-2 .7-2.2.4l-1.7-2.1-2-.1c-.1-1.4 1-.7 1.4-1.8.4-1.1.6-3 .6-3s-1.6 0-1.7.4c-.1.5-1.1.9-1.1.9s-.8.3-.5.7c.3.4-.6.6-.6.6s.1.6-.1.9c-.8.8-2.8 0-3.1-.2l-1.2-.5-1.2-.8-1.4.6-.4.4h-1.5l-.1 1.2 2.7.3.2 2.5-1.1-.4h-.7l-.3-.6h-.6v2.1l.6.5.5.5 1 .1.2 1.3h2.5l.3.6h1.5l2.9 3-.2 1-.5.2c.2.7-1.3.3-1.3.3v.6l.7.1.7.4 1-1.7c1-.7 1.6.3 1.7 1 0 .5-.5.4-.5.4v1.5l.6.2c1 1.2-.4 1.9-.4 1.9l-.3 1c-.3.9-1.4.7-1.4.7l-.4.6-1.2.3 2.4.3c.2-.8.8-1 1-.6.4.4.4 1.1.4 1.1l.6.1-.1 1.1.6.2v3.3l.7.8c1.2-.5 1.2.3.6.7-.6.4-.2 2.2-.2 2.2l-.5.5v.8l-.6.4v1.2c-1-.5-2.2-.3-2.5 0-1-.6-2.8-.4-2.8 0 .6.9-.7 1-.7 1l-.7.9c.5 1-.5 1.1-.5 1.1v2l-1.2 1v2.7c0 .7 1.6.8 1.9.4.3-.4 1.5.8 1.5.8h.9l.2-1.8-.6-.3v-3l1-1c1.2-.5.8 2.5.8 2.8 0 1.2.6 1 1 .8 1-.4.3 1.2-.5 1-.8 0-.3 1-.3 1l.5.3-1 .7-.7.9-1-.3-1.2-.1-.4-.7-.7-.1-.1 1.4-.5.6-1.2 1.2c1.6 0-.2 1.1-.6 1.1.9.3-.1 1.2-2.4.5v.7l-.8.1.7.9h.8l-.3 1.8c0 1.3-3.3.4-3.6 0v2h-.7l.1 1.2v1.7l1-.2v.7l2.7.1 3.9-4.1 2.3-.5c.2-1 1.2.2 1.2.2 1-.1 1.2.6 1.2.6l1.3.2c1 .3.4.4.5.8 0 .6.6.4.6.4l.2-1.3.6.1-.6-.7-1.1-.5-1.2-.5c-.8-1.1.2-1 1-.8h1.3s1.5 2 1.5 2.5.7.6.7.6h.9l.3.6h.9l.3.6h1.8v-.9l-1.6-.3-.1-1-1.2-.3c-.4-1.7.3-2.2.8-1.4h.6l-.2-1.4.7-.2-.2-2.2-.6-.2v-.7l2.5.1c-.2-1.3 0-1.9 0-1.9h.8v.5l3.1.3 2.2-2.5c-.1-.2.2-.3 0-.5-.4-.3-.8 0-1.3-.3s0-2 0-2.5c-.2-.4 1.6-1 1.3 0-.3.8 0 1.3 0 1.3 1.3-1.3 2.4 0 2.3.4 0 .3.7.6 1.2.3s1.1.9 1 1.5c-.3.6-2 .5-2.2-.1 0-.6-.4-.4-.6-.1-.2.3-1 .5-1.6.2a.5.5 0 01-.1-.2l-2.2 2.5h.1c1.2.7.6 1.6.2 1.8-.4.2-1 .2-1 .2l-.3.4-2.6.2-.2 1c-1.2-.1-1.7 1.3-1.4 2 .3.7 0 1.3 0 1.3l1 .5 1.5-.4c.2-1 1-1.2 1.8-1.8.8-.6 2.1 1 1.7 1.9-.4.8-.4 1.1-.4 1.1l.1 1-1 .3-.8.4v.5h-2.8l-.4.5-1.3.1-.4.7h-1s-1.4.8-.8 1.6c.6.8-2.5.7-3.2-.4-.2 1-1.3 0-1.3 0l-1.1-.2-.1-1.5c-.2-1-2.1-1-2-.3 0 .7-3.6.3-3.6.3l-1.2.5-1.1.7-.1.5-1.8.2-.8.4-.3-.6h-.8l-.8 1c-2 .2-4 1.4-3.9 2 .2.4-.8 1-.8 1l-.9.2-.6 1-1.2.3-.2 2.2-.6.4v.9l-.7.2v.5h-1l.6 1.6.8.4c1.4.2.8 2 .8 2h.8l.4 1.1.8 1.7c.3 1.2 1.2.9 1.6.8.4-.1.8 1.2.8 1.2l4 .1s-.2.4.5.6c.7.2 5.3.4 5.5.1-.2-.9 2.5-1.1 3.6-.3 1 .8 2.6.3 2.6.3l1.5 1.8 1 2.3 1.7.5 1.2.3.4 1.7h.9l.3 1.2c1 .8-.3 2.5-.3 2.5v2.3l.8.4-.1.8 1.3 1.3h1.5l3.7 4.1 3 1 .5 1.6.8-.1.6-.5 2.4-.1 1.2-1.2 1.3-.2 11-9.4-1-.6v-2.2c1.9-1.3 2-3.7.3-3.9-1.3-.1-.7-1.5.5-1.7l.7-.3v-.9l2.3-2.1v-1.6l-5-4.2c-2.2-.8 0-5.7 1.5-5.6 1.5.1-.1-7.4-.1-7.4l-.8-.4.2-2.5h-1.1l-1.8 2.4-.5 1.6c-.2 2.1-6.4 1.7-6.7 1.4-.3-.3-2.4-1.2-2.4-1.2s-1.6-1.3-1.9-1c-.3.5-1.7-.4-1.7-.1 0 .3-1.3-.8-1.3-.8l-2-.7 1.5-.3-.3-1.2 2.6 1.3c.3.4 1.6.3 1.6.3l.4.5s.8 0 1.3.5c.5.7 3.1.2 3.1.2l.7.6 1.1.4h3.1l.1-1.9.6-.6v-1.2l.6-.6v-1l.6-.2.1-2.2.5-.1v-4.9l-1.5-1.4c-.1.5-1.7.5-1.7.5s-.4.7-.7.7c-.3 0 .4 1 .2 1.5-.2.6-1 .6-1 .6l-1.5.4-.4.5h-1.6l-.2-1.3 1.8-.5 1-.5.5-1c.1-1 1.3-.9 1.3-.9s2.3-2 2.4-2.8c.1-1 .9-3.5 2.3-3.5h2.6c1-.4.7-1.7.7-1.7l1.3-.2.2.7s1.8.2 2 0c.2-.4.6-1 1-.8.6.3 2.2-.7 2.2-.7 0-.7 2.6-.4 2.6-.4l.3-1s-1.7-2.3-2-2.3c-.3 0-2-1.4-2.1-.9-1.6-.4-1.5-2.6-1.5-2.6l-.6-1.4c0-.8-1.5-2.5-1.8-2.3a1.5 1.5 0 010-2.6c.4 0 1.4-1.5 1.4-1.5l.5-1.4 1.7-.5.2-1.3-1-.1s1-1.9 1.6-1.9 3.8 0 4-.2c.4-.2 1-1.8 1-2 0-.4.8-.5 1-.6.4 0 1-.9 1.3-1.3.2-.4-.5-3-1-2.5z"/>
+  <path fill="#fff" d="M320 242c.1 0 .3.5.6.4.3 0 .5.6.1.6-.2 0-.2.3-.2.5 0 .1 0 .5-.3.8-.2.2-.4 0-.7-.1-.3-.2-.5-.2-.9-.2-.3 0 0 .6 0 .6s-1.6 0-1.3-.3c.3-.2.6-.3.4-.4-.2-.2 0-.3 0-.6s.7-.2.5-.4c-.2-.2 0-1.1.4-.6l.2-.5c-.2-.3 0-.3-.5-.5s-.1-1-.1-1v-.7c.2-.7 1.7-.8 1.8-.1v1.1l.5.2s-.1.4-.5.4 0 .2-.2.5l.2.4zm-5 .8c.3-.4.8-2.4 1.4-1.8.6.6 1 0 1 0s.3.3.1 1c-.1.5-.3 1.1-.6 1.2-.4 0-.7.3-1.2.4-.4 0-.6-.8-.6-.8z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/us.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/us.svg
new file mode 100644
index 0000000..5b55267
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/us.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-us" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <g stroke-width="1pt">
+      <path fill="#bd3d44" d="M0 0h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8V197H0zm0 78.8h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8v39.4H0zm0 78.8h972.8V512H0z" transform="scale(.9375)"/>
+      <path fill="#fff" d="M0 39.4h972.8v39.4H0zm0 78.8h972.8v39.3H0zm0 78.7h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.8h972.8v39.4H0zm0 78.7h972.8v39.4H0z" transform="scale(.9375)"/>
+    </g>
+    <path fill="#192f5d" d="M0 0h389.1v275.7H0z" transform="scale(.9375)"/>
+    <path fill="#fff" d="M32.4 11.8L36 22.7h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9H177l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 39.4l3.5 10.9h11.5L70.6 57 74 67.9l-9-6.7-9.3 6.7L59 57l-9-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7L124 57l-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5L330 57l3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 66.9L36 78h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7H29zm64.9 0l3.5 11h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zm64.8 0l3.6 11H177l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7h11.5zm64.9 0l3.5 11H242l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 11h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.2-6.7h11.4zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.5zM64.9 94.5l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 122.1L36 133h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.7-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9H177l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 149.7l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 10.9-9.3-6.8-9.3 6.8 3.6-11-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.8-9.2 6.8 3.5-11-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 10.9-9.2-6.8-9.3 6.8 3.5-11-9.2-6.7h11.4zM32.4 177.2l3.6 11h11.4l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7H29zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 11H177l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.3-6.7h11.5zm64.9 0l3.5 11H242l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.4zm64.8 0l3.6 11h11.4l-9.2 6.7 3.5 10.8-9.3-6.7-9.2 6.7 3.5-10.9-9.2-6.7h11.4zm64.9 0l3.5 11h11.5l-9.3 6.7 3.6 10.8-9.3-6.7-9.3 6.7 3.6-10.9-9.3-6.7h11.5zM64.9 204.8l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.3 6.7 3.6 11-9.3-6.8-9.3 6.7 3.6-10.9-9.3-6.7h11.5zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7H191zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 11-9.3-6.8-9.2 6.7 3.5-10.9-9.3-6.7H256zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.5 11-9.2-6.8-9.3 6.7 3.5-10.9-9.2-6.7h11.4zM32.4 232.4l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.3-6.7H29zm64.9 0l3.5 10.9h11.5L103 250l3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 10.9H177l-9 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.3-6.7h11.5zm64.9 0l3.5 10.9H242l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.4zm64.8 0l3.6 10.9h11.4l-9.2 6.7 3.5 10.9-9.3-6.7-9.2 6.7 3.5-11-9.2-6.7h11.4zm64.9 0l3.5 10.9h11.5l-9.3 6.7 3.6 10.9-9.3-6.7-9.3 6.7 3.6-11-9.3-6.7h11.5z" transform="scale(.9375)"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uy.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uy.svg
new file mode 100644
index 0000000..bad58e5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uy.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-uy" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#0038a8" d="M266 53.3h374v53.4H266zm0 106.7h374v53.3H266zM0 266.7h640V320H0zm0 106.6h640v53.4H0z"/>
+  <g fill="#fcd116" stroke="#000" stroke-miterlimit="20" stroke-width=".6" transform="translate(133.3 133.3) scale(2.93333)">
+    <g id="c">
+      <g id="b">
+        <g id="a">
+          <path stroke-linecap="square" d="M1.5 9L6 12c-8 13 1 15-6 21 3-7-3-5-3-17" transform="rotate(22.5)"/>
+          <path fill="none" d="M0 11c-2 13 4.5 17 0 22" transform="rotate(22.5)"/>
+          <path d="M0 0h6L0 33-6 0h6v33"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(45)" xlink:href="#a"/>
+      </g>
+      <use width="100%" height="100%" transform="rotate(90)" xlink:href="#b"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1)" xlink:href="#c"/>
+    <circle r="11"/>
+  </g>
+  <g transform="translate(133.3 133.3) scale(.29333)">
+    <g id="d">
+      <path d="M81-44c-7 8-11-6-36-6S16-35 12-38s21-21 29-22 31 7 40 16m-29 9c7 6 1 19-6 19S26-28 32-36"/>
+      <path d="M19-26c1-12 11-14 27-14s23 12 29 15c-7 0-13-10-29-10s-16 0-27 10m3 2c4-6 9 6 20 6s17-3 24-8-10 12-21 12-26-6-23-10"/>
+      <path d="M56-17c13-7 5-17 0-19 2 2 10 12 0 19M0 43c6 0 8-2 16-2s27 11 38 7c-23 9-14 3-54 3h-5m63 6c-4-7-3-5-11-16 8 6 10 9 11 16M0 67c25 0 21-5 54-19-24 3-29 11-54 11h-5m5-29c7 0 9-5 17-5s19 3 24 7c1 1-3-8-11-9S25 9 16 7c0 4 3 3 4 9 0 5-9 5-11 0 2 8-4 8-9 8"/>
+    </g>
+    <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#d"/>
+    <path d="M0 76c-5 0-18 3 0 3s5-3 0-3"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uz.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uz.svg
new file mode 100644
index 0000000..3ede7f1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/uz.svg
@@ -0,0 +1,30 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-uz" viewBox="0 0 640 480">
+  <path fill="#1eb53a" d="M0 320h640v160H0z"/>
+  <path fill="#0099b5" d="M0 0h640v160H0z"/>
+  <path fill="#ce1126" d="M0 153.6h640v172.8H0z"/>
+  <path fill="#fff" d="M0 163.2h640v153.6H0z"/>
+  <circle cx="134.4" cy="76.8" r="57.6" fill="#fff"/>
+  <circle cx="153.6" cy="76.8" r="57.6" fill="#0099b5"/>
+  <g fill="#fff" transform="matrix(1.92 0 0 1.92 261.1 122.9)">
+    <g id="e">
+      <g id="d">
+        <g id="c">
+          <g id="b">
+            <path id="a" d="M0-6L-1.9-.3 1 .7"/>
+            <use width="100%" height="100%" transform="scale(-1 1)" xlink:href="#a"/>
+          </g>
+          <use width="100%" height="100%" transform="rotate(72)" xlink:href="#b"/>
+        </g>
+        <use width="100%" height="100%" transform="rotate(-72)" xlink:href="#b"/>
+        <use width="100%" height="100%" transform="rotate(144)" xlink:href="#c"/>
+      </g>
+      <use width="100%" height="100%" y="-24" xlink:href="#d"/>
+      <use width="100%" height="100%" y="-48" xlink:href="#d"/>
+    </g>
+    <use width="100%" height="100%" x="24" xlink:href="#e"/>
+    <use width="100%" height="100%" x="48" xlink:href="#e"/>
+    <use width="100%" height="100%" x="-48" xlink:href="#d"/>
+    <use width="100%" height="100%" x="-24" xlink:href="#d"/>
+    <use width="100%" height="100%" x="-24" y="-24" xlink:href="#d"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/va.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/va.svg
new file mode 100644
index 0000000..258cca9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/va.svg
@@ -0,0 +1,479 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-va" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#fff" d="M320 0h320v480H320z"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M282.4-735.1c0 .6 56 222.8 118.2 300.5 69.4 87.3 113.2 87.4 113.2 87.4l70.9-17.8s-41.6 2.1-123.9-104.2c-83.4-107.7-109.4-286-108.1-282.8l-70.3 16.9z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M285-727.6c-1.5-9.4 33.9 221 140.2 327.2 53.1 53.1 88.6 53.1 88.6 53.1l88.6-17.7s-51.7 3.8-134-102.5c-83.5-107.8-108.6-263.3-108-263.9l-75.4 3.8z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M282.4-735.1c0 .6 56 222.8 118.2 300.5 69.4 87.3 113.2 87.4 113.2 87.4l70.9-17.8s-41.6 2.1-123.9-104.2c-83.4-107.7-109.4-286-108.1-282.8l-70.3 16.9z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M285-727.6c-1.5-9.4 33.9 221 140.2 327.2 53.1 53.1 88.6 53.1 88.6 53.1l88.6-17.7s-51.7 3.8-134-102.5c-83.5-107.8-108.6-263.3-108-263.9l-75.4 3.8z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.23995 .00428 -.00516 .19905 380 342.3)"/>
+    <g fill="#b00" stroke="#000" stroke-width="12.8">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01763 .00275 .01016 -.01162 411 329.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0173 .00313 .01036 -.0116 409.4 331)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01763 .00275 .01016 -.01162 407.3 332.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01789 -.0011 .00628 -.01341 429.5 312.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0177 -.00038 .0068 -.01331 428.4 313.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01791 -.00081 .0066 -.0133 426.8 315.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01769 .00056 .0078 -.01292 425.8 316.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01765 -.00269 .00455 -.0139 433.9 305.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0175 -.00223 .00475 -.01392 433 307.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01765 -.00269 .00455 -.0139 431.7 309.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01754 -.00195 .00507 -.01384 430.5 311.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01784 .00155 .009 -.01227 418 324)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01754 .00195 .0092 -.01225 416.4 325.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01784 .00155 .009 -.01227 414.5 327.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0173 .00313 .01036 -.0116 413.1 328)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01794 .00014 .00759 -.01293 424 318.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01769 .00056 .0078 -.01292 422.7 319.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01784 .00155 .009 -.01227 421.4 320.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01754 .00195 .0092 -.01225 419.9 322.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01668 -.00552 .00122 -.01437 443.6 284.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01707 -.00392 .00278 -.01429 443.6 284.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01715 -.00439 .00258 -.01424 442.7 287)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01707 -.00392 .00278 -.01429 442 288.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01664 -.00505 .0014 -.01443 445.7 277.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01668 -.00552 .00122 -.01437 445 280)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01664 -.00505 .0014 -.01443 444.4 282)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01752 -.00323 .00393 -.01402 438 298.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01738 -.00277 .00413 -.01406 437.1 300)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01752 -.00323 .00393 -.01402 436 302.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0175 -.00223 .00475 -.01392 435.2 303.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01715 -.00439 .00258 -.01424 441 291.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01738 -.00277 .00413 -.01406 441.3 292.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01752 -.00323 .00393 -.01402 440.1 294.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01738 -.00277 .00413 -.01406 439.2 296.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01541 -.00768 -.00154 -.01435 448.9 266.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01656 -.00577 .0009 -.01438 448.9 268)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01653 -.0053 .0011 -.01445 448.4 269.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01546 -.0072 -.00136 -.01443 449.6 259.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01541 -.00768 -.00154 -.01435 449.4 262.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01546 -.0072 -.00136 -.01443 449.1 264.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01656 -.00577 .0009 -.01438 447.7 272.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01664 -.00505 .0014 -.01443 447 273.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01668 -.00552 .00122 -.01437 446.3 275.8)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="12.8">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01781 .00178 -.00923 -.01216 503.2 324)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0175 .00217 -.00943 -.01214 504.7 325.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01781 .00178 -.00923 -.01216 506.6 327.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01776 -.00209 -.00521 -.01373 486 305.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01762 -.00135 -.00574 -.01366 487.1 307.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0178 -.0018 -.00554 -.01364 488.5 309.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0177 -.00041 -.00676 -.01332 489.5 310)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0174 -.00365 -.00345 -.01411 482.2 299)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01728 -.00319 -.00365 -.01415 483 300.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0174 -.00365 -.00345 -.01411 484.1 303)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01735 -.0029 -.00398 -.01409 485.2 304.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01792 .00057 -.00802 -.01274 496.7 318)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01766 .00098 -.00823 -.01273 498.1 319.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01792 .00057 -.00802 -.01274 499.9 321.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0175 .00217 -.00943 -.01214 501.2 322.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0179 -.00085 -.00656 -.01332 491 312)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0177 -.00041 -.00676 -.01332 492.3 313.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01792 .00057 -.00802 -.01274 493.5 314.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01766 .00098 -.00823 -.01273 495 316.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01621 -.00642 -.00009 -.0144 474.2 276.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01672 -.00485 -.00165 -.01441 474.1 277.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01677 -.00532 -.00146 -.01435 475 279.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01672 -.00485 -.00165 -.01441 475.5 281.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0162 -.00595 -.00027 -.01447 472.6 270.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01621 -.00642 -.00009 -.0144 473.2 272.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0162 -.00595 -.00027 -.01447 473.6 274.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01723 -.00419 -.00282 -.01421 478.6 291.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01713 -.00372 -.00302 -.01425 479.4 293)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01723 -.00419 -.00282 -.01421 480.4 295.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01728 -.00319 -.00365 -.01415 481.1 296.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01677 -.00532 -.00146 -.01435 476.3 283.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01713 -.00372 -.00302 -.01425 475.9 285)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01723 -.00419 -.00282 -.01421 476.9 287.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01713 -.00372 -.00302 -.01425 477.6 289)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01478 -.0085 .00266 -.01423 470.4 259)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01607 -.00667 .00022 -.0144 470.2 260.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01608 -.0062 .00004 -.01448 470.6 262.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01486 -.00804 .00249 -.01433 470 252.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01478 -.0085 .00266 -.01423 470.2 254.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01486 -.00804 .00249 -.01433 470.3 256.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01607 -.00667 .00022 -.0144 471 264.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0162 -.00595 -.00027 -.01447 471.6 266)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01621 -.00642 -.00009 -.0144 472.2 268.4)"/>
+    </g>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.23995 .00428 .00516 .19905 536 340.5)"/>
+    <g transform="matrix(.14437 0 0 .12085 423.6 295.3)">
+      <path fill="silver" d="M324.6-255.4l-50.2 50.1L449.8-29.9l50.1-50z"/>
+      <circle cx="354.3" cy="-1428" r="35.4" fill="#fff133" stroke="#000" stroke-width="1.2" transform="scale(-1 1) rotate(45 -177.9 -1104.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M-402-957l37.5 37.7-25 25-37.6-37.6c-12.5-12.5 12.5-37.5 25-25z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M-346.6-926.5l-50.1 50a25 25 0 01-25-25c10.8-25.8 25-38.4 50-50a26.9 26.9 0 0125 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M-352-931.9l37.7 37.6-50.2 50.1-37.5-37.5c5-20 30-45.1 50-50.1z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M-309-889l-50.1 50.1a25.1 25.1 0 01-25-25c10.8-25.9 25-38.4 50-50.1a26.9 26.9 0 0125 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M-314.4-894.3L28.4-551.5l-50 50.1-342.9-342.8c5-20 30.1-45 50.1-50z"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M49-531l-50.2 50.1a25.1 25.1 0 01-25-25c10.8-25.9 25-38.5 50-50.1A26.9 26.9 0 0149-531z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M49-531l225.4 225.5-50 50.1L-1.3-480.9c5-20 30.1-45 50.1-50z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M186.7-418.2l-75.1 75.1a25.1 25.1 0 01-25-25s0-25 25-50.1 50-25 50-25c11.7 1.5 21.5 12.4 25.1 25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M186.7-418.2l50.2 75.1-50.1 50.1-75.2-50c-2.8-2.5 0-25.1 25-50.2s49-24.4 50.1-25z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M336.6-506.7c0-35.4 0-86.6 17.7-130C372-593.3 372-542 372-506.7h-35.4z" transform="rotate(135 434.8 18.7) scale(1 -.81782)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="rotate(-45 399.4 -194.2) scale(1 .81782)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="rotate(135 434.8 18.7) scale(1 -.81782)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M-314.4-894.3l37.6 37.6c25 25 112.8 137.8 112.8 137.8s117.3 92.3 142.3 117.3L16-564c-25-25-180-129.8-180-129.8S-71.7-551.5-34.1-514l-37.6-37.6c-25-25-117.3-142.3-117.3-142.3S-289.3-769-314.4-794.1l-50-50c25 25 175.3 125.2 175.3 125.2s-100.2-150.3-125.3-175.4z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M299.5-230.3A907.4 907.4 0 00412.2-92.5a83 83 0 0050.1 25s0-25-25-50a899 899 0 00-137.8-112.8zm-62.6-112.8c87.6 87.7 187.9 137.8 250.5 200.5 50.1 50 15.4 88.4 1.4 100.6-14 12.1-52 50.3-101.6-.4C324.5-105 274.4-205.3 186.7-293c0-25 25.1-50 50.1-50z"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M218.3 257.9h23v73h-23z" transform="matrix(-1.2487 -1.4214 -1.3593 1.3175 1166.1 -102.6)"/>
+      <g fill="silver" stroke="#000">
+        <path stroke-width=".6" d="M301.2 396.9l17.7 17.7-17.7 17.7 8.8 8.8 17.7-17.7 35.5 35.5-17.7 17.7 8.8 8.8 17.7-17.7 17.8 17.7-53.2 53.2-35.4-35.4 17.7-17.8 8.9 8.9 8.8-8.9-35.4-35.4-8.9 8.9 8.9 8.8-17.7 17.7-17.7-17.7 8.8-8.8-8.8-8.9-35.5 35.4 8.9 8.9 8.8-8.9 17.8 17.8-17.8 17.7-8.8-8.9-8.9 8.9 35.5 35.4 8.8-8.9-8.8-8.8 17.7-17.7 35.4 35.4-53.1 53.1-17.8-17.7 17.8-17.7-9-8.8-17.6 17.7-35.5-35.5 17.8-17.7-8.9-8.8-17.7 17.7-17.7-17.7 124-124z" transform="matrix(-2.2946 0 0 2.2438 360.6 -1733.7)"/>
+        <path stroke-width="1.1" d="M318.9 786.6V822l88.6 88.6v-70.8L389.8 822h-35.5L319 786.6z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M230.4 698.8l70.4 70.4.8 35.2-71.2-71.3v-34.3z" transform="matrix(-1.1473 0 0 1.1219 157.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 259 -1387.9)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1189.1)"/>
+        <path stroke-width="1.1" d="M230.4 698.8l35.8 35.4v35.4l-35.8-36.5v-34.3z" transform="matrix(-1.1473 0 0 1.1219 218.8 -1349)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1507.1)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 137 -1427.6)"/>
+        <path stroke-width="1.1" d="M283.5 822l53.1-53.1v-35.4l-70.9 70.8 17.8 17.8z" transform="matrix(-1.1473 0 0 1.1219 137 -1546.9)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(-1.1473 0 0 1.1219 35.4 -1447.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3L265.8 769v-35.4l35.4 35.4v35.4z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1507.1)"/>
+        <path stroke-width="1.1" d="M389.8 822l-53.2-53v-35.4l70.9 70.8-17.7 17.8z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1546.9)"/>
+        <path stroke-width="1.1" d="M230.4 698l70.9 71h35.4l17.7 17.6v70.9l-124-124.4v-35z" transform="matrix(-1.1473 0 0 1.1219 -66.2 -1387.9)"/>
+        <path stroke-width="1.1" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(-1.1473 0 0 1.1219 157.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 -5.3 -1447.5)"/>
+        <path stroke-width="1.1" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(-1.1473 0 0 1.1219 -5.3 -1447.5)"/>
+        <path stroke-width="1.1" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 -86.6 -1527)"/>
+        <path stroke-width="1.1" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 15 -1626.4)"/>
+        <path stroke-width="1.1" d="M265.8 768.9v-35.4l17.7 17.7-17.7 17.7z" transform="matrix(-1.1473 0 0 1.1219 55.7 -1348.1)"/>
+        <path stroke-width="1.1" d="M301.2 804.3L265.8 769l17.7-17.7 17.7 17.7v35.4z" transform="matrix(-1.1473 0 0 1.1219 137 -1427.6)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l-17.7-17.7 17.7-17.7v35.4z" transform="matrix(-1.1473 0 0 1.1219 15 -1586.6)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M196.5 254.2h25.2v80.2h-25.2z" transform="matrix(-1.2509 -1.4194 -1.3614 1.3153 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M242.1 24.8c-147 0-113.1 164.2-100.4 124 9.4-29.5 35.5-70.8 65-80.2C246.9 55.8 233.4 78 248 78c14.7 0 1.2-22.2 41.4-9.4 29.5 9.4 55.6 50.7 65 80.2 12.7 40.3 53-124-112.3-124z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M389.8 166.5a141.8 141.8 0 01-283.5 0v-17.7c0-29 35.4 124 141.7 124s141.8-124.7 141.8-124v17.7z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(1.8992 0 0 1.8865 224 -100.5)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M389.8 148.8a141.8 141.8 0 11-283.6 0 141.8 141.8 0 01283.6 0zm-53.2 0c0 14.7 22.8 3 9.4 43a81 81 0 01-56.6 55c-40.2 12.7-26.7-9.4-41.4-9.4-14.6 0-1.1 22.1-41.3 9.4a80.2 80.2 0 01-56.6-56.6c-12.8-40.2 9.3-26.7 9.3-41.4s-22-1.1-9.3-41.3a80.2 80.2 0 0156.6-56.6c40.2-12.8 26.7 9.3 41.3 9.3 14.7 0 1.2-22 41.4-9.3a80.3 80.3 0 0156.6 56.6c12.7 40.2-9.4 26.6-9.4 41.3z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M126.5 157.7c-20.2 0-1.9 67.6-9 51.7a126.5 126.5 0 010-103.4c7.1-16-11.2 51.7 9 51.7z" transform="matrix(-1.6618 0 0 1.7607 1107.2 -99.5)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M372 140a88 88 0 01-9.7 44.8c-8 13.7 9.8-44.8-8-44.8 17.7 0 1.7-58.6 8-44.8a107.7 107.7 0 019.8 44.8z" transform="matrix(-1.8992 0 0 2.0316 1166.1 -106.2)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M296.3 263a123.5 123.5 0 01-96.5 0c-14.9-6.2 48.2 9.8 48.2-7.9 0 17.7 63.1 1.7 48.3 8zM248 42.6c0-17.7-63-1.7-48.2-8a123 123 0 0196.5 0c14.8 6.3-48.3-9.7-48.3 8z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1257.6 -120)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.2929 -1.3819 1.3912 -1.2842 808.9 712)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1223.2 329.9)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M267.7 308.5c-9.2 1.9-20.2 1-30 1-9.7 0-19.3-2.7-28.5-4.6l8.8-10.3a149.3 149.3 0 0060 0l-10.3 14z" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1223.2 329.9)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(-1.3912 1.2842 1.2929 1.3819 847.4 -345.2)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 789.1 314.4)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M267.6 281.5c-9.2 1.9-17.1 3-26.9 3s-23-.8-32.3-2.7l9.6 12.8a149.5 149.5 0 0060 0l-10.4-13.1z" transform="matrix(-1.3912 1.2842 1.2929 1.3819 850.6 -315.2)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M174 271.8l-.9 14.8-3.2 4.5 1-15 3-4.3zm156.5-6.2l3.6 4.2 1 13.6-2.9-3-1.7-14.8z" transform="matrix(-1.8992 0 0 1.8865 1166.1 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="#fff133" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(-1.2929 -1.3819 -1.3912 1.2842 1237.6 329.9)"/>
+    </g>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M513.8-790.2l35.4-17.7 35.4 17.7s-73.3 35.5-73.3 159.5c0 88.6 125.2 106.3 125.2 212.6 0 45.6-34.1 88.6-69.6 88.6s-88.6-17.7-141.7-70.9c35.4 17.7 76 37.3 106.3 36 19.6-.3 55-17.7 55-53 0-71-122.8-107-122.8-213.3 0-124 50-159.4 50-159.4z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M520.3-790.2l46.6-17.7 10 17.7s-70.6 35.5-70.6 159.5c0 88.6 125.9 106.3 125.9 212.6 0 45.6-26.7 87.4-65.3 88.6-73.4 2.3-90.4-24-141.7-70.9 43.1 32.3 105 46.8 129 34.2 29.4-15.4 35-36 35-53.8 0-70.9-120.9-104.4-120.9-210.7 0-124 52-159.4 52-159.4z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M513.3-789.7c7-2.4 36-18.2 71.3 17.3 17.8 17.7 17.8 53.1 17.8 70.8l53.1-53.1s-29-86.9-107.6-53.6a334.8 334.8 0 00-34.5 18.6z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M523.8-796c8.8-2.8 36.7-6.3 64.6 18.6 17.7 17.7 19 42.9 19 60.6l40.6-38c3.4-3.1-24.8-81.2-99.2-54a154 154 0 00-25 12.9z" transform="matrix(-.24 0 0 .1991 534 334.4)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.19534 -.02065 -.06668 .17315 439.6 337.1)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.17775 .02412 .0031 -.13262 320.6 95.2)"/>
+    <g transform="matrix(.14437 0 0 .12085 423.6 295.3)">
+      <g transform="rotate(45 478.1 -504.6)">
+        <circle cx="354.3" cy="-1428" r="35.4" fill="silver" stroke="#000" stroke-width="1.2" transform="translate(124 283.5)"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M460.6-1126.8v53.2h35.5v-53.2c0-17.7-35.5-17.7-35.5 0z"/>
+        <path fill="silver" stroke="#000" stroke-width="1.2" d="M443-1066h70.8a25.1 25.1 0 000-35.5c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.4z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M443-1073.6v53.1h70.8v-53.1c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="silver" stroke="#000" stroke-width="1.2" d="M443-1013h70.8a25.1 25.1 0 000-35.4c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.5z"/>
+        <path fill="#fff133" d="M443-117h70.8v248.1h-70.9z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M443-1020.5v484.8h70.8v-484.8c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="silver" stroke="#000" stroke-width="1.2" d="M443-506.7h70.8a25.1 25.1 0 000-35.4c-26-10.6-44.9-9.5-70.9 0a27 27 0 000 35.4z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M443-506.7v318.9h70.8v-318.9c-17.7-10.6-53.2-10.6-70.9 0z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M425.2-329.5h106.3a25 25 0 000-35.5s-17.7-17.7-53.2-17.7-53.1 17.7-53.1 17.7c-7.1 9.4-6.3 24 0 35.5z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M425.2-329.5l17.7 88.6h70.9l17.7-88.6c.3-3.8-17.7-17.7-53.2-17.7s-51.9 17.3-53.1 17.7z"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M336.6-506.7c0-35.4 0-86.6 17.7-130C372-593.3 372-542 372-506.7h-35.4z" transform="matrix(1 0 0 .81782 124 173.4)"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="matrix(-1 0 0 .81782 832.7 173.4)"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M318.9-506.7h17.7V-550c0-43.3-35.4-65-35.4-65l17.7 108.3z" transform="matrix(1 0 0 .81782 124 173.4)"/>
+        <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M478.3-117a908.6 908.6 0 0117.8 177.2 83 83 0 01-17.8 53.2s-17.7-17.7-17.7-53.2c0-17.7 0-88.6 17.7-177.1zM443-241c0 124-35.4 230.4-35.4 319 0 70.8 51.6 73.4 70 72.1 18.6-1.3 72.4-1.2 71.7-72.2 0-88.5-35.4-194.8-35.4-318.9-17.7-17.7-53.2-17.7-70.9 0z"/>
+        <path fill="silver" stroke="#000" stroke-width="1.2" d="M443-1020.5v53.2c0 35.4 17.6 177.1 17.6 177.1S443-642 443-606.6v53.2c0-35.4 35.4-219 35.4-219s35.5 165.9 35.5 219v-53.2c0-35.4-17.7-183.6-17.7-183.6s17.7-124 17.7-159.4v-70.9c0 35.4-35.4 212.6-35.4 212.6S443-985.1 443-1020.5z"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M218.3 257.9h23v73h-23z" transform="matrix(1.2487 -1.4214 1.3593 1.3175 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M242.1 24.8c-147 0-113.1 164.2-100.4 124 9.4-29.5 35.5-70.8 65-80.2C246.9 55.8 233.4 78 248 78c14.7 0 1.2-22.2 41.4-9.4 29.5 9.4 55.6 50.7 65 80.2 12.7 40.3 53-124-112.3-124z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M389.8 166.5a141.8 141.8 0 01-283.5 0v-17.7c0-29 35.4 124 141.7 124s141.8-124.7 141.8-124v17.7z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -753.9 -120)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M196.5 254.2h25.2v80.2h-25.2z" transform="matrix(1.2509 -1.4194 1.3614 1.3153 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M336.6 166.5c0 14.7 35.4 35.5 35.4-17.7h-35.4v17.7z" transform="matrix(-1.8992 0 0 1.8865 279.7 -100.5)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M389.8 148.8a141.8 141.8 0 11-283.6 0 141.8 141.8 0 01283.6 0zm-53.2 0c0 14.7 22.8 3 9.4 43a81 81 0 01-56.6 55c-40.2 12.7-26.7-9.4-41.4-9.4-14.6 0-1.1 22.1-41.3 9.4a80.2 80.2 0 01-56.6-56.6c-12.8-40.2 9.3-26.7 9.3-41.4s-22-1.1-9.3-41.3a80.2 80.2 0 0156.6-56.6c40.2-12.8 26.7 9.3 41.3 9.3 14.7 0 1.2-22 41.4-9.3a80.3 80.3 0 0156.6 56.6c12.7 40.2-9.4 26.6-9.4 41.3z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M126.5 157.7c-20.2 0-1.9 67.6-9 51.7a126.5 126.5 0 010-103.4c7.1-16-11.2 51.7 9 51.7z" transform="matrix(1.6618 0 0 1.7607 -603.6 -99.5)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M372 140a88 88 0 01-9.7 44.8c-8 13.7 9.8-44.8-8-44.8 17.7 0 1.7-58.6 8-44.8a107.7 107.7 0 019.8 44.8z" transform="matrix(1.8992 0 0 2.0316 -662.5 -106.2)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M296.3 263a123.5 123.5 0 01-96.5 0c-14.9-6.2 48.2 9.8 48.2-7.9 0 17.7 63.1 1.7 48.3 8zM248 42.6c0-17.7-63-1.7-48.2-8a123 123 0 0196.5 0c14.8 6.3-48.3-9.7-48.3 8z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.2929 -1.3819 -1.3912 -1.2842 -305.2 712)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -719.6 329.9)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M267.7 308.5c-9.2 1.9-20.2 1-30 1-9.7 0-19.3-2.7-28.5-4.6l8.8-10.3a149.3 149.3 0 0060 0l-10.3 14z" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -719.6 329.9)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M276.6 287.7a142 142 0 01-57.1 0l-1.5 7a149 149 0 0060 0l-1.4-7z" transform="matrix(1.3912 1.2842 -1.2929 1.3819 -343.8 -345.2)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -285.5 314.4)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M267.6 281.5c-9.2 1.9-17.1 3-26.9 3s-23-.8-32.3-2.7l9.6 12.8a149.5 149.5 0 0060 0l-10.4-13.1z" transform="matrix(1.3912 1.2842 -1.2929 1.3819 -347 -315.2)"/>
+      <path fill="silver" stroke="#000" stroke-width="1.2" d="M174 271.8l-.9 14.8-3.2 4.5 1-15 3-4.3zm156.5-6.2l3.6 4.2 1 13.6-2.9-3-1.7-14.8z" transform="matrix(1.8992 0 0 1.8865 -662.5 -102.6)"/>
+      <ellipse cx="82.1" cy="160.9" fill="silver" stroke="#000" stroke-width="1.2" rx="18.4" ry="20.1" transform="matrix(1.2929 -1.3819 1.3912 1.2842 -733.9 329.9)"/>
+      <g fill="#fff133" stroke="#000">
+        <path stroke-width=".6" d="M301.2 396.9l17.7 17.7-17.7 17.7 8.8 8.8 17.7-17.7 35.5 35.5-17.7 17.7 8.8 8.8 17.7-17.7 17.8 17.7-53.2 53.2-35.4-35.4 17.7-17.8 8.9 8.9 8.8-8.9-35.4-35.4-8.9 8.9 8.9 8.8-17.7 17.7-17.7-17.7 8.8-8.8-8.8-8.9-35.5 35.4 8.9 8.9 8.8-8.9 17.8 17.8-17.8 17.7-8.8-8.9-8.9 8.9 35.5 35.4 8.8-8.9-8.8-8.8 17.7-17.7 35.4 35.4-53.1 53.1-17.8-17.7 17.8-17.7-9-8.8-17.6 17.7-35.5-35.5 17.8-17.7-8.9-8.8-17.7 17.7-17.7-17.7 124-124z" transform="matrix(2.2946 0 0 2.2438 143.1 -1733.7)"/>
+        <path stroke-width="1.1" d="M318.9 786.6V822l88.6 88.6v-70.8L389.8 822h-35.5L319 786.6z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M230.4 698.8l70.4 70.4.8 35.2-71.2-71.3v-34.3z" transform="matrix(1.1473 0 0 1.1219 346.3 -1288.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 244.7 -1387.9)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 448 -1189.1)"/>
+        <path stroke-width="1.1" d="M230.4 698.8l35.8 35.4v35.4l-35.8-36.5v-34.3z" transform="matrix(1.1473 0 0 1.1219 284.9 -1349)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 448 -1507.1)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l35.4-35.4v-35.4l-35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 366.7 -1427.6)"/>
+        <path stroke-width="1.1" d="M283.5 822l53.1-53.1v-35.4l-70.9 70.8 17.8 17.8z" transform="matrix(1.1473 0 0 1.1219 366.7 -1546.9)"/>
+        <path stroke-width="1.1" d="M248 644.9v35.4l17.8-17.7-17.8-17.7z" transform="matrix(1.1473 0 0 1.1219 468.3 -1447.5)"/>
+        <path stroke-width="1.1" d="M301.2 804.3L265.8 769v-35.4l35.4 35.4v35.4z" transform="matrix(1.1473 0 0 1.1219 448 -1507.1)"/>
+        <path stroke-width="1.1" d="M389.8 822l-53.2-53v-35.4l70.9 70.8-17.7 17.8z" transform="matrix(1.1473 0 0 1.1219 448 -1546.9)"/>
+        <path stroke-width="1.1" d="M230.4 698l70.9 71h35.4l17.7 17.6v70.9l-124-124.4v-35z" transform="matrix(1.1473 0 0 1.1219 569.8 -1387.9)"/>
+        <path stroke-width="1.1" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(1.1473 0 0 1.1219 346.4 -1288.5)"/>
+        <path stroke-width="1.1" d="M354.3 822l106.3-106.3h35.5L389.8 822h-35.5zm53.2 17.8l106.3-106.3-17.7-17.7L389.8 822l17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 509 -1447.5)"/>
+        <path stroke-width="1.1" d="M407.5 839.8v70.8l106.3-106.3v-70.8L407.5 839.8z" transform="matrix(1.1473 0 0 1.1219 509 -1447.5)"/>
+        <path stroke-width="1.1" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 590.3 -1527)"/>
+        <path stroke-width="1.1" d="M318.9 786.6l17.7-17.7v-35.4l-35.4 35.4 17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 488.6 -1626.4)"/>
+        <path stroke-width="1.1" d="M265.8 768.9v-35.4l17.7 17.7-17.7 17.7z" transform="matrix(1.1473 0 0 1.1219 448 -1348.1)"/>
+        <path stroke-width="1.1" d="M301.2 804.3L265.8 769l17.7-17.7 17.7 17.7v35.4z" transform="matrix(1.1473 0 0 1.1219 366.7 -1427.6)"/>
+        <path stroke-width="1.1" d="M301.2 804.3l-17.7-17.7 17.7-17.7v35.4z" transform="matrix(1.1473 0 0 1.1219 488.6 -1586.6)"/>
+      </g>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="18">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452 279.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.1 277.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452.1 275)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.1 273.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452 287.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452 286)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452 283.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452 281.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452.3 262.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.3 260.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452.3 257.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.3 256)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452.2 270.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.2 268.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452.2 266.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452.2 264.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.7 313.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.8 311.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.8 309.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.8 307.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.6 322.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.7 320.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.7 317.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.7 316)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.9 296.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452 294.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 452 292.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 452 290.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.8 305)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.8 303)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.9 300.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.9 298.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.4 347.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.4 345.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.4 343.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.4 341.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.3 354.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.3 352)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.4 350.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.5 330.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.6 328.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.6 326.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.6 324.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.4 339.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.5 337.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.5 335)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.5 333)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.1 369.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.2 367.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.2 365)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.2 363.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451 376)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.1 373.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.1 371.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.2 360.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01446 .00854 -.00318 .01423 451.3 358.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01435 .009 -.00335 .01413 451.3 356.5)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="18">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 279.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 277.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 275.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 273.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 288.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 286.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 283.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 282)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 262.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 260.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 258.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 256.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 271)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 269)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 266.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 264.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.1 313.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.1 312)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.1 309.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.1 307.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.1 322.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.1 320.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.1 318.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.1 316.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 296.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 294.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 292.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 290.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 305.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.1 303.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455 301)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455 299)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 348)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 346.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 343.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 341.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 354.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 352.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 350.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 331)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 329)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.1 326.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 324.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 339.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 337.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.2 335.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.2 333.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.3 369.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 367.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.3 365.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 363.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 376.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.3 373.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 372)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.3 361)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01457 .0084 -.003 .01426 455.3 359.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01447 .00887 -.00316 .01416 455.3 356.8)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="12.8">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01804 .0045 .00258 .01426 466.7 266.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.00502 .01448 -.01369 .00945 463 262.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01316 .01078 -.0063 .01351 464.4 265)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.011 .01222 -.01787 -.00248 462.7 259.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0104 .0123 -.018 -.00234 465.1 259.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01155 .01189 -.01775 -.003 452.2 259)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01097 .01198 -.01788 -.00286 454.6 259.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01155 .01189 -.01775 -.003 457.6 259.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0104 .0123 -.018 -.00234 459.7 259.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01155 .01189 -.01775 -.003 448.7 258.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01268 .01087 -.01732 -.00452 450.4 258.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01676 .00696 -.01454 -.00862 449.5 257)"/>
+    </g>
+    <g fill="#b00" stroke="#000" stroke-width="12.8">
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01456 -.00876 -.0151 .00691 500.9 356.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01407 -.00899 -.01526 .0068 503 355.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01456 -.00876 -.0151 .00691 505.8 355)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01407 -.00899 -.01526 .0068 508 354.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01737 .00284 -.00405 .01407 524 347.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01147 .01155 .00717 .0131 526 341.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0175 .0033 -.00385 .01404 525.1 345.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0136 -.00978 -.01575 .0058 490.8 358.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0131 -.00997 -.0159 .00568 493 357.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01493 -.00832 -.0148 .00736 496.4 357.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01254 -.01046 -.0162 .00507 497.3 356.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01456 -.00876 -.0151 .00691 510.6 353.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01407 -.00899 -.01526 .0068 512.8 353)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 458.7 360)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01041 -.01198 -.01695 .00287 461 360)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 463.8 360)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01041 -.01198 -.01695 .00287 466.1 360)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 448.5 360.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01041 -.01198 -.01695 .00287 450.8 360.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 453.6 360.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01041 -.01198 -.01695 .00287 455.9 360.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01244 -.01081 -.01634 .00452 480 359.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01231 -.01064 -.0163 .00483 482.5 359.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01284 -.01048 -.01616 .00495 485.3 359)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0131 -.00997 -.0159 .00568 488 358.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 469 359.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0113 -.0114 -.0167 .00377 471.6 359.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0125 -.01076 -.01631 .0046 474.8 359.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01107 -.01156 -.01677 .00353 476.6 359.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00824 -.01334 -.0172 .00043 416.7 358.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00768 -.01335 -.01729 .00028 419 358.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00983 -.01256 -.01706 .0019 422.4 359.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00927 -.01262 -.01717 .00176 424.6 359.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00768 -.01335 -.01729 .00028 408.8 357.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00824 -.01334 -.0172 .00043 411.6 357.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00768 -.01335 -.01729 .00028 413.9 357.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00983 -.01256 -.01706 .0019 437.7 359.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00927 -.01262 -.01717 .00176 440 360)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01096 -.01188 -.01683 .003 443.4 360.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01041 -.01198 -.01695 .00287 445.7 360.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00983 -.01256 -.01706 .0019 427.5 359.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00927 -.01262 -.01717 .00176 429.8 359.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00983 -.01256 -.01706 .0019 432.6 359.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00927 -.01262 -.01717 .00176 434.9 359.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01773 -.00226 .00503 -.01378 399.9 338.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0141 -.00895 -.00376 -.01413 397.1 342.6)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.00947 -.01275 -.00925 -.01215 397 346.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.00376 -.01448 -.01383 -.00869 397.7 350.2)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01766 .00094 .00819 -.01275 405.4 333)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01793 .00053 .00798 -.01276 403.7 334.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01757 -.0018 .00523 -.0138 401.2 336.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.001 -.01499 -.0159 -.0055 399.7 353.5)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00438 -.01435 -.01702 -.00258 402.7 355.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.00824 -.01334 -.0172 .00043 406.5 356.8)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0174 -.00361 -.01096 .0111 516.7 351.7)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.0168 -.00469 -.0118 .01058 516.9 352.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01764 -.00272 -.01013 .01164 521.7 349.4)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(-.01667 -.00498 -.01207 .01037 518.6 351)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01634 -.0062 .01318 .00926 511.5 341)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0159 -.0065 .01336 .00919 509.6 340)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01686 -.00512 .01228 .01009 506.4 338.9)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0159 -.0065 .01336 .00919 518.5 344.3)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.01634 -.0062 .01318 .00926 516 343.1)"/>
+      <path d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.0159 -.0065 .01336 .00919 514 342.2)"/>
+    </g>
+    <g transform="matrix(.08053 0 0 .0956 438.4 288)">
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M212.6-1995v53.2h-53.1v35.5h53.1v106.3H248v-106.3h53.2v-35.5H248v-53.1h-35.4z"/>
+      <ellipse cx="239.2" cy="-1813.5" fill="#fff133" stroke="#000" stroke-width="1.2" rx="62" ry="57.3" transform="matrix(.57143 0 0 .61816 93.6 -679)"/>
+      <path fill="#fff" stroke="#000" stroke-width="1.2" d="M602.4-1119.4c0 68.5-10.5 145.7-29.3 205-120-26.4-268-39.7-339-39.7-87.6 0-246.2 13.3-345.3 26.5a630.8 630.8 0 01-30.5-191.8c0-273.8 105.2-390.2 367.5-496 233.3 105.8 376.6 222.2 376.6 496z" transform="matrix(1.0576 0 0 1.3394 -5.8 363.7)"/>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1715 0 0 .74463 -32.8 -634.9)"/>
+      <g fill="#fff133" stroke="#000" stroke-width="1.2">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.1725 0 0 .74463 -33 -766.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.13516 -.18643 .29356 .72091 -190 -703.6)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.1416 .16986 -.26746 .725 182.2 -778.4)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.92597 -.09509 .18717 .73508 28.8 -521.9)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.92699 .091 -.17909 .7359 124.8 -554)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1725 0 0 .74463 -33 -674.5)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.0735 0 0 .74463 -9.3 -386.9)"/>
+      <g fill="#fff133" stroke="#000" stroke-width="1.2">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.1042 0 0 .74463 -12.9 -518.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.06903 -.18643 .27645 .72092 -160.7 -455.6)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.0751 .16986 -.25188 .725 189.8 -530.4)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.87203 -.09509 .17626 .73508 45.4 -273.9)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.873 .091 -.16866 .7359 135.8 -306)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.1042 0 0 .74463 -12.9 -426.4)"/>
+      </g>
+      <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.105 0 0 .74463 -16.1 -865.2)"/>
+      <g fill="#fff133" stroke="#000" stroke-width="1.2">
+        <path d="M230.3-825.6l-53.1 53.2 35.4 35.4-17.7 17.7-35.5-35.4-53.1 53.1 53.1 53.2L195-684l17.7 17.8v53.1H248v-53.1l17.7-17.8 35.5 35.5 53.1-53.2-53.1-53.1-35.4 35.4L248-737l35.5-35.5-53.2-53.1z" transform="matrix(1.0799 0 0 .70238 -6.2 -1031.3)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.0455 -.17585 .27037 .68 -150.8 -971.8)"/>
+        <path d="M221-825.6l-8.4 53.2v35.4l-17.7 17.7v-35.4l-17.7 53.1 17.7 53.2V-684l17.7 17.8v53.1h17.7v-53.1L248-684v35.5l17.8-53.2-17.8-53.1v35.4L230.3-737v-35.4l-9.3-53.2z" transform="matrix(1.05143 .16022 -.24634 .68386 192.1 -1042.3)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.85284 -.0897 .17238 .69338 50.8 -800.3)"/>
+        <path d="M141.7-1020.5a38.1 38.1 0 0135.5-35.4c17.7 0 35.4 17.7 35.4 35.4s-17.7 35.4-17.7 35.4l70.8 70.9h-35.4l-53.1-53.1-53.2 53.1H88.6l70.9-70.9s-17.8-17.7-17.8-35.4z" transform="matrix(.85378 .08583 -.16494 .69414 139.3 -830.7)"/>
+        <path d="M567-657.3c0-44-150.9-79.7-336.7-79.7s-336.6 35.7-336.6 79.7v26.6c0-44 150.8-70.9 336.6-70.9S567-657 567-613v-44.3z" transform="matrix(1.0799 0 0 .70238 -6.2 -944.2)"/>
+      </g>
+      <ellipse cx="234.1" cy="-822.1" fill="#b90000" rx="375.9" ry="120.5" transform="matrix(.96627 0 0 .41385 13 -517.5)"/>
+    </g>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M513.8-790.2l35.4-17.7 35.4 17.7s-73.3 35.5-73.3 159.5c0 88.6 125.2 106.3 125.2 212.6 0 45.6-34.1 88.6-69.6 88.6s-88.6-17.7-141.7-70.9c35.4 17.7 76 37.3 106.3 36 19.6-.3 55-17.7 55-53 0-71-122.8-107-122.8-213.3 0-124 50-159.4 50-159.4z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.02071 -.00148 .00948 .02238 454.4 384)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M520.3-790.2l46.6-17.7 10 17.7s-70.6 35.5-70.6 159.5c0 88.6 125.9 106.3 125.9 212.6 0 45.6-26.7 87.4-65.3 88.6-73.4 2.3-90.4-24-141.7-70.9 43.1 32.3 105 46.8 129 34.2 29.4-15.4 35-36 35-53.8 0-70.9-120.9-104.4-120.9-210.7 0-124 52-159.4 52-159.4z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M513.3-789.7c7-2.4 36-18.2 71.3 17.3 17.8 17.7 17.8 53.1 17.8 70.8l53.1-53.1s-29-86.9-107.6-53.6a334.8 334.8 0 00-34.5 18.6z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#fff" stroke="#000" stroke-width="1.2" d="M523.8-796c8.8-2.8 36.7-6.3 64.6 18.6 17.7 17.7 19 42.9 19 60.6l40.6-38c3.4-3.1-24.8-81.2-99.2-54a154 154 0 00-25 12.9z" transform="matrix(.24 0 0 .1991 381.9 336.2)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(.19534 -.02065 .06668 .17315 476.4 339)"/>
+    <path fill="#fff133" stroke="#000" stroke-width="1.2" d="M344.5-596.3l9.2 22.1s1.5-9.7 8.5-11.5l7-1.7s27 49.3 32.3 58.1c5.3 8.8-3.6 16.8-1.8 16.8s26.5-11.5 26.5-11.5-10.6.9-15-6.2-34.8-60-34.8-60 6.1-2.6 11.4-5.2c5.3-2.7 10.6 8 10.6 8L385.2-614s0 8.9-4.4 10.6c-4.4 1.8-8 3.6-8 3.6s-3.5-6.2-8-13.3c-4.4-7 4.5-14.1 4.5-14.1l-23 11.5s8 4.4 10.6 8.8l5.3 8.8s-3.2 1.8-8.2 3.5c-3.6 1.9-7.7 0-9.5-1.7z" transform="matrix(-.17775 .02412 -.0031 -.13262 595.4 97)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.02071 -.00148 .00948 .02238 457.9 383.8)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.03487 -.00148 .01595 .02238 452.7 386.7)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.03487 -.00148 .01595 .02238 456 386.5)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.04323 -.00148 .01978 .02238 451.4 389.9)"/>
+    <path fill="#b00" stroke="#000" stroke-width="18" d="M212.6-453.5c-35.4 0-70.9 35.4-70.9 70.8s35.5 70.9 70.9 70.9h194.9c35.4 0 70.9-35.4 70.9-70.9 0-37-35.5-70.8-71-70.8H212.7z" transform="matrix(.04323 -.00148 .01978 .02238 455.4 389.6)"/>
+    <path fill="#ffe000" d="M0 0h320v480H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vc.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vc.svg
new file mode 100644
index 0000000..99ba90f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vc.svg
@@ -0,0 +1,8 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vc" viewBox="0 0 640 480">
+  <g fill-rule="evenodd">
+    <path fill="#f4f100" d="M0 0h640v480H0z"/>
+    <path fill="#199a00" d="M490 0h150v480H490z"/>
+    <path fill="#0058aa" d="M0 0h150v480H0z"/>
+    <path fill="#199a00" d="M259.3 130l-46.4 71.3 44.7 74.4 43.8-73.7-42.1-72zm121.2 0l-46.3 71.3 44.7 74.4 43.8-73.7-42.2-72zm-61.2 97.3l-46.4 71.4 44.8 74.4 43.8-73.7-42.2-72z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ve.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ve.svg
new file mode 100644
index 0000000..98ef473
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ve.svg
@@ -0,0 +1,26 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-ve" viewBox="0 0 640 480">
+  <defs>
+    <g id="d" transform="translate(0 -36)">
+      <g id="c">
+        <g id="b">
+          <path id="a" fill="#fff" d="M0-5L-1.5-.2l2.8.9z"/>
+          <use width="180" height="120" transform="scale(-1 1)" xlink:href="#a"/>
+        </g>
+        <use width="180" height="120" transform="rotate(72)" xlink:href="#b"/>
+      </g>
+      <use width="180" height="120" transform="rotate(-72)" xlink:href="#b"/>
+      <use width="180" height="120" transform="rotate(144)" xlink:href="#c"/>
+    </g>
+  </defs>
+  <path fill="#cf142b" d="M0 0h640v480H0z"/>
+  <path fill="#00247d" d="M0 0h640v320H0z"/>
+  <path fill="#fc0" d="M0 0h640v160H0z"/>
+  <g id="f" transform="matrix(4 0 0 4 320 336)">
+    <g id="e">
+      <use width="180" height="120" transform="rotate(10)" xlink:href="#d"/>
+      <use width="180" height="120" transform="rotate(30)" xlink:href="#d"/>
+    </g>
+    <use width="180" height="120" transform="rotate(40)" xlink:href="#e"/>
+  </g>
+  <use width="180" height="120" transform="rotate(-80 320 336)" xlink:href="#f"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vg.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vg.svg
new file mode 100644
index 0000000..2c69495
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vg.svg
@@ -0,0 +1,127 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-vg" viewBox="0 0 640 480">
+  <defs>
+    <linearGradient id="a">
+      <stop offset="0" stop-color="red"/>
+      <stop offset="1" stop-color="#ff0"/>
+    </linearGradient>
+    <linearGradient id="c" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -94.7 29.2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="d" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -94.7 30.2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="e" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -98 31)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="f" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -94.7 32)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="g" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -94.8 32.8)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="h" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -94.8 33.8)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="i" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -98 33.7)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="j" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -98 32.8)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="k" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -98 32)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="l" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.8281 0 0 1.8726 602.8 148.2)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="m" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -98 30.1)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <linearGradient id="n" x1="103.1" x2="92.5" y1="111.3" y2="107.8" gradientTransform="matrix(.64274 0 0 1.4534 -95.3 31)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+    <clipPath id="vg-b">
+      <path fill-opacity=".7" d="M0 0h640v480H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#vg-b)">
+    <path fill="#006" d="M0 0h960v480H0z"/>
+    <path fill="#006" fill-rule="evenodd" d="M0 0h350v175H0z"/>
+    <g stroke-width="1pt">
+      <path fill="#fff" d="M0 0v19.6L310.9 175H350v-19.6L39.1 0H0zm350 0v19.6L39.1 175H0v-19.6L310.9 0H350z"/>
+      <path fill="#fff" d="M145.8 0v175h58.4V0h-58.4zM0 58.3v58.4h350V58.3H0z"/>
+      <path fill="#c00" d="M0 70v35h350V70H0zM157.5 0v175h35V0h-35zM0 175l116.7-58.3h26L26.2 175H0zM0 0l116.7 58.3H90.6L0 13V0zm207.3 58.3L323.9 0H350L233.3 58.3h-26zM350 175l-116.7-58.3h26.1L350 162v13z"/>
+    </g>
+    <path fill="#fff" fill-rule="evenodd" d="M378.5 154.5l219.3-.9-.4 195.4s7.7 29.7-92 74.9c35.9-3.7 75-42 75-42s15.8-20.3 23.5-9a87 87 0 0020.8 21.7c5.7 4.4 10.2 16.6 1.6 25.6-8.5 9-22 10.2-25.6-.8-5.7 2.8-40.7 45.2-112.3 47.2A159 159 0 01375.6 419s-9.7 15.4-23.6 3.2c-13.4-15.8-3.2-26-3.2-26s11.4-6.5 14.6-11c5.3-6.1 7-14.2 15.9-14.2 10.6.8 14.7 9.3 14.7 9.3s36.6 38.7 76 43.5c-89-42.7-92.3-69.1-92-75.6l.5-193.7z"/>
+    <path fill="#006129" fill-rule="evenodd" stroke="#000" stroke-width="1.7" d="M383.8 159.7l209.1-1.2v188c.4 24.4-40.7 49.3-105 81-66.3-34.2-104.5-55-105-81.4l.9-186.4z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M409 366.9l12.3-18.1 12.4 18.1"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M423.7 360.1a2.5 2.5 0 11-4.9 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M411.2 380.3h19.2s.3-2.4-2-4c10-1.3 7.4-10.2 15.8-10.7 1.6.3-4.4 3.8-4.4 3.8s-5 3.6-2.8 5.4c1.9 1.4 2.7-.9 3-2.7.2-1.7 8-2.8 7-7.9-2-4-13 2.8-13 2.8h-7.8c-.5-1-2.7-4.5-5-4.5-2.6.1-4.4 4.5-4.4 4.5H399s-.6 4.6 8.4 5.5c2 2.6 3.6 3.4 5.3 4-1.1 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M412.6 376.4h16m-23.3-9.4s1.3 7.5 7.2 9.2"/>
+    <path fill="url(#c)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(316.6 141.4) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M423.5 349.2a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M408.2 329.6l12.4-18.2 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M423 322.8a2.5 2.5 0 11-4.9 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M410.5 343h19.2s.3-2.4-2-4c10-1.3 7.4-10.2 15.8-10.7 1.6.3-4.4 3.8-4.4 3.8s-5 3.5-2.8 5.4c1.9 1.4 2.7-1 3-2.7.2-1.7 8-2.9 7-7.9-2-4.1-13 2.8-13 2.8h-7.8c-.5-1-2.7-4.5-5-4.5-2.6.1-4.4 4.5-4.4 4.5h-17.8s-.6 4.6 8.4 5.4c2 2.7 3.6 3.4 5.3 4.1-1.1 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M412 339h15.9m-23.3-9.3s1.3 7.4 7.2 9.2"/>
+    <path fill="url(#d)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(316 104) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M422.8 311.9a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M539.4 295.6l12.3-18 12.4 18"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M554.2 288.9a2.5 2.5 0 11-4.9 0 2.5 2.5 0 014.9 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M541.7 309l19.1.1s.3-2.5-2-4c10-1.4 7.5-10.2 15.9-10.7 1.6.2-4.4 3.8-4.4 3.8s-5 3.5-2.8 5.3c1.9 1.5 2.7-.8 2.9-2.6.3-1.8 8.2-2.9 7-7.9-1.9-4.1-12.9 2.8-12.9 2.8h-7.9c-.4-1-2.6-4.5-4.9-4.5-2.6 0-4.5 4.5-4.5 4.5h-17.8s-.6 4.5 8.4 5.4c2 2.7 3.6 3.4 5.4 4-1.2 1-1.5 2.3-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M543 305.2h16m-23.2-9.4s1.3 7.4 7.1 9.2"/>
+    <path fill="url(#e)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(447 70.1) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M554 278a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M411.3 259.4l12.3-18.2 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M426.1 252.6a2.5 2.5 0 11-4.9 0 2.5 2.5 0 014.9 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M413.6 272.8h19.1s.3-2.5-2-4c10-1.4 7.5-10.2 15.9-10.7 1.6.3-4.4 3.8-4.4 3.8s-5.1 3.5-2.8 5.4c1.8 1.4 2.6-1 2.9-2.7.2-1.7 8.1-2.9 7-7.9-1.9-4.1-12.9 2.8-12.9 2.8h-7.9c-.5-1-2.6-4.5-4.9-4.5-2.6.1-4.5 4.5-4.5 4.5h-17.8s-.6 4.6 8.4 5.4c2 2.7 3.6 3.4 5.4 4.1-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M415 268.9h16m-23.3-9.4s1.3 7.4 7.1 9.2"/>
+    <path fill="url(#f)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(319 33.8) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M425.9 241.7a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M411.6 223.7l12.3-18.1 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M426.4 217a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M413.9 237.1H433s.3-2.4-2-4c10-1.3 7.4-10.1 15.8-10.6 1.7.2-4.4 3.7-4.4 3.7s-5 3.6-2.7 5.4c1.8 1.4 2.6-.9 2.9-2.6.2-1.8 8.1-3 7-8-1.9-4-13 2.8-13 2.8h-7.8c-.5-.9-2.7-4.4-4.9-4.5-2.6.1-4.5 4.5-4.5 4.5h-17.8s-.6 4.6 8.4 5.5c2 2.6 3.6 3.4 5.4 4-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M415.3 233.2h15.9m-23.2-9.4s1.2 7.5 7.1 9.2"/>
+    <path fill="url(#g)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(319.3 -1.8) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M426.2 206a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M412.2 187.5l12.4-18.1 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M427 180.8a2.5 2.5 0 11-4.8 0 2.5 2.5 0 014.9 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M414.6 201h19s.4-2.5-2-4c10.1-1.4 7.5-10.2 16-10.7 1.5.2-4.5 3.7-4.5 3.7s-5 3.6-2.7 5.4c1.8 1.5 2.6-.9 2.9-2.6.2-1.8 8-2.9 7-8-2-4-13 2.8-13 2.8h-7.8c-.5-.9-2.7-4.4-5-4.4-2.6 0-4.4 4.5-4.4 4.5h-17.8s-.6 4.5 8.4 5.4a10.8 10.8 0 005.4 4c-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M416 197h15.9m-23.3-9.4s1.3 7.5 7.2 9.3"/>
+    <path fill="url(#h)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(320 -38) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M426.9 169.9a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M540.4 188.1l12.3-18.1 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M555.2 181.3a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M542.7 201.5h19.1s.3-2.4-2-4c10-1.3 7.4-10.1 15.8-10.6 1.7.2-4.4 3.7-4.4 3.7s-5 3.6-2.7 5.4c1.8 1.4 2.6-.9 2.9-2.6.2-1.8 8.1-3 7-8-1.9-4-13 2.8-13 2.8h-7.8c-.5-.9-2.6-4.4-4.9-4.4-2.6 0-4.5 4.4-4.5 4.4h-17.8s-.6 4.6 8.4 5.5a10.8 10.8 0 005.4 4c-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M544 197.6h16m-23.3-9.4s1.3 7.5 7.2 9.3"/>
+    <path fill="url(#i)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(448 -37.4) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M555 170.4a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M539.2 223.6l12.3-18.1 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M554 216.8a2.5 2.5 0 11-4.9 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M541.5 237h19.1s.3-2.4-2-4c10-1.3 7.5-10.1 15.9-10.6 1.6.2-4.4 3.7-4.4 3.7s-5 3.6-2.8 5.4c1.9 1.5 2.7-.9 2.9-2.6.3-1.8 8.2-2.9 7-8-1.9-4-12.9 2.9-12.9 2.9h-7.8c-.5-1-2.7-4.5-5-4.5-2.6 0-4.5 4.4-4.5 4.4h-17.8s-.6 4.6 8.4 5.5c2 2.7 3.6 3.4 5.4 4-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M542.9 233.2l16-.1m-23.3-9.4s1.3 7.5 7.1 9.3"/>
+    <path fill="url(#j)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(446.9 -1.9) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M553.8 206a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M537.6 260l12.4-18.2 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M552.4 253.2a2.5 2.5 0 11-4.9 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M540 273.3h19s.4-2.4-2-4c10.1-1.3 7.5-10.1 15.9-10.6 1.6.2-4.4 3.7-4.4 3.7s-5 3.6-2.8 5.4c1.9 1.5 2.7-.9 3-2.6s8-2.9 7-8c-2-4-13 2.8-13 2.8H555c-.5-.9-2.7-4.4-5-4.4-2.6 0-4.4 4.4-4.4 4.4h-17.8s-.6 4.6 8.4 5.5a10.8 10.8 0 005.3 4c-1.1 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M541.3 269.4h16M534 260s1.3 7.4 7.2 9.2"/>
+    <path fill="url(#k)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(445.3 34.4) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M552.2 242.3a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.3" d="M539.2 367.3l12.3-18.2 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M554 360.5a2.5 2.5 0 11-4.9 0 2.5 2.5 0 014.9 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M541.5 380.7h19.1s.3-2.5-2-4c10-1.3 7.5-10.2 15.9-10.7 1.6.3-4.4 3.8-4.4 3.8s-5 3.5-2.8 5.4c1.9 1.4 2.7-1 2.9-2.7.3-1.7 8.2-2.9 7-7.9-1.9-4.1-12.9 2.8-12.9 2.8h-7.9c-.4-1-2.6-4.5-4.9-4.5-2.6.1-4.5 4.5-4.5 4.5h-17.8s-.6 4.6 8.4 5.4c2 2.7 3.6 3.4 5.4 4.1-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M542.9 376.8h16m-23.3-9.4s1.3 7.4 7.1 9.2"/>
+    <path fill="url(#l)" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M814.5 330.3c.6-2.8 1.6-3.3 2.8-6.8.2-3.5-2.8-3-2-5.3 1.6-2.4.8-4.7-2-6.5.5 3.2-3.8 6.1-3.8 8.7 0 2.6 2.2 2 2 6 .1 2.2-.6 1.7-.8 3.9h3.8z" transform="translate(-301.5 28.3) scale(1.0265)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M553.8 349.6a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M539 331.4l12.3-18.2 12.4 18.2"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M553.8 324.6a2.5 2.5 0 11-4.9 0 2.5 2.5 0 015 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M541.3 344.8h19.1s.3-2.5-2-4c10-1.4 7.5-10.2 15.9-10.7 1.6.2-4.4 3.8-4.4 3.8s-5 3.5-2.8 5.3c1.9 1.5 2.7-.8 3-2.6.2-1.7 8-2.9 7-7.9-2-4.1-13 2.8-13 2.8h-7.9c-.4-1-2.6-4.5-4.9-4.5-2.6 0-4.5 4.5-4.5 4.5H529s-.6 4.5 8.4 5.4c2 2.7 3.7 3.4 5.4 4.1-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M542.7 340.9h16m-23.3-9.4s1.3 7.4 7.2 9.2"/>
+    <path fill="url(#m)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(446.7 105.8) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M553.6 313.7a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <path fill="none" stroke="#f7c600" stroke-width="1.7" d="M434.7 298l12.3-18.1 12.4 18.1"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M449.5 291.2a2.5 2.5 0 11-4.9 0 2.5 2.5 0 014.9 0z"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M437 311.4h19.1s.3-2.4-2-4c10-1.3 7.5-10.2 15.9-10.7 1.6.3-4.4 3.8-4.4 3.8s-5 3.6-2.8 5.4c1.8 1.4 2.6-1 2.9-2.7s8.1-2.8 7-7.9c-1.9-4-12.9 2.8-12.9 2.8H452c-.5-1-2.6-4.5-4.9-4.5-2.6.1-4.5 4.5-4.5 4.5h-17.8s-.6 4.6 8.4 5.4a10.8 10.8 0 005.4 4.1c-1.2 1-1.5 2.2-1.5 3.8z"/>
+    <path fill="none" stroke="#000" stroke-width=".8" d="M438.4 307.5h16M431 298s1.2 7.5 7.1 9.2"/>
+    <path fill="url(#n)" fill-rule="evenodd" stroke="#000" stroke-width=".6" d="M66.3 170.5c.5-2.1 1.3-2.5 2.2-5.2.1-2.7-2.2-2.4-1.5-4.1 1.2-1.9.6-3.6-1.6-5 .4 2.4-3 4.7-3 6.7s1.8 1.6 1.6 4.6c0 1.8-.5 1.3-.6 3h3z" transform="translate(342.4 72.5) scale(1.3225)"/>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width=".8" d="M449.3 280.3a2.3 2.3 0 11-4.5 0 2.3 2.3 0 014.5 0z"/>
+    <g stroke="#000">
+      <path fill="#f7c600" fill-rule="evenodd" stroke-width=".8" d="M500.7 384.2s5 11.5 10.7 4.4 3.6-10.1 3.6-10.1l-12.7-7-3.8 8 2.2 4.7z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M511.7 382.6s.8.2 1.5-1-1.5-1.9-2.5-3.3l-1 2.3 2 2zm-28.9-3l-11.2 6.1s-5.6 1.1-6 0c-.4-1.1.2-2 3-2.2 3-.2 10.9-7.4 10.9-7.4l3.3 3.5zm.2-199.7l.4 4c.1 1.4-2.2 4.4-2.4 4.2s-1.2.2-1 1 1.7 1.1 1.7 1.1-.7 3 0 3c.7.2-1.8 3.8 0 4.8s4.9 2.2 6.3 2c1.4-.4 0 5.3 0 5.3l-4 8.3 21.5-2.2-4.5-7s-2-1.4-1.5-5.5c.6-4-.3-22.2-.3-22.2l-15.2-2-1 5.2zm-4 31.7s-6.9 3.2-6.6 11.8c-1.8 8.3-2.7 16.6-2.7 16.6s-8.2 9.3-10.7 12.6-6.3 10.2-7.7 12-6.8 7.7-6.6 10c.1 2.2-1.3 12 4.1 13.1 1.4.6 5.9-11.3 5.9-11.3s.2-5.2-1.3-6.1 3.3-4.3 3.3-4.3l11.4-8.5c2.1-1.7 7.8-8 7.8-8l3.2-38z"/>
+      <path fill="#fff" fill-rule="evenodd" stroke-width=".8" d="M487 205s1.8 4.9 5.8 4c4-.8 8.8-4.5 8.8-4.5s3.7-.1 4.3.4c.5.6 10.1 9.9 9.8 12.8-.3 2.9-4.4 2-6 4s-4 6.8-3.3 10.4 2.8 8.3 2.5 10.1-1.8 2.4-1.8 3.4 1.3 2.6 1.3 4.4-1.7 4.4-1.4 6.3c.3 1.7.4 7 .4 7l-.4 24.4s1.4.9 1.5 2.3c.1 1.4 9.4 41.7 9.4 41.7s-.4 1.3-1.4 1.1 3.8 6.3 4 8 4.8 16 4.7 18c-.2 2-.9 6.2-1.3 6.4-.4.1 3 8.9 2.5 10.2-.6 1.4-6.2 1.3-6.2 1.3l-1.6-.3s.2 1.8-1 2-9.2-.5-9.2-.5-2.4 3.6-3.8 3.5c-1.4-.1-3.2-2.6-3.6-2.2-.4.4 1.3 2.8.8 3.5-.4.7-7.5 2.2-8.8-1.2-1.4-3.3.8-2.5.4-3.2-.4-.6-3.6-2.4-4.6-1.9s2.5 1.4 2.4 2.8c-.2 1.4-3 3.5-4.2 3.5s-3.8-5.2-7.6-4.6c-4 .5-6.4 1.5-6.4 1.5s-4.6 2-6.5 1.5c-2-.4-2.8-2-2.8-2.8 0-.8 1.4-4.4 1.2-5.5s-1.2-2.2-1.2-3.9c0-1.6 3.2-7.3 3.2-7.3l-.2-25.6s-2.9 0-3-1.8 4.4-40.4 5.1-42.9c.7-2.5 2.5-11.3 2.5-11.3s-2 1-2.2 0 6.2-23 6.2-23 1.1-11 1.1-14c0-2.9-.5-6.9-.5-6.9s-5.7-2.4-5.8-6c-.6-6 5.4-9.2 6-11.2l2.8-7.8s3.1-5.2 8.1-6z"/>
+      <path fill="#f7c600" fill-rule="evenodd" stroke-width=".8" d="M485 381.3s-13.5 7-15.5 7.6c-2 .6-3.2-2.4-1.2-3 2-.5 5-.8 5-.8s-4.6-3.6-4.5-3.7l6.4-2.4c.1 0 2 3.6 3.2 3.4s4.9-3 4.9-3l1.6 1.9z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M503.9 385.1c1.3 1.7 1.8 4.5 4.7 2.9s-1.5-4.8-1.5-4.8l-3.2 2zm5.3-.2s1.4 1 2.6-.2-2.5-3.9-2.5-3.9l-1.8 2.1 1.7 2z"/>
+      <path fill="none" stroke-width=".8" d="M505 210.5s-12.3 7.9-12 10.6m14.8-9.3L505 215m6.7.3s-6.1 5-5.2 8.2m-23.7-13.6s-1.8 3.7-1.4 5c.4 1.2 3.5 6 3.9 8.8.4 3 0 5 0 5m-5.7-11.9s.6 4.4 1.4 5.3c.8.8 3 4.6 3.3 6m-5.8 7.2s3.6 1.8 7-5.2m5.3-4.8c-.1 0-2.6 6.8 1.8 9.3s7.8 2.2 9.8 1.5c1.9-.7 4-2 4-2m-17.5-.5s.3 9.2 13.8 18.2m-13.2-9.6s-.2 8 5.1 11.7m-8-21.1s-4 11.9-7.1 13.1m6-4.4s-.2 8.6-1.3 11.7m-1.1 2s2.8 3.5 5.8 3.2c3-.2 4.3-3.9 6.4-3.3 2 .6 4 2.2 8.9 1.8m-7 3.6s0 7 1.3 7.8.7 7.2.7 7.2m-19-18.5s-.1 6.6-1 9c-.8 2.4-2.5 6.4-2.2 9.8m-5.3 4c.7-.3 3-2.4 3-2.4m1.3 1.5s-6 25.5-4.3 40.8m5.7-39.5s-3 19.1-1.6 22.7m.1-23.3l11.7.8m1.6-1.5s3.2 1.7 7.6 1.4m-9 7.9s-.5 32.7-1.4 40m18.5-32.5s3.6 28.7 5.7 31.3M498 299.4s2.2 25.4 3.4 27.6m-35 8.9s4.4-1.4 8.3-5.6c4.4 6 11.2.3 11.2.3s10.5 7.2 15.3-.8c7.2 4.7 10.8-.7 10.8-.7s2.6 4 4.6 3.6m-11.6 2.8s5.5 25.4 13.5 32.6m-41.3-35.3s.7 21.3 1.9 36.2m-3-12.2s-.6 14-1.4 14.9M468 373s1.5 6 9.2.4 7.7 2 8 3c.3.7 1.5 6.7 4.4 1.7m6.1-8.2s-1.2 12.4 9.8 3.3c11-9 12.7 0 13 2.7"/>
+      <path fill="#9c5100" fill-rule="evenodd" stroke-width=".8" d="M482.6 179.1s3 .4 4.7-.6c1.6-1 3.6-1.4 5 .6s2.3 1.8 2.3 1.8-2 5.1 0 5.7c2.1.6 3 .6 3.2 1.2.2.7-1.8 2.3-1.2 3 .5.6 1.5 1.5 1.6 2 .2.6-1.2 3-.8 3.5.4.6 1.7 2.8 2.5 2.8s.3 3.5 2.8 2.6 2.3-3 2.3-3 2.7-.4 3.4-2.8c.7-2.4 2.3-3 2.3-3s3.4-1.7-1-4.5c0-19.4-12.8-17.4-12.8-17.4s-1.6-3.4-4-3c-2.6.4-2.7 3.3-4.5 3-1.8-.2-2.2-1.5-2.4-1.3-.1.1-1.6 2.9-1.6 3.6 0 .7-4.9-1-4.5 2.6s2.8 3.5 2.7 3.2z"/>
+      <path fill="none" stroke-width=".8" d="M495.9 174.4s-1 6 5.5 5.5c-.8 3.4 1.7 4.5 1.7 4.5m4.8 3.7c.2 0 3 1.8 0 4m-9.4.9s1.4 1.6 3 1.2c1.5-.4 4 1.6 4 1.6s2 .7 2.3.2m-17.7 2.3s4.7 1.8 7.7-5.7m-16.5-2.3l2.8.2"/>
+      <path fill="none" stroke-linejoin="round" stroke-width=".8" d="M481.7 193.1h2.5l-2.2 1"/>
+      <path fill="none" stroke-linejoin="round" stroke-width="1.4" d="M485.2 185.3c.4 0 2-.5 2.2 0 .3.3-1.6.6-2.2 0z"/>
+      <path fill="#ffc6b5" fill-rule="evenodd" stroke-width=".8" d="M515.2 218.3c.1 0 4.5 13.7 5.1 17.2a112 112 0 011.7 19.3c-.7 2-7.8 11.2-8.6 13.6-.9 2.4-5.9 11.4-5.9 11.4s-1.2 8.9-1.8 9.3c-.5.4 1.5 2.6 1.3 3.3-.3.8-4 4.7-5.7 4.3-1.7-.4-4.3-2.4-4.4-4.2s0-7.7 1.3-9.3 7.8-16.9 8.2-17.9c.4-1 6-13 6.1-15 .2-2.2-1.7-7-3.7-8.7-4.3-12.9-2.6-20.6 6.4-23.3z"/>
+      <path fill="none" stroke-width=".8" d="M450.5 277.8l.2 6.1m-5.9-6.5s4 6.5 3.6 10"/>
+      <path fill="none" stroke-linejoin="round" stroke-width=".8" d="M497 291s3-.3 2.9 4.6c1.9-6 5.7-6.2 5.7-6.2"/>
+    </g>
+    <path fill="#f7c600" fill-rule="evenodd" stroke="#000" stroke-width="1.7" d="M487.1 430c58.6-1.7 96.5-44 96-44.4-.4-.4 7.8-11.8 14.3-10.2 6.5 1.6 15.9 20.8 27.3 24.8 5.7 9-1.7 17.1-4.1 18.8-2.5 1.6-13.4 6-15-.4-1.7-6.6-5-5.3-5-5.3s-52 50.8-112.3 48.8c-62.2.4-113.5-48.8-113.5-48.8l-4.5 4.8s-4.9 5.3-7.3 5c-2.4-.5-13-7.4-13.8-14.3-.8-7 6.5-11.4 6.5-11.4s17.9-13.8 20-21.2c4-4 11.7 2.9 11.7 2.9s47.2 54.1 99.7 50.8z"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M354.5 398.5s4.8-1.3 6.6.7c1.8 2 14 14 14 14"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M365.5 404.1l-4.8 3.6s12.2 2.5 9.4 10.5M620.3 398s-2.4-1.3-6.2 1.5a158.5 158.5 0 00-13.4 13.6"/>
+    <path fill="none" stroke="#000" stroke-width="1.7" d="M609.4 403.8l5.3 4s-11 .8-8.6 11.2"/>
+    <path d="M416.5 411.4l-.4.5a3.6 3.6 0 00-2.5-.2c-.7.2-2 .8-3.9 2l-16.1 9.3-.4-.3 4-18.8c.5-2.3.7-3.7.7-4.2s-.4-1-1-1.6l.3-.5 8.7 6.2-.3.5-.3-.2c-.8-.5-1.4-.8-1.8-.8a.8.8 0 00-.8.3 2.4 2.4 0 00-.3.7l-.5 2.3-2.6 11.7 9.3-5.4a26 26 0 002.2-1.4l.8-.8c.2-.2.3-.5.3-.8l-.3-1a5.2 5.2 0 00-1.4-1.3l.4-.5 5.9 4.3m5.8 28l-.3.5-10.2-5.6.3-.5.6.4c.6.3 1.1.4 1.6.4.3 0 .6-.1 1-.4l1-1.7 7-12.8c.6-1 1-1.7 1-2a1.6 1.6 0 00-.3-1 3 3 0 00-1.2-1l-.6-.4.3-.5 10.2 5.6-.3.5-.7-.3a3 3 0 00-1.5-.5c-.3 0-.6.1-1 .4a6.8 6.8 0 00-1.1 1.7l-7 12.9a7.3 7.3 0 00-1 2c0 .3.2.6.4 1 .2.3.6.7 1.1 1l.7.3m37.3-8.8L457 438l-.6-.2a10 10 0 00-1.5-5.7 7.8 7.8 0 00-4-3.2 6.2 6.2 0 00-4.3 0 7.5 7.5 0 00-3.5 2.9 19.4 19.4 0 00-2.4 4.6c-.7 2-1.1 3.8-1.2 5.5s.3 3.1 1.1 4.2a7 7 0 003.4 2.4 8.6 8.6 0 001.6.4l1.8.1 1.6-4.4.4-1.6c0-.3-.2-.6-.5-1a2.8 2.8 0 00-1.2-.7l-.5-.2.2-.6 10.2 3.7-.2.6c-.8-.3-1.4-.4-1.8-.3-.3 0-.7.2-1 .5l-.6 1.4-1.6 4.4c-1.5.1-3 0-4.6-.2a22.8 22.8 0 01-4.7-1 14.1 14.1 0 01-4.7-2.7 13.6 13.6 0 01-2.7-3.3 10.9 10.9 0 01-1.3-3.9 11 11 0 01.6-5.1 11.4 11.4 0 016.2-6.8 12 12 0 019.5-.3c1 .3 2 .8 2.8 1.2l2 1.5a10 10 0 001.5 1.2h1a3 3 0 001-1l.6.2m15.7 25.3v.6l-11.6-1.8.1-.6.8.1a3 3 0 001.6 0l.7-.7c.2-.3.3-1 .5-2l2.2-14.5c.2-1.2.2-1.9.1-2.2a1.6 1.6 0 00-.6-.8c-.3-.3-.8-.5-1.4-.6h-.7v-.7l11.6 1.8-.1.6-.7-.1a3 3 0 00-1.6 0l-.8.7a7 7 0 00-.5 2l-2.2 14.5a7.3 7.3 0 00-.1 2.2c0 .3.3.6.6.8.3.3.8.5 1.4.6h.7m30-7.2l-.5 7.9-19.8 1v-.6h.7a3 3 0 001.6-.5c.3-.2.5-.4.6-.8v-2l-.7-14.7a7.3 7.3 0 00-.3-2.1c-.1-.3-.4-.5-.7-.7-.4-.2-1-.3-1.5-.3h-.8v-.6l11.9-.6v.6l-1 .1a3 3 0 00-1.5.4c-.3.2-.5.5-.6.8-.2.3-.2 1-.1 2.1l.7 14.2c0 1.1.2 1.8.3 2.2.2.3.4.5.8.6h3.9a6.3 6.3 0 002.9-.8 5.5 5.5 0 002-2c.4-1 1-2.4 1.4-4.1h.6m21.6-3.8l-7.5 2.2-.3 2.4v1.8c.3.6.6 1 1.2 1.1.3.1 1 0 2.2-.2l.2.6-7.1 2-.2-.5a3.3 3.3 0 001.6-1.5c.4-.7.6-2 .9-3.8l2.5-19.3h.3l13 15.1c1.2 1.5 2 2.3 2.7 2.6.4.2 1 .3 1.7.1l.1.6-10.3 3.1-.2-.6.5-.1c.8-.3 1.4-.5 1.6-.9a.9.9 0 00.1-.8 2 2 0 00-.2-.6l-.8-1-2-2.3m-.9-1l-5.3-6.4-1.1 8.3 6.4-2m28.5-29l2.9 5.4-.6.3a9.3 9.3 0 00-2.4-2.1 4.5 4.5 0 00-2.2-.5 5 5 0 00-2.1.8l-1.5.8 8.2 15.1 1.1 1.8c.3.2.6.3 1 .3.5 0 1-.1 1.5-.4l.7-.4.3.6L551 442l-.3-.5.7-.4a3 3 0 001.2-1l.2-1c0-.3-.3-1-.8-2l-8.2-15-1.4.7c-1.3.7-2.1 1.5-2.4 2.4a6.3 6.3 0 00.2 4.2l-.6.3-2.8-5.4 17.6-9.4m13.4-8l5.4 7.3.4-.3c1.1-.8 1.7-1.8 1.6-2.9s-.5-2.4-1.4-3.9l.5-.3 7 9.3-.4.4a8.6 8.6 0 00-2.6-2 3.5 3.5 0 00-2.1-.4c-.7 0-1.4.4-2.2 1l3.7 5a9.6 9.6 0 001.5 1.8l.9.2c.3 0 .7-.3 1.3-.6l1-.8a8 8 0 003.1-4.2 8 8 0 00-.5-5.2l.5-.3 3.5 6.2-15.4 11.6-.3-.5.6-.4c.5-.4.8-.8 1-1.2v-1a6.8 6.8 0 00-1-1.8l-8.9-11.7-1.2-1.4a1.6 1.6 0 00-1-.4c-.5 0-1 .3-1.6.7l-.6.4-.4-.4 14.9-11.3 4 5.3-.6.4a7.8 7.8 0 00-3.1-2 5 5 0 00-2.9.2c-.6.2-1.6.9-3 1.9l-1.7 1.4"/>
+    <path fill="none" d="M380.5 413c72.8 59.1 144.2 60.2 214 0"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vi.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vi.svg
new file mode 100644
index 0000000..db0e62c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vi.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-vi" viewBox="0 0 640 480">
+  <path fill="#fff" d="M0 0h640v480H0z"/>
+  <path fill="#369443" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M204.3 315s-.5-3.6 6.2-6.1c6.6-2.6 7.2-12.2 5.8-18.6 0 0-3.4 6-7.7 8.1 0 0-6.8 3.6-7.2 10.4 0 0 0 2.5-.5 4.5-.3 1-3.4-8.6 2.4-15.8 6-7.3 7.6-13.3 2.9-25 0 0-.5 7-5.1 11.1-4.7 4-5.3 4.4-5.2 14 0 0 0 3.4-1.7 4.5 0 0-3.6-5.3-4.6-8.8-1-3.5-1.4-5 2.8-9 0 0 13.2-8.7 3.7-27.4 0 0-.3 6.4-5 10.2-4.5 3.9-4.2 6.4-4.4 13-.2 6.7-.6 6.2-1.1 7.2 0 0-8.5-15.6-2-23.8 6.5-8.3 10.2-10 3-25.4 0 0 .3 8-5.5 11.8-5.7 4-4.4 13-4.4 13s.4 3.5-.8 6c0 0-8.1-15.9-.4-24.4 6.6-7.3 7-12.4 3.5-22.6 0 0-.4 4.7-4 7.3-3.7 2.6-6.6 5.1-5.9 15 0 0 .3 7-.6 9 0 0-3.4-6.4-4.4-10.5-1-4.2-1.3-6.6 1.2-10.7s12.5-16 .6-33c0 0-.3 5.5-3.4 10.5-3 5-1.6 10.9-1 15.4.7 4.5-1.5 8.9-1.5 8.9s-5.2-9.5-4-20.4c1-11-3.4-20-13.5-26.4 0 0-7.3 17 2.7 25.7 0 0 8.5 8.4 10.7 18.6 0 0-6.5-.6-12.3-12-5.9-11.4-18-9.6-18.8-9.7 0 0 2 17.6 20.6 22.6 0 0 12 2 14.2 10.8 0 0 2 6 2.8 9.2 0 0-3.8-1.5-7.3-6.7-3.5-5-3-5.7-14.8-6.9 0 0-4.7-.5-7.2-3.9 0 0 5 18.6 17.7 18.5 0 0 11.6-1.3 18 14l-2.9-2c-1.7-1.1-6-3.3-14.5-2.3s-10.9-.4-13-1c0 0 8.6 15.7 20.7 11 12.2-4.7 18 12.4 18.2 12.7 0 0-1.7-1.2-3.8-3.3-2.2-2.1-6.6-4.7-15-2 0 0-6.1 2.3-12.3.4 0 0 6 11.5 19.8 9.5a15.1 15.1 0 0117.3 10.2s-1.8-1-3-2c-1.3-1-6-3.7-16-.8-10 3-13.6-.4-13.6-.4s5.5 10 16.2 11.3c0 0 6-.1 8.4-1 2.5-1 9.2-2.5 13.8 4.2 0 0-1.3.2-3.2-.7 0 0-7-2.5-12.5 2 0 0-4.8 4.9-11.6 4 0 0 8.8 8.5 22.8 1.3 0 0 4.7-3.4 8.2-.8 3.5 2.7 11.5-2.6 11.5-2.6z"/>
+  <g fill="#f4c53d" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5">
+    <path d="M282.2 103.7s-1.6-14.5 10-16a38 38 0 0118 1.2l5.5 10.6-2 7.2-7.4 3.4s1.3-11-8.8-11.2c-2.6 0-4 1-8.1.3s-6.3 3.8-7.2 4.5z"/>
+    <path d="M363.8 139.6c-1.8 2.2-8.7 3-8.7 3s7.1 5.5 10.2 13.3c3 7.7-82.4 0-82.4 0s3.8-2.6 6.3-7.6c0 0-3.8 1.4-7.6-2.4 0 0 2.8 1 6.5-4.6 0 0 5.5-7 9.4-9 0 0-1.8 1.2-6.1-1.2 0 0 7.4-1 10-13.5 0 0 .5-2.8 3.3-7 2.8-4 2.2.9 7.4-5.4 0 0 2.4-4.4.3-7-2-2.8-4.3-1.8-8.6-4.4-4.4-2.6-6.3-4-4.8-8s5.3-3.4 5.9-3.4.8-3.5 5.5-5.9 17.4-1.3 19.2-.3c2 1 9.5 3.3 14 14.5 4.4 11.2-1.2 15.4 10.8 32.4 0 0-4.8 1-7.9 0 0 0 6.3 11.2 17.3 16.5z"/>
+    <path fill="none" d="M311 92.2c-10-.5-6.1-9.8-6.1-9.8"/>
+    <path d="M328 93.5s-1.7-.8-3.2-2.8c-2-2.7-6.7-4-9.1-1.4 0 0-2.5 2.8-4.8 3 0 0 2.6.7 4.3 2.3 1.7 1.6 3.5 2.8 6.1 2.4 2.6-.3 3-1.7 4.2-2.5 1.3-.8 2.5-1 2.5-1z"/>
+  </g>
+  <path fill="#369443" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M202.8 336.5s-.2-6.4 7.8-6.8l23.5 32.7s-.9 2.1-11.5 1.9c0 0-1.2 0-1.8 1.2-.9 2-18-29-18-29z"/>
+  <g id="a" fill="#f4c53d" stroke="#010002" stroke-width="10" transform="translate(3.6 26.2) scale(.15055)">
+    <path d="M1495 1807.9s-49.9 85.6-110.2 87c0 0-103.7-12.6-133 14.5-20.5 18.9-41.4 34.5-50 82.8-8.4 48.3 16.5 58.7 22.4 60.8 0 0 4.6 34.5 38.7 25.5 0 0 2 36 62.2 18.7 60.3-17.3 85.3-11.8 97-71.8 11.9-60.1 22.8-59.1 33.5-66.3 14.4-9.7 41.5-18.8 61.6-30.4 18-10.4 87.2-45.6 110.8-48.3 23.6-2.8 18.4-82.2 18.4-82.2h-61l-29.5-43.5-61 53.2zm192-429.4s-61 49.7-112.2 0c0 0-20.6 24.8-62 17.6-41.2-7.3-48.1-29-52-41.4 0 0-35.8 20.8-66 4.3-30-16.4-30-41.3-30-41.3s-52.5 10.4-79.4-25.2c-26.9-35.5-10.5-70.7 4-74.9 0 0-56.7 14.9-72.2-33.8a56 56 0 0116.4-62.8s-119.4-.6-168.4-38c0 0-40.7-25.6-16.4-52.5 0 0-107.5-17.2-134.4-60 0 0-11.8-11.8-7.9-32.5 0 0 .7-11.7 12.5-12.4 0 0-122.6-19-158-59.4 0 0-17-18.6-8.5-43.5 0 0 1.8-6.5 4.7-11 0 0-111.6-23.5-166.6-73.2 0 0-31.8-28.3-15.4-66.3 0 0-186.5-51-143.3-133.2 0 0-87.2-28.3-59.6-107 0 0-72.1-36.6-40.7-94.6 30.1-55.5 122.6 9.7 232 40 0 0 296.4 93.2 442.3 118l414.6 617.3 241.9 93.2 24.5 172.6z"/>
+    <path d="M1689.9 923.9s-38.9-29.2-108.2 5.1c0 0-23.3 16.1-41.7-1.5a37.3 37.3 0 014.3-57.5c51.7-38.3 70.8-153.2-7.8-200.9 0 0-114-67.6-532.3-174 0 0-35-9.8-53.8-5.1a52 52 0 00-37.6 37.8S894 581.1 957 611.6c0 0 28.4 13 57.7 21.4 0 0-32.2-7-46 24.8-13 30.4 6 61.5 65 81.5 0 0 16 6.2 38.7 11.7 0 0-50.5 14.5-26.2 55.3 0 0 21.6 42.8 98 50.4 0 0-57 6.2-16.8 60.4 0 0 17.7 29.7 73.4 40.7 0 0-42.2 1.4-21 39.3 21.4 38 71.5 59.4 120.9 62.9 0 0 26.7 1.4 45.4-2.8 0 0-47 23.5-19.4 62.8 0 0 20.3 28 71.1 26.6 0 0-13.1 44 24.1 60.6 29 13 53.1-7.8 53.1-7.8s-9.8 47.1 32.5 63.7c0 0 21.1 10.9 52.6 0 0 0 24 53.9 109.6 16 85.6-37.7 20.2-355.1 20.2-355.1zm5 489.4s-12.5 67.4-112 152.2c0 0-76.8 67.7-74.9 145.7 2 79.5-13.7 88.4-43.9 115.3 0 0 62.3 4.9 92.4-36.6 0 0-1.3 69-10.5 75.3 0 0 19.6 1.2 47.9-29.7 0 0 17-18 32.8-24.9 0 0-18.4 47.7-4 91.9 0 0 4.6-17.3 28.9-24.9 0 0 44-9 61-72.5 0 0 11.1-42 80-79.4 0 0 78-29.4 76-67.8-2-38.5-173.6-244.6-173.6-244.6z"/>
+    <path stroke-miterlimit="10" d="M2056.5 2282.2s-17.9 78.8-80 72.5c0 0-43.9-4.2-40.6-77.4 0 0-64.9 34.6-75.4-51 0 0-59 13.7-58.3-66.3 0 0-55 9.6-48.5-61.5 0 0-59.7 16-59.7-51 0 0-139.6-23.2 151.4-288.6l259.6 154.6-48.5 368.7z"/>
+    <path d="M2085.4 1928.3s-43.3 38.4-74.1-19c0 0-42-2-48.5-33.8 0 0-34.1-3.4-40.7-35.9 0 0-46.5-4.8-45.2-44.1 0 0-84.6-6.6 0-102.4 84.6-95.8 228.1 159 228.1 159l-19.6 76.2zm48.2-23.8c42 0 89.5 262 77.2 419.9-4.5 57.3-35.2 104.1-77.2 104.1s-72.6-46.8-77-104.1c-12.4-157.9 35.1-419.9 77-419.9"/>
+    <ellipse cx="2133.6" cy="1902.5" rx="58" ry="86"/>
+    <path fill="none" stroke-miterlimit="10" d="M1935.9 2277.3s6.6-138.7 126.8-337.6m-202.2 286.6s-18.7-80.1 150.8-317c0 0-19.7-56.5 40.6-92.8M1802.2 2160s-5.3-86.7 160.6-284.5c0 0-14.7-51 45.4-91.8m-254.5 314.8s6.2-87.6 168.4-258.9c0 0-8-52.4 50-84.9m-278 292.8s11.7-100.1 182.8-252c0 0-5.9-39.4 51.1-79.4"/>
+    <path fill="none" d="M372.3 432s134.3 77.8 552.9 155.6M431.9 539S795.6 657.6 965 672.2m-389.9 0s213.4 67 463.3 109.3m-281.2 30.3s241 57.9 356.2 67.5M919 925.6s203.9 42.5 255.5 47.6m-125.7 57.3s148.8 22.6 208 21.4m-23.2 69s60.2-2.8 89.1-7.6m-33.4 104.3s51.2-13.8 81.3-33.1m-5.9 133.2s39.4-15.2 58.4-56.6m37.7 93.6s30.4-27.3 32.4-57.7m81.6 81.5s-11.4-9.9-3.6-52.7m-11.1-62.8s-6-12.2-4-31.6m-211-581.3s68.8 27.6 91.7 65.6c23 38 7.9 74.9 0 96-3.9 10.7-52.4 104.2 4.6 171.9M1346 1057s.4-.3 24.6-8m-169.8-91.4s41 8.2 81.3 8.6m-138-109.8s48.2 4.9 93.5 4.2m-165.2-109.8s69.5 13.8 106.8 14.5M1014.7 633s85.7 24.4 149.4 33.1m141.6 50.4s-61.6 57.3 12.5 110.5c0 0-30.8 48.3 30.8 98.7m-16.4 23.8s-9.2 92.2 103.6 92.2c0 0-21.7 82.1 87.2 79.4 0 0 12.4 65.6 91 52.4M1441.3 1895s-17.9 4-56.6 0m-108.8 48.3s-54.4-8.3-51.8 109.8m84.6-82.9s-49.2-6.2-46 108.4m520.7-384.5s-23.6 4.8-40 23.5c-16.3 18.6-47.8 15.1-47.8 15.1s17-13.8 23-48.3c5.8-34.5 24.9-44.9 24.9-44.9m-56.3-32.6s-23.6 4.8-40 23.4c-16.4 18.7-47.9 15.2-47.9 15.2s17-13.8 23-48.3c5.9-34.5 24.9-44.9 24.9-44.9m23.7 188.5s-20.6 4.3-34.9 20.5c-14.3 16.3-41.8 13.3-41.8 13.3s15-12 20-42.2c5.2-30.1 21.8-39.2 21.8-39.2"/>
+  </g>
+  <use width="100%" height="100%" stroke="#010002" stroke-width="10" transform="matrix(-1 0 0 1 647.2 0)" xlink:href="#a"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M466 256l-14.3 61.7-5.9-4.2 14-59.2-9.8.2 23.1-42.3 1.5 48.7zm37 13l-43 50.8-4.6-5.2 42.8-50.2-8.7-4.6 39.2-26-20.3 43.8z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M492.6 242l-38.5 74-5.9-3.5 38.7-73.8-9.4-2.4 32.7-34.6-10.5 47.5zm-48 96.6l-2.9 11.7 8 8-11.2 47-10-13.3-14.6 6.8 11.1-47 10.4-3 2.6-11.7s3.2-1.2 6.6 1.5z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M447.3 330.8l-5.7 10.6 5.7 9.7-22.4 42.5-6.3-15.6-15.9 2.6 22.4-42.4h10.7l5.5-10.6s4 0 6 3.2z"/>
+  <path fill="#0081c6" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M448.2 333.9l-15 19.2 3.4 10.8-30.9 36-2.8-16.6-16-1.2 30.8-36 10.4 2.5 16-20.4s4.4 2.2 4.1 5.7zm-382.7-45c3.6-1.5 6.2-2.9 6.2-6.7 0-1-.5-3-1.5-6.1L46 202a59 59 0 00-3-7.9c-1.1-2-3.2-2.9-6.1-4h30.7c-3.3 1.5-6.4 2.7-6.3 6.3 0 1.3.4 3.2 1.1 5.7l18.6 58 18.5-58a20 20 0 001.1-5.7c0-3.7-3.2-5-6.3-6.4h29.8c-2.7 1.1-5 2-6 4.1a63 63 0 00-3.1 8L90.8 276a37.9 37.9 0 00-1.5 6.1s-1.1 4.7 6.2 6.7h-30zm515.3-7.6v-83.7c0-1.4-.3-2.5-.8-3.3s-2.5-3-5.5-4.2h27.7a11.5 11.5 0 00-5.5 4.2c-.5.8-.7 1.9-.7 3.3v83.7c0 1.5.2 2.6.7 3.4.5.8 2.5 2.8 5.5 4.2h-27.7c3-1.4 5-3.4 5.5-4.2.5-.8.8-1.9.8-3.4z"/>
+  <path fill="#fff" stroke="#010002" stroke-width="1.5" d="M324.8 309.8S399 276.9 399.1 201H250.5c.2 76 74.3 108.8 74.3 108.8z"/>
+  <path fill="#a60032" stroke="#010002" stroke-width="1.5" d="M262 201v48.5s5.6 11.3 11.4 18.3V201H262zm22.8 0v80s7.2 7 11.4 10.4V201h-11.4zm22.9 0v98.9s8.1 5.2 11.4 7v-106h-11.4zm80 0v48.5s-5.7 11.3-11.5 18.3V201h11.5zm-22.9 0v80s-7.1 7-11.4 10.4V201h11.4zm-22.8 0v98.9s-8.2 5.2-11.5 7v-106H342z"/>
+  <path fill="#162667" stroke="#010002" stroke-miterlimit="10" stroke-width="1.5" d="M399.1 145.8s-36.4 19-74.3-1.6c-37.9 20.6-74.3 1.6-74.3 1.6V201h148.6v-55.2z"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vn.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vn.svg
new file mode 100644
index 0000000..3fc2279
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vn.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vn" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="vn-a">
+      <path fill-opacity=".7" d="M-85.3 0h682.6v512H-85.3z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#vn-a)" transform="translate(80) scale(.9375)">
+    <path fill="#ec0015" d="M-128 0h768v512h-768z"/>
+    <path fill="#ff0" d="M349.6 381L260 314.3l-89 67.3L204 272l-89-67.7 110.1-1 34.2-109.4L294 203l110.1.1-88.5 68.4 33.9 109.6z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vu.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vu.svg
new file mode 100644
index 0000000..a773285
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/vu.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-vu" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="vu-a">
+      <path fill-opacity=".7" d="M0 0h682.7v512H0z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#vu-a)" transform="scale(.9375)">
+    <g fill-rule="evenodd">
+      <path d="M0 0l347.4 219.4H768v73.2H347.4L0 512V0z"/>
+      <path fill="#ff0" d="M0 493.7L354.7 267H768v-22H354.7L0 18.3v32.9L332.8 256 0 460.8v32.9z"/>
+      <path fill="#40aa40" d="M0 512l354.7-226.7H768V512H0z"/>
+      <path fill="#ce0000" d="M0 0l354.7 226.7H768V0H0z"/>
+      <path fill="#ff0" d="M95.8 266.6c1.2.3 1.6.6 2.8-1.1.2-1 1-2.2 1.7-3.3.8-1.5 1.2-2 2-1 .6.7 2.8-.5 3.6.1 1.4 1 .6.8 1.7-.2.9-1.8.1-1.6-1-2.4-1-.6-3.1.6-4 0 .3-1.8.9-2 2-2.4.8.5 3.1-.4 3.8-.4 1 .2 2 .3 2.3-1.2.5-1 .3-.3-.2-1-.8-.7-3 .5-3.9 0-1-.9-.9-1.2-.2-2.6.8-.5 1.5-.3 2.6.4 1 .8 2.8-.7 3.8-.8.9-1 1.9-1.3 1.2-2.5-.3-1-.6-1-1.8-1.3-1.2-.8-2.8.7-3.3-.5 1-1.4 1.3-1.1 2.5-.3.8.2 3-1.1 3.8-1.2 1.1-.3.6 1 1.4-1.8-.3-1.2-2.3.7-3.4.4-1 .2-2-.2-2-1.4 0-1.5.8-1.6 1.9-1.4 1 .2 3.1-1 4-1 1 .6 1.5.4 2.4-1 .6-1.7-.1-1-1.3-2-.8-.5-3 .7-3.9.1.2-.6.5-1.4 1-1.7.9.2 1.6.2 2.7.8 1 .5 2.8-1.5 3.7-2.2-.2-1-2 .4-3-.3-.6-.5-1.5-1-1.7-1.5.6-1.7.3-1.6 2-1 .8-.3 2.3-.3 1.3-1.9-.2-.2-1-.2-1.8-.5-.9-.6-1.7-1.3-2.7-1.5-.7-.1-1.7-.4-2.2-.2 0 1 .2 1.6.1 2.8.5.7 1.3.7 1.5 1-.9.8-1.4.4-2.3.4-1.2-.7-.5-3.1-1.9-2.6.3.7.2 3.4.8 4 .6.4 1.4.8 1.5 1.3-1 1.5-1.3 1.4-2.5.7-1-.6-.6-2.8-1.5-2.7-1 .8-1 .7-.8 1.8 0 1.4-.5 3.4.7 4.2 1.3 1 1.5.8.4 2.7-.7.9-1.1.7-2 .3-.9-.6-.7-3-1.4-3.7-1.4-.8-.6-.8-1.7.2-.3 1.3 0 1.6.5 2.7.4.7.4 3 1.2 3.2 1.2.7 1.3.6-.2 2-1 0-1.6.3-2.4-.7-1-.8-.4-3.2-1.7-3.2-1.2.1-1.5.1-1.4 1.8.3 1.5-.3 3.8.9 4.7 1.1.5 1.8.4 2.2 1.1-.4.3-1 1.3-1.4 1.5-.8 0-1.6-.5-2.5-.7-1-.5-.5-1.4-1.4-2-1 .3-1-1-1.5.3.2 1.2-.2 2.6 1 3.4.8.5 1.5 1.7 2.4 2.3 1 1.2.6 1.4 0 3-.9.1-1.8-.5-2.7-1-.9-.7-.7-3-1.6-3.5-.7-.8-.5-1.4-1.7.2 0 1 .1 1.2.4 2 0 1-.2 3.2.8 3.9 1 .2 2.2.7 3 1 .8 1 .1.8-.8 2.2-.5 1.4-.5 1.7-1.4 2.4-.8 1-1 1.5-.4 2.8z"/>
+      <path fill="#ff0" d="M121 267.9c.7-1.2 1.1-1.4 0-3.4-.8-.7-1.6-2-2.4-3.1-1-1.6-1.3-2.2 0-2.7.8-.3.6-3 1.5-3.7 1.4-1.1 1-.3.5-1.9-1.4-1.7-1.5-.8-2.7.2-1 .7-.7 3.5-1.5 4.2-1.6-1-1.6-1.8-1.5-3 .9-.7.9-3.6 1.2-4.3.6-1 1-2-.2-2.9-.8-1-.2-.4-1-.3-1 .7-.7 3.5-1.6 4.2-1.2.8-1.4.5-2.4-.8-.1-1 .3-1.7 1.4-2.6 1.1-.8.5-3.3.8-4.3-.6-1.4-.5-2.6-1.8-2.4-1 0-1.2.3-2 1.5-1.2 1-.4 3.2-1.8 3.2-.9-1.6-.4-1.8.8-2.8.5-.7.2-3.7.4-4.5.2-1.2 1-.2-1.1-2-1.2-.3-.2 2.6-1 3.6-.3 1.2-1 2-2 1.6-1.5-.6-1.2-1.5-.6-2.5s.3-3.8.7-4.7c1-1 1-1.4 0-3-1.3-1.4-1-.3-2.2.6-1 .7-.7 3.5-1.6 4.2-.5-.5-1-1-1.1-1.8.5-.8.7-1.6 1.8-2.5.8-.9-.4-3.5-.6-4.8-1-.2-.4 2.2-1.5 3-.7.5-1.4 1.2-2 1.2-1.3-1.3-1.4-1-.2-2.5.1-1 .7-2.5-1.2-2-.3 0-.5 1-1.1 1.6-1 .7-1.9 1.3-2.5 2.2-.4.7-1 1.7-1 2.3.8.5 1.5.5 2.6 1 .8-.2 1.2-1 1.5-1.1.3 1.2-.2 1.6-.5 2.6-1.2 1-3.2-.7-3.2 1 .8-.1 3.2 1 4 .7.6-.5 1.3-1.2 1.8-1 1 1.5.8 1.9-.3 2.8-1 .8-3-.4-3.1.5.3 1.4.2 1.4 1.3 1.6 1.3.5 2.9 1.9 4 1 1.5-1 1.5-1.3 2.7.6.6 1.1.3 1.5-.5 2.2-.9.8-3-.4-4 0-1.2 1.2-.9.4-.4 2 1 .8 1.4.7 2.7.5.8-.2 3 .8 3.4 0 1.1-1 1-1.1 1.7 1-.4 1.2-.3 1.8-1.6 2.3-1.1.8-3-.9-3.6.5-.4 1.4-.5 1.7 1.1 2.2 1.5.3 3.4 1.8 4.7 1 .9-1 1-1.8 1.9-2 .1.6.7 1.6.7 2.1-.2.9-1 1.5-1.6 2.4-.8.9-1.5 0-2.3.7-.1 1.1-1.4.6-.3 1.7 1 .2 2.3 1.2 3.4.4.9-.7 2.3-1 3.1-1.7 1.5-.6 1.5 0 2.8 1.2-.3 1-1.2 1.7-2 2.4-1 .7-3-.4-3.9.3-1 .5-1.4 0-.5 1.9 1 .5 1.2.3 2 .3 1 .5 2.8 1.6 3.9.8.6-1 1.6-2 2.2-2.8 1.1-.4.7.2 1.6 1.7 1.1 1.2 1.4 1.3 1.7 2.5.6 1.2 1 1.7 2.4 1.5z"/>
+      <path fill="#ff0" d="M98 314.5c0-5.3-.8-10.6 0-10.6 46.8 0 58.5-32 58.5-53.2S140.3 208 109.7 208c-35 0-46.8 20.8-46.8 42.6A37 37 0 0098 287.9c23.4 0 29.3-5.3 46.8-26.6-5.8 26.6-35 37.2-46.8 37.2-23.4 0-46.8-16-46.8-47.8 0-26.6 17.5-53.2 58.5-53.2 35.1 0 58.5 26.6 58.5 53.2 0 37.2-29.2 63.8-70.2 63.8z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/wf.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/wf.svg
new file mode 100644
index 0000000..9d43586
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/wf.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-wf" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ws.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ws.svg
new file mode 100644
index 0000000..1b3ecf4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ws.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ws" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#ce1126" d="M0 0h640v480H0z"/>
+    <path fill="#002b7f" d="M0 0h320v240H0z"/>
+    <path fill="#fff" d="M180 229.3l-20.7-14-19.9 14.1 6.5-24.9-19-15.2 24.5-1.5 8.1-23.6 8.8 24 24 .7-19 16.3zm-3.6-165.6L159.8 53l-16 10.4 4.4-20-14.6-12.7 19.4-1.6 7.2-18.6 7.4 18.7 19.1 1.7L172 44.3zm-73 59.5l-16-11-16.7 11 5.2-19.4L60.8 91 80 90l7-19 6.8 18.9 19.6 1.1-15 12.5zM250 110l-15.4-10-15 10 4.4-18.3-14-11.8 18.3-1.5 6.3-17.2 7 17.4 17.7 1-13.7 12.3zm-43.1 43.4l-10.3-6.4-10.3 6.6 2.7-12.3-9.2-8.3 12-1 4.6-11.6 4.9 11.6 11.9 1-9.1 8.3z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/xk.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/xk.svg
new file mode 100644
index 0000000..7e41b1d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/xk.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-xk" viewBox="0 0 640 480">
+  <path fill="#244AA5" d="M0 0h640v480H0z"/>
+  <path fill="#D0A650" d="M253 224.8s1.2-.8 1.6-.9c.5 0 2-.6 2-.6s1-.5 1.5-.5c.6 0 1.6.6 2 1.1.3.5 2 1.4 2 1.4s1.2.4 1.5 0c.2-.4.7-.7 1.3-.7.5 0 .6-.5.6-.9s.2-.9.6-1.4c.5-.5 1.3-.8 1.3-.8s1.2-.5 1.3-1.2c.2-.7 1.3-1.2 2-1.3.7 0 0-.4 1.8-.2 1.7.2 2-.4 2-.9.1-.5 0-1 1.1-1 1.1.2 1.6.2 1.6-.4 0-.6 1-1-.7-1.4-1.8-.5-1.6-.1-1.8-1 0-.7 0-.6-1.1-.7-1.2-.1-.6-.7-.7-1.3-.1-.6-.4-1-.6-1.3-.3-.4-.9-.4-.9-1s-.1-1-.7-1c-.7 0-1 0-1-.5 0-.6.2-1 .8-1 .7 0 1-.6 1-1.2-.2-.6-.2-1.9-.2-1.9l.9-1s2.6-2.1 2.8-2.5c.2-.4 1.1-.7 1.5.1.4.8.6 1 1 1.4.3.4 1.3.1 1.5-.3.2-.4.3-1.9.9-2.7.6-.7 1-1.1 1.1-1.8s.5-1.2 1.2-1.2c.6 0 1-.9 1-1.4 0-.5.4-1 1.2-1.2.8-.1 1.3-.6 1.6.2s.6.7 1.1 1c.6.3 1.4.6 1.8.3.5-.4.7-1 1.3-.7.6.4 1 0 1.2-.7l.3-1.9s.1-.5 1.1-.5.3-.6.8-1c.6-.4.6-.8 1.3-.6.7.3 1.8-.3 1.3-1-.6-.6-1.8-1.6-1.1-2.4.7-.8 1-2 .3-2.2-.7-.1-1.8.1-1.9-.6-.1-.8-.4-1.4.5-1.5.8-.1 2.2-.1 2.7-.5.4-.4 1.8-.7 1.8-1.8 0-1.2.4-1.3.6-2 .1-.6.1-2-.5-2.6-.6-.7-1.4-1.6-1.5-2-.2-.4-.7-1-1.6-1.3-.8-.2-1.6-.4-1.6-1 0-.7.6.1.6-1.6 0-1.7-1.1-2-1.1-2l-1.7-1s-3-.8-3.8-.8-1.8-.8-.9-1.4c1-.5 1.2-1.5.9-2.2-.4-.7-.6-1.3-1.9-1.6-1.3-.3-1.6-.6-1-1.4.5-.7.7-1.3 1.4-.7.6.5 1.8.7 2.7.3 1-.4 1.3-.8 1.8-.3.4.4 1 .8 1.7.2.7-.7 2-.8 2.6-.5.5.4 2 .3 2.4 0 .4-.2 1.4-1 1.4-1.3s.6-1.2 1.1-1.5c.6-.4 1.3-1.4 1.9-1.4.6 0 .8-.7.8-1 0-.5.5-1.4.6-1.7 0-.3 1.2-.8 2 0 .9.5 2 .8 2 .8s1 .2 1.7 0a2 2 0 012.1 0c.9.6 2 .6 2 .6l.3-1.3c0-.4.2-1.2-.3-1.5-.4-.3-1-.7-.1-1.4 1-.6 1-.5 1.9-.5l2.2.1c.7 0 1.8.7 1.8 1.3 0 .6.5 1 1 1.4.6.3 1.3.6 1 1.2-.1.5-.1 1 .6.8.7-.1.9.3.9.9 0 .5.2.8 1 1 .6.2 1 .7 1 1.2s-.2.9 0 1.4l1 1.4s1.3 1.5-.4.7c-1.6-.7-2-1-2.5-1l-1 .5-1.3.2c-.6 0-1.2 1.2-.2 1.4.9.2 1.2.4 1.2 1.2s-.3.5-.8 1c-.4.6-.8.2-1.6.2s-1 .7-1 1.3.3.6.6 1c.4.6 1 .7 1.6.2.5-.5 1-.9 1.3.1.4 1 .9 1 1.5 1 .7 0 1 0 1.6-.4.5-.3 1.2 0 1.3.9.2.8.7 1 1.3 1.3.6.3 1 .5 1 1 .2.6.5.8 1.1.5.6-.4 1.5-.6 1.9-.1l.9 1.2v1.1l2.3.8.2 1c0 .3.4.6 1 .4h1.6s.8-.3.8-1c0-.6.3-.8 1-.8.5 0 1.8.5 2.1-.2.4-.6 1.4-.8 2.2-.5l3 1.2s-.3 0 .4 1.1 2 1.1 2 1.1 0 1 .3 1.4c.2.4 1.3.6 1.8.2.6-.4 1.4-1 2.1-1s1.2 0 1.2-.4-.7-.7-.7-1.4.7-.6.8-1.3c.1-.6.8 0 1.3.4s1 .8 1 1.2c0 .5 1 2 1.5 2.2.6.2 2.1.3 2.6-.2.4-.6 1.6-.8 1.5.5-.1 1.3-.4 1.4.4 1.8.8.4 1 2 .3 2.4-.7.4-1 .5-1 1.2s-.2 1.6.4 2c.6.5 1 .8 1 1.2 0 .5.6 2.4.6 2.4s.4 1.9.2 2.3c0 .5-.3 1.2.7 1.1 1-.1 1.3-.1 1.3.7s.4 1.2-.2 1.5c-.6.4-1 1.4-.4 1.6.6.2 1 .6 1.2 1 .1.4 1 1.2 1.6.7.6-.4.7-.6 1.2-.7.4-.1.8-.4.3-1-.4-.5-.6-1-.1-1.4.5-.3.7-1.3.7-1.3s.7-1 1.5 0 1 .6 1.5.6.8.5.8 1c0 .6 1.2.5 1.2 1.3l.2 3s0 1.1.7 1.5c.7.5.6.6.2 1-.3.6-.2 1.5-.2 2s.2.5-.3 1c-.6.4-.9 1-.5 1.6.3.6.2 1 1.1 1.8 1 .7.9 1 .9 1.6 0 .5.9 1.3.9 1.8s.7 1.2 1.3 1.3 1.2 1 1.2 1.6l.1 1.9s0 .3.6.3c.7 0 1.2.8 1.4 0 .2-1 1-1 1.4-1.3s1.4-.6 1.9-.3 1 .3 1.5.3l2.6.1s.6 0 1 .8c.3.8 1.3 1.8.8 2.2-.6.5-.6 1.3 0 1.3s1.5 0 1.5.5c0 .6 0 1 .7.7.5-.3.9-.4 1.1 0 .3.4.7.4 1.3.7.6.4.8.1 1.2-.3.3-.4 1.7-.8 1.7-.8s1.8-.5 2.5-.3l1.7.7s.4 1 .2 1.7c-.2.6-.5.5-.2 1.5.2 1-.3 1-.7 1-.5-.2-1-.2-1 .7 0 .8-.4 1-.4 1.8s0 .6-.5 1c-.4.3-.6.8.1 1 .7 0 .5.8.5 1.2l-.1 1.4s0 .5-.7.5-1.5 0-1.6.5c-.2.5-1 1.3-.3 1.9.8.5.6.8.1 1-.4.3-.8 1.3.2 1.6.9.4.8.7.2 1.1-.6.4-1.7.8-1.7 1.4s-.3.6-1 .7c-.7.1-1 1-.2 2 .8 1.1 1 1 1.6 1 .6 0 .6-1 .6-1l2.5.2c.6 0 1.4 0 1.9-.3.5-.4 1.7-.9 1.7 0 0 1 .3 1 .8 1.3.6.5.7.1 1.2.8.5.6.6 0 1-.7.3-.7 1-1.4 1.6-.6.5.9.5.6 1.2.6s1 .4 1 .9.6.5 1.5.4c.8 0 .9.5 1.2 1s.5.4 1 .4c.4 0 .9 0 1.2-.4.4-.4.8-1 1.3-.3.5.6 1.4.5 1.6-.2.3-.8 1.3-1.4 1.9-.6.6.9 1 .9 1.6 1 .6 0 1.4 0 1.7.6.4.6 1.5 1.4.7 2-.8.7-1.7 1.5-1 1.8a3 3 0 011.6 1c.5.4 2 .7 2.7.8.7 0 1.2.2 2-.5.9-.6 1.7-.6 1.6.3-.1.8.3 1.8.3 1.8s.6 1.4.6 1.9-.1.6 1 1.3c1 .6.8 1 1.7.4.8-.6 1-1 1-1.5v-1.7s1.2-.2 1.6-.5c.5-.4 2.3-1.3 2.8-.9s1 .3 1.5.1c.5-.2 1.4-.2 1.9-.2.4 0 1.2.1 2.2-.6.9-.8.9-.6 1.5 0 .5.5.5 1.1.2 1.6-.4.4 0 1.3.8 1.3s1 .5 1 1l.3 1.7c0 .4 0 .7 1.4 1 1.2.3 1 1 1.2 1.6.3.5.3 1-.4 1s-1 .3-1 .8c-.2.5-1.2.7-1.2.7l-1-.2s-.8 0-1.1.4c-.4.5-1 1.3-.6 2 .5.8.5 1.2 0 1.6-.4.3-.7 1.9-1.1 1.6-.5-.4-1 0-1.5.3-.5.2-.4 1.7.5 2.2 1 .6 1.2 1.3 1.2 1.3l1 1.6s-.3.3-.5.9c-.3.5-1 1.6-.3 1.8.7.2.4 1.4-.3 1.4s-1.5-.4-1.6.5-.5.6-1.2.5c-.7 0-2.4-.5-2.9.3-.5.9-.6 1.2-1.4 1.1-.8 0-.5 1.3-.2 1.8l1 1.3s.7.5.7 1.6c0 1-.5 1-1 .2-.4-.7-1.3-.6-1.4.2-.1.9-.3 2.2-1 2.2-.9 0-1.2.2-1.6.6-.3.4-.9 1.2-.9 1.6s-.1.9-.7 1-.7 1.2-.7 1.2-1.4.3-1.5.8c-.1.5.1 1.4-1 1.5a3 3 0 00-2.2 1.4c-.4.5-.5 1 0 1.5s.8 2.2 1.4 2.5c.5.3 1 .5.9 1.3-.1.9-.8 1.5.1 1.5 1 0 1.5.2 1.2 1-.4.7-.4.8-1 1.1-.8.4-1.1.4-1.1 1.2s.2.9-.4 1.2-.6.7-.6 1.4-.2.4-.9 1.1c-.7.8-1.6.8-2.2.6s-.7-.2-.8-.9c-.1-.6-1.1-.6-1.7-.5-.6 0-1.4.7-1.4.7s-1 .7-.6 1.2c.5.5.2 1.4-.6 1.3-.8-.1-2.6.8-3.2-.1-.6-1-2.2-1.6-2.5-.3-.2 1.2.7 1.1.6 2.4 0 1.3-.3 1.3-.8 1.7-.4.4-.4.8-.6 1.3 0 .5-.2 1.7.6 2.1.8.5 1.2 1.6 1.2 2.3 0 .6 0 1.3.8 1.3s1.5-.2 1.6-.9c.1-.7 1.7-1.2 1.9.3 0 1.5 0 2.3.7 2.9.5.6 1 1.5 1.5 1.8.4.3 1.2 3 1.2 3-1.1.3-1.4 1.8-2.1 2-.4.2-.9 0-1.3.3-.2.3-.2.7-.6.8-.9.4-.7-.9-1.8-.4-.9.4-1 1.5-2.3 1-.7-.2-1.1-3-1.3-3.6l-1.1-1.8c-.8-1.2-2.3 0-2.8-.4-.8-.5-.5-1.4-1.7-1.5-2.4-.2-.7 1.5-1.7 1.8-2 .7-2-1.8-3.4-.6-.5.4 1 .7.6 1.4-.3.6-1.7 1.6-1.7 2.3.2 1 1.2 1.3 1.5 2 1 2.3-.5 3.8-2.7 2-1.2-.9-1.5-2.7-3.3-2.5-.5 0-.6.4-1 .5-.5 0-.8-.4-1.3-.3-.7.3 0 .8-.2 1.2 0 0-1 .7-1 1-.6.6-.4 1.2-1.2 1.8-.6.5-1.1.2-1.8 1-.7.7-.8 1.9-1.7 2.6-.5.4-.8-1.1-1.4-.1l-.2.4c-.2.3-.2.4 0 .7 1.2 2.4-1.4 3.2-2.2 4.9-.3.7.6 1.3.3 1.9l-1.5 1.7c0 .2-.2.8-.4 1-.2.2-1 0-1 .4s.8.7 1 .9c.2.3-.2.7 0 .8 1.2 1.3.5.9 1.1 2 .1.2.5-.1.7.3.1.4-.4.4-.2.8 0 .2 1 1.4 1 1.4 0 .4-1.8 1.2-2.2 1.2-1.1 0 1-2.2-.8-2.2-.8 0-.9 1.7-1 2h-1c-1.2 0-2 1.4-2.4 1.5-.3.1-1-.2-1.5 0-.4 0-1 .5-1.4.5-.3 0-.4-.2-.7-.4-.5-.3-1.5-.4-2-.6-.4 0-1 .4-1.2.3-.3-.2.3-1-.6-1.4l-.7-1.7c.3-1 .6-2 .5-3.1-.2-1.1-2-2-2.4-3-.3-.6-.6-2.4-1.3-2.8a6.2 6.2 0 01-1.8-2.2c0-.2.3-.6 0-1-.3-.3-.8-.5-1-1-.1-.4 0-1.8-.5-2.1-.5-.3-4-.8-5-.9-.4 0-.7 0-1-.3l-.6-.7-1 .2c-.3 0-.8-.2-1 0-1.1.7-1.4 1.7-2.5 2.6-1.1.8-2.3.8-3.4 1.7-.7.6-1.2 2.1-1.9 2.8-.3.3-.7 0-.8.1-.6.7-1.4 1.2-2 1.8-.1.2 0 .4-.2.5l-1.3.4h-1.2c-.5.2-.5.8-2.5 1.2l-.5.3-.6.5h-.9c-.5 0-.8.5-1.2.5-1 .2-2.8-.5-3.6-.1-.5.1-1.8 1.7-2.3 1.8-.3.1-.6 0-1-.1l-.6 2.2-2.4 2.1c-.3.3-.4.7-.8 1-.2.3-.6.5-1 .5s-1.1-.4-1.6-.4c-.8-.2-3.3-.3-4-.1-.9.1-.6 2.4-2.6 2.6l-3.3.4c-.1 0-.8-.4-1.5-.3-.3.1-1.1 1-1.1 1.2v.5l.2.4c-.4.5-1.4 1.3-1.7 2l-.4.4c-.2.2-1.6.7-1.7.9-.3.8 1 1.6.8 1.9-.3 1-1.7 2-2.2 3-.1.4.5 1.7.5 2.1-.2 1.3-.6 2.9-.5 4.1l.2 1.7.7.5 1.8 3.6c.3 2.2-3 1.4-1 3.6.2.4.4.7.8 1l2.8 2.3c0 .4-2 .7-2.3 1-1 1-1.7 2.6-2.6 3.6-.6.5-1-.1-1.8 1.3-.2.5 0 1.6-.3 2-.5.4-.8-.2-1.3 0-.2 0-.3.7-.5.8-.5.5-5.2 3-5.6 2.7-.2-.1-.5-.9-.5-1.1 0-.3-.4-.9-.6-1-1.2-1-3-1.3-4.2 0-.3.3-.3.8-.7 1l-2 1.6-.5.5c-.5 0-1.6-1.3-2-1.7-.4-.6-2-2-2.1-2.7 0-2.4-1.9-4.9-2.6-7.2h1.1c1.3-.9 1-3 3.3-2.2.3-.4.3-.8.8-1 .2-.2.6-.3.7-.5.8-1.2 1.7-5.8.9-7-.7-1-1.5-1-2-2.7-.2-.5 0-1 0-1.6l-1-3.1c-.2-.3-.7-.5-.7-.7l-.2-3.1c-.7-2.2-3.4-3.5-3.5-3.8l-1-1.7c-.4-.7-.4-1-.6-1.6-.1-.3-.6-.6-.6-.9 0-.6 1.6-1.7 1.5-2.7 0-.3-1-1.3-.8-1.8.2-.6 1.2-1.8 1.2-2.5 0-.8-1.6-2.6-1.8-3.4-.1-.5.6-.8.4-1.1-.2-.4-1.8-1.9-2-2.3-.3-.3.5-.7 0-1.3-.6-.5-.1-.4-.3-.8-.2-.5-.7-1-1-1.5-.2-.5-1.6-5.5-1.5-5.8-.3-.3-.7-.6-.9-1l-.4-1.2s-1.6-.5-1.9-1c-.2-.3-.3-1.6-.7-2.2-.2-.3-.5-.2-.7-.4-.2-.2-.2-.5-.3-.7-.5-.6-1.4 0-2-2.4-1-.6-1.7-1-2.4-1.8l-.4-.4c-.6-.2-1.5-.3-2-.7-.3 0-1.8 0-2-.2l-.4-.8c-.8-.1-2.2 0-2.9-.6-.5-.5-.6-2.8-1.6-2.5a.7.7 0 00-.4 0c-.7-1-2.9-1-3.8-1.6-.2-.1-1 0-1-.2l.1-1.3-1.1-1.4c-.9-.2-.6-.3-1-.6-1.5 0-1.7.2-2.6 1-.2.2-.7.3-1 .4-.5.3-.6 1.2-1.3.8l-.6-.5c-.4-.4-.6-.2-.8-.8-1.2-.7-4.5 1.5-5.2 0-.6-.3-1 0-1.5-.4-.2-.2.7-3-1.7-4l1.6-1.1c.2-.3 0-.8 0-1 0-.5.3-1.4.2-1.7 0-.3-.4-.6-.5-1-.2-.3 0-.8-.2-1.2l-.8-.4c-.6-.5-1.2-.8-1.7-1.4l-.4-.5c-.4-.3-1.8-.8-1.8-1.4 0-.2.4-.3.4-.5.1-.3 0-.6.3-.8.6-1 2.1-.5 1.9-2.2-.1-.8-.7-1.4-.8-2.2-.3-.2-.3-.5-.5-.7-1.5-.1-1.3-1.6-1.8-2-1.5-1-2.7-.4-1-2.4.2-.7-1.5-1.8-1.8-2.1-.6-.6-.3-1.9-.6-2.5 0-.3-1.1-.9-1.4-1.3l-.5-1v-.1c.3-.3.2-.8 0-1-.1-.3-.6-.2-.7-.4-1.4-1.2-3-1.8-4.9-2.5-.5-.2-.3-.6-.8-.8l-3-1.2c-.2 0-.4-1.1-.6-1.5l-.9-1c0-1-.6-1-1.4-1.6v-.6l.6-2.1c.1-.4.6-.8.5-1.2l-.4-2.3c-.8-2-1.7-1.8-1.2-4.5 0-.6-.1-.9.3-1.4l.2-.3 1.2-.9c.4-.6.7-1.9 1.2-2.3l1.8-1.2c.2-.2.4-.9.3-1.2-.4-.2-.8-.1-1.2-.2-.2 0-.7-.4-1.1-.4-.1-.2-.3-.3-.3-.5l-.2-.2c-.5 0-1-.3-1.4-.5-.5-.2-1.2-.2-1.7-.5-1-.5-2-2-2.9-2.2-1.2-.3-2 .1-3.2.2-.7 0-.7-.4-1.3-.6-.8-.3-.2.4-2-.2-.3-.2 0-.8 0-1h-1c-1.4-.4-.9-1.8-1.3-2.7-.1-.2-.8-.2-1-.2-.2 0-.2-.2-.2-.2l.2-.1c.2-.4-.7-1.4-.7-1.6.1-.3 2-.6 2.2-.6.1-.3-.1-.5-.2-.7 0-.5.3-1.2.5-1.7v-.2c-.6-.3-.7-.7-1.2-1 0-.3.3-.4.4-.7.9-2.5 2.3-.5 3.5-2.8.1-.2.5-.7.6-1.1h.2c.2 0 .6.2.8 0 .2-.2.5-.2.8-.3h.5c2.2-.4 1.7-1.2 3-2.1.4-.3 1.4-.4 1.8-.6.5.3 1.2 1 2.1 1.4.7.2 3 .7 3.4 1 .5.2.6.8 1 1 1.3.8.5-.4 1.8-.2 1.3.3 2.3 1.4 3.5 1.9l1-.1c.3-.1 2.3-.5 2.5-.4l.8.3c.3.1.5-.5.8-.5.8.2.8.5 2 .4 0 0 .6-3.3 1.2-3.4.3-.1 1.2.7 1.4.8.4.1 0-.7 0-.7-.2-.3-.8-2.3-.7-2.5 0 0 .5.2.8.1.6-.2 1.5-.4 2-.9l1-1.5c.1-.2-.2-.8 0-1l.9-.6c.4-.4.4-1 1-1.3 2-.2 2.7-1.8 4.6-2h.6l.4.6c0 .1 1.3.9 1.5.8.2 0 .3-.3.5-.4.3.1 1.4-.5 1.5-.9 0 0-.2-.3-.1-.6a12 12 0 011.6-1.2h1.4c.2.2.2.6.5.6h1.2c.2 0 .3-.5.7-.5z"/>
+  <g id="h" fill="#FFF">
+    <path id="star" d="M351.9 73.4L368 123l-42.2-30.7H378L335.8 123l16-49.6z"/>
+    <path id="star_1_" d="M414.7 84.5l16 49.6-42.1-30.7h52.1l-42.2 30.7 16.2-49.6z"/>
+    <path id="star_2_" d="M474.6 106.3l16 49.6-42.1-30.7h52.1L458.4 156l16.2-49.6z"/>
+  </g>
+  <g id="h_1_">
+    <path id="star_3_" fill="#FFF" d="M288.1 73.4L272 123l42.2-30.7H262l42.2 30.7-16-49.6z"/>
+    <path id="star_4_" fill="#FFF" d="M225.3 84.5l-16 49.6 42.1-30.7h-52.1l42.2 30.7-16.2-49.6z"/>
+    <g transform="scale(-1 1)">
+      <path id="star_5_" fill="#FFF" d="M-165.7 106.3l-16.2 49.6 42.2-30.7h-52.1l42.2 30.7-16.1-49.6z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ye.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ye.svg
new file mode 100644
index 0000000..1befdec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/ye.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-ye" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v472.8H0z"/>
+    <path fill="#f10600" d="M0 0h640v157.4H0z"/>
+    <path d="M0 322.6h640V480H0z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/yt.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/yt.svg
new file mode 100644
index 0000000..f198fff
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/yt.svg
@@ -0,0 +1,7 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-yt" viewBox="0 0 640 480">
+  <g fill-rule="evenodd" stroke-width="1pt">
+    <path fill="#fff" d="M0 0h640v480H0z"/>
+    <path fill="#00267f" d="M0 0h213.3v480H0z"/>
+    <path fill="#f31830" d="M426.7 0H640v480H426.7z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/za.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/za.svg
new file mode 100644
index 0000000..7a420a0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/za.svg
@@ -0,0 +1,17 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-za" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="za-a">
+      <path fill-opacity=".7" d="M-71.9 0h682.7v512H-71.9z"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#za-a)" transform="translate(67.4) scale(.93748)">
+    <g fill-rule="evenodd" stroke-width="1pt">
+      <path d="M-71.9 407.8V104.4L154 256.1-72 407.8z"/>
+      <path fill="#00c" d="M82.2 512.1l253.6-170.6H696V512H82.2z"/>
+      <path fill="red" d="M66 0h630v170.8H335.7S69.3-1.7 66 0z"/>
+      <path fill="#fc0" d="M-71.9 64v40.4L154 256-72 407.8v40.3l284.5-192L-72 64z"/>
+      <path fill="#093" d="M-71.9 64V0h95l301.2 204h371.8v104.2H324.3L23 512h-94.9v-63.9l284.4-192L-71.8 64z"/>
+      <path fill="#fff" d="M23 0h59.2l253.6 170.7H696V204H324.3L23 .1zm0 512.1h59.2l253.6-170.6H696v-33.2H324.3L23 512z"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zh.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zh.svg
new file mode 100644
index 0000000..72080b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zh.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-cn" viewBox="0 0 640 480">
+  <defs>
+    <path id="a" fill="#ffde00" d="M-.6.8L0-1 .6.8-1-.3h2z"/>
+  </defs>
+  <path fill="#de2910" d="M0 0h640v480H0z"/>
+  <use width="30" height="20" transform="matrix(71.9991 0 0 72 120 120)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(-12.33562 -20.5871 20.58684 -12.33577 240.3 48)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(-3.38573 -23.75998 23.75968 -3.38578 288 95.8)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(6.5991 -23.0749 23.0746 6.59919 288 168)" xlink:href="#a"/>
+  <use width="30" height="20" transform="matrix(14.9991 -18.73557 18.73533 14.99929 240 216)" xlink:href="#a"/>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zm.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zm.svg
new file mode 100644
index 0000000..9e723c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zm.svg
@@ -0,0 +1,27 @@
+<svg xmlns="http://www.w3.org/2000/svg" id="flag-icon-css-zm" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="zm-a">
+      <path fill-opacity=".7" d="M-170.7 0H512v512h-682.7z"/>
+    </clipPath>
+  </defs>
+  <g fill-rule="evenodd" clip-path="url(#zm-a)" transform="translate(160) scale(.9375)">
+    <path fill="#198a00" d="M-256 0h768v512h-768z"/>
+    <path fill="#ef7d00" d="M421.9 184H512v328h-90.1z"/>
+    <path d="M331.9 183.8h90v328h-90z"/>
+    <path fill="#de2010" d="M240 184h91.9v328h-92z"/>
+    <g fill="#ef7d00" stroke="#000">
+      <path stroke-linejoin="round" d="M451.6 65.6s34-14.5 37.2-17.5c1.5 1.8-13.6 20-42.9 26.7 26.6-6.2 49.3-26 54-25.4 1.3.3 1 19.3-60 35.8 42.2-11 66.7-31.4 66.4-29.2.3.5-4.2 16-41.1 28.1 10.3-2.4 38.3-19.4 38-16.1.9 1.3-27 37.2-77.6 25.5 40.4 10.5 66.5-14.8 70.2-14.3.8.1-7.4 22-58.2 23.4 24.3-2.5 17.3-.1 17.3-.1s-14.3 11.2-31.7 3.6c13.6 3.7 15.1 3.9 15.4 5-.9 1.6-12 3.8-22.9-2 8.7 3.6 16.5 4.2 16.6 5.5-.1.4-5.6 3.6-10.6 1.3-4.9-2.2-50.3-30.1-50.3-30.1l77.4-21.3 2.8 1zm-91 75.6c-6.8 0-7 6-7 6s-.5.5-.2 3.4l1.7-2.6c.8.1 3.9 1 8.8-2.8-4.5 4.7-1.8 6.4-1.8 6.4s-1 3.7 2.4 4.4c-1-1.5-.4-2.8-.4-2.8s4.8-.5 4.5-6.3c.1 5.3 3 6.6 3 6.6s0 2.9 3.1 3.2c-1.6-1.5-1.3-3.8-1.3-3.8s4-3 .7-8c2-1.2 3.7-4.5 3.7-4.5s-2.8-1.2-4.1-2.2c-.6-1.3 0-8.5 0-8.5l-1.8-9.3-4.8 14.5c.2-2 .3 6.3-6.5 6.3z"/>
+      <path stroke-linejoin="round" d="M394.2 120.3c.2.1 5.1 5.6 9.9 5.3 1.8-1.5-3.7-4.7-3.7-5.5 2 1.8 10.1 8.8 15.4 6.3 2-3-3.8-2.5-10.2-10.6 4.5 3 15.7 9.5 21 7 2.1-2.4-11.7-9.9-16.4-15.7l-12-6.1-16.2 13.3 12.3 6z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" d="M375.9 74.8s5.5-3.2 27.6-1.6c2.4.3 15-4.3 19.1-5.7 6.4-1.2 27-5.6 32.4-9.8 4-.5-1 7.1-6 9-5.2 2.3-24.1 8.9-30.9 8 8.1.1 3.6 6.7-9.8 3.6 6.4 3.6 4 4.2 4 4.2s-11.3.6-14.3-2c7.6 2.9 4.4 4 4.4 4s-7.7.7-11.3-1c5.5 1.7 2.7 2.7 2.7 2.7s-4.5.8-8.2-.6c-3.8-1.3-9.4-10.7-9.7-10.7z"/>
+      <path stroke-linejoin="round" d="M384.7 123.4l.8 14.6-.8 1.2c-.3.4-10.3-1.6-9 6 0 3.2 0 4 2.2 5.7-.5-2-.4-3.5-.4-3.5s2.9 1.7 5.6-3c-1.9 4.6-.6 6.3-.1 6.4.4.8-.8 4.5 3 4.4-1.5-1.4-.8-3.4-.8-3.4s4-.6 2.6-7.7c1.4-1.4 2 0 2 0s.4 4.2 3.9 3.3c1.5.9-.3 3.2-.3 3.2s2.5 0 3.3-2c.7-2.2 1.6-6-2.5-7.6-.5-1.5 1.6-1.6 1.6-1.6s2.6.9 3.4 2.2.5-3.4-2.8-4c-4 0-4.2-.9-4.2-1l-1-13.7-6.5.5z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M398.6 135.8c0-.7-6.8-9.9-5-11 1.7.3 4.5 4.5 6.9 3.1-.7-1.6-2.8-.7-5.1-4.9-2.4-4.8-2.7-11.9-11-19.6 5.4 8.2 17.4 13 18 10.6s-10.7-11.4-10.1-13.6c2.2 4.4 13.4 14.4 21.6 13.6.6-2-6.7-5.8-8.6-9.4-5.3-3.6-19.4-15.7-19.6-18.5a33.3 33.3 0 00-9.9-10.6 5 5 0 01-.8-1.7c-3.2-7.5 1-10 3.5-10.3 2-.3 2.6 0 4-.7l-5.1-2c2.3 1.7 8 .2 6.8 5 2.5-1 7.9-7.4-6.1-8.8-4.6-5.2-23.3-8.2-28 14.6.4.3.6.6 1.8 1.4-6-2.8-21.9-5-27.6-6-15.6-4.4-31.7-15.2-33.2-13.9-2 1 9.4 11.6 8.8 11.8a263 263 0 00-27.5-13.6c-6-2.2-11.9-7.4-12.5-6.4-2.2 4.5 9.5 15.9 11.7 17.2 2.2 1.3 19.3 9.3 19 9.4-25.8-11.7-30-13.9-31.4-15.2-2.3-.5-7.8-8-9.3-7.5-.9.8.8 12.6 13.1 18 2 1.4 26.4 10.1 26.2 10.8 0 .2-28-11.5-29-12-5.4-2-12-9.4-13.2-8.6-1.2.8 3 8.8 8.4 11.3 2.9 1.2 13.8 6.6 23.6 10 .6.3-17.7-6.9-26.5-10.5-4-2.2-5.8-5-6.4-4.4-1 .6 1.4 12.4 29.7 19 .7.4 10-2.1 9.5-1.8a113.3 113.3 0 01-15.8 2.8c-.3.8 1.8 5 16.4 4.2 1.8-.1 12-3.7 11.1-3a174 174 0 01-14.8 4.9c-.9 0-5.6.6-5.8 1-.2.8 3.5 3.8 11.3 4.2 7 .4 20.2-4.2 20-3.9-.4.3-12.8 4.6-13.1 4.8-.5.3-5 .5-5.2.9-.4.9 6.6 7.4 27.1.4-2 2.8-12 4.7-12 5.2 0 .4 2.2 2.5 5.7 3.3 1.7.4 4.1.3 6.3 0 4-.8 8-2.3 13.3-7.2.6 1.5-13.1 8.5-12.5 9.1 3 2.8 12.9-.3 13.5-.7.7-.3 19-10.7 19-12 .3 1.6-23.7 14.7-23.4 15.2 1.5 2.4 9.7-.1 10-.4l10.8-5.8c.3-.1-11.8 7-10.8 8.2-.5 4.7 19-3.2 20.5-4.2.7-.5-9.4 4.4-9.4 6.7 3.3 5.5 13.7 3.8 15.3 2.6.8-.6-1 4-.4 3.6a16 16 0 003-4.3c-.2 1.6-1.4 4-2 6.8-.7 2.7-.9 5.9-1.8 9.2-.2 1.4 6.4-2.9 5.4-13.2.6 5.4-2 15.4-1.3 16 1.3 1 5.2-5 5.6-9.1 1.1 2 3.5 6.3 5.6 7.3-.2-3.1 0-3-1-6 .6-4.1.7-9.7.8-16.1 5.6 10.7 7.9 15.3 6.3 23.5 1.7.7 4.3-5.8 4.1-9a13.3 13.3 0 0011.5 10.2z"/>
+      <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M305.4 67.7s-3.9 2.9-8.6 2.7c1.2 4.8 11 1.1 11 1.1s-4.7 5.3-8.1 6.1c2 1.7 10.6 1.1 12 .3 1.4-.9 4-4.2 4-4.2s-8.8 10.2-10 10.1c-.3 1.2 9.1.8 11-1 2-1.8 7-4.4 7-4.4s-13 9-13.5 9c4.8 1.2 14.5-1.6 20.7-5.4-9.2 6.1-10 7.2-14.7 9.3 4.2.9 6.3 3.7 20.3-2.4 8-3.8 12.6-10.8 12.6-10.8a81.7 81.7 0 01-21.6 18c-.5 1 9.4 5.2 21.9-7.9"/>
+      <path stroke-linecap="round" stroke-width="1.1" d="M373.4 96s.9 4 4.3 7 3.6 6 3.6 6m-9.5-39s1.1 3.7 4.6 6c3.6 2.2 9 9.4 9.3 10.7.4 1.5 2.5 12.6 2.3 13.8m-37.8-25c.2 1.5-5 8.3 2.2 16.4-6.6 8-6.6 9-6.6 9s3.7 2 10.2-3.6c10.8 13.2 7.2 19.2 7.2 19.2"/>
+      <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M362.3 107.2s-1-1.4.8-6.7c1.6 2 3.4 2.3 4.1 3 .8.9 9 2 9.4 7.5"/>
+      <path stroke-width="1.1" d="M371.9 57.5c0-.4-1.7-4-7.8.4 3.3.2 6.5 2.1 7.8-.4z"/>
+      <path stroke-linejoin="round" stroke-width="1.1" d="M430.1 73.5c.3.2 18.2 4 24.2 2.1-7.6 10.2-22.9 3.3-22.9 3.3 7.5 2.2 7.8 2 10.2 4.2.8 2-13.8 1-18.5-1.7 13.3 4.2 13.6 4 14 5.5.6 2.3-21.8-.6-23.7-3.5 6 4.6 9.2 5.5 12.5 7.6-4 1.8-11.5 3.6-25.2-6.1 18 16.4 34.3 15.4 36.9 18.3-6.3 9.3-30.7-5.5-41.9-13s24.5 18.1 27.8 17.7c-1.6 2.5-13.4.3-14.2-1"/>
+      <path stroke-linecap="round" stroke-width="1.1" d="M434.7 90.7c-2 .3-8.3.3-9.2.1"/>
+      <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.1" d="M300.1 65s13.6 7.2 19.4 6.7a10 10 0 01-3.8 2c1.4.6 5.4 2.7 11.4 1.4l-3.3 3s5.2 2 11-1a46.4 46.4 0 00-2.8 3.7l4.1.3"/>
+    </g>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zw.svg b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zw.svg
new file mode 100644
index 0000000..1b18e84
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/css/flags/4x3/zw.svg
@@ -0,0 +1,21 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icon-css-zw" viewBox="0 0 640 480">
+  <defs>
+    <clipPath id="zw-a">
+      <rect width="546" height="420.1" x="1.9" y=".1" fill="#00f" fill-rule="evenodd" ry="0"/>
+    </clipPath>
+  </defs>
+  <g clip-path="url(#zw-a)" transform="matrix(1.1722 0 0 1.1426 -2.3 -.1)">
+    <path fill="#006400" d="M0 0h840v420H0z"/>
+    <path fill="#ffd200" d="M0 60h840v300H0z"/>
+    <path fill="#d40000" d="M0 120h840v180H0z"/>
+    <path d="M0 180h840v60H0z"/>
+    <path stroke="#000" stroke-width="20" d="M0 0v420l280-210z"/>
+    <path fill="#fff" d="M0 0v420l280-210z"/>
+    <path fill="#d40000" d="M106.5 104.4L162 275.1 16.8 169.6h179.5L51 275.1z"/>
+    <path fill="#fc0" d="M82.8 253.7l9.8-1.8 18.1-.7 6.7.6 15 2.5 1.1-1.5V242l1.8-9.3 3-9.4 3.3-7.5 4.2-7.8 6.8 1.7h1.8l.2-1.3-14.4-12.3-15-11.5-21.7-16.2-2-.5-2.3-17-1.7-5.1-2.3-2-4.3-1.4-4.8.2-2.2 1.2-4.6 1-2.4.4-1.6 1.9-.2 2.4 6.7.2 1.7.7-.2.7-3.8.5-1.8.6 2.1 1.6 2.2.8 2.8 1 .6 2 .2 25.8-1.5 4-.5 7.5 2.2 9-5.6 6.4L77 216l-.6 3.5-1.7 3.5-.2 2.2 1.1 2.4 4.3 14.2 2.2 11.7z"/>
+    <path d="M88 142c-1.8 0-2.6.2-4.3 1.1a10.8 10.8 0 01-4.6 1.4c-2.5 0-4.5 1.8-4.5 4.1v1.5l3.6-.1c10.6.3 1 1.3.2 1.4-2.6.5.6 2.6 3.7 3.7 3.3 1 3.1.4 3.1 15 0 11.9 0 13.6-1 16.3-1.3 4-1.3 10 0 14 .6 1.6 1 3 1 3.3 0 .2-1.6 2.1-3.5 4.3-3.5 4-5.6 8.1-5.6 11a6 6 0 01-1 2.6c-1.3 1.7-1.3 4.6-.1 5.7 1.3 1.2 6.6 21.8 6.7 25.7 0 1.4.2 1.4 8.3-.2 6.6-1.3 22.1-1.6 30-.6 3.6.5 7.8 1.3 9.3 1.6 4.8 1.3 4.6 1.5 4.6-4.3a74 74 0 015.1-26.7 94.7 94.7 0 016.9-14s1.8.2 4 .8c4.1 1 5.3.9 5.3-1 0-1-4.3-4.6-25.4-21a432.2 432.2 0 00-26.3-19.9c-.6 0-1.2-.3-1.3-.7l-1.5-9.5c-.7-4.9-1.7-9.7-2.1-10.7-1.4-3-4.1-4.5-8.6-4.8a31.2 31.2 0 00-2 0zm.1 1h2c6.6.4 7.8 2.2 9.6 14a173 173 0 011.2 9.4c0 .8-.9 1.8-3.2 3.3a46.8 46.8 0 00-10 9.5l-1.3 1.8-.3-4.2V165c.3-8.7 0-9.5-2.8-10.5-2.3-.8-5.3-1.6-4.5-2.1 1-.6 2-.2 4.4-.9 1-.2.9-.1.7-.9-.2-1.3-1.6-2-5.3-1.8-3 .2-3.3.1-3.1-.7.4-1.6 2-2.6 4.5-2.9a13.4 13.4 0 004.4-1.3 7 7 0 013.7-1zm14.9 25.8h.4c1.7.3 50.8 38.7 50.8 39.8 0 .4-.4.7-1 .7-.4 0-12.9-3.5-27.7-7.8-23.6-7-27-8-28-9.3a5.1 5.1 0 01-.1-6.2 5 5 0 001-2c0-1.2-2.5 1.8-3 3.5-.5 2 .5 5.4 2 6.5.6.5 5.1 2 10 3.5 8.4 2.4 9 2.7 9.4 4.1 1 3.3-2.5 7.2-7.5 8.3a14.6 14.6 0 00-5.2 2.4 68.2 68.2 0 01-17.2 10.4c-.4.3-.9 1.9-1.2 3.4-.6 3.3-.8 3.8-1.8 3.8-.5 0-.6-.3-.2-1.4.7-2 .6-4.4-.1-4.4-.5 0-.7.7-.7 1.8 0 1-.3 2.2-.7 2.5-.5.6-.6.2-.4-2.3.2-1.7.1-3-.1-3-.5 0-1.4 2.5-1.7 4.7-.2 1.3-.2 1.3-.6-.3-.3-1.2-.2-2 .7-3.5a9 9 0 001-3.5c0-1.3 1-2.6 5.7-7.3 3-3.1 6.7-7 8-8.7 2.3-2.8 2.4-3 2.3-5.9 0-1.6-.2-3.1-.4-3.3-.6-.6-1.4 2.6-1 4.3.2 1.6 0 2.1-3.3 6a113.2 113.2 0 01-7.5 7.8c-3.9 3.6-5.3 5.6-5.3 7.4 0 .6-.4 2-1 3.3s-.8 2.6-.6 2.9c.2.3 0 .3-.3 0-.5-.5-.5-1.3-.1-3a7 7 0 00.2-2.6c-.5-1-1.2.2-1.5 2.7-.2 1.4-.5 2.5-.8 2.3-.7-.4-.5-3 .4-4.4.5-.7 1-2.3 1.3-3.6.7-3.7 2.3-6.7 5.8-10.7a57.5 57.5 0 003.2-3.8l-1-3.3a25 25 0 01-.2-13.7c1.3-3.8 3.9-7.6 8-11.7 4-3.9 7.9-6.3 10-6.4zm15 32.2a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.5.3a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.6.5a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.4.5a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-6.3.6a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.4.4a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5.2.2a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-2.7 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5 .6c.1 0 3.7.8 8 2l7.9 2.3-1.5 2.7a96.2 96.2 0 00-2.4 4.4c-1 2-1.2 2-6 .9-5.2-1.2-13.4-2.3-21.8-3l-8-.7 3-1.1a50.4 50.4 0 005.3-2.4c2-1.1 2.8-1.3 5.9-1 4.5.3 7.5-.6 8.7-2.4l1-1.7zm-8.8.6a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm5.6 0a.9.6 0 011 .6.9.6 0 01-1.6 0 .9.6 0 01.7-.6zm-8 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm5.3.2a.9.6 0 011 .5.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm-6.6 1.1a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.5 0a.9.6 0 011 .7.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm2.6.2a.9.6 0 011 .5.9.6 0 01-1.7 0 .9.6 0 01.7-.5zm2.8 0a.9.6 0 011 .6.9.6 0 01-1.7 0 .9.6 0 01.7-.6zm-20.3 8.1a191.2 191.2 0 0135.1 4.2c.1.1-.6 2.5-1.7 5.4l-2 6c-.1.5-.8.5-2.5.3-8.3-1.3-32.3-1.2-41.5.2-5.3.8-6 .7-5.6-.4l1-3.5.6-2.7L93 221a63.4 63.4 0 0010.2-6.5h.9zm-27 14.2c.3 0 .9.3 1.6.8 1 .6 2.2 1.1 2.7 1.1 2.6 0 4 3.7 6.2 16l.8 4.4c.2 1 0 1.2-2.3 1.7-2.8.6-3.5.7-3.5.3 0-1-2.8-13.7-4-18.2a96.9 96.9 0 01-1.6-6 .1.1 0 01.1 0zm28.6 2h2.9l-1 1c-1.7 2-2.5 2.1-3.7.8a5 5 0 01-1-1.5c0-.2 1.3-.4 2.8-.4zm6.1 0h5.4l-1.2 1.2c-1.4 1.6-1.5 1.6-3 0l-1.2-1.3zm8.2 0h1.3c.7 0 2 0 2.8.2l1.5.3-1.4 1.3c-.8.7-1.5 1.3-1.6 1.2l-1.4-1.6-1.2-1.5zm8.5.3l1.2.3c.7.2 2.2.3 3.3.4h2l-1.5 1.3a8.9 8.9 0 01-1.8 1.3c-.1 0-1-.8-1.7-1.7l-1.5-1.6zm-30.2.1h.2c.1.2-.3 1-1 1.7l-1 1.4-1.5-1.2-1.5-1.3 2.4-.3 2.4-.3zm2.3.2l1.6 1.4 1.6 1.5-3 .2-3 .1 1.4-1.5 1.4-1.7zm18 0c.3 0 .5.1.8.3a6.6 6.6 0 011.3 1.7c.4.8.3 1-1 1l-2.5-.5-1.2-.3 1.3-1.3c.6-.6 1-1 1.4-1zm-8.3 0c.5 0 1 .3 1.6 1.3.7 1.1.7 1.1-2 1.1h-2.7l1.4-1.3c.7-.7 1.3-1 1.7-1zm17 .2l1.2 1.2c1.4 1.3 1.6 2.1.6 2l-2.8-.3-2.2-.2 1.6-1.3 1.6-1.4zm-35.2.7c.2 0 1 .5 1.6 1.2l1.2 1.3-2.5.4-3.5.5c-.7.2-.5-.3 1-1.6 1-1 2-1.8 2.2-1.8zm-3.7 0h.4c.8.2.8.4-.6 1.8l-1.5 1.5-.5-1.3c-.4-1-.3-1.3.6-1.7a4.8 4.8 0 011.6-.3zm46 1.8c.2 0 .2.2 0 .6-.2.8-1.1 1-1.1.2 0-.2.3-.5.7-.7h.3zm-21.4 1.6c7.7 0 15.5.2 17.4.4 3.1.4 3.4.5 3.4 1.7 0 1.4-.4 1.5-4.6.8-1.2-.3-6.3-.7-11.2-1.1a149.6 149.6 0 00-28.5 1c-1.9.2-2.4 0-2.4-.6 0-1.3 10.2-2.2 25.9-2.2zm-10.3 2.9h5.4l-1.2 1.3c-1.5 1.6-1.6 1.6-3 0l-1.2-1.3zm7 0l1.4 1.4 1.4 1.6-2.9.1h-2.9l1.5-1.6 1.4-1.5zm2.1 0h5.4l-1.2 1.3c-1.4 1.6-1.5 1.6-3 0l-1.2-1.3zm-12.8 0c.2 0 0 .5-.7 1.5-.7.9-1.4 1.6-1.5 1.6-.2 0-.9-.6-1.5-1.3l-1.2-1.3H96a9 9 0 002.7-.4 1 1 0 01.4 0zm2 .5l1.3 1.2 1.5 1.3-2.6.2-2.9.2 1.4-1.5 1.3-1.4zm17.4 0l1.4 1.6c1.6 1.7 1.5 1.8-2.1 1.1l-1.7-.3 1.2-1.2 1.2-1.2zm2 0h2.4c2.6 0 2.9.4 1.4 1.8-1.2 1-1.2 1-2.6-.5l-1.2-1.3zm-30.6.5c1.2 0 1.1.1-.4 1.6-1.1 1.1-1.2 1.1-1.6.3-.3-1 .6-1.8 2-1.9zm38.8.2c.4 0 1.2 0 2 .2l2.3.4-1.3 1.2-1.2 1.2-1.1-1.4-1-1.6h.3zm-36 .5c.3 0 .6.2 1.1.7 1 1 1 1 .2 1.4a8 8 0 01-2.4.4H90l1.3-1.4c.7-.7 1-1 1.3-1.1zm34.1.3c.4 0 .7.2 1.2 1l.9 1.2h-2.1c-1.4 0-2-.2-2-.6.2-.4.7-1 1.3-1.3l.7-.3zm6.4 1.3c.2 0 .2.2.2.5 0 1-.9 1.7-1.3 1-.1-.3.1-.8.5-1.1l.6-.4zm-25.9 1.2c8.7 0 18.3.6 24 1.6l1.6.3v4.4c0 3.3-.2 4.4-.7 4.4l-5-1a126 126 0 00-35-1l-2.3.3-.6-3.7a21 21 0 01-.4-3.8s2.3-.5 5-.8c3.3-.5 8.2-.7 13.4-.7z"/>
+    <path id="b" d="M124.8 217.8c-3 0-5.1 2.1-5.1 5.2 0 4.8 5.4 7.2 8.6 3.8s1-9-3.5-9zm0 1.2a4 4 0 014 4c0 3-3.3 5-6 3.7-2.7-1.5-2.5-6.1.4-7.3a4.3 4.3 0 011.5-.4z"/>
+    <use width="100%" height="100%" x="-20.1" y="-.6" xlink:href="#b"/>
+    <path d="M88 145.3a1.7 1.8 0 00-1.6 1.7 1.7 1.8 0 103.5 0 1.7 1.8 0 00-1.9-1.7zm.1.6a1.2 1.1 0 011.2 1.1 1.2 1.1 0 11-2.4 0 1.2 1.1 0 011.2-1.1z"/>
+  </g>
+</svg>
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/admin.css b/mailcow/src/mailcow-dockerized/data/web/css/site/admin.css
index 37395a2..bff4f20 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/admin.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/admin.css
@@ -1,7 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size:15px !important;
-  font-style:italic;
-}
 .pagination a {
   text-decoration: none !important;
 }
@@ -75,7 +71,7 @@
 }
 .regex-input {
   font-family: Consolas,monaco,monospace;
-  font-size: 14px;
+  font-size: 1rem;
 }
 .label-keys {
   font-size:100%;
@@ -85,4 +81,7 @@
 .key-action {
   font-weight:bold;
   color:white !important;
+}
+.dkim-label {
+  margin: 0 0 8px !important;
 }
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/debug.css b/mailcow/src/mailcow-dockerized/data/web/css/site/debug.css
index 2209462..39c3a86 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/debug.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/debug.css
@@ -1,7 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size:15px !important;
-  font-style:italic;
-}
 .pagination a {
   text-decoration: none !important;
 }
@@ -38,10 +34,4 @@
 .table-lines {
   vertical-align: inherit;
 }
-tbody {
-  font-size:14px;
-}
-.status-indicator {
-  width: 15px;
-  height: 15px;
-}
+
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/edit.css b/mailcow/src/mailcow-dockerized/data/web/css/site/edit.css
index ac3a430..e8fb819 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/edit.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/edit.css
@@ -1,7 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size:15px !important;
-  font-style:italic;
-}
 .pagination a {
   text-decoration: none !important;
 }
@@ -40,4 +36,8 @@
   -moz-transform:rotateX(180deg);
   -webkit-transform:rotateX(180deg);
   transform:rotateX(180deg);
-}
\ No newline at end of file
+}
+#sender_acl_disabled {
+  display:none;
+  margin-top:10px;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/index.css b/mailcow/src/mailcow-dockerized/data/web/css/site/index.css
index 10f7c0d..41438a8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/index.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/index.css
@@ -2,4 +2,7 @@
   #top {
     padding-top: 15px !important;
   }
-}
\ No newline at end of file
+}
+.ui-announcement-alert {
+  margin: 10px 0px 10px 0px;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/mailbox.css b/mailcow/src/mailcow-dockerized/data/web/css/site/mailbox.css
index 8b5bad6..4822a6f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/mailbox.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/mailbox.css
@@ -1,7 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size:15px !important;
-  font-style:italic;
-}
 .pagination a {
   text-decoration: none !important;
 }
@@ -26,6 +22,11 @@
 }
 @media (min-width: 992px) {
   .container {
+      width: 100%;
+  }
+}
+@media (min-width: 1920px) {
+  .container {
       width: 80%;
   }
 }
@@ -57,8 +58,13 @@
 table tbody tr td input[type="checkbox"] {
   cursor: pointer;
 }
+.label-last-login .bi {
+  font-size: 8pt !important;
+}
 .label-last-login {
-  line-height: 2.5;
+  line-height: 2.2;
   color: #4a4a4a!important;
+  padding: .2em .4em .3em !important;
   background-color: #ececec!important;
 }
+
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/quarantine.css b/mailcow/src/mailcow-dockerized/data/web/css/site/quarantine.css
index 7a12749..3634696 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/quarantine.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/quarantine.css
@@ -1,8 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size: 15px !important;
-  font-style: italic;
-}
-
 .pagination a {
   text-decoration: none !important;
 }
@@ -29,13 +24,18 @@
 
 @media (min-width: 992px) {
   .container {
-    width: 80%;
+    width: 100%;
+  }
+}
+@media (min-width: 1920px) {
+  .container {
+      width: 80%;
   }
 }
 
 .mass-actions-quarantine {
   user-select: none;
-  padding: 10px 0 10px 10px;
+  padding: 10px;
 }
 
 .inputMissingAttr {
@@ -100,3 +100,4 @@
   font-size:110%;
   margin:20px;
 }
+
diff --git a/mailcow/src/mailcow-dockerized/data/web/css/site/user.css b/mailcow/src/mailcow-dockerized/data/web/css/site/user.css
index 965562c..0ec07b7 100644
--- a/mailcow/src/mailcow-dockerized/data/web/css/site/user.css
+++ b/mailcow/src/mailcow-dockerized/data/web/css/site/user.css
@@ -1,7 +1,3 @@
-table.footable>tbody>tr.footable-empty>td {
-  font-size:15px !important;
-  font-style:italic;
-}
 .pagination a {
   text-decoration: none !important;
 }
@@ -47,17 +43,6 @@
 table tbody tr td input[type="checkbox"] {
   cursor: pointer;
 }
-.rotate {
-  -moz-transition: all 0.3s linear;
-  -webkit-transition: all 0.3s linear;
-  transition: all 0.3s linear;
-}
-.rotate.animation {
-  -ms-transform:rotateX(180deg);
-  -moz-transform:rotateX(180deg);
-  -webkit-transform:rotateX(180deg);
-  transform:rotateX(180deg);
-}
 .label-keys {
   font-size:100%;
   margin: 0px !important;
@@ -66,4 +51,79 @@
 .key-action {
   font-weight:bold;
   color:white !important;
-}
\ No newline at end of file
+}
+svg {
+  display: inline-block;
+  vertical-align: middle;
+}
+.c-1-color, .label-ham {
+  background: #28b62c;
+  background: -webkit-linear-gradient(to right, #28b62c, #fff233);
+  background: linear-gradient(to right, #28b62c, #fff233);
+  color: #000;
+}
+.c-2-color, .label-spam {
+  background: #fff233;
+  background: -webkit-linear-gradient(to right, #fff233, #ff4136);
+  background: linear-gradient(to right, #fff233, #ff4136);
+  color: #000;
+}
+.c-3-color, .label-reject{
+  background: #ff4136;
+  color: #fff;
+}
+#spam_score {
+  margin-bottom: 10px;
+}
+.noUi-handle {
+  border: 1px solid #e2e2e2;
+  border-radius: 0px;
+  background: #eee;
+  cursor: default;
+  box-shadow: none;
+  border-top-width: 0px;
+  border-right-width: 1px;
+  border-bottom-width: 4px;
+  border-left-width: 1px;
+}
+.noUi-handle:hover {
+  background-color: #eee;
+  border-color: #e2e2e2;
+  margin-top: 1px;
+border-bottom-width: 3px;
+}
+.noUi-handle::after, .noUi-handle::before {
+  background: #c6c6c6;
+  width: 2px;
+}
+.noUi-target {
+  background: transparent;
+  border-radius: 0px;
+  border: 1px solid #D3D3D3;
+  box-shadow: none;
+}
+.noUi-connects {
+  border-radius: 0px;
+}
+.label-ham,
+.label-spam,
+.label-reject {
+  padding: .1em .5em .1em;
+  font-size: inherit;
+  font-weight: 400;
+}
+.clear-last-logins {
+  cursor: pointer;
+  font-size:90%;
+  font-style: italic;
+  color: #158cba;
+  user-select:none;
+}
+.ip-location-flag {
+  border-radius: 4px;
+  top: 3px;
+}
+.recent-login-success {
+  margin-top:2px;
+  margin-right:10px;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/debug.php b/mailcow/src/mailcow-dockerized/data/web/debug.php
index 6390be7..f8ad527 100644
--- a/mailcow/src/mailcow-dockerized/data/web/debug.php
+++ b/mailcow/src/mailcow-dockerized/data/web/debug.php
@@ -28,6 +28,7 @@
         <li role="presentation"><a href="#tab-rspamd-history" aria-controls="tab-rspamd-history" role="tab" data-toggle="tab">Rspamd</a></li>
         <li role="presentation"><span class="dropdown-desc"><?=$lang['debug']['static_logs'];?></span></li>
         <li role="presentation"><a href="#tab-ui" aria-controls="tab-ui" role="tab" data-toggle="tab">mailcow UI</a></li>
+        <li role="presentation"><a href="#tab-sasl" aria-controls="tab-sasl" role="tab" data-toggle="tab">SASL</a></li>
       </ul>
     </li>
   </ul>
@@ -48,7 +49,7 @@
             <div class="panel-body">
               <div class="row">
                 <div class="col-sm-3">
-                  <p>/var/vmail on <?=$vmail_df[0];?></p>
+                  <p><i class="bi bi-hdd-fill"></i> <?=$vmail_df[0];?></p>
                   <p><?=$vmail_df[2];?> / <?=$vmail_df[1];?> (<?=$vmail_df[4];?>)</p>
                 </div>
                 <div class="col-sm-9">
@@ -66,7 +67,7 @@
             <div class="panel-body">
               <div class="row">
                 <div class="col-sm-3">
-                  <p><img class="img-responsive" alt="Solr Logo" width="128px" src=" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABlCAYAAAAI2qyuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAXEUAAFxFAbktYiwAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjEuNWRHWFIAABv7SURBVHhe7V0JuBxVlX4JMy6jM4qOC4rp6qWq+jW+ruoXkIjoS1d3EhYXRvNkFHFBYECUAXGAASEOyiLIrigOEpDoACIqwogLiwMSkIghYF4viSFhiUGWCAQIyXuZ/9w+3V3VdXtfee/+33e+16/uqXtv1T2n7j33nnvukIJCP7BjbOzvsgt0O5cyjsymzG9mU8YvcylzIucYT2Ydczt+7xDkGFuR/hf8XplxzHG6d20qauSSkfCSJUOzRWYKCtMBE3uZ/5hxjE9A4K+FEmwuKUFj9Nd1Y9brdwwNzco6xr10DXk8DAX77kTaXEQKx8UoKLz8AGE+D73BcxVC3zBl09HPUz6ZpOHI0kEboXhnrU3H5ogCFRQGHSvmzv17+stf/ZaVA71EppgXFO0Xcp4CYai2LZeKLs2m9BDxKygMHEg4Mynz+kzK2IP+X52KvlEmzI1SPml+kPLB8CyOXmJKxuMnYyvoG7l9Iv9E9yoo9B3Xjg/thC/8cegtnsffFyGcr6TrBWNcJsQNkGPeIjIHkO8yKU9teiSXiryfs1BQ6A8eWhTdBV/3W4qCid/3c9IQ9QAugW2YoGSTeSc6Snn8KTkcKAyf5Ly1iHudi9eNBV4lKqSg0Evk0tF5EN7HPILpmN/l5CEMdY71pDVKjnkFZ0HDqwulPE1QJmneM5E238ZZKih0H3ln+AB8oV/wC6TxOWYhBfmGP702offYknX0t9P9Dy6MvaE9I99Fjrk+50RiomIKCt0EBO7jENzyop6LVqNXYTbiu6YyvR5NpMz/4tuH8PvLMp6WyTFO5awVFLoDfIkXQ9CkygHatuL9c/+BWYfQwyyX8FQlKN1jGxfEX0P3blg879XoTTbJ+JolskUySeNEUae0PkxEvxUUOgoMfd4rZqkkQkgEAV/FrALgfVzGV41gb3yWbx3KYKgm42mWqKfLpqKHU54Fg9/cgHqtp8kFUZCCQidAK9UQrpoCD2H8HrMPUU9SbRhWhVZeOz6+E927A39h/K+R8DRHjrGVejzKM7dP5E3IM1NMQ92WF6ejFRTawoPjsVdA0O72CJ+E0AMcxbcMkVOhjEdGYgiUNlJ861DeMcdlfM2R8SyM8gWUHy0aQllWSPguFgUqKLSDfMrYRyJcPppImnvxLSTkSRmPlBzjRr5NAMr4eylfo+QYT2A4+C7Ki9ZAsk70NhmfUEw8myhUQaFV0PBKJmBuwvDlpXVjY6UFOVw7pJKnCm3LObHS9Cv1JBKeZuiRfHJ4N8qLPH2hbD+V8JTJMdY/OBZ7rShcQaEV7FgyNBtj9iekAsaE9AeYXSDjRJfI+CoJBvO3+BYBKNrNMr5GCHXIToyZGuVDjpIZx7xCxucjxzhbFK6g0CogSP/rEywXQThLBjoBw5fLZHxugnJsJuOZbxnKLtQtGvbIeOsRyr9vrfPOt1A+pBzoOc6V8ckIivRiUbEUFFoCBPcsmXAVKTvfPJpZBSCgv5bxecgxjmd2gXzKvErKV4egHLevTYdex9lQXZteYMykyi4yCgp1UXT3KAJC9JFKoXJTZoHxHmYVgPBnZXxFwlDqIbcTYatOidmkccNd83Z9NWczlEubR0BBpLy1iNZ31NqIQsOgIRL/FPgzBFgmWET4gm9fySvgBLFRSuqnVSYo4L8yuwAUqmmnxIxjXFncUEWgPFHupIy3EZpwzNM4KwWF6kBvEKRZqdtc+70L43q5oQ6h/BOzCZAtIOMrEgR7OeXH7IWNVU06JaJ+F7jzyM83F1GdZbyNEnqRh4uLlQoKVTGRLIzhK/d5QwApAolfuBzzSmYRoB2FUj4QlGkqM987HAP/KTJeGdH9EOST+VaBNRjeNatg1YjWbzhbBQU5MGQS0UMyaWNvviQAwTyzUqCIILReA72GvQJl+BGzCWyA/YB8G3JKLAyfyu70hDUpcwQK+pSMvxWinomzVlDwY82C0JsLgigE5iC+LABBXOwWpiKREyOzCOTmG8fL+cwXK4MqgLdBp0Rjaz41fCDfJiDcWRzjUTl/a4Q65jl7BQU/3EpQdBEvYt0iU3MLExG+uNsedbm4E6oZ3Og9zmEWAbJxoIx1nRIhtFvI3YVvE1i9KLpLxjHXyvjbIRrCqdkshapAb1BaYIOCeJz5eEX9abdAQaFWc3IJuH69h6dAIgAcswhAYQ6U8HkICviU28eLsGr/kZ0hyPfL+Nsmx9iu7BCFqoDg/colMDfx5RIgQN4FwLTXQCdgOOTznEW+HjuFAOWq45RoPDYBG4PZBWg6GUp6l5y/daLVdDzbpVBGk4tSUPAjk6RwOQWhwdf7Qb5cAoTobLdg5dLGMZwkUFgDqexlygHgiqgRKVEQ8siTjcHsAsLtPlnb5aVZwvANBr5x+rqx2Fu5mKHMmPHP/FNBoYyCa3h5oQ2/N7vXGgj5tPFRj4Alh9/HSQIUh9edhyDH/AAnl4BeoJZT4v3r9isLLKEwvDOvlvC2RJmU+TCGeF/c5PLkLYQwMi6nHoovKSiUwTv5HigKEQRyigSekwUecG2EQvp2t4ARMguNaDFd8KSMWyuVjALKkTHs5ivxO+Ydq/Ye2ZlZBUSv5JiXyPibJsdYlU1FP7XD1aPRPviC97HxLPFAQR7iJAUFL/BV9WyOyiZ1i5ME+EsuIrRDkLJ8uYTcgujC0r2pcgA4N6A0PyjyeMgxbnIHfSgCw7ivSvmbINTldjzLfm5lpWeBjXMInsMzVYz/NzOLgoIfEJDS8CefDIv4uG5gyPQbTv8hXyoBaUcU7804RikAXBHVnBJJacjGYLYSYKu0FnwOhOfYDrpudTpSCkVURGa+kULafbL7yGBnNgUFPwqr04WACxh6lPaZF4Gv8ddFGsbwfKkECPTXhKA5xnOVHsEEKMIFRUEsEuyBi+lrziwl4Iv/yWpDsVqEe15AOd9ekx7WOasSKOQP6nYjeKT3EikFeZkgEom8skixmP/r2k3Q/ggWljP4UgklQz0dHeNLJaAHuZLSMAzzecZWOiWSkIJKgeLcgPJ9CDxNub+jR3gyl4qevsoJio1TbhSimujfRHl184RyPcu3KQwq5u0679VG0NpWJF2z/8JJPYHwyHWMZyDwV/OlEvILYxHqYSoNeAKE9DbQY7J93rjn1LIQmpMQ2C9wkgf5VHg+0mu6y7sJ5a3HcO4YWZk0M4e0E4p2UyOEsh/m29vB+E6RyGjYDCY+YASsYwzN+oYRtJfi73X4eyPoZ3rQvhZ/L0cDnwOeY00t8UG6Z2hoiTpjrg4KCmLvKBIU5AlO6hkgVCeDlvO/JYjZLsdYwf96AIVam0uah/C/JRQiJRocV8t4CcryCU7yYCIZnYsy/1YptDJCfqvy6eGDZcew0TmGtFIPnnWye2tRNmn+gbNpDqY2YhqB+IkQ/JuhCJvdDdgMobGfMjT7el2zDo9G93gjZ6/gwiAoCPlY5R3DpyAECHgpCmIRPMP1e5k9AWE9UggfnSEyX9+fL3uQGTOiULCanr34uk9hCHQreoV9K6ePiyAvZFJs2f0N0vWcVX0EAmOvigTjn4Uwr3A3WKcIDb8VtAzkmU6c6RgEBSFMpMyDZLNLlQ6KBDLKi8Ha3Cg6JUJoN1d6/hbxwMLd3gHlWS8RVkFI2w7F+NFaPr1KBvIURjnXgqR5NEpQ5tM5y+oYw0OZocQR+NI/4m6oLtIkhOCqUCj+Zq7CjMagKAgNVXYc7nUTqYZqoTzFUCdl/qVyTaWI3N6RN6HnWC0TVtHjpMxLyO5hdh/W7z2yM5TvXFDVuMHNUDYZ/RhnLcdw2NpND1p/cDdQJWGYtR22xWr8vUYPJk6LBOJHmEF7cVSzFpphK4nr6TBsDj1gfRrDsRNwz6XohX6HfLdU5uUhzd5EeXBVZiwGRUHahVgFx5c/vzAsFXAy9KEcPqdFKMaTGMZ9dc2C6h9MWg0nQx+8NWN2NUu05ZiL8ANCPg7BlwoxhP5p/P0uGeaRyLtaOiSRpiuFAmn2+aQMlWUI0mjmxj6Ub5mRmC4KQj5VsvUQgvD9gj3hFk78/xB6jKNrRTskpYMNcgAUo2bklFYo45gbqtk2QwZsDTTGlLthBIlhlnXU3F384852QMoiytSsh31loh5kxDPrjMN0UZBqoJkwCGRp3wiU4n6yd9yBImQQs1wp8/bifR0nx7yUi/IirI18sDBscgupNUlTtPF4OaRLNxB/S/w1EIBzC+V5hGJ7JBj3eYLOBExnBSnMdhnfg6BTAIZbaLdg1a82Iw8jHsL7ffC3HNanESJ/LS6yDGNOPOiftrWep3ULZukJxJpK0H7OXQ8IxjM0vcwsMwbTWUHyKf0sCPo1E2Pm7nypKoSNkjK+Rsa6TKA7SajT47IZu1lQjl9VNMbWfhnKEc0eI+V01wdDvPt67WrRb0xXBaHTZnPJ3TwboWSgoVY+qR8GxdgoE+ZuEG035uLLMEKJlLshiCCk/87JfYEZtD/uqZNm5aPh0bmcPCMw3W2QWshgyAXFKO1L6RTxkG4T8qYtwT/OOcY55KKC3x9ZkzZ3l7nawzC3r/c2hEW7qfruCoJeYyno50bI3hf/zjjXlJmoIGsWRN8JO+MXbqFujjAMc8y1UIDb8HspeoTToACH0h4V2sjljgXcEDBseS2E8EV3Q0QGZw2iptE23TGTFOTBsdhbs0nzvyHYVc80LHz9yVvXXJlNGTeA//y8ox8HA//A1anou8m5kmbGOMumUHWCgBbz3I0AZSEvxhktmIOCmaAghYM+zZMg+M9guLMVtB49wB15x1iWSRtnkP8WzSpRz1I8HrpdkBLRPpGsE6VA17Sv5TcoV36ADnoLWuEuK0jQvpyTFPqMmaAgFPCBfLNoIXFFg+4szYCUgcL4YJj1CSjiebQoib+VnsJ/rRrFBC/+Ik8jBOPHcZJCnzGTjfRWQLNeHDDioGxKPx/KcHsxCEMtQg9V3e/KCFpXeBohYNd20poBGMdXJxqMG7QGZGr20REtfooesL5Cbv6RgPUZXUu8zzDmdj1uklKQ6qAYW3TwJ3qDT2N4dCGGSndimNZ0dHcM4f6Hs5QDNscyTyMEEh/mpBkFWsk3g9ZBeB8/9i+YSmkK9tsEhPZcnn7uuN3WDQWJBO3FyOvuIpG3NifVw6xhLRGIzME7ClrnmIWNcLdRHnrQuh3pXZtlJGWg6IprUvqncmnjIgj2negdOrFouJrOT+di5MADXgoqN7yWOJiTZgTItR7PfTaInDDL76FZ0ux7IsEEucR0TFG6oSAQ5s+788THoOa+B+opjVD8RJS9ynOfi5Dn80uWdGaHKLnLk0t8Nq0flqP94465HNT5FXTHeGJ1KmpwsdUBm+Msz8Nq9pc4aVpjLr5KRsg6XtesZ9zP3wG6VQ/sNszFtIV+Kkhh+t86A71F7a0JoHYURNgNwitXBIW7G387sp+jJlGk+Ipg2FUBAfm3igdeyknTFhhGDuM5a+11mYIwrscQ6ic0nMA7+rIRsk/EfafBLrkM/9+L9K2S+5isF0DHoqi2epN+KYgZsOaD7yEPXw3qQA8yi06yyiajH86n9K9AiG/CEGoj7Aq5gLdBUMAtFBOYy60PjEF39zysZq3H5Wm7DmIErAMg+M+6n7lEmrUBdsjJ4XCCNvbUfAf8hf0o7rsZ5N8eANJD9nXtbA/oh4IYwcQX/R7dLtJs2pawVOQTju+jByw7FprrOaatE6CFO/LZghH9IQyHTsVX/0YIeFs+WVC4pzNj3hOz6oK21eKBPeNvchbk5GmFQm/pdacnguD9FX8/R8MuZm0K4fDIKITql5X5EuH68tiu897ArE2hxwoyC/mf50ljwvWt+LBcYYZtGpb09eO5Hkoz4ZgfEEqTMn4GwX+EVtgrlcFHjpGjgHGcTXPAV2FpxQu5BZenVS8C5TgMz+b70uP6dZGI/SZmawez0GN8DArhM/YhlPe2svuylwqC3zRRUb5eTr+OtkKImwcTs2hLbjYV3R/Dp5PR0/wUfze4lQP//3T9/t5g2E1B10b3lLycabPdVQ/Y+0G4vMMGzdrWDY9lfc7uISjd/Z6yCnQz9dbM1hB6pSAUS8BzTVy3/6aHEp5zzF9OEEqT1PeDwizGv+1/7PFCbqh4SS/Qghgnv2yh67uH8CyerzoE+CU9EO/aeg/1FhjK3e4uU5QbtM9ilobQIwX5Fb0P9zXwPBoMjnpOdeoGyM7IJaMLs46xDMOkSzBkOoW23NKRzrR7sPLAnb6CDC28LM8CGRrkWSOQ8Byc+HICrYgbWvx3Fc9EW3g/wixdAxnxELzfu8sGTVKwCmapi54oSCVRRJlgvP76QAfB8XovhIJs9Q6NyLPXeAi/f5tPmVdRzN1M0jgy4xj75pxIjBb5KCQRZ9N90FcVL6linG5NRoLWOdTgzPaygVQYQtYJnNx1vDO451t41qdUPuqUp0B8zFITvVYQ6knYEO8LaOEOCnF9o9O7ZJzDvtgMRbor6+j/wtl0FzTNh5clmba0NqKHOb4XPkidQGzX2BtQ76fczwAB+AWSejr5wNuHPTNn5EHNyTXRawUxNevLzNZX5NKRMfQo98qUokjkdwXl+Dl+H7I2HXod39ob4GUdWjkuLRIaaSsU5SY0+rG0hjKoPYseTJxZUe9nIpGRXTm5p0AvcrG7LqCnGpnV6qmCaPYDzU4idBMU9YRc1KEo69BTPJ6lU3Md88pMKvrFtWljb1lghZ4iHEi8Gw2Slb5ML01BYTCMsH4LI/RqNMAluHY2rp2O31+BDXAKudCbgfghwjsWSsWhRbs2dhRGsmb9zVPPBr/a3UAgYL2ehNtdH12L13Xp6aWC4Lo0mHS/US8UUF9Bh7agUb6E3oQW0nwvtS0iAdbse4xg/DvkQt7JrzuU9ShvWfYm8tbl5L6AFNRTp6C1BpdrfiR6qCB/RNK0WvfqKchdAkpyGBr1LrxM30p0h4iiKN5LaxNkP3DRLQH5eGaPIBTSE4x6Ce5FPPG+jFC8pttDDxVkRod47SjMdyTeRsGoIYTfxstegb+d9oYFkQepdVEssIfnnOxGQHsWKvKa7IavUCvQtcRl7rrh3fljMLnQCwXB/1tM039KlELnMDsOm2JYi+8Z1uwPmSHr0xDKo0wtfjSdKBWhma+QvQSNcRFslGvQyHdiuLGBBNfdUDIC/7NmSKx2N2yvwNbxrApDAAbmQHg8jydABuo2wUlS9KQH0ezGD4pR6B12LTT+HjSkgsLcBPKEHvIQ0kOhuQ1N5UEIv+++Vw+OnMRJfUcsFnsFhNztSTxZa9q8Nwoi3w+iMGAYmTOys67FvwAh+LOnAYsUsFY2clQbeB903zdo7jIQyF+768dB8aRQCqLgg9jpR7NQ0n3h1l21VqHFvZ4geNakae41UONrPBcddFp+poB1DCf5oBREoSpEtPmgfZ+nMQv0HWbxgfeXl3ghUD09NrkRROhIO3cdQ/Z5nOSDUhCFmqCvv65Zd3gaNGhPVdvQJU7g9fBaKzlpYKCHhL9buY6avYyTfFAKolAXBdvEyrsbFYJyJyd7EAnEEx6+oJyvnzC1+CJ3HSl8Dif5oBREoSGE59h7oTErHCgTcU4uga55eDS7tcPguwgjYO/rrqNSEIWOAML+c3fDoqF9q+O6PkKbo8o8mvUoJw0MaFuuu46gqlFklIIoNAxDix/oadig9VtOKqGwk6/c00AYttN6CycPBMTCqes5UMczOckHpSAKDYPcTtwNC/viKU5yYzZdd/OR9zCnDQRQp8vd9cOQ60hO8kEpiEIzmI0hk3ttZErmQ0Q9i4sHZB3FSQMBDBU9C5kUpI2TfFAKotAUIOye2SxynOSkEiBEnthO6FF+wkl9R3TO6C6oU3kIqFkv1dpwphREoSlAQf7kblzy3OWkEiAA+7t5IFTPDYodEtWsw911A93NSVIoBVFoCmjcR92NKwv4Vti74t13Yc6xDuLkvgIK7gkFhN7tPzlJCqUgCg2DegE07rZy41ovVdtDjbQfuIUAgnUHJ/UNw2FrN9TFvZYzxTGAq0IpiELDoN137obF1zfDST4YoVHHzUsUDSfezcl9AQSzwg1fhHetCaUgAwLybepFJL12gF7hQk/D1j5slGa8POE/9WD8Vlzvy75rCLaF+ns2iOkhez9OrgqlIAOAsJY4WLiIa/amMIYBfHmgQF66EHjP1t560REjQXvczU+kB+I9jzUrojsW9vK760LGeV1lVQrSZ0ApTsVLKo+LNetx/N2DkwcFs1CvH5XqKMjaSLvzOL0aZlUKJglYr2NjkSHurgNoSg+OvpeTa0IpSJ8BBaG94uWXJcjaMkhRvSmmVmUdaZsuJ9cEHe4CgfAGZobBTuGMmKWrQC+2AALomlggsq7g5LpQCjIAwAs72fPCCkQnuH47Hu9vLCnagkt1cdcN9V3RTARA2UcAz3b1+ND4TszSFaCcPSB8nuB1KHcdhf9hlrpQCjIgwIv6LK3qel6ceHn2WjYme2rc0rZalF0ZrpME7MlIZDTMbA2BbAAI1m8q84po1g8bGKa1BD048l6UUXmQzgsQzncxS0PwKYjc/6wpKAVpETSNipfnWYgrkhCwOkHOOgU6bgGCMOGvh7Wl1TrQEWh4Nn+emvV/MneVNjArEkgcgfdVccCnNUneyMzTMArH49GBoKW8JqNvqx+4ohaUgrQBsae7Yt+Fl6zlaPxPxmJjHQ1YLcLhhOIfhmLcKS1XszbXcuprBBQ8Dvn7I6Zo1uN6wP4YWNrqJUX+/kOIQNakGUwcwmxNA3n80Z0fnuE4TmoJSkHaxyxDSxyMF1k1Hi/StuDFXodh2WF8fl3TwhWNju5iBu1x5EHHKlcvS7MfMAJzo3xbW9B16+0Q2JXScqCctB0WbE0F1aYeCHmeA3rel69mvdju1DIJsDtPvI9nYnPsGCdLEQvEqkakVArSIVBXjsb4ptQ2qaTC9PAvhd2gWSfga/8ZCP9iI2wdEC4clXwoBPAkPWR9C79vBs9jpXurEMreijy+3mlHQ3KRp22usjIFafYaPRj/uqmNLiqEPvUY87PI10vsfZ8jQhNRwDvpkcl4b+t1Lb4n39cywuHd34E6eYLq4V0+jWunGKFEKkrnj9BmMjFlb/0Q6WtBNLEhna5XCtJh0HFceKnfx8uvmK7sDqGsbaZmX9XtY8AovjDK82yukpP1PIT9cSjsJiGY9YN3k3AupWATXFTbQLmVaymNkDSkqFKQLoGGUpGgfTZe8EbPC+4UafFHIIhn9vLIYfIGpl6toV6yAcK7+Z0Rst7D2XcSs2nWTVZmdbIm9UDCdy64UpAug2ZWCt164gx06/fgBbtnWRomNNQTuPfXES1+SiQwOm9oaEnvDmOsQOEA08QZqJN0Fq8OPY8v/LUYVjZ8OGdrWDLbLCya+s5h95Nok7vRC7+fby5BKUiPQeE+zeDICPlGURhN9DJfZVvjcijQMnydL6PogRjSnGwER8gWSfPUal8cB2tjyWzy+kUdT4Lg3ADKg9zj/yk80yYMt+7E81xAdlavQ5vSDkTU6aOgM+g4BROE+pyH9/wfZO+R9wC1CbP7QDOVtE+/SDRxwUkKHgwN/T/fvy7K4dvMgwAAAABJRU5ErkJggg==" /></p>
+                  <p><img class="img-responsive" alt="Solr Logo" width="128px" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABlCAYAAAAI2qyuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAXEUAAFxFAbktYiwAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjEuNWRHWFIAABv7SURBVHhe7V0JuBxVlX4JMy6jM4qOC4rp6qWq+jW+ruoXkIjoS1d3EhYXRvNkFHFBYECUAXGAASEOyiLIrigOEpDoACIqwogLiwMSkIghYF4viSFhiUGWCAQIyXuZ/9w+3V3VdXtfee/+33e+16/uqXtv1T2n7j33nnvukIJCP7BjbOzvsgt0O5cyjsymzG9mU8YvcylzIucYT2Ydczt+7xDkGFuR/hf8XplxzHG6d20qauSSkfCSJUOzRWYKCtMBE3uZ/5hxjE9A4K+FEmwuKUFj9Nd1Y9brdwwNzco6xr10DXk8DAX77kTaXEQKx8UoKLz8AGE+D73BcxVC3zBl09HPUz6ZpOHI0kEboXhnrU3H5ogCFRQGHSvmzv17+stf/ZaVA71EppgXFO0Xcp4CYai2LZeKLs2m9BDxKygMHEg4Mynz+kzK2IP+X52KvlEmzI1SPml+kPLB8CyOXmJKxuMnYyvoG7l9Iv9E9yoo9B3Xjg/thC/8cegtnsffFyGcr6TrBWNcJsQNkGPeIjIHkO8yKU9teiSXiryfs1BQ6A8eWhTdBV/3W4qCid/3c9IQ9QAugW2YoGSTeSc6Snn8KTkcKAyf5Ly1iHudi9eNBV4lKqSg0Evk0tF5EN7HPILpmN/l5CEMdY71pDVKjnkFZ0HDqwulPE1QJmneM5E238ZZKih0H3ln+AB8oV/wC6TxOWYhBfmGP702offYknX0t9P9Dy6MvaE9I99Fjrk+50RiomIKCt0EBO7jENzyop6LVqNXYTbiu6YyvR5NpMz/4tuH8PvLMp6WyTFO5awVFLoDfIkXQ9CkygHatuL9c/+BWYfQwyyX8FQlKN1jGxfEX0P3blg879XoTTbJ+JolskUySeNEUae0PkxEvxUUOgoMfd4rZqkkQkgEAV/FrALgfVzGV41gb3yWbx3KYKgm42mWqKfLpqKHU54Fg9/cgHqtp8kFUZCCQidAK9UQrpoCD2H8HrMPUU9SbRhWhVZeOz6+E927A39h/K+R8DRHjrGVejzKM7dP5E3IM1NMQ92WF6ejFRTawoPjsVdA0O72CJ+E0AMcxbcMkVOhjEdGYgiUNlJ861DeMcdlfM2R8SyM8gWUHy0aQllWSPguFgUqKLSDfMrYRyJcPppImnvxLSTkSRmPlBzjRr5NAMr4eylfo+QYT2A4+C7Ki9ZAsk70NhmfUEw8myhUQaFV0PBKJmBuwvDlpXVjY6UFOVw7pJKnCm3LObHS9Cv1JBKeZuiRfHJ4N8qLPH2hbD+V8JTJMdY/OBZ7rShcQaEV7FgyNBtj9iekAsaE9AeYXSDjRJfI+CoJBvO3+BYBKNrNMr5GCHXIToyZGuVDjpIZx7xCxucjxzhbFK6g0CogSP/rEywXQThLBjoBw5fLZHxugnJsJuOZbxnKLtQtGvbIeOsRyr9vrfPOt1A+pBzoOc6V8ckIivRiUbEUFFoCBPcsmXAVKTvfPJpZBSCgv5bxecgxjmd2gXzKvErKV4egHLevTYdex9lQXZteYMykyi4yCgp1UXT3KAJC9JFKoXJTZoHxHmYVgPBnZXxFwlDqIbcTYatOidmkccNd83Z9NWczlEubR0BBpLy1iNZ31NqIQsOgIRL/FPgzBFgmWET4gm9fySvgBLFRSuqnVSYo4L8yuwAUqmmnxIxjXFncUEWgPFHupIy3EZpwzNM4KwWF6kBvEKRZqdtc+70L43q5oQ6h/BOzCZAtIOMrEgR7OeXH7IWNVU06JaJ+F7jzyM83F1GdZbyNEnqRh4uLlQoKVTGRLIzhK/d5QwApAolfuBzzSmYRoB2FUj4QlGkqM987HAP/KTJeGdH9EOST+VaBNRjeNatg1YjWbzhbBQU5MGQS0UMyaWNvviQAwTyzUqCIILReA72GvQJl+BGzCWyA/YB8G3JKLAyfyu70hDUpcwQK+pSMvxWinomzVlDwY82C0JsLgigE5iC+LABBXOwWpiKREyOzCOTmG8fL+cwXK4MqgLdBp0Rjaz41fCDfJiDcWRzjUTl/a4Q65jl7BQU/3EpQdBEvYt0iU3MLExG+uNsedbm4E6oZ3Og9zmEWAbJxoIx1nRIhtFvI3YVvE1i9KLpLxjHXyvjbIRrCqdkshapAb1BaYIOCeJz5eEX9abdAQaFWc3IJuH69h6dAIgAcswhAYQ6U8HkICviU28eLsGr/kZ0hyPfL+Nsmx9iu7BCFqoDg/colMDfx5RIgQN4FwLTXQCdgOOTznEW+HjuFAOWq45RoPDYBG4PZBWg6GUp6l5y/daLVdDzbpVBGk4tSUPAjk6RwOQWhwdf7Qb5cAoTobLdg5dLGMZwkUFgDqexlygHgiqgRKVEQ8siTjcHsAsLtPlnb5aVZwvANBr5x+rqx2Fu5mKHMmPHP/FNBoYyCa3h5oQ2/N7vXGgj5tPFRj4Alh9/HSQIUh9edhyDH/AAnl4BeoJZT4v3r9isLLKEwvDOvlvC2RJmU+TCGeF/c5PLkLYQwMi6nHoovKSiUwTv5HigKEQRyigSekwUecG2EQvp2t4ARMguNaDFd8KSMWyuVjALKkTHs5ivxO+Ydq/Ye2ZlZBUSv5JiXyPibJsdYlU1FP7XD1aPRPviC97HxLPFAQR7iJAUFL/BV9WyOyiZ1i5ME+EsuIrRDkLJ8uYTcgujC0r2pcgA4N6A0PyjyeMgxbnIHfSgCw7ivSvmbINTldjzLfm5lpWeBjXMInsMzVYz/NzOLgoIfEJDS8CefDIv4uG5gyPQbTv8hXyoBaUcU7804RikAXBHVnBJJacjGYLYSYKu0FnwOhOfYDrpudTpSCkVURGa+kULafbL7yGBnNgUFPwqr04WACxh6lPaZF4Gv8ddFGsbwfKkECPTXhKA5xnOVHsEEKMIFRUEsEuyBi+lrziwl4Iv/yWpDsVqEe15AOd9ekx7WOasSKOQP6nYjeKT3EikFeZkgEom8skixmP/r2k3Q/ggWljP4UgklQz0dHeNLJaAHuZLSMAzzecZWOiWSkIJKgeLcgPJ9CDxNub+jR3gyl4qevsoJio1TbhSimujfRHl184RyPcu3KQwq5u0679VG0NpWJF2z/8JJPYHwyHWMZyDwV/OlEvILYxHqYSoNeAKE9DbQY7J93rjn1LIQmpMQ2C9wkgf5VHg+0mu6y7sJ5a3HcO4YWZk0M4e0E4p2UyOEsh/m29vB+E6RyGjYDCY+YASsYwzN+oYRtJfi73X4eyPoZ3rQvhZ/L0cDnwOeY00t8UG6Z2hoiTpjrg4KCmLvKBIU5AlO6hkgVCeDlvO/JYjZLsdYwf96AIVam0uah/C/JRQiJRocV8t4CcryCU7yYCIZnYsy/1YptDJCfqvy6eGDZcew0TmGtFIPnnWye2tRNmn+gbNpDqY2YhqB+IkQ/JuhCJvdDdgMobGfMjT7el2zDo9G93gjZ6/gwiAoCPlY5R3DpyAECHgpCmIRPMP1e5k9AWE9UggfnSEyX9+fL3uQGTOiULCanr34uk9hCHQreoV9K6ePiyAvZFJs2f0N0vWcVX0EAmOvigTjn4Uwr3A3WKcIDb8VtAzkmU6c6RgEBSFMpMyDZLNLlQ6KBDLKi8Ha3Cg6JUJoN1d6/hbxwMLd3gHlWS8RVkFI2w7F+NFaPr1KBvIURjnXgqR5NEpQ5tM5y+oYw0OZocQR+NI/4m6oLtIkhOCqUCj+Zq7CjMagKAgNVXYc7nUTqYZqoTzFUCdl/qVyTaWI3N6RN6HnWC0TVtHjpMxLyO5hdh/W7z2yM5TvXFDVuMHNUDYZ/RhnLcdw2NpND1p/cDdQJWGYtR22xWr8vUYPJk6LBOJHmEF7cVSzFpphK4nr6TBsDj1gfRrDsRNwz6XohX6HfLdU5uUhzd5EeXBVZiwGRUHahVgFx5c/vzAsFXAy9KEcPqdFKMaTGMZ9dc2C6h9MWg0nQx+8NWN2NUu05ZiL8ANCPg7BlwoxhP5p/P0uGeaRyLtaOiSRpiuFAmn2+aQMlWUI0mjmxj6Ub5mRmC4KQj5VsvUQgvD9gj3hFk78/xB6jKNrRTskpYMNcgAUo2bklFYo45gbqtk2QwZsDTTGlLthBIlhlnXU3F384852QMoiytSsh31loh5kxDPrjMN0UZBqoJkwCGRp3wiU4n6yd9yBImQQs1wp8/bifR0nx7yUi/IirI18sDBscgupNUlTtPF4OaRLNxB/S/w1EIBzC+V5hGJ7JBj3eYLOBExnBSnMdhnfg6BTAIZbaLdg1a82Iw8jHsL7ffC3HNanESJ/LS6yDGNOPOiftrWep3ULZukJxJpK0H7OXQ8IxjM0vcwsMwbTWUHyKf0sCPo1E2Pm7nypKoSNkjK+Rsa6TKA7SajT47IZu1lQjl9VNMbWfhnKEc0eI+V01wdDvPt67WrRb0xXBaHTZnPJ3TwboWSgoVY+qR8GxdgoE+ZuEG035uLLMEKJlLshiCCk/87JfYEZtD/uqZNm5aPh0bmcPCMw3W2QWshgyAXFKO1L6RTxkG4T8qYtwT/OOcY55KKC3x9ZkzZ3l7nawzC3r/c2hEW7qfruCoJeYyno50bI3hf/zjjXlJmoIGsWRN8JO+MXbqFujjAMc8y1UIDb8HspeoTToACH0h4V2sjljgXcEDBseS2E8EV3Q0QGZw2iptE23TGTFOTBsdhbs0nzvyHYVc80LHz9yVvXXJlNGTeA//y8ox8HA//A1anou8m5kmbGOMumUHWCgBbz3I0AZSEvxhktmIOCmaAghYM+zZMg+M9guLMVtB49wB15x1iWSRtnkP8WzSpRz1I8HrpdkBLRPpGsE6VA17Sv5TcoV36ADnoLWuEuK0jQvpyTFPqMmaAgFPCBfLNoIXFFg+4szYCUgcL4YJj1CSjiebQoib+VnsJ/rRrFBC/+Ik8jBOPHcZJCnzGTjfRWQLNeHDDioGxKPx/KcHsxCEMtQg9V3e/KCFpXeBohYNd20poBGMdXJxqMG7QGZGr20REtfooesL5Cbv6RgPUZXUu8zzDmdj1uklKQ6qAYW3TwJ3qDT2N4dCGGSndimNZ0dHcM4f6Hs5QDNscyTyMEEh/mpBkFWsk3g9ZBeB8/9i+YSmkK9tsEhPZcnn7uuN3WDQWJBO3FyOvuIpG3NifVw6xhLRGIzME7ClrnmIWNcLdRHnrQuh3pXZtlJGWg6IprUvqncmnjIgj2negdOrFouJrOT+di5MADXgoqN7yWOJiTZgTItR7PfTaInDDL76FZ0ux7IsEEucR0TFG6oSAQ5s+788THoOa+B+opjVD8RJS9ynOfi5Dn80uWdGaHKLnLk0t8Nq0flqP94465HNT5FXTHeGJ1KmpwsdUBm+Msz8Nq9pc4aVpjLr5KRsg6XtesZ9zP3wG6VQ/sNszFtIV+Kkhh+t86A71F7a0JoHYURNgNwitXBIW7G387sp+jJlGk+Ipg2FUBAfm3igdeyknTFhhGDuM5a+11mYIwrscQ6ic0nMA7+rIRsk/EfafBLrkM/9+L9K2S+5isF0DHoqi2epN+KYgZsOaD7yEPXw3qQA8yi06yyiajH86n9K9AiG/CEGoj7Aq5gLdBUMAtFBOYy60PjEF39zysZq3H5Wm7DmIErAMg+M+6n7lEmrUBdsjJ4XCCNvbUfAf8hf0o7rsZ5N8eANJD9nXtbA/oh4IYwcQX/R7dLtJs2pawVOQTju+jByw7FprrOaatE6CFO/LZghH9IQyHTsVX/0YIeFs+WVC4pzNj3hOz6oK21eKBPeNvchbk5GmFQm/pdacnguD9FX8/R8MuZm0K4fDIKITql5X5EuH68tiu897ArE2hxwoyC/mf50ljwvWt+LBcYYZtGpb09eO5Hkoz4ZgfEEqTMn4GwX+EVtgrlcFHjpGjgHGcTXPAV2FpxQu5BZenVS8C5TgMz+b70uP6dZGI/SZmawez0GN8DArhM/YhlPe2svuylwqC3zRRUb5eTr+OtkKImwcTs2hLbjYV3R/Dp5PR0/wUfze4lQP//3T9/t5g2E1B10b3lLycabPdVQ/Y+0G4vMMGzdrWDY9lfc7uISjd/Z6yCnQz9dbM1hB6pSAUS8BzTVy3/6aHEp5zzF9OEEqT1PeDwizGv+1/7PFCbqh4SS/Qghgnv2yh67uH8CyerzoE+CU9EO/aeg/1FhjK3e4uU5QbtM9ilobQIwX5Fb0P9zXwPBoMjnpOdeoGyM7IJaMLs46xDMOkSzBkOoW23NKRzrR7sPLAnb6CDC28LM8CGRrkWSOQ8Byc+HICrYgbWvx3Fc9EW3g/wixdAxnxELzfu8sGTVKwCmapi54oSCVRRJlgvP76QAfB8XovhIJs9Q6NyLPXeAi/f5tPmVdRzN1M0jgy4xj75pxIjBb5KCQRZ9N90FcVL6linG5NRoLWOdTgzPaygVQYQtYJnNx1vDO451t41qdUPuqUp0B8zFITvVYQ6knYEO8LaOEOCnF9o9O7ZJzDvtgMRbor6+j/wtl0FzTNh5clmba0NqKHOb4XPkidQGzX2BtQ76fczwAB+AWSejr5wNuHPTNn5EHNyTXRawUxNevLzNZX5NKRMfQo98qUokjkdwXl+Dl+H7I2HXod39ob4GUdWjkuLRIaaSsU5SY0+rG0hjKoPYseTJxZUe9nIpGRXTm5p0AvcrG7LqCnGpnV6qmCaPYDzU4idBMU9YRc1KEo69BTPJ6lU3Md88pMKvrFtWljb1lghZ4iHEi8Gw2Slb5ML01BYTCMsH4LI/RqNMAluHY2rp2O31+BDXAKudCbgfghwjsWSsWhRbs2dhRGsmb9zVPPBr/a3UAgYL2ehNtdH12L13Xp6aWC4Lo0mHS/US8UUF9Bh7agUb6E3oQW0nwvtS0iAdbse4xg/DvkQt7JrzuU9ShvWfYm8tbl5L6AFNRTp6C1BpdrfiR6qCB/RNK0WvfqKchdAkpyGBr1LrxM30p0h4iiKN5LaxNkP3DRLQH5eGaPIBTSE4x6Ce5FPPG+jFC8pttDDxVkRod47SjMdyTeRsGoIYTfxstegb+d9oYFkQepdVEssIfnnOxGQHsWKvKa7IavUCvQtcRl7rrh3fljMLnQCwXB/1tM039KlELnMDsOm2JYi+8Z1uwPmSHr0xDKo0wtfjSdKBWhma+QvQSNcRFslGvQyHdiuLGBBNfdUDIC/7NmSKx2N2yvwNbxrApDAAbmQHg8jydABuo2wUlS9KQH0ezGD4pR6B12LTT+HjSkgsLcBPKEHvIQ0kOhuQ1N5UEIv+++Vw+OnMRJfUcsFnsFhNztSTxZa9q8Nwoi3w+iMGAYmTOys67FvwAh+LOnAYsUsFY2clQbeB903zdo7jIQyF+768dB8aRQCqLgg9jpR7NQ0n3h1l21VqHFvZ4geNakae41UONrPBcddFp+poB1DCf5oBREoSpEtPmgfZ+nMQv0HWbxgfeXl3ghUD09NrkRROhIO3cdQ/Z5nOSDUhCFmqCvv65Zd3gaNGhPVdvQJU7g9fBaKzlpYKCHhL9buY6avYyTfFAKolAXBdvEyrsbFYJyJyd7EAnEEx6+oJyvnzC1+CJ3HSl8Dif5oBREoSGE59h7oTErHCgTcU4uga55eDS7tcPguwgjYO/rrqNSEIWOAML+c3fDoqF9q+O6PkKbo8o8mvUoJw0MaFuuu46gqlFklIIoNAxDix/oadig9VtOKqGwk6/c00AYttN6CycPBMTCqes5UMczOckHpSAKDYPcTtwNC/viKU5yYzZdd/OR9zCnDQRQp8vd9cOQ60hO8kEpiEIzmI0hk3ttZErmQ0Q9i4sHZB3FSQMBDBU9C5kUpI2TfFAKotAUIOye2SxynOSkEiBEnthO6FF+wkl9R3TO6C6oU3kIqFkv1dpwphREoSlAQf7kblzy3OWkEiAA+7t5IFTPDYodEtWsw911A93NSVIoBVFoCmjcR92NKwv4Vti74t13Yc6xDuLkvgIK7gkFhN7tPzlJCqUgCg2DegE07rZy41ovVdtDjbQfuIUAgnUHJ/UNw2FrN9TFvZYzxTGAq0IpiELDoN137obF1zfDST4YoVHHzUsUDSfezcl9AQSzwg1fhHetCaUgAwLybepFJL12gF7hQk/D1j5slGa8POE/9WD8Vlzvy75rCLaF+ns2iOkhez9OrgqlIAOAsJY4WLiIa/amMIYBfHmgQF66EHjP1t560REjQXvczU+kB+I9jzUrojsW9vK760LGeV1lVQrSZ0ApTsVLKo+LNetx/N2DkwcFs1CvH5XqKMjaSLvzOL0aZlUKJglYr2NjkSHurgNoSg+OvpeTa0IpSJ8BBaG94uWXJcjaMkhRvSmmVmUdaZsuJ9cEHe4CgfAGZobBTuGMmKWrQC+2AALomlggsq7g5LpQCjIAwAs72fPCCkQnuH47Hu9vLCnagkt1cdcN9V3RTARA2UcAz3b1+ND4TszSFaCcPSB8nuB1KHcdhf9hlrpQCjIgwIv6LK3qel6ceHn2WjYme2rc0rZalF0ZrpME7MlIZDTMbA2BbAAI1m8q84po1g8bGKa1BD048l6UUXmQzgsQzncxS0PwKYjc/6wpKAVpETSNipfnWYgrkhCwOkHOOgU6bgGCMOGvh7Wl1TrQEWh4Nn+emvV/MneVNjArEkgcgfdVccCnNUneyMzTMArH49GBoKW8JqNvqx+4ohaUgrQBsae7Yt+Fl6zlaPxPxmJjHQ1YLcLhhOIfhmLcKS1XszbXcuprBBQ8Dvn7I6Zo1uN6wP4YWNrqJUX+/kOIQNakGUwcwmxNA3n80Z0fnuE4TmoJSkHaxyxDSxyMF1k1Hi/StuDFXodh2WF8fl3TwhWNju5iBu1x5EHHKlcvS7MfMAJzo3xbW9B16+0Q2JXScqCctB0WbE0F1aYeCHmeA3rel69mvdju1DIJsDtPvI9nYnPsGCdLEQvEqkakVArSIVBXjsb4ptQ2qaTC9PAvhd2gWSfga/8ZCP9iI2wdEC4clXwoBPAkPWR9C79vBs9jpXurEMreijy+3mlHQ3KRp22usjIFafYaPRj/uqmNLiqEPvUY87PI10vsfZ8jQhNRwDvpkcl4b+t1Lb4n39cywuHd34E6eYLq4V0+jWunGKFEKkrnj9BmMjFlb/0Q6WtBNLEhna5XCtJh0HFceKnfx8uvmK7sDqGsbaZmX9XtY8AovjDK82yukpP1PIT9cSjsJiGY9YN3k3AupWATXFTbQLmVaymNkDSkqFKQLoGGUpGgfTZe8EbPC+4UafFHIIhn9vLIYfIGpl6toV6yAcK7+Z0Rst7D2XcSs2nWTVZmdbIm9UDCdy64UpAug2ZWCt164gx06/fgBbtnWRomNNQTuPfXES1+SiQwOm9oaEnvDmOsQOEA08QZqJN0Fq8OPY8v/LUYVjZ8OGdrWDLbLCya+s5h95Nok7vRC7+fby5BKUiPQeE+zeDICPlGURhN9DJfZVvjcijQMnydL6PogRjSnGwER8gWSfPUal8cB2tjyWzy+kUdT4Lg3ADKg9zj/yk80yYMt+7E81xAdlavQ5vSDkTU6aOgM+g4BROE+pyH9/wfZO+R9wC1CbP7QDOVtE+/SDRxwUkKHgwN/T/fvy7K4dvMgwAAAABJRU5ErkJggg==" /></p>
                 </div>
                 <div class="col-sm-9">
                   <?php
@@ -75,14 +76,14 @@
                   <div class="progress">
                     <div class="progress-bar progress-bar-info" role="progressbar" style="width:<?=round($solr_status['jvm']['memory']['raw']['used%']);?>%"></div>
                   </div>
-                  <p><?=$lang['debug']['jvm_memory_solr'];?>: <?=$solr_status['jvm']['memory']['total'] - $solr_status['jvm']['memory']['free'];?> / <?=$solr_status['jvm']['memory']['total'];?>
+                  <p><?=$lang['debug']['jvm_memory_solr'];?>: <?=(int)$solr_status['jvm']['memory']['total'] - (int)$solr_status['jvm']['memory']['free'];?> / <?=$solr_status['jvm']['memory']['total'];?>
                     (<?=round($solr_status['jvm']['memory']['raw']['used%']);?>%)</p>
                   <hr>
-                  <p><?=$lang['debug']['solr_uptime'];?>: ~<?=round($solr_status['status']['dovecot-fts']['uptime'] / 1000 / 60 / 60);?>h</p>
-                  <p><?=$lang['debug']['solr_started_at'];?>: <?=$solr_status['status']['dovecot-fts']['startTime'];?></p>
-                  <p><?=$lang['debug']['solr_last_modified'];?>: <?=$solr_status['status']['dovecot-fts']['index']['lastModified'];?></p>
-                  <p><?=$lang['debug']['solr_size'];?>: <?=$solr_status['status']['dovecot-fts']['index']['size'];?></p>
-                  <p><?=$lang['debug']['solr_docs'];?>: <?=$solr_status['status']['dovecot-fts']['index']['numDocs'];?></p>
+                  <p><?=$lang['debug']['uptime'];?>: <?=round($solr_status['status']['dovecot-fts']['uptime'] / 1000 / 60 / 60);?>h</p>
+                  <p><?=$lang['debug']['started_at'];?>: <span class="parse_date"><?=$solr_status['status']['dovecot-fts']['startTime'];?></span></p>
+                  <p><?=$lang['debug']['last_modified'];?>: <span class="parse_date"><?=$solr_status['status']['dovecot-fts']['index']['lastModified'];?></span></p>
+                  <p><?=$lang['debug']['size'];?>: <?=$solr_status['status']['dovecot-fts']['index']['size'];?></p>
+                  <p><i class="bi bi-file-text"></i> <?=$lang['debug']['docs'];?>: <?=$solr_status['status']['dovecot-fts']['index']['numDocs'];?></p>
                   <?php
                   else:
                   ?>
@@ -129,9 +130,10 @@
                 $started = '?';
               }
               ?>
-              <small>(<?=$lang['debug']['started_on'];?> <?=$started;?>),
-              <a href data-toggle="modal" data-container="<?=$container;?>" data-target="#RestartContainer"><?=$lang['debug']['restart_container'];?></a></small>
-              <span class="pull-right status-indicator label label-<?=($container_info['State'] !== false && !empty($container_info['State'])) ? (($container_info['State']['Running'] == 1) ? 'success' : 'danger') : 'default'; ?>">&nbsp;</span>
+              <br class="visible-xs" />
+              <small>(<?=$lang['debug']['started_on'];?> <span class="parse_date"><?=$started;?></span>)</small>
+              <a href data-toggle="modal" data-container="<?=$container;?>" data-target="#RestartContainer" class="pull-right btn btn-xs btn-default"><?=$lang['debug']['restart_container'];?>
+              <i class="pull-right bi <?=($container_info['State'] !== false && !empty($container_info['State'])) ? (($container_info['State']['Running'] == 1) ? 'bi-record-fill text-success' : 'bi-record-fill text-danger') : 'default'; ?>"></i></a>
               </li>
               <?php
               }
@@ -142,12 +144,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-postfix-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Postfix <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="postfix_log" data-log-url="postfix" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="postfix_log" data-log-url="postfix" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_postfix_logs" data-table="postfix_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="postfix_log" data-log-url="postfix" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="postfix_log" data-log-url="postfix" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_postfix_logs" data-table="postfix_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -159,12 +161,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-ui">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">mailcow UI <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="mailcow_ui" data-table="ui_logs" data-log-url="ui" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="mailcow_ui" data-table="ui_logs" data-log-url="ui" data-nrows="10000">+ 10000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_ui_logs" data-table="ui_logs"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="mailcow_ui" data-table="ui_logs" data-log-url="ui" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="mailcow_ui" data-table="ui_logs" data-log-url="ui" data-nrows="10000">+ 10000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_ui_logs" data-table="ui_logs"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -175,13 +177,30 @@
           </div>
         </div>
 
+        <div role="tabpanel" class="tab-pane" id="tab-sasl">
+          <div class="panel panel-xs-lg panel-default">
+            <div class="panel-heading">SASL <span class="badge badge-info table-lines"></span>
+              <div class="btn-group pull-right">
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="sasl_log_table" data-table="sasl_logs" data-log-url="ui" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="sasl_log_table" data-table="sasl_logs" data-log-url="ui" data-nrows="10000">+ 10000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_sasl_logs" data-table="sasl_logs"><?=$lang['admin']['refresh'];?></button>
+              </div>
+            </div>
+            <div class="panel-body">
+              <div class="table-responsive">
+                <table class="table table-striped table-condensed" id="sasl_logs"></table>
+              </div>
+            </div>
+          </div>
+        </div>
+
         <div role="tabpanel" class="tab-pane" id="tab-dovecot-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Dovecot <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="dovecot_log" data-log-url="dovecot" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="dovecot_log" data-log-url="dovecot" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_dovecot_logs" data-table="dovecot_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="dovecot_log" data-log-url="dovecot" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="dovecot_log" data-log-url="dovecot" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_dovecot_logs" data-table="dovecot_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -193,12 +212,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-sogo-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">SOGo <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="sogo_log" data-log-url="sogo" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="sogo_log" data-log-url="sogo" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_sogo_logs" data-table="sogo_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="sogo_log" data-log-url="sogo" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="sogo_log" data-log-url="sogo" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_sogo_logs" data-table="sogo_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -210,12 +229,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-netfilter-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Netfilter <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="netfilter_log" data-log-url="netfilter" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="netfilter_log" data-log-url="netfilter" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_netfilter_logs" data-table="netfilter_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="netfilter_log" data-log-url="netfilter" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="netfilter_log" data-log-url="netfilter" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_netfilter_logs" data-table="netfilter_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -227,12 +246,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-rspamd-history">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Rspamd history <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="rspamd_history" data-table="rspamd_history" data-log-url="rspamd-history" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="rspamd_history" data-table="rspamd_history" data-log-url="rspamd-history" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_rspamd_history" data-table="rspamd_history"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="rspamd_history" data-table="rspamd_history" data-log-url="rspamd-history" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="rspamd_history" data-table="rspamd_history" data-log-url="rspamd-history" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_rspamd_history" data-table="rspamd_history"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -249,12 +268,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-autodiscover-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Autodiscover <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="autodiscover_log" data-table="autodiscover_log" data-log-url="autodiscover" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="autodiscover_log" data-table="autodiscover_log" data-log-url="autodiscover" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_autodiscover_logs" data-table="autodiscover_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="autodiscover_log" data-table="autodiscover_log" data-log-url="autodiscover" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="autodiscover_log" data-table="autodiscover_log" data-log-url="autodiscover" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_autodiscover_logs" data-table="autodiscover_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -266,12 +285,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-watchdog-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Watchdog <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="watchdog" data-table="watchdog_log" data-log-url="watchdog" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="watchdog" data-table="watchdog_log" data-log-url="watchdog" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_watchdog_logs" data-table="watchdog_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="watchdog" data-table="watchdog_log" data-log-url="watchdog" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="watchdog" data-table="watchdog_log" data-log-url="watchdog" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_watchdog_logs" data-table="watchdog_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -283,12 +302,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-acme-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">ACME <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="acme_log" data-log-url="acme" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="general_syslog" data-table="acme_log" data-log-url="acme" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_acme_logs" data-table="acme_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="acme_log" data-log-url="acme" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="general_syslog" data-table="acme_log" data-log-url="acme" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_acme_logs" data-table="acme_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -300,12 +319,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-api-logs">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">API <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="apilog" data-table="api_log" data-log-url="api" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="apilog" data-table="api_log" data-log-url="api" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_api_logs" data-table="api_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="apilog" data-table="api_log" data-log-url="api" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="apilog" data-table="api_log" data-log-url="api" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_api_logs" data-table="api_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
@@ -317,12 +336,12 @@
         </div>
 
         <div role="tabpanel" class="tab-pane" id="tab-api-rl">
-          <div class="panel panel-default">
+          <div class="panel panel-xs-lg panel-default">
             <div class="panel-heading">Ratelimits <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right">
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="rllog" data-table="rl_log" data-log-url="ratelimited" data-nrows="100">+ 100</button>
-                <button class="btn btn-xs btn-default add_log_lines" data-post-process="rllog" data-table="rl_log" data-log-url="ratelimited" data-nrows="1000">+ 1000</button>
-                <button class="btn btn-xs btn-default refresh_table" data-draw="draw_rl_logs" data-table="rl_log"><?=$lang['admin']['refresh'];?></button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="rllog" data-table="rl_log" data-log-url="ratelimited" data-nrows="100">+ 100</button>
+                <button class="btn btn-xs btn-xs-lg btn-default add_log_lines" data-post-process="rllog" data-table="rl_log" data-log-url="ratelimited" data-nrows="1000">+ 1000</button>
+                <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_rl_logs" data-table="rl_log"><?=$lang['admin']['refresh'];?></button>
               </div>
             </div>
             <div class="panel-body">
diff --git a/mailcow/src/mailcow-dockerized/data/web/edit.php b/mailcow/src/mailcow-dockerized/data/web/edit.php
index 3a0bb04..30d584f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/edit.php
+++ b/mailcow/src/mailcow-dockerized/data/web/edit.php
@@ -2,19 +2,19 @@
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
 $AuthUsers = array("admin", "domainadmin", "user");
 if (!isset($_SESSION['mailcow_cc_role']) OR !in_array($_SESSION['mailcow_cc_role'], $AuthUsers)) {
-	header('Location: /');
-	exit();
+  header('Location: /');
+  exit();
 }
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
 ?>
 <div class="container">
-	<div class="row">
-		<div class="col-md-12">
-			<div class="panel panel-default">
-				<div class="panel-heading">
-					<h3 class="panel-title"><?=$lang['edit']['title'];?></h3>
-				</div>
-				<div class="panel-body">
+  <div class="row">
+    <div class="col-md-12">
+      <div class="panel panel-default">
+        <div class="panel-heading">
+          <h3 class="panel-title"><?=$lang['edit']['title'];?></h3>
+        </div>
+        <div class="panel-body">
 <?php
 if (isset($_SESSION['mailcow_cc_role'])) {
   if ($_SESSION['mailcow_cc_role'] == "admin"  || $_SESSION['mailcow_cc_role'] == "domainadmin") {
@@ -82,7 +82,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editalias" data-item="<?=htmlspecialchars($alias);?>" data-api-url='edit/alias' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editalias" data-item="<?=htmlspecialchars($alias);?>" data-api-url='edit/alias' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -106,7 +106,8 @@
         <div class="form-group">
           <label class="control-label col-sm-2" for="username_new"><?=$lang['edit']['username'];?></label>
           <div class="col-sm-10">
-            <input class="form-control" type="text" name="username_new" value="<?=htmlspecialchars($domain_admin);?>" />
+            <input class="form-control" type="text" name="username_new" value="<?=htmlspecialchars($domain_admin);?>" required onkeyup="this.value = this.value.toLowerCase();" />
+            &rdsh; <kbd>a-z - _ .</kbd>
           </div>
         </div>
         <div class="form-group">
@@ -156,7 +157,7 @@
         </div>
         <div class="form-group">
           <div class="col-sm-offset-2 col-sm-10">
-            <button class="btn btn-success" data-action="edit_selected" data-api-reload-location="/admin" data-id="editdomainadmin" data-item="<?=$domain_admin;?>" data-api-url='edit/domain-admin' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+            <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-api-reload-location="/admin" data-id="editdomainadmin" data-item="<?=$domain_admin;?>" data-api-url='edit/domain-admin' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
           </div>
         </div>
       </form>
@@ -167,7 +168,7 @@
           </div>
           <div class="col-sm-10">
             <div class="form-group">
-              <select id="da_acl" name="da_acl" size="10" multiple>
+              <select id="da_acl" name="da_acl" size="10" data-container="body" multiple>
               <?php
               $da_acls = acl('get', 'domainadmin', $domain_admin);
               foreach ($da_acls as $acl => $val):
@@ -179,7 +180,7 @@
               </select>
             </div>
             <div class="form-group">
-              <button class="btn btn-default" data-action="edit_selected" data-id="daacl" data-item="<?=htmlspecialchars($domain_admin);?>" data-api-url='edit/da-acl' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="daacl" data-item="<?=htmlspecialchars($domain_admin);?>" data-api-url='edit/da-acl' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
             </div>
           </div>
         </div>
@@ -197,14 +198,15 @@
       $result = admin('details', $admin);
       if (!empty($result)) {
       ?>
-      <h4><?=$lang['edit']['domain_admin'];?></h4>
+      <h4><?=$lang['edit']['admin'];?></h4>
       <br>
       <form class="form-horizontal" data-id="editadmin" role="form" method="post" autocomplete="off">
         <input type="hidden" value="0" name="active">
         <div class="form-group">
           <label class="control-label col-sm-2" for="username_new"><?=$lang['edit']['username'];?></label>
           <div class="col-sm-10">
-            <input class="form-control" type="text" name="username_new" value="<?=htmlspecialchars($admin);?>" />
+            <input class="form-control" type="text" name="username_new" onkeyup="this.value = this.value.toLowerCase();" required value="<?=htmlspecialchars($admin);?>" />
+            &rdsh; <kbd>a-z - _ .</kbd>
           </div>
         </div>
         <div class="form-group">
@@ -235,7 +237,7 @@
         </div>
         <div class="form-group">
           <div class="col-sm-offset-2 col-sm-10">
-            <button class="btn btn-success" data-action="edit_selected" data-api-reload-location="/admin" data-id="editadmin" data-item="<?=$admin;?>" data-api-url='edit/admin' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+            <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-api-reload-location="/admin" data-id="editadmin" data-item="<?=$admin;?>" data-api-url='edit/admin' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
           </div>
         </div>
       </form>
@@ -252,189 +254,233 @@
       !empty($_GET["domain"])) {
         $domain = $_GET["domain"];
         $result = mailbox('get', 'domain_details', $domain);
+        $quota_notification_bcc = quota_notification_bcc('get', $domain);
         $rl = ratelimit('get', 'domain', $domain);
         $rlyhosts = relayhost('get');
         if (!empty($result)) {
         ?>
-          <h4><?=$lang['edit']['domain'];?></h4>
-          <form data-id="editdomain" class="form-horizontal" role="form" method="post">
-            <input type="hidden" value="0" name="active">
-            <input type="hidden" value="0" name="backupmx">
-            <input type="hidden" value="0" name="gal">
-            <input type="hidden" value="0" name="relay_all_recipients">
-            <input type="hidden" value="0" name="relay_unknown_only">
-            <div class="form-group" data-acl="<?=$_SESSION['acl']['domain_desc'];?>">
-              <label class="control-label col-sm-2" for="description"><?=$lang['edit']['description'];?></label>
-              <div class="col-sm-10">
-                <input type="text" class="form-control" name="description" value="<?=htmlspecialchars($result['description']);?>">
-              </div>
-            </div>
-            <?php
-            if ($_SESSION['mailcow_cc_role'] == "admin") {
-            ?>
-            <div class="form-group">
-              <label class="control-label col-sm-2" for="aliases"><?=$lang['edit']['max_aliases'];?></label>
-              <div class="col-sm-10">
-                <input type="number" class="form-control" name="aliases" value="<?=intval($result['max_num_aliases_for_domain']);?>">
-              </div>
-            </div>
-            <div class="form-group">
-              <label class="control-label col-sm-2" for="mailboxes"><?=$lang['edit']['max_mailboxes'];?></label>
-              <div class="col-sm-10">
-                <input type="number" class="form-control" name="mailboxes" value="<?=intval($result['max_num_mboxes_for_domain']);?>">
-              </div>
-            </div>
-            <div class="form-group">
-                <label class="control-label col-sm-2" for="defquota"><?=$lang['edit']['mailbox_quota_def'];?></label>
+          <ul class="nav nav-tabs responsive-tabs" role="tablist">
+            <li class="active"><a data-toggle="tab" href="#dedit"><?=$lang['edit']['domain'];?></a></li>
+            <li><a data-toggle="tab" href="#dratelimit"><?=$lang['edit']['ratelimit'];?></a></li>
+            <li><a data-toggle="tab" href="#dspamfilter"><?=$lang['edit']['spam_filter'];?></a></li>
+            <li><a data-toggle="tab" href="#dqwbcc"><?=$lang['edit']['quota_warning_bcc'];?></a></li>
+          </ul>
+          <hr>
+          <div class="tab-content">
+            <div id="dedit" class="tab-pane in active">
+            <form data-id="editdomain" class="form-horizontal" role="form" method="post">
+              <input type="hidden" value="0" name="active">
+              <input type="hidden" value="0" name="backupmx">
+              <input type="hidden" value="0" name="gal">
+              <input type="hidden" value="0" name="relay_all_recipients">
+              <input type="hidden" value="0" name="relay_unknown_only">
+              <div class="form-group" data-acl="<?=$_SESSION['acl']['domain_desc'];?>">
+                <label class="control-label col-sm-2" for="description"><?=$lang['edit']['description'];?></label>
                 <div class="col-sm-10">
-                    <input type="number" class="form-control" name="defquota" value="<?=intval($result['def_quota_for_mbox'] / 1048576);?>">
+                  <input type="text" class="form-control" name="description" value="<?=htmlspecialchars($result['description']);?>">
                 </div>
-            </div>
-            <div class="form-group">
-              <label class="control-label col-sm-2" for="maxquota"><?=$lang['edit']['max_quota'];?></label>
-              <div class="col-sm-10">
-                <input type="number" class="form-control" name="maxquota" value="<?=intval($result['max_quota_for_mbox'] / 1048576);?>">
               </div>
-            </div>
-            <div class="form-group">
-              <label class="control-label col-sm-2" for="quota"><?=$lang['edit']['domain_quota'];?></label>
-              <div class="col-sm-10">
-                <input type="number" class="form-control" name="quota" value="<?=intval($result['max_quota_for_domain'] / 1048576);?>">
-              </div>
-            </div>
-            <div class="form-group">
-              <label class="control-label col-sm-2" for="quota"><?=$lang['edit']['relayhost'];?></label>
-              <div class="col-sm-10">
-                <select data-live-search="true" name="relayhost" class="form-control">
-                  <?php
-                  foreach ($rlyhosts as $rlyhost) {
-                  ?>
-                  <option value="<?=$rlyhost['id'];?>" <?=($result['relayhost'] == $rlyhost['id']) ? 'selected' : null;?>>ID <?=$rlyhost['id'];?>: <?=$rlyhost['hostname'];?> (<?=$rlyhost['username'];?>)</option>
-                  <?php
-                  }
-                  ?>
-                  <option value="" <?=($result['relayhost'] == "0") ? 'selected' : null;?>>None</option>
-                </select>
-              </div>
-            </div>
-            <div class="form-group">
-              <label class="control-label col-sm-2"><?=$lang['edit']['backup_mx_options'];?></label>
-              <div class="col-sm-10">
-                <div class="checkbox">
-                  <label><input type="checkbox" value="1" name="backupmx" <?=(isset($result['backupmx']) && $result['backupmx']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_domain'];?></label>
-                  <br>
-                  <label><input type="checkbox" value="1" name="relay_all_recipients" <?=(isset($result['relay_all_recipients']) && $result['relay_all_recipients']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_all'];?></label>
-                  <p><?=$lang['edit']['relay_all_info'];?></p>
-                  <label><input type="checkbox" value="1" name="relay_unknown_only" <?=(isset($result['relay_unknown_only']) && $result['relay_unknown_only']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_unknown_only'];?></label>
-                  <br>
-                  <p><?=$lang['edit']['relay_transport_info'];?></p>
-                  <hr style="margin:25px 0px 0px 0px">
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="relayhost"><?=$lang['edit']['relayhost'];?></label>
+                <div class="col-sm-10">
+                  <select data-acl="<?=$_SESSION['acl']['domain_relayhost'];?>" data-live-search="true" id="relayhost" name="relayhost" class="form-control">
+                    <?php
+                    foreach ($rlyhosts as $rlyhost) {
+                    ?>
+                    <option class="<?=($rlyhost['active'] == 1) ? '' : 'background: #ff4136; color: #fff';?>" value="<?=$rlyhost['id'];?>" <?=($result['relayhost'] == $rlyhost['id']) ? 'selected' : null;?>>ID <?=$rlyhost['id'];?>: <?=$rlyhost['hostname'];?> (<?=$rlyhost['username'];?>)</option>
+                    <?php
+                    }
+                    ?>
+                    <option value="" <?=($result['relayhost'] == "0") ? 'selected' : null;?>><?=$lang['edit']['none_inherit'];?></option>
+                  </select>
                 </div>
               </div>
+              <?php
+              if ($_SESSION['mailcow_cc_role'] == "admin") {
+              ?>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="aliases"><?=$lang['edit']['max_aliases'];?></label>
+                <div class="col-sm-10">
+                  <input type="number" class="form-control" name="aliases" value="<?=intval($result['max_num_aliases_for_domain']);?>">
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="mailboxes"><?=$lang['edit']['max_mailboxes'];?></label>
+                <div class="col-sm-10">
+                  <input type="number" class="form-control" name="mailboxes" value="<?=intval($result['max_num_mboxes_for_domain']);?>">
+                </div>
+              </div>
+              <div class="form-group">
+                  <label class="control-label col-sm-2" for="defquota"><?=$lang['edit']['mailbox_quota_def'];?></label>
+                  <div class="col-sm-10">
+                      <input type="number" class="form-control" name="defquota" value="<?=intval($result['def_quota_for_mbox'] / 1048576);?>">
+                  </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="maxquota"><?=$lang['edit']['max_quota'];?></label>
+                <div class="col-sm-10">
+                  <input type="number" class="form-control" name="maxquota" value="<?=intval($result['max_quota_for_mbox'] / 1048576);?>">
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="quota"><?=$lang['edit']['domain_quota'];?></label>
+                <div class="col-sm-10">
+                  <input type="number" class="form-control" name="quota" value="<?=intval($result['max_quota_for_domain'] / 1048576);?>">
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2"><?=$lang['edit']['backup_mx_options'];?></label>
+                <div class="col-sm-10">
+                  <div class="checkbox">
+                    <label><input type="checkbox" value="1" name="backupmx" <?=(isset($result['backupmx']) && $result['backupmx']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_domain'];?></label>
+                    <br>
+                    <label><input type="checkbox" value="1" name="relay_all_recipients" <?=(isset($result['relay_all_recipients']) && $result['relay_all_recipients']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_all'];?></label>
+                    <p><?=$lang['edit']['relay_all_info'];?></p>
+                    <label><input type="checkbox" value="1" name="relay_unknown_only" <?=(isset($result['relay_unknown_only']) && $result['relay_unknown_only']=="1") ? "checked" : null;?>> <?=$lang['edit']['relay_unknown_only'];?></label>
+                    <br>
+                    <p><?=$lang['edit']['relay_transport_info'];?></p>
+                    <hr style="margin:25px 0px 0px 0px">
+                  </div>
+                </div>
+              </div>
+              <?php
+              }
+              ?>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <div class="checkbox">
+                    <label><input type="checkbox" value="1" name="gal" <?=(isset($result['gal']) && $result['gal']=="1") ? "checked" : null;?>> <?=$lang['edit']['gal'];?></label>
+                    <small class="help-block"><?=$lang['edit']['gal_info'];?></small>
+                  </div>
+                </div>
+              </div>
+              <hr>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <div class="checkbox">
+                    <label><input type="checkbox" value="1" name="active" <?=(isset($result['active']) && $result['active']=="1") ? "checked" : null;?> <?=($_SESSION['mailcow_cc_role'] == "admin") ? null : "disabled";?>> <?=$lang['edit']['active'];?></label>
+                  </div>
+                </div>
+              </div>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editdomain" data-item="<?=$domain;?>" data-api-url='edit/domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+                </div>
+              </div>
+            </form>
+            <?php
+            if (!empty($dkim = dkim('details', $domain))) {
+            ?>
+            <hr>
+            <div class="row">
+              <div class="col-xs-12 col-sm-2">
+                <p>Domain: <strong><?=htmlspecialchars($result['domain_name']);?></strong> (<?=$dkim['dkim_selector'];?>._domainkey)</p>
+              </div>
+              <div class="col-xs-12 col-sm-10">
+                <pre><?=$dkim['dkim_txt'];?></pre>
+              </div>
             </div>
             <?php
             }
             ?>
-            <div class="form-group">
-              <div class="col-sm-offset-2 col-sm-10">
-                <div class="checkbox">
-                  <label><input type="checkbox" value="1" name="gal" <?=(isset($result['gal']) && $result['gal']=="1") ? "checked" : null;?>> <?=$lang['edit']['gal'];?></label>
-                  <small class="help-block"><?=$lang['edit']['gal_info'];?></small>
+            </div>
+            <div id="dratelimit" class="tab-pane">
+              <form data-id="domratelimit" class="form-inline well" method="post">
+                <div class="form-group">
+                  <label class="control-label"><?=$lang['edit']['ratelimit'];?></label>
+                  <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" autocomplete="off" class="form-control" placeholder="<?=$lang['ratelimit']['disabled']?>">
+                </div>
+                <div class="form-group">
+                  <select name="rl_frame" class="form-control">
+                    <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>><?=$lang['ratelimit']['second']?></option>
+                    <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>><?=$lang['ratelimit']['minute']?></option>
+                    <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>><?=$lang['ratelimit']['hour']?></option>
+                    <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>><?=$lang['ratelimit']['day']?></option>
+                  </select>
+                </div>
+                <div class="form-group">
+                  <button data-acl="<?=$_SESSION['acl']['ratelimit'];?>" class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="domratelimit" data-item="<?=$domain;?>" data-api-url='edit/rl-domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+                </div>
+              </form>
+            </div>
+            <div id="dspamfilter" class="tab-pane">
+              <div class="row">
+                <div class="col-sm-6">
+                  <h4><?=$lang['user']['spamfilter_wl'];?></h4>
+                  <p><?=$lang['user']['spamfilter_wl_desc'];?></p>
+                  <form class="form-inline space20" data-id="add_wl_policy_domain">
+                    <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+                      <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
+                      <span class="input-group-btn">
+                        <button class="btn btn-default" data-action="add_item" data-id="add_wl_policy_domain" data-api-url='add/domain-policy' data-api-attr='{"domain":"<?= $domain; ?>","object_list":"wl"}' href="#"><?=$lang['user']['spamfilter_table_add'];?></button>
+                      </span>
+                    </div>
+                  </form>
+                  <div class="table-responsive">
+                    <table class="table table-striped table-condensed" id="wl_policy_domain_table"></table>
+                  </div>
+                  <div class="mass-actions-user">
+                    <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+                      <a class="btn btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_wl_domain" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                      <a class="btn btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-sm btn-danger" data-action="delete_selected" data-id="policy_wl_domain" data-api-url='delete/domain-policy' href="#"><?=$lang['mailbox']['remove'];?></a>
+                      <div class="clearfix visible-xs"></div>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-sm-6">
+                  <h4><?=$lang['user']['spamfilter_bl'];?></h4>
+                  <p><?=$lang['user']['spamfilter_bl_desc'];?></p>
+                  <form class="form-inline space20" data-id="add_bl_policy_domain">
+                    <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+                      <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
+                      <span class="input-group-btn">
+                        <button class="btn btn-default" data-action="add_item" data-id="add_bl_policy_domain" data-api-url='add/domain-policy' data-api-attr='{"domain":"<?= $domain; ?>","object_list":"bl"}' href="#"><?=$lang['user']['spamfilter_table_add'];?></button>
+                      </span>
+                    </div>
+                  </form>
+                  <div class="table-responsive">
+                    <table class="table table-striped table-condensed" id="bl_policy_domain_table"></table>
+                  </div>
+                  <div class="mass-actions-user">
+                    <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+                      <a class="btn btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_bl_domain" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                      <a class="btn btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-sm btn-danger" data-action="delete_selected" data-id="policy_bl_domain" data-api-url='delete/domain-policy' href="#"><?=$lang['mailbox']['remove'];?></a></li>
+                    </div>
+                  </div>
                 </div>
               </div>
             </div>
-            <div class="form-group">
-              <div class="col-sm-offset-2 col-sm-10">
-                <div class="checkbox">
-                  <label><input type="checkbox" value="1" name="active" <?=(isset($result['active']) && $result['active']=="1") ? "checked" : null;?> <?=($_SESSION['mailcow_cc_role'] == "admin") ? null : "disabled";?>> <?=$lang['edit']['active'];?></label>
+            <div id="dqwbcc" class="tab-pane">
+              <div class="row">
+                <div class="col-sm-12">
+                  <h4><?=$lang['edit']['quota_warning_bcc'];?></h4>
+                  <p><?=$lang['edit']['quota_warning_bcc_info'];?></p>
+                  <form class="form-horizontal" data-id="quota_bcc">
+                    <input type="hidden" value="0" name="active">
+                    <div class="form-group">
+                      <label class="control-label col-sm-2" for="script_data"><?=$lang['edit']['target_address'];?>:</label>
+                      <div class="col-sm-10">
+                        <textarea spellcheck="false" autocorrect="off" autocapitalize="none" class="form-control" rows="10" id="bcc_rcpt" name="bcc_rcpt"><?=implode(PHP_EOL, (array)$quota_notification_bcc['bcc_rcpts']);?></textarea>
+                      </div>
+                    </div>
+                    <div class="form-group">
+                      <div class="col-sm-offset-2 col-sm-10">
+                        <div class="checkbox">
+                        <label><input type="checkbox" value="1" name="active" <?=($quota_notification_bcc['active']=="1") ? "checked" : "";?>> <?=$lang['edit']['active'];?></label>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="form-group">
+                      <div class="col-sm-offset-2 col-sm-10">
+                        <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="quota_bcc" data-item="quota_bcc" data-api-url='edit/quota_notification_bcc' data-api-attr='{"domain":"<?=$domain;?>"}' href="#"><?=$lang['edit']['save'];?></button>
+                      </div>
+                    </div>
+                  </form>
                 </div>
               </div>
             </div>
-            <div class="form-group">
-              <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editdomain" data-item="<?=$domain;?>" data-api-url='edit/domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
-              </div>
-            </div>
-          </form>
-          <?php
-          if (!empty($dkim = dkim('details', $domain))) {
-          ?>
-          <hr>
-          <div class="row">
-            <div class="col-xs-2">
-              <p>Domain: <strong><?=htmlspecialchars($result['domain_name']);?></strong> (<?=$dkim['dkim_selector'];?>._domainkey)</p>
-            </div>
-            <div class="col-xs-10">
-              <pre><?=$dkim['dkim_txt'];?></pre>
-            </div>
           </div>
           <?php
-          }
-          ?>
-      <hr>
-      <form data-id="domratelimit" class="form-inline well" method="post">
-        <div class="form-group">
-          <label class="control-label"><?=$lang['acl']['ratelimit'];?></label>
-          <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" autocomplete="off" class="form-control" placeholder="disabled">
-        </div>
-        <div class="form-group">
-          <select name="rl_frame" class="form-control">
-            <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>>msgs / second</option>
-            <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>>msgs / minute</option>
-            <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>>msgs / hour</option>
-            <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>>msgs / day</option>
-          </select>
-        </div>
-        <div class="form-group">
-          <button data-acl="<?=$_SESSION['acl']['ratelimit'];?>" class="btn btn-default" data-action="edit_selected" data-id="domratelimit" data-item="<?=$domain;?>" data-api-url='edit/rl-domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
-        </div>
-      </form>
-      <hr>
-      <div class="row">
-        <div class="col-sm-6">
-          <h4><?=$lang['user']['spamfilter_wl'];?></h4>
-          <p><?=$lang['user']['spamfilter_wl_desc'];?></p>
-          <div class="table-responsive">
-            <table class="table table-striped table-condensed" id="wl_policy_domain_table"></table>
-          </div>
-          <div class="mass-actions-user">
-            <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-              <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_wl_domain" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-              <a class="btn btn-sm btn-danger" data-action="delete_selected" data-id="policy_wl_domain" data-api-url='delete/domain-policy' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-            </div>
-          </div>
-          <form class="form-inline" data-id="add_wl_policy_domain">
-            <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-              <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
-              <span class="input-group-btn">
-                <button class="btn btn-default" data-action="add_item" data-id="add_wl_policy_domain" data-api-url='add/domain-policy' data-api-attr='{"domain":"<?= $domain; ?>","object_list":"wl"}' href="#"><?=$lang['user']['spamfilter_table_add'];?></button>
-              </span>
-            </div>
-          </form>
-        </div>
-        <div class="col-sm-6">
-          <h4><?=$lang['user']['spamfilter_bl'];?></h4>
-          <p><?=$lang['user']['spamfilter_bl_desc'];?></p>
-          <div class="table-responsive">
-            <table class="table table-striped table-condensed" id="bl_policy_domain_table"></table>
-          </div>
-          <div class="mass-actions-user">
-            <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-              <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_bl_domain" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-              <a class="btn btn-sm btn-danger" data-action="delete_selected" data-id="policy_bl_domain" data-api-url='delete/domain-policy' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-            </div>
-          </div>
-          <form class="form-inline" data-id="add_bl_policy_domain">
-            <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-              <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
-              <span class="input-group-btn">
-                <button class="btn btn-default" data-action="add_item" data-id="add_bl_policy_domain" data-api-url='add/domain-policy' data-api-attr='{"domain":"<?= $domain; ?>","object_list":"bl"}' href="#"><?=$lang['user']['spamfilter_table_add'];?></button>
-              </span>
-            </div>
-          </form>
-        </div>
-      </div>
-          <?php
         }
         else {
         ?>
@@ -477,7 +523,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-default" data-action="edit_selected" data-id="oauth2client" data-item="<?=$oauth2client;?>" data-api-url='edit/oauth2-client' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="oauth2client" data-item="<?=$oauth2client;?>" data-api-url='edit/oauth2-client' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
               </div>
             </div>
           </form>
@@ -523,7 +569,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editaliasdomain" data-item="<?=$alias_domain;?>" data-api-url='edit/alias-domain' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editaliasdomain" data-item="<?=$alias_domain;?>" data-api-url='edit/alias-domain' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -531,18 +577,18 @@
           <form data-id="domratelimit" class="form-inline well" method="post">
             <div class="form-group">
               <label class="control-label"><?=$lang['acl']['ratelimit'];?></label>
-              <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" autocomplete="off" class="form-control" placeholder="disabled">
+              <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" autocomplete="off" class="form-control" placeholder="<?=$lang['ratelimit']['disabled']?>">
             </div>
             <div class="form-group">
               <select name="rl_frame" class="form-control">
-                <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>>msgs / second</option>
-                <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>>msgs / minute</option>
-                <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>>msgs / hour</option>
-                <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>>msgs / day</option>
+                <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>><?=$lang['ratelimit']['second']?></option>
+                <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>><?=$lang['ratelimit']['minute']?></option>
+                <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>><?=$lang['ratelimit']['hour']?></option>
+                <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>><?=$lang['ratelimit']['day']?></option>
               </select>
             </div>
             <div class="form-group">
-              <button class="btn btn-default" data-action="edit_selected" data-id="domratelimit" data-item="<?=$alias_domain;?>" data-api-url='edit/rl-domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="domratelimit" data-item="<?=$alias_domain;?>" data-api-url='edit/rl-domain' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
             </div>
           </form>
           <?php
@@ -550,10 +596,10 @@
           ?>
           <hr>
           <div class="row">
-            <div class="col-xs-2">
+            <div class="col-xs-12 col-sm-2">
               <p>Domain: <strong><?=htmlspecialchars($result['alias_domain']);?></strong> (<?=$dkim['dkim_selector'];?>._domainkey)</p>
             </div>
-            <div class="col-xs-10">
+            <div class="col-xs-12 col-sm-10">
             <pre><?=$dkim['dkim_txt'];?></pre>
             </div>
           </div>
@@ -574,366 +620,402 @@
       $quarantine_notification = mailbox('get', 'quarantine_notification', $mailbox);
       $quarantine_category = mailbox('get', 'quarantine_category', $mailbox);
       $get_tls_policy = mailbox('get', 'tls_policy', $mailbox);
+      $rlyhosts = relayhost('get');
       if (!empty($result)) {
         ?>
-        <h4><?=$lang['edit']['mailbox'];?></h4>
-        <form class="form-horizontal" data-id="editmailbox" role="form" method="post">
-          <input type="hidden" value="default" name="sender_acl">
-          <input type="hidden" value="0" name="force_pw_update">
-          <input type="hidden" value="0" name="sogo_access">
-          <input type="hidden" value="0" name="protocol_access">
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="name"><?=$lang['edit']['full_name'];?></label>
-            <div class="col-sm-10">
-            <input type="text" class="form-control" name="name" value="<?=htmlspecialchars($result['name'], ENT_QUOTES, 'UTF-8');?>">
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="quota"><?=$lang['edit']['quota_mb'];?>
-              <br><span id="quotaBadge" class="badge">max. <?=intval($result['max_new_quota'] / 1048576)?> MiB</span>
-            </label>
-            <div class="col-sm-10">
-              <input type="number" name="quota" style="width:100%" min="0" max="<?=intval($result['max_new_quota'] / 1048576);?>" value="<?=intval($result['quota']) / 1048576;?>" class="form-control">
-              <small class="help-block">0 = ∞</small>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="sender_acl"><?=$lang['edit']['sender_acl'];?></label>
-            <div class="col-sm-10">
-              <select data-live-search="true" data-width="100%" style="width:100%" id="editSelectSenderACL" name="sender_acl" size="10" multiple>
-              <?php
-              $sender_acl_handles = mailbox('get', 'sender_acl_handles', $mailbox);
-
-              foreach ($sender_acl_handles['sender_acl_domains']['ro'] as $domain):
-                ?>
-                <option data-subtext="Admin" value="<?=htmlspecialchars($domain);?>" disabled selected><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['sender_acl_addresses']['ro'] as $alias):
-                ?>
-              <option data-subtext="Admin" disabled selected><?=htmlspecialchars($alias);?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['fixed_sender_aliases'] as $alias):
-                ?>
-                <option data-subtext="Alias" disabled selected><?=htmlspecialchars($alias);?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['sender_acl_domains']['rw'] as $domain):
-                ?>
-                <option value="<?=htmlspecialchars($domain);?>" selected><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['sender_acl_domains']['selectable'] as $domain):
-                ?>
-                <option value="<?=htmlspecialchars($domain);?>"><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['sender_acl_addresses']['rw'] as $address):
-                ?>
-                  <option selected><?=htmlspecialchars($address);?></option>
-                <?php
-              endforeach;
-
-              foreach ($sender_acl_handles['sender_acl_addresses']['selectable'] as $address):
-                ?>
-                  <option><?=htmlspecialchars($address);?></option>
-                <?php
-              endforeach;
-
-              // Generated here, but used in extended_sender_acl
-              if (!empty($sender_acl_handles['external_sender_aliases'])) {
-                $ext_sender_acl = implode(', ', $sender_acl_handles['external_sender_aliases']);
-              }
-              else {
-                $ext_sender_acl = '';
-              }
-
-              ?>
-              </select>
-              <div style="display:none" id="sender_acl_disabled"><?=$lang['edit']['sender_acl_disabled'];?></div>
-              <small class="help-block"><?=$lang['edit']['sender_acl_info'];?></small>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2"><?=$lang['user']['quarantine_notification'];?></label>
-            <div class="col-sm-10">
-            <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_notification'];?>">
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "never") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_notification"
-                data-api-url='edit/quarantine_notification'
-                data-api-attr='{"quarantine_notification":"never"}'><?=$lang['user']['never'];?></button>
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "hourly") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_notification"
-                data-api-url='edit/quarantine_notification'
-                data-api-attr='{"quarantine_notification":"hourly"}'><?=$lang['user']['hourly'];?></button>
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "daily") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_notification"
-                data-api-url='edit/quarantine_notification'
-                data-api-attr='{"quarantine_notification":"daily"}'><?=$lang['user']['daily'];?></button>
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "weekly") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_notification"
-                data-api-url='edit/quarantine_notification'
-                data-api-attr='{"quarantine_notification":"weekly"}'><?=$lang['user']['weekly'];?></button>
-            </div>
-            <p class="help-block"><small><?=$lang['user']['quarantine_notification_info'];?></small></p>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2"><?=$lang['user']['quarantine_category'];?></label>
-            <div class="col-sm-10">
-            <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_category'];?>">
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "reject") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_category"
-                data-api-url='edit/quarantine_category'
-                data-api-attr='{"quarantine_category":"reject"}'><?=$lang['user']['q_reject'];?></button>
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "add_header") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_category"
-                data-api-url='edit/quarantine_category'
-                data-api-attr='{"quarantine_category":"add_header"}'><?=$lang['user']['q_add_header'];?></button>
-              <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "all") ? "active" : null;?>"
-                data-action="edit_selected"
-                data-item="<?= htmlentities($mailbox); ?>"
-                data-id="quarantine_category"
-                data-api-url='edit/quarantine_category'
-                data-api-attr='{"quarantine_category":"all"}'><?=$lang['user']['q_all'];?></button>
-            </div>
-            <p class="help-block"><small><?=$lang['user']['quarantine_category_info'];?></small></p>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="sender_acl"><?=$lang['user']['tls_policy'];?></label>
-            <div class="col-sm-10">
-              <div class="btn-group" data-acl="<?=$_SESSION['acl']['tls_policy'];?>">
-                <button type="button" class="btn btn-sm btn-default <?=($get_tls_policy['tls_enforce_in'] == "1") ? "active" : null;?>"
-                  data-action="edit_selected"
-                  data-item="<?= htmlentities($mailbox); ?>"
-                  data-id="tls_policy"
-                  data-api-url='edit/tls_policy'
-                  data-api-attr='{"tls_enforce_in":<?=($get_tls_policy['tls_enforce_in'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_in'];?></button>
-                <button type="button" class="btn btn-sm btn-default <?=($get_tls_policy['tls_enforce_out'] == "1") ? "active" : null;?>"
-                  data-action="edit_selected"
-                  data-item="<?= htmlentities($mailbox); ?>"
-                  data-id="tls_policy"
-                  data-api-url='edit/tls_policy'
-                  data-api-attr='{"tls_enforce_out":<?=($get_tls_policy['tls_enforce_out'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_out'];?></button>
-              </div>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="password"><?=$lang['edit']['password'];?> (<a href="#" class="generate_password"><?=$lang['edit']['generate'];?></a>)</label>
-            <div class="col-sm-10">
-            <input type="password" data-pwgen-field="true" data-hibp="true" class="form-control" name="password" placeholder="<?=$lang['edit']['unchanged_if_empty'];?>" autocomplete="new-password">
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="password2"><?=$lang['edit']['password_repeat'];?></label>
-            <div class="col-sm-10">
-            <input type="password" data-pwgen-field="true" class="form-control" name="password2" autocomplete="new-password">
-            </div>
-          </div>
-          <div data-acl="<?=$_SESSION['acl']['extend_sender_acl'];?>" class="form-group">
-            <label class="control-label col-sm-2" for="extended_sender_acl"><?=$lang['edit']['extended_sender_acl'];?></label>
-            <div class="col-sm-10">
-            <input type="text" class="form-control" name="extended_sender_acl" value="<?=empty($ext_sender_acl) ? '' : $ext_sender_acl; ?>" placeholder="user1@example.com, user2@example.org, @example.com, ...">
-            <small class="help-block"><?=$lang['edit']['extended_sender_acl_info'];?></small>
-            </div>
-          </div>
-          <div class="form-group">
-            <label class="control-label col-sm-2" for="protocol_access"><?=$lang['edit']['allowed_protocols'];?></label>
-            <div class="col-sm-10">
-            <select data-acl="<?=$_SESSION['acl']['protocol_access'];?>" name="protocol_access" multiple class="form-control">
-              <option value="imap" <?=($result['attributes']['imap_access']=="1") ? 'selected' : null;?>>IMAP</option>
-              <option value="pop3" <?=($result['attributes']['pop3_access']=="1") ? 'selected' : null;?>>POP3</option>
-              <option value="smtp" <?=($result['attributes']['smtp_access']=="1") ? 'selected' : null;?>>SMTP</option>
-            </select>
-            </div>
-          </div>
-          <div hidden data-acl="<?=$_SESSION['acl']['smtp_ip_access'];?>" class="form-group">
-            <label class="control-label col-sm-2" for="allow_from_smtp"><?=$lang['edit']['allow_from_smtp'];?></label>
-            <div class="col-sm-10">
-            <input type="text" class="form-control" name="allow_from_smtp" value="<?=empty($allow_from_smtp) ? '' : $allow_from_smtp; ?>" placeholder="1.1.1.1, 10.2.0.0/24, ...">
-            <small class="help-block"><?=$lang['edit']['allow_from_smtp_info'];?></small>
-            </div>
-          </div>
-          <hr>
-          <div class="form-group">
-            <div class="col-sm-offset-2 col-sm-10">
-            <select name="active" class="form-control">
-              <option value="1" <?=($result['active']=="1") ? 'selected' : null;?>><?=$lang['edit']['active'];?></option>
-              <option value="2" <?=($result['active']=="2") ? 'selected' : null;?>><?=$lang['edit']['disable_login'];?></option>
-              <option value="0" <?=($result['active']=="0") ? 'selected' : null;?>><?=$lang['edit']['inactive'];?></option>
-            </select>
-            </div>
-          </div>
-          <div class="form-group">
-            <div class="col-sm-offset-2 col-sm-10">
-              <div class="checkbox">
-              <label><input type="checkbox" value="1" name="force_pw_update" <?=($result['attributes']['force_pw_update']=="1") ? "checked" : null;?>> <?=$lang['edit']['force_pw_update'];?></label>
-              <small class="help-block"><?=sprintf($lang['edit']['force_pw_update_info'], $UI_TEXTS['main_name']);?></small>
-              </div>
-            </div>
-          </div>
-          <?php if (getenv('SKIP_SOGO') != "y") { ?>
-          <div data-acl="<?=$_SESSION['acl']['sogo_access'];?>" class="form-group">
-            <div class="col-sm-offset-2 col-sm-10">
-              <div class="checkbox">
-              <label><input type="checkbox" value="1" name="sogo_access" <?=($result['attributes']['sogo_access']=="1") ? "checked" : null;?>> <?=$lang['edit']['sogo_access'];?></label>
-              <small class="help-block"><?=$lang['edit']['sogo_access_info'];?></small>
-              </div>
-            </div>
-          </div>
-          <?php } ?>
-          <div class="form-group">
-            <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-success" data-action="edit_selected" data-id="editmailbox" data-item="<?=htmlspecialchars($result['username']);?>" data-api-url='edit/mailbox' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
-            </div>
-          </div>
-        </form>
+        <ul class="nav nav-tabs responsive-tabs" role="tablist">
+          <li class="active"><a data-toggle="tab" href="#medit"><?=$lang['edit']['mailbox'];?></a></li>
+          <li><a data-toggle="tab" href="#mpushover"><?=$lang['edit']['pushover'];?></a></li>
+          <li><a data-toggle="tab" href="#macl"><?=$lang['edit']['acl'];?></a></li>
+          <li><a data-toggle="tab" href="#mrl"><?=$lang['edit']['ratelimit'];?></a></li>
+        </ul>
         <hr>
-        <form data-id="pushover" class="form well" method="post">
-          <input type="hidden" value="0" name="evaluate_x_prio">
-          <input type="hidden" value="0" name="only_x_prio">
-          <input type="hidden" value="0" name="active">
-          <div class="row">
-            <div class="col-sm-1">
-              <p class="help-block"><a href="https://pushover.net" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAACglBMVEUAAAAAAAEAAAAilecFGigAAAAAAAAAAAAAAAANj+c3n+Ypm+oeYI4KWI4MieAtkdQbleoJcLcjmeswmN4Rit4KgdMKUYQJKUAQSnILL0kMNlMSTngimOoNPF0hlOQBBgkNOlkRS3MHIjUhk+IPf8wKLUYsjM0AAAASTngAAAAAAAAPfckbdLIbdrYUWIgegsgce70knfEAAAAknfENOVkGHi8YaaIjnvEdgMUhkuAQSG8aca0hleQUh9YLjOM4nOEMgtMcbaYWa6YemO02ltkKhNktgLodYZEPXJEyi8kKesktfLUzj84cWYMiluckZ5YJXJYeW4Y0k9YKfs4yjs0pc6YHZaUviskLfMkqmugak+cqkNcViNcqeK4Iaq4XRmYGPmYMKDsFJTstgr0LdL0ti84CCQ4BCQ4Qgc8rlt8XjN8shcQsi8wZSGgEP2cRMEUDKkUAAAD///8dmvEamfExo/EXmPEWl/ERlvElnvEsofEjnfETl/Enn/Ezo/E4pvEvovEfm/E1pPEzpPEvofEOlfEpoPEamPEQlfEYmfE6p/EgnPEVlvEroPE3pfE2pfENk/Ern/E3pPEcmfEfmvEnnvBlufT6/P0soPAknPDd7/zs9vzo9PxBqfItofAqoPD9/f3B4/q43/mx2/l/xfZ6w/Vxv/VtvfVgt/RXtPNTsfNEq/L3+/31+v3a7fvR6vvH5fqs2vmc0/jx+P3v9/3h8fzW7PvV7PvL5/q13fmo1/mh1PiY0fiNy/aHyfZ2wfVou/Vdt/RPsPM3oeoQkuowmeAgjdgcgMQbeLrw9/3k8vy74Pm63/mX0PdYtfNNr/Ikm+4wnOchkuAVjOAfdrMVcrOdoJikAAAAcnRSTlMAIQ8IzzweFwf+/fvw8P79+/Xt7e3p6eji4d7U08y8qZyTiIWDgn53bWxqaWBKQ0JBOjUwMCkoJCEfHBkT/vz8/Pv7+vr69/b29PTy7ezm5ubm5N7e29vQ0M/Pv7+4uLW1pqaWloWDg3x7e21mUVFFRUXdPracAAAEbElEQVRIx4WUZbvaQBCFF+ru7u7u7u7u7t4mvVwSoBC0JIUCLRQolLq7u7vr/+nMLkmQyvlwyfPcd86e3ZldUqwyQ/p329J+XfutPQYOLUP+q55rFtQJRvY79+xxlZTUWbKpz7/xrrMr2+3BoNPpdLn2lJQ4HEeqLOr1d7z7XNkesQed4A848G63Oy4Gmg/6Mz542QvZbqe8C/Ig73CLYiYTrtLmT3zfqbIcAR7y4wIqH/B6M9Fo0+Ldb6sM9ph/v4ozPuz12mxRofaAAr7jCNkuoz/jNf9AGHibkBCm51fsGKvxsAGWx4H+jBcEi6V2birDpCL/9Klrd1KHbiSvPWP8V0tTnTfO03iXi57P6WNHOVUf44IFdFDRz6pV5fw8Zy5z3JVH5+R48OwxqDiGvKJIY9R+9JsCuJ5HPg74OVEMpz+nbdEPUHEWeEk6IDUnTC1l5r+f8uffc0cfxc8fS17kLso24SwUPFDA/6DE82xKDOPliJ7n/GGOOyWK9zD9CdjvOfg9Dv6AH+AX04LW9gj2i8W/APx1UbxwCAu+wPmcpgUKL/EHdvtq4uwaZwCuznPJVY5LHhED15G/isd5Hz4eKui/e/du02YoKFeD5mHzHIN/nxEDe25gQQwKorAid04CfyzwL4XutXvl1Pt1guMOwwKPkU8mYIFT8JHK+vv8prpDScUVL+j8s3lOctw1GIhbWHAS+HgKPk7xPM/4UtNAYmzizJkf6NgTb/gM8jePQLsewMdthS3g95tMpT1IhVm6v1s8fYmLeb13Odwp8Fh5KY048y/d14WUrwrb1e/X/rNp73nkD8kWS+wi/MZ4XuetG4mhKubJm3/WNEvi8SHwB56nPKjUam0LBdp9ARwupFemTYudvgN/L1+A/Ko/LGBuS8pPy+YR1fuCTWNKnUyoeUyYx2o2dyEVGmr5xTD42xzvkD16+Pb9WIIH6fmt1r3mbsTY7Bvw+n23naT8BUWh86bz6G/e259UXPUK3gfAxQDlo7Rpx3Geqb2e3wp83SGEdKpB7zvwYbzvT2n65xLwbH6YP+M9C8vA8E1wxLU8gkCbdhXGUyrMgwVrcbzLHonr78lzDvWM3q/C/HtDlXoSUIe3YkblhRPIX4E8Oo/9siLv8dRjV7SBlkdgTXvKS7nzsA/9AfeEuhKq9T8zWIDv1Sd6ETAP4D6/H/1V+1BojvruNa4SZXz4JhY84dV5MOF5agUvu5OsOo+KRpG30KalEnoeDccFlutPZYs38D5n3zcpr1/0fBhfb3DOY1z2tSAgLxWezz6zuoHhfUmOejf6blHQH/sFuJYfcMZX307ytKvRa3ifoV/586P5j+tICtS77BuJxzxYAPZsntX8k3eSIhlajK4p8b7iefCEKs03kD/I2LnxL9ovH+43y4fAv1YrI/mzDBsavAX/UppfzVOrZT/ydxk6lJ047MfLfVbcb6hS9ZEzWxekKQ5WrtPqZg3rV6tWrX6Tle3KQZj/q6KxQnmDoXwFY0VSrN9e8FRXBCTAvwAAAABJRU5ErkJggg==" class="img img-fluid"></a></p>
-            </div>
-            <div class="col-sm-10">
-              <p class="help-block"><?=sprintf($lang['edit']['pushover_info'], $mailbox);?></p>
-              <p class="help-block"><?=$lang['edit']['pushover_vars'];?>: <code>{SUBJECT}</code>, <code>{SENDER}</code></p>
+        <div class="tab-content">
+          <div id="medit" class="tab-pane in active">
+            <form class="form-horizontal" data-id="editmailbox" role="form" method="post">
+              <input type="hidden" value="default" name="sender_acl">
+              <input type="hidden" value="0" name="force_pw_update">
+              <input type="hidden" value="0" name="sogo_access">
+              <input type="hidden" value="0" name="protocol_access">
               <div class="form-group">
-                <div class="row">
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="token">API Token/Key (Application)</label>
-                      <input type="text" class="form-control" name="token" maxlength="30" value="<?=$pushover_data['token'];?>" required>
-                    </div>
+                <label class="control-label col-sm-2" for="name"><?=$lang['edit']['full_name'];?></label>
+                <div class="col-sm-10">
+                <input type="text" class="form-control" name="name" value="<?=htmlspecialchars($result['name'], ENT_QUOTES, 'UTF-8');?>">
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="quota"><?=$lang['edit']['quota_mb'];?>
+                  <br><span id="quotaBadge" class="badge">max. <?=intval($result['max_new_quota'] / 1048576)?> MiB</span>
+                </label>
+                <div class="col-sm-10">
+                  <input type="number" name="quota" style="width:100%" min="0" max="<?=intval($result['max_new_quota'] / 1048576);?>" value="<?=intval($result['quota']) / 1048576;?>" class="form-control">
+                  <small class="help-block">0 = ∞</small>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="sender_acl"><?=$lang['edit']['sender_acl'];?></label>
+                <div class="col-sm-10">
+                  <select data-live-search="true" data-width="100%" style="width:100%" id="editSelectSenderACL" name="sender_acl" size="10" multiple>
+                  <?php
+                  $sender_acl_handles = mailbox('get', 'sender_acl_handles', $mailbox);
+
+                  foreach ($sender_acl_handles['sender_acl_domains']['ro'] as $domain):
+                    ?>
+                    <option data-subtext="Admin" value="<?=htmlspecialchars($domain);?>" disabled selected><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['sender_acl_addresses']['ro'] as $alias):
+                    ?>
+                  <option data-subtext="Admin" disabled selected><?=htmlspecialchars($alias);?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['fixed_sender_aliases'] as $alias):
+                    ?>
+                    <option data-subtext="Alias" disabled selected><?=htmlspecialchars($alias);?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['sender_acl_domains']['rw'] as $domain):
+                    ?>
+                    <option value="<?=htmlspecialchars($domain);?>" selected><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['sender_acl_domains']['selectable'] as $domain):
+                    ?>
+                    <option value="<?=htmlspecialchars($domain);?>"><?=htmlspecialchars(sprintf($lang['edit']['dont_check_sender_acl'], $domain));?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['sender_acl_addresses']['rw'] as $address):
+                    ?>
+                      <option selected><?=htmlspecialchars($address);?></option>
+                    <?php
+                  endforeach;
+
+                  foreach ($sender_acl_handles['sender_acl_addresses']['selectable'] as $address):
+                    ?>
+                      <option><?=htmlspecialchars($address);?></option>
+                    <?php
+                  endforeach;
+
+                  // Generated here, but used in extended_sender_acl
+                  if (!empty($sender_acl_handles['external_sender_aliases'])) {
+                    $ext_sender_acl = implode(', ', $sender_acl_handles['external_sender_aliases']);
+                  }
+                  else {
+                    $ext_sender_acl = '';
+                  }
+
+                  ?>
+                  </select>
+                  <div id="sender_acl_disabled"><i class="bi bi-shield-exclamation"></i> <?=$lang['edit']['sender_acl_disabled'];?></div>
+                  <small class="help-block"><?=$lang['edit']['sender_acl_info'];?></small>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="relayhost"><?=$lang['edit']['relayhost'];?></label>
+                <div class="col-sm-10">
+                  <select data-acl="<?=$_SESSION['acl']['mailbox_relayhost'];?>" data-live-search="true" id="relayhost" name="relayhost" class="form-control space20">
+                    <?php
+                    foreach ($rlyhosts as $rlyhost) {
+                    ?>
+                        <option style="<?=($rlyhost['active'] == 1) ? '' : 'background: #ff4136; color: #fff';?>" value="<?=$rlyhost['id'];?>" <?=($result['attributes']['relayhost'] == $rlyhost['id']) ? 'selected' : null;?>>ID <?=$rlyhost['id'];?>: <?=$rlyhost['hostname'];?> (<?=$rlyhost['username'];?>)</option>
+                    <?php
+                    }
+                    ?>
+                    <option value="" <?=($result['attributes']['relayhost'] == "0" || empty($result['attributes']['relayhost'])) ? 'selected' : null;?>><?=$lang['edit']['none_inherit'];?></option>
+                  </select>
+                  <p class="visible-xs" style="margin: 0;padding: 0">&nbsp;</p>
+                  <small class="help-block"><?=$lang['edit']['mailbox_relayhost_info'];?></small>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2"><?=$lang['user']['quarantine_notification'];?></label>
+                <div class="col-sm-10">
+                <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_notification'];?>">
+                  <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "never") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_notification"
+                    data-api-url='edit/quarantine_notification'
+                    data-api-attr='{"quarantine_notification":"never"}'><?=$lang['user']['never'];?></button>
+                  <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "hourly") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_notification"
+                    data-api-url='edit/quarantine_notification'
+                    data-api-attr='{"quarantine_notification":"hourly"}'><?=$lang['user']['hourly'];?></button>
+                  <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "daily") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_notification"
+                    data-api-url='edit/quarantine_notification'
+                    data-api-attr='{"quarantine_notification":"daily"}'><?=$lang['user']['daily'];?></button>
+                  <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "weekly") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_notification"
+                    data-api-url='edit/quarantine_notification'
+                    data-api-attr='{"quarantine_notification":"weekly"}'><?=$lang['user']['weekly'];?></button>
+                    <div class="clearfix visible-xs"></div>
+                </div>
+                <p class="help-block"><small><?=$lang['user']['quarantine_notification_info'];?></small></p>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2"><?=$lang['user']['quarantine_category'];?></label>
+                <div class="col-sm-10">
+                <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_category'];?>">
+                  <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "reject") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_category"
+                    data-api-url='edit/quarantine_category'
+                    data-api-attr='{"quarantine_category":"reject"}'><?=$lang['user']['q_reject'];?></button>
+                  <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "add_header") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_category"
+                    data-api-url='edit/quarantine_category'
+                    data-api-attr='{"quarantine_category":"add_header"}'><?=$lang['user']['q_add_header'];?></button>
+                  <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "all") ? "active" : null;?>"
+                    data-action="edit_selected"
+                    data-item="<?= htmlentities($mailbox); ?>"
+                    data-id="quarantine_category"
+                    data-api-url='edit/quarantine_category'
+                    data-api-attr='{"quarantine_category":"all"}'><?=$lang['user']['q_all'];?></button>
+                    <div class="clearfix visible-xs"></div>
+                </div>
+                <p class="help-block"><small><?=$lang['user']['quarantine_category_info'];?></small></p>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="sender_acl"><?=$lang['user']['tls_policy'];?></label>
+                <div class="col-sm-10">
+                  <div class="btn-group" data-acl="<?=$_SESSION['acl']['tls_policy'];?>">
+                    <button type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tls_policy['tls_enforce_in'] == "1") ? "active" : null;?>"
+                      data-action="edit_selected"
+                      data-item="<?= htmlentities($mailbox); ?>"
+                      data-id="tls_policy"
+                      data-api-url='edit/tls_policy'
+                      data-api-attr='{"tls_enforce_in":<?=($get_tls_policy['tls_enforce_in'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_in'];?></button>
+                    <button type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tls_policy['tls_enforce_out'] == "1") ? "active" : null;?>"
+                      data-action="edit_selected"
+                      data-item="<?= htmlentities($mailbox); ?>"
+                      data-id="tls_policy"
+                      data-api-url='edit/tls_policy'
+                      data-api-attr='{"tls_enforce_out":<?=($get_tls_policy['tls_enforce_out'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_out'];?></button>
+                      <div class="clearfix visible-xs"></div>
                   </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="key">User/Group Key</label>
-                      <input type="text" class="form-control" name="key" maxlength="30" value="<?=$pushover_data['key'];?>" required>
-                    </div>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="password"><?=$lang['edit']['password'];?> (<a href="#" class="generate_password"><?=$lang['edit']['generate'];?></a>)</label>
+                <div class="col-sm-10">
+                <input type="password" data-pwgen-field="true" data-hibp="true" class="form-control" name="password" placeholder="<?=$lang['edit']['unchanged_if_empty'];?>" autocomplete="new-password">
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="password2"><?=$lang['edit']['password_repeat'];?></label>
+                <div class="col-sm-10">
+                <input type="password" data-pwgen-field="true" class="form-control" name="password2" autocomplete="new-password">
+                </div>
+              </div>
+              <div data-acl="<?=$_SESSION['acl']['extend_sender_acl'];?>" class="form-group">
+                <label class="control-label col-sm-2" for="extended_sender_acl"><?=$lang['edit']['extended_sender_acl'];?></label>
+                <div class="col-sm-10">
+                <input type="text" class="form-control" name="extended_sender_acl" value="<?=empty($ext_sender_acl) ? '' : $ext_sender_acl; ?>" placeholder="user1@example.com, user2@example.org, @example.com, ...">
+                <small class="help-block"><?=$lang['edit']['extended_sender_acl_info'];?></small>
+                </div>
+              </div>
+              <div class="form-group">
+                <label class="control-label col-sm-2" for="protocol_access"><?=$lang['edit']['allowed_protocols'];?></label>
+                <div class="col-sm-10">
+                <select data-acl="<?=$_SESSION['acl']['protocol_access'];?>" name="protocol_access" multiple class="form-control">
+                  <option value="imap" <?=($result['attributes']['imap_access']=="1") ? 'selected' : null;?>>IMAP</option>
+                  <option value="pop3" <?=($result['attributes']['pop3_access']=="1") ? 'selected' : null;?>>POP3</option>
+                  <option value="smtp" <?=($result['attributes']['smtp_access']=="1") ? 'selected' : null;?>>SMTP</option>
+                </select>
+                </div>
+              </div>
+              <div hidden data-acl="<?=$_SESSION['acl']['smtp_ip_access'];?>" class="form-group">
+                <label class="control-label col-sm-2" for="allow_from_smtp"><?=$lang['edit']['allow_from_smtp'];?></label>
+                <div class="col-sm-10">
+                <input type="text" class="form-control" name="allow_from_smtp" value="<?=empty($allow_from_smtp) ? '' : $allow_from_smtp; ?>" placeholder="1.1.1.1, 10.2.0.0/24, ...">
+                <small class="help-block"><?=$lang['edit']['allow_from_smtp_info'];?></small>
+                </div>
+              </div>
+              <hr>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                <select name="active" class="form-control">
+                  <option value="1" <?=($result['active']=="1") ? 'selected' : null;?>><?=$lang['edit']['active'];?></option>
+                  <option value="2" <?=($result['active']=="2") ? 'selected' : null;?>><?=$lang['edit']['disable_login'];?></option>
+                  <option value="0" <?=($result['active']=="0") ? 'selected' : null;?>><?=$lang['edit']['inactive'];?></option>
+                </select>
+                </div>
+              </div>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <div class="checkbox">
+                  <label><input type="checkbox" value="1" name="force_pw_update" <?=($result['attributes']['force_pw_update']=="1") ? "checked" : null;?>> <?=$lang['edit']['force_pw_update'];?></label>
+                  <small class="help-block"><?=sprintf($lang['edit']['force_pw_update_info'], $UI_TEXTS['main_name']);?></small>
                   </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="title"><?=$lang['edit']['pushover_title'];?></label>
-                      <input type="text" class="form-control" name="title" value="<?=$pushover_data['title'];?>" placeholder="Mail">
-                    </div>
+                </div>
+              </div>
+              <?php if (getenv('SKIP_SOGO') != "y") { ?>
+              <div data-acl="<?=$_SESSION['acl']['sogo_access'];?>" class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <div class="checkbox">
+                  <label><input type="checkbox" value="1" name="sogo_access" <?=($result['attributes']['sogo_access']=="1") ? "checked" : null;?>> <?=$lang['edit']['sogo_access'];?></label>
+                  <small class="help-block"><?=$lang['edit']['sogo_access_info'];?></small>
                   </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="text"><?=$lang['edit']['pushover_text'];?></label>
-                      <input type="text" class="form-control" name="text" value="<?=$pushover_data['text'];?>" placeholder="You've got mail 📧">
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <div class="form-group">
-                      <label for="text"><?=$lang['edit']['pushover_sender_array'];?></label>
-                      <input type="text" class="form-control" name="senders" value="<?=$pushover_data['senders'];?>" placeholder="sender1@example.com, sender2@example.com">
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <div class="checkbox">
-                    <label><input type="checkbox" value="1" name="active" <?=($pushover_data['active']=="1") ? "checked" : null;?>> <?=$lang['edit']['active'];?></label>
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <legend style="cursor:pointer;margin-top:10px" data-target="#po_advanced" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-                      <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['edit']['advanced_settings'];?>
-                    </legend>
-                  </div>
-                  <div class="col-sm-12">
-                    <div id="po_advanced" class="collapse">
-                      <div class="form-group">
-                        <label for="text"><?=$lang['edit']['pushover_sender_regex'];?></label>
-                        <input type="text" class="form-control" name="senders_regex" value="<?=$pushover_data['senders_regex'];?>" placeholder="/(.*@example\.org$|^foo@example\.com$)/i" regex="true">
-                        <div class="checkbox">
-                          <label><input type="checkbox" value="1" name="evaluate_x_prio" <?=($pushover_data['attributes']['evaluate_x_prio']=="1") ? "checked" : null;?>> <?=$lang['edit']['pushover_evaluate_x_prio'];?></label>
+                </div>
+              </div>
+              <?php } ?>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10">
+                  <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editmailbox" data-item="<?=htmlspecialchars($result['username']);?>" data-api-url='edit/mailbox' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                </div>
+              </div>
+            </form>
+          </div>
+          <div id="mpushover" class="tab-pane">
+            <form data-id="pushover" class="form well" method="post">
+              <input type="hidden" value="0" name="evaluate_x_prio">
+              <input type="hidden" value="0" name="only_x_prio">
+              <input type="hidden" value="0" name="active">
+              <div class="row">
+                <div class="col-sm-1">
+                  <p class="help-block"><a href="https://pushover.net" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAACglBMVEUAAAAAAAEAAAAilecFGigAAAAAAAAAAAAAAAANj+c3n+Ypm+oeYI4KWI4MieAtkdQbleoJcLcjmeswmN4Rit4KgdMKUYQJKUAQSnILL0kMNlMSTngimOoNPF0hlOQBBgkNOlkRS3MHIjUhk+IPf8wKLUYsjM0AAAASTngAAAAAAAAPfckbdLIbdrYUWIgegsgce70knfEAAAAknfENOVkGHi8YaaIjnvEdgMUhkuAQSG8aca0hleQUh9YLjOM4nOEMgtMcbaYWa6YemO02ltkKhNktgLodYZEPXJEyi8kKesktfLUzj84cWYMiluckZ5YJXJYeW4Y0k9YKfs4yjs0pc6YHZaUviskLfMkqmugak+cqkNcViNcqeK4Iaq4XRmYGPmYMKDsFJTstgr0LdL0ti84CCQ4BCQ4Qgc8rlt8XjN8shcQsi8wZSGgEP2cRMEUDKkUAAAD///8dmvEamfExo/EXmPEWl/ERlvElnvEsofEjnfETl/Enn/Ezo/E4pvEvovEfm/E1pPEzpPEvofEOlfEpoPEamPEQlfEYmfE6p/EgnPEVlvEroPE3pfE2pfENk/Ern/E3pPEcmfEfmvEnnvBlufT6/P0soPAknPDd7/zs9vzo9PxBqfItofAqoPD9/f3B4/q43/mx2/l/xfZ6w/Vxv/VtvfVgt/RXtPNTsfNEq/L3+/31+v3a7fvR6vvH5fqs2vmc0/jx+P3v9/3h8fzW7PvV7PvL5/q13fmo1/mh1PiY0fiNy/aHyfZ2wfVou/Vdt/RPsPM3oeoQkuowmeAgjdgcgMQbeLrw9/3k8vy74Pm63/mX0PdYtfNNr/Ikm+4wnOchkuAVjOAfdrMVcrOdoJikAAAAcnRSTlMAIQ8IzzweFwf+/fvw8P79+/Xt7e3p6eji4d7U08y8qZyTiIWDgn53bWxqaWBKQ0JBOjUwMCkoJCEfHBkT/vz8/Pv7+vr69/b29PTy7ezm5ubm5N7e29vQ0M/Pv7+4uLW1pqaWloWDg3x7e21mUVFFRUXdPracAAAEbElEQVRIx4WUZbvaQBCFF+ru7u7u7u7u7t4mvVwSoBC0JIUCLRQolLq7u7vr/+nMLkmQyvlwyfPcd86e3ZldUqwyQ/p329J+XfutPQYOLUP+q55rFtQJRvY79+xxlZTUWbKpz7/xrrMr2+3BoNPpdLn2lJQ4HEeqLOr1d7z7XNkesQed4A848G63Oy4Gmg/6Mz542QvZbqe8C/Ig73CLYiYTrtLmT3zfqbIcAR7y4wIqH/B6M9Fo0+Ldb6sM9ph/v4ozPuz12mxRofaAAr7jCNkuoz/jNf9AGHibkBCm51fsGKvxsAGWx4H+jBcEi6V2birDpCL/9Klrd1KHbiSvPWP8V0tTnTfO03iXi57P6WNHOVUf44IFdFDRz6pV5fw8Zy5z3JVH5+R48OwxqDiGvKJIY9R+9JsCuJ5HPg74OVEMpz+nbdEPUHEWeEk6IDUnTC1l5r+f8uffc0cfxc8fS17kLso24SwUPFDA/6DE82xKDOPliJ7n/GGOOyWK9zD9CdjvOfg9Dv6AH+AX04LW9gj2i8W/APx1UbxwCAu+wPmcpgUKL/EHdvtq4uwaZwCuznPJVY5LHhED15G/isd5Hz4eKui/e/du02YoKFeD5mHzHIN/nxEDe25gQQwKorAid04CfyzwL4XutXvl1Pt1guMOwwKPkU8mYIFT8JHK+vv8prpDScUVL+j8s3lOctw1GIhbWHAS+HgKPk7xPM/4UtNAYmzizJkf6NgTb/gM8jePQLsewMdthS3g95tMpT1IhVm6v1s8fYmLeb13Odwp8Fh5KY048y/d14WUrwrb1e/X/rNp73nkD8kWS+wi/MZ4XuetG4mhKubJm3/WNEvi8SHwB56nPKjUam0LBdp9ARwupFemTYudvgN/L1+A/Ko/LGBuS8pPy+YR1fuCTWNKnUyoeUyYx2o2dyEVGmr5xTD42xzvkD16+Pb9WIIH6fmt1r3mbsTY7Bvw+n23naT8BUWh86bz6G/e259UXPUK3gfAxQDlo7Rpx3Geqb2e3wp83SGEdKpB7zvwYbzvT2n65xLwbH6YP+M9C8vA8E1wxLU8gkCbdhXGUyrMgwVrcbzLHonr78lzDvWM3q/C/HtDlXoSUIe3YkblhRPIX4E8Oo/9siLv8dRjV7SBlkdgTXvKS7nzsA/9AfeEuhKq9T8zWIDv1Sd6ETAP4D6/H/1V+1BojvruNa4SZXz4JhY84dV5MOF5agUvu5OsOo+KRpG30KalEnoeDccFlutPZYs38D5n3zcpr1/0fBhfb3DOY1z2tSAgLxWezz6zuoHhfUmOejf6blHQH/sFuJYfcMZX307ytKvRa3ifoV/586P5j+tICtS77BuJxzxYAPZsntX8k3eSIhlajK4p8b7iefCEKs03kD/I2LnxL9ovH+43y4fAv1YrI/mzDBsavAX/UppfzVOrZT/ydxk6lJ047MfLfVbcb6hS9ZEzWxekKQ5WrtPqZg3rV6tWrX6Tle3KQZj/q6KxQnmDoXwFY0VSrN9e8FRXBCTAvwAAAABJRU5ErkJggg==" class="img img-fluid"></a></p>
+                </div>
+                <div class="col-sm-10">
+                  <p class="help-block"><?=sprintf($lang['edit']['pushover_info'], $mailbox);?></p>
+                  <p class="help-block"><?=$lang['edit']['pushover_vars'];?>: <code>{SUBJECT}</code>, <code>{SENDER}</code></p>
+                  <div class="form-group">
+                    <div class="row">
+                      <div class="col-sm-6">
+                        <div class="form-group">
+                          <label for="token">API Token/Key (Application)</label>
+                          <input type="text" class="form-control" name="token" maxlength="30" value="<?=$pushover_data['token'];?>" required>
                         </div>
+                      </div>
+                      <div class="col-sm-6">
+                        <div class="form-group">
+                          <label for="key">User/Group Key</label>
+                          <input type="text" class="form-control" name="key" maxlength="30" value="<?=$pushover_data['key'];?>" required>
+                        </div>
+                      </div>
+                      <div class="col-sm-6">
+                        <div class="form-group">
+                          <label for="title"><?=$lang['edit']['pushover_title'];?></label>
+                          <input type="text" class="form-control" name="title" value="<?=$pushover_data['title'];?>" placeholder="Mail">
+                        </div>
+                      </div>
+                      <div class="col-sm-6">
+                        <div class="form-group">
+                          <label for="text"><?=$lang['edit']['pushover_text'];?></label>
+                          <input type="text" class="form-control" name="text" value="<?=$pushover_data['text'];?>" placeholder="You've got mail 📧">
+                        </div>
+                      </div>
+                      <div class="col-sm-12">
+                        <div class="form-group">
+                          <label for="text"><?=$lang['edit']['pushover_sender_array'];?></label>
+                          <input type="text" class="form-control" name="senders" value="<?=$pushover_data['senders'];?>" placeholder="sender1@example.com, sender2@example.com">
+                        </div>
+                      </div>
+                      <div class="col-sm-12">
                         <div class="checkbox">
-                          <label><input type="checkbox" value="1" name="only_x_prio" <?=($pushover_data['attributes']['only_x_prio']=="1") ? "checked" : null;?>> <?=$lang['edit']['pushover_only_x_prio'];?></label>
+                        <label><input type="checkbox" value="1" name="active" <?=($pushover_data['active']=="1") ? "checked" : null;?>> <?=$lang['edit']['active'];?></label>
+                        </div>
+                      </div>
+                      <div class="col-sm-12">
+                        <legend style="cursor:pointer;margin-top:10px" data-target="#po_advanced" unselectable="on" data-toggle="collapse">
+                          <i class="bi bi-plus"></i> <?=$lang['edit']['advanced_settings'];?>
+                        </legend>
+                      </div>
+                      <div class="col-sm-12">
+                        <div id="po_advanced" class="collapse">
+                          <div class="form-group">
+                            <label for="text"><?=$lang['edit']['pushover_sender_regex'];?></label>
+                            <input type="text" class="form-control" name="senders_regex" value="<?=$pushover_data['senders_regex'];?>" placeholder="/(.*@example\.org$|^foo@example\.com$)/i" regex="true">
+                            <div class="checkbox">
+                              <label><input type="checkbox" value="1" name="evaluate_x_prio" <?=($pushover_data['attributes']['evaluate_x_prio']=="1") ? "checked" : null;?>> <?=$lang['edit']['pushover_evaluate_x_prio'];?></label>
+                            </div>
+                            <div class="checkbox">
+                              <label><input type="checkbox" value="1" name="only_x_prio" <?=($pushover_data['attributes']['only_x_prio']=="1") ? "checked" : null;?>> <?=$lang['edit']['pushover_only_x_prio'];?></label>
+                            </div>
+                          </div>
                         </div>
                       </div>
                     </div>
                   </div>
+                  <div class="btn-group" data-acl="<?=$_SESSION['acl']['pushover'];?>">
+                      <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="pushover" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></a>
+                      <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="pushover-test" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover-test' data-api-attr='{}' href="#"><i class="bi bi-check-lg"></i> <?=$lang['edit']['pushover_verify'];?></a>
+                      <div class="clearfix visible-xs"></div>
+                      <a id="pushover_delete" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" data-action="edit_selected" data-id="pushover-delete" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover' data-api-attr='{"delete":"true"}' href="#"><i class="bi bi-trash"></i> <?=$lang['edit']['remove'];?></a>
+                  </div>
                 </div>
               </div>
-              <div class="btn-group" data-acl="<?=$_SESSION['acl']['pushover'];?>">
-                  <a class="btn btn-sm btn-default" data-action="edit_selected" data-id="pushover" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></a>
-                  <a class="btn btn-sm btn-default" data-action="edit_selected" data-id="pushover-test" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover-test' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['edit']['pushover_verify'];?></a>
-                  <a id="pushover_delete" class="btn btn-sm btn-danger" data-action="edit_selected" data-id="pushover-delete" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/pushover' data-api-attr='{"delete":"true"}' href="#"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span> <?=$lang['edit']['remove'];?></a>
-              </div>
-            </div>
+            </form>
           </div>
-        </form>
-        <hr>
-        <form data-id="mboxratelimit" class="form-inline well" method="post">
-          <div class="row">
-            <div class="col-sm-1">
-              <p class="help-block"><?=$lang['acl']['ratelimit'];?></p>
-            </div>
-            <div class="col-sm-10">
-              <div class="form-group">
-                <input name="rl_value" type="number" autocomplete="off" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="disabled">
+          <div id="macl" class="tab-pane">
+            <form data-id="useracl" class="form-inline well" method="post">
+              <div class="row">
+                <div class="col-sm-1">
+                  <p class="help-block">ACL</p>
+                </div>
+                <div class="col-sm-10">
+                  <div class="form-group">
+                    <select id="user_acl" name="user_acl" size="10" multiple>
+                    <?php
+                    $user_acls = acl('get', 'user', $mailbox);
+                    foreach ($user_acls as $acl => $val):
+                      ?>
+                      <option value="<?=$acl;?>" <?=($val == 1) ? 'selected' : null;?>><?=$lang['acl'][$acl];?></option>
+                      <?php
+                    endforeach;
+                    ?>
+                    </select>
+                  </div>
+                  <div class="form-group">
+                    <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="useracl" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/user-acl' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                  </div>
+                </div>
               </div>
-              <div class="form-group">
-                <select name="rl_frame" class="form-control">
-                  <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>>msgs / second</option>
-                  <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>>msgs / minute</option>
-                  <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>>msgs / hour</option>
-                  <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>>msgs / day</option>
-                </select>
-              </div>
-              <div class="form-group">
-                <button class="btn btn-default" data-action="edit_selected" data-id="mboxratelimit" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/rl-mbox' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
-              </div>
-              <p class="help-block"><?=$lang['edit']['mbox_rl_info'];?></p>
-            </div>
+            </form>
           </div>
-        </form>
-        <form data-id="useracl" class="form-inline well" method="post">
-          <div class="row">
-            <div class="col-sm-1">
-              <p class="help-block">ACL</p>
-            </div>
-            <div class="col-sm-10">
-              <div class="form-group">
-                <select id="user_acl" name="user_acl" size="10" multiple>
-                <?php
-                $user_acls = acl('get', 'user', $mailbox);
-                foreach ($user_acls as $acl => $val):
-                  ?>
-                  <option value="<?=$acl;?>" <?=($val == 1) ? 'selected' : null;?>><?=$lang['acl'][$acl];?></option>
-                  <?php
-                endforeach;
-                ?>
-                </select>
+          <div id="mrl" class="tab-pane">
+            <form data-id="mboxratelimit" class="form-inline well" method="post">
+              <div class="row">
+                <div class="col-sm-1">
+                  <p class="help-block"><?=$lang['acl']['ratelimit'];?></p>
+                </div>
+                <div class="col-sm-10">
+                  <div class="form-group">
+                    <input name="rl_value" type="number" autocomplete="off" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="<?=$lang['ratelimit']['disabled']?>">
+                  </div>
+                  <div class="form-group">
+                    <select name="rl_frame" class="form-control">
+                      <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>><?=$lang['ratelimit']['second']?></option>
+                      <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>><?=$lang['ratelimit']['minute']?></option>
+                      <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>><?=$lang['ratelimit']['hour']?></option>
+                      <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>><?=$lang['ratelimit']['day']?></option>
+                    </select>
+                  </div>
+                  <div class="form-group">
+                    <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="mboxratelimit" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/rl-mbox' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                  </div>
+                  <p class="help-block"><?=$lang['edit']['mbox_rl_info'];?></p>
+                </div>
               </div>
-              <div class="form-group">
-                <button class="btn btn-default" data-action="edit_selected" data-id="useracl" data-item="<?=htmlspecialchars($mailbox);?>" data-api-url='edit/user-acl' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
-              </div>
-            </div>
+            </form>
           </div>
-        </form>
+        </div>
       <?php
       }
     }
@@ -973,7 +1055,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editrelayhost" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/relayhost' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editrelayhost" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/relayhost' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -993,6 +1075,7 @@
           <h4><?=$lang['edit']['resource'];?></h4>
           <form class="form-horizontal" role="form" method="post" data-id="edittransport">
             <input type="hidden" value="0" name="active">
+            <input type="hidden" value="0" name="is_mx_based">
             <div class="form-group">
               <label class="control-label col-sm-2" for="destination"><?=$lang['add']['destination'];?></label>
               <div class="col-sm-10">
@@ -1020,13 +1103,20 @@
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
                 <div class="checkbox">
+                <label><input type="checkbox" value="1" name="is_mx_based" <?=($result['is_mx_based']=="1") ? "checked" : null;?>> <?=$lang['edit']['lookup_mx'];?></label>
+                </div>
+              </div>
+            </div>
+            <div class="form-group">
+              <div class="col-sm-offset-2 col-sm-10">
+                <div class="checkbox">
                 <label><input type="checkbox" value="1" name="active" <?=($result['active']=="1") ? "checked" : null;?>> <?=$lang['edit']['active'];?></label>
                 </div>
               </div>
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="edittransport" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/transport' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="edittransport" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/transport' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1086,7 +1176,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editresource" data-item="<?=htmlspecialchars($result['name']);?>" data-api-url='edit/resource' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editresource" data-item="<?=htmlspecialchars($result['name']);?>" data-api-url='edit/resource' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1132,7 +1222,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editbcc" data-item="<?=$bcc;?>" data-api-url='edit/bcc' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editbcc" data-item="<?=$bcc;?>" data-api-url='edit/bcc' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1181,7 +1271,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="edit_recipient_map" data-item="<?=$map;?>" data-api-url='edit/recipient_map' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="edit_recipient_map" data-item="<?=$map;?>" data-api-url='edit/recipient_map' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1242,7 +1332,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="edit_tls_policy_maps" data-item="<?=$map;?>" data-api-url='edit/tls-policy-map' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="edit_tls_policy_maps" data-item="<?=$map;?>" data-api-url='edit/tls-policy-map' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1410,7 +1500,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editsyncjob" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/syncjob' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editsyncjob" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/syncjob' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1461,7 +1551,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editfilter" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/filter' data-api-attr='{}' href="#"><?=$lang['edit']['validate_save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editfilter" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/filter' data-api-attr='{}' href="#"><?=$lang['edit']['validate_save'];?></button>
               </div>
             </div>
           </form>
@@ -1509,7 +1599,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-success" data-action="edit_selected" data-id="editapp" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/app-passwd' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="editapp" data-item="<?=htmlspecialchars($result['id']);?>" data-api-url='edit/app-passwd' data-api-attr='{}' href="#"><?=$lang['edit']['save'];?></button>
               </div>
             </div>
           </form>
@@ -1525,14 +1615,14 @@
 }
 else {
 ?>
-	<div class="alert alert-danger" role="alert"><?=$lang['danger']['access_denied'];?></div>
+  <div class="alert alert-danger" role="alert"><?=$lang['danger']['access_denied'];?></div>
 <?php
 }
 ?>
-				</div>
-			</div>
-		</div>
-	</div>
+        </div>
+      </div>
+    </div>
+  </div>
 <a href="<?=$_SESSION['return_to'];?>">&#8592; <?=$lang['edit']['previous'];?></a>
 </div> <!-- /container -->
 <script type='text/javascript'>
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/PTSans.txt b/mailcow/src/mailcow-dockerized/data/web/fonts/PTSans.txt
deleted file mode 100644
index 1e09546..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/PTSans.txt
+++ /dev/null
@@ -1,94 +0,0 @@
-﻿Copyright (c) 2010, ParaType Ltd. (http://www.paratype.com/public),
-with Reserved Font Names "PT Sans" and "ParaType".
-
-This Font Software is licensed under the SIL Open Font License, Version 1.1.
-This license is copied below, and is also available with a FAQ at:
-http://scripts.sil.org/OFL
-
-
------------------------------------------------------------
-SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
------------------------------------------------------------
-
-PREAMBLE
-The goals of the Open Font License (OFL) are to stimulate worldwide
-development of collaborative font projects, to support the font creation
-efforts of academic and linguistic communities, and to provide a free and
-open framework in which fonts may be shared and improved in partnership
-with others.
-
-The OFL allows the licensed fonts to be used, studied, modified and
-redistributed freely as long as they are not sold by themselves. The
-fonts, including any derivative works, can be bundled, embedded, 
-redistributed and/or sold with any software provided that any reserved
-names are not used by derivative works. The fonts and derivatives,
-however, cannot be released under any other type of license. The
-requirement for fonts to remain under this license does not apply
-to any document created using the fonts or their derivatives.
-
-DEFINITIONS
-"Font Software" refers to the set of files released by the Copyright
-Holder(s) under this license and clearly marked as such. This may
-include source files, build scripts and documentation.
-
-"Reserved Font Name" refers to any names specified as such after the
-copyright statement(s).
-
-"Original Version" refers to the collection of Font Software components as
-distributed by the Copyright Holder(s).
-
-"Modified Version" refers to any derivative made by adding to, deleting,
-or substituting -- in part or in whole -- any of the components of the
-Original Version, by changing formats or by porting the Font Software to a
-new environment.
-
-"Author" refers to any designer, engineer, programmer, technical
-writer or other person who contributed to the Font Software.
-
-PERMISSION & CONDITIONS
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of the Font Software, to use, study, copy, merge, embed, modify,
-redistribute, and sell modified and unmodified copies of the Font
-Software, subject to the following conditions:
-
-1) Neither the Font Software nor any of its individual components,
-in Original or Modified Versions, may be sold by itself.
-
-2) Original or Modified Versions of the Font Software may be bundled,
-redistributed and/or sold with any software, provided that each copy
-contains the above copyright notice and this license. These can be
-included either as stand-alone text files, human-readable headers or
-in the appropriate machine-readable metadata fields within text or
-binary files as long as those fields can be easily viewed by the user.
-
-3) No Modified Version of the Font Software may use the Reserved Font
-Name(s) unless explicit written permission is granted by the corresponding
-Copyright Holder. This restriction only applies to the primary font name as
-presented to the users.
-
-4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
-Software shall not be used to promote, endorse or advertise any
-Modified Version, except to acknowledge the contribution(s) of the
-Copyright Holder(s) and the Author(s) or with their explicit written
-permission.
-
-5) The Font Software, modified or unmodified, in part or in whole,
-must be distributed entirely under this license, and must not be
-distributed under any other license. The requirement for fonts to
-remain under this license does not apply to any document created
-using the Font Software.
-
-TERMINATION
-This license becomes null and void if any of the above conditions are
-not met.
-
-DISCLAIMER
-THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
-OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
-DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
-OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff
new file mode 100644
index 0000000..8cd8946
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff2
new file mode 100644
index 0000000..3e587fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/bootstrap-icons.woff2
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.eot b/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.eot
deleted file mode 100644
index b93a495..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.eot
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.svg b/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.svg
deleted file mode 100644
index 94fb549..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.svg
+++ /dev/null
@@ -1,288 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata></metadata>
-<defs>
-<font id="glyphicons_halflingsregular" horiz-adv-x="1200" >
-<font-face units-per-em="1200" ascent="960" descent="-240" />
-<missing-glyph horiz-adv-x="500" />
-<glyph horiz-adv-x="0" />
-<glyph horiz-adv-x="400" />
-<glyph unicode=" " />
-<glyph unicode="*" d="M600 1100q15 0 34 -1.5t30 -3.5l11 -1q10 -2 17.5 -10.5t7.5 -18.5v-224l158 158q7 7 18 8t19 -6l106 -106q7 -8 6 -19t-8 -18l-158 -158h224q10 0 18.5 -7.5t10.5 -17.5q6 -41 6 -75q0 -15 -1.5 -34t-3.5 -30l-1 -11q-2 -10 -10.5 -17.5t-18.5 -7.5h-224l158 -158 q7 -7 8 -18t-6 -19l-106 -106q-8 -7 -19 -6t-18 8l-158 158v-224q0 -10 -7.5 -18.5t-17.5 -10.5q-41 -6 -75 -6q-15 0 -34 1.5t-30 3.5l-11 1q-10 2 -17.5 10.5t-7.5 18.5v224l-158 -158q-7 -7 -18 -8t-19 6l-106 106q-7 8 -6 19t8 18l158 158h-224q-10 0 -18.5 7.5 t-10.5 17.5q-6 41 -6 75q0 15 1.5 34t3.5 30l1 11q2 10 10.5 17.5t18.5 7.5h224l-158 158q-7 7 -8 18t6 19l106 106q8 7 19 6t18 -8l158 -158v224q0 10 7.5 18.5t17.5 10.5q41 6 75 6z" />
-<glyph unicode="+" d="M450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-350h350q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-350v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v350h-350q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5 h350v350q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xa0;" />
-<glyph unicode="&#xa5;" d="M825 1100h250q10 0 12.5 -5t-5.5 -13l-364 -364q-6 -6 -11 -18h268q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-100h275q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-174q0 -11 -7.5 -18.5t-18.5 -7.5h-148q-11 0 -18.5 7.5t-7.5 18.5v174 h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h125v100h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h118q-5 12 -11 18l-364 364q-8 8 -5.5 13t12.5 5h250q25 0 43 -18l164 -164q8 -8 18 -8t18 8l164 164q18 18 43 18z" />
-<glyph unicode="&#x2000;" horiz-adv-x="650" />
-<glyph unicode="&#x2001;" horiz-adv-x="1300" />
-<glyph unicode="&#x2002;" horiz-adv-x="650" />
-<glyph unicode="&#x2003;" horiz-adv-x="1300" />
-<glyph unicode="&#x2004;" horiz-adv-x="433" />
-<glyph unicode="&#x2005;" horiz-adv-x="325" />
-<glyph unicode="&#x2006;" horiz-adv-x="216" />
-<glyph unicode="&#x2007;" horiz-adv-x="216" />
-<glyph unicode="&#x2008;" horiz-adv-x="162" />
-<glyph unicode="&#x2009;" horiz-adv-x="260" />
-<glyph unicode="&#x200a;" horiz-adv-x="72" />
-<glyph unicode="&#x202f;" horiz-adv-x="260" />
-<glyph unicode="&#x205f;" horiz-adv-x="325" />
-<glyph unicode="&#x20ac;" d="M744 1198q242 0 354 -189q60 -104 66 -209h-181q0 45 -17.5 82.5t-43.5 61.5t-58 40.5t-60.5 24t-51.5 7.5q-19 0 -40.5 -5.5t-49.5 -20.5t-53 -38t-49 -62.5t-39 -89.5h379l-100 -100h-300q-6 -50 -6 -100h406l-100 -100h-300q9 -74 33 -132t52.5 -91t61.5 -54.5t59 -29 t47 -7.5q22 0 50.5 7.5t60.5 24.5t58 41t43.5 61t17.5 80h174q-30 -171 -128 -278q-107 -117 -274 -117q-206 0 -324 158q-36 48 -69 133t-45 204h-217l100 100h112q1 47 6 100h-218l100 100h134q20 87 51 153.5t62 103.5q117 141 297 141z" />
-<glyph unicode="&#x20bd;" d="M428 1200h350q67 0 120 -13t86 -31t57 -49.5t35 -56.5t17 -64.5t6.5 -60.5t0.5 -57v-16.5v-16.5q0 -36 -0.5 -57t-6.5 -61t-17 -65t-35 -57t-57 -50.5t-86 -31.5t-120 -13h-178l-2 -100h288q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-138v-175q0 -11 -5.5 -18 t-15.5 -7h-149q-10 0 -17.5 7.5t-7.5 17.5v175h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v100h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v475q0 10 7.5 17.5t17.5 7.5zM600 1000v-300h203q64 0 86.5 33t22.5 119q0 84 -22.5 116t-86.5 32h-203z" />
-<glyph unicode="&#x2212;" d="M250 700h800q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#x231b;" d="M1000 1200v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-50v-100q0 -91 -49.5 -165.5t-130.5 -109.5q81 -35 130.5 -109.5t49.5 -165.5v-150h50q21 0 35.5 -14.5t14.5 -35.5v-150h-800v150q0 21 14.5 35.5t35.5 14.5h50v150q0 91 49.5 165.5t130.5 109.5q-81 35 -130.5 109.5 t-49.5 165.5v100h-50q-21 0 -35.5 14.5t-14.5 35.5v150h800zM400 1000v-100q0 -60 32.5 -109.5t87.5 -73.5q28 -12 44 -37t16 -55t-16 -55t-44 -37q-55 -24 -87.5 -73.5t-32.5 -109.5v-150h400v150q0 60 -32.5 109.5t-87.5 73.5q-28 12 -44 37t-16 55t16 55t44 37 q55 24 87.5 73.5t32.5 109.5v100h-400z" />
-<glyph unicode="&#x25fc;" horiz-adv-x="500" d="M0 0z" />
-<glyph unicode="&#x2601;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -206.5q0 -121 -85 -207.5t-205 -86.5h-750q-79 0 -135.5 57t-56.5 137q0 69 42.5 122.5t108.5 67.5q-2 12 -2 37q0 153 108 260.5t260 107.5z" />
-<glyph unicode="&#x26fa;" d="M774 1193.5q16 -9.5 20.5 -27t-5.5 -33.5l-136 -187l467 -746h30q20 0 35 -18.5t15 -39.5v-42h-1200v42q0 21 15 39.5t35 18.5h30l468 746l-135 183q-10 16 -5.5 34t20.5 28t34 5.5t28 -20.5l111 -148l112 150q9 16 27 20.5t34 -5zM600 200h377l-182 112l-195 534v-646z " />
-<glyph unicode="&#x2709;" d="M25 1100h1150q10 0 12.5 -5t-5.5 -13l-564 -567q-8 -8 -18 -8t-18 8l-564 567q-8 8 -5.5 13t12.5 5zM18 882l264 -264q8 -8 8 -18t-8 -18l-264 -264q-8 -8 -13 -5.5t-5 12.5v550q0 10 5 12.5t13 -5.5zM918 618l264 264q8 8 13 5.5t5 -12.5v-550q0 -10 -5 -12.5t-13 5.5 l-264 264q-8 8 -8 18t8 18zM818 482l364 -364q8 -8 5.5 -13t-12.5 -5h-1150q-10 0 -12.5 5t5.5 13l364 364q8 8 18 8t18 -8l164 -164q8 -8 18 -8t18 8l164 164q8 8 18 8t18 -8z" />
-<glyph unicode="&#x270f;" d="M1011 1210q19 0 33 -13l153 -153q13 -14 13 -33t-13 -33l-99 -92l-214 214l95 96q13 14 32 14zM1013 800l-615 -614l-214 214l614 614zM317 96l-333 -112l110 335z" />
-<glyph unicode="&#xe001;" d="M700 650v-550h250q21 0 35.5 -14.5t14.5 -35.5v-50h-800v50q0 21 14.5 35.5t35.5 14.5h250v550l-500 550h1200z" />
-<glyph unicode="&#xe002;" d="M368 1017l645 163q39 15 63 0t24 -49v-831q0 -55 -41.5 -95.5t-111.5 -63.5q-79 -25 -147 -4.5t-86 75t25.5 111.5t122.5 82q72 24 138 8v521l-600 -155v-606q0 -42 -44 -90t-109 -69q-79 -26 -147 -5.5t-86 75.5t25.5 111.5t122.5 82.5q72 24 138 7v639q0 38 14.5 59 t53.5 34z" />
-<glyph unicode="&#xe003;" d="M500 1191q100 0 191 -39t156.5 -104.5t104.5 -156.5t39 -191l-1 -2l1 -5q0 -141 -78 -262l275 -274q23 -26 22.5 -44.5t-22.5 -42.5l-59 -58q-26 -20 -46.5 -20t-39.5 20l-275 274q-119 -77 -261 -77l-5 1l-2 -1q-100 0 -191 39t-156.5 104.5t-104.5 156.5t-39 191 t39 191t104.5 156.5t156.5 104.5t191 39zM500 1022q-88 0 -162 -43t-117 -117t-43 -162t43 -162t117 -117t162 -43t162 43t117 117t43 162t-43 162t-117 117t-162 43z" />
-<glyph unicode="&#xe005;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104z" />
-<glyph unicode="&#xe006;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429z" />
-<glyph unicode="&#xe007;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429zM477 700h-240l197 -142l-74 -226 l193 139l195 -140l-74 229l192 140h-234l-78 211z" />
-<glyph unicode="&#xe008;" d="M600 1200q124 0 212 -88t88 -212v-250q0 -46 -31 -98t-69 -52v-75q0 -10 6 -21.5t15 -17.5l358 -230q9 -5 15 -16.5t6 -21.5v-93q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v93q0 10 6 21.5t15 16.5l358 230q9 6 15 17.5t6 21.5v75q-38 0 -69 52 t-31 98v250q0 124 88 212t212 88z" />
-<glyph unicode="&#xe009;" d="M25 1100h1150q10 0 17.5 -7.5t7.5 -17.5v-1050q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v1050q0 10 7.5 17.5t17.5 7.5zM100 1000v-100h100v100h-100zM875 1000h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5t17.5 -7.5h550 q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM1000 1000v-100h100v100h-100zM100 800v-100h100v100h-100zM1000 800v-100h100v100h-100zM100 600v-100h100v100h-100zM1000 600v-100h100v100h-100zM875 500h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5 t17.5 -7.5h550q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM100 400v-100h100v100h-100zM1000 400v-100h100v100h-100zM100 200v-100h100v100h-100zM1000 200v-100h100v100h-100z" />
-<glyph unicode="&#xe010;" d="M50 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM50 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe011;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM850 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 700h200q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5 t35.5 14.5z" />
-<glyph unicode="&#xe012;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h700q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe013;" d="M465 477l571 571q8 8 18 8t17 -8l177 -177q8 -7 8 -17t-8 -18l-783 -784q-7 -8 -17.5 -8t-17.5 8l-384 384q-8 8 -8 18t8 17l177 177q7 8 17 8t18 -8l171 -171q7 -7 18 -7t18 7z" />
-<glyph unicode="&#xe014;" d="M904 1083l178 -179q8 -8 8 -18.5t-8 -17.5l-267 -268l267 -268q8 -7 8 -17.5t-8 -18.5l-178 -178q-8 -8 -18.5 -8t-17.5 8l-268 267l-268 -267q-7 -8 -17.5 -8t-18.5 8l-178 178q-8 8 -8 18.5t8 17.5l267 268l-267 268q-8 7 -8 17.5t8 18.5l178 178q8 8 18.5 8t17.5 -8 l268 -267l268 268q7 7 17.5 7t18.5 -7z" />
-<glyph unicode="&#xe015;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM425 900h150q10 0 17.5 -7.5t7.5 -17.5v-75h75q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5 t-17.5 -7.5h-75v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-75q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v75q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe016;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM325 800h350q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-350q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe017;" d="M550 1200h100q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM800 975v166q167 -62 272 -209.5t105 -331.5q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5 t-184.5 123t-123 184.5t-45.5 224q0 184 105 331.5t272 209.5v-166q-103 -55 -165 -155t-62 -220q0 -116 57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5q0 120 -62 220t-165 155z" />
-<glyph unicode="&#xe018;" d="M1025 1200h150q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM725 800h150q10 0 17.5 -7.5t7.5 -17.5v-750q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v750 q0 10 7.5 17.5t17.5 7.5zM425 500h150q10 0 17.5 -7.5t7.5 -17.5v-450q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v450q0 10 7.5 17.5t17.5 7.5zM125 300h150q10 0 17.5 -7.5t7.5 -17.5v-250q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5 v250q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe019;" d="M600 1174q33 0 74 -5l38 -152l5 -1q49 -14 94 -39l5 -2l134 80q61 -48 104 -105l-80 -134l3 -5q25 -44 39 -93l1 -6l152 -38q5 -43 5 -73q0 -34 -5 -74l-152 -38l-1 -6q-15 -49 -39 -93l-3 -5l80 -134q-48 -61 -104 -105l-134 81l-5 -3q-44 -25 -94 -39l-5 -2l-38 -151 q-43 -5 -74 -5q-33 0 -74 5l-38 151l-5 2q-49 14 -94 39l-5 3l-134 -81q-60 48 -104 105l80 134l-3 5q-25 45 -38 93l-2 6l-151 38q-6 42 -6 74q0 33 6 73l151 38l2 6q13 48 38 93l3 5l-80 134q47 61 105 105l133 -80l5 2q45 25 94 39l5 1l38 152q43 5 74 5zM600 815 q-89 0 -152 -63t-63 -151.5t63 -151.5t152 -63t152 63t63 151.5t-63 151.5t-152 63z" />
-<glyph unicode="&#xe020;" d="M500 1300h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-75h-1100v75q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5zM500 1200v-100h300v100h-300zM1100 900v-800q0 -41 -29.5 -70.5t-70.5 -29.5h-700q-41 0 -70.5 29.5t-29.5 70.5 v800h900zM300 800v-700h100v700h-100zM500 800v-700h100v700h-100zM700 800v-700h100v700h-100zM900 800v-700h100v700h-100z" />
-<glyph unicode="&#xe021;" d="M18 618l620 608q8 7 18.5 7t17.5 -7l608 -608q8 -8 5.5 -13t-12.5 -5h-175v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v375h-300v-375q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v575h-175q-10 0 -12.5 5t5.5 13z" />
-<glyph unicode="&#xe022;" d="M600 1200v-400q0 -41 29.5 -70.5t70.5 -29.5h300v-650q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5h450zM1000 800h-250q-21 0 -35.5 14.5t-14.5 35.5v250z" />
-<glyph unicode="&#xe023;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h50q10 0 17.5 -7.5t7.5 -17.5v-275h175q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe024;" d="M1300 0h-538l-41 400h-242l-41 -400h-538l431 1200h209l-21 -300h162l-20 300h208zM515 800l-27 -300h224l-27 300h-170z" />
-<glyph unicode="&#xe025;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-450h191q20 0 25.5 -11.5t-7.5 -27.5l-327 -400q-13 -16 -32 -16t-32 16l-327 400q-13 16 -7.5 27.5t25.5 11.5h191v450q0 21 14.5 35.5t35.5 14.5zM1125 400h50q10 0 17.5 -7.5t7.5 -17.5v-350q0 -10 -7.5 -17.5t-17.5 -7.5 h-1050q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h50q10 0 17.5 -7.5t7.5 -17.5v-175h900v175q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe026;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -275q-13 -16 -32 -16t-32 16l-223 275q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z " />
-<glyph unicode="&#xe027;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM632 914l223 -275q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5l223 275q13 16 32 16 t32 -16z" />
-<glyph unicode="&#xe028;" d="M225 1200h750q10 0 19.5 -7t12.5 -17l186 -652q7 -24 7 -49v-425q0 -12 -4 -27t-9 -17q-12 -6 -37 -6h-1100q-12 0 -27 4t-17 8q-6 13 -6 38l1 425q0 25 7 49l185 652q3 10 12.5 17t19.5 7zM878 1000h-556q-10 0 -19 -7t-11 -18l-87 -450q-2 -11 4 -18t16 -7h150 q10 0 19.5 -7t11.5 -17l38 -152q2 -10 11.5 -17t19.5 -7h250q10 0 19.5 7t11.5 17l38 152q2 10 11.5 17t19.5 7h150q10 0 16 7t4 18l-87 450q-2 11 -11 18t-19 7z" />
-<glyph unicode="&#xe029;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM540 820l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
-<glyph unicode="&#xe030;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-362q0 -10 -7.5 -17.5t-17.5 -7.5h-362q-11 0 -13 5.5t5 12.5l133 133q-109 76 -238 76q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5h150q0 -117 -45.5 -224 t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117z" />
-<glyph unicode="&#xe031;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-361q0 -11 -7.5 -18.5t-18.5 -7.5h-361q-11 0 -13 5.5t5 12.5l134 134q-110 75 -239 75q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5h-150q0 117 45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117zM1027 600h150 q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5q-192 0 -348 118l-134 -134q-7 -8 -12.5 -5.5t-5.5 12.5v360q0 11 7.5 18.5t18.5 7.5h360q10 0 12.5 -5.5t-5.5 -12.5l-133 -133q110 -76 240 -76q116 0 214.5 57t155.5 155.5t57 214.5z" />
-<glyph unicode="&#xe032;" d="M125 1200h1050q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-1050q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM1075 1000h-850q-10 0 -17.5 -7.5t-7.5 -17.5v-850q0 -10 7.5 -17.5t17.5 -7.5h850q10 0 17.5 7.5t7.5 17.5v850 q0 10 -7.5 17.5t-17.5 7.5zM325 900h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 900h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 700h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 700h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 500h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 500h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 300h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 300h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe033;" d="M900 800v200q0 83 -58.5 141.5t-141.5 58.5h-300q-82 0 -141 -59t-59 -141v-200h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h900q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-100zM400 800v150q0 21 15 35.5t35 14.5h200 q20 0 35 -14.5t15 -35.5v-150h-300z" />
-<glyph unicode="&#xe034;" d="M125 1100h50q10 0 17.5 -7.5t7.5 -17.5v-1075h-100v1075q0 10 7.5 17.5t17.5 7.5zM1075 1052q4 0 9 -2q16 -6 16 -23v-421q0 -6 -3 -12q-33 -59 -66.5 -99t-65.5 -58t-56.5 -24.5t-52.5 -6.5q-26 0 -57.5 6.5t-52.5 13.5t-60 21q-41 15 -63 22.5t-57.5 15t-65.5 7.5 q-85 0 -160 -57q-7 -5 -15 -5q-6 0 -11 3q-14 7 -14 22v438q22 55 82 98.5t119 46.5q23 2 43 0.5t43 -7t32.5 -8.5t38 -13t32.5 -11q41 -14 63.5 -21t57 -14t63.5 -7q103 0 183 87q7 8 18 8z" />
-<glyph unicode="&#xe035;" d="M600 1175q116 0 227 -49.5t192.5 -131t131 -192.5t49.5 -227v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v300q0 127 -70.5 231.5t-184.5 161.5t-245 57t-245 -57t-184.5 -161.5t-70.5 -231.5v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50 q-10 0 -17.5 7.5t-7.5 17.5v300q0 116 49.5 227t131 192.5t192.5 131t227 49.5zM220 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460q0 8 6 14t14 6zM820 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460 q0 8 6 14t14 6z" />
-<glyph unicode="&#xe036;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM900 668l120 120q7 7 17 7t17 -7l34 -34q7 -7 7 -17t-7 -17l-120 -120l120 -120q7 -7 7 -17 t-7 -17l-34 -34q-7 -7 -17 -7t-17 7l-120 119l-120 -119q-7 -7 -17 -7t-17 7l-34 34q-7 7 -7 17t7 17l119 120l-119 120q-7 7 -7 17t7 17l34 34q7 8 17 8t17 -8z" />
-<glyph unicode="&#xe037;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6 l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238q-6 8 -4.5 18t9.5 17l29 22q7 5 15 5z" />
-<glyph unicode="&#xe038;" d="M967 1004h3q11 -1 17 -10q135 -179 135 -396q0 -105 -34 -206.5t-98 -185.5q-7 -9 -17 -10h-3q-9 0 -16 6l-42 34q-8 6 -9 16t5 18q111 150 111 328q0 90 -29.5 176t-84.5 157q-6 9 -5 19t10 16l42 33q7 5 15 5zM321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5 t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238 q-6 8 -4.5 18.5t9.5 16.5l29 22q7 5 15 5z" />
-<glyph unicode="&#xe039;" d="M500 900h100v-100h-100v-100h-400v-100h-100v600h500v-300zM1200 700h-200v-100h200v-200h-300v300h-200v300h-100v200h600v-500zM100 1100v-300h300v300h-300zM800 1100v-300h300v300h-300zM300 900h-100v100h100v-100zM1000 900h-100v100h100v-100zM300 500h200v-500 h-500v500h200v100h100v-100zM800 300h200v-100h-100v-100h-200v100h-100v100h100v200h-200v100h300v-300zM100 400v-300h300v300h-300zM300 200h-100v100h100v-100zM1200 200h-100v100h100v-100zM700 0h-100v100h100v-100zM1200 0h-300v100h300v-100z" />
-<glyph unicode="&#xe040;" d="M100 200h-100v1000h100v-1000zM300 200h-100v1000h100v-1000zM700 200h-200v1000h200v-1000zM900 200h-100v1000h100v-1000zM1200 200h-200v1000h200v-1000zM400 0h-300v100h300v-100zM600 0h-100v91h100v-91zM800 0h-100v91h100v-91zM1100 0h-200v91h200v-91z" />
-<glyph unicode="&#xe041;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
-<glyph unicode="&#xe042;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM800 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-56 56l424 426l-700 700h150zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5 t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
-<glyph unicode="&#xe043;" d="M300 1200h825q75 0 75 -75v-900q0 -25 -18 -43l-64 -64q-8 -8 -13 -5.5t-5 12.5v950q0 10 -7.5 17.5t-17.5 7.5h-700q-25 0 -43 -18l-64 -64q-8 -8 -5.5 -13t12.5 -5h700q10 0 17.5 -7.5t7.5 -17.5v-950q0 -10 -7.5 -17.5t-17.5 -7.5h-850q-10 0 -17.5 7.5t-7.5 17.5v975 q0 25 18 43l139 139q18 18 43 18z" />
-<glyph unicode="&#xe044;" d="M250 1200h800q21 0 35.5 -14.5t14.5 -35.5v-1150l-450 444l-450 -445v1151q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe045;" d="M822 1200h-444q-11 0 -19 -7.5t-9 -17.5l-78 -301q-7 -24 7 -45l57 -108q6 -9 17.5 -15t21.5 -6h450q10 0 21.5 6t17.5 15l62 108q14 21 7 45l-83 301q-1 10 -9 17.5t-19 7.5zM1175 800h-150q-10 0 -21 -6.5t-15 -15.5l-78 -156q-4 -9 -15 -15.5t-21 -6.5h-550 q-10 0 -21 6.5t-15 15.5l-78 156q-4 9 -15 15.5t-21 6.5h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-650q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h750q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5 t7.5 17.5v650q0 10 -7.5 17.5t-17.5 7.5zM850 200h-500q-10 0 -19.5 -7t-11.5 -17l-38 -152q-2 -10 3.5 -17t15.5 -7h600q10 0 15.5 7t3.5 17l-38 152q-2 10 -11.5 17t-19.5 7z" />
-<glyph unicode="&#xe046;" d="M500 1100h200q56 0 102.5 -20.5t72.5 -50t44 -59t25 -50.5l6 -20h150q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5h150q2 8 6.5 21.5t24 48t45 61t72 48t102.5 21.5zM900 800v-100 h100v100h-100zM600 730q-95 0 -162.5 -67.5t-67.5 -162.5t67.5 -162.5t162.5 -67.5t162.5 67.5t67.5 162.5t-67.5 162.5t-162.5 67.5zM600 603q43 0 73 -30t30 -73t-30 -73t-73 -30t-73 30t-30 73t30 73t73 30z" />
-<glyph unicode="&#xe047;" d="M681 1199l385 -998q20 -50 60 -92q18 -19 36.5 -29.5t27.5 -11.5l10 -2v-66h-417v66q53 0 75 43.5t5 88.5l-82 222h-391q-58 -145 -92 -234q-11 -34 -6.5 -57t25.5 -37t46 -20t55 -6v-66h-365v66q56 24 84 52q12 12 25 30.5t20 31.5l7 13l399 1006h93zM416 521h340 l-162 457z" />
-<glyph unicode="&#xe048;" d="M753 641q5 -1 14.5 -4.5t36 -15.5t50.5 -26.5t53.5 -40t50.5 -54.5t35.5 -70t14.5 -87q0 -67 -27.5 -125.5t-71.5 -97.5t-98.5 -66.5t-108.5 -40.5t-102 -13h-500v89q41 7 70.5 32.5t29.5 65.5v827q0 24 -0.5 34t-3.5 24t-8.5 19.5t-17 13.5t-28 12.5t-42.5 11.5v71 l471 -1q57 0 115.5 -20.5t108 -57t80.5 -94t31 -124.5q0 -51 -15.5 -96.5t-38 -74.5t-45 -50.5t-38.5 -30.5zM400 700h139q78 0 130.5 48.5t52.5 122.5q0 41 -8.5 70.5t-29.5 55.5t-62.5 39.5t-103.5 13.5h-118v-350zM400 200h216q80 0 121 50.5t41 130.5q0 90 -62.5 154.5 t-156.5 64.5h-159v-400z" />
-<glyph unicode="&#xe049;" d="M877 1200l2 -57q-83 -19 -116 -45.5t-40 -66.5l-132 -839q-9 -49 13 -69t96 -26v-97h-500v97q186 16 200 98l173 832q3 17 3 30t-1.5 22.5t-9 17.5t-13.5 12.5t-21.5 10t-26 8.5t-33.5 10q-13 3 -19 5v57h425z" />
-<glyph unicode="&#xe050;" d="M1300 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM175 1000h-75v-800h75l-125 -167l-125 167h75v800h-75l125 167z" />
-<glyph unicode="&#xe051;" d="M1100 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-650q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v650h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM1167 50l-167 -125v75h-800v-75l-167 125l167 125v-75h800v75z" />
-<glyph unicode="&#xe052;" d="M50 1100h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe053;" d="M250 1100h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM250 500h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe054;" d="M500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000 q-21 0 -35.5 14.5t-14.5 35.5zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5zM0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5z" />
-<glyph unicode="&#xe055;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe056;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 1100h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 800h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 500h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 500h800q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 200h800 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe057;" d="M400 0h-100v1100h100v-1100zM550 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM267 550l-167 -125v75h-200v100h200v75zM550 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe058;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM900 0h-100v1100h100v-1100zM50 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM1100 600h200v-100h-200v-75l-167 125l167 125v-75zM50 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe059;" d="M75 1000h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53v650q0 31 22 53t53 22zM1200 300l-300 300l300 300v-600z" />
-<glyph unicode="&#xe060;" d="M44 1100h1112q18 0 31 -13t13 -31v-1012q0 -18 -13 -31t-31 -13h-1112q-18 0 -31 13t-13 31v1012q0 18 13 31t31 13zM100 1000v-737l247 182l298 -131l-74 156l293 318l236 -288v500h-1000zM342 884q56 0 95 -39t39 -94.5t-39 -95t-95 -39.5t-95 39.5t-39 95t39 94.5 t95 39z" />
-<glyph unicode="&#xe062;" d="M648 1169q117 0 216 -60t156.5 -161t57.5 -218q0 -115 -70 -258q-69 -109 -158 -225.5t-143 -179.5l-54 -62q-9 8 -25.5 24.5t-63.5 67.5t-91 103t-98.5 128t-95.5 148q-60 132 -60 249q0 88 34 169.5t91.5 142t137 96.5t166.5 36zM652.5 974q-91.5 0 -156.5 -65 t-65 -157t65 -156.5t156.5 -64.5t156.5 64.5t65 156.5t-65 157t-156.5 65z" />
-<glyph unicode="&#xe063;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 173v854q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57z" />
-<glyph unicode="&#xe064;" d="M554 1295q21 -72 57.5 -143.5t76 -130t83 -118t82.5 -117t70 -116t49.5 -126t18.5 -136.5q0 -71 -25.5 -135t-68.5 -111t-99 -82t-118.5 -54t-125.5 -23q-84 5 -161.5 34t-139.5 78.5t-99 125t-37 164.5q0 69 18 136.5t49.5 126.5t69.5 116.5t81.5 117.5t83.5 119 t76.5 131t58.5 143zM344 710q-23 -33 -43.5 -70.5t-40.5 -102.5t-17 -123q1 -37 14.5 -69.5t30 -52t41 -37t38.5 -24.5t33 -15q21 -7 32 -1t13 22l6 34q2 10 -2.5 22t-13.5 19q-5 4 -14 12t-29.5 40.5t-32.5 73.5q-26 89 6 271q2 11 -6 11q-8 1 -15 -10z" />
-<glyph unicode="&#xe065;" d="M1000 1013l108 115q2 1 5 2t13 2t20.5 -1t25 -9.5t28.5 -21.5q22 -22 27 -43t0 -32l-6 -10l-108 -115zM350 1100h400q50 0 105 -13l-187 -187h-368q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v182l200 200v-332 q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM1009 803l-362 -362l-161 -50l55 170l355 355z" />
-<glyph unicode="&#xe066;" d="M350 1100h361q-164 -146 -216 -200h-195q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-103q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M824 1073l339 -301q8 -7 8 -17.5t-8 -17.5l-340 -306q-7 -6 -12.5 -4t-6.5 11v203q-26 1 -54.5 0t-78.5 -7.5t-92 -17.5t-86 -35t-70 -57q10 59 33 108t51.5 81.5t65 58.5t68.5 40.5t67 24.5t56 13.5t40 4.5v210q1 10 6.5 12.5t13.5 -4.5z" />
-<glyph unicode="&#xe067;" d="M350 1100h350q60 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-219q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M643 639l395 395q7 7 17.5 7t17.5 -7l101 -101q7 -7 7 -17.5t-7 -17.5l-531 -532q-7 -7 -17.5 -7t-17.5 7l-248 248q-7 7 -7 17.5t7 17.5l101 101q7 7 17.5 7t17.5 -7l111 -111q8 -7 18 -7t18 7z" />
-<glyph unicode="&#xe068;" d="M318 918l264 264q8 8 18 8t18 -8l260 -264q7 -8 4.5 -13t-12.5 -5h-170v-200h200v173q0 10 5 12t13 -5l264 -260q8 -7 8 -17.5t-8 -17.5l-264 -265q-8 -7 -13 -5t-5 12v173h-200v-200h170q10 0 12.5 -5t-4.5 -13l-260 -264q-8 -8 -18 -8t-18 8l-264 264q-8 8 -5.5 13 t12.5 5h175v200h-200v-173q0 -10 -5 -12t-13 5l-264 265q-8 7 -8 17.5t8 17.5l264 260q8 7 13 5t5 -12v-173h200v200h-175q-10 0 -12.5 5t5.5 13z" />
-<glyph unicode="&#xe069;" d="M250 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe070;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5 t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe071;" d="M1200 1050v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-492 480q-15 14 -15 35t15 35l492 480q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25z" />
-<glyph unicode="&#xe072;" d="M243 1074l814 -498q18 -11 18 -26t-18 -26l-814 -498q-18 -11 -30.5 -4t-12.5 28v1000q0 21 12.5 28t30.5 -4z" />
-<glyph unicode="&#xe073;" d="M250 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM650 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800 q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe074;" d="M1100 950v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5z" />
-<glyph unicode="&#xe075;" d="M500 612v438q0 21 10.5 25t25.5 -10l492 -480q15 -14 15 -35t-15 -35l-492 -480q-15 -14 -25.5 -10t-10.5 25v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10z" />
-<glyph unicode="&#xe076;" d="M1048 1102l100 1q20 0 35 -14.5t15 -35.5l5 -1000q0 -21 -14.5 -35.5t-35.5 -14.5l-100 -1q-21 0 -35.5 14.5t-14.5 35.5l-2 437l-463 -454q-14 -15 -24.5 -10.5t-10.5 25.5l-2 437l-462 -455q-15 -14 -25.5 -9.5t-10.5 24.5l-5 1000q0 21 10.5 25.5t25.5 -10.5l466 -450 l-2 438q0 20 10.5 24.5t25.5 -9.5l466 -451l-2 438q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe077;" d="M850 1100h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10l464 -453v438q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe078;" d="M686 1081l501 -540q15 -15 10.5 -26t-26.5 -11h-1042q-22 0 -26.5 11t10.5 26l501 540q15 15 36 15t36 -15zM150 400h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe079;" d="M885 900l-352 -353l352 -353l-197 -198l-552 552l552 550z" />
-<glyph unicode="&#xe080;" d="M1064 547l-551 -551l-198 198l353 353l-353 353l198 198z" />
-<glyph unicode="&#xe081;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM650 900h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-150 q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5h150v-150q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v150h150q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-150v150q0 21 -14.5 35.5t-35.5 14.5z" />
-<glyph unicode="&#xe082;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM850 700h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5 t35.5 -14.5h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5z" />
-<glyph unicode="&#xe083;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM741.5 913q-12.5 0 -21.5 -9l-120 -120l-120 120q-9 9 -21.5 9 t-21.5 -9l-141 -141q-9 -9 -9 -21.5t9 -21.5l120 -120l-120 -120q-9 -9 -9 -21.5t9 -21.5l141 -141q9 -9 21.5 -9t21.5 9l120 120l120 -120q9 -9 21.5 -9t21.5 9l141 141q9 9 9 21.5t-9 21.5l-120 120l120 120q9 9 9 21.5t-9 21.5l-141 141q-9 9 -21.5 9z" />
-<glyph unicode="&#xe084;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM546 623l-84 85q-7 7 -17.5 7t-18.5 -7l-139 -139q-7 -8 -7 -18t7 -18 l242 -241q7 -8 17.5 -8t17.5 8l375 375q7 7 7 17.5t-7 18.5l-139 139q-7 7 -17.5 7t-17.5 -7z" />
-<glyph unicode="&#xe085;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM588 941q-29 0 -59 -5.5t-63 -20.5t-58 -38.5t-41.5 -63t-16.5 -89.5 q0 -25 20 -25h131q30 -5 35 11q6 20 20.5 28t45.5 8q20 0 31.5 -10.5t11.5 -28.5q0 -23 -7 -34t-26 -18q-1 0 -13.5 -4t-19.5 -7.5t-20 -10.5t-22 -17t-18.5 -24t-15.5 -35t-8 -46q-1 -8 5.5 -16.5t20.5 -8.5h173q7 0 22 8t35 28t37.5 48t29.5 74t12 100q0 47 -17 83 t-42.5 57t-59.5 34.5t-64 18t-59 4.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
-<glyph unicode="&#xe086;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM675 1000h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5 t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5zM675 700h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h75v-200h-75q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h350q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5 t-17.5 7.5h-75v275q0 10 -7.5 17.5t-17.5 7.5z" />
-<glyph unicode="&#xe087;" d="M525 1200h150q10 0 17.5 -7.5t7.5 -17.5v-194q103 -27 178.5 -102.5t102.5 -178.5h194q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-194q-27 -103 -102.5 -178.5t-178.5 -102.5v-194q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v194 q-103 27 -178.5 102.5t-102.5 178.5h-194q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h194q27 103 102.5 178.5t178.5 102.5v194q0 10 7.5 17.5t17.5 7.5zM700 893v-168q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v168q-68 -23 -119 -74 t-74 -119h168q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-168q23 -68 74 -119t119 -74v168q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-168q68 23 119 74t74 119h-168q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h168 q-23 68 -74 119t-119 74z" />
-<glyph unicode="&#xe088;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM759 823l64 -64q7 -7 7 -17.5t-7 -17.5l-124 -124l124 -124q7 -7 7 -17.5t-7 -17.5l-64 -64q-7 -7 -17.5 -7t-17.5 7l-124 124l-124 -124q-7 -7 -17.5 -7t-17.5 7l-64 64 q-7 7 -7 17.5t7 17.5l124 124l-124 124q-7 7 -7 17.5t7 17.5l64 64q7 7 17.5 7t17.5 -7l124 -124l124 124q7 7 17.5 7t17.5 -7z" />
-<glyph unicode="&#xe089;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM782 788l106 -106q7 -7 7 -17.5t-7 -17.5l-320 -321q-8 -7 -18 -7t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l197 197q7 7 17.5 7t17.5 -7z" />
-<glyph unicode="&#xe090;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5q0 -120 65 -225 l587 587q-105 65 -225 65zM965 819l-584 -584q104 -62 219 -62q116 0 214.5 57t155.5 155.5t57 214.5q0 115 -62 219z" />
-<glyph unicode="&#xe091;" d="M39 582l522 427q16 13 27.5 8t11.5 -26v-291h550q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-550v-291q0 -21 -11.5 -26t-27.5 8l-522 427q-16 13 -16 32t16 32z" />
-<glyph unicode="&#xe092;" d="M639 1009l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291h-550q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h550v291q0 21 11.5 26t27.5 -8z" />
-<glyph unicode="&#xe093;" d="M682 1161l427 -522q13 -16 8 -27.5t-26 -11.5h-291v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v550h-291q-21 0 -26 11.5t8 27.5l427 522q13 16 32 16t32 -16z" />
-<glyph unicode="&#xe094;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-550h291q21 0 26 -11.5t-8 -27.5l-427 -522q-13 -16 -32 -16t-32 16l-427 522q-13 16 -8 27.5t26 11.5h291v550q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe095;" d="M639 1109l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291q-94 -2 -182 -20t-170.5 -52t-147 -92.5t-100.5 -135.5q5 105 27 193.5t67.5 167t113 135t167 91.5t225.5 42v262q0 21 11.5 26t27.5 -8z" />
-<glyph unicode="&#xe096;" d="M850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5zM350 0h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249 q8 7 18 7t18 -7l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5z" />
-<glyph unicode="&#xe097;" d="M1014 1120l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249q8 7 18 7t18 -7zM250 600h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5z" />
-<glyph unicode="&#xe101;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM704 900h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5 t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
-<glyph unicode="&#xe102;" d="M260 1200q9 0 19 -2t15 -4l5 -2q22 -10 44 -23l196 -118q21 -13 36 -24q29 -21 37 -12q11 13 49 35l196 118q22 13 45 23q17 7 38 7q23 0 47 -16.5t37 -33.5l13 -16q14 -21 18 -45l25 -123l8 -44q1 -9 8.5 -14.5t17.5 -5.5h61q10 0 17.5 -7.5t7.5 -17.5v-50 q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 -7.5t-7.5 -17.5v-175h-400v300h-200v-300h-400v175q0 10 -7.5 17.5t-17.5 7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5h61q11 0 18 3t7 8q0 4 9 52l25 128q5 25 19 45q2 3 5 7t13.5 15t21.5 19.5t26.5 15.5 t29.5 7zM915 1079l-166 -162q-7 -7 -5 -12t12 -5h219q10 0 15 7t2 17l-51 149q-3 10 -11 12t-15 -6zM463 917l-177 157q-8 7 -16 5t-11 -12l-51 -143q-3 -10 2 -17t15 -7h231q11 0 12.5 5t-5.5 12zM500 0h-375q-10 0 -17.5 7.5t-7.5 17.5v375h400v-400zM1100 400v-375 q0 -10 -7.5 -17.5t-17.5 -7.5h-375v400h400z" />
-<glyph unicode="&#xe103;" d="M1165 1190q8 3 21 -6.5t13 -17.5q-2 -178 -24.5 -323.5t-55.5 -245.5t-87 -174.5t-102.5 -118.5t-118 -68.5t-118.5 -33t-120 -4.5t-105 9.5t-90 16.5q-61 12 -78 11q-4 1 -12.5 0t-34 -14.5t-52.5 -40.5l-153 -153q-26 -24 -37 -14.5t-11 43.5q0 64 42 102q8 8 50.5 45 t66.5 58q19 17 35 47t13 61q-9 55 -10 102.5t7 111t37 130t78 129.5q39 51 80 88t89.5 63.5t94.5 45t113.5 36t129 31t157.5 37t182 47.5zM1116 1098q-8 9 -22.5 -3t-45.5 -50q-38 -47 -119 -103.5t-142 -89.5l-62 -33q-56 -30 -102 -57t-104 -68t-102.5 -80.5t-85.5 -91 t-64 -104.5q-24 -56 -31 -86t2 -32t31.5 17.5t55.5 59.5q25 30 94 75.5t125.5 77.5t147.5 81q70 37 118.5 69t102 79.5t99 111t86.5 148.5q22 50 24 60t-6 19z" />
-<glyph unicode="&#xe104;" d="M653 1231q-39 -67 -54.5 -131t-10.5 -114.5t24.5 -96.5t47.5 -80t63.5 -62.5t68.5 -46.5t65 -30q-4 7 -17.5 35t-18.5 39.5t-17 39.5t-17 43t-13 42t-9.5 44.5t-2 42t4 43t13.5 39t23 38.5q96 -42 165 -107.5t105 -138t52 -156t13 -159t-19 -149.5q-13 -55 -44 -106.5 t-68 -87t-78.5 -64.5t-72.5 -45t-53 -22q-72 -22 -127 -11q-31 6 -13 19q6 3 17 7q13 5 32.5 21t41 44t38.5 63.5t21.5 81.5t-6.5 94.5t-50 107t-104 115.5q10 -104 -0.5 -189t-37 -140.5t-65 -93t-84 -52t-93.5 -11t-95 24.5q-80 36 -131.5 114t-53.5 171q-2 23 0 49.5 t4.5 52.5t13.5 56t27.5 60t46 64.5t69.5 68.5q-8 -53 -5 -102.5t17.5 -90t34 -68.5t44.5 -39t49 -2q31 13 38.5 36t-4.5 55t-29 64.5t-36 75t-26 75.5q-15 85 2 161.5t53.5 128.5t85.5 92.5t93.5 61t81.5 25.5z" />
-<glyph unicode="&#xe105;" d="M600 1094q82 0 160.5 -22.5t140 -59t116.5 -82.5t94.5 -95t68 -95t42.5 -82.5t14 -57.5t-14 -57.5t-43 -82.5t-68.5 -95t-94.5 -95t-116.5 -82.5t-140 -59t-159.5 -22.5t-159.5 22.5t-140 59t-116.5 82.5t-94.5 95t-68.5 95t-43 82.5t-14 57.5t14 57.5t42.5 82.5t68 95 t94.5 95t116.5 82.5t140 59t160.5 22.5zM888 829q-15 15 -18 12t5 -22q25 -57 25 -119q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 59 23 114q8 19 4.5 22t-17.5 -12q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q22 -36 47 -71t70 -82t92.5 -81t113 -58.5t133.5 -24.5 t133.5 24t113 58.5t92.5 81.5t70 81.5t47 70.5q11 18 9 42.5t-14 41.5q-90 117 -163 189zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l35 34q14 15 12.5 33.5t-16.5 33.5q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
-<glyph unicode="&#xe106;" d="M592 0h-148l31 120q-91 20 -175.5 68.5t-143.5 106.5t-103.5 119t-66.5 110t-22 76q0 21 14 57.5t42.5 82.5t68 95t94.5 95t116.5 82.5t140 59t160.5 22.5q61 0 126 -15l32 121h148zM944 770l47 181q108 -85 176.5 -192t68.5 -159q0 -26 -19.5 -71t-59.5 -102t-93 -112 t-129 -104.5t-158 -75.5l46 173q77 49 136 117t97 131q11 18 9 42.5t-14 41.5q-54 70 -107 130zM310 824q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q18 -30 39 -60t57 -70.5t74 -73t90 -61t105 -41.5l41 154q-107 18 -178.5 101.5t-71.5 193.5q0 59 23 114q8 19 4.5 22 t-17.5 -12zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l12 11l22 86l-3 4q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
-<glyph unicode="&#xe107;" d="M-90 100l642 1066q20 31 48 28.5t48 -35.5l642 -1056q21 -32 7.5 -67.5t-50.5 -35.5h-1294q-37 0 -50.5 34t7.5 66zM155 200h345v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h345l-445 723zM496 700h208q20 0 32 -14.5t8 -34.5l-58 -252 q-4 -20 -21.5 -34.5t-37.5 -14.5h-54q-20 0 -37.5 14.5t-21.5 34.5l-58 252q-4 20 8 34.5t32 14.5z" />
-<glyph unicode="&#xe108;" d="M650 1200q62 0 106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -93 100 -113v-64q0 -21 -13 -29t-32 1l-205 128l-205 -128q-19 -9 -32 -1t-13 29v64q0 20 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5v41 q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44z" />
-<glyph unicode="&#xe109;" d="M850 1200h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-150h-1100v150q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-50h500v50q0 21 14.5 35.5t35.5 14.5zM1100 800v-750q0 -21 -14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v750h1100zM100 600v-100h100v100h-100zM300 600v-100h100v100h-100zM500 600v-100h100v100h-100zM700 600v-100h100v100h-100zM900 600v-100h100v100h-100zM100 400v-100h100v100h-100zM300 400v-100h100v100h-100zM500 400 v-100h100v100h-100zM700 400v-100h100v100h-100zM900 400v-100h100v100h-100zM100 200v-100h100v100h-100zM300 200v-100h100v100h-100zM500 200v-100h100v100h-100zM700 200v-100h100v100h-100zM900 200v-100h100v100h-100z" />
-<glyph unicode="&#xe110;" d="M1135 1165l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-159l-600 -600h-291q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h209l600 600h241v150q0 21 10.5 25t24.5 -10zM522 819l-141 -141l-122 122h-209q-21 0 -35.5 14.5 t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h291zM1135 565l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-241l-181 181l141 141l122 -122h159v150q0 21 10.5 25t24.5 -10z" />
-<glyph unicode="&#xe111;" d="M100 1100h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5z" />
-<glyph unicode="&#xe112;" d="M150 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM850 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM1100 800v-300q0 -41 -3 -77.5t-15 -89.5t-32 -96t-58 -89t-89 -77t-129 -51t-174 -20t-174 20 t-129 51t-89 77t-58 89t-32 96t-15 89.5t-3 77.5v300h300v-250v-27v-42.5t1.5 -41t5 -38t10 -35t16.5 -30t25.5 -24.5t35 -19t46.5 -12t60 -4t60 4.5t46.5 12.5t35 19.5t25 25.5t17 30.5t10 35t5 38t2 40.5t-0.5 42v25v250h300z" />
-<glyph unicode="&#xe113;" d="M1100 411l-198 -199l-353 353l-353 -353l-197 199l551 551z" />
-<glyph unicode="&#xe114;" d="M1101 789l-550 -551l-551 551l198 199l353 -353l353 353z" />
-<glyph unicode="&#xe115;" d="M404 1000h746q21 0 35.5 -14.5t14.5 -35.5v-551h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v401h-381zM135 984l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-400h385l215 -200h-750q-21 0 -35.5 14.5 t-14.5 35.5v550h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
-<glyph unicode="&#xe116;" d="M56 1200h94q17 0 31 -11t18 -27l38 -162h896q24 0 39 -18.5t10 -42.5l-100 -475q-5 -21 -27 -42.5t-55 -21.5h-633l48 -200h535q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-50q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-300v-50 q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-31q-18 0 -32.5 10t-20.5 19l-5 10l-201 961h-54q-20 0 -35 14.5t-15 35.5t15 35.5t35 14.5z" />
-<glyph unicode="&#xe117;" d="M1200 1000v-100h-1200v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500zM0 800h1200v-800h-1200v800z" />
-<glyph unicode="&#xe118;" d="M200 800l-200 -400v600h200q0 41 29.5 70.5t70.5 29.5h300q42 0 71 -29.5t29 -70.5h500v-200h-1000zM1500 700l-300 -700h-1200l300 700h1200z" />
-<glyph unicode="&#xe119;" d="M635 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-601h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v601h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
-<glyph unicode="&#xe120;" d="M936 864l249 -229q14 -15 14 -35.5t-14 -35.5l-249 -229q-15 -15 -25.5 -10.5t-10.5 24.5v151h-600v-151q0 -20 -10.5 -24.5t-25.5 10.5l-249 229q-14 15 -14 35.5t14 35.5l249 229q15 15 25.5 10.5t10.5 -25.5v-149h600v149q0 21 10.5 25.5t25.5 -10.5z" />
-<glyph unicode="&#xe121;" d="M1169 400l-172 732q-5 23 -23 45.5t-38 22.5h-672q-20 0 -38 -20t-23 -41l-172 -739h1138zM1100 300h-1000q-41 0 -70.5 -29.5t-29.5 -70.5v-100q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v100q0 41 -29.5 70.5t-70.5 29.5zM800 100v100h100v-100h-100 zM1000 100v100h100v-100h-100z" />
-<glyph unicode="&#xe122;" d="M1150 1100q21 0 35.5 -14.5t14.5 -35.5v-850q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v850q0 21 14.5 35.5t35.5 14.5zM1000 200l-675 200h-38l47 -276q3 -16 -5.5 -20t-29.5 -4h-7h-84q-20 0 -34.5 14t-18.5 35q-55 337 -55 351v250v6q0 16 1 23.5t6.5 14 t17.5 6.5h200l675 250v-850zM0 750v-250q-4 0 -11 0.5t-24 6t-30 15t-24 30t-11 48.5v50q0 26 10.5 46t25 30t29 16t25.5 7z" />
-<glyph unicode="&#xe123;" d="M553 1200h94q20 0 29 -10.5t3 -29.5l-18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q19 0 33 -14.5t14 -35t-13 -40.5t-31 -27q-8 -4 -23 -9.5t-65 -19.5t-103 -25t-132.5 -20t-158.5 -9q-57 0 -115 5t-104 12t-88.5 15.5t-73.5 17.5t-54.5 16t-35.5 12l-11 4 q-18 8 -31 28t-13 40.5t14 35t33 14.5h17l118 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3.5 32t28.5 13zM498 110q50 -6 102 -6q53 0 102 6q-12 -49 -39.5 -79.5t-62.5 -30.5t-63 30.5t-39 79.5z" />
-<glyph unicode="&#xe124;" d="M800 946l224 78l-78 -224l234 -45l-180 -155l180 -155l-234 -45l78 -224l-224 78l-45 -234l-155 180l-155 -180l-45 234l-224 -78l78 224l-234 45l180 155l-180 155l234 45l-78 224l224 -78l45 234l155 -180l155 180z" />
-<glyph unicode="&#xe125;" d="M650 1200h50q40 0 70 -40.5t30 -84.5v-150l-28 -125h328q40 0 70 -40.5t30 -84.5v-100q0 -45 -29 -74l-238 -344q-16 -24 -38 -40.5t-45 -16.5h-250q-7 0 -42 25t-66 50l-31 25h-61q-45 0 -72.5 18t-27.5 57v400q0 36 20 63l145 196l96 198q13 28 37.5 48t51.5 20z M650 1100l-100 -212l-150 -213v-375h100l136 -100h214l250 375v125h-450l50 225v175h-50zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe126;" d="M600 1100h250q23 0 45 -16.5t38 -40.5l238 -344q29 -29 29 -74v-100q0 -44 -30 -84.5t-70 -40.5h-328q28 -118 28 -125v-150q0 -44 -30 -84.5t-70 -40.5h-50q-27 0 -51.5 20t-37.5 48l-96 198l-145 196q-20 27 -20 63v400q0 39 27.5 57t72.5 18h61q124 100 139 100z M50 1000h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM636 1000l-136 -100h-100v-375l150 -213l100 -212h50v175l-50 225h450v125l-250 375h-214z" />
-<glyph unicode="&#xe127;" d="M356 873l363 230q31 16 53 -6l110 -112q13 -13 13.5 -32t-11.5 -34l-84 -121h302q84 0 138 -38t54 -110t-55 -111t-139 -39h-106l-131 -339q-6 -21 -19.5 -41t-28.5 -20h-342q-7 0 -90 81t-83 94v525q0 17 14 35.5t28 28.5zM400 792v-503l100 -89h293l131 339 q6 21 19.5 41t28.5 20h203q21 0 30.5 25t0.5 50t-31 25h-456h-7h-6h-5.5t-6 0.5t-5 1.5t-5 2t-4 2.5t-4 4t-2.5 4.5q-12 25 5 47l146 183l-86 83zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500 q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe128;" d="M475 1103l366 -230q2 -1 6 -3.5t14 -10.5t18 -16.5t14.5 -20t6.5 -22.5v-525q0 -13 -86 -94t-93 -81h-342q-15 0 -28.5 20t-19.5 41l-131 339h-106q-85 0 -139.5 39t-54.5 111t54 110t138 38h302l-85 121q-11 15 -10.5 34t13.5 32l110 112q22 22 53 6zM370 945l146 -183 q17 -22 5 -47q-2 -2 -3.5 -4.5t-4 -4t-4 -2.5t-5 -2t-5 -1.5t-6 -0.5h-6h-6.5h-6h-475v-100h221q15 0 29 -20t20 -41l130 -339h294l106 89v503l-342 236zM1050 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5 v500q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe129;" d="M550 1294q72 0 111 -55t39 -139v-106l339 -131q21 -6 41 -19.5t20 -28.5v-342q0 -7 -81 -90t-94 -83h-525q-17 0 -35.5 14t-28.5 28l-9 14l-230 363q-16 31 6 53l112 110q13 13 32 13.5t34 -11.5l121 -84v302q0 84 38 138t110 54zM600 972v203q0 21 -25 30.5t-50 0.5 t-25 -31v-456v-7v-6v-5.5t-0.5 -6t-1.5 -5t-2 -5t-2.5 -4t-4 -4t-4.5 -2.5q-25 -12 -47 5l-183 146l-83 -86l236 -339h503l89 100v293l-339 131q-21 6 -41 19.5t-20 28.5zM450 200h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe130;" d="M350 1100h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5zM600 306v-106q0 -84 -39 -139t-111 -55t-110 54t-38 138v302l-121 -84q-15 -12 -34 -11.5t-32 13.5l-112 110 q-22 22 -6 53l230 363q1 2 3.5 6t10.5 13.5t16.5 17t20 13.5t22.5 6h525q13 0 94 -83t81 -90v-342q0 -15 -20 -28.5t-41 -19.5zM308 900l-236 -339l83 -86l183 146q22 17 47 5q2 -1 4.5 -2.5t4 -4t2.5 -4t2 -5t1.5 -5t0.5 -6v-5.5v-6v-7v-456q0 -22 25 -31t50 0.5t25 30.5 v203q0 15 20 28.5t41 19.5l339 131v293l-89 100h-503z" />
-<glyph unicode="&#xe131;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM914 632l-275 223q-16 13 -27.5 8t-11.5 -26v-137h-275 q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h275v-137q0 -21 11.5 -26t27.5 8l275 223q16 13 16 32t-16 32z" />
-<glyph unicode="&#xe132;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM561 855l-275 -223q-16 -13 -16 -32t16 -32l275 -223q16 -13 27.5 -8 t11.5 26v137h275q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5h-275v137q0 21 -11.5 26t-27.5 -8z" />
-<glyph unicode="&#xe133;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM855 639l-223 275q-13 16 -32 16t-32 -16l-223 -275q-13 -16 -8 -27.5 t26 -11.5h137v-275q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v275h137q21 0 26 11.5t-8 27.5z" />
-<glyph unicode="&#xe134;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM675 900h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-275h-137q-21 0 -26 -11.5 t8 -27.5l223 -275q13 -16 32 -16t32 16l223 275q13 16 8 27.5t-26 11.5h-137v275q0 10 -7.5 17.5t-17.5 7.5z" />
-<glyph unicode="&#xe135;" d="M600 1176q116 0 222.5 -46t184 -123.5t123.5 -184t46 -222.5t-46 -222.5t-123.5 -184t-184 -123.5t-222.5 -46t-222.5 46t-184 123.5t-123.5 184t-46 222.5t46 222.5t123.5 184t184 123.5t222.5 46zM627 1101q-15 -12 -36.5 -20.5t-35.5 -12t-43 -8t-39 -6.5 q-15 -3 -45.5 0t-45.5 -2q-20 -7 -51.5 -26.5t-34.5 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -91t-29.5 -79q-9 -34 5 -93t8 -87q0 -9 17 -44.5t16 -59.5q12 0 23 -5t23.5 -15t19.5 -14q16 -8 33 -15t40.5 -15t34.5 -12q21 -9 52.5 -32t60 -38t57.5 -11 q7 -15 -3 -34t-22.5 -40t-9.5 -38q13 -21 23 -34.5t27.5 -27.5t36.5 -18q0 -7 -3.5 -16t-3.5 -14t5 -17q104 -2 221 112q30 29 46.5 47t34.5 49t21 63q-13 8 -37 8.5t-36 7.5q-15 7 -49.5 15t-51.5 19q-18 0 -41 -0.5t-43 -1.5t-42 -6.5t-38 -16.5q-51 -35 -66 -12 q-4 1 -3.5 25.5t0.5 25.5q-6 13 -26.5 17.5t-24.5 6.5q1 15 -0.5 30.5t-7 28t-18.5 11.5t-31 -21q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q7 -12 18 -24t21.5 -20.5t20 -15t15.5 -10.5l5 -3q2 12 7.5 30.5t8 34.5t-0.5 32q-3 18 3.5 29 t18 22.5t15.5 24.5q6 14 10.5 35t8 31t15.5 22.5t34 22.5q-6 18 10 36q8 0 24 -1.5t24.5 -1.5t20 4.5t20.5 15.5q-10 23 -31 42.5t-37.5 29.5t-49 27t-43.5 23q0 1 2 8t3 11.5t1.5 10.5t-1 9.5t-4.5 4.5q31 -13 58.5 -14.5t38.5 2.5l12 5q5 28 -9.5 46t-36.5 24t-50 15 t-41 20q-18 -4 -37 0zM613 994q0 -17 8 -42t17 -45t9 -23q-8 1 -39.5 5.5t-52.5 10t-37 16.5q3 11 16 29.5t16 25.5q10 -10 19 -10t14 6t13.5 14.5t16.5 12.5z" />
-<glyph unicode="&#xe136;" d="M756 1157q164 92 306 -9l-259 -138l145 -232l251 126q6 -89 -34 -156.5t-117 -110.5q-60 -34 -127 -39.5t-126 16.5l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5t15 37.5l600 599q-34 101 5.5 201.5t135.5 154.5z" />
-<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M100 1196h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 1096h-200v-100h200v100zM100 796h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 696h-500v-100h500v100zM100 396h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 296h-300v-100h300v100z " />
-<glyph unicode="&#xe138;" d="M150 1200h900q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM700 500v-300l-200 -200v500l-350 500h900z" />
-<glyph unicode="&#xe139;" d="M500 1200h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5zM500 1100v-100h200v100h-200zM1200 400v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v200h1200z" />
-<glyph unicode="&#xe140;" d="M50 1200h300q21 0 25 -10.5t-10 -24.5l-94 -94l199 -199q7 -8 7 -18t-7 -18l-106 -106q-8 -7 -18 -7t-18 7l-199 199l-94 -94q-14 -14 -24.5 -10t-10.5 25v300q0 21 14.5 35.5t35.5 14.5zM850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-199 -199q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l199 199l-94 94q-14 14 -10 24.5t25 10.5zM364 470l106 -106q7 -8 7 -18t-7 -18l-199 -199l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l199 199 q8 7 18 7t18 -7zM1071 271l94 94q14 14 24.5 10t10.5 -25v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -25 10.5t10 24.5l94 94l-199 199q-7 8 -7 18t7 18l106 106q8 7 18 7t18 -7z" />
-<glyph unicode="&#xe141;" d="M596 1192q121 0 231.5 -47.5t190 -127t127 -190t47.5 -231.5t-47.5 -231.5t-127 -190.5t-190 -127t-231.5 -47t-231.5 47t-190.5 127t-127 190.5t-47 231.5t47 231.5t127 190t190.5 127t231.5 47.5zM596 1010q-112 0 -207.5 -55.5t-151 -151t-55.5 -207.5t55.5 -207.5 t151 -151t207.5 -55.5t207.5 55.5t151 151t55.5 207.5t-55.5 207.5t-151 151t-207.5 55.5zM454.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38.5 -16.5t-38.5 16.5t-16 39t16 38.5t38.5 16zM754.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38 -16.5q-14 0 -29 10l-55 -145 q17 -23 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 23 16 39t38.5 16zM345.5 709q22.5 0 38.5 -16t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16zM854.5 709q22.5 0 38.5 -16 t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16z" />
-<glyph unicode="&#xe142;" d="M546 173l469 470q91 91 99 192q7 98 -52 175.5t-154 94.5q-22 4 -47 4q-34 0 -66.5 -10t-56.5 -23t-55.5 -38t-48 -41.5t-48.5 -47.5q-376 -375 -391 -390q-30 -27 -45 -41.5t-37.5 -41t-32 -46.5t-16 -47.5t-1.5 -56.5q9 -62 53.5 -95t99.5 -33q74 0 125 51l548 548 q36 36 20 75q-7 16 -21.5 26t-32.5 10q-26 0 -50 -23q-13 -12 -39 -38l-341 -338q-15 -15 -35.5 -15.5t-34.5 13.5t-14 34.5t14 34.5q327 333 361 367q35 35 67.5 51.5t78.5 16.5q14 0 29 -1q44 -8 74.5 -35.5t43.5 -68.5q14 -47 2 -96.5t-47 -84.5q-12 -11 -32 -32 t-79.5 -81t-114.5 -115t-124.5 -123.5t-123 -119.5t-96.5 -89t-57 -45q-56 -27 -120 -27q-70 0 -129 32t-93 89q-48 78 -35 173t81 163l511 511q71 72 111 96q91 55 198 55q80 0 152 -33q78 -36 129.5 -103t66.5 -154q17 -93 -11 -183.5t-94 -156.5l-482 -476 q-15 -15 -36 -16t-37 14t-17.5 34t14.5 35z" />
-<glyph unicode="&#xe143;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104zM896 972q-33 0 -64.5 -19t-56.5 -46t-47.5 -53.5t-43.5 -45.5t-37.5 -19t-36 19t-40 45.5t-43 53.5t-54 46t-65.5 19q-67 0 -122.5 -55.5t-55.5 -132.5q0 -23 13.5 -51t46 -65t57.5 -63t76 -75l22 -22q15 -14 44 -44t50.5 -51t46 -44t41 -35t23 -12 t23.5 12t42.5 36t46 44t52.5 52t44 43q4 4 12 13q43 41 63.5 62t52 55t46 55t26 46t11.5 44q0 79 -53 133.5t-120 54.5z" />
-<glyph unicode="&#xe144;" d="M776.5 1214q93.5 0 159.5 -66l141 -141q66 -66 66 -160q0 -42 -28 -95.5t-62 -87.5l-29 -29q-31 53 -77 99l-18 18l95 95l-247 248l-389 -389l212 -212l-105 -106l-19 18l-141 141q-66 66 -66 159t66 159l283 283q65 66 158.5 66zM600 706l105 105q10 -8 19 -17l141 -141 q66 -66 66 -159t-66 -159l-283 -283q-66 -66 -159 -66t-159 66l-141 141q-66 66 -66 159.5t66 159.5l55 55q29 -55 75 -102l18 -17l-95 -95l247 -248l389 389z" />
-<glyph unicode="&#xe145;" d="M603 1200q85 0 162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5v953q0 21 30 46.5t81 48t129 37.5t163 15zM300 1000v-700h600v700h-600zM600 254q-43 0 -73.5 -30.5t-30.5 -73.5t30.5 -73.5t73.5 -30.5t73.5 30.5 t30.5 73.5t-30.5 73.5t-73.5 30.5z" />
-<glyph unicode="&#xe146;" d="M902 1185l283 -282q15 -15 15 -36t-14.5 -35.5t-35.5 -14.5t-35 15l-36 35l-279 -267v-300l-212 210l-308 -307l-280 -203l203 280l307 308l-210 212h300l267 279l-35 36q-15 14 -15 35t14.5 35.5t35.5 14.5t35 -15z" />
-<glyph unicode="&#xe148;" d="M700 1248v-78q38 -5 72.5 -14.5t75.5 -31.5t71 -53.5t52 -84t24 -118.5h-159q-4 36 -10.5 59t-21 45t-40 35.5t-64.5 20.5v-307l64 -13q34 -7 64 -16.5t70 -32t67.5 -52.5t47.5 -80t20 -112q0 -139 -89 -224t-244 -97v-77h-100v79q-150 16 -237 103q-40 40 -52.5 93.5 t-15.5 139.5h139q5 -77 48.5 -126t117.5 -65v335l-27 8q-46 14 -79 26.5t-72 36t-63 52t-40 72.5t-16 98q0 70 25 126t67.5 92t94.5 57t110 27v77h100zM600 754v274q-29 -4 -50 -11t-42 -21.5t-31.5 -41.5t-10.5 -65q0 -29 7 -50.5t16.5 -34t28.5 -22.5t31.5 -14t37.5 -10 q9 -3 13 -4zM700 547v-310q22 2 42.5 6.5t45 15.5t41.5 27t29 42t12 59.5t-12.5 59.5t-38 44.5t-53 31t-66.5 24.5z" />
-<glyph unicode="&#xe149;" d="M561 1197q84 0 160.5 -40t123.5 -109.5t47 -147.5h-153q0 40 -19.5 71.5t-49.5 48.5t-59.5 26t-55.5 9q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -26 13.5 -63t26.5 -61t37 -66q6 -9 9 -14h241v-100h-197q8 -50 -2.5 -115t-31.5 -95q-45 -62 -99 -112 q34 10 83 17.5t71 7.5q32 1 102 -16t104 -17q83 0 136 30l50 -147q-31 -19 -58 -30.5t-55 -15.5t-42 -4.5t-46 -0.5q-23 0 -76 17t-111 32.5t-96 11.5q-39 -3 -82 -16t-67 -25l-23 -11l-55 145q4 3 16 11t15.5 10.5t13 9t15.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221v100h166q-23 47 -44 104q-7 20 -12 41.5t-6 55.5t6 66.5t29.5 70.5t58.5 71q97 88 263 88z" />
-<glyph unicode="&#xe150;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM935 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-900h-200v900h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
-<glyph unicode="&#xe151;" d="M1000 700h-100v100h-100v-100h-100v500h300v-500zM400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM801 1100v-200h100v200h-100zM1000 350l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150z " />
-<glyph unicode="&#xe152;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 1050l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150zM1000 0h-100v100h-100v-100h-100v500h300v-500zM801 400v-200h100v200h-100z " />
-<glyph unicode="&#xe153;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 700h-100v400h-100v100h200v-500zM1100 0h-100v100h-200v400h300v-500zM901 400v-200h100v200h-100z" />
-<glyph unicode="&#xe154;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1100 700h-100v100h-200v400h300v-500zM901 1100v-200h100v200h-100zM1000 0h-100v400h-100v100h200v-500z" />
-<glyph unicode="&#xe155;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM900 1000h-200v200h200v-200zM1000 700h-300v200h300v-200zM1100 400h-400v200h400v-200zM1200 100h-500v200h500v-200z" />
-<glyph unicode="&#xe156;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1200 1000h-500v200h500v-200zM1100 700h-400v200h400v-200zM1000 400h-300v200h300v-200zM900 100h-200v200h200v-200z" />
-<glyph unicode="&#xe157;" d="M350 1100h400q162 0 256 -93.5t94 -256.5v-400q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5z" />
-<glyph unicode="&#xe158;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-163 0 -256.5 92.5t-93.5 257.5v400q0 163 94 256.5t256 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM440 770l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
-<glyph unicode="&#xe159;" d="M350 1100h400q163 0 256.5 -94t93.5 -256v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 163 92.5 256.5t257.5 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM350 700h400q21 0 26.5 -12t-6.5 -28l-190 -253q-12 -17 -30 -17t-30 17l-190 253q-12 16 -6.5 28t26.5 12z" />
-<glyph unicode="&#xe160;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -163 -92.5 -256.5t-257.5 -93.5h-400q-163 0 -256.5 94t-93.5 256v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM580 693l190 -253q12 -16 6.5 -28t-26.5 -12h-400q-21 0 -26.5 12t6.5 28l190 253q12 17 30 17t30 -17z" />
-<glyph unicode="&#xe161;" d="M550 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h450q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-450q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM338 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
-<glyph unicode="&#xe162;" d="M793 1182l9 -9q8 -10 5 -27q-3 -11 -79 -225.5t-78 -221.5l300 1q24 0 32.5 -17.5t-5.5 -35.5q-1 0 -133.5 -155t-267 -312.5t-138.5 -162.5q-12 -15 -26 -15h-9l-9 8q-9 11 -4 32q2 9 42 123.5t79 224.5l39 110h-302q-23 0 -31 19q-10 21 6 41q75 86 209.5 237.5 t228 257t98.5 111.5q9 16 25 16h9z" />
-<glyph unicode="&#xe163;" d="M350 1100h400q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-450q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h450q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400 q0 165 92.5 257.5t257.5 92.5zM938 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
-<glyph unicode="&#xe164;" d="M750 1200h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -10.5 -25t-24.5 10l-109 109l-312 -312q-15 -15 -35.5 -15t-35.5 15l-141 141q-15 15 -15 35.5t15 35.5l312 312l-109 109q-14 14 -10 24.5t25 10.5zM456 900h-156q-41 0 -70.5 -29.5t-29.5 -70.5v-500 q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v148l200 200v-298q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5h300z" />
-<glyph unicode="&#xe165;" d="M600 1186q119 0 227.5 -46.5t187 -125t125 -187t46.5 -227.5t-46.5 -227.5t-125 -187t-187 -125t-227.5 -46.5t-227.5 46.5t-187 125t-125 187t-46.5 227.5t46.5 227.5t125 187t187 125t227.5 46.5zM600 1022q-115 0 -212 -56.5t-153.5 -153.5t-56.5 -212t56.5 -212 t153.5 -153.5t212 -56.5t212 56.5t153.5 153.5t56.5 212t-56.5 212t-153.5 153.5t-212 56.5zM600 794q80 0 137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137t57 137t137 57z" />
-<glyph unicode="&#xe166;" d="M450 1200h200q21 0 35.5 -14.5t14.5 -35.5v-350h245q20 0 25 -11t-9 -26l-383 -426q-14 -15 -33.5 -15t-32.5 15l-379 426q-13 15 -8.5 26t25.5 11h250v350q0 21 14.5 35.5t35.5 14.5zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
-<glyph unicode="&#xe167;" d="M583 1182l378 -435q14 -15 9 -31t-26 -16h-244v-250q0 -20 -17 -35t-39 -15h-200q-20 0 -32 14.5t-12 35.5v250h-250q-20 0 -25.5 16.5t8.5 31.5l383 431q14 16 33.5 17t33.5 -14zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
-<glyph unicode="&#xe168;" d="M396 723l369 369q7 7 17.5 7t17.5 -7l139 -139q7 -8 7 -18.5t-7 -17.5l-525 -525q-7 -8 -17.5 -8t-17.5 8l-292 291q-7 8 -7 18t7 18l139 139q8 7 18.5 7t17.5 -7zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50 h-100z" />
-<glyph unicode="&#xe169;" d="M135 1023l142 142q14 14 35 14t35 -14l77 -77l-212 -212l-77 76q-14 15 -14 36t14 35zM655 855l210 210q14 14 24.5 10t10.5 -25l-2 -599q-1 -20 -15.5 -35t-35.5 -15l-597 -1q-21 0 -25 10.5t10 24.5l208 208l-154 155l212 212zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5 v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
-<glyph unicode="&#xe170;" d="M350 1200l599 -2q20 -1 35 -15.5t15 -35.5l1 -597q0 -21 -10.5 -25t-24.5 10l-208 208l-155 -154l-212 212l155 154l-210 210q-14 14 -10 24.5t25 10.5zM524 512l-76 -77q-15 -14 -36 -14t-35 14l-142 142q-14 14 -14 35t14 35l77 77zM50 300h1000q21 0 35.5 -14.5 t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
-<glyph unicode="&#xe171;" d="M1200 103l-483 276l-314 -399v423h-399l1196 796v-1096zM483 424v-230l683 953z" />
-<glyph unicode="&#xe172;" d="M1100 1000v-850q0 -21 -14.5 -35.5t-35.5 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200z" />
-<glyph unicode="&#xe173;" d="M1100 1000l-2 -149l-299 -299l-95 95q-9 9 -21.5 9t-21.5 -9l-149 -147h-312v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1132 638l106 -106q7 -7 7 -17.5t-7 -17.5l-420 -421q-8 -7 -18 -7 t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l297 297q7 7 17.5 7t17.5 -7z" />
-<glyph unicode="&#xe174;" d="M1100 1000v-269l-103 -103l-134 134q-15 15 -33.5 16.5t-34.5 -12.5l-266 -266h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1202 572l70 -70q15 -15 15 -35.5t-15 -35.5l-131 -131 l131 -131q15 -15 15 -35.5t-15 -35.5l-70 -70q-15 -15 -35.5 -15t-35.5 15l-131 131l-131 -131q-15 -15 -35.5 -15t-35.5 15l-70 70q-15 15 -15 35.5t15 35.5l131 131l-131 131q-15 15 -15 35.5t15 35.5l70 70q15 15 35.5 15t35.5 -15l131 -131l131 131q15 15 35.5 15 t35.5 -15z" />
-<glyph unicode="&#xe175;" d="M1100 1000v-300h-350q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM850 600h100q21 0 35.5 -14.5t14.5 -35.5v-250h150q21 0 25 -10.5t-10 -24.5 l-230 -230q-14 -14 -35 -14t-35 14l-230 230q-14 14 -10 24.5t25 10.5h150v250q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe176;" d="M1100 1000v-400l-165 165q-14 15 -35 15t-35 -15l-263 -265h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM935 565l230 -229q14 -15 10 -25.5t-25 -10.5h-150v-250q0 -20 -14.5 -35 t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35v250h-150q-21 0 -25 10.5t10 25.5l230 229q14 15 35 15t35 -15z" />
-<glyph unicode="&#xe177;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-150h-1200v150q0 21 14.5 35.5t35.5 14.5zM1200 800v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v550h1200zM100 500v-200h400v200h-400z" />
-<glyph unicode="&#xe178;" d="M935 1165l248 -230q14 -14 14 -35t-14 -35l-248 -230q-14 -14 -24.5 -10t-10.5 25v150h-400v200h400v150q0 21 10.5 25t24.5 -10zM200 800h-50q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v-200zM400 800h-100v200h100v-200zM18 435l247 230 q14 14 24.5 10t10.5 -25v-150h400v-200h-400v-150q0 -21 -10.5 -25t-24.5 10l-247 230q-15 14 -15 35t15 35zM900 300h-100v200h100v-200zM1000 500h51q20 0 34.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-34.5 -14.5h-51v200z" />
-<glyph unicode="&#xe179;" d="M862 1073l276 116q25 18 43.5 8t18.5 -41v-1106q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v397q-4 1 -11 5t-24 17.5t-30 29t-24 42t-11 56.5v359q0 31 18.5 65t43.5 52zM550 1200q22 0 34.5 -12.5t14.5 -24.5l1 -13v-450q0 -28 -10.5 -59.5 t-25 -56t-29 -45t-25.5 -31.5l-10 -11v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447q-4 4 -11 11.5t-24 30.5t-30 46t-24 55t-11 60v450q0 2 0.5 5.5t4 12t8.5 15t14.5 12t22.5 5.5q20 0 32.5 -12.5t14.5 -24.5l3 -13v-350h100v350v5.5t2.5 12 t7 15t15 12t25.5 5.5q23 0 35.5 -12.5t13.5 -24.5l1 -13v-350h100v350q0 2 0.5 5.5t3 12t7 15t15 12t24.5 5.5z" />
-<glyph unicode="&#xe180;" d="M1200 1100v-56q-4 0 -11 -0.5t-24 -3t-30 -7.5t-24 -15t-11 -24v-888q0 -22 25 -34.5t50 -13.5l25 -2v-56h-400v56q75 0 87.5 6.5t12.5 43.5v394h-500v-394q0 -37 12.5 -43.5t87.5 -6.5v-56h-400v56q4 0 11 0.5t24 3t30 7.5t24 15t11 24v888q0 22 -25 34.5t-50 13.5 l-25 2v56h400v-56q-75 0 -87.5 -6.5t-12.5 -43.5v-394h500v394q0 37 -12.5 43.5t-87.5 6.5v56h400z" />
-<glyph unicode="&#xe181;" d="M675 1000h375q21 0 35.5 -14.5t14.5 -35.5v-150h-105l-295 -98v98l-200 200h-400l100 100h375zM100 900h300q41 0 70.5 -29.5t29.5 -70.5v-500q0 -41 -29.5 -70.5t-70.5 -29.5h-300q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5zM100 800v-200h300v200 h-300zM1100 535l-400 -133v163l400 133v-163zM100 500v-200h300v200h-300zM1100 398v-248q0 -21 -14.5 -35.5t-35.5 -14.5h-375l-100 -100h-375l-100 100h400l200 200h105z" />
-<glyph unicode="&#xe182;" d="M17 1007l162 162q17 17 40 14t37 -22l139 -194q14 -20 11 -44.5t-20 -41.5l-119 -118q102 -142 228 -268t267 -227l119 118q17 17 42.5 19t44.5 -12l192 -136q19 -14 22.5 -37.5t-13.5 -40.5l-163 -162q-3 -1 -9.5 -1t-29.5 2t-47.5 6t-62.5 14.5t-77.5 26.5t-90 42.5 t-101.5 60t-111 83t-119 108.5q-74 74 -133.5 150.5t-94.5 138.5t-60 119.5t-34.5 100t-15 74.5t-4.5 48z" />
-<glyph unicode="&#xe183;" d="M600 1100q92 0 175 -10.5t141.5 -27t108.5 -36.5t81.5 -40t53.5 -37t31 -27l9 -10v-200q0 -21 -14.5 -33t-34.5 -9l-202 34q-20 3 -34.5 20t-14.5 38v146q-141 24 -300 24t-300 -24v-146q0 -21 -14.5 -38t-34.5 -20l-202 -34q-20 -3 -34.5 9t-14.5 33v200q3 4 9.5 10.5 t31 26t54 37.5t80.5 39.5t109 37.5t141 26.5t175 10.5zM600 795q56 0 97 -9.5t60 -23.5t30 -28t12 -24l1 -10v-50l365 -303q14 -15 24.5 -40t10.5 -45v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v212q0 20 10.5 45t24.5 40l365 303v50 q0 4 1 10.5t12 23t30 29t60 22.5t97 10z" />
-<glyph unicode="&#xe184;" d="M1100 700l-200 -200h-600l-200 200v500h200v-200h200v200h200v-200h200v200h200v-500zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5 t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe185;" d="M700 1100h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-1000h300v1000q0 41 -29.5 70.5t-70.5 29.5zM1100 800h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-700h300v700q0 41 -29.5 70.5t-70.5 29.5zM400 0h-300v400q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-400z " />
-<glyph unicode="&#xe186;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
-<glyph unicode="&#xe187;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 300h-100v200h-100v-200h-100v500h100v-200h100v200h100v-500zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
-<glyph unicode="&#xe188;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-300h200v-100h-300v500h300v-100zM900 700h-200v-300h200v-100h-300v500h300v-100z" />
-<glyph unicode="&#xe189;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 400l-300 150l300 150v-300zM900 550l-300 -150v300z" />
-<glyph unicode="&#xe190;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM900 300h-700v500h700v-500zM800 700h-130q-38 0 -66.5 -43t-28.5 -108t27 -107t68 -42h130v300zM300 700v-300 h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130z" />
-<glyph unicode="&#xe191;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 300h-100v400h-100v100h200v-500z M700 300h-100v100h100v-100z" />
-<glyph unicode="&#xe192;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM300 700h200v-400h-300v500h100v-100zM900 300h-100v400h-100v100h200v-500zM300 600v-200h100v200h-100z M700 300h-100v100h100v-100z" />
-<glyph unicode="&#xe193;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 500l-199 -200h-100v50l199 200v150h-200v100h300v-300zM900 300h-100v400h-100v100h200v-500zM701 300h-100 v100h100v-100z" />
-<glyph unicode="&#xe194;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700h-300v-200h300v-100h-300l-100 100v200l100 100h300v-100z" />
-<glyph unicode="&#xe195;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700v-100l-50 -50l100 -100v-50h-100l-100 100h-150v-100h-100v400h300zM500 700v-100h200v100h-200z" />
-<glyph unicode="&#xe197;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -207t-85 -207t-205 -86.5h-128v250q0 21 -14.5 35.5t-35.5 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-250h-222q-80 0 -136 57.5t-56 136.5q0 69 43 122.5t108 67.5q-2 19 -2 37q0 100 49 185 t134 134t185 49zM525 500h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -244q-13 -16 -32 -16t-32 16l-223 244q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe198;" d="M502 1089q110 0 201 -59.5t135 -156.5q43 15 89 15q121 0 206 -86.5t86 -206.5q0 -99 -60 -181t-150 -110l-378 360q-13 16 -31.5 16t-31.5 -16l-381 -365h-9q-79 0 -135.5 57.5t-56.5 136.5q0 69 43 122.5t108 67.5q-2 19 -2 38q0 100 49 184.5t133.5 134t184.5 49.5z M632 467l223 -228q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5q199 204 223 228q19 19 31.5 19t32.5 -19z" />
-<glyph unicode="&#xe199;" d="M700 100v100h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170l-270 -300h400v-100h-50q-21 0 -35.5 -14.5t-14.5 -35.5v-50h400v50q0 21 -14.5 35.5t-35.5 14.5h-50z" />
-<glyph unicode="&#xe200;" d="M600 1179q94 0 167.5 -56.5t99.5 -145.5q89 -6 150.5 -71.5t61.5 -155.5q0 -61 -29.5 -112.5t-79.5 -82.5q9 -29 9 -55q0 -74 -52.5 -126.5t-126.5 -52.5q-55 0 -100 30v-251q21 0 35.5 -14.5t14.5 -35.5v-50h-300v50q0 21 14.5 35.5t35.5 14.5v251q-45 -30 -100 -30 q-74 0 -126.5 52.5t-52.5 126.5q0 18 4 38q-47 21 -75.5 65t-28.5 97q0 74 52.5 126.5t126.5 52.5q5 0 23 -2q0 2 -1 10t-1 13q0 116 81.5 197.5t197.5 81.5z" />
-<glyph unicode="&#xe201;" d="M1010 1010q111 -111 150.5 -260.5t0 -299t-150.5 -260.5q-83 -83 -191.5 -126.5t-218.5 -43.5t-218.5 43.5t-191.5 126.5q-111 111 -150.5 260.5t0 299t150.5 260.5q83 83 191.5 126.5t218.5 43.5t218.5 -43.5t191.5 -126.5zM476 1065q-4 0 -8 -1q-121 -34 -209.5 -122.5 t-122.5 -209.5q-4 -12 2.5 -23t18.5 -14l36 -9q3 -1 7 -1q23 0 29 22q27 96 98 166q70 71 166 98q11 3 17.5 13.5t3.5 22.5l-9 35q-3 13 -14 19q-7 4 -15 4zM512 920q-4 0 -9 -2q-80 -24 -138.5 -82.5t-82.5 -138.5q-4 -13 2 -24t19 -14l34 -9q4 -1 8 -1q22 0 28 21 q18 58 58.5 98.5t97.5 58.5q12 3 18 13.5t3 21.5l-9 35q-3 12 -14 19q-7 4 -15 4zM719.5 719.5q-49.5 49.5 -119.5 49.5t-119.5 -49.5t-49.5 -119.5t49.5 -119.5t119.5 -49.5t119.5 49.5t49.5 119.5t-49.5 119.5zM855 551q-22 0 -28 -21q-18 -58 -58.5 -98.5t-98.5 -57.5 q-11 -4 -17 -14.5t-3 -21.5l9 -35q3 -12 14 -19q7 -4 15 -4q4 0 9 2q80 24 138.5 82.5t82.5 138.5q4 13 -2.5 24t-18.5 14l-34 9q-4 1 -8 1zM1000 515q-23 0 -29 -22q-27 -96 -98 -166q-70 -71 -166 -98q-11 -3 -17.5 -13.5t-3.5 -22.5l9 -35q3 -13 14 -19q7 -4 15 -4 q4 0 8 1q121 34 209.5 122.5t122.5 209.5q4 12 -2.5 23t-18.5 14l-36 9q-3 1 -7 1z" />
-<glyph unicode="&#xe202;" d="M700 800h300v-380h-180v200h-340v-200h-380v755q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM700 300h162l-212 -212l-212 212h162v200h100v-200zM520 0h-395q-10 0 -17.5 7.5t-7.5 17.5v395zM1000 220v-195q0 -10 -7.5 -17.5t-17.5 -7.5h-195z" />
-<glyph unicode="&#xe203;" d="M700 800h300v-520l-350 350l-550 -550v1095q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM862 200h-162v-200h-100v200h-162l212 212zM480 0h-355q-10 0 -17.5 7.5t-7.5 17.5v55h380v-80zM1000 80v-55q0 -10 -7.5 -17.5t-17.5 -7.5h-155v80h180z" />
-<glyph unicode="&#xe204;" d="M1162 800h-162v-200h100l100 -100h-300v300h-162l212 212zM200 800h200q27 0 40 -2t29.5 -10.5t23.5 -30t7 -57.5h300v-100h-600l-200 -350v450h100q0 36 7 57.5t23.5 30t29.5 10.5t40 2zM800 400h240l-240 -400h-800l300 500h500v-100z" />
-<glyph unicode="&#xe205;" d="M650 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM1000 850v150q41 0 70.5 -29.5t29.5 -70.5v-800 q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-1 0 -20 4l246 246l-326 326v324q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM412 250l-212 -212v162h-200v100h200v162z" />
-<glyph unicode="&#xe206;" d="M450 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM800 850v150q41 0 70.5 -29.5t29.5 -70.5v-500 h-200v-300h200q0 -36 -7 -57.5t-23.5 -30t-29.5 -10.5t-40 -2h-600q-41 0 -70.5 29.5t-29.5 70.5v800q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM1212 250l-212 -212v162h-200v100h200v162z" />
-<glyph unicode="&#xe209;" d="M658 1197l637 -1104q23 -38 7 -65.5t-60 -27.5h-1276q-44 0 -60 27.5t7 65.5l637 1104q22 39 54 39t54 -39zM704 800h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM500 300v-100h200 v100h-200z" />
-<glyph unicode="&#xe210;" d="M425 1100h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM825 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM25 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5zM425 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5 v150q0 10 7.5 17.5t17.5 7.5zM25 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe211;" d="M700 1200h100v-200h-100v-100h350q62 0 86.5 -39.5t-3.5 -94.5l-66 -132q-41 -83 -81 -134h-772q-40 51 -81 134l-66 132q-28 55 -3.5 94.5t86.5 39.5h350v100h-100v200h100v100h200v-100zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100 h-950l138 100h-13q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe212;" d="M600 1300q40 0 68.5 -29.5t28.5 -70.5h-194q0 41 28.5 70.5t68.5 29.5zM443 1100h314q18 -37 18 -75q0 -8 -3 -25h328q41 0 44.5 -16.5t-30.5 -38.5l-175 -145h-678l-178 145q-34 22 -29 38.5t46 16.5h328q-3 17 -3 25q0 38 18 75zM250 700h700q21 0 35.5 -14.5 t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-150v-200l275 -200h-950l275 200v200h-150q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe213;" d="M600 1181q75 0 128 -53t53 -128t-53 -128t-128 -53t-128 53t-53 128t53 128t128 53zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13 l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe214;" d="M600 1300q47 0 92.5 -53.5t71 -123t25.5 -123.5q0 -78 -55.5 -133.5t-133.5 -55.5t-133.5 55.5t-55.5 133.5q0 62 34 143l144 -143l111 111l-163 163q34 26 63 26zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45 zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe215;" d="M600 1200l300 -161v-139h-300q0 -57 18.5 -108t50 -91.5t63 -72t70 -67.5t57.5 -61h-530q-60 83 -90.5 177.5t-30.5 178.5t33 164.5t87.5 139.5t126 96.5t145.5 41.5v-98zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100 h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe216;" d="M600 1300q41 0 70.5 -29.5t29.5 -70.5v-78q46 -26 73 -72t27 -100v-50h-400v50q0 54 27 100t73 72v78q0 41 29.5 70.5t70.5 29.5zM400 800h400q54 0 100 -27t72 -73h-172v-100h200v-100h-200v-100h200v-100h-200v-100h200q0 -83 -58.5 -141.5t-141.5 -58.5h-400 q-83 0 -141.5 58.5t-58.5 141.5v400q0 83 58.5 141.5t141.5 58.5z" />
-<glyph unicode="&#xe218;" d="M150 1100h900q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM125 400h950q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-283l224 -224q13 -13 13 -31.5t-13 -32 t-31.5 -13.5t-31.5 13l-88 88h-524l-87 -88q-13 -13 -32 -13t-32 13.5t-13 32t13 31.5l224 224h-289q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM541 300l-100 -100h324l-100 100h-124z" />
-<glyph unicode="&#xe219;" d="M200 1100h800q83 0 141.5 -58.5t58.5 -141.5v-200h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100v200q0 83 58.5 141.5t141.5 58.5zM100 600h1000q41 0 70.5 -29.5 t29.5 -70.5v-300h-1200v300q0 41 29.5 70.5t70.5 29.5zM300 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200zM1100 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200z" />
-<glyph unicode="&#xe221;" d="M480 1165l682 -683q31 -31 31 -75.5t-31 -75.5l-131 -131h-481l-517 518q-32 31 -32 75.5t32 75.5l295 296q31 31 75.5 31t76.5 -31zM108 794l342 -342l303 304l-341 341zM250 100h800q21 0 35.5 -14.5t14.5 -35.5v-50h-900v50q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe223;" d="M1057 647l-189 506q-8 19 -27.5 33t-40.5 14h-400q-21 0 -40.5 -14t-27.5 -33l-189 -506q-8 -19 1.5 -33t30.5 -14h625v-150q0 -21 14.5 -35.5t35.5 -14.5t35.5 14.5t14.5 35.5v150h125q21 0 30.5 14t1.5 33zM897 0h-595v50q0 21 14.5 35.5t35.5 14.5h50v50 q0 21 14.5 35.5t35.5 14.5h48v300h200v-300h47q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-50z" />
-<glyph unicode="&#xe224;" d="M900 800h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-375v591l-300 300v84q0 10 7.5 17.5t17.5 7.5h375v-400zM1200 900h-200v200zM400 600h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-650q-10 0 -17.5 7.5t-7.5 17.5v950q0 10 7.5 17.5t17.5 7.5h375v-400zM700 700h-200v200z " />
-<glyph unicode="&#xe225;" d="M484 1095h195q75 0 146 -32.5t124 -86t89.5 -122.5t48.5 -142q18 -14 35 -20q31 -10 64.5 6.5t43.5 48.5q10 34 -15 71q-19 27 -9 43q5 8 12.5 11t19 -1t23.5 -16q41 -44 39 -105q-3 -63 -46 -106.5t-104 -43.5h-62q-7 -55 -35 -117t-56 -100l-39 -234q-3 -20 -20 -34.5 t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l12 70q-49 -14 -91 -14h-195q-24 0 -65 8l-11 -64q-3 -20 -20 -34.5t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l26 157q-84 74 -128 175l-159 53q-19 7 -33 26t-14 40v50q0 21 14.5 35.5t35.5 14.5h124q11 87 56 166l-111 95 q-16 14 -12.5 23.5t24.5 9.5h203q116 101 250 101zM675 1000h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h250q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5t-17.5 7.5z" />
-<glyph unicode="&#xe226;" d="M641 900l423 247q19 8 42 2.5t37 -21.5l32 -38q14 -15 12.5 -36t-17.5 -34l-139 -120h-390zM50 1100h106q67 0 103 -17t66 -71l102 -212h823q21 0 35.5 -14.5t14.5 -35.5v-50q0 -21 -14 -40t-33 -26l-737 -132q-23 -4 -40 6t-26 25q-42 67 -100 67h-300q-62 0 -106 44 t-44 106v200q0 62 44 106t106 44zM173 928h-80q-19 0 -28 -14t-9 -35v-56q0 -51 42 -51h134q16 0 21.5 8t5.5 24q0 11 -16 45t-27 51q-18 28 -43 28zM550 727q-32 0 -54.5 -22.5t-22.5 -54.5t22.5 -54.5t54.5 -22.5t54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5zM130 389 l152 130q18 19 34 24t31 -3.5t24.5 -17.5t25.5 -28q28 -35 50.5 -51t48.5 -13l63 5l48 -179q13 -61 -3.5 -97.5t-67.5 -79.5l-80 -69q-47 -40 -109 -35.5t-103 51.5l-130 151q-40 47 -35.5 109.5t51.5 102.5zM380 377l-102 -88q-31 -27 2 -65l37 -43q13 -15 27.5 -19.5 t31.5 6.5l61 53q19 16 14 49q-2 20 -12 56t-17 45q-11 12 -19 14t-23 -8z" />
-<glyph unicode="&#xe227;" d="M625 1200h150q10 0 17.5 -7.5t7.5 -17.5v-109q79 -33 131 -87.5t53 -128.5q1 -46 -15 -84.5t-39 -61t-46 -38t-39 -21.5l-17 -6q6 0 15 -1.5t35 -9t50 -17.5t53 -30t50 -45t35.5 -64t14.5 -84q0 -59 -11.5 -105.5t-28.5 -76.5t-44 -51t-49.5 -31.5t-54.5 -16t-49.5 -6.5 t-43.5 -1v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-100v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-175q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v600h-75q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5h175v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h100v75q0 10 7.5 17.5t17.5 7.5zM400 900v-200h263q28 0 48.5 10.5t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-263zM400 500v-200h363q28 0 48.5 10.5 t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-363z" />
-<glyph unicode="&#xe230;" d="M212 1198h780q86 0 147 -61t61 -147v-416q0 -51 -18 -142.5t-36 -157.5l-18 -66q-29 -87 -93.5 -146.5t-146.5 -59.5h-572q-82 0 -147 59t-93 147q-8 28 -20 73t-32 143.5t-20 149.5v416q0 86 61 147t147 61zM600 1045q-70 0 -132.5 -11.5t-105.5 -30.5t-78.5 -41.5 t-57 -45t-36 -41t-20.5 -30.5l-6 -12l156 -243h560l156 243q-2 5 -6 12.5t-20 29.5t-36.5 42t-57 44.5t-79 42t-105 29.5t-132.5 12zM762 703h-157l195 261z" />
-<glyph unicode="&#xe231;" d="M475 1300h150q103 0 189 -86t86 -189v-500q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
-<glyph unicode="&#xe232;" d="M475 1300h96q0 -150 89.5 -239.5t239.5 -89.5v-446q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
-<glyph unicode="&#xe233;" d="M1294 767l-638 -283l-378 170l-78 -60v-224l100 -150v-199l-150 148l-150 -149v200l100 150v250q0 4 -0.5 10.5t0 9.5t1 8t3 8t6.5 6l47 40l-147 65l642 283zM1000 380l-350 -166l-350 166v147l350 -165l350 165v-147z" />
-<glyph unicode="&#xe234;" d="M250 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM650 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM1050 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
-<glyph unicode="&#xe235;" d="M550 1100q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 700q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 300q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
-<glyph unicode="&#xe236;" d="M125 1100h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM125 700h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM125 300h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
-<glyph unicode="&#xe237;" d="M350 1200h500q162 0 256 -93.5t94 -256.5v-500q0 -165 -93.5 -257.5t-256.5 -92.5h-500q-165 0 -257.5 92.5t-92.5 257.5v500q0 165 92.5 257.5t257.5 92.5zM900 1000h-600q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h600q41 0 70.5 29.5 t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5zM350 900h500q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-500q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 14.5 35.5t35.5 14.5zM400 800v-200h400v200h-400z" />
-<glyph unicode="&#xe238;" d="M150 1100h1000q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe239;" d="M650 1187q87 -67 118.5 -156t0 -178t-118.5 -155q-87 66 -118.5 155t0 178t118.5 156zM300 800q124 0 212 -88t88 -212q-124 0 -212 88t-88 212zM1000 800q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM300 500q124 0 212 -88t88 -212q-124 0 -212 88t-88 212z M1000 500q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM700 199v-144q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v142q40 -4 43 -4q17 0 57 6z" />
-<glyph unicode="&#xe240;" d="M745 878l69 19q25 6 45 -12l298 -295q11 -11 15 -26.5t-2 -30.5q-5 -14 -18 -23.5t-28 -9.5h-8q1 0 1 -13q0 -29 -2 -56t-8.5 -62t-20 -63t-33 -53t-51 -39t-72.5 -14h-146q-184 0 -184 288q0 24 10 47q-20 4 -62 4t-63 -4q11 -24 11 -47q0 -288 -184 -288h-142 q-48 0 -84.5 21t-56 51t-32 71.5t-16 75t-3.5 68.5q0 13 2 13h-7q-15 0 -27.5 9.5t-18.5 23.5q-6 15 -2 30.5t15 25.5l298 296q20 18 46 11l76 -19q20 -5 30.5 -22.5t5.5 -37.5t-22.5 -31t-37.5 -5l-51 12l-182 -193h891l-182 193l-44 -12q-20 -5 -37.5 6t-22.5 31t6 37.5 t31 22.5z" />
-<glyph unicode="&#xe241;" d="M1200 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM500 450h-25q0 15 -4 24.5t-9 14.5t-17 7.5t-20 3t-25 0.5h-100v-425q0 -11 12.5 -17.5t25.5 -7.5h12v-50h-200v50q50 0 50 25v425h-100q-17 0 -25 -0.5t-20 -3t-17 -7.5t-9 -14.5t-4 -24.5h-25v150h500v-150z" />
-<glyph unicode="&#xe242;" d="M1000 300v50q-25 0 -55 32q-14 14 -25 31t-16 27l-4 11l-289 747h-69l-300 -754q-18 -35 -39 -56q-9 -9 -24.5 -18.5t-26.5 -14.5l-11 -5v-50h273v50q-49 0 -78.5 21.5t-11.5 67.5l69 176h293l61 -166q13 -34 -3.5 -66.5t-55.5 -32.5v-50h312zM412 691l134 342l121 -342 h-255zM1100 150v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5z" />
-<glyph unicode="&#xe243;" d="M50 1200h1100q21 0 35.5 -14.5t14.5 -35.5v-1100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5zM611 1118h-70q-13 0 -18 -12l-299 -753q-17 -32 -35 -51q-18 -18 -56 -34q-12 -5 -12 -18v-50q0 -8 5.5 -14t14.5 -6 h273q8 0 14 6t6 14v50q0 8 -6 14t-14 6q-55 0 -71 23q-10 14 0 39l63 163h266l57 -153q11 -31 -6 -55q-12 -17 -36 -17q-8 0 -14 -6t-6 -14v-50q0 -8 6 -14t14 -6h313q8 0 14 6t6 14v50q0 7 -5.5 13t-13.5 7q-17 0 -42 25q-25 27 -40 63h-1l-288 748q-5 12 -19 12zM639 611 h-197l103 264z" />
-<glyph unicode="&#xe244;" d="M1200 1100h-1200v100h1200v-100zM50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 1000h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM700 900v-300h300v300h-300z" />
-<glyph unicode="&#xe245;" d="M50 1200h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 700h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM700 600v-300h300v300h-300zM1200 0h-1200v100h1200v-100z" />
-<glyph unicode="&#xe246;" d="M50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-350h100v150q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-150h100v-100h-100v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v150h-100v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM700 700v-300h300v300h-300z" />
-<glyph unicode="&#xe247;" d="M100 0h-100v1200h100v-1200zM250 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM300 1000v-300h300v300h-300zM250 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe248;" d="M600 1100h150q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-100h450q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h350v100h-150q-21 0 -35.5 14.5 t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h150v100h100v-100zM400 1000v-300h300v300h-300z" />
-<glyph unicode="&#xe249;" d="M1200 0h-100v1200h100v-1200zM550 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM600 1000v-300h300v300h-300zM50 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
-<glyph unicode="&#xe250;" d="M865 565l-494 -494q-23 -23 -41 -23q-14 0 -22 13.5t-8 38.5v1000q0 25 8 38.5t22 13.5q18 0 41 -23l494 -494q14 -14 14 -35t-14 -35z" />
-<glyph unicode="&#xe251;" d="M335 635l494 494q29 29 50 20.5t21 -49.5v-1000q0 -41 -21 -49.5t-50 20.5l-494 494q-14 14 -14 35t14 35z" />
-<glyph unicode="&#xe252;" d="M100 900h1000q41 0 49.5 -21t-20.5 -50l-494 -494q-14 -14 -35 -14t-35 14l-494 494q-29 29 -20.5 50t49.5 21z" />
-<glyph unicode="&#xe253;" d="M635 865l494 -494q29 -29 20.5 -50t-49.5 -21h-1000q-41 0 -49.5 21t20.5 50l494 494q14 14 35 14t35 -14z" />
-<glyph unicode="&#xe254;" d="M700 741v-182l-692 -323v221l413 193l-413 193v221zM1200 0h-800v200h800v-200z" />
-<glyph unicode="&#xe255;" d="M1200 900h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300zM0 700h50q0 21 4 37t9.5 26.5t18 17.5t22 11t28.5 5.5t31 2t37 0.5h100v-550q0 -22 -25 -34.5t-50 -13.5l-25 -2v-100h400v100q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v550h100q25 0 37 -0.5t31 -2 t28.5 -5.5t22 -11t18 -17.5t9.5 -26.5t4 -37h50v300h-800v-300z" />
-<glyph unicode="&#xe256;" d="M800 700h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-100v-550q0 -22 25 -34.5t50 -14.5l25 -1v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v550h-100q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h800v-300zM1100 200h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300z" />
-<glyph unicode="&#xe257;" d="M701 1098h160q16 0 21 -11t-7 -23l-464 -464l464 -464q12 -12 7 -23t-21 -11h-160q-13 0 -23 9l-471 471q-7 8 -7 18t7 18l471 471q10 9 23 9z" />
-<glyph unicode="&#xe258;" d="M339 1098h160q13 0 23 -9l471 -471q7 -8 7 -18t-7 -18l-471 -471q-10 -9 -23 -9h-160q-16 0 -21 11t7 23l464 464l-464 464q-12 12 -7 23t21 11z" />
-<glyph unicode="&#xe259;" d="M1087 882q11 -5 11 -21v-160q0 -13 -9 -23l-471 -471q-8 -7 -18 -7t-18 7l-471 471q-9 10 -9 23v160q0 16 11 21t23 -7l464 -464l464 464q12 12 23 7z" />
-<glyph unicode="&#xe260;" d="M618 993l471 -471q9 -10 9 -23v-160q0 -16 -11 -21t-23 7l-464 464l-464 -464q-12 -12 -23 -7t-11 21v160q0 13 9 23l471 471q8 7 18 7t18 -7z" />
-<glyph unicode="&#xf8ff;" d="M1000 1200q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM450 1000h100q21 0 40 -14t26 -33l79 -194q5 1 16 3q34 6 54 9.5t60 7t65.5 1t61 -10t56.5 -23t42.5 -42t29 -64t5 -92t-19.5 -121.5q-1 -7 -3 -19.5t-11 -50t-20.5 -73t-32.5 -81.5t-46.5 -83t-64 -70 t-82.5 -50q-13 -5 -42 -5t-65.5 2.5t-47.5 2.5q-14 0 -49.5 -3.5t-63 -3.5t-43.5 7q-57 25 -104.5 78.5t-75 111.5t-46.5 112t-26 90l-7 35q-15 63 -18 115t4.5 88.5t26 64t39.5 43.5t52 25.5t58.5 13t62.5 2t59.5 -4.5t55.5 -8l-147 192q-12 18 -5.5 30t27.5 12z" />
-<glyph unicode="&#x1f511;" d="M250 1200h600q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-500l-255 -178q-19 -9 -32 -1t-13 29v650h-150q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM400 1100v-100h300v100h-300z" />
-<glyph unicode="&#x1f6aa;" d="M250 1200h750q39 0 69.5 -40.5t30.5 -84.5v-933l-700 -117v950l600 125h-700v-1000h-100v1025q0 23 15.5 49t34.5 26zM500 525v-100l100 20v100z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.ttf b/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.ttf
deleted file mode 100644
index 1413fc6..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.ttf
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff
deleted file mode 100644
index 9e61285..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff2
deleted file mode 100644
index 64539b5..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/glyphicons-halflings-regular.woff2
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff
new file mode 100644
index 0000000..386899f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff2
new file mode 100644
index 0000000..ca64080
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700.woff2
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff
new file mode 100644
index 0000000..62f4d77
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff2
new file mode 100644
index 0000000..226210c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-700italic.woff2
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff
new file mode 100644
index 0000000..9d40dec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff2
new file mode 100644
index 0000000..f43754d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-italic.woff2
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff
new file mode 100644
index 0000000..2b512bc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff2
new file mode 100644
index 0000000..1f1db1a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/fonts/noto-sans-v12-latin_greek_cyrillic-regular.woff2
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff
deleted file mode 100644
index 534ef3e..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff2
deleted file mode 100644
index 6c8e609..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-700.woff2
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff
deleted file mode 100644
index ab0a612..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff2
deleted file mode 100644
index 11d1ccd..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-italic.woff2
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff
deleted file mode 100644
index 0a39232..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff2 b/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff2
deleted file mode 100644
index 2a9e8e8..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/fonts/pt-sans-v11-latin-ext_cyrillic_latin-regular.woff2
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/img/languages.png b/mailcow/src/mailcow-dockerized/data/web/img/languages.png
deleted file mode 100644
index 85d9a6e..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/img/languages.png
+++ /dev/null
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/ajax/dns_diagnostics.php b/mailcow/src/mailcow-dockerized/data/web/inc/ajax/dns_diagnostics.php
index 928a4e4..a315680 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/ajax/dns_diagnostics.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/ajax/dns_diagnostics.php
@@ -2,479 +2,456 @@
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/spf.inc.php';
 
-define('state_good', '<span class="glyphicon glyphicon-ok text-success"></span>');
-define('state_missing', '<span class="glyphicon glyphicon-remove text-danger"></span>');
+define('state_good', '<i class="bi bi-check-lg text-success"></i>');
+define('state_missing', '<i class="bi bi-x-lg text-danger"></i>');
 define('state_nomatch', "?");
 define('state_optional', " <sup>2</sup>");
 
 if (isset($_SESSION['mailcow_cc_role']) && ($_SESSION['mailcow_cc_role'] == "admin"|| $_SESSION['mailcow_cc_role'] == "domainadmin")) {
 
-$domains = mailbox('get', 'domains');
-$alias_domains = array();
-foreach($domains as $dn) {
-  $alias_domains = array_merge($alias_domains, mailbox('get', 'alias_domains', $dn));
-}
-$domains = array_merge($domains, $alias_domains);
+  $alias_domains = array();
 
-if (isset($_GET['domain'])) {
-  if (is_valid_domain_name($_GET['domain'])) {
-    if (in_array($_GET['domain'], $domains)) {
+  if (isset($_GET['domain'])) {
+    $domain_details = mailbox('get', 'domain_details', $_GET['domain']);
+    if ($domain_details !== false) {
       $domain = $_GET['domain'];
+      $alias_domains = array_merge($alias_domains, mailbox('get', 'alias_domains', $domain));
     }
     else {
       echo "No such domain in context";
       exit();
     }
   }
-  else {
-    echo "Invalid domain name";
-    exit();
-  }
-}
 
-$ch = curl_init('http://ip4.mailcow.email');
-curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
-curl_setopt($ch, CURLOPT_VERBOSE, false);
-curl_setopt($ch, CURLOPT_HEADER, false);
-curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
-curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
-$ip = curl_exec($ch);
-curl_close($ch);
+  $ch = curl_init('http://ip4.mailcow.email');
+  curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
+  curl_setopt($ch, CURLOPT_VERBOSE, false);
+  curl_setopt($ch, CURLOPT_HEADER, false);
+  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
+  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
+  $ip = curl_exec($ch);
+  curl_close($ch);
 
-$ch = curl_init('http://ip6.mailcow.email');
-curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
-curl_setopt($ch, CURLOPT_VERBOSE, false);
-curl_setopt($ch, CURLOPT_HEADER, false);
-curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
-curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
-$ip6 = curl_exec($ch);
-curl_close($ch);
+  $ch = curl_init('http://ip6.mailcow.email');
+  curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
+  curl_setopt($ch, CURLOPT_VERBOSE, false);
+  curl_setopt($ch, CURLOPT_HEADER, false);
+  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
+  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
+  $ip6 = curl_exec($ch);
+  curl_close($ch);
 
-$ptr = implode('.', array_reverse(explode('.', $ip))) . '.in-addr.arpa';
-if (!empty($ip6)) {
-  $ip6_full = str_replace('::', str_repeat(':', 9-substr_count($ip6, ':')), $ip6);
-  $ip6_full = str_replace('::', ':0:', $ip6_full);
-  $ip6_full = str_replace('::', ':0:', $ip6_full);
-  $ptr6 = '';
-  foreach (explode(':', $ip6_full) as $part) {
-    $ptr6 .= str_pad($part, 4, '0', STR_PAD_LEFT);
-  }
-  $ptr6 = implode('.', array_reverse(str_split($ptr6, 1))) . '.ip6.arpa';
-}
-
-$https_port = strpos($_SERVER['HTTP_HOST'], ':');
-if ($https_port === FALSE) {
-  $https_port = 443;
-}
-else {
-  $https_port = substr($_SERVER['HTTP_HOST'], $https_port+1);
-}
-
-if (!isset($autodiscover_config['sieve'])) {
-  $autodiscover_config['sieve'] = array('server' => $mailcow_hostname, 'port' => array_pop(explode(':', getenv('SIEVE_PORT'))));
-}
-
-// Init records array
-$spf_link = '<a href="https://en.wikipedia.org/wiki/Sender_Policy_Framework" target="_blank">SPF Record Syntax</a><br />';
-$dmarc_link = '<a href="https://www.kitterman.com/dmarc/assistant.html" target="_blank">DMARC Assistant</a>';
-
-$records = array();
-if ($_SESSION['mailcow_cc_role'] == "admin") {
-  $records[] = array(
-    $mailcow_hostname,
-    'A',
-    $ip
-  );
-  $records[] = array(
-    $ptr,
-    'PTR',
-    $mailcow_hostname
-  );
+  $ptr = implode('.', array_reverse(explode('.', $ip))) . '.in-addr.arpa';
   if (!empty($ip6)) {
+    $ip6_full = str_replace('::', str_repeat(':', 9-substr_count($ip6, ':')), $ip6);
+    $ip6_full = str_replace('::', ':0:', $ip6_full);
+    $ip6_full = str_replace('::', ':0:', $ip6_full);
+    $ptr6 = '';
+    foreach (explode(':', $ip6_full) as $part) {
+      $ptr6 .= str_pad($part, 4, '0', STR_PAD_LEFT);
+    }
+    $ptr6 = implode('.', array_reverse(str_split($ptr6, 1))) . '.ip6.arpa';
+  }
+
+  $https_port = strpos($_SERVER['HTTP_HOST'], ':');
+  if ($https_port === FALSE) {
+    $https_port = 443;
+  }
+  else {
+    $https_port = substr($_SERVER['HTTP_HOST'], $https_port+1);
+  }
+
+  if (!isset($autodiscover_config['sieve'])) {
+    $autodiscover_config['sieve'] = array(
+      'server' => $mailcow_hostname,
+      'port' => array_pop(explode(':', getenv('SIEVE_PORT')))
+    );
+  }
+
+  // Init records array
+  $spf_link = '<a href="http://www.open-spf.org/SPF_Record_Syntax/" target="_blank">SPF Record Syntax</a><br />';
+  $dmarc_link = '<a href="https://www.kitterman.com/dmarc/assistant.html" target="_blank">DMARC Assistant</a>';
+
+  $records = array();
+
+  if ($_SESSION['mailcow_cc_role'] == "admin") {
     $records[] = array(
       $mailcow_hostname,
-      'AAAA',
-      expand_ipv6($ip6)
+      'A',
+      $ip
     );
     $records[] = array(
-      $ptr6,
+      $ptr,
       'PTR',
       $mailcow_hostname
     );
+    if (!empty($ip6)) {
+      $records[] = array(
+        $mailcow_hostname,
+        'AAAA',
+        expand_ipv6($ip6)
+      );
+      $records[] = array(
+        $ptr6,
+        'PTR',
+        $mailcow_hostname
+      );
+    }
+    $records[] = array(
+      '_25._tcp.' . $autodiscover_config['smtp']['server'],
+      'TLSA',
+      generate_tlsa_digest($autodiscover_config['smtp']['server'], 25, 1)
+    );
   }
+
   $records[] = array(
-    '_25._tcp.'.$autodiscover_config['smtp']['server'],
-    'TLSA',
-    generate_tlsa_digest($autodiscover_config['smtp']['server'], 25, 1)
+    $domain,
+    'MX',
+    $mailcow_hostname
   );
+
   if (!in_array($domain, $alias_domains)) {
     $records[] = array(
-      '_'.$https_port.
-      '._tcp.'.$mailcow_hostname,
-      'TLSA',
-      generate_tlsa_digest($mailcow_hostname, $https_port)
+      'autodiscover.' . $domain,
+      'CNAME',
+      $mailcow_hostname
     );
     $records[] = array(
-      '_'.$autodiscover_config['pop3']['tlsport'].
-      '._tcp.'.$autodiscover_config['pop3']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['pop3']['server'], $autodiscover_config['pop3']['tlsport'], 1)
+      '_autodiscover._tcp.' . $domain,
+      'SRV',
+      $mailcow_hostname . ' ' . $https_port
     );
     $records[] = array(
-      '_'.$autodiscover_config['imap']['tlsport'].
-      '._tcp.'.$autodiscover_config['imap']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['imap']['server'], $autodiscover_config['imap']['tlsport'], 1)
-    );
-    $records[] = array(
-      '_'.$autodiscover_config['smtp']['port'].
-      '._tcp.'.$autodiscover_config['smtp']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['smtp']['server'], $autodiscover_config['smtp']['port'])
-    );
-    $records[] = array(
-      '_'.$autodiscover_config['smtp']['tlsport'].
-      '._tcp.'.$autodiscover_config['smtp']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['smtp']['server'], $autodiscover_config['smtp']['tlsport'], 1)
-    );
-    $records[] = array(
-      '_'.$autodiscover_config['imap']['port'].
-      '._tcp.'.$autodiscover_config['imap']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['imap']['server'], $autodiscover_config['imap']['port'])
-    );
-    $records[] = array(
-      '_'.$autodiscover_config['pop3']['port'].
-      '._tcp.'.$autodiscover_config['pop3']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['pop3']['server'], $autodiscover_config['pop3']['port'])
-    );
-    $records[] = array(
-      '_'.$autodiscover_config['sieve']['port'].
-      '._tcp.'.$autodiscover_config['sieve']['server'],
-      'TLSA',
-      generate_tlsa_digest($autodiscover_config['sieve']['server'], $autodiscover_config['sieve']['port'], 1)
+      'autoconfig.' . $domain,
+      'CNAME',
+      $mailcow_hostname
     );
   }
-}
-$records[] = array(
-  $domain,
-  'MX',
-  $mailcow_hostname
-);
-if (!in_array($domain, $alias_domains)) {
-  $records[] = array(
-    'autodiscover.'.$domain,
-    'CNAME',
-    $mailcow_hostname
-  );
-  $records[] = array(
-    '_autodiscover._tcp.'.$domain,
-    'SRV',
-    $mailcow_hostname.
-    ' '.$https_port
-  );
-  $records[] = array(
-    'autoconfig.'.$domain,
-    'CNAME',
-    $mailcow_hostname
-  );
-}
-$records[] = array(
-  $domain,
-  'TXT',
-  $spf_link,
-  state_optional
-);
-$records[] = array(
-  '_dmarc.'.$domain,
-  'TXT',
-  $dmarc_link,
-  state_optional
-);
 
-if (!empty($dkim = dkim('details', $domain))) {
   $records[] = array(
-    $dkim['dkim_selector'] . '._domainkey.' . $domain,
+    $domain,
     'TXT',
-    $dkim['dkim_txt']
+    $spf_link,
+    state_optional
   );
-}
-if (!in_array($domain, $alias_domains)) {
-  $current_records = dns_get_record('_pop3._tcp.' . $domain, DNS_SRV);
-  if (count($current_records) == 0 || $current_records[0]['target'] != '') {
-    if ($autodiscover_config['pop3']['tlsport'] != '110') {
-      $records[] = array(
-        '_pop3._tcp.' . $domain,
-        'SRV',
-        $autodiscover_config['pop3']['server'] . ' ' . $autodiscover_config['pop3']['tlsport']
-      );
-    }
-  }
-  else {
-    $records[] = array(
-      '_pop3._tcp.' . $domain,
-      'SRV',
-      '. 0'
-    );
-  }
-  $current_records = dns_get_record('_pop3s._tcp.' . $domain, DNS_SRV);
-  if (count($current_records) == 0 || $current_records[0]['target'] != '') {
-    if ($autodiscover_config['pop3']['port'] != '995') {
-      $records[] = array(
-        '_pop3s._tcp.' . $domain,
-        'SRV',
-        $autodiscover_config['pop3']['server'] . ' ' . $autodiscover_config['pop3']['port']
-      );
-    }
-  }
-  else {
-    $records[] = array(
-      '_pop3s._tcp.' . $domain,
-      'SRV',
-      '. 0'
-    );
-  }
-  if ($autodiscover_config['imap']['tlsport'] != '143') {
-    $records[] = array(
-      '_imap._tcp.' . $domain,
-      'SRV',
-      $autodiscover_config['imap']['server'] . ' ' . $autodiscover_config['imap']['tlsport']
-    );
-  }
-  if ($autodiscover_config['imap']['port'] != '993') {
-    $records[] = array(
-      '_imaps._tcp.' . $domain,
-      'SRV',
-      $autodiscover_config['imap']['server'] . ' ' . $autodiscover_config['imap']['port']
-    );
-  }
-  if ($autodiscover_config['smtp']['tlsport'] != '587') {
-    $records[] = array(
-      '_submission._tcp.' . $domain,
-      'SRV',
-      $autodiscover_config['smtp']['server'] . ' ' . $autodiscover_config['smtp']['tlsport']
-    );
-  }
-  if ($autodiscover_config['smtp']['port'] != '465') {
-    $records[] = array(
-      '_smtps._tcp.' . $domain,
-      'SRV',
-      $autodiscover_config['smtp']['server'] . ' ' . $autodiscover_config['smtp']['port']
-    );
-  }
-  if ($autodiscover_config['sieve']['port'] != '4190') {
-    $records[] = array(
-      '_sieve._tcp.' . $domain,
-      'SRV',
-      $autodiscover_config['sieve']['server'] . ' ' . $autodiscover_config['sieve']['port']
-    );
-  }
-}
 
-$record_types = array(
-  'A' => DNS_A,
-  'AAAA' => DNS_AAAA,
-  'CNAME' => DNS_CNAME,
-  'MX' => DNS_MX,
-  'PTR' => DNS_PTR,
-  'SRV' => DNS_SRV,
-  'TXT' => DNS_TXT,
-);
-$data_field = array(
-  'A' => 'ip',
-  'AAAA' => 'ipv6',
-  'CNAME' => 'target',
-  'MX' => 'target',
-  'PTR' => 'target',
-  'SRV' => 'data',
-  'TLSA' => 'data',
-  'TXT' => 'txt',
-);
+  $records[] = array(
+    '_dmarc.' . $domain,
+    'TXT',
+    $dmarc_link,
+    state_optional
+  );
 
-?>
-<div class="table-responsive" id="dnstable">
-  <table class="table table-striped">
-    <tr>
-      <th><?=$lang['diagnostics']['dns_records_name'];?></th>
-      <th><?=$lang['diagnostics']['dns_records_type'];?></th>
-      <th><?=$lang['diagnostics']['dns_records_data'];?></th>
-      <th><?=$lang['diagnostics']['dns_records_status'];?></th>
-    </tr>
-<?php
-foreach ($records as &$record) {
-  $record[1] = strtoupper($record[1]);
-  $state = state_missing;
-  if ($record[1] == 'TLSA') {
-    $currents = dns_get_record($record[0], 52, $_, $_, TRUE);
-    foreach ($currents as &$current) {
-      $current['type'] = 'TLSA';
-      $current['cert_usage'] = hexdec(bin2hex($current['data']{0}));
-      $current['selector'] = hexdec(bin2hex($current['data']{1}));
-      $current['match_type'] = hexdec(bin2hex($current['data']{2}));
-      $current['cert_data'] = bin2hex(substr($current['data'], 3));
-      $current['data'] = $current['cert_usage'] . ' ' . $current['selector'] . ' ' . $current['match_type'] . ' ' . $current['cert_data'];
-    }
-    unset($current);
-  }
-  else {
-    $currents = dns_get_record($record[0], $record_types[$record[1]]);
-    if ($record[0] == $mailcow_hostname && ($record[1] == "A" || $record[1] == "AAAA")) {
-      if (!empty(dns_get_record($record[0], DNS_CNAME))) {
-        $currents[0]['ip'] = state_missing . ' <b>(CNAME)</b>';
-        $currents[0]['ipv6'] = state_missing . ' <b>(CNAME)</b>';
-      }
-    }
-    if ($record[1] == 'SRV') {
-      foreach ($currents as &$current) {
-        if ($current['target'] == '') {
-          $current['target'] = '.';
-          $current['port'] = '0';
-        }
-        $current['data'] = $current['target'] . ' ' . $current['port'];
-      }
-      unset($current);
-    }
-    elseif ($record[1] == 'TXT') {
-      foreach ($currents as &$current) {
-        unset($current);
-      }
-      unset($current);
-    }
-    elseif ($record[1] == 'AAAA') {
-      foreach ($currents as &$current) {
-        $current['ipv6'] = expand_ipv6($current['ipv6']);
-      }
-    }
+  if (!empty($dkim = dkim('details', $domain))) {
+    $records[] = array(
+      $dkim['dkim_selector'] . '._domainkey.' . $domain,
+      'TXT',
+      $dkim['dkim_txt']
+    );
   }
 
-  if ($record[1] == 'CNAME' && count($currents) == 0) {
-    // A and AAAA are also valid instead of CNAME
-    $a = dns_get_record($record[0], DNS_A);
-    $cname = dns_get_record($record[2], DNS_A);
-    if (count($a) > 0 && count($cname) > 0) {
-      if ($a[0]['ip'] == $cname[0]['ip']) {
-        $currents = array(array('host' => $record[0], 'class' => 'IN', 'type' => 'CNAME', 'target' => $record[2]));
-        $aaaa = dns_get_record($record[0], DNS_AAAA);
-        $cname = dns_get_record($record[2], DNS_AAAA);
-        if (count($aaaa) == 0 || count($cname) == 0 || expand_ipv6($aaaa[0]['ipv6']) != expand_ipv6($cname[0]['ipv6'])) {
-          $currents[0]['target'] = expand_ipv6($aaaa[0]['ipv6']) . ' <sup>1</sup>';
-        }
-      }
-      else {
-        $currents = array(array('host' => $record[0], 'class' => 'IN', 'type' => 'CNAME', 'target' => $a[0]['ip'] . ' <sup>1</sup>'));
-      }
-    }
-  }
-
-  foreach ($currents as &$current) {
-    if ($current['type'] == 'TXT' &&
-      stripos($current['txt'], 'v=dmarc') === 0 &&
-      $record[2] == $dmarc_link) {
-        $current['txt'] = str_replace(' ', '', $current['txt']);
-        $state = $current[$data_field[$current['type']]] . state_optional;
-    }
-    elseif ($current['type'] == 'TXT' &&
-      stripos($current['txt'], 'v=spf') === 0 &&
-      $record[2] == $spf_link) {
-        $state = state_nomatch;
-        $rslt = get_spf_allowed_hosts($record[0]);
-        if(in_array($ip, $rslt) && in_array(expand_ipv6($ip6), $rslt)){
-            $state = state_good;
-        }
-        $state .= '<br />' . $current[$data_field[$current['type']]].state_optional;
-    }
-    elseif ($current['type'] == 'TXT' &&
-      stripos($current['txt'], 'v=dkim') === 0 &&
-      stripos($record[2], 'v=dkim') === 0) {
-        preg_match('/v=DKIM1;.*k=rsa;.*p=([^;]*).*/i', $current[$data_field[$current['type']]], $dkim_matches_current);
-        preg_match('/v=DKIM1;.*k=rsa;.*p=([^;]*).*/i', $record[2], $dkim_matches_good);
-        if ($dkim_matches_current[1] == $dkim_matches_good[1]) {
-          $state = state_good;
-        }
-    }
-    elseif ($current['type'] != 'TXT' &&
-      isset($data_field[$current['type']]) && $state != state_good) {
-        $state = state_nomatch;
-        if ($current[$data_field[$current['type']]] == $record[2]) {
-          $state = state_good;
-        }
-    }
-  }
-  unset($current);
-
-  if (isset($record[3]) &&
-    $record[3] == state_optional &&
-    ($state == state_missing || $state == state_nomatch)) {
-      $state = state_optional;
-  }
-  
-  if ($state == state_nomatch) {
-    $state = array();
-    foreach ($currents as $current) {
-      $state[] = $current[$data_field[$current['type']]];
-    }
-    $state = implode('<br />', $state);
-  }
-  echo sprintf('<tr>
-    <td>%s</td>
-    <td>%s</td>
-    <td class="dns-found">%s</td>
-    <td class="dns-recommended">%s</td>
-  </tr>', $record[0], $record[1], $record[2], $state);
-  $record[3] = explode('<br />', $state);
-}
-unset($record);
-
-$dns_data = sprintf("\$ORIGIN %s.\n", $domain);
-foreach ($records as $record) {
-  if ($domain == substr($record[0], -strlen($domain))) {
-    $label = substr($record[0], 0, -strlen($domain)-1);
-    $val = $record[2];
-    if (strlen($label) == 0) {
-      $label = "@";
-    }
-    $vals = array();
-    if (strpos($val, "<a") !== FALSE) {
-      if(is_array($record[3]) && count($record[3]) == 1 && $record[3][0] == state_optional) {
-        $record[3][0] = "**TODO**";
-        $label = ';' . $label;
-      }
-      foreach ($record[3] as $val) {
-        $val = str_replace(state_optional, '', $val);
-        $val = str_replace(state_good, '', $val);
-        if (strlen($val) > 0) {
-          $vals[] = sprintf("%s\tIN\t%s\t%s\n", $label, $record[1], $val);
-        }
+  if (!in_array($domain, $alias_domains)) {
+    $current_records = dns_get_record('_pop3._tcp.' . $domain, DNS_SRV);
+    if (count($current_records) == 0 || $current_records[0]['target'] != '') {
+      if ($autodiscover_config['pop3']['tlsport'] != '110') {
+        $records[] = array(
+          '_pop3._tcp.' . $domain,
+          'SRV',
+          $autodiscover_config['pop3']['server'] . ' ' . $autodiscover_config['pop3']['tlsport']
+        );
       }
     }
     else {
-      $vals[] = sprintf("%s\tIN\t%s\t%s\n", $label, $record[1], $val);
+      $records[] = array(
+        '_pop3._tcp.' . $domain,
+        'SRV',
+        '. 0'
+      );
     }
-    foreach ($vals as $val) {
-      $dns_data .= str_replace($domain, $domain . '.', $val);
+
+    $current_records = dns_get_record('_pop3s._tcp.' . $domain, DNS_SRV);
+
+    if (count($current_records) == 0 || $current_records[0]['target'] != '') {
+      if ($autodiscover_config['pop3']['port'] != '995') {
+        $records[] = array(
+          '_pop3s._tcp.' . $domain,
+          'SRV',
+          $autodiscover_config['pop3']['server'] . ' ' . $autodiscover_config['pop3']['port']
+        );
+      }
+    }
+    else {
+      $records[] = array(
+        '_pop3s._tcp.' . $domain,
+        'SRV',
+        '. 0'
+      );
+    }
+
+    if ($autodiscover_config['imap']['tlsport'] != '143') {
+      $records[] = array(
+        '_imap._tcp.' . $domain,
+        'SRV',
+        $autodiscover_config['imap']['server'] . ' ' . $autodiscover_config['imap']['tlsport']
+      );
+    }
+
+    if ($autodiscover_config['imap']['port'] != '993') {
+      $records[] = array(
+        '_imaps._tcp.' . $domain,
+        'SRV',
+        $autodiscover_config['imap']['server'] . ' ' . $autodiscover_config['imap']['port']
+      );
+    }
+
+    if ($autodiscover_config['smtp']['tlsport'] != '587') {
+      $records[] = array(
+        '_submission._tcp.' . $domain,
+        'SRV',
+        $autodiscover_config['smtp']['server'] . ' ' . $autodiscover_config['smtp']['tlsport']
+      );
+    }
+
+    if ($autodiscover_config['smtp']['port'] != '465') {
+      $records[] = array(
+        '_smtps._tcp.' . $domain,
+        'SRV',
+        $autodiscover_config['smtp']['server'] . ' ' . $autodiscover_config['smtp']['port']
+      );
+    }
+
+    if ($autodiscover_config['sieve']['port'] != '4190') {
+      $records[] = array(
+        '_sieve._tcp.' . $domain,
+        'SRV',
+        $autodiscover_config['sieve']['server'] . ' ' . $autodiscover_config['sieve']['port']
+      );
     }
   }
-}
 
-?>
-  </table>
-  <a id='download-zonefile' data-zonefile="<?=base64_encode($dns_data);?>" download='<?=$_GET['domain'];?>.txt' type='text/csv'>Download</a>
-  <script>
+  $record_types = array(
+    'A' => DNS_A,
+    'AAAA' => DNS_AAAA,
+    'CNAME' => DNS_CNAME,
+    'MX' => DNS_MX,
+    'PTR' => DNS_PTR,
+    'SRV' => DNS_SRV,
+    'TXT' => DNS_TXT,
+  );
+
+  $data_field = array(
+    'A' => 'ip',
+    'AAAA' => 'ipv6',
+    'CNAME' => 'target',
+    'MX' => 'target',
+    'PTR' => 'target',
+    'SRV' => 'data',
+    'TLSA' => 'data',
+    'TXT' => 'txt',
+  );
+
+  ?>
+  <div class="table-responsive" id="dnstable">
+    <table class="table table-striped">
+      <tr>
+        <th><?=$lang['diagnostics']['dns_records_name'];?></th>
+        <th><?=$lang['diagnostics']['dns_records_type'];?></th>
+        <th><?=$lang['diagnostics']['dns_records_data'];?></th>
+        <th><?=$lang['diagnostics']['dns_records_status'];?></th>
+      </tr>
+      <?php
+      foreach ($records as &$record) {
+        $record[1] = strtoupper($record[1]);
+        $state = state_optional;
+
+        if ($record[1] == 'TLSA') {
+          $currents = dns_get_record($record[0], 52, $_, $_, TRUE);
+          foreach ($currents as &$current) {
+            $current['type'] = 'TLSA';
+            $current['cert_usage'] = hexdec(bin2hex($current['data'][0]));
+            $current['selector'] = hexdec(bin2hex($current['data'][1]));
+            $current['match_type'] = hexdec(bin2hex($current['data'][2]));
+            $current['cert_data'] = bin2hex(substr($current['data'], 3));
+            $current['data'] = $current['cert_usage'] . ' ' . $current['selector'] . ' ' . $current['match_type'] . ' ' . $current['cert_data'];
+          }
+          unset($current);
+        }
+        else {
+          $currents = dns_get_record($record[0], $record_types[$record[1]]);
+          if ($record[0] == $mailcow_hostname && ($record[1] == "A" || $record[1] == "AAAA")) {
+            if (!empty(dns_get_record($record[0], DNS_CNAME))) {
+              $currents[0]['ip'] = state_missing . ' <b>(CNAME)</b>';
+              $currents[0]['ipv6'] = state_missing . ' <b>(CNAME)</b>';
+            }
+          }
+          if ($record[1] == 'SRV') {
+            foreach ($currents as &$current) {
+              if ($current['target'] == '') {
+                $current['target'] = '.';
+                $current['port'] = '0';
+              }
+              $current['data'] = $current['target'] . ' ' . $current['port'];
+            }
+            unset($current);
+          }
+          elseif ($record[1] == 'TXT') {
+            foreach ($currents as &$current) {
+              unset($current);
+            }
+            unset($current);
+          }
+          elseif ($record[1] == 'AAAA') {
+            foreach ($currents as &$current) {
+              $current['ipv6'] = expand_ipv6($current['ipv6']);
+            }
+          }
+        }
+
+        if ($record[1] == 'CNAME' && count($currents) == 0) {
+          // A and AAAA are also valid instead of CNAME
+          $a = dns_get_record($record[0], DNS_A);
+          $cname = dns_get_record($record[2], DNS_A);
+          if (count($a) > 0 && count($cname) > 0) {
+            if ($a[0]['ip'] == $cname[0]['ip']) {
+              $currents = array(
+                array(
+                  'host' => $record[0],
+                  'class' => 'IN',
+                  'type' => 'CNAME',
+                  'target' => $record[2]
+                )
+              );
+              $aaaa = dns_get_record($record[0], DNS_AAAA);
+              $cname = dns_get_record($record[2], DNS_AAAA);
+              if (count($aaaa) == 0 || count($cname) == 0 || expand_ipv6($aaaa[0]['ipv6']) != expand_ipv6($cname[0]['ipv6'])) {
+                $currents[0]['target'] = expand_ipv6($aaaa[0]['ipv6']) . ' <sup>1</sup>';
+              }
+            }
+            else {
+              $currents = array(
+                array(
+                  'host' => $record[0],
+                  'class' => 'IN',
+                  'type' => 'CNAME',
+                  'target' => $a[0]['ip'] . ' <sup>1</sup>'
+                )
+              );
+            }
+          }
+        }
+
+        foreach ($currents as &$current) {
+          if ($current['type'] == 'TXT' &&
+          stripos($current['txt'], 'v=dmarc') === 0 &&
+          $record[2] == $dmarc_link) {
+            $current['txt'] = str_replace(' ', '', $current['txt']);
+            $state = $current[$data_field[$current['type']]] . state_optional;
+          }
+          elseif ($current['type'] == 'TXT' &&
+          stripos($current['txt'], 'v=spf') === 0 &&
+          $record[2] == $spf_link) {
+            $state = state_nomatch;
+            $rslt = get_spf_allowed_hosts($record[0], true);
+            if (in_array($ip, $rslt) && in_array(expand_ipv6($ip6), $rslt)) {
+              $state = state_good;
+            }
+            $state .= '<br />' . $current[$data_field[$current['type']]] . state_optional;
+          }
+          elseif ($current['type'] == 'TXT' &&
+          stripos($current['txt'], 'v=dkim') === 0 &&
+          stripos($record[2], 'v=dkim') === 0) {
+            preg_match('/v=DKIM1;.*k=rsa;.*p=([^;]*).*/i', $current[$data_field[$current['type']]], $dkim_matches_current);
+            preg_match('/v=DKIM1;.*k=rsa;.*p=([^;]*).*/i', $record[2], $dkim_matches_good);
+            if ($dkim_matches_current[1] == $dkim_matches_good[1]) {
+              $state = state_good;
+            }
+          }
+          elseif ($current['type'] != 'TXT' &&
+          isset($data_field[$current['type']]) && $state != state_good) {
+            $state = state_nomatch;
+            if ($current[$data_field[$current['type']]] == $record[2]) {
+              $state = state_good;
+            }
+          }
+        }
+        unset($current);
+
+        if (isset($record[3]) &&
+        $record[3] == state_optional &&
+        ($state == state_missing || $state == state_nomatch)) {
+          $state = state_optional;
+        }
+
+        if ($state == state_nomatch) {
+          $state = array();
+          foreach ($currents as $current) {
+            $state[] = $current[$data_field[$current['type']]];
+          }
+          $state = implode('<br />', $state);
+        }
+        echo sprintf('
+        <tr>
+          <td>%s</td>
+          <td>%s</td>
+          <td class="dns-found">%s</td>
+          <td class="dns-recommended">%s</td>
+        </tr>', $record[0], $record[1], $record[2], $state);
+        $record[3] = explode('<br />', $state);
+      }
+
+      unset($record);
+
+      $dns_data = sprintf("\$ORIGIN %s.\n", $domain);
+      foreach ($records as $record) {
+        if ($domain == substr($record[0], -strlen($domain))) {
+          $label = substr($record[0], 0, -strlen($domain)-1);
+          $val = $record[2];
+
+          if (strlen($label) == 0) {
+            $label = "@";
+          }
+
+          $vals = array();
+          if (strpos($val, "<a") !== FALSE) {
+            if (is_array($record[3]) && count($record[3]) == 1 && $record[3][0] == state_optional) {
+              $record[3][0] = "**TODO**";
+              $label = ';' . $label;
+            }
+            foreach ($record[3] as $val) {
+              $val = str_replace(state_optional, '', $val);
+              $val = str_replace(state_good, '', $val);
+              if (strlen($val) > 0) {
+                $vals[] = sprintf("%s\tIN\t%s\t%s\n", $label, $record[1], $val);
+              }
+            }
+          }
+          else {
+            $vals[] = sprintf("%s\tIN\t%s\t%s\n", $label, $record[1], $val);
+          }
+
+          foreach ($vals as $val) {
+            $dns_data .= str_replace($domain, $domain . '.', $val);
+          }
+        }
+      }
+      ?>
+    </table>
+    <a id='download-zonefile' class="btn btn-sm btn-default visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline" style="margin-top:10px" data-zonefile="<?=base64_encode($dns_data);?>" download='<?=$_GET['domain'];?>.txt' type='text/csv'>Download</a>
+    <script>
       var zonefile_dl_link = document.getElementById('download-zonefile');
       var zonefile = atob(zonefile_dl_link.getAttribute('data-zonefile'));
       var data = new Blob([zonefile]);
       var download_zonefile_link = document.getElementById('download-zonefile');
       download_zonefile_link.href = URL.createObjectURL(data);
-  </script>
-</div>
-<p class="help-block">
-<sup>1</sup> <?=$lang['diagnostics']['cname_from_a'];?><br />
-<sup>2</sup> <?=$lang['diagnostics']['optional'];?>
-</p>
-<?php
-} else {
+    </script>
+  </div>
+  <p class="help-block">
+    <sup>1</sup> <?=$lang['diagnostics']['cname_from_a'];?><br />
+    <sup>2</sup> <?=$lang['diagnostics']['optional'];?>
+  </p>
+  <?php
+}
+else {
   echo "Session invalid";
   exit();
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/ajax/transport_check.php b/mailcow/src/mailcow-dockerized/data/web/inc/ajax/transport_check.php
index 7921687..aa429ed 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/ajax/transport_check.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/ajax/transport_check.php
@@ -15,6 +15,12 @@
   else {
     $mail_from = "relay@example.org";
   }
+  if (isset($_GET['mail_rcpt']) && filter_var($_GET['mail_rcpt'], FILTER_VALIDATE_EMAIL)) {
+    $mail_rcpt = $_GET['mail_rcpt'];
+  }
+  else {
+    $mail_rcpt = "null@hosted.mailcow.de";
+  }
   if ($transport_type == 'transport-map') {
     $transport_details = transport('details', $transport_id);
     $nexthop = $transport_details['nexthop'];
@@ -36,7 +42,7 @@
       $port = substr($hostname_w_port, strrpos($hostname_w_port, ':') + 1);
       $hostname = preg_replace('/'. preg_quote(':' . $port, '/') . '$/', '', $hostname_w_port);
       if (filter_var($hostname, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
-        $hostname = '[' . $hostname . ']:';
+        $hostname = '[' . $hostname . ']';
       }
     }
     else {
@@ -130,7 +136,7 @@
     $mail->Port = $port;
     $mail->setFrom($mail_from, 'Mailer');
     $mail->Subject = 'A subject for a SMTP test';
-    $mail->addAddress($RELAY_TO, 'Joe Null');
+    $mail->addAddress($mail_rcpt, 'Joe Null');
     $mail->Body = 'This is our test body';
     $mail->send();
   }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/footer.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/footer.inc.php
index 8738cc6..f99c86d 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/footer.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/footer.inc.php
@@ -79,6 +79,7 @@
     foreach($alertbox_log_parser as $log) {
       $alerts[$log['type']][] = $log['msg'];
     }
+    $alerts = array_filter(array_unique($alerts));
     foreach($alerts as $alert_type => $alert_msg) {
   ?>
   mailcow_alert_box(<?=json_encode(implode('<hr class="alert-hr">', $alert_msg));?>, <?=$alert_type;?>);
@@ -93,7 +94,7 @@
     backdrop: 'static',
     keyboard: false
   });
-  $('#u2f_status_auth').html('<p><span class="glyphicon glyphicon-refresh glyphicon-spin"></span> ' + lang_tfa.init_u2f + '</p>');
+  $('#u2f_status_auth').html('<p><i class="bi bi-arrow-repeat icon-spin"></i> ' + lang_tfa.init_u2f + '</p>');
   $('#ConfirmTFAModal').on('shown.bs.modal', function(){
       $(this).find('input[name=token]').focus();
       // If U2F
@@ -235,7 +236,7 @@
       $("#start_u2f_register").click(function(){
         $('#u2f_return_code').html('');
         $('#u2f_return_code').hide();
-        $('#u2f_status_reg').html('<p><span class="glyphicon glyphicon-refresh glyphicon-spin"></span> ' + lang_tfa.init_u2f + '</p>');
+        $('#u2f_status_reg').html('<p><i class="bi bi-arrow-repeat icon-spin"></i> ' + lang_tfa.init_u2f + '</p>');
         $.ajax({
           type: "GET",
           cache: false,
@@ -304,5 +305,12 @@
 </body>
 </html>
 <?php
+if (isset($_SESSION['mailcow_cc_api'])) {
+  session_regenerate_id(true);
+  session_unset();
+  session_destroy();
+  session_write_close();
+  header("Location: /");
+}
 $stmt = null;
 $pdo = null;
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.address_rewriting.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.address_rewriting.inc.php
index 51cdd73..8193c05 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.address_rewriting.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.address_rewriting.inc.php
@@ -1,5 +1,5 @@
 <?php
-function bcc($_action, $_data = null, $attr = null) {
+function bcc($_action, $_data = null, $_attr = null) {
 	global $pdo;
 	global $lang;
   if ($_SESSION['mailcow_cc_role'] != "admin" && $_SESSION['mailcow_cc_role'] != "domainadmin") {
@@ -48,7 +48,8 @@
         $local_dest_sane = '@' . idn_to_ascii($local_dest, 0, INTL_IDNA_VARIANT_UTS46);
       }
       elseif (filter_var($local_dest, FILTER_VALIDATE_EMAIL)) {
-        if (!hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $local_dest)) {
+        $mailbox = mailbox('get', 'mailbox_details', $local_dest);
+        if ($mailbox === false && array_key_exists($local_dest, array_merge($direct_aliases, $shared_aliases)) === false) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
             'log' => array(__FUNCTION__, $_action, $_data, $_attr),
@@ -56,10 +57,16 @@
           );
           return false;
         }
-        $domain = mailbox('get', 'mailbox_details', $local_dest)['domain'];
-        if (empty($domain)) {
-          return false;
+        if (!hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $local_dest) &&
+          !hasAliasObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $local_dest)) {
+            $_SESSION['return'][] = array(
+              'type' => 'danger',
+              'log' => array(__FUNCTION__, $_action, $_data, $_attr),
+              'msg' => 'access_denied'
+            );
+            return false;
         }
+        $domain = idn_to_ascii(substr(strstr($local_dest, '@'), 1), 0, INTL_IDNA_VARIANT_UTS46);
         $local_dest_sane = $local_dest;
       }
       else {
@@ -128,7 +135,6 @@
           );
           continue;
         }
-        $active = intval($_data['active']);
         if (!filter_var($bcc_dest, FILTER_VALIDATE_EMAIL)) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.admin.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.admin.inc.php
index bb0400e..af1474c 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.admin.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.admin.inc.php
@@ -48,40 +48,17 @@
           return false;
         }
       }
-      if (!empty($password) && !empty($password2)) {
-        if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-          $_SESSION['return'][] = array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data_log),
-            'msg' => 'password_complexity'
-          );
-          return false;
-        }
-        if ($password != $password2) {
-          $_SESSION['return'][] = array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data_log),
-            'msg' => 'password_mismatch'
-          );
-          return false;
-        }
-        $password_hashed = hash_password($password);
-        $stmt = $pdo->prepare("INSERT INTO `admin` (`username`, `password`, `superadmin`, `active`)
-          VALUES (:username, :password_hashed, '1', :active)");
-        $stmt->execute(array(
-          ':username' => $username,
-          ':password_hashed' => $password_hashed,
-          ':active' => $active
-        ));
-      }
-      else {
-        $_SESSION['return'][] = array(
-          'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data_log),
-          'msg' => 'password_empty'
-        );
+      if (password_check($password, $password2) !== true) {
         return false;
       }
+      $password_hashed = hash_password($password_new);
+      $stmt = $pdo->prepare("INSERT INTO `admin` (`username`, `password`, `superadmin`, `active`)
+        VALUES (:username, :password_hashed, '1', :active)");
+      $stmt->execute(array(
+        ':username' => $username,
+        ':password_hashed' => $password_hashed,
+        ':active' => $active
+      ));
       $_SESSION['return'][] = array(
         'type' => 'success',
         'log' => array(__FUNCTION__, $_action, $_data_log),
@@ -144,22 +121,9 @@
             continue;
           }
         }
-        if (!empty($password) && !empty($password2)) {
-          if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => 'password_complexity'
-            );
-            continue;
-          }
-          if ($password != $password2) {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => 'password_mismatch'
-            );
-            continue;
+        if (!empty($password)) {
+          if (password_check($password, $password2) !== true) {
+            return false;
           }
           $password_hashed = hash_password($password);
           $stmt = $pdo->prepare("UPDATE `admin` SET `username` = :username_new, `active` = :active, `password` = :password_hashed WHERE `username` = :username");
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.app_passwd.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.app_passwd.inc.php
index c4b0026..8c8ad18 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.app_passwd.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.app_passwd.inc.php
@@ -23,9 +23,9 @@
   }
   switch ($_action) {
     case 'add':
-      $app_name = trim($_data['app_name']);
-      $password     = $_data['app_passwd'];
-      $password2    = $_data['app_passwd2'];
+      $app_name = htmlspecialchars(trim($_data['app_name']));
+      $password = $_data['app_passwd'];
+      $password2 = $_data['app_passwd2'];
       $active = intval($_data['active']);
       $domain = mailbox('get', 'mailbox_details', $username)['domain'];
       if (empty($domain)) {
@@ -94,7 +94,7 @@
           );
           continue;
         }
-        $app_name = trim($app_name);
+        $app_name = htmlspecialchars(trim($app_name));
         if (!empty($password) && !empty($password2)) {
           if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
             $_SESSION['return'][] = array(
@@ -198,6 +198,7 @@
         $app_passwd_data = array();
         return false;
       }
+      $app_passwd_data['name'] = htmlspecialchars(trim($app_passwd_data['name']));
       return $app_passwd_data;
     break;
   }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.customize.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.customize.inc.php
index f4c74d8..d594822 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.customize.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.customize.inc.php
@@ -207,7 +207,7 @@
           try {
             $data['title_name'] = ($title_name = $redis->get('TITLE_NAME')) ? $title_name : 'mailcow UI';
             $data['main_name'] = ($main_name = $redis->get('MAIN_NAME')) ? $main_name : 'mailcow UI';
-            $data['apps_name'] = ($apps_name = $redis->get('APPS_NAME')) ? $apps_name : 'mailcow Apps';
+            $data['apps_name'] = ($apps_name = $redis->get('APPS_NAME')) ? $apps_name : $lang['header']['apps'];
             $data['help_text'] = ($help_text = $redis->get('HELP_TEXT')) ? $help_text : false;
             if (!empty($redis->get('UI_IMPRESS'))) {
               $redis->set('UI_FOOTER', $redis->get('UI_IMPRESS'));
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.dkim.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.dkim.inc.php
index 2a19ff0..33ee49f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.dkim.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.dkim.inc.php
@@ -1,8 +1,8 @@
 <?php
 
 function dkim($_action, $_data = null, $privkey = false) {
-	global $redis;
-	global $lang;
+  global $redis;
+  global $lang;
   switch ($_action) {
     case 'add':
       if ($_SESSION['mailcow_cc_role'] != "admin") {
@@ -13,7 +13,7 @@
         );
         return false;
       }
-      $key_length	= intval($_data['key_size']);
+      $key_length = intval($_data['key_size']);
       $dkim_selector = (isset($_data['dkim_selector'])) ? $_data['dkim_selector'] : 'dkim';
       $domains = array_map('trim', preg_split( "/( |,|;|\n)/", $_data['domains']));
       $domains = array_filter($domains);
@@ -21,7 +21,7 @@
         if (!is_valid_domain_name($domain) || !is_numeric($key_length)) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_invalid', $domain)
           );
           continue;
@@ -29,7 +29,7 @@
         if ($redis->hGet('DKIM_PUB_KEYS', $domain)) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_invalid', $domain)
           );
           continue;
@@ -37,7 +37,7 @@
         if (!ctype_alnum(str_replace(['-', '_'], '', $dkim_selector))) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_invalid', $domain)
           );
           continue;
@@ -62,7 +62,7 @@
           catch (RedisException $e) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+              'log' => array(__FUNCTION__, $_action, $_data),
               'msg' => array('redis_error', $e)
             );
             continue;
@@ -76,7 +76,7 @@
             catch (RedisException $e) {
               $_SESSION['return'][] = array(
                 'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+                'log' => array(__FUNCTION__, $_action, $_data),
                 'msg' => array('redis_error', $e)
               );
               continue;
@@ -84,14 +84,14 @@
           }
           $_SESSION['return'][] = array(
             'type' => 'success',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_added', $domain)
           );
         }
         else {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_invalid', $domain)
           );
           continue;
@@ -102,7 +102,7 @@
       if ($_SESSION['mailcow_cc_role'] != "admin") {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => 'access_denied'
         );
         return false;
@@ -112,7 +112,7 @@
       if (empty($from_domain_dkim)) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('dkim_domain_or_sel_invalid', $from_domain)
         );
         continue;
@@ -128,14 +128,14 @@
         catch (RedisException $e) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('redis_error', $e)
           );
           continue;
         }
         $_SESSION['return'][] = array(
           'type' => 'success',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('dkim_duplicated', $from_domain, $to_domain)
         );
       }
@@ -144,7 +144,7 @@
       if ($_SESSION['mailcow_cc_role'] != "admin") {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => 'access_denied'
         );
         return false;
@@ -156,7 +156,7 @@
       if ($ssl_error = openssl_error_string()) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('private_key_error', $ssl_error)
         );
         return false;
@@ -167,13 +167,13 @@
       array_shift($pem_public_key_array);
       array_pop($pem_public_key_array);
       // Implode as single string
-      $pem_public_key = implode('', $pem_public_key_array);
+      $pem_public_key = implode('', (array)$pem_public_key_array);
       $dkim_selector = (isset($_data['dkim_selector'])) ? $_data['dkim_selector'] : 'dkim';
-      $domain	= $_data['domain'];
+      $domain = $_data['domain'];
       if (!is_valid_domain_name($domain)) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('dkim_domain_or_sel_invalid', $domain)
         );
         return false;
@@ -182,7 +182,7 @@
         if ($overwrite_existing == 0) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_exists', $domain)
           );
           return false;
@@ -191,13 +191,13 @@
       if (!ctype_alnum($dkim_selector)) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('dkim_domain_or_sel_invalid', $domain)
         );
         return false;
       }
       try {
-        dkim('delete', $domain);
+        dkim('delete', (array)$domain);
         $redis->hSet('DKIM_PUB_KEYS', $domain, $pem_public_key);
         $redis->hSet('DKIM_SELECTORS', $domain, $dkim_selector);
         $redis->hSet('DKIM_PRIV_KEYS', $dkim_selector . '.' . $domain, $private_key_normalized);
@@ -205,7 +205,7 @@
       catch (RedisException $e) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('redis_error', $e)
         );
         return false;
@@ -218,14 +218,14 @@
       catch (RedisException $e) {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('redis_error', $e)
         );
         return false;
       }
       $_SESSION['return'][] = array(
         'type' => 'success',
-        'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+        'log' => array(__FUNCTION__, $_action, $_data),
         'msg' => array('dkim_added', $domain)
       );
       return true;
@@ -251,7 +251,7 @@
         }
         if ($GLOBALS['SPLIT_DKIM_255'] === true) {
           $dkim_txt_tmp = str_split('v=DKIM1;k=rsa;t=s;s=email;p=' . $redis_dkim_key_data, 255);
-          $dkimdata['dkim_txt'] = sprintf('"%s"', implode('" "', $dkim_txt_tmp ) );
+          $dkimdata['dkim_txt'] = sprintf('"%s"', implode('" "', (array)$dkim_txt_tmp ) );
         }
         else {
           $dkimdata['dkim_txt'] = 'v=DKIM1;k=rsa;t=s;s=email;p=' . $redis_dkim_key_data;
@@ -270,7 +270,7 @@
       if ($_SESSION['mailcow_cc_role'] != "admin") {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => 'access_denied'
         );
         return false;
@@ -286,7 +286,7 @@
       if ($_SESSION['mailcow_cc_role'] != "admin") {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => 'access_denied'
         );
         return false;
@@ -295,7 +295,7 @@
         if (!is_valid_domain_name($domain)) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('dkim_domain_or_sel_invalid', $domain)
           );
           continue;
@@ -309,14 +309,14 @@
         catch (RedisException $e) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+            'log' => array(__FUNCTION__, $_action, $_data),
             'msg' => array('redis_error', $e)
           );
           continue;
         }
         $_SESSION['return'][] = array(
           'type' => 'success',
-          'log' => array(__FUNCTION__, $_action, $_data, $privkey),
+          'log' => array(__FUNCTION__, $_action, $_data),
           'msg' => array('dkim_removed', htmlspecialchars($domain))
         );
       }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.domain_admin.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.domain_admin.inc.php
index 206b371..804c0f8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.domain_admin.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.domain_admin.inc.php
@@ -65,61 +65,38 @@
           return false;
         }
       }
-      if (!empty($password) && !empty($password2)) {
-        if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-          $_SESSION['return'][] = array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data_log),
-            'msg' => 'password_complexity'
-          );
-          return false;
-        }
-        if ($password != $password2) {
-          $_SESSION['return'][] = array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data_log),
-            'msg' => 'password_mismatch'
-          );
-          return false;
-        }
-        $password_hashed = hash_password($password);
-        $valid_domains = 0;
-        foreach ($domains as $domain) {
-          if (!is_valid_domain_name($domain) || mailbox('get', 'domain_details', $domain) === false) {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => array('domain_invalid', htmlspecialchars($domain))
-            );
-            continue;
-          }
-          $valid_domains++;
-          $stmt = $pdo->prepare("INSERT INTO `domain_admins` (`username`, `domain`, `created`, `active`)
-              VALUES (:username, :domain, :created, :active)");
-          $stmt->execute(array(
-            ':username' => $username,
-            ':domain' => $domain,
-            ':created' => date('Y-m-d H:i:s'),
-            ':active' => $active
-          ));
-        }
-        if ($valid_domains != 0) {
-          $stmt = $pdo->prepare("INSERT INTO `admin` (`username`, `password`, `superadmin`, `active`)
-            VALUES (:username, :password_hashed, '0', :active)");
-          $stmt->execute(array(
-            ':username' => $username,
-            ':password_hashed' => $password_hashed,
-            ':active' => $active
-          ));
-        }
+      if (password_check($password, $password2) !== true) {
+        continue;
       }
-      else {
-        $_SESSION['return'][] = array(
-          'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data_log),
-          'msg' => 'password_empty'
-        );
-        return false;
+      $password_hashed = hash_password($password);
+      $valid_domains = 0;
+      foreach ($domains as $domain) {
+        if (!is_valid_domain_name($domain) || mailbox('get', 'domain_details', $domain) === false) {
+          $_SESSION['return'][] = array(
+            'type' => 'danger',
+            'log' => array(__FUNCTION__, $_action, $_data_log),
+            'msg' => array('domain_invalid', htmlspecialchars($domain))
+          );
+          continue;
+        }
+        $valid_domains++;
+        $stmt = $pdo->prepare("INSERT INTO `domain_admins` (`username`, `domain`, `created`, `active`)
+            VALUES (:username, :domain, :created, :active)");
+        $stmt->execute(array(
+          ':username' => $username,
+          ':domain' => $domain,
+          ':created' => date('Y-m-d H:i:s'),
+          ':active' => $active
+        ));
+      }
+      if ($valid_domains != 0) {
+        $stmt = $pdo->prepare("INSERT INTO `admin` (`username`, `password`, `superadmin`, `active`)
+          VALUES (:username, :password_hashed, '0', :active)");
+        $stmt->execute(array(
+          ':username' => $username,
+          ':password_hashed' => $password_hashed,
+          ':active' => $active
+        ));
       }
       $stmt = $pdo->prepare("INSERT INTO `da_acl` (`username`) VALUES (:username)");
       $stmt->execute(array(
@@ -218,22 +195,9 @@
               ));
             }
           }
-          if (!empty($password) && !empty($password2)) {
-            if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-              $_SESSION['return'][] = array(
-                'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_data_log),
-                'msg' => 'password_complexity'
-              );
-              continue;
-            }
-            if ($password != $password2) {
-              $_SESSION['return'][] = array(
-                'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_data_log),
-                'msg' => 'password_mismatch'
-              );
-              continue;
+          if (!empty($password)) {
+            if (password_check($password, $password2) !== true) {
+              return false;
             }
             $password_hashed = hash_password($password);
             $stmt = $pdo->prepare("UPDATE `admin` SET `username` = :username_new, `active` = :active, `password` = :password_hashed WHERE `username` = :username");
@@ -296,30 +260,15 @@
           );
           return false;
         }
-        if (!empty($password_new2) && !empty($password_new)) {
-          if ($password_new2 != $password_new) {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => 'password_mismatch'
-            );
-            return false;
-          }
-          if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password_new)) {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => 'password_complexity'
-            );
-            return false;
-          }
-          $password_hashed = hash_password($password_new);
-          $stmt = $pdo->prepare("UPDATE `admin` SET `password` = :password_hashed WHERE `username` = :username");
-          $stmt->execute(array(
-            ':password_hashed' => $password_hashed,
-            ':username' => $username
-          ));
+        if (password_check($password_new, $password_new2) !== true) {
+          return false;
         }
+        $password_hashed = hash_password($password_new);
+        $stmt = $pdo->prepare("UPDATE `admin` SET `password` = :password_hashed WHERE `username` = :username");
+        $stmt->execute(array(
+          ':password_hashed' => $password_hashed,
+          ':username' => $username
+        ));
         $_SESSION['return'][] = array(
           'type' => 'success',
           'log' => array(__FUNCTION__, $_action, $_data_log),
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.fail2ban.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.fail2ban.inc.php
index 6f6b024..2a7f11e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.fail2ban.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.fail2ban.inc.php
@@ -18,7 +18,7 @@
           }
           if (isset($tmp_wl_data)) {
             natsort($tmp_wl_data);
-            $f2b_options['whitelist'] = implode(PHP_EOL, $tmp_wl_data);
+            $f2b_options['whitelist'] = implode(PHP_EOL, (array)$tmp_wl_data);
           }
           else {
             $f2b_options['whitelist'] = "";
@@ -34,7 +34,7 @@
           }
           if (isset($tmp_bl_data)) {
             natsort($tmp_bl_data);
-            $f2b_options['blacklist'] = implode(PHP_EOL, $tmp_bl_data);
+            $f2b_options['blacklist'] = implode(PHP_EOL, (array)$tmp_bl_data);
           }
           else {
             $f2b_options['blacklist'] = "";
@@ -46,7 +46,11 @@
         $pb = $redis->hGetAll('F2B_PERM_BANS');
         if (is_array($pb)) {
           foreach ($pb as $key => $value) {
-            $f2b_options['perm_bans'][] = $key;
+            $f2b_options['perm_bans'][] = array(
+                'network'=>$key,
+                'ip' => strtok($key,'/')
+            );
+
           }
         }
         else {
@@ -61,6 +65,7 @@
             $f2b_options['active_bans'][] = array(
               'queued_for_unban' => $queued_for_unban,
               'network' => $network,
+              'ip' => strtok($network,'/'),
               'banned_until' => sprintf('%02dh %02dm %02ds', ($difference/3600), ($difference/60%60), $difference%60)
             );
           }
@@ -133,14 +138,6 @@
               $redis->Set('F2B_REGEX', json_encode($regex_array, JSON_UNESCAPED_SLASHES));
             }
           }
-          else {
-            $_SESSION['return'][] = array(
-              'type' => 'success',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
-              'msg' => print_r($_data, true)
-            );
-            return false;
-          }
           $_SESSION['return'][] = array(
             'type' => 'success',
             'log' => array(__FUNCTION__, $_action, $_data_log),
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.fwdhost.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.fwdhost.inc.php
index 5c511f4..d7ac256 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.fwdhost.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.fwdhost.inc.php
@@ -1,8 +1,8 @@
 <?php
 function fwdhost($_action, $_data = null) {
   require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/spf.inc.php';
-	global $redis;
-	global $lang;
+  global $redis;
+  global $lang;
   $_data_log = $_data;
   switch ($_action) {
     case 'add':
@@ -57,7 +57,7 @@
       $_SESSION['return'][] = array(
         'type' => 'success',
         'log' => array(__FUNCTION__, $_action, $_data_log),
-        'msg' => array('forwarding_host_added', htmlspecialchars(implode(', ', $hosts)))
+        'msg' => array('forwarding_host_added', htmlspecialchars(implode(', ', (array)$hosts)))
       );
     break;
     case 'edit':
@@ -180,4 +180,4 @@
       return $fwdhostdetails;
     break;
   }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.inc.php
index e3f2882..142a9fe 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.inc.php
@@ -13,6 +13,17 @@
     return false;
   }
 }
+function readable_random_string($length = 8) {
+  $string = '';
+  $vowels = array('a', 'e', 'i', 'o', 'u');
+  $consonants = array('b', 'c', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'p', 'r', 's', 't', 'v', 'w', 'x', 'y', 'z');
+  $max = $length / 2;
+  for ($i = 1; $i <= $max; $i++) {
+    $string .= $consonants[rand(0,19)];
+    $string .= $vowels[rand(0,4)];
+  }
+  return $string;
+}
 // Validates ips and cidrs
 function valid_network($network) {
   if (filter_var($network, FILTER_VALIDATE_IP)) {
@@ -88,40 +99,253 @@
   // in case default pass scheme is not defined, falling back to BLF-CRYPT.
   global $default_pass_scheme;
   $pw_hash = NULL;
-  switch (strtoupper($default_pass_scheme)) {
-    case "SSHA":
-      $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
-      $pw_hash = "{SSHA}".base64_encode(hash('sha1', $password . $salt_str, true) . $salt_str);
-      break;
-    case "SSHA256":
-      $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
-      $pw_hash = "{SSHA256}".base64_encode(hash('sha256', $password . $salt_str, true) . $salt_str);
-      break;
-    case "SSHA512":
-      $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
-      $pw_hash = "{SSHA512}".base64_encode(hash('sha512', $password . $salt_str, true) . $salt_str);
-      break;
-    case "BLF-CRYPT":
-    default:
-      $pw_hash = "{BLF-CRYPT}" . password_hash($password, PASSWORD_BCRYPT);
-      break;
+  // support pre-hashed passwords
+  if (preg_match('/^{(ARGON2I|ARGON2ID|BLF-CRYPT|CLEAR|CLEARTEXT|CRYPT|DES-CRYPT|LDAP-MD5|MD5|MD5-CRYPT|PBKDF2|PLAIN|PLAIN-MD4|PLAIN-MD5|PLAIN-TRUNC|PLAIN-TRUNC|SHA|SHA1|SHA256|SHA256-CRYPT|SHA512|SHA512-CRYPT|SMD5|SSHA|SSHA256|SSHA512)}/i', $password)) {
+    $pw_hash = $password;
+  }
+  else {
+    switch (strtoupper($default_pass_scheme)) {
+      case "SSHA":
+        $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
+        $pw_hash = "{SSHA}".base64_encode(hash('sha1', $password . $salt_str, true) . $salt_str);
+        break;
+      case "SSHA256":
+        $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
+        $pw_hash = "{SSHA256}".base64_encode(hash('sha256', $password . $salt_str, true) . $salt_str);
+        break;
+      case "SSHA512":
+        $salt_str = bin2hex(openssl_random_pseudo_bytes(8));
+        $pw_hash = "{SSHA512}".base64_encode(hash('sha512', $password . $salt_str, true) . $salt_str);
+        break;
+      case "BLF-CRYPT":
+      default:
+        $pw_hash = "{BLF-CRYPT}" . password_hash($password, PASSWORD_BCRYPT);
+        break;
+    }
   }
   return $pw_hash;
 }
-function last_login($user) {
-  global $pdo;
-  $stmt = $pdo->prepare('SELECT `remote`, `time` FROM `logs`
-    WHERE JSON_EXTRACT(`call`, "$[0]") = "check_login"
-      AND JSON_EXTRACT(`call`, "$[1]") = :user
-      AND `type` = "success" ORDER BY `time` DESC LIMIT 1');
-  $stmt->execute(array(':user' => $user));
-  $row = $stmt->fetch(PDO::FETCH_ASSOC);
-  if (!empty($row)) {
-    return $row;
+function password_complexity($_action, $_data = null) {
+  global $redis;
+  global $lang;
+  switch ($_action) {
+    case 'edit':
+      if ($_SESSION['mailcow_cc_role'] != "admin") {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data),
+          'msg' => 'access_denied'
+        );
+        return false;
+      }
+      $is_now = password_complexity('get');
+      if (!empty($is_now)) {
+        $length = (isset($_data['length']) && intval($_data['length']) >= 3) ? intval($_data['length']) : $is_now['length'];
+        $chars = (isset($_data['chars'])) ? intval($_data['chars']) : $is_now['chars'];
+        $lowerupper = (isset($_data['lowerupper'])) ? intval($_data['lowerupper']) : $is_now['lowerupper'];
+        $special_chars = (isset($_data['special_chars'])) ? intval($_data['special_chars']) : $is_now['special_chars'];
+        $numbers = (isset($_data['numbers'])) ? intval($_data['numbers']) : $is_now['numbers'];
+      }
+      try {
+        $redis->hMSet('PASSWD_POLICY', [
+          'length' => $length,
+          'chars' => $chars,
+          'special_chars' => $special_chars,
+          'lowerupper' => $lowerupper,
+          'numbers' => $numbers
+        ]);
+      }
+      catch (RedisException $e) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data),
+          'msg' => array('redis_error', $e)
+        );
+        return false;
+      }
+      $_SESSION['return'][] = array(
+        'type' => 'success',
+        'log' => array(__FUNCTION__, $_action, $_data),
+        'msg' => 'password_policy_saved'
+      );
+    break;
+    case 'get':
+      try {
+        $length = $redis->hGet('PASSWD_POLICY', 'length');
+        $chars = $redis->hGet('PASSWD_POLICY', 'chars');
+        $special_chars = $redis->hGet('PASSWD_POLICY', 'special_chars');
+        $lowerupper = $redis->hGet('PASSWD_POLICY', 'lowerupper');
+        $numbers = $redis->hGet('PASSWD_POLICY', 'numbers');
+        return array(
+          'length' => $length,
+          'chars' => $chars,
+          'special_chars' => $special_chars,
+          'lowerupper' => $lowerupper,
+          'numbers' => $numbers
+        );
+      }
+      catch (RedisException $e) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data),
+          'msg' => array('redis_error', $e)
+        );
+        return false;
+      }
+      return false;
+    break;
+    case 'html':
+      $policies = password_complexity('get');
+      foreach ($policies as $name => $value) {
+        if ($value != 0) {
+          $policy_text[] = sprintf($lang['admin']["password_policy_$name"], $value);
+        }
+      }
+      return '<p class="help-block small">- ' . implode('<br>- ', (array)$policy_text) . '</p>';
+    break;
   }
-  else {
+}
+function password_check($password1, $password2) {
+  $password_complexity = password_complexity('get');
+
+  if (empty($password1) || empty($password2)) {
+    $_SESSION['return'][] = array(
+      'type' => 'danger',
+      'log' => array(__FUNCTION__, $_action, $_type),
+      'msg' => 'password_complexity'
+    );
     return false;
   }
+
+  if ($password1 != $password2) {
+    $_SESSION['return'][] = array(
+      'type' => 'danger',
+      'log' => array(__FUNCTION__, $_action, $_type),
+      'msg' => 'password_mismatch'
+    );
+    return false;
+  }
+
+  $given_password['length'] = strlen($password1);
+  $given_password['special_chars'] = preg_match('/[^a-zA-Z\d]/', $password1);
+  $given_password['chars'] = preg_match('/[a-zA-Z]/',$password1);
+  $given_password['numbers'] = preg_match('/\d/', $password1);
+  $lower = strlen(preg_replace("/[^a-z]/", '', $password1));
+  $upper = strlen(preg_replace("/[^A-Z]/", '', $password1));
+  $given_password['lowerupper'] = ($lower > 0 && $upper > 0) ? true : false;
+
+  if (
+    ($given_password['length'] < $password_complexity['length']) ||
+    ($password_complexity['special_chars'] == 1 && (intval($given_password['special_chars']) != $password_complexity['special_chars'])) ||
+    ($password_complexity['chars'] == 1 && (intval($given_password['chars']) != $password_complexity['chars'])) ||
+    ($password_complexity['numbers'] == 1 && (intval($given_password['numbers']) != $password_complexity['numbers'])) ||
+    ($password_complexity['lowerupper'] == 1 && (intval($given_password['lowerupper']) != $password_complexity['lowerupper']))
+  ) {
+    $_SESSION['return'][] = array(
+      'type' => 'danger',
+      'log' => array(__FUNCTION__, $_action, $_type),
+      'msg' => 'password_complexity'
+    );
+    return false;
+  }
+
+  return true;
+}
+function last_login($action, $username, $sasl_limit_days = 7) {
+  global $pdo;
+  global $redis;
+  $sasl_limit_days = intval($sasl_limit_days);
+  switch ($action) {
+    case 'get':
+      if (filter_var($username, FILTER_VALIDATE_EMAIL) && hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $username)) {
+        $stmt = $pdo->prepare('SELECT `real_rip`, MAX(`datetime`) as `datetime`, `service`, `app_password` FROM `sasl_log`
+          LEFT OUTER JOIN `app_passwd` on `sasl_log`.`app_password` = `app_passwd`.`id`
+          WHERE `username` = :username
+            AND HOUR(TIMEDIFF(NOW(), `datetime`)) < :sasl_limit_days
+              GROUP BY `real_rip`, `service`, `app_password`
+              ORDER BY `datetime` DESC;');
+        $stmt->execute(array(':username' => $username, ':sasl_limit_days' => ($sasl_limit_days * 24)));
+        $sasl = $stmt->fetchAll(PDO::FETCH_ASSOC);
+        foreach ($sasl as $k => $v) {
+          if (!filter_var($sasl[$k]['real_rip'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
+            $sasl[$k]['real_rip'] = 'Web/EAS/Internal (' . $sasl[$k]['real_rip'] . ')';
+          }
+          elseif (filter_var($sasl[$k]['real_rip'], FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
+            try {
+              $sasl[$k]['location'] = $redis->hGet('IP_SHORTCOUNTRY', $sasl[$k]['real_rip']);
+            }
+            catch (RedisException $e) {
+              $_SESSION['return'][] = array(
+                'type' => 'danger',
+                'log' => array(__FUNCTION__, $_action, $_data_log),
+                'msg' => array('redis_error', $e)
+              );
+              return false;
+            }
+            if (!$sasl[$k]['location']) {
+              $curl = curl_init();
+              curl_setopt($curl, CURLOPT_URL,"https://dfdata.bella.network/lookup/" . $sasl[$k]['real_rip']);
+              curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
+              curl_setopt($curl, CURLOPT_USERAGENT, 'Moocow');
+              curl_setopt($curl, CURLOPT_TIMEOUT, 5);
+              $ip_data = curl_exec($curl);
+              if (!curl_errno($curl)) {
+                $ip_data_array = json_decode($ip_data, true);
+                if ($ip_data_array !== false and !empty($ip_data_array['location']['shortcountry'])) {
+                  $sasl[$k]['location'] = $ip_data_array['location']['shortcountry'];
+                    try {
+                      $redis->hSet('IP_SHORTCOUNTRY', $sasl[$k]['real_rip'], $ip_data_array['location']['shortcountry']);
+                    }
+                    catch (RedisException $e) {
+                      $_SESSION['return'][] = array(
+                        'type' => 'danger',
+                        'log' => array(__FUNCTION__, $_action, $_data_log),
+                        'msg' => array('redis_error', $e)
+                      );
+                      curl_close($curl);
+                      return false;
+                    }
+                }
+              }
+              curl_close($curl);
+            }
+          }
+        }
+      }
+      else {
+        $sasl = array();
+      }
+      if ($_SESSION['mailcow_cc_role'] == "admin" || $username == $_SESSION['mailcow_cc_username']) {
+        $stmt = $pdo->prepare('SELECT `remote`, `time` FROM `logs`
+          WHERE JSON_EXTRACT(`call`, "$[0]") = "check_login"
+            AND JSON_EXTRACT(`call`, "$[1]") = :username
+            AND `type` = "success" ORDER BY `time` DESC LIMIT 1 OFFSET 1');
+        $stmt->execute(array(':username' => $username));
+        $ui = $stmt->fetch(PDO::FETCH_ASSOC);
+      }
+      else {
+        $ui = array();
+      }
+
+      return array('ui' => $ui, 'sasl' => $sasl);
+    break;
+    case 'reset':
+      if (filter_var($username, FILTER_VALIDATE_EMAIL) && hasMailboxObjectAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $username)) {
+        $stmt = $pdo->prepare('DELETE FROM `sasl_log`
+          WHERE `username` = :username');
+        $stmt->execute(array(':username' => $username));
+      }
+      if ($_SESSION['mailcow_cc_role'] == "admin" || $username == $_SESSION['mailcow_cc_username']) {
+        $stmt = $pdo->prepare('DELETE FROM `logs`
+          WHERE JSON_EXTRACT(`call`, "$[0]") = "check_login"
+            AND JSON_EXTRACT(`call`, "$[1]") = :username
+            AND `type` = "success"');
+        $stmt->execute(array(':username' => $username));
+      }
+      return true;
+    break;
+  }
+
 }
 function flush_memcached() {
   try {
@@ -135,13 +359,13 @@
 }
 function sys_mail($_data) {
   if ($_SESSION['mailcow_cc_role'] != "admin") {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'access_denied'
-		);
-		return false;
-	}
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
   $excludes = $_data['mass_exclude'];
   $includes = $_data['mass_include'];
   $mailboxes = array();
@@ -150,28 +374,28 @@
   $mass_html = $_data['mass_html'];
   $mass_subject = $_data['mass_subject'];
   if (!filter_var($mass_from, FILTER_VALIDATE_EMAIL)) {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'from_invalid'
-		);
-		return false;
+      'msg' => 'from_invalid'
+    );
+    return false;
   }
   if (empty($mass_subject)) {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'subject_empty'
-		);
-		return false;
+      'msg' => 'subject_empty'
+    );
+    return false;
   }
   if (empty($mass_text)) {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'text_empty'
-		);
-		return false;
+      'msg' => 'text_empty'
+    );
+    return false;
   }
   $domains = array_merge(mailbox('get', 'domains'), mailbox('get', 'alias_domains'));
   foreach ($domains as $domain) {
@@ -265,8 +489,14 @@
     $task = substr(strtoupper(md5(uniqid(rand(), true))), 0, 6);
     foreach ($_data['return'] as $return) {
       $type = $return['type'];
-      $msg = json_encode($return['msg'], JSON_UNESCAPED_UNICODE);
-      $call = json_encode($return['log'], JSON_UNESCAPED_UNICODE);
+      $msg = null;
+      if (isset($return['msg'])) {
+        $msg = json_encode($return['msg'], JSON_UNESCAPED_UNICODE);
+      }
+      $call = null;
+      if (isset($return['log'])) {
+        $call = json_encode($return['log'], JSON_UNESCAPED_UNICODE);
+      }
       if (!empty($_SESSION["dual-login"]["username"])) {
         $user = $_SESSION["dual-login"]["username"] . ' => ' . $_SESSION['mailcow_cc_username'];
         $role = $_SESSION["dual-login"]["role"] . ' => ' . $_SESSION['mailcow_cc_role'];
@@ -303,16 +533,16 @@
   }
 }
 function hasDomainAccess($username, $role, $domain) {
-	global $pdo;
-	if (!filter_var($username, FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
-		return false;
-	}
-	if (empty($domain) || !is_valid_domain_name($domain)) {
-		return false;
-	}
-	if ($role != 'admin' && $role != 'domainadmin') {
-		return false;
-	}
+  global $pdo;
+  if (!filter_var($username, FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
+    return false;
+  }
+  if (empty($domain) || !is_valid_domain_name($domain)) {
+    return false;
+  }
+  if ($role != 'admin' && $role != 'domainadmin') {
+    return false;
+  }
   if ($role == 'admin') {
     $stmt = $pdo->prepare("SELECT `domain` FROM `domain`
       WHERE `domain` = :domain");
@@ -339,48 +569,49 @@
       return true;
     }
   }
-	return false;
+  return false;
 }
 function hasMailboxObjectAccess($username, $role, $object) {
-	global $pdo;
-	if (empty($username) || empty($role) || empty($object)) {
-		return false;
-	}
-	if (!filter_var(html_entity_decode(rawurldecode($username)), FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
-		return false;
-	}
-	if ($role != 'admin' && $role != 'domainadmin' && $role != 'user') {
-		return false;
-	}
-	if ($username == $object) {
-		return true;
-	}
+  global $pdo;
+  if (empty($username) || empty($role) || empty($object)) {
+    return false;
+  }
+  if (!filter_var(html_entity_decode(rawurldecode($username)), FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
+    return false;
+  }
+  if ($role != 'admin' && $role != 'domainadmin' && $role != 'user') {
+    return false;
+  }
+  if ($username == $object) {
+    return true;
+  }
   $stmt = $pdo->prepare("SELECT `domain` FROM `mailbox` WHERE `username` = :object");
   $stmt->execute(array(':object' => $object));
   $row = $stmt->fetch(PDO::FETCH_ASSOC);
   if (isset($row['domain']) && hasDomainAccess($username, $role, $row['domain'])) {
     return true;
   }
-	return false;
+  return false;
 }
+// does also verify mailboxes as a mailbox is a alias == goto
 function hasAliasObjectAccess($username, $role, $object) {
-	global $pdo;
-	if (!filter_var(html_entity_decode(rawurldecode($username)), FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
-		return false;
-	}
-	if ($role != 'admin' && $role != 'domainadmin' && $role != 'user') {
-		return false;
-	}
-	if ($username == $object) {
-		return true;
-	}
+  global $pdo;
+  if (empty($username) || empty($role) || empty($object)) {
+    return false;
+  }
+  if (!filter_var(html_entity_decode(rawurldecode($username)), FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $username))) {
+    return false;
+  }
+  if ($role != 'admin' && $role != 'domainadmin' && $role != 'user') {
+    return false;
+  }
   $stmt = $pdo->prepare("SELECT `domain` FROM `alias` WHERE `address` = :object");
   $stmt->execute(array(':object' => $object));
   $row = $stmt->fetch(PDO::FETCH_ASSOC);
   if (isset($row['domain']) && hasDomainAccess($username, $role, $row['domain'])) {
     return true;
   }
-	return false;
+  return false;
 }
 function pem_to_der($pem_key) {
   // Need to remove BEGIN/END PUBLIC KEY
@@ -390,9 +621,9 @@
   return base64_decode(implode('', $lines));
 }
 function expand_ipv6($ip) {
-	$hex = unpack("H*hex", inet_pton($ip));
-	$ip = substr(preg_replace("/([A-f0-9]{4})/", "$1:", $hex['hex']), 0, -1);
-	return $ip;
+  $hex = unpack("H*hex", inet_pton($ip));
+  $ip = substr(preg_replace("/([A-f0-9]{4})/", "$1:", $hex['hex']), 0, -1);
+  return $ip;
 }
 function generate_tlsa_digest($hostname, $port, $starttls = null) {
   if (!is_valid_domain_name($hostname)) {
@@ -453,15 +684,20 @@
     return 'Error: Cannot read peer certificate';
   }
 }
-function alertbox_log_parser($_data){
+function alertbox_log_parser($_data) {
   global $lang;
   if (isset($_data['return'])) {
     foreach ($_data['return'] as $return) {
       // Get type
       $type = $return['type'];
       // If a lang[type][msg] string exists, use it as message
-      if (is_string($lang[$return['type']][$return['msg']])) {
-        $msg = $lang[$return['type']][$return['msg']];
+      if (isset($return['type']) && isset($return['msg']) && !is_array($return['msg'])) {
+        if (isset($lang[$return['type']][$return['msg']])) {
+          $msg = $lang[$return['type']][$return['msg']];
+        }
+        else {
+          $msg = $return['msg'];
+        }
       }
       // If msg is an array, use first element as language string and run printf on it with remaining array elements
       elseif (is_array($return['msg'])) {
@@ -471,9 +707,8 @@
           $return['msg']
         );
       }
-      // If none applies, use msg as returned message
       else {
-        $msg = $return['msg'];
+        $msg = '-';
       }
       $log_array[] = array('msg' => $msg, 'type' => json_encode($type));
     }
@@ -483,100 +718,116 @@
   }
   return false;
 }
+function verify_salted_hash($hash, $password, $algo, $salt_length) {
+  // Decode hash
+  $dhash = base64_decode($hash);
+  // Get first n bytes of binary which equals a SSHA hash
+  $ohash = substr($dhash, 0, $salt_length);
+  // Remove SSHA hash from decoded hash to get original salt string
+  $osalt = str_replace($ohash, '', $dhash);
+  // Check single salted SSHA hash against extracted hash
+  if (hash_equals(hash($algo, $password . $osalt, true), $ohash)) {
+    return true;
+  }
+  return false;
+}
 function verify_hash($hash, $password) {
-  if (preg_match('/^{SSHA256}/i', $hash)) {
-    // Remove tag if any
-    $hash = preg_replace('/^{SSHA256}/i', '', $hash);
-    // Decode hash
-    $dhash = base64_decode($hash);
-    // Get first 32 bytes of binary which equals a SHA256 hash
-    $ohash = substr($dhash, 0, 32);
-    // Remove SHA256 hash from decoded hash to get original salt string
-    $osalt = str_replace($ohash, '', $dhash);
-    // Check single salted SHA256 hash against extracted hash
-    if (hash_equals(hash('sha256', $password . $osalt, true), $ohash)) {
-      return true;
-    }
-  }
-  elseif (preg_match('/^{SSHA}/i', $hash)) {
-    // Remove tag if any
-    $hash = preg_replace('/^{SSHA}/i', '', $hash);
-    // Decode hash
-    $dhash = base64_decode($hash);
-    // Get first 20 bytes of binary which equals a SSHA hash
-    $ohash = substr($dhash, 0, 20);
-    // Remove SSHA hash from decoded hash to get original salt string
-    $osalt = str_replace($ohash, '', $dhash);
-    // Check single salted SSHA hash against extracted hash
-    if (hash_equals(hash('sha1', $password . $osalt, true), $ohash)) {
-      return true;
-    }
-  }
-  elseif (preg_match('/^{PLAIN-MD5}/i', $hash)) {
-    $hash = preg_replace('/^{PLAIN-MD5}/i', '', $hash);
-    if (md5($password) == $hash) {
-      return true;
-    }
-  }
-  elseif (preg_match('/^{SHA512-CRYPT}/i', $hash)) {
-    // Remove tag if any
-    $hash = preg_replace('/^{SHA512-CRYPT}/i', '', $hash);
-    // Decode hash
-    preg_match('/\\$6\\$(.*)\\$(.*)/i', $hash, $hash_array);
-    $osalt = $hash_array[1];
-    $ohash = $hash_array[2];
-    if (hash_equals(crypt($password, '$6$' . $osalt . '$'), $hash)) {
-      return true;
-    }
-  }
-  elseif (preg_match('/^{SSHA512}/i', $hash)) {
-    $hash = preg_replace('/^{SSHA512}/i', '', $hash);
-    // Decode hash
-    $dhash = base64_decode($hash);
-    // Get first 64 bytes of binary which equals a SHA512 hash
-    $ohash = substr($dhash, 0, 64);
-    // Remove SHA512 hash from decoded hash to get original salt string
-    $osalt = str_replace($ohash, '', $dhash);
-    // Check single salted SHA512 hash against extracted hash
-    if (hash_equals(hash('sha512', $password . $osalt, true), $ohash)) {
-      return true;
-    }
-  }
-  elseif (preg_match('/^{MD5-CRYPT}/i', $hash)) {
-    $hash = preg_replace('/^{MD5-CRYPT}/i', '', $hash);
-    if (password_verify($password, $hash)) {
-      return true;
-    }
-  } 
-  elseif (preg_match('/^{BLF-CRYPT}/i', $hash)) {
-    $hash = preg_replace('/^{BLF-CRYPT}/i', '', $hash);
-    if (password_verify($password, $hash)) {
-      return true;
+  if (preg_match('/^{(.+)}(.+)/i', $hash, $hash_array)) {
+    $scheme = strtoupper($hash_array[1]);
+    $hash = $hash_array[2];
+    switch ($scheme) {
+      case "ARGON2I":
+      case "ARGON2ID":
+      case "BLF-CRYPT":
+      case "CRYPT":
+      case "DES-CRYPT":
+      case "MD5-CRYPT":
+      case "MD5":
+      case "SHA256-CRYPT":
+      case "SHA512-CRYPT":
+        return password_verify($password, $hash);
+
+      case "CLEAR":
+      case "CLEARTEXT":
+      case "PLAIN":
+        return $password == $hash;
+
+      case "LDAP-MD5":
+        $hash = base64_decode($hash);
+        return hash_equals(hash('md5', $password, true), $hash);
+
+      case "PBKDF2":
+        $components = explode('$', $hash);
+        $salt = $components[2];
+        $rounds = $components[3];
+        $hash = $components[4];
+        return hash_equals(hash_pbkdf2('sha1', $password, $salt, $rounds), $hash);
+
+      case "PLAIN-MD4":
+        return hash_equals(hash('md4', $password), $hash);
+
+      case "PLAIN-MD5":
+        return md5($password) == $hash;
+
+      case "PLAIN-TRUNC":
+        $components = explode('-', $hash);
+        if (count($components) > 1) {
+          $trunc_len = $components[0];
+          $trunc_password = $components[1];
+
+          return substr($password, 0, $trunc_len) == $trunc_password;
+        } else {
+          return $password == $hash;
+        }
+
+      case "SHA":
+      case "SHA1":
+      case "SHA256":
+      case "SHA512":
+        // SHA is an alias for SHA1
+        $scheme = $scheme == "SHA" ? "sha1" : strtolower($scheme);
+        $hash = base64_decode($hash);
+        return hash_equals(hash($scheme, $password, true), $hash);
+
+      case "SMD5":
+        return verify_salted_hash($hash, $password, 'md5', 16);
+
+      case "SSHA":
+        return verify_salted_hash($hash, $password, 'sha1', 20);
+
+      case "SSHA256":
+        return verify_salted_hash($hash, $password, 'sha256', 32);
+
+      case "SSHA512":
+        return verify_salted_hash($hash, $password, 'sha512', 64);
+
+      default:
+        return false;
     }
   }
   return false;
 }
 function check_login($user, $pass) {
-	global $pdo;
-	global $redis;
-	global $imap_server;
-	if (!filter_var($user, FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $user))) {
+  global $pdo;
+  global $redis;
+  global $imap_server;
+  if (!filter_var($user, FILTER_VALIDATE_EMAIL) && !ctype_alnum(str_replace(array('_', '.', '-'), '', $user))) {
     $_SESSION['return'][] =  array(
       'type' => 'danger',
       'log' => array(__FUNCTION__, $user, '*'),
       'msg' => 'malformed_username'
     );
-		return false;
-	}
-	$user = strtolower(trim($user));
-	$stmt = $pdo->prepare("SELECT `password` FROM `admin`
-			WHERE `superadmin` = '1'
-			AND `active` = '1'
-			AND `username` = :user");
-	$stmt->execute(array(':user' => $user));
-	$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	foreach ($rows as $row) {
-		if (verify_hash($row['password'], $pass)) {
+    return false;
+  }
+  $user = strtolower(trim($user));
+  $stmt = $pdo->prepare("SELECT `password` FROM `admin`
+      WHERE `superadmin` = '1'
+      AND `active` = '1'
+      AND `username` = :user");
+  $stmt->execute(array(':user' => $user));
+  $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+  foreach ($rows as $row) {
+    if (verify_hash($row['password'], $pass)) {
       if (get_tfa($user)['name'] != "none") {
         $_SESSION['pending_mailcow_cc_username'] = $user;
         $_SESSION['pending_mailcow_cc_role'] = "admin";
@@ -601,16 +852,16 @@
         );
         return "admin";
       }
-		}
-	}
-	$stmt = $pdo->prepare("SELECT `password` FROM `admin`
-			WHERE `superadmin` = '0'
-			AND `active`='1'
-			AND `username` = :user");
-	$stmt->execute(array(':user' => $user));
-	$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	foreach ($rows as $row) {
-		if (verify_hash($row['password'], $pass) !== false) {
+    }
+  }
+  $stmt = $pdo->prepare("SELECT `password` FROM `admin`
+      WHERE `superadmin` = '0'
+      AND `active`='1'
+      AND `username` = :user");
+  $stmt->execute(array(':user' => $user));
+  $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+  foreach ($rows as $row) {
+    if (verify_hash($row['password'], $pass) !== false) {
       if (get_tfa($user)['name'] != "none") {
         $_SESSION['pending_mailcow_cc_username'] = $user;
         $_SESSION['pending_mailcow_cc_role'] = "domainadmin";
@@ -635,55 +886,55 @@
         );
         return "domainadmin";
       }
-		}
-	}
-	$stmt = $pdo->prepare("SELECT `password` FROM `mailbox`
+    }
+  }
+  $stmt = $pdo->prepare("SELECT `password` FROM `mailbox`
       INNER JOIN domain on mailbox.domain = domain.domain
-			WHERE `kind` NOT REGEXP 'location|thing|group'
+      WHERE `kind` NOT REGEXP 'location|thing|group'
         AND `mailbox`.`active`='1'
         AND `domain`.`active`='1'
         AND `username` = :user");
-	$stmt->execute(array(':user' => $user));
-	$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	foreach ($rows as $row) {
-		if (verify_hash($row['password'], $pass) !== false) {
-			unset($_SESSION['ldelay']);
+  $stmt->execute(array(':user' => $user));
+  $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+  foreach ($rows as $row) {
+    if (verify_hash($row['password'], $pass) !== false) {
+      unset($_SESSION['ldelay']);
       $_SESSION['return'][] =  array(
         'type' => 'success',
         'log' => array(__FUNCTION__, $user, '*'),
         'msg' => array('logged_in_as', $user)
       );
-			return "user";
-		}
-	}
-	if (!isset($_SESSION['ldelay'])) {
-		$_SESSION['ldelay'] = "0";
+      return "user";
+    }
+  }
+  if (!isset($_SESSION['ldelay'])) {
+    $_SESSION['ldelay'] = "0";
     $redis->publish("F2B_CHANNEL", "mailcow UI: Invalid password for " . $user . " by " . $_SERVER['REMOTE_ADDR']);
     error_log("mailcow UI: Invalid password for " . $user . " by " . $_SERVER['REMOTE_ADDR']);
-	}
-	elseif (!isset($_SESSION['mailcow_cc_username'])) {
-		$_SESSION['ldelay'] = $_SESSION['ldelay']+0.5;
+  }
+  elseif (!isset($_SESSION['mailcow_cc_username'])) {
+    $_SESSION['ldelay'] = $_SESSION['ldelay']+0.5;
     $redis->publish("F2B_CHANNEL", "mailcow UI: Invalid password for " . $user . " by " . $_SERVER['REMOTE_ADDR']);
-		error_log("mailcow UI: Invalid password for " . $user . " by " . $_SERVER['REMOTE_ADDR']);
-	}
+    error_log("mailcow UI: Invalid password for " . $user . " by " . $_SERVER['REMOTE_ADDR']);
+  }
   $_SESSION['return'][] =  array(
     'type' => 'danger',
     'log' => array(__FUNCTION__, $user, '*'),
     'msg' => 'login_failed'
   );
-	sleep($_SESSION['ldelay']);
+  sleep($_SESSION['ldelay']);
   return false;
 }
 function formatBytes($size, $precision = 2) {
-	if(!is_numeric($size)) {
-		return "0";
-	}
-	$base = log($size, 1024);
-	$suffixes = array(' Byte', ' KiB', ' MiB', ' GiB', ' TiB');
-	if ($size == "0") {
-		return "0";
-	}
-	return round(pow(1024, $base - floor($base)), $precision) . $suffixes[floor($base)];
+  if(!is_numeric($size)) {
+    return "0";
+  }
+  $base = log($size, 1024);
+  $suffixes = array(' Byte', ' KiB', ' MiB', ' GiB', ' TiB');
+  if ($size == "0") {
+    return "0";
+  }
+  return round(pow(1024, $base - floor($base)), $precision) . $suffixes[floor($base)];
 }
 function update_sogo_static_view() {
   if (getenv('SKIP_SOGO') == "y") {
@@ -702,15 +953,15 @@
   flush_memcached();
 }
 function edit_user_account($_data) {
-	global $lang;
-	global $pdo;
+  global $lang;
+  global $pdo;
   $_data_log = $_data;
   !isset($_data_log['user_new_pass']) ?: $_data_log['user_new_pass'] = '*';
   !isset($_data_log['user_new_pass2']) ?: $_data_log['user_new_pass2'] = '*';
   !isset($_data_log['user_old_pass']) ?: $_data_log['user_old_pass'] = '*';
   $username = $_SESSION['mailcow_cc_username'];
   $role = $_SESSION['mailcow_cc_role'];
-	$password_old = $_data['user_old_pass'];
+  $password_old = $_data['user_old_pass'];
   if (filter_var($username, FILTER_VALIDATE_EMAIL === false) || $role != 'user') {
     $_SESSION['return'][] =  array(
       'type' => 'danger',
@@ -719,15 +970,11 @@
     );
     return false;
   }
-	if (isset($_data['user_new_pass']) && isset($_data['user_new_pass2'])) {
-		$password_new	= $_data['user_new_pass'];
-		$password_new2	= $_data['user_new_pass2'];
-	}
-	$stmt = $pdo->prepare("SELECT `password` FROM `mailbox`
-			WHERE `kind` NOT REGEXP 'location|thing|group'
+  $stmt = $pdo->prepare("SELECT `password` FROM `mailbox`
+      WHERE `kind` NOT REGEXP 'location|thing|group'
         AND `username` = :user");
-	$stmt->execute(array(':user' => $username));
-	$row = $stmt->fetch(PDO::FETCH_ASSOC);
+  $stmt->execute(array(':user' => $username));
+  $row = $stmt->fetch(PDO::FETCH_ASSOC);
   if (!verify_hash($row['password'], $password_old)) {
     $_SESSION['return'][] =  array(
       'type' => 'danger',
@@ -736,59 +983,43 @@
     );
     return false;
   }
-	if (isset($password_new) && isset($password_new2)) {
-		if (!empty($password_new2) && !empty($password_new)) {
-			if ($password_new2 != $password_new) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
-          'log' => array(__FUNCTION__, $_data_log),
-					'msg' => 'password_mismatch'
-				);
-				return false;
-			}
-			if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password_new)) {
-					$_SESSION['return'][] =  array(
-						'type' => 'danger',
-            'log' => array(__FUNCTION__, $_data_log),
-						'msg' => 'password_complexity'
-					);
-					return false;
-			}
-			$password_hashed = hash_password($password_new);
-			try {
-				$stmt = $pdo->prepare("UPDATE `mailbox` SET `password` = :password_hashed, `attributes` = JSON_SET(`attributes`, '$.force_pw_update', '0') WHERE `username` = :username");
-				$stmt->execute(array(
-					':password_hashed' => $password_hashed,
-					':username' => $username
-				));
-			}
-			catch (PDOException $e) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
-          'log' => array(__FUNCTION__, $_data_log),
-					'msg' => array('mysql_error', $e)
-				);
-				return false;
-			}
-		}
-	}
+  if (!empty($_data['user_new_pass']) && !empty($_data['user_new_pass2'])) {
+    $password_new = $_data['user_new_pass'];
+    $password_new2  = $_data['user_new_pass2'];
+    if (password_check($password_new, $password_new2) !== true) {
+      return false;
+    }
+    $password_hashed = hash_password($password_new);
+    $stmt = $pdo->prepare("UPDATE `mailbox` SET `password` = :password_hashed,
+      `attributes` = JSON_SET(`attributes`, '$.force_pw_update', '0'),
+      `attributes` = JSON_SET(`attributes`, '$.passwd_update', NOW())
+        WHERE `username` = :username");
+    $stmt->execute(array(
+      ':password_hashed' => $password_hashed,
+      ':username' => $username
+    ));
+  }
   update_sogo_static_view();
-	$_SESSION['return'][] =  array(
-		'type' => 'success',
+  $_SESSION['return'][] =  array(
+    'type' => 'success',
     'log' => array(__FUNCTION__, $_data_log),
-		'msg' => array('mailbox_modified', htmlspecialchars($username))
-	);
+    'msg' => array('mailbox_modified', htmlspecialchars($username))
+  );
 }
 function user_get_alias_details($username) {
-	global $pdo;
-  $data['direct_aliases'] = false;
-  $data['shared_aliases'] = false;
+  global $pdo;
+  global $lang;
+  $data['direct_aliases'] = array();
+  $data['shared_aliases'] = array();
   if ($_SESSION['mailcow_cc_role'] == "user") {
-    $username	= $_SESSION['mailcow_cc_username'];
+    $username = $_SESSION['mailcow_cc_username'];
   }
   if (!filter_var($username, FILTER_VALIDATE_EMAIL)) {
     return false;
   }
+  if (!hasMailboxObjectAccess($username, $_SESSION['mailcow_cc_role'], $username)) {
+    return false;
+  }
   $data['address'] = $username;
   $stmt = $pdo->prepare("SELECT `address` AS `shared_aliases`, `public_comment` FROM `alias`
     WHERE `goto` REGEXP :username_goto
@@ -803,7 +1034,6 @@
   $run = $stmt->fetchAll(PDO::FETCH_ASSOC);
   while ($row = array_shift($run)) {
     $data['shared_aliases'][$row['shared_aliases']]['public_comment'] = htmlspecialchars($row['public_comment']);
-
     //$data['shared_aliases'][] = $row['shared_aliases'];
   }
 
@@ -829,21 +1059,22 @@
     if (empty($row['ad_alias'])) {
       continue;
     }
-    $data['direct_aliases'][$row['ad_alias']]['public_comment'] = '↪ ' . $row['alias_domain'];
+    $data['direct_aliases'][$row['ad_alias']]['public_comment'] = $lang['add']['alias_domain'];
+    $data['alias_domains'][] = $row['alias_domain'];
   }
-  $stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`send_as` SEPARATOR ', '), '&#10008;') AS `send_as` FROM `sender_acl` WHERE `logged_in_as` = :username AND `send_as` NOT LIKE '@%';");
+  $stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`send_as` SEPARATOR ', '), '') AS `send_as` FROM `sender_acl` WHERE `logged_in_as` = :username AND `send_as` NOT LIKE '@%';");
   $stmt->execute(array(':username' => $username));
   $run = $stmt->fetchAll(PDO::FETCH_ASSOC);
   while ($row = array_shift($run)) {
     $data['aliases_also_send_as'] = $row['send_as'];
   }
-  $stmt = $pdo->prepare("SELECT CONCAT_WS(', ', IFNULL(GROUP_CONCAT(DISTINCT `send_as` SEPARATOR ', '), '&#10008;'), GROUP_CONCAT(DISTINCT CONCAT('@',`alias_domain`) SEPARATOR ', ')) AS `send_as` FROM `sender_acl` LEFT JOIN `alias_domain` ON `alias_domain`.`target_domain` =  TRIM(LEADING '@' FROM `send_as`) WHERE `logged_in_as` = :username AND `send_as` LIKE '@%';");
+  $stmt = $pdo->prepare("SELECT CONCAT_WS(', ', IFNULL(GROUP_CONCAT(DISTINCT `send_as` SEPARATOR ', '), ''), GROUP_CONCAT(DISTINCT CONCAT('@',`alias_domain`) SEPARATOR ', ')) AS `send_as` FROM `sender_acl` LEFT JOIN `alias_domain` ON `alias_domain`.`target_domain` =  TRIM(LEADING '@' FROM `send_as`) WHERE `logged_in_as` = :username AND `send_as` LIKE '@%';");
   $stmt->execute(array(':username' => $username));
   $run = $stmt->fetchAll(PDO::FETCH_ASSOC);
   while ($row = array_shift($run)) {
     $data['aliases_send_as_all'] = $row['send_as'];
   }
-  $stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`address` SEPARATOR ', '), '&#10008;') as `address` FROM `alias` WHERE `goto` REGEXP :username AND `address` LIKE '@%';");
+  $stmt = $pdo->prepare("SELECT IFNULL(GROUP_CONCAT(`address` SEPARATOR ', '), '') as `address` FROM `alias` WHERE `goto` REGEXP :username AND `address` LIKE '@%';");
   $stmt->execute(array(':username' => '(^|,)'.$username.'($|,)'));
   $run = $stmt->fetchAll(PDO::FETCH_ASSOC);
   while ($row = array_shift($run)) {
@@ -852,24 +1083,23 @@
   return $data;
 }
 function is_valid_domain_name($domain_name) {
-	if (empty($domain_name)) {
-		return false;
-	}
-	$domain_name = idn_to_ascii($domain_name, 0, INTL_IDNA_VARIANT_UTS46);
-	return (preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $domain_name)
-		   && preg_match("/^.{1,253}$/", $domain_name)
-		   && preg_match("/^[^\.]{1,63}(\.[^\.]{1,63})*$/", $domain_name));
+  if (empty($domain_name)) {
+    return false;
+  }
+  $domain_name = idn_to_ascii($domain_name, 0, INTL_IDNA_VARIANT_UTS46);
+  return (preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $domain_name)
+       && preg_match("/^.{1,253}$/", $domain_name)
+       && preg_match("/^[^\.]{1,63}(\.[^\.]{1,63})*$/", $domain_name));
 }
 function set_tfa($_data) {
-	global $pdo;
-	global $yubi;
-	global $u2f;
-	global $tfa;
+  global $pdo;
+  global $yubi;
+  global $u2f;
+  global $tfa;
   $_data_log = $_data;
   !isset($_data_log['confirm_password']) ?: $_data_log['confirm_password'] = '*';
   $username = $_SESSION['mailcow_cc_username'];
-  if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-    $_SESSION['mailcow_cc_role'] != "admin") {
+  if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
       $_SESSION['return'][] =  array(
         'type' => 'danger',
         'log' => array(__FUNCTION__, $_data_log),
@@ -878,20 +1108,37 @@
       return false;
   }
   $stmt = $pdo->prepare("SELECT `password` FROM `admin`
-      WHERE `username` = :user");
-  $stmt->execute(array(':user' => $username));
+      WHERE `username` = :username");
+  $stmt->execute(array(':username' => $username));
   $row = $stmt->fetch(PDO::FETCH_ASSOC);
-  if (!verify_hash($row['password'], $_data["confirm_password"])) {
-    $_SESSION['return'][] =  array(
-      'type' => 'danger',
-      'log' => array(__FUNCTION__, $_data_log),
-      'msg' => 'access_denied'
-    );
-    return false;
+  $num_results = count($stmt->fetchAll(PDO::FETCH_ASSOC));
+  if (!empty($num_results)) {
+    if (!verify_hash($row['password'], $_data["confirm_password"])) {
+      $_SESSION['return'][] =  array(
+        'type' => 'danger',
+        'log' => array(__FUNCTION__, $_data_log),
+        'msg' => 'access_denied'
+      );
+      return false;
+    }
   }
-
-	switch ($_data["tfa_method"]) {
-		case "yubi_otp":
+  $stmt = $pdo->prepare("SELECT `password` FROM `mailbox`
+      WHERE `username` = :username");
+  $stmt->execute(array(':username' => $username));
+  $row = $stmt->fetch(PDO::FETCH_ASSOC);
+  $num_results = count($stmt->fetchAll(PDO::FETCH_ASSOC));
+  if (!empty($num_results)) {
+    if (!verify_hash($row['password'], $_data["confirm_password"])) {
+      $_SESSION['return'][] =  array(
+        'type' => 'danger',
+        'log' => array(__FUNCTION__, $_data_log),
+        'msg' => 'access_denied'
+      );
+      return false;
+    }
+  }
+  switch ($_data["tfa_method"]) {
+    case "yubi_otp":
       $key_id = (!isset($_data["key_id"])) ? 'unidentified' : $_data["key_id"];
       $yubico_id = $_data['yubico_id'];
       $yubico_key = $_data['yubico_key'];
@@ -904,55 +1151,55 @@
         );
         return false;
       }
-			if (!ctype_alnum($_data["otp_token"]) || strlen($_data["otp_token"]) != 44) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
+      if (!ctype_alnum($_data["otp_token"]) || strlen($_data["otp_token"]) != 44) {
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
           'log' => array(__FUNCTION__, $_data_log),
-					'msg' => 'tfa_token_invalid'
-				);
-				return false;
-			}
+          'msg' => 'tfa_token_invalid'
+        );
+        return false;
+      }
       $yauth = $yubi->verify($_data["otp_token"]);
       if (PEAR::isError($yauth)) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
           'log' => array(__FUNCTION__, $_data_log),
           'msg' => array('yotp_verification_failed', $yauth->getMessage())
-				);
-				return false;
+        );
+        return false;
       }
-			try {
+      try {
         // We could also do a modhex translation here
         $yubico_modhex_id = substr($_data["otp_token"], 0, 12);
         $stmt = $pdo->prepare("DELETE FROM `tfa`
           WHERE `username` = :username
             AND (`authmech` != 'yubi_otp')
             OR (`authmech` = 'yubi_otp' AND `secret` LIKE :modhex)");
-				$stmt->execute(array(':username' => $username, ':modhex' => '%' . $yubico_modhex_id));
-				$stmt = $pdo->prepare("INSERT INTO `tfa` (`key_id`, `username`, `authmech`, `active`, `secret`) VALUES
-					(:key_id, :username, 'yubi_otp', '1', :secret)");
-				$stmt->execute(array(':key_id' => $key_id, ':username' => $username, ':secret' => $yubico_id . ':' . $yubico_key . ':' . $yubico_modhex_id));
-			}
-			catch (PDOException $e) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
+        $stmt->execute(array(':username' => $username, ':modhex' => '%' . $yubico_modhex_id));
+        $stmt = $pdo->prepare("INSERT INTO `tfa` (`key_id`, `username`, `authmech`, `active`, `secret`) VALUES
+          (:key_id, :username, 'yubi_otp', '1', :secret)");
+        $stmt->execute(array(':key_id' => $key_id, ':username' => $username, ':secret' => $yubico_id . ':' . $yubico_key . ':' . $yubico_modhex_id));
+      }
+      catch (PDOException $e) {
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
           'log' => array(__FUNCTION__, $_data_log),
-					'msg' => array('mysql_error', $e)
-				);
-				return false;
-			}
-			$_SESSION['return'][] =  array(
-				'type' => 'success',
+          'msg' => array('mysql_error', $e)
+        );
+        return false;
+      }
+      $_SESSION['return'][] =  array(
+        'type' => 'success',
         'log' => array(__FUNCTION__, $_data_log),
-				'msg' => array('object_modified', htmlspecialchars($username))
-			);
-		break;
-		case "u2f":
+        'msg' => array('object_modified', htmlspecialchars($username))
+      );
+    break;
+    case "u2f":
       $key_id = (!isset($_data["key_id"])) ? 'unidentified' : $_data["key_id"];
       try {
         $reg = $u2f->doRegister(json_decode($_SESSION['regReq']), json_decode($_data['token']));
         $stmt = $pdo->prepare("DELETE FROM `tfa` WHERE `username` = :username AND `authmech` != 'u2f'");
-				$stmt->execute(array(':username' => $username));
+        $stmt->execute(array(':username' => $username));
         $stmt = $pdo->prepare("INSERT INTO `tfa` (`username`, `key_id`, `authmech`, `keyHandle`, `publicKey`, `certificate`, `counter`, `active`) VALUES (?, ?, 'u2f', ?, ?, ?, ?, '1')");
         $stmt->execute(array($username, $key_id, $reg->keyHandle, $reg->publicKey, $reg->certificate, $reg->counter));
         $_SESSION['return'][] =  array(
@@ -971,8 +1218,8 @@
         $_SESSION['regReq'] = null;
         return false;
       }
-		break;
-		case "totp":
+    break;
+    case "totp":
       $key_id = (!isset($_data["key_id"])) ? 'unidentified' : $_data["key_id"];
       if ($tfa->verifyCode($_POST['totp_secret'], $_POST['totp_confirm_token']) === true) {
         $stmt = $pdo->prepare("DELETE FROM `tfa` WHERE `username` = :username");
@@ -992,28 +1239,27 @@
           'msg' => 'totp_verification_failed'
         );
       }
-		break;
-		case "none":
+    break;
+    case "none":
       $stmt = $pdo->prepare("DELETE FROM `tfa` WHERE `username` = :username");
       $stmt->execute(array(':username' => $username));
-			$_SESSION['return'][] =  array(
-				'type' => 'success',
+      $_SESSION['return'][] =  array(
+        'type' => 'success',
         'log' => array(__FUNCTION__, $_data_log),
-				'msg' => array('object_modified', htmlspecialchars($username))
-			);
-		break;
-	}
+        'msg' => array('object_modified', htmlspecialchars($username))
+      );
+    break;
+  }
 }
 function fido2($_data) {
-	global $pdo;
+  global $pdo;
   $_data_log = $_data;
   // Not logging registration data, only actions
   // Silent errors for "get" requests
-	switch ($_data["action"]) {
-		case "register":
+  switch ($_data["action"]) {
+    case "register":
       $username = $_SESSION['mailcow_cc_username'];
-      if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-        $_SESSION['mailcow_cc_role'] != "admin") {
+      if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
           $_SESSION['return'][] =  array(
             'type' => 'danger',
             'log' => array(__FUNCTION__, $_data["action"]),
@@ -1040,13 +1286,12 @@
         'log' => array(__FUNCTION__, $_data["action"]),
         'msg' => array('object_modified', $username)
       );
-		break;
-		case "get_user_cids":
+    break;
+    case "get_user_cids":
       // Used to exclude existing CredentialIds while registering
       $username = $_SESSION['mailcow_cc_username'];
-      if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-        $_SESSION['mailcow_cc_role'] != "admin") {
-          return false;
+      if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
+        return false;
       }
       $stmt = $pdo->prepare("SELECT `credentialId` FROM `fido2` WHERE `username` = :username");
       $stmt->execute(array(':username' => $username));
@@ -1055,8 +1300,8 @@
         $cids[] = $row['credentialId'];
       }
       return $cids;
-		break;
-		case "get_all_cids":
+    break;
+    case "get_all_cids":
       // Only needed when using fido2 with username
       $stmt = $pdo->query("SELECT `credentialId` FROM `fido2`");
       $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
@@ -1064,7 +1309,7 @@
         $cids[] = $row['credentialId'];
       }
       return $cids;
-		break;
+    break;
     case "get_by_b64cid":
       if (!isset($_data['cid']) || empty($_data['cid'])) {
         return false;
@@ -1080,12 +1325,11 @@
       $data['subject'] = $row['certificateSubject'];
       $data['cid'] = $row['cid'];
       return $data;
-		break;
-		case "get_friendly_names":
+    break;
+    case "get_friendly_names":
       $username = $_SESSION['mailcow_cc_username'];
-      if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-        $_SESSION['mailcow_cc_role'] != "admin") {
-          return false;
+      if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
+        return false;
       }
       $stmt = $pdo->prepare("SELECT SHA2(`credentialId`, 256) AS `cid`, `created`, `certificateSubject`, `friendlyName` FROM `fido2` WHERE `username` = :username");
       $stmt->execute(array(':username' => $username));
@@ -1098,39 +1342,37 @@
         );
       }
       return $fns;
-		break;
-		case "unset_fido2_key":
+    break;
+    case "unset_fido2_key":
       $username = $_SESSION['mailcow_cc_username'];
-      if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-        $_SESSION['mailcow_cc_role'] != "admin") {
-          $_SESSION['return'][] =  array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_data["action"]),
-            'msg' => 'access_denied'
-          );
-          return false;
+      if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_data["action"]),
+          'msg' => 'access_denied'
+        );
+        return false;
       }
       $stmt = $pdo->prepare("DELETE FROM `fido2` WHERE `username` = :username AND SHA2(`credentialId`, 256) = :cid");
       $stmt->execute(array(
         ':username' => $username,
         ':cid' => $_data['post_data']['unset_fido2_key']
       ));
-			$_SESSION['return'][] =  array(
-				'type' => 'success',
+      $_SESSION['return'][] =  array(
+        'type' => 'success',
         'log' => array(__FUNCTION__, $_data_log),
-				'msg' => array('object_modified', htmlspecialchars($username))
-			);
-		break;
+        'msg' => array('object_modified', htmlspecialchars($username))
+      );
+    break;
     case "edit_fn":
       $username = $_SESSION['mailcow_cc_username'];
-      if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-        $_SESSION['mailcow_cc_role'] != "admin") {
-          $_SESSION['return'][] =  array(
-            'type' => 'danger',
-            'log' => array(__FUNCTION__, $_data["action"]),
-            'msg' => 'access_denied'
-          );
-          return false;
+      if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_data["action"]),
+          'msg' => 'access_denied'
+        );
+        return false;
       }
       $stmt = $pdo->prepare("UPDATE `fido2` SET `friendlyName` = :friendlyName WHERE SHA2(`credentialId`, 256) = :cid AND `username` = :username");
       $stmt->execute(array(
@@ -1138,13 +1380,13 @@
         ':friendlyName' => $_data['fido2_attrs']['fido2_fn'],
         ':cid' => $_data['fido2_attrs']['fido2_cid']
       ));
-			$_SESSION['return'][] =  array(
-				'type' => 'success',
+      $_SESSION['return'][] =  array(
+        'type' => 'success',
         'log' => array(__FUNCTION__, $_data_log),
-				'msg' => array('object_modified', htmlspecialchars($username))
-			);
-		break;
-	}
+        'msg' => array('object_modified', htmlspecialchars($username))
+      );
+    break;
+  }
 }
 function unset_tfa_key($_data) {
   // Can only unset own keys
@@ -1154,14 +1396,13 @@
   $_data_log = $_data;
   $id = intval($_data['unset_tfa_key']);
   $username = $_SESSION['mailcow_cc_username'];
-  if ($_SESSION['mailcow_cc_role'] != "domainadmin" &&
-    $_SESSION['mailcow_cc_role'] != "admin") {
-      $_SESSION['return'][] =  array(
-        'type' => 'danger',
-        'log' => array(__FUNCTION__, $_data_log),
-        'msg' => 'access_denied'
-      );
-      return false;
+  if (!isset($_SESSION['mailcow_cc_role']) || empty($username)) {
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
+      'log' => array(__FUNCTION__, $_data_log),
+      'msg' => 'access_denied'
+    );
+    return false;
   }
   try {
     if (!is_numeric($id)) {
@@ -1202,7 +1443,7 @@
   }
 }
 function get_tfa($username = null) {
-	global $pdo;
+  global $pdo;
   if (isset($_SESSION['mailcow_cc_username'])) {
     $username = $_SESSION['mailcow_cc_username'];
   }
@@ -1214,76 +1455,83 @@
   $stmt->execute(array(':username' => $username));
   $row = $stmt->fetch(PDO::FETCH_ASSOC);
 
-	switch ($row["authmech"]) {
-		case "yubi_otp":
-      $data['name'] = "yubi_otp";
-      $data['pretty'] = "Yubico OTP";
-      $stmt = $pdo->prepare("SELECT `id`, `key_id`, RIGHT(`secret`, 12) AS 'modhex' FROM `tfa` WHERE `authmech` = 'yubi_otp' AND `username` = :username");
-      $stmt->execute(array(
-        ':username' => $username,
-      ));
-      $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-      while($row = array_shift($rows)) {
-        $data['additional'][] = $row;
-      }
-      return $data;
-    break;
-		case "u2f":
-      $data['name'] = "u2f";
-      $data['pretty'] = "Fido U2F";
-      $stmt = $pdo->prepare("SELECT `id`, `key_id` FROM `tfa` WHERE `authmech` = 'u2f' AND `username` = :username");
-      $stmt->execute(array(
-        ':username' => $username,
-      ));
-      $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-      while($row = array_shift($rows)) {
-        $data['additional'][] = $row;
-      }
-      return $data;
-    break;
-		case "hotp":
-      $data['name'] = "hotp";
-      $data['pretty'] = "HMAC-based OTP";
-      return $data;
-		break;
- 		case "totp":
-      $data['name'] = "totp";
-      $data['pretty'] = "Time-based OTP";
-      $stmt = $pdo->prepare("SELECT `id`, `key_id`, `secret` FROM `tfa` WHERE `authmech` = 'totp' AND `username` = :username");
-      $stmt->execute(array(
-        ':username' => $username,
-      ));
-      $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
-      while($row = array_shift($rows)) {
-        $data['additional'][] = $row;
-      }
-      return $data;
+  if (isset($row["authmech"])) {
+    switch ($row["authmech"]) {
+      case "yubi_otp":
+        $data['name'] = "yubi_otp";
+        $data['pretty'] = "Yubico OTP";
+        $stmt = $pdo->prepare("SELECT `id`, `key_id`, RIGHT(`secret`, 12) AS 'modhex' FROM `tfa` WHERE `authmech` = 'yubi_otp' AND `username` = :username");
+        $stmt->execute(array(
+          ':username' => $username,
+        ));
+        $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+        while($row = array_shift($rows)) {
+          $data['additional'][] = $row;
+        }
+        return $data;
       break;
-    default:
-      $data['name'] = 'none';
-      $data['pretty'] = "-";
-      return $data;
-    break;
-	}
+      case "u2f":
+        $data['name'] = "u2f";
+        $data['pretty'] = "Fido U2F";
+        $stmt = $pdo->prepare("SELECT `id`, `key_id` FROM `tfa` WHERE `authmech` = 'u2f' AND `username` = :username");
+        $stmt->execute(array(
+          ':username' => $username,
+        ));
+        $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+        while($row = array_shift($rows)) {
+          $data['additional'][] = $row;
+        }
+        return $data;
+      break;
+      case "hotp":
+        $data['name'] = "hotp";
+        $data['pretty'] = "HMAC-based OTP";
+        return $data;
+      break;
+       case "totp":
+        $data['name'] = "totp";
+        $data['pretty'] = "Time-based OTP";
+        $stmt = $pdo->prepare("SELECT `id`, `key_id`, `secret` FROM `tfa` WHERE `authmech` = 'totp' AND `username` = :username");
+        $stmt->execute(array(
+          ':username' => $username,
+        ));
+        $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+        while($row = array_shift($rows)) {
+          $data['additional'][] = $row;
+        }
+        return $data;
+        break;
+      default:
+        $data['name'] = 'none';
+        $data['pretty'] = "-";
+        return $data;
+      break;
+    }
+  }
+  else {
+    $data['name'] = 'none';
+    $data['pretty'] = "-";
+    return $data;
+  }
 }
 function verify_tfa_login($username, $token) {
-	global $pdo;
-	global $yubi;
-	global $u2f;
-	global $tfa;
+  global $pdo;
+  global $yubi;
+  global $u2f;
+  global $tfa;
   $stmt = $pdo->prepare("SELECT `authmech` FROM `tfa`
       WHERE `username` = :username AND `active` = '1'");
   $stmt->execute(array(':username' => $username));
   $row = $stmt->fetch(PDO::FETCH_ASSOC);
 
-	switch ($row["authmech"]) {
-		case "yubi_otp":
-			if (!ctype_alnum($token) || strlen($token) != 44) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
+  switch ($row["authmech"]) {
+    case "yubi_otp":
+      if (!ctype_alnum($token) || strlen($token) != 44) {
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
           'log' => array(__FUNCTION__, $username, '*'),
-					'msg' => array('yotp_verification_failed', 'token length error')
-				);
+          'msg' => array('yotp_verification_failed', 'token length error')
+        );
         return false;
       }
       $yubico_modhex_id = substr($token, 0, 12);
@@ -1298,20 +1546,20 @@
       $yubi = new Auth_Yubico($yubico_auth[0], $yubico_auth[1]);
       $yauth = $yubi->verify($token);
       if (PEAR::isError($yauth)) {
-				$_SESSION['return'][] =  array(
-					'type' => 'danger',
+        $_SESSION['return'][] =  array(
+          'type' => 'danger',
           'log' => array(__FUNCTION__, $username, '*'),
-					'msg' => array('yotp_verification_failed', $yauth->getMessage())
-				);
-				return false;
+          'msg' => array('yotp_verification_failed', $yauth->getMessage())
+        );
+        return false;
       }
       else {
         $_SESSION['tfa_id'] = $row['id'];
-				$_SESSION['return'][] =  array(
-					'type' => 'success',
+        $_SESSION['return'][] =  array(
+          'type' => 'success',
           'log' => array(__FUNCTION__, $username, '*'),
-					'msg' => 'verified_yotp_login'
-				);
+          'msg' => 'verified_yotp_login'
+        );
         return true;
       }
       $_SESSION['return'][] =  array(
@@ -1396,31 +1644,34 @@
     );
     return false;
   break;
-	}
+  }
   return false;
 }
 function admin_api($access, $action, $data = null) {
-	global $pdo;
-	if ($_SESSION['mailcow_cc_role'] != "admin") {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+  global $pdo;
+  if ($_SESSION['mailcow_cc_role'] != "admin") {
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'access_denied'
-		);
-		return false;
-	}
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
   if ($access !== "ro" && $access !== "rw") {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'invalid access type'
-		);
-		return false;
+      'msg' => 'invalid access type'
+    );
+    return false;
   }
   if ($action == "edit") {
     $active = (!empty($data['active'])) ? 1 : 0;
     $skip_ip_check = (isset($data['skip_ip_check'])) ? 1 : 0;
-    $allow_from = array_map('trim', preg_split( "/( |,|;|\n)/", $data['allow_from']));
+    $allow_from = array();
+    if (isset($data['allow_from'])) {
+      $allow_from = array_map('trim', preg_split( "/( |,|;|\n)/", $data['allow_from']));
+    }
     foreach ($allow_from as $key => $val) {
       if (empty($val)) {
         unset($allow_from[$key]);
@@ -1507,29 +1758,31 @@
   elseif ($action == "get") {
     $stmt = $pdo->query("SELECT * FROM `api` WHERE `access` = '" . $access . "'");
     $apidata = $stmt->fetch(PDO::FETCH_ASSOC);
-    $apidata['allow_from'] = str_replace(',', PHP_EOL, $apidata['allow_from']);
+    if ($apidata !== false) {
+      $apidata['allow_from'] = str_replace(',', PHP_EOL, $apidata['allow_from']);
+    }
     return $apidata;
   }
-	$_SESSION['return'][] =  array(
-		'type' => 'success',
+  $_SESSION['return'][] =  array(
+    'type' => 'success',
     'log' => array(__FUNCTION__, $data),
-		'msg' => 'admin_api_modified'
-	);
+    'msg' => 'admin_api_modified'
+  );
 }
 function license($action, $data = null) {
-	global $pdo;
-	global $redis;
-	global $lang;
-	if ($_SESSION['mailcow_cc_role'] != "admin") {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+  global $pdo;
+  global $redis;
+  global $lang;
+  if ($_SESSION['mailcow_cc_role'] != "admin") {
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'access_denied'
-		);
-		return false;
-	}
-	switch ($action) {
-		case "verify":
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
+  switch ($action) {
+    case "verify":
       // Keep result until revalidate button is pressed or session expired
       $stmt = $pdo->query("SELECT `version` FROM `versions` WHERE `application` = 'GUID'");
       $versions = $stmt->fetch(PDO::FETCH_ASSOC);
@@ -1588,16 +1841,16 @@
   }
 }
 function rspamd_ui($action, $data = null) {
-	if ($_SESSION['mailcow_cc_role'] != "admin") {
-		$_SESSION['return'][] =  array(
-			'type' => 'danger',
+  if ($_SESSION['mailcow_cc_role'] != "admin") {
+    $_SESSION['return'][] =  array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__),
-			'msg' => 'access_denied'
-		);
-		return false;
-	}
-	switch ($action) {
-		case "edit":
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
+  switch ($action) {
+    case "edit":
       $rspamd_ui_pass = $data['rspamd_ui_pass'];
       $rspamd_ui_pass2 = $data['rspamd_ui_pass2'];
       if (empty($rspamd_ui_pass) || empty($rspamd_ui_pass2)) {
@@ -1673,11 +1926,11 @@
     $to = intval($to);
     if ($from < 1 || $to < $from) { return false; }
   }
-	global $redis;
-	global $pdo;
-	if ($_SESSION['mailcow_cc_role'] != "admin") {
-		return false;
-	}
+  global $redis;
+  global $pdo;
+  if ($_SESSION['mailcow_cc_role'] != "admin") {
+    return false;
+  }
   // SQL
   if ($application == "mailcow-ui") {
     if (isset($from) && isset($to)) {
@@ -1699,6 +1952,26 @@
       return $data;
     }
   }
+  if ($application == "sasl") {
+    if (isset($from) && isset($to)) {
+      $stmt = $pdo->prepare("SELECT * FROM `sasl_log` ORDER BY `datetime` DESC LIMIT :from, :to");
+      $stmt->execute(array(
+        ':from' => $from - 1,
+        ':to' => $to
+      ));
+      $data = $stmt->fetchAll(PDO::FETCH_ASSOC);
+    }
+    else {
+      $stmt = $pdo->prepare("SELECT * FROM `sasl_log` ORDER BY `datetime` DESC LIMIT :lines");
+      $stmt->execute(array(
+        ':lines' => $lines + 1,
+      ));
+      $data = $stmt->fetchAll(PDO::FETCH_ASSOC);
+    }
+    if (is_array($data)) {
+      return $data;
+    }
+  }
   // Redis
   if ($application == "dovecot-mailcow") {
     if (isset($from) && isset($to)) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.mailbox.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.mailbox.inc.php
index fff4190..24e5dab 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.mailbox.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.mailbox.inc.php
@@ -35,7 +35,7 @@
           else {
             $username = $_SESSION['mailcow_cc_username'];
           }
-          if (!is_numeric($_data["validity"]) || $_data["validity"] > 672) {
+          if (isset($_data["validity"]) && !filter_var($_data["validity"], FILTER_VALIDATE_INT, array('options' => array('min_range' => 1, 'max_range' => 87600)))) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
               'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
@@ -43,8 +43,17 @@
             );
             return false;
           }
-          $domain = mailbox('get', 'mailbox_details', $username)['domain'];
-          if (!is_valid_domain_name($domain)) {
+          else {
+            // Default to 1 yr
+            $_data["validity"] = 8760;
+          }
+          $domain = $_data['domain'];
+          $valid_domains[] = mailbox('get', 'mailbox_details', $username)['domain'];
+          $valid_alias_domains = user_get_alias_details($username)['alias_domains'];
+          if (!empty($valid_alias_domains)) {
+            $valid_domains = array_merge($valid_domains, $valid_alias_domains);
+          }
+          if (!in_array($domain, $valid_domains)) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
               'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
@@ -52,13 +61,11 @@
             );
             return false;
           }
-          $validity = strtotime("+".$_data["validity"]." hour");
-          $letters = 'abcefghijklmnopqrstuvwxyz1234567890';
-          $random_name = substr(str_shuffle($letters), 0, 24);
+          $validity = strtotime("+" . $_data["validity"] . " hour");
           $stmt = $pdo->prepare("INSERT INTO `spamalias` (`address`, `goto`, `validity`) VALUES
             (:address, :goto, :validity)");
           $stmt->execute(array(
-            ':address' => $random_name . '@' . $domain,
+            ':address' => readable_random_string(rand(rand(3, 9), rand(3, 9))) . '.' . readable_random_string(rand(rand(3, 9), rand(3, 9))) . '@' . $domain,
             ':goto' => $username,
             ':validity' => $validity
           ));
@@ -441,17 +448,17 @@
             );
             return false;
           }
-          $domain				= idn_to_ascii(strtolower(trim($_data['domain'])), 0, INTL_IDNA_VARIANT_UTS46);
+          $domain       = idn_to_ascii(strtolower(trim($_data['domain'])), 0, INTL_IDNA_VARIANT_UTS46);
           $description  = $_data['description'];
           if (empty($description)) {
             $description = $domain;
           }
-          $aliases			= $_data['aliases'];
-          $mailboxes    = $_data['mailboxes'];
-          $defquota			= $_data['defquota'];
-          $maxquota			= $_data['maxquota'];
-          $restart_sogo = $_data['restart_sogo'];
-          $quota				= $_data['quota'];
+          $aliases      = (int)$_data['aliases'];
+          $mailboxes    = (int)$_data['mailboxes'];
+          $defquota     = (int)$_data['defquota'];
+          $maxquota     = (int)$_data['maxquota'];
+          $restart_sogo = (int)$_data['restart_sogo'];
+          $quota        = (int)$_data['quota'];
           if ($defquota > $maxquota) {
             $_SESSION['return'][] = array(
                 'type' => 'danger',
@@ -673,9 +680,10 @@
                 continue;
               }
             }
+            $gotos = array_unique($gotos);
             $gotos = array_filter($gotos);
             if (empty($gotos)) { return false; }
-            $goto = implode(",", $gotos);
+            $goto = implode(",", (array)$gotos);
           }
           foreach ($addresses as $address) {
             if (empty($address)) {
@@ -928,7 +936,7 @@
           $password     = $_data['password'];
           $password2    = $_data['password2'];
           $name         = ltrim(rtrim($_data['name'], '>'), '<');
-          $quota_m			= intval($_data['quota']);
+          $quota_m      = intval($_data['quota']);
           if ((!isset($_SESSION['acl']['unlimited_quota']) || $_SESSION['acl']['unlimited_quota'] != "1") && $quota_m === 0) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
@@ -948,9 +956,10 @@
           $imap_access = (isset($_data['imap_access'])) ? intval($_data['imap_access']) : intval($MAILBOX_DEFAULT_ATTRIBUTES['imap_access']);
           $pop3_access = (isset($_data['pop3_access'])) ? intval($_data['pop3_access']) : intval($MAILBOX_DEFAULT_ATTRIBUTES['pop3_access']);
           $smtp_access = (isset($_data['smtp_access'])) ? intval($_data['smtp_access']) : intval($MAILBOX_DEFAULT_ATTRIBUTES['smtp_access']);
+          $relayhost = (isset($_data['relayhost'])) ? intval($_data['relayhost']) : 0;
           $quarantine_notification = (isset($_data['quarantine_notification'])) ? strval($_data['quarantine_notification']) : strval($MAILBOX_DEFAULT_ATTRIBUTES['quarantine_notification']);
           $quarantine_category = (isset($_data['quarantine_category'])) ? strval($_data['quarantine_category']) : strval($MAILBOX_DEFAULT_ATTRIBUTES['quarantine_category']);
-          $quota_b		= ($quota_m * 1048576);
+          $quota_b    = ($quota_m * 1048576);
           $mailbox_attrs = json_encode(
             array(
               'force_pw_update' => strval($force_pw_update),
@@ -960,6 +969,8 @@
               'imap_access' => strval($imap_access),
               'pop3_access' => strval($pop3_access),
               'smtp_access' => strval($smtp_access),
+              'relayhost' => strval($relayhost),
+              'passwd_update' => time(),
               'mailbox_format' => strval($MAILBOX_DEFAULT_ATTRIBUTES['mailbox_format']),
               'quarantine_notification' => strval($quarantine_notification),
               'quarantine_category' => strval($quarantine_category)
@@ -989,7 +1000,7 @@
             COUNT(*) as count,
             COALESCE(ROUND(SUM(`quota`)/1048576), 0) as `quota`
               FROM `mailbox`
-                WHERE `kind` NOT REGEXP 'location|thing|group'
+                WHERE (`kind` = '' OR `kind` = NULL)
                   AND `domain` = :domain");
           $stmt->execute(array(':domain' => $domain));
           $MailboxData = $stmt->fetch(PDO::FETCH_ASSOC);
@@ -1037,39 +1048,10 @@
             );
             return false;
           }
-          if (!empty($password) && !empty($password2)) {
-            if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-              $_SESSION['return'][] = array(
-                'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-                'msg' => 'password_complexity'
-              );
-              return false;
-            }
-            if ($password != $password2) {
-              $_SESSION['return'][] = array(
-                'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-                'msg' => 'password_mismatch'
-              );
-              return false;
-            }
-            // support pre hashed passwords
-            if (preg_match('/^({SSHA256}|{SSHA}|{SHA512-CRYPT}|{SSHA512}|{MD5-CRYPT}|{PLAIN-MD5})/i', $password)) {
-              $password_hashed = $password;
-            }
-            else {
-              $password_hashed = hash_password($password);
-            }
-          }
-          else {
-            $_SESSION['return'][] = array(
-              'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-              'msg' => 'password_empty'
-            );
+          if (password_check($password, $password2) !== true) {
             return false;
           }
+          $password_hashed = hash_password($password);
           if ($MailboxData['count'] >= $DomainData['mailboxes']) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
@@ -1107,6 +1089,12 @@
             ':mailbox_attrs' => $mailbox_attrs,
             ':active' => $active
           ));
+          $stmt = $pdo->prepare("UPDATE `mailbox` SET
+            `attributes` = JSON_SET(`attributes`, '$.passwd_update', NOW())
+              WHERE `username` = :username");
+          $stmt->execute(array(
+            ':username' => $username
+          ));
           $stmt = $pdo->prepare("INSERT INTO `quota2` (`username`, `bytes`, `messages`)
             VALUES (:username, '0', '0') ON DUPLICATE KEY UPDATE `bytes` = '0', `messages` = '0';");
           $stmt->execute(array(':username' => $username));
@@ -1506,8 +1494,8 @@
               );
               continue;
             }
-            $lowspamlevel	= explode(',', $_data['spam_score'])[0];
-            $highspamlevel	= explode(',', $_data['spam_score'])[1];
+            $lowspamlevel = explode(',', $_data['spam_score'])[0];
+            $highspamlevel  = explode(',', $_data['spam_score'])[1];
             if (!is_numeric($lowspamlevel) || !is_numeric($highspamlevel)) {
               $_SESSION['return'][] = array(
                 'type' => 'danger',
@@ -1516,6 +1504,9 @@
               );
               continue;
             }
+            if ($lowspamlevel == $highspamlevel) {
+              $highspamlevel = $highspamlevel + 0.1;
+            }
             $stmt = $pdo->prepare("DELETE FROM `filterconf` WHERE `object` = :username
               AND (`option` = 'lowspamlevel' OR `option` = 'highspamlevel')");
             $stmt->execute(array(
@@ -1581,7 +1572,7 @@
             $_SESSION['return'][] = array(
               'type' => 'success',
               'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-              'msg' => array('mailbox_modified', htmlspecialchars(implode(', ', $usernames)))
+              'msg' => array('mailbox_modified', htmlspecialchars(implode(', ', (array)$usernames)))
             );
           }
         break;
@@ -1932,6 +1923,52 @@
               );
               continue;
             }
+            if ($_data['expand_alias'] === true || $_data['expand_alias'] == 1) {
+              $stmt = $pdo->prepare("SELECT `address` FROM `alias`
+                WHERE `address` = :address
+                  AND `domain` NOT IN (
+                    SELECT `alias_domain` FROM `alias_domain`
+                  )");
+              $stmt->execute(array(
+                ':address' => $address,
+              ));
+              $num_results = count($stmt->fetchAll(PDO::FETCH_ASSOC));
+              if ($num_results == 0) {
+                $_SESSION['return'][] = array(
+                  'type' => 'warning',
+                  'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
+                  'msg' => array('is_not_primary_alias', htmlspecialchars($address))
+                );
+                continue;
+              }
+              $stmt = $pdo->prepare("SELECT `goto`, GROUP_CONCAT(CONCAT(SUBSTRING(`alias`.`address`, 1, LOCATE('@', `alias`.`address`) - 1), '@', `alias_domain`.`alias_domain`)) AS `missing_alias`
+                FROM `alias` JOIN `alias_domain` ON `alias_domain`.`target_domain` = `alias`.`domain`
+                    WHERE CONCAT(SUBSTRING(`alias`.`address`, 1, LOCATE('@', `alias`.`address`) - 1), '@', `alias_domain`.`alias_domain`) NOT IN (
+                      SELECT `address` FROM `alias` WHERE `address` != `goto`
+                    )
+                    AND `alias`.`address` NOT IN (
+                      SELECT `address` FROM `alias` WHERE `address` = `goto`
+                    )
+                    AND `address` = :address ;");
+              $stmt->execute(array(
+                ':address' => $address
+              ));
+              $missing_aliases = $stmt->fetch(PDO::FETCH_ASSOC);
+              if (!empty($missing_aliases['missing_alias'])) {
+                mailbox('add', 'alias', array(
+                  'address' => $missing_aliases['missing_alias'],
+                  'goto' => $missing_aliases['goto'],
+                  'sogo_visible' => 1,
+                  'active' => 1
+                ));
+              }
+              $_SESSION['return'][] = array(
+                'type' => 'success',
+                'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
+                'msg' => array('alias_modified', htmlspecialchars($address))
+              );
+              continue;
+            }
             $domain = idn_to_ascii(substr(strstr($address, '@'), 1), 0, INTL_IDNA_VARIANT_UTS46);
             if ($is_now['address'] != $address) {
               $local_part = strstr($address, '@', true);
@@ -2041,8 +2078,9 @@
                   ':address' => $address
                 ));
               }
+              $gotos = array_unique($gotos);
               $gotos = array_filter($gotos);
-              $goto = implode(",", $gotos);
+              $goto = implode(",", (array)$gotos);
             }
             if (!empty($goto)) {
               $stmt = $pdo->prepare("UPDATE `alias` SET
@@ -2096,6 +2134,7 @@
               if (!empty($is_now)) {
                 $gal                  = (isset($_data['gal'])) ? intval($_data['gal']) : $is_now['gal'];
                 $description          = (!empty($_data['description']) && isset($_SESSION['acl']['domain_desc']) && $_SESSION['acl']['domain_desc'] == "1") ? $_data['description'] : $is_now['description'];
+                (int)$relayhost       = (isset($_data['relayhost']) && isset($_SESSION['acl']['domain_relayhost']) && $_SESSION['acl']['domain_relayhost'] == "1") ? intval($_data['relayhost']) : intval($is_now['relayhost']);
               }
               else {
                 $_SESSION['return'][] = array(
@@ -2157,7 +2196,7 @@
                   MAX(COALESCE(ROUND(`quota`/1048576), 0)) AS `biggest_mailbox`,
                   COALESCE(ROUND(SUM(`quota`)/1048576), 0) AS `quota_all`
                     FROM `mailbox`
-                      WHERE `kind` NOT REGEXP 'location|thing|group'
+                      WHERE (`kind` = '' OR `kind` = NULL)
                         AND domain = :domain");
               $stmt->execute(array(':domain' => $domain));
               $MailboxData = $stmt->fetch(PDO::FETCH_ASSOC);
@@ -2300,6 +2339,7 @@
               (int)$imap_access = (isset($_data['imap_access']) && isset($_SESSION['acl']['protocol_access']) && $_SESSION['acl']['protocol_access'] == "1") ? intval($_data['imap_access']) : intval($is_now['attributes']['imap_access']);
               (int)$pop3_access = (isset($_data['pop3_access']) && isset($_SESSION['acl']['protocol_access']) && $_SESSION['acl']['protocol_access'] == "1") ? intval($_data['pop3_access']) : intval($is_now['attributes']['pop3_access']);
               (int)$smtp_access = (isset($_data['smtp_access']) && isset($_SESSION['acl']['protocol_access']) && $_SESSION['acl']['protocol_access'] == "1") ? intval($_data['smtp_access']) : intval($is_now['attributes']['smtp_access']);
+              (int)$relayhost = (isset($_data['relayhost']) && isset($_SESSION['acl']['mailbox_relayhost']) && $_SESSION['acl']['mailbox_relayhost'] == "1") ? intval($_data['relayhost']) : intval($is_now['attributes']['relayhost']);
               (int)$quota_m = (isset_has_content($_data['quota'])) ? intval($_data['quota']) : ($is_now['quota'] / 1048576);
               $name       = (!empty($_data['name'])) ? ltrim(rtrim($_data['name'], '>'), '<') : $is_now['name'];
               $domain     = $is_now['domain'];
@@ -2324,11 +2364,6 @@
               );
               return false;
             }
-            $stmt = $pdo->prepare("SELECT `quota`, `maxquota`
-              FROM `domain`
-                WHERE `domain` = :domain");
-            $stmt->execute(array(':domain' => $domain));
-            $DomainData = $stmt->fetch(PDO::FETCH_ASSOC);
             if (!hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $domain)) {
               $_SESSION['return'][] = array(
                 'type' => 'danger',
@@ -2337,15 +2372,8 @@
               );
               continue;
             }
-            if ($quota_m > $DomainData['maxquota']) {
-              $_SESSION['return'][] = array(
-                'type' => 'danger',
-                'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-                'msg' => array('mailbox_quota_exceeded', $DomainData['maxquota'])
-              );
-              continue;
-            }
-            if (((($is_now['quota_used'] / 1048576) - $quota_m) + $quota_m) > $DomainData['quota']) {
+            $DomainData = mailbox('get', 'domain_details', $domain);
+            if ($quota_m > ($is_now['max_new_quota'] / 1048576)) {
               $_SESSION['return'][] = array(
                 'type' => 'danger',
                 'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
@@ -2353,6 +2381,14 @@
               );
               continue;
             }
+            if ($quota_m > $DomainData['max_quota_for_mbox']) {
+              $_SESSION['return'][] = array(
+                'type' => 'danger',
+                'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
+                'msg' => array('mailbox_quota_exceeded', $DomainData['max_quota_for_mbox'])
+              );
+              continue;
+            }
             $extra_acls = array();
             if (isset($_data['extended_sender_acl'])) {
               if (!isset($_SESSION['acl']['extend_sender_acl']) || $_SESSION['acl']['extend_sender_acl'] != "1" ) {
@@ -2539,39 +2575,21 @@
                 ));
               }
             }
-            if (!empty($password) && !empty($password2)) {
-              if (!preg_match('/' . $GLOBALS['PASSWD_REGEP'] . '/', $password)) {
-                $_SESSION['return'][] = array(
-                  'type' => 'danger',
-                  'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-                  'msg' => 'password_complexity'
-                );
+            if (!empty($password)) {
+              if (password_check($password, $password2) !== true) {
                 continue;
               }
-              if ($password != $password2) {
-                $_SESSION['return'][] = array(
-                  'type' => 'danger',
-                  'log' => array(__FUNCTION__, $_action, $_type, $_data_log, $_attr),
-                  'msg' => 'password_mismatch'
-                );
-                continue;
-              }
-              // support pre hashed passwords
-              if (preg_match('/^({SSHA256}|{SSHA}|{SHA512-CRYPT}|{SSHA512}|{MD5-CRYPT}|{PLAIN-MD5})/i', $password)) {
-                $password_hashed = $password;
-              }
-              else {
-                $password_hashed = hash_password($password);
-              }
+              $password_hashed = hash_password($password);
               $stmt = $pdo->prepare("UPDATE `mailbox` SET
-                  `password` = :password_hashed
+                  `password` = :password_hashed,
+                  `attributes` = JSON_SET(`attributes`, '$.passwd_update', NOW())
                     WHERE `username` = :username");
               $stmt->execute(array(
                 ':password_hashed' => $password_hashed,
                 ':username' => $username
               ));
             }
-            // We could either set alias = 1 if alias = 2 or tune the Postfix alias table (that's what we did, TODO: to it the other way)
+            // We could either set alias = 1 if alias = 2 or tune the Postfix alias table (that's what we did, TODO: do it the other way)
             $stmt = $pdo->prepare("UPDATE `alias` SET
                 `active` = :active
                   WHERE `address` = :address");
@@ -2587,6 +2605,7 @@
                 `attributes` = JSON_SET(`attributes`, '$.sogo_access', :sogo_access),
                 `attributes` = JSON_SET(`attributes`, '$.imap_access', :imap_access),
                 `attributes` = JSON_SET(`attributes`, '$.pop3_access', :pop3_access),
+                `attributes` = JSON_SET(`attributes`, '$.relayhost', :relayhost),
                 `attributes` = JSON_SET(`attributes`, '$.smtp_access', :smtp_access)
                   WHERE `username` = :username");
             $stmt->execute(array(
@@ -2598,6 +2617,7 @@
               ':imap_access' => $imap_access,
               ':pop3_access' => $pop3_access,
               ':smtp_access' => $smtp_access,
+              ':relayhost' => $relayhost,
               ':username' => $username
             ));
             $_SESSION['return'][] = array(
@@ -2819,7 +2839,7 @@
             return false;
           }
           elseif (isset($_data) && hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $_data)) {
-            $stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND `domain` = :domain");
+            $stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE (`kind` = '' OR `kind` = NULL) AND `domain` = :domain");
             $stmt->execute(array(
               ':domain' => $_data,
             ));
@@ -2829,7 +2849,7 @@
             }
           }
           else {
-            $stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND (`domain` IN (SELECT `domain` FROM `domain_admins` WHERE `active` = '1' AND `username` = :username) OR 'admin' = :role)");
+            $stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE (`kind` = '' OR `kind` = NULL) AND (`domain` IN (SELECT `domain` FROM `domain_admins` WHERE `active` = '1' AND `username` = :username) OR 'admin' = :role)");
             $stmt->execute(array(
               ':username' => $_SESSION['mailcow_cc_username'],
               ':role' => $_SESSION['mailcow_cc_role'],
@@ -2982,7 +3002,7 @@
             while($field = array_shift($fields)) {
               $shown_fields[] = $field['Field'];
             }
-            $stmt = $pdo->prepare("SELECT " . implode(',', $shown_fields) . ",
+            $stmt = $pdo->prepare("SELECT " . implode(',', (array)$shown_fields) . ",
               `active`
                 FROM `imapsync` WHERE id = :id");
           }
@@ -2997,7 +3017,7 @@
             while($field = array_shift($fields)) {
               $shown_fields[] = $field['Field'];
             }
-            $stmt = $pdo->prepare("SELECT " . implode(',', $shown_fields) . ",
+            $stmt = $pdo->prepare("SELECT " . implode(',', (array)$shown_fields) . ",
               `active`
                 FROM `imapsync` WHERE id = :id");
           }
@@ -3113,7 +3133,9 @@
           }
           $stmt = $pdo->prepare("SELECT `address`,
             `goto`,
-            `validity`
+            `validity`,
+            `created`,
+            `modified`
               FROM `spamalias`
                 WHERE `goto` = :username
                   AND `validity` >= :unixnow");
@@ -3362,10 +3384,10 @@
           if (empty($row)) {
             return false;
           }
-          $stmt = $pdo->prepare("SELECT COUNT(*) AS `count`,
+          $stmt = $pdo->prepare("SELECT COUNT(`username`) AS `count`,
             COALESCE(SUM(`quota`), 0) AS `in_use`
               FROM `mailbox`
-                WHERE `kind` NOT REGEXP 'location|thing|group'
+                WHERE (`kind` = '' OR `kind` = NULL)
                   AND `domain` = :domain");
           $stmt->execute(array(':domain' => $row['domain']));
           $MailboxDataDomain = $stmt->fetch(PDO::FETCH_ASSOC);
@@ -3377,7 +3399,7 @@
           $stmt->execute(array(':domain' => $row['domain']));
           $SumQuotaInUse = $stmt->fetch(PDO::FETCH_ASSOC);
           $rl = ratelimit('get', 'domain', $_data);
-          $domaindata['max_new_mailbox_quota']	= ($row['quota'] * 1048576) - $MailboxDataDomain['in_use'];
+          $domaindata['max_new_mailbox_quota']  = ($row['quota'] * 1048576) - $MailboxDataDomain['in_use'];
           if ($domaindata['max_new_mailbox_quota'] > ($row['maxquota'] * 1048576)) {
             $domaindata['max_new_mailbox_quota'] = ($row['maxquota'] * 1048576);
           }
@@ -3399,7 +3421,7 @@
             $domaindata['msgs_total'] = 0;
           }
           $domaindata['mboxes_in_domain'] = $MailboxDataDomain['count'];
-          $domaindata['mboxes_left'] = $row['mailboxes']	- $MailboxDataDomain['count'];
+          $domaindata['mboxes_left'] = $row['mailboxes']  - $MailboxDataDomain['count'];
           $domaindata['domain_name'] = $row['domain'];
           $domaindata['description'] = $row['description'];
           $domaindata['max_num_aliases_for_domain'] = $row['aliases'];
@@ -3419,7 +3441,7 @@
           $domaindata['relay_all_recipients_int'] = $row['relay_all_recipients'];
           $domaindata['relay_unknown_only'] = $row['relay_unknown_only'];
           $domaindata['relay_unknown_only_int'] = $row['relay_unknown_only'];
-          $stmt = $pdo->prepare("SELECT COUNT(*) AS `alias_count` FROM `alias`
+          $stmt = $pdo->prepare("SELECT COUNT(`address`) AS `alias_count` FROM `alias`
             WHERE (`domain`= :domain OR `domain` IN (SELECT `alias_domain` FROM `alias_domain` WHERE `target_domain` = :domain2))
               AND `address` NOT IN (
                 SELECT `username` FROM `mailbox`
@@ -3430,7 +3452,7 @@
           ));
           $AliasDataDomain = $stmt->fetch(PDO::FETCH_ASSOC);
           (isset($AliasDataDomain['alias_count'])) ? $domaindata['aliases_in_domain'] = $AliasDataDomain['alias_count'] : $domaindata['aliases_in_domain'] = "0";
-          $domaindata['aliases_left'] = $row['aliases']	- $AliasDataDomain['alias_count'];
+          $domaindata['aliases_left'] = $row['aliases'] - $AliasDataDomain['alias_count'];
           if ($_SESSION['mailcow_cc_role'] == "admin")
           {
               $stmt = $pdo->prepare("SELECT GROUP_CONCAT(`username` SEPARATOR ', ') AS domain_admins FROM `domain_admins` WHERE `domain` = :domain");
@@ -3447,19 +3469,6 @@
             return false;
           }
           $mailboxdata = array();
-          $rl = ratelimit('get', 'mailbox', $_data);
-          $last_imap_login = $redis->Get('last-login/imap/' . $_data);
-          $last_smtp_login = $redis->Get('last-login/smtp/' . $_data);
-          $last_pop3_login = $redis->Get('last-login/pop3/' . $_data);
-          if ($last_imap_login === false || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
-            $last_imap_login = '0';
-          }
-          if ($last_smtp_login === false || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
-            $last_smtp_login = '0';
-          }
-          if ($last_pop3_login === false || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
-            $last_pop3_login = '0';
-          }
           if (preg_match('/y|yes/i', getenv('MASTER'))) {
             $stmt = $pdo->prepare("SELECT
               `domain`.`backupmx`,
@@ -3473,7 +3482,10 @@
               `attributes`,
               `quota2`.`messages`
                 FROM `mailbox`, `quota2`, `domain`
-                  WHERE `mailbox`.`kind` NOT REGEXP 'location|thing|group' AND `mailbox`.`username` = `quota2`.`username` AND `domain`.`domain` = `mailbox`.`domain` AND `mailbox`.`username` = :mailbox");
+                  WHERE (`mailbox`.`kind` = '' OR `mailbox`.`kind` = NULL)
+                    AND `mailbox`.`username` = `quota2`.`username`
+                    AND `domain`.`domain` = `mailbox`.`domain`
+                    AND `mailbox`.`username` = :mailbox");
           }
           else {
             $stmt = $pdo->prepare("SELECT
@@ -3488,53 +3500,29 @@
               `attributes`,
               `quota2replica`.`messages`
                 FROM `mailbox`, `quota2replica`, `domain`
-                  WHERE `mailbox`.`kind` NOT REGEXP 'location|thing|group' AND `mailbox`.`username` = `quota2replica`.`username` AND `domain`.`domain` = `mailbox`.`domain` AND `mailbox`.`username` = :mailbox");
+                  WHERE (`mailbox`.`kind` = '' OR `mailbox`.`kind` = NULL)
+                    AND `mailbox`.`username` = `quota2replica`.`username`
+                    AND `domain`.`domain` = `mailbox`.`domain`
+                    AND `mailbox`.`username` = :mailbox");
           }
           $stmt->execute(array(
             ':mailbox' => $_data,
           ));
           $row = $stmt->fetch(PDO::FETCH_ASSOC);
-          $stmt = $pdo->prepare("SELECT `maxquota`, `quota` FROM  `domain` WHERE `domain` = :domain");
-          $stmt->execute(array(':domain' => $row['domain']));
-          $DomainQuota  = $stmt->fetch(PDO::FETCH_ASSOC);
-          $stmt = $pdo->prepare("SELECT IFNULL(COUNT(`active`), 0) AS `pushover_active` FROM `pushover` WHERE `username` = :username AND `active` = 1");
-          $stmt->execute(array(':username' => $_data));
-          $PushoverActive  = $stmt->fetch(PDO::FETCH_ASSOC);
-          $stmt = $pdo->prepare("SELECT COALESCE(SUM(`quota`), 0) as `in_use` FROM `mailbox` WHERE `kind` NOT REGEXP 'location|thing|group' AND `domain` = :domain AND `username` != :username");
-          $stmt->execute(array(':domain' => $row['domain'], ':username' => $_data));
-          $MailboxUsage	= $stmt->fetch(PDO::FETCH_ASSOC);
-          $stmt = $pdo->prepare("SELECT IFNULL(COUNT(`address`), 0) AS `sa_count` FROM `spamalias` WHERE `goto` = :address AND `validity` >= :unixnow");
-          $stmt->execute(array(':address' => $_data, ':unixnow' => time()));
-          $SpamaliasUsage	= $stmt->fetch(PDO::FETCH_ASSOC);
-          $mailboxdata['max_new_quota'] = ($DomainQuota['quota'] * 1048576) - $MailboxUsage['in_use'];
-          if ($mailboxdata['max_new_quota'] > ($DomainQuota['maxquota'] * 1048576)) {
-            $mailboxdata['max_new_quota'] = ($DomainQuota['maxquota'] * 1048576);
-          }
+
           $mailboxdata['username'] = $row['username'];
-          if (!empty($rl)) {
-            $mailboxdata['rl'] = $rl;
-            $mailboxdata['rl_scope'] = 'mailbox';
-          }
-          else {
-            $mailboxdata['rl'] = ratelimit('get', 'domain', $row['domain']);
-            $mailboxdata['rl_scope'] = 'domain';
-          }
-          $mailboxdata['is_relayed'] = $row['backupmx'];
-          $mailboxdata['name'] = $row['name'];
-          $mailboxdata['last_imap_login'] = $last_imap_login;
-          $mailboxdata['last_smtp_login'] = $last_smtp_login;
-          $mailboxdata['last_pop3_login'] = $last_pop3_login;
           $mailboxdata['active'] = $row['active'];
           $mailboxdata['active_int'] = $row['active'];
           $mailboxdata['domain'] = $row['domain'];
+          $mailboxdata['relayhost'] = $row['relayhost'];
+          $mailboxdata['name'] = $row['name'];
           $mailboxdata['local_part'] = $row['local_part'];
           $mailboxdata['quota'] = $row['quota'];
+          $mailboxdata['messages'] = $row['messages'];
           $mailboxdata['attributes'] = json_decode($row['attributes'], true);
           $mailboxdata['quota_used'] = intval($row['bytes']);
           $mailboxdata['percent_in_use'] = ($row['quota'] == 0) ? '- ' : round((intval($row['bytes']) / intval($row['quota'])) * 100);
-          $mailboxdata['messages'] = $row['messages'];
-          $mailboxdata['spam_aliases'] = $SpamaliasUsage['sa_count'];
-          $mailboxdata['pushover_active'] = ($PushoverActive['pushover_active'] == 1) ? 1 : 0;
+
           if ($mailboxdata['percent_in_use'] === '- ') {
             $mailboxdata['percent_class'] = "info";
           }
@@ -3547,6 +3535,69 @@
           else {
             $mailboxdata['percent_class'] = "success";
           }
+
+          // Determine last logins
+          $stmt = $pdo->prepare("SELECT MAX(`datetime`) AS `datetime`, `service` FROM `sasl_log`
+            WHERE `username` = :mailbox
+                GROUP BY `service` DESC");
+          $stmt->execute(array(':mailbox' => $_data));
+          $SaslLogsData  = $stmt->fetchAll(PDO::FETCH_ASSOC);
+          foreach ($SaslLogsData as $SaslLogs) {
+            if ($SaslLogs['service'] == 'imap') {
+              $last_imap_login = strtotime($SaslLogs['datetime']);
+            }
+            else if ($SaslLogs['service'] == 'smtp') {
+              $last_smtp_login = strtotime($SaslLogs['datetime']);
+            }
+            else if ($SaslLogs['service'] == 'pop3') {
+              $last_pop3_login = strtotime($SaslLogs['datetime']);
+            }
+          }
+          if (!isset($last_imap_login) || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
+            $last_imap_login = 0;
+          }
+          if (!isset($last_smtp_login) || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
+            $last_smtp_login = 0;
+          }
+          if (!isset($last_pop3_login) || $GLOBALS['SHOW_LAST_LOGIN'] === false) {
+            $last_pop3_login = 0;
+          }
+          $mailboxdata['last_imap_login'] = $last_imap_login;
+          $mailboxdata['last_smtp_login'] = $last_smtp_login;
+          $mailboxdata['last_pop3_login'] = $last_pop3_login;
+
+          if (!isset($_extra) || $_extra != 'reduced') {
+            $rl = ratelimit('get', 'mailbox', $_data);
+            $stmt = $pdo->prepare("SELECT `maxquota`, `quota` FROM  `domain` WHERE `domain` = :domain");
+            $stmt->execute(array(':domain' => $row['domain']));
+            $DomainQuota  = $stmt->fetch(PDO::FETCH_ASSOC);
+
+            $stmt = $pdo->prepare("SELECT IFNULL(COUNT(`active`), 0) AS `pushover_active` FROM `pushover` WHERE `username` = :username AND `active` = 1");
+            $stmt->execute(array(':username' => $_data));
+            $PushoverActive  = $stmt->fetch(PDO::FETCH_ASSOC);
+            $stmt = $pdo->prepare("SELECT COALESCE(SUM(`quota`), 0) as `in_use` FROM `mailbox` WHERE (`kind` = '' OR `kind` = NULL) AND `domain` = :domain AND `username` != :username");
+            $stmt->execute(array(':domain' => $row['domain'], ':username' => $_data));
+            $MailboxUsage = $stmt->fetch(PDO::FETCH_ASSOC);
+            $stmt = $pdo->prepare("SELECT IFNULL(COUNT(`address`), 0) AS `sa_count` FROM `spamalias` WHERE `goto` = :address AND `validity` >= :unixnow");
+            $stmt->execute(array(':address' => $_data, ':unixnow' => time()));
+            $SpamaliasUsage = $stmt->fetch(PDO::FETCH_ASSOC);
+            $mailboxdata['max_new_quota'] = ($DomainQuota['quota'] * 1048576) - $MailboxUsage['in_use'];
+            $mailboxdata['spam_aliases'] = $SpamaliasUsage['sa_count'];
+            $mailboxdata['pushover_active'] = ($PushoverActive['pushover_active'] == 1) ? 1 : 0;
+            if ($mailboxdata['max_new_quota'] > ($DomainQuota['maxquota'] * 1048576)) {
+              $mailboxdata['max_new_quota'] = ($DomainQuota['maxquota'] * 1048576);
+            }
+            if (!empty($rl)) {
+              $mailboxdata['rl'] = $rl;
+              $mailboxdata['rl_scope'] = 'mailbox';
+            }
+            else {
+              $mailboxdata['rl'] = ratelimit('get', 'domain', $row['domain']);
+              $mailboxdata['rl_scope'] = 'domain';
+            }
+            $mailboxdata['is_relayed'] = $row['backupmx'];
+          }
+
           return $mailboxdata;
         break;
         case 'resource_details':
@@ -3826,7 +3877,7 @@
               );
               continue;
             }
-            $domain	= idn_to_ascii(strtolower(trim($domain)), 0, INTL_IDNA_VARIANT_UTS46);
+            $domain = idn_to_ascii(strtolower(trim($domain)), 0, INTL_IDNA_VARIANT_UTS46);
             $stmt = $pdo->prepare("SELECT `username` FROM `mailbox`
               WHERE `domain` = :domain");
             $stmt->execute(array(':domain' => $domain));
@@ -4163,6 +4214,14 @@
             $stmt->execute(array(
               ':username' => $username
             ));
+            $stmt = $pdo->prepare("DELETE FROM `tfa` WHERE `username` = :username");
+            $stmt->execute(array(
+              ':username' => $username,
+            ));
+            $stmt = $pdo->prepare("DELETE FROM `fido2` WHERE `username` = :username");
+            $stmt->execute(array(
+              ':username' => $username,
+            ));
             $stmt = $pdo->prepare("SELECT `address`, `goto` FROM `alias`
                 WHERE `goto` REGEXP :username");
             $stmt->execute(array(':username' => '(^|,)'.$username.'($|,)'));
@@ -4172,7 +4231,7 @@
               if (($key = array_search($username, $goto_exploded)) !== false) {
                 unset($goto_exploded[$key]);
               }
-              $gotos_rebuild = implode(',', $goto_exploded);
+              $gotos_rebuild = implode(',', (array)$goto_exploded);
               $stmt = $pdo->prepare("UPDATE `alias` SET
                 `goto` = :goto
                   WHERE `address` = :address");
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.oauth2.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.oauth2.inc.php
index 7bc7dea..7dc5602 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.oauth2.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.oauth2.inc.php
@@ -1,16 +1,16 @@
 <?php
 function oauth2($_action, $_type, $_data = null) {
-	global $pdo;
-	global $redis;
-	global $lang;
-	if ($_SESSION['mailcow_cc_role'] != "admin") {
-		$_SESSION['return'][] = array(
-			'type' => 'danger',
+  global $pdo;
+  global $redis;
+  global $lang;
+  if ($_SESSION['mailcow_cc_role'] != "admin") {
+    $_SESSION['return'][] = array(
+      'type' => 'danger',
       'log' => array(__FUNCTION__, $_action, $_type, $_data),
-			'msg' => 'access_denied'
-		);
-		return false;
-	}
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
   switch ($_action) {
     case 'add':
       switch ($_type) {
@@ -188,7 +188,7 @@
           $_SESSION['return'][] = array(
             'type' => 'success',
             'log' => array(__FUNCTION__, $_action, $_type, $_data),
-            'msg' => sprintf($lang['success']['items_deleted'], implode(', ', $access_tokens))
+            'msg' => sprintf($lang['success']['items_deleted'], implode(', ', (array)$access_tokens))
           );
         break;
         case 'refresh_token':
@@ -210,7 +210,7 @@
           $_SESSION['return'][] = array(
             'type' => 'success',
             'log' => array(__FUNCTION__, $_action, $_type, $_data),
-            'msg' => sprintf($lang['success']['items_deleted'], implode(', ', $refresh_tokens))
+            'msg' => sprintf($lang['success']['items_deleted'], implode(', ', (array)$refresh_tokens))
           );
         break;
       }
@@ -239,4 +239,4 @@
       }
     break;
   }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.policy.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.policy.inc.php
index ad29bd2..498f991 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.policy.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.policy.inc.php
@@ -1,9 +1,9 @@
 <?php
 function policy($_action, $_scope, $_data = null) {
-	global $pdo;
-	global $redis;
-	global $lang;
-	$_data_log = $_data;
+  global $pdo;
+  global $redis;
+  global $lang;
+  $_data_log = $_data;
   switch ($_action) {
     case 'add':
       if (!isset($_SESSION['acl']['spam_policy']) || $_SESSION['acl']['spam_policy'] != "1" ) {
@@ -261,7 +261,7 @@
             $_SESSION['return'][] = array(
               'type' => 'success',
               'log' => array(__FUNCTION__, $_action, $_scope, $_data_log),
-              'msg' => array('items_deleted', implode(', ', $prefids))
+              'msg' => array('items_deleted', implode(', ', (array)$prefids))
             );
           }
         break;
@@ -317,4 +317,4 @@
       }
     break;
   }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.pushover.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.pushover.inc.php
index e8d4670..74e8bb1 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.pushover.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.pushover.inc.php
@@ -1,6 +1,6 @@
 <?php
 function pushover($_action, $_data = null) {
-	global $pdo;
+  global $pdo;
   switch ($_action) {
     case 'edit':
       if (!isset($_SESSION['acl']['pushover']) || $_SESSION['acl']['pushover'] != "1" ) {
@@ -81,7 +81,7 @@
         }
         $senders = array_filter($senders);
         if (empty($senders)) { $senders = ''; }
-        $senders = implode(",", $senders);
+        $senders = implode(",", (array)$senders);
         if (!ctype_alnum($key) || strlen($key) != 30) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.quota_notification.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.quota_notification.inc.php
index 9ca5a22..9f58bfb 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.quota_notification.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.quota_notification.inc.php
@@ -65,3 +65,86 @@
     break;
   }
 }
+function quota_notification_bcc($_action, $_data = null) {
+	global $redis;
+	$_data_log = $_data;
+  if ($_SESSION['mailcow_cc_role'] != "admin" && $_SESSION['mailcow_cc_role'] != "domainadmin") {
+    $_SESSION['return'][] = array(
+      'type' => 'danger',
+      'log' => array(__FUNCTION__, $_action, $_data_log),
+      'msg' => 'access_denied'
+    );
+    return false;
+  }
+  switch ($_action) {
+    case 'edit':
+      $domain = $_data['domain'];
+      if (!hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $domain)) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'msg' => 'access_denied'
+        );
+        return false;
+      }
+      $active = intval($_data['active']);
+      $bcc_rcpts = array_map('trim', preg_split( "/( |,|;|\n)/", $_data['bcc_rcpt']));
+      foreach ($bcc_rcpts as $i => &$rcpt) {
+        $rcpt = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $rcpt);
+          if (!empty($rcpt) && filter_var($rcpt, FILTER_VALIDATE_EMAIL) === false) {
+            $_SESSION['return'][] = array(
+              'type' => 'danger',
+              'log' => array(__FUNCTION__, $_action, $_data_log),
+              'msg' => array('goto_invalid', htmlspecialchars($rcpt))
+            );
+            unset($bcc_rcpts[$i]);
+            continue;
+          }
+      }
+      $bcc_rcpts = array_unique($bcc_rcpts);
+      $bcc_rcpts = array_filter($bcc_rcpts);
+      if (empty($bcc_rcpts)) {
+        $active = 0;
+        
+      }
+      try {
+        $redis->hSet('QW_BCC', $domain, json_encode(array('bcc_rcpts' => $bcc_rcpts, 'active' => $active)));
+      }
+      catch (RedisException $e) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'msg' => array('redis_error', $e)
+        );
+        return false;
+      }
+      $_SESSION['return'][] = array(
+        'type' => 'success',
+        'log' => array(__FUNCTION__, $_action, $_data_log),
+        'msg' => 'saved_settings'
+      );
+    break;
+    case 'get':
+      $domain = $_data;
+      if (!hasDomainAccess($_SESSION['mailcow_cc_username'], $_SESSION['mailcow_cc_role'], $domain)) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'msg' => 'access_denied'
+        );
+        return false;
+      }
+      try {
+        return json_decode($redis->hGet('QW_BCC', $domain), true);
+      }
+      catch (RedisException $e) {
+        $_SESSION['return'][] = array(
+          'type' => 'danger',
+          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'msg' => array('redis_error', $e)
+        );
+        return false;
+      }
+    break;
+  }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.rspamd.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.rspamd.inc.php
index b0ba1f5..bdc23b0 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.rspamd.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.rspamd.inc.php
@@ -137,7 +137,7 @@
       if ($_SESSION['mailcow_cc_role'] != "admin") {
         $_SESSION['return'][] = array(
           'type' => 'danger',
-          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'log' => array(__FUNCTION__, $_action, '-'),
           'msg' => 'access_denied'
         );
         return false;
@@ -148,7 +148,7 @@
           if (!in_array($map, $rspamd_map_type)) {
             $_SESSION['return'][] = array(
               'type' => 'danger',
-              'log' => array(__FUNCTION__, $_action, $_data_log),
+              'log' => array(__FUNCTION__, $_action, '-'),
               'msg' => array('global_map_invalid', $map)
             );
             continue;
@@ -170,14 +170,14 @@
         catch (Exception $e) {
           $_SESSION['return'][] = array(
             'type' => 'danger',
-            'log' => array(__FUNCTION__, $_action, $_data_log),
+            'log' => array(__FUNCTION__, $_action, '-'),
             'msg' => array('global_map_write_error', htmlspecialchars($map), htmlspecialchars($e->getMessage()))
           );
           continue;
         }
         $_SESSION['return'][] = array(
           'type' => 'success',
-          'log' => array(__FUNCTION__, $_action, $_data_log),
+          'log' => array(__FUNCTION__, $_action, '-'),
           'msg' => array('object_modified', htmlspecialchars($map))
         );
       }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/functions.transports.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/functions.transports.inc.php
index 7d8031a..7b22917 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/functions.transports.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/functions.transports.inc.php
@@ -1,7 +1,7 @@
 <?php
 function relayhost($_action, $_data = null) {
-	global $pdo;
-	global $lang;
+  global $pdo;
+  global $lang;
   $_data_log = $_data;
   switch ($_action) {
     case 'add':
@@ -45,7 +45,7 @@
       $_SESSION['return'][] = array(
         'type' => 'success',
         'log' => array(__FUNCTION__, $_action, $_data_log),
-        'msg' => array('relayhost_added', htmlspecialchars(implode(', ', $hosts)))
+        'msg' => array('relayhost_added', htmlspecialchars(implode(', ', (array)$hosts)))
       );
     break;
     case 'edit':
@@ -100,7 +100,7 @@
         $_SESSION['return'][] = array(
           'type' => 'success',
           'log' => array(__FUNCTION__, $_action, $_data_log),
-          'msg' => array('object_modified', htmlspecialchars(implode(', ', $hostnames)))
+          'msg' => array('object_modified', htmlspecialchars(implode(', ', (array)$hostnames)))
         );
       }
     break;
@@ -137,11 +137,11 @@
       }
     break;
     case 'get':
-      if ($_SESSION['mailcow_cc_role'] != "admin") {
+      if ($_SESSION['mailcow_cc_role'] != "admin" && $_SESSION['mailcow_cc_role'] != "domainadmin") {
         return false;
       }
       $relayhosts = array();
-      $stmt = $pdo->query("SELECT `id`, `hostname`, `username` FROM `relayhosts`");
+      $stmt = $pdo->query("SELECT `id`, `hostname`, `username`, `active` FROM `relayhosts`");
       $relayhosts = $stmt->fetchAll(PDO::FETCH_ASSOC);
       return $relayhosts;
     break;
@@ -166,14 +166,19 @@
         $used_by_domains = $stmt->fetch(PDO::FETCH_ASSOC)['used_by_domains'];
         $used_by_domains = (empty($used_by_domains)) ? '' : $used_by_domains;
         $relayhostdata['used_by_domains'] = $used_by_domains;
+        $stmt = $pdo->prepare("SELECT GROUP_CONCAT(`username` SEPARATOR ', ') AS `used_by_mailboxes` FROM `mailbox` WHERE JSON_VALUE(`attributes`, '$.relayhost') = :id");
+        $stmt->execute(array(':id' => $_data));
+        $used_by_mailboxes = $stmt->fetch(PDO::FETCH_ASSOC)['used_by_mailboxes'];
+        $used_by_mailboxes = (empty($used_by_mailboxes)) ? '' : $used_by_mailboxes;
+        $relayhostdata['used_by_mailboxes'] = $used_by_mailboxes;
       }
       return $relayhostdata;
     break;
   }
 }
 function transport($_action, $_data = null) {
-	global $pdo;
-	global $lang;
+  global $pdo;
+  global $lang;
   $_data_log = $_data;
   switch ($_action) {
     case 'add':
@@ -187,7 +192,7 @@
       }
       $destinations  = array_map('trim', preg_split( "/( |,|;|\n)/", $_data['destination']));
       $active = intval($_data['active']);
-      $lookup_mx = intval($_data['lookup_mx']);
+      $is_mx_based = intval($_data['is_mx_based']);
       $nexthop = trim($_data['nexthop']);
       if (filter_var($nexthop, FILTER_VALIDATE_IP)) {
         $nexthop = '[' . $nexthop . ']';
@@ -233,7 +238,16 @@
               continue;
             }
             // ".domain" is a valid destination, "..domain" is not
-            if (empty($dest) || (is_valid_domain_name(preg_replace('/^' . preg_quote('.', '/') . '/', '', $dest)) === false && $dest != '*' && filter_var($dest, FILTER_VALIDATE_EMAIL) === false)) {
+            if ($is_mx_based == 0 && (empty($dest) || (is_valid_domain_name(preg_replace('/^' . preg_quote('.', '/') . '/', '', $dest)) === false && $dest != '*' && filter_var($dest, FILTER_VALIDATE_EMAIL) === false))) {
+              $_SESSION['return'][] = array(
+                'type' => 'danger',
+                'log' => array(__FUNCTION__, $_action, $_data_log),
+                'msg' => array('invalid_destination', $dest)
+              );
+              unset($destinations[$d_ix]);
+              continue;
+            }
+            if ($is_mx_based == 1 && (empty($dest) || @preg_match('/' . $dest . '/', null) === false)) {
               $_SESSION['return'][] = array(
                 'type' => 'danger',
                 'log' => array(__FUNCTION__, $_action, $_data_log),
@@ -270,14 +284,14 @@
         }
       }
       foreach ($destinations as $insert_dest) {
-        $stmt = $pdo->prepare("INSERT INTO `transports` (`nexthop`, `destination`, `username` , `password`,  `lookup_mx`, `active`)
-          VALUES (:nexthop, :destination, :username, :password, :lookup_mx, :active)");
+        $stmt = $pdo->prepare("INSERT INTO `transports` (`nexthop`, `destination`, `is_mx_based`, `username` , `password`,  `active`)
+          VALUES (:nexthop, :destination, :is_mx_based, :username, :password, :active)");
         $stmt->execute(array(
           ':nexthop' => $nexthop,
           ':destination' => $insert_dest,
+          ':is_mx_based' => $is_mx_based,
           ':username' => $username,
           ':password' => str_replace(':', '\:', $password),
-          ':lookup_mx' => $lookup_mx,
           ':active' => $active
         ));
       }
@@ -293,7 +307,7 @@
       $_SESSION['return'][] = array(
         'type' => 'success',
         'log' => array(__FUNCTION__, $_action, $_data_log),
-        'msg' => array('relayhost_added', htmlspecialchars(implode(', ', $hosts)))
+        'msg' => array('relayhost_added', htmlspecialchars(implode(', ', (array)$hosts)))
       );
     break;
     case 'edit':
@@ -313,7 +327,7 @@
           $nexthop = (!empty($_data['nexthop'])) ? trim($_data['nexthop']) : $is_now['nexthop'];
           $username = (isset($_data['username'])) ? trim($_data['username']) : $is_now['username'];
           $password = (isset($_data['password'])) ? trim($_data['password']) : $is_now['password'];
-          $lookup_mx   = (isset($_data['lookup_mx']) && $_data['lookup_mx'] != '') ? intval($_data['lookup_mx']) : $is_now['lookup_mx'];
+          $is_mx_based = (isset($_data['is_mx_based']) && $_data['is_mx_based'] != '') ? intval($_data['is_mx_based']) : $is_now['is_mx_based'];
           $active   = (isset($_data['active']) && $_data['active'] != '') ? intval($_data['active']) : $is_now['active'];
         }
         else {
@@ -348,6 +362,22 @@
             }
           }
         }
+        if ($is_mx_based == 0 && (empty($destination) || (is_valid_domain_name(preg_replace('/^' . preg_quote('.', '/') . '/', '', $destination)) === false && $destination != '*' && filter_var($destination, FILTER_VALIDATE_EMAIL) === false))) {
+          $_SESSION['return'][] = array(
+            'type' => 'danger',
+            'log' => array(__FUNCTION__, $_action, $_data_log),
+            'msg' => array('invalid_destination', $destination)
+          );
+          return false;
+        }
+        if ($is_mx_based == 1 && (empty($destination) || @preg_match('/' . $destination . '/', null) === false)) {
+          $_SESSION['return'][] = array(
+            'type' => 'danger',
+            'log' => array(__FUNCTION__, $_action, $_data_log),
+            'msg' => array('invalid_destination', $destination)
+          );
+          return false;
+        }
         if (isset($next_hop_matches[1])) {
           if (in_array($next_hop_clean, $existing_nh)) {
             $_SESSION['return'][] = array(
@@ -376,19 +406,19 @@
         try {
           $stmt = $pdo->prepare("UPDATE `transports` SET
             `destination` = :destination,
+            `is_mx_based` = :is_mx_based,
             `nexthop` = :nexthop,
             `username` = :username,
             `password` = :password,
-            `lookup_mx` = :lookup_mx,
             `active` = :active
               WHERE `id` = :id");
           $stmt->execute(array(
             ':id' => $id,
             ':destination' => $destination,
+            ':is_mx_based' => $is_mx_based,
             ':nexthop' => $nexthop,
             ':username' => $username,
             ':password' => $password,
-            ':lookup_mx' => $lookup_mx,
             ':active' => $active
           ));
           $stmt = $pdo->prepare("UPDATE `transports` SET
@@ -412,7 +442,7 @@
         $_SESSION['return'][] = array(
           'type' => 'success',
           'log' => array(__FUNCTION__, $_action, $_data_log),
-          'msg' => array('object_modified', htmlspecialchars(implode(', ', $hostnames)))
+          'msg' => array('object_modified', htmlspecialchars(implode(', ', (array)$hostnames)))
         );
       }
     break;
@@ -451,7 +481,7 @@
         return false;
       }
       $transports = array();
-      $stmt = $pdo->query("SELECT `id`, `destination`, `nexthop`, `username` FROM `transports`");
+      $stmt = $pdo->query("SELECT `id`, `is_mx_based`, `destination`, `nexthop`, `username` FROM `transports`");
       $transports = $stmt->fetchAll(PDO::FETCH_ASSOC);
       return $transports;
     break;
@@ -461,12 +491,12 @@
       }
       $transportdata = array();
       $stmt = $pdo->prepare("SELECT `id`,
+        `is_mx_based`,
         `destination`,
         `nexthop`,
         `username`,
         `password`,
         `active`,
-        `lookup_mx`,
         CONCAT(LEFT(`password`, 3), '...') AS `password_short`
           FROM `transports`
             WHERE `id` = :id");
@@ -475,4 +505,4 @@
       return $transportdata;
     break;
   }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/header.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/header.inc.php
index d2add25..d97a388 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/header.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/header.inc.php
@@ -62,12 +62,12 @@
           if (isset($_SESSION['mailcow_locale'])) {
           ?>
           <li class="dropdown<?=(isset($_SESSION['mailcow_locale']) && count($AVAILABLE_LANGUAGES) === 1) ? ' lang-link-disabled"' : '' ?>">
-            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><span class="lang-sm lang-lbl" lang="<?= $_SESSION['mailcow_locale']; ?>"></span><span class="caret"></span></a>
+            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><span class="flag-icon flag-icon-<?= $_SESSION['mailcow_locale']; ?>"></span><span class="caret"></span></a>
             <ul class="dropdown-menu" role="menu">
               <?php
-              foreach ($AVAILABLE_LANGUAGES as $language) {
+              foreach ($AVAILABLE_LANGUAGES as $c => $v) {
               ?>
-              <li<?= ($_SESSION['mailcow_locale'] == $language) ? ' class="active"' : ''; ?>><a href="?<?= http_build_query(array_merge($_GET, array('lang' => $language))); ?>"><span class="lang-xs lang-lbl-full" lang="<?= $language; ?>"></span></a></li>
+              <li<?= ($_SESSION['mailcow_locale'] == $c) ? ' class="active"' : ''; ?>><a href="?<?= http_build_query(array_merge($_GET, array('lang' => $c))); ?>"><span class="flag-icon flag-icon-<?=$c;?>"></span> <?=$v;?></a></li>
               <?php
               }
               ?>
@@ -100,17 +100,17 @@
             </ul>
           </li>
           <?php if (isset($_SESSION['mailcow_cc_role'])) { ?>
-          <li<?= (preg_match("/quarantine/i", $_SERVER['REQUEST_URI'])) ? ' class="active"' : ''; ?>><a href="/quarantine"><span class="glyphicon glyphicon-briefcase"></span> <?= $lang['header']['quarantine']; ?></a></li>
+          <li<?= (preg_match("/quarantine/i", $_SERVER['REQUEST_URI'])) ? ' class="active"' : ''; ?>><a href="/quarantine"><i class="bi bi-inbox-fill"></i> <?= $lang['header']['quarantine']; ?></a></li>
           <?php } if ($_SESSION['mailcow_cc_role'] == 'admin' && getenv('SKIP_SOGO') != "y") { ?>
-          <li><a href data-toggle="modal" data-container="sogo-mailcow" data-target="#RestartContainer"><span class="glyphicon glyphicon-refresh"></span> <?= $lang['header']['restart_sogo']; ?></a></li>
+          <li><a href data-toggle="modal" data-container="sogo-mailcow" data-target="#RestartContainer"><i class="bi bi-arrow-repeat"></i> <?= $lang['header']['restart_sogo']; ?></a></li>
           <?php } ?>
           <li class="dropdown">
-            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><span class="glyphicon glyphicon-link"></span> <?= $lang['header']['apps']; ?> <span class="caret"></span></a>
+            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><i class="bi bi-link-45deg"></i> <?=$UI_TEXTS['apps_name'];?> <span class="caret"></span></a>
             <ul class="dropdown-menu" role="menu">
             <?php foreach ($MAILCOW_APPS as $app) {
               if (getenv('SKIP_SOGO') == "y" && preg_match('/^\/SOGo/i', $app['link'])) { continue; }
             ?>
-              <li title="<?= htmlspecialchars($app['description']); ?>"><a href="<?= htmlspecialchars($app['link']); ?>"><?= htmlspecialchars($app['name']); ?></a></li>
+              <li title="<?=(isset($app['description'])) ? htmlspecialchars($app['description']) : '';?>"><a href="<?=(isset($app['link'])) ? htmlspecialchars($app['link']) : '';?>"><?=(isset($app['name'])) ? htmlspecialchars($app['name']) : '';?></a></li>
             <?php
             }
             $app_links = customize('get', 'app_links');
@@ -127,9 +127,9 @@
             </ul>
           </li>
           <?php } if (!isset($_SESSION['dual-login']) && isset($_SESSION['mailcow_cc_username'])) { ?>
-            <li class="logged-in-as"><a href="#" onclick="logout.submit()"><b class="username-lia"><?= htmlspecialchars($_SESSION['mailcow_cc_username']); ?></b> <span class="glyphicon glyphicon-log-out"></span></a></li>
+            <li class="logged-in-as"><a href="#" onclick="logout.submit()"><b class="username-lia"><?= htmlspecialchars($_SESSION['mailcow_cc_username']); ?></b> <i class="bi bi-power"></i></a></li>
           <?php } elseif (isset($_SESSION['dual-login'])) { ?>
-            <li class="logged-in-as"><a href="#" onclick="logout.submit()"><b class="username-lia"><?= htmlspecialchars($_SESSION['mailcow_cc_username']); ?> <span class="text-info">(<?= htmlspecialchars($_SESSION['dual-login']['username']); ?>)</span> </b><span class="glyphicon glyphicon-log-out"></span></a></li>
+            <li class="logged-in-as"><a href="#" onclick="logout.submit()"><b class="username-lia"><?= htmlspecialchars($_SESSION['mailcow_cc_username']); ?> <span class="text-info">(<?= htmlspecialchars($_SESSION['dual-login']['username']); ?>)</span> </b><i class="bi bi-power"></i></a></li>
           <?php } if (!preg_match('/y|yes/i', getenv('MASTER'))) { ?>
             <li class="text-warning slave-info">[ slave ]</li>
           <?php } ?>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/init_db.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/init_db.inc.php
index 8010bbd..c43afbf 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/init_db.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/init_db.inc.php
@@ -3,7 +3,7 @@
   try {
     global $pdo;
 
-    $db_version = "28112020_1210";
+    $db_version = "01072021_0630";
 
     $stmt = $pdo->query("SHOW TABLES LIKE 'versions'");
     $num_results = count($stmt->fetchAll(PDO::FETCH_ASSOC));
@@ -152,9 +152,9 @@
           "id" => "INT NOT NULL AUTO_INCREMENT",
           "destination" => "VARCHAR(255) NOT NULL",
           "nexthop" => "VARCHAR(255) NOT NULL",
-          "username" => "VARCHAR(255) NOT NULL",
-          "password" => "VARCHAR(255) NOT NULL",
-          "lookup_mx" => "TINYINT(1) NOT NULL DEFAULT '1'",
+          "username" => "VARCHAR(255) NOT NULL DEFAULT ''",
+          "password" => "VARCHAR(255) NOT NULL DEFAULT ''",
+          "is_mx_based" => "TINYINT(1) NOT NULL DEFAULT '0'",
           "active" => "TINYINT(1) NOT NULL DEFAULT '1'"
         ),
         "keys" => array(
@@ -319,7 +319,8 @@
             "" => array("username")
           ),
           "key" => array(
-            "domain" => array("domain")
+            "domain" => array("domain"),
+            "kind" => array("kind")
           )
         ),
         "attr" => "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC"
@@ -442,7 +443,9 @@
         "cols" => array(
           "address" => "VARCHAR(255) NOT NULL",
           "goto" => "TEXT NOT NULL",
-          "validity" => "INT(11) NOT NULL"
+          "created" => "DATETIME(0) NOT NULL DEFAULT NOW(0)",
+          "modified" => "DATETIME ON UPDATE CURRENT_TIMESTAMP",
+          "validity" => "INT(11)"
         ),
         "keys" => array(
           "primary" => array(
@@ -505,6 +508,27 @@
         ),
         "attr" => "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC"
       ),
+      "sasl_log" => array(
+        "cols" => array(
+          "service" => "VARCHAR(32) NOT NULL DEFAULT ''",
+          "app_password" => "INT",
+          "username" => "VARCHAR(255) NOT NULL",
+          "real_rip" => "VARCHAR(64) NOT NULL",
+          "datetime" => "DATETIME(0) NOT NULL DEFAULT NOW(0)"
+        ),
+        "keys" => array(
+          "primary" => array(
+            "" => array("service", "real_rip", "username")
+          ),
+          "key" => array(
+            "username" => array("username"),
+            "service" => array("service"),
+            "datetime" => array("datetime"),
+            "real_rip" => array("real_rip")
+          )
+        ),
+        "attr" => "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC"
+      ),
       "quota2" => array(
         "cols" => array(
           "username" => "VARCHAR(255) NOT NULL",
@@ -567,6 +591,8 @@
           "protocol_access" => "TINYINT(1) NOT NULL DEFAULT '1'",
           "smtp_ip_access" => "TINYINT(1) NOT NULL DEFAULT '1'",
           "alias_domains" => "TINYINT(1) NOT NULL DEFAULT '0'",
+          "mailbox_relayhost" => "TINYINT(1) NOT NULL DEFAULT '1'",
+          "domain_relayhost" => "TINYINT(1) NOT NULL DEFAULT '1'",
           "domain_desc" => "TINYINT(1) NOT NULL DEFAULT '0'"
           ),
         "keys" => array(
@@ -972,6 +998,7 @@
           }
         }
       }
+
       // Migrate tls_enforce_* options
       if ($table == 'mailbox') {
         $stmt = $pdo->query("SHOW TABLES LIKE 'mailbox'");
@@ -988,6 +1015,7 @@
           }
         }
       }
+
       $stmt = $pdo->query("SHOW TABLES LIKE '" . $table . "'"); 
       $num_results = count($stmt->fetchAll(PDO::FETCH_ASSOC));
       if ($num_results != 0) {
@@ -1179,6 +1207,8 @@
     $pdo->query("UPDATE `pushover` SET `attributes` =  JSON_SET(`attributes`, '$.only_x_prio', \"0\") WHERE JSON_VALUE(`attributes`, '$.only_x_prio') IS NULL;");
     // mailbox
     $pdo->query("UPDATE `mailbox` SET `attributes` = '{}' WHERE `attributes` = '' OR `attributes` IS NULL;");
+    $pdo->query("UPDATE `mailbox` SET `attributes` =  JSON_SET(`attributes`, '$.passwd_update', \"0\") WHERE JSON_VALUE(`attributes`, '$.passwd_update') IS NULL;");
+    $pdo->query("UPDATE `mailbox` SET `attributes` =  JSON_SET(`attributes`, '$.relayhost', \"0\") WHERE JSON_VALUE(`attributes`, '$.relayhost') IS NULL;");
     $pdo->query("UPDATE `mailbox` SET `attributes` =  JSON_SET(`attributes`, '$.force_pw_update', \"0\") WHERE JSON_VALUE(`attributes`, '$.force_pw_update') IS NULL;");
     $pdo->query("UPDATE `mailbox` SET `attributes` =  JSON_SET(`attributes`, '$.sogo_access', \"1\") WHERE JSON_VALUE(`attributes`, '$.sogo_access') IS NULL;");
     $pdo->query("UPDATE `mailbox` SET `attributes` =  JSON_SET(`attributes`, '$.imap_access', \"1\") WHERE JSON_VALUE(`attributes`, '$.imap_access') IS NULL;");
@@ -1226,6 +1256,7 @@
 }
 if (php_sapi_name() == "cli") {
   include '/web/inc/vars.inc.php';
+  include '/web/inc/functions.docker.inc.php';
   // $now = new DateTime();
   // $mins = $now->getOffset() / 60;
   // $sgn = ($mins < 0 ? -1 : 1);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/bsi.pem b/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/bsi.pem
new file mode 100644
index 0000000..2a6b40f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/bsi.pem
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/trustkey.pem b/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/trustkey.pem
new file mode 100644
index 0000000..f5a4df6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/WebAuthn/rootCertificates/trustkey.pem
@@ -0,0 +1,17 @@
+-----BEGIN CERTIFICATE-----
+MIICpTCCAkqgAwIBAgIBATAKBggqhkjOPQQDAjCBrzELMAkGA1UEBhMCS1IxETAP
+BgNVBAgMCFNlb3VsLVNpMRMwEQYDVQQHDApHYW5nbmFtLUd1MRcwFQYDVQQKDA5l
+V0JNIENvLiwgTHRkLjEiMCAGA1UECwwZQXV0aGVudGljYXRvciBBdHRlc3RhdGlv
+bjEcMBoGA1UEAwwTZVdCTSBDQSBDZXJ0aWZpY2F0ZTEdMBsGCSqGSIb3DQEJARYO
+aW5mb0BlLXdibS5jb20wHhcNMTgwNzAyMDUzMTM5WhcNMjMwNzAxMDUzMTM5WjCB
+rzELMAkGA1UEBhMCS1IxETAPBgNVBAgMCFNlb3VsLVNpMRMwEQYDVQQHDApHYW5n
+bmFtLUd1MRcwFQYDVQQKDA5lV0JNIENvLiwgTHRkLjEiMCAGA1UECwwZQXV0aGVu
+dGljYXRvciBBdHRlc3RhdGlvbjEcMBoGA1UEAwwTZVdCTSBDQSBDZXJ0aWZpY2F0
+ZTEdMBsGCSqGSIb3DQEJARYOaW5mb0BlLXdibS5jb20wWTATBgcqhkjOPQIBBggq
+hkjOPQMBBwNCAAQIfqHisi0oO/eyOqSaDrr9itG2IymBkHnSDGQIIYmT+vqA8AgO
+81momc2Ld5PGpEN6muE54wPHQjvc/yCih8u2o1UwUzASBgNVHRMBAf8ECDAGAQH/
+AgEAMB0GA1UdDgQWBBS3J/fxiAv22irdBs98SODhF7kU/jALBgNVHQ8EBAMCAQYw
+EQYJYIZIAYb4QgEBBAQDAgAHMAoGCCqGSM49BAMCA0kAMEYCIQDc41LFK4LJCBU2
+VVKIz7Z6sxPhUEkh8nLSLK6IXdkP5wIhAIeKVOZchaVO5aF7fbdXoSrcyy1YYeUe
+PLojcKI9fX84
+-----END CERTIFICATE-----
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.json
index 17caa43..e7e6b68 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.json
@@ -3,11 +3,12 @@
         "robthree/twofactorauth": "^1.6",
         "yubico/u2flib-server": "^1.0",
         "phpmailer/phpmailer": "^6.1",
-        "php-mime-mail-parser/php-mime-mail-parser": "^5.0.5",
+        "php-mime-mail-parser/php-mime-mail-parser": "^7",
         "soundasleep/html2text": "^0.5.0",
         "ddeboer/imap": "^1.5",
         "matthiasmullie/minify": "^1.3",
         "bshaffer/oauth2-server-php": "^1.11",
-        "mustangostang/spyc": "^0.6.3"
+        "mustangostang/spyc": "^0.6.3",
+        "directorytree/ldaprecord": "^2.4"
     }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.lock b/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.lock
index b00a75d..e2633cc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/composer.lock
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/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": "58d5d30b266f8b8015d7937e1a35ac5d",
+    "content-hash": "50acd623ff29bb513cd29819f4537aa0",
     "packages": [
         {
             "name": "bshaffer/oauth2-server-php",
@@ -70,31 +70,31 @@
         },
         {
             "name": "ddeboer/imap",
-            "version": "1.11.0",
+            "version": "1.12.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/ddeboer/imap.git",
-                "reference": "a089dfcb9d177f921eb5dadc8d4144a44dff22ee"
+                "reference": "dbed05ca67b93509345a820b2859de10c48948fb"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/ddeboer/imap/zipball/a089dfcb9d177f921eb5dadc8d4144a44dff22ee",
-                "reference": "a089dfcb9d177f921eb5dadc8d4144a44dff22ee",
+                "url": "https://api.github.com/repos/ddeboer/imap/zipball/dbed05ca67b93509345a820b2859de10c48948fb",
+                "reference": "dbed05ca67b93509345a820b2859de10c48948fb",
                 "shasum": ""
             },
             "require": {
                 "ext-iconv": "*",
                 "ext-imap": "*",
                 "ext-mbstring": "*",
-                "php": "^7.3 || ^8.0"
+                "php": "^7.4 || ^8.0"
             },
             "require-dev": {
-                "friendsofphp/php-cs-fixer": "^2.16.7",
-                "laminas/laminas-mail": "^2.12.3",
-                "phpstan/phpstan": "^0.12.57",
-                "phpstan/phpstan-phpunit": "^0.12.16",
-                "phpstan/phpstan-strict-rules": "^0.12.5",
-                "phpunit/phpunit": "^9.4.3"
+                "friendsofphp/php-cs-fixer": "^2.18.6",
+                "laminas/laminas-mail": "^2.14.0",
+                "phpstan/phpstan": "^0.12.84",
+                "phpstan/phpstan-phpunit": "^0.12.18",
+                "phpstan/phpstan-strict-rules": "^0.12.9",
+                "phpunit/phpunit": "^9.5.4"
             },
             "type": "library",
             "autoload": {
@@ -128,7 +128,7 @@
             ],
             "support": {
                 "issues": "https://github.com/ddeboer/imap/issues",
-                "source": "https://github.com/ddeboer/imap/tree/1.11.0"
+                "source": "https://github.com/ddeboer/imap/tree/1.12.1"
             },
             "funding": [
                 {
@@ -140,20 +140,141 @@
                     "type": "github"
                 }
             ],
-            "time": "2020-11-30T14:52:49+00:00"
+            "time": "2021-04-27T08:38:46+00:00"
         },
         {
-            "name": "matthiasmullie/minify",
-            "version": "1.3.65",
+            "name": "directorytree/ldaprecord",
+            "version": "v2.6.3",
             "source": {
                 "type": "git",
-                "url": "https://github.com/matthiasmullie/minify.git",
-                "reference": "227f19062451c55a797e0cc667ef983834e6580c"
+                "url": "https://github.com/DirectoryTree/LdapRecord.git",
+                "reference": "5c93ec6d1ef458290825a8b0a148946dce7c1e7a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/matthiasmullie/minify/zipball/227f19062451c55a797e0cc667ef983834e6580c",
-                "reference": "227f19062451c55a797e0cc667ef983834e6580c",
+                "url": "https://api.github.com/repos/DirectoryTree/LdapRecord/zipball/5c93ec6d1ef458290825a8b0a148946dce7c1e7a",
+                "reference": "5c93ec6d1ef458290825a8b0a148946dce7c1e7a",
+                "shasum": ""
+            },
+            "require": {
+                "ext-json": "*",
+                "ext-ldap": "*",
+                "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0",
+                "nesbot/carbon": "^1.0|^2.0",
+                "php": ">=7.3",
+                "psr/log": "^1.0",
+                "psr/simple-cache": "^1.0",
+                "tightenco/collect": "^5.6|^6.0|^7.0|^8.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^1.0",
+                "phpunit/phpunit": "^8.0",
+                "spatie/ray": "^1.24"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "LdapRecord\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Steve Bauman",
+                    "email": "steven_bauman@outlook.com",
+                    "role": "Developer"
+                }
+            ],
+            "description": "A fully-featured LDAP ORM.",
+            "homepage": "https://www.ldaprecord.com",
+            "keywords": [
+                "active directory",
+                "ad",
+                "adLDAP",
+                "adldap2",
+                "directory",
+                "ldap",
+                "ldaprecord",
+                "orm",
+                "windows"
+            ],
+            "support": {
+                "docs": "https://ldaprecord.com",
+                "email": "steven_bauman@outlook.com",
+                "issues": "https://github.com/DirectoryTree/LdapRecord/issues",
+                "source": "https://github.com/DirectoryTree/LdapRecord"
+            },
+            "funding": [
+                {
+                    "url": "https://github.com/stevebauman",
+                    "type": "github"
+                }
+            ],
+            "time": "2021-08-05T21:52:43+00:00"
+        },
+        {
+            "name": "illuminate/contracts",
+            "version": "v8.53.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/contracts.git",
+                "reference": "504a34286a1b4c5421c43087d6bd4e176138f6fb"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/contracts/zipball/504a34286a1b4c5421c43087d6bd4e176138f6fb",
+                "reference": "504a34286a1b4c5421c43087d6bd4e176138f6fb",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^7.3|^8.0",
+                "psr/container": "^1.0",
+                "psr/simple-cache": "^1.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "8.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\Contracts\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Contracts package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2021-08-03T14:03:47+00:00"
+        },
+        {
+            "name": "matthiasmullie/minify",
+            "version": "1.3.66",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/matthiasmullie/minify.git",
+                "reference": "45fd3b0f1dfa2c965857c6d4a470bea52adc31a6"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/matthiasmullie/minify/zipball/45fd3b0f1dfa2c965857c6d4a470bea52adc31a6",
+                "reference": "45fd3b0f1dfa2c965857c6d4a470bea52adc31a6",
                 "shasum": ""
             },
             "require": {
@@ -163,8 +284,8 @@
             },
             "require-dev": {
                 "friendsofphp/php-cs-fixer": "~2.0",
-                "matthiasmullie/scrapbook": "~1.0",
-                "phpunit/phpunit": "~4.8"
+                "matthiasmullie/scrapbook": "dev-master",
+                "phpunit/phpunit": ">=4.8"
             },
             "suggest": {
                 "psr/cache-implementation": "Cache implementation to use with Minify::cache"
@@ -202,7 +323,7 @@
             ],
             "support": {
                 "issues": "https://github.com/matthiasmullie/minify/issues",
-                "source": "https://github.com/matthiasmullie/minify/tree/1.3.65"
+                "source": "https://github.com/matthiasmullie/minify/tree/1.3.66"
             },
             "funding": [
                 {
@@ -218,7 +339,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2020-12-27T21:43:29+00:00"
+            "time": "2021-01-06T15:18:10+00:00"
         },
         {
             "name": "matthiasmullie/path-converter",
@@ -324,6 +445,100 @@
             "time": "2019-09-10T13:16:29+00:00"
         },
         {
+            "name": "nesbot/carbon",
+            "version": "2.51.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/briannesbitt/Carbon.git",
+                "reference": "8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922",
+                "reference": "8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922",
+                "shasum": ""
+            },
+            "require": {
+                "ext-json": "*",
+                "php": "^7.1.8 || ^8.0",
+                "symfony/polyfill-mbstring": "^1.0",
+                "symfony/polyfill-php80": "^1.16",
+                "symfony/translation": "^3.4 || ^4.0 || ^5.0"
+            },
+            "require-dev": {
+                "doctrine/orm": "^2.7",
+                "friendsofphp/php-cs-fixer": "^2.14 || ^3.0",
+                "kylekatarnls/multi-tester": "^2.0",
+                "phpmd/phpmd": "^2.9",
+                "phpstan/extension-installer": "^1.0",
+                "phpstan/phpstan": "^0.12.54",
+                "phpunit/phpunit": "^7.5.20 || ^8.5.14",
+                "squizlabs/php_codesniffer": "^3.4"
+            },
+            "bin": [
+                "bin/carbon"
+            ],
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-3.x": "3.x-dev",
+                    "dev-master": "2.x-dev"
+                },
+                "laravel": {
+                    "providers": [
+                        "Carbon\\Laravel\\ServiceProvider"
+                    ]
+                },
+                "phpstan": {
+                    "includes": [
+                        "extension.neon"
+                    ]
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Carbon\\": "src/Carbon/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Brian Nesbitt",
+                    "email": "brian@nesbot.com",
+                    "homepage": "https://markido.com"
+                },
+                {
+                    "name": "kylekatarnls",
+                    "homepage": "https://github.com/kylekatarnls"
+                }
+            ],
+            "description": "An API extension for DateTime that supports 281 different languages.",
+            "homepage": "https://carbon.nesbot.com",
+            "keywords": [
+                "date",
+                "datetime",
+                "time"
+            ],
+            "support": {
+                "issues": "https://github.com/briannesbitt/Carbon/issues",
+                "source": "https://github.com/briannesbitt/Carbon"
+            },
+            "funding": [
+                {
+                    "url": "https://opencollective.com/Carbon",
+                    "type": "open_collective"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-07-28T13:16:28+00:00"
+        },
+        {
             "name": "paragonie/random_compat",
             "version": "v9.99.100",
             "source": {
@@ -375,31 +590,30 @@
         },
         {
             "name": "php-mime-mail-parser/php-mime-mail-parser",
-            "version": "5.0.5",
+            "version": "7.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-mime-mail-parser/php-mime-mail-parser.git",
-                "reference": "27983433aabeccee832573c3c56e6a4855e57745"
+                "reference": "9d09a017f3f103fec8456211a4a538b80e0eca0d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-mime-mail-parser/php-mime-mail-parser/zipball/27983433aabeccee832573c3c56e6a4855e57745",
-                "reference": "27983433aabeccee832573c3c56e6a4855e57745",
+                "url": "https://api.github.com/repos/php-mime-mail-parser/php-mime-mail-parser/zipball/9d09a017f3f103fec8456211a4a538b80e0eca0d",
+                "reference": "9d09a017f3f103fec8456211a4a538b80e0eca0d",
                 "shasum": ""
             },
             "require": {
                 "ext-mailparse": "*",
-                "php": "^7.1"
+                "php": "^7.2|^8.0"
             },
             "replace": {
                 "exorus/php-mime-mail-parser": "*",
                 "messaged/php-mime-mail-parser": "*"
             },
             "require-dev": {
-                "php-coveralls/php-coveralls": "^2.1",
-                "phpunit/php-token-stream": "^3.0",
-                "phpunit/phpunit": "^7.0",
-                "squizlabs/php_codesniffer": "^3.4"
+                "php-coveralls/php-coveralls": "^2.2",
+                "phpunit/phpunit": "^8.0",
+                "squizlabs/php_codesniffer": "^3.5"
             },
             "type": "library",
             "autoload": {
@@ -443,7 +657,7 @@
                     "role": "Developer"
                 }
             ],
-            "description": "A fully tested email parser for PHP 7.1+ (mailparse extension wrapper).",
+            "description": "A fully tested email parser for PHP 7.2+ (mailparse extension wrapper).",
             "homepage": "https://github.com/php-mime-mail-parser/php-mime-mail-parser",
             "keywords": [
                 "MimeMailParser",
@@ -455,22 +669,28 @@
             ],
             "support": {
                 "issues": "https://github.com/php-mime-mail-parser/php-mime-mail-parser/issues",
-                "source": "https://github.com/php-mime-mail-parser/php-mime-mail-parser/tree/master"
+                "source": "https://github.com/php-mime-mail-parser/php-mime-mail-parser/tree/7.0.0"
             },
-            "time": "2019-09-23T11:57:58+00:00"
+            "funding": [
+                {
+                    "url": "https://github.com/eXorus",
+                    "type": "github"
+                }
+            ],
+            "time": "2021-02-25T17:21:57+00:00"
         },
         {
             "name": "phpmailer/phpmailer",
-            "version": "v6.2.0",
+            "version": "v6.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPMailer/PHPMailer.git",
-                "reference": "e38888a75c070304ca5514197d4847a59a5c853f"
+                "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/e38888a75c070304ca5514197d4847a59a5c853f",
-                "reference": "e38888a75c070304ca5514197d4847a59a5c853f",
+                "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/a5b5c43e50b7fba655f793ad27303cd74c57363c",
+                "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c",
                 "shasum": ""
             },
             "require": {
@@ -488,7 +708,7 @@
                 "yoast/phpunit-polyfills": "^0.2.0"
             },
             "suggest": {
-                "ext-mbstring": "Needed to send email in multibyte encoding charset",
+                "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses",
                 "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication",
                 "league/oauth2-google": "Needed for Google XOAUTH2 authentication",
                 "psr/log": "For optional PSR-3 debug logging",
@@ -525,7 +745,7 @@
             "description": "PHPMailer is a full-featured email creation and transfer class for PHP",
             "support": {
                 "issues": "https://github.com/PHPMailer/PHPMailer/issues",
-                "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.2.0"
+                "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.0"
             },
             "funding": [
                 {
@@ -533,28 +753,182 @@
                     "type": "github"
                 }
             ],
-            "time": "2020-11-25T15:24:57+00:00"
+            "time": "2021-06-16T14:33:43+00:00"
         },
         {
-            "name": "robthree/twofactorauth",
-            "version": "1.7.0",
+            "name": "psr/container",
+            "version": "1.1.1",
             "source": {
                 "type": "git",
-                "url": "https://github.com/RobThree/TwoFactorAuth.git",
-                "reference": "37983bf675c5baca09d19d6705170489d0df0002"
+                "url": "https://github.com/php-fig/container.git",
+                "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/RobThree/TwoFactorAuth/zipball/37983bf675c5baca09d19d6705170489d0df0002",
-                "reference": "37983bf675c5baca09d19d6705170489d0df0002",
+                "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
+                "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.0"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Container\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "https://www.php-fig.org/"
+                }
+            ],
+            "description": "Common Container Interface (PHP FIG PSR-11)",
+            "homepage": "https://github.com/php-fig/container",
+            "keywords": [
+                "PSR-11",
+                "container",
+                "container-interface",
+                "container-interop",
+                "psr"
+            ],
+            "support": {
+                "issues": "https://github.com/php-fig/container/issues",
+                "source": "https://github.com/php-fig/container/tree/1.1.1"
+            },
+            "time": "2021-03-05T17:36:06+00:00"
+        },
+        {
+            "name": "psr/log",
+            "version": "1.1.4",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/log.git",
+                "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
+                "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.1.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Log\\": "Psr/Log/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "https://www.php-fig.org/"
+                }
+            ],
+            "description": "Common interface for logging libraries",
+            "homepage": "https://github.com/php-fig/log",
+            "keywords": [
+                "log",
+                "psr",
+                "psr-3"
+            ],
+            "support": {
+                "source": "https://github.com/php-fig/log/tree/1.1.4"
+            },
+            "time": "2021-05-03T11:20:27+00:00"
+        },
+        {
+            "name": "psr/simple-cache",
+            "version": "1.0.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/simple-cache.git",
+                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Psr\\SimpleCache\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "http://www.php-fig.org/"
+                }
+            ],
+            "description": "Common interfaces for simple caching",
+            "keywords": [
+                "cache",
+                "caching",
+                "psr",
+                "psr-16",
+                "simple-cache"
+            ],
+            "support": {
+                "source": "https://github.com/php-fig/simple-cache/tree/master"
+            },
+            "time": "2017-10-23T01:57:42+00:00"
+        },
+        {
+            "name": "robthree/twofactorauth",
+            "version": "1.8.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/RobThree/TwoFactorAuth.git",
+                "reference": "30a38627ae1e7c9399dae67e265063cd6ec5276c"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/RobThree/TwoFactorAuth/zipball/30a38627ae1e7c9399dae67e265063cd6ec5276c",
+                "reference": "30a38627ae1e7c9399dae67e265063cd6ec5276c",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.6.0"
             },
             "require-dev": {
+                "php-parallel-lint/php-parallel-lint": "^1.2",
                 "phpunit/phpunit": "@stable"
             },
+            "suggest": {
+                "bacon/bacon-qr-code": "Needed for BaconQrCodeProvider provider",
+                "endroid/qr-code": "Needed for EndroidQrCodeProvider"
+            },
             "type": "library",
             "autoload": {
                 "psr-4": {
@@ -588,7 +962,17 @@
                 "issues": "https://github.com/RobThree/TwoFactorAuth/issues",
                 "source": "https://github.com/RobThree/TwoFactorAuth"
             },
-            "time": "2020-01-02T19:56:46+00:00"
+            "funding": [
+                {
+                    "url": "https://paypal.me/robiii",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/RobThree",
+                    "type": "github"
+                }
+            ],
+            "time": "2021-03-09T18:24:05+00:00"
         },
         {
             "name": "soundasleep/html2text",
@@ -646,6 +1030,551 @@
             "time": "2017-04-19T22:01:50+00:00"
         },
         {
+            "name": "symfony/deprecation-contracts",
+            "version": "v2.4.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/deprecation-contracts.git",
+                "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+                "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "2.4-dev"
+                },
+                "thanks": {
+                    "name": "symfony/contracts",
+                    "url": "https://github.com/symfony/contracts"
+                }
+            },
+            "autoload": {
+                "files": [
+                    "function.php"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "A generic function and convention to trigger deprecation notices",
+            "homepage": "https://symfony.com",
+            "support": {
+                "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-03-23T23:28:01+00:00"
+        },
+        {
+            "name": "symfony/polyfill-mbstring",
+            "version": "v1.23.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/polyfill-mbstring.git",
+                "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9174a3d80210dca8daa7f31fec659150bbeabfc6",
+                "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "suggest": {
+                "ext-mbstring": "For best performance"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "1.23-dev"
+                },
+                "thanks": {
+                    "name": "symfony/polyfill",
+                    "url": "https://github.com/symfony/polyfill"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Polyfill\\Mbstring\\": ""
+                },
+                "files": [
+                    "bootstrap.php"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Symfony polyfill for the Mbstring extension",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "compatibility",
+                "mbstring",
+                "polyfill",
+                "portable",
+                "shim"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.1"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-05-27T12:26:48+00:00"
+        },
+        {
+            "name": "symfony/polyfill-php80",
+            "version": "v1.23.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/polyfill-php80.git",
+                "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/1100343ed1a92e3a38f9ae122fc0eb21602547be",
+                "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "1.23-dev"
+                },
+                "thanks": {
+                    "name": "symfony/polyfill",
+                    "url": "https://github.com/symfony/polyfill"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Polyfill\\Php80\\": ""
+                },
+                "files": [
+                    "bootstrap.php"
+                ],
+                "classmap": [
+                    "Resources/stubs"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Ion Bazan",
+                    "email": "ion.bazan@gmail.com"
+                },
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "compatibility",
+                "polyfill",
+                "portable",
+                "shim"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.1"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-07-28T13:41:28+00:00"
+        },
+        {
+            "name": "symfony/translation",
+            "version": "v5.3.4",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/translation.git",
+                "reference": "d89ad7292932c2699cbe4af98d72c5c6bbc504c1"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/translation/zipball/d89ad7292932c2699cbe4af98d72c5c6bbc504c1",
+                "reference": "d89ad7292932c2699cbe4af98d72c5c6bbc504c1",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5",
+                "symfony/deprecation-contracts": "^2.1",
+                "symfony/polyfill-mbstring": "~1.0",
+                "symfony/polyfill-php80": "^1.16",
+                "symfony/translation-contracts": "^2.3"
+            },
+            "conflict": {
+                "symfony/config": "<4.4",
+                "symfony/dependency-injection": "<5.0",
+                "symfony/http-kernel": "<5.0",
+                "symfony/twig-bundle": "<5.0",
+                "symfony/yaml": "<4.4"
+            },
+            "provide": {
+                "symfony/translation-implementation": "2.3"
+            },
+            "require-dev": {
+                "psr/log": "^1|^2|^3",
+                "symfony/config": "^4.4|^5.0",
+                "symfony/console": "^4.4|^5.0",
+                "symfony/dependency-injection": "^5.0",
+                "symfony/finder": "^4.4|^5.0",
+                "symfony/http-kernel": "^5.0",
+                "symfony/intl": "^4.4|^5.0",
+                "symfony/polyfill-intl-icu": "^1.21",
+                "symfony/service-contracts": "^1.1.2|^2",
+                "symfony/yaml": "^4.4|^5.0"
+            },
+            "suggest": {
+                "psr/log-implementation": "To use logging capability in translator",
+                "symfony/config": "",
+                "symfony/yaml": ""
+            },
+            "type": "library",
+            "autoload": {
+                "files": [
+                    "Resources/functions.php"
+                ],
+                "psr-4": {
+                    "Symfony\\Component\\Translation\\": ""
+                },
+                "exclude-from-classmap": [
+                    "/Tests/"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Provides tools to internationalize your application",
+            "homepage": "https://symfony.com",
+            "support": {
+                "source": "https://github.com/symfony/translation/tree/v5.3.4"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-07-25T09:39:16+00:00"
+        },
+        {
+            "name": "symfony/translation-contracts",
+            "version": "v2.4.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/translation-contracts.git",
+                "reference": "95c812666f3e91db75385749fe219c5e494c7f95"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95",
+                "reference": "95c812666f3e91db75385749fe219c5e494c7f95",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5"
+            },
+            "suggest": {
+                "symfony/translation-implementation": ""
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "2.4-dev"
+                },
+                "thanks": {
+                    "name": "symfony/contracts",
+                    "url": "https://github.com/symfony/contracts"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Contracts\\Translation\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Generic abstractions related to translation",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "abstractions",
+                "contracts",
+                "decoupling",
+                "interfaces",
+                "interoperability",
+                "standards"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/translation-contracts/tree/v2.4.0"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-03-23T23:28:01+00:00"
+        },
+        {
+            "name": "symfony/var-dumper",
+            "version": "v5.3.6",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/var-dumper.git",
+                "reference": "3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0",
+                "reference": "3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5",
+                "symfony/polyfill-mbstring": "~1.0",
+                "symfony/polyfill-php80": "^1.16"
+            },
+            "conflict": {
+                "phpunit/phpunit": "<5.4.3",
+                "symfony/console": "<4.4"
+            },
+            "require-dev": {
+                "ext-iconv": "*",
+                "symfony/console": "^4.4|^5.0",
+                "symfony/process": "^4.4|^5.0",
+                "twig/twig": "^2.13|^3.0.4"
+            },
+            "suggest": {
+                "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
+                "ext-intl": "To show region name in time zone dump",
+                "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
+            },
+            "bin": [
+                "Resources/bin/var-dump-server"
+            ],
+            "type": "library",
+            "autoload": {
+                "files": [
+                    "Resources/functions/dump.php"
+                ],
+                "psr-4": {
+                    "Symfony\\Component\\VarDumper\\": ""
+                },
+                "exclude-from-classmap": [
+                    "/Tests/"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Provides mechanisms for walking through any arbitrary PHP variable",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "debug",
+                "dump"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/var-dumper/tree/v5.3.6"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2021-07-27T01:56:02+00:00"
+        },
+        {
+            "name": "tightenco/collect",
+            "version": "v8.34.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/tighten/collect.git",
+                "reference": "b069783ab0c547bb894ebcf8e7f6024bb401f9d2"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/tighten/collect/zipball/b069783ab0c547bb894ebcf8e7f6024bb401f9d2",
+                "reference": "b069783ab0c547bb894ebcf8e7f6024bb401f9d2",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^7.2|^8.0",
+                "symfony/var-dumper": "^3.4 || ^4.0 || ^5.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^1.0",
+                "nesbot/carbon": "^2.23.0",
+                "phpunit/phpunit": "^8.3"
+            },
+            "type": "library",
+            "autoload": {
+                "files": [
+                    "src/Collect/Support/helpers.php",
+                    "src/Collect/Support/alias.php"
+                ],
+                "psr-4": {
+                    "Tightenco\\Collect\\": "src/Collect"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylorotwell@gmail.com"
+                }
+            ],
+            "description": "Collect - Illuminate Collections as a separate package.",
+            "keywords": [
+                "collection",
+                "laravel"
+            ],
+            "support": {
+                "issues": "https://github.com/tighten/collect/issues",
+                "source": "https://github.com/tighten/collect/tree/v8.34.0"
+            },
+            "time": "2021-03-29T21:29:00+00:00"
+        },
+        {
             "name": "yubico/u2flib-server",
             "version": "1.0.2",
             "source": {
@@ -695,5 +1624,5 @@
     "prefer-lowest": false,
     "platform": [],
     "platform-dev": [],
-    "plugin-api-version": "2.0.0"
+    "plugin-api-version": "2.1.0"
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.execute.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.execute.xml
new file mode 100644
index 0000000..bce1ea9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.execute.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' standalone='yes'?>
+
+<extension name="vnd.dovecot.execute">
+
+	<test name="execute">
+		<parameter type="tag" name="pipe" regex="pipe" occurrence="optional"/>
+		<parameter type="string" name="program-name"/>
+		<parameter type="stringlist" name="arguments" occurrence="optional"/>
+	</test>
+
+	<command name="execute">
+		<parameter type="tag" name="pipe" regex="pipe" occurrence="optional"/>
+		<parameter type="string" name="program-name"/>
+		<parameter type="stringlist" name="arguments" occurrence="optional"/>
+	</command>
+	
+</extension>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.filter.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.filter.xml
new file mode 100644
index 0000000..45bf236
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.filter.xml
@@ -0,0 +1,15 @@
+<?xml version='1.0' standalone='yes'?>
+
+<extension name="vnd.dovecot.filter">
+
+	<test name="filter">
+		<parameter type="string" name="program-name"/>
+		<parameter type="stringlist" name="arguments" occurrence="optional"/>
+	</test>
+
+	<command name="filter">
+		<parameter type="string" name="program-name"/>
+		<parameter type="stringlist" name="arguments" occurrence="optional"/>
+	</command>
+
+</extension>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.pipe.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.pipe.xml
new file mode 100644
index 0000000..6bbcfc3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/sieve/extensions/vnd.dovecot.pipe.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' standalone='yes'?>
+
+<extension name="vnd.dovecot.pipe">
+
+	<command name="pipe">
+		<parameter type="tag" name="try" regex="try" occurrence="optional"/>
+		<parameter type="string" name="program-name"/>
+		<parameter type="stringlist" name="arguments" occurrence="optional"/>
+	</command>
+	
+</extension>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitattributes b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitattributes
new file mode 100644
index 0000000..84b904d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitattributes
@@ -0,0 +1,2 @@
+examples/ export-ignore
+tests/ export-ignore
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.github/issue_template.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.github/issue_template.md
new file mode 100644
index 0000000..f9aba6b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.github/issue_template.md
@@ -0,0 +1,10 @@
+- Adldap2 Version: #.#
+- LDAP Type: <!-- Active Directory / OpenLDAP / FreeIPA / Sun Directory Server? -->
+- PHP Version: #.#
+
+<!-- **ISSUES WITHOUT THE ABOVE INFORMATION WILL BE CLOSED!** -->
+
+### Description:
+
+
+### Steps To Reproduce:
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitignore
new file mode 100644
index 0000000..2130d09
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.gitignore
@@ -0,0 +1,3 @@
+/.idea
+/vendor
+composer.lock
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.scrutinizer.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.scrutinizer.yml
new file mode 100644
index 0000000..9dbf8c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.scrutinizer.yml
@@ -0,0 +1,10 @@
+filter:
+    excluded_paths:
+        - tests/*
+        - src/Schemas/*
+build:
+    nodes:
+        analysis:
+            tests:
+                override:
+                    - command: php-scrutinizer-run
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.styleci.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.styleci.yml
new file mode 100644
index 0000000..8be488d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.styleci.yml
@@ -0,0 +1,7 @@
+preset: recommended
+
+enabled:
+  - length_ordered_imports
+
+disabled:
+  - alpha_ordered_imports
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.travis.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.travis.yml
new file mode 100644
index 0000000..2723d68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/.travis.yml
@@ -0,0 +1,19 @@
+language: php
+
+php:
+  - 7.1
+  - 7.2
+  - 7.3
+  - 7.4
+
+before_script:
+  - travis_retry composer self-update
+  - travis_retry composer install --prefer-source --no-interaction
+
+script: ./vendor/bin/phpunit
+
+branches:
+  only:
+    - master
+    - v9.0
+    - v8.0
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/composer.json
new file mode 100644
index 0000000..26c1534
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/composer.json
@@ -0,0 +1,57 @@
+{
+    "name": "adldap2/adldap2",
+    "type": "library",
+    "description": "A PHP LDAP Package for humans.",
+    "keywords": [
+        "active directory",
+        "directory",
+        "ad",
+        "ldap",
+        "windows",
+        "adldap",
+        "adldap2"
+    ],
+    "license": "MIT",
+    "support": {
+        "docs": "https://github.com/Adldap2/Adldap2/blob/master/readme.md",
+        "issues": "https://github.com/Adldap2/Adldap2/issues",
+        "source": "https://github.com/Adldap2/Adldap2",
+        "email": "steven_bauman@outlook.com"
+    },
+    "authors": [
+        {
+            "name": "Steve Bauman",
+            "email": "steven_bauman@outlook.com",
+            "role": "Developer"
+        }
+    ],
+    "require": {
+        "php": ">=7.0",
+        "ext-ldap": "*",
+        "ext-json": "*",
+        "psr/log": "~1.0",
+        "psr/simple-cache": "~1.0",
+        "tightenco/collect": "~5.0|~6.0|~7.0|~8.0",
+        "illuminate/contracts": "~5.0|~6.0|~7.0|~8.0"
+    },
+    "require-dev": {
+        "phpunit/phpunit": "~6.0|~7.0|~8.0",
+        "mockery/mockery": "~1.0"
+    },
+    "suggest": {
+        "ext-fileinfo": "fileinfo is required when retrieving user encoded thumbnails"
+    },
+    "archive": {
+        "exclude": ["/examples", "/tests"]
+    },
+    "autoload": {
+        "psr-4": {
+            "Adldap\\": "src/"
+        }
+    },
+    "autoload-dev": {
+        "psr-4": {
+            "Adldap\\Tests\\": "tests/"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml.tmppica b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/.nojekyll
similarity index 100%
rename from mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml.tmppica
rename to mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/.nojekyll
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_coverpage.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_coverpage.md
new file mode 100644
index 0000000..fc8ec0b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_coverpage.md
@@ -0,0 +1,16 @@
+<!-- _coverpage.md -->
+
+# Adldap2
+
+<p align="center">
+    <a href="https://travis-ci.org/Adldap2/Adldap2"><img src="https://img.shields.io/travis/Adldap2/Adldap2.svg?style=flat-square"/></a>
+    <a href="https://scrutinizer-ci.com/g/Adldap2/Adldap2/?branch=master"><img src="https://img.shields.io/scrutinizer/g/adLDAP2/adLDAP2/master.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/dt/adldap2/adldap2.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/v/adldap2/adldap2.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/l/adldap2/adldap2.svg?style=flat-square"/></a>
+</p>
+
+> Working with LDAP doesn't need to be hard.
+
+<!-- background image -->
+![](media/bg.svg)
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_sidebar.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_sidebar.md
new file mode 100644
index 0000000..0284653
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/_sidebar.md
@@ -0,0 +1,27 @@
+<!-- _sidebar.md -->
+
+* Getting Started
+
+  * [Introduction](/)
+  * [Installation](installation.md)
+  * [Setup](setup.md)
+
+* Usage
+
+  * [Searching](searching.md)
+  * [Creating & Updating](models/model.md)
+  * [Events](events.md)
+  * [Logging](logging.md)
+  * [Working With Distiguished Names](distinguished-names.md)
+  * [Troubleshooting](troubleshooting.md)
+
+* Models
+  * [Model (Base)](models/model.md)
+  * [Computer](models/computer.md)
+  * [Contact](models/contact.md)
+  * [Container](models/container.md)
+  * [Group](models/group.md)
+  * [Organizational Unit](models/ou.md)
+  * [Printer](models/printer.md)
+  * [RootDse](models/root-dse.md)
+  * [User](models/user.md)
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/distinguished-names.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/distinguished-names.md
new file mode 100644
index 0000000..490b99b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/distinguished-names.md
@@ -0,0 +1,167 @@
+## Working With Distinguished Names
+
+Working with DN strings are a pain, but they're about to get easier. Adldap includes a DN builder for easily modifying and
+creating DN strings.
+
+> **Note**: All values inserted into DN methods are escaped. You do not need to escape **any** values before hand.
+
+#### Creating a New DN
+
+To create a new DN, construct a new `Adldap\Models\Attributes\DistinguishedName` instance:
+
+```php
+$dn = new Adldap\Models\Attributes\DistinguishedName();
+```
+    
+You can also pass in a current DN string and start modifying it:
+
+```php
+$currentDn = 'cn=John Doe,ou=Accounting,dc=corp,dc=acme,dc=org';
+
+$dn = new Adldap\Models\Attributes\DistinguishedName($currentDn);
+```
+    
+#### Adding / Removing a Domain Component
+
+```php
+// Add Domain Component
+$dn->addDc('corp');
+
+// Remove Domain Component
+$dn->removeDc('corp');
+```
+
+#### Adding / Removing an Organizational Unit
+
+```php
+// Add Organizational Unit
+$dn->addOu('Accounting');
+    
+// Remove Organizational Unit
+$dn->removeOu('Accounting');
+```
+
+#### Adding / Removing Common Names
+
+```php
+// Add Common Name
+$dn->addCn('John Doe');
+    
+// Remove Common Name
+$dn->removeCn('John Doe');   
+```
+
+#### Setting a base
+
+If you'd like to set the base DN, such as a domain component RDN, use the `setBase()` method:
+
+```php
+$base = 'dc=corp,dc=acme,dc=org';
+
+$dn->setBase($base);
+```
+
+#### Creating a DN From A Model
+
+When you're creating a new LDAP record, you'll need to create a distinguished name as well. Let's go through an example of
+creating a new user.
+
+```php
+$user = $provider->make()->user();
+
+$user->setCommonName('John Doe');
+$user->setFirstName('John');
+$user->setLastName('Doe');
+```
+
+So we've set the basic information on the user, but we run into trouble when we want to put the user into a certain container
+(such as 'Accounting') which is done through the DN. Let's go through this example:
+
+```php
+$dn = $user->getDnBuilder();
+
+$dn->addCn($user->getCommonName());
+$dn->addOu('Accounting');
+$dn->addDc('corp');
+$dn->addDc('acme');
+$dn->addDc('org');
+
+// Returns 'cn=John Doe,ou=Accounting,dc=corp,dc=acme,dc=org'
+echo $dn->get();
+
+// The DistinguishedName object also contains the __toString() magic method
+// so you can also just echo the object itself
+echo $dn;
+```
+    
+Now we've built a DN, and all we have to do is set it on the new user:    
+
+```php
+$user->setDn($dn);
+
+$user->save();
+```
+
+#### Modifying a DN From A Model
+
+When you've received a model from a search result, you can build and modify the models DN like so:
+
+```php
+$user = $ad->users()->find('jdoe');
+
+$dn = $user->getDnBuilder();
+
+$dn->addOu('Users');
+
+$user->setDn($dn)->save();
+```
+
+#### Retrieving the RDN components
+
+To retrieve all of the RDN components of a Distinguished Name, call `getComponents()`:
+
+```php
+$dn = new Adldap\Models\Attributes\DistinguishedName(
+    'cn=John Doe,ou=Accounting,dc=corp,dc=acme,dc=org'
+);
+
+$components = $dn->getComponents();
+
+var_dump($components);
+
+// Output:
+// array:5 [▼
+//   "cn" => array:1 [▼
+//     0 => "John Doe"
+//   ]
+//   "uid" => []
+//   "ou" => array:1 [▼
+//     0 => "Accounting"
+//   ]
+//   "dc" => array:3 [▼
+//     0 => "corp"
+//     1 => "acme"
+//     2 => "org"
+//   ]
+//   "o" => []
+// ]
+```
+
+You can also specify a component you would like returned by supplying it as an argument:
+
+```php
+$dn = new Adldap\Models\Attributes\DistinguishedName(
+    'cn=John Doe,ou=Accounting,dc=corp,dc=acme,dc=org'
+);
+
+$dcs = $dn->getComponents('dc');
+
+var_dump($dcs);
+
+// Output:
+// array:3 [▼
+//   0 => "corp"
+//   1 => "acme"
+//   2 => "org"
+// ]
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/events.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/events.md
new file mode 100644
index 0000000..8175695
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/events.md
@@ -0,0 +1,175 @@
+# Events
+
+Adldap2 events provide a method of listening for certain LDAP actions
+that are called and execute tasks for that specific event.
+
+> **Note**: The Adldap2 event dispatcher was actually derived from the
+> [Laravel Framework](https://github.com/laravel/framework) with
+> Broadcasting & Queuing omitted to remove extra dependencies
+> that would be required with implementing those features.
+>
+> If you've utilized Laravel's events before, this will feel very familiar.
+
+## Registering Listeners
+
+> **Note**: Before we get to registering listeners, it's crucial to know that events throughout
+> Adldap2 are fired irrespective of the current connection or provider in use.
+>
+> This means that when using multiple LDAP connections, the same events will be fired.
+> 
+> This allows you to set listeners on events that occur for all LDAP connections you utilize.
+>
+> If you are required to determine which events are fired from alternate connections, see [below](#determining-the-connection).
+
+To register a listener on an event, retrieve the event dispatcher and call the `listen()` method:
+
+```php
+use Adldap\Auth\Events\Binding;
+
+$dispatcher = \Adldap\Adldap::getEventDispatcher();
+
+$dispatcher->listen(Binding::class, function (Binding $event) {
+    // Do something with the Binding event information:
+    
+    $event->connection; // Adldap\Connections\Ldap instance
+    $event->username; // 'jdoe@acme.org'
+    $event->password; // 'super-secret'
+});
+```
+
+The first argument is the event name you would like to listen for, and the
+second is either a closure or class name that should handle the event:
+
+Using a class:
+
+> **Note**: When using just a class name, the class must contain a public `handle()` method that will handle the event.
+
+```php
+use Adldap\Adldap;
+use Adldap\Auth\Events\Binding;
+
+$dispatcher = Adldap::getEventDispatcher();
+
+$dispatcher->listen(Binding::class, MyApp\BindingEventHandler::class);
+```
+
+```php
+namespace MyApp;
+
+use Adldap\Auth\Events\Binding;
+
+class BindingEventHandler
+{
+    public function handle(Binding $event)
+    {
+        // Handle the event...
+    }
+}
+```
+
+## Model Events
+
+Model events are handled the same way as authentication events.
+
+Simply call the event dispatcher `listen()` method with the model event you are wanting to listen for:
+
+```php
+use Adldap\Models\Events\Saving;
+
+$dispatcher = \Adldap\Adldap::getEventDispatcher();
+
+$dispatcher->listen(Saving::class, function (Saving $event) {
+    // Do something with the Saving event information:
+    
+    // Returns the model instance being saved eg. `Adldap\Models\Entry`
+    $event->getModel();
+});
+```
+
+## Wildcard Event Listeners
+
+You can register listeners using the `*` as a wildcard parameter to catch multiple events with the same listener.
+
+Wildcard listeners will receive the event name as their first argument, and the entire event data array as their second argument:
+
+```php
+$dispatcher = Adldap::getEventDispatcher();
+
+// Listen for all model events.
+$dispatcher->listen('Adldap\Models\Events\*', function ($eventName, array $data) {
+    echo $eventName; // Returns 'Adldap\Models\Events\Updating'
+    var_dump($data); // Returns [0] => (object) Adldap\Models\Events\Updating;
+});
+
+$user = $provider->search()->users()->find('jdoe');
+
+$user->setTelephoneNumber('555 555-5555');
+
+$user->save();
+```
+
+## Determining the Connection
+
+If you're using multiple LDAP connections and you require the ability to determine which events belong
+to a certain connection, you can do so by verifying the host of the LDAP connection.
+
+Here's an example:
+
+```php
+$dispatcher = Adldap::getEventDispatcher();
+
+$dispatcher->listen(\Adldap\Models\Events\Creating::class, function ($event) {
+    $connection = $event->model->getConnection();
+    
+    $host = $connection->getHost();
+    
+    echo $host; // Displays 'ldap://192.168.1.1:386'
+});
+```
+
+Another example with auth events:
+
+```php
+$dispatcher = Adldap::getEventDispatcher();
+
+$dispatcher->listen(\Adldap\Auth\Events\Binding::class, function ($event) {
+    $connection = $event->connection;
+    
+    $host = $connection->getHost();
+    
+    echo $host; // Displays 'ldap://192.168.1.1:386'
+});
+```
+
+## List of Events
+
+### Authentication Events
+
+There are several events that are fired during initial and subsequent binds to your configured LDAP server.
+
+Here is a list of all events that are fired:
+
+| Event| Description |
+|---|---|
+| Adldap\Auth\Events\Attempting | When any authentication attempt is called via: `$provider->auth()->attempt()` |
+| Adldap\Auth\Events\Passed | When any authentication attempts pass via: `$provider->auth()->attempt()` |
+| Adldap\Auth\Events\Failed | When any authentication attempts fail via: `$provider->auth()->attempt()` *Or* `$provider->auth()->bind()` |
+| Adldap\Auth\Events\Binding | When any LDAP bind attempts occur via: `$provider->auth()->attempt()` *Or* `$provider->auth()->bind()` |
+| Adldap\Auth\Events\Bound | When any LDAP bind attempts are successful via: `$provider->auth()->attempt()` *Or* `$provider->auth()->bind()` |
+
+### Model Events
+
+There are several events that are fired during the creation, updating and deleting of all models.
+
+Here is a list of all events that are fired:
+
+| Event | Description |
+|---|---|
+| Adldap\Models\Events\Saving | When a model is in the process of being saved via: `$model->save()` |
+| Adldap\Models\Events\Saved | When a model has been successfully saved via: `$model->save()` |
+| Adldap\Models\Events\Creating | When a model is being created via: `$model->save()` *Or* `$model->create()` |
+| Adldap\Models\Events\Created | When a model has been successfully created via: `$model->save()` *Or* `$model->create()` |
+| Adldap\Models\Events\Updating | When a model is being updated via: `$model->save()` *Or* `$model->update()` |
+| Adldap\Models\Events\Updated | When a model has been successfully updated via: `$model->save()` *Or* `$model->update()` |
+| Adldap\Models\Events\Deleting | When a model is being deleted via: `$model->delete()` |
+| Adldap\Models\Events\Deleted | When a model has been successfully deleted via: `$model->delete()` |
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/index.html b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/index.html
new file mode 100644
index 0000000..adf939b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/index.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html lang="en">
+    <head>
+        <meta charset="UTF-8">
+        <title>Adldap2 Documentation</title>
+        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
+        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+        <meta name="description" content="Adldap2 Documentation">
+        <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+        <link rel="stylesheet" href="https://unpkg.com/docsify/lib/themes/vue.css">
+    </head>
+
+    <body>
+        <div id="app"></div>
+
+        <script>
+            window.$docsify = {
+                name: 'Adldap2',
+                repo: 'https://github.com/Adldap2/Adldap2',
+                autoHeader: true,
+                auto2top: true,
+                homepage: 'readme.md',
+                coverpage: true,
+                search: 'auto',
+                loadSidebar: true,
+                subMaxLevel: 3
+            }
+        </script>
+        
+
+        <script src="https://unpkg.com/docsify/lib/docsify.min.js"></script>
+        <script src="https://unpkg.com/prismjs/components/prism-php.min.js"></script>
+        <script src="https://unpkg.com/docsify/lib/plugins/search.min.js"></script>
+    </body>
+</html>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/installation.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/installation.md
new file mode 100644
index 0000000..de21239
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/installation.md
@@ -0,0 +1,29 @@
+# Requirements
+
+Adldap2 requires the following:
+
+- PHP 7.0 or greater
+- LDAP extension enabled in PHP
+- An LDAP server (ActiveDirectory, OpenLDAP, FreeIPA etc.)
+
+# Composer
+
+Adldap2 uses [Composer](https://getcomposer.org) for installation.
+
+Once you have composer installed, run the following command in the root directory of your project:
+
+```bash
+composer require adldap2/adldap2
+```
+
+Then, if your application doesn't already require Composer's autoload, you will need to do it manually.
+
+Insert this line at the top of your projects PHP script (usually `index.php`):
+
+```php
+require __DIR__ . '/vendor/autoload.php';
+```
+
+You're all set!
+
+Now, head over to the [setup guide](setup.md) to get up and running.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/logging.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/logging.md
new file mode 100644
index 0000000..b49bcd3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/logging.md
@@ -0,0 +1,74 @@
+# Logging
+
+Adldap2 includes an implementation of PSR's widely supported [Logger](https://github.com/php-fig/log) interface.
+
+By default, all of Adldap2's [events](events.md) will call the logger you have set to utilize.
+
+> **Note**: Adldap2 does not include a file / text logger. You must implement your own.
+
+## Registering & Enabling a Logger
+
+To register a logger call `Adldap::setLogger()`. The logger must implement the `Psr\Log\LoggerInterface`.
+
+>**Note**: Be sure to set the logger prior to creating a new `Adldap` instance. This
+> ensures all events throughout the lifecycle of the request use your logger.
+
+```php
+use Adldap\Adldap;
+
+Adldap::setLogger($myLogger);
+
+$config = ['...'];
+
+$ad = new Adldap();
+
+$ad->addProvider($config);
+```
+
+## Disabling Logging
+
+If you need to disable the event logger after a certain set of operations, simply pass in `null` and logging will be disabled:
+
+```php
+use Adldap\Adldap;
+
+Adldap::setLogger($myLogger);
+
+$config = ['...'];
+
+$ad = new Adldap();
+
+$ad->addProvider($config);
+
+try {
+    $ad->connect();
+    
+    // Disable logging anything else.
+    Adldap::setLogger(null);
+} catch (\Adldap\Connections\BindException $e) {
+    //
+}
+```
+
+## Logged Information
+
+Here is a list of events that are logged along with the information included:
+
+| Authentication Events | Logged |
+|---|---|
+| `Adldap\Auth\Events\Attempting` | `LDAP (ldap://192.168.1.1:389) - Operation: Adldap\Auth\Events\Attempting - Username: CN=Steve Bauman,OU=Users,DC=corp,DC=acme,DC=org` | 
+| `Adldap\Auth\Events\Binding` |` LDAP (ldap://192.168.1.1:389) - Operation: Adldap\Auth\Events\Binding - Username: CN=Steve Bauman,OU=Users,DC=corp,DC=acme,DC=org` | 
+| `Adldap\Auth\Events\Bound` | `LDAP (ldap://192.168.1.1:389) - Operation: Adldap\Auth\Events\Bound - Username: CN=Steve Bauman,OU=Users,DC=corp,DC=acme,DC=org` | 
+| `Adldap\Auth\Events\Passed` | `LDAP (ldap://192.168.1.1:389) - Operation: Adldap\Auth\Events\Passed - Username: CN=Steve Bauman,OU=Users,DC=corp,DC=acme,DC=org` | 
+| `Adldap\Auth\Events\Failed` | `LDAP (ldap://192.168.1.1:389) - Operation: Adldap\Auth\Events\Failed - Username: CN=Steve Bauman,OU=Users,DC=corp,DC=acme,DC=org - Result: Invalid Credentials` |
+
+| Model Events | Logged |
+|---|---|
+| `Adldap\Models\Events\Saving` | `LDAP (ldap://192.168.1.1:389) - Operation: Saving - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Saved` | `LDAP (ldap://192.168.1.1:389) - Operation: Saved - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Creating` | `LDAP (ldap://192.168.1.1:389) - Operation: Creating - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Created` | `LDAP (ldap://192.168.1.1:389) - Operation: Created - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Updating` | `LDAP (ldap://192.168.1.1:389) - Operation: Updating - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Updated` | `LDAP (ldap://192.168.1.1:389) - Operation: Updated - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Deleting` | `LDAP (ldap://192.168.1.1:389) - Operation: Deleting - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
+| `Adldap\Models\Events\Deleted` | `LDAP (ldap://192.168.1.1:389) - Operation: Deleted - On: Adldap\Models\User - Distinguished Name: cn=John Doe,dc=acme,dc=org` | 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/media/bg.svg b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/media/bg.svg
new file mode 100644
index 0000000..e70e863
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/media/bg.svg
@@ -0,0 +1 @@
+﻿<svg xmlns='http://www.w3.org/2000/svg' width='100%' height='100%' viewBox='0 0 1600 800'><rect fill='#46ff55' width='1600' height='800'/><g ><path fill='#51ff76' d='M486 705.8c-109.3-21.8-223.4-32.2-335.3-19.4C99.5 692.1 49 703 0 719.8V800h843.8c-115.9-33.2-230.8-68.1-347.6-92.2C492.8 707.1 489.4 706.5 486 705.8z'/><path fill='#57ff94' d='M1600 0H0v719.8c49-16.8 99.5-27.8 150.7-33.5c111.9-12.7 226-2.4 335.3 19.4c3.4 0.7 6.8 1.4 10.2 2c116.8 24 231.7 59 347.6 92.2H1600V0z'/><path fill='#5affb1' d='M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z'/><path fill='#57ffcd' d='M0 0v429.4c55.6-18.4 113.5-27.3 171.4-27.7c102.8-0.8 203.2 22.7 299.3 54.5c3 1 5.9 2 8.9 3c183.6 62 365.7 146.1 562.4 192.1c186.7 43.7 376.3 34.4 557.9-12.6V0H0z'/><path fill='#50ffe8' d='M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z'/><path fill='#7dffe9' d='M1600 0H0v136.3c62.3-20.9 127.7-27.5 192.2-19.2c93.6 12.1 180.5 47.7 263.3 89.6c2.6 1.3 5.1 2.6 7.7 3.9c158.4 81.1 319.7 170.9 500.3 223.2c210.5 61 430.8 49 636.6-16.6V0z'/><path fill='#9effe9' d='M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z'/><path fill='#baffea' d='M1600 0H498c118.1 85.8 243.5 164.5 386.8 216.2c191.8 69.2 400 74.7 595 21.1c40.8-11.2 81.1-25.2 120.3-41.7V0z'/><path fill='#d2ffea' d='M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z'/><path fill='#e9ffeb' d='M1315.3 72.4c75.3-12.6 148.9-37.1 216.8-72.4h-723C966.8 71 1144.7 101 1315.3 72.4z'/></g></svg>
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/computer.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/computer.md
new file mode 100644
index 0000000..e3057ab
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/computer.md
@@ -0,0 +1,32 @@
+# The Computer Model
+
+> **Note**: This model contains the traits `HasDescription`, `HasLastLogonAndLogOff` & `HasCriticalSystemObject`.
+> For more information, visit the documentation:
+>
+> [HasDescription](/models/traits/has-description.md),
+> [HasLastLogonAndLogOff](/models/traits/has-last-login-last-logoff.md),
+> [HasCriticalSystemObject](/models/traits/has-critical-system-object.md)
+
+## Methods
+
+```php
+$computer = $provider->search()->computers()->find('ACME-EXCHANGE');
+
+// Returns 'Windows Server 2003'
+$computer->getOperatingSystem();
+
+// Returns '5.2 (3790)';
+$computer->getOperatingSystemVersion();
+
+// Returns 'Service Pack 1';
+$computer->getOperatingSystemServicePack();
+
+// Returns 'ACME-DESKTOP001.corp.acme.org'
+$computer->getDnsHostName();
+
+$computer->getLastLogOff();
+
+$computer->getLastLogon();
+
+$computer->getLastLogonTimestamp();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/contact.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/contact.md
new file mode 100644
index 0000000..e42c8f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/contact.md
@@ -0,0 +1,13 @@
+# The Contact Model
+
+The Contact model extends from the base `Adldap\Models\Model` class and contains
+no specific methods / attributes that are limited to it.
+
+## Creation
+
+```php
+// Adldap\Models\Contact
+$contact = $provider->make()->contact([
+    'cn' => 'Suzy Doe',
+]);
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/container.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/container.md
new file mode 100644
index 0000000..132b549
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/container.md
@@ -0,0 +1,24 @@
+# The Container Model
+
+> **Note**: This model contains the trait `HasDescription` & `HasCriticalSystemObject`.
+> For more information, visit the documentation:
+> 
+> [HasDescription](/models/traits/has-description.md),
+> [HasCriticalSystemObject](/models/traits/has-critical-system-object.md),
+
+## Creation
+
+```php
+// Adldap\Models\Container
+$container = $provider->make()->container([
+    'cn' => 'VPN Users',
+]);
+```
+
+## Methods
+
+The `Container` model contains only one unique method.
+
+```php
+$flags = $container->getSystemFlags();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/group.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/group.md
new file mode 100644
index 0000000..cf7c6d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/group.md
@@ -0,0 +1,253 @@
+# The Group Model
+
+> **Note**: This model contains the trait `HasMemberOf`.
+> For more information, visit the documentation:
+>
+> [HasMemberOf](/models/traits/has-member-of.md)
+
+## Creation
+
+```php
+// Adldap\Models\Group
+$group = $provider->make()->group([
+    'cn' => 'Managers',
+]);
+
+// Create group's DN through the DN Builder:
+$group = $provider->make()->group();
+
+$dn = $group->getDnBuilder();
+
+$dn->addOu('Workstation Computers');
+
+$dn->addCn("Managers");
+
+$group->setDn($dn);
+
+// Or set the DN manually:
+$ou->setDn('cn=Managers,ou=Workstation Computers,dc=test,dc=local,dc=com');
+
+$group->save();
+```
+
+## Getting a groups members
+
+When you receive a `Group` model instance, it will contain a `member`
+attribute which contains the distinguished names of all
+the members inside the group.
+
+```php
+$group = $provider->search()->groups()->first();
+
+foreach ($group->members as $member) {
+    echo $member; // 'cn=John Doe,dc=corp,dc=acme,dc=org'
+}
+```
+
+But this might not be useful, since we might actually want the models for each member.
+
+This can be easily done with the `getMembers()` method on the group.
+
+```php
+$group = $provider->search()->groups()->first();
+
+foreach ($group->getMembers() as $member) {
+    echo get_class($member); // Instance of `Adldap\Models\Model`
+
+    echo $member->getCommonName();
+}
+```
+
+> **Note**: You should be aware however, that calling the `getMembers()` method will
+> query your `AD` server for **every** member contained in the group to retrieve
+> its model. For larger group sets it may be worth paginating them.
+
+
+### Paginating Group Members
+
+The group you're looking for might contain hundreds / thousands of members.
+
+In this case, your server might only return you a portion of the groups members.
+
+To get around this limit, you need to ask your server to paginate the groups members through a select:
+
+```php
+$group = $provider->search()->groups()->select('member;range=0-500')->first();
+
+foreach ($group->members as $member) {
+    // We'll only have 500 members in this query.
+}
+```
+
+Now, when we have the group instance, we'll only have the first `500` members inside this group.
+However, calling the `getMembers()` method will automatically retrieve the rest of the members for you:
+
+```php
+$group = $provider->search()->groups()->select('member;range=0-500')->first();
+
+foreach ($group->getMembers() as $member) {
+    // Adldap will automatically retrieve the next 500
+    // records until it's retrieved all records.
+    $member->getCommonName();
+}
+```
+
+> **Note**: Groups containing large amounts of users (1000+) will require
+> more memory assigned to PHP. Your mileage will vary.
+
+#### Paginating large sets of Group Members
+
+When requesting group members from groups that contain a large amount of members
+(typically over 1000), you may receive PHP memory limit errors due to
+the large amount of the objects being created in the request.
+
+To resolve this, you will need to retrieve the members manually. However using
+this route you will only be able to retrieve the members distinguished names.
+
+```php
+$from = 0;
+$to = 500;
+$range = "member;range=$from-$to";
+
+// Retrieve the group.
+$group = $provider->search()->select($range)->raw()->find('Accounting');
+
+// Remove the count from the member array.
+unset($group[$range]['count']);
+
+// The array of group members distinguished names.
+$members = $group[$range];
+
+foreach ($members as $member) {
+    echo $member; // 'cn=John Doe,dc=acme,dc=org'
+}
+```
+
+You can then encapsulate the above example into a recursive function to retrieve the remaining group members.
+
+## Getting only a groups member names
+
+To retrieve only the names of the members contained in a group, call the `getMemberNames()` method:
+
+```php
+foreach ($group->getMemberNames() as $name) {
+    // Returns 'John Doe' 
+    echo $name;
+}
+```
+
+> **Note**: This method does not query your server for each member to retrieve its name. It
+> only parses the distinguished names from the groups `member` attribute. This means that
+> if you have paginated group members, you will need to perform another query yourself
+> to retrieve the rest of the member names (or just call the `getMembers()` method).
+
+## Setting Group Members
+
+To set members that are apart of the group, you can perform this in two ways:
+
+> **Note**: Remember, this will remove **all** pre-existing members, and set the new given members on the group.
+
+```php
+$members = [
+    'cn=John Doe,dc=corp,dc=acme,dc=org',
+    'cn=Jane Doe,dc=corp,dc=acme,dc=org',
+];
+
+$group->setMembers($members);
+
+$group->save();
+```
+
+Or manually:
+
+```php
+$group->member = [
+    'cn=John Doe,dc=corp,dc=acme,dc=org',
+    'cn=Jane Doe,dc=corp,dc=acme,dc=org',
+];
+
+$group->save();
+```
+
+## Adding One Member
+
+To add a single member to a group, use the `addMember()` method:
+
+> **Note**: You do not need to call the `save()` method after adding a
+> member. It's automatically called so you can determine
+> if the member was successfully added.
+
+```php
+// We can provide a model, or just a plain DN of the new member
+$user = $provider->search()->users()->first();
+
+if ($group->addMember($user)) {
+    // User was successfully added to the group!
+}
+
+// Or
+
+$user = 'cn=John Doe,dc=corp,dc=acme,dc=org';
+
+if ($group->addMember($user)) {
+    //
+}
+```
+
+## Adding Multiple Group Members
+
+To add multiple members to a group, use the `addMembers()` method:
+
+> **Note**: You do not need to call the `save()` method after adding
+> members. It's automatically called so you can determine
+> if the members were successfully added.
+
+```php
+$members = [
+    'cn=John Doe,dc=corp,dc=acme,dc=org',
+    'cn=Jane Doe,dc=corp,dc=acme,dc=org',
+];
+
+$group->addMembers($members);
+
+// Or
+
+$user = $provider->search()->users()->first();
+
+if ($group->addMembers($user)) {
+    //
+}
+```
+
+## Removing One Member
+
+To remove a single member to a group, use the `removeMember()` method:
+
+```php
+// We can provide a model, or just a plain DN of the existing member
+$group = $provider->search()->groups()->first();
+
+$member = $group->getMembers()->first();
+
+if ($group->removeMember($member)) {
+    // Member was successfully removed from the group!
+}
+
+// Or
+
+$user = 'cn=John Doe,dc=corp,dc=acme,dc=org';
+
+if ($group->removeMember($user)) {
+    //
+}
+```
+
+## Removing All Members
+
+To remove all members, use the `removeMembers()` method:
+
+```php
+if ($group->removeMembers()) {
+    // All members were successfully removed!
+}
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/model.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/model.md
new file mode 100644
index 0000000..fbcecc8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/model.md
@@ -0,0 +1,655 @@
+# Creating / Updating
+
+## Introduction
+
+Adldap2 implements the [ActiveRecord](https://en.wikipedia.org/wiki/Active_record_pattern) pattern.
+This means that each LDAP record in your directory is represented as it's own model instance.
+
+## Creating
+
+Creating LDAP entries manually is always a pain, but Adldap2 makes it effortless. Let's get started.
+
+When you have a provider instance, call the `make()` method. This returns an `Adldap\Models\Factory` instance:
+
+```php
+$factory = $provider->make();
+```
+
+Or you can chain all methods if you'd prefer:
+
+```php
+$user = $provider->make()->user();
+```
+
+### Available Make Methods
+
+When calling a make method, all of them accept an `$attributes` parameter
+to fill the model with your specified attributes.
+
+```php
+// Adldap\Models\User
+$user = $provider->make()->user([
+    'cn' => 'John Doe',
+]);
+
+// Adldap\Models\Computer
+$computer = $provider->make()->computer([
+    'cn' => 'COMP-101',
+]);
+
+// Adldap\Models\Contact
+$contact = $provider->make()->contact([
+    'cn' => 'Suzy Doe',
+]);
+
+// Adldap\Models\Container
+$container = $provider->make()->container([
+    'cn' => 'VPN Users',
+]);
+
+// Adldap\Models\Group
+$group = $provider->make()->group([
+    'cn' => 'Managers',
+]);
+
+// Adldap\Models\OrganizationalUnit
+$ou = $provider->make()->ou([
+    'name' => 'Acme',
+]);
+```
+
+## Saving
+
+When you have any model instance, you can call the `save()` method to persist the
+changes to your server. This method returns a `boolean`. For example:
+
+```php
+$user = $provider->make()->user([
+    'cn' => 'New User',
+]);
+
+if ($user->save()) {
+    // User was saved.
+} else {
+    // There was an issue saving this user.
+}
+```
+
+> **Note**: When a model is saved successfully (whether created or updated), the
+> models attributes are re-synced in the background from your LDAP server.
+> 
+> This allows you to perform other operations during the same
+> request that require an existing model.
+
+### Creating (Manually)
+
+If you are sure the model **does not exist** already inside your LDAP directory, you can use the `create()` method:
+
+```php
+$user = $provider->make()->user([
+    'cn' => 'New User',
+]);
+
+if ($user->create()) {
+    // User was created.
+} else {
+    // There was an issue creating this user.
+}
+```
+
+> **Note**: When you call the create method, if the model does not have a
+> distinguished name, one will automatically be generated for you using your
+> `base_dn` set in your configuration and the models common name.
+
+### Updating (Manually)
+
+If you are sure the model **does exist** already inside your LDAP directory, you can use the `update()` method:
+
+```php
+$user = $provider->search()->whereEquals('cn', 'John Doe')->firstOrFail();
+
+$user->displayName = 'Suzy Doe';
+
+if ($user->update()) {
+    // User was updated.
+} else {
+    // There was an issue updating this user.
+}
+```
+
+## Checking Existence
+
+If you need to check the existence of a model, use the property `exists`.
+
+How does it know if the model exists in your LDAP directory? Well, when models are constructed from
+search results, the `exists` property on the model is set to `true`.
+
+```php
+$user = $provider->search()->find('jdoe');
+
+$user->exists; // Returns true.
+
+if ($user->delete()) {
+    $user->exists; // Returns false.
+}
+```
+
+If a model is created successfully, the `exists` property is set to `true`:
+
+```php
+$user = $provider->make()->user([
+    'cn' => 'John Doe',
+]);
+
+$user->exists; // Returns false.
+
+if ($user->save()) {
+    $user->exists; // Returns true.
+}
+```
+
+## Attributes
+
+Due to LDAPs multi-valued nature, all LDAP attributes inside a model have their own array.
+
+For example, a models attributes may contain the following:
+
+```php
+var_dump($user->getAttributes());
+
+// Returns:
+/*
+[
+    'cn' => [
+        0 => 'John Doe',
+    ],
+    'sn' => [
+        0 => 'Doe',
+    ],
+    'givenname' => [
+        0 => 'John'
+    ],
+    'useraccountcontrol' => [
+        0 => 512
+    ],
+    'mail' => [
+        0 => 'jdoe@acme.org',
+        1 => 'john-doe@acme.org',
+    ],
+    'memberof' => [
+        0 => 'cn=Accountants,ou=Groups,dc=acme,dc=org',
+        1 => 'cn=Employees,ou=Groups,dc=acme,dc=org',
+        2 => 'cn=Users,ou=Groups,dc=acme,dc=org',
+    ],
+]
+*/
+```
+
+You can notice in the above dumped array that each attribute contains
+its own array with a value assigned to the first key.
+
+Since all models extend from the base class `Adldap\Models\Model`, there
+are many useful methods that you can use on every model to easily
+retrieve these attributes you're looking for.
+
+### Getting Attributes
+
+You can get attributes in a few ways:
+
+```php
+// Returns an array all of the users attributes.
+$user->getAttributes();
+
+// Returns an array of all the users email addresses.
+// Returns `null` if non-existent.
+$user->getAttribute('mail');
+
+// Returns the users first email address.
+// Returns `null` if non-existent.
+$user->getAttribute('mail', 0);
+
+// Returns the users first email address.
+// Returns `null` if non-existent.
+$user->getFirstAttribute('mail');
+
+// Returns an array of all the users email addresses. 
+$user->mail;
+
+// Returns the users first email address.
+$user->mail[0];
+```
+
+#### Using a Getter
+
+Some attributes have methods for easier retrieval so you don't need to look up the LDAP attribute name.
+
+For example, to retrieve a users email address, use the method `getEmail()`:
+
+```php
+$user->getEmail();
+```
+
+##### Other Methods
+
+The following methods are available on all returned models:
+
+```php
+// Returns the model's 'name' attribute.
+$model->getName();
+
+// Returns the model's 'cn' attribute.
+$model->getCommonName();
+
+// Returns the model's 'displayname' attribute.
+$model->getDisplayName();
+
+// Returns the model's 'samaccountname' attriubte.
+$model->getAccountName();
+
+// Returns the model's 'samaccounttype` attribute.
+$model->getAccountType();
+
+// Returns the model's 'whencreated` attribute.
+$model->getCreatedAt();
+
+// Returns the model's 'whencreated` attribute in a MySQL timestamp format.
+$model->getCreatedAtDate();
+
+// Returns the model's 'whencreated' attribute in unix time.
+$model->getCreatedAtTimestamp();
+
+// Returns the model's 'whenchanged` attribute.
+$model->getUpdatedAt();
+
+// Returns the model's 'whenchanged` attribute in a MySQL timestamp format.
+$model->getUpdatedAtDate();
+
+// Returns the model's 'whenchanged` attribute in unix time.
+$model->getUpdatedAtTimestamp();
+
+// Returns the model's 'objectclass' attribute.
+$model->getObjectClass();
+
+// Returns the model's root object category string.
+$model->getObjectCategory();
+
+// Returns the model's object category in an array.
+$model->getObjectCategoryArray();
+
+// Returns the model's object category distinguished name.
+$model->getObjectCategoryDn();
+
+// Returns the model's SID in binary.
+$model->getObjectSid();
+
+// Returns the model's GUID in binary.
+$model->getObjectGuid();
+
+// Returns the model's SID in a string.
+$model->getConvertedSid();
+
+// Returns the model's GUID in a string.
+$model->getConvertedGuid();
+
+// Returns the model's primary group ID.
+$model->getPrimaryGroupId();
+
+// Returns the model's 'instancetype' attribute.
+$model->getInstanceType();
+
+// Returns the model's 'maxpwdage' attribute.
+$model->getMaxPasswordAge();
+```
+
+For more documentation on specific getters, please take a look at the relevant model documentation.
+
+#### Getting Dirty (Modified) Attributes
+
+You can get a models modified attributes using the `getDirty()` method:
+
+```php
+$user = $provider->search()->users()->find('john');
+
+// Returns array [0 => 'John Doe']
+var_dump($user->cn);
+
+$user->setAttribute('cn', 'Jane Doe');
+
+// Returns array ['cn' => [0 => 'Jane Doe']]
+var_dump($user->getDirty());
+
+// The attribute has been modified - returns array [0 => 'Jane Doe']
+var_dump($user->cn);
+```
+
+The method returns an array with the key being the modified attribute,
+and the array being the new values of the attribute.
+
+#### Getting Original (Unmodified) Attributes
+
+You can get a models original attributes using the `getOriginal()` method:
+
+```php
+$user = $provider->search()->users()->find('john');
+
+// Returns array [0 => 'John Doe']
+var_dump($user->cn);
+
+$user->setAttribute('cn', 'Jane Doe');
+
+// The attribute has been modified - returns array [0 => 'Jane Doe']
+var_dump($user->cn);
+
+// Retrieving the original value - returns array [0 => 'John Doe']
+var_dump($user->getOriginal()['cn']);
+```
+
+> **Note**: Keep in mind, when you `save()` a model, the models original
+> attributes will be re-synchronized to the models new attributes.
+
+### Setting Attributes
+
+Just like getting model attributes, there's multiple ways of setting attributes as well:
+
+```php
+// Setting via method:
+$user->setAttribute('cn', 'John Doe');
+
+// Specifying a subkey for overwriting specific attributes:
+$user->setAttribute('mail', 'other-mail@mail.com', 0);
+
+// Setting the first attribute:
+$user->setFirstAttribute('mail', 'jdoe@mail.com');
+
+// Setting via property:
+$user->cn = 'John Doe';
+
+// Mass setting attributes:
+$user->fill([
+    'cn' => 'John Doe',
+    'mail' => 'jdoe@mail.com',
+]);
+```
+
+#### Setting Boolean Attributes
+
+When setting boolean attribute values, you cannot use `0` / `1` / `true` / `false` as these
+are simply converted to integer values when saving and your LDAP server will
+likely return an error for doing so on certain attributes.
+
+You will need to use the string versions of the boolean (`'TRUE'` / `'FALSE'`) for the
+boolean attribute to be set properly on your LDAP server.
+
+Here's an example:
+
+```php
+$user->setFirstAttribute('msExchHideFromAddressLists', 'TRUE');
+
+$user->save();
+```
+
+### Creating Attributes
+
+To create an attribute that does not exist on the model, you can set it like a regular property:
+
+```php
+$user = $provider->search()->whereEquals('cn', 'John Doe')->firstOrFail();
+
+$user->new = 'New Attribute';
+
+$user->save();
+```
+
+If the set attribute does not exist on the model already,
+it will automatically be created when you call the `save()` method.
+
+If you'd like manually create new attributes individually, call the `createAttribute($attribute, $value)` method:
+
+```php
+if ($user->createAttribute('new', 'New Attribute')) {
+    // Attribute created.
+}
+```
+
+### Updating Attributes
+
+To modify an attribute you can either use a setter method, or by setting it manually:
+
+> **Note**: You can also utilize setters to create new attributes if your model does not already have the attribute.
+
+```php
+$user = $provider->search()->whereEquals('cn', 'John Doe')->firstOrFail();
+
+$user->cn = 'New Name';
+
+// Or use a setter:
+
+$user->setCommonName('New Name');
+
+$user->save();
+```
+
+If you'd like to update attributes individually, call the `updateAttribute($attribute, $value)` method:
+
+```php
+if ($user->updateAttribute('cn', 'New Name')) {
+    // Successfully updated attribute.
+}
+```
+
+### Removing Attributes
+
+To remove attributes, set the attribute to `NULL`:
+
+```php
+$user->cn = null;
+
+$user->save();
+```
+
+Or, you can call the `deleteAttribute($attribute)` method:
+
+```php
+if ($user->deleteAttribute('cn')) {
+    // Attribute has been deleted.
+}
+```
+
+### Checking Attributes
+
+#### Checking Existence of Attributes
+
+To see if a model contains an attribute, use the method `hasAttribute()`:
+
+```php
+// Checking if a base attribute exists:
+if ($user->hasAttribute('mail')) {
+    // This user contains an email address.
+}
+
+// Checking if a sub attribute exists, by key:
+if ($user->hasAttribute('mail', 1)) {
+    // This user contains a second email address.
+}
+```
+
+#### Counting the Models Attributes
+
+To retrieve the total number of attributes, use the method `countAttributes()`:
+
+```php
+$count = $user->countAttributes();
+
+var_dump($count); // Returns int
+```
+
+#### Checking if a Model is contained in an OU
+
+To check if a model is located inside an OU, use the `inOu()` method:
+
+```php
+if ($model->inOu('User Accounts')) {
+    // This model is inside the 'User Accounts' OU.
+}
+```
+
+You can also use an OU model instance:
+
+```php
+$serviceAccounts = $provider->search()->ous()->find('Service Accounts');
+
+if ($model->inOu($serviceAccounts)) {
+    // This model is inside the 'Service Accounts' OU.
+}
+```
+
+#### Checking if a Model is Writable
+
+To check if the model can be written to, use the method `isWritable()`:
+
+```php
+if ($model->isWritable()) {
+    // You can modify this model.
+}
+```
+
+### Force Re-Syncing A Models Attributes
+
+If you need to forcefully re-sync a models attributes, use the method `syncRaw()`:
+
+```php
+$user->syncRaw();
+```
+
+> **Note**: This will query your LDAP server for the current model, and re-synchronize
+> it's attributes. This is only recommended if your creating / updating / deleting
+> attributes manually through your LDAP connection.
+
+## Moving / Renaming
+
+To move a user from one DN or OU to another, use the `move()` method:
+
+> **Note**: The `move()` method is actually an alias for the `rename()` method.
+
+```php
+// New parent distiguished name.
+$newParentDn = 'OU=New Ou,DC=corp,DC=local';
+
+if ($user->move($newParentDn)) {
+    // User was successfully moved to the new OU.
+}
+```
+
+You can also provide a model to move the child model into:
+
+```php
+// New parent OU.
+$newParentOu = $provider->search()->ous()->find('Accounting');
+
+if ($user->move($newParentOu)) {
+    // User was successfully moved to the new OU.
+}
+```
+
+If you would like to keep the models old RDN along side their new RDN, pass in false in the second parameter:
+
+```php
+// New parent distiguished name.
+$newParentDn = 'OU=New Ou,DC=corp,DC=local';
+
+if ($user->move($newParentDn, $deleteOldRdn = false)) {
+    // User was successfully moved to the new OU,
+    // and their old RDN has been left in-tact.
+}
+```
+
+To rename a users DN, just pass in their new relative distinguished name in the `rename()` method:
+
+```php
+$newRdn = 'cn=New Name';
+
+if ($user->rename($newRdn)) {
+    // User was successfully renamed.
+}
+```
+
+## Deleting
+
+To delete a model, just call the `delete()` method:
+
+```php
+$user = $provider->search()->whereEquals('cn', 'John Doe')->firstOrFail();
+
+echo $user->exists; // Returns true.
+
+if ($user->delete()) {
+    // Successfully deleted user.
+
+    echo $user->exists; // Returns false.
+}
+```
+
+## Extending
+
+> **Note**: This feature was introduced in `v8.0.0`.
+
+To use your own models, you will need to create a new [Schema](../schema.md).
+
+Once you have created your own schema, you must insert it inside the construct of your provider.
+
+Let's walk through this process.
+
+First we'll create our model we'd like to extend / override:
+
+> **Note**: Your custom model **must** extend from an existing Adldap2 model.
+> This is due to methods and attributes that only exist on these classes.
+
+```php
+namespace App\Ldap\Models;
+
+use Adldap\Models\User as Model;
+
+class User extends Model
+{
+    public function getCommonName()
+    {
+        // Overriding model method.
+    }
+}
+```
+
+Now, we'll create our custom schema and return our models class name:
+
+```php
+namespace App\Ldap\Schemas;
+
+use App\Ldap\Models\User;
+
+class LdapSchema extends ActiveDirectory
+{
+    public function userModel()
+    {
+        return User::class;
+    }
+}
+```
+
+Finally, when we create a provider, we need to insert our Schema into the configuration:
+
+```php
+$config = [
+    'hosts' => ['...'],
+    
+    'username' => 'admin',
+    'password' => 'P@ssword',
+    
+    'schema' => MyApp\LdapSchema::class,
+];
+
+$ad = new Adldap($config);
+
+$provider = $ad->connect();
+
+// If `jdoe` exists, your custom model will be returned.
+$user = $provider->search()->users()->find('jdoe');
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/organization.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/organization.md
new file mode 100644
index 0000000..57c00e3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/organization.md
@@ -0,0 +1,19 @@
+# The Organization Model
+
+The Organization model extends from the base `Adldap\Models\Model` class and contains
+no specific methods / attributes that are limited to it.
+
+## Creation
+
+```php
+// Adldap\Models\Organization
+$org = $provider->make()->organization([
+    'o' => 'Some Company',
+]);
+
+// Set the DN manually:
+
+$org->setDn('o=Some Company,dc=test,dc=local,dc=com');
+
+$org->save();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/ou.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/ou.md
new file mode 100644
index 0000000..ec473b1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/ou.md
@@ -0,0 +1,27 @@
+# The OrganizationalUnit Model
+
+The OrganizationalUnit model extends from the base `Adldap\Models\Model` class and contains
+no specific methods / attributes that are limited to it.
+
+## Creation
+
+```php
+// Adldap\Models\OrganizationalUnit
+$ou = $provider->make()->ou([
+    'name' => 'Workstation Computers',
+]);
+
+// Generate the OU's DN through the DN Builder:
+
+$dn = $ou->getDnBuilder();
+
+$dn->addOu('Workstation Computers');
+
+$ou->setDn($dn);
+
+// Or set the DN manually:
+
+$ou->setDn('ou=Workstation Computers,dc=test,dc=local,dc=com');
+
+$ou->save();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/printer.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/printer.md
new file mode 100644
index 0000000..4adc666
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/printer.md
@@ -0,0 +1,49 @@
+# The Printer Model
+
+## Methods
+
+```php
+$printer->getPrinterName();
+
+$printer->getPrinterShareName();
+
+$printer->getMemory();
+
+$printer->getUrl();
+
+$printer->getLocation();
+
+$printer->getServerName();
+
+$printer->getColorSupported();
+
+$printer->getDuplexSupported();
+
+$printer->getMediaSupported();
+
+$printer->getStaplingSupported();
+
+$printer->getPrintBinNames();
+
+$printer->getPrintMaxResolution();
+
+$printer->getPrintOrientations();
+
+$printer->getDriverName();
+
+$printer->getDriverVersion();
+
+$printer->getPriority();
+
+$printer->getPrintStartTime();
+
+$printer->getPrintEndTime();
+
+$printer->getPortName();
+
+$printer->getVersionNumber();
+
+$printer->getPrintRate();
+
+$printer->getPrintRateUnit();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/root-dse.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/root-dse.md
new file mode 100644
index 0000000..e798c0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/root-dse.md
@@ -0,0 +1,33 @@
+# The RootDse Model
+
+## Getting the Root DSE
+
+To get the Root DSE of your LDAP server, call the `getRootDse()` method off a new search:
+
+```php
+$rootDse = $provider->search()->getRootDse();
+```
+
+## Getting the schema naming context
+
+To get the Root DSE schema naming context, call the `getSchemaNamingContext()`:
+
+```php
+$rootDse = $provider->search()->getRootDse();
+
+$context = $rootDse->getSchemaNamingContext();
+
+// Returns 'cn=Schema,cn=Configuration,dc=corp,dc=acme,dc=org'
+echo $context;
+```
+
+## Getting the root domain naming context
+
+To get the Root DSE domain naming context, call the `getRootDomainNamingContext()`:
+
+```php
+$context = $rootDse->getRootDomainNamingContext();
+
+// Returns 'dc=corp,dc=acme,dc=org'
+echo $context;
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-critical-system-object.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-critical-system-object.md
new file mode 100644
index 0000000..095acad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-critical-system-object.md
@@ -0,0 +1,13 @@
+# HasCriticalSystemObject Trait
+
+Models that contain this trait, have the `isCriticalSystemObject` attribute.
+
+There is only one method that accompanies this trait:
+
+```php
+if ($model->isCriticalSystemObject()) {
+
+    //
+
+}
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-description.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-description.md
new file mode 100644
index 0000000..5c26d02
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-description.md
@@ -0,0 +1,11 @@
+# HasDescription Trait
+
+Models that contain this trait, have the `description` attribute.
+
+There are only two methods that accompany this trait:
+
+```php
+$model->getDescription();
+
+$model->setDescription('The models description');
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-last-login-last-logoff.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-last-login-last-logoff.md
new file mode 100644
index 0000000..76078c5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-last-login-last-logoff.md
@@ -0,0 +1,16 @@
+# HasLastLoginAndLastLogoff Trait
+
+Models that contain this trait have the `lastlogoff`, `lastlogon` and `lastlogontimestamp` attributes.
+
+## Methods
+
+```php
+// Returns the models's last log off attribute.
+$computer->getLastLogOff();
+
+//  Returns the models's last log on attribute.
+$computer->getLastLogon();
+
+// Returns the models's last log on timestamp attribute.
+$computer->getLastLogonTimestamp();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-member-of.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-member-of.md
new file mode 100644
index 0000000..d3063df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/traits/has-member-of.md
@@ -0,0 +1,166 @@
+# HasMemberOf Trait
+
+Models that contain this trait, have the ability to be apart of a group.
+
+There's many helpful methods to assist you in all of the operations related to group membership, let's get started!
+
+## Retrieving Groups
+
+To retrieve the groups that a model is apart of, call the `getGroups()` method:
+
+```php
+$user = $provider->search()->users()->find('jdoe');
+
+$groups = $user->getGroups();
+
+foreach ($groups as $group) {
+
+    $group->getCommonName(); // ex. 'Accounting'
+
+}
+```
+
+We can also pass in specific fields we need from the returned groups to speed up our queries.
+
+For example, if we only need the groups common name:
+
+```php
+// Group models will be returned with only their common name.
+$groups = $user->getGroups(['cn']);
+```
+
+However, calling `getGroups()` will only retrieve the models immediate groups (non-recursive).
+
+To retrieve nested groups, pass in `true` into the second parameter:
+
+```php
+$groups = $user->getGroups([], $recursive = true);
+```
+
+## Retrieve Group Names
+
+If you only want the models group names, call the `getGroupNames()` method:
+
+```php
+$names = $user->getGroupNames();
+
+foreach ($names as $name) {
+
+    echo $name; // ex. 'Accounting'
+
+}
+```
+
+However, this method will also retrieve only the immediate groups names
+much like the `getGroups()` method. You'll need to pass in `true` in
+the first parameter to retrieve results recursively.
+
+```php
+$names = $user->getGroupNames($recursive = true);
+```
+
+## Checking if the Model is apart of a Group
+
+To check if a model is apart of a certain group, use the `inGroup()` method:
+
+```php
+$group = $provider->search()->groups()->find('Office');
+
+if ($user->inGroup($group)) {
+
+    //
+
+}
+```
+
+You can also check for multiple memberships by passing in an array of groups:
+
+```php
+$groups = $provider->search()->findManyBy('cn', ['Accounting', 'Office']));
+
+if ($user->inGroup($groups->toArray()) {
+    
+    // This user is apart of the 'Accounting' and 'Office' group!
+
+}
+```
+
+> **Note**: Much like the other methods above, you'll need to provide a `$recursive`
+> flag to the `inGroup()` method if you'd like recursive results included.
+
+We can also provide distinguished names instead of Group model instances:
+
+```php
+$dns = [
+    'cn=Accounting,ou=Groups,dc=acme,dc=org',
+    'cn=Office,ou=Groups,dc=acme,dc=org',
+];
+
+if ($user->inGroup($dns, $recursive = true)) {
+    
+    //
+
+}
+```
+
+Or, we can also just provide the name(s) of the group(s).
+
+```php
+$names = [
+    'Accounting',
+    'Office',
+];
+
+if ($user->inGroup($names, $recursive = true)) {
+    
+    //
+
+}
+```
+
+## Adding a Group
+
+To add the model to a specific group, call the `addGroup()` method:
+
+```php
+$group = $provider->search()->groups()->find('Accounting');
+
+// You can either provide a Group model:
+if ($user->addGroup($group)) {
+
+    //
+
+}
+
+// Or a Groups DN:
+if ($user->addGroup('cn=Accounting,ou=Groups,dc=acme,dc=org')) {
+
+    //
+
+}
+```
+
+> **Note**: You do not need to call the `save()` method for adding / removing groups.
+> This is done automatically so you can perform clean `if` statements on the method.
+
+## Removing a Group
+
+To remove the model from a specific group, call the `removeGroup()` method:
+
+```php
+$group = $user->getGroups()->first();
+
+// You can either provide a Group model:
+if ($user->removeGroup($group)) {
+
+    //
+
+}
+
+// Or the groups DN:
+if ($user->removeGroup('cn=Accounting,ou=Office Groups,dc=acme,dc=org')) {
+
+    //
+
+}
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/user.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/user.md
new file mode 100644
index 0000000..65576e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/models/user.md
@@ -0,0 +1,180 @@
+# The User Model
+
+> **Note**: This model contains the trait `HasMemberOf`. For more information, visit the documentation:
+> [HasMemberOfTrait](/models/traits/has-member-of.md)
+
+## Creating
+
+> **Note**: If you need to create users with passwords, SSL or TLS **must** be enabled on your configured connection.
+> 
+> The password you enter for the user **must** also obey your LDAP servers password requirements,
+> otherwise you will receive a "Server is unwilling to perform" LDAP exception upon saving.
+
+```php
+// Construct a new User model instance.
+$user = $provider->make()->user();
+
+// Create the users distinguished name.
+// We're adding an OU onto the users base DN to have it be saved in the specified OU.
+$dn = $user->getDnBuilder()->addOu('Users'); // Built DN will be: "CN=John Doe,OU=Users,DC=acme,DC=org";
+
+// Set the users DN, account name.
+$user->setDn($dn);
+$user->setAccountName('jdoe');
+$user->setCommonName('John Doe');
+
+// Set the users password.
+// NOTE: This password must obey your AD servers password requirements
+// (including password history, length, special characters etc.)
+// otherwise saving will fail and you will receive an
+// "LDAP Server is unwilling to perform" message.
+$user->setPassword('correct-horse-battery-staple');
+
+// Get a new account control object for the user.
+$ac = $user->getUserAccountControlObject();
+
+// Mark the account as enabled (normal).
+$ac->accountIsNormal();
+
+// Set the account control on the user and save it.
+$user->setUserAccountControl($ac);
+
+// Save the user.
+$user->save();
+
+// All done! An enabled user will be created and is ready for use.
+```
+
+## Methods
+
+There's a ton of available methods for the User model. Below is a list for a quick reference.
+
+> **Note**: Don't see a method for an LDAP attribute? Create an issue and let us know!
+
+```php
+// Get the users display name.
+$user->getDisplayName();
+
+// Get the users first email address.
+$user->getEmail();
+
+// Get the users title.
+$user->getTitle();
+
+// Get the users department.
+$user->getDepartment();
+
+// Get the users first name.
+$user->getFirstName();
+
+// Get the users last name.
+$user->getLastName();
+
+// Get the users info.
+$user->getInfo();
+
+// Get the users initials.
+$user->getInitials();
+
+// Get the users country.
+$user->getCountry();
+
+// Get the users street address.
+$user->getStreetAddress();
+
+// Get the users postal code.
+$user->getPostalCode();
+
+// Get the users physical delivery office name.
+$user->getPhysicalDeliveryOfficeName();
+
+// Get the users phone number.
+$user->getTelephoneNumber();
+
+// Get the users locale.
+$user->getLocale();
+
+// Get the users company.
+$user->getCompany();
+
+// Get the users other email addresses.
+$user->getOtherMailbox();
+
+// Get the users home mailbox database location (stored as a distinguished name). 
+$user->getHomeMdb();
+
+// Get the users email nickname.
+$user->getMailNickname();
+
+// Get the users principal name.
+$user->getUserPrincipalName();
+
+// Get the users proxy email addresses.
+$user->getProxyAddresses();
+
+// Get the users failed login attempts.
+$user->getBadPasswordCount();
+
+// Get the users last failed login attempt timestamp.
+$user->getBadPasswordTime();
+
+// Get the users last password change timestamp.
+$user->getPasswordLastSet();
+
+// Get the users last password change timestamp in unix time.
+$user->getPasswordLastSetTimestamp();
+
+// Get the users last password change timestamp in MySQL date format.
+$user->getPasswordLastSetDate();
+
+// Get the users lockout time.
+$user->getLockoutTime();
+
+// Get the users user account control integer.
+$user->getUserAccountControl();
+
+// Get the users roaming profile path.
+$user->getProfilePath();
+
+// Get the users legacy exchange distinguished name.
+$user->getLegacyExchangeDn();
+
+// Get the users account expiry timestamp.
+$user->getAccountExpiry();
+
+// Get the boolean that determines whether to show this user in the global address book.
+$user->getShowInAddressBook();
+
+// Get the users thumbnail photo.
+$user->getThumbnail();
+
+// Get the users thumbnail photo (base64 encoded for HTML <img src=""> tags).
+$user->getThumbnailEncoded();
+
+// Get the users jpeg photo.
+$user->getJpegPhoto();
+
+// Get the users jpeg photo (base64 encoded for HTML <img src=""> tags).
+$user->getJpegPhotoEncoded();
+
+// Get the users manager.
+$user->getManager();
+
+// Get the users employee ID.
+$user->getEmployeeId();
+
+// Get the users employee number.
+$user->getEmployeeNumber();
+
+// Get the users employee type
+$user->getEmployeeType();
+
+// Get the users room number.
+$user->getRoomNumber();
+
+// Get the users department number.
+$user->getDepartmentNumber();
+
+// Get the users personal title.
+$user->getPersonalTitle();
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/readme.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/readme.md
new file mode 100644
index 0000000..00eaab7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/readme.md
@@ -0,0 +1,115 @@
+# Introduction
+
+## What is Adldap2?
+
+Adldap2 is a PHP LDAP package that allows you to:
+
+1. Easily manage multiple LDAP connections at once
+2. Perform authentication
+3. Search your LDAP directory with a fluent and easy to use query builder
+4. Create / Update / Delete LDAP entities with ease
+5. And more
+
+## History of Adldap2
+
+Adldap2 was originally created as a fork of the original LDAP library [adLDAP](https://github.com/adldap/adLDAP) due to bugs, and it being completely abandoned.
+
+Adldap2 contains absolutely no similarities to the original repository, and was built to be as easily accessible as possible, with great documentation, and easily understandable syntax.
+
+Much of the API was constructed with Ruby's ActiveRecord and Laravel's Eloquent in mind, and to be an answer to the question:
+
+> _Why can't we use LDAP like we use a database?_
+
+## Why should you use Adldap2?
+
+Working with LDAP in PHP can be a messy and confusing endeavor, especially when using multiple connections, creating and managing entities, performing moves, resetting passwords, and performing ACL modifications to user accounts.
+
+Wrapper classes for LDAP are usually always created in PHP applications.
+
+Adldap2 allows you to easily manage the above problems without reinventing the wheel for every project.
+
+## Implementations
+
+- [Laravel](https://github.com/Adldap2/Adldap2-Laravel)
+
+## Quick Start
+
+Install the package via `composer`:
+
+```
+composer require adldap2/adldap2
+```
+
+Use Adldap2:
+
+```php
+// Construct new Adldap instance.
+$ad = new \Adldap\Adldap();
+
+// Create a configuration array.
+$config = [  
+  // An array of your LDAP hosts. You can use either
+  // the host name or the IP address of your host.
+  'hosts'    => ['ACME-DC01.corp.acme.org', '192.168.1.1'],
+
+  // The base distinguished name of your domain to perform searches upon.
+  'base_dn'  => 'dc=corp,dc=acme,dc=org',
+
+  // The account to use for querying / modifying LDAP records. This
+  // does not need to be an admin account. This can also
+  // be a full distinguished name of the user account.
+  'username' => 'admin@corp.acme.org',
+  'password' => 'password',
+];
+
+// Add a connection provider to Adldap.
+$ad->addProvider($config);
+
+try {
+    // If a successful connection is made to your server, the provider will be returned.
+    $provider = $ad->connect();
+
+    // Performing a query.
+    $results = $provider->search()->where('cn', '=', 'John Doe')->get();
+
+    // Finding a record.
+    $user = $provider->search()->find('jdoe');
+
+    // Creating a new LDAP entry. You can pass in attributes into the make methods.
+    $user =  $provider->make()->user([
+        'cn'          => 'John Doe',
+        'title'       => 'Accountant',
+        'description' => 'User Account',
+    ]);
+
+    // Setting a model's attribute.
+    $user->cn = 'John Doe';
+
+    // Saving the changes to your LDAP server.
+    if ($user->save()) {
+        // User was saved!
+    }
+} catch (\Adldap\Auth\BindException $e) {
+
+    // There was an issue binding / connecting to the server.
+
+}
+```
+
+## Versioning
+
+Adldap2 is versioned under the [Semantic Versioning](http://semver.org/) guidelines as much as possible.
+
+Releases will be numbered with the following format:
+
+`<major>.<minor>.<patch>`
+
+And constructed with the following guidelines:
+
+* Breaking backward compatibility bumps the major and resets the minor and patch.
+* New additions without breaking backward compatibility bumps the minor and resets the patch.
+* Bug fixes and misc changes bumps the patch.
+
+Minor versions are not maintained individually, and you're encouraged to upgrade through to the next minor version.
+
+Major versions are maintained individually through separate branches.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/searching.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/searching.md
new file mode 100644
index 0000000..2837767
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/searching.md
@@ -0,0 +1,662 @@
+# Searching
+
+## Introduction
+
+Using the Adldap2 query builder makes building LDAP queries feel effortless.
+
+It allows you to generate LDAP filters using a fluent and
+convenient interface, similar to Eloquent in Laravel.
+
+> **Note:** The Adldap2 query builder escapes all fields & values
+> given to its `where()` methods. There is no need to clean or
+> escape strings before passing them into the query builder.
+
+## Creating a new Query
+
+To create a new search query, call the `search()` method on your connection provider instance:
+
+```php
+$search = $provider->search();
+```
+
+Or you can chain all your methods if you'd prefer:
+
+```php
+$results = $provider->search()->where('cn', '=', 'John Doe')->get();
+```
+
+## Selects
+
+> **Note:** Fields are case in-sensitive. For example, you can
+> insert `CN`, `cn` or `cN`, they will return the same result.
+
+#### Selecting attributes
+
+Selecting only the LDAP attributes you need will increase the speed of your queries.
+
+```php
+// Passing in an array of attributes
+$search->select(['cn', 'samaccountname', 'telephone', 'mail']);
+
+// Passing in each attribute as an argument
+$search->select('cn', 'samaccountname', 'telephone', 'mail');
+```
+
+## Executing Searches
+
+#### Finding a specific record
+
+If you're trying to find a single record, but not sure what the record might be, use the `find()` method:
+
+```php
+$record = $search->find('John Doe');
+
+if ($record) {
+    // Record was found!    
+} else {
+    // Hmm, looks like we couldn't find anything...
+}
+```
+
+> **Note**: Using the `find()` method will search for LDAP records using ANR
+> (ambiguous name resolution) and return the first result.
+>
+> Since ActiveDirectory is the only LDAP distribution that supports ANR,
+> an equivalent query will be created for other LDAP distributions
+> that are not compatible.
+>
+> For a more fine-tuned search, use the `findBy()` method below.
+
+##### Finding a record (or failing)
+
+If you'd like to try and find a single record and throw an exception when it hasn't been
+found, use the `findOrFail()` method:
+
+```php
+try {
+
+    $record = $search->findOrFail('John Doe');
+
+} catch (Adldap\Models\ModelNotFoundException $e) {
+    // Record wasn't found!
+}
+```
+
+#### Finding a record by a specific attribute
+
+If you're looking for a single record with a specific attribute, use the `findBy()` method:
+
+```php
+// We're looking for a record with the 'samaccountname' of 'jdoe'.
+$record = $search->findBy('samaccountname', 'jdoe');
+```
+
+##### Finding a record by a specific attribute (or failing)
+
+If you'd like to try and find a single record by a specific attribute and throw
+an exception when it cannot be found, use the `findByOrFail()` method:
+
+```php
+try {
+
+    $record = $search->findByOrFail('samaccountname', 'jdoe');
+
+} catch (Adldap\Models\ModelNotFoundException $e) {
+    // Record wasn't found!
+}
+```
+
+#### Finding a record by its distinguished name
+
+If you're looking for a single record with a specific DN, use the `findByDn()` method:
+
+```php
+$record = $search->findByDn('cn=John Doe,dc=corp,dc=org');
+```
+
+###### Finding a record by its distinguished name (or failing)
+
+If you'd like to try and find a single record by a specific DN and throw
+an exception when it hasn't been found, use the `findByDnOrFail()` method:
+
+```php
+try {
+
+    $record = $search->findByDnOrFail('cn=John Doe,dc=corp,dc=org');
+
+} catch (Adldap\Models\ModelNotFoundException $e) {
+    // Record wasn't found!
+}
+```
+
+#### Retrieving results
+
+To get the results from a search, simply call the `get()` method:
+
+```php
+$results = $search->select(['cn', 'samaccountname'])->get();
+```
+
+> **Note**: Executed searches via the `get()` method will return them inside an
+> `Illuminate\Support\Collection` instance (a glorified array), with allows
+> you to utilize [some extremely handy methods](https://laravel.com/docs/collections).
+>
+> Executed searches via the `first()` method will return **a model instance only**.
+
+##### Retrieving the first record
+
+To retrieve the first record of a search, call the `first()` method:
+
+```php
+$record = $search->first();
+```
+
+> **Note**: If you are using `sortBy()`, calling `first()` will not take this into account. Sorts
+> are performed **after** retrieving query results. If you would like the first record of
+> a sorted result set, call `first()` on a `Collection` of returned models.
+
+###### Retrieving the first record (or failing)
+
+To retrieve the first record of a search or throw an exception when one isn't found, call the `firstOrFail()` method:
+
+```php
+try {
+
+    $record = $search->firstOrFail();
+
+} catch (Adldap\Models\ModelNotFoundException $e) {
+    // Record wasn't found!
+}
+```
+
+## Limit
+
+To limit the results records returned from your LDAP server and increase the
+speed of your queries, you can use the `limit()` method:
+
+```php
+// This will only return 5 records that contain the name of 'John':
+$records = $search->where('cn', 'contains', 'John')->limit(5)->get();
+```
+
+## Wheres
+
+To perform a where clause on the search object, use the `where()` function:
+
+```php
+$search->where('cn', '=', 'John Doe');
+```
+
+This query would look for a record with the common name of 'John Doe' and return the results.
+
+We can also perform a 'where equals' without including the operator:
+
+```php
+$search->whereEquals('cn', 'John Doe');
+```
+
+We can also supply an array of key - value pairs to quickly add multiple wheres:
+
+```php
+$wheres = [
+    'cn' => 'John Doe',
+    'samaccountname' => 'jdoe',
+];
+
+$search->where($wheres);
+```
+
+Or, if you require conditionals, you can quickly add multiple wheres with nested arrays:
+
+```php
+$search->where([
+   ['cn', '=', 'John Doe'],
+   ['manager', '!', 'Suzy Doe'],
+]);
+```
+
+#### Where Starts With
+
+We could also perform a search for all objects beginning with the common name of 'John' using the `starts_with` operator:
+
+```php
+$results = $provider->search()->where('cn', 'starts_with', 'John')->get();
+
+// Or use the method whereStartsWith($attribute, $value):
+
+$results = $provider->search()->whereStartsWith('cn', 'John')->get();
+```
+
+#### Where Ends With
+
+We can also search for all objects that end with the common name of `Doe` using the `ends_with` operator:
+
+```php
+$results = $provider->search()->where('cn', 'ends_with', 'Doe')->get();
+
+// Or use the method whereEndsWith($attribute, $value):
+
+$results = $provider->search()->whereEndsWith('cn', 'Doe')->get();
+```
+
+#### Where Between
+
+To search for records between two values, use the `whereBetween` method.
+
+For the example below, we'll retrieve all users who were created between two dates:
+
+```php
+$from = (new DateTime('October 1st 2016'))->format('YmdHis.0\Z');
+$to = (new DateTime('January 1st 2017'))->format('YmdHis.0\Z');
+
+$users = $provider->search()
+    ->users()
+    ->whereBetween('whencreated', [$from, $to])
+    ->get();
+```
+
+#### Where Contains
+
+We can also search for all objects with a common name that contains `John Doe` using the `contains` operator:
+
+```php
+$results = $provider->search()->where('cn', 'contains', 'John Doe')->get();
+
+// Or use the method whereContains($attribute, $value):
+
+$results = $provider->search()->whereContains('cn', 'John Doe')->get();
+```
+
+##### Where Not Contains
+
+You can use a 'where not contains' to perform the inverse of a 'where contains':
+
+```php
+$results = $provider->search()->where('cn', 'not_contains', 'John Doe')->get();
+
+// Or use the method whereNotContains($attribute, $value):
+
+$results = $provider->search()->whereNotContains('cn', 'John Doe');
+```
+
+#### Where Has
+
+Or we can retrieve all objects that have a common name attribute using the wildcard operator (`*`):
+
+```php
+$results = $provider->search()->where('cn', '*')->get();
+
+// Or use the method whereHas($field):
+
+$results = $provider->search()->whereHas('cn')->get();
+```
+
+This type of filter syntax allows you to clearly see what your searching for.
+
+##### Where Not Has
+
+You can use a 'where not has' to perform the inverse of a 'where has':
+
+```php
+$results = $provider->search->where('cn', '!*')->get();
+
+// Or use the method whereNotHas($field):
+
+$results = $provider->search()->whereNotHas($field)->get();
+```
+
+## Or Wheres
+
+To perform an `or where` clause on the search object, use the `orWhere()` method. However,
+please be aware this function performs differently than it would on a database.
+
+For example:
+
+```php
+$results = $search
+            ->where('cn', '=', 'John Doe')
+            ->orWhere('cn', '=', 'Suzy Doe')
+            ->get();
+```
+
+This query would return no results. Since we're already defining that the common name (`cn`) must equal `John Doe`, applying
+the `orWhere()` does not amount to 'Look for an object with the common name as "John Doe" OR "Suzy Doe"'. This query would
+actually amount to 'Look for an object with the common name that <b>equals</b> "John Doe" OR "Suzy Doe"
+
+To solve the above problem, we would use `orWhere()` for both fields. For example:
+
+```php
+$results = $search
+        ->orWhere('cn', '=', 'John Doe')
+        ->orWhere('cn', '=', 'Suzy Doe')
+        ->get();
+```
+
+Now, we'll retrieve both John and Suzy's LDAP records, because the common name can equal either.
+
+> **Note**: You can also use all `where` methods as an or where, for example:
+> `orWhereHas()`, `orWhereContains()`, `orWhereStartsWith()`, `orWhereEndsWith()`
+
+## Dynamic Wheres
+
+To perform a dynamic where, simply suffix a `where` with the field you're looking for.
+
+This feature was directly ported from Laravel's Eloquent.
+
+Here's an example:
+
+```php
+// This query:
+$result = $search->where('cn', '=', 'John Doe')->first();
+
+// Can be converted to:
+$result = $search->whereCn('John Doe')->first();
+```
+
+You can perform this on **any** attribute:
+
+```php
+$result = $search->whereTelephonenumber('555-555-5555')->first();
+```
+
+You can also chain them:
+
+```php
+$result = $search
+    ->whereTelephonenumber('555-555-5555')
+    ->whereGivenname('John Doe')
+    ->whereSn('Doe')
+    ->first();
+```
+
+You can even perform multiple dynamic wheres by separating your fields by an `And`:
+
+```php
+// This would perform a search for a user with the
+// first name of 'John' and last name of 'Doe'.
+$result = $search->whereGivennameAndSn('John', 'Doe')->first();
+```
+
+## Nested Filters
+
+By default, the Adldap2 query builder automatically wraps your queries in `and` / `or` filters for you.
+However, if any further complexity is required, nested filters allow you
+to construct any query fluently and easily.
+
+#### andFilter
+
+The `andFilter` method accepts a closure which allows you to construct a query inside of an `and` LDAP filter:
+
+```php
+$query = $provider->search()->newQuery();
+
+// Creates the filter: (&(givenname=John)(sn=Doe))
+$results = $query->andFilter(function (Adldap\Query\Builder $q) {
+
+    $q->where('givenname', '=', 'John')
+      ->where('sn', '=', 'Doe');
+
+})->get();
+```
+
+The above query would return records that contain the first name `John` **and** the last name `Doe`.
+
+#### orFilter
+
+The `orFilter` method accepts a closure which allows you to construct a query inside of an `or` LDAP filter:
+
+```php
+$query = $provider->search()->newQuery();
+
+
+// Creates the filter: (|(givenname=John)(sn=Doe))
+$results = $query->orFilter(function (Adldap\Query\Builder $q) {
+
+    $q->where('givenname', '=', 'John')
+      ->where('sn', '=', 'Doe');
+
+})->get();
+```
+
+The above query would return records that contain the first name `John` **or** the last name `Doe`.
+
+#### notFilter
+
+The `notFilter` method accepts a closure which allows you to construct a query inside a `not` LDAP filter:
+
+```php
+$query = $provider->search()->newQuery();
+
+// Creates the filter: (!(givenname=John)(sn=Doe))
+$results = $query->notFilter(function (Adldap\Query\Builder $q) {
+
+    $q->where('givenname', '=', 'John')
+      ->where('sn', '=', 'Doe');
+
+})->get();
+```
+
+The above query would return records that **do not** contain the first name `John` **or** the last name `Doe`.
+
+#### Complex Nesting
+
+The above methods `andFilter` / `orFilter` can be chained together and nested
+as many times as you'd like for larger complex queries:
+
+```php
+$query = $provider->search()->newQuery();
+
+$query = $query->orFilter(function (Adldap\Query\Builder $q) {
+    $q->where('givenname', '=', 'John')->where('sn', '=', 'Doe');
+})->andFilter(function (Adldap\Query\Builder $q) {
+    $q->where('department', '=', 'Accounting')->where('title', '=', 'Manager');
+})->getUnescapedQuery();
+
+echo $query; // Returns '(&(|(givenname=John)(sn=Doe))(&(department=Accounting)(title=Manager)))'
+```
+
+## Raw Filters
+
+> **Note**: Raw filters are not escaped. **Do not** accept user input into the raw filter method.
+
+Sometimes you might just want to add a raw filter without using the query builder.
+You can do so by using the `rawFilter()` method:
+
+```php
+$filter = '(samaccountname=jdoe)';
+
+$results = $search->rawFilter($filter)->get();
+
+// Or use an array
+$filters = [
+    '(samaccountname=jdoe)',
+    '(surname=Doe)',
+];
+
+$results = $search->rawFilter($filters)->get();
+
+// Or use multiple arguments
+$results = $search->rawFilter($filters[0], $filters[1])->get();
+
+// Multiple raw filters will be automatically wrapped into an `and` filter:
+$query = $search->getUnescapedQuery();
+
+echo $query; // Returns (&(samaccountname=jdoe)(surname=Doe))
+```
+
+## Sorting
+
+Sorting is really useful when your displaying tabular LDAP results. You can
+easily perform sorts on any LDAP attribute by using the `sortBy()` method:
+
+```php
+$results = $search->whereHas('cn')->sortBy('cn', 'asc')->get();
+```
+
+You can also sort paginated results:
+
+```php
+$results = $search->whereHas('cn')->sortBy('cn', 'asc')->paginate(25);
+```
+
+> **Note**: Sorting occurs *after* results are returned. This is due
+> to PHP not having the functionality of sorting records on
+> the server side before they are returned.
+
+## Paginating
+
+Paginating your search results will allow you to return more results than
+your LDAP cap (usually 1000) and display your results in pages.
+
+> **Note**: Calling `paginate()` will retrieve **all** records from your LDAP server for the current query.
+>
+> This **does not** operate the same way pagination occurs in a database. Pagination of
+> an LDAP query simply allows you to return a larger result set than your
+> LDAP servers configured maximum (usually 1000).
+>
+> The pagination object is simply a collection that allows you to iterate
+> through all the resulting records easily and intuitively.
+
+To perform this, call the `paginate()` method instead of the `get()` method:
+
+```php
+$recordsPerPage = 50;
+
+$currentPage = $_GET['page'];
+
+// This would retrieve all records from your LDAP server inside a new Adldap\Objects\Paginator instance.
+$paginator = $search->paginate($recordsPerPage, $currentPage);
+
+// Returns total number of pages, int
+$paginator->getPages();
+
+// Returns current page number, int
+$paginator->getCurrentPage();
+
+// Returns the amount of entries allowed per page, int
+$paginator->getPerPage();
+
+// Returns all of the results in the entire paginated result
+$paginator->getResults();
+
+// Returns the total amount of retrieved entries, int
+$paginator->count();
+
+// Iterate over the results like normal
+foreach($paginator as $result)
+{
+    echo $result->getCommonName();
+}
+```
+
+## Scopes
+
+Search scopes allow you to easily retrieve common models of a particular 'scope'.
+
+Each scope simply applies the required filters to the search object
+that (when executed) will only return the relevant models.
+
+Here is a list of all available scopes:
+
+```php
+// Retrieve all users (Adldap\Models\User).
+$results = $search->users()->get();
+
+// Retrieve all printers (Adldap\Models\Printer).
+$results = $search->printers()->get();
+
+// Retrieve all organizational units (Adldap\Models\OrganizationalUnit).
+$results = $search->ous()->get();
+
+// Retrieve all organizational units (Adldap\Models\OrganizationalUnit).
+$results = $search->organizations()->get();
+
+// Retrieve all groups (Adldap\Models\Group).
+$results = $search->groups()->get();
+
+// Retrieve all containers (Adldap\Models\Container).
+$results = $search->containers()->get();
+
+// Retrieve all contacts (Adldap\Models\Contact).
+$results = $search->contacts()->get();
+
+// Retrieve all computers (Adldap\Models\Computer).
+$results = $search->computers()->get();
+```
+
+## Base DN
+
+To set the base DN of your search you can use one of two methods:
+
+```php
+// Using the `in()` method:
+$results = $provider->search()->in('ou=Accounting,dc=acme,dc=org')->get();
+
+// Using the `setDn()` method:
+$results = $provider->search()->setDn('ou=Accounting,dc=acme,dc=org')->get();
+
+// You can also include `in()` with the scope
+$results = $provider->search()->organizations()->in('ou=Accounting,dc=acme,dc=org')->get()
+
+```
+
+Either option will return the same results. Use which ever method you prefer to be more readable.
+
+## Search Options
+
+#### Recursive
+
+By default, all searches performed are recursive.
+
+If you'd like to disable recursive search and perform a single level search, use the `listing()` method:
+
+```php
+$result = $provider->search()->listing()->get();
+```
+
+This would perform an `ldap_listing()` instead of an `ldap_search()`.
+
+#### Read
+
+If you'd like to perform a read instead of a listing or a recursive search, use the `read()` method:
+
+```php
+$result = $provider->search()->read()->where('objectClass', '*')->get();
+```
+
+This would perform an `ldap_read()` instead of an `ldap_listing()` or an `ldap_search()`.
+
+> **Note**: Performing a `read()` will always return *one* record in your result.
+
+#### Raw
+
+If you'd like to retrieve the raw LDAP results, use the `raw()` method:
+
+```php
+$rawResults = $provider->search()->raw()->where('cn', '=', 'John Doe')->get();
+
+var_dump($rawResults); // Returns an array
+```
+
+## Retrieving the ran query
+
+If you'd like to retrieve the current query to save or run it at another
+time, use the `getQuery()` method on the query builder.
+
+This will return the escaped filter.
+
+```php
+$query = $provider->search()->where('cn', '=', 'John Doe')->getQuery();
+
+echo $query; // Returns '(cn=\4a\6f\68\6e\20\44\6f\65)'
+```
+
+To retrieve the unescaped filter, call the `getUnescapedQuery()` method:
+
+```php
+$query = $provider->search()->where('cn', '=', 'John Doe')->getUnescapedQuery();
+
+echo $query; // Returns '(cn=John Doe)'
+```
+
+Now that you know how to search your directory, lets move onto [creating / modifying LDAP records](models/model.md).
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/setup.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/setup.md
new file mode 100644
index 0000000..312165c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/setup.md
@@ -0,0 +1,552 @@
+# Setup
+
+## Configuration
+
+To configure your LDAP connections, you can use two methods:
+
+1. Using an array
+2. Using a `Adldap\Configuration\DomainConfiguration` object
+
+Either or will produce the same results. Use whichever you feel most comfortable with.
+
+### Using an array
+
+```php
+$config = [
+    'hosts' => [
+        'DC-01.corp.acme.org',
+    ],
+    '...'
+];
+```
+
+### Using a `DomainConfiguration` object
+
+```php
+// Setting options via first argument:
+$config = new Adldap\Configuration\DomainConfiguration([
+    'hosts' => [
+        'DC-01.corp.acme.org',
+    ],
+]);
+
+// Setting via the `set()` method:
+$config->set('hosts', [
+    'DC-01.corp.acme.org',
+]);
+```
+
+### Options
+
+#### Array Example With All Options
+
+```php
+// Create the configuration array.
+$config = [
+    // Mandatory Configuration Options
+    'hosts'            => ['corp-dc1.corp.acme.org', 'corp-dc2.corp.acme.org'],
+    'base_dn'          => 'dc=corp,dc=acme,dc=org',
+    'username'         => 'admin',
+    'password'         => 'password',
+
+    // Optional Configuration Options
+    'schema'           => Adldap\Schemas\ActiveDirectory::class,
+    'account_prefix'   => 'ACME-',
+    'account_suffix'   => '@acme.org',
+    'port'             => 389,
+    'follow_referrals' => false,
+    'use_ssl'          => false,
+    'use_tls'          => false,
+    'version'          => 3,
+    'timeout'          => 5,
+
+    // Custom LDAP Options
+    'custom_options'   => [
+        // See: http://php.net/ldap_set_option
+        LDAP_OPT_X_TLS_REQUIRE_CERT => LDAP_OPT_X_TLS_HARD
+    ]
+];
+```
+
+#### Required Options
+
+##### Hosts
+
+The hosts option is an array of IP addresses or hostnames located
+on your network that serve Active Directory.
+
+You insert as many servers or as little as you'd like depending on your forest (with the minimum of one of course).
+
+> **Note:** Do not append your port to your IP addresses or hostnames. Use the `port` configuration option instead.
+
+##### Base Distinguished Name
+
+The base distinguished name is the base distinguished name you'd like to perform operations on.
+
+An example base DN would be `DC=corp,DC=acme,DC=org`.
+
+If one is not defined, you will not retrieve any search results.
+
+> **Note**: Your base DN is **case insensitive**. You do not need to worry about incorrect casing.
+
+##### Username & Password
+
+To connect to your LDAP server, a username and password is required to be able to query and run operations on your server(s).
+
+You can use any account that has these permissions.
+
+> **Note**: To run administration level operations, such as resetting passwords,
+> this account **must** have permissions to do so on your directory.
+
+#### Optional Options
+
+##### Schema
+
+The schema option allows you to configure which directory you're connecting to.
+
+This is a somewhat optional, however this **must** be changed if you're connecting
+to an alternate LDAP variant such as OpenLDAP or FreeIPA.
+
+Below are available schemas:
+
+- `Adldap\Schemas\ActiveDirectory`
+- `Adldap\Schemas\OpenLDAP`
+- `Adldap\Schemas\FreeIPA`
+
+By default, this option is set to the `Adldap\Schemas\ActiveDirectory` schema.
+
+##### Account Prefix
+
+The account prefix option is a string to *prepend* to all usernames that go through the `Guard::attempt()` method.
+
+This option is just for convenience.
+
+It is usually not needed (if utilizing the account suffix), however the functionality is
+in place if you would like to only allow certain users with the specified prefix
+to login, or add a domain so your users do not have to specify one.
+
+##### Account Suffix
+
+The account suffix option is a string to *append* to all usernames that go
+through the `Adldap\Auth\Guard::attempt()` method.
+
+This option is just for convenience.
+
+An example use case for this would be inserting your LDAP users `userPrincipalName` suffix so you don't need to append it manually.
+
+For example, with a `account_suffix` in your configuration set to `@corp.acme.org`:
+
+```php
+$username = 'jdoe';
+$password = 'password';
+
+// Here, an `ldap_bind()` will be called with a username of 'jdoe@corp.acme.org`
+$provider->auth()->attempt($username, $password);
+```
+
+##### Port
+
+The port option is used for authenticating and binding to your LDAP server.
+
+The default ports are already used for non SSL and SSL connections (389 and 636).
+
+Only insert a port if your LDAP server uses a unique port.
+
+##### Follow Referrals
+
+The follow referrals option is a boolean to tell active directory to follow a referral to another server on your network if the server queried knows the information your asking for exists, but does not yet contain a copy of it locally.
+
+This option is defaulted to false.
+
+Disable this option if you're experiencing search / connectivity issues.
+
+For more information, visit: https://technet.microsoft.com/en-us/library/cc978014.aspx
+
+##### SSL & TLS
+
+These Boolean options enable an SSL or TLS connection to your LDAP server.
+
+Only **one** can be set to `true`. You must chose either or.
+
+> **Note**: You **must** enable SSL or TLS to reset passwords in ActiveDirectory.
+
+These options are definitely recommended if you have the ability to connect to your server securely.
+
+> **Note**: TLS is recommended over SSL, as SSL is now labelled as a depreciated mechanism for securely running LDAP operations.
+
+##### Version
+
+The LDAP version to use for your connection.
+
+Must be an integer and can either be `2` or `3`.
+
+##### Timeout
+
+The timeout option allows you to configure the amount of seconds to wait until
+your application receives a response from your LDAP server.
+
+The default is 5 seconds.
+
+##### Custom Options
+
+Arbitrary options can be set for the connection to fine-tune TLS and connection behavior.
+
+Please note that `LDAP_OPT_PROTOCOL_VERSION`, `LDAP_OPT_NETWORK_TIMEOUT` and `LDAP_OPT_REFERRALS` will be ignored if set.
+
+These are set above with the `version`, `timeout` and `follow_referrals` keys respectively.
+
+Valid options are listed in the [PHP documentation for ldap_set_option](http://php.net/ldap_set_option).
+
+## Getting Started
+
+Each LDAP connection you have will be contained inside the `Adldap` instance as its own **connection provider**.
+
+There are a couple of ways you can easily add each of your LDAP connections. Let's walk through them:
+
+**Using a configuration array:**
+```php
+$config = ['...'];
+
+$ad = new Adldap\Adldap();
+
+$ad->addProvider($config);
+
+// You can also specify the name of the
+// connection as the second argument:
+$ad->addProvider($config, 'connection-one');
+```
+
+**Using a DomainConfiguration object:**
+```php
+$ad = new Adldap\Adldap();
+
+$config = new Adldap\Configuration\DomainConfiguration(['...']);
+
+$ad->addProvider($config, 'connection-one');
+```
+
+**Using the constructor:**
+
+> **Note**: When inserting your configuration into a new `Adldap` instance, you
+> need to set a key for each connection. **This will be its connection name**.
+
+```php
+$connections = [
+    'connection1' => [
+        'hosts' => ['...'],
+    ],
+    'connection2' => [
+        'hosts' => ['...'],
+    ],
+];
+
+$ad = new Adldap\Adldap($connections);
+```
+
+## Connecting
+
+The easiest way to get connected is to call the `connect($name)` method on your `Adldap` instance.
+
+Its first argument accepts the name of your configured connection.
+
+This method will return you a connected **connection provider** when
+successful, and throw an exception when unsuccessful:
+
+```php
+$ad = new Adldap\Adldap();
+
+$config = ['...'];
+
+$connectionName = 'my-connection';
+
+$ad->addProvider($config, $connectionName);
+
+try {
+    $provider = $ad->connect($connectionName);
+
+    // Great, we're connected!
+} catch (Adldap\Auth\BindException $e) {
+    // Failed to connect.
+}
+```
+
+### Using an alternate username / password
+
+If you'd like to connect to your configured connection using a different username and password than your configuration, then simply provide them in the second and third arguments:
+
+```php
+$username = 'server-admin';
+$password = 'my-super-secret-password';
+
+$provider = $ad->connect($connectionName, $username, $password);
+```
+
+### Dynamically Connecting
+
+If you're like me and like chainable (fluent) API's in PHP, then dynamically connecting is a nice option to have.
+
+To dynamically connect, simply call any connection provider method on your `Adldap` instance.
+
+> **Note**: Your default connection will be used when dynamically connecting.
+> More on this below.
+
+Here's an example:
+
+```php
+$ad = new Adldap\Adldap();
+
+$ad->addProvider($config = ['...']);
+
+try {
+    $users = $ad->search()->users()->get();
+} catch (Adldap\Auth\BindException $e) {
+    // Failed to connect.
+}
+```
+
+### Anonymously Binding
+
+If you'd like to anonymously bind, set your `username` and `password` configuration to `null`:
+
+```php
+$ad = new Adldap\Adldap();
+
+$config = [
+    'username' => null,
+    'password' => null,
+];
+
+$ad->addProvider($config);
+
+try {
+    $provider = $ad->connect();
+
+    // ...
+} catch (BindException $e) {
+    // Failed.
+}
+```
+
+Or, manually bind your provider and don't pass in a `username` or `password` parameter:
+
+```php
+$config = [
+    'hosts' => ['...'],
+];
+
+$ad->addProvider($config);
+
+$provider = $ad->getDefaultProvider();
+
+try {
+    $provider->auth()->bind();
+
+    // Successfully bound.
+} catch (BindException $e) {
+    // Failed.
+}
+```
+
+### Setting a Default Connection
+
+Setting a default LDAP connection is used for dynamically connecting.
+
+To set your default connection, call the `setDefaultProvider($name)` method:
+
+```php
+$ad->setDefaultProvider('my-connection');
+
+$computers = $ad->search()->computers()->get();
+```
+
+## Authenticating
+
+If you're looking to authenticate (bind) users using your LDAP connection, call
+the `auth()->attempt()` method on your provider instance:
+
+```php
+$username = 'jdoe';
+$password = 'Password@1';
+
+try {
+    if ($provider->auth()->attempt($username, $password)) {
+        // Passed.
+    } else {
+        // Failed.
+    }
+} catch (Adldap\Auth\UsernameRequiredException $e) {
+    // The user didn't supply a username.
+} catch (Adldap\Auth\PasswordRequiredException $e) {
+    // The user didn't supply a password.
+}
+```
+
+If you'd like all LDAP operations during the same request to be ran under the
+authenticated user, pass in `true` into the last paramter:
+
+```php
+if ($provider->auth()->attempt($username, $password, $bindAsUser = true)) {
+    // Passed.
+} else {
+    // Failed.
+}
+```
+
+---
+
+Now that you've learned the basics of configuration and
+getting yourself connected, continue on to learn
+[how to search your LDAP directory](searching.md).
+
+## Using Other LDAP Servers (OpenLDAP / FreeIPA / etc.)
+
+Alternate LDAP server variants such as OpenLDAP or FreeIPA contain
+some different attribute names than ActiveDirectory.
+
+The Adldap2 schema offers an attribute map for each available LDAP attribute, and
+is completely configurable and customizable.
+
+If you're using an alternate LDAP server variant such as OpenLDAP or FreeIPA, you **must** change the default schema inside your configuration array. If you do not, you won't receive the correct model instances for results, and you won't be
+able to utilize some standard methods available on these models.
+
+By default, Adldap2 is configured to be used with **Microsoft ActiveDirectory**.
+
+When creating your configuration array, set your schema using the `schema` key:
+
+
+**Using configuration array:**
+```php
+$ad = new Adldap\Adldap();
+
+$config = [
+    '...',
+    'schema' => Adldap\Schemas\OpenLDAP::class
+];
+
+$ad->addProvider($config);
+```
+
+**Using configuration object:**
+```php
+$ad = new Adldap\Adldap();
+
+$config = new Adldap\Configuration\DomainConfiguration();
+
+$config->set('schema', Adldap\Schemas\OpenLDAP::class);
+
+$ad->addProvider($config);
+```
+
+Once you've set the schema of your connection provider, you can use the same API interacting with different LDAP servers.
+
+Continue onto the [searching](searching.md) documentation to learn how to begin querying your LDAP server(s).
+
+## Using G-Suite Secure LDAP Service
+
+G-Suite LDAP service only uses client certificates and no username + password, make sure yo match base_dn with your domian.
+
+```php
+$ad = new \Adldap\Adldap();
+
+// Create a configuration array.
+$config = [  
+    'hosts'    => ['ldap.google.com'],
+    'base_dn'  => 'dc=your-domain,dc=com',
+    'use_tls' => true,
+    'version' => 3,
+    'schema' => Adldap\Schemas\GSuite::class,
+    'custom_options' => [
+        LDAP_OPT_X_TLS_CERTFILE => 'Google_2023_02_05_35779.crt',
+        LDAP_OPT_X_TLS_KEYFILE => 'Google_2023_02_05_35779.key', 
+    ]
+];
+
+$ad->addProvider($config);
+
+try {
+    $provider = $ad->connect();
+    
+    $results = $provider->search()->ous()->get();
+    
+    echo 'OUs:'."\r\n";
+    echo '==============='."\r\n";
+    foreach($results as $ou) {
+        echo $ou->getDn()."\r\n";
+    }
+    
+    echo "\r\n";
+    
+    $results = $provider->search()->users()->get();
+    
+    echo 'Users:'."\r\n";
+    echo '==============='."\r\n";
+    foreach($results as $user) {
+        
+        echo $user->getAccountName()."\r\n";
+    }
+    
+    echo "\r\n";
+    
+    $results = $provider->search()->groups()->get();
+    
+    echo 'Groups:'."\r\n";
+    echo '==============='."\r\n";
+    foreach($results as $group) {
+        echo $group->getCommonName().' | '.$group->getDisplayName()."\r\n";
+    }
+
+} catch (\Adldap\Auth\BindException $e) {
+
+    echo 'Error: '.$e->getMessage()."\r\n";
+}
+```
+
+## Raw Operations
+
+### Introduction
+
+If you want to connect to your LDAP server without utilizing Adldap's models (old fashion way), and want to get back the data in a raw format you can easily do so.
+
+If you call `getConnection()` on your connected provider instance, you can perform all LDAP functions on a container class that encapsulates all of PHP's LDAP methods.
+
+You can view all methods avaialble by browsing the LDAP class [here](https://github.com/Adldap2/Adldap2/blob/master/src/Connections/Ldap.php).
+
+Now for some examples:
+
+### Examples
+
+```php
+$ad = new Adldap\Adldap();
+
+$config = ['...'];
+
+$ad->addProvider($config);
+
+$provider = $ad->connect();
+
+$rawConnection = $provider->getConnection();
+
+// Performing a raw search.
+$result = $rawConnection->search($basedn = 'dc=corp,dc=acme,dc=org', $filter = "cn=johndoe", $selectedAttributes = ['cn', 'department']);
+
+$dn = "cn=John Smith,ou=Wizards,dc=example,dc=com";
+
+// Adding a new LDAP record.
+$result = $rawConnection->add($dn, $entry);
+
+// Batch modifying an LDAP record.
+$modifs = [
+    [
+        "attrib"  => "telephoneNumber",
+        "modtype" => LDAP_MODIFY_BATCH_ADD,
+        "values"  => ["+1 555 555 1717"],
+    ],
+];
+
+$result = $rawConnection->modifyBatch($dn, $modifs);
+
+// Deleting an LDAP record.
+$result = $rawConnection->delete($dn);
+
+// .. etc
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/troubleshooting.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/troubleshooting.md
new file mode 100644
index 0000000..c1e9f2a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/docs/troubleshooting.md
@@ -0,0 +1,122 @@
+# Troubleshooting
+
+#### Creating and Setting a Users Password
+
+To set a users password when you've created a new one, you need to enable their account, **then** set their password.
+
+For example:
+
+```php
+// Construct a new user instance.
+$user = $provider->make()->user();
+
+// Set the user profile details.
+$user->setAccountName('jdoe');
+$user->setFirstName('John');
+$user->setLastName('Doe');
+$user->setCompany('ACME');
+$user->setEmail('jdoe@acme.com');
+
+// Save the new user.
+if ($user->save()) {
+    // Enable the new user (using user account control).
+    $user->setUserAccountControl(512);
+
+    // Set new user password
+    $user->setPassword('Password123');
+
+    // Save the user.
+    if($user->save()) {
+        // The password was saved successfully.
+    }
+}
+```
+
+#### Determining and Troubleshooting a Binding Failure
+
+> **Note**: The below guide is using ActiveDirectory. Your mileage will vary using other LDAP distributions.
+
+To determine the reason why a bind attempt failed, you can use the event dispatcher to listen for
+the `Failed` event, and retrieve the errors that were returned from your LDAP server:
+
+```php
+use Adldap\Adldap;
+use Adldap\Auth\Events\Failed;
+
+$d = Adldap::getEventDispatcher();
+
+$d->listen(Failed::class, function (Failed $event) {
+    $conn = $event->connection;
+    
+    echo $conn->getLastError(); // 'Invalid credentials'
+    echo $conn->getDiagnosticMessage(); // '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 532, v3839'
+    
+    if ($error = $conn->getDetailedError()) {
+        $error->getErrorCode(); // 49
+        $error->getErrorMessage(); // 'Invalid credentials'
+        $error->getDiagnosticMessage(); // '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 532, v3839'
+    }
+});
+```
+
+The above diagnostic message can be parsed down further if needed. The error code after the 'data' string
+in the above message indicates several things about the bind failure. Here is a list:
+
+- 525 - user not found
+- 52e - invalid credentials
+- 530 - not permitted to logon at this time
+- 531 - not permitted to logon at this workstation
+- 532 - password expired
+- 533 - account disabled
+- 701 - account expired
+- 773 - user must reset password
+- 775 - user account locked
+
+From the example above, you can see that the authenticating account has their password expired, due to "532" error code.
+
+#### Retrieving All Records Inside a Group
+
+To retrieve all records inside a particular group (including nested groups), use the `rawFilter()` method:
+
+```php
+// The `memberof:1.2.840.113556.1.4.1941:` string indicates
+// that we want all nested group records as well.
+$filter = '(memberof:1.2.840.113556.1.4.1941:=CN=MyGroup,DC=example,DC=com)';
+
+$users = $provider->search()->rawFilter($filter)->get();
+```
+
+#### I'm connected but not getting any search results!
+
+The first thing you need to ensure is your `base_dn` in your configuration.
+
+Your `base_dn` needs to identical to the base DN on your domain. Even one mistyped character will result in no search results.
+
+If you also include an `ou` in your base DN (ex. `ou=Accounting,dc=corp,dc=acme,dc=org`), you will only receive results inside the `Accounting` OU.
+
+Once you're connected to your LDAP server, retrieve the Root DSE record.
+
+Here's a full example:
+
+```php
+$providers = [
+    'default' => [
+        'base_dn' => '',
+        '...',
+    ]
+];
+
+$ad = new Adldap\Adldap($providers);
+
+try {
+    $provider = $ad->connect();
+    
+    $root = $provider->search()->getRootDse();
+    
+    // ex. Returns 'dc=corp,dc=acme,dc=org'
+    die($root->getRootDomainNamingContext());
+
+} catch (Adldap\Auth\BindException $e) {
+    //
+}
+```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/license.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/license.md
new file mode 100644
index 0000000..c25dc60
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/license.md
@@ -0,0 +1,8 @@
+The MIT License (MIT)
+Copyright © Steve Bauman
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/phpunit.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/phpunit.xml
new file mode 100644
index 0000000..4f327fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/phpunit.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<phpunit backupGlobals="false"
+         backupStaticAttributes="false"
+         bootstrap="vendor/autoload.php"
+         colors="true"
+         convertErrorsToExceptions="true"
+         convertNoticesToExceptions="true"
+         convertWarningsToExceptions="true"
+         processIsolation="false"
+         stopOnFailure="false"
+        >
+    <testsuites>
+        <testsuite name="Adldap2 Test Suite">
+            <directory suffix="Test.php">./tests/</directory>
+        </testsuite>
+    </testsuites>
+    <filter>
+        <whitelist processUncoveredFilesFromWhitelist="true">
+            <directory suffix=".php">./src</directory>
+        </whitelist>
+    </filter>
+</phpunit>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/readme.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/readme.md
new file mode 100644
index 0000000..1311332
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/readme.md
@@ -0,0 +1,47 @@
+<p align="center">
+<strong>:wave: Hey there! Looking for something even easier to use for LDAP integration in your PHP applications?</strong>
+</br>
+<h3 align="center">
+ 🎉 Introducing <a href="https://github.com/DirectoryTree/LdapRecord" target="_blank" title="LdapRecord GitHub Repository">LdapRecord</a> 🎉
+</h3>
+</p>
+
+<p align="center">
+    <strong>
+        <a href="https://ldaprecord.com">LdapRecord</a> is the successor to Adldap2 - and comes with a ton of new features.
+    </strong> </br> Adldap2 will continue to be supported with bug fixes, <i>but will not receive new features.</i>
+</p>
+
+<p align="center">
+ <strong>
+ <a href="https://stevebauman.ca/why-ldap-record/">Read Why</a>
+ </strong>
+</p>
+
+<hr/>
+
+<h1 align="center">Adldap2</h1>
+
+<p align="center">
+    <a href="https://travis-ci.org/Adldap2/Adldap2"><img src="https://img.shields.io/travis/Adldap2/Adldap2.svg?style=flat-square"/></a>
+    <a href="https://scrutinizer-ci.com/g/Adldap2/Adldap2/?branch=master"><img src="https://img.shields.io/scrutinizer/g/adLDAP2/adLDAP2/master.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/dt/adldap2/adldap2.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/v/adldap2/adldap2.svg?style=flat-square"/></a>
+    <a href="https://packagist.org/packages/adldap2/adldap2"><img src="https://img.shields.io/packagist/l/adldap2/adldap2.svg?style=flat-square"/></a>
+</p>
+
+<p align="center">
+    Adldap2 is a PHP package that provides LDAP authentication and directory management tools using the <a href="https://en.wikipedia.org/wiki/Active_record_pattern">Active Record pattern</a>.
+</p>
+
+<h4 align="center">
+    <a href="http://adldap2.github.io/Adldap2/#/?id=quick-start">Quickstart</a>
+    <span> · </span>
+    <a href="http://adldap2.github.io/Adldap2/">Documentation</a>
+</h4>
+
+- **Up and running in minutes.** Effortlessly connect to your LDAP servers and start running queries & operations in a matter of minutes.
+
+- **Fluent query builder.** Building LDAP queries has never been so easy. Find the records you're looking for in a couple lines or less with a fluent interface.
+
+- **Supercharged Active Record.** Create and modify LDAP records with ease. All LDAP records are individual models. Simply modify the attributes on the model and save it to persist the changes to your LDAP server.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Adldap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Adldap.php
new file mode 100644
index 0000000..5e60697
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Adldap.php
@@ -0,0 +1,194 @@
+<?php
+
+namespace Adldap;
+
+use Adldap\Log\EventLogger;
+use Adldap\Connections\Ldap;
+use InvalidArgumentException;
+use Adldap\Log\LogsInformation;
+use Adldap\Connections\Provider;
+use Adldap\Events\DispatchesEvents;
+use Adldap\Connections\ProviderInterface;
+use Adldap\Connections\ConnectionInterface;
+use Adldap\Configuration\DomainConfiguration;
+
+class Adldap implements AdldapInterface
+{
+    use DispatchesEvents;
+    use LogsInformation;
+    /**
+     * The default provider name.
+     *
+     * @var string
+     */
+    protected $default = 'default';
+
+    /**
+     * The connection providers.
+     *
+     * @var array
+     */
+    protected $providers = [];
+
+    /**
+     * The events to register listeners for during initialization.
+     *
+     * @var array
+     */
+    protected $listen = [
+        'Adldap\Auth\Events\*',
+        'Adldap\Query\Events\*',
+        'Adldap\Models\Events\*',
+    ];
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct(array $providers = [])
+    {
+        foreach ($providers as $name => $config) {
+            $this->addProvider($config, $name);
+        }
+
+        if ($default = key($providers)) {
+            $this->setDefaultProvider($default);
+        }
+
+        $this->initEventLogger();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function addProvider($config, $name = 'default', ConnectionInterface $connection = null)
+    {
+        if ($this->isValidConfig($config)) {
+            $config = new Provider($config, $connection ?? new Ldap($name));
+        }
+
+        if ($config instanceof ProviderInterface) {
+            $this->providers[$name] = $config;
+
+            return $this;
+        }
+
+        throw new InvalidArgumentException(
+            "You must provide a configuration array or an instance of Adldap\Connections\ProviderInterface."
+        );
+    }
+
+    /**
+     * Determines if the given config is valid.
+     *
+     * @param mixed $config
+     *
+     * @return bool
+     */
+    protected function isValidConfig($config)
+    {
+        return is_array($config) || $config instanceof DomainConfiguration;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getProviders()
+    {
+        return $this->providers;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getProvider($name)
+    {
+        if (array_key_exists($name, $this->providers)) {
+            return $this->providers[$name];
+        }
+
+        throw new AdldapException("The connection provider '$name' does not exist.");
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setDefaultProvider($name = 'default')
+    {
+        if ($this->getProvider($name) instanceof ProviderInterface) {
+            $this->default = $name;
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDefaultProvider()
+    {
+        return $this->getProvider($this->default);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function removeProvider($name)
+    {
+        unset($this->providers[$name]);
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function connect($name = null, $username = null, $password = null)
+    {
+        $provider = $name ? $this->getProvider($name) : $this->getDefaultProvider();
+
+        return $provider->connect($username, $password);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __call($method, $parameters)
+    {
+        $provider = $this->getDefaultProvider();
+        
+        if (! $provider->getConnection()->isBound()) {
+            $provider->connect();
+        }
+
+        return call_user_func_array([$provider, $method], $parameters);
+    }
+
+    /**
+     * Initializes the event logger.
+     *
+     * @return void
+     */
+    public function initEventLogger()
+    {
+        $dispatcher = static::getEventDispatcher();
+
+        $logger = $this->newEventLogger();
+
+        // We will go through each of our event wildcards and register their listener.
+        foreach ($this->listen as $event) {
+            $dispatcher->listen($event, function ($eventName, $events) use ($logger) {
+                foreach ($events as $event) {
+                    $logger->log($event);
+                }
+            });
+        }
+    }
+
+    /**
+     * Returns a new event logger instance.
+     *
+     * @return EventLogger
+     */
+    protected function newEventLogger()
+    {
+        return new EventLogger(static::getLogger());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapException.php
new file mode 100644
index 0000000..0939cac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapException.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap;
+
+class AdldapException extends \Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapInterface.php
new file mode 100644
index 0000000..9e1818f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/AdldapInterface.php
@@ -0,0 +1,91 @@
+<?php
+
+namespace Adldap;
+
+use Adldap\Connections\ProviderInterface;
+use Adldap\Connections\ConnectionInterface;
+
+interface AdldapInterface
+{
+    /**
+     * Add a provider by the specified name.
+     *
+     * @param mixed               $configuration
+     * @param string              $name
+     * @param ConnectionInterface $connection
+     *
+     * @throws \InvalidArgumentException When an invalid type is given as the configuration argument.
+     *
+     * @return $this
+     */
+    public function addProvider($configuration, $name, ConnectionInterface $connection = null);
+
+    /**
+     * Returns all of the connection providers.
+     *
+     * @return array
+     */
+    public function getProviders();
+
+    /**
+     * Retrieves a Provider using its specified name.
+     *
+     * @param string $name
+     *
+     * @throws AdldapException When the specified provider does not exist.
+     *
+     * @return ProviderInterface
+     */
+    public function getProvider($name);
+
+    /**
+     * Sets the default provider.
+     *
+     * @param string $name
+     *
+     * @throws AdldapException When the specified provider does not exist.
+     */
+    public function setDefaultProvider($name);
+
+    /**
+     * Retrieves the first default provider.
+     *
+     * @throws AdldapException When no default provider exists.
+     *
+     * @return ProviderInterface
+     */
+    public function getDefaultProvider();
+
+    /**
+     * Removes a provider by the specified name.
+     *
+     * @param string $name
+     *
+     * @return $this
+     */
+    public function removeProvider($name);
+
+    /**
+     * Connects to the specified provider.
+     *
+     * If no username and password is given, then the providers
+     * configured admin credentials are used.
+     *
+     * @param string|null $name
+     * @param string|null $username
+     * @param string|null $password
+     *
+     * @return ProviderInterface
+     */
+    public function connect($name = null, $username = null, $password = null);
+
+    /**
+     * Call methods upon the default provider dynamically.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/BindException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/BindException.php
new file mode 100644
index 0000000..aeef08b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/BindException.php
@@ -0,0 +1,45 @@
+<?php
+
+namespace Adldap\Auth;
+
+use Adldap\AdldapException;
+use Adldap\Connections\DetailedError;
+
+/**
+ * Class BindException.
+ *
+ * Thrown when binding to an LDAP connection fails.
+ */
+class BindException extends AdldapException
+{
+    /**
+     * The detailed LDAP error.
+     *
+     * @var DetailedError
+     */
+    protected $detailedError;
+
+    /**
+     * Sets the detailed error.
+     *
+     * @param DetailedError|null $error
+     *
+     * @return $this
+     */
+    public function setDetailedError(DetailedError $error = null)
+    {
+        $this->detailedError = $error;
+
+        return $this;
+    }
+
+    /**
+     * Returns the detailed error.
+     *
+     * @return DetailedError|null
+     */
+    public function getDetailedError()
+    {
+        return $this->detailedError;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Attempting.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Attempting.php
new file mode 100644
index 0000000..06eb839
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Attempting.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+class Attempting extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Binding.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Binding.php
new file mode 100644
index 0000000..aa52b4b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Binding.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+class Binding extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Bound.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Bound.php
new file mode 100644
index 0000000..5fc835d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Bound.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+class Bound extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Event.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Event.php
new file mode 100644
index 0000000..1dca6c7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Event.php
@@ -0,0 +1,73 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+use Adldap\Connections\ConnectionInterface;
+
+abstract class Event
+{
+    /**
+     * The connection that the username and password is being bound on.
+     *
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * The username that is being used for binding.
+     *
+     * @var string
+     */
+    protected $username;
+
+    /**
+     * The password that is being used for binding.
+     *
+     * @var string
+     */
+    protected $password;
+
+    /**
+     * Constructor.
+     *
+     * @param ConnectionInterface $connection
+     * @param string              $username
+     * @param string              $password
+     */
+    public function __construct(ConnectionInterface $connection, $username, $password)
+    {
+        $this->connection = $connection;
+        $this->username = $username;
+        $this->password = $password;
+    }
+
+    /**
+     * Returns the events connection.
+     *
+     * @return ConnectionInterface
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * Returns the authentication events username.
+     *
+     * @return string
+     */
+    public function getUsername()
+    {
+        return $this->username;
+    }
+
+    /**
+     * Returns the authentication events password.
+     *
+     * @return string
+     */
+    public function getPassword()
+    {
+        return $this->password;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Failed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Failed.php
new file mode 100644
index 0000000..e96746e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Failed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+class Failed extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Passed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Passed.php
new file mode 100644
index 0000000..56ece18
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Events/Passed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Auth\Events;
+
+class Passed extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Guard.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Guard.php
new file mode 100644
index 0000000..5a0ab4b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/Guard.php
@@ -0,0 +1,259 @@
+<?php
+
+namespace Adldap\Auth;
+
+use Exception;
+use Throwable;
+use Adldap\Auth\Events\Bound;
+use Adldap\Auth\Events\Failed;
+use Adldap\Auth\Events\Passed;
+use Adldap\Auth\Events\Binding;
+use Adldap\Auth\Events\Attempting;
+use Adldap\Events\DispatcherInterface;
+use Adldap\Connections\ConnectionInterface;
+use Adldap\Configuration\DomainConfiguration;
+
+/**
+ * Class Guard.
+ *
+ * Binds users to the current connection.
+ */
+class Guard implements GuardInterface
+{
+    /**
+     * The connection to bind to.
+     *
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * The domain configuration to utilize.
+     *
+     * @var DomainConfiguration
+     */
+    protected $configuration;
+
+    /**
+     * The event dispatcher.
+     *
+     * @var DispatcherInterface
+     */
+    protected $events;
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct(ConnectionInterface $connection, DomainConfiguration $configuration)
+    {
+        $this->connection = $connection;
+        $this->configuration = $configuration;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function attempt($username, $password, $bindAsUser = false)
+    {
+        $this->validateCredentials($username, $password);
+
+        $this->fireAttemptingEvent($username, $password);
+
+        try {
+            $this->bind(
+                $this->applyPrefixAndSuffix($username),
+                $password
+            );
+
+            $result = true;
+
+            $this->firePassedEvent($username, $password);
+        } catch (BindException $e) {
+            // We'll catch the BindException here to allow
+            // developers to use a simple if / else
+            // using the attempt method.
+            $result = false;
+        }
+
+        // If we're not allowed to bind as the user,
+        // we'll rebind as administrator.
+        if ($bindAsUser === false) {
+            // We won't catch any BindException here so we can
+            // catch rebind failures. However this shouldn't
+            // occur if our credentials are correct
+            // in the first place.
+            $this->bindAsAdministrator();
+        }
+
+        return $result;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function bind($username = null, $password = null)
+    {
+        $this->fireBindingEvent($username, $password);
+
+        try {
+            if (@$this->connection->bind($username, $password) === true) {
+                $this->fireBoundEvent($username, $password);
+            } else {
+                throw new Exception($this->connection->getLastError(), $this->connection->errNo());
+            }
+        } catch (Throwable $e) {
+            $this->fireFailedEvent($username, $password);
+
+            throw (new BindException($e->getMessage(), $e->getCode(), $e))
+                ->setDetailedError($this->connection->getDetailedError());
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function bindAsAdministrator()
+    {
+        $this->bind(
+            $this->configuration->get('username'),
+            $this->configuration->get('password')
+        );
+    }
+
+    /**
+     * Get the event dispatcher instance.
+     *
+     * @return DispatcherInterface
+     */
+    public function getDispatcher()
+    {
+        return $this->events;
+    }
+
+    /**
+     * Sets the event dispatcher instance.
+     *
+     * @param DispatcherInterface $dispatcher
+     *
+     * @return void
+     */
+    public function setDispatcher(DispatcherInterface $dispatcher)
+    {
+        $this->events = $dispatcher;
+    }
+
+    /**
+     * Applies the prefix and suffix to the given username.
+     *
+     * @param string $username
+     *
+     * @throws \Adldap\Configuration\ConfigurationException If account_suffix or account_prefix do not
+     *                                                      exist in the providers domain configuration
+     *
+     * @return string
+     */
+    protected function applyPrefixAndSuffix($username)
+    {
+        $prefix = $this->configuration->get('account_prefix');
+        $suffix = $this->configuration->get('account_suffix');
+
+        return $prefix.$username.$suffix;
+    }
+
+    /**
+     * Validates the specified username and password from being empty.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @throws PasswordRequiredException When the given password is empty.
+     * @throws UsernameRequiredException When the given username is empty.
+     */
+    protected function validateCredentials($username, $password)
+    {
+        if (empty($username)) {
+            // Check for an empty username.
+            throw new UsernameRequiredException('A username must be specified.');
+        }
+
+        if (empty($password)) {
+            // Check for an empty password.
+            throw new PasswordRequiredException('A password must be specified.');
+        }
+    }
+
+    /**
+     * Fire the attempting event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireAttemptingEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Attempting($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the passed event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function firePassedEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Passed($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the failed event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireFailedEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Failed($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the binding event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireBindingEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Binding($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the bound event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireBoundEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Bound($this->connection, $username, $password));
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/GuardInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/GuardInterface.php
new file mode 100644
index 0000000..e10da37
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/GuardInterface.php
@@ -0,0 +1,55 @@
+<?php
+
+namespace Adldap\Auth;
+
+use Adldap\Connections\ConnectionInterface;
+use Adldap\Configuration\DomainConfiguration;
+
+interface GuardInterface
+{
+    /**
+     * Constructor.
+     *
+     * @param ConnectionInterface $connection
+     * @param DomainConfiguration $configuration
+     */
+    public function __construct(ConnectionInterface $connection, DomainConfiguration $configuration);
+
+    /**
+     * Authenticates a user using the specified credentials.
+     *
+     * @param string $username   The users LDAP username.
+     * @param string $password   The users LDAP password.
+     * @param bool   $bindAsUser Whether or not to bind as the user.
+     *
+     * @throws \Adldap\Auth\BindException             When re-binding to your LDAP server fails.
+     * @throws \Adldap\Auth\UsernameRequiredException When username is empty.
+     * @throws \Adldap\Auth\PasswordRequiredException When password is empty.
+     *
+     * @return bool
+     */
+    public function attempt($username, $password, $bindAsUser = false);
+
+    /**
+     * Binds to the current connection using the inserted credentials.
+     *
+     * @param string|null $username
+     * @param string|null $password
+     *
+     * @throws \Adldap\Auth\BindException              If binding to the LDAP server fails.
+     * @throws \Adldap\Connections\ConnectionException If upgrading the connection to TLS fails
+     *
+     * @return void
+     */
+    public function bind($username = null, $password = null);
+
+    /**
+     * Binds to the current LDAP server using the
+     * configuration administrator credentials.
+     *
+     * @throws \Adldap\Auth\BindException When binding as your administrator account fails.
+     *
+     * @return void
+     */
+    public function bindAsAdministrator();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/PasswordRequiredException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/PasswordRequiredException.php
new file mode 100644
index 0000000..70a76b9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/PasswordRequiredException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Adldap\Auth;
+
+use Adldap\AdldapException;
+
+class PasswordRequiredException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/UsernameRequiredException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/UsernameRequiredException.php
new file mode 100644
index 0000000..4b48724
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Auth/UsernameRequiredException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Adldap\Auth;
+
+use Adldap\AdldapException;
+
+class UsernameRequiredException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/ConfigurationException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/ConfigurationException.php
new file mode 100644
index 0000000..af62ce4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/ConfigurationException.php
@@ -0,0 +1,16 @@
+<?php
+
+namespace Adldap\Configuration;
+
+use Adldap\AdldapException;
+
+/**
+ * Class ConfigurationException.
+ *
+ * Thrown when a configuration value does not exist, or a
+ * configuration value being set is not valid.
+ */
+class ConfigurationException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/DomainConfiguration.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/DomainConfiguration.php
new file mode 100644
index 0000000..f1e4fb6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/DomainConfiguration.php
@@ -0,0 +1,161 @@
+<?php
+
+namespace Adldap\Configuration;
+
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Connections\ConnectionInterface;
+
+/**
+ * Class DomainConfiguration.
+ *
+ * Contains an array of configuration options for a single LDAP connection.
+ */
+class DomainConfiguration
+{
+    /**
+     * The configuration options array.
+     *
+     * The default values for each key indicate the type of value it requires.
+     *
+     * @var array
+     */
+    protected $options = [
+        // An array of LDAP hosts.
+        'hosts' => [],
+
+        // The global LDAP operation timeout limit in seconds.
+        'timeout' => 5,
+
+        // The LDAP version to utilize.
+        'version' => 3,
+
+        // The port to use for connecting to your hosts.
+        'port' => ConnectionInterface::PORT,
+
+        // The schema to use for your LDAP connection.
+        'schema' => ActiveDirectory::class,
+
+        // The base distinguished name of your domain.
+        'base_dn' => '',
+
+        // The username to connect to your hosts with.
+        'username' => '',
+
+        // The password that is utilized with the above user.
+        'password' => '',
+
+        // The account prefix to use when authenticating users.
+        'account_prefix' => null,
+
+        // The account suffix to use when authenticating users.
+        'account_suffix' => null,
+
+        // Whether or not to use SSL when connecting to your hosts.
+        'use_ssl' => false,
+
+        // Whether or not to use TLS when connecting to your hosts.
+        'use_tls' => false,
+
+        // Whether or not follow referrals is enabled when performing LDAP operations.
+        'follow_referrals' => false,
+
+        // Custom LDAP options that you'd like to utilize.
+        'custom_options' => [],
+    ];
+
+    /**
+     * Constructor.
+     *
+     * @param array $options
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     */
+    public function __construct(array $options = [])
+    {
+        foreach ($options as $key => $value) {
+            $this->set($key, $value);
+        }
+    }
+
+    /**
+     * Sets a configuration option.
+     *
+     * Throws an exception if the specified option does
+     * not exist, or if it's an invalid type.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     */
+    public function set($key, $value)
+    {
+        if ($this->validate($key, $value)) {
+            $this->options[$key] = $value;
+        }
+    }
+
+    /**
+     * Returns the value for the specified configuration options.
+     *
+     * Throws an exception if the specified option does not exist.
+     *
+     * @param string $key
+     *
+     * @throws ConfigurationException When the option specified does not exist.
+     *
+     * @return mixed
+     */
+    public function get($key)
+    {
+        if ($this->has($key)) {
+            return $this->options[$key];
+        }
+
+        throw new ConfigurationException("Option {$key} does not exist.");
+    }
+
+    /**
+     * Checks if a configuration option exists.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function has($key)
+    {
+        return array_key_exists($key, $this->options);
+    }
+
+    /**
+     * Validates the new configuration option against its
+     * default value to ensure it's the correct type.
+     *
+     * If an invalid type is given, an exception is thrown.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     *
+     * @return bool
+     */
+    protected function validate($key, $value)
+    {
+        $default = $this->get($key);
+
+        if (is_array($default)) {
+            $validator = new Validators\ArrayValidator($key, $value);
+        } elseif (is_int($default)) {
+            $validator = new Validators\IntegerValidator($key, $value);
+        } elseif (is_bool($default)) {
+            $validator = new Validators\BooleanValidator($key, $value);
+        } elseif (class_exists($default)) {
+            $validator = new Validators\ClassValidator($key, $value);
+        } else {
+            $validator = new Validators\StringOrNullValidator($key, $value);
+        }
+
+        return $validator->validate();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ArrayValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ArrayValidator.php
new file mode 100644
index 0000000..ec5bdb0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ArrayValidator.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+use Adldap\Configuration\ConfigurationException;
+
+/**
+ * Class ArrayValidator.
+ *
+ * Validates that the configuration value is an array.
+ */
+class ArrayValidator extends Validator
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function validate()
+    {
+        if (!is_array($this->value)) {
+            throw new ConfigurationException("Option {$this->key} must be an array.");
+        }
+
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/BooleanValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/BooleanValidator.php
new file mode 100644
index 0000000..23b4846
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/BooleanValidator.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+use Adldap\Configuration\ConfigurationException;
+
+/**
+ * Class BooleanValidator.
+ *
+ * Validates that the configuration value is a boolean.
+ */
+class BooleanValidator extends Validator
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function validate()
+    {
+        if (!is_bool($this->value)) {
+            throw new ConfigurationException("Option {$this->key} must be a boolean.");
+        }
+
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ClassValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ClassValidator.php
new file mode 100644
index 0000000..924c35f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/ClassValidator.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+use Adldap\Configuration\ConfigurationException;
+
+class ClassValidator extends Validator
+{
+    /**
+     * Validates the configuration value.
+     *
+     * @throws ConfigurationException When the value given fails validation.
+     *
+     * @return bool
+     */
+    public function validate()
+    {
+        if (!class_exists($this->value)) {
+            throw new ConfigurationException("Option {$this->key} must be a valid class.");
+        }
+
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/IntegerValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/IntegerValidator.php
new file mode 100644
index 0000000..cd783c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/IntegerValidator.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+use Adldap\Configuration\ConfigurationException;
+
+/**
+ * Class IntegerValidator.
+ *
+ * Validates that the configuration value is an integer / number.
+ */
+class IntegerValidator extends Validator
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function validate()
+    {
+        if (!is_numeric($this->value)) {
+            throw new ConfigurationException("Option {$this->key} must be an integer.");
+        }
+
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/StringOrNullValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/StringOrNullValidator.php
new file mode 100644
index 0000000..717c952
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/StringOrNullValidator.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+use Adldap\Configuration\ConfigurationException;
+
+/**
+ * Class StringOrNullValidator.
+ *
+ * Validates that the configuration value is a string or null.
+ */
+class StringOrNullValidator extends Validator
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function validate()
+    {
+        if (is_string($this->value) || is_null($this->value)) {
+            return true;
+        }
+
+        throw new ConfigurationException("Option {$this->key} must be a string or null.");
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/Validator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/Validator.php
new file mode 100644
index 0000000..983c98c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Configuration/Validators/Validator.php
@@ -0,0 +1,46 @@
+<?php
+
+namespace Adldap\Configuration\Validators;
+
+/**
+ * Class Validator.
+ *
+ * Validates configuration values.
+ */
+abstract class Validator
+{
+    /**
+     * The configuration key under validation.
+     *
+     * @var string
+     */
+    protected $key;
+
+    /**
+     * The configuration value under validation.
+     *
+     * @var mixed
+     */
+    protected $value;
+
+    /**
+     * Constructor.
+     *
+     * @param string $key
+     * @param mixed  $value
+     */
+    public function __construct($key, $value)
+    {
+        $this->key = $key;
+        $this->value = $value;
+    }
+
+    /**
+     * Validates the configuration value.
+     *
+     * @throws \Adldap\Configuration\ConfigurationException When the value given fails validation.
+     *
+     * @return bool
+     */
+    abstract public function validate();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionException.php
new file mode 100644
index 0000000..d8004e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Adldap\Connections;
+
+use Adldap\AdldapException;
+
+class ConnectionException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionInterface.php
new file mode 100644
index 0000000..39ddc0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ConnectionInterface.php
@@ -0,0 +1,539 @@
+<?php
+
+namespace Adldap\Connections;
+
+/**
+ * The Connection interface used for making connections. Implementing
+ * this interface on connection classes helps unit and functional
+ * test classes that require a connection.
+ *
+ * Interface ConnectionInterface
+ */
+interface ConnectionInterface
+{
+    /**
+     * The SSL LDAP protocol string.
+     *
+     * @var string
+     */
+    const PROTOCOL_SSL = 'ldaps://';
+
+    /**
+     * The standard LDAP protocol string.
+     *
+     * @var string
+     */
+    const PROTOCOL = 'ldap://';
+
+    /**
+     * The LDAP SSL port number.
+     *
+     * @var string
+     */
+    const PORT_SSL = 636;
+
+    /**
+     * The standard LDAP port number.
+     *
+     * @var string
+     */
+    const PORT = 389;
+
+    /**
+     * Constructor.
+     *
+     * @param string|null $name The connection name.
+     */
+    public function __construct($name = null);
+
+    /**
+     * Returns true / false if the current connection instance is using SSL.
+     *
+     * @return bool
+     */
+    public function isUsingSSL();
+
+    /**
+     * Returns true / false if the current connection instance is using TLS.
+     *
+     * @return bool
+     */
+    public function isUsingTLS();
+
+    /**
+     * Returns true / false if the current connection is able to modify passwords.
+     *
+     * @return bool
+     */
+    public function canChangePasswords();
+
+    /**
+     * Returns true / false if the current connection is bound.
+     *
+     * @return bool
+     */
+    public function isBound();
+
+    /**
+     * Sets the current connection to use SSL.
+     *
+     * @param bool $enabled
+     *
+     * @return ConnectionInterface
+     */
+    public function ssl($enabled = true);
+
+    /**
+     * Sets the current connection to use TLS.
+     *
+     * @param bool $enabled
+     *
+     * @return ConnectionInterface
+     */
+    public function tls($enabled = true);
+
+    /**
+     * Returns the full LDAP host URL.
+     *
+     * Ex: ldap://192.168.1.1:386
+     *
+     * @return string|null
+     */
+    public function getHost();
+
+    /**
+     * Returns the connections name.
+     *
+     * @return string|null
+     */
+    public function getName();
+
+    /**
+     * Get the current connection.
+     *
+     * @return mixed
+     */
+    public function getConnection();
+
+    /**
+     * Retrieve the entries from a search result.
+     *
+     * @link http://php.net/manual/en/function.ldap-get-entries.php
+     *
+     * @param $searchResult
+     *
+     * @return mixed
+     */
+    public function getEntries($searchResult);
+
+    /**
+     * Returns the number of entries from a search result.
+     *
+     * @link http://php.net/manual/en/function.ldap-count-entries.php
+     *
+     * @param $searchResult
+     *
+     * @return int
+     */
+    public function countEntries($searchResult);
+
+    /**
+     * Compare value of attribute found in entry specified with DN.
+     *
+     * @link http://php.net/manual/en/function.ldap-compare.php
+     *
+     * @param string $dn
+     * @param string $attribute
+     * @param string $value
+     *
+     * @return mixed
+     */
+    public function compare($dn, $attribute, $value);
+
+    /**
+     * Retrieves the first entry from a search result.
+     *
+     * @link http://php.net/manual/en/function.ldap-first-entry.php
+     *
+     * @param $searchResult
+     *
+     * @return mixed
+     */
+    public function getFirstEntry($searchResult);
+
+    /**
+     * Retrieves the next entry from a search result.
+     *
+     * @link http://php.net/manual/en/function.ldap-next-entry.php
+     *
+     * @param $entry
+     *
+     * @return mixed
+     */
+    public function getNextEntry($entry);
+
+    /**
+     * Retrieves the ldap entry's attributes.
+     *
+     * @link http://php.net/manual/en/function.ldap-get-attributes.php
+     *
+     * @param $entry
+     *
+     * @return mixed
+     */
+    public function getAttributes($entry);
+
+    /**
+     * Retrieve the last error on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-error.php
+     *
+     * @return string
+     */
+    public function getLastError();
+
+    /**
+     * Return detailed information about an error.
+     *
+     * Returns false when there was a successful last request.
+     *
+     * Returns DetailedError when there was an error.
+     *
+     * @return DetailedError|null
+     */
+    public function getDetailedError();
+
+    /**
+     * Get all binary values from the specified result entry.
+     *
+     * @link http://php.net/manual/en/function.ldap-get-values-len.php
+     *
+     * @param $entry
+     * @param $attribute
+     *
+     * @return array
+     */
+    public function getValuesLen($entry, $attribute);
+
+    /**
+     * Sets an option on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-set-option.php
+     *
+     * @param int   $option
+     * @param mixed $value
+     *
+     * @return mixed
+     */
+    public function setOption($option, $value);
+
+    /**
+     * Sets options on the current connection.
+     *
+     * @param array $options
+     *
+     * @return mixed
+     */
+    public function setOptions(array $options = []);
+
+    /**
+     * Set a callback function to do re-binds on referral chasing.
+     *
+     * @link http://php.net/manual/en/function.ldap-set-rebind-proc.php
+     *
+     * @param callable $callback
+     *
+     * @return bool
+     */
+    public function setRebindCallback(callable $callback);
+
+    /**
+     * Connects to the specified hostname using the specified port.
+     *
+     * @link http://php.net/manual/en/function.ldap-start-tls.php
+     *
+     * @param string|array $hostname
+     * @param int          $port
+     *
+     * @return mixed
+     */
+    public function connect($hostname = [], $port = 389);
+
+    /**
+     * Starts a connection using TLS.
+     *
+     * @link http://php.net/manual/en/function.ldap-start-tls.php
+     *
+     * @throws ConnectionException If starting TLS fails.
+     *
+     * @return mixed
+     */
+    public function startTLS();
+
+    /**
+     * Binds to the current connection using the specified username and password.
+     * If sasl is true, the current connection is bound using SASL.
+     *
+     * @link http://php.net/manual/en/function.ldap-bind.php
+     *
+     * @param string $username
+     * @param string $password
+     * @param bool   $sasl
+     *
+     * @throws ConnectionException If starting TLS fails.
+     *
+     * @return bool
+     */
+    public function bind($username, $password, $sasl = false);
+
+    /**
+     * Closes the current connection.
+     *
+     * Returns false if no connection is present.
+     *
+     * @link http://php.net/manual/en/function.ldap-close.php
+     *
+     * @return bool
+     */
+    public function close();
+
+    /**
+     * Performs a search on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-search.php
+     *
+     * @param string $dn
+     * @param string $filter
+     * @param array  $fields
+     * @param bool   $onlyAttributes
+     * @param int    $size
+     * @param int    $time
+     *
+     * @return mixed
+     */
+    public function search($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0);
+
+    /**
+     * Reads an entry on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-read.php
+     *
+     * @param string $dn
+     * @param $filter
+     * @param array $fields
+     * @param bool  $onlyAttributes
+     * @param int   $size
+     * @param int   $time
+     *
+     * @return mixed
+     */
+    public function read($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0);
+
+    /**
+     * Performs a single level search on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-list.php
+     *
+     * @param string $dn
+     * @param string $filter
+     * @param array  $attributes
+     * @param bool   $onlyAttributes
+     * @param int    $size
+     * @param int    $time
+     *
+     * @return mixed
+     */
+    public function listing($dn, $filter, array $attributes, $onlyAttributes = false, $size = 0, $time = 0);
+
+    /**
+     * Adds an entry to the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-add.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @return bool
+     */
+    public function add($dn, array $entry);
+
+    /**
+     * Deletes an entry on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-delete.php
+     *
+     * @param string $dn
+     *
+     * @return bool
+     */
+    public function delete($dn);
+
+    /**
+     * Modify the name of an entry on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-rename.php
+     *
+     * @param string $dn
+     * @param string $newRdn
+     * @param string $newParent
+     * @param bool   $deleteOldRdn
+     *
+     * @return bool
+     */
+    public function rename($dn, $newRdn, $newParent, $deleteOldRdn = false);
+
+    /**
+     * Modifies an existing entry on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-modify.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @return bool
+     */
+    public function modify($dn, array $entry);
+
+    /**
+     * Batch modifies an existing entry on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-modify-batch.php
+     *
+     * @param string $dn
+     * @param array  $values
+     *
+     * @return mixed
+     */
+    public function modifyBatch($dn, array $values);
+
+    /**
+     * Add attribute values to current attributes.
+     *
+     * @link http://php.net/manual/en/function.ldap-mod-add.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @return mixed
+     */
+    public function modAdd($dn, array $entry);
+
+    /**
+     * Replaces attribute values with new ones.
+     *
+     * @link http://php.net/manual/en/function.ldap-mod-replace.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @return mixed
+     */
+    public function modReplace($dn, array $entry);
+
+    /**
+     * Delete attribute values from current attributes.
+     *
+     * @link http://php.net/manual/en/function.ldap-mod-del.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @return mixed
+     */
+    public function modDelete($dn, array $entry);
+
+    /**
+     * Send LDAP pagination control.
+     *
+     * @link http://php.net/manual/en/function.ldap-control-paged-result.php
+     *
+     * @param int    $pageSize
+     * @param bool   $isCritical
+     * @param string $cookie
+     *
+     * @return mixed
+     */
+    public function controlPagedResult($pageSize = 1000, $isCritical = false, $cookie = '');
+
+    /**
+     * Retrieve the LDAP pagination cookie.
+     *
+     * @link http://php.net/manual/en/function.ldap-control-paged-result-response.php
+     *
+     * @param $result
+     * @param string $cookie
+     *
+     * @return mixed
+     */
+    public function controlPagedResultResponse($result, &$cookie);
+
+    /**
+     * Frees up the memory allocated internally to store the result.
+     *
+     * @link https://www.php.net/manual/en/function.ldap-free-result.php
+     *
+     * @param resource $result
+     *
+     * @return bool
+     */
+    public function freeResult($result);
+
+    /**
+     * Returns the error number of the last command
+     * executed on the current connection.
+     *
+     * @link http://php.net/manual/en/function.ldap-errno.php
+     *
+     * @return int
+     */
+    public function errNo();
+
+    /**
+     * Returns the extended error string of the last command.
+     *
+     * @return string
+     */
+    public function getExtendedError();
+
+    /**
+     * Returns the extended error hex code of the last command.
+     *
+     * @return string|null
+     */
+    public function getExtendedErrorHex();
+
+    /**
+     * Returns the extended error code of the last command.
+     *
+     * @return string
+     */
+    public function getExtendedErrorCode();
+
+    /**
+     * Returns the error string of the specified
+     * error number.
+     *
+     * @link http://php.net/manual/en/function.ldap-err2str.php
+     *
+     * @param int $number
+     *
+     * @return string
+     */
+    public function err2Str($number);
+
+    /**
+     * Return the diagnostic Message.
+     *
+     * @return string
+     */
+    public function getDiagnosticMessage();
+
+    /**
+     * Extract the diagnostic code from the message.
+     *
+     * @param string $message
+     *
+     * @return string|bool
+     */
+    public function extractDiagnosticCode($message);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/DetailedError.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/DetailedError.php
new file mode 100644
index 0000000..d7554c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/DetailedError.php
@@ -0,0 +1,71 @@
+<?php
+
+namespace Adldap\Connections;
+
+class DetailedError
+{
+    /**
+     * The error code from ldap_errno.
+     *
+     * @var int|null
+     */
+    protected $errorCode;
+
+    /**
+     * The error message from ldap_error.
+     *
+     * @var string|null
+     */
+    protected $errorMessage;
+
+    /**
+     * The diagnostic message when retrieved after an ldap_error.
+     *
+     * @var string|null
+     */
+    protected $diagnosticMessage;
+
+    /**
+     * Constructor.
+     *
+     * @param int    $errorCode
+     * @param string $errorMessage
+     * @param string $diagnosticMessage
+     */
+    public function __construct($errorCode, $errorMessage, $diagnosticMessage)
+    {
+        $this->errorCode = $errorCode;
+        $this->errorMessage = $errorMessage;
+        $this->diagnosticMessage = $diagnosticMessage;
+    }
+
+    /**
+     * Returns the LDAP error code.
+     *
+     * @return int
+     */
+    public function getErrorCode()
+    {
+        return $this->errorCode;
+    }
+
+    /**
+     * Returns the LDAP error message.
+     *
+     * @return string
+     */
+    public function getErrorMessage()
+    {
+        return $this->errorMessage;
+    }
+
+    /**
+     * Returns the LDAP diagnostic message.
+     *
+     * @return string
+     */
+    public function getDiagnosticMessage()
+    {
+        return $this->diagnosticMessage;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Ldap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Ldap.php
new file mode 100644
index 0000000..2ce83fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Ldap.php
@@ -0,0 +1,545 @@
+<?php
+
+namespace Adldap\Connections;
+
+/**
+ * Class Ldap.
+ *
+ * A class that abstracts PHP's LDAP functions and stores the bound connection.
+ */
+class Ldap implements ConnectionInterface
+{
+    /**
+     * The connection name.
+     *
+     * @var string|null
+     */
+    protected $name;
+
+    /**
+     * The LDAP host that is currently connected.
+     *
+     * @var string|null
+     */
+    protected $host;
+
+    /**
+     * The active LDAP connection.
+     *
+     * @var resource
+     */
+    protected $connection;
+
+    /**
+     * The bound status of the connection.
+     *
+     * @var bool
+     */
+    protected $bound = false;
+
+    /**
+     * Whether the connection must be bound over SSL.
+     *
+     * @var bool
+     */
+    protected $useSSL = false;
+
+    /**
+     * Whether the connection must be bound over TLS.
+     *
+     * @var bool
+     */
+    protected $useTLS = false;
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct($name = null)
+    {
+        $this->name = $name;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isUsingSSL()
+    {
+        return $this->useSSL;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isUsingTLS()
+    {
+        return $this->useTLS;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isBound()
+    {
+        return $this->bound;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function canChangePasswords()
+    {
+        return $this->isUsingSSL() || $this->isUsingTLS();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function ssl($enabled = true)
+    {
+        $this->useSSL = $enabled;
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function tls($enabled = true)
+    {
+        $this->useTLS = $enabled;
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getHost()
+    {
+        return $this->host;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getName()
+    {
+        return $this->name;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getEntries($searchResults)
+    {
+        return ldap_get_entries($this->connection, $searchResults);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getFirstEntry($searchResults)
+    {
+        return ldap_first_entry($this->connection, $searchResults);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getNextEntry($entry)
+    {
+        return ldap_next_entry($this->connection, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getAttributes($entry)
+    {
+        return ldap_get_attributes($this->connection, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function countEntries($searchResults)
+    {
+        return ldap_count_entries($this->connection, $searchResults);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function compare($dn, $attribute, $value)
+    {
+        return ldap_compare($this->connection, $dn, $attribute, $value);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLastError()
+    {
+        return ldap_error($this->connection);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDetailedError()
+    {
+        // If the returned error number is zero, the last LDAP operation
+        // succeeded. We won't return a detailed error.
+        if ($number = $this->errNo()) {
+            ldap_get_option($this->connection, LDAP_OPT_DIAGNOSTIC_MESSAGE, $message);
+
+            return new DetailedError($number, $this->err2Str($number), $message);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getValuesLen($entry, $attribute)
+    {
+        return ldap_get_values_len($this->connection, $entry, $attribute);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setOption($option, $value)
+    {
+        return ldap_set_option($this->connection, $option, $value);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setOptions(array $options = [])
+    {
+        foreach ($options as $option => $value) {
+            $this->setOption($option, $value);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setRebindCallback(callable $callback)
+    {
+        return ldap_set_rebind_proc($this->connection, $callback);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function startTLS()
+    {
+        try {
+            return ldap_start_tls($this->connection);
+        } catch (\ErrorException $e) {
+            throw new ConnectionException($e->getMessage(), $e->getCode(), $e);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function connect($hosts = [], $port = 389)
+    {
+        $this->host = $this->getConnectionString($hosts, $this->getProtocol(), $port);
+
+        // Reset the bound status if reinitializing the connection.
+        $this->bound = false;
+
+        return $this->connection = ldap_connect($this->host);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function close()
+    {
+        $connection = $this->connection;
+
+        $result = is_resource($connection) ? ldap_close($connection) : false;
+
+        $this->bound = false;
+
+        return $result;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function search($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0)
+    {
+        return ldap_search($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function listing($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0)
+    {
+        return ldap_list($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function read($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0)
+    {
+        return ldap_read($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time);
+    }
+
+    /**
+     * Extract information from an LDAP result.
+     *
+     * @link https://www.php.net/manual/en/function.ldap-parse-result.php
+     *
+     * @param resource $result
+     * @param int      $errorCode
+     * @param string   $dn
+     * @param string   $errorMessage
+     * @param array    $referrals
+     * @param array    $serverControls
+     *
+     * @return bool
+     */
+    public function parseResult($result, &$errorCode, &$dn, &$errorMessage, &$referrals, &$serverControls = [])
+    {
+        return $this->supportsServerControlsInMethods() && !empty($serverControls) ?
+            ldap_parse_result($this->connection, $result, $errorCode, $dn, $errorMessage, $referrals, $serverControls) :
+            ldap_parse_result($this->connection, $result, $errorCode, $dn, $errorMessage, $referrals);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function bind($username, $password, $sasl = false)
+    {
+        // Prior to binding, we will upgrade our connectivity to TLS on our current
+        // connection and ensure we are not already bound before upgrading.
+        // This is to prevent subsequent upgrading on several binds.
+        if ($this->isUsingTLS() && !$this->isBound()) {
+            $this->startTLS();
+        }
+
+        if ($sasl) {
+            return $this->bound = ldap_sasl_bind($this->connection, null, null, 'GSSAPI');
+        }
+
+        return $this->bound = ldap_bind(
+            $this->connection,
+            $username,
+            html_entity_decode($password)
+        );
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function add($dn, array $entry)
+    {
+        return ldap_add($this->connection, $dn, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function delete($dn)
+    {
+        return ldap_delete($this->connection, $dn);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function rename($dn, $newRdn, $newParent, $deleteOldRdn = false)
+    {
+        return ldap_rename($this->connection, $dn, $newRdn, $newParent, $deleteOldRdn);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function modify($dn, array $entry)
+    {
+        return ldap_modify($this->connection, $dn, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function modifyBatch($dn, array $values)
+    {
+        return ldap_modify_batch($this->connection, $dn, $values);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function modAdd($dn, array $entry)
+    {
+        return ldap_mod_add($this->connection, $dn, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function modReplace($dn, array $entry)
+    {
+        return ldap_mod_replace($this->connection, $dn, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function modDelete($dn, array $entry)
+    {
+        return ldap_mod_del($this->connection, $dn, $entry);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function controlPagedResult($pageSize = 1000, $isCritical = false, $cookie = '')
+    {
+        return ldap_control_paged_result($this->connection, $pageSize, $isCritical, $cookie);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function controlPagedResultResponse($result, &$cookie)
+    {
+        return ldap_control_paged_result_response($this->connection, $result, $cookie);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function freeResult($result)
+    {
+        return ldap_free_result($result);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function errNo()
+    {
+        return ldap_errno($this->connection);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getExtendedError()
+    {
+        return $this->getDiagnosticMessage();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getExtendedErrorHex()
+    {
+        if (preg_match("/(?<=data\s).*?(?=\,)/", $this->getExtendedError(), $code)) {
+            return $code[0];
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getExtendedErrorCode()
+    {
+        return $this->extractDiagnosticCode($this->getExtendedError());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function err2Str($number)
+    {
+        return ldap_err2str($number);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDiagnosticMessage()
+    {
+        ldap_get_option($this->connection, LDAP_OPT_ERROR_STRING, $message);
+
+        return $message;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function extractDiagnosticCode($message)
+    {
+        preg_match('/^([\da-fA-F]+):/', $message, $matches);
+
+        return isset($matches[1]) ? $matches[1] : false;
+    }
+
+    /**
+     * Returns the LDAP protocol to utilize for the current connection.
+     *
+     * @return string
+     */
+    public function getProtocol()
+    {
+        return $this->isUsingSSL() ? $this::PROTOCOL_SSL : $this::PROTOCOL;
+    }
+
+    /**
+     * Determine if the current PHP version supports server controls.
+     *
+     * @return bool
+     */
+    public function supportsServerControlsInMethods()
+    {
+        return version_compare(PHP_VERSION, '7.3.0') >= 0;
+    }
+
+    /**
+     * Generates an LDAP connection string for each host given.
+     *
+     * @param string|array $hosts
+     * @param string       $protocol
+     * @param string       $port
+     *
+     * @return string
+     */
+    protected function getConnectionString($hosts, $protocol, $port)
+    {
+        // If we are using SSL and using the default port, we
+        // will override it to use the default SSL port.
+        if ($this->isUsingSSL() && $port == 389) {
+            $port = self::PORT_SSL;
+        }
+
+        // Normalize hosts into an array.
+        $hosts = is_array($hosts) ? $hosts : [$hosts];
+
+        $hosts = array_map(function ($host) use ($protocol, $port) {
+            return "{$protocol}{$host}:{$port}";
+        }, $hosts);
+
+        return implode(' ', $hosts);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Provider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Provider.php
new file mode 100644
index 0000000..c8db387
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/Provider.php
@@ -0,0 +1,291 @@
+<?php
+
+namespace Adldap\Connections;
+
+use Adldap\Adldap;
+use Adldap\Auth\Guard;
+use Adldap\Query\Cache;
+use InvalidArgumentException;
+use Adldap\Auth\GuardInterface;
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Schemas\SchemaInterface;
+use Psr\SimpleCache\CacheInterface;
+use Adldap\Models\Factory as ModelFactory;
+use Adldap\Query\Factory as SearchFactory;
+use Adldap\Configuration\DomainConfiguration;
+
+/**
+ * Class Provider.
+ *
+ * Contains the LDAP connection and domain configuration to
+ * instantiate factories for retrieving and creating
+ * LDAP records as well as authentication (binding).
+ */
+class Provider implements ProviderInterface
+{
+    /**
+     * The providers connection.
+     *
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * The providers configuration.
+     *
+     * @var DomainConfiguration
+     */
+    protected $configuration;
+
+    /**
+     * The providers schema.
+     *
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * The providers auth guard instance.
+     *
+     * @var GuardInterface
+     */
+    protected $guard;
+
+    /**
+     * The providers cache instance.
+     *
+     * @var Cache|null
+     */
+    protected $cache;
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct($configuration = [], ConnectionInterface $connection = null)
+    {
+        $this->setConfiguration($configuration)
+            ->setConnection($connection);
+    }
+
+    /**
+     * Does nothing. Implemented in order to remain backwards compatible.
+     *
+     * @deprecated since v10.3.0
+     */
+    public function __destruct()
+    {
+        //
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setConfiguration($configuration = [])
+    {
+        if (is_array($configuration)) {
+            $configuration = new DomainConfiguration($configuration);
+        }
+
+        if ($configuration instanceof DomainConfiguration) {
+            $this->configuration = $configuration;
+
+            $schema = $configuration->get('schema');
+
+            // We will update our schema here when our configuration is set.
+            $this->setSchema(new $schema());
+
+            return $this;
+        }
+
+        $class = DomainConfiguration::class;
+
+        throw new InvalidArgumentException(
+            "Configuration must be array or instance of $class"
+        );
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setConnection(ConnectionInterface $connection = null)
+    {
+        // We will create a standard connection if one isn't given.
+        $this->connection = $connection ?: new Ldap();
+
+        // Prepare the connection.
+        $this->prepareConnection();
+
+        // Instantiate the LDAP connection.
+        $this->connection->connect(
+            $this->configuration->get('hosts'),
+            $this->configuration->get('port')
+        );
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setSchema(SchemaInterface $schema = null)
+    {
+        $this->schema = $schema ?: new ActiveDirectory();
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setGuard(GuardInterface $guard)
+    {
+        $this->guard = $guard;
+
+        return $this;
+    }
+
+    /**
+     * Sets the cache store.
+     *
+     * @param CacheInterface $store
+     *
+     * @return $this
+     */
+    public function setCache(CacheInterface $store)
+    {
+        $this->cache = new Cache($store);
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getConfiguration()
+    {
+        return $this->configuration;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getSchema()
+    {
+        return $this->schema;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getGuard()
+    {
+        if (!$this->guard instanceof GuardInterface) {
+            $this->setGuard($this->getDefaultGuard($this->connection, $this->configuration));
+        }
+
+        return $this->guard;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDefaultGuard(ConnectionInterface $connection, DomainConfiguration $configuration)
+    {
+        $guard = new Guard($connection, $configuration);
+
+        $guard->setDispatcher(Adldap::getEventDispatcher());
+
+        return $guard;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function make()
+    {
+        return new ModelFactory(
+            $this->search()->newQuery()
+        );
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function search()
+    {
+        $factory = new SearchFactory(
+            $this->connection,
+            $this->schema,
+            $this->configuration->get('base_dn')
+        );
+
+        if ($this->cache) {
+            $factory->setCache($this->cache);
+        }
+
+        return $factory;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function auth()
+    {
+        return $this->getGuard();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function connect($username = null, $password = null)
+    {
+        // Get the default guard instance.
+        $guard = $this->getGuard();
+
+        if (is_null($username) && is_null($password)) {
+            // If both the username and password are null, we'll connect to the server
+            // using the configured administrator username and password.
+            $guard->bindAsAdministrator();
+        } else {
+            // Bind to the server with the specified username and password otherwise.
+            $guard->bind($username, $password);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Prepares the connection by setting configured parameters.
+     *
+     * @throws \Adldap\Configuration\ConfigurationException When configuration options requested do not exist
+     *
+     * @return void
+     */
+    protected function prepareConnection()
+    {
+        if ($this->configuration->get('use_ssl')) {
+            $this->connection->ssl();
+        } elseif ($this->configuration->get('use_tls')) {
+            $this->connection->tls();
+        }
+
+        $options = array_replace(
+            $this->configuration->get('custom_options'),
+            [
+                LDAP_OPT_PROTOCOL_VERSION => $this->configuration->get('version'),
+                LDAP_OPT_NETWORK_TIMEOUT  => $this->configuration->get('timeout'),
+                LDAP_OPT_REFERRALS        => $this->configuration->get('follow_referrals'),
+            ]
+        );
+
+        $this->connection->setOptions($options);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ProviderInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ProviderInterface.php
new file mode 100644
index 0000000..20749a7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Connections/ProviderInterface.php
@@ -0,0 +1,129 @@
+<?php
+
+namespace Adldap\Connections;
+
+use Adldap\Auth\GuardInterface;
+use Adldap\Schemas\SchemaInterface;
+use Adldap\Configuration\DomainConfiguration;
+
+interface ProviderInterface
+{
+    /**
+     * Constructor.
+     *
+     * @param array|DomainConfiguration $configuration
+     * @param ConnectionInterface       $connection
+     */
+    public function __construct($configuration, ConnectionInterface $connection);
+
+    /**
+     * Returns the current connection instance.
+     *
+     * @return ConnectionInterface
+     */
+    public function getConnection();
+
+    /**
+     * Returns the current configuration instance.
+     *
+     * @return DomainConfiguration
+     */
+    public function getConfiguration();
+
+    /**
+     * Returns the current Guard instance.
+     *
+     * @return \Adldap\Auth\Guard
+     */
+    public function getGuard();
+
+    /**
+     * Returns a new default Guard instance.
+     *
+     * @param ConnectionInterface $connection
+     * @param DomainConfiguration $configuration
+     *
+     * @return \Adldap\Auth\Guard
+     */
+    public function getDefaultGuard(ConnectionInterface $connection, DomainConfiguration $configuration);
+
+    /**
+     * Sets the current connection.
+     *
+     * @param ConnectionInterface $connection
+     *
+     * @return $this
+     */
+    public function setConnection(ConnectionInterface $connection = null);
+
+    /**
+     * Sets the current configuration.
+     *
+     * @param DomainConfiguration|array $configuration
+     *
+     * @throws \Adldap\Configuration\ConfigurationException
+     */
+    public function setConfiguration($configuration = []);
+
+    /**
+     * Sets the current LDAP attribute schema.
+     *
+     * @param SchemaInterface|null $schema
+     *
+     * @return $this
+     */
+    public function setSchema(SchemaInterface $schema = null);
+
+    /**
+     * Returns the current LDAP attribute schema.
+     *
+     * @return SchemaInterface
+     */
+    public function getSchema();
+
+    /**
+     * Sets the current Guard instance.
+     *
+     * @param GuardInterface $guard
+     *
+     * @return $this
+     */
+    public function setGuard(GuardInterface $guard);
+
+    /**
+     * Returns a new Model factory instance.
+     *
+     * @return \Adldap\Models\Factory
+     */
+    public function make();
+
+    /**
+     * Returns a new Search factory instance.
+     *
+     * @return \Adldap\Query\Factory
+     */
+    public function search();
+
+    /**
+     * Returns a new Auth Guard instance.
+     *
+     * @return \Adldap\Auth\Guard
+     */
+    public function auth();
+
+    /**
+     * Connects and Binds to the Domain Controller.
+     *
+     * If no username or password is specified, then the
+     * configured administrator credentials are used.
+     *
+     * @param string|null $username
+     * @param string|null $password
+     *
+     * @throws \Adldap\Auth\BindException If binding to the LDAP server fails.
+     * @throws ConnectionException        If upgrading the connection to TLS fails
+     *
+     * @return ProviderInterface
+     */
+    public function connect($username = null, $password = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/Dispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/Dispatcher.php
new file mode 100644
index 0000000..f81f478
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/Dispatcher.php
@@ -0,0 +1,320 @@
+<?php
+
+namespace Adldap\Events;
+
+use Illuminate\Support\Arr;
+
+/**
+ * Class Dispatcher.
+ *
+ * Handles event listening and dispatching.
+ *
+ * This code was taken out of the Laravel Framework core
+ * with broadcasting and queuing omitted to remove
+ * an extra dependency that would be required.
+ *
+ * @author Taylor Otwell
+ *
+ * @see https://github.com/laravel/framework
+ */
+class Dispatcher implements DispatcherInterface
+{
+    /**
+     * The registered event listeners.
+     *
+     * @var array
+     */
+    protected $listeners = [];
+
+    /**
+     * The wildcard listeners.
+     *
+     * @var array
+     */
+    protected $wildcards = [];
+
+    /**
+     * The cached wildcard listeners.
+     *
+     * @var array
+     */
+    protected $wildcardsCache = [];
+
+    /**
+     * {@inheritdoc}
+     */
+    public function listen($events, $listener)
+    {
+        foreach ((array) $events as $event) {
+            if (strpos($event, '*') !== false) {
+                $this->setupWildcardListen($event, $listener);
+            } else {
+                $this->listeners[$event][] = $this->makeListener($listener);
+            }
+        }
+    }
+
+    /**
+     * Setup a wildcard listener callback.
+     *
+     * @param string $event
+     * @param mixed  $listener
+     *
+     * @return void
+     */
+    protected function setupWildcardListen($event, $listener)
+    {
+        $this->wildcards[$event][] = $this->makeListener($listener, true);
+
+        $this->wildcardsCache = [];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function hasListeners($eventName)
+    {
+        return isset($this->listeners[$eventName]) || isset($this->wildcards[$eventName]);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function until($event, $payload = [])
+    {
+        return $this->dispatch($event, $payload, true);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function fire($event, $payload = [], $halt = false)
+    {
+        return $this->dispatch($event, $payload, $halt);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dispatch($event, $payload = [], $halt = false)
+    {
+        // When the given "event" is actually an object we will assume it is an event
+        // object and use the class as the event name and this event itself as the
+        // payload to the handler, which makes object based events quite simple.
+        list($event, $payload) = $this->parseEventAndPayload(
+            $event,
+            $payload
+        );
+
+        $responses = [];
+
+        foreach ($this->getListeners($event) as $listener) {
+            $response = $listener($event, $payload);
+
+            // If a response is returned from the listener and event halting is enabled
+            // we will just return this response, and not call the rest of the event
+            // listeners. Otherwise we will add the response on the response list.
+            if ($halt && !is_null($response)) {
+                return $response;
+            }
+
+            // If a boolean false is returned from a listener, we will stop propagating
+            // the event to any further listeners down in the chain, else we keep on
+            // looping through the listeners and firing every one in our sequence.
+            if ($response === false) {
+                break;
+            }
+
+            $responses[] = $response;
+        }
+
+        return $halt ? null : $responses;
+    }
+
+    /**
+     * Parse the given event and payload and prepare them for dispatching.
+     *
+     * @param mixed $event
+     * @param mixed $payload
+     *
+     * @return array
+     */
+    protected function parseEventAndPayload($event, $payload)
+    {
+        if (is_object($event)) {
+            list($payload, $event) = [[$event], get_class($event)];
+        }
+
+        return [$event, Arr::wrap($payload)];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getListeners($eventName)
+    {
+        $listeners = $this->listeners[$eventName] ?? [];
+
+        $listeners = array_merge(
+            $listeners,
+            $this->wildcardsCache[$eventName] ?? $this->getWildcardListeners($eventName)
+        );
+
+        return class_exists($eventName, false)
+            ? $this->addInterfaceListeners($eventName, $listeners)
+            : $listeners;
+    }
+
+    /**
+     * Get the wildcard listeners for the event.
+     *
+     * @param string $eventName
+     *
+     * @return array
+     */
+    protected function getWildcardListeners($eventName)
+    {
+        $wildcards = [];
+
+        foreach ($this->wildcards as $key => $listeners) {
+            if ($this->wildcardContainsEvent($key, $eventName)) {
+                $wildcards = array_merge($wildcards, $listeners);
+            }
+        }
+
+        return $this->wildcardsCache[$eventName] = $wildcards;
+    }
+
+    /**
+     * Determine if the wildcard matches or contains the given event.
+     *
+     * This function is a direct excerpt from Laravel's Str::is().
+     *
+     * @param string $wildcard
+     * @param string $eventName
+     *
+     * @return bool
+     */
+    protected function wildcardContainsEvent($wildcard, $eventName)
+    {
+        $patterns = Arr::wrap($wildcard);
+
+        if (empty($patterns)) {
+            return false;
+        }
+
+        foreach ($patterns as $pattern) {
+            // If the given event is an exact match we can of course return true right
+            // from the beginning. Otherwise, we will translate asterisks and do an
+            // actual pattern match against the two strings to see if they match.
+            if ($pattern == $eventName) {
+                return true;
+            }
+
+            $pattern = preg_quote($pattern, '#');
+
+            // Asterisks are translated into zero-or-more regular expression wildcards
+            // to make it convenient to check if the strings starts with the given
+            // pattern such as "library/*", making any string check convenient.
+            $pattern = str_replace('\*', '.*', $pattern);
+
+            if (preg_match('#^'.$pattern.'\z#u', $eventName) === 1) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Add the listeners for the event's interfaces to the given array.
+     *
+     * @param string $eventName
+     * @param array  $listeners
+     *
+     * @return array
+     */
+    protected function addInterfaceListeners($eventName, array $listeners = [])
+    {
+        foreach (class_implements($eventName) as $interface) {
+            if (isset($this->listeners[$interface])) {
+                foreach ($this->listeners[$interface] as $names) {
+                    $listeners = array_merge($listeners, (array) $names);
+                }
+            }
+        }
+
+        return $listeners;
+    }
+
+    /**
+     * Register an event listener with the dispatcher.
+     *
+     * @param \Closure|string $listener
+     * @param bool            $wildcard
+     *
+     * @return \Closure
+     */
+    public function makeListener($listener, $wildcard = false)
+    {
+        if (is_string($listener)) {
+            return $this->createClassListener($listener, $wildcard);
+        }
+
+        return function ($event, $payload) use ($listener, $wildcard) {
+            if ($wildcard) {
+                return $listener($event, $payload);
+            }
+
+            return $listener(...array_values($payload));
+        };
+    }
+
+    /**
+     * Create a class based listener.
+     *
+     * @param string $listener
+     * @param bool   $wildcard
+     *
+     * @return \Closure
+     */
+    protected function createClassListener($listener, $wildcard = false)
+    {
+        return function ($event, $payload) use ($listener, $wildcard) {
+            if ($wildcard) {
+                return call_user_func($this->parseListenerCallback($listener), $event, $payload);
+            }
+
+            return call_user_func_array(
+                $this->parseListenerCallback($listener),
+                $payload
+            );
+        };
+    }
+
+    /**
+     * Parse the class listener into class and method.
+     *
+     * @param string $listener
+     *
+     * @return array
+     */
+    protected function parseListenerCallback($listener)
+    {
+        return strpos($listener, '@') !== false ?
+            explode('@', $listener, 2) :
+            [$listener, 'handle'];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function forget($event)
+    {
+        if (strpos($event, '*') !== false) {
+            unset($this->wildcards[$event]);
+        } else {
+            unset($this->listeners[$event]);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatcherInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatcherInterface.php
new file mode 100644
index 0000000..e014543
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatcherInterface.php
@@ -0,0 +1,75 @@
+<?php
+
+namespace Adldap\Events;
+
+interface DispatcherInterface
+{
+    /**
+     * Register an event listener with the dispatcher.
+     *
+     * @param string|array $events
+     * @param mixed        $listener
+     *
+     * @return void
+     */
+    public function listen($events, $listener);
+
+    /**
+     * Determine if a given event has listeners.
+     *
+     * @param string $eventName
+     *
+     * @return bool
+     */
+    public function hasListeners($eventName);
+
+    /**
+     * Fire an event until the first non-null response is returned.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     *
+     * @return array|null
+     */
+    public function until($event, $payload = []);
+
+    /**
+     * Fire an event and call the listeners.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     * @param bool          $halt
+     *
+     * @return mixed
+     */
+    public function fire($event, $payload = [], $halt = false);
+
+    /**
+     * Fire an event and call the listeners.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     * @param bool          $halt
+     *
+     * @return array|null
+     */
+    public function dispatch($event, $payload = [], $halt = false);
+
+    /**
+     * Get all of the listeners for a given event name.
+     *
+     * @param string $eventName
+     *
+     * @return array
+     */
+    public function getListeners($eventName);
+
+    /**
+     * Remove a set of listeners from the dispatcher.
+     *
+     * @param string $event
+     *
+     * @return void
+     */
+    public function forget($event);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatchesEvents.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatchesEvents.php
new file mode 100644
index 0000000..f530ba4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Events/DispatchesEvents.php
@@ -0,0 +1,51 @@
+<?php
+
+namespace Adldap\Events;
+
+trait DispatchesEvents
+{
+    /**
+     * The event dispatcher instance.
+     *
+     * @var DispatcherInterface
+     */
+    protected static $dispatcher;
+
+    /**
+     * Get the event dispatcher instance.
+     *
+     * @return DispatcherInterface
+     */
+    public static function getEventDispatcher()
+    {
+        // If no event dispatcher has been set, well instantiate and
+        // set one here. This will be our singleton instance.
+        if (!isset(static::$dispatcher)) {
+            static::setEventDispatcher(new Dispatcher());
+        }
+
+        return static::$dispatcher;
+    }
+
+    /**
+     * Set the event dispatcher instance.
+     *
+     * @param DispatcherInterface $dispatcher
+     *
+     * @return void
+     */
+    public static function setEventDispatcher(DispatcherInterface $dispatcher)
+    {
+        static::$dispatcher = $dispatcher;
+    }
+
+    /**
+     * Unset the event dispatcher instance.
+     *
+     * @return void
+     */
+    public static function unsetEventDispatcher()
+    {
+        static::$dispatcher = null;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/EventLogger.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/EventLogger.php
new file mode 100644
index 0000000..37d36b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/EventLogger.php
@@ -0,0 +1,141 @@
+<?php
+
+namespace Adldap\Log;
+
+use ReflectionClass;
+use Psr\Log\LoggerInterface;
+use Adldap\Auth\Events\Failed;
+use Adldap\Auth\Events\Event as AuthEvent;
+use Adldap\Models\Events\Event as ModelEvent;
+use Adldap\Query\Events\QueryExecuted as QueryEvent;
+
+class EventLogger
+{
+    /**
+     * The logger instance.
+     *
+     * @var LoggerInterface|null
+     */
+    protected $logger;
+
+    /**
+     * Constructor.
+     *
+     * @param LoggerInterface $logger
+     */
+    public function __construct(LoggerInterface $logger = null)
+    {
+        $this->logger = $logger;
+    }
+
+    /**
+     * Logs the given event.
+     *
+     * @param mixed $event
+     */
+    public function log($event)
+    {
+        if ($event instanceof AuthEvent) {
+            $this->auth($event);
+        } elseif ($event instanceof ModelEvent) {
+            $this->model($event);
+        } elseif ($event instanceof QueryEvent) {
+            $this->query($event);
+        }
+    }
+
+    /**
+     * Logs an authentication event.
+     *
+     * @param AuthEvent $event
+     *
+     * @return void
+     */
+    public function auth(AuthEvent $event)
+    {
+        if (isset($this->logger)) {
+            $connection = $event->getConnection();
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Connection: {$connection->getName()}"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - Username: {$event->getUsername()}";
+
+            $result = null;
+            $type = 'info';
+
+            if (is_a($event, Failed::class)) {
+                $type = 'warning';
+                $result = " - Reason: {$connection->getLastError()}";
+            }
+
+            $this->logger->$type($message.$result);
+        }
+    }
+
+    /**
+     * Logs a model event.
+     *
+     * @param ModelEvent $event
+     *
+     * @return void
+     */
+    public function model(ModelEvent $event)
+    {
+        if (isset($this->logger)) {
+            $model = $event->getModel();
+
+            $on = get_class($model);
+
+            $connection = $model->getQuery()->getConnection();
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Connection: {$connection->getName()}"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - On: {$on}"
+                ." - Distinguished Name: {$model->getDn()}";
+
+            $this->logger->info($message);
+        }
+    }
+
+    /**
+     * Logs a query event.
+     *
+     * @param QueryEvent $event
+     *
+     * @return void
+     */
+    public function query(QueryEvent $event)
+    {
+        if (isset($this->logger)) {
+            $query = $event->getQuery();
+
+            $connection = $query->getConnection();
+
+            $selected = implode(',', $query->getSelects());
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Connection: {$connection->getName()}"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - Base DN: {$query->getDn()}"
+                ." - Filter: {$query->getUnescapedQuery()}"
+                ." - Selected: ({$selected})"
+                ." - Time Elapsed: {$event->getTime()}";
+
+            $this->logger->info($message);
+        }
+    }
+
+    /**
+     * Returns the operational name of the given event.
+     *
+     * @param mixed $event
+     *
+     * @return string
+     */
+    protected function getOperationName($event)
+    {
+        return (new ReflectionClass($event))->getShortName();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/LogsInformation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/LogsInformation.php
new file mode 100644
index 0000000..d6f5191
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Log/LogsInformation.php
@@ -0,0 +1,47 @@
+<?php
+
+namespace Adldap\Log;
+
+use Psr\Log\LoggerInterface;
+
+trait LogsInformation
+{
+    /**
+     * The logger instance.
+     *
+     * @var LoggerInterface|null
+     */
+    protected static $logger;
+
+    /**
+     * Get the logger instance.
+     *
+     * @return LoggerInterface|null
+     */
+    public static function getLogger()
+    {
+        return static::$logger;
+    }
+
+    /**
+     * Set the logger instance.
+     *
+     * @param LoggerInterface $logger
+     *
+     * @return void
+     */
+    public static function setLogger(LoggerInterface $logger)
+    {
+        static::$logger = $logger;
+    }
+
+    /**
+     * Unset the logger instance.
+     *
+     * @return void
+     */
+    public static function unsetLogger()
+    {
+        static::$logger = null;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/AccountControl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/AccountControl.php
new file mode 100644
index 0000000..89fd8a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/AccountControl.php
@@ -0,0 +1,458 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+use ReflectionClass;
+
+/**
+ * The Account Control class.
+ *
+ * This class is for easily building a user account control value.
+ *
+ * @link https://support.microsoft.com/en-us/kb/305144
+ */
+class AccountControl
+{
+    const SCRIPT = 1;
+
+    const ACCOUNTDISABLE = 2;
+
+    const HOMEDIR_REQUIRED = 8;
+
+    const LOCKOUT = 16;
+
+    const PASSWD_NOTREQD = 32;
+
+    const ENCRYPTED_TEXT_PWD_ALLOWED = 128;
+
+    const TEMP_DUPLICATE_ACCOUNT = 256;
+
+    const NORMAL_ACCOUNT = 512;
+
+    const INTERDOMAIN_TRUST_ACCOUNT = 2048;
+
+    const WORKSTATION_TRUST_ACCOUNT = 4096;
+
+    const SERVER_TRUST_ACCOUNT = 8192;
+
+    const DONT_EXPIRE_PASSWORD = 65536;
+
+    const MNS_LOGON_ACCOUNT = 131072;
+
+    const SMARTCARD_REQUIRED = 262144;
+
+    const TRUSTED_FOR_DELEGATION = 524288;
+
+    const NOT_DELEGATED = 1048576;
+
+    const USE_DES_KEY_ONLY = 2097152;
+
+    const DONT_REQ_PREAUTH = 4194304;
+
+    const PASSWORD_EXPIRED = 8388608;
+
+    const TRUSTED_TO_AUTH_FOR_DELEGATION = 16777216;
+
+    const PARTIAL_SECRETS_ACCOUNT = 67108864;
+
+    /**
+     * Stores the values to be added together to
+     * build the user account control integer.
+     *
+     * @var array
+     */
+    protected $values = [];
+
+    /**
+     * Constructor.
+     *
+     * @param int $flag
+     */
+    public function __construct($flag = null)
+    {
+        if (!is_null($flag)) {
+            $this->apply($flag);
+        }
+    }
+
+    /**
+     * Get the value when casted to string.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->getValue();
+    }
+
+    /**
+     * Get the value when casted to int.
+     *
+     * @return int
+     */
+    public function __toInt()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Add the value to the account control values.
+     *
+     * @param int $value
+     *
+     * @return AccountControl
+     */
+    public function add($value)
+    {
+        // Use the value as a key so if the same value
+        // is used, it will always be overwritten
+        $this->values[$value] = $value;
+
+        return $this;
+    }
+
+    /**
+     * Remove the value from the account control.
+     *
+     * @param int $value
+     *
+     * @return $this
+     */
+    public function remove($value)
+    {
+        unset($this->values[$value]);
+
+        return $this;
+    }
+
+    /**
+     * Extract and apply the flag.
+     *
+     * @param int $flag
+     */
+    public function apply($flag)
+    {
+        $this->setValues($this->extractFlags($flag));
+    }
+
+    /**
+     * Determine if the current AccountControl object contains the given UAC flag(s).
+     *
+     * @param int $flag
+     *
+     * @return bool
+     */
+    public function has($flag)
+    {
+        // We'll extract the given flag into an array of possible flags, and
+        // see if our AccountControl object contains any of them.
+        $flagsUsed = array_intersect($this->extractFlags($flag), $this->values);
+
+        return in_array($flag, $flagsUsed);
+    }
+
+    /**
+     * The logon script will be run.
+     *
+     * @return AccountControl
+     */
+    public function runLoginScript()
+    {
+        return $this->add(static::SCRIPT);
+    }
+
+    /**
+     * The user account is locked.
+     *
+     * @return AccountControl
+     */
+    public function accountIsLocked()
+    {
+        return $this->add(static::LOCKOUT);
+    }
+
+    /**
+     * The user account is disabled.
+     *
+     * @return AccountControl
+     */
+    public function accountIsDisabled()
+    {
+        return $this->add(static::ACCOUNTDISABLE);
+    }
+
+    /**
+     * This is an account for users whose primary account is in another domain.
+     *
+     * This account provides user access to this domain, but not to any domain that
+     * trusts this domain. This is sometimes referred to as a local user account.
+     *
+     * @return AccountControl
+     */
+    public function accountIsTemporary()
+    {
+        return $this->add(static::TEMP_DUPLICATE_ACCOUNT);
+    }
+
+    /**
+     * This is a default account type that represents a typical user.
+     *
+     * @return AccountControl
+     */
+    public function accountIsNormal()
+    {
+        return $this->add(static::NORMAL_ACCOUNT);
+    }
+
+    /**
+     * This is a permit to trust an account for a system domain that trusts other domains.
+     *
+     * @return AccountControl
+     */
+    public function accountIsForInterdomain()
+    {
+        return $this->add(static::INTERDOMAIN_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is a computer account for a computer that is running Microsoft
+     * Windows NT 4.0 Workstation, Microsoft Windows NT 4.0 Server, Microsoft
+     * Windows 2000 Professional, or Windows 2000 Server and is a member of this domain.
+     *
+     * @return AccountControl
+     */
+    public function accountIsForWorkstation()
+    {
+        return $this->add(static::WORKSTATION_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is a computer account for a domain controller that is a member of this domain.
+     *
+     * @return AccountControl
+     */
+    public function accountIsForServer()
+    {
+        return $this->add(static::SERVER_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is an MNS logon account.
+     *
+     * @return AccountControl
+     */
+    public function accountIsMnsLogon()
+    {
+        return $this->add(static::MNS_LOGON_ACCOUNT);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) This account does
+     * not require Kerberos pre-authentication for logging on.
+     *
+     * @return AccountControl
+     */
+    public function accountDoesNotRequirePreAuth()
+    {
+        return $this->add(static::DONT_REQ_PREAUTH);
+    }
+
+    /**
+     * When this flag is set, it forces the user to log on by using a smart card.
+     *
+     * @return AccountControl
+     */
+    public function accountRequiresSmartCard()
+    {
+        return $this->add(static::SMARTCARD_REQUIRED);
+    }
+
+    /**
+     * (Windows Server 2008/Windows Server 2008 R2) The account is a read-only domain controller (RODC).
+     *
+     * This is a security-sensitive setting. Removing this setting from an RODC compromises security on that server.
+     *
+     * @return AccountControl
+     */
+    public function accountIsReadOnly()
+    {
+        return $this->add(static::PARTIAL_SECRETS_ACCOUNT);
+    }
+
+    /**
+     * The home folder is required.
+     *
+     * @return AccountControl
+     */
+    public function homeFolderIsRequired()
+    {
+        return $this->add(static::HOMEDIR_REQUIRED);
+    }
+
+    /**
+     * No password is required.
+     *
+     * @return AccountControl
+     */
+    public function passwordIsNotRequired()
+    {
+        return $this->add(static::PASSWD_NOTREQD);
+    }
+
+    /**
+     * The user cannot change the password. This is a permission on the user's object.
+     *
+     * For information about how to programmatically set this permission, visit the following link:
+     *
+     * @link http://msdn2.microsoft.com/en-us/library/aa746398.aspx
+     *
+     * @return AccountControl
+     */
+    public function passwordCannotBeChanged()
+    {
+        return $this->add(static::PASSWD_NOTREQD);
+    }
+
+    /**
+     * Represents the password, which should never expire on the account.
+     *
+     * @return AccountControl
+     */
+    public function passwordDoesNotExpire()
+    {
+        return $this->add(static::DONT_EXPIRE_PASSWORD);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) The user's password has expired.
+     *
+     * @return AccountControl
+     */
+    public function passwordIsExpired()
+    {
+        return $this->add(static::PASSWORD_EXPIRED);
+    }
+
+    /**
+     * The user can send an encrypted password.
+     *
+     * @return AccountControl
+     */
+    public function allowEncryptedTextPassword()
+    {
+        return $this->add(static::ENCRYPTED_TEXT_PWD_ALLOWED);
+    }
+
+    /**
+     * When this flag is set, the service account (the user or computer account)
+     * under which a service runs is trusted for Kerberos delegation.
+     *
+     * Any such service can impersonate a client requesting the service.
+     *
+     * To enable a service for Kerberos delegation, you must set this
+     * flag on the userAccountControl property of the service account.
+     *
+     * @return AccountControl
+     */
+    public function trustForDelegation()
+    {
+        return $this->add(static::TRUSTED_FOR_DELEGATION);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) The account is enabled for delegation.
+     *
+     * This is a security-sensitive setting. Accounts that have this option enabled
+     * should be tightly controlled. This setting lets a service that runs under the
+     * account assume a client's identity and authenticate as that user to other remote
+     * servers on the network.
+     *
+     * @return AccountControl
+     */
+    public function trustToAuthForDelegation()
+    {
+        return $this->add(static::TRUSTED_TO_AUTH_FOR_DELEGATION);
+    }
+
+    /**
+     * When this flag is set, the security context of the user is not delegated to a
+     * service even if the service account is set as trusted for Kerberos delegation.
+     *
+     * @return AccountControl
+     */
+    public function doNotTrustForDelegation()
+    {
+        return $this->add(static::NOT_DELEGATED);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) Restrict this principal to
+     * use only Data Encryption Standard (DES) encryption types for keys.
+     *
+     * @return AccountControl
+     */
+    public function useDesKeyOnly()
+    {
+        return $this->add(static::USE_DES_KEY_ONLY);
+    }
+
+    /**
+     * Get the account control value.
+     *
+     * @return int
+     */
+    public function getValue()
+    {
+        return array_sum($this->values);
+    }
+
+    /**
+     * Get the account control flag values.
+     *
+     * @return array
+     */
+    public function getValues()
+    {
+        return $this->values;
+    }
+
+    /**
+     * Set the account control values.
+     *
+     * @param array $flags
+     */
+    public function setValues(array $flags)
+    {
+        $this->values = $flags;
+    }
+
+    /**
+     * Get all possible account control flags.
+     *
+     * @return array
+     */
+    public function getAllFlags()
+    {
+        return (new ReflectionClass(__CLASS__))->getConstants();
+    }
+
+    /**
+     * Extracts the given flag into an array of flags used.
+     *
+     * @param int $flag
+     *
+     * @return array
+     */
+    public function extractFlags($flag)
+    {
+        $flags = [];
+
+        for ($i = 0; $i <= 26; $i++) {
+            if ((int) $flag & (1 << $i)) {
+                $flags[1 << $i] = 1 << $i;
+            }
+        }
+
+        return $flags;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/DistinguishedName.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/DistinguishedName.php
new file mode 100644
index 0000000..e610dbf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/DistinguishedName.php
@@ -0,0 +1,312 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+use Adldap\Utilities;
+
+class DistinguishedName
+{
+    /**
+     * The distinguished name components (in order of assembly).
+     *
+     * @var array
+     */
+    protected $components = [
+        'cn'  => [],
+        'uid' => [],
+        'ou'  => [],
+        'dc'  => [],
+        'o'   => [],
+    ];
+
+    /**
+     * Constructor.
+     *
+     * @param mixed $baseDn
+     */
+    public function __construct($baseDn = null)
+    {
+        $this->setBase($baseDn);
+    }
+
+    /**
+     * Returns the complete distinguished name.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->get();
+    }
+
+    /**
+     * Returns the complete distinguished name by assembling the RDN components.
+     *
+     * @return string
+     */
+    public function get()
+    {
+        $components = [];
+
+        // We'll go through each component type and assemble its RDN.
+        foreach ($this->components as $component => $values) {
+            array_map(function ($value) use ($component, &$components) {
+                // Assemble the component and escape the value.
+                $components[] = sprintf('%s=%s', $component, ldap_escape($value, '', 2));
+            }, $values);
+        }
+
+        return implode(',', $components);
+    }
+
+    /**
+     * Adds a domain component.
+     *
+     * @param string $dc
+     *
+     * @return DistinguishedName
+     */
+    public function addDc($dc)
+    {
+        $this->addComponent('dc', $dc);
+
+        return $this;
+    }
+
+    /**
+     * Removes a domain component.
+     *
+     * @param string $dc
+     *
+     * @return DistinguishedName
+     */
+    public function removeDc($dc)
+    {
+        $this->removeComponent('dc', $dc);
+
+        return $this;
+    }
+
+    /**
+     * Adds an organization name.
+     *
+     * @param string $o
+     *
+     * @return $this
+     */
+    public function addO($o)
+    {
+        $this->addComponent('o', $o);
+
+        return $this;
+    }
+
+    /**
+     * Removes an organization name.
+     *
+     * @param string $o
+     *
+     * @return DistinguishedName
+     */
+    public function removeO($o)
+    {
+        $this->removeComponent('o', $o);
+
+        return $this;
+    }
+
+    /**
+     * Add a user identifier.
+     *
+     * @param string $uid
+     *
+     * @return DistinguishedName
+     */
+    public function addUid($uid)
+    {
+        $this->addComponent('uid', $uid);
+
+        return $this;
+    }
+
+    /**
+     * Removes a user identifier.
+     *
+     * @param string $uid
+     *
+     * @return DistinguishedName
+     */
+    public function removeUid($uid)
+    {
+        $this->removeComponent('uid', $uid);
+
+        return $this;
+    }
+
+    /**
+     * Adds a common name.
+     *
+     * @param string $cn
+     *
+     * @return DistinguishedName
+     */
+    public function addCn($cn)
+    {
+        $this->addComponent('cn', $cn);
+
+        return $this;
+    }
+
+    /**
+     * Removes a common name.
+     *
+     * @param string $cn
+     *
+     * @return DistinguishedName
+     */
+    public function removeCn($cn)
+    {
+        $this->removeComponent('cn', $cn);
+
+        return $this;
+    }
+
+    /**
+     * Adds an organizational unit.
+     *
+     * @param string $ou
+     *
+     * @return DistinguishedName
+     */
+    public function addOu($ou)
+    {
+        $this->addComponent('ou', $ou);
+
+        return $this;
+    }
+
+    /**
+     * Removes an organizational unit.
+     *
+     * @param string $ou
+     *
+     * @return DistinguishedName
+     */
+    public function removeOu($ou)
+    {
+        $this->removeComponent('ou', $ou);
+
+        return $this;
+    }
+
+    /**
+     * Sets the base RDN of the distinguished name.
+     *
+     * @param string|DistinguishedName $base
+     *
+     * @return DistinguishedName
+     */
+    public function setBase($base)
+    {
+        // Typecast base to string in case we've been given
+        // an instance of the distinguished name object.
+        $base = (string) $base;
+
+        // If the base DN isn't null we'll try to explode it.
+        $base = Utilities::explodeDn($base, false) ?: [];
+
+        // Remove the count key from the exploded distinguished name.
+        unset($base['count']);
+
+        foreach ($base as $key => $rdn) {
+            // We'll break the RDN into pieces
+            $pieces = explode('=', $rdn) ?: [];
+
+            // If there's exactly 2 pieces, then we can work with it.
+            if (count($pieces) === 2) {
+                $attribute = ucfirst(strtolower($pieces[0]));
+
+                $method = 'add'.$attribute;
+
+                if (method_exists($this, $method)) {
+                    // We see what type of RDN it is and add each accordingly.
+                    call_user_func_array([$this, $method], [$pieces[1]]);
+                }
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns an array of all components in the distinguished name.
+     *
+     * If a component name is given ('cn', 'dc' for example) then
+     * the values of that component will be returned.
+     *
+     * @param string|null $component The component to retrieve values of
+     *
+     * @return array
+     */
+    public function getComponents($component = null)
+    {
+        if (is_null($component)) {
+            return $this->components;
+        }
+
+        $this->validateComponentExists($component);
+
+        return $this->components[$component];
+    }
+
+    /**
+     * Adds a component to the distinguished name.
+     *
+     * @param string $component
+     * @param string $value
+     *
+     * @throws \UnexpectedValueException When the given name does not exist.
+     */
+    protected function addComponent($component, $value)
+    {
+        $this->validateComponentExists($component);
+
+        // We need to make sure the value we're given isn't empty before adding it into our components.
+        if (!empty($value)) {
+            $this->components[$component][] = $value;
+        }
+    }
+
+    /**
+     * Removes the given value from the given component.
+     *
+     * @param string $component
+     * @param string $value
+     *
+     * @throws \UnexpectedValueException When the given component does not exist.
+     *
+     * @return void
+     */
+    protected function removeComponent($component, $value)
+    {
+        $this->validateComponentExists($component);
+
+        $this->components[$component] = array_diff($this->components[$component], [$value]);
+    }
+
+    /**
+     * Validates that the given component exists in the available components.
+     *
+     * @param string $component The name of the component to validate.
+     *
+     * @throws \UnexpectedValueException When the given component does not exist.
+     *
+     * @return void
+     */
+    protected function validateComponentExists($component)
+    {
+        if (!array_key_exists($component, $this->components)) {
+            throw new \UnexpectedValueException("The RDN component '$component' does not exist.");
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Guid.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Guid.php
new file mode 100644
index 0000000..6c6a600
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Guid.php
@@ -0,0 +1,157 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+use Adldap\Utilities;
+use InvalidArgumentException;
+
+class Guid
+{
+    /**
+     * The string GUID value.
+     *
+     * @var string
+     */
+    protected $value;
+
+    /**
+     * The guid structure in order by section to parse using substr().
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @link https://github.com/ldaptools/ldaptools
+     *
+     * @var array
+     */
+    protected $guidSections = [
+        [[-26, 2], [-28, 2], [-30, 2], [-32, 2]],
+        [[-22, 2], [-24, 2]],
+        [[-18, 2], [-20, 2]],
+        [[-16, 4]],
+        [[-12, 12]],
+    ];
+
+    /**
+     * The hexadecimal octet order based on string position.
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @link https://github.com/ldaptools/ldaptools
+     *
+     * @var array
+     */
+    protected $octetSections = [
+        [6, 4, 2, 0],
+        [10, 8],
+        [14, 12],
+        [16, 18, 20, 22, 24, 26, 28, 30],
+    ];
+
+    /**
+     * Determines if the specified GUID is valid.
+     *
+     * @param string $guid
+     *
+     * @return bool
+     */
+    public static function isValid($guid)
+    {
+        return Utilities::isValidGuid($guid);
+    }
+
+    /**
+     * Constructor.
+     *
+     * @param mixed $value
+     *
+     * @throws InvalidArgumentException
+     */
+    public function __construct($value)
+    {
+        if (static::isValid($value)) {
+            $this->value = $value;
+        } elseif ($value = $this->binaryGuidToString($value)) {
+            $this->value = $value;
+        } else {
+            throw new InvalidArgumentException('Invalid Binary / String GUID.');
+        }
+    }
+
+    /**
+     * Returns the string value of the GUID.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Get the binary representation of the GUID string.
+     *
+     * @return string
+     */
+    public function getBinary()
+    {
+        $data = '';
+
+        $guid = str_replace('-', '', $this->value);
+
+        foreach ($this->octetSections as $section) {
+            $data .= $this->parseSection($guid, $section, true);
+        }
+
+        return hex2bin($data);
+    }
+
+    /**
+     * Returns the string variant of a binary GUID.
+     *
+     * @param string $binary
+     *
+     * @return string|null
+     */
+    protected function binaryGuidToString($binary)
+    {
+        return Utilities::binaryGuidToString($binary);
+    }
+
+    /**
+     * Return the specified section of the hexadecimal string.
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @link https://github.com/ldaptools/ldaptools
+     *
+     * @param string $hex      The full hex string.
+     * @param array  $sections An array of start and length (unless octet is true, then length is always 2).
+     * @param bool   $octet    Whether this is for octet string form.
+     *
+     * @return string The concatenated sections in upper-case.
+     */
+    protected function parseSection($hex, array $sections, $octet = false)
+    {
+        $parsedString = '';
+
+        foreach ($sections as $section) {
+            $start = $octet ? $section : $section[0];
+
+            $length = $octet ? 2 : $section[1];
+
+            $parsedString .= substr($hex, $start, $length);
+        }
+
+        return $parsedString;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/MbString.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/MbString.php
new file mode 100644
index 0000000..54a0db8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/MbString.php
@@ -0,0 +1,80 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+class MbString
+{
+    /**
+     * Get the integer value of a specific character.
+     *
+     * @param $string
+     *
+     * @return int
+     */
+    public static function ord($string)
+    {
+        if (self::isLoaded()) {
+            $result = unpack('N', mb_convert_encoding($string, 'UCS-4BE', 'UTF-8'));
+
+            if (is_array($result) === true) {
+                return $result[1];
+            }
+        }
+
+        return ord($string);
+    }
+
+    /**
+     * Get the character for a specific integer value.
+     *
+     * @param $int
+     *
+     * @return string
+     */
+    public static function chr($int)
+    {
+        if (self::isLoaded()) {
+            return mb_convert_encoding(pack('n', $int), 'UTF-8', 'UTF-16BE');
+        }
+
+        return chr($int);
+    }
+
+    /**
+     * Split a string into its individual characters and return it as an array.
+     *
+     * @param string $value
+     *
+     * @return string[]
+     */
+    public static function split($value)
+    {
+        return preg_split('/(?<!^)(?!$)/u', $value);
+    }
+
+    /**
+     * Detects if the given string is UTF 8.
+     *
+     * @param $string
+     *
+     * @return string|false
+     */
+    public static function isUtf8($string)
+    {
+        if (self::isLoaded()) {
+            return mb_detect_encoding($string, 'UTF-8', $strict = true);
+        }
+
+        return $string;
+    }
+
+    /**
+     * Checks if the mbstring extension is enabled in PHP.
+     *
+     * @return bool
+     */
+    public static function isLoaded()
+    {
+        return extension_loaded('mbstring');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Sid.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Sid.php
new file mode 100644
index 0000000..a599e2c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/Sid.php
@@ -0,0 +1,101 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+use Adldap\Utilities;
+use InvalidArgumentException;
+
+class Sid
+{
+    /**
+     * The string SID value.
+     *
+     * @var string
+     */
+    protected $value;
+
+    /**
+     * Determines if the specified SID is valid.
+     *
+     * @param string $sid
+     *
+     * @return bool
+     */
+    public static function isValid($sid)
+    {
+        return Utilities::isValidSid($sid);
+    }
+
+    /**
+     * Constructor.
+     *
+     * @param mixed $value
+     *
+     * @throws InvalidArgumentException
+     */
+    public function __construct($value)
+    {
+        if (static::isValid($value)) {
+            $this->value = $value;
+        } elseif ($value = $this->binarySidToString($value)) {
+            $this->value = $value;
+        } else {
+            throw new InvalidArgumentException('Invalid Binary / String SID.');
+        }
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Returns the binary variant of the SID.
+     *
+     * @return string
+     */
+    public function getBinary()
+    {
+        $sid = explode('-', ltrim($this->value, 'S-'));
+
+        $level = (int) array_shift($sid);
+
+        $authority = (int) array_shift($sid);
+
+        $subAuthorities = array_map('intval', $sid);
+
+        $params = array_merge(
+            ['C2xxNV*', $level, count($subAuthorities), $authority],
+            $subAuthorities
+        );
+
+        return call_user_func_array('pack', $params);
+    }
+
+    /**
+     * Returns the string variant of a binary SID.
+     *
+     * @param string $binary
+     *
+     * @return string|null
+     */
+    protected function binarySidToString($binary)
+    {
+        return Utilities::binarySidToString($binary);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSProperty.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSProperty.php
new file mode 100644
index 0000000..aa3d63c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSProperty.php
@@ -0,0 +1,396 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+class TSProperty
+{
+    /**
+     * Nibble control values. The first value for each is if the nibble is <= 9, otherwise the second value is used.
+     */
+    const NIBBLE_CONTROL = [
+        'X' => ['001011', '011010'],
+        'Y' => ['001110', '011010'],
+    ];
+
+    /**
+     * The nibble header.
+     */
+    const NIBBLE_HEADER = '1110';
+
+    /**
+     * Conversion factor needed for time values in the TSPropertyArray (stored in microseconds).
+     */
+    const TIME_CONVERSION = 60 * 1000;
+
+    /**
+     * A simple map to help determine how the property needs to be decoded/encoded from/to its binary value.
+     *
+     * There are some names that are simple repeats but have 'W' at the end. Not sure as to what that signifies. I
+     * cannot find any information on them in Microsoft documentation. However, their values appear to stay in sync with
+     * their non 'W' counterparts. But not doing so when manipulating the data manually does not seem to affect anything.
+     * This probably needs more investigation.
+     *
+     * @var array
+     */
+    protected $propTypes = [
+        'string' => [
+            'CtxWFHomeDir',
+            'CtxWFHomeDirW',
+            'CtxWFHomeDirDrive',
+            'CtxWFHomeDirDriveW',
+            'CtxInitialProgram',
+            'CtxInitialProgramW',
+            'CtxWFProfilePath',
+            'CtxWFProfilePathW',
+            'CtxWorkDirectory',
+            'CtxWorkDirectoryW',
+            'CtxCallbackNumber',
+        ],
+        'time' => [
+            'CtxMaxDisconnectionTime',
+            'CtxMaxConnectionTime',
+            'CtxMaxIdleTime',
+        ],
+        'int' => [
+            'CtxCfgFlags1',
+            'CtxCfgPresent',
+            'CtxKeyboardLayout',
+            'CtxMinEncryptionLevel',
+            'CtxNWLogonServer',
+            'CtxShadow',
+        ],
+    ];
+
+    /**
+     * The property name.
+     *
+     * @var string
+     */
+    protected $name;
+
+    /**
+     * The property value.
+     *
+     * @var string|int
+     */
+    protected $value;
+
+    /**
+     * The property value type.
+     *
+     * @var int
+     */
+    protected $valueType = 1;
+
+    /**
+     * Pass binary TSProperty data to construct its object representation.
+     *
+     * @param string|null $value
+     */
+    public function __construct($value = null)
+    {
+        if ($value) {
+            $this->decode(bin2hex($value));
+        }
+    }
+
+    /**
+     * Set the name for the TSProperty.
+     *
+     * @param string $name
+     *
+     * @return TSProperty
+     */
+    public function setName($name)
+    {
+        $this->name = $name;
+
+        return $this;
+    }
+
+    /**
+     * Get the name for the TSProperty.
+     *
+     * @return string
+     */
+    public function getName()
+    {
+        return $this->name;
+    }
+
+    /**
+     * Set the value for the TSProperty.
+     *
+     * @param string|int $value
+     *
+     * @return TSProperty
+     */
+    public function setValue($value)
+    {
+        $this->value = $value;
+
+        return $this;
+    }
+
+    /**
+     * Get the value for the TSProperty.
+     *
+     * @return string|int
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Convert the TSProperty name/value back to its binary
+     * representation for the userParameters blob.
+     *
+     * @return string
+     */
+    public function toBinary()
+    {
+        $name = bin2hex($this->name);
+
+        $binValue = $this->getEncodedValueForProp($this->name, $this->value);
+
+        $valueLen = strlen(bin2hex($binValue)) / 3;
+
+        $binary = hex2bin(
+            $this->dec2hex(strlen($name))
+            .$this->dec2hex($valueLen)
+            .$this->dec2hex($this->valueType)
+            .$name
+        );
+
+        return $binary.$binValue;
+    }
+
+    /**
+     * Given a TSProperty blob, decode the name/value/type/etc.
+     *
+     * @param string $tsProperty
+     */
+    protected function decode($tsProperty)
+    {
+        $nameLength = hexdec(substr($tsProperty, 0, 2));
+
+        // 1 data byte is 3 encoded bytes
+        $valueLength = hexdec(substr($tsProperty, 2, 2)) * 3;
+
+        $this->valueType = hexdec(substr($tsProperty, 4, 2));
+        $this->name = pack('H*', substr($tsProperty, 6, $nameLength));
+        $this->value = $this->getDecodedValueForProp($this->name, substr($tsProperty, 6 + $nameLength, $valueLength));
+    }
+
+    /**
+     * Based on the property name/value in question, get its encoded form.
+     *
+     * @param string     $propName
+     * @param string|int $propValue
+     *
+     * @return string
+     */
+    protected function getEncodedValueForProp($propName, $propValue)
+    {
+        if (in_array($propName, $this->propTypes['string'])) {
+            // Simple strings are null terminated. Unsure if this is
+            // needed or simply a product of how ADUC does stuff?
+            $value = $this->encodePropValue($propValue."\0", true);
+        } elseif (in_array($propName, $this->propTypes['time'])) {
+            // Needs to be in microseconds (assuming it is in minute format)...
+            $value = $this->encodePropValue($propValue * self::TIME_CONVERSION);
+        } else {
+            $value = $this->encodePropValue($propValue);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Based on the property name in question, get its actual value from the binary blob value.
+     *
+     * @param string $propName
+     * @param string $propValue
+     *
+     * @return string|int
+     */
+    protected function getDecodedValueForProp($propName, $propValue)
+    {
+        if (in_array($propName, $this->propTypes['string'])) {
+            // Strip away null terminators. I think this should
+            // be desired, otherwise it just ends in confusion.
+            $value = str_replace("\0", '', $this->decodePropValue($propValue, true));
+        } elseif (in_array($propName, $this->propTypes['time'])) {
+            // Convert from microseconds to minutes (how ADUC displays
+            // it anyway, and seems the most practical).
+            $value = hexdec($this->decodePropValue($propValue)) / self::TIME_CONVERSION;
+        } elseif (in_array($propName, $this->propTypes['int'])) {
+            $value = hexdec($this->decodePropValue($propValue));
+        } else {
+            $value = $this->decodePropValue($propValue);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Decode the property by inspecting the nibbles of each blob, checking
+     * the control, and adding up the results into a final value.
+     *
+     * @param string $hex
+     * @param bool   $string Whether or not this is simple string data.
+     *
+     * @return string
+     */
+    protected function decodePropValue($hex, $string = false)
+    {
+        $decodePropValue = '';
+
+        $blobs = str_split($hex, 6);
+
+        foreach ($blobs as $blob) {
+            $bin = decbin(hexdec($blob));
+
+            $controlY = substr($bin, 4, 6);
+            $nibbleY = substr($bin, 10, 4);
+            $controlX = substr($bin, 14, 6);
+            $nibbleX = substr($bin, 20, 4);
+
+            $byte = $this->nibbleControl($nibbleX, $controlX).$this->nibbleControl($nibbleY, $controlY);
+
+            if ($string) {
+                $decodePropValue .= MbString::chr(bindec($byte));
+            } else {
+                $decodePropValue = $this->dec2hex(bindec($byte)).$decodePropValue;
+            }
+        }
+
+        return $decodePropValue;
+    }
+
+    /**
+     * Get the encoded property value as a binary blob.
+     *
+     * @param string $value
+     * @param bool   $string
+     *
+     * @return string
+     */
+    protected function encodePropValue($value, $string = false)
+    {
+        // An int must be properly padded. (then split and reversed).
+        // For a string, we just split the chars. This seems
+        // to be the easiest way to handle UTF-8 characters
+        // instead of trying to work with their hex values.
+        $chars = $string ? MbString::split($value) : array_reverse(str_split($this->dec2hex($value, 8), 2));
+
+        $encoded = '';
+
+        foreach ($chars as $char) {
+            // Get the bits for the char. Using this method to ensure it is fully padded.
+            $bits = sprintf('%08b', $string ? MbString::ord($char) : hexdec($char));
+            $nibbleX = substr($bits, 0, 4);
+            $nibbleY = substr($bits, 4, 4);
+
+            // Construct the value with the header, high nibble, then low nibble.
+            $value = self::NIBBLE_HEADER;
+
+            foreach (['Y' => $nibbleY, 'X' => $nibbleX] as $nibbleType => $nibble) {
+                $value .= $this->getNibbleWithControl($nibbleType, $nibble);
+            }
+
+            // Convert it back to a binary bit stream
+            foreach ([0, 8, 16] as $start) {
+                $encoded .= $this->packBitString(substr($value, $start, 8), 8);
+            }
+        }
+
+        return $encoded;
+    }
+
+    /**
+     * PHP's pack() function has no 'b' or 'B' template. This is
+     * a workaround that turns a literal bit-string into a
+     * packed byte-string with 8 bits per byte.
+     *
+     * @param string $bits
+     * @param bool   $len
+     *
+     * @return string
+     */
+    protected function packBitString($bits, $len)
+    {
+        $bits = substr($bits, 0, $len);
+        // Pad input with zeros to next multiple of 4 above $len
+        $bits = str_pad($bits, 4 * (int) (($len + 3) / 4), '0');
+
+        // Split input into chunks of 4 bits, convert each to hex and pack them
+        $nibbles = str_split($bits, 4);
+        foreach ($nibbles as $i => $nibble) {
+            $nibbles[$i] = base_convert($nibble, 2, 16);
+        }
+
+        return pack('H*', implode('', $nibbles));
+    }
+
+    /**
+     * Based on the control, adjust the nibble accordingly.
+     *
+     * @param string $nibble
+     * @param string $control
+     *
+     * @return string
+     */
+    protected function nibbleControl($nibble, $control)
+    {
+        // This control stays constant for the low/high nibbles,
+        // so it doesn't matter which we compare to
+        if ($control == self::NIBBLE_CONTROL['X'][1]) {
+            $dec = bindec($nibble);
+            $dec += 9;
+            $nibble = str_pad(decbin($dec), 4, '0', STR_PAD_LEFT);
+        }
+
+        return $nibble;
+    }
+
+    /**
+     * Get the nibble value with the control prefixed.
+     *
+     * If the nibble dec is <= 9, the control X equals 001011 and Y equals 001110, otherwise if the nibble dec is > 9
+     * the control for X or Y equals 011010. Additionally, if the dec value of the nibble is > 9, then the nibble value
+     * must be subtracted by 9 before the final value is constructed.
+     *
+     * @param string $nibbleType Either X or Y
+     * @param string $nibble
+     *
+     * @return string
+     */
+    protected function getNibbleWithControl($nibbleType, $nibble)
+    {
+        $dec = bindec($nibble);
+
+        if ($dec > 9) {
+            $dec -= 9;
+            $control = self::NIBBLE_CONTROL[$nibbleType][1];
+        } else {
+            $control = self::NIBBLE_CONTROL[$nibbleType][0];
+        }
+
+        return $control.sprintf('%04d', decbin($dec));
+    }
+
+    /**
+     * Need to make sure hex values are always an even length, so pad as needed.
+     *
+     * @param int $int
+     * @param int $padLength The hex string must be padded to this length (with zeros).
+     *
+     * @return string
+     */
+    protected function dec2hex($int, $padLength = 2)
+    {
+        return str_pad(dechex($int), $padLength, 0, STR_PAD_LEFT);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSPropertyArray.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSPropertyArray.php
new file mode 100644
index 0000000..4eac74b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Attributes/TSPropertyArray.php
@@ -0,0 +1,295 @@
+<?php
+
+namespace Adldap\Models\Attributes;
+
+use InvalidArgumentException;
+
+class TSPropertyArray
+{
+    /**
+     * Represents that the TSPropertyArray data is valid.
+     */
+    const VALID_SIGNATURE = 'P';
+
+    /**
+     * The default values for the TSPropertyArray structure.
+     *
+     * @var array
+     */
+    const DEFAULTS = [
+        'CtxCfgPresent'           => 2953518677,
+        'CtxWFProfilePath'        => '',
+        'CtxWFProfilePathW'       => '',
+        'CtxWFHomeDir'            => '',
+        'CtxWFHomeDirW'           => '',
+        'CtxWFHomeDirDrive'       => '',
+        'CtxWFHomeDirDriveW'      => '',
+        'CtxShadow'               => 1,
+        'CtxMaxDisconnectionTime' => 0,
+        'CtxMaxConnectionTime'    => 0,
+        'CtxMaxIdleTime'          => 0,
+        'CtxWorkDirectory'        => '',
+        'CtxWorkDirectoryW'       => '',
+        'CtxCfgFlags1'            => 2418077696,
+        'CtxInitialProgram'       => '',
+        'CtxInitialProgramW'      => '',
+    ];
+
+    /**
+     * @var string The default data that occurs before the TSPropertyArray (CtxCfgPresent with a bunch of spaces...?)
+     */
+    protected $defaultPreBinary = '43747843666750726573656e742020202020202020202020202020202020202020202020202020202020202020202020';
+
+    /**
+     * @var TSProperty[]
+     */
+    protected $tsProperty = [];
+
+    /**
+     * @var string
+     */
+    protected $signature = self::VALID_SIGNATURE;
+
+    /**
+     * Binary data that occurs before the TSPropertyArray data in userParameters.
+     *
+     * @var string
+     */
+    protected $preBinary = '';
+
+    /**
+     * Binary data that occurs after the TSPropertyArray data in userParameters.
+     *
+     * @var string
+     */
+    protected $postBinary = '';
+
+    /**
+     * Construct in one of the following ways:.
+     *
+     *   - Pass an array of TSProperty key => value pairs (See DEFAULTS constant).
+     *   - Pass the userParameters binary value. The object representation of that will be decoded and constructed.
+     *   - Pass nothing and a default set of TSProperty key => value pairs will be used (See DEFAULTS constant).
+     *
+     * @param mixed $tsPropertyArray
+     */
+    public function __construct($tsPropertyArray = null)
+    {
+        $this->preBinary = hex2bin($this->defaultPreBinary);
+
+        if (is_null($tsPropertyArray) || is_array($tsPropertyArray)) {
+            $tsPropertyArray = $tsPropertyArray ?: self::DEFAULTS;
+
+            foreach ($tsPropertyArray as $key => $value) {
+                $tsProperty = new TSProperty();
+
+                $this->tsProperty[$key] = $tsProperty->setName($key)->setValue($value);
+            }
+        } else {
+            $this->decodeUserParameters($tsPropertyArray);
+        }
+    }
+
+    /**
+     * Check if a specific TSProperty exists by its property name.
+     *
+     * @param string $propName
+     *
+     * @return bool
+     */
+    public function has($propName)
+    {
+        return array_key_exists(strtolower($propName), array_change_key_case($this->tsProperty));
+    }
+
+    /**
+     * Get a TSProperty object by its property name (ie. CtxWFProfilePath).
+     *
+     * @param string $propName
+     *
+     * @return TSProperty
+     */
+    public function get($propName)
+    {
+        $this->validateProp($propName);
+
+        return $this->getTsPropObj($propName);
+    }
+
+    /**
+     * Add a TSProperty object. If it already exists, it will be overwritten.
+     *
+     * @param TSProperty $tsProperty
+     *
+     * @return $this
+     */
+    public function add(TSProperty $tsProperty)
+    {
+        $this->tsProperty[$tsProperty->getName()] = $tsProperty;
+
+        return $this;
+    }
+
+    /**
+     * Remove a TSProperty by its property name (ie. CtxMinEncryptionLevel).
+     *
+     * @param string $propName
+     *
+     * @return $this
+     */
+    public function remove($propName)
+    {
+        foreach (array_keys($this->tsProperty) as $property) {
+            if (strtolower($propName) == strtolower($property)) {
+                unset($this->tsProperty[$property]);
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Set the value for a specific TSProperty by its name.
+     *
+     * @param string $propName
+     * @param mixed  $propValue
+     *
+     * @return $this
+     */
+    public function set($propName, $propValue)
+    {
+        $this->validateProp($propName);
+
+        $this->getTsPropObj($propName)->setValue($propValue);
+
+        return $this;
+    }
+
+    /**
+     * Get the full binary representation of the userParameters containing the TSPropertyArray data.
+     *
+     * @return string
+     */
+    public function toBinary()
+    {
+        $binary = $this->preBinary;
+
+        $binary .= hex2bin(str_pad(dechex(MbString::ord($this->signature)), 2, 0, STR_PAD_LEFT));
+
+        $binary .= hex2bin(str_pad(dechex(count($this->tsProperty)), 2, 0, STR_PAD_LEFT));
+
+        foreach ($this->tsProperty as $tsProperty) {
+            $binary .= $tsProperty->toBinary();
+        }
+
+        return $binary.$this->postBinary;
+    }
+
+    /**
+     * Get a simple associative array containing of all TSProperty names and values.
+     *
+     * @return array
+     */
+    public function toArray()
+    {
+        $userParameters = [];
+
+        foreach ($this->tsProperty as $property => $tsPropObj) {
+            $userParameters[$property] = $tsPropObj->getValue();
+        }
+
+        return $userParameters;
+    }
+
+    /**
+     * Get all TSProperty objects.
+     *
+     * @return TSProperty[]
+     */
+    public function getTSProperties()
+    {
+        return $this->tsProperty;
+    }
+
+    /**
+     * Validates that the given property name exists.
+     *
+     * @param string $propName
+     */
+    protected function validateProp($propName)
+    {
+        if (!$this->has($propName)) {
+            throw new InvalidArgumentException(sprintf('TSProperty for "%s" does not exist.', $propName));
+        }
+    }
+
+    /**
+     * @param string $propName
+     *
+     * @return TSProperty
+     */
+    protected function getTsPropObj($propName)
+    {
+        return array_change_key_case($this->tsProperty)[strtolower($propName)];
+    }
+
+    /**
+     * Get an associative array with all of the userParameters property names and values.
+     *
+     * @param string $userParameters
+     *
+     * @return void
+     */
+    protected function decodeUserParameters($userParameters)
+    {
+        $userParameters = bin2hex($userParameters);
+
+        // Save the 96-byte array of reserved data, so as to not ruin anything that may be stored there.
+        $this->preBinary = hex2bin(substr($userParameters, 0, 96));
+        // The signature is a 2-byte unicode character at the front
+        $this->signature = MbString::chr(hexdec(substr($userParameters, 96, 2)));
+        // This asserts the validity of the tsPropertyArray data. For some reason 'P' means valid...
+        if ($this->signature != self::VALID_SIGNATURE) {
+            throw new InvalidArgumentException('Invalid TSPropertyArray data');
+        }
+
+        // The property count is a 2-byte unsigned integer indicating the number of elements for the tsPropertyArray
+        // It starts at position 98. The actual variable data begins at position 100.
+        $length = $this->addTSPropData(substr($userParameters, 100), hexdec(substr($userParameters, 98, 2)));
+
+        // Reserved data length + (count and sig length == 4) + the added lengths of the TSPropertyArray
+        // This saves anything after that variable TSPropertyArray data, so as to not squash anything stored there
+        if (strlen($userParameters) > (96 + 4 + $length)) {
+            $this->postBinary = hex2bin(substr($userParameters, (96 + 4 + $length)));
+        }
+    }
+
+    /**
+     * Given the start of TSPropertyArray hex data, and the count for the number
+     * of TSProperty structures in contains, parse and split out the
+     * individual TSProperty structures. Return the full length
+     * of the TSPropertyArray data.
+     *
+     * @param string $tsPropertyArray
+     * @param int    $tsPropCount
+     *
+     * @return int The length of the data in the TSPropertyArray
+     */
+    protected function addTSPropData($tsPropertyArray, $tsPropCount)
+    {
+        $length = 0;
+
+        for ($i = 0; $i < $tsPropCount; $i++) {
+            // Prop length = name length + value length + type length + the space for the length data.
+            $propLength = hexdec(substr($tsPropertyArray, $length, 2)) + (hexdec(substr($tsPropertyArray, $length + 2, 2)) * 3) + 6;
+
+            $tsProperty = new TSProperty(hex2bin(substr($tsPropertyArray, $length, $propLength)));
+
+            $this->tsProperty[$tsProperty->getName()] = $tsProperty;
+
+            $length += $propLength;
+        }
+
+        return $length;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/BatchModification.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/BatchModification.php
new file mode 100644
index 0000000..08ddca8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/BatchModification.php
@@ -0,0 +1,270 @@
+<?php
+
+namespace Adldap\Models;
+
+use InvalidArgumentException;
+
+/**
+ * Class BatchModification.
+ *
+ * A utility class to assist in the creation of LDAP
+ * batch modifications and ensure their validity.
+ */
+class BatchModification
+{
+    /**
+     * The array keys to be used in batch modifications.
+     */
+    const KEY_ATTRIB = 'attrib';
+    const KEY_MODTYPE = 'modtype';
+    const KEY_VALUES = 'values';
+
+    /**
+     * The original value of the attribute before modification.
+     *
+     * @var null
+     */
+    protected $original = null;
+
+    /**
+     * The attribute of the modification.
+     *
+     * @var int|string
+     */
+    protected $attribute;
+
+    /**
+     * The values of the modification.
+     *
+     * @var array
+     */
+    protected $values = [];
+
+    /**
+     * The modtype integer of the batch modification.
+     *
+     * @var int
+     */
+    protected $type;
+
+    /**
+     * Constructor.
+     *
+     * @param string|null     $attribute
+     * @param string|int|null $type
+     * @param array           $values
+     */
+    public function __construct($attribute = null, $type = null, $values = [])
+    {
+        $this->setAttribute($attribute)
+            ->setType($type)
+            ->setValues($values);
+    }
+
+    /**
+     * Sets the original value of the attribute before modification.
+     *
+     * @param mixed $original
+     *
+     * @return $this
+     */
+    public function setOriginal($original = null)
+    {
+        $this->original = $original;
+
+        return $this;
+    }
+
+    /**
+     * Returns the original value of the attribute before modification.
+     *
+     * @return mixed
+     */
+    public function getOriginal()
+    {
+        return $this->original;
+    }
+
+    /**
+     * Sets the attribute of the modification.
+     *
+     * @param string $attribute
+     *
+     * @return $this
+     */
+    public function setAttribute($attribute)
+    {
+        $this->attribute = $attribute;
+
+        return $this;
+    }
+
+    /**
+     * Returns the attribute of the modification.
+     *
+     * @return string
+     */
+    public function getAttribute()
+    {
+        return $this->attribute;
+    }
+
+    /**
+     * Sets the values of the modification.
+     *
+     * @param array $values
+     *
+     * @return $this
+     */
+    public function setValues(array $values = [])
+    {
+        $this->values = array_map(function ($value) {
+            // We need to make sure all values given to a batch modification are
+            // strings, otherwise we'll receive an LDAP exception when
+            // we try to process the modification.
+            return (string) $value;
+        }, $values);
+
+        return $this;
+    }
+
+    /**
+     * Returns the values of the modification.
+     *
+     * @return array
+     */
+    public function getValues()
+    {
+        return $this->values;
+    }
+
+    /**
+     * Sets the type of the modification.
+     *
+     * @param int|null $type
+     *
+     * @return $this
+     */
+    public function setType($type = null)
+    {
+        if (!is_null($type) && !$this->isValidType($type)) {
+            throw new InvalidArgumentException('Given batch modification type is invalid.');
+        }
+
+        $this->type = $type;
+
+        return $this;
+    }
+
+    /**
+     * Returns the type of the modification.
+     *
+     * @return int
+     */
+    public function getType()
+    {
+        return $this->type;
+    }
+
+    /**
+     * Determines if the batch modification
+     * is valid in its current state.
+     *
+     * @return bool
+     */
+    public function isValid()
+    {
+        return !is_null($this->get());
+    }
+
+    /**
+     * Builds the type of modification automatically
+     * based on the current and original values.
+     *
+     * @return $this
+     */
+    public function build()
+    {
+        $filtered = array_diff(
+            array_map('trim', $this->values),
+            ['']
+        );
+
+        if (is_null($this->original)) {
+            // If the original value is null, we'll assume
+            // that the attribute doesn't exist yet.
+            if (!empty($filtered)) {
+                // If the filtered array is not empty, we can
+                // assume we're looking to add values
+                // to the current attribute.
+                $this->setType(LDAP_MODIFY_BATCH_ADD);
+            }
+
+            // If the filtered array is empty and there is no original
+            // value, then we can ignore this attribute since
+            // we can't push null values to the server.
+        } else {
+            if (empty($filtered)) {
+                // If there's an original value and the array is
+                // empty then we can assume we are looking
+                // to completely remove all values
+                // of the current attribute.
+                $this->setType(LDAP_MODIFY_BATCH_REMOVE_ALL);
+            } else {
+                // If the array isn't empty then we can assume
+                // we're looking to replace all attributes.
+                $this->setType(LDAP_MODIFY_BATCH_REPLACE);
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns the built batch modification array.
+     *
+     * @return array|null
+     */
+    public function get()
+    {
+        switch ($this->type) {
+            case LDAP_MODIFY_BATCH_REMOVE_ALL:
+                // A values key cannot be provided when
+                // a remove all type is selected.
+                return [
+                    static::KEY_ATTRIB  => $this->attribute,
+                    static::KEY_MODTYPE => $this->type,
+                ];
+            case LDAP_MODIFY_BATCH_REMOVE:
+                // Fallthrough.
+            case LDAP_MODIFY_BATCH_ADD:
+                // Fallthrough.
+            case LDAP_MODIFY_BATCH_REPLACE:
+                return [
+                    static::KEY_ATTRIB  => $this->attribute,
+                    static::KEY_MODTYPE => $this->type,
+                    static::KEY_VALUES  => $this->values,
+                ];
+            default:
+                // If the modtype isn't recognized, we'll return null.
+                return;
+        }
+    }
+
+    /**
+     * Determines if the given modtype is valid.
+     *
+     * @param int $type
+     *
+     * @return bool
+     */
+    protected function isValidType($type)
+    {
+        return in_array($type, [
+            LDAP_MODIFY_BATCH_REMOVE_ALL,
+            LDAP_MODIFY_BATCH_REMOVE,
+            LDAP_MODIFY_BATCH_REPLACE,
+            LDAP_MODIFY_BATCH_ADD,
+        ]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Computer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Computer.php
new file mode 100644
index 0000000..e00f259
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Computer.php
@@ -0,0 +1,87 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Computer.
+ *
+ * Represents an LDAP computer / server.
+ */
+class Computer extends Entry
+{
+    use Concerns\HasMemberOf;
+    use Concerns\HasDescription;
+    use Concerns\HasLastLogonAndLogOff;
+    use Concerns\HasUserAccountControl;
+    use Concerns\HasCriticalSystemObject;
+
+    /**
+     * Returns the computers operating system.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679076(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getOperatingSystem()
+    {
+        return $this->getFirstAttribute($this->schema->operatingSystem());
+    }
+
+    /**
+     * Returns the computers operating system version.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679079(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getOperatingSystemVersion()
+    {
+        return $this->getFirstAttribute($this->schema->operatingSystemVersion());
+    }
+
+    /**
+     * Returns the computers operating system service pack.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679078(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getOperatingSystemServicePack()
+    {
+        return $this->getFirstAttribute($this->schema->operatingSystemServicePack());
+    }
+
+    /**
+     * Returns the computers DNS host name.
+     *
+     * @return string
+     */
+    public function getDnsHostName()
+    {
+        return $this->getFirstAttribute($this->schema->dnsHostName());
+    }
+
+    /**
+     * Returns the computers bad password time.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675243(v=vs.85).aspx
+     *
+     * @return int
+     */
+    public function getBadPasswordTime()
+    {
+        return $this->getFirstAttribute($this->schema->badPasswordTime());
+    }
+
+    /**
+     * Returns the computers account expiry date.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675098(v=vs.85).aspx
+     *
+     * @return int
+     */
+    public function getAccountExpiry()
+    {
+        return $this->getFirstAttribute($this->schema->accountExpires());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasAttributes.php
new file mode 100644
index 0000000..2235bbe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasAttributes.php
@@ -0,0 +1,345 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+use Illuminate\Support\Arr;
+
+trait HasAttributes
+{
+    /**
+     * The default output date format for all time related methods.
+     *
+     * Default format is suited for MySQL timestamps.
+     *
+     * @var string
+     */
+    public $dateFormat = 'Y-m-d H:i:s';
+
+    /**
+     * The format that is used to convert timestamps to unix timestamps.
+     *
+     * Currently set for compatibility with Active Directory.
+     *
+     * @var string
+     */
+    protected $timestampFormat = 'YmdHis.0Z';
+
+    /**
+     * The models attributes.
+     *
+     * @var array
+     */
+    protected $attributes = [];
+
+    /**
+     * The models original attributes.
+     *
+     * @var array
+     */
+    protected $original = [];
+
+    /**
+     * Dynamically retrieve attributes on the object.
+     *
+     * @param mixed $key
+     *
+     * @return bool
+     */
+    public function __get($key)
+    {
+        return $this->getAttribute($key);
+    }
+
+    /**
+     * Dynamically set attributes on the object.
+     *
+     * @param mixed $key
+     * @param mixed $value
+     *
+     * @return $this
+     */
+    public function __set($key, $value)
+    {
+        return $this->setAttribute($key, $value);
+    }
+
+    /**
+     * Synchronizes the models original attributes
+     * with the model's current attributes.
+     *
+     * @return $this
+     */
+    public function syncOriginal()
+    {
+        $this->original = $this->attributes;
+
+        return $this;
+    }
+
+    /**
+     * Returns the models attribute with the specified key.
+     *
+     * If a sub-key is specified, it will try and
+     * retrieve it from the parent keys array.
+     *
+     * @param int|string $key
+     * @param int|string $subKey
+     *
+     * @return mixed
+     */
+    public function getAttribute($key, $subKey = null)
+    {
+        if (!$key) {
+            return;
+        }
+
+        // We'll normalize the given key to prevent case sensitivity issues.
+        $key = $this->normalizeAttributeKey($key);
+
+        if (is_null($subKey) && $this->hasAttribute($key)) {
+            return $this->attributes[$key];
+        } elseif ($this->hasAttribute($key, $subKey)) {
+            return $this->attributes[$key][$subKey];
+        }
+    }
+
+    /**
+     * Returns the first attribute by the specified key.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    public function getFirstAttribute($key)
+    {
+        return $this->getAttribute($key, 0);
+    }
+
+    /**
+     * Returns all of the models attributes.
+     *
+     * @return array
+     */
+    public function getAttributes()
+    {
+        return $this->attributes;
+    }
+
+    /**
+     * Fills the entry with the supplied attributes.
+     *
+     * @param array $attributes
+     *
+     * @return $this
+     */
+    public function fill(array $attributes = [])
+    {
+        foreach ($attributes as $key => $value) {
+            $this->setAttribute($key, $value);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Sets an attributes value by the specified key and sub-key.
+     *
+     * @param int|string $key
+     * @param mixed      $value
+     * @param int|string $subKey
+     *
+     * @return $this
+     */
+    public function setAttribute($key, $value, $subKey = null)
+    {
+        // Normalize key.
+        $key = $this->normalizeAttributeKey($key);
+
+        // If the key is equal to 'dn', we'll automatically
+        // change it to the full attribute name.
+        $key = ($key == 'dn' ? $this->schema->distinguishedName() : $key);
+
+        if (is_null($subKey)) {
+            // We need to ensure all attributes are set as arrays so all
+            // of our model methods retrieve attributes correctly.
+            $this->attributes[$key] = is_array($value) ? $value : [$value];
+        } else {
+            $this->attributes[$key][$subKey] = $value;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Sets the first attributes value by the specified key.
+     *
+     * @param int|string $key
+     * @param mixed      $value
+     *
+     * @return $this
+     */
+    public function setFirstAttribute($key, $value)
+    {
+        return $this->setAttribute($key, $value, 0);
+    }
+
+    /**
+     * Sets the attributes property.
+     *
+     * Used when constructing an existing LDAP record.
+     *
+     * @param array $attributes
+     *
+     * @return $this
+     */
+    public function setRawAttributes(array $attributes = [])
+    {
+        // We'll filter out those annoying 'count' keys returned with LDAP results,
+        // and lowercase all root array keys to prevent any casing issues.
+        $this->attributes = array_change_key_case($this->filterRawAttributes($attributes), CASE_LOWER);
+
+        // We'll pull out the distinguished name from our raw attributes
+        // and set it into our attributes array with the full attribute
+        // definition. This allows us to normalize distinguished
+        // names across different LDAP variants.
+        if ($dn = Arr::get($attributes, 'dn')) {
+            // In some LDAP variants, the distinguished
+            // name is returned as an array.
+            if (is_array($dn)) {
+                $dn = Arr::first($dn);
+            }
+
+            $this->setDistinguishedName($dn);
+        }
+
+        $this->syncOriginal();
+
+        // Set exists to true since raw attributes are only
+        // set in the case of attributes being loaded by
+        // query results.
+        $this->exists = true;
+
+        return $this;
+    }
+
+    /**
+     * Filters the count key recursively from raw LDAP attributes.
+     *
+     * @param array        $attributes
+     * @param array|string $keys
+     *
+     * @return array
+     */
+    public function filterRawAttributes(array $attributes = [], $keys = ['count', 'dn'])
+    {
+        $attributes = Arr::except($attributes, $keys);
+
+        array_walk($attributes, function (&$value) use ($keys) {
+            $value = is_array($value) ?
+                $this->filterRawAttributes($value, $keys) :
+                $value;
+        });
+
+        return $attributes;
+    }
+
+    /**
+     * Returns true / false if the specified attribute
+     * exists in the attributes array.
+     *
+     * @param int|string $key
+     * @param int|string $subKey
+     *
+     * @return bool
+     */
+    public function hasAttribute($key, $subKey = null)
+    {
+        // Normalize key.
+        $key = $this->normalizeAttributeKey($key);
+
+        if (is_null($subKey)) {
+            return Arr::has($this->attributes, $key);
+        }
+
+        return Arr::has($this->attributes, "$key.$subKey");
+    }
+
+    /**
+     * Returns the number of attributes inside
+     * the attributes property.
+     *
+     * @return int
+     */
+    public function countAttributes()
+    {
+        return count($this->getAttributes());
+    }
+
+    /**
+     * Returns the models original attributes.
+     *
+     * @return array
+     */
+    public function getOriginal()
+    {
+        return $this->original;
+    }
+
+    /**
+     * Get the attributes that have been changed since last sync.
+     *
+     * @return array
+     */
+    public function getDirty()
+    {
+        $dirty = [];
+
+        foreach ($this->attributes as $key => $value) {
+            if (!$this->originalIsEquivalent($key)) {
+                // We need to reset the array's indices using array_values due to
+                // LDAP requiring consecutive indices (0, 1, 2 etc.)
+                $dirty[$key] = array_values($value);
+            }
+        }
+
+        return $dirty;
+    }
+
+    /**
+     * Returns a normalized attribute key.
+     *
+     * @param string $key
+     *
+     * @return string
+     */
+    protected function normalizeAttributeKey($key)
+    {
+        return strtolower($key);
+    }
+
+    /**
+     * Determine if the new and old values for a given key are equivalent.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    protected function originalIsEquivalent($key)
+    {
+        if (!array_key_exists($key, $this->original)) {
+            return false;
+        }
+
+        $current = $this->attributes[$key];
+
+        $original = $this->original[$key];
+
+        if ($current === $original) {
+            return true;
+        }
+
+        return  is_numeric($current) &&
+                is_numeric($original) &&
+                strcmp((string) $current, (string) $original) === 0;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasCriticalSystemObject.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasCriticalSystemObject.php
new file mode 100644
index 0000000..e85cac1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasCriticalSystemObject.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+trait HasCriticalSystemObject
+{
+    /**
+     * Returns true / false if the entry is a critical system object.
+     *
+     * @return null|bool
+     */
+    public function isCriticalSystemObject()
+    {
+        $attribute = $this->getFirstAttribute($this->schema->isCriticalSystemObject());
+
+        return $this->convertStringToBool($attribute);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasDescription.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasDescription.php
new file mode 100644
index 0000000..dfc05ed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasDescription.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+trait HasDescription
+{
+    /**
+     * Returns the models's description.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675492(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getDescription()
+    {
+        return $this->getFirstAttribute($this->schema->description());
+    }
+
+    /**
+     * Sets the models's description.
+     *
+     * @param string $description
+     *
+     * @return $this
+     */
+    public function setDescription($description)
+    {
+        return $this->setFirstAttribute($this->schema->description(), $description);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasEvents.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasEvents.php
new file mode 100644
index 0000000..37abb81
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasEvents.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+use Adldap\Adldap;
+use Adldap\Models\Events\Event;
+
+trait HasEvents
+{
+    /**
+     * Fires the specified model event.
+     *
+     * @param Event $event
+     *
+     * @return mixed
+     */
+    protected function fireModelEvent(Event $event)
+    {
+        return Adldap::getEventDispatcher()->fire($event);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasLastLogonAndLogOff.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasLastLogonAndLogOff.php
new file mode 100644
index 0000000..3aee2a5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasLastLogonAndLogOff.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+trait HasLastLogonAndLogOff
+{
+    /**
+     * Returns the models's last log off date.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676822(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getLastLogOff()
+    {
+        return $this->getFirstAttribute($this->schema->lastLogOff());
+    }
+
+    /**
+     * Returns the models's last log on date.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676823(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getLastLogon()
+    {
+        return $this->getFirstAttribute($this->schema->lastLogOn());
+    }
+
+    /**
+     * Returns the models's last log on timestamp.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676824(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getLastLogonTimestamp()
+    {
+        return $this->getFirstAttribute($this->schema->lastLogOnTimestamp());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasMemberOf.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasMemberOf.php
new file mode 100644
index 0000000..3c1b85e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasMemberOf.php
@@ -0,0 +1,260 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+use Adldap\Utilities;
+use Adldap\Models\User;
+use Adldap\Models\Group;
+use Adldap\Query\Collection;
+
+trait HasMemberOf
+{
+    /**
+     * Returns an array of distinguished names of groups that the current model belongs to.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677099(v=vs.85).aspx
+     *
+     * @return array
+     */
+    public function getMemberOf()
+    {
+        $dns = $this->getAttribute($this->schema->memberOf());
+
+        // Normalize returned distinguished names if the attribute is null.
+        return is_array($dns) ? $dns : [];
+    }
+
+    /**
+     * Adds the current model to the specified group.
+     *
+     * @param string|Group $group
+     *
+     * @return bool
+     */
+    public function addGroup($group)
+    {
+        if (is_string($group)) {
+            // If the group is a string, we'll assume the dev is passing
+            // in a DN string of the group. We'll try to locate it.
+            $group = $this->query->newInstance()->findByDn($group);
+        }
+
+        if ($group instanceof Group) {
+            // If the group is Group model instance, we can
+            // add the current models DN to the group.
+            return $group->addMember($this->getDn());
+        }
+
+        return false;
+    }
+
+    /**
+     * Removes the current model from the specified group.
+     *
+     * @param string|Group $group
+     *
+     * @return bool
+     */
+    public function removeGroup($group)
+    {
+        if (is_string($group)) {
+            // If the group is a string, we'll assume the dev is passing
+            // in a DN string of the group. We'll try to locate it.
+            $group = $this->query->newInstance()->findByDn($group);
+        }
+
+        if ($group instanceof Group) {
+            // If the group is Group model instance, we can
+            // remove the current models DN from the group.
+            return $group->removeMember($this->getDn());
+        }
+
+        return false;
+    }
+
+    /**
+     * Removes the current model from all groups.
+     *
+     * @return array The group distinguished names that were successfully removed
+     */
+    public function removeAllGroups()
+    {
+        $removed = [];
+
+        foreach ($this->getMemberOf() as $group) {
+            if ($this->removeGroup($group)) {
+                $removed[] = $group;
+            }
+        }
+
+        return $removed;
+    }
+
+    /**
+     * Returns the models groups that it is apart of.
+     *
+     * If a recursive option is given, groups of groups
+     * are retrieved and then merged with
+     * the resulting collection.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677099(v=vs.85).aspx
+     *
+     * @param array $fields
+     * @param bool  $recursive
+     * @param array $visited
+     *
+     * @return Collection
+     */
+    public function getGroups(array $fields = ['*'], $recursive = false, array $visited = [])
+    {
+        if (!in_array($this->schema->memberOf(), $fields)) {
+            // We want to make sure that we always select the memberof
+            // field in case developers want recursive members.
+            $fields = array_merge($fields, [$this->schema->memberOf()]);
+        }
+
+        $groups = $this->getGroupsByNames($this->getMemberOf(), $fields);
+
+        // We need to check if we're working with a User model. Only users
+        // contain a primary group. If we are, we'll merge the users
+        // primary group into the resulting collection.
+        if ($this instanceof User && $primary = $this->getPrimaryGroup()) {
+            $groups->push($primary);
+        }
+
+        // If recursive results are requested, we'll ask each group
+        // for their groups, and merge the resulting collection.
+        if ($recursive) {
+            /** @var Group $group */
+            foreach ($groups as $group) {
+                // We need to validate that we haven't already queried
+                // for this group's members so we don't allow
+                // infinite recursion in case of circular
+                // group dependencies in LDAP.
+                if (!in_array($group->getDn(), $visited)) {
+                    $visited[] = $group->getDn();
+
+                    $members = $group->getGroups($fields, $recursive, $visited);
+
+                    /** @var Group $member */
+                    foreach ($members as $member) {
+                        $visited[] = $member->getDn();
+                    }
+
+                    $groups = $groups->merge($members);
+                }
+            }
+        }
+
+        return $groups;
+    }
+
+    /**
+     * Returns the models groups names in a single dimension array.
+     *
+     * If a recursive option is given, groups of groups
+     * are retrieved and then merged with
+     * the resulting collection.
+     *
+     * @param bool $recursive
+     *
+     * @return array
+     */
+    public function getGroupNames($recursive = false)
+    {
+        $fields = [$this->schema->commonName(), $this->schema->memberOf()];
+
+        $names = $this->getGroups($fields, $recursive)->map(function (Group $group) {
+            return $group->getCommonName();
+        })->toArray();
+
+        return array_unique($names);
+    }
+
+    /**
+     * Determine if the current model is a member of the specified group(s).
+     *
+     * @param mixed $group
+     * @param bool  $recursive
+     *
+     * @return bool
+     */
+    public function inGroup($group, $recursive = false)
+    {
+        $memberOf = $this->getGroups(['cn'], $recursive);
+
+        if ($group instanceof Collection) {
+            // If we've been given a collection then we'll convert
+            // it to an array to normalize the value.
+            $group = $group->toArray();
+        }
+
+        $groups = is_array($group) ? $group : [$group];
+
+        foreach ($groups as $group) {
+            // We need to iterate through each given group that the
+            // model must be apart of, then go through the models
+            // actual groups and perform validation.
+            $exists = $memberOf->filter(function (Group $parent) use ($group) {
+                return $this->groupIsParent($group, $parent);
+            })->count() !== 0;
+
+            if (!$exists) {
+                // If the current group isn't at all contained
+                // in the memberOf collection, we'll
+                // return false here.
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Retrieves groups by their distinguished name.
+     *
+     * @param array $dns
+     * @param array $fields
+     *
+     * @return Collection
+     */
+    protected function getGroupsByNames(array $dns = [], $fields = [])
+    {
+        $query = $this->query->newInstance();
+
+        return $query->newCollection($dns)->map(function ($dn) use ($query, $fields) {
+            return $query->select($fields)->clearFilters()->findByDn($dn);
+        })->filter(function ($group) {
+            return $group instanceof Group;
+        });
+    }
+
+    /**
+     * Validates if the specified group is the given parent instance.
+     *
+     * @param Group|string $group
+     * @param Group        $parent
+     *
+     * @return bool
+     */
+    protected function groupIsParent($group, Group $parent)
+    {
+        if ($group instanceof Group) {
+            // We've been given a group instance, we'll compare their DNs.
+            return $parent->getDn() === $group->getDn();
+        }
+
+        if (Utilities::explodeDn($group)) {
+            // We've been given a DN, we'll compare it to the parents.
+            return $parent->getDn() === $group;
+        }
+
+        if (!empty($group)) {
+            // We've been given just a string, we'll
+            // compare it to the parents name.
+            return $parent->getCommonName() === $group;
+        }
+
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserAccountControl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserAccountControl.php
new file mode 100644
index 0000000..857378b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserAccountControl.php
@@ -0,0 +1,60 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+use Adldap\Models\Attributes\AccountControl;
+
+trait HasUserAccountControl
+{
+    /**
+     * Returns the users user account control integer.
+     *
+     * @return string
+     */
+    public function getUserAccountControl()
+    {
+        return $this->getFirstAttribute($this->schema->userAccountControl());
+    }
+
+    /**
+     * Returns the users user account control as an AccountControl object.
+     *
+     * @return AccountControl
+     */
+    public function getUserAccountControlObject()
+    {
+        return new AccountControl($this->getUserAccountControl());
+    }
+
+    /**
+     * Sets the users account control property.
+     *
+     * @param int|string|AccountControl $accountControl
+     *
+     * @return $this
+     */
+    public function setUserAccountControl($accountControl)
+    {
+        return $this->setAttribute($this->schema->userAccountControl(), (string) $accountControl);
+    }
+
+    /**
+     * Returns if the user is disabled.
+     *
+     * @return bool
+     */
+    public function isDisabled()
+    {
+        return ($this->getUserAccountControl() & AccountControl::ACCOUNTDISABLE) === AccountControl::ACCOUNTDISABLE;
+    }
+
+    /**
+     * Returns if the user is enabled.
+     *
+     * @return bool
+     */
+    public function isEnabled()
+    {
+        return $this->getUserAccountControl() === null ? false : !$this->isDisabled();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserProperties.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserProperties.php
new file mode 100644
index 0000000..0d1c541
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Concerns/HasUserProperties.php
@@ -0,0 +1,453 @@
+<?php
+
+namespace Adldap\Models\Concerns;
+
+trait HasUserProperties
+{
+    /**
+     * Returns the users country.
+     *
+     * @return string|null
+     */
+    public function getCountry()
+    {
+        return $this->getFirstAttribute($this->schema->country());
+    }
+
+    /**
+     * Sets the users country.
+     *
+     * @param string $country
+     *
+     * @return $this
+     */
+    public function setCountry($country)
+    {
+        return $this->setFirstAttribute($this->schema->country(), $country);
+    }
+
+    /**
+     * Returns the users department.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675490(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getDepartment()
+    {
+        return $this->getFirstAttribute($this->schema->department());
+    }
+
+    /**
+     * Sets the users department.
+     *
+     * @param string $department
+     *
+     * @return $this
+     */
+    public function setDepartment($department)
+    {
+        return $this->setFirstAttribute($this->schema->department(), $department);
+    }
+
+    /**
+     * Returns the users email address.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676855(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getEmail()
+    {
+        return $this->getFirstAttribute($this->schema->email());
+    }
+
+    /**
+     * Sets the users email.
+     *
+     * Keep in mind this will remove all other
+     * email addresses the user currently has.
+     *
+     * @param string $email
+     *
+     * @return $this
+     */
+    public function setEmail($email)
+    {
+        return $this->setFirstAttribute($this->schema->email(), $email);
+    }
+
+    /**
+     * Returns the users facsimile number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675675(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getFacsimileNumber()
+    {
+        return $this->getFirstAttribute($this->schema->facsimile());
+    }
+
+    /**
+     * Sets the users facsimile number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setFacsimileNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->facsimile(), $number);
+    }
+
+    /**
+     * Returns the users first name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675719(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getFirstName()
+    {
+        return $this->getFirstAttribute($this->schema->firstName());
+    }
+
+    /**
+     * Sets the users first name.
+     *
+     * @param string $firstName
+     *
+     * @return $this
+     */
+    public function setFirstName($firstName)
+    {
+        return $this->setFirstAttribute($this->schema->firstName(), $firstName);
+    }
+
+    /**
+     * Returns the users initials.
+     *
+     * @return string|null
+     */
+    public function getInitials()
+    {
+        return $this->getFirstAttribute($this->schema->initials());
+    }
+
+    /**
+     * Sets the users initials.
+     *
+     * @param string $initials
+     *
+     * @return $this
+     */
+    public function setInitials($initials)
+    {
+        return $this->setFirstAttribute($this->schema->initials(), $initials);
+    }
+
+    /**
+     * Returns the users IP Phone.
+     *
+     * @return string|null
+     */
+    public function getIpPhone()
+    {
+        return $this->getFirstAttribute($this->schema->ipPhone());
+    }
+
+    /**
+     * Sets the users IP phone.
+     *
+     * @param string $ip
+     *
+     * @return $this
+     */
+    public function setIpPhone($ip)
+    {
+        return $this->setFirstAttribute($this->schema->ipPhone(), $ip);
+    }
+
+    /**
+     * Returns the users last name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679872(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getLastName()
+    {
+        return $this->getFirstAttribute($this->schema->lastName());
+    }
+
+    /**
+     * Sets the users last name.
+     *
+     * @param string $lastName
+     *
+     * @return $this
+     */
+    public function setLastName($lastName)
+    {
+        return $this->setFirstAttribute($this->schema->lastName(), $lastName);
+    }
+
+    /**
+     * Returns the users postal code.
+     *
+     * @return string|null
+     */
+    public function getPostalCode()
+    {
+        return $this->getFirstAttribute($this->schema->postalCode());
+    }
+
+    /**
+     * Sets the users postal code.
+     *
+     * @param string $postalCode
+     *
+     * @return $this
+     */
+    public function setPostalCode($postalCode)
+    {
+        return $this->setFirstAttribute($this->schema->postalCode(), $postalCode);
+    }
+
+    /**
+     * Get the users post office box.
+     *
+     * @return string|null
+     */
+    public function getPostOfficeBox()
+    {
+        return $this->getFirstAttribute($this->schema->postOfficeBox());
+    }
+
+    /**
+     * Sets the users post office box.
+     *
+     * @param string|int $box
+     *
+     * @return $this
+     */
+    public function setPostOfficeBox($box)
+    {
+        return $this->setFirstAttribute($this->schema->postOfficeBox(), $box);
+    }
+
+    /**
+     * Sets the users proxy addresses.
+     *
+     * This will remove all proxy addresses on the user and insert the specified addresses.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679424(v=vs.85).aspx
+     *
+     * @param array $addresses
+     *
+     * @return $this
+     */
+    public function setProxyAddresses(array $addresses = [])
+    {
+        return $this->setAttribute($this->schema->proxyAddresses(), $addresses);
+    }
+
+    /**
+     * Add's a single proxy address to the user.
+     *
+     * @param string $address
+     *
+     * @return $this
+     */
+    public function addProxyAddress($address)
+    {
+        $addresses = $this->getProxyAddresses();
+
+        $addresses[] = $address;
+
+        return $this->setAttribute($this->schema->proxyAddresses(), $addresses);
+    }
+
+    /**
+     * Returns the users proxy addresses.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679424(v=vs.85).aspx
+     *
+     * @return array
+     */
+    public function getProxyAddresses()
+    {
+        return $this->getAttribute($this->schema->proxyAddresses()) ?? [];
+    }
+
+    /**
+     * Returns the users street address.
+     *
+     * @return string|null
+     */
+    public function getStreetAddress()
+    {
+        return $this->getFirstAttribute($this->schema->streetAddress());
+    }
+
+    /**
+     * Sets the users street address.
+     *
+     * @param string $address
+     *
+     * @return $this
+     */
+    public function setStreetAddress($address)
+    {
+        return $this->setFirstAttribute($this->schema->streetAddress(), $address);
+    }
+
+    /**
+     * Returns the users title.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680037(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getTitle()
+    {
+        return $this->getFirstAttribute($this->schema->title());
+    }
+
+    /**
+     * Sets the users title.
+     *
+     * @param string $title
+     *
+     * @return $this
+     */
+    public function setTitle($title)
+    {
+        return $this->setFirstAttribute($this->schema->title(), $title);
+    }
+
+    /**
+     * Returns the users telephone number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680027(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getTelephoneNumber()
+    {
+        return $this->getFirstAttribute($this->schema->telephone());
+    }
+
+    /**
+     * Sets the users telephone number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setTelephoneNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->telephone(), $number);
+    }
+
+    /**
+     * Returns the users primary mobile phone number.
+     *
+     * @return string|null
+     */
+    public function getMobileNumber()
+    {
+        return $this->getFirstAttribute($this->schema->mobile());
+    }
+
+    /**
+     * Sets the users primary mobile phone number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setMobileNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->mobile(), $number);
+    }
+
+    /**
+     * Returns the users secondary (other) mobile phone number.
+     *
+     * @return string|null
+     */
+    public function getOtherMobileNumber()
+    {
+        return $this->getFirstAttribute($this->schema->otherMobile());
+    }
+
+    /**
+     * Sets the users  secondary (other) mobile phone number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setOtherMobileNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->otherMobile(), $number);
+    }
+
+    /**
+     * Returns the users other mailbox attribute.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679091(v=vs.85).aspx
+     *
+     * @return array
+     */
+    public function getOtherMailbox()
+    {
+        return $this->getAttribute($this->schema->otherMailbox());
+    }
+
+    /**
+     * Sets the users other mailboxes.
+     *
+     * @param array $otherMailbox
+     *
+     * @return $this
+     */
+    public function setOtherMailbox($otherMailbox = [])
+    {
+        return $this->setAttribute($this->schema->otherMailbox(), $otherMailbox);
+    }
+
+    /**
+     * Returns the distinguished name of the user who is the user's manager.
+     *
+     * @return string|null
+     */
+    public function getManager()
+    {
+        return $this->getFirstAttribute($this->schema->manager());
+    }
+
+    /**
+     * Sets the distinguished name of the user who is the user's manager.
+     *
+     * @param string $managerDn
+     *
+     * @return $this
+     */
+    public function setManager($managerDn)
+    {
+        return $this->setFirstAttribute($this->schema->manager(), $managerDn);
+    }
+
+    /**
+     * Returns the users mail nickname.
+     *
+     * @return string|null
+     */
+    public function getMailNickname()
+    {
+        return $this->getFirstAttribute($this->schema->emailNickname());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Contact.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Contact.php
new file mode 100644
index 0000000..517a35b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Contact.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Contact.
+ *
+ * Represents an LDAP contact.
+ */
+class Contact extends Entry
+{
+    use Concerns\HasMemberOf;
+    use Concerns\HasUserProperties;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Container.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Container.php
new file mode 100644
index 0000000..faaf1a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Container.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Container.
+ *
+ * Represents an LDAP container.
+ */
+class Container extends Entry
+{
+    use Concerns\HasDescription;
+    use Concerns\HasCriticalSystemObject;
+
+    /**
+     * Returns the containers system flags integer.
+     *
+     * An integer value that contains flags that define additional properties of the class.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680022(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getSystemFlags()
+    {
+        return $this->getFirstAttribute($this->schema->systemFlags());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Entry.php
new file mode 100644
index 0000000..be6ef1d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Entry.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Entry.
+ *
+ * Represents an LDAP record that could not be identified as another type of model.
+ */
+class Entry extends Model
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Created.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Created.php
new file mode 100644
index 0000000..7e98bc1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Created.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Created extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Creating.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Creating.php
new file mode 100644
index 0000000..8482da8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Creating.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Creating extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleted.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleted.php
new file mode 100644
index 0000000..6cfd954
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleted.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Deleted extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleting.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleting.php
new file mode 100644
index 0000000..2718376
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Deleting.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Deleting extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Event.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Event.php
new file mode 100644
index 0000000..821e391
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Event.php
@@ -0,0 +1,35 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+use Adldap\Models\Model;
+
+abstract class Event
+{
+    /**
+     * The model that the event is being triggered on.
+     *
+     * @var Model
+     */
+    protected $model;
+
+    /**
+     * Constructor.
+     *
+     * @param Model $model
+     */
+    public function __construct(Model $model)
+    {
+        $this->model = $model;
+    }
+
+    /**
+     * Returns the model that generated the event.
+     *
+     * @return Model
+     */
+    public function getModel()
+    {
+        return $this->model;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saved.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saved.php
new file mode 100644
index 0000000..f775e2e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saved.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Saved extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saving.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saving.php
new file mode 100644
index 0000000..b187294
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Saving.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Saving extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updated.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updated.php
new file mode 100644
index 0000000..ce0721f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updated.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Updated extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updating.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updating.php
new file mode 100644
index 0000000..4f33e66
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Events/Updating.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Models\Events;
+
+class Updating extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Factory.php
new file mode 100644
index 0000000..92ad91e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Factory.php
@@ -0,0 +1,209 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\Query\Builder;
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Schemas\SchemaInterface;
+
+/**
+ * Class Factory.
+ *
+ * Creates new LDAP models.
+ */
+class Factory
+{
+    /**
+     * The LDAP query builder.
+     *
+     * @var Builder
+     */
+    protected $query;
+
+    /**
+     * The LDAP schema.
+     *
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder $builder
+     */
+    public function __construct(Builder $builder)
+    {
+        $this->setQuery($builder)
+            ->setSchema($builder->getSchema());
+    }
+
+    /**
+     * Sets the current query builder.
+     *
+     * @param Builder $builder
+     *
+     * @return $this
+     */
+    public function setQuery(Builder $builder)
+    {
+        $this->query = $builder;
+
+        return $this;
+    }
+
+    /**
+     * Sets the current schema.
+     *
+     * If null is given, a default ActiveDirectory schema is set.
+     *
+     * @param SchemaInterface|null $schema
+     *
+     * @return $this
+     */
+    public function setSchema(SchemaInterface $schema = null)
+    {
+        $this->schema = $schema ?: new ActiveDirectory();
+
+        return $this;
+    }
+
+    /**
+     * Creates a new generic LDAP entry instance.
+     *
+     * @param array $attributes
+     *
+     * @return Entry
+     */
+    public function entry(array $attributes = [])
+    {
+        $model = $this->schema->entryModel();
+
+        return new $model($attributes, $this->query);
+    }
+
+    /**
+     * Creates a new user instance.
+     *
+     * @param array $attributes
+     *
+     * @return User
+     */
+    public function user(array $attributes = [])
+    {
+        $model = $this->schema->userModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), $this->schema->userObjectClasses());
+    }
+
+    /**
+     * Creates a new organizational unit instance.
+     *
+     * @param array $attributes
+     *
+     * @return OrganizationalUnit
+     */
+    public function ou(array $attributes = [])
+    {
+        $model = $this->schema->organizationalUnitModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), [
+                $this->schema->top(),
+                $this->schema->organizationalUnit(),
+            ]);
+    }
+
+    /**
+     * Creates a new organizational unit instance.
+     *
+     * @param array $attributes
+     *
+     * @return Organization
+     */
+    public function organization(array $attributes = [])
+    {
+        $model = $this->schema->organizationModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), [
+                $this->schema->top(),
+                $this->schema->organization(),
+            ]);
+    }
+
+    /**
+     * Creates a new group instance.
+     *
+     * @param array $attributes
+     *
+     * @return Group
+     */
+    public function group(array $attributes = [])
+    {
+        $model = $this->schema->groupModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), [
+                $this->schema->top(),
+                $this->schema->objectCategoryGroup(),
+            ]);
+    }
+
+    /**
+     * Creates a new organizational unit instance.
+     *
+     * @param array $attributes
+     *
+     * @return Container
+     */
+    public function container(array $attributes = [])
+    {
+        $model = $this->schema->containerModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), $this->schema->objectClassContainer());
+    }
+
+    /**
+     * Creates a new user instance as a contact.
+     *
+     * @param array $attributes
+     *
+     * @return User
+     */
+    public function contact(array $attributes = [])
+    {
+        $model = $this->schema->contactModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), [
+                $this->schema->top(),
+                $this->schema->person(),
+                $this->schema->organizationalPerson(),
+                $this->schema->contact(),
+            ]);
+    }
+
+    /**
+     * Creates a new computer instance.
+     *
+     * @param array $attributes
+     *
+     * @return Computer
+     */
+    public function computer(array $attributes = [])
+    {
+        $model = $this->schema->computerModel();
+
+        return (new $model($attributes, $this->query))
+            ->setAttribute($this->schema->objectClass(), [
+                $this->schema->top(),
+                $this->schema->person(),
+                $this->schema->organizationalPerson(),
+                $this->schema->user(),
+                $this->schema->computer(),
+            ]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ForeignSecurityPrincipal.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ForeignSecurityPrincipal.php
new file mode 100644
index 0000000..b0d15d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ForeignSecurityPrincipal.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class ForeignSecurityPrincipal.
+ *
+ * Represents an LDAP ForeignSecurityPrincipal.
+ */
+class ForeignSecurityPrincipal extends Entry
+{
+    use Concerns\HasMemberOf;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Group.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Group.php
new file mode 100644
index 0000000..7a89457
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Group.php
@@ -0,0 +1,288 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\Utilities;
+use InvalidArgumentException;
+
+/**
+ * Class Group.
+ *
+ * Represents an LDAP group (security / distribution).
+ */
+class Group extends Entry
+{
+    use Concerns\HasMemberOf;
+    use Concerns\HasDescription;
+
+    /**
+     * Returns all users apart of the current group.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677097(v=vs.85).aspx
+     *
+     * @return \Adldap\Query\Collection
+     */
+    public function getMembers()
+    {
+        $members = $this->getMembersFromAttribute($this->schema->member());
+
+        if (count($members) === 0) {
+            $members = $this->getPaginatedMembers();
+        }
+
+        return $this->newCollection($members);
+    }
+
+    /**
+     * Returns the group's member names only.
+     *
+     * @return array
+     */
+    public function getMemberNames()
+    {
+        $members = [];
+
+        $dns = $this->getAttribute($this->schema->member()) ?: [];
+
+        foreach ($dns as $dn) {
+            $exploded = Utilities::explodeDn($dn);
+
+            if (array_key_exists(0, $exploded)) {
+                $members[] = $exploded[0];
+            }
+        }
+
+        return $members;
+    }
+
+    /**
+     * Sets the groups members using an array of user DNs.
+     *
+     * @param array $entries
+     *
+     * @return $this
+     */
+    public function setMembers(array $entries)
+    {
+        return $this->setAttribute($this->schema->member(), $entries);
+    }
+
+    /**
+     * Adds multiple entries to the current group.
+     *
+     * @param array $members
+     *
+     * @return bool
+     */
+    public function addMembers(array $members)
+    {
+        $members = array_map(function ($member) {
+            return $member instanceof Model
+                ? $member->getDn()
+                : $member;
+        }, $members);
+
+        $mod = $this->newBatchModification(
+            $this->schema->member(),
+            LDAP_MODIFY_BATCH_ADD,
+            $members
+        );
+
+        return $this->addModification($mod)->save();
+    }
+
+    /**
+     * Adds an entry to the current group.
+     *
+     * @param string|Entry $member
+     *
+     * @throws InvalidArgumentException When the given entry is empty or contains no distinguished name.
+     *
+     * @return bool
+     */
+    public function addMember($member)
+    {
+        $member = ($member instanceof Model ? $member->getDn() : $member);
+
+        if (is_null($member)) {
+            throw new InvalidArgumentException(
+                'Cannot add member to group. The members distinguished name cannot be null.'
+            );
+        }
+
+        $mod = $this->newBatchModification(
+            $this->schema->member(),
+            LDAP_MODIFY_BATCH_ADD,
+            [$member]
+        );
+
+        return $this->addModification($mod)->save();
+    }
+
+    /**
+     * Removes an entry from the current group.
+     *
+     * @param string|Entry $member
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return bool
+     */
+    public function removeMember($member)
+    {
+        $member = ($member instanceof Model ? $member->getDn() : $member);
+
+        if (is_null($member)) {
+            throw new InvalidArgumentException(
+                'Cannot remove member to group. The members distinguished name cannot be null.'
+            );
+        }
+
+        $mod = $this->newBatchModification(
+            $this->schema->member(),
+            LDAP_MODIFY_BATCH_REMOVE,
+            [$member]
+        );
+
+        return $this->addModification($mod)->save();
+    }
+
+    /**
+     * Removes all members from the current group.
+     *
+     * @return bool
+     */
+    public function removeMembers()
+    {
+        $mod = $this->newBatchModification(
+            $this->schema->member(),
+            LDAP_MODIFY_BATCH_REMOVE_ALL
+        );
+
+        return $this->addModification($mod)->save();
+    }
+
+    /**
+     * Returns the group type integer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675935(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getGroupType()
+    {
+        return $this->getFirstAttribute($this->schema->groupType());
+    }
+
+    /**
+     * Retrieves group members by the specified model attribute.
+     *
+     * @param $attribute
+     *
+     * @return array
+     */
+    protected function getMembersFromAttribute($attribute)
+    {
+        $members = [];
+
+        $entries = $this->getAttribute($attribute) ?: [];
+
+        $query = $this->query->newInstance();
+
+        // Retrieving the member identifier to allow
+        // compatibility with LDAP variants.
+        $identifier = $this->schema->memberIdentifier();
+
+        foreach ($entries as $entry) {
+            // If our identifier is a distinguished name, then we need to
+            // use an alternate query method, as we can't locate records
+            // by distinguished names using an LDAP filter.
+            if ($identifier == 'dn' || $identifier == 'distinguishedname') {
+                $member = $query->findByDn($entry);
+            } else {
+                // We'll ensure we clear our filters when retrieving each member,
+                // so we can continue fetching the next one in line.
+                $member = $query->clearFilters()->findBy($identifier, $entry);
+            }
+
+            // We'll double check that we've received a model from
+            // our query before adding it into our results.
+            if ($member instanceof Model) {
+                $members[] = $member;
+            }
+        }
+
+        return $members;
+    }
+
+    /**
+     * Retrieves members that are contained in a member range.
+     *
+     * @return array
+     */
+    protected function getPaginatedMembers()
+    {
+        $members = [];
+
+        $keys = array_keys($this->attributes);
+
+        // We need to filter out the model attributes so
+        // we only retrieve the member range.
+        $attributes = array_values(array_filter($keys, function ($key) {
+            return strpos($key, 'member;range') !== false;
+        }));
+
+        // We'll grab the member range key so we can run a
+        // regex on it to determine the range.
+        $key = reset($attributes);
+
+        preg_match_all(
+            '/member;range\=([0-9]{1,4})-([0-9*]{1,4})/',
+            $key,
+            $matches
+        );
+
+        if ($key && count($matches) == 3) {
+            // Retrieve the ending range number.
+            $to = $matches[2][0];
+
+            // Retrieve the current groups members from the
+            // current range string (ex. 'member;0-50').
+            $members = $this->getMembersFromAttribute($key);
+
+            // If the query already included all member results (indicated
+            // by the '*'), then we can return here. Otherwise we need
+            // to continue on and retrieve the rest.
+            if ($to === '*') {
+                return $members;
+            }
+
+            // Determine the amount of members we're requesting per query.
+            $range = $to - $matches[1][0];
+
+            // Set our starting range to our last end range plus one.
+            $from = $to + 1;
+
+            // We'll determine the new end range by adding the
+            // total range to our new starting range.
+            $to = $from + $range;
+
+            // We'll need to query for the current model again but with
+            // a new range to retrieve the other members.
+            /** @var Group $group */
+            $group = $this->query->newInstance()->findByDn(
+                $this->getDn(),
+                [$this->query->getSchema()->memberRange($from, $to)]
+            );
+
+            // Finally, we'll merge our current members
+            // with the newly returned members.
+            $members = array_merge(
+                $members,
+                $group->getMembers()->toArray()
+            );
+        }
+
+        return $members;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Model.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Model.php
new file mode 100644
index 0000000..3bad2ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Model.php
@@ -0,0 +1,1266 @@
+<?php
+
+namespace Adldap\Models;
+
+use DateTime;
+use ArrayAccess;
+use Adldap\Utilities;
+use JsonSerializable;
+use Adldap\Query\Builder;
+use Illuminate\Support\Arr;
+use Adldap\Query\Collection;
+use InvalidArgumentException;
+use UnexpectedValueException;
+use Adldap\Models\Attributes\Sid;
+use Adldap\Models\Attributes\Guid;
+use Adldap\Schemas\SchemaInterface;
+use Adldap\Models\Attributes\MbString;
+use Adldap\Connections\ConnectionException;
+use Adldap\Models\Attributes\DistinguishedName;
+
+/**
+ * Class Model.
+ *
+ * Represents an LDAP record and provides the ability
+ * to modify / retrieve data from the record.
+ */
+abstract class Model implements ArrayAccess, JsonSerializable
+{
+    use Concerns\HasEvents;
+    use Concerns\HasAttributes;
+
+    /**
+     * Indicates if the model exists.
+     *
+     * @var bool
+     */
+    public $exists = false;
+
+    /**
+     * The current query builder instance.
+     *
+     * @var Builder
+     */
+    protected $query;
+
+    /**
+     * The current LDAP attribute schema.
+     *
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * Contains the models modifications.
+     *
+     * @var array
+     */
+    protected $modifications = [];
+
+    /**
+     * Constructor.
+     *
+     * @param array   $attributes
+     * @param Builder $builder
+     */
+    public function __construct(array $attributes, Builder $builder)
+    {
+        $this->setQuery($builder)
+            ->setSchema($builder->getSchema())
+            ->fill($attributes);
+    }
+
+    /**
+     * Returns the models distinguished name when the model is converted to a string.
+     *
+     * @return null|string
+     */
+    public function __toString()
+    {
+        return $this->getDn();
+    }
+
+    /**
+     * Sets the current query builder.
+     *
+     * @param Builder $builder
+     *
+     * @return $this
+     */
+    public function setQuery(Builder $builder)
+    {
+        $this->query = $builder;
+
+        return $this;
+    }
+
+    /**
+     * Returns the current query builder.
+     *
+     * @return Builder
+     */
+    public function getQuery()
+    {
+        return $this->query;
+    }
+
+    /**
+     * Returns a new query builder instance.
+     *
+     * @return Builder
+     */
+    public function newQuery()
+    {
+        return $this->query->newInstance();
+    }
+
+    /**
+     * Returns a new batch modification.
+     *
+     * @param string|null     $attribute
+     * @param string|int|null $type
+     * @param array           $values
+     *
+     * @return BatchModification
+     */
+    public function newBatchModification($attribute = null, $type = null, $values = [])
+    {
+        return new BatchModification($attribute, $type, $values);
+    }
+
+    /**
+     * Returns a new collection with the specified items.
+     *
+     * @param mixed $items
+     *
+     * @return Collection
+     */
+    public function newCollection($items = [])
+    {
+        return new Collection($items);
+    }
+
+    /**
+     * Sets the current model schema.
+     *
+     * @param SchemaInterface $schema
+     *
+     * @return $this
+     */
+    public function setSchema(SchemaInterface $schema)
+    {
+        $this->schema = $schema;
+
+        return $this;
+    }
+
+    /**
+     * Returns the current model schema.
+     *
+     * @return SchemaInterface
+     */
+    public function getSchema()
+    {
+        return $this->schema;
+    }
+
+    /**
+     * Determine if the given offset exists.
+     *
+     * @param string $offset
+     *
+     * @return bool
+     */
+    public function offsetExists($offset)
+    {
+        return !is_null($this->getAttribute($offset));
+    }
+
+    /**
+     * Get the value for a given offset.
+     *
+     * @param string $offset
+     *
+     * @return mixed
+     */
+    public function offsetGet($offset)
+    {
+        return $this->getAttribute($offset);
+    }
+
+    /**
+     * Set the value at the given offset.
+     *
+     * @param string $offset
+     * @param mixed  $value
+     *
+     * @return void
+     */
+    public function offsetSet($offset, $value)
+    {
+        $this->setAttribute($offset, $value);
+    }
+
+    /**
+     * Unset the value at the given offset.
+     *
+     * @param string $offset
+     *
+     * @return void
+     */
+    public function offsetUnset($offset)
+    {
+        unset($this->attributes[$offset]);
+    }
+
+    /**
+     * Determine if an attribute exists on the model.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function __isset($key)
+    {
+        return $this->offsetExists($key);
+    }
+
+    /**
+     * Convert the object into something JSON serializable.
+     *
+     * @return array
+     */
+    public function jsonSerialize()
+    {
+        $attributes = $this->getAttributes();
+
+        array_walk_recursive($attributes, function (&$val) {
+            if (MbString::isLoaded()) {
+                // If we're able to detect the attribute
+                // encoding, we'll encode only the
+                // attributes that need to be.
+                if (!MbString::isUtf8($val)) {
+                    $val = utf8_encode($val);
+                }
+            } else {
+                // If the mbstring extension is not loaded, we'll
+                // encode all attributes to make sure
+                // they are encoded properly.
+                $val = utf8_encode($val);
+            }
+        });
+
+        // We'll replace the binary GUID and SID with
+        // their string equivalents for convenience.
+        return array_replace($attributes, [
+            $this->schema->objectGuid() => $this->getConvertedGuid(),
+            $this->schema->objectSid()  => $this->getConvertedSid(),
+        ]);
+    }
+
+    /**
+     * Reload a fresh model instance from the directory.
+     *
+     * @return static|null
+     */
+    public function fresh()
+    {
+        $model = $this->query->newInstance()->findByDn($this->getDn());
+
+        return $model instanceof self ? $model : null;
+    }
+
+    /**
+     * Synchronizes the current models attributes with the directory values.
+     *
+     * @return bool
+     */
+    public function syncRaw()
+    {
+        if ($model = $this->fresh()) {
+            $this->setRawAttributes($model->getAttributes());
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns the models batch modifications to be processed.
+     *
+     * @return array
+     */
+    public function getModifications()
+    {
+        $this->buildModificationsFromDirty();
+
+        return $this->modifications;
+    }
+
+    /**
+     * Sets the models modifications array.
+     *
+     * @param array $modifications
+     *
+     * @return $this
+     */
+    public function setModifications(array $modifications = [])
+    {
+        $this->modifications = $modifications;
+
+        return $this;
+    }
+
+    /**
+     * Adds a batch modification to the models modifications array.
+     *
+     * @param array|BatchModification $mod
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function addModification($mod = [])
+    {
+        if ($mod instanceof BatchModification) {
+            $mod = $mod->get();
+        }
+
+        if ($this->isValidModification($mod)) {
+            $this->modifications[] = $mod;
+
+            return $this;
+        }
+
+        throw new InvalidArgumentException(
+            "The batch modification array does not include the mandatory 'attrib' or 'modtype' keys."
+        );
+    }
+
+    /**
+     * Returns the model's distinguished name string.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/aa366101(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getDistinguishedName()
+    {
+        return $this->getFirstAttribute($this->schema->distinguishedName());
+    }
+
+    /**
+     * Sets the model's distinguished name attribute.
+     *
+     * @param string|DistinguishedName $dn
+     *
+     * @return $this
+     */
+    public function setDistinguishedName($dn)
+    {
+        $this->setFirstAttribute($this->schema->distinguishedName(), (string) $dn);
+
+        return $this;
+    }
+
+    /**
+     * Returns the model's distinguished name string.
+     *
+     * (Alias for getDistinguishedName())
+     *
+     * @link https://msdn.microsoft.com/en-us/library/aa366101(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getDn()
+    {
+        return $this->getDistinguishedName();
+    }
+
+    /**
+     * Returns a DistinguishedName object for modifying the current models DN.
+     *
+     * @return DistinguishedName
+     */
+    public function getDnBuilder()
+    {
+        // If we currently don't have a distinguished name, we'll set
+        // it to our base, otherwise we'll use our query's base DN.
+        $dn = $this->getDistinguishedName() ?: $this->query->getDn();
+
+        return $this->getNewDnBuilder($dn);
+    }
+
+    /**
+     * Returns the models distinguished name components.
+     *
+     * @param bool $removeAttributePrefixes
+     *
+     * @return array
+     */
+    public function getDnComponents($removeAttributePrefixes = true)
+    {
+        if ($components = Utilities::explodeDn($this->getDn(), $removeAttributePrefixes)) {
+            unset($components['count']);
+
+            return $components;
+        }
+
+        return [];
+    }
+
+    /**
+     * Returns the distinguished name that the model is a leaf of.
+     *
+     * @return string
+     */
+    public function getDnRoot()
+    {
+        $components = $this->getDnComponents(false);
+
+        // Shift off the beginning of the array;
+        // This contains the models RDN.
+        array_shift($components);
+
+        return implode(',', $components);
+    }
+
+    /**
+     * Returns a new DistinguishedName object for building onto.
+     *
+     * @param string $baseDn
+     *
+     * @return DistinguishedName
+     */
+    public function getNewDnBuilder($baseDn = '')
+    {
+        return new DistinguishedName($baseDn);
+    }
+
+    /**
+     *  Sets the model's distinguished name attribute.
+     *
+     * (Alias for setDistinguishedName())
+     *
+     * @param string $dn
+     *
+     * @return $this
+     */
+    public function setDn($dn)
+    {
+        return $this->setDistinguishedName($dn);
+    }
+
+    /**
+     * Returns the model's hex object SID.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679024(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getObjectSid()
+    {
+        return $this->getFirstAttribute($this->schema->objectSid());
+    }
+
+    /**
+     * Returns the model's binary object GUID.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679021(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getObjectGuid()
+    {
+        return $this->getFirstAttribute($this->schema->objectGuid());
+    }
+
+    /**
+     * Returns the model's GUID.
+     *
+     * @return string|null
+     */
+    public function getConvertedGuid()
+    {
+        try {
+            return (string) new Guid($this->getObjectGuid());
+        } catch (InvalidArgumentException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Returns the model's SID.
+     *
+     * @return string|null
+     */
+    public function getConvertedSid()
+    {
+        try {
+            return (string) new Sid($this->getObjectSid());
+        } catch (InvalidArgumentException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Returns the model's common name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675449(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getCommonName()
+    {
+        return $this->getFirstAttribute($this->schema->commonName());
+    }
+
+    /**
+     * Sets the model's common name.
+     *
+     * @param string $name
+     *
+     * @return $this
+     */
+    public function setCommonName($name)
+    {
+        return $this->setFirstAttribute($this->schema->commonName(), $name);
+    }
+
+    /**
+     * Returns the model's name. An LDAP alias for the CN attribute.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675449(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getName()
+    {
+        return $this->getFirstAttribute($this->schema->name());
+    }
+
+    /**
+     * Sets the model's name.
+     *
+     * @param string $name
+     *
+     * @return Model
+     */
+    public function setName($name)
+    {
+        return $this->setFirstAttribute($this->schema->name(), $name);
+    }
+
+    /**
+     * Returns the model's display name.
+     *
+     * @return string
+     */
+    public function getDisplayName()
+    {
+        return $this->getFirstAttribute($this->schema->displayName());
+    }
+
+    /**
+     * Sets the model's display name.
+     *
+     * @param string $displayName
+     *
+     * @return $this
+     */
+    public function setDisplayName($displayName)
+    {
+        return $this->setFirstAttribute($this->schema->displayName(), $displayName);
+    }
+
+    /**
+     * Returns the model's samaccountname.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679635(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getAccountName()
+    {
+        return $this->getFirstAttribute($this->schema->accountName());
+    }
+
+    /**
+     * Sets the model's samaccountname.
+     *
+     * @param string $accountName
+     *
+     * @return Model
+     */
+    public function setAccountName($accountName)
+    {
+        return $this->setFirstAttribute($this->schema->accountName(), $accountName);
+    }
+
+    /**
+     * Returns the model's userPrincipalName.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/win32/adschema/a-userprincipalname
+     *
+     * @return string
+     */
+    public function getUserPrincipalName()
+    {
+        return $this->getFirstAttribute($this->schema->userPrincipalName());
+    }
+
+    /**
+     * Sets the model's userPrincipalName.
+     *
+     * @param string $upn
+     *
+     * @return Model
+     */
+    public function setUserPrincipalName($upn)
+    {
+        return $this->setFirstAttribute($this->schema->userPrincipalName(), $upn);
+    }
+
+    /**
+     * Returns the model's samaccounttype.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679637(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getAccountType()
+    {
+        return $this->getFirstAttribute($this->schema->accountType());
+    }
+
+    /**
+     * Returns the model's `whenCreated` time.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680924(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getCreatedAt()
+    {
+        return $this->getFirstAttribute($this->schema->createdAt());
+    }
+
+    /**
+     * Returns the created at time in a mysql formatted date.
+     *
+     * @return string
+     */
+    public function getCreatedAtDate()
+    {
+        return (new DateTime())->setTimestamp($this->getCreatedAtTimestamp())->format($this->dateFormat);
+    }
+
+    /**
+     * Returns the created at time in a unix timestamp format.
+     *
+     * @return float
+     */
+    public function getCreatedAtTimestamp()
+    {
+        return DateTime::createFromFormat($this->timestampFormat, $this->getCreatedAt())->getTimestamp();
+    }
+
+    /**
+     * Returns the model's `whenChanged` time.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680921(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getUpdatedAt()
+    {
+        return $this->getFirstAttribute($this->schema->updatedAt());
+    }
+
+    /**
+     * Returns the updated at time in a mysql formatted date.
+     *
+     * @return string
+     */
+    public function getUpdatedAtDate()
+    {
+        return (new DateTime())->setTimestamp($this->getUpdatedAtTimestamp())->format($this->dateFormat);
+    }
+
+    /**
+     * Returns the updated at time in a unix timestamp format.
+     *
+     * @return float
+     */
+    public function getUpdatedAtTimestamp()
+    {
+        return DateTime::createFromFormat($this->timestampFormat, $this->getUpdatedAt())->getTimestamp();
+    }
+
+    /**
+     * Returns the Container of the current Model.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679012(v=vs.85).aspx
+     *
+     * @return Container|Entry|bool
+     */
+    public function getObjectClass()
+    {
+        return $this->query->findByDn($this->getObjectCategoryDn());
+    }
+
+    /**
+     * Returns the CN of the model's object category.
+     *
+     * @return null|string
+     */
+    public function getObjectCategory()
+    {
+        $category = $this->getObjectCategoryArray();
+
+        if (is_array($category) && array_key_exists(0, $category)) {
+            return $category[0];
+        }
+    }
+
+    /**
+     * Returns the model's object category DN in an exploded array.
+     *
+     * @return array|false
+     */
+    public function getObjectCategoryArray()
+    {
+        return Utilities::explodeDn($this->getObjectCategoryDn());
+    }
+
+    /**
+     * Returns the model's object category DN string.
+     *
+     * @return null|string
+     */
+    public function getObjectCategoryDn()
+    {
+        return $this->getFirstAttribute($this->schema->objectCategory());
+    }
+
+    /**
+     * Returns the model's primary group ID.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679375(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrimaryGroupId()
+    {
+        return $this->getFirstAttribute($this->schema->primaryGroupId());
+    }
+
+    /**
+     * Returns the model's instance type.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676204(v=vs.85).aspx
+     *
+     * @return int
+     */
+    public function getInstanceType()
+    {
+        return $this->getFirstAttribute($this->schema->instanceType());
+    }
+
+    /**
+     * Returns the distinguished name of the user who is assigned to manage this object.
+     *
+     * @return string|null
+     */
+    public function getManagedBy()
+    {
+        return $this->getFirstAttribute($this->schema->managedBy());
+    }
+
+    /**
+     * Returns the user model of the user who is assigned to manage this object.
+     *
+     * Returns false otherwise.
+     *
+     * @return User|bool
+     */
+    public function getManagedByUser()
+    {
+        if ($dn = $this->getManagedBy()) {
+            return $this->query->newInstance()->findByDn($dn);
+        }
+
+        return false;
+    }
+
+    /**
+     * Sets the user who is assigned to managed this object.
+     *
+     * @param Model|string $dn
+     *
+     * @return $this
+     */
+    public function setManagedBy($dn)
+    {
+        if ($dn instanceof self) {
+            $dn = $dn->getDn();
+        }
+
+        return $this->setFirstAttribute($this->schema->managedBy(), $dn);
+    }
+
+    /**
+     * Returns the model's max password age.
+     *
+     * @return string
+     */
+    public function getMaxPasswordAge()
+    {
+        return $this->getFirstAttribute($this->schema->maxPasswordAge());
+    }
+
+    /**
+     * Returns the model's max password age in days.
+     *
+     * @return int
+     */
+    public function getMaxPasswordAgeDays()
+    {
+        $age = $this->getMaxPasswordAge();
+
+        return (int) (abs($age) / 10000000 / 60 / 60 / 24);
+    }
+
+    /**
+     * Determine if the current model is located inside the given OU.
+     *
+     * If a model instance is given, the strict parameter is ignored.
+     *
+     * @param Model|string $ou     The organizational unit to check.
+     * @param bool         $strict Whether the check is case-sensitive.
+     *
+     * @return bool
+     */
+    public function inOu($ou, $strict = false)
+    {
+        if ($ou instanceof self) {
+            // If we've been given an OU model, we can
+            // just check if the OU's DN is inside
+            // the current models DN.
+            return (bool) strpos($this->getDn(), $ou->getDn());
+        }
+
+        $suffix = $strict ? '' : 'i';
+
+        return (bool) preg_grep("/{$ou}/{$suffix}", $this->getDnBuilder()->getComponents('ou'));
+    }
+
+    /**
+     * Returns true / false if the current model is writable
+     * by checking its instance type integer.
+     *
+     * @return bool
+     */
+    public function isWritable()
+    {
+        return (int) $this->getInstanceType() === 4;
+    }
+
+    /**
+     * Saves the changes to LDAP and returns the results.
+     *
+     * @param array $attributes The attributes to update or create for the current entry.
+     *
+     * @return bool
+     */
+    public function save(array $attributes = [])
+    {
+        $this->fireModelEvent(new Events\Saving($this));
+
+        $saved = $this->exists ? $this->update($attributes) : $this->create($attributes);
+
+        if ($saved) {
+            $this->fireModelEvent(new Events\Saved($this));
+        }
+
+        return $saved;
+    }
+
+    /**
+     * Updates the model.
+     *
+     * @param array $attributes The attributes to update for the current entry.
+     *
+     * @return bool
+     */
+    public function update(array $attributes = [])
+    {
+        $this->fill($attributes);
+
+        $modifications = $this->getModifications();
+
+        if (count($modifications) > 0) {
+            $this->fireModelEvent(new Events\Updating($this));
+
+            // Push the update.
+            if ($this->query->getConnection()->modifyBatch($this->getDn(), $modifications)) {
+                // Re-sync attributes.
+                $this->syncRaw();
+
+                $this->fireModelEvent(new Events\Updated($this));
+
+                // Re-set the models modifications.
+                $this->modifications = [];
+
+                return true;
+            }
+
+            // Modification failed, return false.
+            return false;
+        }
+
+        // We need to return true here because modify batch will
+        // return false if no modifications are made
+        // but this may not always be the case.
+        return true;
+    }
+
+    /**
+     * Creates the entry in LDAP.
+     *
+     * @param array $attributes The attributes for the new entry.
+     *
+     * @throws UnexpectedValueException
+     *
+     * @return bool
+     */
+    public function create(array $attributes = [])
+    {
+        $this->fill($attributes);
+
+        if (empty($this->getDn())) {
+            // If the model doesn't currently have a distinguished
+            // name set, we'll create one automatically using
+            // the current query builders base DN.
+            $dn = $this->getCreatableDn();
+
+            // If the dn we receive is the same as our queries base DN, we need
+            // to throw an exception. The LDAP object must have a valid RDN.
+            if ($dn->get() == $this->query->getDn()) {
+                throw new UnexpectedValueException("An LDAP object must have a valid RDN to be created. '$dn' given.");
+            }
+
+            $this->setDn($dn);
+        }
+
+        $this->fireModelEvent(new Events\Creating($this));
+
+        // Create the entry.
+        $created = $this->query->getConnection()->add($this->getDn(), $this->getCreatableAttributes());
+
+        if ($created) {
+            // If the entry was created we'll re-sync
+            // the models attributes from the server.
+            $this->syncRaw();
+
+            $this->fireModelEvent(new Events\Created($this));
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Creates an attribute on the current model.
+     *
+     * @param string $attribute The attribute to create
+     * @param mixed  $value     The value of the new attribute
+     * @param bool   $sync      Whether to re-sync all attributes
+     *
+     * @return bool
+     */
+    public function createAttribute($attribute, $value, $sync = true)
+    {
+        if (
+            $this->exists &&
+            $this->query->getConnection()->modAdd($this->getDn(), [$attribute => $value])
+        ) {
+            if ($sync) {
+                $this->syncRaw();
+            }
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Updates the specified attribute with the specified value.
+     *
+     * @param string $attribute The attribute to modify
+     * @param mixed  $value     The new value for the attribute
+     * @param bool   $sync      Whether to re-sync all attributes
+     *
+     * @return bool
+     */
+    public function updateAttribute($attribute, $value, $sync = true)
+    {
+        if (
+            $this->exists &&
+            $this->query->getConnection()->modReplace($this->getDn(), [$attribute => $value])
+        ) {
+            if ($sync) {
+                $this->syncRaw();
+            }
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Deletes an attribute on the current entry.
+     *
+     * @param string|array $attributes The attribute(s) to delete
+     * @param bool         $sync       Whether to re-sync all attributes
+     *
+     * Delete specific values in attributes:
+     *
+     *     ["memberuid" => "username"]
+     *
+     * Delete an entire attribute:
+     *
+     *     ["memberuid" => []]
+     *
+     * @return bool
+     */
+    public function deleteAttribute($attributes, $sync = true)
+    {
+        // If we've been given a string, we'll assume we're removing a
+        // single attribute. Otherwise, we'll assume it's
+        // an array of attributes to remove.
+        $attributes = is_string($attributes) ? [$attributes => []] : $attributes;
+
+        if (
+            $this->exists &&
+            $this->query->getConnection()->modDelete($this->getDn(), $attributes)
+        ) {
+            if ($sync) {
+                $this->syncRaw();
+            }
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Deletes the current entry.
+     *
+     * Throws a ModelNotFoundException if the current model does
+     * not exist or does not contain a distinguished name.
+     *
+     * @param bool $recursive Whether to recursively delete leaf nodes (models that are children).
+     *
+     * @throws ModelDoesNotExistException
+     *
+     * @return bool
+     */
+    public function delete($recursive = false)
+    {
+        $dn = $this->getDn();
+
+        if ($this->exists === false || empty($dn)) {
+            // Make sure the record exists before we can delete it.
+            // Otherwise, we'll throw an exception.
+            throw (new ModelDoesNotExistException())->setModel(get_class($this));
+        }
+
+        $this->fireModelEvent(new Events\Deleting($this));
+
+        if ($recursive) {
+            // If recursive is requested, we'll retrieve all direct leaf nodes
+            // by executing a 'listing' and delete each resulting model.
+            $this->newQuery()->listing()->in($this->getDn())->get()->each(function (self $model) use ($recursive) {
+                $model->delete($recursive);
+            });
+        }
+
+        if ($this->query->getConnection()->delete($dn)) {
+            // If the deletion was successful, we'll mark the model
+            // as non-existing and fire the deleted event.
+            $this->exists = false;
+
+            $this->fireModelEvent(new Events\Deleted($this));
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Moves the current model into the given new parent.
+     *
+     * For example: $user->move($ou);
+     *
+     * @param Model|string $newParentDn  The new parent of the current model.
+     * @param bool         $deleteOldRdn Whether to delete the old models relative distinguished name once renamed / moved.
+     *
+     * @return bool
+     */
+    public function move($newParentDn, $deleteOldRdn = true)
+    {
+        // First we'll explode the current models distinguished name and keep their attributes prefixes.
+        $parts = Utilities::explodeDn($this->getDn(), $removeAttrPrefixes = false);
+
+        // If the current model has an empty RDN, we can't move it.
+        if ((int) Arr::first($parts) === 0) {
+            throw new UnexpectedValueException('Current model does not contain an RDN to move.');
+        }
+
+        // Looks like we have a DN. We'll retrieve the leftmost RDN (the identifier).
+        $rdn = Arr::get($parts, 0);
+
+        return $this->rename($rdn, $newParentDn, $deleteOldRdn);
+    }
+
+    /**
+     * Renames the current model to a new RDN and new parent.
+     *
+     * @param string            $rdn          The models new relative distinguished name. Example: "cn=JohnDoe"
+     * @param Model|string|null $newParentDn  The models new parent distinguished name (if moving). Leave this null if you are only renaming. Example: "ou=MovedUsers,dc=acme,dc=org"
+     * @param bool|true         $deleteOldRdn Whether to delete the old models relative distinguished name once renamed / moved.
+     *
+     * @return bool
+     */
+    public function rename($rdn, $newParentDn = null, $deleteOldRdn = true)
+    {
+        if ($newParentDn instanceof self) {
+            $newParentDn = $newParentDn->getDn();
+        }
+
+        $moved = $this->query->getConnection()->rename($this->getDn(), $rdn, $newParentDn, $deleteOldRdn);
+
+        if ($moved) {
+            // If the model was successfully moved, we'll set its
+            // new DN so we can sync it's attributes properly.
+            $this->setDn("{$rdn},{$newParentDn}");
+
+            $this->syncRaw();
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Constructs a new distinguished name that is creatable in the directory.
+     *
+     * @return DistinguishedName|string
+     */
+    protected function getCreatableDn()
+    {
+        return $this->getDnBuilder()->addCn($this->getCommonName());
+    }
+
+    /**
+     * Returns the models creatable attributes.
+     *
+     * @return mixed
+     */
+    protected function getCreatableAttributes()
+    {
+        return Arr::except($this->getAttributes(), [$this->schema->distinguishedName()]);
+    }
+
+    /**
+     * Determines if the given modification is valid.
+     *
+     * @param mixed $mod
+     *
+     * @return bool
+     */
+    protected function isValidModification($mod)
+    {
+        return is_array($mod) &&
+            array_key_exists(BatchModification::KEY_MODTYPE, $mod) &&
+            array_key_exists(BatchModification::KEY_ATTRIB, $mod);
+    }
+
+    /**
+     * Builds the models modifications from its dirty attributes.
+     *
+     * @return array
+     */
+    protected function buildModificationsFromDirty()
+    {
+        foreach ($this->getDirty() as $attribute => $values) {
+            // Make sure values is always an array.
+            $values = (is_array($values) ? $values : [$values]);
+
+            // Create a new modification.
+            $modification = $this->newBatchModification($attribute, null, $values);
+
+            if (array_key_exists($attribute, $this->original)) {
+                // If the attribute we're modifying has an original value, we'll give the
+                // BatchModification object its values to automatically determine
+                // which type of LDAP operation we need to perform.
+                $modification->setOriginal($this->original[$attribute]);
+            }
+
+            // Build the modification from its
+            // possible original values.
+            $modification->build();
+
+            if ($modification->isValid()) {
+                // Finally, we'll add the modification to the model.
+                $this->addModification($modification);
+            }
+        }
+
+        return $this->modifications;
+    }
+
+    /**
+     * Validates that the current LDAP connection is secure.
+     *
+     * @throws ConnectionException
+     *
+     * @return void
+     */
+    protected function validateSecureConnection()
+    {
+        if (!$this->query->getConnection()->canChangePasswords()) {
+            throw new ConnectionException(
+                'You must be connected to your LDAP server with TLS or SSL to perform this operation.'
+            );
+        }
+    }
+
+    /**
+     * Converts the inserted string boolean to a PHP boolean.
+     *
+     * @param string $bool
+     *
+     * @return null|bool
+     */
+    protected function convertStringToBool($bool)
+    {
+        $bool = strtoupper($bool);
+
+        if ($bool === strtoupper($this->schema->false())) {
+            return false;
+        } elseif ($bool === strtoupper($this->schema->true())) {
+            return true;
+        } else {
+            return;
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelDoesNotExistException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelDoesNotExistException.php
new file mode 100644
index 0000000..3935610
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelDoesNotExistException.php
@@ -0,0 +1,36 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\AdldapException;
+
+/**
+ * Class ModelDoesNotExistException.
+ *
+ * Thrown when a model being saved / updated does not actually exist.
+ */
+class ModelDoesNotExistException extends AdldapException
+{
+    /**
+     * The class name of the model that does not exist.
+     *
+     * @var string
+     */
+    protected $model;
+
+    /**
+     * Sets the model that does not exist.
+     *
+     * @param string $model
+     *
+     * @return ModelDoesNotExistException
+     */
+    public function setModel($model)
+    {
+        $this->model = $model;
+
+        $this->message = "Model [{$model}] does not exist.";
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelNotFoundException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelNotFoundException.php
new file mode 100644
index 0000000..6cc3334
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/ModelNotFoundException.php
@@ -0,0 +1,45 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\AdldapException;
+
+/**
+ * Class ModelNotFoundException.
+ *
+ * Thrown when an LDAP record is not found.
+ */
+class ModelNotFoundException extends AdldapException
+{
+    /**
+     * The query filter that was used.
+     *
+     * @var string
+     */
+    protected $query;
+
+    /**
+     * The base DN of the query that was used.
+     *
+     * @var string
+     */
+    protected $baseDn;
+
+    /**
+     * Sets the query that was used.
+     *
+     * @param string $query
+     * @param string $baseDn
+     *
+     * @return ModelNotFoundException
+     */
+    public function setQuery($query, $baseDn)
+    {
+        $this->query = $query;
+        $this->baseDn = $baseDn;
+
+        $this->message = "No LDAP query results for filter: [{$query}] in: [{$baseDn}]";
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Organization.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Organization.php
new file mode 100644
index 0000000..88129d0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Organization.php
@@ -0,0 +1,31 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Organization.
+ *
+ * Represents an LDAP organization.
+ */
+class Organization extends Entry
+{
+    use Concerns\HasDescription;
+
+    /**
+     * Retrieves the organization units OU attribute.
+     *
+     * @return string
+     */
+    public function getOrganization()
+    {
+        return $this->getFirstAttribute($this->schema->organizationName());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getCreatableDn()
+    {
+        return $this->getDnBuilder()->addO($this->getOrganization());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/OrganizationalUnit.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/OrganizationalUnit.php
new file mode 100644
index 0000000..0571e4d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/OrganizationalUnit.php
@@ -0,0 +1,31 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class OrganizationalUnit.
+ *
+ * Represents an LDAP organizational unit.
+ */
+class OrganizationalUnit extends Entry
+{
+    use Concerns\HasDescription;
+
+    /**
+     * Retrieves the organization units OU attribute.
+     *
+     * @return string
+     */
+    public function getOu()
+    {
+        return $this->getFirstAttribute($this->schema->organizationalUnitShort());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getCreatableDn()
+    {
+        return $this->getDnBuilder()->addOU($this->getOu());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Printer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Printer.php
new file mode 100644
index 0000000..e055866
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/Printer.php
@@ -0,0 +1,286 @@
+<?php
+
+namespace Adldap\Models;
+
+/**
+ * Class Printer.
+ *
+ * Represents an LDAP printer.
+ */
+class Printer extends Entry
+{
+    /**
+     * Returns the printers name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679385(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrinterName()
+    {
+        return $this->getFirstAttribute($this->schema->printerName());
+    }
+
+    /**
+     * Returns the printers share name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679408(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrinterShareName()
+    {
+        return $this->getFirstAttribute($this->schema->printerShareName());
+    }
+
+    /**
+     * Returns the printers memory.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679396(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getMemory()
+    {
+        return $this->getFirstAttribute($this->schema->printerMemory());
+    }
+
+    /**
+     * Returns the printers URL.
+     *
+     * @return string
+     */
+    public function getUrl()
+    {
+        return $this->getFirstAttribute($this->schema->url());
+    }
+
+    /**
+     * Returns the printers location.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676839(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getLocation()
+    {
+        return $this->getFirstAttribute($this->schema->location());
+    }
+
+    /**
+     * Returns the server name that the
+     * current printer is connected to.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679772(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getServerName()
+    {
+        return $this->getFirstAttribute($this->schema->serverName());
+    }
+
+    /**
+     * Returns true / false if the printer can print in color.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679382(v=vs.85).aspx
+     *
+     * @return null|bool
+     */
+    public function getColorSupported()
+    {
+        return $this->convertStringToBool(
+            $this->getFirstAttribute(
+                $this->schema->printerColorSupported()
+            )
+        );
+    }
+
+    /**
+     * Returns true / false if the printer supports duplex printing.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679383(v=vs.85).aspx
+     *
+     * @return null|bool
+     */
+    public function getDuplexSupported()
+    {
+        return $this->convertStringToBool(
+            $this->getFirstAttribute(
+                $this->schema->printerDuplexSupported()
+            )
+        );
+    }
+
+    /**
+     * Returns an array of printer paper types that the printer supports.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679395(v=vs.85).aspx
+     *
+     * @return array
+     */
+    public function getMediaSupported()
+    {
+        return $this->getAttribute($this->schema->printerMediaSupported());
+    }
+
+    /**
+     * Returns true / false if the printer supports stapling.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679410(v=vs.85).aspx
+     *
+     * @return null|bool
+     */
+    public function getStaplingSupported()
+    {
+        return $this->convertStringToBool(
+            $this->getFirstAttribute(
+                $this->schema->printerStaplingSupported()
+            )
+        );
+    }
+
+    /**
+     * Returns an array of the printers bin names.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679380(v=vs.85).aspx
+     *
+     * @return array
+     */
+    public function getPrintBinNames()
+    {
+        return $this->getAttribute($this->schema->printerBinNames());
+    }
+
+    /**
+     * Returns the printers maximum resolution.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679391(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintMaxResolution()
+    {
+        return $this->getFirstAttribute($this->schema->printerMaxResolutionSupported());
+    }
+
+    /**
+     * Returns the printers orientations supported.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679402(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintOrientations()
+    {
+        return $this->getFirstAttribute($this->schema->printerOrientationSupported());
+    }
+
+    /**
+     * Returns the driver name of the printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675652(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getDriverName()
+    {
+        return $this->getFirstAttribute($this->schema->driverName());
+    }
+
+    /**
+     * Returns the printer drivers version number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675653(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getDriverVersion()
+    {
+        return $this->getFirstAttribute($this->schema->driverVersion());
+    }
+
+    /**
+     * Returns the priority number of the printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679413(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPriority()
+    {
+        return $this->getFirstAttribute($this->schema->priority());
+    }
+
+    /**
+     * Returns the printers start time.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679411(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintStartTime()
+    {
+        return $this->getFirstAttribute($this->schema->printerStartTime());
+    }
+
+    /**
+     * Returns the printers end time.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679384(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintEndTime()
+    {
+        return $this->getFirstAttribute($this->schema->printerEndTime());
+    }
+
+    /**
+     * Returns the port name of printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679131(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPortName()
+    {
+        return $this->getFirstAttribute($this->schema->portName());
+    }
+
+    /**
+     * Returns the printers version number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680897(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getVersionNumber()
+    {
+        return $this->getFirstAttribute($this->schema->versionNumber());
+    }
+
+    /**
+     * Returns the print rate.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679405(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintRate()
+    {
+        return $this->getFirstAttribute($this->schema->printerPrintRate());
+    }
+
+    /**
+     * Returns the print rate unit.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679406(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getPrintRateUnit()
+    {
+        return $this->getFirstAttribute($this->schema->printerPrintRateUnit());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/RootDse.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/RootDse.php
new file mode 100644
index 0000000..31156c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/RootDse.php
@@ -0,0 +1,85 @@
+<?php
+
+namespace Adldap\Models;
+
+use DateTime;
+
+/**
+ * Class RootDse.
+ *
+ * Represents the LDAP connections Root DSE record.
+ */
+class RootDse extends Model
+{
+    /**
+     * Returns the hosts current time in unix timestamp format.
+     *
+     * @return int
+     */
+    public function getCurrentTime()
+    {
+        $time = $this->getFirstAttribute($this->schema->currentTime());
+
+        return DateTime::createFromFormat($this->timestampFormat, $time)->getTimestamp();
+    }
+
+    /**
+     * Returns the hosts current time in the models date format.
+     *
+     * @return string
+     */
+    public function getCurrentTimeDate()
+    {
+        return (new DateTime())->setTimestamp($this->getCurrentTime())->format($this->dateFormat);
+    }
+
+    /**
+     * Returns the hosts configuration naming context.
+     *
+     * @return string
+     */
+    public function getConfigurationNamingContext()
+    {
+        return $this->getFirstAttribute($this->schema->configurationNamingContext());
+    }
+
+    /**
+     * Returns the hosts schema naming context.
+     *
+     * @return string
+     */
+    public function getSchemaNamingContext()
+    {
+        return $this->getFirstAttribute($this->schema->schemaNamingContext());
+    }
+
+    /**
+     * Returns the hosts DNS name.
+     *
+     * @return string
+     */
+    public function getDnsHostName()
+    {
+        return $this->getFirstAttribute($this->schema->dnsHostName());
+    }
+
+    /**
+     * Returns the current hosts server name.
+     *
+     * @return string
+     */
+    public function getServerName()
+    {
+        return $this->getFirstAttribute($this->schema->serverName());
+    }
+
+    /**
+     * Returns the DN of the root domain NC for this DC's forest.
+     *
+     * @return mixed
+     */
+    public function getRootDomainNamingContext()
+    {
+        return $this->getFirstAttribute($this->schema->rootDomainNamingContext());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/User.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/User.php
new file mode 100644
index 0000000..14c3343
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/User.php
@@ -0,0 +1,1054 @@
+<?php
+
+namespace Adldap\Models;
+
+use DateTime;
+use Adldap\Utilities;
+use Adldap\AdldapException;
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Models\Attributes\AccountControl;
+use Adldap\Models\Attributes\TSPropertyArray;
+use Illuminate\Contracts\Auth\Authenticatable;
+
+/**
+ * Class User.
+ *
+ * Represents an LDAP user.
+ */
+class User extends Entry implements Authenticatable
+{
+    use Concerns\HasUserProperties;
+    use Concerns\HasDescription;
+    use Concerns\HasMemberOf;
+    use Concerns\HasLastLogonAndLogOff;
+    use Concerns\HasUserAccountControl;
+
+    /** @var callable|null */
+    private static $passwordStrategy;
+
+    /**
+     * Password will be processed using given callback before saving.
+     *
+     * @param callable $strategy
+     */
+    public static function usePasswordStrategy(callable $strategy)
+    {
+        static::$passwordStrategy = $strategy;
+    }
+
+    /**
+     * Will return user set password strategy or default one.
+     *
+     * @return callable
+     */
+    public static function getPasswordStrategy(): callable
+    {
+        return static::$passwordStrategy ?? function ($password) {
+            return Utilities::encodePassword($password);
+        };
+    }
+
+    /**
+     * Get the name of the unique identifier for the user.
+     *
+     * @return string
+     */
+    public function getAuthIdentifierName()
+    {
+        return $this->schema->objectGuid();
+    }
+
+    /**
+     * Get the unique identifier for the user.
+     *
+     * @return mixed
+     */
+    public function getAuthIdentifier()
+    {
+        return $this->getConvertedGuid();
+    }
+
+    /**
+     * Get the password for the user.
+     *
+     * @return string
+     */
+    public function getAuthPassword()
+    {
+    }
+
+    /**
+     * Get the token value for the "remember me" session.
+     *
+     * @return string
+     */
+    public function getRememberToken()
+    {
+    }
+
+    /**
+     * Set the token value for the "remember me" session.
+     *
+     * @param string $value
+     *
+     * @return void
+     */
+    public function setRememberToken($value)
+    {
+    }
+
+    /**
+     * Get the column name for the "remember me" token.
+     *
+     * @return string
+     */
+    public function getRememberTokenName()
+    {
+    }
+
+    /**
+     * Returns the department number.
+     *
+     * @return string
+     */
+    public function getDepartmentNumber()
+    {
+        return $this->getFirstAttribute($this->schema->departmentNumber());
+    }
+
+    /**
+     * Sets the department number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setDepartmentNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->departmentNumber(), $number);
+    }
+
+    /**
+     * Returns the users info.
+     *
+     * @return mixed
+     */
+    public function getInfo()
+    {
+        return $this->getFirstAttribute($this->schema->info());
+    }
+
+    /**
+     * Sets the users info.
+     *
+     * @param string $info
+     *
+     * @return $this
+     */
+    public function setInfo($info)
+    {
+        return $this->setFirstAttribute($this->schema->info(), $info);
+    }
+
+    /**
+     * Returns the users physical delivery office name.
+     *
+     * @return string
+     */
+    public function getPhysicalDeliveryOfficeName()
+    {
+        return $this->getFirstAttribute($this->schema->physicalDeliveryOfficeName());
+    }
+
+    /**
+     * Sets the users physical delivery office name.
+     *
+     * @param string $deliveryOffice
+     *
+     * @return $this
+     */
+    public function setPhysicalDeliveryOfficeName($deliveryOffice)
+    {
+        return $this->setFirstAttribute($this->schema->physicalDeliveryOfficeName(), $deliveryOffice);
+    }
+
+    /**
+     * Returns the users locale.
+     *
+     * @return string
+     */
+    public function getLocale()
+    {
+        return $this->getFirstAttribute($this->schema->locale());
+    }
+
+    /**
+     * Sets the users locale.
+     *
+     * @param string $locale
+     *
+     * @return $this
+     */
+    public function setLocale($locale)
+    {
+        return $this->setFirstAttribute($this->schema->locale(), $locale);
+    }
+
+    /**
+     * Returns the users company.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675457(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getCompany()
+    {
+        return $this->getFirstAttribute($this->schema->company());
+    }
+
+    /**
+     * Sets the users company.
+     *
+     * @param string $company
+     *
+     * @return $this
+     */
+    public function setCompany($company)
+    {
+        return $this->setFirstAttribute($this->schema->company(), $company);
+    }
+
+    /**
+     * Returns the users mailbox store DN.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/aa487565(v=exchg.65).aspx
+     *
+     * @return string
+     */
+    public function getHomeMdb()
+    {
+        return $this->getFirstAttribute($this->schema->homeMdb());
+    }
+
+    /**
+     * Sets the users home drive.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676191(v=vs.85).aspx
+     *
+     * @return $this
+     */
+    public function setHomeDrive($drive)
+    {
+        return $this->setAttribute($this->schema->homeDrive(), $drive);
+    }
+
+    /**
+     * Specifies the drive letter to which to map the UNC path specified by homeDirectory.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676191(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getHomeDrive()
+    {
+        return $this->getFirstAttribute($this->schema->homeDrive());
+    }
+
+    /**
+     * Sets the users home directory.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676190(v=vs.85).aspx
+     *
+     * @param string $directory
+     *
+     * @return $this
+     */
+    public function setHomeDirectory($directory)
+    {
+        return $this->setAttribute($this->schema->homeDirectory(), $directory);
+    }
+
+    /**
+     * The home directory for the account.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676190(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getHomeDirectory()
+    {
+        return $this->getFirstAttribute($this->schema->homeDirectory());
+    }
+
+    /**
+     * The user's main home phone number.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/desktop/ADSchema/a-homephone
+     *
+     * @return string|null
+     */
+    public function getHomePhone()
+    {
+        return $this->getFirstAttribute($this->schema->homePhone());
+    }
+
+    /**
+     * Returns the users principal name.
+     *
+     * This is usually their email address.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680857(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getUserPrincipalName()
+    {
+        return $this->getFirstAttribute($this->schema->userPrincipalName());
+    }
+
+    /**
+     * Sets the users user principal name.
+     *
+     * @param string $userPrincipalName
+     *
+     * @return $this
+     */
+    public function setUserPrincipalName($userPrincipalName)
+    {
+        return $this->setFirstAttribute($this->schema->userPrincipalName(), $userPrincipalName);
+    }
+
+    /**
+     * Returns an array of workstations the user is assigned to.
+     *
+     * @return array
+     */
+    public function getUserWorkstations()
+    {
+        $workstations = $this->getFirstAttribute($this->schema->userWorkstations());
+
+        return array_filter(explode(',', $workstations));
+    }
+
+    /**
+     * Sets the workstations the user can login to.
+     *
+     * @param string|array $workstations The names of the workstations the user can login to.
+     *                                   Must be an array of names, or a comma separated
+     *                                   list of names.
+     *
+     * @return $this
+     */
+    public function setUserWorkstations($workstations = [])
+    {
+        if (is_array($workstations)) {
+            $workstations = implode(',', $workstations);
+        }
+
+        return $this->setFirstAttribute($this->schema->userWorkstations(), $workstations);
+    }
+
+    /**
+     * Returns the users script path if the user has one.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679656(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getScriptPath()
+    {
+        return $this->getFirstAttribute($this->schema->scriptPath());
+    }
+
+    /**
+     * Sets the users script path.
+     *
+     * @param string $path
+     *
+     * @return $this
+     */
+    public function setScriptPath($path)
+    {
+        return $this->setFirstAttribute($this->schema->scriptPath(), $path);
+    }
+
+    /**
+     * Returns the users bad password count.
+     *
+     * @return string
+     */
+    public function getBadPasswordCount()
+    {
+        return $this->getFirstAttribute($this->schema->badPasswordCount());
+    }
+
+    /**
+     * Returns the users bad password time.
+     *
+     * @return string
+     */
+    public function getBadPasswordTime()
+    {
+        return $this->getFirstAttribute($this->schema->badPasswordTime());
+    }
+
+    /**
+     * Returns the bad password time unix timestamp.
+     *
+     * @return float|null
+     */
+    public function getBadPasswordTimestamp()
+    {
+        if ($time = $this->getBadPasswordTime()) {
+            return Utilities::convertWindowsTimeToUnixTime($time);
+        }
+    }
+
+    /**
+     * Returns the formatted timestamp of the bad password date.
+     *
+     * @throws \Exception
+     *
+     * @return string|null
+     */
+    public function getBadPasswordDate()
+    {
+        if ($timestamp = $this->getBadPasswordTimestamp()) {
+            return (new DateTime())->setTimestamp($timestamp)->format($this->dateFormat);
+        }
+    }
+
+    /**
+     * Returns the time when the users password was set last.
+     *
+     * @return string
+     */
+    public function getPasswordLastSet()
+    {
+        return $this->getFirstAttribute($this->schema->passwordLastSet());
+    }
+
+    /**
+     * Returns the password last set unix timestamp.
+     *
+     * @return float|null
+     */
+    public function getPasswordLastSetTimestamp()
+    {
+        if ($time = $this->getPasswordLastSet()) {
+            return Utilities::convertWindowsTimeToUnixTime($time);
+        }
+    }
+
+    /**
+     * Returns the formatted timestamp of the password last set date.
+     *
+     * @throws \Exception
+     *
+     * @return string|null
+     */
+    public function getPasswordLastSetDate()
+    {
+        if ($timestamp = $this->getPasswordLastSetTimestamp()) {
+            return (new DateTime())->setTimestamp($timestamp)->format($this->dateFormat);
+        }
+    }
+
+    /**
+     * Returns the users lockout time.
+     *
+     * @return string
+     */
+    public function getLockoutTime()
+    {
+        return $this->getFirstAttribute($this->schema->lockoutTime());
+    }
+
+    /**
+     * Returns the users lockout unix timestamp.
+     *
+     * @return float|null
+     */
+    public function getLockoutTimestamp()
+    {
+        if ($time = $this->getLockoutTime()) {
+            return Utilities::convertWindowsTimeToUnixTime($time);
+        }
+    }
+
+    /**
+     * Returns the formatted timestamp of the lockout date.
+     *
+     * @throws \Exception
+     *
+     * @return string|null
+     */
+    public function getLockoutDate()
+    {
+        if ($timestamp = $this->getLockoutTimestamp()) {
+            return (new DateTime())->setTimestamp($timestamp)->format($this->dateFormat);
+        }
+    }
+
+    /**
+     * Clears the accounts lockout time, unlocking the account.
+     *
+     * @return $this
+     */
+    public function setClearLockoutTime()
+    {
+        return $this->setFirstAttribute($this->schema->lockoutTime(), 0);
+    }
+
+    /**
+     * Returns the users profile file path.
+     *
+     * @return string
+     */
+    public function getProfilePath()
+    {
+        return $this->getFirstAttribute($this->schema->profilePath());
+    }
+
+    /**
+     * Sets the users profile path.
+     *
+     * @param string $path
+     *
+     * @return $this
+     */
+    public function setProfilePath($path)
+    {
+        return $this->setFirstAttribute($this->schema->profilePath(), $path);
+    }
+
+    /**
+     * Returns the users legacy exchange distinguished name.
+     *
+     * @return string
+     */
+    public function getLegacyExchangeDn()
+    {
+        return $this->getFirstAttribute($this->schema->legacyExchangeDn());
+    }
+
+    /**
+     * Sets the users account expiry date.
+     *
+     * If no expiry time is given, the account is set to never expire.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675098(v=vs.85).aspx
+     *
+     * @param float $expiryTime
+     *
+     * @return $this
+     */
+    public function setAccountExpiry($expiryTime)
+    {
+        $time = is_null($expiryTime) ? '9223372036854775807' : (string) Utilities::convertUnixTimeToWindowsTime($expiryTime);
+
+        return $this->setFirstAttribute($this->schema->accountExpires(), $time);
+    }
+
+    /**
+     * Returns an array of address book DNs
+     * that the user is listed to be shown in.
+     *
+     * @return array
+     */
+    public function getShowInAddressBook()
+    {
+        return $this->getAttribute($this->schema->showInAddressBook());
+    }
+
+    /**
+     * Returns the users thumbnail photo base 64 encoded.
+     *
+     * Suitable for inserting into an HTML image element.
+     *
+     * @return string|null
+     */
+    public function getThumbnailEncoded()
+    {
+        if ($data = base64_decode($this->getThumbnail(), $strict = true)) {
+            // In case we don't have the file info extension enabled,
+            // we'll set the jpeg mime type as default.
+            $mime = 'image/jpeg';
+
+            $image = base64_encode($data);
+
+            if (function_exists('finfo_open')) {
+                $finfo = finfo_open();
+
+                $mime = finfo_buffer($finfo, $data, FILEINFO_MIME_TYPE);
+
+                return "data:$mime;base64,$image";
+            }
+
+            return "data:$mime;base64,$image";
+        }
+    }
+
+    /**
+     * Returns the users thumbnail photo.
+     *
+     * @return mixed
+     */
+    public function getThumbnail()
+    {
+        return $this->getFirstAttribute($this->schema->thumbnail());
+    }
+
+    /**
+     * Sets the users thumbnail photo.
+     *
+     * @param string $data
+     * @param bool   $encode
+     *
+     * @return $this
+     */
+    public function setThumbnail($data, $encode = true)
+    {
+        if ($encode && !base64_decode($data, $strict = true)) {
+            // If the string we're given is not base 64 encoded, then
+            // we will encode it before setting it on the user.
+            $data = base64_encode($data);
+        }
+
+        return $this->setAttribute($this->schema->thumbnail(), $data);
+    }
+
+    /**
+     * Returns the users JPEG photo.
+     *
+     * @return null|string
+     */
+    public function getJpegPhotoEncoded()
+    {
+        $jpeg = $this->getJpegPhoto();
+
+        return is_null($jpeg) ? $jpeg : 'data:image/jpeg;base64,'.base64_encode($jpeg);
+    }
+
+    /**
+     * Returns the users JPEG photo.
+     *
+     * @return mixed
+     */
+    public function getJpegPhoto()
+    {
+        return $this->getFirstAttribute($this->schema->jpegPhoto());
+    }
+
+    /**
+     * Sets the users JPEG photo.
+     *
+     * @param string $string
+     *
+     * @return $this
+     */
+    public function setJpegPhoto($string)
+    {
+        if (!base64_decode($string, $strict = true)) {
+            $string = base64_encode($string);
+        }
+
+        return $this->setAttribute($this->schema->jpegPhoto(), $string);
+    }
+
+    /**
+     * Return the employee ID.
+     *
+     * @return string
+     */
+    public function getEmployeeId()
+    {
+        return $this->getFirstAttribute($this->schema->employeeId());
+    }
+
+    /**
+     * Sets the employee ID.
+     *
+     * @param string $employeeId
+     *
+     * @return $this
+     */
+    public function setEmployeeId($employeeId)
+    {
+        return $this->setFirstAttribute($this->schema->employeeId(), $employeeId);
+    }
+
+    /**
+     * Returns the employee type.
+     *
+     * @return string|null
+     */
+    public function getEmployeeType()
+    {
+        return $this->getFirstAttribute($this->schema->employeeType());
+    }
+
+    /**
+     * Sets the employee type.
+     *
+     * @param string $type
+     *
+     * @return $this
+     */
+    public function setEmployeeType($type)
+    {
+        return $this->setFirstAttribute($this->schema->employeeType(), $type);
+    }
+
+    /**
+     * Returns the employee number.
+     *
+     * @return string
+     */
+    public function getEmployeeNumber()
+    {
+        return $this->getFirstAttribute($this->schema->employeeNumber());
+    }
+
+    /**
+     * Sets the employee number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setEmployeeNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->employeeNumber(), $number);
+    }
+
+    /**
+     * Returns the room number.
+     *
+     * @return string
+     */
+    public function getRoomNumber()
+    {
+        return $this->getFirstAttribute($this->schema->roomNumber());
+    }
+
+    /**
+     * Sets the room number.
+     *
+     * @param string $number
+     *
+     * @return $this
+     */
+    public function setRoomNumber($number)
+    {
+        return $this->setFirstAttribute($this->schema->roomNumber(), $number);
+    }
+
+    /**
+     * Return the personal title.
+     *
+     * @return $this
+     */
+    public function getPersonalTitle()
+    {
+        return $this->getFirstAttribute($this->schema->personalTitle());
+    }
+
+    /**
+     * Sets the personal title.
+     *
+     * @param string $personalTitle
+     *
+     * @return $this
+     */
+    public function setPersonalTitle($personalTitle)
+    {
+        return $this->setFirstAttribute($this->schema->personalTitle(), $personalTitle);
+    }
+
+    /**
+     * Return the user parameters.
+     *
+     * @return TSPropertyArray
+     */
+    public function getUserParameters()
+    {
+        return new TSPropertyArray($this->getFirstAttribute('userparameters'));
+    }
+
+    /**
+     * Sets the user parameters.
+     *
+     * @param TSPropertyArray $userParameters
+     *
+     * @return $this
+     */
+    public function setUserParameters(TSPropertyArray $userParameters)
+    {
+        return $this->setFirstAttribute('userparameters', $userParameters->toBinary());
+    }
+
+    /**
+     * Retrieves the primary group of the current user.
+     *
+     * @return Model|bool
+     */
+    public function getPrimaryGroup()
+    {
+        $groupSid = preg_replace('/\d+$/', $this->getPrimaryGroupId(), $this->getConvertedSid());
+
+        return $this->query->newInstance()->findBySid($groupSid);
+    }
+
+    /**
+     * Sets the password on the current user.
+     *
+     * @param string $password
+     *
+     * @throws AdldapException When no SSL or TLS secured connection is present.
+     *
+     * @return $this
+     */
+    public function setPassword($password)
+    {
+        $this->validateSecureConnection();
+
+        $encodedPassword = call_user_func(static::getPasswordStrategy(), $password);
+
+        if ($this->exists) {
+            // If the record exists, we need to add a batch replace
+            // modification, otherwise we'll receive a "type or
+            // value" exists exception from our LDAP server.
+            return $this->addModification(
+                $this->newBatchModification(
+                    $this->schema->unicodePassword(),
+                    LDAP_MODIFY_BATCH_REPLACE,
+                    [$encodedPassword]
+                )
+            );
+        } else {
+            // Otherwise, we are creating a new record
+            // and we can set the attribute normally.
+            return $this->setFirstAttribute(
+                $this->schema->unicodePassword(),
+                $encodedPassword
+            );
+        }
+    }
+
+    /**
+     * Sets the option to force the password change at the next logon.
+     *
+     * Does not work if the "Password never expires" option is enabled.
+     *
+     * @return $this
+     */
+    public function setEnableForcePasswordChange()
+    {
+        return $this->setFirstAttribute($this->schema->passwordLastSet(), 0);
+    }
+
+    /**
+     * Sets the option to disable forcing a password change at the next logon.
+     *
+     * @return $this
+     */
+    public function setDisableForcePasswordChange()
+    {
+        return $this->setFirstAttribute($this->schema->passwordLastSet(), -1);
+    }
+
+    /**
+     * Change the password of the current user. This must be performed over SSL / TLS.
+     *
+     * Throws an exception on failure.
+     *
+     * @param string $oldPassword      The new password
+     * @param string $newPassword      The old password
+     * @param bool   $replaceNotRemove Alternative password change method. Set to true if you're receiving 'CONSTRAINT'
+     *                                 errors.
+     *
+     * @throws UserPasswordPolicyException    When the new password does not match your password policy.
+     * @throws UserPasswordIncorrectException When the old password is incorrect.
+     * @throws AdldapException                When an unknown cause of failure occurs.
+     *
+     * @return true
+     */
+    public function changePassword($oldPassword, $newPassword, $replaceNotRemove = false)
+    {
+        $this->validateSecureConnection();
+
+        $attribute = $this->schema->unicodePassword();
+
+        $modifications = [];
+
+        if ($replaceNotRemove) {
+            $modifications[] = $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_REPLACE,
+                [call_user_func(static::getPasswordStrategy(), $newPassword)]
+            );
+        } else {
+            // Create batch modification for removing the old password.
+            $modifications[] = $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_REMOVE,
+                [call_user_func(static::getPasswordStrategy(), $oldPassword)]
+            );
+
+            // Create batch modification for adding the new password.
+            $modifications[] = $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_ADD,
+                [call_user_func(static::getPasswordStrategy(), $newPassword)]
+            );
+        }
+
+        // Add the modifications.
+        foreach ($modifications as $modification) {
+            $this->addModification($modification);
+        }
+
+        $result = @$this->update();
+
+        if (!$result) {
+            // If the user failed to update, we'll see if we can
+            // figure out why by retrieving the extended error.
+            $error = $this->query->getConnection()->getExtendedError();
+            $code = $this->query->getConnection()->getExtendedErrorCode();
+
+            switch ($code) {
+                case '0000052D':
+                    throw new UserPasswordPolicyException(
+                        "Error: $code. Your new password does not match the password policy."
+                    );
+                case '00000056':
+                    throw new UserPasswordIncorrectException(
+                        "Error: $code. Your old password is incorrect."
+                    );
+                default:
+                    throw new AdldapException($error);
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Return true / false if LDAP User is active (enabled & not expired).
+     *
+     * @return bool
+     */
+    public function isActive()
+    {
+        return $this->isEnabled() && !$this->isExpired();
+    }
+
+    /**
+     * Return true / false if the LDAP User is expired.
+     *
+     * @param DateTime $date Optional date
+     *
+     * @return bool
+     */
+    public function isExpired(DateTime $date = null)
+    {
+        // Here we'll determine if the account expires by checking is expiration date.
+        if ($expirationDate = $this->expirationDate()) {
+            $date = $date ?: new DateTime();
+
+            return $expirationDate <= $date;
+        }
+
+        // The account has no expiry date.
+        return false;
+    }
+
+    /**
+     * Return the expiration date of the user account.
+     *
+     * @throws \Exception
+     *
+     * @return DateTime|null
+     */
+    public function expirationDate()
+    {
+        $accountExpiry = $this->getAccountExpiry();
+
+        // If the account expiry is zero or the expiry is equal to
+        // ActiveDirectory's 'never expire' value,
+        // then we'll return null here.
+        if ($accountExpiry == 0 || $accountExpiry == $this->getSchema()->neverExpiresDate()) {
+            return;
+        }
+
+        $unixTime = Utilities::convertWindowsTimeToUnixTime($accountExpiry);
+
+        return (new DateTime())->setTimestamp($unixTime);
+    }
+
+    /**
+     * Returns the users account expiry date.
+     *
+     * @return string
+     */
+    public function getAccountExpiry()
+    {
+        return $this->getFirstAttribute($this->schema->accountExpires());
+    }
+
+    /**
+     * Returns true / false if the users password is expired.
+     *
+     * @return bool
+     */
+    public function passwordExpired()
+    {
+        // First we'll check the users userAccountControl to see if
+        // it contains the 'password does not expire' flag.
+        if ($this->getUserAccountControlObject()->has(AccountControl::DONT_EXPIRE_PASSWORD)) {
+            return false;
+        }
+
+        $lastSet = (int) $this->getPasswordLastSet();
+
+        if ($lastSet === 0) {
+            // If the users last set time is zero, the password has
+            // been manually expired by an administrator.
+            return true;
+        }
+
+        // We'll check if we're using the ActiveDirectory schema to retrieve
+        // the max password age, as this is an AD-only feature.
+        if ($this->schema instanceof ActiveDirectory) {
+            $query = $this->query->newInstance();
+
+            // We need to get the root domain object to be able to
+            // retrieve the max password age on the domain.
+            $rootDomainObject = $query->select($this->schema->maxPasswordAge())
+                ->whereHas($this->schema->objectClass())
+                ->first();
+
+            $maxPasswordAge = $rootDomainObject->getMaxPasswordAge();
+
+            if (empty($maxPasswordAge)) {
+                // There is not a max password age set on the LDAP server.
+                return false;
+            }
+
+            // convert from 100 nanosecond ticks to seconds
+            $maxPasswordAgeSeconds = $maxPasswordAge / 10000000;
+
+            $lastSetUnixEpoch = Utilities::convertWindowsTimeToUnixTime($lastSet);
+            $passwordExpiryTime = $lastSetUnixEpoch - $maxPasswordAgeSeconds;
+
+            $expiresAt = (new DateTime())->setTimestamp($passwordExpiryTime);
+
+            // If our current time is greater than the users password
+            // expiry time, the users password has expired.
+            return (new DateTime())->getTimestamp() >= $expiresAt->getTimestamp();
+        }
+
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordIncorrectException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordIncorrectException.php
new file mode 100644
index 0000000..44cb39b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordIncorrectException.php
@@ -0,0 +1,16 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\AdldapException;
+
+/**
+ * Class UserPasswordIncorrectException.
+ *
+ * Thrown when a users password is being changed
+ * and their current password given is incorrect.
+ */
+class UserPasswordIncorrectException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordPolicyException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordPolicyException.php
new file mode 100644
index 0000000..9a99faa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Models/UserPasswordPolicyException.php
@@ -0,0 +1,16 @@
+<?php
+
+namespace Adldap\Models;
+
+use Adldap\AdldapException;
+
+/**
+ * Class UserPasswordPolicyException.
+ *
+ * Thrown when a users password is being changed but their new password
+ * does not conform to the LDAP servers password policy.
+ */
+class UserPasswordPolicyException extends AdldapException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Builder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Builder.php
new file mode 100644
index 0000000..48f253f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Builder.php
@@ -0,0 +1,1956 @@
+<?php
+
+namespace Adldap\Query;
+
+use Closure;
+use Adldap\Adldap;
+use Adldap\Utilities;
+use Adldap\Models\Model;
+use Illuminate\Support\Arr;
+use InvalidArgumentException;
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Schemas\SchemaInterface;
+use Adldap\Query\Events\QueryExecuted;
+use Adldap\Models\ModelNotFoundException;
+use Adldap\Connections\ConnectionInterface;
+
+class Builder
+{
+    /**
+     * The selected columns to retrieve on the query.
+     *
+     * @var array
+     */
+    public $columns = ['*'];
+
+    /**
+     * The query filters.
+     *
+     * @var array
+     */
+    public $filters = [
+        'and' => [],
+        'or'  => [],
+        'raw' => [],
+    ];
+
+    /**
+     * The size limit of the query.
+     *
+     * @var int
+     */
+    public $limit = 0;
+
+    /**
+     * Determines whether the current query is paginated.
+     *
+     * @var bool
+     */
+    public $paginated = false;
+
+    /**
+     * The field to sort search results by.
+     *
+     * @var string
+     */
+    protected $sortByField = '';
+
+    /**
+     * The direction to sort the results by.
+     *
+     * @var string
+     */
+    protected $sortByDirection = '';
+
+    /**
+     * The sort flags for sorting query results.
+     *
+     * @var int
+     */
+    protected $sortByFlags;
+
+    /**
+     * The distinguished name to perform searches upon.
+     *
+     * @var string|null
+     */
+    protected $dn;
+
+    /**
+     * The default query type.
+     *
+     * @var string
+     */
+    protected $type = 'search';
+
+    /**
+     * Determines whether or not to return LDAP results in their raw array format.
+     *
+     * @var bool
+     */
+    protected $raw = false;
+
+    /**
+     * Determines whether the query is nested.
+     *
+     * @var bool
+     */
+    protected $nested = false;
+
+    /**
+     * Determines whether the query should be cached.
+     *
+     * @var bool
+     */
+    protected $caching = false;
+
+    /**
+     * How long the query should be cached until.
+     *
+     * @var \DateTimeInterface|null
+     */
+    protected $cacheUntil = null;
+
+    /**
+     * Determines whether the query cache must be flushed.
+     *
+     * @var bool
+     */
+    protected $flushCache = false;
+
+    /**
+     * The current connection instance.
+     *
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * The current grammar instance.
+     *
+     * @var Grammar
+     */
+    protected $grammar;
+
+    /**
+     * The current schema instance.
+     *
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * The current cache instance.
+     *
+     * @var Cache|null
+     */
+    protected $cache;
+
+    /**
+     * Constructor.
+     *
+     * @param ConnectionInterface  $connection
+     * @param Grammar|null         $grammar
+     * @param SchemaInterface|null $schema
+     */
+    public function __construct(ConnectionInterface $connection, Grammar $grammar = null, SchemaInterface $schema = null)
+    {
+        $this->setConnection($connection)
+            ->setGrammar($grammar)
+            ->setSchema($schema);
+    }
+
+    /**
+     * Sets the current connection.
+     *
+     * @param ConnectionInterface $connection
+     *
+     * @return Builder
+     */
+    public function setConnection(ConnectionInterface $connection)
+    {
+        $this->connection = $connection;
+
+        return $this;
+    }
+
+    /**
+     * Sets the current filter grammar.
+     *
+     * @param Grammar|null $grammar
+     *
+     * @return Builder
+     */
+    public function setGrammar(Grammar $grammar = null)
+    {
+        $this->grammar = $grammar ?: new Grammar();
+
+        return $this;
+    }
+
+    /**
+     * Sets the current schema.
+     *
+     * @param SchemaInterface|null $schema
+     *
+     * @return Builder
+     */
+    public function setSchema(SchemaInterface $schema = null)
+    {
+        $this->schema = $schema ?: new ActiveDirectory();
+
+        return $this;
+    }
+
+    /**
+     * Returns the current schema.
+     *
+     * @return SchemaInterface
+     */
+    public function getSchema()
+    {
+        return $this->schema;
+    }
+
+    /**
+     * Sets the cache to store query results.
+     *
+     * @param Cache|null $cache
+     */
+    public function setCache(Cache $cache = null)
+    {
+        $this->cache = $cache;
+
+        return $this;
+    }
+
+    /**
+     * Returns a new Query Builder instance.
+     *
+     * @param string $baseDn
+     *
+     * @return Builder
+     */
+    public function newInstance($baseDn = null)
+    {
+        // We'll set the base DN of the new Builder so
+        // developers don't need to do this manually.
+        $dn = is_null($baseDn) ? $this->getDn() : $baseDn;
+
+        return (new static($this->connection, $this->grammar, $this->schema))
+            ->setDn($dn);
+    }
+
+    /**
+     * Returns a new nested Query Builder instance.
+     *
+     * @param Closure|null $closure
+     *
+     * @return $this
+     */
+    public function newNestedInstance(Closure $closure = null)
+    {
+        $query = $this->newInstance()->nested();
+
+        if ($closure) {
+            call_user_func($closure, $query);
+        }
+
+        return $query;
+    }
+
+    /**
+     * Returns the current query.
+     *
+     * @return Collection|array
+     */
+    public function get()
+    {
+        // We'll mute any warnings / errors here. We just need to
+        // know if any query results were returned.
+        return @$this->query($this->getQuery());
+    }
+
+    /**
+     * Compiles and returns the current query string.
+     *
+     * @return string
+     */
+    public function getQuery()
+    {
+        // We need to ensure we have at least one filter, as
+        // no query results will be returned otherwise.
+        if (count(array_filter($this->filters)) === 0) {
+            $this->whereHas($this->schema->objectClass());
+        }
+
+        return $this->grammar->compile($this);
+    }
+
+    /**
+     * Returns the unescaped query.
+     *
+     * @return string
+     */
+    public function getUnescapedQuery()
+    {
+        return Utilities::unescape($this->getQuery());
+    }
+
+    /**
+     * Returns the current Grammar instance.
+     *
+     * @return Grammar
+     */
+    public function getGrammar()
+    {
+        return $this->grammar;
+    }
+
+    /**
+     * Returns the current Connection instance.
+     *
+     * @return ConnectionInterface
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * Returns the builders DN to perform searches upon.
+     *
+     * @return string
+     */
+    public function getDn()
+    {
+        return $this->dn;
+    }
+
+    /**
+     * Sets the DN to perform searches upon.
+     *
+     * @param string|Model|null $dn
+     *
+     * @return Builder
+     */
+    public function setDn($dn = null)
+    {
+        $this->dn = $dn instanceof Model ? $dn->getDn() : $dn;
+
+        return $this;
+    }
+
+    /**
+     * Alias for setting the base DN of the query.
+     *
+     * @param string|Model|null $dn
+     *
+     * @return Builder
+     */
+    public function in($dn = null)
+    {
+        return $this->setDn($dn);
+    }
+
+    /**
+     * Sets the size limit of the current query.
+     *
+     * @param int $limit
+     *
+     * @return Builder
+     */
+    public function limit($limit = 0)
+    {
+        $this->limit = $limit;
+
+        return $this;
+    }
+
+    /**
+     * Performs the specified query on the current LDAP connection.
+     *
+     * @param string $query
+     *
+     * @return \Adldap\Query\Collection|array
+     */
+    public function query($query)
+    {
+        $start = microtime(true);
+
+        // Here we will create the execution callback. This allows us
+        // to only execute an LDAP request if caching is disabled
+        // or if no cache of the given query exists yet.
+        $callback = function () use ($query) {
+            return $this->parse($this->run($query));
+        };
+
+        // If caching is enabled and we have a cache instance available,
+        // we will try to retrieve the cached results instead.
+        // Otherwise, we will simply execute the callback.
+        if ($this->caching && $this->cache) {
+            $results = $this->getCachedResponse($this->getCacheKey($query), $callback);
+        } else {
+            $results = $callback();
+        }
+
+        // Log the query.
+        $this->logQuery($this, $this->type, $this->getElapsedTime($start));
+
+        // Process & return the results.
+        return $this->newProcessor()->process($results);
+    }
+
+    /**
+     * Paginates the current LDAP query.
+     *
+     * @param int  $perPage
+     * @param int  $currentPage
+     * @param bool $isCritical
+     *
+     * @return Paginator
+     */
+    public function paginate($perPage = 1000, $currentPage = 0, $isCritical = true)
+    {
+        $this->paginated = true;
+
+        $start = microtime(true);
+
+        $query = $this->getQuery();
+
+        // Here we will create the pagination callback. This allows us
+        // to only execute an LDAP request if caching is disabled
+        // or if no cache of the given query exists yet.
+        $callback = function () use ($query, $perPage, $isCritical) {
+            return $this->runPaginate($query, $perPage, $isCritical);
+        };
+
+        // If caching is enabled and we have a cache instance available,
+        // we will try to retrieve the cached results instead.
+        if ($this->caching && $this->cache) {
+            $pages = $this->getCachedResponse($this->getCacheKey($query), $callback);
+        } else {
+            $pages = $callback();
+        }
+
+        // Log the query.
+        $this->logQuery($this, 'paginate', $this->getElapsedTime($start));
+
+        // Process & return the results.
+        return $this->newProcessor()->processPaginated($pages, $perPage, $currentPage);
+    }
+
+    /**
+     * Get the cached response or execute and cache the callback value.
+     *
+     * @param string  $key
+     * @param Closure $callback
+     *
+     * @return mixed
+     */
+    protected function getCachedResponse($key, Closure $callback)
+    {
+        if ($this->flushCache) {
+            $this->cache->delete($key);
+        }
+
+        return $this->cache->remember($key, $this->cacheUntil, $callback);
+    }
+
+    /**
+     * Runs the query operation with the given filter.
+     *
+     * @param string $filter
+     *
+     * @return resource
+     */
+    protected function run($filter)
+    {
+        return $this->connection->{$this->type}(
+            $this->getDn(),
+            $filter,
+            $this->getSelects(),
+            $onlyAttributes = false,
+            $this->limit
+        );
+    }
+
+    /**
+     * Runs the paginate operation with the given filter.
+     *
+     * @param string $filter
+     * @param int    $perPage
+     * @param bool   $isCritical
+     *
+     * @return array
+     */
+    protected function runPaginate($filter, $perPage, $isCritical)
+    {
+        return $this->connection->supportsServerControlsInMethods() ?
+            $this->compatiblePaginationCallback($filter, $perPage, $isCritical) :
+            $this->deprecatedPaginationCallback($filter, $perPage, $isCritical);
+    }
+
+    /**
+     * Create a deprecated pagination callback compatible with PHP 7.2.
+     *
+     * @param string $filter
+     * @param int    $perPage
+     * @param bool   $isCritical
+     *
+     * @return array
+     */
+    protected function deprecatedPaginationCallback($filter, $perPage, $isCritical)
+    {
+        $pages = [];
+
+        $cookie = '';
+
+        do {
+            $this->connection->controlPagedResult($perPage, $isCritical, $cookie);
+
+            if (! $resource = $this->run($filter)) {
+                break;
+            }
+
+            // If we have been given a valid resource, we will retrieve the next
+            // pagination cookie to send for our next pagination request.
+            $this->connection->controlPagedResultResponse($resource, $cookie);
+
+            $pages[] = $this->parse($resource);
+        } while (!empty($cookie));
+
+        // Reset paged result on the current connection. We won't pass in the current $perPage
+        // parameter since we want to reset the page size to the default '1000'. Sending '0'
+        // eliminates any further opportunity for running queries in the same request,
+        // even though that is supposed to be the correct usage.
+        $this->connection->controlPagedResult();
+
+        return $pages;
+    }
+
+    /**
+     * Create a compatible pagination callback compatible with PHP 7.3 and greater.
+     *
+     * @param string $filter
+     * @param int    $perPage
+     * @param bool   $isCritical
+     *
+     * @return array
+     */
+    protected function compatiblePaginationCallback($filter, $perPage, $isCritical)
+    {
+        $pages = [];
+
+        // Setup our paged results control.
+        $controls = [
+            LDAP_CONTROL_PAGEDRESULTS => [
+                'oid'        => LDAP_CONTROL_PAGEDRESULTS,
+                'isCritical' => $isCritical,
+                'value'      => [
+                    'size'   => $perPage,
+                    'cookie' => '',
+                ],
+            ],
+        ];
+
+        do {
+            // Update the server controls.
+            $this->connection->setOption(LDAP_OPT_SERVER_CONTROLS, $controls);
+
+            if (! $resource = $this->run($filter)) {
+                break;
+            }
+
+            $errorCode = $dn = $errorMessage = $refs = null;
+
+            // Update the server controls with the servers response.
+            $this->connection->parseResult($resource, $errorCode, $dn, $errorMessage, $refs, $controls);
+
+            $pages[] = $this->parse($resource);
+
+            // Reset paged result on the current connection. We won't pass in the current $perPage
+            // parameter since we want to reset the page size to the default '1000'. Sending '0'
+            // eliminates any further opportunity for running queries in the same request,
+            // even though that is supposed to be the correct usage.
+            $controls[LDAP_CONTROL_PAGEDRESULTS]['value']['size'] = $perPage;
+        } while (!empty($controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie']));
+
+        // After running the query, we will clear the LDAP server controls. This
+        // allows the controls to be automatically reset before each new query
+        // that is conducted on the same connection during each request.
+        $this->connection->setOption(LDAP_OPT_SERVER_CONTROLS, []);
+
+        return $pages;
+    }
+
+    /**
+     * Parses the given LDAP resource by retrieving its entries.
+     *
+     * @param resource $resource
+     *
+     * @return array
+     */
+    protected function parse($resource)
+    {
+        // Normalize entries. Get entries returns false on failure.
+        // We'll always want an array in this situation.
+        $entries = $this->connection->getEntries($resource) ?: [];
+
+        // Free up memory.
+        if (is_resource($resource)) {
+            $this->connection->freeResult($resource);
+        }
+
+        return $entries;
+    }
+
+    /**
+     * Returns the cache key.
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    protected function getCacheKey($query)
+    {
+        $key = $this->connection->getHost()
+            .$this->type
+            .$this->getDn()
+            .$query
+            .implode('', $this->getSelects())
+            .$this->limit
+            .$this->paginated;
+
+        return md5($key);
+    }
+
+    /**
+     * Returns the first entry in a search result.
+     *
+     * @param array|string $columns
+     *
+     * @return Model|array|null
+     */
+    public function first($columns = [])
+    {
+        $results = $this->select($columns)->limit(1)->get();
+
+        // Since results may be returned inside an array if `raw()`
+        // is specified, then we'll use our array helper
+        // to retrieve the first result.
+        return Arr::get($results, 0);
+    }
+
+    /**
+     * Returns the first entry in a search result.
+     *
+     * If no entry is found, an exception is thrown.
+     *
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function firstOrFail($columns = [])
+    {
+        $record = $this->first($columns);
+
+        if (!$record) {
+            throw (new ModelNotFoundException())
+                ->setQuery($this->getUnescapedQuery(), $this->getDn());
+        }
+
+        return $record;
+    }
+
+    /**
+     * Finds a record by the specified attribute and value.
+     *
+     * @param string       $attribute
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @return Model|array|false
+     */
+    public function findBy($attribute, $value, $columns = [])
+    {
+        try {
+            return $this->findByOrFail($attribute, $value, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by the specified attribute and value.
+     *
+     * If no record is found an exception is thrown.
+     *
+     * @param string       $attribute
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function findByOrFail($attribute, $value, $columns = [])
+    {
+        return $this->whereEquals($attribute, $value)->firstOrFail($columns);
+    }
+
+    /**
+     * Finds a record using ambiguous name resolution.
+     *
+     * @param string|array $value
+     * @param array|string $columns
+     *
+     * @return Model|array|null
+     */
+    public function find($value, $columns = [])
+    {
+        if (is_array($value)) {
+            return $this->findMany($value, $columns);
+        }
+
+        // If we're not using ActiveDirectory, we can't use ANR. We'll make our own query.
+        if (!is_a($this->schema, ActiveDirectory::class)) {
+            return $this->prepareAnrEquivalentQuery($value)->first($columns);
+        }
+
+        return $this->findBy($this->schema->anr(), $value, $columns);
+    }
+
+    /**
+     * Finds multiple records using ambiguous name resolution.
+     *
+     * @param array $values
+     * @param array $columns
+     *
+     * @return \Adldap\Query\Collection|array
+     */
+    public function findMany(array $values = [], $columns = [])
+    {
+        $this->select($columns);
+
+        if (!is_a($this->schema, ActiveDirectory::class)) {
+            $query = $this;
+
+            foreach ($values as $value) {
+                $query->prepareAnrEquivalentQuery($value);
+            }
+
+            return $query->get();
+        }
+
+        return $this->findManyBy($this->schema->anr(), $values);
+    }
+
+    /**
+     * Creates an ANR equivalent query for LDAP distributions that do not support ANR.
+     *
+     * @param string $value
+     *
+     * @return Builder
+     */
+    protected function prepareAnrEquivalentQuery($value)
+    {
+        return $this->orFilter(function (self $query) use ($value) {
+            $locateBy = [
+                $this->schema->name(),
+                $this->schema->email(),
+                $this->schema->userId(),
+                $this->schema->lastName(),
+                $this->schema->firstName(),
+                $this->schema->commonName(),
+                $this->schema->displayName(),
+            ];
+
+            foreach ($locateBy as $attribute) {
+                $query->whereEquals($attribute, $value);
+            }
+        });
+    }
+
+    /**
+     * Finds many records by the specified attribute.
+     *
+     * @param string $attribute
+     * @param array  $values
+     * @param array  $columns
+     *
+     * @return \Adldap\Query\Collection|array
+     */
+    public function findManyBy($attribute, array $values = [], $columns = [])
+    {
+        $query = $this->select($columns);
+
+        foreach ($values as $value) {
+            $query->orWhere([$attribute => $value]);
+        }
+
+        return $query->get();
+    }
+
+    /**
+     * Finds a record using ambiguous name resolution.
+     *
+     * If a record is not found, an exception is thrown.
+     *
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function findOrFail($value, $columns = [])
+    {
+        $entry = $this->find($value, $columns);
+
+        // Make sure we check if the result is an entry or an array before
+        // we throw an exception in case the user wants raw results.
+        if (!$entry instanceof Model && !is_array($entry)) {
+            throw (new ModelNotFoundException())
+                ->setQuery($this->getUnescapedQuery(), $this->getDn());
+        }
+
+        return $entry;
+    }
+
+    /**
+     * Finds a record by its distinguished name.
+     *
+     * @param string       $dn
+     * @param array|string $columns
+     *
+     * @return bool|Model
+     */
+    public function findByDn($dn, $columns = [])
+    {
+        try {
+            return $this->findByDnOrFail($dn, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its distinguished name.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $dn
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function findByDnOrFail($dn, $columns = [])
+    {
+        // Since we're setting our base DN to be able to retrieve a model
+        // by its distinguished name, we need to set it back to
+        // our configured base so it is not overwritten.
+        $base = $this->getDn();
+
+        $model = $this->setDn($dn)
+            ->read()
+            ->whereHas($this->schema->objectClass())
+            ->firstOrFail($columns);
+
+        // Reset the models query builder (in case a model is returned).
+        // Otherwise, we must be requesting a raw result.
+        if ($model instanceof Model) {
+            $model->setQuery($this->in($base));
+        }
+
+        return $model;
+    }
+
+    /**
+     * Finds a record by its string GUID.
+     *
+     * @param string       $guid
+     * @param array|string $columns
+     *
+     * @return Model|array|false
+     */
+    public function findByGuid($guid, $columns = [])
+    {
+        try {
+            return $this->findByGuidOrFail($guid, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its string GUID.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $guid
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function findByGuidOrFail($guid, $columns = [])
+    {
+        if ($this->schema->objectGuidRequiresConversion()) {
+            $guid = Utilities::stringGuidToHex($guid);
+        }
+
+        return $this->select($columns)->whereRaw([
+            $this->schema->objectGuid() => $guid,
+        ])->firstOrFail();
+    }
+
+    /**
+     * Finds a record by its Object SID.
+     *
+     * @param string       $sid
+     * @param array|string $columns
+     *
+     * @return Model|array|false
+     */
+    public function findBySid($sid, $columns = [])
+    {
+        try {
+            return $this->findBySidOrFail($sid, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its Object SID.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $sid
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|array
+     */
+    public function findBySidOrFail($sid, $columns = [])
+    {
+        return $this->findByOrFail($this->schema->objectSid(), $sid, $columns);
+    }
+
+    /**
+     * Finds the Base DN of your domain controller.
+     *
+     * @return string|bool
+     */
+    public function findBaseDn()
+    {
+        $result = $this->setDn(null)
+            ->read()
+            ->raw()
+            ->whereHas($this->schema->objectClass())
+            ->first();
+
+        $key = $this->schema->defaultNamingContext();
+
+        if (is_array($result) && array_key_exists($key, $result)) {
+            if (array_key_exists(0, $result[$key])) {
+                return $result[$key][0];
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Adds the inserted fields to query on the current LDAP connection.
+     *
+     * @param array|string $columns
+     *
+     * @return Builder
+     */
+    public function select($columns = [])
+    {
+        $columns = is_array($columns) ? $columns : func_get_args();
+
+        if (!empty($columns)) {
+            $this->columns = $columns;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds a raw filter to the current query.
+     *
+     * @param array|string $filters
+     *
+     * @return Builder
+     */
+    public function rawFilter($filters = [])
+    {
+        $filters = is_array($filters) ? $filters : func_get_args();
+
+        foreach ($filters as $filter) {
+            $this->filters['raw'][] = $filter;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds a nested 'and' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return Builder
+     */
+    public function andFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        $filter = $this->grammar->compileAnd($query->getQuery());
+
+        return $this->rawFilter($filter);
+    }
+
+    /**
+     * Adds a nested 'or' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return Builder
+     */
+    public function orFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        $filter = $this->grammar->compileOr($query->getQuery());
+
+        return $this->rawFilter($filter);
+    }
+
+    /**
+     * Adds a nested 'not' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return Builder
+     */
+    public function notFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        $filter = $this->grammar->compileNot($query->getQuery());
+
+        return $this->rawFilter($filter);
+    }
+
+    /**
+     * Adds a where clause to the current query.
+     *
+     * @param string|array $field
+     * @param string       $operator
+     * @param string       $value
+     * @param string       $boolean
+     * @param bool         $raw
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return Builder
+     */
+    public function where($field, $operator = null, $value = null, $boolean = 'and', $raw = false)
+    {
+        if (is_array($field)) {
+            // If the column is an array, we will assume it is an array of
+            // key-value pairs and can add them each as a where clause.
+            return $this->addArrayOfWheres($field, $boolean, $raw);
+        }
+
+        // We'll bypass the 'has' and 'notHas' operator since they
+        // only require two arguments inside the where method.
+        $bypass = [Operator::$has, Operator::$notHas];
+
+        // Here we will make some assumptions about the operator. If only
+        // 2 values are passed to the method, we will assume that
+        // the operator is 'equals' and keep going.
+        if (func_num_args() === 2 && in_array($operator, $bypass) === false) {
+            list($value, $operator) = [$operator, '='];
+        }
+
+        if (!in_array($operator, Operator::all())) {
+            throw new InvalidArgumentException("Invalid where operator: {$operator}");
+        }
+
+        // We'll escape the value if raw isn't requested.
+        $value = $raw ? $value : $this->escape($value);
+
+        $field = $this->escape($field, $ignore = null, 3);
+
+        $this->addFilter($boolean, compact('field', 'operator', 'value'));
+
+        return $this;
+    }
+
+    /**
+     * Adds a raw where clause to the current query.
+     *
+     * Values given to this method are not escaped.
+     *
+     * @param string|array $field
+     * @param string       $operator
+     * @param string       $value
+     *
+     * @return Builder
+     */
+    public function whereRaw($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'and', true);
+    }
+
+    /**
+     * Adds a 'where equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereEquals($field, $value)
+    {
+        return $this->where($field, Operator::$equals, $value);
+    }
+
+    /**
+     * Adds a 'where not equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereNotEquals($field, $value)
+    {
+        return $this->where($field, Operator::$doesNotEqual, $value);
+    }
+
+    /**
+     * Adds a 'where approximately equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereApproximatelyEquals($field, $value)
+    {
+        return $this->where($field, Operator::$approximatelyEquals, $value);
+    }
+
+    /**
+     * Adds a 'where has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return Builder
+     */
+    public function whereHas($field)
+    {
+        return $this->where($field, Operator::$has);
+    }
+
+    /**
+     * Adds a 'where not has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return Builder
+     */
+    public function whereNotHas($field)
+    {
+        return $this->where($field, Operator::$notHas);
+    }
+
+    /**
+     * Adds a 'where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereContains($field, $value)
+    {
+        return $this->where($field, Operator::$contains, $value);
+    }
+
+    /**
+     * Adds a 'where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereNotContains($field, $value)
+    {
+        return $this->where($field, Operator::$notContains, $value);
+    }
+
+    /**
+     * Query for entries that match any of the values provided for the given field.
+     *
+     * @param string $field
+     * @param array  $values
+     *
+     * @return Builder
+     */
+    public function whereIn($field, array $values)
+    {
+        return $this->orFilter(function (self $query) use ($field, $values) {
+            foreach ($values as $value) {
+                $query->whereEquals($field, $value);
+            }
+        });
+    }
+
+    /**
+     * Adds a 'between' clause to the current query.
+     *
+     * @param string $field
+     * @param array  $values
+     *
+     * @return Builder
+     */
+    public function whereBetween($field, array $values)
+    {
+        return $this->where([
+            [$field, '>=', $values[0]],
+            [$field, '<=', $values[1]],
+        ]);
+    }
+
+    /**
+     * Adds a 'where starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereStartsWith($field, $value)
+    {
+        return $this->where($field, Operator::$startsWith, $value);
+    }
+
+    /**
+     * Adds a 'where *not* starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereNotStartsWith($field, $value)
+    {
+        return $this->where($field, Operator::$notStartsWith, $value);
+    }
+
+    /**
+     * Adds a 'where ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereEndsWith($field, $value)
+    {
+        return $this->where($field, Operator::$endsWith, $value);
+    }
+
+    /**
+     * Adds a 'where *not* ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function whereNotEndsWith($field, $value)
+    {
+        return $this->where($field, Operator::$notEndsWith, $value);
+    }
+
+    /**
+     * Adds a enabled filter to the current query.
+     *
+     * @return Builder
+     */
+    public function whereEnabled()
+    {
+        return $this->rawFilter($this->schema->filterEnabled());
+    }
+
+    /**
+     * Adds a disabled filter to the current query.
+     *
+     * @return Builder
+     */
+    public function whereDisabled()
+    {
+        return $this->rawFilter($this->schema->filterDisabled());
+    }
+
+    /**
+     * Adds a 'member of' filter to the current query.
+     *
+     * @param string $dn
+     *
+     * @return Builder
+     */
+    public function whereMemberOf($dn)
+    {
+        return $this->whereEquals($this->schema->memberOfRecursive(), $dn);
+    }
+
+    /**
+     * Adds an 'or where' clause to the current query.
+     *
+     * @param array|string $field
+     * @param string|null  $operator
+     * @param string|null  $value
+     *
+     * @return Builder
+     */
+    public function orWhere($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'or');
+    }
+
+    /**
+     * Adds a raw or where clause to the current query.
+     *
+     * Values given to this method are not escaped.
+     *
+     * @param string $field
+     * @param string $operator
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereRaw($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'or', true);
+    }
+
+    /**
+     * Adds an 'or where has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return Builder
+     */
+    public function orWhereHas($field)
+    {
+        return $this->orWhere($field, Operator::$has);
+    }
+
+    /**
+     * Adds a 'where not has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return Builder
+     */
+    public function orWhereNotHas($field)
+    {
+        return $this->orWhere($field, Operator::$notHas);
+    }
+
+    /**
+     * Adds an 'or where equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereEquals($field, $value)
+    {
+        return $this->orWhere($field, Operator::$equals, $value);
+    }
+
+    /**
+     * Adds an 'or where not equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereNotEquals($field, $value)
+    {
+        return $this->orWhere($field, Operator::$doesNotEqual, $value);
+    }
+
+    /**
+     * Adds a 'or where approximately equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereApproximatelyEquals($field, $value)
+    {
+        return $this->orWhere($field, Operator::$approximatelyEquals, $value);
+    }
+
+    /**
+     * Adds an 'or where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereContains($field, $value)
+    {
+        return $this->orWhere($field, Operator::$contains, $value);
+    }
+
+    /**
+     * Adds an 'or where *not* contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereNotContains($field, $value)
+    {
+        return $this->orWhere($field, Operator::$notContains, $value);
+    }
+
+    /**
+     * Adds an 'or where starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereStartsWith($field, $value)
+    {
+        return $this->orWhere($field, Operator::$startsWith, $value);
+    }
+
+    /**
+     * Adds an 'or where *not* starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereNotStartsWith($field, $value)
+    {
+        return $this->orWhere($field, Operator::$notStartsWith, $value);
+    }
+
+    /**
+     * Adds an 'or where ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereEndsWith($field, $value)
+    {
+        return $this->orWhere($field, Operator::$endsWith, $value);
+    }
+
+    /**
+     * Adds an 'or where *not* ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return Builder
+     */
+    public function orWhereNotEndsWith($field, $value)
+    {
+        return $this->orWhere($field, Operator::$notEndsWith, $value);
+    }
+
+    /**
+     * Adds an 'or where member of' filter to the current query.
+     *
+     * @param string $dn
+     *
+     * @return Builder
+     */
+    public function orWhereMemberOf($dn)
+    {
+        return $this->orWhereEquals($this->schema->memberOfRecursive(), $dn);
+    }
+
+    /**
+     * Adds a filter onto the current query.
+     *
+     * @param string $type     The type of filter to add.
+     * @param array  $bindings The bindings of the filter.
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function addFilter($type, array $bindings)
+    {
+        // Here we will ensure we have been given a proper filter type.
+        if (!array_key_exists($type, $this->filters)) {
+            throw new InvalidArgumentException("Invalid filter type: {$type}.");
+        }
+
+        // The required filter key bindings.
+        $required = ['field', 'operator', 'value'];
+
+        // Here we will ensure the proper key bindings are given.
+        if (count(array_intersect_key(array_flip($required), $bindings)) !== count($required)) {
+            // Retrieve the keys that are missing in the bindings array.
+            $missing = implode(', ', array_diff($required, array_flip($bindings)));
+
+            throw new InvalidArgumentException("Invalid filter bindings. Missing: {$missing} keys.");
+        }
+
+        $this->filters[$type][] = $bindings;
+
+        return $this;
+    }
+
+    /**
+     * Clear the query builders filters.
+     *
+     * @return $this
+     */
+    public function clearFilters()
+    {
+        foreach ($this->filters as $type => $filters) {
+            $this->filters[$type] = [];
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns true / false depending if the current object
+     * contains selects.
+     *
+     * @return bool
+     */
+    public function hasSelects()
+    {
+        return count($this->getSelects()) > 0;
+    }
+
+    /**
+     * Returns the current selected fields to retrieve.
+     *
+     * @return array
+     */
+    public function getSelects()
+    {
+        $selects = $this->columns;
+
+        // If the asterisk is not provided in the selected columns, we need to
+        // ensure we always select the object class and category, as these
+        // are used for constructing models. The asterisk indicates that
+        // we want all attributes returned for LDAP records.
+        if (!in_array('*', $selects)) {
+            $selects[] = $this->schema->objectCategory();
+            $selects[] = $this->schema->objectClass();
+        }
+
+        return $selects;
+    }
+
+    /**
+     * Sorts the LDAP search results by the specified field and direction.
+     *
+     * @param string   $field
+     * @param string   $direction
+     * @param int|null $flags
+     *
+     * @return Builder
+     */
+    public function sortBy($field, $direction = 'asc', $flags = null)
+    {
+        $this->sortByField = $field;
+
+        // Normalize direction.
+        $direction = strtolower($direction);
+
+        if ($direction === 'asc' || $direction === 'desc') {
+            $this->sortByDirection = $direction;
+        }
+
+        if (is_null($flags)) {
+            $this->sortByFlags = SORT_NATURAL + SORT_FLAG_CASE;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Set the query to search on the base distinguished name.
+     *
+     * This will result in one record being returned.
+     *
+     * @return Builder
+     */
+    public function read()
+    {
+        $this->type = 'read';
+
+        return $this;
+    }
+
+    /**
+     * Set the query to search one level on the base distinguished name.
+     *
+     * @return Builder
+     */
+    public function listing()
+    {
+        $this->type = 'listing';
+
+        return $this;
+    }
+
+    /**
+     * Sets the query to search the entire directory on the base distinguished name.
+     *
+     * @return Builder
+     */
+    public function recursive()
+    {
+        $this->type = 'search';
+
+        return $this;
+    }
+
+    /**
+     * Whether to return the LDAP results in their raw format.
+     *
+     * @param bool $raw
+     *
+     * @return Builder
+     */
+    public function raw($raw = true)
+    {
+        $this->raw = (bool) $raw;
+
+        return $this;
+    }
+
+    /**
+     * Whether the current query is nested.
+     *
+     * @param bool $nested
+     *
+     * @return Builder
+     */
+    public function nested($nested = true)
+    {
+        $this->nested = (bool) $nested;
+
+        return $this;
+    }
+
+    /**
+     * Enables caching on the current query until the given date.
+     *
+     * If flushing is enabled, the query cache will be flushed and then re-cached.
+     *
+     * @param \DateTimeInterface $until When to expire the query cache.
+     * @param bool               $flush Whether to force-flush the query cache.
+     *
+     * @return $this
+     */
+    public function cache(\DateTimeInterface $until = null, $flush = false)
+    {
+        $this->caching = true;
+        $this->cacheUntil = $until;
+        $this->flushCache = $flush;
+
+        return $this;
+    }
+
+    /**
+     * Returns an escaped string for use in an LDAP filter.
+     *
+     * @param string $value
+     * @param string $ignore
+     * @param int    $flags
+     *
+     * @return string
+     */
+    public function escape($value, $ignore = '', $flags = 0)
+    {
+        return ldap_escape($value, $ignore, $flags);
+    }
+
+    /**
+     * Returns the query builders sort by field.
+     *
+     * @return string
+     */
+    public function getSortByField()
+    {
+        return $this->sortByField;
+    }
+
+    /**
+     * Returns the query builders sort by direction.
+     *
+     * @return string
+     */
+    public function getSortByDirection()
+    {
+        return $this->sortByDirection;
+    }
+
+    /**
+     * Returns the query builders sort by flags.
+     *
+     * @return int
+     */
+    public function getSortByFlags()
+    {
+        return $this->sortByFlags;
+    }
+
+    /**
+     * Returns true / false if the current query is nested.
+     *
+     * @return bool
+     */
+    public function isNested()
+    {
+        return $this->nested === true;
+    }
+
+    /**
+     * Returns bool that determines whether the current
+     * query builder will return raw results.
+     *
+     * @return bool
+     */
+    public function isRaw()
+    {
+        return $this->raw;
+    }
+
+    /**
+     * Returns bool that determines whether the current
+     * query builder will return paginated results.
+     *
+     * @return bool
+     */
+    public function isPaginated()
+    {
+        return $this->paginated;
+    }
+
+    /**
+     * Returns bool that determines whether the current
+     * query builder will return sorted results.
+     *
+     * @return bool
+     */
+    public function isSorted()
+    {
+        return $this->sortByField ? true : false;
+    }
+
+    /**
+     * Handle dynamic method calls on the query builder object to be directed to the query processor.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        // We'll check if the beginning of the method being called contains
+        // 'where'. If so, we'll assume it's a dynamic 'where' clause.
+        if (substr($method, 0, 5) === 'where') {
+            return $this->dynamicWhere($method, $parameters);
+        }
+
+        return call_user_func_array([$this->newProcessor(), $method], $parameters);
+    }
+
+    /**
+     * Handles dynamic "where" clauses to the query.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return Builder
+     */
+    public function dynamicWhere($method, $parameters)
+    {
+        $finder = substr($method, 5);
+
+        $segments = preg_split('/(And|Or)(?=[A-Z])/', $finder, -1, PREG_SPLIT_DELIM_CAPTURE);
+
+        // The connector variable will determine which connector will be used for the
+        // query condition. We will change it as we come across new boolean values
+        // in the dynamic method strings, which could contain a number of these.
+        $connector = 'and';
+
+        $index = 0;
+
+        foreach ($segments as $segment) {
+            // If the segment is not a boolean connector, we can assume it is a column's name
+            // and we will add it to the query as a new constraint as a where clause, then
+            // we can keep iterating through the dynamic method string's segments again.
+            if ($segment != 'And' && $segment != 'Or') {
+                $this->addDynamic($segment, $connector, $parameters, $index);
+
+                $index++;
+            }
+
+            // Otherwise, we will store the connector so we know how the next where clause we
+            // find in the query should be connected to the previous ones, meaning we will
+            // have the proper boolean connector to connect the next where clause found.
+            else {
+                $connector = $segment;
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds an array of wheres to the current query.
+     *
+     * @param array  $wheres
+     * @param string $boolean
+     * @param bool   $raw
+     *
+     * @return Builder
+     */
+    protected function addArrayOfWheres($wheres, $boolean, $raw)
+    {
+        foreach ($wheres as $key => $value) {
+            if (is_numeric($key) && is_array($value)) {
+                // If the key is numeric and the value is an array, we'll
+                // assume we've been given an array with conditionals.
+                list($field, $condition) = $value;
+
+                // Since a value is optional for some conditionals, we will
+                // try and retrieve the third parameter from the array,
+                // but is entirely optional.
+                $value = Arr::get($value, 2);
+
+                $this->where($field, $condition, $value, $boolean);
+            } else {
+                // If the value is not an array, we will assume an equals clause.
+                $this->where($key, Operator::$equals, $value, $boolean, $raw);
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Add a single dynamic where clause statement to the query.
+     *
+     * @param string $segment
+     * @param string $connector
+     * @param array  $parameters
+     * @param int    $index
+     *
+     * @return void
+     */
+    protected function addDynamic($segment, $connector, $parameters, $index)
+    {
+        // We'll format the 'where' boolean and field here to avoid casing issues.
+        $bool = strtolower($connector);
+        $field = strtolower($segment);
+
+        $this->where($field, '=', $parameters[$index], $bool);
+    }
+
+    /**
+     * Logs the given executed query information by firing its query event.
+     *
+     * @param Builder    $query
+     * @param string     $type
+     * @param null|float $time
+     */
+    protected function logQuery($query, $type, $time = null)
+    {
+        $args = [$query, $time];
+
+        switch ($type) {
+            case 'listing':
+                $event = new Events\Listing(...$args);
+                break;
+            case 'read':
+                $event = new Events\Read(...$args);
+                break;
+            case 'paginate':
+                $event = new Events\Paginate(...$args);
+                break;
+            default:
+                $event = new Events\Search(...$args);
+                break;
+        }
+
+        $this->fireQueryEvent($event);
+    }
+
+    /**
+     * Fires the given query event.
+     *
+     * @param QueryExecuted $event
+     */
+    protected function fireQueryEvent(QueryExecuted $event)
+    {
+        Adldap::getEventDispatcher()->fire($event);
+    }
+
+    /**
+     * Get the elapsed time since a given starting point.
+     *
+     * @param int $start
+     *
+     * @return float
+     */
+    protected function getElapsedTime($start)
+    {
+        return round((microtime(true) - $start) * 1000, 2);
+    }
+
+    /**
+     * Returns a new query Processor instance.
+     *
+     * @return Processor
+     */
+    protected function newProcessor()
+    {
+        return new Processor($this);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Cache.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Cache.php
new file mode 100644
index 0000000..9b0206a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Cache.php
@@ -0,0 +1,95 @@
+<?php
+
+namespace Adldap\Query;
+
+use Closure;
+use Psr\SimpleCache\CacheInterface;
+
+class Cache
+{
+    /**
+     * The cache driver.
+     *
+     * @var CacheInterface
+     */
+    protected $store;
+
+    /**
+     * Constructor.
+     *
+     * @param CacheInterface $store
+     */
+    public function __construct(CacheInterface $store)
+    {
+        $this->store = $store;
+    }
+
+    /**
+     * Get an item from the cache.
+     *
+     * @param string $key
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *
+     * @return mixed
+     */
+    public function get($key)
+    {
+        return $this->store->get($key);
+    }
+
+    /**
+     * Store an item in the cache.
+     *
+     * @param string                                    $key
+     * @param mixed                                     $value
+     * @param \DateTimeInterface|\DateInterval|int|null $ttl
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *
+     * @return bool
+     */
+    public function put($key, $value, $ttl = null)
+    {
+        return $this->store->set($key, $value, $ttl);
+    }
+
+    /**
+     * Get an item from the cache, or execute the given Closure and store the result.
+     *
+     * @param string                                    $key
+     * @param \DateTimeInterface|\DateInterval|int|null $ttl
+     * @param Closure                                   $callback
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *
+     * @return mixed
+     */
+    public function remember($key, $ttl, Closure $callback)
+    {
+        $value = $this->get($key);
+
+        if (!is_null($value)) {
+            return $value;
+        }
+
+        $this->put($key, $value = $callback(), $ttl);
+
+        return $value;
+    }
+
+    /**
+     * Delete an item from the cache.
+     *
+     * @param string $key
+     *
+     * @throws \Psr\Cache\InvalidArgumentException
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *
+     * @return bool
+     */
+    public function delete($key)
+    {
+        return $this->store->delete($key);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Collection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Collection.php
new file mode 100644
index 0000000..b9b6616
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Collection.php
@@ -0,0 +1,27 @@
+<?php
+
+namespace Adldap\Query;
+
+use Adldap\Models\Model;
+use Illuminate\Support\Collection as BaseCollection;
+
+class Collection extends BaseCollection
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected function valueRetriever($value)
+    {
+        if ($this->useAsCallable($value)) {
+            return $value;
+        }
+
+        return function ($item) use ($value) {
+            if ($item instanceof Model) {
+                return $item->getFirstAttribute($value);
+            }
+
+            return data_get($item, $value);
+        };
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Listing.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Listing.php
new file mode 100644
index 0000000..0ca05b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Listing.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Query\Events;
+
+class Listing extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Paginate.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Paginate.php
new file mode 100644
index 0000000..2a7666d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Paginate.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Query\Events;
+
+class Paginate extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/QueryExecuted.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/QueryExecuted.php
new file mode 100644
index 0000000..3779276
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/QueryExecuted.php
@@ -0,0 +1,54 @@
+<?php
+
+namespace Adldap\Query\Events;
+
+use Adldap\Query\Builder;
+
+class QueryExecuted
+{
+    /**
+     * The LDAP filter that was used for the query.
+     *
+     * @var string
+     */
+    protected $query;
+
+    /**
+     * The number of milliseconds it took to execute the query.
+     *
+     * @var float
+     */
+    protected $time;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder    $query
+     * @param null|float $time
+     */
+    public function __construct(Builder $query, $time = null)
+    {
+        $this->query = $query;
+        $this->time = $time;
+    }
+
+    /**
+     * Returns the LDAP filter that was used for the query.
+     *
+     * @return Builder
+     */
+    public function getQuery()
+    {
+        return $this->query;
+    }
+
+    /**
+     * Returns the number of milliseconds it took to execute the query.
+     *
+     * @return float|null
+     */
+    public function getTime()
+    {
+        return $this->time;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Read.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Read.php
new file mode 100644
index 0000000..4e0e65d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Read.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Query\Events;
+
+class Read extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Search.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Search.php
new file mode 100644
index 0000000..35fe913
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Events/Search.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Adldap\Query\Events;
+
+class Search extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Factory.php
new file mode 100644
index 0000000..199107e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Factory.php
@@ -0,0 +1,297 @@
+<?php
+
+namespace Adldap\Query;
+
+use Adldap\Models\RootDse;
+use Adldap\Schemas\ActiveDirectory;
+use Adldap\Schemas\SchemaInterface;
+use Adldap\Connections\ConnectionInterface;
+
+/**
+ * Adldap2 Search Factory.
+ *
+ * Constructs new LDAP queries.
+ *
+ *
+ * @mixin Builder
+ */
+class Factory
+{
+    /**
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * Stores the current schema instance.
+     *
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * The base DN to use for the search.
+     *
+     * @var string|null
+     */
+    protected $base;
+
+    /**
+     * The query cache.
+     *
+     * @var Cache
+     */
+    protected $cache;
+
+    /**
+     * Constructor.
+     *
+     * @param ConnectionInterface  $connection The connection to use when constructing a new query.
+     * @param SchemaInterface|null $schema     The schema to use for the query and models located.
+     * @param string               $baseDn     The base DN to use for all searches.
+     */
+    public function __construct(ConnectionInterface $connection, SchemaInterface $schema = null, $baseDn = '')
+    {
+        $this->setConnection($connection)
+            ->setSchema($schema)
+            ->setBaseDn($baseDn);
+    }
+
+    /**
+     * Sets the connection property.
+     *
+     * @param ConnectionInterface $connection
+     *
+     * @return $this
+     */
+    public function setConnection(ConnectionInterface $connection)
+    {
+        $this->connection = $connection;
+
+        return $this;
+    }
+
+    /**
+     * Sets the schema property.
+     *
+     * @param SchemaInterface|null $schema
+     *
+     * @return $this
+     */
+    public function setSchema(SchemaInterface $schema = null)
+    {
+        $this->schema = $schema ?: new ActiveDirectory();
+
+        return $this;
+    }
+
+    /**
+     * Sets the base distinguished name to perform searches upon.
+     *
+     * @param string $base
+     *
+     * @return $this
+     */
+    public function setBaseDn($base = '')
+    {
+        $this->base = $base;
+
+        return $this;
+    }
+
+    /**
+     * Sets the cache for storing query results.
+     *
+     * @param Cache $cache
+     *
+     * @return $this
+     */
+    public function setCache(Cache $cache)
+    {
+        $this->cache = $cache;
+
+        return $this;
+    }
+
+    /**
+     * Returns a new query builder instance.
+     *
+     * @return Builder
+     */
+    public function newQuery()
+    {
+        return $this->newBuilder()->in($this->base);
+    }
+
+    /**
+     * Performs a global 'all' search query on the current
+     * connection by performing a search for all entries
+     * that contain a common name attribute.
+     *
+     * @return \Adldap\Query\Collection|array
+     */
+    public function get()
+    {
+        return $this->newQuery()->whereHas($this->schema->commonName())->get();
+    }
+
+    /**
+     * Returns a query builder scoped to users.
+     *
+     * @return Builder
+     */
+    public function users()
+    {
+        $wheres = [
+            [$this->schema->objectClass(), Operator::$equals, $this->schema->objectClassUser()],
+            [$this->schema->objectCategory(), Operator::$equals, $this->schema->objectCategoryPerson()],
+        ];
+
+        // OpenLDAP doesn't like specifying the omission of user objectclasses
+        // equal to `contact`. We'll make sure we're working with
+        // ActiveDirectory before adding this filter.
+        if (is_a($this->schema, ActiveDirectory::class)) {
+            $wheres[] = [$this->schema->objectClass(), Operator::$doesNotEqual, $this->schema->objectClassContact()];
+        }
+
+        return $this->where($wheres);
+    }
+
+    /**
+     * Returns a query builder scoped to printers.
+     *
+     * @return Builder
+     */
+    public function printers()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassPrinter(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to organizational units.
+     *
+     * @return Builder
+     */
+    public function ous()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassOu(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to organizations.
+     *
+     * @return Builder
+     */
+    public function organizations()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassOrganization(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to groups.
+     *
+     * @return Builder
+     */
+    public function groups()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassGroup(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to containers.
+     *
+     * @return Builder
+     */
+    public function containers()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassContainer(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to contacts.
+     *
+     * @return Builder
+     */
+    public function contacts()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassContact(),
+        ]);
+    }
+
+    /**
+     * Returns a query builder scoped to computers.
+     *
+     * @return Builder
+     */
+    public function computers()
+    {
+        return $this->where([
+            $this->schema->objectClass() => $this->schema->objectClassComputer(),
+        ]);
+    }
+
+    /**
+     * Returns the root DSE record.
+     *
+     * @return RootDse|null
+     */
+    public function getRootDse()
+    {
+        $query = $this->newQuery();
+
+        $root = $query->in('')->read()->whereHas($this->schema->objectClass())->first();
+
+        if ($root) {
+            return (new RootDse([], $query))
+                ->setRawAttributes($root->getAttributes());
+        }
+    }
+
+    /**
+     * Handle dynamic method calls on the query builder object.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        return call_user_func_array([$this->newQuery(), $method], $parameters);
+    }
+
+    /**
+     * Returns a new query grammar instance.
+     *
+     * @return Grammar
+     */
+    protected function newGrammar()
+    {
+        return new Grammar();
+    }
+
+    /**
+     * Returns a new query builder instance.
+     *
+     * @return Builder
+     */
+    protected function newBuilder()
+    {
+        $builder = new Builder($this->connection, $this->newGrammar(), $this->schema);
+
+        $builder->setCache($this->cache);
+
+        return $builder;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Grammar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Grammar.php
new file mode 100644
index 0000000..dcda3d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Grammar.php
@@ -0,0 +1,390 @@
+<?php
+
+namespace Adldap\Query;
+
+class Grammar
+{
+    /**
+     * Wraps a query string in brackets.
+     *
+     * Produces: (query)
+     *
+     * @param string $query
+     * @param string $prefix
+     * @param string $suffix
+     *
+     * @return string
+     */
+    public function wrap($query, $prefix = '(', $suffix = ')')
+    {
+        return $prefix.$query.$suffix;
+    }
+
+    /**
+     * Compiles the Builder instance into an LDAP query string.
+     *
+     * @param Builder $builder
+     *
+     * @return string
+     */
+    public function compile(Builder $builder)
+    {
+        $ands = $builder->filters['and'];
+        $ors = $builder->filters['or'];
+        $raws = $builder->filters['raw'];
+
+        $query = $this->concatenate($raws);
+
+        $query = $this->compileWheres($ands, $query);
+
+        $query = $this->compileOrWheres($ors, $query);
+
+        // We need to check if the query is already nested, otherwise
+        // we'll nest it here and return the result.
+        if (!$builder->isNested()) {
+            $total = count($ands) + count($raws);
+
+            // Make sure we wrap the query in an 'and' if using
+            // multiple filters. We also need to check if only
+            // one where is used with multiple orWheres, that
+            // we wrap it in an `and` query.
+            if ($total > 1 || (count($ands) === 1 && count($ors) > 0)) {
+                $query = $this->compileAnd($query);
+            }
+        }
+
+        return $query;
+    }
+
+    /**
+     * Concatenates filters into a single string.
+     *
+     * @param array $bindings
+     *
+     * @return string
+     */
+    public function concatenate(array $bindings = [])
+    {
+        // Filter out empty query segments.
+        $bindings = array_filter($bindings, function ($value) {
+            return (string) $value !== '';
+        });
+
+        return implode('', $bindings);
+    }
+
+    /**
+     * Returns a query string for equals.
+     *
+     * Produces: (field=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileEquals($field, $value)
+    {
+        return $this->wrap($field.Operator::$equals.$value);
+    }
+
+    /**
+     * Returns a query string for does not equal.
+     *
+     * Produces: (!(field=value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileDoesNotEqual($field, $value)
+    {
+        return $this->compileNot($this->compileEquals($field, $value));
+    }
+
+    /**
+     * Alias for does not equal operator (!=) operator.
+     *
+     * Produces: (!(field=value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileDoesNotEqualAlias($field, $value)
+    {
+        return $this->compileDoesNotEqual($field, $value);
+    }
+
+    /**
+     * Returns a query string for greater than or equals.
+     *
+     * Produces: (field>=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileGreaterThanOrEquals($field, $value)
+    {
+        return $this->wrap($field.Operator::$greaterThanOrEquals.$value);
+    }
+
+    /**
+     * Returns a query string for less than or equals.
+     *
+     * Produces: (field<=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileLessThanOrEquals($field, $value)
+    {
+        return $this->wrap($field.Operator::$lessThanOrEquals.$value);
+    }
+
+    /**
+     * Returns a query string for approximately equals.
+     *
+     * Produces: (field~=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileApproximatelyEquals($field, $value)
+    {
+        return $this->wrap($field.Operator::$approximatelyEquals.$value);
+    }
+
+    /**
+     * Returns a query string for starts with.
+     *
+     * Produces: (field=value*)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileStartsWith($field, $value)
+    {
+        return $this->wrap($field.Operator::$equals.$value.Operator::$has);
+    }
+
+    /**
+     * Returns a query string for does not start with.
+     *
+     * Produces: (!(field=*value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotStartsWith($field, $value)
+    {
+        return $this->compileNot($this->compileStartsWith($field, $value));
+    }
+
+    /**
+     * Returns a query string for ends with.
+     *
+     * Produces: (field=*value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileEndsWith($field, $value)
+    {
+        return $this->wrap($field.Operator::$equals.Operator::$has.$value);
+    }
+
+    /**
+     * Returns a query string for does not end with.
+     *
+     * Produces: (!(field=value*))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotEndsWith($field, $value)
+    {
+        return $this->compileNot($this->compileEndsWith($field, $value));
+    }
+
+    /**
+     * Returns a query string for contains.
+     *
+     * Produces: (field=*value*)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileContains($field, $value)
+    {
+        return $this->wrap($field.Operator::$equals.Operator::$has.$value.Operator::$has);
+    }
+
+    /**
+     * Returns a query string for does not contain.
+     *
+     * Produces: (!(field=*value*))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotContains($field, $value)
+    {
+        return $this->compileNot($this->compileContains($field, $value));
+    }
+
+    /**
+     * Returns a query string for a where has.
+     *
+     * Produces: (field=*)
+     *
+     * @param string $field
+     *
+     * @return string
+     */
+    public function compileHas($field)
+    {
+        return $this->wrap($field.Operator::$equals.Operator::$has);
+    }
+
+    /**
+     * Returns a query string for a where does not have.
+     *
+     * Produces: (!(field=*))
+     *
+     * @param string $field
+     *
+     * @return string
+     */
+    public function compileNotHas($field)
+    {
+        return $this->compileNot($this->compileHas($field));
+    }
+
+    /**
+     * Wraps the inserted query inside an AND operator.
+     *
+     * Produces: (&query)
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileAnd($query)
+    {
+        return $query ? $this->wrap($query, '(&') : '';
+    }
+
+    /**
+     * Wraps the inserted query inside an OR operator.
+     *
+     * Produces: (|query)
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileOr($query)
+    {
+        return $query ? $this->wrap($query, '(|') : '';
+    }
+
+    /**
+     * Wraps the inserted query inside an NOT operator.
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileNot($query)
+    {
+        return $query ? $this->wrap($query, '(!') : '';
+    }
+
+    /**
+     * Assembles all where clauses in the current wheres property.
+     *
+     * @param array  $wheres
+     * @param string $query
+     *
+     * @return string
+     */
+    protected function compileWheres(array $wheres = [], $query = '')
+    {
+        foreach ($wheres as $where) {
+            $query .= $this->compileWhere($where);
+        }
+
+        return $query;
+    }
+
+    /**
+     * Assembles all or where clauses in the current orWheres property.
+     *
+     * @param array  $orWheres
+     * @param string $query
+     *
+     * @return string
+     */
+    protected function compileOrWheres(array $orWheres = [], $query = '')
+    {
+        $or = '';
+
+        foreach ($orWheres as $where) {
+            $or .= $this->compileWhere($where);
+        }
+
+        // Make sure we wrap the query in an 'or' if using multiple
+        // orWheres. For example (|(QUERY)(ORWHEREQUERY)).
+        if (($query && count($orWheres) > 0) || count($orWheres) > 1) {
+            $query .= $this->compileOr($or);
+        } else {
+            $query .= $or;
+        }
+
+        return $query;
+    }
+
+    /**
+     * Assembles a single where query based
+     * on its operator and returns it.
+     *
+     * @param array $where
+     *
+     * @return string|null
+     */
+    protected function compileWhere(array $where)
+    {
+        // Get the name of the operator.
+        if ($name = array_search($where['operator'], Operator::all())) {
+            // If the name was found we'll camel case it
+            // to run it through the compile method.
+            $method = 'compile'.ucfirst($name);
+
+            // Make sure the compile method exists for the operator.
+            if (method_exists($this, $method)) {
+                return $this->{$method}($where['field'], $where['value']);
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Operator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Operator.php
new file mode 100644
index 0000000..75b3289
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Operator.php
@@ -0,0 +1,116 @@
+<?php
+
+namespace Adldap\Query;
+
+use ReflectionClass;
+
+class Operator
+{
+    /**
+     * The 'has' wildcard operator.
+     *
+     * @var string
+     */
+    public static $has = '*';
+
+    /**
+     * The custom `notHas` operator.
+     *
+     * @var string
+     */
+    public static $notHas = '!*';
+
+    /**
+     * The equals operator.
+     *
+     * @var string
+     */
+    public static $equals = '=';
+
+    /**
+     * The does not equal operator.
+     *
+     * @var string
+     */
+    public static $doesNotEqual = '!';
+
+    /**
+     * The does not equal operator (alias).
+     *
+     * @var string
+     */
+    public static $doesNotEqualAlias = '!=';
+
+    /**
+     * The greater than or equal to operator.
+     *
+     * @var string
+     */
+    public static $greaterThanOrEquals = '>=';
+
+    /**
+     * The less than or equal to operator.
+     *
+     * @var string
+     */
+    public static $lessThanOrEquals = '<=';
+
+    /**
+     * The approximately equal to operator.
+     *
+     * @var string
+     */
+    public static $approximatelyEquals = '~=';
+
+    /**
+     * The custom starts with operator.
+     *
+     * @var string
+     */
+    public static $startsWith = 'starts_with';
+
+    /**
+     * The custom not starts with operator.
+     *
+     * @var string
+     */
+    public static $notStartsWith = 'not_starts_with';
+
+    /**
+     * The custom ends with operator.
+     *
+     * @var string
+     */
+    public static $endsWith = 'ends_with';
+
+    /**
+     * The custom not ends with operator.
+     *
+     * @var string
+     */
+    public static $notEndsWith = 'not_ends_with';
+
+    /**
+     * The custom contains operator.
+     *
+     * @var string
+     */
+    public static $contains = 'contains';
+
+    /**
+     * The custom not contains operator.
+     *
+     * @var string
+     */
+    public static $notContains = 'not_contains';
+
+    /**
+     * Returns all available operators.
+     *
+     * @return array
+     */
+    public static function all()
+    {
+        return (new ReflectionClass(new static()))->getStaticProperties();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Paginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Paginator.php
new file mode 100644
index 0000000..0f61fe2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Paginator.php
@@ -0,0 +1,206 @@
+<?php
+
+namespace Adldap\Query;
+
+use Countable;
+use ArrayIterator;
+use IteratorAggregate;
+
+class Paginator implements Countable, IteratorAggregate
+{
+    /**
+     * The complete results array.
+     *
+     * @var array
+     */
+    protected $results = [];
+
+    /**
+     * The total amount of pages.
+     *
+     * @var int
+     */
+    protected $pages;
+
+    /**
+     * The amount of entries per page.
+     *
+     * @var int
+     */
+    protected $perPage;
+
+    /**
+     * The current page number.
+     *
+     * @var int
+     */
+    protected $currentPage;
+
+    /**
+     * The current entry offset number.
+     *
+     * @var int
+     */
+    protected $currentOffset;
+
+    /**
+     * Constructor.
+     *
+     * @param array $results
+     * @param int   $perPage
+     * @param int   $currentPage
+     * @param int   $pages
+     */
+    public function __construct(array $results = [], $perPage = 50, $currentPage = 0, $pages = 0)
+    {
+        $this->setResults($results)
+            ->setPerPage($perPage)
+            ->setCurrentPage($currentPage)
+            ->setPages($pages)
+            ->setCurrentOffset(($this->getCurrentPage() * $this->getPerPage()));
+    }
+
+    /**
+     * Get an iterator for the entries.
+     *
+     * @return ArrayIterator
+     */
+    public function getIterator()
+    {
+        $entries = array_slice($this->getResults(), $this->getCurrentOffset(), $this->getPerPage(), true);
+
+        return new ArrayIterator($entries);
+    }
+
+    /**
+     * Returns the complete results array.
+     *
+     * @return array
+     */
+    public function getResults()
+    {
+        return $this->results;
+    }
+
+    /**
+     * Returns the total amount of pages
+     * in a paginated result.
+     *
+     * @return int
+     */
+    public function getPages()
+    {
+        return $this->pages;
+    }
+
+    /**
+     * Returns the total amount of entries
+     * allowed per page.
+     *
+     * @return int
+     */
+    public function getPerPage()
+    {
+        return $this->perPage;
+    }
+
+    /**
+     * Returns the current page number.
+     *
+     * @return int
+     */
+    public function getCurrentPage()
+    {
+        return $this->currentPage;
+    }
+
+    /**
+     * Returns the current offset number.
+     *
+     * @return int
+     */
+    public function getCurrentOffset()
+    {
+        return $this->currentOffset;
+    }
+
+    /**
+     * Returns the total amount of results.
+     *
+     * @return int
+     */
+    public function count()
+    {
+        return count($this->results);
+    }
+
+    /**
+     * Sets the results array property.
+     *
+     * @param array $results
+     *
+     * @return Paginator
+     */
+    protected function setResults(array $results)
+    {
+        $this->results = $results;
+
+        return $this;
+    }
+
+    /**
+     * Sets the total number of pages.
+     *
+     * @param int $pages
+     *
+     * @return Paginator
+     */
+    protected function setPages($pages = 0)
+    {
+        $this->pages = (int) $pages;
+
+        return $this;
+    }
+
+    /**
+     * Sets the number of entries per page.
+     *
+     * @param int $perPage
+     *
+     * @return Paginator
+     */
+    protected function setPerPage($perPage = 50)
+    {
+        $this->perPage = (int) $perPage;
+
+        return $this;
+    }
+
+    /**
+     * Sets the current page number.
+     *
+     * @param int $currentPage
+     *
+     * @return Paginator
+     */
+    protected function setCurrentPage($currentPage = 0)
+    {
+        $this->currentPage = (int) $currentPage;
+
+        return $this;
+    }
+
+    /**
+     * Sets the current offset number.
+     *
+     * @param int $offset
+     *
+     * @return Paginator
+     */
+    protected function setCurrentOffset($offset = 0)
+    {
+        $this->currentOffset = (int) $offset;
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Processor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Processor.php
new file mode 100644
index 0000000..e4e5329
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Query/Processor.php
@@ -0,0 +1,211 @@
+<?php
+
+namespace Adldap\Query;
+
+use Adldap\Models\Entry;
+use Adldap\Models\Model;
+use InvalidArgumentException;
+use Adldap\Schemas\SchemaInterface;
+use Adldap\Connections\ConnectionInterface;
+
+class Processor
+{
+    /**
+     * @var Builder
+     */
+    protected $builder;
+
+    /**
+     * @var ConnectionInterface
+     */
+    protected $connection;
+
+    /**
+     * @var SchemaInterface
+     */
+    protected $schema;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder $builder
+     */
+    public function __construct(Builder $builder)
+    {
+        $this->builder = $builder;
+        $this->schema = $builder->getSchema();
+        $this->connection = $builder->getConnection();
+    }
+
+    /**
+     * Processes LDAP search results and constructs their model instances.
+     *
+     * @param array $entries The LDAP entries to process.
+     *
+     * @return Collection|array
+     */
+    public function process($entries)
+    {
+        if ($this->builder->isRaw()) {
+            // If the builder is asking for a raw
+            // LDAP result, we can return here.
+            return $entries;
+        }
+
+        $models = [];
+
+        if (array_key_exists('count', $entries)) {
+            for ($i = 0; $i < $entries['count']; $i++) {
+                // We'll go through each entry and construct a new
+                // model instance with the raw LDAP attributes.
+                $models[] = $this->newLdapEntry($entries[$i]);
+            }
+        }
+
+        // If the query contains paginated results, we'll return them here.
+        if ($this->builder->isPaginated()) {
+            return $models;
+        }
+
+        // If the query is requested to be sorted, we'll perform
+        // that here and return the resulting collection.
+        if ($this->builder->isSorted()) {
+            return $this->processSort($models);
+        }
+
+        // Otherwise, we'll return a regular unsorted collection.
+        return $this->newCollection($models);
+    }
+
+    /**
+     * Processes paginated LDAP results.
+     *
+     * @param array $pages
+     * @param int   $perPage
+     * @param int   $currentPage
+     *
+     * @return Paginator
+     */
+    public function processPaginated(array $pages = [], $perPage = 50, $currentPage = 0)
+    {
+        $models = [];
+
+        foreach ($pages as $entries) {
+            // Go through each page and process the results into an objects array.
+            $models = array_merge($models, $this->process($entries));
+        }
+
+        $models = $this->processSort($models)->toArray();
+
+        return $this->newPaginator($models, $perPage, $currentPage, count($pages));
+    }
+
+    /**
+     * Returns a new LDAP Entry instance.
+     *
+     * @param array $attributes
+     *
+     * @return Entry
+     */
+    public function newLdapEntry(array $attributes = [])
+    {
+        $objectClass = $this->schema->objectClass();
+
+        // We need to ensure the record contains an object class to be able to
+        // determine its type. Otherwise, we create a default Entry model.
+        if (array_key_exists($objectClass, $attributes) && array_key_exists(0, $attributes[$objectClass])) {
+            // Retrieve all of the object classes from the LDAP
+            // entry and lowercase them for comparisons.
+            $classes = array_map('strtolower', $attributes[$objectClass]);
+
+            // Retrieve the model mapping.
+            $models = $this->schema->objectClassModelMap();
+
+            // Retrieve the object class mappings (with strtolower keys).
+            $mappings = array_map('strtolower', array_keys($models));
+
+            // Retrieve the model from the map using the entry's object class.
+            $map = array_intersect($mappings, $classes);
+
+            if (count($map) > 0) {
+                // Retrieve the model using the object class.
+                $model = $models[current($map)];
+
+                // Construct and return a new model.
+                return $this->newModel([], $model)
+                    ->setRawAttributes($attributes);
+            }
+        }
+
+        // A default entry model if the object class isn't found.
+        return $this->newModel()->setRawAttributes($attributes);
+    }
+
+    /**
+     * Creates a new model instance.
+     *
+     * @param array       $attributes
+     * @param string|null $model
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return mixed|Entry
+     */
+    public function newModel($attributes = [], $model = null)
+    {
+        $model = (class_exists($model) ? $model : $this->schema->entryModel());
+
+        if (!is_subclass_of($model, $base = Model::class)) {
+            throw new InvalidArgumentException("The given model class '{$model}' must extend the base model class '{$base}'");
+        }
+
+        return new $model($attributes, $this->builder->newInstance());
+    }
+
+    /**
+     * Returns a new Paginator object instance.
+     *
+     * @param array $models
+     * @param int   $perPage
+     * @param int   $currentPage
+     * @param int   $pages
+     *
+     * @return Paginator
+     */
+    public function newPaginator(array $models = [], $perPage = 25, $currentPage = 0, $pages = 1)
+    {
+        return new Paginator($models, $perPage, $currentPage, $pages);
+    }
+
+    /**
+     * Returns a new collection instance.
+     *
+     * @param array $items
+     *
+     * @return Collection
+     */
+    public function newCollection(array $items = [])
+    {
+        return new Collection($items);
+    }
+
+    /**
+     * Sorts LDAP search results.
+     *
+     * @param array $models
+     *
+     * @return Collection
+     */
+    protected function processSort(array $models = [])
+    {
+        $field = $this->builder->getSortByField();
+
+        $flags = $this->builder->getSortByFlags();
+
+        $direction = $this->builder->getSortByDirection();
+
+        $desc = ($direction === 'desc' ? true : false);
+
+        return $this->newCollection($models)->sortBy($field, $flags, $desc);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/ActiveDirectory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/ActiveDirectory.php
new file mode 100644
index 0000000..09f0314
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/ActiveDirectory.php
@@ -0,0 +1,94 @@
+<?php
+
+namespace Adldap\Schemas;
+
+class ActiveDirectory extends Schema
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedName()
+    {
+        return 'distinguishedname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedNameSubKey()
+    {
+        return 0;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterEnabled()
+    {
+        return '(!(UserAccountControl:1.2.840.113556.1.4.803:=2))';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterDisabled()
+    {
+        return '(UserAccountControl:1.2.840.113556.1.4.803:=2)';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lockoutTime()
+    {
+        return 'lockouttime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassGroup()
+    {
+        return 'group';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOu()
+    {
+        return 'organizationalunit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPerson()
+    {
+        return 'person';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuid()
+    {
+        return 'objectguid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuidRequiresConversion()
+    {
+        return true;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategory()
+    {
+        return 'objectcategory';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Directory389.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Directory389.php
new file mode 100644
index 0000000..f51a8a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Directory389.php
@@ -0,0 +1,110 @@
+<?php
+
+namespace Adldap\Schemas;
+
+class Directory389 extends Schema
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function accountName()
+    {
+        return 'uid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedName()
+    {
+        return 'dn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedNameSubKey()
+    {
+        //
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterEnabled()
+    {
+        return sprintf('(!(%s=*))', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterDisabled()
+    {
+        return sprintf('(%s=*)', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lockoutTime()
+    {
+        return 'pwdAccountLockedTime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategory()
+    {
+        return 'objectclass';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassGroup()
+    {
+        return 'groupofnames';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOu()
+    {
+        return 'organizationalUnit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPerson()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassUser()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuid()
+    {
+        return 'nsuniqueid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuidRequiresConversion()
+    {
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/EDirectory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/EDirectory.php
new file mode 100644
index 0000000..db31011
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/EDirectory.php
@@ -0,0 +1,110 @@
+<?php
+
+namespace Adldap\Schemas;
+
+class EDirectory extends Schema
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function accountName()
+    {
+        return 'uid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedName()
+    {
+        return 'dn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedNameSubKey()
+    {
+        //
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterEnabled()
+    {
+        return sprintf('(!(%s=*))', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterDisabled()
+    {
+        return sprintf('(%s=*)', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lockoutTime()
+    {
+        return 'pwdAccountLockedTime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategory()
+    {
+        return 'objectclass';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassGroup()
+    {
+        return 'groupofnames';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOu()
+    {
+        return 'organizationalUnit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPerson()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassUser()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuid()
+    {
+        return 'guid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuidRequiresConversion()
+    {
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/FreeIPA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/FreeIPA.php
new file mode 100644
index 0000000..410f6f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/FreeIPA.php
@@ -0,0 +1,126 @@
+<?php
+
+namespace Adldap\Schemas;
+
+class FreeIPA extends Schema
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function accountName()
+    {
+        return 'uid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedName()
+    {
+        return 'dn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategory()
+    {
+        return 'objectclass';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassGroup()
+    {
+        return 'ipausergroup';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userPrincipalName()
+    {
+        return 'krbCanonicalName';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedNameSubKey()
+    {
+        return 0;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterEnabled()
+    {
+        return '(!(UserAccountControl:1.2.840.113556.1.4.803:=2))';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterDisabled()
+    {
+        return '(UserAccountControl:1.2.840.113556.1.4.803:=2)';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lockoutTime()
+    {
+        return 'lockouttime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function passwordLastSet()
+    {
+        return 'krbLastPwdChange';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOu()
+    {
+        return 'organizationalunit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPerson()
+    {
+        return 'person';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassUser()
+    {
+        return 'organizationalPerson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuid()
+    {
+        return 'ipaUniqueID';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuidRequiresConversion()
+    {
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/OpenLDAP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/OpenLDAP.php
new file mode 100644
index 0000000..d598617
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/OpenLDAP.php
@@ -0,0 +1,110 @@
+<?php
+
+namespace Adldap\Schemas;
+
+class OpenLDAP extends Schema
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function accountName()
+    {
+        return 'uid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedName()
+    {
+        return 'dn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function distinguishedNameSubKey()
+    {
+        //
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterEnabled()
+    {
+        return sprintf('(!(%s=*))', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function filterDisabled()
+    {
+        return sprintf('(%s=*)', $this->lockoutTime());
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lockoutTime()
+    {
+        return 'pwdAccountLockedTime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategory()
+    {
+        return 'objectclass';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassGroup()
+    {
+        return 'groupofnames';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOu()
+    {
+        return 'organizationalUnit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPerson()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassUser()
+    {
+        return 'inetorgperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuid()
+    {
+        return 'entryuuid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectGuidRequiresConversion()
+    {
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Schema.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Schema.php
new file mode 100644
index 0000000..ac76452
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/Schema.php
@@ -0,0 +1,1264 @@
+<?php
+
+namespace Adldap\Schemas;
+
+use Adldap\Models\User;
+use Adldap\Models\Entry;
+use Adldap\Models\Group;
+use Adldap\Models\Contact;
+use Adldap\Models\Printer;
+use Adldap\Models\Computer;
+use Adldap\Models\Container;
+use Adldap\Models\Organization;
+use Adldap\Models\OrganizationalUnit;
+use Adldap\Models\ForeignSecurityPrincipal;
+
+abstract class Schema implements SchemaInterface
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function accountExpires()
+    {
+        return 'accountexpires';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function accountName()
+    {
+        return 'samaccountname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function accountType()
+    {
+        return 'samaccounttype';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function adminDisplayName()
+    {
+        return 'admindisplayname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function anr()
+    {
+        return 'anr';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function badPasswordCount()
+    {
+        return 'badpwdcount';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function badPasswordTime()
+    {
+        return 'badpasswordtime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function commonName()
+    {
+        return 'cn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function company()
+    {
+        return 'company';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function computer()
+    {
+        return 'computer';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function computerModel()
+    {
+        return Computer::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function configurationNamingContext()
+    {
+        return 'configurationnamingcontext';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function contact()
+    {
+        return 'contact';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function contactModel()
+    {
+        return Contact::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function containerModel()
+    {
+        return Container::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function country()
+    {
+        return 'c';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function createdAt()
+    {
+        return 'whencreated';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function currentTime()
+    {
+        return 'currenttime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function defaultNamingContext()
+    {
+        return 'defaultnamingcontext';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function department()
+    {
+        return 'department';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function departmentNumber()
+    {
+        return 'departmentnumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function description()
+    {
+        return 'description';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function displayName()
+    {
+        return 'displayname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dnsHostName()
+    {
+        return 'dnshostname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function domainComponent()
+    {
+        return 'dc';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function driverName()
+    {
+        return 'drivername';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function driverVersion()
+    {
+        return 'driverversion';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function email()
+    {
+        return 'mail';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function emailNickname()
+    {
+        return 'mailnickname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function employeeId()
+    {
+        return 'employeeid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function employeeNumber()
+    {
+        return 'employeenumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function employeeType()
+    {
+        return 'employeetype';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function entryModel()
+    {
+        return Entry::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function false()
+    {
+        return 'FALSE';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function firstName()
+    {
+        return 'givenname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function groupModel()
+    {
+        return Group::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function groupType()
+    {
+        return 'grouptype';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function homeAddress()
+    {
+        return 'homepostaladdress';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function homeMdb()
+    {
+        return 'homemdb';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function homeDrive()
+    {
+        return 'homedrive';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function homeDirectory()
+    {
+        return 'homedirectory';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function homePhone()
+    {
+        return 'homephone';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function info()
+    {
+        return 'info';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function initials()
+    {
+        return 'initials';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function instanceType()
+    {
+        return 'instancetype';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function ipPhone()
+    {
+        return 'ipphone';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCriticalSystemObject()
+    {
+        return 'iscriticalsystemobject';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function jpegPhoto()
+    {
+        return 'jpegphoto';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lastLogOff()
+    {
+        return 'lastlogoff';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lastLogOn()
+    {
+        return 'lastlogon';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lastLogOnTimestamp()
+    {
+        return 'lastlogontimestamp';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lastName()
+    {
+        return 'sn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function legacyExchangeDn()
+    {
+        return 'legacyexchangedn';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function locale()
+    {
+        return 'l';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function location()
+    {
+        return 'location';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function manager()
+    {
+        return 'manager';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function managedBy()
+    {
+        return 'managedby';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function maxPasswordAge()
+    {
+        return 'maxpwdage';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function member()
+    {
+        return 'member';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function memberIdentifier()
+    {
+        return 'distinguishedname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function memberOf()
+    {
+        return 'memberof';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function memberOfRecursive()
+    {
+        return 'memberof:1.2.840.113556.1.4.1941:';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function memberRange($from, $to)
+    {
+        return $this->member().";range={$from}-{$to}";
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function messageTrackingEnabled()
+    {
+        return 'messagetrackingenabled';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function msExchangeServer()
+    {
+        return 'ms-exch-exchange-server';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function name()
+    {
+        return 'name';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function neverExpiresDate()
+    {
+        return '9223372036854775807';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryComputer()
+    {
+        return 'computer';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryContainer()
+    {
+        return 'container';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryExchangePrivateMdb()
+    {
+        return 'msexchprivatemdb';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryExchangeServer()
+    {
+        return 'msExchExchangeServer';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryExchangeStorageGroup()
+    {
+        return 'msExchStorageGroup';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryGroup()
+    {
+        return 'group';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryOrganizationalUnit()
+    {
+        return 'organizational-unit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryPerson()
+    {
+        return 'person';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectCategoryPrinter()
+    {
+        return 'print-queue';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClass()
+    {
+        return 'objectclass';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassComputer()
+    {
+        return 'computer';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassContact()
+    {
+        return 'contact';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassContainer()
+    {
+        return 'container';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassOrganization()
+    {
+        return 'organization';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassPrinter()
+    {
+        return 'printqueue';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassUser()
+    {
+        return 'user';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassForeignSecurityPrincipal()
+    {
+        return 'foreignsecurityprincipal';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectClassModelMap()
+    {
+        return [
+            $this->objectClassComputer()                    => $this->computerModel(),
+            $this->objectClassContact()                     => $this->contactModel(),
+            $this->objectClassPerson()                      => $this->userModel(),
+            $this->objectClassGroup()                       => $this->groupModel(),
+            $this->objectClassContainer()                   => $this->containerModel(),
+            $this->objectClassPrinter()                     => $this->printerModel(),
+            $this->objectClassOrganization()                => $this->organizationModel(),
+            $this->objectClassOu()                          => $this->organizationalUnitModel(),
+            $this->objectClassForeignSecurityPrincipal()    => $this->foreignSecurityPrincipalModel(),
+        ];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectSid()
+    {
+        return 'objectsid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function objectSidRequiresConversion()
+    {
+        return true;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function operatingSystem()
+    {
+        return 'operatingsystem';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function operatingSystemServicePack()
+    {
+        return 'operatingsystemservicepack';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function operatingSystemVersion()
+    {
+        return 'operatingsystemversion';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organization()
+    {
+        return 'organization';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationName()
+    {
+        return 'o';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationalPerson()
+    {
+        return 'organizationalperson';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationalUnit()
+    {
+        return 'organizationalunit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationalUnitModel()
+    {
+        return OrganizationalUnit::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationModel()
+    {
+        return Organization::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function organizationalUnitShort()
+    {
+        return 'ou';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function otherMailbox()
+    {
+        return 'othermailbox';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function passwordLastSet()
+    {
+        return 'pwdlastset';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function person()
+    {
+        return 'person';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function personalTitle()
+    {
+        return 'personaltitle';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function physicalDeliveryOfficeName()
+    {
+        return 'physicaldeliveryofficename';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function portName()
+    {
+        return 'portname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function postalCode()
+    {
+        return 'postalcode';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function postOfficeBox()
+    {
+        return 'postofficebox';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function primaryGroupId()
+    {
+        return 'primarygroupid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerBinNames()
+    {
+        return 'printbinnames';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerColorSupported()
+    {
+        return 'printcolor';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerDuplexSupported()
+    {
+        return 'printduplexsupported';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerEndTime()
+    {
+        return 'printendtime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerMaxResolutionSupported()
+    {
+        return 'printmaxresolutionsupported';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerMediaSupported()
+    {
+        return 'printmediasupported';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerMemory()
+    {
+        return 'printmemory';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerModel()
+    {
+        return Printer::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerName()
+    {
+        return 'printername';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerOrientationSupported()
+    {
+        return 'printorientationssupported';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerPrintRate()
+    {
+        return 'printrate';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerPrintRateUnit()
+    {
+        return 'printrateunit';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerShareName()
+    {
+        return 'printsharename';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerStaplingSupported()
+    {
+        return 'printstaplingsupported';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function printerStartTime()
+    {
+        return 'printstarttime';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function priority()
+    {
+        return 'priority';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function profilePath()
+    {
+        return 'profilepath';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function proxyAddresses()
+    {
+        return 'proxyaddresses';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function roomNumber()
+    {
+        return 'roomnumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function rootDomainNamingContext()
+    {
+        return 'rootdomainnamingcontext';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function schemaNamingContext()
+    {
+        return 'schemanamingcontext';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function scriptPath()
+    {
+        return 'scriptpath';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function serialNumber()
+    {
+        return 'serialnumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function serverName()
+    {
+        return 'servername';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function showInAddressBook()
+    {
+        return 'showinaddressbook';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function street()
+    {
+        return 'street';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function streetAddress()
+    {
+        return 'streetaddress';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function systemFlags()
+    {
+        return 'systemflags';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function telephone()
+    {
+        return 'telephonenumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function mobile()
+    {
+        return 'mobile';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function otherMobile()
+    {
+        return 'othermobile';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function facsimile()
+    {
+        return 'facsimiletelephonenumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function thumbnail()
+    {
+        return 'thumbnailphoto';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function title()
+    {
+        return 'title';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function top()
+    {
+        return 'top';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function true()
+    {
+        return 'TRUE';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function unicodePassword()
+    {
+        return 'unicodepwd';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function updatedAt()
+    {
+        return 'whenchanged';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function url()
+    {
+        return 'url';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function user()
+    {
+        return 'user';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userAccountControl()
+    {
+        return 'useraccountcontrol';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userId()
+    {
+        return 'uid';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userModel()
+    {
+        return User::class;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userObjectClasses(): array
+    {
+        return [
+            $this->top(),
+            $this->person(),
+            $this->organizationalPerson(),
+            $this->objectClassUser(),
+        ];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userPrincipalName()
+    {
+        return 'userprincipalname';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function userWorkstations()
+    {
+        return 'userworkstations';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function versionNumber()
+    {
+        return 'versionnumber';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function foreignSecurityPrincipalModel()
+    {
+        return ForeignSecurityPrincipal::class;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/SchemaInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/SchemaInterface.php
new file mode 100644
index 0000000..023df74
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Schemas/SchemaInterface.php
@@ -0,0 +1,1421 @@
+<?php
+
+namespace Adldap\Schemas;
+
+interface SchemaInterface
+{
+    /**
+     * The date when the account expires. This value represents the number of 100-nanosecond
+     * intervals since January 1, 1601 (UTC). A value of 0 or 0x7FFFFFFFFFFFFFFF
+     * (9223372036854775807) indicates that the account never expires.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675098(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function accountExpires();
+
+    /**
+     * The logon name used to support clients and servers running earlier versions of the
+     * operating system, such as Windows NT 4.0, Windows 95, Windows 98,
+     * and LAN Manager. This attribute must be 20 characters or
+     * less to support earlier clients.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679635(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function accountName();
+
+    /**
+     * This attribute contains information about every account type object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679637(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function accountType();
+
+    /**
+     * The name to be displayed on admin screens.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675214(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function adminDisplayName();
+
+    /**
+     * Ambiguous name resolution attribute to be used when choosing between objects.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675223(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function anr();
+
+    /**
+     * The number of times the user tried to log on to the account using
+     * an incorrect password. A value of 0 indicates that the
+     * value is unknown.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675244(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function badPasswordCount();
+
+    /**
+     * The last time and date that an attempt to log on to this
+     * account was made with a password that is not valid.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675243(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function badPasswordTime();
+
+    /**
+     * The name that represents an object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675449(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function commonName();
+
+    /**
+     * The user's company name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675457(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function company();
+
+    /**
+     * The object class computer string.
+     *
+     * Used when constructing new Computer models.
+     *
+     * @return string
+     */
+    public function computer();
+
+    /**
+     * The class name of the Computer model.
+     *
+     * @return string
+     */
+    public function computerModel();
+
+    /**
+     * DN enterprise configuration naming context.
+     *
+     * @link https://support.microsoft.com/en-us/kb/219005
+     *
+     * @return string
+     */
+    public function configurationNamingContext();
+
+    /**
+     * The object class contact string.
+     *
+     * Used when constructing new User models.
+     *
+     * @return string
+     */
+    public function contact();
+
+    /**
+     * The class name of the Contact model.
+     *
+     * @return string
+     */
+    public function contactModel();
+
+    /**
+     * The class name of the Container model.
+     *
+     * @return string
+     */
+    public function containerModel();
+
+    /**
+     * The entry's country attribute.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675432(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function country();
+
+    /**
+     * The entry's created at attribute.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680924(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function createdAt();
+
+    /**
+     * The entry's current time attribute.
+     *
+     * This attribute is only available with the Root DSE record.
+     *
+     * @return string
+     */
+    public function currentTime();
+
+    /**
+     * This is the default NC for a particular server.
+     *
+     * By default, the DN for the domain of which this directory server is a member.
+     *
+     * @link https://support.microsoft.com/en-us/kb/219005
+     *
+     * @return string
+     */
+    public function defaultNamingContext();
+
+    /**
+     * Contains the name for the department in which the user works.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675490(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function department();
+
+    /**
+     * Identifies a department within an organization.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675491(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function departmentNumber();
+
+    /**
+     * Contains the description to display for an object. This value is restricted
+     * as single-valued for backward compatibility in some cases but
+     * is allowed to be multi-valued in others.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675492(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function description();
+
+    /**
+     * The display name for an object. This is usually the combination
+     * of the users first name, middle initial, and last name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675514(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function displayName();
+
+    /**
+     * The LDAP API references an LDAP object by its distinguished name (DN).
+     *
+     * A DN is a sequence of relative distinguished names (RDN) connected by commas.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/aa366101(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function distinguishedName();
+
+    /**
+     * The LDAP API references an LDAP object by its distinguished name (DN).
+     *
+     * Different vendors expect the value of the distinguished name to be in
+     * different places. For example ActiveDirectory expects distinguishedname
+     * value to be the first element in an array, however OpenLDAP expects
+     * the dn attribute to contain the value, not an array.
+     *
+     * @deprecated since 10.0.0
+     *
+     * @return int|null
+     */
+    public function distinguishedNameSubKey();
+
+    /**
+     * Name of computer as registered in DNS.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675524(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function dnsHostName();
+
+    /**
+     * Domain Component located inside an RDN.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/aa366101(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function domainComponent();
+
+    /**
+     * The device driver name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675652(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function driverName();
+
+    /**
+     * The Version number of device driver.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675653(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function driverVersion();
+
+    /**
+     * The list of email addresses for a contact.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676855(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function email();
+
+    /**
+     * The email nickname for the user.
+     *
+     * @return string
+     */
+    public function emailNickname();
+
+    /**
+     * The ID of an employee.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675662(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function employeeId();
+
+    /**
+     * The number assigned to an employee other than the ID.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675663(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function employeeNumber();
+
+    /**
+     * The job category for an employee.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675664(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function employeeType();
+
+    /**
+     * The class name of the Entry model.
+     *
+     * @return string
+     */
+    public function entryModel();
+
+    /**
+     * The LDAP `false` boolean in string form for conversion.
+     *
+     * @return string
+     */
+    public function false();
+
+    /**
+     * The LDAP filter to query for enabled users.
+     *
+     * @return mixed
+     */
+    public function filterEnabled();
+
+    /**
+     * The LDAP filter to query for disabled users.
+     *
+     * @return mixed
+     */
+    public function filterDisabled();
+
+    /**
+     * Contains the given name (first name) of the user.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675719(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function firstName();
+
+    /**
+     * The class name of the Group model.
+     *
+     * @return string
+     */
+    public function groupModel();
+
+    /**
+     * Contains a set of flags that define the type and scope of a group object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms675935(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function groupType();
+
+    /**
+     * A user's home address.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676193(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function homeAddress();
+
+    /**
+     * The users mailbox database location.
+     *
+     * @return string
+     */
+    public function homeMdb();
+
+    /**
+     * Specifies the drive letter to which to map the UNC path specified by homeDirectory.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676191(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function homeDrive();
+
+    /**
+     * The home directory for the account.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676190(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function homeDirectory();
+
+    /**
+     * The user's main home phone number.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/desktop/ADSchema/a-homephone
+     *
+     * @return string|null
+     */
+    public function homePhone();
+
+    /**
+     * The users extra notable information.
+     *
+     * @return string
+     */
+    public function info();
+
+    /**
+     * Contains the initials for parts of the user's full name.
+     *
+     * This may be used as the middle initial in the Windows Address Book.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676202(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function initials();
+
+    /**
+     * A bitfield that dictates how the object is instantiated on a particular server.
+     *
+     * The value of this attribute can differ on different replicas even if the replicas are in sync.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676204(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function instanceType();
+
+    /**
+     * Specifies the TCP/IP address for the phone. Used by telephony.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/cc221092.aspx
+     *
+     * @return string
+     */
+    public function ipPhone();
+
+    /**
+     * If TRUE, the object hosting this attribute must be replicated during installation of a new replica.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676798(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function isCriticalSystemObject();
+
+    /**
+     * Used to store one or more images of a person using the JPEG File Interchange Format [JFIF].
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676813(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function jpegPhoto();
+
+    /**
+     * This attribute is not used.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676822(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function lastLogOff();
+
+    /**
+     * The last time the user logged on. This value is stored as a large integer that
+     * represents the number of 100-nanosecond intervals since January 1, 1601 (UTC).
+     *
+     * A value of zero means that the last logon time is unknown.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676823(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function lastLogOn();
+
+    /**
+     * This is the time that the user last logged into the domain.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676824(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function lastLogOnTimestamp();
+
+    /**
+     * This attribute contains the family or last name for a user.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679872(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function lastName();
+
+    /**
+     * The distinguished name previously used by Exchange.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676830(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function legacyExchangeDn();
+
+    /**
+     * The users locale.
+     *
+     * @return string
+     */
+    public function locale();
+
+    /**
+     * The user's location, such as office number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676839(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function location();
+
+    /**
+     * The date and time (UTC) that this account was locked out. This value is stored
+     * as a large integer that represents the number of 100-nanosecond intervals
+     * since January 1, 1601 (UTC). A value of zero means that the
+     * account is not currently locked out.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676843(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function lockoutTime();
+
+    /**
+     * Contains the distinguished name of the user who is the user's manager.
+     *
+     * The manager's user object contains a directReports property that
+     * contains references to all user objects that have their manager
+     * properties set to this distinguished name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676859(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function manager();
+
+    /**
+     * The distinguished name of the user that is assigned to manage this object.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/desktop/adschema/a-managedby
+     *
+     * @return string
+     */
+    public function managedBy();
+
+    /**
+     * The maximum amount of time, in 100-nanosecond intervals, a password is valid.
+     *
+     * This value is stored as a large integer that represents the number of
+     * 100-nanosecond intervals from the time the password was set
+     * before the password expires.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms676863(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function maxPasswordAge();
+
+    /**
+     * The list of users that belong to the group.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677097(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function member();
+
+    /**
+     * The identifier of records that belong to a group.
+     *
+     * For example, in ActiveDirectory, the 'member' attribute on
+     * a group record contains a list of distinguished names,
+     * so `distinguishedname` would be the identifier.
+     *
+     * In other environments such as Sun Directory
+     * Server, this identifier would be `uid`.
+     *
+     * @return string
+     */
+    public function memberIdentifier();
+
+    /**
+     * The distinguished names of the groups to which this object belongs.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677099(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function memberOf();
+
+    /**
+     * The distinguished names of the groups to which this object belongs.
+     *
+     * This string contains a rule OID indicating the inclusion of ancestral and child members.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677099(v=vs.85).aspx
+     * @link https://msdn.microsoft.com/en-us/library/aa746475(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function memberOfRecursive();
+
+    /**
+     * The range limited list of users that belong to the group. See range limit in Active Directory
+     * (Range Retrieval of Attribute Values https://msdn.microsoft.com/en-us/library/cc223242.aspx)
+     * Issue #342.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms677097(v=vs.85).aspx
+     *
+     * @param string|int $from
+     * @param string|int $to
+     *
+     * @return string
+     */
+    public function memberRange($from, $to);
+
+    /**
+     * @link https://msdn.microsoft.com/en-us/library/ms981934(v=exchg.65).aspx
+     *
+     * @return string
+     */
+    public function messageTrackingEnabled();
+
+    /**
+     * The object category of an exchange server.
+     *
+     * @return string
+     */
+    public function msExchangeServer();
+
+    /**
+     * The general name of the entry.
+     *
+     * @return string
+     */
+    public function name();
+
+    /**
+     * Returns a string value indicating that an account does not expire.
+     *
+     * @return string
+     */
+    public function neverExpiresDate();
+
+    /**
+     * An object class name used to group objects of this or derived classes.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679011(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function objectCategory();
+
+    /**
+     * The computer object category.
+     *
+     * @return string
+     */
+    public function objectCategoryComputer();
+
+    /**
+     * The container object category.
+     *
+     * @return string
+     */
+    public function objectCategoryContainer();
+
+    /**
+     * The exchange private MDB category.
+     *
+     * @return string
+     */
+    public function objectCategoryExchangePrivateMdb();
+
+    /**
+     * The exchange server object category.
+     *
+     * @return string
+     */
+    public function objectCategoryExchangeServer();
+
+    /**
+     * The exchange storage group object category.
+     *
+     * @return string
+     */
+    public function objectCategoryExchangeStorageGroup();
+
+    /**
+     * The group object category.
+     *
+     * @return string
+     */
+    public function objectCategoryGroup();
+
+    /**
+     * The organizational unit category.
+     *
+     * @return string
+     */
+    public function objectCategoryOrganizationalUnit();
+
+    /**
+     * The person object category.
+     *
+     * @return string
+     */
+    public function objectCategoryPerson();
+
+    /**
+     * The printer object category.
+     *
+     * @return string
+     */
+    public function objectCategoryPrinter();
+
+    /**
+     * The list of classes from which this class is derived.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679012(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function objectClass();
+
+    /**
+     * The computer object class.
+     *
+     * @return string
+     */
+    public function objectClassComputer();
+
+    /**
+     * The contact object class.
+     *
+     * @return string
+     */
+    public function objectClassContact();
+
+    /**
+     * The container object class.
+     *
+     * @return string
+     */
+    public function objectClassContainer();
+
+    /**
+     * The group object class.
+     *
+     * @return string
+     */
+    public function objectClassGroup();
+
+    /**
+     * The ou object class.
+     *
+     * @return string
+     */
+    public function objectClassOu();
+
+    /**
+     * The person object class.
+     *
+     * Represents people who are associated with an organization in some way.
+     *
+     * @return string
+     */
+    public function objectClassPerson();
+
+    /**
+     * The printer object class.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683911(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function objectClassPrinter();
+
+    /**
+     * The user object class.
+     *
+     * @return string
+     */
+    public function objectClassUser();
+
+    /**
+     * The object class model map.
+     *
+     * @return array
+     */
+    public function objectClassModelMap();
+
+    /**
+     * The unique identifier for an object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679021(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function objectGuid();
+
+    /**
+     * Determine whether the object GUID requires conversion from binary.
+     *
+     * @return bool
+     */
+    public function objectGuidRequiresConversion();
+
+    /**
+     * A binary value that specifies the security identifier (SID) of the user.
+     *
+     * The SID is a unique value used to identify the user as a security principal.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679024(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function objectSid();
+
+    /**
+     * Determine whether the object SID requires conversion from binary.
+     *
+     * @return bool
+     */
+    public function objectSidRequiresConversion();
+
+    /**
+     * The Operating System name, for example, Windows Vista Enterprise.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679076(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function operatingSystem();
+
+    /**
+     * The operating system service pack ID string (for example, SP3).
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679078(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function operatingSystemServicePack();
+
+    /**
+     * The operating system version string, for example, 4.0.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679079(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function operatingSystemVersion();
+
+    /**
+     * The RDN version of organization name for use in distinguished names.
+     *
+     * @return mixed
+     */
+    public function organizationName();
+
+    /**
+     * This class is used for objects that contain organizational information about a user,
+     * such as the employee number, department, manager, title, office address, and so on.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683883(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function organizationalPerson();
+
+    /**
+     * A container for storing users, computers, and other account objects.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683886(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function organizationalUnit();
+
+    /**
+     * The class name of the Organizational Unit model.
+     *
+     * @return string
+     */
+    public function organizationalUnitModel();
+
+    /**
+     * The RDN version of organizational unit for use in distinguished names.
+     *
+     * @return string
+     */
+    public function organizationalUnitShort();
+
+    /**
+     * Contains other additional mail addresses in a form such as CCMAIL: JohnDoe.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679091(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function otherMailbox();
+
+    /**
+     * The date and time that the password for this account was last changed.
+     *
+     * This value is stored as a large integer that represents the number of 100 nanosecond intervals
+     * since January 1, 1601 (UTC). If this value is set to 0 and the User-Account-Control attribute
+     * does not contain the UF_DONT_EXPIRE_PASSWD flag, then the user must set the password at
+     * the next logon.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679430(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function passwordLastSet();
+
+    /**
+     * The person object class.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683895(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function person();
+
+    /**
+     * The user's title.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679115(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function personalTitle();
+
+    /**
+     * Contains the office location in the user's place of business.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679117(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function physicalDeliveryOfficeName();
+
+    /**
+     * List of port names. For example, for printer ports or comm ports.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679131(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function portName();
+
+    /**
+     * The postal or zip code for mail delivery.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679366(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function postalCode();
+
+    /**
+     * The post office box number for this object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679367(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function postOfficeBox();
+
+    /**
+     * Contains the relative identifier (RID) for the primary group of the user.
+     *
+     * By default, this is the RID for the Domain Users group.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679375(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function primaryGroupId();
+
+    /**
+     * A list of printer bin names.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679380(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerBinNames();
+
+    /**
+     * If a printer can print in color.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679382(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerColorSupported();
+
+    /**
+     * Indicates the type of duplex support a printer has.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679383(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerDuplexSupported();
+
+    /**
+     * The time a print queue stops servicing jobs.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679384(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerEndTime();
+
+    /**
+     * The maximum printer resolution.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679391(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerMaxResolutionSupported();
+
+    /**
+     * A list of media supported by a printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679395(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerMediaSupported();
+
+    /**
+     * The amount of memory installed in a printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679396(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerMemory();
+
+    /**
+     * The class name of the Printer model.
+     *
+     * @return string
+     */
+    public function printerModel();
+
+    /**
+     * The display name of an attached printer.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679385(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerName();
+
+    /**
+     * The page rotation for landscape printing.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679402(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerOrientationSupported();
+
+    /**
+     * Driver-supplied print rate.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679405(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerPrintRate();
+
+    /**
+     * Driver-supplied print rate unit.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679406(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerPrintRateUnit();
+
+    /**
+     * The printer's share name.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679408(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerShareName();
+
+    /**
+     * If the printer supports stapling. Supplied by the driver.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679410(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerStaplingSupported();
+
+    /**
+     * The time a print queue begins servicing jobs.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679411(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function printerStartTime();
+
+    /**
+     * The current priority (of a process, print job, and so on).
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679413(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function priority();
+
+    /**
+     * Specifies a path to the user's profile. This value can be a null
+     * string, a local absolute path, or a UNC path.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679422(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function profilePath();
+
+    /**
+     * A proxy address is the address by which a Microsoft Exchange Server recipient
+     * object is recognized in a foreign mail system. Proxy addresses are required
+     * for all recipient objects, such as custom recipients and distribution lists.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679424(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function proxyAddresses();
+
+    /**
+     * The room number of an object.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679615(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function roomNumber();
+
+    /**
+     * The DN of the root domain NC for this DC's forest.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/cc223262.aspx
+     *
+     * @return mixed
+     */
+    public function rootDomainNamingContext();
+
+    /**
+     * The attribute.
+     *
+     * @return mixed
+     */
+    public function schemaNamingContext();
+
+    /**
+     * This attribute specifies the path for the user's logon script. The string can be null.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679656(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function scriptPath();
+
+    /**
+     * Part of X.500 specification. Not used by Active Directory.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679771(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function serialNumber();
+
+    /**
+     * The name of a server.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679772(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function serverName();
+
+    /**
+     * This attribute is used to indicate in which MAPI address books an object will appear.
+     *
+     * It is usually maintained by the Exchange Recipient Update Service.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679822(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function showInAddressBook();
+
+    /**
+     * The street address.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679882(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function street();
+
+    /**
+     * The street address.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms679882(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function streetAddress();
+
+    /**
+     * An integer value that contains flags that define additional properties of the class.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680022(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function systemFlags();
+
+    /**
+     * The primary telephone number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680027(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function telephone();
+
+    /**
+     * The primary mobile phone number.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/desktop/adschema/a-mobile
+     *
+     * @return string
+     */
+    public function mobile();
+
+    /**
+     * The secondary mobile phone number.
+     *
+     * @link https://docs.microsoft.com/en-us/windows/desktop/ADSchema/a-othermobile
+     *
+     * @return string
+     */
+    public function otherMobile();
+
+    /**
+     * The users thumbnail photo path.
+     *
+     * @return string
+     */
+    public function thumbnail();
+
+    /**
+     * Contains the user's job title.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680037(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function title();
+
+    /**
+     * The top level class from which all classes are derived.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683975(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function top();
+
+    /**
+     * The LDAP `true` boolean in string form for conversion.
+     *
+     * @return string
+     */
+    public function true();
+
+    /**
+     * The password of the user in Windows NT one-way format (OWF). Windows 2000 uses the Windows NT OWF.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680513(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function unicodePassword();
+
+    /**
+     * The date when this object was last changed.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680921(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function updatedAt();
+
+    /**
+     * The entry's URL attribute.
+     *
+     * @return string
+     */
+    public function url();
+
+    /**
+     * The user object class.
+     *
+     * This class is used to store information about an employee or contractor who works for an organization.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms683980(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function user();
+
+    /**
+     * Flags that control the behavior of the user account.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680832(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function userAccountControl();
+
+    /**
+     * The user ID attribute.
+     *
+     * @return string
+     */
+    public function userId();
+
+    /**
+     * The class name of the User model.
+     *
+     * @return string
+     */
+    public function userModel();
+
+    /**
+     * The object classes that User models must be constructed with.
+     *
+     * @return array
+     */
+    public function userObjectClasses(): array;
+
+    /**
+     * This attribute contains the UPN that is an Internet-style login name for
+     * a user based on the Internet standard RFC 822.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680857(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function userPrincipalName();
+
+    /**
+     * Contains the NetBIOS or DNS names of the computers running Windows NT Workstation
+     * or Windows 2000 Professional from which the user can log on.
+     *
+     * Each NetBIOS name is separated by a comma.
+     *
+     * Multiple names should be separated by commas.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680868(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function userWorkstations();
+
+    /**
+     * A general purpose version number.
+     *
+     * @link https://msdn.microsoft.com/en-us/library/ms680897(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function versionNumber();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Utilities.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Utilities.php
new file mode 100644
index 0000000..1c70e8c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/adldap2/adldap2/src/Utilities.php
@@ -0,0 +1,232 @@
+<?php
+
+namespace Adldap;
+
+class Utilities
+{
+    /**
+     * Converts a DN string into an array of RDNs.
+     *
+     * This will also decode hex characters into their true
+     * UTF-8 representation embedded inside the DN as well.
+     *
+     * @param string $dn
+     * @param bool   $removeAttributePrefixes
+     *
+     * @return array|false
+     */
+    public static function explodeDn($dn, $removeAttributePrefixes = true)
+    {
+        $dn = ldap_explode_dn($dn, ($removeAttributePrefixes ? 1 : 0));
+
+        if (is_array($dn) && array_key_exists('count', $dn)) {
+            foreach ($dn as $rdn => $value) {
+                $dn[$rdn] = self::unescape($value);
+            }
+        }
+
+        return $dn;
+    }
+
+    /**
+     * Un-escapes a hexadecimal string into
+     * its original string representation.
+     *
+     * @param string $value
+     *
+     * @return string
+     */
+    public static function unescape($value)
+    {
+        return preg_replace_callback('/\\\([0-9A-Fa-f]{2})/', function ($matches) {
+            return chr(hexdec($matches[1]));
+        }, $value);
+    }
+
+    /**
+     * Convert a binary SID to a string SID.
+     *
+     * @author Chad Sikorra
+     *
+     * @link https://github.com/ChadSikorra
+     * @link https://stackoverflow.com/questions/39533560/php-ldap-get-user-sid
+     *
+     * @param string $value The Binary SID
+     *
+     * @return string|null
+     */
+    public static function binarySidToString($value)
+    {
+        // Revision - 8bit unsigned int (C1)
+        // Count - 8bit unsigned int (C1)
+        // 2 null bytes
+        // ID - 32bit unsigned long, big-endian order
+        $sid = @unpack('C1rev/C1count/x2/N1id', $value);
+
+        if (!isset($sid['id']) || !isset($sid['rev'])) {
+            return;
+        }
+
+        $revisionLevel = $sid['rev'];
+
+        $identifierAuthority = $sid['id'];
+
+        $subs = isset($sid['count']) ? $sid['count'] : 0;
+
+        $sidHex = $subs ? bin2hex($value) : '';
+
+        $subAuthorities = [];
+
+        // The sub-authorities depend on the count, so only get as
+        // many as the count, regardless of data beyond it.
+        for ($i = 0; $i < $subs; $i++) {
+            $data = implode('', array_reverse(
+                str_split(
+                    substr($sidHex, 16 + ($i * 8), 8),
+                    2
+                )
+            ));
+
+            $subAuthorities[] = hexdec($data);
+        }
+
+        // Tack on the 'S-' and glue it all together...
+        return 'S-'.$revisionLevel.'-'.$identifierAuthority.implode(
+            preg_filter('/^/', '-', $subAuthorities)
+        );
+    }
+
+    /**
+     * Convert a binary GUID to a string GUID.
+     *
+     * @param string $binGuid
+     *
+     * @return string|null
+     */
+    public static function binaryGuidToString($binGuid)
+    {
+        if (trim($binGuid) == '' || is_null($binGuid)) {
+            return;
+        }
+
+        $hex = unpack('H*hex', $binGuid)['hex'];
+
+        $hex1 = substr($hex, -26, 2).substr($hex, -28, 2).substr($hex, -30, 2).substr($hex, -32, 2);
+        $hex2 = substr($hex, -22, 2).substr($hex, -24, 2);
+        $hex3 = substr($hex, -18, 2).substr($hex, -20, 2);
+        $hex4 = substr($hex, -16, 4);
+        $hex5 = substr($hex, -12, 12);
+
+        $guid = sprintf('%s-%s-%s-%s-%s', $hex1, $hex2, $hex3, $hex4, $hex5);
+
+        return $guid;
+    }
+
+    /**
+     * Converts a string GUID to it's hex variant.
+     *
+     * @param string $string
+     *
+     * @return string
+     */
+    public static function stringGuidToHex($string)
+    {
+        $hex = '\\'.substr($string, 6, 2).'\\'.substr($string, 4, 2).'\\'.substr($string, 2, 2).'\\'.substr($string, 0, 2);
+        $hex = $hex.'\\'.substr($string, 11, 2).'\\'.substr($string, 9, 2);
+        $hex = $hex.'\\'.substr($string, 16, 2).'\\'.substr($string, 14, 2);
+        $hex = $hex.'\\'.substr($string, 19, 2).'\\'.substr($string, 21, 2);
+        $hex = $hex.'\\'.substr($string, 24, 2).'\\'.substr($string, 26, 2).'\\'.substr($string, 28, 2).'\\'.substr($string, 30, 2).'\\'.substr($string, 32, 2).'\\'.substr($string, 34, 2);
+
+        return $hex;
+    }
+
+    /**
+     * Encode a password for transmission over LDAP.
+     *
+     * @param string $password The password to encode
+     *
+     * @return string
+     */
+    public static function encodePassword($password)
+    {
+        return iconv('UTF-8', 'UTF-16LE', '"'.$password.'"');
+    }
+
+    /**
+     * Salt and hash a password to make its SSHA OpenLDAP version.
+     *
+     * @param string $password The password to create
+     *
+     * @return string
+     */
+    public static function makeSSHAPassword($password)
+    {
+        mt_srand((float) microtime() * 1000000);
+        $salt = pack('CCCC', mt_rand(), mt_rand(), mt_rand(), mt_rand());
+
+        return '{SSHA}'.base64_encode(pack('H*', sha1($password.$salt)).$salt);
+    }
+
+    /**
+     * Round a Windows timestamp down to seconds and remove
+     * the seconds between 1601-01-01 and 1970-01-01.
+     *
+     * @param float $windowsTime
+     *
+     * @return float
+     */
+    public static function convertWindowsTimeToUnixTime($windowsTime)
+    {
+        return round($windowsTime / 10000000) - 11644473600;
+    }
+
+    /**
+     * Convert a Unix timestamp to Windows timestamp.
+     *
+     * @param float $unixTime
+     *
+     * @return float
+     */
+    public static function convertUnixTimeToWindowsTime($unixTime)
+    {
+        return ($unixTime + 11644473600) * 10000000;
+    }
+
+    /**
+     * Validates that the inserted string is an object SID.
+     *
+     * @param string $sid
+     *
+     * @return bool
+     */
+    public static function isValidSid($sid)
+    {
+        return (bool) preg_match("/^S-\d(-\d{1,10}){1,16}$/i", $sid);
+    }
+
+    /**
+     * Validates that the inserted string is an object GUID.
+     *
+     * @param string $guid
+     *
+     * @return bool
+     */
+    public static function isValidGuid($guid)
+    {
+        return (bool) preg_match('/^([0-9a-fA-F]){8}(-([0-9a-fA-F]){4}){3}-([0-9a-fA-F]){12}$|^([0-9a-fA-F]{8}-){3}[0-9a-fA-F]{8}$/', $guid);
+    }
+
+    /**
+     * Converts an ignore string into an array.
+     *
+     * @param string $ignore
+     *
+     * @return array
+     */
+    protected static function ignoreStrToArray($ignore)
+    {
+        $ignore = trim($ignore);
+
+        return $ignore ? str_split($ignore) : [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/carbon b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/carbon
new file mode 120000
index 0000000..0da4804
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/carbon
@@ -0,0 +1 @@
+../nesbot/carbon/bin/carbon
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/var-dump-server b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/var-dump-server
new file mode 120000
index 0000000..6bd4e93
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/bin/var-dump-server
@@ -0,0 +1 @@
+../symfony/var-dumper/Resources/bin/var-dump-server
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/ClassLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/ClassLoader.php
index 1a58957..6d0c3f2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/ClassLoader.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/ClassLoader.php
@@ -42,6 +42,8 @@
  */
 class ClassLoader
 {
+    private $vendorDir;
+
     // PSR-4
     private $prefixLengthsPsr4 = array();
     private $prefixDirsPsr4 = array();
@@ -57,6 +59,13 @@
     private $missingClasses = array();
     private $apcuPrefix;
 
+    private static $registeredLoaders = array();
+
+    public function __construct($vendorDir = null)
+    {
+        $this->vendorDir = $vendorDir;
+    }
+
     public function getPrefixes()
     {
         if (!empty($this->prefixesPsr0)) {
@@ -300,6 +309,17 @@
     public function register($prepend = false)
     {
         spl_autoload_register(array($this, 'loadClass'), true, $prepend);
+
+        if (null === $this->vendorDir) {
+            return;
+        }
+
+        if ($prepend) {
+            self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
+        } else {
+            unset(self::$registeredLoaders[$this->vendorDir]);
+            self::$registeredLoaders[$this->vendorDir] = $this;
+        }
     }
 
     /**
@@ -308,13 +328,17 @@
     public function unregister()
     {
         spl_autoload_unregister(array($this, 'loadClass'));
+
+        if (null !== $this->vendorDir) {
+            unset(self::$registeredLoaders[$this->vendorDir]);
+        }
     }
 
     /**
      * Loads the given class or interface.
      *
      * @param  string    $class The name of the class
-     * @return bool|null True if loaded, null otherwise
+     * @return true|null True if loaded, null otherwise
      */
     public function loadClass($class)
     {
@@ -323,6 +347,8 @@
 
             return true;
         }
+
+        return null;
     }
 
     /**
@@ -367,6 +393,16 @@
         return $file;
     }
 
+    /**
+     * Returns the currently registered loaders indexed by their corresponding vendor directories.
+     *
+     * @return self[]
+     */
+    public static function getRegisteredLoaders()
+    {
+        return self::$registeredLoaders;
+    }
+
     private function findFileWithExtension($class, $ext)
     {
         // PSR-4 lookup
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/InstalledVersions.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/InstalledVersions.php
index 2d16727..b3a4e16 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/InstalledVersions.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/InstalledVersions.php
@@ -1,332 +1,337 @@
 <?php
 
-
-
-
-
-
-
-
-
-
+/*
+ * This file is part of Composer.
+ *
+ * (c) Nils Adermann <naderman@naderman.de>
+ *     Jordi Boggiano <j.boggiano@seld.be>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
 
 namespace Composer;
 
+use Composer\Autoload\ClassLoader;
 use Composer\Semver\VersionParser;
 
-
-
-
-
-
+/**
+ * This class is copied in every Composer installed project and available to all
+ *
+ * See also https://getcomposer.org/doc/07-runtime.md#installed-versions
+ *
+ * To require it's presence, you can require `composer-runtime-api ^2.0`
+ */
 class InstalledVersions
 {
-private static $installed = array (
-  'root' => 
-  array (
-    'pretty_version' => '1.0.0+no-version-set',
-    'version' => '1.0.0.0',
-    'aliases' => 
-    array (
-    ),
-    'reference' => NULL,
-    'name' => '__root__',
-  ),
-  'versions' => 
-  array (
-    '__root__' => 
-    array (
-      'pretty_version' => '1.0.0+no-version-set',
-      'version' => '1.0.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => NULL,
-    ),
-    'bshaffer/oauth2-server-php' => 
-    array (
-      'pretty_version' => 'v1.11.1',
-      'version' => '1.11.1.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '5a0c8000d4763b276919e2106f54eddda6bc50fa',
-    ),
-    'ddeboer/imap' => 
-    array (
-      'pretty_version' => '1.11.0',
-      'version' => '1.11.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'a089dfcb9d177f921eb5dadc8d4144a44dff22ee',
-    ),
-    'exorus/php-mime-mail-parser' => 
-    array (
-      'replaced' => 
-      array (
-        0 => '*',
-      ),
-    ),
-    'matthiasmullie/minify' => 
-    array (
-      'pretty_version' => '1.3.65',
-      'version' => '1.3.65.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '227f19062451c55a797e0cc667ef983834e6580c',
-    ),
-    'matthiasmullie/path-converter' => 
-    array (
-      'pretty_version' => '1.1.3',
-      'version' => '1.1.3.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'e7d13b2c7e2f2268e1424aaed02085518afa02d9',
-    ),
-    'messaged/php-mime-mail-parser' => 
-    array (
-      'replaced' => 
-      array (
-        0 => '*',
-      ),
-    ),
-    'mustangostang/spyc' => 
-    array (
-      'pretty_version' => '0.6.3',
-      'version' => '0.6.3.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '4627c838b16550b666d15aeae1e5289dd5b77da0',
-    ),
-    'paragonie/random_compat' => 
-    array (
-      'pretty_version' => 'v9.99.100',
-      'version' => '9.99.100.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a',
-    ),
-    'php-mime-mail-parser/php-mime-mail-parser' => 
-    array (
-      'pretty_version' => '5.0.5',
-      'version' => '5.0.5.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '27983433aabeccee832573c3c56e6a4855e57745',
-    ),
-    'phpmailer/phpmailer' => 
-    array (
-      'pretty_version' => 'v6.2.0',
-      'version' => '6.2.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'e38888a75c070304ca5514197d4847a59a5c853f',
-    ),
-    'robthree/twofactorauth' => 
-    array (
-      'pretty_version' => '1.7.0',
-      'version' => '1.7.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '37983bf675c5baca09d19d6705170489d0df0002',
-    ),
-    'soundasleep/html2text' => 
-    array (
-      'pretty_version' => '0.5.0',
-      'version' => '0.5.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'cdb89f6ffa2c4cc78f8ed9ea6ee0594a9133ccad',
-    ),
-    'yubico/u2flib-server' => 
-    array (
-      'pretty_version' => '1.0.2',
-      'version' => '1.0.2.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '55d813acf68212ad2cadecde07551600d6971939',
-    ),
-  ),
-);
+    private static $installed;
+    private static $canGetVendors;
+    private static $installedByVendor = array();
 
+    /**
+     * Returns a list of all package names which are present, either by being installed, replaced or provided
+     *
+     * @return string[]
+     * @psalm-return list<string>
+     */
+    public static function getInstalledPackages()
+    {
+        $packages = array();
+        foreach (self::getInstalled() as $installed) {
+            $packages[] = array_keys($installed['versions']);
+        }
 
+        if (1 === \count($packages)) {
+            return $packages[0];
+        }
 
+        return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
+    }
 
+    /**
+     * Returns a list of all package names with a specific type e.g. 'library'
+     *
+     * @param  string   $type
+     * @return string[]
+     * @psalm-return list<string>
+     */
+    public static function getInstalledPackagesByType($type)
+    {
+        $packagesByType = array();
 
+        foreach (self::getInstalled() as $installed) {
+            foreach ($installed['versions'] as $name => $package) {
+                if (isset($package['type']) && $package['type'] === $type) {
+                    $packagesByType[] = $name;
+                }
+            }
+        }
 
+        return $packagesByType;
+    }
 
-public static function getInstalledPackages()
-{
-return array_keys(self::$installed['versions']);
-}
+    /**
+     * Checks whether the given package is installed
+     *
+     * This also returns true if the package name is provided or replaced by another package
+     *
+     * @param  string $packageName
+     * @param  bool   $includeDevRequirements
+     * @return bool
+     */
+    public static function isInstalled($packageName, $includeDevRequirements = true)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (isset($installed['versions'][$packageName])) {
+                return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
+            }
+        }
 
+        return false;
+    }
 
+    /**
+     * Checks whether the given package satisfies a version constraint
+     *
+     * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
+     *
+     *   Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
+     *
+     * @param  VersionParser $parser      Install composer/semver to have access to this class and functionality
+     * @param  string        $packageName
+     * @param  string|null   $constraint  A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
+     * @return bool
+     */
+    public static function satisfies(VersionParser $parser, $packageName, $constraint)
+    {
+        $constraint = $parser->parseConstraints($constraint);
+        $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
 
+        return $provided->matches($constraint);
+    }
 
+    /**
+     * Returns a version constraint representing all the range(s) which are installed for a given package
+     *
+     * It is easier to use this via isInstalled() with the $constraint argument if you need to check
+     * whether a given version of a package is installed, and not just whether it exists
+     *
+     * @param  string $packageName
+     * @return string Version constraint usable with composer/semver
+     */
+    public static function getVersionRanges($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
 
+            $ranges = array();
+            if (isset($installed['versions'][$packageName]['pretty_version'])) {
+                $ranges[] = $installed['versions'][$packageName]['pretty_version'];
+            }
+            if (array_key_exists('aliases', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
+            }
+            if (array_key_exists('replaced', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
+            }
+            if (array_key_exists('provided', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
+            }
 
+            return implode(' || ', $ranges);
+        }
 
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
 
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
+     */
+    public static function getVersion($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
 
-public static function isInstalled($packageName)
-{
-return isset(self::$installed['versions'][$packageName]);
-}
+            if (!isset($installed['versions'][$packageName]['version'])) {
+                return null;
+            }
 
+            return $installed['versions'][$packageName]['version'];
+        }
 
-
-
-
-
-
-
-
-
-
-
-
-
-public static function satisfies(VersionParser $parser, $packageName, $constraint)
-{
-$constraint = $parser->parseConstraints($constraint);
-$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
-
-return $provided->matches($constraint);
-}
-
-
-
-
-
-
-
-
-
-
-public static function getVersionRanges($packageName)
-{
-if (!isset(self::$installed['versions'][$packageName])) {
-throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
-}
-
-$ranges = array();
-if (isset(self::$installed['versions'][$packageName]['pretty_version'])) {
-$ranges[] = self::$installed['versions'][$packageName]['pretty_version'];
-}
-if (array_key_exists('aliases', self::$installed['versions'][$packageName])) {
-$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['aliases']);
-}
-if (array_key_exists('replaced', self::$installed['versions'][$packageName])) {
-$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['replaced']);
-}
-if (array_key_exists('provided', self::$installed['versions'][$packageName])) {
-$ranges = array_merge($ranges, self::$installed['versions'][$packageName]['provided']);
-}
-
-return implode(' || ', $ranges);
-}
-
-
-
-
-
-public static function getVersion($packageName)
-{
-if (!isset(self::$installed['versions'][$packageName])) {
-throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
-}
-
-if (!isset(self::$installed['versions'][$packageName]['version'])) {
-return null;
-}
-
-return self::$installed['versions'][$packageName]['version'];
-}
-
-
-
-
-
-public static function getPrettyVersion($packageName)
-{
-if (!isset(self::$installed['versions'][$packageName])) {
-throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
-}
-
-if (!isset(self::$installed['versions'][$packageName]['pretty_version'])) {
-return null;
-}
-
-return self::$installed['versions'][$packageName]['pretty_version'];
-}
-
-
-
-
-
-public static function getReference($packageName)
-{
-if (!isset(self::$installed['versions'][$packageName])) {
-throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
-}
-
-if (!isset(self::$installed['versions'][$packageName]['reference'])) {
-return null;
-}
-
-return self::$installed['versions'][$packageName]['reference'];
-}
-
-
-
-
-
-public static function getRootPackage()
-{
-return self::$installed['root'];
-}
-
-
-
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
 
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
+     */
+    public static function getPrettyVersion($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
 
+            if (!isset($installed['versions'][$packageName]['pretty_version'])) {
+                return null;
+            }
 
+            return $installed['versions'][$packageName]['pretty_version'];
+        }
 
-public static function getRawData()
-{
-return self::$installed;
-}
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
 
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
+     */
+    public static function getReference($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
 
+            if (!isset($installed['versions'][$packageName]['reference'])) {
+                return null;
+            }
 
+            return $installed['versions'][$packageName]['reference'];
+        }
 
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
 
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
+     */
+    public static function getInstallPath($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
 
+            return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
+        }
 
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
 
+    /**
+     * @return array
+     * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
+     */
+    public static function getRootPackage()
+    {
+        $installed = self::getInstalled();
 
+        return $installed[0]['root'];
+    }
 
+    /**
+     * Returns the raw installed.php data for custom implementations
+     *
+     * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
+     * @return array[]
+     * @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
+     */
+    public static function getRawData()
+    {
+        @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
 
+        if (null === self::$installed) {
+            // only require the installed.php file if this file is loaded from its dumped location,
+            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
+            if (substr(__DIR__, -8, 1) !== 'C') {
+                self::$installed = include __DIR__ . '/installed.php';
+            } else {
+                self::$installed = array();
+            }
+        }
 
+        return self::$installed;
+    }
 
+    /**
+     * Returns the raw data of all installed.php which are currently loaded for custom implementations
+     *
+     * @return array[]
+     * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
+     */
+    public static function getAllRawData()
+    {
+        return self::getInstalled();
+    }
 
+    /**
+     * Lets you reload the static array from another file
+     *
+     * This is only useful for complex integrations in which a project needs to use
+     * this class but then also needs to execute another project's autoloader in process,
+     * and wants to ensure both projects have access to their version of installed.php.
+     *
+     * A typical case would be PHPUnit, where it would need to make sure it reads all
+     * the data it needs from this class, then call reload() with
+     * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
+     * the project in which it runs can then also use this class safely, without
+     * interference between PHPUnit's dependencies and the project's dependencies.
+     *
+     * @param  array[] $data A vendor/composer/installed.php data set
+     * @return void
+     *
+     * @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
+     */
+    public static function reload($data)
+    {
+        self::$installed = $data;
+        self::$installedByVendor = array();
+    }
 
+    /**
+     * @return array[]
+     * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
+     */
+    private static function getInstalled()
+    {
+        if (null === self::$canGetVendors) {
+            self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
+        }
 
+        $installed = array();
 
+        if (self::$canGetVendors) {
+            foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
+                if (isset(self::$installedByVendor[$vendorDir])) {
+                    $installed[] = self::$installedByVendor[$vendorDir];
+                } elseif (is_file($vendorDir.'/composer/installed.php')) {
+                    $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
+                    if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
+                        self::$installed = $installed[count($installed) - 1];
+                    }
+                }
+            }
+        }
 
+        if (null === self::$installed) {
+            // only require the installed.php file if this file is loaded from its dumped location,
+            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
+            if (substr(__DIR__, -8, 1) !== 'C') {
+                self::$installed = require __DIR__ . '/installed.php';
+            } else {
+                self::$installed = array();
+            }
+        }
+        $installed[] = self::$installed;
 
-public static function reload($data)
-{
-self::$installed = $data;
-}
+        return $installed;
+    }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_classmap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_classmap.php
index 827360c..1de2dba 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_classmap.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_classmap.php
@@ -6,7 +6,11 @@
 $baseDir = dirname($vendorDir);
 
 return array(
+    'Attribute' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Attribute.php',
     'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',
+    'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php',
+    'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php',
+    'ValueError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/ValueError.php',
     'u2flib_server\\Error' => $vendorDir . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
     'u2flib_server\\RegisterRequest' => $vendorDir . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
     'u2flib_server\\Registration' => $vendorDir . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_files.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_files.php
index f2c5f70..fac18c7 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_files.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_files.php
@@ -6,5 +6,12 @@
 $baseDir = dirname($vendorDir);
 
 return array(
+    'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
+    '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
+    '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
+    'a1105708a18b76903365ca1c4aa61b02' => $vendorDir . '/symfony/translation/Resources/functions.php',
+    '667aeda72477189d0494fecd327c3641' => $vendorDir . '/symfony/var-dumper/Resources/functions/dump.php',
+    'fe62ba7e10580d903cc46d808b5961a4' => $vendorDir . '/tightenco/collect/src/Collect/Support/helpers.php',
+    'caf31cc6ec7cf2241cb6f12c226c3846' => $vendorDir . '/tightenco/collect/src/Collect/Support/alias.php',
     '04c6c5c2f7095ccf6c481d3e53e1776f' => $vendorDir . '/mustangostang/spyc/Spyc.php',
 );
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_psr4.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_psr4.php
index b1b7514..7c9542e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_psr4.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_psr4.php
@@ -6,11 +6,23 @@
 $baseDir = dirname($vendorDir);
 
 return array(
+    'Tightenco\\Collect\\' => array($vendorDir . '/tightenco/collect/src/Collect'),
+    'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'),
+    'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'),
+    'Symfony\\Contracts\\Translation\\' => array($vendorDir . '/symfony/translation-contracts'),
+    'Symfony\\Component\\VarDumper\\' => array($vendorDir . '/symfony/var-dumper'),
+    'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'),
     'RobThree\\Auth\\' => array($vendorDir . '/robthree/twofactorauth/lib'),
+    'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
+    'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
+    'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
     'PhpMimeMailParser\\' => array($vendorDir . '/php-mime-mail-parser/php-mime-mail-parser/src'),
     'PHPMailer\\PHPMailer\\' => array($vendorDir . '/phpmailer/phpmailer/src'),
     'MatthiasMullie\\PathConverter\\' => array($vendorDir . '/matthiasmullie/path-converter/src'),
     'MatthiasMullie\\Minify\\' => array($vendorDir . '/matthiasmullie/minify/src'),
+    'LdapRecord\\' => array($vendorDir . '/directorytree/ldaprecord/src'),
+    'Illuminate\\Contracts\\' => array($vendorDir . '/illuminate/contracts'),
     'Html2Text\\' => array($vendorDir . '/soundasleep/html2text/src'),
     'Ddeboer\\Imap\\' => array($vendorDir . '/ddeboer/imap/src'),
+    'Carbon\\' => array($vendorDir . '/nesbot/carbon/src/Carbon'),
 );
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_real.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_real.php
index d380e48..8a7686a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_real.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_real.php
@@ -25,7 +25,7 @@
         require __DIR__ . '/platform_check.php';
 
         spl_autoload_register(array('ComposerAutoloaderInit873464e4bd965a3168f133248b1b218b', 'loadClassLoader'), true, true);
-        self::$loader = $loader = new \Composer\Autoload\ClassLoader();
+        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
         spl_autoload_unregister(array('ComposerAutoloaderInit873464e4bd965a3168f133248b1b218b', 'loadClassLoader'));
 
         $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_static.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_static.php
index 94db388..4d3a5d4 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_static.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/autoload_static.php
@@ -7,16 +7,38 @@
 class ComposerStaticInit873464e4bd965a3168f133248b1b218b
 {
     public static $files = array (
+        'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
+        '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
+        '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php',
+        'a1105708a18b76903365ca1c4aa61b02' => __DIR__ . '/..' . '/symfony/translation/Resources/functions.php',
+        '667aeda72477189d0494fecd327c3641' => __DIR__ . '/..' . '/symfony/var-dumper/Resources/functions/dump.php',
+        'fe62ba7e10580d903cc46d808b5961a4' => __DIR__ . '/..' . '/tightenco/collect/src/Collect/Support/helpers.php',
+        'caf31cc6ec7cf2241cb6f12c226c3846' => __DIR__ . '/..' . '/tightenco/collect/src/Collect/Support/alias.php',
         '04c6c5c2f7095ccf6c481d3e53e1776f' => __DIR__ . '/..' . '/mustangostang/spyc/Spyc.php',
     );
 
     public static $prefixLengthsPsr4 = array (
+        'T' => 
+        array (
+            'Tightenco\\Collect\\' => 18,
+        ),
+        'S' => 
+        array (
+            'Symfony\\Polyfill\\Php80\\' => 23,
+            'Symfony\\Polyfill\\Mbstring\\' => 26,
+            'Symfony\\Contracts\\Translation\\' => 30,
+            'Symfony\\Component\\VarDumper\\' => 28,
+            'Symfony\\Component\\Translation\\' => 30,
+        ),
         'R' => 
         array (
             'RobThree\\Auth\\' => 14,
         ),
         'P' => 
         array (
+            'Psr\\SimpleCache\\' => 16,
+            'Psr\\Log\\' => 8,
+            'Psr\\Container\\' => 14,
             'PhpMimeMailParser\\' => 18,
             'PHPMailer\\PHPMailer\\' => 20,
         ),
@@ -25,6 +47,14 @@
             'MatthiasMullie\\PathConverter\\' => 29,
             'MatthiasMullie\\Minify\\' => 22,
         ),
+        'L' => 
+        array (
+            'LdapRecord\\' => 11,
+        ),
+        'I' => 
+        array (
+            'Illuminate\\Contracts\\' => 21,
+        ),
         'H' => 
         array (
             'Html2Text\\' => 10,
@@ -33,13 +63,53 @@
         array (
             'Ddeboer\\Imap\\' => 13,
         ),
+        'C' => 
+        array (
+            'Carbon\\' => 7,
+        ),
     );
 
     public static $prefixDirsPsr4 = array (
+        'Tightenco\\Collect\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/tightenco/collect/src/Collect',
+        ),
+        'Symfony\\Polyfill\\Php80\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/symfony/polyfill-php80',
+        ),
+        'Symfony\\Polyfill\\Mbstring\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/symfony/polyfill-mbstring',
+        ),
+        'Symfony\\Contracts\\Translation\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/symfony/translation-contracts',
+        ),
+        'Symfony\\Component\\VarDumper\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/symfony/var-dumper',
+        ),
+        'Symfony\\Component\\Translation\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/symfony/translation',
+        ),
         'RobThree\\Auth\\' => 
         array (
             0 => __DIR__ . '/..' . '/robthree/twofactorauth/lib',
         ),
+        'Psr\\SimpleCache\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/psr/simple-cache/src',
+        ),
+        'Psr\\Log\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/psr/log/Psr/Log',
+        ),
+        'Psr\\Container\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/psr/container/src',
+        ),
         'PhpMimeMailParser\\' => 
         array (
             0 => __DIR__ . '/..' . '/php-mime-mail-parser/php-mime-mail-parser/src',
@@ -56,6 +126,14 @@
         array (
             0 => __DIR__ . '/..' . '/matthiasmullie/minify/src',
         ),
+        'LdapRecord\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/directorytree/ldaprecord/src',
+        ),
+        'Illuminate\\Contracts\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/illuminate/contracts',
+        ),
         'Html2Text\\' => 
         array (
             0 => __DIR__ . '/..' . '/soundasleep/html2text/src',
@@ -64,6 +142,10 @@
         array (
             0 => __DIR__ . '/..' . '/ddeboer/imap/src',
         ),
+        'Carbon\\' => 
+        array (
+            0 => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon',
+        ),
     );
 
     public static $prefixesPsr0 = array (
@@ -77,7 +159,11 @@
     );
 
     public static $classMap = array (
+        'Attribute' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Attribute.php',
         'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
+        'Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php',
+        'UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php',
+        'ValueError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/ValueError.php',
         'u2flib_server\\Error' => __DIR__ . '/..' . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
         'u2flib_server\\RegisterRequest' => __DIR__ . '/..' . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
         'u2flib_server\\Registration' => __DIR__ . '/..' . '/yubico/u2flib-server/src/u2flib_server/U2F.php',
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.json
index 72d1d8d..1ff198c 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.json
@@ -63,34 +63,34 @@
         },
         {
             "name": "ddeboer/imap",
-            "version": "1.11.0",
-            "version_normalized": "1.11.0.0",
+            "version": "1.12.1",
+            "version_normalized": "1.12.1.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/ddeboer/imap.git",
-                "reference": "a089dfcb9d177f921eb5dadc8d4144a44dff22ee"
+                "reference": "dbed05ca67b93509345a820b2859de10c48948fb"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/ddeboer/imap/zipball/a089dfcb9d177f921eb5dadc8d4144a44dff22ee",
-                "reference": "a089dfcb9d177f921eb5dadc8d4144a44dff22ee",
+                "url": "https://api.github.com/repos/ddeboer/imap/zipball/dbed05ca67b93509345a820b2859de10c48948fb",
+                "reference": "dbed05ca67b93509345a820b2859de10c48948fb",
                 "shasum": ""
             },
             "require": {
                 "ext-iconv": "*",
                 "ext-imap": "*",
                 "ext-mbstring": "*",
-                "php": "^7.3 || ^8.0"
+                "php": "^7.4 || ^8.0"
             },
             "require-dev": {
-                "friendsofphp/php-cs-fixer": "^2.16.7",
-                "laminas/laminas-mail": "^2.12.3",
-                "phpstan/phpstan": "^0.12.57",
-                "phpstan/phpstan-phpunit": "^0.12.16",
-                "phpstan/phpstan-strict-rules": "^0.12.5",
-                "phpunit/phpunit": "^9.4.3"
+                "friendsofphp/php-cs-fixer": "^2.18.6",
+                "laminas/laminas-mail": "^2.14.0",
+                "phpstan/phpstan": "^0.12.84",
+                "phpstan/phpstan-phpunit": "^0.12.18",
+                "phpstan/phpstan-strict-rules": "^0.12.9",
+                "phpunit/phpunit": "^9.5.4"
             },
-            "time": "2020-11-30T14:52:49+00:00",
+            "time": "2021-04-27T08:38:46+00:00",
             "type": "library",
             "installation-source": "dist",
             "autoload": {
@@ -124,7 +124,7 @@
             ],
             "support": {
                 "issues": "https://github.com/ddeboer/imap/issues",
-                "source": "https://github.com/ddeboer/imap/tree/1.11.0"
+                "source": "https://github.com/ddeboer/imap/tree/1.12.1"
             },
             "funding": [
                 {
@@ -139,18 +139,145 @@
             "install-path": "../ddeboer/imap"
         },
         {
-            "name": "matthiasmullie/minify",
-            "version": "1.3.65",
-            "version_normalized": "1.3.65.0",
+            "name": "directorytree/ldaprecord",
+            "version": "v2.6.3",
+            "version_normalized": "2.6.3.0",
             "source": {
                 "type": "git",
-                "url": "https://github.com/matthiasmullie/minify.git",
-                "reference": "227f19062451c55a797e0cc667ef983834e6580c"
+                "url": "https://github.com/DirectoryTree/LdapRecord.git",
+                "reference": "5c93ec6d1ef458290825a8b0a148946dce7c1e7a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/matthiasmullie/minify/zipball/227f19062451c55a797e0cc667ef983834e6580c",
-                "reference": "227f19062451c55a797e0cc667ef983834e6580c",
+                "url": "https://api.github.com/repos/DirectoryTree/LdapRecord/zipball/5c93ec6d1ef458290825a8b0a148946dce7c1e7a",
+                "reference": "5c93ec6d1ef458290825a8b0a148946dce7c1e7a",
+                "shasum": ""
+            },
+            "require": {
+                "ext-json": "*",
+                "ext-ldap": "*",
+                "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0",
+                "nesbot/carbon": "^1.0|^2.0",
+                "php": ">=7.3",
+                "psr/log": "^1.0",
+                "psr/simple-cache": "^1.0",
+                "tightenco/collect": "^5.6|^6.0|^7.0|^8.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^1.0",
+                "phpunit/phpunit": "^8.0",
+                "spatie/ray": "^1.24"
+            },
+            "time": "2021-08-05T21:52:43+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "LdapRecord\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Steve Bauman",
+                    "email": "steven_bauman@outlook.com",
+                    "role": "Developer"
+                }
+            ],
+            "description": "A fully-featured LDAP ORM.",
+            "homepage": "https://www.ldaprecord.com",
+            "keywords": [
+                "active directory",
+                "ad",
+                "adLDAP",
+                "adldap2",
+                "directory",
+                "ldap",
+                "ldaprecord",
+                "orm",
+                "windows"
+            ],
+            "support": {
+                "docs": "https://ldaprecord.com",
+                "email": "steven_bauman@outlook.com",
+                "issues": "https://github.com/DirectoryTree/LdapRecord/issues",
+                "source": "https://github.com/DirectoryTree/LdapRecord"
+            },
+            "funding": [
+                {
+                    "url": "https://github.com/stevebauman",
+                    "type": "github"
+                }
+            ],
+            "install-path": "../directorytree/ldaprecord"
+        },
+        {
+            "name": "illuminate/contracts",
+            "version": "v8.53.1",
+            "version_normalized": "8.53.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/contracts.git",
+                "reference": "504a34286a1b4c5421c43087d6bd4e176138f6fb"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/contracts/zipball/504a34286a1b4c5421c43087d6bd4e176138f6fb",
+                "reference": "504a34286a1b4c5421c43087d6bd4e176138f6fb",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^7.3|^8.0",
+                "psr/container": "^1.0",
+                "psr/simple-cache": "^1.0"
+            },
+            "time": "2021-08-03T14:03:47+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "8.x-dev"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\Contracts\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Contracts package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "install-path": "../illuminate/contracts"
+        },
+        {
+            "name": "matthiasmullie/minify",
+            "version": "1.3.66",
+            "version_normalized": "1.3.66.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/matthiasmullie/minify.git",
+                "reference": "45fd3b0f1dfa2c965857c6d4a470bea52adc31a6"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/matthiasmullie/minify/zipball/45fd3b0f1dfa2c965857c6d4a470bea52adc31a6",
+                "reference": "45fd3b0f1dfa2c965857c6d4a470bea52adc31a6",
                 "shasum": ""
             },
             "require": {
@@ -160,13 +287,13 @@
             },
             "require-dev": {
                 "friendsofphp/php-cs-fixer": "~2.0",
-                "matthiasmullie/scrapbook": "~1.0",
-                "phpunit/phpunit": "~4.8"
+                "matthiasmullie/scrapbook": "dev-master",
+                "phpunit/phpunit": ">=4.8"
             },
             "suggest": {
                 "psr/cache-implementation": "Cache implementation to use with Minify::cache"
             },
-            "time": "2020-12-27T21:43:29+00:00",
+            "time": "2021-01-06T15:18:10+00:00",
             "bin": [
                 "bin/minifycss",
                 "bin/minifyjs"
@@ -201,7 +328,7 @@
             ],
             "support": {
                 "issues": "https://github.com/matthiasmullie/minify/issues",
-                "source": "https://github.com/matthiasmullie/minify/tree/1.3.65"
+                "source": "https://github.com/matthiasmullie/minify/tree/1.3.66"
             },
             "funding": [
                 {
@@ -325,6 +452,103 @@
             "install-path": "../mustangostang/spyc"
         },
         {
+            "name": "nesbot/carbon",
+            "version": "2.51.1",
+            "version_normalized": "2.51.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/briannesbitt/Carbon.git",
+                "reference": "8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922",
+                "reference": "8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922",
+                "shasum": ""
+            },
+            "require": {
+                "ext-json": "*",
+                "php": "^7.1.8 || ^8.0",
+                "symfony/polyfill-mbstring": "^1.0",
+                "symfony/polyfill-php80": "^1.16",
+                "symfony/translation": "^3.4 || ^4.0 || ^5.0"
+            },
+            "require-dev": {
+                "doctrine/orm": "^2.7",
+                "friendsofphp/php-cs-fixer": "^2.14 || ^3.0",
+                "kylekatarnls/multi-tester": "^2.0",
+                "phpmd/phpmd": "^2.9",
+                "phpstan/extension-installer": "^1.0",
+                "phpstan/phpstan": "^0.12.54",
+                "phpunit/phpunit": "^7.5.20 || ^8.5.14",
+                "squizlabs/php_codesniffer": "^3.4"
+            },
+            "time": "2021-07-28T13:16:28+00:00",
+            "bin": [
+                "bin/carbon"
+            ],
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-3.x": "3.x-dev",
+                    "dev-master": "2.x-dev"
+                },
+                "laravel": {
+                    "providers": [
+                        "Carbon\\Laravel\\ServiceProvider"
+                    ]
+                },
+                "phpstan": {
+                    "includes": [
+                        "extension.neon"
+                    ]
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Carbon\\": "src/Carbon/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Brian Nesbitt",
+                    "email": "brian@nesbot.com",
+                    "homepage": "https://markido.com"
+                },
+                {
+                    "name": "kylekatarnls",
+                    "homepage": "https://github.com/kylekatarnls"
+                }
+            ],
+            "description": "An API extension for DateTime that supports 281 different languages.",
+            "homepage": "https://carbon.nesbot.com",
+            "keywords": [
+                "date",
+                "datetime",
+                "time"
+            ],
+            "support": {
+                "issues": "https://github.com/briannesbitt/Carbon/issues",
+                "source": "https://github.com/briannesbitt/Carbon"
+            },
+            "funding": [
+                {
+                    "url": "https://opencollective.com/Carbon",
+                    "type": "open_collective"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../nesbot/carbon"
+        },
+        {
             "name": "paragonie/random_compat",
             "version": "v9.99.100",
             "version_normalized": "9.99.100.0",
@@ -379,34 +603,33 @@
         },
         {
             "name": "php-mime-mail-parser/php-mime-mail-parser",
-            "version": "5.0.5",
-            "version_normalized": "5.0.5.0",
+            "version": "7.0.0",
+            "version_normalized": "7.0.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-mime-mail-parser/php-mime-mail-parser.git",
-                "reference": "27983433aabeccee832573c3c56e6a4855e57745"
+                "reference": "9d09a017f3f103fec8456211a4a538b80e0eca0d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-mime-mail-parser/php-mime-mail-parser/zipball/27983433aabeccee832573c3c56e6a4855e57745",
-                "reference": "27983433aabeccee832573c3c56e6a4855e57745",
+                "url": "https://api.github.com/repos/php-mime-mail-parser/php-mime-mail-parser/zipball/9d09a017f3f103fec8456211a4a538b80e0eca0d",
+                "reference": "9d09a017f3f103fec8456211a4a538b80e0eca0d",
                 "shasum": ""
             },
             "require": {
                 "ext-mailparse": "*",
-                "php": "^7.1"
+                "php": "^7.2|^8.0"
             },
             "replace": {
                 "exorus/php-mime-mail-parser": "*",
                 "messaged/php-mime-mail-parser": "*"
             },
             "require-dev": {
-                "php-coveralls/php-coveralls": "^2.1",
-                "phpunit/php-token-stream": "^3.0",
-                "phpunit/phpunit": "^7.0",
-                "squizlabs/php_codesniffer": "^3.4"
+                "php-coveralls/php-coveralls": "^2.2",
+                "phpunit/phpunit": "^8.0",
+                "squizlabs/php_codesniffer": "^3.5"
             },
-            "time": "2019-09-23T11:57:58+00:00",
+            "time": "2021-02-25T17:21:57+00:00",
             "type": "library",
             "installation-source": "dist",
             "autoload": {
@@ -450,7 +673,7 @@
                     "role": "Developer"
                 }
             ],
-            "description": "A fully tested email parser for PHP 7.1+ (mailparse extension wrapper).",
+            "description": "A fully tested email parser for PHP 7.2+ (mailparse extension wrapper).",
             "homepage": "https://github.com/php-mime-mail-parser/php-mime-mail-parser",
             "keywords": [
                 "MimeMailParser",
@@ -460,21 +683,31 @@
                 "parser",
                 "php"
             ],
+            "support": {
+                "issues": "https://github.com/php-mime-mail-parser/php-mime-mail-parser/issues",
+                "source": "https://github.com/php-mime-mail-parser/php-mime-mail-parser/tree/7.0.0"
+            },
+            "funding": [
+                {
+                    "url": "https://github.com/eXorus",
+                    "type": "github"
+                }
+            ],
             "install-path": "../php-mime-mail-parser/php-mime-mail-parser"
         },
         {
             "name": "phpmailer/phpmailer",
-            "version": "v6.2.0",
-            "version_normalized": "6.2.0.0",
+            "version": "v6.5.0",
+            "version_normalized": "6.5.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPMailer/PHPMailer.git",
-                "reference": "e38888a75c070304ca5514197d4847a59a5c853f"
+                "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/e38888a75c070304ca5514197d4847a59a5c853f",
-                "reference": "e38888a75c070304ca5514197d4847a59a5c853f",
+                "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/a5b5c43e50b7fba655f793ad27303cd74c57363c",
+                "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c",
                 "shasum": ""
             },
             "require": {
@@ -492,14 +725,14 @@
                 "yoast/phpunit-polyfills": "^0.2.0"
             },
             "suggest": {
-                "ext-mbstring": "Needed to send email in multibyte encoding charset",
+                "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses",
                 "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication",
                 "league/oauth2-google": "Needed for Google XOAUTH2 authentication",
                 "psr/log": "For optional PSR-3 debug logging",
                 "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication",
                 "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)"
             },
-            "time": "2020-11-25T15:24:57+00:00",
+            "time": "2021-06-16T14:33:43+00:00",
             "type": "library",
             "installation-source": "dist",
             "autoload": {
@@ -531,7 +764,7 @@
             "description": "PHPMailer is a full-featured email creation and transfer class for PHP",
             "support": {
                 "issues": "https://github.com/PHPMailer/PHPMailer/issues",
-                "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.2.0"
+                "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.0"
             },
             "funding": [
                 {
@@ -542,27 +775,190 @@
             "install-path": "../phpmailer/phpmailer"
         },
         {
-            "name": "robthree/twofactorauth",
-            "version": "1.7.0",
-            "version_normalized": "1.7.0.0",
+            "name": "psr/container",
+            "version": "1.1.1",
+            "version_normalized": "1.1.1.0",
             "source": {
                 "type": "git",
-                "url": "https://github.com/RobThree/TwoFactorAuth.git",
-                "reference": "37983bf675c5baca09d19d6705170489d0df0002"
+                "url": "https://github.com/php-fig/container.git",
+                "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/RobThree/TwoFactorAuth/zipball/37983bf675c5baca09d19d6705170489d0df0002",
-                "reference": "37983bf675c5baca09d19d6705170489d0df0002",
+                "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
+                "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.0"
+            },
+            "time": "2021-03-05T17:36:06+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Container\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "https://www.php-fig.org/"
+                }
+            ],
+            "description": "Common Container Interface (PHP FIG PSR-11)",
+            "homepage": "https://github.com/php-fig/container",
+            "keywords": [
+                "PSR-11",
+                "container",
+                "container-interface",
+                "container-interop",
+                "psr"
+            ],
+            "support": {
+                "issues": "https://github.com/php-fig/container/issues",
+                "source": "https://github.com/php-fig/container/tree/1.1.1"
+            },
+            "install-path": "../psr/container"
+        },
+        {
+            "name": "psr/log",
+            "version": "1.1.4",
+            "version_normalized": "1.1.4.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/log.git",
+                "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
+                "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "time": "2021-05-03T11:20:27+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.1.x-dev"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Log\\": "Psr/Log/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "https://www.php-fig.org/"
+                }
+            ],
+            "description": "Common interface for logging libraries",
+            "homepage": "https://github.com/php-fig/log",
+            "keywords": [
+                "log",
+                "psr",
+                "psr-3"
+            ],
+            "support": {
+                "source": "https://github.com/php-fig/log/tree/1.1.4"
+            },
+            "install-path": "../psr/log"
+        },
+        {
+            "name": "psr/simple-cache",
+            "version": "1.0.1",
+            "version_normalized": "1.0.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/simple-cache.git",
+                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "time": "2017-10-23T01:57:42+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0.x-dev"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Psr\\SimpleCache\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "http://www.php-fig.org/"
+                }
+            ],
+            "description": "Common interfaces for simple caching",
+            "keywords": [
+                "cache",
+                "caching",
+                "psr",
+                "psr-16",
+                "simple-cache"
+            ],
+            "support": {
+                "source": "https://github.com/php-fig/simple-cache/tree/master"
+            },
+            "install-path": "../psr/simple-cache"
+        },
+        {
+            "name": "robthree/twofactorauth",
+            "version": "1.8.0",
+            "version_normalized": "1.8.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/RobThree/TwoFactorAuth.git",
+                "reference": "30a38627ae1e7c9399dae67e265063cd6ec5276c"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/RobThree/TwoFactorAuth/zipball/30a38627ae1e7c9399dae67e265063cd6ec5276c",
+                "reference": "30a38627ae1e7c9399dae67e265063cd6ec5276c",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.6.0"
             },
             "require-dev": {
+                "php-parallel-lint/php-parallel-lint": "^1.2",
                 "phpunit/phpunit": "@stable"
             },
-            "time": "2020-01-02T19:56:46+00:00",
+            "suggest": {
+                "bacon/bacon-qr-code": "Needed for BaconQrCodeProvider provider",
+                "endroid/qr-code": "Needed for EndroidQrCodeProvider"
+            },
+            "time": "2021-03-09T18:24:05+00:00",
             "type": "library",
             "installation-source": "dist",
             "autoload": {
@@ -593,6 +989,20 @@
                 "php",
                 "tfa"
             ],
+            "support": {
+                "issues": "https://github.com/RobThree/TwoFactorAuth/issues",
+                "source": "https://github.com/RobThree/TwoFactorAuth"
+            },
+            "funding": [
+                {
+                    "url": "https://paypal.me/robiii",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/RobThree",
+                    "type": "github"
+                }
+            ],
             "install-path": "../robthree/twofactorauth"
         },
         {
@@ -649,6 +1059,572 @@
             "install-path": "../soundasleep/html2text"
         },
         {
+            "name": "symfony/deprecation-contracts",
+            "version": "v2.4.0",
+            "version_normalized": "2.4.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/deprecation-contracts.git",
+                "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+                "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "time": "2021-03-23T23:28:01+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "2.4-dev"
+                },
+                "thanks": {
+                    "name": "symfony/contracts",
+                    "url": "https://github.com/symfony/contracts"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "function.php"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "A generic function and convention to trigger deprecation notices",
+            "homepage": "https://symfony.com",
+            "support": {
+                "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/deprecation-contracts"
+        },
+        {
+            "name": "symfony/polyfill-mbstring",
+            "version": "v1.23.1",
+            "version_normalized": "1.23.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/polyfill-mbstring.git",
+                "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9174a3d80210dca8daa7f31fec659150bbeabfc6",
+                "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "suggest": {
+                "ext-mbstring": "For best performance"
+            },
+            "time": "2021-05-27T12:26:48+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "1.23-dev"
+                },
+                "thanks": {
+                    "name": "symfony/polyfill",
+                    "url": "https://github.com/symfony/polyfill"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Polyfill\\Mbstring\\": ""
+                },
+                "files": [
+                    "bootstrap.php"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Symfony polyfill for the Mbstring extension",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "compatibility",
+                "mbstring",
+                "polyfill",
+                "portable",
+                "shim"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.1"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/polyfill-mbstring"
+        },
+        {
+            "name": "symfony/polyfill-php80",
+            "version": "v1.23.1",
+            "version_normalized": "1.23.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/polyfill-php80.git",
+                "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/1100343ed1a92e3a38f9ae122fc0eb21602547be",
+                "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.1"
+            },
+            "time": "2021-07-28T13:41:28+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "1.23-dev"
+                },
+                "thanks": {
+                    "name": "symfony/polyfill",
+                    "url": "https://github.com/symfony/polyfill"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Polyfill\\Php80\\": ""
+                },
+                "files": [
+                    "bootstrap.php"
+                ],
+                "classmap": [
+                    "Resources/stubs"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Ion Bazan",
+                    "email": "ion.bazan@gmail.com"
+                },
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "compatibility",
+                "polyfill",
+                "portable",
+                "shim"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.1"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/polyfill-php80"
+        },
+        {
+            "name": "symfony/translation",
+            "version": "v5.3.4",
+            "version_normalized": "5.3.4.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/translation.git",
+                "reference": "d89ad7292932c2699cbe4af98d72c5c6bbc504c1"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/translation/zipball/d89ad7292932c2699cbe4af98d72c5c6bbc504c1",
+                "reference": "d89ad7292932c2699cbe4af98d72c5c6bbc504c1",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5",
+                "symfony/deprecation-contracts": "^2.1",
+                "symfony/polyfill-mbstring": "~1.0",
+                "symfony/polyfill-php80": "^1.16",
+                "symfony/translation-contracts": "^2.3"
+            },
+            "conflict": {
+                "symfony/config": "<4.4",
+                "symfony/dependency-injection": "<5.0",
+                "symfony/http-kernel": "<5.0",
+                "symfony/twig-bundle": "<5.0",
+                "symfony/yaml": "<4.4"
+            },
+            "provide": {
+                "symfony/translation-implementation": "2.3"
+            },
+            "require-dev": {
+                "psr/log": "^1|^2|^3",
+                "symfony/config": "^4.4|^5.0",
+                "symfony/console": "^4.4|^5.0",
+                "symfony/dependency-injection": "^5.0",
+                "symfony/finder": "^4.4|^5.0",
+                "symfony/http-kernel": "^5.0",
+                "symfony/intl": "^4.4|^5.0",
+                "symfony/polyfill-intl-icu": "^1.21",
+                "symfony/service-contracts": "^1.1.2|^2",
+                "symfony/yaml": "^4.4|^5.0"
+            },
+            "suggest": {
+                "psr/log-implementation": "To use logging capability in translator",
+                "symfony/config": "",
+                "symfony/yaml": ""
+            },
+            "time": "2021-07-25T09:39:16+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "Resources/functions.php"
+                ],
+                "psr-4": {
+                    "Symfony\\Component\\Translation\\": ""
+                },
+                "exclude-from-classmap": [
+                    "/Tests/"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Provides tools to internationalize your application",
+            "homepage": "https://symfony.com",
+            "support": {
+                "source": "https://github.com/symfony/translation/tree/v5.3.4"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/translation"
+        },
+        {
+            "name": "symfony/translation-contracts",
+            "version": "v2.4.0",
+            "version_normalized": "2.4.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/translation-contracts.git",
+                "reference": "95c812666f3e91db75385749fe219c5e494c7f95"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95",
+                "reference": "95c812666f3e91db75385749fe219c5e494c7f95",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5"
+            },
+            "suggest": {
+                "symfony/translation-implementation": ""
+            },
+            "time": "2021-03-23T23:28:01+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "2.4-dev"
+                },
+                "thanks": {
+                    "name": "symfony/contracts",
+                    "url": "https://github.com/symfony/contracts"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Contracts\\Translation\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Generic abstractions related to translation",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "abstractions",
+                "contracts",
+                "decoupling",
+                "interfaces",
+                "interoperability",
+                "standards"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/translation-contracts/tree/v2.4.0"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/translation-contracts"
+        },
+        {
+            "name": "symfony/var-dumper",
+            "version": "v5.3.6",
+            "version_normalized": "5.3.6.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/var-dumper.git",
+                "reference": "3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0",
+                "reference": "3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.2.5",
+                "symfony/polyfill-mbstring": "~1.0",
+                "symfony/polyfill-php80": "^1.16"
+            },
+            "conflict": {
+                "phpunit/phpunit": "<5.4.3",
+                "symfony/console": "<4.4"
+            },
+            "require-dev": {
+                "ext-iconv": "*",
+                "symfony/console": "^4.4|^5.0",
+                "symfony/process": "^4.4|^5.0",
+                "twig/twig": "^2.13|^3.0.4"
+            },
+            "suggest": {
+                "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
+                "ext-intl": "To show region name in time zone dump",
+                "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
+            },
+            "time": "2021-07-27T01:56:02+00:00",
+            "bin": [
+                "Resources/bin/var-dump-server"
+            ],
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "Resources/functions/dump.php"
+                ],
+                "psr-4": {
+                    "Symfony\\Component\\VarDumper\\": ""
+                },
+                "exclude-from-classmap": [
+                    "/Tests/"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nicolas Grekas",
+                    "email": "p@tchwork.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Provides mechanisms for walking through any arbitrary PHP variable",
+            "homepage": "https://symfony.com",
+            "keywords": [
+                "debug",
+                "dump"
+            ],
+            "support": {
+                "source": "https://github.com/symfony/var-dumper/tree/v5.3.6"
+            },
+            "funding": [
+                {
+                    "url": "https://symfony.com/sponsor",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/fabpot",
+                    "type": "github"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+                    "type": "tidelift"
+                }
+            ],
+            "install-path": "../symfony/var-dumper"
+        },
+        {
+            "name": "tightenco/collect",
+            "version": "v8.34.0",
+            "version_normalized": "8.34.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/tighten/collect.git",
+                "reference": "b069783ab0c547bb894ebcf8e7f6024bb401f9d2"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/tighten/collect/zipball/b069783ab0c547bb894ebcf8e7f6024bb401f9d2",
+                "reference": "b069783ab0c547bb894ebcf8e7f6024bb401f9d2",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^7.2|^8.0",
+                "symfony/var-dumper": "^3.4 || ^4.0 || ^5.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^1.0",
+                "nesbot/carbon": "^2.23.0",
+                "phpunit/phpunit": "^8.3"
+            },
+            "time": "2021-03-29T21:29:00+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "src/Collect/Support/helpers.php",
+                    "src/Collect/Support/alias.php"
+                ],
+                "psr-4": {
+                    "Tightenco\\Collect\\": "src/Collect"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylorotwell@gmail.com"
+                }
+            ],
+            "description": "Collect - Illuminate Collections as a separate package.",
+            "keywords": [
+                "collection",
+                "laravel"
+            ],
+            "support": {
+                "issues": "https://github.com/tighten/collect/issues",
+                "source": "https://github.com/tighten/collect/tree/v8.34.0"
+            },
+            "install-path": "../tightenco/collect"
+        },
+        {
             "name": "yubico/u2flib-server",
             "version": "1.0.2",
             "version_normalized": "1.0.2.0",
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.php
index 189c9b7..2e6adce 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/installed.php
@@ -1,137 +1,257 @@
-<?php return array (
-  'root' => 
-  array (
-    'pretty_version' => '1.0.0+no-version-set',
-    'version' => '1.0.0.0',
-    'aliases' => 
-    array (
+<?php return array(
+    'root' => array(
+        'pretty_version' => '1.0.0+no-version-set',
+        'version' => '1.0.0.0',
+        'type' => 'library',
+        'install_path' => __DIR__ . '/../../',
+        'aliases' => array(),
+        'reference' => NULL,
+        'name' => '__root__',
+        'dev' => true,
     ),
-    'reference' => NULL,
-    'name' => '__root__',
-  ),
-  'versions' => 
-  array (
-    '__root__' => 
-    array (
-      'pretty_version' => '1.0.0+no-version-set',
-      'version' => '1.0.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => NULL,
+    'versions' => array(
+        '__root__' => array(
+            'pretty_version' => '1.0.0+no-version-set',
+            'version' => '1.0.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../../',
+            'aliases' => array(),
+            'reference' => NULL,
+            'dev_requirement' => false,
+        ),
+        'bshaffer/oauth2-server-php' => array(
+            'pretty_version' => 'v1.11.1',
+            'version' => '1.11.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../bshaffer/oauth2-server-php',
+            'aliases' => array(),
+            'reference' => '5a0c8000d4763b276919e2106f54eddda6bc50fa',
+            'dev_requirement' => false,
+        ),
+        'ddeboer/imap' => array(
+            'pretty_version' => '1.12.1',
+            'version' => '1.12.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ddeboer/imap',
+            'aliases' => array(),
+            'reference' => 'dbed05ca67b93509345a820b2859de10c48948fb',
+            'dev_requirement' => false,
+        ),
+        'directorytree/ldaprecord' => array(
+            'pretty_version' => 'v2.6.3',
+            'version' => '2.6.3.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../directorytree/ldaprecord',
+            'aliases' => array(),
+            'reference' => '5c93ec6d1ef458290825a8b0a148946dce7c1e7a',
+            'dev_requirement' => false,
+        ),
+        'exorus/php-mime-mail-parser' => array(
+            'dev_requirement' => false,
+            'replaced' => array(
+                0 => '*',
+            ),
+        ),
+        'illuminate/contracts' => array(
+            'pretty_version' => 'v8.53.1',
+            'version' => '8.53.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../illuminate/contracts',
+            'aliases' => array(),
+            'reference' => '504a34286a1b4c5421c43087d6bd4e176138f6fb',
+            'dev_requirement' => false,
+        ),
+        'matthiasmullie/minify' => array(
+            'pretty_version' => '1.3.66',
+            'version' => '1.3.66.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../matthiasmullie/minify',
+            'aliases' => array(),
+            'reference' => '45fd3b0f1dfa2c965857c6d4a470bea52adc31a6',
+            'dev_requirement' => false,
+        ),
+        'matthiasmullie/path-converter' => array(
+            'pretty_version' => '1.1.3',
+            'version' => '1.1.3.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../matthiasmullie/path-converter',
+            'aliases' => array(),
+            'reference' => 'e7d13b2c7e2f2268e1424aaed02085518afa02d9',
+            'dev_requirement' => false,
+        ),
+        'messaged/php-mime-mail-parser' => array(
+            'dev_requirement' => false,
+            'replaced' => array(
+                0 => '*',
+            ),
+        ),
+        'mustangostang/spyc' => array(
+            'pretty_version' => '0.6.3',
+            'version' => '0.6.3.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../mustangostang/spyc',
+            'aliases' => array(),
+            'reference' => '4627c838b16550b666d15aeae1e5289dd5b77da0',
+            'dev_requirement' => false,
+        ),
+        'nesbot/carbon' => array(
+            'pretty_version' => '2.51.1',
+            'version' => '2.51.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../nesbot/carbon',
+            'aliases' => array(),
+            'reference' => '8619c299d1e0d4b344e1f98ca07a1ce2cfbf1922',
+            'dev_requirement' => false,
+        ),
+        'paragonie/random_compat' => array(
+            'pretty_version' => 'v9.99.100',
+            'version' => '9.99.100.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../paragonie/random_compat',
+            'aliases' => array(),
+            'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a',
+            'dev_requirement' => false,
+        ),
+        'php-mime-mail-parser/php-mime-mail-parser' => array(
+            'pretty_version' => '7.0.0',
+            'version' => '7.0.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../php-mime-mail-parser/php-mime-mail-parser',
+            'aliases' => array(),
+            'reference' => '9d09a017f3f103fec8456211a4a538b80e0eca0d',
+            'dev_requirement' => false,
+        ),
+        'phpmailer/phpmailer' => array(
+            'pretty_version' => 'v6.5.0',
+            'version' => '6.5.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpmailer/phpmailer',
+            'aliases' => array(),
+            'reference' => 'a5b5c43e50b7fba655f793ad27303cd74c57363c',
+            'dev_requirement' => false,
+        ),
+        'psr/container' => array(
+            'pretty_version' => '1.1.1',
+            'version' => '1.1.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/container',
+            'aliases' => array(),
+            'reference' => '8622567409010282b7aeebe4bb841fe98b58dcaf',
+            'dev_requirement' => false,
+        ),
+        'psr/log' => array(
+            'pretty_version' => '1.1.4',
+            'version' => '1.1.4.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/log',
+            'aliases' => array(),
+            'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11',
+            'dev_requirement' => false,
+        ),
+        'psr/simple-cache' => array(
+            'pretty_version' => '1.0.1',
+            'version' => '1.0.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/simple-cache',
+            'aliases' => array(),
+            'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b',
+            'dev_requirement' => false,
+        ),
+        'robthree/twofactorauth' => array(
+            'pretty_version' => '1.8.0',
+            'version' => '1.8.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../robthree/twofactorauth',
+            'aliases' => array(),
+            'reference' => '30a38627ae1e7c9399dae67e265063cd6ec5276c',
+            'dev_requirement' => false,
+        ),
+        'soundasleep/html2text' => array(
+            'pretty_version' => '0.5.0',
+            'version' => '0.5.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../soundasleep/html2text',
+            'aliases' => array(),
+            'reference' => 'cdb89f6ffa2c4cc78f8ed9ea6ee0594a9133ccad',
+            'dev_requirement' => false,
+        ),
+        'symfony/deprecation-contracts' => array(
+            'pretty_version' => 'v2.4.0',
+            'version' => '2.4.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/deprecation-contracts',
+            'aliases' => array(),
+            'reference' => '5f38c8804a9e97d23e0c8d63341088cd8a22d627',
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-mbstring' => array(
+            'pretty_version' => 'v1.23.1',
+            'version' => '1.23.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
+            'aliases' => array(),
+            'reference' => '9174a3d80210dca8daa7f31fec659150bbeabfc6',
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-php80' => array(
+            'pretty_version' => 'v1.23.1',
+            'version' => '1.23.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-php80',
+            'aliases' => array(),
+            'reference' => '1100343ed1a92e3a38f9ae122fc0eb21602547be',
+            'dev_requirement' => false,
+        ),
+        'symfony/translation' => array(
+            'pretty_version' => 'v5.3.4',
+            'version' => '5.3.4.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/translation',
+            'aliases' => array(),
+            'reference' => 'd89ad7292932c2699cbe4af98d72c5c6bbc504c1',
+            'dev_requirement' => false,
+        ),
+        'symfony/translation-contracts' => array(
+            'pretty_version' => 'v2.4.0',
+            'version' => '2.4.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/translation-contracts',
+            'aliases' => array(),
+            'reference' => '95c812666f3e91db75385749fe219c5e494c7f95',
+            'dev_requirement' => false,
+        ),
+        'symfony/translation-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '2.3',
+            ),
+        ),
+        'symfony/var-dumper' => array(
+            'pretty_version' => 'v5.3.6',
+            'version' => '5.3.6.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/var-dumper',
+            'aliases' => array(),
+            'reference' => '3dd8ddd1e260e58ecc61bb78da3b6584b3bfcba0',
+            'dev_requirement' => false,
+        ),
+        'tightenco/collect' => array(
+            'pretty_version' => 'v8.34.0',
+            'version' => '8.34.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../tightenco/collect',
+            'aliases' => array(),
+            'reference' => 'b069783ab0c547bb894ebcf8e7f6024bb401f9d2',
+            'dev_requirement' => false,
+        ),
+        'yubico/u2flib-server' => array(
+            'pretty_version' => '1.0.2',
+            'version' => '1.0.2.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../yubico/u2flib-server',
+            'aliases' => array(),
+            'reference' => '55d813acf68212ad2cadecde07551600d6971939',
+            'dev_requirement' => false,
+        ),
     ),
-    'bshaffer/oauth2-server-php' => 
-    array (
-      'pretty_version' => 'v1.11.1',
-      'version' => '1.11.1.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '5a0c8000d4763b276919e2106f54eddda6bc50fa',
-    ),
-    'ddeboer/imap' => 
-    array (
-      'pretty_version' => '1.11.0',
-      'version' => '1.11.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'a089dfcb9d177f921eb5dadc8d4144a44dff22ee',
-    ),
-    'exorus/php-mime-mail-parser' => 
-    array (
-      'replaced' => 
-      array (
-        0 => '*',
-      ),
-    ),
-    'matthiasmullie/minify' => 
-    array (
-      'pretty_version' => '1.3.65',
-      'version' => '1.3.65.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '227f19062451c55a797e0cc667ef983834e6580c',
-    ),
-    'matthiasmullie/path-converter' => 
-    array (
-      'pretty_version' => '1.1.3',
-      'version' => '1.1.3.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'e7d13b2c7e2f2268e1424aaed02085518afa02d9',
-    ),
-    'messaged/php-mime-mail-parser' => 
-    array (
-      'replaced' => 
-      array (
-        0 => '*',
-      ),
-    ),
-    'mustangostang/spyc' => 
-    array (
-      'pretty_version' => '0.6.3',
-      'version' => '0.6.3.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '4627c838b16550b666d15aeae1e5289dd5b77da0',
-    ),
-    'paragonie/random_compat' => 
-    array (
-      'pretty_version' => 'v9.99.100',
-      'version' => '9.99.100.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a',
-    ),
-    'php-mime-mail-parser/php-mime-mail-parser' => 
-    array (
-      'pretty_version' => '5.0.5',
-      'version' => '5.0.5.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '27983433aabeccee832573c3c56e6a4855e57745',
-    ),
-    'phpmailer/phpmailer' => 
-    array (
-      'pretty_version' => 'v6.2.0',
-      'version' => '6.2.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'e38888a75c070304ca5514197d4847a59a5c853f',
-    ),
-    'robthree/twofactorauth' => 
-    array (
-      'pretty_version' => '1.7.0',
-      'version' => '1.7.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '37983bf675c5baca09d19d6705170489d0df0002',
-    ),
-    'soundasleep/html2text' => 
-    array (
-      'pretty_version' => '0.5.0',
-      'version' => '0.5.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => 'cdb89f6ffa2c4cc78f8ed9ea6ee0594a9133ccad',
-    ),
-    'yubico/u2flib-server' => 
-    array (
-      'pretty_version' => '1.0.2',
-      'version' => '1.0.2.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '55d813acf68212ad2cadecde07551600d6971939',
-    ),
-  ),
 );
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/platform_check.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/platform_check.php
index 92370c5..580fa96 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/platform_check.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/composer/platform_check.php
@@ -4,8 +4,8 @@
 
 $issues = array();
 
-if (!(PHP_VERSION_ID >= 70300)) {
-    $issues[] = 'Your Composer dependencies require a PHP version ">= 7.3.0". You are running ' . PHP_VERSION . '.';
+if (!(PHP_VERSION_ID >= 70400)) {
+    $issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.';
 }
 
 if ($issues) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/CHANGELOG.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/CHANGELOG.md
deleted file mode 100644
index 4ddae6e..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/CHANGELOG.md
+++ /dev/null
@@ -1,678 +0,0 @@
-# Changelog
-
-## [1.11.0](https://github.com/ddeboer/imap/tree/1.11.0) (2020-11-30)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.10.1...1.11.0)
-
-**Implemented enhancements:**
-
-- PHP 8 Compatibility [\#481](https://github.com/ddeboer/imap/issues/481)
-- \[GA\] PHP 8 compatibility fix [\#483](https://github.com/ddeboer/imap/pull/483) ([Slamdunk](https://github.com/Slamdunk))
-- Support PHP 8.0, require PHP 7.3 [\#482](https://github.com/ddeboer/imap/pull/482) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Fix: Outlook date format [\#480](https://github.com/ddeboer/imap/pull/480) ([gajosadrian](https://github.com/gajosadrian))
-
-**Closed issues:**
-
-- Closing Connection [\#479](https://github.com/ddeboer/imap/issues/479)
-- Problem with charset of message part / DataPartInfo [\#475](https://github.com/ddeboer/imap/issues/475)
-- Unsupported charset "X-UNKNOWN" [\#425](https://github.com/ddeboer/imap/issues/425)
-
-## [1.10.1](https://github.com/ddeboer/imap/tree/1.10.1) (2020-08-26)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.10.0...1.10.1)
-
-**Fixed bugs:**
-
-- getThread and getMessageSequence not using with the same id [\#469](https://github.com/ddeboer/imap/issues/469)
-- imap\_thread: use absolude ids [\#474](https://github.com/ddeboer/imap/pull/474) ([Slamdunk](https://github.com/Slamdunk))
-
-**Closed issues:**
-
-- How to get a message by Message-ID [\#472](https://github.com/ddeboer/imap/issues/472)
-- Mail with e-sign [\#467](https://github.com/ddeboer/imap/issues/467)
-- Duplicate method definition in MessageInterface [\#455](https://github.com/ddeboer/imap/issues/455)
-- Missed errors in search method [\#444](https://github.com/ddeboer/imap/issues/444)
-
-**Merged pull requests:**
-
-- Subtype not always present [\#473](https://github.com/ddeboer/imap/pull/473) ([Piskvor](https://github.com/Piskvor))
-- Improved error handling for message search method [\#445](https://github.com/ddeboer/imap/pull/445) ([ikarol](https://github.com/ikarol))
-
-## [1.10.0](https://github.com/ddeboer/imap/tree/1.10.0) (2020-01-24)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.9.0...1.10.0)
-
-**Implemented enhancements:**
-
-- Handle comments \(CFWS\) in Date header + not-valid formats [\#439](https://github.com/ddeboer/imap/pull/439) ([pupaxxo](https://github.com/pupaxxo))
-- Support PHP 7.4, require PHP 7.2 [\#433](https://github.com/ddeboer/imap/pull/433) ([Slamdunk](https://github.com/Slamdunk))
-
-**Closed issues:**
-
-- Invalid Date header when trying to fetching date on not RFC compliant emails [\#438](https://github.com/ddeboer/imap/issues/438)
-
-**Merged pull requests:**
-
-- Clear the last used mailbox cache when closing a connection [\#447](https://github.com/ddeboer/imap/pull/447) ([dhzavann](https://github.com/dhzavann))
-- README: update PHP version to match composer.json [\#441](https://github.com/ddeboer/imap/pull/441) ([Slamdunk](https://github.com/Slamdunk))
-- Typo [\#440](https://github.com/ddeboer/imap/pull/440) ([OskarStark](https://github.com/OskarStark))
-
-## [1.9.0](https://github.com/ddeboer/imap/tree/1.9.0) (2019-11-25)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.8.0...1.9.0)
-
-**Implemented enhancements:**
-
-- Quota: let's also test the numbers [\#431](https://github.com/ddeboer/imap/pull/431) ([Slamdunk](https://github.com/Slamdunk))
-- Add getQuota method using imap\_get\_quotaroot to Connection class [\#430](https://github.com/ddeboer/imap/pull/430) ([arkadiusjonczek](https://github.com/arkadiusjonczek))
-
-**Closed issues:**
-
-- markAsSeen\(\)  not work [\#415](https://github.com/ddeboer/imap/issues/415)
-
-**Merged pull requests:**
-
-- CS Fix: strip redundant php docs [\#428](https://github.com/ddeboer/imap/pull/428) ([Slamdunk](https://github.com/Slamdunk))
-- Fix: Variable name [\#412](https://github.com/ddeboer/imap/pull/412) ([localheinz](https://github.com/localheinz))
-
-## [1.8.0](https://github.com/ddeboer/imap/tree/1.8.0) (2019-04-15)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.7.2...1.8.0)
-
-**Implemented enhancements:**
-
-- Add phpstan-strict-rules, expose PartiInterface::getDescription\(\) [\#409](https://github.com/ddeboer/imap/pull/409) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.7.2](https://github.com/ddeboer/imap/tree/1.7.2) (2019-04-12)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.7.1...1.7.2)
-
-**Fixed bugs:**
-
-- Handle message/rfc822 when content-disposition is missing [\#410](https://github.com/ddeboer/imap/pull/410) ([Daredzik](https://github.com/Daredzik))
-
-## [1.7.1](https://github.com/ddeboer/imap/tree/1.7.1) (2019-03-18)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.7.0...1.7.1)
-
-**Fixed bugs:**
-
-- Encoding problem with 1.7 [\#405](https://github.com/ddeboer/imap/issues/405)
-- imap\_search/imap\_sort: default params must not be passed if unspecified [\#406](https://github.com/ddeboer/imap/pull/406) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.7.0](https://github.com/ddeboer/imap/tree/1.7.0) (2019-03-04)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.6.0...1.7.0)
-
-**Implemented enhancements:**
-
-- Docker and Travis differs in handling new message eols [\#404](https://github.com/ddeboer/imap/pull/404) ([Slamdunk](https://github.com/Slamdunk))
-- Update PHP-CS-Fixer rules [\#403](https://github.com/ddeboer/imap/pull/403) ([Slamdunk](https://github.com/Slamdunk))
-- Add charset for imap\_search or imap\_sort [\#402](https://github.com/ddeboer/imap/pull/402) ([Slamdunk](https://github.com/Slamdunk))
-- PHPStan clean ups [\#400](https://github.com/ddeboer/imap/pull/400) ([Slamdunk](https://github.com/Slamdunk))
-- Adding an undelete\(\) message method [\#386](https://github.com/ddeboer/imap/pull/386) ([C-Duv](https://github.com/C-Duv))
-
-**Closed issues:**
-
-- Convert from GBK \(X-GBK\) to UTF-8 Issue [\#395](https://github.com/ddeboer/imap/issues/395)
-
-**Merged pull requests:**
-
-- Add new ResourceCheckFailureException to handle imap\_check\(\) false [\#399](https://github.com/ddeboer/imap/pull/399) ([pyatnitsev](https://github.com/pyatnitsev))
-- Remove GBK -\> X-GBK Alias and add X-GBK -\> GBK [\#396](https://github.com/ddeboer/imap/pull/396) ([pyatnitsev](https://github.com/pyatnitsev))
-- Add Feature Requests to README.md [\#394](https://github.com/ddeboer/imap/pull/394) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.6.0](https://github.com/ddeboer/imap/tree/1.6.0) (2018-12-04)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.5...1.6.0)
-
-**Implemented enhancements:**
-
-- Require PHP ^7.1 [\#257](https://github.com/ddeboer/imap/issues/257)
-- Require PHP ^7.1 [\#383](https://github.com/ddeboer/imap/pull/383) ([Slamdunk](https://github.com/Slamdunk))
-- Add ability to pass options and retries to imap\_open [\#382](https://github.com/ddeboer/imap/pull/382) ([Slamdunk](https://github.com/Slamdunk))
-- Docker setup for running tests [\#374](https://github.com/ddeboer/imap/pull/374) ([LeadTechVisas](https://github.com/LeadTechVisas))
-- Get messages by UID sequence [\#373](https://github.com/ddeboer/imap/pull/373) ([LeadTechVisas](https://github.com/LeadTechVisas))
-
-**Fixed bugs:**
-
-- Undeliverable mail: attachment parsing error [\#334](https://github.com/ddeboer/imap/issues/334)
-- imap\_getmailboxes returns false; [\#134](https://github.com/ddeboer/imap/issues/134)
-- Fix mailbox name as only numbers [\#381](https://github.com/ddeboer/imap/pull/381) ([Slamdunk](https://github.com/Slamdunk))
-- Gracefully handle possible non-array return value of imap\_getmailboxes [\#372](https://github.com/ddeboer/imap/pull/372) ([Slamdunk](https://github.com/Slamdunk))
-
-**Closed issues:**
-
-- \[AUTHENTICATIONFAILED\] Authentication failed - Too many login failures [\#368](https://github.com/ddeboer/imap/issues/368)
-- last folder in list [\#353](https://github.com/ddeboer/imap/issues/353)
-- Caching IMAP server connections [\#88](https://github.com/ddeboer/imap/issues/88)
-
-## [1.5.5](https://github.com/ddeboer/imap/tree/1.5.5) (2018-08-21)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.4...1.5.5)
-
-**Fixed bugs:**
-
-- Plain text attachments are not identified as Attachment parts [\#341](https://github.com/ddeboer/imap/issues/341)
-- Handle plain/text attachments without Content-Type header [\#367](https://github.com/ddeboer/imap/pull/367) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.5.4](https://github.com/ddeboer/imap/tree/1.5.4) (2018-08-19)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.3...1.5.4)
-
-**Fixed bugs:**
-
-- Very long filename, result of getFilename\(\) = NULL? [\#365](https://github.com/ddeboer/imap/issues/365)
-- Support RFC2231 attachment filenames [\#366](https://github.com/ddeboer/imap/pull/366) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.5.3](https://github.com/ddeboer/imap/tree/1.5.3) (2018-07-20)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.2...1.5.3)
-
-**Fixed bugs:**
-
-- Dates: handle UT timezone [\#361](https://github.com/ddeboer/imap/pull/361) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.5.2](https://github.com/ddeboer/imap/tree/1.5.2) (2018-07-10)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.1...1.5.2)
-
-**Fixed bugs:**
-
-- Fails to load Message Headers [\#358](https://github.com/ddeboer/imap/issues/358)
-- Handle invalid headers [\#359](https://github.com/ddeboer/imap/pull/359) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.5.1](https://github.com/ddeboer/imap/tree/1.5.1) (2018-05-04)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.5.0...1.5.1)
-
-**Fixed bugs:**
-
-- getContent\(\) method returns wrong content part [\#342](https://github.com/ddeboer/imap/issues/342)
-- Fix handle of attachment messages with attachments [\#343](https://github.com/ddeboer/imap/pull/343) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.5.0](https://github.com/ddeboer/imap/tree/1.5.0) (2018-03-26)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.4.1...1.5.0)
-
-**Implemented enhancements:**
-
-- ImapResource: cache last opened mailbox [\#328](https://github.com/ddeboer/imap/pull/328) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- AbstractPart::isAttachment\(\) handle unknown part type [\#302](https://github.com/ddeboer/imap/pull/302) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.4.1](https://github.com/ddeboer/imap/tree/1.4.1) (2018-03-22)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.4.0...1.4.1)
-
-**Fixed bugs:**
-
-- Return value of Ddeboer\\Imap\\Message\\AbstractPart::getDecodedContent\(\) must be of the type string, boolean returned [\#284](https://github.com/ddeboer/imap/issues/284)
-- base64\_decode may return false in PHP \< 7.1 [\#324](https://github.com/ddeboer/imap/pull/324) ([Slamdunk](https://github.com/Slamdunk))
-
-**Merged pull requests:**
-
-- Add entry in README about Mailbox::addMessage [\#325](https://github.com/ddeboer/imap/pull/325) ([soywod](https://github.com/soywod))
-
-## [1.4.0](https://github.com/ddeboer/imap/tree/1.4.0) (2018-03-19)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.3.1...1.4.0)
-
-**Implemented enhancements:**
-
-- Lazy load Message [\#320](https://github.com/ddeboer/imap/pull/320) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Invalid argument supplied for foreach\(\) in Parameters.php line 52 [\#317](https://github.com/ddeboer/imap/issues/317)
-- Message "11964" does not exist: imap\_fetchstructure\(\): Bad message number [\#310](https://github.com/ddeboer/imap/issues/310)
-- imap\_mime\_header\_decode may return false [\#322](https://github.com/ddeboer/imap/pull/322) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.3.1](https://github.com/ddeboer/imap/tree/1.3.1) (2018-03-09)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.3.0...1.3.1)
-
-**Implemented enhancements:**
-
-- Allow empty port [\#312](https://github.com/ddeboer/imap/pull/312) ([Slamdunk](https://github.com/Slamdunk))
-
-**Closed issues:**
-
-- getServerString\(\) with no port [\#311](https://github.com/ddeboer/imap/issues/311)
-
-## [1.3.0](https://github.com/ddeboer/imap/tree/1.3.0) (2018-02-28)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.2.3...1.3.0)
-
-**Implemented enhancements:**
-
-- Implement bulk-move [\#306](https://github.com/ddeboer/imap/pull/306) ([particleflux](https://github.com/particleflux))
-
-**Closed issues:**
-
-- feature: Bulk move [\#305](https://github.com/ddeboer/imap/issues/305)
-
-**Merged pull requests:**
-
-- README.md: add `Unknown search criterion: OR` note [\#304](https://github.com/ddeboer/imap/pull/304) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.2.3](https://github.com/ddeboer/imap/tree/1.2.3) (2018-02-09)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.2.2...1.2.3)
-
-**Fixed bugs:**
-
-- $part-\>type can be 9 [\#301](https://github.com/ddeboer/imap/issues/301)
-
-**Merged pull requests:**
-
-- README.md: code-coverage has higher priority than Scrutinizer [\#300](https://github.com/ddeboer/imap/pull/300) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.2.2](https://github.com/ddeboer/imap/tree/1.2.2) (2018-02-05)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.2.1...1.2.2)
-
-**Implemented enhancements:**
-
-- Allow PHPUnit ^7.0 [\#296](https://github.com/ddeboer/imap/pull/296) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Attachment-\>getFilename return null [\#297](https://github.com/ddeboer/imap/issues/297)
-- Don't handle multiplart as an attachment [\#298](https://github.com/ddeboer/imap/pull/298) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.2.1](https://github.com/ddeboer/imap/tree/1.2.1) (2018-01-29)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.2.0...1.2.1)
-
-**Implemented enhancements:**
-
-- Introduce strict comparison [\#289](https://github.com/ddeboer/imap/pull/289) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Invalid Date header found: "Thur, 04 Jan 2018 06:44:23 +0400" [\#293](https://github.com/ddeboer/imap/issues/293)
-- MessageIterator::current\(\) fails when there are no messages [\#288](https://github.com/ddeboer/imap/issues/288)
-- Remove weekday while parsing date header [\#294](https://github.com/ddeboer/imap/pull/294) ([Slamdunk](https://github.com/Slamdunk))
-- MessageIterator: forbid raw calls [\#290](https://github.com/ddeboer/imap/pull/290) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.2.0](https://github.com/ddeboer/imap/tree/1.2.0) (2018-01-15)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.1.2...1.2.0)
-
-**Implemented enhancements:**
-
-- Make imap\_append\(\) optional arguments reachable [\#280](https://github.com/ddeboer/imap/pull/280) ([Slamdunk](https://github.com/Slamdunk))
-- PHPStan: introduce static analysis [\#276](https://github.com/ddeboer/imap/pull/276) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- getAttachments\(\) problem when mixin inline and attachment [\#281](https://github.com/ddeboer/imap/issues/281)
-- UnexpectedEncodingException: Cannot decode "5" [\#278](https://github.com/ddeboer/imap/issues/278)
-- Handle correctly multiple nested attachments [\#283](https://github.com/ddeboer/imap/pull/283) ([Slamdunk](https://github.com/Slamdunk))
-- Manageable UnexpectedEncodingException [\#282](https://github.com/ddeboer/imap/pull/282) ([Slamdunk](https://github.com/Slamdunk))
-
-**Closed issues:**
-
-- Appending mail with options [\#279](https://github.com/ddeboer/imap/issues/279)
-
-## [1.1.2](https://github.com/ddeboer/imap/tree/1.1.2) (2017-12-12)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.1.1...1.1.2)
-
-**Fixed bugs:**
-
-- Unsupported charset "134": mb\_convert\_encoding\(\): Illegal character encoding specified [\#270](https://github.com/ddeboer/imap/issues/270)
-- Support Microsoft charset values [\#271](https://github.com/ddeboer/imap/pull/271) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.1.1](https://github.com/ddeboer/imap/tree/1.1.1) (2017-11-10)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.1.0...1.1.1)
-
-**Implemented enhancements:**
-
-- Transcoder: expand charset aliases list [\#267](https://github.com/ddeboer/imap/pull/267) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Charset aliases: fix to lowercase search [\#266](https://github.com/ddeboer/imap/pull/266) ([Slamdunk](https://github.com/Slamdunk))
-
-**Merged pull requests:**
-
-- README.md: add timeout note [\#263](https://github.com/ddeboer/imap/pull/263) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.1.0](https://github.com/ddeboer/imap/tree/1.1.0) (2017-11-06)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.8...1.1.0)
-
-**Implemented enhancements:**
-
-- Deprecate MessageInterface::maskAsSeen\(\) in favour of MessageInterface::markAsSeen\(\) [\#255](https://github.com/ddeboer/imap/pull/255) ([Slamdunk](https://github.com/Slamdunk))
-- Lazy load structured Headers [\#250](https://github.com/ddeboer/imap/pull/250) ([Slamdunk](https://github.com/Slamdunk))
-- Implement imap\_thread [\#249](https://github.com/ddeboer/imap/pull/249) ([Slamdunk](https://github.com/Slamdunk))
-- Require ext-iconv [\#248](https://github.com/ddeboer/imap/pull/248) ([Slamdunk](https://github.com/Slamdunk))
-- Message Part: expose $partNumber [\#244](https://github.com/ddeboer/imap/pull/244) ([wujku](https://github.com/wujku))
-- Add Mockability helpers and documentation [\#236](https://github.com/ddeboer/imap/pull/236) ([Slamdunk](https://github.com/Slamdunk))
-- Add missing interface change for \#225 [\#233](https://github.com/ddeboer/imap/pull/233) ([Slamdunk](https://github.com/Slamdunk))
-- Connection: check if the connection is still active with `imap\_ping` [\#232](https://github.com/ddeboer/imap/pull/232) ([wujku](https://github.com/wujku))
-- Message: add `References` and `In-Reply-To` headers shortcuts [\#230](https://github.com/ddeboer/imap/pull/230) ([wujku](https://github.com/wujku))
-- Added bulk set / clear flags functionality for mailbox messages [\#225](https://github.com/ddeboer/imap/pull/225) ([wujku](https://github.com/wujku))
-
-**Merged pull requests:**
-
-- make docs more obvious [\#252](https://github.com/ddeboer/imap/pull/252) ([lgg](https://github.com/lgg))
-- README.md: add Table of Contents with Travis checker [\#234](https://github.com/ddeboer/imap/pull/234) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.8](https://github.com/ddeboer/imap/tree/1.0.8) (2017-10-27)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.7...1.0.8)
-
-**Implemented enhancements:**
-
-- Headers: no catchable exception [\#246](https://github.com/ddeboer/imap/issues/246)
-- imap\_thread [\#113](https://github.com/ddeboer/imap/issues/113)
-
-**Fixed bugs:**
-
-- \[TypeError\] Return value of Ddeboer\Imap\Message\AbstractMessage::getId\(\) must be of the type string, null returned [\#253](https://github.com/ddeboer/imap/issues/253)
-- BasicMessageInterface::getId\(\) can be null [\#254](https://github.com/ddeboer/imap/pull/254) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.7](https://github.com/ddeboer/imap/tree/1.0.7) (2017-10-16)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.6...1.0.7)
-
-**Fixed bugs:**
-
-- Problem with a IMAP resource stream [\#245](https://github.com/ddeboer/imap/issues/245)
-- IMAP resource must be checked at every call for mailbox context [\#247](https://github.com/ddeboer/imap/pull/247) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.6](https://github.com/ddeboer/imap/tree/1.0.6) (2017-10-12)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.5...1.0.6)
-
-**Fixed bugs:**
-
-- \[TypeError\] Return value of AbstractMessage::getFrom\(\) must be an instance of EmailAddress, null returned [\#241](https://github.com/ddeboer/imap/issues/241)
-- Message: Date header can be absent [\#243](https://github.com/ddeboer/imap/pull/243) ([Slamdunk](https://github.com/Slamdunk))
-- Message: From header can be absent [\#242](https://github.com/ddeboer/imap/pull/242) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.5](https://github.com/ddeboer/imap/tree/1.0.5) (2017-10-12)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.4...1.0.5)
-
-**Fixed bugs:**
-
-- Use set\_error\_handler with late exception [\#240](https://github.com/ddeboer/imap/pull/240) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.4](https://github.com/ddeboer/imap/tree/1.0.4) (2017-10-11)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.3...1.0.4)
-
-**Implemented enhancements:**
-
-- Avoid \(set|restor\)\_error\_handler [\#239](https://github.com/ddeboer/imap/pull/239) ([Slamdunk](https://github.com/Slamdunk))
-
-**Fixed bugs:**
-
-- Current Transcoder class does not support all charsets.  [\#237](https://github.com/ddeboer/imap/issues/237)
-- Relay also iconv during decoding [\#238](https://github.com/ddeboer/imap/pull/238) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.3](https://github.com/ddeboer/imap/tree/1.0.3) (2017-10-11)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.2...1.0.3)
-
-**Fixed bugs:**
-
-- Attachment::getFilename\(\) may be null on inline-att, widen return type [\#235](https://github.com/ddeboer/imap/pull/235) ([wujku](https://github.com/wujku))
-
-## [1.0.2](https://github.com/ddeboer/imap/tree/1.0.2) (2017-10-06)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.1...1.0.2)
-
-**Fixed bugs:**
-
-- Issue with saving XML attachments [\#228](https://github.com/ddeboer/imap/issues/228)
-- Do not charset-decode attachments [\#231](https://github.com/ddeboer/imap/pull/231) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.1](https://github.com/ddeboer/imap/tree/1.0.1) (2017-10-05)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/1.0.0...1.0.1)
-
-**Fixed bugs:**
-
-- Error with attachment charset [\#226](https://github.com/ddeboer/imap/issues/226)
-- If charset is not specified defaults to "us-ascii" [\#227](https://github.com/ddeboer/imap/pull/227) ([Slamdunk](https://github.com/Slamdunk))
-
-## [1.0.0](https://github.com/ddeboer/imap/tree/1.0.0) (2017-10-04)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.5.2...1.0.0)
-
-**Implemented enhancements:**
-
-- Need getAll for headers [\#200](https://github.com/ddeboer/imap/issues/200)
-- Tests: implement @covers to avoid false positive on code-coverage [\#188](https://github.com/ddeboer/imap/issues/188)
-- Remove commented code [\#174](https://github.com/ddeboer/imap/issues/174)
-- Regex in SearchExpressions [\#157](https://github.com/ddeboer/imap/issues/157)
-- How do I get unread messages count? [\#98](https://github.com/ddeboer/imap/issues/98)
-- Add mocking ability through Interfaces [\#221](https://github.com/ddeboer/imap/pull/221) ([Slamdunk](https://github.com/Slamdunk))
-- Wrap imap resource to periodically check its status [\#220](https://github.com/ddeboer/imap/pull/220) ([Slamdunk](https://github.com/Slamdunk))
-- Add more coding-standard rules [\#218](https://github.com/ddeboer/imap/pull/218) ([Slamdunk](https://github.com/Slamdunk))
-- Always keep unseen: remove keepUnseen, add markAsSeen [\#217](https://github.com/ddeboer/imap/pull/217) ([Slamdunk](https://github.com/Slamdunk))
-- Embedded messages: refactor \#106 [\#216](https://github.com/ddeboer/imap/pull/216) ([Slamdunk](https://github.com/Slamdunk))
-- Headers now extends \ArrayIterator [\#215](https://github.com/ddeboer/imap/pull/215) ([Slamdunk](https://github.com/Slamdunk))
-- Implement imap\_mail\_copy [\#214](https://github.com/ddeboer/imap/pull/214) ([Slamdunk](https://github.com/Slamdunk))
-- Imap sort [\#213](https://github.com/ddeboer/imap/pull/213) ([Slamdunk](https://github.com/Slamdunk))
-- Increased code-coverage [\#211](https://github.com/ddeboer/imap/pull/211) ([Slamdunk](https://github.com/Slamdunk))
-- Update to PHPUnit ^6.2 [\#209](https://github.com/ddeboer/imap/pull/209) ([Slamdunk](https://github.com/Slamdunk))
-- Use specific exceptions to ease user catches [\#208](https://github.com/ddeboer/imap/pull/208) ([Slamdunk](https://github.com/Slamdunk))
-- Wrap Exception on invalid Date header [\#205](https://github.com/ddeboer/imap/pull/205) ([Slamdunk](https://github.com/Slamdunk))
-- Add tests for \#144 set flags functionalities [\#203](https://github.com/ddeboer/imap/pull/203) ([Slamdunk](https://github.com/Slamdunk))
-- Add imap\_fetchheader\(\) functionality to get raw headers [\#202](https://github.com/ddeboer/imap/pull/202) ([Slamdunk](https://github.com/Slamdunk))
-- Parse all email type headers [\#199](https://github.com/ddeboer/imap/pull/199) ([Slamdunk](https://github.com/Slamdunk))
-- Test search conditions [\#198](https://github.com/ddeboer/imap/pull/198) ([Slamdunk](https://github.com/Slamdunk))
-- Mailbox: get status [\#192](https://github.com/ddeboer/imap/pull/192) ([Slamdunk](https://github.com/Slamdunk))
-- SearchExpression is a Search\ConditionInterface [\#191](https://github.com/ddeboer/imap/pull/191) ([Slamdunk](https://github.com/Slamdunk))
-- SearchCondition: \_\_toString\(\) -\> toString\(\) [\#187](https://github.com/ddeboer/imap/pull/187) ([Slamdunk](https://github.com/Slamdunk))
-- Retain imap\_getmailboxes\(\) results [\#184](https://github.com/ddeboer/imap/pull/184) ([Slamdunk](https://github.com/Slamdunk))
-- Add type hints and return types [\#183](https://github.com/ddeboer/imap/pull/183) ([Slamdunk](https://github.com/Slamdunk))
-- Exception: increase verbosity with imap\_alerts\(\) and imap\_errors\(\) [\#182](https://github.com/ddeboer/imap/pull/182) ([Slamdunk](https://github.com/Slamdunk))
-- Add coding-standards [\#181](https://github.com/ddeboer/imap/pull/181) ([Slamdunk](https://github.com/Slamdunk))
-- Travis: re-enable code-coverage on scrutinizer [\#177](https://github.com/ddeboer/imap/pull/177) ([Slamdunk](https://github.com/Slamdunk))
-- Add .gitattributes to remove from releases unneded files [\#173](https://github.com/ddeboer/imap/pull/173) ([Slamdunk](https://github.com/Slamdunk))
-- Travis: use local Dovecot installation [\#170](https://github.com/ddeboer/imap/pull/170) ([Slamdunk](https://github.com/Slamdunk))
-- Need all Headers in string format [\#149](https://github.com/ddeboer/imap/pull/149) ([FlashWS](https://github.com/FlashWS))
-- Get raw mail [\#146](https://github.com/ddeboer/imap/pull/146) ([styxit](https://github.com/styxit))
-- add getBcc\(\), Set, Clear Flag\(\Seen, \Answered, \Flagged, \Deleted, and \Draft\), getHeadersRaw\(\) [\#144](https://github.com/ddeboer/imap/pull/144) ([trungpv93](https://github.com/trungpv93))
-
-**Fixed bugs:**
-
-- Search\Condition needs charset escaping/indication [\#190](https://github.com/ddeboer/imap/issues/190)
-- imap\_utf7\_\(encode|decode\) -\> mb\_convert\_encoding [\#185](https://github.com/ddeboer/imap/issues/185)
-- España [\#176](https://github.com/ddeboer/imap/issues/176)
-- getHeaders\(\) decode broke information [\#171](https://github.com/ddeboer/imap/issues/171)
-- Date format for date search condition [\#168](https://github.com/ddeboer/imap/issues/168)
-- Error when trying fetch messages from container [\#167](https://github.com/ddeboer/imap/issues/167)
-- Attachment encoding error [\#158](https://github.com/ddeboer/imap/issues/158)
-- getFilename\(\) is empty and no attachment, even when there is an attachment. [\#142](https://github.com/ddeboer/imap/issues/142)
-- Encoding issues [\#136](https://github.com/ddeboer/imap/issues/136)
-- URGENT: The timezone could not be found in the database [\#135](https://github.com/ddeboer/imap/issues/135)
-- Incorrect transcoding of text attachments [\#132](https://github.com/ddeboer/imap/issues/132)
-- Undefined offset  [\#123](https://github.com/ddeboer/imap/issues/123)
-- ICS file not supported as attachment [\#120](https://github.com/ddeboer/imap/issues/120)
-- Should iconv be a requirement? [\#115](https://github.com/ddeboer/imap/issues/115)
-- KeepUnseen doen't work [\#92](https://github.com/ddeboer/imap/issues/92)
-- PHP Fatal error Failed to parse time string in ddeboer/imap/src/Message.php [\#89](https://github.com/ddeboer/imap/issues/89)
-- encoding issue [\#85](https://github.com/ddeboer/imap/issues/85)
-- keepUnseen not working correctly with Hotmail [\#84](https://github.com/ddeboer/imap/issues/84)
-- Iconv Exception [\#78](https://github.com/ddeboer/imap/issues/78)
-- $message-\>getAttachments\(\) doesn't recognize some attachments [\#74](https://github.com/ddeboer/imap/issues/74)
-- Message::move\(\) doesn't work. [\#73](https://github.com/ddeboer/imap/issues/73)
-- Message\Part: part number must distinguish original message [\#223](https://github.com/ddeboer/imap/pull/223) ([Slamdunk](https://github.com/Slamdunk))
-- Recursive Embedded email body bug [\#222](https://github.com/ddeboer/imap/pull/222) ([Slamdunk](https://github.com/Slamdunk))
-- Exclude HTML from allowed attachment subtype [\#212](https://github.com/ddeboer/imap/pull/212) ([Slamdunk](https://github.com/Slamdunk))
-- Fix imap\_mail\_move behaviour and test it [\#207](https://github.com/ddeboer/imap/pull/207) ([Slamdunk](https://github.com/Slamdunk))
-- Undefined encoding: throw exception [\#197](https://github.com/ddeboer/imap/pull/197) ([Slamdunk](https://github.com/Slamdunk))
-- Message charset: mb\_convert\_encoding + aliases [\#196](https://github.com/ddeboer/imap/pull/196) ([Slamdunk](https://github.com/Slamdunk))
-- Mailbox: only UTF-8 names [\#193](https://github.com/ddeboer/imap/pull/193) ([Slamdunk](https://github.com/Slamdunk))
-- Search\Date\AbstractDate: fix format to RFC-3501 [\#189](https://github.com/ddeboer/imap/pull/189) ([Slamdunk](https://github.com/Slamdunk))
-- Travis: fix failing tests [\#172](https://github.com/ddeboer/imap/pull/172) ([Slamdunk](https://github.com/Slamdunk))
-- Return body of single-part HTML message as HTML, not text [\#101](https://github.com/ddeboer/imap/pull/101) ([joker806](https://github.com/joker806))
-- Implement "undisclosed recipients" addresses [\#86](https://github.com/ddeboer/imap/pull/86) ([darit](https://github.com/darit))
-
-**Closed issues:**
-
-- Potential memory issue with attachments [\#195](https://github.com/ddeboer/imap/issues/195)
-- Explain Message::delete [\#175](https://github.com/ddeboer/imap/issues/175)
-- Get raw message [\#161](https://github.com/ddeboer/imap/issues/161)
-- Composer install problem [\#160](https://github.com/ddeboer/imap/issues/160)
-- Transcoder not exist [\#154](https://github.com/ddeboer/imap/issues/154)
-- The library doesn't support using sort by [\#151](https://github.com/ddeboer/imap/issues/151)
-- Office 365 - Array to string conversion error [\#131](https://github.com/ddeboer/imap/issues/131)
-- Is there a method to turn a seen message into an "unseen" one ? [\#130](https://github.com/ddeboer/imap/issues/130)
-- Create mailbox [\#126](https://github.com/ddeboer/imap/issues/126)
-- Move and Delete Message not working [\#112](https://github.com/ddeboer/imap/issues/112)
-- Problem on production server [\#111](https://github.com/ddeboer/imap/issues/111)
-- Authentication failed for a Gmail account [\#109](https://github.com/ddeboer/imap/issues/109)
-- A method to run IMAP commands? [\#83](https://github.com/ddeboer/imap/issues/83)
-
-**Merged pull requests:**
-
-- Update README.md to latest develop changes [\#224](https://github.com/ddeboer/imap/pull/224) ([Slamdunk](https://github.com/Slamdunk))
-- Add Filippo Tessarotto as an author of the package [\#219](https://github.com/ddeboer/imap/pull/219) ([Slamdunk](https://github.com/Slamdunk))
-- README.md: call Connection::expunge after move and delete [\#210](https://github.com/ddeboer/imap/pull/210) ([Slamdunk](https://github.com/Slamdunk))
-- Remove misleading Mailbox::expunge\(\) [\#206](https://github.com/ddeboer/imap/pull/206) ([Slamdunk](https://github.com/Slamdunk))
-- Add CHANGELOG.md [\#194](https://github.com/ddeboer/imap/pull/194) ([Slamdunk](https://github.com/Slamdunk))
-- README.md updates [\#178](https://github.com/ddeboer/imap/pull/178) ([Slamdunk](https://github.com/Slamdunk))
-
-## [0.5.2](https://github.com/ddeboer/imap/tree/0.5.2) (2015-12-03)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.5.1...0.5.2)
-
-**Closed issues:**
-
-- $message-\>getAttachments\(\) returns null if message has no attachments [\#80](https://github.com/ddeboer/imap/issues/80)
-- Email objects visibility [\#76](https://github.com/ddeboer/imap/issues/76)
-
-**Merged pull requests:**
-
-- Fixed the keepUnseen method [\#95](https://github.com/ddeboer/imap/pull/95) ([aeyoll](https://github.com/aeyoll))
-- Mark Mailbox as countable, fix doc comments [\#91](https://github.com/ddeboer/imap/pull/91) ([krzysiekpiasecki](https://github.com/krzysiekpiasecki))
-- Message::getAttachments confirm to signature [\#82](https://github.com/ddeboer/imap/pull/82) ([boekkooi](https://github.com/boekkooi))
-- Added hasMailbox to Connection [\#81](https://github.com/ddeboer/imap/pull/81) ([boekkooi](https://github.com/boekkooi))
-- Make sure imap connection are reopened [\#79](https://github.com/ddeboer/imap/pull/79) ([joserobleda](https://github.com/joserobleda))
-
-## [0.5.1](https://github.com/ddeboer/imap/tree/0.5.1) (2015-02-01)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.5.0...0.5.1)
-
-**Closed issues:**
-
-- imap\_open error  [\#72](https://github.com/ddeboer/imap/issues/72)
-- $message-\>getAttachments\(\) does not return anything, even though a message has at least one attachment [\#71](https://github.com/ddeboer/imap/issues/71)
-- Prepare docs for 1.0 [\#69](https://github.com/ddeboer/imap/issues/69)
-- "date" header is not reliable [\#63](https://github.com/ddeboer/imap/issues/63)
-- File Attachments don't show up [\#55](https://github.com/ddeboer/imap/issues/55)
-
-**Merged pull requests:**
-
-- Add support for attachments without content disposition [\#70](https://github.com/ddeboer/imap/pull/70) ([ddeboer](https://github.com/ddeboer))
-
-## [0.5.0](https://github.com/ddeboer/imap/tree/0.5.0) (2015-01-24)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.4.0...0.5.0)
-
-**Closed issues:**
-
-- Use utf8\_encode\(\) function to encode content [\#66](https://github.com/ddeboer/imap/issues/66)
-- Please add function order by date [\#59](https://github.com/ddeboer/imap/issues/59)
-- mb\_convert\_encoding breaks code [\#57](https://github.com/ddeboer/imap/issues/57)
-- How get I getMessages but newest first ... [\#11](https://github.com/ddeboer/imap/issues/11)
-
-## [0.4.0](https://github.com/ddeboer/imap/tree/0.4.0) (2015-01-04)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.3.1...0.4.0)
-
-**Closed issues:**
-
-- Please add 6th parameter to imap\_open call [\#62](https://github.com/ddeboer/imap/issues/62)
-- Should Message::delete\(\) use the Message UID? [\#46](https://github.com/ddeboer/imap/issues/46)
-- mb\_convert\_encoding\(\): Illegal character encoding specified [\#35](https://github.com/ddeboer/imap/issues/35)
-- Deleting a message isn't working [\#30](https://github.com/ddeboer/imap/issues/30)
-- imap\_header doesn't work with message uid [\#26](https://github.com/ddeboer/imap/issues/26)
-
-**Merged pull requests:**
-
-- Added basic requirement [\#61](https://github.com/ddeboer/imap/pull/61) ([nikoskip](https://github.com/nikoskip))
-- FIX: PHP error: "Cannot declare class Ddeboer\Imap\Search\Text\Text ..." [\#58](https://github.com/ddeboer/imap/pull/58) ([racztiborzoltan](https://github.com/racztiborzoltan))
-- Message::delete sets the FT\_UID flag.  Fixes \#30 Fixes \#46 [\#54](https://github.com/ddeboer/imap/pull/54) ([ctalbot](https://github.com/ctalbot))
-- Allow binary-encoded part content [\#48](https://github.com/ddeboer/imap/pull/48) ([joker806](https://github.com/joker806))
-- Fix CS [\#47](https://github.com/ddeboer/imap/pull/47) ([xelan](https://github.com/xelan))
-- fixed typo [\#45](https://github.com/ddeboer/imap/pull/45) ([xelan](https://github.com/xelan))
-
-## [0.3.1](https://github.com/ddeboer/imap/tree/0.3.1) (2014-08-11)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.3.0...0.3.1)
-
-**Merged pull requests:**
-
-- \imap\_header dosen't work with UID [\#44](https://github.com/ddeboer/imap/pull/44) ([ysramirez](https://github.com/ysramirez))
-
-## [0.3.0](https://github.com/ddeboer/imap/tree/0.3.0) (2014-08-10)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.2...0.3.0)
-
-**Closed issues:**
-
-- please remove useless wiki [\#42](https://github.com/ddeboer/imap/issues/42)
-- Travis tests allways fail? [\#40](https://github.com/ddeboer/imap/issues/40)
-- Garbled e-mail body encoding [\#27](https://github.com/ddeboer/imap/issues/27)
-- Improve docs [\#25](https://github.com/ddeboer/imap/issues/25)
-- "undisclosed-recipients" throws error [\#23](https://github.com/ddeboer/imap/issues/23)
-
-**Merged pull requests:**
-
-- correct minor typo [\#43](https://github.com/ddeboer/imap/pull/43) ([cordoval](https://github.com/cordoval))
-- Utf-8 encode body content. [\#39](https://github.com/ddeboer/imap/pull/39) ([cmoralesweb](https://github.com/cmoralesweb))
-- Fix regex parsing the date header \(allowing multiple brackets\) [\#38](https://github.com/ddeboer/imap/pull/38) ([joker806](https://github.com/joker806))
-- Allow empty connection flags [\#34](https://github.com/ddeboer/imap/pull/34) ([joker806](https://github.com/joker806))
-- Fixed typo [\#32](https://github.com/ddeboer/imap/pull/32) ([abhinavkumar940](https://github.com/abhinavkumar940))
-
-## [0.2](https://github.com/ddeboer/imap/tree/0.2) (2013-11-24)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/0.1...0.2)
-
-## [0.1](https://github.com/ddeboer/imap/tree/0.1) (2013-11-22)
-
-[Full Changelog](https://github.com/ddeboer/imap/compare/c02d49cdb9246901bb00d211a0f2aba208f6fab6...0.1)
-
-**Closed issues:**
-
-- Prevent setting SEEN flag [\#20](https://github.com/ddeboer/imap/issues/20)
-- Add tests [\#18](https://github.com/ddeboer/imap/issues/18)
-- delete messages [\#9](https://github.com/ddeboer/imap/issues/9)
-- README is missing basic usage [\#7](https://github.com/ddeboer/imap/issues/7)
-- Subject and other texts are decoded incorrectly  [\#3](https://github.com/ddeboer/imap/issues/3)
-
-**Merged pull requests:**
-
-- also fetch inline attachments [\#24](https://github.com/ddeboer/imap/pull/24) ([kaiserlos](https://github.com/kaiserlos))
-- since leading slash is always needed [\#22](https://github.com/ddeboer/imap/pull/22) ([huglester](https://github.com/huglester))
-- Added missed createMailbox\($name\) function [\#19](https://github.com/ddeboer/imap/pull/19) ([burci](https://github.com/burci))
-- Added move and delete function to message + expunge function [\#17](https://github.com/ddeboer/imap/pull/17) ([burci](https://github.com/burci))
-- Clean up some unused variable [\#16](https://github.com/ddeboer/imap/pull/16) ([burci](https://github.com/burci))
-- Fixed mailbox encoding [\#15](https://github.com/ddeboer/imap/pull/15) ([burci](https://github.com/burci))
-- Create new mailbox [\#14](https://github.com/ddeboer/imap/pull/14) ([burci](https://github.com/burci))
-- Fixed bug in getDecodedContent with 'format=flowed' email [\#13](https://github.com/ddeboer/imap/pull/13) ([burci](https://github.com/burci))
-- Fixed date parsing for some imap servers [\#12](https://github.com/ddeboer/imap/pull/12) ([thelfensdrfer](https://github.com/thelfensdrfer))
-- Add support for more complex search expressions. [\#10](https://github.com/ddeboer/imap/pull/10) ([jamesiarmes](https://github.com/jamesiarmes))
-- Allow user to change server connection flags [\#6](https://github.com/ddeboer/imap/pull/6) ([mvar](https://github.com/mvar))
-- Improvements in EmailAddress class [\#4](https://github.com/ddeboer/imap/pull/4) ([mvar](https://github.com/mvar))
-
-
-
-\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/README.md
index 6b16183..c57ab01 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/README.md
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/README.md
@@ -1,37 +1,15 @@
-# IMAP library
+# PHP IMAP library
 
 [![Latest Stable Version](https://img.shields.io/packagist/v/ddeboer/imap.svg)](https://packagist.org/packages/ddeboer/imap)
 [![Downloads](https://img.shields.io/packagist/dt/ddeboer/imap.svg)](https://packagist.org/packages/ddeboer/imap)
 [![Integrate](https://github.com/ddeboer/imap/workflows/Integrate/badge.svg?branch=master)](https://github.com/ddeboer/imap/actions)
 [![Code Coverage](https://codecov.io/gh/ddeboer/imap/coverage.svg?branch=master)](https://codecov.io/gh/ddeboer/imap?branch=master)
 
-A PHP 7.3+ library to read and process e-mails over IMAP.
+A PHP IMAP library to read and process e-mails over IMAP protocol, built with robust Object-Oriented architecture.
 
-This library requires [IMAP](https://secure.php.net/manual/en/book.imap.php),
-[iconv](https://secure.php.net/manual/en/book.iconv.php) and
-[Multibyte String](https://secure.php.net/manual/en/book.mbstring.php) extensions installed.
-
-## Table of Contents
-
-1. [Feature Requests](#feature-requests)
-1. [Installation](#installation)
-1. [Usage](#usage)
-    1. [Connect and Authenticate](#connect-and-authenticate)
-    1. [Mailboxes](#mailboxes)
-    1. [Messages](#messages)
-        1. [Searching for Messages](#searching-for-messages)
-        1. [Unknown search criterion: OR](#unknown-search-criterion-or)
-        1. [Message Properties and Operations](#message-properties-and-operations)
-    1. [Message Attachments](#message-attachments)
-    1. [Embedded Messages](#embedded-messages)
-    1. [Timeouts](#timeouts)
-1. [Mock the library](#mock-the-library)
-1. [Running the Tests](#running-the-tests)
-    1. [Running Tests using Docker](#running-tests-using-docker)
-
-## Feature Requests
-
-[![Feature Requests](https://feathub.com/ddeboer/imap?format=svg)](https://feathub.com/ddeboer/imap)
+This library requires PHP >= 7.4 with [IMAP](https://www.php.net/manual/en/book.imap.php),
+[iconv](https://www.php.net/manual/en/book.iconv.php) and
+[Multibyte String](https://www.php.net/manual/en/book.mbstring.php) extensions installed.
 
 ## Installation
 
@@ -236,7 +214,6 @@
 ```php
 $mailbox = $connection->getMailbox('another-mailbox');
 $message->move($mailbox);
-$connection->expunge();
 ```
 
 Deleting messages:
@@ -321,40 +298,10 @@
 ```
 
 You can also copy `phpunit.xml.dist` file to a custom `phpunit.xml` and put
-these environment variables in it:
-
-```xml
-<?xml version="1.0" encoding="UTF-8"?>
-<phpunit
-    bootstrap="./vendor/autoload.php"
-    colors="true"
-    verbose="true"
->
-    <testsuites>
-        <testsuite name="ddeboer/imap">
-            <directory>./tests/</directory>
-        </testsuite>
-    </testsuites>
-    <filter>
-        <whitelist>
-            <directory suffix=".php">./src</directory>
-        </whitelist>
-    </filter>
-    <php>
-        <env name="IMAP_SERVER_NAME" value="my.imap.server.com" />
-        <env name="IMAP_SERVER_PORT" value="60993" />
-        <env name="IMAP_USERNAME" value="johndoe" />
-        <env name="IMAP_PASSWORD" value="p4ssword" />
-    </php>
-</phpunit>
-```
+these environment variables in it.
 
 **WARNING** Tests create new mailboxes without removing them.
 
-### Running Tests using Docker
-
-If you have Docker installed you can run the tests locally with the following command:
-
 ```
 $ docker-compose run tests
 ```
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/composer.json
index d56ea38..92b4a07 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/composer.json
@@ -22,23 +22,18 @@
         }
     ],
     "require": {
-        "php": "^7.3 || ^8.0",
+        "php": "^7.4 || ^8.0",
         "ext-iconv": "*",
         "ext-imap": "*",
         "ext-mbstring": "*"
     },
     "require-dev": {
-        "friendsofphp/php-cs-fixer": "^2.16.7",
-        "laminas/laminas-mail": "^2.12.3",
-        "phpstan/phpstan": "^0.12.57",
-        "phpstan/phpstan-phpunit": "^0.12.16",
-        "phpstan/phpstan-strict-rules": "^0.12.5",
-        "phpunit/phpunit": "^9.4.3"
-    },
-    "config": {
-        "platform": {
-            "php": "7.3"
-        }
+        "friendsofphp/php-cs-fixer": "^2.18.6",
+        "laminas/laminas-mail": "^2.14.0",
+        "phpstan/phpstan": "^0.12.84",
+        "phpstan/phpstan-phpunit": "^0.12.18",
+        "phpstan/phpstan-strict-rules": "^0.12.9",
+        "phpunit/phpunit": "^9.5.4"
     },
     "autoload": {
         "psr-4": {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Connection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Connection.php
index 4f9f405..d9f2bb6 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Connection.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Connection.php
@@ -9,7 +9,6 @@
 use Ddeboer\Imap\Exception\ImapGetmailboxesException;
 use Ddeboer\Imap\Exception\ImapNumMsgException;
 use Ddeboer\Imap\Exception\ImapQuotaException;
-use Ddeboer\Imap\Exception\InvalidResourceException;
 use Ddeboer\Imap\Exception\MailboxDoesNotExistException;
 
 /**
@@ -17,25 +16,16 @@
  */
 final class Connection implements ConnectionInterface
 {
+    private ImapResourceInterface $resource;
+    private string $server;
     /**
-     * @var ImapResourceInterface
+     * @var null|MailboxInterface[]
      */
-    private $resource;
-
+    private ?array $mailboxes = null;
     /**
-     * @var string
+     * @var null|array<int|string, \stdClass>
      */
-    private $server;
-
-    /**
-     * @var null|array
-     */
-    private $mailboxes;
-
-    /**
-     * @var null|array
-     */
-    private $mailboxNames;
+    private ?array $mailboxNames = null;
 
     /**
      * Constructor.
@@ -48,25 +38,16 @@
         $this->server   = $server;
     }
 
-    /**
-     * Get IMAP resource.
-     */
     public function getResource(): ImapResourceInterface
     {
         return $this->resource;
     }
 
-    /**
-     * Delete all messages marked for deletion.
-     */
     public function expunge(): bool
     {
         return \imap_expunge($this->resource->getStream());
     }
 
-    /**
-     * Close connection.
-     */
     public function close(int $flag = 0): bool
     {
         $this->resource->clearLastMailboxUsedCache();
@@ -74,9 +55,6 @@
         return \imap_close($this->resource->getStream(), $flag);
     }
 
-    /**
-     * Get Mailbox quota.
-     */
     public function getQuota(string $root = 'INBOX'): array
     {
         $errorMessage = null;
@@ -106,14 +84,10 @@
         return $return;
     }
 
-    /**
-     * Get a list of mailboxes (also known as folders).
-     *
-     * @return MailboxInterface[]
-     */
     public function getMailboxes(): array
     {
         $this->initMailboxNames();
+        \assert(null !== $this->mailboxNames);
 
         if (null === $this->mailboxes) {
             $this->mailboxes = [];
@@ -125,39 +99,24 @@
         return $this->mailboxes;
     }
 
-    /**
-     * Check that a mailbox with the given name exists.
-     *
-     * @param string $name Mailbox name
-     */
     public function hasMailbox(string $name): bool
     {
         $this->initMailboxNames();
+        \assert(null !== $this->mailboxNames);
 
         return isset($this->mailboxNames[$name]);
     }
 
-    /**
-     * Get a mailbox by its name.
-     *
-     * @param string $name Mailbox name
-     *
-     * @throws MailboxDoesNotExistException If mailbox does not exist
-     */
     public function getMailbox(string $name): MailboxInterface
     {
         if (false === $this->hasMailbox($name)) {
             throw new MailboxDoesNotExistException(\sprintf('Mailbox name "%s" does not exist', $name));
         }
+        \assert(isset($this->mailboxNames[$name]));
 
         return new Mailbox($this->resource, $name, $this->mailboxNames[$name]);
     }
 
-    /**
-     * Count number of messages not in any mailbox.
-     *
-     * @return int
-     */
     public function count()
     {
         $return = \imap_num_msg($this->resource->getStream());
@@ -169,21 +128,11 @@
         return $return;
     }
 
-    /**
-     * Check if the connection is still active.
-     *
-     * @throws InvalidResourceException If connection was closed
-     */
     public function ping(): bool
     {
         return \imap_ping($this->resource->getStream());
     }
 
-    /**
-     * Create mailbox.
-     *
-     * @throws CreateMailboxException
-     */
     public function createMailbox(string $name): MailboxInterface
     {
         if (false === \imap_createmailbox($this->resource->getStream(), $this->server . \mb_convert_encoding($name, 'UTF7-IMAP', 'UTF-8'))) {
@@ -196,11 +145,6 @@
         return $this->getMailbox($name);
     }
 
-    /**
-     * Create mailbox.
-     *
-     * @throws DeleteMailboxException
-     */
     public function deleteMailbox(MailboxInterface $mailbox): void
     {
         if (false === \imap_deletemailbox($this->resource->getStream(), $mailbox->getFullEncodedName())) {
@@ -211,9 +155,6 @@
         $this->resource->clearLastMailboxUsedCache();
     }
 
-    /**
-     * Get mailbox names.
-     */
     private function initMailboxNames(): void
     {
         if (null !== $this->mailboxNames) {
@@ -227,8 +168,9 @@
         }
 
         foreach ($mailboxesInfo as $mailboxInfo) {
-            $name                      = \mb_convert_encoding(\str_replace($this->server, '', $mailboxInfo->name), 'UTF-8', 'UTF7-IMAP');
+            $name = \mb_convert_encoding(\str_replace($this->server, '', $mailboxInfo->name), 'UTF-8', 'UTF7-IMAP');
             \assert(\is_string($name));
+
             $this->mailboxNames[$name] = $mailboxInfo;
         }
     }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ConnectionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ConnectionInterface.php
index e76077f..6289339 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ConnectionInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ConnectionInterface.php
@@ -4,6 +4,11 @@
 
 namespace Ddeboer\Imap;
 
+use Ddeboer\Imap\Exception\CreateMailboxException;
+use Ddeboer\Imap\Exception\DeleteMailboxException;
+use Ddeboer\Imap\Exception\InvalidResourceException;
+use Ddeboer\Imap\Exception\MailboxDoesNotExistException;
+
 /**
  * A connection to an IMAP server that is authenticated for a user.
  */
@@ -26,11 +31,15 @@
 
     /**
      * Check if the connection is still active.
+     *
+     * @throws InvalidResourceException If connection was closed
      */
     public function ping(): bool;
 
     /**
      * Get Mailbox quota.
+     *
+     * @return array<string, int>
      */
     public function getQuota(string $root = 'INBOX'): array;
 
@@ -52,16 +61,22 @@
      * Get a mailbox by its name.
      *
      * @param string $name Mailbox name
+     *
+     * @throws MailboxDoesNotExistException If mailbox does not exist
      */
     public function getMailbox(string $name): MailboxInterface;
 
     /**
      * Create mailbox.
+     *
+     * @throws CreateMailboxException
      */
     public function createMailbox(string $name): MailboxInterface;
 
     /**
      * Delete mailbox.
+     *
+     * @throws DeleteMailboxException
      */
     public function deleteMailbox(MailboxInterface $mailbox): void;
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Exception/AbstractException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Exception/AbstractException.php
index 26c1e58..6537a05 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Exception/AbstractException.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Exception/AbstractException.php
@@ -6,10 +6,7 @@
 
 abstract class AbstractException extends \RuntimeException
 {
-    /**
-     * @var array
-     */
-    private static $errorLabels = [
+    private const ERROR_LABELS = [
         \E_ERROR                => 'E_ERROR',
         \E_WARNING              => 'E_WARNING',
         \E_PARSE                => 'E_PARSE',
@@ -27,16 +24,11 @@
         \E_USER_DEPRECATED      => 'E_USER_DEPRECATED',
     ];
 
-    /**
-     * @param string     $message  The exception message
-     * @param int        $code     The exception code
-     * @param \Throwable $previous The previous exception
-     */
     final public function __construct(string $message, int $code = 0, \Throwable $previous = null)
     {
         $errorType = '';
-        if (isset(self::$errorLabels[$code])) {
-            $errorType = \sprintf('[%s] ', self::$errorLabels[$code]);
+        if (isset(self::ERROR_LABELS[$code])) {
+            $errorType = \sprintf('[%s] ', self::ERROR_LABELS[$code]);
         }
 
         $joinString      = "\n- ";
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResource.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResource.php
index 60c1617..123ea23 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResource.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResource.php
@@ -13,19 +13,11 @@
 final class ImapResource implements ImapResourceInterface
 {
     /**
-     * @var mixed
+     * @var resource
      */
     private $resource;
-
-    /**
-     * @var null|MailboxInterface
-     */
-    private $mailbox;
-
-    /**
-     * @var null|string
-     */
-    private static $lastMailboxUsedCache;
+    private ?MailboxInterface $mailbox           = null;
+    private static ?string $lastMailboxUsedCache = null;
 
     /**
      * Constructor.
@@ -38,13 +30,6 @@
         $this->mailbox  = $mailbox;
     }
 
-    /**
-     * Get IMAP resource stream.
-     *
-     * @throws InvalidResourceException
-     *
-     * @return resource
-     */
     public function getStream()
     {
         if (false === \is_resource($this->resource) || 'imap' !== \get_resource_type($this->resource)) {
@@ -56,9 +41,6 @@
         return $this->resource;
     }
 
-    /**
-     * Clear last mailbox used cache.
-     */
     public function clearLastMailboxUsedCache(): void
     {
         self::$lastMailboxUsedCache = null;
@@ -85,7 +67,7 @@
     /**
      * Check whether the current mailbox is open.
      *
-     * @param mixed $resource
+     * @param resource $resource
      */
     private static function isMailboxOpen(MailboxInterface $mailbox, $resource): bool
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResourceInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResourceInterface.php
index 03c16f7..cf49f6b 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResourceInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/ImapResourceInterface.php
@@ -4,11 +4,15 @@
 
 namespace Ddeboer\Imap;
 
+use Ddeboer\Imap\Exception\InvalidResourceException;
+
 interface ImapResourceInterface
 {
     /**
      * Get IMAP resource stream.
      *
+     * @throws InvalidResourceException
+     *
      * @return resource
      */
     public function getStream();
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Mailbox.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Mailbox.php
index 1544aff..2f77799 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Mailbox.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Mailbox.php
@@ -18,20 +18,9 @@
  */
 final class Mailbox implements MailboxInterface
 {
-    /**
-     * @var ImapResourceInterface
-     */
-    private $resource;
-
-    /**
-     * @var string
-     */
-    private $name;
-
-    /**
-     * @var \stdClass
-     */
-    private $info;
+    private ImapResourceInterface $resource;
+    private string $name;
+    private \stdClass $info;
 
     /**
      * Constructor.
@@ -47,17 +36,11 @@
         $this->info     = $info;
     }
 
-    /**
-     * Get mailbox decoded name.
-     */
     public function getName(): string
     {
         return $this->name;
     }
 
-    /**
-     * Get mailbox encoded path.
-     */
     public function getEncodedName(): string
     {
         /** @var string $name */
@@ -66,35 +49,21 @@
         return (string) \preg_replace('/^{.+}/', '', $name);
     }
 
-    /**
-     * Get mailbox encoded full name.
-     */
     public function getFullEncodedName(): string
     {
         return $this->info->name;
     }
 
-    /**
-     * Get mailbox attributes.
-     */
     public function getAttributes(): int
     {
         return $this->info->attributes;
     }
 
-    /**
-     * Get mailbox delimiter.
-     */
     public function getDelimiter(): string
     {
         return $this->info->delimiter;
     }
 
-    /**
-     * Get number of messages in this mailbox.
-     *
-     * @return int
-     */
     public function count()
     {
         $return = \imap_num_msg($this->resource->getStream());
@@ -106,9 +75,6 @@
         return $return;
     }
 
-    /**
-     * Get Mailbox status.
-     */
     public function getStatus(int $flags = null): \stdClass
     {
         $return = \imap_status($this->resource->getStream(), $this->getFullEncodedName(), $flags ?? \SA_ALL);
@@ -120,33 +86,16 @@
         return $return;
     }
 
-    /**
-     * Bulk Set Flag for Messages.
-     *
-     * @param string                       $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     * @param array|MessageIterator|string $numbers Message numbers
-     */
     public function setFlag(string $flag, $numbers): bool
     {
         return \imap_setflag_full($this->resource->getStream(), $this->prepareMessageIds($numbers), $flag, \ST_UID);
     }
 
-    /**
-     * Bulk Clear Flag for Messages.
-     *
-     * @param string                       $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     * @param array|MessageIterator|string $numbers Message numbers
-     */
     public function clearFlag(string $flag, $numbers): bool
     {
         return \imap_clearflag_full($this->resource->getStream(), $this->prepareMessageIds($numbers), $flag, \ST_UID);
     }
 
-    /**
-     * Get message ids.
-     *
-     * @param ConditionInterface $search Search expression (optional)
-     */
     public function getMessages(ConditionInterface $search = null, int $sortCriteria = null, bool $descending = false, string $charset = null): MessageIteratorInterface
     {
         if (null === $search) {
@@ -199,11 +148,6 @@
         return new MessageIterator($this->resource, $messageNumbers);
     }
 
-    /**
-     * Get message iterator for a sequence.
-     *
-     * @param string $sequence Message numbers
-     */
     public function getMessageSequence(string $sequence): MessageIteratorInterface
     {
         \imap_errors();
@@ -223,54 +167,38 @@
         return new MessageIterator($this->resource, $messageNumbers);
     }
 
-    /**
-     * Get a message by message number.
-     *
-     * @param int $number Message number
-     */
     public function getMessage(int $number): MessageInterface
     {
         return new Message($this->resource, $number);
     }
 
-    /**
-     * Get messages in this mailbox.
-     */
     public function getIterator(): MessageIteratorInterface
     {
         return $this->getMessages();
     }
 
-    /**
-     * Add a message to the mailbox.
-     */
     public function addMessage(string $message, string $options = null, DateTimeInterface $internalDate = null): bool
     {
         $arguments = [
             $this->resource->getStream(),
             $this->getFullEncodedName(),
             $message,
+            $options ?? '',
         ];
-        if (null !== $options) {
-            $arguments[] = $options;
-            if (null !== $internalDate) {
-                $arguments[] = $internalDate->format('d-M-Y H:i:s O');
-            }
+        if (null !== $internalDate) {
+            $arguments[] = $internalDate->format('d-M-Y H:i:s O');
         }
 
         return \imap_append(...$arguments);
     }
 
-    /**
-     * Returns a tree of threaded message for the current Mailbox.
-     */
     public function getThread(): array
     {
         \set_error_handler(static function (): bool {
             return true;
         });
 
-        /** @var array|false $tree */
+        /** @var array<string, int>|false $tree */
         $tree = \imap_thread($this->resource->getStream(), \SE_UID);
 
         \restore_error_handler();
@@ -278,29 +206,13 @@
         return false !== $tree ? $tree : [];
     }
 
-    /**
-     * Bulk move messages.
-     *
-     * @param array|MessageIterator|string $numbers Message numbers
-     * @param MailboxInterface             $mailbox Destination Mailbox to move the messages to
-     *
-     * @throws \Ddeboer\Imap\Exception\MessageMoveException
-     */
     public function move($numbers, MailboxInterface $mailbox): void
     {
-        if (!\imap_mail_move($this->resource->getStream(), $this->prepareMessageIds($numbers), $mailbox->getEncodedName(), \CP_UID)) {
+        if (!\imap_mail_copy($this->resource->getStream(), $this->prepareMessageIds($numbers), $mailbox->getEncodedName(), \CP_UID | \CP_MOVE)) {
             throw new MessageMoveException(\sprintf('Messages cannot be moved to "%s"', $mailbox->getName()));
         }
     }
 
-    /**
-     * Bulk copy messages.
-     *
-     * @param array|MessageIterator|string $numbers Message numbers
-     * @param MailboxInterface             $mailbox Destination Mailbox to copy the messages to
-     *
-     * @throws \Ddeboer\Imap\Exception\MessageCopyException
-     */
     public function copy($numbers, MailboxInterface $mailbox): void
     {
         if (!\imap_mail_copy($this->resource->getStream(), $this->prepareMessageIds($numbers), $mailbox->getEncodedName(), \CP_UID)) {
@@ -311,7 +223,7 @@
     /**
      * Prepare message ids for the use with bulk functions.
      *
-     * @param array|MessageIterator|string $messageIds Message numbers
+     * @param array<int, int|string>|MessageIterator|string $messageIds Message numbers
      */
     private function prepareMessageIds($messageIds): string
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MailboxInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MailboxInterface.php
index efe432d..067bdc2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MailboxInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MailboxInterface.php
@@ -5,10 +5,13 @@
 namespace Ddeboer\Imap;
 
 use DateTimeInterface;
+use Ddeboer\Imap\Message\PartInterface;
 use Ddeboer\Imap\Search\ConditionInterface;
 
 /**
  * An IMAP mailbox (commonly referred to as a 'folder').
+ *
+ * @extends \IteratorAggregate<int, MessageInterface>
  */
 interface MailboxInterface extends \Countable, \IteratorAggregate
 {
@@ -45,16 +48,16 @@
     /**
      * Bulk Set Flag for Messages.
      *
-     * @param string                       $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     * @param array|MessageIterator|string $numbers Message numbers
+     * @param string                                        $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
+     * @param array<int, int|string>|MessageIterator|string $numbers Message numbers
      */
     public function setFlag(string $flag, $numbers): bool;
 
     /**
      * Bulk Clear Flag for Messages.
      *
-     * @param string                       $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     * @param array|MessageIterator|string $numbers Message numbers
+     * @param string                                        $flag    \Seen, \Answered, \Flagged, \Deleted, and \Draft
+     * @param array<int, int|string>|MessageIterator|string $numbers Message numbers
      */
     public function clearFlag(string $flag, $numbers): bool;
 
@@ -76,6 +79,8 @@
      * Get a message by message number.
      *
      * @param int $number Message number
+     *
+     * @return MessageInterface<PartInterface>
      */
     public function getMessage(int $number): MessageInterface;
 
@@ -91,14 +96,16 @@
 
     /**
      * Returns a tree of threaded message for the current Mailbox.
+     *
+     * @return array<string, int>
      */
     public function getThread(): array;
 
     /**
      * Bulk move messages.
      *
-     * @param array|MessageIterator|string $numbers Message numbers
-     * @param MailboxInterface             $mailbox Destination Mailbox to move the messages to
+     * @param array<int, int|string>|MessageIterator|string $numbers Message numbers
+     * @param MailboxInterface                              $mailbox Destination Mailbox to move the messages to
      *
      * @throws \Ddeboer\Imap\Exception\MessageMoveException
      */
@@ -107,8 +114,8 @@
     /**
      * Bulk copy messages.
      *
-     * @param array|MessageIterator|string $numbers Message numbers
-     * @param MailboxInterface             $mailbox Destination Mailbox to copy the messages to
+     * @param array<int, int|string>|MessageIterator|string $numbers Message numbers
+     * @param MailboxInterface                              $mailbox Destination Mailbox to copy the messages to
      *
      * @throws \Ddeboer\Imap\Exception\MessageCopyException
      */
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message.php
index 843ce61..1a9d16e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message.php
@@ -18,35 +18,12 @@
  */
 final class Message extends Message\AbstractMessage implements MessageInterface
 {
-    /**
-     * @var bool
-     */
-    private $messageNumberVerified = false;
-
-    /**
-     * @var int
-     */
-    private $imapMsgNo = 0;
-
-    /**
-     * @var bool
-     */
-    private $structureLoaded = false;
-
-    /**
-     * @var null|Message\Headers
-     */
-    private $headers;
-
-    /**
-     * @var null|string
-     */
-    private $rawHeaders;
-
-    /**
-     * @var null|string
-     */
-    private $rawMessage;
+    private bool $messageNumberVerified = false;
+    private int $imapMsgNo              = 0;
+    private bool $structureLoaded       = false;
+    private ?Message\Headers $headers   = null;
+    private ?string $rawHeaders         = null;
+    private ?string $rawMessage         = null;
 
     /**
      * Constructor.
@@ -59,9 +36,6 @@
         parent::__construct($resource, $messageNumber, '1', new \stdClass());
     }
 
-    /**
-     * Lazy load structure.
-     */
     protected function lazyLoadStructure(): void
     {
         if (true === $this->structureLoaded) {
@@ -99,9 +73,6 @@
         $this->setStructure($structure);
     }
 
-    /**
-     * Ensure message exists.
-     */
     protected function assertMessageExists(int $messageNumber): void
     {
         if (true === $this->messageNumberVerified) {
@@ -138,9 +109,6 @@
         return $this->imapMsgNo;
     }
 
-    /**
-     * Get raw message headers.
-     */
     public function getRawHeaders(): string
     {
         if (null === $this->rawHeaders) {
@@ -156,11 +124,6 @@
         return $this->rawHeaders;
     }
 
-    /**
-     * Get the raw message, including all headers, parts, etc. unencoded and unparsed.
-     *
-     * @return string the raw message
-     */
     public function getRawMessage(): string
     {
         if (null === $this->rawMessage) {
@@ -170,9 +133,6 @@
         return $this->rawMessage;
     }
 
-    /**
-     * Get message headers.
-     */
     public function getHeaders(): Message\Headers
     {
         if (null === $this->headers) {
@@ -198,67 +158,44 @@
         $this->headers = null;
     }
 
-    /**
-     * Get message recent flag value (from headers).
-     */
     public function isRecent(): ?string
     {
-        return $this->getHeaders()->get('recent');
+        $recent = $this->getHeaders()->get('recent');
+        \assert(null === $recent || \is_string($recent));
+
+        return $recent;
     }
 
-    /**
-     * Get message unseen flag value (from headers).
-     */
     public function isUnseen(): bool
     {
         return 'U' === $this->getHeaders()->get('unseen');
     }
 
-    /**
-     * Get message flagged flag value (from headers).
-     */
     public function isFlagged(): bool
     {
         return 'F' === $this->getHeaders()->get('flagged');
     }
 
-    /**
-     * Get message answered flag value (from headers).
-     */
     public function isAnswered(): bool
     {
         return 'A' === $this->getHeaders()->get('answered');
     }
 
-    /**
-     * Get message deleted flag value (from headers).
-     */
     public function isDeleted(): bool
     {
         return 'D' === $this->getHeaders()->get('deleted');
     }
 
-    /**
-     * Get message draft flag value (from headers).
-     */
     public function isDraft(): bool
     {
         return 'X' === $this->getHeaders()->get('draft');
     }
 
-    /**
-     * Has the message been marked as read?
-     */
     public function isSeen(): bool
     {
         return 'N' !== $this->getHeaders()->get('recent') && 'U' !== $this->getHeaders()->get('unseen');
     }
 
-    /**
-     * Mark message as seen.
-     *
-     * @deprecated since version 1.1, to be removed in 2.0
-     */
     public function maskAsSeen(): bool
     {
         \trigger_error(\sprintf('%s is deprecated and will be removed in 2.0. Use %s::markAsSeen instead.', __METHOD__, __CLASS__), \E_USER_DEPRECATED);
@@ -266,19 +203,11 @@
         return $this->markAsSeen();
     }
 
-    /**
-     * Mark message as seen.
-     */
     public function markAsSeen(): bool
     {
         return $this->setFlag('\\Seen');
     }
 
-    /**
-     * Move message to another mailbox.
-     *
-     * @throws MessageCopyException
-     */
     public function copy(MailboxInterface $mailbox): void
     {
         // 'deleted' header changed, force to reload headers, would be better to set deleted flag to true on header
@@ -289,11 +218,6 @@
         }
     }
 
-    /**
-     * Move message to another mailbox.
-     *
-     * @throws MessageMoveException
-     */
     public function move(MailboxInterface $mailbox): void
     {
         // 'deleted' header changed, force to reload headers, would be better to set deleted flag to true on header
@@ -304,11 +228,6 @@
         }
     }
 
-    /**
-     * Delete message.
-     *
-     * @throws MessageDeleteException
-     */
     public function delete(): void
     {
         // 'deleted' header changed, force to reload headers, would be better to set deleted flag to true on header
@@ -319,11 +238,6 @@
         }
     }
 
-    /**
-     * Undelete message.
-     *
-     * @throws MessageUndeleteException
-     */
     public function undelete(): void
     {
         // 'deleted' header changed, force to reload headers, would be better to set deleted flag to false on header
@@ -333,11 +247,6 @@
         }
     }
 
-    /**
-     * Set Flag Message.
-     *
-     * @param string $flag \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     */
     public function setFlag(string $flag): bool
     {
         $result = \imap_setflag_full($this->resource->getStream(), (string) $this->getNumber(), $flag, \ST_UID);
@@ -347,11 +256,6 @@
         return $result;
     }
 
-    /**
-     * Clear Flag Message.
-     *
-     * @param string $flag \Seen, \Answered, \Flagged, \Deleted, and \Draft
-     */
     public function clearFlag(string $flag): bool
     {
         $result = \imap_clearflag_full($this->resource->getStream(), (string) $this->getNumber(), $flag, \ST_UID);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractMessage.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractMessage.php
index 5d67e90..0f022cc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractMessage.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractMessage.php
@@ -9,9 +9,9 @@
 abstract class AbstractMessage extends AbstractPart
 {
     /**
-     * @var null|array
+     * @var null|Attachment[]
      */
-    private $attachments;
+    private ?array $attachments = null;
 
     /**
      * Get message headers.
@@ -25,7 +25,10 @@
      */
     final public function getId(): ?string
     {
-        return $this->getHeaders()->get('message_id');
+        $messageId = $this->getHeaders()->get('message_id');
+        \assert(null === $messageId || \is_string($messageId));
+
+        return $messageId;
     }
 
     /**
@@ -34,6 +37,7 @@
     final public function getFrom(): ?EmailAddress
     {
         $from = $this->getHeaders()->get('from');
+        \assert(null === $from || \is_array($from));
 
         return null !== $from ? $this->decodeEmailAddress($from[0]) : null;
     }
@@ -45,7 +49,10 @@
      */
     final public function getTo(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('to') ?: []);
+        $emails = $this->getHeaders()->get('to');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -55,7 +62,10 @@
      */
     final public function getCc(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('cc') ?: []);
+        $emails = $this->getHeaders()->get('cc');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -65,7 +75,10 @@
      */
     final public function getBcc(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('bcc') ?: []);
+        $emails = $this->getHeaders()->get('bcc');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -75,7 +88,10 @@
      */
     final public function getReplyTo(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('reply_to') ?: []);
+        $emails = $this->getHeaders()->get('reply_to');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -85,7 +101,10 @@
      */
     final public function getSender(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('sender') ?: []);
+        $emails = $this->getHeaders()->get('sender');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -95,7 +114,10 @@
      */
     final public function getReturnPath(): array
     {
-        return $this->decodeEmailAddresses($this->getHeaders()->get('return_path') ?: []);
+        $emails = $this->getHeaders()->get('return_path');
+        \assert(null === $emails || \is_array($emails));
+
+        return $this->decodeEmailAddresses($emails ?? []);
     }
 
     /**
@@ -137,7 +159,10 @@
      */
     final public function getSize()
     {
-        return $this->getHeaders()->get('size');
+        $size = $this->getHeaders()->get('size');
+        \assert(null === $size || \is_int($size) || \is_string($size));
+
+        return $size;
     }
 
     /**
@@ -145,25 +170,34 @@
      */
     final public function getSubject(): ?string
     {
-        return $this->getHeaders()->get('subject');
+        $subject = $this->getHeaders()->get('subject');
+        \assert(null === $subject || \is_string($subject));
+
+        return $subject;
     }
 
     /**
      * Get message In-Reply-To (from headers).
+     *
+     * @return string[]
      */
     final public function getInReplyTo(): array
     {
         $inReplyTo = $this->getHeaders()->get('in_reply_to');
+        \assert(null === $inReplyTo || \is_string($inReplyTo));
 
         return null !== $inReplyTo ? \explode(' ', $inReplyTo) : [];
     }
 
     /**
      * Get message References (from headers).
+     *
+     * @return string[]
      */
     final public function getReferences(): array
     {
         $references = $this->getHeaders()->get('references');
+        \assert(null === $references || \is_string($references));
 
         return null !== $references ? \explode(' ', $references) : [];
     }
@@ -222,6 +256,11 @@
         return $this->attachments;
     }
 
+    /**
+     * @param PartInterface<PartInterface> $part
+     *
+     * @return Attachment[]
+     */
     private static function gatherAttachments(PartInterface $part): array
     {
         $attachments = [];
@@ -247,6 +286,8 @@
 
     /**
      * @param \stdClass[] $addresses
+     *
+     * @return EmailAddress[]
      */
     private function decodeEmailAddresses(array $addresses): array
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractPart.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractPart.php
index ab13eb0..0ab0ca5 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractPart.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AbstractPart.php
@@ -14,95 +14,7 @@
  */
 abstract class AbstractPart implements PartInterface
 {
-    /**
-     * @var ImapResourceInterface
-     */
-    protected $resource;
-
-    /**
-     * @var bool
-     */
-    private $structureParsed = false;
-
-    /**
-     * @var array
-     */
-    private $parts = [];
-
-    /**
-     * @var string
-     */
-    private $partNumber;
-
-    /**
-     * @var int
-     */
-    private $messageNumber;
-
-    /**
-     * @var \stdClass
-     */
-    private $structure;
-
-    /**
-     * @var Parameters
-     */
-    private $parameters;
-
-    /**
-     * @var null|string
-     */
-    private $type;
-
-    /**
-     * @var null|string
-     */
-    private $subtype;
-
-    /**
-     * @var null|string
-     */
-    private $encoding;
-
-    /**
-     * @var null|string
-     */
-    private $disposition;
-
-    /**
-     * @var null|string
-     */
-    private $description;
-
-    /**
-     * @var null|string
-     */
-    private $bytes;
-
-    /**
-     * @var null|string
-     */
-    private $lines;
-
-    /**
-     * @var null|string
-     */
-    private $content;
-
-    /**
-     * @var null|string
-     */
-    private $decodedContent;
-
-    /**
-     * @var int
-     */
-    private $key = 0;
-
-    /**
-     * @var array
-     */
-    private static $typesMap = [
+    private const TYPES_MAP = [
         \TYPETEXT        => self::TYPE_TEXT,
         \TYPEMULTIPART   => self::TYPE_MULTIPART,
         \TYPEMESSAGE     => self::TYPE_MESSAGE,
@@ -114,10 +26,7 @@
         \TYPEOTHER       => self::TYPE_OTHER,
     ];
 
-    /**
-     * @var array
-     */
-    private static $encodingsMap = [
+    private const ENCODINGS_MAP = [
         \ENC7BIT            => self::ENCODING_7BIT,
         \ENC8BIT            => self::ENCODING_8BIT,
         \ENCBINARY          => self::ENCODING_BINARY,
@@ -125,16 +34,35 @@
         \ENCQUOTEDPRINTABLE => self::ENCODING_QUOTED_PRINTABLE,
     ];
 
-    /**
-     * @var array
-     */
-    private static $attachmentKeys = [
+    private const ATTACHMENT_KEYS = [
         'name'      => true,
         'filename'  => true,
         'name*'     => true,
         'filename*' => true,
     ];
 
+    protected ImapResourceInterface $resource;
+    private bool $structureParsed = false;
+    /**
+     * @var AbstractPart[]
+     */
+    private array $parts = [];
+    private string $partNumber;
+    private int $messageNumber;
+    private \stdClass $structure;
+    private Parameters $parameters;
+    private ?string $type        = null;
+    private ?string $subtype     = null;
+    private ?string $encoding    = null;
+    private ?string $disposition = null;
+    private ?string $description = null;
+    /** @var null|int|string */
+    private $bytes;
+    private ?string $lines          = null;
+    private ?string $content        = null;
+    private ?string $decodedContent = null;
+    private int $key                = 0;
+
     /**
      * Constructor.
      *
@@ -155,9 +83,6 @@
         $this->setStructure($structure);
     }
 
-    /**
-     * Get message number (from headers).
-     */
     final public function getNumber(): int
     {
         $this->assertMessageExists($this->messageNumber);
@@ -180,9 +105,6 @@
         $this->structure = $structure;
     }
 
-    /**
-     * Part structure.
-     */
     final public function getStructure(): \stdClass
     {
         $this->lazyLoadStructure();
@@ -197,9 +119,6 @@
     {
     }
 
-    /**
-     * Part parameters.
-     */
     final public function getParameters(): Parameters
     {
         $this->lazyParseStructure();
@@ -207,19 +126,16 @@
         return $this->parameters;
     }
 
-    /**
-     * Part charset.
-     */
     final public function getCharset(): ?string
     {
         $this->lazyParseStructure();
 
-        return $this->parameters->get('charset') ?: null;
+        $charset = $this->parameters->get('charset');
+        \assert(null === $charset || \is_string($charset));
+
+        return '' !== $charset ? $charset : null;
     }
 
-    /**
-     * Part type.
-     */
     final public function getType(): ?string
     {
         $this->lazyParseStructure();
@@ -227,9 +143,6 @@
         return $this->type;
     }
 
-    /**
-     * Part subtype.
-     */
     final public function getSubtype(): ?string
     {
         $this->lazyParseStructure();
@@ -237,9 +150,6 @@
         return $this->subtype;
     }
 
-    /**
-     * Part encoding.
-     */
     final public function getEncoding(): ?string
     {
         $this->lazyParseStructure();
@@ -247,9 +157,6 @@
         return $this->encoding;
     }
 
-    /**
-     * Part disposition.
-     */
     final public function getDisposition(): ?string
     {
         $this->lazyParseStructure();
@@ -257,9 +164,6 @@
         return $this->disposition;
     }
 
-    /**
-     * Part description.
-     */
     final public function getDescription(): ?string
     {
         $this->lazyParseStructure();
@@ -267,11 +171,6 @@
         return $this->description;
     }
 
-    /**
-     * Part bytes.
-     *
-     * @return null|int|string
-     */
     final public function getBytes()
     {
         $this->lazyParseStructure();
@@ -279,9 +178,6 @@
         return $this->bytes;
     }
 
-    /**
-     * Part lines.
-     */
     final public function getLines(): ?string
     {
         $this->lazyParseStructure();
@@ -289,9 +185,6 @@
         return $this->lines;
     }
 
-    /**
-     * Get raw part content.
-     */
     final public function getContent(): string
     {
         if (null === $this->content) {
@@ -309,17 +202,11 @@
         return $this->partNumber;
     }
 
-    /**
-     * Get part number.
-     */
     final public function getPartNumber(): string
     {
         return $this->partNumber;
     }
 
-    /**
-     * Get decoded part content.
-     */
     final public function getDecodedContent(): string
     {
         if (null === $this->decodedContent) {
@@ -369,11 +256,6 @@
         return $return;
     }
 
-    /**
-     * Get an array of all parts for this message.
-     *
-     * @return PartInterface[]
-     */
     final public function getParts(): array
     {
         $this->lazyParseStructure();
@@ -393,21 +275,11 @@
         return $this->parts[$this->key];
     }
 
-    /**
-     * Get current child part.
-     *
-     * @return \RecursiveIterator
-     */
     final public function getChildren()
     {
         return $this->current();
     }
 
-    /**
-     * Get current child part.
-     *
-     * @return bool
-     */
     final public function hasChildren()
     {
         $this->lazyParseStructure();
@@ -416,8 +288,6 @@
     }
 
     /**
-     * Get current part key.
-     *
      * @return int
      */
     final public function key()
@@ -425,31 +295,16 @@
         return $this->key;
     }
 
-    /**
-     * Move to next part.
-     *
-     * @return void
-     */
     final public function next()
     {
         ++$this->key;
     }
 
-    /**
-     * Reset part key.
-     *
-     * @return void
-     */
     final public function rewind()
     {
         $this->key = 0;
     }
 
-    /**
-     * Check if current part is a valid one.
-     *
-     * @return bool
-     */
     final public function valid()
     {
         $this->lazyParseStructure();
@@ -469,10 +324,10 @@
 
         $this->lazyLoadStructure();
 
-        $this->type = self::$typesMap[$this->structure->type] ?? self::TYPE_UNKNOWN;
+        $this->type = self::TYPES_MAP[$this->structure->type] ?? self::TYPE_UNKNOWN;
 
         // In our context, \ENCOTHER is as useful as an unknown encoding
-        $this->encoding = self::$encodingsMap[$this->structure->encoding] ?? self::ENCODING_UNKNOWN;
+        $this->encoding = self::ENCODINGS_MAP[$this->structure->encoding] ?? self::ENCODING_UNKNOWN;
         if (isset($this->structure->subtype)) {
             $this->subtype = $this->structure->subtype;
         }
@@ -527,7 +382,7 @@
      */
     private static function isAttachment(\stdClass $part): bool
     {
-        if (isset(self::$typesMap[$part->type]) && self::TYPE_MULTIPART === self::$typesMap[$part->type]) {
+        if (isset(self::TYPES_MAP[$part->type]) && self::TYPE_MULTIPART === self::TYPES_MAP[$part->type]) {
             return false;
         }
 
@@ -549,7 +404,7 @@
         // Attachment without Content-Disposition header
         if ($part->ifparameters) {
             foreach ($part->parameters as $parameter) {
-                if (isset(self::$attachmentKeys[\strtolower($parameter->attribute)])) {
+                if (isset(self::ATTACHMENT_KEYS[\strtolower($parameter->attribute)])) {
                     return true;
                 }
             }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Attachment.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Attachment.php
index bd76769..b134b8d 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Attachment.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Attachment.php
@@ -11,43 +11,33 @@
  */
 final class Attachment extends AbstractPart implements AttachmentInterface
 {
-    /**
-     * Get attachment filename.
-     */
     public function getFilename(): ?string
     {
-        return $this->getParameters()->get('filename')
-            ?: $this->getParameters()->get('name');
+        $filename = $this->getParameters()->get('filename');
+        if (null === $filename || '' === $filename) {
+            $filename = $this->getParameters()->get('name');
+        }
+        \assert(null === $filename || \is_string($filename));
+
+        return $filename;
     }
 
-    /**
-     * Get attachment file size.
-     *
-     * @return null|int Number of bytes
-     */
     public function getSize()
     {
         $size = $this->getParameters()->get('size');
         if (\is_numeric($size)) {
             $size = (int) $size;
         }
+        \assert(null === $size || \is_int($size));
 
         return $size;
     }
 
-    /**
-     * Is this attachment also an Embedded Message?
-     */
     public function isEmbeddedMessage(): bool
     {
         return self::TYPE_MESSAGE === $this->getType();
     }
 
-    /**
-     * Return embedded message.
-     *
-     * @throws NotEmbeddedMessageException
-     */
     public function getEmbeddedMessage(): EmbeddedMessageInterface
     {
         if (!$this->isEmbeddedMessage()) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AttachmentInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AttachmentInterface.php
index 0d20f44..286e188 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AttachmentInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/AttachmentInterface.php
@@ -4,6 +4,8 @@
 
 namespace Ddeboer\Imap\Message;
 
+use Ddeboer\Imap\Exception\NotEmbeddedMessageException;
+
 /**
  * An e-mail attachment.
  */
@@ -28,6 +30,10 @@
 
     /**
      * Return embedded message.
+     *
+     * @throws NotEmbeddedMessageException
+     *
+     * @return EmbeddedMessageInterface<PartInterface>
      */
     public function getEmbeddedMessage(): EmbeddedMessageInterface;
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/BasicMessageInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/BasicMessageInterface.php
index 20e6b1a..83dbd17 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/BasicMessageInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/BasicMessageInterface.php
@@ -96,11 +96,15 @@
 
     /**
      * Get message In-Reply-To (from headers).
+     *
+     * @return string[]
      */
     public function getInReplyTo(): array;
 
     /**
      * Get message References (from headers).
+     *
+     * @return string[]
      */
     public function getReferences(): array;
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmailAddress.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmailAddress.php
index b88e0f9..9f60fb1 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmailAddress.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmailAddress.php
@@ -9,25 +9,10 @@
  */
 final class EmailAddress
 {
-    /**
-     * @var string
-     */
-    private $mailbox;
-
-    /**
-     * @var null|string
-     */
-    private $hostname;
-
-    /**
-     * @var null|string
-     */
-    private $name;
-
-    /**
-     * @var null|string
-     */
-    private $address;
+    private string $mailbox;
+    private ?string $hostname;
+    private ?string $name;
+    private ?string $address;
 
     public function __construct(string $mailbox, string $hostname = null, string $name = null)
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmbeddedMessage.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmbeddedMessage.php
index 243cff6..20d9715 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmbeddedMessage.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/EmbeddedMessage.php
@@ -6,24 +6,10 @@
 
 final class EmbeddedMessage extends AbstractMessage implements EmbeddedMessageInterface
 {
-    /**
-     * @var null|Headers
-     */
-    private $headers;
+    private ?Headers $headers   = null;
+    private ?string $rawHeaders = null;
+    private ?string $rawMessage = null;
 
-    /**
-     * @var null|string
-     */
-    private $rawHeaders;
-
-    /**
-     * @var null|string
-     */
-    private $rawMessage;
-
-    /**
-     * Get message headers.
-     */
     public function getHeaders(): Headers
     {
         if (null === $this->headers) {
@@ -33,9 +19,6 @@
         return $this->headers;
     }
 
-    /**
-     * Get raw message headers.
-     */
     public function getRawHeaders(): string
     {
         if (null === $this->rawHeaders) {
@@ -46,11 +29,6 @@
         return $this->rawHeaders;
     }
 
-    /**
-     * Get the raw message, including all headers, parts, etc. unencoded and unparsed.
-     *
-     * @return string the raw message
-     */
     public function getRawMessage(): string
     {
         if (null === $this->rawMessage) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Headers.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Headers.php
index f76fec3..0dc6352 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Headers.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Headers.php
@@ -4,14 +4,8 @@
 
 namespace Ddeboer\Imap\Message;
 
-/**
- * Collection of message headers.
- */
 final class Headers extends Parameters
 {
-    /**
-     * Constructor.
-     */
     public function __construct(\stdClass $headers)
     {
         parent::__construct();
@@ -27,7 +21,7 @@
     /**
      * Get header.
      *
-     * @return mixed
+     * @return null|int|\stdClass[]|string
      */
     public function get(string $key)
     {
@@ -37,14 +31,16 @@
     /**
      * Parse header.
      *
-     * @param mixed $value
+     * @param int|\stdClass[]|string $value
      *
-     * @return mixed
+     * @return int|\stdClass[]|string
      */
     private function parseHeader(string $key, $value)
     {
         switch ($key) {
             case 'msgno':
+                \assert(\is_string($value));
+
                 return (int) $value;
             case 'from':
             case 'to':
@@ -53,6 +49,7 @@
             case 'reply_to':
             case 'sender':
             case 'return_path':
+                \assert(\is_array($value));
                 /** @var \stdClass $address */
                 foreach ($value as $address) {
                     if (isset($address->mailbox)) {
@@ -64,6 +61,8 @@
                 return $value;
             case 'date':
             case 'subject':
+                \assert(\is_string($value));
+
                 return $this->decode($value);
         }
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Parameters.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Parameters.php
index 2f7d8a1..37ed816 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Parameters.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Parameters.php
@@ -4,23 +4,22 @@
 
 namespace Ddeboer\Imap\Message;
 
+/**
+ * @extends \ArrayIterator<int|string, int|string|\stdClass[]>
+ */
 class Parameters extends \ArrayIterator
 {
     /**
-     * @var array
+     * @var array<string, string>
      */
-    private static $attachmentCustomKeys = [
+    private static array $attachmentCustomKeys = [
         'name*'     => 'name',
         'filename*' => 'filename',
     ];
 
-    public function __construct(array $parameters = [])
-    {
-        parent::__construct();
-
-        $this->add($parameters);
-    }
-
+    /**
+     * @param \stdClass[] $parameters
+     */
     public function add(array $parameters = []): void
     {
         foreach ($parameters as $parameter) {
@@ -34,16 +33,13 @@
     }
 
     /**
-     * @return mixed
+     * @return null|int|\stdClass[]|string
      */
     public function get(string $key)
     {
         return $this[$key] ?? null;
     }
 
-    /**
-     * Decode value.
-     */
     final protected function decode(string $value): string
     {
         $parts = \imap_mime_header_decode($value);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Transcoder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Transcoder.php
index ee02a15..bd439e0 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Transcoder.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Message/Transcoder.php
@@ -9,14 +9,12 @@
 final class Transcoder
 {
     /**
-     * @var array
-     *
      * @see https://encoding.spec.whatwg.org/#encodings
      * @see https://dxr.mozilla.org/mozilla-central/source/dom/encoding/labelsencodings.properties
      * @see https://dxr.mozilla.org/mozilla1.9.1/source/intl/uconv/src/charsetalias.properties
      * @see https://msdn.microsoft.com/en-us/library/cc194829.aspx
      */
-    private static $charsetAliases = [
+    private const CHARSET_ALIASES = [
         '128'                       => 'Shift_JIS',
         '129'                       => 'EUC-KR',
         '134'                       => 'GB2312',
@@ -252,6 +250,7 @@
         'x-iso-10646-ucs-2-le'      => 'UTF-16LE',
         'x-iso-10646-ucs-4-be'      => 'UTF-32BE',
         'x-iso-10646-ucs-4-le'      => 'UTF-32LE',
+        'x-mac-ce'                  => 'windows-1250',
         'x-sjis'                    => 'Shift_JIS',
         'x-unicode-2-0-utf-7'       => 'UTF-7',
         'x-x-big5'                  => 'Big5',
@@ -282,8 +281,8 @@
 
         $originalFromCharset  = $fromCharset;
         $lowercaseFromCharset = \strtolower($fromCharset);
-        if (isset(self::$charsetAliases[$lowercaseFromCharset])) {
-            $fromCharset = self::$charsetAliases[$lowercaseFromCharset];
+        if (isset(self::CHARSET_ALIASES[$lowercaseFromCharset])) {
+            $fromCharset = self::CHARSET_ALIASES[$lowercaseFromCharset];
         }
 
         \set_error_handler(static function (): bool {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageInterface.php
index eda8ab6..e8fe5f7 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageInterface.php
@@ -4,6 +4,11 @@
 
 namespace Ddeboer\Imap;
 
+use Ddeboer\Imap\Exception\MessageCopyException;
+use Ddeboer\Imap\Exception\MessageDeleteException;
+use Ddeboer\Imap\Exception\MessageMoveException;
+use Ddeboer\Imap\Exception\MessageUndeleteException;
+
 /**
  * An IMAP message (e-mail).
  */
@@ -63,21 +68,29 @@
 
     /**
      * Move message to another mailbox.
+     *
+     * @throws MessageCopyException
      */
     public function copy(MailboxInterface $mailbox): void;
 
     /**
      * Move message to another mailbox.
+     *
+     * @throws MessageMoveException
      */
     public function move(MailboxInterface $mailbox): void;
 
     /**
      * Delete message.
+     *
+     * @throws MessageDeleteException
      */
     public function delete(): void;
 
     /**
      * Undelete message.
+     *
+     * @throws MessageUndeleteException
      */
     public function undelete(): void;
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIterator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIterator.php
index c617478..48d87ee 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIterator.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIterator.php
@@ -4,18 +4,20 @@
 
 namespace Ddeboer\Imap;
 
+use Ddeboer\Imap\Message\PartInterface;
+
+/**
+ * @extends \ArrayIterator<int, MessageInterface>
+ */
 final class MessageIterator extends \ArrayIterator implements MessageIteratorInterface
 {
-    /**
-     * @var ImapResourceInterface
-     */
-    private $resource;
+    private ImapResourceInterface $resource;
 
     /**
      * Constructor.
      *
      * @param ImapResourceInterface $resource       IMAP resource
-     * @param array                 $messageNumbers Array of message numbers
+     * @param int[]                 $messageNumbers Array of message numbers
      */
     public function __construct(ImapResourceInterface $resource, array $messageNumbers)
     {
@@ -26,6 +28,8 @@
 
     /**
      * Get current message.
+     *
+     * @return MessageInterface<PartInterface>
      */
     public function current(): MessageInterface
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIteratorInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIteratorInterface.php
index a9d7988..36a7943 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIteratorInterface.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/MessageIteratorInterface.php
@@ -4,10 +4,17 @@
 
 namespace Ddeboer\Imap;
 
+use Ddeboer\Imap\Message\PartInterface;
+
+/**
+ * @extends \Iterator<MessageInterface>
+ */
 interface MessageIteratorInterface extends \Iterator
 {
     /**
      * Get current message.
+     *
+     * @return MessageInterface<PartInterface>
      */
     public function current(): MessageInterface;
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractDate.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractDate.php
index cdd7312..61bd05e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractDate.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractDate.php
@@ -13,17 +13,13 @@
 {
     /**
      * Format for dates to be sent to the IMAP server.
-     *
-     * @var string
      */
-    private $dateFormat;
+    private string $dateFormat;
 
     /**
      * The date to be used for the condition.
-     *
-     * @var DateTimeInterface
      */
-    private $date;
+    private DateTimeInterface $date;
 
     /**
      * Constructor.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractText.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractText.php
index 69b2516..8b605ce 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractText.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/AbstractText.php
@@ -12,10 +12,8 @@
 {
     /**
      * Text to be used for the condition.
-     *
-     * @var string
      */
-    private $text;
+    private string $text;
 
     /**
      * Constructor.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/LogicalOperator/OrConditions.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/LogicalOperator/OrConditions.php
index bfebddd..01e7d86 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/LogicalOperator/OrConditions.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/LogicalOperator/OrConditions.php
@@ -15,10 +15,13 @@
     /**
      * The conditions that together represent the expression.
      *
-     * @var array
+     * @var ConditionInterface[]
      */
-    private $conditions = [];
+    private array $conditions = [];
 
+    /**
+     * @param ConditionInterface[] $conditions
+     */
     public function __construct(array $conditions)
     {
         foreach ($conditions as $condition) {
@@ -30,6 +33,8 @@
      * Adds a new condition to the expression.
      *
      * @param ConditionInterface $condition the condition to be added
+     *
+     * @return void
      */
     private function addCondition(ConditionInterface $condition)
     {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/RawExpression.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/RawExpression.php
index cc6a465..deda65d 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/RawExpression.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Search/RawExpression.php
@@ -11,10 +11,8 @@
 {
     /**
      * Text to be used for the condition.
-     *
-     * @var string
      */
-    private $expression;
+    private string $expression;
 
     /**
      * @param string $expression text for the condition
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/SearchExpression.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/SearchExpression.php
index e89d49e..db95531 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/SearchExpression.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/SearchExpression.php
@@ -14,9 +14,9 @@
     /**
      * The conditions that together represent the expression.
      *
-     * @var array
+     * @var ConditionInterface[]
      */
-    private $conditions = [];
+    private array $conditions = [];
 
     /**
      * Adds a new condition to the expression.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Server.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Server.php
index 7412f00..41a953d 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Server.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Server.php
@@ -12,46 +12,26 @@
  */
 final class Server implements ServerInterface
 {
+    private string $hostname;
+    private string $port;
+    private string $flags;
     /**
-     * @var string Internet domain name or bracketed IP address of server
+     * @var mixed[]
      */
-    private $hostname;
-
-    /**
-     * @var string TCP port number
-     */
-    private $port;
-
-    /**
-     * @var string Optional flags
-     */
-    private $flags;
-
-    /**
-     * @var array
-     */
-    private $parameters;
-
-    /**
-     * @var int Connection options
-     */
-    private $options;
-
-    /**
-     * @var int Retries number
-     */
-    private $retries;
+    private array $parameters;
+    private int $options;
+    private int $retries;
 
     /**
      * Constructor.
      *
-     * @param string $hostname   Internet domain name or bracketed IP address
-     *                           of server
-     * @param string $port       TCP port number
-     * @param string $flags      Optional flags
-     * @param array  $parameters Connection parameters
-     * @param int    $options    Connection options
-     * @param int    $retries    Retries number
+     * @param string  $hostname   Internet domain name or bracketed IP address
+     *                            of server
+     * @param string  $port       TCP port number
+     * @param string  $flags      Optional flags
+     * @param mixed[] $parameters Connection parameters
+     * @param int     $options    Connection options
+     * @param int     $retries    Retries number
      */
     public function __construct(
         string $hostname,
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Test/RawMessageIterator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Test/RawMessageIterator.php
index 08500b6..b895f8a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Test/RawMessageIterator.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/ddeboer/imap/src/Test/RawMessageIterator.php
@@ -4,14 +4,20 @@
 
 namespace Ddeboer\Imap\Test;
 
+use Ddeboer\Imap\Message\PartInterface;
 use Ddeboer\Imap\MessageInterface;
 use Ddeboer\Imap\MessageIteratorInterface;
 
 /**
  * A MessageIterator to be used in a mocked environment.
+ *
+ * @extends \ArrayIterator<int, MessageInterface>
  */
 final class RawMessageIterator extends \ArrayIterator implements MessageIteratorInterface
 {
+    /**
+     * @return MessageInterface<PartInterface>
+     */
     public function current(): MessageInterface
     {
         return parent::current();
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitattributes b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitattributes
new file mode 100644
index 0000000..2a0e9d2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitattributes
@@ -0,0 +1 @@
+tests/ export-ignore
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/FUNDING.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/FUNDING.yml
new file mode 100644
index 0000000..ad129a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/FUNDING.yml
@@ -0,0 +1,3 @@
+# These are supported funding model platforms
+
+github: [stevebauman]
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/bug_report.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 0000000..a56a2af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,15 @@
+---
+name: Bug report
+about: Create a report to help improve LdapRecord
+title: "[Bug]"
+labels: bug
+assignees: ''
+
+---
+
+<!-- Please update the below information with your environment. -->
+**Environment:**
+ - LDAP Server Type: [e.g. ActiveDirectory / OpenLDAP / FreeIPA]
+ - PHP Version: [e.g. 7.3 / 7.4 / 8.0]
+
+**Describe the bug:**
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/feature_request.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 0000000..68e5bcd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,10 @@
+---
+name: Feature request
+about: Suggest an idea for LdapRecord
+title: "[Feature]"
+labels: enhancement
+assignees: ''
+
+---
+
+**Describe the feature you'd like:**
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/support---help-request.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/support---help-request.md
new file mode 100644
index 0000000..230916c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/ISSUE_TEMPLATE/support---help-request.md
@@ -0,0 +1,17 @@
+---
+name: Support / help request
+about: Request help using LdapRecord (requires sponsorship)
+title: "[Support]"
+labels: question
+assignees: ''
+
+---
+
+<!-- ISSUE WILL BE CLOSED WITHOUT SPONSORSHIP: -->
+<!-- https://github.com/sponsors/stevebauman -->
+<!-- Thank you for your understanding. -->
+
+<!-- Please update the below information with your environment. -->
+**Environment:**
+ - LDAP Server Type: [e.g. ActiveDirectory / OpenLDAP / FreeIPA]
+ - PHP Version: [e.g. 7.3 / 7.4 / 8.0]
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/workflows/run-tests.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/workflows/run-tests.yml
new file mode 100644
index 0000000..ba00218
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.github/workflows/run-tests.yml
@@ -0,0 +1,41 @@
+name: run-tests
+
+on:
+  push:
+  pull_request:
+  schedule:
+    - cron: "0 0 * * *"
+
+jobs:
+  run-tests:
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        os: [ubuntu-latest, windows-latest]
+        php: [8.0, 7.4, 7.3]
+
+    name: ${{ matrix.os }} - P${{ matrix.php }}
+
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v2
+
+      - name: Cache dependencies
+        uses: actions/cache@v2
+        with:
+          path: ~/.composer/cache/files
+          key: dependencies-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
+
+      - name: Setup PHP
+        uses: shivammathur/setup-php@v2
+        with:
+          php-version: ${{ matrix.php }}
+          extensions: ldap, json
+          coverage: none
+
+      - name: Install dependencies
+        run: composer update --prefer-dist --no-interaction
+
+      - name: Execute tests
+        run: vendor/bin/phpunit
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitignore
new file mode 100644
index 0000000..d5389fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.gitignore
@@ -0,0 +1,5 @@
+vendor
+composer.lock
+.php_cs.cache
+.phpunit.result.cache
+.php-cs-fixer.cache
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.scrutinizer.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.scrutinizer.yml
new file mode 100644
index 0000000..b3f8f88
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.scrutinizer.yml
@@ -0,0 +1,9 @@
+filter:
+    excluded_paths:
+        - tests/*
+build:
+    nodes:
+        analysis:
+            tests:
+                override:
+                    - command: php-scrutinizer-run
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.styleci.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.styleci.yml
new file mode 100644
index 0000000..c774021
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/.styleci.yml
@@ -0,0 +1,4 @@
+preset: laravel
+enabled:
+  - phpdoc_align
+  - unalign_double_arrow
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/composer.json
new file mode 100644
index 0000000..2e995d9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/composer.json
@@ -0,0 +1,59 @@
+{
+    "name": "directorytree/ldaprecord",
+    "type": "library",
+    "description": "A fully-featured LDAP ORM.",
+    "homepage": "https://www.ldaprecord.com",
+    "keywords": [
+        "active directory",
+        "directory",
+        "ad",
+        "ldap",
+        "windows",
+        "adldap",
+        "adldap2",
+        "ldaprecord",
+        "orm"
+    ],
+    "license": "MIT",
+    "support": {
+        "docs": "https://ldaprecord.com",
+        "issues": "https://github.com/DirectoryTree/LdapRecord/issues",
+        "source": "https://github.com/DirectoryTree/LdapRecord",
+        "email": "steven_bauman@outlook.com"
+    },
+    "authors": [
+        {
+            "name": "Steve Bauman",
+            "email": "steven_bauman@outlook.com",
+            "role": "Developer"
+        }
+    ],
+    "require": {
+        "php": ">=7.3",
+        "ext-ldap": "*",
+        "ext-json": "*",
+        "psr/log": "^1.0",
+        "psr/simple-cache": "^1.0",
+        "nesbot/carbon": "^1.0|^2.0",
+        "tightenco/collect": "^5.6|^6.0|^7.0|^8.0",
+        "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0"
+    },
+    "require-dev": {
+        "phpunit/phpunit": "^8.0",
+        "mockery/mockery": "^1.0",
+        "spatie/ray": "^1.24"
+    },
+    "archive": {
+        "exclude": ["/tests"]
+    },
+    "autoload": {
+        "psr-4": {
+            "LdapRecord\\": "src/"
+        }
+    },
+    "autoload-dev": {
+        "psr-4": {
+            "LdapRecord\\Tests\\": "tests/"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/license.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/license.md
new file mode 100644
index 0000000..c25dc60
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/license.md
@@ -0,0 +1,8 @@
+The MIT License (MIT)
+Copyright © Steve Bauman
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/phpunit.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/phpunit.xml
new file mode 100644
index 0000000..d03fdc2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/phpunit.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<phpunit backupGlobals="false"
+         backupStaticAttributes="false"
+         bootstrap="vendor/autoload.php"
+         colors="true"
+         convertErrorsToExceptions="true"
+         convertNoticesToExceptions="true"
+         convertWarningsToExceptions="true"
+         processIsolation="false"
+         stopOnFailure="false"
+        >
+    <testsuites>
+        <testsuite name="LdapRecord Test Suite">
+            <directory suffix="Test.php">./tests/</directory>
+        </testsuite>
+    </testsuites>
+</phpunit>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/psalm.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/psalm.xml
new file mode 100644
index 0000000..7c0333d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/psalm.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<psalm
+    errorLevel="7"
+    resolveFromConfigFile="true"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns="https://getpsalm.org/schema/config"
+    xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
+>
+    <projectFiles>
+        <directory name="src" />
+        <ignoreFiles>
+            <directory name="vendor" />
+        </ignoreFiles>
+    </projectFiles>
+</psalm>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/readme.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/readme.md
new file mode 100644
index 0000000..08ecd9e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/readme.md
@@ -0,0 +1,94 @@
+<!-- readme.md -->
+
+<p align="center">
+    <img src="https://ldaprecord.com/logo.svg" width="400">
+</p>
+
+<p align="center">
+    <a href="https://github.com/DirectoryTree/LdapRecord/actions">
+        <img src="https://img.shields.io/github/workflow/status/directorytree/ldaprecord/run-tests.svg?style=flat-square">
+    </a>
+    <a href="https://scrutinizer-ci.com/g/DirectoryTree/LdapRecord/?branch=master">
+        <img src="https://img.shields.io/scrutinizer/g/DirectoryTree/LdapRecord/master.svg?style=flat-square"/>
+    </a>
+    <a href="https://packagist.org/packages/DirectoryTree/LdapRecord">
+        <img src="https://img.shields.io/packagist/dt/DirectoryTree/LdapRecord.svg?style=flat-square"/>
+    </a>
+    <a href="https://packagist.org/packages/DirectoryTree/LdapRecord">
+        <img src="https://img.shields.io/packagist/v/DirectoryTree/LdapRecord.svg?style=flat-square"/>
+    </a>
+    <a href="https://packagist.org/packages/DirectoryTree/LdapRecord">
+        <img src="https://img.shields.io/github/license/DirectoryTree/LdapRecord.svg?style=flat-square"/>
+    </a>
+</p>
+
+<p align="center">
+    Working with LDAP doesn't need to be hard.
+</p>
+
+<p align="center">
+    LdapRecord is a fully-featured <a href="https://en.wikipedia.org/wiki/Active_record_pattern">Active Record</a>
+    ORM that makes working with LDAP directories a breeze 🍃
+</p>
+
+<h4 align="center">
+    <a href="https://ldaprecord.com/docs/core/v2/quickstart/">Quickstart</a>
+    <span> · </span>
+    <a href="https://ldaprecord.com/docs/core/v2/">Documentation</a>
+    <span> · </span>
+    <a href="https://github.com/DirectoryTree/LdapRecord-Laravel">Laravel Integration</a>
+    <span> · </span>
+    <a href="https://github.com/DirectoryTree/LdapRecord/discussions/new">Post a Question</a>
+</h4>
+
+---
+
+⏲ **Up and Running Fast**
+
+Connect to your LDAP servers and start running queries at lightning speed.
+
+💡 **Fluent Filter Builder**
+
+Find the LDAP objects you're looking for with a fluent LDAP filter builder.
+
+💼 **Multi-Domain Ready**
+
+Built-in connection management allows you to access multiple domains without breaking a sweat.
+
+🔥 **Supercharged Active Record**
+
+Create and modify LDAP objects with minimal code.
+
+---
+
+<h3 align="center">
+Active Directory Features
+</h3>
+
+🚪 **Enable / Disable Accounts**
+
+Detect and assign User Account Control values on accounts with the fluent [Account Control builder](https://ldaprecord.com/docs/core/v2/active-directory/users/#uac).
+
+🔑 **Reset / Change Passwords**
+
+Built-in support for [changing](https://ldaprecord.com/docs/core/v2/active-directory/users/#changing-passwords) and [resetting](https://ldaprecord.com/docs/core/v2/active-directory/users/#resetting-passwords) passwords on Active Directory accounts.
+
+🗑 **Restore Deleted Objects**
+
+We've all been there -- accidentally deleting a user or group in Active Directory. [Restore them](https://ldaprecord.com/docs/core/v2/models/#restoring-deleted-models) by seamlessly accessing your directory's recycle bin.
+
+---
+
+<h3 align="center">LdapRecord is Supportware™</h3>
+
+<p align="center">If you require support using LdapRecord, a <a href="https://github.com/sponsors/stevebauman">sponsorship</a> is required :pray:</p>
+
+<p align="center">Thank you for your understanding :heart:</p>
+
+--- 
+
+<h3 align="center">Security Vulnerabilities</h3>
+
+<p align="center">If you discover a security vulnerability within LdapRecord, please send an e-mail to Steve Bauman via <a href="mailto:steven_bauman@outlook.com">steven_bauman@outlook.com</a>.</p>
+
+<p align="center">All security vulnerabilities will be promptly addressed.</p>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/BindException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/BindException.php
new file mode 100644
index 0000000..d87abc1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/BindException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Auth;
+
+use LdapRecord\LdapRecordException;
+
+class BindException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Attempting.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Attempting.php
new file mode 100644
index 0000000..3776401
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Attempting.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+class Attempting extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Binding.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Binding.php
new file mode 100644
index 0000000..faffd85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Binding.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+class Binding extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Bound.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Bound.php
new file mode 100644
index 0000000..65a3fae
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Bound.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+class Bound extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Event.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Event.php
new file mode 100644
index 0000000..83716b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Event.php
@@ -0,0 +1,73 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+use LdapRecord\LdapInterface;
+
+abstract class Event
+{
+    /**
+     * The connection that the username and password is being bound on.
+     *
+     * @var LdapInterface
+     */
+    protected $connection;
+
+    /**
+     * The username that is being used for binding.
+     *
+     * @var string
+     */
+    protected $username;
+
+    /**
+     * The password that is being used for binding.
+     *
+     * @var string
+     */
+    protected $password;
+
+    /**
+     * Constructor.
+     *
+     * @param LdapInterface $connection
+     * @param string        $username
+     * @param string        $password
+     */
+    public function __construct(LdapInterface $connection, $username, $password)
+    {
+        $this->connection = $connection;
+        $this->username = $username;
+        $this->password = $password;
+    }
+
+    /**
+     * Returns the events connection.
+     *
+     * @return LdapInterface
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * Returns the authentication events username.
+     *
+     * @return string
+     */
+    public function getUsername()
+    {
+        return $this->username;
+    }
+
+    /**
+     * Returns the authentication events password.
+     *
+     * @return string
+     */
+    public function getPassword()
+    {
+        return $this->password;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Failed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Failed.php
new file mode 100644
index 0000000..7133e43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Failed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+class Failed extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Passed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Passed.php
new file mode 100644
index 0000000..2442f3e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Events/Passed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Auth\Events;
+
+class Passed extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Guard.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Guard.php
new file mode 100644
index 0000000..696cc40
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/Guard.php
@@ -0,0 +1,234 @@
+<?php
+
+namespace LdapRecord\Auth;
+
+use Exception;
+use LdapRecord\Auth\Events\Attempting;
+use LdapRecord\Auth\Events\Binding;
+use LdapRecord\Auth\Events\Bound;
+use LdapRecord\Auth\Events\Failed;
+use LdapRecord\Auth\Events\Passed;
+use LdapRecord\Configuration\DomainConfiguration;
+use LdapRecord\Events\DispatcherInterface;
+use LdapRecord\LdapInterface;
+
+class Guard
+{
+    /**
+     * The connection to bind to.
+     *
+     * @var LdapInterface
+     */
+    protected $connection;
+
+    /**
+     * The domain configuration to utilize.
+     *
+     * @var DomainConfiguration
+     */
+    protected $configuration;
+
+    /**
+     * The event dispatcher.
+     *
+     * @var DispatcherInterface
+     */
+    protected $events;
+
+    /**
+     * Constructor.
+     *
+     * @param LdapInterface       $connection
+     * @param DomainConfiguration $configuration
+     */
+    public function __construct(LdapInterface $connection, DomainConfiguration $configuration)
+    {
+        $this->connection = $connection;
+        $this->configuration = $configuration;
+    }
+
+    /**
+     * Attempt binding a user to the LDAP server.
+     *
+     * @param string $username
+     * @param string $password
+     * @param bool   $stayBound
+     *
+     * @throws UsernameRequiredException
+     * @throws PasswordRequiredException
+     *
+     * @return bool
+     */
+    public function attempt($username, $password, $stayBound = false)
+    {
+        switch (true) {
+            case empty($username):
+                throw new UsernameRequiredException('A username must be specified.');
+            case empty($password):
+                throw new PasswordRequiredException('A password must be specified.');
+        }
+
+        $this->fireAttemptingEvent($username, $password);
+
+        try {
+            $this->bind($username, $password);
+
+            $authenticated = true;
+
+            $this->firePassedEvent($username, $password);
+        } catch (BindException $e) {
+            $authenticated = false;
+        }
+
+        if (! $stayBound) {
+            $this->bindAsConfiguredUser();
+        }
+
+        return $authenticated;
+    }
+
+    /**
+     * Attempt binding a user to the LDAP server. Supports anonymous binding.
+     *
+     * @param string|null $username
+     * @param string|null $password
+     *
+     * @throws BindException
+     * @throws \LdapRecord\ConnectionException
+     */
+    public function bind($username = null, $password = null)
+    {
+        $this->fireBindingEvent($username, $password);
+
+        // Prior to binding, we will upgrade our connectivity to TLS on our current
+        // connection and ensure we are not already bound before upgrading.
+        // This is to prevent subsequent upgrading on several binds.
+        if ($this->connection->isUsingTLS() && ! $this->connection->isBound()) {
+            $this->connection->startTLS();
+        }
+
+        try {
+            if (! $this->connection->bind($username, $password)) {
+                throw new Exception($this->connection->getLastError(), $this->connection->errNo());
+            }
+
+            $this->fireBoundEvent($username, $password);
+        } catch (Exception $e) {
+            $this->fireFailedEvent($username, $password);
+
+            throw BindException::withDetailedError($e, $this->connection->getDetailedError());
+        }
+    }
+
+    /**
+     * Bind to the LDAP server using the configured username and password.
+     *
+     * @throws BindException
+     * @throws \LdapRecord\ConnectionException
+     * @throws \LdapRecord\Configuration\ConfigurationException
+     */
+    public function bindAsConfiguredUser()
+    {
+        $this->bind(
+            $this->configuration->get('username'),
+            $this->configuration->get('password')
+        );
+    }
+
+    /**
+     * Get the event dispatcher instance.
+     *
+     * @return DispatcherInterface
+     */
+    public function getDispatcher()
+    {
+        return $this->events;
+    }
+
+    /**
+     * Set the event dispatcher instance.
+     *
+     * @param DispatcherInterface $dispatcher
+     *
+     * @return void
+     */
+    public function setDispatcher(DispatcherInterface $dispatcher)
+    {
+        $this->events = $dispatcher;
+    }
+
+    /**
+     * Fire the attempting event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireAttemptingEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Attempting($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the passed event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function firePassedEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Passed($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the failed event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireFailedEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Failed($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the binding event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireBindingEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Binding($this->connection, $username, $password));
+        }
+    }
+
+    /**
+     * Fire the bound event.
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @return void
+     */
+    protected function fireBoundEvent($username, $password)
+    {
+        if (isset($this->events)) {
+            $this->events->fire(new Bound($this->connection, $username, $password));
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/PasswordRequiredException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/PasswordRequiredException.php
new file mode 100644
index 0000000..7b2bbd1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/PasswordRequiredException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Auth;
+
+use LdapRecord\LdapRecordException;
+
+class PasswordRequiredException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/UsernameRequiredException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/UsernameRequiredException.php
new file mode 100644
index 0000000..838ae58
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Auth/UsernameRequiredException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Auth;
+
+use LdapRecord\LdapRecordException;
+
+class UsernameRequiredException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/ConfigurationException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/ConfigurationException.php
new file mode 100644
index 0000000..6a93b12
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/ConfigurationException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Configuration;
+
+use LdapRecord\LdapRecordException;
+
+class ConfigurationException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/DomainConfiguration.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/DomainConfiguration.php
new file mode 100644
index 0000000..1dcdd1a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/DomainConfiguration.php
@@ -0,0 +1,178 @@
+<?php
+
+namespace LdapRecord\Configuration;
+
+use LdapRecord\LdapInterface;
+
+class DomainConfiguration
+{
+    /**
+     * The extended configuration options.
+     *
+     * @var array
+     */
+    protected static $extended = [];
+
+    /**
+     * The configuration options array.
+     *
+     * The default values for each key indicate the type of value it requires.
+     *
+     * @var array
+     */
+    protected $options = [
+        // An array of LDAP hosts.
+        'hosts' => [],
+
+        // The global LDAP operation timeout limit in seconds.
+        'timeout' => 5,
+
+        // The LDAP version to utilize.
+        'version' => 3,
+
+        // The port to use for connecting to your hosts.
+        'port' => LdapInterface::PORT,
+
+        // The base distinguished name of your domain.
+        'base_dn' => '',
+
+        // The username to use for binding.
+        'username' => '',
+
+        // The password to use for binding.
+        'password' => '',
+
+        // Whether or not to use SSL when connecting.
+        'use_ssl' => false,
+
+        // Whether or not to use TLS when connecting.
+        'use_tls' => false,
+
+        // Whether or not follow referrals is enabled when performing LDAP operations.
+        'follow_referrals' => false,
+
+        // Custom LDAP options.
+        'options' => [],
+    ];
+
+    /**
+     * Constructor.
+     *
+     * @param array $options
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     */
+    public function __construct(array $options = [])
+    {
+        $this->options = array_merge($this->options, static::$extended);
+
+        foreach ($options as $key => $value) {
+            $this->set($key, $value);
+        }
+    }
+
+    /**
+     * Extend the configuration with a custom option, or override an existing.
+     *
+     * @param string $option
+     * @param mixed  $default
+     *
+     * @return void
+     */
+    public static function extend($option, $default = null)
+    {
+        static::$extended[$option] = $default;
+    }
+
+    /**
+     * Flush the extended configuration options.
+     *
+     * @return void
+     */
+    public static function flushExtended()
+    {
+        static::$extended = [];
+    }
+
+    /**
+     * Get all configuration options.
+     *
+     * @return array
+     */
+    public function all()
+    {
+        return $this->options;
+    }
+
+    /**
+     * Set a configuration option.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     */
+    public function set($key, $value)
+    {
+        if ($this->validate($key, $value)) {
+            $this->options[$key] = $value;
+        }
+    }
+
+    /**
+     * Returns the value for the specified configuration options.
+     *
+     * @param string $key
+     *
+     * @throws ConfigurationException When the option specified does not exist.
+     *
+     * @return mixed
+     */
+    public function get($key)
+    {
+        if (! $this->has($key)) {
+            throw new ConfigurationException("Option {$key} does not exist.");
+        }
+
+        return $this->options[$key];
+    }
+
+    /**
+     * Checks if a configuration option exists.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function has($key)
+    {
+        return array_key_exists($key, $this->options);
+    }
+
+    /**
+     * Validate the configuration option.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @throws ConfigurationException When an option value given is an invalid type.
+     *
+     * @return bool
+     */
+    protected function validate($key, $value)
+    {
+        $default = $this->get($key);
+
+        if (is_array($default)) {
+            $validator = new Validators\ArrayValidator($key, $value);
+        } elseif (is_int($default)) {
+            $validator = new Validators\IntegerValidator($key, $value);
+        } elseif (is_bool($default)) {
+            $validator = new Validators\BooleanValidator($key, $value);
+        } else {
+            $validator = new Validators\StringOrNullValidator($key, $value);
+        }
+
+        return $validator->validate();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/ArrayValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/ArrayValidator.php
new file mode 100644
index 0000000..4aa43ed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/ArrayValidator.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace LdapRecord\Configuration\Validators;
+
+class ArrayValidator extends Validator
+{
+    /**
+     * The validation exception message.
+     *
+     * @var string
+     */
+    protected $message = 'Option [:option] must be an array.';
+
+    /**
+     * @inheritdoc
+     */
+    public function passes()
+    {
+        return is_array($this->value);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/BooleanValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/BooleanValidator.php
new file mode 100644
index 0000000..1d25a4b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/BooleanValidator.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace LdapRecord\Configuration\Validators;
+
+class BooleanValidator extends Validator
+{
+    /**
+     * The validation exception message.
+     *
+     * @var string
+     */
+    protected $message = 'Option [:option] must be a boolean.';
+
+    /**
+     * @inheritdoc
+     */
+    public function passes()
+    {
+        return is_bool($this->value);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/IntegerValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/IntegerValidator.php
new file mode 100644
index 0000000..5c4f0f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/IntegerValidator.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace LdapRecord\Configuration\Validators;
+
+class IntegerValidator extends Validator
+{
+    /**
+     * The validation exception message.
+     *
+     * @var string
+     */
+    protected $message = 'Option [:option] must be an integer.';
+
+    /**
+     * @inheritdoc
+     */
+    public function passes()
+    {
+        return is_numeric($this->value);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/StringOrNullValidator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/StringOrNullValidator.php
new file mode 100644
index 0000000..bc23372
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/StringOrNullValidator.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace LdapRecord\Configuration\Validators;
+
+class StringOrNullValidator extends Validator
+{
+    /**
+     * The validation exception message.
+     *
+     * @var string
+     */
+    protected $message = 'Option [:option] must be a string or null.';
+
+    /**
+     * @inheritdoc
+     */
+    public function passes()
+    {
+        return is_string($this->value) || is_null($this->value);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/Validator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/Validator.php
new file mode 100644
index 0000000..908a639
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Configuration/Validators/Validator.php
@@ -0,0 +1,78 @@
+<?php
+
+namespace LdapRecord\Configuration\Validators;
+
+use LdapRecord\Configuration\ConfigurationException;
+
+abstract class Validator
+{
+    /**
+     * The configuration key under validation.
+     *
+     * @var string
+     */
+    protected $key;
+
+    /**
+     * The configuration value under validation.
+     *
+     * @var mixed
+     */
+    protected $value;
+
+    /**
+     * The validation exception message.
+     *
+     * @var string
+     */
+    protected $message;
+
+    /**
+     * Constructor.
+     *
+     * @param string $key
+     * @param mixed  $value
+     */
+    public function __construct($key, $value)
+    {
+        $this->key = $key;
+        $this->value = $value;
+    }
+
+    /**
+     * Determine if the validation rule passes.
+     *
+     * @return bool
+     */
+    abstract public function passes();
+
+    /**
+     * Validate the configuration value.
+     *
+     * @throws ConfigurationException
+     *
+     * @return bool
+     */
+    public function validate()
+    {
+        if (! $this->passes()) {
+            $this->fail();
+        }
+
+        return true;
+    }
+
+    /**
+     * Throw a configuration exception.
+     *
+     * @throws ConfigurationException
+     *
+     * @return void
+     */
+    protected function fail()
+    {
+        throw new ConfigurationException(
+            str_replace(':option', $this->key, $this->message)
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Connection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Connection.php
new file mode 100644
index 0000000..8ba0ef1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Connection.php
@@ -0,0 +1,511 @@
+<?php
+
+namespace LdapRecord;
+
+use Carbon\Carbon;
+use Closure;
+use LdapRecord\Auth\Guard;
+use LdapRecord\Configuration\DomainConfiguration;
+use LdapRecord\Events\DispatcherInterface;
+use LdapRecord\Query\Builder;
+use LdapRecord\Query\Cache;
+use Psr\SimpleCache\CacheInterface;
+
+class Connection
+{
+    use DetectsErrors;
+
+    /**
+     * The underlying LDAP connection.
+     *
+     * @var Ldap
+     */
+    protected $ldap;
+
+    /**
+     * The cache driver.
+     *
+     * @var Cache|null
+     */
+    protected $cache;
+
+    /**
+     * The domain configuration.
+     *
+     * @var DomainConfiguration
+     */
+    protected $configuration;
+
+    /**
+     * The event dispatcher;.
+     *
+     * @var DispatcherInterface|null
+     */
+    protected $dispatcher;
+
+    /**
+     * The current host connected to.
+     *
+     * @var string
+     */
+    protected $host;
+
+    /**
+     * The configured domain hosts.
+     *
+     * @var array
+     */
+    protected $hosts = [];
+
+    /**
+     * The attempted hosts that failed connecting to.
+     *
+     * @var array
+     */
+    protected $attempted = [];
+
+    /**
+     * The callback to execute upon total connection failure.
+     *
+     * @var Closure
+     */
+    protected $failed;
+
+    /**
+     * The authentication guard resolver.
+     *
+     * @var Closure
+     */
+    protected $authGuardResolver;
+
+    /**
+     * Whether the connection is retrying the initial connection attempt.
+     *
+     * @var bool
+     */
+    protected $retryingInitialConnection = false;
+
+    /**
+     * Constructor.
+     *
+     * @param array              $config
+     * @param LdapInterface|null $ldap
+     */
+    public function __construct($config = [], LdapInterface $ldap = null)
+    {
+        $this->setConfiguration($config);
+
+        $this->setLdapConnection($ldap ?? new Ldap());
+
+        $this->failed = function () {
+            $this->dispatch(new Events\ConnectionFailed($this));
+        };
+
+        $this->authGuardResolver = function () {
+            return new Guard($this->ldap, $this->configuration);
+        };
+    }
+
+    /**
+     * Set the connection configuration.
+     *
+     * @param array $config
+     *
+     * @throws Configuration\ConfigurationException
+     *
+     * @return $this
+     */
+    public function setConfiguration($config = [])
+    {
+        $this->configuration = new DomainConfiguration($config);
+
+        $this->hosts = $this->configuration->get('hosts');
+
+        $this->host = reset($this->hosts);
+
+        return $this;
+    }
+
+    /**
+     * Set the LDAP connection.
+     *
+     * @param LdapInterface $ldap
+     *
+     * @return $this
+     */
+    public function setLdapConnection(LdapInterface $ldap)
+    {
+        $this->ldap = $ldap;
+
+        return $this;
+    }
+
+    /**
+     * Set the event dispatcher.
+     *
+     * @param DispatcherInterface $dispatcher
+     *
+     * @return $this
+     */
+    public function setDispatcher(DispatcherInterface $dispatcher)
+    {
+        $this->dispatcher = $dispatcher;
+
+        return $this;
+    }
+
+    /**
+     * Initializes the LDAP connection.
+     *
+     * @return void
+     */
+    public function initialize()
+    {
+        $this->configure();
+
+        $this->ldap->connect($this->host, $this->configuration->get('port'));
+    }
+
+    /**
+     * Configure the LDAP connection.
+     *
+     * @return void
+     */
+    protected function configure()
+    {
+        if ($this->configuration->get('use_ssl')) {
+            $this->ldap->ssl();
+        } elseif ($this->configuration->get('use_tls')) {
+            $this->ldap->tls();
+        }
+
+        $this->ldap->setOptions(array_replace(
+            $this->configuration->get('options'),
+            [
+                LDAP_OPT_PROTOCOL_VERSION => $this->configuration->get('version'),
+                LDAP_OPT_NETWORK_TIMEOUT => $this->configuration->get('timeout'),
+                LDAP_OPT_REFERRALS => $this->configuration->get('follow_referrals'),
+            ]
+        ));
+    }
+
+    /**
+     * Set the cache store.
+     *
+     * @param CacheInterface $store
+     *
+     * @return $this
+     */
+    public function setCache(CacheInterface $store)
+    {
+        $this->cache = new Cache($store);
+
+        return $this;
+    }
+
+    /**
+     * Get the cache store.
+     *
+     * @return Cache|null
+     */
+    public function getCache()
+    {
+        return $this->cache;
+    }
+
+    /**
+     * Get the LDAP configuration instance.
+     *
+     * @return DomainConfiguration
+     */
+    public function getConfiguration()
+    {
+        return $this->configuration;
+    }
+
+    /**
+     * Get the LDAP connection instance.
+     *
+     * @return Ldap
+     */
+    public function getLdapConnection()
+    {
+        return $this->ldap;
+    }
+
+    /**
+     * Bind to the LDAP server.
+     *
+     * If no username or password is specified, then the configured credentials are used.
+     *
+     * @param string|null $username
+     * @param string|null $password
+     *
+     * @throws Auth\BindException
+     * @throws LdapRecordException
+     *
+     * @return Connection
+     */
+    public function connect($username = null, $password = null)
+    {
+        $attempt = function () use ($username, $password) {
+            $this->dispatch(new Events\Connecting($this));
+
+            is_null($username) && is_null($password)
+                ? $this->auth()->bindAsConfiguredUser()
+                : $this->auth()->bind($username, $password);
+
+            $this->dispatch(new Events\Connected($this));
+
+            $this->retryingInitialConnection = false;
+        };
+
+        try {
+            $this->runOperationCallback($attempt);
+        } catch (LdapRecordException $e) {
+            $this->retryingInitialConnection = true;
+
+            $this->retryOnNextHost($e, $attempt);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Reconnect to the LDAP server.
+     *
+     * @throws Auth\BindException
+     * @throws ConnectionException
+     *
+     * @return void
+     */
+    public function reconnect()
+    {
+        $this->reinitialize();
+
+        $this->connect();
+    }
+
+    /**
+     * Reinitialize the connection.
+     *
+     * @return void
+     */
+    protected function reinitialize()
+    {
+        $this->disconnect();
+
+        $this->initialize();
+    }
+
+    /**
+     * Disconnect from the LDAP server.
+     *
+     * @return void
+     */
+    public function disconnect()
+    {
+        $this->ldap->close();
+    }
+
+    /**
+     * Dispatch an event.
+     *
+     * @param object $event
+     *
+     * @return void
+     */
+    public function dispatch($event)
+    {
+        if (isset($this->dispatcher)) {
+            $this->dispatcher->dispatch($event);
+        }
+    }
+
+    /**
+     * Get the attempted hosts that failed connecting to.
+     *
+     * @return array
+     */
+    public function attempted()
+    {
+        return $this->attempted;
+    }
+
+    /**
+     * Perform the operation on the LDAP connection.
+     *
+     * @param Closure $operation
+     *
+     * @return mixed
+     */
+    public function run(Closure $operation)
+    {
+        try {
+            // Before running the operation, we will check if the current
+            // connection is bound and connect if necessary. Otherwise
+            // some LDAP operations will not be executed properly.
+            if (! $this->isConnected()) {
+                $this->connect();
+            }
+
+            return $this->runOperationCallback($operation);
+        } catch (LdapRecordException $e) {
+            if ($exception = $this->getExceptionForCauseOfFailure($e)) {
+                throw $exception;
+            }
+
+            return $this->tryAgainIfCausedByLostConnection($e, $operation);
+        }
+    }
+
+    /**
+     * Attempt to get an exception for the cause of failure.
+     *
+     * @param LdapRecordException $e
+     *
+     * @return mixed
+     */
+    protected function getExceptionForCauseOfFailure(LdapRecordException $e)
+    {
+        switch (true) {
+            case $this->errorContainsMessage($e->getMessage(), 'Already exists'):
+                return Exceptions\AlreadyExistsException::withDetailedError($e, $e->getDetailedError());
+            case $this->errorContainsMessage($e->getMessage(), 'Insufficient access'):
+                return Exceptions\InsufficientAccessException::withDetailedError($e, $e->getDetailedError());
+            case $this->errorContainsMessage($e->getMessage(), 'Constraint violation'):
+                return Exceptions\ConstraintViolationException::withDetailedError($e, $e->getDetailedError());
+            default:
+                return;
+        }
+    }
+
+    /**
+     * Run the operation callback on the current LDAP connection.
+     *
+     * @param Closure $operation
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function runOperationCallback(Closure $operation)
+    {
+        return $operation($this->ldap);
+    }
+
+    /**
+     * Get a new auth guard instance.
+     *
+     * @return Auth\Guard
+     */
+    public function auth()
+    {
+        if (! $this->ldap->isConnected()) {
+            $this->initialize();
+        }
+
+        $guard = call_user_func($this->authGuardResolver);
+
+        $guard->setDispatcher(
+            Container::getInstance()->getEventDispatcher()
+        );
+
+        return $guard;
+    }
+
+    /**
+     * Get a new query builder for the connection.
+     *
+     * @return Query\Builder
+     */
+    public function query()
+    {
+        return (new Builder($this))
+            ->setCache($this->cache)
+            ->setBaseDn($this->configuration->get('base_dn'));
+    }
+
+    /**
+     * Determine if the LDAP connection is bound.
+     *
+     * @return bool
+     */
+    public function isConnected()
+    {
+        return $this->ldap->isBound();
+    }
+
+    /**
+     * Attempt to retry an LDAP operation if due to a lost connection.
+     *
+     * @param LdapRecordException $e
+     * @param Closure             $operation
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function tryAgainIfCausedByLostConnection(LdapRecordException $e, Closure $operation)
+    {
+        // If the operation failed due to a lost or failed connection,
+        // we'll attempt reconnecting and running the operation again
+        // underneath the same host, and then move onto the next.
+        if ($this->causedByLostConnection($e->getMessage())) {
+            return $this->retry($operation);
+        }
+
+        throw $e;
+    }
+
+    /**
+     * Retry the operation on the current host.
+     *
+     * @param Closure $operation
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function retry(Closure $operation)
+    {
+        try {
+            $this->retryingInitialConnection
+                ? $this->reinitialize()
+                : $this->reconnect();
+
+            return $this->runOperationCallback($operation);
+        } catch (LdapRecordException $e) {
+            return $this->retryOnNextHost($e, $operation);
+        }
+    }
+
+    /**
+     * Attempt the operation again on the next host.
+     *
+     * @param LdapRecordException $e
+     * @param Closure             $operation
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function retryOnNextHost(LdapRecordException $e, Closure $operation)
+    {
+        $this->attempted[$this->host] = Carbon::now();
+
+        if (($key = array_search($this->host, $this->hosts)) !== false) {
+            unset($this->hosts[$key]);
+        }
+
+        if ($next = reset($this->hosts)) {
+            $this->host = $next;
+
+            return $this->tryAgainIfCausedByLostConnection($e, $operation);
+        }
+
+        call_user_func($this->failed, $this->ldap);
+
+        throw $e;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionException.php
new file mode 100644
index 0000000..81691bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionException.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord;
+
+class ConnectionException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionManager.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionManager.php
new file mode 100644
index 0000000..0eacbc3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ConnectionManager.php
@@ -0,0 +1,320 @@
+<?php
+
+namespace LdapRecord;
+
+use BadMethodCallException;
+use LdapRecord\Events\Dispatcher;
+use LdapRecord\Events\DispatcherInterface;
+use LdapRecord\Events\Logger;
+use Psr\Log\LoggerInterface;
+
+class ConnectionManager
+{
+    /**
+     * The logger instance.
+     *
+     * @var LoggerInterface|null
+     */
+    protected $logger;
+
+    /**
+     * The event dispatcher instance.
+     *
+     * @var DispatcherInterface|null
+     */
+    protected $dispatcher;
+
+    /**
+     * The added LDAP connections.
+     *
+     * @var Connection[]
+     */
+    protected $connections = [];
+
+    /**
+     * The name of the default connection.
+     *
+     * @var string
+     */
+    protected $default = 'default';
+
+    /**
+     * The events to register listeners for during initialization.
+     *
+     * @var array
+     */
+    protected $listen = [
+        'LdapRecord\Auth\Events\*',
+        'LdapRecord\Query\Events\*',
+        'LdapRecord\Models\Events\*',
+    ];
+
+    /**
+     * The method calls to proxy for compatibility.
+     *
+     * To be removed in the next major version.
+     *
+     * @var array
+     */
+    protected $proxy = [
+        'reset' => 'flush',
+        'addConnection' => 'add',
+        'getConnection' => 'get',
+        'allConnections' => 'all',
+        'removeConnection' => 'remove',
+        'getDefaultConnection' => 'getDefault',
+        'setDefaultConnection' => 'setDefault',
+        'getEventDispatcher' => 'dispatcher',
+        'setEventDispatcher' => 'setDispatcher',
+    ];
+
+    /**
+     * Constructor.
+     *
+     * @return void
+     */
+    public function __construct()
+    {
+        $this->dispatcher = new Dispatcher();
+    }
+
+    /**
+     * Forward missing method calls onto the instance.
+     *
+     * @param string $method
+     * @param mixed  $args
+     *
+     * @return mixed
+     */
+    public function __call($method, $args)
+    {
+        $method = $this->proxy[$method] ?? $method;
+
+        if (! method_exists($this, $method)) {
+            throw new BadMethodCallException(sprintf(
+                'Call to undefined method %s::%s()',
+                static::class,
+                $method
+            ));
+        }
+
+        return $this->{$method}(...$args);
+    }
+
+    /**
+     * Add a new connection.
+     *
+     * @param Connection  $connection
+     * @param string|null $name
+     *
+     * @return $this
+     */
+    public function add(Connection $connection, $name = null)
+    {
+        $this->connections[$name ?? $this->default] = $connection;
+
+        if ($this->dispatcher) {
+            $connection->setDispatcher($this->dispatcher);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Remove a connection.
+     *
+     * @param $name
+     *
+     * @return $this
+     */
+    public function remove($name)
+    {
+        unset($this->connections[$name]);
+
+        return $this;
+    }
+
+    /**
+     * Get all of the connections.
+     *
+     * @return Connection[]
+     */
+    public function all()
+    {
+        return $this->connections;
+    }
+
+    /**
+     * Get a connection by name or return the default.
+     *
+     * @param string|null $name
+     *
+     * @throws ContainerException If the given connection does not exist.
+     *
+     * @return Connection
+     */
+    public function get($name = null)
+    {
+        if ($this->exists($name = $name ?? $this->default)) {
+            return $this->connections[$name];
+        }
+
+        throw new ContainerException("The LDAP connection [$name] does not exist.");
+    }
+
+    /**
+     * Return the default connection.
+     *
+     * @return Connection
+     */
+    public function getDefault()
+    {
+        return $this->get($this->default);
+    }
+
+    /**
+     * Get the default connection name.
+     *
+     * @return string
+     */
+    public function getDefaultConnectionName()
+    {
+        return $this->default;
+    }
+
+    /**
+     * Checks if the connection exists.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function exists($name)
+    {
+        return array_key_exists($name, $this->connections);
+    }
+
+    /**
+     * Set the default connection name.
+     *
+     * @param string $name
+     *
+     * @return $this
+     */
+    public function setDefault($name = null)
+    {
+        $this->default = $name;
+
+        return $this;
+    }
+
+    /**
+     * Flush the manager of all instances and connections.
+     *
+     * @return $this
+     */
+    public function flush()
+    {
+        $this->logger = null;
+
+        $this->connections = [];
+
+        $this->dispatcher = new Dispatcher();
+
+        return $this;
+    }
+
+    /**
+     * Get the logger instance.
+     *
+     * @return LoggerInterface|null
+     */
+    public function getLogger()
+    {
+        return $this->logger;
+    }
+
+    /**
+     * Set the event logger to use.
+     *
+     * @param LoggerInterface $logger
+     *
+     * @return void
+     */
+    public function setLogger(LoggerInterface $logger)
+    {
+        $this->logger = $logger;
+
+        $this->initEventLogger();
+    }
+
+    /**
+     * Initialize the event logger.
+     *
+     * @return void
+     */
+    public function initEventLogger()
+    {
+        $logger = $this->newEventLogger();
+
+        foreach ($this->listen as $event) {
+            $this->dispatcher->listen($event, function ($eventName, $events) use ($logger) {
+                foreach ($events as $event) {
+                    $logger->log($event);
+                }
+            });
+        }
+    }
+
+    /**
+     * Make a new event logger instance.
+     *
+     * @return Logger
+     */
+    protected function newEventLogger()
+    {
+        return new Logger($this->logger);
+    }
+
+    /**
+     * Unset the logger instance.
+     *
+     * @return void
+     */
+    public function unsetLogger()
+    {
+        $this->logger = null;
+    }
+
+    /**
+     * Get the event dispatcher.
+     *
+     * @return DispatcherInterface|null
+     */
+    public function dispatcher()
+    {
+        return $this->dispatcher;
+    }
+
+    /**
+     * Set the event dispatcher.
+     *
+     * @param DispatcherInterface $dispatcher
+     *
+     * @return void
+     */
+    public function setDispatcher(DispatcherInterface $dispatcher)
+    {
+        $this->dispatcher = $dispatcher;
+    }
+
+    /**
+     * Unset the event dispatcher.
+     *
+     * @return void
+     */
+    public function unsetEventDispatcher()
+    {
+        $this->dispatcher = null;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Container.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Container.php
new file mode 100644
index 0000000..f458951
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Container.php
@@ -0,0 +1,127 @@
+<?php
+
+namespace LdapRecord;
+
+/**
+ * @method static $this reset()
+ * @method static Connection[] all()
+ * @method static Connection[] allConnections()
+ * @method static Connection getDefaultConnection()
+ * @method static Connection get(string|null $name = null)
+ * @method static Connection getConnection(string|null $name = null)
+ * @method static bool exists(string $name)
+ * @method static $this remove(string|null $name = null)
+ * @method static $this removeConnection(string|null $name = null)
+ * @method static $this setDefault(string|null $name = null)
+ * @method static $this setDefaultConnection(string|null $name = null)
+ * @method static $this add(Connection $connection, string|null $name = null)
+ * @method static $this addConnection(Connection $connection, string|null $name = null)
+ */
+class Container
+{
+    /**
+     * The current container instance.
+     *
+     * @var Container
+     */
+    protected static $instance;
+
+    /**
+     * The connection manager instance.
+     *
+     * @var ConnectionManager
+     */
+    protected $manager;
+
+    /**
+     * The methods to passthru, for compatibility.
+     *
+     * @var array
+     */
+    protected $passthru = [
+        'reset', 'flush',
+        'add', 'addConnection',
+        'remove', 'removeConnection',
+        'setDefault', 'setDefaultConnection',
+    ];
+
+    /**
+     * Forward missing static calls onto the current instance.
+     *
+     * @param string $method
+     * @param mixed  $args
+     *
+     * @return mixed
+     */
+    public static function __callStatic($method, $args)
+    {
+        return static::getInstance()->{$method}(...$args);
+    }
+
+    /**
+     * Get or set the current instance of the container.
+     *
+     * @return Container
+     */
+    public static function getInstance()
+    {
+        return static::$instance ?? static::getNewInstance();
+    }
+
+    /**
+     * Set the container instance.
+     *
+     * @param Container|null $container
+     *
+     * @return Container|null
+     */
+    public static function setInstance(self $container = null)
+    {
+        return static::$instance = $container;
+    }
+
+    /**
+     * Set and get a new instance of the container.
+     *
+     * @return Container
+     */
+    public static function getNewInstance()
+    {
+        return static::setInstance(new static());
+    }
+
+    /**
+     * Constructor.
+     *
+     * @return void
+     */
+    public function __construct()
+    {
+        $this->manager = new ConnectionManager();
+    }
+
+    /**
+     * Forward missing method calls onto the connection manager.
+     *
+     * @param string $method
+     * @param mixed  $args
+     *
+     * @return mixed
+     */
+    public function __call($method, $args)
+    {
+        $value = $this->manager->{$method}(...$args);
+
+        return in_array($method, $this->passthru) ? $this : $value;
+    }
+
+    /**
+     * Get the connection manager.
+     *
+     * @return ConnectionManager
+     */
+    public function manager()
+    {
+        return $this->manager;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ContainerException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ContainerException.php
new file mode 100644
index 0000000..0ab29cf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/ContainerException.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord;
+
+class ContainerException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetailedError.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetailedError.php
new file mode 100644
index 0000000..d61159e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetailedError.php
@@ -0,0 +1,71 @@
+<?php
+
+namespace LdapRecord;
+
+class DetailedError
+{
+    /**
+     * The error code from ldap_errno.
+     *
+     * @var int|null
+     */
+    protected $errorCode;
+
+    /**
+     * The error message from ldap_error.
+     *
+     * @var string|null
+     */
+    protected $errorMessage;
+
+    /**
+     * The diagnostic message when retrieved after an ldap_error.
+     *
+     * @var string|null
+     */
+    protected $diagnosticMessage;
+
+    /**
+     * Constructor.
+     *
+     * @param int    $errorCode
+     * @param string $errorMessage
+     * @param string $diagnosticMessage
+     */
+    public function __construct($errorCode, $errorMessage, $diagnosticMessage)
+    {
+        $this->errorCode = $errorCode;
+        $this->errorMessage = $errorMessage;
+        $this->diagnosticMessage = $diagnosticMessage;
+    }
+
+    /**
+     * Returns the LDAP error code.
+     *
+     * @return int
+     */
+    public function getErrorCode()
+    {
+        return $this->errorCode;
+    }
+
+    /**
+     * Returns the LDAP error message.
+     *
+     * @return string
+     */
+    public function getErrorMessage()
+    {
+        return $this->errorMessage;
+    }
+
+    /**
+     * Returns the LDAP diagnostic message.
+     *
+     * @return string
+     */
+    public function getDiagnosticMessage()
+    {
+        return $this->diagnosticMessage;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetectsErrors.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetectsErrors.php
new file mode 100644
index 0000000..e8997a9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/DetectsErrors.php
@@ -0,0 +1,73 @@
+<?php
+
+namespace LdapRecord;
+
+trait DetectsErrors
+{
+    /**
+     * Determine if the error was caused by a lost connection.
+     *
+     * @param string $error
+     *
+     * @return bool
+     */
+    protected function causedByLostConnection($error)
+    {
+        return $this->errorContainsMessage($error, ["Can't contact LDAP server", 'Operations error']);
+    }
+
+    /**
+     * Determine if the error was caused by lack of pagination support.
+     *
+     * @param string $error
+     *
+     * @return bool
+     */
+    protected function causedByPaginationSupport($error)
+    {
+        return $this->errorContainsMessage($error, 'No server controls in result');
+    }
+
+    /**
+     * Determine if the error was caused by a size limit warning.
+     *
+     * @param $error
+     *
+     * @return bool
+     */
+    protected function causedBySizeLimit($error)
+    {
+        return $this->errorContainsMessage($error, ['Partial search results returned', 'Size limit exceeded']);
+    }
+
+    /**
+     * Determine if the error was caused by a "No such object" warning.
+     *
+     * @param string $error
+     *
+     * @return bool
+     */
+    protected function causedByNoSuchObject($error)
+    {
+        return $this->errorContainsMessage($error, ['No such object']);
+    }
+
+    /**
+     * Determine if the error contains the any of the messages.
+     *
+     * @param string       $error
+     * @param string|array $messages
+     *
+     * @return bool
+     */
+    protected function errorContainsMessage($error, $messages = [])
+    {
+        foreach ((array) $messages as $message) {
+            if (strpos($error, $message) !== false) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/EscapesValues.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/EscapesValues.php
new file mode 100644
index 0000000..acfc020
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/EscapesValues.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace LdapRecord;
+
+use LdapRecord\Models\Attributes\EscapedValue;
+
+trait EscapesValues
+{
+    /**
+     * Prepare a value to be escaped.
+     *
+     * @param string $value
+     * @param string $ignore
+     * @param int    $flags
+     *
+     * @return EscapedValue
+     */
+    public function escape($value, $ignore = '', $flags = 0)
+    {
+        return new EscapedValue($value, $ignore, $flags);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connected.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connected.php
new file mode 100644
index 0000000..d9505da
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connected.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Events;
+
+class Connected extends ConnectionEvent
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connecting.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connecting.php
new file mode 100644
index 0000000..d2922ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Connecting.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Events;
+
+class Connecting extends ConnectionEvent
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionEvent.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionEvent.php
new file mode 100644
index 0000000..e9c2c35
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionEvent.php
@@ -0,0 +1,35 @@
+<?php
+
+namespace LdapRecord\Events;
+
+use LdapRecord\Connection;
+
+abstract class ConnectionEvent
+{
+    /**
+     * The LDAP connection.
+     *
+     * @var Connection
+     */
+    protected $connection;
+
+    /**
+     * Constructor.
+     *
+     * @param Connection $connection
+     */
+    public function __construct(Connection $connection)
+    {
+        $this->connection = $connection;
+    }
+
+    /**
+     * Get the connection pertaining to the event.
+     *
+     * @return Connection
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionFailed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionFailed.php
new file mode 100644
index 0000000..7e110c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/ConnectionFailed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Events;
+
+class ConnectionFailed extends ConnectionEvent
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Dispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Dispatcher.php
new file mode 100644
index 0000000..a4ae3de
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Dispatcher.php
@@ -0,0 +1,334 @@
+<?php
+
+namespace LdapRecord\Events;
+
+use LdapRecord\Support\Arr;
+
+/**
+ * Class Dispatcher.
+ *
+ * Handles event listening and dispatching.
+ *
+ * This code was taken out of the Laravel Framework core
+ * with broadcasting and queuing omitted to remove
+ * an extra dependency that would be required.
+ *
+ * @author Taylor Otwell
+ *
+ * @see https://github.com/laravel/framework
+ */
+class Dispatcher implements DispatcherInterface
+{
+    /**
+     * The registered event listeners.
+     *
+     * @var array
+     */
+    protected $listeners = [];
+
+    /**
+     * The wildcard listeners.
+     *
+     * @var array
+     */
+    protected $wildcards = [];
+
+    /**
+     * The cached wildcard listeners.
+     *
+     * @var array
+     */
+    protected $wildcardsCache = [];
+
+    /**
+     * @inheritdoc
+     */
+    public function listen($events, $listener)
+    {
+        foreach ((array) $events as $event) {
+            if (strpos($event, '*') !== false) {
+                $this->setupWildcardListen($event, $listener);
+            } else {
+                $this->listeners[$event][] = $this->makeListener($listener);
+            }
+        }
+    }
+
+    /**
+     * Setup a wildcard listener callback.
+     *
+     * @param string $event
+     * @param mixed  $listener
+     *
+     * @return void
+     */
+    protected function setupWildcardListen($event, $listener)
+    {
+        $this->wildcards[$event][] = $this->makeListener($listener, true);
+
+        $this->wildcardsCache = [];
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function hasListeners($eventName)
+    {
+        return isset($this->listeners[$eventName]) || isset($this->wildcards[$eventName]);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function until($event, $payload = [])
+    {
+        return $this->dispatch($event, $payload, true);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function fire($event, $payload = [], $halt = false)
+    {
+        return $this->dispatch($event, $payload, $halt);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function dispatch($event, $payload = [], $halt = false)
+    {
+        // When the given "event" is actually an object we will assume it is an event
+        // object and use the class as the event name and this event itself as the
+        // payload to the handler, which makes object based events quite simple.
+        [$event, $payload] = $this->parseEventAndPayload(
+            $event,
+            $payload
+        );
+
+        $responses = [];
+
+        foreach ($this->getListeners($event) as $listener) {
+            $response = $listener($event, $payload);
+
+            // If a response is returned from the listener and event halting is enabled
+            // we will just return this response, and not call the rest of the event
+            // listeners. Otherwise we will add the response on the response list.
+            if ($halt && ! is_null($response)) {
+                return $response;
+            }
+
+            // If a boolean false is returned from a listener, we will stop propagating
+            // the event to any further listeners down in the chain, else we keep on
+            // looping through the listeners and firing every one in our sequence.
+            if ($response === false) {
+                break;
+            }
+
+            $responses[] = $response;
+        }
+
+        return $halt ? null : $responses;
+    }
+
+    /**
+     * Parse the given event and payload and prepare them for dispatching.
+     *
+     * @param mixed $event
+     * @param mixed $payload
+     *
+     * @return array
+     */
+    protected function parseEventAndPayload($event, $payload)
+    {
+        if (is_object($event)) {
+            [$payload, $event] = [[$event], get_class($event)];
+        }
+
+        return [$event, Arr::wrap($payload)];
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getListeners($eventName)
+    {
+        $listeners = $this->listeners[$eventName] ?? [];
+
+        $listeners = array_merge(
+            $listeners,
+            $this->wildcardsCache[$eventName] ?? $this->getWildcardListeners($eventName)
+        );
+
+        return class_exists($eventName, false)
+            ? $this->addInterfaceListeners($eventName, $listeners)
+            : $listeners;
+    }
+
+    /**
+     * Get the wildcard listeners for the event.
+     *
+     * @param string $eventName
+     *
+     * @return array
+     */
+    protected function getWildcardListeners($eventName)
+    {
+        $wildcards = [];
+
+        foreach ($this->wildcards as $key => $listeners) {
+            if ($this->wildcardContainsEvent($key, $eventName)) {
+                $wildcards = array_merge($wildcards, $listeners);
+            }
+        }
+
+        return $this->wildcardsCache[$eventName] = $wildcards;
+    }
+
+    /**
+     * Determine if the wildcard matches or contains the given event.
+     *
+     * This function is a direct excerpt from Laravel's Str::is().
+     *
+     * @param string $wildcard
+     * @param string $eventName
+     *
+     * @return bool
+     */
+    protected function wildcardContainsEvent($wildcard, $eventName)
+    {
+        $patterns = Arr::wrap($wildcard);
+
+        if (empty($patterns)) {
+            return false;
+        }
+
+        foreach ($patterns as $pattern) {
+            // If the given event is an exact match we can of course return true right
+            // from the beginning. Otherwise, we will translate asterisks and do an
+            // actual pattern match against the two strings to see if they match.
+            if ($pattern == $eventName) {
+                return true;
+            }
+
+            $pattern = preg_quote($pattern, '#');
+
+            // Asterisks are translated into zero-or-more regular expression wildcards
+            // to make it convenient to check if the strings starts with the given
+            // pattern such as "library/*", making any string check convenient.
+            $pattern = str_replace('\*', '.*', $pattern);
+
+            if (preg_match('#^'.$pattern.'\z#u', $eventName) === 1) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Add the listeners for the event's interfaces to the given array.
+     *
+     * @param string $eventName
+     * @param array  $listeners
+     *
+     * @return array
+     */
+    protected function addInterfaceListeners($eventName, array $listeners = [])
+    {
+        foreach (class_implements($eventName) as $interface) {
+            if (isset($this->listeners[$interface])) {
+                foreach ($this->listeners[$interface] as $names) {
+                    $listeners = array_merge($listeners, (array) $names);
+                }
+            }
+        }
+
+        return $listeners;
+    }
+
+    /**
+     * Register an event listener with the dispatcher.
+     *
+     * @param \Closure|string $listener
+     * @param bool            $wildcard
+     *
+     * @return \Closure
+     */
+    public function makeListener($listener, $wildcard = false)
+    {
+        if (is_string($listener)) {
+            return $this->createClassListener($listener, $wildcard);
+        }
+
+        return function ($event, $payload) use ($listener, $wildcard) {
+            if ($wildcard) {
+                return $listener($event, $payload);
+            }
+
+            return $listener(...array_values($payload));
+        };
+    }
+
+    /**
+     * Create a class based listener.
+     *
+     * @param string $listener
+     * @param bool   $wildcard
+     *
+     * @return \Closure
+     */
+    protected function createClassListener($listener, $wildcard = false)
+    {
+        return function ($event, $payload) use ($listener, $wildcard) {
+            if ($wildcard) {
+                return call_user_func($this->createClassCallable($listener), $event, $payload);
+            }
+
+            return call_user_func_array(
+                $this->createClassCallable($listener),
+                $payload
+            );
+        };
+    }
+
+    /**
+     * Create the class based event callable.
+     *
+     * @param string $listener
+     *
+     * @return callable
+     */
+    protected function createClassCallable($listener)
+    {
+        [$class, $method] = $this->parseListenerCallback($listener);
+
+        return [new $class(), $method];
+    }
+
+    /**
+     * Parse the class listener into class and method.
+     *
+     * @param string $listener
+     *
+     * @return array
+     */
+    protected function parseListenerCallback($listener)
+    {
+        return strpos($listener, '@') !== false
+            ? explode('@', $listener, 2)
+            : [$listener, 'handle'];
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function forget($event)
+    {
+        if (strpos($event, '*') !== false) {
+            unset($this->wildcards[$event]);
+        } else {
+            unset($this->listeners[$event]);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/DispatcherInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/DispatcherInterface.php
new file mode 100644
index 0000000..6b7cb10
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/DispatcherInterface.php
@@ -0,0 +1,75 @@
+<?php
+
+namespace LdapRecord\Events;
+
+interface DispatcherInterface
+{
+    /**
+     * Register an event listener with the dispatcher.
+     *
+     * @param string|array $events
+     * @param mixed        $listener
+     *
+     * @return void
+     */
+    public function listen($events, $listener);
+
+    /**
+     * Determine if a given event has listeners.
+     *
+     * @param string $eventName
+     *
+     * @return bool
+     */
+    public function hasListeners($eventName);
+
+    /**
+     * Fire an event until the first non-null response is returned.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     *
+     * @return array|null
+     */
+    public function until($event, $payload = []);
+
+    /**
+     * Fire an event and call the listeners.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     * @param bool          $halt
+     *
+     * @return mixed
+     */
+    public function fire($event, $payload = [], $halt = false);
+
+    /**
+     * Fire an event and call the listeners.
+     *
+     * @param string|object $event
+     * @param mixed         $payload
+     * @param bool          $halt
+     *
+     * @return array|null
+     */
+    public function dispatch($event, $payload = [], $halt = false);
+
+    /**
+     * Get all of the listeners for a given event name.
+     *
+     * @param string $eventName
+     *
+     * @return array
+     */
+    public function getListeners($eventName);
+
+    /**
+     * Remove a set of listeners from the dispatcher.
+     *
+     * @param string $event
+     *
+     * @return void
+     */
+    public function forget($event);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Logger.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Logger.php
new file mode 100644
index 0000000..f3840c2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Events/Logger.php
@@ -0,0 +1,141 @@
+<?php
+
+namespace LdapRecord\Events;
+
+use LdapRecord\Auth\Events\Event as AuthEvent;
+use LdapRecord\Auth\Events\Failed;
+use LdapRecord\Models\Events\Event as ModelEvent;
+use LdapRecord\Query\Events\QueryExecuted as QueryEvent;
+use Psr\Log\LoggerInterface;
+use ReflectionClass;
+
+class Logger
+{
+    /**
+     * The logger instance.
+     *
+     * @var LoggerInterface|null
+     */
+    protected $logger;
+
+    /**
+     * Constructor.
+     *
+     * @param LoggerInterface|null $logger
+     */
+    public function __construct(LoggerInterface $logger = null)
+    {
+        $this->logger = $logger;
+    }
+
+    /**
+     * Logs the given event.
+     *
+     * @param mixed $event
+     *
+     * @return void
+     */
+    public function log($event)
+    {
+        switch (true) {
+            case $event instanceof AuthEvent:
+                return $this->auth($event);
+            case $event instanceof ModelEvent:
+                return $this->model($event);
+            case $event instanceof QueryEvent:
+                return $this->query($event);
+        }
+    }
+
+    /**
+     * Logs an authentication event.
+     *
+     * @param AuthEvent $event
+     *
+     * @return void
+     */
+    public function auth(AuthEvent $event)
+    {
+        if (isset($this->logger)) {
+            $connection = $event->getConnection();
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - Username: {$event->getUsername()}";
+
+            $result = null;
+            $type = 'info';
+
+            if (is_a($event, Failed::class)) {
+                $type = 'warning';
+                $result = " - Reason: {$connection->getLastError()}";
+            }
+
+            $this->logger->$type($message.$result);
+        }
+    }
+
+    /**
+     * Logs a model event.
+     *
+     * @param ModelEvent $event
+     *
+     * @return void
+     */
+    public function model(ModelEvent $event)
+    {
+        if (isset($this->logger)) {
+            $model = $event->getModel();
+
+            $on = get_class($model);
+
+            $connection = $model->getConnection()->getLdapConnection();
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - On: {$on}"
+                ." - Distinguished Name: {$model->getDn()}";
+
+            $this->logger->info($message);
+        }
+    }
+
+    /**
+     * Logs a query event.
+     *
+     * @param QueryEvent $event
+     *
+     * @return void
+     */
+    public function query(QueryEvent $event)
+    {
+        if (isset($this->logger)) {
+            $query = $event->getQuery();
+
+            $connection = $query->getConnection()->getLdapConnection();
+
+            $selected = implode(',', $query->getSelects());
+
+            $message = "LDAP ({$connection->getHost()})"
+                ." - Operation: {$this->getOperationName($event)}"
+                ." - Base DN: {$query->getBaseDn()}"
+                ." - Filter: {$query->getQuery()}"
+                ." - Selected: ({$selected})"
+                ." - Time Elapsed: {$event->getTime()}";
+
+            $this->logger->info($message);
+        }
+    }
+
+    /**
+     * Returns the operational name of the given event.
+     *
+     * @param mixed $event
+     *
+     * @return string
+     */
+    protected function getOperationName($event)
+    {
+        return (new ReflectionClass($event))->getShortName();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/AlreadyExistsException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/AlreadyExistsException.php
new file mode 100644
index 0000000..2298caf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/AlreadyExistsException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Exceptions;
+
+use LdapRecord\LdapRecordException;
+
+class AlreadyExistsException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/ConstraintViolationException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/ConstraintViolationException.php
new file mode 100644
index 0000000..641843a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/ConstraintViolationException.php
@@ -0,0 +1,35 @@
+<?php
+
+namespace LdapRecord\Exceptions;
+
+use LdapRecord\DetectsErrors;
+use LdapRecord\LdapRecordException;
+
+class ConstraintViolationException extends LdapRecordException
+{
+    use DetectsErrors;
+
+    /**
+     * Determine if the exception was generated due to the password policy.
+     *
+     * @return bool
+     */
+    public function causedByPasswordPolicy()
+    {
+        return isset($this->detailedError)
+                ? $this->errorContainsMessage($this->detailedError->getDiagnosticMessage(), '0000052D')
+                : false;
+    }
+
+    /**
+     * Determine if the exception was generated due to an incorrect password.
+     *
+     * @return bool
+     */
+    public function causedByIncorrectPassword()
+    {
+        return isset($this->detailedError)
+                ? $this->errorContainsMessage($this->detailedError->getDiagnosticMessage(), '00000056')
+                : false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/InsufficientAccessException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/InsufficientAccessException.php
new file mode 100644
index 0000000..89c55fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Exceptions/InsufficientAccessException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Exceptions;
+
+use LdapRecord\LdapRecordException;
+
+class InsufficientAccessException extends LdapRecordException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/HandlesConnection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/HandlesConnection.php
new file mode 100644
index 0000000..41334b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/HandlesConnection.php
@@ -0,0 +1,261 @@
+<?php
+
+namespace LdapRecord;
+
+use Closure;
+use ErrorException;
+use Exception;
+
+trait HandlesConnection
+{
+    /**
+     * The LDAP host that is currently connected.
+     *
+     * @var string|null
+     */
+    protected $host;
+
+    /**
+     * The LDAP connection resource.
+     *
+     * @var resource|null
+     */
+    protected $connection;
+
+    /**
+     * The bound status of the connection.
+     *
+     * @var bool
+     */
+    protected $bound = false;
+
+    /**
+     * Whether the connection must be bound over SSL.
+     *
+     * @var bool
+     */
+    protected $useSSL = false;
+
+    /**
+     * Whether the connection must be bound over TLS.
+     *
+     * @var bool
+     */
+    protected $useTLS = false;
+
+    /**
+     * @inheritdoc
+     */
+    public function isUsingSSL()
+    {
+        return $this->useSSL;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isUsingTLS()
+    {
+        return $this->useTLS;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isBound()
+    {
+        return $this->bound;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isConnected()
+    {
+        return ! is_null($this->connection);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function canChangePasswords()
+    {
+        return $this->isUsingSSL() || $this->isUsingTLS();
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function ssl($enabled = true)
+    {
+        $this->useSSL = $enabled;
+
+        return $this;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function tls($enabled = true)
+    {
+        $this->useTLS = $enabled;
+
+        return $this;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function setOptions(array $options = [])
+    {
+        foreach ($options as $option => $value) {
+            $this->setOption($option, $value);
+        }
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getHost()
+    {
+        return $this->host;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getProtocol()
+    {
+        return $this->isUsingSSL() ? LdapInterface::PROTOCOL_SSL : LdapInterface::PROTOCOL;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getExtendedError()
+    {
+        return $this->getDiagnosticMessage();
+    }
+
+    /**
+     * Convert warnings to exceptions for the given operation.
+     *
+     * @param Closure $operation
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function executeFailableOperation(Closure $operation)
+    {
+        // If some older versions of PHP, errors are reported instead of throwing
+        // exceptions, which could be a signifcant detriment to our application.
+        // Here, we will enforce these operations to throw exceptions instead.
+        set_error_handler(function ($severity, $message, $file, $line) {
+            if (! $this->shouldBypassError($message)) {
+                throw new ErrorException($message, $severity, $severity, $file, $line);
+            }
+        });
+
+        try {
+            if (($result = $operation()) !== false) {
+                return $result;
+            }
+
+            // If the failed query operation was a based on a query being executed
+            // -- such as a search, read, or listing, then we can safely return
+            // the failed response here and prevent throwning an exception.
+            if ($this->shouldBypassFailure($method = debug_backtrace()[1]['function'])) {
+                return $result;
+            }
+
+            throw new Exception("LDAP operation [$method] failed.");
+        } catch (ErrorException $e) {
+            throw LdapRecordException::withDetailedError($e, $this->getDetailedError());
+        } finally {
+            restore_error_handler();
+        }
+    }
+
+    /**
+     * Determine if the failed operation should be bypassed.
+     *
+     * @param string $method
+     *
+     * @return bool
+     */
+    protected function shouldBypassFailure($method)
+    {
+        return in_array($method, ['search', 'read', 'listing']);
+    }
+
+    /**
+     * Determine if the error should be bypassed.
+     *
+     * @param string $error
+     *
+     * @return bool
+     */
+    protected function shouldBypassError($error)
+    {
+        return $this->causedByPaginationSupport($error) || $this->causedBySizeLimit($error) || $this->causedByNoSuchObject($error);
+    }
+
+    /**
+     * Determine if the current PHP version supports server controls.
+     *
+     * @deprecated since v2.5.0
+     *
+     * @return bool
+     */
+    public function supportsServerControlsInMethods()
+    {
+        return version_compare(PHP_VERSION, '7.3.0') >= 0;
+    }
+
+    /**
+     * Generates an LDAP connection string for each host given.
+     *
+     * @param string|array $hosts
+     * @param string       $port
+     *
+     * @return string
+     */
+    protected function makeConnectionUris($hosts, $port)
+    {
+        // If an attempt to connect via SSL protocol is being performed,
+        // and we are still using the default port, we will swap it
+        // for the default SSL port, for developer convenience.
+        if ($this->isUsingSSL() && $port == LdapInterface::PORT) {
+            $port = LdapInterface::PORT_SSL;
+        }
+
+        // The blank space here is intentional. PHP's LDAP extension
+        // requires additional hosts to be seperated by a blank
+        // space, so that it can parse each individually.
+        return implode(' ', $this->assembleHostUris($hosts, $port));
+    }
+
+    /**
+     * Assemble the host URI strings.
+     *
+     * @param array|string $hosts
+     * @param string       $port
+     *
+     * @return array
+     */
+    protected function assembleHostUris($hosts, $port)
+    {
+        return array_map(function ($host) use ($port) {
+            return "{$this->getProtocol()}{$host}:{$port}";
+        }, (array) $hosts);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Ldap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Ldap.php
new file mode 100644
index 0000000..6503cea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Ldap.php
@@ -0,0 +1,480 @@
+<?php
+
+namespace LdapRecord;
+
+class Ldap implements LdapInterface
+{
+    use HandlesConnection, DetectsErrors;
+
+    /**
+     * @inheritdoc
+     */
+    public function getEntries($searchResults)
+    {
+        return $this->executeFailableOperation(function () use ($searchResults) {
+            return ldap_get_entries($this->connection, $searchResults);
+        });
+    }
+
+    /**
+     * Retrieves the first entry from a search result.
+     *
+     * @see http://php.net/manual/en/function.ldap-first-entry.php
+     *
+     * @param resource $searchResults
+     *
+     * @return resource
+     */
+    public function getFirstEntry($searchResults)
+    {
+        return $this->executeFailableOperation(function () use ($searchResults) {
+            return ldap_first_entry($this->connection, $searchResults);
+        });
+    }
+
+    /**
+     * Retrieves the next entry from a search result.
+     *
+     * @see http://php.net/manual/en/function.ldap-next-entry.php
+     *
+     * @param resource $entry
+     *
+     * @return resource
+     */
+    public function getNextEntry($entry)
+    {
+        return $this->executeFailableOperation(function () use ($entry) {
+            return ldap_next_entry($this->connection, $entry);
+        });
+    }
+
+    /**
+     * Retrieves the ldap entry's attributes.
+     *
+     * @see http://php.net/manual/en/function.ldap-get-attributes.php
+     *
+     * @param resource $entry
+     *
+     * @return array|false
+     */
+    public function getAttributes($entry)
+    {
+        return $this->executeFailableOperation(function () use ($entry) {
+            return ldap_get_attributes($this->connection, $entry);
+        });
+    }
+
+    /**
+     * Returns the number of entries from a search result.
+     *
+     * @see http://php.net/manual/en/function.ldap-count-entries.php
+     *
+     * @param resource $searchResults
+     *
+     * @return int
+     */
+    public function countEntries($searchResults)
+    {
+        return $this->executeFailableOperation(function () use ($searchResults) {
+            return ldap_count_entries($this->connection, $searchResults);
+        });
+    }
+
+    /**
+     * Compare value of attribute found in entry specified with DN.
+     *
+     * @see http://php.net/manual/en/function.ldap-compare.php
+     *
+     * @param string $dn
+     * @param string $attribute
+     * @param string $value
+     *
+     * @return mixed
+     */
+    public function compare($dn, $attribute, $value)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $attribute, $value) {
+            return ldap_compare($this->connection, $dn, $attribute, $value);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getLastError()
+    {
+        if (! $this->connection) {
+            return;
+        }
+
+        return ldap_error($this->connection);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getDetailedError()
+    {
+        if (! $number = $this->errNo()) {
+            return;
+        }
+
+        $this->getOption(LDAP_OPT_DIAGNOSTIC_MESSAGE, $message);
+
+        return new DetailedError($number, $this->err2Str($number), $message);
+    }
+
+    /**
+     * Get all binary values from the specified result entry.
+     *
+     * @see http://php.net/manual/en/function.ldap-get-values-len.php
+     *
+     * @param $entry
+     * @param $attribute
+     *
+     * @return array
+     */
+    public function getValuesLen($entry, $attribute)
+    {
+        return $this->executeFailableOperation(function () use ($entry, $attribute) {
+            return ldap_get_values_len($this->connection, $entry, $attribute);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function setOption($option, $value)
+    {
+        return ldap_set_option($this->connection, $option, $value);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getOption($option, &$value = null)
+    {
+        ldap_get_option($this->connection, $option, $value);
+
+        return $value;
+    }
+
+    /**
+     * Set a callback function to do re-binds on referral chasing.
+     *
+     * @see http://php.net/manual/en/function.ldap-set-rebind-proc.php
+     *
+     * @param callable $callback
+     *
+     * @return bool
+     */
+    public function setRebindCallback(callable $callback)
+    {
+        return ldap_set_rebind_proc($this->connection, $callback);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function startTLS()
+    {
+        return $this->executeFailableOperation(function () {
+            return ldap_start_tls($this->connection);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function connect($hosts = [], $port = 389)
+    {
+        $this->bound = false;
+
+        $this->host = $this->makeConnectionUris($hosts, $port);
+
+        return $this->connection = $this->executeFailableOperation(function () {
+            return ldap_connect($this->host);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function close()
+    {
+        $result = is_resource($this->connection) ? @ldap_close($this->connection) : false;
+
+        $this->connection = null;
+        $this->bound = false;
+        $this->host = null;
+
+        return $result;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function search($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->executeFailableOperation(function () use (
+            $dn,
+            $filter,
+            $fields,
+            $onlyAttributes,
+            $size,
+            $time,
+            $deref,
+            $serverControls
+        ) {
+            return empty($serverControls)
+                ? ldap_search($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref)
+                : ldap_search($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref, $serverControls);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function listing($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->executeFailableOperation(function () use (
+            $dn,
+            $filter,
+            $fields,
+            $onlyAttributes,
+            $size,
+            $time,
+            $deref,
+            $serverControls
+        ) {
+            return empty($serverControls)
+                ? ldap_list($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref)
+                : ldap_list($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref, $serverControls);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function read($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->executeFailableOperation(function () use (
+            $dn,
+            $filter,
+            $fields,
+            $onlyAttributes,
+            $size,
+            $time,
+            $deref,
+            $serverControls
+        ) {
+            return empty($serverControls)
+                ? ldap_read($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref)
+                : ldap_read($this->connection, $dn, $filter, $fields, $onlyAttributes, $size, $time, $deref, $serverControls);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function parseResult($result, &$errorCode, &$dn, &$errorMessage, &$referrals, &$serverControls = [])
+    {
+        return $this->executeFailableOperation(function () use (
+            $result,
+            &$errorCode,
+            &$dn,
+            &$errorMessage,
+            &$referrals,
+            &$serverControls
+        ) {
+            return empty($serverControls)
+                ? ldap_parse_result($this->connection, $result, $errorCode, $dn, $errorMessage, $referrals)
+                : ldap_parse_result($this->connection, $result, $errorCode, $dn, $errorMessage, $referrals, $serverControls);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function bind($username, $password)
+    {
+        return $this->bound = $this->executeFailableOperation(function () use ($username, $password) {
+            return ldap_bind($this->connection, $username, html_entity_decode($password));
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function add($dn, array $entry)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $entry) {
+            return ldap_add($this->connection, $dn, $entry);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function delete($dn)
+    {
+        return $this->executeFailableOperation(function () use ($dn) {
+            return ldap_delete($this->connection, $dn);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function rename($dn, $newRdn, $newParent, $deleteOldRdn = false)
+    {
+        return $this->executeFailableOperation(function () use (
+            $dn,
+            $newRdn,
+            $newParent,
+            $deleteOldRdn
+        ) {
+            return ldap_rename($this->connection, $dn, $newRdn, $newParent, $deleteOldRdn);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modify($dn, array $entry)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $entry) {
+            return ldap_modify($this->connection, $dn, $entry);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modifyBatch($dn, array $values)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $values) {
+            return ldap_modify_batch($this->connection, $dn, $values);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modAdd($dn, array $entry)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $entry) {
+            return ldap_mod_add($this->connection, $dn, $entry);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modReplace($dn, array $entry)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $entry) {
+            return ldap_mod_replace($this->connection, $dn, $entry);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modDelete($dn, array $entry)
+    {
+        return $this->executeFailableOperation(function () use ($dn, $entry) {
+            return ldap_mod_del($this->connection, $dn, $entry);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function controlPagedResult($pageSize = 1000, $isCritical = false, $cookie = '')
+    {
+        return $this->executeFailableOperation(function () use ($pageSize, $isCritical, $cookie) {
+            return ldap_control_paged_result($this->connection, $pageSize, $isCritical, $cookie);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function controlPagedResultResponse($result, &$cookie, &$estimated = null)
+    {
+        return $this->executeFailableOperation(function () use ($result, &$cookie, &$estimated) {
+            return ldap_control_paged_result_response($this->connection, $result, $cookie, $estimated);
+        });
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function freeResult($result)
+    {
+        return ldap_free_result($result);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function errNo()
+    {
+        return $this->connection ? ldap_errno($this->connection) : null;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function err2Str($number)
+    {
+        return ldap_err2str($number);
+    }
+
+    /**
+     * Returns the extended error hex code of the last command.
+     *
+     * @return string|null
+     */
+    public function getExtendedErrorHex()
+    {
+        if (preg_match("/(?<=data\s).*?(?=,)/", $this->getExtendedError(), $code)) {
+            return $code[0];
+        }
+    }
+
+    /**
+     * Returns the extended error code of the last command.
+     *
+     * @return bool|string
+     */
+    public function getExtendedErrorCode()
+    {
+        return $this->extractDiagnosticCode($this->getExtendedError());
+    }
+
+    /**
+     * Extract the diagnostic code from the message.
+     *
+     * @param string $message
+     *
+     * @return string|bool
+     */
+    public function extractDiagnosticCode($message)
+    {
+        preg_match('/^([\da-fA-F]+):/', $message, $matches);
+
+        return isset($matches[1]) ? $matches[1] : false;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getDiagnosticMessage()
+    {
+        $this->getOption(LDAP_OPT_ERROR_STRING, $message);
+
+        return $message;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapInterface.php
new file mode 100644
index 0000000..a1773ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapInterface.php
@@ -0,0 +1,517 @@
+<?php
+
+namespace LdapRecord;
+
+interface LdapInterface
+{
+    /**
+     * The SSL LDAP protocol string.
+     *
+     * @var string
+     */
+    const PROTOCOL_SSL = 'ldaps://';
+
+    /**
+     * The standard LDAP protocol string.
+     *
+     * @var string
+     */
+    const PROTOCOL = 'ldap://';
+
+    /**
+     * The LDAP SSL port number.
+     *
+     * @var string
+     */
+    const PORT_SSL = 636;
+
+    /**
+     * The standard LDAP port number.
+     *
+     * @var string
+     */
+    const PORT = 389;
+
+    /**
+     * Various useful server control OID's.
+     *
+     * @see https://ldap.com/ldap-oid-reference-guide/
+     * @see http://msdn.microsoft.com/en-us/library/cc223359.aspx
+     */
+    const OID_SERVER_START_TLS = '1.3.6.1.4.1.1466.20037';
+    const OID_SERVER_PAGED_RESULTS = '1.2.840.113556.1.4.319';
+    const OID_SERVER_SHOW_DELETED = '1.2.840.113556.1.4.417';
+    const OID_SERVER_SORT = '1.2.840.113556.1.4.473';
+    const OID_SERVER_CROSSDOM_MOVE_TARGET = '1.2.840.113556.1.4.521';
+    const OID_SERVER_NOTIFICATION = '1.2.840.113556.1.4.528';
+    const OID_SERVER_EXTENDED_DN = '1.2.840.113556.1.4.529';
+    const OID_SERVER_LAZY_COMMIT = '1.2.840.113556.1.4.619';
+    const OID_SERVER_SD_FLAGS = '1.2.840.113556.1.4.801';
+    const OID_SERVER_TREE_DELETE = '1.2.840.113556.1.4.805';
+    const OID_SERVER_DIRSYNC = '1.2.840.113556.1.4.841';
+    const OID_SERVER_VERIFY_NAME = '1.2.840.113556.1.4.1338';
+    const OID_SERVER_DOMAIN_SCOPE = '1.2.840.113556.1.4.1339';
+    const OID_SERVER_SEARCH_OPTIONS = '1.2.840.113556.1.4.1340';
+    const OID_SERVER_PERMISSIVE_MODIFY = '1.2.840.113556.1.4.1413';
+    const OID_SERVER_ASQ = '1.2.840.113556.1.4.1504';
+    const OID_SERVER_FAST_BIND = '1.2.840.113556.1.4.1781';
+    const OID_SERVER_CONTROL_VLVREQUEST = '2.16.840.1.113730.3.4.9';
+
+    /**
+     * Query OID's.
+     *
+     * @see https://ldapwiki.com/wiki/LDAP_MATCHING_RULE_IN_CHAIN
+     */
+    const OID_MATCHING_RULE_IN_CHAIN = '1.2.840.113556.1.4.1941';
+
+    /**
+     * Set the current connection to use SSL.
+     *
+     * @param bool $enabled
+     *
+     * @return $this
+     */
+    public function ssl();
+
+    /**
+     * Determine if the current connection instance is using SSL.
+     *
+     * @return bool
+     */
+    public function isUsingSSL();
+
+    /**
+     * Set the current connection to use TLS.
+     *
+     * @param bool $enabled
+     *
+     * @return $this
+     */
+    public function tls();
+
+    /**
+     * Determine if the current connection instance is using TLS.
+     *
+     * @return bool
+     */
+    public function isUsingTLS();
+
+    /**
+     * Determine if the connection is bound.
+     *
+     * @return bool
+     */
+    public function isBound();
+
+    /**
+     * Determine if the connection has been created.
+     *
+     * @return bool
+     */
+    public function isConnected();
+
+    /**
+     * Determine the connection is able to modify passwords.
+     *
+     * @return bool
+     */
+    public function canChangePasswords();
+
+    /**
+     * Returns the full LDAP host URL.
+     *
+     * Ex: ldap://192.168.1.1:386
+     *
+     * @return string|null
+     */
+    public function getHost();
+
+    /**
+     * Get the underlying connection resource.
+     *
+     * @return resource|null
+     */
+    public function getConnection();
+
+    /**
+     * Retrieve the entries from a search result.
+     *
+     * @see http://php.net/manual/en/function.ldap-get-entries.php
+     *
+     * @param resource $searchResults
+     *
+     * @return array
+     */
+    public function getEntries($searchResults);
+
+    /**
+     * Retrieve the last error on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-error.php
+     *
+     * @return string|null
+     */
+    public function getLastError();
+
+    /**
+     * Return detailed information about an error.
+     *
+     * Returns false when there was a successful last request.
+     *
+     * Returns DetailedError when there was an error.
+     *
+     * @return DetailedError|null
+     */
+    public function getDetailedError();
+
+    /**
+     * Set an option on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-set-option.php
+     *
+     * @param int   $option
+     * @param mixed $value
+     *
+     * @return bool
+     */
+    public function setOption($option, $value);
+
+    /**
+     * Set options on the current connection.
+     *
+     * @param array $options
+     *
+     * @return void
+     */
+    public function setOptions(array $options = []);
+
+    /**
+     * Get the value for the LDAP option.
+     *
+     * @see https://www.php.net/manual/en/function.ldap-get-option.php
+     *
+     * @param int   $option
+     * @param mixed $value
+     *
+     * @return mixed
+     */
+    public function getOption($option, &$value = null);
+
+    /**
+     * Starts a connection using TLS.
+     *
+     * @see http://php.net/manual/en/function.ldap-start-tls.php
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function startTLS();
+
+    /**
+     * Connects to the specified hostname using the specified port.
+     *
+     * @see http://php.net/manual/en/function.ldap-start-tls.php
+     *
+     * @param string|array $hosts
+     * @param int          $port
+     *
+     * @return resource|false
+     */
+    public function connect($hosts = [], $port = 389);
+
+    /**
+     * Closes the current connection.
+     *
+     * Returns false if no connection is present.
+     *
+     * @see http://php.net/manual/en/function.ldap-close.php
+     *
+     * @return bool
+     */
+    public function close();
+
+    /**
+     * Performs a search on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-search.php
+     *
+     * @param string $dn
+     * @param string $filter
+     * @param array  $fields
+     * @param bool   $onlyAttributes
+     * @param int    $size
+     * @param int    $time
+     * @param int    $deref
+     * @param array  $serverControls
+     *
+     * @return resource
+     */
+    public function search($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = []);
+
+    /**
+     * Performs a single level search on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-list.php
+     *
+     * @param string $dn
+     * @param string $filter
+     * @param array  $fields
+     * @param bool   $onlyAttributes
+     * @param int    $size
+     * @param int    $time
+     * @param int    $deref
+     * @param array  $serverControls
+     *
+     * @return resource
+     */
+    public function listing($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = []);
+
+    /**
+     * Reads an entry on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-read.php
+     *
+     * @param string $dn
+     * @param string $filter
+     * @param array  $fields
+     * @param bool   $onlyAttributes
+     * @param int    $size
+     * @param int    $time
+     * @param int    $deref
+     * @param array  $serverControls
+     *
+     * @return resource
+     */
+    public function read($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = []);
+
+    /**
+     * Extract information from an LDAP result.
+     *
+     * @see https://www.php.net/manual/en/function.ldap-parse-result.php
+     *
+     * @param resource $result
+     * @param int      $errorCode
+     * @param string   $dn
+     * @param string   $errorMessage
+     * @param array    $referrals
+     * @param array    $serverControls
+     *
+     * @return bool
+     */
+    public function parseResult($result, &$errorCode, &$dn, &$errorMessage, &$referrals, &$serverControls = []);
+
+    /**
+     * Binds to the current connection using the specified username and password.
+     * If sasl is true, the current connection is bound using SASL.
+     *
+     * @see http://php.net/manual/en/function.ldap-bind.php
+     *
+     * @param string $username
+     * @param string $password
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function bind($username, $password);
+
+    /**
+     * Adds an entry to the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-add.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function add($dn, array $entry);
+
+    /**
+     * Deletes an entry on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-delete.php
+     *
+     * @param string $dn
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function delete($dn);
+
+    /**
+     * Modify the name of an entry on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-rename.php
+     *
+     * @param string $dn
+     * @param string $newRdn
+     * @param string $newParent
+     * @param bool   $deleteOldRdn
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function rename($dn, $newRdn, $newParent, $deleteOldRdn = false);
+
+    /**
+     * Modifies an existing entry on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-modify.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function modify($dn, array $entry);
+
+    /**
+     * Batch modifies an existing entry on the current connection.
+     *
+     * @see http://php.net/manual/en/function.ldap-modify-batch.php
+     *
+     * @param string $dn
+     * @param array  $values
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function modifyBatch($dn, array $values);
+
+    /**
+     * Add attribute values to current attributes.
+     *
+     * @see http://php.net/manual/en/function.ldap-mod-add.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function modAdd($dn, array $entry);
+
+    /**
+     * Replaces attribute values with new ones.
+     *
+     * @see http://php.net/manual/en/function.ldap-mod-replace.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function modReplace($dn, array $entry);
+
+    /**
+     * Delete attribute values from current attributes.
+     *
+     * @see http://php.net/manual/en/function.ldap-mod-del.php
+     *
+     * @param string $dn
+     * @param array  $entry
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function modDelete($dn, array $entry);
+
+    /**
+     * Send LDAP pagination control.
+     *
+     * @see http://php.net/manual/en/function.ldap-control-paged-result.php
+     *
+     * @param int    $pageSize
+     * @param bool   $isCritical
+     * @param string $cookie
+     *
+     * @return bool
+     */
+    public function controlPagedResult($pageSize = 1000, $isCritical = false, $cookie = '');
+
+    /**
+     * Retrieve the LDAP pagination cookie.
+     *
+     * @see http://php.net/manual/en/function.ldap-control-paged-result-response.php
+     *
+     * @param resource $result
+     * @param string   $cookie
+     *
+     * @return bool
+     */
+    public function controlPagedResultResponse($result, &$cookie);
+
+    /**
+     * Frees up the memory allocated internally to store the result.
+     *
+     * @see https://www.php.net/manual/en/function.ldap-free-result.php
+     *
+     * @param resource $result
+     *
+     * @return bool
+     */
+    public function freeResult($result);
+
+    /**
+     * Returns the error number of the last command executed.
+     *
+     * @see http://php.net/manual/en/function.ldap-errno.php
+     *
+     * @return int|null
+     */
+    public function errNo();
+
+    /**
+     * Returns the error string of the specified error number.
+     *
+     * @see http://php.net/manual/en/function.ldap-err2str.php
+     *
+     * @param int $number
+     *
+     * @return string
+     */
+    public function err2Str($number);
+
+    /**
+     * Returns the LDAP protocol to utilize for the current connection.
+     *
+     * @return string
+     */
+    public function getProtocol();
+
+    /**
+     * Returns the extended error code of the last command.
+     *
+     * @return string
+     */
+    public function getExtendedError();
+
+    /**
+     * Return the diagnostic Message.
+     *
+     * @return string
+     */
+    public function getDiagnosticMessage();
+
+    /**
+     * Determine if the current PHP version supports server controls.
+     *
+     * @deprecated since v2.5.0
+     *
+     * @return bool
+     */
+    public function supportsServerControlsInMethods();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapRecordException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapRecordException.php
new file mode 100644
index 0000000..b2439bf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/LdapRecordException.php
@@ -0,0 +1,52 @@
+<?php
+
+namespace LdapRecord;
+
+use Exception;
+
+class LdapRecordException extends Exception
+{
+    /**
+     * The detailed LDAP error (if available).
+     *
+     * @var DetailedError|null
+     */
+    protected $detailedError;
+
+    /**
+     * Create a new Bind Exception with a detailed connection error.
+     *
+     * @param Exception          $e
+     * @param DetailedError|null $error
+     *
+     * @return $this
+     */
+    public static function withDetailedError(Exception $e, DetailedError $error = null)
+    {
+        return (new static($e->getMessage(), $e->getCode(), $e))->setDetailedError($error);
+    }
+
+    /**
+     * Set the detailed error.
+     *
+     * @param DetailedError|null $error
+     *
+     * @return $this
+     */
+    public function setDetailedError(DetailedError $error = null)
+    {
+        $this->detailedError = $error;
+
+        return $this;
+    }
+
+    /**
+     * Returns the detailed error.
+     *
+     * @return DetailedError|null
+     */
+    public function getDetailedError()
+    {
+        return $this->detailedError;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Computer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Computer.php
new file mode 100644
index 0000000..72db0a0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Computer.php
@@ -0,0 +1,55 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+use LdapRecord\Models\ActiveDirectory\Concerns\HasPrimaryGroup;
+
+class Computer extends Entry
+{
+    use HasPrimaryGroup;
+
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'person',
+        'organizationalperson',
+        'user',
+        'computer',
+    ];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the current computer is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'member')->with($this->primaryGroup());
+    }
+
+    /**
+     * The primary group relationship.
+     *
+     * @return Relations\HasOnePrimaryGroup
+     */
+    public function primaryGroup()
+    {
+        return $this->hasOnePrimaryGroup(Group::class, 'primarygroupid');
+    }
+
+    /**
+     * The managed by relationship.
+     *
+     * @return \LdapRecord\Models\Relations\HasOne
+     */
+    public function managedBy()
+    {
+        return $this->hasOne([Contact::class, Group::class, User::class], 'managedby');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Concerns/HasPrimaryGroup.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Concerns/HasPrimaryGroup.php
new file mode 100644
index 0000000..97fd3a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Concerns/HasPrimaryGroup.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory\Concerns;
+
+use LdapRecord\Models\ActiveDirectory\Relations\HasOnePrimaryGroup;
+
+trait HasPrimaryGroup
+{
+    /**
+     * Returns a new has one primary group relationship.
+     *
+     * @param mixed  $related
+     * @param string $relationKey
+     * @param string $foreignKey
+     *
+     * @return HasOnePrimaryGroup
+     */
+    public function hasOnePrimaryGroup($related, $relationKey, $foreignKey = 'primarygroupid')
+    {
+        return new HasOnePrimaryGroup($this->newQuery(), $this, $related, $relationKey, $foreignKey);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Contact.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Contact.php
new file mode 100644
index 0000000..52c451f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Contact.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class Contact extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'person',
+        'organizationalperson',
+        'contact',
+    ];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the current contact is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'member');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Container.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Container.php
new file mode 100644
index 0000000..1636cf3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Container.php
@@ -0,0 +1,16 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class Container extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'container',
+    ];
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Entry.php
new file mode 100644
index 0000000..79a9d63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Entry.php
@@ -0,0 +1,167 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+use InvalidArgumentException;
+use LdapRecord\Connection;
+use LdapRecord\Models\Attributes\Sid;
+use LdapRecord\Models\Entry as BaseEntry;
+use LdapRecord\Models\Events\Updated;
+use LdapRecord\Models\Types\ActiveDirectory;
+use LdapRecord\Query\Model\ActiveDirectoryBuilder;
+
+/** @mixin ActiveDirectoryBuilder */
+class Entry extends BaseEntry implements ActiveDirectory
+{
+    /**
+     * The default attributes that should be mutated to dates.
+     *
+     * @var array
+     */
+    protected $defaultDates = [
+        'whenchanged' => 'windows',
+        'whencreated' => 'windows',
+        'dscorepropagationdata' => 'windows',
+    ];
+
+    /**
+     * The attribute key that contains the Object SID.
+     *
+     * @var string
+     */
+    protected $sidKey = 'objectsid';
+
+    /**
+     * @inheritdoc
+     */
+    public function getObjectSidKey()
+    {
+        return $this->sidKey;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getObjectSid()
+    {
+        return $this->getFirstAttribute($this->sidKey);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getConvertedSid()
+    {
+        try {
+            return (string) new Sid($this->getObjectSid());
+        } catch (InvalidArgumentException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Create a new query builder.
+     *
+     * @param Connection $connection
+     *
+     * @return ActiveDirectoryBuilder
+     */
+    public function newQueryBuilder(Connection $connection)
+    {
+        return new ActiveDirectoryBuilder($connection);
+    }
+
+    /**
+     * Determine if the object is deleted.
+     *
+     * @return bool
+     */
+    public function isDeleted()
+    {
+        return strtoupper($this->getFirstAttribute('isDeleted')) === 'TRUE';
+    }
+
+    /**
+     * Restore a deleted object.
+     *
+     * @param string|null $newParentDn
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return bool
+     */
+    public function restore($newParentDn = null)
+    {
+        if (! $this->isDeleted()) {
+            return false;
+        }
+
+        $root = $newParentDn ?? $this->getDefaultRestoreLocation();
+        $rdn = explode('\0A', $this->getDn(), 2)[0];
+        $newDn = implode(',', [$rdn, $root]);
+
+        // We will initialize a model listener for the "updated" event to set
+        // the models distinguished name so all attributes are synchronized
+        // properly after the model has been successfully restored.
+        $this->listenForModelEvent(Updated::class, function (Updated $event) use ($newDn) {
+            if ($this->is($event->getModel())) {
+                $this->setDn($newDn);
+            }
+        });
+
+        $this->save([
+            'isDeleted' => null,
+            'distinguishedName' => $newDn,
+        ]);
+    }
+
+    /**
+     * Get the RootDSE (AD schema) record from the directory.
+     *
+     * @param string|null $connection
+     *
+     * @throws \LdapRecord\Models\ModelNotFoundException
+     *
+     * @return static
+     */
+    public static function getRootDse($connection = null)
+    {
+        return static::on($connection ?? (new static())->getConnectionName())
+            ->in(null)
+            ->read()
+            ->whereHas('objectclass')
+            ->firstOrFail();
+    }
+
+    /**
+     * Get the objects restore location.
+     *
+     * @return string
+     */
+    protected function getDefaultRestoreLocation()
+    {
+        return $this->getFirstAttribute('lastKnownParent') ?? $this->getParentDn($this->getParentDn($this->getDn()));
+    }
+
+    /**
+     * Converts attributes for JSON serialization.
+     *
+     * @param array $attributes
+     *
+     * @return array
+     */
+    protected function convertAttributesForJson(array $attributes = [])
+    {
+        $attributes = parent::convertAttributesForJson($attributes);
+
+        if ($this->hasAttribute($this->sidKey)) {
+            // If the model has a SID set, we need to convert it due to it being in
+            // binary. Otherwise we will receive a JSON serialization exception.
+            return array_replace($attributes, [
+                $this->sidKey => [$this->getConvertedSid()],
+            ]);
+        }
+
+        return $attributes;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeDatabase.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeDatabase.php
new file mode 100644
index 0000000..77abbbc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeDatabase.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class ExchangeDatabase extends Entry
+{
+    /**
+     * @inheritdoc
+     */
+    public static $objectClasses = ['msExchMDB'];
+
+    /**
+     * @inheritdoc
+     */
+    public static function boot()
+    {
+        parent::boot();
+
+        static::addGlobalScope(new Scopes\InConfigurationContext());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeServer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeServer.php
new file mode 100644
index 0000000..d304876
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ExchangeServer.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class ExchangeServer extends Entry
+{
+    /**
+     * @inheritdoc
+     */
+    public static $objectClasses = ['msExchExchangeServer'];
+
+    /**
+     * @inheritdoc
+     */
+    public static function boot()
+    {
+        parent::boot();
+
+        static::addGlobalScope(new Scopes\HasServerRoleAttribute());
+        static::addGlobalScope(new Scopes\InConfigurationContext());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ForeignSecurityPrincipal.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ForeignSecurityPrincipal.php
new file mode 100644
index 0000000..25287ae
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/ForeignSecurityPrincipal.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class ForeignSecurityPrincipal extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = ['foreignsecurityprincipal'];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the current security principal is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'member');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Group.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Group.php
new file mode 100644
index 0000000..6076f2f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Group.php
@@ -0,0 +1,70 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class Group extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'group',
+    ];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the current group is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(static::class, 'member');
+    }
+
+    /**
+     * The members relationship.
+     *
+     * Retrieves members that are apart of the group.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function members()
+    {
+        return $this->hasMany([
+            static::class, User::class, Contact::class, Computer::class,
+        ], 'memberof')
+            ->using($this, 'member')
+            ->with($this->primaryGroupMembers());
+    }
+
+    /**
+     * The primary group members relationship.
+     *
+     * Retrieves members that are apart the primary group.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function primaryGroupMembers()
+    {
+        return $this->hasMany([
+            static::class, User::class, Contact::class, Computer::class,
+        ], 'primarygroupid', 'rid');
+    }
+
+    /**
+     * Get the RID of the group.
+     *
+     * @return array
+     */
+    public function getRidAttribute()
+    {
+        $objectSidComponents = explode('-', $this->getConvertedSid());
+
+        return [end($objectSidComponents)];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/OrganizationalUnit.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/OrganizationalUnit.php
new file mode 100644
index 0000000..80aae9f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/OrganizationalUnit.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class OrganizationalUnit extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'organizationalunit',
+    ];
+
+    /**
+     * Get the creatable RDN attribute name.
+     *
+     * @return string
+     */
+    public function getCreatableRdnAttribute()
+    {
+        return 'ou';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Printer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Printer.php
new file mode 100644
index 0000000..df74216
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Printer.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+class Printer extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = ['printqueue'];
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Relations/HasOnePrimaryGroup.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Relations/HasOnePrimaryGroup.php
new file mode 100644
index 0000000..540ec77
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Relations/HasOnePrimaryGroup.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory\Relations;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Relations\HasOne;
+
+class HasOnePrimaryGroup extends HasOne
+{
+    /**
+     * Get the foreign model by the given value.
+     *
+     * @param string $value
+     *
+     * @return Model|null
+     */
+    protected function getForeignModelByValue($value)
+    {
+        return $this->query->findBySid(
+            $this->getParentModelObjectSid()
+        );
+    }
+
+    /**
+     * Get the foreign value from the given model.
+     *
+     * Retrieves the last RID from the models Object SID.
+     *
+     * @param Model $model
+     *
+     * @return string
+     */
+    protected function getForeignValueFromModel(Model $model)
+    {
+        $objectSidComponents = explode('-', $model->getConvertedSid());
+
+        return end($objectSidComponents);
+    }
+
+    /**
+     * Get the parent relationship models converted object sid.
+     *
+     * @return string
+     */
+    protected function getParentModelObjectSid()
+    {
+        return preg_replace(
+            '/\d+$/',
+            $this->parent->getFirstAttribute($this->relationKey),
+            $this->parent->getConvertedSid()
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/HasServerRoleAttribute.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/HasServerRoleAttribute.php
new file mode 100644
index 0000000..cd08648
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/HasServerRoleAttribute.php
@@ -0,0 +1,23 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory\Scopes;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Scope;
+use LdapRecord\Query\Model\Builder;
+
+class HasServerRoleAttribute implements Scope
+{
+    /**
+     * Includes condition of having a serverRole attribute.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model)
+    {
+        $query->whereHas('serverRole');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/InConfigurationContext.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/InConfigurationContext.php
new file mode 100644
index 0000000..2b1a177
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/InConfigurationContext.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory\Scopes;
+
+use LdapRecord\Models\ActiveDirectory\Entry;
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Scope;
+use LdapRecord\Query\Model\Builder;
+
+class InConfigurationContext implements Scope
+{
+    /**
+     * Refines the base dn to be inside the configuration context.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @throws \LdapRecord\Models\ModelNotFoundException
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model)
+    {
+        $query->in($this->getConfigurationNamingContext($model));
+    }
+
+    /**
+     * Get the LDAP server configuration naming context distinguished name.
+     *
+     * @param Model $model
+     *
+     * @throws \LdapRecord\Models\ModelNotFoundException
+     *
+     * @return mixed
+     */
+    protected function getConfigurationNamingContext(Model $model)
+    {
+        return Entry::getRootDse($model->getConnectionName())
+            ->getFirstAttribute('configurationNamingContext');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/RejectComputerObjectClass.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/RejectComputerObjectClass.php
new file mode 100644
index 0000000..a616db1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/Scopes/RejectComputerObjectClass.php
@@ -0,0 +1,23 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory\Scopes;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Scope;
+use LdapRecord\Query\Model\Builder;
+
+class RejectComputerObjectClass implements Scope
+{
+    /**
+     * Prevent computer objects from being included in results.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model)
+    {
+        $query->where('objectclass', '!=', 'computer');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/User.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/User.php
new file mode 100644
index 0000000..84dd74b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ActiveDirectory/User.php
@@ -0,0 +1,120 @@
+<?php
+
+namespace LdapRecord\Models\ActiveDirectory;
+
+use Illuminate\Contracts\Auth\Authenticatable;
+use LdapRecord\Models\ActiveDirectory\Concerns\HasPrimaryGroup;
+use LdapRecord\Models\ActiveDirectory\Scopes\RejectComputerObjectClass;
+use LdapRecord\Models\Concerns\CanAuthenticate;
+use LdapRecord\Models\Concerns\HasPassword;
+use LdapRecord\Query\Model\Builder;
+
+class User extends Entry implements Authenticatable
+{
+    use HasPassword;
+    use HasPrimaryGroup;
+    use CanAuthenticate;
+
+    /**
+     * The password's attribute name.
+     *
+     * @var string
+     */
+    protected $passwordAttribute = 'unicodepwd';
+
+    /**
+     * The password's hash method.
+     *
+     * @var string
+     */
+    protected $passwordHashMethod = 'encode';
+
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'person',
+        'organizationalperson',
+        'user',
+    ];
+
+    /**
+     * The attributes that should be mutated to dates.
+     *
+     * @var array
+     */
+    protected $dates = [
+        'lastlogon' => 'windows-int',
+        'lastlogoff' => 'windows-int',
+        'pwdlastset' => 'windows-int',
+        'lockouttime' => 'windows-int',
+        'accountexpires' => 'windows-int',
+        'badpasswordtime' => 'windows-int',
+        'lastlogontimestamp' => 'windows-int',
+    ];
+
+    /**
+     * @inheritdoc
+     */
+    protected static function boot()
+    {
+        parent::boot();
+
+        // Here we will add a global scope to reject the 'computer' object
+        // class. This is needed due to computer objects containing all
+        // of the ActiveDirectory 'user' object classes. Without
+        // this scope, they would be included in results.
+        static::addGlobalScope(new RejectComputerObjectClass());
+    }
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the user is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'member')->with($this->primaryGroup());
+    }
+
+    /**
+     * The manager relationship.
+     *
+     * Retrieves the manager of the user.
+     *
+     * @return \LdapRecord\Models\Relations\HasOne
+     */
+    public function manager()
+    {
+        return $this->hasOne(static::class, 'manager');
+    }
+
+    /**
+     * The primary group relationship of the current user.
+     *
+     * Retrieves the primary group the user is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasOne
+     */
+    public function primaryGroup()
+    {
+        return $this->hasOnePrimaryGroup(Group::class, 'primarygroupid');
+    }
+
+    /**
+     * Scopes the query to exchange mailbox users.
+     *
+     * @param Builder $query
+     *
+     * @return Builder
+     */
+    public function scopeWhereHasMailbox(Builder $query)
+    {
+        return $query->whereHas('msExchMailboxGuid');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/AccountControl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/AccountControl.php
new file mode 100644
index 0000000..9c6240b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/AccountControl.php
@@ -0,0 +1,502 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use ReflectionClass;
+
+class AccountControl
+{
+    const SCRIPT = 1;
+
+    const ACCOUNTDISABLE = 2;
+
+    const HOMEDIR_REQUIRED = 8;
+
+    const LOCKOUT = 16;
+
+    const PASSWD_NOTREQD = 32;
+
+    const PASSWD_CANT_CHANGE = 64;
+
+    const ENCRYPTED_TEXT_PWD_ALLOWED = 128;
+
+    const TEMP_DUPLICATE_ACCOUNT = 256;
+
+    const NORMAL_ACCOUNT = 512;
+
+    const INTERDOMAIN_TRUST_ACCOUNT = 2048;
+
+    const WORKSTATION_TRUST_ACCOUNT = 4096;
+
+    const SERVER_TRUST_ACCOUNT = 8192;
+
+    const DONT_EXPIRE_PASSWORD = 65536;
+
+    const MNS_LOGON_ACCOUNT = 131072;
+
+    const SMARTCARD_REQUIRED = 262144;
+
+    const TRUSTED_FOR_DELEGATION = 524288;
+
+    const NOT_DELEGATED = 1048576;
+
+    const USE_DES_KEY_ONLY = 2097152;
+
+    const DONT_REQ_PREAUTH = 4194304;
+
+    const PASSWORD_EXPIRED = 8388608;
+
+    const TRUSTED_TO_AUTH_FOR_DELEGATION = 16777216;
+
+    const PARTIAL_SECRETS_ACCOUNT = 67108864;
+
+    /**
+     * The account control flag values.
+     *
+     * @var array
+     */
+    protected $values = [];
+
+    /**
+     * Constructor.
+     *
+     * @param int $flag
+     */
+    public function __construct($flag = null)
+    {
+        if (! is_null($flag)) {
+            $this->apply($flag);
+        }
+    }
+
+    /**
+     * Get the value when casted to string.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->getValue();
+    }
+
+    /**
+     * Get the value when casted to int.
+     *
+     * @return int
+     */
+    public function __toInt()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Add the flag to the account control values.
+     *
+     * @param int $flag
+     *
+     * @return $this
+     */
+    public function add($flag)
+    {
+        // Use the value as a key so if the same value
+        // is used, it will always be overwritten
+        $this->values[$flag] = $flag;
+
+        return $this;
+    }
+
+    /**
+     * Remove the flag from the account control.
+     *
+     * @param int $flag
+     *
+     * @return $this
+     */
+    public function remove($flag)
+    {
+        unset($this->values[$flag]);
+
+        return $this;
+    }
+
+    /**
+     * Extract and apply the flag.
+     *
+     * @param int $flag
+     *
+     * @return void
+     */
+    public function apply($flag)
+    {
+        $this->setValues($this->extractFlags($flag));
+    }
+
+    /**
+     * Determine if the account control contains the given UAC flag(s).
+     *
+     * @param int $flag
+     *
+     * @return bool
+     */
+    public function has($flag)
+    {
+        // Here we will extract the given flag into an array
+        // of possible flags. This will allow us to see if
+        // our AccountControl object contains any of them.
+        $flagsUsed = array_intersect(
+            $this->extractFlags($flag),
+            $this->values
+        );
+
+        return in_array($flag, $flagsUsed);
+    }
+
+    /**
+     * Determine if the account control does not contain the given UAC flag(s).
+     *
+     * @param int $flag
+     *
+     * @return bool
+     */
+    public function doesntHave($flag)
+    {
+        return ! $this->has($flag);
+    }
+
+    /**
+     * Generate an LDAP filter based on the current value.
+     *
+     * @return string
+     */
+    public function filter()
+    {
+        return sprintf('(UserAccountControl:1.2.840.113556.1.4.803:=%s)', $this->getValue());
+    }
+
+    /**
+     * The logon script will be run.
+     *
+     * @return $this
+     */
+    public function runLoginScript()
+    {
+        return $this->add(static::SCRIPT);
+    }
+
+    /**
+     * The user account is locked.
+     *
+     * @return $this
+     */
+    public function accountIsLocked()
+    {
+        return $this->add(static::LOCKOUT);
+    }
+
+    /**
+     * The user account is disabled.
+     *
+     * @return $this
+     */
+    public function accountIsDisabled()
+    {
+        return $this->add(static::ACCOUNTDISABLE);
+    }
+
+    /**
+     * This is an account for users whose primary account is in another domain.
+     *
+     * This account provides user access to this domain, but not to any domain that
+     * trusts this domain. This is sometimes referred to as a local user account.
+     *
+     * @return $this
+     */
+    public function accountIsTemporary()
+    {
+        return $this->add(static::TEMP_DUPLICATE_ACCOUNT);
+    }
+
+    /**
+     * This is a default account type that represents a typical user.
+     *
+     * @return $this
+     */
+    public function accountIsNormal()
+    {
+        return $this->add(static::NORMAL_ACCOUNT);
+    }
+
+    /**
+     * This is a permit to trust an account for a system domain that trusts other domains.
+     *
+     * @return $this
+     */
+    public function accountIsForInterdomain()
+    {
+        return $this->add(static::INTERDOMAIN_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is a computer account for a computer that is running Microsoft
+     * Windows NT 4.0 Workstation, Microsoft Windows NT 4.0 Server, Microsoft
+     * Windows 2000 Professional, or Windows 2000 Server and is a member of this domain.
+     *
+     * @return $this
+     */
+    public function accountIsForWorkstation()
+    {
+        return $this->add(static::WORKSTATION_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is a computer account for a domain controller that is a member of this domain.
+     *
+     * @return $this
+     */
+    public function accountIsForServer()
+    {
+        return $this->add(static::SERVER_TRUST_ACCOUNT);
+    }
+
+    /**
+     * This is an MNS logon account.
+     *
+     * @return $this
+     */
+    public function accountIsMnsLogon()
+    {
+        return $this->add(static::MNS_LOGON_ACCOUNT);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) This account does
+     * not require Kerberos pre-authentication for logging on.
+     *
+     * @return $this
+     */
+    public function accountDoesNotRequirePreAuth()
+    {
+        return $this->add(static::DONT_REQ_PREAUTH);
+    }
+
+    /**
+     * When this flag is set, it forces the user to log on by using a smart card.
+     *
+     * @return $this
+     */
+    public function accountRequiresSmartCard()
+    {
+        return $this->add(static::SMARTCARD_REQUIRED);
+    }
+
+    /**
+     * (Windows Server 2008/Windows Server 2008 R2) The account is a read-only domain controller (RODC).
+     *
+     * This is a security-sensitive setting. Removing this setting from an RODC compromises security on that server.
+     *
+     * @return $this
+     */
+    public function accountIsReadOnly()
+    {
+        return $this->add(static::PARTIAL_SECRETS_ACCOUNT);
+    }
+
+    /**
+     * The home folder is required.
+     *
+     * @return $this
+     */
+    public function homeFolderIsRequired()
+    {
+        return $this->add(static::HOMEDIR_REQUIRED);
+    }
+
+    /**
+     * No password is required.
+     *
+     * @return $this
+     */
+    public function passwordIsNotRequired()
+    {
+        return $this->add(static::PASSWD_NOTREQD);
+    }
+
+    /**
+     * The user cannot change the password. This is a permission on the user's object.
+     *
+     * For information about how to programmatically set this permission, visit the following link:
+     *
+     * @see http://msdn2.microsoft.com/en-us/library/aa746398.aspx
+     *
+     * @return $this
+     */
+    public function passwordCannotBeChanged()
+    {
+        return $this->add(static::PASSWD_CANT_CHANGE);
+    }
+
+    /**
+     * Represents the password, which should never expire on the account.
+     *
+     * @return $this
+     */
+    public function passwordDoesNotExpire()
+    {
+        return $this->add(static::DONT_EXPIRE_PASSWORD);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) The user's password has expired.
+     *
+     * @return $this
+     */
+    public function passwordIsExpired()
+    {
+        return $this->add(static::PASSWORD_EXPIRED);
+    }
+
+    /**
+     * The user can send an encrypted password.
+     *
+     * @return $this
+     */
+    public function allowEncryptedTextPassword()
+    {
+        return $this->add(static::ENCRYPTED_TEXT_PWD_ALLOWED);
+    }
+
+    /**
+     * When this flag is set, the service account (the user or computer account)
+     * under which a service runs is trusted for Kerberos delegation.
+     *
+     * Any such service can impersonate a client requesting the service.
+     *
+     * To enable a service for Kerberos delegation, you must set this
+     * flag on the userAccountControl property of the service account.
+     *
+     * @return $this
+     */
+    public function trustForDelegation()
+    {
+        return $this->add(static::TRUSTED_FOR_DELEGATION);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) The account is enabled for delegation.
+     *
+     * This is a security-sensitive setting. Accounts that have this option enabled
+     * should be tightly controlled. This setting lets a service that runs under the
+     * account assume a client's identity and authenticate as that user to other remote
+     * servers on the network.
+     *
+     * @return $this
+     */
+    public function trustToAuthForDelegation()
+    {
+        return $this->add(static::TRUSTED_TO_AUTH_FOR_DELEGATION);
+    }
+
+    /**
+     * When this flag is set, the security context of the user is not delegated to a
+     * service even if the service account is set as trusted for Kerberos delegation.
+     *
+     * @return $this
+     */
+    public function doNotTrustForDelegation()
+    {
+        return $this->add(static::NOT_DELEGATED);
+    }
+
+    /**
+     * (Windows 2000/Windows Server 2003) Restrict this principal to
+     * use only Data Encryption Standard (DES) encryption types for keys.
+     *
+     * @return $this
+     */
+    public function useDesKeyOnly()
+    {
+        return $this->add(static::USE_DES_KEY_ONLY);
+    }
+
+    /**
+     * Get the account control value.
+     *
+     * @return int
+     */
+    public function getValue()
+    {
+        return array_sum($this->values);
+    }
+
+    /**
+     * Get the account control flag values.
+     *
+     * @return array
+     */
+    public function getValues()
+    {
+        return $this->values;
+    }
+
+    /**
+     * Set the account control values.
+     *
+     * @param array $flags
+     *
+     * @return void
+     */
+    public function setValues(array $flags)
+    {
+        $this->values = $flags;
+    }
+
+    /**
+     * Get all flags that are currently applied to the value.
+     *
+     * @return array
+     */
+    public function getAppliedFlags()
+    {
+        $flags = $this->getAllFlags();
+
+        $exists = [];
+
+        foreach ($flags as $name => $flag) {
+            if ($this->has($flag)) {
+                $exists[$name] = $flag;
+            }
+        }
+
+        return $exists;
+    }
+
+    /**
+     * Get all possible account control flags.
+     *
+     * @return array
+     */
+    public function getAllFlags()
+    {
+        return (new ReflectionClass(__CLASS__))->getConstants();
+    }
+
+    /**
+     * Extracts the given flag into an array of flags used.
+     *
+     * @param int $flag
+     *
+     * @return array
+     */
+    public function extractFlags($flag)
+    {
+        $flags = [];
+
+        for ($i = 0; $i <= 26; $i++) {
+            if ((int) $flag & (1 << $i)) {
+                $flags[1 << $i] = 1 << $i;
+            }
+        }
+
+        return $flags;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedName.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedName.php
new file mode 100644
index 0000000..c092173
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedName.php
@@ -0,0 +1,419 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use LdapRecord\EscapesValues;
+use LdapRecord\Support\Arr;
+
+class DistinguishedName
+{
+    use EscapesValues;
+
+    /**
+     * The underlying raw value.
+     *
+     * @var string|null
+     */
+    protected $value;
+
+    /**
+     * Constructor.
+     *
+     * @param string|null $value
+     */
+    public function __construct($value = null)
+    {
+        $this->value = trim($value);
+    }
+
+    /**
+     * Get the distinguished name value.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->value;
+    }
+
+    /**
+     * Alias of the "build" method.
+     *
+     * @param string|null $value
+     *
+     * @return DistinguishedNameBuilder
+     */
+    public static function of($value = null)
+    {
+        return static::build($value);
+    }
+
+    /**
+     * Get a new DN builder object from the given DN.
+     *
+     * @param string|null $value
+     *
+     * @return DistinguishedNameBuilder
+     */
+    public static function build($value = null)
+    {
+        return new DistinguishedNameBuilder($value);
+    }
+
+    /**
+     * Make a new distinguished name instance.
+     *
+     * @param string|null $value
+     *
+     * @return static
+     */
+    public static function make($value = null)
+    {
+        return new static($value);
+    }
+
+    /**
+     * Explode a distinguished name into relative distinguished names.
+     *
+     * @param string $dn
+     *
+     * @return array
+     */
+    public static function explode($dn)
+    {
+        $dn = ldap_explode_dn($dn, $withoutAttributes = false);
+
+        if (! is_array($dn)) {
+            return [];
+        }
+
+        if (! array_key_exists('count', $dn)) {
+            return [];
+        }
+
+        unset($dn['count']);
+
+        return $dn;
+    }
+
+    /**
+     * Un-escapes a hexadecimal string into its original string representation.
+     *
+     * @param string $value
+     *
+     * @return string
+     */
+    public static function unescape($value)
+    {
+        return preg_replace_callback('/\\\([0-9A-Fa-f]{2})/', function ($matches) {
+            return chr(hexdec($matches[1]));
+        }, $value);
+    }
+
+    /**
+     * Explode the RDN into an attribute and value.
+     *
+     * @param string $rdn
+     *
+     * @return array
+     */
+    public static function explodeRdn($rdn)
+    {
+        return explode('=', $rdn, $limit = 2);
+    }
+
+    /**
+     * Implode the component attribute and value into an RDN.
+     *
+     * @param string $rdn
+     *
+     * @return string
+     */
+    public static function makeRdn(array $component)
+    {
+        return implode('=', $component);
+    }
+
+    /**
+     * Get the underlying value.
+     *
+     * @return string|null
+     */
+    public function get()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Set the underlying value.
+     *
+     * @param string|null $value
+     *
+     * @return $this
+     */
+    public function set($value)
+    {
+        $this->value = $value;
+
+        return $this;
+    }
+
+    /**
+     * Get the distinguished name values without attributes.
+     *
+     * @return array
+     */
+    public function values()
+    {
+        $values = [];
+
+        foreach ($this->multi() as [, $value]) {
+            $values[] = static::unescape($value);
+        }
+
+        return $values;
+    }
+
+    /**
+     * Get the distinguished name attributes without values.
+     *
+     * @return array
+     */
+    public function attributes()
+    {
+        $attributes = [];
+
+        foreach ($this->multi() as [$attribute]) {
+            $attributes[] = $attribute;
+        }
+
+        return $attributes;
+    }
+
+    /**
+     * Get the distinguished name components with attributes.
+     *
+     * @return array
+     */
+    public function components()
+    {
+        $components = [];
+
+        foreach ($this->multi() as [$attribute, $value]) {
+            // When a distinguished name is exploded, the values are automatically
+            // escaped. This cannot be opted out of. Here we will unescape
+            // the attribute value, then re-escape it to its original
+            // representation from the server using the "dn" flag.
+            $value = $this->escape(static::unescape($value))->dn();
+
+            $components[] = static::makeRdn([$attribute, $value]);
+        }
+
+        return $components;
+    }
+
+    /**
+     * Convert the distinguished name into an associative array.
+     *
+     * @return array
+     */
+    public function assoc()
+    {
+        $map = [];
+
+        foreach ($this->multi() as [$attribute, $value]) {
+            $attribute = $this->normalize($attribute);
+
+            array_key_exists($attribute, $map)
+                ? $map[$attribute][] = $value
+                : $map[$attribute] = [$value];
+        }
+
+        return $map;
+    }
+
+    /**
+     * Split the RDNs into a multi-dimensional array.
+     *
+     * @return array
+     */
+    public function multi()
+    {
+        return array_map(function ($rdn) {
+            return static::explodeRdn($rdn);
+        }, $this->rdns());
+    }
+
+    /**
+     * Split the distinguished name into an array of unescaped RDN's.
+     *
+     * @return array
+     */
+    public function rdns()
+    {
+        return static::explode($this->value);
+    }
+
+    /**
+     * Get the first RDNs value.
+     *
+     * @return string|null
+     */
+    public function name()
+    {
+        return Arr::first($this->values());
+    }
+
+    /**
+     * Get the first RDNs attribute.
+     *
+     * @return string|null
+     */
+    public function head()
+    {
+        return Arr::first($this->attributes());
+    }
+
+    /**
+     * Get the relative distinguished name.
+     *
+     * @return string|null
+     */
+    public function relative()
+    {
+        return Arr::first($this->components());
+    }
+
+    /**
+     * Alias of relative().
+     *
+     * Get the first RDN from the distinguished name.
+     *
+     * @return string|null
+     */
+    public function first()
+    {
+        return $this->relative();
+    }
+
+    /**
+     * Get the parent distinguished name.
+     *
+     * @return string|null
+     */
+    public function parent()
+    {
+        $components = $this->components();
+
+        array_shift($components);
+
+        return implode(',', $components) ?: null;
+    }
+
+    /**
+     * Determine if the current distinguished name is a parent of the given child.
+     *
+     * @param DistinguishedName $child
+     *
+     * @return bool
+     */
+    public function isParentOf(self $child)
+    {
+        return $child->isChildOf($this);
+    }
+
+    /**
+     * Determine if the current distinguished name is a child of the given parent.
+     *
+     * @param DistinguishedName $parent
+     *
+     * @return bool
+     */
+    public function isChildOf(self $parent)
+    {
+        if (
+            empty($components = $this->components()) ||
+            empty($parentComponents = $parent->components())
+        ) {
+            return false;
+        }
+
+        array_shift($components);
+
+        return $this->compare($components, $parentComponents);
+    }
+
+    /**
+     * Determine if the current distinguished name is an ancestor of the descendant.
+     *
+     * @param DistinguishedName $descendant
+     *
+     * @return bool
+     */
+    public function isAncestorOf(self $descendant)
+    {
+        return $descendant->isDescendantOf($this);
+    }
+
+    /**
+     * Determine if the current distinguished name is a descendant of the ancestor.
+     *
+     * @param DistinguishedName $ancestor
+     *
+     * @return bool
+     */
+    public function isDescendantOf(self $ancestor)
+    {
+        if (
+            empty($components = $this->components()) ||
+            empty($ancestorComponents = $ancestor->components())
+        ) {
+            return false;
+        }
+
+        if (! $length = count($components) - count($ancestorComponents)) {
+            return false;
+        }
+
+        array_splice($components, $offset = 0, $length);
+
+        return $this->compare($components, $ancestorComponents);
+    }
+
+    /**
+     * Compare whether the two distinguished name values are equal.
+     *
+     * @param array $values
+     * @param array $other
+     *
+     * @return bool
+     */
+    protected function compare(array $values, array $other)
+    {
+        return $this->recase($values) == $this->recase($other);
+    }
+
+    /**
+     * Recase the array values.
+     *
+     * @param array $values
+     *
+     * @return array
+     */
+    protected function recase(array $values)
+    {
+        return array_map([$this, 'normalize'], $values);
+    }
+
+    /**
+     * Normalize the string value.
+     *
+     * @param string $value
+     *
+     * @return string
+     */
+    protected function normalize($value)
+    {
+        return strtolower($value);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedNameBuilder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedNameBuilder.php
new file mode 100644
index 0000000..83dfe71
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/DistinguishedNameBuilder.php
@@ -0,0 +1,251 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use LdapRecord\EscapesValues;
+use LdapRecord\Support\Arr;
+
+class DistinguishedNameBuilder
+{
+    use EscapesValues;
+
+    /**
+     * The components of the DN.
+     *
+     * @var array
+     */
+    protected $components = [];
+
+    /**
+     * Whether to output the DN in reverse.
+     *
+     * @var bool
+     */
+    protected $reverse = false;
+
+    /**
+     * Constructor.
+     *
+     * @param string|null $value
+     */
+    public function __construct($dn = null)
+    {
+        $this->components = array_map(function ($rdn) {
+            return DistinguishedName::explodeRdn($rdn);
+        }, DistinguishedName::make($dn)->components());
+    }
+
+    /**
+     * Forward missing method calls onto the Distinguished Name object.
+     *
+     * @param string $method
+     * @param array  $args
+     *
+     * @return mixed
+     */
+    public function __call($method, $args)
+    {
+        return $this->get()->{$method}(...$args);
+    }
+
+    /**
+     * Get the distinguished name value.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->get();
+    }
+
+    /**
+     * Prepend an RDN onto the DN.
+     *
+     * @param string|array $attribute
+     * @param string|null  $value
+     *
+     * @return $this
+     */
+    public function prepend($attribute, $value = null)
+    {
+        array_unshift(
+            $this->components,
+            ...$this->componentize($attribute, $value)
+        );
+
+        return $this;
+    }
+
+    /**
+     * Append an RDN onto the DN.
+     *
+     * @param string|array $attribute
+     * @param string|null  $value
+     *
+     * @return $this
+     */
+    public function append($attribute, $value = null)
+    {
+        array_push(
+            $this->components,
+            ...$this->componentize($attribute, $value)
+        );
+
+        return $this;
+    }
+
+    /**
+     * Componentize the attribute and value.
+     *
+     * @param string|array $attribute
+     * @param string|null  $value
+     *
+     * @return array
+     */
+    protected function componentize($attribute, $value = null)
+    {
+        // Here we will make the assumption that an array of
+        // RDN's have been given if the value is null, and
+        // attempt to break them into their components.
+        if (is_null($value)) {
+            $attributes = Arr::wrap($attribute);
+
+            $components = array_map([$this, 'makeComponentizedArray'], $attributes);
+        } else {
+            $components = [[$attribute, $value]];
+        }
+
+        return array_map(function ($component) {
+            [$attribute, $value] = $component;
+
+            return $this->makeAppendableComponent($attribute, $value);
+        }, $components);
+    }
+
+    /**
+     * Make a componentized array by exploding the value if it's a string.
+     *
+     * @param string $value
+     *
+     * @return array
+     */
+    protected function makeComponentizedArray($value)
+    {
+        return is_array($value) ? $value : DistinguishedName::explodeRdn($value);
+    }
+
+    /**
+     * Make an appendable component array from the attribute and value.
+     *
+     * @param string|array $attribute
+     * @param string|null  $value
+     *
+     * @return array
+     */
+    protected function makeAppendableComponent($attribute, $value = null)
+    {
+        return [trim($attribute), $this->escape(trim($value))->dn()];
+    }
+
+    /**
+     * Pop an RDN off of the end of the DN.
+     *
+     * @param int   $amount
+     * @param array $removed
+     *
+     * @return $this
+     */
+    public function pop($amount = 1, &$removed = [])
+    {
+        $removed = array_map(function ($component) {
+            return DistinguishedName::makeRdn($component);
+        }, array_splice($this->components, -$amount, $amount));
+
+        return $this;
+    }
+
+    /**
+     * Shift an RDN off of the beginning of the DN.
+     *
+     * @param int   $amount
+     * @param array $removed
+     *
+     * @return $this
+     */
+    public function shift($amount = 1, &$removed = [])
+    {
+        $removed = array_map(function ($component) {
+            return DistinguishedName::makeRdn($component);
+        }, array_splice($this->components, 0, $amount));
+
+        return $this;
+    }
+
+    /**
+     * Whether to output the DN in reverse.
+     *
+     * @return $this
+     */
+    public function reverse()
+    {
+        $this->reverse = true;
+
+        return $this;
+    }
+
+    /**
+     * Get the components of the DN.
+     *
+     * @param null|string $type
+     *
+     * @return array
+     */
+    public function components($type = null)
+    {
+        return is_null($type)
+            ? $this->components
+            : $this->componentsOfType($type);
+    }
+
+    /**
+     * Get the components of a particular type.
+     *
+     * @param string $type
+     *
+     * @return array
+     */
+    protected function componentsOfType($type)
+    {
+        $components = array_filter($this->components, function ($component) use ($type) {
+            return ([$name] = $component) && strtolower($name) === strtolower($type);
+        });
+
+        return array_values($components);
+    }
+
+    /**
+     * Get the fully qualified DN.
+     *
+     * @return DistinguishedName
+     */
+    public function get()
+    {
+        return new DistinguishedName($this->build());
+    }
+
+    /**
+     * Build the distinguished name from the components.
+     *
+     * @return $this
+     */
+    protected function build()
+    {
+        $components = $this->reverse
+            ? array_reverse($this->components)
+            : $this->components;
+
+        return implode(',', array_map(function ($component) {
+            return DistinguishedName::makeRdn($component);
+        }, $components));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/EscapedValue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/EscapedValue.php
new file mode 100644
index 0000000..cc04a67
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/EscapedValue.php
@@ -0,0 +1,111 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+class EscapedValue
+{
+    /**
+     * The value to be escaped.
+     *
+     * @var string
+     */
+    protected $value;
+
+    /**
+     * The characters to ignore when escaping.
+     *
+     * @var string
+     */
+    protected $ignore;
+
+    /**
+     * The escape flags.
+     *
+     * @var int
+     */
+    protected $flags;
+
+    /**
+     * Constructor.
+     *
+     * @param string $value
+     * @param string $ignore
+     * @param int    $flags
+     */
+    public function __construct($value, $ignore = '', $flags = 0)
+    {
+        $this->value = $value;
+        $this->ignore = $ignore;
+        $this->flags = $flags;
+    }
+
+    /**
+     * Get the escaped value.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->get();
+    }
+
+    /**
+     * Get the escaped value.
+     *
+     * @return mixed
+     */
+    public function get()
+    {
+        return ldap_escape($this->value, $this->ignore, $this->flags);
+    }
+
+    /**
+     * Set the characters to exclude from being escaped.
+     *
+     * @param string $characters
+     *
+     * @return $this
+     */
+    public function ignore($characters)
+    {
+        $this->ignore = $characters;
+
+        return $this;
+    }
+
+    /**
+     * Prepare the value to be escaped for use in a distinguished name.
+     *
+     * @return $this
+     */
+    public function dn()
+    {
+        $this->flags = LDAP_ESCAPE_DN;
+
+        return $this;
+    }
+
+    /**
+     * Prepare the value to be escaped for use in a filter.
+     *
+     * @return $this
+     */
+    public function filter()
+    {
+        $this->flags = LDAP_ESCAPE_FILTER;
+
+        return $this;
+    }
+
+    /**
+     * Prepare the value to be escaped for use in a distinguished name and filter.
+     *
+     * @return $this
+     */
+    public function both()
+    {
+        $this->flags = LDAP_ESCAPE_FILTER + LDAP_ESCAPE_DN;
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Guid.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Guid.php
new file mode 100644
index 0000000..d139f5f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Guid.php
@@ -0,0 +1,167 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use InvalidArgumentException;
+use LdapRecord\Utilities;
+
+class Guid
+{
+    /**
+     * The string GUID value.
+     *
+     * @var string
+     */
+    protected $value;
+
+    /**
+     * The guid structure in order by section to parse using substr().
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @see https://github.com/ldaptools/ldaptools
+     *
+     * @var array
+     */
+    protected $guidSections = [
+        [[-26, 2], [-28, 2], [-30, 2], [-32, 2]],
+        [[-22, 2], [-24, 2]],
+        [[-18, 2], [-20, 2]],
+        [[-16, 4]],
+        [[-12, 12]],
+    ];
+
+    /**
+     * The hexadecimal octet order based on string position.
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @see https://github.com/ldaptools/ldaptools
+     *
+     * @var array
+     */
+    protected $octetSections = [
+        [6, 4, 2, 0],
+        [10, 8],
+        [14, 12],
+        [16, 18, 20, 22, 24, 26, 28, 30],
+    ];
+
+    /**
+     * Determines if the specified GUID is valid.
+     *
+     * @param string $guid
+     *
+     * @return bool
+     */
+    public static function isValid($guid)
+    {
+        return Utilities::isValidGuid($guid);
+    }
+
+    /**
+     * Constructor.
+     *
+     * @param mixed $value
+     *
+     * @throws InvalidArgumentException
+     */
+    public function __construct($value)
+    {
+        if (static::isValid($value)) {
+            $this->value = $value;
+        } elseif ($value = $this->binaryGuidToString($value)) {
+            $this->value = $value;
+        } else {
+            throw new InvalidArgumentException('Invalid Binary / String GUID.');
+        }
+    }
+
+    /**
+     * Returns the string value of the GUID.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Get the binary representation of the GUID string.
+     *
+     * @return string
+     */
+    public function getBinary()
+    {
+        return hex2bin($this->getHex());
+    }
+
+    /**
+     * Get the hexadecimal representation of the GUID string.
+     *
+     * @return string
+     */
+    public function getHex()
+    {
+        $data = '';
+
+        $guid = str_replace('-', '', $this->value);
+
+        foreach ($this->octetSections as $section) {
+            $data .= $this->parseSection($guid, $section, $octet = true);
+        }
+
+        return $data;
+    }
+
+    /**
+     * Returns the string variant of a binary GUID.
+     *
+     * @param string $binary
+     *
+     * @return string|null
+     */
+    protected function binaryGuidToString($binary)
+    {
+        return Utilities::binaryGuidToString($binary);
+    }
+
+    /**
+     * Return the specified section of the hexadecimal string.
+     *
+     * @author Chad Sikorra <Chad.Sikorra@gmail.com>
+     *
+     * @see https://github.com/ldaptools/ldaptools
+     *
+     * @param string $hex      The full hex string.
+     * @param array  $sections An array of start and length (unless octet is true, then length is always 2).
+     * @param bool   $octet    Whether this is for octet string form.
+     *
+     * @return string The concatenated sections in upper-case.
+     */
+    protected function parseSection($hex, array $sections, $octet = false)
+    {
+        $parsedString = '';
+
+        foreach ($sections as $section) {
+            $start = $octet ? $section : $section[0];
+
+            $length = $octet ? 2 : $section[1];
+
+            $parsedString .= substr($hex, $start, $length);
+        }
+
+        return $parsedString;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/MbString.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/MbString.php
new file mode 100644
index 0000000..672e60d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/MbString.php
@@ -0,0 +1,80 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+class MbString
+{
+    /**
+     * Get the integer value of a specific character.
+     *
+     * @param $string
+     *
+     * @return int
+     */
+    public static function ord($string)
+    {
+        if (static::isLoaded()) {
+            $result = unpack('N', mb_convert_encoding($string, 'UCS-4BE', 'UTF-8'));
+
+            if (is_array($result)) {
+                return $result[1];
+            }
+        }
+
+        return ord($string);
+    }
+
+    /**
+     * Get the character for a specific integer value.
+     *
+     * @param $int
+     *
+     * @return string
+     */
+    public static function chr($int)
+    {
+        if (static::isLoaded()) {
+            return mb_convert_encoding(pack('n', $int), 'UTF-8', 'UTF-16BE');
+        }
+
+        return chr($int);
+    }
+
+    /**
+     * Split a string into its individual characters and return it as an array.
+     *
+     * @param string $value
+     *
+     * @return string[]
+     */
+    public static function split($value)
+    {
+        return preg_split('/(?<!^)(?!$)/u', $value);
+    }
+
+    /**
+     * Detects if the given string is UTF 8.
+     *
+     * @param $string
+     *
+     * @return string|false
+     */
+    public static function isUtf8($string)
+    {
+        if (static::isLoaded()) {
+            return mb_detect_encoding($string, 'UTF-8', $strict = true);
+        }
+
+        return $string;
+    }
+
+    /**
+     * Checks if the mbstring extension is enabled in PHP.
+     *
+     * @return bool
+     */
+    public static function isLoaded()
+    {
+        return extension_loaded('mbstring');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Password.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Password.php
new file mode 100644
index 0000000..7f0b412
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Password.php
@@ -0,0 +1,340 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use InvalidArgumentException;
+use LdapRecord\LdapRecordException;
+use ReflectionMethod;
+
+class Password
+{
+    const CRYPT_SALT_TYPE_MD5 = 1;
+    const CRYPT_SALT_TYPE_SHA256 = 5;
+    const CRYPT_SALT_TYPE_SHA512 = 6;
+
+    /**
+     * Make an encoded password for transmission over LDAP.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function encode($password)
+    {
+        return iconv('UTF-8', 'UTF-16LE', '"'.$password.'"');
+    }
+
+    /**
+     * Make a salted md5 password.
+     *
+     * @param string      $password
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    public static function smd5($password, $salt = null)
+    {
+        return '{SMD5}'.static::makeHash($password, 'md5', null, $salt ?? random_bytes(4));
+    }
+
+    /**
+     * Make a salted SHA password.
+     *
+     * @param string      $password
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    public static function ssha($password, $salt = null)
+    {
+        return '{SSHA}'.static::makeHash($password, 'sha1', null, $salt ?? random_bytes(4));
+    }
+
+    /**
+     * Make a salted SSHA256 password.
+     *
+     * @param string      $password
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    public static function ssha256($password, $salt = null)
+    {
+        return '{SSHA256}'.static::makeHash($password, 'hash', 'sha256', $salt ?? random_bytes(4));
+    }
+
+    /**
+     * Make a salted SSHA384 password.
+     *
+     * @param string      $password
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    public static function ssha384($password, $salt = null)
+    {
+        return '{SSHA384}'.static::makeHash($password, 'hash', 'sha384', $salt ?? random_bytes(4));
+    }
+
+    /**
+     * Make a salted SSHA512 password.
+     *
+     * @param string      $password
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    public static function ssha512($password, $salt = null)
+    {
+        return '{SSHA512}'.static::makeHash($password, 'hash', 'sha512', $salt ?? random_bytes(4));
+    }
+
+    /**
+     * Make a non-salted SHA password.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function sha($password)
+    {
+        return '{SHA}'.static::makeHash($password, 'sha1');
+    }
+
+    /**
+     * Make a non-salted SHA256 password.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function sha256($password)
+    {
+        return '{SHA256}'.static::makeHash($password, 'hash', 'sha256');
+    }
+
+    /**
+     * Make a non-salted SHA384 password.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function sha384($password)
+    {
+        return '{SHA384}'.static::makeHash($password, 'hash', 'sha384');
+    }
+
+    /**
+     * Make a non-salted SHA512 password.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function sha512($password)
+    {
+        return '{SHA512}'.static::makeHash($password, 'hash', 'sha512');
+    }
+
+    /**
+     * Make a non-salted md5 password.
+     *
+     * @param string $password
+     *
+     * @return string
+     */
+    public static function md5($password)
+    {
+        return '{MD5}'.static::makeHash($password, 'md5');
+    }
+
+    /**
+     * Crypt password with an MD5 salt.
+     *
+     * @param string $password
+     * @param string $salt
+     *
+     * @return string
+     */
+    public static function md5Crypt($password, $salt = null)
+    {
+        return '{CRYPT}'.static::makeCrypt($password, static::CRYPT_SALT_TYPE_MD5, $salt);
+    }
+
+    /**
+     * Crypt password with a SHA256 salt.
+     *
+     * @param string $password
+     * @param string $salt
+     *
+     * @return string
+     */
+    public static function sha256Crypt($password, $salt = null)
+    {
+        return '{CRYPT}'.static::makeCrypt($password, static::CRYPT_SALT_TYPE_SHA256, $salt);
+    }
+
+    /**
+     * Crypt a password with a SHA512 salt.
+     *
+     * @param string $password
+     * @param string $salt
+     *
+     * @return string
+     */
+    public static function sha512Crypt($password, $salt = null)
+    {
+        return '{CRYPT}'.static::makeCrypt($password, static::CRYPT_SALT_TYPE_SHA512, $salt);
+    }
+
+    /**
+     * Make a new password hash.
+     *
+     * @param string      $password The password to make a hash of.
+     * @param string      $method   The hash function to use.
+     * @param string|null $algo     The algorithm to use for hashing.
+     * @param string|null $salt     The salt to append onto the hash.
+     *
+     * @return string
+     */
+    protected static function makeHash($password, $method, $algo = null, $salt = null)
+    {
+        $params = $algo ? [$algo, $password.$salt] : [$password.$salt];
+
+        return base64_encode(pack('H*', call_user_func($method, ...$params)).$salt);
+    }
+
+    /**
+     * Make a hashed password.
+     *
+     * @param string      $password
+     * @param int         $type
+     * @param null|string $salt
+     *
+     * @return string
+     */
+    protected static function makeCrypt($password, $type, $salt = null)
+    {
+        return crypt($password, $salt ?? static::makeCryptSalt($type));
+    }
+
+    /**
+     * Make a salt for the crypt() method using the given type.
+     *
+     * @param int $type
+     *
+     * @return string
+     */
+    protected static function makeCryptSalt($type)
+    {
+        [$prefix, $length] = static::makeCryptPrefixAndLength($type);
+
+        $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
+
+        while (strlen($prefix) < $length) {
+            $prefix .= substr($chars, random_int(0, strlen($chars) - 1), 1);
+        }
+
+        return $prefix;
+    }
+
+    /**
+     * Determine the crypt prefix and length.
+     *
+     * @param int $type
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return array
+     */
+    protected static function makeCryptPrefixAndLength($type)
+    {
+        switch ($type) {
+            case static::CRYPT_SALT_TYPE_MD5:
+                return ['$1$', 12];
+            case static::CRYPT_SALT_TYPE_SHA256:
+                return ['$5$', 16];
+            case static::CRYPT_SALT_TYPE_SHA512:
+                return ['$6$', 16];
+            default:
+                throw new InvalidArgumentException("Invalid crypt type [$type].");
+        }
+    }
+
+    /**
+     * Attempt to retrieve the hash method used for the password.
+     *
+     * @param string $password
+     *
+     * @return string|void
+     */
+    public static function getHashMethod($password)
+    {
+        if (! preg_match('/^\{(\w+)\}/', $password, $matches)) {
+            return;
+        }
+
+        return $matches[1];
+    }
+
+    /**
+     * Attempt to retrieve the hash method and algorithm used for the password.
+     *
+     * @param string $password
+     *
+     * @return array|void
+     */
+    public static function getHashMethodAndAlgo($password)
+    {
+        if (! preg_match('/^\{(\w+)\}\$([0-9a-z]{1})\$/', $password, $matches)) {
+            return;
+        }
+
+        return [$matches[1], $matches[2]];
+    }
+
+    /**
+     * Attempt to retrieve a salt from the encrypted password.
+     *
+     * @throws LdapRecordException
+     *
+     * @return string
+     */
+    public static function getSalt($encryptedPassword)
+    {
+        // crypt() methods.
+        if (preg_match('/^\{(\w+)\}(\$.*\$).*$/', $encryptedPassword, $matches)) {
+            return $matches[2];
+        }
+
+        // All other methods.
+        if (preg_match('/{([^}]+)}(.*)/', $encryptedPassword, $matches)) {
+            return substr(base64_decode($matches[2]), -4);
+        }
+
+        throw new LdapRecordException('Could not extract salt from encrypted password.');
+    }
+
+    /**
+     * Determine if the hash method requires a salt to be given.
+     *
+     * @param string $method
+     *
+     * @throws \ReflectionException
+     *
+     * @return bool
+     */
+    public static function hashMethodRequiresSalt($method): bool
+    {
+        $parameters = (new ReflectionMethod(static::class, $method))->getParameters();
+
+        foreach ($parameters as $parameter) {
+            if ($parameter->name === 'salt') {
+                return true;
+            }
+        }
+
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Sid.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Sid.php
new file mode 100644
index 0000000..4ec46ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Sid.php
@@ -0,0 +1,101 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use InvalidArgumentException;
+use LdapRecord\Utilities;
+
+class Sid
+{
+    /**
+     * The string SID value.
+     *
+     * @var string
+     */
+    protected $value;
+
+    /**
+     * Determines if the specified SID is valid.
+     *
+     * @param string $sid
+     *
+     * @return bool
+     */
+    public static function isValid($sid)
+    {
+        return Utilities::isValidSid($sid);
+    }
+
+    /**
+     * Constructor.
+     *
+     * @param mixed $value
+     *
+     * @throws InvalidArgumentException
+     */
+    public function __construct($value)
+    {
+        if (static::isValid($value)) {
+            $this->value = $value;
+        } elseif ($value = $this->binarySidToString($value)) {
+            $this->value = $value;
+        } else {
+            throw new InvalidArgumentException('Invalid Binary / String SID.');
+        }
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getValue();
+    }
+
+    /**
+     * Returns the string value of the SID.
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Returns the binary variant of the SID.
+     *
+     * @return string
+     */
+    public function getBinary()
+    {
+        $sid = explode('-', ltrim($this->value, 'S-'));
+
+        $level = (int) array_shift($sid);
+
+        $authority = (int) array_shift($sid);
+
+        $subAuthorities = array_map('intval', $sid);
+
+        $params = array_merge(
+            ['C2xxNV*', $level, count($subAuthorities), $authority],
+            $subAuthorities
+        );
+
+        return call_user_func_array('pack', $params);
+    }
+
+    /**
+     * Returns the string variant of a binary SID.
+     *
+     * @param string $binary
+     *
+     * @return string|null
+     */
+    protected function binarySidToString($binary)
+    {
+        return Utilities::binarySidToString($binary);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSProperty.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSProperty.php
new file mode 100644
index 0000000..ad56aa1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSProperty.php
@@ -0,0 +1,396 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+class TSProperty
+{
+    /**
+     * Nibble control values. The first value for each is if the nibble is <= 9, otherwise the second value is used.
+     */
+    const NIBBLE_CONTROL = [
+        'X' => ['001011', '011010'],
+        'Y' => ['001110', '011010'],
+    ];
+
+    /**
+     * The nibble header.
+     */
+    const NIBBLE_HEADER = '1110';
+
+    /**
+     * Conversion factor needed for time values in the TSPropertyArray (stored in microseconds).
+     */
+    const TIME_CONVERSION = 60 * 1000;
+
+    /**
+     * A simple map to help determine how the property needs to be decoded/encoded from/to its binary value.
+     *
+     * There are some names that are simple repeats but have 'W' at the end. Not sure as to what that signifies. I
+     * cannot find any information on them in Microsoft documentation. However, their values appear to stay in sync with
+     * their non 'W' counterparts. But not doing so when manipulating the data manually does not seem to affect anything.
+     * This probably needs more investigation.
+     *
+     * @var array
+     */
+    protected $propTypes = [
+        'string' => [
+            'CtxWFHomeDir',
+            'CtxWFHomeDirW',
+            'CtxWFHomeDirDrive',
+            'CtxWFHomeDirDriveW',
+            'CtxInitialProgram',
+            'CtxInitialProgramW',
+            'CtxWFProfilePath',
+            'CtxWFProfilePathW',
+            'CtxWorkDirectory',
+            'CtxWorkDirectoryW',
+            'CtxCallbackNumber',
+        ],
+        'time' => [
+            'CtxMaxDisconnectionTime',
+            'CtxMaxConnectionTime',
+            'CtxMaxIdleTime',
+        ],
+        'int' => [
+            'CtxCfgFlags1',
+            'CtxCfgPresent',
+            'CtxKeyboardLayout',
+            'CtxMinEncryptionLevel',
+            'CtxNWLogonServer',
+            'CtxShadow',
+        ],
+    ];
+
+    /**
+     * The property name.
+     *
+     * @var string
+     */
+    protected $name;
+
+    /**
+     * The property value.
+     *
+     * @var string|int
+     */
+    protected $value;
+
+    /**
+     * The property value type.
+     *
+     * @var int
+     */
+    protected $valueType = 1;
+
+    /**
+     * Pass binary TSProperty data to construct its object representation.
+     *
+     * @param string|null $value
+     */
+    public function __construct($value = null)
+    {
+        if ($value) {
+            $this->decode(bin2hex($value));
+        }
+    }
+
+    /**
+     * Set the name for the TSProperty.
+     *
+     * @param string $name
+     *
+     * @return TSProperty
+     */
+    public function setName($name)
+    {
+        $this->name = $name;
+
+        return $this;
+    }
+
+    /**
+     * Get the name for the TSProperty.
+     *
+     * @return string
+     */
+    public function getName()
+    {
+        return $this->name;
+    }
+
+    /**
+     * Set the value for the TSProperty.
+     *
+     * @param string|int $value
+     *
+     * @return TSProperty
+     */
+    public function setValue($value)
+    {
+        $this->value = $value;
+
+        return $this;
+    }
+
+    /**
+     * Get the value for the TSProperty.
+     *
+     * @return string|int
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Convert the TSProperty name/value back to its binary
+     * representation for the userParameters blob.
+     *
+     * @return string
+     */
+    public function toBinary()
+    {
+        $name = bin2hex($this->name);
+
+        $binValue = $this->getEncodedValueForProp($this->name, $this->value);
+
+        $valueLen = strlen(bin2hex($binValue)) / 3;
+
+        $binary = hex2bin(
+            $this->dec2hex(strlen($name))
+            .$this->dec2hex($valueLen)
+            .$this->dec2hex($this->valueType)
+            .$name
+        );
+
+        return $binary.$binValue;
+    }
+
+    /**
+     * Given a TSProperty blob, decode the name/value/type/etc.
+     *
+     * @param string $tsProperty
+     */
+    protected function decode($tsProperty)
+    {
+        $nameLength = hexdec(substr($tsProperty, 0, 2));
+
+        // 1 data byte is 3 encoded bytes
+        $valueLength = hexdec(substr($tsProperty, 2, 2)) * 3;
+
+        $this->valueType = hexdec(substr($tsProperty, 4, 2));
+        $this->name = pack('H*', substr($tsProperty, 6, $nameLength));
+        $this->value = $this->getDecodedValueForProp($this->name, substr($tsProperty, 6 + $nameLength, $valueLength));
+    }
+
+    /**
+     * Based on the property name/value in question, get its encoded form.
+     *
+     * @param string     $propName
+     * @param string|int $propValue
+     *
+     * @return string
+     */
+    protected function getEncodedValueForProp($propName, $propValue)
+    {
+        if (in_array($propName, $this->propTypes['string'])) {
+            // Simple strings are null terminated. Unsure if this is
+            // needed or simply a product of how ADUC does stuff?
+            $value = $this->encodePropValue($propValue."\0", true);
+        } elseif (in_array($propName, $this->propTypes['time'])) {
+            // Needs to be in microseconds (assuming it is in minute format)...
+            $value = $this->encodePropValue($propValue * self::TIME_CONVERSION);
+        } else {
+            $value = $this->encodePropValue($propValue);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Based on the property name in question, get its actual value from the binary blob value.
+     *
+     * @param string $propName
+     * @param string $propValue
+     *
+     * @return string|int
+     */
+    protected function getDecodedValueForProp($propName, $propValue)
+    {
+        if (in_array($propName, $this->propTypes['string'])) {
+            // Strip away null terminators. I think this should
+            // be desired, otherwise it just ends in confusion.
+            $value = str_replace("\0", '', $this->decodePropValue($propValue, true));
+        } elseif (in_array($propName, $this->propTypes['time'])) {
+            // Convert from microseconds to minutes (how ADUC displays
+            // it anyway, and seems the most practical).
+            $value = hexdec($this->decodePropValue($propValue)) / self::TIME_CONVERSION;
+        } elseif (in_array($propName, $this->propTypes['int'])) {
+            $value = hexdec($this->decodePropValue($propValue));
+        } else {
+            $value = $this->decodePropValue($propValue);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Decode the property by inspecting the nibbles of each blob, checking
+     * the control, and adding up the results into a final value.
+     *
+     * @param string $hex
+     * @param bool   $string Whether or not this is simple string data.
+     *
+     * @return string
+     */
+    protected function decodePropValue($hex, $string = false)
+    {
+        $decodePropValue = '';
+
+        $blobs = str_split($hex, 6);
+
+        foreach ($blobs as $blob) {
+            $bin = decbin(hexdec($blob));
+
+            $controlY = substr($bin, 4, 6);
+            $nibbleY = substr($bin, 10, 4);
+            $controlX = substr($bin, 14, 6);
+            $nibbleX = substr($bin, 20, 4);
+
+            $byte = $this->nibbleControl($nibbleX, $controlX).$this->nibbleControl($nibbleY, $controlY);
+
+            if ($string) {
+                $decodePropValue .= MbString::chr(bindec($byte));
+            } else {
+                $decodePropValue = $this->dec2hex(bindec($byte)).$decodePropValue;
+            }
+        }
+
+        return $decodePropValue;
+    }
+
+    /**
+     * Get the encoded property value as a binary blob.
+     *
+     * @param string $value
+     * @param bool   $string
+     *
+     * @return string
+     */
+    protected function encodePropValue($value, $string = false)
+    {
+        // An int must be properly padded. (then split and reversed).
+        // For a string, we just split the chars. This seems
+        // to be the easiest way to handle UTF-8 characters
+        // instead of trying to work with their hex values.
+        $chars = $string ? MbString::split($value) : array_reverse(str_split($this->dec2hex($value, 8), 2));
+
+        $encoded = '';
+
+        foreach ($chars as $char) {
+            // Get the bits for the char. Using this method to ensure it is fully padded.
+            $bits = sprintf('%08b', $string ? MbString::ord($char) : hexdec($char));
+            $nibbleX = substr($bits, 0, 4);
+            $nibbleY = substr($bits, 4, 4);
+
+            // Construct the value with the header, high nibble, then low nibble.
+            $value = self::NIBBLE_HEADER;
+
+            foreach (['Y' => $nibbleY, 'X' => $nibbleX] as $nibbleType => $nibble) {
+                $value .= $this->getNibbleWithControl($nibbleType, $nibble);
+            }
+
+            // Convert it back to a binary bit stream
+            foreach ([0, 8, 16] as $start) {
+                $encoded .= $this->packBitString(substr($value, $start, 8), 8);
+            }
+        }
+
+        return $encoded;
+    }
+
+    /**
+     * PHP's pack() function has no 'b' or 'B' template. This is
+     * a workaround that turns a literal bit-string into a
+     * packed byte-string with 8 bits per byte.
+     *
+     * @param string $bits
+     * @param bool   $len
+     *
+     * @return string
+     */
+    protected function packBitString($bits, $len)
+    {
+        $bits = substr($bits, 0, $len);
+        // Pad input with zeros to next multiple of 4 above $len
+        $bits = str_pad($bits, 4 * (int) (($len + 3) / 4), '0');
+
+        // Split input into chunks of 4 bits, convert each to hex and pack them
+        $nibbles = str_split($bits, 4);
+        foreach ($nibbles as $i => $nibble) {
+            $nibbles[$i] = base_convert($nibble, 2, 16);
+        }
+
+        return pack('H*', implode('', $nibbles));
+    }
+
+    /**
+     * Based on the control, adjust the nibble accordingly.
+     *
+     * @param string $nibble
+     * @param string $control
+     *
+     * @return string
+     */
+    protected function nibbleControl($nibble, $control)
+    {
+        // This control stays constant for the low/high nibbles,
+        // so it doesn't matter which we compare to
+        if ($control == self::NIBBLE_CONTROL['X'][1]) {
+            $dec = bindec($nibble);
+            $dec += 9;
+            $nibble = str_pad(decbin($dec), 4, '0', STR_PAD_LEFT);
+        }
+
+        return $nibble;
+    }
+
+    /**
+     * Get the nibble value with the control prefixed.
+     *
+     * If the nibble dec is <= 9, the control X equals 001011 and Y equals 001110, otherwise if the nibble dec is > 9
+     * the control for X or Y equals 011010. Additionally, if the dec value of the nibble is > 9, then the nibble value
+     * must be subtracted by 9 before the final value is constructed.
+     *
+     * @param string $nibbleType Either X or Y
+     * @param string $nibble
+     *
+     * @return string
+     */
+    protected function getNibbleWithControl($nibbleType, $nibble)
+    {
+        $dec = bindec($nibble);
+
+        if ($dec > 9) {
+            $dec -= 9;
+            $control = self::NIBBLE_CONTROL[$nibbleType][1];
+        } else {
+            $control = self::NIBBLE_CONTROL[$nibbleType][0];
+        }
+
+        return $control.sprintf('%04d', decbin($dec));
+    }
+
+    /**
+     * Need to make sure hex values are always an even length, so pad as needed.
+     *
+     * @param int $int
+     * @param int $padLength The hex string must be padded to this length (with zeros).
+     *
+     * @return string
+     */
+    protected function dec2hex($int, $padLength = 2)
+    {
+        return str_pad(dechex($int), $padLength, 0, STR_PAD_LEFT);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSPropertyArray.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSPropertyArray.php
new file mode 100644
index 0000000..1831688
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/TSPropertyArray.php
@@ -0,0 +1,295 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use InvalidArgumentException;
+
+class TSPropertyArray
+{
+    /**
+     * Represents that the TSPropertyArray data is valid.
+     */
+    const VALID_SIGNATURE = 'P';
+
+    /**
+     * The default values for the TSPropertyArray structure.
+     *
+     * @var array
+     */
+    const DEFAULTS = [
+        'CtxCfgPresent' => 2953518677,
+        'CtxWFProfilePath' => '',
+        'CtxWFProfilePathW' => '',
+        'CtxWFHomeDir' => '',
+        'CtxWFHomeDirW' => '',
+        'CtxWFHomeDirDrive' => '',
+        'CtxWFHomeDirDriveW' => '',
+        'CtxShadow' => 1,
+        'CtxMaxDisconnectionTime' => 0,
+        'CtxMaxConnectionTime' => 0,
+        'CtxMaxIdleTime' => 0,
+        'CtxWorkDirectory' => '',
+        'CtxWorkDirectoryW' => '',
+        'CtxCfgFlags1' => 2418077696,
+        'CtxInitialProgram' => '',
+        'CtxInitialProgramW' => '',
+    ];
+
+    /**
+     * @var string The default data that occurs before the TSPropertyArray (CtxCfgPresent with a bunch of spaces...?)
+     */
+    protected $defaultPreBinary = '43747843666750726573656e742020202020202020202020202020202020202020202020202020202020202020202020';
+
+    /**
+     * @var TSProperty[]
+     */
+    protected $tsProperty = [];
+
+    /**
+     * @var string
+     */
+    protected $signature = self::VALID_SIGNATURE;
+
+    /**
+     * Binary data that occurs before the TSPropertyArray data in userParameters.
+     *
+     * @var string
+     */
+    protected $preBinary = '';
+
+    /**
+     * Binary data that occurs after the TSPropertyArray data in userParameters.
+     *
+     * @var string
+     */
+    protected $postBinary = '';
+
+    /**
+     * Construct in one of the following ways:.
+     *
+     *   - Pass an array of TSProperty key => value pairs (See DEFAULTS constant).
+     *   - Pass the userParameters binary value. The object representation of that will be decoded and constructed.
+     *   - Pass nothing and a default set of TSProperty key => value pairs will be used (See DEFAULTS constant).
+     *
+     * @param mixed $tsPropertyArray
+     */
+    public function __construct($tsPropertyArray = null)
+    {
+        $this->preBinary = hex2bin($this->defaultPreBinary);
+
+        if (is_null($tsPropertyArray) || is_array($tsPropertyArray)) {
+            $tsPropertyArray = $tsPropertyArray ?: self::DEFAULTS;
+
+            foreach ($tsPropertyArray as $key => $value) {
+                $tsProperty = new TSProperty();
+
+                $this->tsProperty[$key] = $tsProperty->setName($key)->setValue($value);
+            }
+        } else {
+            $this->decodeUserParameters($tsPropertyArray);
+        }
+    }
+
+    /**
+     * Check if a specific TSProperty exists by its property name.
+     *
+     * @param string $propName
+     *
+     * @return bool
+     */
+    public function has($propName)
+    {
+        return array_key_exists(strtolower($propName), array_change_key_case($this->tsProperty));
+    }
+
+    /**
+     * Get a TSProperty object by its property name (ie. CtxWFProfilePath).
+     *
+     * @param string $propName
+     *
+     * @return TSProperty
+     */
+    public function get($propName)
+    {
+        $this->validateProp($propName);
+
+        return $this->getTsPropObj($propName);
+    }
+
+    /**
+     * Add a TSProperty object. If it already exists, it will be overwritten.
+     *
+     * @param TSProperty $tsProperty
+     *
+     * @return $this
+     */
+    public function add(TSProperty $tsProperty)
+    {
+        $this->tsProperty[$tsProperty->getName()] = $tsProperty;
+
+        return $this;
+    }
+
+    /**
+     * Remove a TSProperty by its property name (ie. CtxMinEncryptionLevel).
+     *
+     * @param string $propName
+     *
+     * @return $this
+     */
+    public function remove($propName)
+    {
+        foreach (array_keys($this->tsProperty) as $property) {
+            if (strtolower($propName) == strtolower($property)) {
+                unset($this->tsProperty[$property]);
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Set the value for a specific TSProperty by its name.
+     *
+     * @param string $propName
+     * @param mixed  $propValue
+     *
+     * @return $this
+     */
+    public function set($propName, $propValue)
+    {
+        $this->validateProp($propName);
+
+        $this->getTsPropObj($propName)->setValue($propValue);
+
+        return $this;
+    }
+
+    /**
+     * Get the full binary representation of the userParameters containing the TSPropertyArray data.
+     *
+     * @return string
+     */
+    public function toBinary()
+    {
+        $binary = $this->preBinary;
+
+        $binary .= hex2bin(str_pad(dechex(MbString::ord($this->signature)), 2, 0, STR_PAD_LEFT));
+
+        $binary .= hex2bin(str_pad(dechex(count($this->tsProperty)), 2, 0, STR_PAD_LEFT));
+
+        foreach ($this->tsProperty as $tsProperty) {
+            $binary .= $tsProperty->toBinary();
+        }
+
+        return $binary.$this->postBinary;
+    }
+
+    /**
+     * Get a simple associative array containing of all TSProperty names and values.
+     *
+     * @return array
+     */
+    public function toArray()
+    {
+        $userParameters = [];
+
+        foreach ($this->tsProperty as $property => $tsPropObj) {
+            $userParameters[$property] = $tsPropObj->getValue();
+        }
+
+        return $userParameters;
+    }
+
+    /**
+     * Get all TSProperty objects.
+     *
+     * @return TSProperty[]
+     */
+    public function getTSProperties()
+    {
+        return $this->tsProperty;
+    }
+
+    /**
+     * Validates that the given property name exists.
+     *
+     * @param string $propName
+     */
+    protected function validateProp($propName)
+    {
+        if (! $this->has($propName)) {
+            throw new InvalidArgumentException(sprintf('TSProperty for "%s" does not exist.', $propName));
+        }
+    }
+
+    /**
+     * @param string $propName
+     *
+     * @return TSProperty
+     */
+    protected function getTsPropObj($propName)
+    {
+        return array_change_key_case($this->tsProperty)[strtolower($propName)];
+    }
+
+    /**
+     * Get an associative array with all of the userParameters property names and values.
+     *
+     * @param string $userParameters
+     *
+     * @return void
+     */
+    protected function decodeUserParameters($userParameters)
+    {
+        $userParameters = bin2hex($userParameters);
+
+        // Save the 96-byte array of reserved data, so as to not ruin anything that may be stored there.
+        $this->preBinary = hex2bin(substr($userParameters, 0, 96));
+        // The signature is a 2-byte unicode character at the front
+        $this->signature = MbString::chr(hexdec(substr($userParameters, 96, 2)));
+        // This asserts the validity of the tsPropertyArray data. For some reason 'P' means valid...
+        if ($this->signature != self::VALID_SIGNATURE) {
+            throw new InvalidArgumentException('Invalid TSPropertyArray data');
+        }
+
+        // The property count is a 2-byte unsigned integer indicating the number of elements for the tsPropertyArray
+        // It starts at position 98. The actual variable data begins at position 100.
+        $length = $this->addTSPropData(substr($userParameters, 100), hexdec(substr($userParameters, 98, 2)));
+
+        // Reserved data length + (count and sig length == 4) + the added lengths of the TSPropertyArray
+        // This saves anything after that variable TSPropertyArray data, so as to not squash anything stored there
+        if (strlen($userParameters) > (96 + 4 + $length)) {
+            $this->postBinary = hex2bin(substr($userParameters, (96 + 4 + $length)));
+        }
+    }
+
+    /**
+     * Given the start of TSPropertyArray hex data, and the count for the number
+     * of TSProperty structures in contains, parse and split out the
+     * individual TSProperty structures. Return the full length
+     * of the TSPropertyArray data.
+     *
+     * @param string $tsPropertyArray
+     * @param int    $tsPropCount
+     *
+     * @return int The length of the data in the TSPropertyArray
+     */
+    protected function addTSPropData($tsPropertyArray, $tsPropCount)
+    {
+        $length = 0;
+
+        for ($i = 0; $i < $tsPropCount; $i++) {
+            // Prop length = name length + value length + type length + the space for the length data.
+            $propLength = hexdec(substr($tsPropertyArray, $length, 2)) + (hexdec(substr($tsPropertyArray, $length + 2, 2)) * 3) + 6;
+
+            $tsProperty = new TSProperty(hex2bin(substr($tsPropertyArray, $length, $propLength)));
+
+            $this->tsProperty[$tsProperty->getName()] = $tsProperty;
+
+            $length += $propLength;
+        }
+
+        return $length;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Timestamp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Timestamp.php
new file mode 100644
index 0000000..abd656c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Attributes/Timestamp.php
@@ -0,0 +1,244 @@
+<?php
+
+namespace LdapRecord\Models\Attributes;
+
+use Carbon\Carbon;
+use Carbon\CarbonInterface;
+use DateTime;
+use LdapRecord\LdapRecordException;
+use LdapRecord\Utilities;
+
+class Timestamp
+{
+    /**
+     * The current timestamp type.
+     *
+     * @var string
+     */
+    protected $type;
+
+    /**
+     * The available timestamp types.
+     *
+     * @var array
+     */
+    protected $types = [
+        'ldap',
+        'windows',
+        'windows-int',
+    ];
+
+    /**
+     * Constructor.
+     *
+     * @param string $type
+     *
+     * @throws LdapRecordException
+     */
+    public function __construct($type)
+    {
+        $this->setType($type);
+    }
+
+    /**
+     * Set the type of timestamp to convert from / to.
+     *
+     * @param string $type
+     *
+     * @throws LdapRecordException
+     */
+    public function setType($type)
+    {
+        if (! in_array($type, $this->types)) {
+            throw new LdapRecordException("Unrecognized LDAP date type [$type]");
+        }
+
+        $this->type = $type;
+    }
+
+    /**
+     * Converts the value to an LDAP date string.
+     *
+     * @param mixed $value
+     *
+     * @throws LdapRecordException
+     *
+     * @return float|string
+     */
+    public function fromDateTime($value)
+    {
+        $value = is_array($value) ? reset($value) : $value;
+
+        // If the value is being converted to a windows integer format but it
+        // is already in that format, we will simply return the value back.
+        if ($this->type == 'windows-int' && $this->valueIsWindowsIntegerType($value)) {
+            return $value;
+        }
+        // If the value is numeric, we will assume it's a UNIX timestamp.
+        elseif (is_numeric($value)) {
+            $value = Carbon::createFromTimestamp($value);
+        }
+        // If a string is given, we will pass it into a new carbon instance.
+        elseif (is_string($value)) {
+            $value = Carbon::parse($value);
+        }
+        // If a date object is given, we will convert it to a carbon instance.
+        elseif ($value instanceof DateTime) {
+            $value = Carbon::instance($value);
+        }
+
+        switch ($this->type) {
+            case 'ldap':
+                $value = $this->convertDateTimeToLdapTime($value);
+                break;
+            case 'windows':
+                $value = $this->convertDateTimeToWindows($value);
+                break;
+            case 'windows-int':
+                $value = $this->convertDateTimeToWindowsInteger($value);
+                break;
+            default:
+                throw new LdapRecordException("Unrecognized date type [{$this->type}]");
+        }
+
+        return $value;
+    }
+
+    /**
+     * Determine if the value given is in Windows Integer (NTFS Filetime) format.
+     *
+     * @param int|string $value
+     *
+     * @return bool
+     */
+    protected function valueIsWindowsIntegerType($value)
+    {
+        return is_numeric($value) && strlen((string) $value) === 18;
+    }
+
+    /**
+     * Converts the LDAP timestamp value to a Carbon instance.
+     *
+     * @param mixed $value
+     *
+     * @throws LdapRecordException
+     *
+     * @return Carbon|false
+     */
+    public function toDateTime($value)
+    {
+        $value = is_array($value) ? reset($value) : $value;
+
+        if ($value instanceof CarbonInterface || $value instanceof DateTime) {
+            return Carbon::instance($value);
+        }
+
+        switch ($this->type) {
+            case 'ldap':
+                $value = $this->convertLdapTimeToDateTime($value);
+                break;
+            case 'windows':
+                $value = $this->convertWindowsTimeToDateTime($value);
+                break;
+            case 'windows-int':
+                $value = $this->convertWindowsIntegerTimeToDateTime($value);
+                break;
+            default:
+                throw new LdapRecordException("Unrecognized date type [{$this->type}]");
+        }
+
+        return $value instanceof DateTime ? Carbon::instance($value) : $value;
+    }
+
+    /**
+     * Converts standard LDAP timestamps to a date time object.
+     *
+     * @param string $value
+     *
+     * @return DateTime|bool
+     */
+    protected function convertLdapTimeToDateTime($value)
+    {
+        return DateTime::createFromFormat(
+            strpos($value, 'Z') !== false ? 'YmdHis\Z' : 'YmdHisT',
+            $value
+        );
+    }
+
+    /**
+     * Converts date objects to a standard LDAP timestamp.
+     *
+     * @param DateTime $date
+     *
+     * @return string
+     */
+    protected function convertDateTimeToLdapTime(DateTime $date)
+    {
+        return $date->format(
+            $date->getOffset() == 0 ? 'YmdHis\Z' : 'YmdHisO'
+        );
+    }
+
+    /**
+     * Converts standard windows timestamps to a date time object.
+     *
+     * @param string $value
+     *
+     * @return DateTime|bool
+     */
+    protected function convertWindowsTimeToDateTime($value)
+    {
+        return DateTime::createFromFormat(
+            strpos($value, '0Z') !== false ? 'YmdHis.0\Z' : 'YmdHis.0T',
+            $value
+        );
+    }
+
+    /**
+     * Converts date objects to a windows timestamp.
+     *
+     * @param DateTime $date
+     *
+     * @return string
+     */
+    protected function convertDateTimeToWindows(DateTime $date)
+    {
+        return $date->format(
+            $date->getOffset() == 0 ? 'YmdHis.0\Z' : 'YmdHis.0O'
+        );
+    }
+
+    /**
+     * Converts standard windows integer dates to a date time object.
+     *
+     * @param int $value
+     *
+     * @throws \Exception
+     *
+     * @return DateTime|bool
+     */
+    protected function convertWindowsIntegerTimeToDateTime($value)
+    {
+        // ActiveDirectory dates that contain integers may return
+        // "0" when they are not set. We will validate that here.
+        if (! $value) {
+            return false;
+        }
+
+        return (new DateTime())->setTimestamp(
+            Utilities::convertWindowsTimeToUnixTime($value)
+        );
+    }
+
+    /**
+     * Converts date objects to a windows integer timestamp.
+     *
+     * @param DateTime $date
+     *
+     * @return float
+     */
+    protected function convertDateTimeToWindowsInteger(DateTime $date)
+    {
+        return Utilities::convertUnixTimeToWindowsTime($date->getTimestamp());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/BatchModification.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/BatchModification.php
new file mode 100644
index 0000000..37f0e87
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/BatchModification.php
@@ -0,0 +1,307 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use InvalidArgumentException;
+
+class BatchModification
+{
+    use DetectsResetIntegers;
+
+    /**
+     * The array keys to be used in batch modifications.
+     */
+    const KEY_ATTRIB = 'attrib';
+    const KEY_MODTYPE = 'modtype';
+    const KEY_VALUES = 'values';
+
+    /**
+     * The attribute of the modification.
+     *
+     * @var string|null
+     */
+    protected $attribute;
+
+    /**
+     * The original value of the attribute before modification.
+     *
+     * @var array
+     */
+    protected $original = [];
+
+    /**
+     * The values of the modification.
+     *
+     * @var array
+     */
+    protected $values = [];
+
+    /**
+     * The modtype integer of the batch modification.
+     *
+     * @var int|null
+     */
+    protected $type;
+
+    /**
+     * Constructor.
+     *
+     * @param string|null     $attribute
+     * @param string|int|null $type
+     * @param array           $values
+     */
+    public function __construct($attribute = null, $type = null, array $values = [])
+    {
+        $this->setAttribute($attribute)
+            ->setType($type)
+            ->setValues($values);
+    }
+
+    /**
+     * Set the original value of the attribute before modification.
+     *
+     * @param array|string $original
+     *
+     * @return $this
+     */
+    public function setOriginal($original = [])
+    {
+        $this->original = $this->normalizeAttributeValues($original);
+
+        return $this;
+    }
+
+    /**
+     * Returns the original value of the attribute before modification.
+     *
+     * @return array
+     */
+    public function getOriginal()
+    {
+        return $this->original;
+    }
+
+    /**
+     * Set the attribute of the modification.
+     *
+     * @param string $attribute
+     *
+     * @return $this
+     */
+    public function setAttribute($attribute)
+    {
+        $this->attribute = $attribute;
+
+        return $this;
+    }
+
+    /**
+     * Returns the attribute of the modification.
+     *
+     * @return string
+     */
+    public function getAttribute()
+    {
+        return $this->attribute;
+    }
+
+    /**
+     * Set the values of the modification.
+     *
+     * @param array $values
+     *
+     * @return $this
+     */
+    public function setValues(array $values = [])
+    {
+        // Null and empty values must also not be added to a batch
+        // modification. Passing null or empty values will result
+        // in an exception when trying to save the modification.
+        $this->values = array_filter($this->normalizeAttributeValues($values), function ($value) {
+            return is_numeric($value) && $this->valueIsResetInteger((int) $value) ?: ! empty($value);
+        });
+
+        return $this;
+    }
+
+    /**
+     * Normalize all of the attribute values.
+     *
+     * @param array|string $values
+     *
+     * @return array
+     */
+    protected function normalizeAttributeValues($values = [])
+    {
+        // We must convert all of the values to strings. Only strings can
+        // be used in batch modifications, otherwise we will we will
+        // receive an LDAP exception while attempting to save.
+        return array_map('strval', (array) $values);
+    }
+
+    /**
+     * Returns the values of the modification.
+     *
+     * @return array
+     */
+    public function getValues()
+    {
+        return $this->values;
+    }
+
+    /**
+     * Set the type of the modification.
+     *
+     * @param int|null $type
+     *
+     * @return $this
+     */
+    public function setType($type = null)
+    {
+        if (is_null($type)) {
+            return $this;
+        }
+
+        if (! $this->isValidType($type)) {
+            throw new InvalidArgumentException('Given batch modification type is invalid.');
+        }
+
+        $this->type = $type;
+
+        return $this;
+    }
+
+    /**
+     * Returns the type of the modification.
+     *
+     * @return int
+     */
+    public function getType()
+    {
+        return $this->type;
+    }
+
+    /**
+     * Determines if the batch modification is valid in its current state.
+     *
+     * @return bool
+     */
+    public function isValid()
+    {
+        return ! is_null($this->get());
+    }
+
+    /**
+     * Builds the type of modification automatically
+     * based on the current and original values.
+     *
+     * @return $this
+     */
+    public function build()
+    {
+        switch (true) {
+            case empty($this->original) && empty($this->values):
+                return $this;
+            case ! empty($this->original) && empty($this->values):
+                return $this->setType(LDAP_MODIFY_BATCH_REMOVE_ALL);
+            case empty($this->original) && ! empty($this->values):
+                return $this->setType(LDAP_MODIFY_BATCH_ADD);
+            default:
+               return $this->determineBatchTypeFromOriginal();
+        }
+    }
+
+    /**
+     * Determine the batch modification type from the original values.
+     *
+     * @return $this
+     */
+    protected function determineBatchTypeFromOriginal()
+    {
+        $added = $this->getAddedValues();
+        $removed = $this->getRemovedValues();
+
+        switch (true) {
+            case ! empty($added) && ! empty($removed):
+                return $this->setType(LDAP_MODIFY_BATCH_REPLACE);
+            case ! empty($added):
+                return $this->setValues($added)->setType(LDAP_MODIFY_BATCH_ADD);
+            case ! empty($removed):
+                return $this->setValues($removed)->setType(LDAP_MODIFY_BATCH_REMOVE);
+            default:
+                return $this;
+        }
+    }
+
+    /**
+     * Get the values that were added to the attribute.
+     *
+     * @return array
+     */
+    protected function getAddedValues()
+    {
+        return array_values(
+            array_diff($this->values, $this->original)
+        );
+    }
+
+    /**
+     * Get the values that were removed from the attribute.
+     *
+     * @return array
+     */
+    protected function getRemovedValues()
+    {
+        return array_values(
+            array_diff($this->original, $this->values)
+        );
+    }
+
+    /**
+     * Returns the built batch modification array.
+     *
+     * @return array|null
+     */
+    public function get()
+    {
+        switch ($this->type) {
+            case LDAP_MODIFY_BATCH_REMOVE_ALL:
+                // A values key cannot be provided when
+                // a remove all type is selected.
+                return [
+                    static::KEY_ATTRIB => $this->attribute,
+                    static::KEY_MODTYPE => $this->type,
+                ];
+            case LDAP_MODIFY_BATCH_REMOVE:
+                // Fallthrough.
+            case LDAP_MODIFY_BATCH_ADD:
+                // Fallthrough.
+            case LDAP_MODIFY_BATCH_REPLACE:
+                return [
+                    static::KEY_ATTRIB => $this->attribute,
+                    static::KEY_MODTYPE => $this->type,
+                    static::KEY_VALUES => $this->values,
+                ];
+            default:
+                // If the modtype isn't recognized, we'll return null.
+                return;
+        }
+    }
+
+    /**
+     * Determines if the given modtype is valid.
+     *
+     * @param int $type
+     *
+     * @return bool
+     */
+    protected function isValidType($type)
+    {
+        return in_array($type, [
+            LDAP_MODIFY_BATCH_REMOVE_ALL,
+            LDAP_MODIFY_BATCH_REMOVE,
+            LDAP_MODIFY_BATCH_REPLACE,
+            LDAP_MODIFY_BATCH_ADD,
+        ]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Collection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Collection.php
new file mode 100644
index 0000000..850167b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Collection.php
@@ -0,0 +1,122 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use Closure;
+use LdapRecord\Models\Attributes\DistinguishedName;
+use LdapRecord\Query\Collection as QueryCollection;
+use LdapRecord\Support\Arr;
+
+class Collection extends QueryCollection
+{
+    /**
+     * Determine if the collection contains all of the given models, or any models.
+     *
+     * @param mixed $models
+     *
+     * @return bool
+     */
+    public function exists($models = null)
+    {
+        $models = $this->getArrayableModels($models);
+
+        // If any arguments were given and the result set is
+        // empty, we can simply return false here. We can't
+        // verify the existence of models without results.
+        if (func_num_args() > 0 && empty(array_filter($models))) {
+            return false;
+        }
+
+        if (! $models) {
+            return parent::isNotEmpty();
+        }
+
+        foreach ($models as $model) {
+            $exists = parent::contains(function (Model $related) use ($model) {
+                return $this->compareModelWithRelated($model, $related);
+            });
+
+            if (! $exists) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Determine if any of the given models are contained in the collection.
+     *
+     * @param mixed $key
+     * @param mixed $operator
+     * @param mixed $value
+     *
+     * @return bool
+     */
+    public function contains($key, $operator = null, $value = null)
+    {
+        if (func_num_args() > 1 || $key instanceof Closure) {
+            // If we are supplied with more than one argument, or
+            // we were passed a closure, we will utilize the
+            // parents contains method, for compatibility.
+            return parent::contains($key, $operator, $value);
+        }
+
+        foreach ($this->getArrayableModels($key) as $model) {
+            $exists = parent::contains(function (Model $related) use ($model) {
+                return $this->compareModelWithRelated($model, $related);
+            });
+
+            if ($exists) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get the provided models as an array.
+     *
+     * @param mixed $models
+     *
+     * @return array
+     */
+    protected function getArrayableModels($models = null)
+    {
+        return $models instanceof QueryCollection
+            ? $models->toArray()
+            : Arr::wrap($models);
+    }
+
+    /**
+     * Compare the related model with the given.
+     *
+     * @param Model|string $model
+     * @param Model        $related
+     *
+     * @return bool
+     */
+    protected function compareModelWithRelated($model, $related)
+    {
+        if (is_string($model)) {
+            return $this->isValidDn($model)
+                ? $related->getDn() == $model
+                : $related->getName() == $model;
+        }
+
+        return $related->is($model);
+    }
+
+    /**
+     * Determine if the given string is a valid distinguished name.
+     *
+     * @param string $dn
+     *
+     * @return bool
+     */
+    protected function isValidDn($dn)
+    {
+        return ! empty((new DistinguishedName($dn))->components());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/CanAuthenticate.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/CanAuthenticate.php
new file mode 100644
index 0000000..f287454
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/CanAuthenticate.php
@@ -0,0 +1,64 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+trait CanAuthenticate
+{
+    /**
+     * Get the name of the unique identifier for the user.
+     *
+     * @return string
+     */
+    public function getAuthIdentifierName()
+    {
+        return $this->guidKey;
+    }
+
+    /**
+     * Get the unique identifier for the user.
+     *
+     * @return mixed
+     */
+    public function getAuthIdentifier()
+    {
+        return $this->getConvertedGuid();
+    }
+
+    /**
+     * Get the password for the user.
+     *
+     * @return string
+     */
+    public function getAuthPassword()
+    {
+    }
+
+    /**
+     * Get the token value for the "remember me" session.
+     *
+     * @return string
+     */
+    public function getRememberToken()
+    {
+    }
+
+    /**
+     * Set the token value for the "remember me" session.
+     *
+     * @param string $value
+     *
+     * @return void
+     */
+    public function setRememberToken($value)
+    {
+    }
+
+    /**
+     * Get the column name for the "remember me" token.
+     *
+     * @return string
+     */
+    public function getRememberTokenName()
+    {
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasAttributes.php
new file mode 100644
index 0000000..20fcec0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasAttributes.php
@@ -0,0 +1,1106 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+use Carbon\Carbon;
+use DateTimeInterface;
+use Exception;
+use LdapRecord\LdapRecordException;
+use LdapRecord\Models\Attributes\MbString;
+use LdapRecord\Models\Attributes\Timestamp;
+use LdapRecord\Models\DetectsResetIntegers;
+use LdapRecord\Support\Arr;
+
+trait HasAttributes
+{
+    use DetectsResetIntegers;
+
+    /**
+     * The models original attributes.
+     *
+     * @var array
+     */
+    protected $original = [];
+
+    /**
+     * The models attributes.
+     *
+     * @var array
+     */
+    protected $attributes = [];
+
+    /**
+     * The attributes that should be mutated to dates.
+     *
+     * @var array
+     */
+    protected $dates = [];
+
+    /**
+     * The attributes that should be cast to their native types.
+     *
+     * @var array
+     */
+    protected $casts = [];
+
+    /**
+     * The accessors to append to the model's array form.
+     *
+     * @var array
+     */
+    protected $appends = [];
+
+    /**
+     * The format that dates must be output to for serialization.
+     *
+     * @var string
+     */
+    protected $dateFormat;
+
+    /**
+     * The default attributes that should be mutated to dates.
+     *
+     * @var array
+     */
+    protected $defaultDates = [
+        'createtimestamp' => 'ldap',
+        'modifytimestamp' => 'ldap',
+    ];
+
+    /**
+     * The cache of the mutated attributes for each class.
+     *
+     * @var array
+     */
+    protected static $mutatorCache = [];
+
+    /**
+     * Convert the model's attributes to an array.
+     *
+     * @return array
+     */
+    public function attributesToArray()
+    {
+        // Here we will replace our LDAP formatted dates with
+        // properly formatted ones, so dates do not need to
+        // be converted manually after being returned.
+        $attributes = $this->addDateAttributesToArray(
+            $attributes = $this->getArrayableAttributes()
+        );
+
+        $attributes = $this->addMutatedAttributesToArray(
+            $attributes,
+            $this->getMutatedAttributes()
+        );
+
+        // Before we go ahead and encode each value, we'll attempt
+        // converting any necessary attribute values to ensure
+        // they can be encoded, such as GUIDs and SIDs.
+        $attributes = $this->convertAttributesForJson($attributes);
+
+        // Here we will grab all of the appended, calculated attributes to this model
+        // as these attributes are not really in the attributes array, but are run
+        // when we need to array or JSON the model for convenience to the coder.
+        foreach ($this->getArrayableAppends() as $key) {
+            $attributes[$key] = $this->mutateAttributeForArray($key, null);
+        }
+
+        // Now we will go through each attribute to make sure it is
+        // properly encoded. If attributes aren't in UTF-8, we will
+        // encounter JSON encoding errors upon model serialization.
+        return $this->encodeAttributes($attributes);
+    }
+
+    /**
+     * Add the date attributes to the attributes array.
+     *
+     * @param array $attributes
+     *
+     * @return array
+     */
+    protected function addDateAttributesToArray(array $attributes)
+    {
+        foreach ($this->getDates() as $attribute => $type) {
+            if (! isset($attributes[$attribute])) {
+                continue;
+            }
+
+            $date = $this->asDateTime($attributes[$attribute], $type);
+
+            $attributes[$attribute] = $date instanceof Carbon
+                ? Arr::wrap($this->serializeDate($date))
+                : $attributes[$attribute];
+        }
+
+        return $attributes;
+    }
+
+    /**
+     * Prepare a date for array / JSON serialization.
+     *
+     * @param DateTimeInterface $date
+     *
+     * @return string
+     */
+    protected function serializeDate(DateTimeInterface $date)
+    {
+        return $date->format($this->getDateFormat());
+    }
+
+    /**
+     * Recursively UTF-8 encode the given attributes.
+     *
+     * @return array
+     */
+    public function encodeAttributes($attributes)
+    {
+        array_walk_recursive($attributes, function (&$value) {
+            $value = $this->encodeValue($value);
+        });
+
+        return $attributes;
+    }
+
+    /**
+     * Encode the given value for proper serialization.
+     *
+     * @param string $value
+     *
+     * @return string
+     */
+    protected function encodeValue($value)
+    {
+        // If we are able to detect the encoding, we will
+        // encode only the attributes that need to be,
+        // so that we do not double encode values.
+        return MbString::isLoaded() && MbString::isUtf8($value) ? $value : utf8_encode($value);
+    }
+
+    /**
+     * Add the mutated attributes to the attributes array.
+     *
+     * @param array $attributes
+     * @param array $mutatedAttributes
+     *
+     * @return array
+     */
+    protected function addMutatedAttributesToArray(array $attributes, array $mutatedAttributes)
+    {
+        foreach ($mutatedAttributes as $key) {
+            // We want to spin through all the mutated attributes for this model and call
+            // the mutator for the attribute. We cache off every mutated attributes so
+            // we don't have to constantly check on attributes that actually change.
+            if (! Arr::exists($attributes, $key)) {
+                continue;
+            }
+
+            // Next, we will call the mutator for this attribute so that we can get these
+            // mutated attribute's actual values. After we finish mutating each of the
+            // attributes we will return this final array of the mutated attributes.
+            $attributes[$key] = $this->mutateAttributeForArray(
+                $key,
+                $attributes[$key]
+            );
+        }
+
+        return $attributes;
+    }
+
+    /**
+     * Set the model's original attributes with the model's current attributes.
+     *
+     * @return $this
+     */
+    public function syncOriginal()
+    {
+        $this->original = $this->attributes;
+
+        return $this;
+    }
+
+    /**
+     * Fills the entry with the supplied attributes.
+     *
+     * @param array $attributes
+     *
+     * @return $this
+     */
+    public function fill(array $attributes = [])
+    {
+        foreach ($attributes as $key => $value) {
+            $this->setAttribute($key, $value);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns the models attribute by its key.
+     *
+     * @param int|string $key
+     *
+     * @return mixed
+     */
+    public function getAttribute($key)
+    {
+        if (! $key) {
+            return;
+        }
+
+        return $this->getAttributeValue($key);
+    }
+
+    /**
+     * Get an attributes value.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    public function getAttributeValue($key)
+    {
+        $key = $this->normalizeAttributeKey($key);
+        $value = $this->getAttributeFromArray($key);
+
+        if ($this->hasGetMutator($key)) {
+            return $this->getMutatedAttributeValue($key, $value);
+        }
+
+        if ($this->isDateAttribute($key) && ! is_null($value)) {
+            return $this->asDateTime(Arr::first($value), $this->getDates()[$key]);
+        }
+
+        if ($this->isCastedAttribute($key) && ! is_null($value)) {
+            return $this->castAttribute($key, $value);
+        }
+
+        return $value;
+    }
+
+    /**
+     * Determine if the given attribute is a date.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function isDateAttribute($key)
+    {
+        return array_key_exists($key, $this->getDates());
+    }
+
+    /**
+     * Get the attributes that should be mutated to dates.
+     *
+     * @return array
+     */
+    public function getDates()
+    {
+        // Since array string keys can be unique depending
+        // on casing differences, we need to normalize the
+        // array key case so they are merged properly.
+        return array_merge(
+            array_change_key_case($this->defaultDates, CASE_LOWER),
+            array_change_key_case($this->dates, CASE_LOWER)
+        );
+    }
+
+    /**
+     * Convert the given date value to an LDAP compatible value.
+     *
+     * @param string $type
+     * @param mixed  $value
+     *
+     * @throws LdapRecordException
+     *
+     * @return float|string
+     */
+    public function fromDateTime($type, $value)
+    {
+        return (new Timestamp($type))->fromDateTime($value);
+    }
+
+    /**
+     * Convert the given LDAP date value to a Carbon instance.
+     *
+     * @param mixed  $value
+     * @param string $type
+     *
+     * @throws LdapRecordException
+     *
+     * @return Carbon|false
+     */
+    public function asDateTime($value, $type)
+    {
+        return (new Timestamp($type))->toDateTime($value);
+    }
+
+    /**
+     * Determine whether an attribute should be cast to a native type.
+     *
+     * @param string            $key
+     * @param array|string|null $types
+     *
+     * @return bool
+     */
+    public function hasCast($key, $types = null)
+    {
+        if (array_key_exists($key, $this->getCasts())) {
+            return $types ? in_array($this->getCastType($key), (array) $types, true) : true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Get the attributes that should be cast to their native types.
+     *
+     * @return array
+     */
+    protected function getCasts()
+    {
+        return array_change_key_case($this->casts, CASE_LOWER);
+    }
+
+    /**
+     * Determine whether a value is JSON castable for inbound manipulation.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    protected function isJsonCastable($key)
+    {
+        return $this->hasCast($key, ['array', 'json', 'object', 'collection']);
+    }
+
+    /**
+     * Get the type of cast for a model attribute.
+     *
+     * @param string $key
+     *
+     * @return string
+     */
+    protected function getCastType($key)
+    {
+        if ($this->isDecimalCast($this->getCasts()[$key])) {
+            return 'decimal';
+        }
+
+        if ($this->isDateTimeCast($this->getCasts()[$key])) {
+            return 'datetime';
+        }
+
+        return trim(strtolower($this->getCasts()[$key]));
+    }
+
+    /**
+     * Determine if the cast is a decimal.
+     *
+     * @param string $cast
+     *
+     * @return bool
+     */
+    protected function isDecimalCast($cast)
+    {
+        return strncmp($cast, 'decimal:', 8) === 0;
+    }
+
+    /**
+     * Determine if the cast is a datetime.
+     *
+     * @param string $cast
+     *
+     * @return bool
+     */
+    protected function isDateTimeCast($cast)
+    {
+        return strncmp($cast, 'datetime:', 8) === 0;
+    }
+
+    /**
+     * Determine if the given attribute must be casted.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    protected function isCastedAttribute($key)
+    {
+        return array_key_exists($key, array_change_key_case($this->casts, CASE_LOWER));
+    }
+
+    /**
+     * Cast an attribute to a native PHP type.
+     *
+     * @param string     $key
+     * @param array|null $value
+     *
+     * @return mixed
+     */
+    protected function castAttribute($key, $value)
+    {
+        $value = $this->castRequiresArrayValue($key) ? $value : Arr::first($value);
+
+        if (is_null($value)) {
+            return $value;
+        }
+
+        switch ($this->getCastType($key)) {
+            case 'int':
+            case 'integer':
+                return (int) $value;
+            case 'real':
+            case 'float':
+            case 'double':
+                return $this->fromFloat($value);
+            case 'decimal':
+                return $this->asDecimal($value, explode(':', $this->getCasts()[$key], 2)[1]);
+            case 'string':
+                return (string) $value;
+            case 'bool':
+            case 'boolean':
+                return $this->asBoolean($value);
+            case 'object':
+                return $this->fromJson($value, $asObject = true);
+            case 'array':
+            case 'json':
+                return $this->fromJson($value);
+            case 'collection':
+                return $this->newCollection($value);
+            case 'datetime':
+                return $this->asDateTime($value, explode(':', $this->getCasts()[$key], 2)[1]);
+            default:
+                return $value;
+        }
+    }
+
+    /**
+     * Determine if the cast type requires the first attribute value.
+     *
+     * @return bool
+     */
+    protected function castRequiresArrayValue($key)
+    {
+        return in_array($this->getCastType($key), ['collection']);
+    }
+
+    /**
+     * Cast the given attribute to JSON.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return string
+     */
+    protected function castAttributeAsJson($key, $value)
+    {
+        $value = $this->asJson($value);
+
+        if ($value === false) {
+            $class = get_class($this);
+            $message = json_last_error_msg();
+
+            throw new Exception("Unable to encode attribute [{$key}] for model [{$class}] to JSON: {$message}.");
+        }
+
+        return $value;
+    }
+
+    /**
+     * Convert the model to its JSON representation.
+     *
+     * @return string
+     */
+    public function toJson()
+    {
+        return json_encode($this);
+    }
+
+    /**
+     * Encode the given value as JSON.
+     *
+     * @param mixed $value
+     *
+     * @return string
+     */
+    protected function asJson($value)
+    {
+        return json_encode($value);
+    }
+
+    /**
+     * Decode the given JSON back into an array or object.
+     *
+     * @param string $value
+     * @param bool   $asObject
+     *
+     * @return mixed
+     */
+    public function fromJson($value, $asObject = false)
+    {
+        return json_decode($value, ! $asObject);
+    }
+
+    /**
+     * Decode the given float.
+     *
+     * @param mixed $value
+     *
+     * @return mixed
+     */
+    public function fromFloat($value)
+    {
+        switch ((string) $value) {
+            case 'Infinity':
+                return INF;
+            case '-Infinity':
+                return -INF;
+            case 'NaN':
+                return NAN;
+            default:
+                return (float) $value;
+        }
+    }
+
+    /**
+     * Cast the value to a boolean.
+     *
+     * @param mixed $value
+     *
+     * @return bool
+     */
+    protected function asBoolean($value)
+    {
+        $map = ['true' => true, 'false' => false];
+
+        return $map[strtolower($value)] ?? (bool) $value;
+    }
+
+    /**
+     * Cast a decimal value as a string.
+     *
+     * @param float $value
+     * @param int   $decimals
+     *
+     * @return string
+     */
+    protected function asDecimal($value, $decimals)
+    {
+        return number_format($value, $decimals, '.', '');
+    }
+
+    /**
+     * Get an attribute array of all arrayable attributes.
+     *
+     * @return array
+     */
+    protected function getArrayableAttributes()
+    {
+        return $this->getArrayableItems($this->attributes);
+    }
+
+    /**
+     * Get an attribute array of all arrayable values.
+     *
+     * @param array $values
+     *
+     * @return array
+     */
+    protected function getArrayableItems(array $values)
+    {
+        if (count($visible = $this->getVisible()) > 0) {
+            $values = array_intersect_key($values, array_flip($visible));
+        }
+
+        if (count($hidden = $this->getHidden()) > 0) {
+            $values = array_diff_key($values, array_flip($hidden));
+        }
+
+        return $values;
+    }
+
+    /**
+     * Get all of the appendable values that are arrayable.
+     *
+     * @return array
+     */
+    protected function getArrayableAppends()
+    {
+        if (empty($this->appends)) {
+            return [];
+        }
+
+        return $this->getArrayableItems(
+            array_combine($this->appends, $this->appends)
+        );
+    }
+
+    /**
+     * Get the format for date serialization.
+     *
+     * @return string
+     */
+    public function getDateFormat()
+    {
+        return $this->dateFormat ?: DateTimeInterface::ISO8601;
+    }
+
+    /**
+     * Set the date format used by the model for serialization.
+     *
+     * @param string $format
+     *
+     * @return $this
+     */
+    public function setDateFormat($format)
+    {
+        $this->dateFormat = $format;
+
+        return $this;
+    }
+
+    /**
+     * Get an attribute from the $attributes array.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    protected function getAttributeFromArray($key)
+    {
+        return $this->getNormalizedAttributes()[$key] ?? null;
+    }
+
+    /**
+     * Get the attributes with their keys normalized.
+     *
+     * @return array
+     */
+    protected function getNormalizedAttributes()
+    {
+        return array_change_key_case($this->attributes, CASE_LOWER);
+    }
+
+    /**
+     * Returns the first attribute by the specified key.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    public function getFirstAttribute($key)
+    {
+        return Arr::first(
+            Arr::wrap($this->getAttribute($key))
+        );
+    }
+
+    /**
+     * Returns all of the models attributes.
+     *
+     * @return array
+     */
+    public function getAttributes()
+    {
+        return $this->attributes;
+    }
+
+    /**
+     * Set an attribute value by the specified key and sub-key.
+     *
+     * @param mixed $key
+     * @param mixed $value
+     *
+     * @return $this
+     */
+    public function setAttribute($key, $value)
+    {
+        $key = $this->normalizeAttributeKey($key);
+
+        if ($this->hasSetMutator($key)) {
+            return $this->setMutatedAttributeValue($key, $value);
+        } elseif (
+            $value &&
+            $this->isDateAttribute($key) &&
+            ! $this->valueIsResetInteger($value)
+        ) {
+            $value = $this->fromDateTime($this->getDates()[$key], $value);
+        }
+
+        if ($this->isJsonCastable($key) && ! is_null($value)) {
+            $value = $this->castAttributeAsJson($key, $value);
+        }
+
+        $this->attributes[$key] = Arr::wrap($value);
+
+        return $this;
+    }
+
+    /**
+     * Set the models first attribute value.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return $this
+     */
+    public function setFirstAttribute($key, $value)
+    {
+        return $this->setAttribute($key, Arr::wrap($value));
+    }
+
+    /**
+     * Add a unique value to the given attribute.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return $this
+     */
+    public function addAttributeValue($key, $value)
+    {
+        return $this->setAttribute($key, array_unique(
+            array_merge(
+                Arr::wrap($this->getAttribute($key)),
+                Arr::wrap($value)
+            )
+        ));
+    }
+
+    /**
+     * Determine if a get mutator exists for an attribute.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function hasGetMutator($key)
+    {
+        return method_exists($this, 'get'.$this->getMutatorMethodName($key).'Attribute');
+    }
+
+    /**
+     * Determine if a set mutator exists for an attribute.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function hasSetMutator($key)
+    {
+        return method_exists($this, 'set'.$this->getMutatorMethodName($key).'Attribute');
+    }
+
+    /**
+     * Set the value of an attribute using its mutator.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return mixed
+     */
+    protected function setMutatedAttributeValue($key, $value)
+    {
+        return $this->{'set'.$this->getMutatorMethodName($key).'Attribute'}($value);
+    }
+
+    /**
+     * Get the value of an attribute using its mutator.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return mixed
+     */
+    protected function getMutatedAttributeValue($key, $value)
+    {
+        return $this->{'get'.$this->getMutatorMethodName($key).'Attribute'}($value);
+    }
+
+    /**
+     * Get the mutator attribute method name.
+     *
+     * Hyphenated attributes will use pascal cased methods.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    protected function getMutatorMethodName($key)
+    {
+        $key = ucwords(str_replace('-', ' ', $key));
+
+        return str_replace(' ', '', $key);
+    }
+
+    /**
+     * Get the value of an attribute using its mutator for array conversion.
+     *
+     * @param string $key
+     * @param mixed  $value
+     *
+     * @return array
+     */
+    protected function mutateAttributeForArray($key, $value)
+    {
+        return Arr::wrap(
+            $this->getMutatedAttributeValue($key, $value)
+        );
+    }
+
+    /**
+     * Set the attributes property.
+     *
+     * Used when constructing an existing LDAP record.
+     *
+     * @param array $attributes
+     *
+     * @return $this
+     */
+    public function setRawAttributes(array $attributes = [])
+    {
+        // We will filter out those annoying 'count' keys
+        // returned with LDAP results and lowercase all
+        // root array keys to prevent any casing issues.
+        $raw = array_change_key_case($this->filterRawAttributes($attributes), CASE_LOWER);
+
+        // Before setting the models attributes, we will filter
+        // out the attributes that contain an integer key. LDAP
+        // search results will contain integer keys that have
+        // attribute names as values. We don't need these.
+        $this->attributes = array_filter($raw, function ($key) {
+            return ! is_int($key);
+        }, ARRAY_FILTER_USE_KEY);
+
+        // LDAP search results will contain the distinguished
+        // name inside of the `dn` key. We will retrieve this,
+        // and then set it on the model for accessibility.
+        if (Arr::exists($attributes, 'dn')) {
+            $this->dn = Arr::accessible($attributes['dn'])
+                ? Arr::first($attributes['dn'])
+                : $attributes['dn'];
+        }
+
+        $this->syncOriginal();
+
+        // Here we will set the exists attribute to true,
+        // since raw attributes are only set in the case
+        // of attributes being loaded by query results.
+        $this->exists = true;
+
+        return $this;
+    }
+
+    /**
+     * Filters the count key recursively from raw LDAP attributes.
+     *
+     * @param array $attributes
+     * @param array $keys
+     *
+     * @return array
+     */
+    public function filterRawAttributes(array $attributes = [], array $keys = ['count', 'dn'])
+    {
+        foreach ($keys as $key) {
+            unset($attributes[$key]);
+        }
+
+        foreach ($attributes as $key => $value) {
+            $attributes[$key] = is_array($value)
+                ? $this->filterRawAttributes($value, $keys)
+                : $value;
+        }
+
+        return $attributes;
+    }
+
+    /**
+     * Determine if the model has the given attribute.
+     *
+     * @param int|string $key
+     *
+     * @return bool
+     */
+    public function hasAttribute($key)
+    {
+        return [] !== ($this->attributes[$this->normalizeAttributeKey($key)] ?? []);
+    }
+
+    /**
+     * Returns the number of attributes.
+     *
+     * @return int
+     */
+    public function countAttributes()
+    {
+        return count($this->getAttributes());
+    }
+
+    /**
+     * Returns the models original attributes.
+     *
+     * @return array
+     */
+    public function getOriginal()
+    {
+        return $this->original;
+    }
+
+    /**
+     * Get the attributes that have been changed since last sync.
+     *
+     * @return array
+     */
+    public function getDirty()
+    {
+        $dirty = [];
+
+        foreach ($this->attributes as $key => $value) {
+            if ($this->isDirty($key)) {
+                // We need to reset the array using array_values due to
+                // LDAP requiring consecutive indices (0, 1, 2 etc.).
+                // We would receive an exception otherwise.
+                $dirty[$key] = array_values($value);
+            }
+        }
+
+        return $dirty;
+    }
+
+    /**
+     * Determine if the given attribute is dirty.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function isDirty($key)
+    {
+        return ! $this->originalIsEquivalent($key);
+    }
+
+    /**
+     * Get the accessors being appended to the models array form.
+     *
+     * @return array
+     */
+    public function getAppends()
+    {
+        return $this->appends;
+    }
+
+    /**
+     * Set the accessors to append to model arrays.
+     *
+     * @param array $appends
+     *
+     * @return $this
+     */
+    public function setAppends(array $appends)
+    {
+        $this->appends = $appends;
+
+        return $this;
+    }
+
+    /**
+     * Return whether the accessor attribute has been appended.
+     *
+     * @param string $attribute
+     *
+     * @return bool
+     */
+    public function hasAppended($attribute)
+    {
+        return in_array($attribute, $this->appends);
+    }
+
+    /**
+     * Returns a normalized attribute key.
+     *
+     * @param string $key
+     *
+     * @return string
+     */
+    public function normalizeAttributeKey($key)
+    {
+        // Since LDAP supports hyphens in attribute names,
+        // we'll convert attributes being retrieved by
+        // underscores into hyphens for convenience.
+        return strtolower(
+            str_replace('_', '-', $key)
+        );
+    }
+
+    /**
+     * Determine if the new and old values for a given key are equivalent.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    protected function originalIsEquivalent($key)
+    {
+        if (! array_key_exists($key, $this->original)) {
+            return false;
+        }
+
+        $current = $this->attributes[$key];
+        $original = $this->original[$key];
+
+        if ($current === $original) {
+            return true;
+        }
+
+        return  is_numeric($current) &&
+                is_numeric($original) &&
+                strcmp((string) $current, (string) $original) === 0;
+    }
+
+    /**
+     * Get the mutated attributes for a given instance.
+     *
+     * @return array
+     */
+    public function getMutatedAttributes()
+    {
+        $class = static::class;
+
+        if (! isset(static::$mutatorCache[$class])) {
+            static::cacheMutatedAttributes($class);
+        }
+
+        return static::$mutatorCache[$class];
+    }
+
+    /**
+     * Extract and cache all the mutated attributes of a class.
+     *
+     * @param string $class
+     *
+     * @return void
+     */
+    public static function cacheMutatedAttributes($class)
+    {
+        static::$mutatorCache[$class] = collect(static::getMutatorMethods($class))->reject(function ($match) {
+            return $match === 'First';
+        })->map(function ($match) {
+            return lcfirst($match);
+        })->all();
+    }
+
+    /**
+     * Get all of the attribute mutator methods.
+     *
+     * @param mixed $class
+     *
+     * @return array
+     */
+    protected static function getMutatorMethods($class)
+    {
+        preg_match_all('/(?<=^|;)get([^;]+?)Attribute(;|$)/', implode(';', get_class_methods($class)), $matches);
+
+        return $matches[1];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasEvents.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasEvents.php
new file mode 100644
index 0000000..1bc76d0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasEvents.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+use Closure;
+use LdapRecord\Models\Events\Event;
+
+trait HasEvents
+{
+    /**
+     * Fires the specified model event.
+     *
+     * @param Event $event
+     *
+     * @return mixed
+     */
+    protected function fireModelEvent(Event $event)
+    {
+        return static::getConnectionContainer()->getEventDispatcher()->fire($event);
+    }
+
+    /**
+     * Listens to a model event.
+     *
+     * @param string  $event
+     * @param Closure $listener
+     *
+     * @return mixed
+     */
+    protected function listenForModelEvent($event, Closure $listener)
+    {
+        return static::getConnectionContainer()->getEventDispatcher()->listen($event, $listener);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasGlobalScopes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasGlobalScopes.php
new file mode 100644
index 0000000..c14abad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasGlobalScopes.php
@@ -0,0 +1,75 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+use Closure;
+use InvalidArgumentException;
+use LdapRecord\Models\Scope;
+
+trait HasGlobalScopes
+{
+    /**
+     * Register a new global scope on the model.
+     *
+     * @param Scope|Closure|string $scope
+     * @param Closure|null         $implementation
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return mixed
+     */
+    public static function addGlobalScope($scope, Closure $implementation = null)
+    {
+        if (is_string($scope) && ! is_null($implementation)) {
+            return static::$globalScopes[static::class][$scope] = $implementation;
+        } elseif ($scope instanceof Closure) {
+            return static::$globalScopes[static::class][spl_object_hash($scope)] = $scope;
+        } elseif ($scope instanceof Scope) {
+            return static::$globalScopes[static::class][get_class($scope)] = $scope;
+        }
+
+        throw new InvalidArgumentException('Global scope must be an instance of Closure or Scope.');
+    }
+
+    /**
+     * Determine if a model has a global scope.
+     *
+     * @param Scope|string $scope
+     *
+     * @return bool
+     */
+    public static function hasGlobalScope($scope)
+    {
+        return ! is_null(static::getGlobalScope($scope));
+    }
+
+    /**
+     * Get a global scope registered with the model.
+     *
+     * @param Scope|string $scope
+     *
+     * @return Scope|Closure|null
+     */
+    public static function getGlobalScope($scope)
+    {
+        if (array_key_exists(static::class, static::$globalScopes)) {
+            $scopeName = is_string($scope) ? $scope : get_class($scope);
+
+            return array_key_exists($scopeName, static::$globalScopes[static::class])
+                ? static::$globalScopes[static::class][$scopeName]
+                : null;
+        }
+    }
+
+    /**
+     * Get the global scopes for this class instance.
+     *
+     * @return array
+     */
+    public function getGlobalScopes()
+    {
+        return array_key_exists(static::class, static::$globalScopes)
+            ? static::$globalScopes[static::class]
+            : [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasPassword.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasPassword.php
new file mode 100644
index 0000000..9822456
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasPassword.php
@@ -0,0 +1,251 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+use LdapRecord\ConnectionException;
+use LdapRecord\LdapRecordException;
+use LdapRecord\Models\Attributes\Password;
+
+trait HasPassword
+{
+    /**
+     * Set the password on the user.
+     *
+     * @param string|array $password
+     *
+     * @throws ConnectionException
+     */
+    public function setPasswordAttribute($password)
+    {
+        $this->validateSecureConnection();
+
+        // Here we will attempt to determine the password hash method in use
+        // by parsing the users hashed password (if it as available). If a
+        // method is determined, we will override the default here.
+        if (! ($method = $this->determinePasswordHashMethod())) {
+            $method = $this->getPasswordHashMethod();
+        }
+
+        // If the password given is an array, we can assume we
+        // are changing the password for the current user.
+        if (is_array($password)) {
+            $this->setChangedPassword(
+                $this->getHashedPassword($method, $password[0], $this->getPasswordSalt($method)),
+                $this->getHashedPassword($method, $password[1]),
+                $this->getPasswordAttributeName()
+            );
+        }
+        // Otherwise, we will assume the password is being
+        // reset, overwriting the one currently in place.
+        else {
+            $this->setPassword(
+                $this->getHashedPassword($method, $password),
+                $this->getPasswordAttributeName()
+            );
+        }
+    }
+
+    /**
+     * Alias for setting the password on the user.
+     *
+     * @param string|array $password
+     *
+     * @throws ConnectionException
+     */
+    public function setUnicodepwdAttribute($password)
+    {
+        $this->setPasswordAttribute($password);
+    }
+
+    /**
+     * An accessor for retrieving the user's hashed password value.
+     *
+     * @return string|null
+     */
+    public function getPasswordAttribute()
+    {
+        return $this->getAttribute($this->getPasswordAttributeName())[0] ?? null;
+    }
+
+    /**
+     * Get the name of the attribute that contains the user's password.
+     *
+     * @return string
+     */
+    public function getPasswordAttributeName()
+    {
+        if (property_exists($this, 'passwordAttribute')) {
+            return $this->passwordAttribute;
+        }
+
+        if (method_exists($this, 'passwordAttribute')) {
+            return $this->passwordAttribute();
+        }
+
+        return 'unicodepwd';
+    }
+
+    /**
+     * Get the name of the method to use for hashing the user's password.
+     *
+     * @return string
+     */
+    public function getPasswordHashMethod()
+    {
+        if (property_exists($this, 'passwordHashMethod')) {
+            return $this->passwordHashMethod;
+        }
+
+        if (method_exists($this, 'passwordHashMethod')) {
+            return $this->passwordHashMethod();
+        }
+
+        return 'encode';
+    }
+
+    /**
+     * Set the changed password.
+     *
+     * @param string $oldPassword
+     * @param string $newPassword
+     * @param string $attribute
+     *
+     * @return void
+     */
+    protected function setChangedPassword($oldPassword, $newPassword, $attribute)
+    {
+        // Create batch modification for removing the old password.
+        $this->addModification(
+            $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_REMOVE,
+                [$oldPassword]
+            )
+        );
+
+        // Create batch modification for adding the new password.
+        $this->addModification(
+            $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_ADD,
+                [$newPassword]
+            )
+        );
+    }
+
+    /**
+     * Set the password on the model.
+     *
+     * @param string $password
+     * @param string $attribute
+     *
+     * @return void
+     */
+    protected function setPassword($password, $attribute)
+    {
+        $this->addModification(
+            $this->newBatchModification(
+                $attribute,
+                LDAP_MODIFY_BATCH_REPLACE,
+                [$password]
+            )
+        );
+    }
+
+    /**
+     * Encode / hash the given password.
+     *
+     * @param string $method
+     * @param string $password
+     * @param string $salt
+     *
+     * @throws LdapRecordException
+     *
+     * @return string
+     */
+    protected function getHashedPassword($method, $password, $salt = null)
+    {
+        if (! method_exists(Password::class, $method)) {
+            throw new LdapRecordException("Password hashing method [{$method}] does not exist.");
+        }
+
+        if (Password::hashMethodRequiresSalt($method)) {
+            return Password::{$method}($password, $salt);
+        }
+
+        return Password::{$method}($password);
+    }
+
+    /**
+     * Validates that the current LDAP connection is secure.
+     *
+     * @throws ConnectionException
+     *
+     * @return void
+     */
+    protected function validateSecureConnection()
+    {
+        $connection = $this->getConnection();
+
+        if ($connection->isConnected()) {
+            $secure = $connection->getLdapConnection()->canChangePasswords();
+        } else {
+            $secure = $connection->getConfiguration()->get('use_ssl') || $connection->getConfiguration()->get('use_tls');
+        }
+
+        if (! $secure) {
+            throw new ConnectionException(
+                'You must be connected to your LDAP server with TLS or SSL to perform this operation.'
+            );
+        }
+    }
+
+    /**
+     * Attempt to retrieve the password's salt.
+     *
+     * @param string $method
+     *
+     * @return string|null
+     */
+    public function getPasswordSalt($method)
+    {
+        if (! Password::hashMethodRequiresSalt($method)) {
+            return;
+        }
+
+        return Password::getSalt($this->password);
+    }
+
+    /**
+     * Determine the password hash method to use from the users current password.
+     *
+     * @return string|void
+     */
+    public function determinePasswordHashMethod()
+    {
+        if (! $password = $this->password) {
+            return;
+        }
+
+        if (! $method = Password::getHashMethod($password)) {
+            return;
+        }
+
+        [,$algo] = array_pad(
+            Password::getHashMethodAndAlgo($password) ?? [],
+            $length = 2,
+            $value = null
+        );
+
+        switch ($algo) {
+            case Password::CRYPT_SALT_TYPE_MD5:
+                return 'md5'.$method;
+            case Password::CRYPT_SALT_TYPE_SHA256:
+                return 'sha256'.$method;
+            case Password::CRYPT_SALT_TYPE_SHA512:
+                return 'sha512'.$method;
+            default:
+                return $method;
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasRelationships.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasRelationships.php
new file mode 100644
index 0000000..a8a5cac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasRelationships.php
@@ -0,0 +1,63 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+use LdapRecord\Models\Relations\HasMany;
+use LdapRecord\Models\Relations\HasManyIn;
+use LdapRecord\Models\Relations\HasOne;
+use LdapRecord\Support\Arr;
+
+trait HasRelationships
+{
+    /**
+     * Returns a new has one relationship.
+     *
+     * @param mixed  $related
+     * @param string $relationKey
+     * @param string $foreignKey
+     *
+     * @return HasOne
+     */
+    public function hasOne($related, $relationKey, $foreignKey = 'dn')
+    {
+        return new HasOne($this->newQuery(), $this, $related, $relationKey, $foreignKey);
+    }
+
+    /**
+     * Returns a new has many relationship.
+     *
+     * @param mixed  $related
+     * @param string $relationKey
+     * @param string $foreignKey
+     *
+     * @return HasMany
+     */
+    public function hasMany($related, $relationKey, $foreignKey = 'dn')
+    {
+        return new HasMany($this->newQuery(), $this, $related, $relationKey, $foreignKey, $this->guessRelationshipName());
+    }
+
+    /**
+     * Returns a new has many in relationship.
+     *
+     * @param mixed  $related
+     * @param string $relationKey
+     * @param string $foreignKey
+     *
+     * @return HasManyIn
+     */
+    public function hasManyIn($related, $relationKey, $foreignKey = 'dn')
+    {
+        return new HasManyIn($this->newQuery(), $this, $related, $relationKey, $foreignKey, $this->guessRelationshipName());
+    }
+
+    /**
+     * Get the relationships name.
+     *
+     * @return string|null
+     */
+    protected function guessRelationshipName()
+    {
+        return Arr::last(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 3))['function'];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasScopes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasScopes.php
new file mode 100644
index 0000000..6c97cf9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HasScopes.php
@@ -0,0 +1,38 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+trait HasScopes
+{
+    /**
+     * Begin querying the direct descendants of the model.
+     *
+     * @return \LdapRecord\Query\Model\Builder
+     */
+    public function descendants()
+    {
+        return $this->in($this->getDn())->listing();
+    }
+
+    /**
+     * Begin querying the direct ancestors of the model.
+     *
+     * @return \LdapRecord\Query\Model\Builder
+     */
+    public function ancestors()
+    {
+        $parent = $this->getParentDn($this->getDn());
+
+        return $this->in($this->getParentDn($parent))->listing();
+    }
+
+    /**
+     * Begin querying the direct siblings of the model.
+     *
+     * @return \LdapRecord\Query\Model\Builder
+     */
+    public function siblings()
+    {
+        return $this->in($this->getParentDn($this->getDn()))->listing();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HidesAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HidesAttributes.php
new file mode 100644
index 0000000..9cc2100
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Concerns/HidesAttributes.php
@@ -0,0 +1,143 @@
+<?php
+
+namespace LdapRecord\Models\Concerns;
+
+/**
+ * @author Taylor Otwell
+ *
+ * @see https://laravel.com
+ */
+trait HidesAttributes
+{
+    /**
+     * The attributes that should be hidden for serialization.
+     *
+     * @var array
+     */
+    protected $hidden = [];
+
+    /**
+     * The attributes that should be visible in serialization.
+     *
+     * @var array
+     */
+    protected $visible = [];
+
+    /**
+     * Get the hidden attributes for the model.
+     *
+     * @return array
+     */
+    public function getHidden()
+    {
+        return array_map(function ($key) {
+            return $this->normalizeAttributeKey($key);
+        }, $this->hidden);
+    }
+
+    /**
+     * Set the hidden attributes for the model.
+     *
+     * @param array $hidden
+     *
+     * @return $this
+     */
+    public function setHidden(array $hidden)
+    {
+        $this->hidden = $hidden;
+
+        return $this;
+    }
+
+    /**
+     * Add hidden attributes for the model.
+     *
+     * @param array|string|null $attributes
+     *
+     * @return void
+     */
+    public function addHidden($attributes = null)
+    {
+        $this->hidden = array_merge(
+            $this->hidden,
+            is_array($attributes) ? $attributes : func_get_args()
+        );
+    }
+
+    /**
+     * Get the visible attributes for the model.
+     *
+     * @return array
+     */
+    public function getVisible()
+    {
+        return array_map(function ($key) {
+            return $this->normalizeAttributeKey($key);
+        }, $this->visible);
+    }
+
+    /**
+     * Set the visible attributes for the model.
+     *
+     * @param array $visible
+     *
+     * @return $this
+     */
+    public function setVisible(array $visible)
+    {
+        $this->visible = $visible;
+
+        return $this;
+    }
+
+    /**
+     * Add visible attributes for the model.
+     *
+     * @param array|string|null $attributes
+     *
+     * @return void
+     */
+    public function addVisible($attributes = null)
+    {
+        $this->visible = array_merge(
+            $this->visible,
+            is_array($attributes) ? $attributes : func_get_args()
+        );
+    }
+
+    /**
+     * Make the given, typically hidden, attributes visible.
+     *
+     * @param array|string $attributes
+     *
+     * @return $this
+     */
+    public function makeVisible($attributes)
+    {
+        $this->hidden = array_diff($this->hidden, (array) $attributes);
+
+        if (! empty($this->visible)) {
+            $this->addVisible($attributes);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Make the given, typically visible, attributes hidden.
+     *
+     * @param array|string $attributes
+     *
+     * @return $this
+     */
+    public function makeHidden($attributes)
+    {
+        $attributes = (array) $attributes;
+
+        $this->visible = array_diff($this->visible, $attributes);
+
+        $this->hidden = array_unique(array_merge($this->hidden, $attributes));
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DetectsResetIntegers.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DetectsResetIntegers.php
new file mode 100644
index 0000000..8712ef7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DetectsResetIntegers.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace LdapRecord\Models;
+
+trait DetectsResetIntegers
+{
+    /**
+     * Determine if the given value is an LDAP reset integer.
+     *
+     * The integer values '0' and '-1' can be used on certain
+     * LDAP attributes to instruct the server to reset the
+     * value to an 'unset' or 'cleared' state.
+     *
+     * @param mixed $value
+     *
+     * @return bool
+     */
+    protected function valueIsResetInteger($value)
+    {
+        return in_array($value, [0, -1], $strict = true);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Entry.php
new file mode 100644
index 0000000..1bf8325
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Entry.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace LdapRecord\Models\DirectoryServer;
+
+use LdapRecord\Models\Model;
+
+class Entry extends Model
+{
+    /**
+     * The attribute key that contains the models object GUID.
+     *
+     * @var string
+     */
+    protected $guidKey = 'gidNumber';
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Group.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Group.php
new file mode 100644
index 0000000..49a6e0a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/Group.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace LdapRecord\Models\DirectoryServer;
+
+class Group extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'groupOfUniqueNames',
+        'posixGroup',
+    ];
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/User.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/User.php
new file mode 100644
index 0000000..430588b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/DirectoryServer/User.php
@@ -0,0 +1,19 @@
+<?php
+
+namespace LdapRecord\Models\DirectoryServer;
+
+class User extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'nsPerson',
+        'nsAccount',
+        'nsOrgPerson',
+        'posixAccount',
+    ];
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Entry.php
new file mode 100644
index 0000000..dcfda57
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Entry.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models;
+
+class Entry extends Model
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Created.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Created.php
new file mode 100644
index 0000000..c101235
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Created.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Created extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Creating.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Creating.php
new file mode 100644
index 0000000..c4e6ad7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Creating.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Creating extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleted.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleted.php
new file mode 100644
index 0000000..7852659
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleted.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Deleted extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleting.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleting.php
new file mode 100644
index 0000000..9a0810d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Deleting.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Deleting extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Event.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Event.php
new file mode 100644
index 0000000..20de0b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Event.php
@@ -0,0 +1,35 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+use LdapRecord\Models\Model;
+
+abstract class Event
+{
+    /**
+     * The model that the event is being triggered on.
+     *
+     * @var Model
+     */
+    protected $model;
+
+    /**
+     * Constructor.
+     *
+     * @param Model $model
+     */
+    public function __construct(Model $model)
+    {
+        $this->model = $model;
+    }
+
+    /**
+     * Returns the model that generated the event.
+     *
+     * @return Model
+     */
+    public function getModel()
+    {
+        return $this->model;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renamed.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renamed.php
new file mode 100644
index 0000000..0f02b6d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renamed.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Renamed extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renaming.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renaming.php
new file mode 100644
index 0000000..83427ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Renaming.php
@@ -0,0 +1,57 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+use LdapRecord\Models\Model;
+
+class Renaming extends Event
+{
+    /**
+     * The models RDN.
+     *
+     * @var string
+     */
+    protected $rdn;
+
+    /**
+     * The models new parent DN.
+     *
+     * @var string
+     */
+    protected $newParentDn;
+
+    /**
+     * Constructor.
+     *
+     * @param Model  $model
+     * @param string $rdn
+     * @param string $newParentDn
+     */
+    public function __construct(Model $model, $rdn, $newParentDn)
+    {
+        parent::__construct($model);
+
+        $this->rdn = $rdn;
+        $this->newParentDn = $newParentDn;
+    }
+
+    /**
+     * Get the models RDN.
+     *
+     * @return string
+     */
+    public function getRdn()
+    {
+        return $this->rdn;
+    }
+
+    /**
+     * Get the models parent DN.
+     *
+     * @return string
+     */
+    public function getNewParentDn()
+    {
+        return $this->newParentDn;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saved.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saved.php
new file mode 100644
index 0000000..cf9c5ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saved.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Saved extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saving.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saving.php
new file mode 100644
index 0000000..0c99403
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Saving.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Saving extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updated.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updated.php
new file mode 100644
index 0000000..b0dd611
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updated.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Updated extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updating.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updating.php
new file mode 100644
index 0000000..20ae60c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Events/Updating.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Events;
+
+class Updating extends Event
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Entry.php
new file mode 100644
index 0000000..7fdda9c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Entry.php
@@ -0,0 +1,55 @@
+<?php
+
+namespace LdapRecord\Models\FreeIPA;
+
+use LdapRecord\Connection;
+use LdapRecord\Models\Entry as BaseEntry;
+use LdapRecord\Models\FreeIPA\Scopes\AddEntryUuidToSelects;
+use LdapRecord\Models\Types\FreeIPA;
+use LdapRecord\Query\Model\FreeIpaBuilder;
+
+/** @mixin FreeIpaBuilder */
+class Entry extends BaseEntry implements FreeIPA
+{
+    /**
+     * The attribute key that contains the models object GUID.
+     *
+     * @var string
+     */
+    protected $guidKey = 'ipauniqueid';
+
+    /**
+     * The default attributes that should be mutated to dates.
+     *
+     * @var array
+     */
+    protected $defaultDates = [
+        'krblastpwdchange' => 'ldap',
+        'krbpasswordexpiration' => 'ldap',
+    ];
+
+    /**
+     * @inheritdoc
+     */
+    protected static function boot()
+    {
+        parent::boot();
+
+        // Here we'll add a global scope to all FreeIPA models to ensure the
+        // Entry UUID is always selected on each query. This attribute is
+        // virtual, so it must be manually selected to be included.
+        static::addGlobalScope(new AddEntryUuidToSelects());
+    }
+
+    /**
+     * Create a new query builder.
+     *
+     * @param Connection $connection
+     *
+     * @return FreeIpaBuilder
+     */
+    public function newQueryBuilder(Connection $connection)
+    {
+        return new FreeIpaBuilder($connection);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Group.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Group.php
new file mode 100644
index 0000000..10fd934
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Group.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace LdapRecord\Models\FreeIPA;
+
+class Group extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'groupofnames',
+        'nestedgroup',
+        'ipausergroup',
+        'posixgroup',
+    ];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the current group is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(self::class, 'member');
+    }
+
+    /**
+     * Retrieve the members of the group.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function members()
+    {
+        return $this->hasMany(User::class, 'memberof')->using($this, 'member');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Scopes/AddEntryUuidToSelects.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Scopes/AddEntryUuidToSelects.php
new file mode 100644
index 0000000..039c05e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/Scopes/AddEntryUuidToSelects.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace LdapRecord\Models\FreeIPA\Scopes;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Scope;
+use LdapRecord\Query\Model\Builder;
+
+class AddEntryUuidToSelects implements Scope
+{
+    /**
+     * Add the entry UUID to the selected attributes.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model)
+    {
+        empty($query->columns)
+            ? $query->addSelect(['*', $model->getGuidKey()])
+            : $query->addSelect($model->getGuidKey());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/User.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/User.php
new file mode 100644
index 0000000..24c7f3b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/FreeIPA/User.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace LdapRecord\Models\FreeIPA;
+
+class User extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'person',
+        'inetorgperson',
+        'organizationalperson',
+    ];
+
+    /**
+     * Retrieve groups that the current user is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'member');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Model.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Model.php
new file mode 100644
index 0000000..6ba24b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Model.php
@@ -0,0 +1,1441 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use ArrayAccess;
+use InvalidArgumentException;
+use JsonSerializable;
+use LdapRecord\Connection;
+use LdapRecord\Container;
+use LdapRecord\EscapesValues;
+use LdapRecord\Models\Attributes\DistinguishedName;
+use LdapRecord\Models\Attributes\Guid;
+use LdapRecord\Models\Events\Renamed;
+use LdapRecord\Models\Events\Renaming;
+use LdapRecord\Query\Model\Builder;
+use LdapRecord\Support\Arr;
+use UnexpectedValueException;
+
+/** @mixin Builder */
+abstract class Model implements ArrayAccess, JsonSerializable
+{
+    use EscapesValues;
+    use Concerns\HasEvents;
+    use Concerns\HasScopes;
+    use Concerns\HasAttributes;
+    use Concerns\HasGlobalScopes;
+    use Concerns\HidesAttributes;
+    use Concerns\HasRelationships;
+
+    /**
+     * Indicates if the model exists in the LDAP directory.
+     *
+     * @var bool
+     */
+    public $exists = false;
+
+    /**
+     * Indicates whether the model was created during the current request lifecycle.
+     *
+     * @var bool
+     */
+    public $wasRecentlyCreated = false;
+
+    /**
+     * Indicates whether the model was renamed during the current request lifecycle.
+     *
+     * @var bool
+     */
+    public $wasRecentlyRenamed = false;
+
+    /**
+     * The models distinguished name.
+     *
+     * @var string|null
+     */
+    protected $dn;
+
+    /**
+     * The base DN of where the model should be created in.
+     *
+     * @var string|null
+     */
+    protected $in;
+
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [];
+
+    /**
+     * The connection container instance.
+     *
+     * @var Container
+     */
+    protected static $container;
+
+    /**
+     * The LDAP connection name for the model.
+     *
+     * @var string|null
+     */
+    protected $connection;
+
+    /**
+     * The attribute key that contains the models object GUID.
+     *
+     * @var string
+     */
+    protected $guidKey = 'objectguid';
+
+    /**
+     * Contains the models modifications.
+     *
+     * @var array
+     */
+    protected $modifications = [];
+
+    /**
+     * The array of global scopes on the model.
+     *
+     * @var array
+     */
+    protected static $globalScopes = [];
+
+    /**
+     * The array of booted models.
+     *
+     * @var array
+     */
+    protected static $booted = [];
+
+    /**
+     * Constructor.
+     *
+     * @param array $attributes
+     */
+    public function __construct(array $attributes = [])
+    {
+        $this->bootIfNotBooted();
+
+        $this->fill($attributes);
+    }
+
+    /**
+     * Check if the model needs to be booted and if so, do it.
+     *
+     * @return void
+     */
+    protected function bootIfNotBooted()
+    {
+        if (! isset(static::$booted[static::class])) {
+            static::$booted[static::class] = true;
+
+            static::boot();
+        }
+    }
+
+    /**
+     * The "booting" method of the model.
+     *
+     * @return void
+     */
+    protected static function boot()
+    {
+        //
+    }
+
+    /**
+     * Clear the list of booted models so they will be re-booted.
+     *
+     * @return void
+     */
+    public static function clearBootedModels()
+    {
+        static::$booted = [];
+
+        static::$globalScopes = [];
+    }
+
+    /**
+     * Handle dynamic method calls into the model.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        if (method_exists($this, $method)) {
+            return $this->$method(...$parameters);
+        }
+
+        return $this->newQuery()->$method(...$parameters);
+    }
+
+    /**
+     * Handle dynamic static method calls into the method.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public static function __callStatic($method, $parameters)
+    {
+        return (new static())->$method(...$parameters);
+    }
+
+    /**
+     * Returns the models distinguished name.
+     *
+     * @return string|null
+     */
+    public function getDn()
+    {
+        return $this->dn;
+    }
+
+    /**
+     * Set the models distinguished name.
+     *
+     * @param string $dn
+     *
+     * @return static
+     */
+    public function setDn($dn)
+    {
+        $this->dn = (string) $dn;
+
+        return $this;
+    }
+
+    /**
+     * Get the LDAP connection for the model.
+     *
+     * @return Connection
+     */
+    public function getConnection()
+    {
+        return static::resolveConnection($this->getConnectionName());
+    }
+
+    /**
+     * Get the current connection name for the model.
+     *
+     * @return string
+     */
+    public function getConnectionName()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * Set the connection associated with the model.
+     *
+     * @param string $name
+     *
+     * @return $this
+     */
+    public function setConnection($name)
+    {
+        $this->connection = $name;
+
+        return $this;
+    }
+
+    /**
+     * Begin querying the model on a given connection.
+     *
+     * @param string|null $connection
+     *
+     * @return Builder
+     */
+    public static function on($connection = null)
+    {
+        $instance = new static();
+
+        $instance->setConnection($connection);
+
+        return $instance->newQuery();
+    }
+
+    /**
+     * Get all the models from the directory.
+     *
+     * @param array|mixed $attributes
+     *
+     * @return Collection|static[]
+     */
+    public static function all($attributes = ['*'])
+    {
+        return static::query()->select($attributes)->paginate();
+    }
+
+    /**
+     * Begin querying the model.
+     *
+     * @return Builder
+     */
+    public static function query()
+    {
+        return (new static())->newQuery();
+    }
+
+    /**
+     * Get a new query for builder filtered by the current models object classes.
+     *
+     * @return Builder
+     */
+    public function newQuery()
+    {
+        return $this->registerModelScopes(
+            $this->newQueryWithoutScopes()
+        );
+    }
+
+    /**
+     * Get a new query builder that doesn't have any global scopes.
+     *
+     * @return Builder
+     */
+    public function newQueryWithoutScopes()
+    {
+        return static::resolveConnection(
+            $this->getConnectionName()
+        )->query()->model($this);
+    }
+
+    /**
+     * Create a new query builder.
+     *
+     * @param Connection $connection
+     *
+     * @return Builder
+     */
+    public function newQueryBuilder(Connection $connection)
+    {
+        return new Builder($connection);
+    }
+
+    /**
+     * Create a new model instance.
+     *
+     * @param array $attributes
+     *
+     * @return static
+     */
+    public function newInstance(array $attributes = [])
+    {
+        return (new static($attributes))->setConnection($this->getConnectionName());
+    }
+
+    /**
+     * Resolve a connection instance.
+     *
+     * @param string|null $connection
+     *
+     * @return Connection
+     */
+    public static function resolveConnection($connection = null)
+    {
+        return static::getConnectionContainer()->get($connection);
+    }
+
+    /**
+     * Get the connection container.
+     *
+     * @return Container
+     */
+    public static function getConnectionContainer()
+    {
+        return static::$container ?? static::getDefaultConnectionContainer();
+    }
+
+    /**
+     * Get the default singleton container instance.
+     *
+     * @return Container
+     */
+    public static function getDefaultConnectionContainer()
+    {
+        return Container::getInstance();
+    }
+
+    /**
+     * Set the connection container.
+     *
+     * @param Container $container
+     *
+     * @return void
+     */
+    public static function setConnectionContainer(Container $container)
+    {
+        static::$container = $container;
+    }
+
+    /**
+     * Unset the connection container.
+     *
+     * @return void
+     */
+    public static function unsetConnectionContainer()
+    {
+        static::$container = null;
+    }
+
+    /**
+     * Register the query scopes for this builder instance.
+     *
+     * @param Builder $builder
+     *
+     * @return Builder
+     */
+    public function registerModelScopes($builder)
+    {
+        $this->applyObjectClassScopes($builder);
+
+        $this->registerGlobalScopes($builder);
+
+        return $builder;
+    }
+
+    /**
+     * Register the global model scopes.
+     *
+     * @param Builder $builder
+     *
+     * @return Builder
+     */
+    public function registerGlobalScopes($builder)
+    {
+        foreach ($this->getGlobalScopes() as $identifier => $scope) {
+            $builder->withGlobalScope($identifier, $scope);
+        }
+
+        return $builder;
+    }
+
+    /**
+     * Apply the model object class scopes to the given builder instance.
+     *
+     * @param Builder $query
+     *
+     * @return void
+     */
+    public function applyObjectClassScopes(Builder $query)
+    {
+        foreach (static::$objectClasses as $objectClass) {
+            $query->where('objectclass', '=', $objectClass);
+        }
+    }
+
+    /**
+     * Returns the models distinguished name when the model is converted to a string.
+     *
+     * @return null|string
+     */
+    public function __toString()
+    {
+        return $this->getDn();
+    }
+
+    /**
+     * Returns a new batch modification.
+     *
+     * @param string|null     $attribute
+     * @param string|int|null $type
+     * @param array           $values
+     *
+     * @return BatchModification
+     */
+    public function newBatchModification($attribute = null, $type = null, $values = [])
+    {
+        return new BatchModification($attribute, $type, $values);
+    }
+
+    /**
+     * Returns a new collection with the specified items.
+     *
+     * @param mixed $items
+     *
+     * @return Collection
+     */
+    public function newCollection($items = [])
+    {
+        return new Collection($items);
+    }
+
+    /**
+     * Dynamically retrieve attributes on the object.
+     *
+     * @param mixed $key
+     *
+     * @return bool
+     */
+    public function __get($key)
+    {
+        return $this->getAttribute($key);
+    }
+
+    /**
+     * Dynamically set attributes on the object.
+     *
+     * @param mixed $key
+     * @param mixed $value
+     *
+     * @return $this
+     */
+    public function __set($key, $value)
+    {
+        return $this->setAttribute($key, $value);
+    }
+
+    /**
+     * Determine if the given offset exists.
+     *
+     * @param string $offset
+     *
+     * @return bool
+     */
+    public function offsetExists($offset)
+    {
+        return ! is_null($this->getAttribute($offset));
+    }
+
+    /**
+     * Get the value for a given offset.
+     *
+     * @param string $offset
+     *
+     * @return mixed
+     */
+    public function offsetGet($offset)
+    {
+        return $this->getAttribute($offset);
+    }
+
+    /**
+     * Set the value at the given offset.
+     *
+     * @param string $offset
+     * @param mixed  $value
+     *
+     * @return void
+     */
+    public function offsetSet($offset, $value)
+    {
+        $this->setAttribute($offset, $value);
+    }
+
+    /**
+     * Unset the value at the given offset.
+     *
+     * @param string $offset
+     *
+     * @return void
+     */
+    public function offsetUnset($offset)
+    {
+        unset($this->attributes[$offset]);
+    }
+
+    /**
+     * Determine if an attribute exists on the model.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function __isset($key)
+    {
+        return $this->offsetExists($key);
+    }
+
+    /**
+     * Unset an attribute on the model.
+     *
+     * @param string $key
+     *
+     * @return void
+     */
+    public function __unset($key)
+    {
+        $this->offsetUnset($key);
+    }
+
+    /**
+     * Convert the object into something JSON serializable.
+     *
+     * @return array
+     */
+    public function jsonSerialize()
+    {
+        return $this->attributesToArray();
+    }
+
+    /**
+     * Converts extra attributes for JSON serialization.
+     *
+     * @param array $attributes
+     *
+     * @return array
+     */
+    protected function convertAttributesForJson(array $attributes = [])
+    {
+        // If the model has a GUID set, we need to convert
+        // it due to it being in binary. Otherwise we'll
+        // receive a JSON serialization exception.
+        if ($this->hasAttribute($this->guidKey)) {
+            return array_replace($attributes, [
+                $this->guidKey => [$this->getConvertedGuid()],
+            ]);
+        }
+
+        return $attributes;
+    }
+
+    /**
+     * Reload a fresh model instance from the directory.
+     *
+     * @return static|false
+     */
+    public function fresh()
+    {
+        if (! $this->exists) {
+            return false;
+        }
+
+        return $this->newQuery()->find($this->dn);
+    }
+
+    /**
+     * Determine if two models have the same distinguished name and belong to the same connection.
+     *
+     * @param static $model
+     *
+     * @return bool
+     */
+    public function is(self $model)
+    {
+        return $this->dn == $model->getDn() && $this->getConnectionName() == $model->getConnectionName();
+    }
+
+    /**
+     * Hydrate a new collection of models from LDAP search results.
+     *
+     * @param array $records
+     *
+     * @return Collection
+     */
+    public function hydrate($records)
+    {
+        return $this->newCollection($records)->transform(function ($attributes) {
+            return $attributes instanceof static
+                ? $attributes
+                : static::newInstance()->setRawAttributes($attributes);
+        });
+    }
+
+    /**
+     * Converts the current model into the given model.
+     *
+     * @param Model $into
+     *
+     * @return Model
+     */
+    public function convert(self $into)
+    {
+        $into->setDn($this->getDn());
+        $into->setConnection($this->getConnectionName());
+
+        $this->exists
+            ? $into->setRawAttributes($this->getAttributes())
+            : $into->fill($this->getAttributes());
+
+        return $into;
+    }
+
+    /**
+     * Refreshes the current models attributes with the directory values.
+     *
+     * @return bool
+     */
+    public function refresh()
+    {
+        if ($model = $this->fresh()) {
+            $this->setRawAttributes($model->getAttributes());
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Get the model's batch modifications to be processed.
+     *
+     * @return array
+     */
+    public function getModifications()
+    {
+        $builtModifications = [];
+
+        foreach ($this->buildModificationsFromDirty() as $modification) {
+            $builtModifications[] = $modification->get();
+        }
+
+        return array_merge($this->modifications, $builtModifications);
+    }
+
+    /**
+     * Set the models batch modifications.
+     *
+     * @param array $modifications
+     *
+     * @return $this
+     */
+    public function setModifications(array $modifications = [])
+    {
+        $this->modifications = [];
+
+        foreach ($modifications as $modification) {
+            $this->addModification($modification);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds a batch modification to the model.
+     *
+     * @param array|BatchModification $mod
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function addModification($mod = [])
+    {
+        if ($mod instanceof BatchModification) {
+            $mod = $mod->get();
+        }
+
+        if ($this->isValidModification($mod)) {
+            $this->modifications[] = $mod;
+
+            return $this;
+        }
+
+        throw new InvalidArgumentException(
+            "The batch modification array does not include the mandatory 'attrib' or 'modtype' keys."
+        );
+    }
+
+    /**
+     * Get the model's guid attribute key name.
+     *
+     * @return string
+     */
+    public function getGuidKey()
+    {
+        return $this->guidKey;
+    }
+
+    /**
+     * Get the model's ANR attributes for querying when incompatible with ANR.
+     *
+     * @return array
+     */
+    public function getAnrAttributes()
+    {
+        return ['cn', 'sn', 'uid', 'name', 'mail', 'givenname', 'displayname'];
+    }
+
+    /**
+     * Get the name of the model, or the given DN.
+     *
+     * @param string|null $dn
+     *
+     * @return string|null
+     */
+    public function getName($dn = null)
+    {
+        return $this->newDn($dn ?? $this->dn)->name();
+    }
+
+    /**
+     * Get the head attribute of the model, or the given DN.
+     *
+     * @param string|null $dn
+     *
+     * @return string|null
+     */
+    public function getHead($dn = null)
+    {
+        return $this->newDn($dn ?? $this->dn)->head();
+    }
+
+    /**
+     * Get the RDN of the model, of the given DN.
+     *
+     * @param string|null
+     *
+     * @return string|null
+     */
+    public function getRdn($dn = null)
+    {
+        return $this->newDn($dn ?? $this->dn)->relative();
+    }
+
+    /**
+     * Get the parent distinguished name of the model, or the given DN.
+     *
+     * @param string|null
+     *
+     * @return string|null
+     */
+    public function getParentDn($dn = null)
+    {
+        return $this->newDn($dn ?? $this->dn)->parent();
+    }
+
+    /**
+     * Create a new Distinguished Name object.
+     *
+     * @param string|null $dn
+     *
+     * @return DistinguishedName
+     */
+    public function newDn($dn = null)
+    {
+        return new DistinguishedName($dn);
+    }
+
+    /**
+     * Get the model's object GUID key.
+     *
+     * @return void
+     */
+    public function getObjectGuidKey()
+    {
+        return $this->guidKey;
+    }
+
+    /**
+     * Get the model's binary object GUID.
+     *
+     * @see https://msdn.microsoft.com/en-us/library/ms679021(v=vs.85).aspx
+     *
+     * @return string|null
+     */
+    public function getObjectGuid()
+    {
+        return $this->getFirstAttribute($this->guidKey);
+    }
+
+    /**
+     * Get the model's object classes.
+     *
+     * @return array
+     */
+    public function getObjectClasses()
+    {
+        return $this->getAttribute('objectclass') ?: [];
+    }
+
+    /**
+     * Get the model's string GUID.
+     *
+     * @return string|null
+     */
+    public function getConvertedGuid()
+    {
+        try {
+            return (string) new Guid($this->getObjectGuid());
+        } catch (InvalidArgumentException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Determine if the current model is a direct descendant of the given.
+     *
+     * @param static|string $parent
+     *
+     * @return bool
+     */
+    public function isChildOf($parent)
+    {
+        return $this->newDn($this->getDn())->isChildOf(
+            $this->newDn((string) $parent)
+        );
+    }
+
+    /**
+     * Determine if the current model is a direct ascendant of the given.
+     *
+     * @param static|string $child
+     *
+     * @return bool
+     */
+    public function isParentOf($child)
+    {
+        return $this->newDn($this->getDn())->isParentOf(
+            $this->newDn((string) $child)
+        );
+    }
+
+    /**
+     * Determine if the current model is a descendant of the given.
+     *
+     * @param static|string $model
+     *
+     * @return bool
+     */
+    public function isDescendantOf($model)
+    {
+        return $this->dnIsInside($this->getDn(), $model);
+    }
+
+    /**
+     * Determine if the current model is a ancestor of the given.
+     *
+     * @param static|string $model
+     *
+     * @return bool
+     */
+    public function isAncestorOf($model)
+    {
+        return $this->dnIsInside($model, $this->getDn());
+    }
+
+    /**
+     * Determines if the DN is inside of the parent DN.
+     *
+     * @param static|string $dn
+     * @param static|string $parentDn
+     *
+     * @return bool
+     */
+    protected function dnIsInside($dn, $parentDn)
+    {
+        return $this->newDn((string) $dn)->isDescendantOf(
+            $this->newDn($parentDn)
+        );
+    }
+
+    /**
+     * Set the base DN of where the model should be created in.
+     *
+     * @param static|string $dn
+     *
+     * @return $this
+     */
+    public function inside($dn)
+    {
+        $this->in = $dn instanceof self ? $dn->getDn() : $dn;
+
+        return $this;
+    }
+
+    /**
+     * Save the model to the directory.
+     *
+     * @param array $attributes The attributes to update or create for the current entry.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function save(array $attributes = [])
+    {
+        $this->fill($attributes);
+
+        $this->fireModelEvent(new Events\Saving($this));
+
+        $this->exists ? $this->performUpdate() : $this->performInsert();
+
+        $this->fireModelEvent(new Events\Saved($this));
+
+        $this->in = null;
+    }
+
+    /**
+     * Inserts the model into the directory.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    protected function performInsert()
+    {
+        // Here we will populate the models object classes if it
+        // does not already have any set. An LDAP object cannot
+        // be successfully created in the server without them.
+        if (! $this->hasAttribute('objectclass')) {
+            $this->setAttribute('objectclass', static::$objectClasses);
+        }
+
+        $query = $this->newQuery();
+
+        // If the model does not currently have a distinguished
+        // name, we will attempt to generate one automatically
+        // using the current query builder's DN as the base.
+        if (empty($this->getDn())) {
+            $this->setDn($this->getCreatableDn());
+        }
+
+        $this->fireModelEvent(new Events\Creating($this));
+
+        // Here we perform the insert of new object in the directory,
+        // but filter out any empty attributes before sending them
+        // to the server. LDAP servers will throw an exception if
+        // attributes have been given empty or null values.
+        $query->insert($this->getDn(), array_filter($this->getAttributes()));
+
+        $this->fireModelEvent(new Events\Created($this));
+
+        $this->syncOriginal();
+
+        $this->exists = true;
+
+        $this->wasRecentlyCreated = true;
+    }
+
+    /**
+     * Updates the model in the directory.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    protected function performUpdate()
+    {
+        if (! count($modifications = $this->getModifications())) {
+            return;
+        }
+
+        $this->fireModelEvent(new Events\Updating($this));
+
+        $this->newQuery()->update($this->dn, $modifications);
+
+        $this->fireModelEvent(new Events\Updated($this));
+
+        $this->syncOriginal();
+
+        $this->modifications = [];
+    }
+
+    /**
+     * Create the model in the directory.
+     *
+     * @param array $attributes The attributes for the new entry.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return Model
+     */
+    public static function create(array $attributes = [])
+    {
+        $instance = new static($attributes);
+
+        $instance->save();
+
+        return $instance;
+    }
+
+    /**
+     * Create an attribute on the model.
+     *
+     * @param string $attribute The attribute to create
+     * @param mixed  $value     The value of the new attribute
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function createAttribute($attribute, $value)
+    {
+        $this->validateExistence();
+
+        $this->newQuery()->insertAttributes($this->dn, [$attribute => (array) $value]);
+
+        $this->addAttributeValue($attribute, $value);
+    }
+
+    /**
+     * Update the model.
+     *
+     * @param array $attributes The attributes to update for the current entry.
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function update(array $attributes = [])
+    {
+        $this->validateExistence();
+
+        $this->save($attributes);
+    }
+
+    /**
+     * Update the model attribute with the specified value.
+     *
+     * @param string $attribute The attribute to modify
+     * @param mixed  $value     The new value for the attribute
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function updateAttribute($attribute, $value)
+    {
+        $this->validateExistence();
+
+        $this->newQuery()->updateAttributes($this->dn, [$attribute => (array) $value]);
+
+        $this->addAttributeValue($attribute, $value);
+    }
+
+    /**
+     * Destroy the models for the given distinguished names.
+     *
+     * @param Collection|array|string $dns
+     * @param bool                    $recursive
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return int
+     */
+    public static function destroy($dns, $recursive = false)
+    {
+        $count = 0;
+
+        $dns = is_string($dns) ? (array) $dns : $dns;
+
+        $instance = new static();
+
+        foreach ($dns as $dn) {
+            if (! $model = $instance->find($dn)) {
+                continue;
+            }
+
+            $model->delete($recursive);
+
+            $count++;
+        }
+
+        return $count;
+    }
+
+    /**
+     * Delete the model from the directory.
+     *
+     * Throws a ModelNotFoundException if the current model does
+     * not exist or does not contain a distinguished name.
+     *
+     * @param bool $recursive Whether to recursively delete leaf nodes (models that are children).
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function delete($recursive = false)
+    {
+        $this->validateExistence();
+
+        $this->fireModelEvent(new Events\Deleting($this));
+
+        if ($recursive) {
+            $this->deleteLeafNodes();
+        }
+
+        $this->newQuery()->delete($this->dn);
+
+        // If the deletion is successful, we will mark the model
+        // as non-existing, and then fire the deleted event so
+        // developers can hook in and run further operations.
+        $this->exists = false;
+
+        $this->fireModelEvent(new Events\Deleted($this));
+    }
+
+    /**
+     * Deletes leaf nodes that are attached to the model.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return Collection
+     */
+    protected function deleteLeafNodes()
+    {
+        return $this->newQueryWithoutScopes()
+            ->in($this->dn)
+            ->listing()
+            ->paginate()
+            ->each(function (self $model) {
+                $model->delete($recursive = true);
+            });
+    }
+
+    /**
+     * Delete an attribute on the model.
+     *
+     * @param string|array $attributes The attribute(s) to delete
+     *
+     * Delete specific values in attributes:
+     *
+     *     ["memberuid" => "jdoe"]
+     *
+     * Delete an entire attribute:
+     *
+     *     ["memberuid" => []]
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function deleteAttribute($attributes)
+    {
+        $this->validateExistence();
+
+        $attributes = $this->makeDeletableAttributes($attributes);
+
+        $this->newQuery()->deleteAttributes($this->dn, $attributes);
+
+        foreach ($attributes as $attribute => $value) {
+            // If the attribute value is empty, we can assume the
+            // attribute was completely deleted from the model.
+            // We will pull the attribute out and continue on.
+            if (empty($value)) {
+                unset($this->attributes[$attribute]);
+            }
+            // Otherwise, only specific attribute values have been
+            // removed. We will determine which ones have been
+            // removed and update the attributes value.
+            elseif (Arr::exists($this->attributes, $attribute)) {
+                $this->attributes[$attribute] = array_values(
+                    array_diff($this->attributes[$attribute], (array) $value)
+                );
+            }
+        }
+
+        $this->syncOriginal();
+    }
+
+    /**
+     * Make a deletable attribute array.
+     *
+     * @param string|array $attributes
+     *
+     * @return array
+     */
+    protected function makeDeletableAttributes($attributes)
+    {
+        $delete = [];
+
+        foreach (Arr::wrap($attributes) as $key => $value) {
+            is_int($key)
+                ? $delete[$value] = []
+                : $delete[$key] = Arr::wrap($value);
+        }
+
+        return $delete;
+    }
+
+    /**
+     * Move the model into the given new parent.
+     *
+     * For example: $user->move($ou);
+     *
+     * @param static|string $newParentDn  The new parent of the current model.
+     * @param bool          $deleteOldRdn Whether to delete the old models relative distinguished name once renamed / moved.
+     *
+     * @throws UnexpectedValueException
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function move($newParentDn, $deleteOldRdn = true)
+    {
+        $this->validateExistence();
+
+        if (! $rdn = $this->getRdn()) {
+            throw new UnexpectedValueException('Current model does not contain an RDN to move.');
+        }
+
+        $this->rename($rdn, $newParentDn, $deleteOldRdn);
+    }
+
+    /**
+     * Rename the model to a new RDN and new parent.
+     *
+     * @param string             $rdn          The models new relative distinguished name. Example: "cn=JohnDoe"
+     * @param static|string|null $newParentDn  The models new parent distinguished name (if moving). Leave this null if you are only renaming. Example: "ou=MovedUsers,dc=acme,dc=org"
+     * @param bool|true          $deleteOldRdn Whether to delete the old models relative distinguished name once renamed / moved.
+     *
+     * @throws ModelDoesNotExistException
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function rename($rdn, $newParentDn = null, $deleteOldRdn = true)
+    {
+        $this->validateExistence();
+
+        if ($newParentDn instanceof self) {
+            $newParentDn = $newParentDn->getDn();
+        }
+
+        if (is_null($newParentDn)) {
+            $newParentDn = $this->getParentDn($this->dn);
+        }
+
+        // If the RDN and the new parent DN are the same as the current,
+        // we will simply return here to prevent a rename operation
+        // being sent, which would fail anyway in such case.
+        if (
+            $rdn === $this->getRdn()
+         && $newParentDn === $this->getParentDn()
+        ) {
+            return;
+        }
+
+        $this->fireModelEvent(new Renaming($this, $rdn, $newParentDn));
+
+        $this->newQuery()->rename($this->dn, $rdn, $newParentDn, $deleteOldRdn);
+
+        // If the model was successfully renamed, we will set
+        // its new DN so any further updates to the model
+        // can be performed without any issues.
+        $this->dn = implode(',', [$rdn, $newParentDn]);
+
+        $map = $this->newDn($this->dn)->assoc();
+
+        // Here we'll populate the models new primary
+        // RDN attribute on the model so we do not
+        // have to re-synchronize with the server.
+        $modelNameAttribute = key($map);
+
+        $this->attributes[$modelNameAttribute]
+            = $this->original[$modelNameAttribute]
+            = [reset($map[$modelNameAttribute])];
+
+        $this->fireModelEvent(new Renamed($this));
+
+        $this->wasRecentlyRenamed = true;
+    }
+
+    /**
+     * Get a distinguished name that is creatable for the model.
+     *
+     * @param string|null $name
+     * @param string|null $attribute
+     *
+     * @return string
+     */
+    public function getCreatableDn($name = null, $attribute = null)
+    {
+        return implode(',', [
+            $this->getCreatableRdn($name, $attribute),
+            $this->in ?? $this->newQuery()->getbaseDn(),
+        ]);
+    }
+
+    /**
+     * Get a creatable (escaped) RDN for the model.
+     *
+     * @param string|null $name
+     * @param string|null $attribute
+     *
+     * @return string
+     */
+    public function getCreatableRdn($name = null, $attribute = null)
+    {
+        $attribute = $attribute ?? $this->getCreatableRdnAttribute();
+
+        $name = $this->escape(
+            $name ?? $this->getFirstAttribute($attribute)
+        )->dn();
+
+        return "$attribute=$name";
+    }
+
+    /**
+     * Get the creatable RDN attribute name.
+     *
+     * @return string
+     */
+    protected function getCreatableRdnAttribute()
+    {
+        return 'cn';
+    }
+
+    /**
+     * Determines if the given modification is valid.
+     *
+     * @param mixed $mod
+     *
+     * @return bool
+     */
+    protected function isValidModification($mod)
+    {
+        return Arr::accessible($mod)
+            && Arr::exists($mod, BatchModification::KEY_MODTYPE)
+            && Arr::exists($mod, BatchModification::KEY_ATTRIB);
+    }
+
+    /**
+     * Builds the models modifications from its dirty attributes.
+     *
+     * @return BatchModification[]
+     */
+    protected function buildModificationsFromDirty()
+    {
+        $modifications = [];
+
+        foreach ($this->getDirty() as $attribute => $values) {
+            $modification = $this->newBatchModification($attribute, null, (array) $values);
+
+            if (Arr::exists($this->original, $attribute)) {
+                // If the attribute we're modifying has an original value, we will
+                // give the BatchModification object its values to automatically
+                // determine which type of LDAP operation we need to perform.
+                $modification->setOriginal($this->original[$attribute]);
+            }
+
+            if (! $modification->build()->isValid()) {
+                continue;
+            }
+
+            $modifications[] = $modification;
+        }
+
+        return $modifications;
+    }
+
+    /**
+     * Validates that the current model exists.
+     *
+     * @throws ModelDoesNotExistException
+     *
+     * @return void
+     */
+    protected function validateExistence()
+    {
+        if (! $this->exists || is_null($this->dn)) {
+            throw ModelDoesNotExistException::forModel($this);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelDoesNotExistException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelDoesNotExistException.php
new file mode 100644
index 0000000..2dd2ba9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelDoesNotExistException.php
@@ -0,0 +1,45 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use LdapRecord\LdapRecordException;
+
+class ModelDoesNotExistException extends LdapRecordException
+{
+    /**
+     * The class name of the model that does not exist.
+     *
+     * @var Model
+     */
+    protected $model;
+
+    /**
+     * Create a new exception for the given model.
+     *
+     * @param Model $model
+     *
+     * @return ModelDoesNotExistException
+     */
+    public static function forModel(Model $model)
+    {
+        return (new static())->setModel($model);
+    }
+
+    /**
+     * Set the model that does not exist.
+     *
+     * @param Model $model
+     *
+     * @return ModelDoesNotExistException
+     */
+    public function setModel(Model $model)
+    {
+        $this->model = $model;
+
+        $class = get_class($model);
+
+        $this->message = "Model [{$class}] does not exist.";
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelNotFoundException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelNotFoundException.php
new file mode 100644
index 0000000..be88bab
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/ModelNotFoundException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use LdapRecord\Query\ObjectNotFoundException;
+
+class ModelNotFoundException extends ObjectNotFoundException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Entry.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Entry.php
new file mode 100644
index 0000000..b7ad37a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Entry.php
@@ -0,0 +1,45 @@
+<?php
+
+namespace LdapRecord\Models\OpenLDAP;
+
+use LdapRecord\Connection;
+use LdapRecord\Models\Entry as BaseEntry;
+use LdapRecord\Models\OpenLDAP\Scopes\AddEntryUuidToSelects;
+use LdapRecord\Models\Types\OpenLDAP;
+use LdapRecord\Query\Model\OpenLdapBuilder;
+
+/** @mixin OpenLdapBuilder */
+class Entry extends BaseEntry implements OpenLDAP
+{
+    /**
+     * The attribute key that contains the models object GUID.
+     *
+     * @var string
+     */
+    protected $guidKey = 'entryuuid';
+
+    /**
+     * @inheritdoc
+     */
+    protected static function boot()
+    {
+        parent::boot();
+
+        // Here we'll add a global scope to all OpenLDAP models to ensure the
+        // Entry UUID is always selected on each query. This attribute is
+        // virtual, so it must be manually selected to be included.
+        static::addGlobalScope(new AddEntryUuidToSelects());
+    }
+
+    /**
+     * Create a new query builder.
+     *
+     * @param Connection $connection
+     *
+     * @return OpenLdapBuilder
+     */
+    public function newQueryBuilder(Connection $connection)
+    {
+        return new OpenLdapBuilder($connection);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Group.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Group.php
new file mode 100644
index 0000000..2d8d94e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Group.php
@@ -0,0 +1,16 @@
+<?php
+
+namespace LdapRecord\Models\OpenLDAP;
+
+class Group extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'groupofuniquenames',
+    ];
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/OrganizationalUnit.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/OrganizationalUnit.php
new file mode 100644
index 0000000..7ae0a37
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/OrganizationalUnit.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace LdapRecord\Models\OpenLDAP;
+
+class OrganizationalUnit extends Entry
+{
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'organizationalunit',
+    ];
+
+    /**
+     * Get the creatable RDN attribute name.
+     *
+     * @return string
+     */
+    public function getCreatableRdnAttribute()
+    {
+        return 'ou';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Scopes/AddEntryUuidToSelects.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Scopes/AddEntryUuidToSelects.php
new file mode 100644
index 0000000..54376c2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/Scopes/AddEntryUuidToSelects.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace LdapRecord\Models\OpenLDAP\Scopes;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Models\Scope;
+use LdapRecord\Query\Model\Builder;
+
+class AddEntryUuidToSelects implements Scope
+{
+    /**
+     * Add the entry UUID to the selected attributes.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model)
+    {
+        empty($query->columns)
+            ? $query->addSelect(['*', $model->getGuidKey()])
+            : $query->addSelect($model->getGuidKey());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/User.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/User.php
new file mode 100644
index 0000000..b37f390
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/OpenLDAP/User.php
@@ -0,0 +1,51 @@
+<?php
+
+namespace LdapRecord\Models\OpenLDAP;
+
+use Illuminate\Contracts\Auth\Authenticatable;
+use LdapRecord\Models\Concerns\CanAuthenticate;
+use LdapRecord\Models\Concerns\HasPassword;
+
+class User extends Entry implements Authenticatable
+{
+    use HasPassword;
+    use CanAuthenticate;
+
+    /**
+     * The password's attribute name.
+     *
+     * @var string
+     */
+    protected $passwordAttribute = 'userpassword';
+
+    /**
+     * The password's hash method.
+     *
+     * @var string
+     */
+    protected $passwordHashMethod = 'ssha';
+
+    /**
+     * The object classes of the LDAP model.
+     *
+     * @var array
+     */
+    public static $objectClasses = [
+        'top',
+        'person',
+        'organizationalperson',
+        'inetorgperson',
+    ];
+
+    /**
+     * The groups relationship.
+     *
+     * Retrieves groups that the user is apart of.
+     *
+     * @return \LdapRecord\Models\Relations\HasMany
+     */
+    public function groups()
+    {
+        return $this->hasMany(Group::class, 'memberuid', 'uid');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasMany.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasMany.php
new file mode 100644
index 0000000..d8dfa08
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasMany.php
@@ -0,0 +1,344 @@
+<?php
+
+namespace LdapRecord\Models\Relations;
+
+use Closure;
+use LdapRecord\DetectsErrors;
+use LdapRecord\LdapRecordException;
+use LdapRecord\Models\Model;
+use LdapRecord\Models\ModelNotFoundException;
+use LdapRecord\Query\Collection;
+
+class HasMany extends OneToMany
+{
+    use DetectsErrors;
+
+    /**
+     * The model to use for attaching / detaching.
+     *
+     * @var Model
+     */
+    protected $using;
+
+    /**
+     * The attribute key to use for attaching / detaching.
+     *
+     * @var string
+     */
+    protected $usingKey;
+
+    /**
+     * The pagination page size.
+     *
+     * @var int
+     */
+    protected $pageSize = 1000;
+
+    /**
+     * The exceptions to bypass for each relation operation.
+     *
+     * @var array
+     */
+    protected $bypass = [
+        'attach' => [
+            'Already exists', 'Type or value exists',
+        ],
+        'detach' => [
+            'No such attribute', 'Server is unwilling to perform',
+        ],
+    ];
+
+    /**
+     * Set the model and attribute to use for attaching / detaching.
+     *
+     * @param Model  $using
+     * @param string $usingKey
+     *
+     * @return $this
+     */
+    public function using(Model $using, $usingKey)
+    {
+        $this->using = $using;
+        $this->usingKey = $usingKey;
+
+        return $this;
+    }
+
+    /**
+     * Set the pagination page size of the relation query.
+     *
+     * @param int $pageSize
+     *
+     * @return $this
+     */
+    public function setPageSize($pageSize)
+    {
+        $this->pageSize = $pageSize;
+
+        return $this;
+    }
+
+    /**
+     * Paginate the relation using the given page size.
+     *
+     * @param int $pageSize
+     *
+     * @return Collection
+     */
+    public function paginate($pageSize = 1000)
+    {
+        return $this->paginateOnceUsing($pageSize);
+    }
+
+    /**
+     * Paginate the relation using the page size once.
+     *
+     * @param int $pageSize
+     *
+     * @return Collection
+     */
+    protected function paginateOnceUsing($pageSize)
+    {
+        $size = $this->pageSize;
+
+        $result = $this->setPageSize($pageSize)->get();
+
+        $this->pageSize = $size;
+
+        return $result;
+    }
+
+    /**
+     * Chunk the relation results using the given callback.
+     *
+     * @param int     $pageSize
+     * @param Closure $callback
+     *
+     * @return void
+     */
+    public function chunk($pageSize, Closure $callback)
+    {
+        $this->getRelationQuery()->chunk($pageSize, function ($entries) use ($callback) {
+            $callback($this->transformResults($entries));
+        });
+    }
+
+    /**
+     * Get the relationships results.
+     *
+     * @return Collection
+     */
+    public function getRelationResults()
+    {
+        return $this->transformResults(
+            $this->getRelationQuery()->paginate($this->pageSize)
+        );
+    }
+
+    /**
+     * Get the prepared relationship query.
+     *
+     * @return \LdapRecord\Query\Model\Builder
+     */
+    public function getRelationQuery()
+    {
+        $columns = $this->query->getSelects();
+
+        // We need to select the proper key to be able to retrieve its
+        // value from LDAP results. If we don't, we won't be able
+        // to properly attach / detach models from relation
+        // query results as the attribute will not exist.
+        $key = $this->using ? $this->usingKey : $this->relationKey;
+
+        // If the * character is missing from the attributes to select,
+        // we will add the key to the attributes to select and also
+        // validate that the key isn't already being selected
+        // to prevent stacking on multiple relation calls.
+        if (! in_array('*', $columns) && ! in_array($key, $columns)) {
+            $this->query->addSelect($key);
+        }
+
+        return $this->query->whereRaw(
+            $this->relationKey,
+            '=',
+            $this->getEscapedForeignValueFromModel($this->parent)
+        );
+    }
+
+    /**
+     * Attach a model to the relation.
+     *
+     * @param Model|string $model
+     *
+     * @return Model|string|false
+     */
+    public function attach($model)
+    {
+        return $this->attemptFailableOperation(
+            $this->buildAttachCallback($model),
+            $this->bypass['attach'],
+            $model
+        );
+    }
+
+    /**
+     * Build the attach callback.
+     *
+     * @param Model|string $model
+     *
+     * @return \Closure
+     */
+    protected function buildAttachCallback($model)
+    {
+        return function () use ($model) {
+            $foreign = $this->getAttachableForeignValue($model);
+
+            if ($this->using) {
+                return $this->using->createAttribute($this->usingKey, $foreign);
+            }
+
+            if (! $model instanceof Model) {
+                $model = $this->getForeignModelByValueOrFail($model);
+            }
+
+            return $model->createAttribute($this->relationKey, $foreign);
+        };
+    }
+
+    /**
+     * Attach a collection of models to the parent instance.
+     *
+     * @param iterable $models
+     *
+     * @return iterable
+     */
+    public function attachMany($models)
+    {
+        foreach ($models as $model) {
+            $this->attach($model);
+        }
+
+        return $models;
+    }
+
+    /**
+     * Detach the model from the relation.
+     *
+     * @param Model|string $model
+     *
+     * @return Model|string|false
+     */
+    public function detach($model)
+    {
+        return $this->attemptFailableOperation(
+            $this->buildDetachCallback($model),
+            $this->bypass['detach'],
+            $model
+        );
+    }
+
+    /**
+     * Build the detach callback.
+     *
+     * @param Model|string $model
+     *
+     * @return \Closure
+     */
+    protected function buildDetachCallback($model)
+    {
+        return function () use ($model) {
+            $foreign = $this->getAttachableForeignValue($model);
+
+            if ($this->using) {
+                return $this->using->deleteAttribute([$this->usingKey => $foreign]);
+            }
+
+            if (! $model instanceof Model) {
+                $model = $this->getForeignModelByValueOrFail($model);
+            }
+
+            return $model->deleteAttribute([$this->relationKey => $foreign]);
+        };
+    }
+
+    /**
+     * Get the attachable foreign value from the model.
+     *
+     * @param Model|string $model
+     *
+     * @return string
+     */
+    protected function getAttachableForeignValue($model)
+    {
+        if ($model instanceof Model) {
+            return $this->using
+                ? $this->getForeignValueFromModel($model)
+                : $this->getParentForeignValue();
+        }
+
+        return $this->using ? $model : $this->getParentForeignValue();
+    }
+
+    /**
+     * Get the foreign model by the given value, or fail.
+     *
+     * @param string $model
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model
+     */
+    protected function getForeignModelByValueOrFail($model)
+    {
+        if (! is_null($model = $this->getForeignModelByValue($model))) {
+            return $model;
+        }
+
+        throw ModelNotFoundException::forQuery(
+            $this->query->getUnescapedQuery(),
+            $this->query->getDn()
+        );
+    }
+
+    /**
+     * Attempt a failable operation and return the value if successful.
+     *
+     * If a bypassable exception is encountered, the value will be returned.
+     *
+     * @param callable     $operation
+     * @param string|array $bypass
+     * @param mixed        $value
+     *
+     * @throws LdapRecordException
+     *
+     * @return mixed
+     */
+    protected function attemptFailableOperation($operation, $bypass, $value)
+    {
+        try {
+            $operation();
+
+            return $value;
+        } catch (LdapRecordException $e) {
+            if ($this->errorContainsMessage($e->getMessage(), $bypass)) {
+                return $value;
+            }
+
+            throw $e;
+        }
+    }
+
+    /**
+     * Detach all relation models.
+     *
+     * @return Collection
+     */
+    public function detachAll()
+    {
+        return $this->onceWithoutMerging(function () {
+            return $this->get()->each(function (Model $model) {
+                $this->detach($model);
+            });
+        });
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasManyIn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasManyIn.php
new file mode 100644
index 0000000..303a144
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasManyIn.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace LdapRecord\Models\Relations;
+
+use LdapRecord\Query\Collection;
+
+class HasManyIn extends OneToMany
+{
+    /**
+     * Get the relationships results.
+     *
+     * @return Collection
+     */
+    public function getRelationResults()
+    {
+        $results = $this->parent->newCollection();
+
+        foreach ((array) $this->parent->getAttribute($this->relationKey) as $value) {
+            if ($foreign = $this->getForeignModelByValue($value)) {
+                $results->push($foreign);
+            }
+        }
+
+        return $this->transformResults($results);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasOne.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasOne.php
new file mode 100644
index 0000000..9a9b2f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/HasOne.php
@@ -0,0 +1,56 @@
+<?php
+
+namespace LdapRecord\Models\Relations;
+
+use LdapRecord\Models\Model;
+
+class HasOne extends Relation
+{
+    /**
+     * Get the results of the relationship.
+     *
+     * @return \LdapRecord\Query\Collection
+     */
+    public function getResults()
+    {
+        $model = $this->getForeignModelByValue(
+            $this->getFirstAttributeValue($this->parent, $this->relationKey)
+        );
+
+        return $this->transformResults(
+            $this->parent->newCollection($model ? [$model] : null)
+        );
+    }
+
+    /**
+     * Attach a model instance to the parent model.
+     *
+     * @param Model|string $model
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return Model|string
+     */
+    public function attach($model)
+    {
+        $foreign = $model instanceof Model
+            ? $this->getForeignValueFromModel($model)
+            : $model;
+
+        $this->parent->setAttribute($this->relationKey, $foreign)->save();
+
+        return $model;
+    }
+
+    /**
+     * Detach the related model from the parent.
+     *
+     * @throws \LdapRecord\LdapRecordException
+     *
+     * @return void
+     */
+    public function detach()
+    {
+        $this->parent->setAttribute($this->relationKey, null)->save();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/OneToMany.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/OneToMany.php
new file mode 100644
index 0000000..d0a407c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/OneToMany.php
@@ -0,0 +1,186 @@
+<?php
+
+namespace LdapRecord\Models\Relations;
+
+use LdapRecord\Models\Model;
+use LdapRecord\Query\Collection;
+use LdapRecord\Query\Model\Builder;
+
+abstract class OneToMany extends Relation
+{
+    /**
+     * The relation to merge results with.
+     *
+     * @var OneToMany|null
+     */
+    protected $with;
+
+    /**
+     * The name of the relationship.
+     *
+     * @var string
+     */
+    protected $relationName;
+
+    /**
+     * Whether to include recursive results.
+     *
+     * @var bool
+     */
+    protected $recursive = false;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder $query
+     * @param Model   $parent
+     * @param string  $related
+     * @param string  $relationKey
+     * @param string  $foreignKey
+     * @param string  $relationName
+     */
+    public function __construct(Builder $query, Model $parent, $related, $relationKey, $foreignKey, $relationName)
+    {
+        $this->relationName = $relationName;
+
+        parent::__construct($query, $parent, $related, $relationKey, $foreignKey);
+    }
+
+    /**
+     * Set the relation to load with its parent.
+     *
+     * @param OneToMany $relation
+     *
+     * @return $this
+     */
+    public function with(Relation $relation)
+    {
+        $this->with = $relation;
+
+        return $this;
+    }
+
+    /**
+     * Whether to include recursive results.
+     *
+     * @param bool $enable
+     *
+     * @return $this
+     */
+    public function recursive($enable = true)
+    {
+        $this->recursive = $enable;
+
+        return $this;
+    }
+
+    /**
+     * Get the immediate relationships results.
+     *
+     * @return Collection
+     */
+    abstract public function getRelationResults();
+
+    /**
+     * Get the results of the relationship.
+     *
+     * @return Collection
+     */
+    public function getResults()
+    {
+        $results = $this->recursive
+            ? $this->getRecursiveResults()
+            : $this->getRelationResults();
+
+        return $results->merge(
+            $this->getMergingRelationResults()
+        );
+    }
+
+    /**
+     * Execute the callback excluding the merged query result.
+     *
+     * @param callable $callback
+     *
+     * @return mixed
+     */
+    protected function onceWithoutMerging($callback)
+    {
+        $merging = $this->with;
+
+        $this->with = null;
+
+        $result = $callback();
+
+        $this->with = $merging;
+
+        return $result;
+    }
+
+    /**
+     * Get the relation name.
+     *
+     * @return string
+     */
+    public function getRelationName()
+    {
+        return $this->relationName;
+    }
+
+    /**
+     * Get the results of the merging 'with' relation.
+     *
+     * @return Collection
+     */
+    protected function getMergingRelationResults()
+    {
+        return $this->with
+            ? $this->with->recursive($this->recursive)->get()
+            : $this->parent->newCollection();
+    }
+
+    /**
+     * Get the results for the models relation recursively.
+     *
+     * @param string[] $loaded The distinguished names of models already loaded
+     *
+     * @return Collection
+     */
+    protected function getRecursiveResults(array $loaded = [])
+    {
+        $results = $this->getRelationResults()->reject(function (Model $model) use ($loaded) {
+            // Here we will exclude the models that we have already
+            // loaded the recursive results for so we don't run
+            // into issues with circular relations in LDAP.
+            return in_array($model->getDn(), $loaded);
+        });
+
+        foreach ($results as $model) {
+            $loaded[] = $model->getDn();
+
+            // Finally, we will fetch the related models relations,
+            // passing along our loaded models, to ensure we do
+            // not attempt fetching already loaded relations.
+            $results = $results->merge(
+                $this->getRecursiveRelationResults($model, $loaded)
+            );
+        }
+
+        return $results;
+    }
+
+    /**
+     * Get the recursive relation results for given model.
+     *
+     * @param Model $model
+     * @param array $loaded
+     *
+     * @return Collection
+     */
+    protected function getRecursiveRelationResults(Model $model, array $loaded)
+    {
+        return method_exists($model, $this->relationName)
+            ? $model->{$this->relationName}()->getRecursiveResults($loaded)
+            : $model->newCollection();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/Relation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/Relation.php
new file mode 100644
index 0000000..1b108fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Relations/Relation.php
@@ -0,0 +1,368 @@
+<?php
+
+namespace LdapRecord\Models\Relations;
+
+use LdapRecord\Models\Entry;
+use LdapRecord\Models\Model;
+use LdapRecord\Query\Collection;
+use LdapRecord\Query\Model\Builder;
+
+/**
+ * @method bool exists($models = null) Determine if the relation contains all of the given models, or any models
+ * @method bool contains($models)      Determine if any of the given models are contained in the relation
+ */
+abstract class Relation
+{
+    /**
+     * The underlying LDAP query.
+     *
+     * @var Builder
+     */
+    protected $query;
+
+    /**
+     * The parent model instance.
+     *
+     * @var Model
+     */
+    protected $parent;
+
+    /**
+     * The related models.
+     *
+     * @var array
+     */
+    protected $related;
+
+    /**
+     * The relation key.
+     *
+     * @var string
+     */
+    protected $relationKey;
+
+    /**
+     * The foreign key.
+     *
+     * @var string
+     */
+    protected $foreignKey;
+
+    /**
+     * The default relation model.
+     *
+     * @var string
+     */
+    protected $default = Entry::class;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder $query
+     * @param Model   $parent
+     * @param mixed   $related
+     * @param string  $relationKey
+     * @param string  $foreignKey
+     */
+    public function __construct(Builder $query, Model $parent, $related, $relationKey, $foreignKey)
+    {
+        $this->query = $query;
+        $this->parent = $parent;
+        $this->related = (array) $related;
+        $this->relationKey = $relationKey;
+        $this->foreignKey = $foreignKey;
+
+        $this->initRelation();
+    }
+
+    /**
+     * Handle dynamic method calls to the relationship.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        if (in_array($method, ['exists', 'contains'])) {
+            return $this->get('objectclass')->$method(...$parameters);
+        }
+
+        $result = $this->query->$method(...$parameters);
+
+        if ($result === $this->query) {
+            return $this;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Get the results of the relationship.
+     *
+     * @return Collection
+     */
+    abstract public function getResults();
+
+    /**
+     * Execute the relationship query.
+     *
+     * @param array|string $columns
+     *
+     * @return Collection
+     */
+    public function get($columns = ['*'])
+    {
+        return $this->getResultsWithColumns($columns);
+    }
+
+    /**
+     * Get the results of the relationship while selecting the given columns.
+     *
+     * If the query columns are empty, the given columns are applied.
+     *
+     * @param array $columns
+     *
+     * @return Collection
+     */
+    protected function getResultsWithColumns($columns)
+    {
+        if (is_null($this->query->columns)) {
+            $this->query->select($columns);
+        }
+
+        return $this->getResults();
+    }
+
+    /**
+     * Get the first result of the relationship.
+     *
+     * @param array|string $columns
+     *
+     * @return Model|null
+     */
+    public function first($columns = ['*'])
+    {
+        return $this->get($columns)->first();
+    }
+
+    /**
+     * Prepare the relation query.
+     *
+     * @return static
+     */
+    public function initRelation()
+    {
+        $this->query
+            ->clearFilters()
+            ->withoutGlobalScopes()
+            ->setModel($this->getNewDefaultModel());
+
+        return $this;
+    }
+
+    /**
+     * Get the underlying query for the relation.
+     *
+     * @return Builder
+     */
+    public function getQuery()
+    {
+        return $this->query;
+    }
+
+    /**
+     * Get the parent model of the relation.
+     *
+     * @return Model
+     */
+    public function getParent()
+    {
+        return $this->parent;
+    }
+
+    /**
+     * Get the relation attribute key.
+     *
+     * @return string
+     */
+    public function getRelationKey()
+    {
+        return $this->relationKey;
+    }
+
+    /**
+     * Get the related model classes for the relation.
+     *
+     * @return array
+     */
+    public function getRelated()
+    {
+        return $this->related;
+    }
+
+    /**
+     * Get the relation foreign attribute key.
+     *
+     * @return string
+     */
+    public function getForeignKey()
+    {
+        return $this->foreignKey;
+    }
+
+    /**
+     * Get the class name of the default model.
+     *
+     * @return string
+     */
+    public function getDefaultModel()
+    {
+        return $this->default;
+    }
+
+    /**
+     * Get a new instance of the default model on the relation.
+     *
+     * @return Model
+     */
+    public function getNewDefaultModel()
+    {
+        $model = new $this->default();
+
+        $model->setConnection($this->parent->getConnectionName());
+
+        return $model;
+    }
+
+    /**
+     * Get the foreign model by the given value.
+     *
+     * @param string $value
+     *
+     * @return Model|null
+     */
+    protected function getForeignModelByValue($value)
+    {
+        return $this->foreignKeyIsDistinguishedName()
+            ? $this->query->find($value)
+            : $this->query->findBy($this->foreignKey, $value);
+    }
+
+    /**
+     * Returns the escaped foreign key value for use in an LDAP filter from the model.
+     *
+     * @param Model $model
+     *
+     * @return string
+     */
+    protected function getEscapedForeignValueFromModel(Model $model)
+    {
+        return $this->query->escape(
+            $this->getForeignValueFromModel($model)
+        )->both();
+    }
+
+    /**
+     * Get the relation parents foreign value.
+     *
+     * @return string
+     */
+    protected function getParentForeignValue()
+    {
+        return $this->getForeignValueFromModel($this->parent);
+    }
+
+    /**
+     * Get the foreign key value from the model.
+     *
+     * @param Model $model
+     *
+     * @return string
+     */
+    protected function getForeignValueFromModel(Model $model)
+    {
+        return $this->foreignKeyIsDistinguishedName()
+                ? $model->getDn()
+                : $this->getFirstAttributeValue($model, $this->foreignKey);
+    }
+
+    /**
+     * Get the first attribute value from the model.
+     *
+     * @param Model  $model
+     * @param string $attribute
+     *
+     * @return string|null
+     */
+    protected function getFirstAttributeValue(Model $model, $attribute)
+    {
+        return $model->getFirstAttribute($attribute);
+    }
+
+    /**
+     * Transforms the results by converting the models into their related.
+     *
+     * @param Collection $results
+     *
+     * @return Collection
+     */
+    protected function transformResults(Collection $results)
+    {
+        $related = [];
+
+        foreach ($this->related as $relation) {
+            $related[$relation] = $relation::$objectClasses;
+        }
+
+        return $results->transform(function (Model $entry) use ($related) {
+            $model = $this->determineModelFromRelated($entry, $related);
+
+            return class_exists($model) ? $entry->convert(new $model()) : $entry;
+        });
+    }
+
+    /**
+     * Determines if the foreign key is a distinguished name.
+     *
+     * @return bool
+     */
+    protected function foreignKeyIsDistinguishedName()
+    {
+        return in_array($this->foreignKey, ['dn', 'distinguishedname']);
+    }
+
+    /**
+     * Determines the model from the given relations.
+     *
+     * @param Model $model
+     * @param array $related
+     *
+     * @return string|bool
+     */
+    protected function determineModelFromRelated(Model $model, array $related)
+    {
+        // We must normalize all the related models object class
+        // names to the same case so we are able to properly
+        // determine the owning model from search results.
+        return array_search(
+            $this->normalizeObjectClasses($model->getObjectClasses()),
+            array_map([$this, 'normalizeObjectClasses'], $related)
+        );
+    }
+
+    /**
+     * Sort and normalize the object classes.
+     *
+     * @param array $classes
+     *
+     * @return array
+     */
+    protected function normalizeObjectClasses($classes)
+    {
+        sort($classes);
+
+        return array_map('strtolower', $classes);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Scope.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Scope.php
new file mode 100644
index 0000000..321cae3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Scope.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace LdapRecord\Models;
+
+use LdapRecord\Query\Model\Builder;
+
+interface Scope
+{
+    /**
+     * Apply the scope to the given query.
+     *
+     * @param Builder $query
+     * @param Model   $model
+     *
+     * @return void
+     */
+    public function apply(Builder $query, Model $model);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/ActiveDirectory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/ActiveDirectory.php
new file mode 100644
index 0000000..61d21ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/ActiveDirectory.php
@@ -0,0 +1,29 @@
+<?php
+
+namespace LdapRecord\Models\Types;
+
+interface ActiveDirectory extends TypeInterface
+{
+    /**
+     * Returns the models object SID key.
+     *
+     * @return string
+     */
+    public function getObjectSidKey();
+
+    /**
+     * Returns the model's hex object SID.
+     *
+     * @see https://msdn.microsoft.com/en-us/library/ms679024(v=vs.85).aspx
+     *
+     * @return string
+     */
+    public function getObjectSid();
+
+    /**
+     * Returns the model's SID.
+     *
+     * @return string|null
+     */
+    public function getConvertedSid();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/FreeIPA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/FreeIPA.php
new file mode 100644
index 0000000..6831318
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/FreeIPA.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Types;
+
+interface FreeIPA extends TypeInterface
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/OpenLDAP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/OpenLDAP.php
new file mode 100644
index 0000000..e63076e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/OpenLDAP.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Types;
+
+interface OpenLDAP extends TypeInterface
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/TypeInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/TypeInterface.php
new file mode 100644
index 0000000..8a45f32
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Models/Types/TypeInterface.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Models\Types;
+
+interface TypeInterface
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ArrayCacheStore.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ArrayCacheStore.php
new file mode 100644
index 0000000..d7480a7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ArrayCacheStore.php
@@ -0,0 +1,142 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use Psr\SimpleCache\CacheInterface;
+
+class ArrayCacheStore implements CacheInterface
+{
+    use InteractsWithTime;
+
+    /**
+     * An array of stored values.
+     *
+     * @var array
+     */
+    protected $storage = [];
+
+    /**
+     * @inheritdoc
+     */
+    public function get($key, $default = null)
+    {
+        if (! isset($this->storage[$key])) {
+            return $default;
+        }
+
+        $item = $this->storage[$key];
+
+        $expiresAt = $item['expiresAt'] ?? 0;
+
+        if ($expiresAt !== 0 && $this->currentTime() > $expiresAt) {
+            $this->delete($key);
+
+            return $default;
+        }
+
+        return $item['value'];
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function set($key, $value, $ttl = null)
+    {
+        $this->storage[$key] = [
+            'value' => $value,
+            'expiresAt' => $this->calculateExpiration($ttl),
+        ];
+
+        return true;
+    }
+
+    /**
+     * Get the expiration time of the key.
+     *
+     * @param int $seconds
+     *
+     * @return int
+     */
+    protected function calculateExpiration($seconds)
+    {
+        return $this->toTimestamp($seconds);
+    }
+
+    /**
+     * Get the UNIX timestamp for the given number of seconds.
+     *
+     * @param int $seconds
+     *
+     * @return int
+     */
+    protected function toTimestamp($seconds)
+    {
+        return $seconds > 0 ? $this->availableAt($seconds) : 0;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function delete($key)
+    {
+        unset($this->storage[$key]);
+
+        return true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function clear()
+    {
+        $this->storage = [];
+
+        return true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getMultiple($keys, $default = null)
+    {
+        $values = [];
+
+        foreach ($keys as $key) {
+            $values[$key] = $this->get($key, $default);
+        }
+
+        return $values;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function setMultiple($values, $ttl = null)
+    {
+        foreach ($values as $key => $value) {
+            $this->set($key, $value, $ttl);
+        }
+
+        return true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function deleteMultiple($keys)
+    {
+        foreach ($keys as $key) {
+            $this->delete($key);
+        }
+
+        return true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function has($key)
+    {
+        return isset($this->storage[$key]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Builder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Builder.php
new file mode 100644
index 0000000..c75afa2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Builder.php
@@ -0,0 +1,1903 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use BadMethodCallException;
+use Closure;
+use DateTimeInterface;
+use InvalidArgumentException;
+use LdapRecord\Connection;
+use LdapRecord\Container;
+use LdapRecord\EscapesValues;
+use LdapRecord\LdapInterface;
+use LdapRecord\LdapRecordException;
+use LdapRecord\Models\Model;
+use LdapRecord\Query\Events\QueryExecuted;
+use LdapRecord\Query\Model\Builder as ModelBuilder;
+use LdapRecord\Query\Pagination\LazyPaginator;
+use LdapRecord\Query\Pagination\Paginator;
+use LdapRecord\Support\Arr;
+use LdapRecord\Utilities;
+
+class Builder
+{
+    use EscapesValues;
+
+    /**
+     * The selected columns to retrieve on the query.
+     *
+     * @var array
+     */
+    public $columns;
+
+    /**
+     * The query filters.
+     *
+     * @var array
+     */
+    public $filters = [
+        'and' => [],
+        'or' => [],
+        'raw' => [],
+    ];
+
+    /**
+     * The LDAP server controls to be sent.
+     *
+     * @var array
+     */
+    public $controls = [];
+
+    /**
+     * The size limit of the query.
+     *
+     * @var int
+     */
+    public $limit = 0;
+
+    /**
+     * Determines whether the current query is paginated.
+     *
+     * @var bool
+     */
+    public $paginated = false;
+
+    /**
+     * The distinguished name to perform searches upon.
+     *
+     * @var string|null
+     */
+    protected $dn;
+
+    /**
+     * The base distinguished name to perform searches inside.
+     *
+     * @var string|null
+     */
+    protected $baseDn;
+
+    /**
+     * The default query type.
+     *
+     * @var string
+     */
+    protected $type = 'search';
+
+    /**
+     * Determines whether the query is nested.
+     *
+     * @var bool
+     */
+    protected $nested = false;
+
+    /**
+     * Determines whether the query should be cached.
+     *
+     * @var bool
+     */
+    protected $caching = false;
+
+    /**
+     * How long the query should be cached until.
+     *
+     * @var DateTimeInterface|null
+     */
+    protected $cacheUntil = null;
+
+    /**
+     * Determines whether the query cache must be flushed.
+     *
+     * @var bool
+     */
+    protected $flushCache = false;
+
+    /**
+     * The current connection instance.
+     *
+     * @var Connection
+     */
+    protected $connection;
+
+    /**
+     * The current grammar instance.
+     *
+     * @var Grammar
+     */
+    protected $grammar;
+
+    /**
+     * The current cache instance.
+     *
+     * @var Cache|null
+     */
+    protected $cache;
+
+    /**
+     * Constructor.
+     *
+     * @param Connection $connection
+     */
+    public function __construct(Connection $connection)
+    {
+        $this->connection = $connection;
+        $this->grammar = new Grammar();
+    }
+
+    /**
+     * Set the current connection.
+     *
+     * @param Connection $connection
+     *
+     * @return $this
+     */
+    public function setConnection(Connection $connection)
+    {
+        $this->connection = $connection;
+
+        return $this;
+    }
+
+    /**
+     * Set the current filter grammar.
+     *
+     * @param Grammar $grammar
+     *
+     * @return $this
+     */
+    public function setGrammar(Grammar $grammar)
+    {
+        $this->grammar = $grammar;
+
+        return $this;
+    }
+
+    /**
+     * Set the cache to store query results.
+     *
+     * @param Cache|null $cache
+     *
+     * @return $this
+     */
+    public function setCache(Cache $cache = null)
+    {
+        $this->cache = $cache;
+
+        return $this;
+    }
+
+    /**
+     * Returns a new Query Builder instance.
+     *
+     * @param string $baseDn
+     *
+     * @return $this
+     */
+    public function newInstance($baseDn = null)
+    {
+        // We'll set the base DN of the new Builder so
+        // developers don't need to do this manually.
+        $dn = is_null($baseDn) ? $this->getDn() : $baseDn;
+
+        return (new static($this->connection))->setDn($dn);
+    }
+
+    /**
+     * Returns a new nested Query Builder instance.
+     *
+     * @param Closure|null $closure
+     *
+     * @return $this
+     */
+    public function newNestedInstance(Closure $closure = null)
+    {
+        $query = $this->newInstance()->nested();
+
+        if ($closure) {
+            $closure($query);
+        }
+
+        return $query;
+    }
+
+    /**
+     * Executes the LDAP query.
+     *
+     * @param string|array $columns
+     *
+     * @return Collection|array
+     */
+    public function get($columns = ['*'])
+    {
+        return $this->onceWithColumns(Arr::wrap($columns), function () {
+            return $this->query($this->getQuery());
+        });
+    }
+
+    /**
+     * Execute the given callback while selecting the given columns.
+     *
+     * After running the callback, the columns are reset to the original value.
+     *
+     * @param array    $columns
+     * @param callable $callback
+     *
+     * @return mixed
+     */
+    protected function onceWithColumns($columns, $callback)
+    {
+        $original = $this->columns;
+
+        if (is_null($original)) {
+            $this->columns = $columns;
+        }
+
+        $result = $callback();
+
+        $this->columns = $original;
+
+        return $result;
+    }
+
+    /**
+     * Compiles and returns the current query string.
+     *
+     * @return string
+     */
+    public function getQuery()
+    {
+        // We need to ensure we have at least one filter, as
+        // no query results will be returned otherwise.
+        if (count(array_filter($this->filters)) === 0) {
+            $this->whereHas('objectclass');
+        }
+
+        return $this->grammar->compile($this);
+    }
+
+    /**
+     * Returns the unescaped query.
+     *
+     * @return string
+     */
+    public function getUnescapedQuery()
+    {
+        return Utilities::unescape($this->getQuery());
+    }
+
+    /**
+     * Returns the current Grammar instance.
+     *
+     * @return Grammar
+     */
+    public function getGrammar()
+    {
+        return $this->grammar;
+    }
+
+    /**
+     * Returns the current Cache instance.
+     *
+     * @return Cache|null
+     */
+    public function getCache()
+    {
+        return $this->cache;
+    }
+
+    /**
+     * Returns the current Connection instance.
+     *
+     * @return Connection
+     */
+    public function getConnection()
+    {
+        return $this->connection;
+    }
+
+    /**
+     * Returns the query type.
+     *
+     * @return string
+     */
+    public function getType()
+    {
+        return $this->type;
+    }
+
+    /**
+     * Set the base distinguished name of the query.
+     *
+     * @param Model|string $dn
+     *
+     * @return $this
+     */
+    public function setBaseDn($dn)
+    {
+        $this->baseDn = $this->substituteBaseInDn($dn);
+
+        return $this;
+    }
+
+    /**
+     * Get the base distinguished name of the query.
+     *
+     * @return string|null
+     */
+    public function getBaseDn()
+    {
+        return $this->baseDn;
+    }
+
+    /**
+     * Get the distinguished name of the query.
+     *
+     * @return string
+     */
+    public function getDn()
+    {
+        return $this->dn;
+    }
+
+    /**
+     * Set the distinguished name for the query.
+     *
+     * @param string|Model|null $dn
+     *
+     * @return $this
+     */
+    public function setDn($dn = null)
+    {
+        $this->dn = $this->substituteBaseInDn($dn);
+
+        return $this;
+    }
+
+    /**
+     * Substitute the base DN string template for the current base.
+     *
+     * @param Model|string $dn
+     *
+     * @return string
+     */
+    protected function substituteBaseInDn($dn)
+    {
+        return str_replace(
+            '{base}',
+            $this->baseDn,
+            $dn instanceof Model ? $dn->getDn() : $dn
+        );
+    }
+
+    /**
+     * Alias for setting the distinguished name for the query.
+     *
+     * @param string|Model|null $dn
+     *
+     * @return $this
+     */
+    public function in($dn = null)
+    {
+        return $this->setDn($dn);
+    }
+
+    /**
+     * Set the size limit of the current query.
+     *
+     * @param int $limit
+     *
+     * @return $this
+     */
+    public function limit($limit = 0)
+    {
+        $this->limit = $limit;
+
+        return $this;
+    }
+
+    /**
+     * Returns a new query for the given model.
+     *
+     * @param Model $model
+     *
+     * @return ModelBuilder
+     */
+    public function model(Model $model)
+    {
+        return $model->newQueryBuilder($this->connection)
+            ->setCache($this->connection->getCache())
+            ->setBaseDn($this->baseDn)
+            ->setModel($model);
+    }
+
+    /**
+     * Performs the specified query on the current LDAP connection.
+     *
+     * @param string $query
+     *
+     * @return Collection|array
+     */
+    public function query($query)
+    {
+        $start = microtime(true);
+
+        // Here we will create the execution callback. This allows us
+        // to only execute an LDAP request if caching is disabled
+        // or if no cache of the given query exists yet.
+        $callback = function () use ($query) {
+            return $this->parse($this->run($query));
+        };
+
+        $results = $this->getCachedResponse($query, $callback);
+
+        $this->logQuery($this, $this->type, $this->getElapsedTime($start));
+
+        return $this->process($results);
+    }
+
+    /**
+     * Paginates the current LDAP query.
+     *
+     * @param int  $pageSize
+     * @param bool $isCritical
+     *
+     * @return Collection|array
+     */
+    public function paginate($pageSize = 1000, $isCritical = false)
+    {
+        $this->paginated = true;
+
+        $start = microtime(true);
+
+        $query = $this->getQuery();
+
+        // Here we will create the pagination callback. This allows us
+        // to only execute an LDAP request if caching is disabled
+        // or if no cache of the given query exists yet.
+        $callback = function () use ($query, $pageSize, $isCritical) {
+            return $this->runPaginate($query, $pageSize, $isCritical);
+        };
+
+        $pages = $this->getCachedResponse($query, $callback);
+
+        $this->logQuery($this, 'paginate', $this->getElapsedTime($start));
+
+        return $this->process($pages);
+    }
+
+    /**
+     * Runs the paginate operation with the given filter.
+     *
+     * @param string $filter
+     * @param int    $perPage
+     * @param bool   $isCritical
+     *
+     * @return array
+     */
+    protected function runPaginate($filter, $perPage, $isCritical)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($filter, $perPage, $isCritical) {
+            return (new Paginator($this, $filter, $perPage, $isCritical))->execute($ldap);
+        });
+    }
+
+    /**
+     * Chunk the results of a paginated LDAP query.
+     *
+     * @param int     $pageSize
+     * @param Closure $callback
+     * @param bool    $isCritical
+     *
+     * @return void
+     */
+    public function chunk($pageSize, Closure $callback, $isCritical = false)
+    {
+        $start = microtime(true);
+
+        $query = $this->getQuery();
+
+        foreach ($this->runChunk($query, $pageSize, $isCritical) as $chunk) {
+            $callback($this->process($chunk));
+        }
+
+        $this->logQuery($this, 'chunk', $this->getElapsedTime($start));
+    }
+
+    /**
+     * Runs the chunk operation with the given filter.
+     *
+     * @param string $filter
+     * @param int    $perPage
+     * @param bool   $isCritical
+     *
+     * @return array
+     */
+    protected function runChunk($filter, $perPage, $isCritical)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($filter, $perPage, $isCritical) {
+            return (new LazyPaginator($this, $filter, $perPage, $isCritical))->execute($ldap);
+        });
+    }
+
+    /**
+     * Processes and converts the given LDAP results into models.
+     *
+     * @param array $results
+     *
+     * @return array
+     */
+    protected function process(array $results)
+    {
+        unset($results['count']);
+
+        return $this->paginated ? $this->flattenPages($results) : $results;
+    }
+
+    /**
+     * Flattens LDAP paged results into a single array.
+     *
+     * @param array $pages
+     *
+     * @return array
+     */
+    protected function flattenPages(array $pages)
+    {
+        $records = [];
+
+        foreach ($pages as $page) {
+            unset($page['count']);
+
+            $records = array_merge($records, $page);
+        }
+
+        return $records;
+    }
+
+    /**
+     * Get the cached response or execute and cache the callback value.
+     *
+     * @param string  $query
+     * @param Closure $callback
+     *
+     * @return mixed
+     */
+    protected function getCachedResponse($query, Closure $callback)
+    {
+        // If caching is enabled and we have a cache instance available,
+        // we will try to retrieve the cached results instead.
+        if ($this->caching && $this->cache) {
+            $key = $this->getCacheKey($query);
+
+            if ($this->flushCache) {
+                $this->cache->delete($key);
+            }
+
+            return $this->cache->remember($key, $this->cacheUntil, $callback);
+        }
+
+        // Otherwise, we will simply execute the callback.
+        return $callback();
+    }
+
+    /**
+     * Runs the query operation with the given filter.
+     *
+     * @param string $filter
+     *
+     * @return resource
+     */
+    public function run($filter)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($filter) {
+            // We will avoid setting the controls during any pagination
+            // requests as it will clear the cookie we need to send
+            // to the server upon retrieving every page.
+            if (! $this->paginated) {
+                // Before running the query, we will set the LDAP server controls. This
+                // allows the controls to be automatically reset upon each new query
+                // that is conducted on the same connection during each request.
+                $ldap->setOption(LDAP_OPT_SERVER_CONTROLS, $this->controls);
+            }
+
+            return $ldap->{$this->type}(
+                $this->dn ?? $this->baseDn,
+                $filter,
+                $this->getSelects(),
+                $onlyAttributes = false,
+                $this->limit
+            );
+        });
+    }
+
+    /**
+     * Parses the given LDAP resource by retrieving its entries.
+     *
+     * @param resource $resource
+     *
+     * @return array
+     */
+    public function parse($resource)
+    {
+        if (! $resource) {
+            return [];
+        }
+
+        return $this->connection->run(function (LdapInterface $ldap) use ($resource) {
+            $entries = $ldap->getEntries($resource);
+
+            // Free up memory.
+            if (is_resource($resource)) {
+                $ldap->freeResult($resource);
+            }
+
+            return $entries;
+        });
+    }
+
+    /**
+     * Returns the cache key.
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    protected function getCacheKey($query)
+    {
+        $host = $this->connection->getLdapConnection()->getHost();
+
+        $key = $host
+            .$this->type
+            .$this->getDn()
+            .$query
+            .implode($this->getSelects())
+            .$this->limit
+            .$this->paginated;
+
+        return md5($key);
+    }
+
+    /**
+     * Returns the first entry in a search result.
+     *
+     * @param array|string $columns
+     *
+     * @return Model|null
+     */
+    public function first($columns = ['*'])
+    {
+        return Arr::get($this->limit(1)->get($columns), 0);
+    }
+
+    /**
+     * Returns the first entry in a search result.
+     *
+     * If no entry is found, an exception is thrown.
+     *
+     * @param array|string $columns
+     *
+     * @throws ObjectNotFoundException
+     *
+     * @return Model|static
+     */
+    public function firstOrFail($columns = ['*'])
+    {
+        if (! $record = $this->first($columns)) {
+            $this->throwNotFoundException($this->getUnescapedQuery(), $this->dn);
+        }
+
+        return $record;
+    }
+
+    /**
+     * Throws a not found exception.
+     *
+     * @param string $query
+     * @param string $dn
+     *
+     * @throws ObjectNotFoundException
+     */
+    protected function throwNotFoundException($query, $dn)
+    {
+        throw ObjectNotFoundException::forQuery($query, $dn);
+    }
+
+    /**
+     * Finds a record by the specified attribute and value.
+     *
+     * @param string       $attribute
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @return Model|static|null
+     */
+    public function findBy($attribute, $value, $columns = ['*'])
+    {
+        try {
+            return $this->findByOrFail($attribute, $value, $columns);
+        } catch (ObjectNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by the specified attribute and value.
+     *
+     * If no record is found an exception is thrown.
+     *
+     * @param string       $attribute
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @throws ObjectNotFoundException
+     *
+     * @return Model
+     */
+    public function findByOrFail($attribute, $value, $columns = ['*'])
+    {
+        return $this->whereEquals($attribute, $value)->firstOrFail($columns);
+    }
+
+    /**
+     * Find many records by distinguished name.
+     *
+     * @param array $dns
+     * @param array $columns
+     *
+     * @return array|Collection
+     */
+    public function findMany($dns, $columns = ['*'])
+    {
+        if (empty($dns)) {
+            return $this->process([]);
+        }
+
+        $objects = [];
+
+        foreach ($dns as $dn) {
+            if (! is_null($object = $this->find($dn, $columns))) {
+                $objects[] = $object;
+            }
+        }
+
+        return $this->process($objects);
+    }
+
+    /**
+     * Finds many records by the specified attribute.
+     *
+     * @param string $attribute
+     * @param array  $values
+     * @param array  $columns
+     *
+     * @return Collection
+     */
+    public function findManyBy($attribute, array $values = [], $columns = ['*'])
+    {
+        $query = $this->select($columns);
+
+        foreach ($values as $value) {
+            $query->orWhere([$attribute => $value]);
+        }
+
+        return $query->get();
+    }
+
+    /**
+     * Finds a record by its distinguished name.
+     *
+     * @param string|array $dn
+     * @param array|string $columns
+     *
+     * @return Model|static|array|Collection|null
+     */
+    public function find($dn, $columns = ['*'])
+    {
+        if (is_array($dn)) {
+            return $this->findMany($dn, $columns);
+        }
+
+        try {
+            return $this->findOrFail($dn, $columns);
+        } catch (ObjectNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its distinguished name.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $dn
+     * @param array|string $columns
+     *
+     * @throws ObjectNotFoundException
+     *
+     * @return Model|static
+     */
+    public function findOrFail($dn, $columns = ['*'])
+    {
+        return $this->setDn($dn)
+            ->read()
+            ->whereHas('objectclass')
+            ->firstOrFail($columns);
+    }
+
+    /**
+     * Adds the inserted fields to query on the current LDAP connection.
+     *
+     * @param array|string $columns
+     *
+     * @return $this
+     */
+    public function select($columns = ['*'])
+    {
+        $columns = is_array($columns) ? $columns : func_get_args();
+
+        if (! empty($columns)) {
+            $this->columns = $columns;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Add a new select column to the query.
+     *
+     * @param array|mixed $column
+     *
+     * @return $this
+     */
+    public function addSelect($column)
+    {
+        $column = is_array($column) ? $column : func_get_args();
+
+        $this->columns = array_merge((array) $this->columns, $column);
+
+        return $this;
+    }
+
+    /**
+     * Adds a raw filter to the current query.
+     *
+     * @param array|string $filters
+     *
+     * @return $this
+     */
+    public function rawFilter($filters = [])
+    {
+        $filters = is_array($filters) ? $filters : func_get_args();
+
+        foreach ($filters as $filter) {
+            $this->filters['raw'][] = $filter;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds a nested 'and' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return $this
+     */
+    public function andFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        return $this->rawFilter(
+            $this->grammar->compileAnd($query->getQuery())
+        );
+    }
+
+    /**
+     * Adds a nested 'or' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return $this
+     */
+    public function orFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        return $this->rawFilter(
+            $this->grammar->compileOr($query->getQuery())
+        );
+    }
+
+    /**
+     * Adds a nested 'not' filter to the current query.
+     *
+     * @param Closure $closure
+     *
+     * @return $this
+     */
+    public function notFilter(Closure $closure)
+    {
+        $query = $this->newNestedInstance($closure);
+
+        return $this->rawFilter(
+            $this->grammar->compileNot($query->getQuery())
+        );
+    }
+
+    /**
+     * Adds a where clause to the current query.
+     *
+     * @param string|array $field
+     * @param string       $operator
+     * @param string       $value
+     * @param string       $boolean
+     * @param bool         $raw
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function where($field, $operator = null, $value = null, $boolean = 'and', $raw = false)
+    {
+        if (is_array($field)) {
+            // If the field is an array, we will assume we have been
+            // provided with an array of key-value pairs and can
+            // add them each as their own seperate where clause.
+            return $this->addArrayOfWheres($field, $boolean, $raw);
+        }
+
+        // If we have been provided with two arguments not a "has" or
+        // "not has" operator, we'll assume the developer is creating
+        // an "equals" clause and set the proper operator in place.
+        if (func_num_args() === 2 && ! in_array($operator, ['*', '!*'])) {
+            [$value, $operator] = [$operator, '='];
+        }
+
+        if (! in_array($operator, $this->grammar->getOperators())) {
+            throw new InvalidArgumentException("Invalid LDAP filter operator [$operator]");
+        }
+
+        // We'll escape the value if raw isn't requested.
+        $value = $this->prepareWhereValue($field, $value, $raw);
+
+        $field = $this->escape($field)->both()->get();
+
+        $this->addFilter($boolean, compact('field', 'operator', 'value'));
+
+        return $this;
+    }
+
+    /**
+     * Prepare the value for being queried.
+     *
+     * @param string $field
+     * @param string $value
+     * @param bool   $raw
+     *
+     * @return string
+     */
+    protected function prepareWhereValue($field, $value, $raw = false)
+    {
+        return $raw ? $value : $this->escape($value);
+    }
+
+    /**
+     * Adds a raw where clause to the current query.
+     *
+     * Values given to this method are not escaped.
+     *
+     * @param string|array $field
+     * @param string       $operator
+     * @param string       $value
+     *
+     * @return $this
+     */
+    public function whereRaw($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'and', true);
+    }
+
+    /**
+     * Adds a 'where equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereEquals($field, $value)
+    {
+        return $this->where($field, '=', $value);
+    }
+
+    /**
+     * Adds a 'where not equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereNotEquals($field, $value)
+    {
+        return $this->where($field, '!', $value);
+    }
+
+    /**
+     * Adds a 'where approximately equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereApproximatelyEquals($field, $value)
+    {
+        return $this->where($field, '~=', $value);
+    }
+
+    /**
+     * Adds a 'where has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return $this
+     */
+    public function whereHas($field)
+    {
+        return $this->where($field, '*');
+    }
+
+    /**
+     * Adds a 'where not has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return $this
+     */
+    public function whereNotHas($field)
+    {
+        return $this->where($field, '!*');
+    }
+
+    /**
+     * Adds a 'where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereContains($field, $value)
+    {
+        return $this->where($field, 'contains', $value);
+    }
+
+    /**
+     * Adds a 'where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereNotContains($field, $value)
+    {
+        return $this->where($field, 'not_contains', $value);
+    }
+
+    /**
+     * Query for entries that match any of the values provided for the given field.
+     *
+     * @param string $field
+     * @param array  $values
+     *
+     * @return $this
+     */
+    public function whereIn($field, array $values)
+    {
+        return $this->orFilter(function (self $query) use ($field, $values) {
+            foreach ($values as $value) {
+                $query->whereEquals($field, $value);
+            }
+        });
+    }
+
+    /**
+     * Adds a 'between' clause to the current query.
+     *
+     * @param string $field
+     * @param array  $values
+     *
+     * @return $this
+     */
+    public function whereBetween($field, array $values)
+    {
+        return $this->where([
+            [$field, '>=', $values[0]],
+            [$field, '<=', $values[1]],
+        ]);
+    }
+
+    /**
+     * Adds a 'where starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereStartsWith($field, $value)
+    {
+        return $this->where($field, 'starts_with', $value);
+    }
+
+    /**
+     * Adds a 'where *not* starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereNotStartsWith($field, $value)
+    {
+        return $this->where($field, 'not_starts_with', $value);
+    }
+
+    /**
+     * Adds a 'where ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereEndsWith($field, $value)
+    {
+        return $this->where($field, 'ends_with', $value);
+    }
+
+    /**
+     * Adds a 'where *not* ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function whereNotEndsWith($field, $value)
+    {
+        return $this->where($field, 'not_ends_with', $value);
+    }
+
+    /**
+     * Only include deleted models in the results.
+     *
+     * @return $this
+     */
+    public function whereDeleted()
+    {
+        return $this->withDeleted()->whereEquals('isDeleted', 'TRUE');
+    }
+
+    /**
+     * Set the LDAP control option to include deleted LDAP models.
+     *
+     * @return $this
+     */
+    public function withDeleted()
+    {
+        return $this->addControl(LdapInterface::OID_SERVER_SHOW_DELETED, $isCritical = true);
+    }
+
+    /**
+     * Add a server control to the query.
+     *
+     * @param string $oid
+     * @param bool   $isCritical
+     * @param mixed  $value
+     *
+     * @return $this
+     */
+    public function addControl($oid, $isCritical = false, $value = null)
+    {
+        $this->controls[$oid] = compact('oid', 'isCritical', 'value');
+
+        return $this;
+    }
+
+    /**
+     * Determine if the server control exists on the query.
+     *
+     * @param string $oid
+     *
+     * @return bool
+     */
+    public function hasControl($oid)
+    {
+        return array_key_exists($oid, $this->controls);
+    }
+
+    /**
+     * Adds an 'or where' clause to the current query.
+     *
+     * @param array|string $field
+     * @param string|null  $operator
+     * @param string|null  $value
+     *
+     * @return $this
+     */
+    public function orWhere($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'or');
+    }
+
+    /**
+     * Adds a raw or where clause to the current query.
+     *
+     * Values given to this method are not escaped.
+     *
+     * @param string $field
+     * @param string $operator
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereRaw($field, $operator = null, $value = null)
+    {
+        return $this->where($field, $operator, $value, 'or', true);
+    }
+
+    /**
+     * Adds an 'or where has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return $this
+     */
+    public function orWhereHas($field)
+    {
+        return $this->orWhere($field, '*');
+    }
+
+    /**
+     * Adds a 'where not has' clause to the current query.
+     *
+     * @param string $field
+     *
+     * @return $this
+     */
+    public function orWhereNotHas($field)
+    {
+        return $this->orWhere($field, '!*');
+    }
+
+    /**
+     * Adds an 'or where equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereEquals($field, $value)
+    {
+        return $this->orWhere($field, '=', $value);
+    }
+
+    /**
+     * Adds an 'or where not equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereNotEquals($field, $value)
+    {
+        return $this->orWhere($field, '!', $value);
+    }
+
+    /**
+     * Adds a 'or where approximately equals' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereApproximatelyEquals($field, $value)
+    {
+        return $this->orWhere($field, '~=', $value);
+    }
+
+    /**
+     * Adds an 'or where contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereContains($field, $value)
+    {
+        return $this->orWhere($field, 'contains', $value);
+    }
+
+    /**
+     * Adds an 'or where *not* contains' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereNotContains($field, $value)
+    {
+        return $this->orWhere($field, 'not_contains', $value);
+    }
+
+    /**
+     * Adds an 'or where starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereStartsWith($field, $value)
+    {
+        return $this->orWhere($field, 'starts_with', $value);
+    }
+
+    /**
+     * Adds an 'or where *not* starts with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereNotStartsWith($field, $value)
+    {
+        return $this->orWhere($field, 'not_starts_with', $value);
+    }
+
+    /**
+     * Adds an 'or where ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereEndsWith($field, $value)
+    {
+        return $this->orWhere($field, 'ends_with', $value);
+    }
+
+    /**
+     * Adds an 'or where *not* ends with' clause to the current query.
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return $this
+     */
+    public function orWhereNotEndsWith($field, $value)
+    {
+        return $this->orWhere($field, 'not_ends_with', $value);
+    }
+
+    /**
+     * Adds a filter binding onto the current query.
+     *
+     * @param string $type     The type of filter to add.
+     * @param array  $bindings The bindings of the filter.
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function addFilter($type, array $bindings)
+    {
+        if (! array_key_exists($type, $this->filters)) {
+            throw new InvalidArgumentException("Filter type: [$type] is invalid.");
+        }
+
+        // Each filter clause require key bindings to be set. We
+        // will validate this here to ensure all of them have
+        // been provided, or throw an exception otherwise.
+        if ($missing = $this->missingBindingKeys($bindings)) {
+            $keys = implode(', ', $missing);
+
+            throw new InvalidArgumentException("Invalid filter bindings. Missing: [$keys] keys.");
+        }
+
+        $this->filters[$type][] = $bindings;
+
+        return $this;
+    }
+
+    /**
+     * Extract any missing required binding keys.
+     *
+     * @param array $bindings
+     *
+     * @return array
+     */
+    protected function missingBindingKeys($bindings)
+    {
+        $required = array_flip(['field', 'operator', 'value']);
+
+        $existing = array_intersect_key($required, $bindings);
+
+        return array_keys(array_diff_key($required, $existing));
+    }
+
+    /**
+     * Get all the filters on the query.
+     *
+     * @return array
+     */
+    public function getFilters()
+    {
+        return $this->filters;
+    }
+
+    /**
+     * Clear the query filters.
+     *
+     * @return $this
+     */
+    public function clearFilters()
+    {
+        foreach (array_keys($this->filters) as $type) {
+            $this->filters[$type] = [];
+        }
+
+        return $this;
+    }
+
+    /**
+     * Determine if the query has attributes selected.
+     *
+     * @return bool
+     */
+    public function hasSelects()
+    {
+        return count($this->columns) > 0;
+    }
+
+    /**
+     * Get the attributes to select on the search.
+     *
+     * @return array
+     */
+    public function getSelects()
+    {
+        $selects = $this->columns ?? ['*'];
+
+        if (in_array('*', $selects)) {
+            return $selects;
+        }
+
+        if (in_array('objectclass', $selects)) {
+            return $selects;
+        }
+
+        // If the * character is not provided in the selected columns,
+        // we need to ensure we always select the object class, as
+        // this is used for constructing models properly.
+        $selects[] = 'objectclass';
+
+        return $selects;
+    }
+
+    /**
+     * Set the query to search on the base distinguished name.
+     *
+     * This will result in one record being returned.
+     *
+     * @return $this
+     */
+    public function read()
+    {
+        $this->type = 'read';
+
+        return $this;
+    }
+
+    /**
+     * Set the query to search one level on the base distinguished name.
+     *
+     * @return $this
+     */
+    public function listing()
+    {
+        $this->type = 'listing';
+
+        return $this;
+    }
+
+    /**
+     * Set the query to search the entire directory on the base distinguished name.
+     *
+     * @return $this
+     */
+    public function recursive()
+    {
+        $this->type = 'search';
+
+        return $this;
+    }
+
+    /**
+     * Whether to mark the current query as nested.
+     *
+     * @param bool $nested
+     *
+     * @return $this
+     */
+    public function nested($nested = true)
+    {
+        $this->nested = (bool) $nested;
+
+        return $this;
+    }
+
+    /**
+     * Enables caching on the current query until the given date.
+     *
+     * If flushing is enabled, the query cache will be flushed and then re-cached.
+     *
+     * @param DateTimeInterface $until When to expire the query cache.
+     * @param bool              $flush Whether to force-flush the query cache.
+     *
+     * @return $this
+     */
+    public function cache(DateTimeInterface $until = null, $flush = false)
+    {
+        $this->caching = true;
+        $this->cacheUntil = $until;
+        $this->flushCache = $flush;
+
+        return $this;
+    }
+
+    /**
+     * Determine if the query is nested.
+     *
+     * @return bool
+     */
+    public function isNested()
+    {
+        return $this->nested === true;
+    }
+
+    /**
+     * Determine whether the query is paginated.
+     *
+     * @return bool
+     */
+    public function isPaginated()
+    {
+        return $this->paginated;
+    }
+
+    /**
+     * Insert an entry into the directory.
+     *
+     * @param string $dn
+     * @param array  $attributes
+     *
+     * @throws LdapRecordException
+     *
+     * @return bool
+     */
+    public function insert($dn, array $attributes)
+    {
+        if (empty($dn)) {
+            throw new LdapRecordException('A new LDAP object must have a distinguished name (dn).');
+        }
+
+        if (! array_key_exists('objectclass', $attributes)) {
+            throw new LdapRecordException(
+                'A new LDAP object must contain at least one object class (objectclass) to be created.'
+            );
+        }
+
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $attributes) {
+            return $ldap->add($dn, $attributes);
+        });
+    }
+
+    /**
+     * Create attributes on the entry in the directory.
+     *
+     * @param string $dn
+     * @param array  $attributes
+     *
+     * @return bool
+     */
+    public function insertAttributes($dn, array $attributes)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $attributes) {
+            return $ldap->modAdd($dn, $attributes);
+        });
+    }
+
+    /**
+     * Update the entry with the given modifications.
+     *
+     * @param string $dn
+     * @param array  $modifications
+     *
+     * @return bool
+     */
+    public function update($dn, array $modifications)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $modifications) {
+            return $ldap->modifyBatch($dn, $modifications);
+        });
+    }
+
+    /**
+     * Update an entries attribute in the directory.
+     *
+     * @param string $dn
+     * @param array  $attributes
+     *
+     * @return bool
+     */
+    public function updateAttributes($dn, array $attributes)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $attributes) {
+            return $ldap->modReplace($dn, $attributes);
+        });
+    }
+
+    /**
+     * Delete an entry from the directory.
+     *
+     * @param string $dn
+     *
+     * @return bool
+     */
+    public function delete($dn)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn) {
+            return $ldap->delete($dn);
+        });
+    }
+
+    /**
+     * Delete attributes on the entry in the directory.
+     *
+     * @param string $dn
+     * @param array  $attributes
+     *
+     * @return bool
+     */
+    public function deleteAttributes($dn, array $attributes)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $attributes) {
+            return $ldap->modDelete($dn, $attributes);
+        });
+    }
+
+    /**
+     * Rename an entry in the directory.
+     *
+     * @param string $dn
+     * @param string $rdn
+     * @param string $newParentDn
+     * @param bool   $deleteOldRdn
+     *
+     * @return bool
+     */
+    public function rename($dn, $rdn, $newParentDn, $deleteOldRdn = true)
+    {
+        return $this->connection->run(function (LdapInterface $ldap) use ($dn, $rdn, $newParentDn, $deleteOldRdn) {
+            return $ldap->rename($dn, $rdn, $newParentDn, $deleteOldRdn);
+        });
+    }
+
+    /**
+     * Handle dynamic method calls on the query builder.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @throws BadMethodCallException
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        // If the beginning of the method being called contains
+        // 'where', we will assume a dynamic 'where' clause is
+        // being performed and pass the parameters to it.
+        if (substr($method, 0, 5) === 'where') {
+            return $this->dynamicWhere($method, $parameters);
+        }
+
+        throw new BadMethodCallException(sprintf(
+            'Call to undefined method %s::%s()',
+            static::class,
+            $method
+        ));
+    }
+
+    /**
+     * Handles dynamic "where" clauses to the query.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return $this
+     */
+    public function dynamicWhere($method, $parameters)
+    {
+        $finder = substr($method, 5);
+
+        $segments = preg_split('/(And|Or)(?=[A-Z])/', $finder, -1, PREG_SPLIT_DELIM_CAPTURE);
+
+        // The connector variable will determine which connector will be used for the
+        // query condition. We will change it as we come across new boolean values
+        // in the dynamic method strings, which could contain a number of these.
+        $connector = 'and';
+
+        $index = 0;
+
+        foreach ($segments as $segment) {
+            // If the segment is not a boolean connector, we can assume it is a column's name
+            // and we will add it to the query as a new constraint as a where clause, then
+            // we can keep iterating through the dynamic method string's segments again.
+            if ($segment != 'And' && $segment != 'Or') {
+                $this->addDynamic($segment, $connector, $parameters, $index);
+
+                $index++;
+            }
+
+            // Otherwise, we will store the connector so we know how the next where clause we
+            // find in the query should be connected to the previous ones, meaning we will
+            // have the proper boolean connector to connect the next where clause found.
+            else {
+                $connector = $segment;
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Adds an array of wheres to the current query.
+     *
+     * @param array  $wheres
+     * @param string $boolean
+     * @param bool   $raw
+     *
+     * @return $this
+     */
+    protected function addArrayOfWheres($wheres, $boolean, $raw)
+    {
+        foreach ($wheres as $key => $value) {
+            if (is_numeric($key) && is_array($value)) {
+                // If the key is numeric and the value is an array, we'll
+                // assume we've been given an array with conditionals.
+                [$field, $condition] = $value;
+
+                // Since a value is optional for some conditionals, we will
+                // try and retrieve the third parameter from the array,
+                // but is entirely optional.
+                $value = Arr::get($value, 2);
+
+                $this->where($field, $condition, $value, $boolean);
+            } else {
+                // If the value is not an array, we will assume an equals clause.
+                $this->where($key, '=', $value, $boolean, $raw);
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Add a single dynamic where clause statement to the query.
+     *
+     * @param string $segment
+     * @param string $connector
+     * @param array  $parameters
+     * @param int    $index
+     *
+     * @return void
+     */
+    protected function addDynamic($segment, $connector, $parameters, $index)
+    {
+        // If no parameters were given to the dynamic where clause,
+        // we can assume a "has" attribute filter is being added.
+        if (count($parameters) === 0) {
+            $this->where(strtolower($segment), '*', null, strtolower($connector));
+        } else {
+            $this->where(strtolower($segment), '=', $parameters[$index], strtolower($connector));
+        }
+    }
+
+    /**
+     * Logs the given executed query information by firing its query event.
+     *
+     * @param Builder    $query
+     * @param string     $type
+     * @param null|float $time
+     *
+     * @return void
+     */
+    protected function logQuery($query, $type, $time = null)
+    {
+        $args = [$query, $time];
+
+        switch ($type) {
+            case 'listing':
+                $event = new Events\Listing(...$args);
+                break;
+            case 'read':
+                $event = new Events\Read(...$args);
+                break;
+            case 'chunk':
+                $event = new Events\Chunk(...$args);
+                break;
+            case 'paginate':
+                $event = new Events\Paginate(...$args);
+                break;
+            default:
+                $event = new Events\Search(...$args);
+                break;
+        }
+
+        $this->fireQueryEvent($event);
+    }
+
+    /**
+     * Fires the given query event.
+     *
+     * @param QueryExecuted $event
+     *
+     * @return void
+     */
+    protected function fireQueryEvent(QueryExecuted $event)
+    {
+        Container::getInstance()->getEventDispatcher()->fire($event);
+    }
+
+    /**
+     * Get the elapsed time since a given starting point.
+     *
+     * @param int $start
+     *
+     * @return float
+     */
+    protected function getElapsedTime($start)
+    {
+        return round((microtime(true) - $start) * 1000, 2);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Cache.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Cache.php
new file mode 100644
index 0000000..dfbf8cd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Cache.php
@@ -0,0 +1,106 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use Closure;
+use DateInterval;
+use DateTimeInterface;
+use Psr\SimpleCache\CacheInterface;
+
+class Cache
+{
+    use InteractsWithTime;
+
+    /**
+     * The cache driver.
+     *
+     * @var CacheInterface
+     */
+    protected $store;
+
+    /**
+     * Constructor.
+     *
+     * @param CacheInterface $store
+     */
+    public function __construct(CacheInterface $store)
+    {
+        $this->store = $store;
+    }
+
+    /**
+     * Get an item from the cache.
+     *
+     * @param string $key
+     *
+     * @return mixed
+     */
+    public function get($key)
+    {
+        return $this->store->get($key);
+    }
+
+    /**
+     * Store an item in the cache.
+     *
+     * @param string                                  $key
+     * @param mixed                                   $value
+     * @param DateTimeInterface|DateInterval|int|null $ttl
+     *
+     * @return bool
+     */
+    public function put($key, $value, $ttl = null)
+    {
+        $seconds = $this->secondsUntil($ttl);
+
+        if ($seconds <= 0) {
+            return $this->delete($key);
+        }
+
+        return $this->store->set($key, $value, $seconds);
+    }
+
+    /**
+     * Get an item from the cache, or execute the given Closure and store the result.
+     *
+     * @param string                                  $key
+     * @param DateTimeInterface|DateInterval|int|null $ttl
+     * @param Closure                                 $callback
+     *
+     * @return mixed
+     */
+    public function remember($key, $ttl, Closure $callback)
+    {
+        $value = $this->get($key);
+
+        if (! is_null($value)) {
+            return $value;
+        }
+
+        $this->put($key, $value = $callback(), $ttl);
+
+        return $value;
+    }
+
+    /**
+     * Delete an item from the cache.
+     *
+     * @param string $key
+     *
+     * @return bool
+     */
+    public function delete($key)
+    {
+        return $this->store->delete($key);
+    }
+
+    /**
+     * Get the underlying cache store.
+     *
+     * @return CacheInterface
+     */
+    public function store()
+    {
+        return $this->store;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Collection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Collection.php
new file mode 100644
index 0000000..a02146d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Collection.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use LdapRecord\Models\Model;
+use Tightenco\Collect\Support\Collection as BaseCollection;
+
+class Collection extends BaseCollection
+{
+    /**
+     * @inheritdoc
+     */
+    protected function valueRetriever($value)
+    {
+        if ($this->useAsCallable($value)) {
+            return $value;
+        }
+
+        return function ($item) use ($value) {
+            return $item instanceof Model
+                ? $item->getFirstAttribute($value)
+                : data_get($item, $value);
+        };
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Chunk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Chunk.php
new file mode 100644
index 0000000..3cd36d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Chunk.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+class Chunk extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Listing.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Listing.php
new file mode 100644
index 0000000..2b88ad9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Listing.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+class Listing extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Paginate.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Paginate.php
new file mode 100644
index 0000000..6f8f262
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Paginate.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+class Paginate extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/QueryExecuted.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/QueryExecuted.php
new file mode 100644
index 0000000..f13ddeb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/QueryExecuted.php
@@ -0,0 +1,54 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+use LdapRecord\Query\Builder;
+
+class QueryExecuted
+{
+    /**
+     * The LDAP filter that was used for the query.
+     *
+     * @var string
+     */
+    protected $query;
+
+    /**
+     * The number of milliseconds it took to execute the query.
+     *
+     * @var float
+     */
+    protected $time;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder    $query
+     * @param null|float $time
+     */
+    public function __construct(Builder $query, $time = null)
+    {
+        $this->query = $query;
+        $this->time = $time;
+    }
+
+    /**
+     * Returns the LDAP filter that was used for the query.
+     *
+     * @return Builder
+     */
+    public function getQuery()
+    {
+        return $this->query;
+    }
+
+    /**
+     * Returns the number of milliseconds it took to execute the query.
+     *
+     * @return float|null
+     */
+    public function getTime()
+    {
+        return $this->time;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Read.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Read.php
new file mode 100644
index 0000000..510c4ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Read.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+class Read extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Search.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Search.php
new file mode 100644
index 0000000..5132316
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Events/Search.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace LdapRecord\Query\Events;
+
+class Search extends QueryExecuted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Grammar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Grammar.php
new file mode 100644
index 0000000..3217173
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Grammar.php
@@ -0,0 +1,549 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use UnexpectedValueException;
+
+class Grammar
+{
+    /**
+     * The query operators and their method names.
+     *
+     * @var array
+     */
+    public $operators = [
+        '*' => 'has',
+        '!*' => 'notHas',
+        '=' => 'equals',
+        '!' => 'doesNotEqual',
+        '!=' => 'doesNotEqual',
+        '>=' => 'greaterThanOrEquals',
+        '<=' => 'lessThanOrEquals',
+        '~=' => 'approximatelyEquals',
+        'starts_with' => 'startsWith',
+        'not_starts_with' => 'notStartsWith',
+        'ends_with' => 'endsWith',
+        'not_ends_with' => 'notEndsWith',
+        'contains' => 'contains',
+        'not_contains' => 'notContains',
+    ];
+
+    /**
+     * The query wrapper.
+     *
+     * @var string|null
+     */
+    protected $wrapper;
+
+    /**
+     * Get all the available operators.
+     *
+     * @return array
+     */
+    public function getOperators()
+    {
+        return array_keys($this->operators);
+    }
+
+    /**
+     * Wraps a query string in brackets.
+     *
+     * Produces: (query)
+     *
+     * @param string $query
+     * @param string $prefix
+     * @param string $suffix
+     *
+     * @return string
+     */
+    public function wrap($query, $prefix = '(', $suffix = ')')
+    {
+        return $prefix.$query.$suffix;
+    }
+
+    /**
+     * Compiles the Builder instance into an LDAP query string.
+     *
+     * @param Builder $query
+     *
+     * @return string
+     */
+    public function compile(Builder $query)
+    {
+        if ($this->queryMustBeWrapped($query)) {
+            $this->wrapper = 'and';
+        }
+
+        $filter = $this->compileRaws($query)
+            .$this->compileWheres($query)
+            .$this->compileOrWheres($query);
+
+        switch ($this->wrapper) {
+            case 'and':
+                return $this->compileAnd($filter);
+            case 'or':
+                return $this->compileOr($filter);
+            default:
+                return $filter;
+        }
+    }
+
+    /**
+     * Determine if the query must be wrapped in an encapsulating statement.
+     *
+     * @param Builder $query
+     *
+     * @return bool
+     */
+    protected function queryMustBeWrapped(Builder $query)
+    {
+        return ! $query->isNested() && $this->hasMultipleFilters($query);
+    }
+
+    /**
+     * Assembles all of the "raw" filters on the query.
+     *
+     * @param Builder $builder
+     *
+     * @return string
+     */
+    protected function compileRaws(Builder $builder)
+    {
+        return $this->concatenate($builder->filters['raw']);
+    }
+
+    /**
+     * Assembles all where clauses in the current wheres property.
+     *
+     * @param Builder $builder
+     * @param string  $type
+     *
+     * @return string
+     */
+    protected function compileWheres(Builder $builder, $type = 'and')
+    {
+        $filter = '';
+
+        foreach ($builder->filters[$type] as $where) {
+            $filter .= $this->compileWhere($where);
+        }
+
+        return $filter;
+    }
+
+    /**
+     * Assembles all or where clauses in the current orWheres property.
+     *
+     * @param Builder $query
+     *
+     * @return string
+     */
+    protected function compileOrWheres(Builder $query)
+    {
+        $filter = $this->compileWheres($query, 'or');
+
+        if (! $this->hasMultipleFilters($query)) {
+            return $filter;
+        }
+
+        // Here we will detect whether the entire query can be
+        // wrapped inside of an "or" statement by checking
+        // how many filter statements exist for each type.
+        if ($this->queryCanBeWrappedInSingleOrStatement($query)) {
+            $this->wrapper = 'or';
+        } else {
+            $filter = $this->compileOr($filter);
+        }
+
+        return $filter;
+    }
+
+    /**
+     * Determine if the query can be wrapped in a single or statement.
+     *
+     * @param Builder $query
+     *
+     * @return bool
+     */
+    protected function queryCanBeWrappedInSingleOrStatement(Builder $query)
+    {
+        return $this->has($query, 'or', '>=', 1) &&
+            $this->has($query, 'and', '<=', 1) &&
+            $this->has($query, 'raw', '=', 0);
+    }
+
+    /**
+     * Concatenates filters into a single string.
+     *
+     * @param array $bindings
+     *
+     * @return string
+     */
+    public function concatenate(array $bindings = [])
+    {
+        // Filter out empty query segments.
+        return implode(
+            array_filter($bindings, [$this, 'bindingValueIsNotEmpty'])
+        );
+    }
+
+    /**
+     * Determine if the binding value is not empty.
+     *
+     * @param string $value
+     *
+     * @return bool
+     */
+    protected function bindingValueIsNotEmpty($value)
+    {
+        return ! empty($value);
+    }
+
+    /**
+     * Determine if the query is using multiple filters.
+     *
+     * @param Builder $query
+     *
+     * @return bool
+     */
+    protected function hasMultipleFilters(Builder $query)
+    {
+        return $this->has($query, ['and', 'or', 'raw'], '>', 1);
+    }
+
+    /**
+     * Determine if the query contains the given filter statement type.
+     *
+     * @param Builder      $query
+     * @param string|array $type
+     * @param string       $operator
+     * @param int          $count
+     *
+     * @return bool
+     */
+    protected function has(Builder $query, $type, $operator = '>=', $count = 1)
+    {
+        $types = (array) $type;
+
+        $filters = 0;
+
+        foreach ($types as $type) {
+            $filters += count($query->filters[$type]);
+        }
+
+        switch ($operator) {
+            case '>':
+                return $filters > $count;
+            case '>=':
+                return $filters >= $count;
+            case '<':
+                return $filters < $count;
+            case '<=':
+                return $filters <= $count;
+            default:
+                return $filters == $count;
+        }
+    }
+
+    /**
+     * Returns a query string for equals.
+     *
+     * Produces: (field=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileEquals($field, $value)
+    {
+        return $this->wrap($field.'='.$value);
+    }
+
+    /**
+     * Returns a query string for does not equal.
+     *
+     * Produces: (!(field=value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileDoesNotEqual($field, $value)
+    {
+        return $this->compileNot(
+            $this->compileEquals($field, $value)
+        );
+    }
+
+    /**
+     * Alias for does not equal operator (!=) operator.
+     *
+     * Produces: (!(field=value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileDoesNotEqualAlias($field, $value)
+    {
+        return $this->compileDoesNotEqual($field, $value);
+    }
+
+    /**
+     * Returns a query string for greater than or equals.
+     *
+     * Produces: (field>=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileGreaterThanOrEquals($field, $value)
+    {
+        return $this->wrap("$field>=$value");
+    }
+
+    /**
+     * Returns a query string for less than or equals.
+     *
+     * Produces: (field<=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileLessThanOrEquals($field, $value)
+    {
+        return $this->wrap("$field<=$value");
+    }
+
+    /**
+     * Returns a query string for approximately equals.
+     *
+     * Produces: (field~=value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileApproximatelyEquals($field, $value)
+    {
+        return $this->wrap("$field~=$value");
+    }
+
+    /**
+     * Returns a query string for starts with.
+     *
+     * Produces: (field=value*)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileStartsWith($field, $value)
+    {
+        return $this->wrap("$field=$value*");
+    }
+
+    /**
+     * Returns a query string for does not start with.
+     *
+     * Produces: (!(field=*value))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotStartsWith($field, $value)
+    {
+        return $this->compileNot(
+            $this->compileStartsWith($field, $value)
+        );
+    }
+
+    /**
+     * Returns a query string for ends with.
+     *
+     * Produces: (field=*value)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileEndsWith($field, $value)
+    {
+        return $this->wrap("$field=*$value");
+    }
+
+    /**
+     * Returns a query string for does not end with.
+     *
+     * Produces: (!(field=value*))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotEndsWith($field, $value)
+    {
+        return $this->compileNot($this->compileEndsWith($field, $value));
+    }
+
+    /**
+     * Returns a query string for contains.
+     *
+     * Produces: (field=*value*)
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileContains($field, $value)
+    {
+        return $this->wrap("$field=*$value*");
+    }
+
+    /**
+     * Returns a query string for does not contain.
+     *
+     * Produces: (!(field=*value*))
+     *
+     * @param string $field
+     * @param string $value
+     *
+     * @return string
+     */
+    public function compileNotContains($field, $value)
+    {
+        return $this->compileNot(
+            $this->compileContains($field, $value)
+        );
+    }
+
+    /**
+     * Returns a query string for a where has.
+     *
+     * Produces: (field=*)
+     *
+     * @param string $field
+     *
+     * @return string
+     */
+    public function compileHas($field)
+    {
+        return $this->wrap("$field=*");
+    }
+
+    /**
+     * Returns a query string for a where does not have.
+     *
+     * Produces: (!(field=*))
+     *
+     * @param string $field
+     *
+     * @return string
+     */
+    public function compileNotHas($field)
+    {
+        return $this->compileNot(
+            $this->compileHas($field)
+        );
+    }
+
+    /**
+     * Wraps the inserted query inside an AND operator.
+     *
+     * Produces: (&query)
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileAnd($query)
+    {
+        return $query ? $this->wrap($query, '(&') : '';
+    }
+
+    /**
+     * Wraps the inserted query inside an OR operator.
+     *
+     * Produces: (|query)
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileOr($query)
+    {
+        return $query ? $this->wrap($query, '(|') : '';
+    }
+
+    /**
+     * Wraps the inserted query inside an NOT operator.
+     *
+     * @param string $query
+     *
+     * @return string
+     */
+    public function compileNot($query)
+    {
+        return $query ? $this->wrap($query, '(!') : '';
+    }
+
+    /**
+     * Assembles a single where query.
+     *
+     * @param array $where
+     *
+     * @throws UnexpectedValueException
+     *
+     * @return string
+     */
+    protected function compileWhere(array $where)
+    {
+        $method = $this->makeCompileMethod($where['operator']);
+
+        return $this->{$method}($where['field'], $where['value']);
+    }
+
+    /**
+     * Make the compile method name for the operator.
+     *
+     * @param string $operator
+     *
+     * @throws UnexpectedValueException
+     *
+     * @return string
+     */
+    protected function makeCompileMethod($operator)
+    {
+        if (! $this->operatorExists($operator)) {
+            throw new UnexpectedValueException("Invalid LDAP filter operator ['$operator']");
+        }
+
+        return 'compile'.ucfirst($this->operators[$operator]);
+    }
+
+    /**
+     * Determine if the operator exists.
+     *
+     * @param string $operator
+     *
+     * @return bool
+     */
+    protected function operatorExists($operator)
+    {
+        return array_key_exists($operator, $this->operators);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/InteractsWithTime.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/InteractsWithTime.php
new file mode 100644
index 0000000..1562ec0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/InteractsWithTime.php
@@ -0,0 +1,73 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use Carbon\Carbon;
+use DateInterval;
+use DateTimeInterface;
+
+/**
+ * @author Taylor Otwell
+ *
+ * @see https://laravel.com
+ */
+trait InteractsWithTime
+{
+    /**
+     * Get the number of seconds until the given DateTime.
+     *
+     * @param DateTimeInterface|DateInterval|int $delay
+     *
+     * @return int
+     */
+    protected function secondsUntil($delay)
+    {
+        $delay = $this->parseDateInterval($delay);
+
+        return $delay instanceof DateTimeInterface
+            ? max(0, $delay->getTimestamp() - $this->currentTime())
+            : (int) $delay;
+    }
+
+    /**
+     * Get the "available at" UNIX timestamp.
+     *
+     * @param DateTimeInterface|DateInterval|int $delay
+     *
+     * @return int
+     */
+    protected function availableAt($delay = 0)
+    {
+        $delay = $this->parseDateInterval($delay);
+
+        return $delay instanceof DateTimeInterface
+            ? $delay->getTimestamp()
+            : Carbon::now()->addRealSeconds($delay)->getTimestamp();
+    }
+
+    /**
+     * If the given value is an interval, convert it to a DateTime instance.
+     *
+     * @param DateTimeInterface|DateInterval|int $delay
+     *
+     * @return DateTimeInterface|int
+     */
+    protected function parseDateInterval($delay)
+    {
+        if ($delay instanceof DateInterval) {
+            $delay = Carbon::now()->add($delay);
+        }
+
+        return $delay;
+    }
+
+    /**
+     * Get the current system time as a UNIX timestamp.
+     *
+     * @return int
+     */
+    protected function currentTime()
+    {
+        return Carbon::now()->getTimestamp();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/ActiveDirectoryBuilder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/ActiveDirectoryBuilder.php
new file mode 100644
index 0000000..8923015
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/ActiveDirectoryBuilder.php
@@ -0,0 +1,247 @@
+<?php
+
+namespace LdapRecord\Query\Model;
+
+use Closure;
+use LdapRecord\LdapInterface;
+use LdapRecord\Models\Attributes\AccountControl;
+use LdapRecord\Models\ModelNotFoundException;
+
+class ActiveDirectoryBuilder extends Builder
+{
+    /**
+     * Finds a record by its Object SID.
+     *
+     * @param string       $sid
+     * @param array|string $columns
+     *
+     * @return \LdapRecord\Models\ActiveDirectory\Entry|static|null
+     */
+    public function findBySid($sid, $columns = [])
+    {
+        try {
+            return $this->findBySidOrFail($sid, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its Object SID.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $sid
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return \LdapRecord\Models\ActiveDirectory\Entry|static
+     */
+    public function findBySidOrFail($sid, $columns = [])
+    {
+        return $this->findByOrFail('objectsid', $sid, $columns);
+    }
+
+    /**
+     * Adds a enabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereEnabled()
+    {
+        return $this->notFilter(function ($query) {
+            return $query->whereDisabled();
+        });
+    }
+
+    /**
+     * Adds a disabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereDisabled()
+    {
+        return $this->rawFilter(
+            (new AccountControl())->accountIsDisabled()->filter()
+        );
+    }
+
+    /**
+     * Adds a 'where member' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function whereMember($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->whereEquals($attribute, $dn);
+        }, 'member', $nested);
+    }
+
+    /**
+     * Adds an 'or where member' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function orWhereMember($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->orWhereEquals($attribute, $dn);
+        }, 'member', $nested);
+    }
+
+    /**
+     * Adds a 'where member of' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function whereMemberOf($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->whereEquals($attribute, $dn);
+        }, 'memberof', $nested);
+    }
+
+    /**
+     * Adds a 'where not member of' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function whereNotMemberof($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->whereNotEquals($attribute, $dn);
+        }, 'memberof', $nested);
+    }
+
+    /**
+     * Adds an 'or where member of' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function orWhereMemberOf($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->orWhereEquals($attribute, $dn);
+        }, 'memberof', $nested);
+    }
+
+    /**
+     * Adds a 'or where not member of' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function orWhereNotMemberof($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->orWhereNotEquals($attribute, $dn);
+        }, 'memberof', $nested);
+    }
+
+    /**
+     * Adds a 'where manager' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function whereManager($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->whereEquals($attribute, $dn);
+        }, 'manager', $nested);
+    }
+
+    /**
+     * Adds a 'where not manager' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function whereNotManager($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->whereNotEquals($attribute, $dn);
+        }, 'manager', $nested);
+    }
+
+    /**
+     * Adds an 'or where manager' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function orWhereManager($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->orWhereEquals($attribute, $dn);
+        }, 'manager', $nested);
+    }
+
+    /**
+     * Adds an 'or where not manager' filter to the current query.
+     *
+     * @param string $dn
+     * @param bool   $nested
+     *
+     * @return $this
+     */
+    public function orWhereNotManager($dn, $nested = false)
+    {
+        return $this->nestedMatchQuery(function ($attribute) use ($dn) {
+            return $this->orWhereNotEquals($attribute, $dn);
+        }, 'manager', $nested);
+    }
+
+    /**
+     * Execute the callback with a nested match attribute.
+     *
+     * @param Closure $callback
+     * @param string  $attribute
+     * @param bool    $nested
+     *
+     * @return $this
+     */
+    protected function nestedMatchQuery(Closure $callback, $attribute, $nested = false)
+    {
+        return $callback(
+            $nested ? $this->makeNestedMatchAttribute($attribute) : $attribute
+        );
+    }
+
+    /**
+     * Make a "nested match" filter attribute for querying descendants.
+     *
+     * @param string $attribute
+     *
+     * @return string
+     */
+    protected function makeNestedMatchAttribute($attribute)
+    {
+        return sprintf('%s:%s:', $attribute, LdapInterface::OID_MATCHING_RULE_IN_CHAIN);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/Builder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/Builder.php
new file mode 100644
index 0000000..eed5e91
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/Builder.php
@@ -0,0 +1,446 @@
+<?php
+
+namespace LdapRecord\Query\Model;
+
+use Closure;
+use DateTime;
+use LdapRecord\Models\Model;
+use LdapRecord\Models\ModelNotFoundException;
+use LdapRecord\Models\Scope;
+use LdapRecord\Models\Types\ActiveDirectory;
+use LdapRecord\Query\Builder as BaseBuilder;
+use LdapRecord\Utilities;
+
+class Builder extends BaseBuilder
+{
+    /**
+     * The model being queried.
+     *
+     * @var Model
+     */
+    protected $model;
+
+    /**
+     * The global scopes to be applied.
+     *
+     * @var array
+     */
+    protected $scopes = [];
+
+    /**
+     * The removed global scopes.
+     *
+     * @var array
+     */
+    protected $removedScopes = [];
+
+    /**
+     * The applied global scopes.
+     *
+     * @var array
+     */
+    protected $appliedScopes = [];
+
+    /**
+     * Dynamically handle calls into the query instance.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        if (method_exists($this->model, $scope = 'scope'.ucfirst($method))) {
+            return $this->callScope([$this->model, $scope], $parameters);
+        }
+
+        return parent::__call($method, $parameters);
+    }
+
+    /**
+     * Apply the given scope on the current builder instance.
+     *
+     * @param callable $scope
+     * @param array    $parameters
+     *
+     * @return mixed
+     */
+    protected function callScope(callable $scope, $parameters = [])
+    {
+        array_unshift($parameters, $this);
+
+        return $scope(...array_values($parameters)) ?? $this;
+    }
+
+    /**
+     * Get the attributes to select on the search.
+     *
+     * @return array
+     */
+    public function getSelects()
+    {
+        // Here we will ensure the models GUID attribute is always
+        // selected. In some LDAP directories, the attribute is
+        // virtual and must be requested for specifically.
+        return array_values(array_unique(
+            array_merge([$this->model->getGuidKey()], parent::getSelects())
+        ));
+    }
+
+    /**
+     * Set the model instance for the model being queried.
+     *
+     * @param Model $model
+     *
+     * @return $this
+     */
+    public function setModel(Model $model)
+    {
+        $this->model = $model;
+
+        return $this;
+    }
+
+    /**
+     * Returns the model being queried for.
+     *
+     * @return Model
+     */
+    public function getModel()
+    {
+        return $this->model;
+    }
+
+    /**
+     * Get a new model query builder instance.
+     *
+     * @param string|null $baseDn
+     *
+     * @return static
+     */
+    public function newInstance($baseDn = null)
+    {
+        return parent::newInstance($baseDn)->model($this->model);
+    }
+
+    /**
+     * Finds a model by its distinguished name.
+     *
+     * @param array|string          $dn
+     * @param array|string|string[] $columns
+     *
+     * @return Model|\LdapRecord\Query\Collection|static|null
+     */
+    public function find($dn, $columns = ['*'])
+    {
+        return $this->afterScopes(function () use ($dn, $columns) {
+            return parent::find($dn, $columns);
+        });
+    }
+
+    /**
+     * Finds a record using ambiguous name resolution.
+     *
+     * @param string|array $value
+     * @param array|string $columns
+     *
+     * @return Model|\LdapRecord\Query\Collection|static|null
+     */
+    public function findByAnr($value, $columns = ['*'])
+    {
+        if (is_array($value)) {
+            return $this->findManyByAnr($value, $columns);
+        }
+
+        // If the model is not compatible with ANR filters,
+        // we must construct an equivalent filter that
+        // the current LDAP server does support.
+        if (! $this->modelIsCompatibleWithAnr()) {
+            return $this->prepareAnrEquivalentQuery($value)->first($columns);
+        }
+
+        return $this->findBy('anr', $value, $columns);
+    }
+
+    /**
+     * Determine if the current model is compatible with ANR filters.
+     *
+     * @return bool
+     */
+    protected function modelIsCompatibleWithAnr()
+    {
+        return $this->model instanceof ActiveDirectory;
+    }
+
+    /**
+     * Finds a record using ambiguous name resolution.
+     *
+     * If a record is not found, an exception is thrown.
+     *
+     * @param string       $value
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model
+     */
+    public function findByAnrOrFail($value, $columns = ['*'])
+    {
+        if (! $entry = $this->findByAnr($value, $columns)) {
+            $this->throwNotFoundException($this->getUnescapedQuery(), $this->dn);
+        }
+
+        return $entry;
+    }
+
+    /**
+     * Throws a not found exception.
+     *
+     * @param string $query
+     * @param string $dn
+     *
+     * @throws ModelNotFoundException
+     */
+    protected function throwNotFoundException($query, $dn)
+    {
+        throw ModelNotFoundException::forQuery($query, $dn);
+    }
+
+    /**
+     * Finds multiple records using ambiguous name resolution.
+     *
+     * @param array $values
+     * @param array $columns
+     *
+     * @return \LdapRecord\Query\Collection
+     */
+    public function findManyByAnr(array $values = [], $columns = ['*'])
+    {
+        $this->select($columns);
+
+        if (! $this->modelIsCompatibleWithAnr()) {
+            foreach ($values as $value) {
+                $this->prepareAnrEquivalentQuery($value);
+            }
+
+            return $this->get($columns);
+        }
+
+        return $this->findManyBy('anr', $values);
+    }
+
+    /**
+     * Creates an ANR equivalent query for LDAP distributions that do not support ANR.
+     *
+     * @param string $value
+     *
+     * @return $this
+     */
+    protected function prepareAnrEquivalentQuery($value)
+    {
+        return $this->orFilter(function (self $query) use ($value) {
+            foreach ($this->model->getAnrAttributes() as $attribute) {
+                $query->whereEquals($attribute, $value);
+            }
+        });
+    }
+
+    /**
+     * Finds a record by its string GUID.
+     *
+     * @param string       $guid
+     * @param array|string $columns
+     *
+     * @return Model|static|null
+     */
+    public function findByGuid($guid, $columns = ['*'])
+    {
+        try {
+            return $this->findByGuidOrFail($guid, $columns);
+        } catch (ModelNotFoundException $e) {
+            return;
+        }
+    }
+
+    /**
+     * Finds a record by its string GUID.
+     *
+     * Fails upon no records returned.
+     *
+     * @param string       $guid
+     * @param array|string $columns
+     *
+     * @throws ModelNotFoundException
+     *
+     * @return Model|static
+     */
+    public function findByGuidOrFail($guid, $columns = ['*'])
+    {
+        if ($this->model instanceof ActiveDirectory) {
+            $guid = Utilities::stringGuidToHex($guid);
+        }
+
+        return $this->whereRaw([
+            $this->model->getGuidKey() => $guid,
+        ])->firstOrFail($columns);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getQuery()
+    {
+        return $this->afterScopes(function () {
+            return parent::getQuery();
+        });
+    }
+
+    /**
+     * Apply the query scopes and execute the callback.
+     *
+     * @param Closure $callback
+     *
+     * @return mixed
+     */
+    protected function afterScopes(Closure $callback)
+    {
+        $this->applyScopes();
+
+        return $callback();
+    }
+
+    /**
+     * Apply the global query scopes.
+     *
+     * @return $this
+     */
+    public function applyScopes()
+    {
+        if (! $this->scopes) {
+            return $this;
+        }
+
+        foreach ($this->scopes as $identifier => $scope) {
+            if (isset($this->appliedScopes[$identifier])) {
+                continue;
+            }
+
+            $scope instanceof Scope
+                ? $scope->apply($this, $this->getModel())
+                : $scope($this);
+
+            $this->appliedScopes[$identifier] = $scope;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Register a new global scope.
+     *
+     * @param string         $identifier
+     * @param Scope|\Closure $scope
+     *
+     * @return $this
+     */
+    public function withGlobalScope($identifier, $scope)
+    {
+        $this->scopes[$identifier] = $scope;
+
+        return $this;
+    }
+
+    /**
+     * Remove a registered global scope.
+     *
+     * @param Scope|string $scope
+     *
+     * @return $this
+     */
+    public function withoutGlobalScope($scope)
+    {
+        if (! is_string($scope)) {
+            $scope = get_class($scope);
+        }
+
+        unset($this->scopes[$scope]);
+
+        $this->removedScopes[] = $scope;
+
+        return $this;
+    }
+
+    /**
+     * Remove all or passed registered global scopes.
+     *
+     * @param array|null $scopes
+     *
+     * @return $this
+     */
+    public function withoutGlobalScopes(array $scopes = null)
+    {
+        if (! is_array($scopes)) {
+            $scopes = array_keys($this->scopes);
+        }
+
+        foreach ($scopes as $scope) {
+            $this->withoutGlobalScope($scope);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Get an array of global scopes that were removed from the query.
+     *
+     * @return array
+     */
+    public function removedScopes()
+    {
+        return $this->removedScopes;
+    }
+
+    /**
+     * Get an array of the global scopes that were applied to the query.
+     *
+     * @return array
+     */
+    public function appliedScopes()
+    {
+        return $this->appliedScopes;
+    }
+
+    /**
+     * Processes and converts the given LDAP results into models.
+     *
+     * @param array $results
+     *
+     * @return \LdapRecord\Query\Collection
+     */
+    protected function process(array $results)
+    {
+        return $this->model->hydrate(parent::process($results));
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function prepareWhereValue($field, $value, $raw = false)
+    {
+        if ($value instanceof DateTime) {
+            $field = $this->model->normalizeAttributeKey($field);
+
+            if (! $this->model->isDateAttribute($field)) {
+                throw new \UnexpectedValueException(
+                    "Cannot convert field [$field] to an LDAP timestamp. You must add this field as a model date."
+                    .' Refer to https://ldaprecord.com/docs/model-mutators/#date-mutators'
+                );
+            }
+
+            $value = $this->model->fromDateTime($this->model->getDates()[$field], $value);
+        }
+
+        return parent::prepareWhereValue($field, $value, $raw);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/FreeIpaBuilder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/FreeIpaBuilder.php
new file mode 100644
index 0000000..5e3d43f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/FreeIpaBuilder.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace LdapRecord\Query\Model;
+
+class FreeIpaBuilder extends Builder
+{
+    /**
+     * Adds a enabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereEnabled()
+    {
+        return $this->rawFilter('(!(pwdAccountLockedTime=*))');
+    }
+
+    /**
+     * Adds a disabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereDisabled()
+    {
+        return $this->rawFilter('(pwdAccountLockedTime=*)');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/OpenLdapBuilder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/OpenLdapBuilder.php
new file mode 100644
index 0000000..dd41344
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Model/OpenLdapBuilder.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace LdapRecord\Query\Model;
+
+class OpenLdapBuilder extends Builder
+{
+    /**
+     * Adds a enabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereEnabled()
+    {
+        return $this->rawFilter('(!(pwdAccountLockedTime=*))');
+    }
+
+    /**
+     * Adds a disabled filter to the current query.
+     *
+     * @return $this
+     */
+    public function whereDisabled()
+    {
+        return $this->rawFilter('(pwdAccountLockedTime=*)');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ObjectNotFoundException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ObjectNotFoundException.php
new file mode 100644
index 0000000..b2dec28
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/ObjectNotFoundException.php
@@ -0,0 +1,52 @@
+<?php
+
+namespace LdapRecord\Query;
+
+use LdapRecord\LdapRecordException;
+
+class ObjectNotFoundException extends LdapRecordException
+{
+    /**
+     * The query filter that was used.
+     *
+     * @var string
+     */
+    protected $query;
+
+    /**
+     * The base DN of the query that was used.
+     *
+     * @var string
+     */
+    protected $baseDn;
+
+    /**
+     * Create a new exception for the executed filter.
+     *
+     * @param string $query
+     * @param null   $baseDn
+     *
+     * @return static
+     */
+    public static function forQuery($query, $baseDn = null)
+    {
+        return (new static())->setQuery($query, $baseDn);
+    }
+
+    /**
+     * Set the query that was used.
+     *
+     * @param string      $query
+     * @param string|null $baseDn
+     *
+     * @return $this
+     */
+    public function setQuery($query, $baseDn = null)
+    {
+        $this->query = $query;
+        $this->baseDn = $baseDn;
+        $this->message = "No LDAP query results for filter: [$query] in: [$baseDn]";
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/AbstractPaginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/AbstractPaginator.php
new file mode 100644
index 0000000..3dfd3f1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/AbstractPaginator.php
@@ -0,0 +1,122 @@
+<?php
+
+namespace LdapRecord\Query\Pagination;
+
+use LdapRecord\LdapInterface;
+use LdapRecord\Query\Builder;
+
+abstract class AbstractPaginator
+{
+    /**
+     * The query builder instance.
+     *
+     * @var Builder
+     */
+    protected $query;
+
+    /**
+     * The filter to execute.
+     *
+     * @var string
+     */
+    protected $filter;
+
+    /**
+     * The amount of objects to fetch per page.
+     *
+     * @var int
+     */
+    protected $perPage;
+
+    /**
+     * Whether the operation is critical.
+     *
+     * @var bool
+     */
+    protected $isCritical;
+
+    /**
+     * Constructor.
+     *
+     * @param Builder $query
+     */
+    public function __construct(Builder $query, $filter, $perPage, $isCritical)
+    {
+        $this->query = $query;
+        $this->filter = $filter;
+        $this->perPage = $perPage;
+        $this->isCritical = $isCritical;
+    }
+
+    /**
+     * Execute the pagination request.
+     *
+     * @param LdapInterface $ldap
+     *
+     * @return array
+     */
+    public function execute(LdapInterface $ldap)
+    {
+        $pages = [];
+
+        $this->prepareServerControls();
+
+        do {
+            $this->applyServerControls($ldap);
+
+            if (! $resource = $this->query->run($this->filter)) {
+                break;
+            }
+
+            $this->updateServerControls($ldap, $resource);
+
+            $pages[] = $this->query->parse($resource);
+        } while (! empty($this->fetchCookie()));
+
+        $this->resetServerControls($ldap);
+
+        return $pages;
+    }
+
+    /**
+     * Fetch the pagination cookie.
+     *
+     * @return string
+     */
+    abstract protected function fetchCookie();
+
+    /**
+     * Prepare the server controls before executing the pagination request.
+     *
+     * @return void
+     */
+    abstract protected function prepareServerControls();
+
+    /**
+     * Apply the server controls.
+     *
+     * @param LdapInterface $ldap
+     *
+     * @return void
+     */
+    abstract protected function applyServerControls(LdapInterface $ldap);
+
+    /**
+     * Reset the server controls.
+     *
+     * @param LdapInterface $ldap
+     *
+     * @return mixed
+     */
+    abstract protected function resetServerControls(LdapInterface $ldap);
+
+    /**
+     * Update the server controls.
+     *
+     * @param LdapInterface $ldap
+     * @param resource      $resource
+     *
+     * @return void
+     */
+    abstract protected function updateServerControls(LdapInterface $ldap, $resource);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/DeprecatedPaginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/DeprecatedPaginator.php
new file mode 100644
index 0000000..b4a7f8d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/DeprecatedPaginator.php
@@ -0,0 +1,58 @@
+<?php
+
+namespace LdapRecord\Query\Pagination;
+
+use LdapRecord\LdapInterface;
+
+/**
+ * @deprecated since v2.5.0
+ */
+class DeprecatedPaginator extends AbstractPaginator
+{
+    /**
+     * The pagination cookie.
+     *
+     * @var string
+     */
+    protected $cookie = '';
+
+    /**
+     * @inheritdoc
+     */
+    protected function fetchCookie()
+    {
+        return $this->cookie;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function prepareServerControls()
+    {
+        $this->cookie = '';
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function applyServerControls(LdapInterface $ldap)
+    {
+        $ldap->controlPagedResult($this->perPage, $this->isCritical, $this->cookie);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function updateServerControls(LdapInterface $ldap, $resource)
+    {
+        $ldap->controlPagedResultResponse($resource, $this->cookie);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function resetServerControls(LdapInterface $ldap)
+    {
+        $ldap->controlPagedResult();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/LazyPaginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/LazyPaginator.php
new file mode 100644
index 0000000..2974b8f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/LazyPaginator.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace LdapRecord\Query\Pagination;
+
+use LdapRecord\LdapInterface;
+
+class LazyPaginator extends Paginator
+{
+    /**
+     * Execute the pagination request.
+     *
+     * @param LdapInterface $ldap
+     *
+     * @return Generator
+     */
+    public function execute(LdapInterface $ldap)
+    {
+        $this->prepareServerControls();
+
+        do {
+            $this->applyServerControls($ldap);
+
+            if (! $resource = $this->query->run($this->filter)) {
+                break;
+            }
+
+            $this->updateServerControls($ldap, $resource);
+
+            yield $this->query->parse($resource);
+        } while (! empty($this->fetchCookie()));
+
+        $this->resetServerControls($ldap);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/Paginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/Paginator.php
new file mode 100644
index 0000000..9ab6e67
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Query/Pagination/Paginator.php
@@ -0,0 +1,71 @@
+<?php
+
+namespace LdapRecord\Query\Pagination;
+
+use LdapRecord\LdapInterface;
+
+class Paginator extends AbstractPaginator
+{
+    /**
+     * @inheritdoc
+     */
+    protected function fetchCookie()
+    {
+        return $this->query->controls[LDAP_CONTROL_PAGEDRESULTS]['value']['cookie'] ?? null;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function prepareServerControls()
+    {
+        $this->query->addControl(LDAP_CONTROL_PAGEDRESULTS, $this->isCritical, [
+            'size' => $this->perPage, 'cookie' => '',
+        ]);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function applyServerControls(LdapInterface $ldap)
+    {
+        $ldap->setOption(LDAP_OPT_SERVER_CONTROLS, $this->query->controls);
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function updateServerControls(LdapInterface $ldap, $resource)
+    {
+        $errorCode = $dn = $errorMessage = $refs = null;
+
+        $ldap->parseResult(
+            $resource,
+            $errorCode,
+            $dn,
+            $errorMessage,
+            $refs,
+            $this->query->controls
+        );
+
+        $this->resetPageSize();
+    }
+
+    /**
+     * Reset the page control page size.
+     *
+     * @return void
+     */
+    protected function resetPageSize()
+    {
+        $this->query->controls[LDAP_CONTROL_PAGEDRESULTS]['value']['size'] = $this->perPage;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    protected function resetServerControls(LdapInterface $ldap)
+    {
+        $this->query->controls = [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Arr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Arr.php
new file mode 100644
index 0000000..8fa87a2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Arr.php
@@ -0,0 +1,139 @@
+<?php
+
+namespace LdapRecord\Support;
+
+use ArrayAccess;
+
+class Arr
+{
+    /**
+     * Determine whether the given value is array accessible.
+     *
+     * @param mixed $value
+     *
+     * @return bool
+     */
+    public static function accessible($value)
+    {
+        return is_array($value) || $value instanceof ArrayAccess;
+    }
+
+    /**
+     * Determine if the given key exists in the provided array.
+     *
+     * @param \ArrayAccess|array $array
+     * @param string|int         $key
+     *
+     * @return bool
+     */
+    public static function exists($array, $key)
+    {
+        if ($array instanceof ArrayAccess) {
+            return $array->offsetExists($key);
+        }
+
+        return array_key_exists($key, $array);
+    }
+
+    /**
+     * If the given value is not an array and not null, wrap it in one.
+     *
+     * @param mixed $value
+     *
+     * @return array
+     */
+    public static function wrap($value)
+    {
+        if (is_null($value)) {
+            return [];
+        }
+
+        return is_array($value) ? $value : [$value];
+    }
+
+    /**
+     * Return the first element in an array passing a given truth test.
+     *
+     * @param iterable      $array
+     * @param callable|null $callback
+     * @param mixed         $default
+     *
+     * @return mixed
+     */
+    public static function first($array, callable $callback = null, $default = null)
+    {
+        if (is_null($callback)) {
+            if (empty($array)) {
+                return Helpers::value($default);
+            }
+
+            foreach ($array as $item) {
+                return $item;
+            }
+        }
+
+        foreach ($array as $key => $value) {
+            if ($callback($value, $key)) {
+                return $value;
+            }
+        }
+
+        return Helpers::value($default);
+    }
+
+    /**
+     * Return the last element in an array passing a given truth test.
+     *
+     * @param array         $array
+     * @param callable|null $callback
+     * @param mixed         $default
+     *
+     * @return mixed
+     */
+    public static function last($array, callable $callback = null, $default = null)
+    {
+        if (is_null($callback)) {
+            return empty($array) ? Helpers::value($default) : end($array);
+        }
+
+        return static::first(array_reverse($array, true), $callback, $default);
+    }
+
+    /**
+     * Get an item from an array using "dot" notation.
+     *
+     * @param ArrayAccess|array $array
+     * @param string|int|null   $key
+     * @param mixed             $default
+     *
+     * @return mixed
+     */
+    public static function get($array, $key, $default = null)
+    {
+        if (! static::accessible($array)) {
+            return Helpers::value($default);
+        }
+
+        if (is_null($key)) {
+            return $array;
+        }
+
+        if (static::exists($array, $key)) {
+            return $array[$key];
+        }
+
+        if (strpos($key, '.') === false) {
+            return $array[$key] ?? Helpers::value($default);
+        }
+
+        foreach (explode('.', $key) as $segment) {
+            if (static::accessible($array) && static::exists($array, $segment)) {
+                $array = $array[$segment];
+            } else {
+                return Helpers::value($default);
+            }
+        }
+
+        return $array;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Helpers.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Helpers.php
new file mode 100644
index 0000000..a55d1d2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Support/Helpers.php
@@ -0,0 +1,20 @@
+<?php
+
+namespace LdapRecord\Support;
+
+use Closure;
+
+class Helpers
+{
+    /**
+     * Return the default value of the given value.
+     *
+     * @param mixed $value
+     *
+     * @return mixed
+     */
+    public static function value($value)
+    {
+        return $value instanceof Closure ? $value() : $value;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/AuthGuardFake.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/AuthGuardFake.php
new file mode 100644
index 0000000..4a69150
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/AuthGuardFake.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace LdapRecord\Testing;
+
+use LdapRecord\Auth\Guard;
+
+class AuthGuardFake extends Guard
+{
+    /**
+     * Always allow binding as configured user.
+     *
+     * @return bool
+     */
+    public function bindAsConfiguredUser()
+    {
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/ConnectionFake.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/ConnectionFake.php
new file mode 100644
index 0000000..0aa12a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/ConnectionFake.php
@@ -0,0 +1,97 @@
+<?php
+
+namespace LdapRecord\Testing;
+
+use LdapRecord\Auth\Guard;
+use LdapRecord\Connection;
+use LdapRecord\Models\Model;
+
+class ConnectionFake extends Connection
+{
+    /**
+     * The underlying fake LDAP connection.
+     *
+     * @var LdapFake
+     */
+    protected $ldap;
+
+    /**
+     * Whether the fake is connected.
+     *
+     * @var bool
+     */
+    protected $connected = false;
+
+    /**
+     * Make a new fake LDAP connection instance.
+     *
+     * @param array  $config
+     * @param string $ldap
+     *
+     * @return static
+     */
+    public static function make(array $config = [], $ldap = LdapFake::class)
+    {
+        $connection = new static($config, new $ldap());
+
+        $connection->configure();
+
+        return $connection;
+    }
+
+    /**
+     * Set the user to authenticate as.
+     *
+     * @param Model|string $user
+     *
+     * @return $this
+     */
+    public function actingAs($user)
+    {
+        $this->ldap->shouldAuthenticateWith(
+            $user instanceof Model ? $user->getDn() : $user
+        );
+
+        return $this;
+    }
+
+    /**
+     * Set the connection to bypass bind attempts as the configured user.
+     *
+     * @return $this
+     */
+    public function shouldBeConnected()
+    {
+        $this->connected = true;
+
+        $this->authGuardResolver = function () {
+            return new AuthGuardFake($this->ldap, $this->configuration);
+        };
+
+        return $this;
+    }
+
+    /**
+     * Set the connection to attempt binding as the configured user.
+     *
+     * @return $this
+     */
+    public function shouldNotBeConnected()
+    {
+        $this->connected = false;
+
+        $this->authGuardResolver = function () {
+            return new Guard($this->ldap, $this->configuration);
+        };
+
+        return $this;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isConnected()
+    {
+        return $this->connected ?: parent::isConnected();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/DirectoryFake.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/DirectoryFake.php
new file mode 100644
index 0000000..70640af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/DirectoryFake.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace LdapRecord\Testing;
+
+use LdapRecord\Container;
+
+class DirectoryFake
+{
+    /**
+     * Setup the fake connection.
+     *
+     * @param string|null $name
+     *
+     * @throws \LdapRecord\ContainerException
+     *
+     * @return ConnectionFake
+     */
+    public static function setup($name = null)
+    {
+        $connection = Container::getConnection($name);
+
+        $fake = static::makeConnectionFake(
+            $connection->getConfiguration()->all()
+        );
+
+        // Replace the connection with a fake.
+        Container::addConnection($fake, $name);
+
+        return $fake;
+    }
+
+    /**
+     * Reset the container.
+     *
+     * @return void
+     */
+    public static function tearDown()
+    {
+        Container::reset();
+    }
+
+    /**
+     * Make a connection fake.
+     *
+     * @param array $config
+     *
+     * @return ConnectionFake
+     */
+    public static function makeConnectionFake(array $config = [])
+    {
+        return ConnectionFake::make($config)->shouldBeConnected();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapExpectation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapExpectation.php
new file mode 100644
index 0000000..90a5fa2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapExpectation.php
@@ -0,0 +1,303 @@
+<?php
+
+namespace LdapRecord\Testing;
+
+use LdapRecord\LdapRecordException;
+use PHPUnit\Framework\Constraint\Constraint;
+use PHPUnit\Framework\Constraint\IsEqual;
+use UnexpectedValueException;
+
+class LdapExpectation
+{
+    /**
+     * The value to return from the expectation.
+     *
+     * @var mixed
+     */
+    protected $value;
+
+    /**
+     * The exception to throw from the expectation.
+     *
+     * @var null|LdapRecordException|\Exception
+     */
+    protected $exception;
+
+    /**
+     * The amount of times the expectation should be called.
+     *
+     * @var int
+     */
+    protected $count = 1;
+
+    /**
+     * The method that the expectation belongs to.
+     *
+     * @var string
+     */
+    protected $method;
+
+    /**
+     * The methods argument's.
+     *
+     * @var array
+     */
+    protected $args = [];
+
+    /**
+     * Whether the same expectation should be returned indefinitely.
+     *
+     * @var bool
+     */
+    protected $indefinitely = true;
+
+    /**
+     * Whether the expectation should return errors.
+     *
+     * @var bool
+     */
+    protected $errors = false;
+
+    /**
+     * The error number to return.
+     *
+     * @var int
+     */
+    protected $errorCode = 1;
+
+    /**
+     * The last error string to return.
+     *
+     * @var string
+     */
+    protected $errorMessage = '';
+
+    /**
+     * The diagnostic message string to return.
+     *
+     * @var string
+     */
+    protected $errorDiagnosticMessage = '';
+
+    /**
+     * Constructor.
+     *
+     * @param string $method
+     */
+    public function __construct($method)
+    {
+        $this->method = $method;
+    }
+
+    /**
+     * Set the arguments that the operation should receive.
+     *
+     * @param mixed $args
+     *
+     * @return $this
+     */
+    public function with($args)
+    {
+        $args = is_array($args) ? $args : func_get_args();
+
+        foreach ($args as $key => $arg) {
+            if (! $arg instanceof Constraint) {
+                $args[$key] = new IsEqual($arg);
+            }
+        }
+
+        $this->args = $args;
+
+        return $this;
+    }
+
+    /**
+     * Set the expected value to return.
+     *
+     * @param mixed $value
+     *
+     * @return $this
+     */
+    public function andReturn($value)
+    {
+        $this->value = $value;
+
+        return $this;
+    }
+
+    /**
+     * The error message to return from the expectation.
+     *
+     * @param int    $code
+     * @param string $error
+     * @param string $diagnosticMessage
+     *
+     * @return $this
+     */
+    public function andReturnError($code = 1, $error = '', $diagnosticMessage = '')
+    {
+        $this->errors = true;
+
+        $this->errorCode = $code;
+        $this->errorMessage = $error;
+        $this->errorDiagnosticMessage = $diagnosticMessage;
+
+        return $this;
+    }
+
+    /**
+     * Set the expected exception to throw.
+     *
+     * @param string|\Exception|LdapRecordException $exception
+     *
+     * @return $this
+     */
+    public function andThrow($exception)
+    {
+        if (is_string($exception)) {
+            $exception = new LdapRecordException($exception);
+        }
+
+        $this->exception = $exception;
+
+        return $this;
+    }
+
+    /**
+     * Set the expectation to be only called once.
+     *
+     * @return $this
+     */
+    public function once()
+    {
+        return $this->times(1);
+    }
+
+    /**
+     * Set the expectation to be only called twice.
+     *
+     * @return $this
+     */
+    public function twice()
+    {
+        return $this->times(2);
+    }
+
+    /**
+     * Set the expectation to be called the given number of times.
+     *
+     * @param int $count
+     *
+     * @return $this
+     */
+    public function times($count = 1)
+    {
+        $this->indefinitely = false;
+
+        $this->count = $count;
+
+        return $this;
+    }
+
+    /**
+     * Get the method the expectation belongs to.
+     *
+     * @return string
+     */
+    public function getMethod()
+    {
+        if (is_null($this->method)) {
+            throw new UnexpectedValueException('An expectation must have a method.');
+        }
+
+        return $this->method;
+    }
+
+    /**
+     * Get the expected call count.
+     *
+     * @return int
+     */
+    public function getExpectedCount()
+    {
+        return $this->count;
+    }
+
+    /**
+     * Get the expected arguments.
+     *
+     * @return Constraint[]
+     */
+    public function getExpectedArgs()
+    {
+        return $this->args;
+    }
+
+    /**
+     * Get the expected exception.
+     *
+     * @return null|\Exception|LdapRecordException
+     */
+    public function getExpectedException()
+    {
+        return $this->exception;
+    }
+
+    /**
+     * Get the expected value.
+     *
+     * @return mixed
+     */
+    public function getExpectedValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * Determine whether the expectation is returning an error.
+     *
+     * @return bool
+     */
+    public function isReturningError()
+    {
+        return $this->errors;
+    }
+
+    /**
+     * @return int
+     */
+    public function getExpectedErrorCode()
+    {
+        return $this->errorCode;
+    }
+
+    /**
+     * @return string
+     */
+    public function getExpectedErrorMessage()
+    {
+        return $this->errorMessage;
+    }
+
+    /**
+     * @return string
+     */
+    public function getExpectedErrorDiagnosticMessage()
+    {
+        return $this->errorDiagnosticMessage;
+    }
+
+    /**
+     * Decrement the call count of the expectation.
+     *
+     * @return $this
+     */
+    public function decrementCallCount()
+    {
+        if (! $this->indefinitely) {
+            $this->count -= 1;
+        }
+
+        return $this;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapFake.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapFake.php
new file mode 100644
index 0000000..7ba0e15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Testing/LdapFake.php
@@ -0,0 +1,525 @@
+<?php
+
+namespace LdapRecord\Testing;
+
+use Exception;
+use LdapRecord\DetailedError;
+use LdapRecord\DetectsErrors;
+use LdapRecord\HandlesConnection;
+use LdapRecord\LdapInterface;
+use LdapRecord\Support\Arr;
+use PHPUnit\Framework\Assert as PHPUnit;
+use PHPUnit\Framework\Constraint\Constraint;
+
+class LdapFake implements LdapInterface
+{
+    use HandlesConnection, DetectsErrors;
+
+    /**
+     * The expectations of the LDAP fake.
+     *
+     * @var array
+     */
+    protected $expectations = [];
+
+    /**
+     * The default fake error number.
+     *
+     * @var int
+     */
+    protected $errNo = 1;
+
+    /**
+     * The default fake last error string.
+     *
+     * @var string
+     */
+    protected $lastError = '';
+
+    /**
+     * The default fake diagnostic message string.
+     *
+     * @var string
+     */
+    protected $diagnosticMessage = '';
+
+    /**
+     * Create a new expected operation.
+     *
+     * @param string $method
+     *
+     * @return LdapExpectation
+     */
+    public static function operation($method)
+    {
+        return new LdapExpectation($method);
+    }
+
+    /**
+     * Set the user that will pass binding.
+     *
+     * @param string $dn
+     *
+     * @return $this
+     */
+    public function shouldAuthenticateWith($dn)
+    {
+        return $this->expect(
+            static::operation('bind')->with($dn, PHPUnit::anything())->andReturn(true)
+        );
+    }
+
+    /**
+     * Add an LDAP method expectation.
+     *
+     * @param LdapExpectation|array $expectations
+     *
+     * @return $this
+     */
+    public function expect($expectations = [])
+    {
+        $expectations = Arr::wrap($expectations);
+
+        foreach ($expectations as $key => $expectation) {
+            // If the key is non-numeric, we will assume
+            // that the string is the method name and
+            // the expectation is the return value.
+            if (! is_numeric($key)) {
+                $expectation = static::operation($key)->andReturn($expectation);
+            }
+
+            if (! $expectation instanceof LdapExpectation) {
+                $expectation = static::operation($expectation);
+            }
+
+            $this->expectations[$expectation->getMethod()][] = $expectation;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Determine if the method has any expectations.
+     *
+     * @param string $method
+     *
+     * @return bool
+     */
+    public function hasExpectations($method)
+    {
+        return count($this->getExpectations($method)) > 0;
+    }
+
+    /**
+     * Get expectations by method.
+     *
+     * @param string $method
+     *
+     * @return LdapExpectation[]|mixed
+     */
+    public function getExpectations($method)
+    {
+        return $this->expectations[$method] ?? [];
+    }
+
+    /**
+     * Remove an expectation by method and key.
+     *
+     * @param string $method
+     * @param int    $key
+     *
+     * @return void
+     */
+    public function removeExpectation($method, $key)
+    {
+        unset($this->expectations[$method][$key]);
+    }
+
+    /**
+     * Set the error number of a failed bind attempt.
+     *
+     * @param int $number
+     *
+     * @return $this
+     */
+    public function shouldReturnErrorNumber($number = 1)
+    {
+        $this->errNo = $number;
+
+        return $this;
+    }
+
+    /**
+     * Set the last error of a failed bind attempt.
+     *
+     * @param string $message
+     *
+     * @return $this
+     */
+    public function shouldReturnError($message = '')
+    {
+        $this->lastError = $message;
+
+        return $this;
+    }
+
+    /**
+     * Set the diagnostic message of a failed bind attempt.
+     *
+     * @param string $message
+     *
+     * @return $this
+     */
+    public function shouldReturnDiagnosticMessage($message = '')
+    {
+        $this->diagnosticMessage = $message;
+
+        return $this;
+    }
+
+    /**
+     * Return a fake error number.
+     *
+     * @return int
+     */
+    public function errNo()
+    {
+        return $this->errNo;
+    }
+
+    /**
+     * Return a fake error.
+     *
+     * @return string
+     */
+    public function getLastError()
+    {
+        return $this->lastError;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getDiagnosticMessage()
+    {
+        return $this->diagnosticMessage;
+    }
+
+    /**
+     * Return a fake detailed error.
+     *
+     * @return DetailedError
+     */
+    public function getDetailedError()
+    {
+        return new DetailedError(
+            $this->errNo(),
+            $this->getLastError(),
+            $this->getDiagnosticMessage()
+        );
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getEntries($searchResults)
+    {
+        return $searchResults;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isUsingSSL()
+    {
+        return $this->hasExpectations('isUsingSSL')
+            ? $this->resolveExpectation('isUsingSSL')
+            : $this->useSSL;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isUsingTLS()
+    {
+        return $this->hasExpectations('isUsingTLS')
+            ? $this->resolveExpectation('isUsingTLS')
+            : $this->useTLS;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function isBound()
+    {
+        return $this->hasExpectations('isBound')
+            ? $this->resolveExpectation('isBound')
+            : $this->bound;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function setOption($option, $value)
+    {
+        return $this->hasExpectations('setOption')
+            ? $this->resolveExpectation('setOption', func_get_args())
+            : true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function getOption($option, &$value = null)
+    {
+        return $this->resolveExpectation('getOption', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function startTLS()
+    {
+        return $this->resolveExpectation('startTLS', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function connect($hosts = [], $port = 389)
+    {
+        $this->bound = false;
+
+        $this->host = $this->makeConnectionUris($hosts, $port);
+
+        return $this->connection = $this->hasExpectations('connect')
+            ? $this->resolveExpectation('connect', func_get_args())
+            : true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function close()
+    {
+        $this->connection = null;
+        $this->bound = false;
+        $this->host = null;
+
+        return $this->hasExpectations('close')
+            ? $this->resolveExpectation('close')
+            : true;
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function bind($username, $password)
+    {
+        return $this->bound = $this->resolveExpectation('bind', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function search($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->resolveExpectation('search', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function listing($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->resolveExpectation('listing', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function read($dn, $filter, array $fields, $onlyAttributes = false, $size = 0, $time = 0, $deref = null, $serverControls = [])
+    {
+        return $this->resolveExpectation('read', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function parseResult($result, &$errorCode, &$dn, &$errorMessage, &$referrals, &$serverControls = [])
+    {
+        return $this->resolveExpectation('parseResult', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function add($dn, array $entry)
+    {
+        return $this->resolveExpectation('add', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function delete($dn)
+    {
+        return $this->resolveExpectation('delete', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function rename($dn, $newRdn, $newParent, $deleteOldRdn = false)
+    {
+        return $this->resolveExpectation('rename', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modify($dn, array $entry)
+    {
+        return $this->resolveExpectation('modify', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modifyBatch($dn, array $values)
+    {
+        return $this->resolveExpectation('modifyBatch', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modAdd($dn, array $entry)
+    {
+        return $this->resolveExpectation('modAdd', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modReplace($dn, array $entry)
+    {
+        return $this->resolveExpectation('modReplace', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function modDelete($dn, array $entry)
+    {
+        return $this->resolveExpectation('modDelete', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function controlPagedResult($pageSize = 1000, $isCritical = false, $cookie = '')
+    {
+        return $this->resolveExpectation('controlPagedResult', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function controlPagedResultResponse($result, &$cookie)
+    {
+        return $this->resolveExpectation('controlPagedResultResponse', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function freeResult($result)
+    {
+        return $this->resolveExpectation('freeResult', func_get_args());
+    }
+
+    /**
+     * @inheritdoc
+     */
+    public function err2Str($number)
+    {
+        return $this->resolveExpectation('err2Str', func_get_args());
+    }
+
+    /**
+     * Resolve the methods expectations.
+     *
+     * @param string $method
+     * @param array  $args
+     *
+     * @throws Exception
+     *
+     * @return mixed
+     */
+    protected function resolveExpectation($method, array $args = [])
+    {
+        foreach ($this->getExpectations($method) as $key => $expectation) {
+            $this->assertMethodArgumentsMatch($method, $expectation->getExpectedArgs(), $args);
+
+            $expectation->decrementCallCount();
+
+            if ($expectation->getExpectedCount() === 0) {
+                $this->removeExpectation($method, $key);
+            }
+
+            if (! is_null($exception = $expectation->getExpectedException())) {
+                throw $exception;
+            }
+
+            if ($expectation->isReturningError()) {
+                $this->applyExpectationError($expectation);
+            }
+
+            return $expectation->getExpectedValue();
+        }
+
+        throw new Exception("LDAP method [$method] was unexpected.");
+    }
+
+    /**
+     * Apply the expectation error to the fake.
+     *
+     * @param LdapExpectation $expectation
+     *
+     * @return void
+     */
+    protected function applyExpectationError(LdapExpectation $expectation)
+    {
+        $this->shouldReturnError($expectation->getExpectedErrorMessage());
+        $this->shouldReturnErrorNumber($expectation->getExpectedErrorCode());
+        $this->shouldReturnDiagnosticMessage($expectation->getExpectedErrorDiagnosticMessage());
+    }
+
+    /**
+     * Assert that the expected arguments match the operations arguments.
+     *
+     * @param string       $method
+     * @param Constraint[] $expectedArgs
+     * @param array        $methodArgs
+     *
+     * @return void
+     */
+    protected function assertMethodArgumentsMatch($method, array $expectedArgs = [], array $methodArgs = [])
+    {
+        foreach ($expectedArgs as $key => $constraint) {
+            $argNumber = $key + 1;
+
+            PHPUnit::assertArrayHasKey(
+                $key,
+                $methodArgs,
+                "LDAP method [$method] argument #{$argNumber} does not exist."
+            );
+
+            $constraint->evaluate(
+                $methodArgs[$key],
+                "LDAP method [$method] expectation failed."
+            );
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Utilities.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Utilities.php
new file mode 100644
index 0000000..0f0ca3c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/directorytree/ldaprecord/src/Utilities.php
@@ -0,0 +1,196 @@
+<?php
+
+namespace LdapRecord;
+
+class Utilities
+{
+    /**
+     * Converts a DN string into an array of RDNs.
+     *
+     * This will also decode hex characters into their true
+     * UTF-8 representation embedded inside the DN as well.
+     *
+     * @param string $dn
+     * @param bool   $removeAttributePrefixes
+     *
+     * @return array|false
+     */
+    public static function explodeDn($dn, $removeAttributePrefixes = true)
+    {
+        $dn = ldap_explode_dn($dn, ($removeAttributePrefixes ? 1 : 0));
+
+        if (! is_array($dn)) {
+            return false;
+        }
+
+        if (! array_key_exists('count', $dn)) {
+            return false;
+        }
+
+        unset($dn['count']);
+
+        foreach ($dn as $rdn => $value) {
+            $dn[$rdn] = static::unescape($value);
+        }
+
+        return $dn;
+    }
+
+    /**
+     * Un-escapes a hexadecimal string into its original string representation.
+     *
+     * @param string $value
+     *
+     * @return string
+     */
+    public static function unescape($value)
+    {
+        return preg_replace_callback('/\\\([0-9A-Fa-f]{2})/', function ($matches) {
+            return chr(hexdec($matches[1]));
+        }, $value);
+    }
+
+    /**
+     * Convert a binary SID to a string SID.
+     *
+     * @author Chad Sikorra
+     *
+     * @see https://github.com/ChadSikorra
+     * @see https://stackoverflow.com/questions/39533560/php-ldap-get-user-sid
+     *
+     * @param string $value The Binary SID
+     *
+     * @return string|null
+     */
+    public static function binarySidToString($value)
+    {
+        // Revision - 8bit unsigned int (C1)
+        // Count - 8bit unsigned int (C1)
+        // 2 null bytes
+        // ID - 32bit unsigned long, big-endian order
+        $sid = @unpack('C1rev/C1count/x2/N1id', $value);
+
+        if (! isset($sid['id']) || ! isset($sid['rev'])) {
+            return;
+        }
+
+        $revisionLevel = $sid['rev'];
+
+        $identifierAuthority = $sid['id'];
+
+        $subs = isset($sid['count']) ? $sid['count'] : 0;
+
+        $sidHex = $subs ? bin2hex($value) : '';
+
+        $subAuthorities = [];
+
+        // The sub-authorities depend on the count, so only get as
+        // many as the count, regardless of data beyond it.
+        for ($i = 0; $i < $subs; $i++) {
+            $data = implode(array_reverse(
+                str_split(
+                    substr($sidHex, 16 + ($i * 8), 8),
+                    2
+                )
+            ));
+
+            $subAuthorities[] = hexdec($data);
+        }
+
+        // Tack on the 'S-' and glue it all together...
+        return 'S-'.$revisionLevel.'-'.$identifierAuthority.implode(
+            preg_filter('/^/', '-', $subAuthorities)
+        );
+    }
+
+    /**
+     * Convert a binary GUID to a string GUID.
+     *
+     * @param string $binGuid
+     *
+     * @return string|null
+     */
+    public static function binaryGuidToString($binGuid)
+    {
+        if (trim($binGuid) == '' || is_null($binGuid)) {
+            return;
+        }
+
+        $hex = unpack('H*hex', $binGuid)['hex'];
+
+        $hex1 = substr($hex, -26, 2).substr($hex, -28, 2).substr($hex, -30, 2).substr($hex, -32, 2);
+        $hex2 = substr($hex, -22, 2).substr($hex, -24, 2);
+        $hex3 = substr($hex, -18, 2).substr($hex, -20, 2);
+        $hex4 = substr($hex, -16, 4);
+        $hex5 = substr($hex, -12, 12);
+
+        return sprintf('%s-%s-%s-%s-%s', $hex1, $hex2, $hex3, $hex4, $hex5);
+    }
+
+    /**
+     * Converts a string GUID to it's hex variant.
+     *
+     * @param string $string
+     *
+     * @return string
+     */
+    public static function stringGuidToHex($string)
+    {
+        $hex = '\\'.substr($string, 6, 2).'\\'.substr($string, 4, 2).'\\'.substr($string, 2, 2).'\\'.substr($string, 0, 2);
+        $hex = $hex.'\\'.substr($string, 11, 2).'\\'.substr($string, 9, 2);
+        $hex = $hex.'\\'.substr($string, 16, 2).'\\'.substr($string, 14, 2);
+        $hex = $hex.'\\'.substr($string, 19, 2).'\\'.substr($string, 21, 2);
+        $hex = $hex.'\\'.substr($string, 24, 2).'\\'.substr($string, 26, 2).'\\'.substr($string, 28, 2).'\\'.substr($string, 30, 2).'\\'.substr($string, 32, 2).'\\'.substr($string, 34, 2);
+
+        return $hex;
+    }
+
+    /**
+     * Round a Windows timestamp down to seconds and remove
+     * the seconds between 1601-01-01 and 1970-01-01.
+     *
+     * @param float $windowsTime
+     *
+     * @return float
+     */
+    public static function convertWindowsTimeToUnixTime($windowsTime)
+    {
+        return round($windowsTime / 10000000) - 11644473600;
+    }
+
+    /**
+     * Convert a Unix timestamp to Windows timestamp.
+     *
+     * @param float $unixTime
+     *
+     * @return float
+     */
+    public static function convertUnixTimeToWindowsTime($unixTime)
+    {
+        return ($unixTime + 11644473600) * 10000000;
+    }
+
+    /**
+     * Validates that the inserted string is an object SID.
+     *
+     * @param string $sid
+     *
+     * @return bool
+     */
+    public static function isValidSid($sid)
+    {
+        return (bool) preg_match("/^S-\d(-\d{1,10}){1,16}$/i", $sid);
+    }
+
+    /**
+     * Validates that the inserted string is an object GUID.
+     *
+     * @param string $guid
+     *
+     * @return bool
+     */
+    public static function isValidGuid($guid)
+    {
+        return (bool) preg_match('/^([0-9a-fA-F]){8}(-([0-9a-fA-F]){4}){3}-([0-9a-fA-F]){12}$/', $guid);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Authorizable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Authorizable.php
new file mode 100644
index 0000000..cedeb6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Authorizable.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace Illuminate\Contracts\Auth\Access;
+
+interface Authorizable
+{
+    /**
+     * Determine if the entity has a given ability.
+     *
+     * @param  iterable|string  $abilities
+     * @param  array|mixed  $arguments
+     * @return bool
+     */
+    public function can($abilities, $arguments = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Gate.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Gate.php
new file mode 100644
index 0000000..b88ab17
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Access/Gate.php
@@ -0,0 +1,150 @@
+<?php
+
+namespace Illuminate\Contracts\Auth\Access;
+
+interface Gate
+{
+    /**
+     * Determine if a given ability has been defined.
+     *
+     * @param  string  $ability
+     * @return bool
+     */
+    public function has($ability);
+
+    /**
+     * Define a new ability.
+     *
+     * @param  string  $ability
+     * @param  callable|string  $callback
+     * @return $this
+     */
+    public function define($ability, $callback);
+
+    /**
+     * Define abilities for a resource.
+     *
+     * @param  string  $name
+     * @param  string  $class
+     * @param  array|null  $abilities
+     * @return $this
+     */
+    public function resource($name, $class, array $abilities = null);
+
+    /**
+     * Define a policy class for a given class type.
+     *
+     * @param  string  $class
+     * @param  string  $policy
+     * @return $this
+     */
+    public function policy($class, $policy);
+
+    /**
+     * Register a callback to run before all Gate checks.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function before(callable $callback);
+
+    /**
+     * Register a callback to run after all Gate checks.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function after(callable $callback);
+
+    /**
+     * Determine if the given ability should be granted for the current user.
+     *
+     * @param  string  $ability
+     * @param  array|mixed  $arguments
+     * @return bool
+     */
+    public function allows($ability, $arguments = []);
+
+    /**
+     * Determine if the given ability should be denied for the current user.
+     *
+     * @param  string  $ability
+     * @param  array|mixed  $arguments
+     * @return bool
+     */
+    public function denies($ability, $arguments = []);
+
+    /**
+     * Determine if all of the given abilities should be granted for the current user.
+     *
+     * @param  iterable|string  $abilities
+     * @param  array|mixed  $arguments
+     * @return bool
+     */
+    public function check($abilities, $arguments = []);
+
+    /**
+     * Determine if any one of the given abilities should be granted for the current user.
+     *
+     * @param  iterable|string  $abilities
+     * @param  array|mixed  $arguments
+     * @return bool
+     */
+    public function any($abilities, $arguments = []);
+
+    /**
+     * Determine if the given ability should be granted for the current user.
+     *
+     * @param  string  $ability
+     * @param  array|mixed  $arguments
+     * @return \Illuminate\Auth\Access\Response
+     *
+     * @throws \Illuminate\Auth\Access\AuthorizationException
+     */
+    public function authorize($ability, $arguments = []);
+
+    /**
+     * Inspect the user for the given ability.
+     *
+     * @param  string  $ability
+     * @param  array|mixed  $arguments
+     * @return \Illuminate\Auth\Access\Response
+     */
+    public function inspect($ability, $arguments = []);
+
+    /**
+     * Get the raw result from the authorization callback.
+     *
+     * @param  string  $ability
+     * @param  array|mixed  $arguments
+     * @return mixed
+     *
+     * @throws \Illuminate\Auth\Access\AuthorizationException
+     */
+    public function raw($ability, $arguments = []);
+
+    /**
+     * Get a policy instance for a given class.
+     *
+     * @param  object|string  $class
+     * @return mixed
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function getPolicyFor($class);
+
+    /**
+     * Get a guard instance for the given user.
+     *
+     * @param  \Illuminate\Contracts\Auth\Authenticatable|mixed  $user
+     * @return static
+     */
+    public function forUser($user);
+
+    /**
+     * Get all of the defined abilities.
+     *
+     * @return array
+     */
+    public function abilities();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Authenticatable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Authenticatable.php
new file mode 100644
index 0000000..ac4ed88
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Authenticatable.php
@@ -0,0 +1,49 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface Authenticatable
+{
+    /**
+     * Get the name of the unique identifier for the user.
+     *
+     * @return string
+     */
+    public function getAuthIdentifierName();
+
+    /**
+     * Get the unique identifier for the user.
+     *
+     * @return mixed
+     */
+    public function getAuthIdentifier();
+
+    /**
+     * Get the password for the user.
+     *
+     * @return string
+     */
+    public function getAuthPassword();
+
+    /**
+     * Get the token value for the "remember me" session.
+     *
+     * @return string
+     */
+    public function getRememberToken();
+
+    /**
+     * Set the token value for the "remember me" session.
+     *
+     * @param  string  $value
+     * @return void
+     */
+    public function setRememberToken($value);
+
+    /**
+     * Get the column name for the "remember me" token.
+     *
+     * @return string
+     */
+    public function getRememberTokenName();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/CanResetPassword.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/CanResetPassword.php
new file mode 100644
index 0000000..3a67707
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/CanResetPassword.php
@@ -0,0 +1,21 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface CanResetPassword
+{
+    /**
+     * Get the e-mail address where password reset links are sent.
+     *
+     * @return string
+     */
+    public function getEmailForPasswordReset();
+
+    /**
+     * Send the password reset notification.
+     *
+     * @param  string  $token
+     * @return void
+     */
+    public function sendPasswordResetNotification($token);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Factory.php
new file mode 100644
index 0000000..d76ee76
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Factory.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface Factory
+{
+    /**
+     * Get a guard instance by name.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Auth\Guard|\Illuminate\Contracts\Auth\StatefulGuard
+     */
+    public function guard($name = null);
+
+    /**
+     * Set the default guard the factory should serve.
+     *
+     * @param  string  $name
+     * @return void
+     */
+    public function shouldUse($name);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Guard.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Guard.php
new file mode 100644
index 0000000..2a27fb5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Guard.php
@@ -0,0 +1,50 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface Guard
+{
+    /**
+     * Determine if the current user is authenticated.
+     *
+     * @return bool
+     */
+    public function check();
+
+    /**
+     * Determine if the current user is a guest.
+     *
+     * @return bool
+     */
+    public function guest();
+
+    /**
+     * Get the currently authenticated user.
+     *
+     * @return \Illuminate\Contracts\Auth\Authenticatable|null
+     */
+    public function user();
+
+    /**
+     * Get the ID for the currently authenticated user.
+     *
+     * @return int|string|null
+     */
+    public function id();
+
+    /**
+     * Validate a user's credentials.
+     *
+     * @param  array  $credentials
+     * @return bool
+     */
+    public function validate(array $credentials = []);
+
+    /**
+     * Set the current user.
+     *
+     * @param  \Illuminate\Contracts\Auth\Authenticatable  $user
+     * @return void
+     */
+    public function setUser(Authenticatable $user);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Middleware/AuthenticatesRequests.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Middleware/AuthenticatesRequests.php
new file mode 100644
index 0000000..b782761
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/Middleware/AuthenticatesRequests.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Auth\Middleware;
+
+interface AuthenticatesRequests
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/MustVerifyEmail.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/MustVerifyEmail.php
new file mode 100644
index 0000000..5b8b105
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/MustVerifyEmail.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface MustVerifyEmail
+{
+    /**
+     * Determine if the user has verified their email address.
+     *
+     * @return bool
+     */
+    public function hasVerifiedEmail();
+
+    /**
+     * Mark the given user's email as verified.
+     *
+     * @return bool
+     */
+    public function markEmailAsVerified();
+
+    /**
+     * Send the email verification notification.
+     *
+     * @return void
+     */
+    public function sendEmailVerificationNotification();
+
+    /**
+     * Get the email address that should be used for verification.
+     *
+     * @return string
+     */
+    public function getEmailForVerification();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBroker.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBroker.php
new file mode 100644
index 0000000..bbbe9b5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBroker.php
@@ -0,0 +1,61 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+use Closure;
+
+interface PasswordBroker
+{
+    /**
+     * Constant representing a successfully sent reminder.
+     *
+     * @var string
+     */
+    const RESET_LINK_SENT = 'passwords.sent';
+
+    /**
+     * Constant representing a successfully reset password.
+     *
+     * @var string
+     */
+    const PASSWORD_RESET = 'passwords.reset';
+
+    /**
+     * Constant representing the user not found response.
+     *
+     * @var string
+     */
+    const INVALID_USER = 'passwords.user';
+
+    /**
+     * Constant representing an invalid token.
+     *
+     * @var string
+     */
+    const INVALID_TOKEN = 'passwords.token';
+
+    /**
+     * Constant representing a throttled reset attempt.
+     *
+     * @var string
+     */
+    const RESET_THROTTLED = 'passwords.throttled';
+
+    /**
+     * Send a password reset link to a user.
+     *
+     * @param  array  $credentials
+     * @param  \Closure|null  $callback
+     * @return string
+     */
+    public function sendResetLink(array $credentials, Closure $callback = null);
+
+    /**
+     * Reset the password for the given token.
+     *
+     * @param  array  $credentials
+     * @param  \Closure  $callback
+     * @return mixed
+     */
+    public function reset(array $credentials, Closure $callback);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBrokerFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBrokerFactory.php
new file mode 100644
index 0000000..47b1c08
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/PasswordBrokerFactory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface PasswordBrokerFactory
+{
+    /**
+     * Get a password broker instance by name.
+     *
+     * @param  string|null  $name
+     * @return mixed
+     */
+    public function broker($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/StatefulGuard.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/StatefulGuard.php
new file mode 100644
index 0000000..faf1497
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/StatefulGuard.php
@@ -0,0 +1,63 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface StatefulGuard extends Guard
+{
+    /**
+     * Attempt to authenticate a user using the given credentials.
+     *
+     * @param  array  $credentials
+     * @param  bool  $remember
+     * @return bool
+     */
+    public function attempt(array $credentials = [], $remember = false);
+
+    /**
+     * Log a user into the application without sessions or cookies.
+     *
+     * @param  array  $credentials
+     * @return bool
+     */
+    public function once(array $credentials = []);
+
+    /**
+     * Log a user into the application.
+     *
+     * @param  \Illuminate\Contracts\Auth\Authenticatable  $user
+     * @param  bool  $remember
+     * @return void
+     */
+    public function login(Authenticatable $user, $remember = false);
+
+    /**
+     * Log the given user ID into the application.
+     *
+     * @param  mixed  $id
+     * @param  bool  $remember
+     * @return \Illuminate\Contracts\Auth\Authenticatable|bool
+     */
+    public function loginUsingId($id, $remember = false);
+
+    /**
+     * Log the given user ID into the application without sessions or cookies.
+     *
+     * @param  mixed  $id
+     * @return \Illuminate\Contracts\Auth\Authenticatable|bool
+     */
+    public function onceUsingId($id);
+
+    /**
+     * Determine if the user was authenticated via "remember me" cookie.
+     *
+     * @return bool
+     */
+    public function viaRemember();
+
+    /**
+     * Log the user out of the application.
+     *
+     * @return void
+     */
+    public function logout();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/SupportsBasicAuth.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/SupportsBasicAuth.php
new file mode 100644
index 0000000..9c54591
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/SupportsBasicAuth.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface SupportsBasicAuth
+{
+    /**
+     * Attempt to authenticate using HTTP Basic Auth.
+     *
+     * @param  string  $field
+     * @param  array  $extraConditions
+     * @return \Symfony\Component\HttpFoundation\Response|null
+     */
+    public function basic($field = 'email', $extraConditions = []);
+
+    /**
+     * Perform a stateless HTTP Basic login attempt.
+     *
+     * @param  string  $field
+     * @param  array  $extraConditions
+     * @return \Symfony\Component\HttpFoundation\Response|null
+     */
+    public function onceBasic($field = 'email', $extraConditions = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/UserProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/UserProvider.php
new file mode 100644
index 0000000..a2ab122
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Auth/UserProvider.php
@@ -0,0 +1,49 @@
+<?php
+
+namespace Illuminate\Contracts\Auth;
+
+interface UserProvider
+{
+    /**
+     * Retrieve a user by their unique identifier.
+     *
+     * @param  mixed  $identifier
+     * @return \Illuminate\Contracts\Auth\Authenticatable|null
+     */
+    public function retrieveById($identifier);
+
+    /**
+     * Retrieve a user by their unique identifier and "remember me" token.
+     *
+     * @param  mixed  $identifier
+     * @param  string  $token
+     * @return \Illuminate\Contracts\Auth\Authenticatable|null
+     */
+    public function retrieveByToken($identifier, $token);
+
+    /**
+     * Update the "remember me" token for the given user in storage.
+     *
+     * @param  \Illuminate\Contracts\Auth\Authenticatable  $user
+     * @param  string  $token
+     * @return void
+     */
+    public function updateRememberToken(Authenticatable $user, $token);
+
+    /**
+     * Retrieve a user by the given credentials.
+     *
+     * @param  array  $credentials
+     * @return \Illuminate\Contracts\Auth\Authenticatable|null
+     */
+    public function retrieveByCredentials(array $credentials);
+
+    /**
+     * Validate a user against the given credentials.
+     *
+     * @param  \Illuminate\Contracts\Auth\Authenticatable  $user
+     * @param  array  $credentials
+     * @return bool
+     */
+    public function validateCredentials(Authenticatable $user, array $credentials);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Broadcaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Broadcaster.php
new file mode 100644
index 0000000..1034e44
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Broadcaster.php
@@ -0,0 +1,33 @@
+<?php
+
+namespace Illuminate\Contracts\Broadcasting;
+
+interface Broadcaster
+{
+    /**
+     * Authenticate the incoming request for a given channel.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return mixed
+     */
+    public function auth($request);
+
+    /**
+     * Return the valid authentication response.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  mixed  $result
+     * @return mixed
+     */
+    public function validAuthenticationResponse($request, $result);
+
+    /**
+     * Broadcast the given event.
+     *
+     * @param  array  $channels
+     * @param  string  $event
+     * @param  array  $payload
+     * @return void
+     */
+    public function broadcast(array $channels, $event, array $payload = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Factory.php
new file mode 100644
index 0000000..1a4f48f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Broadcasting;
+
+interface Factory
+{
+    /**
+     * Get a broadcaster implementation by name.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Broadcasting\Broadcaster
+     */
+    public function connection($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/HasBroadcastChannel.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/HasBroadcastChannel.php
new file mode 100644
index 0000000..3b2c401
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/HasBroadcastChannel.php
@@ -0,0 +1,20 @@
+<?php
+
+namespace Illuminate\Contracts\Broadcasting;
+
+interface HasBroadcastChannel
+{
+    /**
+     * Get the broadcast channel route definition that is associated with the given entity.
+     *
+     * @return string
+     */
+    public function broadcastChannelRoute();
+
+    /**
+     * Get the broadcast channel name that is associated with the given entity.
+     *
+     * @return string
+     */
+    public function broadcastChannel();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcast.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcast.php
new file mode 100644
index 0000000..a4802fe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcast.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Broadcasting;
+
+interface ShouldBroadcast
+{
+    /**
+     * Get the channels the event should broadcast on.
+     *
+     * @return \Illuminate\Broadcasting\Channel|\Illuminate\Broadcasting\Channel[]
+     */
+    public function broadcastOn();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcastNow.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcastNow.php
new file mode 100644
index 0000000..eba3584
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Broadcasting/ShouldBroadcastNow.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Broadcasting;
+
+interface ShouldBroadcastNow extends ShouldBroadcast
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/Dispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/Dispatcher.php
new file mode 100644
index 0000000..5cbbd92
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/Dispatcher.php
@@ -0,0 +1,66 @@
+<?php
+
+namespace Illuminate\Contracts\Bus;
+
+interface Dispatcher
+{
+    /**
+     * Dispatch a command to its appropriate handler.
+     *
+     * @param  mixed  $command
+     * @return mixed
+     */
+    public function dispatch($command);
+
+    /**
+     * Dispatch a command to its appropriate handler in the current process.
+     *
+     * Queueable jobs will be dispatched to the "sync" queue.
+     *
+     * @param  mixed  $command
+     * @param  mixed  $handler
+     * @return mixed
+     */
+    public function dispatchSync($command, $handler = null);
+
+    /**
+     * Dispatch a command to its appropriate handler in the current process.
+     *
+     * @param  mixed  $command
+     * @param  mixed  $handler
+     * @return mixed
+     */
+    public function dispatchNow($command, $handler = null);
+
+    /**
+     * Determine if the given command has a handler.
+     *
+     * @param  mixed  $command
+     * @return bool
+     */
+    public function hasCommandHandler($command);
+
+    /**
+     * Retrieve the handler for a command.
+     *
+     * @param  mixed  $command
+     * @return bool|mixed
+     */
+    public function getCommandHandler($command);
+
+    /**
+     * Set the pipes commands should be piped through before dispatching.
+     *
+     * @param  array  $pipes
+     * @return $this
+     */
+    public function pipeThrough(array $pipes);
+
+    /**
+     * Map a command to a handler.
+     *
+     * @param  array  $map
+     * @return $this
+     */
+    public function map(array $map);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/QueueingDispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/QueueingDispatcher.php
new file mode 100644
index 0000000..ff84e27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Bus/QueueingDispatcher.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Illuminate\Contracts\Bus;
+
+interface QueueingDispatcher extends Dispatcher
+{
+    /**
+     * Attempt to find the batch with the given ID.
+     *
+     * @param  string  $batchId
+     * @return \Illuminate\Bus\Batch|null
+     */
+    public function findBatch(string $batchId);
+
+    /**
+     * Create a new batch of queueable jobs.
+     *
+     * @param  \Illuminate\Support\Collection|array  $jobs
+     * @return \Illuminate\Bus\PendingBatch
+     */
+    public function batch($jobs);
+
+    /**
+     * Dispatch a command to its appropriate handler behind a queue.
+     *
+     * @param  mixed  $command
+     * @return mixed
+     */
+    public function dispatchToQueue($command);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Factory.php
new file mode 100644
index 0000000..3924662
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+interface Factory
+{
+    /**
+     * Get a cache store instance by name.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Cache\Repository
+     */
+    public function store($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Lock.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Lock.php
new file mode 100644
index 0000000..03f633a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Lock.php
@@ -0,0 +1,44 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+interface Lock
+{
+    /**
+     * Attempt to acquire the lock.
+     *
+     * @param  callable|null  $callback
+     * @return mixed
+     */
+    public function get($callback = null);
+
+    /**
+     * Attempt to acquire the lock for the given number of seconds.
+     *
+     * @param  int  $seconds
+     * @param  callable|null  $callback
+     * @return mixed
+     */
+    public function block($seconds, $callback = null);
+
+    /**
+     * Release the lock.
+     *
+     * @return bool
+     */
+    public function release();
+
+    /**
+     * Returns the current owner of the lock.
+     *
+     * @return string
+     */
+    public function owner();
+
+    /**
+     * Releases this lock in disregard of ownership.
+     *
+     * @return void
+     */
+    public function forceRelease();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockProvider.php
new file mode 100644
index 0000000..37d4ef6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockProvider.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+interface LockProvider
+{
+    /**
+     * Get a lock instance.
+     *
+     * @param  string  $name
+     * @param  int  $seconds
+     * @param  string|null  $owner
+     * @return \Illuminate\Contracts\Cache\Lock
+     */
+    public function lock($name, $seconds = 0, $owner = null);
+
+    /**
+     * Restore a lock instance using the owner identifier.
+     *
+     * @param  string  $name
+     * @param  string  $owner
+     * @return \Illuminate\Contracts\Cache\Lock
+     */
+    public function restoreLock($name, $owner);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockTimeoutException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockTimeoutException.php
new file mode 100644
index 0000000..53327e2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/LockTimeoutException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+use Exception;
+
+class LockTimeoutException extends Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Repository.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Repository.php
new file mode 100644
index 0000000..5b78af5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Repository.php
@@ -0,0 +1,108 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+use Closure;
+use Psr\SimpleCache\CacheInterface;
+
+interface Repository extends CacheInterface
+{
+    /**
+     * Retrieve an item from the cache and delete it.
+     *
+     * @param  string  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function pull($key, $default = null);
+
+    /**
+     * Store an item in the cache.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  \DateTimeInterface|\DateInterval|int|null  $ttl
+     * @return bool
+     */
+    public function put($key, $value, $ttl = null);
+
+    /**
+     * Store an item in the cache if the key does not exist.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  \DateTimeInterface|\DateInterval|int|null  $ttl
+     * @return bool
+     */
+    public function add($key, $value, $ttl = null);
+
+    /**
+     * Increment the value of an item in the cache.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return int|bool
+     */
+    public function increment($key, $value = 1);
+
+    /**
+     * Decrement the value of an item in the cache.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return int|bool
+     */
+    public function decrement($key, $value = 1);
+
+    /**
+     * Store an item in the cache indefinitely.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function forever($key, $value);
+
+    /**
+     * Get an item from the cache, or execute the given Closure and store the result.
+     *
+     * @param  string  $key
+     * @param  \DateTimeInterface|\DateInterval|int|null  $ttl
+     * @param  \Closure  $callback
+     * @return mixed
+     */
+    public function remember($key, $ttl, Closure $callback);
+
+    /**
+     * Get an item from the cache, or execute the given Closure and store the result forever.
+     *
+     * @param  string  $key
+     * @param  \Closure  $callback
+     * @return mixed
+     */
+    public function sear($key, Closure $callback);
+
+    /**
+     * Get an item from the cache, or execute the given Closure and store the result forever.
+     *
+     * @param  string  $key
+     * @param  \Closure  $callback
+     * @return mixed
+     */
+    public function rememberForever($key, Closure $callback);
+
+    /**
+     * Remove an item from the cache.
+     *
+     * @param  string  $key
+     * @return bool
+     */
+    public function forget($key);
+
+    /**
+     * Get the cache store implementation.
+     *
+     * @return \Illuminate\Contracts\Cache\Store
+     */
+    public function getStore();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Store.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Store.php
new file mode 100644
index 0000000..133bc43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cache/Store.php
@@ -0,0 +1,92 @@
+<?php
+
+namespace Illuminate\Contracts\Cache;
+
+interface Store
+{
+    /**
+     * Retrieve an item from the cache by key.
+     *
+     * @param  string|array  $key
+     * @return mixed
+     */
+    public function get($key);
+
+    /**
+     * Retrieve multiple items from the cache by key.
+     *
+     * Items not found in the cache will have a null value.
+     *
+     * @param  array  $keys
+     * @return array
+     */
+    public function many(array $keys);
+
+    /**
+     * Store an item in the cache for a given number of seconds.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  int  $seconds
+     * @return bool
+     */
+    public function put($key, $value, $seconds);
+
+    /**
+     * Store multiple items in the cache for a given number of seconds.
+     *
+     * @param  array  $values
+     * @param  int  $seconds
+     * @return bool
+     */
+    public function putMany(array $values, $seconds);
+
+    /**
+     * Increment the value of an item in the cache.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return int|bool
+     */
+    public function increment($key, $value = 1);
+
+    /**
+     * Decrement the value of an item in the cache.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return int|bool
+     */
+    public function decrement($key, $value = 1);
+
+    /**
+     * Store an item in the cache indefinitely.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function forever($key, $value);
+
+    /**
+     * Remove an item from the cache.
+     *
+     * @param  string  $key
+     * @return bool
+     */
+    public function forget($key);
+
+    /**
+     * Remove all items from the cache.
+     *
+     * @return bool
+     */
+    public function flush();
+
+    /**
+     * Get the cache key prefix.
+     *
+     * @return string
+     */
+    public function getPrefix();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Config/Repository.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Config/Repository.php
new file mode 100644
index 0000000..a4f0ac8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Config/Repository.php
@@ -0,0 +1,57 @@
+<?php
+
+namespace Illuminate\Contracts\Config;
+
+interface Repository
+{
+    /**
+     * Determine if the given configuration value exists.
+     *
+     * @param  string  $key
+     * @return bool
+     */
+    public function has($key);
+
+    /**
+     * Get the specified configuration value.
+     *
+     * @param  array|string  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function get($key, $default = null);
+
+    /**
+     * Get all of the configuration items for the application.
+     *
+     * @return array
+     */
+    public function all();
+
+    /**
+     * Set a given configuration value.
+     *
+     * @param  array|string  $key
+     * @param  mixed  $value
+     * @return void
+     */
+    public function set($key, $value = null);
+
+    /**
+     * Prepend a value onto an array configuration value.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return void
+     */
+    public function prepend($key, $value);
+
+    /**
+     * Push a value onto an array configuration value.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return void
+     */
+    public function push($key, $value);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Application.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Application.php
new file mode 100644
index 0000000..ba628c9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Application.php
@@ -0,0 +1,23 @@
+<?php
+
+namespace Illuminate\Contracts\Console;
+
+interface Application
+{
+    /**
+     * Run an Artisan console command by name.
+     *
+     * @param  string  $command
+     * @param  array  $parameters
+     * @param  \Symfony\Component\Console\Output\OutputInterface|null  $outputBuffer
+     * @return int
+     */
+    public function call($command, array $parameters = [], $outputBuffer = null);
+
+    /**
+     * Get the output from the last command.
+     *
+     * @return string
+     */
+    public function output();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Kernel.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Kernel.php
new file mode 100644
index 0000000..842f5a6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Console/Kernel.php
@@ -0,0 +1,64 @@
+<?php
+
+namespace Illuminate\Contracts\Console;
+
+interface Kernel
+{
+    /**
+     * Bootstrap the application for artisan commands.
+     *
+     * @return void
+     */
+    public function bootstrap();
+
+    /**
+     * Handle an incoming console command.
+     *
+     * @param  \Symfony\Component\Console\Input\InputInterface  $input
+     * @param  \Symfony\Component\Console\Output\OutputInterface|null  $output
+     * @return int
+     */
+    public function handle($input, $output = null);
+
+    /**
+     * Run an Artisan console command by name.
+     *
+     * @param  string  $command
+     * @param  array  $parameters
+     * @param  \Symfony\Component\Console\Output\OutputInterface|null  $outputBuffer
+     * @return int
+     */
+    public function call($command, array $parameters = [], $outputBuffer = null);
+
+    /**
+     * Queue an Artisan console command by name.
+     *
+     * @param  string  $command
+     * @param  array  $parameters
+     * @return \Illuminate\Foundation\Bus\PendingDispatch
+     */
+    public function queue($command, array $parameters = []);
+
+    /**
+     * Get all of the commands registered with the console.
+     *
+     * @return array
+     */
+    public function all();
+
+    /**
+     * Get the output for the last run command.
+     *
+     * @return string
+     */
+    public function output();
+
+    /**
+     * Terminate the application.
+     *
+     * @param  \Symfony\Component\Console\Input\InputInterface  $input
+     * @param  int  $status
+     * @return void
+     */
+    public function terminate($input, $status);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/BindingResolutionException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/BindingResolutionException.php
new file mode 100644
index 0000000..a69c24c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/BindingResolutionException.php
@@ -0,0 +1,11 @@
+<?php
+
+namespace Illuminate\Contracts\Container;
+
+use Exception;
+use Psr\Container\ContainerExceptionInterface;
+
+class BindingResolutionException extends Exception implements ContainerExceptionInterface
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/CircularDependencyException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/CircularDependencyException.php
new file mode 100644
index 0000000..6c90381
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/CircularDependencyException.php
@@ -0,0 +1,11 @@
+<?php
+
+namespace Illuminate\Contracts\Container;
+
+use Exception;
+use Psr\Container\ContainerExceptionInterface;
+
+class CircularDependencyException extends Exception implements ContainerExceptionInterface
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/Container.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/Container.php
new file mode 100644
index 0000000..1b8bb64
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/Container.php
@@ -0,0 +1,183 @@
+<?php
+
+namespace Illuminate\Contracts\Container;
+
+use Closure;
+use Psr\Container\ContainerInterface;
+
+interface Container extends ContainerInterface
+{
+    /**
+     * Determine if the given abstract type has been bound.
+     *
+     * @param  string  $abstract
+     * @return bool
+     */
+    public function bound($abstract);
+
+    /**
+     * Alias a type to a different name.
+     *
+     * @param  string  $abstract
+     * @param  string  $alias
+     * @return void
+     *
+     * @throws \LogicException
+     */
+    public function alias($abstract, $alias);
+
+    /**
+     * Assign a set of tags to a given binding.
+     *
+     * @param  array|string  $abstracts
+     * @param  array|mixed  ...$tags
+     * @return void
+     */
+    public function tag($abstracts, $tags);
+
+    /**
+     * Resolve all of the bindings for a given tag.
+     *
+     * @param  string  $tag
+     * @return iterable
+     */
+    public function tagged($tag);
+
+    /**
+     * Register a binding with the container.
+     *
+     * @param  string  $abstract
+     * @param  \Closure|string|null  $concrete
+     * @param  bool  $shared
+     * @return void
+     */
+    public function bind($abstract, $concrete = null, $shared = false);
+
+    /**
+     * Register a binding if it hasn't already been registered.
+     *
+     * @param  string  $abstract
+     * @param  \Closure|string|null  $concrete
+     * @param  bool  $shared
+     * @return void
+     */
+    public function bindIf($abstract, $concrete = null, $shared = false);
+
+    /**
+     * Register a shared binding in the container.
+     *
+     * @param  string  $abstract
+     * @param  \Closure|string|null  $concrete
+     * @return void
+     */
+    public function singleton($abstract, $concrete = null);
+
+    /**
+     * Register a shared binding if it hasn't already been registered.
+     *
+     * @param  string  $abstract
+     * @param  \Closure|string|null  $concrete
+     * @return void
+     */
+    public function singletonIf($abstract, $concrete = null);
+
+    /**
+     * "Extend" an abstract type in the container.
+     *
+     * @param  string  $abstract
+     * @param  \Closure  $closure
+     * @return void
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function extend($abstract, Closure $closure);
+
+    /**
+     * Register an existing instance as shared in the container.
+     *
+     * @param  string  $abstract
+     * @param  mixed  $instance
+     * @return mixed
+     */
+    public function instance($abstract, $instance);
+
+    /**
+     * Add a contextual binding to the container.
+     *
+     * @param  string  $concrete
+     * @param  string  $abstract
+     * @param  \Closure|string  $implementation
+     * @return void
+     */
+    public function addContextualBinding($concrete, $abstract, $implementation);
+
+    /**
+     * Define a contextual binding.
+     *
+     * @param  string|array  $concrete
+     * @return \Illuminate\Contracts\Container\ContextualBindingBuilder
+     */
+    public function when($concrete);
+
+    /**
+     * Get a closure to resolve the given type from the container.
+     *
+     * @param  string  $abstract
+     * @return \Closure
+     */
+    public function factory($abstract);
+
+    /**
+     * Flush the container of all bindings and resolved instances.
+     *
+     * @return void
+     */
+    public function flush();
+
+    /**
+     * Resolve the given type from the container.
+     *
+     * @param  string  $abstract
+     * @param  array  $parameters
+     * @return mixed
+     *
+     * @throws \Illuminate\Contracts\Container\BindingResolutionException
+     */
+    public function make($abstract, array $parameters = []);
+
+    /**
+     * Call the given Closure / class@method and inject its dependencies.
+     *
+     * @param  callable|string  $callback
+     * @param  array  $parameters
+     * @param  string|null  $defaultMethod
+     * @return mixed
+     */
+    public function call($callback, array $parameters = [], $defaultMethod = null);
+
+    /**
+     * Determine if the given abstract type has been resolved.
+     *
+     * @param  string  $abstract
+     * @return bool
+     */
+    public function resolved($abstract);
+
+    /**
+     * Register a new resolving callback.
+     *
+     * @param  \Closure|string  $abstract
+     * @param  \Closure|null  $callback
+     * @return void
+     */
+    public function resolving($abstract, Closure $callback = null);
+
+    /**
+     * Register a new after resolving callback.
+     *
+     * @param  \Closure|string  $abstract
+     * @param  \Closure|null  $callback
+     * @return void
+     */
+    public function afterResolving($abstract, Closure $callback = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php
new file mode 100644
index 0000000..05e3625
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Container/ContextualBindingBuilder.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Illuminate\Contracts\Container;
+
+interface ContextualBindingBuilder
+{
+    /**
+     * Define the abstract target that depends on the context.
+     *
+     * @param  string  $abstract
+     * @return $this
+     */
+    public function needs($abstract);
+
+    /**
+     * Define the implementation for the contextual binding.
+     *
+     * @param  \Closure|string  $implementation
+     * @return void
+     */
+    public function give($implementation);
+
+    /**
+     * Define tagged services to be used as the implementation for the contextual binding.
+     *
+     * @param  string  $tag
+     * @return void
+     */
+    public function giveTagged($tag);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/Factory.php
new file mode 100644
index 0000000..6f95021
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/Factory.php
@@ -0,0 +1,47 @@
+<?php
+
+namespace Illuminate\Contracts\Cookie;
+
+interface Factory
+{
+    /**
+     * Create a new cookie instance.
+     *
+     * @param  string  $name
+     * @param  string  $value
+     * @param  int  $minutes
+     * @param  string|null  $path
+     * @param  string|null  $domain
+     * @param  bool|null  $secure
+     * @param  bool  $httpOnly
+     * @param  bool  $raw
+     * @param  string|null  $sameSite
+     * @return \Symfony\Component\HttpFoundation\Cookie
+     */
+    public function make($name, $value, $minutes = 0, $path = null, $domain = null, $secure = null, $httpOnly = true, $raw = false, $sameSite = null);
+
+    /**
+     * Create a cookie that lasts "forever" (five years).
+     *
+     * @param  string  $name
+     * @param  string  $value
+     * @param  string|null  $path
+     * @param  string|null  $domain
+     * @param  bool|null  $secure
+     * @param  bool  $httpOnly
+     * @param  bool  $raw
+     * @param  string|null  $sameSite
+     * @return \Symfony\Component\HttpFoundation\Cookie
+     */
+    public function forever($name, $value, $path = null, $domain = null, $secure = null, $httpOnly = true, $raw = false, $sameSite = null);
+
+    /**
+     * Expire the given cookie.
+     *
+     * @param  string  $name
+     * @param  string|null  $path
+     * @param  string|null  $domain
+     * @return \Symfony\Component\HttpFoundation\Cookie
+     */
+    public function forget($name, $path = null, $domain = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/QueueingFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/QueueingFactory.php
new file mode 100644
index 0000000..d6c74b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Cookie/QueueingFactory.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Illuminate\Contracts\Cookie;
+
+interface QueueingFactory extends Factory
+{
+    /**
+     * Queue a cookie to send with the next response.
+     *
+     * @param  array  $parameters
+     * @return void
+     */
+    public function queue(...$parameters);
+
+    /**
+     * Remove a cookie from the queue.
+     *
+     * @param  string  $name
+     * @param  string|null  $path
+     * @return void
+     */
+    public function unqueue($name, $path = null);
+
+    /**
+     * Get the cookies which have been queued for the next request.
+     *
+     * @return array
+     */
+    public function getQueuedCookies();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/Castable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/Castable.php
new file mode 100644
index 0000000..911b1cf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/Castable.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface Castable
+{
+    /**
+     * Get the name of the caster class to use when casting from / to this cast target.
+     *
+     * @param  array  $arguments
+     * @return string
+     * @return string|\Illuminate\Contracts\Database\Eloquent\CastsAttributes|\Illuminate\Contracts\Database\Eloquent\CastsInboundAttributes
+     */
+    public static function castUsing(array $arguments);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsAttributes.php
new file mode 100644
index 0000000..808d005
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsAttributes.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface CastsAttributes
+{
+    /**
+     * Transform the attribute from the underlying model values.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function get($model, string $key, $value, array $attributes);
+
+    /**
+     * Transform the attribute to its underlying model values.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function set($model, string $key, $value, array $attributes);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsInboundAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsInboundAttributes.php
new file mode 100644
index 0000000..4c7801b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/CastsInboundAttributes.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface CastsInboundAttributes
+{
+    /**
+     * Transform the attribute to its underlying model values.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function set($model, string $key, $value, array $attributes);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/DeviatesCastableAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/DeviatesCastableAttributes.php
new file mode 100644
index 0000000..48ba73a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/DeviatesCastableAttributes.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface DeviatesCastableAttributes
+{
+    /**
+     * Increment the attribute.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function increment($model, string $key, $value, array $attributes);
+
+    /**
+     * Decrement the attribute.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function decrement($model, string $key, $value, array $attributes);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SerializesCastableAttributes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SerializesCastableAttributes.php
new file mode 100644
index 0000000..a89f910
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SerializesCastableAttributes.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface SerializesCastableAttributes
+{
+    /**
+     * Serialize the attribute when converting the model to an array.
+     *
+     * @param  \Illuminate\Database\Eloquent\Model  $model
+     * @param  string  $key
+     * @param  mixed  $value
+     * @param  array  $attributes
+     * @return mixed
+     */
+    public function serialize($model, string $key, $value, array $attributes);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php
new file mode 100644
index 0000000..c82125a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Eloquent/SupportsPartialRelations.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Eloquent;
+
+interface SupportsPartialRelations
+{
+    /**
+     * Indicate that the relation is a single result of a larger one-to-many relationship.
+     *
+     * @param  string|null  $column
+     * @param  string|\Closure|null  $aggregate
+     * @param  string  $relation
+     * @return $this
+     */
+    public function ofMany($column = 'id', $aggregate = 'MAX', $relation = null);
+
+    /**
+     * Determine whether the relationship is a one-of-many relationship.
+     *
+     * @return bool
+     */
+    public function isOneOfMany();
+
+    /**
+     * Get the one of many inner join subselect query builder instance.
+     *
+     * @return \Illuminate\Database\Eloquent\Builder|void
+     */
+    public function getOneOfManySubQuery();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Events/MigrationEvent.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Events/MigrationEvent.php
new file mode 100644
index 0000000..2da155f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/Events/MigrationEvent.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Database\Events;
+
+interface MigrationEvent
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/ModelIdentifier.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/ModelIdentifier.php
new file mode 100644
index 0000000..9893d28
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Database/ModelIdentifier.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace Illuminate\Contracts\Database;
+
+class ModelIdentifier
+{
+    /**
+     * The class name of the model.
+     *
+     * @var string
+     */
+    public $class;
+
+    /**
+     * The unique identifier of the model.
+     *
+     * This may be either a single ID or an array of IDs.
+     *
+     * @var mixed
+     */
+    public $id;
+
+    /**
+     * The relationships loaded on the model.
+     *
+     * @var array
+     */
+    public $relations;
+
+    /**
+     * The connection name of the model.
+     *
+     * @var string|null
+     */
+    public $connection;
+
+    /**
+     * Create a new model identifier.
+     *
+     * @param  string  $class
+     * @param  mixed  $id
+     * @param  array  $relations
+     * @param  mixed  $connection
+     * @return void
+     */
+    public function __construct($class, $id, array $relations, $connection)
+    {
+        $this->id = $id;
+        $this->class = $class;
+        $this->relations = $relations;
+        $this->connection = $connection;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Debug/ExceptionHandler.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Debug/ExceptionHandler.php
new file mode 100644
index 0000000..54381a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Debug/ExceptionHandler.php
@@ -0,0 +1,46 @@
+<?php
+
+namespace Illuminate\Contracts\Debug;
+
+use Throwable;
+
+interface ExceptionHandler
+{
+    /**
+     * Report or log an exception.
+     *
+     * @param  \Throwable  $e
+     * @return void
+     *
+     * @throws \Throwable
+     */
+    public function report(Throwable $e);
+
+    /**
+     * Determine if the exception should be reported.
+     *
+     * @param  \Throwable  $e
+     * @return bool
+     */
+    public function shouldReport(Throwable $e);
+
+    /**
+     * Render an exception into an HTTP response.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \Throwable  $e
+     * @return \Symfony\Component\HttpFoundation\Response
+     *
+     * @throws \Throwable
+     */
+    public function render($request, Throwable $e);
+
+    /**
+     * Render an exception to the console.
+     *
+     * @param  \Symfony\Component\Console\Output\OutputInterface  $output
+     * @param  \Throwable  $e
+     * @return void
+     */
+    public function renderForConsole($output, Throwable $e);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/DecryptException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/DecryptException.php
new file mode 100644
index 0000000..7edebc9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/DecryptException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Encryption;
+
+use RuntimeException;
+
+class DecryptException extends RuntimeException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/EncryptException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/EncryptException.php
new file mode 100644
index 0000000..2146ee0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/EncryptException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Encryption;
+
+use RuntimeException;
+
+class EncryptException extends RuntimeException
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/Encrypter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/Encrypter.php
new file mode 100644
index 0000000..4747b68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/Encrypter.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace Illuminate\Contracts\Encryption;
+
+interface Encrypter
+{
+    /**
+     * Encrypt the given value.
+     *
+     * @param  mixed  $value
+     * @param  bool  $serialize
+     * @return string
+     *
+     * @throws \Illuminate\Contracts\Encryption\EncryptException
+     */
+    public function encrypt($value, $serialize = true);
+
+    /**
+     * Decrypt the given value.
+     *
+     * @param  string  $payload
+     * @param  bool  $unserialize
+     * @return mixed
+     *
+     * @throws \Illuminate\Contracts\Encryption\DecryptException
+     */
+    public function decrypt($payload, $unserialize = true);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/StringEncrypter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/StringEncrypter.php
new file mode 100644
index 0000000..1e6938c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Encryption/StringEncrypter.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace Illuminate\Contracts\Encryption;
+
+interface StringEncrypter
+{
+    /**
+     * Encrypt a string without serialization.
+     *
+     * @param  string  $value
+     * @return string
+     *
+     * @throws \Illuminate\Contracts\Encryption\EncryptException
+     */
+    public function encryptString($value);
+
+    /**
+     * Decrypt the given string without unserialization.
+     *
+     * @param  string  $payload
+     * @return string
+     *
+     * @throws \Illuminate\Contracts\Encryption\DecryptException
+     */
+    public function decryptString($payload);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Events/Dispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Events/Dispatcher.php
new file mode 100644
index 0000000..6386106
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Events/Dispatcher.php
@@ -0,0 +1,82 @@
+<?php
+
+namespace Illuminate\Contracts\Events;
+
+interface Dispatcher
+{
+    /**
+     * Register an event listener with the dispatcher.
+     *
+     * @param  \Closure|string|array  $events
+     * @param  \Closure|string|array|null  $listener
+     * @return void
+     */
+    public function listen($events, $listener = null);
+
+    /**
+     * Determine if a given event has listeners.
+     *
+     * @param  string  $eventName
+     * @return bool
+     */
+    public function hasListeners($eventName);
+
+    /**
+     * Register an event subscriber with the dispatcher.
+     *
+     * @param  object|string  $subscriber
+     * @return void
+     */
+    public function subscribe($subscriber);
+
+    /**
+     * Dispatch an event until the first non-null response is returned.
+     *
+     * @param  string|object  $event
+     * @param  mixed  $payload
+     * @return array|null
+     */
+    public function until($event, $payload = []);
+
+    /**
+     * Dispatch an event and call the listeners.
+     *
+     * @param  string|object  $event
+     * @param  mixed  $payload
+     * @param  bool  $halt
+     * @return array|null
+     */
+    public function dispatch($event, $payload = [], $halt = false);
+
+    /**
+     * Register an event and payload to be fired later.
+     *
+     * @param  string  $event
+     * @param  array  $payload
+     * @return void
+     */
+    public function push($event, $payload = []);
+
+    /**
+     * Flush a set of pushed events.
+     *
+     * @param  string  $event
+     * @return void
+     */
+    public function flush($event);
+
+    /**
+     * Remove a set of listeners from the dispatcher.
+     *
+     * @param  string  $event
+     * @return void
+     */
+    public function forget($event);
+
+    /**
+     * Forget all of the queued listeners.
+     *
+     * @return void
+     */
+    public function forgetPushed();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Cloud.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Cloud.php
new file mode 100644
index 0000000..86bea26
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Cloud.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+interface Cloud extends Filesystem
+{
+    /**
+     * Get the URL for the file at the given path.
+     *
+     * @param  string  $path
+     * @return string
+     */
+    public function url($path);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Factory.php
new file mode 100644
index 0000000..d0f9cd2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+interface Factory
+{
+    /**
+     * Get a filesystem implementation.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Filesystem\Filesystem
+     */
+    public function disk($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileExistsException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileExistsException.php
new file mode 100644
index 0000000..9027892
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileExistsException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+use Exception;
+
+class FileExistsException extends Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileNotFoundException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileNotFoundException.php
new file mode 100644
index 0000000..37b7930
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/FileNotFoundException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+use Exception;
+
+class FileNotFoundException extends Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Filesystem.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Filesystem.php
new file mode 100644
index 0000000..e8b0dd4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/Filesystem.php
@@ -0,0 +1,198 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+interface Filesystem
+{
+    /**
+     * The public visibility setting.
+     *
+     * @var string
+     */
+    const VISIBILITY_PUBLIC = 'public';
+
+    /**
+     * The private visibility setting.
+     *
+     * @var string
+     */
+    const VISIBILITY_PRIVATE = 'private';
+
+    /**
+     * Determine if a file exists.
+     *
+     * @param  string  $path
+     * @return bool
+     */
+    public function exists($path);
+
+    /**
+     * Get the contents of a file.
+     *
+     * @param  string  $path
+     * @return string
+     *
+     * @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
+     */
+    public function get($path);
+
+    /**
+     * Get a resource to read the file.
+     *
+     * @param  string  $path
+     * @return resource|null The path resource or null on failure.
+     *
+     * @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
+     */
+    public function readStream($path);
+
+    /**
+     * Write the contents of a file.
+     *
+     * @param  string  $path
+     * @param  string|resource  $contents
+     * @param  mixed  $options
+     * @return bool
+     */
+    public function put($path, $contents, $options = []);
+
+    /**
+     * Write a new file using a stream.
+     *
+     * @param  string  $path
+     * @param  resource  $resource
+     * @param  array  $options
+     * @return bool
+     *
+     * @throws \InvalidArgumentException If $resource is not a file handle.
+     * @throws \Illuminate\Contracts\Filesystem\FileExistsException
+     */
+    public function writeStream($path, $resource, array $options = []);
+
+    /**
+     * Get the visibility for the given path.
+     *
+     * @param  string  $path
+     * @return string
+     */
+    public function getVisibility($path);
+
+    /**
+     * Set the visibility for the given path.
+     *
+     * @param  string  $path
+     * @param  string  $visibility
+     * @return bool
+     */
+    public function setVisibility($path, $visibility);
+
+    /**
+     * Prepend to a file.
+     *
+     * @param  string  $path
+     * @param  string  $data
+     * @return bool
+     */
+    public function prepend($path, $data);
+
+    /**
+     * Append to a file.
+     *
+     * @param  string  $path
+     * @param  string  $data
+     * @return bool
+     */
+    public function append($path, $data);
+
+    /**
+     * Delete the file at a given path.
+     *
+     * @param  string|array  $paths
+     * @return bool
+     */
+    public function delete($paths);
+
+    /**
+     * Copy a file to a new location.
+     *
+     * @param  string  $from
+     * @param  string  $to
+     * @return bool
+     */
+    public function copy($from, $to);
+
+    /**
+     * Move a file to a new location.
+     *
+     * @param  string  $from
+     * @param  string  $to
+     * @return bool
+     */
+    public function move($from, $to);
+
+    /**
+     * Get the file size of a given file.
+     *
+     * @param  string  $path
+     * @return int
+     */
+    public function size($path);
+
+    /**
+     * Get the file's last modification time.
+     *
+     * @param  string  $path
+     * @return int
+     */
+    public function lastModified($path);
+
+    /**
+     * Get an array of all files in a directory.
+     *
+     * @param  string|null  $directory
+     * @param  bool  $recursive
+     * @return array
+     */
+    public function files($directory = null, $recursive = false);
+
+    /**
+     * Get all of the files from the given directory (recursive).
+     *
+     * @param  string|null  $directory
+     * @return array
+     */
+    public function allFiles($directory = null);
+
+    /**
+     * Get all of the directories within a given directory.
+     *
+     * @param  string|null  $directory
+     * @param  bool  $recursive
+     * @return array
+     */
+    public function directories($directory = null, $recursive = false);
+
+    /**
+     * Get all (recursive) of the directories within a given directory.
+     *
+     * @param  string|null  $directory
+     * @return array
+     */
+    public function allDirectories($directory = null);
+
+    /**
+     * Create a directory.
+     *
+     * @param  string  $path
+     * @return bool
+     */
+    public function makeDirectory($path);
+
+    /**
+     * Recursively delete a directory.
+     *
+     * @param  string  $directory
+     * @return bool
+     */
+    public function deleteDirectory($directory);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/LockTimeoutException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/LockTimeoutException.php
new file mode 100644
index 0000000..f03f5c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Filesystem/LockTimeoutException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Filesystem;
+
+use Exception;
+
+class LockTimeoutException extends Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/Application.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/Application.php
new file mode 100644
index 0000000..8ae0a31
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/Application.php
@@ -0,0 +1,215 @@
+<?php
+
+namespace Illuminate\Contracts\Foundation;
+
+use Illuminate\Contracts\Container\Container;
+
+interface Application extends Container
+{
+    /**
+     * Get the version number of the application.
+     *
+     * @return string
+     */
+    public function version();
+
+    /**
+     * Get the base path of the Laravel installation.
+     *
+     * @param  string  $path
+     * @return string
+     */
+    public function basePath($path = '');
+
+    /**
+     * Get the path to the bootstrap directory.
+     *
+     * @param  string  $path Optionally, a path to append to the bootstrap path
+     * @return string
+     */
+    public function bootstrapPath($path = '');
+
+    /**
+     * Get the path to the application configuration files.
+     *
+     * @param  string  $path Optionally, a path to append to the config path
+     * @return string
+     */
+    public function configPath($path = '');
+
+    /**
+     * Get the path to the database directory.
+     *
+     * @param  string  $path Optionally, a path to append to the database path
+     * @return string
+     */
+    public function databasePath($path = '');
+
+    /**
+     * Get the path to the resources directory.
+     *
+     * @param  string  $path
+     * @return string
+     */
+    public function resourcePath($path = '');
+
+    /**
+     * Get the path to the storage directory.
+     *
+     * @return string
+     */
+    public function storagePath();
+
+    /**
+     * Get or check the current application environment.
+     *
+     * @param  string|array  $environments
+     * @return string|bool
+     */
+    public function environment(...$environments);
+
+    /**
+     * Determine if the application is running in the console.
+     *
+     * @return bool
+     */
+    public function runningInConsole();
+
+    /**
+     * Determine if the application is running unit tests.
+     *
+     * @return bool
+     */
+    public function runningUnitTests();
+
+    /**
+     * Determine if the application is currently down for maintenance.
+     *
+     * @return bool
+     */
+    public function isDownForMaintenance();
+
+    /**
+     * Register all of the configured providers.
+     *
+     * @return void
+     */
+    public function registerConfiguredProviders();
+
+    /**
+     * Register a service provider with the application.
+     *
+     * @param  \Illuminate\Support\ServiceProvider|string  $provider
+     * @param  bool  $force
+     * @return \Illuminate\Support\ServiceProvider
+     */
+    public function register($provider, $force = false);
+
+    /**
+     * Register a deferred provider and service.
+     *
+     * @param  string  $provider
+     * @param  string|null  $service
+     * @return void
+     */
+    public function registerDeferredProvider($provider, $service = null);
+
+    /**
+     * Resolve a service provider instance from the class name.
+     *
+     * @param  string  $provider
+     * @return \Illuminate\Support\ServiceProvider
+     */
+    public function resolveProvider($provider);
+
+    /**
+     * Boot the application's service providers.
+     *
+     * @return void
+     */
+    public function boot();
+
+    /**
+     * Register a new boot listener.
+     *
+     * @param  callable  $callback
+     * @return void
+     */
+    public function booting($callback);
+
+    /**
+     * Register a new "booted" listener.
+     *
+     * @param  callable  $callback
+     * @return void
+     */
+    public function booted($callback);
+
+    /**
+     * Run the given array of bootstrap classes.
+     *
+     * @param  array  $bootstrappers
+     * @return void
+     */
+    public function bootstrapWith(array $bootstrappers);
+
+    /**
+     * Get the current application locale.
+     *
+     * @return string
+     */
+    public function getLocale();
+
+    /**
+     * Get the application namespace.
+     *
+     * @return string
+     *
+     * @throws \RuntimeException
+     */
+    public function getNamespace();
+
+    /**
+     * Get the registered service provider instances if any exist.
+     *
+     * @param  \Illuminate\Support\ServiceProvider|string  $provider
+     * @return array
+     */
+    public function getProviders($provider);
+
+    /**
+     * Determine if the application has been bootstrapped before.
+     *
+     * @return bool
+     */
+    public function hasBeenBootstrapped();
+
+    /**
+     * Load and boot all of the remaining deferred providers.
+     *
+     * @return void
+     */
+    public function loadDeferredProviders();
+
+    /**
+     * Set the current application locale.
+     *
+     * @param  string  $locale
+     * @return void
+     */
+    public function setLocale($locale);
+
+    /**
+     * Determine if middleware has been disabled for the application.
+     *
+     * @return bool
+     */
+    public function shouldSkipMiddleware();
+
+    /**
+     * Terminate the application.
+     *
+     * @return void
+     */
+    public function terminate();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesConfiguration.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesConfiguration.php
new file mode 100644
index 0000000..08ebdaf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesConfiguration.php
@@ -0,0 +1,27 @@
+<?php
+
+namespace Illuminate\Contracts\Foundation;
+
+interface CachesConfiguration
+{
+    /**
+     * Determine if the application configuration is cached.
+     *
+     * @return bool
+     */
+    public function configurationIsCached();
+
+    /**
+     * Get the path to the configuration cache file.
+     *
+     * @return string
+     */
+    public function getCachedConfigPath();
+
+    /**
+     * Get the path to the cached services.php file.
+     *
+     * @return string
+     */
+    public function getCachedServicesPath();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesRoutes.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesRoutes.php
new file mode 100644
index 0000000..a5c3455
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Foundation/CachesRoutes.php
@@ -0,0 +1,20 @@
+<?php
+
+namespace Illuminate\Contracts\Foundation;
+
+interface CachesRoutes
+{
+    /**
+     * Determine if the application routes are cached.
+     *
+     * @return bool
+     */
+    public function routesAreCached();
+
+    /**
+     * Get the path to the routes cache file.
+     *
+     * @return string
+     */
+    public function getCachedRoutesPath();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Hashing/Hasher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Hashing/Hasher.php
new file mode 100644
index 0000000..b5e4d4c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Hashing/Hasher.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace Illuminate\Contracts\Hashing;
+
+interface Hasher
+{
+    /**
+     * Get information about the given hashed value.
+     *
+     * @param  string  $hashedValue
+     * @return array
+     */
+    public function info($hashedValue);
+
+    /**
+     * Hash the given value.
+     *
+     * @param  string  $value
+     * @param  array  $options
+     * @return string
+     */
+    public function make($value, array $options = []);
+
+    /**
+     * Check the given plain value against a hash.
+     *
+     * @param  string  $value
+     * @param  string  $hashedValue
+     * @param  array  $options
+     * @return bool
+     */
+    public function check($value, $hashedValue, array $options = []);
+
+    /**
+     * Check if the given hash has been hashed using the given options.
+     *
+     * @param  string  $hashedValue
+     * @param  array  $options
+     * @return bool
+     */
+    public function needsRehash($hashedValue, array $options = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Http/Kernel.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Http/Kernel.php
new file mode 100644
index 0000000..6eab6e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Http/Kernel.php
@@ -0,0 +1,37 @@
+<?php
+
+namespace Illuminate\Contracts\Http;
+
+interface Kernel
+{
+    /**
+     * Bootstrap the application for HTTP requests.
+     *
+     * @return void
+     */
+    public function bootstrap();
+
+    /**
+     * Handle an incoming HTTP request.
+     *
+     * @param  \Symfony\Component\HttpFoundation\Request  $request
+     * @return \Symfony\Component\HttpFoundation\Response
+     */
+    public function handle($request);
+
+    /**
+     * Perform any final actions for the request lifecycle.
+     *
+     * @param  \Symfony\Component\HttpFoundation\Request  $request
+     * @param  \Symfony\Component\HttpFoundation\Response  $response
+     * @return void
+     */
+    public function terminate($request, $response);
+
+    /**
+     * Get the Laravel application instance.
+     *
+     * @return \Illuminate\Contracts\Foundation\Application
+     */
+    public function getApplication();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/LICENSE.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/LICENSE.md
new file mode 100644
index 0000000..79810c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/LICENSE.md
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) Taylor Otwell
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Factory.php
new file mode 100644
index 0000000..fe45a2f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Mail;
+
+interface Factory
+{
+    /**
+     * Get a mailer instance by name.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Mail\Mailer
+     */
+    public function mailer($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/MailQueue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/MailQueue.php
new file mode 100644
index 0000000..d0d90b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/MailQueue.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Illuminate\Contracts\Mail;
+
+interface MailQueue
+{
+    /**
+     * Queue a new e-mail message for sending.
+     *
+     * @param  \Illuminate\Contracts\Mail\Mailable|string|array  $view
+     * @param  string|null  $queue
+     * @return mixed
+     */
+    public function queue($view, $queue = null);
+
+    /**
+     * Queue a new e-mail message for sending after (n) seconds.
+     *
+     * @param  \DateTimeInterface|\DateInterval|int  $delay
+     * @param  \Illuminate\Contracts\Mail\Mailable|string|array  $view
+     * @param  string|null  $queue
+     * @return mixed
+     */
+    public function later($delay, $view, $queue = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailable.php
new file mode 100644
index 0000000..bfdf4ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailable.php
@@ -0,0 +1,76 @@
+<?php
+
+namespace Illuminate\Contracts\Mail;
+
+use Illuminate\Contracts\Queue\Factory as Queue;
+
+interface Mailable
+{
+    /**
+     * Send the message using the given mailer.
+     *
+     * @param  \Illuminate\Contracts\Mail\Factory|\Illuminate\Contracts\Mail\Mailer  $mailer
+     * @return void
+     */
+    public function send($mailer);
+
+    /**
+     * Queue the given message.
+     *
+     * @param  \Illuminate\Contracts\Queue\Factory  $queue
+     * @return mixed
+     */
+    public function queue(Queue $queue);
+
+    /**
+     * Deliver the queued message after the given delay.
+     *
+     * @param  \DateTimeInterface|\DateInterval|int  $delay
+     * @param  \Illuminate\Contracts\Queue\Factory  $queue
+     * @return mixed
+     */
+    public function later($delay, Queue $queue);
+
+    /**
+     * Set the recipients of the message.
+     *
+     * @param  object|array|string  $address
+     * @param  string|null  $name
+     * @return self
+     */
+    public function cc($address, $name = null);
+
+    /**
+     * Set the recipients of the message.
+     *
+     * @param  object|array|string  $address
+     * @param  string|null  $name
+     * @return $this
+     */
+    public function bcc($address, $name = null);
+
+    /**
+     * Set the recipients of the message.
+     *
+     * @param  object|array|string  $address
+     * @param  string|null  $name
+     * @return $this
+     */
+    public function to($address, $name = null);
+
+    /**
+     * Set the locale of the message.
+     *
+     * @param  string  $locale
+     * @return $this
+     */
+    public function locale($locale);
+
+    /**
+     * Set the name of the mailer that should be used to send the message.
+     *
+     * @param  string  $mailer
+     * @return $this
+     */
+    public function mailer($mailer);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailer.php
new file mode 100644
index 0000000..255b678
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Mail/Mailer.php
@@ -0,0 +1,48 @@
+<?php
+
+namespace Illuminate\Contracts\Mail;
+
+interface Mailer
+{
+    /**
+     * Begin the process of mailing a mailable class instance.
+     *
+     * @param  mixed  $users
+     * @return \Illuminate\Mail\PendingMail
+     */
+    public function to($users);
+
+    /**
+     * Begin the process of mailing a mailable class instance.
+     *
+     * @param  mixed  $users
+     * @return \Illuminate\Mail\PendingMail
+     */
+    public function bcc($users);
+
+    /**
+     * Send a new message with only a raw text part.
+     *
+     * @param  string  $text
+     * @param  mixed  $callback
+     * @return void
+     */
+    public function raw($text, $callback);
+
+    /**
+     * Send a new message using a view.
+     *
+     * @param  \Illuminate\Contracts\Mail\Mailable|string|array  $view
+     * @param  array  $data
+     * @param  \Closure|string|null  $callback
+     * @return void
+     */
+    public function send($view, array $data = [], $callback = null);
+
+    /**
+     * Get the array of failed recipients.
+     *
+     * @return array
+     */
+    public function failures();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Dispatcher.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Dispatcher.php
new file mode 100644
index 0000000..a483ca2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Dispatcher.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace Illuminate\Contracts\Notifications;
+
+interface Dispatcher
+{
+    /**
+     * Send the given notification to the given notifiable entities.
+     *
+     * @param  \Illuminate\Support\Collection|array|mixed  $notifiables
+     * @param  mixed  $notification
+     * @return void
+     */
+    public function send($notifiables, $notification);
+
+    /**
+     * Send the given notification immediately.
+     *
+     * @param  \Illuminate\Support\Collection|array|mixed  $notifiables
+     * @param  mixed  $notification
+     * @return void
+     */
+    public function sendNow($notifiables, $notification);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Factory.php
new file mode 100644
index 0000000..7705678
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Notifications/Factory.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace Illuminate\Contracts\Notifications;
+
+interface Factory
+{
+    /**
+     * Get a channel instance by name.
+     *
+     * @param  string|null  $name
+     * @return mixed
+     */
+    public function channel($name = null);
+
+    /**
+     * Send the given notification to the given notifiable entities.
+     *
+     * @param  \Illuminate\Support\Collection|array|mixed  $notifiables
+     * @param  mixed  $notification
+     * @return void
+     */
+    public function send($notifiables, $notification);
+
+    /**
+     * Send the given notification immediately.
+     *
+     * @param  \Illuminate\Support\Collection|array|mixed  $notifiables
+     * @param  mixed  $notification
+     * @return void
+     */
+    public function sendNow($notifiables, $notification);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/CursorPaginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/CursorPaginator.php
new file mode 100644
index 0000000..2d62d3a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/CursorPaginator.php
@@ -0,0 +1,117 @@
+<?php
+
+namespace Illuminate\Contracts\Pagination;
+
+interface CursorPaginator
+{
+    /**
+     * Get the URL for a given cursor.
+     *
+     * @param  \Illuminate\Pagination\Cursor|null  $cursor
+     * @return string
+     */
+    public function url($cursor);
+
+    /**
+     * Add a set of query string values to the paginator.
+     *
+     * @param  array|string|null  $key
+     * @param  string|null  $value
+     * @return $this
+     */
+    public function appends($key, $value = null);
+
+    /**
+     * Get / set the URL fragment to be appended to URLs.
+     *
+     * @param  string|null  $fragment
+     * @return $this|string|null
+     */
+    public function fragment($fragment = null);
+
+    /**
+     * Get the URL for the previous page, or null.
+     *
+     * @return string|null
+     */
+    public function previousPageUrl();
+
+    /**
+     * The URL for the next page, or null.
+     *
+     * @return string|null
+     */
+    public function nextPageUrl();
+
+    /**
+     * Get all of the items being paginated.
+     *
+     * @return array
+     */
+    public function items();
+
+    /**
+     * Get the "cursor" of the previous set of items.
+     *
+     * @return \Illuminate\Pagination\Cursor|null
+     */
+    public function previousCursor();
+
+    /**
+     * Get the "cursor" of the next set of items.
+     *
+     * @return \Illuminate\Pagination\Cursor|null
+     */
+    public function nextCursor();
+
+    /**
+     * Determine how many items are being shown per page.
+     *
+     * @return int
+     */
+    public function perPage();
+
+    /**
+     * Get the current cursor being paginated.
+     *
+     * @return \Illuminate\Pagination\Cursor|null
+     */
+    public function cursor();
+
+    /**
+     * Determine if there are enough items to split into multiple pages.
+     *
+     * @return bool
+     */
+    public function hasPages();
+
+    /**
+     * Get the base path for paginator generated URLs.
+     *
+     * @return string|null
+     */
+    public function path();
+
+    /**
+     * Determine if the list of items is empty or not.
+     *
+     * @return bool
+     */
+    public function isEmpty();
+
+    /**
+     * Determine if the list of items is not empty.
+     *
+     * @return bool
+     */
+    public function isNotEmpty();
+
+    /**
+     * Render the paginator using a given view.
+     *
+     * @param  string|null  $view
+     * @param  array  $data
+     * @return string
+     */
+    public function render($view = null, $data = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/LengthAwarePaginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/LengthAwarePaginator.php
new file mode 100644
index 0000000..4e6ef71
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/LengthAwarePaginator.php
@@ -0,0 +1,29 @@
+<?php
+
+namespace Illuminate\Contracts\Pagination;
+
+interface LengthAwarePaginator extends Paginator
+{
+    /**
+     * Create a range of pagination URLs.
+     *
+     * @param  int  $start
+     * @param  int  $end
+     * @return array
+     */
+    public function getUrlRange($start, $end);
+
+    /**
+     * Determine the total number of items in the data store.
+     *
+     * @return int
+     */
+    public function total();
+
+    /**
+     * Get the page number of the last available page.
+     *
+     * @return int
+     */
+    public function lastPage();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/Paginator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/Paginator.php
new file mode 100644
index 0000000..49bafaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pagination/Paginator.php
@@ -0,0 +1,124 @@
+<?php
+
+namespace Illuminate\Contracts\Pagination;
+
+interface Paginator
+{
+    /**
+     * Get the URL for a given page.
+     *
+     * @param  int  $page
+     * @return string
+     */
+    public function url($page);
+
+    /**
+     * Add a set of query string values to the paginator.
+     *
+     * @param  array|string  $key
+     * @param  string|null  $value
+     * @return $this
+     */
+    public function appends($key, $value = null);
+
+    /**
+     * Get / set the URL fragment to be appended to URLs.
+     *
+     * @param  string|null  $fragment
+     * @return $this|string
+     */
+    public function fragment($fragment = null);
+
+    /**
+     * The URL for the next page, or null.
+     *
+     * @return string|null
+     */
+    public function nextPageUrl();
+
+    /**
+     * Get the URL for the previous page, or null.
+     *
+     * @return string|null
+     */
+    public function previousPageUrl();
+
+    /**
+     * Get all of the items being paginated.
+     *
+     * @return array
+     */
+    public function items();
+
+    /**
+     * Get the "index" of the first item being paginated.
+     *
+     * @return int
+     */
+    public function firstItem();
+
+    /**
+     * Get the "index" of the last item being paginated.
+     *
+     * @return int
+     */
+    public function lastItem();
+
+    /**
+     * Determine how many items are being shown per page.
+     *
+     * @return int
+     */
+    public function perPage();
+
+    /**
+     * Determine the current page being paginated.
+     *
+     * @return int
+     */
+    public function currentPage();
+
+    /**
+     * Determine if there are enough items to split into multiple pages.
+     *
+     * @return bool
+     */
+    public function hasPages();
+
+    /**
+     * Determine if there are more items in the data store.
+     *
+     * @return bool
+     */
+    public function hasMorePages();
+
+    /**
+     * Get the base path for paginator generated URLs.
+     *
+     * @return string|null
+     */
+    public function path();
+
+    /**
+     * Determine if the list of items is empty or not.
+     *
+     * @return bool
+     */
+    public function isEmpty();
+
+    /**
+     * Determine if the list of items is not empty.
+     *
+     * @return bool
+     */
+    public function isNotEmpty();
+
+    /**
+     * Render the paginator using a given view.
+     *
+     * @param  string|null  $view
+     * @param  array  $data
+     * @return string
+     */
+    public function render($view = null, $data = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Hub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Hub.php
new file mode 100644
index 0000000..1ae675f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Hub.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace Illuminate\Contracts\Pipeline;
+
+interface Hub
+{
+    /**
+     * Send an object through one of the available pipelines.
+     *
+     * @param  mixed  $object
+     * @param  string|null  $pipeline
+     * @return mixed
+     */
+    public function pipe($object, $pipeline = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Pipeline.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Pipeline.php
new file mode 100644
index 0000000..226081c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Pipeline/Pipeline.php
@@ -0,0 +1,40 @@
+<?php
+
+namespace Illuminate\Contracts\Pipeline;
+
+use Closure;
+
+interface Pipeline
+{
+    /**
+     * Set the traveler object being sent on the pipeline.
+     *
+     * @param  mixed  $traveler
+     * @return $this
+     */
+    public function send($traveler);
+
+    /**
+     * Set the stops of the pipeline.
+     *
+     * @param  dynamic|array  $stops
+     * @return $this
+     */
+    public function through($stops);
+
+    /**
+     * Set the method to call on the stops.
+     *
+     * @param  string  $method
+     * @return $this
+     */
+    public function via($method);
+
+    /**
+     * Run the pipeline with a final destination callback.
+     *
+     * @param  \Closure  $destination
+     * @return mixed
+     */
+    public function then(Closure $destination);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ClearableQueue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ClearableQueue.php
new file mode 100644
index 0000000..427f61b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ClearableQueue.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface ClearableQueue
+{
+    /**
+     * Delete all of the jobs from the queue.
+     *
+     * @param  string  $queue
+     * @return int
+     */
+    public function clear($queue);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityNotFoundException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityNotFoundException.php
new file mode 100644
index 0000000..079250d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityNotFoundException.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+use InvalidArgumentException;
+
+class EntityNotFoundException extends InvalidArgumentException
+{
+    /**
+     * Create a new exception instance.
+     *
+     * @param  string  $type
+     * @param  mixed  $id
+     * @return void
+     */
+    public function __construct($type, $id)
+    {
+        $id = (string) $id;
+
+        parent::__construct("Queueable entity [{$type}] not found for ID [{$id}].");
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityResolver.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityResolver.php
new file mode 100644
index 0000000..aad97a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/EntityResolver.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface EntityResolver
+{
+    /**
+     * Resolve the entity for the given ID.
+     *
+     * @param  string  $type
+     * @param  mixed  $id
+     * @return mixed
+     */
+    public function resolve($type, $id);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Factory.php
new file mode 100644
index 0000000..9a0bdeb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface Factory
+{
+    /**
+     * Resolve a queue connection instance.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Contracts\Queue\Queue
+     */
+    public function connection($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Job.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Job.php
new file mode 100644
index 0000000..c856215
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Job.php
@@ -0,0 +1,166 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface Job
+{
+    /**
+     * Get the UUID of the job.
+     *
+     * @return string|null
+     */
+    public function uuid();
+
+    /**
+     * Get the job identifier.
+     *
+     * @return string
+     */
+    public function getJobId();
+
+    /**
+     * Get the decoded body of the job.
+     *
+     * @return array
+     */
+    public function payload();
+
+    /**
+     * Fire the job.
+     *
+     * @return void
+     */
+    public function fire();
+
+    /**
+     * Release the job back into the queue.
+     *
+     * Accepts a delay specified in seconds.
+     *
+     * @param  int  $delay
+     * @return void
+     */
+    public function release($delay = 0);
+
+    /**
+     * Determine if the job was released back into the queue.
+     *
+     * @return bool
+     */
+    public function isReleased();
+
+    /**
+     * Delete the job from the queue.
+     *
+     * @return void
+     */
+    public function delete();
+
+    /**
+     * Determine if the job has been deleted.
+     *
+     * @return bool
+     */
+    public function isDeleted();
+
+    /**
+     * Determine if the job has been deleted or released.
+     *
+     * @return bool
+     */
+    public function isDeletedOrReleased();
+
+    /**
+     * Get the number of times the job has been attempted.
+     *
+     * @return int
+     */
+    public function attempts();
+
+    /**
+     * Determine if the job has been marked as a failure.
+     *
+     * @return bool
+     */
+    public function hasFailed();
+
+    /**
+     * Mark the job as "failed".
+     *
+     * @return void
+     */
+    public function markAsFailed();
+
+    /**
+     * Delete the job, call the "failed" method, and raise the failed job event.
+     *
+     * @param  \Throwable|null  $e
+     * @return void
+     */
+    public function fail($e = null);
+
+    /**
+     * Get the number of times to attempt a job.
+     *
+     * @return int|null
+     */
+    public function maxTries();
+
+    /**
+     * Get the maximum number of exceptions allowed, regardless of attempts.
+     *
+     * @return int|null
+     */
+    public function maxExceptions();
+
+    /**
+     * Get the number of seconds the job can run.
+     *
+     * @return int|null
+     */
+    public function timeout();
+
+    /**
+     * Get the timestamp indicating when the job should timeout.
+     *
+     * @return int|null
+     */
+    public function retryUntil();
+
+    /**
+     * Get the name of the queued job class.
+     *
+     * @return string
+     */
+    public function getName();
+
+    /**
+     * Get the resolved name of the queued job class.
+     *
+     * Resolves the name of "wrapped" jobs such as class-based handlers.
+     *
+     * @return string
+     */
+    public function resolveName();
+
+    /**
+     * Get the name of the connection the job belongs to.
+     *
+     * @return string
+     */
+    public function getConnectionName();
+
+    /**
+     * Get the name of the queue the job belongs to.
+     *
+     * @return string
+     */
+    public function getQueue();
+
+    /**
+     * Get the raw body string for the job.
+     *
+     * @return string
+     */
+    public function getRawBody();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Monitor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Monitor.php
new file mode 100644
index 0000000..7da62d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Monitor.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface Monitor
+{
+    /**
+     * Register a callback to be executed on every iteration through the queue loop.
+     *
+     * @param  mixed  $callback
+     * @return void
+     */
+    public function looping($callback);
+
+    /**
+     * Register a callback to be executed when a job fails after the maximum amount of retries.
+     *
+     * @param  mixed  $callback
+     * @return void
+     */
+    public function failing($callback);
+
+    /**
+     * Register a callback to be executed when a daemon queue is stopping.
+     *
+     * @param  mixed  $callback
+     * @return void
+     */
+    public function stopping($callback);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Queue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Queue.php
new file mode 100644
index 0000000..073b3c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/Queue.php
@@ -0,0 +1,99 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface Queue
+{
+    /**
+     * Get the size of the queue.
+     *
+     * @param  string|null  $queue
+     * @return int
+     */
+    public function size($queue = null);
+
+    /**
+     * Push a new job onto the queue.
+     *
+     * @param  string|object  $job
+     * @param  mixed  $data
+     * @param  string|null  $queue
+     * @return mixed
+     */
+    public function push($job, $data = '', $queue = null);
+
+    /**
+     * Push a new job onto the queue.
+     *
+     * @param  string  $queue
+     * @param  string|object  $job
+     * @param  mixed  $data
+     * @return mixed
+     */
+    public function pushOn($queue, $job, $data = '');
+
+    /**
+     * Push a raw payload onto the queue.
+     *
+     * @param  string  $payload
+     * @param  string|null  $queue
+     * @param  array  $options
+     * @return mixed
+     */
+    public function pushRaw($payload, $queue = null, array $options = []);
+
+    /**
+     * Push a new job onto the queue after a delay.
+     *
+     * @param  \DateTimeInterface|\DateInterval|int  $delay
+     * @param  string|object  $job
+     * @param  mixed  $data
+     * @param  string|null  $queue
+     * @return mixed
+     */
+    public function later($delay, $job, $data = '', $queue = null);
+
+    /**
+     * Push a new job onto the queue after a delay.
+     *
+     * @param  string  $queue
+     * @param  \DateTimeInterface|\DateInterval|int  $delay
+     * @param  string|object  $job
+     * @param  mixed  $data
+     * @return mixed
+     */
+    public function laterOn($queue, $delay, $job, $data = '');
+
+    /**
+     * Push an array of jobs onto the queue.
+     *
+     * @param  array  $jobs
+     * @param  mixed  $data
+     * @param  string|null  $queue
+     * @return mixed
+     */
+    public function bulk($jobs, $data = '', $queue = null);
+
+    /**
+     * Pop the next job off of the queue.
+     *
+     * @param  string|null  $queue
+     * @return \Illuminate\Contracts\Queue\Job|null
+     */
+    public function pop($queue = null);
+
+    /**
+     * Get the connection name for the queue.
+     *
+     * @return string
+     */
+    public function getConnectionName();
+
+    /**
+     * Set the connection name for the queue.
+     *
+     * @param  string  $name
+     * @return $this
+     */
+    public function setConnectionName($name);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableCollection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableCollection.php
new file mode 100644
index 0000000..7f1ea19
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableCollection.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface QueueableCollection
+{
+    /**
+     * Get the type of the entities being queued.
+     *
+     * @return string|null
+     */
+    public function getQueueableClass();
+
+    /**
+     * Get the identifiers for all of the entities.
+     *
+     * @return array
+     */
+    public function getQueueableIds();
+
+    /**
+     * Get the relationships of the entities being queued.
+     *
+     * @return array
+     */
+    public function getQueueableRelations();
+
+    /**
+     * Get the connection of the entities being queued.
+     *
+     * @return string|null
+     */
+    public function getQueueableConnection();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableEntity.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableEntity.php
new file mode 100644
index 0000000..366f0c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/QueueableEntity.php
@@ -0,0 +1,27 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface QueueableEntity
+{
+    /**
+     * Get the queueable identity for the entity.
+     *
+     * @return mixed
+     */
+    public function getQueueableId();
+
+    /**
+     * Get the relationships for the entity.
+     *
+     * @return array
+     */
+    public function getQueueableRelations();
+
+    /**
+     * Get the connection of the entity.
+     *
+     * @return string|null
+     */
+    public function getQueueableConnection();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeEncrypted.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeEncrypted.php
new file mode 100644
index 0000000..374df89
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeEncrypted.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface ShouldBeEncrypted
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUnique.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUnique.php
new file mode 100644
index 0000000..b216434
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUnique.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface ShouldBeUnique
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUniqueUntilProcessing.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUniqueUntilProcessing.php
new file mode 100644
index 0000000..510cab9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldBeUniqueUntilProcessing.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface ShouldBeUniqueUntilProcessing extends ShouldBeUnique
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldQueue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldQueue.php
new file mode 100644
index 0000000..0e99652
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Queue/ShouldQueue.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Queue;
+
+interface ShouldQueue
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connection.php
new file mode 100644
index 0000000..74a8832
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connection.php
@@ -0,0 +1,35 @@
+<?php
+
+namespace Illuminate\Contracts\Redis;
+
+use Closure;
+
+interface Connection
+{
+    /**
+     * Subscribe to a set of given channels for messages.
+     *
+     * @param  array|string  $channels
+     * @param  \Closure  $callback
+     * @return void
+     */
+    public function subscribe($channels, Closure $callback);
+
+    /**
+     * Subscribe to a set of given channels with wildcards.
+     *
+     * @param  array|string  $channels
+     * @param  \Closure  $callback
+     * @return void
+     */
+    public function psubscribe($channels, Closure $callback);
+
+    /**
+     * Run a command against the Redis database.
+     *
+     * @param  string  $method
+     * @param  array  $parameters
+     * @return mixed
+     */
+    public function command($method, array $parameters = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connector.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connector.php
new file mode 100644
index 0000000..e2669f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Connector.php
@@ -0,0 +1,25 @@
+<?php
+
+namespace Illuminate\Contracts\Redis;
+
+interface Connector
+{
+    /**
+     * Create a connection to a Redis cluster.
+     *
+     * @param  array  $config
+     * @param  array  $options
+     * @return \Illuminate\Redis\Connections\Connection
+     */
+    public function connect(array $config, array $options);
+
+    /**
+     * Create a connection to a Redis instance.
+     *
+     * @param  array  $config
+     * @param  array  $clusterOptions
+     * @param  array  $options
+     * @return \Illuminate\Redis\Connections\Connection
+     */
+    public function connectToCluster(array $config, array $clusterOptions, array $options);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Factory.php
new file mode 100644
index 0000000..c2bfe81
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/Factory.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Redis;
+
+interface Factory
+{
+    /**
+     * Get a Redis connection by name.
+     *
+     * @param  string|null  $name
+     * @return \Illuminate\Redis\Connections\Connection
+     */
+    public function connection($name = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/LimiterTimeoutException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/LimiterTimeoutException.php
new file mode 100644
index 0000000..651bf90
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Redis/LimiterTimeoutException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Illuminate\Contracts\Redis;
+
+use Exception;
+
+class LimiterTimeoutException extends Exception
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/BindingRegistrar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/BindingRegistrar.php
new file mode 100644
index 0000000..6ed5079
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/BindingRegistrar.php
@@ -0,0 +1,23 @@
+<?php
+
+namespace Illuminate\Contracts\Routing;
+
+interface BindingRegistrar
+{
+    /**
+     * Add a new route parameter binder.
+     *
+     * @param  string  $key
+     * @param  string|callable  $binder
+     * @return void
+     */
+    public function bind($key, $binder);
+
+    /**
+     * Get the binding callback for a given binding.
+     *
+     * @param  string  $key
+     * @return \Closure
+     */
+    public function getBindingCallback($key);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/Registrar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/Registrar.php
new file mode 100644
index 0000000..57e3272
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/Registrar.php
@@ -0,0 +1,105 @@
+<?php
+
+namespace Illuminate\Contracts\Routing;
+
+interface Registrar
+{
+    /**
+     * Register a new GET route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function get($uri, $action);
+
+    /**
+     * Register a new POST route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function post($uri, $action);
+
+    /**
+     * Register a new PUT route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function put($uri, $action);
+
+    /**
+     * Register a new DELETE route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function delete($uri, $action);
+
+    /**
+     * Register a new PATCH route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function patch($uri, $action);
+
+    /**
+     * Register a new OPTIONS route with the router.
+     *
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function options($uri, $action);
+
+    /**
+     * Register a new route with the given verbs.
+     *
+     * @param  array|string  $methods
+     * @param  string  $uri
+     * @param  array|string|callable  $action
+     * @return \Illuminate\Routing\Route
+     */
+    public function match($methods, $uri, $action);
+
+    /**
+     * Route a resource to a controller.
+     *
+     * @param  string  $name
+     * @param  string  $controller
+     * @param  array  $options
+     * @return \Illuminate\Routing\PendingResourceRegistration
+     */
+    public function resource($name, $controller, array $options = []);
+
+    /**
+     * Create a route group with shared attributes.
+     *
+     * @param  array  $attributes
+     * @param  \Closure|string  $routes
+     * @return void
+     */
+    public function group(array $attributes, $routes);
+
+    /**
+     * Substitute the route bindings onto the route.
+     *
+     * @param  \Illuminate\Routing\Route  $route
+     * @return \Illuminate\Routing\Route
+     */
+    public function substituteBindings($route);
+
+    /**
+     * Substitute the implicit Eloquent model bindings for the route.
+     *
+     * @param  \Illuminate\Routing\Route  $route
+     * @return void
+     */
+    public function substituteImplicitBindings($route);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/ResponseFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/ResponseFactory.php
new file mode 100644
index 0000000..2cd928d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/ResponseFactory.php
@@ -0,0 +1,155 @@
+<?php
+
+namespace Illuminate\Contracts\Routing;
+
+interface ResponseFactory
+{
+    /**
+     * Create a new response instance.
+     *
+     * @param  string  $content
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Illuminate\Http\Response
+     */
+    public function make($content = '', $status = 200, array $headers = []);
+
+    /**
+     * Create a new "no content" response.
+     *
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Illuminate\Http\Response
+     */
+    public function noContent($status = 204, array $headers = []);
+
+    /**
+     * Create a new response for a given view.
+     *
+     * @param  string|array  $view
+     * @param  array  $data
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Illuminate\Http\Response
+     */
+    public function view($view, $data = [], $status = 200, array $headers = []);
+
+    /**
+     * Create a new JSON response instance.
+     *
+     * @param  mixed  $data
+     * @param  int  $status
+     * @param  array  $headers
+     * @param  int  $options
+     * @return \Illuminate\Http\JsonResponse
+     */
+    public function json($data = [], $status = 200, array $headers = [], $options = 0);
+
+    /**
+     * Create a new JSONP response instance.
+     *
+     * @param  string  $callback
+     * @param  mixed  $data
+     * @param  int  $status
+     * @param  array  $headers
+     * @param  int  $options
+     * @return \Illuminate\Http\JsonResponse
+     */
+    public function jsonp($callback, $data = [], $status = 200, array $headers = [], $options = 0);
+
+    /**
+     * Create a new streamed response instance.
+     *
+     * @param  \Closure  $callback
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Symfony\Component\HttpFoundation\StreamedResponse
+     */
+    public function stream($callback, $status = 200, array $headers = []);
+
+    /**
+     * Create a new streamed response instance as a file download.
+     *
+     * @param  \Closure  $callback
+     * @param  string|null  $name
+     * @param  array  $headers
+     * @param  string|null  $disposition
+     * @return \Symfony\Component\HttpFoundation\StreamedResponse
+     */
+    public function streamDownload($callback, $name = null, array $headers = [], $disposition = 'attachment');
+
+    /**
+     * Create a new file download response.
+     *
+     * @param  \SplFileInfo|string  $file
+     * @param  string|null  $name
+     * @param  array  $headers
+     * @param  string|null  $disposition
+     * @return \Symfony\Component\HttpFoundation\BinaryFileResponse
+     */
+    public function download($file, $name = null, array $headers = [], $disposition = 'attachment');
+
+    /**
+     * Return the raw contents of a binary file.
+     *
+     * @param  \SplFileInfo|string  $file
+     * @param  array  $headers
+     * @return \Symfony\Component\HttpFoundation\BinaryFileResponse
+     */
+    public function file($file, array $headers = []);
+
+    /**
+     * Create a new redirect response to the given path.
+     *
+     * @param  string  $path
+     * @param  int  $status
+     * @param  array  $headers
+     * @param  bool|null  $secure
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function redirectTo($path, $status = 302, $headers = [], $secure = null);
+
+    /**
+     * Create a new redirect response to a named route.
+     *
+     * @param  string  $route
+     * @param  mixed  $parameters
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function redirectToRoute($route, $parameters = [], $status = 302, $headers = []);
+
+    /**
+     * Create a new redirect response to a controller action.
+     *
+     * @param  string  $action
+     * @param  mixed  $parameters
+     * @param  int  $status
+     * @param  array  $headers
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function redirectToAction($action, $parameters = [], $status = 302, $headers = []);
+
+    /**
+     * Create a new redirect response, while putting the current URL in the session.
+     *
+     * @param  string  $path
+     * @param  int  $status
+     * @param  array  $headers
+     * @param  bool|null  $secure
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function redirectGuest($path, $status = 302, $headers = [], $secure = null);
+
+    /**
+     * Create a new redirect response to the previously intended location.
+     *
+     * @param  string  $default
+     * @param  int  $status
+     * @param  array  $headers
+     * @param  bool|null  $secure
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function redirectToIntended($default = '/', $status = 302, $headers = [], $secure = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlGenerator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlGenerator.php
new file mode 100644
index 0000000..e576dda
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlGenerator.php
@@ -0,0 +1,79 @@
+<?php
+
+namespace Illuminate\Contracts\Routing;
+
+interface UrlGenerator
+{
+    /**
+     * Get the current URL for the request.
+     *
+     * @return string
+     */
+    public function current();
+
+    /**
+     * Get the URL for the previous request.
+     *
+     * @param  mixed  $fallback
+     * @return string
+     */
+    public function previous($fallback = false);
+
+    /**
+     * Generate an absolute URL to the given path.
+     *
+     * @param  string  $path
+     * @param  mixed  $extra
+     * @param  bool|null  $secure
+     * @return string
+     */
+    public function to($path, $extra = [], $secure = null);
+
+    /**
+     * Generate a secure, absolute URL to the given path.
+     *
+     * @param  string  $path
+     * @param  array  $parameters
+     * @return string
+     */
+    public function secure($path, $parameters = []);
+
+    /**
+     * Generate the URL to an application asset.
+     *
+     * @param  string  $path
+     * @param  bool|null  $secure
+     * @return string
+     */
+    public function asset($path, $secure = null);
+
+    /**
+     * Get the URL to a named route.
+     *
+     * @param  string  $name
+     * @param  mixed  $parameters
+     * @param  bool  $absolute
+     * @return string
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function route($name, $parameters = [], $absolute = true);
+
+    /**
+     * Get the URL to a controller action.
+     *
+     * @param  string|array  $action
+     * @param  mixed  $parameters
+     * @param  bool  $absolute
+     * @return string
+     */
+    public function action($action, $parameters = [], $absolute = true);
+
+    /**
+     * Set the root controller namespace.
+     *
+     * @param  string  $rootNamespace
+     * @return $this
+     */
+    public function setRootControllerNamespace($rootNamespace);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlRoutable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlRoutable.php
new file mode 100644
index 0000000..48c3d72
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Routing/UrlRoutable.php
@@ -0,0 +1,39 @@
+<?php
+
+namespace Illuminate\Contracts\Routing;
+
+interface UrlRoutable
+{
+    /**
+     * Get the value of the model's route key.
+     *
+     * @return mixed
+     */
+    public function getRouteKey();
+
+    /**
+     * Get the route key for the model.
+     *
+     * @return string
+     */
+    public function getRouteKeyName();
+
+    /**
+     * Retrieve the model for a bound value.
+     *
+     * @param  mixed  $value
+     * @param  string|null  $field
+     * @return \Illuminate\Database\Eloquent\Model|null
+     */
+    public function resolveRouteBinding($value, $field = null);
+
+    /**
+     * Retrieve the child model for a bound value.
+     *
+     * @param  string  $childType
+     * @param  mixed  $value
+     * @param  string|null  $field
+     * @return \Illuminate\Database\Eloquent\Model|null
+     */
+    public function resolveChildRouteBinding($childType, $value, $field);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Session/Session.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Session/Session.php
new file mode 100644
index 0000000..1bf025a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Session/Session.php
@@ -0,0 +1,204 @@
+<?php
+
+namespace Illuminate\Contracts\Session;
+
+interface Session
+{
+    /**
+     * Get the name of the session.
+     *
+     * @return string
+     */
+    public function getName();
+
+    /**
+     * Set the name of the session.
+     *
+     * @param  string  $name
+     * @return void
+     */
+    public function setName($name);
+
+    /**
+     * Get the current session ID.
+     *
+     * @return string
+     */
+    public function getId();
+
+    /**
+     * Set the session ID.
+     *
+     * @param  string  $id
+     * @return void
+     */
+    public function setId($id);
+
+    /**
+     * Start the session, reading the data from a handler.
+     *
+     * @return bool
+     */
+    public function start();
+
+    /**
+     * Save the session data to storage.
+     *
+     * @return void
+     */
+    public function save();
+
+    /**
+     * Get all of the session data.
+     *
+     * @return array
+     */
+    public function all();
+
+    /**
+     * Checks if a key exists.
+     *
+     * @param  string|array  $key
+     * @return bool
+     */
+    public function exists($key);
+
+    /**
+     * Checks if a key is present and not null.
+     *
+     * @param  string|array  $key
+     * @return bool
+     */
+    public function has($key);
+
+    /**
+     * Get an item from the session.
+     *
+     * @param  string  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function get($key, $default = null);
+
+    /**
+     * Get the value of a given key and then forget it.
+     *
+     * @param  string  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function pull($key, $default = null);
+
+    /**
+     * Put a key / value pair or array of key / value pairs in the session.
+     *
+     * @param  string|array  $key
+     * @param  mixed  $value
+     * @return void
+     */
+    public function put($key, $value = null);
+
+    /**
+     * Get the CSRF token value.
+     *
+     * @return string
+     */
+    public function token();
+
+    /**
+     * Regenerate the CSRF token value.
+     *
+     * @return void
+     */
+    public function regenerateToken();
+
+    /**
+     * Remove an item from the session, returning its value.
+     *
+     * @param  string  $key
+     * @return mixed
+     */
+    public function remove($key);
+
+    /**
+     * Remove one or many items from the session.
+     *
+     * @param  string|array  $keys
+     * @return void
+     */
+    public function forget($keys);
+
+    /**
+     * Remove all of the items from the session.
+     *
+     * @return void
+     */
+    public function flush();
+
+    /**
+     * Flush the session data and regenerate the ID.
+     *
+     * @return bool
+     */
+    public function invalidate();
+
+    /**
+     * Generate a new session identifier.
+     *
+     * @param  bool  $destroy
+     * @return bool
+     */
+    public function regenerate($destroy = false);
+
+    /**
+     * Generate a new session ID for the session.
+     *
+     * @param  bool  $destroy
+     * @return bool
+     */
+    public function migrate($destroy = false);
+
+    /**
+     * Determine if the session has been started.
+     *
+     * @return bool
+     */
+    public function isStarted();
+
+    /**
+     * Get the previous URL from the session.
+     *
+     * @return string|null
+     */
+    public function previousUrl();
+
+    /**
+     * Set the "previous" URL in the session.
+     *
+     * @param  string  $url
+     * @return void
+     */
+    public function setPreviousUrl($url);
+
+    /**
+     * Get the session handler instance.
+     *
+     * @return \SessionHandlerInterface
+     */
+    public function getHandler();
+
+    /**
+     * Determine if the session handler needs a request.
+     *
+     * @return bool
+     */
+    public function handlerNeedsRequest();
+
+    /**
+     * Set the request on the handler instance.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return void
+     */
+    public function setRequestOnHandler($request);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Arrayable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Arrayable.php
new file mode 100755
index 0000000..5ad93b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Arrayable.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface Arrayable
+{
+    /**
+     * Get the instance as an array.
+     *
+     * @return array
+     */
+    public function toArray();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferrableProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferrableProvider.php
new file mode 100644
index 0000000..cfecf8b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferrableProvider.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface DeferrableProvider
+{
+    /**
+     * Get the services provided by the provider.
+     *
+     * @return array
+     */
+    public function provides();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferringDisplayableValue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferringDisplayableValue.php
new file mode 100644
index 0000000..ac21d7e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/DeferringDisplayableValue.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface DeferringDisplayableValue
+{
+    /**
+     * Resolve the displayable value that the class is deferring.
+     *
+     * @return \Illuminate\Contracts\Support\Htmlable|string
+     */
+    public function resolveDisplayableValue();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Htmlable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Htmlable.php
new file mode 100644
index 0000000..32f643a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Htmlable.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface Htmlable
+{
+    /**
+     * Get content as a string of HTML.
+     *
+     * @return string
+     */
+    public function toHtml();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Jsonable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Jsonable.php
new file mode 100755
index 0000000..f5641c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Jsonable.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface Jsonable
+{
+    /**
+     * Convert the object to its JSON representation.
+     *
+     * @param  int  $options
+     * @return string
+     */
+    public function toJson($options = 0);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageBag.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageBag.php
new file mode 100644
index 0000000..7f708ac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageBag.php
@@ -0,0 +1,102 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+use Countable;
+
+interface MessageBag extends Arrayable, Countable
+{
+    /**
+     * Get the keys present in the message bag.
+     *
+     * @return array
+     */
+    public function keys();
+
+    /**
+     * Add a message to the bag.
+     *
+     * @param  string  $key
+     * @param  string  $message
+     * @return $this
+     */
+    public function add($key, $message);
+
+    /**
+     * Merge a new array of messages into the bag.
+     *
+     * @param  \Illuminate\Contracts\Support\MessageProvider|array  $messages
+     * @return $this
+     */
+    public function merge($messages);
+
+    /**
+     * Determine if messages exist for a given key.
+     *
+     * @param  string|array  $key
+     * @return bool
+     */
+    public function has($key);
+
+    /**
+     * Get the first message from the bag for a given key.
+     *
+     * @param  string|null  $key
+     * @param  string|null  $format
+     * @return string
+     */
+    public function first($key = null, $format = null);
+
+    /**
+     * Get all of the messages from the bag for a given key.
+     *
+     * @param  string  $key
+     * @param  string|null  $format
+     * @return array
+     */
+    public function get($key, $format = null);
+
+    /**
+     * Get all of the messages for every key in the bag.
+     *
+     * @param  string|null  $format
+     * @return array
+     */
+    public function all($format = null);
+
+    /**
+     * Get the raw messages in the container.
+     *
+     * @return array
+     */
+    public function getMessages();
+
+    /**
+     * Get the default message format.
+     *
+     * @return string
+     */
+    public function getFormat();
+
+    /**
+     * Set the default message format.
+     *
+     * @param  string  $format
+     * @return $this
+     */
+    public function setFormat($format = ':message');
+
+    /**
+     * Determine if the message bag has any messages.
+     *
+     * @return bool
+     */
+    public function isEmpty();
+
+    /**
+     * Determine if the message bag has any messages.
+     *
+     * @return bool
+     */
+    public function isNotEmpty();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageProvider.php
new file mode 100755
index 0000000..f15ce73
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/MessageProvider.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface MessageProvider
+{
+    /**
+     * Get the messages for the instance.
+     *
+     * @return \Illuminate\Contracts\Support\MessageBag
+     */
+    public function getMessageBag();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Renderable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Renderable.php
new file mode 100755
index 0000000..25c181e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Renderable.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface Renderable
+{
+    /**
+     * Get the evaluated contents of the object.
+     *
+     * @return string
+     */
+    public function render();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Responsable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Responsable.php
new file mode 100644
index 0000000..1738ec0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Support/Responsable.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Support;
+
+interface Responsable
+{
+    /**
+     * Create an HTTP response that represents the object.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Symfony\Component\HttpFoundation\Response
+     */
+    public function toResponse($request);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/HasLocalePreference.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/HasLocalePreference.php
new file mode 100644
index 0000000..1b1f16d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/HasLocalePreference.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Translation;
+
+interface HasLocalePreference
+{
+    /**
+     * Get the preferred locale of the entity.
+     *
+     * @return string|null
+     */
+    public function preferredLocale();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Loader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Loader.php
new file mode 100755
index 0000000..b08418d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Loader.php
@@ -0,0 +1,40 @@
+<?php
+
+namespace Illuminate\Contracts\Translation;
+
+interface Loader
+{
+    /**
+     * Load the messages for the given locale.
+     *
+     * @param  string  $locale
+     * @param  string  $group
+     * @param  string|null  $namespace
+     * @return array
+     */
+    public function load($locale, $group, $namespace = null);
+
+    /**
+     * Add a new namespace to the loader.
+     *
+     * @param  string  $namespace
+     * @param  string  $hint
+     * @return void
+     */
+    public function addNamespace($namespace, $hint);
+
+    /**
+     * Add a new JSON path to the loader.
+     *
+     * @param  string  $path
+     * @return void
+     */
+    public function addJsonPath($path);
+
+    /**
+     * Get an array of all the registered namespaces.
+     *
+     * @return array
+     */
+    public function namespaces();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Translator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Translator.php
new file mode 100644
index 0000000..6eae491
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Translation/Translator.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace Illuminate\Contracts\Translation;
+
+interface Translator
+{
+    /**
+     * Get the translation for a given key.
+     *
+     * @param  string  $key
+     * @param  array  $replace
+     * @param  string|null  $locale
+     * @return mixed
+     */
+    public function get($key, array $replace = [], $locale = null);
+
+    /**
+     * Get a translation according to an integer value.
+     *
+     * @param  string  $key
+     * @param  \Countable|int|array  $number
+     * @param  array  $replace
+     * @param  string|null  $locale
+     * @return string
+     */
+    public function choice($key, $number, array $replace = [], $locale = null);
+
+    /**
+     * Get the default locale being used.
+     *
+     * @return string
+     */
+    public function getLocale();
+
+    /**
+     * Set the default locale.
+     *
+     * @param  string  $locale
+     * @return void
+     */
+    public function setLocale($locale);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/DataAwareRule.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/DataAwareRule.php
new file mode 100644
index 0000000..7ec7ab5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/DataAwareRule.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface DataAwareRule
+{
+    /**
+     * Set the data under validation.
+     *
+     * @param  array  $data
+     * @return $this
+     */
+    public function setData($data);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Factory.php
new file mode 100644
index 0000000..104675a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Factory.php
@@ -0,0 +1,46 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface Factory
+{
+    /**
+     * Create a new Validator instance.
+     *
+     * @param  array  $data
+     * @param  array  $rules
+     * @param  array  $messages
+     * @param  array  $customAttributes
+     * @return \Illuminate\Contracts\Validation\Validator
+     */
+    public function make(array $data, array $rules, array $messages = [], array $customAttributes = []);
+
+    /**
+     * Register a custom validator extension.
+     *
+     * @param  string  $rule
+     * @param  \Closure|string  $extension
+     * @param  string|null  $message
+     * @return void
+     */
+    public function extend($rule, $extension, $message = null);
+
+    /**
+     * Register a custom implicit validator extension.
+     *
+     * @param  string  $rule
+     * @param  \Closure|string  $extension
+     * @param  string|null  $message
+     * @return void
+     */
+    public function extendImplicit($rule, $extension, $message = null);
+
+    /**
+     * Register a custom implicit validator message replacer.
+     *
+     * @param  string  $rule
+     * @param  \Closure|string  $replacer
+     * @return void
+     */
+    public function replacer($rule, $replacer);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ImplicitRule.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ImplicitRule.php
new file mode 100644
index 0000000..bbc64f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ImplicitRule.php
@@ -0,0 +1,8 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface ImplicitRule extends Rule
+{
+    //
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Rule.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Rule.php
new file mode 100644
index 0000000..cc03777
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Rule.php
@@ -0,0 +1,22 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface Rule
+{
+    /**
+     * Determine if the validation rule passes.
+     *
+     * @param  string  $attribute
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function passes($attribute, $value);
+
+    /**
+     * Get the validation error message.
+     *
+     * @return string|array
+     */
+    public function message();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/UncompromisedVerifier.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/UncompromisedVerifier.php
new file mode 100644
index 0000000..d4bd597
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/UncompromisedVerifier.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface UncompromisedVerifier
+{
+    /**
+     * Verify that the given data has not been compromised in data leaks.
+     *
+     * @param  array  $data
+     * @return bool
+     */
+    public function verify($data);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatesWhenResolved.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatesWhenResolved.php
new file mode 100644
index 0000000..4e6b757
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatesWhenResolved.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface ValidatesWhenResolved
+{
+    /**
+     * Validate the given class instance.
+     *
+     * @return void
+     */
+    public function validateResolved();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Validator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Validator.php
new file mode 100644
index 0000000..f68498d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/Validator.php
@@ -0,0 +1,65 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+use Illuminate\Contracts\Support\MessageProvider;
+
+interface Validator extends MessageProvider
+{
+    /**
+     * Run the validator's rules against its data.
+     *
+     * @return array
+     *
+     * @throws \Illuminate\Validation\ValidationException
+     */
+    public function validate();
+
+    /**
+     * Get the attributes and values that were validated.
+     *
+     * @return array
+     *
+     * @throws \Illuminate\Validation\ValidationException
+     */
+    public function validated();
+
+    /**
+     * Determine if the data fails the validation rules.
+     *
+     * @return bool
+     */
+    public function fails();
+
+    /**
+     * Get the failed validation rules.
+     *
+     * @return array
+     */
+    public function failed();
+
+    /**
+     * Add conditions to a given field based on a Closure.
+     *
+     * @param  string|array  $attribute
+     * @param  string|array  $rules
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function sometimes($attribute, $rules, callable $callback);
+
+    /**
+     * Add an after validation callback.
+     *
+     * @param  callable|string  $callback
+     * @return $this
+     */
+    public function after($callback);
+
+    /**
+     * Get all of the validation error messages.
+     *
+     * @return \Illuminate\Support\MessageBag
+     */
+    public function errors();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatorAwareRule.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatorAwareRule.php
new file mode 100644
index 0000000..053f4fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/Validation/ValidatorAwareRule.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Illuminate\Contracts\Validation;
+
+interface ValidatorAwareRule
+{
+    /**
+     * Set the current validator.
+     *
+     * @param  \Illuminate\Validation\Validator  $validator
+     * @return $this
+     */
+    public function setValidator($validator);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Engine.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Engine.php
new file mode 100755
index 0000000..be4795d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Engine.php
@@ -0,0 +1,15 @@
+<?php
+
+namespace Illuminate\Contracts\View;
+
+interface Engine
+{
+    /**
+     * Get the evaluated contents of the view.
+     *
+     * @param  string  $path
+     * @param  array  $data
+     * @return string
+     */
+    public function get($path, array $data = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Factory.php
new file mode 100644
index 0000000..562ee79
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/Factory.php
@@ -0,0 +1,79 @@
+<?php
+
+namespace Illuminate\Contracts\View;
+
+interface Factory
+{
+    /**
+     * Determine if a given view exists.
+     *
+     * @param  string  $view
+     * @return bool
+     */
+    public function exists($view);
+
+    /**
+     * Get the evaluated view contents for the given path.
+     *
+     * @param  string  $path
+     * @param  \Illuminate\Contracts\Support\Arrayable|array  $data
+     * @param  array  $mergeData
+     * @return \Illuminate\Contracts\View\View
+     */
+    public function file($path, $data = [], $mergeData = []);
+
+    /**
+     * Get the evaluated view contents for the given view.
+     *
+     * @param  string  $view
+     * @param  \Illuminate\Contracts\Support\Arrayable|array  $data
+     * @param  array  $mergeData
+     * @return \Illuminate\Contracts\View\View
+     */
+    public function make($view, $data = [], $mergeData = []);
+
+    /**
+     * Add a piece of shared data to the environment.
+     *
+     * @param  array|string  $key
+     * @param  mixed  $value
+     * @return mixed
+     */
+    public function share($key, $value = null);
+
+    /**
+     * Register a view composer event.
+     *
+     * @param  array|string  $views
+     * @param  \Closure|string  $callback
+     * @return array
+     */
+    public function composer($views, $callback);
+
+    /**
+     * Register a view creator event.
+     *
+     * @param  array|string  $views
+     * @param  \Closure|string  $callback
+     * @return array
+     */
+    public function creator($views, $callback);
+
+    /**
+     * Add a new namespace to the loader.
+     *
+     * @param  string  $namespace
+     * @param  string|array  $hints
+     * @return $this
+     */
+    public function addNamespace($namespace, $hints);
+
+    /**
+     * Replace the namespace hints for the given namespace.
+     *
+     * @param  string  $namespace
+     * @param  string|array  $hints
+     * @return $this
+     */
+    public function replaceNamespace($namespace, $hints);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/View.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/View.php
new file mode 100644
index 0000000..4b0b7f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/View/View.php
@@ -0,0 +1,31 @@
+<?php
+
+namespace Illuminate\Contracts\View;
+
+use Illuminate\Contracts\Support\Renderable;
+
+interface View extends Renderable
+{
+    /**
+     * Get the name of the view.
+     *
+     * @return string
+     */
+    public function name();
+
+    /**
+     * Add a piece of data to the view.
+     *
+     * @param  string|array  $key
+     * @param  mixed  $value
+     * @return $this
+     */
+    public function with($key, $value = null);
+
+    /**
+     * Get the array of view data.
+     *
+     * @return array
+     */
+    public function getData();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/composer.json
new file mode 100644
index 0000000..c9b4667
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/illuminate/contracts/composer.json
@@ -0,0 +1,35 @@
+{
+    "name": "illuminate/contracts",
+    "description": "The Illuminate Contracts package.",
+    "license": "MIT",
+    "homepage": "https://laravel.com",
+    "support": {
+        "issues": "https://github.com/laravel/framework/issues",
+        "source": "https://github.com/laravel/framework"
+    },
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylor@laravel.com"
+        }
+    ],
+    "require": {
+        "php": "^7.3|^8.0",
+        "psr/container": "^1.0",
+        "psr/simple-cache": "^1.0"
+    },
+    "autoload": {
+        "psr-4": {
+            "Illuminate\\Contracts\\": ""
+        }
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-master": "8.x-dev"
+        }
+    },
+    "config": {
+        "sort-packages": true
+    },
+    "minimum-stability": "dev"
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/Dockerfile b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/Dockerfile
index fc36a81..5917e05 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/Dockerfile
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/Dockerfile
@@ -5,8 +5,8 @@
 WORKDIR /var/www
 
 RUN apt-get update
-RUN apt-get install -y zip unzip zlib1g-dev
-RUN if [[ `php-config --vernum` -ge 73000 ]]; then docker-php-ext-install zip; fi
+RUN apt-get install -y zip unzip libzip-dev git
+RUN docker-php-ext-install zip
 RUN docker-php-ext-install pcntl
 RUN curl -sS https://getcomposer.org/installer | php
 RUN mv composer.phar /usr/local/bin/composer
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/composer.json
index 6d81b4f..a6dd4ab 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/composer.json
@@ -19,8 +19,8 @@
         "matthiasmullie/path-converter": "~1.1"
     },
     "require-dev": {
-        "matthiasmullie/scrapbook": "~1.0",
-        "phpunit/phpunit": "~4.8",
+        "matthiasmullie/scrapbook": "dev-master",
+        "phpunit/phpunit": ">=4.8",
         "friendsofphp/php-cs-fixer": "~2.0"
     },
     "suggest": {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/CSS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/CSS.php
index ea8e8cd..eb98e52 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/CSS.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/CSS.php
@@ -685,7 +685,7 @@
     protected function extractMath()
     {
         $functions = array('calc', 'clamp', 'min', 'max');
-        $pattern = '/('. implode('|', $functions) .')(\(.+?)(?=$|;|})/m';
+        $pattern = '/\b('. implode('|', $functions) .')(\(.+?)(?=$|;|})/m';
 
         // PHP only supports $this inside anonymous functions since 5.4
         $minifier = $this;
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/JS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/JS.php
index 92389cd..a0fa649 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/JS.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/JS.php
@@ -254,7 +254,7 @@
         // of the RegExp methods (a `\` followed by a variable or value is
         // likely part of a division, not a regex)
         $keywords = array('do', 'in', 'new', 'else', 'throw', 'yield', 'delete', 'return',  'typeof');
-        $before = '([=:,;\+\-\*\/\}\(\{\[&\|!]|^|'.implode('|', $keywords).')\s*';
+        $before = '(^|[=:,;\+\-\*\/\}\(\{\[&\|!]|'.implode('|', $keywords).')\s*';
         $propertiesAndMethods = array(
             // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#Properties_2
             'constructor',
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/Minify.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/Minify.php
index 3f40bc1..4d8dcf4 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/Minify.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/matthiasmullie/minify/src/Minify.php
@@ -105,7 +105,7 @@
      * @param string|string[] $data
      *
      * @return static
-     * 
+     *
      * @throws IOException
      */
     public function addFile($data /* $data = null, ... */)
@@ -472,7 +472,7 @@
      */
     protected function openFileForWriting($path)
     {
-        if (($handler = @fopen($path, 'w')) === false) {
+        if ($path === '' || ($handler = @fopen($path, 'w')) === false) {
             throw new IOException('The file "'.$path.'" could not be opened for writing. Check if PHP has enough permissions.');
         }
 
@@ -490,7 +490,11 @@
      */
     protected function writeToFile($handler, $content, $path = '')
     {
-        if (($result = @fwrite($handler, $content)) === false || ($result < strlen($content))) {
+        if (
+            !is_resource($handler) ||
+            ($result = @fwrite($handler, $content)) === false ||
+            ($result < strlen($content))
+        ) {
             throw new IOException('The file "'.$path.'" could not be written to. Check your disk space and file permissions.');
         }
     }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/LICENSE
new file mode 100644
index 0000000..6de45eb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/LICENSE
@@ -0,0 +1,19 @@
+Copyright (C) Brian Nesbitt
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon
new file mode 100755
index 0000000..fdcbb5c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon
@@ -0,0 +1,21 @@
+#!/usr/bin/env php
+<?php
+
+$dir = __DIR__.'/..';
+
+if (!file_exists($dir.'/autoload.php')) {
+    $dir = __DIR__.'/../vendor';
+}
+
+if (!file_exists($dir.'/autoload.php')) {
+    $dir = __DIR__.'/../../..';
+}
+
+if (!file_exists($dir.'/autoload.php')) {
+    echo 'Autoload not found.';
+    exit(1);
+}
+
+require $dir.'/autoload.php';
+
+exit((new \Carbon\Cli\Invoker())(...$argv) ? 0 : 1);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon.bat b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon.bat
new file mode 100644
index 0000000..84599d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/bin/carbon.bat
@@ -0,0 +1,4 @@
+@ECHO OFF
+setlocal DISABLEDELAYEDEXPANSION
+SET BIN_TARGET=%~dp0/carbon
+php "%BIN_TARGET%" %*
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/composer.json
new file mode 100644
index 0000000..d0cadc9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/composer.json
@@ -0,0 +1,98 @@
+{
+    "name": "nesbot/carbon",
+    "type": "library",
+    "description": "An API extension for DateTime that supports 281 different languages.",
+    "keywords": [
+        "date",
+        "time",
+        "DateTime"
+    ],
+    "homepage": "https://carbon.nesbot.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Brian Nesbitt",
+            "email": "brian@nesbot.com",
+            "homepage": "https://markido.com"
+        },
+        {
+            "name": "kylekatarnls",
+            "homepage": "https://github.com/kylekatarnls"
+        }
+    ],
+    "require": {
+        "php": "^7.1.8 || ^8.0",
+        "ext-json": "*",
+        "symfony/polyfill-mbstring": "^1.0",
+        "symfony/polyfill-php80": "^1.16",
+        "symfony/translation": "^3.4 || ^4.0 || ^5.0"
+    },
+    "require-dev": {
+        "doctrine/orm": "^2.7",
+        "friendsofphp/php-cs-fixer": "^2.14 || ^3.0",
+        "kylekatarnls/multi-tester": "^2.0",
+        "phpmd/phpmd": "^2.9",
+        "phpstan/extension-installer": "^1.0",
+        "phpstan/phpstan": "^0.12.54",
+        "phpunit/phpunit": "^7.5.20 || ^8.5.14",
+        "squizlabs/php_codesniffer": "^3.4"
+    },
+    "config": {
+        "process-timeout": 0,
+        "sort-packages": true
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-3.x": "3.x-dev",
+            "dev-master": "2.x-dev"
+        },
+        "laravel": {
+            "providers": [
+                "Carbon\\Laravel\\ServiceProvider"
+            ]
+        },
+        "phpstan": {
+            "includes": [
+                "extension.neon"
+            ]
+        }
+    },
+    "autoload": {
+        "psr-4": {
+            "Carbon\\": "src/Carbon/"
+        }
+    },
+    "autoload-dev": {
+        "psr-4": {
+            "Tests\\": "tests/"
+        },
+        "files": [
+            "tests/Laravel/ServiceProvider.php"
+        ]
+    },
+    "minimum-stability": "dev",
+    "prefer-stable": true,
+    "bin": [
+        "bin/carbon"
+    ],
+    "scripts": {
+        "phpcs": "php-cs-fixer fix -v --diff --dry-run",
+        "phpdoc": "php phpdoc.php",
+        "phpmd": "phpmd src text /phpmd.xml",
+        "phpstan": "phpstan analyse --configuration phpstan.neon",
+        "phpunit": "phpunit --verbose",
+        "style-check": [
+            "@phpcs",
+            "@phpstan",
+            "@phpmd"
+        ],
+        "test": [
+            "@phpunit",
+            "@style-check"
+        ]
+    },
+    "support": {
+        "issues": "https://github.com/briannesbitt/Carbon/issues",
+        "source": "https://github.com/briannesbitt/Carbon"
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/extension.neon b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/extension.neon
new file mode 100644
index 0000000..33bf794
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/extension.neon
@@ -0,0 +1,5 @@
+services:
+    -
+        class: Carbon\PHPStan\MacroExtension
+        tags:
+            - phpstan.broker.methodsClassReflectionExtension
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/readme.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/readme.md
new file mode 100644
index 0000000..70279c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/readme.md
@@ -0,0 +1,146 @@
+# Carbon
+
+[![Latest Stable Version](https://img.shields.io/packagist/v/nesbot/carbon.svg?style=flat-square)](https://packagist.org/packages/nesbot/carbon)
+[![Total Downloads](https://img.shields.io/packagist/dt/nesbot/carbon.svg?style=flat-square)](https://packagist.org/packages/nesbot/carbon)
+[![GitHub Actions](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fbriannesbitt%2FCarbon%2Fbadge&style=flat-square&label=Build&logo=none)](https://actions-badge.atrox.dev/briannesbitt/Carbon/goto)
+[![StyleCI](https://github.styleci.io/repos/5724990/shield?style=flat-square)](https://github.styleci.io/repos/5724990)
+[![codecov.io](https://img.shields.io/codecov/c/github/briannesbitt/Carbon.svg?style=flat-square)](https://codecov.io/github/briannesbitt/Carbon?branch=master)
+[![PHPStan](https://img.shields.io/badge/PHPStan-enabled-44CC11.svg?longCache=true&style=flat-square)](https://github.com/phpstan/phpstan)
+[![Tidelift](https://tidelift.com/badges/github/briannesbitt/Carbon)](https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme)
+
+An international PHP extension for DateTime. [https://carbon.nesbot.com](https://carbon.nesbot.com)
+
+```php
+<?php
+
+use Carbon\Carbon;
+
+printf("Right now is %s", Carbon::now()->toDateTimeString());
+printf("Right now in Vancouver is %s", Carbon::now('America/Vancouver'));  //implicit __toString()
+$tomorrow = Carbon::now()->addDay();
+$lastWeek = Carbon::now()->subWeek();
+$nextSummerOlympics = Carbon::createFromDate(2016)->addYears(4);
+
+$officialDate = Carbon::now()->toRfc2822String();
+
+$howOldAmI = Carbon::createFromDate(1975, 5, 21)->age;
+
+$noonTodayLondonTime = Carbon::createFromTime(12, 0, 0, 'Europe/London');
+
+$internetWillBlowUpOn = Carbon::create(2038, 01, 19, 3, 14, 7, 'GMT');
+
+// Don't really want this to happen so mock now
+Carbon::setTestNow(Carbon::createFromDate(2000, 1, 1));
+
+// comparisons are always done in UTC
+if (Carbon::now()->gte($internetWillBlowUpOn)) {
+    die();
+}
+
+// Phew! Return to normal behaviour
+Carbon::setTestNow();
+
+if (Carbon::now()->isWeekend()) {
+    echo 'Party!';
+}
+// Over 200 languages (and over 500 regional variants) supported:
+echo Carbon::now()->subMinutes(2)->diffForHumans(); // '2 minutes ago'
+echo Carbon::now()->subMinutes(2)->locale('zh_CN')->diffForHumans(); // '2分钟前'
+echo Carbon::parse('2019-07-23 14:51')->isoFormat('LLLL'); // 'Tuesday, July 23, 2019 2:51 PM'
+echo Carbon::parse('2019-07-23 14:51')->locale('fr_FR')->isoFormat('LLLL'); // 'mardi 23 juillet 2019 14:51'
+
+// ... but also does 'from now', 'after' and 'before'
+// rolling up to seconds, minutes, hours, days, months, years
+
+$daysSinceEpoch = Carbon::createFromTimestamp(0)->diffInDays();
+```
+
+[Get supported nesbot/carbon with the Tidelift Subscription](https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme)
+
+## Installation
+
+### With Composer
+
+```
+$ composer require nesbot/carbon
+```
+
+```json
+{
+    "require": {
+        "nesbot/carbon": "^2.16"
+    }
+}
+```
+
+```php
+<?php
+require 'vendor/autoload.php';
+
+use Carbon\Carbon;
+
+printf("Now: %s", Carbon::now());
+```
+
+### Without Composer
+
+Why are you not using [composer](https://getcomposer.org/)? Download the Carbon [latest release](https://github.com/briannesbitt/Carbon/releases) and put the contents of the ZIP archive into a directory in your project. Then require the file `autoload.php` to get all classes and dependencies loaded on need.
+
+```php
+<?php
+require 'path-to-Carbon-directory/autoload.php';
+
+use Carbon\Carbon;
+
+printf("Now: %s", Carbon::now());
+```
+
+## Docs
+
+[https://carbon.nesbot.com/docs](https://carbon.nesbot.com/docs)
+
+## Security contact information
+
+To report a security vulnerability, please use the
+[Tidelift security contact](https://tidelift.com/security).
+Tidelift will coordinate the fix and disclosure.
+
+## Credits
+
+### Contributors
+
+This project exists thanks to all the people who contribute. 
+
+<a href="https://github.com/briannesbitt/Carbon/graphs/contributors" target="_blank"><img src="https://opencollective.com/Carbon/contributors.svg?width=890&button=false" /></a>
+
+### Translators
+
+[Thanks to people helping us to translate Carbon in so many languages](https://carbon.nesbot.com/contribute/translators/)
+
+### Sponsors
+
+Support this project by becoming a sponsor. Your logo will show up here with a link to your website.
+
+<a href="https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=readme" target="_blank"><img src="https://carbon.nesbot.com/tidelift-brand.png" width="256" height="64"></a>
+<a href="https://onlinecasinohex.ca/?utm_source=opencollective&amp;utm_medium=github&amp;utm_campaign=Carbon" target="_blank"><img src="https://images.opencollective.com/hexcasinoca/2da3af2/logo/256.png" width="85" height="64"></a>
+<a href="https://opencollective.com/Carbon/sponsor/0/website" target="_blank"><img src="https://opencollective.com/Carbon/sponsor/0/avatar.svg"></a>
+<a href="https://opencollective.com/Carbon/sponsor/1/website" target="_blank"><img src="https://opencollective.com/Carbon/sponsor/1/avatar.svg"></a>
+<a href="https://opencollective.com/Carbon/sponsor/2/website" target="_blank"><img src="https://opencollective.com/Carbon/sponsor/2/avatar.svg"></a>
+<a href="https://opencollective.com/Carbon/sponsor/3/website" target="_blank"><img src="https://opencollective.com/Carbon/sponsor/3/avatar.svg"></a>
+<a href="https://opencollective.com/Carbon/sponsor/4/website" target="_blank"><img src="https://opencollective.com/Carbon/sponsor/4/avatar.svg"></a>
+
+[[Become a sponsor](https://opencollective.com/Carbon#sponsor)]
+
+### Backers
+
+Thank you to all our backers! 🙏
+
+<a href="https://opencollective.com/Carbon#backers" target="_blank"><img src="https://opencollective.com/Carbon/backers.svg?width=890"></a>
+
+[[Become a backer](https://opencollective.com/Carbon#backer)]
+
+## Carbon for enterprise
+
+Available as part of the Tidelift Subscription.
+
+The maintainers of ``Carbon`` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Carbon.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Carbon.php
new file mode 100644
index 0000000..3b68759
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Carbon.php
@@ -0,0 +1,523 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Carbon\Traits\Date;
+use DateTime;
+use DateTimeInterface;
+use DateTimeZone;
+
+/**
+ * A simple API extension for DateTime.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @property      int                 $year
+ * @property      int                 $yearIso
+ * @property      int                 $month
+ * @property      int                 $day
+ * @property      int                 $hour
+ * @property      int                 $minute
+ * @property      int                 $second
+ * @property      int                 $micro
+ * @property      int                 $microsecond
+ * @property      int|float|string    $timestamp                                                                           seconds since the Unix Epoch
+ * @property      string              $englishDayOfWeek                                                                    the day of week in English
+ * @property      string              $shortEnglishDayOfWeek                                                               the abbreviated day of week in English
+ * @property      string              $englishMonth                                                                        the month in English
+ * @property      string              $shortEnglishMonth                                                                   the abbreviated month in English
+ * @property      string              $localeDayOfWeek                                                                     the day of week in current locale LC_TIME
+ * @property      string              $shortLocaleDayOfWeek                                                                the abbreviated day of week in current locale LC_TIME
+ * @property      string              $localeMonth                                                                         the month in current locale LC_TIME
+ * @property      string              $shortLocaleMonth                                                                    the abbreviated month in current locale LC_TIME
+ * @property      int                 $milliseconds
+ * @property      int                 $millisecond
+ * @property      int                 $milli
+ * @property      int                 $week                                                                                1 through 53
+ * @property      int                 $isoWeek                                                                             1 through 53
+ * @property      int                 $weekYear                                                                            year according to week format
+ * @property      int                 $isoWeekYear                                                                         year according to ISO week format
+ * @property      int                 $dayOfYear                                                                           1 through 366
+ * @property      int                 $age                                                                                 does a diffInYears() with default parameters
+ * @property      int                 $offset                                                                              the timezone offset in seconds from UTC
+ * @property      int                 $offsetMinutes                                                                       the timezone offset in minutes from UTC
+ * @property      int                 $offsetHours                                                                         the timezone offset in hours from UTC
+ * @property      CarbonTimeZone      $timezone                                                                            the current timezone
+ * @property      CarbonTimeZone      $tz                                                                                  alias of $timezone
+ * @property-read int                 $dayOfWeek                                                                           0 (for Sunday) through 6 (for Saturday)
+ * @property-read int                 $dayOfWeekIso                                                                        1 (for Monday) through 7 (for Sunday)
+ * @property-read int                 $weekOfYear                                                                          ISO-8601 week number of year, weeks starting on Monday
+ * @property-read int                 $daysInMonth                                                                         number of days in the given month
+ * @property-read string              $latinMeridiem                                                                       "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
+ * @property-read string              $latinUpperMeridiem                                                                  "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
+ * @property-read string              $timezoneAbbreviatedName                                                             the current timezone abbreviated name
+ * @property-read string              $tzAbbrName                                                                          alias of $timezoneAbbreviatedName
+ * @property-read string              $dayName                                                                             long name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string              $shortDayName                                                                        short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string              $minDayName                                                                          very short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string              $monthName                                                                           long name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string              $shortMonthName                                                                      short name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string              $meridiem                                                                            lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read string              $upperMeridiem                                                                       uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read int                 $noZeroHour                                                                          current hour from 1 to 24
+ * @property-read int                 $weeksInYear                                                                         51 through 53
+ * @property-read int                 $isoWeeksInYear                                                                      51 through 53
+ * @property-read int                 $weekOfMonth                                                                         1 through 5
+ * @property-read int                 $weekNumberInMonth                                                                   1 through 5
+ * @property-read int                 $firstWeekDay                                                                        0 through 6
+ * @property-read int                 $lastWeekDay                                                                         0 through 6
+ * @property-read int                 $daysInYear                                                                          365 or 366
+ * @property-read int                 $quarter                                                                             the quarter of this instance, 1 - 4
+ * @property-read int                 $decade                                                                              the decade of this instance
+ * @property-read int                 $century                                                                             the century of this instance
+ * @property-read int                 $millennium                                                                          the millennium of this instance
+ * @property-read bool                $dst                                                                                 daylight savings time indicator, true if DST, false otherwise
+ * @property-read bool                $local                                                                               checks if the timezone is local, true if local, false otherwise
+ * @property-read bool                $utc                                                                                 checks if the timezone is UTC, true if UTC, false otherwise
+ * @property-read string              $timezoneName                                                                        the current timezone name
+ * @property-read string              $tzName                                                                              alias of $timezoneName
+ * @property-read string              $locale                                                                              locale of the current instance
+ *
+ * @method        bool                isUtc()                                                                              Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
+ * @method        bool                isLocal()                                                                            Check if the current instance has non-UTC timezone.
+ * @method        bool                isValid()                                                                            Check if the current instance is a valid date.
+ * @method        bool                isDST()                                                                              Check if the current instance is in a daylight saving time.
+ * @method        bool                isSunday()                                                                           Checks if the instance day is sunday.
+ * @method        bool                isMonday()                                                                           Checks if the instance day is monday.
+ * @method        bool                isTuesday()                                                                          Checks if the instance day is tuesday.
+ * @method        bool                isWednesday()                                                                        Checks if the instance day is wednesday.
+ * @method        bool                isThursday()                                                                         Checks if the instance day is thursday.
+ * @method        bool                isFriday()                                                                           Checks if the instance day is friday.
+ * @method        bool                isSaturday()                                                                         Checks if the instance day is saturday.
+ * @method        bool                isSameYear(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentYear()                                                                      Checks if the instance is in the same year as the current moment.
+ * @method        bool                isNextYear()                                                                         Checks if the instance is in the same year as the current moment next year.
+ * @method        bool                isLastYear()                                                                         Checks if the instance is in the same year as the current moment last year.
+ * @method        bool                isSameWeek(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentWeek()                                                                      Checks if the instance is in the same week as the current moment.
+ * @method        bool                isNextWeek()                                                                         Checks if the instance is in the same week as the current moment next week.
+ * @method        bool                isLastWeek()                                                                         Checks if the instance is in the same week as the current moment last week.
+ * @method        bool                isSameDay(Carbon|DateTimeInterface|string|null $date = null)                         Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentDay()                                                                       Checks if the instance is in the same day as the current moment.
+ * @method        bool                isNextDay()                                                                          Checks if the instance is in the same day as the current moment next day.
+ * @method        bool                isLastDay()                                                                          Checks if the instance is in the same day as the current moment last day.
+ * @method        bool                isSameHour(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentHour()                                                                      Checks if the instance is in the same hour as the current moment.
+ * @method        bool                isNextHour()                                                                         Checks if the instance is in the same hour as the current moment next hour.
+ * @method        bool                isLastHour()                                                                         Checks if the instance is in the same hour as the current moment last hour.
+ * @method        bool                isSameMinute(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentMinute()                                                                    Checks if the instance is in the same minute as the current moment.
+ * @method        bool                isNextMinute()                                                                       Checks if the instance is in the same minute as the current moment next minute.
+ * @method        bool                isLastMinute()                                                                       Checks if the instance is in the same minute as the current moment last minute.
+ * @method        bool                isSameSecond(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentSecond()                                                                    Checks if the instance is in the same second as the current moment.
+ * @method        bool                isNextSecond()                                                                       Checks if the instance is in the same second as the current moment next second.
+ * @method        bool                isLastSecond()                                                                       Checks if the instance is in the same second as the current moment last second.
+ * @method        bool                isSameMicro(Carbon|DateTimeInterface|string|null $date = null)                       Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentMicro()                                                                     Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool                isNextMicro()                                                                        Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool                isLastMicro()                                                                        Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool                isSameMicrosecond(Carbon|DateTimeInterface|string|null $date = null)                 Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentMicrosecond()                                                               Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool                isNextMicrosecond()                                                                  Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool                isLastMicrosecond()                                                                  Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool                isCurrentMonth()                                                                     Checks if the instance is in the same month as the current moment.
+ * @method        bool                isNextMonth()                                                                        Checks if the instance is in the same month as the current moment next month.
+ * @method        bool                isLastMonth()                                                                        Checks if the instance is in the same month as the current moment last month.
+ * @method        bool                isCurrentQuarter()                                                                   Checks if the instance is in the same quarter as the current moment.
+ * @method        bool                isNextQuarter()                                                                      Checks if the instance is in the same quarter as the current moment next quarter.
+ * @method        bool                isLastQuarter()                                                                      Checks if the instance is in the same quarter as the current moment last quarter.
+ * @method        bool                isSameDecade(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentDecade()                                                                    Checks if the instance is in the same decade as the current moment.
+ * @method        bool                isNextDecade()                                                                       Checks if the instance is in the same decade as the current moment next decade.
+ * @method        bool                isLastDecade()                                                                       Checks if the instance is in the same decade as the current moment last decade.
+ * @method        bool                isSameCentury(Carbon|DateTimeInterface|string|null $date = null)                     Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentCentury()                                                                   Checks if the instance is in the same century as the current moment.
+ * @method        bool                isNextCentury()                                                                      Checks if the instance is in the same century as the current moment next century.
+ * @method        bool                isLastCentury()                                                                      Checks if the instance is in the same century as the current moment last century.
+ * @method        bool                isSameMillennium(Carbon|DateTimeInterface|string|null $date = null)                  Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                isCurrentMillennium()                                                                Checks if the instance is in the same millennium as the current moment.
+ * @method        bool                isNextMillennium()                                                                   Checks if the instance is in the same millennium as the current moment next millennium.
+ * @method        bool                isLastMillennium()                                                                   Checks if the instance is in the same millennium as the current moment last millennium.
+ * @method        $this               years(int $value)                                                                    Set current instance year to the given value.
+ * @method        $this               year(int $value)                                                                     Set current instance year to the given value.
+ * @method        $this               setYears(int $value)                                                                 Set current instance year to the given value.
+ * @method        $this               setYear(int $value)                                                                  Set current instance year to the given value.
+ * @method        $this               months(int $value)                                                                   Set current instance month to the given value.
+ * @method        $this               month(int $value)                                                                    Set current instance month to the given value.
+ * @method        $this               setMonths(int $value)                                                                Set current instance month to the given value.
+ * @method        $this               setMonth(int $value)                                                                 Set current instance month to the given value.
+ * @method        $this               days(int $value)                                                                     Set current instance day to the given value.
+ * @method        $this               day(int $value)                                                                      Set current instance day to the given value.
+ * @method        $this               setDays(int $value)                                                                  Set current instance day to the given value.
+ * @method        $this               setDay(int $value)                                                                   Set current instance day to the given value.
+ * @method        $this               hours(int $value)                                                                    Set current instance hour to the given value.
+ * @method        $this               hour(int $value)                                                                     Set current instance hour to the given value.
+ * @method        $this               setHours(int $value)                                                                 Set current instance hour to the given value.
+ * @method        $this               setHour(int $value)                                                                  Set current instance hour to the given value.
+ * @method        $this               minutes(int $value)                                                                  Set current instance minute to the given value.
+ * @method        $this               minute(int $value)                                                                   Set current instance minute to the given value.
+ * @method        $this               setMinutes(int $value)                                                               Set current instance minute to the given value.
+ * @method        $this               setMinute(int $value)                                                                Set current instance minute to the given value.
+ * @method        $this               seconds(int $value)                                                                  Set current instance second to the given value.
+ * @method        $this               second(int $value)                                                                   Set current instance second to the given value.
+ * @method        $this               setSeconds(int $value)                                                               Set current instance second to the given value.
+ * @method        $this               setSecond(int $value)                                                                Set current instance second to the given value.
+ * @method        $this               millis(int $value)                                                                   Set current instance millisecond to the given value.
+ * @method        $this               milli(int $value)                                                                    Set current instance millisecond to the given value.
+ * @method        $this               setMillis(int $value)                                                                Set current instance millisecond to the given value.
+ * @method        $this               setMilli(int $value)                                                                 Set current instance millisecond to the given value.
+ * @method        $this               milliseconds(int $value)                                                             Set current instance millisecond to the given value.
+ * @method        $this               millisecond(int $value)                                                              Set current instance millisecond to the given value.
+ * @method        $this               setMilliseconds(int $value)                                                          Set current instance millisecond to the given value.
+ * @method        $this               setMillisecond(int $value)                                                           Set current instance millisecond to the given value.
+ * @method        $this               micros(int $value)                                                                   Set current instance microsecond to the given value.
+ * @method        $this               micro(int $value)                                                                    Set current instance microsecond to the given value.
+ * @method        $this               setMicros(int $value)                                                                Set current instance microsecond to the given value.
+ * @method        $this               setMicro(int $value)                                                                 Set current instance microsecond to the given value.
+ * @method        $this               microseconds(int $value)                                                             Set current instance microsecond to the given value.
+ * @method        $this               microsecond(int $value)                                                              Set current instance microsecond to the given value.
+ * @method        $this               setMicroseconds(int $value)                                                          Set current instance microsecond to the given value.
+ * @method        $this               setMicrosecond(int $value)                                                           Set current instance microsecond to the given value.
+ * @method        $this               addYears(int $value = 1)                                                             Add years (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addYear()                                                                            Add one year to the instance (using date interval).
+ * @method        $this               subYears(int $value = 1)                                                             Sub years (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subYear()                                                                            Sub one year to the instance (using date interval).
+ * @method        $this               addYearsWithOverflow(int $value = 1)                                                 Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addYearWithOverflow()                                                                Add one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subYearsWithOverflow(int $value = 1)                                                 Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subYearWithOverflow()                                                                Sub one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addYearsWithoutOverflow(int $value = 1)                                              Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addYearWithoutOverflow()                                                             Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearsWithoutOverflow(int $value = 1)                                              Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearWithoutOverflow()                                                             Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addYearsWithNoOverflow(int $value = 1)                                               Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addYearWithNoOverflow()                                                              Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearsWithNoOverflow(int $value = 1)                                               Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearWithNoOverflow()                                                              Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addYearsNoOverflow(int $value = 1)                                                   Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addYearNoOverflow()                                                                  Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearsNoOverflow(int $value = 1)                                                   Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subYearNoOverflow()                                                                  Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonths(int $value = 1)                                                            Add months (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMonth()                                                                           Add one month to the instance (using date interval).
+ * @method        $this               subMonths(int $value = 1)                                                            Sub months (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMonth()                                                                           Sub one month to the instance (using date interval).
+ * @method        $this               addMonthsWithOverflow(int $value = 1)                                                Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addMonthWithOverflow()                                                               Add one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subMonthsWithOverflow(int $value = 1)                                                Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subMonthWithOverflow()                                                               Sub one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addMonthsWithoutOverflow(int $value = 1)                                             Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonthWithoutOverflow()                                                            Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthsWithoutOverflow(int $value = 1)                                             Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthWithoutOverflow()                                                            Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonthsWithNoOverflow(int $value = 1)                                              Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonthWithNoOverflow()                                                             Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthsWithNoOverflow(int $value = 1)                                              Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthWithNoOverflow()                                                             Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonthsNoOverflow(int $value = 1)                                                  Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMonthNoOverflow()                                                                 Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthsNoOverflow(int $value = 1)                                                  Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMonthNoOverflow()                                                                 Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDays(int $value = 1)                                                              Add days (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addDay()                                                                             Add one day to the instance (using date interval).
+ * @method        $this               subDays(int $value = 1)                                                              Sub days (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subDay()                                                                             Sub one day to the instance (using date interval).
+ * @method        $this               addHours(int $value = 1)                                                             Add hours (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addHour()                                                                            Add one hour to the instance (using date interval).
+ * @method        $this               subHours(int $value = 1)                                                             Sub hours (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subHour()                                                                            Sub one hour to the instance (using date interval).
+ * @method        $this               addMinutes(int $value = 1)                                                           Add minutes (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMinute()                                                                          Add one minute to the instance (using date interval).
+ * @method        $this               subMinutes(int $value = 1)                                                           Sub minutes (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMinute()                                                                          Sub one minute to the instance (using date interval).
+ * @method        $this               addSeconds(int $value = 1)                                                           Add seconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addSecond()                                                                          Add one second to the instance (using date interval).
+ * @method        $this               subSeconds(int $value = 1)                                                           Sub seconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subSecond()                                                                          Sub one second to the instance (using date interval).
+ * @method        $this               addMillis(int $value = 1)                                                            Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMilli()                                                                           Add one millisecond to the instance (using date interval).
+ * @method        $this               subMillis(int $value = 1)                                                            Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMilli()                                                                           Sub one millisecond to the instance (using date interval).
+ * @method        $this               addMilliseconds(int $value = 1)                                                      Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMillisecond()                                                                     Add one millisecond to the instance (using date interval).
+ * @method        $this               subMilliseconds(int $value = 1)                                                      Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMillisecond()                                                                     Sub one millisecond to the instance (using date interval).
+ * @method        $this               addMicros(int $value = 1)                                                            Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMicro()                                                                           Add one microsecond to the instance (using date interval).
+ * @method        $this               subMicros(int $value = 1)                                                            Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMicro()                                                                           Sub one microsecond to the instance (using date interval).
+ * @method        $this               addMicroseconds(int $value = 1)                                                      Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMicrosecond()                                                                     Add one microsecond to the instance (using date interval).
+ * @method        $this               subMicroseconds(int $value = 1)                                                      Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMicrosecond()                                                                     Sub one microsecond to the instance (using date interval).
+ * @method        $this               addMillennia(int $value = 1)                                                         Add millennia (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addMillennium()                                                                      Add one millennium to the instance (using date interval).
+ * @method        $this               subMillennia(int $value = 1)                                                         Sub millennia (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subMillennium()                                                                      Sub one millennium to the instance (using date interval).
+ * @method        $this               addMillenniaWithOverflow(int $value = 1)                                             Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addMillenniumWithOverflow()                                                          Add one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subMillenniaWithOverflow(int $value = 1)                                             Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subMillenniumWithOverflow()                                                          Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addMillenniaWithoutOverflow(int $value = 1)                                          Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMillenniumWithoutOverflow()                                                       Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniaWithoutOverflow(int $value = 1)                                          Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniumWithoutOverflow()                                                       Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMillenniaWithNoOverflow(int $value = 1)                                           Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMillenniumWithNoOverflow()                                                        Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniaWithNoOverflow(int $value = 1)                                           Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniumWithNoOverflow()                                                        Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMillenniaNoOverflow(int $value = 1)                                               Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addMillenniumNoOverflow()                                                            Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniaNoOverflow(int $value = 1)                                               Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subMillenniumNoOverflow()                                                            Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturies(int $value = 1)                                                         Add centuries (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addCentury()                                                                         Add one century to the instance (using date interval).
+ * @method        $this               subCenturies(int $value = 1)                                                         Sub centuries (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subCentury()                                                                         Sub one century to the instance (using date interval).
+ * @method        $this               addCenturiesWithOverflow(int $value = 1)                                             Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addCenturyWithOverflow()                                                             Add one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subCenturiesWithOverflow(int $value = 1)                                             Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subCenturyWithOverflow()                                                             Sub one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addCenturiesWithoutOverflow(int $value = 1)                                          Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturyWithoutOverflow()                                                          Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturiesWithoutOverflow(int $value = 1)                                          Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturyWithoutOverflow()                                                          Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturiesWithNoOverflow(int $value = 1)                                           Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturyWithNoOverflow()                                                           Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturiesWithNoOverflow(int $value = 1)                                           Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturyWithNoOverflow()                                                           Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturiesNoOverflow(int $value = 1)                                               Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addCenturyNoOverflow()                                                               Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturiesNoOverflow(int $value = 1)                                               Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subCenturyNoOverflow()                                                               Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecades(int $value = 1)                                                           Add decades (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addDecade()                                                                          Add one decade to the instance (using date interval).
+ * @method        $this               subDecades(int $value = 1)                                                           Sub decades (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subDecade()                                                                          Sub one decade to the instance (using date interval).
+ * @method        $this               addDecadesWithOverflow(int $value = 1)                                               Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addDecadeWithOverflow()                                                              Add one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subDecadesWithOverflow(int $value = 1)                                               Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subDecadeWithOverflow()                                                              Sub one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addDecadesWithoutOverflow(int $value = 1)                                            Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecadeWithoutOverflow()                                                           Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadesWithoutOverflow(int $value = 1)                                            Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadeWithoutOverflow()                                                           Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecadesWithNoOverflow(int $value = 1)                                             Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecadeWithNoOverflow()                                                            Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadesWithNoOverflow(int $value = 1)                                             Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadeWithNoOverflow()                                                            Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecadesNoOverflow(int $value = 1)                                                 Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addDecadeNoOverflow()                                                                Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadesNoOverflow(int $value = 1)                                                 Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subDecadeNoOverflow()                                                                Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuarters(int $value = 1)                                                          Add quarters (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addQuarter()                                                                         Add one quarter to the instance (using date interval).
+ * @method        $this               subQuarters(int $value = 1)                                                          Sub quarters (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subQuarter()                                                                         Sub one quarter to the instance (using date interval).
+ * @method        $this               addQuartersWithOverflow(int $value = 1)                                              Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addQuarterWithOverflow()                                                             Add one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subQuartersWithOverflow(int $value = 1)                                              Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               subQuarterWithOverflow()                                                             Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        $this               addQuartersWithoutOverflow(int $value = 1)                                           Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuarterWithoutOverflow()                                                          Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuartersWithoutOverflow(int $value = 1)                                           Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuarterWithoutOverflow()                                                          Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuartersWithNoOverflow(int $value = 1)                                            Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuarterWithNoOverflow()                                                           Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuartersWithNoOverflow(int $value = 1)                                            Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuarterWithNoOverflow()                                                           Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuartersNoOverflow(int $value = 1)                                                Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addQuarterNoOverflow()                                                               Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuartersNoOverflow(int $value = 1)                                                Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               subQuarterNoOverflow()                                                               Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        $this               addWeeks(int $value = 1)                                                             Add weeks (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addWeek()                                                                            Add one week to the instance (using date interval).
+ * @method        $this               subWeeks(int $value = 1)                                                             Sub weeks (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subWeek()                                                                            Sub one week to the instance (using date interval).
+ * @method        $this               addWeekdays(int $value = 1)                                                          Add weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        $this               addWeekday()                                                                         Add one weekday to the instance (using date interval).
+ * @method        $this               subWeekdays(int $value = 1)                                                          Sub weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        $this               subWeekday()                                                                         Sub one weekday to the instance (using date interval).
+ * @method        $this               addRealMicros(int $value = 1)                                                        Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMicro()                                                                       Add one microsecond to the instance (using timestamp).
+ * @method        $this               subRealMicros(int $value = 1)                                                        Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMicro()                                                                       Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod        microsUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        $this               addRealMicroseconds(int $value = 1)                                                  Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMicrosecond()                                                                 Add one microsecond to the instance (using timestamp).
+ * @method        $this               subRealMicroseconds(int $value = 1)                                                  Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMicrosecond()                                                                 Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod        microsecondsUntil($endDate = null, int $factor = 1)                                  Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        $this               addRealMillis(int $value = 1)                                                        Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMilli()                                                                       Add one millisecond to the instance (using timestamp).
+ * @method        $this               subRealMillis(int $value = 1)                                                        Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMilli()                                                                       Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod        millisUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        $this               addRealMilliseconds(int $value = 1)                                                  Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMillisecond()                                                                 Add one millisecond to the instance (using timestamp).
+ * @method        $this               subRealMilliseconds(int $value = 1)                                                  Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMillisecond()                                                                 Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod        millisecondsUntil($endDate = null, int $factor = 1)                                  Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        $this               addRealSeconds(int $value = 1)                                                       Add seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealSecond()                                                                      Add one second to the instance (using timestamp).
+ * @method        $this               subRealSeconds(int $value = 1)                                                       Sub seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealSecond()                                                                      Sub one second to the instance (using timestamp).
+ * @method        CarbonPeriod        secondsUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
+ * @method        $this               addRealMinutes(int $value = 1)                                                       Add minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMinute()                                                                      Add one minute to the instance (using timestamp).
+ * @method        $this               subRealMinutes(int $value = 1)                                                       Sub minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMinute()                                                                      Sub one minute to the instance (using timestamp).
+ * @method        CarbonPeriod        minutesUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
+ * @method        $this               addRealHours(int $value = 1)                                                         Add hours (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealHour()                                                                        Add one hour to the instance (using timestamp).
+ * @method        $this               subRealHours(int $value = 1)                                                         Sub hours (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealHour()                                                                        Sub one hour to the instance (using timestamp).
+ * @method        CarbonPeriod        hoursUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
+ * @method        $this               addRealDays(int $value = 1)                                                          Add days (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealDay()                                                                         Add one day to the instance (using timestamp).
+ * @method        $this               subRealDays(int $value = 1)                                                          Sub days (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealDay()                                                                         Sub one day to the instance (using timestamp).
+ * @method        CarbonPeriod        daysUntil($endDate = null, int $factor = 1)                                          Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
+ * @method        $this               addRealWeeks(int $value = 1)                                                         Add weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealWeek()                                                                        Add one week to the instance (using timestamp).
+ * @method        $this               subRealWeeks(int $value = 1)                                                         Sub weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealWeek()                                                                        Sub one week to the instance (using timestamp).
+ * @method        CarbonPeriod        weeksUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
+ * @method        $this               addRealMonths(int $value = 1)                                                        Add months (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMonth()                                                                       Add one month to the instance (using timestamp).
+ * @method        $this               subRealMonths(int $value = 1)                                                        Sub months (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMonth()                                                                       Sub one month to the instance (using timestamp).
+ * @method        CarbonPeriod        monthsUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
+ * @method        $this               addRealQuarters(int $value = 1)                                                      Add quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealQuarter()                                                                     Add one quarter to the instance (using timestamp).
+ * @method        $this               subRealQuarters(int $value = 1)                                                      Sub quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealQuarter()                                                                     Sub one quarter to the instance (using timestamp).
+ * @method        CarbonPeriod        quartersUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
+ * @method        $this               addRealYears(int $value = 1)                                                         Add years (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealYear()                                                                        Add one year to the instance (using timestamp).
+ * @method        $this               subRealYears(int $value = 1)                                                         Sub years (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealYear()                                                                        Sub one year to the instance (using timestamp).
+ * @method        CarbonPeriod        yearsUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
+ * @method        $this               addRealDecades(int $value = 1)                                                       Add decades (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealDecade()                                                                      Add one decade to the instance (using timestamp).
+ * @method        $this               subRealDecades(int $value = 1)                                                       Sub decades (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealDecade()                                                                      Sub one decade to the instance (using timestamp).
+ * @method        CarbonPeriod        decadesUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
+ * @method        $this               addRealCenturies(int $value = 1)                                                     Add centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealCentury()                                                                     Add one century to the instance (using timestamp).
+ * @method        $this               subRealCenturies(int $value = 1)                                                     Sub centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealCentury()                                                                     Sub one century to the instance (using timestamp).
+ * @method        CarbonPeriod        centuriesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
+ * @method        $this               addRealMillennia(int $value = 1)                                                     Add millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               addRealMillennium()                                                                  Add one millennium to the instance (using timestamp).
+ * @method        $this               subRealMillennia(int $value = 1)                                                     Sub millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        $this               subRealMillennium()                                                                  Sub one millennium to the instance (using timestamp).
+ * @method        CarbonPeriod        millenniaUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
+ * @method        $this               roundYear(float $precision = 1, string $function = "round")                          Round the current instance year with given precision using the given function.
+ * @method        $this               roundYears(float $precision = 1, string $function = "round")                         Round the current instance year with given precision using the given function.
+ * @method        $this               floorYear(float $precision = 1)                                                      Truncate the current instance year with given precision.
+ * @method        $this               floorYears(float $precision = 1)                                                     Truncate the current instance year with given precision.
+ * @method        $this               ceilYear(float $precision = 1)                                                       Ceil the current instance year with given precision.
+ * @method        $this               ceilYears(float $precision = 1)                                                      Ceil the current instance year with given precision.
+ * @method        $this               roundMonth(float $precision = 1, string $function = "round")                         Round the current instance month with given precision using the given function.
+ * @method        $this               roundMonths(float $precision = 1, string $function = "round")                        Round the current instance month with given precision using the given function.
+ * @method        $this               floorMonth(float $precision = 1)                                                     Truncate the current instance month with given precision.
+ * @method        $this               floorMonths(float $precision = 1)                                                    Truncate the current instance month with given precision.
+ * @method        $this               ceilMonth(float $precision = 1)                                                      Ceil the current instance month with given precision.
+ * @method        $this               ceilMonths(float $precision = 1)                                                     Ceil the current instance month with given precision.
+ * @method        $this               roundDay(float $precision = 1, string $function = "round")                           Round the current instance day with given precision using the given function.
+ * @method        $this               roundDays(float $precision = 1, string $function = "round")                          Round the current instance day with given precision using the given function.
+ * @method        $this               floorDay(float $precision = 1)                                                       Truncate the current instance day with given precision.
+ * @method        $this               floorDays(float $precision = 1)                                                      Truncate the current instance day with given precision.
+ * @method        $this               ceilDay(float $precision = 1)                                                        Ceil the current instance day with given precision.
+ * @method        $this               ceilDays(float $precision = 1)                                                       Ceil the current instance day with given precision.
+ * @method        $this               roundHour(float $precision = 1, string $function = "round")                          Round the current instance hour with given precision using the given function.
+ * @method        $this               roundHours(float $precision = 1, string $function = "round")                         Round the current instance hour with given precision using the given function.
+ * @method        $this               floorHour(float $precision = 1)                                                      Truncate the current instance hour with given precision.
+ * @method        $this               floorHours(float $precision = 1)                                                     Truncate the current instance hour with given precision.
+ * @method        $this               ceilHour(float $precision = 1)                                                       Ceil the current instance hour with given precision.
+ * @method        $this               ceilHours(float $precision = 1)                                                      Ceil the current instance hour with given precision.
+ * @method        $this               roundMinute(float $precision = 1, string $function = "round")                        Round the current instance minute with given precision using the given function.
+ * @method        $this               roundMinutes(float $precision = 1, string $function = "round")                       Round the current instance minute with given precision using the given function.
+ * @method        $this               floorMinute(float $precision = 1)                                                    Truncate the current instance minute with given precision.
+ * @method        $this               floorMinutes(float $precision = 1)                                                   Truncate the current instance minute with given precision.
+ * @method        $this               ceilMinute(float $precision = 1)                                                     Ceil the current instance minute with given precision.
+ * @method        $this               ceilMinutes(float $precision = 1)                                                    Ceil the current instance minute with given precision.
+ * @method        $this               roundSecond(float $precision = 1, string $function = "round")                        Round the current instance second with given precision using the given function.
+ * @method        $this               roundSeconds(float $precision = 1, string $function = "round")                       Round the current instance second with given precision using the given function.
+ * @method        $this               floorSecond(float $precision = 1)                                                    Truncate the current instance second with given precision.
+ * @method        $this               floorSeconds(float $precision = 1)                                                   Truncate the current instance second with given precision.
+ * @method        $this               ceilSecond(float $precision = 1)                                                     Ceil the current instance second with given precision.
+ * @method        $this               ceilSeconds(float $precision = 1)                                                    Ceil the current instance second with given precision.
+ * @method        $this               roundMillennium(float $precision = 1, string $function = "round")                    Round the current instance millennium with given precision using the given function.
+ * @method        $this               roundMillennia(float $precision = 1, string $function = "round")                     Round the current instance millennium with given precision using the given function.
+ * @method        $this               floorMillennium(float $precision = 1)                                                Truncate the current instance millennium with given precision.
+ * @method        $this               floorMillennia(float $precision = 1)                                                 Truncate the current instance millennium with given precision.
+ * @method        $this               ceilMillennium(float $precision = 1)                                                 Ceil the current instance millennium with given precision.
+ * @method        $this               ceilMillennia(float $precision = 1)                                                  Ceil the current instance millennium with given precision.
+ * @method        $this               roundCentury(float $precision = 1, string $function = "round")                       Round the current instance century with given precision using the given function.
+ * @method        $this               roundCenturies(float $precision = 1, string $function = "round")                     Round the current instance century with given precision using the given function.
+ * @method        $this               floorCentury(float $precision = 1)                                                   Truncate the current instance century with given precision.
+ * @method        $this               floorCenturies(float $precision = 1)                                                 Truncate the current instance century with given precision.
+ * @method        $this               ceilCentury(float $precision = 1)                                                    Ceil the current instance century with given precision.
+ * @method        $this               ceilCenturies(float $precision = 1)                                                  Ceil the current instance century with given precision.
+ * @method        $this               roundDecade(float $precision = 1, string $function = "round")                        Round the current instance decade with given precision using the given function.
+ * @method        $this               roundDecades(float $precision = 1, string $function = "round")                       Round the current instance decade with given precision using the given function.
+ * @method        $this               floorDecade(float $precision = 1)                                                    Truncate the current instance decade with given precision.
+ * @method        $this               floorDecades(float $precision = 1)                                                   Truncate the current instance decade with given precision.
+ * @method        $this               ceilDecade(float $precision = 1)                                                     Ceil the current instance decade with given precision.
+ * @method        $this               ceilDecades(float $precision = 1)                                                    Ceil the current instance decade with given precision.
+ * @method        $this               roundQuarter(float $precision = 1, string $function = "round")                       Round the current instance quarter with given precision using the given function.
+ * @method        $this               roundQuarters(float $precision = 1, string $function = "round")                      Round the current instance quarter with given precision using the given function.
+ * @method        $this               floorQuarter(float $precision = 1)                                                   Truncate the current instance quarter with given precision.
+ * @method        $this               floorQuarters(float $precision = 1)                                                  Truncate the current instance quarter with given precision.
+ * @method        $this               ceilQuarter(float $precision = 1)                                                    Ceil the current instance quarter with given precision.
+ * @method        $this               ceilQuarters(float $precision = 1)                                                   Ceil the current instance quarter with given precision.
+ * @method        $this               roundMillisecond(float $precision = 1, string $function = "round")                   Round the current instance millisecond with given precision using the given function.
+ * @method        $this               roundMilliseconds(float $precision = 1, string $function = "round")                  Round the current instance millisecond with given precision using the given function.
+ * @method        $this               floorMillisecond(float $precision = 1)                                               Truncate the current instance millisecond with given precision.
+ * @method        $this               floorMilliseconds(float $precision = 1)                                              Truncate the current instance millisecond with given precision.
+ * @method        $this               ceilMillisecond(float $precision = 1)                                                Ceil the current instance millisecond with given precision.
+ * @method        $this               ceilMilliseconds(float $precision = 1)                                               Ceil the current instance millisecond with given precision.
+ * @method        $this               roundMicrosecond(float $precision = 1, string $function = "round")                   Round the current instance microsecond with given precision using the given function.
+ * @method        $this               roundMicroseconds(float $precision = 1, string $function = "round")                  Round the current instance microsecond with given precision using the given function.
+ * @method        $this               floorMicrosecond(float $precision = 1)                                               Truncate the current instance microsecond with given precision.
+ * @method        $this               floorMicroseconds(float $precision = 1)                                              Truncate the current instance microsecond with given precision.
+ * @method        $this               ceilMicrosecond(float $precision = 1)                                                Ceil the current instance microsecond with given precision.
+ * @method        $this               ceilMicroseconds(float $precision = 1)                                               Ceil the current instance microsecond with given precision.
+ * @method        string              shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)          Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)           Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)          Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)           Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)     Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)      Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)   Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string              longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)    Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        static Carbon|false createFromFormat(string $format, string $time, string|DateTimeZone $timezone = null) Parse a string into a new Carbon object according to the specified format.
+ * @method        static Carbon       __set_state(array $array)                                                            https://php.net/manual/en/datetime.set-state.php
+ *
+ * </autodoc>
+ */
+class Carbon extends DateTime implements CarbonInterface
+{
+    use Date;
+
+    /**
+     * Returns true if the current class/instance is mutable.
+     *
+     * @return bool
+     */
+    public static function isMutable()
+    {
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonConverterInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonConverterInterface.php
new file mode 100644
index 0000000..eb0a709
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonConverterInterface.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use DateTimeInterface;
+
+interface CarbonConverterInterface
+{
+    public function convertDate(DateTimeInterface $dateTime, bool $negated = false): CarbonInterface;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonImmutable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonImmutable.php
new file mode 100644
index 0000000..cb1c498
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonImmutable.php
@@ -0,0 +1,582 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Carbon\Traits\Date;
+use DateTimeImmutable;
+use DateTimeInterface;
+use DateTimeZone;
+
+/**
+ * A simple API extension for DateTimeImmutable.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @property      int                          $year
+ * @property      int                          $yearIso
+ * @property      int                          $month
+ * @property      int                          $day
+ * @property      int                          $hour
+ * @property      int                          $minute
+ * @property      int                          $second
+ * @property      int                          $micro
+ * @property      int                          $microsecond
+ * @property      int|float|string             $timestamp                                                                           seconds since the Unix Epoch
+ * @property      string                       $englishDayOfWeek                                                                    the day of week in English
+ * @property      string                       $shortEnglishDayOfWeek                                                               the abbreviated day of week in English
+ * @property      string                       $englishMonth                                                                        the month in English
+ * @property      string                       $shortEnglishMonth                                                                   the abbreviated month in English
+ * @property      string                       $localeDayOfWeek                                                                     the day of week in current locale LC_TIME
+ * @property      string                       $shortLocaleDayOfWeek                                                                the abbreviated day of week in current locale LC_TIME
+ * @property      string                       $localeMonth                                                                         the month in current locale LC_TIME
+ * @property      string                       $shortLocaleMonth                                                                    the abbreviated month in current locale LC_TIME
+ * @property      int                          $milliseconds
+ * @property      int                          $millisecond
+ * @property      int                          $milli
+ * @property      int                          $week                                                                                1 through 53
+ * @property      int                          $isoWeek                                                                             1 through 53
+ * @property      int                          $weekYear                                                                            year according to week format
+ * @property      int                          $isoWeekYear                                                                         year according to ISO week format
+ * @property      int                          $dayOfYear                                                                           1 through 366
+ * @property      int                          $age                                                                                 does a diffInYears() with default parameters
+ * @property      int                          $offset                                                                              the timezone offset in seconds from UTC
+ * @property      int                          $offsetMinutes                                                                       the timezone offset in minutes from UTC
+ * @property      int                          $offsetHours                                                                         the timezone offset in hours from UTC
+ * @property      CarbonTimeZone               $timezone                                                                            the current timezone
+ * @property      CarbonTimeZone               $tz                                                                                  alias of $timezone
+ * @property-read int                          $dayOfWeek                                                                           0 (for Sunday) through 6 (for Saturday)
+ * @property-read int                          $dayOfWeekIso                                                                        1 (for Monday) through 7 (for Sunday)
+ * @property-read int                          $weekOfYear                                                                          ISO-8601 week number of year, weeks starting on Monday
+ * @property-read int                          $daysInMonth                                                                         number of days in the given month
+ * @property-read string                       $latinMeridiem                                                                       "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
+ * @property-read string                       $latinUpperMeridiem                                                                  "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
+ * @property-read string                       $timezoneAbbreviatedName                                                             the current timezone abbreviated name
+ * @property-read string                       $tzAbbrName                                                                          alias of $timezoneAbbreviatedName
+ * @property-read string                       $dayName                                                                             long name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string                       $shortDayName                                                                        short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string                       $minDayName                                                                          very short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string                       $monthName                                                                           long name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string                       $shortMonthName                                                                      short name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string                       $meridiem                                                                            lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read string                       $upperMeridiem                                                                       uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read int                          $noZeroHour                                                                          current hour from 1 to 24
+ * @property-read int                          $weeksInYear                                                                         51 through 53
+ * @property-read int                          $isoWeeksInYear                                                                      51 through 53
+ * @property-read int                          $weekOfMonth                                                                         1 through 5
+ * @property-read int                          $weekNumberInMonth                                                                   1 through 5
+ * @property-read int                          $firstWeekDay                                                                        0 through 6
+ * @property-read int                          $lastWeekDay                                                                         0 through 6
+ * @property-read int                          $daysInYear                                                                          365 or 366
+ * @property-read int                          $quarter                                                                             the quarter of this instance, 1 - 4
+ * @property-read int                          $decade                                                                              the decade of this instance
+ * @property-read int                          $century                                                                             the century of this instance
+ * @property-read int                          $millennium                                                                          the millennium of this instance
+ * @property-read bool                         $dst                                                                                 daylight savings time indicator, true if DST, false otherwise
+ * @property-read bool                         $local                                                                               checks if the timezone is local, true if local, false otherwise
+ * @property-read bool                         $utc                                                                                 checks if the timezone is UTC, true if UTC, false otherwise
+ * @property-read string                       $timezoneName                                                                        the current timezone name
+ * @property-read string                       $tzName                                                                              alias of $timezoneName
+ * @property-read string                       $locale                                                                              locale of the current instance
+ *
+ * @method        bool                         isUtc()                                                                              Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
+ * @method        bool                         isLocal()                                                                            Check if the current instance has non-UTC timezone.
+ * @method        bool                         isValid()                                                                            Check if the current instance is a valid date.
+ * @method        bool                         isDST()                                                                              Check if the current instance is in a daylight saving time.
+ * @method        bool                         isSunday()                                                                           Checks if the instance day is sunday.
+ * @method        bool                         isMonday()                                                                           Checks if the instance day is monday.
+ * @method        bool                         isTuesday()                                                                          Checks if the instance day is tuesday.
+ * @method        bool                         isWednesday()                                                                        Checks if the instance day is wednesday.
+ * @method        bool                         isThursday()                                                                         Checks if the instance day is thursday.
+ * @method        bool                         isFriday()                                                                           Checks if the instance day is friday.
+ * @method        bool                         isSaturday()                                                                         Checks if the instance day is saturday.
+ * @method        bool                         isSameYear(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentYear()                                                                      Checks if the instance is in the same year as the current moment.
+ * @method        bool                         isNextYear()                                                                         Checks if the instance is in the same year as the current moment next year.
+ * @method        bool                         isLastYear()                                                                         Checks if the instance is in the same year as the current moment last year.
+ * @method        bool                         isSameWeek(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentWeek()                                                                      Checks if the instance is in the same week as the current moment.
+ * @method        bool                         isNextWeek()                                                                         Checks if the instance is in the same week as the current moment next week.
+ * @method        bool                         isLastWeek()                                                                         Checks if the instance is in the same week as the current moment last week.
+ * @method        bool                         isSameDay(Carbon|DateTimeInterface|string|null $date = null)                         Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentDay()                                                                       Checks if the instance is in the same day as the current moment.
+ * @method        bool                         isNextDay()                                                                          Checks if the instance is in the same day as the current moment next day.
+ * @method        bool                         isLastDay()                                                                          Checks if the instance is in the same day as the current moment last day.
+ * @method        bool                         isSameHour(Carbon|DateTimeInterface|string|null $date = null)                        Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentHour()                                                                      Checks if the instance is in the same hour as the current moment.
+ * @method        bool                         isNextHour()                                                                         Checks if the instance is in the same hour as the current moment next hour.
+ * @method        bool                         isLastHour()                                                                         Checks if the instance is in the same hour as the current moment last hour.
+ * @method        bool                         isSameMinute(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentMinute()                                                                    Checks if the instance is in the same minute as the current moment.
+ * @method        bool                         isNextMinute()                                                                       Checks if the instance is in the same minute as the current moment next minute.
+ * @method        bool                         isLastMinute()                                                                       Checks if the instance is in the same minute as the current moment last minute.
+ * @method        bool                         isSameSecond(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentSecond()                                                                    Checks if the instance is in the same second as the current moment.
+ * @method        bool                         isNextSecond()                                                                       Checks if the instance is in the same second as the current moment next second.
+ * @method        bool                         isLastSecond()                                                                       Checks if the instance is in the same second as the current moment last second.
+ * @method        bool                         isSameMicro(Carbon|DateTimeInterface|string|null $date = null)                       Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentMicro()                                                                     Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool                         isNextMicro()                                                                        Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool                         isLastMicro()                                                                        Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool                         isSameMicrosecond(Carbon|DateTimeInterface|string|null $date = null)                 Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentMicrosecond()                                                               Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool                         isNextMicrosecond()                                                                  Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool                         isLastMicrosecond()                                                                  Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool                         isCurrentMonth()                                                                     Checks if the instance is in the same month as the current moment.
+ * @method        bool                         isNextMonth()                                                                        Checks if the instance is in the same month as the current moment next month.
+ * @method        bool                         isLastMonth()                                                                        Checks if the instance is in the same month as the current moment last month.
+ * @method        bool                         isCurrentQuarter()                                                                   Checks if the instance is in the same quarter as the current moment.
+ * @method        bool                         isNextQuarter()                                                                      Checks if the instance is in the same quarter as the current moment next quarter.
+ * @method        bool                         isLastQuarter()                                                                      Checks if the instance is in the same quarter as the current moment last quarter.
+ * @method        bool                         isSameDecade(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentDecade()                                                                    Checks if the instance is in the same decade as the current moment.
+ * @method        bool                         isNextDecade()                                                                       Checks if the instance is in the same decade as the current moment next decade.
+ * @method        bool                         isLastDecade()                                                                       Checks if the instance is in the same decade as the current moment last decade.
+ * @method        bool                         isSameCentury(Carbon|DateTimeInterface|string|null $date = null)                     Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentCentury()                                                                   Checks if the instance is in the same century as the current moment.
+ * @method        bool                         isNextCentury()                                                                      Checks if the instance is in the same century as the current moment next century.
+ * @method        bool                         isLastCentury()                                                                      Checks if the instance is in the same century as the current moment last century.
+ * @method        bool                         isSameMillennium(Carbon|DateTimeInterface|string|null $date = null)                  Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool                         isCurrentMillennium()                                                                Checks if the instance is in the same millennium as the current moment.
+ * @method        bool                         isNextMillennium()                                                                   Checks if the instance is in the same millennium as the current moment next millennium.
+ * @method        bool                         isLastMillennium()                                                                   Checks if the instance is in the same millennium as the current moment last millennium.
+ * @method        CarbonImmutable              years(int $value)                                                                    Set current instance year to the given value.
+ * @method        CarbonImmutable              year(int $value)                                                                     Set current instance year to the given value.
+ * @method        CarbonImmutable              setYears(int $value)                                                                 Set current instance year to the given value.
+ * @method        CarbonImmutable              setYear(int $value)                                                                  Set current instance year to the given value.
+ * @method        CarbonImmutable              months(int $value)                                                                   Set current instance month to the given value.
+ * @method        CarbonImmutable              month(int $value)                                                                    Set current instance month to the given value.
+ * @method        CarbonImmutable              setMonths(int $value)                                                                Set current instance month to the given value.
+ * @method        CarbonImmutable              setMonth(int $value)                                                                 Set current instance month to the given value.
+ * @method        CarbonImmutable              days(int $value)                                                                     Set current instance day to the given value.
+ * @method        CarbonImmutable              day(int $value)                                                                      Set current instance day to the given value.
+ * @method        CarbonImmutable              setDays(int $value)                                                                  Set current instance day to the given value.
+ * @method        CarbonImmutable              setDay(int $value)                                                                   Set current instance day to the given value.
+ * @method        CarbonImmutable              hours(int $value)                                                                    Set current instance hour to the given value.
+ * @method        CarbonImmutable              hour(int $value)                                                                     Set current instance hour to the given value.
+ * @method        CarbonImmutable              setHours(int $value)                                                                 Set current instance hour to the given value.
+ * @method        CarbonImmutable              setHour(int $value)                                                                  Set current instance hour to the given value.
+ * @method        CarbonImmutable              minutes(int $value)                                                                  Set current instance minute to the given value.
+ * @method        CarbonImmutable              minute(int $value)                                                                   Set current instance minute to the given value.
+ * @method        CarbonImmutable              setMinutes(int $value)                                                               Set current instance minute to the given value.
+ * @method        CarbonImmutable              setMinute(int $value)                                                                Set current instance minute to the given value.
+ * @method        CarbonImmutable              seconds(int $value)                                                                  Set current instance second to the given value.
+ * @method        CarbonImmutable              second(int $value)                                                                   Set current instance second to the given value.
+ * @method        CarbonImmutable              setSeconds(int $value)                                                               Set current instance second to the given value.
+ * @method        CarbonImmutable              setSecond(int $value)                                                                Set current instance second to the given value.
+ * @method        CarbonImmutable              millis(int $value)                                                                   Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              milli(int $value)                                                                    Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              setMillis(int $value)                                                                Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              setMilli(int $value)                                                                 Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              milliseconds(int $value)                                                             Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              millisecond(int $value)                                                              Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              setMilliseconds(int $value)                                                          Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              setMillisecond(int $value)                                                           Set current instance millisecond to the given value.
+ * @method        CarbonImmutable              micros(int $value)                                                                   Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              micro(int $value)                                                                    Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              setMicros(int $value)                                                                Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              setMicro(int $value)                                                                 Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              microseconds(int $value)                                                             Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              microsecond(int $value)                                                              Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              setMicroseconds(int $value)                                                          Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              setMicrosecond(int $value)                                                           Set current instance microsecond to the given value.
+ * @method        CarbonImmutable              addYears(int $value = 1)                                                             Add years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addYear()                                                                            Add one year to the instance (using date interval).
+ * @method        CarbonImmutable              subYears(int $value = 1)                                                             Sub years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subYear()                                                                            Sub one year to the instance (using date interval).
+ * @method        CarbonImmutable              addYearsWithOverflow(int $value = 1)                                                 Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addYearWithOverflow()                                                                Add one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subYearsWithOverflow(int $value = 1)                                                 Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subYearWithOverflow()                                                                Sub one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addYearsWithoutOverflow(int $value = 1)                                              Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addYearWithoutOverflow()                                                             Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearsWithoutOverflow(int $value = 1)                                              Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearWithoutOverflow()                                                             Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addYearsWithNoOverflow(int $value = 1)                                               Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addYearWithNoOverflow()                                                              Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearsWithNoOverflow(int $value = 1)                                               Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearWithNoOverflow()                                                              Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addYearsNoOverflow(int $value = 1)                                                   Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addYearNoOverflow()                                                                  Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearsNoOverflow(int $value = 1)                                                   Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subYearNoOverflow()                                                                  Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonths(int $value = 1)                                                            Add months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMonth()                                                                           Add one month to the instance (using date interval).
+ * @method        CarbonImmutable              subMonths(int $value = 1)                                                            Sub months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMonth()                                                                           Sub one month to the instance (using date interval).
+ * @method        CarbonImmutable              addMonthsWithOverflow(int $value = 1)                                                Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addMonthWithOverflow()                                                               Add one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subMonthsWithOverflow(int $value = 1)                                                Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subMonthWithOverflow()                                                               Sub one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addMonthsWithoutOverflow(int $value = 1)                                             Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonthWithoutOverflow()                                                            Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthsWithoutOverflow(int $value = 1)                                             Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthWithoutOverflow()                                                            Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonthsWithNoOverflow(int $value = 1)                                              Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonthWithNoOverflow()                                                             Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthsWithNoOverflow(int $value = 1)                                              Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthWithNoOverflow()                                                             Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonthsNoOverflow(int $value = 1)                                                  Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMonthNoOverflow()                                                                 Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthsNoOverflow(int $value = 1)                                                  Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMonthNoOverflow()                                                                 Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDays(int $value = 1)                                                              Add days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addDay()                                                                             Add one day to the instance (using date interval).
+ * @method        CarbonImmutable              subDays(int $value = 1)                                                              Sub days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subDay()                                                                             Sub one day to the instance (using date interval).
+ * @method        CarbonImmutable              addHours(int $value = 1)                                                             Add hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addHour()                                                                            Add one hour to the instance (using date interval).
+ * @method        CarbonImmutable              subHours(int $value = 1)                                                             Sub hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subHour()                                                                            Sub one hour to the instance (using date interval).
+ * @method        CarbonImmutable              addMinutes(int $value = 1)                                                           Add minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMinute()                                                                          Add one minute to the instance (using date interval).
+ * @method        CarbonImmutable              subMinutes(int $value = 1)                                                           Sub minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMinute()                                                                          Sub one minute to the instance (using date interval).
+ * @method        CarbonImmutable              addSeconds(int $value = 1)                                                           Add seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addSecond()                                                                          Add one second to the instance (using date interval).
+ * @method        CarbonImmutable              subSeconds(int $value = 1)                                                           Sub seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subSecond()                                                                          Sub one second to the instance (using date interval).
+ * @method        CarbonImmutable              addMillis(int $value = 1)                                                            Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMilli()                                                                           Add one millisecond to the instance (using date interval).
+ * @method        CarbonImmutable              subMillis(int $value = 1)                                                            Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMilli()                                                                           Sub one millisecond to the instance (using date interval).
+ * @method        CarbonImmutable              addMilliseconds(int $value = 1)                                                      Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMillisecond()                                                                     Add one millisecond to the instance (using date interval).
+ * @method        CarbonImmutable              subMilliseconds(int $value = 1)                                                      Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMillisecond()                                                                     Sub one millisecond to the instance (using date interval).
+ * @method        CarbonImmutable              addMicros(int $value = 1)                                                            Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMicro()                                                                           Add one microsecond to the instance (using date interval).
+ * @method        CarbonImmutable              subMicros(int $value = 1)                                                            Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMicro()                                                                           Sub one microsecond to the instance (using date interval).
+ * @method        CarbonImmutable              addMicroseconds(int $value = 1)                                                      Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMicrosecond()                                                                     Add one microsecond to the instance (using date interval).
+ * @method        CarbonImmutable              subMicroseconds(int $value = 1)                                                      Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMicrosecond()                                                                     Sub one microsecond to the instance (using date interval).
+ * @method        CarbonImmutable              addMillennia(int $value = 1)                                                         Add millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addMillennium()                                                                      Add one millennium to the instance (using date interval).
+ * @method        CarbonImmutable              subMillennia(int $value = 1)                                                         Sub millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subMillennium()                                                                      Sub one millennium to the instance (using date interval).
+ * @method        CarbonImmutable              addMillenniaWithOverflow(int $value = 1)                                             Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addMillenniumWithOverflow()                                                          Add one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subMillenniaWithOverflow(int $value = 1)                                             Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subMillenniumWithOverflow()                                                          Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addMillenniaWithoutOverflow(int $value = 1)                                          Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMillenniumWithoutOverflow()                                                       Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniaWithoutOverflow(int $value = 1)                                          Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniumWithoutOverflow()                                                       Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMillenniaWithNoOverflow(int $value = 1)                                           Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMillenniumWithNoOverflow()                                                        Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniaWithNoOverflow(int $value = 1)                                           Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniumWithNoOverflow()                                                        Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMillenniaNoOverflow(int $value = 1)                                               Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addMillenniumNoOverflow()                                                            Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniaNoOverflow(int $value = 1)                                               Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subMillenniumNoOverflow()                                                            Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturies(int $value = 1)                                                         Add centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addCentury()                                                                         Add one century to the instance (using date interval).
+ * @method        CarbonImmutable              subCenturies(int $value = 1)                                                         Sub centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subCentury()                                                                         Sub one century to the instance (using date interval).
+ * @method        CarbonImmutable              addCenturiesWithOverflow(int $value = 1)                                             Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addCenturyWithOverflow()                                                             Add one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subCenturiesWithOverflow(int $value = 1)                                             Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subCenturyWithOverflow()                                                             Sub one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addCenturiesWithoutOverflow(int $value = 1)                                          Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturyWithoutOverflow()                                                          Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturiesWithoutOverflow(int $value = 1)                                          Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturyWithoutOverflow()                                                          Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturiesWithNoOverflow(int $value = 1)                                           Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturyWithNoOverflow()                                                           Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturiesWithNoOverflow(int $value = 1)                                           Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturyWithNoOverflow()                                                           Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturiesNoOverflow(int $value = 1)                                               Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addCenturyNoOverflow()                                                               Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturiesNoOverflow(int $value = 1)                                               Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subCenturyNoOverflow()                                                               Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecades(int $value = 1)                                                           Add decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addDecade()                                                                          Add one decade to the instance (using date interval).
+ * @method        CarbonImmutable              subDecades(int $value = 1)                                                           Sub decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subDecade()                                                                          Sub one decade to the instance (using date interval).
+ * @method        CarbonImmutable              addDecadesWithOverflow(int $value = 1)                                               Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addDecadeWithOverflow()                                                              Add one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subDecadesWithOverflow(int $value = 1)                                               Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subDecadeWithOverflow()                                                              Sub one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addDecadesWithoutOverflow(int $value = 1)                                            Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecadeWithoutOverflow()                                                           Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadesWithoutOverflow(int $value = 1)                                            Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadeWithoutOverflow()                                                           Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecadesWithNoOverflow(int $value = 1)                                             Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecadeWithNoOverflow()                                                            Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadesWithNoOverflow(int $value = 1)                                             Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadeWithNoOverflow()                                                            Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecadesNoOverflow(int $value = 1)                                                 Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addDecadeNoOverflow()                                                                Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadesNoOverflow(int $value = 1)                                                 Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subDecadeNoOverflow()                                                                Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuarters(int $value = 1)                                                          Add quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addQuarter()                                                                         Add one quarter to the instance (using date interval).
+ * @method        CarbonImmutable              subQuarters(int $value = 1)                                                          Sub quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subQuarter()                                                                         Sub one quarter to the instance (using date interval).
+ * @method        CarbonImmutable              addQuartersWithOverflow(int $value = 1)                                              Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addQuarterWithOverflow()                                                             Add one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subQuartersWithOverflow(int $value = 1)                                              Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              subQuarterWithOverflow()                                                             Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonImmutable              addQuartersWithoutOverflow(int $value = 1)                                           Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuarterWithoutOverflow()                                                          Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuartersWithoutOverflow(int $value = 1)                                           Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuarterWithoutOverflow()                                                          Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuartersWithNoOverflow(int $value = 1)                                            Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuarterWithNoOverflow()                                                           Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuartersWithNoOverflow(int $value = 1)                                            Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuarterWithNoOverflow()                                                           Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuartersNoOverflow(int $value = 1)                                                Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addQuarterNoOverflow()                                                               Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuartersNoOverflow(int $value = 1)                                                Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              subQuarterNoOverflow()                                                               Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonImmutable              addWeeks(int $value = 1)                                                             Add weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addWeek()                                                                            Add one week to the instance (using date interval).
+ * @method        CarbonImmutable              subWeeks(int $value = 1)                                                             Sub weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subWeek()                                                                            Sub one week to the instance (using date interval).
+ * @method        CarbonImmutable              addWeekdays(int $value = 1)                                                          Add weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              addWeekday()                                                                         Add one weekday to the instance (using date interval).
+ * @method        CarbonImmutable              subWeekdays(int $value = 1)                                                          Sub weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonImmutable              subWeekday()                                                                         Sub one weekday to the instance (using date interval).
+ * @method        CarbonImmutable              addRealMicros(int $value = 1)                                                        Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMicro()                                                                       Add one microsecond to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMicros(int $value = 1)                                                        Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMicro()                                                                       Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod                 microsUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonImmutable              addRealMicroseconds(int $value = 1)                                                  Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMicrosecond()                                                                 Add one microsecond to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMicroseconds(int $value = 1)                                                  Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMicrosecond()                                                                 Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod                 microsecondsUntil($endDate = null, int $factor = 1)                                  Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonImmutable              addRealMillis(int $value = 1)                                                        Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMilli()                                                                       Add one millisecond to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMillis(int $value = 1)                                                        Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMilli()                                                                       Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod                 millisUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonImmutable              addRealMilliseconds(int $value = 1)                                                  Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMillisecond()                                                                 Add one millisecond to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMilliseconds(int $value = 1)                                                  Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMillisecond()                                                                 Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod                 millisecondsUntil($endDate = null, int $factor = 1)                                  Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonImmutable              addRealSeconds(int $value = 1)                                                       Add seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealSecond()                                                                      Add one second to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealSeconds(int $value = 1)                                                       Sub seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealSecond()                                                                      Sub one second to the instance (using timestamp).
+ * @method        CarbonPeriod                 secondsUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
+ * @method        CarbonImmutable              addRealMinutes(int $value = 1)                                                       Add minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMinute()                                                                      Add one minute to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMinutes(int $value = 1)                                                       Sub minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMinute()                                                                      Sub one minute to the instance (using timestamp).
+ * @method        CarbonPeriod                 minutesUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
+ * @method        CarbonImmutable              addRealHours(int $value = 1)                                                         Add hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealHour()                                                                        Add one hour to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealHours(int $value = 1)                                                         Sub hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealHour()                                                                        Sub one hour to the instance (using timestamp).
+ * @method        CarbonPeriod                 hoursUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
+ * @method        CarbonImmutable              addRealDays(int $value = 1)                                                          Add days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealDay()                                                                         Add one day to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealDays(int $value = 1)                                                          Sub days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealDay()                                                                         Sub one day to the instance (using timestamp).
+ * @method        CarbonPeriod                 daysUntil($endDate = null, int $factor = 1)                                          Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
+ * @method        CarbonImmutable              addRealWeeks(int $value = 1)                                                         Add weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealWeek()                                                                        Add one week to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealWeeks(int $value = 1)                                                         Sub weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealWeek()                                                                        Sub one week to the instance (using timestamp).
+ * @method        CarbonPeriod                 weeksUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
+ * @method        CarbonImmutable              addRealMonths(int $value = 1)                                                        Add months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMonth()                                                                       Add one month to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMonths(int $value = 1)                                                        Sub months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMonth()                                                                       Sub one month to the instance (using timestamp).
+ * @method        CarbonPeriod                 monthsUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
+ * @method        CarbonImmutable              addRealQuarters(int $value = 1)                                                      Add quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealQuarter()                                                                     Add one quarter to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealQuarters(int $value = 1)                                                      Sub quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealQuarter()                                                                     Sub one quarter to the instance (using timestamp).
+ * @method        CarbonPeriod                 quartersUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
+ * @method        CarbonImmutable              addRealYears(int $value = 1)                                                         Add years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealYear()                                                                        Add one year to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealYears(int $value = 1)                                                         Sub years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealYear()                                                                        Sub one year to the instance (using timestamp).
+ * @method        CarbonPeriod                 yearsUntil($endDate = null, int $factor = 1)                                         Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
+ * @method        CarbonImmutable              addRealDecades(int $value = 1)                                                       Add decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealDecade()                                                                      Add one decade to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealDecades(int $value = 1)                                                       Sub decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealDecade()                                                                      Sub one decade to the instance (using timestamp).
+ * @method        CarbonPeriod                 decadesUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
+ * @method        CarbonImmutable              addRealCenturies(int $value = 1)                                                     Add centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealCentury()                                                                     Add one century to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealCenturies(int $value = 1)                                                     Sub centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealCentury()                                                                     Sub one century to the instance (using timestamp).
+ * @method        CarbonPeriod                 centuriesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
+ * @method        CarbonImmutable              addRealMillennia(int $value = 1)                                                     Add millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              addRealMillennium()                                                                  Add one millennium to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMillennia(int $value = 1)                                                     Sub millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonImmutable              subRealMillennium()                                                                  Sub one millennium to the instance (using timestamp).
+ * @method        CarbonPeriod                 millenniaUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
+ * @method        CarbonImmutable              roundYear(float $precision = 1, string $function = "round")                          Round the current instance year with given precision using the given function.
+ * @method        CarbonImmutable              roundYears(float $precision = 1, string $function = "round")                         Round the current instance year with given precision using the given function.
+ * @method        CarbonImmutable              floorYear(float $precision = 1)                                                      Truncate the current instance year with given precision.
+ * @method        CarbonImmutable              floorYears(float $precision = 1)                                                     Truncate the current instance year with given precision.
+ * @method        CarbonImmutable              ceilYear(float $precision = 1)                                                       Ceil the current instance year with given precision.
+ * @method        CarbonImmutable              ceilYears(float $precision = 1)                                                      Ceil the current instance year with given precision.
+ * @method        CarbonImmutable              roundMonth(float $precision = 1, string $function = "round")                         Round the current instance month with given precision using the given function.
+ * @method        CarbonImmutable              roundMonths(float $precision = 1, string $function = "round")                        Round the current instance month with given precision using the given function.
+ * @method        CarbonImmutable              floorMonth(float $precision = 1)                                                     Truncate the current instance month with given precision.
+ * @method        CarbonImmutable              floorMonths(float $precision = 1)                                                    Truncate the current instance month with given precision.
+ * @method        CarbonImmutable              ceilMonth(float $precision = 1)                                                      Ceil the current instance month with given precision.
+ * @method        CarbonImmutable              ceilMonths(float $precision = 1)                                                     Ceil the current instance month with given precision.
+ * @method        CarbonImmutable              roundDay(float $precision = 1, string $function = "round")                           Round the current instance day with given precision using the given function.
+ * @method        CarbonImmutable              roundDays(float $precision = 1, string $function = "round")                          Round the current instance day with given precision using the given function.
+ * @method        CarbonImmutable              floorDay(float $precision = 1)                                                       Truncate the current instance day with given precision.
+ * @method        CarbonImmutable              floorDays(float $precision = 1)                                                      Truncate the current instance day with given precision.
+ * @method        CarbonImmutable              ceilDay(float $precision = 1)                                                        Ceil the current instance day with given precision.
+ * @method        CarbonImmutable              ceilDays(float $precision = 1)                                                       Ceil the current instance day with given precision.
+ * @method        CarbonImmutable              roundHour(float $precision = 1, string $function = "round")                          Round the current instance hour with given precision using the given function.
+ * @method        CarbonImmutable              roundHours(float $precision = 1, string $function = "round")                         Round the current instance hour with given precision using the given function.
+ * @method        CarbonImmutable              floorHour(float $precision = 1)                                                      Truncate the current instance hour with given precision.
+ * @method        CarbonImmutable              floorHours(float $precision = 1)                                                     Truncate the current instance hour with given precision.
+ * @method        CarbonImmutable              ceilHour(float $precision = 1)                                                       Ceil the current instance hour with given precision.
+ * @method        CarbonImmutable              ceilHours(float $precision = 1)                                                      Ceil the current instance hour with given precision.
+ * @method        CarbonImmutable              roundMinute(float $precision = 1, string $function = "round")                        Round the current instance minute with given precision using the given function.
+ * @method        CarbonImmutable              roundMinutes(float $precision = 1, string $function = "round")                       Round the current instance minute with given precision using the given function.
+ * @method        CarbonImmutable              floorMinute(float $precision = 1)                                                    Truncate the current instance minute with given precision.
+ * @method        CarbonImmutable              floorMinutes(float $precision = 1)                                                   Truncate the current instance minute with given precision.
+ * @method        CarbonImmutable              ceilMinute(float $precision = 1)                                                     Ceil the current instance minute with given precision.
+ * @method        CarbonImmutable              ceilMinutes(float $precision = 1)                                                    Ceil the current instance minute with given precision.
+ * @method        CarbonImmutable              roundSecond(float $precision = 1, string $function = "round")                        Round the current instance second with given precision using the given function.
+ * @method        CarbonImmutable              roundSeconds(float $precision = 1, string $function = "round")                       Round the current instance second with given precision using the given function.
+ * @method        CarbonImmutable              floorSecond(float $precision = 1)                                                    Truncate the current instance second with given precision.
+ * @method        CarbonImmutable              floorSeconds(float $precision = 1)                                                   Truncate the current instance second with given precision.
+ * @method        CarbonImmutable              ceilSecond(float $precision = 1)                                                     Ceil the current instance second with given precision.
+ * @method        CarbonImmutable              ceilSeconds(float $precision = 1)                                                    Ceil the current instance second with given precision.
+ * @method        CarbonImmutable              roundMillennium(float $precision = 1, string $function = "round")                    Round the current instance millennium with given precision using the given function.
+ * @method        CarbonImmutable              roundMillennia(float $precision = 1, string $function = "round")                     Round the current instance millennium with given precision using the given function.
+ * @method        CarbonImmutable              floorMillennium(float $precision = 1)                                                Truncate the current instance millennium with given precision.
+ * @method        CarbonImmutable              floorMillennia(float $precision = 1)                                                 Truncate the current instance millennium with given precision.
+ * @method        CarbonImmutable              ceilMillennium(float $precision = 1)                                                 Ceil the current instance millennium with given precision.
+ * @method        CarbonImmutable              ceilMillennia(float $precision = 1)                                                  Ceil the current instance millennium with given precision.
+ * @method        CarbonImmutable              roundCentury(float $precision = 1, string $function = "round")                       Round the current instance century with given precision using the given function.
+ * @method        CarbonImmutable              roundCenturies(float $precision = 1, string $function = "round")                     Round the current instance century with given precision using the given function.
+ * @method        CarbonImmutable              floorCentury(float $precision = 1)                                                   Truncate the current instance century with given precision.
+ * @method        CarbonImmutable              floorCenturies(float $precision = 1)                                                 Truncate the current instance century with given precision.
+ * @method        CarbonImmutable              ceilCentury(float $precision = 1)                                                    Ceil the current instance century with given precision.
+ * @method        CarbonImmutable              ceilCenturies(float $precision = 1)                                                  Ceil the current instance century with given precision.
+ * @method        CarbonImmutable              roundDecade(float $precision = 1, string $function = "round")                        Round the current instance decade with given precision using the given function.
+ * @method        CarbonImmutable              roundDecades(float $precision = 1, string $function = "round")                       Round the current instance decade with given precision using the given function.
+ * @method        CarbonImmutable              floorDecade(float $precision = 1)                                                    Truncate the current instance decade with given precision.
+ * @method        CarbonImmutable              floorDecades(float $precision = 1)                                                   Truncate the current instance decade with given precision.
+ * @method        CarbonImmutable              ceilDecade(float $precision = 1)                                                     Ceil the current instance decade with given precision.
+ * @method        CarbonImmutable              ceilDecades(float $precision = 1)                                                    Ceil the current instance decade with given precision.
+ * @method        CarbonImmutable              roundQuarter(float $precision = 1, string $function = "round")                       Round the current instance quarter with given precision using the given function.
+ * @method        CarbonImmutable              roundQuarters(float $precision = 1, string $function = "round")                      Round the current instance quarter with given precision using the given function.
+ * @method        CarbonImmutable              floorQuarter(float $precision = 1)                                                   Truncate the current instance quarter with given precision.
+ * @method        CarbonImmutable              floorQuarters(float $precision = 1)                                                  Truncate the current instance quarter with given precision.
+ * @method        CarbonImmutable              ceilQuarter(float $precision = 1)                                                    Ceil the current instance quarter with given precision.
+ * @method        CarbonImmutable              ceilQuarters(float $precision = 1)                                                   Ceil the current instance quarter with given precision.
+ * @method        CarbonImmutable              roundMillisecond(float $precision = 1, string $function = "round")                   Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonImmutable              roundMilliseconds(float $precision = 1, string $function = "round")                  Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonImmutable              floorMillisecond(float $precision = 1)                                               Truncate the current instance millisecond with given precision.
+ * @method        CarbonImmutable              floorMilliseconds(float $precision = 1)                                              Truncate the current instance millisecond with given precision.
+ * @method        CarbonImmutable              ceilMillisecond(float $precision = 1)                                                Ceil the current instance millisecond with given precision.
+ * @method        CarbonImmutable              ceilMilliseconds(float $precision = 1)                                               Ceil the current instance millisecond with given precision.
+ * @method        CarbonImmutable              roundMicrosecond(float $precision = 1, string $function = "round")                   Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonImmutable              roundMicroseconds(float $precision = 1, string $function = "round")                  Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonImmutable              floorMicrosecond(float $precision = 1)                                               Truncate the current instance microsecond with given precision.
+ * @method        CarbonImmutable              floorMicroseconds(float $precision = 1)                                              Truncate the current instance microsecond with given precision.
+ * @method        CarbonImmutable              ceilMicrosecond(float $precision = 1)                                                Ceil the current instance microsecond with given precision.
+ * @method        CarbonImmutable              ceilMicroseconds(float $precision = 1)                                               Ceil the current instance microsecond with given precision.
+ * @method        string                       shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)          Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)           Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)          Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)           Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)     Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)      Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)   Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string                       longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)    Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        static CarbonImmutable|false createFromFormat(string $format, string $time, string|DateTimeZone $timezone = null) Parse a string into a new CarbonImmutable object according to the specified format.
+ * @method        static CarbonImmutable       __set_state(array $array)                                                            https://php.net/manual/en/datetime.set-state.php
+ *
+ * </autodoc>
+ */
+class CarbonImmutable extends DateTimeImmutable implements CarbonInterface
+{
+    use Date {
+        __clone as dateTraitClone;
+    }
+
+    public function __clone()
+    {
+        $this->dateTraitClone();
+        $this->endOfTime = false;
+        $this->startOfTime = false;
+    }
+
+    /**
+     * Create a very old date representing start of time.
+     *
+     * @return static
+     */
+    public static function startOfTime(): self
+    {
+        $date = static::parse('0001-01-01')->years(self::getStartOfTimeYear());
+        $date->startOfTime = true;
+
+        return $date;
+    }
+
+    /**
+     * Create a very far date representing end of time.
+     *
+     * @return static
+     */
+    public static function endOfTime(): self
+    {
+        $date = static::parse('9999-12-31 23:59:59.999999')->years(self::getEndOfTimeYear());
+        $date->endOfTime = true;
+
+        return $date;
+    }
+
+    /**
+     * @codeCoverageIgnore
+     */
+    private static function getEndOfTimeYear(): int
+    {
+        if (version_compare(PHP_VERSION, '7.3.0-dev', '<')) {
+            return 145261681241552;
+        }
+
+        // Remove if https://bugs.php.net/bug.php?id=81107 is fixed
+        if (version_compare(PHP_VERSION, '8.1.0-dev', '>=')) {
+            return 1118290769066902787;
+        }
+
+        return PHP_INT_MAX;
+    }
+
+    /**
+     * @codeCoverageIgnore
+     */
+    private static function getStartOfTimeYear(): int
+    {
+        if (version_compare(PHP_VERSION, '7.3.0-dev', '<')) {
+            return -135908816449551;
+        }
+
+        // Remove if https://bugs.php.net/bug.php?id=81107 is fixed
+        if (version_compare(PHP_VERSION, '8.1.0-dev', '>=')) {
+            return -1118290769066898816;
+        }
+
+        return max(PHP_INT_MIN, -9223372036854773760);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterface.php
new file mode 100644
index 0000000..8f09507
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterface.php
@@ -0,0 +1,5032 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use BadMethodCallException;
+use Carbon\Exceptions\BadComparisonUnitException;
+use Carbon\Exceptions\ImmutableException;
+use Carbon\Exceptions\InvalidDateException;
+use Carbon\Exceptions\InvalidFormatException;
+use Carbon\Exceptions\UnknownGetterException;
+use Carbon\Exceptions\UnknownMethodException;
+use Carbon\Exceptions\UnknownSetterException;
+use Closure;
+use DateInterval;
+use DateTime;
+use DateTimeImmutable;
+use DateTimeInterface;
+use DateTimeZone;
+use JsonSerializable;
+use ReflectionException;
+use ReturnTypeWillChange;
+use Throwable;
+
+/**
+ * Common interface for Carbon and CarbonImmutable.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @property      int              $year
+ * @property      int              $yearIso
+ * @property      int              $month
+ * @property      int              $day
+ * @property      int              $hour
+ * @property      int              $minute
+ * @property      int              $second
+ * @property      int              $micro
+ * @property      int              $microsecond
+ * @property      int|float|string $timestamp                                                                         seconds since the Unix Epoch
+ * @property      string           $englishDayOfWeek                                                                  the day of week in English
+ * @property      string           $shortEnglishDayOfWeek                                                             the abbreviated day of week in English
+ * @property      string           $englishMonth                                                                      the month in English
+ * @property      string           $shortEnglishMonth                                                                 the abbreviated month in English
+ * @property      string           $localeDayOfWeek                                                                   the day of week in current locale LC_TIME
+ * @property      string           $shortLocaleDayOfWeek                                                              the abbreviated day of week in current locale LC_TIME
+ * @property      string           $localeMonth                                                                       the month in current locale LC_TIME
+ * @property      string           $shortLocaleMonth                                                                  the abbreviated month in current locale LC_TIME
+ * @property      int              $milliseconds
+ * @property      int              $millisecond
+ * @property      int              $milli
+ * @property      int              $week                                                                              1 through 53
+ * @property      int              $isoWeek                                                                           1 through 53
+ * @property      int              $weekYear                                                                          year according to week format
+ * @property      int              $isoWeekYear                                                                       year according to ISO week format
+ * @property      int              $dayOfYear                                                                         1 through 366
+ * @property      int              $age                                                                               does a diffInYears() with default parameters
+ * @property      int              $offset                                                                            the timezone offset in seconds from UTC
+ * @property      int              $offsetMinutes                                                                     the timezone offset in minutes from UTC
+ * @property      int              $offsetHours                                                                       the timezone offset in hours from UTC
+ * @property      CarbonTimeZone   $timezone                                                                          the current timezone
+ * @property      CarbonTimeZone   $tz                                                                                alias of $timezone
+ * @property-read int              $dayOfWeek                                                                         0 (for Sunday) through 6 (for Saturday)
+ * @property-read int              $dayOfWeekIso                                                                      1 (for Monday) through 7 (for Sunday)
+ * @property-read int              $weekOfYear                                                                        ISO-8601 week number of year, weeks starting on Monday
+ * @property-read int              $daysInMonth                                                                       number of days in the given month
+ * @property-read string           $latinMeridiem                                                                     "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
+ * @property-read string           $latinUpperMeridiem                                                                "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
+ * @property-read string           $timezoneAbbreviatedName                                                           the current timezone abbreviated name
+ * @property-read string           $tzAbbrName                                                                        alias of $timezoneAbbreviatedName
+ * @property-read string           $dayName                                                                           long name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $shortDayName                                                                      short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $minDayName                                                                        very short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $monthName                                                                         long name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $shortMonthName                                                                    short name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $meridiem                                                                          lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read string           $upperMeridiem                                                                     uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read int              $noZeroHour                                                                        current hour from 1 to 24
+ * @property-read int              $weeksInYear                                                                       51 through 53
+ * @property-read int              $isoWeeksInYear                                                                    51 through 53
+ * @property-read int              $weekOfMonth                                                                       1 through 5
+ * @property-read int              $weekNumberInMonth                                                                 1 through 5
+ * @property-read int              $firstWeekDay                                                                      0 through 6
+ * @property-read int              $lastWeekDay                                                                       0 through 6
+ * @property-read int              $daysInYear                                                                        365 or 366
+ * @property-read int              $quarter                                                                           the quarter of this instance, 1 - 4
+ * @property-read int              $decade                                                                            the decade of this instance
+ * @property-read int              $century                                                                           the century of this instance
+ * @property-read int              $millennium                                                                        the millennium of this instance
+ * @property-read bool             $dst                                                                               daylight savings time indicator, true if DST, false otherwise
+ * @property-read bool             $local                                                                             checks if the timezone is local, true if local, false otherwise
+ * @property-read bool             $utc                                                                               checks if the timezone is UTC, true if UTC, false otherwise
+ * @property-read string           $timezoneName                                                                      the current timezone name
+ * @property-read string           $tzName                                                                            alias of $timezoneName
+ * @property-read string           $locale                                                                            locale of the current instance
+ *
+ * @method        bool             isUtc()                                                                            Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
+ * @method        bool             isLocal()                                                                          Check if the current instance has non-UTC timezone.
+ * @method        bool             isValid()                                                                          Check if the current instance is a valid date.
+ * @method        bool             isDST()                                                                            Check if the current instance is in a daylight saving time.
+ * @method        bool             isSunday()                                                                         Checks if the instance day is sunday.
+ * @method        bool             isMonday()                                                                         Checks if the instance day is monday.
+ * @method        bool             isTuesday()                                                                        Checks if the instance day is tuesday.
+ * @method        bool             isWednesday()                                                                      Checks if the instance day is wednesday.
+ * @method        bool             isThursday()                                                                       Checks if the instance day is thursday.
+ * @method        bool             isFriday()                                                                         Checks if the instance day is friday.
+ * @method        bool             isSaturday()                                                                       Checks if the instance day is saturday.
+ * @method        bool             isSameYear(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentYear()                                                                    Checks if the instance is in the same year as the current moment.
+ * @method        bool             isNextYear()                                                                       Checks if the instance is in the same year as the current moment next year.
+ * @method        bool             isLastYear()                                                                       Checks if the instance is in the same year as the current moment last year.
+ * @method        bool             isSameWeek(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentWeek()                                                                    Checks if the instance is in the same week as the current moment.
+ * @method        bool             isNextWeek()                                                                       Checks if the instance is in the same week as the current moment next week.
+ * @method        bool             isLastWeek()                                                                       Checks if the instance is in the same week as the current moment last week.
+ * @method        bool             isSameDay(Carbon|DateTimeInterface|string|null $date = null)                       Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentDay()                                                                     Checks if the instance is in the same day as the current moment.
+ * @method        bool             isNextDay()                                                                        Checks if the instance is in the same day as the current moment next day.
+ * @method        bool             isLastDay()                                                                        Checks if the instance is in the same day as the current moment last day.
+ * @method        bool             isSameHour(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentHour()                                                                    Checks if the instance is in the same hour as the current moment.
+ * @method        bool             isNextHour()                                                                       Checks if the instance is in the same hour as the current moment next hour.
+ * @method        bool             isLastHour()                                                                       Checks if the instance is in the same hour as the current moment last hour.
+ * @method        bool             isSameMinute(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMinute()                                                                  Checks if the instance is in the same minute as the current moment.
+ * @method        bool             isNextMinute()                                                                     Checks if the instance is in the same minute as the current moment next minute.
+ * @method        bool             isLastMinute()                                                                     Checks if the instance is in the same minute as the current moment last minute.
+ * @method        bool             isSameSecond(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentSecond()                                                                  Checks if the instance is in the same second as the current moment.
+ * @method        bool             isNextSecond()                                                                     Checks if the instance is in the same second as the current moment next second.
+ * @method        bool             isLastSecond()                                                                     Checks if the instance is in the same second as the current moment last second.
+ * @method        bool             isSameMicro(Carbon|DateTimeInterface|string|null $date = null)                     Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMicro()                                                                   Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool             isNextMicro()                                                                      Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool             isLastMicro()                                                                      Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool             isSameMicrosecond(Carbon|DateTimeInterface|string|null $date = null)               Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMicrosecond()                                                             Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool             isNextMicrosecond()                                                                Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool             isLastMicrosecond()                                                                Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool             isCurrentMonth()                                                                   Checks if the instance is in the same month as the current moment.
+ * @method        bool             isNextMonth()                                                                      Checks if the instance is in the same month as the current moment next month.
+ * @method        bool             isLastMonth()                                                                      Checks if the instance is in the same month as the current moment last month.
+ * @method        bool             isCurrentQuarter()                                                                 Checks if the instance is in the same quarter as the current moment.
+ * @method        bool             isNextQuarter()                                                                    Checks if the instance is in the same quarter as the current moment next quarter.
+ * @method        bool             isLastQuarter()                                                                    Checks if the instance is in the same quarter as the current moment last quarter.
+ * @method        bool             isSameDecade(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentDecade()                                                                  Checks if the instance is in the same decade as the current moment.
+ * @method        bool             isNextDecade()                                                                     Checks if the instance is in the same decade as the current moment next decade.
+ * @method        bool             isLastDecade()                                                                     Checks if the instance is in the same decade as the current moment last decade.
+ * @method        bool             isSameCentury(Carbon|DateTimeInterface|string|null $date = null)                   Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentCentury()                                                                 Checks if the instance is in the same century as the current moment.
+ * @method        bool             isNextCentury()                                                                    Checks if the instance is in the same century as the current moment next century.
+ * @method        bool             isLastCentury()                                                                    Checks if the instance is in the same century as the current moment last century.
+ * @method        bool             isSameMillennium(Carbon|DateTimeInterface|string|null $date = null)                Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMillennium()                                                              Checks if the instance is in the same millennium as the current moment.
+ * @method        bool             isNextMillennium()                                                                 Checks if the instance is in the same millennium as the current moment next millennium.
+ * @method        bool             isLastMillennium()                                                                 Checks if the instance is in the same millennium as the current moment last millennium.
+ * @method        CarbonInterface  years(int $value)                                                                  Set current instance year to the given value.
+ * @method        CarbonInterface  year(int $value)                                                                   Set current instance year to the given value.
+ * @method        CarbonInterface  setYears(int $value)                                                               Set current instance year to the given value.
+ * @method        CarbonInterface  setYear(int $value)                                                                Set current instance year to the given value.
+ * @method        CarbonInterface  months(int $value)                                                                 Set current instance month to the given value.
+ * @method        CarbonInterface  month(int $value)                                                                  Set current instance month to the given value.
+ * @method        CarbonInterface  setMonths(int $value)                                                              Set current instance month to the given value.
+ * @method        CarbonInterface  setMonth(int $value)                                                               Set current instance month to the given value.
+ * @method        CarbonInterface  days(int $value)                                                                   Set current instance day to the given value.
+ * @method        CarbonInterface  day(int $value)                                                                    Set current instance day to the given value.
+ * @method        CarbonInterface  setDays(int $value)                                                                Set current instance day to the given value.
+ * @method        CarbonInterface  setDay(int $value)                                                                 Set current instance day to the given value.
+ * @method        CarbonInterface  hours(int $value)                                                                  Set current instance hour to the given value.
+ * @method        CarbonInterface  hour(int $value)                                                                   Set current instance hour to the given value.
+ * @method        CarbonInterface  setHours(int $value)                                                               Set current instance hour to the given value.
+ * @method        CarbonInterface  setHour(int $value)                                                                Set current instance hour to the given value.
+ * @method        CarbonInterface  minutes(int $value)                                                                Set current instance minute to the given value.
+ * @method        CarbonInterface  minute(int $value)                                                                 Set current instance minute to the given value.
+ * @method        CarbonInterface  setMinutes(int $value)                                                             Set current instance minute to the given value.
+ * @method        CarbonInterface  setMinute(int $value)                                                              Set current instance minute to the given value.
+ * @method        CarbonInterface  seconds(int $value)                                                                Set current instance second to the given value.
+ * @method        CarbonInterface  second(int $value)                                                                 Set current instance second to the given value.
+ * @method        CarbonInterface  setSeconds(int $value)                                                             Set current instance second to the given value.
+ * @method        CarbonInterface  setSecond(int $value)                                                              Set current instance second to the given value.
+ * @method        CarbonInterface  millis(int $value)                                                                 Set current instance millisecond to the given value.
+ * @method        CarbonInterface  milli(int $value)                                                                  Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMillis(int $value)                                                              Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMilli(int $value)                                                               Set current instance millisecond to the given value.
+ * @method        CarbonInterface  milliseconds(int $value)                                                           Set current instance millisecond to the given value.
+ * @method        CarbonInterface  millisecond(int $value)                                                            Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMilliseconds(int $value)                                                        Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMillisecond(int $value)                                                         Set current instance millisecond to the given value.
+ * @method        CarbonInterface  micros(int $value)                                                                 Set current instance microsecond to the given value.
+ * @method        CarbonInterface  micro(int $value)                                                                  Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicros(int $value)                                                              Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicro(int $value)                                                               Set current instance microsecond to the given value.
+ * @method        CarbonInterface  microseconds(int $value)                                                           Set current instance microsecond to the given value.
+ * @method        CarbonInterface  microsecond(int $value)                                                            Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicroseconds(int $value)                                                        Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicrosecond(int $value)                                                         Set current instance microsecond to the given value.
+ * @method        CarbonInterface  addYears(int $value = 1)                                                           Add years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addYear()                                                                          Add one year to the instance (using date interval).
+ * @method        CarbonInterface  subYears(int $value = 1)                                                           Sub years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subYear()                                                                          Sub one year to the instance (using date interval).
+ * @method        CarbonInterface  addYearsWithOverflow(int $value = 1)                                               Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addYearWithOverflow()                                                              Add one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subYearsWithOverflow(int $value = 1)                                               Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subYearWithOverflow()                                                              Sub one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addYearsWithoutOverflow(int $value = 1)                                            Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearWithoutOverflow()                                                           Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsWithoutOverflow(int $value = 1)                                            Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearWithoutOverflow()                                                           Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearsWithNoOverflow(int $value = 1)                                             Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearWithNoOverflow()                                                            Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsWithNoOverflow(int $value = 1)                                             Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearWithNoOverflow()                                                            Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearsNoOverflow(int $value = 1)                                                 Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearNoOverflow()                                                                Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsNoOverflow(int $value = 1)                                                 Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearNoOverflow()                                                                Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonths(int $value = 1)                                                          Add months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMonth()                                                                         Add one month to the instance (using date interval).
+ * @method        CarbonInterface  subMonths(int $value = 1)                                                          Sub months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMonth()                                                                         Sub one month to the instance (using date interval).
+ * @method        CarbonInterface  addMonthsWithOverflow(int $value = 1)                                              Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMonthWithOverflow()                                                             Add one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMonthsWithOverflow(int $value = 1)                                              Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMonthWithOverflow()                                                             Sub one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMonthsWithoutOverflow(int $value = 1)                                           Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthWithoutOverflow()                                                          Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsWithoutOverflow(int $value = 1)                                           Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthWithoutOverflow()                                                          Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthsWithNoOverflow(int $value = 1)                                            Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthWithNoOverflow()                                                           Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsWithNoOverflow(int $value = 1)                                            Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthWithNoOverflow()                                                           Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthsNoOverflow(int $value = 1)                                                Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthNoOverflow()                                                               Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsNoOverflow(int $value = 1)                                                Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthNoOverflow()                                                               Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDays(int $value = 1)                                                            Add days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addDay()                                                                           Add one day to the instance (using date interval).
+ * @method        CarbonInterface  subDays(int $value = 1)                                                            Sub days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subDay()                                                                           Sub one day to the instance (using date interval).
+ * @method        CarbonInterface  addHours(int $value = 1)                                                           Add hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addHour()                                                                          Add one hour to the instance (using date interval).
+ * @method        CarbonInterface  subHours(int $value = 1)                                                           Sub hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subHour()                                                                          Sub one hour to the instance (using date interval).
+ * @method        CarbonInterface  addMinutes(int $value = 1)                                                         Add minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMinute()                                                                        Add one minute to the instance (using date interval).
+ * @method        CarbonInterface  subMinutes(int $value = 1)                                                         Sub minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMinute()                                                                        Sub one minute to the instance (using date interval).
+ * @method        CarbonInterface  addSeconds(int $value = 1)                                                         Add seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addSecond()                                                                        Add one second to the instance (using date interval).
+ * @method        CarbonInterface  subSeconds(int $value = 1)                                                         Sub seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subSecond()                                                                        Sub one second to the instance (using date interval).
+ * @method        CarbonInterface  addMillis(int $value = 1)                                                          Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMilli()                                                                         Add one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  subMillis(int $value = 1)                                                          Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMilli()                                                                         Sub one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  addMilliseconds(int $value = 1)                                                    Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMillisecond()                                                                   Add one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  subMilliseconds(int $value = 1)                                                    Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMillisecond()                                                                   Sub one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  addMicros(int $value = 1)                                                          Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMicro()                                                                         Add one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  subMicros(int $value = 1)                                                          Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMicro()                                                                         Sub one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  addMicroseconds(int $value = 1)                                                    Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMicrosecond()                                                                   Add one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  subMicroseconds(int $value = 1)                                                    Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMicrosecond()                                                                   Sub one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  addMillennia(int $value = 1)                                                       Add millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMillennium()                                                                    Add one millennium to the instance (using date interval).
+ * @method        CarbonInterface  subMillennia(int $value = 1)                                                       Sub millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMillennium()                                                                    Sub one millennium to the instance (using date interval).
+ * @method        CarbonInterface  addMillenniaWithOverflow(int $value = 1)                                           Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMillenniumWithOverflow()                                                        Add one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMillenniaWithOverflow(int $value = 1)                                           Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMillenniumWithOverflow()                                                        Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMillenniaWithoutOverflow(int $value = 1)                                        Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumWithoutOverflow()                                                     Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaWithoutOverflow(int $value = 1)                                        Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumWithoutOverflow()                                                     Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniaWithNoOverflow(int $value = 1)                                         Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumWithNoOverflow()                                                      Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaWithNoOverflow(int $value = 1)                                         Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumWithNoOverflow()                                                      Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniaNoOverflow(int $value = 1)                                             Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumNoOverflow()                                                          Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaNoOverflow(int $value = 1)                                             Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumNoOverflow()                                                          Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturies(int $value = 1)                                                       Add centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addCentury()                                                                       Add one century to the instance (using date interval).
+ * @method        CarbonInterface  subCenturies(int $value = 1)                                                       Sub centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subCentury()                                                                       Sub one century to the instance (using date interval).
+ * @method        CarbonInterface  addCenturiesWithOverflow(int $value = 1)                                           Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addCenturyWithOverflow()                                                           Add one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subCenturiesWithOverflow(int $value = 1)                                           Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subCenturyWithOverflow()                                                           Sub one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addCenturiesWithoutOverflow(int $value = 1)                                        Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyWithoutOverflow()                                                        Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesWithoutOverflow(int $value = 1)                                        Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyWithoutOverflow()                                                        Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturiesWithNoOverflow(int $value = 1)                                         Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyWithNoOverflow()                                                         Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesWithNoOverflow(int $value = 1)                                         Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyWithNoOverflow()                                                         Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturiesNoOverflow(int $value = 1)                                             Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyNoOverflow()                                                             Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesNoOverflow(int $value = 1)                                             Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyNoOverflow()                                                             Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecades(int $value = 1)                                                         Add decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addDecade()                                                                        Add one decade to the instance (using date interval).
+ * @method        CarbonInterface  subDecades(int $value = 1)                                                         Sub decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subDecade()                                                                        Sub one decade to the instance (using date interval).
+ * @method        CarbonInterface  addDecadesWithOverflow(int $value = 1)                                             Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addDecadeWithOverflow()                                                            Add one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subDecadesWithOverflow(int $value = 1)                                             Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subDecadeWithOverflow()                                                            Sub one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addDecadesWithoutOverflow(int $value = 1)                                          Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeWithoutOverflow()                                                         Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesWithoutOverflow(int $value = 1)                                          Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeWithoutOverflow()                                                         Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadesWithNoOverflow(int $value = 1)                                           Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeWithNoOverflow()                                                          Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesWithNoOverflow(int $value = 1)                                           Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeWithNoOverflow()                                                          Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadesNoOverflow(int $value = 1)                                               Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeNoOverflow()                                                              Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesNoOverflow(int $value = 1)                                               Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeNoOverflow()                                                              Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarters(int $value = 1)                                                        Add quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addQuarter()                                                                       Add one quarter to the instance (using date interval).
+ * @method        CarbonInterface  subQuarters(int $value = 1)                                                        Sub quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subQuarter()                                                                       Sub one quarter to the instance (using date interval).
+ * @method        CarbonInterface  addQuartersWithOverflow(int $value = 1)                                            Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addQuarterWithOverflow()                                                           Add one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subQuartersWithOverflow(int $value = 1)                                            Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subQuarterWithOverflow()                                                           Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addQuartersWithoutOverflow(int $value = 1)                                         Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterWithoutOverflow()                                                        Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersWithoutOverflow(int $value = 1)                                         Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterWithoutOverflow()                                                        Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuartersWithNoOverflow(int $value = 1)                                          Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterWithNoOverflow()                                                         Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersWithNoOverflow(int $value = 1)                                          Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterWithNoOverflow()                                                         Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuartersNoOverflow(int $value = 1)                                              Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterNoOverflow()                                                             Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersNoOverflow(int $value = 1)                                              Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterNoOverflow()                                                             Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addWeeks(int $value = 1)                                                           Add weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addWeek()                                                                          Add one week to the instance (using date interval).
+ * @method        CarbonInterface  subWeeks(int $value = 1)                                                           Sub weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subWeek()                                                                          Sub one week to the instance (using date interval).
+ * @method        CarbonInterface  addWeekdays(int $value = 1)                                                        Add weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addWeekday()                                                                       Add one weekday to the instance (using date interval).
+ * @method        CarbonInterface  subWeekdays(int $value = 1)                                                        Sub weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subWeekday()                                                                       Sub one weekday to the instance (using date interval).
+ * @method        CarbonInterface  addRealMicros(int $value = 1)                                                      Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMicro()                                                                     Add one microsecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicros(int $value = 1)                                                      Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicro()                                                                     Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod     microsUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonInterface  addRealMicroseconds(int $value = 1)                                                Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMicrosecond()                                                               Add one microsecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicroseconds(int $value = 1)                                                Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicrosecond()                                                               Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod     microsecondsUntil($endDate = null, int $factor = 1)                                Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonInterface  addRealMillis(int $value = 1)                                                      Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMilli()                                                                     Add one millisecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillis(int $value = 1)                                                      Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMilli()                                                                     Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod     millisUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonInterface  addRealMilliseconds(int $value = 1)                                                Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMillisecond()                                                               Add one millisecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMilliseconds(int $value = 1)                                                Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillisecond()                                                               Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod     millisecondsUntil($endDate = null, int $factor = 1)                                Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonInterface  addRealSeconds(int $value = 1)                                                     Add seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealSecond()                                                                    Add one second to the instance (using timestamp).
+ * @method        CarbonInterface  subRealSeconds(int $value = 1)                                                     Sub seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealSecond()                                                                    Sub one second to the instance (using timestamp).
+ * @method        CarbonPeriod     secondsUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
+ * @method        CarbonInterface  addRealMinutes(int $value = 1)                                                     Add minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMinute()                                                                    Add one minute to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMinutes(int $value = 1)                                                     Sub minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMinute()                                                                    Sub one minute to the instance (using timestamp).
+ * @method        CarbonPeriod     minutesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
+ * @method        CarbonInterface  addRealHours(int $value = 1)                                                       Add hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealHour()                                                                      Add one hour to the instance (using timestamp).
+ * @method        CarbonInterface  subRealHours(int $value = 1)                                                       Sub hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealHour()                                                                      Sub one hour to the instance (using timestamp).
+ * @method        CarbonPeriod     hoursUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
+ * @method        CarbonInterface  addRealDays(int $value = 1)                                                        Add days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealDay()                                                                       Add one day to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDays(int $value = 1)                                                        Sub days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDay()                                                                       Sub one day to the instance (using timestamp).
+ * @method        CarbonPeriod     daysUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
+ * @method        CarbonInterface  addRealWeeks(int $value = 1)                                                       Add weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealWeek()                                                                      Add one week to the instance (using timestamp).
+ * @method        CarbonInterface  subRealWeeks(int $value = 1)                                                       Sub weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealWeek()                                                                      Sub one week to the instance (using timestamp).
+ * @method        CarbonPeriod     weeksUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
+ * @method        CarbonInterface  addRealMonths(int $value = 1)                                                      Add months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMonth()                                                                     Add one month to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMonths(int $value = 1)                                                      Sub months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMonth()                                                                     Sub one month to the instance (using timestamp).
+ * @method        CarbonPeriod     monthsUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
+ * @method        CarbonInterface  addRealQuarters(int $value = 1)                                                    Add quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealQuarter()                                                                   Add one quarter to the instance (using timestamp).
+ * @method        CarbonInterface  subRealQuarters(int $value = 1)                                                    Sub quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealQuarter()                                                                   Sub one quarter to the instance (using timestamp).
+ * @method        CarbonPeriod     quartersUntil($endDate = null, int $factor = 1)                                    Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
+ * @method        CarbonInterface  addRealYears(int $value = 1)                                                       Add years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealYear()                                                                      Add one year to the instance (using timestamp).
+ * @method        CarbonInterface  subRealYears(int $value = 1)                                                       Sub years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealYear()                                                                      Sub one year to the instance (using timestamp).
+ * @method        CarbonPeriod     yearsUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
+ * @method        CarbonInterface  addRealDecades(int $value = 1)                                                     Add decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealDecade()                                                                    Add one decade to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDecades(int $value = 1)                                                     Sub decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDecade()                                                                    Sub one decade to the instance (using timestamp).
+ * @method        CarbonPeriod     decadesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
+ * @method        CarbonInterface  addRealCenturies(int $value = 1)                                                   Add centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealCentury()                                                                   Add one century to the instance (using timestamp).
+ * @method        CarbonInterface  subRealCenturies(int $value = 1)                                                   Sub centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealCentury()                                                                   Sub one century to the instance (using timestamp).
+ * @method        CarbonPeriod     centuriesUntil($endDate = null, int $factor = 1)                                   Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
+ * @method        CarbonInterface  addRealMillennia(int $value = 1)                                                   Add millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMillennium()                                                                Add one millennium to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillennia(int $value = 1)                                                   Sub millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillennium()                                                                Sub one millennium to the instance (using timestamp).
+ * @method        CarbonPeriod     millenniaUntil($endDate = null, int $factor = 1)                                   Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
+ * @method        CarbonInterface  roundYear(float $precision = 1, string $function = "round")                        Round the current instance year with given precision using the given function.
+ * @method        CarbonInterface  roundYears(float $precision = 1, string $function = "round")                       Round the current instance year with given precision using the given function.
+ * @method        CarbonInterface  floorYear(float $precision = 1)                                                    Truncate the current instance year with given precision.
+ * @method        CarbonInterface  floorYears(float $precision = 1)                                                   Truncate the current instance year with given precision.
+ * @method        CarbonInterface  ceilYear(float $precision = 1)                                                     Ceil the current instance year with given precision.
+ * @method        CarbonInterface  ceilYears(float $precision = 1)                                                    Ceil the current instance year with given precision.
+ * @method        CarbonInterface  roundMonth(float $precision = 1, string $function = "round")                       Round the current instance month with given precision using the given function.
+ * @method        CarbonInterface  roundMonths(float $precision = 1, string $function = "round")                      Round the current instance month with given precision using the given function.
+ * @method        CarbonInterface  floorMonth(float $precision = 1)                                                   Truncate the current instance month with given precision.
+ * @method        CarbonInterface  floorMonths(float $precision = 1)                                                  Truncate the current instance month with given precision.
+ * @method        CarbonInterface  ceilMonth(float $precision = 1)                                                    Ceil the current instance month with given precision.
+ * @method        CarbonInterface  ceilMonths(float $precision = 1)                                                   Ceil the current instance month with given precision.
+ * @method        CarbonInterface  roundDay(float $precision = 1, string $function = "round")                         Round the current instance day with given precision using the given function.
+ * @method        CarbonInterface  roundDays(float $precision = 1, string $function = "round")                        Round the current instance day with given precision using the given function.
+ * @method        CarbonInterface  floorDay(float $precision = 1)                                                     Truncate the current instance day with given precision.
+ * @method        CarbonInterface  floorDays(float $precision = 1)                                                    Truncate the current instance day with given precision.
+ * @method        CarbonInterface  ceilDay(float $precision = 1)                                                      Ceil the current instance day with given precision.
+ * @method        CarbonInterface  ceilDays(float $precision = 1)                                                     Ceil the current instance day with given precision.
+ * @method        CarbonInterface  roundHour(float $precision = 1, string $function = "round")                        Round the current instance hour with given precision using the given function.
+ * @method        CarbonInterface  roundHours(float $precision = 1, string $function = "round")                       Round the current instance hour with given precision using the given function.
+ * @method        CarbonInterface  floorHour(float $precision = 1)                                                    Truncate the current instance hour with given precision.
+ * @method        CarbonInterface  floorHours(float $precision = 1)                                                   Truncate the current instance hour with given precision.
+ * @method        CarbonInterface  ceilHour(float $precision = 1)                                                     Ceil the current instance hour with given precision.
+ * @method        CarbonInterface  ceilHours(float $precision = 1)                                                    Ceil the current instance hour with given precision.
+ * @method        CarbonInterface  roundMinute(float $precision = 1, string $function = "round")                      Round the current instance minute with given precision using the given function.
+ * @method        CarbonInterface  roundMinutes(float $precision = 1, string $function = "round")                     Round the current instance minute with given precision using the given function.
+ * @method        CarbonInterface  floorMinute(float $precision = 1)                                                  Truncate the current instance minute with given precision.
+ * @method        CarbonInterface  floorMinutes(float $precision = 1)                                                 Truncate the current instance minute with given precision.
+ * @method        CarbonInterface  ceilMinute(float $precision = 1)                                                   Ceil the current instance minute with given precision.
+ * @method        CarbonInterface  ceilMinutes(float $precision = 1)                                                  Ceil the current instance minute with given precision.
+ * @method        CarbonInterface  roundSecond(float $precision = 1, string $function = "round")                      Round the current instance second with given precision using the given function.
+ * @method        CarbonInterface  roundSeconds(float $precision = 1, string $function = "round")                     Round the current instance second with given precision using the given function.
+ * @method        CarbonInterface  floorSecond(float $precision = 1)                                                  Truncate the current instance second with given precision.
+ * @method        CarbonInterface  floorSeconds(float $precision = 1)                                                 Truncate the current instance second with given precision.
+ * @method        CarbonInterface  ceilSecond(float $precision = 1)                                                   Ceil the current instance second with given precision.
+ * @method        CarbonInterface  ceilSeconds(float $precision = 1)                                                  Ceil the current instance second with given precision.
+ * @method        CarbonInterface  roundMillennium(float $precision = 1, string $function = "round")                  Round the current instance millennium with given precision using the given function.
+ * @method        CarbonInterface  roundMillennia(float $precision = 1, string $function = "round")                   Round the current instance millennium with given precision using the given function.
+ * @method        CarbonInterface  floorMillennium(float $precision = 1)                                              Truncate the current instance millennium with given precision.
+ * @method        CarbonInterface  floorMillennia(float $precision = 1)                                               Truncate the current instance millennium with given precision.
+ * @method        CarbonInterface  ceilMillennium(float $precision = 1)                                               Ceil the current instance millennium with given precision.
+ * @method        CarbonInterface  ceilMillennia(float $precision = 1)                                                Ceil the current instance millennium with given precision.
+ * @method        CarbonInterface  roundCentury(float $precision = 1, string $function = "round")                     Round the current instance century with given precision using the given function.
+ * @method        CarbonInterface  roundCenturies(float $precision = 1, string $function = "round")                   Round the current instance century with given precision using the given function.
+ * @method        CarbonInterface  floorCentury(float $precision = 1)                                                 Truncate the current instance century with given precision.
+ * @method        CarbonInterface  floorCenturies(float $precision = 1)                                               Truncate the current instance century with given precision.
+ * @method        CarbonInterface  ceilCentury(float $precision = 1)                                                  Ceil the current instance century with given precision.
+ * @method        CarbonInterface  ceilCenturies(float $precision = 1)                                                Ceil the current instance century with given precision.
+ * @method        CarbonInterface  roundDecade(float $precision = 1, string $function = "round")                      Round the current instance decade with given precision using the given function.
+ * @method        CarbonInterface  roundDecades(float $precision = 1, string $function = "round")                     Round the current instance decade with given precision using the given function.
+ * @method        CarbonInterface  floorDecade(float $precision = 1)                                                  Truncate the current instance decade with given precision.
+ * @method        CarbonInterface  floorDecades(float $precision = 1)                                                 Truncate the current instance decade with given precision.
+ * @method        CarbonInterface  ceilDecade(float $precision = 1)                                                   Ceil the current instance decade with given precision.
+ * @method        CarbonInterface  ceilDecades(float $precision = 1)                                                  Ceil the current instance decade with given precision.
+ * @method        CarbonInterface  roundQuarter(float $precision = 1, string $function = "round")                     Round the current instance quarter with given precision using the given function.
+ * @method        CarbonInterface  roundQuarters(float $precision = 1, string $function = "round")                    Round the current instance quarter with given precision using the given function.
+ * @method        CarbonInterface  floorQuarter(float $precision = 1)                                                 Truncate the current instance quarter with given precision.
+ * @method        CarbonInterface  floorQuarters(float $precision = 1)                                                Truncate the current instance quarter with given precision.
+ * @method        CarbonInterface  ceilQuarter(float $precision = 1)                                                  Ceil the current instance quarter with given precision.
+ * @method        CarbonInterface  ceilQuarters(float $precision = 1)                                                 Ceil the current instance quarter with given precision.
+ * @method        CarbonInterface  roundMillisecond(float $precision = 1, string $function = "round")                 Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonInterface  roundMilliseconds(float $precision = 1, string $function = "round")                Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonInterface  floorMillisecond(float $precision = 1)                                             Truncate the current instance millisecond with given precision.
+ * @method        CarbonInterface  floorMilliseconds(float $precision = 1)                                            Truncate the current instance millisecond with given precision.
+ * @method        CarbonInterface  ceilMillisecond(float $precision = 1)                                              Ceil the current instance millisecond with given precision.
+ * @method        CarbonInterface  ceilMilliseconds(float $precision = 1)                                             Ceil the current instance millisecond with given precision.
+ * @method        CarbonInterface  roundMicrosecond(float $precision = 1, string $function = "round")                 Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonInterface  roundMicroseconds(float $precision = 1, string $function = "round")                Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonInterface  floorMicrosecond(float $precision = 1)                                             Truncate the current instance microsecond with given precision.
+ * @method        CarbonInterface  floorMicroseconds(float $precision = 1)                                            Truncate the current instance microsecond with given precision.
+ * @method        CarbonInterface  ceilMicrosecond(float $precision = 1)                                              Ceil the current instance microsecond with given precision.
+ * @method        CarbonInterface  ceilMicroseconds(float $precision = 1)                                             Ceil the current instance microsecond with given precision.
+ * @method        string           shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)        Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)         Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)        Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)         Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)   Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)    Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)  Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ *
+ * </autodoc>
+ */
+interface CarbonInterface extends DateTimeInterface, JsonSerializable
+{
+    /**
+     * Diff wording options(expressed in octal).
+     */
+    public const NO_ZERO_DIFF = 01;
+    public const JUST_NOW = 02;
+    public const ONE_DAY_WORDS = 04;
+    public const TWO_DAY_WORDS = 010;
+    public const SEQUENTIAL_PARTS_ONLY = 020;
+    public const ROUND = 040;
+    public const FLOOR = 0100;
+    public const CEIL = 0200;
+
+    /**
+     * Diff syntax options.
+     */
+    public const DIFF_ABSOLUTE = 1; // backward compatibility with true
+    public const DIFF_RELATIVE_AUTO = 0; // backward compatibility with false
+    public const DIFF_RELATIVE_TO_NOW = 2;
+    public const DIFF_RELATIVE_TO_OTHER = 3;
+
+    /**
+     * Translate string options.
+     */
+    public const TRANSLATE_MONTHS = 1;
+    public const TRANSLATE_DAYS = 2;
+    public const TRANSLATE_UNITS = 4;
+    public const TRANSLATE_MERIDIEM = 8;
+    public const TRANSLATE_DIFF = 0x10;
+    public const TRANSLATE_ALL = self::TRANSLATE_MONTHS | self::TRANSLATE_DAYS | self::TRANSLATE_UNITS | self::TRANSLATE_MERIDIEM | self::TRANSLATE_DIFF;
+
+    /**
+     * The day constants.
+     */
+    public const SUNDAY = 0;
+    public const MONDAY = 1;
+    public const TUESDAY = 2;
+    public const WEDNESDAY = 3;
+    public const THURSDAY = 4;
+    public const FRIDAY = 5;
+    public const SATURDAY = 6;
+
+    /**
+     * The month constants.
+     * These aren't used by Carbon itself but exist for
+     * convenience sake alone.
+     */
+    public const JANUARY = 1;
+    public const FEBRUARY = 2;
+    public const MARCH = 3;
+    public const APRIL = 4;
+    public const MAY = 5;
+    public const JUNE = 6;
+    public const JULY = 7;
+    public const AUGUST = 8;
+    public const SEPTEMBER = 9;
+    public const OCTOBER = 10;
+    public const NOVEMBER = 11;
+    public const DECEMBER = 12;
+
+    /**
+     * Number of X in Y.
+     */
+    public const YEARS_PER_MILLENNIUM = 1000;
+    public const YEARS_PER_CENTURY = 100;
+    public const YEARS_PER_DECADE = 10;
+    public const MONTHS_PER_YEAR = 12;
+    public const MONTHS_PER_QUARTER = 3;
+    public const WEEKS_PER_YEAR = 52;
+    public const WEEKS_PER_MONTH = 4;
+    public const DAYS_PER_YEAR = 365;
+    public const DAYS_PER_WEEK = 7;
+    public const HOURS_PER_DAY = 24;
+    public const MINUTES_PER_HOUR = 60;
+    public const SECONDS_PER_MINUTE = 60;
+    public const MILLISECONDS_PER_SECOND = 1000;
+    public const MICROSECONDS_PER_MILLISECOND = 1000;
+    public const MICROSECONDS_PER_SECOND = 1000000;
+
+    /**
+     * Special settings to get the start of week from current locale culture.
+     */
+    public const WEEK_DAY_AUTO = 'auto';
+
+    /**
+     * RFC7231 DateTime format.
+     *
+     * @var string
+     */
+    public const RFC7231_FORMAT = 'D, d M Y H:i:s \G\M\T';
+
+    /**
+     * Default format to use for __toString method when type juggling occurs.
+     *
+     * @var string
+     */
+    public const DEFAULT_TO_STRING_FORMAT = 'Y-m-d H:i:s';
+
+    /**
+     * Format for converting mocked time, includes microseconds.
+     *
+     * @var string
+     */
+    public const MOCK_DATETIME_FORMAT = 'Y-m-d H:i:s.u';
+
+    /**
+     * Pattern detection for ->isoFormat and ::createFromIsoFormat.
+     *
+     * @var string
+     */
+    public const ISO_FORMAT_REGEXP = '(O[YMDHhms]|[Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY?|g{1,5}|G{1,5}|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?)';
+
+    // <methods>
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @throws UnknownMethodException|BadMethodCallException|ReflectionException|Throwable
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters);
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @throws BadMethodCallException
+     *
+     * @return mixed
+     */
+    public static function __callStatic($method, $parameters);
+
+    /**
+     * Update constructedObjectId on cloned.
+     */
+    public function __clone();
+
+    /**
+     * Create a new Carbon instance.
+     *
+     * Please see the testing aids section (specifically static::setTestNow())
+     * for more on the possibility of this constructor returning a test instance.
+     *
+     * @param DateTimeInterface|string|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     */
+    public function __construct($time = null, $tz = null);
+
+    /**
+     * Show truthy properties on var_dump().
+     *
+     * @return array
+     */
+    public function __debugInfo();
+
+    /**
+     * Get a part of the Carbon object
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return string|int|bool|DateTimeZone|null
+     */
+    public function __get($name);
+
+    /**
+     * Check if an attribute exists on the object
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function __isset($name);
+
+    /**
+     * Set a part of the Carbon object
+     *
+     * @param string                  $name
+     * @param string|int|DateTimeZone $value
+     *
+     * @throws UnknownSetterException|ReflectionException
+     *
+     * @return void
+     */
+    public function __set($name, $value);
+
+    /**
+     * The __set_state handler.
+     *
+     * @param string|array $dump
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public static function __set_state($dump);
+
+    /**
+     * Returns the list of properties to dump on serialize() called on.
+     *
+     * @return array
+     */
+    public function __sleep();
+
+    /**
+     * Format the instance as a string using the set format
+     *
+     * @example
+     * ```
+     * echo Carbon::now(); // Carbon instances can be casted to string
+     * ```
+     *
+     * @return string
+     */
+    public function __toString();
+
+    /**
+     * Add given units or interval to the current instance.
+     *
+     * @example $date->add('hour', 3)
+     * @example $date->add(15, 'days')
+     * @example $date->add(CarbonInterval::days(4))
+     *
+     * @param string|DateInterval|Closure|CarbonConverterInterface $unit
+     * @param int                                                  $value
+     * @param bool|null                                            $overflow
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function add($unit, $value = 1, $overflow = null);
+
+    /**
+     * Add seconds to the instance using timestamp. Positive $value travels
+     * forward while negative $value travels into the past.
+     *
+     * @param string $unit
+     * @param int    $value
+     *
+     * @return static
+     */
+    public function addRealUnit($unit, $value = 1);
+
+    /**
+     * Add given units to the current instance.
+     *
+     * @param string    $unit
+     * @param int       $value
+     * @param bool|null $overflow
+     *
+     * @return static
+     */
+    public function addUnit($unit, $value = 1, $overflow = null);
+
+    /**
+     * Add any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        amount to add to the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function addUnitNoOverflow($valueUnit, $value, $overflowUnit);
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given to now
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single part)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function ago($syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Modify the current instance to the average of a given instance (default now) and the current instance
+     * (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date
+     *
+     * @return static
+     */
+    public function average($date = null);
+
+    /**
+     * Clone the current instance if it's mutable.
+     *
+     * This method is convenient to ensure you don't mutate the initial object
+     * but avoid to make a useless copy of it if it's already immutable.
+     *
+     * @return static
+     */
+    public function avoidMutation();
+
+    /**
+     * Determines if the instance is between two others.
+     *
+     * The third argument allow you to specify if bounds are included or not (true by default)
+     * but for when you including/excluding bounds may produce different results in your application,
+     * we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->between('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->between('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01', false); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     * @param bool                                    $equal Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function between($date1, $date2, $equal = true): bool;
+
+    /**
+     * Determines if the instance is between two others, bounds excluded.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-07-25', '2018-08-01'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return bool
+     */
+    public function betweenExcluded($date1, $date2): bool;
+
+    /**
+     * Determines if the instance is between two others, bounds included.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-07-25', '2018-08-01'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return bool
+     */
+    public function betweenIncluded($date1, $date2): bool;
+
+    /**
+     * Returns either day of week + time (e.g. "Last Friday at 3:30 PM") if reference time is within 7 days,
+     * or a calendar date (e.g. "10/29/2017") otherwise.
+     *
+     * Language, date and time formats will change according to the current locale.
+     *
+     * @param Carbon|\DateTimeInterface|string|null $referenceTime
+     * @param array                                 $formats
+     *
+     * @return string
+     */
+    public function calendar($referenceTime = null, array $formats = []);
+
+    /**
+     * Checks if the (date)time string is in a given format and valid to create a
+     * new instance.
+     *
+     * @example
+     * ```
+     * Carbon::canBeCreatedFromFormat('11:12:45', 'h:i:s'); // true
+     * Carbon::canBeCreatedFromFormat('13:12:45', 'h:i:s'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function canBeCreatedFromFormat($date, $format);
+
+    /**
+     * Return the Carbon instance passed through, a now instance in the same timezone
+     * if null given or parse the input if string given.
+     *
+     * @param Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|DateTimeInterface|string|null $date
+     *
+     * @return static
+     */
+    public function carbonize($date = null);
+
+    /**
+     * Cast the current instance into the given class.
+     *
+     * @param string $className The $className::instance() method will be called to cast the current object.
+     *
+     * @return DateTimeInterface
+     */
+    public function cast(string $className);
+
+    /**
+     * Ceil the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return CarbonInterface
+     */
+    public function ceil($precision = 1);
+
+    /**
+     * Ceil the current instance at the given unit with given precision if specified.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     *
+     * @return CarbonInterface
+     */
+    public function ceilUnit($unit, $precision = 1);
+
+    /**
+     * Ceil the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function ceilWeek($weekStartsAt = null);
+
+    /**
+     * Similar to native modify() method of DateTime but can handle more grammars.
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->change('next 2pm');
+     * ```
+     *
+     * @link https://php.net/manual/en/datetime.modify.php
+     *
+     * @param string $modifier
+     *
+     * @return static
+     */
+    public function change($modifier);
+
+    /**
+     * Cleanup properties attached to the public scope of DateTime when a dump of the date is requested.
+     * foreach ($date as $_) {}
+     * serializer($date)
+     * var_export($date)
+     * get_object_vars($date)
+     */
+    public function cleanupDumpProperties();
+
+    /**
+     * @alias copy
+     *
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function clone();
+
+    /**
+     * Get the closest date from the instance (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return static
+     */
+    public function closest($date1, $date2);
+
+    /**
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function copy();
+
+    /**
+     * Create a new Carbon instance from a specific date and time.
+     *
+     * If any of $year, $month or $day are set to null their now() values will
+     * be used.
+     *
+     * If $hour is null it will be set to its now() value and the default
+     * values for $minute and $second will be their now() values.
+     *
+     * If $hour is not null then the default values for $minute and $second
+     * will be 0.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $tz = null);
+
+    /**
+     * Create a Carbon instance from just a date. The time portion is set to now.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromDate($year = null, $month = null, $day = null, $tz = null);
+
+    /**
+     * Create a Carbon instance from a specific format.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    #[ReturnTypeWillChange]
+    public static function createFromFormat($format, $time, $tz = null);
+
+    /**
+     * Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
+     *
+     * @param string                                             $format     Datetime format
+     * @param string                                             $time
+     * @param DateTimeZone|string|false|null                     $tz         optional timezone
+     * @param string|null                                        $locale     locale to be used for LTS, LT, LL, LLL, etc. macro-formats (en by fault, unneeded if no such macro-format in use)
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator optional custom translator to use for macro-formats
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromIsoFormat($format, $time, $tz = null, $locale = 'en', $translator = null);
+
+    /**
+     * Create a Carbon instance from a specific format and a string in a given language.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $locale
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromLocaleFormat($format, $locale, $time, $tz = null);
+
+    /**
+     * Create a Carbon instance from a specific ISO format and a string in a given language.
+     *
+     * @param string                         $format Datetime ISO format
+     * @param string                         $locale
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromLocaleIsoFormat($format, $locale, $time, $tz = null);
+
+    /**
+     * Create a Carbon instance from just a time. The date portion is set to today.
+     *
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromTime($hour = 0, $minute = 0, $second = 0, $tz = null);
+
+    /**
+     * Create a Carbon instance from a time string. The date portion is set to today.
+     *
+     * @param string                   $time
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromTimeString($time, $tz = null);
+
+    /**
+     * Create a Carbon instance from a timestamp and set the timezone (use default one if not specified).
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string          $timestamp
+     * @param \DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function createFromTimestamp($timestamp, $tz = null);
+
+    /**
+     * Create a Carbon instance from a timestamp in milliseconds.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string          $timestamp
+     * @param \DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function createFromTimestampMs($timestamp, $tz = null);
+
+    /**
+     * Create a Carbon instance from a timestamp in milliseconds.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $timestamp
+     *
+     * @return static
+     */
+    public static function createFromTimestampMsUTC($timestamp);
+
+    /**
+     * Create a Carbon instance from an timestamp keeping the timezone to UTC.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $timestamp
+     *
+     * @return static
+     */
+    public static function createFromTimestampUTC($timestamp);
+
+    /**
+     * Create a Carbon instance from just a date. The time portion is set to midnight.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createMidnightDate($year = null, $month = null, $day = null, $tz = null);
+
+    /**
+     * Create a new safe Carbon instance from a specific date and time.
+     *
+     * If any of $year, $month or $day are set to null their now() values will
+     * be used.
+     *
+     * If $hour is null it will be set to its now() value and the default
+     * values for $minute and $second will be their now() values.
+     *
+     * If $hour is not null then the default values for $minute and $second
+     * will be 0.
+     *
+     * If one of the set values is not valid, an InvalidDateException
+     * will be thrown.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidDateException
+     *
+     * @return static|false
+     */
+    public static function createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $tz = null);
+
+    /**
+     * Create a new Carbon instance from a specific date and time using strict validation.
+     *
+     * @see create()
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $tz = null);
+
+    /**
+     * Get/set the day of year.
+     *
+     * @param int|null $value new value for day of year if using as setter.
+     *
+     * @return static|int
+     */
+    public function dayOfYear($value = null);
+
+    /**
+     * Get the difference as a CarbonInterval instance.
+     * Return absolute interval (always positive) unless you pass false to the second argument.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return CarbonInterval
+     */
+    public function diffAsCarbonInterval($date = null, $absolute = true);
+
+    /**
+     * Get the difference by the given interval using a filter closure.
+     *
+     * @param CarbonInterval                                         $ci       An interval to traverse by
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffFiltered(CarbonInterval $ci, Closure $callback, $date = null, $absolute = true);
+
+    /**
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @example
+     * ```
+     * echo Carbon::tomorrow()->diffForHumans() . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(['parts' => 2]) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(['parts' => 3, 'join' => true]) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday()) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday(), ['short' => true]) . "\n";
+     * ```
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function diffForHumans($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Get the difference in days rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInDays($date = null, $absolute = true);
+
+    /**
+     * Get the difference in days using a filter closure rounded down.
+     *
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInDaysFiltered(Closure $callback, $date = null, $absolute = true);
+
+    /**
+     * Get the difference in hours rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInHours($date = null, $absolute = true);
+
+    /**
+     * Get the difference in hours using a filter closure rounded down.
+     *
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInHoursFiltered(Closure $callback, $date = null, $absolute = true);
+
+    /**
+     * Get the difference in microseconds.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMicroseconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in milliseconds rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMilliseconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in minutes rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMinutes($date = null, $absolute = true);
+
+    /**
+     * Get the difference in months rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMonths($date = null, $absolute = true);
+
+    /**
+     * Get the difference in quarters rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInQuarters($date = null, $absolute = true);
+
+    /**
+     * Get the difference in hours rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealHours($date = null, $absolute = true);
+
+    /**
+     * Get the difference in microseconds using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMicroseconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in milliseconds rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMilliseconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in minutes rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMinutes($date = null, $absolute = true);
+
+    /**
+     * Get the difference in seconds using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealSeconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in seconds rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInSeconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in weekdays rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeekdays($date = null, $absolute = true);
+
+    /**
+     * Get the difference in weekend days using a filter rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeekendDays($date = null, $absolute = true);
+
+    /**
+     * Get the difference in weeks rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeeks($date = null, $absolute = true);
+
+    /**
+     * Get the difference in years
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInYears($date = null, $absolute = true);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOption
+     */
+    public static function disableHumanDiffOption($humanDiffOption);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOption
+     */
+    public static function enableHumanDiffOption($humanDiffOption);
+
+    /**
+     * Modify to end of current given unit.
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOf('month')
+     *   ->endOf('week', Carbon::FRIDAY);
+     * ```
+     *
+     * @param string            $unit
+     * @param array<int, mixed> $params
+     *
+     * @return static
+     */
+    public function endOf($unit, ...$params);
+
+    /**
+     * Resets the date to end of the century and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfCentury();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfCentury();
+
+    /**
+     * Resets the time to 23:59:59.999999 end of day
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfDay();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfDay();
+
+    /**
+     * Resets the date to end of the decade and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfDecade();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfDecade();
+
+    /**
+     * Modify to end of current hour, minutes and seconds become 59
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfHour();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfHour();
+
+    /**
+     * Resets the date to end of the millennium and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMillennium();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMillennium();
+
+    /**
+     * Modify to end of current minute, seconds become 59
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMinute();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMinute();
+
+    /**
+     * Resets the date to end of the month and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMonth();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMonth();
+
+    /**
+     * Resets the date to end of the quarter and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfQuarter();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfQuarter();
+
+    /**
+     * Modify to end of current second, microseconds become 999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->endOfSecond()
+     *   ->format('H:i:s.u');
+     * ```
+     *
+     * @return static
+     */
+    public function endOfSecond();
+
+    /**
+     * Resets the date to end of week (defined in $weekEndsAt) and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->endOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek(Carbon::SATURDAY) . "\n";
+     * ```
+     *
+     * @param int $weekEndsAt optional start allow you to specify the day of week to use to end the week
+     *
+     * @return static
+     */
+    public function endOfWeek($weekEndsAt = null);
+
+    /**
+     * Resets the date to end of the year and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfYear();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfYear();
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->eq(Carbon::parse('2018-07-25 12:45:16')); // true
+     * Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see equalTo()
+     *
+     * @return bool
+     */
+    public function eq($date): bool;
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo(Carbon::parse('2018-07-25 12:45:16')); // true
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function equalTo($date): bool;
+
+    /**
+     * Set the current locale to the given, execute the passed function, reset the locale to previous one,
+     * then return the result of the closure (or null if the closure was void).
+     *
+     * @param string   $locale locale ex. en
+     * @param callable $func
+     *
+     * @return mixed
+     */
+    public static function executeWithLocale($locale, $func);
+
+    /**
+     * Get the farthest date from the instance (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return static
+     */
+    public function farthest($date1, $date2);
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current month. If no dayOfWeek is provided, modify to the
+     * first day of the current month.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek
+     *
+     * @return static
+     */
+    public function firstOfMonth($dayOfWeek = null);
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current quarter. If no dayOfWeek is provided, modify to the
+     * first day of the current quarter.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function firstOfQuarter($dayOfWeek = null);
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current year. If no dayOfWeek is provided, modify to the
+     * first day of the current year.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function firstOfYear($dayOfWeek = null);
+
+    /**
+     * Get the difference in days as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInDays($date = null, $absolute = true);
+
+    /**
+     * Get the difference in hours as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInHours($date = null, $absolute = true);
+
+    /**
+     * Get the difference in minutes as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInMinutes($date = null, $absolute = true);
+
+    /**
+     * Get the difference in months as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInMonths($date = null, $absolute = true);
+
+    /**
+     * Get the difference in days as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealDays($date = null, $absolute = true);
+
+    /**
+     * Get the difference in hours as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealHours($date = null, $absolute = true);
+
+    /**
+     * Get the difference in minutes as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealMinutes($date = null, $absolute = true);
+
+    /**
+     * Get the difference in months as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealMonths($date = null, $absolute = true);
+
+    /**
+     * Get the difference in seconds as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealSeconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in weeks as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealWeeks($date = null, $absolute = true);
+
+    /**
+     * Get the difference in year as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealYears($date = null, $absolute = true);
+
+    /**
+     * Get the difference in seconds as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInSeconds($date = null, $absolute = true);
+
+    /**
+     * Get the difference in weeks as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInWeeks($date = null, $absolute = true);
+
+    /**
+     * Get the difference in year as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInYears($date = null, $absolute = true);
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return CarbonInterface
+     */
+    public function floor($precision = 1);
+
+    /**
+     * Truncate the current instance at the given unit with given precision if specified.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     *
+     * @return CarbonInterface
+     */
+    public function floorUnit($unit, $precision = 1);
+
+    /**
+     * Truncate the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function floorWeek($weekStartsAt = null);
+
+    /**
+     * Format the instance with the current locale.  You can set the current
+     * locale using setlocale() https://php.net/setlocale.
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function formatLocalized($format);
+
+    /**
+     * @alias diffForHumans
+     *
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function from($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Get the difference in a human readable format in the current locale from current
+     * instance to now.
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function fromNow($syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Create an instance from a serialized string.
+     *
+     * @param string $value
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function fromSerialized($value);
+
+    /**
+     * Register a custom macro.
+     *
+     * @param object|callable $macro
+     * @param int             $priority marco with higher priority is tried first
+     *
+     * @return void
+     */
+    public static function genericMacro($macro, $priority = 0);
+
+    /**
+     * Get a part of the Carbon object
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return string|int|bool|DateTimeZone|null
+     */
+    public function get($name);
+
+    /**
+     * Returns the alternative number for a given date property if available in the current locale.
+     *
+     * @param string $key date property
+     *
+     * @return string
+     */
+    public function getAltNumber(string $key): string;
+
+    /**
+     * Returns the list of internally available locales and already loaded custom locales.
+     * (It will ignore custom translator dynamic loading.)
+     *
+     * @return array
+     */
+    public static function getAvailableLocales();
+
+    /**
+     * Returns list of Language object for each available locale. This object allow you to get the ISO name, native
+     * name, region and variant of the locale.
+     *
+     * @return Language[]
+     */
+    public static function getAvailableLocalesInfo();
+
+    /**
+     * Returns list of calendar formats for ISO formatting.
+     *
+     * @param string|null $locale current locale used if null
+     *
+     * @return array
+     */
+    public function getCalendarFormats($locale = null);
+
+    /**
+     * Get the days of the week
+     *
+     * @return array
+     */
+    public static function getDays();
+
+    /**
+     * Get the fallback locale.
+     *
+     * @see https://symfony.com/doc/current/components/translation.html#fallback-locales
+     *
+     * @return string|null
+     */
+    public static function getFallbackLocale();
+
+    /**
+     * List of replacements from date() format to isoFormat().
+     *
+     * @return array
+     */
+    public static function getFormatsToIsoReplacements();
+
+    /**
+     * Return default humanDiff() options (merged flags as integer).
+     *
+     * @return int
+     */
+    public static function getHumanDiffOptions();
+
+    /**
+     * Returns list of locale formats for ISO formatting.
+     *
+     * @param string|null $locale current locale used if null
+     *
+     * @return array
+     */
+    public function getIsoFormats($locale = null);
+
+    /**
+     * Returns list of locale units for ISO formatting.
+     *
+     * @return array
+     */
+    public static function getIsoUnits();
+
+    /**
+     * {@inheritdoc}
+     */
+    #[ReturnTypeWillChange]
+    public static function getLastErrors();
+
+    /**
+     * Get the raw callable macro registered globally or locally for a given name.
+     *
+     * @param string $name
+     *
+     * @return callable|null
+     */
+    public function getLocalMacro($name);
+
+    /**
+     * Get the translator of the current instance or the default if none set.
+     *
+     * @return \Symfony\Component\Translation\TranslatorInterface
+     */
+    public function getLocalTranslator();
+
+    /**
+     * Get the current translator locale.
+     *
+     * @return string
+     */
+    public static function getLocale();
+
+    /**
+     * Get the raw callable macro registered globally for a given name.
+     *
+     * @param string $name
+     *
+     * @return callable|null
+     */
+    public static function getMacro($name);
+
+    /**
+     * get midday/noon hour
+     *
+     * @return int
+     */
+    public static function getMidDayAt();
+
+    /**
+     * Returns the offset hour and minute formatted with +/- and a given separator (":" by default).
+     * For example, if the time zone is 9 hours 30 minutes, you'll get "+09:30", with "@@" as first
+     * argument, "+09@@30", with "" as first argument, "+0930". Negative offset will return something
+     * like "-12:00".
+     *
+     * @param string $separator string to place between hours and minutes (":" by default)
+     *
+     * @return string
+     */
+    public function getOffsetString($separator = ':');
+
+    /**
+     * Returns a unit of the instance padded with 0 by default or any other string if specified.
+     *
+     * @param string $unit      Carbon unit name
+     * @param int    $length    Length of the output (2 by default)
+     * @param string $padString String to use for padding ("0" by default)
+     * @param int    $padType   Side(s) to pad (STR_PAD_LEFT by default)
+     *
+     * @return string
+     */
+    public function getPaddedUnit($unit, $length = 2, $padString = '0', $padType = 0);
+
+    /**
+     * Returns a timestamp rounded with the given precision (6 by default).
+     *
+     * @example getPreciseTimestamp()   1532087464437474 (microsecond maximum precision)
+     * @example getPreciseTimestamp(6)  1532087464437474
+     * @example getPreciseTimestamp(5)  153208746443747  (1/100000 second precision)
+     * @example getPreciseTimestamp(4)  15320874644375   (1/10000 second precision)
+     * @example getPreciseTimestamp(3)  1532087464437    (millisecond precision)
+     * @example getPreciseTimestamp(2)  153208746444     (1/100 second precision)
+     * @example getPreciseTimestamp(1)  15320874644      (1/10 second precision)
+     * @example getPreciseTimestamp(0)  1532087464       (second precision)
+     * @example getPreciseTimestamp(-1) 153208746        (10 second precision)
+     * @example getPreciseTimestamp(-2) 15320875         (100 second precision)
+     *
+     * @param int $precision
+     *
+     * @return float
+     */
+    public function getPreciseTimestamp($precision = 6);
+
+    /**
+     * Returns current local settings.
+     *
+     * @return array
+     */
+    public function getSettings();
+
+    /**
+     * Get the Carbon instance (real or mock) to be returned when a "now"
+     * instance is created.
+     *
+     * @return Closure|static the current instance used for testing
+     */
+    public static function getTestNow();
+
+    /**
+     * Return a format from H:i to H:i:s.u according to given unit precision.
+     *
+     * @param string $unitPrecision "minute", "second", "millisecond" or "microsecond"
+     *
+     * @return string
+     */
+    public static function getTimeFormatByPrecision($unitPrecision);
+
+    /**
+     * Get the translation of the current week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context      whole format string
+     * @param string      $keySuffix    "", "_short" or "_min"
+     * @param string|null $defaultValue default value if translation missing
+     *
+     * @return string
+     */
+    public function getTranslatedDayName($context = null, $keySuffix = '', $defaultValue = null);
+
+    /**
+     * Get the translation of the current abbreviated week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedMinDayName($context = null);
+
+    /**
+     * Get the translation of the current month day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context      whole format string
+     * @param string      $keySuffix    "" or "_short"
+     * @param string|null $defaultValue default value if translation missing
+     *
+     * @return string
+     */
+    public function getTranslatedMonthName($context = null, $keySuffix = '', $defaultValue = null);
+
+    /**
+     * Get the translation of the current short week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedShortDayName($context = null);
+
+    /**
+     * Get the translation of the current short month day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedShortMonthName($context = null);
+
+    /**
+     * Returns raw translation message for a given key.
+     *
+     * @param string                                             $key        key to find
+     * @param string|null                                        $locale     current locale used if null
+     * @param string|null                                        $default    default value if translation returns the key
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator an optional translator to use
+     *
+     * @return string
+     */
+    public function getTranslationMessage(string $key, ?string $locale = null, ?string $default = null, $translator = null);
+
+    /**
+     * Returns raw translation message for a given key.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator the translator to use
+     * @param string                                             $key        key to find
+     * @param string|null                                        $locale     current locale used if null
+     * @param string|null                                        $default    default value if translation returns the key
+     *
+     * @return string
+     */
+    public static function getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null);
+
+    /**
+     * Get the default translator instance in use.
+     *
+     * @return \Symfony\Component\Translation\TranslatorInterface
+     */
+    public static function getTranslator();
+
+    /**
+     * Get the last day of week
+     *
+     * @return int
+     */
+    public static function getWeekEndsAt();
+
+    /**
+     * Get the first day of week
+     *
+     * @return int
+     */
+    public static function getWeekStartsAt();
+
+    /**
+     * Get weekend days
+     *
+     * @return array
+     */
+    public static function getWeekendDays();
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function greaterThan($date): bool;
+
+    /**
+     * Determines if the instance is greater (after) than or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function greaterThanOrEqualTo($date): bool;
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThan()
+     *
+     * @return bool
+     */
+    public function gt($date): bool;
+
+    /**
+     * Determines if the instance is greater (after) than or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function gte($date): bool;
+
+    /**
+     * Checks if the (date)time string is in a given format.
+     *
+     * @example
+     * ```
+     * Carbon::hasFormat('11:12:45', 'h:i:s'); // true
+     * Carbon::hasFormat('13:12:45', 'h:i:s'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function hasFormat($date, $format);
+
+    /**
+     * Checks if the (date)time string is in a given format.
+     *
+     * @example
+     * ```
+     * Carbon::hasFormatWithModifiers('31/08/2015', 'd#m#Y'); // true
+     * Carbon::hasFormatWithModifiers('31/08/2015', 'm#d#Y'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function hasFormatWithModifiers($date, $format): bool;
+
+    /**
+     * Checks if macro is registered globally or locally.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function hasLocalMacro($name);
+
+    /**
+     * Return true if the current instance has its own translator.
+     *
+     * @return bool
+     */
+    public function hasLocalTranslator();
+
+    /**
+     * Checks if macro is registered globally.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public static function hasMacro($name);
+
+    /**
+     * Determine if a time string will produce a relative date.
+     *
+     * @param string $time
+     *
+     * @return bool true if time match a relative date, false if absolute or invalid time string
+     */
+    public static function hasRelativeKeywords($time);
+
+    /**
+     * Determine if there is a valid test instance set. A valid test instance
+     * is anything that is not null.
+     *
+     * @return bool true if there is a test instance, otherwise false
+     */
+    public static function hasTestNow();
+
+    /**
+     * Create a Carbon instance from a DateTime one.
+     *
+     * @param DateTimeInterface $date
+     *
+     * @return static
+     */
+    public static function instance($date);
+
+    /**
+     * Returns true if the current date matches the given string.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2018')); // false
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('06-02')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06-02')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('Sunday')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('June')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:45')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:00')); // false
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12h')); // true
+     * var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3pm')); // true
+     * var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3am')); // false
+     * ```
+     *
+     * @param string $tester day name, month name, hour, date, etc. as string
+     *
+     * @return bool
+     */
+    public function is(string $tester);
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThan()
+     *
+     * @return bool
+     */
+    public function isAfter($date): bool;
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThan()
+     *
+     * @return bool
+     */
+    public function isBefore($date): bool;
+
+    /**
+     * Determines if the instance is between two others
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->isBetween('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01', false); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     * @param bool                                    $equal Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function isBetween($date1, $date2, $equal = true): bool;
+
+    /**
+     * Check if its the birthday. Compares the date/month values of the two dates.
+     *
+     * @example
+     * ```
+     * Carbon::now()->subYears(5)->isBirthday(); // true
+     * Carbon::now()->subYears(5)->subDay()->isBirthday(); // false
+     * Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-05')); // true
+     * Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-06')); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date The instance to compare with or null to use current day.
+     *
+     * @return bool
+     */
+    public function isBirthday($date = null);
+
+    /**
+     * Determines if the instance is in the current unit given.
+     *
+     * @example
+     * ```
+     * Carbon::now()->isCurrentUnit('hour'); // true
+     * Carbon::now()->subHours(2)->isCurrentUnit('hour'); // false
+     * ```
+     *
+     * @param string $unit The unit to test.
+     *
+     * @throws BadMethodCallException
+     *
+     * @return bool
+     */
+    public function isCurrentUnit($unit);
+
+    /**
+     * Checks if this day is a specific day of the week.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::WEDNESDAY); // true
+     * Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::FRIDAY); // false
+     * Carbon::parse('2019-07-17')->isDayOfWeek('Wednesday'); // true
+     * Carbon::parse('2019-07-17')->isDayOfWeek('Friday'); // false
+     * ```
+     *
+     * @param int $dayOfWeek
+     *
+     * @return bool
+     */
+    public function isDayOfWeek($dayOfWeek);
+
+    /**
+     * Check if the instance is end of day.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:58.999999')->isEndOfDay(); // false
+     * Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(true); // true
+     * Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(true); // false
+     * Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(true); // false
+     * ```
+     *
+     * @param bool $checkMicroseconds check time at microseconds precision
+     *
+     * @return bool
+     */
+    public function isEndOfDay($checkMicroseconds = false);
+
+    /**
+     * Returns true if the date was created using CarbonImmutable::endOfTime()
+     *
+     * @return bool
+     */
+    public function isEndOfTime(): bool;
+
+    /**
+     * Determines if the instance is in the future, ie. greater (after) than now.
+     *
+     * @example
+     * ```
+     * Carbon::now()->addHours(5)->isFuture(); // true
+     * Carbon::now()->subHours(5)->isFuture(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isFuture();
+
+    /**
+     * Returns true if the current class/instance is immutable.
+     *
+     * @return bool
+     */
+    public static function isImmutable();
+
+    /**
+     * Check if today is the last day of the Month
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28')->isLastOfMonth(); // true
+     * Carbon::parse('2019-03-28')->isLastOfMonth(); // false
+     * Carbon::parse('2019-03-30')->isLastOfMonth(); // false
+     * Carbon::parse('2019-03-31')->isLastOfMonth(); // true
+     * Carbon::parse('2019-04-30')->isLastOfMonth(); // true
+     * ```
+     *
+     * @return bool
+     */
+    public function isLastOfMonth();
+
+    /**
+     * Determines if the instance is a leap year.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2020-01-01')->isLeapYear(); // true
+     * Carbon::parse('2019-01-01')->isLeapYear(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isLeapYear();
+
+    /**
+     * Determines if the instance is a long year
+     *
+     * @example
+     * ```
+     * Carbon::parse('2015-01-01')->isLongYear(); // true
+     * Carbon::parse('2016-01-01')->isLongYear(); // false
+     * ```
+     *
+     * @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
+     *
+     * @return bool
+     */
+    public function isLongYear();
+
+    /**
+     * Check if the instance is midday.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 11:59:59.999999')->isMidday(); // false
+     * Carbon::parse('2019-02-28 12:00:00')->isMidday(); // true
+     * Carbon::parse('2019-02-28 12:00:00.999999')->isMidday(); // true
+     * Carbon::parse('2019-02-28 12:00:01')->isMidday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isMidday();
+
+    /**
+     * Check if the instance is start of day / midnight.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 00:00:00')->isMidnight(); // true
+     * Carbon::parse('2019-02-28 00:00:00.999999')->isMidnight(); // true
+     * Carbon::parse('2019-02-28 00:00:01')->isMidnight(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isMidnight();
+
+    /**
+     * Returns true if a property can be changed via setter.
+     *
+     * @param string $unit
+     *
+     * @return bool
+     */
+    public static function isModifiableUnit($unit);
+
+    /**
+     * Returns true if the current class/instance is mutable.
+     *
+     * @return bool
+     */
+    public static function isMutable();
+
+    /**
+     * Determines if the instance is in the past, ie. less (before) than now.
+     *
+     * @example
+     * ```
+     * Carbon::now()->subHours(5)->isPast(); // true
+     * Carbon::now()->addHours(5)->isPast(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isPast();
+
+    /**
+     * Compares the formatted values of the two dates.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-12-13')); // true
+     * Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-06-14')); // false
+     * ```
+     *
+     * @param string                                        $format date formats to compare.
+     * @param \Carbon\Carbon|\DateTimeInterface|string|null $date   instance to compare with or null to use current day.
+     *
+     * @return bool
+     */
+    public function isSameAs($format, $date = null);
+
+    /**
+     * Checks if the passed in date is in the same month as the instance´s month.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-01-01')); // true
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-02-01')); // false
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01')); // false
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01'), false); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date       The instance to compare with or null to use the current date.
+     * @param bool                                   $ofSameYear Check if it is the same month in the same year.
+     *
+     * @return bool
+     */
+    public function isSameMonth($date = null, $ofSameYear = true);
+
+    /**
+     * Checks if the passed in date is in the same quarter as the instance quarter (and year if needed).
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-03-01')); // true
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-04-01')); // false
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01')); // false
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01'), false); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|string|null $date       The instance to compare with or null to use current day.
+     * @param bool                                          $ofSameYear Check if it is the same month in the same year.
+     *
+     * @return bool
+     */
+    public function isSameQuarter($date = null, $ofSameYear = true);
+
+    /**
+     * Determines if the instance is in the current unit given.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // true
+     * Carbon::parse('2018-12-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // false
+     * ```
+     *
+     * @param string                                 $unit singular unit string
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date instance to compare with or null to use current day.
+     *
+     * @throws BadComparisonUnitException
+     *
+     * @return bool
+     */
+    public function isSameUnit($unit, $date = null);
+
+    /**
+     * Check if the instance is start of day / midnight.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 00:00:00')->isStartOfDay(); // true
+     * Carbon::parse('2019-02-28 00:00:00.999999')->isStartOfDay(); // true
+     * Carbon::parse('2019-02-28 00:00:01')->isStartOfDay(); // false
+     * Carbon::parse('2019-02-28 00:00:00.000000')->isStartOfDay(true); // true
+     * Carbon::parse('2019-02-28 00:00:00.000012')->isStartOfDay(true); // false
+     * ```
+     *
+     * @param bool $checkMicroseconds check time at microseconds precision
+     *
+     * @return bool
+     */
+    public function isStartOfDay($checkMicroseconds = false);
+
+    /**
+     * Returns true if the date was created using CarbonImmutable::startOfTime()
+     *
+     * @return bool
+     */
+    public function isStartOfTime(): bool;
+
+    /**
+     * Returns true if the strict mode is globally in use, false else.
+     * (It can be overridden in specific instances.)
+     *
+     * @return bool
+     */
+    public static function isStrictModeEnabled();
+
+    /**
+     * Determines if the instance is today.
+     *
+     * @example
+     * ```
+     * Carbon::today()->isToday(); // true
+     * Carbon::tomorrow()->isToday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isToday();
+
+    /**
+     * Determines if the instance is tomorrow.
+     *
+     * @example
+     * ```
+     * Carbon::tomorrow()->isTomorrow(); // true
+     * Carbon::yesterday()->isTomorrow(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isTomorrow();
+
+    /**
+     * Determines if the instance is a weekday.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-14')->isWeekday(); // false
+     * Carbon::parse('2019-07-15')->isWeekday(); // true
+     * ```
+     *
+     * @return bool
+     */
+    public function isWeekday();
+
+    /**
+     * Determines if the instance is a weekend day.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-14')->isWeekend(); // true
+     * Carbon::parse('2019-07-15')->isWeekend(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isWeekend();
+
+    /**
+     * Determines if the instance is yesterday.
+     *
+     * @example
+     * ```
+     * Carbon::yesterday()->isYesterday(); // true
+     * Carbon::tomorrow()->isYesterday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isYesterday();
+
+    /**
+     * Format in the current language using ISO replacement patterns.
+     *
+     * @param string      $format
+     * @param string|null $originalFormat provide context if a chunk has been passed alone
+     *
+     * @return string
+     */
+    public function isoFormat(string $format, ?string $originalFormat = null): string;
+
+    /**
+     * Get/set the week number using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $week
+     * @param int|null $dayOfWeek
+     * @param int|null $dayOfYear
+     *
+     * @return int|static
+     */
+    public function isoWeek($week = null, $dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Set/get the week number of year using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $year      if null, act as a getter, if not null, set the year and return current instance.
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int|static
+     */
+    public function isoWeekYear($year = null, $dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Get/set the ISO weekday from 1 (Monday) to 7 (Sunday).
+     *
+     * @param int|null $value new value for weekday if using as setter.
+     *
+     * @return static|int
+     */
+    public function isoWeekday($value = null);
+
+    /**
+     * Get the number of weeks of the current week-year using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int
+     */
+    public function isoWeeksInYear($dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Prepare the object for JSON serialization.
+     *
+     * @return array|string
+     */
+    #[ReturnTypeWillChange]
+    public function jsonSerialize();
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current month. If no dayOfWeek is provided, modify to the
+     * last day of the current month.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek
+     *
+     * @return static
+     */
+    public function lastOfMonth($dayOfWeek = null);
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current quarter. If no dayOfWeek is provided, modify to the
+     * last day of the current quarter.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function lastOfQuarter($dayOfWeek = null);
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current year. If no dayOfWeek is provided, modify to the
+     * last day of the current year.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function lastOfYear($dayOfWeek = null);
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function lessThan($date): bool;
+
+    /**
+     * Determines if the instance is less (before) or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function lessThanOrEqualTo($date): bool;
+
+    /**
+     * Get/set the locale for the current instance.
+     *
+     * @param string|null $locale
+     * @param string      ...$fallbackLocales
+     *
+     * @return $this|string
+     */
+    public function locale(?string $locale = null, ...$fallbackLocales);
+
+    /**
+     * Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
+     * Support is considered enabled if the 3 words are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffOneDayWords($locale);
+
+    /**
+     * Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
+     * Support is considered enabled if the 4 sentences are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffSyntax($locale);
+
+    /**
+     * Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
+     * Support is considered enabled if the 2 words are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffTwoDayWords($locale);
+
+    /**
+     * Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
+     * Support is considered enabled if the 4 sentences are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasPeriodSyntax($locale);
+
+    /**
+     * Returns true if the given locale is internally supported and has short-units support.
+     * Support is considered enabled if either year, day or hour has a short variant translated.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasShortUnits($locale);
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThan()
+     *
+     * @return bool
+     */
+    public function lt($date): bool;
+
+    /**
+     * Determines if the instance is less (before) or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function lte($date): bool;
+
+    /**
+     * Register a custom macro.
+     *
+     * @example
+     * ```
+     * $userSettings = [
+     *   'locale' => 'pt',
+     *   'timezone' => 'America/Sao_Paulo',
+     * ];
+     * Carbon::macro('userFormat', function () use ($userSettings) {
+     *   return $this->copy()->locale($userSettings['locale'])->tz($userSettings['timezone'])->calendar();
+     * });
+     * echo Carbon::yesterday()->hours(11)->userFormat();
+     * ```
+     *
+     * @param string          $name
+     * @param object|callable $macro
+     *
+     * @return void
+     */
+    public static function macro($name, $macro);
+
+    /**
+     * Make a Carbon instance from given variable if possible.
+     *
+     * Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
+     * and recurrences). Throw an exception for invalid format, but otherwise return null.
+     *
+     * @param mixed $var
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|null
+     */
+    public static function make($var);
+
+    /**
+     * Get the maximum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return static
+     */
+    public function max($date = null);
+
+    /**
+     * Create a Carbon instance for the greatest supported date.
+     *
+     * @return static
+     */
+    public static function maxValue();
+
+    /**
+     * Get the maximum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see max()
+     *
+     * @return static
+     */
+    public function maximum($date = null);
+
+    /**
+     * Return the meridiem of the current time in the current locale.
+     *
+     * @param bool $isLower if true, returns lowercase variant if available in the current locale.
+     *
+     * @return string
+     */
+    public function meridiem(bool $isLower = false): string;
+
+    /**
+     * Modify to midday, default to self::$midDayAt
+     *
+     * @return static
+     */
+    public function midDay();
+
+    /**
+     * Get the minimum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return static
+     */
+    public function min($date = null);
+
+    /**
+     * Create a Carbon instance for the lowest supported date.
+     *
+     * @return static
+     */
+    public static function minValue();
+
+    /**
+     * Get the minimum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see min()
+     *
+     * @return static
+     */
+    public function minimum($date = null);
+
+    /**
+     * Mix another object into the class.
+     *
+     * @example
+     * ```
+     * Carbon::mixin(new class {
+     *   public function addMoon() {
+     *     return function () {
+     *       return $this->addDays(30);
+     *     };
+     *   }
+     *   public function subMoon() {
+     *     return function () {
+     *       return $this->subDays(30);
+     *     };
+     *   }
+     * });
+     * $fullMoon = Carbon::create('2018-12-22');
+     * $nextFullMoon = $fullMoon->addMoon();
+     * $blackMoon = Carbon::create('2019-01-06');
+     * $previousBlackMoon = $blackMoon->subMoon();
+     * echo "$nextFullMoon\n";
+     * echo "$previousBlackMoon\n";
+     * ```
+     *
+     * @param object|string $mixin
+     *
+     * @throws ReflectionException
+     *
+     * @return void
+     */
+    public static function mixin($mixin);
+
+    /**
+     * Calls \DateTime::modify if mutable or \DateTimeImmutable::modify else.
+     *
+     * @see https://php.net/manual/en/datetime.modify.php
+     */
+    #[ReturnTypeWillChange]
+    public function modify($modify);
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->ne(Carbon::parse('2018-07-25 12:45:16')); // false
+     * Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see notEqualTo()
+     *
+     * @return bool
+     */
+    public function ne($date): bool;
+
+    /**
+     * Modify to the next occurrence of a given modifier such as a day of
+     * the week. If no modifier is provided, modify to the next occurrence
+     * of the current day of the week. Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param string|int|null $modifier
+     *
+     * @return static
+     */
+    public function next($modifier = null);
+
+    /**
+     * Go forward to the next weekday.
+     *
+     * @return static
+     */
+    public function nextWeekday();
+
+    /**
+     * Go forward to the next weekend day.
+     *
+     * @return static
+     */
+    public function nextWeekendDay();
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo(Carbon::parse('2018-07-25 12:45:16')); // false
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function notEqualTo($date): bool;
+
+    /**
+     * Get a Carbon instance for the current date and time.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function now($tz = null);
+
+    /**
+     * Returns a present instance in the same timezone.
+     *
+     * @return static
+     */
+    public function nowWithSameTz();
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current month. If the calculated occurrence is outside the scope
+     * of the current month, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfMonth($nth, $dayOfWeek);
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current quarter. If the calculated occurrence is outside the scope
+     * of the current quarter, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfQuarter($nth, $dayOfWeek);
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current year. If the calculated occurrence is outside the scope
+     * of the current year, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfYear($nth, $dayOfWeek);
+
+    /**
+     * Return a property with its ordinal.
+     *
+     * @param string      $key
+     * @param string|null $period
+     *
+     * @return string
+     */
+    public function ordinal(string $key, ?string $period = null): string;
+
+    /**
+     * Create a carbon instance from a string.
+     *
+     * This is an alias for the constructor that allows better fluent syntax
+     * as it allows you to do Carbon::parse('Monday next week')->fn() rather
+     * than (new Carbon('Monday next week'))->fn().
+     *
+     * @param string|DateTimeInterface|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function parse($time = null, $tz = null);
+
+    /**
+     * Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
+     *
+     * @param string                   $time   date/time string in the given language (may also contain English).
+     * @param string|null              $locale if locale is null or not specified, current global locale will be
+     *                                         used instead.
+     * @param DateTimeZone|string|null $tz     optional timezone for the new instance.
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function parseFromLocale($time, $locale = null, $tz = null);
+
+    /**
+     * Returns standardized plural of a given singular/plural unit name (in English).
+     *
+     * @param string $unit
+     *
+     * @return string
+     */
+    public static function pluralUnit(string $unit): string;
+
+    /**
+     * Modify to the previous occurrence of a given modifier such as a day of
+     * the week. If no dayOfWeek is provided, modify to the previous occurrence
+     * of the current day of the week. Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param string|int|null $modifier
+     *
+     * @return static
+     */
+    public function previous($modifier = null);
+
+    /**
+     * Go backward to the previous weekday.
+     *
+     * @return static
+     */
+    public function previousWeekday();
+
+    /**
+     * Go backward to the previous weekend day.
+     *
+     * @return static
+     */
+    public function previousWeekendDay();
+
+    /**
+     * Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
+     *
+     * @param \DateTimeInterface|Carbon|CarbonImmutable|null $end      period end date
+     * @param int|\DateInterval|string|null                  $interval period default interval or number of the given $unit
+     * @param string|null                                    $unit     if specified, $interval must be an integer
+     *
+     * @return CarbonPeriod
+     */
+    public function range($end = null, $interval = null, $unit = null);
+
+    /**
+     * Call native PHP DateTime/DateTimeImmutable add() method.
+     *
+     * @param DateInterval $interval
+     *
+     * @return static
+     */
+    public function rawAdd(DateInterval $interval);
+
+    /**
+     * Create a Carbon instance from a specific format.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function rawCreateFromFormat($format, $time, $tz = null);
+
+    /**
+     * @see https://php.net/manual/en/datetime.format.php
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function rawFormat($format);
+
+    /**
+     * Create a carbon instance from a string.
+     *
+     * This is an alias for the constructor that allows better fluent syntax
+     * as it allows you to do Carbon::parse('Monday next week')->fn() rather
+     * than (new Carbon('Monday next week'))->fn().
+     *
+     * @param string|DateTimeInterface|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function rawParse($time = null, $tz = null);
+
+    /**
+     * Call native PHP DateTime/DateTimeImmutable sub() method.
+     *
+     * @param DateInterval $interval
+     *
+     * @return static
+     */
+    public function rawSub(DateInterval $interval);
+
+    /**
+     * Remove all macros and generic macros.
+     */
+    public static function resetMacros();
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Reset the month overflow behavior.
+     *
+     * @return void
+     */
+    public static function resetMonthsOverflow();
+
+    /**
+     * Reset the format used to the default when type juggling a Carbon instance to a string
+     *
+     * @return void
+     */
+    public static function resetToStringFormat();
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Reset the month overflow behavior.
+     *
+     * @return void
+     */
+    public static function resetYearsOverflow();
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     * @param string                              $function
+     *
+     * @return CarbonInterface
+     */
+    public function round($precision = 1, $function = 'round');
+
+    /**
+     * Round the current instance at the given unit with given precision if specified and the given function.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     * @param string    $function
+     *
+     * @return CarbonInterface
+     */
+    public function roundUnit($unit, $precision = 1, $function = 'round');
+
+    /**
+     * Round the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function roundWeek($weekStartsAt = null);
+
+    /**
+     * The number of seconds since midnight.
+     *
+     * @return int
+     */
+    public function secondsSinceMidnight();
+
+    /**
+     * The number of seconds until 23:59:59.
+     *
+     * @return int
+     */
+    public function secondsUntilEndOfDay();
+
+    /**
+     * Return a serialized string of the instance.
+     *
+     * @return string
+     */
+    public function serialize();
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather transform Carbon object before the serialization.
+     *
+     * JSON serialize all Carbon instances using the given callback.
+     *
+     * @param callable $callback
+     *
+     * @return void
+     */
+    public static function serializeUsing($callback);
+
+    /**
+     * Set a part of the Carbon object
+     *
+     * @param string|array            $name
+     * @param string|int|DateTimeZone $value
+     *
+     * @throws ImmutableException|UnknownSetterException
+     *
+     * @return $this
+     */
+    public function set($name, $value = null);
+
+    /**
+     * Set the date with gregorian year, month and day numbers.
+     *
+     * @see https://php.net/manual/en/datetime.setdate.php
+     *
+     * @param int $year
+     * @param int $month
+     * @param int $day
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setDate($year, $month, $day);
+
+    /**
+     * Set the year, month, and date for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date now if null
+     *
+     * @return static
+     */
+    public function setDateFrom($date = null);
+
+    /**
+     * Set the date and time all together.
+     *
+     * @param int $year
+     * @param int $month
+     * @param int $day
+     * @param int $hour
+     * @param int $minute
+     * @param int $second
+     * @param int $microseconds
+     *
+     * @return static
+     */
+    public function setDateTime($year, $month, $day, $hour, $minute, $second = 0, $microseconds = 0);
+
+    /**
+     * Set the date and time for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date
+     *
+     * @return static
+     */
+    public function setDateTimeFrom($date = null);
+
+    /**
+     * Set the fallback locale.
+     *
+     * @see https://symfony.com/doc/current/components/translation.html#fallback-locales
+     *
+     * @param string $locale
+     */
+    public static function setFallbackLocale($locale);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOptions
+     */
+    public static function setHumanDiffOptions($humanDiffOptions);
+
+    /**
+     * Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
+     *
+     * @see https://php.net/manual/en/datetime.setisodate.php
+     *
+     * @param int $year
+     * @param int $week
+     * @param int $day
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setISODate($year, $week, $day = 1);
+
+    /**
+     * Set the translator for the current instance.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return $this
+     */
+    public function setLocalTranslator(\Symfony\Component\Translation\TranslatorInterface $translator);
+
+    /**
+     * Set the current translator locale and indicate if the source locale file exists.
+     * Pass 'auto' as locale to use closest language from the current LC_TIME locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function setLocale($locale);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather consider mid-day is always 12pm, then if you need to test if it's an other
+     *             hour, test it explicitly:
+     *                 $date->format('G') == 13
+     *             or to set explicitly to a given hour:
+     *                 $date->setTime(13, 0, 0, 0)
+     *
+     * Set midday/noon hour
+     *
+     * @param int $hour midday hour
+     *
+     * @return void
+     */
+    public static function setMidDayAt($hour);
+
+    /**
+     * Set a Carbon instance (real or mock) to be returned when a "now"
+     * instance is created.  The provided instance will be returned
+     * specifically under the following conditions:
+     *   - A call to the static now() method, ex. Carbon::now()
+     *   - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
+     *   - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
+     *   - When a string containing the desired time is passed to Carbon::parse().
+     *
+     * Note the timezone parameter was left out of the examples above and
+     * has no affect as the mock value will be returned regardless of its value.
+     *
+     * To clear the test instance call this method using the default
+     * parameter of null.
+     *
+     * /!\ Use this method for unit tests only.
+     *
+     * @param Closure|static|string|false|null $testNow real or mock Carbon instance
+     */
+    public static function setTestNow($testNow = null);
+
+    /**
+     * Resets the current time of the DateTime object to a different time.
+     *
+     * @see https://php.net/manual/en/datetime.settime.php
+     *
+     * @param int $hour
+     * @param int $minute
+     * @param int $second
+     * @param int $microseconds
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTime($hour, $minute, $second = 0, $microseconds = 0);
+
+    /**
+     * Set the hour, minute, second and microseconds for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date now if null
+     *
+     * @return static
+     */
+    public function setTimeFrom($date = null);
+
+    /**
+     * Set the time by time string.
+     *
+     * @param string $time
+     *
+     * @return static
+     */
+    public function setTimeFromTimeString($time);
+
+    /**
+     * Set the instance's timestamp.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $unixTimestamp
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTimestamp($unixTimestamp);
+
+    /**
+     * Set the instance's timezone from a string or object.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTimezone($value);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather let Carbon object being casted to string with DEFAULT_TO_STRING_FORMAT, and
+     *             use other method or custom format passed to format() method if you need to dump an other string
+     *             format.
+     *
+     * Set the default format used when type juggling a Carbon instance to a string
+     *
+     * @param string|Closure|null $format
+     *
+     * @return void
+     */
+    public static function setToStringFormat($format);
+
+    /**
+     * Set the default translator instance to use.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return void
+     */
+    public static function setTranslator(\Symfony\Component\Translation\TranslatorInterface $translator);
+
+    /**
+     * Set specified unit to new given value.
+     *
+     * @param string $unit  year, month, day, hour, minute, second or microsecond
+     * @param int    $value new value for given unit
+     *
+     * @return static
+     */
+    public function setUnit($unit, $value = null);
+
+    /**
+     * Set any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        new value for the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function setUnitNoOverflow($valueUnit, $value, $overflowUnit);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use UTF-8 language packages on every machine.
+     *
+     * Set if UTF8 will be used for localized date/time.
+     *
+     * @param bool $utf8
+     */
+    public static function setUtf8($utf8);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             Use $weekStartsAt optional parameter instead when using startOfWeek, floorWeek, ceilWeek
+     *             or roundWeek method. You can also use the 'first_day_of_week' locale setting to change the
+     *             start of week according to current locale selected and implicitly the end of week.
+     *
+     * Set the last day of week
+     *
+     * @param int|string $day week end day (or 'auto' to get the day before the first day of week
+     *                        from Carbon::getLocale() culture).
+     *
+     * @return void
+     */
+    public static function setWeekEndsAt($day);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             Use $weekEndsAt optional parameter instead when using endOfWeek method. You can also use the
+     *             'first_day_of_week' locale setting to change the start of week according to current locale
+     *             selected and implicitly the end of week.
+     *
+     * Set the first day of week
+     *
+     * @param int|string $day week start day (or 'auto' to get the first day of week from Carbon::getLocale() culture).
+     *
+     * @return void
+     */
+    public static function setWeekStartsAt($day);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather consider week-end is always saturday and sunday, and if you have some custom
+     *             week-end days to handle, give to those days an other name and create a macro for them:
+     *
+     *             ```
+     *             Carbon::macro('isDayOff', function ($date) {
+     *                 return $date->isSunday() || $date->isMonday();
+     *             });
+     *             Carbon::macro('isNotDayOff', function ($date) {
+     *                 return !$date->isDayOff();
+     *             });
+     *             if ($someDate->isDayOff()) ...
+     *             if ($someDate->isNotDayOff()) ...
+     *             // Add 5 not-off days
+     *             $count = 5;
+     *             while ($someDate->isDayOff() || ($count-- > 0)) {
+     *                 $someDate->addDay();
+     *             }
+     *             ```
+     *
+     * Set weekend days
+     *
+     * @param array $days
+     *
+     * @return void
+     */
+    public static function setWeekendDays($days);
+
+    /**
+     * Set specific options.
+     *  - strictMode: true|false|null
+     *  - monthOverflow: true|false|null
+     *  - yearOverflow: true|false|null
+     *  - humanDiffOptions: int|null
+     *  - toStringFormat: string|Closure|null
+     *  - toJsonFormat: string|Closure|null
+     *  - locale: string|null
+     *  - timezone: \DateTimeZone|string|int|null
+     *  - macros: array|null
+     *  - genericMacros: array|null
+     *
+     * @param array $settings
+     *
+     * @return $this|static
+     */
+    public function settings(array $settings);
+
+    /**
+     * Set the instance's timezone from a string or object and add/subtract the offset difference.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    public function shiftTimezone($value);
+
+    /**
+     * Get the month overflow global behavior (can be overridden in specific instances).
+     *
+     * @return bool
+     */
+    public static function shouldOverflowMonths();
+
+    /**
+     * Get the month overflow global behavior (can be overridden in specific instances).
+     *
+     * @return bool
+     */
+    public static function shouldOverflowYears();
+
+    /**
+     * @alias diffForHumans
+     *
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     */
+    public function since($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Returns standardized singular of a given singular/plural unit name (in English).
+     *
+     * @param string $unit
+     *
+     * @return string
+     */
+    public static function singularUnit(string $unit): string;
+
+    /**
+     * Modify to start of current given unit.
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOf('month')
+     *   ->endOf('week', Carbon::FRIDAY);
+     * ```
+     *
+     * @param string            $unit
+     * @param array<int, mixed> $params
+     *
+     * @return static
+     */
+    public function startOf($unit, ...$params);
+
+    /**
+     * Resets the date to the first day of the century and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfCentury();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfCentury();
+
+    /**
+     * Resets the time to 00:00:00 start of day
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfDay();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfDay();
+
+    /**
+     * Resets the date to the first day of the decade and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfDecade();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfDecade();
+
+    /**
+     * Modify to start of current hour, minutes and seconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfHour();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfHour();
+
+    /**
+     * Resets the date to the first day of the millennium and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMillennium();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMillennium();
+
+    /**
+     * Modify to start of current minute, seconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMinute();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMinute();
+
+    /**
+     * Resets the date to the first day of the month and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMonth();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMonth();
+
+    /**
+     * Resets the date to the first day of the quarter and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfQuarter();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfQuarter();
+
+    /**
+     * Modify to start of current second, microseconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOfSecond()
+     *   ->format('H:i:s.u');
+     * ```
+     *
+     * @return static
+     */
+    public function startOfSecond();
+
+    /**
+     * Resets the date to the first day of week (defined in $weekStartsAt) and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->startOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek(Carbon::SUNDAY) . "\n";
+     * ```
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return static
+     */
+    public function startOfWeek($weekStartsAt = null);
+
+    /**
+     * Resets the date to the first day of the year and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfYear();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfYear();
+
+    /**
+     * Subtract given units or interval to the current instance.
+     *
+     * @example $date->sub('hour', 3)
+     * @example $date->sub(15, 'days')
+     * @example $date->sub(CarbonInterval::days(4))
+     *
+     * @param string|DateInterval|Closure|CarbonConverterInterface $unit
+     * @param int                                                  $value
+     * @param bool|null                                            $overflow
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function sub($unit, $value = 1, $overflow = null);
+
+    public function subRealUnit($unit, $value = 1);
+
+    /**
+     * Subtract given units to the current instance.
+     *
+     * @param string    $unit
+     * @param int       $value
+     * @param bool|null $overflow
+     *
+     * @return static
+     */
+    public function subUnit($unit, $value = 1, $overflow = null);
+
+    /**
+     * Subtract any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        amount to subtract to the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function subUnitNoOverflow($valueUnit, $value, $overflowUnit);
+
+    /**
+     * Subtract given units or interval to the current instance.
+     *
+     * @see sub()
+     *
+     * @param string|DateInterval $unit
+     * @param int                 $value
+     * @param bool|null           $overflow
+     *
+     * @return static
+     */
+    public function subtract($unit, $value = 1, $overflow = null);
+
+    /**
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @return string
+     */
+    public function timespan($other = null, $timezone = null);
+
+    /**
+     * Set the instance's timestamp.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $unixTimestamp
+     *
+     * @return static
+     */
+    public function timestamp($unixTimestamp);
+
+    /**
+     * @alias setTimezone
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    public function timezone($value);
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given (or now if null given) to current instance.
+     *
+     * When comparing a value in the past to default now:
+     * 1 hour from now
+     * 5 months from now
+     *
+     * When comparing a value in the future to default now:
+     * 1 hour ago
+     * 5 months ago
+     *
+     * When comparing a value in the past to another value:
+     * 1 hour after
+     * 5 months after
+     *
+     * When comparing a value in the future to another value:
+     * 1 hour before
+     * 5 months before
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function to($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Get default array representation.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toArray());
+     * ```
+     *
+     * @return array
+     */
+    public function toArray();
+
+    /**
+     * Format the instance as ATOM
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toAtomString();
+     * ```
+     *
+     * @return string
+     */
+    public function toAtomString();
+
+    /**
+     * Format the instance as COOKIE
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toCookieString();
+     * ```
+     *
+     * @return string
+     */
+    public function toCookieString();
+
+    /**
+     * @alias toDateTime
+     *
+     * Return native DateTime PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDate());
+     * ```
+     *
+     * @return DateTime
+     */
+    public function toDate();
+
+    /**
+     * Format the instance as date
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateString();
+     * ```
+     *
+     * @return string
+     */
+    public function toDateString();
+
+    /**
+     * Return native DateTime PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDateTime());
+     * ```
+     *
+     * @return DateTime
+     */
+    public function toDateTime();
+
+    /**
+     * Return native toDateTimeImmutable PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDateTimeImmutable());
+     * ```
+     *
+     * @return DateTimeImmutable
+     */
+    public function toDateTimeImmutable();
+
+    /**
+     * Format the instance as date and time T-separated with no timezone
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateTimeLocalString();
+     * echo "\n";
+     * echo Carbon::now()->toDateTimeLocalString('minute'); // You can specify precision among: minute, second, millisecond and microsecond
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toDateTimeLocalString($unitPrecision = 'second');
+
+    /**
+     * Format the instance as date and time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateTimeString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toDateTimeString($unitPrecision = 'second');
+
+    /**
+     * Format the instance with day, date and time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDayDateTimeString();
+     * ```
+     *
+     * @return string
+     */
+    public function toDayDateTimeString();
+
+    /**
+     * Format the instance as a readable date
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toFormattedDateString();
+     * ```
+     *
+     * @return string
+     */
+    public function toFormattedDateString();
+
+    /**
+     * Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z, if $keepOffset truthy, offset will be kept:
+     * 1977-04-22T01:00:00-05:00).
+     *
+     * @example
+     * ```
+     * echo Carbon::now('America/Toronto')->toISOString() . "\n";
+     * echo Carbon::now('America/Toronto')->toISOString(true) . "\n";
+     * ```
+     *
+     * @param bool $keepOffset Pass true to keep the date offset. Else forced to UTC.
+     *
+     * @return null|string
+     */
+    public function toISOString($keepOffset = false);
+
+    /**
+     * Return a immutable copy of the instance.
+     *
+     * @return CarbonImmutable
+     */
+    public function toImmutable();
+
+    /**
+     * Format the instance as ISO8601
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toIso8601String();
+     * ```
+     *
+     * @return string
+     */
+    public function toIso8601String();
+
+    /**
+     * Convert the instance to UTC and return as Zulu ISO8601
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toIso8601ZuluString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toIso8601ZuluString($unitPrecision = 'second');
+
+    /**
+     * Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z) with UTC timezone.
+     *
+     * @example
+     * ```
+     * echo Carbon::now('America/Toronto')->toJSON();
+     * ```
+     *
+     * @return null|string
+     */
+    public function toJSON();
+
+    /**
+     * Return a mutable copy of the instance.
+     *
+     * @return Carbon
+     */
+    public function toMutable();
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given to now
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single part)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function toNow($syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * Get default object representation.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toObject());
+     * ```
+     *
+     * @return object
+     */
+    public function toObject();
+
+    /**
+     * Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
+     *
+     * @param \DateTimeInterface|Carbon|CarbonImmutable|int|null $end      period end date or recurrences count if int
+     * @param int|\DateInterval|string|null                      $interval period default interval or number of the given $unit
+     * @param string|null                                        $unit     if specified, $interval must be an integer
+     *
+     * @return CarbonPeriod
+     */
+    public function toPeriod($end = null, $interval = null, $unit = null);
+
+    /**
+     * Format the instance as RFC1036
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc1036String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc1036String();
+
+    /**
+     * Format the instance as RFC1123
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc1123String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc1123String();
+
+    /**
+     * Format the instance as RFC2822
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc2822String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc2822String();
+
+    /**
+     * Format the instance as RFC3339
+     *
+     * @param bool $extended
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc3339String() . "\n";
+     * echo Carbon::now()->toRfc3339String(true) . "\n";
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc3339String($extended = false);
+
+    /**
+     * Format the instance as RFC7231
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc7231String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc7231String();
+
+    /**
+     * Format the instance as RFC822
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc822String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc822String();
+
+    /**
+     * Format the instance as RFC850
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc850String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc850String();
+
+    /**
+     * Format the instance as RSS
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRssString();
+     * ```
+     *
+     * @return string
+     */
+    public function toRssString();
+
+    /**
+     * Returns english human readable complete date string.
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toString();
+     * ```
+     *
+     * @return string
+     */
+    public function toString();
+
+    /**
+     * Format the instance as time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toTimeString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toTimeString($unitPrecision = 'second');
+
+    /**
+     * Format the instance as W3C
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toW3cString();
+     * ```
+     *
+     * @return string
+     */
+    public function toW3cString();
+
+    /**
+     * Create a Carbon instance for today.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function today($tz = null);
+
+    /**
+     * Create a Carbon instance for tomorrow.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function tomorrow($tz = null);
+
+    /**
+     * Translate using translation string or callback available.
+     *
+     * @param string                                             $key
+     * @param array                                              $parameters
+     * @param string|int|float|null                              $number
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return string
+     */
+    public function translate(string $key, array $parameters = [], $number = null, ?\Symfony\Component\Translation\TranslatorInterface $translator = null, bool $altNumbers = false): string;
+
+    /**
+     * Returns the alternative number for a given integer if available in the current locale.
+     *
+     * @param int $number
+     *
+     * @return string
+     */
+    public function translateNumber(int $number): string;
+
+    /**
+     * Translate a time string from a locale to an other.
+     *
+     * @param string      $timeString date/time/duration string to translate (may also contain English)
+     * @param string|null $from       input locale of the $timeString parameter (`Carbon::getLocale()` by default)
+     * @param string|null $to         output locale of the result returned (`"en"` by default)
+     * @param int         $mode       specify what to translate with options:
+     *                                - self::TRANSLATE_ALL (default)
+     *                                - CarbonInterface::TRANSLATE_MONTHS
+     *                                - CarbonInterface::TRANSLATE_DAYS
+     *                                - CarbonInterface::TRANSLATE_UNITS
+     *                                - CarbonInterface::TRANSLATE_MERIDIEM
+     *                                You can use pipe to group: CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS
+     *
+     * @return string
+     */
+    public static function translateTimeString($timeString, $from = null, $to = null, $mode = self::TRANSLATE_ALL);
+
+    /**
+     * Translate a time string from the current locale (`$date->locale()`) to an other.
+     *
+     * @param string      $timeString time string to translate
+     * @param string|null $to         output locale of the result returned ("en" by default)
+     *
+     * @return string
+     */
+    public function translateTimeStringTo($timeString, $to = null);
+
+    /**
+     * Translate using translation string or callback available.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     * @param string                                             $key
+     * @param array                                              $parameters
+     * @param null                                               $number
+     *
+     * @return string
+     */
+    public static function translateWith(\Symfony\Component\Translation\TranslatorInterface $translator, string $key, array $parameters = [], $number = null): string;
+
+    /**
+     * Format as ->format() do (using date replacements patterns from https://php.net/manual/en/function.date.php)
+     * but translate words whenever possible (months, day names, etc.) using the current locale.
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function translatedFormat(string $format): string;
+
+    /**
+     * Set the timezone or returns the timezone name if no arguments passed.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static|string
+     */
+    public function tz($value = null);
+
+    /**
+     * @alias getTimestamp
+     *
+     * Returns the UNIX timestamp for the current date.
+     *
+     * @return int
+     */
+    public function unix();
+
+    /**
+     * @alias to
+     *
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given (or now if null given) to current instance.
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function until($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Indicates if months should be calculated with overflow.
+     *
+     * @param bool $monthsOverflow
+     *
+     * @return void
+     */
+    public static function useMonthsOverflow($monthsOverflow = true);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * Enable the strict mode (or disable with passing false).
+     *
+     * @param bool $strictModeEnabled
+     */
+    public static function useStrictMode($strictModeEnabled = true);
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Indicates if years should be calculated with overflow.
+     *
+     * @param bool $yearsOverflow
+     *
+     * @return void
+     */
+    public static function useYearsOverflow($yearsOverflow = true);
+
+    /**
+     * Set the instance's timezone to UTC.
+     *
+     * @return static
+     */
+    public function utc();
+
+    /**
+     * Returns the minutes offset to UTC if no arguments passed, else set the timezone with given minutes shift passed.
+     *
+     * @param int|null $minuteOffset
+     *
+     * @return int|static
+     */
+    public function utcOffset(?int $minuteOffset = null);
+
+    /**
+     * Returns the milliseconds timestamps used amongst other by Date javascript objects.
+     *
+     * @return float
+     */
+    public function valueOf();
+
+    /**
+     * Get/set the week number using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $week
+     * @param int|null $dayOfWeek
+     * @param int|null $dayOfYear
+     *
+     * @return int|static
+     */
+    public function week($week = null, $dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Set/get the week number of year using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $year      if null, act as a getter, if not null, set the year and return current instance.
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int|static
+     */
+    public function weekYear($year = null, $dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Get/set the weekday from 0 (Sunday) to 6 (Saturday).
+     *
+     * @param int|null $value new value for weekday if using as setter.
+     *
+     * @return static|int
+     */
+    public function weekday($value = null);
+
+    /**
+     * Get the number of weeks of the current week-year using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int
+     */
+    public function weeksInYear($dayOfWeek = null, $dayOfYear = null);
+
+    /**
+     * Temporarily sets a static date to be used within the callback.
+     * Using setTestNow to set the date, executing the callback, then
+     * clearing the test instance.
+     *
+     * /!\ Use this method for unit tests only.
+     *
+     * @param Closure|static|string|false|null $testNow real or mock Carbon instance
+     * @param Closure|null $callback
+     *
+     * @return mixed
+     */
+    public static function withTestNow($testNow = null, $callback = null);
+
+    /**
+     * Create a Carbon instance for yesterday.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function yesterday($tz = null);
+
+    // </methods>
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php
new file mode 100644
index 0000000..7168fa4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonInterval.php
@@ -0,0 +1,2667 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Carbon\Exceptions\BadFluentConstructorException;
+use Carbon\Exceptions\BadFluentSetterException;
+use Carbon\Exceptions\InvalidCastException;
+use Carbon\Exceptions\InvalidIntervalException;
+use Carbon\Exceptions\ParseErrorException;
+use Carbon\Exceptions\UnitNotConfiguredException;
+use Carbon\Exceptions\UnknownGetterException;
+use Carbon\Exceptions\UnknownSetterException;
+use Carbon\Exceptions\UnknownUnitException;
+use Carbon\Traits\IntervalRounding;
+use Carbon\Traits\IntervalStep;
+use Carbon\Traits\Mixin;
+use Carbon\Traits\Options;
+use Closure;
+use DateInterval;
+use Exception;
+use ReflectionException;
+use ReturnTypeWillChange;
+use Throwable;
+
+/**
+ * A simple API extension for DateInterval.
+ * The implementation provides helpers to handle weeks but only days are saved.
+ * Weeks are calculated based on the total days of the current instance.
+ *
+ * @property int $years Total years of the current interval.
+ * @property int $months Total months of the current interval.
+ * @property int $weeks Total weeks of the current interval calculated from the days.
+ * @property int $dayz Total days of the current interval (weeks * 7 + days).
+ * @property int $hours Total hours of the current interval.
+ * @property int $minutes Total minutes of the current interval.
+ * @property int $seconds Total seconds of the current interval.
+ * @property int $microseconds Total microseconds of the current interval.
+ * @property int $milliseconds Total microseconds of the current interval.
+ * @property int $microExcludeMilli Remaining microseconds without the milliseconds.
+ * @property int $dayzExcludeWeeks Total days remaining in the final week of the current instance (days % 7).
+ * @property int $daysExcludeWeeks alias of dayzExcludeWeeks
+ * @property-read float $totalYears Number of years equivalent to the interval.
+ * @property-read float $totalMonths Number of months equivalent to the interval.
+ * @property-read float $totalWeeks Number of weeks equivalent to the interval.
+ * @property-read float $totalDays Number of days equivalent to the interval.
+ * @property-read float $totalDayz Alias for totalDays.
+ * @property-read float $totalHours Number of hours equivalent to the interval.
+ * @property-read float $totalMinutes Number of minutes equivalent to the interval.
+ * @property-read float $totalSeconds Number of seconds equivalent to the interval.
+ * @property-read float $totalMilliseconds Number of milliseconds equivalent to the interval.
+ * @property-read float $totalMicroseconds Number of microseconds equivalent to the interval.
+ * @property-read string $locale locale of the current instance
+ *
+ * @method static CarbonInterval years($years = 1) Create instance specifying a number of years or modify the number of years if called on an instance.
+ * @method static CarbonInterval year($years = 1) Alias for years()
+ * @method static CarbonInterval months($months = 1) Create instance specifying a number of months or modify the number of months if called on an instance.
+ * @method static CarbonInterval month($months = 1) Alias for months()
+ * @method static CarbonInterval weeks($weeks = 1) Create instance specifying a number of weeks or modify the number of weeks if called on an instance.
+ * @method static CarbonInterval week($weeks = 1) Alias for weeks()
+ * @method static CarbonInterval days($days = 1) Create instance specifying a number of days or modify the number of days if called on an instance.
+ * @method static CarbonInterval dayz($days = 1) Alias for days()
+ * @method static CarbonInterval daysExcludeWeeks($days = 1) Create instance specifying a number of days or modify the number of days (keeping the current number of weeks) if called on an instance.
+ * @method static CarbonInterval dayzExcludeWeeks($days = 1) Alias for daysExcludeWeeks()
+ * @method static CarbonInterval day($days = 1) Alias for days()
+ * @method static CarbonInterval hours($hours = 1) Create instance specifying a number of hours or modify the number of hours if called on an instance.
+ * @method static CarbonInterval hour($hours = 1) Alias for hours()
+ * @method static CarbonInterval minutes($minutes = 1) Create instance specifying a number of minutes or modify the number of minutes if called on an instance.
+ * @method static CarbonInterval minute($minutes = 1) Alias for minutes()
+ * @method static CarbonInterval seconds($seconds = 1) Create instance specifying a number of seconds or modify the number of seconds if called on an instance.
+ * @method static CarbonInterval second($seconds = 1) Alias for seconds()
+ * @method static CarbonInterval milliseconds($milliseconds = 1) Create instance specifying a number of milliseconds or modify the number of milliseconds if called on an instance.
+ * @method static CarbonInterval millisecond($milliseconds = 1) Alias for milliseconds()
+ * @method static CarbonInterval microseconds($microseconds = 1) Create instance specifying a number of microseconds or modify the number of microseconds if called on an instance.
+ * @method static CarbonInterval microsecond($microseconds = 1) Alias for microseconds()
+ * @method $this addYears(int $years) Add given number of years to the current interval
+ * @method $this subYears(int $years) Subtract given number of years to the current interval
+ * @method $this addMonths(int $months) Add given number of months to the current interval
+ * @method $this subMonths(int $months) Subtract given number of months to the current interval
+ * @method $this addWeeks(int|float $weeks) Add given number of weeks to the current interval
+ * @method $this subWeeks(int|float $weeks) Subtract given number of weeks to the current interval
+ * @method $this addDays(int|float $days) Add given number of days to the current interval
+ * @method $this subDays(int|float $days) Subtract given number of days to the current interval
+ * @method $this addHours(int|float $hours) Add given number of hours to the current interval
+ * @method $this subHours(int|float $hours) Subtract given number of hours to the current interval
+ * @method $this addMinutes(int|float $minutes) Add given number of minutes to the current interval
+ * @method $this subMinutes(int|float $minutes) Subtract given number of minutes to the current interval
+ * @method $this addSeconds(int|float $seconds) Add given number of seconds to the current interval
+ * @method $this subSeconds(int|float $seconds) Subtract given number of seconds to the current interval
+ * @method $this addMilliseconds(int|float $milliseconds) Add given number of milliseconds to the current interval
+ * @method $this subMilliseconds(int|float $milliseconds) Subtract given number of milliseconds to the current interval
+ * @method $this addMicroseconds(int|float $microseconds) Add given number of microseconds to the current interval
+ * @method $this subMicroseconds(int|float $microseconds) Subtract given number of microseconds to the current interval
+ * @method $this roundYear(int|float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
+ * @method $this roundYears(int|float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
+ * @method $this floorYear(int|float $precision = 1) Truncate the current instance year with given precision.
+ * @method $this floorYears(int|float $precision = 1) Truncate the current instance year with given precision.
+ * @method $this ceilYear(int|float $precision = 1) Ceil the current instance year with given precision.
+ * @method $this ceilYears(int|float $precision = 1) Ceil the current instance year with given precision.
+ * @method $this roundMonth(int|float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
+ * @method $this roundMonths(int|float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
+ * @method $this floorMonth(int|float $precision = 1) Truncate the current instance month with given precision.
+ * @method $this floorMonths(int|float $precision = 1) Truncate the current instance month with given precision.
+ * @method $this ceilMonth(int|float $precision = 1) Ceil the current instance month with given precision.
+ * @method $this ceilMonths(int|float $precision = 1) Ceil the current instance month with given precision.
+ * @method $this roundWeek(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this roundWeeks(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this floorWeek(int|float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this floorWeeks(int|float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this ceilWeek(int|float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this ceilWeeks(int|float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this roundDay(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this roundDays(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this floorDay(int|float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this floorDays(int|float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this ceilDay(int|float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this ceilDays(int|float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this roundHour(int|float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
+ * @method $this roundHours(int|float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
+ * @method $this floorHour(int|float $precision = 1) Truncate the current instance hour with given precision.
+ * @method $this floorHours(int|float $precision = 1) Truncate the current instance hour with given precision.
+ * @method $this ceilHour(int|float $precision = 1) Ceil the current instance hour with given precision.
+ * @method $this ceilHours(int|float $precision = 1) Ceil the current instance hour with given precision.
+ * @method $this roundMinute(int|float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
+ * @method $this roundMinutes(int|float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
+ * @method $this floorMinute(int|float $precision = 1) Truncate the current instance minute with given precision.
+ * @method $this floorMinutes(int|float $precision = 1) Truncate the current instance minute with given precision.
+ * @method $this ceilMinute(int|float $precision = 1) Ceil the current instance minute with given precision.
+ * @method $this ceilMinutes(int|float $precision = 1) Ceil the current instance minute with given precision.
+ * @method $this roundSecond(int|float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
+ * @method $this roundSeconds(int|float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
+ * @method $this floorSecond(int|float $precision = 1) Truncate the current instance second with given precision.
+ * @method $this floorSeconds(int|float $precision = 1) Truncate the current instance second with given precision.
+ * @method $this ceilSecond(int|float $precision = 1) Ceil the current instance second with given precision.
+ * @method $this ceilSeconds(int|float $precision = 1) Ceil the current instance second with given precision.
+ * @method $this roundMillennium(int|float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
+ * @method $this roundMillennia(int|float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
+ * @method $this floorMillennium(int|float $precision = 1) Truncate the current instance millennium with given precision.
+ * @method $this floorMillennia(int|float $precision = 1) Truncate the current instance millennium with given precision.
+ * @method $this ceilMillennium(int|float $precision = 1) Ceil the current instance millennium with given precision.
+ * @method $this ceilMillennia(int|float $precision = 1) Ceil the current instance millennium with given precision.
+ * @method $this roundCentury(int|float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
+ * @method $this roundCenturies(int|float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
+ * @method $this floorCentury(int|float $precision = 1) Truncate the current instance century with given precision.
+ * @method $this floorCenturies(int|float $precision = 1) Truncate the current instance century with given precision.
+ * @method $this ceilCentury(int|float $precision = 1) Ceil the current instance century with given precision.
+ * @method $this ceilCenturies(int|float $precision = 1) Ceil the current instance century with given precision.
+ * @method $this roundDecade(int|float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
+ * @method $this roundDecades(int|float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
+ * @method $this floorDecade(int|float $precision = 1) Truncate the current instance decade with given precision.
+ * @method $this floorDecades(int|float $precision = 1) Truncate the current instance decade with given precision.
+ * @method $this ceilDecade(int|float $precision = 1) Ceil the current instance decade with given precision.
+ * @method $this ceilDecades(int|float $precision = 1) Ceil the current instance decade with given precision.
+ * @method $this roundQuarter(int|float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
+ * @method $this roundQuarters(int|float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
+ * @method $this floorQuarter(int|float $precision = 1) Truncate the current instance quarter with given precision.
+ * @method $this floorQuarters(int|float $precision = 1) Truncate the current instance quarter with given precision.
+ * @method $this ceilQuarter(int|float $precision = 1) Ceil the current instance quarter with given precision.
+ * @method $this ceilQuarters(int|float $precision = 1) Ceil the current instance quarter with given precision.
+ * @method $this roundMillisecond(int|float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
+ * @method $this roundMilliseconds(int|float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
+ * @method $this floorMillisecond(int|float $precision = 1) Truncate the current instance millisecond with given precision.
+ * @method $this floorMilliseconds(int|float $precision = 1) Truncate the current instance millisecond with given precision.
+ * @method $this ceilMillisecond(int|float $precision = 1) Ceil the current instance millisecond with given precision.
+ * @method $this ceilMilliseconds(int|float $precision = 1) Ceil the current instance millisecond with given precision.
+ * @method $this roundMicrosecond(int|float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
+ * @method $this roundMicroseconds(int|float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
+ * @method $this floorMicrosecond(int|float $precision = 1) Truncate the current instance microsecond with given precision.
+ * @method $this floorMicroseconds(int|float $precision = 1) Truncate the current instance microsecond with given precision.
+ * @method $this ceilMicrosecond(int|float $precision = 1) Ceil the current instance microsecond with given precision.
+ * @method $this ceilMicroseconds(int|float $precision = 1) Ceil the current instance microsecond with given precision.
+ */
+class CarbonInterval extends DateInterval implements CarbonConverterInterface
+{
+    use IntervalRounding;
+    use IntervalStep;
+    use Mixin {
+        Mixin::mixin as baseMixin;
+    }
+    use Options;
+
+    /**
+     * Interval spec period designators
+     */
+    const PERIOD_PREFIX = 'P';
+    const PERIOD_YEARS = 'Y';
+    const PERIOD_MONTHS = 'M';
+    const PERIOD_DAYS = 'D';
+    const PERIOD_TIME_PREFIX = 'T';
+    const PERIOD_HOURS = 'H';
+    const PERIOD_MINUTES = 'M';
+    const PERIOD_SECONDS = 'S';
+
+    /**
+     * A translator to ... er ... translate stuff
+     *
+     * @var \Symfony\Component\Translation\TranslatorInterface
+     */
+    protected static $translator;
+
+    /**
+     * @var array|null
+     */
+    protected static $cascadeFactors;
+
+    /**
+     * @var array
+     */
+    protected static $formats = [
+        'y' => 'y',
+        'Y' => 'y',
+        'o' => 'y',
+        'm' => 'm',
+        'n' => 'm',
+        'W' => 'weeks',
+        'd' => 'd',
+        'j' => 'd',
+        'z' => 'd',
+        'h' => 'h',
+        'g' => 'h',
+        'H' => 'h',
+        'G' => 'h',
+        'i' => 'i',
+        's' => 's',
+        'u' => 'micro',
+        'v' => 'milli',
+    ];
+
+    /**
+     * @var array|null
+     */
+    private static $flipCascadeFactors;
+
+    /**
+     * The registered macros.
+     *
+     * @var array
+     */
+    protected static $macros = [];
+
+    /**
+     * Timezone handler for settings() method.
+     *
+     * @var mixed
+     */
+    protected $tzName;
+
+    /**
+     * Set the instance's timezone from a string or object and add/subtract the offset difference.
+     *
+     * @param \DateTimeZone|string $tzName
+     *
+     * @return static
+     */
+    public function shiftTimezone($tzName)
+    {
+        $this->tzName = $tzName;
+
+        return $this;
+    }
+
+    /**
+     * Mapping of units and factors for cascading.
+     *
+     * Should only be modified by changing the factors or referenced constants.
+     *
+     * @return array
+     */
+    public static function getCascadeFactors()
+    {
+        return static::$cascadeFactors ?: [
+            'milliseconds' => [Carbon::MICROSECONDS_PER_MILLISECOND, 'microseconds'],
+            'seconds' => [Carbon::MILLISECONDS_PER_SECOND, 'milliseconds'],
+            'minutes' => [Carbon::SECONDS_PER_MINUTE, 'seconds'],
+            'hours' => [Carbon::MINUTES_PER_HOUR, 'minutes'],
+            'dayz' => [Carbon::HOURS_PER_DAY, 'hours'],
+            'weeks' => [Carbon::DAYS_PER_WEEK, 'dayz'],
+            'months' => [Carbon::WEEKS_PER_MONTH, 'weeks'],
+            'years' => [Carbon::MONTHS_PER_YEAR, 'months'],
+        ];
+    }
+
+    private static function standardizeUnit($unit)
+    {
+        $unit = rtrim($unit, 'sz').'s';
+
+        return $unit === 'days' ? 'dayz' : $unit;
+    }
+
+    private static function getFlipCascadeFactors()
+    {
+        if (!self::$flipCascadeFactors) {
+            self::$flipCascadeFactors = [];
+
+            foreach (static::getCascadeFactors() as $to => [$factor, $from]) {
+                self::$flipCascadeFactors[self::standardizeUnit($from)] = [self::standardizeUnit($to), $factor];
+            }
+        }
+
+        return self::$flipCascadeFactors;
+    }
+
+    /**
+     * Set default cascading factors for ->cascade() method.
+     *
+     * @param array $cascadeFactors
+     */
+    public static function setCascadeFactors(array $cascadeFactors)
+    {
+        self::$flipCascadeFactors = null;
+        static::$cascadeFactors = $cascadeFactors;
+    }
+
+    ///////////////////////////////////////////////////////////////////
+    //////////////////////////// CONSTRUCTORS /////////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    /**
+     * Create a new CarbonInterval instance.
+     *
+     * @param int|null $years
+     * @param int|null $months
+     * @param int|null $weeks
+     * @param int|null $days
+     * @param int|null $hours
+     * @param int|null $minutes
+     * @param int|null $seconds
+     * @param int|null $microseconds
+     *
+     * @throws Exception when the interval_spec (passed as $years) cannot be parsed as an interval.
+     */
+    public function __construct($years = 1, $months = null, $weeks = null, $days = null, $hours = null, $minutes = null, $seconds = null, $microseconds = null)
+    {
+        if ($years instanceof Closure) {
+            $this->step = $years;
+            $years = null;
+        }
+
+        if ($years instanceof DateInterval) {
+            parent::__construct(static::getDateIntervalSpec($years));
+            $this->f = $years->f;
+            static::copyNegativeUnits($years, $this);
+
+            return;
+        }
+
+        $spec = $years;
+
+        if (!\is_string($spec) || (float) $years || preg_match('/^[0-9.]/', $years)) {
+            $spec = static::PERIOD_PREFIX;
+
+            $spec .= $years > 0 ? $years.static::PERIOD_YEARS : '';
+            $spec .= $months > 0 ? $months.static::PERIOD_MONTHS : '';
+
+            $specDays = 0;
+            $specDays += $weeks > 0 ? $weeks * static::getDaysPerWeek() : 0;
+            $specDays += $days > 0 ? $days : 0;
+
+            $spec .= $specDays > 0 ? $specDays.static::PERIOD_DAYS : '';
+
+            if ($hours > 0 || $minutes > 0 || $seconds > 0) {
+                $spec .= static::PERIOD_TIME_PREFIX;
+                $spec .= $hours > 0 ? $hours.static::PERIOD_HOURS : '';
+                $spec .= $minutes > 0 ? $minutes.static::PERIOD_MINUTES : '';
+                $spec .= $seconds > 0 ? $seconds.static::PERIOD_SECONDS : '';
+            }
+
+            if ($spec === static::PERIOD_PREFIX) {
+                // Allow the zero interval.
+                $spec .= '0'.static::PERIOD_YEARS;
+            }
+        }
+
+        parent::__construct($spec);
+
+        if ($microseconds !== null) {
+            $this->f = $microseconds / Carbon::MICROSECONDS_PER_SECOND;
+        }
+    }
+
+    /**
+     * Returns the factor for a given source-to-target couple.
+     *
+     * @param string $source
+     * @param string $target
+     *
+     * @return int|null
+     */
+    public static function getFactor($source, $target)
+    {
+        $source = self::standardizeUnit($source);
+        $target = self::standardizeUnit($target);
+        $factors = static::getFlipCascadeFactors();
+
+        if (isset($factors[$source])) {
+            [$to, $factor] = $factors[$source];
+
+            if ($to === $target) {
+                return $factor;
+            }
+
+            return $factor * static::getFactor($to, $target);
+        }
+
+        return null;
+    }
+
+    /**
+     * Returns current config for days per week.
+     *
+     * @return int
+     */
+    public static function getDaysPerWeek()
+    {
+        return static::getFactor('dayz', 'weeks') ?: Carbon::DAYS_PER_WEEK;
+    }
+
+    /**
+     * Returns current config for hours per day.
+     *
+     * @return int
+     */
+    public static function getHoursPerDay()
+    {
+        return static::getFactor('hours', 'dayz') ?: Carbon::HOURS_PER_DAY;
+    }
+
+    /**
+     * Returns current config for minutes per hour.
+     *
+     * @return int
+     */
+    public static function getMinutesPerHour()
+    {
+        return static::getFactor('minutes', 'hours') ?: Carbon::MINUTES_PER_HOUR;
+    }
+
+    /**
+     * Returns current config for seconds per minute.
+     *
+     * @return int
+     */
+    public static function getSecondsPerMinute()
+    {
+        return static::getFactor('seconds', 'minutes') ?: Carbon::SECONDS_PER_MINUTE;
+    }
+
+    /**
+     * Returns current config for microseconds per second.
+     *
+     * @return int
+     */
+    public static function getMillisecondsPerSecond()
+    {
+        return static::getFactor('milliseconds', 'seconds') ?: Carbon::MILLISECONDS_PER_SECOND;
+    }
+
+    /**
+     * Returns current config for microseconds per second.
+     *
+     * @return int
+     */
+    public static function getMicrosecondsPerMillisecond()
+    {
+        return static::getFactor('microseconds', 'milliseconds') ?: Carbon::MICROSECONDS_PER_MILLISECOND;
+    }
+
+    /**
+     * Create a new CarbonInterval instance from specific values.
+     * This is an alias for the constructor that allows better fluent
+     * syntax as it allows you to do CarbonInterval::create(1)->fn() rather than
+     * (new CarbonInterval(1))->fn().
+     *
+     * @param int $years
+     * @param int $months
+     * @param int $weeks
+     * @param int $days
+     * @param int $hours
+     * @param int $minutes
+     * @param int $seconds
+     * @param int $microseconds
+     *
+     * @throws Exception when the interval_spec (passed as $years) cannot be parsed as an interval.
+     *
+     * @return static
+     */
+    public static function create($years = 1, $months = null, $weeks = null, $days = null, $hours = null, $minutes = null, $seconds = null, $microseconds = null)
+    {
+        return new static($years, $months, $weeks, $days, $hours, $minutes, $seconds, $microseconds);
+    }
+
+    /**
+     * Parse a string into a new CarbonInterval object according to the specified format.
+     *
+     * @example
+     * ```
+     * echo Carboninterval::createFromFormat('H:i', '1:30');
+     * ```
+     *
+     * @param string $format   Format of the $interval input string
+     * @param string $interval Input string to convert into an interval
+     *
+     * @throws Exception when the $interval cannot be parsed as an interval.
+     *
+     * @return static
+     */
+    public static function createFromFormat(string $format, ?string $interval)
+    {
+        $instance = new static(0);
+        $length = mb_strlen($format);
+
+        if (preg_match('/s([,.])([uv])$/', $format, $match)) {
+            $interval = explode($match[1], $interval);
+            $index = \count($interval) - 1;
+            $interval[$index] = str_pad($interval[$index], $match[2] === 'v' ? 3 : 6, '0');
+            $interval = implode($match[1], $interval);
+        }
+
+        $interval = $interval ?? '';
+
+        for ($index = 0; $index < $length; $index++) {
+            $expected = mb_substr($format, $index, 1);
+            $nextCharacter = mb_substr($interval, 0, 1);
+            $unit = static::$formats[$expected] ?? null;
+
+            if ($unit) {
+                if (!preg_match('/^-?\d+/', $interval, $match)) {
+                    throw new ParseErrorException('number', $nextCharacter);
+                }
+
+                $interval = mb_substr($interval, mb_strlen($match[0]));
+                $instance->$unit += (int) ($match[0]);
+
+                continue;
+            }
+
+            if ($nextCharacter !== $expected) {
+                throw new ParseErrorException(
+                    "'$expected'",
+                    $nextCharacter,
+                    'Allowed substitutes for interval formats are '.implode(', ', array_keys(static::$formats))."\n".
+                    'See https://php.net/manual/en/function.date.php for their meaning'
+                );
+            }
+
+            $interval = mb_substr($interval, 1);
+        }
+
+        if ($interval !== '') {
+            throw new ParseErrorException(
+                'end of string',
+                $interval
+            );
+        }
+
+        return $instance;
+    }
+
+    /**
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function copy()
+    {
+        $date = new static(0);
+        $date->copyProperties($this);
+        $date->step = $this->step;
+
+        return $date;
+    }
+
+    /**
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function clone()
+    {
+        return $this->copy();
+    }
+
+    /**
+     * Provide static helpers to create instances.  Allows CarbonInterval::years(3).
+     *
+     * Note: This is done using the magic method to allow static and instance methods to
+     *       have the same names.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @return static|null
+     */
+    public static function __callStatic($method, $parameters)
+    {
+        try {
+            $interval = new static(0);
+            $localStrictModeEnabled = $interval->localStrictModeEnabled;
+            $interval->localStrictModeEnabled = true;
+
+            $result = static::hasMacro($method)
+                ? static::bindMacroContext(null, function () use (&$method, &$parameters, &$interval) {
+                    return $interval->callMacro($method, $parameters);
+                })
+                : $interval->$method(...$parameters);
+
+            $interval->localStrictModeEnabled = $localStrictModeEnabled;
+
+            return $result;
+        } catch (BadFluentSetterException $exception) {
+            if (Carbon::isStrictModeEnabled()) {
+                throw new BadFluentConstructorException($method, 0, $exception);
+            }
+
+            return null;
+        }
+    }
+
+    /**
+     * Return the current context from inside a macro callee or a new one if static.
+     *
+     * @return static
+     */
+    protected static function this()
+    {
+        return end(static::$macroContextStack) ?: new static(0);
+    }
+
+    /**
+     * Creates a CarbonInterval from string.
+     *
+     * Format:
+     *
+     * Suffix | Unit    | Example | DateInterval expression
+     * -------|---------|---------|------------------------
+     * y      | years   |   1y    | P1Y
+     * mo     | months  |   3mo   | P3M
+     * w      | weeks   |   2w    | P2W
+     * d      | days    |  28d    | P28D
+     * h      | hours   |   4h    | PT4H
+     * m      | minutes |  12m    | PT12M
+     * s      | seconds |  59s    | PT59S
+     *
+     * e. g. `1w 3d 4h 32m 23s` is converted to 10 days 4 hours 32 minutes and 23 seconds.
+     *
+     * Special cases:
+     *  - An empty string will return a zero interval
+     *  - Fractions are allowed for weeks, days, hours and minutes and will be converted
+     *    and rounded to the next smaller value (caution: 0.5w = 4d)
+     *
+     * @param string $intervalDefinition
+     *
+     * @return static
+     */
+    public static function fromString($intervalDefinition)
+    {
+        if (empty($intervalDefinition)) {
+            return new static(0);
+        }
+
+        $years = 0;
+        $months = 0;
+        $weeks = 0;
+        $days = 0;
+        $hours = 0;
+        $minutes = 0;
+        $seconds = 0;
+        $milliseconds = 0;
+        $microseconds = 0;
+
+        $pattern = '/(\d+(?:\.\d+)?)\h*([^\d\h]*)/i';
+        preg_match_all($pattern, $intervalDefinition, $parts, PREG_SET_ORDER);
+
+        while ([$part, $value, $unit] = array_shift($parts)) {
+            $intValue = (int) $value;
+            $fraction = (float) $value - $intValue;
+
+            // Fix calculation precision
+            switch (round($fraction, 6)) {
+                case 1:
+                    $fraction = 0;
+                    $intValue++;
+
+                    break;
+                case 0:
+                    $fraction = 0;
+
+                    break;
+            }
+
+            switch ($unit === 'µs' ? 'µs' : strtolower($unit)) {
+                case 'millennia':
+                case 'millennium':
+                    $years += $intValue * CarbonInterface::YEARS_PER_MILLENNIUM;
+
+                    break;
+
+                case 'century':
+                case 'centuries':
+                    $years += $intValue * CarbonInterface::YEARS_PER_CENTURY;
+
+                    break;
+
+                case 'decade':
+                case 'decades':
+                    $years += $intValue * CarbonInterface::YEARS_PER_DECADE;
+
+                    break;
+
+                case 'year':
+                case 'years':
+                case 'y':
+                    $years += $intValue;
+
+                    break;
+
+                case 'quarter':
+                case 'quarters':
+                    $months += $intValue * CarbonInterface::MONTHS_PER_QUARTER;
+
+                    break;
+
+                case 'month':
+                case 'months':
+                case 'mo':
+                    $months += $intValue;
+
+                    break;
+
+                case 'week':
+                case 'weeks':
+                case 'w':
+                    $weeks += $intValue;
+
+                    if ($fraction) {
+                        $parts[] = [null, $fraction * static::getDaysPerWeek(), 'd'];
+                    }
+
+                    break;
+
+                case 'day':
+                case 'days':
+                case 'd':
+                    $days += $intValue;
+
+                    if ($fraction) {
+                        $parts[] = [null, $fraction * static::getHoursPerDay(), 'h'];
+                    }
+
+                    break;
+
+                case 'hour':
+                case 'hours':
+                case 'h':
+                    $hours += $intValue;
+
+                    if ($fraction) {
+                        $parts[] = [null, $fraction * static::getMinutesPerHour(), 'm'];
+                    }
+
+                    break;
+
+                case 'minute':
+                case 'minutes':
+                case 'm':
+                    $minutes += $intValue;
+
+                    if ($fraction) {
+                        $parts[] = [null, $fraction * static::getSecondsPerMinute(), 's'];
+                    }
+
+                    break;
+
+                case 'second':
+                case 'seconds':
+                case 's':
+                    $seconds += $intValue;
+
+                    if ($fraction) {
+                        $parts[] = [null, $fraction * static::getMillisecondsPerSecond(), 'ms'];
+                    }
+
+                    break;
+
+                case 'millisecond':
+                case 'milliseconds':
+                case 'milli':
+                case 'ms':
+                    $milliseconds += $intValue;
+
+                    if ($fraction) {
+                        $microseconds += round($fraction * static::getMicrosecondsPerMillisecond());
+                    }
+
+                    break;
+
+                case 'microsecond':
+                case 'microseconds':
+                case 'micro':
+                case 'µs':
+                    $microseconds += $intValue;
+
+                    break;
+
+                default:
+                    throw new InvalidIntervalException(
+                        sprintf('Invalid part %s in definition %s', $part, $intervalDefinition)
+                    );
+            }
+        }
+
+        return new static($years, $months, $weeks, $days, $hours, $minutes, $seconds, $milliseconds * Carbon::MICROSECONDS_PER_MILLISECOND + $microseconds);
+    }
+
+    /**
+     * Creates a CarbonInterval from string using a different locale.
+     *
+     * @param string      $interval interval string in the given language (may also contain English).
+     * @param string|null $locale   if locale is null or not specified, current global locale will be used instead.
+     *
+     * @return static
+     */
+    public static function parseFromLocale($interval, $locale = null)
+    {
+        return static::fromString(Carbon::translateTimeString($interval, $locale ?: static::getLocale(), 'en'));
+    }
+
+    private static function castIntervalToClass(DateInterval $interval, string $className)
+    {
+        $mainClass = DateInterval::class;
+
+        if (!is_a($className, $mainClass, true)) {
+            throw new InvalidCastException("$className is not a sub-class of $mainClass.");
+        }
+
+        $microseconds = $interval->f;
+        $instance = new $className(static::getDateIntervalSpec($interval));
+
+        if ($microseconds) {
+            $instance->f = $microseconds;
+        }
+
+        if ($interval instanceof self && is_a($className, self::class, true)) {
+            static::copyStep($interval, $instance);
+        }
+
+        static::copyNegativeUnits($interval, $instance);
+
+        return $instance;
+    }
+
+    private static function copyNegativeUnits(DateInterval $from, DateInterval $to): void
+    {
+        $to->invert = $from->invert;
+
+        foreach (['y', 'm', 'd', 'h', 'i', 's'] as $unit) {
+            if ($from->$unit < 0) {
+                $to->$unit *= -1;
+            }
+        }
+    }
+
+    private static function copyStep(self $from, self $to): void
+    {
+        $to->setStep($from->getStep());
+    }
+
+    /**
+     * Cast the current instance into the given class.
+     *
+     * @param string $className The $className::instance() method will be called to cast the current object.
+     *
+     * @return DateInterval
+     */
+    public function cast(string $className)
+    {
+        return self::castIntervalToClass($this, $className);
+    }
+
+    /**
+     * Create a CarbonInterval instance from a DateInterval one.  Can not instance
+     * DateInterval objects created from DateTime::diff() as you can't externally
+     * set the $days field.
+     *
+     * @param DateInterval $interval
+     *
+     * @return static
+     */
+    public static function instance(DateInterval $interval)
+    {
+        return self::castIntervalToClass($interval, static::class);
+    }
+
+    /**
+     * Make a CarbonInterval instance from given variable if possible.
+     *
+     * Always return a new instance. Parse only strings and only these likely to be intervals (skip dates
+     * and recurrences). Throw an exception for invalid format, but otherwise return null.
+     *
+     * @param mixed|int|DateInterval|string|Closure|null $interval interval or number of the given $unit
+     * @param string|null                                $unit     if specified, $interval must be an integer
+     *
+     * @return static|null
+     */
+    public static function make($interval, $unit = null)
+    {
+        if ($unit) {
+            $interval = "$interval ".Carbon::pluralUnit($unit);
+        }
+
+        if ($interval instanceof DateInterval) {
+            return static::instance($interval);
+        }
+
+        if ($interval instanceof Closure) {
+            return new static($interval);
+        }
+
+        if (!\is_string($interval)) {
+            return null;
+        }
+
+        return static::makeFromString($interval);
+    }
+
+    protected static function makeFromString(string $interval)
+    {
+        $interval = preg_replace('/\s+/', ' ', trim($interval));
+
+        if (preg_match('/^P[T0-9]/', $interval)) {
+            return new static($interval);
+        }
+
+        if (preg_match('/^(?:\h*\d+(?:\.\d+)?\h*[a-z]+)+$/i', $interval)) {
+            return static::fromString($interval);
+        }
+
+        /** @var static $interval */
+        $interval = static::createFromDateString($interval);
+
+        return !$interval || $interval->isEmpty() ? null : $interval;
+    }
+
+    protected function resolveInterval($interval)
+    {
+        if (!($interval instanceof self)) {
+            return self::make($interval);
+        }
+
+        return $interval;
+    }
+
+    /**
+     * Sets up a DateInterval from the relative parts of the string.
+     *
+     * @param string $time
+     *
+     * @return static
+     *
+     * @link https://php.net/manual/en/dateinterval.createfromdatestring.php
+     */
+    #[ReturnTypeWillChange]
+    public static function createFromDateString($time)
+    {
+        $interval = @parent::createFromDateString(strtr($time, [
+            ',' => ' ',
+            ' and ' => ' ',
+        ]));
+
+        if ($interval instanceof DateInterval) {
+            $interval = static::instance($interval);
+        }
+
+        return $interval;
+    }
+
+    ///////////////////////////////////////////////////////////////////
+    ///////////////////////// GETTERS AND SETTERS /////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    /**
+     * Get a part of the CarbonInterval object.
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return int|float|string
+     */
+    public function get($name)
+    {
+        if (str_starts_with($name, 'total')) {
+            return $this->total(substr($name, 5));
+        }
+
+        switch ($name) {
+            case 'years':
+                return $this->y;
+
+            case 'months':
+                return $this->m;
+
+            case 'dayz':
+                return $this->d;
+
+            case 'hours':
+                return $this->h;
+
+            case 'minutes':
+                return $this->i;
+
+            case 'seconds':
+                return $this->s;
+
+            case 'milli':
+            case 'milliseconds':
+                return (int) (round($this->f * Carbon::MICROSECONDS_PER_SECOND) / Carbon::MICROSECONDS_PER_MILLISECOND);
+
+            case 'micro':
+            case 'microseconds':
+                return (int) round($this->f * Carbon::MICROSECONDS_PER_SECOND);
+
+            case 'microExcludeMilli':
+                return (int) round($this->f * Carbon::MICROSECONDS_PER_SECOND) % Carbon::MICROSECONDS_PER_MILLISECOND;
+
+            case 'weeks':
+                return (int) ($this->d / static::getDaysPerWeek());
+
+            case 'daysExcludeWeeks':
+            case 'dayzExcludeWeeks':
+                return $this->d % static::getDaysPerWeek();
+
+            case 'locale':
+                return $this->getTranslatorLocale();
+
+            default:
+                throw new UnknownGetterException($name);
+        }
+    }
+
+    /**
+     * Get a part of the CarbonInterval object.
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return int|float|string
+     */
+    public function __get($name)
+    {
+        return $this->get($name);
+    }
+
+    /**
+     * Set a part of the CarbonInterval object.
+     *
+     * @param string|array $name
+     * @param int          $value
+     *
+     * @throws UnknownSetterException
+     *
+     * @return $this
+     */
+    public function set($name, $value = null)
+    {
+        $properties = \is_array($name) ? $name : [$name => $value];
+
+        foreach ($properties as $key => $value) {
+            switch (Carbon::singularUnit(rtrim($key, 'z'))) {
+                case 'year':
+                    $this->y = $value;
+
+                    break;
+
+                case 'month':
+                    $this->m = $value;
+
+                    break;
+
+                case 'week':
+                    $this->d = $value * static::getDaysPerWeek();
+
+                    break;
+
+                case 'day':
+                    $this->d = $value;
+
+                    break;
+
+                case 'daysexcludeweek':
+                case 'dayzexcludeweek':
+                    $this->d = $this->weeks * static::getDaysPerWeek() + $value;
+
+                    break;
+
+                case 'hour':
+                    $this->h = $value;
+
+                    break;
+
+                case 'minute':
+                    $this->i = $value;
+
+                    break;
+
+                case 'second':
+                    $this->s = $value;
+
+                    break;
+
+                case 'milli':
+                case 'millisecond':
+                    $this->microseconds = $value * Carbon::MICROSECONDS_PER_MILLISECOND + $this->microseconds % Carbon::MICROSECONDS_PER_MILLISECOND;
+
+                    break;
+
+                case 'micro':
+                case 'microsecond':
+                    $this->f = $value / Carbon::MICROSECONDS_PER_SECOND;
+
+                    break;
+
+                default:
+                    if ($this->localStrictModeEnabled ?? Carbon::isStrictModeEnabled()) {
+                        throw new UnknownSetterException($key);
+                    }
+
+                    $this->$key = $value;
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Set a part of the CarbonInterval object.
+     *
+     * @param string $name
+     * @param int    $value
+     *
+     * @throws UnknownSetterException
+     */
+    public function __set($name, $value)
+    {
+        $this->set($name, $value);
+    }
+
+    /**
+     * Allow setting of weeks and days to be cumulative.
+     *
+     * @param int $weeks Number of weeks to set
+     * @param int $days  Number of days to set
+     *
+     * @return static
+     */
+    public function weeksAndDays($weeks, $days)
+    {
+        $this->dayz = ($weeks * static::getDaysPerWeek()) + $days;
+
+        return $this;
+    }
+
+    /**
+     * Returns true if the interval is empty for each unit.
+     *
+     * @return bool
+     */
+    public function isEmpty()
+    {
+        return $this->years === 0 &&
+            $this->months === 0 &&
+            $this->dayz === 0 &&
+            !$this->days &&
+            $this->hours === 0 &&
+            $this->minutes === 0 &&
+            $this->seconds === 0 &&
+            $this->microseconds === 0;
+    }
+
+    /**
+     * Register a custom macro.
+     *
+     * @example
+     * ```
+     * CarbonInterval::macro('twice', function () {
+     *   return $this->times(2);
+     * });
+     * echo CarbonInterval::hours(2)->twice();
+     * ```
+     *
+     * @param string          $name
+     * @param object|callable $macro
+     *
+     * @return void
+     */
+    public static function macro($name, $macro)
+    {
+        static::$macros[$name] = $macro;
+    }
+
+    /**
+     * Register macros from a mixin object.
+     *
+     * @example
+     * ```
+     * CarbonInterval::mixin(new class {
+     *   public function daysToHours() {
+     *     return function () {
+     *       $this->hours += $this->days;
+     *       $this->days = 0;
+     *
+     *       return $this;
+     *     };
+     *   }
+     *   public function hoursToDays() {
+     *     return function () {
+     *       $this->days += $this->hours;
+     *       $this->hours = 0;
+     *
+     *       return $this;
+     *     };
+     *   }
+     * });
+     * echo CarbonInterval::hours(5)->hoursToDays() . "\n";
+     * echo CarbonInterval::days(5)->daysToHours() . "\n";
+     * ```
+     *
+     * @param object|string $mixin
+     *
+     * @throws ReflectionException
+     *
+     * @return void
+     */
+    public static function mixin($mixin)
+    {
+        static::baseMixin($mixin);
+    }
+
+    /**
+     * Check if macro is registered.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public static function hasMacro($name)
+    {
+        return isset(static::$macros[$name]);
+    }
+
+    /**
+     * Call given macro.
+     *
+     * @param string $name
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    protected function callMacro($name, $parameters)
+    {
+        $macro = static::$macros[$name];
+
+        if ($macro instanceof Closure) {
+            $boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
+
+            return ($boundMacro ?: $macro)(...$parameters);
+        }
+
+        return $macro(...$parameters);
+    }
+
+    /**
+     * Allow fluent calls on the setters... CarbonInterval::years(3)->months(5)->day().
+     *
+     * Note: This is done using the magic method to allow static and instance methods to
+     *       have the same names.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @throws BadFluentSetterException|Throwable
+     *
+     * @return static
+     */
+    public function __call($method, $parameters)
+    {
+        if (static::hasMacro($method)) {
+            return static::bindMacroContext($this, function () use (&$method, &$parameters) {
+                return $this->callMacro($method, $parameters);
+            });
+        }
+
+        $roundedValue = $this->callRoundMethod($method, $parameters);
+
+        if ($roundedValue !== null) {
+            return $roundedValue;
+        }
+
+        if (preg_match('/^(?<method>add|sub)(?<unit>[A-Z].*)$/', $method, $match)) {
+            return $this->{$match['method']}($parameters[0], $match['unit']);
+        }
+
+        try {
+            $this->set($method, \count($parameters) === 0 ? 1 : $parameters[0]);
+        } catch (UnknownSetterException $exception) {
+            if ($this->localStrictModeEnabled ?? Carbon::isStrictModeEnabled()) {
+                throw new BadFluentSetterException($method, 0, $exception);
+            }
+        }
+
+        return $this;
+    }
+
+    protected function getForHumansInitialVariables($syntax, $short)
+    {
+        if (\is_array($syntax)) {
+            return $syntax;
+        }
+
+        if (\is_int($short)) {
+            return [
+                'parts' => $short,
+                'short' => false,
+            ];
+        }
+
+        if (\is_bool($syntax)) {
+            return [
+                'short' => $syntax,
+                'syntax' => CarbonInterface::DIFF_ABSOLUTE,
+            ];
+        }
+
+        return [];
+    }
+
+    /**
+     * @param mixed $syntax
+     * @param mixed $short
+     * @param mixed $parts
+     * @param mixed $options
+     *
+     * @return array
+     */
+    protected function getForHumansParameters($syntax = null, $short = false, $parts = -1, $options = null)
+    {
+        $optionalSpace = ' ';
+        $default = $this->getTranslationMessage('list.0') ?? $this->getTranslationMessage('list') ?? ' ';
+        $join = $default === '' ? '' : ' ';
+        $altNumbers = false;
+        $aUnit = false;
+        $minimumUnit = 's';
+        extract($this->getForHumansInitialVariables($syntax, $short));
+
+        if ($syntax === null) {
+            $syntax = CarbonInterface::DIFF_ABSOLUTE;
+        }
+
+        if ($parts === -1) {
+            $parts = INF;
+        }
+
+        if ($options === null) {
+            $options = static::getHumanDiffOptions();
+        }
+
+        if ($join === false) {
+            $join = ' ';
+        } elseif ($join === true) {
+            $join = [
+                $default,
+                $this->getTranslationMessage('list.1') ?? $default,
+            ];
+        }
+
+        if ($altNumbers) {
+            if ($altNumbers !== true) {
+                $language = new Language($this->locale);
+                $altNumbers = \in_array($language->getCode(), (array) $altNumbers);
+            }
+        }
+
+        if (\is_array($join)) {
+            [$default, $last] = $join;
+
+            if ($default !== ' ') {
+                $optionalSpace = '';
+            }
+
+            $join = function ($list) use ($default, $last) {
+                if (\count($list) < 2) {
+                    return implode('', $list);
+                }
+
+                $end = array_pop($list);
+
+                return implode($default, $list).$last.$end;
+            };
+        }
+
+        if (\is_string($join)) {
+            if ($join !== ' ') {
+                $optionalSpace = '';
+            }
+
+            $glue = $join;
+            $join = function ($list) use ($glue) {
+                return implode($glue, $list);
+            };
+        }
+
+        $interpolations = [
+            ':optional-space' => $optionalSpace,
+        ];
+
+        return [$syntax, $short, $parts, $options, $join, $aUnit, $altNumbers, $interpolations, $minimumUnit];
+    }
+
+    protected static function getRoundingMethodFromOptions(int $options): ?string
+    {
+        if ($options & CarbonInterface::ROUND) {
+            return 'round';
+        }
+
+        if ($options & CarbonInterface::CEIL) {
+            return 'ceil';
+        }
+
+        if ($options & CarbonInterface::FLOOR) {
+            return 'floor';
+        }
+
+        return null;
+    }
+
+    /**
+     * Returns interval values as an array where key are the unit names and values the counts.
+     *
+     * @return int[]
+     */
+    public function toArray()
+    {
+        return [
+            'years' => $this->years,
+            'months' => $this->months,
+            'weeks' => $this->weeks,
+            'days' => $this->daysExcludeWeeks,
+            'hours' => $this->hours,
+            'minutes' => $this->minutes,
+            'seconds' => $this->seconds,
+            'microseconds' => $this->microseconds,
+        ];
+    }
+
+    /**
+     * Returns interval non-zero values as an array where key are the unit names and values the counts.
+     *
+     * @return int[]
+     */
+    public function getNonZeroValues()
+    {
+        return array_filter($this->toArray(), 'intval');
+    }
+
+    /**
+     * Returns interval values as an array where key are the unit names and values the counts
+     * from the biggest non-zero one the the smallest non-zero one.
+     *
+     * @return int[]
+     */
+    public function getValuesSequence()
+    {
+        $nonZeroValues = $this->getNonZeroValues();
+
+        if ($nonZeroValues === []) {
+            return [];
+        }
+
+        $keys = array_keys($nonZeroValues);
+        $firstKey = $keys[0];
+        $lastKey = $keys[\count($keys) - 1];
+        $values = [];
+        $record = false;
+
+        foreach ($this->toArray() as $unit => $count) {
+            if ($unit === $firstKey) {
+                $record = true;
+            }
+
+            if ($record) {
+                $values[$unit] = $count;
+            }
+
+            if ($unit === $lastKey) {
+                $record = false;
+            }
+        }
+
+        return $values;
+    }
+
+    /**
+     * Get the current interval in a human readable format in the current locale.
+     *
+     * @example
+     * ```
+     * echo CarbonInterval::fromString('4d 3h 40m')->forHumans() . "\n";
+     * echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['parts' => 2]) . "\n";
+     * echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['parts' => 3, 'join' => true]) . "\n";
+     * echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['short' => true]) . "\n";
+     * echo CarbonInterval::fromString('1d 24h')->forHumans(['join' => ' or ']) . "\n";
+     * echo CarbonInterval::fromString('1d 24h')->forHumans(['minimumUnit' => 'hour']) . "\n";
+     * ```
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'aUnit' entry, prefer "an hour" over "1 hour" if true
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           - 'minimumUnit' entry determines the smallest unit of time to display can be long or
+     *                           `  short form of the units, e.g. 'hour' or 'h' (default value: s)
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: -1: no limits)
+     * @param int       $options human diff options
+     *
+     * @throws Exception
+     *
+     * @return string
+     */
+    public function forHumans($syntax = null, $short = false, $parts = -1, $options = null)
+    {
+        [$syntax, $short, $parts, $options, $join, $aUnit, $altNumbers, $interpolations, $minimumUnit] = $this->getForHumansParameters($syntax, $short, $parts, $options);
+
+        $interval = [];
+
+        $syntax = (int) ($syntax === null ? CarbonInterface::DIFF_ABSOLUTE : $syntax);
+        $absolute = $syntax === CarbonInterface::DIFF_ABSOLUTE;
+        $relativeToNow = $syntax === CarbonInterface::DIFF_RELATIVE_TO_NOW;
+        $count = 1;
+        $unit = $short ? 's' : 'second';
+        $isFuture = $this->invert === 1;
+        $transId = $relativeToNow ? ($isFuture ? 'from_now' : 'ago') : ($isFuture ? 'after' : 'before');
+
+        /** @var \Symfony\Component\Translation\Translator $translator */
+        $translator = $this->getLocalTranslator();
+
+        $handleDeclensions = function ($unit, $count) use ($interpolations, $transId, $translator, $altNumbers, $absolute) {
+            if (!$absolute) {
+                // Some languages have special pluralization for past and future tense.
+                $key = $unit.'_'.$transId;
+                $result = $this->translate($key, $interpolations, $count, $translator, $altNumbers);
+
+                if ($result !== $key) {
+                    return $result;
+                }
+            }
+
+            $result = $this->translate($unit, $interpolations, $count, $translator, $altNumbers);
+
+            if ($result !== $unit) {
+                return $result;
+            }
+
+            return null;
+        };
+
+        $intervalValues = $this;
+        $method = static::getRoundingMethodFromOptions($options);
+
+        if ($method) {
+            $previousCount = INF;
+
+            while (
+                \count($intervalValues->getNonZeroValues()) > $parts &&
+                ($count = \count($keys = array_keys($intervalValues->getValuesSequence()))) > 1
+            ) {
+                $intervalValues = $this->copy()->roundUnit(
+                    $keys[min($count, $previousCount - 1) - 2],
+                    1,
+                    $method
+                );
+                $previousCount = $count;
+            }
+        }
+
+        $diffIntervalArray = [
+            ['value' => $intervalValues->years,             'unit' => 'year',        'unitShort' => 'y'],
+            ['value' => $intervalValues->months,            'unit' => 'month',       'unitShort' => 'm'],
+            ['value' => $intervalValues->weeks,             'unit' => 'week',        'unitShort' => 'w'],
+            ['value' => $intervalValues->daysExcludeWeeks,  'unit' => 'day',         'unitShort' => 'd'],
+            ['value' => $intervalValues->hours,             'unit' => 'hour',        'unitShort' => 'h'],
+            ['value' => $intervalValues->minutes,           'unit' => 'minute',      'unitShort' => 'min'],
+            ['value' => $intervalValues->seconds,           'unit' => 'second',      'unitShort' => 's'],
+            ['value' => $intervalValues->milliseconds,      'unit' => 'millisecond', 'unitShort' => 'ms'],
+            ['value' => $intervalValues->microExcludeMilli, 'unit' => 'microsecond', 'unitShort' => 'µs'],
+        ];
+
+        $transChoice = function ($short, $unitData) use ($absolute, $handleDeclensions, $translator, $aUnit, $altNumbers, $interpolations) {
+            $count = $unitData['value'];
+
+            if ($short) {
+                $result = $handleDeclensions($unitData['unitShort'], $count);
+
+                if ($result !== null) {
+                    return $result;
+                }
+            } elseif ($aUnit) {
+                $result = $handleDeclensions('a_'.$unitData['unit'], $count);
+
+                if ($result !== null) {
+                    return $result;
+                }
+            }
+
+            if (!$absolute) {
+                return $handleDeclensions($unitData['unit'], $count);
+            }
+
+            return $this->translate($unitData['unit'], $interpolations, $count, $translator, $altNumbers);
+        };
+
+        $fallbackUnit = ['second', 's'];
+        foreach ($diffIntervalArray as $diffIntervalData) {
+            if ($diffIntervalData['value'] > 0) {
+                $unit = $short ? $diffIntervalData['unitShort'] : $diffIntervalData['unit'];
+                $count = $diffIntervalData['value'];
+                $interval[] = $transChoice($short, $diffIntervalData);
+            } elseif ($options & CarbonInterface::SEQUENTIAL_PARTS_ONLY && \count($interval) > 0) {
+                break;
+            }
+
+            // break the loop after we get the required number of parts in array
+            if (\count($interval) >= $parts) {
+                break;
+            }
+
+            // break the loop after we have reached the minimum unit
+            if (\in_array($minimumUnit, [$diffIntervalData['unit'], $diffIntervalData['unitShort']])) {
+                $fallbackUnit = [$diffIntervalData['unit'], $diffIntervalData['unitShort']];
+
+                break;
+            }
+        }
+
+        if (\count($interval) === 0) {
+            if ($relativeToNow && $options & CarbonInterface::JUST_NOW) {
+                $key = 'diff_now';
+                $translation = $this->translate($key, $interpolations, null, $translator);
+
+                if ($translation !== $key) {
+                    return $translation;
+                }
+            }
+
+            $count = $options & CarbonInterface::NO_ZERO_DIFF ? 1 : 0;
+            $unit = $fallbackUnit[$short ? 1 : 0];
+            $interval[] = $this->translate($unit, $interpolations, $count, $translator, $altNumbers);
+        }
+
+        // join the interval parts by a space
+        $time = $join($interval);
+
+        unset($diffIntervalArray, $interval);
+
+        if ($absolute) {
+            return $time;
+        }
+
+        $isFuture = $this->invert === 1;
+
+        $transId = $relativeToNow ? ($isFuture ? 'from_now' : 'ago') : ($isFuture ? 'after' : 'before');
+
+        if ($parts === 1) {
+            if ($relativeToNow && $unit === 'day') {
+                if ($count === 1 && $options & CarbonInterface::ONE_DAY_WORDS) {
+                    $key = $isFuture ? 'diff_tomorrow' : 'diff_yesterday';
+                    $translation = $this->translate($key, $interpolations, null, $translator);
+
+                    if ($translation !== $key) {
+                        return $translation;
+                    }
+                }
+
+                if ($count === 2 && $options & CarbonInterface::TWO_DAY_WORDS) {
+                    $key = $isFuture ? 'diff_after_tomorrow' : 'diff_before_yesterday';
+                    $translation = $this->translate($key, $interpolations, null, $translator);
+
+                    if ($translation !== $key) {
+                        return $translation;
+                    }
+                }
+            }
+
+            $aTime = $aUnit ? $handleDeclensions('a_'.$unit, $count) : null;
+
+            $time = $aTime ?: $handleDeclensions($unit, $count) ?: $time;
+        }
+
+        $time = [':time' => $time];
+
+        return $this->translate($transId, array_merge($time, $interpolations, $time), null, $translator);
+    }
+
+    /**
+     * Format the instance as a string using the forHumans() function.
+     *
+     * @throws Exception
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        $format = $this->localToStringFormat;
+
+        if ($format) {
+            if ($format instanceof Closure) {
+                return $format($this);
+            }
+
+            return $this->format($format);
+        }
+
+        return $this->forHumans();
+    }
+
+    /**
+     * Return native DateInterval PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(CarbonInterval::hours(2)->toDateInterval());
+     * ```
+     *
+     * @return DateInterval
+     */
+    public function toDateInterval()
+    {
+        return self::castIntervalToClass($this, DateInterval::class);
+    }
+
+    /**
+     * Convert the interval to a CarbonPeriod.
+     *
+     * @param array ...$params Start date, [end date or recurrences] and optional settings.
+     *
+     * @return CarbonPeriod
+     */
+    public function toPeriod(...$params)
+    {
+        return CarbonPeriod::create($this, ...$params);
+    }
+
+    /**
+     * Invert the interval.
+     *
+     * @param bool|int $inverted if a parameter is passed, the passed value casted as 1 or 0 is used
+     *                           as the new value of the ->invert property.
+     *
+     * @return $this
+     */
+    public function invert($inverted = null)
+    {
+        $this->invert = (\func_num_args() === 0 ? !$this->invert : $inverted) ? 1 : 0;
+
+        return $this;
+    }
+
+    protected function solveNegativeInterval()
+    {
+        if (!$this->isEmpty() && $this->years <= 0 && $this->months <= 0 && $this->dayz <= 0 && $this->hours <= 0 && $this->minutes <= 0 && $this->seconds <= 0 && $this->microseconds <= 0) {
+            $this->years *= -1;
+            $this->months *= -1;
+            $this->dayz *= -1;
+            $this->hours *= -1;
+            $this->minutes *= -1;
+            $this->seconds *= -1;
+            $this->microseconds *= -1;
+            $this->invert();
+        }
+
+        return $this;
+    }
+
+    /**
+     * Add the passed interval to the current instance.
+     *
+     * @param string|DateInterval $unit
+     * @param int|float           $value
+     *
+     * @return $this
+     */
+    public function add($unit, $value = 1)
+    {
+        if (is_numeric($unit)) {
+            [$value, $unit] = [$unit, $value];
+        }
+
+        if (\is_string($unit) && !preg_match('/^\s*\d/', $unit)) {
+            $unit = "$value $unit";
+            $value = 1;
+        }
+
+        $interval = static::make($unit);
+
+        if (!$interval) {
+            throw new InvalidIntervalException('This type of data cannot be added/subtracted.');
+        }
+
+        if ($value !== 1) {
+            $interval->times($value);
+        }
+
+        $sign = ($this->invert === 1) !== ($interval->invert === 1) ? -1 : 1;
+        $this->years += $interval->y * $sign;
+        $this->months += $interval->m * $sign;
+        $this->dayz += ($interval->days === false ? $interval->d : $interval->days) * $sign;
+        $this->hours += $interval->h * $sign;
+        $this->minutes += $interval->i * $sign;
+        $this->seconds += $interval->s * $sign;
+        $this->microseconds += $interval->microseconds * $sign;
+
+        $this->solveNegativeInterval();
+
+        return $this;
+    }
+
+    /**
+     * Subtract the passed interval to the current instance.
+     *
+     * @param string|DateInterval $unit
+     * @param int|float           $value
+     *
+     * @return $this
+     */
+    public function sub($unit, $value = 1)
+    {
+        if (is_numeric($unit)) {
+            [$value, $unit] = [$unit, $value];
+        }
+
+        return $this->add($unit, -(float) $value);
+    }
+
+    /**
+     * Subtract the passed interval to the current instance.
+     *
+     * @param string|DateInterval $unit
+     * @param int|float           $value
+     *
+     * @return $this
+     */
+    public function subtract($unit, $value = 1)
+    {
+        return $this->sub($unit, $value);
+    }
+
+    /**
+     * Add given parameters to the current interval.
+     *
+     * @param int $years
+     * @param int $months
+     * @param int|float $weeks
+     * @param int|float $days
+     * @param int|float $hours
+     * @param int|float $minutes
+     * @param int|float $seconds
+     * @param int|float $microseconds
+     *
+     * @return $this
+     */
+    public function plus(
+        $years = 0,
+        $months = 0,
+        $weeks = 0,
+        $days = 0,
+        $hours = 0,
+        $minutes = 0,
+        $seconds = 0,
+        $microseconds = 0
+    ): self {
+        return $this->add("
+            $years years $months months $weeks weeks $days days
+            $hours hours $minutes minutes $seconds seconds $microseconds microseconds
+        ");
+    }
+
+    /**
+     * Add given parameters to the current interval.
+     *
+     * @param int $years
+     * @param int $months
+     * @param int|float $weeks
+     * @param int|float $days
+     * @param int|float $hours
+     * @param int|float $minutes
+     * @param int|float $seconds
+     * @param int|float $microseconds
+     *
+     * @return $this
+     */
+    public function minus(
+        $years = 0,
+        $months = 0,
+        $weeks = 0,
+        $days = 0,
+        $hours = 0,
+        $minutes = 0,
+        $seconds = 0,
+        $microseconds = 0
+    ): self {
+        return $this->sub("
+            $years years $months months $weeks weeks $days days
+            $hours hours $minutes minutes $seconds seconds $microseconds microseconds
+        ");
+    }
+
+    /**
+     * Multiply current instance given number of times. times() is naive, it multiplies each unit
+     * (so day can be greater than 31, hour can be greater than 23, etc.) and the result is rounded
+     * separately for each unit.
+     *
+     * Use times() when you want a fast and approximated calculation that does not cascade units.
+     *
+     * For a precise and cascaded calculation,
+     *
+     * @see multiply()
+     *
+     * @param float|int $factor
+     *
+     * @return $this
+     */
+    public function times($factor)
+    {
+        if ($factor < 0) {
+            $this->invert = $this->invert ? 0 : 1;
+            $factor = -$factor;
+        }
+
+        $this->years = (int) round($this->years * $factor);
+        $this->months = (int) round($this->months * $factor);
+        $this->dayz = (int) round($this->dayz * $factor);
+        $this->hours = (int) round($this->hours * $factor);
+        $this->minutes = (int) round($this->minutes * $factor);
+        $this->seconds = (int) round($this->seconds * $factor);
+        $this->microseconds = (int) round($this->microseconds * $factor);
+
+        return $this;
+    }
+
+    /**
+     * Divide current instance by a given divider. shares() is naive, it divides each unit separately
+     * and the result is rounded for each unit. So 5 hours and 20 minutes shared by 3 becomes 2 hours
+     * and 7 minutes.
+     *
+     * Use shares() when you want a fast and approximated calculation that does not cascade units.
+     *
+     * For a precise and cascaded calculation,
+     *
+     * @see divide()
+     *
+     * @param float|int $divider
+     *
+     * @return $this
+     */
+    public function shares($divider)
+    {
+        return $this->times(1 / $divider);
+    }
+
+    protected function copyProperties(self $interval, $ignoreSign = false)
+    {
+        $this->years = $interval->years;
+        $this->months = $interval->months;
+        $this->dayz = $interval->dayz;
+        $this->hours = $interval->hours;
+        $this->minutes = $interval->minutes;
+        $this->seconds = $interval->seconds;
+        $this->microseconds = $interval->microseconds;
+
+        if (!$ignoreSign) {
+            $this->invert = $interval->invert;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Multiply and cascade current instance by a given factor.
+     *
+     * @param float|int $factor
+     *
+     * @return $this
+     */
+    public function multiply($factor)
+    {
+        if ($factor < 0) {
+            $this->invert = $this->invert ? 0 : 1;
+            $factor = -$factor;
+        }
+
+        $yearPart = (int) floor($this->years * $factor); // Split calculation to prevent imprecision
+
+        if ($yearPart) {
+            $this->years -= $yearPart / $factor;
+        }
+
+        return $this->copyProperties(
+            static::create($yearPart)
+                ->microseconds(abs($this->totalMicroseconds) * $factor)
+                ->cascade(),
+            true
+        );
+    }
+
+    /**
+     * Divide and cascade current instance by a given divider.
+     *
+     * @param float|int $divider
+     *
+     * @return $this
+     */
+    public function divide($divider)
+    {
+        return $this->multiply(1 / $divider);
+    }
+
+    /**
+     * Get the interval_spec string of a date interval.
+     *
+     * @param DateInterval $interval
+     *
+     * @return string
+     */
+    public static function getDateIntervalSpec(DateInterval $interval)
+    {
+        $date = array_filter([
+            static::PERIOD_YEARS => abs($interval->y),
+            static::PERIOD_MONTHS => abs($interval->m),
+            static::PERIOD_DAYS => abs($interval->d),
+        ]);
+
+        $time = array_filter([
+            static::PERIOD_HOURS => abs($interval->h),
+            static::PERIOD_MINUTES => abs($interval->i),
+            static::PERIOD_SECONDS => abs($interval->s),
+        ]);
+
+        $specString = static::PERIOD_PREFIX;
+
+        foreach ($date as $key => $value) {
+            $specString .= $value.$key;
+        }
+
+        if (\count($time) > 0) {
+            $specString .= static::PERIOD_TIME_PREFIX;
+            foreach ($time as $key => $value) {
+                $specString .= $value.$key;
+            }
+        }
+
+        return $specString === static::PERIOD_PREFIX ? 'PT0S' : $specString;
+    }
+
+    /**
+     * Get the interval_spec string.
+     *
+     * @return string
+     */
+    public function spec()
+    {
+        return static::getDateIntervalSpec($this);
+    }
+
+    /**
+     * Comparing 2 date intervals.
+     *
+     * @param DateInterval $first
+     * @param DateInterval $second
+     *
+     * @return int
+     */
+    public static function compareDateIntervals(DateInterval $first, DateInterval $second)
+    {
+        $current = Carbon::now();
+        $passed = $current->avoidMutation()->add($second);
+        $current->add($first);
+
+        if ($current < $passed) {
+            return -1;
+        }
+        if ($current > $passed) {
+            return 1;
+        }
+
+        return 0;
+    }
+
+    /**
+     * Comparing with passed interval.
+     *
+     * @param DateInterval $interval
+     *
+     * @return int
+     */
+    public function compare(DateInterval $interval)
+    {
+        return static::compareDateIntervals($this, $interval);
+    }
+
+    private function invertCascade(array $values)
+    {
+        return $this->set(array_map(function ($value) {
+            return -$value;
+        }, $values))->doCascade(true)->invert();
+    }
+
+    private function doCascade(bool $deep)
+    {
+        $originalData = $this->toArray();
+        $originalData['milliseconds'] = (int) ($originalData['microseconds'] / static::getMicrosecondsPerMillisecond());
+        $originalData['microseconds'] = $originalData['microseconds'] % static::getMicrosecondsPerMillisecond();
+        $originalData['daysExcludeWeeks'] = $originalData['days'];
+        unset($originalData['days']);
+        $newData = $originalData;
+
+        foreach (static::getFlipCascadeFactors() as $source => [$target, $factor]) {
+            foreach (['source', 'target'] as $key) {
+                if ($$key === 'dayz') {
+                    $$key = 'daysExcludeWeeks';
+                }
+            }
+
+            $value = $newData[$source];
+            $modulo = ($factor + ($value % $factor)) % $factor;
+            $newData[$source] = $modulo;
+            $newData[$target] += ($value - $modulo) / $factor;
+        }
+
+        $positive = null;
+
+        if (!$deep) {
+            foreach ($newData as $value) {
+                if ($value) {
+                    if ($positive === null) {
+                        $positive = ($value > 0);
+
+                        continue;
+                    }
+
+                    if (($value > 0) !== $positive) {
+                        return $this->invertCascade($originalData)
+                            ->solveNegativeInterval();
+                    }
+                }
+            }
+        }
+
+        return $this->set($newData)
+            ->solveNegativeInterval();
+    }
+
+    /**
+     * Convert overflowed values into bigger units.
+     *
+     * @return $this
+     */
+    public function cascade()
+    {
+        return $this->doCascade(false);
+    }
+
+    public function hasNegativeValues(): bool
+    {
+        foreach ($this->toArray() as $value) {
+            if ($value < 0) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    public function hasPositiveValues(): bool
+    {
+        foreach ($this->toArray() as $value) {
+            if ($value > 0) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get amount of given unit equivalent to the interval.
+     *
+     * @param string $unit
+     *
+     * @throws UnknownUnitException|UnitNotConfiguredException
+     *
+     * @return float
+     */
+    public function total($unit)
+    {
+        $realUnit = $unit = strtolower($unit);
+
+        if (\in_array($unit, ['days', 'weeks'])) {
+            $realUnit = 'dayz';
+        } elseif (!\in_array($unit, ['microseconds', 'milliseconds', 'seconds', 'minutes', 'hours', 'dayz', 'months', 'years'])) {
+            throw new UnknownUnitException($unit);
+        }
+
+        $result = 0;
+        $cumulativeFactor = 0;
+        $unitFound = false;
+        $factors = static::getFlipCascadeFactors();
+        $daysPerWeek = static::getDaysPerWeek();
+
+        $values = [
+            'years' => $this->years,
+            'months' => $this->months,
+            'weeks' => (int) ($this->d / $daysPerWeek),
+            'dayz' => $this->d % $daysPerWeek,
+            'hours' => $this->hours,
+            'minutes' => $this->minutes,
+            'seconds' => $this->seconds,
+            'milliseconds' => (int) ($this->microseconds / Carbon::MICROSECONDS_PER_MILLISECOND),
+            'microseconds' => $this->microseconds % Carbon::MICROSECONDS_PER_MILLISECOND,
+        ];
+
+        if (isset($factors['dayz']) && $factors['dayz'][0] !== 'weeks') {
+            $values['dayz'] += $values['weeks'] * $daysPerWeek;
+            $values['weeks'] = 0;
+        }
+
+        foreach ($factors as $source => [$target, $factor]) {
+            if ($source === $realUnit) {
+                $unitFound = true;
+                $value = $values[$source];
+                $result += $value;
+                $cumulativeFactor = 1;
+            }
+
+            if ($factor === false) {
+                if ($unitFound) {
+                    break;
+                }
+
+                $result = 0;
+                $cumulativeFactor = 0;
+
+                continue;
+            }
+
+            if ($target === $realUnit) {
+                $unitFound = true;
+            }
+
+            if ($cumulativeFactor) {
+                $cumulativeFactor *= $factor;
+                $result += $values[$target] * $cumulativeFactor;
+
+                continue;
+            }
+
+            $value = $values[$source];
+
+            $result = ($result + $value) / $factor;
+        }
+
+        if (isset($target) && !$cumulativeFactor) {
+            $result += $values[$target];
+        }
+
+        if (!$unitFound) {
+            throw new UnitNotConfiguredException($unit);
+        }
+
+        if ($this->invert) {
+            $result *= -1;
+        }
+
+        if ($unit === 'weeks') {
+            return $result / $daysPerWeek;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see equalTo()
+     *
+     * @return bool
+     */
+    public function eq($interval): bool
+    {
+        return $this->equalTo($interval);
+    }
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function equalTo($interval): bool
+    {
+        $interval = $this->resolveInterval($interval);
+
+        return $interval !== null && $this->totalMicroseconds === $interval->totalMicroseconds;
+    }
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see notEqualTo()
+     *
+     * @return bool
+     */
+    public function ne($interval): bool
+    {
+        return $this->notEqualTo($interval);
+    }
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function notEqualTo($interval): bool
+    {
+        return !$this->eq($interval);
+    }
+
+    /**
+     * Determines if the instance is greater (longer) than another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see greaterThan()
+     *
+     * @return bool
+     */
+    public function gt($interval): bool
+    {
+        return $this->greaterThan($interval);
+    }
+
+    /**
+     * Determines if the instance is greater (longer) than another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function greaterThan($interval): bool
+    {
+        $interval = $this->resolveInterval($interval);
+
+        return $interval === null || $this->totalMicroseconds > $interval->totalMicroseconds;
+    }
+
+    /**
+     * Determines if the instance is greater (longer) than or equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see greaterThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function gte($interval): bool
+    {
+        return $this->greaterThanOrEqualTo($interval);
+    }
+
+    /**
+     * Determines if the instance is greater (longer) than or equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function greaterThanOrEqualTo($interval): bool
+    {
+        return $this->greaterThan($interval) || $this->equalTo($interval);
+    }
+
+    /**
+     * Determines if the instance is less (shorter) than another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see lessThan()
+     *
+     * @return bool
+     */
+    public function lt($interval): bool
+    {
+        return $this->lessThan($interval);
+    }
+
+    /**
+     * Determines if the instance is less (shorter) than another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function lessThan($interval): bool
+    {
+        $interval = $this->resolveInterval($interval);
+
+        return $interval !== null && $this->totalMicroseconds < $interval->totalMicroseconds;
+    }
+
+    /**
+     * Determines if the instance is less (shorter) than or equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @see lessThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function lte($interval): bool
+    {
+        return $this->lessThanOrEqualTo($interval);
+    }
+
+    /**
+     * Determines if the instance is less (shorter) than or equal to another
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval
+     *
+     * @return bool
+     */
+    public function lessThanOrEqualTo($interval): bool
+    {
+        return $this->lessThan($interval) || $this->equalTo($interval);
+    }
+
+    /**
+     * Determines if the instance is between two others.
+     *
+     * The third argument allow you to specify if bounds are included or not (true by default)
+     * but for when you including/excluding bounds may produce different results in your application,
+     * we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
+     *
+     * @example
+     * ```
+     * CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(3)); // true
+     * CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::hours(36)); // false
+     * CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(2)); // true
+     * CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(2), false); // false
+     * ```
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval1
+     * @param CarbonInterval|DateInterval|mixed $interval2
+     * @param bool                              $equal     Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function between($interval1, $interval2, $equal = true): bool
+    {
+        return $equal
+            ? $this->greaterThanOrEqualTo($interval1) && $this->lessThanOrEqualTo($interval2)
+            : $this->greaterThan($interval1) && $this->lessThan($interval2);
+    }
+
+    /**
+     * Determines if the instance is between two others, bounds excluded.
+     *
+     * @example
+     * ```
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(3)); // true
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::hours(36)); // false
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(2)); // true
+     * ```
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval1
+     * @param CarbonInterval|DateInterval|mixed $interval2
+     *
+     * @return bool
+     */
+    public function betweenIncluded($interval1, $interval2): bool
+    {
+        return $this->between($interval1, $interval2, true);
+    }
+
+    /**
+     * Determines if the instance is between two others, bounds excluded.
+     *
+     * @example
+     * ```
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(3)); // true
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::hours(36)); // false
+     * CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(2)); // false
+     * ```
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval1
+     * @param CarbonInterval|DateInterval|mixed $interval2
+     *
+     * @return bool
+     */
+    public function betweenExcluded($interval1, $interval2): bool
+    {
+        return $this->between($interval1, $interval2, false);
+    }
+
+    /**
+     * Determines if the instance is between two others
+     *
+     * @example
+     * ```
+     * CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(3)); // true
+     * CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::hours(36)); // false
+     * CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(2)); // true
+     * CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(2), false); // false
+     * ```
+     *
+     * @param CarbonInterval|DateInterval|mixed $interval1
+     * @param CarbonInterval|DateInterval|mixed $interval2
+     * @param bool                              $equal     Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function isBetween($interval1, $interval2, $equal = true): bool
+    {
+        return $this->between($interval1, $interval2, $equal);
+    }
+
+    /**
+     * Round the current instance at the given unit with given precision if specified and the given function.
+     *
+     * @param string                             $unit
+     * @param float|int|string|DateInterval|null $precision
+     * @param string                             $function
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function roundUnit($unit, $precision = 1, $function = 'round')
+    {
+        $base = CarbonImmutable::parse('2000-01-01 00:00:00', 'UTC')
+            ->roundUnit($unit, $precision, $function);
+        $next = $base->add($this);
+        $inverted = $next < $base;
+
+        if ($inverted) {
+            $next = $base->sub($this);
+        }
+
+        $this->copyProperties(
+            $next
+                ->roundUnit($unit, $precision, $function)
+                ->diffAsCarbonInterval($base)
+        );
+
+        return $this->invert($inverted);
+    }
+
+    /**
+     * Truncate the current instance at the given unit with given precision if specified.
+     *
+     * @param string                             $unit
+     * @param float|int|string|DateInterval|null $precision
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function floorUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance at the given unit with given precision if specified.
+     *
+     * @param string                             $unit
+     * @param float|int|string|DateInterval|null $precision
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function ceilUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'ceil');
+    }
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|DateInterval|null $precision
+     * @param string                             $function
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function round($precision = 1, $function = 'round')
+    {
+        return $this->roundWith($precision, $function);
+    }
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|DateInterval|null $precision
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function floor($precision = 1)
+    {
+        return $this->round($precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance second with given precision if specified.
+     *
+     * @param float|int|string|DateInterval|null $precision
+     *
+     * @throws Exception
+     *
+     * @return $this
+     */
+    public function ceil($precision = 1)
+    {
+        return $this->round($precision, 'ceil');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonPeriod.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonPeriod.php
new file mode 100644
index 0000000..70e6ba4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonPeriod.php
@@ -0,0 +1,2498 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Carbon\Exceptions\InvalidCastException;
+use Carbon\Exceptions\InvalidIntervalException;
+use Carbon\Exceptions\InvalidPeriodDateException;
+use Carbon\Exceptions\InvalidPeriodParameterException;
+use Carbon\Exceptions\NotACarbonClassException;
+use Carbon\Exceptions\NotAPeriodException;
+use Carbon\Exceptions\UnknownGetterException;
+use Carbon\Exceptions\UnknownMethodException;
+use Carbon\Exceptions\UnreachableException;
+use Carbon\Traits\IntervalRounding;
+use Carbon\Traits\Mixin;
+use Carbon\Traits\Options;
+use Closure;
+use Countable;
+use DateInterval;
+use DatePeriod;
+use DateTime;
+use DateTimeInterface;
+use InvalidArgumentException;
+use Iterator;
+use JsonSerializable;
+use ReflectionException;
+use ReturnTypeWillChange;
+use RuntimeException;
+
+/**
+ * Substitution of DatePeriod with some modifications and many more features.
+ *
+ * @property-read int|float $recurrences number of recurrences (if end not set).
+ * @property-read bool $include_start_date rather the start date is included in the iteration.
+ * @property-read bool $include_end_date rather the end date is included in the iteration (if recurrences not set).
+ * @property-read CarbonInterface $start Period start date.
+ * @property-read CarbonInterface $current Current date from the iteration.
+ * @property-read CarbonInterface $end Period end date.
+ * @property-read CarbonInterval $interval Underlying date interval instance. Always present, one day by default.
+ *
+ * @method static CarbonPeriod start($date, $inclusive = null) Create instance specifying start date or modify the start date if called on an instance.
+ * @method static CarbonPeriod since($date, $inclusive = null) Alias for start().
+ * @method static CarbonPeriod sinceNow($inclusive = null) Create instance with start date set to now or set the start date to now if called on an instance.
+ * @method static CarbonPeriod end($date = null, $inclusive = null) Create instance specifying end date or modify the end date if called on an instance.
+ * @method static CarbonPeriod until($date = null, $inclusive = null) Alias for end().
+ * @method static CarbonPeriod untilNow($inclusive = null) Create instance with end date set to now or set the end date to now if called on an instance.
+ * @method static CarbonPeriod dates($start, $end = null) Create instance with start and end dates or modify the start and end dates if called on an instance.
+ * @method static CarbonPeriod between($start, $end = null) Create instance with start and end dates or modify the start and end dates if called on an instance.
+ * @method static CarbonPeriod recurrences($recurrences = null) Create instance with maximum number of recurrences or modify the number of recurrences if called on an instance.
+ * @method static CarbonPeriod times($recurrences = null) Alias for recurrences().
+ * @method static CarbonPeriod options($options = null) Create instance with options or modify the options if called on an instance.
+ * @method static CarbonPeriod toggle($options, $state = null) Create instance with options toggled on or off, or toggle options if called on an instance.
+ * @method static CarbonPeriod filter($callback, $name = null) Create instance with filter added to the stack or append a filter if called on an instance.
+ * @method static CarbonPeriod push($callback, $name = null) Alias for filter().
+ * @method static CarbonPeriod prepend($callback, $name = null) Create instance with filter prepended to the stack or prepend a filter if called on an instance.
+ * @method static CarbonPeriod filters(array $filters = []) Create instance with filters stack or replace the whole filters stack if called on an instance.
+ * @method static CarbonPeriod interval($interval) Create instance with given date interval or modify the interval if called on an instance.
+ * @method static CarbonPeriod each($interval) Create instance with given date interval or modify the interval if called on an instance.
+ * @method static CarbonPeriod every($interval) Create instance with given date interval or modify the interval if called on an instance.
+ * @method static CarbonPeriod step($interval) Create instance with given date interval or modify the interval if called on an instance.
+ * @method static CarbonPeriod stepBy($interval) Create instance with given date interval or modify the interval if called on an instance.
+ * @method static CarbonPeriod invert() Create instance with inverted date interval or invert the interval if called on an instance.
+ * @method static CarbonPeriod years($years = 1) Create instance specifying a number of years for date interval or replace the interval by the given a number of years if called on an instance.
+ * @method static CarbonPeriod year($years = 1) Alias for years().
+ * @method static CarbonPeriod months($months = 1) Create instance specifying a number of months for date interval or replace the interval by the given a number of months if called on an instance.
+ * @method static CarbonPeriod month($months = 1) Alias for months().
+ * @method static CarbonPeriod weeks($weeks = 1) Create instance specifying a number of weeks for date interval or replace the interval by the given a number of weeks if called on an instance.
+ * @method static CarbonPeriod week($weeks = 1) Alias for weeks().
+ * @method static CarbonPeriod days($days = 1) Create instance specifying a number of days for date interval or replace the interval by the given a number of days if called on an instance.
+ * @method static CarbonPeriod dayz($days = 1) Alias for days().
+ * @method static CarbonPeriod day($days = 1) Alias for days().
+ * @method static CarbonPeriod hours($hours = 1) Create instance specifying a number of hours for date interval or replace the interval by the given a number of hours if called on an instance.
+ * @method static CarbonPeriod hour($hours = 1) Alias for hours().
+ * @method static CarbonPeriod minutes($minutes = 1) Create instance specifying a number of minutes for date interval or replace the interval by the given a number of minutes if called on an instance.
+ * @method static CarbonPeriod minute($minutes = 1) Alias for minutes().
+ * @method static CarbonPeriod seconds($seconds = 1) Create instance specifying a number of seconds for date interval or replace the interval by the given a number of seconds if called on an instance.
+ * @method static CarbonPeriod second($seconds = 1) Alias for seconds().
+ * @method $this roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
+ * @method $this roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
+ * @method $this floorYear(float $precision = 1) Truncate the current instance year with given precision.
+ * @method $this floorYears(float $precision = 1) Truncate the current instance year with given precision.
+ * @method $this ceilYear(float $precision = 1) Ceil the current instance year with given precision.
+ * @method $this ceilYears(float $precision = 1) Ceil the current instance year with given precision.
+ * @method $this roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
+ * @method $this roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
+ * @method $this floorMonth(float $precision = 1) Truncate the current instance month with given precision.
+ * @method $this floorMonths(float $precision = 1) Truncate the current instance month with given precision.
+ * @method $this ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
+ * @method $this ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
+ * @method $this roundWeek(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this roundWeeks(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this floorWeek(float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this floorWeeks(float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this ceilWeek(float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this ceilWeeks(float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
+ * @method $this floorDay(float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this floorDays(float $precision = 1) Truncate the current instance day with given precision.
+ * @method $this ceilDay(float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this ceilDays(float $precision = 1) Ceil the current instance day with given precision.
+ * @method $this roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
+ * @method $this roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
+ * @method $this floorHour(float $precision = 1) Truncate the current instance hour with given precision.
+ * @method $this floorHours(float $precision = 1) Truncate the current instance hour with given precision.
+ * @method $this ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
+ * @method $this ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
+ * @method $this roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
+ * @method $this roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
+ * @method $this floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
+ * @method $this floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
+ * @method $this ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
+ * @method $this ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
+ * @method $this roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
+ * @method $this roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
+ * @method $this floorSecond(float $precision = 1) Truncate the current instance second with given precision.
+ * @method $this floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
+ * @method $this ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
+ * @method $this ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
+ * @method $this roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
+ * @method $this roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
+ * @method $this floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
+ * @method $this floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
+ * @method $this ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
+ * @method $this ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
+ * @method $this roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
+ * @method $this roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
+ * @method $this floorCentury(float $precision = 1) Truncate the current instance century with given precision.
+ * @method $this floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
+ * @method $this ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
+ * @method $this ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
+ * @method $this roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
+ * @method $this roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
+ * @method $this floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
+ * @method $this floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
+ * @method $this ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
+ * @method $this ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
+ * @method $this roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
+ * @method $this roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
+ * @method $this floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
+ * @method $this floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
+ * @method $this ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
+ * @method $this ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
+ * @method $this roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
+ * @method $this roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
+ * @method $this floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
+ * @method $this floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
+ * @method $this ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
+ * @method $this ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
+ * @method $this roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
+ * @method $this roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
+ * @method $this floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
+ * @method $this floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
+ * @method $this ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
+ * @method $this ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
+ */
+class CarbonPeriod implements Iterator, Countable, JsonSerializable
+{
+    use IntervalRounding;
+    use Mixin {
+        Mixin::mixin as baseMixin;
+    }
+    use Options;
+
+    /**
+     * Built-in filters.
+     *
+     * @var string
+     */
+    public const RECURRENCES_FILTER = [self::class, 'filterRecurrences'];
+    public const END_DATE_FILTER = [self::class, 'filterEndDate'];
+
+    /**
+     * Special value which can be returned by filters to end iteration. Also a filter.
+     *
+     * @var string
+     */
+    public const END_ITERATION = [self::class, 'endIteration'];
+
+    /**
+     * Exclude start date from iteration.
+     *
+     * @var int
+     */
+    public const EXCLUDE_START_DATE = 1;
+
+    /**
+     * Exclude end date from iteration.
+     *
+     * @var int
+     */
+    public const EXCLUDE_END_DATE = 2;
+
+    /**
+     * Yield CarbonImmutable instances.
+     *
+     * @var int
+     */
+    public const IMMUTABLE = 4;
+
+    /**
+     * Number of maximum attempts before giving up on finding next valid date.
+     *
+     * @var int
+     */
+    public const NEXT_MAX_ATTEMPTS = 1000;
+
+    /**
+     * Number of maximum attempts before giving up on finding end date.
+     *
+     * @var int
+     */
+    public const END_MAX_ATTEMPTS = 10000;
+
+    /**
+     * The registered macros.
+     *
+     * @var array
+     */
+    protected static $macros = [];
+
+    /**
+     * Date class of iteration items.
+     *
+     * @var string
+     */
+    protected $dateClass = Carbon::class;
+
+    /**
+     * Underlying date interval instance. Always present, one day by default.
+     *
+     * @var CarbonInterval
+     */
+    protected $dateInterval;
+
+    /**
+     * Whether current date interval was set by default.
+     *
+     * @var bool
+     */
+    protected $isDefaultInterval;
+
+    /**
+     * The filters stack.
+     *
+     * @var array
+     */
+    protected $filters = [];
+
+    /**
+     * Period start date. Applied on rewind. Always present, now by default.
+     *
+     * @var CarbonInterface
+     */
+    protected $startDate;
+
+    /**
+     * Period end date. For inverted interval should be before the start date. Applied via a filter.
+     *
+     * @var CarbonInterface|null
+     */
+    protected $endDate;
+
+    /**
+     * Limit for number of recurrences. Applied via a filter.
+     *
+     * @var int|null
+     */
+    protected $recurrences;
+
+    /**
+     * Iteration options.
+     *
+     * @var int
+     */
+    protected $options;
+
+    /**
+     * Index of current date. Always sequential, even if some dates are skipped by filters.
+     * Equal to null only before the first iteration.
+     *
+     * @var int
+     */
+    protected $key;
+
+    /**
+     * Current date. May temporarily hold unaccepted value when looking for a next valid date.
+     * Equal to null only before the first iteration.
+     *
+     * @var CarbonInterface
+     */
+    protected $current;
+
+    /**
+     * Timezone of current date. Taken from the start date.
+     *
+     * @var \DateTimeZone|null
+     */
+    protected $timezone;
+
+    /**
+     * The cached validation result for current date.
+     *
+     * @var bool|string|null
+     */
+    protected $validationResult;
+
+    /**
+     * Timezone handler for settings() method.
+     *
+     * @var mixed
+     */
+    protected $tzName;
+
+    /**
+     * Make a CarbonPeriod instance from given variable if possible.
+     *
+     * @param mixed $var
+     *
+     * @return static|null
+     */
+    public static function make($var)
+    {
+        try {
+            return static::instance($var);
+        } catch (NotAPeriodException $e) {
+            return static::create($var);
+        }
+    }
+
+    /**
+     * Create a new instance from a DatePeriod or CarbonPeriod object.
+     *
+     * @param CarbonPeriod|DatePeriod $period
+     *
+     * @return static
+     */
+    public static function instance($period)
+    {
+        if ($period instanceof static) {
+            return $period->copy();
+        }
+
+        if ($period instanceof self) {
+            return new static(
+                $period->getStartDate(),
+                $period->getEndDate() ?: $period->getRecurrences(),
+                $period->getDateInterval(),
+                $period->getOptions()
+            );
+        }
+
+        if ($period instanceof DatePeriod) {
+            return new static(
+                $period->start,
+                $period->end ?: ($period->recurrences - 1),
+                $period->interval,
+                $period->include_start_date ? 0 : static::EXCLUDE_START_DATE
+            );
+        }
+
+        $class = \get_called_class();
+        $type = \gettype($period);
+
+        throw new NotAPeriodException(
+            'Argument 1 passed to '.$class.'::'.__METHOD__.'() '.
+            'must be an instance of DatePeriod or '.$class.', '.
+            ($type === 'object' ? 'instance of '.\get_class($period) : $type).' given.'
+        );
+    }
+
+    /**
+     * Create a new instance.
+     *
+     * @return static
+     */
+    public static function create(...$params)
+    {
+        return static::createFromArray($params);
+    }
+
+    /**
+     * Create a new instance from an array of parameters.
+     *
+     * @param array $params
+     *
+     * @return static
+     */
+    public static function createFromArray(array $params)
+    {
+        return new static(...$params);
+    }
+
+    /**
+     * Create CarbonPeriod from ISO 8601 string.
+     *
+     * @param string   $iso
+     * @param int|null $options
+     *
+     * @return static
+     */
+    public static function createFromIso($iso, $options = null)
+    {
+        $params = static::parseIso8601($iso);
+
+        $instance = static::createFromArray($params);
+
+        if ($options !== null) {
+            $instance->setOptions($options);
+        }
+
+        return $instance;
+    }
+
+    /**
+     * Return whether given interval contains non zero value of any time unit.
+     *
+     * @param \DateInterval $interval
+     *
+     * @return bool
+     */
+    protected static function intervalHasTime(DateInterval $interval)
+    {
+        return $interval->h || $interval->i || $interval->s || $interval->f;
+    }
+
+    /**
+     * Return whether given variable is an ISO 8601 specification.
+     *
+     * Note: Check is very basic, as actual validation will be done later when parsing.
+     * We just want to ensure that variable is not any other type of a valid parameter.
+     *
+     * @param mixed $var
+     *
+     * @return bool
+     */
+    protected static function isIso8601($var)
+    {
+        if (!\is_string($var)) {
+            return false;
+        }
+
+        // Match slash but not within a timezone name.
+        $part = '[a-z]+(?:[_-][a-z]+)*';
+
+        preg_match("#\b$part/$part\b|(/)#i", $var, $match);
+
+        return isset($match[1]);
+    }
+
+    /**
+     * Parse given ISO 8601 string into an array of arguments.
+     *
+     * @SuppressWarnings(PHPMD.ElseExpression)
+     *
+     * @param string $iso
+     *
+     * @return array
+     */
+    protected static function parseIso8601($iso)
+    {
+        $result = [];
+
+        $interval = null;
+        $start = null;
+        $end = null;
+
+        foreach (explode('/', $iso) as $key => $part) {
+            if ($key === 0 && preg_match('/^R([0-9]*)$/', $part, $match)) {
+                $parsed = \strlen($match[1]) ? (int) $match[1] : null;
+            } elseif ($interval === null && $parsed = CarbonInterval::make($part)) {
+                $interval = $part;
+            } elseif ($start === null && $parsed = Carbon::make($part)) {
+                $start = $part;
+            } elseif ($end === null && $parsed = Carbon::make(static::addMissingParts($start ?? '', $part))) {
+                $end = $part;
+            } else {
+                throw new InvalidPeriodParameterException("Invalid ISO 8601 specification: $iso.");
+            }
+
+            $result[] = $parsed;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Add missing parts of the target date from the soure date.
+     *
+     * @param string $source
+     * @param string $target
+     *
+     * @return string
+     */
+    protected static function addMissingParts($source, $target)
+    {
+        $pattern = '/'.preg_replace('/[0-9]+/', '[0-9]+', preg_quote($target, '/')).'$/';
+
+        $result = preg_replace($pattern, $target, $source, 1, $count);
+
+        return $count ? $result : $target;
+    }
+
+    /**
+     * Register a custom macro.
+     *
+     * @example
+     * ```
+     * CarbonPeriod::macro('middle', function () {
+     *   return $this->getStartDate()->average($this->getEndDate());
+     * });
+     * echo CarbonPeriod::since('2011-05-12')->until('2011-06-03')->middle();
+     * ```
+     *
+     * @param string          $name
+     * @param object|callable $macro
+     *
+     * @return void
+     */
+    public static function macro($name, $macro)
+    {
+        static::$macros[$name] = $macro;
+    }
+
+    /**
+     * Register macros from a mixin object.
+     *
+     * @example
+     * ```
+     * CarbonPeriod::mixin(new class {
+     *   public function addDays() {
+     *     return function ($count = 1) {
+     *       return $this->setStartDate(
+     *         $this->getStartDate()->addDays($count)
+     *       )->setEndDate(
+     *         $this->getEndDate()->addDays($count)
+     *       );
+     *     };
+     *   }
+     *   public function subDays() {
+     *     return function ($count = 1) {
+     *       return $this->setStartDate(
+     *         $this->getStartDate()->subDays($count)
+     *       )->setEndDate(
+     *         $this->getEndDate()->subDays($count)
+     *       );
+     *     };
+     *   }
+     * });
+     * echo CarbonPeriod::create('2000-01-01', '2000-02-01')->addDays(5)->subDays(3);
+     * ```
+     *
+     * @param object|string $mixin
+     *
+     * @throws ReflectionException
+     *
+     * @return void
+     */
+    public static function mixin($mixin)
+    {
+        static::baseMixin($mixin);
+    }
+
+    /**
+     * Check if macro is registered.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public static function hasMacro($name)
+    {
+        return isset(static::$macros[$name]);
+    }
+
+    /**
+     * Provide static proxy for instance aliases.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public static function __callStatic($method, $parameters)
+    {
+        $date = new static();
+
+        if (static::hasMacro($method)) {
+            return static::bindMacroContext(null, function () use (&$method, &$parameters, &$date) {
+                return $date->callMacro($method, $parameters);
+            });
+        }
+
+        return $date->$method(...$parameters);
+    }
+
+    /**
+     * CarbonPeriod constructor.
+     *
+     * @SuppressWarnings(PHPMD.ElseExpression)
+     *
+     * @throws InvalidArgumentException
+     */
+    public function __construct(...$arguments)
+    {
+        // Parse and assign arguments one by one. First argument may be an ISO 8601 spec,
+        // which will be first parsed into parts and then processed the same way.
+
+        $argumentsCount = \count($arguments);
+
+        if ($argumentsCount && static::isIso8601($iso = $arguments[0])) {
+            array_splice($arguments, 0, 1, static::parseIso8601($iso));
+        }
+
+        if ($argumentsCount === 1) {
+            if ($arguments[0] instanceof DatePeriod) {
+                $arguments = [
+                    $arguments[0]->start,
+                    $arguments[0]->end ?: ($arguments[0]->recurrences - 1),
+                    $arguments[0]->interval,
+                    $arguments[0]->include_start_date ? 0 : static::EXCLUDE_START_DATE,
+                ];
+            } elseif ($arguments[0] instanceof self) {
+                $arguments = [
+                    $arguments[0]->getStartDate(),
+                    $arguments[0]->getEndDate() ?: $arguments[0]->getRecurrences(),
+                    $arguments[0]->getDateInterval(),
+                    $arguments[0]->getOptions(),
+                ];
+            }
+        }
+
+        foreach ($arguments as $argument) {
+            if ($this->dateInterval === null &&
+                (
+                    \is_string($argument) && preg_match(
+                        '/^(-?\d(\d(?![\/-])|[^\d\/-]([\/-])?)*|P[T0-9].*|(?:\h*\d+(?:\.\d+)?\h*[a-z]+)+)$/i',
+                        $argument
+                    ) ||
+                    $argument instanceof DateInterval ||
+                    $argument instanceof Closure
+                ) &&
+                $parsed = @CarbonInterval::make($argument)
+            ) {
+                $this->setDateInterval($parsed);
+            } elseif ($this->startDate === null && $parsed = Carbon::make($argument)) {
+                $this->setStartDate($parsed);
+            } elseif ($this->endDate === null && $parsed = Carbon::make($argument)) {
+                $this->setEndDate($parsed);
+            } elseif ($this->recurrences === null && $this->endDate === null && is_numeric($argument)) {
+                $this->setRecurrences($argument);
+            } elseif ($this->options === null && (\is_int($argument) || $argument === null)) {
+                $this->setOptions($argument);
+            } else {
+                throw new InvalidPeriodParameterException('Invalid constructor parameters.');
+            }
+        }
+
+        if ($this->startDate === null) {
+            $this->setStartDate(Carbon::now());
+        }
+
+        if ($this->dateInterval === null) {
+            $this->setDateInterval(CarbonInterval::day());
+
+            $this->isDefaultInterval = true;
+        }
+
+        if ($this->options === null) {
+            $this->setOptions(0);
+        }
+    }
+
+    /**
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function copy()
+    {
+        return clone $this;
+    }
+
+    /**
+     * Get the getter for a property allowing both `DatePeriod` snakeCase and camelCase names.
+     *
+     * @param string $name
+     *
+     * @return callable|null
+     */
+    protected function getGetter(string $name)
+    {
+        switch (strtolower(preg_replace('/[A-Z]/', '_$0', $name))) {
+            case 'start':
+            case 'start_date':
+                return [$this, 'getStartDate'];
+            case 'end':
+            case 'end_date':
+                return [$this, 'getEndDate'];
+            case 'interval':
+            case 'date_interval':
+                return [$this, 'getDateInterval'];
+            case 'recurrences':
+                return [$this, 'getRecurrences'];
+            case 'include_start_date':
+                return [$this, 'isStartIncluded'];
+            case 'include_end_date':
+                return [$this, 'isEndIncluded'];
+            case 'current':
+                return [$this, 'current'];
+            default:
+                return null;
+        }
+    }
+
+    /**
+     * Get a property allowing both `DatePeriod` snakeCase and camelCase names.
+     *
+     * @param string $name
+     *
+     * @return bool|CarbonInterface|CarbonInterval|int|null
+     */
+    public function get(string $name)
+    {
+        $getter = $this->getGetter($name);
+
+        if ($getter) {
+            return $getter();
+        }
+
+        throw new UnknownGetterException($name);
+    }
+
+    /**
+     * Get a property allowing both `DatePeriod` snakeCase and camelCase names.
+     *
+     * @param string $name
+     *
+     * @return bool|CarbonInterface|CarbonInterval|int|null
+     */
+    public function __get(string $name)
+    {
+        return $this->get($name);
+    }
+
+    /**
+     * Check if an attribute exists on the object
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function __isset(string $name): bool
+    {
+        return $this->getGetter($name) !== null;
+    }
+
+    /**
+     * @alias copy
+     *
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function clone()
+    {
+        return clone $this;
+    }
+
+    /**
+     * Set the iteration item class.
+     *
+     * @param string $dateClass
+     *
+     * @return $this
+     */
+    public function setDateClass(string $dateClass)
+    {
+        if (!is_a($dateClass, CarbonInterface::class, true)) {
+            throw new NotACarbonClassException($dateClass);
+        }
+
+        $this->dateClass = $dateClass;
+
+        if (is_a($dateClass, Carbon::class, true)) {
+            $this->toggleOptions(static::IMMUTABLE, false);
+        } elseif (is_a($dateClass, CarbonImmutable::class, true)) {
+            $this->toggleOptions(static::IMMUTABLE, true);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns iteration item date class.
+     *
+     * @return string
+     */
+    public function getDateClass(): string
+    {
+        return $this->dateClass;
+    }
+
+    /**
+     * Change the period date interval.
+     *
+     * @param DateInterval|string $interval
+     *
+     * @throws InvalidIntervalException
+     *
+     * @return $this
+     */
+    public function setDateInterval($interval)
+    {
+        if (!$interval = CarbonInterval::make($interval)) {
+            throw new InvalidIntervalException('Invalid interval.');
+        }
+
+        if ($interval->spec() === 'PT0S' && !$interval->f && !$interval->getStep()) {
+            throw new InvalidIntervalException('Empty interval is not accepted.');
+        }
+
+        $this->dateInterval = $interval;
+
+        $this->isDefaultInterval = false;
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Invert the period date interval.
+     *
+     * @return $this
+     */
+    public function invertDateInterval()
+    {
+        $interval = $this->dateInterval->invert();
+
+        return $this->setDateInterval($interval);
+    }
+
+    /**
+     * Set start and end date.
+     *
+     * @param DateTime|DateTimeInterface|string      $start
+     * @param DateTime|DateTimeInterface|string|null $end
+     *
+     * @return $this
+     */
+    public function setDates($start, $end)
+    {
+        $this->setStartDate($start);
+        $this->setEndDate($end);
+
+        return $this;
+    }
+
+    /**
+     * Change the period options.
+     *
+     * @param int|null $options
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function setOptions($options)
+    {
+        if (!\is_int($options) && $options !== null) {
+            throw new InvalidPeriodParameterException('Invalid options.');
+        }
+
+        $this->options = $options ?: 0;
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Get the period options.
+     *
+     * @return int
+     */
+    public function getOptions()
+    {
+        return $this->options;
+    }
+
+    /**
+     * Toggle given options on or off.
+     *
+     * @param int       $options
+     * @param bool|null $state
+     *
+     * @throws \InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function toggleOptions($options, $state = null)
+    {
+        if ($state === null) {
+            $state = ($this->options & $options) !== $options;
+        }
+
+        return $this->setOptions(
+            $state ?
+            $this->options | $options :
+            $this->options & ~$options
+        );
+    }
+
+    /**
+     * Toggle EXCLUDE_START_DATE option.
+     *
+     * @param bool $state
+     *
+     * @return $this
+     */
+    public function excludeStartDate($state = true)
+    {
+        return $this->toggleOptions(static::EXCLUDE_START_DATE, $state);
+    }
+
+    /**
+     * Toggle EXCLUDE_END_DATE option.
+     *
+     * @param bool $state
+     *
+     * @return $this
+     */
+    public function excludeEndDate($state = true)
+    {
+        return $this->toggleOptions(static::EXCLUDE_END_DATE, $state);
+    }
+
+    /**
+     * Get the underlying date interval.
+     *
+     * @return CarbonInterval
+     */
+    public function getDateInterval()
+    {
+        return $this->dateInterval->copy();
+    }
+
+    /**
+     * Get start date of the period.
+     *
+     * @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
+     *
+     * @return CarbonInterface
+     */
+    public function getStartDate(string $rounding = null)
+    {
+        $date = $this->startDate->avoidMutation();
+
+        return $rounding ? $date->round($this->getDateInterval(), $rounding) : $date;
+    }
+
+    /**
+     * Get end date of the period.
+     *
+     * @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
+     *
+     * @return CarbonInterface|null
+     */
+    public function getEndDate(string $rounding = null)
+    {
+        if (!$this->endDate) {
+            return null;
+        }
+
+        $date = $this->endDate->avoidMutation();
+
+        return $rounding ? $date->round($this->getDateInterval(), $rounding) : $date;
+    }
+
+    /**
+     * Get number of recurrences.
+     *
+     * @return int|float|null
+     */
+    public function getRecurrences()
+    {
+        return $this->recurrences;
+    }
+
+    /**
+     * Returns true if the start date should be excluded.
+     *
+     * @return bool
+     */
+    public function isStartExcluded()
+    {
+        return ($this->options & static::EXCLUDE_START_DATE) !== 0;
+    }
+
+    /**
+     * Returns true if the end date should be excluded.
+     *
+     * @return bool
+     */
+    public function isEndExcluded()
+    {
+        return ($this->options & static::EXCLUDE_END_DATE) !== 0;
+    }
+
+    /**
+     * Returns true if the start date should be included.
+     *
+     * @return bool
+     */
+    public function isStartIncluded()
+    {
+        return !$this->isStartExcluded();
+    }
+
+    /**
+     * Returns true if the end date should be included.
+     *
+     * @return bool
+     */
+    public function isEndIncluded()
+    {
+        return !$this->isEndExcluded();
+    }
+
+    /**
+     * Return the start if it's included by option, else return the start + 1 period interval.
+     *
+     * @return CarbonInterface
+     */
+    public function getIncludedStartDate()
+    {
+        $start = $this->getStartDate();
+
+        if ($this->isStartExcluded()) {
+            return $start->add($this->getDateInterval());
+        }
+
+        return $start;
+    }
+
+    /**
+     * Return the end if it's included by option, else return the end - 1 period interval.
+     * Warning: if the period has no fixed end, this method will iterate the period to calculate it.
+     *
+     * @return CarbonInterface
+     */
+    public function getIncludedEndDate()
+    {
+        $end = $this->getEndDate();
+
+        if (!$end) {
+            return $this->calculateEnd();
+        }
+
+        if ($this->isEndExcluded()) {
+            return $end->sub($this->getDateInterval());
+        }
+
+        return $end;
+    }
+
+    /**
+     * Add a filter to the stack.
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     *
+     * @param callable $callback
+     * @param string   $name
+     *
+     * @return $this
+     */
+    public function addFilter($callback, $name = null)
+    {
+        $tuple = $this->createFilterTuple(\func_get_args());
+
+        $this->filters[] = $tuple;
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Prepend a filter to the stack.
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     *
+     * @param callable $callback
+     * @param string   $name
+     *
+     * @return $this
+     */
+    public function prependFilter($callback, $name = null)
+    {
+        $tuple = $this->createFilterTuple(\func_get_args());
+
+        array_unshift($this->filters, $tuple);
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Remove a filter by instance or name.
+     *
+     * @param callable|string $filter
+     *
+     * @return $this
+     */
+    public function removeFilter($filter)
+    {
+        $key = \is_callable($filter) ? 0 : 1;
+
+        $this->filters = array_values(array_filter(
+            $this->filters,
+            function ($tuple) use ($key, $filter) {
+                return $tuple[$key] !== $filter;
+            }
+        ));
+
+        $this->updateInternalState();
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Return whether given instance or name is in the filter stack.
+     *
+     * @param callable|string $filter
+     *
+     * @return bool
+     */
+    public function hasFilter($filter)
+    {
+        $key = \is_callable($filter) ? 0 : 1;
+
+        foreach ($this->filters as $tuple) {
+            if ($tuple[$key] === $filter) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get filters stack.
+     *
+     * @return array
+     */
+    public function getFilters()
+    {
+        return $this->filters;
+    }
+
+    /**
+     * Set filters stack.
+     *
+     * @param array $filters
+     *
+     * @return $this
+     */
+    public function setFilters(array $filters)
+    {
+        $this->filters = $filters;
+
+        $this->updateInternalState();
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Reset filters stack.
+     *
+     * @return $this
+     */
+    public function resetFilters()
+    {
+        $this->filters = [];
+
+        if ($this->endDate !== null) {
+            $this->filters[] = [static::END_DATE_FILTER, null];
+        }
+
+        if ($this->recurrences !== null) {
+            $this->filters[] = [static::RECURRENCES_FILTER, null];
+        }
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Add a recurrences filter (set maximum number of recurrences).
+     *
+     * @param int|float|null $recurrences
+     *
+     * @throws InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function setRecurrences($recurrences)
+    {
+        if (!is_numeric($recurrences) && $recurrences !== null || $recurrences < 0) {
+            throw new InvalidPeriodParameterException('Invalid number of recurrences.');
+        }
+
+        if ($recurrences === null) {
+            return $this->removeFilter(static::RECURRENCES_FILTER);
+        }
+
+        $this->recurrences = $recurrences === INF ? INF : (int) $recurrences;
+
+        if (!$this->hasFilter(static::RECURRENCES_FILTER)) {
+            return $this->addFilter(static::RECURRENCES_FILTER);
+        }
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Change the period start date.
+     *
+     * @param DateTime|DateTimeInterface|string $date
+     * @param bool|null                         $inclusive
+     *
+     * @throws InvalidPeriodDateException
+     *
+     * @return $this
+     */
+    public function setStartDate($date, $inclusive = null)
+    {
+        if (!$date = ([$this->dateClass, 'make'])($date)) {
+            throw new InvalidPeriodDateException('Invalid start date.');
+        }
+
+        $this->startDate = $date;
+
+        if ($inclusive !== null) {
+            $this->toggleOptions(static::EXCLUDE_START_DATE, !$inclusive);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Change the period end date.
+     *
+     * @param DateTime|DateTimeInterface|string|null $date
+     * @param bool|null                              $inclusive
+     *
+     * @throws \InvalidArgumentException
+     *
+     * @return $this
+     */
+    public function setEndDate($date, $inclusive = null)
+    {
+        if ($date !== null && !$date = ([$this->dateClass, 'make'])($date)) {
+            throw new InvalidPeriodDateException('Invalid end date.');
+        }
+
+        if (!$date) {
+            return $this->removeFilter(static::END_DATE_FILTER);
+        }
+
+        $this->endDate = $date;
+
+        if ($inclusive !== null) {
+            $this->toggleOptions(static::EXCLUDE_END_DATE, !$inclusive);
+        }
+
+        if (!$this->hasFilter(static::END_DATE_FILTER)) {
+            return $this->addFilter(static::END_DATE_FILTER);
+        }
+
+        $this->handleChangedParameters();
+
+        return $this;
+    }
+
+    /**
+     * Check if the current position is valid.
+     *
+     * @return bool
+     */
+    public function valid()
+    {
+        return $this->validateCurrentDate() === true;
+    }
+
+    /**
+     * Return the current key.
+     *
+     * @return int|null
+     */
+    public function key()
+    {
+        return $this->valid()
+            ? $this->key
+            : null;
+    }
+
+    /**
+     * Return the current date.
+     *
+     * @return CarbonInterface|null
+     */
+    public function current()
+    {
+        return $this->valid()
+            ? $this->prepareForReturn($this->current)
+            : null;
+    }
+
+    /**
+     * Move forward to the next date.
+     *
+     * @throws RuntimeException
+     *
+     * @return void
+     */
+    public function next()
+    {
+        if ($this->current === null) {
+            $this->rewind();
+        }
+
+        if ($this->validationResult !== static::END_ITERATION) {
+            $this->key++;
+
+            $this->incrementCurrentDateUntilValid();
+        }
+    }
+
+    /**
+     * Rewind to the start date.
+     *
+     * Iterating over a date in the UTC timezone avoids bug during backward DST change.
+     *
+     * @see https://bugs.php.net/bug.php?id=72255
+     * @see https://bugs.php.net/bug.php?id=74274
+     * @see https://wiki.php.net/rfc/datetime_and_daylight_saving_time
+     *
+     * @throws RuntimeException
+     *
+     * @return void
+     */
+    public function rewind()
+    {
+        $this->key = 0;
+        $this->current = ([$this->dateClass, 'make'])($this->startDate);
+        $settings = $this->getSettings();
+
+        if ($this->hasLocalTranslator()) {
+            $settings['locale'] = $this->getTranslatorLocale();
+        }
+
+        $this->current->settings($settings);
+        $this->timezone = static::intervalHasTime($this->dateInterval) ? $this->current->getTimezone() : null;
+
+        if ($this->timezone) {
+            $this->current = $this->current->utc();
+        }
+
+        $this->validationResult = null;
+
+        if ($this->isStartExcluded() || $this->validateCurrentDate() === false) {
+            $this->incrementCurrentDateUntilValid();
+        }
+    }
+
+    /**
+     * Skip iterations and returns iteration state (false if ended, true if still valid).
+     *
+     * @param int $count steps number to skip (1 by default)
+     *
+     * @return bool
+     */
+    public function skip($count = 1)
+    {
+        for ($i = $count; $this->valid() && $i > 0; $i--) {
+            $this->next();
+        }
+
+        return $this->valid();
+    }
+
+    /**
+     * Format the date period as ISO 8601.
+     *
+     * @return string
+     */
+    public function toIso8601String()
+    {
+        $parts = [];
+
+        if ($this->recurrences !== null) {
+            $parts[] = 'R'.$this->recurrences;
+        }
+
+        $parts[] = $this->startDate->toIso8601String();
+
+        $parts[] = $this->dateInterval->spec();
+
+        if ($this->endDate !== null) {
+            $parts[] = $this->endDate->toIso8601String();
+        }
+
+        return implode('/', $parts);
+    }
+
+    /**
+     * Convert the date period into a string.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        $translator = ([$this->dateClass, 'getTranslator'])();
+
+        $parts = [];
+
+        $format = !$this->startDate->isStartOfDay() || $this->endDate && !$this->endDate->isStartOfDay()
+            ? 'Y-m-d H:i:s'
+            : 'Y-m-d';
+
+        if ($this->recurrences !== null) {
+            $parts[] = $this->translate('period_recurrences', [], $this->recurrences, $translator);
+        }
+
+        $parts[] = $this->translate('period_interval', [':interval' => $this->dateInterval->forHumans([
+            'join' => true,
+        ])], null, $translator);
+
+        $parts[] = $this->translate('period_start_date', [':date' => $this->startDate->rawFormat($format)], null, $translator);
+
+        if ($this->endDate !== null) {
+            $parts[] = $this->translate('period_end_date', [':date' => $this->endDate->rawFormat($format)], null, $translator);
+        }
+
+        $result = implode(' ', $parts);
+
+        return mb_strtoupper(mb_substr($result, 0, 1)).mb_substr($result, 1);
+    }
+
+    /**
+     * Format the date period as ISO 8601.
+     *
+     * @return string
+     */
+    public function spec()
+    {
+        return $this->toIso8601String();
+    }
+
+    /**
+     * Cast the current instance into the given class.
+     *
+     * @param string $className The $className::instance() method will be called to cast the current object.
+     *
+     * @return DatePeriod
+     */
+    public function cast(string $className)
+    {
+        if (!method_exists($className, 'instance')) {
+            if (is_a($className, DatePeriod::class, true)) {
+                return new $className(
+                    $this->getStartDate(),
+                    $this->getDateInterval(),
+                    $this->getEndDate() ? $this->getIncludedEndDate() : $this->getRecurrences(),
+                    $this->isStartExcluded() ? DatePeriod::EXCLUDE_START_DATE : 0
+                );
+            }
+
+            throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
+        }
+
+        return $className::instance($this);
+    }
+
+    /**
+     * Return native DatePeriod PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(CarbonPeriod::create('2021-01-05', '2021-02-15')->toDatePeriod());
+     * ```
+     *
+     * @return DatePeriod
+     */
+    public function toDatePeriod()
+    {
+        return $this->cast(DatePeriod::class);
+    }
+
+    /**
+     * Convert the date period into an array without changing current iteration state.
+     *
+     * @return CarbonInterface[]
+     */
+    public function toArray()
+    {
+        $state = [
+            $this->key,
+            $this->current ? $this->current->avoidMutation() : null,
+            $this->validationResult,
+        ];
+
+        $result = iterator_to_array($this);
+
+        [$this->key, $this->current, $this->validationResult] = $state;
+
+        return $result;
+    }
+
+    /**
+     * Count dates in the date period.
+     *
+     * @return int
+     */
+    public function count()
+    {
+        return \count($this->toArray());
+    }
+
+    /**
+     * Return the first date in the date period.
+     *
+     * @return CarbonInterface|null
+     */
+    public function first()
+    {
+        return ($this->toArray() ?: [])[0] ?? null;
+    }
+
+    /**
+     * Return the last date in the date period.
+     *
+     * @return CarbonInterface|null
+     */
+    public function last()
+    {
+        $array = $this->toArray();
+
+        return $array ? $array[\count($array) - 1] : null;
+    }
+
+    /**
+     * Convert the date period into a string.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->toString();
+    }
+
+    /**
+     * Add aliases for setters.
+     *
+     * CarbonPeriod::days(3)->hours(5)->invert()
+     *     ->sinceNow()->until('2010-01-10')
+     *     ->filter(...)
+     *     ->count()
+     *
+     * Note: We use magic method to let static and instance aliases with the same names.
+     *
+     * @param string $method
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        if (static::hasMacro($method)) {
+            return static::bindMacroContext($this, function () use (&$method, &$parameters) {
+                return $this->callMacro($method, $parameters);
+            });
+        }
+
+        $roundedValue = $this->callRoundMethod($method, $parameters);
+
+        if ($roundedValue !== null) {
+            return $roundedValue;
+        }
+
+        $first = \count($parameters) >= 1 ? $parameters[0] : null;
+        $second = \count($parameters) >= 2 ? $parameters[1] : null;
+
+        switch ($method) {
+            case 'start':
+            case 'since':
+                return $this->setStartDate($first, $second);
+
+            case 'sinceNow':
+                return $this->setStartDate(new Carbon, $first);
+
+            case 'end':
+            case 'until':
+                return $this->setEndDate($first, $second);
+
+            case 'untilNow':
+                return $this->setEndDate(new Carbon, $first);
+
+            case 'dates':
+            case 'between':
+                return $this->setDates($first, $second);
+
+            case 'recurrences':
+            case 'times':
+                return $this->setRecurrences($first);
+
+            case 'options':
+                return $this->setOptions($first);
+
+            case 'toggle':
+                return $this->toggleOptions($first, $second);
+
+            case 'filter':
+            case 'push':
+                return $this->addFilter($first, $second);
+
+            case 'prepend':
+                return $this->prependFilter($first, $second);
+
+            case 'filters':
+                return $this->setFilters($first ?: []);
+
+            case 'interval':
+            case 'each':
+            case 'every':
+            case 'step':
+            case 'stepBy':
+                return $this->setDateInterval($first);
+
+            case 'invert':
+                return $this->invertDateInterval();
+
+            case 'years':
+            case 'year':
+            case 'months':
+            case 'month':
+            case 'weeks':
+            case 'week':
+            case 'days':
+            case 'dayz':
+            case 'day':
+            case 'hours':
+            case 'hour':
+            case 'minutes':
+            case 'minute':
+            case 'seconds':
+            case 'second':
+                return $this->setDateInterval((
+                    // Override default P1D when instantiating via fluent setters.
+                    [$this->isDefaultInterval ? new CarbonInterval('PT0S') : $this->dateInterval, $method]
+                )(
+                    \count($parameters) === 0 ? 1 : $first
+                ));
+        }
+
+        if ($this->localStrictModeEnabled ?? Carbon::isStrictModeEnabled()) {
+            throw new UnknownMethodException($method);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Set the instance's timezone from a string or object and add/subtract the offset difference.
+     *
+     * @param \DateTimeZone|string $timezone
+     *
+     * @return static
+     */
+    public function shiftTimezone($timezone)
+    {
+        $this->tzName = $timezone;
+        $this->timezone = $timezone;
+
+        return $this;
+    }
+
+    /**
+     * Returns the end is set, else calculated from start an recurrences.
+     *
+     * @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
+     *
+     * @return CarbonInterface
+     */
+    public function calculateEnd(string $rounding = null)
+    {
+        if ($end = $this->getEndDate($rounding)) {
+            return $end;
+        }
+
+        if ($this->dateInterval->isEmpty()) {
+            return $this->getStartDate($rounding);
+        }
+
+        $date = $this->getEndFromRecurrences() ?? $this->iterateUntilEnd();
+
+        if ($date && $rounding) {
+            $date = $date->avoidMutation()->round($this->getDateInterval(), $rounding);
+        }
+
+        return $date;
+    }
+
+    /**
+     * @return CarbonInterface|null
+     */
+    private function getEndFromRecurrences()
+    {
+        if ($this->recurrences === null) {
+            throw new UnreachableException(
+                "Could not calculate period end without either explicit end or recurrences.\n".
+                "If you're looking for a forever-period, use ->setRecurrences(INF)."
+            );
+        }
+
+        if ($this->recurrences === INF) {
+            $start = $this->getStartDate();
+
+            return $start < $start->avoidMutation()->add($this->getDateInterval())
+                ? CarbonImmutable::endOfTime()
+                : CarbonImmutable::startOfTime();
+        }
+
+        if ($this->filters === [[static::RECURRENCES_FILTER, null]]) {
+            return $this->getStartDate()->avoidMutation()->add(
+                $this->getDateInterval()->times(
+                    $this->recurrences - ($this->isStartExcluded() ? 0 : 1)
+                )
+            );
+        }
+
+        return null;
+    }
+
+    /**
+     * @return CarbonInterface|null
+     */
+    private function iterateUntilEnd()
+    {
+        $attempts = 0;
+        $date = null;
+
+        foreach ($this as $date) {
+            if (++$attempts > static::END_MAX_ATTEMPTS) {
+                throw new UnreachableException(
+                    'Could not calculate period end after iterating '.static::END_MAX_ATTEMPTS.' times.'
+                );
+            }
+        }
+
+        return $date;
+    }
+
+    /**
+     * Returns true if the current period overlaps the given one (if 1 parameter passed)
+     * or the period between 2 dates (if 2 parameters passed).
+     *
+     * @param CarbonPeriod|\DateTimeInterface|Carbon|CarbonImmutable|string $rangeOrRangeStart
+     * @param \DateTimeInterface|Carbon|CarbonImmutable|string|null         $rangeEnd
+     *
+     * @return bool
+     */
+    public function overlaps($rangeOrRangeStart, $rangeEnd = null)
+    {
+        $range = $rangeEnd ? static::create($rangeOrRangeStart, $rangeEnd) : $rangeOrRangeStart;
+
+        if (!($range instanceof self)) {
+            $range = static::create($range);
+        }
+
+        [$start, $end] = $this->orderCouple($this->getStartDate(), $this->calculateEnd());
+        [$rangeStart, $rangeEnd] = $this->orderCouple($range->getStartDate(), $range->calculateEnd());
+
+        return $end > $rangeStart && $rangeEnd > $start;
+    }
+
+    /**
+     * Execute a given function on each date of the period.
+     *
+     * @example
+     * ```
+     * Carbon::create('2020-11-29')->daysUntil('2020-12-24')->forEach(function (Carbon $date) {
+     *   echo $date->diffInDays('2020-12-25')." days before Christmas!\n";
+     * });
+     * ```
+     *
+     * @param callable $callback
+     */
+    public function forEach(callable $callback)
+    {
+        foreach ($this as $date) {
+            $callback($date);
+        }
+    }
+
+    /**
+     * Execute a given function on each date of the period and yield the result of this function.
+     *
+     * @example
+     * ```
+     * $period = Carbon::create('2020-11-29')->daysUntil('2020-12-24');
+     * echo implode("\n", iterator_to_array($period->map(function (Carbon $date) {
+     *   return $date->diffInDays('2020-12-25').' days before Christmas!';
+     * })));
+     * ```
+     *
+     * @param callable $callback
+     *
+     * @return \Generator
+     */
+    public function map(callable $callback)
+    {
+        foreach ($this as $date) {
+            yield $callback($date);
+        }
+    }
+
+    /**
+     * Determines if the instance is equal to another.
+     * Warning: if options differ, instances wil never be equal.
+     *
+     * @param mixed $period
+     *
+     * @see equalTo()
+     *
+     * @return bool
+     */
+    public function eq($period): bool
+    {
+        return $this->equalTo($period);
+    }
+
+    /**
+     * Determines if the instance is equal to another.
+     * Warning: if options differ, instances wil never be equal.
+     *
+     * @param mixed $period
+     *
+     * @return bool
+     */
+    public function equalTo($period): bool
+    {
+        if (!($period instanceof self)) {
+            $period = self::make($period);
+        }
+
+        $end = $this->getEndDate();
+
+        return $period !== null
+            && $this->getDateInterval()->eq($period->getDateInterval())
+            && $this->getStartDate()->eq($period->getStartDate())
+            && ($end ? $end->eq($period->getEndDate()) : $this->getRecurrences() === $period->getRecurrences())
+            && ($this->getOptions() & (~static::IMMUTABLE)) === ($period->getOptions() & (~static::IMMUTABLE));
+    }
+
+    /**
+     * Determines if the instance is not equal to another.
+     * Warning: if options differ, instances wil never be equal.
+     *
+     * @param mixed $period
+     *
+     * @see notEqualTo()
+     *
+     * @return bool
+     */
+    public function ne($period): bool
+    {
+        return $this->notEqualTo($period);
+    }
+
+    /**
+     * Determines if the instance is not equal to another.
+     * Warning: if options differ, instances wil never be equal.
+     *
+     * @param mixed $period
+     *
+     * @return bool
+     */
+    public function notEqualTo($period): bool
+    {
+        return !$this->eq($period);
+    }
+
+    /**
+     * Determines if the start date is before an other given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function startsBefore($date = null): bool
+    {
+        return $this->getStartDate()->lessThan($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the start date is before or the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function startsBeforeOrAt($date = null): bool
+    {
+        return $this->getStartDate()->lessThanOrEqualTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the start date is after an other given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function startsAfter($date = null): bool
+    {
+        return $this->getStartDate()->greaterThan($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the start date is after or the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function startsAfterOrAt($date = null): bool
+    {
+        return $this->getStartDate()->greaterThanOrEqualTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the start date is the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function startsAt($date = null): bool
+    {
+        return $this->getStartDate()->equalTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the end date is before an other given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function endsBefore($date = null): bool
+    {
+        return $this->calculateEnd()->lessThan($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the end date is before or the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function endsBeforeOrAt($date = null): bool
+    {
+        return $this->calculateEnd()->lessThanOrEqualTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the end date is after an other given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function endsAfter($date = null): bool
+    {
+        return $this->calculateEnd()->greaterThan($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the end date is after or the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function endsAfterOrAt($date = null): bool
+    {
+        return $this->calculateEnd()->greaterThanOrEqualTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Determines if the end date is the same as a given date.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @param mixed $date
+     *
+     * @return bool
+     */
+    public function endsAt($date = null): bool
+    {
+        return $this->calculateEnd()->equalTo($this->resolveCarbon($date));
+    }
+
+    /**
+     * Return true if start date is now or later.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @return bool
+     */
+    public function isStarted(): bool
+    {
+        return $this->startsBeforeOrAt();
+    }
+
+    /**
+     * Return true if end date is now or later.
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @return bool
+     */
+    public function isEnded(): bool
+    {
+        return $this->endsBeforeOrAt();
+    }
+
+    /**
+     * Return true if now is between start date (included) and end date (excluded).
+     * (Rather start/end are included by options is ignored.)
+     *
+     * @return bool
+     */
+    public function isInProgress(): bool
+    {
+        return $this->isStarted() && !$this->isEnded();
+    }
+
+    /**
+     * Round the current instance at the given unit with given precision if specified and the given function.
+     *
+     * @param string                              $unit
+     * @param float|int|string|\DateInterval|null $precision
+     * @param string                              $function
+     *
+     * @return $this
+     */
+    public function roundUnit($unit, $precision = 1, $function = 'round')
+    {
+        $this->setStartDate($this->getStartDate()->roundUnit($unit, $precision, $function));
+
+        if ($this->endDate) {
+            $this->setEndDate($this->getEndDate()->roundUnit($unit, $precision, $function));
+        }
+
+        $this->setDateInterval($this->getDateInterval()->roundUnit($unit, $precision, $function));
+
+        return $this;
+    }
+
+    /**
+     * Truncate the current instance at the given unit with given precision if specified.
+     *
+     * @param string                              $unit
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return $this
+     */
+    public function floorUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance at the given unit with given precision if specified.
+     *
+     * @param string                              $unit
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return $this
+     */
+    public function ceilUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'ceil');
+    }
+
+    /**
+     * Round the current instance second with given precision if specified (else period interval is used).
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     * @param string                              $function
+     *
+     * @return $this
+     */
+    public function round($precision = null, $function = 'round')
+    {
+        return $this->roundWith($precision ?? (string) $this->getDateInterval(), $function);
+    }
+
+    /**
+     * Round the current instance second with given precision if specified (else period interval is used).
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return $this
+     */
+    public function floor($precision = null)
+    {
+        return $this->round($precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance second with given precision if specified (else period interval is used).
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return $this
+     */
+    public function ceil($precision = null)
+    {
+        return $this->round($precision, 'ceil');
+    }
+
+    /**
+     * Specify data which should be serialized to JSON.
+     *
+     * @link https://php.net/manual/en/jsonserializable.jsonserialize.php
+     *
+     * @return CarbonInterface[]
+     */
+    #[ReturnTypeWillChange]
+    public function jsonSerialize()
+    {
+        return $this->toArray();
+    }
+
+    /**
+     * Return true if the given date is between start and end.
+     *
+     * @param \Carbon\Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|\DateTimeInterface|string|null $date
+     *
+     * @return bool
+     */
+    public function contains($date = null): bool
+    {
+        $startMethod = 'startsBefore'.($this->isStartIncluded() ? 'OrAt' : '');
+        $endMethod = 'endsAfter'.($this->isEndIncluded() ? 'OrAt' : '');
+
+        return $this->$startMethod($date) && $this->$endMethod($date);
+    }
+
+    /**
+     * Return true if the current period follows a given other period (with no overlap).
+     * For instance, [2019-08-01 -> 2019-08-12] follows [2019-07-29 -> 2019-07-31]
+     * Note than in this example, follows() would be false if 2019-08-01 or 2019-07-31 was excluded by options.
+     *
+     * @param \Carbon\CarbonPeriod|\DatePeriod|string $period
+     *
+     * @return bool
+     */
+    public function follows($period, ...$arguments): bool
+    {
+        $period = $this->resolveCarbonPeriod($period, ...$arguments);
+
+        return $this->getIncludedStartDate()->equalTo($period->getIncludedEndDate()->add($period->getDateInterval()));
+    }
+
+    /**
+     * Return true if the given other period follows the current one (with no overlap).
+     * For instance, [2019-07-29 -> 2019-07-31] is followed by [2019-08-01 -> 2019-08-12]
+     * Note than in this example, isFollowedBy() would be false if 2019-08-01 or 2019-07-31 was excluded by options.
+     *
+     * @param \Carbon\CarbonPeriod|\DatePeriod|string $period
+     *
+     * @return bool
+     */
+    public function isFollowedBy($period, ...$arguments): bool
+    {
+        $period = $this->resolveCarbonPeriod($period, ...$arguments);
+
+        return $period->follows($this);
+    }
+
+    /**
+     * Return true if the given period either follows or is followed by the current one.
+     *
+     * @see follows()
+     * @see isFollowedBy()
+     *
+     * @param \Carbon\CarbonPeriod|\DatePeriod|string $period
+     *
+     * @return bool
+     */
+    public function isConsecutiveWith($period, ...$arguments): bool
+    {
+        return $this->follows($period, ...$arguments) || $this->isFollowedBy($period, ...$arguments);
+    }
+
+    /**
+     * Update properties after removing built-in filters.
+     *
+     * @return void
+     */
+    protected function updateInternalState()
+    {
+        if (!$this->hasFilter(static::END_DATE_FILTER)) {
+            $this->endDate = null;
+        }
+
+        if (!$this->hasFilter(static::RECURRENCES_FILTER)) {
+            $this->recurrences = null;
+        }
+    }
+
+    /**
+     * Create a filter tuple from raw parameters.
+     *
+     * Will create an automatic filter callback for one of Carbon's is* methods.
+     *
+     * @param array $parameters
+     *
+     * @return array
+     */
+    protected function createFilterTuple(array $parameters)
+    {
+        $method = array_shift($parameters);
+
+        if (!$this->isCarbonPredicateMethod($method)) {
+            return [$method, array_shift($parameters)];
+        }
+
+        return [function ($date) use ($method, $parameters) {
+            return ([$date, $method])(...$parameters);
+        }, $method];
+    }
+
+    /**
+     * Return whether given callable is a string pointing to one of Carbon's is* methods
+     * and should be automatically converted to a filter callback.
+     *
+     * @param callable $callable
+     *
+     * @return bool
+     */
+    protected function isCarbonPredicateMethod($callable)
+    {
+        return \is_string($callable) && str_starts_with($callable, 'is') &&
+            (method_exists($this->dateClass, $callable) || ([$this->dateClass, 'hasMacro'])($callable));
+    }
+
+    /**
+     * Recurrences filter callback (limits number of recurrences).
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     *
+     * @param \Carbon\Carbon $current
+     * @param int            $key
+     *
+     * @return bool|string
+     */
+    protected function filterRecurrences($current, $key)
+    {
+        if ($key < $this->recurrences) {
+            return true;
+        }
+
+        return static::END_ITERATION;
+    }
+
+    /**
+     * End date filter callback.
+     *
+     * @param \Carbon\Carbon $current
+     *
+     * @return bool|string
+     */
+    protected function filterEndDate($current)
+    {
+        if (!$this->isEndExcluded() && $current == $this->endDate) {
+            return true;
+        }
+
+        if ($this->dateInterval->invert ? $current > $this->endDate : $current < $this->endDate) {
+            return true;
+        }
+
+        return static::END_ITERATION;
+    }
+
+    /**
+     * End iteration filter callback.
+     *
+     * @return string
+     */
+    protected function endIteration()
+    {
+        return static::END_ITERATION;
+    }
+
+    /**
+     * Handle change of the parameters.
+     */
+    protected function handleChangedParameters()
+    {
+        if (($this->getOptions() & static::IMMUTABLE) && $this->dateClass === Carbon::class) {
+            $this->setDateClass(CarbonImmutable::class);
+        } elseif (!($this->getOptions() & static::IMMUTABLE) && $this->dateClass === CarbonImmutable::class) {
+            $this->setDateClass(Carbon::class);
+        }
+
+        $this->validationResult = null;
+    }
+
+    /**
+     * Validate current date and stop iteration when necessary.
+     *
+     * Returns true when current date is valid, false if it is not, or static::END_ITERATION
+     * when iteration should be stopped.
+     *
+     * @return bool|string
+     */
+    protected function validateCurrentDate()
+    {
+        if ($this->current === null) {
+            $this->rewind();
+        }
+
+        // Check after the first rewind to avoid repeating the initial validation.
+        if ($this->validationResult !== null) {
+            return $this->validationResult;
+        }
+
+        return $this->validationResult = $this->checkFilters();
+    }
+
+    /**
+     * Check whether current value and key pass all the filters.
+     *
+     * @return bool|string
+     */
+    protected function checkFilters()
+    {
+        $current = $this->prepareForReturn($this->current);
+
+        foreach ($this->filters as $tuple) {
+            $result = \call_user_func(
+                $tuple[0],
+                $current->avoidMutation(),
+                $this->key,
+                $this
+            );
+
+            if ($result === static::END_ITERATION) {
+                return static::END_ITERATION;
+            }
+
+            if (!$result) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Prepare given date to be returned to the external logic.
+     *
+     * @param CarbonInterface $date
+     *
+     * @return CarbonInterface
+     */
+    protected function prepareForReturn(CarbonInterface $date)
+    {
+        $date = ([$this->dateClass, 'make'])($date);
+
+        if ($this->timezone) {
+            $date = $date->setTimezone($this->timezone);
+        }
+
+        return $date;
+    }
+
+    /**
+     * Keep incrementing the current date until a valid date is found or the iteration is ended.
+     *
+     * @throws RuntimeException
+     *
+     * @return void
+     */
+    protected function incrementCurrentDateUntilValid()
+    {
+        $attempts = 0;
+
+        do {
+            $this->current = $this->current->add($this->dateInterval);
+
+            $this->validationResult = null;
+
+            if (++$attempts > static::NEXT_MAX_ATTEMPTS) {
+                throw new UnreachableException('Could not find next valid date.');
+            }
+        } while ($this->validateCurrentDate() === false);
+    }
+
+    /**
+     * Call given macro.
+     *
+     * @param string $name
+     * @param array  $parameters
+     *
+     * @return mixed
+     */
+    protected function callMacro($name, $parameters)
+    {
+        $macro = static::$macros[$name];
+
+        if ($macro instanceof Closure) {
+            $boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
+
+            return ($boundMacro ?: $macro)(...$parameters);
+        }
+
+        return $macro(...$parameters);
+    }
+
+    /**
+     * Return the Carbon instance passed through, a now instance in the same timezone
+     * if null given or parse the input if string given.
+     *
+     * @param \Carbon\Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|\DateTimeInterface|string|null $date
+     *
+     * @return \Carbon\CarbonInterface
+     */
+    protected function resolveCarbon($date = null)
+    {
+        return $this->getStartDate()->nowWithSameTz()->carbonize($date);
+    }
+
+    /**
+     * Resolve passed arguments or DatePeriod to a CarbonPeriod object.
+     *
+     * @param mixed $period
+     * @param mixed ...$arguments
+     *
+     * @return static
+     */
+    protected function resolveCarbonPeriod($period, ...$arguments)
+    {
+        if ($period instanceof self) {
+            return $period;
+        }
+
+        return $period instanceof DatePeriod
+            ? static::instance($period)
+            : static::create($period, ...$arguments);
+    }
+
+    private function orderCouple($first, $second): array
+    {
+        return $first > $second ? [$second, $first] : [$first, $second];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php
new file mode 100644
index 0000000..2bd36c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php
@@ -0,0 +1,306 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Carbon\Exceptions\InvalidCastException;
+use Carbon\Exceptions\InvalidTimeZoneException;
+use DateTimeInterface;
+use DateTimeZone;
+
+class CarbonTimeZone extends DateTimeZone
+{
+    public function __construct($timezone = null)
+    {
+        parent::__construct(static::getDateTimeZoneNameFromMixed($timezone));
+    }
+
+    protected static function parseNumericTimezone($timezone)
+    {
+        if ($timezone <= -100 || $timezone >= 100) {
+            throw new InvalidTimeZoneException('Absolute timezone offset cannot be greater than 100.');
+        }
+
+        return ($timezone >= 0 ? '+' : '').$timezone.':00';
+    }
+
+    protected static function getDateTimeZoneNameFromMixed($timezone)
+    {
+        if ($timezone === null) {
+            return date_default_timezone_get();
+        }
+
+        if (\is_string($timezone)) {
+            $timezone = preg_replace('/^\s*([+-]\d+)(\d{2})\s*$/', '$1:$2', $timezone);
+        }
+
+        if (is_numeric($timezone)) {
+            return static::parseNumericTimezone($timezone);
+        }
+
+        return $timezone;
+    }
+
+    protected static function getDateTimeZoneFromName(&$name)
+    {
+        return @timezone_open($name = (string) static::getDateTimeZoneNameFromMixed($name));
+    }
+
+    /**
+     * Cast the current instance into the given class.
+     *
+     * @param string $className The $className::instance() method will be called to cast the current object.
+     *
+     * @return DateTimeZone
+     */
+    public function cast(string $className)
+    {
+        if (!method_exists($className, 'instance')) {
+            if (is_a($className, DateTimeZone::class, true)) {
+                return new $className($this->getName());
+            }
+
+            throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
+        }
+
+        return $className::instance($this);
+    }
+
+    /**
+     * Create a CarbonTimeZone from mixed input.
+     *
+     * @param DateTimeZone|string|int|null $object     original value to get CarbonTimeZone from it.
+     * @param DateTimeZone|string|int|null $objectDump dump of the object for error messages.
+     *
+     * @throws InvalidTimeZoneException
+     *
+     * @return false|static
+     */
+    public static function instance($object = null, $objectDump = null)
+    {
+        $tz = $object;
+
+        if ($tz instanceof static) {
+            return $tz;
+        }
+
+        if ($tz === null) {
+            return new static();
+        }
+
+        if (!$tz instanceof DateTimeZone) {
+            $tz = static::getDateTimeZoneFromName($object);
+        }
+
+        if ($tz === false) {
+            if (Carbon::isStrictModeEnabled()) {
+                throw new InvalidTimeZoneException('Unknown or bad timezone ('.($objectDump ?: $object).')');
+            }
+
+            return false;
+        }
+
+        return new static($tz->getName());
+    }
+
+    /**
+     * Returns abbreviated name of the current timezone according to DST setting.
+     *
+     * @param bool $dst
+     *
+     * @return string
+     */
+    public function getAbbreviatedName($dst = false)
+    {
+        $name = $this->getName();
+
+        foreach ($this->listAbbreviations() as $abbreviation => $zones) {
+            foreach ($zones as $zone) {
+                if ($zone['timezone_id'] === $name && $zone['dst'] == $dst) {
+                    return $abbreviation;
+                }
+            }
+        }
+
+        return 'unknown';
+    }
+
+    /**
+     * @alias getAbbreviatedName
+     *
+     * Returns abbreviated name of the current timezone according to DST setting.
+     *
+     * @param bool $dst
+     *
+     * @return string
+     */
+    public function getAbbr($dst = false)
+    {
+        return $this->getAbbreviatedName($dst);
+    }
+
+    /**
+     * Get the offset as string "sHH:MM" (such as "+00:00" or "-12:30").
+     *
+     * @param DateTimeInterface|null $date
+     *
+     * @return string
+     */
+    public function toOffsetName(DateTimeInterface $date = null)
+    {
+        return static::getOffsetNameFromMinuteOffset(
+            $this->getOffset($date ?: Carbon::now($this)) / 60
+        );
+    }
+
+    /**
+     * Returns a new CarbonTimeZone object using the offset string instead of region string.
+     *
+     * @param DateTimeInterface|null $date
+     *
+     * @return CarbonTimeZone
+     */
+    public function toOffsetTimeZone(DateTimeInterface $date = null)
+    {
+        return new static($this->toOffsetName($date));
+    }
+
+    /**
+     * Returns the first region string (such as "America/Toronto") that matches the current timezone or
+     * false if no match is found.
+     *
+     * @see timezone_name_from_abbr native PHP function.
+     *
+     * @param DateTimeInterface|null $date
+     * @param int                    $isDst
+     *
+     * @return string|false
+     */
+    public function toRegionName(DateTimeInterface $date = null, $isDst = 1)
+    {
+        $name = $this->getName();
+        $firstChar = substr($name, 0, 1);
+
+        if ($firstChar !== '+' && $firstChar !== '-') {
+            return $name;
+        }
+
+        $date = $date ?: Carbon::now($this);
+
+        // Integer construction no longer supported since PHP 8
+        // @codeCoverageIgnoreStart
+        try {
+            $offset = @$this->getOffset($date) ?: 0;
+        } catch (\Throwable $e) {
+            $offset = 0;
+        }
+        // @codeCoverageIgnoreEnd
+
+        $name = @timezone_name_from_abbr('', $offset, $isDst);
+
+        if ($name) {
+            return $name;
+        }
+
+        foreach (timezone_identifiers_list() as $timezone) {
+            if (Carbon::instance($date)->tz($timezone)->getOffset() === $offset) {
+                return $timezone;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns a new CarbonTimeZone object using the region string instead of offset string.
+     *
+     * @param DateTimeInterface|null $date
+     *
+     * @return CarbonTimeZone|false
+     */
+    public function toRegionTimeZone(DateTimeInterface $date = null)
+    {
+        $tz = $this->toRegionName($date);
+
+        if ($tz === false) {
+            if (Carbon::isStrictModeEnabled()) {
+                throw new InvalidTimeZoneException('Unknown timezone for offset '.$this->getOffset($date ?: Carbon::now($this)).' seconds.');
+            }
+
+            return false;
+        }
+
+        return new static($tz);
+    }
+
+    /**
+     * Cast to string (get timezone name).
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getName();
+    }
+
+    /**
+     * Create a CarbonTimeZone from mixed input.
+     *
+     * @param DateTimeZone|string|int|null $object
+     *
+     * @return false|static
+     */
+    public static function create($object = null)
+    {
+        return static::instance($object);
+    }
+
+    /**
+     * Create a CarbonTimeZone from int/float hour offset.
+     *
+     * @param float $hourOffset number of hour of the timezone shift (can be decimal).
+     *
+     * @return false|static
+     */
+    public static function createFromHourOffset(float $hourOffset)
+    {
+        return static::createFromMinuteOffset($hourOffset * Carbon::MINUTES_PER_HOUR);
+    }
+
+    /**
+     * Create a CarbonTimeZone from int/float minute offset.
+     *
+     * @param float $minuteOffset number of total minutes of the timezone shift.
+     *
+     * @return false|static
+     */
+    public static function createFromMinuteOffset(float $minuteOffset)
+    {
+        return static::instance(static::getOffsetNameFromMinuteOffset($minuteOffset));
+    }
+
+    /**
+     * Convert a total minutes offset into a standardized timezone offset string.
+     *
+     * @param float $minutes number of total minutes of the timezone shift.
+     *
+     * @return string
+     */
+    public static function getOffsetNameFromMinuteOffset(float $minutes): string
+    {
+        $minutes = round($minutes);
+        $unsignedMinutes = abs($minutes);
+
+        return ($minutes < 0 ? '-' : '+').
+            str_pad((string) floor($unsignedMinutes / 60), 2, '0', STR_PAD_LEFT).
+            ':'.
+            str_pad((string) ($unsignedMinutes % 60), 2, '0', STR_PAD_LEFT);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Cli/Invoker.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Cli/Invoker.php
new file mode 100644
index 0000000..d53b1f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Cli/Invoker.php
@@ -0,0 +1,29 @@
+<?php
+
+namespace Carbon\Cli;
+
+class Invoker
+{
+    public const CLI_CLASS_NAME = 'Carbon\\Cli';
+
+    protected function runWithCli(string $className, array $parameters): bool
+    {
+        $cli = new $className();
+
+        return $cli(...$parameters);
+    }
+
+    public function __invoke(...$parameters): bool
+    {
+        if (class_exists(self::CLI_CLASS_NAME)) {
+            return $this->runWithCli(self::CLI_CLASS_NAME, $parameters);
+        }
+
+        $function = (($parameters[1] ?? '') === 'install' ? ($parameters[2] ?? null) : null) ?: 'shell_exec';
+        $function('composer require carbon-cli/carbon-cli --no-interaction');
+
+        echo 'Installation succeeded.';
+
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonDoctrineType.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonDoctrineType.php
new file mode 100644
index 0000000..35c5558
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonDoctrineType.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Doctrine\DBAL\Platforms\AbstractPlatform;
+
+interface CarbonDoctrineType
+{
+    public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform);
+
+    public function convertToPHPValue($value, AbstractPlatform $platform);
+
+    public function convertToDatabaseValue($value, AbstractPlatform $platform);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonImmutableType.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonImmutableType.php
new file mode 100644
index 0000000..3239743
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonImmutableType.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Doctrine\DBAL\Platforms\AbstractPlatform;
+
+class CarbonImmutableType extends DateTimeImmutableType implements CarbonDoctrineType
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function getName()
+    {
+        return 'carbon_immutable';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function requiresSQLCommentHint(AbstractPlatform $platform)
+    {
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonType.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonType.php
new file mode 100644
index 0000000..e5f52c7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonType.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Doctrine\DBAL\Platforms\AbstractPlatform;
+
+class CarbonType extends DateTimeType implements CarbonDoctrineType
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function getName()
+    {
+        return 'carbon';
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function requiresSQLCommentHint(AbstractPlatform $platform)
+    {
+        return true;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonTypeConverter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonTypeConverter.php
new file mode 100644
index 0000000..fa0d5b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/CarbonTypeConverter.php
@@ -0,0 +1,108 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Carbon\Carbon;
+use Carbon\CarbonInterface;
+use DateTimeInterface;
+use Doctrine\DBAL\Platforms\AbstractPlatform;
+use Doctrine\DBAL\Types\ConversionException;
+use Exception;
+
+/**
+ * @template T of CarbonInterface
+ */
+trait CarbonTypeConverter
+{
+    /**
+     * @return class-string<T>
+     */
+    protected function getCarbonClassName(): string
+    {
+        return Carbon::class;
+    }
+
+    public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform)
+    {
+        $precision = ($fieldDeclaration['precision'] ?: 10) === 10
+            ? DateTimeDefaultPrecision::get()
+            : $fieldDeclaration['precision'];
+        $type = parent::getSQLDeclaration($fieldDeclaration, $platform);
+
+        if (!$precision) {
+            return $type;
+        }
+
+        if (str_contains($type, '(')) {
+            return preg_replace('/\(\d+\)/', "($precision)", $type);
+        }
+
+        [$before, $after] = explode(' ', "$type ");
+
+        return trim("$before($precision) $after");
+    }
+
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     *
+     * @return T|null
+     */
+    public function convertToPHPValue($value, AbstractPlatform $platform)
+    {
+        $class = $this->getCarbonClassName();
+
+        if ($value === null || is_a($value, $class)) {
+            return $value;
+        }
+
+        if ($value instanceof DateTimeInterface) {
+            return $class::instance($value);
+        }
+
+        $date = null;
+        $error = null;
+
+        try {
+            $date = $class::parse($value);
+        } catch (Exception $exception) {
+            $error = $exception;
+        }
+
+        if (!$date) {
+            throw ConversionException::conversionFailedFormat(
+                $value,
+                $this->getName(),
+                'Y-m-d H:i:s.u or any format supported by '.$class.'::parse()',
+                $error
+            );
+        }
+
+        return $date;
+    }
+
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     *
+     * @return string|null
+     */
+    public function convertToDatabaseValue($value, AbstractPlatform $platform)
+    {
+        if ($value === null) {
+            return $value;
+        }
+
+        if ($value instanceof DateTimeInterface) {
+            return $value->format('Y-m-d H:i:s.u');
+        }
+
+        throw ConversionException::conversionFailedInvalidType(
+            $value,
+            $this->getName(),
+            ['null', 'DateTime', 'Carbon']
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeDefaultPrecision.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeDefaultPrecision.php
new file mode 100644
index 0000000..f9744b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeDefaultPrecision.php
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+class DateTimeDefaultPrecision
+{
+    private static $precision = 6;
+
+    /**
+     * Change the default Doctrine datetime and datetime_immutable precision.
+     *
+     * @param int $precision
+     */
+    public static function set(int $precision): void
+    {
+        self::$precision = $precision;
+    }
+
+    /**
+     * Get the default Doctrine datetime and datetime_immutable precision.
+     *
+     * @return int
+     */
+    public static function get(): int
+    {
+        return self::$precision;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeImmutableType.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeImmutableType.php
new file mode 100644
index 0000000..4992710
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeImmutableType.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Carbon\CarbonImmutable;
+use Doctrine\DBAL\Types\VarDateTimeImmutableType;
+
+class DateTimeImmutableType extends VarDateTimeImmutableType implements CarbonDoctrineType
+{
+    /** @use CarbonTypeConverter<CarbonImmutable> */
+    use CarbonTypeConverter;
+
+    /**
+     * @return class-string<CarbonImmutable>
+     */
+    protected function getCarbonClassName(): string
+    {
+        return CarbonImmutable::class;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeType.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeType.php
new file mode 100644
index 0000000..29b0bb9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Doctrine/DateTimeType.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * Thanks to https://github.com/flaushi for his suggestion:
+ * https://github.com/doctrine/dbal/issues/2873#issuecomment-534956358
+ */
+namespace Carbon\Doctrine;
+
+use Carbon\Carbon;
+use Doctrine\DBAL\Types\VarDateTimeType;
+
+class DateTimeType extends VarDateTimeType implements CarbonDoctrineType
+{
+    /** @use CarbonTypeConverter<Carbon> */
+    use CarbonTypeConverter;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadComparisonUnitException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadComparisonUnitException.php
new file mode 100644
index 0000000..bc2aa79
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadComparisonUnitException.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+
+class BadComparisonUnitException extends UnitException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $unit
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($unit, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Bad comparison unit: '$unit'", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentConstructorException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentConstructorException.php
new file mode 100644
index 0000000..a9f453e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentConstructorException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use BadMethodCallException as BaseBadMethodCallException;
+use Exception;
+
+class BadFluentConstructorException extends BaseBadMethodCallException implements BadMethodCallException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $method
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($method, $code = 0, Exception $previous = null)
+    {
+        parent::__construct(sprintf("Unknown fluent constructor '%s'.", $method), $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentSetterException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentSetterException.php
new file mode 100644
index 0000000..7a28f39
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadFluentSetterException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use BadMethodCallException as BaseBadMethodCallException;
+use Exception;
+
+class BadFluentSetterException extends BaseBadMethodCallException implements BadMethodCallException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $method
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($method, $code = 0, Exception $previous = null)
+    {
+        parent::__construct(sprintf("Unknown fluent setter '%s'", $method), $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadMethodCallException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadMethodCallException.php
new file mode 100644
index 0000000..307a4ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/BadMethodCallException.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+interface BadMethodCallException extends Exception
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/Exception.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/Exception.php
new file mode 100644
index 0000000..86e8a15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/Exception.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+interface Exception
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ImmutableException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ImmutableException.php
new file mode 100644
index 0000000..5fb1c68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ImmutableException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use RuntimeException as BaseRuntimeException;
+
+class ImmutableException extends BaseRuntimeException implements RuntimeException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $value    the immutable type/value
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($value, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("$value is immutable.", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidArgumentException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidArgumentException.php
new file mode 100644
index 0000000..60ed740
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidArgumentException.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+interface InvalidArgumentException extends Exception
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidCastException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidCastException.php
new file mode 100644
index 0000000..77466c7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidCastException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidCastException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidDateException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidDateException.php
new file mode 100644
index 0000000..f5dbfe2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidDateException.php
@@ -0,0 +1,66 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidDateException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * The invalid field.
+     *
+     * @var string
+     */
+    private $field;
+
+    /**
+     * The invalid value.
+     *
+     * @var mixed
+     */
+    private $value;
+
+    /**
+     * Constructor.
+     *
+     * @param string         $field
+     * @param mixed          $value
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($field, $value, $code = 0, Exception $previous = null)
+    {
+        $this->field = $field;
+        $this->value = $value;
+        parent::__construct($field.' : '.$value.' is not a valid value.', $code, $previous);
+    }
+
+    /**
+     * Get the invalid field.
+     *
+     * @return string
+     */
+    public function getField()
+    {
+        return $this->field;
+    }
+
+    /**
+     * Get the invalid value.
+     *
+     * @return mixed
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidFormatException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidFormatException.php
new file mode 100644
index 0000000..dd26a90
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidFormatException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidFormatException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidIntervalException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidIntervalException.php
new file mode 100644
index 0000000..b4c76dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidIntervalException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidIntervalException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodDateException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodDateException.php
new file mode 100644
index 0000000..abe1aef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodDateException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidPeriodDateException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodParameterException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodParameterException.php
new file mode 100644
index 0000000..b061ef1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidPeriodParameterException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidPeriodParameterException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTimeZoneException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTimeZoneException.php
new file mode 100644
index 0000000..03bd8ac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTimeZoneException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidTimeZoneException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTypeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTypeException.php
new file mode 100644
index 0000000..bc124a6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/InvalidTypeException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class InvalidTypeException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotACarbonClassException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotACarbonClassException.php
new file mode 100644
index 0000000..78ce939
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotACarbonClassException.php
@@ -0,0 +1,34 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Carbon\CarbonInterface;
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class NotACarbonClassException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $className
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($className, $code = 0, Exception $previous = null)
+    {
+        parent::__construct(sprintf(
+            'Given class does not implement %s: %s',
+            CarbonInterface::class,
+            $className
+        ), $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotAPeriodException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotAPeriodException.php
new file mode 100644
index 0000000..8bdda85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotAPeriodException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class NotAPeriodException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotLocaleAwareException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotLocaleAwareException.php
new file mode 100644
index 0000000..8aab192
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/NotLocaleAwareException.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class NotLocaleAwareException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param mixed          $object
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($object, $code = 0, Exception $previous = null)
+    {
+        $dump = \is_object($object) ? \get_class($object) : \gettype($object);
+
+        parent::__construct("$dump does neither implements Symfony\Contracts\Translation\LocaleAwareInterface nor getLocale() method.", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/OutOfRangeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/OutOfRangeException.php
new file mode 100644
index 0000000..33cd1b5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/OutOfRangeException.php
@@ -0,0 +1,100 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+// This will extends OutOfRangeException instead of InvalidArgumentException since 3.0.0
+// use OutOfRangeException as BaseOutOfRangeException;
+
+class OutOfRangeException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * The unit or name of the value.
+     *
+     * @var string
+     */
+    private $unit;
+
+    /**
+     * The range minimum.
+     *
+     * @var mixed
+     */
+    private $min;
+
+    /**
+     * The range maximum.
+     *
+     * @var mixed
+     */
+    private $max;
+
+    /**
+     * The invalid value.
+     *
+     * @var mixed
+     */
+    private $value;
+
+    /**
+     * Constructor.
+     *
+     * @param string         $unit
+     * @param mixed          $min
+     * @param mixed          $max
+     * @param mixed          $value
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($unit, $min, $max, $value, $code = 0, Exception $previous = null)
+    {
+        $this->unit = $unit;
+        $this->min = $min;
+        $this->max = $max;
+        $this->value = $value;
+
+        parent::__construct("$unit must be between $min and $max, $value given", $code, $previous);
+    }
+
+    /**
+     * @return mixed
+     */
+    public function getMax()
+    {
+        return $this->max;
+    }
+
+    /**
+     * @return mixed
+     */
+    public function getMin()
+    {
+        return $this->min;
+    }
+
+    /**
+     * @return mixed
+     */
+    public function getUnit()
+    {
+        return $this->unit;
+    }
+
+    /**
+     * @return mixed
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ParseErrorException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ParseErrorException.php
new file mode 100644
index 0000000..3510b40
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/ParseErrorException.php
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class ParseErrorException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $expected
+     * @param string         $actual
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($expected, $actual, $help = '', $code = 0, Exception $previous = null)
+    {
+        $actual = $actual === '' ? 'data is missing' : "get '$actual'";
+
+        parent::__construct(trim("Format expected $expected but $actual\n$help"), $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/RuntimeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/RuntimeException.php
new file mode 100644
index 0000000..6ca5f5f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/RuntimeException.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+interface RuntimeException extends Exception
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitException.php
new file mode 100644
index 0000000..838847b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class UnitException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitNotConfiguredException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitNotConfiguredException.php
new file mode 100644
index 0000000..7f8ec9e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnitNotConfiguredException.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+
+class UnitNotConfiguredException extends UnitException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $unit
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($unit, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Unit $unit have no configuration to get total from other units.", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownGetterException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownGetterException.php
new file mode 100644
index 0000000..4591d35
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownGetterException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class UnknownGetterException extends BaseInvalidArgumentException implements InvalidArgumentException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $name     getter name
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($name, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Unknown getter '$name'", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownMethodException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownMethodException.php
new file mode 100644
index 0000000..3646872
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownMethodException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use BadMethodCallException as BaseBadMethodCallException;
+use Exception;
+
+class UnknownMethodException extends BaseBadMethodCallException implements BadMethodCallException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $method
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($method, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Method $method does not exist.", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownSetterException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownSetterException.php
new file mode 100644
index 0000000..5020369
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownSetterException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use InvalidArgumentException as BaseInvalidArgumentException;
+
+class UnknownSetterException extends BaseInvalidArgumentException implements BadMethodCallException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $name     setter name
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($name, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Unknown setter '$name'", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownUnitException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownUnitException.php
new file mode 100644
index 0000000..d2f76ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnknownUnitException.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+
+class UnknownUnitException extends UnitException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $unit
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($unit, $code = 0, Exception $previous = null)
+    {
+        parent::__construct("Unknown unit '$unit'.", $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnreachableException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnreachableException.php
new file mode 100644
index 0000000..b38ae12
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Exceptions/UnreachableException.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Exceptions;
+
+use Exception;
+use RuntimeException as BaseRuntimeException;
+
+class UnreachableException extends BaseRuntimeException implements RuntimeException
+{
+    /**
+     * Constructor.
+     *
+     * @param string         $message
+     * @param int            $code
+     * @param Exception|null $previous
+     */
+    public function __construct($message, $code = 0, Exception $previous = null)
+    {
+        parent::__construct($message, $code, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Factory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Factory.php
new file mode 100644
index 0000000..e1d747f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Factory.php
@@ -0,0 +1,304 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Closure;
+use ReflectionMethod;
+
+/**
+ * A factory to generate Carbon instances with common settings.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @method bool                                               canBeCreatedFromFormat($date, $format)                                                                                             Checks if the (date)time string is in a given format and valid to create a
+ *                                                                                                                                                                                               new instance.
+ * @method Carbon|false                                       create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $tz = null)                                           Create a new Carbon instance from a specific date and time.
+ *                                                                                                                                                                                               If any of $year, $month or $day are set to null their now() values will
+ *                                                                                                                                                                                               be used.
+ *                                                                                                                                                                                               If $hour is null it will be set to its now() value and the default
+ *                                                                                                                                                                                               values for $minute and $second will be their now() values.
+ *                                                                                                                                                                                               If $hour is not null then the default values for $minute and $second
+ *                                                                                                                                                                                               will be 0.
+ * @method Carbon                                             createFromDate($year = null, $month = null, $day = null, $tz = null)                                                               Create a Carbon instance from just a date. The time portion is set to now.
+ * @method Carbon|false                                       createFromFormat($format, $time, $tz = null)                                                                                       Create a Carbon instance from a specific format.
+ * @method Carbon|false                                       createFromIsoFormat($format, $time, $tz = null, $locale = 'en', $translator = null)                                                Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
+ * @method Carbon|false                                       createFromLocaleFormat($format, $locale, $time, $tz = null)                                                                        Create a Carbon instance from a specific format and a string in a given language.
+ * @method Carbon|false                                       createFromLocaleIsoFormat($format, $locale, $time, $tz = null)                                                                     Create a Carbon instance from a specific ISO format and a string in a given language.
+ * @method Carbon                                             createFromTime($hour = 0, $minute = 0, $second = 0, $tz = null)                                                                    Create a Carbon instance from just a time. The date portion is set to today.
+ * @method Carbon                                             createFromTimeString($time, $tz = null)                                                                                            Create a Carbon instance from a time string. The date portion is set to today.
+ * @method Carbon                                             createFromTimestamp($timestamp, $tz = null)                                                                                        Create a Carbon instance from a timestamp and set the timezone (use default one if not specified).
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method Carbon                                             createFromTimestampMs($timestamp, $tz = null)                                                                                      Create a Carbon instance from a timestamp in milliseconds.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method Carbon                                             createFromTimestampMsUTC($timestamp)                                                                                               Create a Carbon instance from a timestamp in milliseconds.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method Carbon                                             createFromTimestampUTC($timestamp)                                                                                                 Create a Carbon instance from an timestamp keeping the timezone to UTC.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method Carbon                                             createMidnightDate($year = null, $month = null, $day = null, $tz = null)                                                           Create a Carbon instance from just a date. The time portion is set to midnight.
+ * @method Carbon|false                                       createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $tz = null)                     Create a new safe Carbon instance from a specific date and time.
+ *                                                                                                                                                                                               If any of $year, $month or $day are set to null their now() values will
+ *                                                                                                                                                                                               be used.
+ *                                                                                                                                                                                               If $hour is null it will be set to its now() value and the default
+ *                                                                                                                                                                                               values for $minute and $second will be their now() values.
+ *                                                                                                                                                                                               If $hour is not null then the default values for $minute and $second
+ *                                                                                                                                                                                               will be 0.
+ *                                                                                                                                                                                               If one of the set values is not valid, an InvalidDateException
+ *                                                                                                                                                                                               will be thrown.
+ * @method CarbonInterface                                    createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $tz = null)       Create a new Carbon instance from a specific date and time using strict validation.
+ * @method Carbon                                             disableHumanDiffOption($humanDiffOption)                                                                                           @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method Carbon                                             enableHumanDiffOption($humanDiffOption)                                                                                            @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method mixed                                              executeWithLocale($locale, $func)                                                                                                  Set the current locale to the given, execute the passed function, reset the locale to previous one,
+ *                                                                                                                                                                                               then return the result of the closure (or null if the closure was void).
+ * @method Carbon                                             fromSerialized($value)                                                                                                             Create an instance from a serialized string.
+ * @method void                                               genericMacro($macro, $priority = 0)                                                                                                Register a custom macro.
+ * @method array                                              getAvailableLocales()                                                                                                              Returns the list of internally available locales and already loaded custom locales.
+ *                                                                                                                                                                                               (It will ignore custom translator dynamic loading.)
+ * @method Language[]                                         getAvailableLocalesInfo()                                                                                                          Returns list of Language object for each available locale. This object allow you to get the ISO name, native
+ *                                                                                                                                                                                               name, region and variant of the locale.
+ * @method array                                              getDays()                                                                                                                          Get the days of the week
+ * @method string|null                                        getFallbackLocale()                                                                                                                Get the fallback locale.
+ * @method array                                              getFormatsToIsoReplacements()                                                                                                      List of replacements from date() format to isoFormat().
+ * @method int                                                getHumanDiffOptions()                                                                                                              Return default humanDiff() options (merged flags as integer).
+ * @method array                                              getIsoUnits()                                                                                                                      Returns list of locale units for ISO formatting.
+ * @method Carbon                                             getLastErrors()                                                                                                                    {@inheritdoc}
+ * @method string                                             getLocale()                                                                                                                        Get the current translator locale.
+ * @method callable|null                                      getMacro($name)                                                                                                                    Get the raw callable macro registered globally for a given name.
+ * @method int                                                getMidDayAt()                                                                                                                      get midday/noon hour
+ * @method Closure|Carbon                                     getTestNow()                                                                                                                       Get the Carbon instance (real or mock) to be returned when a "now"
+ *                                                                                                                                                                                               instance is created.
+ * @method string                                             getTimeFormatByPrecision($unitPrecision)                                                                                           Return a format from H:i to H:i:s.u according to given unit precision.
+ * @method string                                             getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null)                               Returns raw translation message for a given key.
+ * @method \Symfony\Component\Translation\TranslatorInterface getTranslator()                                                                                                                    Get the default translator instance in use.
+ * @method int                                                getWeekEndsAt()                                                                                                                    Get the last day of week
+ * @method int                                                getWeekStartsAt()                                                                                                                  Get the first day of week
+ * @method array                                              getWeekendDays()                                                                                                                   Get weekend days
+ * @method bool                                               hasFormat($date, $format)                                                                                                          Checks if the (date)time string is in a given format.
+ * @method bool                                               hasFormatWithModifiers($date, $format)                                                                                             Checks if the (date)time string is in a given format.
+ * @method bool                                               hasMacro($name)                                                                                                                    Checks if macro is registered globally.
+ * @method bool                                               hasRelativeKeywords($time)                                                                                                         Determine if a time string will produce a relative date.
+ * @method bool                                               hasTestNow()                                                                                                                       Determine if there is a valid test instance set. A valid test instance
+ *                                                                                                                                                                                               is anything that is not null.
+ * @method Carbon                                             instance($date)                                                                                                                    Create a Carbon instance from a DateTime one.
+ * @method bool                                               isImmutable()                                                                                                                      Returns true if the current class/instance is immutable.
+ * @method bool                                               isModifiableUnit($unit)                                                                                                            Returns true if a property can be changed via setter.
+ * @method bool                                               isMutable()                                                                                                                        Returns true if the current class/instance is mutable.
+ * @method bool                                               isStrictModeEnabled()                                                                                                              Returns true if the strict mode is globally in use, false else.
+ *                                                                                                                                                                                               (It can be overridden in specific instances.)
+ * @method bool                                               localeHasDiffOneDayWords($locale)                                                                                                  Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
+ *                                                                                                                                                                                               Support is considered enabled if the 3 words are translated in the given locale.
+ * @method bool                                               localeHasDiffSyntax($locale)                                                                                                       Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
+ *                                                                                                                                                                                               Support is considered enabled if the 4 sentences are translated in the given locale.
+ * @method bool                                               localeHasDiffTwoDayWords($locale)                                                                                                  Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
+ *                                                                                                                                                                                               Support is considered enabled if the 2 words are translated in the given locale.
+ * @method bool                                               localeHasPeriodSyntax($locale)                                                                                                     Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
+ *                                                                                                                                                                                               Support is considered enabled if the 4 sentences are translated in the given locale.
+ * @method bool                                               localeHasShortUnits($locale)                                                                                                       Returns true if the given locale is internally supported and has short-units support.
+ *                                                                                                                                                                                               Support is considered enabled if either year, day or hour has a short variant translated.
+ * @method void                                               macro($name, $macro)                                                                                                               Register a custom macro.
+ * @method Carbon|null                                        make($var)                                                                                                                         Make a Carbon instance from given variable if possible.
+ *                                                                                                                                                                                               Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
+ *                                                                                                                                                                                               and recurrences). Throw an exception for invalid format, but otherwise return null.
+ * @method Carbon                                             maxValue()                                                                                                                         Create a Carbon instance for the greatest supported date.
+ * @method Carbon                                             minValue()                                                                                                                         Create a Carbon instance for the lowest supported date.
+ * @method void                                               mixin($mixin)                                                                                                                      Mix another object into the class.
+ * @method Carbon                                             now($tz = null)                                                                                                                    Get a Carbon instance for the current date and time.
+ * @method Carbon                                             parse($time = null, $tz = null)                                                                                                    Create a carbon instance from a string.
+ *                                                                                                                                                                                               This is an alias for the constructor that allows better fluent syntax
+ *                                                                                                                                                                                               as it allows you to do Carbon::parse('Monday next week')->fn() rather
+ *                                                                                                                                                                                               than (new Carbon('Monday next week'))->fn().
+ * @method Carbon                                             parseFromLocale($time, $locale = null, $tz = null)                                                                                 Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
+ * @method string                                             pluralUnit(string $unit)                                                                                                           Returns standardized plural of a given singular/plural unit name (in English).
+ * @method Carbon|false                                       rawCreateFromFormat($format, $time, $tz = null)                                                                                    Create a Carbon instance from a specific format.
+ * @method Carbon                                             rawParse($time = null, $tz = null)                                                                                                 Create a carbon instance from a string.
+ *                                                                                                                                                                                               This is an alias for the constructor that allows better fluent syntax
+ *                                                                                                                                                                                               as it allows you to do Carbon::parse('Monday next week')->fn() rather
+ *                                                                                                                                                                                               than (new Carbon('Monday next week'))->fn().
+ * @method Carbon                                             resetMacros()                                                                                                                      Remove all macros and generic macros.
+ * @method void                                               resetMonthsOverflow()                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method void                                               resetToStringFormat()                                                                                                              Reset the format used to the default when type juggling a Carbon instance to a string
+ * @method void                                               resetYearsOverflow()                                                                                                               @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method void                                               serializeUsing($callback)                                                                                                          @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather transform Carbon object before the serialization.
+ *                                                                                                                                                                                               JSON serialize all Carbon instances using the given callback.
+ * @method Carbon                                             setFallbackLocale($locale)                                                                                                         Set the fallback locale.
+ * @method Carbon                                             setHumanDiffOptions($humanDiffOptions)                                                                                             @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method bool                                               setLocale($locale)                                                                                                                 Set the current translator locale and indicate if the source locale file exists.
+ *                                                                                                                                                                                               Pass 'auto' as locale to use closest language from the current LC_TIME locale.
+ * @method void                                               setMidDayAt($hour)                                                                                                                 @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather consider mid-day is always 12pm, then if you need to test if it's an other
+ *                                                                                                                                                                                                           hour, test it explicitly:
+ *                                                                                                                                                                                                               $date->format('G') == 13
+ *                                                                                                                                                                                                           or to set explicitly to a given hour:
+ *                                                                                                                                                                                                               $date->setTime(13, 0, 0, 0)
+ *                                                                                                                                                                                               Set midday/noon hour
+ * @method Carbon                                             setTestNow($testNow = null)                                                                                                        Set a Carbon instance (real or mock) to be returned when a "now"
+ *                                                                                                                                                                                               instance is created.  The provided instance will be returned
+ *                                                                                                                                                                                               specifically under the following conditions:
+ *                                                                                                                                                                                                 - A call to the static now() method, ex. Carbon::now()
+ *                                                                                                                                                                                                 - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
+ *                                                                                                                                                                                                 - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
+ *                                                                                                                                                                                                 - When a string containing the desired time is passed to Carbon::parse().
+ *                                                                                                                                                                                               Note the timezone parameter was left out of the examples above and
+ *                                                                                                                                                                                               has no affect as the mock value will be returned regardless of its value.
+ *                                                                                                                                                                                               To clear the test instance call this method using the default
+ *                                                                                                                                                                                               parameter of null.
+ *                                                                                                                                                                                               /!\ Use this method for unit tests only.
+ * @method void                                               setToStringFormat($format)                                                                                                         @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather let Carbon object being casted to string with DEFAULT_TO_STRING_FORMAT, and
+ *                                                                                                                                                                                                           use other method or custom format passed to format() method if you need to dump an other string
+ *                                                                                                                                                                                                           format.
+ *                                                                                                                                                                                               Set the default format used when type juggling a Carbon instance to a string
+ * @method void                                               setTranslator(\Symfony\Component\Translation\TranslatorInterface $translator)                                                      Set the default translator instance to use.
+ * @method Carbon                                             setUtf8($utf8)                                                                                                                     @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use UTF-8 language packages on every machine.
+ *                                                                                                                                                                                               Set if UTF8 will be used for localized date/time.
+ * @method void                                               setWeekEndsAt($day)                                                                                                                @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           Use $weekStartsAt optional parameter instead when using startOfWeek, floorWeek, ceilWeek
+ *                                                                                                                                                                                                           or roundWeek method. You can also use the 'first_day_of_week' locale setting to change the
+ *                                                                                                                                                                                                           start of week according to current locale selected and implicitly the end of week.
+ *                                                                                                                                                                                               Set the last day of week
+ * @method void                                               setWeekStartsAt($day)                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           Use $weekEndsAt optional parameter instead when using endOfWeek method. You can also use the
+ *                                                                                                                                                                                                           'first_day_of_week' locale setting to change the start of week according to current locale
+ *                                                                                                                                                                                                           selected and implicitly the end of week.
+ *                                                                                                                                                                                               Set the first day of week
+ * @method void                                               setWeekendDays($days)                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather consider week-end is always saturday and sunday, and if you have some custom
+ *                                                                                                                                                                                                           week-end days to handle, give to those days an other name and create a macro for them:
+ *                                                                                                                                                                                                           ```
+ *                                                                                                                                                                                                           Carbon::macro('isDayOff', function ($date) {
+ *                                                                                                                                                                                                               return $date->isSunday() || $date->isMonday();
+ *                                                                                                                                                                                                           });
+ *                                                                                                                                                                                                           Carbon::macro('isNotDayOff', function ($date) {
+ *                                                                                                                                                                                                               return !$date->isDayOff();
+ *                                                                                                                                                                                                           });
+ *                                                                                                                                                                                                           if ($someDate->isDayOff()) ...
+ *                                                                                                                                                                                                           if ($someDate->isNotDayOff()) ...
+ *                                                                                                                                                                                                           // Add 5 not-off days
+ *                                                                                                                                                                                                           $count = 5;
+ *                                                                                                                                                                                                           while ($someDate->isDayOff() || ($count-- > 0)) {
+ *                                                                                                                                                                                                               $someDate->addDay();
+ *                                                                                                                                                                                                           }
+ *                                                                                                                                                                                                           ```
+ *                                                                                                                                                                                               Set weekend days
+ * @method bool                                               shouldOverflowMonths()                                                                                                             Get the month overflow global behavior (can be overridden in specific instances).
+ * @method bool                                               shouldOverflowYears()                                                                                                              Get the month overflow global behavior (can be overridden in specific instances).
+ * @method string                                             singularUnit(string $unit)                                                                                                         Returns standardized singular of a given singular/plural unit name (in English).
+ * @method Carbon                                             today($tz = null)                                                                                                                  Create a Carbon instance for today.
+ * @method Carbon                                             tomorrow($tz = null)                                                                                                               Create a Carbon instance for tomorrow.
+ * @method string                                             translateTimeString($timeString, $from = null, $to = null, $mode = CarbonInterface::TRANSLATE_ALL)                                 Translate a time string from a locale to an other.
+ * @method string                                             translateWith(\Symfony\Component\Translation\TranslatorInterface $translator, string $key, array $parameters = [], $number = null) Translate using translation string or callback available.
+ * @method void                                               useMonthsOverflow($monthsOverflow = true)                                                                                          @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method Carbon                                             useStrictMode($strictModeEnabled = true)                                                                                           @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method void                                               useYearsOverflow($yearsOverflow = true)                                                                                            @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method mixed                                              withTestNow($testNow = null, $callback = null)                                                                                     Temporarily sets a static date to be used within the callback.
+ *                                                                                                                                                                                               Using setTestNow to set the date, executing the callback, then
+ *                                                                                                                                                                                               clearing the test instance.
+ *                                                                                                                                                                                               /!\ Use this method for unit tests only.
+ * @method Carbon                                             yesterday($tz = null)                                                                                                              Create a Carbon instance for yesterday.
+ *
+ * </autodoc>
+ */
+class Factory
+{
+    protected $className = Carbon::class;
+
+    protected $settings = [];
+
+    public function __construct(array $settings = [], ?string $className = null)
+    {
+        if ($className) {
+            $this->className = $className;
+        }
+
+        $this->settings = $settings;
+    }
+
+    public function getClassName()
+    {
+        return $this->className;
+    }
+
+    public function setClassName(string $className)
+    {
+        $this->className = $className;
+
+        return $this;
+    }
+
+    public function className(string $className = null)
+    {
+        return $className === null ? $this->getClassName() : $this->setClassName($className);
+    }
+
+    public function getSettings()
+    {
+        return $this->settings;
+    }
+
+    public function setSettings(array $settings)
+    {
+        $this->settings = $settings;
+
+        return $this;
+    }
+
+    public function settings(array $settings = null)
+    {
+        return $settings === null ? $this->getSettings() : $this->setSettings($settings);
+    }
+
+    public function mergeSettings(array $settings)
+    {
+        $this->settings = array_merge($this->settings, $settings);
+
+        return $this;
+    }
+
+    public function __call($name, $arguments)
+    {
+        $method = new ReflectionMethod($this->className, $name);
+        $settings = $this->settings;
+
+        if ($settings && isset($settings['timezone'])) {
+            $tzParameters = array_filter($method->getParameters(), function ($parameter) {
+                return \in_array($parameter->getName(), ['tz', 'timezone'], true);
+            });
+
+            if (\count($tzParameters)) {
+                array_splice($arguments, key($tzParameters), 0, [$settings['timezone']]);
+                unset($settings['timezone']);
+            }
+        }
+
+        $result = $this->className::$name(...$arguments);
+
+        return $result instanceof CarbonInterface && !empty($settings)
+            ? $result->settings($settings)
+            : $result;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/FactoryImmutable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/FactoryImmutable.php
new file mode 100644
index 0000000..3aa286c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/FactoryImmutable.php
@@ -0,0 +1,228 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Closure;
+
+/**
+ * A factory to generate CarbonImmutable instances with common settings.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @method bool                                               canBeCreatedFromFormat($date, $format)                                                                                             Checks if the (date)time string is in a given format and valid to create a
+ *                                                                                                                                                                                               new instance.
+ * @method CarbonImmutable|false                              create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $tz = null)                                           Create a new Carbon instance from a specific date and time.
+ *                                                                                                                                                                                               If any of $year, $month or $day are set to null their now() values will
+ *                                                                                                                                                                                               be used.
+ *                                                                                                                                                                                               If $hour is null it will be set to its now() value and the default
+ *                                                                                                                                                                                               values for $minute and $second will be their now() values.
+ *                                                                                                                                                                                               If $hour is not null then the default values for $minute and $second
+ *                                                                                                                                                                                               will be 0.
+ * @method CarbonImmutable                                    createFromDate($year = null, $month = null, $day = null, $tz = null)                                                               Create a Carbon instance from just a date. The time portion is set to now.
+ * @method CarbonImmutable|false                              createFromFormat($format, $time, $tz = null)                                                                                       Create a Carbon instance from a specific format.
+ * @method CarbonImmutable|false                              createFromIsoFormat($format, $time, $tz = null, $locale = 'en', $translator = null)                                                Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
+ * @method CarbonImmutable|false                              createFromLocaleFormat($format, $locale, $time, $tz = null)                                                                        Create a Carbon instance from a specific format and a string in a given language.
+ * @method CarbonImmutable|false                              createFromLocaleIsoFormat($format, $locale, $time, $tz = null)                                                                     Create a Carbon instance from a specific ISO format and a string in a given language.
+ * @method CarbonImmutable                                    createFromTime($hour = 0, $minute = 0, $second = 0, $tz = null)                                                                    Create a Carbon instance from just a time. The date portion is set to today.
+ * @method CarbonImmutable                                    createFromTimeString($time, $tz = null)                                                                                            Create a Carbon instance from a time string. The date portion is set to today.
+ * @method CarbonImmutable                                    createFromTimestamp($timestamp, $tz = null)                                                                                        Create a Carbon instance from a timestamp and set the timezone (use default one if not specified).
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method CarbonImmutable                                    createFromTimestampMs($timestamp, $tz = null)                                                                                      Create a Carbon instance from a timestamp in milliseconds.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method CarbonImmutable                                    createFromTimestampMsUTC($timestamp)                                                                                               Create a Carbon instance from a timestamp in milliseconds.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method CarbonImmutable                                    createFromTimestampUTC($timestamp)                                                                                                 Create a Carbon instance from an timestamp keeping the timezone to UTC.
+ *                                                                                                                                                                                               Timestamp input can be given as int, float or a string containing one or more numbers.
+ * @method CarbonImmutable                                    createMidnightDate($year = null, $month = null, $day = null, $tz = null)                                                           Create a Carbon instance from just a date. The time portion is set to midnight.
+ * @method CarbonImmutable|false                              createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $tz = null)                     Create a new safe Carbon instance from a specific date and time.
+ *                                                                                                                                                                                               If any of $year, $month or $day are set to null their now() values will
+ *                                                                                                                                                                                               be used.
+ *                                                                                                                                                                                               If $hour is null it will be set to its now() value and the default
+ *                                                                                                                                                                                               values for $minute and $second will be their now() values.
+ *                                                                                                                                                                                               If $hour is not null then the default values for $minute and $second
+ *                                                                                                                                                                                               will be 0.
+ *                                                                                                                                                                                               If one of the set values is not valid, an InvalidDateException
+ *                                                                                                                                                                                               will be thrown.
+ * @method CarbonInterface                                    createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $tz = null)       Create a new Carbon instance from a specific date and time using strict validation.
+ * @method CarbonImmutable                                    disableHumanDiffOption($humanDiffOption)                                                                                           @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method CarbonImmutable                                    enableHumanDiffOption($humanDiffOption)                                                                                            @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method mixed                                              executeWithLocale($locale, $func)                                                                                                  Set the current locale to the given, execute the passed function, reset the locale to previous one,
+ *                                                                                                                                                                                               then return the result of the closure (or null if the closure was void).
+ * @method CarbonImmutable                                    fromSerialized($value)                                                                                                             Create an instance from a serialized string.
+ * @method void                                               genericMacro($macro, $priority = 0)                                                                                                Register a custom macro.
+ * @method array                                              getAvailableLocales()                                                                                                              Returns the list of internally available locales and already loaded custom locales.
+ *                                                                                                                                                                                               (It will ignore custom translator dynamic loading.)
+ * @method Language[]                                         getAvailableLocalesInfo()                                                                                                          Returns list of Language object for each available locale. This object allow you to get the ISO name, native
+ *                                                                                                                                                                                               name, region and variant of the locale.
+ * @method array                                              getDays()                                                                                                                          Get the days of the week
+ * @method string|null                                        getFallbackLocale()                                                                                                                Get the fallback locale.
+ * @method array                                              getFormatsToIsoReplacements()                                                                                                      List of replacements from date() format to isoFormat().
+ * @method int                                                getHumanDiffOptions()                                                                                                              Return default humanDiff() options (merged flags as integer).
+ * @method array                                              getIsoUnits()                                                                                                                      Returns list of locale units for ISO formatting.
+ * @method CarbonImmutable                                    getLastErrors()                                                                                                                    {@inheritdoc}
+ * @method string                                             getLocale()                                                                                                                        Get the current translator locale.
+ * @method callable|null                                      getMacro($name)                                                                                                                    Get the raw callable macro registered globally for a given name.
+ * @method int                                                getMidDayAt()                                                                                                                      get midday/noon hour
+ * @method Closure|CarbonImmutable                            getTestNow()                                                                                                                       Get the Carbon instance (real or mock) to be returned when a "now"
+ *                                                                                                                                                                                               instance is created.
+ * @method string                                             getTimeFormatByPrecision($unitPrecision)                                                                                           Return a format from H:i to H:i:s.u according to given unit precision.
+ * @method string                                             getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null)                               Returns raw translation message for a given key.
+ * @method \Symfony\Component\Translation\TranslatorInterface getTranslator()                                                                                                                    Get the default translator instance in use.
+ * @method int                                                getWeekEndsAt()                                                                                                                    Get the last day of week
+ * @method int                                                getWeekStartsAt()                                                                                                                  Get the first day of week
+ * @method array                                              getWeekendDays()                                                                                                                   Get weekend days
+ * @method bool                                               hasFormat($date, $format)                                                                                                          Checks if the (date)time string is in a given format.
+ * @method bool                                               hasFormatWithModifiers($date, $format)                                                                                             Checks if the (date)time string is in a given format.
+ * @method bool                                               hasMacro($name)                                                                                                                    Checks if macro is registered globally.
+ * @method bool                                               hasRelativeKeywords($time)                                                                                                         Determine if a time string will produce a relative date.
+ * @method bool                                               hasTestNow()                                                                                                                       Determine if there is a valid test instance set. A valid test instance
+ *                                                                                                                                                                                               is anything that is not null.
+ * @method CarbonImmutable                                    instance($date)                                                                                                                    Create a Carbon instance from a DateTime one.
+ * @method bool                                               isImmutable()                                                                                                                      Returns true if the current class/instance is immutable.
+ * @method bool                                               isModifiableUnit($unit)                                                                                                            Returns true if a property can be changed via setter.
+ * @method bool                                               isMutable()                                                                                                                        Returns true if the current class/instance is mutable.
+ * @method bool                                               isStrictModeEnabled()                                                                                                              Returns true if the strict mode is globally in use, false else.
+ *                                                                                                                                                                                               (It can be overridden in specific instances.)
+ * @method bool                                               localeHasDiffOneDayWords($locale)                                                                                                  Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
+ *                                                                                                                                                                                               Support is considered enabled if the 3 words are translated in the given locale.
+ * @method bool                                               localeHasDiffSyntax($locale)                                                                                                       Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
+ *                                                                                                                                                                                               Support is considered enabled if the 4 sentences are translated in the given locale.
+ * @method bool                                               localeHasDiffTwoDayWords($locale)                                                                                                  Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
+ *                                                                                                                                                                                               Support is considered enabled if the 2 words are translated in the given locale.
+ * @method bool                                               localeHasPeriodSyntax($locale)                                                                                                     Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
+ *                                                                                                                                                                                               Support is considered enabled if the 4 sentences are translated in the given locale.
+ * @method bool                                               localeHasShortUnits($locale)                                                                                                       Returns true if the given locale is internally supported and has short-units support.
+ *                                                                                                                                                                                               Support is considered enabled if either year, day or hour has a short variant translated.
+ * @method void                                               macro($name, $macro)                                                                                                               Register a custom macro.
+ * @method CarbonImmutable|null                               make($var)                                                                                                                         Make a Carbon instance from given variable if possible.
+ *                                                                                                                                                                                               Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
+ *                                                                                                                                                                                               and recurrences). Throw an exception for invalid format, but otherwise return null.
+ * @method CarbonImmutable                                    maxValue()                                                                                                                         Create a Carbon instance for the greatest supported date.
+ * @method CarbonImmutable                                    minValue()                                                                                                                         Create a Carbon instance for the lowest supported date.
+ * @method void                                               mixin($mixin)                                                                                                                      Mix another object into the class.
+ * @method CarbonImmutable                                    now($tz = null)                                                                                                                    Get a Carbon instance for the current date and time.
+ * @method CarbonImmutable                                    parse($time = null, $tz = null)                                                                                                    Create a carbon instance from a string.
+ *                                                                                                                                                                                               This is an alias for the constructor that allows better fluent syntax
+ *                                                                                                                                                                                               as it allows you to do Carbon::parse('Monday next week')->fn() rather
+ *                                                                                                                                                                                               than (new Carbon('Monday next week'))->fn().
+ * @method CarbonImmutable                                    parseFromLocale($time, $locale = null, $tz = null)                                                                                 Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
+ * @method string                                             pluralUnit(string $unit)                                                                                                           Returns standardized plural of a given singular/plural unit name (in English).
+ * @method CarbonImmutable|false                              rawCreateFromFormat($format, $time, $tz = null)                                                                                    Create a Carbon instance from a specific format.
+ * @method CarbonImmutable                                    rawParse($time = null, $tz = null)                                                                                                 Create a carbon instance from a string.
+ *                                                                                                                                                                                               This is an alias for the constructor that allows better fluent syntax
+ *                                                                                                                                                                                               as it allows you to do Carbon::parse('Monday next week')->fn() rather
+ *                                                                                                                                                                                               than (new Carbon('Monday next week'))->fn().
+ * @method CarbonImmutable                                    resetMacros()                                                                                                                      Remove all macros and generic macros.
+ * @method void                                               resetMonthsOverflow()                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method void                                               resetToStringFormat()                                                                                                              Reset the format used to the default when type juggling a Carbon instance to a string
+ * @method void                                               resetYearsOverflow()                                                                                                               @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method void                                               serializeUsing($callback)                                                                                                          @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather transform Carbon object before the serialization.
+ *                                                                                                                                                                                               JSON serialize all Carbon instances using the given callback.
+ * @method CarbonImmutable                                    setFallbackLocale($locale)                                                                                                         Set the fallback locale.
+ * @method CarbonImmutable                                    setHumanDiffOptions($humanDiffOptions)                                                                                             @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method bool                                               setLocale($locale)                                                                                                                 Set the current translator locale and indicate if the source locale file exists.
+ *                                                                                                                                                                                               Pass 'auto' as locale to use closest language from the current LC_TIME locale.
+ * @method void                                               setMidDayAt($hour)                                                                                                                 @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather consider mid-day is always 12pm, then if you need to test if it's an other
+ *                                                                                                                                                                                                           hour, test it explicitly:
+ *                                                                                                                                                                                                               $date->format('G') == 13
+ *                                                                                                                                                                                                           or to set explicitly to a given hour:
+ *                                                                                                                                                                                                               $date->setTime(13, 0, 0, 0)
+ *                                                                                                                                                                                               Set midday/noon hour
+ * @method CarbonImmutable                                    setTestNow($testNow = null)                                                                                                        Set a Carbon instance (real or mock) to be returned when a "now"
+ *                                                                                                                                                                                               instance is created.  The provided instance will be returned
+ *                                                                                                                                                                                               specifically under the following conditions:
+ *                                                                                                                                                                                                 - A call to the static now() method, ex. Carbon::now()
+ *                                                                                                                                                                                                 - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
+ *                                                                                                                                                                                                 - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
+ *                                                                                                                                                                                                 - When a string containing the desired time is passed to Carbon::parse().
+ *                                                                                                                                                                                               Note the timezone parameter was left out of the examples above and
+ *                                                                                                                                                                                               has no affect as the mock value will be returned regardless of its value.
+ *                                                                                                                                                                                               To clear the test instance call this method using the default
+ *                                                                                                                                                                                               parameter of null.
+ *                                                                                                                                                                                               /!\ Use this method for unit tests only.
+ * @method void                                               setToStringFormat($format)                                                                                                         @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather let Carbon object being casted to string with DEFAULT_TO_STRING_FORMAT, and
+ *                                                                                                                                                                                                           use other method or custom format passed to format() method if you need to dump an other string
+ *                                                                                                                                                                                                           format.
+ *                                                                                                                                                                                               Set the default format used when type juggling a Carbon instance to a string
+ * @method void                                               setTranslator(\Symfony\Component\Translation\TranslatorInterface $translator)                                                      Set the default translator instance to use.
+ * @method CarbonImmutable                                    setUtf8($utf8)                                                                                                                     @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use UTF-8 language packages on every machine.
+ *                                                                                                                                                                                               Set if UTF8 will be used for localized date/time.
+ * @method void                                               setWeekEndsAt($day)                                                                                                                @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           Use $weekStartsAt optional parameter instead when using startOfWeek, floorWeek, ceilWeek
+ *                                                                                                                                                                                                           or roundWeek method. You can also use the 'first_day_of_week' locale setting to change the
+ *                                                                                                                                                                                                           start of week according to current locale selected and implicitly the end of week.
+ *                                                                                                                                                                                               Set the last day of week
+ * @method void                                               setWeekStartsAt($day)                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           Use $weekEndsAt optional parameter instead when using endOfWeek method. You can also use the
+ *                                                                                                                                                                                                           'first_day_of_week' locale setting to change the start of week according to current locale
+ *                                                                                                                                                                                                           selected and implicitly the end of week.
+ *                                                                                                                                                                                               Set the first day of week
+ * @method void                                               setWeekendDays($days)                                                                                                              @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather consider week-end is always saturday and sunday, and if you have some custom
+ *                                                                                                                                                                                                           week-end days to handle, give to those days an other name and create a macro for them:
+ *                                                                                                                                                                                                           ```
+ *                                                                                                                                                                                                           Carbon::macro('isDayOff', function ($date) {
+ *                                                                                                                                                                                                               return $date->isSunday() || $date->isMonday();
+ *                                                                                                                                                                                                           });
+ *                                                                                                                                                                                                           Carbon::macro('isNotDayOff', function ($date) {
+ *                                                                                                                                                                                                               return !$date->isDayOff();
+ *                                                                                                                                                                                                           });
+ *                                                                                                                                                                                                           if ($someDate->isDayOff()) ...
+ *                                                                                                                                                                                                           if ($someDate->isNotDayOff()) ...
+ *                                                                                                                                                                                                           // Add 5 not-off days
+ *                                                                                                                                                                                                           $count = 5;
+ *                                                                                                                                                                                                           while ($someDate->isDayOff() || ($count-- > 0)) {
+ *                                                                                                                                                                                                               $someDate->addDay();
+ *                                                                                                                                                                                                           }
+ *                                                                                                                                                                                                           ```
+ *                                                                                                                                                                                               Set weekend days
+ * @method bool                                               shouldOverflowMonths()                                                                                                             Get the month overflow global behavior (can be overridden in specific instances).
+ * @method bool                                               shouldOverflowYears()                                                                                                              Get the month overflow global behavior (can be overridden in specific instances).
+ * @method string                                             singularUnit(string $unit)                                                                                                         Returns standardized singular of a given singular/plural unit name (in English).
+ * @method CarbonImmutable                                    today($tz = null)                                                                                                                  Create a Carbon instance for today.
+ * @method CarbonImmutable                                    tomorrow($tz = null)                                                                                                               Create a Carbon instance for tomorrow.
+ * @method string                                             translateTimeString($timeString, $from = null, $to = null, $mode = CarbonInterface::TRANSLATE_ALL)                                 Translate a time string from a locale to an other.
+ * @method string                                             translateWith(\Symfony\Component\Translation\TranslatorInterface $translator, string $key, array $parameters = [], $number = null) Translate using translation string or callback available.
+ * @method void                                               useMonthsOverflow($monthsOverflow = true)                                                                                          @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method CarbonImmutable                                    useStrictMode($strictModeEnabled = true)                                                                                           @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ * @method void                                               useYearsOverflow($yearsOverflow = true)                                                                                            @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+ *                                                                                                                                                                                                           You should rather use the ->settings() method.
+ *                                                                                                                                                                                                           Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+ *                                                                                                                                                                                                           are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+ * @method mixed                                              withTestNow($testNow = null, $callback = null)                                                                                     Temporarily sets a static date to be used within the callback.
+ *                                                                                                                                                                                               Using setTestNow to set the date, executing the callback, then
+ *                                                                                                                                                                                               clearing the test instance.
+ *                                                                                                                                                                                               /!\ Use this method for unit tests only.
+ * @method CarbonImmutable                                    yesterday($tz = null)                                                                                                              Create a Carbon instance for yesterday.
+ *
+ * </autodoc>
+ */
+class FactoryImmutable extends Factory
+{
+    protected $className = CarbonImmutable::class;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa.php
new file mode 100644
index 0000000..f3431e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/aa_DJ.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_DJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_DJ.php
new file mode 100644
index 0000000..c6e23c0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_DJ.php
@@ -0,0 +1,44 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Qunxa Garablu', 'Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Liiqen', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
+    'months_short' => ['qun', 'nah', 'cig', 'agd', 'cax', 'qas', 'qad', 'leq', 'way', 'dit', 'xim', 'kax'],
+    'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
+    'weekdays_short' => ['aca', 'etl', 'tal', 'arb', 'kam', 'gum', 'sab'],
+    'weekdays_min' => ['aca', 'etl', 'tal', 'arb', 'kam', 'gum', 'sab'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['saaku', 'carra'],
+
+    'year' => ':count gaqambo', // less reliable
+    'y' => ':count gaqambo', // less reliable
+    'a_year' => ':count gaqambo', // less reliable
+
+    'month' => ':count àlsa',
+    'm' => ':count àlsa',
+    'a_month' => ':count àlsa',
+
+    'day' => ':count saaku', // less reliable
+    'd' => ':count saaku', // less reliable
+    'a_day' => ':count saaku', // less reliable
+
+    'hour' => ':count ayti', // less reliable
+    'h' => ':count ayti', // less reliable
+    'a_hour' => ':count ayti', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER.php
new file mode 100644
index 0000000..f8f395b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Qunxa Garablu', 'Naharsi Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Leqeeni', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
+    'months_short' => ['Qun', 'Nah', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
+    'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
+    'weekdays_short' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
+    'weekdays_min' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['saaku', 'carra'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER@saaho.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER@saaho.php
new file mode 100644
index 0000000..6461225
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ER@saaho.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Qunxa Garablu', 'Naharsi Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Leqeeni', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
+    'months_short' => ['Qun', 'Nah', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
+    'weekdays' => ['Naba Sambat', 'Sani', 'Salus', 'Rabuq', 'Camus', 'Jumqata', 'Qunxa Sambat'],
+    'weekdays_short' => ['Nab', 'San', 'Sal', 'Rab', 'Cam', 'Jum', 'Qun'],
+    'weekdays_min' => ['Nab', 'San', 'Sal', 'Rab', 'Cam', 'Jum', 'Qun'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['saaku', 'carra'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ET.php
new file mode 100644
index 0000000..e55e591
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/aa_ET.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Qunxa Garablu', 'Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Liiqen', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
+    'months_short' => ['Qun', 'Kud', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
+    'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
+    'weekdays_short' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
+    'weekdays_min' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['saaku', 'carra'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af.php
new file mode 100644
index 0000000..27771d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af.php
@@ -0,0 +1,79 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - JD Isaacks
+ * - Pierre du Plessis
+ */
+return [
+    'year' => ':count jaar',
+    'a_year' => '\'n jaar|:count jaar',
+    'y' => ':count j.',
+    'month' => ':count maand|:count maande',
+    'a_month' => '\'n maand|:count maande',
+    'm' => ':count maa.',
+    'week' => ':count week|:count weke',
+    'a_week' => '\'n week|:count weke',
+    'w' => ':count w.',
+    'day' => ':count dag|:count dae',
+    'a_day' => '\'n dag|:count dae',
+    'd' => ':count d.',
+    'hour' => ':count uur',
+    'a_hour' => '\'n uur|:count uur',
+    'h' => ':count u.',
+    'minute' => ':count minuut|:count minute',
+    'a_minute' => '\'n minuut|:count minute',
+    'min' => ':count min.',
+    'second' => ':count sekond|:count sekondes',
+    'a_second' => '\'n paar sekondes|:count sekondes',
+    's' => ':count s.',
+    'ago' => ':time gelede',
+    'from_now' => 'oor :time',
+    'after' => ':time na',
+    'before' => ':time voor',
+    'diff_now' => 'Nou',
+    'diff_today' => 'Vandag',
+    'diff_today_regexp' => 'Vandag(?:\\s+om)?',
+    'diff_yesterday' => 'Gister',
+    'diff_yesterday_regexp' => 'Gister(?:\\s+om)?',
+    'diff_tomorrow' => 'Môre',
+    'diff_tomorrow_regexp' => 'Môre(?:\\s+om)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Vandag om] LT',
+        'nextDay' => '[Môre om] LT',
+        'nextWeek' => 'dddd [om] LT',
+        'lastDay' => '[Gister om] LT',
+        'lastWeek' => '[Laas] dddd [om] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de');
+    },
+    'meridiem' => ['VM', 'NM'],
+    'months' => ['Januarie', 'Februarie', 'Maart', 'April', 'Mei', 'Junie', 'Julie', 'Augustus', 'September', 'Oktober', 'November', 'Desember'],
+    'months_short' => ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'],
+    'weekdays_short' => ['Son', 'Maa', 'Din', 'Woe', 'Don', 'Vry', 'Sat'],
+    'weekdays_min' => ['So', 'Ma', 'Di', 'Wo', 'Do', 'Vr', 'Sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' en '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_NA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_NA.php
new file mode 100644
index 0000000..40d8d86
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_NA.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/af.php', [
+    'meridiem' => ['v', 'n'],
+    'weekdays' => ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'],
+    'weekdays_short' => ['So.', 'Ma.', 'Di.', 'Wo.', 'Do.', 'Vr.', 'Sa.'],
+    'weekdays_min' => ['So.', 'Ma.', 'Di.', 'Wo.', 'Do.', 'Vr.', 'Sa.'],
+    'months' => ['Januarie', 'Februarie', 'Maart', 'April', 'Mei', 'Junie', 'Julie', 'Augustus', 'September', 'Oktober', 'November', 'Desember'],
+    'months_short' => ['Jan.', 'Feb.', 'Mrt.', 'Apr.', 'Mei', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Des.'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'DD MMM YYYY',
+        'LLL' => 'DD MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, DD MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_ZA.php
new file mode 100644
index 0000000..93f4c83
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/af_ZA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/af.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agq.php
new file mode 100644
index 0000000..58c7a11
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agq.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['a.g', 'a.k'],
+    'weekdays' => ['tsuʔntsɨ', 'tsuʔukpà', 'tsuʔughɔe', 'tsuʔutɔ̀mlò', 'tsuʔumè', 'tsuʔughɨ̂m', 'tsuʔndzɨkɔʔɔ'],
+    'weekdays_short' => ['nts', 'kpa', 'ghɔ', 'tɔm', 'ume', 'ghɨ', 'dzk'],
+    'weekdays_min' => ['nts', 'kpa', 'ghɔ', 'tɔm', 'ume', 'ghɨ', 'dzk'],
+    'months' => ['ndzɔ̀ŋɔ̀nùm', 'ndzɔ̀ŋɔ̀kƗ̀zùʔ', 'ndzɔ̀ŋɔ̀tƗ̀dʉ̀ghà', 'ndzɔ̀ŋɔ̀tǎafʉ̄ghā', 'ndzɔ̀ŋèsèe', 'ndzɔ̀ŋɔ̀nzùghò', 'ndzɔ̀ŋɔ̀dùmlo', 'ndzɔ̀ŋɔ̀kwîfɔ̀e', 'ndzɔ̀ŋɔ̀tƗ̀fʉ̀ghàdzughù', 'ndzɔ̀ŋɔ̀ghǔuwelɔ̀m', 'ndzɔ̀ŋɔ̀chwaʔàkaa wo', 'ndzɔ̀ŋèfwòo'],
+    'months_short' => ['nùm', 'kɨz', 'tɨd', 'taa', 'see', 'nzu', 'dum', 'fɔe', 'dzu', 'lɔm', 'kaa', 'fwo'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr.php
new file mode 100644
index 0000000..8f036ae
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/agr_PE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr_PE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr_PE.php
new file mode 100644
index 0000000..54a326a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/agr_PE.php
@@ -0,0 +1,44 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - somosazucar.org    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Petsatin', 'Kupitin', 'Uyaitin', 'Tayutin', 'Kegketin', 'Tegmatin', 'Kuntutin', 'Yagkujutin', 'Daiktatin', 'Ipamtatin', 'Shinutin', 'Sakamtin'],
+    'months_short' => ['Pet', 'Kup', 'Uya', 'Tay', 'Keg', 'Teg', 'Kun', 'Yag', 'Dait', 'Ipam', 'Shin', 'Sak'],
+    'weekdays' => ['Tuntuamtin', 'Achutin', 'Kugkuktin', 'Saketin', 'Shimpitin', 'Imaptin', 'Bataetin'],
+    'weekdays_short' => ['Tun', 'Ach', 'Kug', 'Sak', 'Shim', 'Im', 'Bat'],
+    'weekdays_min' => ['Tun', 'Ach', 'Kug', 'Sak', 'Shim', 'Im', 'Bat'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 7,
+    'meridiem' => ['VM', 'NM'],
+
+    'year' => ':count yaya', // less reliable
+    'y' => ':count yaya', // less reliable
+    'a_year' => ':count yaya', // less reliable
+
+    'month' => ':count nantu', // less reliable
+    'm' => ':count nantu', // less reliable
+    'a_month' => ':count nantu', // less reliable
+
+    'day' => ':count nayaim', // less reliable
+    'd' => ':count nayaim', // less reliable
+    'a_day' => ':count nayaim', // less reliable
+
+    'hour' => ':count kuwiš', // less reliable
+    'h' => ':count kuwiš', // less reliable
+    'a_hour' => ':count kuwiš', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak.php
new file mode 100644
index 0000000..5a64be3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ak_GH.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak_GH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak_GH.php
new file mode 100644
index 0000000..1381946
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ak_GH.php
@@ -0,0 +1,40 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY/MM/DD',
+    ],
+    'months' => ['Sanda-Ɔpɛpɔn', 'Kwakwar-Ɔgyefuo', 'Ebɔw-Ɔbenem', 'Ebɔbira-Oforisuo', 'Esusow Aketseaba-Kɔtɔnimba', 'Obirade-Ayɛwohomumu', 'Ayɛwoho-Kitawonsa', 'Difuu-Ɔsandaa', 'Fankwa-Ɛbɔ', 'Ɔbɛsɛ-Ahinime', 'Ɔberɛfɛw-Obubuo', 'Mumu-Ɔpɛnimba'],
+    'months_short' => ['S-Ɔ', 'K-Ɔ', 'E-Ɔ', 'E-O', 'E-K', 'O-A', 'A-K', 'D-Ɔ', 'F-Ɛ', 'Ɔ-A', 'Ɔ-O', 'M-Ɔ'],
+    'weekdays' => ['Kwesida', 'Dwowda', 'Benada', 'Wukuda', 'Yawda', 'Fida', 'Memeneda'],
+    'weekdays_short' => ['Kwe', 'Dwo', 'Ben', 'Wuk', 'Yaw', 'Fia', 'Mem'],
+    'weekdays_min' => ['Kwe', 'Dwo', 'Ben', 'Wuk', 'Yaw', 'Fia', 'Mem'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['AN', 'EW'],
+
+    'year' => ':count afe',
+    'y' => ':count afe',
+    'a_year' => ':count afe',
+
+    'month' => ':count bosume',
+    'm' => ':count bosume',
+    'a_month' => ':count bosume',
+
+    'day' => ':count ɛda',
+    'd' => ':count ɛda',
+    'a_day' => ':count ɛda',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am.php
new file mode 100644
index 0000000..63bf72d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/am_ET.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am_ET.php
new file mode 100644
index 0000000..ece8062
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/am_ET.php
@@ -0,0 +1,58 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕሪል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክቶበር', 'ኖቬምበር', 'ዲሴምበር'],
+    'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
+    'weekdays' => ['እሑድ', 'ሰኞ', 'ማክሰኞ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
+    'weekdays_short' => ['እሑድ', 'ሰኞ ', 'ማክሰ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
+    'weekdays_min' => ['እሑድ', 'ሰኞ ', 'ማክሰ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ጡዋት', 'ከሰዓት'],
+
+    'year' => ':count አመት',
+    'y' => ':count አመት',
+    'a_year' => ':count አመት',
+
+    'month' => ':count ወር',
+    'm' => ':count ወር',
+    'a_month' => ':count ወር',
+
+    'week' => ':count ሳምንት',
+    'w' => ':count ሳምንት',
+    'a_week' => ':count ሳምንት',
+
+    'day' => ':count ቀን',
+    'd' => ':count ቀን',
+    'a_day' => ':count ቀን',
+
+    'hour' => ':count ሰዓት',
+    'h' => ':count ሰዓት',
+    'a_hour' => ':count ሰዓት',
+
+    'minute' => ':count ደቂቃ',
+    'min' => ':count ደቂቃ',
+    'a_minute' => ':count ደቂቃ',
+
+    'second' => ':count ሴኮንድ',
+    's' => ':count ሴኮንድ',
+    'a_second' => ':count ሴኮንድ',
+
+    'ago' => 'ከ:time በፊት',
+    'from_now' => 'በ:time ውስጥ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an.php
new file mode 100644
index 0000000..565abf2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/an_ES.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an_ES.php
new file mode 100644
index 0000000..faf8ae0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/an_ES.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Softaragones Jordi Mallach Pérez, Juan Pablo Martínez bug-glibc-locales@gnu.org, softaragones@softaragones.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['chinero', 'febrero', 'marzo', 'abril', 'mayo', 'chunyo', 'chuliol', 'agosto', 'setiembre', 'octubre', 'noviembre', 'aviento'],
+    'months_short' => ['chi', 'feb', 'mar', 'abr', 'may', 'chn', 'chl', 'ago', 'set', 'oct', 'nov', 'avi'],
+    'weekdays' => ['domingo', 'luns', 'martes', 'mierques', 'chueves', 'viernes', 'sabado'],
+    'weekdays_short' => ['dom', 'lun', 'mar', 'mie', 'chu', 'vie', 'sab'],
+    'weekdays_min' => ['dom', 'lun', 'mar', 'mie', 'chu', 'vie', 'sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count año',
+    'y' => ':count año',
+    'a_year' => ':count año',
+
+    'month' => ':count mes',
+    'm' => ':count mes',
+    'a_month' => ':count mes',
+
+    'week' => ':count semana',
+    'w' => ':count semana',
+    'a_week' => ':count semana',
+
+    'day' => ':count día',
+    'd' => ':count día',
+    'a_day' => ':count día',
+
+    'hour' => ':count reloch', // less reliable
+    'h' => ':count reloch', // less reliable
+    'a_hour' => ':count reloch', // less reliable
+
+    'minute' => ':count minuto',
+    'min' => ':count minuto',
+    'a_minute' => ':count minuto',
+
+    'second' => ':count segundo',
+    's' => ':count segundo',
+    'a_second' => ':count segundo',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp.php
new file mode 100644
index 0000000..b56c67b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/anp_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp_IN.php
new file mode 100644
index 0000000..11069be
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/anp_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bhashaghar@googlegroups.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर"'],
+    'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर'],
+    'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'बृहस्पतिवार', 'शुक्रवार', 'शनिवार'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar.php
new file mode 100644
index 0000000..5f73f63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar.php
@@ -0,0 +1,93 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Atef Ben Ali (atefBB)
+ * - Ibrahim AshShohail
+ * - MLTDev
+ * - Mohamed Sabil (mohamedsabil83)
+ * - Yazan Alnugnugh (yazan-alnugnugh)
+ */
+$months = [
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'مايو',
+    'يونيو',
+    'يوليو',
+    'أغسطس',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => ':time من الآن',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم عند الساعة] LT',
+        'nextDay' => '[غدًا عند الساعة] LT',
+        'nextWeek' => 'dddd [عند الساعة] LT',
+        'lastDay' => '[أمس عند الساعة] LT',
+        'lastWeek' => 'dddd [عند الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_AE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_AE.php
new file mode 100644
index 0000000..75fe47f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_AE.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت '],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_BH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_BH.php
new file mode 100644
index 0000000..362009e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_BH.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DJ.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DJ.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DZ.php
new file mode 100644
index 0000000..aea4eee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_DZ.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - Josh Soref
+ * - Noureddine LOUAHEDJ
+ * - JD Isaacks
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+$months = [
+    'جانفي',
+    'فيفري',
+    'مارس',
+    'أفريل',
+    'ماي',
+    'جوان',
+    'جويلية',
+    'أوت',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => 'في :time',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['أح', 'إث', 'ثلا', 'أر', 'خم', 'جم', 'سب'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 4,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم على الساعة] LT',
+        'nextDay' => '[غدا على الساعة] LT',
+        'nextWeek' => 'dddd [على الساعة] LT',
+        'lastDay' => '[أمس على الساعة] LT',
+        'lastWeek' => 'dddd [على الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EG.php
new file mode 100644
index 0000000..362009e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EG.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EH.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_EH.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_ER.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_ER.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IL.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IL.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IN.php
new file mode 100644
index 0000000..5fecf70
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IQ.php
new file mode 100644
index 0000000..0ac0995
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_IQ.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_JO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_JO.php
new file mode 100644
index 0000000..0ac0995
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_JO.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KM.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KM.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KW.php
new file mode 100644
index 0000000..e6f0531
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_KW.php
@@ -0,0 +1,93 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - Josh Soref
+ * - Nusret Parlak
+ * - JD Isaacks
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+$months = [
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'ماي',
+    'يونيو',
+    'يوليوز',
+    'غشت',
+    'شتنبر',
+    'أكتوبر',
+    'نونبر',
+    'دجنبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => 'في :time',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم على الساعة] LT',
+        'nextDay' => '[غدا على الساعة] LT',
+        'nextWeek' => 'dddd [على الساعة] LT',
+        'lastDay' => '[أمس على الساعة] LT',
+        'lastWeek' => 'dddd [على الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LB.php
new file mode 100644
index 0000000..55bb10c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LB.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LY.php
new file mode 100644
index 0000000..1f0af49
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_LY.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Atef Ben Ali (atefBB)
+ * - Ibrahim AshShohail
+ * - MLTDev
+ */
+
+$months = [
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'مايو',
+    'يونيو',
+    'يوليو',
+    'أغسطس',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', [':count سنة', 'سنة', 'سنتين', ':count سنوات', ':count سنة']),
+    'a_year' => implode('|', [':count سنة', 'سنة', 'سنتين', ':count سنوات', ':count سنة']),
+    'month' => implode('|', [':count شهر', 'شهر', 'شهرين', ':count أشهر', ':count شهر']),
+    'a_month' => implode('|', [':count شهر', 'شهر', 'شهرين', ':count أشهر', ':count شهر']),
+    'week' => implode('|', [':count أسبوع', 'أسبوع', 'أسبوعين', ':count أسابيع', ':count أسبوع']),
+    'a_week' => implode('|', [':count أسبوع', 'أسبوع', 'أسبوعين', ':count أسابيع', ':count أسبوع']),
+    'day' => implode('|', [':count يوم', 'يوم', 'يومين', ':count أيام', ':count يوم']),
+    'a_day' => implode('|', [':count يوم', 'يوم', 'يومين', ':count أيام', ':count يوم']),
+    'hour' => implode('|', [':count ساعة', 'ساعة', 'ساعتين', ':count ساعات', ':count ساعة']),
+    'a_hour' => implode('|', [':count ساعة', 'ساعة', 'ساعتين', ':count ساعات', ':count ساعة']),
+    'minute' => implode('|', [':count دقيقة', 'دقيقة', 'دقيقتين', ':count دقائق', ':count دقيقة']),
+    'a_minute' => implode('|', [':count دقيقة', 'دقيقة', 'دقيقتين', ':count دقائق', ':count دقيقة']),
+    'second' => implode('|', [':count ثانية', 'ثانية', 'ثانيتين', ':count ثواني', ':count ثانية']),
+    'a_second' => implode('|', [':count ثانية', 'ثانية', 'ثانيتين', ':count ثواني', ':count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => ':time من الآن',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['مرة', 'مرة', ':count مرتين', ':count مرات', ':count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم عند الساعة] LT',
+        'nextDay' => '[غدًا عند الساعة] LT',
+        'nextWeek' => 'dddd [عند الساعة] LT',
+        'lastDay' => '[أمس عند الساعة] LT',
+        'lastWeek' => 'dddd [عند الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MA.php
new file mode 100644
index 0000000..047ae05
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MA.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+$months = [
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'ماي',
+    'يونيو',
+    'يوليوز',
+    'غشت',
+    'شتنبر',
+    'أكتوبر',
+    'نونبر',
+    'دجنبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => 'في :time',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم على الساعة] LT',
+        'nextDay' => '[غدا على الساعة] LT',
+        'nextWeek' => 'dddd [على الساعة] LT',
+        'lastDay' => '[أمس على الساعة] LT',
+        'lastWeek' => 'dddd [على الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MR.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_MR.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_OM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_OM.php
new file mode 100644
index 0000000..362009e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_OM.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_PS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_PS.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_PS.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_QA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_QA.php
new file mode 100644
index 0000000..362009e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_QA.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SA.php
new file mode 100644
index 0000000..10aaa2e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SA.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+$months = [
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'مايو',
+    'يونيو',
+    'يوليو',
+    'أغسطس',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => 'في :time',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم على الساعة] LT',
+        'nextDay' => '[غدا على الساعة] LT',
+        'nextWeek' => 'dddd [على الساعة] LT',
+        'lastDay' => '[أمس على الساعة] LT',
+        'lastWeek' => 'dddd [على الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SD.php
new file mode 100644
index 0000000..362009e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SD.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SO.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SO.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SS.php
new file mode 100644
index 0000000..32f3282
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SS.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SY.php
new file mode 100644
index 0000000..0ac0995
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_SY.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_Shakl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_Shakl.php
new file mode 100644
index 0000000..c2d4b43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_Shakl.php
@@ -0,0 +1,95 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Abdellah Chadidi
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+// Same for long and short
+$months = [
+    // @TODO add shakl to months
+    'يناير',
+    'فبراير',
+    'مارس',
+    'أبريل',
+    'مايو',
+    'يونيو',
+    'يوليو',
+    'أغسطس',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سَنَة', '{1}سَنَة', '{2}سَنَتَيْن', ']2,11[:count سَنَوَات', ']10,Inf[:count سَنَة']),
+    'a_year' => implode('|', ['{0}:count سَنَة', '{1}سَنَة', '{2}سَنَتَيْن', ']2,11[:count سَنَوَات', ']10,Inf[:count سَنَة']),
+    'month' => implode('|', ['{0}:count شَهْرَ', '{1}شَهْرَ', '{2}شَهْرَيْن', ']2,11[:count أَشْهُر', ']10,Inf[:count شَهْرَ']),
+    'a_month' => implode('|', ['{0}:count شَهْرَ', '{1}شَهْرَ', '{2}شَهْرَيْن', ']2,11[:count أَشْهُر', ']10,Inf[:count شَهْرَ']),
+    'week' => implode('|', ['{0}:count أُسْبُوع', '{1}أُسْبُوع', '{2}أُسْبُوعَيْن', ']2,11[:count أَسَابِيع', ']10,Inf[:count أُسْبُوع']),
+    'a_week' => implode('|', ['{0}:count أُسْبُوع', '{1}أُسْبُوع', '{2}أُسْبُوعَيْن', ']2,11[:count أَسَابِيع', ']10,Inf[:count أُسْبُوع']),
+    'day' => implode('|', ['{0}:count يَوْم', '{1}يَوْم', '{2}يَوْمَيْن', ']2,11[:count أَيَّام', ']10,Inf[:count يَوْم']),
+    'a_day' => implode('|', ['{0}:count يَوْم', '{1}يَوْم', '{2}يَوْمَيْن', ']2,11[:count أَيَّام', ']10,Inf[:count يَوْم']),
+    'hour' => implode('|', ['{0}:count سَاعَة', '{1}سَاعَة', '{2}سَاعَتَيْن', ']2,11[:count سَاعَات', ']10,Inf[:count سَاعَة']),
+    'a_hour' => implode('|', ['{0}:count سَاعَة', '{1}سَاعَة', '{2}سَاعَتَيْن', ']2,11[:count سَاعَات', ']10,Inf[:count سَاعَة']),
+    'minute' => implode('|', ['{0}:count دَقِيقَة', '{1}دَقِيقَة', '{2}دَقِيقَتَيْن', ']2,11[:count دَقَائِق', ']10,Inf[:count دَقِيقَة']),
+    'a_minute' => implode('|', ['{0}:count دَقِيقَة', '{1}دَقِيقَة', '{2}دَقِيقَتَيْن', ']2,11[:count دَقَائِق', ']10,Inf[:count دَقِيقَة']),
+    'second' => implode('|', ['{0}:count ثَانِيَة', '{1}ثَانِيَة', '{2}ثَانِيَتَيْن', ']2,11[:count ثَوَان', ']10,Inf[:count ثَانِيَة']),
+    'a_second' => implode('|', ['{0}:count ثَانِيَة', '{1}ثَانِيَة', '{2}ثَانِيَتَيْن', ']2,11[:count ثَوَان', ']10,Inf[:count ثَانِيَة']),
+    'ago' => 'مُنْذُ :time',
+    'from_now' => 'مِنَ الْآن :time',
+    'after' => 'بَعْدَ :time',
+    'before' => 'قَبْلَ :time',
+
+    // @TODO add shakl to translations below
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم عند الساعة] LT',
+        'nextDay' => '[غدًا عند الساعة] LT',
+        'nextWeek' => 'dddd [عند الساعة] LT',
+        'lastDay' => '[أمس عند الساعة] LT',
+        'lastWeek' => 'dddd [عند الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TD.php
new file mode 100644
index 0000000..8d377ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TD.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TN.php
new file mode 100644
index 0000000..f096678
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_TN.php
@@ -0,0 +1,91 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - JD Isaacks
+ * - Atef Ben Ali (atefBB)
+ * - Mohamed Sabil (mohamedsabil83)
+ */
+$months = [
+    'جانفي',
+    'فيفري',
+    'مارس',
+    'أفريل',
+    'ماي',
+    'جوان',
+    'جويلية',
+    'أوت',
+    'سبتمبر',
+    'أكتوبر',
+    'نوفمبر',
+    'ديسمبر',
+];
+
+return [
+    'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
+    'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
+    'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
+    'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
+    'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
+    'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
+    'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
+    'ago' => 'منذ :time',
+    'from_now' => 'في :time',
+    'after' => 'بعد :time',
+    'before' => 'قبل :time',
+    'diff_now' => 'الآن',
+    'diff_today' => 'اليوم',
+    'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_yesterday' => 'أمس',
+    'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_tomorrow' => 'غداً',
+    'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
+    'diff_before_yesterday' => 'قبل الأمس',
+    'diff_after_tomorrow' => 'بعد غد',
+    'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
+    'period_interval' => 'كل :interval',
+    'period_start_date' => 'من :date',
+    'period_end_date' => 'إلى :date',
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'list' => ['، ', ' و '],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اليوم على الساعة] LT',
+        'nextDay' => '[غدا على الساعة] LT',
+        'nextWeek' => 'dddd [على الساعة] LT',
+        'lastDay' => '[أمس على الساعة] LT',
+        'lastWeek' => 'dddd [على الساعة] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ص', 'م'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_YE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_YE.php
new file mode 100644
index 0000000..5dc2938
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ar_YE.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ar.php', [
+    'formats' => [
+        'L' => 'DD MMM, YYYY',
+    ],
+    'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
+    'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
+    'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
+    'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as.php
new file mode 100644
index 0000000..04bc3df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/as_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as_IN.php
new file mode 100644
index 0000000..5fbc3db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/as_IN.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Amitakhya Phukan, Red Hat    bug-glibc@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D-MM-YYYY',
+    ],
+    'months' => ['জানুৱাৰী', 'ফেব্ৰুৱাৰী', 'মাৰ্চ', 'এপ্ৰিল', 'মে', 'জুন', 'জুলাই', 'আগষ্ট', 'ছেপ্তেম্বৰ', 'অক্টোবৰ', 'নৱেম্বৰ', 'ডিচেম্বৰ'],
+    'months_short' => ['জানু', 'ফেব্ৰু', 'মাৰ্চ', 'এপ্ৰিল', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ্ট', 'অক্টো', 'নভে', 'ডিসে'],
+    'weekdays' => ['দেওবাৰ', 'সোমবাৰ', 'মঙ্গলবাৰ', 'বুধবাৰ', 'বৃহষ্পতিবাৰ', 'শুক্ৰবাৰ', 'শনিবাৰ'],
+    'weekdays_short' => ['দেও', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহষ্পতি', 'শুক্ৰ', 'শনি'],
+    'weekdays_min' => ['দেও', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহষ্পতি', 'শুক্ৰ', 'শনি'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['পূৰ্ব্বাহ্ন', 'অপৰাহ্ন'],
+
+    'year' => ':count বছৰ',
+    'y' => ':count বছৰ',
+    'a_year' => ':count বছৰ',
+
+    'month' => ':count মাহ',
+    'm' => ':count মাহ',
+    'a_month' => ':count মাহ',
+
+    'week' => ':count সপ্তাহ',
+    'w' => ':count সপ্তাহ',
+    'a_week' => ':count সপ্তাহ',
+
+    'day' => ':count বাৰ',
+    'd' => ':count বাৰ',
+    'a_day' => ':count বাৰ',
+
+    'hour' => ':count ঘণ্টা',
+    'h' => ':count ঘণ্টা',
+    'a_hour' => ':count ঘণ্টা',
+
+    'minute' => ':count মিনিট',
+    'min' => ':count মিনিট',
+    'a_minute' => ':count মিনিট',
+
+    'second' => ':count দ্বিতীয়',
+    's' => ':count দ্বিতীয়',
+    'a_second' => ':count দ্বিতীয়',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/asa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/asa.php
new file mode 100644
index 0000000..8389757
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/asa.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['icheheavo', 'ichamthi'],
+    'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Ijm', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Ijm', 'Jmo'],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Dec'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast.php
new file mode 100644
index 0000000..d9bdebe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast.php
@@ -0,0 +1,59 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Jordi Mallach jordi@gnu.org
+ * - Adolfo Jayme-Barrientos (fitojb)
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['de xineru', 'de febreru', 'de marzu', 'd’abril', 'de mayu', 'de xunu', 'de xunetu', 'd’agostu', 'de setiembre', 'd’ochobre', 'de payares', 'd’avientu'],
+    'months_short' => ['xin', 'feb', 'mar', 'abr', 'may', 'xun', 'xnt', 'ago', 'set', 'och', 'pay', 'avi'],
+    'weekdays' => ['domingu', 'llunes', 'martes', 'miércoles', 'xueves', 'vienres', 'sábadu'],
+    'weekdays_short' => ['dom', 'llu', 'mar', 'mié', 'xue', 'vie', 'sáb'],
+    'weekdays_min' => ['dom', 'llu', 'mar', 'mié', 'xue', 'vie', 'sáb'],
+
+    'year' => ':count añu|:count años',
+    'y' => ':count añu|:count años',
+    'a_year' => 'un añu|:count años',
+
+    'month' => ':count mes',
+    'm' => ':count mes',
+    'a_month' => 'un mes|:count mes',
+
+    'week' => ':count selmana|:count selmanes',
+    'w' => ':count selmana|:count selmanes',
+    'a_week' => 'una selmana|:count selmanes',
+
+    'day' => ':count día|:count díes',
+    'd' => ':count día|:count díes',
+    'a_day' => 'un día|:count díes',
+
+    'hour' => ':count hora|:count hores',
+    'h' => ':count hora|:count hores',
+    'a_hour' => 'una hora|:count hores',
+
+    'minute' => ':count minutu|:count minutos',
+    'min' => ':count minutu|:count minutos',
+    'a_minute' => 'un minutu|:count minutos',
+
+    'second' => ':count segundu|:count segundos',
+    's' => ':count segundu|:count segundos',
+    'a_second' => 'un segundu|:count segundos',
+
+    'ago' => 'hai :time',
+    'from_now' => 'en :time',
+    'after' => ':time dempués',
+    'before' => ':time enantes',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast_ES.php
new file mode 100644
index 0000000..04d7562
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ast_ES.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return require __DIR__.'/ast.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc.php
new file mode 100644
index 0000000..d6a6f63
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ayc_PE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc_PE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc_PE.php
new file mode 100644
index 0000000..ff18504
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ayc_PE.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - runasimipi.org    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['inïru', 'phiwriru', 'marsu', 'awrila', 'mayu', 'junyu', 'julyu', 'awustu', 'sitimri', 'uktuwri', 'nuwimri', 'risimri'],
+    'months_short' => ['ini', 'phi', 'mar', 'awr', 'may', 'jun', 'jul', 'awu', 'sit', 'ukt', 'nuw', 'ris'],
+    'weekdays' => ['tuminku', 'lunisa', 'martisa', 'mirkulisa', 'juywisa', 'wirnisa', 'sawäru'],
+    'weekdays_short' => ['tum', 'lun', 'mar', 'mir', 'juy', 'wir', 'saw'],
+    'weekdays_min' => ['tum', 'lun', 'mar', 'mir', 'juy', 'wir', 'saw'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['VM', 'NM'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az.php
new file mode 100644
index 0000000..1e92106
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az.php
@@ -0,0 +1,128 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Kunal Marwaha
+ * - François B
+ * - JD Isaacks
+ * - Orxan
+ * - Şəhriyar İmanov
+ * - Baran Şengül
+ */
+return [
+    'year' => ':count il',
+    'a_year' => '{1}bir il|]1,Inf[:count il',
+    'y' => ':count il',
+    'month' => ':count ay',
+    'a_month' => '{1}bir ay|]1,Inf[:count ay',
+    'm' => ':count ay',
+    'week' => ':count həftə',
+    'a_week' => '{1}bir həftə|]1,Inf[:count həftə',
+    'w' => ':count h.',
+    'day' => ':count gün',
+    'a_day' => '{1}bir gün|]1,Inf[:count gün',
+    'd' => ':count g.',
+    'hour' => ':count saat',
+    'a_hour' => '{1}bir saat|]1,Inf[:count saat',
+    'h' => ':count saat',
+    'minute' => ':count d.',
+    'a_minute' => '{1}bir dəqiqə|]1,Inf[:count dəqiqə',
+    'min' => ':count dəqiqə',
+    'second' => ':count san.',
+    'a_second' => '{1}birneçə saniyə|]1,Inf[:count saniyə',
+    's' => ':count saniyə',
+    'ago' => ':time əvvəl',
+    'from_now' => ':time sonra',
+    'after' => ':time sonra',
+    'before' => ':time əvvəl',
+    'diff_now' => 'indi',
+    'diff_today' => 'bugün',
+    'diff_today_regexp' => 'bugün(?:\\s+saat)?',
+    'diff_yesterday' => 'dünən',
+    'diff_tomorrow' => 'sabah',
+    'diff_tomorrow_regexp' => 'sabah(?:\\s+saat)?',
+    'diff_before_yesterday' => 'srağagün',
+    'diff_after_tomorrow' => 'birisi gün',
+    'period_recurrences' => ':count dəfədən bir',
+    'period_interval' => 'hər :interval',
+    'period_start_date' => ':date tarixindən başlayaraq',
+    'period_end_date' => ':date tarixinədək',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[bugün saat] LT',
+        'nextDay' => '[sabah saat] LT',
+        'nextWeek' => '[gələn həftə] dddd [saat] LT',
+        'lastDay' => '[dünən] LT',
+        'lastWeek' => '[keçən həftə] dddd [saat] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        if ($number === 0) { // special case for zero
+            return "$number-ıncı";
+        }
+
+        static $suffixes = [
+            1 => '-inci',
+            5 => '-inci',
+            8 => '-inci',
+            70 => '-inci',
+            80 => '-inci',
+            2 => '-nci',
+            7 => '-nci',
+            20 => '-nci',
+            50 => '-nci',
+            3 => '-üncü',
+            4 => '-üncü',
+            100 => '-üncü',
+            6 => '-ncı',
+            9 => '-uncu',
+            10 => '-uncu',
+            30 => '-uncu',
+            60 => '-ıncı',
+            90 => '-ıncı',
+        ];
+
+        $lastDigit = $number % 10;
+
+        return $number.($suffixes[$lastDigit] ?? $suffixes[$number % 100 - $lastDigit] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'gecə';
+        }
+        if ($hour < 12) {
+            return 'səhər';
+        }
+        if ($hour < 17) {
+            return 'gündüz';
+        }
+
+        return 'axşam';
+    },
+    'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
+    'months_short' => ['yan', 'fev', 'mar', 'apr', 'may', 'iyn', 'iyl', 'avq', 'sen', 'okt', 'noy', 'dek'],
+    'months_standalone' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'],
+    'weekdays' => ['bazar', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
+    'weekdays_short' => ['baz', 'bze', 'çax', 'çər', 'cax', 'cüm', 'şən'],
+    'weekdays_min' => ['bz', 'be', 'ça', 'çə', 'ca', 'cü', 'şə'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' və '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_AZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_AZ.php
new file mode 100644
index 0000000..2acf881
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_AZ.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/az.php', [
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['bazar günü', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
+    'weekdays_short' => ['baz', 'ber', 'çax', 'çər', 'cax', 'cüm', 'şnb'],
+    'weekdays_min' => ['baz', 'ber', 'çax', 'çər', 'cax', 'cüm', 'şnb'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Cyrl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Cyrl.php
new file mode 100644
index 0000000..d697918
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Cyrl.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/az.php', [
+    'weekdays' => ['базар', 'базар ертәси', 'чәршәнбә ахшамы', 'чәршәнбә', 'ҹүмә ахшамы', 'ҹүмә', 'шәнбә'],
+    'weekdays_short' => ['Б.', 'Б.Е.', 'Ч.А.', 'Ч.', 'Ҹ.А.', 'Ҹ.', 'Ш.'],
+    'weekdays_min' => ['Б.', 'Б.Е.', 'Ч.А.', 'Ч.', 'Ҹ.А.', 'Ҹ.', 'Ш.'],
+    'months' => ['јанвар', 'феврал', 'март', 'апрел', 'май', 'ијун', 'ијул', 'август', 'сентјабр', 'октјабр', 'нојабр', 'декабр'],
+    'months_short' => ['јан', 'фев', 'мар', 'апр', 'май', 'ијн', 'ијл', 'авг', 'сен', 'окт', 'ној', 'дек'],
+    'months_standalone' => ['Јанвар', 'Феврал', 'Март', 'Апрел', 'Май', 'Ијун', 'Ијул', 'Август', 'Сентјабр', 'Октјабр', 'Нојабр', 'Декабр'],
+    'meridiem' => ['а', 'п'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_IR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_IR.php
new file mode 100644
index 0000000..991a0ef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_IR.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Mousa Moradi mousamk@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'OY/OM/OD',
+    ],
+    'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مئی', 'ژوئن', 'جولای', 'آقۇست', 'سپتامبر', 'اوْکتوْبر', 'نوْوامبر', 'دسامبر'],
+    'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مئی', 'ژوئن', 'جولای', 'آقۇست', 'سپتامبر', 'اوْکتوْبر', 'نوْوامبر', 'دسامبر'],
+    'weekdays' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
+    'weekdays_short' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
+    'weekdays_min' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
+    'first_day_of_week' => 6,
+    'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰۴', '۰۵', '۰۶', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱۴', '۱۵', '۱۶', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲۴', '۲۵', '۲۶', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳۴', '۳۵', '۳۶', '۳۷', '۳۸', '۳۹', '۴۰', '۴۱', '۴۲', '۴۳', '۴۴', '۴۵', '۴۶', '۴۷', '۴۸', '۴۹', '۵۰', '۵۱', '۵۲', '۵۳', '۵۴', '۵۵', '۵۶', '۵۷', '۵۸', '۵۹', '۶۰', '۶۱', '۶۲', '۶۳', '۶۴', '۶۵', '۶۶', '۶۷', '۶۸', '۶۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷۴', '۷۵', '۷۶', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸۴', '۸۵', '۸۶', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹۴', '۹۵', '۹۶', '۹۷', '۹۸', '۹۹'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Latn.php
new file mode 100644
index 0000000..8346a5d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/az_Latn.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/az.php', [
+    'meridiem' => ['a', 'p'],
+    'weekdays' => ['bazar', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
+    'weekdays_short' => ['B.', 'B.E.', 'Ç.A.', 'Ç.', 'C.A.', 'C.', 'Ş.'],
+    'weekdays_min' => ['B.', 'B.E.', 'Ç.A.', 'Ç.', 'C.A.', 'C.', 'Ş.'],
+    'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
+    'months_short' => ['yan', 'fev', 'mar', 'apr', 'may', 'iyn', 'iyl', 'avq', 'sen', 'okt', 'noy', 'dek'],
+    'months_standalone' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'D MMMM YYYY, dddd HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bas.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bas.php
new file mode 100644
index 0000000..1b342bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bas.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['I bikɛ̂glà', 'I ɓugajɔp'],
+    'weekdays' => ['ŋgwà nɔ̂y', 'ŋgwà njaŋgumba', 'ŋgwà ûm', 'ŋgwà ŋgê', 'ŋgwà mbɔk', 'ŋgwà kɔɔ', 'ŋgwà jôn'],
+    'weekdays_short' => ['nɔy', 'nja', 'uum', 'ŋge', 'mbɔ', 'kɔɔ', 'jon'],
+    'weekdays_min' => ['nɔy', 'nja', 'uum', 'ŋge', 'mbɔ', 'kɔɔ', 'jon'],
+    'months' => ['Kɔndɔŋ', 'Màcɛ̂l', 'Màtùmb', 'Màtop', 'M̀puyɛ', 'Hìlòndɛ̀', 'Njèbà', 'Hìkaŋ', 'Dìpɔ̀s', 'Bìòôm', 'Màyɛsèp', 'Lìbuy li ńyèe'],
+    'months_short' => ['kɔn', 'mac', 'mat', 'mto', 'mpu', 'hil', 'nje', 'hik', 'dip', 'bio', 'may', 'liɓ'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'second' => ':count móndî', // less reliable
+    's' => ':count móndî', // less reliable
+    'a_second' => ':count móndî', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be.php
new file mode 100644
index 0000000..ce8dbe8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be.php
@@ -0,0 +1,168 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+// @codeCoverageIgnoreStart
+if (class_exists('Symfony\\Component\\Translation\\PluralizationRules')) {
+    \Symfony\Component\Translation\PluralizationRules::set(function ($number) {
+        return (($number % 10 == 1) && ($number % 100 != 11)) ? 0 : ((($number % 10 >= 2) && ($number % 10 <= 4) && (($number % 100 < 10) || ($number % 100 >= 20))) ? 1 : 2);
+    }, 'be');
+}
+// @codeCoverageIgnoreEnd
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - SobakaSlava
+ * - François B
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - AbadonnaAbbys
+ * - Siomkin Alexander
+ */
+return [
+    'year' => ':count год|:count гады|:count гадоў',
+    'a_year' => '{1}год|:count год|:count гады|:count гадоў',
+    'y' => ':count год|:count гады|:count гадоў',
+    'month' => ':count месяц|:count месяцы|:count месяцаў',
+    'a_month' => '{1}месяц|:count месяц|:count месяцы|:count месяцаў',
+    'm' => ':count месяц|:count месяцы|:count месяцаў',
+    'week' => ':count тыдзень|:count тыдні|:count тыдняў',
+    'a_week' => '{1}тыдзень|:count тыдзень|:count тыдні|:count тыдняў',
+    'w' => ':count тыдзень|:count тыдні|:count тыдняў',
+    'day' => ':count дзень|:count дні|:count дзён',
+    'a_day' => '{1}дзень|:count дзень|:count дні|:count дзён',
+    'd' => ':count дн',
+    'hour' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'a_hour' => '{1}гадзіна|:count гадзіна|:count гадзіны|:count гадзін',
+    'h' => ':count гадзіна|:count гадзіны|:count гадзін',
+    'minute' => ':count хвіліна|:count хвіліны|:count хвілін',
+    'a_minute' => '{1}хвіліна|:count хвіліна|:count хвіліны|:count хвілін',
+    'min' => ':count хв',
+    'second' => ':count секунда|:count секунды|:count секунд',
+    'a_second' => '{1}некалькі секунд|:count секунда|:count секунды|:count секунд',
+    's' => ':count сек',
+
+    'hour_ago' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'a_hour_ago' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
+    'h_ago' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'minute_ago' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'a_minute_ago' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
+    'min_ago' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'second_ago' => ':count секунду|:count секунды|:count секунд',
+    'a_second_ago' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
+    's_ago' => ':count секунду|:count секунды|:count секунд',
+
+    'hour_from_now' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'a_hour_from_now' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
+    'h_from_now' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'minute_from_now' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'a_minute_from_now' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
+    'min_from_now' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'second_from_now' => ':count секунду|:count секунды|:count секунд',
+    'a_second_from_now' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
+    's_from_now' => ':count секунду|:count секунды|:count секунд',
+
+    'hour_after' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'a_hour_after' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
+    'h_after' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'minute_after' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'a_minute_after' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
+    'min_after' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'second_after' => ':count секунду|:count секунды|:count секунд',
+    'a_second_after' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
+    's_after' => ':count секунду|:count секунды|:count секунд',
+
+    'hour_before' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'a_hour_before' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
+    'h_before' => ':count гадзіну|:count гадзіны|:count гадзін',
+    'minute_before' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'a_minute_before' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
+    'min_before' => ':count хвіліну|:count хвіліны|:count хвілін',
+    'second_before' => ':count секунду|:count секунды|:count секунд',
+    'a_second_before' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
+    's_before' => ':count секунду|:count секунды|:count секунд',
+
+    'ago' => ':time таму',
+    'from_now' => 'праз :time',
+    'after' => ':time пасля',
+    'before' => ':time да',
+    'diff_now' => 'цяпер',
+    'diff_today' => 'Сёння',
+    'diff_today_regexp' => 'Сёння(?:\\s+ў)?',
+    'diff_yesterday' => 'учора',
+    'diff_yesterday_regexp' => 'Учора(?:\\s+ў)?',
+    'diff_tomorrow' => 'заўтра',
+    'diff_tomorrow_regexp' => 'Заўтра(?:\\s+ў)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY г.',
+        'LLL' => 'D MMMM YYYY г., HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY г., HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Сёння ў] LT',
+        'nextDay' => '[Заўтра ў] LT',
+        'nextWeek' => '[У] dddd [ў] LT',
+        'lastDay' => '[Учора ў] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            switch ($current->dayOfWeek) {
+                case 1:
+                case 2:
+                case 4:
+                    return '[У мінулы] dddd [ў] LT';
+                default:
+                    return '[У мінулую] dddd [ў] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'M':
+            case 'd':
+            case 'DDD':
+            case 'w':
+            case 'W':
+                return ($number % 10 === 2 || $number % 10 === 3) && ($number % 100 !== 12 && $number % 100 !== 13) ? $number.'-і' : $number.'-ы';
+            case 'D':
+                return $number.'-га';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'ночы';
+        }
+        if ($hour < 12) {
+            return 'раніцы';
+        }
+        if ($hour < 17) {
+            return 'дня';
+        }
+
+        return 'вечара';
+    },
+    'months' => ['студзеня', 'лютага', 'сакавіка', 'красавіка', 'траўня', 'чэрвеня', 'ліпеня', 'жніўня', 'верасня', 'кастрычніка', 'лістапада', 'снежня'],
+    'months_standalone' => ['студзень', 'люты', 'сакавік', 'красавік', 'травень', 'чэрвень', 'ліпень', 'жнівень', 'верасень', 'кастрычнік', 'лістапад', 'снежань'],
+    'months_short' => ['студ', 'лют', 'сак', 'крас', 'трав', 'чэрв', 'ліп', 'жнів', 'вер', 'каст', 'ліст', 'снеж'],
+    'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['нядзелю', 'панядзелак', 'аўторак', 'сераду', 'чацвер', 'пятніцу', 'суботу'],
+    'weekdays_standalone' => ['нядзеля', 'панядзелак', 'аўторак', 'серада', 'чацвер', 'пятніца', 'субота'],
+    'weekdays_short' => ['нд', 'пн', 'ат', 'ср', 'чц', 'пт', 'сб'],
+    'weekdays_min' => ['нд', 'пн', 'ат', 'ср', 'чц', 'пт', 'сб'],
+    'weekdays_regexp' => '/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' і '],
+    'months_short_standalone' => ['сту', 'лют', 'сак', 'кра', 'май', 'чэр', 'ліп', 'жні', 'вер', 'кас', 'ліс', 'сне'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY.php
new file mode 100644
index 0000000..26684b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/be.php', [
+    'months' => ['студзеня', 'лютага', 'сакавіка', 'красавіка', 'мая', 'чэрвеня', 'ліпеня', 'жніўня', 'верасня', 'кастрычніка', 'лістапада', 'снежня'],
+    'months_short' => ['сту', 'лют', 'сак', 'кра', 'мая', 'чэр', 'ліп', 'жні', 'вер', 'кас', 'ліс', 'сне'],
+    'weekdays' => ['Нядзеля', 'Панядзелак', 'Аўторак', 'Серада', 'Чацвер', 'Пятніца', 'Субота'],
+    'weekdays_short' => ['Няд', 'Пан', 'Аўт', 'Срд', 'Чцв', 'Пят', 'Суб'],
+    'weekdays_min' => ['Няд', 'Пан', 'Аўт', 'Срд', 'Чцв', 'Пят', 'Суб'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY@latin.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY@latin.php
new file mode 100644
index 0000000..517ce83
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/be_BY@latin.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['studzienia', 'lutaha', 'sakavika', 'krasavika', 'maja', 'červienia', 'lipienia', 'žniŭnia', 'vieraśnia', 'kastryčnika', 'listapada', 'śniežnia'],
+    'months_short' => ['Stu', 'Lut', 'Sak', 'Kra', 'Maj', 'Čer', 'Lip', 'Žni', 'Vie', 'Kas', 'Lis', 'Śni'],
+    'weekdays' => ['Niadziela', 'Paniadziełak', 'Aŭtorak', 'Sierada', 'Čaćvier', 'Piatnica', 'Subota'],
+    'weekdays_short' => ['Nia', 'Pan', 'Aŭt', 'Sie', 'Čać', 'Pia', 'Sub'],
+    'weekdays_min' => ['Nia', 'Pan', 'Aŭt', 'Sie', 'Čać', 'Pia', 'Sub'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem.php
new file mode 100644
index 0000000..1c3ef03
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/bem_ZM.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem_ZM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem_ZM.php
new file mode 100644
index 0000000..620b579
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bem_ZM.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - ANLoc Martin Benjamin locales@africanlocalization.net
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'MM/DD/YYYY',
+    ],
+    'months' => ['Januari', 'Februari', 'Machi', 'Epreo', 'Mei', 'Juni', 'Julai', 'Ogasti', 'Septemba', 'Oktoba', 'Novemba', 'Disemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Epr', 'Mei', 'Jun', 'Jul', 'Oga', 'Sep', 'Okt', 'Nov', 'Dis'],
+    'weekdays' => ['Pa Mulungu', 'Palichimo', 'Palichibuli', 'Palichitatu', 'Palichine', 'Palichisano', 'Pachibelushi'],
+    'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
+    'weekdays_min' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['uluchelo', 'akasuba'],
+
+    'year' => 'myaka :count',
+    'y' => 'myaka :count',
+    'a_year' => 'myaka :count',
+
+    'month' => 'myeshi :count',
+    'm' => 'myeshi :count',
+    'a_month' => 'myeshi :count',
+
+    'week' => 'umulungu :count',
+    'w' => 'umulungu :count',
+    'a_week' => 'umulungu :count',
+
+    'day' => 'inshiku :count',
+    'd' => 'inshiku :count',
+    'a_day' => 'inshiku :count',
+
+    'hour' => 'awala :count',
+    'h' => 'awala :count',
+    'a_hour' => 'awala :count',
+
+    'minute' => 'miniti :count',
+    'min' => 'miniti :count',
+    'a_minute' => 'miniti :count',
+
+    'second' => 'sekondi :count',
+    's' => 'sekondi :count',
+    'a_second' => 'sekondi :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber.php
new file mode 100644
index 0000000..685603c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ber_DZ.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_DZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_DZ.php
new file mode 100644
index 0000000..38de10a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_DZ.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['bazar günü', 'birinci gün', 'ikinci gün', 'üçüncü gün', 'dördüncü gün', 'beşinci gün', 'altıncı gün'],
+    'weekdays_short' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
+    'weekdays_min' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_MA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_MA.php
new file mode 100644
index 0000000..38de10a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ber_MA.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['bazar günü', 'birinci gün', 'ikinci gün', 'üçüncü gün', 'dördüncü gün', 'beşinci gün', 'altıncı gün'],
+    'weekdays_short' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
+    'weekdays_min' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bez.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bez.php
new file mode 100644
index 0000000..1facc9d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bez.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['pamilau', 'pamunyi'],
+    'weekdays' => ['pa mulungu', 'pa shahuviluha', 'pa hivili', 'pa hidatu', 'pa hitayi', 'pa hihanu', 'pa shahulembela'],
+    'weekdays_short' => ['Mul', 'Vil', 'Hiv', 'Hid', 'Hit', 'Hih', 'Lem'],
+    'weekdays_min' => ['Mul', 'Vil', 'Hiv', 'Hid', 'Hit', 'Hih', 'Lem'],
+    'months' => ['pa mwedzi gwa hutala', 'pa mwedzi gwa wuvili', 'pa mwedzi gwa wudatu', 'pa mwedzi gwa wutai', 'pa mwedzi gwa wuhanu', 'pa mwedzi gwa sita', 'pa mwedzi gwa saba', 'pa mwedzi gwa nane', 'pa mwedzi gwa tisa', 'pa mwedzi gwa kumi', 'pa mwedzi gwa kumi na moja', 'pa mwedzi gwa kumi na mbili'],
+    'months_short' => ['Hut', 'Vil', 'Dat', 'Tai', 'Han', 'Sit', 'Sab', 'Nan', 'Tis', 'Kum', 'Kmj', 'Kmb'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg.php
new file mode 100644
index 0000000..0e17673
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg.php
@@ -0,0 +1,111 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - Glavić
+ */
+return [
+    'year' => ':count година|:count години',
+    'a_year' => 'година|:count години',
+    'y' => ':count година|:count години',
+    'month' => ':count месец|:count месеца',
+    'a_month' => 'месец|:count месеца',
+    'm' => ':count месец|:count месеца',
+    'week' => ':count седмица|:count седмици',
+    'a_week' => 'седмица|:count седмици',
+    'w' => ':count седмица|:count седмици',
+    'day' => ':count ден|:count дни',
+    'a_day' => 'ден|:count дни',
+    'd' => ':count ден|:count дни',
+    'hour' => ':count час|:count часа',
+    'a_hour' => 'час|:count часа',
+    'h' => ':count час|:count часа',
+    'minute' => ':count минута|:count минути',
+    'a_minute' => 'минута|:count минути',
+    'min' => ':count минута|:count минути',
+    'second' => ':count секунда|:count секунди',
+    'a_second' => 'няколко секунди|:count секунди',
+    's' => ':count секунда|:count секунди',
+    'ago' => 'преди :time',
+    'from_now' => 'след :time',
+    'after' => 'след :time',
+    'before' => 'преди :time',
+    'diff_now' => 'сега',
+    'diff_today' => 'Днес',
+    'diff_today_regexp' => 'Днес(?:\\s+в)?',
+    'diff_yesterday' => 'вчера',
+    'diff_yesterday_regexp' => 'Вчера(?:\\s+в)?',
+    'diff_tomorrow' => 'утре',
+    'diff_tomorrow_regexp' => 'Утре(?:\\s+в)?',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'D.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Днес в] LT',
+        'nextDay' => '[Утре в] LT',
+        'nextWeek' => 'dddd [в] LT',
+        'lastDay' => '[Вчера в] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            switch ($current->dayOfWeek) {
+                case 0:
+                case 3:
+                case 6:
+                    return '[В изминалата] dddd [в] LT';
+                default:
+                    return '[В изминалия] dddd [в] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        $lastDigit = $number % 10;
+        $last2Digits = $number % 100;
+        if ($number === 0) {
+            return "$number-ев";
+        }
+        if ($last2Digits === 0) {
+            return "$number-ен";
+        }
+        if ($last2Digits > 10 && $last2Digits < 20) {
+            return "$number-ти";
+        }
+        if ($lastDigit === 1) {
+            return "$number-ви";
+        }
+        if ($lastDigit === 2) {
+            return "$number-ри";
+        }
+        if ($lastDigit === 7 || $lastDigit === 8) {
+            return "$number-ми";
+        }
+
+        return "$number-ти";
+    },
+    'months' => ['януари', 'февруари', 'март', 'април', 'май', 'юни', 'юли', 'август', 'септември', 'октомври', 'ноември', 'декември'],
+    'months_short' => ['яну', 'фев', 'мар', 'апр', 'май', 'юни', 'юли', 'авг', 'сеп', 'окт', 'ное', 'дек'],
+    'weekdays' => ['неделя', 'понеделник', 'вторник', 'сряда', 'четвъртък', 'петък', 'събота'],
+    'weekdays_short' => ['нед', 'пон', 'вто', 'сря', 'чет', 'пет', 'съб'],
+    'weekdays_min' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' и '],
+    'meridiem' => ['преди обяд', 'следобед'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg_BG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg_BG.php
new file mode 100644
index 0000000..85c0783
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bg_BG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/bg.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb.php
new file mode 100644
index 0000000..49f0803
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/bhb_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb_IN.php
new file mode 100644
index 0000000..ab557cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bhb_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    alexey.merzlyakov@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+    'weekdays' => ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
+    'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
+    'weekdays_min' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho.php
new file mode 100644
index 0000000..e9ed0b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/bho_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho_IN.php
new file mode 100644
index 0000000..bc54f36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bho_IN.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bhashaghar@googlegroups.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर"'],
+    'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर"'],
+    'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+
+    'hour' => ':count मौसम',
+    'h' => ':count मौसम',
+    'a_hour' => ':count मौसम',
+
+    'minute' => ':count कला',
+    'min' => ':count कला',
+    'a_minute' => ':count कला',
+
+    'second' => ':count सोमार',
+    's' => ':count सोमार',
+    'a_second' => ':count सोमार',
+
+    'year' => ':count साल',
+    'y' => ':count साल',
+    'a_year' => ':count साल',
+
+    'month' => ':count महिना',
+    'm' => ':count महिना',
+    'a_month' => ':count महिना',
+
+    'week' => ':count सप्ताह',
+    'w' => ':count सप्ताह',
+    'a_week' => ':count सप्ताह',
+
+    'day' => ':count दिन',
+    'd' => ':count दिन',
+    'a_day' => ':count दिन',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi.php
new file mode 100644
index 0000000..dd08128
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/bi_VU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi_VU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi_VU.php
new file mode 100644
index 0000000..1fe7770
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bi_VU.php
@@ -0,0 +1,53 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    akhilesh.k@samsung.com & maninder1.s@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'dddd DD MMM YYYY',
+    ],
+    'months' => ['jenuware', 'febwari', 'maj', 'epril', 'mei', 'jun', 'julae', 'ogis', 'septemba', 'oktoba', 'novemba', 'disemba'],
+    'months_short' => ['jen', 'feb', 'maj', 'epr', 'mei', 'jun', 'jul', 'ogi', 'sep', 'okt', 'nov', 'dis'],
+    'weekdays' => ['sande', 'mande', 'maj', 'wota', 'fraede', 'sarede'],
+    'weekdays_short' => ['san', 'man', 'maj', 'wot', 'fra', 'sar'],
+    'weekdays_min' => ['san', 'man', 'maj', 'wot', 'fra', 'sar'],
+
+    'year' => ':count seven', // less reliable
+    'y' => ':count seven', // less reliable
+    'a_year' => ':count seven', // less reliable
+
+    'month' => ':count mi', // less reliable
+    'm' => ':count mi', // less reliable
+    'a_month' => ':count mi', // less reliable
+
+    'week' => ':count sarede', // less reliable
+    'w' => ':count sarede', // less reliable
+    'a_week' => ':count sarede', // less reliable
+
+    'day' => ':count betde', // less reliable
+    'd' => ':count betde', // less reliable
+    'a_day' => ':count betde', // less reliable
+
+    'hour' => ':count klok', // less reliable
+    'h' => ':count klok', // less reliable
+    'a_hour' => ':count klok', // less reliable
+
+    'minute' => ':count smol', // less reliable
+    'min' => ':count smol', // less reliable
+    'a_minute' => ':count smol', // less reliable
+
+    'second' => ':count tu', // less reliable
+    's' => ':count tu', // less reliable
+    'a_second' => ':count tu', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bm.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bm.php
new file mode 100644
index 0000000..92822d2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bm.php
@@ -0,0 +1,70 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Estelle Comment
+ */
+return [
+    'year' => 'san :count',
+    'a_year' => '{1}san kelen|san :count',
+    'y' => 'san :count',
+    'month' => 'kalo :count',
+    'a_month' => '{1}kalo kelen|kalo :count',
+    'm' => 'k. :count',
+    'week' => 'dɔgɔkun :count',
+    'a_week' => 'dɔgɔkun kelen',
+    'w' => 'd. :count',
+    'day' => 'tile :count',
+    'd' => 't. :count',
+    'a_day' => '{1}tile kelen|tile :count',
+    'hour' => 'lɛrɛ :count',
+    'a_hour' => '{1}lɛrɛ kelen|lɛrɛ :count',
+    'h' => 'l. :count',
+    'minute' => 'miniti :count',
+    'a_minute' => '{1}miniti kelen|miniti :count',
+    'min' => 'm. :count',
+    'second' => 'sekondi :count',
+    'a_second' => '{1}sanga dama dama|sekondi :count',
+    's' => 'sek. :count',
+    'ago' => 'a bɛ :time bɔ',
+    'from_now' => ':time kɔnɔ',
+    'diff_today' => 'Bi',
+    'diff_yesterday' => 'Kunu',
+    'diff_yesterday_regexp' => 'Kunu(?:\\s+lɛrɛ)?',
+    'diff_tomorrow' => 'Sini',
+    'diff_tomorrow_regexp' => 'Sini(?:\\s+lɛrɛ)?',
+    'diff_today_regexp' => 'Bi(?:\\s+lɛrɛ)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'MMMM [tile] D [san] YYYY',
+        'LLL' => 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',
+        'LLLL' => 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Bi lɛrɛ] LT',
+        'nextDay' => '[Sini lɛrɛ] LT',
+        'nextWeek' => 'dddd [don lɛrɛ] LT',
+        'lastDay' => '[Kunu lɛrɛ] LT',
+        'lastWeek' => 'dddd [tɛmɛnen lɛrɛ] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['Zanwuyekalo', 'Fewuruyekalo', 'Marisikalo', 'Awirilikalo', 'Mɛkalo', 'Zuwɛnkalo', 'Zuluyekalo', 'Utikalo', 'Sɛtanburukalo', 'ɔkutɔburukalo', 'Nowanburukalo', 'Desanburukalo'],
+    'months_short' => ['Zan', 'Few', 'Mar', 'Awi', 'Mɛ', 'Zuw', 'Zul', 'Uti', 'Sɛt', 'ɔku', 'Now', 'Des'],
+    'weekdays' => ['Kari', 'Ntɛnɛn', 'Tarata', 'Araba', 'Alamisa', 'Juma', 'Sibiri'],
+    'weekdays_short' => ['Kar', 'Ntɛ', 'Tar', 'Ara', 'Ala', 'Jum', 'Sib'],
+    'weekdays_min' => ['Ka', 'Nt', 'Ta', 'Ar', 'Al', 'Ju', 'Si'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' ni '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn.php
new file mode 100644
index 0000000..8e14789
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn.php
@@ -0,0 +1,100 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Shakib Hossain
+ * - Raju
+ * - Aniruddha Adhikary
+ * - JD Isaacks
+ * - Saiful Islam
+ * - Faisal Islam
+ */
+return [
+    'year' => ':count বছর',
+    'a_year' => 'এক বছর|:count বছর',
+    'y' => '১ বছর|:count বছর',
+    'month' => ':count মাস',
+    'a_month' => 'এক মাস|:count মাস',
+    'm' => '১ মাস|:count মাস',
+    'week' => ':count সপ্তাহ',
+    'a_week' => '১ সপ্তাহ|:count সপ্তাহ',
+    'w' => '১ সপ্তাহ|:count সপ্তাহ',
+    'day' => ':count দিন',
+    'a_day' => 'এক দিন|:count দিন',
+    'd' => '১ দিন|:count দিন',
+    'hour' => ':count ঘন্টা',
+    'a_hour' => 'এক ঘন্টা|:count ঘন্টা',
+    'h' => '১ ঘন্টা|:count ঘন্টা',
+    'minute' => ':count মিনিট',
+    'a_minute' => 'এক মিনিট|:count মিনিট',
+    'min' => '১ মিনিট|:count মিনিট',
+    'second' => ':count সেকেন্ড',
+    'a_second' => 'কয়েক সেকেন্ড|:count সেকেন্ড',
+    's' => '১ সেকেন্ড|:count সেকেন্ড',
+    'ago' => ':time আগে',
+    'from_now' => ':time পরে',
+    'after' => ':time পরে',
+    'before' => ':time আগে',
+    'diff_now' => 'এখন',
+    'diff_today' => 'আজ',
+    'diff_yesterday' => 'গতকাল',
+    'diff_tomorrow' => 'আগামীকাল',
+    'period_recurrences' => ':count বার|:count বার',
+    'period_interval' => 'প্রতি :interval',
+    'period_start_date' => ':date থেকে',
+    'period_end_date' => ':date পর্যন্ত',
+    'formats' => [
+        'LT' => 'A Oh:Om সময়',
+        'LTS' => 'A Oh:Om:Os সময়',
+        'L' => 'OD/OM/OY',
+        'LL' => 'OD MMMM OY',
+        'LLL' => 'OD MMMM OY, A Oh:Om সময়',
+        'LLLL' => 'dddd, OD MMMM OY, A Oh:Om সময়',
+    ],
+    'calendar' => [
+        'sameDay' => '[আজ] LT',
+        'nextDay' => '[আগামীকাল] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[গতকাল] LT',
+        'lastWeek' => '[গত] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'রাত';
+        }
+        if ($hour < 10) {
+            return 'সকাল';
+        }
+        if ($hour < 17) {
+            return 'দুপুর';
+        }
+        if ($hour < 20) {
+            return 'বিকাল';
+        }
+
+        return 'রাত';
+    },
+    'months' => ['জানুয়ারী', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্র', 'মে', 'জুন', 'জুল', 'আগ', 'সেপ্ট', 'অক্টো', 'নভে', 'ডিসে'],
+    'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
+    'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
+    'weekdays_min' => ['রবি', 'সোম', 'মঙ্গ', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
+    'list' => [', ', ' এবং '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekdays_standalone' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহষ্পতিবার', 'শুক্রবার', 'শনিবার'],
+    'weekdays_min_standalone' => ['রঃ', 'সোঃ', 'মঃ', 'বুঃ', 'বৃঃ', 'শুঃ', 'শনি'],
+    'months_short_standalone' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'alt_numbers' => ['০', '১', '২', '৩', '৪', '৫', '৬', '৭', '৮', '৯'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_BD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_BD.php
new file mode 100644
index 0000000..b5b28dd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_BD.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ankur Group, Taneem Ahmed, Jamil Ahmed
+ */
+return array_replace_recursive(require __DIR__.'/bn.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
+    'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
+    'weekdays_min' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
+    'first_day_of_week' => 5,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_IN.php
new file mode 100644
index 0000000..8b3a50e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bn_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/bn.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
+    'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
+    'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
+    'weekdays_min' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo.php
new file mode 100644
index 0000000..99e1bf4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo.php
@@ -0,0 +1,71 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ */
+return [
+    'year' => '{1}ལོ་གཅིག|]1,Inf[:count ལོ',
+    'month' => '{1}ཟླ་བ་གཅིག|]1,Inf[:count ཟླ་བ',
+    'week' => ':count བདུན་ཕྲག',
+    'day' => '{1}ཉིན་གཅིག|]1,Inf[:count ཉིན་',
+    'hour' => '{1}ཆུ་ཚོད་གཅིག|]1,Inf[:count ཆུ་ཚོད',
+    'minute' => '{1}སྐར་མ་གཅིག|]1,Inf[:count སྐར་མ',
+    'second' => '{1}ལམ་སང|]1,Inf[:count སྐར་ཆ།',
+    'ago' => ':time སྔན་ལ',
+    'from_now' => ':time ལ་',
+    'diff_yesterday' => 'ཁ་སང',
+    'diff_today' => 'དི་རིང',
+    'diff_tomorrow' => 'སང་ཉིན',
+    'formats' => [
+        'LT' => 'A h:mm',
+        'LTS' => 'A h:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[དི་རིང] LT',
+        'nextDay' => '[སང་ཉིན] LT',
+        'nextWeek' => '[བདུན་ཕྲག་རྗེས་མ], LT',
+        'lastDay' => '[ཁ་སང] LT',
+        'lastWeek' => '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'མཚན་མོ';
+        }
+        if ($hour < 10) {
+            return 'ཞོགས་ཀས';
+        }
+        if ($hour < 17) {
+            return 'ཉིན་གུང';
+        }
+        if ($hour < 20) {
+            return 'དགོང་དག';
+        }
+
+        return 'མཚན་མོ';
+    },
+    'months' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
+    'months_short' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
+    'weekdays' => ['གཟའ་ཉི་མ་', 'གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་པ་', 'གཟའ་ཕུར་བུ', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་པ་'],
+    'weekdays_short' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ', 'པ་སངས་', 'སྤེན་པ་'],
+    'weekdays_min' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ', 'པ་སངས་', 'སྤེན་པ་'],
+    'list' => [', ', ' ཨནད་ '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'months_standalone' => ['ཟླ་བ་དང་པོ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་པ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུན་པ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_CN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_CN.php
new file mode 100644
index 0000000..c3d9d8b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_CN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/bo.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_IN.php
new file mode 100644
index 0000000..a377fb5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bo_IN.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/bo.php', [
+    'meridiem' => ['སྔ་དྲོ་', 'ཕྱི་དྲོ་'],
+    'weekdays' => ['གཟའ་ཉི་མ་', 'གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་པ་', 'གཟའ་ཕུར་བུ་', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་པ་'],
+    'weekdays_short' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ་', 'པ་སངས་', 'སྤེན་པ་'],
+    'weekdays_min' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ་', 'པ་སངས་', 'སྤེན་པ་'],
+    'months' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
+    'months_short' => ['ཟླ་༡', 'ཟླ་༢', 'ཟླ་༣', 'ཟླ་༤', 'ཟླ་༥', 'ཟླ་༦', 'ཟླ་༧', 'ཟླ་༨', 'ཟླ་༩', 'ཟླ་༡༠', 'ཟླ་༡༡', 'ཟླ་༡༢'],
+    'months_standalone' => ['ཟླ་བ་དང་པོ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་པ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུན་པ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
+    'weekend' => [0, 0],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'YYYY ལོའི་MMMཚེས་D',
+        'LLL' => 'སྤྱི་ལོ་YYYY MMMMའི་ཚེས་D h:mm a',
+        'LLLL' => 'YYYY MMMMའི་ཚེས་D, dddd h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br.php
new file mode 100644
index 0000000..583472f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br.php
@@ -0,0 +1,76 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Serhan Apaydın
+ * - JD Isaacks
+ */
+return [
+    'year' => '{1}:count bloaz|{3,4,5,9}:count bloaz|[0,Inf[:count vloaz',
+    'a_year' => '{1}ur bloaz|{3,4,5,9}:count bloaz|[0,Inf[:count vloaz',
+    'month' => '{1}:count miz|{2}:count viz|[0,Inf[:count miz',
+    'a_month' => '{1}ur miz|{2}:count viz|[0,Inf[:count miz',
+    'week' => ':count sizhun',
+    'a_week' => '{1}ur sizhun|:count sizhun',
+    'day' => '{1}:count devezh|{2}:count zevezh|[0,Inf[:count devezh',
+    'a_day' => '{1}un devezh|{2}:count zevezh|[0,Inf[:count devezh',
+    'hour' => ':count eur',
+    'a_hour' => '{1}un eur|:count eur',
+    'minute' => '{1}:count vunutenn|{2}:count vunutenn|[0,Inf[:count munutenn',
+    'a_minute' => '{1}ur vunutenn|{2}:count vunutenn|[0,Inf[:count munutenn',
+    'second' => ':count eilenn',
+    'a_second' => '{1}un nebeud segondennoù|[0,Inf[:count eilenn',
+    'ago' => ':time \'zo',
+    'from_now' => 'a-benn :time',
+    'diff_now' => 'bremañ',
+    'diff_today' => 'Hiziv',
+    'diff_today_regexp' => 'Hiziv(?:\\s+da)?',
+    'diff_yesterday' => 'decʼh',
+    'diff_yesterday_regexp' => 'Dec\'h(?:\\s+da)?',
+    'diff_tomorrow' => 'warcʼhoazh',
+    'diff_tomorrow_regexp' => 'Warc\'hoazh(?:\\s+da)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D [a viz] MMMM YYYY',
+        'LLL' => 'D [a viz] MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D [a viz] MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hiziv da] LT',
+        'nextDay' => '[Warc\'hoazh da] LT',
+        'nextWeek' => 'dddd [da] LT',
+        'lastDay' => '[Dec\'h da] LT',
+        'lastWeek' => 'dddd [paset da] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.($number === 1 ? 'añ' : 'vet');
+    },
+    'months' => ['Genver', 'C\'hwevrer', 'Meurzh', 'Ebrel', 'Mae', 'Mezheven', 'Gouere', 'Eost', 'Gwengolo', 'Here', 'Du', 'Kerzu'],
+    'months_short' => ['Gen', 'C\'hwe', 'Meu', 'Ebr', 'Mae', 'Eve', 'Gou', 'Eos', 'Gwe', 'Her', 'Du', 'Ker'],
+    'weekdays' => ['Sul', 'Lun', 'Meurzh', 'Merc\'her', 'Yaou', 'Gwener', 'Sadorn'],
+    'weekdays_short' => ['Sul', 'Lun', 'Meu', 'Mer', 'Yao', 'Gwe', 'Sad'],
+    'weekdays_min' => ['Su', 'Lu', 'Me', 'Mer', 'Ya', 'Gw', 'Sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' hag '],
+    'meridiem' => ['A.M.', 'G.M.'],
+
+    'y' => ':count bl.',
+    'd' => ':count d',
+    'h' => ':count e',
+    'min' => ':count min',
+    's' => ':count s',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br_FR.php
new file mode 100644
index 0000000..9d939fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/br_FR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/br.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx.php
new file mode 100644
index 0000000..a0a7bf9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/brx_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx_IN.php
new file mode 100644
index 0000000..2d80ced
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/brx_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'M/D/YY',
+    ],
+    'months' => ['जानुवारी', 'फेब्रुवारी', 'मार्स', 'एफ्रिल', 'मे', 'जुन', 'जुलाइ', 'आगस्थ', 'सेबथेज्ब़र', 'अखथबर', 'नबेज्ब़र', 'दिसेज्ब़र'],
+    'months_short' => ['जानुवारी', 'फेब्रुवारी', 'मार्स', 'एप्रिल', 'मे', 'जुन', 'जुलाइ', 'आगस्थ', 'सेबथेज्ब़र', 'अखथबर', 'नबेज्ब़र', 'दिसेज्ब़र'],
+    'weekdays' => ['रबिबार', 'सोबार', 'मंगलबार', 'बुदबार', 'बिसथिबार', 'सुखुरबार', 'सुनिबार'],
+    'weekdays_short' => ['रबि', 'सम', 'मंगल', 'बुद', 'बिसथि', 'सुखुर', 'सुनि'],
+    'weekdays_min' => ['रबि', 'सम', 'मंगल', 'बुद', 'बिसथि', 'सुखुर', 'सुनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['फुं.', 'बेलासे.'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs.php
new file mode 100644
index 0000000..d2fc5aa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs.php
@@ -0,0 +1,94 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bokideckonja
+ * - Josh Soref
+ * - François B
+ * - shaishavgandhi05
+ * - Serhan Apaydın
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count godina|:count godine|:count godina',
+    'y' => ':count godina|:count godine|:count godina',
+    'month' => ':count mjesec|:count mjeseca|:count mjeseci',
+    'm' => ':count mjesec|:count mjeseca|:count mjeseci',
+    'week' => ':count sedmice|:count sedmicu|:count sedmica',
+    'w' => ':count sedmice|:count sedmicu|:count sedmica',
+    'day' => ':count dan|:count dana|:count dana',
+    'd' => ':count dan|:count dana|:count dana',
+    'hour' => ':count sat|:count sata|:count sati',
+    'h' => ':count sat|:count sata|:count sati',
+    'minute' => ':count minut|:count minuta|:count minuta',
+    'min' => ':count minut|:count minuta|:count minuta',
+    'second' => ':count sekund|:count sekunda|:count sekundi',
+    's' => ':count sekund|:count sekunda|:count sekundi',
+    'ago' => 'prije :time',
+    'from_now' => 'za :time',
+    'after' => 'nakon :time',
+    'before' => ':time ranije',
+    'diff_now' => 'sada',
+    'diff_today' => 'danas',
+    'diff_today_regexp' => 'danas(?:\\s+u)?',
+    'diff_yesterday' => 'jučer',
+    'diff_yesterday_regexp' => 'jučer(?:\\s+u)?',
+    'diff_tomorrow' => 'sutra',
+    'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[danas u] LT',
+        'nextDay' => '[sutra u] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $current) {
+            switch ($current->dayOfWeek) {
+                case 0:
+                    return '[u] [nedjelju] [u] LT';
+                case 3:
+                    return '[u] [srijedu] [u] LT';
+                case 6:
+                    return '[u] [subotu] [u] LT';
+                default:
+                    return '[u] dddd [u] LT';
+            }
+        },
+        'lastDay' => '[jučer u] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            switch ($current->dayOfWeek) {
+                case 0:
+                case 3:
+                    return '[prošlu] dddd [u] LT';
+                case 6:
+                    return '[prošle] [subote] [u] LT';
+                default:
+                    return '[prošli] dddd [u] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['januar', 'februar', 'mart', 'april', 'maj', 'juni', 'juli', 'august', 'septembar', 'oktobar', 'novembar', 'decembar'],
+    'months_short' => ['jan.', 'feb.', 'mar.', 'apr.', 'maj.', 'jun.', 'jul.', 'aug.', 'sep.', 'okt.', 'nov.', 'dec.'],
+    'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
+    'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' i '],
+    'meridiem' => ['prijepodne', 'popodne'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_BA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_BA.php
new file mode 100644
index 0000000..4dd21ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_BA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/bs.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Cyrl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Cyrl.php
new file mode 100644
index 0000000..09221e0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Cyrl.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/bs.php', [
+    'meridiem' => ['пре подне', 'поподне'],
+    'weekdays' => ['недјеља', 'понедјељак', 'уторак', 'сриједа', 'четвртак', 'петак', 'субота'],
+    'weekdays_short' => ['нед', 'пон', 'уто', 'сри', 'чет', 'пет', 'суб'],
+    'weekdays_min' => ['нед', 'пон', 'уто', 'сри', 'чет', 'пет', 'суб'],
+    'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јуни', 'јули', 'аугуст', 'септембар', 'октобар', 'новембар', 'децембар'],
+    'months_short' => ['јан', 'феб', 'мар', 'апр', 'мај', 'јун', 'јул', 'ауг', 'сеп', 'окт', 'нов', 'дец'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D.M.YYYY.',
+        'LL' => 'DD.MM.YYYY.',
+        'LLL' => 'DD. MMMM YYYY. HH:mm',
+        'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Latn.php
new file mode 100644
index 0000000..91ed1cc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/bs_Latn.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/bs.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn.php
new file mode 100644
index 0000000..7125f3d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/byn_ER.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn_ER.php
new file mode 100644
index 0000000..ad67533
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/byn_ER.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ልደትሪ', 'ካብኽብቲ', 'ክብላ', 'ፋጅኺሪ', 'ክቢቅሪ', 'ምኪኤል ትጓ̅ኒሪ', 'ኰርኩ', 'ማርያም ትሪ', 'ያኸኒ መሳቅለሪ', 'መተሉ', 'ምኪኤል መሽወሪ', 'ተሕሳስሪ'],
+    'months_short' => ['ልደት', 'ካብኽ', 'ክብላ', 'ፋጅኺ', 'ክቢቅ', 'ም/ት', 'ኰር', 'ማርያ', 'ያኸኒ', 'መተሉ', 'ም/ም', 'ተሕሳ'],
+    'weekdays' => ['ሰንበር ቅዳዅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ ወሪ ለብዋ', 'ኣምድ', 'ኣርብ', 'ሰንበር ሽጓዅ'],
+    'weekdays_short' => ['ሰ/ቅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ', 'ኣምድ', 'ኣርብ', 'ሰ/ሽ'],
+    'weekdays_min' => ['ሰ/ቅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ', 'ኣምድ', 'ኣርብ', 'ሰ/ሽ'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ፋዱስ ጃብ', 'ፋዱስ ደምቢ'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca.php
new file mode 100644
index 0000000..5c91439
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca.php
@@ -0,0 +1,114 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - mestremuten
+ * - François B
+ * - Marc Ordinas i Llopis
+ * - Pere Orga
+ * - JD Isaacks
+ * - Quentí
+ * - Víctor Díaz
+ * - Xavi
+ * - qcardona
+ */
+return [
+    'year' => ':count any|:count anys',
+    'a_year' => 'un any|:count anys',
+    'y' => ':count any|:count anys',
+    'month' => ':count mes|:count mesos',
+    'a_month' => 'un mes|:count mesos',
+    'm' => ':count mes|:count mesos',
+    'week' => ':count setmana|:count setmanes',
+    'a_week' => 'una setmana|:count setmanes',
+    'w' => ':count setmana|:count setmanes',
+    'day' => ':count dia|:count dies',
+    'a_day' => 'un dia|:count dies',
+    'd' => ':count d',
+    'hour' => ':count hora|:count hores',
+    'a_hour' => 'una hora|:count hores',
+    'h' => ':count h',
+    'minute' => ':count minut|:count minuts',
+    'a_minute' => 'un minut|:count minuts',
+    'min' => ':count min',
+    'second' => ':count segon|:count segons',
+    'a_second' => 'uns segons|:count segons',
+    's' => ':count s',
+    'ago' => 'fa :time',
+    'from_now' => 'd\'aquí a :time',
+    'after' => ':time després',
+    'before' => ':time abans',
+    'diff_now' => 'ara mateix',
+    'diff_today' => 'avui',
+    'diff_today_regexp' => 'avui(?:\\s+a)?(?:\\s+les)?',
+    'diff_yesterday' => 'ahir',
+    'diff_yesterday_regexp' => 'ahir(?:\\s+a)?(?:\\s+les)?',
+    'diff_tomorrow' => 'demà',
+    'diff_tomorrow_regexp' => 'demà(?:\\s+a)?(?:\\s+les)?',
+    'diff_before_yesterday' => 'abans d\'ahir',
+    'diff_after_tomorrow' => 'demà passat',
+    'period_recurrences' => ':count cop|:count cops',
+    'period_interval' => 'cada :interval',
+    'period_start_date' => 'de :date',
+    'period_end_date' => 'fins a :date',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM [de] YYYY',
+        'LLL' => 'D MMMM [de] YYYY [a les] H:mm',
+        'LLLL' => 'dddd D MMMM [de] YYYY [a les] H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => function (\Carbon\CarbonInterface $current) {
+            return '[avui a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
+        },
+        'nextDay' => function (\Carbon\CarbonInterface $current) {
+            return '[demà a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
+        },
+        'nextWeek' => function (\Carbon\CarbonInterface $current) {
+            return 'dddd [a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
+        },
+        'lastDay' => function (\Carbon\CarbonInterface $current) {
+            return '[ahir a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
+        },
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            return '[el] dddd [passat a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        return $number.(
+            ($period === 'w' || $period === 'W') ? 'a' : (
+                ($number === 1) ? 'r' : (
+                    ($number === 2) ? 'n' : (
+                        ($number === 3) ? 'r' : (
+                            ($number === 4) ? 't' : 'è'
+                        )
+                    )
+                )
+            )
+        );
+    },
+    'months' => ['de gener', 'de febrer', 'de març', 'd\'abril', 'de maig', 'de juny', 'de juliol', 'd\'agost', 'de setembre', 'd\'octubre', 'de novembre', 'de desembre'],
+    'months_standalone' => ['gener', 'febrer', 'març', 'abril', 'maig', 'juny', 'juliol', 'agost', 'setembre', 'octubre', 'novembre', 'desembre'],
+    'months_short' => ['de gen.', 'de febr.', 'de març', 'd\'abr.', 'de maig', 'de juny', 'de jul.', 'd\'ag.', 'de set.', 'd\'oct.', 'de nov.', 'de des.'],
+    'months_short_standalone' => ['gen.', 'febr.', 'març', 'abr.', 'maig', 'juny', 'jul.', 'ag.', 'set.', 'oct.', 'nov.', 'des.'],
+    'months_regexp' => '/(D[oD]?[\s,]+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['diumenge', 'dilluns', 'dimarts', 'dimecres', 'dijous', 'divendres', 'dissabte'],
+    'weekdays_short' => ['dg.', 'dl.', 'dt.', 'dc.', 'dj.', 'dv.', 'ds.'],
+    'weekdays_min' => ['dg', 'dl', 'dt', 'dc', 'dj', 'dv', 'ds'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' i '],
+    'meridiem' => ['a. m.', 'p. m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_AD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_AD.php
new file mode 100644
index 0000000..f5718c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_AD.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ca.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES.php
new file mode 100644
index 0000000..8423606
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ca.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES_Valencia.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES_Valencia.php
new file mode 100644
index 0000000..f5718c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_ES_Valencia.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ca.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_FR.php
new file mode 100644
index 0000000..f5718c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_FR.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ca.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_IT.php
new file mode 100644
index 0000000..f5718c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ca_IT.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ca.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp.php
new file mode 100644
index 0000000..ec616a7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['𑄢𑄧𑄝𑄨𑄝𑄢𑄴', '𑄥𑄧𑄟𑄴𑄝𑄢𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴𑄝𑄢𑄴', '𑄝𑄪𑄖𑄴𑄝𑄢𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴𑄝𑄢𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴𑄝𑄢𑄴', '𑄥𑄧𑄚𑄨𑄝𑄢𑄴'],
+    'weekdays_short' => ['𑄢𑄧𑄝𑄨', '𑄥𑄧𑄟𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴', '𑄝𑄪𑄖𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴', '𑄥𑄧𑄚𑄨'],
+    'weekdays_min' => ['𑄢𑄧𑄝𑄨', '𑄥𑄧𑄟𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴', '𑄝𑄪𑄖𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴', '𑄥𑄧𑄚𑄨'],
+    'months' => ['𑄎𑄚𑄪𑄠𑄢𑄨', '𑄜𑄬𑄛𑄴𑄝𑄳𑄢𑄪𑄠𑄢𑄨', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄬𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄧𑄢𑄴'],
+    'months_short' => ['𑄎𑄚𑄪', '𑄜𑄬𑄛𑄴', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄮𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄢𑄴'],
+    'months_short_standalone' => ['𑄎𑄚𑄪𑄠𑄢𑄨', '𑄜𑄬𑄛𑄴𑄝𑄳𑄢𑄪𑄠𑄢𑄨', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄮𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄧𑄢𑄴'],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM, YYYY h:mm a',
+        'LLLL' => 'dddd, D MMMM, YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp_IN.php
new file mode 100644
index 0000000..18bd122
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ccp_IN.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ccp.php', [
+    'weekend' => [0, 0],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce.php
new file mode 100644
index 0000000..f99f6ff
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ce_RU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce_RU.php
new file mode 100644
index 0000000..f769856
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ce_RU.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - ANCHR
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY.DD.MM',
+    ],
+    'months' => ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
+    'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'weekdays' => ['КӀиранан де', 'Оршотан де', 'Шинарин де', 'Кхаарин де', 'Еарин де', 'ПӀераскан де', 'Шот де'],
+    'weekdays_short' => ['КӀ', 'Ор', 'Ши', 'Кх', 'Еа', 'ПӀ', 'Шо'],
+    'weekdays_min' => ['КӀ', 'Ор', 'Ши', 'Кх', 'Еа', 'ПӀ', 'Шо'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count шо',
+    'y' => ':count шо',
+    'a_year' => ':count шо',
+
+    'month' => ':count бутт',
+    'm' => ':count бутт',
+    'a_month' => ':count бутт',
+
+    'week' => ':count кӏира',
+    'w' => ':count кӏира',
+    'a_week' => ':count кӏира',
+
+    'day' => ':count де',
+    'd' => ':count де',
+    'a_day' => ':count де',
+
+    'hour' => ':count сахьт',
+    'h' => ':count сахьт',
+    'a_hour' => ':count сахьт',
+
+    'minute' => ':count минот',
+    'min' => ':count минот',
+    'a_minute' => ':count минот',
+
+    'second' => ':count секунд',
+    's' => ':count секунд',
+    'a_second' => ':count секунд',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cgg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cgg.php
new file mode 100644
index 0000000..e424408
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cgg.php
@@ -0,0 +1,30 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Sande', 'Orwokubanza', 'Orwakabiri', 'Orwakashatu', 'Orwakana', 'Orwakataano', 'Orwamukaaga'],
+    'weekdays_short' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
+    'weekdays_min' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
+    'months' => ['Okwokubanza', 'Okwakabiri', 'Okwakashatu', 'Okwakana', 'Okwakataana', 'Okwamukaaga', 'Okwamushanju', 'Okwamunaana', 'Okwamwenda', 'Okwaikumi', 'Okwaikumi na kumwe', 'Okwaikumi na ibiri'],
+    'months_short' => ['KBZ', 'KBR', 'KST', 'KKN', 'KTN', 'KMK', 'KMS', 'KMN', 'KMW', 'KKM', 'KNK', 'KNB'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'day' => ':count ruhanga', // less reliable
+    'd' => ':count ruhanga', // less reliable
+    'a_day' => ':count ruhanga', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr.php
new file mode 100644
index 0000000..e26190f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/chr_US.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr_US.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr_US.php
new file mode 100644
index 0000000..371353e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/chr_US.php
@@ -0,0 +1,58 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Cherokee Nation Joseph Erb josepherb7@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'MM/DD/YYYY',
+    ],
+    'months' => ['ᎤᏃᎸᏔᏅ', 'ᎧᎦᎵ', 'ᎠᏅᏱ', 'ᎧᏬᏂ', 'ᎠᏂᏍᎬᏘ', 'ᏕᎭᎷᏱ', 'ᎫᏰᏉᏂ', 'ᎦᎶᏂ', 'ᏚᎵᏍᏗ', 'ᏚᏂᏅᏗ', 'ᏅᏓᏕᏆ', 'ᎥᏍᎩᏱ'],
+    'months_short' => ['ᎤᏃ', 'ᎧᎦ', 'ᎠᏅ', 'ᎧᏬ', 'ᎠᏂ', 'ᏕᎭ', 'ᎫᏰ', 'ᎦᎶ', 'ᏚᎵ', 'ᏚᏂ', 'ᏅᏓ', 'ᎥᏍ'],
+    'weekdays' => ['ᎤᎾᏙᏓᏆᏍᎬ', 'ᎤᎾᏙᏓᏉᏅᎯ', 'ᏔᎵᏁᎢᎦ', 'ᏦᎢᏁᎢᎦ', 'ᏅᎩᏁᎢᎦ', 'ᏧᎾᎩᎶᏍᏗ', 'ᎤᎾᏙᏓᏈᏕᎾ'],
+    'weekdays_short' => ['ᏆᏍᎬ', 'ᏉᏅᎯ', 'ᏔᎵᏁ', 'ᏦᎢᏁ', 'ᏅᎩᏁ', 'ᏧᎾᎩ', 'ᏈᏕᎾ'],
+    'weekdays_min' => ['ᏆᏍᎬ', 'ᏉᏅᎯ', 'ᏔᎵᏁ', 'ᏦᎢᏁ', 'ᏅᎩᏁ', 'ᏧᎾᎩ', 'ᏈᏕᎾ'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ᏌᎾᎴ', 'ᏒᎯᏱᎢᏗᏢ', 'ꮜꮎꮄ', 'ꮢꭿᏹꭲꮧꮲ'],
+
+    'second' => ':count ᏐᎢ', // less reliable
+    's' => ':count ᏐᎢ', // less reliable
+    'a_second' => ':count ᏐᎢ', // less reliable
+
+    'year' => ':count ᏑᏕᏘᏴᏓ',
+    'y' => ':count ᏑᏕᏘᏴᏓ',
+    'a_year' => ':count ᏑᏕᏘᏴᏓ',
+
+    'month' => ':count ᏏᏅᏙ',
+    'm' => ':count ᏏᏅᏙ',
+    'a_month' => ':count ᏏᏅᏙ',
+
+    'week' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
+    'w' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
+    'a_week' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
+
+    'day' => ':count ᎢᎦ',
+    'd' => ':count ᎢᎦ',
+    'a_day' => ':count ᎢᎦ',
+
+    'hour' => ':count ᏑᏟᎶᏛ',
+    'h' => ':count ᏑᏟᎶᏛ',
+    'a_hour' => ':count ᏑᏟᎶᏛ',
+
+    'minute' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
+    'min' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
+    'a_minute' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
+
+    'ago' => ':time ᏥᎨᏒ',
+    'from_now' => 'ᎾᎿ :time',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn.php
new file mode 100644
index 0000000..80b1d69
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/cmn_TW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn_TW.php
new file mode 100644
index 0000000..7e43f9d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cmn_TW.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY年MM月DD號',
+    ],
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
+    'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'meridiem' => ['上午', '下午'],
+
+    'year' => ':count 年',
+    'y' => ':count 年',
+    'a_year' => ':count 年',
+
+    'month' => ':count 月',
+    'm' => ':count 月',
+    'a_month' => ':count 月',
+
+    'week' => ':count 周',
+    'w' => ':count 周',
+    'a_week' => ':count 周',
+
+    'day' => ':count 白天',
+    'd' => ':count 白天',
+    'a_day' => ':count 白天',
+
+    'hour' => ':count 小时',
+    'h' => ':count 小时',
+    'a_hour' => ':count 小时',
+
+    'minute' => ':count 分钟',
+    'min' => ':count 分钟',
+    'a_minute' => ':count 分钟',
+
+    'second' => ':count 秒',
+    's' => ':count 秒',
+    'a_second' => ':count 秒',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh.php
new file mode 100644
index 0000000..a1d7ce6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/crh_UA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh_UA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh_UA.php
new file mode 100644
index 0000000..0513933
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/crh_UA.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Reşat SABIQ tilde.birlik@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'Mayıs', 'İyun', 'İyul', 'Avgust', 'Sentâbr', 'Oktâbr', 'Noyabr', 'Dekabr'],
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['Bazar', 'Bazarertesi', 'Salı', 'Çarşembe', 'Cumaaqşamı', 'Cuma', 'Cumaertesi'],
+    'weekdays_short' => ['Baz', 'Ber', 'Sal', 'Çar', 'Caq', 'Cum', 'Cer'],
+    'weekdays_min' => ['Baz', 'Ber', 'Sal', 'Çar', 'Caq', 'Cum', 'Cer'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ÜE', 'ÜS'],
+
+    'year' => ':count yıl',
+    'y' => ':count yıl',
+    'a_year' => ':count yıl',
+
+    'month' => ':count ay',
+    'm' => ':count ay',
+    'a_month' => ':count ay',
+
+    'week' => ':count afta',
+    'w' => ':count afta',
+    'a_week' => ':count afta',
+
+    'day' => ':count kün',
+    'd' => ':count kün',
+    'a_day' => ':count kün',
+
+    'hour' => ':count saat',
+    'h' => ':count saat',
+    'a_hour' => ':count saat',
+
+    'minute' => ':count daqqa',
+    'min' => ':count daqqa',
+    'a_minute' => ':count daqqa',
+
+    'second' => ':count ekinci',
+    's' => ':count ekinci',
+    'a_second' => ':count ekinci',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs.php
new file mode 100644
index 0000000..8cff9a0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs.php
@@ -0,0 +1,122 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Jakub Tesinsky
+ * - Martin Suja
+ * - Nikos Timiopulos
+ * - Bohuslav Blín
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Lukas Svoboda
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Václav Pávek
+ * - CodeSkills
+ * - Tlapi
+ * - newman101
+ * - Petr Kadlec
+ * - tommaskraus
+ * - Karel Sommer (calvera)
+ */
+$za = function ($time) {
+    return 'za '.strtr($time, [
+        'hodina' => 'hodinu',
+        'minuta' => 'minutu',
+        'sekunda' => 'sekundu',
+    ]);
+};
+
+$pred = function ($time) {
+    $time = strtr($time, [
+        'hodina' => 'hodinou',
+        'minuta' => 'minutou',
+        'sekunda' => 'sekundou',
+    ]);
+    $time = preg_replace('/hodiny?(?!\w)/', 'hodinami', $time);
+    $time = preg_replace('/minuty?(?!\w)/', 'minutami', $time);
+    $time = preg_replace('/sekundy?(?!\w)/', 'sekundami', $time);
+
+    return "před $time";
+};
+
+return [
+    'year' => ':count rok|:count roky|:count let',
+    'y' => ':count rok|:count roky|:count let',
+    'a_year' => 'rok|:count roky|:count let',
+    'month' => ':count měsíc|:count měsíce|:count měsíců',
+    'm' => ':count měs.',
+    'a_month' => 'měsíc|:count měsíce|:count měsíců',
+    'week' => ':count týden|:count týdny|:count týdnů',
+    'w' => ':count týd.',
+    'a_week' => 'týden|:count týdny|:count týdnů',
+    'day' => ':count den|:count dny|:count dní',
+    'd' => ':count den|:count dny|:count dní',
+    'a_day' => 'den|:count dny|:count dní',
+    'hour' => ':count hodina|:count hodiny|:count hodin',
+    'h' => ':count hod.',
+    'a_hour' => 'hodina|:count hodiny|:count hodin',
+    'minute' => ':count minuta|:count minuty|:count minut',
+    'min' => ':count min.',
+    'a_minute' => 'minuta|:count minuty|:count minut',
+    'second' => ':count sekunda|:count sekundy|:count sekund',
+    's' => ':count sek.',
+    'a_second' => 'pár sekund|:count sekundy|:count sekund',
+
+    'month_ago' => ':count měsícem|:count měsíci|:count měsíci',
+    'a_month_ago' => 'měsícem|:count měsíci|:count měsíci',
+    'day_ago' => ':count dnem|:count dny|:count dny',
+    'a_day_ago' => 'dnem|:count dny|:count dny',
+    'week_ago' => ':count týdnem|:count týdny|:count týdny',
+    'a_week_ago' => 'týdnem|:count týdny|:count týdny',
+    'year_ago' => ':count rokem|:count roky|:count lety',
+    'y_ago' => ':count rok.|:count rok.|:count let.',
+    'a_year_ago' => 'rokem|:count roky|:count lety',
+
+    'month_before' => ':count měsícem|:count měsíci|:count měsíci',
+    'a_month_before' => 'měsícem|:count měsíci|:count měsíci',
+    'day_before' => ':count dnem|:count dny|:count dny',
+    'a_day_before' => 'dnem|:count dny|:count dny',
+    'week_before' => ':count týdnem|:count týdny|:count týdny',
+    'a_week_before' => 'týdnem|:count týdny|:count týdny',
+    'year_before' => ':count rokem|:count roky|:count lety',
+    'y_before' => ':count rok.|:count rok.|:count let.',
+    'a_year_before' => 'rokem|:count roky|:count lety',
+
+    'ago' => $pred,
+    'from_now' => $za,
+    'before' => $pred,
+    'after' => $za,
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'months' => ['leden', 'únor', 'březen', 'duben', 'květen', 'červen', 'červenec', 'srpen', 'září', 'říjen', 'listopad', 'prosinec'],
+    'months_short' => ['led', 'úno', 'bře', 'dub', 'kvě', 'čvn', 'čvc', 'srp', 'zář', 'říj', 'lis', 'pro'],
+    'weekdays' => ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],
+    'weekdays_short' => ['ned', 'pon', 'úte', 'stř', 'čtv', 'pát', 'sob'],
+    'weekdays_min' => ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
+    'list' => [', ', ' a '],
+    'diff_now' => 'nyní',
+    'diff_yesterday' => 'včera',
+    'diff_tomorrow' => 'zítra',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD. MM. YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D. MMMM YYYY HH:mm',
+    ],
+    'meridiem' => ['dopoledne', 'odpoledne'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs_CZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs_CZ.php
new file mode 100644
index 0000000..a16a346
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cs_CZ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/cs.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb.php
new file mode 100644
index 0000000..a35d281
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/csb_PL.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb_PL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb_PL.php
new file mode 100644
index 0000000..25e0ca8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/csb_PL.php
@@ -0,0 +1,41 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - csb_PL locale Michal Ostrowski bug-glibc-locales@gnu.org
+ */
+return [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'MMMM DD, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'months' => ['stëcznika', 'gromicznika', 'strëmiannika', 'łżëkwiata', 'maja', 'czerwińca', 'lëpińca', 'zélnika', 'séwnika', 'rujana', 'lëstopadnika', 'gòdnika'],
+    'months_short' => ['stë', 'gro', 'str', 'łżë', 'maj', 'cze', 'lëp', 'zél', 'séw', 'ruj', 'lës', 'gòd'],
+    'weekdays' => ['niedzela', 'pòniedzôłk', 'wtórk', 'strzoda', 'czwiôrtk', 'piątk', 'sobòta'],
+    'weekdays_short' => ['nie', 'pòn', 'wtó', 'str', 'czw', 'pią', 'sob'],
+    'weekdays_min' => ['nie', 'pòn', 'wtó', 'str', 'czw', 'pią', 'sob'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' a téż '],
+    'two_words_connector' => ' a téż ',
+    'year' => ':count rok',
+    'month' => ':count miesiąc',
+    'week' => ':count tidzéń',
+    'day' => ':count dzéń',
+    'hour' => ':count gòdzëna',
+    'minute' => ':count minuta',
+    'second' => ':count sekunda',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cu.php
new file mode 100644
index 0000000..02c983a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cu.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+
+    'year' => ':count лѣто',
+    'y' => ':count лѣто',
+    'a_year' => ':count лѣто',
+
+    'month' => ':count мѣсѧць',
+    'm' => ':count мѣсѧць',
+    'a_month' => ':count мѣсѧць',
+
+    'week' => ':count сєдмица',
+    'w' => ':count сєдмица',
+    'a_week' => ':count сєдмица',
+
+    'day' => ':count дьнь',
+    'd' => ':count дьнь',
+    'a_day' => ':count дьнь',
+
+    'hour' => ':count година',
+    'h' => ':count година',
+    'a_hour' => ':count година',
+
+    'minute' => ':count малъ', // less reliable
+    'min' => ':count малъ', // less reliable
+    'a_minute' => ':count малъ', // less reliable
+
+    'second' => ':count въторъ',
+    's' => ':count въторъ',
+    'a_second' => ':count въторъ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv.php
new file mode 100644
index 0000000..cec1fc9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count ҫул',
+    'a_year' => '{1}пӗр ҫул|:count ҫул',
+    'month' => ':count уйӑх',
+    'a_month' => '{1}пӗр уйӑх|:count уйӑх',
+    'week' => ':count эрне',
+    'a_week' => '{1}пӗр эрне|:count эрне',
+    'day' => ':count кун',
+    'a_day' => '{1}пӗр кун|:count кун',
+    'hour' => ':count сехет',
+    'a_hour' => '{1}пӗр сехет|:count сехет',
+    'minute' => ':count минут',
+    'a_minute' => '{1}пӗр минут|:count минут',
+    'second' => ':count ҫеккунт',
+    'a_second' => '{1}пӗр-ик ҫеккунт|:count ҫеккунт',
+    'ago' => ':time каялла',
+    'from_now' => function ($time) {
+        return $time.(preg_match('/сехет$/', $time) ? 'рен' : (preg_match('/ҫул/', $time) ? 'тан' : 'ран'));
+    },
+    'diff_yesterday' => 'Ӗнер',
+    'diff_today' => 'Паян',
+    'diff_tomorrow' => 'Ыран',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',
+        'LLL' => 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
+        'LLLL' => 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Паян] LT [сехетре]',
+        'nextDay' => '[Ыран] LT [сехетре]',
+        'nextWeek' => '[Ҫитес] dddd LT [сехетре]',
+        'lastDay' => '[Ӗнер] LT [сехетре]',
+        'lastWeek' => '[Иртнӗ] dddd LT [сехетре]',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number-мӗш',
+    'months' => ['кӑрлач', 'нарӑс', 'пуш', 'ака', 'май', 'ҫӗртме', 'утӑ', 'ҫурла', 'авӑн', 'юпа', 'чӳк', 'раштав'],
+    'months_short' => ['кӑр', 'нар', 'пуш', 'ака', 'май', 'ҫӗр', 'утӑ', 'ҫур', 'авн', 'юпа', 'чӳк', 'раш'],
+    'weekdays' => ['вырсарникун', 'тунтикун', 'ытларикун', 'юнкун', 'кӗҫнерникун', 'эрнекун', 'шӑматкун'],
+    'weekdays_short' => ['выр', 'тун', 'ытл', 'юн', 'кӗҫ', 'эрн', 'шӑм'],
+    'weekdays_min' => ['вр', 'тн', 'ыт', 'юн', 'кҫ', 'эр', 'шм'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' тата '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv_RU.php
new file mode 100644
index 0000000..ddff893
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cv_RU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/cv.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy.php
new file mode 100644
index 0000000..ab7c45a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy.php
@@ -0,0 +1,79 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - JD Isaacks
+ * - Daniel Monaghan
+ */
+return [
+    'year' => '{1}blwyddyn|]1,Inf[:count flynedd',
+    'y' => ':countbl',
+    'month' => '{1}mis|]1,Inf[:count mis',
+    'm' => ':countmi',
+    'week' => ':count wythnos',
+    'w' => ':countw',
+    'day' => '{1}diwrnod|]1,Inf[:count diwrnod',
+    'd' => ':countd',
+    'hour' => '{1}awr|]1,Inf[:count awr',
+    'h' => ':counth',
+    'minute' => '{1}munud|]1,Inf[:count munud',
+    'min' => ':countm',
+    'second' => '{1}ychydig eiliadau|]1,Inf[:count eiliad',
+    's' => ':counts',
+    'ago' => ':time yn ôl',
+    'from_now' => 'mewn :time',
+    'after' => ':time ar ôl',
+    'before' => ':time o\'r blaen',
+    'diff_now' => 'nawr',
+    'diff_today' => 'Heddiw',
+    'diff_today_regexp' => 'Heddiw(?:\\s+am)?',
+    'diff_yesterday' => 'ddoe',
+    'diff_yesterday_regexp' => 'Ddoe(?:\\s+am)?',
+    'diff_tomorrow' => 'yfory',
+    'diff_tomorrow_regexp' => 'Yfory(?:\\s+am)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Heddiw am] LT',
+        'nextDay' => '[Yfory am] LT',
+        'nextWeek' => 'dddd [am] LT',
+        'lastDay' => '[Ddoe am] LT',
+        'lastWeek' => 'dddd [diwethaf am] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.(
+            $number > 20
+                ? (\in_array($number, [40, 50, 60, 80, 100]) ? 'fed' : 'ain')
+                : ([
+                    '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed
+                    'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed', // 11eg to 20fed
+                ])[$number] ?? ''
+        );
+    },
+    'months' => ['Ionawr', 'Chwefror', 'Mawrth', 'Ebrill', 'Mai', 'Mehefin', 'Gorffennaf', 'Awst', 'Medi', 'Hydref', 'Tachwedd', 'Rhagfyr'],
+    'months_short' => ['Ion', 'Chwe', 'Maw', 'Ebr', 'Mai', 'Meh', 'Gor', 'Aws', 'Med', 'Hyd', 'Tach', 'Rhag'],
+    'weekdays' => ['Dydd Sul', 'Dydd Llun', 'Dydd Mawrth', 'Dydd Mercher', 'Dydd Iau', 'Dydd Gwener', 'Dydd Sadwrn'],
+    'weekdays_short' => ['Sul', 'Llun', 'Maw', 'Mer', 'Iau', 'Gwe', 'Sad'],
+    'weekdays_min' => ['Su', 'Ll', 'Ma', 'Me', 'Ia', 'Gw', 'Sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' a '],
+    'meridiem' => ['yb', 'yh'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy_GB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy_GB.php
new file mode 100644
index 0000000..541127c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/cy_GB.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/cy.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da.php
new file mode 100644
index 0000000..4e6640a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da.php
@@ -0,0 +1,80 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Rune Mønnike
+ * - François B
+ * - codenhagen
+ * - JD Isaacks
+ * - Jens Herlevsen
+ * - Ulrik McArdle (mcardle)
+ * - Frederik Sauer (FrittenKeeZ)
+ */
+return [
+    'year' => ':count år|:count år',
+    'a_year' => 'et år|:count år',
+    'y' => ':count år|:count år',
+    'month' => ':count måned|:count måneder',
+    'a_month' => 'en måned|:count måneder',
+    'm' => ':count mdr.',
+    'week' => ':count uge|:count uger',
+    'a_week' => 'en uge|:count uger',
+    'w' => ':count u.',
+    'day' => ':count dag|:count dage',
+    'a_day' => ':count dag|:count dage',
+    'd' => ':count d.',
+    'hour' => ':count time|:count timer',
+    'a_hour' => 'en time|:count timer',
+    'h' => ':count t.',
+    'minute' => ':count minut|:count minutter',
+    'a_minute' => 'et minut|:count minutter',
+    'min' => ':count min.',
+    'second' => ':count sekund|:count sekunder',
+    'a_second' => 'få sekunder|:count sekunder',
+    's' => ':count s.',
+    'ago' => ':time siden',
+    'from_now' => 'om :time',
+    'after' => ':time efter',
+    'before' => ':time før',
+    'diff_now' => 'nu',
+    'diff_today' => 'i dag',
+    'diff_today_regexp' => 'i dag(?:\\s+kl.)?',
+    'diff_yesterday' => 'i går',
+    'diff_yesterday_regexp' => 'i går(?:\\s+kl.)?',
+    'diff_tomorrow' => 'i morgen',
+    'diff_tomorrow_regexp' => 'i morgen(?:\\s+kl.)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[i dag kl.] LT',
+        'nextDay' => '[i morgen kl.] LT',
+        'nextWeek' => 'på dddd [kl.] LT',
+        'lastDay' => '[i går kl.] LT',
+        'lastWeek' => '[i] dddd[s kl.] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['januar', 'februar', 'marts', 'april', 'maj', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],
+    'weekdays_short' => ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
+    'weekdays_min' => ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' og '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_DK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_DK.php
new file mode 100644
index 0000000..b3bac1a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_DK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/da.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_GL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_GL.php
new file mode 100644
index 0000000..b2ba81f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/da_GL.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/da.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D. MMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH.mm',
+        'LLLL' => 'dddd [den] D. MMMM YYYY HH.mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dav.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dav.php
new file mode 100644
index 0000000..79f021e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dav.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Luma lwa K', 'luma lwa p'],
+    'weekdays' => ['Ituku ja jumwa', 'Kuramuka jimweri', 'Kuramuka kawi', 'Kuramuka kadadu', 'Kuramuka kana', 'Kuramuka kasanu', 'Kifula nguwo'],
+    'weekdays_short' => ['Jum', 'Jim', 'Kaw', 'Kad', 'Kan', 'Kas', 'Ngu'],
+    'weekdays_min' => ['Jum', 'Jim', 'Kaw', 'Kad', 'Kan', 'Kas', 'Ngu'],
+    'months' => ['Mori ghwa imbiri', 'Mori ghwa kawi', 'Mori ghwa kadadu', 'Mori ghwa kana', 'Mori ghwa kasanu', 'Mori ghwa karandadu', 'Mori ghwa mfungade', 'Mori ghwa wunyanya', 'Mori ghwa ikenda', 'Mori ghwa ikumi', 'Mori ghwa ikumi na imweri', 'Mori ghwa ikumi na iwi'],
+    'months_short' => ['Imb', 'Kaw', 'Kad', 'Kan', 'Kas', 'Kar', 'Mfu', 'Wun', 'Ike', 'Iku', 'Imw', 'Iwi'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de.php
new file mode 100644
index 0000000..ff00c97
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de.php
@@ -0,0 +1,108 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Michael Hohl
+ * - sheriffmarley
+ * - dennisoderwald
+ * - Timo
+ * - Karag2006
+ * - Pete Scopes (pdscopes)
+ */
+return [
+    'year' => ':count Jahr|:count Jahre',
+    'a_year' => 'ein Jahr|:count Jahre',
+    'y' => ':count J.',
+    'month' => ':count Monat|:count Monate',
+    'a_month' => 'ein Monat|:count Monate',
+    'm' => ':count Mon.',
+    'week' => ':count Woche|:count Wochen',
+    'a_week' => 'eine Woche|:count Wochen',
+    'w' => ':count Wo.',
+    'day' => ':count Tag|:count Tage',
+    'a_day' => 'ein Tag|:count Tage',
+    'd' => ':count Tg.',
+    'hour' => ':count Stunde|:count Stunden',
+    'a_hour' => 'eine Stunde|:count Stunden',
+    'h' => ':count Std.',
+    'minute' => ':count Minute|:count Minuten',
+    'a_minute' => 'eine Minute|:count Minuten',
+    'min' => ':count Min.',
+    'second' => ':count Sekunde|:count Sekunden',
+    'a_second' => 'ein paar Sekunden|:count Sekunden',
+    's' => ':count Sek.',
+    'millisecond' => ':count Millisekunde|:count Millisekunden',
+    'a_millisecond' => 'eine Millisekunde|:count Millisekunden',
+    'ms' => ':countms',
+    'microsecond' => ':count Mikrosekunde|:count Mikrosekunden',
+    'a_microsecond' => 'eine Mikrosekunde|:count Mikrosekunden',
+    'µs' => ':countµs',
+    'ago' => 'vor :time',
+    'from_now' => 'in :time',
+    'after' => ':time später',
+    'before' => ':time zuvor',
+
+    'year_from_now' => ':count Jahr|:count Jahren',
+    'month_from_now' => ':count Monat|:count Monaten',
+    'week_from_now' => ':count Woche|:count Wochen',
+    'day_from_now' => ':count Tag|:count Tagen',
+    'year_ago' => ':count Jahr|:count Jahren',
+    'month_ago' => ':count Monat|:count Monaten',
+    'week_ago' => ':count Woche|:count Wochen',
+    'day_ago' => ':count Tag|:count Tagen',
+    'a_year_from_now' => 'ein Jahr|:count Jahren',
+    'a_month_from_now' => 'ein Monat|:count Monaten',
+    'a_week_from_now' => 'eine Woche|:count Wochen',
+    'a_day_from_now' => 'ein Tag|:count Tagen',
+    'a_year_ago' => 'ein Jahr|:count Jahren',
+    'a_month_ago' => 'ein Monat|:count Monaten',
+    'a_week_ago' => 'eine Woche|:count Wochen',
+    'a_day_ago' => 'ein Tag|:count Tagen',
+
+    'diff_now' => 'Gerade eben',
+    'diff_today' => 'heute',
+    'diff_today_regexp' => 'heute(?:\\s+um)?',
+    'diff_yesterday' => 'Gestern',
+    'diff_yesterday_regexp' => 'gestern(?:\\s+um)?',
+    'diff_tomorrow' => 'Morgen',
+    'diff_tomorrow_regexp' => 'morgen(?:\\s+um)?',
+    'diff_before_yesterday' => 'Vorgestern',
+    'diff_after_tomorrow' => 'Übermorgen',
+
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY HH:mm',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[heute um] LT [Uhr]',
+        'nextDay' => '[morgen um] LT [Uhr]',
+        'nextWeek' => 'dddd [um] LT [Uhr]',
+        'lastDay' => '[gestern um] LT [Uhr]',
+        'lastWeek' => '[letzten] dddd [um] LT [Uhr]',
+        'sameElse' => 'L',
+    ],
+
+    'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
+    'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
+    'weekdays' => ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
+    'weekdays_short' => ['So.', 'Mo.', 'Di.', 'Mi.', 'Do.', 'Fr.', 'Sa.'],
+    'weekdays_min' => ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
+    'ordinal' => ':number.',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' und '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_AT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_AT.php
new file mode 100644
index 0000000..a2ea4c0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_AT.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - sheriffmarley
+ * - Timo
+ * - Michael Hohl
+ * - Namoshek
+ * - Bernhard Baumrock (BernhardBaumrock)
+ */
+return array_replace_recursive(require __DIR__.'/de.php', [
+    'months' => [
+        0 => 'Jänner',
+    ],
+    'months_short' => [
+        0 => 'Jän',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_BE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_BE.php
new file mode 100644
index 0000000..8ed8dc6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_BE.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/de.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_CH.php
new file mode 100644
index 0000000..a869ab4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_CH.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - sheriffmarley
+ * - Timo
+ * - Michael Hohl
+ */
+return array_replace_recursive(require __DIR__.'/de.php', [
+    'weekdays_short' => ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_DE.php
new file mode 100644
index 0000000..fb1209d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_DE.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return require __DIR__.'/de.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_IT.php
new file mode 100644
index 0000000..604a856
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_IT.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Matthias Dieter Wallno:fer libc-locales@sourceware.org
+ */
+return require __DIR__.'/de.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LI.php
new file mode 100644
index 0000000..82edfa1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/de.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LU.php
new file mode 100644
index 0000000..8ed8dc6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/de_LU.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/de.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dje.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dje.php
new file mode 100644
index 0000000..08ddbf1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dje.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Subbaahi', 'Zaarikay b'],
+    'weekdays' => ['Alhadi', 'Atinni', 'Atalaata', 'Alarba', 'Alhamisi', 'Alzuma', 'Asibti'],
+    'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
+    'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
+    'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
+    'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count hari', // less reliable
+    'y' => ':count hari', // less reliable
+    'a_year' => ':count hari', // less reliable
+
+    'week' => ':count alzuma', // less reliable
+    'w' => ':count alzuma', // less reliable
+    'a_week' => ':count alzuma', // less reliable
+
+    'second' => ':count atinni', // less reliable
+    's' => ':count atinni', // less reliable
+    'a_second' => ':count atinni', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi.php
new file mode 100644
index 0000000..cb679c5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/doi_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi_IN.php
new file mode 100644
index 0000000..d359721
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/doi_IN.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat Pune    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'एप्रैल', 'मेई', 'जून', 'जूलै', 'अगस्त', 'सितंबर', 'अक्तूबर', 'नवंबर', 'दिसंबर'],
+    'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'एप्रैल', 'मेई', 'जून', 'जूलै', 'अगस्त', 'सितंबर', 'अक्तूबर', 'नवंबर', 'दिसंबर'],
+    'weekdays' => ['ऐतबार', 'सोमबार', 'मंगलबर', 'बुधबार', 'बीरबार', 'शुक्करबार', 'श्नीचरबार'],
+    'weekdays_short' => ['ऐत', 'सोम', 'मंगल', 'बुध', 'बीर', 'शुक्कर', 'श्नीचर'],
+    'weekdays_min' => ['ऐत', 'सोम', 'मंगल', 'बुध', 'बीर', 'शुक्कर', 'श्नीचर'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['सञं', 'सबेर'],
+
+    'second' => ':count सङार', // less reliable
+    's' => ':count सङार', // less reliable
+    'a_second' => ':count सङार', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb.php
new file mode 100644
index 0000000..1d214d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/dsb_DE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb_DE.php
new file mode 100644
index 0000000..1b94187
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dsb_DE.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Information from Michael Wolf    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'DD. MMMM YYYY',
+        'LLL' => 'DD. MMMM, HH:mm [góź.]',
+        'LLLL' => 'dddd, DD. MMMM YYYY, HH:mm [góź.]',
+    ],
+    'months' => ['januara', 'februara', 'měrca', 'apryla', 'maja', 'junija', 'julija', 'awgusta', 'septembra', 'oktobra', 'nowembra', 'decembra'],
+    'months_short' => ['Jan', 'Feb', 'Měr', 'Apr', 'Maj', 'Jun', 'Jul', 'Awg', 'Sep', 'Okt', 'Now', 'Dec'],
+    'weekdays' => ['Njeźela', 'Pónjeźele', 'Wałtora', 'Srjoda', 'Stwórtk', 'Pětk', 'Sobota'],
+    'weekdays_short' => ['Nj', 'Pó', 'Wa', 'Sr', 'St', 'Pě', 'So'],
+    'weekdays_min' => ['Nj', 'Pó', 'Wa', 'Sr', 'St', 'Pě', 'So'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count lěto',
+    'y' => ':count lěto',
+    'a_year' => ':count lěto',
+
+    'month' => ':count mjasec',
+    'm' => ':count mjasec',
+    'a_month' => ':count mjasec',
+
+    'week' => ':count tyźeń',
+    'w' => ':count tyźeń',
+    'a_week' => ':count tyźeń',
+
+    'day' => ':count źeń',
+    'd' => ':count źeń',
+    'a_day' => ':count źeń',
+
+    'hour' => ':count góźina',
+    'h' => ':count góźina',
+    'a_hour' => ':count góźina',
+
+    'minute' => ':count minuta',
+    'min' => ':count minuta',
+    'a_minute' => ':count minuta',
+
+    'second' => ':count drugi',
+    's' => ':count drugi',
+    'a_second' => ':count drugi',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dua.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dua.php
new file mode 100644
index 0000000..65d712f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dua.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['idiɓa', 'ebyámu'],
+    'weekdays' => ['éti', 'mɔ́sú', 'kwasú', 'mukɔ́sú', 'ŋgisú', 'ɗónɛsú', 'esaɓasú'],
+    'weekdays_short' => ['ét', 'mɔ́s', 'kwa', 'muk', 'ŋgi', 'ɗón', 'esa'],
+    'weekdays_min' => ['ét', 'mɔ́s', 'kwa', 'muk', 'ŋgi', 'ɗón', 'esa'],
+    'months' => ['dimɔ́di', 'ŋgɔndɛ', 'sɔŋɛ', 'diɓáɓá', 'emiasele', 'esɔpɛsɔpɛ', 'madiɓɛ́díɓɛ́', 'diŋgindi', 'nyɛtɛki', 'mayésɛ́', 'tiníní', 'eláŋgɛ́'],
+    'months_short' => ['di', 'ŋgɔn', 'sɔŋ', 'diɓ', 'emi', 'esɔ', 'mad', 'diŋ', 'nyɛt', 'may', 'tin', 'elá'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count ma mbu', // less reliable
+    'y' => ':count ma mbu', // less reliable
+    'a_year' => ':count ma mbu', // less reliable
+
+    'month' => ':count myo̱di', // less reliable
+    'm' => ':count myo̱di', // less reliable
+    'a_month' => ':count myo̱di', // less reliable
+
+    'week' => ':count woki', // less reliable
+    'w' => ':count woki', // less reliable
+    'a_week' => ':count woki', // less reliable
+
+    'day' => ':count buńa', // less reliable
+    'd' => ':count buńa', // less reliable
+    'a_day' => ':count buńa', // less reliable
+
+    'hour' => ':count ma awa', // less reliable
+    'h' => ':count ma awa', // less reliable
+    'a_hour' => ':count ma awa', // less reliable
+
+    'minute' => ':count minuti', // less reliable
+    'min' => ':count minuti', // less reliable
+    'a_minute' => ':count minuti', // less reliable
+
+    'second' => ':count maba', // less reliable
+    's' => ':count maba', // less reliable
+    'a_second' => ':count maba', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv.php
new file mode 100644
index 0000000..a2b60df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv.php
@@ -0,0 +1,88 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+$months = [
+    'ޖެނުއަރީ',
+    'ފެބްރުއަރީ',
+    'މާރިޗު',
+    'އޭޕްރީލު',
+    'މޭ',
+    'ޖޫން',
+    'ޖުލައި',
+    'އޯގަސްޓު',
+    'ސެޕްޓެމްބަރު',
+    'އޮކްޓޯބަރު',
+    'ނޮވެމްބަރު',
+    'ޑިސެމްބަރު',
+];
+
+$weekdays = [
+    'އާދިއްތަ',
+    'ހޯމަ',
+    'އަންގާރަ',
+    'ބުދަ',
+    'ބުރާސްފަތި',
+    'ހުކުރު',
+    'ހޮނިހިރު',
+];
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Jawish Hameed
+ */
+return [
+    'year' => ':count '.'އަހަރު',
+    'a_year' => '{1}'.'އަހަރެއް'.'|:count '.'އަހަރު',
+    'month' => ':count '.'މަސް',
+    'a_month' => '{1}'.'މަހެއް'.'|:count '.'މަސް',
+    'week' => ':count '.'ހަފްތާ',
+    'a_week' => '{1}'.'ސިކުންތުކޮޅެއް'.'|:count '.'ހަފްތާ',
+    'day' => ':count '.'ދުވަސް',
+    'a_day' => '{1}'.'ދުވަހެއް'.'|:count '.'ދުވަސް',
+    'hour' => ':count '.'ގަޑިއިރު',
+    'a_hour' => '{1}'.'ގަޑިއިރެއް'.'|:count '.'ގަޑިއިރު',
+    'minute' => ':count '.'މިނިޓު',
+    'a_minute' => '{1}'.'މިނިޓެއް'.'|:count '.'މިނިޓު',
+    'second' => ':count '.'ސިކުންތު',
+    'a_second' => '{1}'.'ސިކުންތުކޮޅެއް'.'|:count '.'ސިކުންތު',
+    'ago' => 'ކުރިން :time',
+    'from_now' => 'ތެރޭގައި :time',
+    'after' => ':time ފަހުން',
+    'before' => ':time ކުރި',
+    'diff_yesterday' => 'އިއްޔެ',
+    'diff_today' => 'މިއަދު',
+    'diff_tomorrow' => 'މާދަމާ',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[މިއަދު] LT',
+        'nextDay' => '[މާދަމާ] LT',
+        'nextWeek' => 'dddd LT',
+        'lastDay' => '[އިއްޔެ] LT',
+        'lastWeek' => '[ފާއިތުވި] dddd LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['މކ', 'މފ'],
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => $weekdays,
+    'weekdays_short' => $weekdays,
+    'weekdays_min' => ['އާދި', 'ހޯމަ', 'އަން', 'ބުދަ', 'ބުރާ', 'ހުކު', 'ހޮނި'],
+    'list' => [', ', ' އަދި '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv_MV.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv_MV.php
new file mode 100644
index 0000000..208fb5a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dv_MV.php
@@ -0,0 +1,87 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Ahmed Ali <ajaaibu@gmail.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ahmed Ali
+ */
+
+$months = [
+    'ޖެނުއަރީ',
+    'ފެބްރުއަރީ',
+    'މާރިޗު',
+    'އޭޕްރީލު',
+    'މޭ',
+    'ޖޫން',
+    'ޖުލައި',
+    'އޯގަސްޓު',
+    'ސެޕްޓެމްބަރު',
+    'އޮކްޓޯބަރު',
+    'ނޮވެމްބަރު',
+    'ޑިސެމްބަރު',
+];
+
+$weekdays = [
+    'އާދިއްތަ',
+    'ހޯމަ',
+    'އަންގާރަ',
+    'ބުދަ',
+    'ބުރާސްފަތި',
+    'ހުކުރު',
+    'ހޮނިހިރު',
+];
+
+return [
+    'year' => '{0}އަހަރެއް|[1,Inf]:count އަހަރު',
+    'y' => '{0}އަހަރެއް|[1,Inf]:count އަހަރު',
+    'month' => '{0}މައްސަރެއް|[1,Inf]:count މަސް',
+    'm' => '{0}މައްސަރެއް|[1,Inf]:count މަސް',
+    'week' => '{0}ހަފްތާއެއް|[1,Inf]:count ހަފްތާ',
+    'w' => '{0}ހަފްތާއެއް|[1,Inf]:count ހަފްތާ',
+    'day' => '{0}ދުވަސް|[1,Inf]:count ދުވަސް',
+    'd' => '{0}ދުވަސް|[1,Inf]:count ދުވަސް',
+    'hour' => '{0}ގަޑިއިރެއް|[1,Inf]:count ގަޑި',
+    'h' => '{0}ގަޑިއިރެއް|[1,Inf]:count ގަޑި',
+    'minute' => '{0}މިނެޓެއް|[1,Inf]:count މިނެޓް',
+    'min' => '{0}މިނެޓެއް|[1,Inf]:count މިނެޓް',
+    'second' => '{0}ސިކުންތެއް|[1,Inf]:count ސިކުންތު',
+    's' => '{0}ސިކުންތެއް|[1,Inf]:count ސިކުންތު',
+    'ago' => ':time ކުރިން',
+    'from_now' => ':time ފަހުން',
+    'after' => ':time ފަހުން',
+    'before' => ':time ކުރި',
+    'diff_yesterday' => 'އިއްޔެ',
+    'diff_today' => 'މިއަދު',
+    'diff_tomorrow' => 'މާދަމާ',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[މިއަދު] LT',
+        'nextDay' => '[މާދަމާ] LT',
+        'nextWeek' => 'dddd LT',
+        'lastDay' => '[އިއްޔެ] LT',
+        'lastWeek' => '[ފާއިތުވި] dddd LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['މކ', 'މފ'],
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => $weekdays,
+    'weekdays_short' => $weekdays,
+    'weekdays_min' => ['އާދި', 'ހޯމަ', 'އަން', 'ބުދަ', 'ބުރާ', 'ހުކު', 'ހޮނި'],
+    'list' => [', ', ' އަދި '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dyo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dyo.php
new file mode 100644
index 0000000..ecb649b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dyo.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Dimas', 'Teneŋ', 'Talata', 'Alarbay', 'Aramisay', 'Arjuma', 'Sibiti'],
+    'weekdays_short' => ['Dim', 'Ten', 'Tal', 'Ala', 'Ara', 'Arj', 'Sib'],
+    'weekdays_min' => ['Dim', 'Ten', 'Tal', 'Ala', 'Ara', 'Arj', 'Sib'],
+    'months' => ['Sanvie', 'Fébirie', 'Mars', 'Aburil', 'Mee', 'Sueŋ', 'Súuyee', 'Ut', 'Settembar', 'Oktobar', 'Novembar', 'Disambar'],
+    'months_short' => ['Sa', 'Fe', 'Ma', 'Ab', 'Me', 'Su', 'Sú', 'Ut', 'Se', 'Ok', 'No', 'De'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz.php
new file mode 100644
index 0000000..cc17e69
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/dz_BT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz_BT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz_BT.php
new file mode 100644
index 0000000..bfbcaf4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/dz_BT.php
@@ -0,0 +1,43 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sherubtse College    bug-glibc@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'པསྱི་ལོYYཟལMMཚེསDD',
+    ],
+    'months' => ['ཟླ་བ་དང་པ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་ཕ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུནཔ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
+    'months_short' => ['ཟླ་༡', 'ཟླ་༢', 'ཟླ་༣', 'ཟླ་༤', 'ཟླ་༥', 'ཟླ་༦', 'ཟླ་༧', 'ཟླ་༨', 'ཟླ་༩', 'ཟླ་༡༠', 'ཟླ་༡༡', 'ཟླ་༡༢'],
+    'weekdays' => ['གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་ཕ་', 'གཟའ་པུར་བུ་', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་ཕ་', 'གཟའ་ཉི་མ་'],
+    'weekdays_short' => ['ཟླ་', 'མིར་', 'ལྷག་', 'པུར་', 'སངས་', 'སྤེན་', 'ཉི་'],
+    'weekdays_min' => ['ཟླ་', 'མིར་', 'ལྷག་', 'པུར་', 'སངས་', 'སྤེན་', 'ཉི་'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ངས་ཆ', 'ཕྱི་ཆ'],
+
+    'year' => ':count ཆརཔ', // less reliable
+    'y' => ':count ཆརཔ', // less reliable
+    'a_year' => ':count ཆརཔ', // less reliable
+
+    'month' => ':count ཟླ་བ', // less reliable
+    'm' => ':count ཟླ་བ', // less reliable
+    'a_month' => ':count ཟླ་བ', // less reliable
+
+    'day' => ':count ཉི', // less reliable
+    'd' => ':count ཉི', // less reliable
+    'a_day' => ':count ཉི', // less reliable
+
+    'second' => ':count ཆ', // less reliable
+    's' => ':count ཆ', // less reliable
+    'a_second' => ':count ཆ', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ebu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ebu.php
new file mode 100644
index 0000000..5aab48d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ebu.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['KI', 'UT'],
+    'weekdays' => ['Kiumia', 'Njumatatu', 'Njumaine', 'Njumatano', 'Aramithi', 'Njumaa', 'NJumamothii'],
+    'weekdays_short' => ['Kma', 'Tat', 'Ine', 'Tan', 'Arm', 'Maa', 'NMM'],
+    'weekdays_min' => ['Kma', 'Tat', 'Ine', 'Tan', 'Arm', 'Maa', 'NMM'],
+    'months' => ['Mweri wa mbere', 'Mweri wa kaĩri', 'Mweri wa kathatũ', 'Mweri wa kana', 'Mweri wa gatano', 'Mweri wa gatantatũ', 'Mweri wa mũgwanja', 'Mweri wa kanana', 'Mweri wa kenda', 'Mweri wa ikũmi', 'Mweri wa ikũmi na ũmwe', 'Mweri wa ikũmi na Kaĩrĩ'],
+    'months_short' => ['Mbe', 'Kai', 'Kat', 'Kan', 'Gat', 'Gan', 'Mug', 'Knn', 'Ken', 'Iku', 'Imw', 'Igi'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee.php
new file mode 100644
index 0000000..2fd9dcd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ŋ', 'ɣ'],
+    'weekdays' => ['kɔsiɖa', 'dzoɖa', 'blaɖa', 'kuɖa', 'yawoɖa', 'fiɖa', 'memleɖa'],
+    'weekdays_short' => ['kɔs', 'dzo', 'bla', 'kuɖ', 'yaw', 'fiɖ', 'mem'],
+    'weekdays_min' => ['kɔs', 'dzo', 'bla', 'kuɖ', 'yaw', 'fiɖ', 'mem'],
+    'months' => ['dzove', 'dzodze', 'tedoxe', 'afɔfĩe', 'dama', 'masa', 'siamlɔm', 'deasiamime', 'anyɔnyɔ', 'kele', 'adeɛmekpɔxe', 'dzome'],
+    'months_short' => ['dzv', 'dzd', 'ted', 'afɔ', 'dam', 'mas', 'sia', 'dea', 'any', 'kel', 'ade', 'dzm'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'a [ga] h:mm',
+        'LTS' => 'a [ga] h:mm:ss',
+        'L' => 'M/D/YYYY',
+        'LL' => 'MMM D [lia], YYYY',
+        'LLL' => 'a [ga] h:mm MMMM D [lia] YYYY',
+        'LLLL' => 'a [ga] h:mm dddd, MMMM D [lia] YYYY',
+    ],
+
+    'year' => 'ƒe :count',
+    'y' => 'ƒe :count',
+    'a_year' => 'ƒe :count',
+
+    'month' => 'ɣleti :count',
+    'm' => 'ɣleti :count',
+    'a_month' => 'ɣleti :count',
+
+    'week' => 'kwasiɖa :count',
+    'w' => 'kwasiɖa :count',
+    'a_week' => 'kwasiɖa :count',
+
+    'day' => 'ŋkeke :count',
+    'd' => 'ŋkeke :count',
+    'a_day' => 'ŋkeke :count',
+
+    'hour' => 'gaƒoƒo :count',
+    'h' => 'gaƒoƒo :count',
+    'a_hour' => 'gaƒoƒo :count',
+
+    'minute' => 'miniti :count', // less reliable
+    'min' => 'miniti :count', // less reliable
+    'a_minute' => 'miniti :count', // less reliable
+
+    'second' => 'sɛkɛnd :count', // less reliable
+    's' => 'sɛkɛnd :count', // less reliable
+    'a_second' => 'sɛkɛnd :count', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee_TG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee_TG.php
new file mode 100644
index 0000000..02d77e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ee_TG.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ee.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'LLL' => 'HH:mm MMMM D [lia] YYYY',
+        'LLLL' => 'HH:mm dddd, MMMM D [lia] YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el.php
new file mode 100644
index 0000000..09cf7e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el.php
@@ -0,0 +1,90 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Alessandro Di Felice
+ * - François B
+ * - Tim Fish
+ * - Gabriel Monteagudo
+ * - JD Isaacks
+ * - yiannisdesp
+ * - Ilias Kasmeridis (iliaskasm)
+ */
+return [
+    'year' => ':count χρόνος|:count χρόνια',
+    'a_year' => 'ένας χρόνος|:count χρόνια',
+    'y' => ':count χρ.',
+    'month' => ':count μήνας|:count μήνες',
+    'a_month' => 'ένας μήνας|:count μήνες',
+    'm' => ':count μήν.',
+    'week' => ':count εβδομάδα|:count εβδομάδες',
+    'a_week' => 'μια εβδομάδα|:count εβδομάδες',
+    'w' => ':count εβδ.',
+    'day' => ':count μέρα|:count μέρες',
+    'a_day' => 'μία μέρα|:count μέρες',
+    'd' => ':count μέρ.',
+    'hour' => ':count ώρα|:count ώρες',
+    'a_hour' => 'μία ώρα|:count ώρες',
+    'h' => ':count ώρα|:count ώρες',
+    'minute' => ':count λεπτό|:count λεπτά',
+    'a_minute' => 'ένα λεπτό|:count λεπτά',
+    'min' => ':count λεπ.',
+    'second' => ':count δευτερόλεπτο|:count δευτερόλεπτα',
+    'a_second' => 'λίγα δευτερόλεπτα|:count δευτερόλεπτα',
+    's' => ':count δευ.',
+    'ago' => 'πριν :time',
+    'from_now' => 'σε :time',
+    'after' => ':time μετά',
+    'before' => ':time πριν',
+    'diff_now' => 'τώρα',
+    'diff_today' => 'Σήμερα',
+    'diff_today_regexp' => 'Σήμερα(?:\\s+{})?',
+    'diff_yesterday' => 'χθες',
+    'diff_yesterday_regexp' => 'Χθες(?:\\s+{})?',
+    'diff_tomorrow' => 'αύριο',
+    'diff_tomorrow_regexp' => 'Αύριο(?:\\s+{})?',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm A',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm A',
+    ],
+    'calendar' => [
+        'sameDay' => '[Σήμερα {}] LT',
+        'nextDay' => '[Αύριο {}] LT',
+        'nextWeek' => 'dddd [{}] LT',
+        'lastDay' => '[Χθες {}] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            switch ($current->dayOfWeek) {
+                case 6:
+                    return '[το προηγούμενο] dddd [{}] LT';
+                default:
+                    return '[την προηγούμενη] dddd [{}] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberη',
+    'meridiem' => ['ΠΜ', 'ΜΜ', 'πμ', 'μμ'],
+    'months' => ['Ιανουαρίου', 'Φεβρουαρίου', 'Μαρτίου', 'Απριλίου', 'Μαΐου', 'Ιουνίου', 'Ιουλίου', 'Αυγούστου', 'Σεπτεμβρίου', 'Οκτωβρίου', 'Νοεμβρίου', 'Δεκεμβρίου'],
+    'months_standalone' => ['Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος'],
+    'months_regexp' => '/(D[oD]?[\s,]+MMMM|L{2,4}|l{2,4})/',
+    'months_short' => ['Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν', 'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ'],
+    'weekdays' => ['Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'],
+    'weekdays_short' => ['Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'],
+    'weekdays_min' => ['Κυ', 'Δε', 'Τρ', 'Τε', 'Πε', 'Πα', 'Σα'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' και '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_CY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_CY.php
new file mode 100644
index 0000000..8a693c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_CY.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Greek Debian Translation Team    bug-glibc@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/el.php', [
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_GR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_GR.php
new file mode 100644
index 0000000..df196af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/el_GR.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/el.php', [
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en.php
new file mode 100644
index 0000000..a8633fe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en.php
@@ -0,0 +1,87 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Milos Sakovic
+ * - Paul
+ * - Pete Scopes (pdscopes)
+ */
+return [
+    /*
+     * {1}, {0} and ]1,Inf[ are not needed as it's the default for English pluralization.
+     * But as some languages are using en.php as a fallback, it's better to specify it
+     * explicitly so those languages also fallback to English pluralization when a unit
+     * is missing.
+     */
+    'year' => '{1}:count year|{0}:count years|]1,Inf[:count years',
+    'a_year' => '{1}a year|{0}:count years|]1,Inf[:count years',
+    'y' => '{1}:countyr|{0}:countyrs|]1,Inf[:countyrs',
+    'month' => '{1}:count month|{0}:count months|]1,Inf[:count months',
+    'a_month' => '{1}a month|{0}:count months|]1,Inf[:count months',
+    'm' => '{1}:countmo|{0}:countmos|]1,Inf[:countmos',
+    'week' => '{1}:count week|{0}:count weeks|]1,Inf[:count weeks',
+    'a_week' => '{1}a week|{0}:count weeks|]1,Inf[:count weeks',
+    'w' => ':countw',
+    'day' => '{1}:count day|{0}:count days|]1,Inf[:count days',
+    'a_day' => '{1}a day|{0}:count days|]1,Inf[:count days',
+    'd' => ':countd',
+    'hour' => '{1}:count hour|{0}:count hours|]1,Inf[:count hours',
+    'a_hour' => '{1}an hour|{0}:count hours|]1,Inf[:count hours',
+    'h' => ':counth',
+    'minute' => '{1}:count minute|{0}:count minutes|]1,Inf[:count minutes',
+    'a_minute' => '{1}a minute|{0}:count minutes|]1,Inf[:count minutes',
+    'min' => ':countm',
+    'second' => '{1}:count second|{0}:count seconds|]1,Inf[:count seconds',
+    'a_second' => '{1}a few seconds|{0}:count seconds|]1,Inf[:count seconds',
+    's' => ':counts',
+    'millisecond' => '{1}:count millisecond|{0}:count milliseconds|]1,Inf[:count milliseconds',
+    'a_millisecond' => '{1}a millisecond|{0}:count milliseconds|]1,Inf[:count milliseconds',
+    'ms' => ':countms',
+    'microsecond' => '{1}:count microsecond|{0}:count microseconds|]1,Inf[:count microseconds',
+    'a_microsecond' => '{1}a microsecond|{0}:count microseconds|]1,Inf[:count microseconds',
+    'µs' => ':countµs',
+    'ago' => ':time ago',
+    'from_now' => ':time from now',
+    'after' => ':time after',
+    'before' => ':time before',
+    'diff_now' => 'just now',
+    'diff_today' => 'today',
+    'diff_yesterday' => 'yesterday',
+    'diff_tomorrow' => 'tomorrow',
+    'diff_before_yesterday' => 'before yesterday',
+    'diff_after_tomorrow' => 'after tomorrow',
+    'period_recurrences' => '{1}once|{0}:count times|]1,Inf[:count times',
+    'period_interval' => 'every :interval',
+    'period_start_date' => 'from :date',
+    'period_end_date' => 'to :date',
+    'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+    'weekdays' => ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
+    'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
+    'weekdays_min' => ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
+    'ordinal' => function ($number) {
+        $lastDigit = $number % 10;
+
+        return $number.(
+            (~~($number % 100 / 10) === 1) ? 'th' : (
+                ($lastDigit === 1) ? 'st' : (
+                    ($lastDigit === 2) ? 'nd' : (
+                        ($lastDigit === 3) ? 'rd' : 'th'
+                    )
+                )
+            )
+        );
+    },
+    'list' => [', ', ' and '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_001.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_001.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_001.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_150.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_150.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_150.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AG.php
new file mode 100644
index 0000000..2c1c64f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AG.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.  bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AS.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AS.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AT.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AT.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AU.php
new file mode 100644
index 0000000..f16bd4f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_AU.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - François B
+ * - Mayank Badola
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm A',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm A',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BB.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BB.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BE.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BM.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BS.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BS.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BW.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BZ.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_BZ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CA.php
new file mode 100644
index 0000000..e656086
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CA.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Zhan Tong Zhang
+ * - Mayank Badola
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'MMMM D, YYYY',
+        'LLL' => 'MMMM D, YYYY h:mm A',
+        'LLLL' => 'dddd, MMMM D, YYYY h:mm A',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CC.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CH.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CH.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CK.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CK.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CM.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CX.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CX.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CY.php
new file mode 100644
index 0000000..a44c350
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_CY.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - NehaGautam
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DE.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DK.php
new file mode 100644
index 0000000..9e8a8c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DK.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Danish Standards Association  bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DM.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_DM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ER.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ER.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FJ.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FJ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FK.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FK.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FM.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_FM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GB.php
new file mode 100644
index 0000000..67d9fd6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GB.php
@@ -0,0 +1,30 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Mayank Badola
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GD.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GD.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GH.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GH.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GM.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GU.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GY.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_GY.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_HK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_HK.php
new file mode 100644
index 0000000..34aae98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_HK.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory  bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IE.php
new file mode 100644
index 0000000..c8d3c2f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IE.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Martin McWhorter
+ * - François B
+ * - Chris Cartlidge
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IL.php
new file mode 100644
index 0000000..e607924
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IL.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Yoav Amit
+ * - François B
+ * - Mayank Badola
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IM.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IN.php
new file mode 100644
index 0000000..00414e9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory  bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YY',
+        'LL' => 'MMMM DD, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IO.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_IO.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ISO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ISO.php
new file mode 100644
index 0000000..6ae11c9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ISO.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'dddd, YYYY MMMM DD HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JE.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JM.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_JM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KE.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KN.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KN.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KY.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_KY.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LC.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LR.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LR.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LS.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_LS.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MH.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MO.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MP.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MP.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MS.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MS.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MT.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MU.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MU.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MW.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MW.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MY.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_MY.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NA.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NA.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NF.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NF.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NG.php
new file mode 100644
index 0000000..1d0d34f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NG.php
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NL.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NL.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NR.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NR.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NU.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NU.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NZ.php
new file mode 100644
index 0000000..6a206a0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_NZ.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Mayank Badola
+ * - Luke McGregor
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm A',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm A',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PH.php
new file mode 100644
index 0000000..34aae98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PH.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory  bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PK.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PN.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PN.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PR.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PW.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_PW.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_RW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_RW.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_RW.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SB.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SB.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SC.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SD.php
new file mode 100644
index 0000000..ce4780c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SD.php
@@ -0,0 +1,14 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SE.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SG.php
new file mode 100644
index 0000000..ed0b3f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SG.php
@@ -0,0 +1,23 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'from_now' => 'in :time',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SH.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SH.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SI.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SI.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SL.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SL.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SS.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SS.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SX.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SX.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SZ.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_SZ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TC.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TK.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TK.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TO.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TO.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TT.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TV.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TV.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TV.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TZ.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_TZ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UM.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_UM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US_Posix.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US_Posix.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_US_Posix.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VC.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VG.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VG.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VI.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VU.php
new file mode 100644
index 0000000..9f2a3f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_VU.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_WS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_WS.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_WS.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZA.php
new file mode 100644
index 0000000..48ea947
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZA.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YY',
+        'LL' => 'MMMM DD, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZM.php
new file mode 100644
index 0000000..d8a8cb5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZM.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - ANLoc Martin Benjamin locales@africanlocalization.net
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZW.php
new file mode 100644
index 0000000..31f60e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/en_ZW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/en.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eo.php
new file mode 100644
index 0000000..7c2efba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eo.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Mia Nordentoft
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count jaro|:count jaroj',
+    'a_year' => 'jaro|:count jaroj',
+    'y' => ':count j.',
+    'month' => ':count monato|:count monatoj',
+    'a_month' => 'monato|:count monatoj',
+    'm' => ':count mo.',
+    'week' => ':count semajno|:count semajnoj',
+    'a_week' => 'semajno|:count semajnoj',
+    'w' => ':count sem.',
+    'day' => ':count tago|:count tagoj',
+    'a_day' => 'tago|:count tagoj',
+    'd' => ':count t.',
+    'hour' => ':count horo|:count horoj',
+    'a_hour' => 'horo|:count horoj',
+    'h' => ':count h.',
+    'minute' => ':count minuto|:count minutoj',
+    'a_minute' => 'minuto|:count minutoj',
+    'min' => ':count min.',
+    'second' => ':count sekundo|:count sekundoj',
+    'a_second' => 'sekundoj|:count sekundoj',
+    's' => ':count sek.',
+    'ago' => 'antaŭ :time',
+    'from_now' => 'post :time',
+    'after' => ':time poste',
+    'before' => ':time antaŭe',
+    'diff_yesterday' => 'Hieraŭ',
+    'diff_yesterday_regexp' => 'Hieraŭ(?:\\s+je)?',
+    'diff_today' => 'Hodiaŭ',
+    'diff_today_regexp' => 'Hodiaŭ(?:\\s+je)?',
+    'diff_tomorrow' => 'Morgaŭ',
+    'diff_tomorrow_regexp' => 'Morgaŭ(?:\\s+je)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'D[-a de] MMMM, YYYY',
+        'LLL' => 'D[-a de] MMMM, YYYY HH:mm',
+        'LLLL' => 'dddd, [la] D[-a de] MMMM, YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hodiaŭ je] LT',
+        'nextDay' => '[Morgaŭ je] LT',
+        'nextWeek' => 'dddd [je] LT',
+        'lastDay' => '[Hieraŭ je] LT',
+        'lastWeek' => '[pasinta] dddd [je] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numbera',
+    'meridiem' => ['a.t.m.', 'p.t.m.'],
+    'months' => ['januaro', 'februaro', 'marto', 'aprilo', 'majo', 'junio', 'julio', 'aŭgusto', 'septembro', 'oktobro', 'novembro', 'decembro'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aŭg', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['dimanĉo', 'lundo', 'mardo', 'merkredo', 'ĵaŭdo', 'vendredo', 'sabato'],
+    'weekdays_short' => ['dim', 'lun', 'mard', 'merk', 'ĵaŭ', 'ven', 'sab'],
+    'weekdays_min' => ['di', 'lu', 'ma', 'me', 'ĵa', 've', 'sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' kaj '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es.php
new file mode 100644
index 0000000..daaf257
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es.php
@@ -0,0 +1,108 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - kostas
+ * - François B
+ * - Tim Fish
+ * - Claire Coloma
+ * - Steven Heinrich
+ * - JD Isaacks
+ * - Raphael Amorim
+ * - Jorge Y. Castillo
+ * - Víctor Díaz
+ * - Diego
+ * - Sebastian Thierer
+ * - quinterocesar
+ * - Daniel Commesse Liévanos (danielcommesse)
+ * - Pete Scopes (pdscopes)
+ */
+return [
+    'year' => ':count año|:count años',
+    'a_year' => 'un año|:count años',
+    'y' => ':count año|:count años',
+    'month' => ':count mes|:count meses',
+    'a_month' => 'un mes|:count meses',
+    'm' => ':count mes|:count meses',
+    'week' => ':count semana|:count semanas',
+    'a_week' => 'una semana|:count semanas',
+    'w' => ':countsem',
+    'day' => ':count día|:count días',
+    'a_day' => 'un día|:count días',
+    'd' => ':countd',
+    'hour' => ':count hora|:count horas',
+    'a_hour' => 'una hora|:count horas',
+    'h' => ':counth',
+    'minute' => ':count minuto|:count minutos',
+    'a_minute' => 'un minuto|:count minutos',
+    'min' => ':countm',
+    'second' => ':count segundo|:count segundos',
+    'a_second' => 'unos segundos|:count segundos',
+    's' => ':counts',
+    'millisecond' => ':count milisegundo|:count milisegundos',
+    'a_millisecond' => 'un milisegundo|:count milisegundos',
+    'ms' => ':countms',
+    'microsecond' => ':count microsegundo|:count microsegundos',
+    'a_microsecond' => 'un microsegundo|:count microsegundos',
+    'µs' => ':countµs',
+    'ago' => 'hace :time',
+    'from_now' => 'en :time',
+    'after' => ':time después',
+    'before' => ':time antes',
+    'diff_now' => 'ahora mismo',
+    'diff_today' => 'hoy',
+    'diff_today_regexp' => 'hoy(?:\\s+a)?(?:\\s+las)?',
+    'diff_yesterday' => 'ayer',
+    'diff_yesterday_regexp' => 'ayer(?:\\s+a)?(?:\\s+las)?',
+    'diff_tomorrow' => 'mañana',
+    'diff_tomorrow_regexp' => 'mañana(?:\\s+a)?(?:\\s+las)?',
+    'diff_before_yesterday' => 'anteayer',
+    'diff_after_tomorrow' => 'pasado mañana',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D [de] MMMM [de] YYYY',
+        'LLL' => 'D [de] MMMM [de] YYYY H:mm',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => function (\Carbon\CarbonInterface $current) {
+            return '[hoy a la'.($current->hour !== 1 ? 's' : '').'] LT';
+        },
+        'nextDay' => function (\Carbon\CarbonInterface $current) {
+            return '[mañana a la'.($current->hour !== 1 ? 's' : '').'] LT';
+        },
+        'nextWeek' => function (\Carbon\CarbonInterface $current) {
+            return 'dddd [a la'.($current->hour !== 1 ? 's' : '').'] LT';
+        },
+        'lastDay' => function (\Carbon\CarbonInterface $current) {
+            return '[ayer a la'.($current->hour !== 1 ? 's' : '').'] LT';
+        },
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            return '[el] dddd [pasado a la'.($current->hour !== 1 ? 's' : '').'] LT';
+        },
+        'sameElse' => 'L',
+    ],
+    'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
+    'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
+    'mmm_suffix' => '.',
+    'ordinal' => ':numberº',
+    'weekdays' => ['domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado'],
+    'weekdays_short' => ['dom.', 'lun.', 'mar.', 'mié.', 'jue.', 'vie.', 'sáb.'],
+    'weekdays_min' => ['do', 'lu', 'ma', 'mi', 'ju', 'vi', 'sá'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' y '],
+    'meridiem' => ['a. m.', 'p. m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_419.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_419.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_419.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_AR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_AR.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_AR.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BO.php
new file mode 100644
index 0000000..c9b8432
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BO.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BR.php
new file mode 100644
index 0000000..e9dbe2b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BR.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BZ.php
new file mode 100644
index 0000000..e9dbe2b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_BZ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CL.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CL.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CO.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CO.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CR.php
new file mode 100644
index 0000000..553fc09
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CR.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CU.php
new file mode 100644
index 0000000..96391d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_CU.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_DO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_DO.php
new file mode 100644
index 0000000..0f855ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_DO.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - kostas
+ * - François B
+ * - Tim Fish
+ * - Chiel Robben
+ * - Claire Coloma
+ * - Steven Heinrich
+ * - JD Isaacks
+ * - Raphael Amorim
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'diff_before_yesterday' => 'anteayer',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'LLL' => 'D [de] MMMM [de] YYYY h:mm A',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY h:mm A',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EA.php
new file mode 100644
index 0000000..96391d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EA.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EC.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_EC.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_ES.php
new file mode 100644
index 0000000..19217c2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_ES.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return require __DIR__.'/es.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GQ.php
new file mode 100644
index 0000000..96391d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GQ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GT.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_GT.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_HN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_HN.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_HN.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_IC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_IC.php
new file mode 100644
index 0000000..96391d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_IC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_MX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_MX.php
new file mode 100644
index 0000000..61e14cf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_MX.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'diff_before_yesterday' => 'antier',
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_NI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_NI.php
new file mode 100644
index 0000000..6b964c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_NI.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PA.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PA.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PE.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PE.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PH.php
new file mode 100644
index 0000000..ea345b2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PH.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/M/yy',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D [de] MMMM [de] YYYY h:mm a',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PR.php
new file mode 100644
index 0000000..6b964c1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PR.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PY.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_PY.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_SV.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_SV.php
new file mode 100644
index 0000000..00db08e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_SV.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
+    'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_US.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_US.php
new file mode 100644
index 0000000..f333136
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_US.php
@@ -0,0 +1,38 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - Josh Soref
+ * - Jørn Ølmheim
+ * - Craig Patik
+ * - bustta
+ * - François B
+ * - Tim Fish
+ * - Claire Coloma
+ * - Steven Heinrich
+ * - JD Isaacks
+ * - Raphael Amorim
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'diff_before_yesterday' => 'anteayer',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'MM/DD/YYYY',
+        'LL' => 'MMMM [de] D [de] YYYY',
+        'LLL' => 'MMMM [de] D [de] YYYY h:mm A',
+        'LLLL' => 'dddd, MMMM [de] D [de] YYYY h:mm A',
+    ],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_UY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_UY.php
new file mode 100644
index 0000000..39baff8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_UY.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'setiembre', 'octubre', 'noviembre', 'diciembre'],
+    'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'set', 'oct', 'nov', 'dic'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_VE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_VE.php
new file mode 100644
index 0000000..a74806e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/es_VE.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/es.php', [
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et.php
new file mode 100644
index 0000000..f49c880
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et.php
@@ -0,0 +1,93 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Andres Ivanov
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - RM87
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Esko Lehtme
+ * - Mart Karu
+ * - Nicolás Hock Isaza
+ * - Kevin Valdek
+ * - Zahhar Kirillov
+ * - João Magalhães
+ * - Ingmar
+ * - Illimar Tambek
+ * - Mihkel
+ */
+return [
+    'year' => ':count aasta|:count aastat',
+    'y' => ':count a',
+    'month' => ':count kuu|:count kuud',
+    'm' => ':count k',
+    'week' => ':count nädal|:count nädalat',
+    'w' => ':count näd',
+    'day' => ':count päev|:count päeva',
+    'd' => ':count p',
+    'hour' => ':count tund|:count tundi',
+    'h' => ':count t',
+    'minute' => ':count minut|:count minutit',
+    'min' => ':count min',
+    'second' => ':count sekund|:count sekundit',
+    's' => ':count s',
+    'ago' => ':time tagasi',
+    'from_now' => ':time pärast',
+    'after' => ':time pärast',
+    'before' => ':time enne',
+    'year_from_now' => ':count aasta',
+    'month_from_now' => ':count kuu',
+    'week_from_now' => ':count nädala',
+    'day_from_now' => ':count päeva',
+    'hour_from_now' => ':count tunni',
+    'minute_from_now' => ':count minuti',
+    'second_from_now' => ':count sekundi',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'diff_now' => 'nüüd',
+    'diff_today' => 'täna',
+    'diff_yesterday' => 'eile',
+    'diff_tomorrow' => 'homme',
+    'diff_before_yesterday' => 'üleeile',
+    'diff_after_tomorrow' => 'ülehomme',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[täna] LT',
+        'nextDay' => '[homme] LT',
+        'lastDay' => '[eile] LT',
+        'nextWeek' => 'dddd LT',
+        'lastWeek' => '[eelmine] dddd LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['jaanuar', 'veebruar', 'märts', 'aprill', 'mai', 'juuni', 'juuli', 'august', 'september', 'oktoober', 'november', 'detsember'],
+    'months_short' => ['jaan', 'veebr', 'märts', 'apr', 'mai', 'juuni', 'juuli', 'aug', 'sept', 'okt', 'nov', 'dets'],
+    'weekdays' => ['pühapäev', 'esmaspäev', 'teisipäev', 'kolmapäev', 'neljapäev', 'reede', 'laupäev'],
+    'weekdays_short' => ['P', 'E', 'T', 'K', 'N', 'R', 'L'],
+    'weekdays_min' => ['P', 'E', 'T', 'K', 'N', 'R', 'L'],
+    'list' => [', ', ' ja '],
+    'meridiem' => ['enne lõunat', 'pärast lõunat'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et_EE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et_EE.php
new file mode 100644
index 0000000..3588f62
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/et_EE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/et.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu.php
new file mode 100644
index 0000000..a543f1a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu.php
@@ -0,0 +1,67 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - JD Isaacks
+ */
+return [
+    'year' => 'urte bat|:count urte',
+    'y' => 'Urte 1|:count urte',
+    'month' => 'hilabete bat|:count hilabete',
+    'm' => 'Hile 1|:count hile',
+    'week' => 'Aste 1|:count aste',
+    'w' => 'Aste 1|:count aste',
+    'day' => 'egun bat|:count egun',
+    'd' => 'Egun 1|:count egun',
+    'hour' => 'ordu bat|:count ordu',
+    'h' => 'Ordu 1|:count ordu',
+    'minute' => 'minutu bat|:count minutu',
+    'min' => 'Minutu 1|:count minutu',
+    'second' => 'segundo batzuk|:count segundo',
+    's' => 'Segundu 1|:count segundu',
+    'ago' => 'duela :time',
+    'from_now' => ':time barru',
+    'after' => ':time geroago',
+    'before' => ':time lehenago',
+    'diff_now' => 'orain',
+    'diff_today' => 'gaur',
+    'diff_yesterday' => 'atzo',
+    'diff_tomorrow' => 'bihar',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'YYYY[ko] MMMM[ren] D[a]',
+        'LLL' => 'YYYY[ko] MMMM[ren] D[a] HH:mm',
+        'LLLL' => 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[gaur] LT[etan]',
+        'nextDay' => '[bihar] LT[etan]',
+        'nextWeek' => 'dddd LT[etan]',
+        'lastDay' => '[atzo] LT[etan]',
+        'lastWeek' => '[aurreko] dddd LT[etan]',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['urtarrila', 'otsaila', 'martxoa', 'apirila', 'maiatza', 'ekaina', 'uztaila', 'abuztua', 'iraila', 'urria', 'azaroa', 'abendua'],
+    'months_short' => ['urt.', 'ots.', 'mar.', 'api.', 'mai.', 'eka.', 'uzt.', 'abu.', 'ira.', 'urr.', 'aza.', 'abe.'],
+    'weekdays' => ['igandea', 'astelehena', 'asteartea', 'asteazkena', 'osteguna', 'ostirala', 'larunbata'],
+    'weekdays_short' => ['ig.', 'al.', 'ar.', 'az.', 'og.', 'ol.', 'lr.'],
+    'weekdays_min' => ['ig', 'al', 'ar', 'az', 'og', 'ol', 'lr'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' eta '],
+    'meridiem' => ['g', 'a'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu_ES.php
new file mode 100644
index 0000000..442cca7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/eu_ES.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/eu.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ewo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ewo.php
new file mode 100644
index 0000000..f5ae8cf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ewo.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['kíkíríg', 'ngəgógəle'],
+    'weekdays' => ['sɔ́ndɔ', 'mɔ́ndi', 'sɔ́ndɔ məlú mə́bɛ̌', 'sɔ́ndɔ məlú mə́lɛ́', 'sɔ́ndɔ məlú mə́nyi', 'fúladé', 'séradé'],
+    'weekdays_short' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'fúl', 'sér'],
+    'weekdays_min' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'fúl', 'sér'],
+    'months' => ['ngɔn osú', 'ngɔn bɛ̌', 'ngɔn lála', 'ngɔn nyina', 'ngɔn tána', 'ngɔn saməna', 'ngɔn zamgbála', 'ngɔn mwom', 'ngɔn ebulú', 'ngɔn awóm', 'ngɔn awóm ai dziá', 'ngɔn awóm ai bɛ̌'],
+    'months_short' => ['ngo', 'ngb', 'ngl', 'ngn', 'ngt', 'ngs', 'ngz', 'ngm', 'nge', 'nga', 'ngad', 'ngab'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    // Too unreliable
+    /*
+    'year' => ':count mbu', // less reliable
+    'y' => ':count mbu', // less reliable
+    'a_year' => ':count mbu', // less reliable
+
+    'month' => ':count ngòn', // less reliable
+    'm' => ':count ngòn', // less reliable
+    'a_month' => ':count ngòn', // less reliable
+
+    'week' => ':count mësë', // less reliable
+    'w' => ':count mësë', // less reliable
+    'a_week' => ':count mësë', // less reliable
+
+    'day' => ':count mësë', // less reliable
+    'd' => ':count mësë', // less reliable
+    'a_day' => ':count mësë', // less reliable
+
+    'hour' => ':count awola', // less reliable
+    'h' => ':count awola', // less reliable
+    'a_hour' => ':count awola', // less reliable
+
+    'minute' => ':count awola', // less reliable
+    'min' => ':count awola', // less reliable
+    'a_minute' => ':count awola', // less reliable
+    */
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa.php
new file mode 100644
index 0000000..72e0308
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa.php
@@ -0,0 +1,84 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Nasser Ghiasi
+ * - JD Isaacks
+ * - Hossein Jabbari
+ * - nimamo
+ * - hafezdivandari
+ * - Hassan Pezeshk (hpez)
+ */
+return [
+    'year' => ':count سال',
+    'a_year' => 'یک سال'.'|:count '.'سال',
+    'y' => ':count سال',
+    'month' => ':count ماه',
+    'a_month' => 'یک ماه'.'|:count '.'ماه',
+    'm' => ':count ماه',
+    'week' => ':count هفته',
+    'a_week' => 'یک هفته'.'|:count '.'هفته',
+    'w' => ':count هفته',
+    'day' => ':count روز',
+    'a_day' => 'یک روز'.'|:count '.'روز',
+    'd' => ':count روز',
+    'hour' => ':count ساعت',
+    'a_hour' => 'یک ساعت'.'|:count '.'ساعت',
+    'h' => ':count ساعت',
+    'minute' => ':count دقیقه',
+    'a_minute' => 'یک دقیقه'.'|:count '.'دقیقه',
+    'min' => ':count دقیقه',
+    'second' => ':count ثانیه',
+    's' => ':count ثانیه',
+    'ago' => ':time پیش',
+    'from_now' => ':time دیگر',
+    'after' => ':time پس از',
+    'before' => ':time پیش از',
+    'diff_now' => 'اکنون',
+    'diff_today' => 'امروز',
+    'diff_today_regexp' => 'امروز(?:\\s+ساعت)?',
+    'diff_yesterday' => 'دیروز',
+    'diff_yesterday_regexp' => 'دیروز(?:\\s+ساعت)?',
+    'diff_tomorrow' => 'فردا',
+    'diff_tomorrow_regexp' => 'فردا(?:\\s+ساعت)?',
+    'formats' => [
+        'LT' => 'OH:Om',
+        'LTS' => 'OH:Om:Os',
+        'L' => 'OD/OM/OY',
+        'LL' => 'OD MMMM OY',
+        'LLL' => 'OD MMMM OY OH:Om',
+        'LLLL' => 'dddd, OD MMMM OY OH:Om',
+    ],
+    'calendar' => [
+        'sameDay' => '[امروز ساعت] LT',
+        'nextDay' => '[فردا ساعت] LT',
+        'nextWeek' => 'dddd [ساعت] LT',
+        'lastDay' => '[دیروز ساعت] LT',
+        'lastWeek' => 'dddd [پیش] [ساعت] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':timeم',
+    'meridiem' => ['قبل از ظهر', 'بعد از ظهر'],
+    'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
+    'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
+    'weekdays' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
+    'weekdays_short' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
+    'weekdays_min' => ['ی', 'د', 'س', 'چ', 'پ', 'ج', 'ش'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'list' => ['، ', ' و '],
+    'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰۴', '۰۵', '۰۶', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱۴', '۱۵', '۱۶', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲۴', '۲۵', '۲۶', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳۴', '۳۵', '۳۶', '۳۷', '۳۸', '۳۹', '۴۰', '۴۱', '۴۲', '۴۳', '۴۴', '۴۵', '۴۶', '۴۷', '۴۸', '۴۹', '۵۰', '۵۱', '۵۲', '۵۳', '۵۴', '۵۵', '۵۶', '۵۷', '۵۸', '۵۹', '۶۰', '۶۱', '۶۲', '۶۳', '۶۴', '۶۵', '۶۶', '۶۷', '۶۸', '۶۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷۴', '۷۵', '۷۶', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸۴', '۸۵', '۸۶', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹۴', '۹۵', '۹۶', '۹۷', '۹۸', '۹۹'],
+    'months_short_standalone' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
+    'weekend' => [5, 5],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_AF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_AF.php
new file mode 100644
index 0000000..06566fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_AF.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fa.php', [
+    'meridiem' => ['ق', 'ب'],
+    'weekend' => [4, 5],
+    'formats' => [
+        'L' => 'OY/OM/OD',
+        'LL' => 'OD MMM OY',
+        'LLL' => 'OD MMMM OY،‏ H:mm',
+        'LLLL' => 'dddd OD MMMM OY،‏ H:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_IR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_IR.php
new file mode 100644
index 0000000..6d1832c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fa_IR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fa.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff.php
new file mode 100644
index 0000000..9525c95
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'months' => ['siilo', 'colte', 'mbooy', 'seeɗto', 'duujal', 'korse', 'morso', 'juko', 'siilto', 'yarkomaa', 'jolal', 'bowte'],
+    'months_short' => ['sii', 'col', 'mbo', 'see', 'duu', 'kor', 'mor', 'juk', 'slt', 'yar', 'jol', 'bow'],
+    'weekdays' => ['dewo', 'aaɓnde', 'mawbaare', 'njeslaare', 'naasaande', 'mawnde', 'hoore-biir'],
+    'weekdays_short' => ['dew', 'aaɓ', 'maw', 'nje', 'naa', 'mwd', 'hbi'],
+    'weekdays_min' => ['dew', 'aaɓ', 'maw', 'nje', 'naa', 'mwd', 'hbi'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['subaka', 'kikiiɗe'],
+
+    'year' => ':count baret', // less reliable
+    'y' => ':count baret', // less reliable
+    'a_year' => ':count baret', // less reliable
+
+    'month' => ':count lewru', // less reliable
+    'm' => ':count lewru', // less reliable
+    'a_month' => ':count lewru', // less reliable
+
+    'week' => ':count naange', // less reliable
+    'w' => ':count naange', // less reliable
+    'a_week' => ':count naange', // less reliable
+
+    'day' => ':count dian', // less reliable
+    'd' => ':count dian', // less reliable
+    'a_day' => ':count dian', // less reliable
+
+    'hour' => ':count montor', // less reliable
+    'h' => ':count montor', // less reliable
+    'a_hour' => ':count montor', // less reliable
+
+    'minute' => ':count tokossuoum', // less reliable
+    'min' => ':count tokossuoum', // less reliable
+    'a_minute' => ':count tokossuoum', // less reliable
+
+    'second' => ':count tenen', // less reliable
+    's' => ':count tenen', // less reliable
+    'a_second' => ':count tenen', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_CM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_CM.php
new file mode 100644
index 0000000..dafa98e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_CM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ff.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_GN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_GN.php
new file mode 100644
index 0000000..dafa98e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_GN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ff.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_MR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_MR.php
new file mode 100644
index 0000000..65276d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_MR.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ff.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_SN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_SN.php
new file mode 100644
index 0000000..1e4c8b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ff_SN.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pular-Fulfulde.org Ibrahima Sarr admin@pulaar-fulfulde.org
+ */
+return require __DIR__.'/ff.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi.php
new file mode 100644
index 0000000..2003e1e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi.php
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Janne Warén
+ * - digitalfrost
+ * - Tsutomu Kuroda
+ * - Roope Salmi
+ * - tjku
+ * - Max Melentiev
+ * - Sami Haahtinen
+ * - Teemu Leisti
+ * - Artem Ignatyev
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Robert Bjarnason
+ * - Aaron Patterson
+ * - Nicolás Hock Isaza
+ * - Tom Hughes
+ * - Sven Fuchs
+ * - Petri Kivikangas
+ * - Nizar Jouini
+ * - Marko Seppae
+ * - Tomi Mynttinen (Pikseli)
+ * - Petteri (powergrip)
+ */
+return [
+    'year' => ':count vuosi|:count vuotta',
+    'y' => ':count v',
+    'month' => ':count kuukausi|:count kuukautta',
+    'm' => ':count kk',
+    'week' => ':count viikko|:count viikkoa',
+    'w' => ':count vk',
+    'day' => ':count päivä|:count päivää',
+    'd' => ':count pv',
+    'hour' => ':count tunti|:count tuntia',
+    'h' => ':count t',
+    'minute' => ':count minuutti|:count minuuttia',
+    'min' => ':count min',
+    'second' => ':count sekunti|:count sekuntia',
+    'a_second' => 'muutama sekunti|:count sekuntia',
+    's' => ':count s',
+    'ago' => ':time sitten',
+    'from_now' => ':time päästä',
+    'year_from_now' => ':count vuoden',
+    'month_from_now' => ':count kuukauden',
+    'week_from_now' => ':count viikon',
+    'day_from_now' => ':count päivän',
+    'hour_from_now' => ':count tunnin',
+    'minute_from_now' => ':count minuutin',
+    'second_from_now' => ':count sekunnin',
+    'after' => ':time sen jälkeen',
+    'before' => ':time ennen',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' ja '],
+    'diff_now' => 'nyt',
+    'diff_yesterday' => 'eilen',
+    'diff_tomorrow' => 'huomenna',
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm:ss',
+        'L' => 'D.M.YYYY',
+        'LL' => 'dddd D. MMMM[ta] YYYY',
+        'LLL' => 'D.MM. HH.mm',
+        'LLLL' => 'D. MMMM[ta] YYYY HH.mm',
+    ],
+    'weekdays' => ['sunnuntai', 'maanantai', 'tiistai', 'keskiviikko', 'torstai', 'perjantai', 'lauantai'],
+    'weekdays_short' => ['su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'],
+    'weekdays_min' => ['su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'],
+    'months' => ['tammikuu', 'helmikuu', 'maaliskuu', 'huhtikuu', 'toukokuu', 'kesäkuu', 'heinäkuu', 'elokuu', 'syyskuu', 'lokakuu', 'marraskuu', 'joulukuu'],
+    'months_short' => ['tammi', 'helmi', 'maalis', 'huhti', 'touko', 'kesä', 'heinä', 'elo', 'syys', 'loka', 'marras', 'joulu'],
+    'meridiem' => ['aamupäivä', 'iltapäivä'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi_FI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi_FI.php
new file mode 100644
index 0000000..3597fa2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fi_FI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fi.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil.php
new file mode 100644
index 0000000..61114e3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/fil_PH.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil_PH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil_PH.php
new file mode 100644
index 0000000..bcf1580
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fil_PH.php
@@ -0,0 +1,62 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Rene Torres Rene Torres, Pablo Saratxaga rgtorre@rocketmail.com, pablo@mandrakesoft.com
+ * - Jaycee Mariano (alohajaycee)
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'MM/DD/YY',
+    ],
+    'months' => ['Enero', 'Pebrero', 'Marso', 'Abril', 'Mayo', 'Hunyo', 'Hulyo', 'Agosto', 'Setyembre', 'Oktubre', 'Nobyembre', 'Disyembre'],
+    'months_short' => ['Ene', 'Peb', 'Mar', 'Abr', 'May', 'Hun', 'Hul', 'Ago', 'Set', 'Okt', 'Nob', 'Dis'],
+    'weekdays' => ['Linggo', 'Lunes', 'Martes', 'Miyerkoles', 'Huwebes', 'Biyernes', 'Sabado'],
+    'weekdays_short' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
+    'weekdays_min' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['N.U.', 'N.H.'],
+
+    'before' => ':time bago',
+    'after' => ':time pagkatapos',
+
+    'year' => ':count taon',
+    'y' => ':count taon',
+    'a_year' => ':count taon',
+
+    'month' => ':count buwan',
+    'm' => ':count buwan',
+    'a_month' => ':count buwan',
+
+    'week' => ':count linggo',
+    'w' => ':count linggo',
+    'a_week' => ':count linggo',
+
+    'day' => ':count araw',
+    'd' => ':count araw',
+    'a_day' => ':count araw',
+
+    'hour' => ':count oras',
+    'h' => ':count oras',
+    'a_hour' => ':count oras',
+
+    'minute' => ':count minuto',
+    'min' => ':count minuto',
+    'a_minute' => ':count minuto',
+
+    'second' => ':count segundo',
+    's' => ':count segundo',
+    'a_second' => ':count segundo',
+
+    'ago' => ':time ang nakalipas',
+    'from_now' => 'sa :time',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo.php
new file mode 100644
index 0000000..6a14a6f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo.php
@@ -0,0 +1,69 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kristian Sakarisson
+ * - François B
+ * - JD Isaacks
+ * - Sverri Mohr Olsen
+ */
+return [
+    'year' => 'eitt ár|:count ár',
+    'y' => ':count ár|:count ár',
+    'month' => 'ein mánaði|:count mánaðir',
+    'm' => ':count mánaður|:count mánaðir',
+    'week' => ':count vika|:count vikur',
+    'w' => ':count vika|:count vikur',
+    'day' => 'ein dagur|:count dagar',
+    'd' => ':count dag|:count dagar',
+    'hour' => 'ein tími|:count tímar',
+    'h' => ':count tími|:count tímar',
+    'minute' => 'ein minutt|:count minuttir',
+    'min' => ':count minutt|:count minuttir',
+    'second' => 'fá sekund|:count sekundir',
+    's' => ':count sekund|:count sekundir',
+    'ago' => ':time síðani',
+    'from_now' => 'um :time',
+    'after' => ':time aftaná',
+    'before' => ':time áðrenn',
+    'diff_today' => 'Í',
+    'diff_yesterday' => 'Í',
+    'diff_yesterday_regexp' => 'Í(?:\\s+gjár)?(?:\\s+kl.)?',
+    'diff_tomorrow' => 'Í',
+    'diff_tomorrow_regexp' => 'Í(?:\\s+morgin)?(?:\\s+kl.)?',
+    'diff_today_regexp' => 'Í(?:\\s+dag)?(?:\\s+kl.)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D. MMMM, YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Í dag kl.] LT',
+        'nextDay' => '[Í morgin kl.] LT',
+        'nextWeek' => 'dddd [kl.] LT',
+        'lastDay' => '[Í gjár kl.] LT',
+        'lastWeek' => '[síðstu] dddd [kl] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['januar', 'februar', 'mars', 'apríl', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['sunnudagur', 'mánadagur', 'týsdagur', 'mikudagur', 'hósdagur', 'fríggjadagur', 'leygardagur'],
+    'weekdays_short' => ['sun', 'mán', 'týs', 'mik', 'hós', 'frí', 'ley'],
+    'weekdays_min' => ['su', 'má', 'tý', 'mi', 'hó', 'fr', 'le'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' og '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_DK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_DK.php
new file mode 100644
index 0000000..e0f4537
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_DK.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fo.php', [
+    'formats' => [
+        'L' => 'DD.MM.yy',
+        'LL' => 'DD.MM.YYYY',
+        'LLL' => 'D. MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY, HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_FO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_FO.php
new file mode 100644
index 0000000..6a4bc31
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fo_FO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fo.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr.php
new file mode 100644
index 0000000..73fe5e4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr.php
@@ -0,0 +1,114 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Dieter Sting
+ * - François B
+ * - Maxime VALY
+ * - JD Isaacks
+ * - Dieter Sting
+ * - François B
+ * - JD Isaacks
+ * - Sebastian Thierer
+ * - Fastfuel
+ * - Pete Scopes (pdscopes)
+ */
+return [
+    'year' => ':count an|:count ans',
+    'a_year' => 'un an|:count ans',
+    'y' => ':count an|:count ans',
+    'month' => ':count mois|:count mois',
+    'a_month' => 'un mois|:count mois',
+    'm' => ':count mois',
+    'week' => ':count semaine|:count semaines',
+    'a_week' => 'une semaine|:count semaines',
+    'w' => ':count sem.',
+    'day' => ':count jour|:count jours',
+    'a_day' => 'un jour|:count jours',
+    'd' => ':count j',
+    'hour' => ':count heure|:count heures',
+    'a_hour' => 'une heure|:count heures',
+    'h' => ':count h',
+    'minute' => ':count minute|:count minutes',
+    'a_minute' => 'une minute|:count minutes',
+    'min' => ':count min',
+    'second' => ':count seconde|:count secondes',
+    'a_second' => 'quelques secondes|:count secondes',
+    's' => ':count s',
+    'millisecond' => ':count milliseconde|:count millisecondes',
+    'a_millisecond' => 'une milliseconde|:count millisecondes',
+    'ms' => ':countms',
+    'microsecond' => ':count microseconde|:count microsecondes',
+    'a_microsecond' => 'une microseconde|:count microsecondes',
+    'µs' => ':countµs',
+    'ago' => 'il y a :time',
+    'from_now' => 'dans :time',
+    'after' => ':time après',
+    'before' => ':time avant',
+    'diff_now' => "à l'instant",
+    'diff_today' => "aujourd'hui",
+    'diff_today_regexp' => "aujourd'hui(?:\s+à)?",
+    'diff_yesterday' => 'hier',
+    'diff_yesterday_regexp' => 'hier(?:\s+à)?',
+    'diff_tomorrow' => 'demain',
+    'diff_tomorrow_regexp' => 'demain(?:\s+à)?',
+    'diff_before_yesterday' => 'avant-hier',
+    'diff_after_tomorrow' => 'après-demain',
+    'period_recurrences' => ':count fois',
+    'period_interval' => 'tous les :interval',
+    'period_start_date' => 'de :date',
+    'period_end_date' => 'à :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Aujourd’hui à] LT',
+        'nextDay' => '[Demain à] LT',
+        'nextWeek' => 'dddd [à] LT',
+        'lastDay' => '[Hier à] LT',
+        'lastWeek' => 'dddd [dernier à] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
+    'months_short' => ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],
+    'weekdays' => ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'],
+    'weekdays_short' => ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.'],
+    'weekdays_min' => ['di', 'lu', 'ma', 'me', 'je', 've', 'sa'],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            // In french, only the first has be ordinal, other number remains cardinal
+            // @link https://fr.wikihow.com/%C3%A9crire-la-date-en-fran%C3%A7ais
+            case 'D':
+                return $number.($number === 1 ? 'er' : '');
+
+            default:
+            case 'M':
+            case 'Q':
+            case 'DDD':
+            case 'd':
+                return $number.($number === 1 ? 'er' : 'e');
+
+            // Words with feminine grammatical gender: semaine
+            case 'w':
+            case 'W':
+                return $number.($number === 1 ? 're' : 'e');
+        }
+    },
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' et '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BE.php
new file mode 100644
index 0000000..f6cafe8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BE.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'months_short' => ['jan', 'fév', 'mar', 'avr', 'mai', 'jun', 'jui', 'aoû', 'sep', 'oct', 'nov', 'déc'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BI.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BJ.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BJ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BL.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_BL.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CA.php
new file mode 100644
index 0000000..c9f6346
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CA.php
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Dieter Sting
+ * - François B
+ * - Maxime VALY
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CD.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CD.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CG.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CH.php
new file mode 100644
index 0000000..8674c27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CH.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Dieter Sting
+ * - François B
+ * - Gaspard Bucher
+ * - Maxime VALY
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CI.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CM.php
new file mode 100644
index 0000000..52b951c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_CM.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'meridiem' => ['mat.', 'soir'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DJ.php
new file mode 100644
index 0000000..40579a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DJ.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'first_day_of_week' => 6,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DZ.php
new file mode 100644
index 0000000..2c1ab85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_DZ.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_FR.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_FR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GA.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GN.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GP.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GP.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GQ.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_GQ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_HT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_HT.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_HT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_KM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_KM.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_KM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_LU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_LU.php
new file mode 100644
index 0000000..8e37d85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_LU.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months_short' => ['jan', 'fév', 'mar', 'avr', 'mai', 'jun', 'jui', 'aoû', 'sep', 'oct', 'nov', 'déc'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MA.php
new file mode 100644
index 0000000..7d2b1db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MA.php
@@ -0,0 +1,14 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MC.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MC.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MG.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_ML.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_ML.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_ML.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MQ.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MQ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MR.php
new file mode 100644
index 0000000..d177a7d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MR.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MU.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_MU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NC.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NC.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NE.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_NE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PM.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_PM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RE.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RW.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_RW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SC.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SC.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SN.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SY.php
new file mode 100644
index 0000000..2c1ab85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_SY.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TD.php
new file mode 100644
index 0000000..d177a7d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TD.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TG.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TN.php
new file mode 100644
index 0000000..d3e2656
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_TN.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'weekend' => [5, 6],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_VU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_VU.php
new file mode 100644
index 0000000..d177a7d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_VU.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fr.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_WF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_WF.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_WF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_YT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_YT.php
new file mode 100644
index 0000000..f9801e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fr_YT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/fr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur.php
new file mode 100644
index 0000000..36c2564
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/fur_IT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur_IT.php
new file mode 100644
index 0000000..0147a59
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fur_IT.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD. MM. YY',
+        'LL' => 'DD di MMMM dal YYYY',
+        'LLL' => 'DD di MMM HH:mm',
+        'LLLL' => 'DD di MMMM dal YYYY HH:mm',
+    ],
+    'months' => ['zenâr', 'fevrâr', 'març', 'avrîl', 'mai', 'jugn', 'lui', 'avost', 'setembar', 'otubar', 'novembar', 'dicembar'],
+    'months_short' => ['zen', 'fev', 'mar', 'avr', 'mai', 'jug', 'lui', 'avo', 'set', 'otu', 'nov', 'dic'],
+    'weekdays' => ['domenie', 'lunis', 'martars', 'miercus', 'joibe', 'vinars', 'sabide'],
+    'weekdays_short' => ['dom', 'lun', 'mar', 'mie', 'joi', 'vin', 'sab'],
+    'weekdays_min' => ['dom', 'lun', 'mar', 'mie', 'joi', 'vin', 'sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'year' => ':count an',
+    'month' => ':count mês',
+    'week' => ':count setemane',
+    'day' => ':count zornade',
+    'hour' => ':count ore',
+    'minute' => ':count minût',
+    'second' => ':count secont',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy.php
new file mode 100644
index 0000000..c1b5439
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy.php
@@ -0,0 +1,76 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Tim Fish
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count jier|:count jierren',
+    'a_year' => 'ien jier|:count jierren',
+    'y' => ':count j',
+    'month' => ':count moanne|:count moannen',
+    'a_month' => 'ien moanne|:count moannen',
+    'm' => ':count moa.',
+    'week' => ':count wike|:count wiken',
+    'a_week' => 'in wike|:count wiken',
+    'a' => ':count w.',
+    'day' => ':count dei|:count dagen',
+    'a_day' => 'ien dei|:count dagen',
+    'd' => ':count d.',
+    'hour' => ':count oere|:count oeren',
+    'a_hour' => 'ien oere|:count oeren',
+    'h' => ':count o.',
+    'minute' => ':count minút|:count minuten',
+    'a_minute' => 'ien minút|:count minuten',
+    'min' => ':count min.',
+    'second' => ':count sekonde|:count sekonden',
+    'a_second' => 'in pear sekonden|:count sekonden',
+    's' => ':count s.',
+    'ago' => ':time lyn',
+    'from_now' => 'oer :time',
+    'diff_yesterday' => 'juster',
+    'diff_yesterday_regexp' => 'juster(?:\\s+om)?',
+    'diff_today' => 'hjoed',
+    'diff_today_regexp' => 'hjoed(?:\\s+om)?',
+    'diff_tomorrow' => 'moarn',
+    'diff_tomorrow_regexp' => 'moarn(?:\\s+om)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[hjoed om] LT',
+        'nextDay' => '[moarn om] LT',
+        'nextWeek' => 'dddd [om] LT',
+        'lastDay' => '[juster om] LT',
+        'lastWeek' => '[ôfrûne] dddd [om] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de');
+    },
+    'months' => ['jannewaris', 'febrewaris', 'maart', 'april', 'maaie', 'juny', 'july', 'augustus', 'septimber', 'oktober', 'novimber', 'desimber'],
+    'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
+    'mmm_suffix' => '.',
+    'weekdays' => ['snein', 'moandei', 'tiisdei', 'woansdei', 'tongersdei', 'freed', 'sneon'],
+    'weekdays_short' => ['si.', 'mo.', 'ti.', 'wo.', 'to.', 'fr.', 'so.'],
+    'weekdays_min' => ['Si', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'So'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' en '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_DE.php
new file mode 100644
index 0000000..8559d5c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_DE.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Jaunuwoa', 'Februwoa', 'Moaz', 'Aprell', 'Mai', 'Juni', 'Juli', 'August', 'Septamba', 'Oktoba', 'Nowamba', 'Dezamba'],
+    'months_short' => ['Jan', 'Feb', 'Moz', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Now', 'Dez'],
+    'weekdays' => ['Sinndag', 'Mondag', 'Dingsdag', 'Meddwäakj', 'Donnadag', 'Friedag', 'Sinnowend'],
+    'weekdays_short' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
+    'weekdays_min' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_NL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_NL.php
new file mode 100644
index 0000000..01cc96c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/fy_NL.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/fy.php', [
+    'formats' => [
+        'L' => 'DD-MM-YY',
+    ],
+    'months' => ['Jannewaris', 'Febrewaris', 'Maart', 'April', 'Maaie', 'Juny', 'July', 'Augustus', 'Septimber', 'Oktober', 'Novimber', 'Desimber'],
+    'months_short' => ['Jan', 'Feb', 'Mrt', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Snein', 'Moandei', 'Tiisdei', 'Woansdei', 'Tongersdei', 'Freed', 'Sneon'],
+    'weekdays_short' => ['Sn', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'Sn'],
+    'weekdays_min' => ['Sn', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'Sn'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga.php
new file mode 100644
index 0000000..9f07a26
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Thanks to André Silva : https://github.com/askpt
+ */
+
+return [
+    'year' => ':count bliain',
+    'a_year' => '{1}bliain|:count bliain',
+    'y' => ':countb',
+    'month' => ':count mí',
+    'a_month' => '{1}mí|:count mí',
+    'm' => ':countm',
+    'week' => ':count sheachtain',
+    'a_week' => '{1}sheachtain|:count sheachtain',
+    'w' => ':countsh',
+    'day' => ':count lá',
+    'a_day' => '{1}lá|:count lá',
+    'd' => ':countl',
+    'hour' => ':count uair an chloig',
+    'a_hour' => '{1}uair an chloig|:count uair an chloig',
+    'h' => ':countu',
+    'minute' => ':count nóiméad',
+    'a_minute' => '{1}nóiméad|:count nóiméad',
+    'min' => ':countn',
+    'second' => ':count soicind',
+    'a_second' => '{1}cúpla soicind|:count soicind',
+    's' => ':countso',
+    'ago' => ':time ó shin',
+    'from_now' => 'i :time',
+    'after' => ':time tar éis',
+    'before' => ':time roimh',
+    'diff_now' => 'anois',
+    'diff_today' => 'Inniu',
+    'diff_today_regexp' => 'Inniu(?:\\s+ag)?',
+    'diff_yesterday' => 'inné',
+    'diff_yesterday_regexp' => 'Inné(?:\\s+aig)?',
+    'diff_tomorrow' => 'amárach',
+    'diff_tomorrow_regexp' => 'Amárach(?:\\s+ag)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Inniu ag] LT',
+        'nextDay' => '[Amárach ag] LT',
+        'nextWeek' => 'dddd [ag] LT',
+        'lastDay' => '[Inné aig] LT',
+        'lastWeek' => 'dddd [seo caite] [ag] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['Eanáir', 'Feabhra', 'Márta', 'Aibreán', 'Bealtaine', 'Méitheamh', 'Iúil', 'Lúnasa', 'Meán Fómhair', 'Deaireadh Fómhair', 'Samhain', 'Nollaig'],
+    'months_short' => ['Eaná', 'Feab', 'Márt', 'Aibr', 'Beal', 'Méit', 'Iúil', 'Lúna', 'Meán', 'Deai', 'Samh', 'Noll'],
+    'weekdays' => ['Dé Domhnaigh', 'Dé Luain', 'Dé Máirt', 'Dé Céadaoin', 'Déardaoin', 'Dé hAoine', 'Dé Satharn'],
+    'weekdays_short' => ['Dom', 'Lua', 'Mái', 'Céa', 'Déa', 'hAo', 'Sat'],
+    'weekdays_min' => ['Do', 'Lu', 'Má', 'Ce', 'Dé', 'hA', 'Sa'],
+    'ordinal' => function ($number) {
+        return $number.($number === 1 ? 'd' : ($number % 10 === 2 ? 'na' : 'mh'));
+    },
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' agus '],
+    'meridiem' => ['r.n.', 'i.n.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga_IE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga_IE.php
new file mode 100644
index 0000000..d50630c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ga_IE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ga.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd.php
new file mode 100644
index 0000000..63d064d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd.php
@@ -0,0 +1,75 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Jon Ashdown
+ */
+return [
+    'year' => ':count bliadhna',
+    'a_year' => '{1}bliadhna|:count bliadhna',
+    'y' => ':count b.',
+    'month' => ':count mìosan',
+    'a_month' => '{1}mìos|:count mìosan',
+    'm' => ':count ms.',
+    'week' => ':count seachdainean',
+    'a_week' => '{1}seachdain|:count seachdainean',
+    'w' => ':count s.',
+    'day' => ':count latha',
+    'a_day' => '{1}latha|:count latha',
+    'd' => ':count l.',
+    'hour' => ':count uairean',
+    'a_hour' => '{1}uair|:count uairean',
+    'h' => ':count u.',
+    'minute' => ':count mionaidean',
+    'a_minute' => '{1}mionaid|:count mionaidean',
+    'min' => ':count md.',
+    'second' => ':count diogan',
+    'a_second' => '{1}beagan diogan|:count diogan',
+    's' => ':count d.',
+    'ago' => 'bho chionn :time',
+    'from_now' => 'ann an :time',
+    'diff_yesterday' => 'An-dè',
+    'diff_yesterday_regexp' => 'An-dè(?:\\s+aig)?',
+    'diff_today' => 'An-diugh',
+    'diff_today_regexp' => 'An-diugh(?:\\s+aig)?',
+    'diff_tomorrow' => 'A-màireach',
+    'diff_tomorrow_regexp' => 'A-màireach(?:\\s+aig)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[An-diugh aig] LT',
+        'nextDay' => '[A-màireach aig] LT',
+        'nextWeek' => 'dddd [aig] LT',
+        'lastDay' => '[An-dè aig] LT',
+        'lastWeek' => 'dddd [seo chaidh] [aig] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.($number === 1 ? 'd' : ($number % 10 === 2 ? 'na' : 'mh'));
+    },
+    'months' => ['Am Faoilleach', 'An Gearran', 'Am Màrt', 'An Giblean', 'An Cèitean', 'An t-Ògmhios', 'An t-Iuchar', 'An Lùnastal', 'An t-Sultain', 'An Dàmhair', 'An t-Samhain', 'An Dùbhlachd'],
+    'months_short' => ['Faoi', 'Gear', 'Màrt', 'Gibl', 'Cèit', 'Ògmh', 'Iuch', 'Lùn', 'Sult', 'Dàmh', 'Samh', 'Dùbh'],
+    'weekdays' => ['Didòmhnaich', 'Diluain', 'Dimàirt', 'Diciadain', 'Diardaoin', 'Dihaoine', 'Disathairne'],
+    'weekdays_short' => ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],
+    'weekdays_min' => ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' agus '],
+    'meridiem' => ['m', 'f'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd_GB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd_GB.php
new file mode 100644
index 0000000..80da9c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gd_GB.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/gd.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez.php
new file mode 100644
index 0000000..b8a2f0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/gez_ER.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ER.php
new file mode 100644
index 0000000..f19d1df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ER.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጠሐረ', 'ከተተ', 'መገበ', 'አኀዘ', 'ግንባት', 'ሠንየ', 'ሐመለ', 'ነሐሰ', 'ከረመ', 'ጠቀመ', 'ኀደረ', 'ኀሠሠ'],
+    'months_short' => ['ጠሐረ', 'ከተተ', 'መገበ', 'አኀዘ', 'ግንባ', 'ሠንየ', 'ሐመለ', 'ነሐሰ', 'ከረመ', 'ጠቀመ', 'ኀደረ', 'ኀሠሠ'],
+    'weekdays' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚት'],
+    'weekdays_short' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
+    'weekdays_min' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ጽባሕ', 'ምሴት'],
+
+    'month' => ':count ወርሕ', // less reliable
+    'm' => ':count ወርሕ', // less reliable
+    'a_month' => ':count ወርሕ', // less reliable
+
+    'week' => ':count ሰብዑ', // less reliable
+    'w' => ':count ሰብዑ', // less reliable
+    'a_week' => ':count ሰብዑ', // less reliable
+
+    'hour' => ':count አንትሙ', // less reliable
+    'h' => ':count አንትሙ', // less reliable
+    'a_hour' => ':count አንትሙ', // less reliable
+
+    'minute' => ':count ንኡስ', // less reliable
+    'min' => ':count ንኡስ', // less reliable
+    'a_minute' => ':count ንኡስ', // less reliable
+
+    'year' => ':count ዓመት',
+    'y' => ':count ዓመት',
+    'a_year' => ':count ዓመት',
+
+    'day' => ':count ዕለት',
+    'd' => ':count ዕለት',
+    'a_day' => ':count ዕለት',
+
+    'second' => ':count ካልእ',
+    's' => ':count ካልእ',
+    'a_second' => ':count ካልእ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ET.php
new file mode 100644
index 0000000..3933009
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gez_ET.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
+    'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
+    'weekdays' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚት'],
+    'weekdays_short' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
+    'weekdays_min' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ጽባሕ', 'ምሴት'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl.php
new file mode 100644
index 0000000..58c1db1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl.php
@@ -0,0 +1,95 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Fidel Pita
+ * - JD Isaacks
+ * - Diego Vilariño
+ * - Sebastian Thierer
+ */
+return [
+    'year' => ':count ano|:count anos',
+    'a_year' => 'un ano|:count anos',
+    'y' => ':count a.',
+    'month' => ':count mes|:count meses',
+    'a_month' => 'un mes|:count meses',
+    'm' => ':count mes.',
+    'week' => ':count semana|:count semanas',
+    'a_week' => 'unha semana|:count semanas',
+    'w' => ':count sem.',
+    'day' => ':count día|:count días',
+    'a_day' => 'un día|:count días',
+    'd' => ':count d.',
+    'hour' => ':count hora|:count horas',
+    'a_hour' => 'unha hora|:count horas',
+    'h' => ':count h.',
+    'minute' => ':count minuto|:count minutos',
+    'a_minute' => 'un minuto|:count minutos',
+    'min' => ':count min.',
+    'second' => ':count segundo|:count segundos',
+    'a_second' => 'uns segundos|:count segundos',
+    's' => ':count seg.',
+    'ago' => 'hai :time',
+    'from_now' => function ($time) {
+        if (str_starts_with($time, 'un')) {
+            return "n$time";
+        }
+
+        return "en $time";
+    },
+    'diff_now' => 'agora',
+    'diff_today' => 'hoxe',
+    'diff_today_regexp' => 'hoxe(?:\\s+ás)?',
+    'diff_yesterday' => 'onte',
+    'diff_yesterday_regexp' => 'onte(?:\\s+á)?',
+    'diff_tomorrow' => 'mañá',
+    'diff_tomorrow_regexp' => 'mañá(?:\\s+ás)?',
+    'after' => ':time despois',
+    'before' => ':time antes',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D [de] MMMM [de] YYYY',
+        'LLL' => 'D [de] MMMM [de] YYYY H:mm',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => function (\Carbon\CarbonInterface $current) {
+            return '[hoxe '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
+        },
+        'nextDay' => function (\Carbon\CarbonInterface $current) {
+            return '[mañá '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
+        },
+        'nextWeek' => function (\Carbon\CarbonInterface $current) {
+            return 'dddd ['.($current->hour !== 1 ? 'ás' : 'á').'] LT';
+        },
+        'lastDay' => function (\Carbon\CarbonInterface $current) {
+            return '[onte '.($current->hour !== 1 ? 'á' : 'a').'] LT';
+        },
+        'lastWeek' => function (\Carbon\CarbonInterface $current) {
+            return '[o] dddd [pasado '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['xaneiro', 'febreiro', 'marzo', 'abril', 'maio', 'xuño', 'xullo', 'agosto', 'setembro', 'outubro', 'novembro', 'decembro'],
+    'months_short' => ['xan.', 'feb.', 'mar.', 'abr.', 'mai.', 'xuñ.', 'xul.', 'ago.', 'set.', 'out.', 'nov.', 'dec.'],
+    'weekdays' => ['domingo', 'luns', 'martes', 'mércores', 'xoves', 'venres', 'sábado'],
+    'weekdays_short' => ['dom.', 'lun.', 'mar.', 'mér.', 'xov.', 'ven.', 'sáb.'],
+    'weekdays_min' => ['do', 'lu', 'ma', 'mé', 'xo', 've', 'sá'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' e '],
+    'meridiem' => ['a.m.', 'p.m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl_ES.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl_ES.php
new file mode 100644
index 0000000..12a565f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gl_ES.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/gl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom.php
new file mode 100644
index 0000000..2a0584f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/gom_Latn.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom_Latn.php
new file mode 100644
index 0000000..5e54a36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gom_Latn.php
@@ -0,0 +1,78 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return [
+    'year' => ':count voros|:count vorsam',
+    'y' => ':countv',
+    'month' => ':count mhoino|:count mhoine',
+    'm' => ':countmh',
+    'week' => ':count satolleacho|:count satolleache',
+    'w' => ':countsa|:countsa',
+    'day' => ':count dis',
+    'd' => ':countd',
+    'hour' => ':count hor|:count horam',
+    'h' => ':counth',
+    'minute' => ':count minute|:count mintam',
+    'min' => ':countm',
+    'second' => ':count second',
+    's' => ':counts',
+
+    'diff_today' => 'Aiz',
+    'diff_yesterday' => 'Kal',
+    'diff_tomorrow' => 'Faleam',
+    'formats' => [
+        'LT' => 'A h:mm [vazta]',
+        'LTS' => 'A h:mm:ss [vazta]',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY A h:mm [vazta]',
+        'LLLL' => 'dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]',
+        'llll' => 'ddd, D MMM YYYY, A h:mm [vazta]',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[Aiz] LT',
+        'nextDay' => '[Faleam] LT',
+        'nextWeek' => '[Ieta to] dddd[,] LT',
+        'lastDay' => '[Kal] LT',
+        'lastWeek' => '[Fatlo] dddd[,] LT',
+        'sameElse' => 'L',
+    ],
+
+    'months' => ['Janer', 'Febrer', 'Mars', 'Abril', 'Mai', 'Jun', 'Julai', 'Agost', 'Setembr', 'Otubr', 'Novembr', 'Dezembr'],
+    'months_short' => ['Jan.', 'Feb.', 'Mars', 'Abr.', 'Mai', 'Jun', 'Jul.', 'Ago.', 'Set.', 'Otu.', 'Nov.', 'Dez.'],
+    'weekdays' => ['Aitar', 'Somar', 'Mongllar', 'Budvar', 'Brestar', 'Sukrar', 'Son\'var'],
+    'weekdays_short' => ['Ait.', 'Som.', 'Mon.', 'Bud.', 'Bre.', 'Suk.', 'Son.'],
+    'weekdays_min' => ['Ai', 'Sm', 'Mo', 'Bu', 'Br', 'Su', 'Sn'],
+
+    'ordinal' => function ($number, $period) {
+        return $number.($period === 'D' ? 'er' : '');
+    },
+
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'rati';
+        }
+        if ($hour < 12) {
+            return 'sokalli';
+        }
+        if ($hour < 16) {
+            return 'donparam';
+        }
+        if ($hour < 20) {
+            return 'sanje';
+        }
+
+        return 'rati';
+    },
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' ani '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw.php
new file mode 100644
index 0000000..c5c850e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw.php
@@ -0,0 +1,49 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Christopher Dell
+ * - Akira Matsuda
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Henning Kiel
+ * - Aaron Patterson
+ * - Florian Hanke
+ */
+return [
+    'year' => ':count Johr',
+    'month' => ':count Monet',
+    'week' => ':count Woche',
+    'day' => ':count Tag',
+    'hour' => ':count Schtund',
+    'minute' => ':count Minute',
+    'second' => ':count Sekunde',
+    'weekdays' => ['Sunntig', 'Mäntig', 'Ziischtig', 'Mittwuch', 'Dunschtig', 'Friitig', 'Samschtig'],
+    'weekdays_short' => ['Su', 'Mä', 'Zi', 'Mi', 'Du', 'Fr', 'Sa'],
+    'weekdays_min' => ['Su', 'Mä', 'Zi', 'Mi', 'Du', 'Fr', 'Sa'],
+    'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'September', 'Oktober', 'November', 'Dezember'],
+    'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
+    'meridiem' => ['am Vormittag', 'am Namittag'],
+    'ordinal' => ':number.',
+    'list' => [', ', ' und '],
+    'diff_now' => 'now',
+    'diff_yesterday' => 'geschter',
+    'diff_tomorrow' => 'moorn',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'Do MMMM YYYY',
+        'LLL' => 'Do MMMM, HH:mm [Uhr]',
+        'LLLL' => 'dddd, Do MMMM YYYY, HH:mm [Uhr]',
+    ],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_CH.php
new file mode 100644
index 0000000..0dba9c5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_CH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/gsw.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_FR.php
new file mode 100644
index 0000000..e0e7b23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_FR.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/gsw.php', [
+    'meridiem' => ['vorm.', 'nam.'],
+    'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'Septämber', 'Oktoober', 'Novämber', 'Dezämber'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LLL' => 'Do MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, Do MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_LI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_LI.php
new file mode 100644
index 0000000..e0e7b23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gsw_LI.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/gsw.php', [
+    'meridiem' => ['vorm.', 'nam.'],
+    'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'Septämber', 'Oktoober', 'Novämber', 'Dezämber'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LLL' => 'Do MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, Do MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu.php
new file mode 100644
index 0000000..7c7872b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu.php
@@ -0,0 +1,82 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Kaushik Thanki
+ * - Josh Soref
+ */
+return [
+    'year' => 'એક વર્ષ|:count વર્ષ',
+    'y' => ':countવર્ષ|:countવર્ષો',
+    'month' => 'એક મહિનો|:count મહિનો',
+    'm' => ':countમહિનો|:countમહિના',
+    'week' => ':count અઠવાડિયું|:count અઠવાડિયા',
+    'w' => ':countઅઠ.|:countઅઠ.',
+    'day' => 'એક દિવસ|:count દિવસ',
+    'd' => ':countદિ.|:countદિ.',
+    'hour' => 'એક કલાક|:count કલાક',
+    'h' => ':countક.|:countક.',
+    'minute' => 'એક મિનિટ|:count મિનિટ',
+    'min' => ':countમિ.|:countમિ.',
+    'second' => 'અમુક પળો|:count સેકંડ',
+    's' => ':countસે.|:countસે.',
+    'ago' => ':time પેહલા',
+    'from_now' => ':time મા',
+    'after' => ':time પછી',
+    'before' => ':time પહેલા',
+    'diff_now' => 'હમણાં',
+    'diff_today' => 'આજ',
+    'diff_yesterday' => 'ગઇકાલે',
+    'diff_tomorrow' => 'કાલે',
+    'formats' => [
+        'LT' => 'A h:mm વાગ્યે',
+        'LTS' => 'A h:mm:ss વાગ્યે',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm વાગ્યે',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm વાગ્યે',
+    ],
+    'calendar' => [
+        'sameDay' => '[આજ] LT',
+        'nextDay' => '[કાલે] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[ગઇકાલે] LT',
+        'lastWeek' => '[પાછલા] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'રાત';
+        }
+        if ($hour < 10) {
+            return 'સવાર';
+        }
+        if ($hour < 17) {
+            return 'બપોર';
+        }
+        if ($hour < 20) {
+            return 'સાંજ';
+        }
+
+        return 'રાત';
+    },
+    'months' => ['જાન્યુઆરી', 'ફેબ્રુઆરી', 'માર્ચ', 'એપ્રિલ', 'મે', 'જૂન', 'જુલાઈ', 'ઑગસ્ટ', 'સપ્ટેમ્બર', 'ઑક્ટ્બર', 'નવેમ્બર', 'ડિસેમ્બર'],
+    'months_short' => ['જાન્યુ.', 'ફેબ્રુ.', 'માર્ચ', 'એપ્રિ.', 'મે', 'જૂન', 'જુલા.', 'ઑગ.', 'સપ્ટે.', 'ઑક્ટ્.', 'નવે.', 'ડિસે.'],
+    'weekdays' => ['રવિવાર', 'સોમવાર', 'મંગળવાર', 'બુધ્વાર', 'ગુરુવાર', 'શુક્રવાર', 'શનિવાર'],
+    'weekdays_short' => ['રવિ', 'સોમ', 'મંગળ', 'બુધ્', 'ગુરુ', 'શુક્ર', 'શનિ'],
+    'weekdays_min' => ['ર', 'સો', 'મં', 'બુ', 'ગુ', 'શુ', 'શ'],
+    'list' => [', ', ' અને '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu_IN.php
new file mode 100644
index 0000000..c578440
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gu_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/gu.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/guz.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/guz.php
new file mode 100644
index 0000000..aa9769c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/guz.php
@@ -0,0 +1,46 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Ma', 'Mo'],
+    'weekdays' => ['Chumapiri', 'Chumatato', 'Chumaine', 'Chumatano', 'Aramisi', 'Ichuma', 'Esabato'],
+    'weekdays_short' => ['Cpr', 'Ctt', 'Cmn', 'Cmt', 'Ars', 'Icm', 'Est'],
+    'weekdays_min' => ['Cpr', 'Ctt', 'Cmn', 'Cmt', 'Ars', 'Icm', 'Est'],
+    'months' => ['Chanuari', 'Feburari', 'Machi', 'Apiriri', 'Mei', 'Juni', 'Chulai', 'Agosti', 'Septemba', 'Okitoba', 'Nobemba', 'Disemba'],
+    'months_short' => ['Can', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Cul', 'Agt', 'Sep', 'Okt', 'Nob', 'Dis'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'month' => ':count omotunyi', // less reliable
+    'm' => ':count omotunyi', // less reliable
+    'a_month' => ':count omotunyi', // less reliable
+
+    'week' => ':count isano naibere', // less reliable
+    'w' => ':count isano naibere', // less reliable
+    'a_week' => ':count isano naibere', // less reliable
+
+    'second' => ':count ibere', // less reliable
+    's' => ':count ibere', // less reliable
+    'a_second' => ':count ibere', // less reliable
+
+    'year' => ':count omwaka',
+    'y' => ':count omwaka',
+    'a_year' => ':count omwaka',
+
+    'day' => ':count rituko',
+    'd' => ':count rituko',
+    'a_day' => ':count rituko',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv.php
new file mode 100644
index 0000000..7c52b94
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/gv_GB.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv_GB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv_GB.php
new file mode 100644
index 0000000..6b1168f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/gv_GB.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Alastair McKinstry    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Jerrey-geuree', 'Toshiaght-arree', 'Mayrnt', 'Averil', 'Boaldyn', 'Mean-souree', 'Jerrey-souree', 'Luanistyn', 'Mean-fouyir', 'Jerrey-fouyir', 'Mee Houney', 'Mee ny Nollick'],
+    'months_short' => ['J-guer', 'T-arree', 'Mayrnt', 'Avrril', 'Boaldyn', 'M-souree', 'J-souree', 'Luanistyn', 'M-fouyir', 'J-fouyir', 'M.Houney', 'M.Nollick'],
+    'weekdays' => ['Jedoonee', 'Jelhein', 'Jemayrt', 'Jercean', 'Jerdein', 'Jeheiney', 'Jesarn'],
+    'weekdays_short' => ['Jed', 'Jel', 'Jem', 'Jerc', 'Jerd', 'Jeh', 'Jes'],
+    'weekdays_min' => ['Jed', 'Jel', 'Jem', 'Jerc', 'Jerd', 'Jeh', 'Jes'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count blein',
+    'y' => ':count blein',
+    'a_year' => ':count blein',
+
+    'month' => ':count mee',
+    'm' => ':count mee',
+    'a_month' => ':count mee',
+
+    'week' => ':count shiaghtin',
+    'w' => ':count shiaghtin',
+    'a_week' => ':count shiaghtin',
+
+    'day' => ':count laa',
+    'd' => ':count laa',
+    'a_day' => ':count laa',
+
+    'hour' => ':count oor',
+    'h' => ':count oor',
+    'a_hour' => ':count oor',
+
+    'minute' => ':count feer veg',
+    'min' => ':count feer veg',
+    'a_minute' => ':count feer veg',
+
+    'second' => ':count derrey',
+    's' => ':count derrey',
+    'a_second' => ':count derrey',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha.php
new file mode 100644
index 0000000..cd8e34d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM, YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM, YYYY HH:mm',
+    ],
+    'months' => ['Janairu', 'Faburairu', 'Maris', 'Afirilu', 'Mayu', 'Yuni', 'Yuli', 'Agusta', 'Satumba', 'Oktoba', 'Nuwamba', 'Disamba'],
+    'months_short' => ['Jan', 'Fab', 'Mar', 'Afi', 'May', 'Yun', 'Yul', 'Agu', 'Sat', 'Okt', 'Nuw', 'Dis'],
+    'weekdays' => ['Lahadi', 'Litini', 'Talata', 'Laraba', 'Alhamis', 'Jumaʼa', 'Asabar'],
+    'weekdays_short' => ['Lah', 'Lit', 'Tal', 'Lar', 'Alh', 'Jum', 'Asa'],
+    'weekdays_min' => ['Lh', 'Li', 'Ta', 'Lr', 'Al', 'Ju', 'As'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'shekara :count',
+    'y' => 'shekara :count',
+    'a_year' => 'shekara :count',
+
+    'month' => ':count wátàa',
+    'm' => ':count wátàa',
+    'a_month' => ':count wátàa',
+
+    'week' => ':count mako',
+    'w' => ':count mako',
+    'a_week' => ':count mako',
+
+    'day' => ':count rana',
+    'd' => ':count rana',
+    'a_day' => ':count rana',
+
+    'hour' => ':count áwàa',
+    'h' => ':count áwàa',
+    'a_hour' => ':count áwàa',
+
+    'minute' => 'minti :count',
+    'min' => 'minti :count',
+    'a_minute' => 'minti :count',
+
+    'second' => ':count ná bíyú',
+    's' => ':count ná bíyú',
+    'a_second' => ':count ná bíyú',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_GH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_GH.php
new file mode 100644
index 0000000..bce5e41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_GH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ha.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NE.php
new file mode 100644
index 0000000..bce5e41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ha.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NG.php
new file mode 100644
index 0000000..bce5e41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ha_NG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ha.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak.php
new file mode 100644
index 0000000..6c3260e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/hak_TW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak_TW.php
new file mode 100644
index 0000000..fe23986
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hak_TW.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY年MM月DD日',
+    ],
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
+    'weekdays' => ['禮拜日', '禮拜一', '禮拜二', '禮拜三', '禮拜四', '禮拜五', '禮拜六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['上晝', '下晝'],
+
+    'year' => ':count ngien11',
+    'y' => ':count ngien11',
+    'a_year' => ':count ngien11',
+
+    'month' => ':count ngie̍t',
+    'm' => ':count ngie̍t',
+    'a_month' => ':count ngie̍t',
+
+    'week' => ':count lî-pai',
+    'w' => ':count lî-pai',
+    'a_week' => ':count lî-pai',
+
+    'day' => ':count ngit',
+    'd' => ':count ngit',
+    'a_day' => ':count ngit',
+
+    'hour' => ':count sṳ̀',
+    'h' => ':count sṳ̀',
+    'a_hour' => ':count sṳ̀',
+
+    'minute' => ':count fûn',
+    'min' => ':count fûn',
+    'a_minute' => ':count fûn',
+
+    'second' => ':count miéu',
+    's' => ':count miéu',
+    'a_second' => ':count miéu',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/haw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/haw.php
new file mode 100644
index 0000000..51715d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/haw.php
@@ -0,0 +1,53 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'months' => ['Ianuali', 'Pepeluali', 'Malaki', 'ʻApelila', 'Mei', 'Iune', 'Iulai', 'ʻAukake', 'Kepakemapa', 'ʻOkakopa', 'Nowemapa', 'Kekemapa'],
+    'months_short' => ['Ian.', 'Pep.', 'Mal.', 'ʻAp.', 'Mei', 'Iun.', 'Iul.', 'ʻAu.', 'Kep.', 'ʻOk.', 'Now.', 'Kek.'],
+    'weekdays' => ['Lāpule', 'Poʻakahi', 'Poʻalua', 'Poʻakolu', 'Poʻahā', 'Poʻalima', 'Poʻaono'],
+    'weekdays_short' => ['LP', 'P1', 'P2', 'P3', 'P4', 'P5', 'P6'],
+    'weekdays_min' => ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm a',
+    ],
+
+    'year' => ':count makahiki',
+    'y' => ':count makahiki',
+    'a_year' => ':count makahiki',
+
+    'month' => ':count mahina',
+    'm' => ':count mahina',
+    'a_month' => ':count mahina',
+
+    'week' => ':count pule',
+    'w' => ':count pule',
+    'a_week' => ':count pule',
+
+    'day' => ':count lā',
+    'd' => ':count lā',
+    'a_day' => ':count lā',
+
+    'hour' => ':count hola',
+    'h' => ':count hola',
+    'a_hour' => ':count hola',
+
+    'minute' => ':count minuke',
+    'min' => ':count minuke',
+    'a_minute' => ':count minuke',
+
+    'second' => ':count lua',
+    's' => ':count lua',
+    'a_second' => ':count lua',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he.php
new file mode 100644
index 0000000..c3fb3e9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he.php
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Daniel Cohen Gindi
+ * - JD Isaacks
+ * - Itai Nathaniel
+ * - GabMic
+ * - Yaakov Dahan (yakidahan)
+ */
+return [
+    'year' => 'שנה|{2}שנתיים|:count שנים',
+    'y' => 'שנה|:count שנ׳',
+    'month' => 'חודש|{2}חודשיים|:count חודשים',
+    'm' => 'חודש|:count חו׳',
+    'week' => 'שבוע|{2}שבועיים|:count שבועות',
+    'w' => 'שבוע|:count שב׳',
+    'day' => 'יום|{2}יומיים|:count ימים',
+    'd' => 'יום|:count ימ׳',
+    'hour' => 'שעה|{2}שעתיים|:count שעות',
+    'h' => 'שעה|:count שע׳',
+    'minute' => 'דקה|{2}שתי דקות|:count דקות',
+    'min' => 'דקה|:count דק׳',
+    'second' => 'שנייה|:count שניות',
+    'a_second' => 'כמה שניות|:count שניות',
+    's' => 'שניה|:count שנ׳',
+    'ago' => 'לפני :time',
+    'from_now' => 'בעוד :time מעכשיו',
+    'after' => 'אחרי :time',
+    'before' => 'לפני :time',
+    'diff_now' => 'עכשיו',
+    'diff_today' => 'היום',
+    'diff_today_regexp' => 'היום(?:\\s+ב־)?',
+    'diff_yesterday' => 'אתמול',
+    'diff_yesterday_regexp' => 'אתמול(?:\\s+ב־)?',
+    'diff_tomorrow' => 'מחר',
+    'diff_tomorrow_regexp' => 'מחר(?:\\s+ב־)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D [ב]MMMM YYYY',
+        'LLL' => 'D [ב]MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D [ב]MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[היום ב־]LT',
+        'nextDay' => '[מחר ב־]LT',
+        'nextWeek' => 'dddd [בשעה] LT',
+        'lastDay' => '[אתמול ב־]LT',
+        'lastWeek' => '[ביום] dddd [האחרון בשעה] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour, $minute, $isLower) {
+        if ($hour < 5) {
+            return 'לפנות בוקר';
+        }
+        if ($hour < 10) {
+            return 'בבוקר';
+        }
+        if ($hour < 12) {
+            return $isLower ? 'לפנה"צ' : 'לפני הצהריים';
+        }
+        if ($hour < 18) {
+            return $isLower ? 'אחה"צ' : 'אחרי הצהריים';
+        }
+
+        return 'בערב';
+    },
+    'months' => ['ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר'],
+    'months_short' => ['ינו׳', 'פבר׳', 'מרץ', 'אפר׳', 'מאי', 'יוני', 'יולי', 'אוג׳', 'ספט׳', 'אוק׳', 'נוב׳', 'דצמ׳'],
+    'weekdays' => ['ראשון', 'שני', 'שלישי', 'רביעי', 'חמישי', 'שישי', 'שבת'],
+    'weekdays_short' => ['א׳', 'ב׳', 'ג׳', 'ד׳', 'ה׳', 'ו׳', 'ש׳'],
+    'weekdays_min' => ['א', 'ב', 'ג', 'ד', 'ה', 'ו', 'ש'],
+    'list' => [', ', ' ו -'],
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he_IL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he_IL.php
new file mode 100644
index 0000000..57c4fec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/he_IL.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/he.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi.php
new file mode 100644
index 0000000..70c57a2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi.php
@@ -0,0 +1,82 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - abhimanyu003
+ * - Josh Soref
+ * - JD Isaacks
+ */
+return [
+    'year' => 'एक वर्ष|:count वर्ष',
+    'y' => '1 वर्ष|:count वर्षों',
+    'month' => 'एक महीने|:count महीने',
+    'm' => '1 माह|:count महीने',
+    'week' => '1 सप्ताह|:count सप्ताह',
+    'w' => '1 सप्ताह|:count सप्ताह',
+    'day' => 'एक दिन|:count दिन',
+    'd' => '1 दिन|:count दिनों',
+    'hour' => 'एक घंटा|:count घंटे',
+    'h' => '1 घंटा|:count घंटे',
+    'minute' => 'एक मिनट|:count मिनट',
+    'min' => '1 मिनट|:count मिनटों',
+    'second' => 'कुछ ही क्षण|:count सेकंड',
+    's' => '1 सेकंड|:count सेकंड',
+    'ago' => ':time पहले',
+    'from_now' => ':time में',
+    'after' => ':time के बाद',
+    'before' => ':time के पहले',
+    'diff_now' => 'अब',
+    'diff_today' => 'आज',
+    'diff_yesterday' => 'कल',
+    'diff_tomorrow' => 'कल',
+    'formats' => [
+        'LT' => 'A h:mm बजे',
+        'LTS' => 'A h:mm:ss बजे',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm बजे',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm बजे',
+    ],
+    'calendar' => [
+        'sameDay' => '[आज] LT',
+        'nextDay' => '[कल] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[कल] LT',
+        'lastWeek' => '[पिछले] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'रात';
+        }
+        if ($hour < 10) {
+            return 'सुबह';
+        }
+        if ($hour < 17) {
+            return 'दोपहर';
+        }
+        if ($hour < 20) {
+            return 'शाम';
+        }
+
+        return 'रात';
+    },
+    'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जन.', 'फ़र.', 'मार्च', 'अप्रै.', 'मई', 'जून', 'जुल.', 'अग.', 'सित.', 'अक्टू.', 'नव.', 'दिस.'],
+    'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरूवार', 'शुक्रवार', 'शनिवार'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरू', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
+    'list' => [', ', ' और '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi_IN.php
new file mode 100644
index 0000000..ac30299
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hi_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/hi.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif.php
new file mode 100644
index 0000000..65791dd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/hif_FJ.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif_FJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif_FJ.php
new file mode 100644
index 0000000..30ad5e7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hif_FJ.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    akhilesh.k@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'dddd DD MMM YYYY',
+    ],
+    'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+    'weekdays' => ['Ravivar', 'Somvar', 'Mangalvar', 'Budhvar', 'Guruvar', 'Shukravar', 'Shanivar'],
+    'weekdays_short' => ['Ravi', 'Som', 'Mangal', 'Budh', 'Guru', 'Shukra', 'Shani'],
+    'weekdays_min' => ['Ravi', 'Som', 'Mangal', 'Budh', 'Guru', 'Shukra', 'Shani'],
+    'meridiem' => ['Purvahan', 'Aparaahna'],
+
+    'hour' => ':count minit', // less reliable
+    'h' => ':count minit', // less reliable
+    'a_hour' => ':count minit', // less reliable
+
+    'year' => ':count saal',
+    'y' => ':count saal',
+    'a_year' => ':count saal',
+
+    'month' => ':count Mahina',
+    'm' => ':count Mahina',
+    'a_month' => ':count Mahina',
+
+    'week' => ':count Hafta',
+    'w' => ':count Hafta',
+    'a_week' => ':count Hafta',
+
+    'day' => ':count Din',
+    'd' => ':count Din',
+    'a_day' => ':count Din',
+
+    'minute' => ':count Minit',
+    'min' => ':count Minit',
+    'a_minute' => ':count Minit',
+
+    'second' => ':count Second',
+    's' => ':count Second',
+    'a_second' => ':count Second',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne.php
new file mode 100644
index 0000000..4bcb05c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/hne_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne_IN.php
new file mode 100644
index 0000000..a5ca758
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hne_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अपरेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितमबर', 'अकटूबर', 'नवमबर', 'दिसमबर'],
+    'months_short' => ['जन', 'फर', 'मार्च', 'अप', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अकटू', 'नव', 'दिस'],
+    'weekdays' => ['इतवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'बिरसपत', 'सुकरवार', 'सनिवार'],
+    'weekdays_short' => ['इत', 'सोम', 'मंग', 'बुध', 'बिर', 'सुक', 'सनि'],
+    'weekdays_min' => ['इत', 'सोम', 'मंग', 'बुध', 'बिर', 'सुक', 'सनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['बिहिनियाँ', 'मंझनियाँ'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr.php
new file mode 100644
index 0000000..acb7e92
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr.php
@@ -0,0 +1,108 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Tim Fish
+ * - shaishavgandhi05
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - tomhorvat
+ * - Josh Soref
+ * - François B
+ * - shaishavgandhi05
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - tomhorvat
+ * - Stjepan Majdak
+ * - Vanja Retkovac (vr00)
+ */
+return [
+    'year' => ':count godinu|:count godine|:count godina',
+    'y' => ':count god.|:count god.|:count god.',
+    'month' => ':count mjesec|:count mjeseca|:count mjeseci',
+    'm' => ':count mj.|:count mj.|:count mj.',
+    'week' => ':count tjedan|:count tjedna|:count tjedana',
+    'w' => ':count tj.|:count tj.|:count tj.',
+    'day' => ':count dan|:count dana|:count dana',
+    'd' => ':count d.|:count d.|:count d.',
+    'hour' => ':count sat|:count sata|:count sati',
+    'h' => ':count sat|:count sata|:count sati',
+    'minute' => ':count minutu|:count minute|:count minuta',
+    'min' => ':count min.|:count min.|:count min.',
+    'second' => ':count sekundu|:count sekunde|:count sekundi',
+    'a_second' => 'nekoliko sekundi|:count sekunde|:count sekundi',
+    's' => ':count sek.|:count sek.|:count sek.',
+    'ago' => 'prije :time',
+    'from_now' => 'za :time',
+    'after' => ':time poslije',
+    'before' => ':time prije',
+    'diff_now' => 'sad',
+    'diff_today' => 'danas',
+    'diff_today_regexp' => 'danas(?:\\s+u)?',
+    'diff_yesterday' => 'jučer',
+    'diff_yesterday_regexp' => 'jučer(?:\\s+u)?',
+    'diff_tomorrow' => 'sutra',
+    'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
+    'diff_before_yesterday' => 'prekjučer',
+    'diff_after_tomorrow' => 'prekosutra',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'D. M. YYYY.',
+        'LL' => 'D. MMMM YYYY.',
+        'LLL' => 'D. MMMM YYYY. H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY. H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[danas u] LT',
+        'nextDay' => '[sutra u] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[u] [nedjelju] [u] LT';
+                case 3:
+                    return '[u] [srijedu] [u] LT';
+                case 6:
+                    return '[u] [subotu] [u] LT';
+                default:
+                    return '[u] dddd [u] LT';
+            }
+        },
+        'lastDay' => '[jučer u] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                case 3:
+                    return '[prošlu] dddd [u] LT';
+                case 6:
+                    return '[prošle] [subote] [u] LT';
+                default:
+                    return '[prošli] dddd [u] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['siječnja', 'veljače', 'ožujka', 'travnja', 'svibnja', 'lipnja', 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenoga', 'prosinca'],
+    'months_standalone' => ['siječanj', 'veljača', 'ožujak', 'travanj', 'svibanj', 'lipanj', 'srpanj', 'kolovoz', 'rujan', 'listopad', 'studeni', 'prosinac'],
+    'months_short' => ['sij.', 'velj.', 'ožu.', 'tra.', 'svi.', 'lip.', 'srp.', 'kol.', 'ruj.', 'lis.', 'stu.', 'pro.'],
+    'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['nedjelju', 'ponedjeljak', 'utorak', 'srijedu', 'četvrtak', 'petak', 'subotu'],
+    'weekdays_standalone' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
+    'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' i '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_BA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_BA.php
new file mode 100644
index 0000000..7763a45
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_BA.php
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - DarkoDevelop
+ */
+return array_replace_recursive(require __DIR__.'/hr.php', [
+    'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned', 'pon', 'uto', 'sri', 'čet', 'pet', 'sub'],
+    'weekdays_min' => ['ned', 'pon', 'uto', 'sri', 'čet', 'pet', 'sub'],
+    'months' => ['siječnja', 'veljače', 'ožujka', 'travnja', 'svibnja', 'lipnja', 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenoga', 'prosinca'],
+    'months_short' => ['sij', 'velj', 'ožu', 'tra', 'svi', 'lip', 'srp', 'kol', 'ruj', 'lis', 'stu', 'pro'],
+    'months_standalone' => ['siječanj', 'veljača', 'ožujak', 'travanj', 'svibanj', 'lipanj', 'srpanj', 'kolovoz', 'rujan', 'listopad', 'studeni', 'prosinac'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D. M. yy.',
+        'LL' => 'D. MMM YYYY.',
+        'LLL' => 'D. MMMM YYYY. HH:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY. HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_HR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_HR.php
new file mode 100644
index 0000000..2ae141d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hr_HR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/hr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb.php
new file mode 100644
index 0000000..3537b8b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/hsb_DE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb_DE.php
new file mode 100644
index 0000000..6ba2271
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hsb_DE.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Information from Michael Wolf Andrzej Krzysztofowicz ankry@mif.pg.gda.pl
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'DD. MMMM YYYY',
+        'LLL' => 'DD. MMMM, HH:mm [hodź.]',
+        'LLLL' => 'dddd, DD. MMMM YYYY, HH:mm [hodź.]',
+    ],
+    'months' => ['januara', 'februara', 'měrca', 'apryla', 'meje', 'junija', 'julija', 'awgusta', 'septembra', 'oktobra', 'nowembra', 'decembra'],
+    'months_short' => ['Jan', 'Feb', 'Měr', 'Apr', 'Mej', 'Jun', 'Jul', 'Awg', 'Sep', 'Okt', 'Now', 'Dec'],
+    'weekdays' => ['Njedźela', 'Póndźela', 'Wutora', 'Srjeda', 'Štvórtk', 'Pjatk', 'Sobota'],
+    'weekdays_short' => ['Nj', 'Pó', 'Wu', 'Sr', 'Št', 'Pj', 'So'],
+    'weekdays_min' => ['Nj', 'Pó', 'Wu', 'Sr', 'Št', 'Pj', 'So'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count lěto',
+    'y' => ':count lěto',
+    'a_year' => ':count lěto',
+
+    'month' => ':count měsac',
+    'm' => ':count měsac',
+    'a_month' => ':count měsac',
+
+    'week' => ':count tydźeń',
+    'w' => ':count tydźeń',
+    'a_week' => ':count tydźeń',
+
+    'day' => ':count dźeń',
+    'd' => ':count dźeń',
+    'a_day' => ':count dźeń',
+
+    'hour' => ':count hodźina',
+    'h' => ':count hodźina',
+    'a_hour' => ':count hodźina',
+
+    'minute' => ':count chwila',
+    'min' => ':count chwila',
+    'a_minute' => ':count chwila',
+
+    'second' => ':count druhi',
+    's' => ':count druhi',
+    'a_second' => ':count druhi',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht.php
new file mode 100644
index 0000000..ebd12ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ht_HT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht_HT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht_HT.php
new file mode 100644
index 0000000..139b813
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ht_HT.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['janvye', 'fevriye', 'mas', 'avril', 'me', 'jen', 'jiyè', 'out', 'septanm', 'oktòb', 'novanm', 'desanm'],
+    'months_short' => ['jan', 'fev', 'mas', 'avr', 'me', 'jen', 'jiy', 'out', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['dimanch', 'lendi', 'madi', 'mèkredi', 'jedi', 'vandredi', 'samdi'],
+    'weekdays_short' => ['dim', 'len', 'mad', 'mèk', 'jed', 'van', 'sam'],
+    'weekdays_min' => ['dim', 'len', 'mad', 'mèk', 'jed', 'van', 'sam'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count lane',
+    'y' => ':count lane',
+    'a_year' => ':count lane',
+
+    'month' => 'mwa :count',
+    'm' => 'mwa :count',
+    'a_month' => 'mwa :count',
+
+    'week' => 'semèn :count',
+    'w' => 'semèn :count',
+    'a_week' => 'semèn :count',
+
+    'day' => ':count jou',
+    'd' => ':count jou',
+    'a_day' => ':count jou',
+
+    'hour' => ':count lè',
+    'h' => ':count lè',
+    'a_hour' => ':count lè',
+
+    'minute' => ':count minit',
+    'min' => ':count minit',
+    'a_minute' => ':count minit',
+
+    'second' => ':count segonn',
+    's' => ':count segonn',
+    'a_second' => ':count segonn',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu.php
new file mode 100644
index 0000000..673f9dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu.php
@@ -0,0 +1,115 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Adam Brunner
+ * - Brett Johnson
+ * - balping
+ */
+$huWeekEndings = ['vasárnap', 'hétfőn', 'kedden', 'szerdán', 'csütörtökön', 'pénteken', 'szombaton'];
+
+return [
+    'year' => ':count év',
+    'y' => ':count év',
+    'month' => ':count hónap',
+    'm' => ':count hónap',
+    'week' => ':count hét',
+    'w' => ':count hét',
+    'day' => ':count nap',
+    'd' => ':count nap',
+    'hour' => ':count óra',
+    'h' => ':count óra',
+    'minute' => ':count perc',
+    'min' => ':count perc',
+    'second' => ':count másodperc',
+    's' => ':count másodperc',
+    'ago' => ':time',
+    'from_now' => ':time múlva',
+    'after' => ':time később',
+    'before' => ':time korábban',
+    'year_ago' => ':count éve',
+    'y_ago' => ':count éve',
+    'month_ago' => ':count hónapja',
+    'm_ago' => ':count hónapja',
+    'week_ago' => ':count hete',
+    'w_ago' => ':count hete',
+    'day_ago' => ':count napja',
+    'd_ago' => ':count napja',
+    'hour_ago' => ':count órája',
+    'h_ago' => ':count órája',
+    'minute_ago' => ':count perce',
+    'min_ago' => ':count perce',
+    'second_ago' => ':count másodperce',
+    's_ago' => ':count másodperce',
+    'year_after' => ':count évvel',
+    'y_after' => ':count évvel',
+    'month_after' => ':count hónappal',
+    'm_after' => ':count hónappal',
+    'week_after' => ':count héttel',
+    'w_after' => ':count héttel',
+    'day_after' => ':count nappal',
+    'd_after' => ':count nappal',
+    'hour_after' => ':count órával',
+    'h_after' => ':count órával',
+    'minute_after' => ':count perccel',
+    'min_after' => ':count perccel',
+    'second_after' => ':count másodperccel',
+    's_after' => ':count másodperccel',
+    'year_before' => ':count évvel',
+    'y_before' => ':count évvel',
+    'month_before' => ':count hónappal',
+    'm_before' => ':count hónappal',
+    'week_before' => ':count héttel',
+    'w_before' => ':count héttel',
+    'day_before' => ':count nappal',
+    'd_before' => ':count nappal',
+    'hour_before' => ':count órával',
+    'h_before' => ':count órával',
+    'minute_before' => ':count perccel',
+    'min_before' => ':count perccel',
+    'second_before' => ':count másodperccel',
+    's_before' => ':count másodperccel',
+    'months' => ['január', 'február', 'március', 'április', 'május', 'június', 'július', 'augusztus', 'szeptember', 'október', 'november', 'december'],
+    'months_short' => ['jan.', 'feb.', 'márc.', 'ápr.', 'máj.', 'jún.', 'júl.', 'aug.', 'szept.', 'okt.', 'nov.', 'dec.'],
+    'weekdays' => ['vasárnap', 'hétfő', 'kedd', 'szerda', 'csütörtök', 'péntek', 'szombat'],
+    'weekdays_short' => ['vas', 'hét', 'kedd', 'sze', 'csüt', 'pén', 'szo'],
+    'weekdays_min' => ['v', 'h', 'k', 'sze', 'cs', 'p', 'sz'],
+    'ordinal' => ':number.',
+    'diff_now' => 'most',
+    'diff_today' => 'ma',
+    'diff_yesterday' => 'tegnap',
+    'diff_tomorrow' => 'holnap',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'YYYY.MM.DD.',
+        'LL' => 'YYYY. MMMM D.',
+        'LLL' => 'YYYY. MMMM D. H:mm',
+        'LLLL' => 'YYYY. MMMM D., dddd H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ma] LT[-kor]',
+        'nextDay' => '[holnap] LT[-kor]',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) use ($huWeekEndings) {
+            return '['.$huWeekEndings[$date->dayOfWeek].'] LT[-kor]';
+        },
+        'lastDay' => '[tegnap] LT[-kor]',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) use ($huWeekEndings) {
+            return '[múlt '.$huWeekEndings[$date->dayOfWeek].'] LT[-kor]';
+        },
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['DE', 'DU'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' és '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu_HU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu_HU.php
new file mode 100644
index 0000000..b33a631
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hu_HU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/hu.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy.php
new file mode 100644
index 0000000..8b12994
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy.php
@@ -0,0 +1,95 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - mhamlet
+ */
+return [
+    'year' => ':count տարի',
+    'a_year' => 'տարի|:count տարի',
+    'y' => ':countտ',
+    'month' => ':count ամիս',
+    'a_month' => 'ամիս|:count ամիս',
+    'm' => ':countամ',
+    'week' => ':count շաբաթ',
+    'a_week' => 'շաբաթ|:count շաբաթ',
+    'w' => ':countշ',
+    'day' => ':count օր',
+    'a_day' => 'օր|:count օր',
+    'd' => ':countօր',
+    'hour' => ':count ժամ',
+    'a_hour' => 'ժամ|:count ժամ',
+    'h' => ':countժ',
+    'minute' => ':count րոպե',
+    'a_minute' => 'րոպե|:count րոպե',
+    'min' => ':countր',
+    'second' => ':count վայրկյան',
+    'a_second' => 'մի քանի վայրկյան|:count վայրկյան',
+    's' => ':countվրկ',
+    'ago' => ':time առաջ',
+    'from_now' => ':timeից',
+    'after' => ':time հետո',
+    'before' => ':time առաջ',
+    'diff_now' => 'հիմա',
+    'diff_today' => 'այսօր',
+    'diff_yesterday' => 'երեկ',
+    'diff_tomorrow' => 'վաղը',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY թ.',
+        'LLL' => 'D MMMM YYYY թ., HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY թ., HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[այսօր] LT',
+        'nextDay' => '[վաղը] LT',
+        'nextWeek' => 'dddd [օրը ժամը] LT',
+        'lastDay' => '[երեկ] LT',
+        'lastWeek' => '[անցած] dddd [օրը ժամը] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'DDD':
+            case 'w':
+            case 'W':
+            case 'DDDo':
+                return $number.($number === 1 ? '-ին' : '-րդ');
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'գիշերվա';
+        }
+        if ($hour < 12) {
+            return 'առավոտվա';
+        }
+        if ($hour < 17) {
+            return 'ցերեկվա';
+        }
+
+        return 'երեկոյան';
+    },
+    'months' => ['հունվարի', 'փետրվարի', 'մարտի', 'ապրիլի', 'մայիսի', 'հունիսի', 'հուլիսի', 'օգոստոսի', 'սեպտեմբերի', 'հոկտեմբերի', 'նոյեմբերի', 'դեկտեմբերի'],
+    'months_standalone' => ['հունվար', 'փետրվար', 'մարտ', 'ապրիլ', 'մայիս', 'հունիս', 'հուլիս', 'օգոստոս', 'սեպտեմբեր', 'հոկտեմբեր', 'նոյեմբեր', 'դեկտեմբեր'],
+    'months_short' => ['հնվ', 'փտր', 'մրտ', 'ապր', 'մյս', 'հնս', 'հլս', 'օգս', 'սպտ', 'հկտ', 'նմբ', 'դկտ'],
+    'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['կիրակի', 'երկուշաբթի', 'երեքշաբթի', 'չորեքշաբթի', 'հինգշաբթի', 'ուրբաթ', 'շաբաթ'],
+    'weekdays_short' => ['կրկ', 'երկ', 'երք', 'չրք', 'հնգ', 'ուրբ', 'շբթ'],
+    'weekdays_min' => ['կրկ', 'երկ', 'երք', 'չրք', 'հնգ', 'ուրբ', 'շբթ'],
+    'list' => [', ', ' եւ '],
+    'first_day_of_week' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy_AM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy_AM.php
new file mode 100644
index 0000000..4587df5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/hy_AM.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Tim Fish
+ * - Serhan Apaydın
+ * - JD Isaacks
+ */
+return array_replace_recursive(require __DIR__.'/hy.php', [
+    'from_now' => ':time հետո',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/i18n.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/i18n.php
new file mode 100644
index 0000000..d19e4f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/i18n.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+    'months' => ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'],
+    'months_short' => ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'],
+    'weekdays' => ['1', '2', '3', '4', '5', '6', '7'],
+    'weekdays_short' => ['1', '2', '3', '4', '5', '6', '7'],
+    'weekdays_min' => ['1', '2', '3', '4', '5', '6', '7'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia.php
new file mode 100644
index 0000000..0a0d5e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ia_FR.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia_FR.php
new file mode 100644
index 0000000..de4b2fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ia_FR.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Fedora Project Nik Kalach nikka@fedoraproject.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['januario', 'februario', 'martio', 'april', 'maio', 'junio', 'julio', 'augusto', 'septembre', 'octobre', 'novembre', 'decembre'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'],
+    'weekdays' => ['dominica', 'lunedi', 'martedi', 'mercuridi', 'jovedi', 'venerdi', 'sabbato'],
+    'weekdays_short' => ['dom', 'lun', 'mar', 'mer', 'jov', 'ven', 'sab'],
+    'weekdays_min' => ['dom', 'lun', 'mar', 'mer', 'jov', 'ven', 'sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => 'anno :count',
+    'y' => 'anno :count',
+    'a_year' => 'anno :count',
+
+    'month' => ':count mense',
+    'm' => ':count mense',
+    'a_month' => ':count mense',
+
+    'week' => ':count septimana',
+    'w' => ':count septimana',
+    'a_week' => ':count septimana',
+
+    'day' => ':count die',
+    'd' => ':count die',
+    'a_day' => ':count die',
+
+    'hour' => ':count hora',
+    'h' => ':count hora',
+    'a_hour' => ':count hora',
+
+    'minute' => ':count minuscule',
+    'min' => ':count minuscule',
+    'a_minute' => ':count minuscule',
+
+    'second' => ':count secunda',
+    's' => ':count secunda',
+    'a_second' => ':count secunda',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id.php
new file mode 100644
index 0000000..afaf78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - du
+ * - JD Isaacks
+ * - Nafies Luthfi
+ * - Raymundus Jati Primanda (mundusjp)
+ * - diankur313
+ * - a-wip0
+ */
+return [
+    'year' => ':count tahun',
+    'a_year' => '{1}setahun|]1,Inf[:count tahun',
+    'y' => ':countthn',
+    'month' => ':count bulan',
+    'a_month' => '{1}sebulan|]1,Inf[:count bulan',
+    'm' => ':countbln',
+    'week' => ':count minggu',
+    'a_week' => '{1}seminggu|]1,Inf[:count minggu',
+    'w' => ':countmgg',
+    'day' => ':count hari',
+    'a_day' => '{1}sehari|]1,Inf[:count hari',
+    'd' => ':counthr',
+    'hour' => ':count jam',
+    'a_hour' => '{1}sejam|]1,Inf[:count jam',
+    'h' => ':countj',
+    'minute' => ':count menit',
+    'a_minute' => '{1}semenit|]1,Inf[:count menit',
+    'min' => ':countmnt',
+    'second' => ':count detik',
+    'a_second' => '{1}beberapa detik|]1,Inf[:count detik',
+    's' => ':countdt',
+    'ago' => ':time yang lalu',
+    'from_now' => ':time dari sekarang',
+    'after' => ':time setelahnya',
+    'before' => ':time sebelumnya',
+    'diff_now' => 'sekarang',
+    'diff_today' => 'Hari',
+    'diff_today_regexp' => 'Hari(?:\\s+ini)?(?:\\s+pukul)?',
+    'diff_yesterday' => 'kemarin',
+    'diff_yesterday_regexp' => 'Kemarin(?:\\s+pukul)?',
+    'diff_tomorrow' => 'besok',
+    'diff_tomorrow_regexp' => 'Besok(?:\\s+pukul)?',
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm.ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY [pukul] HH.mm',
+        'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hari ini pukul] LT',
+        'nextDay' => '[Besok pukul] LT',
+        'nextWeek' => 'dddd [pukul] LT',
+        'lastDay' => '[Kemarin pukul] LT',
+        'lastWeek' => 'dddd [lalu pukul] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 11) {
+            return 'pagi';
+        }
+        if ($hour < 15) {
+            return 'siang';
+        }
+        if ($hour < 19) {
+            return 'sore';
+        }
+
+        return 'malam';
+    },
+    'months' => ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Agt', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'],
+    'weekdays_short' => ['Min', 'Sen', 'Sel', 'Rab', 'Kam', 'Jum', 'Sab'],
+    'weekdays_min' => ['Mg', 'Sn', 'Sl', 'Rb', 'Km', 'Jm', 'Sb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' dan '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id_ID.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id_ID.php
new file mode 100644
index 0000000..406112a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/id_ID.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/id.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig.php
new file mode 100644
index 0000000..de51e9c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ig_NG.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig_NG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig_NG.php
new file mode 100644
index 0000000..0034e35
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ig_NG.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Jenụwarị', 'Febrụwarị', 'Maachị', 'Eprel', 'Mee', 'Juun', 'Julaị', 'Ọgọọst', 'Septemba', 'Ọktoba', 'Novemba', 'Disemba'],
+    'months_short' => ['Jen', 'Feb', 'Maa', 'Epr', 'Mee', 'Juu', 'Jul', 'Ọgọ', 'Sep', 'Ọkt', 'Nov', 'Dis'],
+    'weekdays' => ['sọnde', 'mọnde', 'tuzde', 'wenzde', 'tọsde', 'fraịde', 'satọde'],
+    'weekdays_short' => ['sọn', 'mọn', 'tuz', 'wen', 'tọs', 'fra', 'sat'],
+    'weekdays_min' => ['sọn', 'mọn', 'tuz', 'wen', 'tọs', 'fra', 'sat'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'afo :count',
+    'y' => 'afo :count',
+    'a_year' => 'afo :count',
+
+    'month' => 'önwa :count',
+    'm' => 'önwa :count',
+    'a_month' => 'önwa :count',
+
+    'week' => 'izu :count',
+    'w' => 'izu :count',
+    'a_week' => 'izu :count',
+
+    'day' => 'ụbọchị :count',
+    'd' => 'ụbọchị :count',
+    'a_day' => 'ụbọchị :count',
+
+    'hour' => 'awa :count',
+    'h' => 'awa :count',
+    'a_hour' => 'awa :count',
+
+    'minute' => 'minit :count',
+    'min' => 'minit :count',
+    'a_minute' => 'minit :count',
+
+    'second' => 'sekọnd :count',
+    's' => 'sekọnd :count',
+    'a_second' => 'sekọnd :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ii.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ii.php
new file mode 100644
index 0000000..30f8374
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ii.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ꎸꄑ', 'ꁯꋒ'],
+    'weekdays' => ['ꑭꆏꑍ', 'ꆏꊂꋍ', 'ꆏꊂꑍ', 'ꆏꊂꌕ', 'ꆏꊂꇖ', 'ꆏꊂꉬ', 'ꆏꊂꃘ'],
+    'weekdays_short' => ['ꑭꆏ', 'ꆏꋍ', 'ꆏꑍ', 'ꆏꌕ', 'ꆏꇖ', 'ꆏꉬ', 'ꆏꃘ'],
+    'weekdays_min' => ['ꑭꆏ', 'ꆏꋍ', 'ꆏꑍ', 'ꆏꌕ', 'ꆏꇖ', 'ꆏꉬ', 'ꆏꃘ'],
+    'months' => null,
+    'months_short' => ['ꋍꆪ', 'ꑍꆪ', 'ꌕꆪ', 'ꇖꆪ', 'ꉬꆪ', 'ꃘꆪ', 'ꏃꆪ', 'ꉆꆪ', 'ꈬꆪ', 'ꊰꆪ', 'ꊰꊪꆪ', 'ꊰꑋꆪ'],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D h:mm a',
+        'LLLL' => 'YYYY MMMM D, dddd h:mm a',
+    ],
+
+    'year' => ':count ꒉ', // less reliable
+    'y' => ':count ꒉ', // less reliable
+    'a_year' => ':count ꒉ', // less reliable
+
+    'month' => ':count ꆪ',
+    'm' => ':count ꆪ',
+    'a_month' => ':count ꆪ',
+
+    'week' => ':count ꏃ', // less reliable
+    'w' => ':count ꏃ', // less reliable
+    'a_week' => ':count ꏃ', // less reliable
+
+    'day' => ':count ꏜ', // less reliable
+    'd' => ':count ꏜ', // less reliable
+    'a_day' => ':count ꏜ', // less reliable
+
+    'hour' => ':count ꄮꈉ',
+    'h' => ':count ꄮꈉ',
+    'a_hour' => ':count ꄮꈉ',
+
+    'minute' => ':count ꀄꊭ', // less reliable
+    'min' => ':count ꀄꊭ', // less reliable
+    'a_minute' => ':count ꀄꊭ', // less reliable
+
+    'second' => ':count ꇅ', // less reliable
+    's' => ':count ꇅ', // less reliable
+    'a_second' => ':count ꇅ', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik.php
new file mode 100644
index 0000000..7a13aa2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ik_CA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik_CA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik_CA.php
new file mode 100644
index 0000000..bb2a109
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ik_CA.php
@@ -0,0 +1,50 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Siqiññaatchiaq', 'Siqiññaasrugruk', 'Paniqsiqsiivik', 'Qilġich Tatqiat', 'Suppivik', 'Iġñivik', 'Itchavik', 'Tiññivik', 'Amiġaiqsivik', 'Sikkuvik', 'Nippivik', 'Siqiñġiḷaq'],
+    'months_short' => ['Sñt', 'Sñs', 'Pan', 'Qil', 'Sup', 'Iġñ', 'Itc', 'Tiñ', 'Ami', 'Sik', 'Nip', 'Siq'],
+    'weekdays' => ['Minġuiqsioiq', 'Savałłiq', 'Ilaqtchiioiq', 'Qitchiioiq', 'Sisamiioiq', 'Tallimmiioiq', 'Maqinġuoiq'],
+    'weekdays_short' => ['Min', 'Sav', 'Ila', 'Qit', 'Sis', 'Tal', 'Maq'],
+    'weekdays_min' => ['Min', 'Sav', 'Ila', 'Qit', 'Sis', 'Tal', 'Maq'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count ukiuq',
+    'y' => ':count ukiuq',
+    'a_year' => ':count ukiuq',
+
+    'month' => ':count Tatqiat',
+    'm' => ':count Tatqiat',
+    'a_month' => ':count Tatqiat',
+
+    'week' => ':count tatqiat', // less reliable
+    'w' => ':count tatqiat', // less reliable
+    'a_week' => ':count tatqiat', // less reliable
+
+    'day' => ':count siqiñiq', // less reliable
+    'd' => ':count siqiñiq', // less reliable
+    'a_day' => ':count siqiñiq', // less reliable
+
+    'hour' => ':count Siḷa', // less reliable
+    'h' => ':count Siḷa', // less reliable
+    'a_hour' => ':count Siḷa', // less reliable
+
+    'second' => ':count iġñiq', // less reliable
+    's' => ':count iġñiq', // less reliable
+    'a_second' => ':count iġñiq', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/in.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/in.php
new file mode 100644
index 0000000..406112a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/in.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/id.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is.php
new file mode 100644
index 0000000..9990168
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kristján Ingi Geirsson
+ */
+return [
+    'year' => '1 ár|:count ár',
+    'y' => '1 ár|:count ár',
+    'month' => '1 mánuður|:count mánuðir',
+    'm' => '1 mánuður|:count mánuðir',
+    'week' => '1 vika|:count vikur',
+    'w' => '1 vika|:count vikur',
+    'day' => '1 dagur|:count dagar',
+    'd' => '1 dagur|:count dagar',
+    'hour' => '1 klukkutími|:count klukkutímar',
+    'h' => '1 klukkutími|:count klukkutímar',
+    'minute' => '1 mínúta|:count mínútur',
+    'min' => '1 mínúta|:count mínútur',
+    'second' => '1 sekúnda|:count sekúndur',
+    's' => '1 sekúnda|:count sekúndur',
+    'ago' => ':time síðan',
+    'from_now' => ':time síðan',
+    'after' => ':time eftir',
+    'before' => ':time fyrir',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' og '],
+    'meridiem' => ['fh', 'eh'],
+    'diff_now' => 'núna',
+    'diff_yesterday' => 'í gær',
+    'diff_tomorrow' => 'á morgun',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM [kl.] HH:mm',
+        'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'weekdays' => ['sunnudaginn', 'mánudaginn', 'þriðjudaginn', 'miðvikudaginn', 'fimmtudaginn', 'föstudaginn', 'laugardaginn'],
+    'weekdays_short' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
+    'weekdays_min' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
+    'months' => ['janúar', 'febrúar', 'mars', 'apríl', 'maí', 'júní', 'júlí', 'ágúst', 'september', 'október', 'nóvember', 'desember'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maí', 'jún', 'júl', 'ágú', 'sep', 'okt', 'nóv', 'des'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is_IS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is_IS.php
new file mode 100644
index 0000000..8b91bb2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/is_IS.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/is.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it.php
new file mode 100644
index 0000000..c23d8db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it.php
@@ -0,0 +1,103 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ash
+ * - François B
+ * - Marco Perrando
+ * - Massimiliano Caniparoli
+ * - JD Isaacks
+ * - Andrea Martini
+ * - Francesco Marasco
+ * - Tizianoz93
+ * - Davide Casiraghi (davide-casiraghi)
+ * - Pete Scopes (pdscopes)
+ */
+return [
+    'year' => ':count anno|:count anni',
+    'a_year' => 'un anno|:count anni',
+    'y' => ':count anno|:count anni',
+    'month' => ':count mese|:count mesi',
+    'a_month' => 'un mese|:count mesi',
+    'm' => ':count mese|:count mesi',
+    'week' => ':count settimana|:count settimane',
+    'a_week' => 'una settimana|:count settimane',
+    'w' => ':count set.',
+    'day' => ':count giorno|:count giorni',
+    'a_day' => 'un giorno|:count giorni',
+    'd' => ':count g|:count gg',
+    'hour' => ':count ora|:count ore',
+    'a_hour' => 'un\'ora|:count ore',
+    'h' => ':count h',
+    'minute' => ':count minuto|:count minuti',
+    'a_minute' => 'un minuto|:count minuti',
+    'min' => ':count min.',
+    'second' => ':count secondo|:count secondi',
+    'a_second' => 'alcuni secondi|:count secondi',
+    's' => ':count sec.',
+    'millisecond' => ':count millisecondo|:count millisecondi',
+    'a_millisecond' => 'un millisecondo|:count millisecondi',
+    'ms' => ':countms',
+    'microsecond' => ':count microsecondo|:count microsecondi',
+    'a_microsecond' => 'un microsecondo|:count microsecondi',
+    'µs' => ':countµs',
+    'ago' => ':time fa',
+    'from_now' => function ($time) {
+        return (preg_match('/^[0-9].+$/', $time) ? 'tra' : 'in')." $time";
+    },
+    'after' => ':time dopo',
+    'before' => ':time prima',
+    'diff_now' => 'proprio ora',
+    'diff_today' => 'Oggi',
+    'diff_today_regexp' => 'Oggi(?:\\s+alle)?',
+    'diff_yesterday' => 'ieri',
+    'diff_yesterday_regexp' => 'Ieri(?:\\s+alle)?',
+    'diff_tomorrow' => 'domani',
+    'diff_tomorrow_regexp' => 'Domani(?:\\s+alle)?',
+    'diff_before_yesterday' => 'l\'altro ieri',
+    'diff_after_tomorrow' => 'dopodomani',
+    'period_interval' => 'ogni :interval',
+    'period_start_date' => 'dal :date',
+    'period_end_date' => 'al :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Oggi alle] LT',
+        'nextDay' => '[Domani alle] LT',
+        'nextWeek' => 'dddd [alle] LT',
+        'lastDay' => '[Ieri alle] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[la scorsa] dddd [alle] LT';
+                default:
+                    return '[lo scorso] dddd [alle] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['gennaio', 'febbraio', 'marzo', 'aprile', 'maggio', 'giugno', 'luglio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dicembre'],
+    'months_short' => ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic'],
+    'weekdays' => ['domenica', 'lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato'],
+    'weekdays_short' => ['dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab'],
+    'weekdays_min' => ['do', 'lu', 'ma', 'me', 'gi', 've', 'sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' e '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_CH.php
new file mode 100644
index 0000000..c23cc50
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_CH.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Propaganistas
+ */
+return array_replace_recursive(require __DIR__.'/it.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_IT.php
new file mode 100644
index 0000000..a5d1981
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_IT.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return require __DIR__.'/it.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_SM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_SM.php
new file mode 100644
index 0000000..57fab39
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_SM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/it.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_VA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_VA.php
new file mode 100644
index 0000000..57fab39
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/it_VA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/it.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu.php
new file mode 100644
index 0000000..4fa9742
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/iu_CA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu_CA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu_CA.php
new file mode 100644
index 0000000..6ab7e14
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iu_CA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Pablo Saratxaga pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'MM/DD/YY',
+    ],
+    'months' => ['ᔮᓄᐊᓕ', 'ᕕᕗᐊᓕ', 'ᒪᔅᓯ', 'ᐃᐳᓗ', 'ᒪᐃ', 'ᔪᓂ', 'ᔪᓚᐃ', 'ᐊᒋᓯ', 'ᓯᑎᕙ', 'ᐊᑦᑐᕙ', 'ᓄᕕᕙ', 'ᑎᓯᕝᕙ'],
+    'months_short' => ['ᔮᓄ', 'ᕕᕗ', 'ᒪᔅ', 'ᐃᐳ', 'ᒪᐃ', 'ᔪᓂ', 'ᔪᓚ', 'ᐊᒋ', 'ᓯᑎ', 'ᐊᑦ', 'ᓄᕕ', 'ᑎᓯ'],
+    'weekdays' => ['ᓈᑦᑎᖑᔭᕐᕕᒃ', 'ᓇᒡᒐᔾᔭᐅ', 'ᓇᒡᒐᔾᔭᐅᓕᖅᑭᑦ', 'ᐱᖓᓲᓕᖅᓯᐅᑦ', 'ᕿᑎᖅᑰᑦ', 'ᐅᓪᓗᕈᓘᑐᐃᓇᖅ', 'ᓯᕙᑖᕕᒃ'],
+    'weekdays_short' => ['ᓈ', 'ᓇ', 'ᓕ', 'ᐱ', 'ᕿ', 'ᐅ', 'ᓯ'],
+    'weekdays_min' => ['ᓈ', 'ᓇ', 'ᓕ', 'ᐱ', 'ᕿ', 'ᐅ', 'ᓯ'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count ᐅᑭᐅᖅ',
+    'y' => ':count ᐅᑭᐅᖅ',
+    'a_year' => ':count ᐅᑭᐅᖅ',
+
+    'month' => ':count qaammat',
+    'm' => ':count qaammat',
+    'a_month' => ':count qaammat',
+
+    'week' => ':count sapaatip akunnera',
+    'w' => ':count sapaatip akunnera',
+    'a_week' => ':count sapaatip akunnera',
+
+    'day' => ':count ulloq',
+    'd' => ':count ulloq',
+    'a_day' => ':count ulloq',
+
+    'hour' => ':count ikarraq',
+    'h' => ':count ikarraq',
+    'a_hour' => ':count ikarraq',
+
+    'minute' => ':count titiqqaralaaq', // less reliable
+    'min' => ':count titiqqaralaaq', // less reliable
+    'a_minute' => ':count titiqqaralaaq', // less reliable
+
+    'second' => ':count marluk', // less reliable
+    's' => ':count marluk', // less reliable
+    'a_second' => ':count marluk', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iw.php
new file mode 100644
index 0000000..a8034e8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/iw.php
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'months' => ['ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר'],
+    'months_short' => ['ינו׳', 'פבר׳', 'מרץ', 'אפר׳', 'מאי', 'יוני', 'יולי', 'אוג׳', 'ספט׳', 'אוק׳', 'נוב׳', 'דצמ׳'],
+    'weekdays' => ['יום ראשון', 'יום שני', 'יום שלישי', 'יום רביעי', 'יום חמישי', 'יום שישי', 'יום שבת'],
+    'weekdays_short' => ['יום א׳', 'יום ב׳', 'יום ג׳', 'יום ד׳', 'יום ה׳', 'יום ו׳', 'שבת'],
+    'weekdays_min' => ['א׳', 'ב׳', 'ג׳', 'ד׳', 'ה׳', 'ו׳', 'ש׳'],
+    'meridiem' => ['לפנה״צ', 'אחה״צ'],
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'D.M.YYYY',
+        'LL' => 'D בMMM YYYY',
+        'LLL' => 'D בMMMM YYYY H:mm',
+        'LLLL' => 'dddd, D בMMMM YYYY H:mm',
+    ],
+
+    'year' => ':count שנה',
+    'y' => ':count שנה',
+    'a_year' => ':count שנה',
+
+    'month' => ':count חודש',
+    'm' => ':count חודש',
+    'a_month' => ':count חודש',
+
+    'week' => ':count שבוע',
+    'w' => ':count שבוע',
+    'a_week' => ':count שבוע',
+
+    'day' => ':count יום',
+    'd' => ':count יום',
+    'a_day' => ':count יום',
+
+    'hour' => ':count שעה',
+    'h' => ':count שעה',
+    'a_hour' => ':count שעה',
+
+    'minute' => ':count דקה',
+    'min' => ':count דקה',
+    'a_minute' => ':count דקה',
+
+    'second' => ':count שניה',
+    's' => ':count שניה',
+    'a_second' => ':count שניה',
+
+    'ago' => 'לפני :time',
+    'from_now' => 'בעוד :time',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja.php
new file mode 100644
index 0000000..fa4cb36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja.php
@@ -0,0 +1,99 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Takuya Sawada
+ * - Atsushi Tanaka
+ * - François B
+ * - Jason Katz-Brown
+ * - Serhan Apaydın
+ * - XueWei
+ * - JD Isaacks
+ * - toyama satoshi
+ * - atakigawa
+ */
+return [
+    'year' => ':count年',
+    'y' => ':count年',
+    'month' => ':countヶ月',
+    'm' => ':countヶ月',
+    'week' => ':count週間',
+    'w' => ':count週間',
+    'day' => ':count日',
+    'd' => ':count日',
+    'hour' => ':count時間',
+    'h' => ':count時間',
+    'minute' => ':count分',
+    'min' => ':count分',
+    'second' => ':count秒',
+    'a_second' => '{1}数秒|]1,Inf[:count秒',
+    's' => ':count秒',
+    'ago' => ':time前',
+    'from_now' => ':time後',
+    'after' => ':time後',
+    'before' => ':time前',
+    'diff_now' => '今',
+    'diff_today' => '今日',
+    'diff_yesterday' => '昨日',
+    'diff_tomorrow' => '明日',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY年M月D日',
+        'LLL' => 'YYYY年M月D日 HH:mm',
+        'LLLL' => 'YYYY年M月D日 dddd HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[今日] LT',
+        'nextDay' => '[明日] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $current, \Carbon\CarbonInterface $other) {
+            if ($other->week !== $current->week) {
+                return '[来週]dddd LT';
+            }
+
+            return 'dddd LT';
+        },
+        'lastDay' => '[昨日] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current, \Carbon\CarbonInterface $other) {
+            if ($other->week !== $current->week) {
+                return '[先週]dddd LT';
+            }
+
+            return 'dddd LT';
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'DDD':
+                return $number.'日';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => ['午前', '午後'],
+    'months' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'weekdays' => ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'],
+    'weekdays_short' => ['日', '月', '火', '水', '木', '金', '土'],
+    'weekdays_min' => ['日', '月', '火', '水', '木', '金', '土'],
+    'list' => '、',
+    'alt_numbers' => ['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二', '十三', '十四', '十五', '十六', '十七', '十八', '十九', '二十', '二十一', '二十二', '二十三', '二十四', '二十五', '二十六', '二十七', '二十八', '二十九', '三十', '三十一', '三十二', '三十三', '三十四', '三十五', '三十六', '三十七', '三十八', '三十九', '四十', '四十一', '四十二', '四十三', '四十四', '四十五', '四十六', '四十七', '四十八', '四十九', '五十', '五十一', '五十二', '五十三', '五十四', '五十五', '五十六', '五十七', '五十八', '五十九', '六十', '六十一', '六十二', '六十三', '六十四', '六十五', '六十六', '六十七', '六十八', '六十九', '七十', '七十一', '七十二', '七十三', '七十四', '七十五', '七十六', '七十七', '七十八', '七十九', '八十', '八十一', '八十二', '八十三', '八十四', '八十五', '八十六', '八十七', '八十八', '八十九', '九十', '九十一', '九十二', '九十三', '九十四', '九十五', '九十六', '九十七', '九十八', '九十九'],
+    'alt_numbers_pow' => [
+        10000 => '万',
+        1000 => '千',
+        100 => '百',
+    ],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja_JP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja_JP.php
new file mode 100644
index 0000000..9e035fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ja_JP.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ja.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jgo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jgo.php
new file mode 100644
index 0000000..bad6beb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jgo.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jmc.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jmc.php
new file mode 100644
index 0000000..f8cc72c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jmc.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['utuko', 'kyiukonyi'],
+    'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jv.php
new file mode 100644
index 0000000..bcbe044
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/jv.php
@@ -0,0 +1,71 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - tgfjt
+ * - JD Isaacks
+ */
+return [
+    'year' => '{1}setaun|]1,Inf[:count taun',
+    'month' => '{1}sewulan|]1,Inf[:count wulan',
+    'week' => '{1}sakminggu|]1,Inf[:count minggu',
+    'day' => '{1}sedinten|]1,Inf[:count dinten',
+    'hour' => '{1}setunggal jam|]1,Inf[:count jam',
+    'minute' => '{1}setunggal menit|]1,Inf[:count menit',
+    'second' => '{1}sawetawis detik|]1,Inf[:count detik',
+    'ago' => ':time ingkang kepengker',
+    'from_now' => 'wonten ing :time',
+    'diff_today' => 'Dinten',
+    'diff_yesterday' => 'Kala',
+    'diff_yesterday_regexp' => 'Kala(?:\\s+wingi)?(?:\\s+pukul)?',
+    'diff_tomorrow' => 'Mbenjang',
+    'diff_tomorrow_regexp' => 'Mbenjang(?:\\s+pukul)?',
+    'diff_today_regexp' => 'Dinten(?:\\s+puniko)?(?:\\s+pukul)?',
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm.ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY [pukul] HH.mm',
+        'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Dinten puniko pukul] LT',
+        'nextDay' => '[Mbenjang pukul] LT',
+        'nextWeek' => 'dddd [pukul] LT',
+        'lastDay' => '[Kala wingi pukul] LT',
+        'lastWeek' => 'dddd [kepengker pukul] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 11) {
+            return 'enjing';
+        }
+        if ($hour < 15) {
+            return 'siyang';
+        }
+        if ($hour < 19) {
+            return 'sonten';
+        }
+
+        return 'ndalu';
+    },
+    'months' => ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'Nopember', 'Desember'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Ags', 'Sep', 'Okt', 'Nop', 'Des'],
+    'weekdays' => ['Minggu', 'Senen', 'Seloso', 'Rebu', 'Kemis', 'Jemuwah', 'Septu'],
+    'weekdays_short' => ['Min', 'Sen', 'Sel', 'Reb', 'Kem', 'Jem', 'Sep'],
+    'weekdays_min' => ['Mg', 'Sn', 'Sl', 'Rb', 'Km', 'Jm', 'Sp'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' lan '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka.php
new file mode 100644
index 0000000..5ddb957
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka.php
@@ -0,0 +1,201 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Tornike Razmadze
+ * - François B
+ * - Lasha Dolidze
+ * - Tim Fish
+ * - JD Isaacks
+ * - Tornike Razmadze
+ * - François B
+ * - Lasha Dolidze
+ * - JD Isaacks
+ * - LONGMAN
+ * - Avtandil Kikabidze (akalongman)
+ * - Levan Velijanashvili (Stichoza)
+ */
+return [
+    'year' => ':count წელი',
+    'y' => ':count წელი',
+    'a_year' => '{1}წელი|]1,Inf[:count წელი',
+    'month' => ':count თვე',
+    'm' => ':count თვე',
+    'a_month' => '{1}თვე|]1,Inf[:count თვე',
+    'week' => ':count კვირა',
+    'w' => ':count კვირა',
+    'a_week' => '{1}კვირა|]1,Inf[:count კვირა',
+    'day' => ':count დღე',
+    'd' => ':count დღე',
+    'a_day' => '{1}დღე|]1,Inf[:count დღე',
+    'hour' => ':count საათი',
+    'h' => ':count საათი',
+    'a_hour' => '{1}საათი|]1,Inf[:count საათი',
+    'minute' => ':count წუთი',
+    'min' => ':count წუთი',
+    'a_minute' => '{1}წუთი|]1,Inf[:count წუთი',
+    'second' => ':count წამი',
+    's' => ':count წამი',
+    'a_second' => '{1}რამდენიმე წამი|]1,Inf[:count წამი',
+    'ago' => function ($time) {
+        $replacements = [
+            // year
+            'წელი' => 'წლის',
+            // month
+            'თვე' => 'თვის',
+            // week
+            'კვირა' => 'კვირის',
+            // day
+            'დღე' => 'დღის',
+            // hour
+            'საათი' => 'საათის',
+            // minute
+            'წუთი' => 'წუთის',
+            // second
+            'წამი' => 'წამის',
+        ];
+        $time = strtr($time, array_flip($replacements));
+        $time = strtr($time, $replacements);
+
+        return "$time წინ";
+    },
+    'from_now' => function ($time) {
+        $replacements = [
+            // year
+            'წელი' => 'წელიწადში',
+            // week
+            'კვირა' => 'კვირაში',
+            // day
+            'დღე' => 'დღეში',
+            // month
+            'თვე' => 'თვეში',
+            // hour
+            'საათი' => 'საათში',
+            // minute
+            'წუთი' => 'წუთში',
+            // second
+            'წამი' => 'წამში',
+        ];
+        $time = strtr($time, array_flip($replacements));
+        $time = strtr($time, $replacements);
+
+        return $time;
+    },
+    'after' => function ($time) {
+        $replacements = [
+            // year
+            'წელი' => 'წლის',
+            // month
+            'თვე' => 'თვის',
+            // week
+            'კვირა' => 'კვირის',
+            // day
+            'დღე' => 'დღის',
+            // hour
+            'საათი' => 'საათის',
+            // minute
+            'წუთი' => 'წუთის',
+            // second
+            'წამი' => 'წამის',
+        ];
+        $time = strtr($time, array_flip($replacements));
+        $time = strtr($time, $replacements);
+
+        return "$time შემდეგ";
+    },
+    'before' => function ($time) {
+        $replacements = [
+            // year
+            'წელი' => 'წლით',
+            // month
+            'თვე' => 'თვით',
+            // week
+            'კვირა' => 'კვირით',
+            // day
+            'დღე' => 'დღით',
+            // hour
+            'საათი' => 'საათით',
+            // minute
+            'წუთი' => 'წუთით',
+            // second
+            'წამი' => 'წამით',
+        ];
+        $time = strtr($time, array_flip($replacements));
+        $time = strtr($time, $replacements);
+
+        return "$time ადრე";
+    },
+    'diff_now' => 'ახლა',
+    'diff_today' => 'დღეს',
+    'diff_yesterday' => 'გუშინ',
+    'diff_tomorrow' => 'ხვალ',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[დღეს], LT[-ზე]',
+        'nextDay' => '[ხვალ], LT[-ზე]',
+        'nextWeek' => function (\Carbon\CarbonInterface $current, \Carbon\CarbonInterface $other) {
+            return ($current->isSameWeek($other) ? '' : '[შემდეგ] ').'dddd, LT[-ზე]';
+        },
+        'lastDay' => '[გუშინ], LT[-ზე]',
+        'lastWeek' => '[წინა] dddd, LT-ზე',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        if ($number === 0) {
+            return $number;
+        }
+        if ($number === 1) {
+            return $number.'-ლი';
+        }
+        if (($number < 20) || ($number <= 100 && ($number % 20 === 0)) || ($number % 100 === 0)) {
+            return 'მე-'.$number;
+        }
+
+        return $number.'-ე';
+    },
+    'months' => ['იანვარი', 'თებერვალი', 'მარტი', 'აპრილი', 'მაისი', 'ივნისი', 'ივლისი', 'აგვისტო', 'სექტემბერი', 'ოქტომბერი', 'ნოემბერი', 'დეკემბერი'],
+    'months_standalone' => ['იანვარს', 'თებერვალს', 'მარტს', 'აპრილს', 'მაისს', 'ივნისს', 'ივლისს', 'აგვისტოს', 'სექტემბერს', 'ოქტომბერს', 'ნოემბერს', 'დეკემბერს'],
+    'months_short' => ['იან', 'თებ', 'მარ', 'აპრ', 'მაი', 'ივნ', 'ივლ', 'აგვ', 'სექ', 'ოქტ', 'ნოე', 'დეკ'],
+    'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['კვირას', 'ორშაბათს', 'სამშაბათს', 'ოთხშაბათს', 'ხუთშაბათს', 'პარასკევს', 'შაბათს'],
+    'weekdays_standalone' => ['კვირა', 'ორშაბათი', 'სამშაბათი', 'ოთხშაბათი', 'ხუთშაბათი', 'პარასკევი', 'შაბათი'],
+    'weekdays_short' => ['კვი', 'ორშ', 'სამ', 'ოთხ', 'ხუთ', 'პარ', 'შაბ'],
+    'weekdays_min' => ['კვ', 'ორ', 'სა', 'ოთ', 'ხუ', 'პა', 'შა'],
+    'weekdays_regexp' => '/^([^d].*|.*[^d])$/',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' და '],
+    'meridiem' => function ($hour) {
+        if ($hour >= 4) {
+            if ($hour < 11) {
+                return 'დილის';
+            }
+
+            if ($hour < 16) {
+                return 'შუადღის';
+            }
+
+            if ($hour < 22) {
+                return 'საღამოს';
+            }
+        }
+
+        return 'ღამის';
+    },
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka_GE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka_GE.php
new file mode 100644
index 0000000..dd77fa3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ka_GE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ka.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab.php
new file mode 100644
index 0000000..94d6473
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/kab_DZ.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab_DZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab_DZ.php
new file mode 100644
index 0000000..796660b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kab_DZ.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - belkacem77@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Yennayer', 'Fuṛar', 'Meɣres', 'Yebrir', 'Mayyu', 'Yunyu', 'Yulyu', 'ɣuct', 'Ctembeṛ', 'Tubeṛ', 'Wambeṛ', 'Dujembeṛ'],
+    'months_short' => ['Yen', 'Fur', 'Meɣ', 'Yeb', 'May', 'Yun', 'Yul', 'ɣuc', 'Cte', 'Tub', 'Wam', 'Duj'],
+    'weekdays' => ['Acer', 'Arim', 'Aram', 'Ahad', 'Amhad', 'Sem', 'Sed'],
+    'weekdays_short' => ['Ace', 'Ari', 'Ara', 'Aha', 'Amh', 'Sem', 'Sed'],
+    'weekdays_min' => ['Ace', 'Ari', 'Ara', 'Aha', 'Amh', 'Sem', 'Sed'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['FT', 'MD'],
+
+    'year' => ':count n yiseggasen',
+    'y' => ':count n yiseggasen',
+    'a_year' => ':count n yiseggasen',
+
+    'month' => ':count n wayyuren',
+    'm' => ':count n wayyuren',
+    'a_month' => ':count n wayyuren',
+
+    'week' => ':count n ledwaṛ', // less reliable
+    'w' => ':count n ledwaṛ', // less reliable
+    'a_week' => ':count n ledwaṛ', // less reliable
+
+    'day' => ':count n wussan',
+    'd' => ':count n wussan',
+    'a_day' => ':count n wussan',
+
+    'hour' => ':count n tsaɛtin',
+    'h' => ':count n tsaɛtin',
+    'a_hour' => ':count n tsaɛtin',
+
+    'minute' => ':count n tedqiqin',
+    'min' => ':count n tedqiqin',
+    'a_minute' => ':count n tedqiqin',
+
+    'second' => ':count tasdidt', // less reliable
+    's' => ':count tasdidt', // less reliable
+    'a_second' => ':count tasdidt', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kam.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kam.php
new file mode 100644
index 0000000..0fb6b2e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kam.php
@@ -0,0 +1,49 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Ĩyakwakya', 'Ĩyawĩoo'],
+    'weekdays' => ['Wa kyumwa', 'Wa kwambĩlĩlya', 'Wa kelĩ', 'Wa katatũ', 'Wa kana', 'Wa katano', 'Wa thanthatũ'],
+    'weekdays_short' => ['Wky', 'Wkw', 'Wkl', 'Wtũ', 'Wkn', 'Wtn', 'Wth'],
+    'weekdays_min' => ['Wky', 'Wkw', 'Wkl', 'Wtũ', 'Wkn', 'Wtn', 'Wth'],
+    'months' => ['Mwai wa mbee', 'Mwai wa kelĩ', 'Mwai wa katatũ', 'Mwai wa kana', 'Mwai wa katano', 'Mwai wa thanthatũ', 'Mwai wa muonza', 'Mwai wa nyaanya', 'Mwai wa kenda', 'Mwai wa ĩkumi', 'Mwai wa ĩkumi na ĩmwe', 'Mwai wa ĩkumi na ilĩ'],
+    'months_short' => ['Mbe', 'Kel', 'Ktũ', 'Kan', 'Ktn', 'Tha', 'Moo', 'Nya', 'Knd', 'Ĩku', 'Ĩkm', 'Ĩkl'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    // Too unreliable
+    /*
+    'year' => ':count mbua', // less reliable
+    'y' => ':count mbua', // less reliable
+    'a_year' => ':count mbua', // less reliable
+
+    'month' => ':count ndakitali', // less reliable
+    'm' => ':count ndakitali', // less reliable
+    'a_month' => ':count ndakitali', // less reliable
+
+    'day' => ':count wia', // less reliable
+    'd' => ':count wia', // less reliable
+    'a_day' => ':count wia', // less reliable
+
+    'hour' => ':count orasan', // less reliable
+    'h' => ':count orasan', // less reliable
+    'a_hour' => ':count orasan', // less reliable
+
+    'minute' => ':count orasan', // less reliable
+    'min' => ':count orasan', // less reliable
+    'a_minute' => ':count orasan', // less reliable
+    */
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kde.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kde.php
new file mode 100644
index 0000000..8acdaba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kde.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Muhi', 'Chilo'],
+    'weekdays' => ['Liduva lyapili', 'Liduva lyatatu', 'Liduva lyanchechi', 'Liduva lyannyano', 'Liduva lyannyano na linji', 'Liduva lyannyano na mavili', 'Liduva litandi'],
+    'weekdays_short' => ['Ll2', 'Ll3', 'Ll4', 'Ll5', 'Ll6', 'Ll7', 'Ll1'],
+    'weekdays_min' => ['Ll2', 'Ll3', 'Ll4', 'Ll5', 'Ll6', 'Ll7', 'Ll1'],
+    'months' => ['Mwedi Ntandi', 'Mwedi wa Pili', 'Mwedi wa Tatu', 'Mwedi wa Nchechi', 'Mwedi wa Nnyano', 'Mwedi wa Nnyano na Umo', 'Mwedi wa Nnyano na Mivili', 'Mwedi wa Nnyano na Mitatu', 'Mwedi wa Nnyano na Nchechi', 'Mwedi wa Nnyano na Nnyano', 'Mwedi wa Nnyano na Nnyano na U', 'Mwedi wa Nnyano na Nnyano na M'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kea.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kea.php
new file mode 100644
index 0000000..8a334e2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kea.php
@@ -0,0 +1,48 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['a', 'p'],
+    'weekdays' => ['dumingu', 'sigunda-fera', 'tersa-fera', 'kuarta-fera', 'kinta-fera', 'sesta-fera', 'sabadu'],
+    'weekdays_short' => ['dum', 'sig', 'ter', 'kua', 'kin', 'ses', 'sab'],
+    'weekdays_min' => ['du', 'si', 'te', 'ku', 'ki', 'se', 'sa'],
+    'weekdays_standalone' => ['dumingu', 'sigunda-fera', 'tersa-fera', 'kuarta-fera', 'kinta-fera', 'sesta-fera', 'sábadu'],
+    'months' => ['Janeru', 'Febreru', 'Marsu', 'Abril', 'Maiu', 'Junhu', 'Julhu', 'Agostu', 'Setenbru', 'Otubru', 'Nuvenbru', 'Dizenbru'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Otu', 'Nuv', 'Diz'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D [di] MMMM [di] YYYY HH:mm',
+        'LLLL' => 'dddd, D [di] MMMM [di] YYYY HH:mm',
+    ],
+
+    'year' => ':count otunu', // less reliable
+    'y' => ':count otunu', // less reliable
+    'a_year' => ':count otunu', // less reliable
+
+    'week' => ':count día dumingu', // less reliable
+    'w' => ':count día dumingu', // less reliable
+    'a_week' => ':count día dumingu', // less reliable
+
+    'day' => ':count diâ', // less reliable
+    'd' => ':count diâ', // less reliable
+    'a_day' => ':count diâ', // less reliable
+
+    'minute' => ':count sugundu', // less reliable
+    'min' => ':count sugundu', // less reliable
+    'a_minute' => ':count sugundu', // less reliable
+
+    'second' => ':count dós', // less reliable
+    's' => ':count dós', // less reliable
+    'a_second' => ':count dós', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/khq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/khq.php
new file mode 100644
index 0000000..f0649e7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/khq.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Adduha', 'Aluula'],
+    'weekdays' => ['Alhadi', 'Atini', 'Atalata', 'Alarba', 'Alhamiisa', 'Aljuma', 'Assabdu'],
+    'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alj', 'Ass'],
+    'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alj', 'Ass'],
+    'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
+    'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ki.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ki.php
new file mode 100644
index 0000000..5754ffc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ki.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Kiroko', 'Hwaĩ-inĩ'],
+    'weekdays' => ['Kiumia', 'Njumatatũ', 'Njumaine', 'Njumatana', 'Aramithi', 'Njumaa', 'Njumamothi'],
+    'weekdays_short' => ['KMA', 'NTT', 'NMN', 'NMT', 'ART', 'NMA', 'NMM'],
+    'weekdays_min' => ['KMA', 'NTT', 'NMN', 'NMT', 'ART', 'NMA', 'NMM'],
+    'months' => ['Njenuarĩ', 'Mwere wa kerĩ', 'Mwere wa gatatũ', 'Mwere wa kana', 'Mwere wa gatano', 'Mwere wa gatandatũ', 'Mwere wa mũgwanja', 'Mwere wa kanana', 'Mwere wa kenda', 'Mwere wa ikũmi', 'Mwere wa ikũmi na ũmwe', 'Ndithemba'],
+    'months_short' => ['JEN', 'WKR', 'WGT', 'WKN', 'WTN', 'WTD', 'WMJ', 'WNN', 'WKD', 'WIK', 'WMW', 'DIT'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count mĩaka', // less reliable
+    'y' => ':count mĩaka', // less reliable
+    'a_year' => ':count mĩaka', // less reliable
+
+    'month' => ':count mweri', // less reliable
+    'm' => ':count mweri', // less reliable
+    'a_month' => ':count mweri', // less reliable
+
+    'week' => ':count kiumia', // less reliable
+    'w' => ':count kiumia', // less reliable
+    'a_week' => ':count kiumia', // less reliable
+
+    'day' => ':count mũthenya', // less reliable
+    'd' => ':count mũthenya', // less reliable
+    'a_day' => ':count mũthenya', // less reliable
+
+    'hour' => ':count thaa', // less reliable
+    'h' => ':count thaa', // less reliable
+    'a_hour' => ':count thaa', // less reliable
+
+    'minute' => ':count mundu', // less reliable
+    'min' => ':count mundu', // less reliable
+    'a_minute' => ':count mundu', // less reliable
+
+    'second' => ':count igego', // less reliable
+    's' => ':count igego', // less reliable
+    'a_second' => ':count igego', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk.php
new file mode 100644
index 0000000..59fa9af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk.php
@@ -0,0 +1,103 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - Talat Uspanov
+ * - Нурлан Рахимжанов
+ * - Toleugazy Kali
+ */
+return [
+    'year' => ':count жыл',
+    'a_year' => '{1}бір жыл|:count жыл',
+    'y' => ':count ж.',
+    'month' => ':count ай',
+    'a_month' => '{1}бір ай|:count ай',
+    'm' => ':count ай',
+    'week' => ':count апта',
+    'a_week' => '{1}бір апта',
+    'w' => ':count ап.',
+    'day' => ':count күн',
+    'a_day' => '{1}бір күн|:count күн',
+    'd' => ':count к.',
+    'hour' => ':count сағат',
+    'a_hour' => '{1}бір сағат|:count сағат',
+    'h' => ':count са.',
+    'minute' => ':count минут',
+    'a_minute' => '{1}бір минут|:count минут',
+    'min' => ':count м.',
+    'second' => ':count секунд',
+    'a_second' => '{1}бірнеше секунд|:count секунд',
+    's' => ':count се.',
+    'ago' => ':time бұрын',
+    'from_now' => ':time ішінде',
+    'after' => ':time кейін',
+    'before' => ':time бұрын',
+    'diff_now' => 'қазір',
+    'diff_today' => 'Бүгін',
+    'diff_today_regexp' => 'Бүгін(?:\\s+сағат)?',
+    'diff_yesterday' => 'кеше',
+    'diff_yesterday_regexp' => 'Кеше(?:\\s+сағат)?',
+    'diff_tomorrow' => 'ертең',
+    'diff_tomorrow_regexp' => 'Ертең(?:\\s+сағат)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Бүгін сағат] LT',
+        'nextDay' => '[Ертең сағат] LT',
+        'nextWeek' => 'dddd [сағат] LT',
+        'lastDay' => '[Кеше сағат] LT',
+        'lastWeek' => '[Өткен аптаның] dddd [сағат] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        static $suffixes = [
+            0 => '-ші',
+            1 => '-ші',
+            2 => '-ші',
+            3 => '-ші',
+            4 => '-ші',
+            5 => '-ші',
+            6 => '-шы',
+            7 => '-ші',
+            8 => '-ші',
+            9 => '-шы',
+            10 => '-шы',
+            20 => '-шы',
+            30 => '-шы',
+            40 => '-шы',
+            50 => '-ші',
+            60 => '-шы',
+            70 => '-ші',
+            80 => '-ші',
+            90 => '-шы',
+            100 => '-ші',
+        ];
+
+        return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
+    },
+    'months' => ['қаңтар', 'ақпан', 'наурыз', 'сәуір', 'мамыр', 'маусым', 'шілде', 'тамыз', 'қыркүйек', 'қазан', 'қараша', 'желтоқсан'],
+    'months_short' => ['қаң', 'ақп', 'нау', 'сәу', 'мам', 'мау', 'шіл', 'там', 'қыр', 'қаз', 'қар', 'жел'],
+    'weekdays' => ['жексенбі', 'дүйсенбі', 'сейсенбі', 'сәрсенбі', 'бейсенбі', 'жұма', 'сенбі'],
+    'weekdays_short' => ['жек', 'дүй', 'сей', 'сәр', 'бей', 'жұм', 'сен'],
+    'weekdays_min' => ['жк', 'дй', 'сй', 'ср', 'бй', 'жм', 'сн'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' және '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk_KZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk_KZ.php
new file mode 100644
index 0000000..af4a5b2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kk_KZ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/kk.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kkj.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kkj.php
new file mode 100644
index 0000000..bad6beb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kkj.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl.php
new file mode 100644
index 0000000..7329a07
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/kl_GL.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl_GL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl_GL.php
new file mode 100644
index 0000000..4fed720
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kl_GL.php
@@ -0,0 +1,64 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Danish Standards Association    bug-glibc-locales@gnu.org
+ * - John Eyðstein Johannesen (mashema)
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'months' => ['januaarip', 'februaarip', 'marsip', 'apriilip', 'maajip', 'juunip', 'juulip', 'aggustip', 'septembarip', 'oktobarip', 'novembarip', 'decembarip'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['sapaat', 'ataasinngorneq', 'marlunngorneq', 'pingasunngorneq', 'sisamanngorneq', 'tallimanngorneq', 'arfininngorneq'],
+    'weekdays_short' => ['sap', 'ata', 'mar', 'pin', 'sis', 'tal', 'arf'],
+    'weekdays_min' => ['sap', 'ata', 'mar', 'pin', 'sis', 'tal', 'arf'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => '{1}ukioq :count|{0}:count ukiut|]1,Inf[ukiut :count',
+    'a_year' => '{1}ukioq|{0}:count ukiut|]1,Inf[ukiut :count',
+    'y' => '{1}:countyr|{0}:countyrs|]1,Inf[:countyrs',
+
+    'month' => '{1}qaammat :count|{0}:count qaammatit|]1,Inf[qaammatit :count',
+    'a_month' => '{1}qaammat|{0}:count qaammatit|]1,Inf[qaammatit :count',
+    'm' => '{1}:countmo|{0}:countmos|]1,Inf[:countmos',
+
+    'week' => '{1}:count sap. ak.|{0}:count sap. ak.|]1,Inf[:count sap. ak.',
+    'a_week' => '{1}a sap. ak.|{0}:count sap. ak.|]1,Inf[:count sap. ak.',
+    'w' => ':countw',
+
+    'day' => '{1}:count ulloq|{0}:count ullut|]1,Inf[:count ullut',
+    'a_day' => '{1}a ulloq|{0}:count ullut|]1,Inf[:count ullut',
+    'd' => ':countd',
+
+    'hour' => '{1}:count tiimi|{0}:count tiimit|]1,Inf[:count tiimit',
+    'a_hour' => '{1}tiimi|{0}:count tiimit|]1,Inf[:count tiimit',
+    'h' => ':counth',
+
+    'minute' => '{1}:count minutsi|{0}:count minutsit|]1,Inf[:count minutsit',
+    'a_minute' => '{1}a minutsi|{0}:count minutsit|]1,Inf[:count minutsit',
+    'min' => ':countm',
+
+    'second' => '{1}:count sikunti|{0}:count sikuntit|]1,Inf[:count sikuntit',
+    'a_second' => '{1}sikunti|{0}:count sikuntit|]1,Inf[:count sikuntit',
+    's' => ':counts',
+
+    'ago' => ':time matuma siorna',
+
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kln.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kln.php
new file mode 100644
index 0000000..b034ba5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kln.php
@@ -0,0 +1,30 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['krn', 'koosk'],
+    'weekdays' => ['Kotisap', 'Kotaai', 'Koaeng’', 'Kosomok', 'Koang’wan', 'Komuut', 'Kolo'],
+    'weekdays_short' => ['Kts', 'Kot', 'Koo', 'Kos', 'Koa', 'Kom', 'Kol'],
+    'weekdays_min' => ['Kts', 'Kot', 'Koo', 'Kos', 'Koa', 'Kom', 'Kol'],
+    'months' => ['Mulgul', 'Ng’atyaato', 'Kiptaamo', 'Iwootkuut', 'Mamuut', 'Paagi', 'Ng’eiyeet', 'Rooptui', 'Bureet', 'Epeeso', 'Kipsuunde ne taai', 'Kipsuunde nebo aeng’'],
+    'months_short' => ['Mul', 'Ngat', 'Taa', 'Iwo', 'Mam', 'Paa', 'Nge', 'Roo', 'Bur', 'Epe', 'Kpt', 'Kpa'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count maghatiat', // less reliable
+    'y' => ':count maghatiat', // less reliable
+    'a_year' => ':count maghatiat', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km.php
new file mode 100644
index 0000000..da790ac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km.php
@@ -0,0 +1,71 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kruy Vanna
+ * - Sereysethy Touch
+ * - JD Isaacks
+ * - Sovichet Tep
+ */
+return [
+    'year' => '{1}មួយឆ្នាំ|]1,Inf[:count ឆ្នាំ',
+    'y' => ':count ឆ្នាំ',
+    'month' => '{1}មួយខែ|]1,Inf[:count ខែ',
+    'm' => ':count ខែ',
+    'week' => ':count សប្ដាហ៍',
+    'w' => ':count សប្ដាហ៍',
+    'day' => '{1}មួយថ្ងៃ|]1,Inf[:count ថ្ងៃ',
+    'd' => ':count ថ្ងៃ',
+    'hour' => '{1}មួយម៉ោង|]1,Inf[:count ម៉ោង',
+    'h' => ':count ម៉ោង',
+    'minute' => '{1}មួយនាទី|]1,Inf[:count នាទី',
+    'min' => ':count នាទី',
+    'second' => '{1}ប៉ុន្មានវិនាទី|]1,Inf[:count វិនាទី',
+    's' => ':count វិនាទី',
+    'ago' => ':timeមុន',
+    'from_now' => ':timeទៀត',
+    'after' => 'នៅ​ក្រោយ :time',
+    'before' => 'នៅ​មុន :time',
+    'diff_now' => 'ឥឡូវ',
+    'diff_today' => 'ថ្ងៃនេះ',
+    'diff_today_regexp' => 'ថ្ងៃនេះ(?:\\s+ម៉ោង)?',
+    'diff_yesterday' => 'ម្សិលមិញ',
+    'diff_yesterday_regexp' => 'ម្សិលមិញ(?:\\s+ម៉ោង)?',
+    'diff_tomorrow' => 'ថ្ងៃ​ស្អែក',
+    'diff_tomorrow_regexp' => 'ស្អែក(?:\\s+ម៉ោង)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ថ្ងៃនេះ ម៉ោង] LT',
+        'nextDay' => '[ស្អែក ម៉ោង] LT',
+        'nextWeek' => 'dddd [ម៉ោង] LT',
+        'lastDay' => '[ម្សិលមិញ ម៉ោង] LT',
+        'lastWeek' => 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => 'ទី:number',
+    'meridiem' => ['ព្រឹក', 'ល្ងាច'],
+    'months' => ['មករា', 'កុម្ភៈ', 'មីនា', 'មេសា', 'ឧសភា', 'មិថុនា', 'កក្កដា', 'សីហា', 'កញ្ញា', 'តុលា', 'វិច្ឆិកា', 'ធ្នូ'],
+    'months_short' => ['មករា', 'កុម្ភៈ', 'មីនា', 'មេសា', 'ឧសភា', 'មិថុនា', 'កក្កដា', 'សីហា', 'កញ្ញា', 'តុលា', 'វិច្ឆិកា', 'ធ្នូ'],
+    'weekdays' => ['អាទិត្យ', 'ច័ន្ទ', 'អង្គារ', 'ពុធ', 'ព្រហស្បតិ៍', 'សុក្រ', 'សៅរ៍'],
+    'weekdays_short' => ['អា', 'ច', 'អ', 'ព', 'ព្រ', 'សុ', 'ស'],
+    'weekdays_min' => ['អា', 'ច', 'អ', 'ព', 'ព្រ', 'សុ', 'ស'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', 'និង '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km_KH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km_KH.php
new file mode 100644
index 0000000..ef3b415
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/km_KH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/km.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn.php
new file mode 100644
index 0000000..0d2ad08
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn.php
@@ -0,0 +1,75 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - MOHAN M U
+ * - François B
+ * - rajeevnaikte
+ */
+return [
+    'year' => '{1}ಒಂದು ವರ್ಷ|]1,Inf[:count ವರ್ಷ',
+    'month' => '{1}ಒಂದು ತಿಂಗಳು|]1,Inf[:count ತಿಂಗಳು',
+    'week' => '{1}ಒಂದು ವಾರ|]1,Inf[:count ವಾರಗಳು',
+    'day' => '{1}ಒಂದು ದಿನ|]1,Inf[:count ದಿನ',
+    'hour' => '{1}ಒಂದು ಗಂಟೆ|]1,Inf[:count ಗಂಟೆ',
+    'minute' => '{1}ಒಂದು ನಿಮಿಷ|]1,Inf[:count ನಿಮಿಷ',
+    'second' => '{1}ಕೆಲವು ಕ್ಷಣಗಳು|]1,Inf[:count ಸೆಕೆಂಡುಗಳು',
+    'ago' => ':time ಹಿಂದೆ',
+    'from_now' => ':time ನಂತರ',
+    'diff_now' => 'ಈಗ',
+    'diff_today' => 'ಇಂದು',
+    'diff_yesterday' => 'ನಿನ್ನೆ',
+    'diff_tomorrow' => 'ನಾಳೆ',
+    'formats' => [
+        'LT' => 'A h:mm',
+        'LTS' => 'A h:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ಇಂದು] LT',
+        'nextDay' => '[ನಾಳೆ] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[ನಿನ್ನೆ] LT',
+        'lastWeek' => '[ಕೊನೆಯ] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberನೇ',
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'ರಾತ್ರಿ';
+        }
+        if ($hour < 10) {
+            return 'ಬೆಳಿಗ್ಗೆ';
+        }
+        if ($hour < 17) {
+            return 'ಮಧ್ಯಾಹ್ನ';
+        }
+        if ($hour < 20) {
+            return 'ಸಂಜೆ';
+        }
+
+        return 'ರಾತ್ರಿ';
+    },
+    'months' => ['ಜನವರಿ', 'ಫೆಬ್ರವರಿ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂಬರ್', 'ಅಕ್ಟೋಬರ್', 'ನವೆಂಬರ್', 'ಡಿಸೆಂಬರ್'],
+    'months_short' => ['ಜನ', 'ಫೆಬ್ರ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂ', 'ಅಕ್ಟೋ', 'ನವೆಂ', 'ಡಿಸೆಂ'],
+    'weekdays' => ['ಭಾನುವಾರ', 'ಸೋಮವಾರ', 'ಮಂಗಳವಾರ', 'ಬುಧವಾರ', 'ಗುರುವಾರ', 'ಶುಕ್ರವಾರ', 'ಶನಿವಾರ'],
+    'weekdays_short' => ['ಭಾನು', 'ಸೋಮ', 'ಮಂಗಳ', 'ಬುಧ', 'ಗುರು', 'ಶುಕ್ರ', 'ಶನಿ'],
+    'weekdays_min' => ['ಭಾ', 'ಸೋ', 'ಮಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
+    'list' => ', ',
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn_IN.php
new file mode 100644
index 0000000..7c6c909
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kn_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/kn.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko.php
new file mode 100644
index 0000000..4fa6237
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko.php
@@ -0,0 +1,91 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - FourwingsY
+ * - François B
+ * - Jason Katz-Brown
+ * - Seokjun Kim
+ * - Junho Kim
+ * - JD Isaacks
+ * - Juwon Kim
+ */
+return [
+    'year' => ':count년',
+    'a_year' => '{1}일년|]1,Inf[:count년',
+    'y' => ':count년',
+    'month' => ':count개월',
+    'a_month' => '{1}한달|]1,Inf[:count개월',
+    'm' => ':count개월',
+    'week' => ':count주',
+    'a_week' => '{1}일주일|]1,Inf[:count 주',
+    'w' => ':count주일',
+    'day' => ':count일',
+    'a_day' => '{1}하루|]1,Inf[:count일',
+    'd' => ':count일',
+    'hour' => ':count시간',
+    'a_hour' => '{1}한시간|]1,Inf[:count시간',
+    'h' => ':count시간',
+    'minute' => ':count분',
+    'a_minute' => '{1}일분|]1,Inf[:count분',
+    'min' => ':count분',
+    'second' => ':count초',
+    'a_second' => '{1}몇초|]1,Inf[:count초',
+    's' => ':count초',
+    'ago' => ':time 전',
+    'from_now' => ':time 후',
+    'after' => ':time 후',
+    'before' => ':time 전',
+    'diff_now' => '지금',
+    'diff_today' => '오늘',
+    'diff_yesterday' => '어제',
+    'diff_tomorrow' => '내일',
+    'formats' => [
+        'LT' => 'A h:mm',
+        'LTS' => 'A h:mm:ss',
+        'L' => 'YYYY.MM.DD.',
+        'LL' => 'YYYY년 MMMM D일',
+        'LLL' => 'YYYY년 MMMM D일 A h:mm',
+        'LLLL' => 'YYYY년 MMMM D일 dddd A h:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '오늘 LT',
+        'nextDay' => '내일 LT',
+        'nextWeek' => 'dddd LT',
+        'lastDay' => '어제 LT',
+        'lastWeek' => '지난주 dddd LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'DDD':
+                return $number.'일';
+            case 'M':
+                return $number.'월';
+            case 'w':
+            case 'W':
+                return $number.'주';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => ['오전', '오후'],
+    'months' => ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
+    'months_short' => ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
+    'weekdays' => ['일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'],
+    'weekdays_short' => ['일', '월', '화', '수', '목', '금', '토'],
+    'weekdays_min' => ['일', '월', '화', '수', '목', '금', '토'],
+    'list' => ' ',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KP.php
new file mode 100644
index 0000000..55b40fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KP.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ko.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KR.php
new file mode 100644
index 0000000..d8eba2c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ko_KR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ko.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok.php
new file mode 100644
index 0000000..4adcddc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/kok_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok_IN.php
new file mode 100644
index 0000000..92ba844
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kok_IN.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D-M-YY',
+    ],
+    'months' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ओगस्ट', 'सेप्टेंबर', 'ओक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
+    'months_short' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ओगस्ट', 'सेप्टेंबर', 'ओक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
+    'weekdays' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
+    'weekdays_short' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
+    'weekdays_min' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['म.पू.', 'म.नं.'],
+
+    'year' => ':count वैशाकु', // less reliable
+    'y' => ':count वैशाकु', // less reliable
+    'a_year' => ':count वैशाकु', // less reliable
+
+    'week' => ':count आदित्यवार', // less reliable
+    'w' => ':count आदित्यवार', // less reliable
+    'a_week' => ':count आदित्यवार', // less reliable
+
+    'minute' => ':count नोंद', // less reliable
+    'min' => ':count नोंद', // less reliable
+    'a_minute' => ':count नोंद', // less reliable
+
+    'second' => ':count तेंको', // less reliable
+    's' => ':count तेंको', // less reliable
+    'a_second' => ':count तेंको', // less reliable
+
+    'month' => ':count मैनो',
+    'm' => ':count मैनो',
+    'a_month' => ':count मैनो',
+
+    'day' => ':count दिवसु',
+    'd' => ':count दिवसु',
+    'a_day' => ':count दिवसु',
+
+    'hour' => ':count घंते',
+    'h' => ':count घंते',
+    'a_hour' => ':count घंते',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks.php
new file mode 100644
index 0000000..9876079
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ks_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN.php
new file mode 100644
index 0000000..ce9d5d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'M/D/YY',
+    ],
+    'months' => ['جنؤری', 'فرؤری', 'مارٕچ', 'اپریل', 'میٔ', 'جوٗن', 'جوٗلایی', 'اگست', 'ستمبر', 'اکتوٗبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنؤری', 'فرؤری', 'مارٕچ', 'اپریل', 'میٔ', 'جوٗن', 'جوٗلایی', 'اگست', 'ستمبر', 'اکتوٗبر', 'نومبر', 'دسمبر'],
+    'weekdays' => ['آتهوار', 'ژءندروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
+    'weekdays_short' => ['آتهوار', 'ژءنتروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
+    'weekdays_min' => ['آتهوار', 'ژءنتروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['دوپھربرونھ', 'دوپھرپتھ'],
+
+    'year' => ':count آب', // less reliable
+    'y' => ':count آب', // less reliable
+    'a_year' => ':count آب', // less reliable
+
+    'month' => ':count रान्', // less reliable
+    'm' => ':count रान्', // less reliable
+    'a_month' => ':count रान्', // less reliable
+
+    'week' => ':count آتھٕوار', // less reliable
+    'w' => ':count آتھٕوار', // less reliable
+    'a_week' => ':count آتھٕوار', // less reliable
+
+    'hour' => ':count سۄن', // less reliable
+    'h' => ':count سۄن', // less reliable
+    'a_hour' => ':count سۄن', // less reliable
+
+    'minute' => ':count فَن', // less reliable
+    'min' => ':count فَن', // less reliable
+    'a_minute' => ':count فَن', // less reliable
+
+    'second' => ':count दोʼयुम', // less reliable
+    's' => ':count दोʼयुम', // less reliable
+    'a_second' => ':count दोʼयुम', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN@devanagari.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN@devanagari.php
new file mode 100644
index 0000000..a2ae8b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ks_IN@devanagari.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - ks-gnome-trans-commits@lists.code.indlinux.net
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'M/D/YY',
+    ],
+    'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'weekdays' => ['आथवार', 'चॅ़दुरवार', 'बोमवार', 'ब्वदवार', 'ब्रसवार', 'शोकुरवार', 'बटुवार'],
+    'weekdays_short' => ['आथ ', 'चॅ़दुर', 'बोम', 'ब्वद', 'ब्रस', 'शोकुर', 'बटु'],
+    'weekdays_min' => ['आथ ', 'चॅ़दुर', 'बोम', 'ब्वद', 'ब्रस', 'शोकुर', 'बटु'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksb.php
new file mode 100644
index 0000000..424099d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksb.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['makeo', 'nyiaghuo'],
+    'weekdays' => ['Jumaapii', 'Jumaatatu', 'Jumaane', 'Jumaatano', 'Alhamisi', 'Ijumaa', 'Jumaamosi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jmn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jmn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Januali', 'Febluali', 'Machi', 'Aplili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksf.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksf.php
new file mode 100644
index 0000000..8fb5598
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksf.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['sárúwá', 'cɛɛ́nko'],
+    'weekdays' => ['sɔ́ndǝ', 'lǝndí', 'maadí', 'mɛkrɛdí', 'jǝǝdí', 'júmbá', 'samdí'],
+    'weekdays_short' => ['sɔ́n', 'lǝn', 'maa', 'mɛk', 'jǝǝ', 'júm', 'sam'],
+    'weekdays_min' => ['sɔ́n', 'lǝn', 'maa', 'mɛk', 'jǝǝ', 'júm', 'sam'],
+    'months' => ['ŋwíí a ntɔ́ntɔ', 'ŋwíí akǝ bɛ́ɛ', 'ŋwíí akǝ ráá', 'ŋwíí akǝ nin', 'ŋwíí akǝ táan', 'ŋwíí akǝ táafɔk', 'ŋwíí akǝ táabɛɛ', 'ŋwíí akǝ táaraa', 'ŋwíí akǝ táanin', 'ŋwíí akǝ ntɛk', 'ŋwíí akǝ ntɛk di bɔ́k', 'ŋwíí akǝ ntɛk di bɛ́ɛ'],
+    'months_short' => ['ŋ1', 'ŋ2', 'ŋ3', 'ŋ4', 'ŋ5', 'ŋ6', 'ŋ7', 'ŋ8', 'ŋ9', 'ŋ10', 'ŋ11', 'ŋ12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksh.php
new file mode 100644
index 0000000..44c60a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ksh.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['v.M.', 'n.M.'],
+    'weekdays' => ['Sunndaach', 'Mohndaach', 'Dinnsdaach', 'Metwoch', 'Dunnersdaach', 'Friidaach', 'Samsdaach'],
+    'weekdays_short' => ['Su.', 'Mo.', 'Di.', 'Me.', 'Du.', 'Fr.', 'Sa.'],
+    'weekdays_min' => ['Su', 'Mo', 'Di', 'Me', 'Du', 'Fr', 'Sa'],
+    'months' => ['Jannewa', 'Fäbrowa', 'Määz', 'Aprell', 'Mai', 'Juuni', 'Juuli', 'Oujoß', 'Septämber', 'Oktohber', 'Novämber', 'Dezämber'],
+    'months_short' => ['Jan', 'Fäb', 'Mäz', 'Apr', 'Mai', 'Jun', 'Jul', 'Ouj', 'Säp', 'Okt', 'Nov', 'Dez'],
+    'months_short_standalone' => ['Jan.', 'Fäb.', 'Mäz.', 'Apr.', 'Mai', 'Jun.', 'Jul.', 'Ouj.', 'Säp.', 'Okt.', 'Nov.', 'Dez.'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D. M. YYYY',
+        'LL' => 'D. MMM. YYYY',
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, [dä] D. MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count Johr',
+    'y' => ':count Johr',
+    'a_year' => ':count Johr',
+
+    'month' => ':count Moohnd',
+    'm' => ':count Moohnd',
+    'a_month' => ':count Moohnd',
+
+    'week' => ':count woch',
+    'w' => ':count woch',
+    'a_week' => ':count woch',
+
+    'day' => ':count Daach',
+    'd' => ':count Daach',
+    'a_day' => ':count Daach',
+
+    'hour' => ':count Uhr',
+    'h' => ':count Uhr',
+    'a_hour' => ':count Uhr',
+
+    'minute' => ':count Menutt',
+    'min' => ':count Menutt',
+    'a_minute' => ':count Menutt',
+
+    'second' => ':count Sekůndt',
+    's' => ':count Sekůndt',
+    'a_second' => ':count Sekůndt',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku.php
new file mode 100644
index 0000000..b001e30
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku.php
@@ -0,0 +1,42 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Halwest Manguri
+ * - Kardo Qadir
+ */
+$months = ['کانونی دووەم', 'شوبات', 'ئازار', 'نیسان', 'ئایار', '‌حوزەیران', 'تەمموز', 'ئاب', 'ئەیلول', 'تشرینی یەکەم', 'تشرینی دووەم', 'کانونی یەکەم'];
+
+$weekdays = ['دوو شەممە', 'سێ شەممە', 'چوار شەممە', 'پێنج شەممە', 'هەینی', 'شەممە', 'یەک شەممە'];
+
+return [
+    'ago' => 'پێش :time',
+    'from_now' => ':time لە ئێستاوە',
+    'after' => 'دوای :time',
+    'before' => 'پێش :time',
+    'year' => '{0}ساڵ|{1}ساڵێک|{2}٢ ساڵ|[3,10]:count ساڵ|[11,Inf]:count ساڵ',
+    'month' => '{0}مانگ|{1}مانگێک|{2}٢ مانگ|[3,10]:count مانگ|[11,Inf]:count مانگ',
+    'week' => '{0}هەفتە|{1}هەفتەیەک|{2}٢ هەفتە|[3,10]:count هەفتە|[11,Inf]:count هەفتە',
+    'day' => '{0}ڕۆژ|{1}ڕۆژێک|{2}٢ ڕۆژ|[3,10]:count ڕۆژ|[11,Inf]:count ڕۆژ',
+    'hour' => '{0}کاتژمێر|{1}کاتژمێرێک|{2}٢ کاتژمێر|[3,10]:count کاتژمێر|[11,Inf]:count کاتژمێر',
+    'minute' => '{0}خولەک|{1}خولەکێک|{2}٢ خولەک|[3,10]:count خولەک|[11,Inf]:count خولەک',
+    'second' => '{0}چرکە|{1}چرکەیەک|{2}٢ چرکە|[3,10]:count چرکە|[11,Inf]:count چرکە',
+    'months' => $months,
+    'months_standalone' => $months,
+    'months_short' => $months,
+    'weekdays' => $weekdays,
+    'weekdays_short' => $weekdays,
+    'weekdays_min' => $weekdays,
+    'list' => [', ', ' û '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku_TR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku_TR.php
new file mode 100644
index 0000000..11fce2d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ku_TR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ku.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw.php
new file mode 100644
index 0000000..26e242e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/kw_GB.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw_GB.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw_GB.php
new file mode 100644
index 0000000..00bf52b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/kw_GB.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Alastair McKinstry    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['mis Genver', 'mis Hwevrer', 'mis Meurth', 'mis Ebrel', 'mis Me', 'mis Metheven', 'mis Gortheren', 'mis Est', 'mis Gwynngala', 'mis Hedra', 'mis Du', 'mis Kevardhu'],
+    'months_short' => ['Gen', 'Hwe', 'Meu', 'Ebr', 'Me', 'Met', 'Gor', 'Est', 'Gwn', 'Hed', 'Du', 'Kev'],
+    'weekdays' => ['De Sul', 'De Lun', 'De Merth', 'De Merher', 'De Yow', 'De Gwener', 'De Sadorn'],
+    'weekdays_short' => ['Sul', 'Lun', 'Mth', 'Mhr', 'Yow', 'Gwe', 'Sad'],
+    'weekdays_min' => ['Sul', 'Lun', 'Mth', 'Mhr', 'Yow', 'Gwe', 'Sad'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count bledhen',
+    'y' => ':count bledhen',
+    'a_year' => ':count bledhen',
+
+    'month' => ':count mis',
+    'm' => ':count mis',
+    'a_month' => ':count mis',
+
+    'week' => ':count seythen',
+    'w' => ':count seythen',
+    'a_week' => ':count seythen',
+
+    'day' => ':count dydh',
+    'd' => ':count dydh',
+    'a_day' => ':count dydh',
+
+    'hour' => ':count eur',
+    'h' => ':count eur',
+    'a_hour' => ':count eur',
+
+    'minute' => ':count mynysen',
+    'min' => ':count mynysen',
+    'a_minute' => ':count mynysen',
+
+    'second' => ':count pryjwyth',
+    's' => ':count pryjwyth',
+    'a_second' => ':count pryjwyth',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky.php
new file mode 100644
index 0000000..e0d1af1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky.php
@@ -0,0 +1,106 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - acutexyz
+ * - Josh Soref
+ * - François B
+ * - Chyngyz Arystan uulu
+ * - Chyngyz
+ * - acutexyz
+ * - Josh Soref
+ * - François B
+ * - Chyngyz Arystan uulu
+ */
+return [
+    'year' => ':count жыл',
+    'a_year' => '{1}бир жыл|:count жыл',
+    'y' => ':count жыл',
+    'month' => ':count ай',
+    'a_month' => '{1}бир ай|:count ай',
+    'm' => ':count ай',
+    'week' => ':count апта',
+    'a_week' => '{1}бир апта|:count апта',
+    'w' => ':count апт.',
+    'day' => ':count күн',
+    'a_day' => '{1}бир күн|:count күн',
+    'd' => ':count күн',
+    'hour' => ':count саат',
+    'a_hour' => '{1}бир саат|:count саат',
+    'h' => ':count саат.',
+    'minute' => ':count мүнөт',
+    'a_minute' => '{1}бир мүнөт|:count мүнөт',
+    'min' => ':count мүн.',
+    'second' => ':count секунд',
+    'a_second' => '{1}бирнече секунд|:count секунд',
+    's' => ':count сек.',
+    'ago' => ':time мурун',
+    'from_now' => ':time ичинде',
+    'diff_now' => 'азыр',
+    'diff_today' => 'Бүгүн',
+    'diff_today_regexp' => 'Бүгүн(?:\\s+саат)?',
+    'diff_yesterday' => 'кечээ',
+    'diff_yesterday_regexp' => 'Кече(?:\\s+саат)?',
+    'diff_tomorrow' => 'эртең',
+    'diff_tomorrow_regexp' => 'Эртең(?:\\s+саат)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Бүгүн саат] LT',
+        'nextDay' => '[Эртең саат] LT',
+        'nextWeek' => 'dddd [саат] LT',
+        'lastDay' => '[Кече саат] LT',
+        'lastWeek' => '[Өткен аптанын] dddd [күнү] [саат] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        static $suffixes = [
+            0 => '-чү',
+            1 => '-чи',
+            2 => '-чи',
+            3 => '-чү',
+            4 => '-чү',
+            5 => '-чи',
+            6 => '-чы',
+            7 => '-чи',
+            8 => '-чи',
+            9 => '-чу',
+            10 => '-чу',
+            20 => '-чы',
+            30 => '-чу',
+            40 => '-чы',
+            50 => '-чү',
+            60 => '-чы',
+            70 => '-чи',
+            80 => '-чи',
+            90 => '-чу',
+            100 => '-чү',
+        ];
+
+        return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
+    },
+    'months' => ['январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'],
+    'months_short' => ['янв', 'фев', 'март', 'апр', 'май', 'июнь', 'июль', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'weekdays' => ['Жекшемби', 'Дүйшөмбү', 'Шейшемби', 'Шаршемби', 'Бейшемби', 'Жума', 'Ишемби'],
+    'weekdays_short' => ['Жек', 'Дүй', 'Шей', 'Шар', 'Бей', 'Жум', 'Ише'],
+    'weekdays_min' => ['Жк', 'Дй', 'Шй', 'Шр', 'Бй', 'Жм', 'Иш'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => ' ',
+    'meridiem' => ['таңкы', 'түштөн кийинки'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky_KG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky_KG.php
new file mode 100644
index 0000000..4426bea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ky_KG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ky.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lag.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lag.php
new file mode 100644
index 0000000..dc959c9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lag.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['TOO', 'MUU'],
+    'weekdays' => ['Jumapíiri', 'Jumatátu', 'Jumaíne', 'Jumatáano', 'Alamíisi', 'Ijumáa', 'Jumamóosi'],
+    'weekdays_short' => ['Píili', 'Táatu', 'Íne', 'Táano', 'Alh', 'Ijm', 'Móosi'],
+    'weekdays_min' => ['Píili', 'Táatu', 'Íne', 'Táano', 'Alh', 'Ijm', 'Móosi'],
+    'months' => ['Kʉfúngatɨ', 'Kʉnaanɨ', 'Kʉkeenda', 'Kwiikumi', 'Kwiinyambála', 'Kwiidwaata', 'Kʉmʉʉnchɨ', 'Kʉvɨɨrɨ', 'Kʉsaatʉ', 'Kwiinyi', 'Kʉsaano', 'Kʉsasatʉ'],
+    'months_short' => ['Fúngatɨ', 'Naanɨ', 'Keenda', 'Ikúmi', 'Inyambala', 'Idwaata', 'Mʉʉnchɨ', 'Vɨɨrɨ', 'Saatʉ', 'Inyi', 'Saano', 'Sasatʉ'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb.php
new file mode 100644
index 0000000..db04834
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb.php
@@ -0,0 +1,85 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - dan-nl
+ * - Simon Lelorrain (slelorrain)
+ */
+return [
+    'year' => ':count Joer',
+    'y' => ':countJ',
+    'month' => ':count Mount|:count Méint',
+    'm' => ':countMo',
+    'week' => ':count Woch|:count Wochen',
+    'w' => ':countWo|:countWo',
+    'day' => ':count Dag|:count Deeg',
+    'd' => ':countD',
+    'hour' => ':count Stonn|:count Stonnen',
+    'h' => ':countSto',
+    'minute' => ':count Minutt|:count Minutten',
+    'min' => ':countM',
+    'second' => ':count Sekonn|:count Sekonnen',
+    's' => ':countSek',
+
+    'ago' => 'virun :time',
+    'from_now' => 'an :time',
+    'before' => ':time virdrun',
+    'after' => ':time duerno',
+
+    'diff_today' => 'Haut',
+    'diff_yesterday' => 'Gëschter',
+    'diff_yesterday_regexp' => 'Gëschter(?:\\s+um)?',
+    'diff_tomorrow' => 'Muer',
+    'diff_tomorrow_regexp' => 'Muer(?:\\s+um)?',
+    'diff_today_regexp' => 'Haut(?:\\s+um)?',
+    'formats' => [
+        'LT' => 'H:mm [Auer]',
+        'LTS' => 'H:mm:ss [Auer]',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm [Auer]',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm [Auer]',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[Haut um] LT',
+        'nextDay' => '[Muer um] LT',
+        'nextWeek' => 'dddd [um] LT',
+        'lastDay' => '[Gëschter um] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule
+            switch ($date->dayOfWeek) {
+                case 2:
+                case 4:
+                    return '[Leschten] dddd [um] LT';
+                default:
+                    return '[Leschte] dddd [um] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+
+    'months' => ['Januar', 'Februar', 'Mäerz', 'Abrëll', 'Mee', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
+    'months_short' => ['Jan.', 'Febr.', 'Mrz.', 'Abr.', 'Mee', 'Jun.', 'Jul.', 'Aug.', 'Sept.', 'Okt.', 'Nov.', 'Dez.'],
+    'weekdays' => ['Sonndeg', 'Méindeg', 'Dënschdeg', 'Mëttwoch', 'Donneschdeg', 'Freideg', 'Samschdeg'],
+    'weekdays_short' => ['So.', 'Mé.', 'Dë.', 'Më.', 'Do.', 'Fr.', 'Sa.'],
+    'weekdays_min' => ['So', 'Mé', 'Dë', 'Më', 'Do', 'Fr', 'Sa'],
+    'ordinal' => ':number.',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' an '],
+    'meridiem' => ['moies', 'mëttes'],
+    'weekdays_short_standalone' => ['Son', 'Méi', 'Dën', 'Mët', 'Don', 'Fre', 'Sam'],
+    'months_short_standalone' => ['Jan', 'Feb', 'Mäe', 'Abr', 'Mee', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb_LU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb_LU.php
new file mode 100644
index 0000000..c8625fe
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lb_LU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/lb.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg.php
new file mode 100644
index 0000000..48bc68b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/lg_UG.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg_UG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg_UG.php
new file mode 100644
index 0000000..aa02214
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lg_UG.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Akademe ya Luganda Kizito Birabwa kompyuta@kizito.uklinux.net
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Janwaliyo', 'Febwaliyo', 'Marisi', 'Apuli', 'Maayi', 'Juuni', 'Julaayi', 'Agusito', 'Sebuttemba', 'Okitobba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apu', 'Maa', 'Juu', 'Jul', 'Agu', 'Seb', 'Oki', 'Nov', 'Des'],
+    'weekdays' => ['Sabiiti', 'Balaza', 'Lwakubiri', 'Lwakusatu', 'Lwakuna', 'Lwakutaano', 'Lwamukaaga'],
+    'weekdays_short' => ['Sab', 'Bal', 'Lw2', 'Lw3', 'Lw4', 'Lw5', 'Lw6'],
+    'weekdays_min' => ['Sab', 'Bal', 'Lw2', 'Lw3', 'Lw4', 'Lw5', 'Lw6'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'month' => ':count njuba', // less reliable
+    'm' => ':count njuba', // less reliable
+    'a_month' => ':count njuba', // less reliable
+
+    'year' => ':count mwaaka',
+    'y' => ':count mwaaka',
+    'a_year' => ':count mwaaka',
+
+    'week' => ':count sabbiiti',
+    'w' => ':count sabbiiti',
+    'a_week' => ':count sabbiiti',
+
+    'day' => ':count lunaku',
+    'd' => ':count lunaku',
+    'a_day' => ':count lunaku',
+
+    'hour' => 'saawa :count',
+    'h' => 'saawa :count',
+    'a_hour' => 'saawa :count',
+
+    'minute' => 'ddakiika :count',
+    'min' => 'ddakiika :count',
+    'a_minute' => 'ddakiika :count',
+
+    'second' => ':count kyʼokubiri',
+    's' => ':count kyʼokubiri',
+    'a_second' => ':count kyʼokubiri',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li.php
new file mode 100644
index 0000000..86c3009
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/li_NL.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li_NL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li_NL.php
new file mode 100644
index 0000000..6c5feb7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/li_NL.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandriva.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['jannewarie', 'fibberwarie', 'miert', 'eprèl', 'meij', 'junie', 'julie', 'augustus', 'september', 'oktober', 'november', 'desember'],
+    'months_short' => ['jan', 'fib', 'mie', 'epr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['zóndig', 'maondig', 'daensdig', 'goonsdig', 'dónderdig', 'vriedig', 'zaoterdig'],
+    'weekdays_short' => ['zón', 'mao', 'dae', 'goo', 'dón', 'vri', 'zao'],
+    'weekdays_min' => ['zón', 'mao', 'dae', 'goo', 'dón', 'vri', 'zao'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'minute' => ':count momênt', // less reliable
+    'min' => ':count momênt', // less reliable
+    'a_minute' => ':count momênt', // less reliable
+
+    'year' => ':count jaor',
+    'y' => ':count jaor',
+    'a_year' => ':count jaor',
+
+    'month' => ':count maond',
+    'm' => ':count maond',
+    'a_month' => ':count maond',
+
+    'week' => ':count waek',
+    'w' => ':count waek',
+    'a_week' => ':count waek',
+
+    'day' => ':count daag',
+    'd' => ':count daag',
+    'a_day' => ':count daag',
+
+    'hour' => ':count oer',
+    'h' => ':count oer',
+    'a_hour' => ':count oer',
+
+    'second' => ':count Secónd',
+    's' => ':count Secónd',
+    'a_second' => ':count Secónd',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij.php
new file mode 100644
index 0000000..45732b5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/lij_IT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij_IT.php
new file mode 100644
index 0000000..f8726fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lij_IT.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Gastaldi    alessio.gastaldi@libero.it
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['zenâ', 'fevrâ', 'marzo', 'avrî', 'mazzo', 'zûgno', 'lûggio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dixembre'],
+    'months_short' => ['zen', 'fev', 'mar', 'arv', 'maz', 'zûg', 'lûg', 'ago', 'set', 'ött', 'nov', 'dix'],
+    'weekdays' => ['domenega', 'lûnedì', 'martedì', 'mercUrdì', 'zêggia', 'venardì', 'sabbo'],
+    'weekdays_short' => ['dom', 'lûn', 'mar', 'mer', 'zêu', 'ven', 'sab'],
+    'weekdays_min' => ['dom', 'lûn', 'mar', 'mer', 'zêu', 'ven', 'sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count etæ', // less reliable
+    'y' => ':count etæ', // less reliable
+    'a_year' => ':count etæ', // less reliable
+
+    'month' => ':count meize',
+    'm' => ':count meize',
+    'a_month' => ':count meize',
+
+    'week' => ':count settemannha',
+    'w' => ':count settemannha',
+    'a_week' => ':count settemannha',
+
+    'day' => ':count giorno',
+    'd' => ':count giorno',
+    'a_day' => ':count giorno',
+
+    'hour' => ':count reléuio', // less reliable
+    'h' => ':count reléuio', // less reliable
+    'a_hour' => ':count reléuio', // less reliable
+
+    'minute' => ':count menûo',
+    'min' => ':count menûo',
+    'a_minute' => ':count menûo',
+
+    'second' => ':count segondo',
+    's' => ':count segondo',
+    'a_second' => ':count segondo',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lkt.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lkt.php
new file mode 100644
index 0000000..968b058
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lkt.php
@@ -0,0 +1,40 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+
+    'month' => ':count haŋwí', // less reliable
+    'm' => ':count haŋwí', // less reliable
+    'a_month' => ':count haŋwí', // less reliable
+
+    'week' => ':count šakówiŋ', // less reliable
+    'w' => ':count šakówiŋ', // less reliable
+    'a_week' => ':count šakówiŋ', // less reliable
+
+    'hour' => ':count maza škaŋškaŋ', // less reliable
+    'h' => ':count maza škaŋškaŋ', // less reliable
+    'a_hour' => ':count maza škaŋškaŋ', // less reliable
+
+    'minute' => ':count číkʼala', // less reliable
+    'min' => ':count číkʼala', // less reliable
+    'a_minute' => ':count číkʼala', // less reliable
+
+    'year' => ':count waníyetu',
+    'y' => ':count waníyetu',
+    'a_year' => ':count waníyetu',
+
+    'day' => ':count aŋpétu',
+    'd' => ':count aŋpétu',
+    'a_day' => ':count aŋpétu',
+
+    'second' => ':count icinuŋpa',
+    's' => ':count icinuŋpa',
+    'a_second' => ':count icinuŋpa',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln.php
new file mode 100644
index 0000000..9d5c35d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ubuntu René Manassé GALEKWA renemanasse@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'months' => ['sánzá ya yambo', 'sánzá ya míbalé', 'sánzá ya mísáto', 'sánzá ya mínei', 'sánzá ya mítáno', 'sánzá ya motóbá', 'sánzá ya nsambo', 'sánzá ya mwambe', 'sánzá ya libwa', 'sánzá ya zómi', 'sánzá ya zómi na mɔ̌kɔ́', 'sánzá ya zómi na míbalé'],
+    'months_short' => ['yan', 'fbl', 'msi', 'apl', 'mai', 'yun', 'yul', 'agt', 'stb', 'ɔtb', 'nvb', 'dsb'],
+    'weekdays' => ['Lomíngo', 'Mosálá mɔ̌kɔ́', 'Misálá míbalé', 'Misálá mísáto', 'Misálá mínei', 'Misálá mítáno', 'Mpɔ́sɔ'],
+    'weekdays_short' => ['m1.', 'm2.', 'm3.', 'm4.', 'm5.', 'm6.', 'm7.'],
+    'weekdays_min' => ['m1.', 'm2.', 'm3.', 'm4.', 'm5.', 'm6.', 'm7.'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'mbula :count',
+    'y' => 'mbula :count',
+    'a_year' => 'mbula :count',
+
+    'month' => 'sánzá :count',
+    'm' => 'sánzá :count',
+    'a_month' => 'sánzá :count',
+
+    'week' => 'mpɔ́sɔ :count',
+    'w' => 'mpɔ́sɔ :count',
+    'a_week' => 'mpɔ́sɔ :count',
+
+    'day' => 'mokɔlɔ :count',
+    'd' => 'mokɔlɔ :count',
+    'a_day' => 'mokɔlɔ :count',
+
+    'hour' => 'ngonga :count',
+    'h' => 'ngonga :count',
+    'a_hour' => 'ngonga :count',
+
+    'minute' => 'miniti :count',
+    'min' => 'miniti :count',
+    'a_minute' => 'miniti :count',
+
+    'second' => 'segɔnde :count',
+    's' => 'segɔnde :count',
+    'a_second' => 'segɔnde :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_AO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_AO.php
new file mode 100644
index 0000000..e244096
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_AO.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ln.php', [
+    'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
+    'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CD.php
new file mode 100644
index 0000000..13635fc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CD.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ubuntu René Manassé GALEKWA renemanasse@gmail.com
+ */
+return require __DIR__.'/ln.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CF.php
new file mode 100644
index 0000000..e244096
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CF.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ln.php', [
+    'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
+    'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CG.php
new file mode 100644
index 0000000..e244096
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ln_CG.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ln.php', [
+    'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
+    'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
+    'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo.php
new file mode 100644
index 0000000..48715f5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo.php
@@ -0,0 +1,62 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - ryanhart2
+ */
+return [
+    'year' => ':count ປີ',
+    'y' => ':count ປີ',
+    'month' => ':count ເດືອນ',
+    'm' => ':count ດ. ',
+    'week' => ':count ອາທິດ',
+    'w' => ':count ອທ. ',
+    'day' => ':count ມື້',
+    'd' => ':count ມື້',
+    'hour' => ':count ຊົ່ວໂມງ',
+    'h' => ':count ຊມ. ',
+    'minute' => ':count ນາທີ',
+    'min' => ':count ນທ. ',
+    'second' => '{1}ບໍ່ເທົ່າໃດວິນາທີ|]1,Inf[:count ວິນາທີ',
+    's' => ':count ວິ. ',
+    'ago' => ':timeຜ່ານມາ',
+    'from_now' => 'ອີກ :time',
+    'diff_now' => 'ຕອນນີ້',
+    'diff_today' => 'ມື້ນີ້ເວລາ',
+    'diff_yesterday' => 'ມື້ວານນີ້ເວລາ',
+    'diff_tomorrow' => 'ມື້ອື່ນເວລາ',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'ວັນdddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ມື້ນີ້ເວລາ] LT',
+        'nextDay' => '[ມື້ອື່ນເວລາ] LT',
+        'nextWeek' => '[ວັນ]dddd[ໜ້າເວລາ] LT',
+        'lastDay' => '[ມື້ວານນີ້ເວລາ] LT',
+        'lastWeek' => '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => 'ທີ່:number',
+    'meridiem' => ['ຕອນເຊົ້າ', 'ຕອນແລງ'],
+    'months' => ['ມັງກອນ', 'ກຸມພາ', 'ມີນາ', 'ເມສາ', 'ພຶດສະພາ', 'ມິຖຸນາ', 'ກໍລະກົດ', 'ສິງຫາ', 'ກັນຍາ', 'ຕຸລາ', 'ພະຈິກ', 'ທັນວາ'],
+    'months_short' => ['ມັງກອນ', 'ກຸມພາ', 'ມີນາ', 'ເມສາ', 'ພຶດສະພາ', 'ມິຖຸນາ', 'ກໍລະກົດ', 'ສິງຫາ', 'ກັນຍາ', 'ຕຸລາ', 'ພະຈິກ', 'ທັນວາ'],
+    'weekdays' => ['ອາທິດ', 'ຈັນ', 'ອັງຄານ', 'ພຸດ', 'ພະຫັດ', 'ສຸກ', 'ເສົາ'],
+    'weekdays_short' => ['ທິດ', 'ຈັນ', 'ອັງຄານ', 'ພຸດ', 'ພະຫັດ', 'ສຸກ', 'ເສົາ'],
+    'weekdays_min' => ['ທ', 'ຈ', 'ອຄ', 'ພ', 'ພຫ', 'ສກ', 'ສ'],
+    'list' => [', ', 'ແລະ '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo_LA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo_LA.php
new file mode 100644
index 0000000..c0a1d6b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lo_LA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/lo.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc.php
new file mode 100644
index 0000000..10661bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+
+    'minute' => ':count هنر', // less reliable
+    'min' => ':count هنر', // less reliable
+    'a_minute' => ':count هنر', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc_IQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc_IQ.php
new file mode 100644
index 0000000..449d863
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lrc_IQ.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/lrc.php', [
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt.php
new file mode 100644
index 0000000..7d1b6f7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt.php
@@ -0,0 +1,135 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - tjku
+ * - valdas406
+ * - Justas Palumickas
+ * - Max Melentiev
+ * - Andrius Janauskas
+ * - Juanito Fatas
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Nicolás Hock Isaza
+ * - Laurynas Butkus
+ * - Sven Fuchs
+ * - Dominykas Tijūnaitis
+ * - Justinas Bolys
+ * - Ričardas
+ * - Kirill Chalkin
+ * - Rolandas
+ * - Justinas (Gamesh)
+ */
+return [
+    'year' => ':count metai|:count metai|:count metų',
+    'y' => ':count m.',
+    'month' => ':count mėnuo|:count mėnesiai|:count mėnesį',
+    'm' => ':count mėn.',
+    'week' => ':count savaitė|:count savaitės|:count savaitę',
+    'w' => ':count sav.',
+    'day' => ':count diena|:count dienos|:count dienų',
+    'd' => ':count d.',
+    'hour' => ':count valanda|:count valandos|:count valandų',
+    'h' => ':count val.',
+    'minute' => ':count minutė|:count minutės|:count minutę',
+    'min' => ':count min.',
+    'second' => ':count sekundė|:count sekundės|:count sekundžių',
+    's' => ':count sek.',
+
+    'year_ago' => ':count metus|:count metus|:count metų',
+    'month_ago' => ':count mėnesį|:count mėnesius|:count mėnesių',
+    'week_ago' => ':count savaitę|:count savaites|:count savaičių',
+    'day_ago' => ':count dieną|:count dienas|:count dienų',
+    'hour_ago' => ':count valandą|:count valandas|:count valandų',
+    'minute_ago' => ':count minutę|:count minutes|:count minučių',
+    'second_ago' => ':count sekundę|:count sekundes|:count sekundžių',
+
+    'year_from_now' => ':count metų',
+    'month_from_now' => ':count mėnesio|:count mėnesių|:count mėnesių',
+    'week_from_now' => ':count savaitės|:count savaičių|:count savaičių',
+    'day_from_now' => ':count dienos|:count dienų|:count dienų',
+    'hour_from_now' => ':count valandos|:count valandų|:count valandų',
+    'minute_from_now' => ':count minutės|:count minučių|:count minučių',
+    'second_from_now' => ':count sekundės|:count sekundžių|:count sekundžių',
+
+    'year_after' => ':count metų',
+    'month_after' => ':count mėnesio|:count mėnesių|:count mėnesių',
+    'week_after' => ':count savaitės|:count savaičių|:count savaičių',
+    'day_after' => ':count dienos|:count dienų|:count dienų',
+    'hour_after' => ':count valandos|:count valandų|:count valandų',
+    'minute_after' => ':count minutės|:count minučių|:count minučių',
+    'second_after' => ':count sekundės|:count sekundžių|:count sekundžių',
+
+    'ago' => 'prieš :time',
+    'from_now' => ':time nuo dabar',
+    'after' => 'po :time',
+    'before' => 'už :time',
+
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'diff_now' => 'ką tik',
+    'diff_today' => 'Šiandien',
+    'diff_yesterday' => 'vakar',
+    'diff_yesterday_regexp' => 'Vakar',
+    'diff_tomorrow' => 'rytoj',
+    'diff_tomorrow_regexp' => 'Rytoj',
+    'diff_before_yesterday' => 'užvakar',
+    'diff_after_tomorrow' => 'poryt',
+
+    'period_recurrences' => 'kartą|:count kartų',
+    'period_interval' => 'kiekvieną :interval',
+    'period_start_date' => 'nuo :date',
+    'period_end_date' => 'iki :date',
+
+    'months' => ['sausio', 'vasario', 'kovo', 'balandžio', 'gegužės', 'birželio', 'liepos', 'rugpjūčio', 'rugsėjo', 'spalio', 'lapkričio', 'gruodžio'],
+    'months_standalone' => ['sausis', 'vasaris', 'kovas', 'balandis', 'gegužė', 'birželis', 'liepa', 'rugpjūtis', 'rugsėjis', 'spalis', 'lapkritis', 'gruodis'],
+    'months_regexp' => '/(L{2,4}|D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?)/',
+    'months_short' => ['sau', 'vas', 'kov', 'bal', 'geg', 'bir', 'lie', 'rgp', 'rgs', 'spa', 'lap', 'gru'],
+    'weekdays' => ['sekmadienį', 'pirmadienį', 'antradienį', 'trečiadienį', 'ketvirtadienį', 'penktadienį', 'šeštadienį'],
+    'weekdays_standalone' => ['sekmadienis', 'pirmadienis', 'antradienis', 'trečiadienis', 'ketvirtadienis', 'penktadienis', 'šeštadienis'],
+    'weekdays_short' => ['sek', 'pir', 'ant', 'tre', 'ket', 'pen', 'šeš'],
+    'weekdays_min' => ['se', 'pi', 'an', 'tr', 'ke', 'pe', 'še'],
+    'list' => [', ', ' ir '],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'MMMM DD, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Šiandien] LT',
+        'nextDay' => '[Rytoj] LT',
+        'nextWeek' => 'dddd LT',
+        'lastDay' => '[Vakar] LT',
+        'lastWeek' => '[Paskutinį] dddd LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        switch ($number) {
+            case 0:
+                return '0-is';
+            case 3:
+                return '3-ias';
+            default:
+                return "$number-as";
+        }
+    },
+    'meridiem' => ['priešpiet', 'popiet'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt_LT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt_LT.php
new file mode 100644
index 0000000..c3087f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lt_LT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/lt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lu.php
new file mode 100644
index 0000000..8dab541
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lu.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Dinda', 'Dilolo'],
+    'weekdays' => ['Lumingu', 'Nkodya', 'Ndàayà', 'Ndangù', 'Njòwa', 'Ngòvya', 'Lubingu'],
+    'weekdays_short' => ['Lum', 'Nko', 'Ndy', 'Ndg', 'Njw', 'Ngv', 'Lub'],
+    'weekdays_min' => ['Lum', 'Nko', 'Ndy', 'Ndg', 'Njw', 'Ngv', 'Lub'],
+    'months' => ['Ciongo', 'Lùishi', 'Lusòlo', 'Mùuyà', 'Lumùngùlù', 'Lufuimi', 'Kabàlàshìpù', 'Lùshìkà', 'Lutongolo', 'Lungùdi', 'Kaswèkèsè', 'Ciswà'],
+    'months_short' => ['Cio', 'Lui', 'Lus', 'Muu', 'Lum', 'Luf', 'Kab', 'Lush', 'Lut', 'Lun', 'Kas', 'Cis'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luo.php
new file mode 100644
index 0000000..201ca96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luo.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['OD', 'OT'],
+    'weekdays' => ['Jumapil', 'Wuok Tich', 'Tich Ariyo', 'Tich Adek', 'Tich Ang’wen', 'Tich Abich', 'Ngeso'],
+    'weekdays_short' => ['JMP', 'WUT', 'TAR', 'TAD', 'TAN', 'TAB', 'NGS'],
+    'weekdays_min' => ['JMP', 'WUT', 'TAR', 'TAD', 'TAN', 'TAB', 'NGS'],
+    'months' => ['Dwe mar Achiel', 'Dwe mar Ariyo', 'Dwe mar Adek', 'Dwe mar Ang’wen', 'Dwe mar Abich', 'Dwe mar Auchiel', 'Dwe mar Abiriyo', 'Dwe mar Aboro', 'Dwe mar Ochiko', 'Dwe mar Apar', 'Dwe mar gi achiel', 'Dwe mar Apar gi ariyo'],
+    'months_short' => ['DAC', 'DAR', 'DAD', 'DAN', 'DAH', 'DAU', 'DAO', 'DAB', 'DOC', 'DAP', 'DGI', 'DAG'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => 'higni :count',
+    'y' => 'higni :count',
+    'a_year' => ':higni :count',
+
+    'month' => 'dweche :count',
+    'm' => 'dweche :count',
+    'a_month' => 'dweche :count',
+
+    'week' => 'jumbe :count',
+    'w' => 'jumbe :count',
+    'a_week' => 'jumbe :count',
+
+    'day' => 'ndalo :count',
+    'd' => 'ndalo :count',
+    'a_day' => 'ndalo :count',
+
+    'hour' => 'seche :count',
+    'h' => 'seche :count',
+    'a_hour' => 'seche :count',
+
+    'minute' => 'dakika :count',
+    'min' => 'dakika :count',
+    'a_minute' => 'dakika :count',
+
+    'second' => 'nus dakika :count',
+    's' => 'nus dakika :count',
+    'a_second' => 'nus dakika :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luy.php
new file mode 100644
index 0000000..5219125
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/luy.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Jumapiri', 'Jumatatu', 'Jumanne', 'Jumatano', 'Murwa wa Kanne', 'Murwa wa Katano', 'Jumamosi'],
+    'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
+    'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    // Too unreliable
+    /*
+    'year' => ':count liliino', // less reliable
+    'y' => ':count liliino', // less reliable
+    'a_year' => ':count liliino', // less reliable
+
+    'month' => ':count kumwesi', // less reliable
+    'm' => ':count kumwesi', // less reliable
+    'a_month' => ':count kumwesi', // less reliable
+
+    'week' => ':count olutambi', // less reliable
+    'w' => ':count olutambi', // less reliable
+    'a_week' => ':count olutambi', // less reliable
+
+    'day' => ':count luno', // less reliable
+    'd' => ':count luno', // less reliable
+    'a_day' => ':count luno', // less reliable
+
+    'hour' => ':count ekengele', // less reliable
+    'h' => ':count ekengele', // less reliable
+    'a_hour' => ':count ekengele', // less reliable
+
+    'minute' => ':count omundu', // less reliable
+    'min' => ':count omundu', // less reliable
+    'a_minute' => ':count omundu', // less reliable
+
+    'second' => ':count liliino', // less reliable
+    's' => ':count liliino', // less reliable
+    'a_second' => ':count liliino', // less reliable
+    */
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv.php
new file mode 100644
index 0000000..724b58d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv.php
@@ -0,0 +1,173 @@
+<?php
+
+use Carbon\CarbonInterface;
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - pirminis
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Andris Zāģeris
+ * - Max Melentiev
+ * - Edgars Beigarts
+ * - Juanito Fatas
+ * - Vitauts Stočka
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Kaspars Bankovskis
+ * - Nicolás Hock Isaza
+ * - Viesturs Kavacs (Kavacky)
+ * - zakse
+ * - Janis Eglitis (janiseglitis)
+ * - Guntars
+ * - Juris Sudmalis
+ */
+$daysOfWeek = ['svētdiena', 'pirmdiena', 'otrdiena', 'trešdiena', 'ceturtdiena', 'piektdiena', 'sestdiena'];
+$daysOfWeekLocativum = ['svētdien', 'pirmdien', 'otrdien', 'trešdien', 'ceturtdien', 'piektdien', 'sestdien'];
+
+$transformDiff = function ($input) {
+    return strtr($input, [
+        // Nominative => "pirms/pēc" Dative
+        'gads' => 'gada',
+        'gadi' => 'gadiem',
+        'gadu' => 'gadiem',
+        'mēnesis' => 'mēneša',
+        'mēneši' => 'mēnešiem',
+        'mēnešu' => 'mēnešiem',
+        'nedēļa' => 'nedēļas',
+        'nedēļas' => 'nedēļām',
+        'nedēļu' => 'nedēļām',
+        'diena' => 'dienas',
+        'dienas' => 'dienām',
+        'dienu' => 'dienām',
+        'stunda' => 'stundas',
+        'stundas' => 'stundām',
+        'stundu' => 'stundām',
+        'minūte' => 'minūtes',
+        'minūtes' => 'minūtēm',
+        'minūšu' => 'minūtēm',
+        'sekunde' => 'sekundes',
+        'sekundes' => 'sekundēm',
+        'sekunžu' => 'sekundēm',
+    ]);
+};
+
+return [
+    'ago' => function ($time) use ($transformDiff) {
+        return 'pirms '.$transformDiff($time);
+    },
+    'from_now' => function ($time) use ($transformDiff) {
+        return 'pēc '.$transformDiff($time);
+    },
+
+    'year' => '0 gadu|:count gads|:count gadi',
+    'y' => ':count g.',
+    'a_year' => '{1}gads|0 gadu|:count gads|:count gadi',
+    'month' => '0 mēnešu|:count mēnesis|:count mēneši',
+    'm' => ':count mēn.',
+    'a_month' => '{1}mēnesis|0 mēnešu|:count mēnesis|:count mēneši',
+    'week' => '0 nedēļu|:count nedēļa|:count nedēļas',
+    'w' => ':count ned.',
+    'a_week' => '{1}nedēļa|0 nedēļu|:count nedēļa|:count nedēļas',
+    'day' => '0 dienu|:count diena|:count dienas',
+    'd' => ':count d.',
+    'a_day' => '{1}diena|0 dienu|:count diena|:count dienas',
+    'hour' => '0 stundu|:count stunda|:count stundas',
+    'h' => ':count st.',
+    'a_hour' => '{1}stunda|0 stundu|:count stunda|:count stundas',
+    'minute' => '0 minūšu|:count minūte|:count minūtes',
+    'min' => ':count min.',
+    'a_minute' => '{1}minūte|0 minūšu|:count minūte|:count minūtes',
+    'second' => '0 sekunžu|:count sekunde|:count sekundes',
+    's' => ':count sek.',
+    'a_second' => '{1}sekunde|0 sekunžu|:count sekunde|:count sekundes',
+
+    'after' => ':time vēlāk',
+    'year_after' => '0 gadus|:count gadu|:count gadus',
+    'a_year_after' => '{1}gadu|0 gadus|:count gadu|:count gadus',
+    'month_after' => '0 mēnešus|:count mēnesi|:count mēnešus',
+    'a_month_after' => '{1}mēnesi|0 mēnešus|:count mēnesi|:count mēnešus',
+    'week_after' => '0 nedēļas|:count nedēļu|:count nedēļas',
+    'a_week_after' => '{1}nedēļu|0 nedēļas|:count nedēļu|:count nedēļas',
+    'day_after' => '0 dienas|:count dienu|:count dienas',
+    'a_day_after' => '{1}dienu|0 dienas|:count dienu|:count dienas',
+    'hour_after' => '0 stundas|:count stundu|:count stundas',
+    'a_hour_after' => '{1}stundu|0 stundas|:count stundu|:count stundas',
+    'minute_after' => '0 minūtes|:count minūti|:count minūtes',
+    'a_minute_after' => '{1}minūti|0 minūtes|:count minūti|:count minūtes',
+    'second_after' => '0 sekundes|:count sekundi|:count sekundes',
+    'a_second_after' => '{1}sekundi|0 sekundes|:count sekundi|:count sekundes',
+
+    'before' => ':time agrāk',
+    'year_before' => '0 gadus|:count gadu|:count gadus',
+    'a_year_before' => '{1}gadu|0 gadus|:count gadu|:count gadus',
+    'month_before' => '0 mēnešus|:count mēnesi|:count mēnešus',
+    'a_month_before' => '{1}mēnesi|0 mēnešus|:count mēnesi|:count mēnešus',
+    'week_before' => '0 nedēļas|:count nedēļu|:count nedēļas',
+    'a_week_before' => '{1}nedēļu|0 nedēļas|:count nedēļu|:count nedēļas',
+    'day_before' => '0 dienas|:count dienu|:count dienas',
+    'a_day_before' => '{1}dienu|0 dienas|:count dienu|:count dienas',
+    'hour_before' => '0 stundas|:count stundu|:count stundas',
+    'a_hour_before' => '{1}stundu|0 stundas|:count stundu|:count stundas',
+    'minute_before' => '0 minūtes|:count minūti|:count minūtes',
+    'a_minute_before' => '{1}minūti|0 minūtes|:count minūti|:count minūtes',
+    'second_before' => '0 sekundes|:count sekundi|:count sekundes',
+    'a_second_before' => '{1}sekundi|0 sekundes|:count sekundi|:count sekundes',
+
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' un '],
+
+    'diff_now' => 'tagad',
+    'diff_today' => 'šodien',
+    'diff_yesterday' => 'vakar',
+    'diff_before_yesterday' => 'aizvakar',
+    'diff_tomorrow' => 'rīt',
+    'diff_after_tomorrow' => 'parīt',
+
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY.',
+        'LL' => 'YYYY. [gada] D. MMMM',
+        'LLL' => 'DD.MM.YYYY., HH:mm',
+        'LLLL' => 'YYYY. [gada] D. MMMM, HH:mm',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[šodien] [plkst.] LT',
+        'nextDay' => '[rīt] [plkst.] LT',
+        'nextWeek' => function (CarbonInterface $current, CarbonInterface $other) use ($daysOfWeekLocativum) {
+            if ($current->week !== $other->week) {
+                return '[nākošo] ['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
+            }
+
+            return '['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
+        },
+        'lastDay' => '[vakar] [plkst.] LT',
+        'lastWeek' => function (CarbonInterface $current) use ($daysOfWeekLocativum) {
+            return '[pagājušo] ['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
+        },
+        'sameElse' => 'L',
+    ],
+
+    'weekdays' => $daysOfWeek,
+    'weekdays_short' => ['Sv.', 'P.', 'O.', 'T.', 'C.', 'Pk.', 'S.'],
+    'weekdays_min' => ['Sv.', 'P.', 'O.', 'T.', 'C.', 'Pk.', 'S.'],
+    'months' => ['janvārī', 'februārī', 'martā', 'aprīlī', 'maijā', 'jūnijā', 'jūlijā', 'augustā', 'septembrī', 'oktobrī', 'novembrī', 'decembrī'],
+    'months_short' => ['Janv', 'Feb', 'Mar', 'Apr', 'Mai', 'Jūn', 'Jūl', 'Aug', 'Sept', 'Okt', 'Nov', 'Dec'],
+    'meridiem' => ['priekšpusdiena', 'pēcpusdiena'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv_LV.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv_LV.php
new file mode 100644
index 0000000..46c0f43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lv_LV.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/lv.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh.php
new file mode 100644
index 0000000..1180c6b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/lzh_TW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh_TW.php
new file mode 100644
index 0000000..3b1493e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/lzh_TW.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'OY[年]MMMMOD[日]',
+    ],
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => [' 一 ', ' 二 ', ' 三 ', ' 四 ', ' 五 ', ' 六 ', ' 七 ', ' 八 ', ' 九 ', ' 十 ', '十一', '十二'],
+    'weekdays' => ['週日', '週一', '週二', '週三', '週四', '週五', '週六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'day_of_first_week_of_year' => 1,
+    'alt_numbers' => ['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二', '十三', '十四', '十五', '十六', '十七', '十八', '十九', '廿', '廿一', '廿二', '廿三', '廿四', '廿五', '廿六', '廿七', '廿八', '廿九', '卅', '卅一'],
+    'meridiem' => ['朝', '暮'],
+
+    'year' => ':count 夏', // less reliable
+    'y' => ':count 夏', // less reliable
+    'a_year' => ':count 夏', // less reliable
+
+    'month' => ':count 月', // less reliable
+    'm' => ':count 月', // less reliable
+    'a_month' => ':count 月', // less reliable
+
+    'hour' => ':count 氧', // less reliable
+    'h' => ':count 氧', // less reliable
+    'a_hour' => ':count 氧', // less reliable
+
+    'minute' => ':count 點', // less reliable
+    'min' => ':count 點', // less reliable
+    'a_minute' => ':count 點', // less reliable
+
+    'second' => ':count 楚', // less reliable
+    's' => ':count 楚', // less reliable
+    'a_second' => ':count 楚', // less reliable
+
+    'week' => ':count 星期',
+    'w' => ':count 星期',
+    'a_week' => ':count 星期',
+
+    'day' => ':count 日(曆法)',
+    'd' => ':count 日(曆法)',
+    'a_day' => ':count 日(曆法)',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag.php
new file mode 100644
index 0000000..7532436
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mag_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag_IN.php
new file mode 100644
index 0000000..193f67a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mag_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bhashaghar@googlegroups.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'weekdays' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
+    'weekdays_short' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
+    'weekdays_min' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai.php
new file mode 100644
index 0000000..792b973
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mai_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai_IN.php
new file mode 100644
index 0000000..03049d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mai_IN.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Maithili Computing Research Center, Pune, India    rajeshkajha@yahoo.com,akhilesh.k@samusng.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['बैसाख', 'जेठ', 'अषाढ़', 'सावोन', 'भादो', 'आसिन', 'कातिक', 'अगहन', 'पूस', 'माघ', 'फागुन', 'चैति'],
+    'months_short' => ['बैसाख', 'जेठ', 'अषाढ़', 'सावोन', 'भादो', 'आसिन', 'कातिक', 'अगहन', 'पूस', 'माघ', 'फागुन', 'चैति'],
+    'weekdays' => ['रविदिन', 'सोमदिन', 'मंगलदिन', 'बुधदिन', 'बृहस्पतीदिन', 'शुक्रदिन', 'शनीदिन'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पती', 'शुक्र', 'शनी'],
+    'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पती', 'शुक्र', 'शनी'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+
+    'year' => ':count ऋतु', // less reliable
+    'y' => ':count ऋतु', // less reliable
+    'a_year' => ':count ऋतु', // less reliable
+
+    'month' => ':count महिना',
+    'm' => ':count महिना',
+    'a_month' => ':count महिना',
+
+    'week' => ':count श्रेणी:क्यालेन्डर', // less reliable
+    'w' => ':count श्रेणी:क्यालेन्डर', // less reliable
+    'a_week' => ':count श्रेणी:क्यालेन्डर', // less reliable
+
+    'day' => ':count दिन',
+    'd' => ':count दिन',
+    'a_day' => ':count दिन',
+
+    'hour' => ':count घण्टा',
+    'h' => ':count घण्टा',
+    'a_hour' => ':count घण्टा',
+
+    'minute' => ':count समय', // less reliable
+    'min' => ':count समय', // less reliable
+    'a_minute' => ':count समय', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas.php
new file mode 100644
index 0000000..723ae67
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas.php
@@ -0,0 +1,50 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Ɛnkakɛnyá', 'Ɛndámâ'],
+    'weekdays' => ['Jumapílí', 'Jumatátu', 'Jumane', 'Jumatánɔ', 'Alaámisi', 'Jumáa', 'Jumamósi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Oladalʉ́', 'Arát', 'Ɔɛnɨ́ɔɨŋɔk', 'Olodoyíóríê inkókúâ', 'Oloilépūnyīē inkókúâ', 'Kújúɔrɔk', 'Mórusásin', 'Ɔlɔ́ɨ́bɔ́rárɛ', 'Kúshîn', 'Olgísan', 'Pʉshʉ́ka', 'Ntʉ́ŋʉ́s'],
+    'months_short' => ['Dal', 'Ará', 'Ɔɛn', 'Doy', 'Lép', 'Rok', 'Sás', 'Bɔ́r', 'Kús', 'Gís', 'Shʉ́', 'Ntʉ́'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count olameyu', // less reliable
+    'y' => ':count olameyu', // less reliable
+    'a_year' => ':count olameyu', // less reliable
+
+    'week' => ':count engolongeare orwiki', // less reliable
+    'w' => ':count engolongeare orwiki', // less reliable
+    'a_week' => ':count engolongeare orwiki', // less reliable
+
+    'hour' => ':count esahabu', // less reliable
+    'h' => ':count esahabu', // less reliable
+    'a_hour' => ':count esahabu', // less reliable
+
+    'second' => ':count are', // less reliable
+    's' => ':count are', // less reliable
+    'a_second' => ':count are', // less reliable
+
+    'month' => ':count olapa',
+    'm' => ':count olapa',
+    'a_month' => ':count olapa',
+
+    'day' => ':count enkolongʼ',
+    'd' => ':count enkolongʼ',
+    'a_day' => ':count enkolongʼ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas_TZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas_TZ.php
new file mode 100644
index 0000000..aa382b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mas_TZ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/mas.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mer.php
new file mode 100644
index 0000000..cb7ba8d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mer.php
@@ -0,0 +1,42 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['RŨ', 'ŨG'],
+    'weekdays' => ['Kiumia', 'Muramuko', 'Wairi', 'Wethatu', 'Wena', 'Wetano', 'Jumamosi'],
+    'weekdays_short' => ['KIU', 'MRA', 'WAI', 'WET', 'WEN', 'WTN', 'JUM'],
+    'weekdays_min' => ['KIU', 'MRA', 'WAI', 'WET', 'WEN', 'WTN', 'JUM'],
+    'months' => ['Januarĩ', 'Feburuarĩ', 'Machi', 'Ĩpurũ', 'Mĩĩ', 'Njuni', 'Njuraĩ', 'Agasti', 'Septemba', 'Oktũba', 'Novemba', 'Dicemba'],
+    'months_short' => ['JAN', 'FEB', 'MAC', 'ĨPU', 'MĨĨ', 'NJU', 'NJR', 'AGA', 'SPT', 'OKT', 'NOV', 'DEC'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count murume', // less reliable
+    'y' => ':count murume', // less reliable
+    'a_year' => ':count murume', // less reliable
+
+    'month' => ':count muchaara', // less reliable
+    'm' => ':count muchaara', // less reliable
+    'a_month' => ':count muchaara', // less reliable
+
+    'minute' => ':count monto', // less reliable
+    'min' => ':count monto', // less reliable
+    'a_minute' => ':count monto', // less reliable
+
+    'second' => ':count gikeno', // less reliable
+    's' => ':count gikeno', // less reliable
+    'a_second' => ':count gikeno', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe.php
new file mode 100644
index 0000000..4d6e6b6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mfe_MU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe_MU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe_MU.php
new file mode 100644
index 0000000..2d27b45
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mfe_MU.php
@@ -0,0 +1,53 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    akhilesh.k@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['zanvie', 'fevriye', 'mars', 'avril', 'me', 'zin', 'zilye', 'out', 'septam', 'oktob', 'novam', 'desam'],
+    'months_short' => ['zan', 'fev', 'mar', 'avr', 'me', 'zin', 'zil', 'out', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['dimans', 'lindi', 'mardi', 'merkredi', 'zedi', 'vandredi', 'samdi'],
+    'weekdays_short' => ['dim', 'lin', 'mar', 'mer', 'ze', 'van', 'sam'],
+    'weekdays_min' => ['dim', 'lin', 'mar', 'mer', 'ze', 'van', 'sam'],
+
+    'year' => ':count banané',
+    'y' => ':count banané',
+    'a_year' => ':count banané',
+
+    'month' => ':count mwa',
+    'm' => ':count mwa',
+    'a_month' => ':count mwa',
+
+    'week' => ':count sémenn',
+    'w' => ':count sémenn',
+    'a_week' => ':count sémenn',
+
+    'day' => ':count zour',
+    'd' => ':count zour',
+    'a_day' => ':count zour',
+
+    'hour' => ':count -er-tan',
+    'h' => ':count -er-tan',
+    'a_hour' => ':count -er-tan',
+
+    'minute' => ':count minitt',
+    'min' => ':count minitt',
+    'a_minute' => ':count minitt',
+
+    'second' => ':count déziém',
+    's' => ':count déziém',
+    'a_second' => ':count déziém',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg.php
new file mode 100644
index 0000000..40bc2a8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mg_MG.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg_MG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg_MG.php
new file mode 100644
index 0000000..6a14535
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mg_MG.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - The Debian Project modified by GNU//Linux Malagasy Rado Ramarotafika,Do-Risika RAFIEFERANTSIARONJY rado@linuxmg.org,dourix@free.fr
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Janoary', 'Febroary', 'Martsa', 'Aprily', 'Mey', 'Jona', 'Jolay', 'Aogositra', 'Septambra', 'Oktobra', 'Novambra', 'Desambra'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mey', 'Jon', 'Jol', 'Aog', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['alahady', 'alatsinainy', 'talata', 'alarobia', 'alakamisy', 'zoma', 'sabotsy'],
+    'weekdays_short' => ['lhd', 'lts', 'tlt', 'lrb', 'lkm', 'zom', 'sab'],
+    'weekdays_min' => ['lhd', 'lts', 'tlt', 'lrb', 'lkm', 'zom', 'sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'minute' => ':count minitra', // less reliable
+    'min' => ':count minitra', // less reliable
+    'a_minute' => ':count minitra', // less reliable
+
+    'year' => ':count taona',
+    'y' => ':count taona',
+    'a_year' => ':count taona',
+
+    'month' => ':count volana',
+    'm' => ':count volana',
+    'a_month' => ':count volana',
+
+    'week' => ':count herinandro',
+    'w' => ':count herinandro',
+    'a_week' => ':count herinandro',
+
+    'day' => ':count andro',
+    'd' => ':count andro',
+    'a_day' => ':count andro',
+
+    'hour' => ':count ora',
+    'h' => ':count ora',
+    'a_hour' => ':count ora',
+
+    'second' => ':count segondra',
+    's' => ':count segondra',
+    'a_second' => ':count segondra',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgh.php
new file mode 100644
index 0000000..65798a8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgh.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['wichishu', 'mchochil’l'],
+    'weekdays' => ['Sabato', 'Jumatatu', 'Jumanne', 'Jumatano', 'Arahamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Sab', 'Jtt', 'Jnn', 'Jtn', 'Ara', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Sab', 'Jtt', 'Jnn', 'Jtn', 'Ara', 'Iju', 'Jmo'],
+    'months' => ['Mweri wo kwanza', 'Mweri wo unayeli', 'Mweri wo uneraru', 'Mweri wo unecheshe', 'Mweri wo unethanu', 'Mweri wo thanu na mocha', 'Mweri wo saba', 'Mweri wo nane', 'Mweri wo tisa', 'Mweri wo kumi', 'Mweri wo kumi na moja', 'Mweri wo kumi na yel’li'],
+    'months_short' => ['Kwa', 'Una', 'Rar', 'Che', 'Tha', 'Moc', 'Sab', 'Nan', 'Tis', 'Kum', 'Moj', 'Yel'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgo.php
new file mode 100644
index 0000000..a5a0754
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mgo.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Aneg 1', 'Aneg 2', 'Aneg 3', 'Aneg 4', 'Aneg 5', 'Aneg 6', 'Aneg 7'],
+    'weekdays_short' => ['Aneg 1', 'Aneg 2', 'Aneg 3', 'Aneg 4', 'Aneg 5', 'Aneg 6', 'Aneg 7'],
+    'weekdays_min' => ['1', '2', '3', '4', '5', '6', '7'],
+    'months' => ['iməg mbegtug', 'imeg àbùbì', 'imeg mbəŋchubi', 'iməg ngwə̀t', 'iməg fog', 'iməg ichiibɔd', 'iməg àdùmbə̀ŋ', 'iməg ichika', 'iməg kud', 'iməg tèsiʼe', 'iməg zò', 'iməg krizmed'],
+    'months_short' => ['mbegtug', 'imeg àbùbì', 'imeg mbəŋchubi', 'iməg ngwə̀t', 'iməg fog', 'iməg ichiibɔd', 'iməg àdùmbə̀ŋ', 'iməg ichika', 'iməg kud', 'iməg tèsiʼe', 'iməg zò', 'iməg krizmed'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'dddd, YYYY MMMM DD HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr.php
new file mode 100644
index 0000000..6bbc9f6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mhr_RU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr_RU.php
new file mode 100644
index 0000000..309ead9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mhr_RU.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - PeshSajSoft Ltd. Vyacheslav Kileev slavakileev@yandex.ru
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY.MM.DD',
+    ],
+    'months' => ['Шорыкйол', 'Пургыж', 'Ӱярня', 'Вӱдшор', 'Ага', 'Пеледыш', 'Сӱрем', 'Сорла', 'Идым', 'Шыжа', 'Кылме', 'Теле'],
+    'months_short' => ['Шрк', 'Пгж', 'Ӱрн', 'Вшр', 'Ага', 'Пдш', 'Срм', 'Срл', 'Идм', 'Шыж', 'Клм', 'Тел'],
+    'weekdays' => ['Рушарня', 'Шочмо', 'Кушкыжмо', 'Вӱргече', 'Изарня', 'Кугарня', 'Шуматкече'],
+    'weekdays_short' => ['Ршр', 'Шчм', 'Кжм', 'Вгч', 'Изр', 'Кгр', 'Шмт'],
+    'weekdays_min' => ['Ршр', 'Шчм', 'Кжм', 'Вгч', 'Изр', 'Кгр', 'Шмт'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count идалык',
+    'y' => ':count идалык',
+    'a_year' => ':count идалык',
+
+    'month' => ':count Тылзе',
+    'm' => ':count Тылзе',
+    'a_month' => ':count Тылзе',
+
+    'week' => ':count арня',
+    'w' => ':count арня',
+    'a_week' => ':count арня',
+
+    'day' => ':count кече',
+    'd' => ':count кече',
+    'a_day' => ':count кече',
+
+    'hour' => ':count час',
+    'h' => ':count час',
+    'a_hour' => ':count час',
+
+    'minute' => ':count минут',
+    'min' => ':count минут',
+    'a_minute' => ':count минут',
+
+    'second' => ':count кокымшан',
+    's' => ':count кокымшан',
+    'a_second' => ':count кокымшан',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi.php
new file mode 100644
index 0000000..b7f51ec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi.php
@@ -0,0 +1,66 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - John Corrigan
+ * - François B
+ */
+return [
+    'year' => ':count tau',
+    'a_year' => '{1}he tau|:count tau',
+    'month' => ':count marama',
+    'a_month' => '{1}he marama|:count marama',
+    'week' => ':count wiki',
+    'a_week' => '{1}he wiki|:count wiki',
+    'day' => ':count ra',
+    'a_day' => '{1}he ra|:count ra',
+    'hour' => ':count haora',
+    'a_hour' => '{1}te haora|:count haora',
+    'minute' => ':count meneti',
+    'a_minute' => '{1}he meneti|:count meneti',
+    'second' => ':count hēkona',
+    'a_second' => '{1}te hēkona ruarua|:count hēkona',
+    'ago' => ':time i mua',
+    'from_now' => 'i roto i :time',
+    'diff_yesterday' => 'inanahi',
+    'diff_yesterday_regexp' => 'inanahi(?:\\s+i)?',
+    'diff_today' => 'i teie',
+    'diff_today_regexp' => 'i teie(?:\\s+mahana,)?(?:\\s+i)?',
+    'diff_tomorrow' => 'apopo',
+    'diff_tomorrow_regexp' => 'apopo(?:\\s+i)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY [i] HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY [i] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[i teie mahana, i] LT',
+        'nextDay' => '[apopo i] LT',
+        'nextWeek' => 'dddd [i] LT',
+        'lastDay' => '[inanahi i] LT',
+        'lastWeek' => 'dddd [whakamutunga i] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['Kohi-tāte', 'Hui-tanguru', 'Poutū-te-rangi', 'Paenga-whāwhā', 'Haratua', 'Pipiri', 'Hōngoingoi', 'Here-turi-kōkā', 'Mahuru', 'Whiringa-ā-nuku', 'Whiringa-ā-rangi', 'Hakihea'],
+    'months_short' => ['Kohi', 'Hui', 'Pou', 'Pae', 'Hara', 'Pipi', 'Hōngoi', 'Here', 'Mahu', 'Whi-nu', 'Whi-ra', 'Haki'],
+    'weekdays' => ['Rātapu', 'Mane', 'Tūrei', 'Wenerei', 'Tāite', 'Paraire', 'Hātarei'],
+    'weekdays_short' => ['Ta', 'Ma', 'Tū', 'We', 'Tāi', 'Pa', 'Hā'],
+    'weekdays_min' => ['Ta', 'Ma', 'Tū', 'We', 'Tāi', 'Pa', 'Hā'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' me te '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi_NZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi_NZ.php
new file mode 100644
index 0000000..123d229
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mi_NZ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/mi.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq.php
new file mode 100644
index 0000000..51e5a98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/miq_NI.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq_NI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq_NI.php
new file mode 100644
index 0000000..b56783e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/miq_NI.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['siakwa kati', 'kuswa kati', 'kakamuk kati', 'lî wainhka kati', 'lih mairin kati', 'lî kati', 'pastara kati', 'sikla kati', 'wîs kati', 'waupasa kati', 'yahbra kati', 'trisu kati'],
+    'months_short' => ['siakwa kati', 'kuswa kati', 'kakamuk kati', 'lî wainhka kati', 'lih mairin kati', 'lî kati', 'pastara kati', 'sikla kati', 'wîs kati', 'waupasa kati', 'yahbra kati', 'trisu kati'],
+    'weekdays' => ['sandi', 'mundi', 'tiusdi', 'wensde', 'tausde', 'praidi', 'satadi'],
+    'weekdays_short' => ['san', 'mun', 'tius', 'wens', 'taus', 'prai', 'sat'],
+    'weekdays_min' => ['san', 'mun', 'tius', 'wens', 'taus', 'prai', 'sat'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 7,
+    'meridiem' => ['VM', 'NM'],
+
+    'month' => ':count kati', // less reliable
+    'm' => ':count kati', // less reliable
+    'a_month' => ':count kati', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw.php
new file mode 100644
index 0000000..617154c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mjw_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw_IN.php
new file mode 100644
index 0000000..58ed0d1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mjw_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Jor Teron    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['Arkoi', 'Thangthang', 'There', 'Jangmi', 'Aru', 'Vosik', 'Jakhong', 'Paipai', 'Chiti', 'Phere', 'Phaikuni', 'Matijong'],
+    'months_short' => ['Ark', 'Thang', 'The', 'Jang', 'Aru', 'Vos', 'Jak', 'Pai', 'Chi', 'Phe', 'Phai', 'Mati'],
+    'weekdays' => ['Bhomkuru', 'Urmi', 'Durmi', 'Thelang', 'Theman', 'Bhomta', 'Bhomti'],
+    'weekdays_short' => ['Bhom', 'Ur', 'Dur', 'Tkel', 'Tkem', 'Bhta', 'Bhti'],
+    'weekdays_min' => ['Bhom', 'Ur', 'Dur', 'Tkel', 'Tkem', 'Bhta', 'Bhti'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk.php
new file mode 100644
index 0000000..853bc96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk.php
@@ -0,0 +1,113 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sashko Todorov
+ * - Josh Soref
+ * - François B
+ * - Serhan Apaydın
+ * - Borislav Mickov
+ * - JD Isaacks
+ * - Tomi Atanasoski
+ */
+return [
+    'year' => ':count година|:count години',
+    'a_year' => 'година|:count години',
+    'y' => ':count год.',
+    'month' => ':count месец|:count месеци',
+    'a_month' => 'месец|:count месеци',
+    'm' => ':count месец|:count месеци',
+    'week' => ':count седмица|:count седмици',
+    'a_week' => 'седмица|:count седмици',
+    'w' => ':count седмица|:count седмици',
+    'day' => ':count ден|:count дена',
+    'a_day' => 'ден|:count дена',
+    'd' => ':count ден|:count дена',
+    'hour' => ':count час|:count часа',
+    'a_hour' => 'час|:count часа',
+    'h' => ':count час|:count часа',
+    'minute' => ':count минута|:count минути',
+    'a_minute' => 'минута|:count минути',
+    'min' => ':count мин.',
+    'second' => ':count секунда|:count секунди',
+    'a_second' => 'неколку секунди|:count секунди',
+    's' => ':count сек.',
+    'ago' => 'пред :time',
+    'from_now' => 'после :time',
+    'after' => 'по :time',
+    'before' => 'пред :time',
+    'diff_now' => 'сега',
+    'diff_today' => 'Денес',
+    'diff_today_regexp' => 'Денес(?:\\s+во)?',
+    'diff_yesterday' => 'вчера',
+    'diff_yesterday_regexp' => 'Вчера(?:\\s+во)?',
+    'diff_tomorrow' => 'утре',
+    'diff_tomorrow_regexp' => 'Утре(?:\\s+во)?',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'D.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Денес во] LT',
+        'nextDay' => '[Утре во] LT',
+        'nextWeek' => '[Во] dddd [во] LT',
+        'lastDay' => '[Вчера во] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                case 3:
+                case 6:
+                    return '[Изминатата] dddd [во] LT';
+                default:
+                    return '[Изминатиот] dddd [во] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        $lastDigit = $number % 10;
+        $last2Digits = $number % 100;
+        if ($number === 0) {
+            return $number.'-ев';
+        }
+        if ($last2Digits === 0) {
+            return $number.'-ен';
+        }
+        if ($last2Digits > 10 && $last2Digits < 20) {
+            return $number.'-ти';
+        }
+        if ($lastDigit === 1) {
+            return $number.'-ви';
+        }
+        if ($lastDigit === 2) {
+            return $number.'-ри';
+        }
+        if ($lastDigit === 7 || $lastDigit === 8) {
+            return $number.'-ми';
+        }
+
+        return $number.'-ти';
+    },
+    'months' => ['јануари', 'февруари', 'март', 'април', 'мај', 'јуни', 'јули', 'август', 'септември', 'октомври', 'ноември', 'декември'],
+    'months_short' => ['јан', 'фев', 'мар', 'апр', 'мај', 'јун', 'јул', 'авг', 'сеп', 'окт', 'ное', 'дек'],
+    'weekdays' => ['недела', 'понеделник', 'вторник', 'среда', 'четврток', 'петок', 'сабота'],
+    'weekdays_short' => ['нед', 'пон', 'вто', 'сре', 'чет', 'пет', 'саб'],
+    'weekdays_min' => ['нe', 'пo', 'вт', 'ср', 'че', 'пе', 'сa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' и '],
+    'meridiem' => ['АМ', 'ПМ'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk_MK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk_MK.php
new file mode 100644
index 0000000..06ff7d9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mk_MK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/mk.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml.php
new file mode 100644
index 0000000..1abd6c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml.php
@@ -0,0 +1,76 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count വർഷം',
+    'a_year' => 'ഒരു വർഷം|:count വർഷം',
+    'month' => ':count മാസം',
+    'a_month' => 'ഒരു മാസം|:count മാസം',
+    'week' => ':count ആഴ്ച',
+    'a_week' => 'ഒരാഴ്ച|:count ആഴ്ച',
+    'day' => ':count ദിവസം',
+    'a_day' => 'ഒരു ദിവസം|:count ദിവസം',
+    'hour' => ':count മണിക്കൂർ',
+    'a_hour' => 'ഒരു മണിക്കൂർ|:count മണിക്കൂർ',
+    'minute' => ':count മിനിറ്റ്',
+    'a_minute' => 'ഒരു മിനിറ്റ്|:count മിനിറ്റ്',
+    'second' => ':count സെക്കൻഡ്',
+    'a_second' => 'അൽപ നിമിഷങ്ങൾ|:count സെക്കൻഡ്',
+    'ago' => ':time മുൻപ്',
+    'from_now' => ':time കഴിഞ്ഞ്',
+    'diff_now' => 'ഇപ്പോൾ',
+    'diff_today' => 'ഇന്ന്',
+    'diff_yesterday' => 'ഇന്നലെ',
+    'diff_tomorrow' => 'നാളെ',
+    'formats' => [
+        'LT' => 'A h:mm -നു',
+        'LTS' => 'A h:mm:ss -നു',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm -നു',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm -നു',
+    ],
+    'calendar' => [
+        'sameDay' => '[ഇന്ന്] LT',
+        'nextDay' => '[നാളെ] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[ഇന്നലെ] LT',
+        'lastWeek' => '[കഴിഞ്ഞ] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'രാത്രി';
+        }
+        if ($hour < 12) {
+            return 'രാവിലെ';
+        }
+        if ($hour < 17) {
+            return 'ഉച്ച കഴിഞ്ഞ്';
+        }
+        if ($hour < 20) {
+            return 'വൈകുന്നേരം';
+        }
+
+        return 'രാത്രി';
+    },
+    'months' => ['ജനുവരി', 'ഫെബ്രുവരി', 'മാർച്ച്', 'ഏപ്രിൽ', 'മേയ്', 'ജൂൺ', 'ജൂലൈ', 'ഓഗസ്റ്റ്', 'സെപ്റ്റംബർ', 'ഒക്ടോബർ', 'നവംബർ', 'ഡിസംബർ'],
+    'months_short' => ['ജനു.', 'ഫെബ്രു.', 'മാർ.', 'ഏപ്രി.', 'മേയ്', 'ജൂൺ', 'ജൂലൈ.', 'ഓഗ.', 'സെപ്റ്റ.', 'ഒക്ടോ.', 'നവം.', 'ഡിസം.'],
+    'weekdays' => ['ഞായറാഴ്ച', 'തിങ്കളാഴ്ച', 'ചൊവ്വാഴ്ച', 'ബുധനാഴ്ച', 'വ്യാഴാഴ്ച', 'വെള്ളിയാഴ്ച', 'ശനിയാഴ്ച'],
+    'weekdays_short' => ['ഞായർ', 'തിങ്കൾ', 'ചൊവ്വ', 'ബുധൻ', 'വ്യാഴം', 'വെള്ളി', 'ശനി'],
+    'weekdays_min' => ['ഞാ', 'തി', 'ചൊ', 'ബു', 'വ്യാ', 'വെ', 'ശ'],
+    'list' => ', ',
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml_IN.php
new file mode 100644
index 0000000..20878dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ml_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ml.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn.php
new file mode 100644
index 0000000..25f65b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn.php
@@ -0,0 +1,101 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ *
+ * @translator Batmandakh Erdenebileg <batmandakh.e@icloud.com>
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Zolzaya Erdenebaatar
+ * - Tom Hughes
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Michael Kessler
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Nicolás Hock Isaza
+ * - Ochirkhuyag
+ * - Batmandakh
+ */
+return [
+    'year' => ':count жил',
+    'y' => ':count жил',
+    'month' => ':count сар',
+    'm' => ':count сар',
+    'week' => ':count долоо хоног',
+    'w' => ':count долоо хоног',
+    'day' => ':count өдөр',
+    'd' => ':count өдөр',
+    'hour' => ':count цаг',
+    'h' => ':countц',
+    'minute' => ':count минут',
+    'min' => ':countм',
+    'second' => ':count секунд',
+    's' => ':countс',
+
+    'ago' => ':timeн өмнө',
+    'year_ago' => ':count жилий',
+    'month_ago' => ':count сары',
+    'day_ago' => ':count хоногий',
+    'hour_ago' => ':count цагий',
+    'minute_ago' => ':count минуты',
+    'second_ago' => ':count секунды',
+
+    'from_now' => 'одоогоос :time',
+    'year_from_now' => ':count жилийн дараа',
+    'month_from_now' => ':count сарын дараа',
+    'day_from_now' => ':count хоногийн дараа',
+    'hour_from_now' => ':count цагийн дараа',
+    'minute_from_now' => ':count минутын дараа',
+    'second_from_now' => ':count секундын дараа',
+
+    // Does it required to make translation for before, after as follows? hmm, I think we've made it with ago and from now keywords already. Anyway, I've included it just in case of undesired action...
+    'after' => ':timeн дараа',
+    'year_after' => ':count жилий',
+    'month_after' => ':count сары',
+    'day_after' => ':count хоногий',
+    'hour_after' => ':count цагий',
+    'minute_after' => ':count минуты',
+    'second_after' => ':count секунды',
+
+    'before' => ':timeн өмнө',
+    'year_before' => ':count жилий',
+    'month_before' => ':count сары',
+    'day_before' => ':count хоногий',
+    'hour_before' => ':count цагий',
+    'minute_before' => ':count минуты',
+    'second_before' => ':count секунды',
+
+    'list' => ', ',
+    'diff_now' => 'одоо',
+    'diff_yesterday' => 'өчигдөр',
+    'diff_tomorrow' => 'маргааш',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'YYYY MMMM DD',
+        'LLL' => 'YY-MM-DD, HH:mm',
+        'LLLL' => 'YYYY MMMM DD, HH:mm',
+    ],
+    'weekdays' => ['Ням', 'Даваа', 'Мягмар', 'Лхагва', 'Пүрэв', 'Баасан', 'Бямба'],
+    'weekdays_short' => ['Ня', 'Да', 'Мя', 'Лх', 'Пү', 'Ба', 'Бя'],
+    'weekdays_min' => ['Ня', 'Да', 'Мя', 'Лх', 'Пү', 'Ба', 'Бя'],
+    'months' => ['1 сар', '2 сар', '3 сар', '4 сар', '5 сар', '6 сар', '7 сар', '8 сар', '9 сар', '10 сар', '11 сар', '12 сар'],
+    'months_short' => ['1 сар', '2 сар', '3 сар', '4 сар', '5 сар', '6 сар', '7 сар', '8 сар', '9 сар', '10 сар', '11 сар', '12 сар'],
+    'meridiem' => ['өглөө', 'орой'],
+    'first_day_of_week' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn_MN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn_MN.php
new file mode 100644
index 0000000..b8fef24
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mn_MN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/mn.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni.php
new file mode 100644
index 0000000..cafa2f8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/mni_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni_IN.php
new file mode 100644
index 0000000..45d430e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mni_IN.php
@@ -0,0 +1,35 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat Pune    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['জানুৱারি', 'ফেব্রুৱারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগষ্ট', 'সেপ্তেম্বর', 'ওক্তোবর', 'নবেম্বর', 'ডিসেম্বর'],
+    'months_short' => ['জান', 'ফেব', 'মার', 'এপ্রি', 'মে', 'জুন', 'জুল', 'আগ', 'সেপ', 'ওক্ত', 'নবে', 'ডিস'],
+    'weekdays' => ['নোংমাইজিং', 'নিংথৌকাবা', 'লৈবাকপোকপা', 'য়ুমশকৈশা', 'শগোলশেন', 'ইরাই', 'থাংজ'],
+    'weekdays_short' => ['নোং', 'নিং', 'লৈবাক', 'য়ুম', 'শগোল', 'ইরা', 'থাং'],
+    'weekdays_min' => ['নোং', 'নিং', 'লৈবাক', 'য়ুম', 'শগোল', 'ইরা', 'থাং'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['এ.ম.', 'প.ম.'],
+
+    'year' => ':count ইসিং', // less reliable
+    'y' => ':count ইসিং', // less reliable
+    'a_year' => ':count ইসিং', // less reliable
+
+    'second' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
+    's' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
+    'a_second' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mo.php
new file mode 100644
index 0000000..dd7c8f0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mo.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ro.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr.php
new file mode 100644
index 0000000..4aaeafd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr.php
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Vikram-enyota
+ */
+return [
+    'year' => ':count वर्ष',
+    'y' => ':count वर्ष',
+    'month' => ':count महिना|:count महिने',
+    'm' => ':count महिना|:count महिने',
+    'week' => ':count आठवडा|:count आठवडे',
+    'w' => ':count आठवडा|:count आठवडे',
+    'day' => ':count दिवस',
+    'd' => ':count दिवस',
+    'hour' => ':count तास',
+    'h' => ':count तास',
+    'minute' => ':count मिनिटे',
+    'min' => ':count मिनिटे',
+    'second' => ':count सेकंद',
+    's' => ':count सेकंद',
+
+    'ago' => ':timeपूर्वी',
+    'from_now' => ':timeमध्ये',
+    'before' => ':timeपूर्वी',
+    'after' => ':timeनंतर',
+
+    'diff_now' => 'आत्ता',
+    'diff_today' => 'आज',
+    'diff_yesterday' => 'काल',
+    'diff_tomorrow' => 'उद्या',
+
+    'formats' => [
+        'LT' => 'A h:mm वाजता',
+        'LTS' => 'A h:mm:ss वाजता',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm वाजता',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm वाजता',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[आज] LT',
+        'nextDay' => '[उद्या] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[काल] LT',
+        'lastWeek' => '[मागील] dddd, LT',
+        'sameElse' => 'L',
+    ],
+
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'रात्री';
+        }
+        if ($hour < 10) {
+            return 'सकाळी';
+        }
+        if ($hour < 17) {
+            return 'दुपारी';
+        }
+        if ($hour < 20) {
+            return 'सायंकाळी';
+        }
+
+        return 'रात्री';
+    },
+
+    'months' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ऑगस्ट', 'सप्टेंबर', 'ऑक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
+    'months_short' => ['जाने.', 'फेब्रु.', 'मार्च.', 'एप्रि.', 'मे.', 'जून.', 'जुलै.', 'ऑग.', 'सप्टें.', 'ऑक्टो.', 'नोव्हें.', 'डिसें.'],
+    'weekdays' => ['रविवार', 'सोमवार', 'मंगळवार', 'बुधवार', 'गुरूवार', 'शुक्रवार', 'शनिवार'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगळ', 'बुध', 'गुरू', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
+    'list' => [', ', ' आणि '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr_IN.php
new file mode 100644
index 0000000..556cefa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mr_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/mr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms.php
new file mode 100644
index 0000000..ed7d48f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms.php
@@ -0,0 +1,98 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Azri Jamil
+ * - JD Isaacks
+ * - Josh Soref
+ * - Azri Jamil
+ * - Hariadi Hinta
+ * - Ashraf Kamarudin
+ */
+return [
+    'year' => ':count tahun',
+    'a_year' => '{1}setahun|]1,Inf[:count tahun',
+    'y' => ':count tahun',
+    'month' => ':count bulan',
+    'a_month' => '{1}sebulan|]1,Inf[:count bulan',
+    'm' => ':count bulan',
+    'week' => ':count minggu',
+    'a_week' => '{1}seminggu|]1,Inf[:count minggu',
+    'w' => ':count minggu',
+    'day' => ':count hari',
+    'a_day' => '{1}sehari|]1,Inf[:count hari',
+    'd' => ':count hari',
+    'hour' => ':count jam',
+    'a_hour' => '{1}sejam|]1,Inf[:count jam',
+    'h' => ':count jam',
+    'minute' => ':count minit',
+    'a_minute' => '{1}seminit|]1,Inf[:count minit',
+    'min' => ':count minit',
+    'second' => ':count saat',
+    'a_second' => '{1}beberapa saat|]1,Inf[:count saat',
+    'millisecond' => ':count milisaat',
+    'a_millisecond' => '{1}semilisaat|]1,Inf[:count milliseconds',
+    'microsecond' => ':count mikrodetik',
+    'a_microsecond' => '{1}semikrodetik|]1,Inf[:count mikrodetik',
+    's' => ':count saat',
+    'ago' => ':time yang lepas',
+    'from_now' => ':time dari sekarang',
+    'after' => ':time kemudian',
+    'before' => ':time lepas',
+    'diff_now' => 'sekarang',
+    'diff_today' => 'Hari',
+    'diff_today_regexp' => 'Hari(?:\\s+ini)?(?:\\s+pukul)?',
+    'diff_yesterday' => 'semalam',
+    'diff_yesterday_regexp' => 'Semalam(?:\\s+pukul)?',
+    'diff_tomorrow' => 'esok',
+    'diff_tomorrow_regexp' => 'Esok(?:\\s+pukul)?',
+    'diff_before_yesterday' => 'kelmarin',
+    'diff_after_tomorrow' => 'lusa',
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm.ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY [pukul] HH.mm',
+        'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hari ini pukul] LT',
+        'nextDay' => '[Esok pukul] LT',
+        'nextWeek' => 'dddd [pukul] LT',
+        'lastDay' => '[Kelmarin pukul] LT',
+        'lastWeek' => 'dddd [lepas pukul] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 12) {
+            return 'pagi';
+        }
+        if ($hour < 15) {
+            return 'tengah hari';
+        }
+        if ($hour < 19) {
+            return 'petang';
+        }
+
+        return 'malam';
+    },
+    'months' => ['Januari', 'Februari', 'Mac', 'April', 'Mei', 'Jun', 'Julai', 'Ogos', 'September', 'Oktober', 'November', 'Disember'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ogs', 'Sep', 'Okt', 'Nov', 'Dis'],
+    'weekdays' => ['Ahad', 'Isnin', 'Selasa', 'Rabu', 'Khamis', 'Jumaat', 'Sabtu'],
+    'weekdays_short' => ['Ahd', 'Isn', 'Sel', 'Rab', 'Kha', 'Jum', 'Sab'],
+    'weekdays_min' => ['Ah', 'Is', 'Sl', 'Rb', 'Km', 'Jm', 'Sb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' dan '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_BN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_BN.php
new file mode 100644
index 0000000..ea2b453
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_BN.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ms.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/MM/yy',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, h:mm a',
+        'LLLL' => 'dd MMMM YYYY, h:mm a',
+    ],
+    'meridiem' => ['a', 'p'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_MY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_MY.php
new file mode 100644
index 0000000..970d604
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_MY.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Azri Jamil
+ * - JD Isaacks
+ */
+return require __DIR__.'/ms.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_SG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_SG.php
new file mode 100644
index 0000000..097a168
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ms_SG.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ms.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/MM/yy',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY, h:mm a',
+    ],
+    'meridiem' => ['a', 'p'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt.php
new file mode 100644
index 0000000..e8aadcc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Alessandro Maruccia
+ */
+return [
+    'year' => 'sena|:count sni|:count sni|:count sni',
+    'y' => 'sa sena|:count snin|:count snin|:count snin',
+    'month' => 'xahar|:count xhur|:count xhur|:count xhur',
+    'm' => ':count xahar|:count xhur|:count xhur|:count xhur',
+    'week' => 'gimgħa|:count ġimgħat|:count ġimgħat|:count ġimgħat',
+    'w' => 'ġimgħa|:count ġimgħat|:count ġimgħat|:count ġimgħat',
+    'day' => 'ġurnata|:count ġranet|:count ġranet|:count ġranet',
+    'd' => 'ġurnata|:count ġranet|:count ġranet|:count ġranet',
+    'hour' => 'siegħa|:count siegħat|:count siegħat|:count siegħat',
+    'h' => 'siegħa|:count sigħat|:count sigħat|:count sigħat',
+    'minute' => 'minuta|:count minuti|:count minuti|:count minuti',
+    'min' => 'min.|:count min.|:count min.|:count min.',
+    'second' => 'ftit sekondi|:count sekondi|:count sekondi|:count sekondi',
+    's' => 'sek.|:count sek.|:count sek.|:count sek.',
+    'ago' => ':time ilu',
+    'from_now' => 'f’ :time',
+    'diff_now' => 'issa',
+    'diff_today' => 'Illum',
+    'diff_today_regexp' => 'Illum(?:\\s+fil-)?',
+    'diff_yesterday' => 'lbieraħ',
+    'diff_yesterday_regexp' => 'Il-bieraħ(?:\\s+fil-)?',
+    'diff_tomorrow' => 'għada',
+    'diff_tomorrow_regexp' => 'Għada(?:\\s+fil-)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Illum fil-]LT',
+        'nextDay' => '[Għada fil-]LT',
+        'nextWeek' => 'dddd [fil-]LT',
+        'lastDay' => '[Il-bieraħ fil-]LT',
+        'lastWeek' => 'dddd [li għadda] [fil-]LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['Jannar', 'Frar', 'Marzu', 'April', 'Mejju', 'Ġunju', 'Lulju', 'Awwissu', 'Settembru', 'Ottubru', 'Novembru', 'Diċembru'],
+    'months_short' => ['Jan', 'Fra', 'Mar', 'Apr', 'Mej', 'Ġun', 'Lul', 'Aww', 'Set', 'Ott', 'Nov', 'Diċ'],
+    'weekdays' => ['Il-Ħadd', 'It-Tnejn', 'It-Tlieta', 'L-Erbgħa', 'Il-Ħamis', 'Il-Ġimgħa', 'Is-Sibt'],
+    'weekdays_short' => ['Ħad', 'Tne', 'Tli', 'Erb', 'Ħam', 'Ġim', 'Sib'],
+    'weekdays_min' => ['Ħa', 'Tn', 'Tl', 'Er', 'Ħa', 'Ġi', 'Si'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' u '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt_MT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt_MT.php
new file mode 100644
index 0000000..6ec2b33
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mt_MT.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/mt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mua.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mua.php
new file mode 100644
index 0000000..8f1f9dc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mua.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['comme', 'lilli'],
+    'weekdays' => ['Com’yakke', 'Comlaaɗii', 'Comzyiiɗii', 'Comkolle', 'Comkaldǝɓlii', 'Comgaisuu', 'Comzyeɓsuu'],
+    'weekdays_short' => ['Cya', 'Cla', 'Czi', 'Cko', 'Cka', 'Cga', 'Cze'],
+    'weekdays_min' => ['Cya', 'Cla', 'Czi', 'Cko', 'Cka', 'Cga', 'Cze'],
+    'months' => ['Fĩi Loo', 'Cokcwaklaŋne', 'Cokcwaklii', 'Fĩi Marfoo', 'Madǝǝuutǝbijaŋ', 'Mamǝŋgwãafahbii', 'Mamǝŋgwãalii', 'Madǝmbii', 'Fĩi Dǝɓlii', 'Fĩi Mundaŋ', 'Fĩi Gwahlle', 'Fĩi Yuru'],
+    'months_short' => ['FLO', 'CLA', 'CKI', 'FMF', 'MAD', 'MBI', 'MLI', 'MAM', 'FDE', 'FMU', 'FGW', 'FYU'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my.php
new file mode 100644
index 0000000..bbdfba4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my.php
@@ -0,0 +1,70 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ * - Nay Lin Aung
+ */
+return [
+    'year' => '{1}တစ်နှစ်|]1,Inf[:count နှစ်',
+    'y' => ':count နှစ်',
+    'month' => '{1}တစ်လ|]1,Inf[:count လ',
+    'm' => ':count လ',
+    'week' => ':count ပတ်',
+    'w' => ':count ပတ်',
+    'day' => '{1}တစ်ရက်|]1,Inf[:count ရက်',
+    'd' => ':count ရက်',
+    'hour' => '{1}တစ်နာရီ|]1,Inf[:count နာရီ',
+    'h' => ':count နာရီ',
+    'minute' => '{1}တစ်မိနစ်|]1,Inf[:count မိနစ်',
+    'min' => ':count မိနစ်',
+    'second' => '{1}စက္ကန်.အနည်းငယ်|]1,Inf[:count စက္ကန့်',
+    's' => ':count စက္ကန့်',
+    'ago' => 'လွန်ခဲ့သော :time က',
+    'from_now' => 'လာမည့် :time မှာ',
+    'after' => ':time ကြာပြီးနောက်',
+    'before' => ':time မတိုင်ခင်',
+    'diff_now' => 'အခုလေးတင်',
+    'diff_today' => 'ယနေ.',
+    'diff_yesterday' => 'မနေ့က',
+    'diff_yesterday_regexp' => 'မနေ.က',
+    'diff_tomorrow' => 'မနက်ဖြန်',
+    'diff_before_yesterday' => 'တမြန်နေ့က',
+    'diff_after_tomorrow' => 'တဘက်ခါ',
+    'period_recurrences' => ':count ကြိမ်',
+    'formats' => [
+        'LT' => 'Oh:Om A',
+        'LTS' => 'Oh:Om:Os A',
+        'L' => 'OD/OM/OY',
+        'LL' => 'OD MMMM OY',
+        'LLL' => 'OD MMMM OY Oh:Om A',
+        'LLLL' => 'dddd OD MMMM OY Oh:Om A',
+    ],
+    'calendar' => [
+        'sameDay' => '[ယနေ.] LT [မှာ]',
+        'nextDay' => '[မနက်ဖြန်] LT [မှာ]',
+        'nextWeek' => 'dddd LT [မှာ]',
+        'lastDay' => '[မနေ.က] LT [မှာ]',
+        'lastWeek' => '[ပြီးခဲ့သော] dddd LT [မှာ]',
+        'sameElse' => 'L',
+    ],
+    'months' => ['ဇန်နဝါရီ', 'ဖေဖော်ဝါရီ', 'မတ်', 'ဧပြီ', 'မေ', 'ဇွန်', 'ဇူလိုင်', 'သြဂုတ်', 'စက်တင်ဘာ', 'အောက်တိုဘာ', 'နိုဝင်ဘာ', 'ဒီဇင်ဘာ'],
+    'months_short' => ['ဇန်', 'ဖေ', 'မတ်', 'ပြီ', 'မေ', 'ဇွန်', 'လိုင်', 'သြ', 'စက်', 'အောက်', 'နို', 'ဒီ'],
+    'weekdays' => ['တနင်္ဂနွေ', 'တနင်္လာ', 'အင်္ဂါ', 'ဗုဒ္ဓဟူး', 'ကြာသပတေး', 'သောကြာ', 'စနေ'],
+    'weekdays_short' => ['နွေ', 'လာ', 'ဂါ', 'ဟူး', 'ကြာ', 'သော', 'နေ'],
+    'weekdays_min' => ['နွေ', 'လာ', 'ဂါ', 'ဟူး', 'ကြာ', 'သော', 'နေ'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'alt_numbers' => ['၀၀', '၀၁', '၀၂', '၀၃', '၀၄', '၀၅', '၀၆', '၀၇', '၀၈', '၀၉', '၁၀', '၁၁', '၁၂', '၁၃', '၁၄', '၁၅', '၁၆', '၁၇', '၁၈', '၁၉', '၂၀', '၂၁', '၂၂', '၂၃', '၂၄', '၂၅', '၂၆', '၂၇', '၂၈', '၂၉', '၃၀', '၃၁', '၃၂', '၃၃', '၃၄', '၃၅', '၃၆', '၃၇', '၃၈', '၃၉', '၄၀', '၄၁', '၄၂', '၄၃', '၄၄', '၄၅', '၄၆', '၄၇', '၄၈', '၄၉', '၅၀', '၅၁', '၅၂', '၅၃', '၅၄', '၅၅', '၅၆', '၅၇', '၅၈', '၅၉', '၆၀', '၆၁', '၆၂', '၆၃', '၆၄', '၆၅', '၆၆', '၆၇', '၆၈', '၆၉', '၇၀', '၇၁', '၇၂', '၇၃', '၇၄', '၇၅', '၇၆', '၇၇', '၇၈', '၇၉', '၈၀', '၈၁', '၈၂', '၈၃', '၈၄', '၈၅', '၈၆', '၈၇', '၈၈', '၈၉', '၉၀', '၉၁', '၉၂', '၉၃', '၉၄', '၉၅', '၉၆', '၉၇', '၉၈', '၉၉'],
+    'meridiem' => ['နံနက်', 'ညနေ'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my_MM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my_MM.php
new file mode 100644
index 0000000..1f27cca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/my_MM.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/my.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mzn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mzn.php
new file mode 100644
index 0000000..6ad3604
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/mzn.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fa.php', [
+    'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
+    'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
+    'first_day_of_week' => 6,
+    'weekend' => [5, 5],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan.php
new file mode 100644
index 0000000..0affece
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/nan_TW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW.php
new file mode 100644
index 0000000..5c50aa4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY年MM月DD日',
+    ],
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
+    'weekdays' => ['禮拜日', '禮拜一', '禮拜二', '禮拜三', '禮拜四', '禮拜五', '禮拜六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['頂晡', '下晡'],
+
+    'year' => ':count 年',
+    'y' => ':count 年',
+    'a_year' => ':count 年',
+
+    'month' => ':count goe̍h',
+    'm' => ':count goe̍h',
+    'a_month' => ':count goe̍h',
+
+    'week' => ':count lé-pài',
+    'w' => ':count lé-pài',
+    'a_week' => ':count lé-pài',
+
+    'day' => ':count 日',
+    'd' => ':count 日',
+    'a_day' => ':count 日',
+
+    'hour' => ':count tiám-cheng',
+    'h' => ':count tiám-cheng',
+    'a_hour' => ':count tiám-cheng',
+
+    'minute' => ':count Hun-cheng',
+    'min' => ':count Hun-cheng',
+    'a_minute' => ':count Hun-cheng',
+
+    'second' => ':count Bió',
+    's' => ':count Bió',
+    'a_second' => ':count Bió',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW@latin.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW@latin.php
new file mode 100644
index 0000000..99ca2a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nan_TW@latin.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Arne Goetje arne@canonical.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+    'months' => ['1goe̍h', '2goe̍h', '3goe̍h', '4goe̍h', '5goe̍h', '6goe̍h', '7goe̍h', '8goe̍h', '9goe̍h', '10goe̍h', '11goe̍h', '12goe̍h'],
+    'months_short' => ['1g', '2g', '3g', '4g', '5g', '6g', '7g', '8g', '9g', '10g', '11g', '12g'],
+    'weekdays' => ['lé-pài-ji̍t', 'pài-it', 'pài-jī', 'pài-saⁿ', 'pài-sì', 'pài-gō͘', 'pài-la̍k'],
+    'weekdays_short' => ['lp', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6'],
+    'weekdays_min' => ['lp', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['téng-po͘', 'ē-po͘'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/naq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/naq.php
new file mode 100644
index 0000000..614ced4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/naq.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ǁgoagas', 'ǃuias'],
+    'weekdays' => ['Sontaxtsees', 'Mantaxtsees', 'Denstaxtsees', 'Wunstaxtsees', 'Dondertaxtsees', 'Fraitaxtsees', 'Satertaxtsees'],
+    'weekdays_short' => ['Son', 'Ma', 'De', 'Wu', 'Do', 'Fr', 'Sat'],
+    'weekdays_min' => ['Son', 'Ma', 'De', 'Wu', 'Do', 'Fr', 'Sat'],
+    'months' => ['ǃKhanni', 'ǃKhanǀgôab', 'ǀKhuuǁkhâb', 'ǃHôaǂkhaib', 'ǃKhaitsâb', 'Gamaǀaeb', 'ǂKhoesaob', 'Aoǁkhuumûǁkhâb', 'Taraǀkhuumûǁkhâb', 'ǂNûǁnâiseb', 'ǀHooǂgaeb', 'Hôasoreǁkhâb'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm a',
+    ],
+
+    'year' => ':count kurigu',
+    'y' => ':count kurigu',
+    'a_year' => ':count kurigu',
+
+    'month' => ':count ǁaub', // less reliable
+    'm' => ':count ǁaub', // less reliable
+    'a_month' => ':count ǁaub', // less reliable
+
+    'week' => ':count hû', // less reliable
+    'w' => ':count hû', // less reliable
+    'a_week' => ':count hû', // less reliable
+
+    'day' => ':count ǀhobas', // less reliable
+    'd' => ':count ǀhobas', // less reliable
+    'a_day' => ':count ǀhobas', // less reliable
+
+    'hour' => ':count ǂgaes', // less reliable
+    'h' => ':count ǂgaes', // less reliable
+    'a_hour' => ':count ǂgaes', // less reliable
+
+    'minute' => ':count minutga', // less reliable
+    'min' => ':count minutga', // less reliable
+    'a_minute' => ':count minutga', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb.php
new file mode 100644
index 0000000..371ee84
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb.php
@@ -0,0 +1,84 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Alexander Tømmerås
+ * - Sigurd Gartmann
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count år|:count år',
+    'a_year' => 'ett år|:count år',
+    'y' => ':count år|:count år',
+    'month' => ':count måned|:count måneder',
+    'a_month' => 'en måned|:count måneder',
+    'm' => ':count md.',
+    'week' => ':count uke|:count uker',
+    'a_week' => 'en uke|:count uker',
+    'w' => ':count u.',
+    'day' => ':count dag|:count dager',
+    'a_day' => 'en dag|:count dager',
+    'd' => ':count d.',
+    'hour' => ':count time|:count timer',
+    'a_hour' => 'en time|:count timer',
+    'h' => ':count t',
+    'minute' => ':count minutt|:count minutter',
+    'a_minute' => 'ett minutt|:count minutter',
+    'min' => ':count min',
+    'second' => ':count sekund|:count sekunder',
+    'a_second' => 'noen sekunder|:count sekunder',
+    's' => ':count sek',
+    'ago' => ':time siden',
+    'from_now' => 'om :time',
+    'after' => ':time etter',
+    'before' => ':time før',
+    'diff_now' => 'akkurat nå',
+    'diff_today' => 'i dag',
+    'diff_today_regexp' => 'i dag(?:\\s+kl.)?',
+    'diff_yesterday' => 'i går',
+    'diff_yesterday_regexp' => 'i går(?:\\s+kl.)?',
+    'diff_tomorrow' => 'i morgen',
+    'diff_tomorrow_regexp' => 'i morgen(?:\\s+kl.)?',
+    'diff_before_yesterday' => 'i forgårs',
+    'diff_after_tomorrow' => 'i overmorgen',
+    'period_recurrences' => 'en gang|:count ganger',
+    'period_interval' => 'hver :interval',
+    'period_start_date' => 'fra :date',
+    'period_end_date' => 'til :date',
+    'months' => ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],
+    'weekdays_short' => ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
+    'weekdays_min' => ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
+    'ordinal' => ':number.',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY [kl.] HH:mm',
+        'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[i dag kl.] LT',
+        'nextDay' => '[i morgen kl.] LT',
+        'nextWeek' => 'dddd [kl.] LT',
+        'lastDay' => '[i går kl.] LT',
+        'lastWeek' => '[forrige] dddd [kl.] LT',
+        'sameElse' => 'L',
+    ],
+    'list' => [', ', ' og '],
+    'meridiem' => ['a.m.', 'p.m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_NO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_NO.php
new file mode 100644
index 0000000..bd643a8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_NO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nb.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_SJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_SJ.php
new file mode 100644
index 0000000..93cbaef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nb_SJ.php
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/nb.php', [
+    'formats' => [
+        'LL' => 'D. MMM YYYY',
+        'LLL' => 'D. MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd D. MMMM YYYY, HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nd.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nd.php
new file mode 100644
index 0000000..d6fdaad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nd.php
@@ -0,0 +1,53 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Sonto', 'Mvulo', 'Sibili', 'Sithathu', 'Sine', 'Sihlanu', 'Mgqibelo'],
+    'weekdays_short' => ['Son', 'Mvu', 'Sib', 'Sit', 'Sin', 'Sih', 'Mgq'],
+    'weekdays_min' => ['Son', 'Mvu', 'Sib', 'Sit', 'Sin', 'Sih', 'Mgq'],
+    'months' => ['Zibandlela', 'Nhlolanja', 'Mbimbitho', 'Mabasa', 'Nkwenkwezi', 'Nhlangula', 'Ntulikazi', 'Ncwabakazi', 'Mpandula', 'Mfumfu', 'Lwezi', 'Mpalakazi'],
+    'months_short' => ['Zib', 'Nhlo', 'Mbi', 'Mab', 'Nkw', 'Nhla', 'Ntu', 'Ncw', 'Mpan', 'Mfu', 'Lwe', 'Mpal'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+
+    'year' => 'okweminyaka engu-:count', // less reliable
+    'y' => 'okweminyaka engu-:count', // less reliable
+    'a_year' => 'okweminyaka engu-:count', // less reliable
+
+    'month' => 'inyanga ezingu-:count',
+    'm' => 'inyanga ezingu-:count',
+    'a_month' => 'inyanga ezingu-:count',
+
+    'week' => 'amaviki angu-:count',
+    'w' => 'amaviki angu-:count',
+    'a_week' => 'amaviki angu-:count',
+
+    'day' => 'kwamalanga angu-:count',
+    'd' => 'kwamalanga angu-:count',
+    'a_day' => 'kwamalanga angu-:count',
+
+    'hour' => 'amahola angu-:count',
+    'h' => 'amahola angu-:count',
+    'a_hour' => 'amahola angu-:count',
+
+    'minute' => 'imizuzu engu-:count',
+    'min' => 'imizuzu engu-:count',
+    'a_minute' => 'imizuzu engu-:count',
+
+    'second' => 'imizuzwana engu-:count',
+    's' => 'imizuzwana engu-:count',
+    'a_second' => 'imizuzwana engu-:count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds.php
new file mode 100644
index 0000000..c0b3775
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/nds_DE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_DE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_DE.php
new file mode 100644
index 0000000..eb6e77e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_DE.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Jannuaar', 'Feberwaar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
+    'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
+    'weekdays' => ['Sünndag', 'Maandag', 'Dingsdag', 'Middeweek', 'Dunnersdag', 'Freedag', 'Sünnavend'],
+    'weekdays_short' => ['Sdag', 'Maan', 'Ding', 'Migg', 'Dunn', 'Free', 'Svd.'],
+    'weekdays_min' => ['Sdag', 'Maan', 'Ding', 'Migg', 'Dunn', 'Free', 'Svd.'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count Johr',
+    'y' => ':count Johr',
+    'a_year' => ':count Johr',
+
+    'month' => ':count Maand',
+    'm' => ':count Maand',
+    'a_month' => ':count Maand',
+
+    'week' => ':count Week',
+    'w' => ':count Week',
+    'a_week' => ':count Week',
+
+    'day' => ':count Dag',
+    'd' => ':count Dag',
+    'a_day' => ':count Dag',
+
+    'hour' => ':count Stünn',
+    'h' => ':count Stünn',
+    'a_hour' => ':count Stünn',
+
+    'minute' => ':count Minuut',
+    'min' => ':count Minuut',
+    'a_minute' => ':count Minuut',
+
+    'second' => ':count sekunn',
+    's' => ':count sekunn',
+    'a_second' => ':count sekunn',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_NL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_NL.php
new file mode 100644
index 0000000..de2c57b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nds_NL.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Jaunuwoa', 'Februwoa', 'Moaz', 'Aprell', 'Mai', 'Juni', 'Juli', 'August', 'Septamba', 'Oktoba', 'Nowamba', 'Dezamba'],
+    'months_short' => ['Jan', 'Feb', 'Moz', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Now', 'Dez'],
+    'weekdays' => ['Sinndag', 'Mondag', 'Dingsdag', 'Meddwäakj', 'Donnadag', 'Friedag', 'Sinnowend'],
+    'weekdays_short' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
+    'weekdays_min' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne.php
new file mode 100644
index 0000000..d4caf0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne.php
@@ -0,0 +1,82 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - nootanghimire
+ * - Josh Soref
+ * - Nj Subedi
+ * - JD Isaacks
+ */
+return [
+    'year' => 'एक बर्ष|:count बर्ष',
+    'y' => ':count वर्ष',
+    'month' => 'एक महिना|:count महिना',
+    'm' => ':count महिना',
+    'week' => ':count हप्ता',
+    'w' => ':count हप्ता',
+    'day' => 'एक दिन|:count दिन',
+    'd' => ':count दिन',
+    'hour' => 'एक घण्टा|:count घण्टा',
+    'h' => ':count घण्टा',
+    'minute' => 'एक मिनेट|:count मिनेट',
+    'min' => ':count मिनेट',
+    'second' => 'केही क्षण|:count सेकेण्ड',
+    's' => ':count सेकेण्ड',
+    'ago' => ':time अगाडि',
+    'from_now' => ':timeमा',
+    'after' => ':time पछि',
+    'before' => ':time अघि',
+    'diff_now' => 'अहिले',
+    'diff_today' => 'आज',
+    'diff_yesterday' => 'हिजो',
+    'diff_tomorrow' => 'भोलि',
+    'formats' => [
+        'LT' => 'Aको h:mm बजे',
+        'LTS' => 'Aको h:mm:ss बजे',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, Aको h:mm बजे',
+        'LLLL' => 'dddd, D MMMM YYYY, Aको h:mm बजे',
+    ],
+    'calendar' => [
+        'sameDay' => '[आज] LT',
+        'nextDay' => '[भोलि] LT',
+        'nextWeek' => '[आउँदो] dddd[,] LT',
+        'lastDay' => '[हिजो] LT',
+        'lastWeek' => '[गएको] dddd[,] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 3) {
+            return 'राति';
+        }
+        if ($hour < 12) {
+            return 'बिहान';
+        }
+        if ($hour < 16) {
+            return 'दिउँसो';
+        }
+        if ($hour < 20) {
+            return 'साँझ';
+        }
+
+        return 'राति';
+    },
+    'months' => ['जनवरी', 'फेब्रुवरी', 'मार्च', 'अप्रिल', 'मई', 'जुन', 'जुलाई', 'अगष्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
+    'months_short' => ['जन.', 'फेब्रु.', 'मार्च', 'अप्रि.', 'मई', 'जुन', 'जुलाई.', 'अग.', 'सेप्ट.', 'अक्टो.', 'नोभे.', 'डिसे.'],
+    'weekdays' => ['आइतबार', 'सोमबार', 'मङ्गलबार', 'बुधबार', 'बिहिबार', 'शुक्रबार', 'शनिबार'],
+    'weekdays_short' => ['आइत.', 'सोम.', 'मङ्गल.', 'बुध.', 'बिहि.', 'शुक्र.', 'शनि.'],
+    'weekdays_min' => ['आ.', 'सो.', 'मं.', 'बु.', 'बि.', 'शु.', 'श.'],
+    'list' => [', ', ' र '],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_IN.php
new file mode 100644
index 0000000..2583bcf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_IN.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ne.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'yy/M/d',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D, h:mm a',
+        'LLLL' => 'YYYY MMMM D, dddd, h:mm a',
+    ],
+    'months' => ['जनवरी', 'फेब्रुअरी', 'मार्च', 'अप्रिल', 'मे', 'जुन', 'जुलाई', 'अगस्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
+    'months_short' => ['जनवरी', 'फेब्रुअरी', 'मार्च', 'अप्रिल', 'मे', 'जुन', 'जुलाई', 'अगस्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
+    'weekend' => [0, 0],
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_NP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_NP.php
new file mode 100644
index 0000000..38caa1e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ne_NP.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ne.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn.php
new file mode 100644
index 0000000..5a85831
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/nhn_MX.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn_MX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn_MX.php
new file mode 100644
index 0000000..9db88a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nhn_MX.php
@@ -0,0 +1,50 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
+    'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
+    'weekdays' => ['teoilhuitl', 'ceilhuitl', 'omeilhuitl', 'yeilhuitl', 'nahuilhuitl', 'macuililhuitl', 'chicuaceilhuitl'],
+    'weekdays_short' => ['teo', 'cei', 'ome', 'yei', 'nau', 'mac', 'chi'],
+    'weekdays_min' => ['teo', 'cei', 'ome', 'yei', 'nau', 'mac', 'chi'],
+    'day_of_first_week_of_year' => 1,
+
+    'month' => ':count metztli', // less reliable
+    'm' => ':count metztli', // less reliable
+    'a_month' => ':count metztli', // less reliable
+
+    'week' => ':count tonalli', // less reliable
+    'w' => ':count tonalli', // less reliable
+    'a_week' => ':count tonalli', // less reliable
+
+    'day' => ':count tonatih', // less reliable
+    'd' => ':count tonatih', // less reliable
+    'a_day' => ':count tonatih', // less reliable
+
+    'minute' => ':count toltecayotl', // less reliable
+    'min' => ':count toltecayotl', // less reliable
+    'a_minute' => ':count toltecayotl', // less reliable
+
+    'second' => ':count ome', // less reliable
+    's' => ':count ome', // less reliable
+    'a_second' => ':count ome', // less reliable
+
+    'year' => ':count xihuitl',
+    'y' => ':count xihuitl',
+    'a_year' => ':count xihuitl',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu.php
new file mode 100644
index 0000000..bd9be8a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/niu_NU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu_NU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu_NU.php
new file mode 100644
index 0000000..6e7a697
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/niu_NU.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RockET Systems Emani Fakaotimanava-Lui emani@niue.nu
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Ianuali', 'Fepuali', 'Masi', 'Apelila', 'Me', 'Iuni', 'Iulai', 'Aokuso', 'Sepetema', 'Oketopa', 'Novema', 'Tesemo'],
+    'months_short' => ['Ian', 'Fep', 'Mas', 'Ape', 'Me', 'Iun', 'Iul', 'Aok', 'Sep', 'Oke', 'Nov', 'Tes'],
+    'weekdays' => ['Aho Tapu', 'Aho Gofua', 'Aho Ua', 'Aho Lotu', 'Aho Tuloto', 'Aho Falaile', 'Aho Faiumu'],
+    'weekdays_short' => ['Tapu', 'Gofua', 'Ua', 'Lotu', 'Tuloto', 'Falaile', 'Faiumu'],
+    'weekdays_min' => ['Tapu', 'Gofua', 'Ua', 'Lotu', 'Tuloto', 'Falaile', 'Faiumu'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count tau',
+    'y' => ':count tau',
+    'a_year' => ':count tau',
+
+    'month' => ':count mahina',
+    'm' => ':count mahina',
+    'a_month' => ':count mahina',
+
+    'week' => ':count faahi tapu',
+    'w' => ':count faahi tapu',
+    'a_week' => ':count faahi tapu',
+
+    'day' => ':count aho',
+    'd' => ':count aho',
+    'a_day' => ':count aho',
+
+    'hour' => ':count e tulā',
+    'h' => ':count e tulā',
+    'a_hour' => ':count e tulā',
+
+    'minute' => ':count minuti',
+    'min' => ':count minuti',
+    'a_minute' => ':count minuti',
+
+    'second' => ':count sekone',
+    's' => ':count sekone',
+    'a_second' => ':count sekone',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl.php
new file mode 100644
index 0000000..fc8b5d9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl.php
@@ -0,0 +1,113 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Roy
+ * - Stephan
+ * - François B
+ * - Tim Fish
+ * - Kevin Huang
+ * - Jacob Middag
+ * - JD Isaacks
+ * - Roy
+ * - Stephan
+ * - François B
+ * - Tim Fish
+ * - Jacob Middag
+ * - JD Isaacks
+ * - Propaganistas
+ * - MegaXLR
+ * - adriaanzon
+ * - MonkeyPhysics
+ * - JeroenG
+ * - RikSomers
+ * - proclame
+ * - Rik de Groot (hwdegroot)
+ */
+return [
+    'year' => ':count jaar|:count jaar',
+    'a_year' => 'een jaar|:count jaar',
+    'y' => ':countj',
+    'month' => ':count maand|:count maanden',
+    'a_month' => 'een maand|:count maanden',
+    'm' => ':countmnd',
+    'week' => ':count week|:count weken',
+    'a_week' => 'een week|:count weken',
+    'w' => ':countw',
+    'day' => ':count dag|:count dagen',
+    'a_day' => 'een dag|:count dagen',
+    'd' => ':countd',
+    'hour' => ':count uur|:count uur',
+    'a_hour' => 'een uur|:count uur',
+    'h' => ':countu',
+    'minute' => ':count minuut|:count minuten',
+    'a_minute' => 'een minuut|:count minuten',
+    'min' => ':countmin',
+    'second' => ':count seconde|:count seconden',
+    'a_second' => 'een paar seconden|:count seconden',
+    's' => ':counts',
+    'ago' => ':time geleden',
+    'from_now' => 'over :time',
+    'after' => ':time later',
+    'before' => ':time eerder',
+    'diff_now' => 'nu',
+    'diff_today' => 'vandaag',
+    'diff_today_regexp' => 'vandaag(?:\\s+om)?',
+    'diff_yesterday' => 'gisteren',
+    'diff_yesterday_regexp' => 'gisteren(?:\\s+om)?',
+    'diff_tomorrow' => 'morgen',
+    'diff_tomorrow_regexp' => 'morgen(?:\\s+om)?',
+    'diff_after_tomorrow' => 'overmorgen',
+    'diff_before_yesterday' => 'eergisteren',
+    'period_recurrences' => ':count keer',
+    'period_interval' => function (string $interval = '') {
+        /** @var string $output */
+        $output = preg_replace('/^(een|één|1)\s+/', '', $interval);
+
+        if (preg_match('/^(een|één|1)( jaar|j| uur|u)/', $interval)) {
+            return "elk $output";
+        }
+
+        return "elke $output";
+    },
+    'period_start_date' => 'van :date',
+    'period_end_date' => 'tot :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD-MM-YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[vandaag om] LT',
+        'nextDay' => '[morgen om] LT',
+        'nextWeek' => 'dddd [om] LT',
+        'lastDay' => '[gisteren om] LT',
+        'lastWeek' => '[afgelopen] dddd [om] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        return $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de');
+    },
+    'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'mmm_suffix' => '.',
+    'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
+    'weekdays_short' => ['zo.', 'ma.', 'di.', 'wo.', 'do.', 'vr.', 'za.'],
+    'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' en '],
+    'meridiem' => ['\'s ochtends', '\'s middags'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_AW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_AW.php
new file mode 100644
index 0000000..5ec136d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_AW.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Free Software Foundation, Inc.    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/nl.php', [
+    'formats' => [
+        'L' => 'DD-MM-YY',
+    ],
+    'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
+    'weekdays_short' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
+    'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BE.php
new file mode 100644
index 0000000..037f5b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BE.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Roy
+ * - Stephan
+ * - François B
+ * - Tim Fish
+ * - Kevin Huang
+ * - Jacob Middag
+ * - JD Isaacks
+ * - Propaganistas
+ */
+return array_replace_recursive(require __DIR__.'/nl.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BQ.php
new file mode 100644
index 0000000..521d2d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_BQ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_CW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_CW.php
new file mode 100644
index 0000000..521d2d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_CW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_NL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_NL.php
new file mode 100644
index 0000000..14e4853
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_NL.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/nl.php', [
+    'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
+    'weekdays_short' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
+    'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SR.php
new file mode 100644
index 0000000..521d2d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SX.php
new file mode 100644
index 0000000..521d2d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nl_SX.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nmg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nmg.php
new file mode 100644
index 0000000..f8850e2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nmg.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['maná', 'kugú'],
+    'weekdays' => ['sɔ́ndɔ', 'mɔ́ndɔ', 'sɔ́ndɔ mafú mába', 'sɔ́ndɔ mafú málal', 'sɔ́ndɔ mafú mána', 'mabágá má sukul', 'sásadi'],
+    'weekdays_short' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'mbs', 'sas'],
+    'weekdays_min' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'mbs', 'sas'],
+    'months' => ['ngwɛn matáhra', 'ngwɛn ńmba', 'ngwɛn ńlal', 'ngwɛn ńna', 'ngwɛn ńtan', 'ngwɛn ńtuó', 'ngwɛn hɛmbuɛrí', 'ngwɛn lɔmbi', 'ngwɛn rɛbvuâ', 'ngwɛn wum', 'ngwɛn wum navǔr', 'krísimin'],
+    'months_short' => ['ng1', 'ng2', 'ng3', 'ng4', 'ng5', 'ng6', 'ng7', 'ng8', 'ng9', 'ng10', 'ng11', 'kris'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn.php
new file mode 100644
index 0000000..041f7b2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn.php
@@ -0,0 +1,78 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Alexander Tømmerås
+ * - Øystein
+ * - JD Isaacks
+ * - Gaute Hvoslef Kvalnes (gaute)
+ */
+return [
+    'year' => ':count år',
+    'a_year' => 'eit år|:count år',
+    'y' => ':count år',
+    'month' => ':count månad|:count månader',
+    'a_month' => 'ein månad|:count månader',
+    'm' => ':count md',
+    'week' => ':count veke|:count veker',
+    'a_week' => 'ei veke|:count veker',
+    'w' => ':countv',
+    'day' => ':count dag|:count dagar',
+    'a_day' => 'ein dag|:count dagar',
+    'd' => ':countd',
+    'hour' => ':count time|:count timar',
+    'a_hour' => 'ein time|:count timar',
+    'h' => ':countt',
+    'minute' => ':count minutt',
+    'a_minute' => 'eit minutt|:count minutt',
+    'min' => ':countm',
+    'second' => ':count sekund',
+    'a_second' => 'nokre sekund|:count sekund',
+    's' => ':counts',
+    'ago' => ':time sidan',
+    'from_now' => 'om :time',
+    'after' => ':time etter',
+    'before' => ':time før',
+    'diff_today' => 'I dag',
+    'diff_yesterday' => 'I går',
+    'diff_yesterday_regexp' => 'I går(?:\\s+klokka)?',
+    'diff_tomorrow' => 'I morgon',
+    'diff_tomorrow_regexp' => 'I morgon(?:\\s+klokka)?',
+    'diff_today_regexp' => 'I dag(?:\\s+klokka)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY [kl.] H:mm',
+        'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[I dag klokka] LT',
+        'nextDay' => '[I morgon klokka] LT',
+        'nextWeek' => 'dddd [klokka] LT',
+        'lastDay' => '[I går klokka] LT',
+        'lastWeek' => '[Føregåande] dddd [klokka] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
+    'weekdays' => ['sundag', 'måndag', 'tysdag', 'onsdag', 'torsdag', 'fredag', 'laurdag'],
+    'weekdays_short' => ['sun', 'mån', 'tys', 'ons', 'tor', 'fre', 'lau'],
+    'weekdays_min' => ['su', 'må', 'ty', 'on', 'to', 'fr', 'la'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' og '],
+    'meridiem' => ['f.m.', 'e.m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn_NO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn_NO.php
new file mode 100644
index 0000000..ebbe0b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nn_NO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/nn.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nnh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nnh.php
new file mode 100644
index 0000000..fa6a448
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nnh.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['mbaʼámbaʼ', 'ncwònzém'],
+    'weekdays' => null,
+    'weekdays_short' => ['lyɛʼɛ́ sẅíŋtè', 'mvfò lyɛ̌ʼ', 'mbɔ́ɔntè mvfò lyɛ̌ʼ', 'tsètsɛ̀ɛ lyɛ̌ʼ', 'mbɔ́ɔntè tsetsɛ̀ɛ lyɛ̌ʼ', 'mvfò màga lyɛ̌ʼ', 'màga lyɛ̌ʼ'],
+    'weekdays_min' => null,
+    'months' => null,
+    'months_short' => ['saŋ tsetsɛ̀ɛ lùm', 'saŋ kàg ngwóŋ', 'saŋ lepyè shúm', 'saŋ cÿó', 'saŋ tsɛ̀ɛ cÿó', 'saŋ njÿoláʼ', 'saŋ tyɛ̀b tyɛ̀b mbʉ̀ŋ', 'saŋ mbʉ̀ŋ', 'saŋ ngwɔ̀ʼ mbÿɛ', 'saŋ tàŋa tsetsáʼ', 'saŋ mejwoŋó', 'saŋ lùm'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/yy',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => '[lyɛ]̌ʼ d [na] MMMM, YYYY HH:mm',
+        'LLLL' => 'dddd , [lyɛ]̌ʼ d [na] MMMM, YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/no.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/no.php
new file mode 100644
index 0000000..f4497c7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/no.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Daniel S. Billing
+ * - Paul
+ * - Jimmie Johansson
+ * - Jens Herlevsen
+ */
+return array_replace_recursive(require __DIR__.'/nb.php', [
+    'formats' => [
+        'LLL' => 'D. MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY [kl.] HH:mm',
+    ],
+    'calendar' => [
+        'nextWeek' => 'på dddd [kl.] LT',
+        'lastWeek' => '[i] dddd[s kl.] LT',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr.php
new file mode 100644
index 0000000..1bc999f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/nr_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr_ZA.php
new file mode 100644
index 0000000..f9a7be8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nr_ZA.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Janabari', 'uFeberbari', 'uMatjhi', 'u-Apreli', 'Meyi', 'Juni', 'Julayi', 'Arhostosi', 'Septemba', 'Oktoba', 'Usinyikhaba', 'Disemba'],
+    'months_short' => ['Jan', 'Feb', 'Mat', 'Apr', 'Mey', 'Jun', 'Jul', 'Arh', 'Sep', 'Okt', 'Usi', 'Dis'],
+    'weekdays' => ['uSonto', 'uMvulo', 'uLesibili', 'lesithathu', 'uLesine', 'ngoLesihlanu', 'umGqibelo'],
+    'weekdays_short' => ['Son', 'Mvu', 'Bil', 'Tha', 'Ne', 'Hla', 'Gqi'],
+    'weekdays_min' => ['Son', 'Mvu', 'Bil', 'Tha', 'Ne', 'Hla', 'Gqi'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso.php
new file mode 100644
index 0000000..2a6cabb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/nso_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso_ZA.php
new file mode 100644
index 0000000..b08fe6d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nso_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Janaware', 'Febereware', 'Matšhe', 'Aprele', 'Mei', 'June', 'Julae', 'Agostose', 'Setemere', 'Oktobere', 'Nofemere', 'Disemere'],
+    'months_short' => ['Jan', 'Feb', 'Mat', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Set', 'Okt', 'Nof', 'Dis'],
+    'weekdays' => ['LaMorena', 'Mošupologo', 'Labobedi', 'Laboraro', 'Labone', 'Labohlano', 'Mokibelo'],
+    'weekdays_short' => ['Son', 'Moš', 'Bed', 'Rar', 'Ne', 'Hla', 'Mok'],
+    'weekdays_min' => ['Son', 'Moš', 'Bed', 'Rar', 'Ne', 'Hla', 'Mok'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count ngwaga',
+    'y' => ':count ngwaga',
+    'a_year' => ':count ngwaga',
+
+    'month' => ':count Kgwedi',
+    'm' => ':count Kgwedi',
+    'a_month' => ':count Kgwedi',
+
+    'week' => ':count Beke',
+    'w' => ':count Beke',
+    'a_week' => ':count Beke',
+
+    'day' => ':count Letšatši',
+    'd' => ':count Letšatši',
+    'a_day' => ':count Letšatši',
+
+    'hour' => ':count Iri',
+    'h' => ':count Iri',
+    'a_hour' => ':count Iri',
+
+    'minute' => ':count Motsotso',
+    'min' => ':count Motsotso',
+    'a_minute' => ':count Motsotso',
+
+    'second' => ':count motsotswana',
+    's' => ':count motsotswana',
+    'a_second' => ':count motsotswana',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nus.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nus.php
new file mode 100644
index 0000000..033e975
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nus.php
@@ -0,0 +1,35 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['RW', 'TŊ'],
+    'weekdays' => ['Cäŋ kuɔth', 'Jiec la̱t', 'Rɛw lätni', 'Diɔ̱k lätni', 'Ŋuaan lätni', 'Dhieec lätni', 'Bäkɛl lätni'],
+    'weekdays_short' => ['Cäŋ', 'Jiec', 'Rɛw', 'Diɔ̱k', 'Ŋuaan', 'Dhieec', 'Bäkɛl'],
+    'weekdays_min' => ['Cäŋ', 'Jiec', 'Rɛw', 'Diɔ̱k', 'Ŋuaan', 'Dhieec', 'Bäkɛl'],
+    'months' => ['Tiop thar pɛt', 'Pɛt', 'Duɔ̱ɔ̱ŋ', 'Guak', 'Duät', 'Kornyoot', 'Pay yie̱tni', 'Tho̱o̱r', 'Tɛɛr', 'Laath', 'Kur', 'Tio̱p in di̱i̱t'],
+    'months_short' => ['Tiop', 'Pɛt', 'Duɔ̱ɔ̱', 'Guak', 'Duä', 'Kor', 'Pay', 'Thoo', 'Tɛɛ', 'Laa', 'Kur', 'Tid'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd D MMMM YYYY h:mm a',
+    ],
+
+    'year' => ':count jiök', // less reliable
+    'y' => ':count jiök', // less reliable
+    'a_year' => ':count jiök', // less reliable
+
+    'month' => ':count pay', // less reliable
+    'm' => ':count pay', // less reliable
+    'a_month' => ':count pay', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nyn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nyn.php
new file mode 100644
index 0000000..fdc2ff4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/nyn.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Sande', 'Orwokubanza', 'Orwakabiri', 'Orwakashatu', 'Orwakana', 'Orwakataano', 'Orwamukaaga'],
+    'weekdays_short' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
+    'weekdays_min' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
+    'months' => ['Okwokubanza', 'Okwakabiri', 'Okwakashatu', 'Okwakana', 'Okwakataana', 'Okwamukaaga', 'Okwamushanju', 'Okwamunaana', 'Okwamwenda', 'Okwaikumi', 'Okwaikumi na kumwe', 'Okwaikumi na ibiri'],
+    'months_short' => ['KBZ', 'KBR', 'KST', 'KKN', 'KTN', 'KMK', 'KMS', 'KMN', 'KMW', 'KKM', 'KNK', 'KNB'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc.php
new file mode 100644
index 0000000..94c3e04
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc.php
@@ -0,0 +1,98 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Quentí
+ */
+// @codeCoverageIgnoreStart
+if (class_exists('Symfony\\Component\\Translation\\PluralizationRules')) {
+    \Symfony\Component\Translation\PluralizationRules::set(function ($number) {
+        return $number == 1 ? 0 : 1;
+    }, 'oc');
+}
+// @codeCoverageIgnoreEnd
+
+return [
+    'year' => ':count an|:count ans',
+    'a_year' => 'un an|:count ans',
+    'y' => ':count an|:count ans',
+    'month' => ':count mes|:count meses',
+    'a_month' => 'un mes|:count meses',
+    'm' => ':count mes|:count meses',
+    'week' => ':count setmana|:count setmanas',
+    'a_week' => 'una setmana|:count setmanas',
+    'w' => ':count setmana|:count setmanas',
+    'day' => ':count jorn|:count jorns',
+    'a_day' => 'un jorn|:count jorns',
+    'd' => ':count jorn|:count jorns',
+    'hour' => ':count ora|:count oras',
+    'a_hour' => 'una ora|:count oras',
+    'h' => ':count ora|:count oras',
+    'minute' => ':count minuta|:count minutas',
+    'a_minute' => 'una minuta|:count minutas',
+    'min' => ':count minuta|:count minutas',
+    'second' => ':count segonda|:count segondas',
+    'a_second' => 'una segonda|:count segondas',
+    's' => ':count segonda|:count segondas',
+    'ago' => 'fa :time',
+    'from_now' => 'd\'aquí :time',
+    'after' => ':time aprèp',
+    'before' => ':time abans',
+    'diff_now' => 'ara meteis',
+    'diff_today' => 'Uèi',
+    'diff_today_regexp' => 'Uèi(?:\\s+a)?',
+    'diff_yesterday' => 'ièr',
+    'diff_yesterday_regexp' => 'Ièr(?:\\s+a)?',
+    'diff_tomorrow' => 'deman',
+    'diff_tomorrow_regexp' => 'Deman(?:\\s+a)?',
+    'diff_before_yesterday' => 'ièr delà',
+    'diff_after_tomorrow' => 'deman passat',
+    'period_recurrences' => ':count còp|:count còps',
+    'period_interval' => 'cada :interval',
+    'period_start_date' => 'de :date',
+    'period_end_date' => 'fins a :date',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM [de] YYYY',
+        'LLL' => 'D MMMM [de] YYYY [a] H:mm',
+        'LLLL' => 'dddd D MMMM [de] YYYY [a] H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Uèi a] LT',
+        'nextDay' => '[Deman a] LT',
+        'nextWeek' => 'dddd [a] LT',
+        'lastDay' => '[Ièr a] LT',
+        'lastWeek' => 'dddd [passat a] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['de genièr', 'de febrièr', 'de març', 'd\'abrial', 'de mai', 'de junh', 'de julhet', 'd\'agost', 'de setembre', 'd’octòbre', 'de novembre', 'de decembre'],
+    'months_standalone' => ['genièr', 'febrièr', 'març', 'abrial', 'mai', 'junh', 'julh', 'agost', 'setembre', 'octòbre', 'novembre', 'decembre'],
+    'months_short' => ['gen.', 'feb.', 'març', 'abr.', 'mai', 'junh', 'julh', 'ago.', 'sep.', 'oct.', 'nov.', 'dec.'],
+    'weekdays' => ['dimenge', 'diluns', 'dimars', 'dimècres', 'dijòus', 'divendres', 'dissabte'],
+    'weekdays_short' => ['dg', 'dl', 'dm', 'dc', 'dj', 'dv', 'ds'],
+    'weekdays_min' => ['dg', 'dl', 'dm', 'dc', 'dj', 'dv', 'ds'],
+    'ordinal' => function ($number, string $period = '') {
+        $ordinal = [1 => 'èr', 2 => 'nd'][(int) $number] ?? 'en';
+
+        // feminine for year, week, hour, minute, second
+        if (preg_match('/^[yYwWhHgGis]$/', $period)) {
+            $ordinal .= 'a';
+        }
+
+        return $number.$ordinal;
+    },
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' e '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc_FR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc_FR.php
new file mode 100644
index 0000000..fde859f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/oc_FR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/oc.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om.php
new file mode 100644
index 0000000..b8d5a0b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om.php
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation & Sagalee Oromoo Publishing Co. Inc.    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'dd-MMM-YYYY',
+        'LLL' => 'dd MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, MMMM D, YYYY HH:mm',
+    ],
+    'months' => ['Amajjii', 'Guraandhala', 'Bitooteessa', 'Elba', 'Caamsa', 'Waxabajjii', 'Adooleessa', 'Hagayya', 'Fuulbana', 'Onkololeessa', 'Sadaasa', 'Muddee'],
+    'months_short' => ['Ama', 'Gur', 'Bit', 'Elb', 'Cam', 'Wax', 'Ado', 'Hag', 'Ful', 'Onk', 'Sad', 'Mud'],
+    'weekdays' => ['Dilbata', 'Wiixata', 'Qibxata', 'Roobii', 'Kamiisa', 'Jimaata', 'Sanbata'],
+    'weekdays_short' => ['Dil', 'Wix', 'Qib', 'Rob', 'Kam', 'Jim', 'San'],
+    'weekdays_min' => ['Dil', 'Wix', 'Qib', 'Rob', 'Kam', 'Jim', 'San'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['WD', 'WB'],
+
+    'year' => 'wggoota :count',
+    'y' => 'wggoota :count',
+    'a_year' => 'wggoota :count',
+
+    'month' => 'ji’a :count',
+    'm' => 'ji’a :count',
+    'a_month' => 'ji’a :count',
+
+    'week' => 'torban :count',
+    'w' => 'torban :count',
+    'a_week' => 'torban :count',
+
+    'day' => 'guyyaa :count',
+    'd' => 'guyyaa :count',
+    'a_day' => 'guyyaa :count',
+
+    'hour' => 'saʼaatii :count',
+    'h' => 'saʼaatii :count',
+    'a_hour' => 'saʼaatii :count',
+
+    'minute' => 'daqiiqaa :count',
+    'min' => 'daqiiqaa :count',
+    'a_minute' => 'daqiiqaa :count',
+
+    'second' => 'sekoondii :count',
+    's' => 'sekoondii :count',
+    'a_second' => 'sekoondii :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_ET.php
new file mode 100644
index 0000000..4648343
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_ET.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/om.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_KE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_KE.php
new file mode 100644
index 0000000..b29a40f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/om_KE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/om.php', [
+    'day_of_first_week_of_year' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or.php
new file mode 100644
index 0000000..3aa7173
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/or_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or_IN.php
new file mode 100644
index 0000000..57a89f5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/or_IN.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM AP Linux Technology Center, Yamato Software Laboratory    bug-glibc@gnu.org
+ */
+return [
+    'diff_now' => 'ବର୍ତ୍ତମାନ',
+    'diff_yesterday' => 'ଗତକାଲି',
+    'diff_tomorrow' => 'ଆସନ୍ତାକାଲି',
+    'formats' => [
+        'LT' => 'Oh:Om A',
+        'LTS' => 'Oh:Om:Os A',
+        'L' => 'OD-OM-OY',
+        'LL' => 'OD MMMM OY',
+        'LLL' => 'OD MMMM OY Oh:Om A',
+        'LLLL' => 'dddd OD MMMM OY Oh:Om A',
+    ],
+    'months' => ['ଜାନୁଆରୀ', 'ଫେବୃଆରୀ', 'ମାର୍ଚ୍ଚ', 'ଅପ୍ରେଲ', 'ମଇ', 'ଜୁନ', 'ଜୁଲାଇ', 'ଅଗଷ୍ଟ', 'ସେପ୍ଟେମ୍ବର', 'ଅକ୍ଟୋବର', 'ନଭେମ୍ବର', 'ଡିସେମ୍ବର'],
+    'months_short' => ['ଜାନୁଆରୀ', 'ଫେବୃଆରୀ', 'ମାର୍ଚ୍ଚ', 'ଅପ୍ରେଲ', 'ମଇ', 'ଜୁନ', 'ଜୁଲାଇ', 'ଅଗଷ୍ଟ', 'ସେପ୍ଟେମ୍ବର', 'ଅକ୍ଟୋବର', 'ନଭେମ୍ବର', 'ଡିସେମ୍ବର'],
+    'weekdays' => ['ରବିବାର', 'ସୋମବାର', 'ମଙ୍ଗଳବାର', 'ବୁଧବାର', 'ଗୁରୁବାର', 'ଶୁକ୍ରବାର', 'ଶନିବାର'],
+    'weekdays_short' => ['ରବି', 'ସୋମ', 'ମଙ୍ଗଳ', 'ବୁଧ', 'ଗୁରୁ', 'ଶୁକ୍ର', 'ଶନି'],
+    'weekdays_min' => ['ରବି', 'ସୋମ', 'ମଙ୍ଗଳ', 'ବୁଧ', 'ଗୁରୁ', 'ଶୁକ୍ର', 'ଶନି'],
+    'day_of_first_week_of_year' => 1,
+    'alt_numbers' => ['୦', '୧', '୨', '୩', '୪', '୫', '୬', '୭', '୮', '୯', '୧୦', '୧୧', '୧୨', '୧୩', '୧୪', '୧୫', '୧୬', '୧୭', '୧୮', '୧୯', '୨୦', '୨୧', '୨୨', '୨୩', '୨୪', '୨୫', '୨୬', '୨୭', '୨୮', '୨୯', '୩୦', '୩୧', '୩୨', '୩୩', '୩୪', '୩୫', '୩୬', '୩୭', '୩୮', '୩୯', '୪୦', '୪୧', '୪୨', '୪୩', '୪୪', '୪୫', '୪୬', '୪୭', '୪୮', '୪୯', '୫୦', '୫୧', '୫୨', '୫୩', '୫୪', '୫୫', '୫୬', '୫୭', '୫୮', '୫୯', '୬୦', '୬୧', '୬୨', '୬୩', '୬୪', '୬୫', '୬୬', '୬୭', '୬୮', '୬୯', '୭୦', '୭୧', '୭୨', '୭୩', '୭୪', '୭୫', '୭୬', '୭୭', '୭୮', '୭୯', '୮୦', '୮୧', '୮୨', '୮୩', '୮୪', '୮୫', '୮୬', '୮୭', '୮୮', '୮୯', '୯୦', '୯୧', '୯୨', '୯୩', '୯୪', '୯୫', '୯୬', '୯୭', '୯୮', '୯୯'],
+    'year' => ':count ବର୍ଷ',
+    'y' => ':count ବ.',
+    'month' => ':count ମାସ',
+    'm' => ':count ମା.',
+    'week' => ':count ସପ୍ତାହ',
+    'w' => ':count ସପ୍ତା.',
+    'day' => ':count ଦିନ',
+    'd' => ':count ଦିନ',
+    'hour' => ':count ଘଣ୍ତ',
+    'h' => ':count ଘ.',
+    'minute' => ':count ମିନଟ',
+    'min' => ':count ମି.',
+    'second' => ':count ସେକଣ୍ଢ',
+    's' => ':count ସେ.',
+    'ago' => ':time ପୂର୍ବେ',
+    'from_now' => ':timeରେ',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os.php
new file mode 100644
index 0000000..5f55e8a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/os_RU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os_RU.php
new file mode 100644
index 0000000..9592d15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/os_RU.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['январы', 'февралы', 'мартъийы', 'апрелы', 'майы', 'июны', 'июлы', 'августы', 'сентябры', 'октябры', 'ноябры', 'декабры'],
+    'months_short' => ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
+    'weekdays' => ['Хуыцаубон', 'Къуырисæр', 'Дыццæг', 'Æртыццæг', 'Цыппæрæм', 'Майрæмбон', 'Сабат'],
+    'weekdays_short' => ['Хцб', 'Крс', 'Дцг', 'Æрт', 'Цпр', 'Мрб', 'Сбт'],
+    'weekdays_min' => ['Хцб', 'Крс', 'Дцг', 'Æрт', 'Цпр', 'Мрб', 'Сбт'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'minute' => ':count гыццыл', // less reliable
+    'min' => ':count гыццыл', // less reliable
+    'a_minute' => ':count гыццыл', // less reliable
+
+    'second' => ':count æндæр', // less reliable
+    's' => ':count æндæр', // less reliable
+    'a_second' => ':count æндæр', // less reliable
+
+    'year' => ':count аз',
+    'y' => ':count аз',
+    'a_year' => ':count аз',
+
+    'month' => ':count мӕй',
+    'm' => ':count мӕй',
+    'a_month' => ':count мӕй',
+
+    'week' => ':count къуыри',
+    'w' => ':count къуыри',
+    'a_week' => ':count къуыри',
+
+    'day' => ':count бон',
+    'd' => ':count бон',
+    'a_day' => ':count бон',
+
+    'hour' => ':count сахат',
+    'h' => ':count сахат',
+    'a_hour' => ':count сахат',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa.php
new file mode 100644
index 0000000..48b2033
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa.php
@@ -0,0 +1,76 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - Punjab
+ */
+return [
+    'year' => 'ਇੱਕ ਸਾਲ|:count ਸਾਲ',
+    'month' => 'ਇੱਕ ਮਹੀਨਾ|:count ਮਹੀਨੇ',
+    'week' => 'ਹਫਤਾ|:count ਹਫ਼ਤੇ',
+    'day' => 'ਇੱਕ ਦਿਨ|:count ਦਿਨ',
+    'hour' => 'ਇੱਕ ਘੰਟਾ|:count ਘੰਟੇ',
+    'minute' => 'ਇਕ ਮਿੰਟ|:count ਮਿੰਟ',
+    'second' => 'ਕੁਝ ਸਕਿੰਟ|:count ਸਕਿੰਟ',
+    'ago' => ':time ਪਹਿਲਾਂ',
+    'from_now' => ':time ਵਿੱਚ',
+    'before' => ':time ਤੋਂ ਪਹਿਲਾਂ',
+    'after' => ':time ਤੋਂ ਬਾਅਦ',
+    'diff_now' => 'ਹੁਣ',
+    'diff_today' => 'ਅਜ',
+    'diff_yesterday' => 'ਕਲ',
+    'diff_tomorrow' => 'ਕਲ',
+    'formats' => [
+        'LT' => 'A h:mm ਵਜੇ',
+        'LTS' => 'A h:mm:ss ਵਜੇ',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm ਵਜੇ',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',
+    ],
+    'calendar' => [
+        'sameDay' => '[ਅਜ] LT',
+        'nextDay' => '[ਕਲ] LT',
+        'nextWeek' => '[ਅਗਲਾ] dddd, LT',
+        'lastDay' => '[ਕਲ] LT',
+        'lastWeek' => '[ਪਿਛਲੇ] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'ਰਾਤ';
+        }
+        if ($hour < 10) {
+            return 'ਸਵੇਰ';
+        }
+        if ($hour < 17) {
+            return 'ਦੁਪਹਿਰ';
+        }
+        if ($hour < 20) {
+            return 'ਸ਼ਾਮ';
+        }
+
+        return 'ਰਾਤ';
+    },
+    'months' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
+    'months_short' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
+    'weekdays' => ['ਐਤਵਾਰ', 'ਸੋਮਵਾਰ', 'ਮੰਗਲਵਾਰ', 'ਬੁਧਵਾਰ', 'ਵੀਰਵਾਰ', 'ਸ਼ੁੱਕਰਵਾਰ', 'ਸ਼ਨੀਚਰਵਾਰ'],
+    'weekdays_short' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁਧ', 'ਵੀਰ', 'ਸ਼ੁਕਰ', 'ਸ਼ਨੀ'],
+    'weekdays_min' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁਧ', 'ਵੀਰ', 'ਸ਼ੁਕਰ', 'ਸ਼ਨੀ'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' ਅਤੇ '],
+    'weekend' => [0, 0],
+    'alt_numbers' => ['੦', '੧', '੨', '੩', '੪', '੫', '੬', '੭', '੮', '੯'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Arab.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Arab.php
new file mode 100644
index 0000000..8b04dee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Arab.php
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ur.php', [
+    'weekdays' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
+    'weekdays_short' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
+    'weekdays_min' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
+    'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئ', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئ', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd, DD MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Guru.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Guru.php
new file mode 100644
index 0000000..c0d35ec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_Guru.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/pa.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D/M/yy',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY, h:mm a',
+    ],
+    'months' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
+    'months_short' => ['ਜਨ', 'ਫ਼ਰ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾ', 'ਅਗ', 'ਸਤੰ', 'ਅਕਤੂ', 'ਨਵੰ', 'ਦਸੰ'],
+    'weekdays' => ['ਐਤਵਾਰ', 'ਸੋਮਵਾਰ', 'ਮੰਗਲਵਾਰ', 'ਬੁੱਧਵਾਰ', 'ਵੀਰਵਾਰ', 'ਸ਼ੁੱਕਰਵਾਰ', 'ਸ਼ਨਿੱਚਰਵਾਰ'],
+    'weekdays_short' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁੱਧ', 'ਵੀਰ', 'ਸ਼ੁੱਕਰ', 'ਸ਼ਨਿੱਚਰ'],
+    'weekdays_min' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗ', 'ਬੁੱਧ', 'ਵੀਰ', 'ਸ਼ੁੱਕ', 'ਸ਼ਨਿੱ'],
+    'weekend' => [0, 0],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_IN.php
new file mode 100644
index 0000000..ca67642
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_IN.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Guo Xiang Tan
+ * - Josh Soref
+ * - Ash
+ * - harpreetkhalsagtbit
+ */
+return require __DIR__.'/pa.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_PK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_PK.php
new file mode 100644
index 0000000..f9af11c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pa_PK.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['جنوري', 'فروري', 'مارچ', 'اپريل', 'مٓی', 'جون', 'جولاي', 'اگست', 'ستمبر', 'اكتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنوري', 'فروري', 'مارچ', 'اپريل', 'مٓی', 'جون', 'جولاي', 'اگست', 'ستمبر', 'اكتوبر', 'نومبر', 'دسمبر'],
+    'weekdays' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'weekdays_short' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'weekdays_min' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ص', 'ش'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap.php
new file mode 100644
index 0000000..b4c1706
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return [
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm:ss',
+        'L' => 'DD-MM-YY',
+        'LL' => 'MMMM [di] DD, YYYY',
+        'LLL' => 'DD MMM HH.mm',
+        'LLLL' => 'MMMM DD, YYYY HH.mm',
+    ],
+    'months' => ['yanüari', 'febrüari', 'mart', 'aprel', 'mei', 'yüni', 'yüli', 'ougùstùs', 'sèptèmber', 'oktober', 'novèmber', 'desèmber'],
+    'months_short' => ['yan', 'feb', 'mar', 'apr', 'mei', 'yün', 'yül', 'oug', 'sèp', 'okt', 'nov', 'des'],
+    'weekdays' => ['djadomingo', 'djaluna', 'djamars', 'djawebs', 'djarason', 'djabierne', 'djasabra'],
+    'weekdays_short' => ['do', 'lu', 'ma', 'we', 'ra', 'bi', 'sa'],
+    'weekdays_min' => ['do', 'lu', 'ma', 'we', 'ra', 'bi', 'sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'year' => ':count aña',
+    'month' => ':count luna',
+    'week' => ':count siman',
+    'day' => ':count dia',
+    'hour' => ':count ora',
+    'minute' => ':count minüt',
+    'second' => ':count sekònde',
+    'list' => [', ', ' i '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_AW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_AW.php
new file mode 100644
index 0000000..e9a48ff
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_AW.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from native speaker Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return require __DIR__.'/pap.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_CW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_CW.php
new file mode 100644
index 0000000..e9a48ff
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pap_CW.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - information from native speaker Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return require __DIR__.'/pap.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl.php
new file mode 100644
index 0000000..ca10fe4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl.php
@@ -0,0 +1,116 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Wacław Jacek
+ * - François B
+ * - Tim Fish
+ * - Serhan Apaydın
+ * - Massimiliano Caniparoli
+ * - JD Isaacks
+ * - Jakub Szwacz
+ * - Jan
+ * - Paul
+ * - damlys
+ * - Marek (marast78)
+ * - Peter (UnrulyNatives)
+ * - Qrzysio
+ * - Jan (aso824)
+ */
+return [
+    'year' => ':count rok|:count lata|:count lat',
+    'a_year' => 'rok|:count lata|:count lat',
+    'y' => ':count r|:count l|:count l',
+    'month' => ':count miesiąc|:count miesiące|:count miesięcy',
+    'a_month' => 'miesiąc|:count miesiące|:count miesięcy',
+    'm' => ':count mies.',
+    'week' => ':count tydzień|:count tygodnie|:count tygodni',
+    'a_week' => 'tydzień|:count tygodnie|:count tygodni',
+    'w' => ':count tyg.',
+    'day' => ':count dzień|:count dni|:count dni',
+    'a_day' => 'dzień|:count dni|:count dni',
+    'd' => ':count d',
+    'hour' => ':count godzina|:count godziny|:count godzin',
+    'a_hour' => 'godzina|:count godziny|:count godzin',
+    'h' => ':count godz.',
+    'minute' => ':count minuta|:count minuty|:count minut',
+    'a_minute' => 'minuta|:count minuty|:count minut',
+    'min' => ':count min.',
+    'second' => ':count sekunda|:count sekundy|:count sekund',
+    'a_second' => '{1}kilka sekund|:count sekunda|:count sekundy|:count sekund',
+    's' => ':count sek.',
+    'ago' => ':time temu',
+    'from_now' => 'za :time',
+    'after' => ':time po',
+    'before' => ':time przed',
+    'diff_now' => 'przed chwilą',
+    'diff_today' => 'Dziś',
+    'diff_today_regexp' => 'Dziś(?:\\s+o)?',
+    'diff_yesterday' => 'wczoraj',
+    'diff_yesterday_regexp' => 'Wczoraj(?:\\s+o)?',
+    'diff_tomorrow' => 'jutro',
+    'diff_tomorrow_regexp' => 'Jutro(?:\\s+o)?',
+    'diff_before_yesterday' => 'przedwczoraj',
+    'diff_after_tomorrow' => 'pojutrze',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Dziś o] LT',
+        'nextDay' => '[Jutro o] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[W niedzielę o] LT';
+                case 2:
+                    return '[We wtorek o] LT';
+                case 3:
+                    return '[W środę o] LT';
+                case 6:
+                    return '[W sobotę o] LT';
+                default:
+                    return '[W] dddd [o] LT';
+            }
+        },
+        'lastDay' => '[Wczoraj o] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[W zeszłą niedzielę o] LT';
+                case 3:
+                    return '[W zeszłą środę o] LT';
+                case 6:
+                    return '[W zeszłą sobotę o] LT';
+                default:
+                    return '[W zeszły] dddd [o] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia'],
+    'months_standalone' => ['styczeń', 'luty', 'marzec', 'kwiecień', 'maj', 'czerwiec', 'lipiec', 'sierpień', 'wrzesień', 'październik', 'listopad', 'grudzień'],
+    'months_short' => ['sty', 'lut', 'mar', 'kwi', 'maj', 'cze', 'lip', 'sie', 'wrz', 'paź', 'lis', 'gru'],
+    'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['niedziela', 'poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota'],
+    'weekdays_short' => ['ndz', 'pon', 'wt', 'śr', 'czw', 'pt', 'sob'],
+    'weekdays_min' => ['Nd', 'Pn', 'Wt', 'Śr', 'Cz', 'Pt', 'So'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' i '],
+    'meridiem' => ['przed południem', 'po południu'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl_PL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl_PL.php
new file mode 100644
index 0000000..69cd697
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pl_PL.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/prg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/prg.php
new file mode 100644
index 0000000..d0fd2f0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/prg.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+
+    'year' => ':count meta',
+    'y' => ':count meta',
+    'a_year' => ':count meta',
+
+    'month' => ':count mēniks', // less reliable
+    'm' => ':count mēniks', // less reliable
+    'a_month' => ':count mēniks', // less reliable
+
+    'week' => ':count sawaītin', // less reliable
+    'w' => ':count sawaītin', // less reliable
+    'a_week' => ':count sawaītin', // less reliable
+
+    'day' => ':count di',
+    'd' => ':count di',
+    'a_day' => ':count di',
+
+    'hour' => ':count bruktēt', // less reliable
+    'h' => ':count bruktēt', // less reliable
+    'a_hour' => ':count bruktēt', // less reliable
+
+    'minute' => ':count līkuts', // less reliable
+    'min' => ':count līkuts', // less reliable
+    'a_minute' => ':count līkuts', // less reliable
+
+    'second' => ':count kitan', // less reliable
+    's' => ':count kitan', // less reliable
+    'a_second' => ':count kitan', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps.php
new file mode 100644
index 0000000..a928b28
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Muhammad Nasir Rahimi
+ * - Nassim Nasibullah (spinzar)
+ */
+return [
+    'year' => ':count کال|:count کاله',
+    'y' => ':countکال|:countکاله',
+    'month' => ':count مياشت|:count مياشتي',
+    'm' => ':countمياشت|:countمياشتي',
+    'week' => ':count اونۍ|:count اونۍ',
+    'w' => ':countاونۍ|:countاونۍ',
+    'day' => ':count ورځ|:count ورځي',
+    'd' => ':countورځ|:countورځي',
+    'hour' => ':count ساعت|:count ساعته',
+    'h' => ':countساعت|:countساعته',
+    'minute' => ':count دقيقه|:count دقيقې',
+    'min' => ':countدقيقه|:countدقيقې',
+    'second' => ':count ثانيه|:count ثانيې',
+    's' => ':countثانيه|:countثانيې',
+    'ago' => ':time دمخه',
+    'from_now' => ':time له اوس څخه',
+    'after' => ':time وروسته',
+    'before' => ':time دمخه',
+    'list' => ['، ', ' او '],
+    'meridiem' => ['غ.م.', 'غ.و.'],
+    'weekdays' => ['اتوار', 'ګل', 'نهه', 'شورو', 'زيارت', 'جمعه', 'خالي'],
+    'weekdays_short' => ['ا', 'ګ', 'ن', 'ش', 'ز', 'ج', 'خ'],
+    'weekdays_min' => ['ا', 'ګ', 'ن', 'ش', 'ز', 'ج', 'خ'],
+    'months' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سېپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سېپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_standalone' => ['جنوري', 'فېبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short_standalone' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'first_day_of_week' => 6,
+    'weekend' => [4, 5],
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'YYYY/M/d',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'د YYYY د MMMM D H:mm',
+        'LLLL' => 'dddd د YYYY د MMMM D H:mm',
+    ],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps_AF.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps_AF.php
new file mode 100644
index 0000000..e63121e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ps_AF.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ps.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt.php
new file mode 100644
index 0000000..e36ca4c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt.php
@@ -0,0 +1,104 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Cassiano Montanari
+ * - Matt Pope
+ * - François B
+ * - Prodis
+ * - JD Isaacks
+ * - Raphael Amorim
+ * - João Magalhães
+ * - victortobias
+ * - Paulo Freitas
+ * - Sebastian Thierer
+ * - Claudson Martins (claudsonm)
+ */
+return [
+    'year' => ':count ano|:count anos',
+    'a_year' => 'um ano|:count anos',
+    'y' => ':counta',
+    'month' => ':count mês|:count meses',
+    'a_month' => 'um mês|:count meses',
+    'm' => ':countm',
+    'week' => ':count semana|:count semanas',
+    'a_week' => 'uma semana|:count semanas',
+    'w' => ':countsem',
+    'day' => ':count dia|:count dias',
+    'a_day' => 'um dia|:count dias',
+    'd' => ':countd',
+    'hour' => ':count hora|:count horas',
+    'a_hour' => 'uma hora|:count horas',
+    'h' => ':counth',
+    'minute' => ':count minuto|:count minutos',
+    'a_minute' => 'um minuto|:count minutos',
+    'min' => ':countmin',
+    'second' => ':count segundo|:count segundos',
+    'a_second' => 'alguns segundos|:count segundos',
+    's' => ':counts',
+    'millisecond' => ':count milissegundo|:count milissegundos',
+    'a_millisecond' => 'um milissegundo|:count milissegundos',
+    'ms' => ':countms',
+    'microsecond' => ':count microssegundo|:count microssegundos',
+    'a_microsecond' => 'um microssegundo|:count microssegundos',
+    'µs' => ':countµs',
+    'ago' => 'há :time',
+    'from_now' => 'em :time',
+    'after' => ':time depois',
+    'before' => ':time antes',
+    'diff_now' => 'agora',
+    'diff_today' => 'Hoje',
+    'diff_today_regexp' => 'Hoje(?:\\s+às)?',
+    'diff_yesterday' => 'ontem',
+    'diff_yesterday_regexp' => 'Ontem(?:\\s+às)?',
+    'diff_tomorrow' => 'amanhã',
+    'diff_tomorrow_regexp' => 'Amanhã(?:\\s+às)?',
+    'diff_before_yesterday' => 'anteontem',
+    'diff_after_tomorrow' => 'depois de amanhã',
+    'period_recurrences' => 'uma vez|:count vezes',
+    'period_interval' => 'cada :interval',
+    'period_start_date' => 'de :date',
+    'period_end_date' => 'até :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D [de] MMMM [de] YYYY',
+        'LLL' => 'D [de] MMMM [de] YYYY HH:mm',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hoje às] LT',
+        'nextDay' => '[Amanhã às] LT',
+        'nextWeek' => 'dddd [às] LT',
+        'lastDay' => '[Ontem às] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                case 6:
+                    return '[Último] dddd [às] LT';
+                default:
+                    return '[Última] dddd [às] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['janeiro', 'fevereiro', 'março', 'abril', 'maio', 'junho', 'julho', 'agosto', 'setembro', 'outubro', 'novembro', 'dezembro'],
+    'months_short' => ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez'],
+    'weekdays' => ['domingo', 'segunda-feira', 'terça-feira', 'quarta-feira', 'quinta-feira', 'sexta-feira', 'sábado'],
+    'weekdays_short' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
+    'weekdays_min' => ['Do', '2ª', '3ª', '4ª', '5ª', '6ª', 'Sá'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' e '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_AO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_AO.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_AO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php
new file mode 100644
index 0000000..e917c5c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_BR.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Cassiano Montanari
+ * - Eduardo Dalla Vecchia
+ * - David Rodrigues
+ * - Matt Pope
+ * - François B
+ * - Prodis
+ * - Marlon Maxwel
+ * - JD Isaacks
+ * - Raphael Amorim
+ * - Rafael Raupp
+ * - felipeleite1
+ * - swalker
+ * - Lucas Macedo
+ * - Paulo Freitas
+ * - Sebastian Thierer
+ */
+return array_replace_recursive(require __DIR__.'/pt.php', [
+    'period_recurrences' => 'uma|:count vez',
+    'period_interval' => 'toda :interval',
+    'formats' => [
+        'LLL' => 'D [de] MMMM [de] YYYY [às] HH:mm',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',
+    ],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CH.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CV.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CV.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_CV.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GQ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GQ.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GQ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GW.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_GW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_LU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_LU.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_LU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MO.php
new file mode 100644
index 0000000..331fa5c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MO.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/pt.php', [
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'LLL' => 'D [de] MMMM [de] YYYY, h:mm a',
+        'LLLL' => 'dddd, D [de] MMMM [de] YYYY, h:mm a',
+    ],
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MZ.php
new file mode 100644
index 0000000..93bac23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_MZ.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/pt.php', [
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_PT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_PT.php
new file mode 100644
index 0000000..2a76fc1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_PT.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RAP    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/pt.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['janeiro', 'fevereiro', 'março', 'abril', 'maio', 'junho', 'julho', 'agosto', 'setembro', 'outubro', 'novembro', 'dezembro'],
+    'months_short' => ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez'],
+    'weekdays' => ['domingo', 'segunda', 'terça', 'quarta', 'quinta', 'sexta', 'sábado'],
+    'weekdays_short' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
+    'weekdays_min' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_ST.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_ST.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_ST.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_TL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_TL.php
new file mode 100644
index 0000000..3d13bca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/pt_TL.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/pt.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu.php
new file mode 100644
index 0000000..5f3a392
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/es_UY.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM, YYYY HH:mm',
+    ],
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_BO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_BO.php
new file mode 100644
index 0000000..91635d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_BO.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/qu.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_EC.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_EC.php
new file mode 100644
index 0000000..91635d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/qu_EC.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/qu.php', [
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz.php
new file mode 100644
index 0000000..1640c02
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/quz_PE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz_PE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz_PE.php
new file mode 100644
index 0000000..d322918
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/quz_PE.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['iniru', 'phiwriru', 'marsu', 'awril', 'mayu', 'huniyu', 'huliyu', 'agustu', 'siptiyimri', 'uktuwri', 'nuwiyimri', 'tisiyimri'],
+    'months_short' => ['ini', 'phi', 'mar', 'awr', 'may', 'hun', 'hul', 'agu', 'sip', 'ukt', 'nuw', 'tis'],
+    'weekdays' => ['tuminku', 'lunis', 'martis', 'miyirkulis', 'juywis', 'wiyirnis', 'sawatu'],
+    'weekdays_short' => ['tum', 'lun', 'mar', 'miy', 'juy', 'wiy', 'saw'],
+    'weekdays_min' => ['tum', 'lun', 'mar', 'miy', 'juy', 'wiy', 'saw'],
+    'day_of_first_week_of_year' => 1,
+
+    'minute' => ':count uchuy', // less reliable
+    'min' => ':count uchuy', // less reliable
+    'a_minute' => ':count uchuy', // less reliable
+
+    'year' => ':count wata',
+    'y' => ':count wata',
+    'a_year' => ':count wata',
+
+    'month' => ':count killa',
+    'm' => ':count killa',
+    'a_month' => ':count killa',
+
+    'week' => ':count simana',
+    'w' => ':count simana',
+    'a_week' => ':count simana',
+
+    'day' => ':count pʼunchaw',
+    'd' => ':count pʼunchaw',
+    'a_day' => ':count pʼunchaw',
+
+    'hour' => ':count ura',
+    'h' => ':count ura',
+    'a_hour' => ':count ura',
+
+    'second' => ':count iskay ñiqin',
+    's' => ':count iskay ñiqin',
+    'a_second' => ':count iskay ñiqin',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj.php
new file mode 100644
index 0000000..26138c9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/raj_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj_IN.php
new file mode 100644
index 0000000..7b4589c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/raj_IN.php
@@ -0,0 +1,47 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - meghrajsuthar03@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर'],
+    'months_short' => ['जन', 'फर', 'मार्च', 'अप्रै', 'मई', 'जून', 'जुल', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'],
+    'weekdays' => ['रविवार', 'सोमवार', 'मंगल्लवार', 'बुधवार', 'बृहस्पतिवार', 'शुक्रवार', 'शनिवार'],
+    'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+
+    'year' => ':count आंहू', // less reliable
+    'y' => ':count आंहू', // less reliable
+    'a_year' => ':count आंहू', // less reliable
+
+    'month' => ':count सूरज', // less reliable
+    'm' => ':count सूरज', // less reliable
+    'a_month' => ':count सूरज', // less reliable
+
+    'week' => ':count निवाज', // less reliable
+    'w' => ':count निवाज', // less reliable
+    'a_week' => ':count निवाज', // less reliable
+
+    'day' => ':count अेक', // less reliable
+    'd' => ':count अेक', // less reliable
+    'a_day' => ':count अेक', // less reliable
+
+    'hour' => ':count दुनियांण', // less reliable
+    'h' => ':count दुनियांण', // less reliable
+    'a_hour' => ':count दुनियांण', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rm.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rm.php
new file mode 100644
index 0000000..1843f45
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rm.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - tjku
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - Tsutomu Kuroda
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Nicolás Hock Isaza
+ * - sebastian de castelberg
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'Do MMMM YYYY',
+        'LLL' => 'Do MMMM, HH:mm [Uhr]',
+        'LLLL' => 'dddd, Do MMMM YYYY, HH:mm [Uhr]',
+    ],
+    'year' => ':count onn|:count onns',
+    'month' => ':count mais',
+    'week' => ':count emna|:count emnas',
+    'day' => ':count di|:count dis',
+    'hour' => ':count oura|:count ouras',
+    'minute' => ':count minuta|:count minutas',
+    'second' => ':count secunda|:count secundas',
+    'weekdays' => ['dumengia', 'glindesdi', 'mardi', 'mesemna', 'gievgia', 'venderdi', 'sonda'],
+    'weekdays_short' => ['du', 'gli', 'ma', 'me', 'gie', 've', 'so'],
+    'weekdays_min' => ['du', 'gli', 'ma', 'me', 'gie', 've', 'so'],
+    'months' => ['schaner', 'favrer', 'mars', 'avrigl', 'matg', 'zercladur', 'fanadur', 'avust', 'settember', 'october', 'november', 'december'],
+    'months_short' => ['schan', 'favr', 'mars', 'avr', 'matg', 'zercl', 'fan', 'avust', 'sett', 'oct', 'nov', 'dec'],
+    'meridiem' => ['avantmezdi', 'suentermezdi'],
+    'list' => [', ', ' e '],
+    'first_day_of_week' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rn.php
new file mode 100644
index 0000000..637d4e5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rn.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Z.MU.', 'Z.MW.'],
+    'weekdays' => ['Ku w’indwi', 'Ku wa mbere', 'Ku wa kabiri', 'Ku wa gatatu', 'Ku wa kane', 'Ku wa gatanu', 'Ku wa gatandatu'],
+    'weekdays_short' => ['cu.', 'mbe.', 'kab.', 'gtu.', 'kan.', 'gnu.', 'gnd.'],
+    'weekdays_min' => ['cu.', 'mbe.', 'kab.', 'gtu.', 'kan.', 'gnu.', 'gnd.'],
+    'months' => ['Nzero', 'Ruhuhuma', 'Ntwarante', 'Ndamukiza', 'Rusama', 'Ruheshi', 'Mukakaro', 'Nyandagaro', 'Nyakanga', 'Gitugutu', 'Munyonyo', 'Kigarama'],
+    'months_short' => ['Mut.', 'Gas.', 'Wer.', 'Mat.', 'Gic.', 'Kam.', 'Nya.', 'Kan.', 'Nze.', 'Ukw.', 'Ugu.', 'Uku.'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'year' => 'imyaka :count',
+    'y' => 'imyaka :count',
+    'a_year' => 'imyaka :count',
+
+    'month' => 'amezi :count',
+    'm' => 'amezi :count',
+    'a_month' => 'amezi :count',
+
+    'week' => 'indwi :count',
+    'w' => 'indwi :count',
+    'a_week' => 'indwi :count',
+
+    'day' => 'imisi :count',
+    'd' => 'imisi :count',
+    'a_day' => 'imisi :count',
+
+    'hour' => 'amasaha :count',
+    'h' => 'amasaha :count',
+    'a_hour' => 'amasaha :count',
+
+    'minute' => 'iminuta :count',
+    'min' => 'iminuta :count',
+    'a_minute' => 'iminuta :count',
+
+    'second' => 'inguvu :count', // less reliable
+    's' => 'inguvu :count', // less reliable
+    'a_second' => 'inguvu :count', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro.php
new file mode 100644
index 0000000..868a327
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ * - Cătălin Georgescu
+ * - Valentin Ivaşcu (oriceon)
+ */
+return [
+    'year' => ':count an|:count ani|:count ani',
+    'a_year' => 'un an|:count ani|:count ani',
+    'y' => ':count a.',
+    'month' => ':count lună|:count luni|:count luni',
+    'a_month' => 'o lună|:count luni|:count luni',
+    'm' => ':count l.',
+    'week' => ':count săptămână|:count săptămâni|:count săptămâni',
+    'a_week' => 'o săptămână|:count săptămâni|:count săptămâni',
+    'w' => ':count săp.',
+    'day' => ':count zi|:count zile|:count zile',
+    'a_day' => 'o zi|:count zile|:count zile',
+    'd' => ':count z.',
+    'hour' => ':count oră|:count ore|:count ore',
+    'a_hour' => 'o oră|:count ore|:count ore',
+    'h' => ':count o.',
+    'minute' => ':count minut|:count minute|:count minute',
+    'a_minute' => 'un minut|:count minute|:count minute',
+    'min' => ':count m.',
+    'second' => ':count secundă|:count secunde|:count secunde',
+    'a_second' => 'câteva secunde|:count secunde|:count secunde',
+    's' => ':count sec.',
+    'ago' => ':time în urmă',
+    'from_now' => 'peste :time',
+    'after' => 'peste :time',
+    'before' => 'acum :time',
+    'diff_now' => 'acum',
+    'diff_today' => 'azi',
+    'diff_today_regexp' => 'azi(?:\\s+la)?',
+    'diff_yesterday' => 'ieri',
+    'diff_yesterday_regexp' => 'ieri(?:\\s+la)?',
+    'diff_tomorrow' => 'mâine',
+    'diff_tomorrow_regexp' => 'mâine(?:\\s+la)?',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[azi la] LT',
+        'nextDay' => '[mâine la] LT',
+        'nextWeek' => 'dddd [la] LT',
+        'lastDay' => '[ieri la] LT',
+        'lastWeek' => '[fosta] dddd [la] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['ianuarie', 'februarie', 'martie', 'aprilie', 'mai', 'iunie', 'iulie', 'august', 'septembrie', 'octombrie', 'noiembrie', 'decembrie'],
+    'months_short' => ['ian.', 'feb.', 'mar.', 'apr.', 'mai', 'iun.', 'iul.', 'aug.', 'sept.', 'oct.', 'nov.', 'dec.'],
+    'weekdays' => ['duminică', 'luni', 'marți', 'miercuri', 'joi', 'vineri', 'sâmbătă'],
+    'weekdays_short' => ['dum', 'lun', 'mar', 'mie', 'joi', 'vin', 'sâm'],
+    'weekdays_min' => ['du', 'lu', 'ma', 'mi', 'jo', 'vi', 'sâ'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' și '],
+    'meridiem' => ['a.m.', 'p.m.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_MD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_MD.php
new file mode 100644
index 0000000..0ba6f68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_MD.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ro.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_RO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_RO.php
new file mode 100644
index 0000000..dd7c8f0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ro_RO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ro.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rof.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rof.php
new file mode 100644
index 0000000..80ab454
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rof.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['kang’ama', 'kingoto'],
+    'weekdays' => ['Ijumapili', 'Ijumatatu', 'Ijumanne', 'Ijumatano', 'Alhamisi', 'Ijumaa', 'Ijumamosi'],
+    'weekdays_short' => ['Ijp', 'Ijt', 'Ijn', 'Ijtn', 'Alh', 'Iju', 'Ijm'],
+    'weekdays_min' => ['Ijp', 'Ijt', 'Ijn', 'Ijtn', 'Alh', 'Iju', 'Ijm'],
+    'months' => ['Mweri wa kwanza', 'Mweri wa kaili', 'Mweri wa katatu', 'Mweri wa kaana', 'Mweri wa tanu', 'Mweri wa sita', 'Mweri wa saba', 'Mweri wa nane', 'Mweri wa tisa', 'Mweri wa ikumi', 'Mweri wa ikumi na moja', 'Mweri wa ikumi na mbili'],
+    'months_short' => ['M1', 'M2', 'M3', 'M4', 'M5', 'M6', 'M7', 'M8', 'M9', 'M10', 'M11', 'M12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru.php
new file mode 100644
index 0000000..93e0e01
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru.php
@@ -0,0 +1,188 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Bari Badamshin
+ * - Jørn Ølmheim
+ * - François B
+ * - Tim Fish
+ * - Коренберг Марк (imac)
+ * - Serhan Apaydın
+ * - RomeroMsk
+ * - vsn4ik
+ * - JD Isaacks
+ * - Bari Badamshin
+ * - Jørn Ølmheim
+ * - François B
+ * - Коренберг Марк (imac)
+ * - Serhan Apaydın
+ * - RomeroMsk
+ * - vsn4ik
+ * - JD Isaacks
+ * - Fellzo
+ * - andrey-helldar
+ * - Pavel Skripkin (psxx)
+ * - AlexWalkerson
+ * - Vladislav UnsealedOne
+ * - dima-bzz
+ */
+$transformDiff = function ($input) {
+    return strtr($input, [
+        'неделя' => 'неделю',
+        'секунда' => 'секунду',
+        'минута' => 'минуту',
+    ]);
+};
+
+return [
+    'year' => ':count год|:count года|:count лет',
+    'y' => ':count г.|:count г.|:count л.',
+    'a_year' => '{1}год|:count год|:count года|:count лет',
+    'month' => ':count месяц|:count месяца|:count месяцев',
+    'm' => ':count мес.',
+    'a_month' => '{1}месяц|:count месяц|:count месяца|:count месяцев',
+    'week' => ':count неделя|:count недели|:count недель',
+    'w' => ':count нед.',
+    'a_week' => '{1}неделя|:count неделю|:count недели|:count недель',
+    'day' => ':count день|:count дня|:count дней',
+    'd' => ':count д.',
+    'a_day' => '{1}день|:count день|:count дня|:count дней',
+    'hour' => ':count час|:count часа|:count часов',
+    'h' => ':count ч.',
+    'a_hour' => '{1}час|:count час|:count часа|:count часов',
+    'minute' => ':count минута|:count минуты|:count минут',
+    'min' => ':count мин.',
+    'a_minute' => '{1}минута|:count минута|:count минуты|:count минут',
+    'second' => ':count секунда|:count секунды|:count секунд',
+    's' => ':count сек.',
+    'a_second' => '{1}несколько секунд|:count секунду|:count секунды|:count секунд',
+    'ago' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' назад';
+    },
+    'from_now' => function ($time) use ($transformDiff) {
+        return 'через '.$transformDiff($time);
+    },
+    'after' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' после';
+    },
+    'before' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' до';
+    },
+    'diff_now' => 'только что',
+    'diff_today' => 'Сегодня,',
+    'diff_today_regexp' => 'Сегодня,?(?:\\s+в)?',
+    'diff_yesterday' => 'вчера',
+    'diff_yesterday_regexp' => 'Вчера,?(?:\\s+в)?',
+    'diff_tomorrow' => 'завтра',
+    'diff_tomorrow_regexp' => 'Завтра,?(?:\\s+в)?',
+    'diff_before_yesterday' => 'позавчера',
+    'diff_after_tomorrow' => 'послезавтра',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY г.',
+        'LLL' => 'D MMMM YYYY г., H:mm',
+        'LLLL' => 'dddd, D MMMM YYYY г., H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Сегодня, в] LT',
+        'nextDay' => '[Завтра, в] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $current, \Carbon\CarbonInterface $other) {
+            if ($current->week !== $other->week) {
+                switch ($current->dayOfWeek) {
+                    case 0:
+                        return '[В следующее] dddd, [в] LT';
+                    case 1:
+                    case 2:
+                    case 4:
+                        return '[В следующий] dddd, [в] LT';
+                    case 3:
+                    case 5:
+                    case 6:
+                        return '[В следующую] dddd, [в] LT';
+                }
+            }
+
+            if ($current->dayOfWeek === 2) {
+                return '[Во] dddd, [в] LT';
+            }
+
+            return '[В] dddd, [в] LT';
+        },
+        'lastDay' => '[Вчера, в] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $current, \Carbon\CarbonInterface $other) {
+            if ($current->week !== $other->week) {
+                switch ($current->dayOfWeek) {
+                    case 0:
+                        return '[В прошлое] dddd, [в] LT';
+                    case 1:
+                    case 2:
+                    case 4:
+                        return '[В прошлый] dddd, [в] LT';
+                    case 3:
+                    case 5:
+                    case 6:
+                        return '[В прошлую] dddd, [в] LT';
+                }
+            }
+
+            if ($current->dayOfWeek === 2) {
+                return '[Во] dddd, [в] LT';
+            }
+
+            return '[В] dddd, [в] LT';
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'M':
+            case 'd':
+            case 'DDD':
+                return $number.'-й';
+            case 'D':
+                return $number.'-го';
+            case 'w':
+            case 'W':
+                return $number.'-я';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'ночи';
+        }
+        if ($hour < 12) {
+            return 'утра';
+        }
+        if ($hour < 17) {
+            return 'дня';
+        }
+
+        return 'вечера';
+    },
+    'months' => ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'],
+    'months_standalone' => ['январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'],
+    'months_short' => ['янв', 'фев', 'мар', 'апр', 'мая', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'months_short_standalone' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => ['воскресенье', 'понедельник', 'вторник', 'среду', 'четверг', 'пятницу', 'субботу'],
+    'weekdays_standalone' => ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
+    'weekdays_short' => ['вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'сбт'],
+    'weekdays_min' => ['вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
+    'weekdays_regexp' => '/\[\s*(В|в)\s*((?:прошлую|следующую|эту)\s*)?\]\s*dddd/',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' и '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_BY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_BY.php
new file mode 100644
index 0000000..2c8d78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_BY.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ru.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KG.php
new file mode 100644
index 0000000..2c8d78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ru.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KZ.php
new file mode 100644
index 0000000..2c8d78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_KZ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ru.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_MD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_MD.php
new file mode 100644
index 0000000..2c8d78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_MD.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ru.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_RU.php
new file mode 100644
index 0000000..2c8d78f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_RU.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ru.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_UA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_UA.php
new file mode 100644
index 0000000..db958d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ru_UA.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - RFC 2319    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ru.php', [
+    'weekdays' => ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
+    'weekdays_short' => ['вск', 'пнд', 'вто', 'срд', 'чтв', 'птн', 'суб'],
+    'weekdays_min' => ['вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'су'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw.php
new file mode 100644
index 0000000..bc4a347
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/rw_RW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw_RW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw_RW.php
new file mode 100644
index 0000000..9b3e068
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rw_RW.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Rwanda Steve Murphy murf@e-tools.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Mutarama', 'Gashyantare', 'Werurwe', 'Mata', 'Gicuransi', 'Kamena', 'Nyakanga', 'Kanama', 'Nzeli', 'Ukwakira', 'Ugushyingo', 'Ukuboza'],
+    'months_short' => ['Mut', 'Gas', 'Wer', 'Mat', 'Gic', 'Kam', 'Nya', 'Kan', 'Nze', 'Ukw', 'Ugu', 'Uku'],
+    'weekdays' => ['Ku cyumweru', 'Kuwa mbere', 'Kuwa kabiri', 'Kuwa gatatu', 'Kuwa kane', 'Kuwa gatanu', 'Kuwa gatandatu'],
+    'weekdays_short' => ['Mwe', 'Mbe', 'Kab', 'Gtu', 'Kan', 'Gnu', 'Gnd'],
+    'weekdays_min' => ['Mwe', 'Mbe', 'Kab', 'Gtu', 'Kan', 'Gnu', 'Gnd'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'second' => ':count vuna', // less reliable
+    's' => ':count vuna', // less reliable
+    'a_second' => ':count vuna', // less reliable
+
+    'year' => 'aka :count',
+    'y' => 'aka :count',
+    'a_year' => 'aka :count',
+
+    'month' => 'ezi :count',
+    'm' => 'ezi :count',
+    'a_month' => 'ezi :count',
+
+    'week' => ':count icyumweru',
+    'w' => ':count icyumweru',
+    'a_week' => ':count icyumweru',
+
+    'day' => ':count nsi',
+    'd' => ':count nsi',
+    'a_day' => ':count nsi',
+
+    'hour' => 'saha :count',
+    'h' => 'saha :count',
+    'a_hour' => 'saha :count',
+
+    'minute' => ':count -nzinya',
+    'min' => ':count -nzinya',
+    'a_minute' => ':count -nzinya',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rwk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rwk.php
new file mode 100644
index 0000000..f8cc72c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/rwk.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['utuko', 'kyiukonyi'],
+    'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa.php
new file mode 100644
index 0000000..1357c03
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sa_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa_IN.php
new file mode 100644
index 0000000..cfda9a6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sa_IN.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - The Debian project Christian Perrier bubulle@debian.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D-MM-YY',
+    ],
+    'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'weekdays' => ['रविवासर:', 'सोमवासर:', 'मंगलवासर:', 'बुधवासर:', 'बृहस्पतिवासरः', 'शुक्रवासर', 'शनिवासर:'],
+    'weekdays_short' => ['रविः', 'सोम:', 'मंगल:', 'बुध:', 'बृहस्पतिः', 'शुक्र', 'शनि:'],
+    'weekdays_min' => ['रविः', 'सोम:', 'मंगल:', 'बुध:', 'बृहस्पतिः', 'शुक्र', 'शनि:'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+
+    'minute' => ':count होरा', // less reliable
+    'min' => ':count होरा', // less reliable
+    'a_minute' => ':count होरा', // less reliable
+
+    'year' => ':count वर्ष',
+    'y' => ':count वर्ष',
+    'a_year' => ':count वर्ष',
+
+    'month' => ':count मास',
+    'm' => ':count मास',
+    'a_month' => ':count मास',
+
+    'week' => ':count सप्ताहः saptahaĥ',
+    'w' => ':count सप्ताहः saptahaĥ',
+    'a_week' => ':count सप्ताहः saptahaĥ',
+
+    'day' => ':count दिन',
+    'd' => ':count दिन',
+    'a_day' => ':count दिन',
+
+    'hour' => ':count घण्टा',
+    'h' => ':count घण्टा',
+    'a_hour' => ':count घण्टा',
+
+    'second' => ':count द्वितीयः',
+    's' => ':count द्वितीयः',
+    'a_second' => ':count द्वितीयः',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah.php
new file mode 100644
index 0000000..b828824
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sah_RU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah_RU.php
new file mode 100644
index 0000000..94cc0cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sah_RU.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Valery Timiriliyev Valery Timiriliyev timiriliyev@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/ru.php', [
+    'formats' => [
+        'L' => 'YYYY.MM.DD',
+    ],
+    'months' => ['тохсунньу', 'олунньу', 'кулун тутар', 'муус устар', 'ыам ыйын', 'бэс ыйын', 'от ыйын', 'атырдьах ыйын', 'балаҕан ыйын', 'алтынньы', 'сэтинньи', 'ахсынньы'],
+    'months_short' => ['тохс', 'олун', 'кул', 'муус', 'ыам', 'бэс', 'от', 'атыр', 'бал', 'алт', 'сэт', 'ахс'],
+    'weekdays' => ['баскыһыанньа', 'бэнидиэнньик', 'оптуорунньук', 'сэрэдэ', 'чэппиэр', 'бээтинсэ', 'субуота'],
+    'weekdays_short' => ['бс', 'бн', 'оп', 'ср', 'чп', 'бт', 'сб'],
+    'weekdays_min' => ['бс', 'бн', 'оп', 'ср', 'чп', 'бт', 'сб'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/saq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/saq.php
new file mode 100644
index 0000000..eebfac9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/saq.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Tesiran', 'Teipa'],
+    'weekdays' => ['Mderot ee are', 'Mderot ee kuni', 'Mderot ee ong’wan', 'Mderot ee inet', 'Mderot ee ile', 'Mderot ee sapa', 'Mderot ee kwe'],
+    'weekdays_short' => ['Are', 'Kun', 'Ong', 'Ine', 'Ile', 'Sap', 'Kwe'],
+    'weekdays_min' => ['Are', 'Kun', 'Ong', 'Ine', 'Ile', 'Sap', 'Kwe'],
+    'months' => ['Lapa le obo', 'Lapa le waare', 'Lapa le okuni', 'Lapa le ong’wan', 'Lapa le imet', 'Lapa le ile', 'Lapa le sapa', 'Lapa le isiet', 'Lapa le saal', 'Lapa le tomon', 'Lapa le tomon obo', 'Lapa le tomon waare'],
+    'months_short' => ['Obo', 'Waa', 'Oku', 'Ong', 'Ime', 'Ile', 'Sap', 'Isi', 'Saa', 'Tom', 'Tob', 'Tow'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat.php
new file mode 100644
index 0000000..c9914c6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sat_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat_IN.php
new file mode 100644
index 0000000..632b1af
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sat_IN.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat Pune    libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रेल', 'मई', 'जुन', 'जुलाई', 'अगस्त', 'सितम्बर', 'अखथबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रेल', 'मई', 'जुन', 'जुलाई', 'अगस्त', 'सितम्बर', 'अखथबर', 'नवम्बर', 'दिसम्बर'],
+    'weekdays' => ['सिंगेमाँहाँ', 'ओतेमाँहाँ', 'बालेमाँहाँ', 'सागुनमाँहाँ', 'सारदीमाँहाँ', 'जारुममाँहाँ', 'ञुहुममाँहाँ'],
+    'weekdays_short' => ['सिंगे', 'ओते', 'बाले', 'सागुन', 'सारदी', 'जारुम', 'ञुहुम'],
+    'weekdays_min' => ['सिंगे', 'ओते', 'बाले', 'सागुन', 'सारदी', 'जारुम', 'ञुहुम'],
+    'day_of_first_week_of_year' => 1,
+
+    'month' => ':count ńindạ cando', // less reliable
+    'm' => ':count ńindạ cando', // less reliable
+    'a_month' => ':count ńindạ cando', // less reliable
+
+    'week' => ':count mãhã', // less reliable
+    'w' => ':count mãhã', // less reliable
+    'a_week' => ':count mãhã', // less reliable
+
+    'hour' => ':count ᱥᱳᱱᱚ', // less reliable
+    'h' => ':count ᱥᱳᱱᱚ', // less reliable
+    'a_hour' => ':count ᱥᱳᱱᱚ', // less reliable
+
+    'minute' => ':count ᱯᱤᱞᱪᱩ', // less reliable
+    'min' => ':count ᱯᱤᱞᱪᱩ', // less reliable
+    'a_minute' => ':count ᱯᱤᱞᱪᱩ', // less reliable
+
+    'second' => ':count ar', // less reliable
+    's' => ':count ar', // less reliable
+    'a_second' => ':count ar', // less reliable
+
+    'year' => ':count ne̲s',
+    'y' => ':count ne̲s',
+    'a_year' => ':count ne̲s',
+
+    'day' => ':count ᱫᱤᱱ',
+    'd' => ':count ᱫᱤᱱ',
+    'a_day' => ':count ᱫᱤᱱ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sbp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sbp.php
new file mode 100644
index 0000000..9b73783
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sbp.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Lwamilawu', 'Pashamihe'],
+    'weekdays' => ['Mulungu', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alahamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Mul', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Mul', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Mupalangulwa', 'Mwitope', 'Mushende', 'Munyi', 'Mushende Magali', 'Mujimbi', 'Mushipepo', 'Mupuguto', 'Munyense', 'Mokhu', 'Musongandembwe', 'Muhaano'],
+    'months_short' => ['Mup', 'Mwi', 'Msh', 'Mun', 'Mag', 'Muj', 'Msp', 'Mpg', 'Mye', 'Mok', 'Mus', 'Muh'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc.php
new file mode 100644
index 0000000..7178cf4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sc_IT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc_IT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc_IT.php
new file mode 100644
index 0000000..5d1e4ce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sc_IT.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Sardinian Translators Team Massimeddu Cireddu massimeddu@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD. MM. YY',
+    ],
+    'months' => ['Ghennàrgiu', 'Freàrgiu', 'Martzu', 'Abrile', 'Maju', 'Làmpadas', 'Argiolas//Trìulas', 'Austu', 'Cabudanni', 'Santugaine//Ladàmine', 'Onniasantu//Santandria', 'Nadale//Idas'],
+    'months_short' => ['Ghe', 'Fre', 'Mar', 'Abr', 'Maj', 'Làm', 'Arg', 'Aus', 'Cab', 'Lad', 'Onn', 'Nad'],
+    'weekdays' => ['Domìnigu', 'Lunis', 'Martis', 'Mèrcuris', 'Giòbia', 'Chenàbura', 'Sàbadu'],
+    'weekdays_short' => ['Dom', 'Lun', 'Mar', 'Mèr', 'Giò', 'Che', 'Sàb'],
+    'weekdays_min' => ['Dom', 'Lun', 'Mar', 'Mèr', 'Giò', 'Che', 'Sàb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'minute' => ':count mementu', // less reliable
+    'min' => ':count mementu', // less reliable
+    'a_minute' => ':count mementu', // less reliable
+
+    'year' => ':count annu',
+    'y' => ':count annu',
+    'a_year' => ':count annu',
+
+    'month' => ':count mese',
+    'm' => ':count mese',
+    'a_month' => ':count mese',
+
+    'week' => ':count chida',
+    'w' => ':count chida',
+    'a_week' => ':count chida',
+
+    'day' => ':count dí',
+    'd' => ':count dí',
+    'a_day' => ':count dí',
+
+    'hour' => ':count ora',
+    'h' => ':count ora',
+    'a_hour' => ':count ora',
+
+    'second' => ':count secundu',
+    's' => ':count secundu',
+    'a_second' => ':count secundu',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd.php
new file mode 100644
index 0000000..ad8c000
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd.php
@@ -0,0 +1,80 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+$months = [
+    'جنوري',
+    'فيبروري',
+    'مارچ',
+    'اپريل',
+    'مئي',
+    'جون',
+    'جولاءِ',
+    'آگسٽ',
+    'سيپٽمبر',
+    'آڪٽوبر',
+    'نومبر',
+    'ڊسمبر',
+];
+
+$weekdays = [
+    'آچر',
+    'سومر',
+    'اڱارو',
+    'اربع',
+    'خميس',
+    'جمع',
+    'ڇنڇر',
+];
+
+/*
+ * Authors:
+ * - Narain Sagar
+ * - Sawood Alam
+ * - Narain Sagar
+ */
+return [
+    'year' => '{1}'.'هڪ سال'.'|:count '.'سال',
+    'month' => '{1}'.'هڪ مهينو'.'|:count '.'مهينا',
+    'week' => '{1}'.'ھڪ ھفتو'.'|:count '.'هفتا',
+    'day' => '{1}'.'هڪ ڏينهن'.'|:count '.'ڏينهن',
+    'hour' => '{1}'.'هڪ ڪلاڪ'.'|:count '.'ڪلاڪ',
+    'minute' => '{1}'.'هڪ منٽ'.'|:count '.'منٽ',
+    'second' => '{1}'.'چند سيڪنڊ'.'|:count '.'سيڪنڊ',
+    'ago' => ':time اڳ',
+    'from_now' => ':time پوء',
+    'diff_yesterday' => 'ڪالهه',
+    'diff_today' => 'اڄ',
+    'diff_tomorrow' => 'سڀاڻي',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd، D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[اڄ] LT',
+        'nextDay' => '[سڀاڻي] LT',
+        'nextWeek' => 'dddd [اڳين هفتي تي] LT',
+        'lastDay' => '[ڪالهه] LT',
+        'lastWeek' => '[گزريل هفتي] dddd [تي] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['صبح', 'شام'],
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => $weekdays,
+    'weekdays_short' => $weekdays,
+    'weekdays_min' => $weekdays,
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => ['، ', ' ۽ '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN.php
new file mode 100644
index 0000000..de1dad0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/sd.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['جنوري', 'فبروري', 'مارچ', 'اپريل', 'مي', 'جون', 'جولاءِ', 'آگسٽ', 'سيپٽيمبر', 'آڪٽوبر', 'نومبر', 'ڊسمبر'],
+    'months_short' => ['جنوري', 'فبروري', 'مارچ', 'اپريل', 'مي', 'جون', 'جولاءِ', 'آگسٽ', 'سيپٽيمبر', 'آڪٽوبر', 'نومبر', 'ڊسمبر'],
+    'weekdays' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
+    'weekdays_short' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
+    'weekdays_min' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN@devanagari.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN@devanagari.php
new file mode 100644
index 0000000..061fcc1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sd_IN@devanagari.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/sd.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['जनवरी', 'फबरवरी', 'मार्चि', 'अप्रेल', 'मे', 'जूनि', 'जूलाइ', 'आगस्टु', 'सेप्टेंबरू', 'आक्टूबरू', 'नवंबरू', 'ॾिसंबरू'],
+    'months_short' => ['जनवरी', 'फबरवरी', 'मार्चि', 'अप्रेल', 'मे', 'जूनि', 'जूलाइ', 'आगस्टु', 'सेप्टेंबरू', 'आक्टूबरू', 'नवंबरू', 'ॾिसंबरू'],
+    'weekdays' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
+    'weekdays_short' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
+    'weekdays_min' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['म.पू.', 'म.नं.'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se.php
new file mode 100644
index 0000000..7c4b92a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se.php
@@ -0,0 +1,73 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Karamell
+ */
+return [
+    'year' => '{1}:count jahki|:count jagit',
+    'a_year' => '{1}okta jahki|:count jagit',
+    'y' => ':count j.',
+    'month' => '{1}:count mánnu|:count mánut',
+    'a_month' => '{1}okta mánnu|:count mánut',
+    'm' => ':count mán.',
+    'week' => '{1}:count vahkku|:count vahkku',
+    'a_week' => '{1}okta vahkku|:count vahkku',
+    'w' => ':count v.',
+    'day' => '{1}:count beaivi|:count beaivvit',
+    'a_day' => '{1}okta beaivi|:count beaivvit',
+    'd' => ':count b.',
+    'hour' => '{1}:count diimmu|:count diimmut',
+    'a_hour' => '{1}okta diimmu|:count diimmut',
+    'h' => ':count d.',
+    'minute' => '{1}:count minuhta|:count minuhtat',
+    'a_minute' => '{1}okta minuhta|:count minuhtat',
+    'min' => ':count min.',
+    'second' => '{1}:count sekunddat|:count sekunddat',
+    'a_second' => '{1}moadde sekunddat|:count sekunddat',
+    's' => ':count s.',
+    'ago' => 'maŋit :time',
+    'from_now' => ':time geažes',
+    'diff_yesterday' => 'ikte',
+    'diff_yesterday_regexp' => 'ikte(?:\\s+ti)?',
+    'diff_today' => 'otne',
+    'diff_today_regexp' => 'otne(?:\\s+ti)?',
+    'diff_tomorrow' => 'ihttin',
+    'diff_tomorrow_regexp' => 'ihttin(?:\\s+ti)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'MMMM D. [b.] YYYY',
+        'LLL' => 'MMMM D. [b.] YYYY [ti.] HH:mm',
+        'LLLL' => 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[otne ti] LT',
+        'nextDay' => '[ihttin ti] LT',
+        'nextWeek' => 'dddd [ti] LT',
+        'lastDay' => '[ikte ti] LT',
+        'lastWeek' => '[ovddit] dddd [ti] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['ođđajagemánnu', 'guovvamánnu', 'njukčamánnu', 'cuoŋománnu', 'miessemánnu', 'geassemánnu', 'suoidnemánnu', 'borgemánnu', 'čakčamánnu', 'golggotmánnu', 'skábmamánnu', 'juovlamánnu'],
+    'months_short' => ['ođđj', 'guov', 'njuk', 'cuo', 'mies', 'geas', 'suoi', 'borg', 'čakč', 'golg', 'skáb', 'juov'],
+    'weekdays' => ['sotnabeaivi', 'vuossárga', 'maŋŋebárga', 'gaskavahkku', 'duorastat', 'bearjadat', 'lávvardat'],
+    'weekdays_short' => ['sotn', 'vuos', 'maŋ', 'gask', 'duor', 'bear', 'láv'],
+    'weekdays_min' => ['s', 'v', 'm', 'g', 'd', 'b', 'L'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' ja '],
+    'meridiem' => ['i.b.', 'e.b.'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_FI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_FI.php
new file mode 100644
index 0000000..b2b967e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_FI.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/se.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'months' => ['ođđajagemánnu', 'guovvamánnu', 'njukčamánnu', 'cuoŋománnu', 'miessemánnu', 'geassemánnu', 'suoidnemánnu', 'borgemánnu', 'čakčamánnu', 'golggotmánnu', 'skábmamánnu', 'juovlamánnu'],
+    'months_short' => ['ođđj', 'guov', 'njuk', 'cuoŋ', 'mies', 'geas', 'suoi', 'borg', 'čakč', 'golg', 'skáb', 'juov'],
+    'weekdays' => ['sotnabeaivi', 'mánnodat', 'disdat', 'gaskavahkku', 'duorastat', 'bearjadat', 'lávvordat'],
+    'weekdays_short' => ['so', 'má', 'di', 'ga', 'du', 'be', 'lá'],
+    'weekdays_min' => ['so', 'má', 'di', 'ga', 'du', 'be', 'lá'],
+    'meridiem' => ['i', 'e'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_NO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_NO.php
new file mode 100644
index 0000000..83bbf78
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_NO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/se.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_SE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_SE.php
new file mode 100644
index 0000000..83bbf78
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/se_SE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/se.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/seh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/seh.php
new file mode 100644
index 0000000..3ad889a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/seh.php
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['Dimingu', 'Chiposi', 'Chipiri', 'Chitatu', 'Chinai', 'Chishanu', 'Sabudu'],
+    'weekdays_short' => ['Dim', 'Pos', 'Pir', 'Tat', 'Nai', 'Sha', 'Sab'],
+    'weekdays_min' => ['Dim', 'Pos', 'Pir', 'Tat', 'Nai', 'Sha', 'Sab'],
+    'months' => ['Janeiro', 'Fevreiro', 'Marco', 'Abril', 'Maio', 'Junho', 'Julho', 'Augusto', 'Setembro', 'Otubro', 'Novembro', 'Decembro'],
+    'months_short' => ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Aug', 'Set', 'Otu', 'Nov', 'Dec'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'd [de] MMM [de] YYYY',
+        'LLL' => 'd [de] MMMM [de] YYYY HH:mm',
+        'LLLL' => 'dddd, d [de] MMMM [de] YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ses.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ses.php
new file mode 100644
index 0000000..9355184
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ses.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Adduha', 'Aluula'],
+    'weekdays' => ['Alhadi', 'Atinni', 'Atalaata', 'Alarba', 'Alhamiisa', 'Alzuma', 'Asibti'],
+    'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
+    'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
+    'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
+    'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'month' => ':count alaada', // less reliable
+    'm' => ':count alaada', // less reliable
+    'a_month' => ':count alaada', // less reliable
+
+    'hour' => ':count ɲaajin', // less reliable
+    'h' => ':count ɲaajin', // less reliable
+    'a_hour' => ':count ɲaajin', // less reliable
+
+    'minute' => ':count zarbu', // less reliable
+    'min' => ':count zarbu', // less reliable
+    'a_minute' => ':count zarbu', // less reliable
+
+    'year' => ':count jiiri',
+    'y' => ':count jiiri',
+    'a_year' => ':count jiiri',
+
+    'week' => ':count jirbiiyye',
+    'w' => ':count jirbiiyye',
+    'a_week' => ':count jirbiiyye',
+
+    'day' => ':count zaari',
+    'd' => ':count zaari',
+    'a_day' => ':count zaari',
+
+    'second' => ':count ihinkante',
+    's' => ':count ihinkante',
+    'a_second' => ':count ihinkante',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sg.php
new file mode 100644
index 0000000..7f8e9da
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sg.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ND', 'LK'],
+    'weekdays' => ['Bikua-ôko', 'Bïkua-ûse', 'Bïkua-ptâ', 'Bïkua-usïö', 'Bïkua-okü', 'Lâpôsö', 'Lâyenga'],
+    'weekdays_short' => ['Bk1', 'Bk2', 'Bk3', 'Bk4', 'Bk5', 'Lâp', 'Lây'],
+    'weekdays_min' => ['Bk1', 'Bk2', 'Bk3', 'Bk4', 'Bk5', 'Lâp', 'Lây'],
+    'months' => ['Nyenye', 'Fulundïgi', 'Mbängü', 'Ngubùe', 'Bêläwü', 'Föndo', 'Lengua', 'Kükürü', 'Mvuka', 'Ngberere', 'Nabändüru', 'Kakauka'],
+    'months_short' => ['Nye', 'Ful', 'Mbä', 'Ngu', 'Bêl', 'Fön', 'Len', 'Kük', 'Mvu', 'Ngb', 'Nab', 'Kak'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count dā', // less reliable
+    'y' => ':count dā', // less reliable
+    'a_year' => ':count dā', // less reliable
+
+    'week' => ':count bïkua-okü', // less reliable
+    'w' => ':count bïkua-okü', // less reliable
+    'a_week' => ':count bïkua-okü', // less reliable
+
+    'day' => ':count ziggawâ', // less reliable
+    'd' => ':count ziggawâ', // less reliable
+    'a_day' => ':count ziggawâ', // less reliable
+
+    'hour' => ':count yângâködörö', // less reliable
+    'h' => ':count yângâködörö', // less reliable
+    'a_hour' => ':count yângâködörö', // less reliable
+
+    'second' => ':count bïkua-ôko', // less reliable
+    's' => ':count bïkua-ôko', // less reliable
+    'a_second' => ':count bïkua-ôko', // less reliable
+
+    'month' => ':count Nze tî ngu',
+    'm' => ':count Nze tî ngu',
+    'a_month' => ':count Nze tî ngu',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs.php
new file mode 100644
index 0000000..864b989
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sgs_LT.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs_LT.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs_LT.php
new file mode 100644
index 0000000..aa9e942
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sgs_LT.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Arnas Udovičius bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY.MM.DD',
+    ],
+    'months' => ['sausė', 'vasarė', 'kuova', 'balondė', 'gegožės', 'bėrželė', 'lëpas', 'rogpjūtė', 'siejės', 'spalė', 'lapkrėstė', 'grůdė'],
+    'months_short' => ['Sau', 'Vas', 'Kuo', 'Bal', 'Geg', 'Bėr', 'Lëp', 'Rgp', 'Sie', 'Spa', 'Lap', 'Grd'],
+    'weekdays' => ['nedielės dëna', 'panedielis', 'oterninks', 'sereda', 'četvergs', 'petnīčė', 'sobata'],
+    'weekdays_short' => ['Nd', 'Pn', 'Ot', 'Sr', 'Čt', 'Pt', 'Sb'],
+    'weekdays_min' => ['Nd', 'Pn', 'Ot', 'Sr', 'Čt', 'Pt', 'Sb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'minute' => ':count mažos', // less reliable
+    'min' => ':count mažos', // less reliable
+    'a_minute' => ':count mažos', // less reliable
+
+    'year' => ':count metā',
+    'y' => ':count metā',
+    'a_year' => ':count metā',
+
+    'month' => ':count mienou',
+    'm' => ':count mienou',
+    'a_month' => ':count mienou',
+
+    'week' => ':count nedielė',
+    'w' => ':count nedielė',
+    'a_week' => ':count nedielė',
+
+    'day' => ':count dīna',
+    'd' => ':count dīna',
+    'a_day' => ':count dīna',
+
+    'hour' => ':count adīna',
+    'h' => ':count adīna',
+    'a_hour' => ':count adīna',
+
+    'second' => ':count Sekondė',
+    's' => ':count Sekondė',
+    'a_second' => ':count Sekondė',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sh.php
new file mode 100644
index 0000000..a953df4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sh.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+// @codeCoverageIgnoreStart
+if (class_exists('Symfony\\Component\\Translation\\PluralizationRules')) {
+    \Symfony\Component\Translation\PluralizationRules::set(function ($number) {
+        return (($number % 10 == 1) && ($number % 100 != 11)) ? 0 : ((($number % 10 >= 2) && ($number % 10 <= 4) && (($number % 100 < 10) || ($number % 100 >= 20))) ? 1 : 2);
+    }, 'sh');
+}
+// @codeCoverageIgnoreEnd
+
+/*
+ * Authors:
+ * - Томица Кораћ
+ * - Enrique Vidal
+ * - Christopher Dell
+ * - dmilisic
+ * - danijel
+ * - Miroslav Matkovic (mikki021)
+ */
+return [
+    'diff_now' => 'sada',
+    'diff_yesterday' => 'juče',
+    'diff_tomorrow' => 'sutra',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'MMMM D, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'year' => ':count godina|:count godine|:count godina',
+    'y' => ':count g.',
+    'month' => ':count mesec|:count meseca|:count meseci',
+    'm' => ':count m.',
+    'week' => ':count nedelja|:count nedelje|:count nedelja',
+    'w' => ':count n.',
+    'day' => ':count dan|:count dana|:count dana',
+    'd' => ':count d.',
+    'hour' => ':count sat|:count sata|:count sati',
+    'h' => ':count č.',
+    'minute' => ':count minut|:count minuta|:count minuta',
+    'min' => ':count min.',
+    'second' => ':count sekund|:count sekunde|:count sekundi',
+    's' => ':count s.',
+    'ago' => 'pre :time',
+    'from_now' => 'za :time',
+    'after' => 'nakon :time',
+    'before' => ':time raniјe',
+    'weekdays' => ['Nedelja', 'Ponedeljak', 'Utorak', 'Sreda', 'Četvrtak', 'Petak', 'Subota'],
+    'weekdays_short' => ['Ned', 'Pon', 'Uto', 'Sre', 'Čet', 'Pet', 'Sub'],
+    'weekdays_min' => ['Ned', 'Pon', 'Uto', 'Sre', 'Čet', 'Pet', 'Sub'],
+    'months' => ['Januar', 'Februar', 'Mart', 'April', 'Maj', 'Jun', 'Jul', 'Avgust', 'Septembar', 'Oktobar', 'Novembar', 'Decembar'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Avg', 'Sep', 'Okt', 'Nov', 'Dec'],
+    'list' => [', ', ' i '],
+    'meridiem' => ['pre podne', 'po podne'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi.php
new file mode 100644
index 0000000..ee5aa0b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ⵜⵉⴼⴰⵡⵜ', 'ⵜⴰⴷⴳⴳⵯⴰⵜ'],
+    'weekdays' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵕⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
+    'weekdays_short' => ['ⴰⵙⴰ', 'ⴰⵢⵏ', 'ⴰⵙⵉ', 'ⴰⴽⵕ', 'ⴰⴽⵡ', 'ⴰⵙⵉⵎ', 'ⴰⵙⵉⴹ'],
+    'weekdays_min' => ['ⴰⵙⴰ', 'ⴰⵢⵏ', 'ⴰⵙⵉ', 'ⴰⴽⵕ', 'ⴰⴽⵡ', 'ⴰⵙⵉⵎ', 'ⴰⵙⵉⴹ'],
+    'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵜⵓⴱⵔ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⴰⵏⴱⵉⵔ'],
+    'months_short' => ['ⵉⵏⵏ', 'ⴱⵕⴰ', 'ⵎⴰⵕ', 'ⵉⴱⵔ', 'ⵎⴰⵢ', 'ⵢⵓⵏ', 'ⵢⵓⵍ', 'ⵖⵓⵛ', 'ⵛⵓⵜ', 'ⴽⵜⵓ', 'ⵏⵓⵡ', 'ⴷⵓⵊ'],
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'year' => ':count aseggwas',
+    'y' => ':count aseggwas',
+    'a_year' => ':count aseggwas',
+
+    'month' => ':count ayyur',
+    'm' => ':count ayyur',
+    'a_month' => ':count ayyur',
+
+    'week' => ':count imalass',
+    'w' => ':count imalass',
+    'a_week' => ':count imalass',
+
+    'day' => ':count ass',
+    'd' => ':count ass',
+    'a_day' => ':count ass',
+
+    'hour' => ':count urɣ', // less reliable
+    'h' => ':count urɣ', // less reliable
+    'a_hour' => ':count urɣ', // less reliable
+
+    'minute' => ':count ⴰⵎⵥⵉ', // less reliable
+    'min' => ':count ⴰⵎⵥⵉ', // less reliable
+    'a_minute' => ':count ⴰⵎⵥⵉ', // less reliable
+
+    'second' => ':count sin', // less reliable
+    's' => ':count sin', // less reliable
+    'a_second' => ':count sin', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Latn.php
new file mode 100644
index 0000000..a5580c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Latn.php
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/shi.php', [
+    'meridiem' => ['tifawt', 'tadggʷat'],
+    'weekdays' => ['asamas', 'aynas', 'asinas', 'akṛas', 'akwas', 'asimwas', 'asiḍyas'],
+    'weekdays_short' => ['asa', 'ayn', 'asi', 'akṛ', 'akw', 'asim', 'asiḍ'],
+    'weekdays_min' => ['asa', 'ayn', 'asi', 'akṛ', 'akw', 'asim', 'asiḍ'],
+    'months' => ['innayr', 'bṛayṛ', 'maṛṣ', 'ibrir', 'mayyu', 'yunyu', 'yulyuz', 'ɣuct', 'cutanbir', 'ktubr', 'nuwanbir', 'dujanbir'],
+    'months_short' => ['inn', 'bṛa', 'maṛ', 'ibr', 'may', 'yun', 'yul', 'ɣuc', 'cut', 'ktu', 'nuw', 'duj'],
+    'first_day_of_week' => 6,
+    'weekend' => [5, 6],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+
+    'minute' => ':count agur', // less reliable
+    'min' => ':count agur', // less reliable
+    'a_minute' => ':count agur', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Tfng.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Tfng.php
new file mode 100644
index 0000000..e51ed13
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shi_Tfng.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/shi.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn.php
new file mode 100644
index 0000000..fe7b1ea
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/shn_MM.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn_MM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn_MM.php
new file mode 100644
index 0000000..f399acf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shn_MM.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - ubuntu Myanmar LoCo Team https://ubuntu-mm.net Bone Pyae Sone bone.burma@mail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'OY MMM OD dddd',
+    ],
+    'months' => ['လိူၼ်ၵမ်', 'လိူၼ်သၢမ်', 'လိူၼ်သီ', 'လိူၼ်ႁႃႈ', 'လိူၼ်ႁူၵ်း', 'လိူၼ်ၸဵတ်း', 'လိူၼ်ပႅတ်ႇ', 'လိူၼ်ၵဝ်ႈ', 'လိူၼ်သိပ်း', 'လိူၼ်သိပ်းဢိတ်း', 'လိူၼ်သိပ်းဢိတ်းသွင်', 'လိူၼ်ၸဵင်'],
+    'months_short' => ['လိူၼ်ၵမ်', 'လိူၼ်သၢမ်', 'လိူၼ်သီ', 'လိူၼ်ႁႃႈ', 'လိူၼ်ႁူၵ်း', 'လိူၼ်ၸဵတ်း', 'လိူၼ်ပႅတ်ႇ', 'လိူၼ်ၵဝ်ႈ', 'လိူၼ်သိပ်း', 'လိူၼ်သိပ်းဢိတ်း', 'လိူၼ်သိပ်းဢိတ်းသွင်', 'လိူၼ်ၸဵင်'],
+    'weekdays' => ['ဝၼ်းဢႃးတိတ်ႉ', 'ဝၼ်းၸၼ်', 'ဝၼ်း​ဢၢင်း​ၵၢၼ်း', 'ဝၼ်းပူတ်ႉ', 'ဝၼ်းၽတ်း', 'ဝၼ်းသုၵ်း', 'ဝၼ်းသဝ်'],
+    'weekdays_short' => ['တိတ့်', 'ၸၼ်', 'ၵၢၼ်း', 'ပုတ့်', 'ၽတ်း', 'သုၵ်း', 'သဝ်'],
+    'weekdays_min' => ['တိတ့်', 'ၸၼ်', 'ၵၢၼ်း', 'ပုတ့်', 'ၽတ်း', 'သုၵ်း', 'သဝ်'],
+    'alt_numbers' => ['႐႐', '႐႑', '႐႒', '႐႓', '႐႔', '႐႕', '႐႖', '႐႗', '႐႘', '႐႙', '႑႐', '႑႑', '႑႒', '႑႓', '႑႔', '႑႕', '႑႖', '႑႗', '႑႘', '႑႙', '႒႐', '႒႑', '႒႒', '႒႓', '႒႔', '႒႕', '႒႖', '႒႗', '႒႘', '႒႙', '႓႐', '႓႑', '႓႒', '႓႓', '႓႔', '႓႕', '႓႖', '႓႗', '႓႘', '႓႙', '႔႐', '႔႑', '႔႒', '႔႓', '႔႔', '႔႕', '႔႖', '႔႗', '႔႘', '႔႙', '႕႐', '႕႑', '႕႒', '႕႓', '႕႔', '႕႕', '႕႖', '႕႗', '႕႘', '႕႙', '႖႐', '႖႑', '႖႒', '႖႓', '႖႔', '႖႕', '႖႖', '႖႗', '႖႘', '႖႙', '႗႐', '႗႑', '႗႒', '႗႓', '႗႔', '႗႕', '႗႖', '႗႗', '႗႘', '႗႙', '႘႐', '႘႑', '႘႒', '႘႓', '႘႔', '႘႕', '႘႖', '႘႗', '႘႘', '႘႙', '႙႐', '႙႑', '႙႒', '႙႓', '႙႔', '႙႕', '႙႖', '႙႗', '႙႘', '႙႙'],
+    'meridiem' => ['ၵၢင်ၼႂ်', 'တၢမ်းၶမ်ႈ'],
+
+    'month' => ':count လိူၼ်', // less reliable
+    'm' => ':count လိူၼ်', // less reliable
+    'a_month' => ':count လိူၼ်', // less reliable
+
+    'week' => ':count ဝၼ်း', // less reliable
+    'w' => ':count ဝၼ်း', // less reliable
+    'a_week' => ':count ဝၼ်း', // less reliable
+
+    'hour' => ':count ຕີ', // less reliable
+    'h' => ':count ຕີ', // less reliable
+    'a_hour' => ':count ຕີ', // less reliable
+
+    'minute' => ':count ເດັກ', // less reliable
+    'min' => ':count ເດັກ', // less reliable
+    'a_minute' => ':count ເດັກ', // less reliable
+
+    'second' => ':count ဢိုၼ်ႇ', // less reliable
+    's' => ':count ဢိုၼ်ႇ', // less reliable
+    'a_second' => ':count ဢိုၼ်ႇ', // less reliable
+
+    'year' => ':count ပီ',
+    'y' => ':count ပီ',
+    'a_year' => ':count ပီ',
+
+    'day' => ':count ກາງວັນ',
+    'd' => ':count ກາງວັນ',
+    'a_day' => ':count ກາງວັນ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs.php
new file mode 100644
index 0000000..8d2e1d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/shs_CA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs_CA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs_CA.php
new file mode 100644
index 0000000..08d385e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/shs_CA.php
@@ -0,0 +1,38 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Neskie Manuel    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Pellkwet̓min', 'Pelctsipwen̓ten', 'Pellsqépts', 'Peslléwten', 'Pell7ell7é7llqten', 'Pelltspéntsk', 'Pelltqwelq̓wél̓t', 'Pellct̓éxel̓cten', 'Pesqelqlélten', 'Pesllwélsten', 'Pellc7ell7é7llcwten̓', 'Pelltetétq̓em'],
+    'months_short' => ['Kwe', 'Tsi', 'Sqe', 'Éwt', 'Ell', 'Tsp', 'Tqw', 'Ct̓é', 'Qel', 'Wél', 'U7l', 'Tet'],
+    'weekdays' => ['Sxetspesq̓t', 'Spetkesq̓t', 'Selesq̓t', 'Skellesq̓t', 'Smesesq̓t', 'Stselkstesq̓t', 'Stqmekstesq̓t'],
+    'weekdays_short' => ['Sxe', 'Spe', 'Sel', 'Ske', 'Sme', 'Sts', 'Stq'],
+    'weekdays_min' => ['Sxe', 'Spe', 'Sel', 'Ske', 'Sme', 'Sts', 'Stq'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count sqlélten', // less reliable
+    'y' => ':count sqlélten', // less reliable
+    'a_year' => ':count sqlélten', // less reliable
+
+    'month' => ':count swewll', // less reliable
+    'm' => ':count swewll', // less reliable
+    'a_month' => ':count swewll', // less reliable
+
+    'hour' => ':count seqwlút', // less reliable
+    'h' => ':count seqwlút', // less reliable
+    'a_hour' => ':count seqwlút', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si.php
new file mode 100644
index 0000000..289d4d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si.php
@@ -0,0 +1,78 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - Malinda Weerasinghe (MalindaWMD)
+ */
+return [
+    'year' => '{1}වසර 1|වසර :count',
+    'a_year' => '{1}වසරක්|වසර :count',
+    'month' => '{1}මාස 1|මාස :count',
+    'a_month' => '{1}මාසය|මාස :count',
+    'week' => '{1}සති 1|සති :count',
+    'a_week' => '{1}සතියක්|සති :count',
+    'day' => '{1}දින 1|දින :count',
+    'a_day' => '{1}දිනක්|දින :count',
+    'hour' => '{1}පැය 1|පැය :count',
+    'a_hour' => '{1}පැයක්|පැය :count',
+    'minute' => '{1}මිනිත්තු 1|මිනිත්තු :count',
+    'a_minute' => '{1}මිනිත්තුවක්|මිනිත්තු :count',
+    'second' => '{1}තත්පර 1|තත්පර :count',
+    'a_second' => '{1}තත්පර කිහිපයකට|තත්පර :count',
+    'ago' => ':time කට පෙර',
+    'from_now' => function ($time) {
+        if (preg_match('/දින \d+/', $time)) {
+            return $time.' න්';
+        }
+
+        return $time.' කින්';
+    },
+    'before' => ':time කට පෙර',
+    'after' => function ($time) {
+        if (preg_match('/දින \d+/', $time)) {
+            return $time.' න්';
+        }
+
+        return $time.' කින්';
+    },
+    'diff_now' => 'දැන්',
+    'diff_today' => 'අද',
+    'diff_yesterday' => 'ඊයේ',
+    'diff_tomorrow' => 'හෙට',
+    'formats' => [
+        'LT' => 'a h:mm',
+        'LTS' => 'a h:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY MMMM D',
+        'LLL' => 'YYYY MMMM D, a h:mm',
+        'LLLL' => 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',
+    ],
+    'calendar' => [
+        'sameDay' => '[අද] LT[ට]',
+        'nextDay' => '[හෙට] LT[ට]',
+        'nextWeek' => 'dddd LT[ට]',
+        'lastDay' => '[ඊයේ] LT[ට]',
+        'lastWeek' => '[පසුගිය] dddd LT[ට]',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number වැනි',
+    'meridiem' => ['පෙර වරු', 'පස් වරු', 'පෙ.ව.', 'ප.ව.'],
+    'months' => ['ජනවාරි', 'පෙබරවාරි', 'මාර්තු', 'අප්‍රේල්', 'මැයි', 'ජූනි', 'ජූලි', 'අගෝස්තු', 'සැප්තැම්බර්', 'ඔක්තෝබර්', 'නොවැම්බර්', 'දෙසැම්බර්'],
+    'months_short' => ['ජන', 'පෙබ', 'මාර්', 'අප්', 'මැයි', 'ජූනි', 'ජූලි', 'අගෝ', 'සැප්', 'ඔක්', 'නොවැ', 'දෙසැ'],
+    'weekdays' => ['ඉරිදා', 'සඳුදා', 'අඟහරුවාදා', 'බදාදා', 'බ්‍රහස්පතින්දා', 'සිකුරාදා', 'සෙනසුරාදා'],
+    'weekdays_short' => ['ඉරි', 'සඳු', 'අඟ', 'බදා', 'බ්‍රහ', 'සිකු', 'සෙන'],
+    'weekdays_min' => ['ඉ', 'ස', 'අ', 'බ', 'බ්‍ර', 'සි', 'සෙ'],
+    'first_day_of_week' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si_LK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si_LK.php
new file mode 100644
index 0000000..6c5be97
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/si_LK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/si.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid.php
new file mode 100644
index 0000000..b1c6521
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sid_ET.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid_ET.php
new file mode 100644
index 0000000..1296f9b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sid_ET.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+    'weekdays' => ['Sambata', 'Sanyo', 'Maakisanyo', 'Roowe', 'Hamuse', 'Arbe', 'Qidaame'],
+    'weekdays_short' => ['Sam', 'San', 'Mak', 'Row', 'Ham', 'Arb', 'Qid'],
+    'weekdays_min' => ['Sam', 'San', 'Mak', 'Row', 'Ham', 'Arb', 'Qid'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['soodo', 'hawwaro'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk.php
new file mode 100644
index 0000000..fd0f6b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk.php
@@ -0,0 +1,81 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Martin Suja
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - Ivan Stana
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - James McKinney
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Jozef Fulop
+ * - Nicolás Hock Isaza
+ * - Tom Hughes
+ * - Simon Hürlimann (CyT)
+ * - jofi
+ * - Jakub ADAMEC
+ * - Marek Adamický
+ */
+return [
+    'year' => 'rok|:count roky|:count rokov',
+    'y' => ':count r',
+    'month' => 'mesiac|:count mesiace|:count mesiacov',
+    'm' => ':count m',
+    'week' => 'týždeň|:count týždne|:count týždňov',
+    'w' => ':count t',
+    'day' => 'deň|:count dni|:count dní',
+    'd' => ':count d',
+    'hour' => 'hodinu|:count hodiny|:count hodín',
+    'h' => ':count h',
+    'minute' => 'minútu|:count minúty|:count minút',
+    'min' => ':count min',
+    'second' => 'sekundu|:count sekundy|:count sekúnd',
+    's' => ':count s',
+    'ago' => 'pred :time',
+    'from_now' => 'za :time',
+    'after' => 'o :time neskôr',
+    'before' => ':time predtým',
+    'year_ago' => 'rokom|:count rokmi|:count rokmi',
+    'month_ago' => 'mesiacom|:count mesiacmi|:count mesiacmi',
+    'week_ago' => 'týždňom|:count týždňami|:count týždňami',
+    'day_ago' => 'dňom|:count dňami|:count dňami',
+    'hour_ago' => 'hodinou|:count hodinami|:count hodinami',
+    'minute_ago' => 'minútou|:count minútami|:count minútami',
+    'second_ago' => 'sekundou|:count sekundami|:count sekundami',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' a '],
+    'diff_now' => 'teraz',
+    'diff_yesterday' => 'včera',
+    'diff_tomorrow' => 'zajtra',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'DD. MMMM YYYY',
+        'LLL' => 'D. M. HH:mm',
+        'LLLL' => 'dddd D. MMMM YYYY HH:mm',
+    ],
+    'weekdays' => ['nedeľa', 'pondelok', 'utorok', 'streda', 'štvrtok', 'piatok', 'sobota'],
+    'weekdays_short' => ['ne', 'po', 'ut', 'st', 'št', 'pi', 'so'],
+    'weekdays_min' => ['ne', 'po', 'ut', 'st', 'št', 'pi', 'so'],
+    'months' => ['január', 'február', 'marec', 'apríl', 'máj', 'jún', 'júl', 'august', 'september', 'október', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'máj', 'jún', 'júl', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'meridiem' => ['dopoludnia', 'popoludní'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk_SK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk_SK.php
new file mode 100644
index 0000000..be3d1f2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sk_SK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sk.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl.php
new file mode 100644
index 0000000..56d0f1b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl.php
@@ -0,0 +1,126 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Nicolás Hock Isaza
+ * - Miha Rebernik
+ * - Gal Jakič (morpheus7CS)
+ * - Glavić
+ * - Anže Časar
+ * - Lovro Tramšek (Lovro1107)
+ * - burut13
+ */
+return [
+    'year' => ':count leto|:count leti|:count leta|:count let',
+    'y' => ':count leto|:count leti|:count leta|:count let',
+    'month' => ':count mesec|:count meseca|:count mesece|:count mesecev',
+    'm' => ':count mes.',
+    'week' => ':count teden|:count tedna|:count tedne|:count tednov',
+    'w' => ':count ted.',
+    'day' => ':count dan|:count dni|:count dni|:count dni',
+    'd' => ':count dan|:count dni|:count dni|:count dni',
+    'hour' => ':count ura|:count uri|:count ure|:count ur',
+    'h' => ':count h',
+    'minute' => ':count minuta|:count minuti|:count minute|:count minut',
+    'min' => ':count min.',
+    'second' => ':count sekunda|:count sekundi|:count sekunde|:count sekund',
+    'a_second' => '{1}nekaj sekund|:count sekunda|:count sekundi|:count sekunde|:count sekund',
+    's' => ':count s',
+
+    'year_ago' => ':count letom|:count leti|:count leti|:count leti',
+    'y_ago' => ':count letom|:count leti|:count leti|:count leti',
+    'month_ago' => ':count mesecem|:count meseci|:count meseci|:count meseci',
+    'week_ago' => ':count tednom|:count tednoma|:count tedni|:count tedni',
+    'day_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi',
+    'd_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi',
+    'hour_ago' => ':count uro|:count urama|:count urami|:count urami',
+    'minute_ago' => ':count minuto|:count minutama|:count minutami|:count minutami',
+    'second_ago' => ':count sekundo|:count sekundama|:count sekundami|:count sekundami',
+
+    'day_from_now' => ':count dan|:count dneva|:count dni|:count dni',
+    'd_from_now' => ':count dan|:count dneva|:count dni|:count dni',
+    'hour_from_now' => ':count uro|:count uri|:count ure|:count ur',
+    'minute_from_now' => ':count minuto|:count minuti|:count minute|:count minut',
+    'second_from_now' => ':count sekundo|:count sekundi|:count sekunde|:count sekund',
+
+    'ago' => 'pred :time',
+    'from_now' => 'čez :time',
+    'after' => ':time kasneje',
+    'before' => ':time prej',
+
+    'diff_now' => 'ravnokar',
+    'diff_today' => 'danes',
+    'diff_today_regexp' => 'danes(?:\\s+ob)?',
+    'diff_yesterday' => 'včeraj',
+    'diff_yesterday_regexp' => 'včeraj(?:\\s+ob)?',
+    'diff_tomorrow' => 'jutri',
+    'diff_tomorrow_regexp' => 'jutri(?:\\s+ob)?',
+    'diff_before_yesterday' => 'predvčerajšnjim',
+    'diff_after_tomorrow' => 'pojutrišnjem',
+
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'period_start_date' => 'od :date',
+    'period_end_date' => 'do :date',
+
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[danes ob] LT',
+        'nextDay' => '[jutri ob] LT',
+        'nextWeek' => 'dddd [ob] LT',
+        'lastDay' => '[včeraj ob] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[preteklo] [nedeljo] [ob] LT';
+                case 1:
+                    return '[pretekli] [ponedeljek] [ob] LT';
+                case 2:
+                    return '[pretekli] [torek] [ob] LT';
+                case 3:
+                    return '[preteklo] [sredo] [ob] LT';
+                case 4:
+                    return '[pretekli] [četrtek] [ob] LT';
+                case 5:
+                    return '[pretekli] [petek] [ob] LT';
+                case 6:
+                    return '[preteklo] [soboto] [ob] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'months' => ['januar', 'februar', 'marec', 'april', 'maj', 'junij', 'julij', 'avgust', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'avg', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['nedelja', 'ponedeljek', 'torek', 'sreda', 'četrtek', 'petek', 'sobota'],
+    'weekdays_short' => ['ned', 'pon', 'tor', 'sre', 'čet', 'pet', 'sob'],
+    'weekdays_min' => ['ne', 'po', 'to', 'sr', 'če', 'pe', 'so'],
+    'list' => [', ', ' in '],
+    'meridiem' => ['dopoldan', 'popoldan'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl_SI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl_SI.php
new file mode 100644
index 0000000..da9fef0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sl_SI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm.php
new file mode 100644
index 0000000..e8c118a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/sm_WS.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm_WS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm_WS.php
new file mode 100644
index 0000000..f066068
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sm_WS.php
@@ -0,0 +1,53 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    akhilesh.k@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Ianuari', 'Fepuari', 'Mati', 'Aperila', 'Me', 'Iuni', 'Iulai', 'Auguso', 'Setema', 'Oketopa', 'Novema', 'Tesema'],
+    'months_short' => ['Ian', 'Fep', 'Mat', 'Ape', 'Me', 'Iun', 'Iul', 'Aug', 'Set', 'Oke', 'Nov', 'Tes'],
+    'weekdays' => ['Aso Sa', 'Aso Gafua', 'Aso Lua', 'Aso Lulu', 'Aso Tofi', 'Aso Farail', 'Aso To\'ana\'i'],
+    'weekdays_short' => ['Aso Sa', 'Aso Gaf', 'Aso Lua', 'Aso Lul', 'Aso Tof', 'Aso Far', 'Aso To\''],
+    'weekdays_min' => ['Aso Sa', 'Aso Gaf', 'Aso Lua', 'Aso Lul', 'Aso Tof', 'Aso Far', 'Aso To\''],
+
+    'hour' => ':count uati', // less reliable
+    'h' => ':count uati', // less reliable
+    'a_hour' => ':count uati', // less reliable
+
+    'minute' => ':count itiiti', // less reliable
+    'min' => ':count itiiti', // less reliable
+    'a_minute' => ':count itiiti', // less reliable
+
+    'second' => ':count lua', // less reliable
+    's' => ':count lua', // less reliable
+    'a_second' => ':count lua', // less reliable
+
+    'year' => ':count tausaga',
+    'y' => ':count tausaga',
+    'a_year' => ':count tausaga',
+
+    'month' => ':count māsina',
+    'm' => ':count māsina',
+    'a_month' => ':count māsina',
+
+    'week' => ':count vaiaso',
+    'w' => ':count vaiaso',
+    'a_week' => ':count vaiaso',
+
+    'day' => ':count aso',
+    'd' => ':count aso',
+    'a_day' => ':count aso',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/smn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/smn.php
new file mode 100644
index 0000000..b252ebb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/smn.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['ip.', 'ep.'],
+    'weekdays' => ['pasepeeivi', 'vuossaargâ', 'majebaargâ', 'koskoho', 'tuorâstuv', 'vástuppeeivi', 'lávurduv'],
+    'weekdays_short' => ['pas', 'vuo', 'maj', 'kos', 'tuo', 'vás', 'láv'],
+    'weekdays_min' => ['pa', 'vu', 'ma', 'ko', 'tu', 'vá', 'lá'],
+    'weekdays_standalone' => ['pasepeivi', 'vuossargâ', 'majebargâ', 'koskokko', 'tuorâstâh', 'vástuppeivi', 'lávurdâh'],
+    'months' => ['uđđâivemáánu', 'kuovâmáánu', 'njuhčâmáánu', 'cuáŋuimáánu', 'vyesimáánu', 'kesimáánu', 'syeinimáánu', 'porgemáánu', 'čohčâmáánu', 'roovvâdmáánu', 'skammâmáánu', 'juovlâmáánu'],
+    'months_short' => ['uđiv', 'kuovâ', 'njuhčâ', 'cuáŋui', 'vyesi', 'kesi', 'syeini', 'porge', 'čohčâ', 'roovvâd', 'skammâ', 'juovlâ'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'H.mm',
+        'LTS' => 'H.mm.ss',
+        'L' => 'D.M.YYYY',
+        'LL' => 'MMM D. YYYY',
+        'LLL' => 'MMMM D. YYYY H.mm',
+        'LLLL' => 'dddd, MMMM D. YYYY H.mm',
+    ],
+
+    'hour' => ':count äigi', // less reliable
+    'h' => ':count äigi', // less reliable
+    'a_hour' => ':count äigi', // less reliable
+
+    'year' => ':count ihe',
+    'y' => ':count ihe',
+    'a_year' => ':count ihe',
+
+    'month' => ':count mánuppaje',
+    'm' => ':count mánuppaje',
+    'a_month' => ':count mánuppaje',
+
+    'week' => ':count okko',
+    'w' => ':count okko',
+    'a_week' => ':count okko',
+
+    'day' => ':count peivi',
+    'd' => ':count peivi',
+    'a_day' => ':count peivi',
+
+    'minute' => ':count miinut',
+    'min' => ':count miinut',
+    'a_minute' => ':count miinut',
+
+    'second' => ':count nubbe',
+    's' => ':count nubbe',
+    'a_second' => ':count nubbe',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sn.php
new file mode 100644
index 0000000..62c82b1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sn.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['a', 'p'],
+    'weekdays' => ['Svondo', 'Muvhuro', 'Chipiri', 'Chitatu', 'China', 'Chishanu', 'Mugovera'],
+    'weekdays_short' => ['Svo', 'Muv', 'Chp', 'Cht', 'Chn', 'Chs', 'Mug'],
+    'weekdays_min' => ['Sv', 'Mu', 'Cp', 'Ct', 'Cn', 'Cs', 'Mg'],
+    'months' => ['Ndira', 'Kukadzi', 'Kurume', 'Kubvumbi', 'Chivabvu', 'Chikumi', 'Chikunguru', 'Nyamavhuvhu', 'Gunyana', 'Gumiguru', 'Mbudzi', 'Zvita'],
+    'months_short' => ['Ndi', 'Kuk', 'Kur', 'Kub', 'Chv', 'Chk', 'Chg', 'Nya', 'Gun', 'Gum', 'Mbu', 'Zvi'],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+
+    'year' => 'makore :count',
+    'y' => 'makore :count',
+    'a_year' => 'makore :count',
+
+    'month' => 'mwedzi :count',
+    'm' => 'mwedzi :count',
+    'a_month' => 'mwedzi :count',
+
+    'week' => 'vhiki :count',
+    'w' => 'vhiki :count',
+    'a_week' => 'vhiki :count',
+
+    'day' => 'mazuva :count',
+    'd' => 'mazuva :count',
+    'a_day' => 'mazuva :count',
+
+    'hour' => 'maawa :count',
+    'h' => 'maawa :count',
+    'a_hour' => 'maawa :count',
+
+    'minute' => 'minitsi :count',
+    'min' => 'minitsi :count',
+    'a_minute' => 'minitsi :count',
+
+    'second' => 'sekonzi :count',
+    's' => 'sekonzi :count',
+    'a_second' => 'sekonzi :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so.php
new file mode 100644
index 0000000..5785271
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so.php
@@ -0,0 +1,74 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Author:
+ * - Abdifatah Abdilahi(@abdifatahz)
+ */
+return [
+    'year' => ':count sanad|:count sanadood',
+    'a_year' => 'sanad|:count sanadood',
+    'y' => '{1}:countsn|{0}:countsns|]1,Inf[:countsn',
+    'month' => ':count bil|:count bilood',
+    'a_month' => 'bil|:count bilood',
+    'm' => ':countbil',
+    'week' => ':count isbuuc',
+    'a_week' => 'isbuuc|:count isbuuc',
+    'w' => ':countis',
+    'day' => ':count maalin|:count maalmood',
+    'a_day' => 'maalin|:count maalmood',
+    'd' => ':countml',
+    'hour' => ':count saac',
+    'a_hour' => 'saacad|:count saac',
+    'h' => ':countsc',
+    'minute' => ':count daqiiqo',
+    'a_minute' => 'daqiiqo|:count daqiiqo',
+    'min' => ':countdq',
+    'second' => ':count ilbidhiqsi',
+    'a_second' => 'xooga ilbidhiqsiyo|:count ilbidhiqsi',
+    's' => ':countil',
+    'ago' => ':time kahor',
+    'from_now' => ':time gudahood',
+    'after' => ':time kedib',
+    'before' => ':time kahor',
+    'diff_now' => 'hada',
+    'diff_today' => 'maanta',
+    'diff_today_regexp' => 'maanta(?:\s+markay\s+(?:tahay|ahayd))?',
+    'diff_yesterday' => 'shalayto',
+    'diff_yesterday_regexp' => 'shalayto(?:\s+markay\s+ahayd)?',
+    'diff_tomorrow' => 'beri',
+    'diff_tomorrow_regexp' => 'beri(?:\s+markay\s+tahay)?',
+    'diff_before_yesterday' => 'doraato',
+    'diff_after_tomorrow' => 'saadanbe',
+    'period_recurrences' => 'mar|:count jeer',
+    'period_interval' => ':interval kasta',
+    'period_start_date' => 'laga bilaabo :date',
+    'period_end_date' => 'ilaa :date',
+    'months' => ['Janaayo', 'Febraayo', 'Abriil', 'Maajo', 'Juun', 'Luuliyo', 'Agoosto', 'Sebteembar', 'Oktoobar', 'Nofeembar', 'Diseembar'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Abr', 'Mjo', 'Jun', 'Lyo', 'Agt', 'Seb', 'Okt', 'Nof', 'Dis'],
+    'weekdays' => ['Axad', 'Isniin', 'Talaada', 'Arbaca', 'Khamiis', 'Jimce', 'Sabti'],
+    'weekdays_short' => ['Axd', 'Isn', 'Tal', 'Arb', 'Kha', 'Jim', 'Sbt'],
+    'weekdays_min' => ['Ax', 'Is', 'Ta', 'Ar', 'Kh', 'Ji', 'Sa'],
+    'list' => [', ', ' and '],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'calendar' => [
+        'sameDay' => '[Maanta markay tahay] LT',
+        'nextDay' => '[Beri markay tahay] LT',
+        'nextWeek' => 'dddd [markay tahay] LT',
+        'lastDay' => '[Shalay markay ahayd] LT',
+        'lastWeek' => '[Hore] dddd [Markay ahayd] LT',
+        'sameElse' => 'L',
+    ],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_DJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_DJ.php
new file mode 100644
index 0000000..273dda8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_DJ.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/so.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_ET.php
new file mode 100644
index 0000000..7b69971
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_ET.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return require __DIR__.'/so.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_KE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_KE.php
new file mode 100644
index 0000000..7b69971
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_KE.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return require __DIR__.'/so.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_SO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_SO.php
new file mode 100644
index 0000000..7b69971
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/so_SO.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return require __DIR__.'/so.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq.php
new file mode 100644
index 0000000..ffa592e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq.php
@@ -0,0 +1,79 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - JD Isaacks
+ * - Fadion Dashi
+ */
+return [
+    'year' => ':count vit|:count vjet',
+    'a_year' => 'një vit|:count vite',
+    'y' => ':count v.',
+    'month' => ':count muaj',
+    'a_month' => 'një muaj|:count muaj',
+    'm' => ':count muaj',
+    'week' => ':count javë',
+    'a_week' => ':count javë|:count javë',
+    'w' => ':count j.',
+    'day' => ':count ditë',
+    'a_day' => 'një ditë|:count ditë',
+    'd' => ':count d.',
+    'hour' => ':count orë',
+    'a_hour' => 'një orë|:count orë',
+    'h' => ':count o.',
+    'minute' => ':count minutë|:count minuta',
+    'a_minute' => 'një minutë|:count minuta',
+    'min' => ':count min.',
+    'second' => ':count sekondë|:count sekonda',
+    'a_second' => 'disa sekonda|:count sekonda',
+    's' => ':count s.',
+    'ago' => ':time më parë',
+    'from_now' => 'në :time',
+    'after' => ':time pas',
+    'before' => ':time para',
+    'diff_now' => 'tani',
+    'diff_today' => 'Sot',
+    'diff_today_regexp' => 'Sot(?:\\s+në)?',
+    'diff_yesterday' => 'dje',
+    'diff_yesterday_regexp' => 'Dje(?:\\s+në)?',
+    'diff_tomorrow' => 'nesër',
+    'diff_tomorrow_regexp' => 'Nesër(?:\\s+në)?',
+    'diff_before_yesterday' => 'pardje',
+    'diff_after_tomorrow' => 'pasnesër',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Sot në] LT',
+        'nextDay' => '[Nesër në] LT',
+        'nextWeek' => 'dddd [në] LT',
+        'lastDay' => '[Dje në] LT',
+        'lastWeek' => 'dddd [e kaluar në] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'meridiem' => ['PD', 'MD'],
+    'months' => ['janar', 'shkurt', 'mars', 'prill', 'maj', 'qershor', 'korrik', 'gusht', 'shtator', 'tetor', 'nëntor', 'dhjetor'],
+    'months_short' => ['jan', 'shk', 'mar', 'pri', 'maj', 'qer', 'kor', 'gus', 'sht', 'tet', 'nën', 'dhj'],
+    'weekdays' => ['e diel', 'e hënë', 'e martë', 'e mërkurë', 'e enjte', 'e premte', 'e shtunë'],
+    'weekdays_short' => ['die', 'hën', 'mar', 'mër', 'enj', 'pre', 'sht'],
+    'weekdays_min' => ['d', 'h', 'ma', 'më', 'e', 'p', 'sh'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' dhe '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_AL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_AL.php
new file mode 100644
index 0000000..0bfbdf3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_AL.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sq.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_MK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_MK.php
new file mode 100644
index 0000000..c844fe0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_MK.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sq.php', [
+    'formats' => [
+        'L' => 'D.M.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_XK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_XK.php
new file mode 100644
index 0000000..c844fe0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sq_XK.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sq.php', [
+    'formats' => [
+        'L' => 'D.M.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr.php
new file mode 100644
index 0000000..6ecf2d0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr.php
@@ -0,0 +1,109 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - shaishavgandhi05
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - Glavić
+ * - Milos Sakovic
+ */
+return [
+    'year' => ':count godina|:count godine|:count godina',
+    'y' => ':count g.',
+    'month' => ':count mesec|:count meseca|:count meseci',
+    'm' => ':count mj.',
+    'week' => ':count nedelja|:count nedelje|:count nedelja',
+    'w' => ':count ned.',
+    'day' => ':count dan|:count dana|:count dana',
+    'd' => ':count d.',
+    'hour' => ':count sat|:count sata|:count sati',
+    'h' => ':count č.',
+    'minute' => ':count minut|:count minuta|:count minuta',
+    'min' => ':count min.',
+    'second' => ':count sekundu|:count sekunde|:count sekundi',
+    's' => ':count sek.',
+    'ago' => 'pre :time',
+    'from_now' => 'za :time',
+    'after' => 'nakon :time',
+    'before' => 'pre :time',
+
+    'year_from_now' => ':count godinu|:count godine|:count godina',
+    'year_ago' => ':count godinu|:count godine|:count godina',
+    'week_from_now' => ':count nedelju|:count nedelje|:count nedelja',
+    'week_ago' => ':count nedelju|:count nedelje|:count nedelja',
+
+    'diff_now' => 'upravo sada',
+    'diff_today' => 'danas',
+    'diff_today_regexp' => 'danas(?:\\s+u)?',
+    'diff_yesterday' => 'juče',
+    'diff_yesterday_regexp' => 'juče(?:\\s+u)?',
+    'diff_tomorrow' => 'sutra',
+    'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
+    'diff_before_yesterday' => 'prekjuče',
+    'diff_after_tomorrow' => 'preksutra',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[danas u] LT',
+        'nextDay' => '[sutra u] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[u nedelju u] LT';
+                case 3:
+                    return '[u sredu u] LT';
+                case 6:
+                    return '[u subotu u] LT';
+                default:
+                    return '[u] dddd [u] LT';
+            }
+        },
+        'lastDay' => '[juče u] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[prošle nedelje u] LT';
+                case 1:
+                    return '[prošlog ponedeljka u] LT';
+                case 2:
+                    return '[prošlog utorka u] LT';
+                case 3:
+                    return '[prošle srede u] LT';
+                case 4:
+                    return '[prošlog četvrtka u] LT';
+                case 5:
+                    return '[prošlog petka u] LT';
+                default:
+                    return '[prošle subote u] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
+    'months_short' => ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
+    'weekdays' => ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sre.', 'čet.', 'pet.', 'sub.'],
+    'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' i '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl.php
new file mode 100644
index 0000000..8540742
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl.php
@@ -0,0 +1,109 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - shaishavgandhi05
+ * - Serhan Apaydın
+ * - JD Isaacks
+ * - Glavić
+ * - Nikola Zeravcic
+ * - Milos Sakovic
+ */
+return [
+    'year' => '{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+    'y' => ':count г.',
+    'month' => '{1}:count месец|{2,3,4}:count месеца|[0,Inf[:count месеци',
+    'm' => ':count м.',
+    'week' => '{1}:count недеља|{2,3,4}:count недеље|[0,Inf[:count недеља',
+    'w' => ':count нед.',
+    'day' => '{1,21,31}:count дан|[0,Inf[:count дана',
+    'd' => ':count д.',
+    'hour' => '{1,21}:count сат|{2,3,4,22,23,24}:count сата|[0,Inf[:count сати',
+    'h' => ':count ч.',
+    'minute' => '{1,21,31,41,51}:count минут|[0,Inf[:count минута',
+    'min' => ':count мин.',
+    'second' => '{1,21,31,41,51}:count секунд|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count секунде|[0,Inf[:count секунди',
+    's' => ':count сек.',
+    'ago' => 'пре :time',
+    'from_now' => 'за :time',
+    'after' => ':time након',
+    'before' => ':time пре',
+    'year_from_now' => '{1,21,31,41,51}:count годину|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+    'year_ago' => '{1,21,31,41,51}:count годину|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+    'week_from_now' => '{1}:count недељу|{2,3,4}:count недеље|[0,Inf[:count недеља',
+    'week_ago' => '{1}:count недељу|{2,3,4}:count недеље|[0,Inf[:count недеља',
+    'diff_now' => 'управо сада',
+    'diff_today' => 'данас',
+    'diff_today_regexp' => 'данас(?:\\s+у)?',
+    'diff_yesterday' => 'јуче',
+    'diff_yesterday_regexp' => 'јуче(?:\\s+у)?',
+    'diff_tomorrow' => 'сутра',
+    'diff_tomorrow_regexp' => 'сутра(?:\\s+у)?',
+    'diff_before_yesterday' => 'прекјуче',
+    'diff_after_tomorrow' => 'прекосутра',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[данас у] LT',
+        'nextDay' => '[сутра у] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[у недељу у] LT';
+                case 3:
+                    return '[у среду у] LT';
+                case 6:
+                    return '[у суботу у] LT';
+                default:
+                    return '[у] dddd [у] LT';
+            }
+        },
+        'lastDay' => '[јуче у] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[прошле недеље у] LT';
+                case 1:
+                    return '[прошлог понедељка у] LT';
+                case 2:
+                    return '[прошлог уторка у] LT';
+                case 3:
+                    return '[прошле среде у] LT';
+                case 4:
+                    return '[прошлог четвртка у] LT';
+                case 5:
+                    return '[прошлог петка у] LT';
+                default:
+                    return '[прошле суботе у] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
+    'months_short' => ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
+    'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
+    'weekdays_short' => ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
+    'weekdays_min' => ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' и '],
+    'meridiem' => ['АМ', 'ПМ'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_BA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_BA.php
new file mode 100644
index 0000000..36405d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_BA.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sr_Cyrl.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D.M.yy.',
+        'LL' => 'DD.MM.YYYY.',
+        'LLL' => 'DD. MMMM YYYY. HH:mm',
+        'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
+    ],
+    'weekdays' => ['недјеља', 'понедељак', 'уторак', 'сриједа', 'четвртак', 'петак', 'субота'],
+    'weekdays_short' => ['нед.', 'пон.', 'ут.', 'ср.', 'чет.', 'пет.', 'суб.'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_ME.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_ME.php
new file mode 100644
index 0000000..fb6179e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_ME.php
@@ -0,0 +1,106 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Glavić
+ * - Milos Sakovic
+ */
+return [
+    'year' => '{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+    'y' => ':count г.',
+    'month' => '{1}:count мјесец|{2,3,4}:count мјесеца|[0,Inf[:count мјесеци',
+    'm' => ':count мј.',
+    'week' => '{1}:count недјеља|{2,3,4}:count недјеље|[0,Inf[:count недјеља',
+    'w' => ':count нед.',
+    'day' => '{1,21,31}:count дан|[0,Inf[:count дана',
+    'd' => ':count д.',
+    'hour' => '{1,21}:count сат|{2,3,4,22,23,24}:count сата|[0,Inf[:count сати',
+    'h' => ':count ч.',
+    'minute' => '{1,21,31,41,51}:count минут|[0,Inf[:count минута',
+    'min' => ':count мин.',
+    'second' => '{1,21,31,41,51}:count секунд|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count секунде|[0,Inf[:count секунди',
+    's' => ':count сек.',
+    'ago' => 'прије :time',
+    'from_now' => 'за :time',
+    'after' => ':time након',
+    'before' => ':time прије',
+
+    'year_from_now' => '{1,21,31,41,51}:count годину|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+    'year_ago' => '{1,21,31,41,51}:count годину|{2,3,4,22,23,24,32,33,34,42,43,44,52,53,54}:count године|[0,Inf[:count година',
+
+    'week_from_now' => '{1}:count недјељу|{2,3,4}:count недјеље|[0,Inf[:count недјеља',
+    'week_ago' => '{1}:count недјељу|{2,3,4}:count недјеље|[0,Inf[:count недјеља',
+
+    'diff_now' => 'управо сада',
+    'diff_today' => 'данас',
+    'diff_today_regexp' => 'данас(?:\\s+у)?',
+    'diff_yesterday' => 'јуче',
+    'diff_yesterday_regexp' => 'јуче(?:\\s+у)?',
+    'diff_tomorrow' => 'сутра',
+    'diff_tomorrow_regexp' => 'сутра(?:\\s+у)?',
+    'diff_before_yesterday' => 'прекјуче',
+    'diff_after_tomorrow' => 'прекосјутра',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM YYYY',
+        'LLL' => 'D. MMMM YYYY H:mm',
+        'LLLL' => 'dddd, D. MMMM YYYY H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[данас у] LT',
+        'nextDay' => '[сутра у] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[у недељу у] LT';
+                case 3:
+                    return '[у среду у] LT';
+                case 6:
+                    return '[у суботу у] LT';
+                default:
+                    return '[у] dddd [у] LT';
+            }
+        },
+        'lastDay' => '[јуче у] LT',
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[прошле недеље у] LT';
+                case 1:
+                    return '[прошлог понедељка у] LT';
+                case 2:
+                    return '[прошлог уторка у] LT';
+                case 3:
+                    return '[прошле среде у] LT';
+                case 4:
+                    return '[прошлог четвртка у] LT';
+                case 5:
+                    return '[прошлог петка у] LT';
+                default:
+                    return '[прошле суботе у] LT';
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
+    'months_short' => ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
+    'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
+    'weekdays_short' => ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
+    'weekdays_min' => ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' и '],
+    'meridiem' => ['АМ', 'ПМ'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_XK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_XK.php
new file mode 100644
index 0000000..0643a41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Cyrl_XK.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sr_Cyrl_BA.php', [
+    'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn.php
new file mode 100644
index 0000000..8ae8c41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_BA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_BA.php
new file mode 100644
index 0000000..c25a507
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_BA.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sr_Latn.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D.M.yy.',
+        'LL' => 'DD.MM.YYYY.',
+        'LLL' => 'DD. MMMM YYYY. HH:mm',
+        'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
+    ],
+    'weekdays' => ['nedjelja', 'ponedeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned.', 'pon.', 'ut.', 'sr.', 'čet.', 'pet.', 'sub.'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_ME.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_ME.php
new file mode 100644
index 0000000..de20f21
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_ME.php
@@ -0,0 +1,63 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Glavić
+ * - Milos Sakovic
+ */
+return array_replace_recursive(require __DIR__.'/sr.php', [
+    'month' => ':count mjesec|:count mjeseca|:count mjeseci',
+    'week' => ':count nedjelja|:count nedjelje|:count nedjelja',
+    'second' => ':count sekund|:count sekunde|:count sekundi',
+    'ago' => 'prije :time',
+    'from_now' => 'za :time',
+    'after' => ':time nakon',
+    'before' => ':time prije',
+    'week_from_now' => ':count nedjelju|:count nedjelje|:count nedjelja',
+    'week_ago' => ':count nedjelju|:count nedjelje|:count nedjelja',
+    'diff_tomorrow' => 'sjutra',
+    'calendar' => [
+        'nextDay' => '[sjutra u] LT',
+        'nextWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[u nedjelju u] LT';
+                case 3:
+                    return '[u srijedu u] LT';
+                case 6:
+                    return '[u subotu u] LT';
+                default:
+                    return '[u] dddd [u] LT';
+            }
+        },
+        'lastWeek' => function (\Carbon\CarbonInterface $date) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                    return '[prošle nedjelje u] LT';
+                case 1:
+                    return '[prošle nedjelje u] LT';
+                case 2:
+                    return '[prošlog utorka u] LT';
+                case 3:
+                    return '[prošle srijede u] LT';
+                case 4:
+                    return '[prošlog četvrtka u] LT';
+                case 5:
+                    return '[prošlog petka u] LT';
+                default:
+                    return '[prošle subote u] LT';
+            }
+        },
+    ],
+    'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
+    'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_XK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_XK.php
new file mode 100644
index 0000000..ba7cc09
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_Latn_XK.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sr_Latn_BA.php', [
+    'weekdays' => ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_ME.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_ME.php
new file mode 100644
index 0000000..b668ee1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_ME.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sr_Latn_ME.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS.php
new file mode 100644
index 0000000..bc5e04b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - sr_YU, sr_CS locale Danilo Segan bug-glibc-locales@gnu.org
+ */
+return require __DIR__.'/sr_Cyrl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS@latin.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS@latin.php
new file mode 100644
index 0000000..8ae8c41
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sr_RS@latin.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss.php
new file mode 100644
index 0000000..cd4b919
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss.php
@@ -0,0 +1,78 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Nicolai Davies
+ */
+return [
+    'year' => '{1}umnyaka|:count iminyaka',
+    'month' => '{1}inyanga|:count tinyanga',
+    'week' => '{1}:count liviki|:count emaviki',
+    'day' => '{1}lilanga|:count emalanga',
+    'hour' => '{1}lihora|:count emahora',
+    'minute' => '{1}umzuzu|:count emizuzu',
+    'second' => '{1}emizuzwana lomcane|:count mzuzwana',
+    'ago' => 'wenteka nga :time',
+    'from_now' => 'nga :time',
+    'diff_yesterday' => 'Itolo',
+    'diff_yesterday_regexp' => 'Itolo(?:\\s+nga)?',
+    'diff_today' => 'Namuhla',
+    'diff_today_regexp' => 'Namuhla(?:\\s+nga)?',
+    'diff_tomorrow' => 'Kusasa',
+    'diff_tomorrow_regexp' => 'Kusasa(?:\\s+nga)?',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm A',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm A',
+    ],
+    'calendar' => [
+        'sameDay' => '[Namuhla nga] LT',
+        'nextDay' => '[Kusasa nga] LT',
+        'nextWeek' => 'dddd [nga] LT',
+        'lastDay' => '[Itolo nga] LT',
+        'lastWeek' => 'dddd [leliphelile] [nga] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        $lastDigit = $number % 10;
+
+        return $number.(
+            (~~($number % 100 / 10) === 1) ? 'e' : (
+                ($lastDigit === 1 || $lastDigit === 2) ? 'a' : 'e'
+            )
+        );
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 11) {
+            return 'ekuseni';
+        }
+        if ($hour < 15) {
+            return 'emini';
+        }
+        if ($hour < 19) {
+            return 'entsambama';
+        }
+
+        return 'ebusuku';
+    },
+    'months' => ['Bhimbidvwane', 'Indlovana', 'Indlov\'lenkhulu', 'Mabasa', 'Inkhwekhweti', 'Inhlaba', 'Kholwane', 'Ingci', 'Inyoni', 'Imphala', 'Lweti', 'Ingongoni'],
+    'months_short' => ['Bhi', 'Ina', 'Inu', 'Mab', 'Ink', 'Inh', 'Kho', 'Igc', 'Iny', 'Imp', 'Lwe', 'Igo'],
+    'weekdays' => ['Lisontfo', 'Umsombuluko', 'Lesibili', 'Lesitsatfu', 'Lesine', 'Lesihlanu', 'Umgcibelo'],
+    'weekdays_short' => ['Lis', 'Umb', 'Lsb', 'Les', 'Lsi', 'Lsh', 'Umg'],
+    'weekdays_min' => ['Li', 'Us', 'Lb', 'Lt', 'Ls', 'Lh', 'Ug'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss_ZA.php
new file mode 100644
index 0000000..48d970a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ss_ZA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/ss.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st.php
new file mode 100644
index 0000000..b065445
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/st_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st_ZA.php
new file mode 100644
index 0000000..5bce7f2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/st_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Pherekgong', 'Hlakola', 'Tlhakubele', 'Mmese', 'Motsheanong', 'Phupjane', 'Phupu', 'Phato', 'Leotse', 'Mphalane', 'Pudungwana', 'Tshitwe'],
+    'months_short' => ['Phe', 'Hla', 'TlH', 'Mme', 'Mot', 'Jan', 'Upu', 'Pha', 'Leo', 'Mph', 'Pud', 'Tsh'],
+    'weekdays' => ['Sontaha', 'Mantaha', 'Labobedi', 'Laboraro', 'Labone', 'Labohlano', 'Moqebelo'],
+    'weekdays_short' => ['Son', 'Mma', 'Bed', 'Rar', 'Ne', 'Hla', 'Moq'],
+    'weekdays_min' => ['Son', 'Mma', 'Bed', 'Rar', 'Ne', 'Hla', 'Moq'],
+    'day_of_first_week_of_year' => 1,
+
+    'week' => ':count Sontaha', // less reliable
+    'w' => ':count Sontaha', // less reliable
+    'a_week' => ':count Sontaha', // less reliable
+
+    'day' => ':count letsatsi', // less reliable
+    'd' => ':count letsatsi', // less reliable
+    'a_day' => ':count letsatsi', // less reliable
+
+    'hour' => ':count sešupanako', // less reliable
+    'h' => ':count sešupanako', // less reliable
+    'a_hour' => ':count sešupanako', // less reliable
+
+    'minute' => ':count menyane', // less reliable
+    'min' => ':count menyane', // less reliable
+    'a_minute' => ':count menyane', // less reliable
+
+    'second' => ':count thusa', // less reliable
+    's' => ':count thusa', // less reliable
+    'a_second' => ':count thusa', // less reliable
+
+    'year' => ':count selemo',
+    'y' => ':count selemo',
+    'a_year' => ':count selemo',
+
+    'month' => ':count kgwedi',
+    'm' => ':count kgwedi',
+    'a_month' => ':count kgwedi',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv.php
new file mode 100644
index 0000000..ca33e1c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv.php
@@ -0,0 +1,87 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Kristoffer Snabb
+ * - JD Isaacks
+ * - Jens Herlevsen
+ * - Nightpine
+ * - Anders Nygren (litemerafrukt)
+ */
+return [
+    'year' => ':count år',
+    'a_year' => 'ett år|:count år',
+    'y' => ':count år',
+    'month' => ':count månad|:count månader',
+    'a_month' => 'en månad|:count månader',
+    'm' => ':count mån',
+    'week' => ':count vecka|:count veckor',
+    'a_week' => 'en vecka|:count veckor',
+    'w' => ':count v',
+    'day' => ':count dag|:count dagar',
+    'a_day' => 'en dag|:count dagar',
+    'd' => ':count dgr',
+    'hour' => ':count timme|:count timmar',
+    'a_hour' => 'en timme|:count timmar',
+    'h' => ':count tim',
+    'minute' => ':count minut|:count minuter',
+    'a_minute' => 'en minut|:count minuter',
+    'min' => ':count min',
+    'second' => ':count sekund|:count sekunder',
+    'a_second' => 'några sekunder|:count sekunder',
+    's' => ':count s',
+    'ago' => 'för :time sedan',
+    'from_now' => 'om :time',
+    'after' => ':time efter',
+    'before' => ':time före',
+    'diff_now' => 'nu',
+    'diff_today' => 'I dag',
+    'diff_yesterday' => 'i går',
+    'diff_yesterday_regexp' => 'I går',
+    'diff_tomorrow' => 'i morgon',
+    'diff_tomorrow_regexp' => 'I morgon',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY [kl.] HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY [kl.] HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[I dag] LT',
+        'nextDay' => '[I morgon] LT',
+        'nextWeek' => '[På] dddd LT',
+        'lastDay' => '[I går] LT',
+        'lastWeek' => '[I] dddd[s] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        $lastDigit = $number % 10;
+
+        return $number.(
+            (~~($number % 100 / 10) === 1) ? 'e' : (
+                ($lastDigit === 1 || $lastDigit === 2) ? 'a' : 'e'
+            )
+        );
+    },
+    'months' => ['januari', 'februari', 'mars', 'april', 'maj', 'juni', 'juli', 'augusti', 'september', 'oktober', 'november', 'december'],
+    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
+    'weekdays' => ['söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag'],
+    'weekdays_short' => ['sön', 'mån', 'tis', 'ons', 'tors', 'fre', 'lör'],
+    'weekdays_min' => ['sö', 'må', 'ti', 'on', 'to', 'fr', 'lö'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' och '],
+    'meridiem' => ['fm', 'em'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_AX.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_AX.php
new file mode 100644
index 0000000..56425b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_AX.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sv.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_FI.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_FI.php
new file mode 100644
index 0000000..1b73ecb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_FI.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sv.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_SE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_SE.php
new file mode 100644
index 0000000..1b73ecb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sv_SE.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/sv.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw.php
new file mode 100644
index 0000000..f8630d5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw.php
@@ -0,0 +1,74 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - leyluj
+ * - Josh Soref
+ * - ryanhart2
+ */
+return [
+    'year' => 'mwaka :count|miaka :count',
+    'a_year' => 'mwaka mmoja|miaka :count',
+    'y' => 'mwaka :count|miaka :count',
+    'month' => 'mwezi :count|miezi :count',
+    'a_month' => 'mwezi mmoja|miezi :count',
+    'm' => 'mwezi :count|miezi :count',
+    'week' => 'wiki :count',
+    'a_week' => 'wiki mmoja|wiki :count',
+    'w' => 'w. :count',
+    'day' => 'siku :count',
+    'a_day' => 'siku moja|masiku :count',
+    'd' => 'si. :count',
+    'hour' => 'saa :count|masaa :count',
+    'a_hour' => 'saa limoja|masaa :count',
+    'h' => 'saa :count|masaa :count',
+    'minute' => 'dakika :count',
+    'a_minute' => 'dakika moja|dakika :count',
+    'min' => 'd. :count',
+    'second' => 'sekunde :count',
+    'a_second' => 'hivi punde|sekunde :count',
+    's' => 'se. :count',
+    'ago' => 'tokea :time',
+    'from_now' => ':time baadaye',
+    'after' => ':time baada',
+    'before' => ':time kabla',
+    'diff_now' => 'sasa hivi',
+    'diff_today' => 'leo',
+    'diff_today_regexp' => 'leo(?:\\s+saa)?',
+    'diff_yesterday' => 'jana',
+    'diff_tomorrow' => 'kesho',
+    'diff_tomorrow_regexp' => 'kesho(?:\\s+saa)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[leo saa] LT',
+        'nextDay' => '[kesho saa] LT',
+        'nextWeek' => '[wiki ijayo] dddd [saat] LT',
+        'lastDay' => '[jana] LT',
+        'lastWeek' => '[wiki iliyopita] dddd [saat] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Jpl', 'Jtat', 'Jnne', 'Jtan', 'Alh', 'Ijm', 'Jmos'],
+    'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' na '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_CD.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_CD.php
new file mode 100644
index 0000000..f6927f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_CD.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sw.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_KE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_KE.php
new file mode 100644
index 0000000..2ace0db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_KE.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kamusi Project Martin Benjamin locales@kamusi.org
+ */
+return array_replace_recursive(require __DIR__.'/sw.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
+    'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['asubuhi', 'alasiri'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_TZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_TZ.php
new file mode 100644
index 0000000..fab3cd6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_TZ.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kamusi Project Martin Benjamin locales@kamusi.org
+ */
+return array_replace_recursive(require __DIR__.'/sw.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
+    'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['asubuhi', 'alasiri'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_UG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_UG.php
new file mode 100644
index 0000000..f6927f4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/sw_UG.php
@@ -0,0 +1,16 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/sw.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl.php
new file mode 100644
index 0000000..4429c4f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/szl_PL.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl_PL.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl_PL.php
new file mode 100644
index 0000000..4b0b541
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/szl_PL.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - szl_PL locale Przemyslaw Buczkowski libc-alpha@sourceware.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['styczyń', 'luty', 'merc', 'kwjeciyń', 'moj', 'czyrwjyń', 'lipjyń', 'siyrpjyń', 'wrzesiyń', 'październik', 'listopad', 'grudziyń'],
+    'months_short' => ['sty', 'lut', 'mer', 'kwj', 'moj', 'czy', 'lip', 'siy', 'wrz', 'paź', 'lis', 'gru'],
+    'weekdays' => ['niydziela', 'pyńdziŏek', 'wtŏrek', 'strzŏda', 'sztwortek', 'pjōntek', 'sobŏta'],
+    'weekdays_short' => ['niy', 'pyń', 'wtŏ', 'str', 'szt', 'pjō', 'sob'],
+    'weekdays_min' => ['niy', 'pyń', 'wtŏ', 'str', 'szt', 'pjō', 'sob'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count rok',
+    'y' => ':count rok',
+    'a_year' => ':count rok',
+
+    'month' => ':count mjeśůnc',
+    'm' => ':count mjeśůnc',
+    'a_month' => ':count mjeśůnc',
+
+    'week' => ':count Tydźyń',
+    'w' => ':count Tydźyń',
+    'a_week' => ':count Tydźyń',
+
+    'day' => ':count dźyń',
+    'd' => ':count dźyń',
+    'a_day' => ':count dźyń',
+
+    'hour' => ':count godzina',
+    'h' => ':count godzina',
+    'a_hour' => ':count godzina',
+
+    'minute' => ':count Minuta',
+    'min' => ':count Minuta',
+    'a_minute' => ':count Minuta',
+
+    'second' => ':count Sekůnda',
+    's' => ':count Sekůnda',
+    'a_second' => ':count Sekůnda',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta.php
new file mode 100644
index 0000000..c1d89cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta.php
@@ -0,0 +1,97 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - François B
+ * - JD Isaacks
+ * - Satheez
+ */
+return [
+    'year' => ':count வருடம்|:count ஆண்டுகள்',
+    'a_year' => 'ஒரு வருடம்|:count ஆண்டுகள்',
+    'y' => ':count வருட.|:count ஆண்.',
+    'month' => ':count மாதம்|:count மாதங்கள்',
+    'a_month' => 'ஒரு மாதம்|:count மாதங்கள்',
+    'm' => ':count மாத.',
+    'week' => ':count வாரம்|:count வாரங்கள்',
+    'a_week' => 'ஒரு வாரம்|:count வாரங்கள்',
+    'w' => ':count வார.',
+    'day' => ':count நாள்|:count நாட்கள்',
+    'a_day' => 'ஒரு நாள்|:count நாட்கள்',
+    'd' => ':count நாள்|:count நாட்.',
+    'hour' => ':count மணி நேரம்|:count மணி நேரம்',
+    'a_hour' => 'ஒரு மணி நேரம்|:count மணி நேரம்',
+    'h' => ':count மணி.',
+    'minute' => ':count நிமிடம்|:count நிமிடங்கள்',
+    'a_minute' => 'ஒரு நிமிடம்|:count நிமிடங்கள்',
+    'min' => ':count நிமி.',
+    'second' => ':count சில விநாடிகள்|:count விநாடிகள்',
+    'a_second' => 'ஒரு சில விநாடிகள்|:count விநாடிகள்',
+    's' => ':count விநா.',
+    'ago' => ':time முன்',
+    'from_now' => ':time இல்',
+    'before' => ':time முன்',
+    'after' => ':time பின்',
+    'diff_now' => 'இப்போது',
+    'diff_today' => 'இன்று',
+    'diff_yesterday' => 'நேற்று',
+    'diff_tomorrow' => 'நாளை',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[இன்று] LT',
+        'nextDay' => '[நாளை] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[நேற்று] LT',
+        'lastWeek' => '[கடந்த வாரம்] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberவது',
+    'meridiem' => function ($hour) {
+        if ($hour < 2) {
+            return ' யாமம்';
+        }
+        if ($hour < 6) {
+            return ' வைகறை';
+        }
+        if ($hour < 10) {
+            return ' காலை';
+        }
+        if ($hour < 14) {
+            return ' நண்பகல்';
+        }
+        if ($hour < 18) {
+            return ' எற்பாடு';
+        }
+        if ($hour < 22) {
+            return ' மாலை';
+        }
+
+        return ' யாமம்';
+    },
+    'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டெம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'months_short' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டெம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'weekdays' => ['ஞாயிற்றுக்கிழமை', 'திங்கட்கிழமை', 'செவ்வாய்கிழமை', 'புதன்கிழமை', 'வியாழக்கிழமை', 'வெள்ளிக்கிழமை', 'சனிக்கிழமை'],
+    'weekdays_short' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
+    'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' மற்றும் '],
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_IN.php
new file mode 100644
index 0000000..492d4c5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_IN.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ta.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
+    'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
+    'weekdays_short' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['காலை', 'மாலை'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_LK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_LK.php
new file mode 100644
index 0000000..8e2afbf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_LK.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - J.Yogaraj 94-777-315206 yogaraj.ubuntu@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/ta.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'months_short' => ['ஜன', 'பிப்', 'மார்', 'ஏப்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக', 'செப்', 'அக்', 'நவ', 'டிச'],
+    'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
+    'weekdays_short' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['காலை', 'மாலை'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_MY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_MY.php
new file mode 100644
index 0000000..291d6c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_MY.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ta.php', [
+    'formats' => [
+        'LT' => 'a h:mm',
+        'LTS' => 'a h:mm:ss',
+        'L' => 'D/M/yy',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM, YYYY, a h:mm',
+        'LLLL' => 'dddd, D MMMM, YYYY, a h:mm',
+    ],
+    'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
+    'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
+    'weekdays_short' => ['ஞாயி.', 'திங்.', 'செவ்.', 'புத.', 'வியா.', 'வெள்.', 'சனி'],
+    'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'first_day_of_week' => 1,
+    'meridiem' => ['மு.ப', 'பி.ப'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_SG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_SG.php
new file mode 100644
index 0000000..fe1cc06
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ta_SG.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ta.php', [
+    'formats' => [
+        'LT' => 'a h:mm',
+        'LTS' => 'a h:mm:ss',
+        'L' => 'D/M/yy',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM, YYYY, a h:mm',
+        'LLLL' => 'dddd, D MMMM, YYYY, a h:mm',
+    ],
+    'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
+    'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
+    'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
+    'weekdays_short' => ['ஞாயி.', 'திங்.', 'செவ்.', 'புத.', 'வியா.', 'வெள்.', 'சனி'],
+    'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
+    'meridiem' => ['மு.ப', 'பி.ப'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy.php
new file mode 100644
index 0000000..2eb9905
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tcy_IN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy_IN.php
new file mode 100644
index 0000000..2ff20e0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tcy_IN.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IndLinux.org, Samsung Electronics Co., Ltd.    alexey.merzlyakov@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['ಜನವರಿ', 'ಫೆಬ್ರುವರಿ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್‌‌', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂಬರ್‌', 'ಅಕ್ಟೋಬರ್', 'ನವೆಂಬರ್', 'ಡಿಸೆಂಬರ್'],
+    'months_short' => ['ಜ', 'ಫೆ', 'ಮಾ', 'ಏ', 'ಮೇ', 'ಜೂ', 'ಜು', 'ಆ', 'ಸೆ', 'ಅ', 'ನ', 'ಡಿ'],
+    'weekdays' => ['ಐಥಾರ', 'ಸೋಮಾರ', 'ಅಂಗರೆ', 'ಬುಧಾರ', 'ಗುರುವಾರ', 'ಶುಕ್ರರ', 'ಶನಿವಾರ'],
+    'weekdays_short' => ['ಐ', 'ಸೋ', 'ಅಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
+    'weekdays_min' => ['ಐ', 'ಸೋ', 'ಅಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ಕಾಂಡೆ', 'ಬಯ್ಯ'],
+
+    'year' => ':count ನೀರ್', // less reliable
+    'y' => ':count ನೀರ್', // less reliable
+    'a_year' => ':count ನೀರ್', // less reliable
+
+    'month' => ':count ಮೀನ್', // less reliable
+    'm' => ':count ಮೀನ್', // less reliable
+    'a_month' => ':count ಮೀನ್', // less reliable
+
+    'day' => ':count ಸುಗ್ಗಿ', // less reliable
+    'd' => ':count ಸುಗ್ಗಿ', // less reliable
+    'a_day' => ':count ಸುಗ್ಗಿ', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te.php
new file mode 100644
index 0000000..ac38218
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te.php
@@ -0,0 +1,89 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - Josh Soref
+ * - François B
+ * - kc
+ */
+return [
+    'year' => ':count సంవత్సరం|:count సంవత్సరాలు',
+    'a_year' => 'ఒక సంవత్సరం|:count సంవత్సరాలు',
+    'y' => ':count సం.',
+    'month' => ':count నెల|:count నెలలు',
+    'a_month' => 'ఒక నెల|:count నెలలు',
+    'm' => ':count నెల|:count నెల.',
+    'week' => ':count వారం|:count వారాలు',
+    'a_week' => 'ఒక వారం|:count వారాలు',
+    'w' => ':count వార.|:count వారా.',
+    'day' => ':count రోజు|:count రోజులు',
+    'a_day' => 'ఒక రోజు|:count రోజులు',
+    'd' => ':count రోజు|:count రోజు.',
+    'hour' => ':count గంట|:count గంటలు',
+    'a_hour' => 'ఒక గంట|:count గంటలు',
+    'h' => ':count గం.',
+    'minute' => ':count నిమిషం|:count నిమిషాలు',
+    'a_minute' => 'ఒక నిమిషం|:count నిమిషాలు',
+    'min' => ':count నిమి.',
+    'second' => ':count సెకను|:count సెకన్లు',
+    'a_second' => 'కొన్ని క్షణాలు|:count సెకన్లు',
+    's' => ':count సెక.',
+    'ago' => ':time క్రితం',
+    'from_now' => ':time లో',
+    'diff_now' => 'ప్రస్తుతం',
+    'diff_today' => 'నేడు',
+    'diff_yesterday' => 'నిన్న',
+    'diff_tomorrow' => 'రేపు',
+    'formats' => [
+        'LT' => 'A h:mm',
+        'LTS' => 'A h:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, A h:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[నేడు] LT',
+        'nextDay' => '[రేపు] LT',
+        'nextWeek' => 'dddd, LT',
+        'lastDay' => '[నిన్న] LT',
+        'lastWeek' => '[గత] dddd, LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberవ',
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'రాత్రి';
+        }
+        if ($hour < 10) {
+            return 'ఉదయం';
+        }
+        if ($hour < 17) {
+            return 'మధ్యాహ్నం';
+        }
+        if ($hour < 20) {
+            return 'సాయంత్రం';
+        }
+
+        return ' రాత్రి';
+    },
+    'months' => ['జనవరి', 'ఫిబ్రవరి', 'మార్చి', 'ఏప్రిల్', 'మే', 'జూన్', 'జూలై', 'ఆగస్టు', 'సెప్టెంబర్', 'అక్టోబర్', 'నవంబర్', 'డిసెంబర్'],
+    'months_short' => ['జన.', 'ఫిబ్ర.', 'మార్చి', 'ఏప్రి.', 'మే', 'జూన్', 'జూలై', 'ఆగ.', 'సెప్.', 'అక్టో.', 'నవ.', 'డిసె.'],
+    'weekdays' => ['ఆదివారం', 'సోమవారం', 'మంగళవారం', 'బుధవారం', 'గురువారం', 'శుక్రవారం', 'శనివారం'],
+    'weekdays_short' => ['ఆది', 'సోమ', 'మంగళ', 'బుధ', 'గురు', 'శుక్ర', 'శని'],
+    'weekdays_min' => ['ఆ', 'సో', 'మం', 'బు', 'గు', 'శు', 'శ'],
+    'list' => ', ',
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [0, 0],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te_IN.php
new file mode 100644
index 0000000..6f81c40
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/te_IN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/te.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo.php
new file mode 100644
index 0000000..950235e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ta.php', [
+    'meridiem' => ['Taparachu', 'Ebongi'],
+    'weekdays' => ['Nakaejuma', 'Nakaebarasa', 'Nakaare', 'Nakauni', 'Nakaung’on', 'Nakakany', 'Nakasabiti'],
+    'weekdays_short' => ['Jum', 'Bar', 'Aar', 'Uni', 'Ung', 'Kan', 'Sab'],
+    'weekdays_min' => ['Jum', 'Bar', 'Aar', 'Uni', 'Ung', 'Kan', 'Sab'],
+    'months' => ['Orara', 'Omuk', 'Okwamg’', 'Odung’el', 'Omaruk', 'Omodok’king’ol', 'Ojola', 'Opedel', 'Osokosokoma', 'Otibar', 'Olabor', 'Opoo'],
+    'months_short' => ['Rar', 'Muk', 'Kwa', 'Dun', 'Mar', 'Mod', 'Jol', 'Ped', 'Sok', 'Tib', 'Lab', 'Poo'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo_KE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo_KE.php
new file mode 100644
index 0000000..024d272
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/teo_KE.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/teo.php', [
+    'first_day_of_week' => 0,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tet.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tet.php
new file mode 100644
index 0000000..d0544d4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tet.php
@@ -0,0 +1,64 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Joshua Brooks
+ * - François B
+ */
+return [
+    'year' => 'tinan :count',
+    'a_year' => '{1}tinan ida|tinan :count',
+    'month' => 'fulan :count',
+    'a_month' => '{1}fulan ida|fulan :count',
+    'week' => 'semana :count',
+    'a_week' => '{1}semana ida|semana :count',
+    'day' => 'loron :count',
+    'a_day' => '{1}loron ida|loron :count',
+    'hour' => 'oras :count',
+    'a_hour' => '{1}oras ida|oras :count',
+    'minute' => 'minutu :count',
+    'a_minute' => '{1}minutu ida|minutu :count',
+    'second' => 'segundu :count',
+    'a_second' => '{1}segundu balun|segundu :count',
+    'ago' => ':time liuba',
+    'from_now' => 'iha :time',
+    'diff_yesterday' => 'Horiseik',
+    'diff_yesterday_regexp' => 'Horiseik(?:\\s+iha)?',
+    'diff_today' => 'Ohin',
+    'diff_today_regexp' => 'Ohin(?:\\s+iha)?',
+    'diff_tomorrow' => 'Aban',
+    'diff_tomorrow_regexp' => 'Aban(?:\\s+iha)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Ohin iha] LT',
+        'nextDay' => '[Aban iha] LT',
+        'nextWeek' => 'dddd [iha] LT',
+        'lastDay' => '[Horiseik iha] LT',
+        'lastWeek' => 'dddd [semana kotuk] [iha] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':numberº',
+    'months' => ['Janeiru', 'Fevereiru', 'Marsu', 'Abril', 'Maiu', 'Juñu', 'Jullu', 'Agustu', 'Setembru', 'Outubru', 'Novembru', 'Dezembru'],
+    'months_short' => ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'],
+    'weekdays' => ['Domingu', 'Segunda', 'Tersa', 'Kuarta', 'Kinta', 'Sesta', 'Sabadu'],
+    'weekdays_short' => ['Dom', 'Seg', 'Ters', 'Kua', 'Kint', 'Sest', 'Sab'],
+    'weekdays_min' => ['Do', 'Seg', 'Te', 'Ku', 'Ki', 'Ses', 'Sa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg.php
new file mode 100644
index 0000000..b7df893
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg.php
@@ -0,0 +1,104 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Orif N. Jr
+ */
+return [
+    'year' => '{1}як сол|:count сол',
+    'month' => '{1}як моҳ|:count моҳ',
+    'week' => '{1}як ҳафта|:count ҳафта',
+    'day' => '{1}як рӯз|:count рӯз',
+    'hour' => '{1}як соат|:count соат',
+    'minute' => '{1}як дақиқа|:count дақиқа',
+    'second' => '{1}якчанд сония|:count сония',
+    'ago' => ':time пеш',
+    'from_now' => 'баъди :time',
+    'diff_today' => 'Имрӯз',
+    'diff_yesterday' => 'Дирӯз',
+    'diff_yesterday_regexp' => 'Дирӯз(?:\\s+соати)?',
+    'diff_tomorrow' => 'Пагоҳ',
+    'diff_tomorrow_regexp' => 'Пагоҳ(?:\\s+соати)?',
+    'diff_today_regexp' => 'Имрӯз(?:\\s+соати)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Имрӯз соати] LT',
+        'nextDay' => '[Пагоҳ соати] LT',
+        'nextWeek' => 'dddd[и] [ҳафтаи оянда соати] LT',
+        'lastDay' => '[Дирӯз соати] LT',
+        'lastWeek' => 'dddd[и] [ҳафтаи гузашта соати] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number) {
+        if ($number === 0) { // special case for zero
+            return "$number-ıncı";
+        }
+
+        static $suffixes = [
+            0 => '-ум',
+            1 => '-ум',
+            2 => '-юм',
+            3 => '-юм',
+            4 => '-ум',
+            5 => '-ум',
+            6 => '-ум',
+            7 => '-ум',
+            8 => '-ум',
+            9 => '-ум',
+            10 => '-ум',
+            12 => '-ум',
+            13 => '-ум',
+            20 => '-ум',
+            30 => '-юм',
+            40 => '-ум',
+            50 => '-ум',
+            60 => '-ум',
+            70 => '-ум',
+            80 => '-ум',
+            90 => '-ум',
+            100 => '-ум',
+        ];
+
+        return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'шаб';
+        }
+        if ($hour < 11) {
+            return 'субҳ';
+        }
+        if ($hour < 16) {
+            return 'рӯз';
+        }
+        if ($hour < 19) {
+            return 'бегоҳ';
+        }
+
+        return 'шаб';
+    },
+    'months' => ['январ', 'феврал', 'март', 'апрел', 'май', 'июн', 'июл', 'август', 'сентябр', 'октябр', 'ноябр', 'декабр'],
+    'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'weekdays' => ['якшанбе', 'душанбе', 'сешанбе', 'чоршанбе', 'панҷшанбе', 'ҷумъа', 'шанбе'],
+    'weekdays_short' => ['яшб', 'дшб', 'сшб', 'чшб', 'пшб', 'ҷум', 'шнб'],
+    'weekdays_min' => ['яш', 'дш', 'сш', 'чш', 'пш', 'ҷм', 'шб'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' ва '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg_TJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg_TJ.php
new file mode 100644
index 0000000..c6591e3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tg_TJ.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/tg.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th.php
new file mode 100644
index 0000000..6397f6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th.php
@@ -0,0 +1,73 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Nate Whittaker
+ * - John MacAslan
+ * - Chanintorn Asavavichairoj
+ * - JD Isaacks
+ * - ROKAISAKKON
+ * - RO'KAISAKKON
+ * - Andreas Möller
+ * - nithisa
+ */
+return [
+    'year' => ':count ปี',
+    'y' => ':count ปี',
+    'month' => ':count เดือน',
+    'm' => ':count เดือน',
+    'week' => ':count สัปดาห์',
+    'w' => ':count สัปดาห์',
+    'day' => ':count วัน',
+    'd' => ':count วัน',
+    'hour' => ':count ชั่วโมง',
+    'h' => ':count ชั่วโมง',
+    'minute' => ':count นาที',
+    'min' => ':count นาที',
+    'second' => ':count วินาที',
+    'a_second' => '{1}ไม่กี่วินาที|]1,Inf[:count วินาที',
+    's' => ':count วินาที',
+    'ago' => ':timeที่แล้ว',
+    'from_now' => 'อีก :time',
+    'after' => ':timeหลังจากนี้',
+    'before' => ':timeก่อน',
+    'diff_now' => 'ขณะนี้',
+    'diff_today' => 'วันนี้',
+    'diff_today_regexp' => 'วันนี้(?:\\s+เวลา)?',
+    'diff_yesterday' => 'เมื่อวาน',
+    'diff_yesterday_regexp' => 'เมื่อวานนี้(?:\\s+เวลา)?',
+    'diff_tomorrow' => 'พรุ่งนี้',
+    'diff_tomorrow_regexp' => 'พรุ่งนี้(?:\\s+เวลา)?',
+    'formats' => [
+        'LT' => 'H:mm',
+        'LTS' => 'H:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY เวลา H:mm',
+        'LLLL' => 'วันddddที่ D MMMM YYYY เวลา H:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[วันนี้ เวลา] LT',
+        'nextDay' => '[พรุ่งนี้ เวลา] LT',
+        'nextWeek' => 'dddd[หน้า เวลา] LT',
+        'lastDay' => '[เมื่อวานนี้ เวลา] LT',
+        'lastWeek' => '[วัน]dddd[ที่แล้ว เวลา] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ก่อนเที่ยง', 'หลังเที่ยง'],
+    'months' => ['มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน', 'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม'],
+    'months_short' => ['ม.ค.', 'ก.พ.', 'มี.ค.', 'เม.ย.', 'พ.ค.', 'มิ.ย.', 'ก.ค.', 'ส.ค.', 'ก.ย.', 'ต.ค.', 'พ.ย.', 'ธ.ค.'],
+    'weekdays' => ['อาทิตย์', 'จันทร์', 'อังคาร', 'พุธ', 'พฤหัสบดี', 'ศุกร์', 'เสาร์'],
+    'weekdays_short' => ['อาทิตย์', 'จันทร์', 'อังคาร', 'พุธ', 'พฤหัส', 'ศุกร์', 'เสาร์'],
+    'weekdays_min' => ['อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.'],
+    'list' => [', ', ' และ '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th_TH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th_TH.php
new file mode 100644
index 0000000..f11dc1b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/th_TH.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/th.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the.php
new file mode 100644
index 0000000..85f8333
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/the_NP.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the_NP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the_NP.php
new file mode 100644
index 0000000..34da162
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/the_NP.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Chitwanix OS Development    info@chitwanix.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'dddd DD MMM YYYY',
+    ],
+    'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
+    'weekdays' => ['आइतबार', 'सोमबार', 'मंगलबार', 'बुधबार', 'बिहिबार', 'शुक्रबार', 'शनिबार'],
+    'weekdays_short' => ['आइत', 'सोम', 'मंगल', 'बुध', 'बिहि', 'शुक्र', 'शनि'],
+    'weekdays_min' => ['आइत', 'सोम', 'मंगल', 'बुध', 'बिहि', 'शुक्र', 'शनि'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti.php
new file mode 100644
index 0000000..ffd3236
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ti_ER.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ER.php
new file mode 100644
index 0000000..310c51c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ER.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጥሪ', 'ለካቲት', 'መጋቢት', 'ሚያዝያ', 'ግንቦት', 'ሰነ', 'ሓምለ', 'ነሓሰ', 'መስከረም', 'ጥቅምቲ', 'ሕዳር', 'ታሕሳስ'],
+    'months_short' => ['ጥሪ ', 'ለካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰነ ', 'ሓምለ', 'ነሓሰ', 'መስከ', 'ጥቅም', 'ሕዳር', 'ታሕሳ'],
+    'weekdays' => ['ሰንበት', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'weekdays_short' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'weekdays_min' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ንጉሆ ሰዓተ', 'ድሕር ሰዓት'],
+
+    'year' => ':count ዓመት',
+    'y' => ':count ዓመት',
+    'a_year' => ':count ዓመት',
+
+    'month' => 'ወርሒ :count',
+    'm' => 'ወርሒ :count',
+    'a_month' => 'ወርሒ :count',
+
+    'week' => ':count ሰሙን',
+    'w' => ':count ሰሙን',
+    'a_week' => ':count ሰሙን',
+
+    'day' => ':count መዓልቲ',
+    'd' => ':count መዓልቲ',
+    'a_day' => ':count መዓልቲ',
+
+    'hour' => ':count ሰዓት',
+    'h' => ':count ሰዓት',
+    'a_hour' => ':count ሰዓት',
+
+    'minute' => ':count ደቒቕ',
+    'min' => ':count ደቒቕ',
+    'a_minute' => ':count ደቒቕ',
+
+    'second' => ':count ሰከንድ',
+    's' => ':count ሰከንድ',
+    'a_second' => ':count ሰከንድ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ET.php
new file mode 100644
index 0000000..024217f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ti_ET.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
+    'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
+    'weekdays' => ['ሰንበት', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'weekdays_short' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'weekdays_min' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ንጉሆ ሰዓተ', 'ድሕር ሰዓት'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig.php
new file mode 100644
index 0000000..186fe71
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tig_ER.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig_ER.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig_ER.php
new file mode 100644
index 0000000..46887b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tig_ER.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጥሪ', 'ለካቲት', 'መጋቢት', 'ሚያዝያ', 'ግንቦት', 'ሰነ', 'ሓምለ', 'ነሓሰ', 'መስከረም', 'ጥቅምቲ', 'ሕዳር', 'ታሕሳስ'],
+    'months_short' => ['ጥሪ ', 'ለካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰነ ', 'ሓምለ', 'ነሓሰ', 'መስከ', 'ጥቅም', 'ሕዳር', 'ታሕሳ'],
+    'weekdays' => ['ሰንበት ዓባይ', 'ሰኖ', 'ታላሸኖ', 'ኣረርባዓ', 'ከሚሽ', 'ጅምዓት', 'ሰንበት ንኢሽ'],
+    'weekdays_short' => ['ሰ//ዓ', 'ሰኖ ', 'ታላሸ', 'ኣረር', 'ከሚሽ', 'ጅምዓ', 'ሰ//ን'],
+    'weekdays_min' => ['ሰ//ዓ', 'ሰኖ ', 'ታላሸ', 'ኣረር', 'ከሚሽ', 'ጅምዓ', 'ሰ//ን'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ቀደም ሰር ምዕል', 'ሓቆ ሰር ምዕል'],
+
+    'year' => ':count ማይ', // less reliable
+    'y' => ':count ማይ', // less reliable
+    'a_year' => ':count ማይ', // less reliable
+
+    'month' => ':count ሸምሽ', // less reliable
+    'm' => ':count ሸምሽ', // less reliable
+    'a_month' => ':count ሸምሽ', // less reliable
+
+    'week' => ':count ሰቡዕ', // less reliable
+    'w' => ':count ሰቡዕ', // less reliable
+    'a_week' => ':count ሰቡዕ', // less reliable
+
+    'day' => ':count ዎሮ', // less reliable
+    'd' => ':count ዎሮ', // less reliable
+    'a_day' => ':count ዎሮ', // less reliable
+
+    'hour' => ':count ሰዓት', // less reliable
+    'h' => ':count ሰዓት', // less reliable
+    'a_hour' => ':count ሰዓት', // less reliable
+
+    'minute' => ':count ካልኣይት', // less reliable
+    'min' => ':count ካልኣይት', // less reliable
+    'a_minute' => ':count ካልኣይት', // less reliable
+
+    'second' => ':count ካልኣይ',
+    's' => ':count ካልኣይ',
+    'a_second' => ':count ካልኣይ',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk.php
new file mode 100644
index 0000000..d8f7d19
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tk_TM.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk_TM.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk_TM.php
new file mode 100644
index 0000000..f949a43
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tk_TM.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Authors:
+ * - Ghorban M. Tavakoly Pablo Saratxaga & Ghorban M. Tavakoly pablo@walon.org & gmt314@yahoo.com
+ * - SuperManPHP
+ * - Maksat Meredow (isadma)
+ */
+$transformDiff = function ($input) {
+    return strtr($input, [
+        'sekunt' => 'sekunt',
+        'hepde' => 'hepde',
+    ]);
+};
+
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Ýanwar', 'Fewral', 'Mart', 'Aprel', 'Maý', 'Iýun', 'Iýul', 'Awgust', 'Sentýabr', 'Oktýabr', 'Noýabr', 'Dekabr'],
+    'months_short' => ['Ýan', 'Few', 'Mar', 'Apr', 'Maý', 'Iýn', 'Iýl', 'Awg', 'Sen', 'Okt', 'Noý', 'Dek'],
+    'weekdays' => ['Duşenbe', 'Sişenbe', 'Çarşenbe', 'Penşenbe', 'Anna', 'Şenbe', 'Ýekşenbe'],
+    'weekdays_short' => ['Duş', 'Siş', 'Çar', 'Pen', 'Ann', 'Şen', 'Ýek'],
+    'weekdays_min' => ['Du', 'Si', 'Ça', 'Pe', 'An', 'Şe', 'Ýe'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count ýyl',
+    'y' => ':count ýyl',
+    'a_year' => ':count ýyl',
+
+    'month' => ':count aý',
+    'm' => ':count aý',
+    'a_month' => ':count aý',
+
+    'week' => ':count hepde',
+    'w' => ':count hepde',
+    'a_week' => ':count hepde',
+
+    'day' => ':count gün',
+    'd' => ':count gün',
+    'a_day' => ':count gün',
+
+    'hour' => ':count sagat',
+    'h' => ':count sagat',
+    'a_hour' => ':count sagat',
+
+    'minute' => ':count minut',
+    'min' => ':count minut',
+    'a_minute' => ':count minut',
+
+    'second' => ':count sekunt',
+    's' => ':count sekunt',
+    'a_second' => ':count sekunt',
+
+    'ago' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' ozal';
+    },
+    'from_now' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' soňra';
+    },
+    'after' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' soň';
+    },
+    'before' => function ($time) use ($transformDiff) {
+        return $transformDiff($time).' öň';
+    },
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl.php
new file mode 100644
index 0000000..410a266
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl.php
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return [
+    'year' => ':count taon',
+    'a_year' => '{1}isang taon|:count taon',
+    'month' => ':count buwan',
+    'a_month' => '{1}isang buwan|:count buwan',
+    'week' => ':count linggo',
+    'a_week' => '{1}isang linggo|:count linggo',
+    'day' => ':count araw',
+    'a_day' => '{1}isang araw|:count araw',
+    'hour' => ':count oras',
+    'a_hour' => '{1}isang oras|:count oras',
+    'minute' => ':count minuto',
+    'a_minute' => '{1}isang minuto|:count minuto',
+    'min' => ':count min.',
+    'second' => ':count segundo',
+    'a_second' => '{1}ilang segundo|:count segundo',
+    's' => ':count seg.',
+    'ago' => ':time ang nakalipas',
+    'from_now' => 'sa loob ng :time',
+    'diff_now' => 'ngayon',
+    'diff_today' => 'ngayong',
+    'diff_today_regexp' => 'ngayong(?:\\s+araw)?',
+    'diff_yesterday' => 'kahapon',
+    'diff_tomorrow' => 'bukas',
+    'diff_tomorrow_regexp' => 'Bukas(?:\\s+ng)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'MM/D/YYYY',
+        'LL' => 'MMMM D, YYYY',
+        'LLL' => 'MMMM D, YYYY HH:mm',
+        'LLLL' => 'dddd, MMMM DD, YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => 'LT [ngayong araw]',
+        'nextDay' => '[Bukas ng] LT',
+        'nextWeek' => 'LT [sa susunod na] dddd',
+        'lastDay' => 'LT [kahapon]',
+        'lastWeek' => 'LT [noong nakaraang] dddd',
+        'sameElse' => 'L',
+    ],
+    'months' => ['Enero', 'Pebrero', 'Marso', 'Abril', 'Mayo', 'Hunyo', 'Hulyo', 'Agosto', 'Setyembre', 'Oktubre', 'Nobyembre', 'Disyembre'],
+    'months_short' => ['Ene', 'Peb', 'Mar', 'Abr', 'May', 'Hun', 'Hul', 'Ago', 'Set', 'Okt', 'Nob', 'Dis'],
+    'weekdays' => ['Linggo', 'Lunes', 'Martes', 'Miyerkules', 'Huwebes', 'Biyernes', 'Sabado'],
+    'weekdays_short' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
+    'weekdays_min' => ['Li', 'Lu', 'Ma', 'Mi', 'Hu', 'Bi', 'Sab'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' at '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl_PH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl_PH.php
new file mode 100644
index 0000000..95f508c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tl_PH.php
@@ -0,0 +1,18 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Ian De La Cruz
+ * - JD Isaacks
+ */
+return require __DIR__.'/tl.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tlh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tlh.php
new file mode 100644
index 0000000..fbf9e6f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tlh.php
@@ -0,0 +1,72 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Serhan Apaydın
+ * - Dominika
+ */
+return [
+    'year' => '{1}wa’ DIS|:count DIS',
+    'month' => '{1}wa’ jar|:count jar',
+    'week' => '{1}wa’ hogh|:count hogh',
+    'day' => '{1}wa’ jaj|:count jaj',
+    'hour' => '{1}wa’ rep|:count rep',
+    'minute' => '{1}wa’ tup|:count tup',
+    'second' => '{1}puS lup|:count lup',
+    'ago' => function ($time) {
+        $output = strtr($time, [
+            'jaj' => 'Hu’',
+            'jar' => 'wen',
+            'DIS' => 'ben',
+        ]);
+
+        return $output === $time ? "$time ret" : $output;
+    },
+    'from_now' => function ($time) {
+        $output = strtr($time, [
+            'jaj' => 'leS',
+            'jar' => 'waQ',
+            'DIS' => 'nem',
+        ]);
+
+        return $output === $time ? "$time pIq" : $output;
+    },
+    'diff_yesterday' => 'wa’Hu’',
+    'diff_today' => 'DaHjaj',
+    'diff_tomorrow' => 'wa’leS',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[DaHjaj] LT',
+        'nextDay' => '[wa’leS] LT',
+        'nextWeek' => 'LLL',
+        'lastDay' => '[wa’Hu’] LT',
+        'lastWeek' => 'LLL',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => ':number.',
+    'months' => ['tera’ jar wa’', 'tera’ jar cha’', 'tera’ jar wej', 'tera’ jar loS', 'tera’ jar vagh', 'tera’ jar jav', 'tera’ jar Soch', 'tera’ jar chorgh', 'tera’ jar Hut', 'tera’ jar wa’maH', 'tera’ jar wa’maH wa’', 'tera’ jar wa’maH cha’'],
+    'months_short' => ['jar wa’', 'jar cha’', 'jar wej', 'jar loS', 'jar vagh', 'jar jav', 'jar Soch', 'jar chorgh', 'jar Hut', 'jar wa’maH', 'jar wa’maH wa’', 'jar wa’maH cha’'],
+    'weekdays' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
+    'weekdays_short' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
+    'weekdays_min' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' ’ej '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn.php
new file mode 100644
index 0000000..f29bdf6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tn_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn_ZA.php
new file mode 100644
index 0000000..aada7db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tn_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Ferikgong', 'Tlhakole', 'Mopitlwe', 'Moranang', 'Motsheganong', 'Seetebosigo', 'Phukwi', 'Phatwe', 'Lwetse', 'Diphalane', 'Ngwanatsele', 'Sedimonthole'],
+    'months_short' => ['Fer', 'Tlh', 'Mop', 'Mor', 'Mot', 'See', 'Phu', 'Pha', 'Lwe', 'Dip', 'Ngw', 'Sed'],
+    'weekdays' => ['laTshipi', 'Mosupologo', 'Labobedi', 'Laboraro', 'Labone', 'Labotlhano', 'Lamatlhatso'],
+    'weekdays_short' => ['Tsh', 'Mos', 'Bed', 'Rar', 'Ne', 'Tlh', 'Mat'],
+    'weekdays_min' => ['Tsh', 'Mos', 'Bed', 'Rar', 'Ne', 'Tlh', 'Mat'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'dingwaga di le :count',
+    'y' => 'dingwaga di le :count',
+    'a_year' => 'dingwaga di le :count',
+
+    'month' => 'dikgwedi di le :count',
+    'm' => 'dikgwedi di le :count',
+    'a_month' => 'dikgwedi di le :count',
+
+    'week' => 'dibeke di le :count',
+    'w' => 'dibeke di le :count',
+    'a_week' => 'dibeke di le :count',
+
+    'day' => 'malatsi :count',
+    'd' => 'malatsi :count',
+    'a_day' => 'malatsi :count',
+
+    'hour' => 'diura di le :count',
+    'h' => 'diura di le :count',
+    'a_hour' => 'diura di le :count',
+
+    'minute' => 'metsotso e le :count',
+    'min' => 'metsotso e le :count',
+    'a_minute' => 'metsotso e le :count',
+
+    'second' => 'metsotswana e le :count',
+    's' => 'metsotswana e le :count',
+    'a_second' => 'metsotswana e le :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to.php
new file mode 100644
index 0000000..20581bb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/to_TO.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to_TO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to_TO.php
new file mode 100644
index 0000000..335c69a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/to_TO.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - International Components for Unicode    akhilesh.k@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'dddd DD MMM YYYY',
+    ],
+    'months' => ['Sānuali', 'Fēpueli', 'Maʻasi', 'ʻEpeleli', 'Mē', 'Sune', 'Siulai', 'ʻAokosi', 'Sepitema', 'ʻOkatopa', 'Nōvema', 'Tīsema'],
+    'months_short' => ['Sān', 'Fēp', 'Maʻa', 'ʻEpe', 'Mē', 'Sun', 'Siu', 'ʻAok', 'Sep', 'ʻOka', 'Nōv', 'Tīs'],
+    'weekdays' => ['Sāpate', 'Mōnite', 'Tūsite', 'Pulelulu', 'Tuʻapulelulu', 'Falaite', 'Tokonaki'],
+    'weekdays_short' => ['Sāp', 'Mōn', 'Tūs', 'Pul', 'Tuʻa', 'Fal', 'Tok'],
+    'weekdays_min' => ['Sāp', 'Mōn', 'Tūs', 'Pul', 'Tuʻa', 'Fal', 'Tok'],
+    'meridiem' => ['hengihengi', 'efiafi'],
+
+    'year' => ':count fitu', // less reliable
+    'y' => ':count fitu', // less reliable
+    'a_year' => ':count fitu', // less reliable
+
+    'month' => ':count mahina', // less reliable
+    'm' => ':count mahina', // less reliable
+    'a_month' => ':count mahina', // less reliable
+
+    'week' => ':count Sapate', // less reliable
+    'w' => ':count Sapate', // less reliable
+    'a_week' => ':count Sapate', // less reliable
+
+    'day' => ':count ʻaho', // less reliable
+    'd' => ':count ʻaho', // less reliable
+    'a_day' => ':count ʻaho', // less reliable
+
+    'hour' => ':count houa',
+    'h' => ':count houa',
+    'a_hour' => ':count houa',
+
+    'minute' => ':count miniti',
+    'min' => ':count miniti',
+    'a_minute' => ':count miniti',
+
+    'second' => ':count sekoni',
+    's' => ':count sekoni',
+    'a_second' => ':count sekoni',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi.php
new file mode 100644
index 0000000..7d38dae
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tpi_PG.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi_PG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi_PG.php
new file mode 100644
index 0000000..5f58c44
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tpi_PG.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Samsung Electronics Co., Ltd.    akhilesh.k@samsung.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Janueri', 'Februeri', 'Mas', 'Epril', 'Me', 'Jun', 'Julai', 'Ogas', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mas', 'Epr', 'Me', 'Jun', 'Jul', 'Oga', 'Sep', 'Okt', 'Nov', 'Des'],
+    'weekdays' => ['Sande', 'Mande', 'Tunde', 'Trinde', 'Fonde', 'Fraide', 'Sarere'],
+    'weekdays_short' => ['San', 'Man', 'Tun', 'Tri', 'Fon', 'Fra', 'Sar'],
+    'weekdays_min' => ['San', 'Man', 'Tun', 'Tri', 'Fon', 'Fra', 'Sar'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['biknait', 'apinun'],
+
+    'year' => 'yia :count',
+    'y' => 'yia :count',
+    'a_year' => 'yia :count',
+
+    'month' => ':count mun',
+    'm' => ':count mun',
+    'a_month' => ':count mun',
+
+    'week' => ':count wik',
+    'w' => ':count wik',
+    'a_week' => ':count wik',
+
+    'day' => ':count de',
+    'd' => ':count de',
+    'a_day' => ':count de',
+
+    'hour' => ':count aua',
+    'h' => ':count aua',
+    'a_hour' => ':count aua',
+
+    'minute' => ':count minit',
+    'min' => ':count minit',
+    'a_minute' => ':count minit',
+
+    'second' => ':count namba tu',
+    's' => ':count namba tu',
+    'a_second' => ':count namba tu',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr.php
new file mode 100644
index 0000000..f5d9f4c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr.php
@@ -0,0 +1,121 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Alan Agius
+ * - Erhan Gundogan
+ * - François B
+ * - JD Isaacks
+ * - Murat Yüksel
+ * - Baran Şengül
+ * - Selami (selamialtin)
+ * - TeomanBey
+ */
+return [
+    'year' => ':count yıl',
+    'a_year' => '{1}bir yıl|]1,Inf[:count yıl',
+    'y' => ':county',
+    'month' => ':count ay',
+    'a_month' => '{1}bir ay|]1,Inf[:count ay',
+    'm' => ':countay',
+    'week' => ':count hafta',
+    'a_week' => '{1}bir hafta|]1,Inf[:count hafta',
+    'w' => ':counth',
+    'day' => ':count gün',
+    'a_day' => '{1}bir gün|]1,Inf[:count gün',
+    'd' => ':countg',
+    'hour' => ':count saat',
+    'a_hour' => '{1}bir saat|]1,Inf[:count saat',
+    'h' => ':countsa',
+    'minute' => ':count dakika',
+    'a_minute' => '{1}bir dakika|]1,Inf[:count dakika',
+    'min' => ':countdk',
+    'second' => ':count saniye',
+    'a_second' => '{1}birkaç saniye|]1,Inf[:count saniye',
+    's' => ':countsn',
+    'ago' => ':time önce',
+    'from_now' => ':time sonra',
+    'after' => ':time sonra',
+    'before' => ':time önce',
+    'diff_now' => 'şimdi',
+    'diff_today' => 'bugün',
+    'diff_today_regexp' => 'bugün(?:\\s+saat)?',
+    'diff_yesterday' => 'dün',
+    'diff_tomorrow' => 'yarın',
+    'diff_tomorrow_regexp' => 'yarın(?:\\s+saat)?',
+    'diff_before_yesterday' => 'evvelsi gün',
+    'diff_after_tomorrow' => 'öbür gün',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[bugün saat] LT',
+        'nextDay' => '[yarın saat] LT',
+        'nextWeek' => '[gelecek] dddd [saat] LT',
+        'lastDay' => '[dün] LT',
+        'lastWeek' => '[geçen] dddd [saat] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'Do':
+            case 'DD':
+                return $number;
+            default:
+                if ($number === 0) {  // special case for zero
+                    return "$number'ıncı";
+                }
+
+                static $suffixes = [
+                    1 => '\'inci',
+                    5 => '\'inci',
+                    8 => '\'inci',
+                    70 => '\'inci',
+                    80 => '\'inci',
+                    2 => '\'nci',
+                    7 => '\'nci',
+                    20 => '\'nci',
+                    50 => '\'nci',
+                    3 => '\'üncü',
+                    4 => '\'üncü',
+                    100 => '\'üncü',
+                    6 => '\'ncı',
+                    9 => '\'uncu',
+                    10 => '\'uncu',
+                    30 => '\'uncu',
+                    60 => '\'ıncı',
+                    90 => '\'ıncı',
+                ];
+
+                $lastDigit = $number % 10;
+
+                return $number.($suffixes[$lastDigit] ?? $suffixes[$number % 100 - $lastDigit] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
+        }
+    },
+    'meridiem' => ['ÖÖ', 'ÖS', 'öö', 'ös'],
+    'months' => ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'],
+    'months_short' => ['Oca', 'Şub', 'Mar', 'Nis', 'May', 'Haz', 'Tem', 'Ağu', 'Eyl', 'Eki', 'Kas', 'Ara'],
+    'weekdays' => ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'],
+    'weekdays_short' => ['Paz', 'Pts', 'Sal', 'Çar', 'Per', 'Cum', 'Cts'],
+    'weekdays_min' => ['Pz', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' ve '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_CY.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_CY.php
new file mode 100644
index 0000000..1937fec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_CY.php
@@ -0,0 +1,22 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/tr.php', [
+    'weekdays_short' => ['Paz', 'Pzt', 'Sal', 'Çar', 'Per', 'Cum', 'Cmt'],
+    'weekdays_min' => ['Pa', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'],
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'D.MM.YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'D MMMM YYYY dddd h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_TR.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_TR.php
new file mode 100644
index 0000000..dc8e935
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tr_TR.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/tr.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts.php
new file mode 100644
index 0000000..525736b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ts_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts_ZA.php
new file mode 100644
index 0000000..37a24ec
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ts_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Sunguti', 'Nyenyenyani', 'Nyenyankulu', 'Dzivamisoko', 'Mudyaxihi', 'Khotavuxika', 'Mawuwani', 'Mhawuri', 'Ndzhati', 'Nhlangula', 'Hukuri', 'N\'wendzamhala'],
+    'months_short' => ['Sun', 'Yan', 'Kul', 'Dzi', 'Mud', 'Kho', 'Maw', 'Mha', 'Ndz', 'Nhl', 'Huk', 'N\'w'],
+    'weekdays' => ['Sonto', 'Musumbhunuku', 'Ravumbirhi', 'Ravunharhu', 'Ravumune', 'Ravuntlhanu', 'Mugqivela'],
+    'weekdays_short' => ['Son', 'Mus', 'Bir', 'Har', 'Ne', 'Tlh', 'Mug'],
+    'weekdays_min' => ['Son', 'Mus', 'Bir', 'Har', 'Ne', 'Tlh', 'Mug'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'malembe ya :count',
+    'y' => 'malembe ya :count',
+    'a_year' => 'malembe ya :count',
+
+    'month' => 'tin’hweti ta :count',
+    'm' => 'tin’hweti ta :count',
+    'a_month' => 'tin’hweti ta :count',
+
+    'week' => 'mavhiki ya :count',
+    'w' => 'mavhiki ya :count',
+    'a_week' => 'mavhiki ya :count',
+
+    'day' => 'masiku :count',
+    'd' => 'masiku :count',
+    'a_day' => 'masiku :count',
+
+    'hour' => 'tiawara ta :count',
+    'h' => 'tiawara ta :count',
+    'a_hour' => 'tiawara ta :count',
+
+    'minute' => 'timinete ta :count',
+    'min' => 'timinete ta :count',
+    'a_minute' => 'timinete ta :count',
+
+    'second' => 'tisekoni ta :count',
+    's' => 'tisekoni ta :count',
+    'a_second' => 'tisekoni ta :count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt.php
new file mode 100644
index 0000000..d67d896
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/tt_RU.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU.php
new file mode 100644
index 0000000..38e42d0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Rinat Norkin Pablo Saratxaga, Rinat Norkin pablo@mandrakesoft.com, rinat@taif.ru
+ */
+return [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'DD MMM, HH:mm',
+        'LLLL' => 'DD MMMM YYYY, HH:mm',
+    ],
+    'months' => ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'],
+    'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'weekdays' => ['якшәмбе', 'дышәмбе', 'сишәмбе', 'чәршәәмбе', 'пәнҗешмбе', 'җомга', 'шимбә'],
+    'weekdays_short' => ['якш', 'дыш', 'сиш', 'чәрш', 'пәнҗ', 'җом', 'шим'],
+    'weekdays_min' => ['якш', 'дыш', 'сиш', 'чәрш', 'пәнҗ', 'җом', 'шим'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'year' => ':count ел',
+    'month' => ':count ай',
+    'week' => ':count атна',
+    'day' => ':count көн',
+    'hour' => ':count сәгать',
+    'minute' => ':count минут',
+    'second' => ':count секунд',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU@iqtelif.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU@iqtelif.php
new file mode 100644
index 0000000..16b8efb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tt_RU@iqtelif.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Reshat Sabiq tatar.iqtelif.i18n@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD.MM.YYYY',
+    ],
+    'months' => ['Ğınwar', 'Fiwral\'', 'Mart', 'April', 'May', 'Yün', 'Yül', 'Awgust', 'Sintebír', 'Üktebír', 'Noyebír', 'Dikebír'],
+    'months_short' => ['Ğın', 'Fiw', 'Mar', 'Apr', 'May', 'Yün', 'Yül', 'Awg', 'Sin', 'Ükt', 'Noy', 'Dik'],
+    'weekdays' => ['Yekşembí', 'Düşembí', 'Sişembí', 'Çerşembí', 'Pencíşembí', 'Comğa', 'Şimbe'],
+    'weekdays_short' => ['Yek', 'Düş', 'Siş', 'Çer', 'Pen', 'Com', 'Şim'],
+    'weekdays_min' => ['Yek', 'Düş', 'Siş', 'Çer', 'Pen', 'Com', 'Şim'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ÖA', 'ÖS'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/twq.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/twq.php
new file mode 100644
index 0000000..e8ff278
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/twq.php
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/ses.php', [
+    'meridiem' => ['Subbaahi', 'Zaarikay b'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzl.php
new file mode 100644
index 0000000..50bf26d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzl.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return [
+    'year' => '[0,1]:count ar|:count ars',
+    'y' => '[0,1]:count ar|:count ars',
+    'month' => '[0,1]:count mes|:count mesen',
+    'm' => '[0,1]:count mes|:count mesen',
+    'week' => '[0,1]:count seifetziua|:count seifetziuas',
+    'w' => '[0,1]:count seifetziua|:count seifetziuas',
+    'day' => '[0,1]:count ziua|:count ziuas',
+    'd' => '[0,1]:count ziua|:count ziuas',
+    'hour' => '[0,1]:count þora|:count þoras',
+    'h' => '[0,1]:count þora|:count þoras',
+    'minute' => '[0,1]:count míut|:count míuts',
+    'min' => '[0,1]:count míut|:count míuts',
+    'second' => ':count secunds',
+    's' => ':count secunds',
+
+    'ago' => 'ja :time',
+    'from_now' => 'osprei :time',
+
+    'diff_yesterday' => 'ieiri',
+    'diff_yesterday_regexp' => 'ieiri(?:\\s+à)?',
+    'diff_today' => 'oxhi',
+    'diff_today_regexp' => 'oxhi(?:\\s+à)?',
+    'diff_tomorrow' => 'demà',
+    'diff_tomorrow_regexp' => 'demà(?:\\s+à)?',
+
+    'formats' => [
+        'LT' => 'HH.mm',
+        'LTS' => 'HH.mm.ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D. MMMM [dallas] YYYY',
+        'LLL' => 'D. MMMM [dallas] YYYY HH.mm',
+        'LLLL' => 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',
+    ],
+
+    'calendar' => [
+        'sameDay' => '[oxhi à] LT',
+        'nextDay' => '[demà à] LT',
+        'nextWeek' => 'dddd [à] LT',
+        'lastDay' => '[ieiri à] LT',
+        'lastWeek' => '[sür el] dddd [lasteu à] LT',
+        'sameElse' => 'L',
+    ],
+
+    'meridiem' => ["D'A", "D'O"],
+    'months' => ['Januar', 'Fevraglh', 'Març', 'Avrïu', 'Mai', 'Gün', 'Julia', 'Guscht', 'Setemvar', 'Listopäts', 'Noemvar', 'Zecemvar'],
+    'months_short' => ['Jan', 'Fev', 'Mar', 'Avr', 'Mai', 'Gün', 'Jul', 'Gus', 'Set', 'Lis', 'Noe', 'Zec'],
+    'weekdays' => ['Súladi', 'Lúneçi', 'Maitzi', 'Márcuri', 'Xhúadi', 'Viénerçi', 'Sáturi'],
+    'weekdays_short' => ['Súl', 'Lún', 'Mai', 'Már', 'Xhú', 'Vié', 'Sát'],
+    'weekdays_min' => ['Sú', 'Lú', 'Ma', 'Má', 'Xh', 'Vi', 'Sá'],
+    'ordinal' => ':number.',
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm.php
new file mode 100644
index 0000000..2a1a0f2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm.php
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ */
+return [
+    'year' => '{1}ⴰⵙⴳⴰⵙ|:count ⵉⵙⴳⴰⵙⵏ',
+    'month' => '{1}ⴰⵢoⵓⵔ|:count ⵉⵢⵢⵉⵔⵏ',
+    'week' => ':count ⵉⵎⴰⵍⴰⵙⵙ',
+    'day' => '{1}ⴰⵙⵙ|:count oⵙⵙⴰⵏ',
+    'hour' => '{1}ⵙⴰⵄⴰ|:count ⵜⴰⵙⵙⴰⵄⵉⵏ',
+    'minute' => '{1}ⵎⵉⵏⵓⴺ|:count ⵎⵉⵏⵓⴺ',
+    'second' => '{1}ⵉⵎⵉⴽ|:count ⵉⵎⵉⴽ',
+    'ago' => 'ⵢⴰⵏ :time',
+    'from_now' => 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ :time',
+    'diff_today' => 'ⴰⵙⴷⵅ',
+    'diff_yesterday' => 'ⴰⵚⴰⵏⵜ',
+    'diff_yesterday_regexp' => 'ⴰⵚⴰⵏⵜ(?:\\s+ⴴ)?',
+    'diff_tomorrow' => 'ⴰⵙⴽⴰ',
+    'diff_tomorrow_regexp' => 'ⴰⵙⴽⴰ(?:\\s+ⴴ)?',
+    'diff_today_regexp' => 'ⴰⵙⴷⵅ(?:\\s+ⴴ)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ⴰⵙⴷⵅ ⴴ] LT',
+        'nextDay' => '[ⴰⵙⴽⴰ ⴴ] LT',
+        'nextWeek' => 'dddd [ⴴ] LT',
+        'lastDay' => '[ⴰⵚⴰⵏⵜ ⴴ] LT',
+        'lastWeek' => 'dddd [ⴴ] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⵏⴱⵉⵔ'],
+    'months_short' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⵏⴱⵉⵔ'],
+    'weekdays' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
+    'weekdays_short' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
+    'weekdays_min' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+    'weekend' => [5, 6],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm_Latn.php
new file mode 100644
index 0000000..5840d20
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/tzm_Latn.php
@@ -0,0 +1,64 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - JD Isaacks
+ */
+return [
+    'year' => '{1}:count asgas|:count isgasn',
+    'a_year' => 'asgas|:count isgasn',
+    'month' => '{1}:count ayowr|:count iyyirn',
+    'a_month' => 'ayowr|:count iyyirn',
+    'week' => ':count imalass',
+    'a_week' => ':imalass',
+    'day' => '{1}:count ass|:count ossan',
+    'a_day' => 'ass|:count ossan',
+    'hour' => '{1}:count saɛa|:count tassaɛin',
+    'a_hour' => '{1}saɛa|:count tassaɛin',
+    'minute' => ':count minuḍ',
+    'a_minute' => '{1}minuḍ|:count minuḍ',
+    'second' => ':count imik',
+    'a_second' => '{1}imik|:count imik',
+    'ago' => 'yan :time',
+    'from_now' => 'dadkh s yan :time',
+    'diff_yesterday' => 'assant',
+    'diff_yesterday_regexp' => 'assant(?:\\s+g)?',
+    'diff_today' => 'asdkh',
+    'diff_today_regexp' => 'asdkh(?:\\s+g)?',
+    'diff_tomorrow' => 'aska',
+    'diff_tomorrow_regexp' => 'aska(?:\\s+g)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[asdkh g] LT',
+        'nextDay' => '[aska g] LT',
+        'nextWeek' => 'dddd [g] LT',
+        'lastDay' => '[assant g] LT',
+        'lastWeek' => 'dddd [g] LT',
+        'sameElse' => 'L',
+    ],
+    'months' => ['innayr', 'brˤayrˤ', 'marˤsˤ', 'ibrir', 'mayyw', 'ywnyw', 'ywlywz', 'ɣwšt', 'šwtanbir', 'ktˤwbrˤ', 'nwwanbir', 'dwjnbir'],
+    'months_short' => ['innayr', 'brˤayrˤ', 'marˤsˤ', 'ibrir', 'mayyw', 'ywnyw', 'ywlywz', 'ɣwšt', 'šwtanbir', 'ktˤwbrˤ', 'nwwanbir', 'dwjnbir'],
+    'weekdays' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
+    'weekdays_short' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
+    'weekdays_min' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
+    'meridiem' => ['Zdat azal', 'Ḍeffir aza'],
+    'first_day_of_week' => 6,
+    'day_of_first_week_of_year' => 1,
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug.php
new file mode 100644
index 0000000..259b99a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug.php
@@ -0,0 +1,90 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - yasinn
+ */
+return [
+    'year' => '{1}'.'بىر يىل'.'|:count '.'يىل',
+    'month' => '{1}'.'بىر ئاي'.'|:count '.'ئاي',
+    'week' => '{1}'.'بىر ھەپتە'.'|:count '.'ھەپتە',
+    'day' => '{1}'.'بىر كۈن'.'|:count '.'كۈن',
+    'hour' => '{1}'.'بىر سائەت'.'|:count '.'سائەت',
+    'minute' => '{1}'.'بىر مىنۇت'.'|:count '.'مىنۇت',
+    'second' => '{1}'.'نەچچە سېكونت'.'|:count '.'سېكونت',
+    'ago' => ':time بۇرۇن',
+    'from_now' => ':time كېيىن',
+    'diff_today' => 'بۈگۈن',
+    'diff_yesterday' => 'تۆنۈگۈن',
+    'diff_tomorrow' => 'ئەتە',
+    'diff_tomorrow_regexp' => 'ئەتە(?:\\s+سائەت)?',
+    'diff_today_regexp' => 'بۈگۈن(?:\\s+سائەت)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-DD',
+        'LL' => 'YYYY-يىلىM-ئاينىڭD-كۈنى',
+        'LLL' => 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',
+        'LLLL' => 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[بۈگۈن سائەت] LT',
+        'nextDay' => '[ئەتە سائەت] LT',
+        'nextWeek' => '[كېلەركى] dddd [سائەت] LT',
+        'lastDay' => '[تۆنۈگۈن] LT',
+        'lastWeek' => '[ئالدىنقى] dddd [سائەت] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'DDD':
+                return $number.'-كۈنى';
+            case 'w':
+            case 'W':
+                return $number.'-ھەپتە';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour, $minute) {
+        $time = $hour * 100 + $minute;
+        if ($time < 600) {
+            return 'يېرىم كېچە';
+        }
+        if ($time < 900) {
+            return 'سەھەر';
+        }
+        if ($time < 1130) {
+            return 'چۈشتىن بۇرۇن';
+        }
+        if ($time < 1230) {
+            return 'چۈش';
+        }
+        if ($time < 1800) {
+            return 'چۈشتىن كېيىن';
+        }
+
+        return 'كەچ';
+    },
+    'months' => ['يانۋار', 'فېۋرال', 'مارت', 'ئاپرېل', 'ماي', 'ئىيۇن', 'ئىيۇل', 'ئاۋغۇست', 'سېنتەبىر', 'ئۆكتەبىر', 'نويابىر', 'دېكابىر'],
+    'months_short' => ['يانۋار', 'فېۋرال', 'مارت', 'ئاپرېل', 'ماي', 'ئىيۇن', 'ئىيۇل', 'ئاۋغۇست', 'سېنتەبىر', 'ئۆكتەبىر', 'نويابىر', 'دېكابىر'],
+    'weekdays' => ['يەكشەنبە', 'دۈشەنبە', 'سەيشەنبە', 'چارشەنبە', 'پەيشەنبە', 'جۈمە', 'شەنبە'],
+    'weekdays_short' => ['يە', 'دۈ', 'سە', 'چا', 'پە', 'جۈ', 'شە'],
+    'weekdays_min' => ['يە', 'دۈ', 'سە', 'چا', 'پە', 'جۈ', 'شە'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' ۋە '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug_CN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug_CN.php
new file mode 100644
index 0000000..deb828c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ug_CN.php
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - Alim Boyaq
+ */
+return require __DIR__.'/ug.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk.php
new file mode 100644
index 0000000..ab2d867
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk.php
@@ -0,0 +1,208 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+$processHoursFunction = function (\Carbon\CarbonInterface $date, string $format) {
+    return $format.'о'.($date->hour === 11 ? 'б' : '').'] LT';
+};
+
+/*
+ * Authors:
+ * - Kunal Marwaha
+ * - Josh Soref
+ * - François B
+ * - Tim Fish
+ * - Serhan Apaydın
+ * - Max Mykhailenko
+ * - JD Isaacks
+ * - Max Kovpak
+ * - AucT
+ * - Philippe Vaucher
+ * - Ilya Shaplyko
+ * - Vadym Ievsieiev
+ * - Denys Kurets
+ * - Igor Kasyanchuk
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Oleh
+ * - epaminond
+ * - Juanito Fatas
+ * - Vitalii Khustochka
+ * - Akira Matsuda
+ * - Christopher Dell
+ * - Enrique Vidal
+ * - Simone Carletti
+ * - Aaron Patterson
+ * - Andriy Tyurnikov
+ * - Nicolás Hock Isaza
+ * - Iwakura Taro
+ * - Andrii Ponomarov
+ * - alecrabbit
+ * - vystepanenko
+ * - AlexWalkerson
+ * - Andre Havryliuk (Andrend)
+ * - Max Datsenko (datsenko-md)
+ */
+return [
+    'year' => ':count рік|:count роки|:count років',
+    'y' => ':countр',
+    'a_year' => '{1}рік|:count рік|:count роки|:count років',
+    'month' => ':count місяць|:count місяці|:count місяців',
+    'm' => ':countм',
+    'a_month' => '{1}місяць|:count місяць|:count місяці|:count місяців',
+    'week' => ':count тиждень|:count тижні|:count тижнів',
+    'w' => ':countт',
+    'a_week' => '{1}тиждень|:count тиждень|:count тижні|:count тижнів',
+    'day' => ':count день|:count дні|:count днів',
+    'd' => ':countд',
+    'a_day' => '{1}день|:count день|:count дні|:count днів',
+    'hour' => ':count година|:count години|:count годин',
+    'h' => ':countг',
+    'a_hour' => '{1}година|:count година|:count години|:count годин',
+    'minute' => ':count хвилина|:count хвилини|:count хвилин',
+    'min' => ':countхв',
+    'a_minute' => '{1}хвилина|:count хвилина|:count хвилини|:count хвилин',
+    'second' => ':count секунда|:count секунди|:count секунд',
+    's' => ':countсек',
+    'a_second' => '{1}декілька секунд|:count секунда|:count секунди|:count секунд',
+
+    'hour_ago' => ':count годину|:count години|:count годин',
+    'a_hour_ago' => '{1}годину|:count годину|:count години|:count годин',
+    'minute_ago' => ':count хвилину|:count хвилини|:count хвилин',
+    'a_minute_ago' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
+    'second_ago' => ':count секунду|:count секунди|:count секунд',
+    'a_second_ago' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
+
+    'hour_from_now' => ':count годину|:count години|:count годин',
+    'a_hour_from_now' => '{1}годину|:count годину|:count години|:count годин',
+    'minute_from_now' => ':count хвилину|:count хвилини|:count хвилин',
+    'a_minute_from_now' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
+    'second_from_now' => ':count секунду|:count секунди|:count секунд',
+    'a_second_from_now' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
+
+    'hour_after' => ':count годину|:count години|:count годин',
+    'a_hour_after' => '{1}годину|:count годину|:count години|:count годин',
+    'minute_after' => ':count хвилину|:count хвилини|:count хвилин',
+    'a_minute_after' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
+    'second_after' => ':count секунду|:count секунди|:count секунд',
+    'a_second_after' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
+
+    'hour_before' => ':count годину|:count години|:count годин',
+    'a_hour_before' => '{1}годину|:count годину|:count години|:count годин',
+    'minute_before' => ':count хвилину|:count хвилини|:count хвилин',
+    'a_minute_before' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
+    'second_before' => ':count секунду|:count секунди|:count секунд',
+    'a_second_before' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
+
+    'ago' => ':time тому',
+    'from_now' => 'за :time',
+    'after' => ':time після',
+    'before' => ':time до',
+    'diff_now' => 'щойно',
+    'diff_today' => 'Сьогодні',
+    'diff_today_regexp' => 'Сьогодні(?:\\s+о)?',
+    'diff_yesterday' => 'вчора',
+    'diff_yesterday_regexp' => 'Вчора(?:\\s+о)?',
+    'diff_tomorrow' => 'завтра',
+    'diff_tomorrow_regexp' => 'Завтра(?:\\s+о)?',
+    'diff_before_yesterday' => 'позавчора',
+    'diff_after_tomorrow' => 'післязавтра',
+    'period_recurrences' => 'один раз|:count рази|:count разів',
+    'period_interval' => 'кожні :interval',
+    'period_start_date' => 'з :date',
+    'period_end_date' => 'до :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY, HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => function (\Carbon\CarbonInterface $date) use ($processHoursFunction) {
+            return $processHoursFunction($date, '[Сьогодні ');
+        },
+        'nextDay' => function (\Carbon\CarbonInterface $date) use ($processHoursFunction) {
+            return $processHoursFunction($date, '[Завтра ');
+        },
+        'nextWeek' => function (\Carbon\CarbonInterface $date) use ($processHoursFunction) {
+            return $processHoursFunction($date, '[У] dddd [');
+        },
+        'lastDay' => function (\Carbon\CarbonInterface $date) use ($processHoursFunction) {
+            return $processHoursFunction($date, '[Вчора ');
+        },
+        'lastWeek' => function (\Carbon\CarbonInterface $date) use ($processHoursFunction) {
+            switch ($date->dayOfWeek) {
+                case 0:
+                case 3:
+                case 5:
+                case 6:
+                    return $processHoursFunction($date, '[Минулої] dddd [');
+                default:
+                    return $processHoursFunction($date, '[Минулого] dddd [');
+            }
+        },
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'M':
+            case 'd':
+            case 'DDD':
+            case 'w':
+            case 'W':
+                return $number.'-й';
+            case 'D':
+                return $number.'-го';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour) {
+        if ($hour < 4) {
+            return 'ночі';
+        }
+        if ($hour < 12) {
+            return 'ранку';
+        }
+        if ($hour < 17) {
+            return 'дня';
+        }
+
+        return 'вечора';
+    },
+    'months' => ['січня', 'лютого', 'березня', 'квітня', 'травня', 'червня', 'липня', 'серпня', 'вересня', 'жовтня', 'листопада', 'грудня'],
+    'months_standalone' => ['січень', 'лютий', 'березень', 'квітень', 'травень', 'червень', 'липень', 'серпень', 'вересень', 'жовтень', 'листопад', 'грудень'],
+    'months_short' => ['січ', 'лют', 'бер', 'кві', 'тра', 'чер', 'лип', 'сер', 'вер', 'жов', 'лис', 'гру'],
+    'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
+    'weekdays' => function (\Carbon\CarbonInterface $date, $format, $index) {
+        static $words = [
+            'nominative' => ['неділя', 'понеділок', 'вівторок', 'середа', 'четвер', 'п’ятниця', 'субота'],
+            'accusative' => ['неділю', 'понеділок', 'вівторок', 'середу', 'четвер', 'п’ятницю', 'суботу'],
+            'genitive' => ['неділі', 'понеділка', 'вівторка', 'середи', 'четверга', 'п’ятниці', 'суботи'],
+        ];
+
+        $nounCase = preg_match('/(\[(В|в|У|у)\])\s+dddd/', $format)
+            ? 'accusative'
+            : (
+                preg_match('/\[?(?:минулої|наступної)?\s*\]\s+dddd/', $format)
+                    ? 'genitive'
+                    : 'nominative'
+            );
+
+        return $words[$nounCase][$index] ?? null;
+    },
+    'weekdays_short' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
+    'weekdays_min' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' i '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk_UA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk_UA.php
new file mode 100644
index 0000000..5fc4317
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uk_UA.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/uk.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm.php
new file mode 100644
index 0000000..d3f19f0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/unm_US.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm_US.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm_US.php
new file mode 100644
index 0000000..fa5c374
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/unm_US.php
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['enikwsi', 'chkwali', 'xamokhwite', 'kwetayoxe', 'tainipen', 'kichinipen', 'lainipen', 'winaminke', 'kichitahkok', 'puksit', 'wini', 'muxkotae'],
+    'months_short' => ['eni', 'chk', 'xam', 'kwe', 'tai', 'nip', 'lai', 'win', 'tah', 'puk', 'kun', 'mux'],
+    'weekdays' => ['kentuwei', 'manteke', 'tusteke', 'lelai', 'tasteke', 'pelaiteke', 'sateteke'],
+    'weekdays_short' => ['ken', 'man', 'tus', 'lel', 'tas', 'pel', 'sat'],
+    'weekdays_min' => ['ken', 'man', 'tus', 'lel', 'tas', 'pel', 'sat'],
+    'day_of_first_week_of_year' => 1,
+
+    // Too unreliable
+    /*
+    'year' => ':count kaxtëne',
+    'y' => ':count kaxtëne',
+    'a_year' => ':count kaxtëne',
+
+    'month' => ':count piskewëni kishux', // less reliable
+    'm' => ':count piskewëni kishux', // less reliable
+    'a_month' => ':count piskewëni kishux', // less reliable
+
+    'week' => ':count kishku', // less reliable
+    'w' => ':count kishku', // less reliable
+    'a_week' => ':count kishku', // less reliable
+
+    'day' => ':count kishku',
+    'd' => ':count kishku',
+    'a_day' => ':count kishku',
+
+    'hour' => ':count xkuk', // less reliable
+    'h' => ':count xkuk', // less reliable
+    'a_hour' => ':count xkuk', // less reliable
+
+    'minute' => ':count txituwàk', // less reliable
+    'min' => ':count txituwàk', // less reliable
+    'a_minute' => ':count txituwàk', // less reliable
+
+    'second' => ':count nisha', // less reliable
+    's' => ':count nisha', // less reliable
+    'a_second' => ':count nisha', // less reliable
+    */
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur.php
new file mode 100644
index 0000000..e55aff2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur.php
@@ -0,0 +1,93 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+$months = [
+    'جنوری',
+    'فروری',
+    'مارچ',
+    'اپریل',
+    'مئی',
+    'جون',
+    'جولائی',
+    'اگست',
+    'ستمبر',
+    'اکتوبر',
+    'نومبر',
+    'دسمبر',
+];
+
+$weekdays = [
+    'اتوار',
+    'پیر',
+    'منگل',
+    'بدھ',
+    'جمعرات',
+    'جمعہ',
+    'ہفتہ',
+];
+
+/*
+ * Authors:
+ * - Sawood Alam
+ * - Mehshan
+ * - Philippe Vaucher
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Zaid Akram
+ * - Max Melentiev
+ * - hafezdivandari
+ * - Hossein Jabbari
+ * - nimamo
+ */
+return [
+    'year' => 'ایک سال|:count سال',
+    'month' => 'ایک ماہ|:count ماہ',
+    'week' => ':count ہفتے',
+    'day' => 'ایک دن|:count دن',
+    'hour' => 'ایک گھنٹہ|:count گھنٹے',
+    'minute' => 'ایک منٹ|:count منٹ',
+    'second' => 'چند سیکنڈ|:count سیکنڈ',
+    'ago' => ':time قبل',
+    'from_now' => ':time بعد',
+    'after' => ':time بعد',
+    'before' => ':time پہلے',
+    'diff_now' => 'اب',
+    'diff_today' => 'آج',
+    'diff_today_regexp' => 'آج(?:\\s+بوقت)?',
+    'diff_yesterday' => 'گزشتہ کل',
+    'diff_yesterday_regexp' => 'گذشتہ(?:\\s+روز)?(?:\\s+بوقت)?',
+    'diff_tomorrow' => 'آئندہ کل',
+    'diff_tomorrow_regexp' => 'کل(?:\\s+بوقت)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd، D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[آج بوقت] LT',
+        'nextDay' => '[کل بوقت] LT',
+        'nextWeek' => 'dddd [بوقت] LT',
+        'lastDay' => '[گذشتہ روز بوقت] LT',
+        'lastWeek' => '[گذشتہ] dddd [بوقت] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['صبح', 'شام'],
+    'months' => $months,
+    'months_short' => $months,
+    'weekdays' => $weekdays,
+    'weekdays_short' => $weekdays,
+    'weekdays_min' => $weekdays,
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => ['، ', ' اور '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_IN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_IN.php
new file mode 100644
index 0000000..f81c84d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_IN.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Red Hat, Pune    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ur.php', [
+    'formats' => [
+        'L' => 'D/M/YY',
+    ],
+    'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'weekdays' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
+    'weekdays_short' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
+    'weekdays_min' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_PK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_PK.php
new file mode 100644
index 0000000..8cd593d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ur_PK.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/ur.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'weekdays' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'weekdays_short' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'weekdays_min' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ص', 'ش'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz.php
new file mode 100644
index 0000000..61f3b64
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz.php
@@ -0,0 +1,85 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Dmitriy Shabanov
+ * - JD Isaacks
+ * - Inoyatulloh
+ * - Jamshid
+ * - aarkhipov
+ * - Philippe Vaucher
+ * - felixthemagnificent
+ * - Tsutomu Kuroda
+ * - tjku
+ * - Max Melentiev
+ * - Juanito Fatas
+ * - Alisher Ulugbekov
+ * - Ergashev Adizbek
+ */
+return [
+    'year' => ':count йил',
+    'a_year' => '{1}бир йил|:count йил',
+    'y' => ':count й',
+    'month' => ':count ой',
+    'a_month' => '{1}бир ой|:count ой',
+    'm' => ':count о',
+    'week' => ':count ҳафта',
+    'a_week' => '{1}бир ҳафта|:count ҳафта',
+    'w' => ':count ҳ',
+    'day' => ':count кун',
+    'a_day' => '{1}бир кун|:count кун',
+    'd' => ':count к',
+    'hour' => ':count соат',
+    'a_hour' => '{1}бир соат|:count соат',
+    'h' => ':count с',
+    'minute' => ':count дақиқа',
+    'a_minute' => '{1}бир дақиқа|:count дақиқа',
+    'min' => ':count д',
+    'second' => ':count сония',
+    'a_second' => '{1}сония|:count сония',
+    's' => ':count с',
+    'ago' => ':time аввал',
+    'from_now' => 'Якин :time ичида',
+    'after' => ':timeдан кейин',
+    'before' => ':time олдин',
+    'diff_now' => 'ҳозир',
+    'diff_today' => 'Бугун',
+    'diff_today_regexp' => 'Бугун(?:\\s+соат)?',
+    'diff_yesterday' => 'Кеча',
+    'diff_yesterday_regexp' => 'Кеча(?:\\s+соат)?',
+    'diff_tomorrow' => 'Эртага',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'D MMMM YYYY, dddd HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Бугун соат] LT [да]',
+        'nextDay' => '[Эртага] LT [да]',
+        'nextWeek' => 'dddd [куни соат] LT [да]',
+        'lastDay' => '[Кеча соат] LT [да]',
+        'lastWeek' => '[Утган] dddd [куни соат] LT [да]',
+        'sameElse' => 'L',
+    ],
+    'months' => ['январ', 'феврал', 'март', 'апрел', 'май', 'июн', 'июл', 'август', 'сентябр', 'октябр', 'ноябр', 'декабр'],
+    'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
+    'weekdays' => ['якшанба', 'душанба', 'сешанба', 'чоршанба', 'пайшанба', 'жума', 'шанба'],
+    'weekdays_short' => ['якш', 'душ', 'сеш', 'чор', 'пай', 'жум', 'шан'],
+    'weekdays_min' => ['як', 'ду', 'се', 'чо', 'па', 'жу', 'ша'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['эрталаб', 'кечаси'],
+    'list' => [', ', ' ва '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Arab.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Arab.php
new file mode 100644
index 0000000..6871911
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Arab.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/fa.php', [
+    'weekdays' => ['یکشنبه', 'دوشنبه', 'سه‌شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
+    'weekdays_short' => ['ی.', 'د.', 'س.', 'چ.', 'پ.', 'ج.', 'ش.'],
+    'weekdays_min' => ['ی.', 'د.', 'س.', 'چ.', 'پ.', 'ج.', 'ش.'],
+    'months' => ['جنوری', 'فبروری', 'مارچ', 'اپریل', 'می', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
+    'months_short' => ['جنو', 'فبر', 'مار', 'اپر', 'می', 'جون', 'جول', 'اگس', 'سپت', 'اکت', 'نوم', 'دسم'],
+    'first_day_of_week' => 6,
+    'weekend' => [4, 5],
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Cyrl.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Cyrl.php
new file mode 100644
index 0000000..e875469
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Cyrl.php
@@ -0,0 +1,19 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/uz.php', [
+    'formats' => [
+        'L' => 'DD/MM/yy',
+        'LL' => 'D MMM, YYYY',
+        'LLL' => 'D MMMM, YYYY HH:mm',
+        'LLLL' => 'dddd, DD MMMM, YYYY HH:mm',
+    ],
+    'meridiem' => ['ТО', 'ТК'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Latn.php
new file mode 100644
index 0000000..ecceeaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_Latn.php
@@ -0,0 +1,74 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Josh Soref
+ * - Rasulbek
+ * - Ilyosjon Kamoldinov (ilyosjon09)
+ */
+return [
+    'year' => ':count yil',
+    'a_year' => '{1}bir yil|:count yil',
+    'y' => ':count y',
+    'month' => ':count oy',
+    'a_month' => '{1}bir oy|:count oy',
+    'm' => ':count o',
+    'week' => ':count hafta',
+    'a_week' => '{1}bir hafta|:count hafta',
+    'w' => ':count h',
+    'day' => ':count kun',
+    'a_day' => '{1}bir kun|:count kun',
+    'd' => ':count k',
+    'hour' => ':count soat',
+    'a_hour' => '{1}bir soat|:count soat',
+    'h' => ':count soat',
+    'minute' => ':count daqiqa',
+    'a_minute' => '{1}bir daqiqa|:count daqiqa',
+    'min' => ':count d',
+    'second' => ':count soniya',
+    'a_second' => '{1}soniya|:count soniya',
+    's' => ':count son.',
+    'ago' => ':time avval',
+    'from_now' => 'Yaqin :time ichida',
+    'after' => ':timedan keyin',
+    'before' => ':time oldin',
+    'diff_yesterday' => 'Kecha',
+    'diff_yesterday_regexp' => 'Kecha(?:\\s+soat)?',
+    'diff_today' => 'Bugun',
+    'diff_today_regexp' => 'Bugun(?:\\s+soat)?',
+    'diff_tomorrow' => 'Ertaga',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'D MMMM YYYY, dddd HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Bugun soat] LT [da]',
+        'nextDay' => '[Ertaga] LT [da]',
+        'nextWeek' => 'dddd [kuni soat] LT [da]',
+        'lastDay' => '[Kecha soat] LT [da]',
+        'lastWeek' => '[O\'tgan] dddd [kuni soat] LT [da]',
+        'sameElse' => 'L',
+    ],
+    'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'],
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'Iyun', 'Iyul', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'],
+    'weekdays_short' => ['Yak', 'Dush', 'Sesh', 'Chor', 'Pay', 'Jum', 'Shan'],
+    'weekdays_min' => ['Ya', 'Du', 'Se', 'Cho', 'Pa', 'Ju', 'Sha'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' va '],
+    'meridiem' => ['TO', 'TK'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ.php
new file mode 100644
index 0000000..d41bfee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Bobir Ismailov Bobir Ismailov, Pablo Saratxaga, Mashrab Kuvatov bobir_is@yahoo.com, pablo@mandrakesoft.com, kmashrab@uni-bremen.de
+ */
+return array_replace_recursive(require __DIR__.'/uz_Latn.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'],
+    'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'Iyn', 'Iyl', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
+    'weekdays' => ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'],
+    'weekdays_short' => ['Yak', 'Du', 'Se', 'Cho', 'Pay', 'Ju', 'Sha'],
+    'weekdays_min' => ['Yak', 'Du', 'Se', 'Cho', 'Pay', 'Ju', 'Sha'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ@cyrillic.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ@cyrillic.php
new file mode 100644
index 0000000..2fa967c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/uz_UZ@cyrillic.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Mashrab Kuvatov Mashrab Kuvatov, Pablo Saratxaga kmashrab@uni-bremen.de, pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/uz.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['Январ', 'Феврал', 'Март', 'Апрел', 'Май', 'Июн', 'Июл', 'Август', 'Сентябр', 'Октябр', 'Ноябр', 'Декабр'],
+    'months_short' => ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
+    'weekdays' => ['Якшанба', 'Душанба', 'Сешанба', 'Чоршанба', 'Пайшанба', 'Жума', 'Шанба'],
+    'weekdays_short' => ['Якш', 'Душ', 'Сеш', 'Чор', 'Пай', 'Жум', 'Шан'],
+    'weekdays_min' => ['Якш', 'Душ', 'Сеш', 'Чор', 'Пай', 'Жум', 'Шан'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai.php
new file mode 100644
index 0000000..3e6fce2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai.php
@@ -0,0 +1,34 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
+    'weekdays_short' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
+    'weekdays_min' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
+    'months' => ['ꖨꖕ ꕪꕴ ꔞꔀꕮꕊ', 'ꕒꕡꖝꖕ', 'ꕾꖺ', 'ꖢꖕ', 'ꖑꕱ', 'ꖱꘋ', 'ꖱꕞꔤ', 'ꗛꔕ', 'ꕢꕌ', 'ꕭꖃ', 'ꔞꘋꕔꕿ ꕸꖃꗏ', 'ꖨꖕ ꕪꕴ ꗏꖺꕮꕊ'],
+    'months_short' => ['ꖨꖕꔞ', 'ꕒꕡ', 'ꕾꖺ', 'ꖢꖕ', 'ꖑꕱ', 'ꖱꘋ', 'ꖱꕞ', 'ꗛꔕ', 'ꕢꕌ', 'ꕭꖃ', 'ꔞꘋ', 'ꖨꖕꗏ'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm a',
+    ],
+
+    'year' => ':count ꕀ', // less reliable
+    'y' => ':count ꕀ', // less reliable
+    'a_year' => ':count ꕀ', // less reliable
+
+    'second' => ':count ꗱꕞꕯꕊ', // less reliable
+    's' => ':count ꗱꕞꕯꕊ', // less reliable
+    'a_second' => ':count ꗱꕞꕯꕊ', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Latn.php
new file mode 100644
index 0000000..b76c4bc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Latn.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'weekdays' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
+    'weekdays_short' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
+    'weekdays_min' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
+    'months' => ['luukao kemã', 'ɓandaɓu', 'vɔɔ', 'fulu', 'goo', '6', '7', 'kɔnde', 'saah', 'galo', 'kenpkato ɓololɔ', 'luukao lɔma'],
+    'months_short' => ['luukao kemã', 'ɓandaɓu', 'vɔɔ', 'fulu', 'goo', '6', '7', 'kɔnde', 'saah', 'galo', 'kenpkato ɓololɔ', 'luukao lɔma'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'h:mm a',
+        'LTS' => 'h:mm:ss a',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm a',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm a',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Vaii.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Vaii.php
new file mode 100644
index 0000000..7b029a8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vai_Vaii.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/vai.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve.php
new file mode 100644
index 0000000..7f10aeb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/ve_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve_ZA.php
new file mode 100644
index 0000000..5eb2b91
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/ve_ZA.php
@@ -0,0 +1,49 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Phando', 'Luhuhi', 'Ṱhafamuhwe', 'Lambamai', 'Shundunthule', 'Fulwi', 'Fulwana', 'Ṱhangule', 'Khubvumedzi', 'Tshimedzi', 'Ḽara', 'Nyendavhusiku'],
+    'months_short' => ['Pha', 'Luh', 'Fam', 'Lam', 'Shu', 'Lwi', 'Lwa', 'Ngu', 'Khu', 'Tsh', 'Ḽar', 'Nye'],
+    'weekdays' => ['Swondaha', 'Musumbuluwo', 'Ḽavhuvhili', 'Ḽavhuraru', 'Ḽavhuṋa', 'Ḽavhuṱanu', 'Mugivhela'],
+    'weekdays_short' => ['Swo', 'Mus', 'Vhi', 'Rar', 'ṋa', 'Ṱan', 'Mug'],
+    'weekdays_min' => ['Swo', 'Mus', 'Vhi', 'Rar', 'ṋa', 'Ṱan', 'Mug'],
+    'day_of_first_week_of_year' => 1,
+
+    // Too unreliable
+    /*
+    'day' => ':count vhege', // less reliable
+    'd' => ':count vhege', // less reliable
+    'a_day' => ':count vhege', // less reliable
+
+    'hour' => ':count watshi', // less reliable
+    'h' => ':count watshi', // less reliable
+    'a_hour' => ':count watshi', // less reliable
+
+    'minute' => ':count watshi', // less reliable
+    'min' => ':count watshi', // less reliable
+    'a_minute' => ':count watshi', // less reliable
+
+    'second' => ':count Mu', // less reliable
+    's' => ':count Mu', // less reliable
+    'a_second' => ':count Mu', // less reliable
+
+    'week' => ':count vhege',
+    'w' => ':count vhege',
+    'a_week' => ':count vhege',
+    */
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi.php
new file mode 100644
index 0000000..73e2852
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi.php
@@ -0,0 +1,76 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Andre Polykanine A.K.A. Menelion Elensúlë
+ * - JD Isaacks
+ */
+return [
+    'year' => ':count năm',
+    'a_year' => '{1}một năm|]1, Inf[:count năm',
+    'y' => ':count năm',
+    'month' => ':count tháng',
+    'a_month' => '{1}một tháng|]1, Inf[:count tháng',
+    'm' => ':count tháng',
+    'week' => ':count tuần',
+    'a_week' => '{1}một tuần|]1, Inf[:count tuần',
+    'w' => ':count tuần',
+    'day' => ':count ngày',
+    'a_day' => '{1}một ngày|]1, Inf[:count ngày',
+    'd' => ':count ngày',
+    'hour' => ':count giờ',
+    'a_hour' => '{1}một giờ|]1, Inf[:count giờ',
+    'h' => ':count giờ',
+    'minute' => ':count phút',
+    'a_minute' => '{1}một phút|]1, Inf[:count phút',
+    'min' => ':count phút',
+    'second' => ':count giây',
+    'a_second' => '{1}vài giây|]1, Inf[:count giây',
+    's' => ':count giây',
+    'ago' => ':time trước',
+    'from_now' => ':time tới',
+    'after' => ':time sau',
+    'before' => ':time trước',
+    'diff_now' => 'bây giờ',
+    'diff_today' => 'Hôm',
+    'diff_today_regexp' => 'Hôm(?:\\s+nay)?(?:\\s+lúc)?',
+    'diff_yesterday' => 'Hôm qua',
+    'diff_yesterday_regexp' => 'Hôm(?:\\s+qua)?(?:\\s+lúc)?',
+    'diff_tomorrow' => 'Ngày mai',
+    'diff_tomorrow_regexp' => 'Ngày(?:\\s+mai)?(?:\\s+lúc)?',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM [năm] YYYY',
+        'LLL' => 'D MMMM [năm] YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM [năm] YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[Hôm nay lúc] LT',
+        'nextDay' => '[Ngày mai lúc] LT',
+        'nextWeek' => 'dddd [tuần tới lúc] LT',
+        'lastDay' => '[Hôm qua lúc] LT',
+        'lastWeek' => 'dddd [tuần trước lúc] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['SA', 'CH'],
+    'months' => ['tháng 1', 'tháng 2', 'tháng 3', 'tháng 4', 'tháng 5', 'tháng 6', 'tháng 7', 'tháng 8', 'tháng 9', 'tháng 10', 'tháng 11', 'tháng 12'],
+    'months_short' => ['Th01', 'Th02', 'Th03', 'Th04', 'Th05', 'Th06', 'Th07', 'Th08', 'Th09', 'Th10', 'Th11', 'Th12'],
+    'weekdays' => ['chủ nhật', 'thứ hai', 'thứ ba', 'thứ tư', 'thứ năm', 'thứ sáu', 'thứ bảy'],
+    'weekdays_short' => ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],
+    'weekdays_min' => ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => [', ', ' và '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi_VN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi_VN.php
new file mode 100644
index 0000000..77b2dce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vi_VN.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/vi.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vo.php
new file mode 100644
index 0000000..a956a78
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vo.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY-MM-dd',
+        'LL' => 'YYYY MMM D',
+        'LLL' => 'YYYY MMMM D HH:mm',
+        'LLLL' => 'YYYY MMMM D, dddd HH:mm',
+    ],
+
+    'year' => ':count yel',
+    'y' => ':count yel',
+    'a_year' => ':count yel',
+
+    'month' => ':count mul',
+    'm' => ':count mul',
+    'a_month' => ':count mul',
+
+    'week' => ':count vig',
+    'w' => ':count vig',
+    'a_week' => ':count vig',
+
+    'day' => ':count del',
+    'd' => ':count del',
+    'a_day' => ':count del',
+
+    'hour' => ':count düp',
+    'h' => ':count düp',
+    'a_hour' => ':count düp',
+
+    'minute' => ':count minut',
+    'min' => ':count minut',
+    'a_minute' => ':count minut',
+
+    'second' => ':count sekun',
+    's' => ':count sekun',
+    'a_second' => ':count sekun',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vun.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vun.php
new file mode 100644
index 0000000..f8cc72c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/vun.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['utuko', 'kyiukonyi'],
+    'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
+    'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
+    'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa.php
new file mode 100644
index 0000000..f6dc4cc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/wa_BE.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa_BE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa_BE.php
new file mode 100644
index 0000000..a76d80d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wa_BE.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Djan SACRE Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['di djanvî', 'di fevrî', 'di måss', 'd’ avri', 'di may', 'di djun', 'di djulete', 'd’ awousse', 'di setimbe', 'd’ octôbe', 'di nôvimbe', 'di decimbe'],
+    'months_short' => ['dja', 'fev', 'mås', 'avr', 'may', 'djn', 'djl', 'awo', 'set', 'oct', 'nôv', 'dec'],
+    'weekdays' => ['dimegne', 'londi', 'mårdi', 'mierkidi', 'djudi', 'vénrdi', 'semdi'],
+    'weekdays_short' => ['dim', 'lon', 'mår', 'mie', 'dju', 'vén', 'sem'],
+    'weekdays_min' => ['dim', 'lon', 'mår', 'mie', 'dju', 'vén', 'sem'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'year' => ':count anêye',
+    'y' => ':count anêye',
+    'a_year' => ':count anêye',
+
+    'month' => ':count meûs',
+    'm' => ':count meûs',
+    'a_month' => ':count meûs',
+
+    'week' => ':count samwinne',
+    'w' => ':count samwinne',
+    'a_week' => ':count samwinne',
+
+    'day' => ':count djoû',
+    'd' => ':count djoû',
+    'a_day' => ':count djoû',
+
+    'hour' => ':count eure',
+    'h' => ':count eure',
+    'a_hour' => ':count eure',
+
+    'minute' => ':count munute',
+    'min' => ':count munute',
+    'a_minute' => ':count munute',
+
+    'second' => ':count Sigonde',
+    's' => ':count Sigonde',
+    'a_second' => ':count Sigonde',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae.php
new file mode 100644
index 0000000..bf57f23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/wae_CH.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae_CH.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae_CH.php
new file mode 100644
index 0000000..2af50b4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wae_CH.php
@@ -0,0 +1,31 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Walser Translation Team ml@translate-wae.ch
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+    'months' => ['Jenner', 'Hornig', 'Märze', 'Abrille', 'Meije', 'Bráčet', 'Heiwet', 'Öigšte', 'Herbštmánet', 'Wímánet', 'Wintermánet', 'Chrištmánet'],
+    'months_short' => ['Jen', 'Hor', 'Mär', 'Abr', 'Mei', 'Brá', 'Hei', 'Öig', 'Her', 'Wím', 'Win', 'Chr'],
+    'weekdays' => ['Suntag', 'Mäntag', 'Zischtag', 'Mittwuch', 'Frontag', 'Fritag', 'Samschtag'],
+    'weekdays_short' => ['Sun', 'Män', 'Zis', 'Mit', 'Fro', 'Fri', 'Sam'],
+    'weekdays_min' => ['Sun', 'Män', 'Zis', 'Mit', 'Fro', 'Fri', 'Sam'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+
+    'month' => ':count Maano', // less reliable
+    'm' => ':count Maano', // less reliable
+    'a_month' => ':count Maano', // less reliable
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal.php
new file mode 100644
index 0000000..e8ec40f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/wal_ET.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal_ET.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal_ET.php
new file mode 100644
index 0000000..a4e619a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wal_ET.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Ge'ez Frontier Foundation    locales@geez.org
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
+    'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
+    'weekdays' => ['ወጋ', 'ሳይኖ', 'ማቆሳኛ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ'],
+    'weekdays_short' => ['ወጋ ', 'ሳይኖ', 'ማቆሳ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ '],
+    'weekdays_min' => ['ወጋ ', 'ሳይኖ', 'ማቆሳ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ '],
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['ማለዶ', 'ቃማ'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo.php
new file mode 100644
index 0000000..74b95df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/wo_SN.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo_SN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo_SN.php
new file mode 100644
index 0000000..f8a85b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/wo_SN.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - The Debian Project Christian Perrier bubulle@debian.org
+ */
+return [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD.MM.YYYY',
+        'LL' => 'MMMM DD, YYYY',
+        'LLL' => 'DD MMM HH:mm',
+        'LLLL' => 'MMMM DD, YYYY HH:mm',
+    ],
+    'months' => ['sanwiy\'e', 'feebriy\'e', 'mars', 'awril', 'me', 'suwen', 'sulet', 'uut', 'septaambar', 'oktoobar', 'nowaambar', 'desaambar'],
+    'months_short' => ['san', 'fee', 'mar', 'awr', 'me ', 'suw', 'sul', 'uut', 'sep', 'okt', 'now', 'des'],
+    'weekdays' => ['dib\'eer', 'altine', 'talaata', 'allarba', 'alxames', 'ajjuma', 'gaawu'],
+    'weekdays_short' => ['dib', 'alt', 'tal', 'all', 'alx', 'ajj', 'gaa'],
+    'weekdays_min' => ['dib', 'alt', 'tal', 'all', 'alx', 'ajj', 'gaa'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'year' => ':count at',
+    'month' => ':count wèr',
+    'week' => ':count ayubés',
+    'day' => ':count bés',
+    'hour' => ':count waxtu',
+    'minute' => ':count simili',
+    'second' => ':count saa',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh.php
new file mode 100644
index 0000000..e88c78d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/xh_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh_ZA.php
new file mode 100644
index 0000000..910f831
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xh_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['eyoMqungu', 'eyoMdumba', 'eyoKwindla', 'uTshazimpuzi', 'uCanzibe', 'eyeSilimela', 'eyeKhala', 'eyeThupa', 'eyoMsintsi', 'eyeDwarha', 'eyeNkanga', 'eyoMnga'],
+    'months_short' => ['Mqu', 'Mdu', 'Kwi', 'Tsh', 'Can', 'Sil', 'Kha', 'Thu', 'Msi', 'Dwa', 'Nka', 'Mng'],
+    'weekdays' => ['iCawa', 'uMvulo', 'lwesiBini', 'lwesiThathu', 'ulweSine', 'lwesiHlanu', 'uMgqibelo'],
+    'weekdays_short' => ['Caw', 'Mvu', 'Bin', 'Tha', 'Sin', 'Hla', 'Mgq'],
+    'weekdays_min' => ['Caw', 'Mvu', 'Bin', 'Tha', 'Sin', 'Hla', 'Mgq'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count ihlobo', // less reliable
+    'y' => ':count ihlobo', // less reliable
+    'a_year' => ':count ihlobo', // less reliable
+
+    'hour' => ':count iwotshi', // less reliable
+    'h' => ':count iwotshi', // less reliable
+    'a_hour' => ':count iwotshi', // less reliable
+
+    'minute' => ':count ingqalelo', // less reliable
+    'min' => ':count ingqalelo', // less reliable
+    'a_minute' => ':count ingqalelo', // less reliable
+
+    'second' => ':count nceda', // less reliable
+    's' => ':count nceda', // less reliable
+    'a_second' => ':count nceda', // less reliable
+
+    'month' => ':count inyanga',
+    'm' => ':count inyanga',
+    'a_month' => ':count inyanga',
+
+    'week' => ':count veki',
+    'w' => ':count veki',
+    'a_week' => ':count veki',
+
+    'day' => ':count imini',
+    'd' => ':count imini',
+    'a_day' => ':count imini',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xog.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xog.php
new file mode 100644
index 0000000..063977c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/xog.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['Munkyo', 'Eigulo'],
+    'weekdays' => ['Sabiiti', 'Balaza', 'Owokubili', 'Owokusatu', 'Olokuna', 'Olokutaanu', 'Olomukaaga'],
+    'weekdays_short' => ['Sabi', 'Bala', 'Kubi', 'Kusa', 'Kuna', 'Kuta', 'Muka'],
+    'weekdays_min' => ['Sabi', 'Bala', 'Kubi', 'Kusa', 'Kuna', 'Kuta', 'Muka'],
+    'months' => ['Janwaliyo', 'Febwaliyo', 'Marisi', 'Apuli', 'Maayi', 'Juuni', 'Julaayi', 'Agusito', 'Sebuttemba', 'Okitobba', 'Novemba', 'Desemba'],
+    'months_short' => ['Jan', 'Feb', 'Mar', 'Apu', 'Maa', 'Juu', 'Jul', 'Agu', 'Seb', 'Oki', 'Nov', 'Des'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yav.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yav.php
new file mode 100644
index 0000000..e44cde6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yav.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'meridiem' => ['kiɛmɛ́ɛm', 'kisɛ́ndɛ'],
+    'weekdays' => ['sɔ́ndiɛ', 'móndie', 'muányáŋmóndie', 'metúkpíápɛ', 'kúpélimetúkpiapɛ', 'feléte', 'séselé'],
+    'weekdays_short' => ['sd', 'md', 'mw', 'et', 'kl', 'fl', 'ss'],
+    'weekdays_min' => ['sd', 'md', 'mw', 'et', 'kl', 'fl', 'ss'],
+    'months' => ['pikítíkítie, oólí ú kutúan', 'siɛyɛ́, oóli ú kándíɛ', 'ɔnsúmbɔl, oóli ú kátátúɛ', 'mesiŋ, oóli ú kénie', 'ensil, oóli ú kátánuɛ', 'ɔsɔn', 'efute', 'pisuyú', 'imɛŋ i puɔs', 'imɛŋ i putúk,oóli ú kátíɛ', 'makandikɛ', 'pilɔndɔ́'],
+    'months_short' => ['o.1', 'o.2', 'o.3', 'o.4', 'o.5', 'o.6', 'o.7', 'o.8', 'o.9', 'o.10', 'o.11', 'o.12'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'D/M/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi.php
new file mode 100644
index 0000000..8f32022
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/yi_US.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi_US.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi_US.php
new file mode 100644
index 0000000..f764d36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yi_US.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - http://www.uyip.org/ Pablo Saratxaga pablo@mandrakesoft.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['יאַנואַר', 'פֿעברואַר', 'מערץ', 'אַפּריל', 'מיי', 'יוני', 'יולי', 'אויגוסט', 'סעפּטעמבער', 'אקטאבער', 'נאוועמבער', 'דעצעמבער'],
+    'months_short' => ['יאַנ', 'פֿעב', 'מאַר', 'אַפּר', 'מײַ ', 'יונ', 'יול', 'אױג', 'סעפּ', 'אָקט', 'נאָװ', 'דעצ'],
+    'weekdays' => ['זונטיק', 'מאָנטיק', 'דינסטיק', 'מיטװאָך', 'דאָנערשטיק', 'פֿרײַטיק', 'שבת'],
+    'weekdays_short' => ['זונ\'', 'מאָנ\'', 'דינ\'', 'מיט\'', 'דאָנ\'', 'פֿרײַ\'', 'שבת'],
+    'weekdays_min' => ['זונ\'', 'מאָנ\'', 'דינ\'', 'מיט\'', 'דאָנ\'', 'פֿרײַ\'', 'שבת'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => ':count יאר',
+    'y' => ':count יאר',
+    'a_year' => ':count יאר',
+
+    'month' => ':count חודש',
+    'm' => ':count חודש',
+    'a_month' => ':count חודש',
+
+    'week' => ':count וואָך',
+    'w' => ':count וואָך',
+    'a_week' => ':count וואָך',
+
+    'day' => ':count טאָג',
+    'd' => ':count טאָג',
+    'a_day' => ':count טאָג',
+
+    'hour' => ':count שעה',
+    'h' => ':count שעה',
+    'a_hour' => ':count שעה',
+
+    'minute' => ':count מינוט',
+    'min' => ':count מינוט',
+    'a_minute' => ':count מינוט',
+
+    'second' => ':count סעקונדע',
+    's' => ':count סעקונדע',
+    'a_second' => ':count סעקונדע',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo.php
new file mode 100644
index 0000000..0a82981
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - François B
+ * - Atolagbe Abisoye
+ */
+return [
+    'year' => 'ọdún :count',
+    'a_year' => '{1}ọdún kan|ọdún :count',
+    'month' => 'osù :count',
+    'a_month' => '{1}osù kan|osù :count',
+    'week' => 'ọsẹ :count',
+    'a_week' => '{1}ọsẹ kan|ọsẹ :count',
+    'day' => 'ọjọ́ :count',
+    'a_day' => '{1}ọjọ́ kan|ọjọ́ :count',
+    'hour' => 'wákati :count',
+    'a_hour' => '{1}wákati kan|wákati :count',
+    'minute' => 'ìsẹjú :count',
+    'a_minute' => '{1}ìsẹjú kan|ìsẹjú :count',
+    'second' => 'iaayá :count',
+    'a_second' => '{1}ìsẹjú aayá die|aayá :count',
+    'ago' => ':time kọjá',
+    'from_now' => 'ní :time',
+    'diff_yesterday' => 'Àna',
+    'diff_yesterday_regexp' => 'Àna(?:\\s+ni)?',
+    'diff_today' => 'Ònì',
+    'diff_today_regexp' => 'Ònì(?:\\s+ni)?',
+    'diff_tomorrow' => 'Ọ̀la',
+    'diff_tomorrow_regexp' => 'Ọ̀la(?:\\s+ni)?',
+    'formats' => [
+        'LT' => 'h:mm A',
+        'LTS' => 'h:mm:ss A',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY h:mm A',
+        'LLLL' => 'dddd, D MMMM YYYY h:mm A',
+    ],
+    'calendar' => [
+        'sameDay' => '[Ònì ni] LT',
+        'nextDay' => '[Ọ̀la ni] LT',
+        'nextWeek' => 'dddd [Ọsẹ̀ tón\'bọ] [ni] LT',
+        'lastDay' => '[Àna ni] LT',
+        'lastWeek' => 'dddd [Ọsẹ̀ tólọ́] [ni] LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => 'ọjọ́ :number',
+    'months' => ['Sẹ́rẹ́', 'Èrèlè', 'Ẹrẹ̀nà', 'Ìgbé', 'Èbibi', 'Òkùdu', 'Agẹmo', 'Ògún', 'Owewe', 'Ọ̀wàrà', 'Bélú', 'Ọ̀pẹ̀̀'],
+    'months_short' => ['Sẹ́r', 'Èrl', 'Ẹrn', 'Ìgb', 'Èbi', 'Òkù', 'Agẹ', 'Ògú', 'Owe', 'Ọ̀wà', 'Bél', 'Ọ̀pẹ̀̀'],
+    'weekdays' => ['Àìkú', 'Ajé', 'Ìsẹ́gun', 'Ọjọ́rú', 'Ọjọ́bọ', 'Ẹtì', 'Àbámẹ́ta'],
+    'weekdays_short' => ['Àìk', 'Ajé', 'Ìsẹ́', 'Ọjr', 'Ọjb', 'Ẹtì', 'Àbá'],
+    'weekdays_min' => ['Àì', 'Aj', 'Ìs', 'Ọr', 'Ọb', 'Ẹt', 'Àb'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'meridiem' => ['Àárọ̀', 'Ọ̀sán'],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_BJ.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_BJ.php
new file mode 100644
index 0000000..f06bb99
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_BJ.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return array_replace_recursive(require __DIR__.'/yo.php', [
+    'meridiem' => ['Àárɔ̀', 'Ɔ̀sán'],
+    'weekdays' => ['Ɔjɔ́ Àìkú', 'Ɔjɔ́ Ajé', 'Ɔjɔ́ Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɔjɔ́ Ɛtì', 'Ɔjɔ́ Àbámɛ́ta'],
+    'weekdays_short' => ['Àìkú', 'Ajé', 'Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɛtì', 'Àbámɛ́ta'],
+    'weekdays_min' => ['Àìkú', 'Ajé', 'Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɛtì', 'Àbámɛ́ta'],
+    'months' => ['Oshù Shɛ́rɛ́', 'Oshù Èrèlè', 'Oshù Ɛrɛ̀nà', 'Oshù Ìgbé', 'Oshù Ɛ̀bibi', 'Oshù Òkúdu', 'Oshù Agɛmɔ', 'Oshù Ògún', 'Oshù Owewe', 'Oshù Ɔ̀wàrà', 'Oshù Bélú', 'Oshù Ɔ̀pɛ̀'],
+    'months_short' => ['Shɛ́rɛ́', 'Èrèlè', 'Ɛrɛ̀nà', 'Ìgbé', 'Ɛ̀bibi', 'Òkúdu', 'Agɛmɔ', 'Ògún', 'Owewe', 'Ɔ̀wàrà', 'Bélú', 'Ɔ̀pɛ̀'],
+    'first_day_of_week' => 1,
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd, D MMMM YYYY HH:mm',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_NG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_NG.php
new file mode 100644
index 0000000..92934bc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yo_NG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/yo.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue.php
new file mode 100644
index 0000000..ce233a4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/yue_HK.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_HK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_HK.php
new file mode 100644
index 0000000..4e7d5c3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_HK.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/zh_HK.php', [
+    'formats' => [
+        'L' => 'YYYY年MM月DD日 dddd',
+    ],
+    'months' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'first_day_of_week' => 0,
+    'day_of_first_week_of_year' => 1,
+    'meridiem' => ['上午', '下午'],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hans.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hans.php
new file mode 100644
index 0000000..007d071
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hans.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hans.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hant.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hant.php
new file mode 100644
index 0000000..24797f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yue_Hant.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hant.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw.php
new file mode 100644
index 0000000..8efdc93
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/yuw_PG.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw_PG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw_PG.php
new file mode 100644
index 0000000..b99ad2e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/yuw_PG.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Information from native speakers Hannah Sarvasy nungon.localization@gmail.com
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YY',
+    ],
+    'months' => ['jenuari', 'febuari', 'mas', 'epril', 'mei', 'jun', 'julai', 'ögus', 'septemba', 'öktoba', 'nöwemba', 'diksemba'],
+    'months_short' => ['jen', 'feb', 'mas', 'epr', 'mei', 'jun', 'jul', 'ögu', 'sep', 'ökt', 'nöw', 'dis'],
+    'weekdays' => ['sönda', 'mönda', 'sinda', 'mitiwö', 'sogipbono', 'nenggo', 'söndanggie'],
+    'weekdays_short' => ['sön', 'mön', 'sin', 'mit', 'soi', 'nen', 'sab'],
+    'weekdays_min' => ['sön', 'mön', 'sin', 'mit', 'soi', 'nen', 'sab'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zgh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zgh.php
new file mode 100644
index 0000000..4d2c3b3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zgh.php
@@ -0,0 +1,80 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - BAKTETE Miloud
+ */
+return [
+    'year' => ':count ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
+    'a_year' => 'ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
+    'y' => ':count ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
+    'month' => ':count ⵡⴰⵢⵢⵓⵔ|:count ⴰⵢⵢⵓⵔⵏ',
+    'a_month' => 'ⵉⴷⵊ ⵡⴰⵢⵢⵓⵔ|:count ⴰⵢⵢⵓⵔⵏ',
+    'm' => ':count ⴰⵢⵢⵓⵔⵏ',
+    'week' => ':count ⵉⵎⴰⵍⴰⵙⵙ|:count ⵉⵎⴰⵍⴰⵙⵙⵏ',
+    'a_week' => 'ⵉⵛⵜ ⵉⵎⴰⵍⴰⵙⵙ|:count ⵉⵎⴰⵍⴰⵙⵙⵏ',
+    'w' => ':count ⵉⵎⴰⵍⴰⵙⵙ.',
+    'day' => ':count ⵡⴰⵙⵙ|:count ⵓⵙⵙⴰⵏ',
+    'a_day' => 'ⵉⴷⵊ ⵡⴰⵙⵙ|:count ⵓⵙⵙⴰⵏ',
+    'd' => ':count ⵓ',
+    'hour' => ':count ⵜⵙⵔⴰⴳⵜ|:count ⵜⵉⵙⵔⴰⴳⵉⵏ',
+    'a_hour' => 'ⵉⵛⵜ ⵜⵙⵔⴰⴳⵜ|:count ⵜⵉⵙⵔⴰⴳⵉⵏ',
+    'h' => ':count ⵜ',
+    'minute' => ':count ⵜⵓⵙⴷⵉⴷⵜ|:count ⵜⵓⵙⴷⵉⴷⵉⵏ',
+    'a_minute' => 'ⵉⵛⵜ ⵜⵓⵙⴷⵉⴷⵜ|:count ⵜⵓⵙⴷⵉⴷⵉⵏ',
+    'min' => ':count ⵜⵓⵙ',
+    'second' => ':count ⵜⵙⵉⵏⵜ|:count ⵜⵉⵙⵉⵏⴰ',
+    'a_second' => 'ⴽⵔⴰ ⵜⵉⵙⵉⵏⴰ|:count ⵜⵉⵙⵉⵏⴰ',
+    's' => ':count ⵜ',
+    'ago' => 'ⵣⴳ :time',
+    'from_now' => 'ⴷⴳ :time',
+    'after' => ':time ⴰⵡⴰⵔ',
+    'before' => ':time ⴷⴰⵜ',
+    'diff_now' => 'ⴰⴷⵡⴰⵍⵉ',
+    'diff_today' => 'ⴰⵙⵙ',
+    'diff_today_regexp' => 'ⴰⵙⵙ(?:\\s+ⴰ/ⴰⴷ)?(?:\\s+ⴳ)?',
+    'diff_yesterday' => 'ⴰⵙⵙⵏⵏⴰⵟ',
+    'diff_yesterday_regexp' => 'ⴰⵙⵙⵏⵏⴰⵟ(?:\\s+ⴳ)?',
+    'diff_tomorrow' => 'ⴰⵙⴽⴽⴰ',
+    'diff_tomorrow_regexp' => 'ⴰⵙⴽⴽⴰ(?:\\s+ⴳ)?',
+    'diff_before_yesterday' => 'ⴼⵔ ⵉⴹⵏⵏⴰⵟ',
+    'diff_after_tomorrow' => 'ⵏⴰⴼ ⵓⵙⴽⴽⴰ',
+    'period_recurrences' => ':count ⵜⵉⴽⴽⴰⵍ',
+    'period_interval' => 'ⴽⵓ :interval',
+    'period_start_date' => 'ⴳ :date',
+    'period_end_date' => 'ⵉ :date',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'DD/MM/YYYY',
+        'LL' => 'D MMMM YYYY',
+        'LLL' => 'D MMMM YYYY HH:mm',
+        'LLLL' => 'dddd D MMMM YYYY HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[ⴰⵙⵙ ⴰ/ⴰⴷ ⴳ] LT',
+        'nextDay' => '[ⴰⵙⴽⴽⴰ ⴳ] LT',
+        'nextWeek' => 'dddd [ⴳ] LT',
+        'lastDay' => '[ⴰⵙⵙⵏⵏⴰⵟ ⴳ] LT',
+        'lastWeek' => 'dddd [ⴰⵎⴳⴳⴰⵔⵓ ⴳ] LT',
+        'sameElse' => 'L',
+    ],
+    'meridiem' => ['ⵜⵉⴼⴰⵡⵜ', 'ⵜⴰⴷⴳⴳⵯⴰⵜ'],
+    'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⴰⵏⴱⵉⵔ'],
+    'months_short' => ['ⵉⵏⵏ', 'ⴱⵕⴰ', 'ⵎⴰⵕ', 'ⵉⴱⵔ', 'ⵎⴰⵢ', 'ⵢⵓⵏ', 'ⵢⵓⵍ', 'ⵖⵓⵛ', 'ⵛⵓⵜ', 'ⴽⵟⵓ', 'ⵏⵓⵡ', 'ⴷⵓⵊ'],
+    'weekdays' => ['ⵓⵙⴰⵎⴰⵙ', 'ⵡⴰⵢⵏⴰⵙ', 'ⵓⵙⵉⵏⴰⵙ', 'ⵡⴰⴽⵕⴰⵙ', 'ⵓⴽⵡⴰⵙ', 'ⵓⵙⵉⵎⵡⴰⵙ', 'ⵓⵙⵉⴹⵢⴰⵙ'],
+    'weekdays_short' => ['ⵓⵙⴰ', 'ⵡⴰⵢ', 'ⵓⵙⵉ', 'ⵡⴰⴽ', 'ⵓⴽⵡ', 'ⵓⵙⵉⵎ', 'ⵓⵙⵉⴹ'],
+    'weekdays_min' => ['ⵓⵙⴰ', 'ⵡⴰⵢ', 'ⵓⵙⵉ', 'ⵡⴰⴽ', 'ⵓⴽⵡ', 'ⵓⵙⵉⵎ', 'ⵓⵙⵉⴹ'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 1,
+    'list' => [', ', ' ⴷ '],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh.php
new file mode 100644
index 0000000..1187c3d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh.php
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - xuri
+ * - sycuato
+ * - bokideckonja
+ * - Luo Ning
+ * - William Yang (williamyang233)
+ */
+return array_merge(require __DIR__.'/zh_Hans.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY年M月D日',
+        'LLL' => 'YYYY年M月D日 A h点mm分',
+        'LLLL' => 'YYYY年M月D日dddd A h点mm分',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_CN.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_CN.php
new file mode 100644
index 0000000..9c05d5a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_CN.php
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - monkeycon
+ * - François B
+ * - Jason Katz-Brown
+ * - Serhan Apaydın
+ * - Matt Johnson
+ * - JD Isaacks
+ * - Zeno Zeng
+ * - Chris Hemp
+ * - shankesgk2
+ */
+return array_merge(require __DIR__.'/zh.php', [
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY年M月D日',
+        'LLL' => 'YYYY年M月D日Ah点mm分',
+        'LLLL' => 'YYYY年M月D日ddddAh点mm分',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_HK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_HK.php
new file mode 100644
index 0000000..c3ee9fc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_HK.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return require __DIR__.'/zh_Hant_HK.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans.php
new file mode 100644
index 0000000..9b91785
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans.php
@@ -0,0 +1,109 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - monkeycon
+ * - François B
+ * - Jason Katz-Brown
+ * - Konstantin Konev
+ * - Chris Lam
+ * - Serhan Apaydın
+ * - Gary Lo
+ * - JD Isaacks
+ * - Chris Hemp
+ * - shankesgk2
+ * - Daniel Cheung (danvim)
+ */
+return [
+    'year' => ':count:optional-space年',
+    'y' => ':count:optional-space年',
+    'month' => ':count:optional-space个月',
+    'm' => ':count:optional-space个月',
+    'week' => ':count:optional-space周',
+    'w' => ':count:optional-space周',
+    'day' => ':count:optional-space天',
+    'd' => ':count:optional-space天',
+    'hour' => ':count:optional-space小时',
+    'h' => ':count:optional-space小时',
+    'minute' => ':count:optional-space分钟',
+    'min' => ':count:optional-space分钟',
+    'second' => ':count:optional-space秒',
+    'a_second' => '{1}几秒|]1,Inf[:count:optional-space秒',
+    's' => ':count:optional-space秒',
+    'ago' => ':time前',
+    'from_now' => ':time后',
+    'after' => ':time后',
+    'before' => ':time前',
+    'diff_now' => '现在',
+    'diff_today' => '今天',
+    'diff_yesterday' => '昨天',
+    'diff_tomorrow' => '明天',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY年M月D日',
+        'LLL' => 'YYYY年M月D日 HH:mm',
+        'LLLL' => 'YYYY年M月D日dddd HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[今天]LT',
+        'nextDay' => '[明天]LT',
+        'nextWeek' => '[下]ddddLT',
+        'lastDay' => '[昨天]LT',
+        'lastWeek' => '[上]ddddLT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'DDD':
+                return $number.'日';
+            case 'M':
+                return $number.'月';
+            case 'w':
+            case 'W':
+                return $number.'周';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour, $minute) {
+        $time = $hour * 100 + $minute;
+        if ($time < 600) {
+            return '凌晨';
+        }
+        if ($time < 900) {
+            return '早上';
+        }
+        if ($time < 1130) {
+            return '上午';
+        }
+        if ($time < 1230) {
+            return '中午';
+        }
+        if ($time < 1800) {
+            return '下午';
+        }
+
+        return '晚上';
+    },
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
+    'weekdays_short' => ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => '',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_HK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_HK.php
new file mode 100644
index 0000000..007d071
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_HK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hans.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_MO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_MO.php
new file mode 100644
index 0000000..007d071
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_MO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hans.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_SG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_SG.php
new file mode 100644
index 0000000..007d071
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hans_SG.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hans.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant.php
new file mode 100644
index 0000000..a27b610
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant.php
@@ -0,0 +1,111 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Adam
+ * - monkeycon
+ * - François B
+ * - Jason Katz-Brown
+ * - Chris Lam
+ * - Serhan Apaydın
+ * - Gary Lo
+ * - JD Isaacks
+ * - Chris Hemp
+ * - Eddie
+ * - KID
+ * - shankesgk2
+ * - Daniel Cheung (danvim)
+ */
+return [
+    'year' => ':count:optional-space年',
+    'y' => ':count:optional-space年',
+    'month' => ':count:optional-space個月',
+    'm' => ':count:optional-space月',
+    'week' => ':count:optional-space週',
+    'w' => ':count:optional-space週',
+    'day' => ':count:optional-space天',
+    'd' => ':count:optional-space天',
+    'hour' => ':count:optional-space小時',
+    'h' => ':count:optional-space小時',
+    'minute' => ':count:optional-space分鐘',
+    'min' => ':count:optional-space分鐘',
+    'second' => ':count:optional-space秒',
+    'a_second' => '{1}幾秒|]1,Inf[:count:optional-space秒',
+    's' => ':count:optional-space秒',
+    'ago' => ':time前',
+    'from_now' => ':time後',
+    'after' => ':time後',
+    'before' => ':time前',
+    'diff_now' => '現在',
+    'diff_today' => '今天',
+    'diff_yesterday' => '昨天',
+    'diff_tomorrow' => '明天',
+    'formats' => [
+        'LT' => 'HH:mm',
+        'LTS' => 'HH:mm:ss',
+        'L' => 'YYYY/MM/DD',
+        'LL' => 'YYYY年M月D日',
+        'LLL' => 'YYYY年M月D日 HH:mm',
+        'LLLL' => 'YYYY年M月D日dddd HH:mm',
+    ],
+    'calendar' => [
+        'sameDay' => '[今天] LT',
+        'nextDay' => '[明天] LT',
+        'nextWeek' => '[下]dddd LT',
+        'lastDay' => '[昨天] LT',
+        'lastWeek' => '[上]dddd LT',
+        'sameElse' => 'L',
+    ],
+    'ordinal' => function ($number, $period) {
+        switch ($period) {
+            case 'd':
+            case 'D':
+            case 'DDD':
+                return $number.'日';
+            case 'M':
+                return $number.'月';
+            case 'w':
+            case 'W':
+                return $number.'周';
+            default:
+                return $number;
+        }
+    },
+    'meridiem' => function ($hour, $minute) {
+        $time = $hour * 100 + $minute;
+        if ($time < 600) {
+            return '凌晨';
+        }
+        if ($time < 900) {
+            return '早上';
+        }
+        if ($time < 1130) {
+            return '上午';
+        }
+        if ($time < 1230) {
+            return '中午';
+        }
+        if ($time < 1800) {
+            return '下午';
+        }
+
+        return '晚上';
+    },
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
+    'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
+    'weekdays_short' => ['週日', '週一', '週二', '週三', '週四', '週五', '週六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'first_day_of_week' => 1,
+    'day_of_first_week_of_year' => 4,
+    'list' => '',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_HK.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_HK.php
new file mode 100644
index 0000000..24797f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_HK.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hant.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_MO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_MO.php
new file mode 100644
index 0000000..24797f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_MO.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hant.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_TW.php
new file mode 100644
index 0000000..24797f9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_Hant_TW.php
@@ -0,0 +1,11 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+return require __DIR__.'/zh_Hant.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_MO.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_MO.php
new file mode 100644
index 0000000..1c86d47
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_MO.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - tarunvelli
+ * - Eddie
+ * - KID
+ * - shankesgk2
+ */
+return array_replace_recursive(require __DIR__.'/zh_Hant.php', [
+    'after' => ':time后',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_SG.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_SG.php
new file mode 100644
index 0000000..c451a56
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_SG.php
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/zh.php', [
+    'formats' => [
+        'L' => 'YYYY年MM月DD日',
+    ],
+    'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'months_short' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
+    'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
+    'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
+    'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
+    'day_of_first_week_of_year' => 1,
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_TW.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_TW.php
new file mode 100644
index 0000000..c6789ed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_TW.php
@@ -0,0 +1,12 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return require __DIR__.'/zh_Hant_TW.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_YUE.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_YUE.php
new file mode 100644
index 0000000..b0d9ba8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zh_YUE.php
@@ -0,0 +1,20 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - IBM Globalization Center of Competency, Yamato Software Laboratory    bug-glibc-locales@gnu.org
+ */
+return array_replace_recursive(require __DIR__.'/zh.php', [
+    'formats' => [
+        'L' => 'YYYY-MM-DD',
+    ],
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu.php
new file mode 100644
index 0000000..9a6cce0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu.php
@@ -0,0 +1,15 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Unknown default region, use the first alphabetically.
+ */
+return require __DIR__.'/zu_ZA.php';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu_ZA.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu_ZA.php
new file mode 100644
index 0000000..6bfb72f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Lang/zu_ZA.php
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * Authors:
+ * - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
+ */
+return array_replace_recursive(require __DIR__.'/en.php', [
+    'formats' => [
+        'L' => 'DD/MM/YYYY',
+    ],
+    'months' => ['Januwari', 'Februwari', 'Mashi', 'Ephreli', 'Meyi', 'Juni', 'Julayi', 'Agasti', 'Septhemba', 'Okthoba', 'Novemba', 'Disemba'],
+    'months_short' => ['Jan', 'Feb', 'Mas', 'Eph', 'Mey', 'Jun', 'Jul', 'Aga', 'Sep', 'Okt', 'Nov', 'Dis'],
+    'weekdays' => ['iSonto', 'uMsombuluko', 'uLwesibili', 'uLwesithathu', 'uLwesine', 'uLwesihlanu', 'uMgqibelo'],
+    'weekdays_short' => ['Son', 'Mso', 'Bil', 'Tha', 'Sin', 'Hla', 'Mgq'],
+    'weekdays_min' => ['Son', 'Mso', 'Bil', 'Tha', 'Sin', 'Hla', 'Mgq'],
+    'day_of_first_week_of_year' => 1,
+
+    'year' => 'kweminyaka engu-:count',
+    'y' => 'kweminyaka engu-:count',
+    'a_year' => 'kweminyaka engu-:count',
+
+    'month' => 'izinyanga ezingu-:count',
+    'm' => 'izinyanga ezingu-:count',
+    'a_month' => 'izinyanga ezingu-:count',
+
+    'week' => 'lwamasonto angu-:count',
+    'w' => 'lwamasonto angu-:count',
+    'a_week' => 'lwamasonto angu-:count',
+
+    'day' => 'ezingaba ngu-:count',
+    'd' => 'ezingaba ngu-:count',
+    'a_day' => 'ezingaba ngu-:count',
+
+    'hour' => 'amahora angu-:count',
+    'h' => 'amahora angu-:count',
+    'a_hour' => 'amahora angu-:count',
+
+    'minute' => 'ngemizuzu engu-:count',
+    'min' => 'ngemizuzu engu-:count',
+    'a_minute' => 'ngemizuzu engu-:count',
+
+    'second' => 'imizuzwana engu-:count',
+    's' => 'imizuzwana engu-:count',
+    'a_second' => 'imizuzwana engu-:count',
+]);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Language.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Language.php
new file mode 100644
index 0000000..3790285
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Language.php
@@ -0,0 +1,341 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use JsonSerializable;
+use ReturnTypeWillChange;
+
+class Language implements JsonSerializable
+{
+    /**
+     * @var array
+     */
+    protected static $languagesNames;
+
+    /**
+     * @var array
+     */
+    protected static $regionsNames;
+
+    /**
+     * @var string
+     */
+    protected $id;
+
+    /**
+     * @var string
+     */
+    protected $code;
+
+    /**
+     * @var string|null
+     */
+    protected $variant;
+
+    /**
+     * @var string|null
+     */
+    protected $region;
+
+    /**
+     * @var array
+     */
+    protected $names;
+
+    /**
+     * @var string
+     */
+    protected $isoName;
+
+    /**
+     * @var string
+     */
+    protected $nativeName;
+
+    public function __construct(string $id)
+    {
+        $this->id = str_replace('-', '_', $id);
+        $parts = explode('_', $this->id);
+        $this->code = $parts[0];
+
+        if (isset($parts[1])) {
+            if (!preg_match('/^[A-Z]+$/', $parts[1])) {
+                $this->variant = $parts[1];
+                $parts[1] = $parts[2] ?? null;
+            }
+            if ($parts[1]) {
+                $this->region = $parts[1];
+            }
+        }
+    }
+
+    /**
+     * Get the list of the known languages.
+     *
+     * @return array
+     */
+    public static function all()
+    {
+        if (!static::$languagesNames) {
+            static::$languagesNames = require __DIR__.'/List/languages.php';
+        }
+
+        return static::$languagesNames;
+    }
+
+    /**
+     * Get the list of the known regions.
+     *
+     * @return array
+     */
+    public static function regions()
+    {
+        if (!static::$regionsNames) {
+            static::$regionsNames = require __DIR__.'/List/regions.php';
+        }
+
+        return static::$regionsNames;
+    }
+
+    /**
+     * Get both isoName and nativeName as an array.
+     *
+     * @return array
+     */
+    public function getNames(): array
+    {
+        if (!$this->names) {
+            $this->names = static::all()[$this->code] ?? [
+                'isoName' => $this->code,
+                'nativeName' => $this->code,
+            ];
+        }
+
+        return $this->names;
+    }
+
+    /**
+     * Returns the original locale ID.
+     *
+     * @return string
+     */
+    public function getId(): string
+    {
+        return $this->id;
+    }
+
+    /**
+     * Returns the code of the locale "en"/"fr".
+     *
+     * @return string
+     */
+    public function getCode(): string
+    {
+        return $this->code;
+    }
+
+    /**
+     * Returns the variant code such as cyrl/latn.
+     *
+     * @return string|null
+     */
+    public function getVariant(): ?string
+    {
+        return $this->variant;
+    }
+
+    /**
+     * Returns the variant such as Cyrillic/Latin.
+     *
+     * @return string|null
+     */
+    public function getVariantName(): ?string
+    {
+        if ($this->variant === 'Latn') {
+            return 'Latin';
+        }
+
+        if ($this->variant === 'Cyrl') {
+            return 'Cyrillic';
+        }
+
+        return $this->variant;
+    }
+
+    /**
+     * Returns the region part of the locale.
+     *
+     * @return string|null
+     */
+    public function getRegion(): ?string
+    {
+        return $this->region;
+    }
+
+    /**
+     * Returns the region name for the current language.
+     *
+     * @return string|null
+     */
+    public function getRegionName(): ?string
+    {
+        return $this->region ? (static::regions()[$this->region] ?? $this->region) : null;
+    }
+
+    /**
+     * Returns the long ISO language name.
+     *
+     * @return string
+     */
+    public function getFullIsoName(): string
+    {
+        if (!$this->isoName) {
+            $this->isoName = $this->getNames()['isoName'];
+        }
+
+        return $this->isoName;
+    }
+
+    /**
+     * Set the ISO language name.
+     *
+     * @param string $isoName
+     */
+    public function setIsoName(string $isoName): self
+    {
+        $this->isoName = $isoName;
+
+        return $this;
+    }
+
+    /**
+     * Return the full name of the language in this language.
+     *
+     * @return string
+     */
+    public function getFullNativeName(): string
+    {
+        if (!$this->nativeName) {
+            $this->nativeName = $this->getNames()['nativeName'];
+        }
+
+        return $this->nativeName;
+    }
+
+    /**
+     * Set the name of the language in this language.
+     *
+     * @param string $nativeName
+     */
+    public function setNativeName(string $nativeName): self
+    {
+        $this->nativeName = $nativeName;
+
+        return $this;
+    }
+
+    /**
+     * Returns the short ISO language name.
+     *
+     * @return string
+     */
+    public function getIsoName(): string
+    {
+        $name = $this->getFullIsoName();
+
+        return trim(strstr($name, ',', true) ?: $name);
+    }
+
+    /**
+     * Get the short name of the language in this language.
+     *
+     * @return string
+     */
+    public function getNativeName(): string
+    {
+        $name = $this->getFullNativeName();
+
+        return trim(strstr($name, ',', true) ?: $name);
+    }
+
+    /**
+     * Get a string with short ISO name, region in parentheses if applicable, variant in parentheses if applicable.
+     *
+     * @return string
+     */
+    public function getIsoDescription()
+    {
+        $region = $this->getRegionName();
+        $variant = $this->getVariantName();
+
+        return $this->getIsoName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
+    }
+
+    /**
+     * Get a string with short native name, region in parentheses if applicable, variant in parentheses if applicable.
+     *
+     * @return string
+     */
+    public function getNativeDescription()
+    {
+        $region = $this->getRegionName();
+        $variant = $this->getVariantName();
+
+        return $this->getNativeName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
+    }
+
+    /**
+     * Get a string with long ISO name, region in parentheses if applicable, variant in parentheses if applicable.
+     *
+     * @return string
+     */
+    public function getFullIsoDescription()
+    {
+        $region = $this->getRegionName();
+        $variant = $this->getVariantName();
+
+        return $this->getFullIsoName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
+    }
+
+    /**
+     * Get a string with long native name, region in parentheses if applicable, variant in parentheses if applicable.
+     *
+     * @return string
+     */
+    public function getFullNativeDescription()
+    {
+        $region = $this->getRegionName();
+        $variant = $this->getVariantName();
+
+        return $this->getFullNativeName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
+    }
+
+    /**
+     * Returns the original locale ID.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->getId();
+    }
+
+    /**
+     * Get a string with short ISO name, region in parentheses if applicable, variant in parentheses if applicable.
+     *
+     * @return string
+     */
+    #[ReturnTypeWillChange]
+    public function jsonSerialize()
+    {
+        return $this->getIsoDescription();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Laravel/ServiceProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Laravel/ServiceProvider.php
new file mode 100644
index 0000000..d71c888
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Laravel/ServiceProvider.php
@@ -0,0 +1,70 @@
+<?php
+
+namespace Carbon\Laravel;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+use Carbon\CarbonInterval;
+use Carbon\CarbonPeriod;
+use Illuminate\Contracts\Events\Dispatcher as DispatcherContract;
+use Illuminate\Events\Dispatcher;
+use Illuminate\Events\EventDispatcher;
+use Illuminate\Support\Carbon as IlluminateCarbon;
+use Illuminate\Support\Facades\Date;
+use Throwable;
+
+class ServiceProvider extends \Illuminate\Support\ServiceProvider
+{
+    public function boot()
+    {
+        $this->updateLocale();
+
+        if (!$this->app->bound('events')) {
+            return;
+        }
+
+        $service = $this;
+        $events = $this->app['events'];
+
+        if ($this->isEventDispatcher($events)) {
+            $events->listen(class_exists('Illuminate\Foundation\Events\LocaleUpdated') ? 'Illuminate\Foundation\Events\LocaleUpdated' : 'locale.changed', function () use ($service) {
+                $service->updateLocale();
+            });
+        }
+    }
+
+    public function updateLocale()
+    {
+        $app = $this->app && method_exists($this->app, 'getLocale') ? $this->app : app('translator');
+        $locale = $app->getLocale();
+        Carbon::setLocale($locale);
+        CarbonImmutable::setLocale($locale);
+        CarbonPeriod::setLocale($locale);
+        CarbonInterval::setLocale($locale);
+
+        if (class_exists(IlluminateCarbon::class)) {
+            IlluminateCarbon::setLocale($locale);
+        }
+
+        if (class_exists(Date::class)) {
+            try {
+                $root = Date::getFacadeRoot();
+                $root->setLocale($locale);
+            } catch (Throwable $e) {
+                // Non Carbon class in use in Date facade
+            }
+        }
+    }
+
+    public function register()
+    {
+        // Needed for Laravel < 5.3 compatibility
+    }
+
+    protected function isEventDispatcher($instance)
+    {
+        return $instance instanceof EventDispatcher
+            || $instance instanceof Dispatcher
+            || $instance instanceof DispatcherContract;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/languages.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/languages.php
new file mode 100644
index 0000000..5b5d9a1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/languages.php
@@ -0,0 +1,1239 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+return [
+    /*
+     * ISO 639-2
+     */
+    'ab' => [
+        'isoName' => 'Abkhazian',
+        'nativeName' => 'аҧсуа бызшәа, аҧсшәа',
+    ],
+    'aa' => [
+        'isoName' => 'Afar',
+        'nativeName' => 'Afaraf',
+    ],
+    'af' => [
+        'isoName' => 'Afrikaans',
+        'nativeName' => 'Afrikaans',
+    ],
+    'ak' => [
+        'isoName' => 'Akan',
+        'nativeName' => 'Akan',
+    ],
+    'sq' => [
+        'isoName' => 'Albanian',
+        'nativeName' => 'Shqip',
+    ],
+    'am' => [
+        'isoName' => 'Amharic',
+        'nativeName' => 'አማርኛ',
+    ],
+    'ar' => [
+        'isoName' => 'Arabic',
+        'nativeName' => 'العربية',
+    ],
+    'an' => [
+        'isoName' => 'Aragonese',
+        'nativeName' => 'aragonés',
+    ],
+    'hy' => [
+        'isoName' => 'Armenian',
+        'nativeName' => 'Հայերեն',
+    ],
+    'as' => [
+        'isoName' => 'Assamese',
+        'nativeName' => 'অসমীয়া',
+    ],
+    'av' => [
+        'isoName' => 'Avaric',
+        'nativeName' => 'авар мацӀ, магӀарул мацӀ',
+    ],
+    'ae' => [
+        'isoName' => 'Avestan',
+        'nativeName' => 'avesta',
+    ],
+    'ay' => [
+        'isoName' => 'Aymara',
+        'nativeName' => 'aymar aru',
+    ],
+    'az' => [
+        'isoName' => 'Azerbaijani',
+        'nativeName' => 'azərbaycan dili',
+    ],
+    'bm' => [
+        'isoName' => 'Bambara',
+        'nativeName' => 'bamanankan',
+    ],
+    'ba' => [
+        'isoName' => 'Bashkir',
+        'nativeName' => 'башҡорт теле',
+    ],
+    'eu' => [
+        'isoName' => 'Basque',
+        'nativeName' => 'euskara, euskera',
+    ],
+    'be' => [
+        'isoName' => 'Belarusian',
+        'nativeName' => 'беларуская мова',
+    ],
+    'bn' => [
+        'isoName' => 'Bengali',
+        'nativeName' => 'বাংলা',
+    ],
+    'bh' => [
+        'isoName' => 'Bihari languages',
+        'nativeName' => 'भोजपुरी',
+    ],
+    'bi' => [
+        'isoName' => 'Bislama',
+        'nativeName' => 'Bislama',
+    ],
+    'bs' => [
+        'isoName' => 'Bosnian',
+        'nativeName' => 'bosanski jezik',
+    ],
+    'br' => [
+        'isoName' => 'Breton',
+        'nativeName' => 'brezhoneg',
+    ],
+    'bg' => [
+        'isoName' => 'Bulgarian',
+        'nativeName' => 'български език',
+    ],
+    'my' => [
+        'isoName' => 'Burmese',
+        'nativeName' => 'ဗမာစာ',
+    ],
+    'ca' => [
+        'isoName' => 'Catalan, Valencian',
+        'nativeName' => 'català, valencià',
+    ],
+    'ch' => [
+        'isoName' => 'Chamorro',
+        'nativeName' => 'Chamoru',
+    ],
+    'ce' => [
+        'isoName' => 'Chechen',
+        'nativeName' => 'нохчийн мотт',
+    ],
+    'ny' => [
+        'isoName' => 'Chichewa, Chewa, Nyanja',
+        'nativeName' => 'chiCheŵa, chinyanja',
+    ],
+    'zh' => [
+        'isoName' => 'Chinese',
+        'nativeName' => '中文 (Zhōngwén), 汉语, 漢語',
+    ],
+    'cv' => [
+        'isoName' => 'Chuvash',
+        'nativeName' => 'чӑваш чӗлхи',
+    ],
+    'kw' => [
+        'isoName' => 'Cornish',
+        'nativeName' => 'Kernewek',
+    ],
+    'co' => [
+        'isoName' => 'Corsican',
+        'nativeName' => 'corsu, lingua corsa',
+    ],
+    'cr' => [
+        'isoName' => 'Cree',
+        'nativeName' => 'ᓀᐦᐃᔭᐍᐏᐣ',
+    ],
+    'hr' => [
+        'isoName' => 'Croatian',
+        'nativeName' => 'hrvatski jezik',
+    ],
+    'cs' => [
+        'isoName' => 'Czech',
+        'nativeName' => 'čeština, český jazyk',
+    ],
+    'da' => [
+        'isoName' => 'Danish',
+        'nativeName' => 'dansk',
+    ],
+    'dv' => [
+        'isoName' => 'Divehi, Dhivehi, Maldivian',
+        'nativeName' => 'ދިވެހި',
+    ],
+    'nl' => [
+        'isoName' => 'Dutch, Flemish',
+        'nativeName' => 'Nederlands, Vlaams',
+    ],
+    'dz' => [
+        'isoName' => 'Dzongkha',
+        'nativeName' => 'རྫོང་ཁ',
+    ],
+    'en' => [
+        'isoName' => 'English',
+        'nativeName' => 'English',
+    ],
+    'eo' => [
+        'isoName' => 'Esperanto',
+        'nativeName' => 'Esperanto',
+    ],
+    'et' => [
+        'isoName' => 'Estonian',
+        'nativeName' => 'eesti, eesti keel',
+    ],
+    'ee' => [
+        'isoName' => 'Ewe',
+        'nativeName' => 'Eʋegbe',
+    ],
+    'fo' => [
+        'isoName' => 'Faroese',
+        'nativeName' => 'føroyskt',
+    ],
+    'fj' => [
+        'isoName' => 'Fijian',
+        'nativeName' => 'vosa Vakaviti',
+    ],
+    'fi' => [
+        'isoName' => 'Finnish',
+        'nativeName' => 'suomi, suomen kieli',
+    ],
+    'fr' => [
+        'isoName' => 'French',
+        'nativeName' => 'français',
+    ],
+    'ff' => [
+        'isoName' => 'Fulah',
+        'nativeName' => 'Fulfulde, Pulaar, Pular',
+    ],
+    'gl' => [
+        'isoName' => 'Galician',
+        'nativeName' => 'Galego',
+    ],
+    'ka' => [
+        'isoName' => 'Georgian',
+        'nativeName' => 'ქართული',
+    ],
+    'de' => [
+        'isoName' => 'German',
+        'nativeName' => 'Deutsch',
+    ],
+    'el' => [
+        'isoName' => 'Greek (modern)',
+        'nativeName' => 'ελληνικά',
+    ],
+    'gn' => [
+        'isoName' => 'Guaraní',
+        'nativeName' => 'Avañe\'ẽ',
+    ],
+    'gu' => [
+        'isoName' => 'Gujarati',
+        'nativeName' => 'ગુજરાતી',
+    ],
+    'ht' => [
+        'isoName' => 'Haitian, Haitian Creole',
+        'nativeName' => 'Kreyòl ayisyen',
+    ],
+    'ha' => [
+        'isoName' => 'Hausa',
+        'nativeName' => '(Hausa) هَوُسَ',
+    ],
+    'he' => [
+        'isoName' => 'Hebrew (modern)',
+        'nativeName' => 'עברית',
+    ],
+    'hz' => [
+        'isoName' => 'Herero',
+        'nativeName' => 'Otjiherero',
+    ],
+    'hi' => [
+        'isoName' => 'Hindi',
+        'nativeName' => 'हिन्दी, हिंदी',
+    ],
+    'ho' => [
+        'isoName' => 'Hiri Motu',
+        'nativeName' => 'Hiri Motu',
+    ],
+    'hu' => [
+        'isoName' => 'Hungarian',
+        'nativeName' => 'magyar',
+    ],
+    'ia' => [
+        'isoName' => 'Interlingua',
+        'nativeName' => 'Interlingua',
+    ],
+    'id' => [
+        'isoName' => 'Indonesian',
+        'nativeName' => 'Bahasa Indonesia',
+    ],
+    'ie' => [
+        'isoName' => 'Interlingue',
+        'nativeName' => 'Originally called Occidental; then Interlingue after WWII',
+    ],
+    'ga' => [
+        'isoName' => 'Irish',
+        'nativeName' => 'Gaeilge',
+    ],
+    'ig' => [
+        'isoName' => 'Igbo',
+        'nativeName' => 'Asụsụ Igbo',
+    ],
+    'ik' => [
+        'isoName' => 'Inupiaq',
+        'nativeName' => 'Iñupiaq, Iñupiatun',
+    ],
+    'io' => [
+        'isoName' => 'Ido',
+        'nativeName' => 'Ido',
+    ],
+    'is' => [
+        'isoName' => 'Icelandic',
+        'nativeName' => 'Íslenska',
+    ],
+    'it' => [
+        'isoName' => 'Italian',
+        'nativeName' => 'Italiano',
+    ],
+    'iu' => [
+        'isoName' => 'Inuktitut',
+        'nativeName' => 'ᐃᓄᒃᑎᑐᑦ',
+    ],
+    'ja' => [
+        'isoName' => 'Japanese',
+        'nativeName' => '日本語 (にほんご)',
+    ],
+    'jv' => [
+        'isoName' => 'Javanese',
+        'nativeName' => 'ꦧꦱꦗꦮ, Basa Jawa',
+    ],
+    'kl' => [
+        'isoName' => 'Kalaallisut, Greenlandic',
+        'nativeName' => 'kalaallisut, kalaallit oqaasii',
+    ],
+    'kn' => [
+        'isoName' => 'Kannada',
+        'nativeName' => 'ಕನ್ನಡ',
+    ],
+    'kr' => [
+        'isoName' => 'Kanuri',
+        'nativeName' => 'Kanuri',
+    ],
+    'ks' => [
+        'isoName' => 'Kashmiri',
+        'nativeName' => 'कश्मीरी, كشميري‎',
+    ],
+    'kk' => [
+        'isoName' => 'Kazakh',
+        'nativeName' => 'қазақ тілі',
+    ],
+    'km' => [
+        'isoName' => 'Central Khmer',
+        'nativeName' => 'ខ្មែរ, ខេមរភាសា, ភាសាខ្មែរ',
+    ],
+    'ki' => [
+        'isoName' => 'Kikuyu, Gikuyu',
+        'nativeName' => 'Gĩkũyũ',
+    ],
+    'rw' => [
+        'isoName' => 'Kinyarwanda',
+        'nativeName' => 'Ikinyarwanda',
+    ],
+    'ky' => [
+        'isoName' => 'Kirghiz, Kyrgyz',
+        'nativeName' => 'Кыргызча, Кыргыз тили',
+    ],
+    'kv' => [
+        'isoName' => 'Komi',
+        'nativeName' => 'коми кыв',
+    ],
+    'kg' => [
+        'isoName' => 'Kongo',
+        'nativeName' => 'Kikongo',
+    ],
+    'ko' => [
+        'isoName' => 'Korean',
+        'nativeName' => '한국어',
+    ],
+    'ku' => [
+        'isoName' => 'Kurdish',
+        'nativeName' => 'Kurdî, کوردی‎',
+    ],
+    'kj' => [
+        'isoName' => 'Kuanyama, Kwanyama',
+        'nativeName' => 'Kuanyama',
+    ],
+    'la' => [
+        'isoName' => 'Latin',
+        'nativeName' => 'latine, lingua latina',
+    ],
+    'lb' => [
+        'isoName' => 'Luxembourgish, Letzeburgesch',
+        'nativeName' => 'Lëtzebuergesch',
+    ],
+    'lg' => [
+        'isoName' => 'Ganda',
+        'nativeName' => 'Luganda',
+    ],
+    'li' => [
+        'isoName' => 'Limburgan, Limburger, Limburgish',
+        'nativeName' => 'Limburgs',
+    ],
+    'ln' => [
+        'isoName' => 'Lingala',
+        'nativeName' => 'Lingála',
+    ],
+    'lo' => [
+        'isoName' => 'Lao',
+        'nativeName' => 'ພາສາລາວ',
+    ],
+    'lt' => [
+        'isoName' => 'Lithuanian',
+        'nativeName' => 'lietuvių kalba',
+    ],
+    'lu' => [
+        'isoName' => 'Luba-Katanga',
+        'nativeName' => 'Kiluba',
+    ],
+    'lv' => [
+        'isoName' => 'Latvian',
+        'nativeName' => 'latviešu valoda',
+    ],
+    'gv' => [
+        'isoName' => 'Manx',
+        'nativeName' => 'Gaelg, Gailck',
+    ],
+    'mk' => [
+        'isoName' => 'Macedonian',
+        'nativeName' => 'македонски јазик',
+    ],
+    'mg' => [
+        'isoName' => 'Malagasy',
+        'nativeName' => 'fiteny malagasy',
+    ],
+    'ms' => [
+        'isoName' => 'Malay',
+        'nativeName' => 'Bahasa Melayu, بهاس ملايو‎',
+    ],
+    'ml' => [
+        'isoName' => 'Malayalam',
+        'nativeName' => 'മലയാളം',
+    ],
+    'mt' => [
+        'isoName' => 'Maltese',
+        'nativeName' => 'Malti',
+    ],
+    'mi' => [
+        'isoName' => 'Maori',
+        'nativeName' => 'te reo Māori',
+    ],
+    'mr' => [
+        'isoName' => 'Marathi',
+        'nativeName' => 'मराठी',
+    ],
+    'mh' => [
+        'isoName' => 'Marshallese',
+        'nativeName' => 'Kajin M̧ajeļ',
+    ],
+    'mn' => [
+        'isoName' => 'Mongolian',
+        'nativeName' => 'Монгол хэл',
+    ],
+    'na' => [
+        'isoName' => 'Nauru',
+        'nativeName' => 'Dorerin Naoero',
+    ],
+    'nv' => [
+        'isoName' => 'Navajo, Navaho',
+        'nativeName' => 'Diné bizaad',
+    ],
+    'nd' => [
+        'isoName' => 'North Ndebele',
+        'nativeName' => 'isiNdebele',
+    ],
+    'ne' => [
+        'isoName' => 'Nepali',
+        'nativeName' => 'नेपाली',
+    ],
+    'ng' => [
+        'isoName' => 'Ndonga',
+        'nativeName' => 'Owambo',
+    ],
+    'nb' => [
+        'isoName' => 'Norwegian Bokmål',
+        'nativeName' => 'Norsk Bokmål',
+    ],
+    'nn' => [
+        'isoName' => 'Norwegian Nynorsk',
+        'nativeName' => 'Norsk Nynorsk',
+    ],
+    'no' => [
+        'isoName' => 'Norwegian',
+        'nativeName' => 'Norsk',
+    ],
+    'ii' => [
+        'isoName' => 'Sichuan Yi, Nuosu',
+        'nativeName' => 'ꆈꌠ꒿ Nuosuhxop',
+    ],
+    'nr' => [
+        'isoName' => 'South Ndebele',
+        'nativeName' => 'isiNdebele',
+    ],
+    'oc' => [
+        'isoName' => 'Occitan',
+        'nativeName' => 'occitan, lenga d\'òc',
+    ],
+    'oj' => [
+        'isoName' => 'Ojibwa',
+        'nativeName' => 'ᐊᓂᔑᓈᐯᒧᐎᓐ',
+    ],
+    'cu' => [
+        'isoName' => 'Church Slavic, Church Slavonic, Old Church Slavonic, Old Slavonic, Old Bulgarian',
+        'nativeName' => 'ѩзыкъ словѣньскъ',
+    ],
+    'om' => [
+        'isoName' => 'Oromo',
+        'nativeName' => 'Afaan Oromoo',
+    ],
+    'or' => [
+        'isoName' => 'Oriya',
+        'nativeName' => 'ଓଡ଼ିଆ',
+    ],
+    'os' => [
+        'isoName' => 'Ossetian, Ossetic',
+        'nativeName' => 'ирон æвзаг',
+    ],
+    'pa' => [
+        'isoName' => 'Panjabi, Punjabi',
+        'nativeName' => 'ਪੰਜਾਬੀ',
+    ],
+    'pi' => [
+        'isoName' => 'Pali',
+        'nativeName' => 'पाऴि',
+    ],
+    'fa' => [
+        'isoName' => 'Persian',
+        'nativeName' => 'فارسی',
+    ],
+    'pl' => [
+        'isoName' => 'Polish',
+        'nativeName' => 'język polski, polszczyzna',
+    ],
+    'ps' => [
+        'isoName' => 'Pashto, Pushto',
+        'nativeName' => 'پښتو',
+    ],
+    'pt' => [
+        'isoName' => 'Portuguese',
+        'nativeName' => 'Português',
+    ],
+    'qu' => [
+        'isoName' => 'Quechua',
+        'nativeName' => 'Runa Simi, Kichwa',
+    ],
+    'rm' => [
+        'isoName' => 'Romansh',
+        'nativeName' => 'Rumantsch Grischun',
+    ],
+    'rn' => [
+        'isoName' => 'Rundi',
+        'nativeName' => 'Ikirundi',
+    ],
+    'ro' => [
+        'isoName' => 'Romanian, Moldavian, Moldovan',
+        'nativeName' => 'Română',
+    ],
+    'ru' => [
+        'isoName' => 'Russian',
+        'nativeName' => 'русский',
+    ],
+    'sa' => [
+        'isoName' => 'Sanskrit',
+        'nativeName' => 'संस्कृतम्',
+    ],
+    'sc' => [
+        'isoName' => 'Sardinian',
+        'nativeName' => 'sardu',
+    ],
+    'sd' => [
+        'isoName' => 'Sindhi',
+        'nativeName' => 'सिन्धी, سنڌي، سندھی‎',
+    ],
+    'se' => [
+        'isoName' => 'Northern Sami',
+        'nativeName' => 'Davvisámegiella',
+    ],
+    'sm' => [
+        'isoName' => 'Samoan',
+        'nativeName' => 'gagana fa\'a Samoa',
+    ],
+    'sg' => [
+        'isoName' => 'Sango',
+        'nativeName' => 'yângâ tî sängö',
+    ],
+    'sr' => [
+        'isoName' => 'Serbian',
+        'nativeName' => 'српски језик',
+    ],
+    'gd' => [
+        'isoName' => 'Gaelic, Scottish Gaelic',
+        'nativeName' => 'Gàidhlig',
+    ],
+    'sn' => [
+        'isoName' => 'Shona',
+        'nativeName' => 'chiShona',
+    ],
+    'si' => [
+        'isoName' => 'Sinhala, Sinhalese',
+        'nativeName' => 'සිංහල',
+    ],
+    'sk' => [
+        'isoName' => 'Slovak',
+        'nativeName' => 'Slovenčina, Slovenský Jazyk',
+    ],
+    'sl' => [
+        'isoName' => 'Slovene',
+        'nativeName' => 'Slovenski Jezik, Slovenščina',
+    ],
+    'so' => [
+        'isoName' => 'Somali',
+        'nativeName' => 'Soomaaliga, af Soomaali',
+    ],
+    'st' => [
+        'isoName' => 'Southern Sotho',
+        'nativeName' => 'Sesotho',
+    ],
+    'es' => [
+        'isoName' => 'Spanish, Castilian',
+        'nativeName' => 'Español',
+    ],
+    'su' => [
+        'isoName' => 'Sundanese',
+        'nativeName' => 'Basa Sunda',
+    ],
+    'sw' => [
+        'isoName' => 'Swahili',
+        'nativeName' => 'Kiswahili',
+    ],
+    'ss' => [
+        'isoName' => 'Swati',
+        'nativeName' => 'SiSwati',
+    ],
+    'sv' => [
+        'isoName' => 'Swedish',
+        'nativeName' => 'Svenska',
+    ],
+    'ta' => [
+        'isoName' => 'Tamil',
+        'nativeName' => 'தமிழ்',
+    ],
+    'te' => [
+        'isoName' => 'Telugu',
+        'nativeName' => 'తెలుగు',
+    ],
+    'tg' => [
+        'isoName' => 'Tajik',
+        'nativeName' => 'тоҷикӣ, toçikī, تاجیکی‎',
+    ],
+    'th' => [
+        'isoName' => 'Thai',
+        'nativeName' => 'ไทย',
+    ],
+    'ti' => [
+        'isoName' => 'Tigrinya',
+        'nativeName' => 'ትግርኛ',
+    ],
+    'bo' => [
+        'isoName' => 'Tibetan',
+        'nativeName' => 'བོད་ཡིག',
+    ],
+    'tk' => [
+        'isoName' => 'Turkmen',
+        'nativeName' => 'Türkmen, Түркмен',
+    ],
+    'tl' => [
+        'isoName' => 'Tagalog',
+        'nativeName' => 'Wikang Tagalog',
+    ],
+    'tn' => [
+        'isoName' => 'Tswana',
+        'nativeName' => 'Setswana',
+    ],
+    'to' => [
+        'isoName' => 'Tongan (Tonga Islands)',
+        'nativeName' => 'Faka Tonga',
+    ],
+    'tr' => [
+        'isoName' => 'Turkish',
+        'nativeName' => 'Türkçe',
+    ],
+    'ts' => [
+        'isoName' => 'Tsonga',
+        'nativeName' => 'Xitsonga',
+    ],
+    'tt' => [
+        'isoName' => 'Tatar',
+        'nativeName' => 'татар теле, tatar tele',
+    ],
+    'tw' => [
+        'isoName' => 'Twi',
+        'nativeName' => 'Twi',
+    ],
+    'ty' => [
+        'isoName' => 'Tahitian',
+        'nativeName' => 'Reo Tahiti',
+    ],
+    'ug' => [
+        'isoName' => 'Uighur, Uyghur',
+        'nativeName' => 'Uyƣurqə, ‫ئۇيغۇرچ',
+    ],
+    'uk' => [
+        'isoName' => 'Ukrainian',
+        'nativeName' => 'Українська',
+    ],
+    'ur' => [
+        'isoName' => 'Urdu',
+        'nativeName' => 'اردو',
+    ],
+    'uz' => [
+        'isoName' => 'Uzbek',
+        'nativeName' => 'Oʻzbek, Ўзбек, أۇزبېك‎',
+    ],
+    've' => [
+        'isoName' => 'Venda',
+        'nativeName' => 'Tshivenḓa',
+    ],
+    'vi' => [
+        'isoName' => 'Vietnamese',
+        'nativeName' => 'Tiếng Việt',
+    ],
+    'vo' => [
+        'isoName' => 'Volapük',
+        'nativeName' => 'Volapük',
+    ],
+    'wa' => [
+        'isoName' => 'Walloon',
+        'nativeName' => 'Walon',
+    ],
+    'cy' => [
+        'isoName' => 'Welsh',
+        'nativeName' => 'Cymraeg',
+    ],
+    'wo' => [
+        'isoName' => 'Wolof',
+        'nativeName' => 'Wollof',
+    ],
+    'fy' => [
+        'isoName' => 'Western Frisian',
+        'nativeName' => 'Frysk',
+    ],
+    'xh' => [
+        'isoName' => 'Xhosa',
+        'nativeName' => 'isiXhosa',
+    ],
+    'yi' => [
+        'isoName' => 'Yiddish',
+        'nativeName' => 'ייִדיש',
+    ],
+    'yo' => [
+        'isoName' => 'Yoruba',
+        'nativeName' => 'Yorùbá',
+    ],
+    'za' => [
+        'isoName' => 'Zhuang, Chuang',
+        'nativeName' => 'Saɯ cueŋƅ, Saw cuengh',
+    ],
+    'zu' => [
+        'isoName' => 'Zulu',
+        'nativeName' => 'isiZulu',
+    ],
+    /*
+     * Add ISO 639-3 languages available in Carbon
+     */
+    'agq' => [
+        'isoName' => 'Aghem',
+        'nativeName' => 'Aghem',
+    ],
+    'agr' => [
+        'isoName' => 'Aguaruna',
+        'nativeName' => 'Aguaruna',
+    ],
+    'anp' => [
+        'isoName' => 'Angika',
+        'nativeName' => 'Angika',
+    ],
+    'asa' => [
+        'isoName' => 'Asu',
+        'nativeName' => 'Asu',
+    ],
+    'ast' => [
+        'isoName' => 'Asturian',
+        'nativeName' => 'Asturian',
+    ],
+    'ayc' => [
+        'isoName' => 'Southern Aymara',
+        'nativeName' => 'Southern Aymara',
+    ],
+    'bas' => [
+        'isoName' => 'Basaa',
+        'nativeName' => 'Basaa',
+    ],
+    'bem' => [
+        'isoName' => 'Bemba',
+        'nativeName' => 'Bemba',
+    ],
+    'bez' => [
+        'isoName' => 'Bena',
+        'nativeName' => 'Bena',
+    ],
+    'bhb' => [
+        'isoName' => 'Bhili',
+        'nativeName' => 'Bhili',
+    ],
+    'bho' => [
+        'isoName' => 'Bhojpuri',
+        'nativeName' => 'Bhojpuri',
+    ],
+    'brx' => [
+        'isoName' => 'Bodo',
+        'nativeName' => 'Bodo',
+    ],
+    'byn' => [
+        'isoName' => 'Bilin',
+        'nativeName' => 'Bilin',
+    ],
+    'ccp' => [
+        'isoName' => 'Chakma',
+        'nativeName' => 'Chakma',
+    ],
+    'cgg' => [
+        'isoName' => 'Chiga',
+        'nativeName' => 'Chiga',
+    ],
+    'chr' => [
+        'isoName' => 'Cherokee',
+        'nativeName' => 'Cherokee',
+    ],
+    'cmn' => [
+        'isoName' => 'Chinese',
+        'nativeName' => 'Chinese',
+    ],
+    'crh' => [
+        'isoName' => 'Crimean Turkish',
+        'nativeName' => 'Crimean Turkish',
+    ],
+    'csb' => [
+        'isoName' => 'Kashubian',
+        'nativeName' => 'Kashubian',
+    ],
+    'dav' => [
+        'isoName' => 'Taita',
+        'nativeName' => 'Taita',
+    ],
+    'dje' => [
+        'isoName' => 'Zarma',
+        'nativeName' => 'Zarma',
+    ],
+    'doi' => [
+        'isoName' => 'Dogri (macrolanguage)',
+        'nativeName' => 'Dogri (macrolanguage)',
+    ],
+    'dsb' => [
+        'isoName' => 'Lower Sorbian',
+        'nativeName' => 'Lower Sorbian',
+    ],
+    'dua' => [
+        'isoName' => 'Duala',
+        'nativeName' => 'Duala',
+    ],
+    'dyo' => [
+        'isoName' => 'Jola-Fonyi',
+        'nativeName' => 'Jola-Fonyi',
+    ],
+    'ebu' => [
+        'isoName' => 'Embu',
+        'nativeName' => 'Embu',
+    ],
+    'ewo' => [
+        'isoName' => 'Ewondo',
+        'nativeName' => 'Ewondo',
+    ],
+    'fil' => [
+        'isoName' => 'Filipino',
+        'nativeName' => 'Filipino',
+    ],
+    'fur' => [
+        'isoName' => 'Friulian',
+        'nativeName' => 'Friulian',
+    ],
+    'gez' => [
+        'isoName' => 'Geez',
+        'nativeName' => 'Geez',
+    ],
+    'gom' => [
+        'isoName' => 'Konkani, Goan',
+        'nativeName' => 'ಕೊಂಕಣಿ',
+    ],
+    'gsw' => [
+        'isoName' => 'Swiss German',
+        'nativeName' => 'Swiss German',
+    ],
+    'guz' => [
+        'isoName' => 'Gusii',
+        'nativeName' => 'Gusii',
+    ],
+    'hak' => [
+        'isoName' => 'Hakka Chinese',
+        'nativeName' => 'Hakka Chinese',
+    ],
+    'haw' => [
+        'isoName' => 'Hawaiian',
+        'nativeName' => 'Hawaiian',
+    ],
+    'hif' => [
+        'isoName' => 'Fiji Hindi',
+        'nativeName' => 'Fiji Hindi',
+    ],
+    'hne' => [
+        'isoName' => 'Chhattisgarhi',
+        'nativeName' => 'Chhattisgarhi',
+    ],
+    'hsb' => [
+        'isoName' => 'Upper Sorbian',
+        'nativeName' => 'Upper Sorbian',
+    ],
+    'jgo' => [
+        'isoName' => 'Ngomba',
+        'nativeName' => 'Ngomba',
+    ],
+    'jmc' => [
+        'isoName' => 'Machame',
+        'nativeName' => 'Machame',
+    ],
+    'kab' => [
+        'isoName' => 'Kabyle',
+        'nativeName' => 'Kabyle',
+    ],
+    'kam' => [
+        'isoName' => 'Kamba',
+        'nativeName' => 'Kamba',
+    ],
+    'kde' => [
+        'isoName' => 'Makonde',
+        'nativeName' => 'Makonde',
+    ],
+    'kea' => [
+        'isoName' => 'Kabuverdianu',
+        'nativeName' => 'Kabuverdianu',
+    ],
+    'khq' => [
+        'isoName' => 'Koyra Chiini',
+        'nativeName' => 'Koyra Chiini',
+    ],
+    'kkj' => [
+        'isoName' => 'Kako',
+        'nativeName' => 'Kako',
+    ],
+    'kln' => [
+        'isoName' => 'Kalenjin',
+        'nativeName' => 'Kalenjin',
+    ],
+    'kok' => [
+        'isoName' => 'Konkani',
+        'nativeName' => 'Konkani',
+    ],
+    'ksb' => [
+        'isoName' => 'Shambala',
+        'nativeName' => 'Shambala',
+    ],
+    'ksf' => [
+        'isoName' => 'Bafia',
+        'nativeName' => 'Bafia',
+    ],
+    'ksh' => [
+        'isoName' => 'Colognian',
+        'nativeName' => 'Colognian',
+    ],
+    'lag' => [
+        'isoName' => 'Langi',
+        'nativeName' => 'Langi',
+    ],
+    'lij' => [
+        'isoName' => 'Ligurian',
+        'nativeName' => 'Ligurian',
+    ],
+    'lkt' => [
+        'isoName' => 'Lakota',
+        'nativeName' => 'Lakota',
+    ],
+    'lrc' => [
+        'isoName' => 'Northern Luri',
+        'nativeName' => 'Northern Luri',
+    ],
+    'luo' => [
+        'isoName' => 'Luo',
+        'nativeName' => 'Luo',
+    ],
+    'luy' => [
+        'isoName' => 'Luyia',
+        'nativeName' => 'Luyia',
+    ],
+    'lzh' => [
+        'isoName' => 'Literary Chinese',
+        'nativeName' => 'Literary Chinese',
+    ],
+    'mag' => [
+        'isoName' => 'Magahi',
+        'nativeName' => 'Magahi',
+    ],
+    'mai' => [
+        'isoName' => 'Maithili',
+        'nativeName' => 'Maithili',
+    ],
+    'mas' => [
+        'isoName' => 'Masai',
+        'nativeName' => 'Masai',
+    ],
+    'mer' => [
+        'isoName' => 'Meru',
+        'nativeName' => 'Meru',
+    ],
+    'mfe' => [
+        'isoName' => 'Morisyen',
+        'nativeName' => 'Morisyen',
+    ],
+    'mgh' => [
+        'isoName' => 'Makhuwa-Meetto',
+        'nativeName' => 'Makhuwa-Meetto',
+    ],
+    'mgo' => [
+        'isoName' => 'Metaʼ',
+        'nativeName' => 'Metaʼ',
+    ],
+    'mhr' => [
+        'isoName' => 'Eastern Mari',
+        'nativeName' => 'Eastern Mari',
+    ],
+    'miq' => [
+        'isoName' => 'Mískito',
+        'nativeName' => 'Mískito',
+    ],
+    'mjw' => [
+        'isoName' => 'Karbi',
+        'nativeName' => 'Karbi',
+    ],
+    'mni' => [
+        'isoName' => 'Manipuri',
+        'nativeName' => 'Manipuri',
+    ],
+    'mua' => [
+        'isoName' => 'Mundang',
+        'nativeName' => 'Mundang',
+    ],
+    'mzn' => [
+        'isoName' => 'Mazanderani',
+        'nativeName' => 'Mazanderani',
+    ],
+    'nan' => [
+        'isoName' => 'Min Nan Chinese',
+        'nativeName' => 'Min Nan Chinese',
+    ],
+    'naq' => [
+        'isoName' => 'Nama',
+        'nativeName' => 'Nama',
+    ],
+    'nds' => [
+        'isoName' => 'Low German',
+        'nativeName' => 'Low German',
+    ],
+    'nhn' => [
+        'isoName' => 'Central Nahuatl',
+        'nativeName' => 'Central Nahuatl',
+    ],
+    'niu' => [
+        'isoName' => 'Niuean',
+        'nativeName' => 'Niuean',
+    ],
+    'nmg' => [
+        'isoName' => 'Kwasio',
+        'nativeName' => 'Kwasio',
+    ],
+    'nnh' => [
+        'isoName' => 'Ngiemboon',
+        'nativeName' => 'Ngiemboon',
+    ],
+    'nso' => [
+        'isoName' => 'Northern Sotho',
+        'nativeName' => 'Northern Sotho',
+    ],
+    'nus' => [
+        'isoName' => 'Nuer',
+        'nativeName' => 'Nuer',
+    ],
+    'nyn' => [
+        'isoName' => 'Nyankole',
+        'nativeName' => 'Nyankole',
+    ],
+    'pap' => [
+        'isoName' => 'Papiamento',
+        'nativeName' => 'Papiamento',
+    ],
+    'prg' => [
+        'isoName' => 'Prussian',
+        'nativeName' => 'Prussian',
+    ],
+    'quz' => [
+        'isoName' => 'Cusco Quechua',
+        'nativeName' => 'Cusco Quechua',
+    ],
+    'raj' => [
+        'isoName' => 'Rajasthani',
+        'nativeName' => 'Rajasthani',
+    ],
+    'rof' => [
+        'isoName' => 'Rombo',
+        'nativeName' => 'Rombo',
+    ],
+    'rwk' => [
+        'isoName' => 'Rwa',
+        'nativeName' => 'Rwa',
+    ],
+    'sah' => [
+        'isoName' => 'Sakha',
+        'nativeName' => 'Sakha',
+    ],
+    'saq' => [
+        'isoName' => 'Samburu',
+        'nativeName' => 'Samburu',
+    ],
+    'sat' => [
+        'isoName' => 'Santali',
+        'nativeName' => 'Santali',
+    ],
+    'sbp' => [
+        'isoName' => 'Sangu',
+        'nativeName' => 'Sangu',
+    ],
+    'scr' => [
+        'isoName' => 'Serbo Croatian',
+        'nativeName' => 'Serbo Croatian',
+    ],
+    'seh' => [
+        'isoName' => 'Sena',
+        'nativeName' => 'Sena',
+    ],
+    'ses' => [
+        'isoName' => 'Koyraboro Senni',
+        'nativeName' => 'Koyraboro Senni',
+    ],
+    'sgs' => [
+        'isoName' => 'Samogitian',
+        'nativeName' => 'Samogitian',
+    ],
+    'shi' => [
+        'isoName' => 'Tachelhit',
+        'nativeName' => 'Tachelhit',
+    ],
+    'shn' => [
+        'isoName' => 'Shan',
+        'nativeName' => 'Shan',
+    ],
+    'shs' => [
+        'isoName' => 'Shuswap',
+        'nativeName' => 'Shuswap',
+    ],
+    'sid' => [
+        'isoName' => 'Sidamo',
+        'nativeName' => 'Sidamo',
+    ],
+    'smn' => [
+        'isoName' => 'Inari Sami',
+        'nativeName' => 'Inari Sami',
+    ],
+    'szl' => [
+        'isoName' => 'Silesian',
+        'nativeName' => 'Silesian',
+    ],
+    'tcy' => [
+        'isoName' => 'Tulu',
+        'nativeName' => 'Tulu',
+    ],
+    'teo' => [
+        'isoName' => 'Teso',
+        'nativeName' => 'Teso',
+    ],
+    'tet' => [
+        'isoName' => 'Tetum',
+        'nativeName' => 'Tetum',
+    ],
+    'the' => [
+        'isoName' => 'Chitwania Tharu',
+        'nativeName' => 'Chitwania Tharu',
+    ],
+    'tig' => [
+        'isoName' => 'Tigre',
+        'nativeName' => 'Tigre',
+    ],
+    'tlh' => [
+        'isoName' => 'Klingon',
+        'nativeName' => 'tlhIngan Hol',
+    ],
+    'tpi' => [
+        'isoName' => 'Tok Pisin',
+        'nativeName' => 'Tok Pisin',
+    ],
+    'twq' => [
+        'isoName' => 'Tasawaq',
+        'nativeName' => 'Tasawaq',
+    ],
+    'tzl' => [
+        'isoName' => 'Talossan',
+        'nativeName' => 'Talossan',
+    ],
+    'tzm' => [
+        'isoName' => 'Tamazight, Central Atlas',
+        'nativeName' => 'ⵜⵎⴰⵣⵉⵖⵜ',
+    ],
+    'unm' => [
+        'isoName' => 'Unami',
+        'nativeName' => 'Unami',
+    ],
+    'vai' => [
+        'isoName' => 'Vai',
+        'nativeName' => 'Vai',
+    ],
+    'vun' => [
+        'isoName' => 'Vunjo',
+        'nativeName' => 'Vunjo',
+    ],
+    'wae' => [
+        'isoName' => 'Walser',
+        'nativeName' => 'Walser',
+    ],
+    'wal' => [
+        'isoName' => 'Wolaytta',
+        'nativeName' => 'Wolaytta',
+    ],
+    'xog' => [
+        'isoName' => 'Soga',
+        'nativeName' => 'Soga',
+    ],
+    'yav' => [
+        'isoName' => 'Yangben',
+        'nativeName' => 'Yangben',
+    ],
+    'yue' => [
+        'isoName' => 'Cantonese',
+        'nativeName' => 'Cantonese',
+    ],
+    'yuw' => [
+        'isoName' => 'Yau (Morobe Province)',
+        'nativeName' => 'Yau (Morobe Province)',
+    ],
+    'zgh' => [
+        'isoName' => 'Standard Moroccan Tamazight',
+        'nativeName' => 'Standard Moroccan Tamazight',
+    ],
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/regions.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/regions.php
new file mode 100644
index 0000000..8ab8a9e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/List/regions.php
@@ -0,0 +1,265 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/*
+ * ISO 3166-2
+ */
+return [
+    'AD' => 'Andorra',
+    'AE' => 'United Arab Emirates',
+    'AF' => 'Afghanistan',
+    'AG' => 'Antigua and Barbuda',
+    'AI' => 'Anguilla',
+    'AL' => 'Albania',
+    'AM' => 'Armenia',
+    'AO' => 'Angola',
+    'AQ' => 'Antarctica',
+    'AR' => 'Argentina',
+    'AS' => 'American Samoa',
+    'AT' => 'Austria',
+    'AU' => 'Australia',
+    'AW' => 'Aruba',
+    'AX' => 'Åland Islands',
+    'AZ' => 'Azerbaijan',
+    'BA' => 'Bosnia and Herzegovina',
+    'BB' => 'Barbados',
+    'BD' => 'Bangladesh',
+    'BE' => 'Belgium',
+    'BF' => 'Burkina Faso',
+    'BG' => 'Bulgaria',
+    'BH' => 'Bahrain',
+    'BI' => 'Burundi',
+    'BJ' => 'Benin',
+    'BL' => 'Saint Barthélemy',
+    'BM' => 'Bermuda',
+    'BN' => 'Brunei Darussalam',
+    'BO' => 'Bolivia (Plurinational State of)',
+    'BQ' => 'Bonaire, Sint Eustatius and Saba',
+    'BR' => 'Brazil',
+    'BS' => 'Bahamas',
+    'BT' => 'Bhutan',
+    'BV' => 'Bouvet Island',
+    'BW' => 'Botswana',
+    'BY' => 'Belarus',
+    'BZ' => 'Belize',
+    'CA' => 'Canada',
+    'CC' => 'Cocos (Keeling) Islands',
+    'CD' => 'Congo, Democratic Republic of the',
+    'CF' => 'Central African Republic',
+    'CG' => 'Congo',
+    'CH' => 'Switzerland',
+    'CI' => 'Côte d\'Ivoire',
+    'CK' => 'Cook Islands',
+    'CL' => 'Chile',
+    'CM' => 'Cameroon',
+    'CN' => 'China',
+    'CO' => 'Colombia',
+    'CR' => 'Costa Rica',
+    'CU' => 'Cuba',
+    'CV' => 'Cabo Verde',
+    'CW' => 'Curaçao',
+    'CX' => 'Christmas Island',
+    'CY' => 'Cyprus',
+    'CZ' => 'Czechia',
+    'DE' => 'Germany',
+    'DJ' => 'Djibouti',
+    'DK' => 'Denmark',
+    'DM' => 'Dominica',
+    'DO' => 'Dominican Republic',
+    'DZ' => 'Algeria',
+    'EC' => 'Ecuador',
+    'EE' => 'Estonia',
+    'EG' => 'Egypt',
+    'EH' => 'Western Sahara',
+    'ER' => 'Eritrea',
+    'ES' => 'Spain',
+    'ET' => 'Ethiopia',
+    'FI' => 'Finland',
+    'FJ' => 'Fiji',
+    'FK' => 'Falkland Islands (Malvinas)',
+    'FM' => 'Micronesia (Federated States of)',
+    'FO' => 'Faroe Islands',
+    'FR' => 'France',
+    'GA' => 'Gabon',
+    'GB' => 'United Kingdom of Great Britain and Northern Ireland',
+    'GD' => 'Grenada',
+    'GE' => 'Georgia',
+    'GF' => 'French Guiana',
+    'GG' => 'Guernsey',
+    'GH' => 'Ghana',
+    'GI' => 'Gibraltar',
+    'GL' => 'Greenland',
+    'GM' => 'Gambia',
+    'GN' => 'Guinea',
+    'GP' => 'Guadeloupe',
+    'GQ' => 'Equatorial Guinea',
+    'GR' => 'Greece',
+    'GS' => 'South Georgia and the South Sandwich Islands',
+    'GT' => 'Guatemala',
+    'GU' => 'Guam',
+    'GW' => 'Guinea-Bissau',
+    'GY' => 'Guyana',
+    'HK' => 'Hong Kong',
+    'HM' => 'Heard Island and McDonald Islands',
+    'HN' => 'Honduras',
+    'HR' => 'Croatia',
+    'HT' => 'Haiti',
+    'HU' => 'Hungary',
+    'ID' => 'Indonesia',
+    'IE' => 'Ireland',
+    'IL' => 'Israel',
+    'IM' => 'Isle of Man',
+    'IN' => 'India',
+    'IO' => 'British Indian Ocean Territory',
+    'IQ' => 'Iraq',
+    'IR' => 'Iran (Islamic Republic of)',
+    'IS' => 'Iceland',
+    'IT' => 'Italy',
+    'JE' => 'Jersey',
+    'JM' => 'Jamaica',
+    'JO' => 'Jordan',
+    'JP' => 'Japan',
+    'KE' => 'Kenya',
+    'KG' => 'Kyrgyzstan',
+    'KH' => 'Cambodia',
+    'KI' => 'Kiribati',
+    'KM' => 'Comoros',
+    'KN' => 'Saint Kitts and Nevis',
+    'KP' => 'Korea (Democratic People\'s Republic of)',
+    'KR' => 'Korea, Republic of',
+    'KW' => 'Kuwait',
+    'KY' => 'Cayman Islands',
+    'KZ' => 'Kazakhstan',
+    'LA' => 'Lao People\'s Democratic Republic',
+    'LB' => 'Lebanon',
+    'LC' => 'Saint Lucia',
+    'LI' => 'Liechtenstein',
+    'LK' => 'Sri Lanka',
+    'LR' => 'Liberia',
+    'LS' => 'Lesotho',
+    'LT' => 'Lithuania',
+    'LU' => 'Luxembourg',
+    'LV' => 'Latvia',
+    'LY' => 'Libya',
+    'MA' => 'Morocco',
+    'MC' => 'Monaco',
+    'MD' => 'Moldova, Republic of',
+    'ME' => 'Montenegro',
+    'MF' => 'Saint Martin (French part)',
+    'MG' => 'Madagascar',
+    'MH' => 'Marshall Islands',
+    'MK' => 'Macedonia, the former Yugoslav Republic of',
+    'ML' => 'Mali',
+    'MM' => 'Myanmar',
+    'MN' => 'Mongolia',
+    'MO' => 'Macao',
+    'MP' => 'Northern Mariana Islands',
+    'MQ' => 'Martinique',
+    'MR' => 'Mauritania',
+    'MS' => 'Montserrat',
+    'MT' => 'Malta',
+    'MU' => 'Mauritius',
+    'MV' => 'Maldives',
+    'MW' => 'Malawi',
+    'MX' => 'Mexico',
+    'MY' => 'Malaysia',
+    'MZ' => 'Mozambique',
+    'NA' => 'Namibia',
+    'NC' => 'New Caledonia',
+    'NE' => 'Niger',
+    'NF' => 'Norfolk Island',
+    'NG' => 'Nigeria',
+    'NI' => 'Nicaragua',
+    'NL' => 'Netherlands',
+    'NO' => 'Norway',
+    'NP' => 'Nepal',
+    'NR' => 'Nauru',
+    'NU' => 'Niue',
+    'NZ' => 'New Zealand',
+    'OM' => 'Oman',
+    'PA' => 'Panama',
+    'PE' => 'Peru',
+    'PF' => 'French Polynesia',
+    'PG' => 'Papua New Guinea',
+    'PH' => 'Philippines',
+    'PK' => 'Pakistan',
+    'PL' => 'Poland',
+    'PM' => 'Saint Pierre and Miquelon',
+    'PN' => 'Pitcairn',
+    'PR' => 'Puerto Rico',
+    'PS' => 'Palestine, State of',
+    'PT' => 'Portugal',
+    'PW' => 'Palau',
+    'PY' => 'Paraguay',
+    'QA' => 'Qatar',
+    'RE' => 'Réunion',
+    'RO' => 'Romania',
+    'RS' => 'Serbia',
+    'RU' => 'Russian Federation',
+    'RW' => 'Rwanda',
+    'SA' => 'Saudi Arabia',
+    'SB' => 'Solomon Islands',
+    'SC' => 'Seychelles',
+    'SD' => 'Sudan',
+    'SE' => 'Sweden',
+    'SG' => 'Singapore',
+    'SH' => 'Saint Helena, Ascension and Tristan da Cunha',
+    'SI' => 'Slovenia',
+    'SJ' => 'Svalbard and Jan Mayen',
+    'SK' => 'Slovakia',
+    'SL' => 'Sierra Leone',
+    'SM' => 'San Marino',
+    'SN' => 'Senegal',
+    'SO' => 'Somalia',
+    'SR' => 'Suriname',
+    'SS' => 'South Sudan',
+    'ST' => 'Sao Tome and Principe',
+    'SV' => 'El Salvador',
+    'SX' => 'Sint Maarten (Dutch part)',
+    'SY' => 'Syrian Arab Republic',
+    'SZ' => 'Eswatini',
+    'TC' => 'Turks and Caicos Islands',
+    'TD' => 'Chad',
+    'TF' => 'French Southern Territories',
+    'TG' => 'Togo',
+    'TH' => 'Thailand',
+    'TJ' => 'Tajikistan',
+    'TK' => 'Tokelau',
+    'TL' => 'Timor-Leste',
+    'TM' => 'Turkmenistan',
+    'TN' => 'Tunisia',
+    'TO' => 'Tonga',
+    'TR' => 'Turkey',
+    'TT' => 'Trinidad and Tobago',
+    'TV' => 'Tuvalu',
+    'TW' => 'Taiwan, Province of China',
+    'TZ' => 'Tanzania, United Republic of',
+    'UA' => 'Ukraine',
+    'UG' => 'Uganda',
+    'UM' => 'United States Minor Outlying Islands',
+    'US' => 'United States of America',
+    'UY' => 'Uruguay',
+    'UZ' => 'Uzbekistan',
+    'VA' => 'Holy See',
+    'VC' => 'Saint Vincent and the Grenadines',
+    'VE' => 'Venezuela (Bolivarian Republic of)',
+    'VG' => 'Virgin Islands (British)',
+    'VI' => 'Virgin Islands (U.S.)',
+    'VN' => 'Viet Nam',
+    'VU' => 'Vanuatu',
+    'WF' => 'Wallis and Futuna',
+    'WS' => 'Samoa',
+    'YE' => 'Yemen',
+    'YT' => 'Mayotte',
+    'ZA' => 'South Africa',
+    'ZM' => 'Zambia',
+    'ZW' => 'Zimbabwe',
+];
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/Macro.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/Macro.php
new file mode 100644
index 0000000..7dab190
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/Macro.php
@@ -0,0 +1,233 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Carbon\PHPStan;
+
+use Closure;
+use PHPStan\Reflection\Php\BuiltinMethodReflection;
+use PHPStan\TrinaryLogic;
+use ReflectionClass;
+use ReflectionFunction;
+use ReflectionMethod;
+use ReflectionParameter;
+use ReflectionType;
+use stdClass;
+use Throwable;
+
+final class Macro implements BuiltinMethodReflection
+{
+    /**
+     * The class name.
+     *
+     * @var class-string
+     */
+    private $className;
+
+    /**
+     * The method name.
+     *
+     * @var string
+     */
+    private $methodName;
+
+    /**
+     * The reflection function/method.
+     *
+     * @var ReflectionFunction|ReflectionMethod
+     */
+    private $reflectionFunction;
+
+    /**
+     * The parameters.
+     *
+     * @var ReflectionParameter[]
+     */
+    private $parameters;
+
+    /**
+     * The is static.
+     *
+     * @var bool
+     */
+    private $static = false;
+
+    /**
+     * Macro constructor.
+     *
+     * @param string $className
+     * @phpstan-param class-string $className
+     *
+     * @param string   $methodName
+     * @param callable $macro
+     */
+    public function __construct(string $className, string $methodName, $macro)
+    {
+        $this->className = $className;
+        $this->methodName = $methodName;
+        $this->reflectionFunction = \is_array($macro)
+            ? new ReflectionMethod($macro[0], $macro[1])
+            : new ReflectionFunction($macro);
+        $this->parameters = $this->reflectionFunction->getParameters();
+
+        if ($this->reflectionFunction->isClosure()) {
+            try {
+                /** @var Closure $closure */
+                $closure = $this->reflectionFunction->getClosure();
+                $boundClosure = Closure::bind($closure, new stdClass);
+                $this->static = (!$boundClosure || (new ReflectionFunction($boundClosure))->getClosureThis() === null);
+            } catch (Throwable $e) {
+                $this->static = true;
+            }
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDeclaringClass(): ReflectionClass
+    {
+        return new ReflectionClass($this->className);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isPrivate(): bool
+    {
+        return false;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isPublic(): bool
+    {
+        return true;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isFinal(): bool
+    {
+        return false;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isInternal(): bool
+    {
+        return false;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isAbstract(): bool
+    {
+        return false;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isStatic(): bool
+    {
+        return $this->static;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDocComment(): ?string
+    {
+        return $this->reflectionFunction->getDocComment() ?: null;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getFileName()
+    {
+        return $this->reflectionFunction->getFileName();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getName(): string
+    {
+        return $this->methodName;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getParameters(): array
+    {
+        return $this->parameters;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getReturnType(): ?ReflectionType
+    {
+        return $this->reflectionFunction->getReturnType();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getStartLine()
+    {
+        return $this->reflectionFunction->getStartLine();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getEndLine()
+    {
+        return $this->reflectionFunction->getEndLine();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isDeprecated(): TrinaryLogic
+    {
+        return TrinaryLogic::createFromBoolean(
+            $this->reflectionFunction->isDeprecated() ||
+            preg_match('/@deprecated/i', $this->getDocComment() ?: '')
+        );
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isVariadic(): bool
+    {
+        return $this->reflectionFunction->isVariadic();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getPrototype(): BuiltinMethodReflection
+    {
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getReflection(): ?ReflectionMethod
+    {
+        return $this->reflectionFunction instanceof ReflectionMethod
+            ? $this->reflectionFunction
+            : null;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroExtension.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroExtension.php
new file mode 100644
index 0000000..5a3d694
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroExtension.php
@@ -0,0 +1,69 @@
+<?php
+
+namespace Carbon\PHPStan;
+
+use PHPStan\Reflection\ClassReflection;
+use PHPStan\Reflection\MethodReflection;
+use PHPStan\Reflection\MethodsClassReflectionExtension;
+use PHPStan\Reflection\Php\PhpMethodReflectionFactory;
+use PHPStan\Type\TypehintHelper;
+
+/**
+ * Class MacroExtension.
+ *
+ * @codeCoverageIgnore Pure PHPStan wrapper.
+ */
+final class MacroExtension implements MethodsClassReflectionExtension
+{
+    /**
+     * @var PhpMethodReflectionFactory
+     */
+    protected $methodReflectionFactory;
+
+    /**
+     * @var MacroScanner
+     */
+    protected $scanner;
+
+    /**
+     * Extension constructor.
+     *
+     * @param PhpMethodReflectionFactory $methodReflectionFactory
+     */
+    public function __construct(PhpMethodReflectionFactory $methodReflectionFactory)
+    {
+        $this->scanner = new MacroScanner();
+        $this->methodReflectionFactory = $methodReflectionFactory;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function hasMethod(ClassReflection $classReflection, string $methodName): bool
+    {
+        return $this->scanner->hasMethod($classReflection->getName(), $methodName);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMethod(ClassReflection $classReflection, string $methodName): MethodReflection
+    {
+        $builtinMacro = $this->scanner->getMethod($classReflection->getName(), $methodName);
+
+        return $this->methodReflectionFactory->create(
+            $classReflection,
+            null,
+            $builtinMacro,
+            $classReflection->getActiveTemplateTypeMap(),
+            [],
+            TypehintHelper::decideTypeFromReflection($builtinMacro->getReturnType()),
+            null,
+            null,
+            $builtinMacro->isDeprecated()->yes(),
+            $builtinMacro->isInternal(),
+            $builtinMacro->isFinal(),
+            $builtinMacro->getDocComment()
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroScanner.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroScanner.php
new file mode 100644
index 0000000..97cf0b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/PHPStan/MacroScanner.php
@@ -0,0 +1,54 @@
+<?php
+
+namespace Carbon\PHPStan;
+
+use Carbon\CarbonInterface;
+use ReflectionClass;
+use ReflectionException;
+
+final class MacroScanner
+{
+    /**
+     * Return true if the given pair class-method is a Carbon macro.
+     *
+     * @param string $className
+     * @phpstan-param class-string $className
+     *
+     * @param string $methodName
+     *
+     * @return bool
+     */
+    public function hasMethod(string $className, string $methodName): bool
+    {
+        return is_a($className, CarbonInterface::class, true) &&
+            \is_callable([$className, 'hasMacro']) &&
+            $className::hasMacro($methodName);
+    }
+
+    /**
+     * Return the Macro for a given pair class-method.
+     *
+     * @param string $className
+     * @phpstan-param class-string $className
+     *
+     * @param string $methodName
+     *
+     * @throws ReflectionException
+     *
+     * @return Macro
+     */
+    public function getMethod(string $className, string $methodName): Macro
+    {
+        $reflectionClass = new ReflectionClass($className);
+        $property = $reflectionClass->getProperty('globalMacros');
+
+        $property->setAccessible(true);
+        $macro = $property->getValue()[$methodName];
+
+        return new Macro(
+            $className,
+            $methodName,
+            $macro
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Boundaries.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Boundaries.php
new file mode 100644
index 0000000..7fbb1a3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Boundaries.php
@@ -0,0 +1,442 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Exceptions\UnknownUnitException;
+
+/**
+ * Trait Boundaries.
+ *
+ * startOf, endOf and derived method for each unit.
+ *
+ * Depends on the following properties:
+ *
+ * @property int $year
+ * @property int $month
+ * @property int $daysInMonth
+ * @property int $quarter
+ *
+ * Depends on the following methods:
+ *
+ * @method $this setTime(int $hour, int $minute, int $second = 0, int $microseconds = 0)
+ * @method $this setDate(int $year, int $month, int $day)
+ * @method $this addMonths(int $value = 1)
+ */
+trait Boundaries
+{
+    /**
+     * Resets the time to 00:00:00 start of day
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfDay();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfDay()
+    {
+        return $this->setTime(0, 0, 0, 0);
+    }
+
+    /**
+     * Resets the time to 23:59:59.999999 end of day
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfDay();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfDay()
+    {
+        return $this->setTime(static::HOURS_PER_DAY - 1, static::MINUTES_PER_HOUR - 1, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
+    }
+
+    /**
+     * Resets the date to the first day of the month and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMonth();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMonth()
+    {
+        return $this->setDate($this->year, $this->month, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the month and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMonth();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMonth()
+    {
+        return $this->setDate($this->year, $this->month, $this->daysInMonth)->endOfDay();
+    }
+
+    /**
+     * Resets the date to the first day of the quarter and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfQuarter();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfQuarter()
+    {
+        $month = ($this->quarter - 1) * static::MONTHS_PER_QUARTER + 1;
+
+        return $this->setDate($this->year, $month, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the quarter and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfQuarter();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfQuarter()
+    {
+        return $this->startOfQuarter()->addMonths(static::MONTHS_PER_QUARTER - 1)->endOfMonth();
+    }
+
+    /**
+     * Resets the date to the first day of the year and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfYear();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfYear()
+    {
+        return $this->setDate($this->year, 1, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the year and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfYear();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfYear()
+    {
+        return $this->setDate($this->year, 12, 31)->endOfDay();
+    }
+
+    /**
+     * Resets the date to the first day of the decade and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfDecade();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfDecade()
+    {
+        $year = $this->year - $this->year % static::YEARS_PER_DECADE;
+
+        return $this->setDate($year, 1, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the decade and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfDecade();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfDecade()
+    {
+        $year = $this->year - $this->year % static::YEARS_PER_DECADE + static::YEARS_PER_DECADE - 1;
+
+        return $this->setDate($year, 12, 31)->endOfDay();
+    }
+
+    /**
+     * Resets the date to the first day of the century and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfCentury();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfCentury()
+    {
+        $year = $this->year - ($this->year - 1) % static::YEARS_PER_CENTURY;
+
+        return $this->setDate($year, 1, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the century and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfCentury();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfCentury()
+    {
+        $year = $this->year - 1 - ($this->year - 1) % static::YEARS_PER_CENTURY + static::YEARS_PER_CENTURY;
+
+        return $this->setDate($year, 12, 31)->endOfDay();
+    }
+
+    /**
+     * Resets the date to the first day of the millennium and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMillennium();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMillennium()
+    {
+        $year = $this->year - ($this->year - 1) % static::YEARS_PER_MILLENNIUM;
+
+        return $this->setDate($year, 1, 1)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of the millennium and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMillennium();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMillennium()
+    {
+        $year = $this->year - 1 - ($this->year - 1) % static::YEARS_PER_MILLENNIUM + static::YEARS_PER_MILLENNIUM;
+
+        return $this->setDate($year, 12, 31)->endOfDay();
+    }
+
+    /**
+     * Resets the date to the first day of week (defined in $weekStartsAt) and the time to 00:00:00
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->startOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek(Carbon::SUNDAY) . "\n";
+     * ```
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return static
+     */
+    public function startOfWeek($weekStartsAt = null)
+    {
+        return $this->subDays((7 + $this->dayOfWeek - ($weekStartsAt ?? $this->firstWeekDay)) % 7)->startOfDay();
+    }
+
+    /**
+     * Resets the date to end of week (defined in $weekEndsAt) and time to 23:59:59.999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->endOfWeek() . "\n";
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek(Carbon::SATURDAY) . "\n";
+     * ```
+     *
+     * @param int $weekEndsAt optional start allow you to specify the day of week to use to end the week
+     *
+     * @return static
+     */
+    public function endOfWeek($weekEndsAt = null)
+    {
+        return $this->addDays((7 - $this->dayOfWeek + ($weekEndsAt ?? $this->lastWeekDay)) % 7)->endOfDay();
+    }
+
+    /**
+     * Modify to start of current hour, minutes and seconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfHour();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfHour()
+    {
+        return $this->setTime($this->hour, 0, 0, 0);
+    }
+
+    /**
+     * Modify to end of current hour, minutes and seconds become 59
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfHour();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfHour()
+    {
+        return $this->setTime($this->hour, static::MINUTES_PER_HOUR - 1, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
+    }
+
+    /**
+     * Modify to start of current minute, seconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->startOfMinute();
+     * ```
+     *
+     * @return static
+     */
+    public function startOfMinute()
+    {
+        return $this->setTime($this->hour, $this->minute, 0, 0);
+    }
+
+    /**
+     * Modify to end of current minute, seconds become 59
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16')->endOfMinute();
+     * ```
+     *
+     * @return static
+     */
+    public function endOfMinute()
+    {
+        return $this->setTime($this->hour, $this->minute, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
+    }
+
+    /**
+     * Modify to start of current second, microseconds become 0
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOfSecond()
+     *   ->format('H:i:s.u');
+     * ```
+     *
+     * @return static
+     */
+    public function startOfSecond()
+    {
+        return $this->setTime($this->hour, $this->minute, $this->second, 0);
+    }
+
+    /**
+     * Modify to end of current second, microseconds become 999999
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->endOfSecond()
+     *   ->format('H:i:s.u');
+     * ```
+     *
+     * @return static
+     */
+    public function endOfSecond()
+    {
+        return $this->setTime($this->hour, $this->minute, $this->second, static::MICROSECONDS_PER_SECOND - 1);
+    }
+
+    /**
+     * Modify to start of current given unit.
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOf('month')
+     *   ->endOf('week', Carbon::FRIDAY);
+     * ```
+     *
+     * @param string            $unit
+     * @param array<int, mixed> $params
+     *
+     * @return static
+     */
+    public function startOf($unit, ...$params)
+    {
+        $ucfUnit = ucfirst(static::singularUnit($unit));
+        $method = "startOf$ucfUnit";
+        if (!method_exists($this, $method)) {
+            throw new UnknownUnitException($unit);
+        }
+
+        return $this->$method(...$params);
+    }
+
+    /**
+     * Modify to end of current given unit.
+     *
+     * @example
+     * ```
+     * echo Carbon::parse('2018-07-25 12:45:16.334455')
+     *   ->startOf('month')
+     *   ->endOf('week', Carbon::FRIDAY);
+     * ```
+     *
+     * @param string            $unit
+     * @param array<int, mixed> $params
+     *
+     * @return static
+     */
+    public function endOf($unit, ...$params)
+    {
+        $ucfUnit = ucfirst(static::singularUnit($unit));
+        $method = "endOf$ucfUnit";
+        if (!method_exists($this, $method)) {
+            throw new UnknownUnitException($unit);
+        }
+
+        return $this->$method(...$params);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Cast.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Cast.php
new file mode 100644
index 0000000..44caf0b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Cast.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace Carbon\Traits;
+
+use Carbon\Exceptions\InvalidCastException;
+use DateTimeInterface;
+
+/**
+ * Trait Cast.
+ *
+ * Utils to cast into an other class.
+ */
+trait Cast
+{
+    /**
+     * Cast the current instance into the given class.
+     *
+     * @param string $className The $className::instance() method will be called to cast the current object.
+     *
+     * @return DateTimeInterface
+     */
+    public function cast(string $className)
+    {
+        if (!method_exists($className, 'instance')) {
+            if (is_a($className, DateTimeInterface::class, true)) {
+                return new $className($this->rawFormat('Y-m-d H:i:s.u'), $this->getTimezone());
+            }
+
+            throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
+        }
+
+        return $className::instance($this);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Comparison.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Comparison.php
new file mode 100644
index 0000000..ee00666
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Comparison.php
@@ -0,0 +1,1069 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use BadMethodCallException;
+use Carbon\CarbonInterface;
+use Carbon\Exceptions\BadComparisonUnitException;
+use InvalidArgumentException;
+
+/**
+ * Trait Comparison.
+ *
+ * Comparison utils and testers. All the following methods return booleans.
+ * nowWithSameTz
+ *
+ * Depends on the following methods:
+ *
+ * @method static        resolveCarbon($date)
+ * @method static        copy()
+ * @method static        nowWithSameTz()
+ * @method static static yesterday($timezone = null)
+ * @method static static tomorrow($timezone = null)
+ */
+trait Comparison
+{
+    /** @var bool */
+    protected $endOfTime = false;
+
+    /** @var bool */
+    protected $startOfTime = false;
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->eq(Carbon::parse('2018-07-25 12:45:16')); // true
+     * Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see equalTo()
+     *
+     * @return bool
+     */
+    public function eq($date): bool
+    {
+        return $this->equalTo($date);
+    }
+
+    /**
+     * Determines if the instance is equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo(Carbon::parse('2018-07-25 12:45:16')); // true
+     * Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function equalTo($date): bool
+    {
+        return $this == $date;
+    }
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->ne(Carbon::parse('2018-07-25 12:45:16')); // false
+     * Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see notEqualTo()
+     *
+     * @return bool
+     */
+    public function ne($date): bool
+    {
+        return $this->notEqualTo($date);
+    }
+
+    /**
+     * Determines if the instance is not equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo(Carbon::parse('2018-07-25 12:45:16')); // false
+     * Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function notEqualTo($date): bool
+    {
+        return !$this->equalTo($date);
+    }
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThan()
+     *
+     * @return bool
+     */
+    public function gt($date): bool
+    {
+        return $this->greaterThan($date);
+    }
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function greaterThan($date): bool
+    {
+        return $this > $date;
+    }
+
+    /**
+     * Determines if the instance is greater (after) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThan()
+     *
+     * @return bool
+     */
+    public function isAfter($date): bool
+    {
+        return $this->greaterThan($date);
+    }
+
+    /**
+     * Determines if the instance is greater (after) than or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see greaterThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function gte($date): bool
+    {
+        return $this->greaterThanOrEqualTo($date);
+    }
+
+    /**
+     * Determines if the instance is greater (after) than or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:15'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:17'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function greaterThanOrEqualTo($date): bool
+    {
+        return $this >= $date;
+    }
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThan()
+     *
+     * @return bool
+     */
+    public function lt($date): bool
+    {
+        return $this->lessThan($date);
+    }
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function lessThan($date): bool
+    {
+        return $this < $date;
+    }
+
+    /**
+     * Determines if the instance is less (before) than another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:16'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThan()
+     *
+     * @return bool
+     */
+    public function isBefore($date): bool
+    {
+        return $this->lessThan($date);
+    }
+
+    /**
+     * Determines if the instance is less (before) or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see lessThanOrEqualTo()
+     *
+     * @return bool
+     */
+    public function lte($date): bool
+    {
+        return $this->lessThanOrEqualTo($date);
+    }
+
+    /**
+     * Determines if the instance is less (before) or equal to another
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:15'); // false
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:16'); // true
+     * Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:17'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return bool
+     */
+    public function lessThanOrEqualTo($date): bool
+    {
+        return $this <= $date;
+    }
+
+    /**
+     * Determines if the instance is between two others.
+     *
+     * The third argument allow you to specify if bounds are included or not (true by default)
+     * but for when you including/excluding bounds may produce different results in your application,
+     * we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->between('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->between('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01', false); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     * @param bool                                    $equal Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function between($date1, $date2, $equal = true): bool
+    {
+        $date1 = $this->resolveCarbon($date1);
+        $date2 = $this->resolveCarbon($date2);
+
+        if ($date1->greaterThan($date2)) {
+            [$date1, $date2] = [$date2, $date1];
+        }
+
+        if ($equal) {
+            return $this->greaterThanOrEqualTo($date1) && $this->lessThanOrEqualTo($date2);
+        }
+
+        return $this->greaterThan($date1) && $this->lessThan($date2);
+    }
+
+    /**
+     * Determines if the instance is between two others, bounds included.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->betweenIncluded('2018-07-25', '2018-08-01'); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return bool
+     */
+    public function betweenIncluded($date1, $date2): bool
+    {
+        return $this->between($date1, $date2, true);
+    }
+
+    /**
+     * Determines if the instance is between two others, bounds excluded.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->betweenExcluded('2018-07-25', '2018-08-01'); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return bool
+     */
+    public function betweenExcluded($date1, $date2): bool
+    {
+        return $this->between($date1, $date2, false);
+    }
+
+    /**
+     * Determines if the instance is between two others
+     *
+     * @example
+     * ```
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-14', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->isBetween('2018-08-01', '2018-08-20'); // false
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01'); // true
+     * Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01', false); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     * @param bool                                    $equal Indicates if an equal to comparison should be done
+     *
+     * @return bool
+     */
+    public function isBetween($date1, $date2, $equal = true): bool
+    {
+        return $this->between($date1, $date2, $equal);
+    }
+
+    /**
+     * Determines if the instance is a weekday.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-14')->isWeekday(); // false
+     * Carbon::parse('2019-07-15')->isWeekday(); // true
+     * ```
+     *
+     * @return bool
+     */
+    public function isWeekday()
+    {
+        return !$this->isWeekend();
+    }
+
+    /**
+     * Determines if the instance is a weekend day.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-14')->isWeekend(); // true
+     * Carbon::parse('2019-07-15')->isWeekend(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isWeekend()
+    {
+        return \in_array($this->dayOfWeek, static::$weekendDays);
+    }
+
+    /**
+     * Determines if the instance is yesterday.
+     *
+     * @example
+     * ```
+     * Carbon::yesterday()->isYesterday(); // true
+     * Carbon::tomorrow()->isYesterday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isYesterday()
+    {
+        return $this->toDateString() === static::yesterday($this->getTimezone())->toDateString();
+    }
+
+    /**
+     * Determines if the instance is today.
+     *
+     * @example
+     * ```
+     * Carbon::today()->isToday(); // true
+     * Carbon::tomorrow()->isToday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isToday()
+    {
+        return $this->toDateString() === $this->nowWithSameTz()->toDateString();
+    }
+
+    /**
+     * Determines if the instance is tomorrow.
+     *
+     * @example
+     * ```
+     * Carbon::tomorrow()->isTomorrow(); // true
+     * Carbon::yesterday()->isTomorrow(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isTomorrow()
+    {
+        return $this->toDateString() === static::tomorrow($this->getTimezone())->toDateString();
+    }
+
+    /**
+     * Determines if the instance is in the future, ie. greater (after) than now.
+     *
+     * @example
+     * ```
+     * Carbon::now()->addHours(5)->isFuture(); // true
+     * Carbon::now()->subHours(5)->isFuture(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isFuture()
+    {
+        return $this->greaterThan($this->nowWithSameTz());
+    }
+
+    /**
+     * Determines if the instance is in the past, ie. less (before) than now.
+     *
+     * @example
+     * ```
+     * Carbon::now()->subHours(5)->isPast(); // true
+     * Carbon::now()->addHours(5)->isPast(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isPast()
+    {
+        return $this->lessThan($this->nowWithSameTz());
+    }
+
+    /**
+     * Determines if the instance is a leap year.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2020-01-01')->isLeapYear(); // true
+     * Carbon::parse('2019-01-01')->isLeapYear(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isLeapYear()
+    {
+        return $this->rawFormat('L') === '1';
+    }
+
+    /**
+     * Determines if the instance is a long year
+     *
+     * @example
+     * ```
+     * Carbon::parse('2015-01-01')->isLongYear(); // true
+     * Carbon::parse('2016-01-01')->isLongYear(); // false
+     * ```
+     *
+     * @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
+     *
+     * @return bool
+     */
+    public function isLongYear()
+    {
+        return static::create($this->year, 12, 28, 0, 0, 0, $this->tz)->weekOfYear === 53;
+    }
+
+    /**
+     * Compares the formatted values of the two dates.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-12-13')); // true
+     * Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-06-14')); // false
+     * ```
+     *
+     * @param string                                        $format date formats to compare.
+     * @param \Carbon\Carbon|\DateTimeInterface|string|null $date   instance to compare with or null to use current day.
+     *
+     * @return bool
+     */
+    public function isSameAs($format, $date = null)
+    {
+        return $this->rawFormat($format) === $this->resolveCarbon($date)->rawFormat($format);
+    }
+
+    /**
+     * Determines if the instance is in the current unit given.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // true
+     * Carbon::parse('2018-12-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // false
+     * ```
+     *
+     * @param string                                 $unit singular unit string
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date instance to compare with or null to use current day.
+     *
+     * @throws BadComparisonUnitException
+     *
+     * @return bool
+     */
+    public function isSameUnit($unit, $date = null)
+    {
+        $units = [
+            // @call isSameUnit
+            'year' => 'Y',
+            // @call isSameUnit
+            'week' => 'o-W',
+            // @call isSameUnit
+            'day' => 'Y-m-d',
+            // @call isSameUnit
+            'hour' => 'Y-m-d H',
+            // @call isSameUnit
+            'minute' => 'Y-m-d H:i',
+            // @call isSameUnit
+            'second' => 'Y-m-d H:i:s',
+            // @call isSameUnit
+            'micro' => 'Y-m-d H:i:s.u',
+            // @call isSameUnit
+            'microsecond' => 'Y-m-d H:i:s.u',
+        ];
+
+        if (!isset($units[$unit])) {
+            if (isset($this->$unit)) {
+                return $this->resolveCarbon($date)->$unit === $this->$unit;
+            }
+
+            if ($this->localStrictModeEnabled ?? static::isStrictModeEnabled()) {
+                throw new BadComparisonUnitException($unit);
+            }
+
+            return false;
+        }
+
+        return $this->isSameAs($units[$unit], $date);
+    }
+
+    /**
+     * Determines if the instance is in the current unit given.
+     *
+     * @example
+     * ```
+     * Carbon::now()->isCurrentUnit('hour'); // true
+     * Carbon::now()->subHours(2)->isCurrentUnit('hour'); // false
+     * ```
+     *
+     * @param string $unit The unit to test.
+     *
+     * @throws BadMethodCallException
+     *
+     * @return bool
+     */
+    public function isCurrentUnit($unit)
+    {
+        return $this->{'isSame'.ucfirst($unit)}();
+    }
+
+    /**
+     * Checks if the passed in date is in the same quarter as the instance quarter (and year if needed).
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-03-01')); // true
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-04-01')); // false
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01')); // false
+     * Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01'), false); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|string|null $date       The instance to compare with or null to use current day.
+     * @param bool                                          $ofSameYear Check if it is the same month in the same year.
+     *
+     * @return bool
+     */
+    public function isSameQuarter($date = null, $ofSameYear = true)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->quarter === $date->quarter && (!$ofSameYear || $this->isSameYear($date));
+    }
+
+    /**
+     * Checks if the passed in date is in the same month as the instance´s month.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-01-01')); // true
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-02-01')); // false
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01')); // false
+     * Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01'), false); // true
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date       The instance to compare with or null to use the current date.
+     * @param bool                                   $ofSameYear Check if it is the same month in the same year.
+     *
+     * @return bool
+     */
+    public function isSameMonth($date = null, $ofSameYear = true)
+    {
+        return $this->isSameAs($ofSameYear ? 'Y-m' : 'm', $date);
+    }
+
+    /**
+     * Checks if this day is a specific day of the week.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::WEDNESDAY); // true
+     * Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::FRIDAY); // false
+     * Carbon::parse('2019-07-17')->isDayOfWeek('Wednesday'); // true
+     * Carbon::parse('2019-07-17')->isDayOfWeek('Friday'); // false
+     * ```
+     *
+     * @param int $dayOfWeek
+     *
+     * @return bool
+     */
+    public function isDayOfWeek($dayOfWeek)
+    {
+        if (\is_string($dayOfWeek) && \defined($constant = static::class.'::'.strtoupper($dayOfWeek))) {
+            $dayOfWeek = \constant($constant);
+        }
+
+        return $this->dayOfWeek === $dayOfWeek;
+    }
+
+    /**
+     * Check if its the birthday. Compares the date/month values of the two dates.
+     *
+     * @example
+     * ```
+     * Carbon::now()->subYears(5)->isBirthday(); // true
+     * Carbon::now()->subYears(5)->subDay()->isBirthday(); // false
+     * Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-05')); // true
+     * Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-06')); // false
+     * ```
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date The instance to compare with or null to use current day.
+     *
+     * @return bool
+     */
+    public function isBirthday($date = null)
+    {
+        return $this->isSameAs('md', $date);
+    }
+
+    /**
+     * Check if today is the last day of the Month
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28')->isLastOfMonth(); // true
+     * Carbon::parse('2019-03-28')->isLastOfMonth(); // false
+     * Carbon::parse('2019-03-30')->isLastOfMonth(); // false
+     * Carbon::parse('2019-03-31')->isLastOfMonth(); // true
+     * Carbon::parse('2019-04-30')->isLastOfMonth(); // true
+     * ```
+     *
+     * @return bool
+     */
+    public function isLastOfMonth()
+    {
+        return $this->day === $this->daysInMonth;
+    }
+
+    /**
+     * Check if the instance is start of day / midnight.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 00:00:00')->isStartOfDay(); // true
+     * Carbon::parse('2019-02-28 00:00:00.999999')->isStartOfDay(); // true
+     * Carbon::parse('2019-02-28 00:00:01')->isStartOfDay(); // false
+     * Carbon::parse('2019-02-28 00:00:00.000000')->isStartOfDay(true); // true
+     * Carbon::parse('2019-02-28 00:00:00.000012')->isStartOfDay(true); // false
+     * ```
+     *
+     * @param bool $checkMicroseconds check time at microseconds precision
+     *
+     * @return bool
+     */
+    public function isStartOfDay($checkMicroseconds = false)
+    {
+        /* @var CarbonInterface $this */
+        return $checkMicroseconds
+            ? $this->rawFormat('H:i:s.u') === '00:00:00.000000'
+            : $this->rawFormat('H:i:s') === '00:00:00';
+    }
+
+    /**
+     * Check if the instance is end of day.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(); // true
+     * Carbon::parse('2019-02-28 23:59:58.999999')->isEndOfDay(); // false
+     * Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(true); // true
+     * Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(true); // false
+     * Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(true); // false
+     * ```
+     *
+     * @param bool $checkMicroseconds check time at microseconds precision
+     *
+     * @return bool
+     */
+    public function isEndOfDay($checkMicroseconds = false)
+    {
+        /* @var CarbonInterface $this */
+        return $checkMicroseconds
+            ? $this->rawFormat('H:i:s.u') === '23:59:59.999999'
+            : $this->rawFormat('H:i:s') === '23:59:59';
+    }
+
+    /**
+     * Check if the instance is start of day / midnight.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 00:00:00')->isMidnight(); // true
+     * Carbon::parse('2019-02-28 00:00:00.999999')->isMidnight(); // true
+     * Carbon::parse('2019-02-28 00:00:01')->isMidnight(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isMidnight()
+    {
+        return $this->isStartOfDay();
+    }
+
+    /**
+     * Check if the instance is midday.
+     *
+     * @example
+     * ```
+     * Carbon::parse('2019-02-28 11:59:59.999999')->isMidday(); // false
+     * Carbon::parse('2019-02-28 12:00:00')->isMidday(); // true
+     * Carbon::parse('2019-02-28 12:00:00.999999')->isMidday(); // true
+     * Carbon::parse('2019-02-28 12:00:01')->isMidday(); // false
+     * ```
+     *
+     * @return bool
+     */
+    public function isMidday()
+    {
+        /* @var CarbonInterface $this */
+        return $this->rawFormat('G:i:s') === static::$midDayAt.':00:00';
+    }
+
+    /**
+     * Checks if the (date)time string is in a given format.
+     *
+     * @example
+     * ```
+     * Carbon::hasFormat('11:12:45', 'h:i:s'); // true
+     * Carbon::hasFormat('13:12:45', 'h:i:s'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function hasFormat($date, $format)
+    {
+        // createFromFormat() is known to handle edge cases silently.
+        // E.g. "1975-5-1" (Y-n-j) will still be parsed correctly when "Y-m-d" is supplied as the format.
+        // To ensure we're really testing against our desired format, perform an additional regex validation.
+
+        return self::matchFormatPattern((string) $date, preg_quote((string) $format, '/'), static::$regexFormats);
+    }
+
+    /**
+     * Checks if the (date)time string is in a given format.
+     *
+     * @example
+     * ```
+     * Carbon::hasFormatWithModifiers('31/08/2015', 'd#m#Y'); // true
+     * Carbon::hasFormatWithModifiers('31/08/2015', 'm#d#Y'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function hasFormatWithModifiers($date, $format): bool
+    {
+        return self::matchFormatPattern((string) $date, (string) $format, array_merge(static::$regexFormats, static::$regexFormatModifiers));
+    }
+
+    /**
+     * Checks if the (date)time string is in a given format and valid to create a
+     * new instance.
+     *
+     * @example
+     * ```
+     * Carbon::canBeCreatedFromFormat('11:12:45', 'h:i:s'); // true
+     * Carbon::canBeCreatedFromFormat('13:12:45', 'h:i:s'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     *
+     * @return bool
+     */
+    public static function canBeCreatedFromFormat($date, $format)
+    {
+        try {
+            // Try to create a DateTime object. Throws an InvalidArgumentException if the provided time string
+            // doesn't match the format in any way.
+            if (!static::rawCreateFromFormat($format, $date)) {
+                return false;
+            }
+        } catch (InvalidArgumentException $e) {
+            return false;
+        }
+
+        return static::hasFormatWithModifiers($date, $format);
+    }
+
+    /**
+     * Returns true if the current date matches the given string.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2018')); // false
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('06-02')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06-02')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('Sunday')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('June')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:45')); // true
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:00')); // false
+     * var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12h')); // true
+     * var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3pm')); // true
+     * var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3am')); // false
+     * ```
+     *
+     * @param string $tester day name, month name, hour, date, etc. as string
+     *
+     * @return bool
+     */
+    public function is(string $tester)
+    {
+        $tester = trim($tester);
+
+        if (preg_match('/^\d+$/', $tester)) {
+            return $this->year === (int) $tester;
+        }
+
+        if (preg_match('/^\d{3,}-\d{1,2}$/', $tester)) {
+            return $this->isSameMonth(static::parse($tester));
+        }
+
+        if (preg_match('/^\d{1,2}-\d{1,2}$/', $tester)) {
+            return $this->isSameDay(static::parse($this->year.'-'.$tester));
+        }
+
+        $modifier = preg_replace('/(\d)h$/i', '$1:00', $tester);
+
+        /* @var CarbonInterface $max */
+        $median = static::parse('5555-06-15 12:30:30.555555')->modify($modifier);
+        $current = $this->avoidMutation();
+        /* @var CarbonInterface $other */
+        $other = $this->avoidMutation()->modify($modifier);
+
+        if ($current->eq($other)) {
+            return true;
+        }
+
+        if (preg_match('/\d:\d{1,2}:\d{1,2}$/', $tester)) {
+            return $current->startOfSecond()->eq($other);
+        }
+
+        if (preg_match('/\d:\d{1,2}$/', $tester)) {
+            return $current->startOfMinute()->eq($other);
+        }
+
+        if (preg_match('/\d(h|am|pm)$/', $tester)) {
+            return $current->startOfHour()->eq($other);
+        }
+
+        if (preg_match(
+            '/^(january|february|march|april|may|june|july|august|september|october|november|december)\s+\d+$/i',
+            $tester
+        )) {
+            return $current->startOfMonth()->eq($other->startOfMonth());
+        }
+
+        $units = [
+            'month' => [1, 'year'],
+            'day' => [1, 'month'],
+            'hour' => [0, 'day'],
+            'minute' => [0, 'hour'],
+            'second' => [0, 'minute'],
+            'microsecond' => [0, 'second'],
+        ];
+
+        foreach ($units as $unit => [$minimum, $startUnit]) {
+            if ($minimum === $median->$unit) {
+                $current = $current->startOf($startUnit);
+
+                break;
+            }
+        }
+
+        return $current->eq($other);
+    }
+
+    /**
+     * Checks if the (date)time string is in a given format with
+     * given list of pattern replacements.
+     *
+     * @example
+     * ```
+     * Carbon::hasFormat('11:12:45', 'h:i:s'); // true
+     * Carbon::hasFormat('13:12:45', 'h:i:s'); // false
+     * ```
+     *
+     * @param string $date
+     * @param string $format
+     * @param array  $replacements
+     *
+     * @return bool
+     */
+    private static function matchFormatPattern(string $date, string $format, array $replacements): bool
+    {
+        // Preg quote, but remove escaped backslashes since we'll deal with escaped characters in the format string.
+        $regex = str_replace('\\\\', '\\', $format);
+        // Replace not-escaped letters
+        $regex = preg_replace_callback(
+            '/(?<!\\\\)((?:\\\\{2})*)(['.implode('', array_keys($replacements)).'])/',
+            function ($match) use ($replacements) {
+                return $match[1].strtr($match[2], $replacements);
+            },
+            $regex
+        );
+        // Replace escaped letters by the letter itself
+        $regex = preg_replace('/(?<!\\\\)((?:\\\\{2})*)\\\\(\w)/', '$1$2', $regex);
+        // Escape not escaped slashes
+        $regex = preg_replace('#(?<!\\\\)((?:\\\\{2})*)/#', '$1\\/', $regex);
+
+        return (bool) @preg_match('/^'.$regex.'$/', $date);
+    }
+
+    /**
+     * Returns true if the date was created using CarbonImmutable::startOfTime()
+     *
+     * @return bool
+     */
+    public function isStartOfTime(): bool
+    {
+        return $this->startOfTime ?? false;
+    }
+
+    /**
+     * Returns true if the date was created using CarbonImmutable::endOfTime()
+     *
+     * @return bool
+     */
+    public function isEndOfTime(): bool
+    {
+        return $this->endOfTime ?? false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Converter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Converter.php
new file mode 100644
index 0000000..7ba6225
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Converter.php
@@ -0,0 +1,652 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+use Carbon\CarbonInterface;
+use Carbon\CarbonInterval;
+use Carbon\CarbonPeriod;
+use Carbon\Exceptions\UnitException;
+use Closure;
+use DateTime;
+use DateTimeImmutable;
+use ReturnTypeWillChange;
+
+/**
+ * Trait Converter.
+ *
+ * Change date into different string formats and types and
+ * handle the string cast.
+ *
+ * Depends on the following methods:
+ *
+ * @method static copy()
+ */
+trait Converter
+{
+    /**
+     * Format to use for __toString method when type juggling occurs.
+     *
+     * @var string|Closure|null
+     */
+    protected static $toStringFormat;
+
+    /**
+     * Reset the format used to the default when type juggling a Carbon instance to a string
+     *
+     * @return void
+     */
+    public static function resetToStringFormat()
+    {
+        static::setToStringFormat(null);
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather let Carbon object being casted to string with DEFAULT_TO_STRING_FORMAT, and
+     *             use other method or custom format passed to format() method if you need to dump an other string
+     *             format.
+     *
+     * Set the default format used when type juggling a Carbon instance to a string
+     *
+     * @param string|Closure|null $format
+     *
+     * @return void
+     */
+    public static function setToStringFormat($format)
+    {
+        static::$toStringFormat = $format;
+    }
+
+    /**
+     * Returns the formatted date string on success or FALSE on failure.
+     *
+     * @see https://php.net/manual/en/datetime.format.php
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    #[ReturnTypeWillChange]
+    public function format($format)
+    {
+        $function = $this->localFormatFunction ?: static::$formatFunction;
+
+        if (!$function) {
+            return $this->rawFormat($format);
+        }
+
+        if (\is_string($function) && method_exists($this, $function)) {
+            $function = [$this, $function];
+        }
+
+        return $function(...\func_get_args());
+    }
+
+    /**
+     * @see https://php.net/manual/en/datetime.format.php
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function rawFormat($format)
+    {
+        return parent::format($format);
+    }
+
+    /**
+     * Format the instance as a string using the set format
+     *
+     * @example
+     * ```
+     * echo Carbon::now(); // Carbon instances can be casted to string
+     * ```
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        $format = $this->localToStringFormat ?? static::$toStringFormat;
+
+        return $format instanceof Closure
+            ? $format($this)
+            : $this->rawFormat($format ?: (
+                \defined('static::DEFAULT_TO_STRING_FORMAT')
+                    ? static::DEFAULT_TO_STRING_FORMAT
+                    : CarbonInterface::DEFAULT_TO_STRING_FORMAT
+            ));
+    }
+
+    /**
+     * Format the instance as date
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateString();
+     * ```
+     *
+     * @return string
+     */
+    public function toDateString()
+    {
+        return $this->rawFormat('Y-m-d');
+    }
+
+    /**
+     * Format the instance as a readable date
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toFormattedDateString();
+     * ```
+     *
+     * @return string
+     */
+    public function toFormattedDateString()
+    {
+        return $this->rawFormat('M j, Y');
+    }
+
+    /**
+     * Format the instance as time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toTimeString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toTimeString($unitPrecision = 'second')
+    {
+        return $this->rawFormat(static::getTimeFormatByPrecision($unitPrecision));
+    }
+
+    /**
+     * Format the instance as date and time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateTimeString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toDateTimeString($unitPrecision = 'second')
+    {
+        return $this->rawFormat('Y-m-d '.static::getTimeFormatByPrecision($unitPrecision));
+    }
+
+    /**
+     * Return a format from H:i to H:i:s.u according to given unit precision.
+     *
+     * @param string $unitPrecision "minute", "second", "millisecond" or "microsecond"
+     *
+     * @return string
+     */
+    public static function getTimeFormatByPrecision($unitPrecision)
+    {
+        switch (static::singularUnit($unitPrecision)) {
+            case 'minute':
+                return 'H:i';
+            case 'second':
+                return 'H:i:s';
+            case 'm':
+            case 'millisecond':
+                return 'H:i:s.v';
+            case 'µ':
+            case 'microsecond':
+                return 'H:i:s.u';
+        }
+
+        throw new UnitException('Precision unit expected among: minute, second, millisecond and microsecond.');
+    }
+
+    /**
+     * Format the instance as date and time T-separated with no timezone
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDateTimeLocalString();
+     * echo "\n";
+     * echo Carbon::now()->toDateTimeLocalString('minute'); // You can specify precision among: minute, second, millisecond and microsecond
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toDateTimeLocalString($unitPrecision = 'second')
+    {
+        return $this->rawFormat('Y-m-d\T'.static::getTimeFormatByPrecision($unitPrecision));
+    }
+
+    /**
+     * Format the instance with day, date and time
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toDayDateTimeString();
+     * ```
+     *
+     * @return string
+     */
+    public function toDayDateTimeString()
+    {
+        return $this->rawFormat('D, M j, Y g:i A');
+    }
+
+    /**
+     * Format the instance as ATOM
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toAtomString();
+     * ```
+     *
+     * @return string
+     */
+    public function toAtomString()
+    {
+        return $this->rawFormat(DateTime::ATOM);
+    }
+
+    /**
+     * Format the instance as COOKIE
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toCookieString();
+     * ```
+     *
+     * @return string
+     */
+    public function toCookieString()
+    {
+        return $this->rawFormat(DateTime::COOKIE);
+    }
+
+    /**
+     * Format the instance as ISO8601
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toIso8601String();
+     * ```
+     *
+     * @return string
+     */
+    public function toIso8601String()
+    {
+        return $this->toAtomString();
+    }
+
+    /**
+     * Format the instance as RFC822
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc822String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc822String()
+    {
+        return $this->rawFormat(DateTime::RFC822);
+    }
+
+    /**
+     * Convert the instance to UTC and return as Zulu ISO8601
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toIso8601ZuluString();
+     * ```
+     *
+     * @param string $unitPrecision
+     *
+     * @return string
+     */
+    public function toIso8601ZuluString($unitPrecision = 'second')
+    {
+        return $this->avoidMutation()
+            ->utc()
+            ->rawFormat('Y-m-d\T'.static::getTimeFormatByPrecision($unitPrecision).'\Z');
+    }
+
+    /**
+     * Format the instance as RFC850
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc850String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc850String()
+    {
+        return $this->rawFormat(DateTime::RFC850);
+    }
+
+    /**
+     * Format the instance as RFC1036
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc1036String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc1036String()
+    {
+        return $this->rawFormat(DateTime::RFC1036);
+    }
+
+    /**
+     * Format the instance as RFC1123
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc1123String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc1123String()
+    {
+        return $this->rawFormat(DateTime::RFC1123);
+    }
+
+    /**
+     * Format the instance as RFC2822
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc2822String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc2822String()
+    {
+        return $this->rawFormat(DateTime::RFC2822);
+    }
+
+    /**
+     * Format the instance as RFC3339
+     *
+     * @param bool $extended
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc3339String() . "\n";
+     * echo Carbon::now()->toRfc3339String(true) . "\n";
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc3339String($extended = false)
+    {
+        $format = DateTime::RFC3339;
+        if ($extended) {
+            $format = DateTime::RFC3339_EXTENDED;
+        }
+
+        return $this->rawFormat($format);
+    }
+
+    /**
+     * Format the instance as RSS
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRssString();
+     * ```
+     *
+     * @return string
+     */
+    public function toRssString()
+    {
+        return $this->rawFormat(DateTime::RSS);
+    }
+
+    /**
+     * Format the instance as W3C
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toW3cString();
+     * ```
+     *
+     * @return string
+     */
+    public function toW3cString()
+    {
+        return $this->rawFormat(DateTime::W3C);
+    }
+
+    /**
+     * Format the instance as RFC7231
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toRfc7231String();
+     * ```
+     *
+     * @return string
+     */
+    public function toRfc7231String()
+    {
+        return $this->avoidMutation()
+            ->setTimezone('GMT')
+            ->rawFormat(\defined('static::RFC7231_FORMAT') ? static::RFC7231_FORMAT : CarbonInterface::RFC7231_FORMAT);
+    }
+
+    /**
+     * Get default array representation.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toArray());
+     * ```
+     *
+     * @return array
+     */
+    public function toArray()
+    {
+        return [
+            'year' => $this->year,
+            'month' => $this->month,
+            'day' => $this->day,
+            'dayOfWeek' => $this->dayOfWeek,
+            'dayOfYear' => $this->dayOfYear,
+            'hour' => $this->hour,
+            'minute' => $this->minute,
+            'second' => $this->second,
+            'micro' => $this->micro,
+            'timestamp' => $this->timestamp,
+            'formatted' => $this->rawFormat(\defined('static::DEFAULT_TO_STRING_FORMAT') ? static::DEFAULT_TO_STRING_FORMAT : CarbonInterface::DEFAULT_TO_STRING_FORMAT),
+            'timezone' => $this->timezone,
+        ];
+    }
+
+    /**
+     * Get default object representation.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toObject());
+     * ```
+     *
+     * @return object
+     */
+    public function toObject()
+    {
+        return (object) $this->toArray();
+    }
+
+    /**
+     * Returns english human readable complete date string.
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->toString();
+     * ```
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return $this->avoidMutation()->locale('en')->isoFormat('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
+    }
+
+    /**
+     * Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z, if $keepOffset truthy, offset will be kept:
+     * 1977-04-22T01:00:00-05:00).
+     *
+     * @example
+     * ```
+     * echo Carbon::now('America/Toronto')->toISOString() . "\n";
+     * echo Carbon::now('America/Toronto')->toISOString(true) . "\n";
+     * ```
+     *
+     * @param bool $keepOffset Pass true to keep the date offset. Else forced to UTC.
+     *
+     * @return null|string
+     */
+    public function toISOString($keepOffset = false)
+    {
+        if (!$this->isValid()) {
+            return null;
+        }
+
+        $yearFormat = $this->year < 0 || $this->year > 9999 ? 'YYYYYY' : 'YYYY';
+        $tzFormat = $keepOffset ? 'Z' : '[Z]';
+        $date = $keepOffset ? $this : $this->avoidMutation()->utc();
+
+        return $date->isoFormat("$yearFormat-MM-DD[T]HH:mm:ss.SSSSSS$tzFormat");
+    }
+
+    /**
+     * Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z) with UTC timezone.
+     *
+     * @example
+     * ```
+     * echo Carbon::now('America/Toronto')->toJSON();
+     * ```
+     *
+     * @return null|string
+     */
+    public function toJSON()
+    {
+        return $this->toISOString();
+    }
+
+    /**
+     * Return native DateTime PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDateTime());
+     * ```
+     *
+     * @return DateTime
+     */
+    public function toDateTime()
+    {
+        return new DateTime($this->rawFormat('Y-m-d H:i:s.u'), $this->getTimezone());
+    }
+
+    /**
+     * Return native toDateTimeImmutable PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDateTimeImmutable());
+     * ```
+     *
+     * @return DateTimeImmutable
+     */
+    public function toDateTimeImmutable()
+    {
+        return new DateTimeImmutable($this->rawFormat('Y-m-d H:i:s.u'), $this->getTimezone());
+    }
+
+    /**
+     * @alias toDateTime
+     *
+     * Return native DateTime PHP object matching the current instance.
+     *
+     * @example
+     * ```
+     * var_dump(Carbon::now()->toDate());
+     * ```
+     *
+     * @return DateTime
+     */
+    public function toDate()
+    {
+        return $this->toDateTime();
+    }
+
+    /**
+     * Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
+     *
+     * @param \DateTimeInterface|Carbon|CarbonImmutable|int|null $end      period end date or recurrences count if int
+     * @param int|\DateInterval|string|null                      $interval period default interval or number of the given $unit
+     * @param string|null                                        $unit     if specified, $interval must be an integer
+     *
+     * @return CarbonPeriod
+     */
+    public function toPeriod($end = null, $interval = null, $unit = null)
+    {
+        if ($unit) {
+            $interval = CarbonInterval::make("$interval ".static::pluralUnit($unit));
+        }
+
+        $period = (new CarbonPeriod())->setDateClass(static::class)->setStartDate($this);
+
+        if ($interval) {
+            $period->setDateInterval($interval);
+        }
+
+        if (\is_int($end) || \is_string($end) && ctype_digit($end)) {
+            $period->setRecurrences($end);
+        } elseif ($end) {
+            $period->setEndDate($end);
+        }
+
+        return $period;
+    }
+
+    /**
+     * Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
+     *
+     * @param \DateTimeInterface|Carbon|CarbonImmutable|null $end      period end date
+     * @param int|\DateInterval|string|null                  $interval period default interval or number of the given $unit
+     * @param string|null                                    $unit     if specified, $interval must be an integer
+     *
+     * @return CarbonPeriod
+     */
+    public function range($end = null, $interval = null, $unit = null)
+    {
+        return $this->toPeriod($end, $interval, $unit);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Creator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Creator.php
new file mode 100644
index 0000000..fa7cfc7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Creator.php
@@ -0,0 +1,940 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+use Carbon\CarbonInterface;
+use Carbon\Exceptions\InvalidDateException;
+use Carbon\Exceptions\InvalidFormatException;
+use Carbon\Exceptions\OutOfRangeException;
+use Carbon\Translator;
+use Closure;
+use DateTimeInterface;
+use DateTimeZone;
+use Exception;
+use ReturnTypeWillChange;
+
+/**
+ * Trait Creator.
+ *
+ * Static creators.
+ *
+ * Depends on the following methods:
+ *
+ * @method static Carbon|CarbonImmutable getTestNow()
+ */
+trait Creator
+{
+    use ObjectInitialisation;
+
+    /**
+     * The errors that can occur.
+     *
+     * @var array
+     */
+    protected static $lastErrors;
+
+    /**
+     * Create a new Carbon instance.
+     *
+     * Please see the testing aids section (specifically static::setTestNow())
+     * for more on the possibility of this constructor returning a test instance.
+     *
+     * @param DateTimeInterface|string|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     */
+    public function __construct($time = null, $tz = null)
+    {
+        if ($time instanceof DateTimeInterface) {
+            $time = $this->constructTimezoneFromDateTime($time, $tz)->format('Y-m-d H:i:s.u');
+        }
+
+        if (is_numeric($time) && (!\is_string($time) || !preg_match('/^\d{1,14}$/', $time))) {
+            $time = static::createFromTimestampUTC($time)->format('Y-m-d\TH:i:s.uP');
+        }
+
+        // If the class has a test now set and we are trying to create a now()
+        // instance then override as required
+        $isNow = empty($time) || $time === 'now';
+
+        if (method_exists(static::class, 'hasTestNow') &&
+            method_exists(static::class, 'getTestNow') &&
+            static::hasTestNow() &&
+            ($isNow || static::hasRelativeKeywords($time))
+        ) {
+            static::mockConstructorParameters($time, $tz);
+        }
+
+        // Work-around for PHP bug https://bugs.php.net/bug.php?id=67127
+        if (!str_contains((string) .1, '.')) {
+            $locale = setlocale(LC_NUMERIC, '0');
+            setlocale(LC_NUMERIC, 'C');
+        }
+
+        try {
+            parent::__construct($time ?: 'now', static::safeCreateDateTimeZone($tz) ?: null);
+        } catch (Exception $exception) {
+            throw new InvalidFormatException($exception->getMessage(), 0, $exception);
+        }
+
+        $this->constructedObjectId = spl_object_hash($this);
+
+        if (isset($locale)) {
+            setlocale(LC_NUMERIC, $locale);
+        }
+
+        static::setLastErrors(parent::getLastErrors());
+    }
+
+    /**
+     * Get timezone from a datetime instance.
+     *
+     * @param DateTimeInterface        $date
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return DateTimeInterface
+     */
+    private function constructTimezoneFromDateTime(DateTimeInterface $date, &$tz)
+    {
+        if ($tz !== null) {
+            $safeTz = static::safeCreateDateTimeZone($tz);
+
+            if ($safeTz) {
+                return $date->setTimezone($safeTz);
+            }
+
+            return $date;
+        }
+
+        $tz = $date->getTimezone();
+
+        return $date;
+    }
+
+    /**
+     * Update constructedObjectId on cloned.
+     */
+    public function __clone()
+    {
+        $this->constructedObjectId = spl_object_hash($this);
+    }
+
+    /**
+     * Create a Carbon instance from a DateTime one.
+     *
+     * @param DateTimeInterface $date
+     *
+     * @return static
+     */
+    public static function instance($date)
+    {
+        if ($date instanceof static) {
+            return clone $date;
+        }
+
+        static::expectDateTime($date);
+
+        $instance = new static($date->format('Y-m-d H:i:s.u'), $date->getTimezone());
+
+        if ($date instanceof CarbonInterface || $date instanceof Options) {
+            $settings = $date->getSettings();
+
+            if (!$date->hasLocalTranslator()) {
+                unset($settings['locale']);
+            }
+
+            $instance->settings($settings);
+        }
+
+        return $instance;
+    }
+
+    /**
+     * Create a carbon instance from a string.
+     *
+     * This is an alias for the constructor that allows better fluent syntax
+     * as it allows you to do Carbon::parse('Monday next week')->fn() rather
+     * than (new Carbon('Monday next week'))->fn().
+     *
+     * @param string|DateTimeInterface|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function rawParse($time = null, $tz = null)
+    {
+        if ($time instanceof DateTimeInterface) {
+            return static::instance($time);
+        }
+
+        try {
+            return new static($time, $tz);
+        } catch (Exception $exception) {
+            $date = @static::now($tz)->change($time);
+
+            if (!$date) {
+                throw new InvalidFormatException("Could not parse '$time': ".$exception->getMessage(), 0, $exception);
+            }
+
+            return $date;
+        }
+    }
+
+    /**
+     * Create a carbon instance from a string.
+     *
+     * This is an alias for the constructor that allows better fluent syntax
+     * as it allows you to do Carbon::parse('Monday next week')->fn() rather
+     * than (new Carbon('Monday next week'))->fn().
+     *
+     * @param string|DateTimeInterface|null $time
+     * @param DateTimeZone|string|null      $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function parse($time = null, $tz = null)
+    {
+        $function = static::$parseFunction;
+
+        if (!$function) {
+            return static::rawParse($time, $tz);
+        }
+
+        if (\is_string($function) && method_exists(static::class, $function)) {
+            $function = [static::class, $function];
+        }
+
+        return $function(...\func_get_args());
+    }
+
+    /**
+     * Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
+     *
+     * @param string                   $time   date/time string in the given language (may also contain English).
+     * @param string|null              $locale if locale is null or not specified, current global locale will be
+     *                                         used instead.
+     * @param DateTimeZone|string|null $tz     optional timezone for the new instance.
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function parseFromLocale($time, $locale = null, $tz = null)
+    {
+        return static::rawParse(static::translateTimeString($time, $locale, 'en'), $tz);
+    }
+
+    /**
+     * Get a Carbon instance for the current date and time.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function now($tz = null)
+    {
+        return new static(null, $tz);
+    }
+
+    /**
+     * Create a Carbon instance for today.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function today($tz = null)
+    {
+        return static::rawParse('today', $tz);
+    }
+
+    /**
+     * Create a Carbon instance for tomorrow.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function tomorrow($tz = null)
+    {
+        return static::rawParse('tomorrow', $tz);
+    }
+
+    /**
+     * Create a Carbon instance for yesterday.
+     *
+     * @param DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function yesterday($tz = null)
+    {
+        return static::rawParse('yesterday', $tz);
+    }
+
+    /**
+     * Create a Carbon instance for the greatest supported date.
+     *
+     * @return static
+     */
+    public static function maxValue()
+    {
+        if (self::$PHPIntSize === 4) {
+            // 32 bit
+            return static::createFromTimestamp(PHP_INT_MAX); // @codeCoverageIgnore
+        }
+
+        // 64 bit
+        return static::create(9999, 12, 31, 23, 59, 59);
+    }
+
+    /**
+     * Create a Carbon instance for the lowest supported date.
+     *
+     * @return static
+     */
+    public static function minValue()
+    {
+        if (self::$PHPIntSize === 4) {
+            // 32 bit
+            return static::createFromTimestamp(~PHP_INT_MAX); // @codeCoverageIgnore
+        }
+
+        // 64 bit
+        return static::create(1, 1, 1, 0, 0, 0);
+    }
+
+    private static function assertBetween($unit, $value, $min, $max)
+    {
+        if (static::isStrictModeEnabled() && ($value < $min || $value > $max)) {
+            throw new OutOfRangeException($unit, $min, $max, $value);
+        }
+    }
+
+    private static function createNowInstance($tz)
+    {
+        if (!static::hasTestNow()) {
+            return static::now($tz);
+        }
+
+        $now = static::getTestNow();
+
+        if ($now instanceof Closure) {
+            return $now(static::now($tz));
+        }
+
+        return $now;
+    }
+
+    /**
+     * Create a new Carbon instance from a specific date and time.
+     *
+     * If any of $year, $month or $day are set to null their now() values will
+     * be used.
+     *
+     * If $hour is null it will be set to its now() value and the default
+     * values for $minute and $second will be their now() values.
+     *
+     * If $hour is not null then the default values for $minute and $second
+     * will be 0.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $tz = null)
+    {
+        if (\is_string($year) && !is_numeric($year)) {
+            return static::parse($year, $tz ?: (\is_string($month) || $month instanceof DateTimeZone ? $month : null));
+        }
+
+        $defaults = null;
+        $getDefault = function ($unit) use ($tz, &$defaults) {
+            if ($defaults === null) {
+                $now = self::createNowInstance($tz);
+
+                $defaults = array_combine([
+                    'year',
+                    'month',
+                    'day',
+                    'hour',
+                    'minute',
+                    'second',
+                ], explode('-', $now->rawFormat('Y-n-j-G-i-s.u')));
+            }
+
+            return $defaults[$unit];
+        };
+
+        $year = $year === null ? $getDefault('year') : $year;
+        $month = $month === null ? $getDefault('month') : $month;
+        $day = $day === null ? $getDefault('day') : $day;
+        $hour = $hour === null ? $getDefault('hour') : $hour;
+        $minute = $minute === null ? $getDefault('minute') : $minute;
+        $second = (float) ($second === null ? $getDefault('second') : $second);
+
+        self::assertBetween('month', $month, 0, 99);
+        self::assertBetween('day', $day, 0, 99);
+        self::assertBetween('hour', $hour, 0, 99);
+        self::assertBetween('minute', $minute, 0, 99);
+        self::assertBetween('second', $second, 0, 99);
+
+        $fixYear = null;
+
+        if ($year < 0) {
+            $fixYear = $year;
+            $year = 0;
+        } elseif ($year > 9999) {
+            $fixYear = $year - 9999;
+            $year = 9999;
+        }
+
+        $second = ($second < 10 ? '0' : '').number_format($second, 6);
+        $instance = static::rawCreateFromFormat('!Y-n-j G:i:s.u', sprintf('%s-%s-%s %s:%02s:%02s', $year, $month, $day, $hour, $minute, $second), $tz);
+
+        if ($fixYear !== null) {
+            $instance = $instance->addYears($fixYear);
+        }
+
+        return $instance;
+    }
+
+    /**
+     * Create a new safe Carbon instance from a specific date and time.
+     *
+     * If any of $year, $month or $day are set to null their now() values will
+     * be used.
+     *
+     * If $hour is null it will be set to its now() value and the default
+     * values for $minute and $second will be their now() values.
+     *
+     * If $hour is not null then the default values for $minute and $second
+     * will be 0.
+     *
+     * If one of the set values is not valid, an InvalidDateException
+     * will be thrown.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidDateException
+     *
+     * @return static|false
+     */
+    public static function createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $tz = null)
+    {
+        $fields = static::getRangesByUnit();
+
+        foreach ($fields as $field => $range) {
+            if ($$field !== null && (!\is_int($$field) || $$field < $range[0] || $$field > $range[1])) {
+                if (static::isStrictModeEnabled()) {
+                    throw new InvalidDateException($field, $$field);
+                }
+
+                return false;
+            }
+        }
+
+        $instance = static::create($year, $month, $day, $hour, $minute, $second, $tz);
+
+        foreach (array_reverse($fields) as $field => $range) {
+            if ($$field !== null && (!\is_int($$field) || $$field !== $instance->$field)) {
+                if (static::isStrictModeEnabled()) {
+                    throw new InvalidDateException($field, $$field);
+                }
+
+                return false;
+            }
+        }
+
+        return $instance;
+    }
+
+    /**
+     * Create a new Carbon instance from a specific date and time using strict validation.
+     *
+     * @see create()
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $tz = null): self
+    {
+        $initialStrictMode = static::isStrictModeEnabled();
+        static::useStrictMode(true);
+
+        try {
+            $date = static::create($year, $month, $day, $hour, $minute, $second, $tz);
+        } finally {
+            static::useStrictMode($initialStrictMode);
+        }
+
+        return $date;
+    }
+
+    /**
+     * Create a Carbon instance from just a date. The time portion is set to now.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromDate($year = null, $month = null, $day = null, $tz = null)
+    {
+        return static::create($year, $month, $day, null, null, null, $tz);
+    }
+
+    /**
+     * Create a Carbon instance from just a date. The time portion is set to midnight.
+     *
+     * @param int|null                 $year
+     * @param int|null                 $month
+     * @param int|null                 $day
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createMidnightDate($year = null, $month = null, $day = null, $tz = null)
+    {
+        return static::create($year, $month, $day, 0, 0, 0, $tz);
+    }
+
+    /**
+     * Create a Carbon instance from just a time. The date portion is set to today.
+     *
+     * @param int|null                 $hour
+     * @param int|null                 $minute
+     * @param int|null                 $second
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromTime($hour = 0, $minute = 0, $second = 0, $tz = null)
+    {
+        return static::create(null, null, null, $hour, $minute, $second, $tz);
+    }
+
+    /**
+     * Create a Carbon instance from a time string. The date portion is set to today.
+     *
+     * @param string                   $time
+     * @param DateTimeZone|string|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function createFromTimeString($time, $tz = null)
+    {
+        return static::today($tz)->setTimeFromTimeString($time);
+    }
+
+    /**
+     * @param string                         $format     Datetime format
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $originalTz
+     *
+     * @return DateTimeInterface|false
+     */
+    private static function createFromFormatAndTimezone($format, $time, $originalTz)
+    {
+        // Work-around for https://bugs.php.net/bug.php?id=75577
+        // @codeCoverageIgnoreStart
+        if (version_compare(PHP_VERSION, '7.3.0-dev', '<')) {
+            $format = str_replace('.v', '.u', $format);
+        }
+        // @codeCoverageIgnoreEnd
+
+        if ($originalTz === null) {
+            return parent::createFromFormat($format, (string) $time);
+        }
+
+        $tz = \is_int($originalTz)
+            ? @timezone_name_from_abbr('', (int) ($originalTz * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE), 1)
+            : $originalTz;
+
+        $tz = static::safeCreateDateTimeZone($tz, $originalTz);
+
+        if ($tz === false) {
+            return false;
+        }
+
+        return parent::createFromFormat($format, (string) $time, $tz);
+    }
+
+    /**
+     * Create a Carbon instance from a specific format.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function rawCreateFromFormat($format, $time, $tz = null)
+    {
+        // Work-around for https://bugs.php.net/bug.php?id=80141
+        $format = preg_replace('/(?<!\\\\)((?:\\\\{2})*)c/', '$1Y-m-d\TH:i:sP', $format);
+
+        if (preg_match('/(?<!\\\\)(?:\\\\{2})*(a|A)/', $format, $aMatches, PREG_OFFSET_CAPTURE) &&
+            preg_match('/(?<!\\\\)(?:\\\\{2})*(h|g|H|G)/', $format, $hMatches, PREG_OFFSET_CAPTURE) &&
+            $aMatches[1][1] < $hMatches[1][1] &&
+            preg_match('/(am|pm|AM|PM)/', $time)
+        ) {
+            $format = preg_replace('/^(.*)(?<!\\\\)((?:\\\\{2})*)(a|A)(.*)$/U', '$1$2$4 $3', $format);
+            $time = preg_replace('/^(.*)(am|pm|AM|PM)(.*)$/U', '$1$3 $2', $time);
+        }
+
+        // First attempt to create an instance, so that error messages are based on the unmodified format.
+        $date = self::createFromFormatAndTimezone($format, $time, $tz);
+        $lastErrors = parent::getLastErrors();
+        /** @var \Carbon\CarbonImmutable|\Carbon\Carbon|null $mock */
+        $mock = static::getMockedTestNow($tz);
+
+        if ($mock && $date instanceof DateTimeInterface) {
+            // Set timezone from mock if custom timezone was neither given directly nor as a part of format.
+            // First let's skip the part that will be ignored by the parser.
+            $nonEscaped = '(?<!\\\\)(\\\\{2})*';
+
+            $nonIgnored = preg_replace("/^.*{$nonEscaped}!/s", '', $format);
+
+            if ($tz === null && !preg_match("/{$nonEscaped}[eOPT]/", $nonIgnored)) {
+                $tz = clone $mock->getTimezone();
+            }
+
+            // Set microseconds to zero to match behavior of DateTime::createFromFormat()
+            // See https://bugs.php.net/bug.php?id=74332
+            $mock = $mock->copy()->microsecond(0);
+
+            // Prepend mock datetime only if the format does not contain non escaped unix epoch reset flag.
+            if (!preg_match("/{$nonEscaped}[!|]/", $format)) {
+                $format = static::MOCK_DATETIME_FORMAT.' '.$format;
+                $time = ($mock instanceof self ? $mock->rawFormat(static::MOCK_DATETIME_FORMAT) : $mock->format(static::MOCK_DATETIME_FORMAT)).' '.$time;
+            }
+
+            // Regenerate date from the modified format to base result on the mocked instance instead of now.
+            $date = self::createFromFormatAndTimezone($format, $time, $tz);
+        }
+
+        if ($date instanceof DateTimeInterface) {
+            $instance = static::instance($date);
+            $instance::setLastErrors($lastErrors);
+
+            return $instance;
+        }
+
+        if (static::isStrictModeEnabled()) {
+            throw new InvalidFormatException(implode(PHP_EOL, $lastErrors['errors']));
+        }
+
+        return false;
+    }
+
+    /**
+     * Create a Carbon instance from a specific format.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    #[ReturnTypeWillChange]
+    public static function createFromFormat($format, $time, $tz = null)
+    {
+        $function = static::$createFromFormatFunction;
+
+        if (!$function) {
+            return static::rawCreateFromFormat($format, $time, $tz);
+        }
+
+        if (\is_string($function) && method_exists(static::class, $function)) {
+            $function = [static::class, $function];
+        }
+
+        return $function(...\func_get_args());
+    }
+
+    /**
+     * Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
+     *
+     * @param string                                             $format     Datetime format
+     * @param string                                             $time
+     * @param DateTimeZone|string|false|null                     $tz         optional timezone
+     * @param string|null                                        $locale     locale to be used for LTS, LT, LL, LLL, etc. macro-formats (en by fault, unneeded if no such macro-format in use)
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator optional custom translator to use for macro-formats
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromIsoFormat($format, $time, $tz = null, $locale = 'en', $translator = null)
+    {
+        $format = preg_replace_callback('/(?<!\\\\)(\\\\{2})*(LTS|LT|[Ll]{1,4})/', function ($match) use ($locale, $translator) {
+            [$code] = $match;
+
+            static $formats = null;
+
+            if ($formats === null) {
+                $translator = $translator ?: Translator::get($locale);
+
+                $formats = [
+                    'LT' => static::getTranslationMessageWith($translator, 'formats.LT', $locale, 'h:mm A'),
+                    'LTS' => static::getTranslationMessageWith($translator, 'formats.LTS', $locale, 'h:mm:ss A'),
+                    'L' => static::getTranslationMessageWith($translator, 'formats.L', $locale, 'MM/DD/YYYY'),
+                    'LL' => static::getTranslationMessageWith($translator, 'formats.LL', $locale, 'MMMM D, YYYY'),
+                    'LLL' => static::getTranslationMessageWith($translator, 'formats.LLL', $locale, 'MMMM D, YYYY h:mm A'),
+                    'LLLL' => static::getTranslationMessageWith($translator, 'formats.LLLL', $locale, 'dddd, MMMM D, YYYY h:mm A'),
+                ];
+            }
+
+            return $formats[$code] ?? preg_replace_callback(
+                '/MMMM|MM|DD|dddd/',
+                function ($code) {
+                    return mb_substr($code[0], 1);
+                },
+                $formats[strtoupper($code)] ?? ''
+            );
+        }, $format);
+
+        $format = preg_replace_callback('/(?<!\\\\)(\\\\{2})*('.CarbonInterface::ISO_FORMAT_REGEXP.'|[A-Za-z])/', function ($match) {
+            [$code] = $match;
+
+            static $replacements = null;
+
+            if ($replacements === null) {
+                $replacements = [
+                    'OD' => 'd',
+                    'OM' => 'M',
+                    'OY' => 'Y',
+                    'OH' => 'G',
+                    'Oh' => 'g',
+                    'Om' => 'i',
+                    'Os' => 's',
+                    'D' => 'd',
+                    'DD' => 'd',
+                    'Do' => 'd',
+                    'd' => '!',
+                    'dd' => '!',
+                    'ddd' => 'D',
+                    'dddd' => 'D',
+                    'DDD' => 'z',
+                    'DDDD' => 'z',
+                    'DDDo' => 'z',
+                    'e' => '!',
+                    'E' => '!',
+                    'H' => 'G',
+                    'HH' => 'H',
+                    'h' => 'g',
+                    'hh' => 'h',
+                    'k' => 'G',
+                    'kk' => 'G',
+                    'hmm' => 'gi',
+                    'hmmss' => 'gis',
+                    'Hmm' => 'Gi',
+                    'Hmmss' => 'Gis',
+                    'm' => 'i',
+                    'mm' => 'i',
+                    'a' => 'a',
+                    'A' => 'a',
+                    's' => 's',
+                    'ss' => 's',
+                    'S' => '*',
+                    'SS' => '*',
+                    'SSS' => '*',
+                    'SSSS' => '*',
+                    'SSSSS' => '*',
+                    'SSSSSS' => 'u',
+                    'SSSSSSS' => 'u*',
+                    'SSSSSSSS' => 'u*',
+                    'SSSSSSSSS' => 'u*',
+                    'M' => 'm',
+                    'MM' => 'm',
+                    'MMM' => 'M',
+                    'MMMM' => 'M',
+                    'Mo' => 'm',
+                    'Q' => '!',
+                    'Qo' => '!',
+                    'G' => '!',
+                    'GG' => '!',
+                    'GGG' => '!',
+                    'GGGG' => '!',
+                    'GGGGG' => '!',
+                    'g' => '!',
+                    'gg' => '!',
+                    'ggg' => '!',
+                    'gggg' => '!',
+                    'ggggg' => '!',
+                    'W' => '!',
+                    'WW' => '!',
+                    'Wo' => '!',
+                    'w' => '!',
+                    'ww' => '!',
+                    'wo' => '!',
+                    'x' => 'U???',
+                    'X' => 'U',
+                    'Y' => 'Y',
+                    'YY' => 'y',
+                    'YYYY' => 'Y',
+                    'YYYYY' => 'Y',
+                    'YYYYYY' => 'Y',
+                    'z' => 'e',
+                    'zz' => 'e',
+                    'Z' => 'e',
+                    'ZZ' => 'e',
+                ];
+            }
+
+            $format = $replacements[$code] ?? '?';
+
+            if ($format === '!') {
+                throw new InvalidFormatException("Format $code not supported for creation.");
+            }
+
+            return $format;
+        }, $format);
+
+        return static::rawCreateFromFormat($format, $time, $tz);
+    }
+
+    /**
+     * Create a Carbon instance from a specific format and a string in a given language.
+     *
+     * @param string                         $format Datetime format
+     * @param string                         $locale
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromLocaleFormat($format, $locale, $time, $tz = null)
+    {
+        return static::rawCreateFromFormat($format, static::translateTimeString($time, $locale, 'en'), $tz);
+    }
+
+    /**
+     * Create a Carbon instance from a specific ISO format and a string in a given language.
+     *
+     * @param string                         $format Datetime ISO format
+     * @param string                         $locale
+     * @param string                         $time
+     * @param DateTimeZone|string|false|null $tz
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|false
+     */
+    public static function createFromLocaleIsoFormat($format, $locale, $time, $tz = null)
+    {
+        $time = static::translateTimeString($time, $locale, 'en', CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS | CarbonInterface::TRANSLATE_MERIDIEM);
+
+        return static::createFromIsoFormat($format, $time, $tz, $locale);
+    }
+
+    /**
+     * Make a Carbon instance from given variable if possible.
+     *
+     * Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
+     * and recurrences). Throw an exception for invalid format, but otherwise return null.
+     *
+     * @param mixed $var
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static|null
+     */
+    public static function make($var)
+    {
+        if ($var instanceof DateTimeInterface) {
+            return static::instance($var);
+        }
+
+        $date = null;
+
+        if (\is_string($var)) {
+            $var = trim($var);
+
+            if (!preg_match('/^P[0-9T]/', $var) &&
+                !preg_match('/^R[0-9]/', $var) &&
+                preg_match('/[a-z0-9]/i', $var)
+            ) {
+                $date = static::parse($var);
+            }
+        }
+
+        return $date;
+    }
+
+    /**
+     * Set last errors.
+     *
+     * @param array $lastErrors
+     *
+     * @return void
+     */
+    private static function setLastErrors(array $lastErrors)
+    {
+        static::$lastErrors = $lastErrors;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    #[ReturnTypeWillChange]
+    public static function getLastErrors()
+    {
+        return static::$lastErrors;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Date.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Date.php
new file mode 100644
index 0000000..07ac0dd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Date.php
@@ -0,0 +1,2662 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use BadMethodCallException;
+use Carbon\Carbon;
+use Carbon\CarbonInterface;
+use Carbon\CarbonPeriod;
+use Carbon\CarbonTimeZone;
+use Carbon\Exceptions\BadComparisonUnitException;
+use Carbon\Exceptions\ImmutableException;
+use Carbon\Exceptions\InvalidTimeZoneException;
+use Carbon\Exceptions\InvalidTypeException;
+use Carbon\Exceptions\UnknownGetterException;
+use Carbon\Exceptions\UnknownMethodException;
+use Carbon\Exceptions\UnknownSetterException;
+use Carbon\Exceptions\UnknownUnitException;
+use Closure;
+use DateInterval;
+use DatePeriod;
+use DateTime;
+use DateTimeImmutable;
+use DateTimeInterface;
+use DateTimeZone;
+use InvalidArgumentException;
+use ReflectionException;
+use ReturnTypeWillChange;
+use Throwable;
+
+/**
+ * A simple API extension for DateTime.
+ *
+ * <autodoc generated by `composer phpdoc`>
+ *
+ * @property      int              $year
+ * @property      int              $yearIso
+ * @property      int              $month
+ * @property      int              $day
+ * @property      int              $hour
+ * @property      int              $minute
+ * @property      int              $second
+ * @property      int              $micro
+ * @property      int              $microsecond
+ * @property      int|float|string $timestamp                                                                         seconds since the Unix Epoch
+ * @property      string           $englishDayOfWeek                                                                  the day of week in English
+ * @property      string           $shortEnglishDayOfWeek                                                             the abbreviated day of week in English
+ * @property      string           $englishMonth                                                                      the month in English
+ * @property      string           $shortEnglishMonth                                                                 the abbreviated month in English
+ * @property      string           $localeDayOfWeek                                                                   the day of week in current locale LC_TIME
+ * @property      string           $shortLocaleDayOfWeek                                                              the abbreviated day of week in current locale LC_TIME
+ * @property      string           $localeMonth                                                                       the month in current locale LC_TIME
+ * @property      string           $shortLocaleMonth                                                                  the abbreviated month in current locale LC_TIME
+ * @property      int              $milliseconds
+ * @property      int              $millisecond
+ * @property      int              $milli
+ * @property      int              $week                                                                              1 through 53
+ * @property      int              $isoWeek                                                                           1 through 53
+ * @property      int              $weekYear                                                                          year according to week format
+ * @property      int              $isoWeekYear                                                                       year according to ISO week format
+ * @property      int              $dayOfYear                                                                         1 through 366
+ * @property      int              $age                                                                               does a diffInYears() with default parameters
+ * @property      int              $offset                                                                            the timezone offset in seconds from UTC
+ * @property      int              $offsetMinutes                                                                     the timezone offset in minutes from UTC
+ * @property      int              $offsetHours                                                                       the timezone offset in hours from UTC
+ * @property      CarbonTimeZone   $timezone                                                                          the current timezone
+ * @property      CarbonTimeZone   $tz                                                                                alias of $timezone
+ * @property-read int              $dayOfWeek                                                                         0 (for Sunday) through 6 (for Saturday)
+ * @property-read int              $dayOfWeekIso                                                                      1 (for Monday) through 7 (for Sunday)
+ * @property-read int              $weekOfYear                                                                        ISO-8601 week number of year, weeks starting on Monday
+ * @property-read int              $daysInMonth                                                                       number of days in the given month
+ * @property-read string           $latinMeridiem                                                                     "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
+ * @property-read string           $latinUpperMeridiem                                                                "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
+ * @property-read string           $timezoneAbbreviatedName                                                           the current timezone abbreviated name
+ * @property-read string           $tzAbbrName                                                                        alias of $timezoneAbbreviatedName
+ * @property-read string           $dayName                                                                           long name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $shortDayName                                                                      short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $minDayName                                                                        very short name of weekday translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $monthName                                                                         long name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $shortMonthName                                                                    short name of month translated according to Carbon locale, in english if no translation available for current language
+ * @property-read string           $meridiem                                                                          lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read string           $upperMeridiem                                                                     uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+ * @property-read int              $noZeroHour                                                                        current hour from 1 to 24
+ * @property-read int              $weeksInYear                                                                       51 through 53
+ * @property-read int              $isoWeeksInYear                                                                    51 through 53
+ * @property-read int              $weekOfMonth                                                                       1 through 5
+ * @property-read int              $weekNumberInMonth                                                                 1 through 5
+ * @property-read int              $firstWeekDay                                                                      0 through 6
+ * @property-read int              $lastWeekDay                                                                       0 through 6
+ * @property-read int              $daysInYear                                                                        365 or 366
+ * @property-read int              $quarter                                                                           the quarter of this instance, 1 - 4
+ * @property-read int              $decade                                                                            the decade of this instance
+ * @property-read int              $century                                                                           the century of this instance
+ * @property-read int              $millennium                                                                        the millennium of this instance
+ * @property-read bool             $dst                                                                               daylight savings time indicator, true if DST, false otherwise
+ * @property-read bool             $local                                                                             checks if the timezone is local, true if local, false otherwise
+ * @property-read bool             $utc                                                                               checks if the timezone is UTC, true if UTC, false otherwise
+ * @property-read string           $timezoneName                                                                      the current timezone name
+ * @property-read string           $tzName                                                                            alias of $timezoneName
+ * @property-read string           $locale                                                                            locale of the current instance
+ *
+ * @method        bool             isUtc()                                                                            Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
+ * @method        bool             isLocal()                                                                          Check if the current instance has non-UTC timezone.
+ * @method        bool             isValid()                                                                          Check if the current instance is a valid date.
+ * @method        bool             isDST()                                                                            Check if the current instance is in a daylight saving time.
+ * @method        bool             isSunday()                                                                         Checks if the instance day is sunday.
+ * @method        bool             isMonday()                                                                         Checks if the instance day is monday.
+ * @method        bool             isTuesday()                                                                        Checks if the instance day is tuesday.
+ * @method        bool             isWednesday()                                                                      Checks if the instance day is wednesday.
+ * @method        bool             isThursday()                                                                       Checks if the instance day is thursday.
+ * @method        bool             isFriday()                                                                         Checks if the instance day is friday.
+ * @method        bool             isSaturday()                                                                       Checks if the instance day is saturday.
+ * @method        bool             isSameYear(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentYear()                                                                    Checks if the instance is in the same year as the current moment.
+ * @method        bool             isNextYear()                                                                       Checks if the instance is in the same year as the current moment next year.
+ * @method        bool             isLastYear()                                                                       Checks if the instance is in the same year as the current moment last year.
+ * @method        bool             isSameWeek(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentWeek()                                                                    Checks if the instance is in the same week as the current moment.
+ * @method        bool             isNextWeek()                                                                       Checks if the instance is in the same week as the current moment next week.
+ * @method        bool             isLastWeek()                                                                       Checks if the instance is in the same week as the current moment last week.
+ * @method        bool             isSameDay(Carbon|DateTimeInterface|string|null $date = null)                       Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentDay()                                                                     Checks if the instance is in the same day as the current moment.
+ * @method        bool             isNextDay()                                                                        Checks if the instance is in the same day as the current moment next day.
+ * @method        bool             isLastDay()                                                                        Checks if the instance is in the same day as the current moment last day.
+ * @method        bool             isSameHour(Carbon|DateTimeInterface|string|null $date = null)                      Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentHour()                                                                    Checks if the instance is in the same hour as the current moment.
+ * @method        bool             isNextHour()                                                                       Checks if the instance is in the same hour as the current moment next hour.
+ * @method        bool             isLastHour()                                                                       Checks if the instance is in the same hour as the current moment last hour.
+ * @method        bool             isSameMinute(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMinute()                                                                  Checks if the instance is in the same minute as the current moment.
+ * @method        bool             isNextMinute()                                                                     Checks if the instance is in the same minute as the current moment next minute.
+ * @method        bool             isLastMinute()                                                                     Checks if the instance is in the same minute as the current moment last minute.
+ * @method        bool             isSameSecond(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentSecond()                                                                  Checks if the instance is in the same second as the current moment.
+ * @method        bool             isNextSecond()                                                                     Checks if the instance is in the same second as the current moment next second.
+ * @method        bool             isLastSecond()                                                                     Checks if the instance is in the same second as the current moment last second.
+ * @method        bool             isSameMicro(Carbon|DateTimeInterface|string|null $date = null)                     Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMicro()                                                                   Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool             isNextMicro()                                                                      Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool             isLastMicro()                                                                      Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool             isSameMicrosecond(Carbon|DateTimeInterface|string|null $date = null)               Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMicrosecond()                                                             Checks if the instance is in the same microsecond as the current moment.
+ * @method        bool             isNextMicrosecond()                                                                Checks if the instance is in the same microsecond as the current moment next microsecond.
+ * @method        bool             isLastMicrosecond()                                                                Checks if the instance is in the same microsecond as the current moment last microsecond.
+ * @method        bool             isCurrentMonth()                                                                   Checks if the instance is in the same month as the current moment.
+ * @method        bool             isNextMonth()                                                                      Checks if the instance is in the same month as the current moment next month.
+ * @method        bool             isLastMonth()                                                                      Checks if the instance is in the same month as the current moment last month.
+ * @method        bool             isCurrentQuarter()                                                                 Checks if the instance is in the same quarter as the current moment.
+ * @method        bool             isNextQuarter()                                                                    Checks if the instance is in the same quarter as the current moment next quarter.
+ * @method        bool             isLastQuarter()                                                                    Checks if the instance is in the same quarter as the current moment last quarter.
+ * @method        bool             isSameDecade(Carbon|DateTimeInterface|string|null $date = null)                    Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentDecade()                                                                  Checks if the instance is in the same decade as the current moment.
+ * @method        bool             isNextDecade()                                                                     Checks if the instance is in the same decade as the current moment next decade.
+ * @method        bool             isLastDecade()                                                                     Checks if the instance is in the same decade as the current moment last decade.
+ * @method        bool             isSameCentury(Carbon|DateTimeInterface|string|null $date = null)                   Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentCentury()                                                                 Checks if the instance is in the same century as the current moment.
+ * @method        bool             isNextCentury()                                                                    Checks if the instance is in the same century as the current moment next century.
+ * @method        bool             isLastCentury()                                                                    Checks if the instance is in the same century as the current moment last century.
+ * @method        bool             isSameMillennium(Carbon|DateTimeInterface|string|null $date = null)                Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
+ * @method        bool             isCurrentMillennium()                                                              Checks if the instance is in the same millennium as the current moment.
+ * @method        bool             isNextMillennium()                                                                 Checks if the instance is in the same millennium as the current moment next millennium.
+ * @method        bool             isLastMillennium()                                                                 Checks if the instance is in the same millennium as the current moment last millennium.
+ * @method        CarbonInterface  years(int $value)                                                                  Set current instance year to the given value.
+ * @method        CarbonInterface  year(int $value)                                                                   Set current instance year to the given value.
+ * @method        CarbonInterface  setYears(int $value)                                                               Set current instance year to the given value.
+ * @method        CarbonInterface  setYear(int $value)                                                                Set current instance year to the given value.
+ * @method        CarbonInterface  months(int $value)                                                                 Set current instance month to the given value.
+ * @method        CarbonInterface  month(int $value)                                                                  Set current instance month to the given value.
+ * @method        CarbonInterface  setMonths(int $value)                                                              Set current instance month to the given value.
+ * @method        CarbonInterface  setMonth(int $value)                                                               Set current instance month to the given value.
+ * @method        CarbonInterface  days(int $value)                                                                   Set current instance day to the given value.
+ * @method        CarbonInterface  day(int $value)                                                                    Set current instance day to the given value.
+ * @method        CarbonInterface  setDays(int $value)                                                                Set current instance day to the given value.
+ * @method        CarbonInterface  setDay(int $value)                                                                 Set current instance day to the given value.
+ * @method        CarbonInterface  hours(int $value)                                                                  Set current instance hour to the given value.
+ * @method        CarbonInterface  hour(int $value)                                                                   Set current instance hour to the given value.
+ * @method        CarbonInterface  setHours(int $value)                                                               Set current instance hour to the given value.
+ * @method        CarbonInterface  setHour(int $value)                                                                Set current instance hour to the given value.
+ * @method        CarbonInterface  minutes(int $value)                                                                Set current instance minute to the given value.
+ * @method        CarbonInterface  minute(int $value)                                                                 Set current instance minute to the given value.
+ * @method        CarbonInterface  setMinutes(int $value)                                                             Set current instance minute to the given value.
+ * @method        CarbonInterface  setMinute(int $value)                                                              Set current instance minute to the given value.
+ * @method        CarbonInterface  seconds(int $value)                                                                Set current instance second to the given value.
+ * @method        CarbonInterface  second(int $value)                                                                 Set current instance second to the given value.
+ * @method        CarbonInterface  setSeconds(int $value)                                                             Set current instance second to the given value.
+ * @method        CarbonInterface  setSecond(int $value)                                                              Set current instance second to the given value.
+ * @method        CarbonInterface  millis(int $value)                                                                 Set current instance millisecond to the given value.
+ * @method        CarbonInterface  milli(int $value)                                                                  Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMillis(int $value)                                                              Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMilli(int $value)                                                               Set current instance millisecond to the given value.
+ * @method        CarbonInterface  milliseconds(int $value)                                                           Set current instance millisecond to the given value.
+ * @method        CarbonInterface  millisecond(int $value)                                                            Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMilliseconds(int $value)                                                        Set current instance millisecond to the given value.
+ * @method        CarbonInterface  setMillisecond(int $value)                                                         Set current instance millisecond to the given value.
+ * @method        CarbonInterface  micros(int $value)                                                                 Set current instance microsecond to the given value.
+ * @method        CarbonInterface  micro(int $value)                                                                  Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicros(int $value)                                                              Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicro(int $value)                                                               Set current instance microsecond to the given value.
+ * @method        CarbonInterface  microseconds(int $value)                                                           Set current instance microsecond to the given value.
+ * @method        CarbonInterface  microsecond(int $value)                                                            Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicroseconds(int $value)                                                        Set current instance microsecond to the given value.
+ * @method        CarbonInterface  setMicrosecond(int $value)                                                         Set current instance microsecond to the given value.
+ * @method        CarbonInterface  addYears(int $value = 1)                                                           Add years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addYear()                                                                          Add one year to the instance (using date interval).
+ * @method        CarbonInterface  subYears(int $value = 1)                                                           Sub years (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subYear()                                                                          Sub one year to the instance (using date interval).
+ * @method        CarbonInterface  addYearsWithOverflow(int $value = 1)                                               Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addYearWithOverflow()                                                              Add one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subYearsWithOverflow(int $value = 1)                                               Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subYearWithOverflow()                                                              Sub one year to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addYearsWithoutOverflow(int $value = 1)                                            Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearWithoutOverflow()                                                           Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsWithoutOverflow(int $value = 1)                                            Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearWithoutOverflow()                                                           Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearsWithNoOverflow(int $value = 1)                                             Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearWithNoOverflow()                                                            Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsWithNoOverflow(int $value = 1)                                             Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearWithNoOverflow()                                                            Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearsNoOverflow(int $value = 1)                                                 Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addYearNoOverflow()                                                                Add one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearsNoOverflow(int $value = 1)                                                 Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subYearNoOverflow()                                                                Sub one year to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonths(int $value = 1)                                                          Add months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMonth()                                                                         Add one month to the instance (using date interval).
+ * @method        CarbonInterface  subMonths(int $value = 1)                                                          Sub months (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMonth()                                                                         Sub one month to the instance (using date interval).
+ * @method        CarbonInterface  addMonthsWithOverflow(int $value = 1)                                              Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMonthWithOverflow()                                                             Add one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMonthsWithOverflow(int $value = 1)                                              Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMonthWithOverflow()                                                             Sub one month to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMonthsWithoutOverflow(int $value = 1)                                           Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthWithoutOverflow()                                                          Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsWithoutOverflow(int $value = 1)                                           Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthWithoutOverflow()                                                          Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthsWithNoOverflow(int $value = 1)                                            Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthWithNoOverflow()                                                           Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsWithNoOverflow(int $value = 1)                                            Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthWithNoOverflow()                                                           Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthsNoOverflow(int $value = 1)                                                Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMonthNoOverflow()                                                               Add one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthsNoOverflow(int $value = 1)                                                Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMonthNoOverflow()                                                               Sub one month to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDays(int $value = 1)                                                            Add days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addDay()                                                                           Add one day to the instance (using date interval).
+ * @method        CarbonInterface  subDays(int $value = 1)                                                            Sub days (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subDay()                                                                           Sub one day to the instance (using date interval).
+ * @method        CarbonInterface  addHours(int $value = 1)                                                           Add hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addHour()                                                                          Add one hour to the instance (using date interval).
+ * @method        CarbonInterface  subHours(int $value = 1)                                                           Sub hours (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subHour()                                                                          Sub one hour to the instance (using date interval).
+ * @method        CarbonInterface  addMinutes(int $value = 1)                                                         Add minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMinute()                                                                        Add one minute to the instance (using date interval).
+ * @method        CarbonInterface  subMinutes(int $value = 1)                                                         Sub minutes (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMinute()                                                                        Sub one minute to the instance (using date interval).
+ * @method        CarbonInterface  addSeconds(int $value = 1)                                                         Add seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addSecond()                                                                        Add one second to the instance (using date interval).
+ * @method        CarbonInterface  subSeconds(int $value = 1)                                                         Sub seconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subSecond()                                                                        Sub one second to the instance (using date interval).
+ * @method        CarbonInterface  addMillis(int $value = 1)                                                          Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMilli()                                                                         Add one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  subMillis(int $value = 1)                                                          Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMilli()                                                                         Sub one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  addMilliseconds(int $value = 1)                                                    Add milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMillisecond()                                                                   Add one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  subMilliseconds(int $value = 1)                                                    Sub milliseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMillisecond()                                                                   Sub one millisecond to the instance (using date interval).
+ * @method        CarbonInterface  addMicros(int $value = 1)                                                          Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMicro()                                                                         Add one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  subMicros(int $value = 1)                                                          Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMicro()                                                                         Sub one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  addMicroseconds(int $value = 1)                                                    Add microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMicrosecond()                                                                   Add one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  subMicroseconds(int $value = 1)                                                    Sub microseconds (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMicrosecond()                                                                   Sub one microsecond to the instance (using date interval).
+ * @method        CarbonInterface  addMillennia(int $value = 1)                                                       Add millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addMillennium()                                                                    Add one millennium to the instance (using date interval).
+ * @method        CarbonInterface  subMillennia(int $value = 1)                                                       Sub millennia (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subMillennium()                                                                    Sub one millennium to the instance (using date interval).
+ * @method        CarbonInterface  addMillenniaWithOverflow(int $value = 1)                                           Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMillenniumWithOverflow()                                                        Add one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMillenniaWithOverflow(int $value = 1)                                           Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subMillenniumWithOverflow()                                                        Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addMillenniaWithoutOverflow(int $value = 1)                                        Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumWithoutOverflow()                                                     Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaWithoutOverflow(int $value = 1)                                        Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumWithoutOverflow()                                                     Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniaWithNoOverflow(int $value = 1)                                         Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumWithNoOverflow()                                                      Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaWithNoOverflow(int $value = 1)                                         Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumWithNoOverflow()                                                      Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniaNoOverflow(int $value = 1)                                             Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addMillenniumNoOverflow()                                                          Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniaNoOverflow(int $value = 1)                                             Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subMillenniumNoOverflow()                                                          Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturies(int $value = 1)                                                       Add centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addCentury()                                                                       Add one century to the instance (using date interval).
+ * @method        CarbonInterface  subCenturies(int $value = 1)                                                       Sub centuries (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subCentury()                                                                       Sub one century to the instance (using date interval).
+ * @method        CarbonInterface  addCenturiesWithOverflow(int $value = 1)                                           Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addCenturyWithOverflow()                                                           Add one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subCenturiesWithOverflow(int $value = 1)                                           Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subCenturyWithOverflow()                                                           Sub one century to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addCenturiesWithoutOverflow(int $value = 1)                                        Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyWithoutOverflow()                                                        Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesWithoutOverflow(int $value = 1)                                        Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyWithoutOverflow()                                                        Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturiesWithNoOverflow(int $value = 1)                                         Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyWithNoOverflow()                                                         Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesWithNoOverflow(int $value = 1)                                         Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyWithNoOverflow()                                                         Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturiesNoOverflow(int $value = 1)                                             Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addCenturyNoOverflow()                                                             Add one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturiesNoOverflow(int $value = 1)                                             Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subCenturyNoOverflow()                                                             Sub one century to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecades(int $value = 1)                                                         Add decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addDecade()                                                                        Add one decade to the instance (using date interval).
+ * @method        CarbonInterface  subDecades(int $value = 1)                                                         Sub decades (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subDecade()                                                                        Sub one decade to the instance (using date interval).
+ * @method        CarbonInterface  addDecadesWithOverflow(int $value = 1)                                             Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addDecadeWithOverflow()                                                            Add one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subDecadesWithOverflow(int $value = 1)                                             Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subDecadeWithOverflow()                                                            Sub one decade to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addDecadesWithoutOverflow(int $value = 1)                                          Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeWithoutOverflow()                                                         Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesWithoutOverflow(int $value = 1)                                          Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeWithoutOverflow()                                                         Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadesWithNoOverflow(int $value = 1)                                           Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeWithNoOverflow()                                                          Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesWithNoOverflow(int $value = 1)                                           Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeWithNoOverflow()                                                          Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadesNoOverflow(int $value = 1)                                               Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addDecadeNoOverflow()                                                              Add one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadesNoOverflow(int $value = 1)                                               Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subDecadeNoOverflow()                                                              Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarters(int $value = 1)                                                        Add quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addQuarter()                                                                       Add one quarter to the instance (using date interval).
+ * @method        CarbonInterface  subQuarters(int $value = 1)                                                        Sub quarters (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subQuarter()                                                                       Sub one quarter to the instance (using date interval).
+ * @method        CarbonInterface  addQuartersWithOverflow(int $value = 1)                                            Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addQuarterWithOverflow()                                                           Add one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subQuartersWithOverflow(int $value = 1)                                            Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  subQuarterWithOverflow()                                                           Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
+ * @method        CarbonInterface  addQuartersWithoutOverflow(int $value = 1)                                         Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterWithoutOverflow()                                                        Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersWithoutOverflow(int $value = 1)                                         Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterWithoutOverflow()                                                        Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuartersWithNoOverflow(int $value = 1)                                          Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterWithNoOverflow()                                                         Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersWithNoOverflow(int $value = 1)                                          Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterWithNoOverflow()                                                         Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuartersNoOverflow(int $value = 1)                                              Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addQuarterNoOverflow()                                                             Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuartersNoOverflow(int $value = 1)                                              Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  subQuarterNoOverflow()                                                             Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
+ * @method        CarbonInterface  addWeeks(int $value = 1)                                                           Add weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addWeek()                                                                          Add one week to the instance (using date interval).
+ * @method        CarbonInterface  subWeeks(int $value = 1)                                                           Sub weeks (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subWeek()                                                                          Sub one week to the instance (using date interval).
+ * @method        CarbonInterface  addWeekdays(int $value = 1)                                                        Add weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  addWeekday()                                                                       Add one weekday to the instance (using date interval).
+ * @method        CarbonInterface  subWeekdays(int $value = 1)                                                        Sub weekdays (the $value count passed in) to the instance (using date interval).
+ * @method        CarbonInterface  subWeekday()                                                                       Sub one weekday to the instance (using date interval).
+ * @method        CarbonInterface  addRealMicros(int $value = 1)                                                      Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMicro()                                                                     Add one microsecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicros(int $value = 1)                                                      Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicro()                                                                     Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod     microsUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonInterface  addRealMicroseconds(int $value = 1)                                                Add microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMicrosecond()                                                               Add one microsecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicroseconds(int $value = 1)                                                Sub microseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMicrosecond()                                                               Sub one microsecond to the instance (using timestamp).
+ * @method        CarbonPeriod     microsecondsUntil($endDate = null, int $factor = 1)                                Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
+ * @method        CarbonInterface  addRealMillis(int $value = 1)                                                      Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMilli()                                                                     Add one millisecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillis(int $value = 1)                                                      Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMilli()                                                                     Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod     millisUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonInterface  addRealMilliseconds(int $value = 1)                                                Add milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMillisecond()                                                               Add one millisecond to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMilliseconds(int $value = 1)                                                Sub milliseconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillisecond()                                                               Sub one millisecond to the instance (using timestamp).
+ * @method        CarbonPeriod     millisecondsUntil($endDate = null, int $factor = 1)                                Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
+ * @method        CarbonInterface  addRealSeconds(int $value = 1)                                                     Add seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealSecond()                                                                    Add one second to the instance (using timestamp).
+ * @method        CarbonInterface  subRealSeconds(int $value = 1)                                                     Sub seconds (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealSecond()                                                                    Sub one second to the instance (using timestamp).
+ * @method        CarbonPeriod     secondsUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
+ * @method        CarbonInterface  addRealMinutes(int $value = 1)                                                     Add minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMinute()                                                                    Add one minute to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMinutes(int $value = 1)                                                     Sub minutes (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMinute()                                                                    Sub one minute to the instance (using timestamp).
+ * @method        CarbonPeriod     minutesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
+ * @method        CarbonInterface  addRealHours(int $value = 1)                                                       Add hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealHour()                                                                      Add one hour to the instance (using timestamp).
+ * @method        CarbonInterface  subRealHours(int $value = 1)                                                       Sub hours (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealHour()                                                                      Sub one hour to the instance (using timestamp).
+ * @method        CarbonPeriod     hoursUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
+ * @method        CarbonInterface  addRealDays(int $value = 1)                                                        Add days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealDay()                                                                       Add one day to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDays(int $value = 1)                                                        Sub days (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDay()                                                                       Sub one day to the instance (using timestamp).
+ * @method        CarbonPeriod     daysUntil($endDate = null, int $factor = 1)                                        Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
+ * @method        CarbonInterface  addRealWeeks(int $value = 1)                                                       Add weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealWeek()                                                                      Add one week to the instance (using timestamp).
+ * @method        CarbonInterface  subRealWeeks(int $value = 1)                                                       Sub weeks (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealWeek()                                                                      Sub one week to the instance (using timestamp).
+ * @method        CarbonPeriod     weeksUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
+ * @method        CarbonInterface  addRealMonths(int $value = 1)                                                      Add months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMonth()                                                                     Add one month to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMonths(int $value = 1)                                                      Sub months (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMonth()                                                                     Sub one month to the instance (using timestamp).
+ * @method        CarbonPeriod     monthsUntil($endDate = null, int $factor = 1)                                      Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
+ * @method        CarbonInterface  addRealQuarters(int $value = 1)                                                    Add quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealQuarter()                                                                   Add one quarter to the instance (using timestamp).
+ * @method        CarbonInterface  subRealQuarters(int $value = 1)                                                    Sub quarters (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealQuarter()                                                                   Sub one quarter to the instance (using timestamp).
+ * @method        CarbonPeriod     quartersUntil($endDate = null, int $factor = 1)                                    Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
+ * @method        CarbonInterface  addRealYears(int $value = 1)                                                       Add years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealYear()                                                                      Add one year to the instance (using timestamp).
+ * @method        CarbonInterface  subRealYears(int $value = 1)                                                       Sub years (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealYear()                                                                      Sub one year to the instance (using timestamp).
+ * @method        CarbonPeriod     yearsUntil($endDate = null, int $factor = 1)                                       Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
+ * @method        CarbonInterface  addRealDecades(int $value = 1)                                                     Add decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealDecade()                                                                    Add one decade to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDecades(int $value = 1)                                                     Sub decades (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealDecade()                                                                    Sub one decade to the instance (using timestamp).
+ * @method        CarbonPeriod     decadesUntil($endDate = null, int $factor = 1)                                     Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
+ * @method        CarbonInterface  addRealCenturies(int $value = 1)                                                   Add centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealCentury()                                                                   Add one century to the instance (using timestamp).
+ * @method        CarbonInterface  subRealCenturies(int $value = 1)                                                   Sub centuries (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealCentury()                                                                   Sub one century to the instance (using timestamp).
+ * @method        CarbonPeriod     centuriesUntil($endDate = null, int $factor = 1)                                   Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
+ * @method        CarbonInterface  addRealMillennia(int $value = 1)                                                   Add millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  addRealMillennium()                                                                Add one millennium to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillennia(int $value = 1)                                                   Sub millennia (the $value count passed in) to the instance (using timestamp).
+ * @method        CarbonInterface  subRealMillennium()                                                                Sub one millennium to the instance (using timestamp).
+ * @method        CarbonPeriod     millenniaUntil($endDate = null, int $factor = 1)                                   Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
+ * @method        CarbonInterface  roundYear(float $precision = 1, string $function = "round")                        Round the current instance year with given precision using the given function.
+ * @method        CarbonInterface  roundYears(float $precision = 1, string $function = "round")                       Round the current instance year with given precision using the given function.
+ * @method        CarbonInterface  floorYear(float $precision = 1)                                                    Truncate the current instance year with given precision.
+ * @method        CarbonInterface  floorYears(float $precision = 1)                                                   Truncate the current instance year with given precision.
+ * @method        CarbonInterface  ceilYear(float $precision = 1)                                                     Ceil the current instance year with given precision.
+ * @method        CarbonInterface  ceilYears(float $precision = 1)                                                    Ceil the current instance year with given precision.
+ * @method        CarbonInterface  roundMonth(float $precision = 1, string $function = "round")                       Round the current instance month with given precision using the given function.
+ * @method        CarbonInterface  roundMonths(float $precision = 1, string $function = "round")                      Round the current instance month with given precision using the given function.
+ * @method        CarbonInterface  floorMonth(float $precision = 1)                                                   Truncate the current instance month with given precision.
+ * @method        CarbonInterface  floorMonths(float $precision = 1)                                                  Truncate the current instance month with given precision.
+ * @method        CarbonInterface  ceilMonth(float $precision = 1)                                                    Ceil the current instance month with given precision.
+ * @method        CarbonInterface  ceilMonths(float $precision = 1)                                                   Ceil the current instance month with given precision.
+ * @method        CarbonInterface  roundDay(float $precision = 1, string $function = "round")                         Round the current instance day with given precision using the given function.
+ * @method        CarbonInterface  roundDays(float $precision = 1, string $function = "round")                        Round the current instance day with given precision using the given function.
+ * @method        CarbonInterface  floorDay(float $precision = 1)                                                     Truncate the current instance day with given precision.
+ * @method        CarbonInterface  floorDays(float $precision = 1)                                                    Truncate the current instance day with given precision.
+ * @method        CarbonInterface  ceilDay(float $precision = 1)                                                      Ceil the current instance day with given precision.
+ * @method        CarbonInterface  ceilDays(float $precision = 1)                                                     Ceil the current instance day with given precision.
+ * @method        CarbonInterface  roundHour(float $precision = 1, string $function = "round")                        Round the current instance hour with given precision using the given function.
+ * @method        CarbonInterface  roundHours(float $precision = 1, string $function = "round")                       Round the current instance hour with given precision using the given function.
+ * @method        CarbonInterface  floorHour(float $precision = 1)                                                    Truncate the current instance hour with given precision.
+ * @method        CarbonInterface  floorHours(float $precision = 1)                                                   Truncate the current instance hour with given precision.
+ * @method        CarbonInterface  ceilHour(float $precision = 1)                                                     Ceil the current instance hour with given precision.
+ * @method        CarbonInterface  ceilHours(float $precision = 1)                                                    Ceil the current instance hour with given precision.
+ * @method        CarbonInterface  roundMinute(float $precision = 1, string $function = "round")                      Round the current instance minute with given precision using the given function.
+ * @method        CarbonInterface  roundMinutes(float $precision = 1, string $function = "round")                     Round the current instance minute with given precision using the given function.
+ * @method        CarbonInterface  floorMinute(float $precision = 1)                                                  Truncate the current instance minute with given precision.
+ * @method        CarbonInterface  floorMinutes(float $precision = 1)                                                 Truncate the current instance minute with given precision.
+ * @method        CarbonInterface  ceilMinute(float $precision = 1)                                                   Ceil the current instance minute with given precision.
+ * @method        CarbonInterface  ceilMinutes(float $precision = 1)                                                  Ceil the current instance minute with given precision.
+ * @method        CarbonInterface  roundSecond(float $precision = 1, string $function = "round")                      Round the current instance second with given precision using the given function.
+ * @method        CarbonInterface  roundSeconds(float $precision = 1, string $function = "round")                     Round the current instance second with given precision using the given function.
+ * @method        CarbonInterface  floorSecond(float $precision = 1)                                                  Truncate the current instance second with given precision.
+ * @method        CarbonInterface  floorSeconds(float $precision = 1)                                                 Truncate the current instance second with given precision.
+ * @method        CarbonInterface  ceilSecond(float $precision = 1)                                                   Ceil the current instance second with given precision.
+ * @method        CarbonInterface  ceilSeconds(float $precision = 1)                                                  Ceil the current instance second with given precision.
+ * @method        CarbonInterface  roundMillennium(float $precision = 1, string $function = "round")                  Round the current instance millennium with given precision using the given function.
+ * @method        CarbonInterface  roundMillennia(float $precision = 1, string $function = "round")                   Round the current instance millennium with given precision using the given function.
+ * @method        CarbonInterface  floorMillennium(float $precision = 1)                                              Truncate the current instance millennium with given precision.
+ * @method        CarbonInterface  floorMillennia(float $precision = 1)                                               Truncate the current instance millennium with given precision.
+ * @method        CarbonInterface  ceilMillennium(float $precision = 1)                                               Ceil the current instance millennium with given precision.
+ * @method        CarbonInterface  ceilMillennia(float $precision = 1)                                                Ceil the current instance millennium with given precision.
+ * @method        CarbonInterface  roundCentury(float $precision = 1, string $function = "round")                     Round the current instance century with given precision using the given function.
+ * @method        CarbonInterface  roundCenturies(float $precision = 1, string $function = "round")                   Round the current instance century with given precision using the given function.
+ * @method        CarbonInterface  floorCentury(float $precision = 1)                                                 Truncate the current instance century with given precision.
+ * @method        CarbonInterface  floorCenturies(float $precision = 1)                                               Truncate the current instance century with given precision.
+ * @method        CarbonInterface  ceilCentury(float $precision = 1)                                                  Ceil the current instance century with given precision.
+ * @method        CarbonInterface  ceilCenturies(float $precision = 1)                                                Ceil the current instance century with given precision.
+ * @method        CarbonInterface  roundDecade(float $precision = 1, string $function = "round")                      Round the current instance decade with given precision using the given function.
+ * @method        CarbonInterface  roundDecades(float $precision = 1, string $function = "round")                     Round the current instance decade with given precision using the given function.
+ * @method        CarbonInterface  floorDecade(float $precision = 1)                                                  Truncate the current instance decade with given precision.
+ * @method        CarbonInterface  floorDecades(float $precision = 1)                                                 Truncate the current instance decade with given precision.
+ * @method        CarbonInterface  ceilDecade(float $precision = 1)                                                   Ceil the current instance decade with given precision.
+ * @method        CarbonInterface  ceilDecades(float $precision = 1)                                                  Ceil the current instance decade with given precision.
+ * @method        CarbonInterface  roundQuarter(float $precision = 1, string $function = "round")                     Round the current instance quarter with given precision using the given function.
+ * @method        CarbonInterface  roundQuarters(float $precision = 1, string $function = "round")                    Round the current instance quarter with given precision using the given function.
+ * @method        CarbonInterface  floorQuarter(float $precision = 1)                                                 Truncate the current instance quarter with given precision.
+ * @method        CarbonInterface  floorQuarters(float $precision = 1)                                                Truncate the current instance quarter with given precision.
+ * @method        CarbonInterface  ceilQuarter(float $precision = 1)                                                  Ceil the current instance quarter with given precision.
+ * @method        CarbonInterface  ceilQuarters(float $precision = 1)                                                 Ceil the current instance quarter with given precision.
+ * @method        CarbonInterface  roundMillisecond(float $precision = 1, string $function = "round")                 Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonInterface  roundMilliseconds(float $precision = 1, string $function = "round")                Round the current instance millisecond with given precision using the given function.
+ * @method        CarbonInterface  floorMillisecond(float $precision = 1)                                             Truncate the current instance millisecond with given precision.
+ * @method        CarbonInterface  floorMilliseconds(float $precision = 1)                                            Truncate the current instance millisecond with given precision.
+ * @method        CarbonInterface  ceilMillisecond(float $precision = 1)                                              Ceil the current instance millisecond with given precision.
+ * @method        CarbonInterface  ceilMilliseconds(float $precision = 1)                                             Ceil the current instance millisecond with given precision.
+ * @method        CarbonInterface  roundMicrosecond(float $precision = 1, string $function = "round")                 Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonInterface  roundMicroseconds(float $precision = 1, string $function = "round")                Round the current instance microsecond with given precision using the given function.
+ * @method        CarbonInterface  floorMicrosecond(float $precision = 1)                                             Truncate the current instance microsecond with given precision.
+ * @method        CarbonInterface  floorMicroseconds(float $precision = 1)                                            Truncate the current instance microsecond with given precision.
+ * @method        CarbonInterface  ceilMicrosecond(float $precision = 1)                                              Ceil the current instance microsecond with given precision.
+ * @method        CarbonInterface  ceilMicroseconds(float $precision = 1)                                             Ceil the current instance microsecond with given precision.
+ * @method        string           shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)        Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1)         Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)        Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1)         Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)   Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1)    Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ * @method        string           longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1)  Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
+ *
+ * </autodoc>
+ */
+trait Date
+{
+    use Boundaries;
+    use Comparison;
+    use Converter;
+    use Creator;
+    use Difference;
+    use Macro;
+    use Modifiers;
+    use Mutability;
+    use ObjectInitialisation;
+    use Options;
+    use Rounding;
+    use Serialization;
+    use Test;
+    use Timestamp;
+    use Units;
+    use Week;
+
+    /**
+     * Names of days of the week.
+     *
+     * @var array
+     */
+    protected static $days = [
+        // @call isDayOfWeek
+        CarbonInterface::SUNDAY => 'Sunday',
+        // @call isDayOfWeek
+        CarbonInterface::MONDAY => 'Monday',
+        // @call isDayOfWeek
+        CarbonInterface::TUESDAY => 'Tuesday',
+        // @call isDayOfWeek
+        CarbonInterface::WEDNESDAY => 'Wednesday',
+        // @call isDayOfWeek
+        CarbonInterface::THURSDAY => 'Thursday',
+        // @call isDayOfWeek
+        CarbonInterface::FRIDAY => 'Friday',
+        // @call isDayOfWeek
+        CarbonInterface::SATURDAY => 'Saturday',
+    ];
+
+    /**
+     * Will UTF8 encoding be used to print localized date/time ?
+     *
+     * @var bool
+     */
+    protected static $utf8 = false;
+
+    /**
+     * List of unit and magic methods associated as doc-comments.
+     *
+     * @var array
+     */
+    protected static $units = [
+        // @call setUnit
+        // @call addUnit
+        'year',
+        // @call setUnit
+        // @call addUnit
+        'month',
+        // @call setUnit
+        // @call addUnit
+        'day',
+        // @call setUnit
+        // @call addUnit
+        'hour',
+        // @call setUnit
+        // @call addUnit
+        'minute',
+        // @call setUnit
+        // @call addUnit
+        'second',
+        // @call setUnit
+        // @call addUnit
+        'milli',
+        // @call setUnit
+        // @call addUnit
+        'millisecond',
+        // @call setUnit
+        // @call addUnit
+        'micro',
+        // @call setUnit
+        // @call addUnit
+        'microsecond',
+    ];
+
+    /**
+     * Creates a DateTimeZone from a string, DateTimeZone or integer offset.
+     *
+     * @param DateTimeZone|string|int|null $object     original value to get CarbonTimeZone from it.
+     * @param DateTimeZone|string|int|null $objectDump dump of the object for error messages.
+     *
+     * @throws InvalidTimeZoneException
+     *
+     * @return CarbonTimeZone|false
+     */
+    protected static function safeCreateDateTimeZone($object, $objectDump = null)
+    {
+        return CarbonTimeZone::instance($object, $objectDump);
+    }
+
+    /**
+     * Get the TimeZone associated with the Carbon instance (as CarbonTimeZone).
+     *
+     * @return CarbonTimeZone
+     *
+     * @link https://php.net/manual/en/datetime.gettimezone.php
+     */
+    #[ReturnTypeWillChange]
+    public function getTimezone()
+    {
+        return CarbonTimeZone::instance(parent::getTimezone());
+    }
+
+    /**
+     * List of minimum and maximums for each unit.
+     *
+     * @return array
+     */
+    protected static function getRangesByUnit()
+    {
+        return [
+            // @call roundUnit
+            'year' => [1, 9999],
+            // @call roundUnit
+            'month' => [1, static::MONTHS_PER_YEAR],
+            // @call roundUnit
+            'day' => [1, 31],
+            // @call roundUnit
+            'hour' => [0, static::HOURS_PER_DAY - 1],
+            // @call roundUnit
+            'minute' => [0, static::MINUTES_PER_HOUR - 1],
+            // @call roundUnit
+            'second' => [0, static::SECONDS_PER_MINUTE - 1],
+        ];
+    }
+
+    /**
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function copy()
+    {
+        return clone $this;
+    }
+
+    /**
+     * @alias copy
+     *
+     * Get a copy of the instance.
+     *
+     * @return static
+     */
+    public function clone()
+    {
+        return clone $this;
+    }
+
+    /**
+     * Clone the current instance if it's mutable.
+     *
+     * This method is convenient to ensure you don't mutate the initial object
+     * but avoid to make a useless copy of it if it's already immutable.
+     *
+     * @return static
+     */
+    public function avoidMutation(): self
+    {
+        if ($this instanceof DateTimeImmutable) {
+            return $this;
+        }
+
+        return clone $this;
+    }
+
+    /**
+     * Returns a present instance in the same timezone.
+     *
+     * @return static
+     */
+    public function nowWithSameTz()
+    {
+        return static::now($this->getTimezone());
+    }
+
+    /**
+     * Throws an exception if the given object is not a DateTime and does not implement DateTimeInterface.
+     *
+     * @param mixed        $date
+     * @param string|array $other
+     *
+     * @throws InvalidTypeException
+     */
+    protected static function expectDateTime($date, $other = [])
+    {
+        $message = 'Expected ';
+        foreach ((array) $other as $expect) {
+            $message .= "$expect, ";
+        }
+
+        if (!$date instanceof DateTime && !$date instanceof DateTimeInterface) {
+            throw new InvalidTypeException(
+                $message.'DateTime or DateTimeInterface, '.
+                (\is_object($date) ? \get_class($date) : \gettype($date)).' given'
+            );
+        }
+    }
+
+    /**
+     * Return the Carbon instance passed through, a now instance in the same timezone
+     * if null given or parse the input if string given.
+     *
+     * @param Carbon|DateTimeInterface|string|null $date
+     *
+     * @return static
+     */
+    protected function resolveCarbon($date = null)
+    {
+        if (!$date) {
+            return $this->nowWithSameTz();
+        }
+
+        if (\is_string($date)) {
+            return static::parse($date, $this->getTimezone());
+        }
+
+        static::expectDateTime($date, ['null', 'string']);
+
+        return $date instanceof self ? $date : static::instance($date);
+    }
+
+    /**
+     * Return the Carbon instance passed through, a now instance in UTC
+     * if null given or parse the input if string given (using current timezone
+     * then switching to UTC).
+     *
+     * @param Carbon|DateTimeInterface|string|null $date
+     *
+     * @return static
+     */
+    protected function resolveUTC($date = null): self
+    {
+        if (!$date) {
+            return static::now('UTC');
+        }
+
+        if (\is_string($date)) {
+            return static::parse($date, $this->getTimezone())->utc();
+        }
+
+        static::expectDateTime($date, ['null', 'string']);
+
+        return $date instanceof self ? $date : static::instance($date)->utc();
+    }
+
+    /**
+     * Return the Carbon instance passed through, a now instance in the same timezone
+     * if null given or parse the input if string given.
+     *
+     * @param Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|DateTimeInterface|string|null $date
+     *
+     * @return static
+     */
+    public function carbonize($date = null)
+    {
+        if ($date instanceof DateInterval) {
+            return $this->avoidMutation()->add($date);
+        }
+
+        if ($date instanceof DatePeriod || $date instanceof CarbonPeriod) {
+            $date = $date->getStartDate();
+        }
+
+        return $this->resolveCarbon($date);
+    }
+
+    ///////////////////////////////////////////////////////////////////
+    ///////////////////////// GETTERS AND SETTERS /////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    /**
+     * Get a part of the Carbon object
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return string|int|bool|DateTimeZone|null
+     */
+    public function __get($name)
+    {
+        return $this->get($name);
+    }
+
+    /**
+     * Get a part of the Carbon object
+     *
+     * @param string $name
+     *
+     * @throws UnknownGetterException
+     *
+     * @return string|int|bool|DateTimeZone|null
+     */
+    public function get($name)
+    {
+        static $formats = [
+            // @property int
+            'year' => 'Y',
+            // @property int
+            'yearIso' => 'o',
+            // @property int
+            // @call isSameUnit
+            'month' => 'n',
+            // @property int
+            'day' => 'j',
+            // @property int
+            'hour' => 'G',
+            // @property int
+            'minute' => 'i',
+            // @property int
+            'second' => 's',
+            // @property int
+            'micro' => 'u',
+            // @property int
+            'microsecond' => 'u',
+            // @property-read int 0 (for Sunday) through 6 (for Saturday)
+            'dayOfWeek' => 'w',
+            // @property-read int 1 (for Monday) through 7 (for Sunday)
+            'dayOfWeekIso' => 'N',
+            // @property-read int ISO-8601 week number of year, weeks starting on Monday
+            'weekOfYear' => 'W',
+            // @property-read int number of days in the given month
+            'daysInMonth' => 't',
+            // @property int|float|string seconds since the Unix Epoch
+            'timestamp' => 'U',
+            // @property-read string "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
+            'latinMeridiem' => 'a',
+            // @property-read string "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
+            'latinUpperMeridiem' => 'A',
+            // @property string the day of week in English
+            'englishDayOfWeek' => 'l',
+            // @property string the abbreviated day of week in English
+            'shortEnglishDayOfWeek' => 'D',
+            // @property string the month in English
+            'englishMonth' => 'F',
+            // @property string the abbreviated month in English
+            'shortEnglishMonth' => 'M',
+            // @property string the day of week in current locale LC_TIME
+            'localeDayOfWeek' => '%A',
+            // @property string the abbreviated day of week in current locale LC_TIME
+            'shortLocaleDayOfWeek' => '%a',
+            // @property string the month in current locale LC_TIME
+            'localeMonth' => '%B',
+            // @property string the abbreviated month in current locale LC_TIME
+            'shortLocaleMonth' => '%b',
+            // @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
+            'timezoneAbbreviatedName' => 'T',
+            // @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
+            'tzAbbrName' => 'T',
+        ];
+
+        switch (true) {
+            case isset($formats[$name]):
+                $format = $formats[$name];
+                $method = str_starts_with($format, '%') ? 'formatLocalized' : 'rawFormat';
+                $value = $this->$method($format);
+
+                return is_numeric($value) ? (int) $value : $value;
+
+            // @property-read string long name of weekday translated according to Carbon locale, in english if no translation available for current language
+            case $name === 'dayName':
+                return $this->getTranslatedDayName();
+            // @property-read string short name of weekday translated according to Carbon locale, in english if no translation available for current language
+            case $name === 'shortDayName':
+                return $this->getTranslatedShortDayName();
+            // @property-read string very short name of weekday translated according to Carbon locale, in english if no translation available for current language
+            case $name === 'minDayName':
+                return $this->getTranslatedMinDayName();
+            // @property-read string long name of month translated according to Carbon locale, in english if no translation available for current language
+            case $name === 'monthName':
+                return $this->getTranslatedMonthName();
+            // @property-read string short name of month translated according to Carbon locale, in english if no translation available for current language
+            case $name === 'shortMonthName':
+                return $this->getTranslatedShortMonthName();
+            // @property-read string lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+            case $name === 'meridiem':
+                return $this->meridiem(true);
+            // @property-read string uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
+            case $name === 'upperMeridiem':
+                return $this->meridiem();
+            // @property-read int current hour from 1 to 24
+            case $name === 'noZeroHour':
+                return $this->hour ?: 24;
+            // @property int
+            case $name === 'milliseconds':
+                // @property int
+            case $name === 'millisecond':
+            // @property int
+            case $name === 'milli':
+                return (int) floor($this->rawFormat('u') / 1000);
+
+            // @property int 1 through 53
+            case $name === 'week':
+                return (int) $this->week();
+
+            // @property int 1 through 53
+            case $name === 'isoWeek':
+                return (int) $this->isoWeek();
+
+            // @property int year according to week format
+            case $name === 'weekYear':
+                return (int) $this->weekYear();
+
+            // @property int year according to ISO week format
+            case $name === 'isoWeekYear':
+                return (int) $this->isoWeekYear();
+
+            // @property-read int 51 through 53
+            case $name === 'weeksInYear':
+                return $this->weeksInYear();
+
+            // @property-read int 51 through 53
+            case $name === 'isoWeeksInYear':
+                return $this->isoWeeksInYear();
+
+            // @property-read int 1 through 5
+            case $name === 'weekOfMonth':
+                return (int) ceil($this->day / static::DAYS_PER_WEEK);
+
+            // @property-read int 1 through 5
+            case $name === 'weekNumberInMonth':
+                return (int) ceil(($this->day + $this->avoidMutation()->startOfMonth()->dayOfWeekIso - 1) / static::DAYS_PER_WEEK);
+
+            // @property-read int 0 through 6
+            case $name === 'firstWeekDay':
+                return $this->localTranslator ? ($this->getTranslationMessage('first_day_of_week') ?? 0) : static::getWeekStartsAt();
+
+            // @property-read int 0 through 6
+            case $name === 'lastWeekDay':
+                return $this->localTranslator ? (($this->getTranslationMessage('first_day_of_week') ?? 0) + static::DAYS_PER_WEEK - 1) % static::DAYS_PER_WEEK : static::getWeekEndsAt();
+
+            // @property int 1 through 366
+            case $name === 'dayOfYear':
+                return 1 + (int) ($this->rawFormat('z'));
+
+            // @property-read int 365 or 366
+            case $name === 'daysInYear':
+                return $this->isLeapYear() ? 366 : 365;
+
+            // @property int does a diffInYears() with default parameters
+            case $name === 'age':
+                return $this->diffInYears();
+
+            // @property-read int the quarter of this instance, 1 - 4
+            // @call isSameUnit
+            case $name === 'quarter':
+                return (int) ceil($this->month / static::MONTHS_PER_QUARTER);
+
+            // @property-read int the decade of this instance
+            // @call isSameUnit
+            case $name === 'decade':
+                return (int) ceil($this->year / static::YEARS_PER_DECADE);
+
+            // @property-read int the century of this instance
+            // @call isSameUnit
+            case $name === 'century':
+                $factor = 1;
+                $year = $this->year;
+                if ($year < 0) {
+                    $year = -$year;
+                    $factor = -1;
+                }
+
+                return (int) ($factor * ceil($year / static::YEARS_PER_CENTURY));
+
+            // @property-read int the millennium of this instance
+            // @call isSameUnit
+            case $name === 'millennium':
+                $factor = 1;
+                $year = $this->year;
+                if ($year < 0) {
+                    $year = -$year;
+                    $factor = -1;
+                }
+
+                return (int) ($factor * ceil($year / static::YEARS_PER_MILLENNIUM));
+
+            // @property int the timezone offset in seconds from UTC
+            case $name === 'offset':
+                return $this->getOffset();
+
+            // @property int the timezone offset in minutes from UTC
+            case $name === 'offsetMinutes':
+                return $this->getOffset() / static::SECONDS_PER_MINUTE;
+
+            // @property int the timezone offset in hours from UTC
+            case $name === 'offsetHours':
+                return $this->getOffset() / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR;
+
+            // @property-read bool daylight savings time indicator, true if DST, false otherwise
+            case $name === 'dst':
+                return $this->rawFormat('I') === '1';
+
+            // @property-read bool checks if the timezone is local, true if local, false otherwise
+            case $name === 'local':
+                return $this->getOffset() === $this->avoidMutation()->setTimezone(date_default_timezone_get())->getOffset();
+
+            // @property-read bool checks if the timezone is UTC, true if UTC, false otherwise
+            case $name === 'utc':
+                return $this->getOffset() === 0;
+
+            // @property CarbonTimeZone $timezone the current timezone
+            // @property CarbonTimeZone $tz alias of $timezone
+            case $name === 'timezone' || $name === 'tz':
+                return CarbonTimeZone::instance($this->getTimezone());
+
+            // @property-read string $timezoneName the current timezone name
+            // @property-read string $tzName alias of $timezoneName
+            case $name === 'timezoneName' || $name === 'tzName':
+                return $this->getTimezone()->getName();
+
+            // @property-read string locale of the current instance
+            case $name === 'locale':
+                return $this->getTranslatorLocale();
+
+            default:
+                $macro = $this->getLocalMacro('get'.ucfirst($name));
+
+                if ($macro) {
+                    return $this->executeCallableWithContext($macro);
+                }
+
+                throw new UnknownGetterException($name);
+        }
+    }
+
+    /**
+     * Check if an attribute exists on the object
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function __isset($name)
+    {
+        try {
+            $this->__get($name);
+        } catch (UnknownGetterException | ReflectionException $e) {
+            return false;
+        }
+
+        return true;
+    }
+
+    /**
+     * Set a part of the Carbon object
+     *
+     * @param string                  $name
+     * @param string|int|DateTimeZone $value
+     *
+     * @throws UnknownSetterException|ReflectionException
+     *
+     * @return void
+     */
+    public function __set($name, $value)
+    {
+        if ($this->constructedObjectId === spl_object_hash($this)) {
+            $this->set($name, $value);
+
+            return;
+        }
+
+        $this->$name = $value;
+    }
+
+    /**
+     * Set a part of the Carbon object
+     *
+     * @param string|array            $name
+     * @param string|int|DateTimeZone $value
+     *
+     * @throws ImmutableException|UnknownSetterException
+     *
+     * @return $this
+     */
+    public function set($name, $value = null)
+    {
+        if ($this->isImmutable()) {
+            throw new ImmutableException(sprintf('%s class', static::class));
+        }
+
+        if (\is_array($name)) {
+            foreach ($name as $key => $value) {
+                $this->set($key, $value);
+            }
+
+            return $this;
+        }
+
+        switch ($name) {
+            case 'milliseconds':
+            case 'millisecond':
+            case 'milli':
+            case 'microseconds':
+            case 'microsecond':
+            case 'micro':
+                if (str_starts_with($name, 'milli')) {
+                    $value *= 1000;
+                }
+
+                while ($value < 0) {
+                    $this->subSecond();
+                    $value += static::MICROSECONDS_PER_SECOND;
+                }
+
+                while ($value >= static::MICROSECONDS_PER_SECOND) {
+                    $this->addSecond();
+                    $value -= static::MICROSECONDS_PER_SECOND;
+                }
+
+                $this->modify($this->rawFormat('H:i:s.').str_pad((string) round($value), 6, '0', STR_PAD_LEFT));
+
+                break;
+
+            case 'year':
+            case 'month':
+            case 'day':
+            case 'hour':
+            case 'minute':
+            case 'second':
+                [$year, $month, $day, $hour, $minute, $second] = array_map('intval', explode('-', $this->rawFormat('Y-n-j-G-i-s')));
+                $$name = $value;
+                $this->setDateTime($year, $month, $day, $hour, $minute, $second);
+
+                break;
+
+            case 'week':
+                $this->week($value);
+
+                break;
+
+            case 'isoWeek':
+                $this->isoWeek($value);
+
+                break;
+
+            case 'weekYear':
+                $this->weekYear($value);
+
+                break;
+
+            case 'isoWeekYear':
+                $this->isoWeekYear($value);
+
+                break;
+
+            case 'dayOfYear':
+                $this->addDays($value - $this->dayOfYear);
+
+                break;
+
+            case 'timestamp':
+                $this->setTimestamp($value);
+
+                break;
+
+            case 'offset':
+                $this->setTimezone(static::safeCreateDateTimeZone($value / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR));
+
+                break;
+
+            case 'offsetMinutes':
+                $this->setTimezone(static::safeCreateDateTimeZone($value / static::MINUTES_PER_HOUR));
+
+                break;
+
+            case 'offsetHours':
+                $this->setTimezone(static::safeCreateDateTimeZone($value));
+
+                break;
+
+            case 'timezone':
+            case 'tz':
+                $this->setTimezone($value);
+
+                break;
+
+            default:
+                $macro = $this->getLocalMacro('set'.ucfirst($name));
+
+                if ($macro) {
+                    $this->executeCallableWithContext($macro, $value);
+
+                    break;
+                }
+
+                if ($this->localStrictModeEnabled ?? static::isStrictModeEnabled()) {
+                    throw new UnknownSetterException($name);
+                }
+
+                $this->$name = $value;
+        }
+
+        return $this;
+    }
+
+    protected function getTranslatedFormByRegExp($baseKey, $keySuffix, $context, $subKey, $defaultValue)
+    {
+        $key = $baseKey.$keySuffix;
+        $standaloneKey = "${key}_standalone";
+        $baseTranslation = $this->getTranslationMessage($key);
+
+        if ($baseTranslation instanceof Closure) {
+            return $baseTranslation($this, $context, $subKey) ?: $defaultValue;
+        }
+
+        if (
+            $this->getTranslationMessage("$standaloneKey.$subKey") &&
+            (!$context || ($regExp = $this->getTranslationMessage("${baseKey}_regexp")) && !preg_match($regExp, $context))
+        ) {
+            $key = $standaloneKey;
+        }
+
+        return $this->getTranslationMessage("$key.$subKey", null, $defaultValue);
+    }
+
+    /**
+     * Get the translation of the current week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context      whole format string
+     * @param string      $keySuffix    "", "_short" or "_min"
+     * @param string|null $defaultValue default value if translation missing
+     *
+     * @return string
+     */
+    public function getTranslatedDayName($context = null, $keySuffix = '', $defaultValue = null)
+    {
+        return $this->getTranslatedFormByRegExp('weekdays', $keySuffix, $context, $this->dayOfWeek, $defaultValue ?: $this->englishDayOfWeek);
+    }
+
+    /**
+     * Get the translation of the current short week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedShortDayName($context = null)
+    {
+        return $this->getTranslatedDayName($context, '_short', $this->shortEnglishDayOfWeek);
+    }
+
+    /**
+     * Get the translation of the current abbreviated week day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedMinDayName($context = null)
+    {
+        return $this->getTranslatedDayName($context, '_min', $this->shortEnglishDayOfWeek);
+    }
+
+    /**
+     * Get the translation of the current month day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context      whole format string
+     * @param string      $keySuffix    "" or "_short"
+     * @param string|null $defaultValue default value if translation missing
+     *
+     * @return string
+     */
+    public function getTranslatedMonthName($context = null, $keySuffix = '', $defaultValue = null)
+    {
+        return $this->getTranslatedFormByRegExp('months', $keySuffix, $context, $this->month - 1, $defaultValue ?: $this->englishMonth);
+    }
+
+    /**
+     * Get the translation of the current short month day name (with context for languages with multiple forms).
+     *
+     * @param string|null $context whole format string
+     *
+     * @return string
+     */
+    public function getTranslatedShortMonthName($context = null)
+    {
+        return $this->getTranslatedMonthName($context, '_short', $this->shortEnglishMonth);
+    }
+
+    /**
+     * Get/set the day of year.
+     *
+     * @param int|null $value new value for day of year if using as setter.
+     *
+     * @return static|int
+     */
+    public function dayOfYear($value = null)
+    {
+        $dayOfYear = $this->dayOfYear;
+
+        return $value === null ? $dayOfYear : $this->addDays($value - $dayOfYear);
+    }
+
+    /**
+     * Get/set the weekday from 0 (Sunday) to 6 (Saturday).
+     *
+     * @param int|null $value new value for weekday if using as setter.
+     *
+     * @return static|int
+     */
+    public function weekday($value = null)
+    {
+        $dayOfWeek = ($this->dayOfWeek + 7 - (int) ($this->getTranslationMessage('first_day_of_week') ?? 0)) % 7;
+
+        return $value === null ? $dayOfWeek : $this->addDays($value - $dayOfWeek);
+    }
+
+    /**
+     * Get/set the ISO weekday from 1 (Monday) to 7 (Sunday).
+     *
+     * @param int|null $value new value for weekday if using as setter.
+     *
+     * @return static|int
+     */
+    public function isoWeekday($value = null)
+    {
+        $dayOfWeekIso = $this->dayOfWeekIso;
+
+        return $value === null ? $dayOfWeekIso : $this->addDays($value - $dayOfWeekIso);
+    }
+
+    /**
+     * Set any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        new value for the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function setUnitNoOverflow($valueUnit, $value, $overflowUnit)
+    {
+        try {
+            $original = $this->avoidMutation();
+            /** @var static $date */
+            $date = $this->$valueUnit($value);
+            $end = $original->avoidMutation()->endOf($overflowUnit);
+            $start = $original->avoidMutation()->startOf($overflowUnit);
+            if ($date < $start) {
+                $date = $date->setDateTimeFrom($start);
+            } elseif ($date > $end) {
+                $date = $date->setDateTimeFrom($end);
+            }
+
+            return $date;
+        } catch (BadMethodCallException | ReflectionException $exception) {
+            throw new UnknownUnitException($valueUnit, 0, $exception);
+        }
+    }
+
+    /**
+     * Add any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        amount to add to the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function addUnitNoOverflow($valueUnit, $value, $overflowUnit)
+    {
+        return $this->setUnitNoOverflow($valueUnit, $this->$valueUnit + $value, $overflowUnit);
+    }
+
+    /**
+     * Subtract any unit to a new value without overflowing current other unit given.
+     *
+     * @param string $valueUnit    unit name to modify
+     * @param int    $value        amount to subtract to the input unit
+     * @param string $overflowUnit unit name to not overflow
+     *
+     * @return static
+     */
+    public function subUnitNoOverflow($valueUnit, $value, $overflowUnit)
+    {
+        return $this->setUnitNoOverflow($valueUnit, $this->$valueUnit - $value, $overflowUnit);
+    }
+
+    /**
+     * Returns the minutes offset to UTC if no arguments passed, else set the timezone with given minutes shift passed.
+     *
+     * @param int|null $minuteOffset
+     *
+     * @return int|static
+     */
+    public function utcOffset(int $minuteOffset = null)
+    {
+        if (\func_num_args() < 1) {
+            return $this->offsetMinutes;
+        }
+
+        return $this->setTimezone(CarbonTimeZone::createFromMinuteOffset($minuteOffset));
+    }
+
+    /**
+     * Set the date with gregorian year, month and day numbers.
+     *
+     * @see https://php.net/manual/en/datetime.setdate.php
+     *
+     * @param int $year
+     * @param int $month
+     * @param int $day
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setDate($year, $month, $day)
+    {
+        return parent::setDate((int) $year, (int) $month, (int) $day);
+    }
+
+    /**
+     * Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
+     *
+     * @see https://php.net/manual/en/datetime.setisodate.php
+     *
+     * @param int $year
+     * @param int $week
+     * @param int $day
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setISODate($year, $week, $day = 1)
+    {
+        return parent::setISODate((int) $year, (int) $week, (int) $day);
+    }
+
+    /**
+     * Set the date and time all together.
+     *
+     * @param int $year
+     * @param int $month
+     * @param int $day
+     * @param int $hour
+     * @param int $minute
+     * @param int $second
+     * @param int $microseconds
+     *
+     * @return static
+     */
+    public function setDateTime($year, $month, $day, $hour, $minute, $second = 0, $microseconds = 0)
+    {
+        return $this->setDate($year, $month, $day)->setTime((int) $hour, (int) $minute, (int) $second, (int) $microseconds);
+    }
+
+    /**
+     * Resets the current time of the DateTime object to a different time.
+     *
+     * @see https://php.net/manual/en/datetime.settime.php
+     *
+     * @param int $hour
+     * @param int $minute
+     * @param int $second
+     * @param int $microseconds
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTime($hour, $minute, $second = 0, $microseconds = 0)
+    {
+        return parent::setTime((int) $hour, (int) $minute, (int) $second, (int) $microseconds);
+    }
+
+    /**
+     * Set the instance's timestamp.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $unixTimestamp
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTimestamp($unixTimestamp)
+    {
+        [$timestamp, $microseconds] = self::getIntegerAndDecimalParts($unixTimestamp);
+
+        return parent::setTimestamp((int) $timestamp)->setMicroseconds((int) $microseconds);
+    }
+
+    /**
+     * Set the time by time string.
+     *
+     * @param string $time
+     *
+     * @return static
+     */
+    public function setTimeFromTimeString($time)
+    {
+        if (!str_contains($time, ':')) {
+            $time .= ':0';
+        }
+
+        return $this->modify($time);
+    }
+
+    /**
+     * @alias setTimezone
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    public function timezone($value)
+    {
+        return $this->setTimezone($value);
+    }
+
+    /**
+     * Set the timezone or returns the timezone name if no arguments passed.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static|string
+     */
+    public function tz($value = null)
+    {
+        if (\func_num_args() < 1) {
+            return $this->tzName;
+        }
+
+        return $this->setTimezone($value);
+    }
+
+    /**
+     * Set the instance's timezone from a string or object.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function setTimezone($value)
+    {
+        return parent::setTimezone(static::safeCreateDateTimeZone($value));
+    }
+
+    /**
+     * Set the instance's timezone from a string or object and add/subtract the offset difference.
+     *
+     * @param DateTimeZone|string $value
+     *
+     * @return static
+     */
+    public function shiftTimezone($value)
+    {
+        $offset = $this->offset;
+        $date = $this->setTimezone($value);
+
+        return $date->addRealMicroseconds(($offset - $date->offset) * static::MICROSECONDS_PER_SECOND);
+    }
+
+    /**
+     * Set the instance's timezone to UTC.
+     *
+     * @return static
+     */
+    public function utc()
+    {
+        return $this->setTimezone('UTC');
+    }
+
+    /**
+     * Set the year, month, and date for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date now if null
+     *
+     * @return static
+     */
+    public function setDateFrom($date = null)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->setDate($date->year, $date->month, $date->day);
+    }
+
+    /**
+     * Set the hour, minute, second and microseconds for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date now if null
+     *
+     * @return static
+     */
+    public function setTimeFrom($date = null)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->setTime($date->hour, $date->minute, $date->second, $date->microsecond);
+    }
+
+    /**
+     * Set the date and time for this instance to that of the passed instance.
+     *
+     * @param Carbon|DateTimeInterface $date
+     *
+     * @return static
+     */
+    public function setDateTimeFrom($date = null)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->modify($date->rawFormat('Y-m-d H:i:s.u'));
+    }
+
+    /**
+     * Get the days of the week
+     *
+     * @return array
+     */
+    public static function getDays()
+    {
+        return static::$days;
+    }
+
+    ///////////////////////////////////////////////////////////////////
+    /////////////////////// WEEK SPECIAL DAYS /////////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    private static function getFirstDayOfWeek(): int
+    {
+        return (int) static::getTranslationMessageWith(
+            static::getTranslator(),
+            'first_day_of_week'
+        );
+    }
+
+    /**
+     * Get the first day of week
+     *
+     * @return int
+     */
+    public static function getWeekStartsAt()
+    {
+        if (static::$weekStartsAt === static::WEEK_DAY_AUTO) {
+            return static::getFirstDayOfWeek();
+        }
+
+        return static::$weekStartsAt;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             Use $weekEndsAt optional parameter instead when using endOfWeek method. You can also use the
+     *             'first_day_of_week' locale setting to change the start of week according to current locale
+     *             selected and implicitly the end of week.
+     *
+     * Set the first day of week
+     *
+     * @param int|string $day week start day (or 'auto' to get the first day of week from Carbon::getLocale() culture).
+     *
+     * @return void
+     */
+    public static function setWeekStartsAt($day)
+    {
+        static::$weekStartsAt = $day === static::WEEK_DAY_AUTO ? $day : max(0, (7 + $day) % 7);
+    }
+
+    /**
+     * Get the last day of week
+     *
+     * @return int
+     */
+    public static function getWeekEndsAt()
+    {
+        if (static::$weekStartsAt === static::WEEK_DAY_AUTO) {
+            return (int) (static::DAYS_PER_WEEK - 1 + static::getFirstDayOfWeek()) % static::DAYS_PER_WEEK;
+        }
+
+        return static::$weekEndsAt;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             Use $weekStartsAt optional parameter instead when using startOfWeek, floorWeek, ceilWeek
+     *             or roundWeek method. You can also use the 'first_day_of_week' locale setting to change the
+     *             start of week according to current locale selected and implicitly the end of week.
+     *
+     * Set the last day of week
+     *
+     * @param int|string $day week end day (or 'auto' to get the day before the first day of week
+     *                        from Carbon::getLocale() culture).
+     *
+     * @return void
+     */
+    public static function setWeekEndsAt($day)
+    {
+        static::$weekEndsAt = $day === static::WEEK_DAY_AUTO ? $day : max(0, (7 + $day) % 7);
+    }
+
+    /**
+     * Get weekend days
+     *
+     * @return array
+     */
+    public static function getWeekendDays()
+    {
+        return static::$weekendDays;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather consider week-end is always saturday and sunday, and if you have some custom
+     *             week-end days to handle, give to those days an other name and create a macro for them:
+     *
+     *             ```
+     *             Carbon::macro('isDayOff', function ($date) {
+     *                 return $date->isSunday() || $date->isMonday();
+     *             });
+     *             Carbon::macro('isNotDayOff', function ($date) {
+     *                 return !$date->isDayOff();
+     *             });
+     *             if ($someDate->isDayOff()) ...
+     *             if ($someDate->isNotDayOff()) ...
+     *             // Add 5 not-off days
+     *             $count = 5;
+     *             while ($someDate->isDayOff() || ($count-- > 0)) {
+     *                 $someDate->addDay();
+     *             }
+     *             ```
+     *
+     * Set weekend days
+     *
+     * @param array $days
+     *
+     * @return void
+     */
+    public static function setWeekendDays($days)
+    {
+        static::$weekendDays = $days;
+    }
+
+    /**
+     * Determine if a time string will produce a relative date.
+     *
+     * @param string $time
+     *
+     * @return bool true if time match a relative date, false if absolute or invalid time string
+     */
+    public static function hasRelativeKeywords($time)
+    {
+        if (!$time || strtotime($time) === false) {
+            return false;
+        }
+
+        $date1 = new DateTime('2000-01-01T00:00:00Z');
+        $date1->modify($time);
+        $date2 = new DateTime('2001-12-25T00:00:00Z');
+        $date2->modify($time);
+
+        return $date1 != $date2;
+    }
+
+    ///////////////////////////////////////////////////////////////////
+    /////////////////////// STRING FORMATTING /////////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use UTF-8 language packages on every machine.
+     *
+     * Set if UTF8 will be used for localized date/time.
+     *
+     * @param bool $utf8
+     */
+    public static function setUtf8($utf8)
+    {
+        static::$utf8 = $utf8;
+    }
+
+    /**
+     * Format the instance with the current locale.  You can set the current
+     * locale using setlocale() https://php.net/setlocale.
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function formatLocalized($format)
+    {
+        // Check for Windows to find and replace the %e modifier correctly.
+        if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
+            $format = preg_replace('#(?<!%)((?:%%)*)%e#', '\1%#d', $format); // @codeCoverageIgnore
+        }
+
+        $formatted = strftime($format, strtotime($this->toDateTimeString()));
+
+        return static::$utf8 ? utf8_encode($formatted) : $formatted;
+    }
+
+    /**
+     * Returns list of locale formats for ISO formatting.
+     *
+     * @param string|null $locale current locale used if null
+     *
+     * @return array
+     */
+    public function getIsoFormats($locale = null)
+    {
+        return [
+            'LT' => $this->getTranslationMessage('formats.LT', $locale, 'h:mm A'),
+            'LTS' => $this->getTranslationMessage('formats.LTS', $locale, 'h:mm:ss A'),
+            'L' => $this->getTranslationMessage('formats.L', $locale, 'MM/DD/YYYY'),
+            'LL' => $this->getTranslationMessage('formats.LL', $locale, 'MMMM D, YYYY'),
+            'LLL' => $this->getTranslationMessage('formats.LLL', $locale, 'MMMM D, YYYY h:mm A'),
+            'LLLL' => $this->getTranslationMessage('formats.LLLL', $locale, 'dddd, MMMM D, YYYY h:mm A'),
+        ];
+    }
+
+    /**
+     * Returns list of calendar formats for ISO formatting.
+     *
+     * @param string|null $locale current locale used if null
+     *
+     * @return array
+     */
+    public function getCalendarFormats($locale = null)
+    {
+        return [
+            'sameDay' => $this->getTranslationMessage('calendar.sameDay', $locale, '[Today at] LT'),
+            'nextDay' => $this->getTranslationMessage('calendar.nextDay', $locale, '[Tomorrow at] LT'),
+            'nextWeek' => $this->getTranslationMessage('calendar.nextWeek', $locale, 'dddd [at] LT'),
+            'lastDay' => $this->getTranslationMessage('calendar.lastDay', $locale, '[Yesterday at] LT'),
+            'lastWeek' => $this->getTranslationMessage('calendar.lastWeek', $locale, '[Last] dddd [at] LT'),
+            'sameElse' => $this->getTranslationMessage('calendar.sameElse', $locale, 'L'),
+        ];
+    }
+
+    /**
+     * Returns list of locale units for ISO formatting.
+     *
+     * @return array
+     */
+    public static function getIsoUnits()
+    {
+        static $units = null;
+
+        if ($units === null) {
+            $units = [
+                'OD' => ['getAltNumber', ['day']],
+                'OM' => ['getAltNumber', ['month']],
+                'OY' => ['getAltNumber', ['year']],
+                'OH' => ['getAltNumber', ['hour']],
+                'Oh' => ['getAltNumber', ['h']],
+                'Om' => ['getAltNumber', ['minute']],
+                'Os' => ['getAltNumber', ['second']],
+                'D' => 'day',
+                'DD' => ['rawFormat', ['d']],
+                'Do' => ['ordinal', ['day', 'D']],
+                'd' => 'dayOfWeek',
+                'dd' => function (CarbonInterface $date, $originalFormat = null) {
+                    return $date->getTranslatedMinDayName($originalFormat);
+                },
+                'ddd' => function (CarbonInterface $date, $originalFormat = null) {
+                    return $date->getTranslatedShortDayName($originalFormat);
+                },
+                'dddd' => function (CarbonInterface $date, $originalFormat = null) {
+                    return $date->getTranslatedDayName($originalFormat);
+                },
+                'DDD' => 'dayOfYear',
+                'DDDD' => ['getPaddedUnit', ['dayOfYear', 3]],
+                'DDDo' => ['ordinal', ['dayOfYear', 'DDD']],
+                'e' => ['weekday', []],
+                'E' => 'dayOfWeekIso',
+                'H' => ['rawFormat', ['G']],
+                'HH' => ['rawFormat', ['H']],
+                'h' => ['rawFormat', ['g']],
+                'hh' => ['rawFormat', ['h']],
+                'k' => 'noZeroHour',
+                'kk' => ['getPaddedUnit', ['noZeroHour']],
+                'hmm' => ['rawFormat', ['gi']],
+                'hmmss' => ['rawFormat', ['gis']],
+                'Hmm' => ['rawFormat', ['Gi']],
+                'Hmmss' => ['rawFormat', ['Gis']],
+                'm' => 'minute',
+                'mm' => ['rawFormat', ['i']],
+                'a' => 'meridiem',
+                'A' => 'upperMeridiem',
+                's' => 'second',
+                'ss' => ['getPaddedUnit', ['second']],
+                'S' => function (CarbonInterface $date) {
+                    return (string) floor($date->micro / 100000);
+                },
+                'SS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro / 10000), 2, '0', STR_PAD_LEFT);
+                },
+                'SSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro / 1000), 3, '0', STR_PAD_LEFT);
+                },
+                'SSSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro / 100), 4, '0', STR_PAD_LEFT);
+                },
+                'SSSSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro / 10), 5, '0', STR_PAD_LEFT);
+                },
+                'SSSSSS' => ['getPaddedUnit', ['micro', 6]],
+                'SSSSSSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro * 10), 7, '0', STR_PAD_LEFT);
+                },
+                'SSSSSSSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro * 100), 8, '0', STR_PAD_LEFT);
+                },
+                'SSSSSSSSS' => function (CarbonInterface $date) {
+                    return str_pad((string) floor($date->micro * 1000), 9, '0', STR_PAD_LEFT);
+                },
+                'M' => 'month',
+                'MM' => ['rawFormat', ['m']],
+                'MMM' => function (CarbonInterface $date, $originalFormat = null) {
+                    $month = $date->getTranslatedShortMonthName($originalFormat);
+                    $suffix = $date->getTranslationMessage('mmm_suffix');
+                    if ($suffix && $month !== $date->monthName) {
+                        $month .= $suffix;
+                    }
+
+                    return $month;
+                },
+                'MMMM' => function (CarbonInterface $date, $originalFormat = null) {
+                    return $date->getTranslatedMonthName($originalFormat);
+                },
+                'Mo' => ['ordinal', ['month', 'M']],
+                'Q' => 'quarter',
+                'Qo' => ['ordinal', ['quarter', 'M']],
+                'G' => 'isoWeekYear',
+                'GG' => ['getPaddedUnit', ['isoWeekYear']],
+                'GGG' => ['getPaddedUnit', ['isoWeekYear', 3]],
+                'GGGG' => ['getPaddedUnit', ['isoWeekYear', 4]],
+                'GGGGG' => ['getPaddedUnit', ['isoWeekYear', 5]],
+                'g' => 'weekYear',
+                'gg' => ['getPaddedUnit', ['weekYear']],
+                'ggg' => ['getPaddedUnit', ['weekYear', 3]],
+                'gggg' => ['getPaddedUnit', ['weekYear', 4]],
+                'ggggg' => ['getPaddedUnit', ['weekYear', 5]],
+                'W' => 'isoWeek',
+                'WW' => ['getPaddedUnit', ['isoWeek']],
+                'Wo' => ['ordinal', ['isoWeek', 'W']],
+                'w' => 'week',
+                'ww' => ['getPaddedUnit', ['week']],
+                'wo' => ['ordinal', ['week', 'w']],
+                'x' => ['valueOf', []],
+                'X' => 'timestamp',
+                'Y' => 'year',
+                'YY' => ['rawFormat', ['y']],
+                'YYYY' => ['getPaddedUnit', ['year', 4]],
+                'YYYYY' => ['getPaddedUnit', ['year', 5]],
+                'YYYYYY' => function (CarbonInterface $date) {
+                    return ($date->year < 0 ? '' : '+').$date->getPaddedUnit('year', 6);
+                },
+                'z' => ['rawFormat', ['T']],
+                'zz' => 'tzName',
+                'Z' => ['getOffsetString', []],
+                'ZZ' => ['getOffsetString', ['']],
+            ];
+        }
+
+        return $units;
+    }
+
+    /**
+     * Returns a unit of the instance padded with 0 by default or any other string if specified.
+     *
+     * @param string $unit      Carbon unit name
+     * @param int    $length    Length of the output (2 by default)
+     * @param string $padString String to use for padding ("0" by default)
+     * @param int    $padType   Side(s) to pad (STR_PAD_LEFT by default)
+     *
+     * @return string
+     */
+    public function getPaddedUnit($unit, $length = 2, $padString = '0', $padType = STR_PAD_LEFT)
+    {
+        return ($this->$unit < 0 ? '-' : '').str_pad((string) abs($this->$unit), $length, $padString, $padType);
+    }
+
+    /**
+     * Return a property with its ordinal.
+     *
+     * @param string      $key
+     * @param string|null $period
+     *
+     * @return string
+     */
+    public function ordinal(string $key, ?string $period = null): string
+    {
+        $number = $this->$key;
+        $result = $this->translate('ordinal', [
+            ':number' => $number,
+            ':period' => (string) $period,
+        ]);
+
+        return (string) ($result === 'ordinal' ? $number : $result);
+    }
+
+    /**
+     * Return the meridiem of the current time in the current locale.
+     *
+     * @param bool $isLower if true, returns lowercase variant if available in the current locale.
+     *
+     * @return string
+     */
+    public function meridiem(bool $isLower = false): string
+    {
+        $hour = $this->hour;
+        $index = $hour < 12 ? 0 : 1;
+
+        if ($isLower) {
+            $key = 'meridiem.'.($index + 2);
+            $result = $this->translate($key);
+
+            if ($result !== $key) {
+                return $result;
+            }
+        }
+
+        $key = "meridiem.$index";
+        $result = $this->translate($key);
+        if ($result === $key) {
+            $result = $this->translate('meridiem', [
+                ':hour' => $this->hour,
+                ':minute' => $this->minute,
+                ':isLower' => $isLower,
+            ]);
+
+            if ($result === 'meridiem') {
+                return $isLower ? $this->latinMeridiem : $this->latinUpperMeridiem;
+            }
+        } elseif ($isLower) {
+            $result = mb_strtolower($result);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Returns the alternative number for a given date property if available in the current locale.
+     *
+     * @param string $key date property
+     *
+     * @return string
+     */
+    public function getAltNumber(string $key): string
+    {
+        return $this->translateNumber(\strlen($key) > 1 ? $this->$key : $this->rawFormat('h'));
+    }
+
+    /**
+     * Format in the current language using ISO replacement patterns.
+     *
+     * @param string      $format
+     * @param string|null $originalFormat provide context if a chunk has been passed alone
+     *
+     * @return string
+     */
+    public function isoFormat(string $format, ?string $originalFormat = null): string
+    {
+        $result = '';
+        $length = mb_strlen($format);
+        $originalFormat = $originalFormat ?: $format;
+        $inEscaped = false;
+        $formats = null;
+        $units = null;
+
+        for ($i = 0; $i < $length; $i++) {
+            $char = mb_substr($format, $i, 1);
+
+            if ($char === '\\') {
+                $result .= mb_substr($format, ++$i, 1);
+
+                continue;
+            }
+
+            if ($char === '[' && !$inEscaped) {
+                $inEscaped = true;
+
+                continue;
+            }
+
+            if ($char === ']' && $inEscaped) {
+                $inEscaped = false;
+
+                continue;
+            }
+
+            if ($inEscaped) {
+                $result .= $char;
+
+                continue;
+            }
+
+            $input = mb_substr($format, $i);
+
+            if (preg_match('/^(LTS|LT|[Ll]{1,4})/', $input, $match)) {
+                if ($formats === null) {
+                    $formats = $this->getIsoFormats();
+                }
+
+                $code = $match[0];
+                $sequence = $formats[$code] ?? preg_replace_callback(
+                    '/MMMM|MM|DD|dddd/',
+                    function ($code) {
+                        return mb_substr($code[0], 1);
+                    },
+                    $formats[strtoupper($code)] ?? ''
+                );
+                $rest = mb_substr($format, $i + mb_strlen($code));
+                $format = mb_substr($format, 0, $i).$sequence.$rest;
+                $length = mb_strlen($format);
+                $input = $sequence.$rest;
+            }
+
+            if (preg_match('/^'.CarbonInterface::ISO_FORMAT_REGEXP.'/', $input, $match)) {
+                $code = $match[0];
+
+                if ($units === null) {
+                    $units = static::getIsoUnits();
+                }
+
+                $sequence = $units[$code] ?? '';
+
+                if ($sequence instanceof Closure) {
+                    $sequence = $sequence($this, $originalFormat);
+                } elseif (\is_array($sequence)) {
+                    try {
+                        $sequence = $this->{$sequence[0]}(...$sequence[1]);
+                    } catch (ReflectionException | InvalidArgumentException | BadMethodCallException $e) {
+                        $sequence = '';
+                    }
+                } elseif (\is_string($sequence)) {
+                    $sequence = $this->$sequence ?? $code;
+                }
+
+                $format = mb_substr($format, 0, $i).$sequence.mb_substr($format, $i + mb_strlen($code));
+                $i += mb_strlen((string) $sequence) - 1;
+                $length = mb_strlen($format);
+                $char = $sequence;
+            }
+
+            $result .= $char;
+        }
+
+        return $result;
+    }
+
+    /**
+     * List of replacements from date() format to isoFormat().
+     *
+     * @return array
+     */
+    public static function getFormatsToIsoReplacements()
+    {
+        static $replacements = null;
+
+        if ($replacements === null) {
+            $replacements = [
+                'd' => true,
+                'D' => 'ddd',
+                'j' => true,
+                'l' => 'dddd',
+                'N' => true,
+                'S' => function ($date) {
+                    $day = $date->rawFormat('j');
+
+                    return str_replace((string) $day, '', $date->isoFormat('Do'));
+                },
+                'w' => true,
+                'z' => true,
+                'W' => true,
+                'F' => 'MMMM',
+                'm' => true,
+                'M' => 'MMM',
+                'n' => true,
+                't' => true,
+                'L' => true,
+                'o' => true,
+                'Y' => true,
+                'y' => true,
+                'a' => 'a',
+                'A' => 'A',
+                'B' => true,
+                'g' => true,
+                'G' => true,
+                'h' => true,
+                'H' => true,
+                'i' => true,
+                's' => true,
+                'u' => true,
+                'v' => true,
+                'E' => true,
+                'I' => true,
+                'O' => true,
+                'P' => true,
+                'Z' => true,
+                'c' => true,
+                'r' => true,
+                'U' => true,
+            ];
+        }
+
+        return $replacements;
+    }
+
+    /**
+     * Format as ->format() do (using date replacements patterns from https://php.net/manual/en/function.date.php)
+     * but translate words whenever possible (months, day names, etc.) using the current locale.
+     *
+     * @param string $format
+     *
+     * @return string
+     */
+    public function translatedFormat(string $format): string
+    {
+        $replacements = static::getFormatsToIsoReplacements();
+        $context = '';
+        $isoFormat = '';
+        $length = mb_strlen($format);
+
+        for ($i = 0; $i < $length; $i++) {
+            $char = mb_substr($format, $i, 1);
+
+            if ($char === '\\') {
+                $replacement = mb_substr($format, $i, 2);
+                $isoFormat .= $replacement;
+                $i++;
+
+                continue;
+            }
+
+            if (!isset($replacements[$char])) {
+                $replacement = preg_match('/^[A-Za-z]$/', $char) ? "\\$char" : $char;
+                $isoFormat .= $replacement;
+                $context .= $replacement;
+
+                continue;
+            }
+
+            $replacement = $replacements[$char];
+
+            if ($replacement === true) {
+                static $contextReplacements = null;
+
+                if ($contextReplacements === null) {
+                    $contextReplacements = [
+                        'm' => 'MM',
+                        'd' => 'DD',
+                        't' => 'D',
+                        'j' => 'D',
+                        'N' => 'e',
+                        'w' => 'e',
+                        'n' => 'M',
+                        'o' => 'YYYY',
+                        'Y' => 'YYYY',
+                        'y' => 'YY',
+                        'g' => 'h',
+                        'G' => 'H',
+                        'h' => 'hh',
+                        'H' => 'HH',
+                        'i' => 'mm',
+                        's' => 'ss',
+                    ];
+                }
+
+                $isoFormat .= '['.$this->rawFormat($char).']';
+                $context .= $contextReplacements[$char] ?? ' ';
+
+                continue;
+            }
+
+            if ($replacement instanceof Closure) {
+                $replacement = '['.$replacement($this).']';
+                $isoFormat .= $replacement;
+                $context .= $replacement;
+
+                continue;
+            }
+
+            $isoFormat .= $replacement;
+            $context .= $replacement;
+        }
+
+        return $this->isoFormat($isoFormat, $context);
+    }
+
+    /**
+     * Returns the offset hour and minute formatted with +/- and a given separator (":" by default).
+     * For example, if the time zone is 9 hours 30 minutes, you'll get "+09:30", with "@@" as first
+     * argument, "+09@@30", with "" as first argument, "+0930". Negative offset will return something
+     * like "-12:00".
+     *
+     * @param string $separator string to place between hours and minutes (":" by default)
+     *
+     * @return string
+     */
+    public function getOffsetString($separator = ':')
+    {
+        $second = $this->getOffset();
+        $symbol = $second < 0 ? '-' : '+';
+        $minute = abs($second) / static::SECONDS_PER_MINUTE;
+        $hour = str_pad((string) floor($minute / static::MINUTES_PER_HOUR), 2, '0', STR_PAD_LEFT);
+        $minute = str_pad((string) ($minute % static::MINUTES_PER_HOUR), 2, '0', STR_PAD_LEFT);
+
+        return "$symbol$hour$separator$minute";
+    }
+
+    protected static function executeStaticCallable($macro, ...$parameters)
+    {
+        return static::bindMacroContext(null, function () use (&$macro, &$parameters) {
+            if ($macro instanceof Closure) {
+                $boundMacro = @Closure::bind($macro, null, static::class);
+
+                return ($boundMacro ?: $macro)(...$parameters);
+            }
+
+            return $macro(...$parameters);
+        });
+    }
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @throws BadMethodCallException
+     *
+     * @return mixed
+     */
+    public static function __callStatic($method, $parameters)
+    {
+        if (!static::hasMacro($method)) {
+            foreach (static::getGenericMacros() as $callback) {
+                try {
+                    return static::executeStaticCallable($callback, $method, ...$parameters);
+                } catch (BadMethodCallException $exception) {
+                    continue;
+                }
+            }
+            if (static::isStrictModeEnabled()) {
+                throw new UnknownMethodException(sprintf('%s::%s', static::class, $method));
+            }
+
+            return null;
+        }
+
+        return static::executeStaticCallable(static::$globalMacros[$method], ...$parameters);
+    }
+
+    /**
+     * Set specified unit to new given value.
+     *
+     * @param string $unit  year, month, day, hour, minute, second or microsecond
+     * @param int    $value new value for given unit
+     *
+     * @return static
+     */
+    public function setUnit($unit, $value = null)
+    {
+        $unit = static::singularUnit($unit);
+        $dateUnits = ['year', 'month', 'day'];
+        if (\in_array($unit, $dateUnits)) {
+            return $this->setDate(...array_map(function ($name) use ($unit, $value) {
+                return (int) ($name === $unit ? $value : $this->$name);
+            }, $dateUnits));
+        }
+
+        $units = ['hour', 'minute', 'second', 'micro'];
+        if ($unit === 'millisecond' || $unit === 'milli') {
+            $value *= 1000;
+            $unit = 'micro';
+        } elseif ($unit === 'microsecond') {
+            $unit = 'micro';
+        }
+
+        return $this->setTime(...array_map(function ($name) use ($unit, $value) {
+            return (int) ($name === $unit ? $value : $this->$name);
+        }, $units));
+    }
+
+    /**
+     * Returns standardized singular of a given singular/plural unit name (in English).
+     *
+     * @param string $unit
+     *
+     * @return string
+     */
+    public static function singularUnit(string $unit): string
+    {
+        $unit = rtrim(mb_strtolower($unit), 's');
+
+        if ($unit === 'centurie') {
+            return 'century';
+        }
+
+        if ($unit === 'millennia') {
+            return 'millennium';
+        }
+
+        return $unit;
+    }
+
+    /**
+     * Returns standardized plural of a given singular/plural unit name (in English).
+     *
+     * @param string $unit
+     *
+     * @return string
+     */
+    public static function pluralUnit(string $unit): string
+    {
+        $unit = rtrim(strtolower($unit), 's');
+
+        if ($unit === 'century') {
+            return 'centuries';
+        }
+
+        if ($unit === 'millennium' || $unit === 'millennia') {
+            return 'millennia';
+        }
+
+        return "${unit}s";
+    }
+
+    protected function executeCallable($macro, ...$parameters)
+    {
+        if ($macro instanceof Closure) {
+            $boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
+
+            return ($boundMacro ?: $macro)(...$parameters);
+        }
+
+        return $macro(...$parameters);
+    }
+
+    protected function executeCallableWithContext($macro, ...$parameters)
+    {
+        return static::bindMacroContext($this, function () use (&$macro, &$parameters) {
+            return $this->executeCallable($macro, ...$parameters);
+        });
+    }
+
+    protected static function getGenericMacros()
+    {
+        foreach (static::$globalGenericMacros as $list) {
+            foreach ($list as $macro) {
+                yield $macro;
+            }
+        }
+    }
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param string $method     magic method name called
+     * @param array  $parameters parameters list
+     *
+     * @throws UnknownMethodException|BadMethodCallException|ReflectionException|Throwable
+     *
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        $diffSizes = [
+            // @mode diffForHumans
+            'short' => true,
+            // @mode diffForHumans
+            'long' => false,
+        ];
+        $diffSyntaxModes = [
+            // @call diffForHumans
+            'Absolute' => CarbonInterface::DIFF_ABSOLUTE,
+            // @call diffForHumans
+            'Relative' => CarbonInterface::DIFF_RELATIVE_AUTO,
+            // @call diffForHumans
+            'RelativeToNow' => CarbonInterface::DIFF_RELATIVE_TO_NOW,
+            // @call diffForHumans
+            'RelativeToOther' => CarbonInterface::DIFF_RELATIVE_TO_OTHER,
+        ];
+        $sizePattern = implode('|', array_keys($diffSizes));
+        $syntaxPattern = implode('|', array_keys($diffSyntaxModes));
+
+        if (preg_match("/^(?<size>$sizePattern)(?<syntax>$syntaxPattern)DiffForHumans$/", $method, $match)) {
+            $dates = array_filter($parameters, function ($parameter) {
+                return $parameter instanceof DateTimeInterface;
+            });
+            $other = null;
+
+            if (\count($dates)) {
+                $key = key($dates);
+                $other = current($dates);
+                array_splice($parameters, $key, 1);
+            }
+
+            return $this->diffForHumans($other, $diffSyntaxModes[$match['syntax']], $diffSizes[$match['size']], ...$parameters);
+        }
+
+        $roundedValue = $this->callRoundMethod($method, $parameters);
+
+        if ($roundedValue !== null) {
+            return $roundedValue;
+        }
+
+        $unit = rtrim($method, 's');
+
+        if (str_starts_with($unit, 'is')) {
+            $word = substr($unit, 2);
+
+            if (\in_array($word, static::$days)) {
+                return $this->isDayOfWeek($word);
+            }
+
+            switch ($word) {
+                // @call is Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
+                case 'Utc':
+                case 'UTC':
+                    return $this->utc;
+                // @call is Check if the current instance has non-UTC timezone.
+                case 'Local':
+                    return $this->local;
+                // @call is Check if the current instance is a valid date.
+                case 'Valid':
+                    return $this->year !== 0;
+                // @call is Check if the current instance is in a daylight saving time.
+                case 'DST':
+                    return $this->dst;
+            }
+        }
+
+        $action = substr($unit, 0, 3);
+        $overflow = null;
+
+        if ($action === 'set') {
+            $unit = strtolower(substr($unit, 3));
+        }
+
+        if (\in_array($unit, static::$units)) {
+            return $this->setUnit($unit, ...$parameters);
+        }
+
+        if ($action === 'add' || $action === 'sub') {
+            $unit = substr($unit, 3);
+
+            if (str_starts_with($unit, 'Real')) {
+                $unit = static::singularUnit(substr($unit, 4));
+
+                return $this->{"${action}RealUnit"}($unit, ...$parameters);
+            }
+
+            if (preg_match('/^(Month|Quarter|Year|Decade|Century|Centurie|Millennium|Millennia)s?(No|With|Without|WithNo)Overflow$/', $unit, $match)) {
+                $unit = $match[1];
+                $overflow = $match[2] === 'With';
+            }
+
+            $unit = static::singularUnit($unit);
+        }
+
+        if (static::isModifiableUnit($unit)) {
+            return $this->{"${action}Unit"}($unit, $parameters[0] ?? 1, $overflow);
+        }
+
+        $sixFirstLetters = substr($unit, 0, 6);
+        $factor = -1;
+
+        if ($sixFirstLetters === 'isLast') {
+            $sixFirstLetters = 'isNext';
+            $factor = 1;
+        }
+
+        if ($sixFirstLetters === 'isNext') {
+            $lowerUnit = strtolower(substr($unit, 6));
+
+            if (static::isModifiableUnit($lowerUnit)) {
+                return $this->copy()->addUnit($lowerUnit, $factor, false)->isSameUnit($lowerUnit, ...$parameters);
+            }
+        }
+
+        if ($sixFirstLetters === 'isSame') {
+            try {
+                return $this->isSameUnit(strtolower(substr($unit, 6)), ...$parameters);
+            } catch (BadComparisonUnitException $exception) {
+                // Try next
+            }
+        }
+
+        if (str_starts_with($unit, 'isCurrent')) {
+            try {
+                return $this->isCurrentUnit(strtolower(substr($unit, 9)));
+            } catch (BadComparisonUnitException | BadMethodCallException $exception) {
+                // Try next
+            }
+        }
+
+        if (str_ends_with($method, 'Until')) {
+            try {
+                $unit = static::singularUnit(substr($method, 0, -5));
+
+                return $this->range($parameters[0] ?? $this, $parameters[1] ?? 1, $unit);
+            } catch (InvalidArgumentException $exception) {
+                // Try macros
+            }
+        }
+
+        return static::bindMacroContext($this, function () use (&$method, &$parameters) {
+            $macro = $this->getLocalMacro($method);
+
+            if (!$macro) {
+                foreach ([$this->localGenericMacros ?: [], static::getGenericMacros()] as $list) {
+                    foreach ($list as $callback) {
+                        try {
+                            return $this->executeCallable($callback, $method, ...$parameters);
+                        } catch (BadMethodCallException $exception) {
+                            continue;
+                        }
+                    }
+                }
+
+                if ($this->localStrictModeEnabled ?? static::isStrictModeEnabled()) {
+                    throw new UnknownMethodException($method);
+                }
+
+                return null;
+            }
+
+            return $this->executeCallable($macro, ...$parameters);
+        });
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Difference.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Difference.php
new file mode 100644
index 0000000..b1cdd6e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Difference.php
@@ -0,0 +1,1141 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+use Carbon\CarbonInterface;
+use Carbon\CarbonInterval;
+use Carbon\CarbonPeriod;
+use Carbon\Translator;
+use Closure;
+use DateInterval;
+use DateTimeInterface;
+use ReturnTypeWillChange;
+
+/**
+ * Trait Difference.
+ *
+ * Depends on the following methods:
+ *
+ * @method bool lessThan($date)
+ * @method static copy()
+ * @method static resolveCarbon($date = null)
+ * @method static Translator translator()
+ */
+trait Difference
+{
+    /**
+     * @codeCoverageIgnore
+     *
+     * @param CarbonInterval $diff
+     */
+    protected static function fixNegativeMicroseconds(CarbonInterval $diff)
+    {
+        if ($diff->s !== 0 || $diff->i !== 0 || $diff->h !== 0 || $diff->d !== 0 || $diff->m !== 0 || $diff->y !== 0) {
+            $diff->f = (round($diff->f * 1000000) + 1000000) / 1000000;
+            $diff->s--;
+
+            if ($diff->s < 0) {
+                $diff->s += 60;
+                $diff->i--;
+
+                if ($diff->i < 0) {
+                    $diff->i += 60;
+                    $diff->h--;
+
+                    if ($diff->h < 0) {
+                        $diff->h += 24;
+                        $diff->d--;
+
+                        if ($diff->d < 0) {
+                            $diff->d += 30;
+                            $diff->m--;
+
+                            if ($diff->m < 0) {
+                                $diff->m += 12;
+                                $diff->y--;
+                            }
+                        }
+                    }
+                }
+            }
+
+            return;
+        }
+
+        $diff->f *= -1;
+        $diff->invert();
+    }
+
+    /**
+     * @param DateInterval $diff
+     * @param bool         $absolute
+     *
+     * @return CarbonInterval
+     */
+    protected static function fixDiffInterval(DateInterval $diff, $absolute)
+    {
+        $diff = CarbonInterval::instance($diff);
+
+        // Work-around for https://bugs.php.net/bug.php?id=77145
+        // @codeCoverageIgnoreStart
+        if ($diff->f > 0 && $diff->y === -1 && $diff->m === 11 && $diff->d >= 27 && $diff->h === 23 && $diff->i === 59 && $diff->s === 59) {
+            $diff->y = 0;
+            $diff->m = 0;
+            $diff->d = 0;
+            $diff->h = 0;
+            $diff->i = 0;
+            $diff->s = 0;
+            $diff->f = (1000000 - round($diff->f * 1000000)) / 1000000;
+            $diff->invert();
+        } elseif ($diff->f < 0) {
+            static::fixNegativeMicroseconds($diff);
+        }
+        // @codeCoverageIgnoreEnd
+
+        if ($absolute && $diff->invert) {
+            $diff->invert();
+        }
+
+        return $diff;
+    }
+
+    /**
+     * Get the difference as a DateInterval instance.
+     * Return relative interval (negative if
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return DateInterval
+     */
+    #[ReturnTypeWillChange]
+    public function diff($date = null, $absolute = false)
+    {
+        $other = $this->resolveCarbon($date);
+
+        // Can be removed if https://github.com/derickr/timelib/pull/110
+        // is merged
+        // @codeCoverageIgnoreStart
+        if (version_compare(PHP_VERSION, '8.1.0-dev', '>=') && $other->tz !== $this->tz) {
+            $other = $other->avoidMutation()->tz($this->tz);
+        }
+        // @codeCoverageIgnoreEnd
+
+        return parent::diff($other, (bool) $absolute);
+    }
+
+    /**
+     * Get the difference as a CarbonInterval instance.
+     * Return absolute interval (always positive) unless you pass false to the second argument.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return CarbonInterval
+     */
+    public function diffAsCarbonInterval($date = null, $absolute = true)
+    {
+        return static::fixDiffInterval($this->diff($this->resolveCarbon($date), $absolute), $absolute);
+    }
+
+    /**
+     * Get the difference in years
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInYears($date = null, $absolute = true)
+    {
+        return (int) $this->diff($this->resolveCarbon($date), $absolute)->format('%r%y');
+    }
+
+    /**
+     * Get the difference in quarters rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInQuarters($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInMonths($date, $absolute) / static::MONTHS_PER_QUARTER);
+    }
+
+    /**
+     * Get the difference in months rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMonths($date = null, $absolute = true)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->diffInYears($date, $absolute) * static::MONTHS_PER_YEAR + (int) $this->diff($date, $absolute)->format('%r%m');
+    }
+
+    /**
+     * Get the difference in weeks rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeeks($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInDays($date, $absolute) / static::DAYS_PER_WEEK);
+    }
+
+    /**
+     * Get the difference in days rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInDays($date = null, $absolute = true)
+    {
+        return (int) $this->diff($this->resolveCarbon($date), $absolute)->format('%r%a');
+    }
+
+    /**
+     * Get the difference in days using a filter closure rounded down.
+     *
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInDaysFiltered(Closure $callback, $date = null, $absolute = true)
+    {
+        return $this->diffFiltered(CarbonInterval::day(), $callback, $date, $absolute);
+    }
+
+    /**
+     * Get the difference in hours using a filter closure rounded down.
+     *
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInHoursFiltered(Closure $callback, $date = null, $absolute = true)
+    {
+        return $this->diffFiltered(CarbonInterval::hour(), $callback, $date, $absolute);
+    }
+
+    /**
+     * Get the difference by the given interval using a filter closure.
+     *
+     * @param CarbonInterval                                         $ci       An interval to traverse by
+     * @param Closure                                                $callback
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffFiltered(CarbonInterval $ci, Closure $callback, $date = null, $absolute = true)
+    {
+        $start = $this;
+        $end = $this->resolveCarbon($date);
+        $inverse = false;
+
+        if ($end < $start) {
+            $start = $end;
+            $end = $this;
+            $inverse = true;
+        }
+
+        $options = CarbonPeriod::EXCLUDE_END_DATE | ($this->isMutable() ? 0 : CarbonPeriod::IMMUTABLE);
+        $diff = $ci->toPeriod($start, $end, $options)->filter($callback)->count();
+
+        return $inverse && !$absolute ? -$diff : $diff;
+    }
+
+    /**
+     * Get the difference in weekdays rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeekdays($date = null, $absolute = true)
+    {
+        return $this->diffInDaysFiltered(function (CarbonInterface $date) {
+            return $date->isWeekday();
+        }, $date, $absolute);
+    }
+
+    /**
+     * Get the difference in weekend days using a filter rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInWeekendDays($date = null, $absolute = true)
+    {
+        return $this->diffInDaysFiltered(function (CarbonInterface $date) {
+            return $date->isWeekend();
+        }, $date, $absolute);
+    }
+
+    /**
+     * Get the difference in hours rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInHours($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInSeconds($date, $absolute) / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR);
+    }
+
+    /**
+     * Get the difference in hours rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealHours($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInRealSeconds($date, $absolute) / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR);
+    }
+
+    /**
+     * Get the difference in minutes rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMinutes($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInSeconds($date, $absolute) / static::SECONDS_PER_MINUTE);
+    }
+
+    /**
+     * Get the difference in minutes rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMinutes($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInRealSeconds($date, $absolute) / static::SECONDS_PER_MINUTE);
+    }
+
+    /**
+     * Get the difference in seconds rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInSeconds($date = null, $absolute = true)
+    {
+        $diff = $this->diff($date);
+
+        if ($diff->days === 0) {
+            $diff = static::fixDiffInterval($diff, $absolute);
+        }
+
+        $value = (((($diff->m || $diff->y ? $diff->days : $diff->d) * static::HOURS_PER_DAY) +
+            $diff->h) * static::MINUTES_PER_HOUR +
+            $diff->i) * static::SECONDS_PER_MINUTE +
+            $diff->s;
+
+        return $absolute || !$diff->invert ? $value : -$value;
+    }
+
+    /**
+     * Get the difference in microseconds.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMicroseconds($date = null, $absolute = true)
+    {
+        $diff = $this->diff($date);
+        $value = (int) round(((((($diff->m || $diff->y ? $diff->days : $diff->d) * static::HOURS_PER_DAY) +
+            $diff->h) * static::MINUTES_PER_HOUR +
+            $diff->i) * static::SECONDS_PER_MINUTE +
+            ($diff->f + $diff->s)) * static::MICROSECONDS_PER_SECOND);
+
+        return $absolute || !$diff->invert ? $value : -$value;
+    }
+
+    /**
+     * Get the difference in milliseconds rounded down.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInMilliseconds($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInMicroseconds($date, $absolute) / static::MICROSECONDS_PER_MILLISECOND);
+    }
+
+    /**
+     * Get the difference in seconds using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealSeconds($date = null, $absolute = true)
+    {
+        /** @var CarbonInterface $date */
+        $date = $this->resolveCarbon($date);
+        $value = $date->getTimestamp() - $this->getTimestamp();
+
+        return $absolute ? abs($value) : $value;
+    }
+
+    /**
+     * Get the difference in microseconds using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMicroseconds($date = null, $absolute = true)
+    {
+        /** @var CarbonInterface $date */
+        $date = $this->resolveCarbon($date);
+        $value = ($date->timestamp - $this->timestamp) * static::MICROSECONDS_PER_SECOND +
+            $date->micro - $this->micro;
+
+        return $absolute ? abs($value) : $value;
+    }
+
+    /**
+     * Get the difference in milliseconds rounded down using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return int
+     */
+    public function diffInRealMilliseconds($date = null, $absolute = true)
+    {
+        return (int) ($this->diffInRealMicroseconds($date, $absolute) / static::MICROSECONDS_PER_MILLISECOND);
+    }
+
+    /**
+     * Get the difference in seconds as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInSeconds($date = null, $absolute = true)
+    {
+        return $this->diffInMicroseconds($date, $absolute) / static::MICROSECONDS_PER_SECOND;
+    }
+
+    /**
+     * Get the difference in minutes as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInMinutes($date = null, $absolute = true)
+    {
+        return $this->floatDiffInSeconds($date, $absolute) / static::SECONDS_PER_MINUTE;
+    }
+
+    /**
+     * Get the difference in hours as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInHours($date = null, $absolute = true)
+    {
+        return $this->floatDiffInMinutes($date, $absolute) / static::MINUTES_PER_HOUR;
+    }
+
+    /**
+     * Get the difference in days as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInDays($date = null, $absolute = true)
+    {
+        $hoursDiff = $this->floatDiffInHours($date, $absolute);
+        $interval = $this->diff($date, $absolute);
+
+        if ($interval->y === 0 && $interval->m === 0 && $interval->d === 0) {
+            return $hoursDiff / static::HOURS_PER_DAY;
+        }
+
+        $daysDiff = (int) $interval->format('%r%a');
+
+        return $daysDiff + fmod($hoursDiff, static::HOURS_PER_DAY) / static::HOURS_PER_DAY;
+    }
+
+    /**
+     * Get the difference in weeks as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInWeeks($date = null, $absolute = true)
+    {
+        return $this->floatDiffInDays($date, $absolute) / static::DAYS_PER_WEEK;
+    }
+
+    /**
+     * Get the difference in months as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInMonths($date = null, $absolute = true)
+    {
+        $start = $this;
+        $end = $this->resolveCarbon($date);
+        $ascending = ($start <= $end);
+        $sign = $absolute || $ascending ? 1 : -1;
+        if (!$ascending) {
+            [$start, $end] = [$end, $start];
+        }
+        $monthsDiff = $start->diffInMonths($end);
+        /** @var Carbon|CarbonImmutable $floorEnd */
+        $floorEnd = $start->avoidMutation()->addMonths($monthsDiff);
+
+        if ($floorEnd >= $end) {
+            return $sign * $monthsDiff;
+        }
+
+        /** @var Carbon|CarbonImmutable $startOfMonthAfterFloorEnd */
+        $startOfMonthAfterFloorEnd = $floorEnd->avoidMutation()->addMonth()->startOfMonth();
+
+        if ($startOfMonthAfterFloorEnd > $end) {
+            return $sign * ($monthsDiff + $floorEnd->floatDiffInDays($end) / $floorEnd->daysInMonth);
+        }
+
+        return $sign * ($monthsDiff + $floorEnd->floatDiffInDays($startOfMonthAfterFloorEnd) / $floorEnd->daysInMonth + $startOfMonthAfterFloorEnd->floatDiffInDays($end) / $end->daysInMonth);
+    }
+
+    /**
+     * Get the difference in year as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInYears($date = null, $absolute = true)
+    {
+        $start = $this;
+        $end = $this->resolveCarbon($date);
+        $ascending = ($start <= $end);
+        $sign = $absolute || $ascending ? 1 : -1;
+        if (!$ascending) {
+            [$start, $end] = [$end, $start];
+        }
+        $yearsDiff = $start->diffInYears($end);
+        /** @var Carbon|CarbonImmutable $floorEnd */
+        $floorEnd = $start->avoidMutation()->addYears($yearsDiff);
+
+        if ($floorEnd >= $end) {
+            return $sign * $yearsDiff;
+        }
+
+        /** @var Carbon|CarbonImmutable $startOfYearAfterFloorEnd */
+        $startOfYearAfterFloorEnd = $floorEnd->avoidMutation()->addYear()->startOfYear();
+
+        if ($startOfYearAfterFloorEnd > $end) {
+            return $sign * ($yearsDiff + $floorEnd->floatDiffInDays($end) / $floorEnd->daysInYear);
+        }
+
+        return $sign * ($yearsDiff + $floorEnd->floatDiffInDays($startOfYearAfterFloorEnd) / $floorEnd->daysInYear + $startOfYearAfterFloorEnd->floatDiffInDays($end) / $end->daysInYear);
+    }
+
+    /**
+     * Get the difference in seconds as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealSeconds($date = null, $absolute = true)
+    {
+        return $this->diffInRealMicroseconds($date, $absolute) / static::MICROSECONDS_PER_SECOND;
+    }
+
+    /**
+     * Get the difference in minutes as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealMinutes($date = null, $absolute = true)
+    {
+        return $this->floatDiffInRealSeconds($date, $absolute) / static::SECONDS_PER_MINUTE;
+    }
+
+    /**
+     * Get the difference in hours as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealHours($date = null, $absolute = true)
+    {
+        return $this->floatDiffInRealMinutes($date, $absolute) / static::MINUTES_PER_HOUR;
+    }
+
+    /**
+     * Get the difference in days as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealDays($date = null, $absolute = true)
+    {
+        $date = $this->resolveUTC($date);
+        $utc = $this->avoidMutation()->utc();
+        $hoursDiff = $utc->floatDiffInRealHours($date, $absolute);
+
+        return ($hoursDiff < 0 ? -1 : 1) * $utc->diffInDays($date) + fmod($hoursDiff, static::HOURS_PER_DAY) / static::HOURS_PER_DAY;
+    }
+
+    /**
+     * Get the difference in weeks as float (microsecond-precision).
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealWeeks($date = null, $absolute = true)
+    {
+        return $this->floatDiffInRealDays($date, $absolute) / static::DAYS_PER_WEEK;
+    }
+
+    /**
+     * Get the difference in months as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealMonths($date = null, $absolute = true)
+    {
+        $start = $this;
+        $end = $this->resolveCarbon($date);
+        $ascending = ($start <= $end);
+        $sign = $absolute || $ascending ? 1 : -1;
+        if (!$ascending) {
+            [$start, $end] = [$end, $start];
+        }
+        $monthsDiff = $start->diffInMonths($end);
+        /** @var Carbon|CarbonImmutable $floorEnd */
+        $floorEnd = $start->avoidMutation()->addMonths($monthsDiff);
+
+        if ($floorEnd >= $end) {
+            return $sign * $monthsDiff;
+        }
+
+        /** @var Carbon|CarbonImmutable $startOfMonthAfterFloorEnd */
+        $startOfMonthAfterFloorEnd = $floorEnd->avoidMutation()->addMonth()->startOfMonth();
+
+        if ($startOfMonthAfterFloorEnd > $end) {
+            return $sign * ($monthsDiff + $floorEnd->floatDiffInRealDays($end) / $floorEnd->daysInMonth);
+        }
+
+        return $sign * ($monthsDiff + $floorEnd->floatDiffInRealDays($startOfMonthAfterFloorEnd) / $floorEnd->daysInMonth + $startOfMonthAfterFloorEnd->floatDiffInRealDays($end) / $end->daysInMonth);
+    }
+
+    /**
+     * Get the difference in year as float (microsecond-precision) using timestamps.
+     *
+     * @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
+     * @param bool                                                   $absolute Get the absolute of the difference
+     *
+     * @return float
+     */
+    public function floatDiffInRealYears($date = null, $absolute = true)
+    {
+        $start = $this;
+        $end = $this->resolveCarbon($date);
+        $ascending = ($start <= $end);
+        $sign = $absolute || $ascending ? 1 : -1;
+        if (!$ascending) {
+            [$start, $end] = [$end, $start];
+        }
+        $yearsDiff = $start->diffInYears($end);
+        /** @var Carbon|CarbonImmutable $floorEnd */
+        $floorEnd = $start->avoidMutation()->addYears($yearsDiff);
+
+        if ($floorEnd >= $end) {
+            return $sign * $yearsDiff;
+        }
+
+        /** @var Carbon|CarbonImmutable $startOfYearAfterFloorEnd */
+        $startOfYearAfterFloorEnd = $floorEnd->avoidMutation()->addYear()->startOfYear();
+
+        if ($startOfYearAfterFloorEnd > $end) {
+            return $sign * ($yearsDiff + $floorEnd->floatDiffInRealDays($end) / $floorEnd->daysInYear);
+        }
+
+        return $sign * ($yearsDiff + $floorEnd->floatDiffInRealDays($startOfYearAfterFloorEnd) / $floorEnd->daysInYear + $startOfYearAfterFloorEnd->floatDiffInRealDays($end) / $end->daysInYear);
+    }
+
+    /**
+     * The number of seconds since midnight.
+     *
+     * @return int
+     */
+    public function secondsSinceMidnight()
+    {
+        return $this->diffInSeconds($this->avoidMutation()->startOfDay());
+    }
+
+    /**
+     * The number of seconds until 23:59:59.
+     *
+     * @return int
+     */
+    public function secondsUntilEndOfDay()
+    {
+        return $this->diffInSeconds($this->avoidMutation()->endOfDay());
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @example
+     * ```
+     * echo Carbon::tomorrow()->diffForHumans() . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(['parts' => 2]) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(['parts' => 3, 'join' => true]) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday()) . "\n";
+     * echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday(), ['short' => true]) . "\n";
+     * ```
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function diffForHumans($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        /* @var CarbonInterface $this */
+        if (\is_array($other)) {
+            $other['syntax'] = \array_key_exists('syntax', $other) ? $other['syntax'] : $syntax;
+            $syntax = $other;
+            $other = $syntax['other'] ?? null;
+        }
+
+        $intSyntax = &$syntax;
+        if (\is_array($syntax)) {
+            $syntax['syntax'] = $syntax['syntax'] ?? null;
+            $intSyntax = &$syntax['syntax'];
+        }
+        $intSyntax = (int) ($intSyntax === null ? static::DIFF_RELATIVE_AUTO : $intSyntax);
+        $intSyntax = $intSyntax === static::DIFF_RELATIVE_AUTO && $other === null ? static::DIFF_RELATIVE_TO_NOW : $intSyntax;
+
+        $parts = min(7, max(1, (int) $parts));
+
+        return $this->diffAsCarbonInterval($other, false)
+            ->setLocalTranslator($this->getLocalTranslator())
+            ->forHumans($syntax, (bool) $short, $parts, $options ?? $this->localHumanDiffOptions ?? static::getHumanDiffOptions());
+    }
+
+    /**
+     * @alias diffForHumans
+     *
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function from($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        return $this->diffForHumans($other, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * @alias diffForHumans
+     *
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     */
+    public function since($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        return $this->diffForHumans($other, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given (or now if null given) to current instance.
+     *
+     * When comparing a value in the past to default now:
+     * 1 hour from now
+     * 5 months from now
+     *
+     * When comparing a value in the future to default now:
+     * 1 hour ago
+     * 5 months ago
+     *
+     * When comparing a value in the past to another value:
+     * 1 hour after
+     * 5 months after
+     *
+     * When comparing a value in the future to another value:
+     * 1 hour before
+     * 5 months before
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function to($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        if (!$syntax && !$other) {
+            $syntax = CarbonInterface::DIFF_RELATIVE_TO_NOW;
+        }
+
+        return $this->resolveCarbon($other)->diffForHumans($this, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * @alias to
+     *
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given (or now if null given) to current instance.
+     *
+     * @param Carbon|\DateTimeInterface|string|array|null $other   if array passed, will be used as parameters array, see $syntax below;
+     *                                                             if null passed, now will be used as comparison reference;
+     *                                                             if any other type, it will be converted to date and used as reference.
+     * @param int|array                                   $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                                                             - 'syntax' entry (see below)
+     *                                                             - 'short' entry (see below)
+     *                                                             - 'parts' entry (see below)
+     *                                                             - 'options' entry (see below)
+     *                                                             - 'join' entry determines how to join multiple parts of the string
+     *                                                             `  - if $join is a string, it's used as a joiner glue
+     *                                                             `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                                                             `  - if $join is an array, the first item will be the default glue, and the second item
+     *                                                             `    will be used instead of the glue for the last item
+     *                                                             `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                                                             `  - if $join is missing, a space will be used as glue
+     *                                                             - 'other' entry (see above)
+     *                                                             if int passed, it add modifiers:
+     *                                                             Possible values:
+     *                                                             - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                                                             - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                                                             Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool                                        $short   displays short format of time units
+     * @param int                                         $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int                                         $options human diff options
+     *
+     * @return string
+     */
+    public function until($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        return $this->to($other, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from current
+     * instance to now.
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single unit)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function fromNow($syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        $other = null;
+
+        if ($syntax instanceof DateTimeInterface) {
+            [$other, $syntax, $short, $parts, $options] = array_pad(\func_get_args(), 5, null);
+        }
+
+        return $this->from($other, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given to now
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single part)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function toNow($syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        return $this->to(null, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from an other
+     * instance given to now
+     *
+     * @param int|array $syntax  if array passed, parameters will be extracted from it, the array may contains:
+     *                           - 'syntax' entry (see below)
+     *                           - 'short' entry (see below)
+     *                           - 'parts' entry (see below)
+     *                           - 'options' entry (see below)
+     *                           - 'join' entry determines how to join multiple parts of the string
+     *                           `  - if $join is a string, it's used as a joiner glue
+     *                           `  - if $join is a callable/closure, it get the list of string and should return a string
+     *                           `  - if $join is an array, the first item will be the default glue, and the second item
+     *                           `    will be used instead of the glue for the last item
+     *                           `  - if $join is true, it will be guessed from the locale ('list' translation file entry)
+     *                           `  - if $join is missing, a space will be used as glue
+     *                           if int passed, it add modifiers:
+     *                           Possible values:
+     *                           - CarbonInterface::DIFF_ABSOLUTE          no modifiers
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_NOW   add ago/from now modifier
+     *                           - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
+     *                           Default value: CarbonInterface::DIFF_ABSOLUTE
+     * @param bool      $short   displays short format of time units
+     * @param int       $parts   maximum number of parts to display (default value: 1: single part)
+     * @param int       $options human diff options
+     *
+     * @return string
+     */
+    public function ago($syntax = null, $short = false, $parts = 1, $options = null)
+    {
+        $other = null;
+
+        if ($syntax instanceof DateTimeInterface) {
+            [$other, $syntax, $short, $parts, $options] = array_pad(\func_get_args(), 5, null);
+        }
+
+        return $this->from($other, $syntax, $short, $parts, $options);
+    }
+
+    /**
+     * Get the difference in a human readable format in the current locale from current instance to an other
+     * instance given (or now if null given).
+     *
+     * @return string
+     */
+    public function timespan($other = null, $timezone = null)
+    {
+        if (!$other instanceof DateTimeInterface) {
+            $other = static::parse($other, $timezone);
+        }
+
+        return $this->diffForHumans($other, [
+            'join' => ', ',
+            'syntax' => CarbonInterface::DIFF_ABSOLUTE,
+            'options' => CarbonInterface::NO_ZERO_DIFF,
+            'parts' => -1,
+        ]);
+    }
+
+    /**
+     * Returns either day of week + time (e.g. "Last Friday at 3:30 PM") if reference time is within 7 days,
+     * or a calendar date (e.g. "10/29/2017") otherwise.
+     *
+     * Language, date and time formats will change according to the current locale.
+     *
+     * @param Carbon|\DateTimeInterface|string|null $referenceTime
+     * @param array                                 $formats
+     *
+     * @return string
+     */
+    public function calendar($referenceTime = null, array $formats = [])
+    {
+        /** @var CarbonInterface $current */
+        $current = $this->avoidMutation()->startOfDay();
+        /** @var CarbonInterface $other */
+        $other = $this->resolveCarbon($referenceTime)->avoidMutation()->setTimezone($this->getTimezone())->startOfDay();
+        $diff = $other->diffInDays($current, false);
+        $format = $diff < -6 ? 'sameElse' : (
+            $diff < -1 ? 'lastWeek' : (
+                $diff < 0 ? 'lastDay' : (
+                    $diff < 1 ? 'sameDay' : (
+                        $diff < 2 ? 'nextDay' : (
+                            $diff < 7 ? 'nextWeek' : 'sameElse'
+                        )
+                    )
+                )
+            )
+        );
+        $format = array_merge($this->getCalendarFormats(), $formats)[$format];
+        if ($format instanceof Closure) {
+            $format = $format($current, $other) ?? '';
+        }
+
+        return $this->isoFormat((string) $format);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalRounding.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalRounding.php
new file mode 100644
index 0000000..6f6c9d1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalRounding.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonInterval;
+use Carbon\Exceptions\InvalidIntervalException;
+use DateInterval;
+
+/**
+ * Trait to call rounding methods to interval or the interval of a period.
+ */
+trait IntervalRounding
+{
+    protected function callRoundMethod(string $method, array $parameters)
+    {
+        $action = substr($method, 0, 4);
+
+        if ($action !== 'ceil') {
+            $action = substr($method, 0, 5);
+        }
+
+        if (\in_array($action, ['round', 'floor', 'ceil'])) {
+            return $this->{$action.'Unit'}(substr($method, \strlen($action)), ...$parameters);
+        }
+
+        return null;
+    }
+
+    protected function roundWith($precision, $function)
+    {
+        $unit = 'second';
+
+        if ($precision instanceof DateInterval) {
+            $precision = (string) CarbonInterval::instance($precision);
+        }
+
+        if (\is_string($precision) && preg_match('/^\s*(?<precision>\d+)?\s*(?<unit>\w+)(?<other>\W.*)?$/', $precision, $match)) {
+            if (trim($match['other'] ?? '') !== '') {
+                throw new InvalidIntervalException('Rounding is only possible with single unit intervals.');
+            }
+
+            $precision = (int) ($match['precision'] ?: 1);
+            $unit = $match['unit'];
+        }
+
+        return $this->roundUnit($unit, $precision, $function);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalStep.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalStep.php
new file mode 100644
index 0000000..4882eef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/IntervalStep.php
@@ -0,0 +1,92 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+use Carbon\CarbonInterface;
+use Closure;
+use DateTimeImmutable;
+use DateTimeInterface;
+
+trait IntervalStep
+{
+    /**
+     * Step to apply instead of a fixed interval to get the new date.
+     *
+     * @var Closure|null
+     */
+    protected $step;
+
+    /**
+     * Get the dynamic step in use.
+     *
+     * @return Closure
+     */
+    public function getStep(): ?Closure
+    {
+        return $this->step;
+    }
+
+    /**
+     * Set a step to apply instead of a fixed interval to get the new date.
+     *
+     * Or pass null to switch to fixed interval.
+     *
+     * @param Closure|null $step
+     */
+    public function setStep(?Closure $step): void
+    {
+        $this->step = $step;
+    }
+
+    /**
+     * Take a date and apply either the step if set, or the current interval else.
+     *
+     * The interval/step is applied negatively (typically subtraction instead of addition) if $negated is true.
+     *
+     * @param DateTimeInterface $dateTime
+     * @param bool              $negated
+     *
+     * @return CarbonInterface
+     */
+    public function convertDate(DateTimeInterface $dateTime, bool $negated = false): CarbonInterface
+    {
+        /** @var CarbonInterface $carbonDate */
+        $carbonDate = $dateTime instanceof CarbonInterface ? $dateTime : $this->resolveCarbon($dateTime);
+
+        if ($this->step) {
+            return $carbonDate->setDateTimeFrom(($this->step)($carbonDate->avoidMutation(), $negated));
+        }
+
+        if ($negated) {
+            return $carbonDate->rawSub($this);
+        }
+
+        return $carbonDate->rawAdd($this);
+    }
+
+    /**
+     * Convert DateTimeImmutable instance to CarbonImmutable instance and DateTime instance to Carbon instance.
+     *
+     * @param DateTimeInterface $dateTime
+     *
+     * @return Carbon|CarbonImmutable
+     */
+    private function resolveCarbon(DateTimeInterface $dateTime)
+    {
+        if ($dateTime instanceof DateTimeImmutable) {
+            return CarbonImmutable::instance($dateTime);
+        }
+
+        return Carbon::instance($dateTime);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php
new file mode 100644
index 0000000..9162dc9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php
@@ -0,0 +1,808 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonInterface;
+use Carbon\Exceptions\InvalidTypeException;
+use Carbon\Exceptions\NotLocaleAwareException;
+use Carbon\Language;
+use Carbon\Translator;
+use Closure;
+use Symfony\Component\Translation\TranslatorBagInterface;
+use Symfony\Component\Translation\TranslatorInterface;
+use Symfony\Contracts\Translation\LocaleAwareInterface;
+use Symfony\Contracts\Translation\TranslatorInterface as ContractsTranslatorInterface;
+
+if (!interface_exists('Symfony\\Component\\Translation\\TranslatorInterface')) {
+    class_alias(
+        'Symfony\\Contracts\\Translation\\TranslatorInterface',
+        'Symfony\\Component\\Translation\\TranslatorInterface'
+    );
+}
+
+/**
+ * Trait Localization.
+ *
+ * Embed default and locale translators and translation base methods.
+ */
+trait Localization
+{
+    /**
+     * Default translator.
+     *
+     * @var \Symfony\Component\Translation\TranslatorInterface
+     */
+    protected static $translator;
+
+    /**
+     * Specific translator of the current instance.
+     *
+     * @var \Symfony\Component\Translation\TranslatorInterface
+     */
+    protected $localTranslator;
+
+    /**
+     * Options for diffForHumans().
+     *
+     * @var int
+     */
+    protected static $humanDiffOptions = CarbonInterface::NO_ZERO_DIFF;
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOptions
+     */
+    public static function setHumanDiffOptions($humanDiffOptions)
+    {
+        static::$humanDiffOptions = $humanDiffOptions;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOption
+     */
+    public static function enableHumanDiffOption($humanDiffOption)
+    {
+        static::$humanDiffOptions = static::getHumanDiffOptions() | $humanDiffOption;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * @param int $humanDiffOption
+     */
+    public static function disableHumanDiffOption($humanDiffOption)
+    {
+        static::$humanDiffOptions = static::getHumanDiffOptions() & ~$humanDiffOption;
+    }
+
+    /**
+     * Return default humanDiff() options (merged flags as integer).
+     *
+     * @return int
+     */
+    public static function getHumanDiffOptions()
+    {
+        return static::$humanDiffOptions;
+    }
+
+    /**
+     * Get the default translator instance in use.
+     *
+     * @return \Symfony\Component\Translation\TranslatorInterface
+     */
+    public static function getTranslator()
+    {
+        return static::translator();
+    }
+
+    /**
+     * Set the default translator instance to use.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return void
+     */
+    public static function setTranslator(TranslatorInterface $translator)
+    {
+        static::$translator = $translator;
+    }
+
+    /**
+     * Return true if the current instance has its own translator.
+     *
+     * @return bool
+     */
+    public function hasLocalTranslator()
+    {
+        return isset($this->localTranslator);
+    }
+
+    /**
+     * Get the translator of the current instance or the default if none set.
+     *
+     * @return \Symfony\Component\Translation\TranslatorInterface
+     */
+    public function getLocalTranslator()
+    {
+        return $this->localTranslator ?: static::translator();
+    }
+
+    /**
+     * Set the translator for the current instance.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return $this
+     */
+    public function setLocalTranslator(TranslatorInterface $translator)
+    {
+        $this->localTranslator = $translator;
+
+        return $this;
+    }
+
+    /**
+     * Returns raw translation message for a given key.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator the translator to use
+     * @param string                                             $key        key to find
+     * @param string|null                                        $locale     current locale used if null
+     * @param string|null                                        $default    default value if translation returns the key
+     *
+     * @return string
+     */
+    public static function getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null)
+    {
+        if (!($translator instanceof TranslatorBagInterface && $translator instanceof TranslatorInterface)) {
+            throw new InvalidTypeException(
+                'Translator does not implement '.TranslatorInterface::class.' and '.TranslatorBagInterface::class.'. '.
+                (\is_object($translator) ? \get_class($translator) : \gettype($translator)).' has been given.'
+            );
+        }
+
+        if (!$locale && $translator instanceof LocaleAwareInterface) {
+            $locale = $translator->getLocale();
+        }
+
+        $result = $translator->getCatalogue($locale)->get($key);
+
+        return $result === $key ? $default : $result;
+    }
+
+    /**
+     * Returns raw translation message for a given key.
+     *
+     * @param string                                             $key        key to find
+     * @param string|null                                        $locale     current locale used if null
+     * @param string|null                                        $default    default value if translation returns the key
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator an optional translator to use
+     *
+     * @return string
+     */
+    public function getTranslationMessage(string $key, ?string $locale = null, ?string $default = null, $translator = null)
+    {
+        return static::getTranslationMessageWith($translator ?: $this->getLocalTranslator(), $key, $locale, $default);
+    }
+
+    /**
+     * Translate using translation string or callback available.
+     *
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     * @param string                                             $key
+     * @param array                                              $parameters
+     * @param null                                               $number
+     *
+     * @return string
+     */
+    public static function translateWith(TranslatorInterface $translator, string $key, array $parameters = [], $number = null): string
+    {
+        $message = static::getTranslationMessageWith($translator, $key, null, $key);
+        if ($message instanceof Closure) {
+            return (string) $message(...array_values($parameters));
+        }
+
+        if ($number !== null) {
+            $parameters['%count%'] = $number;
+        }
+        if (isset($parameters['%count%'])) {
+            $parameters[':count'] = $parameters['%count%'];
+        }
+
+        // @codeCoverageIgnoreStart
+        $choice = $translator instanceof ContractsTranslatorInterface
+            ? $translator->trans($key, $parameters)
+            : $translator->transChoice($key, $number, $parameters);
+        // @codeCoverageIgnoreEnd
+
+        return (string) $choice;
+    }
+
+    /**
+     * Translate using translation string or callback available.
+     *
+     * @param string                                             $key
+     * @param array                                              $parameters
+     * @param string|int|float|null                              $number
+     * @param \Symfony\Component\Translation\TranslatorInterface $translator
+     *
+     * @return string
+     */
+    public function translate(string $key, array $parameters = [], $number = null, ?TranslatorInterface $translator = null, bool $altNumbers = false): string
+    {
+        $translation = static::translateWith($translator ?: $this->getLocalTranslator(), $key, $parameters, $number);
+
+        if ($number !== null && $altNumbers) {
+            return str_replace($number, $this->translateNumber($number), $translation);
+        }
+
+        return $translation;
+    }
+
+    /**
+     * Returns the alternative number for a given integer if available in the current locale.
+     *
+     * @param int $number
+     *
+     * @return string
+     */
+    public function translateNumber(int $number): string
+    {
+        $translateKey = "alt_numbers.$number";
+        $symbol = $this->translate($translateKey);
+
+        if ($symbol !== $translateKey) {
+            return $symbol;
+        }
+
+        if ($number > 99 && $this->translate('alt_numbers.99') !== 'alt_numbers.99') {
+            $start = '';
+            foreach ([10000, 1000, 100] as $exp) {
+                $key = "alt_numbers_pow.$exp";
+                if ($number >= $exp && $number < $exp * 10 && ($pow = $this->translate($key)) !== $key) {
+                    $unit = floor($number / $exp);
+                    $number -= $unit * $exp;
+                    $start .= ($unit > 1 ? $this->translate("alt_numbers.$unit") : '').$pow;
+                }
+            }
+            $result = '';
+            while ($number) {
+                $chunk = $number % 100;
+                $result = $this->translate("alt_numbers.$chunk").$result;
+                $number = floor($number / 100);
+            }
+
+            return "$start$result";
+        }
+
+        if ($number > 9 && $this->translate('alt_numbers.9') !== 'alt_numbers.9') {
+            $result = '';
+            while ($number) {
+                $chunk = $number % 10;
+                $result = $this->translate("alt_numbers.$chunk").$result;
+                $number = floor($number / 10);
+            }
+
+            return $result;
+        }
+
+        return (string) $number;
+    }
+
+    /**
+     * Translate a time string from a locale to an other.
+     *
+     * @param string      $timeString date/time/duration string to translate (may also contain English)
+     * @param string|null $from       input locale of the $timeString parameter (`Carbon::getLocale()` by default)
+     * @param string|null $to         output locale of the result returned (`"en"` by default)
+     * @param int         $mode       specify what to translate with options:
+     *                                - CarbonInterface::TRANSLATE_ALL (default)
+     *                                - CarbonInterface::TRANSLATE_MONTHS
+     *                                - CarbonInterface::TRANSLATE_DAYS
+     *                                - CarbonInterface::TRANSLATE_UNITS
+     *                                - CarbonInterface::TRANSLATE_MERIDIEM
+     *                                You can use pipe to group: CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS
+     *
+     * @return string
+     */
+    public static function translateTimeString($timeString, $from = null, $to = null, $mode = CarbonInterface::TRANSLATE_ALL)
+    {
+        // Fallback source and destination locales
+        $from = $from ?: static::getLocale();
+        $to = $to ?: 'en';
+
+        if ($from === $to) {
+            return $timeString;
+        }
+
+        // Standardize apostrophe
+        $timeString = strtr($timeString, ['’' => "'"]);
+
+        $fromTranslations = [];
+        $toTranslations = [];
+
+        foreach (['from', 'to'] as $key) {
+            $language = $$key;
+            $translator = Translator::get($language);
+            $translations = $translator->getMessages();
+
+            if (!isset($translations[$language])) {
+                return $timeString;
+            }
+
+            $translationKey = $key.'Translations';
+            $messages = $translations[$language];
+            $months = $messages['months'] ?? [];
+            $weekdays = $messages['weekdays'] ?? [];
+            $meridiem = $messages['meridiem'] ?? ['AM', 'PM'];
+
+            if ($key === 'from') {
+                foreach (['months', 'weekdays'] as $variable) {
+                    $list = $messages[$variable.'_standalone'] ?? null;
+
+                    if ($list) {
+                        foreach ($$variable as $index => &$name) {
+                            $name .= '|'.$messages[$variable.'_standalone'][$index];
+                        }
+                    }
+                }
+            }
+
+            $$translationKey = array_merge(
+                $mode & CarbonInterface::TRANSLATE_MONTHS ? static::getTranslationArray($months, 12, $timeString) : [],
+                $mode & CarbonInterface::TRANSLATE_MONTHS ? static::getTranslationArray($messages['months_short'] ?? [], 12, $timeString) : [],
+                $mode & CarbonInterface::TRANSLATE_DAYS ? static::getTranslationArray($weekdays, 7, $timeString) : [],
+                $mode & CarbonInterface::TRANSLATE_DAYS ? static::getTranslationArray($messages['weekdays_short'] ?? [], 7, $timeString) : [],
+                $mode & CarbonInterface::TRANSLATE_DIFF ? static::translateWordsByKeys([
+                    'diff_now',
+                    'diff_today',
+                    'diff_yesterday',
+                    'diff_tomorrow',
+                    'diff_before_yesterday',
+                    'diff_after_tomorrow',
+                ], $messages, $key) : [],
+                $mode & CarbonInterface::TRANSLATE_UNITS ? static::translateWordsByKeys([
+                    'year',
+                    'month',
+                    'week',
+                    'day',
+                    'hour',
+                    'minute',
+                    'second',
+                ], $messages, $key) : [],
+                $mode & CarbonInterface::TRANSLATE_MERIDIEM ? array_map(function ($hour) use ($meridiem) {
+                    if (\is_array($meridiem)) {
+                        return $meridiem[$hour < 12 ? 0 : 1];
+                    }
+
+                    return $meridiem($hour, 0, false);
+                }, range(0, 23)) : []
+            );
+        }
+
+        return substr(preg_replace_callback('/(?<=[\d\s+.\/,_-])('.implode('|', $fromTranslations).')(?=[\d\s+.\/,_-])/iu', function ($match) use ($fromTranslations, $toTranslations) {
+            [$chunk] = $match;
+
+            foreach ($fromTranslations as $index => $word) {
+                if (preg_match("/^$word\$/iu", $chunk)) {
+                    return $toTranslations[$index] ?? '';
+                }
+            }
+
+            return $chunk; // @codeCoverageIgnore
+        }, " $timeString "), 1, -1);
+    }
+
+    /**
+     * Translate a time string from the current locale (`$date->locale()`) to an other.
+     *
+     * @param string      $timeString time string to translate
+     * @param string|null $to         output locale of the result returned ("en" by default)
+     *
+     * @return string
+     */
+    public function translateTimeStringTo($timeString, $to = null)
+    {
+        return static::translateTimeString($timeString, $this->getTranslatorLocale(), $to);
+    }
+
+    /**
+     * Get/set the locale for the current instance.
+     *
+     * @param string|null $locale
+     * @param string      ...$fallbackLocales
+     *
+     * @return $this|string
+     */
+    public function locale(string $locale = null, ...$fallbackLocales)
+    {
+        if ($locale === null) {
+            return $this->getTranslatorLocale();
+        }
+
+        if (!$this->localTranslator || $this->getTranslatorLocale($this->localTranslator) !== $locale) {
+            $translator = Translator::get($locale);
+
+            if (!empty($fallbackLocales)) {
+                $translator->setFallbackLocales($fallbackLocales);
+
+                foreach ($fallbackLocales as $fallbackLocale) {
+                    $messages = Translator::get($fallbackLocale)->getMessages();
+
+                    if (isset($messages[$fallbackLocale])) {
+                        $translator->setMessages($fallbackLocale, $messages[$fallbackLocale]);
+                    }
+                }
+            }
+
+            $this->setLocalTranslator($translator);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Get the current translator locale.
+     *
+     * @return string
+     */
+    public static function getLocale()
+    {
+        return static::getLocaleAwareTranslator()->getLocale();
+    }
+
+    /**
+     * Set the current translator locale and indicate if the source locale file exists.
+     * Pass 'auto' as locale to use closest language from the current LC_TIME locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function setLocale($locale)
+    {
+        return static::getLocaleAwareTranslator()->setLocale($locale) !== false;
+    }
+
+    /**
+     * Set the fallback locale.
+     *
+     * @see https://symfony.com/doc/current/components/translation.html#fallback-locales
+     *
+     * @param string $locale
+     */
+    public static function setFallbackLocale($locale)
+    {
+        $translator = static::getTranslator();
+
+        if (method_exists($translator, 'setFallbackLocales')) {
+            $translator->setFallbackLocales([$locale]);
+
+            if ($translator instanceof Translator) {
+                $preferredLocale = $translator->getLocale();
+                $translator->setMessages($preferredLocale, array_replace_recursive(
+                    $translator->getMessages()[$locale] ?? [],
+                    Translator::get($locale)->getMessages()[$locale] ?? [],
+                    $translator->getMessages($preferredLocale)
+                ));
+            }
+        }
+    }
+
+    /**
+     * Get the fallback locale.
+     *
+     * @see https://symfony.com/doc/current/components/translation.html#fallback-locales
+     *
+     * @return string|null
+     */
+    public static function getFallbackLocale()
+    {
+        $translator = static::getTranslator();
+
+        if (method_exists($translator, 'getFallbackLocales')) {
+            return $translator->getFallbackLocales()[0] ?? null;
+        }
+
+        return null;
+    }
+
+    /**
+     * Set the current locale to the given, execute the passed function, reset the locale to previous one,
+     * then return the result of the closure (or null if the closure was void).
+     *
+     * @param string   $locale locale ex. en
+     * @param callable $func
+     *
+     * @return mixed
+     */
+    public static function executeWithLocale($locale, $func)
+    {
+        $currentLocale = static::getLocale();
+        $result = $func(static::setLocale($locale) ? static::getLocale() : false, static::translator());
+        static::setLocale($currentLocale);
+
+        return $result;
+    }
+
+    /**
+     * Returns true if the given locale is internally supported and has short-units support.
+     * Support is considered enabled if either year, day or hour has a short variant translated.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasShortUnits($locale)
+    {
+        return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
+            return $newLocale &&
+                (
+                    ($y = static::translateWith($translator, 'y')) !== 'y' &&
+                    $y !== static::translateWith($translator, 'year')
+                ) || (
+                    ($y = static::translateWith($translator, 'd')) !== 'd' &&
+                    $y !== static::translateWith($translator, 'day')
+                ) || (
+                    ($y = static::translateWith($translator, 'h')) !== 'h' &&
+                    $y !== static::translateWith($translator, 'hour')
+                );
+        });
+    }
+
+    /**
+     * Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
+     * Support is considered enabled if the 4 sentences are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffSyntax($locale)
+    {
+        return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
+            if (!$newLocale) {
+                return false;
+            }
+
+            foreach (['ago', 'from_now', 'before', 'after'] as $key) {
+                if ($translator instanceof TranslatorBagInterface && $translator->getCatalogue($newLocale)->get($key) instanceof Closure) {
+                    continue;
+                }
+
+                if ($translator->trans($key) === $key) {
+                    return false;
+                }
+            }
+
+            return true;
+        });
+    }
+
+    /**
+     * Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
+     * Support is considered enabled if the 3 words are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffOneDayWords($locale)
+    {
+        return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
+            return $newLocale &&
+                $translator->trans('diff_now') !== 'diff_now' &&
+                $translator->trans('diff_yesterday') !== 'diff_yesterday' &&
+                $translator->trans('diff_tomorrow') !== 'diff_tomorrow';
+        });
+    }
+
+    /**
+     * Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
+     * Support is considered enabled if the 2 words are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasDiffTwoDayWords($locale)
+    {
+        return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
+            return $newLocale &&
+                $translator->trans('diff_before_yesterday') !== 'diff_before_yesterday' &&
+                $translator->trans('diff_after_tomorrow') !== 'diff_after_tomorrow';
+        });
+    }
+
+    /**
+     * Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
+     * Support is considered enabled if the 4 sentences are translated in the given locale.
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public static function localeHasPeriodSyntax($locale)
+    {
+        return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
+            return $newLocale &&
+                $translator->trans('period_recurrences') !== 'period_recurrences' &&
+                $translator->trans('period_interval') !== 'period_interval' &&
+                $translator->trans('period_start_date') !== 'period_start_date' &&
+                $translator->trans('period_end_date') !== 'period_end_date';
+        });
+    }
+
+    /**
+     * Returns the list of internally available locales and already loaded custom locales.
+     * (It will ignore custom translator dynamic loading.)
+     *
+     * @return array
+     */
+    public static function getAvailableLocales()
+    {
+        $translator = static::getLocaleAwareTranslator();
+
+        return $translator instanceof Translator
+            ? $translator->getAvailableLocales()
+            : [$translator->getLocale()];
+    }
+
+    /**
+     * Returns list of Language object for each available locale. This object allow you to get the ISO name, native
+     * name, region and variant of the locale.
+     *
+     * @return Language[]
+     */
+    public static function getAvailableLocalesInfo()
+    {
+        $languages = [];
+        foreach (static::getAvailableLocales() as $id) {
+            $languages[$id] = new Language($id);
+        }
+
+        return $languages;
+    }
+
+    /**
+     * Initialize the default translator instance if necessary.
+     *
+     * @return \Symfony\Component\Translation\TranslatorInterface
+     */
+    protected static function translator()
+    {
+        if (static::$translator === null) {
+            static::$translator = Translator::get();
+        }
+
+        return static::$translator;
+    }
+
+    /**
+     * Get the locale of a given translator.
+     *
+     * If null or omitted, current local translator is used.
+     * If no local translator is in use, current global translator is used.
+     *
+     * @param null $translator
+     *
+     * @return string|null
+     */
+    protected function getTranslatorLocale($translator = null): ?string
+    {
+        if (\func_num_args() === 0) {
+            $translator = $this->getLocalTranslator();
+        }
+
+        $translator = static::getLocaleAwareTranslator($translator);
+
+        return $translator ? $translator->getLocale() : null;
+    }
+
+    /**
+     * Throw an error if passed object is not LocaleAwareInterface.
+     *
+     * @param LocaleAwareInterface|null $translator
+     *
+     * @return LocaleAwareInterface|null
+     */
+    protected static function getLocaleAwareTranslator($translator = null)
+    {
+        if (\func_num_args() === 0) {
+            $translator = static::translator();
+        }
+
+        if ($translator && !($translator instanceof LocaleAwareInterface || method_exists($translator, 'getLocale'))) {
+            throw new NotLocaleAwareException($translator);
+        }
+
+        return $translator;
+    }
+
+    /**
+     * Return the word cleaned from its translation codes.
+     *
+     * @param string $word
+     *
+     * @return string
+     */
+    private static function cleanWordFromTranslationString($word)
+    {
+        $word = str_replace([':count', '%count', ':time'], '', $word);
+        $word = strtr($word, ['’' => "'"]);
+        $word = preg_replace('/({\d+(,(\d+|Inf))?}|[\[\]]\d+(,(\d+|Inf))?[\[\]])/', '', $word);
+
+        return trim($word);
+    }
+
+    /**
+     * Translate a list of words.
+     *
+     * @param string[] $keys     keys to translate.
+     * @param string[] $messages messages bag handling translations.
+     * @param string   $key      'to' (to get the translation) or 'from' (to get the detection RegExp pattern).
+     *
+     * @return string[]
+     */
+    private static function translateWordsByKeys($keys, $messages, $key): array
+    {
+        return array_map(function ($wordKey) use ($messages, $key) {
+            $message = $key === 'from' && isset($messages[$wordKey.'_regexp'])
+                ? $messages[$wordKey.'_regexp']
+                : ($messages[$wordKey] ?? null);
+
+            if (!$message) {
+                return '>>DO NOT REPLACE<<';
+            }
+
+            $parts = explode('|', $message);
+
+            return $key === 'to'
+                ? static::cleanWordFromTranslationString(end($parts))
+                : '(?:'.implode('|', array_map([static::class, 'cleanWordFromTranslationString'], $parts)).')';
+        }, $keys);
+    }
+
+    /**
+     * Get an array of translations based on the current date.
+     *
+     * @param callable $translation
+     * @param int      $length
+     * @param string   $timeString
+     *
+     * @return string[]
+     */
+    private static function getTranslationArray($translation, $length, $timeString): array
+    {
+        $filler = '>>DO NOT REPLACE<<';
+
+        if (\is_array($translation)) {
+            return array_pad($translation, $length, $filler);
+        }
+
+        $list = [];
+        $date = static::now();
+
+        for ($i = 0; $i < $length; $i++) {
+            $list[] = $translation($date, $timeString, $i) ?? $filler;
+        }
+
+        return $list;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Macro.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Macro.php
new file mode 100644
index 0000000..d413526
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Macro.php
@@ -0,0 +1,135 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+/**
+ * Trait Macros.
+ *
+ * Allows users to register macros within the Carbon class.
+ */
+trait Macro
+{
+    use Mixin;
+
+    /**
+     * The registered macros.
+     *
+     * @var array
+     */
+    protected static $globalMacros = [];
+
+    /**
+     * The registered generic macros.
+     *
+     * @var array
+     */
+    protected static $globalGenericMacros = [];
+
+    /**
+     * Register a custom macro.
+     *
+     * @example
+     * ```
+     * $userSettings = [
+     *   'locale' => 'pt',
+     *   'timezone' => 'America/Sao_Paulo',
+     * ];
+     * Carbon::macro('userFormat', function () use ($userSettings) {
+     *   return $this->copy()->locale($userSettings['locale'])->tz($userSettings['timezone'])->calendar();
+     * });
+     * echo Carbon::yesterday()->hours(11)->userFormat();
+     * ```
+     *
+     * @param string          $name
+     * @param object|callable $macro
+     *
+     * @return void
+     */
+    public static function macro($name, $macro)
+    {
+        static::$globalMacros[$name] = $macro;
+    }
+
+    /**
+     * Remove all macros and generic macros.
+     */
+    public static function resetMacros()
+    {
+        static::$globalMacros = [];
+        static::$globalGenericMacros = [];
+    }
+
+    /**
+     * Register a custom macro.
+     *
+     * @param object|callable $macro
+     * @param int             $priority marco with higher priority is tried first
+     *
+     * @return void
+     */
+    public static function genericMacro($macro, $priority = 0)
+    {
+        if (!isset(static::$globalGenericMacros[$priority])) {
+            static::$globalGenericMacros[$priority] = [];
+            krsort(static::$globalGenericMacros, SORT_NUMERIC);
+        }
+
+        static::$globalGenericMacros[$priority][] = $macro;
+    }
+
+    /**
+     * Checks if macro is registered globally.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public static function hasMacro($name)
+    {
+        return isset(static::$globalMacros[$name]);
+    }
+
+    /**
+     * Get the raw callable macro registered globally for a given name.
+     *
+     * @param string $name
+     *
+     * @return callable|null
+     */
+    public static function getMacro($name)
+    {
+        return static::$globalMacros[$name] ?? null;
+    }
+
+    /**
+     * Checks if macro is registered globally or locally.
+     *
+     * @param string $name
+     *
+     * @return bool
+     */
+    public function hasLocalMacro($name)
+    {
+        return ($this->localMacros && isset($this->localMacros[$name])) || static::hasMacro($name);
+    }
+
+    /**
+     * Get the raw callable macro registered globally or locally for a given name.
+     *
+     * @param string $name
+     *
+     * @return callable|null
+     */
+    public function getLocalMacro($name)
+    {
+        return ($this->localMacros ?? [])[$name] ?? static::getMacro($name);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mixin.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mixin.php
new file mode 100644
index 0000000..b9c868d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mixin.php
@@ -0,0 +1,190 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Closure;
+use Generator;
+use ReflectionClass;
+use ReflectionException;
+use ReflectionMethod;
+use Throwable;
+
+/**
+ * Trait Mixin.
+ *
+ * Allows mixing in entire classes with multiple macros.
+ */
+trait Mixin
+{
+    /**
+     * Stack of macro instance contexts.
+     *
+     * @var array
+     */
+    protected static $macroContextStack = [];
+
+    /**
+     * Mix another object into the class.
+     *
+     * @example
+     * ```
+     * Carbon::mixin(new class {
+     *   public function addMoon() {
+     *     return function () {
+     *       return $this->addDays(30);
+     *     };
+     *   }
+     *   public function subMoon() {
+     *     return function () {
+     *       return $this->subDays(30);
+     *     };
+     *   }
+     * });
+     * $fullMoon = Carbon::create('2018-12-22');
+     * $nextFullMoon = $fullMoon->addMoon();
+     * $blackMoon = Carbon::create('2019-01-06');
+     * $previousBlackMoon = $blackMoon->subMoon();
+     * echo "$nextFullMoon\n";
+     * echo "$previousBlackMoon\n";
+     * ```
+     *
+     * @param object|string $mixin
+     *
+     * @throws ReflectionException
+     *
+     * @return void
+     */
+    public static function mixin($mixin)
+    {
+        \is_string($mixin) && trait_exists($mixin)
+            ? static::loadMixinTrait($mixin)
+            : static::loadMixinClass($mixin);
+    }
+
+    /**
+     * @param object|string $mixin
+     *
+     * @throws ReflectionException
+     */
+    private static function loadMixinClass($mixin)
+    {
+        $methods = (new ReflectionClass($mixin))->getMethods(
+            ReflectionMethod::IS_PUBLIC | ReflectionMethod::IS_PROTECTED
+        );
+
+        foreach ($methods as $method) {
+            if ($method->isConstructor() || $method->isDestructor()) {
+                continue;
+            }
+
+            $method->setAccessible(true);
+
+            static::macro($method->name, $method->invoke($mixin));
+        }
+    }
+
+    /**
+     * @param string $trait
+     */
+    private static function loadMixinTrait($trait)
+    {
+        $context = eval(self::getAnonymousClassCodeForTrait($trait));
+        $className = \get_class($context);
+
+        foreach (self::getMixableMethods($context) as $name) {
+            $closureBase = Closure::fromCallable([$context, $name]);
+
+            static::macro($name, function () use ($closureBase, $className) {
+                /** @phpstan-ignore-next-line */
+                $context = isset($this) ? $this->cast($className) : new $className();
+
+                try {
+                    // @ is required to handle error if not converted into exceptions
+                    $closure = @$closureBase->bindTo($context);
+                } catch (Throwable $throwable) { // @codeCoverageIgnore
+                    $closure = $closureBase; // @codeCoverageIgnore
+                }
+
+                // in case of errors not converted into exceptions
+                $closure = $closure ?? $closureBase;
+
+                return $closure(...\func_get_args());
+            });
+        }
+    }
+
+    private static function getAnonymousClassCodeForTrait(string $trait)
+    {
+        return 'return new class() extends '.static::class.' {use '.$trait.';};';
+    }
+
+    private static function getMixableMethods(self $context): Generator
+    {
+        foreach (get_class_methods($context) as $name) {
+            if (method_exists(static::class, $name)) {
+                continue;
+            }
+
+            yield $name;
+        }
+    }
+
+    /**
+     * Stack a Carbon context from inside calls of self::this() and execute a given action.
+     *
+     * @param static|null $context
+     * @param callable    $callable
+     *
+     * @throws Throwable
+     *
+     * @return mixed
+     */
+    protected static function bindMacroContext($context, callable $callable)
+    {
+        static::$macroContextStack[] = $context;
+        $exception = null;
+        $result = null;
+
+        try {
+            $result = $callable();
+        } catch (Throwable $throwable) {
+            $exception = $throwable;
+        }
+
+        array_pop(static::$macroContextStack);
+
+        if ($exception) {
+            throw $exception;
+        }
+
+        return $result;
+    }
+
+    /**
+     * Return the current context from inside a macro callee or a null if static.
+     *
+     * @return static|null
+     */
+    protected static function context()
+    {
+        return end(static::$macroContextStack) ?: null;
+    }
+
+    /**
+     * Return the current context from inside a macro callee or a new one if static.
+     *
+     * @return static
+     */
+    protected static function this()
+    {
+        return end(static::$macroContextStack) ?: new static();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Modifiers.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Modifiers.php
new file mode 100644
index 0000000..2fd6426
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Modifiers.php
@@ -0,0 +1,469 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonInterface;
+use ReturnTypeWillChange;
+
+/**
+ * Trait Modifiers.
+ *
+ * Returns dates relative to current date using modifier short-hand.
+ */
+trait Modifiers
+{
+    /**
+     * Midday/noon hour.
+     *
+     * @var int
+     */
+    protected static $midDayAt = 12;
+
+    /**
+     * get midday/noon hour
+     *
+     * @return int
+     */
+    public static function getMidDayAt()
+    {
+        return static::$midDayAt;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather consider mid-day is always 12pm, then if you need to test if it's an other
+     *             hour, test it explicitly:
+     *                 $date->format('G') == 13
+     *             or to set explicitly to a given hour:
+     *                 $date->setTime(13, 0, 0, 0)
+     *
+     * Set midday/noon hour
+     *
+     * @param int $hour midday hour
+     *
+     * @return void
+     */
+    public static function setMidDayAt($hour)
+    {
+        static::$midDayAt = $hour;
+    }
+
+    /**
+     * Modify to midday, default to self::$midDayAt
+     *
+     * @return static
+     */
+    public function midDay()
+    {
+        return $this->setTime(static::$midDayAt, 0, 0, 0);
+    }
+
+    /**
+     * Modify to the next occurrence of a given modifier such as a day of
+     * the week. If no modifier is provided, modify to the next occurrence
+     * of the current day of the week. Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param string|int|null $modifier
+     *
+     * @return static
+     */
+    public function next($modifier = null)
+    {
+        if ($modifier === null) {
+            $modifier = $this->dayOfWeek;
+        }
+
+        return $this->change(
+            'next '.(\is_string($modifier) ? $modifier : static::$days[$modifier])
+        );
+    }
+
+    /**
+     * Go forward or backward to the next week- or weekend-day.
+     *
+     * @param bool $weekday
+     * @param bool $forward
+     *
+     * @return static
+     */
+    private function nextOrPreviousDay($weekday = true, $forward = true)
+    {
+        /** @var CarbonInterface $date */
+        $date = $this;
+        $step = $forward ? 1 : -1;
+
+        do {
+            $date = $date->addDays($step);
+        } while ($weekday ? $date->isWeekend() : $date->isWeekday());
+
+        return $date;
+    }
+
+    /**
+     * Go forward to the next weekday.
+     *
+     * @return static
+     */
+    public function nextWeekday()
+    {
+        return $this->nextOrPreviousDay();
+    }
+
+    /**
+     * Go backward to the previous weekday.
+     *
+     * @return static
+     */
+    public function previousWeekday()
+    {
+        return $this->nextOrPreviousDay(true, false);
+    }
+
+    /**
+     * Go forward to the next weekend day.
+     *
+     * @return static
+     */
+    public function nextWeekendDay()
+    {
+        return $this->nextOrPreviousDay(false);
+    }
+
+    /**
+     * Go backward to the previous weekend day.
+     *
+     * @return static
+     */
+    public function previousWeekendDay()
+    {
+        return $this->nextOrPreviousDay(false, false);
+    }
+
+    /**
+     * Modify to the previous occurrence of a given modifier such as a day of
+     * the week. If no dayOfWeek is provided, modify to the previous occurrence
+     * of the current day of the week. Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param string|int|null $modifier
+     *
+     * @return static
+     */
+    public function previous($modifier = null)
+    {
+        if ($modifier === null) {
+            $modifier = $this->dayOfWeek;
+        }
+
+        return $this->change(
+            'last '.(\is_string($modifier) ? $modifier : static::$days[$modifier])
+        );
+    }
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current month. If no dayOfWeek is provided, modify to the
+     * first day of the current month.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek
+     *
+     * @return static
+     */
+    public function firstOfMonth($dayOfWeek = null)
+    {
+        $date = $this->startOfDay();
+
+        if ($dayOfWeek === null) {
+            return $date->day(1);
+        }
+
+        return $date->modify('first '.static::$days[$dayOfWeek].' of '.$date->rawFormat('F').' '.$date->year);
+    }
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current month. If no dayOfWeek is provided, modify to the
+     * last day of the current month.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek
+     *
+     * @return static
+     */
+    public function lastOfMonth($dayOfWeek = null)
+    {
+        $date = $this->startOfDay();
+
+        if ($dayOfWeek === null) {
+            return $date->day($date->daysInMonth);
+        }
+
+        return $date->modify('last '.static::$days[$dayOfWeek].' of '.$date->rawFormat('F').' '.$date->year);
+    }
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current month. If the calculated occurrence is outside the scope
+     * of the current month, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfMonth($nth, $dayOfWeek)
+    {
+        $date = $this->avoidMutation()->firstOfMonth();
+        $check = $date->rawFormat('Y-m');
+        $date = $date->modify('+'.$nth.' '.static::$days[$dayOfWeek]);
+
+        return $date->rawFormat('Y-m') === $check ? $this->modify((string) $date) : false;
+    }
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current quarter. If no dayOfWeek is provided, modify to the
+     * first day of the current quarter.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function firstOfQuarter($dayOfWeek = null)
+    {
+        return $this->setDate($this->year, $this->quarter * static::MONTHS_PER_QUARTER - 2, 1)->firstOfMonth($dayOfWeek);
+    }
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current quarter. If no dayOfWeek is provided, modify to the
+     * last day of the current quarter.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function lastOfQuarter($dayOfWeek = null)
+    {
+        return $this->setDate($this->year, $this->quarter * static::MONTHS_PER_QUARTER, 1)->lastOfMonth($dayOfWeek);
+    }
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current quarter. If the calculated occurrence is outside the scope
+     * of the current quarter, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfQuarter($nth, $dayOfWeek)
+    {
+        $date = $this->avoidMutation()->day(1)->month($this->quarter * static::MONTHS_PER_QUARTER);
+        $lastMonth = $date->month;
+        $year = $date->year;
+        $date = $date->firstOfQuarter()->modify('+'.$nth.' '.static::$days[$dayOfWeek]);
+
+        return ($lastMonth < $date->month || $year !== $date->year) ? false : $this->modify((string) $date);
+    }
+
+    /**
+     * Modify to the first occurrence of a given day of the week
+     * in the current year. If no dayOfWeek is provided, modify to the
+     * first day of the current year.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function firstOfYear($dayOfWeek = null)
+    {
+        return $this->month(1)->firstOfMonth($dayOfWeek);
+    }
+
+    /**
+     * Modify to the last occurrence of a given day of the week
+     * in the current year. If no dayOfWeek is provided, modify to the
+     * last day of the current year.  Use the supplied constants
+     * to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int|null $dayOfWeek day of the week default null
+     *
+     * @return static
+     */
+    public function lastOfYear($dayOfWeek = null)
+    {
+        return $this->month(static::MONTHS_PER_YEAR)->lastOfMonth($dayOfWeek);
+    }
+
+    /**
+     * Modify to the given occurrence of a given day of the week
+     * in the current year. If the calculated occurrence is outside the scope
+     * of the current year, then return false and no modifications are made.
+     * Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
+     *
+     * @param int $nth
+     * @param int $dayOfWeek
+     *
+     * @return mixed
+     */
+    public function nthOfYear($nth, $dayOfWeek)
+    {
+        $date = $this->avoidMutation()->firstOfYear()->modify('+'.$nth.' '.static::$days[$dayOfWeek]);
+
+        return $this->year === $date->year ? $this->modify((string) $date) : false;
+    }
+
+    /**
+     * Modify the current instance to the average of a given instance (default now) and the current instance
+     * (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|null $date
+     *
+     * @return static
+     */
+    public function average($date = null)
+    {
+        return $this->addRealMicroseconds((int) ($this->diffInRealMicroseconds($this->resolveCarbon($date), false) / 2));
+    }
+
+    /**
+     * Get the closest date from the instance (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return static
+     */
+    public function closest($date1, $date2)
+    {
+        return $this->diffInRealMicroseconds($date1) < $this->diffInRealMicroseconds($date2) ? $date1 : $date2;
+    }
+
+    /**
+     * Get the farthest date from the instance (second-precision).
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
+     *
+     * @return static
+     */
+    public function farthest($date1, $date2)
+    {
+        return $this->diffInRealMicroseconds($date1) > $this->diffInRealMicroseconds($date2) ? $date1 : $date2;
+    }
+
+    /**
+     * Get the minimum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return static
+     */
+    public function min($date = null)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->lt($date) ? $this : $date;
+    }
+
+    /**
+     * Get the minimum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see min()
+     *
+     * @return static
+     */
+    public function minimum($date = null)
+    {
+        return $this->min($date);
+    }
+
+    /**
+     * Get the maximum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @return static
+     */
+    public function max($date = null)
+    {
+        $date = $this->resolveCarbon($date);
+
+        return $this->gt($date) ? $this : $date;
+    }
+
+    /**
+     * Get the maximum instance between a given instance (default now) and the current instance.
+     *
+     * @param \Carbon\Carbon|\DateTimeInterface|mixed $date
+     *
+     * @see max()
+     *
+     * @return static
+     */
+    public function maximum($date = null)
+    {
+        return $this->max($date);
+    }
+
+    /**
+     * Calls \DateTime::modify if mutable or \DateTimeImmutable::modify else.
+     *
+     * @see https://php.net/manual/en/datetime.modify.php
+     */
+    #[ReturnTypeWillChange]
+    public function modify($modify)
+    {
+        return parent::modify((string) $modify);
+    }
+
+    /**
+     * Similar to native modify() method of DateTime but can handle more grammars.
+     *
+     * @example
+     * ```
+     * echo Carbon::now()->change('next 2pm');
+     * ```
+     *
+     * @link https://php.net/manual/en/datetime.modify.php
+     *
+     * @param string $modifier
+     *
+     * @return static
+     */
+    public function change($modifier)
+    {
+        return $this->modify(preg_replace_callback('/^(next|previous|last)\s+(\d{1,2}(h|am|pm|:\d{1,2}(:\d{1,2})?))$/i', function ($match) {
+            $match[2] = str_replace('h', ':00', $match[2]);
+            $test = $this->avoidMutation()->modify($match[2]);
+            $method = $match[1] === 'next' ? 'lt' : 'gt';
+            $match[1] = $test->$method($this) ? $match[1].' day' : 'today';
+
+            return $match[1].' '.$match[2];
+        }, strtr(trim($modifier), [
+            ' at ' => ' ',
+            'just now' => 'now',
+            'after tomorrow' => 'tomorrow +1 day',
+            'before yesterday' => 'yesterday -1 day',
+        ])));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mutability.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mutability.php
new file mode 100644
index 0000000..66eaa12
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Mutability.php
@@ -0,0 +1,70 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Carbon;
+use Carbon\CarbonImmutable;
+
+/**
+ * Trait Mutability.
+ *
+ * Utils to know if the current object is mutable or immutable and convert it.
+ */
+trait Mutability
+{
+    use Cast;
+
+    /**
+     * Returns true if the current class/instance is mutable.
+     *
+     * @return bool
+     */
+    public static function isMutable()
+    {
+        return false;
+    }
+
+    /**
+     * Returns true if the current class/instance is immutable.
+     *
+     * @return bool
+     */
+    public static function isImmutable()
+    {
+        return !static::isMutable();
+    }
+
+    /**
+     * Return a mutable copy of the instance.
+     *
+     * @return Carbon
+     */
+    public function toMutable()
+    {
+        /** @var Carbon $date */
+        $date = $this->cast(Carbon::class);
+
+        return $date;
+    }
+
+    /**
+     * Return a immutable copy of the instance.
+     *
+     * @return CarbonImmutable
+     */
+    public function toImmutable()
+    {
+        /** @var CarbonImmutable $date */
+        $date = $this->cast(CarbonImmutable::class);
+
+        return $date;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/ObjectInitialisation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/ObjectInitialisation.php
new file mode 100644
index 0000000..252df3a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/ObjectInitialisation.php
@@ -0,0 +1,21 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+trait ObjectInitialisation
+{
+    /**
+     * True when parent::__construct has been called.
+     *
+     * @var string
+     */
+    protected $constructedObjectId;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Options.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Options.php
new file mode 100644
index 0000000..0a49372
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Options.php
@@ -0,0 +1,466 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonInterface;
+use DateTimeInterface;
+use Throwable;
+
+/**
+ * Trait Options.
+ *
+ * Embed base methods to change settings of Carbon classes.
+ *
+ * Depends on the following methods:
+ *
+ * @method \Carbon\Carbon|\Carbon\CarbonImmutable shiftTimezone($timezone) Set the timezone
+ */
+trait Options
+{
+    use Localization;
+
+    /**
+     * Customizable PHP_INT_SIZE override.
+     *
+     * @var int
+     */
+    public static $PHPIntSize = PHP_INT_SIZE;
+
+    /**
+     * First day of week.
+     *
+     * @var int|string
+     */
+    protected static $weekStartsAt = CarbonInterface::MONDAY;
+
+    /**
+     * Last day of week.
+     *
+     * @var int|string
+     */
+    protected static $weekEndsAt = CarbonInterface::SUNDAY;
+
+    /**
+     * Days of weekend.
+     *
+     * @var array
+     */
+    protected static $weekendDays = [
+        CarbonInterface::SATURDAY,
+        CarbonInterface::SUNDAY,
+    ];
+
+    /**
+     * Format regex patterns.
+     *
+     * @var array<string, string>
+     */
+    protected static $regexFormats = [
+        'd' => '(3[01]|[12][0-9]|0[1-9])',
+        'D' => '(Sun|Mon|Tue|Wed|Thu|Fri|Sat)',
+        'j' => '([123][0-9]|[1-9])',
+        'l' => '([a-zA-Z]{2,})',
+        'N' => '([1-7])',
+        'S' => '(st|nd|rd|th)',
+        'w' => '([0-6])',
+        'z' => '(36[0-5]|3[0-5][0-9]|[12][0-9]{2}|[1-9]?[0-9])',
+        'W' => '(5[012]|[1-4][0-9]|0?[1-9])',
+        'F' => '([a-zA-Z]{2,})',
+        'm' => '(1[012]|0[1-9])',
+        'M' => '([a-zA-Z]{3})',
+        'n' => '(1[012]|[1-9])',
+        't' => '(2[89]|3[01])',
+        'L' => '(0|1)',
+        'o' => '([1-9][0-9]{0,4})',
+        'Y' => '([1-9]?[0-9]{4})',
+        'y' => '([0-9]{2})',
+        'a' => '(am|pm)',
+        'A' => '(AM|PM)',
+        'B' => '([0-9]{3})',
+        'g' => '(1[012]|[1-9])',
+        'G' => '(2[0-3]|1?[0-9])',
+        'h' => '(1[012]|0[1-9])',
+        'H' => '(2[0-3]|[01][0-9])',
+        'i' => '([0-5][0-9])',
+        's' => '([0-5][0-9])',
+        'u' => '([0-9]{1,6})',
+        'v' => '([0-9]{1,3})',
+        'e' => '([a-zA-Z]{1,5})|([a-zA-Z]*\\/[a-zA-Z]*)',
+        'I' => '(0|1)',
+        'O' => '([+-](1[012]|0[0-9])[0134][05])',
+        'P' => '([+-](1[012]|0[0-9]):[0134][05])',
+        'p' => '(Z|[+-](1[012]|0[0-9]):[0134][05])',
+        'T' => '([a-zA-Z]{1,5})',
+        'Z' => '(-?[1-5]?[0-9]{1,4})',
+        'U' => '([0-9]*)',
+
+        // The formats below are combinations of the above formats.
+        'c' => '(([1-9]?[0-9]{4})-(1[012]|0[1-9])-(3[01]|[12][0-9]|0[1-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])[+-](1[012]|0[0-9]):([0134][05]))', // Y-m-dTH:i:sP
+        'r' => '(([a-zA-Z]{3}), ([123][0-9]|0[1-9]) ([a-zA-Z]{3}) ([1-9]?[0-9]{4}) (2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9]) [+-](1[012]|0[0-9])([0134][05]))', // D, d M Y H:i:s O
+    ];
+
+    /**
+     * Format modifiers (such as available in createFromFormat) regex patterns.
+     *
+     * @var array
+     */
+    protected static $regexFormatModifiers = [
+        '*' => '.+',
+        ' ' => '[   ]',
+        '#' => '[;:\\/.,()-]',
+        '?' => '([^a]|[a])',
+        '!' => '',
+        '|' => '',
+        '+' => '',
+    ];
+
+    /**
+     * Indicates if months should be calculated with overflow.
+     * Global setting.
+     *
+     * @var bool
+     */
+    protected static $monthsOverflow = true;
+
+    /**
+     * Indicates if years should be calculated with overflow.
+     * Global setting.
+     *
+     * @var bool
+     */
+    protected static $yearsOverflow = true;
+
+    /**
+     * Indicates if the strict mode is in use.
+     * Global setting.
+     *
+     * @var bool
+     */
+    protected static $strictModeEnabled = true;
+
+    /**
+     * Function to call instead of format.
+     *
+     * @var string|callable|null
+     */
+    protected static $formatFunction;
+
+    /**
+     * Function to call instead of createFromFormat.
+     *
+     * @var string|callable|null
+     */
+    protected static $createFromFormatFunction;
+
+    /**
+     * Function to call instead of parse.
+     *
+     * @var string|callable|null
+     */
+    protected static $parseFunction;
+
+    /**
+     * Indicates if months should be calculated with overflow.
+     * Specific setting.
+     *
+     * @var bool|null
+     */
+    protected $localMonthsOverflow;
+
+    /**
+     * Indicates if years should be calculated with overflow.
+     * Specific setting.
+     *
+     * @var bool|null
+     */
+    protected $localYearsOverflow;
+
+    /**
+     * Indicates if the strict mode is in use.
+     * Specific setting.
+     *
+     * @var bool|null
+     */
+    protected $localStrictModeEnabled;
+
+    /**
+     * Options for diffForHumans and forHumans methods.
+     *
+     * @var bool|null
+     */
+    protected $localHumanDiffOptions;
+
+    /**
+     * Format to use on string cast.
+     *
+     * @var string|null
+     */
+    protected $localToStringFormat;
+
+    /**
+     * Format to use on JSON serialization.
+     *
+     * @var string|null
+     */
+    protected $localSerializer;
+
+    /**
+     * Instance-specific macros.
+     *
+     * @var array|null
+     */
+    protected $localMacros;
+
+    /**
+     * Instance-specific generic macros.
+     *
+     * @var array|null
+     */
+    protected $localGenericMacros;
+
+    /**
+     * Function to call instead of format.
+     *
+     * @var string|callable|null
+     */
+    protected $localFormatFunction;
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     * @see settings
+     *
+     * Enable the strict mode (or disable with passing false).
+     *
+     * @param bool $strictModeEnabled
+     */
+    public static function useStrictMode($strictModeEnabled = true)
+    {
+        static::$strictModeEnabled = $strictModeEnabled;
+    }
+
+    /**
+     * Returns true if the strict mode is globally in use, false else.
+     * (It can be overridden in specific instances.)
+     *
+     * @return bool
+     */
+    public static function isStrictModeEnabled()
+    {
+        return static::$strictModeEnabled;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Indicates if months should be calculated with overflow.
+     *
+     * @param bool $monthsOverflow
+     *
+     * @return void
+     */
+    public static function useMonthsOverflow($monthsOverflow = true)
+    {
+        static::$monthsOverflow = $monthsOverflow;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Reset the month overflow behavior.
+     *
+     * @return void
+     */
+    public static function resetMonthsOverflow()
+    {
+        static::$monthsOverflow = true;
+    }
+
+    /**
+     * Get the month overflow global behavior (can be overridden in specific instances).
+     *
+     * @return bool
+     */
+    public static function shouldOverflowMonths()
+    {
+        return static::$monthsOverflow;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Indicates if years should be calculated with overflow.
+     *
+     * @param bool $yearsOverflow
+     *
+     * @return void
+     */
+    public static function useYearsOverflow($yearsOverflow = true)
+    {
+        static::$yearsOverflow = $yearsOverflow;
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather use the ->settings() method.
+     *             Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
+     *             are available for quarters, years, decade, centuries, millennia (singular and plural forms).
+     * @see settings
+     *
+     * Reset the month overflow behavior.
+     *
+     * @return void
+     */
+    public static function resetYearsOverflow()
+    {
+        static::$yearsOverflow = true;
+    }
+
+    /**
+     * Get the month overflow global behavior (can be overridden in specific instances).
+     *
+     * @return bool
+     */
+    public static function shouldOverflowYears()
+    {
+        return static::$yearsOverflow;
+    }
+
+    /**
+     * Set specific options.
+     *  - strictMode: true|false|null
+     *  - monthOverflow: true|false|null
+     *  - yearOverflow: true|false|null
+     *  - humanDiffOptions: int|null
+     *  - toStringFormat: string|Closure|null
+     *  - toJsonFormat: string|Closure|null
+     *  - locale: string|null
+     *  - timezone: \DateTimeZone|string|int|null
+     *  - macros: array|null
+     *  - genericMacros: array|null
+     *
+     * @param array $settings
+     *
+     * @return $this|static
+     */
+    public function settings(array $settings)
+    {
+        $this->localStrictModeEnabled = $settings['strictMode'] ?? null;
+        $this->localMonthsOverflow = $settings['monthOverflow'] ?? null;
+        $this->localYearsOverflow = $settings['yearOverflow'] ?? null;
+        $this->localHumanDiffOptions = $settings['humanDiffOptions'] ?? null;
+        $this->localToStringFormat = $settings['toStringFormat'] ?? null;
+        $this->localSerializer = $settings['toJsonFormat'] ?? null;
+        $this->localMacros = $settings['macros'] ?? null;
+        $this->localGenericMacros = $settings['genericMacros'] ?? null;
+        $this->localFormatFunction = $settings['formatFunction'] ?? null;
+
+        if (isset($settings['locale'])) {
+            $locales = $settings['locale'];
+
+            if (!\is_array($locales)) {
+                $locales = [$locales];
+            }
+
+            $this->locale(...$locales);
+        }
+
+        if (isset($settings['timezone'])) {
+            return $this->shiftTimezone($settings['timezone']);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Returns current local settings.
+     *
+     * @return array
+     */
+    public function getSettings()
+    {
+        $settings = [];
+        $map = [
+            'localStrictModeEnabled' => 'strictMode',
+            'localMonthsOverflow' => 'monthOverflow',
+            'localYearsOverflow' => 'yearOverflow',
+            'localHumanDiffOptions' => 'humanDiffOptions',
+            'localToStringFormat' => 'toStringFormat',
+            'localSerializer' => 'toJsonFormat',
+            'localMacros' => 'macros',
+            'localGenericMacros' => 'genericMacros',
+            'locale' => 'locale',
+            'tzName' => 'timezone',
+            'localFormatFunction' => 'formatFunction',
+        ];
+
+        foreach ($map as $property => $key) {
+            $value = $this->$property ?? null;
+
+            if ($value !== null) {
+                $settings[$key] = $value;
+            }
+        }
+
+        return $settings;
+    }
+
+    /**
+     * Show truthy properties on var_dump().
+     *
+     * @return array
+     */
+    public function __debugInfo()
+    {
+        $infos = array_filter(get_object_vars($this), function ($var) {
+            return $var;
+        });
+
+        foreach (['dumpProperties', 'constructedObjectId'] as $property) {
+            if (isset($infos[$property])) {
+                unset($infos[$property]);
+            }
+        }
+
+        $this->addExtraDebugInfos($infos);
+
+        return $infos;
+    }
+
+    protected function addExtraDebugInfos(&$infos): void
+    {
+        if ($this instanceof DateTimeInterface) {
+            try {
+                if (!isset($infos['date'])) {
+                    $infos['date'] = $this->format(CarbonInterface::MOCK_DATETIME_FORMAT);
+                }
+
+                if (!isset($infos['timezone'])) {
+                    $infos['timezone'] = $this->tzName;
+                }
+            } catch (Throwable $exception) {
+                // noop
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Rounding.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Rounding.php
new file mode 100644
index 0000000..03d3fe6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Rounding.php
@@ -0,0 +1,238 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonInterface;
+use Carbon\Exceptions\UnknownUnitException;
+
+/**
+ * Trait Rounding.
+ *
+ * Round, ceil, floor units.
+ *
+ * Depends on the following methods:
+ *
+ * @method static copy()
+ * @method static startOfWeek(int $weekStartsAt = null)
+ */
+trait Rounding
+{
+    use IntervalRounding;
+
+    /**
+     * Round the current instance at the given unit with given precision if specified and the given function.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     * @param string    $function
+     *
+     * @return CarbonInterface
+     */
+    public function roundUnit($unit, $precision = 1, $function = 'round')
+    {
+        $metaUnits = [
+            // @call roundUnit
+            'millennium' => [static::YEARS_PER_MILLENNIUM, 'year'],
+            // @call roundUnit
+            'century' => [static::YEARS_PER_CENTURY, 'year'],
+            // @call roundUnit
+            'decade' => [static::YEARS_PER_DECADE, 'year'],
+            // @call roundUnit
+            'quarter' => [static::MONTHS_PER_QUARTER, 'month'],
+            // @call roundUnit
+            'millisecond' => [1000, 'microsecond'],
+        ];
+        $normalizedUnit = static::singularUnit($unit);
+        $ranges = array_merge(static::getRangesByUnit(), [
+            // @call roundUnit
+            'microsecond' => [0, 999999],
+        ]);
+        $factor = 1;
+        $initialMonth = $this->month;
+
+        if ($normalizedUnit === 'week') {
+            $normalizedUnit = 'day';
+            $precision *= static::DAYS_PER_WEEK;
+        }
+
+        if (isset($metaUnits[$normalizedUnit])) {
+            [$factor, $normalizedUnit] = $metaUnits[$normalizedUnit];
+        }
+
+        $precision *= $factor;
+
+        if (!isset($ranges[$normalizedUnit])) {
+            throw new UnknownUnitException($unit);
+        }
+
+        $found = false;
+        $fraction = 0;
+        $arguments = null;
+        $factor = $this->year < 0 ? -1 : 1;
+        $changes = [];
+
+        foreach ($ranges as $unit => [$minimum, $maximum]) {
+            if ($normalizedUnit === $unit) {
+                $arguments = [$this->$unit, $minimum];
+                $fraction = $precision - floor($precision);
+                $found = true;
+
+                continue;
+            }
+
+            if ($found) {
+                $delta = $maximum + 1 - $minimum;
+                $factor /= $delta;
+                $fraction *= $delta;
+                $arguments[0] += $this->$unit * $factor;
+                $changes[$unit] = round(
+                    $minimum + ($fraction ? $fraction * $function(($this->$unit - $minimum) / $fraction) : 0)
+                );
+
+                // Cannot use modulo as it lose double precision
+                while ($changes[$unit] >= $delta) {
+                    $changes[$unit] -= $delta;
+                }
+
+                $fraction -= floor($fraction);
+            }
+        }
+
+        [$value, $minimum] = $arguments;
+        $normalizedValue = floor($function(($value - $minimum) / $precision) * $precision + $minimum);
+
+        /** @var CarbonInterface $result */
+        $result = $this->$normalizedUnit($normalizedValue);
+
+        foreach ($changes as $unit => $value) {
+            $result = $result->$unit($value);
+        }
+
+        return $normalizedUnit === 'month' && $precision <= 1 && abs($result->month - $initialMonth) === 2
+            // Re-run the change in case an overflow occurred
+            ? $result->$normalizedUnit($normalizedValue)
+            : $result;
+    }
+
+    /**
+     * Truncate the current instance at the given unit with given precision if specified.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     *
+     * @return CarbonInterface
+     */
+    public function floorUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance at the given unit with given precision if specified.
+     *
+     * @param string    $unit
+     * @param float|int $precision
+     *
+     * @return CarbonInterface
+     */
+    public function ceilUnit($unit, $precision = 1)
+    {
+        return $this->roundUnit($unit, $precision, 'ceil');
+    }
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     * @param string                              $function
+     *
+     * @return CarbonInterface
+     */
+    public function round($precision = 1, $function = 'round')
+    {
+        return $this->roundWith($precision, $function);
+    }
+
+    /**
+     * Round the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return CarbonInterface
+     */
+    public function floor($precision = 1)
+    {
+        return $this->round($precision, 'floor');
+    }
+
+    /**
+     * Ceil the current instance second with given precision if specified.
+     *
+     * @param float|int|string|\DateInterval|null $precision
+     *
+     * @return CarbonInterface
+     */
+    public function ceil($precision = 1)
+    {
+        return $this->round($precision, 'ceil');
+    }
+
+    /**
+     * Round the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function roundWeek($weekStartsAt = null)
+    {
+        return $this->closest(
+            $this->avoidMutation()->floorWeek($weekStartsAt),
+            $this->avoidMutation()->ceilWeek($weekStartsAt)
+        );
+    }
+
+    /**
+     * Truncate the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function floorWeek($weekStartsAt = null)
+    {
+        return $this->startOfWeek($weekStartsAt);
+    }
+
+    /**
+     * Ceil the current instance week.
+     *
+     * @param int $weekStartsAt optional start allow you to specify the day of week to use to start the week
+     *
+     * @return CarbonInterface
+     */
+    public function ceilWeek($weekStartsAt = null)
+    {
+        if ($this->isMutable()) {
+            $startOfWeek = $this->avoidMutation()->startOfWeek($weekStartsAt);
+
+            return $startOfWeek != $this ?
+                $this->startOfWeek($weekStartsAt)->addWeek() :
+                $this;
+        }
+
+        $startOfWeek = $this->startOfWeek($weekStartsAt);
+
+        return $startOfWeek != $this ?
+            $startOfWeek->addWeek() :
+            $this->avoidMutation();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Serialization.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Serialization.php
new file mode 100644
index 0000000..a27e4e3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Serialization.php
@@ -0,0 +1,237 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\Exceptions\InvalidFormatException;
+use ReturnTypeWillChange;
+use Throwable;
+
+/**
+ * Trait Serialization.
+ *
+ * Serialization and JSON stuff.
+ *
+ * Depends on the following properties:
+ *
+ * @property int $year
+ * @property int $month
+ * @property int $daysInMonth
+ * @property int $quarter
+ *
+ * Depends on the following methods:
+ *
+ * @method string|static locale(string $locale = null, string ...$fallbackLocales)
+ * @method string        toJSON()
+ */
+trait Serialization
+{
+    use ObjectInitialisation;
+
+    /**
+     * The custom Carbon JSON serializer.
+     *
+     * @var callable|null
+     */
+    protected static $serializer;
+
+    /**
+     * List of key to use for dump/serialization.
+     *
+     * @var string[]
+     */
+    protected $dumpProperties = ['date', 'timezone_type', 'timezone'];
+
+    /**
+     * Locale to dump comes here before serialization.
+     *
+     * @var string|null
+     */
+    protected $dumpLocale;
+
+    /**
+     * Embed date properties to dump in a dedicated variables so it won't overlap native
+     * DateTime ones.
+     *
+     * @var array|null
+     */
+    protected $dumpDateProperties;
+
+    /**
+     * Return a serialized string of the instance.
+     *
+     * @return string
+     */
+    public function serialize()
+    {
+        return serialize($this);
+    }
+
+    /**
+     * Create an instance from a serialized string.
+     *
+     * @param string $value
+     *
+     * @throws InvalidFormatException
+     *
+     * @return static
+     */
+    public static function fromSerialized($value)
+    {
+        $instance = @unserialize((string) $value);
+
+        if (!$instance instanceof static) {
+            throw new InvalidFormatException("Invalid serialized value: $value");
+        }
+
+        return $instance;
+    }
+
+    /**
+     * The __set_state handler.
+     *
+     * @param string|array $dump
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public static function __set_state($dump)
+    {
+        if (\is_string($dump)) {
+            return static::parse($dump);
+        }
+
+        /** @var \DateTimeInterface $date */
+        $date = get_parent_class(static::class) && method_exists(parent::class, '__set_state')
+            ? parent::__set_state((array) $dump)
+            : (object) $dump;
+
+        return static::instance($date);
+    }
+
+    /**
+     * Returns the list of properties to dump on serialize() called on.
+     *
+     * @return array
+     */
+    public function __sleep()
+    {
+        $properties = $this->getSleepProperties();
+
+        if ($this->localTranslator ?? null) {
+            $properties[] = 'dumpLocale';
+            $this->dumpLocale = $this->locale ?? null;
+        }
+
+        return $properties;
+    }
+
+    /**
+     * Set locale if specified on unserialize() called.
+     */
+    #[ReturnTypeWillChange]
+    public function __wakeup()
+    {
+        if (get_parent_class() && method_exists(parent::class, '__wakeup')) {
+            // @codeCoverageIgnoreStart
+            try {
+                parent::__wakeup();
+            } catch (Throwable $exception) {
+                // FatalError occurs when calling msgpack_unpack() in PHP 7.4 or later.
+                ['date' => $date, 'timezone' => $timezone] = $this->dumpDateProperties;
+                parent::__construct($date, unserialize($timezone));
+            }
+            // @codeCoverageIgnoreEnd
+        }
+
+        $this->constructedObjectId = spl_object_hash($this);
+
+        if (isset($this->dumpLocale)) {
+            $this->locale($this->dumpLocale);
+            $this->dumpLocale = null;
+        }
+
+        $this->cleanupDumpProperties();
+    }
+
+    /**
+     * Prepare the object for JSON serialization.
+     *
+     * @return array|string
+     */
+    #[ReturnTypeWillChange]
+    public function jsonSerialize()
+    {
+        $serializer = $this->localSerializer ?? static::$serializer;
+
+        if ($serializer) {
+            return \is_string($serializer)
+                ? $this->rawFormat($serializer)
+                : $serializer($this);
+        }
+
+        return $this->toJSON();
+    }
+
+    /**
+     * @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
+     *             You should rather transform Carbon object before the serialization.
+     *
+     * JSON serialize all Carbon instances using the given callback.
+     *
+     * @param callable $callback
+     *
+     * @return void
+     */
+    public static function serializeUsing($callback)
+    {
+        static::$serializer = $callback;
+    }
+
+    /**
+     * Cleanup properties attached to the public scope of DateTime when a dump of the date is requested.
+     * foreach ($date as $_) {}
+     * serializer($date)
+     * var_export($date)
+     * get_object_vars($date)
+     */
+    public function cleanupDumpProperties()
+    {
+        foreach ($this->dumpProperties as $property) {
+            if (isset($this->$property)) {
+                unset($this->$property);
+            }
+        }
+
+        return $this;
+    }
+
+    private function getSleepProperties(): array
+    {
+        $properties = $this->dumpProperties;
+
+        // @codeCoverageIgnoreStart
+        if (!\extension_loaded('msgpack')) {
+            return $properties;
+        }
+
+        if (isset($this->constructedObjectId)) {
+            $this->dumpDateProperties = [
+                'date' => $this->format('Y-m-d H:i:s.u'),
+                'timezone' => serialize($this->timezone ?? null),
+            ];
+
+            $properties[] = 'dumpDateProperties';
+        }
+
+        return $properties;
+        // @codeCoverageIgnoreEnd
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Test.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Test.php
new file mode 100644
index 0000000..d998974
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Test.php
@@ -0,0 +1,157 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Closure;
+use DateTimeImmutable;
+
+trait Test
+{
+    ///////////////////////////////////////////////////////////////////
+    ///////////////////////// TESTING AIDS ////////////////////////////
+    ///////////////////////////////////////////////////////////////////
+
+    /**
+     * A test Carbon instance to be returned when now instances are created.
+     *
+     * @var static
+     */
+    protected static $testNow;
+
+    /**
+     * Set a Carbon instance (real or mock) to be returned when a "now"
+     * instance is created.  The provided instance will be returned
+     * specifically under the following conditions:
+     *   - A call to the static now() method, ex. Carbon::now()
+     *   - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
+     *   - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
+     *   - When a string containing the desired time is passed to Carbon::parse().
+     *
+     * Note the timezone parameter was left out of the examples above and
+     * has no affect as the mock value will be returned regardless of its value.
+     *
+     * To clear the test instance call this method using the default
+     * parameter of null.
+     *
+     * /!\ Use this method for unit tests only.
+     *
+     * @param Closure|static|string|false|null $testNow real or mock Carbon instance
+     */
+    public static function setTestNow($testNow = null)
+    {
+        if ($testNow === false) {
+            $testNow = null;
+        }
+
+        static::$testNow = \is_string($testNow) ? static::parse($testNow) : $testNow;
+    }
+
+    /**
+     * Temporarily sets a static date to be used within the callback.
+     * Using setTestNow to set the date, executing the callback, then
+     * clearing the test instance.
+     *
+     * /!\ Use this method for unit tests only.
+     *
+     * @param Closure|static|string|false|null $testNow real or mock Carbon instance
+     * @param Closure|null $callback
+     *
+     * @return mixed
+     */
+    public static function withTestNow($testNow = null, $callback = null)
+    {
+        static::setTestNow($testNow);
+        $result = $callback();
+        static::setTestNow();
+
+        return $result;
+    }
+
+    /**
+     * Get the Carbon instance (real or mock) to be returned when a "now"
+     * instance is created.
+     *
+     * @return Closure|static the current instance used for testing
+     */
+    public static function getTestNow()
+    {
+        return static::$testNow;
+    }
+
+    /**
+     * Determine if there is a valid test instance set. A valid test instance
+     * is anything that is not null.
+     *
+     * @return bool true if there is a test instance, otherwise false
+     */
+    public static function hasTestNow()
+    {
+        return static::getTestNow() !== null;
+    }
+
+    /**
+     * Return the given timezone and set it to the test instance if not null.
+     * If null, get the timezone from the test instance and return it.
+     *
+     * @param string|\DateTimeZone    $tz
+     * @param \Carbon\CarbonInterface $testInstance
+     *
+     * @return string|\DateTimeZone
+     */
+    protected static function handleMockTimezone($tz, &$testInstance)
+    {
+        //shift the time according to the given time zone
+        if ($tz !== null && $tz !== static::getMockedTestNow($tz)->getTimezone()) {
+            $testInstance = $testInstance->setTimezone($tz);
+
+            return $tz;
+        }
+
+        return $testInstance->getTimezone();
+    }
+
+    /**
+     * Get the mocked date passed in setTestNow() and if it's a Closure, execute it.
+     *
+     * @param string|\DateTimeZone $tz
+     *
+     * @return \Carbon\CarbonImmutable|\Carbon\Carbon|null
+     */
+    protected static function getMockedTestNow($tz)
+    {
+        $testNow = static::getTestNow();
+
+        if ($testNow instanceof Closure) {
+            $realNow = new DateTimeImmutable('now');
+            $testNow = $testNow(static::parse(
+                $realNow->format('Y-m-d H:i:s.u'),
+                $tz ?: $realNow->getTimezone()
+            ));
+        }
+        /* @var \Carbon\CarbonImmutable|\Carbon\Carbon|null $testNow */
+
+        return $testNow;
+    }
+
+    protected static function mockConstructorParameters(&$time, &$tz)
+    {
+        /** @var \Carbon\CarbonImmutable|\Carbon\Carbon $testInstance */
+        $testInstance = clone static::getMockedTestNow($tz);
+
+        $tz = static::handleMockTimezone($tz, $testInstance);
+
+        if (static::hasRelativeKeywords($time)) {
+            $testInstance = $testInstance->modify($time);
+        }
+
+        $time = $testInstance instanceof self ? $testInstance->rawFormat(static::MOCK_DATETIME_FORMAT) : $testInstance->format(static::MOCK_DATETIME_FORMAT);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Timestamp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Timestamp.php
new file mode 100644
index 0000000..35d45aa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Timestamp.php
@@ -0,0 +1,197 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+/**
+ * Trait Timestamp.
+ */
+trait Timestamp
+{
+    /**
+     * Create a Carbon instance from a timestamp and set the timezone (use default one if not specified).
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string          $timestamp
+     * @param \DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function createFromTimestamp($timestamp, $tz = null)
+    {
+        return static::createFromTimestampUTC($timestamp)->setTimezone($tz);
+    }
+
+    /**
+     * Create a Carbon instance from an timestamp keeping the timezone to UTC.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $timestamp
+     *
+     * @return static
+     */
+    public static function createFromTimestampUTC($timestamp)
+    {
+        [$integer, $decimal] = self::getIntegerAndDecimalParts($timestamp);
+        $delta = floor($decimal / static::MICROSECONDS_PER_SECOND);
+        $integer += $delta;
+        $decimal -= $delta * static::MICROSECONDS_PER_SECOND;
+        $decimal = str_pad((string) $decimal, 6, '0', STR_PAD_LEFT);
+
+        return static::rawCreateFromFormat('U u', "$integer $decimal");
+    }
+
+    /**
+     * Create a Carbon instance from a timestamp in milliseconds.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $timestamp
+     *
+     * @return static
+     */
+    public static function createFromTimestampMsUTC($timestamp)
+    {
+        [$milliseconds, $microseconds] = self::getIntegerAndDecimalParts($timestamp, 3);
+        $sign = $milliseconds < 0 || $milliseconds === 0.0 && $microseconds < 0 ? -1 : 1;
+        $milliseconds = abs($milliseconds);
+        $microseconds = $sign * abs($microseconds) + static::MICROSECONDS_PER_MILLISECOND * ($milliseconds % static::MILLISECONDS_PER_SECOND);
+        $seconds = $sign * floor($milliseconds / static::MILLISECONDS_PER_SECOND);
+        $delta = floor($microseconds / static::MICROSECONDS_PER_SECOND);
+        $seconds += $delta;
+        $microseconds -= $delta * static::MICROSECONDS_PER_SECOND;
+        $microseconds = str_pad($microseconds, 6, '0', STR_PAD_LEFT);
+
+        return static::rawCreateFromFormat('U u', "$seconds $microseconds");
+    }
+
+    /**
+     * Create a Carbon instance from a timestamp in milliseconds.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string          $timestamp
+     * @param \DateTimeZone|string|null $tz
+     *
+     * @return static
+     */
+    public static function createFromTimestampMs($timestamp, $tz = null)
+    {
+        return static::createFromTimestampMsUTC($timestamp)
+            ->setTimezone($tz);
+    }
+
+    /**
+     * Set the instance's timestamp.
+     *
+     * Timestamp input can be given as int, float or a string containing one or more numbers.
+     *
+     * @param float|int|string $unixTimestamp
+     *
+     * @return static
+     */
+    public function timestamp($unixTimestamp)
+    {
+        return $this->setTimestamp($unixTimestamp);
+    }
+
+    /**
+     * Returns a timestamp rounded with the given precision (6 by default).
+     *
+     * @example getPreciseTimestamp()   1532087464437474 (microsecond maximum precision)
+     * @example getPreciseTimestamp(6)  1532087464437474
+     * @example getPreciseTimestamp(5)  153208746443747  (1/100000 second precision)
+     * @example getPreciseTimestamp(4)  15320874644375   (1/10000 second precision)
+     * @example getPreciseTimestamp(3)  1532087464437    (millisecond precision)
+     * @example getPreciseTimestamp(2)  153208746444     (1/100 second precision)
+     * @example getPreciseTimestamp(1)  15320874644      (1/10 second precision)
+     * @example getPreciseTimestamp(0)  1532087464       (second precision)
+     * @example getPreciseTimestamp(-1) 153208746        (10 second precision)
+     * @example getPreciseTimestamp(-2) 15320875         (100 second precision)
+     *
+     * @param int $precision
+     *
+     * @return float
+     */
+    public function getPreciseTimestamp($precision = 6)
+    {
+        return round($this->rawFormat('Uu') / pow(10, 6 - $precision));
+    }
+
+    /**
+     * Returns the milliseconds timestamps used amongst other by Date javascript objects.
+     *
+     * @return float
+     */
+    public function valueOf()
+    {
+        return $this->getPreciseTimestamp(3);
+    }
+
+    /**
+     * Returns the timestamp with millisecond precision.
+     *
+     * @return int
+     */
+    public function getTimestampMs()
+    {
+        return (int) $this->getPreciseTimestamp(3);
+    }
+
+    /**
+     * @alias getTimestamp
+     *
+     * Returns the UNIX timestamp for the current date.
+     *
+     * @return int
+     */
+    public function unix()
+    {
+        return $this->getTimestamp();
+    }
+
+    /**
+     * Return an array with integer part digits and decimals digits split from one or more positive numbers
+     * (such as timestamps) as string with the given number of decimals (6 by default).
+     *
+     * By splitting integer and decimal, this method obtain a better precision than
+     * number_format when the input is a string.
+     *
+     * @param float|int|string $numbers  one or more numbers
+     * @param int              $decimals number of decimals precision (6 by default)
+     *
+     * @return array 0-index is integer part, 1-index is decimal part digits
+     */
+    private static function getIntegerAndDecimalParts($numbers, $decimals = 6)
+    {
+        if (\is_int($numbers) || \is_float($numbers)) {
+            $numbers = number_format($numbers, $decimals, '.', '');
+        }
+
+        $sign = str_starts_with($numbers, '-') ? -1 : 1;
+        $integer = 0;
+        $decimal = 0;
+
+        foreach (preg_split('`[^0-9.]+`', $numbers) as $chunk) {
+            [$integerPart, $decimalPart] = explode('.', "$chunk.");
+
+            $integer += (int) $integerPart;
+            $decimal += (float) ("0.$decimalPart");
+        }
+
+        $overflow = floor($decimal);
+        $integer += $overflow;
+        $decimal -= $overflow;
+
+        return [$sign * $integer, $decimal === 0.0 ? 0.0 : $sign * round($decimal * pow(10, $decimals))];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Units.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Units.php
new file mode 100644
index 0000000..aec85ab
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Units.php
@@ -0,0 +1,417 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+use Carbon\CarbonConverterInterface;
+use Carbon\CarbonInterface;
+use Carbon\CarbonInterval;
+use Carbon\Exceptions\UnitException;
+use Closure;
+use DateInterval;
+use ReturnTypeWillChange;
+
+/**
+ * Trait Units.
+ *
+ * Add, subtract and set units.
+ */
+trait Units
+{
+    /**
+     * Add seconds to the instance using timestamp. Positive $value travels
+     * forward while negative $value travels into the past.
+     *
+     * @param string $unit
+     * @param int    $value
+     *
+     * @return static
+     */
+    public function addRealUnit($unit, $value = 1)
+    {
+        switch ($unit) {
+            // @call addRealUnit
+            case 'micro':
+
+            // @call addRealUnit
+            case 'microsecond':
+                /* @var CarbonInterface $this */
+                $diff = $this->microsecond + $value;
+                $time = $this->getTimestamp();
+                $seconds = (int) floor($diff / static::MICROSECONDS_PER_SECOND);
+                $time += $seconds;
+                $diff -= $seconds * static::MICROSECONDS_PER_SECOND;
+                $microtime = str_pad((string) $diff, 6, '0', STR_PAD_LEFT);
+                $tz = $this->tz;
+
+                return $this->tz('UTC')->modify("@$time.$microtime")->tz($tz);
+
+            // @call addRealUnit
+            case 'milli':
+            // @call addRealUnit
+            case 'millisecond':
+                return $this->addRealUnit('microsecond', $value * static::MICROSECONDS_PER_MILLISECOND);
+
+                break;
+
+            // @call addRealUnit
+            case 'second':
+                break;
+
+            // @call addRealUnit
+            case 'minute':
+                $value *= static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'hour':
+                $value *= static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'day':
+                $value *= static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'week':
+                $value *= static::DAYS_PER_WEEK * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'month':
+                $value *= 30 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'quarter':
+                $value *= static::MONTHS_PER_QUARTER * 30 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'year':
+                $value *= 365 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'decade':
+                $value *= static::YEARS_PER_DECADE * 365 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'century':
+                $value *= static::YEARS_PER_CENTURY * 365 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            // @call addRealUnit
+            case 'millennium':
+                $value *= static::YEARS_PER_MILLENNIUM * 365 * static::HOURS_PER_DAY * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE;
+
+                break;
+
+            default:
+                if ($this->localStrictModeEnabled ?? static::isStrictModeEnabled()) {
+                    throw new UnitException("Invalid unit for real timestamp add/sub: '$unit'");
+                }
+
+                return $this;
+        }
+
+        /* @var CarbonInterface $this */
+        return $this->setTimestamp((int) ($this->getTimestamp() + $value));
+    }
+
+    public function subRealUnit($unit, $value = 1)
+    {
+        return $this->addRealUnit($unit, -$value);
+    }
+
+    /**
+     * Returns true if a property can be changed via setter.
+     *
+     * @param string $unit
+     *
+     * @return bool
+     */
+    public static function isModifiableUnit($unit)
+    {
+        static $modifiableUnits = [
+            // @call addUnit
+            'millennium',
+            // @call addUnit
+            'century',
+            // @call addUnit
+            'decade',
+            // @call addUnit
+            'quarter',
+            // @call addUnit
+            'week',
+            // @call addUnit
+            'weekday',
+        ];
+
+        return \in_array($unit, $modifiableUnits) || \in_array($unit, static::$units);
+    }
+
+    /**
+     * Call native PHP DateTime/DateTimeImmutable add() method.
+     *
+     * @param DateInterval $interval
+     *
+     * @return static
+     */
+    public function rawAdd(DateInterval $interval)
+    {
+        return parent::add($interval);
+    }
+
+    /**
+     * Add given units or interval to the current instance.
+     *
+     * @example $date->add('hour', 3)
+     * @example $date->add(15, 'days')
+     * @example $date->add(CarbonInterval::days(4))
+     *
+     * @param string|DateInterval|Closure|CarbonConverterInterface $unit
+     * @param int                                                  $value
+     * @param bool|null                                            $overflow
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function add($unit, $value = 1, $overflow = null)
+    {
+        if (\is_string($unit) && \func_num_args() === 1) {
+            $unit = CarbonInterval::make($unit);
+        }
+
+        // Can be removed if https://bugs.php.net/bug.php?id=81106
+        // is fixed
+        // @codeCoverageIgnoreStart
+        if (
+            $unit instanceof DateInterval &&
+            version_compare(PHP_VERSION, '8.1.0-dev', '>=') &&
+            ($unit->f < 0 || $unit->f >= 1)
+        ) {
+            $unit = clone $unit;
+            $seconds = floor($unit->f);
+            $unit->f -= $seconds;
+            $unit->s += (int) $seconds;
+        }
+        // @codeCoverageIgnoreEnd
+
+        if ($unit instanceof CarbonConverterInterface) {
+            return $this->resolveCarbon($unit->convertDate($this, false));
+        }
+
+        if ($unit instanceof Closure) {
+            return $this->resolveCarbon($unit($this, false));
+        }
+
+        if ($unit instanceof DateInterval) {
+            return parent::add($unit);
+        }
+
+        if (is_numeric($unit)) {
+            [$value, $unit] = [$unit, $value];
+        }
+
+        return $this->addUnit($unit, $value, $overflow);
+    }
+
+    /**
+     * Add given units to the current instance.
+     *
+     * @param string    $unit
+     * @param int       $value
+     * @param bool|null $overflow
+     *
+     * @return static
+     */
+    public function addUnit($unit, $value = 1, $overflow = null)
+    {
+        $date = $this;
+
+        if (!is_numeric($value) || !(float) $value) {
+            return $date->isMutable() ? $date : $date->avoidMutation();
+        }
+
+        $metaUnits = [
+            'millennium' => [static::YEARS_PER_MILLENNIUM, 'year'],
+            'century' => [static::YEARS_PER_CENTURY, 'year'],
+            'decade' => [static::YEARS_PER_DECADE, 'year'],
+            'quarter' => [static::MONTHS_PER_QUARTER, 'month'],
+        ];
+
+        if (isset($metaUnits[$unit])) {
+            [$factor, $unit] = $metaUnits[$unit];
+            $value *= $factor;
+        }
+
+        if ($unit === 'weekday') {
+            $weekendDays = static::getWeekendDays();
+
+            if ($weekendDays !== [static::SATURDAY, static::SUNDAY]) {
+                $absoluteValue = abs($value);
+                $sign = $value / max(1, $absoluteValue);
+                $weekDaysCount = 7 - min(6, \count(array_unique($weekendDays)));
+                $weeks = floor($absoluteValue / $weekDaysCount);
+
+                for ($diff = $absoluteValue % $weekDaysCount; $diff; $diff--) {
+                    /** @var static $date */
+                    $date = $date->addDays($sign);
+
+                    while (\in_array($date->dayOfWeek, $weekendDays)) {
+                        $date = $date->addDays($sign);
+                    }
+                }
+
+                $value = $weeks * $sign;
+                $unit = 'week';
+            }
+
+            $timeString = $date->toTimeString();
+        } elseif ($canOverflow = \in_array($unit, [
+                'month',
+                'year',
+            ]) && ($overflow === false || (
+                $overflow === null &&
+                ($ucUnit = ucfirst($unit).'s') &&
+                !($this->{'local'.$ucUnit.'Overflow'} ?? static::{'shouldOverflow'.$ucUnit}())
+            ))) {
+            $day = $date->day;
+        }
+
+        $value = (int) $value;
+
+        if ($unit === 'milli' || $unit === 'millisecond') {
+            $unit = 'microsecond';
+            $value *= static::MICROSECONDS_PER_MILLISECOND;
+        }
+
+        // Work-around for bug https://bugs.php.net/bug.php?id=75642
+        if ($unit === 'micro' || $unit === 'microsecond') {
+            $microseconds = $this->micro + $value;
+            $second = (int) floor($microseconds / static::MICROSECONDS_PER_SECOND);
+            $microseconds %= static::MICROSECONDS_PER_SECOND;
+            if ($microseconds < 0) {
+                $microseconds += static::MICROSECONDS_PER_SECOND;
+            }
+            $date = $date->microseconds($microseconds);
+            $unit = 'second';
+            $value = $second;
+        }
+        $date = $date->modify("$value $unit");
+
+        if (isset($timeString)) {
+            return $date->setTimeFromTimeString($timeString);
+        }
+
+        if (isset($canOverflow, $day) && $canOverflow && $day !== $date->day) {
+            $date = $date->modify('last day of previous month');
+        }
+
+        return $date;
+    }
+
+    /**
+     * Subtract given units to the current instance.
+     *
+     * @param string    $unit
+     * @param int       $value
+     * @param bool|null $overflow
+     *
+     * @return static
+     */
+    public function subUnit($unit, $value = 1, $overflow = null)
+    {
+        return $this->addUnit($unit, -$value, $overflow);
+    }
+
+    /**
+     * Call native PHP DateTime/DateTimeImmutable sub() method.
+     *
+     * @param DateInterval $interval
+     *
+     * @return static
+     */
+    public function rawSub(DateInterval $interval)
+    {
+        return parent::sub($interval);
+    }
+
+    /**
+     * Subtract given units or interval to the current instance.
+     *
+     * @example $date->sub('hour', 3)
+     * @example $date->sub(15, 'days')
+     * @example $date->sub(CarbonInterval::days(4))
+     *
+     * @param string|DateInterval|Closure|CarbonConverterInterface $unit
+     * @param int                                                  $value
+     * @param bool|null                                            $overflow
+     *
+     * @return static
+     */
+    #[ReturnTypeWillChange]
+    public function sub($unit, $value = 1, $overflow = null)
+    {
+        if (\is_string($unit) && \func_num_args() === 1) {
+            $unit = CarbonInterval::make($unit);
+        }
+
+        if ($unit instanceof CarbonConverterInterface) {
+            return $this->resolveCarbon($unit->convertDate($this, true));
+        }
+
+        if ($unit instanceof Closure) {
+            return $this->resolveCarbon($unit($this, true));
+        }
+
+        if ($unit instanceof DateInterval) {
+            return parent::sub($unit);
+        }
+
+        if (is_numeric($unit)) {
+            [$value, $unit] = [$unit, $value];
+        }
+
+        return $this->addUnit($unit, -(float) $value, $overflow);
+    }
+
+    /**
+     * Subtract given units or interval to the current instance.
+     *
+     * @see sub()
+     *
+     * @param string|DateInterval $unit
+     * @param int                 $value
+     * @param bool|null           $overflow
+     *
+     * @return static
+     */
+    public function subtract($unit, $value = 1, $overflow = null)
+    {
+        if (\is_string($unit) && \func_num_args() === 1) {
+            $unit = CarbonInterval::make($unit);
+        }
+
+        return $this->sub($unit, $value, $overflow);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Week.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Week.php
new file mode 100644
index 0000000..64cece7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Traits/Week.php
@@ -0,0 +1,218 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon\Traits;
+
+/**
+ * Trait Week.
+ *
+ * week and ISO week number, year and count in year.
+ *
+ * Depends on the following properties:
+ *
+ * @property int $daysInYear
+ * @property int $dayOfWeek
+ * @property int $dayOfYear
+ * @property int $year
+ *
+ * Depends on the following methods:
+ *
+ * @method static addWeeks(int $weeks = 1)
+ * @method static copy()
+ * @method static dayOfYear(int $dayOfYear)
+ * @method string getTranslationMessage(string $key, ?string $locale = null, ?string $default = null, $translator = null)
+ * @method static next(int|string $day = null)
+ * @method static startOfWeek(int $day = 1)
+ * @method static subWeeks(int $weeks = 1)
+ * @method static year(int $year = null)
+ */
+trait Week
+{
+    /**
+     * Set/get the week number of year using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $year      if null, act as a getter, if not null, set the year and return current instance.
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int|static
+     */
+    public function isoWeekYear($year = null, $dayOfWeek = null, $dayOfYear = null)
+    {
+        return $this->weekYear(
+            $year,
+            $dayOfWeek ?? 1,
+            $dayOfYear ?? 4
+        );
+    }
+
+    /**
+     * Set/get the week number of year using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $year      if null, act as a getter, if not null, set the year and return current instance.
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int|static
+     */
+    public function weekYear($year = null, $dayOfWeek = null, $dayOfYear = null)
+    {
+        $dayOfWeek = $dayOfWeek ?? $this->getTranslationMessage('first_day_of_week') ?? 0;
+        $dayOfYear = $dayOfYear ?? $this->getTranslationMessage('day_of_first_week_of_year') ?? 1;
+
+        if ($year !== null) {
+            $year = (int) round($year);
+
+            if ($this->weekYear(null, $dayOfWeek, $dayOfYear) === $year) {
+                return $this->avoidMutation();
+            }
+
+            $week = $this->week(null, $dayOfWeek, $dayOfYear);
+            $day = $this->dayOfWeek;
+            $date = $this->year($year);
+            switch ($date->weekYear(null, $dayOfWeek, $dayOfYear) - $year) {
+                case 1:
+                    $date = $date->subWeeks(26);
+
+                    break;
+                case -1:
+                    $date = $date->addWeeks(26);
+
+                    break;
+            }
+
+            $date = $date->addWeeks($week - $date->week(null, $dayOfWeek, $dayOfYear))->startOfWeek($dayOfWeek);
+
+            if ($date->dayOfWeek === $day) {
+                return $date;
+            }
+
+            return $date->next($day);
+        }
+
+        $year = $this->year;
+        $day = $this->dayOfYear;
+        $date = $this->avoidMutation()->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+
+        if ($date->year === $year && $day < $date->dayOfYear) {
+            return $year - 1;
+        }
+
+        $date = $this->avoidMutation()->addYear()->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+
+        if ($date->year === $year && $day >= $date->dayOfYear) {
+            return $year + 1;
+        }
+
+        return $year;
+    }
+
+    /**
+     * Get the number of weeks of the current week-year using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int
+     */
+    public function isoWeeksInYear($dayOfWeek = null, $dayOfYear = null)
+    {
+        return $this->weeksInYear(
+            $dayOfWeek ?? 1,
+            $dayOfYear ?? 4
+        );
+    }
+
+    /**
+     * Get the number of weeks of the current week-year using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
+     * @param int|null $dayOfYear first day of year included in the week #1
+     *
+     * @return int
+     */
+    public function weeksInYear($dayOfWeek = null, $dayOfYear = null)
+    {
+        $dayOfWeek = $dayOfWeek ?? $this->getTranslationMessage('first_day_of_week') ?? 0;
+        $dayOfYear = $dayOfYear ?? $this->getTranslationMessage('day_of_first_week_of_year') ?? 1;
+        $year = $this->year;
+        $start = $this->avoidMutation()->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+        $startDay = $start->dayOfYear;
+        if ($start->year !== $year) {
+            $startDay -= $start->daysInYear;
+        }
+        $end = $this->avoidMutation()->addYear()->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+        $endDay = $end->dayOfYear;
+        if ($end->year !== $year) {
+            $endDay += $this->daysInYear;
+        }
+
+        return (int) round(($endDay - $startDay) / 7);
+    }
+
+    /**
+     * Get/set the week number using given first day of week and first
+     * day of year included in the first week. Or use US format if no settings
+     * given (Sunday / Jan 6).
+     *
+     * @param int|null $week
+     * @param int|null $dayOfWeek
+     * @param int|null $dayOfYear
+     *
+     * @return int|static
+     */
+    public function week($week = null, $dayOfWeek = null, $dayOfYear = null)
+    {
+        $date = $this;
+        $dayOfWeek = $dayOfWeek ?? $this->getTranslationMessage('first_day_of_week') ?? 0;
+        $dayOfYear = $dayOfYear ?? $this->getTranslationMessage('day_of_first_week_of_year') ?? 1;
+
+        if ($week !== null) {
+            return $date->addWeeks(round($week) - $this->week(null, $dayOfWeek, $dayOfYear));
+        }
+
+        $start = $date->avoidMutation()->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+        $end = $date->avoidMutation()->startOfWeek($dayOfWeek);
+        if ($start > $end) {
+            $start = $start->subWeeks(26)->dayOfYear($dayOfYear)->startOfWeek($dayOfWeek);
+        }
+        $week = (int) ($start->diffInDays($end) / 7 + 1);
+
+        return $week > $end->weeksInYear($dayOfWeek, $dayOfYear) ? 1 : $week;
+    }
+
+    /**
+     * Get/set the week number using given first day of week and first
+     * day of year included in the first week. Or use ISO format if no settings
+     * given.
+     *
+     * @param int|null $week
+     * @param int|null $dayOfWeek
+     * @param int|null $dayOfYear
+     *
+     * @return int|static
+     */
+    public function isoWeek($week = null, $dayOfWeek = null, $dayOfYear = null)
+    {
+        return $this->week(
+            $week,
+            $dayOfWeek ?? 1,
+            $dayOfYear ?? 4
+        );
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Translator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Translator.php
new file mode 100644
index 0000000..9af48eb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/nesbot/carbon/src/Carbon/Translator.php
@@ -0,0 +1,403 @@
+<?php
+
+/**
+ * This file is part of the Carbon package.
+ *
+ * (c) Brian Nesbitt <brian@nesbot.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Carbon;
+
+use Closure;
+use ReflectionException;
+use ReflectionFunction;
+use Symfony\Component\Translation;
+
+class Translator extends Translation\Translator
+{
+    /**
+     * Translator singletons for each language.
+     *
+     * @var array
+     */
+    protected static $singletons = [];
+
+    /**
+     * List of custom localized messages.
+     *
+     * @var array
+     */
+    protected $messages = [];
+
+    /**
+     * List of custom directories that contain translation files.
+     *
+     * @var string[]
+     */
+    protected $directories = [];
+
+    /**
+     * Set to true while constructing.
+     *
+     * @var bool
+     */
+    protected $initializing = false;
+
+    /**
+     * List of locales aliases.
+     *
+     * @var string[]
+     */
+    protected $aliases = [
+        'me' => 'sr_Latn_ME',
+        'scr' => 'sh',
+    ];
+
+    /**
+     * Return a singleton instance of Translator.
+     *
+     * @param string|null $locale optional initial locale ("en" - english by default)
+     *
+     * @return static
+     */
+    public static function get($locale = null)
+    {
+        $locale = $locale ?: 'en';
+
+        if (!isset(static::$singletons[$locale])) {
+            static::$singletons[$locale] = new static($locale ?: 'en');
+        }
+
+        return static::$singletons[$locale];
+    }
+
+    public function __construct($locale, Translation\Formatter\MessageFormatterInterface $formatter = null, $cacheDir = null, $debug = false)
+    {
+        $this->initializing = true;
+        $this->directories = [__DIR__.'/Lang'];
+        $this->addLoader('array', new Translation\Loader\ArrayLoader());
+        parent::__construct($locale, $formatter, $cacheDir, $debug);
+        $this->initializing = false;
+    }
+
+    /**
+     * Returns the list of directories translation files are searched in.
+     *
+     * @return array
+     */
+    public function getDirectories(): array
+    {
+        return $this->directories;
+    }
+
+    /**
+     * Set list of directories translation files are searched in.
+     *
+     * @param array $directories new directories list
+     *
+     * @return $this
+     */
+    public function setDirectories(array $directories)
+    {
+        $this->directories = $directories;
+
+        return $this;
+    }
+
+    /**
+     * Add a directory to the list translation files are searched in.
+     *
+     * @param string $directory new directory
+     *
+     * @return $this
+     */
+    public function addDirectory(string $directory)
+    {
+        $this->directories[] = $directory;
+
+        return $this;
+    }
+
+    /**
+     * Remove a directory from the list translation files are searched in.
+     *
+     * @param string $directory directory path
+     *
+     * @return $this
+     */
+    public function removeDirectory(string $directory)
+    {
+        $search = rtrim(strtr($directory, '\\', '/'), '/');
+
+        return $this->setDirectories(array_filter($this->getDirectories(), function ($item) use ($search) {
+            return rtrim(strtr($item, '\\', '/'), '/') !== $search;
+        }));
+    }
+
+    /**
+     * Returns the translation.
+     *
+     * @param string $id
+     * @param array  $parameters
+     * @param string $domain
+     * @param string $locale
+     *
+     * @return string
+     */
+    public function trans($id, array $parameters = [], $domain = null, $locale = null)
+    {
+        if ($domain === null) {
+            $domain = 'messages';
+        }
+
+        $format = $this->getCatalogue($locale)->get((string) $id, $domain);
+
+        if ($format instanceof Closure) {
+            // @codeCoverageIgnoreStart
+            try {
+                $count = (new ReflectionFunction($format))->getNumberOfRequiredParameters();
+            } catch (ReflectionException $exception) {
+                $count = 0;
+            }
+            // @codeCoverageIgnoreEnd
+
+            return $format(
+                ...array_values($parameters),
+                ...array_fill(0, max(0, $count - \count($parameters)), null)
+            );
+        }
+
+        return parent::trans($id, $parameters, $domain, $locale);
+    }
+
+    /**
+     * Reset messages of a locale (all locale if no locale passed).
+     * Remove custom messages and reload initial messages from matching
+     * file in Lang directory.
+     *
+     * @param string|null $locale
+     *
+     * @return bool
+     */
+    public function resetMessages($locale = null)
+    {
+        if ($locale === null) {
+            $this->messages = [];
+
+            return true;
+        }
+
+        foreach ($this->getDirectories() as $directory) {
+            $data = @include sprintf('%s/%s.php', rtrim($directory, '\\/'), $locale);
+
+            if ($data !== false) {
+                $this->messages[$locale] = $data;
+                $this->addResource('array', $this->messages[$locale], $locale);
+
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Returns the list of files matching a given locale prefix (or all if empty).
+     *
+     * @param string $prefix prefix required to filter result
+     *
+     * @return array
+     */
+    public function getLocalesFiles($prefix = '')
+    {
+        $files = [];
+
+        foreach ($this->getDirectories() as $directory) {
+            $directory = rtrim($directory, '\\/');
+
+            foreach (glob("$directory/$prefix*.php") as $file) {
+                $files[] = $file;
+            }
+        }
+
+        return array_unique($files);
+    }
+
+    /**
+     * Returns the list of internally available locales and already loaded custom locales.
+     * (It will ignore custom translator dynamic loading.)
+     *
+     * @param string $prefix prefix required to filter result
+     *
+     * @return array
+     */
+    public function getAvailableLocales($prefix = '')
+    {
+        $locales = [];
+        foreach ($this->getLocalesFiles($prefix) as $file) {
+            $locales[] = substr($file, strrpos($file, '/') + 1, -4);
+        }
+
+        return array_unique(array_merge($locales, array_keys($this->messages)));
+    }
+
+    /**
+     * Init messages language from matching file in Lang directory.
+     *
+     * @param string $locale
+     *
+     * @return bool
+     */
+    protected function loadMessagesFromFile($locale)
+    {
+        if (isset($this->messages[$locale])) {
+            return true;
+        }
+
+        return $this->resetMessages($locale);
+    }
+
+    /**
+     * Set messages of a locale and take file first if present.
+     *
+     * @param string $locale
+     * @param array  $messages
+     *
+     * @return $this
+     */
+    public function setMessages($locale, $messages)
+    {
+        $this->loadMessagesFromFile($locale);
+        $this->addResource('array', $messages, $locale);
+        $this->messages[$locale] = array_merge(
+            isset($this->messages[$locale]) ? $this->messages[$locale] : [],
+            $messages
+        );
+
+        return $this;
+    }
+
+    /**
+     * Set messages of the current locale and take file first if present.
+     *
+     * @param array $messages
+     *
+     * @return $this
+     */
+    public function setTranslations($messages)
+    {
+        return $this->setMessages($this->getLocale(), $messages);
+    }
+
+    /**
+     * Get messages of a locale, if none given, return all the
+     * languages.
+     *
+     * @param string|null $locale
+     *
+     * @return array
+     */
+    public function getMessages($locale = null)
+    {
+        return $locale === null ? $this->messages : $this->messages[$locale];
+    }
+
+    /**
+     * Set the current translator locale and indicate if the source locale file exists
+     *
+     * @param string $locale locale ex. en
+     *
+     * @return bool
+     */
+    public function setLocale($locale)
+    {
+        $locale = preg_replace_callback('/[-_]([a-z]{2,}|[0-9]{2,})/', function ($matches) {
+            // _2-letters or YUE is a region, _3+-letters is a variant
+            $upper = strtoupper($matches[1]);
+
+            if ($upper === 'YUE' || $upper === 'ISO' || \strlen($upper) < 3) {
+                return "_$upper";
+            }
+
+            return '_'.ucfirst($matches[1]);
+        }, strtolower($locale));
+
+        $previousLocale = $this->getLocale();
+
+        if ($previousLocale === $locale && isset($this->messages[$locale])) {
+            return true;
+        }
+
+        unset(static::$singletons[$previousLocale]);
+
+        if ($locale === 'auto') {
+            $completeLocale = setlocale(LC_TIME, '0');
+            $locale = preg_replace('/^([^_.-]+).*$/', '$1', $completeLocale);
+            $locales = $this->getAvailableLocales($locale);
+
+            $completeLocaleChunks = preg_split('/[_.-]+/', $completeLocale);
+
+            $getScore = function ($language) use ($completeLocaleChunks) {
+                return static::compareChunkLists($completeLocaleChunks, preg_split('/[_.-]+/', $language));
+            };
+
+            usort($locales, function ($first, $second) use ($getScore) {
+                return $getScore($second) <=> $getScore($first);
+            });
+
+            $locale = $locales[0];
+        }
+
+        if (isset($this->aliases[$locale])) {
+            $locale = $this->aliases[$locale];
+        }
+
+        // If subtag (ex: en_CA) first load the macro (ex: en) to have a fallback
+        if (str_contains($locale, '_') &&
+            $this->loadMessagesFromFile($macroLocale = preg_replace('/^([^_]+).*$/', '$1', $locale))
+        ) {
+            parent::setLocale($macroLocale);
+        }
+
+        if ($this->loadMessagesFromFile($locale) || $this->initializing) {
+            parent::setLocale($locale);
+
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * Show locale on var_dump().
+     *
+     * @return array
+     */
+    public function __debugInfo()
+    {
+        return [
+            'locale' => $this->getLocale(),
+        ];
+    }
+
+    private static function compareChunkLists($referenceChunks, $chunks)
+    {
+        $score = 0;
+
+        foreach ($referenceChunks as $index => $chunk) {
+            if (!isset($chunks[$index])) {
+                $score++;
+
+                continue;
+            }
+
+            if (strtolower($chunks[$index]) === strtolower($chunk)) {
+                $score += 10;
+            }
+        }
+
+        return $score;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/.github/workflows/main.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/.github/workflows/main.yml
new file mode 100644
index 0000000..34c8210
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/.github/workflows/main.yml
@@ -0,0 +1,60 @@
+name: CI
+
+on: [push]
+
+jobs:
+
+  tests:
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        php: [7.2, 7.3, 7.4, 8.0]
+        dependency-version: [prefer-lowest, prefer-stable]
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v1
+
+      - name: Setup PHP
+        uses: shivammathur/setup-php@v2
+        with:
+          php-version: ${{ matrix.php }}
+          extensions: mailparse
+          coverage: none
+
+      - name: Install dependencies
+        run: composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest --no-progress
+
+      - name: Execute tests
+        run: vendor/bin/phpunit
+
+  php-cs:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v1
+
+      - name: Install dependencies
+        run: composer update --no-progress --ignore-platform-reqs
+
+      - name: Execute phpcs
+        run: vendor/bin/phpcs src tests --standard=psr2
+
+  coverage:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v1
+
+      - name: Setup PHP
+        uses: shivammathur/setup-php@v2
+        with:
+          php-version: 7.4
+          extensions: mailparse
+
+      - name: Install dependencies
+        run: composer update --prefer-dist --no-interaction --no-suggest --no-progress
+
+      - name: Execute code coverage
+        run: |
+          vendor/bin/phpunit --coverage-clover=coverage.xml --whitelist src
+          bash <(curl -s https://codecov.io/bash) -t ${{ secrets.COVERALLS_REPO_TOKEN }}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/README.md
index 68f997a..24a6e0e 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/README.md
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/README.md
@@ -1,6 +1,6 @@
 # php-mime-mail-parser
 
-A fully tested email parser for PHP 7.1+ (mailparse extension wrapper).
+A fully tested email parser for PHP 7.2+ (mailparse extension wrapper).
 
 It's the most effective php email parser around in terms of performance, foreign character encoding, attachment handling, and ease of use.
 Internet Message Format RFC [822](https://tools.ietf.org/html/rfc822), [2822](https://tools.ietf.org/html/rfc2822), [5322](https://tools.ietf.org/html/rfc5322).
@@ -23,7 +23,7 @@
 
 We use GitHub Actions, Codecov, Codacy to help ensure code quality. You can see real-time statistics below:
 
-[![Actions Status](https://wdp9fww0r9.execute-api.us-west-2.amazonaws.com/production/badge/php-mime-mail-parser/php-mime-mail-parser?style=flat-square)](https://wdp9fww0r9.execute-api.us-west-2.amazonaws.com/production/results/php-mime-mail-parser/php-mime-mail-parser)
+[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fphp-mime-mail-parser%2Fphp-mime-mail-parser%2Fbadge%3Fref%3Dmaster&style=flat-square)](https://actions-badge.atrox.dev/php-mime-mail-parser/php-mime-mail-parser/goto?ref=master)
 [![Coverage](https://img.shields.io/codecov/c/gh/php-mime-mail-parser/php-mime-mail-parser?style=flat-square)](https://codecov.io/gh/php-mime-mail-parser/php-mime-mail-parser)
 [![Code Quality](https://img.shields.io/codacy/grade/4e0e44fee21147ddbdd18ff976251875?style=flat-square)](https://app.codacy.com/app/php-mime-mail-parser/php-mime-mail-parser)
 
@@ -40,19 +40,20 @@
 
 The following versions of PHP are supported:
 
-* PHP 7.1
 * PHP 7.2
 * PHP 7.3
+* PHP 7.4
 
 Previous Versions:
 
 | PHP Compatibility  | Version |
 | ------------- | ------------- |
-| HHVM  | php-mime-mail-parser 2.11.1  |
-| PHP 5.4  | php-mime-mail-parser 2.11.1  |
-| PHP 5.5  | php-mime-mail-parser 2.11.1  |
+| HHVM  | php-mime-mail-parser 2.11.1    |
+| PHP 5.4  | php-mime-mail-parser 2.11.1 |
+| PHP 5.5  | php-mime-mail-parser 2.11.1 |
 | PHP 5.6  | php-mime-mail-parser 3.0.4  |
 | PHP 7.0  | php-mime-mail-parser 3.0.4  |
+| PHP 7.1  | php-mime-mail-parser 5.0.5  |
 
 Make sure you have the mailparse extension (http://php.net/manual/en/book.mailparse.php) properly installed. The command line `php -m | grep mailparse` need to return "mailparse".
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/composer.json
index a797183..e9861a2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/php-mime-mail-parser/php-mime-mail-parser/composer.json
@@ -1,7 +1,7 @@
 {
     "name": "php-mime-mail-parser/php-mime-mail-parser",
     "type": "library",
-    "description": "A fully tested email parser for PHP 7.1+ (mailparse extension wrapper).",
+    "description": "A fully tested email parser for PHP 7.2+ (mailparse extension wrapper).",
     "keywords": ["mime", "mail", "mailparse", "MimeMailParser", "parser", "php"],
     "homepage": "https://github.com/php-mime-mail-parser/php-mime-mail-parser",
     "license": "MIT",
@@ -42,14 +42,13 @@
         "url":"https://github.com/php-mime-mail-parser/php-mime-mail-parser.git"
     },
     "require": {
-        "php":           "^7.1",
+        "php":           "^7.2|^8.0",
         "ext-mailparse": "*"
     },
     "require-dev": {
-        "phpunit/phpunit":              "^7.0",
-        "phpunit/php-token-stream":     "^3.0",
-        "php-coveralls/php-coveralls":  "^2.1",
-        "squizlabs/php_codesniffer":    "^3.4"
+        "phpunit/phpunit":              "^8.0",
+        "php-coveralls/php-coveralls":  "^2.2",
+        "squizlabs/php_codesniffer":    "^3.5"
     },
     "replace": {
         "exorus/php-mime-mail-parser":   "*",
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/README.md
index d9cbbaa..fa27d2f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/README.md
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/README.md
@@ -1,46 +1,45 @@
 ![PHPMailer](https://raw.github.com/PHPMailer/PHPMailer/master/examples/images/phpmailer.png)
 
-# PHPMailer - A full-featured email creation and transfer class for PHP
+# PHPMailer – A full-featured email creation and transfer class for PHP
 
-Build status: [![Build Status](https://travis-ci.org/PHPMailer/PHPMailer.svg)](https://travis-ci.org/PHPMailer/PHPMailer)
-[![Scrutinizer Quality Score](https://scrutinizer-ci.com/g/PHPMailer/PHPMailer/badges/quality-score.png?s=3758e21d279becdf847a557a56a3ed16dfec9d5d)](https://scrutinizer-ci.com/g/PHPMailer/PHPMailer/)
-[![Code Coverage](https://scrutinizer-ci.com/g/PHPMailer/PHPMailer/badges/coverage.png?s=3fe6ca5fe8cd2cdf96285756e42932f7ca256962)](https://scrutinizer-ci.com/g/PHPMailer/PHPMailer/)
+[![Test status](https://github.com/PHPMailer/PHPMailer/workflows/Tests/badge.svg)](https://github.com/PHPMailer/PHPMailer/actions) [![Latest Stable Version](https://poser.pugx.org/phpmailer/phpmailer/v/stable.svg)](https://packagist.org/packages/phpmailer/phpmailer) [![Total Downloads](https://poser.pugx.org/phpmailer/phpmailer/downloads)](https://packagist.org/packages/phpmailer/phpmailer) [![License](https://poser.pugx.org/phpmailer/phpmailer/license.svg)](https://packagist.org/packages/phpmailer/phpmailer) [![API Docs](https://github.com/phpmailer/phpmailer/workflows/Docs/badge.svg)](https://phpmailer.github.io/PHPMailer/)
 
-[![Latest Stable Version](https://poser.pugx.org/phpmailer/phpmailer/v/stable.svg)](https://packagist.org/packages/phpmailer/phpmailer) [![Total Downloads](https://poser.pugx.org/phpmailer/phpmailer/downloads)](https://packagist.org/packages/phpmailer/phpmailer) [![Latest Unstable Version](https://poser.pugx.org/phpmailer/phpmailer/v/unstable.svg)](https://packagist.org/packages/phpmailer/phpmailer) [![License](https://poser.pugx.org/phpmailer/phpmailer/license.svg)](https://packagist.org/packages/phpmailer/phpmailer) [![API Docs](https://github.com/phpmailer/phpmailer/workflows/Docs/badge.svg)](http://phpmailer.github.io/PHPMailer/)
-
-## Class Features
+## Features
 - Probably the world's most popular code for sending email from PHP!
 - Used by many open-source projects: WordPress, Drupal, 1CRM, SugarCRM, Yii, Joomla! and many more
-- Integrated SMTP support - send without a local mail server
+- Integrated SMTP support – send without a local mail server
 - Send emails with multiple To, CC, BCC and Reply-to addresses
 - Multipart/alternative emails for mail clients that do not read HTML email
 - Add attachments, including inline
 - Support for UTF-8 content and 8bit, base64, binary, and quoted-printable encodings
-- SMTP authentication with LOGIN, PLAIN, CRAM-MD5, and XOAUTH2 mechanisms over SSL and SMTP+STARTTLS transports
+- SMTP authentication with LOGIN, PLAIN, CRAM-MD5, and XOAUTH2 mechanisms over SMTPS and SMTP+STARTTLS transports
 - Validates email addresses automatically
-- Protect against header injection attacks
+- Protects against header injection attacks
 - Error messages in over 50 languages!
 - DKIM and S/MIME signing support
-- Compatible with PHP 5.5 and later
+- Compatible with PHP 5.5 and later, including PHP 8.0
 - Namespaced to prevent name clashes
 - Much more!
 
 ## Why you might need it
-Many PHP developers need to send email from their code. The only PHP function that supports this is [`mail()`](https://www.php.net/manual/en/function.mail.php). However, it does not provide any assistance for making use of popular features such as encryption, authentication, HTML messages, and attachments.
+Many PHP developers need to send email from their code. The only PHP function that supports this directly is [`mail()`](https://www.php.net/manual/en/function.mail.php). However, it does not provide any assistance for making use of popular features such as encryption, authentication, HTML messages, and attachments.
 
-Formatting email correctly is surprisingly difficult. There are myriad overlapping RFCs, requiring tight adherence to horribly complicated formatting and encoding rules – the vast majority of code that you'll find online that uses the `mail()` function directly is just plain wrong!
-*Please* don't be tempted to do it yourself – if you don't use PHPMailer, there are many other excellent libraries that you should look at before rolling your own. Try [SwiftMailer](https://swiftmailer.symfony.com/), [Zend/Mail](https://zendframework.github.io/zend-mail/), [ZetaComponents](https://github.com/zetacomponents/Mail) etc.
+Formatting email correctly is surprisingly difficult. There are myriad overlapping (and conflicting) standards, requiring tight adherence to horribly complicated formatting and encoding rules – the vast majority of code that you'll find online that uses the `mail()` function directly is just plain wrong, if not unsafe!
 
-The PHP `mail()` function usually sends via a local mail server, typically fronted by a `sendmail` binary on Linux, BSD, and macOS platforms, however, Windows usually doesn't include a local mail server; PHPMailer's integrated SMTP implementation allows email sending on Windows platforms without a local mail server.
+The PHP `mail()` function usually sends via a local mail server, typically fronted by a `sendmail` binary on Linux, BSD, and macOS platforms, however, Windows usually doesn't include a local mail server; PHPMailer's integrated SMTP client allows email sending on all platforms without needing a local mail server. Be aware though, that the `mail()` function should be avoided when possible; it's both faster and [safer](https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html) to use SMTP to localhost.
+
+*Please* don't be tempted to do it yourself – if you don't use PHPMailer, there are many other excellent libraries that
+you should look at before rolling your own. Try [SwiftMailer](https://swiftmailer.symfony.com/)
+, [Laminas/Mail](https://docs.laminas.dev/laminas-mail/), [ZetaComponents](https://github.com/zetacomponents/Mail) etc.
 
 ## License
-This software is distributed under the [LGPL 2.1](http://www.gnu.org/licenses/lgpl-2.1.html) license, along with the [GPL Cooperation Commitment](https://gplcc.github.io/gplcc/). Please read LICENSE for information on the software availability and distribution.
+This software is distributed under the [LGPL 2.1](http://www.gnu.org/licenses/lgpl-2.1.html) license, along with the [GPL Cooperation Commitment](https://gplcc.github.io/gplcc/). Please read [LICENSE](https://github.com/PHPMailer/PHPMailer/blob/master/LICENSE) for information on the software availability and distribution.
 
 ## Installation & loading
 PHPMailer is available on [Packagist](https://packagist.org/packages/phpmailer/phpmailer) (using semantic versioning), and installation via [Composer](https://getcomposer.org) is the recommended way to install PHPMailer. Just add this line to your `composer.json` file:
 
 ```json
-"phpmailer/phpmailer": "~6.1"
+"phpmailer/phpmailer": "^6.2"
 ```
 
 or run
@@ -53,7 +52,8 @@
 
 If you want to use the Gmail XOAUTH2 authentication class, you will also need to add a dependency on the `league/oauth2-client` package in your `composer.json`.
 
-Alternatively, if you're not using Composer, copy the contents of the PHPMailer folder into one of the `include_path` directories specified in your PHP configuration and load each class file manually:
+Alternatively, if you're not using Composer, you
+can [download PHPMailer as a zip file](https://github.com/PHPMailer/PHPMailer/archive/master.zip), (note that docs and examples are not included in the zip file), then copy the contents of the PHPMailer folder into one of the `include_path` directories specified in your PHP configuration and load each class file manually:
 
 ```php
 <?php
@@ -65,60 +65,58 @@
 require 'path/to/PHPMailer/src/SMTP.php';
 ```
 
-If you're not using the `SMTP` class explicitly (you're probably not), you don't need a `use` line for the SMTP class.
-
-If you don't speak git or just want a tarball, click the 'zip' button on the right of the project page in GitHub, though note that docs and examples are not included in the tarball.
+If you're not using the `SMTP` class explicitly (you're probably not), you don't need a `use` line for the SMTP class. Even if you're not using exceptions, you do still need to load the `Exception` class as it is used internally.
 
 ## Legacy versions
-PHPMailer 5.2 (which is compatible with PHP 5.0 - 7.0) is no longer being supported, even for security updates. You will find the latest version of 5.2 in the [5.2-stable branch](https://github.com/PHPMailer/PHPMailer/tree/5.2-stable). If you're using PHP 5.5 or later (which you should be), switch to the 6.x releases.
+PHPMailer 5.2 (which is compatible with PHP 5.0 — 7.0) is no longer supported, even for security updates. You will find the latest version of 5.2 in the [5.2-stable branch](https://github.com/PHPMailer/PHPMailer/tree/5.2-stable). If you're using PHP 5.5 or later (which you should be), switch to the 6.x releases.
 
 ### Upgrading from 5.2
 The biggest changes are that source files are now in the `src/` folder, and PHPMailer now declares the namespace `PHPMailer\PHPMailer`. This has several important effects – [read the upgrade guide](https://github.com/PHPMailer/PHPMailer/tree/master/UPGRADING.md) for more details.
 
 ### Minimal installation
-While installing the entire package manually or with Composer is simple, convenient, and reliable, you may want to include only vital files in your project. At the very least you will need [src/PHPMailer.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/PHPMailer.php). If you're using SMTP, you'll need [src/SMTP.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/SMTP.php), and if you're using POP-before SMTP, you'll need [src/POP3.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/POP3.php). You can skip the [language](https://github.com/PHPMailer/PHPMailer/tree/master/language/) folder if you're not showing errors to users and can make do with English-only errors. If you're using XOAUTH2 you will need [src/OAuth.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/OAuth.php) as well as the Composer dependencies for the services you wish to authenticate with. Really, it's much easier to use Composer!
+While installing the entire package manually or with Composer is simple, convenient, and reliable, you may want to include only vital files in your project. At the very least you will need [src/PHPMailer.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/PHPMailer.php). If you're using SMTP, you'll need [src/SMTP.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/SMTP.php), and if you're using POP-before SMTP (*very* unlikely!), you'll need [src/POP3.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/POP3.php). You can skip the [language](https://github.com/PHPMailer/PHPMailer/tree/master/language/) folder if you're not showing errors to users and can make do with English-only errors. If you're using XOAUTH2 you will need [src/OAuth.php](https://github.com/PHPMailer/PHPMailer/tree/master/src/OAuth.php) as well as the Composer dependencies for the services you wish to authenticate with. Really, it's much easier to use Composer!
 
 ## A Simple Example
 
 ```php
 <?php
-// Import PHPMailer classes into the global namespace
-// These must be at the top of your script, not inside a function
+//Import PHPMailer classes into the global namespace
+//These must be at the top of your script, not inside a function
 use PHPMailer\PHPMailer\PHPMailer;
 use PHPMailer\PHPMailer\SMTP;
 use PHPMailer\PHPMailer\Exception;
 
-// Load Composer's autoloader
+//Load Composer's autoloader
 require 'vendor/autoload.php';
 
-// Instantiation and passing `true` enables exceptions
+//Instantiation and passing `true` enables exceptions
 $mail = new PHPMailer(true);
 
 try {
     //Server settings
-    $mail->SMTPDebug = SMTP::DEBUG_SERVER;                      // Enable verbose debug output
-    $mail->isSMTP();                                            // Send using SMTP
-    $mail->Host       = 'smtp1.example.com';                    // Set the SMTP server to send through
-    $mail->SMTPAuth   = true;                                   // Enable SMTP authentication
-    $mail->Username   = 'user@example.com';                     // SMTP username
-    $mail->Password   = 'secret';                               // SMTP password
-    $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;         // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
-    $mail->Port       = 587;                                    // TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above
+    $mail->SMTPDebug = SMTP::DEBUG_SERVER;                      //Enable verbose debug output
+    $mail->isSMTP();                                            //Send using SMTP
+    $mail->Host       = 'smtp.example.com';                     //Set the SMTP server to send through
+    $mail->SMTPAuth   = true;                                   //Enable SMTP authentication
+    $mail->Username   = 'user@example.com';                     //SMTP username
+    $mail->Password   = 'secret';                               //SMTP password
+    $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;         //Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
+    $mail->Port       = 587;                                    //TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above
 
     //Recipients
     $mail->setFrom('from@example.com', 'Mailer');
-    $mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
-    $mail->addAddress('ellen@example.com');               // Name is optional
+    $mail->addAddress('joe@example.net', 'Joe User');     //Add a recipient
+    $mail->addAddress('ellen@example.com');               //Name is optional
     $mail->addReplyTo('info@example.com', 'Information');
     $mail->addCC('cc@example.com');
     $mail->addBCC('bcc@example.com');
 
-    // Attachments
-    $mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
-    $mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
+    //Attachments
+    $mail->addAttachment('/var/tmp/file.tar.gz');         //Add attachments
+    $mail->addAttachment('/tmp/image.jpg', 'new.jpg');    //Optional name
 
-    // Content
-    $mail->isHTML(true);                                  // Set email format to HTML
+    //Content
+    $mail->isHTML(true);                                  //Set email format to HTML
     $mail->Subject = 'Here is the subject';
     $mail->Body    = 'This is the HTML message body <b>in bold!</b>';
     $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
@@ -130,7 +128,7 @@
 }
 ```
 
-You'll find plenty more to play with in the [examples](https://github.com/PHPMailer/PHPMailer/tree/master/examples) folder.
+You'll find plenty to play with in the [examples](https://github.com/PHPMailer/PHPMailer/tree/master/examples) folder, which covers many common scenarios including sending through gmail, building contact forms, sending to mailing lists, and more.
 
 If you are re-using the instance (e.g. when sending to a mailing list), you may need to clear the recipient list to avoid sending duplicate messages. See [the mailing list example](https://github.com/PHPMailer/PHPMailer/blob/master/examples/mailing_list.phps) for further guidance.
 
@@ -140,43 +138,43 @@
 PHPMailer defaults to English, but in the [language](https://github.com/PHPMailer/PHPMailer/tree/master/language/) folder you'll find many translations for PHPMailer error messages that you may encounter. Their filenames contain [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the translations, for example `fr` for French. To specify a language, you need to tell PHPMailer which one to use, like this:
 
 ```php
-// To load the French version
+//To load the French version
 $mail->setLanguage('fr', '/optional/path/to/language/directory/');
 ```
 
-We welcome corrections and new languages - if you're looking for corrections to do, run the [PHPMailerLangTest.php](https://github.com/PHPMailer/PHPMailer/tree/master/test/PHPMailerLangTest.php) script in the tests folder and it will show any missing translations.
+We welcome corrections and new languages – if you're looking for corrections, run the [PHPMailerLangTest.php](https://github.com/PHPMailer/PHPMailer/tree/master/test/PHPMailerLangTest.php) script in the tests folder and it will show any missing translations.
 
 ## Documentation
-Start reading at the [GitHub wiki](https://github.com/PHPMailer/PHPMailer/wiki). If you're having trouble, this should be the first place you look as it's the most frequently updated.
+Start reading at the [GitHub wiki](https://github.com/PHPMailer/PHPMailer/wiki). If you're having trouble, head for [the troubleshooting guide](https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting) as it's frequently updated.
 
 Examples of how to use PHPMailer for common scenarios can be found in the [examples](https://github.com/PHPMailer/PHPMailer/tree/master/examples) folder. If you're looking for a good starting point, we recommend you start with [the Gmail example](https://github.com/PHPMailer/PHPMailer/tree/master/examples/gmail.phps).
 
-Note that in order to reduce PHPMailer's deployed code footprint, the examples are no longer included if you load PHPMailer via Composer or via [GitHub's zip file download](https://github.com/PHPMailer/PHPMailer/archive/master.zip), so you'll need to either clone the git repository or use the above links to get to the examples directly.
+To reduce PHPMailer's deployed code footprint, examples are not included if you load PHPMailer via Composer or via [GitHub's zip file download](https://github.com/PHPMailer/PHPMailer/archive/master.zip), so you'll need to either clone the git repository or use the above links to get to the examples directly.
 
-Complete generated API documentation is [available online](http://phpmailer.github.io/PHPMailer/).
+Complete generated API documentation is [available online](https://phpmailer.github.io/PHPMailer/).
 
-You can generate complete API-level documentation by running `phpdoc` in the top-level folder, and documentation will appear in the `docs` folder, though you'll need to have [PHPDocumentor](http://www.phpdoc.org) installed. You may find [the unit tests](https://github.com/PHPMailer/PHPMailer/blob/master/test/PHPMailerTest.php) a good source of how to do various operations such as encryption.
+You can generate complete API-level documentation by running `phpdoc` in the top-level folder, and documentation will appear in the `docs` folder, though you'll need to have [PHPDocumentor](http://www.phpdoc.org) installed. You may find [the unit tests](https://github.com/PHPMailer/PHPMailer/blob/master/test/PHPMailerTest.php) a good reference for how to do various operations such as encryption.
 
 If the documentation doesn't cover what you need, search the [many questions on Stack Overflow](http://stackoverflow.com/questions/tagged/phpmailer), and before you ask a question about "SMTP Error: Could not connect to SMTP host.", [read the troubleshooting guide](https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting).
 
 ## Tests
-There is a PHPUnit test script in the [test](https://github.com/PHPMailer/PHPMailer/tree/master/test/) folder. PHPMailer uses PHPUnit 4.8 - we would use 5.x but we need to run on PHP 5.5.
+[PHPMailer tests](https://github.com/PHPMailer/PHPMailer/tree/master/test/) use PHPUnit 9, with [a polyfill](https://github.com/Yoast/PHPUnit-Polyfills) to let 9-style tests run on older PHPUnit and PHP versions.
 
-Build status: [![Build Status](https://travis-ci.org/PHPMailer/PHPMailer.svg)](https://travis-ci.org/PHPMailer/PHPMailer)
+[![Test status](https://github.com/PHPMailer/PHPMailer/workflows/Tests/badge.svg)](https://github.com/PHPMailer/PHPMailer/actions)
 
 If this isn't passing, is there something you can do to help?
 
 ## Security
 Please disclose any vulnerabilities found responsibly – report security issues to the maintainers privately.
 
-See [SECURITY](https://github.com/PHPMailer/PHPMailer/tree/master/SECURITY.md) for details on security issues.
+See [SECURITY](https://github.com/PHPMailer/PHPMailer/tree/master/SECURITY.md) and [PHPMailer's security advisories on GitHub](https://github.com/PHPMailer/PHPMailer/security). 
 
 ## Contributing
 Please submit bug reports, suggestions and pull requests to the [GitHub issue tracker](https://github.com/PHPMailer/PHPMailer/issues).
 
 We're particularly interested in fixing edge-cases, expanding test coverage and updating translations.
 
-If you found a mistake in the docs, or want to add something, go ahead and amend the wiki - anyone can edit it.
+If you found a mistake in the docs, or want to add something, go ahead and amend the wiki – anyone can edit it.
 
 If you have git clones from prior to the move to the PHPMailer GitHub organisation, you'll need to update any remote URLs referencing the old GitHub location with a command like this from within your clone:
 
@@ -187,27 +185,36 @@
 Please *don't* use the SourceForge or Google Code projects any more; they are obsolete and no longer maintained.
 
 ## Sponsorship
-Development time and resources for PHPMailer are provided by [Smartmessages.net](https://info.smartmessages.net/), a powerful email marketing system.
+Development time and resources for PHPMailer are provided by [Smartmessages.net](https://info.smartmessages.net/), the world's only privacy-first email marketing system.
 
-<a href="https://info.smartmessages.net/"><img src="https://www.smartmessages.net/img/smartmessages-logo.svg" width="250" height="28" alt="Smartmessages email marketing"></a>
+<a href="https://info.smartmessages.net/"><img src="https://www.smartmessages.net/img/smartmessages-logo.svg" width="550" alt="Smartmessages.net privacy-first email marketing logo"></a>
 
-Other contributions are gladly received, whether in beer 🍺, T-shirts 👕, Amazon wishlist raids, or cold, hard cash 💰. If you'd like to donate to say "thank you" to maintainers or contributors, please contact them through individual profile pages via [the contributors page](https://github.com/PHPMailer/PHPMailer/graphs/contributors).
+Donations are very welcome, whether in beer 🍺, T-shirts 👕, or cold, hard cash 💰. Sponsorship through GitHub is a simple and convenient way to say "thank you" to PHPMailer's maintainers and contributors – just click the "Sponsor" button [on the project page](https://github.com/PHPMailer/PHPMailer). If your company uses PHPMailer, consider taking part in Tidelift's enterprise support programme.
+
+## PHPMailer For Enterprise
+
+Available as part of the Tidelift Subscription.
+
+The maintainers of PHPMailer and thousands of other packages are working with Tidelift to deliver commercial
+support and maintenance for the open source packages you use to build your applications. Save time, reduce risk, and
+improve code health, while paying the maintainers of the exact packages you
+use. [Learn more.](https://tidelift.com/subscription/pkg/packagist-phpmailer-phpmailer?utm_source=packagist-phpmailer-phpmailer&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
 
 ## Changelog
 See [changelog](changelog.md).
 
 ## History
 - PHPMailer was originally written in 2001 by Brent R. Matzelle as a [SourceForge project](http://sourceforge.net/projects/phpmailer/).
-- Marcus Bointon (coolbru on SF) and Andy Prevost (codeworxtech) took over the project in 2004.
+- [Marcus Bointon](https://github.com/Synchro) (`coolbru` on SF) and Andy Prevost (`codeworxtech`) took over the project in 2004.
 - Became an Apache incubator project on Google Code in 2010, managed by Jim Jagielski.
-- Marcus created his fork on [GitHub](https://github.com/Synchro/PHPMailer) in 2008.
+- Marcus created [his fork on GitHub](https://github.com/Synchro/PHPMailer) in 2008.
 - Jim and Marcus decide to join forces and use GitHub as the canonical and official repo for PHPMailer in 2013.
-- PHPMailer moves to the [PHPMailer organisation](https://github.com/PHPMailer) on GitHub in 2013.
+- PHPMailer moves to [the PHPMailer organisation](https://github.com/PHPMailer) on GitHub in 2013.
 
 ### What's changed since moving from SourceForge?
 - Official successor to the SourceForge and Google Code projects.
 - Test suite.
-- Continuous integration with Travis-CI.
+- Continuous integration with Github Actions.
 - Composer support.
 - Public development.
 - Additional languages and language strings.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/SECURITY.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/SECURITY.md
index fc3e61c..035a87f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/SECURITY.md
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/SECURITY.md
@@ -1,6 +1,13 @@
 # Security notices relating to PHPMailer
 
-Please disclose any vulnerabilities found responsibly - report any security problems found to the maintainers privately.
+Please disclose any security issues or vulnerabilities found through [Tidelift's coordinated disclosure system](https://tidelift.com/security) or to the maintainers privately.
+
+PHPMailer 6.4.1 and earlier contain a vulnerability that can result in untrusted code being called (if such code is injected into the host project's scope by other means). If the `$patternselect` parameter to `validateAddress()` is set to `'php'` (the default, defined by `PHPMailer::$validator`), and the global namespace contains a function called `php`, it will be called in preference to the built-in validator of the same name. Mitigated in PHPMailer 6.5.0 by denying the use of simple strings as validator function names. Recorded as [CVE-2021-3603](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2021-3603). Reported by [Vikrant Singh Chauhan](mailto:vi@hackberry.xyz) via [huntr.dev](https://www.huntr.dev/).
+
+PHPMailer versions 6.4.1 and earlier contain a possible remote code execution vulnerability through the `$lang_path` parameter of the `setLanguage()` method. If the `$lang_path` parameter is passed unfiltered from user input, it can be set to [a UNC path](https://docs.microsoft.com/en-us/dotnet/standard/io/file-path-formats#unc-paths), and if an attacker is also able to persuade the server to load a file from that UNC path, a script file under their control may be executed. This vulnerability only applies to systems that resolve UNC paths, typically only Microsoft Windows.
+PHPMailer 6.5.0 mitigates this by no longer treating translation files as PHP code, but by parsing their text content directly. This approach avoids the possibility of executing unknown code while retaining backward compatibility. This isn't ideal, so the current translation format is deprecated and will be replaced in the next major release. Recorded as [CVE-2021-34551](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2021-34551). Reported by [Jilin Diting Information Technology Co., Ltd](https://listensec.com) via Tidelift.
+
+PHPMailer versions between 6.1.8 and 6.4.0 contain a regression of the earlier CVE-2018-19296 object injection vulnerability as a result of [a fix for Windows UNC paths in 6.1.8](https://github.com/PHPMailer/PHPMailer/commit/e2e07a355ee8ff36aba21d0242c5950c56e4c6f9). Recorded as [CVE-2020-36326](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-36326). Reported by Fariskhi Vidyan via Tidelift. 6.4.1 fixes this issue, and also enforces stricter checks for URL schemes in local path contexts.
 
 PHPMailer versions 6.1.5 and earlier contain an output escaping bug that occurs in `Content-Type` and `Content-Disposition` when filenames passed into `addAttachment` and other methods that accept attachment names contain double quote characters, in contravention of RFC822 3.4.1. No specific vulnerability has been found relating to this, but it could allow file attachments to bypass attachment filters that are based on matching filename extensions. Recorded as [CVE-2020-13625](https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-13625). Reported by Elar Lang of Clarified Security.
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/VERSION b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/VERSION
index 4ac4fde..4be2c72 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/VERSION
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/VERSION
@@ -1 +1 @@
-6.2.0
\ No newline at end of file
+6.5.0
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/composer.json
index 7388bd9..58393b2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/composer.json
@@ -40,7 +40,7 @@
         "yoast/phpunit-polyfills": "^0.2.0"
     },
     "suggest": {
-        "ext-mbstring": "Needed to send email in multibyte encoding charset",
+        "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses",
         "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication",
         "league/oauth2-google": "Needed for Google XOAUTH2 authentication",
         "psr/log": "For optional PSR-3 debug logging",
@@ -57,5 +57,9 @@
             "PHPMailer\\Test\\": "test/"
         }
     },
-    "license": "LGPL-2.1-only"
+    "license": "LGPL-2.1-only",
+    "scripts": {
+        "check": "./vendor/bin/phpcs",
+        "test": "./vendor/bin/phpunit"
+    }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/get_oauth_token.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/get_oauth_token.php
index 560d364..befdc34 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/get_oauth_token.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/get_oauth_token.php
@@ -38,20 +38,20 @@
  * Plenty to choose from here:
  * @see http://oauth2-client.thephpleague.com/providers/thirdparty/
  */
-// @see https://github.com/thephpleague/oauth2-google
+//@see https://github.com/thephpleague/oauth2-google
 use League\OAuth2\Client\Provider\Google;
-// @see https://packagist.org/packages/hayageek/oauth2-yahoo
+//@see https://packagist.org/packages/hayageek/oauth2-yahoo
 use Hayageek\OAuth2\Client\Provider\Yahoo;
-// @see https://github.com/stevenmaguire/oauth2-microsoft
+//@see https://github.com/stevenmaguire/oauth2-microsoft
 use Stevenmaguire\OAuth2\Client\Provider\Microsoft;
 
 if (!isset($_GET['code']) && !isset($_GET['provider'])) {
     ?>
 <html>
-<body>Select Provider:<br/>
-<a href='?provider=Google'>Google</a><br/>
-<a href='?provider=Yahoo'>Yahoo</a><br/>
-<a href='?provider=Microsoft'>Microsoft/Outlook/Hotmail/Live/Office365</a><br/>
+<body>Select Provider:<br>
+<a href='?provider=Google'>Google</a><br>
+<a href='?provider=Yahoo'>Yahoo</a><br>
+<a href='?provider=Microsoft'>Microsoft/Outlook/Hotmail/Live/Office365</a><br>
 </body>
 </html>
     <?php
@@ -121,26 +121,26 @@
 }
 
 if (!isset($_GET['code'])) {
-    // If we don't have an authorization code then get one
+    //If we don't have an authorization code then get one
     $authUrl = $provider->getAuthorizationUrl($options);
     $_SESSION['oauth2state'] = $provider->getState();
     header('Location: ' . $authUrl);
     exit;
-// Check given state against previously stored one to mitigate CSRF attack
+    //Check given state against previously stored one to mitigate CSRF attack
 } elseif (empty($_GET['state']) || ($_GET['state'] !== $_SESSION['oauth2state'])) {
     unset($_SESSION['oauth2state']);
     unset($_SESSION['provider']);
     exit('Invalid state');
 } else {
     unset($_SESSION['provider']);
-    // Try to get an access token (using the authorization code grant)
+    //Try to get an access token (using the authorization code grant)
     $token = $provider->getAccessToken(
         'authorization_code',
         [
             'code' => $_GET['code']
         ]
     );
-    // Use this to interact with an API on the users behalf
-    // Use this to get a new access token if the old one expires
+    //Use this to interact with an API on the users behalf
+    //Use this to get a new access token if the old one expires
     echo 'Refresh Token: ', $token->getRefreshToken();
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-ar.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-ar.php
index 8ab485c..f795580 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-ar.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-ar.php
@@ -19,8 +19,7 @@
 $PHPMAILER_LANG['invalid_address']      = 'الإرسال غير ممكن لأن عنوان البريد الإلكتروني غير صالح: ';
 $PHPMAILER_LANG['mailer_not_supported'] = ' برنامج الإرسال غير مدعوم.';
 $PHPMAILER_LANG['provide_address']      = 'يجب توفير عنوان البريد الإلكتروني لمستلم واحد على الأقل.';
-$PHPMAILER_LANG['recipients_failed']    = 'خطأ SMTP: الأخطاء التالية ' .
-                                          'فشل في الارسال لكل من : ';
+$PHPMAILER_LANG['recipients_failed']    = 'خطأ SMTP: الأخطاء التالية فشل في الارسال لكل من : ';
 $PHPMAILER_LANG['signing']              = 'خطأ في التوقيع: ';
 $PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() غير ممكن.';
 $PHPMAILER_LANG['smtp_error']           = 'خطأ على مستوى الخادم SMTP: ';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-cs.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-cs.php
index 55bdd9c..e770a1a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-cs.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-cs.php
@@ -16,6 +16,8 @@
 $PHPMAILER_LANG['from_failed']          = 'Následující adresa odesílatele je nesprávná: ';
 $PHPMAILER_LANG['instantiate']          = 'Nelze vytvořit instanci emailové funkce.';
 $PHPMAILER_LANG['invalid_address']      = 'Neplatná adresa: ';
+$PHPMAILER_LANG['invalid_hostentry']    = 'Záznam hostitele je nesprávný: ';
+$PHPMAILER_LANG['invalid_host']         = 'Hostitel je nesprávný: ';
 $PHPMAILER_LANG['mailer_not_supported'] = ' mailer není podporován.';
 $PHPMAILER_LANG['provide_address']      = 'Musíte zadat alespoň jednu emailovou adresu příjemce.';
 $PHPMAILER_LANG['recipients_failed']    = 'Chyba SMTP: Následující adresy příjemců nejsou správně: ';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sk.php
index a1cfb28..028f5bc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sk.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sk.php
@@ -18,6 +18,8 @@
 $PHPMAILER_LANG['from_failed']          = 'Následujúca adresa From je nesprávna: ';
 $PHPMAILER_LANG['instantiate']          = 'Nedá sa vytvoriť inštancia emailovej funkcie.';
 $PHPMAILER_LANG['invalid_address']      = 'Neodoslané, emailová adresa je nesprávna: ';
+$PHPMAILER_LANG['invalid_hostentry']    = 'Záznam hostiteľa je nesprávny: ';
+$PHPMAILER_LANG['invalid_host']         = 'Hostiteľ je nesprávny: ';
 $PHPMAILER_LANG['mailer_not_supported'] = ' emailový klient nieje podporovaný.';
 $PHPMAILER_LANG['provide_address']      = 'Musíte zadať aspoň jednu emailovú adresu príjemcu.';
 $PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: Adresy príjemcov niesu správne ';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sr_latn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sr_latn.php
new file mode 100644
index 0000000..6213832
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-sr_latn.php
@@ -0,0 +1,28 @@
+<?php
+
+/**
+ * Serbian PHPMailer language file: refer to English translation for definitive list
+ * @package PHPMailer
+ * @author Александар Јевремовић <ajevremovic@gmail.com>
+ * @author Miloš Milanović <mmilanovic016@gmail.com>
+ */
+
+$PHPMAILER_LANG['authenticate']         = 'SMTP greška: autentifikacija nije uspela.';
+$PHPMAILER_LANG['connect_host']         = 'SMTP greška: povezivanje sa SMTP serverom nije uspelo.';
+$PHPMAILER_LANG['data_not_accepted']    = 'SMTP greška: podaci nisu prihvaćeni.';
+$PHPMAILER_LANG['empty_message']        = 'Sadržaj poruke je prazan.';
+$PHPMAILER_LANG['encoding']             = 'Nepoznato kodiranje: ';
+$PHPMAILER_LANG['execute']              = 'Nije moguće izvršiti naredbu: ';
+$PHPMAILER_LANG['file_access']          = 'Nije moguće pristupiti datoteci: ';
+$PHPMAILER_LANG['file_open']            = 'Nije moguće otvoriti datoteku: ';
+$PHPMAILER_LANG['from_failed']          = 'SMTP greška: slanje sa sledećih adresa nije uspelo: ';
+$PHPMAILER_LANG['recipients_failed']    = 'SMTP greška: slanje na sledeće adrese nije uspelo: ';
+$PHPMAILER_LANG['instantiate']          = 'Nije moguće pokrenuti mail funkciju.';
+$PHPMAILER_LANG['invalid_address']      = 'Poruka nije poslata. Neispravna adresa: ';
+$PHPMAILER_LANG['mailer_not_supported'] = ' majler nije podržan.';
+$PHPMAILER_LANG['provide_address']      = 'Definišite bar jednu adresu primaoca.';
+$PHPMAILER_LANG['signing']              = 'Greška prilikom prijave: ';
+$PHPMAILER_LANG['smtp_connect_failed']  = 'Povezivanje sa SMTP serverom nije uspelo.';
+$PHPMAILER_LANG['smtp_error']           = 'Greška SMTP servera: ';
+$PHPMAILER_LANG['variable_set']         = 'Nije moguće zadati niti resetovati promenljivu: ';
+$PHPMAILER_LANG['extension_missing']    = 'Nedostaje proširenje: ';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-uk.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-uk.php
index 9fa60cf..3dea055 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-uk.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/language/phpmailer.lang-uk.php
@@ -16,11 +16,11 @@
 $PHPMAILER_LANG['file_open']            = 'Помилка файлової системи: не вдається відкрити файл: ';
 $PHPMAILER_LANG['from_failed']          = 'Невірна адреса відправника: ';
 $PHPMAILER_LANG['instantiate']          = 'Неможливо запустити функцію mail().';
-$PHPMAILER_LANG['provide_address']      = 'Будь-ласка, введіть хоча б одну email-адресу отримувача.';
+$PHPMAILER_LANG['provide_address']      = 'Будь ласка, введіть хоча б одну email-адресу отримувача.';
 $PHPMAILER_LANG['mailer_not_supported'] = ' - поштовий сервер не підтримується.';
 $PHPMAILER_LANG['recipients_failed']    = 'Помилка SMTP: не вдалося відправлення для таких отримувачів: ';
 $PHPMAILER_LANG['empty_message']        = 'Пусте повідомлення';
-$PHPMAILER_LANG['invalid_address']      = 'Не відправлено через невірний формат email-адреси: ';
+$PHPMAILER_LANG['invalid_address']      = 'Не відправлено через неправильний формат email-адреси: ';
 $PHPMAILER_LANG['signing']              = 'Помилка підпису: ';
 $PHPMAILER_LANG['smtp_connect_failed']  = 'Помилка з\'єднання з SMTP-сервером';
 $PHPMAILER_LANG['smtp_error']           = 'Помилка SMTP-сервера: ';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/phpunit.xml.dist b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/phpunit.xml.dist
new file mode 100644
index 0000000..c68df96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/phpunit.xml.dist
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<phpunit
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/8.5/phpunit.xsd"
+         backupGlobals="true"
+         bootstrap="vendor/autoload.php"
+         verbose="true"
+         colors="true"
+         forceCoversAnnotation="false"
+    >
+    <testsuites>
+        <testsuite name="PHPMailerTests">
+            <directory>./test/</directory>
+        </testsuite>
+    </testsuites>
+    <listeners>
+        <listener class="PHPMailer\Test\DebugLogTestListener" />
+    </listeners>
+    <groups>
+        <exclude>
+            <group>languages</group>
+            <group>pop3</group>
+        </exclude>
+    </groups>
+    <filter>
+        <whitelist addUncoveredFilesFromWhitelist="true">
+            <directory suffix=".php">./src</directory>
+        </whitelist>
+    </filter>
+    <logging>
+        <log type="coverage-text" target="php://stdout" showUncoveredFiles="true"/>
+        <log type="coverage-clover" target="build/logs/clover.xml"/>
+        <log type="junit" target="build/logs/junit.xml"/>
+    </logging>
+</phpunit>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/OAuth.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/OAuth.php
index 07fde4c..c93d0be 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/OAuth.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/OAuth.php
@@ -123,7 +123,7 @@
      */
     public function getOauth64()
     {
-        // Get a new token if it's not available or has expired
+        //Get a new token if it's not available or has expired
         if (null === $this->oauthToken || $this->oauthToken->hasExpired()) {
             $this->oauthToken = $this->getToken();
         }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/PHPMailer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/PHPMailer.php
index c8fc1a8..eb4b742 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/PHPMailer.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/PHPMailer.php
@@ -428,9 +428,11 @@
     public $Debugoutput = 'echo';
 
     /**
-     * Whether to keep SMTP connection open after each message.
-     * If this is set to true then to close the connection
-     * requires an explicit call to smtpClose().
+     * Whether to keep the SMTP connection open after each message.
+     * If this is set to true then the connection will remain open after a send,
+     * and closing the connection will require an explicit call to smtpClose().
+     * It's a good idea to use this if you are sending multiple messages as it reduces overhead.
+     * See the mailing list example for how to use it.
      *
      * @var bool
      */
@@ -748,7 +750,7 @@
      *
      * @var string
      */
-    const VERSION = '6.2.0';
+    const VERSION = '6.5.0';
 
     /**
      * Error severity: message only, continue processing.
@@ -862,18 +864,25 @@
             $subject = $this->encodeHeader($this->secureHeader($subject));
         }
         //Calling mail() with null params breaks
+        $this->edebug('Sending with mail()');
+        $this->edebug('Sendmail path: ' . ini_get('sendmail_path'));
+        $this->edebug("Envelope sender: {$this->Sender}");
+        $this->edebug("To: {$to}");
+        $this->edebug("Subject: {$subject}");
+        $this->edebug("Headers: {$header}");
         if (!$this->UseSendmailOptions || null === $params) {
             $result = @mail($to, $subject, $body, $header);
         } else {
+            $this->edebug("Additional params: {$params}");
             $result = @mail($to, $subject, $body, $header, $params);
         }
-
+        $this->edebug('Result: ' . ($result ? 'true' : 'false'));
         return $result;
     }
 
     /**
-     * Output debugging info via user-defined method.
-     * Only generates output if SMTP debug output is enabled (@see SMTP::$do_debug).
+     * Output debugging info via a user-defined method.
+     * Only generates output if debug output is enabled.
      *
      * @see PHPMailer::$Debugoutput
      * @see PHPMailer::$SMTPDebug
@@ -1070,7 +1079,7 @@
         $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
         $pos = strrpos($address, '@');
         if (false === $pos) {
-            // At-sign is missing.
+            //At-sign is missing.
             $error_message = sprintf(
                 '%s (%s): %s',
                 $this->lang('invalid_address'),
@@ -1086,7 +1095,7 @@
             return false;
         }
         $params = [$kind, $address, $name];
-        // Enqueue addresses with IDN until we know the PHPMailer::$CharSet.
+        //Enqueue addresses with IDN until we know the PHPMailer::$CharSet.
         if (static::idnSupported() && $this->has8bitChars(substr($address, ++$pos))) {
             if ('Reply-To' !== $kind) {
                 if (!array_key_exists($address, $this->RecipientsQueue)) {
@@ -1103,7 +1112,7 @@
             return false;
         }
 
-        // Immediately add standard addresses without IDN.
+        //Immediately add standard addresses without IDN.
         return call_user_func_array([$this, 'addAnAddress'], $params);
     }
 
@@ -1191,6 +1200,15 @@
                         $address->mailbox . '@' . $address->host
                     )
                 ) {
+                    //Decode the name part if it's present and encoded
+                    if (
+                        property_exists($address, 'personal') &&
+                        extension_loaded('mbstring') &&
+                        preg_match('/^=\?.*\?=$/', $address->personal)
+                    ) {
+                        $address->personal = mb_decode_mimeheader($address->personal);
+                    }
+
                     $addresses[] = [
                         'name' => (property_exists($address, 'personal') ? $address->personal : ''),
                         'address' => $address->mailbox . '@' . $address->host,
@@ -1214,9 +1232,15 @@
                 } else {
                     list($name, $email) = explode('<', $address);
                     $email = trim(str_replace('>', '', $email));
+                    $name = trim($name);
                     if (static::validateAddress($email)) {
+                        //If this name is encoded, decode it
+                        if (preg_match('/^=\?.*\?=$/', $name)) {
+                            $name = mb_decode_mimeheader($name);
+                        }
                         $addresses[] = [
-                            'name' => trim(str_replace(['"', "'"], '', $name)),
+                            //Remove any surrounding quotes and spaces from the name
+                            'name' => trim($name, '\'" '),
                             'address' => $email,
                         ];
                     }
@@ -1242,7 +1266,7 @@
     {
         $address = trim($address);
         $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
-        // Don't validate now addresses with IDN. Will be done in send().
+        //Don't validate now addresses with IDN. Will be done in send().
         $pos = strrpos($address, '@');
         if (
             (false === $pos)
@@ -1313,7 +1337,8 @@
         if (null === $patternselect) {
             $patternselect = static::$validator;
         }
-        if (is_callable($patternselect)) {
+        //Don't allow strings as callables, see SECURITY.md and CVE-2021-3603
+        if (is_callable($patternselect) && !is_string($patternselect)) {
             return call_user_func($patternselect, $address);
         }
         //Reject line breaks in addresses; it's valid RFC5322, but not RFC5321
@@ -1395,7 +1420,7 @@
      */
     public function punyencodeAddress($address)
     {
-        // Verify we have required functions, CharSet, and at-sign.
+        //Verify we have required functions, CharSet, and at-sign.
         $pos = strrpos($address, '@');
         if (
             !empty($this->CharSet) &&
@@ -1403,16 +1428,20 @@
             static::idnSupported()
         ) {
             $domain = substr($address, ++$pos);
-            // Verify CharSet string is a valid one, and domain properly encoded in this CharSet.
+            //Verify CharSet string is a valid one, and domain properly encoded in this CharSet.
             if ($this->has8bitChars($domain) && @mb_check_encoding($domain, $this->CharSet)) {
-                $domain = mb_convert_encoding($domain, 'UTF-8', $this->CharSet);
+                //Convert the domain from whatever charset it's in to UTF-8
+                $domain = mb_convert_encoding($domain, self::CHARSET_UTF8, $this->CharSet);
                 //Ignore IDE complaints about this line - method signature changed in PHP 5.4
                 $errorcode = 0;
                 if (defined('INTL_IDNA_VARIANT_UTS46')) {
-                    $punycode = idn_to_ascii($domain, $errorcode, INTL_IDNA_VARIANT_UTS46);
+                    //Use the current punycode standard (appeared in PHP 7.2)
+                    $punycode = idn_to_ascii($domain, $errorcode, \INTL_IDNA_VARIANT_UTS46);
                 } elseif (defined('INTL_IDNA_VARIANT_2003')) {
-                    $punycode = idn_to_ascii($domain, $errorcode, INTL_IDNA_VARIANT_2003);
+                    //Fall back to this old, deprecated/removed encoding
+                    $punycode = idn_to_ascii($domain, $errorcode, \INTL_IDNA_VARIANT_2003);
                 } else {
+                    //Fall back to a default we don't know about
                     $punycode = idn_to_ascii($domain, $errorcode);
                 }
                 if (false !== $punycode) {
@@ -1462,7 +1491,7 @@
     {
         if (
             'smtp' === $this->Mailer
-            || ('mail' === $this->Mailer && (PHP_VERSION_ID >= 80000 || stripos(PHP_OS, 'WIN') === 0))
+            || ('mail' === $this->Mailer && (\PHP_VERSION_ID >= 80000 || stripos(PHP_OS, 'WIN') === 0))
         ) {
             //SMTP mandates RFC-compliant line endings
             //and it's also used with mail() on Windows
@@ -1474,8 +1503,8 @@
         //Check for buggy PHP versions that add a header with an incorrect line break
         if (
             'mail' === $this->Mailer
-            && ((PHP_VERSION_ID >= 70000 && PHP_VERSION_ID < 70017)
-                || (PHP_VERSION_ID >= 70100 && PHP_VERSION_ID < 70103))
+            && ((\PHP_VERSION_ID >= 70000 && \PHP_VERSION_ID < 70017)
+                || (\PHP_VERSION_ID >= 70100 && \PHP_VERSION_ID < 70103))
             && ini_get('mail.add_x_header') === '1'
             && stripos(PHP_OS, 'WIN') === 0
         ) {
@@ -1488,10 +1517,10 @@
         }
 
         try {
-            $this->error_count = 0; // Reset errors
+            $this->error_count = 0; //Reset errors
             $this->mailHeader = '';
 
-            // Dequeue recipient and Reply-To addresses with IDN
+            //Dequeue recipient and Reply-To addresses with IDN
             foreach (array_merge($this->RecipientsQueue, $this->ReplyToQueue) as $params) {
                 $params[1] = $this->punyencodeAddress($params[1]);
                 call_user_func_array([$this, 'addAnAddress'], $params);
@@ -1500,7 +1529,7 @@
                 throw new Exception($this->lang('provide_address'), self::STOP_CRITICAL);
             }
 
-            // Validate From, Sender, and ConfirmReadingTo addresses
+            //Validate From, Sender, and ConfirmReadingTo addresses
             foreach (['From', 'Sender', 'ConfirmReadingTo'] as $address_kind) {
                 $this->$address_kind = trim($this->$address_kind);
                 if (empty($this->$address_kind)) {
@@ -1524,29 +1553,29 @@
                 }
             }
 
-            // Set whether the message is multipart/alternative
+            //Set whether the message is multipart/alternative
             if ($this->alternativeExists()) {
                 $this->ContentType = static::CONTENT_TYPE_MULTIPART_ALTERNATIVE;
             }
 
             $this->setMessageType();
-            // Refuse to send an empty message unless we are specifically allowing it
+            //Refuse to send an empty message unless we are specifically allowing it
             if (!$this->AllowEmpty && empty($this->Body)) {
                 throw new Exception($this->lang('empty_message'), self::STOP_CRITICAL);
             }
 
             //Trim subject consistently
             $this->Subject = trim($this->Subject);
-            // Create body before headers in case body makes changes to headers (e.g. altering transfer encoding)
+            //Create body before headers in case body makes changes to headers (e.g. altering transfer encoding)
             $this->MIMEHeader = '';
             $this->MIMEBody = $this->createBody();
-            // createBody may have added some headers, so retain them
+            //createBody may have added some headers, so retain them
             $tempheaders = $this->MIMEHeader;
             $this->MIMEHeader = $this->createHeader();
             $this->MIMEHeader .= $tempheaders;
 
-            // To capture the complete message when using mail(), create
-            // an extra header list which createHeader() doesn't fold in
+            //To capture the complete message when using mail(), create
+            //an extra header list which createHeader() doesn't fold in
             if ('mail' === $this->Mailer) {
                 if (count($this->to) > 0) {
                     $this->mailHeader .= $this->addrAppend('To', $this->to);
@@ -1559,7 +1588,7 @@
                 );
             }
 
-            // Sign with DKIM if enabled
+            //Sign with DKIM if enabled
             if (
                 !empty($this->DKIM_domain)
                 && !empty($this->DKIM_selector)
@@ -1600,7 +1629,7 @@
     public function postSend()
     {
         try {
-            // Choose the mailer and send through it
+            //Choose the mailer and send through it
             switch ($this->Mailer) {
                 case 'sendmail':
                 case 'qmail':
@@ -1645,22 +1674,44 @@
      */
     protected function sendmailSend($header, $body)
     {
+        if ($this->Mailer === 'qmail') {
+            $this->edebug('Sending with qmail');
+        } else {
+            $this->edebug('Sending with sendmail');
+        }
         $header = static::stripTrailingWSP($header) . static::$LE . static::$LE;
-
-        // CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped.
-        if (!empty($this->Sender) && self::isShellSafe($this->Sender)) {
-            if ('qmail' === $this->Mailer) {
+        //This sets the SMTP envelope sender which gets turned into a return-path header by the receiver
+        //A space after `-f` is optional, but there is a long history of its presence
+        //causing problems, so we don't use one
+        //Exim docs: http://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_exim_command_line.html
+        //Sendmail docs: http://www.sendmail.org/~ca/email/man/sendmail.html
+        //Qmail docs: http://www.qmail.org/man/man8/qmail-inject.html
+        //Example problem: https://www.drupal.org/node/1057954
+        if (empty($this->Sender) && !empty(ini_get('sendmail_from'))) {
+            //PHP config has a sender address we can use
+            $this->Sender = ini_get('sendmail_from');
+        }
+        //CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped.
+        if (!empty($this->Sender) && static::validateAddress($this->Sender) && self::isShellSafe($this->Sender)) {
+            if ($this->Mailer === 'qmail') {
                 $sendmailFmt = '%s -f%s';
             } else {
                 $sendmailFmt = '%s -oi -f%s -t';
             }
-        } elseif ('qmail' === $this->Mailer) {
-            $sendmailFmt = '%s';
         } else {
+            //allow sendmail to choose a default envelope sender. It may
+            //seem preferable to force it to use the From header as with
+            //SMTP, but that introduces new problems (see
+            //<https://github.com/PHPMailer/PHPMailer/issues/2298>), and
+            //it has historically worked this way.
             $sendmailFmt = '%s -oi -t';
         }
 
         $sendmail = sprintf($sendmailFmt, escapeshellcmd($this->Sendmail), $this->Sender);
+        $this->edebug('Sendmail path: ' . $this->Sendmail);
+        $this->edebug('Sendmail command: ' . $sendmail);
+        $this->edebug('Envelope sender: ' . $this->Sender);
+        $this->edebug("Headers: {$header}");
 
         if ($this->SingleTo) {
             foreach ($this->SingleToArray as $toAddr) {
@@ -1668,13 +1719,15 @@
                 if (!$mail) {
                     throw new Exception($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
                 }
+                $this->edebug("To: {$toAddr}");
                 fwrite($mail, 'To: ' . $toAddr . "\n");
                 fwrite($mail, $header);
                 fwrite($mail, $body);
                 $result = pclose($mail);
+                $addrinfo = static::parseAddresses($toAddr);
                 $this->doCallback(
                     ($result === 0),
-                    [$toAddr],
+                    [[$addrinfo['address'], $addrinfo['name']]],
                     $this->cc,
                     $this->bcc,
                     $this->Subject,
@@ -1682,6 +1735,7 @@
                     $this->From,
                     []
                 );
+                $this->edebug("Result: " . ($result === 0 ? 'true' : 'false'));
                 if (0 !== $result) {
                     throw new Exception($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
                 }
@@ -1704,6 +1758,7 @@
                 $this->From,
                 []
             );
+            $this->edebug("Result: " . ($result === 0 ? 'true' : 'false'));
             if (0 !== $result) {
                 throw new Exception($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
             }
@@ -1724,7 +1779,7 @@
      */
     protected static function isShellSafe($string)
     {
-        // Future-proof
+        //Future-proof
         if (
             escapeshellcmd($string) !== $string
             || !in_array(escapeshellarg($string), ["'$string'", "\"$string\""])
@@ -1737,9 +1792,9 @@
         for ($i = 0; $i < $length; ++$i) {
             $c = $string[$i];
 
-            // All other characters have a special meaning in at least one common shell, including = and +.
-            // Full stop (.) has a special meaning in cmd.exe, but its impact should be negligible here.
-            // Note that this does permit non-Latin alphanumeric characters based on the current locale.
+            //All other characters have a special meaning in at least one common shell, including = and +.
+            //Full stop (.) has a special meaning in cmd.exe, but its impact should be negligible here.
+            //Note that this does permit non-Latin alphanumeric characters based on the current locale.
             if (!ctype_alnum($c) && strpos('@_-.', $c) === false) {
                 return false;
             }
@@ -1759,7 +1814,8 @@
      */
     protected static function isPermittedPath($path)
     {
-        return !preg_match('#^[a-z]+://#i', $path);
+        //Matches scheme definition from https://tools.ietf.org/html/rfc3986#section-3.1
+        return !preg_match('#^[a-z][a-z\d+.-]*://#i', $path);
     }
 
     /**
@@ -1771,12 +1827,15 @@
      */
     protected static function fileIsAccessible($path)
     {
+        if (!static::isPermittedPath($path)) {
+            return false;
+        }
         $readable = file_exists($path);
         //If not a UNC path (expected to start with \\), check read permission, see #2069
         if (strpos($path, '\\\\') !== 0) {
             $readable = $readable && is_readable($path);
         }
-        return static::isPermittedPath($path) && $readable;
+        return  $readable;
     }
 
     /**
@@ -1809,11 +1868,15 @@
         //Sendmail docs: http://www.sendmail.org/~ca/email/man/sendmail.html
         //Qmail docs: http://www.qmail.org/man/man8/qmail-inject.html
         //Example problem: https://www.drupal.org/node/1057954
-        // CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped.
-        if (!empty($this->Sender) && static::validateAddress($this->Sender) && self::isShellSafe($this->Sender)) {
-            $params = sprintf('-f%s', $this->Sender);
+        //CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped.
+        if (empty($this->Sender) && !empty(ini_get('sendmail_from'))) {
+            //PHP config has a sender address we can use
+            $this->Sender = ini_get('sendmail_from');
         }
         if (!empty($this->Sender) && static::validateAddress($this->Sender)) {
+            if (self::isShellSafe($this->Sender)) {
+                $params = sprintf('-f%s', $this->Sender);
+            }
             $old_from = ini_get('sendmail_from');
             ini_set('sendmail_from', $this->Sender);
         }
@@ -1821,7 +1884,17 @@
         if ($this->SingleTo && count($toArr) > 1) {
             foreach ($toArr as $toAddr) {
                 $result = $this->mailPassthru($toAddr, $this->Subject, $body, $header, $params);
-                $this->doCallback($result, [$toAddr], $this->cc, $this->bcc, $this->Subject, $body, $this->From, []);
+                $addrinfo = static::parseAddresses($toAddr);
+                $this->doCallback(
+                    $result,
+                    [[$addrinfo['address'], $addrinfo['name']]],
+                    $this->cc,
+                    $this->bcc,
+                    $this->Subject,
+                    $body,
+                    $this->From,
+                    []
+                );
             }
         } else {
             $result = $this->mailPassthru($to, $this->Subject, $body, $header, $params);
@@ -1899,7 +1972,7 @@
         }
 
         $callbacks = [];
-        // Attempt to send to all recipients
+        //Attempt to send to all recipients
         foreach ([$this->to, $this->cc, $this->bcc] as $togroup) {
             foreach ($togroup as $to) {
                 if (!$this->smtp->recipient($to[0], $this->dsn)) {
@@ -1910,11 +1983,11 @@
                     $isSent = true;
                 }
 
-                $callbacks[] = ['issent' => $isSent, 'to' => $to[0]];
+                $callbacks[] = ['issent' => $isSent, 'to' => $to[0], 'name' => $to[1]];
             }
         }
 
-        // Only send the DATA command if we have viable recipients
+        //Only send the DATA command if we have viable recipients
         if ((count($this->all_recipients) > count($bad_rcpt)) && !$this->smtp->data($header . $body)) {
             throw new Exception($this->lang('data_not_accepted'), self::STOP_CRITICAL);
         }
@@ -1931,7 +2004,7 @@
         foreach ($callbacks as $cb) {
             $this->doCallback(
                 $cb['issent'],
-                [$cb['to']],
+                [[$cb['to'], $cb['name']]],
                 [],
                 [],
                 $this->Subject,
@@ -1976,7 +2049,7 @@
             $options = $this->SMTPOptions;
         }
 
-        // Already connected?
+        //Already connected?
         if ($this->smtp->connected()) {
             return true;
         }
@@ -1998,14 +2071,14 @@
                 )
             ) {
                 $this->edebug($this->lang('invalid_hostentry') . ' ' . trim($hostentry));
-                // Not a valid host entry
+                //Not a valid host entry
                 continue;
             }
-            // $hostinfo[1]: optional ssl or tls prefix
-            // $hostinfo[2]: the hostname
-            // $hostinfo[3]: optional port number
-            // The host string prefix can temporarily override the current setting for SMTPSecure
-            // If it's not specified, the default value is used
+            //$hostinfo[1]: optional ssl or tls prefix
+            //$hostinfo[2]: the hostname
+            //$hostinfo[3]: optional port number
+            //The host string prefix can temporarily override the current setting for SMTPSecure
+            //If it's not specified, the default value is used
 
             //Check the host name is a valid name or IP address before trying to use it
             if (!static::isValidHost($hostinfo[2])) {
@@ -2017,11 +2090,11 @@
             $tls = (static::ENCRYPTION_STARTTLS === $this->SMTPSecure);
             if ('ssl' === $hostinfo[1] || ('' === $hostinfo[1] && static::ENCRYPTION_SMTPS === $this->SMTPSecure)) {
                 $prefix = 'ssl://';
-                $tls = false; // Can't have SSL and TLS at the same time
+                $tls = false; //Can't have SSL and TLS at the same time
                 $secure = static::ENCRYPTION_SMTPS;
             } elseif ('tls' === $hostinfo[1]) {
                 $tls = true;
-                // tls doesn't use a prefix
+                //TLS doesn't use a prefix
                 $secure = static::ENCRYPTION_STARTTLS;
             }
             //Do we need the OpenSSL extension?
@@ -2051,10 +2124,10 @@
                     }
                     $this->smtp->hello($hello);
                     //Automatically enable TLS encryption if:
-                    // * it's not disabled
-                    // * we have openssl extension
-                    // * we are not already using SSL
-                    // * the server offers STARTTLS
+                    //* it's not disabled
+                    //* we have openssl extension
+                    //* we are not already using SSL
+                    //* the server offers STARTTLS
                     if ($this->SMTPAutoTLS && $sslext && 'ssl' !== $secure && $this->smtp->getServerExt('STARTTLS')) {
                         $tls = true;
                     }
@@ -2062,7 +2135,7 @@
                         if (!$this->smtp->startTLS()) {
                             throw new Exception($this->lang('connect_host'));
                         }
-                        // We must resend EHLO after TLS negotiation
+                        //We must resend EHLO after TLS negotiation
                         $this->smtp->hello($hello);
                     }
                     if (
@@ -2080,14 +2153,14 @@
                 } catch (Exception $exc) {
                     $lastexception = $exc;
                     $this->edebug($exc->getMessage());
-                    // We must have connected, but then failed TLS or Auth, so close connection nicely
+                    //We must have connected, but then failed TLS or Auth, so close connection nicely
                     $this->smtp->quit();
                 }
             }
         }
-        // If we get here, all connection attempts have failed, so close connection hard
+        //If we get here, all connection attempts have failed, so close connection hard
         $this->smtp->close();
-        // As we've caught all exceptions, just report whatever the last one was
+        //As we've caught all exceptions, just report whatever the last one was
         if ($this->exceptions && null !== $lastexception) {
             throw $lastexception;
         }
@@ -2112,13 +2185,14 @@
      * The default language is English.
      *
      * @param string $langcode  ISO 639-1 2-character language code (e.g. French is "fr")
-     * @param string $lang_path Path to the language file directory, with trailing separator (slash)
+     * @param string $lang_path Path to the language file directory, with trailing separator (slash).D
+     *                          Do not set this from user input!
      *
      * @return bool
      */
     public function setLanguage($langcode = 'en', $lang_path = '')
     {
-        // Backwards compatibility for renamed language codes
+        //Backwards compatibility for renamed language codes
         $renamed_langcodes = [
             'br' => 'pt_br',
             'cz' => 'cs',
@@ -2134,7 +2208,7 @@
             $langcode = $renamed_langcodes[$langcode];
         }
 
-        // Define full set of translatable strings in English
+        //Define full set of translatable strings in English
         $PHPMAILER_LANG = [
             'authenticate' => 'SMTP Error: Could not authenticate.',
             'connect_host' => 'SMTP Error: Could not connect to SMTP host.',
@@ -2159,7 +2233,7 @@
             'extension_missing' => 'Extension missing: ',
         ];
         if (empty($lang_path)) {
-            // Calculate an absolute path so it can work if CWD is not here
+            //Calculate an absolute path so it can work if CWD is not here
             $lang_path = dirname(__DIR__) . DIRECTORY_SEPARATOR . 'language' . DIRECTORY_SEPARATOR;
         }
         //Validate $langcode
@@ -2168,20 +2242,38 @@
         }
         $foundlang = true;
         $lang_file = $lang_path . 'phpmailer.lang-' . $langcode . '.php';
-        // There is no English translation file
+        //There is no English translation file
         if ('en' !== $langcode) {
-            // Make sure language file path is readable
+            //Make sure language file path is readable
             if (!static::fileIsAccessible($lang_file)) {
                 $foundlang = false;
             } else {
-                // Overwrite language-specific strings.
-                // This way we'll never have missing translation keys.
-                $foundlang = include $lang_file;
+                //$foundlang = include $lang_file;
+                $lines = file($lang_file);
+                foreach ($lines as $line) {
+                    //Translation file lines look like this:
+                    //$PHPMAILER_LANG['authenticate'] = 'SMTP-Fehler: Authentifizierung fehlgeschlagen.';
+                    //These files are parsed as text and not PHP so as to avoid the possibility of code injection
+                    //See https://blog.stevenlevithan.com/archives/match-quoted-string
+                    $matches = [];
+                    if (
+                        preg_match(
+                            '/^\$PHPMAILER_LANG\[\'([a-z\d_]+)\'\]\s*=\s*(["\'])(.+)*?\2;/',
+                            $line,
+                            $matches
+                        ) &&
+                        //Ignore unknown translation keys
+                        array_key_exists($matches[1], $PHPMAILER_LANG)
+                    ) {
+                        //Overwrite language-specific strings so we'll never have missing translation keys.
+                        $PHPMAILER_LANG[$matches[1]] = (string)$matches[3];
+                    }
+                }
             }
         }
         $this->language = $PHPMAILER_LANG;
 
-        return (bool) $foundlang; // Returns false if language not found
+        return $foundlang; //Returns false if language not found
     }
 
     /**
@@ -2225,7 +2317,7 @@
      */
     public function addrFormat($addr)
     {
-        if (empty($addr[1])) { // No name provided
+        if (empty($addr[1])) { //No name provided
             return $this->secureHeader($addr[0]);
         }
 
@@ -2252,8 +2344,8 @@
         } else {
             $soft_break = static::$LE;
         }
-        // If utf-8 encoding is used, we will need to make sure we don't
-        // split multibyte characters when we wrap
+        //If utf-8 encoding is used, we will need to make sure we don't
+        //split multibyte characters when we wrap
         $is_utf8 = static::CHARSET_UTF8 === strtolower($this->CharSet);
         $lelen = strlen(static::$LE);
         $crlflen = strlen(static::$LE);
@@ -2353,29 +2445,29 @@
             $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack);
             $encodedCharPos = strpos($lastChunk, '=');
             if (false !== $encodedCharPos) {
-                // Found start of encoded character byte within $lookBack block.
-                // Check the encoded byte value (the 2 chars after the '=')
+                //Found start of encoded character byte within $lookBack block.
+                //Check the encoded byte value (the 2 chars after the '=')
                 $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2);
                 $dec = hexdec($hex);
                 if ($dec < 128) {
-                    // Single byte character.
-                    // If the encoded char was found at pos 0, it will fit
-                    // otherwise reduce maxLength to start of the encoded char
+                    //Single byte character.
+                    //If the encoded char was found at pos 0, it will fit
+                    //otherwise reduce maxLength to start of the encoded char
                     if ($encodedCharPos > 0) {
                         $maxLength -= $lookBack - $encodedCharPos;
                     }
                     $foundSplitPos = true;
                 } elseif ($dec >= 192) {
-                    // First byte of a multi byte character
-                    // Reduce maxLength to split at start of character
+                    //First byte of a multi byte character
+                    //Reduce maxLength to split at start of character
                     $maxLength -= $lookBack - $encodedCharPos;
                     $foundSplitPos = true;
                 } elseif ($dec < 192) {
-                    // Middle byte of a multi byte character, look further back
+                    //Middle byte of a multi byte character, look further back
                     $lookBack += 3;
                 }
             } else {
-                // No encoded character found
+                //No encoded character found
                 $foundSplitPos = true;
             }
         }
@@ -2419,7 +2511,7 @@
 
         $result .= $this->headerLine('Date', '' === $this->MessageDate ? self::rfcDate() : $this->MessageDate);
 
-        // The To header is created automatically by mail(), so needs to be omitted here
+        //The To header is created automatically by mail(), so needs to be omitted here
         if ('mail' !== $this->Mailer) {
             if ($this->SingleTo) {
                 foreach ($this->to as $toaddr) {
@@ -2433,12 +2525,12 @@
         }
         $result .= $this->addrAppend('From', [[trim($this->From), $this->FromName]]);
 
-        // sendmail and mail() extract Cc from the header before sending
+        //sendmail and mail() extract Cc from the header before sending
         if (count($this->cc) > 0) {
             $result .= $this->addrAppend('Cc', $this->cc);
         }
 
-        // sendmail and mail() extract Bcc from the header before sending
+        //sendmail and mail() extract Bcc from the header before sending
         if (
             (
                 'sendmail' === $this->Mailer || 'qmail' === $this->Mailer || 'mail' === $this->Mailer
@@ -2452,13 +2544,13 @@
             $result .= $this->addrAppend('Reply-To', $this->ReplyTo);
         }
 
-        // mail() sets the subject itself
+        //mail() sets the subject itself
         if ('mail' !== $this->Mailer) {
             $result .= $this->headerLine('Subject', $this->encodeHeader($this->secureHeader($this->Subject)));
         }
 
-        // Only allow a custom message ID if it conforms to RFC 5322 section 3.6.4
-        // https://tools.ietf.org/html/rfc5322#section-3.6.4
+        //Only allow a custom message ID if it conforms to RFC 5322 section 3.6.4
+        //https://tools.ietf.org/html/rfc5322#section-3.6.4
         if ('' !== $this->MessageID && preg_match('/^<.*@.*>$/', $this->MessageID)) {
             $this->lastMessageID = $this->MessageID;
         } else {
@@ -2484,7 +2576,7 @@
             $result .= $this->headerLine('Disposition-Notification-To', '<' . $this->ConfirmReadingTo . '>');
         }
 
-        // Add custom headers
+        //Add custom headers
         foreach ($this->CustomHeader as $header) {
             $result .= $this->headerLine(
                 trim($header[0]),
@@ -2526,28 +2618,24 @@
                 $result .= $this->textLine(' boundary="' . $this->boundary[1] . '"');
                 break;
             default:
-                // Catches case 'plain': and case '':
+                //Catches case 'plain': and case '':
                 $result .= $this->textLine('Content-Type: ' . $this->ContentType . '; charset=' . $this->CharSet);
                 $ismultipart = false;
                 break;
         }
-        // RFC1341 part 5 says 7bit is assumed if not specified
+        //RFC1341 part 5 says 7bit is assumed if not specified
         if (static::ENCODING_7BIT !== $this->Encoding) {
-            // RFC 2045 section 6.4 says multipart MIME parts may only use 7bit, 8bit or binary CTE
+            //RFC 2045 section 6.4 says multipart MIME parts may only use 7bit, 8bit or binary CTE
             if ($ismultipart) {
                 if (static::ENCODING_8BIT === $this->Encoding) {
                     $result .= $this->headerLine('Content-Transfer-Encoding', static::ENCODING_8BIT);
                 }
-                // The only remaining alternatives are quoted-printable and base64, which are both 7bit compatible
+                //The only remaining alternatives are quoted-printable and base64, which are both 7bit compatible
             } else {
                 $result .= $this->headerLine('Content-Transfer-Encoding', $this->Encoding);
             }
         }
 
-        if ('mail' !== $this->Mailer) {
-//            $result .= static::$LE;
-        }
-
         return $result;
     }
 
@@ -2816,7 +2904,7 @@
                 $body .= $this->attachAll('attachment', $this->boundary[1]);
                 break;
             default:
-                // Catch case 'plain' and case '', applies to simple `text/plain` and `text/html` body content types
+                //Catch case 'plain' and case '', applies to simple `text/plain` and `text/html` body content types
                 //Reset the `Encoding` property in case we changed it for line length reasons
                 $this->Encoding = $bodyEncoding;
                 $body .= $this->encodeString($this->Body, $this->Encoding);
@@ -2907,7 +2995,7 @@
         $result .= $this->textLine('--' . $boundary);
         $result .= sprintf('Content-Type: %s; charset=%s', $contentType, $charSet);
         $result .= static::$LE;
-        // RFC1341 part 5 says 7bit is assumed if not specified
+        //RFC1341 part 5 says 7bit is assumed if not specified
         if (static::ENCODING_7BIT !== $encoding) {
             $result .= $this->headerLine('Content-Transfer-Encoding', $encoding);
         }
@@ -3005,7 +3093,7 @@
                 throw new Exception($this->lang('file_access') . $path, self::STOP_CONTINUE);
             }
 
-            // If a MIME type is not specified, try to work it out from the file name
+            //If a MIME type is not specified, try to work it out from the file name
             if ('' === $type) {
                 $type = static::filenameToType($path);
             }
@@ -3024,7 +3112,7 @@
                 2 => $name,
                 3 => $encoding,
                 4 => $type,
-                5 => false, // isStringAttachment
+                5 => false, //isStringAttachment
                 6 => $disposition,
                 7 => $name,
             ];
@@ -3064,16 +3152,16 @@
      */
     protected function attachAll($disposition_type, $boundary)
     {
-        // Return text of body
+        //Return text of body
         $mime = [];
         $cidUniq = [];
         $incl = [];
 
-        // Add all attachments
+        //Add all attachments
         foreach ($this->attachment as $attachment) {
-            // Check if it is a valid disposition_filter
+            //Check if it is a valid disposition_filter
             if ($attachment[6] === $disposition_type) {
-                // Check for string attachment
+                //Check for string attachment
                 $string = '';
                 $path = '';
                 $bString = $attachment[5];
@@ -3114,7 +3202,7 @@
                         static::$LE
                     );
                 }
-                // RFC1341 part 5 says 7bit is assumed if not specified
+                //RFC1341 part 5 says 7bit is assumed if not specified
                 if (static::ENCODING_7BIT !== $encoding) {
                     $mime[] = sprintf('Content-Transfer-Encoding: %s%s', $encoding, static::$LE);
                 }
@@ -3124,7 +3212,7 @@
                     $mime[] = 'Content-ID: <' . $this->encodeHeader($this->secureHeader($cid)) . '>' . static::$LE;
                 }
 
-                // Allow for bypassing the Content-Disposition header
+                //Allow for bypassing the Content-Disposition header
                 if (!empty($disposition)) {
                     $encoded_name = $this->encodeHeader($this->secureHeader($name));
                     if (!empty($encoded_name)) {
@@ -3145,7 +3233,7 @@
                     $mime[] = static::$LE;
                 }
 
-                // Encode as string attachment
+                //Encode as string attachment
                 if ($bString) {
                     $mime[] = $this->encodeString($string, $encoding);
                 } else {
@@ -3221,7 +3309,7 @@
             case static::ENCODING_7BIT:
             case static::ENCODING_8BIT:
                 $encoded = static::normalizeBreaks($str);
-                // Make sure it ends with a line break
+                //Make sure it ends with a line break
                 if (substr($encoded, -(strlen(static::$LE))) !== static::$LE) {
                     $encoded .= static::$LE;
                 }
@@ -3259,7 +3347,7 @@
         switch (strtolower($position)) {
             case 'phrase':
                 if (!preg_match('/[\200-\377]/', $str)) {
-                    // Can't use addslashes as we don't know the value of magic_quotes_sybase
+                    //Can't use addslashes as we don't know the value of magic_quotes_sybase
                     $encoded = addcslashes($str, "\0..\37\177\\\"");
                     if (($str === $encoded) && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) {
                         return $encoded;
@@ -3285,7 +3373,7 @@
             $charset = static::CHARSET_ASCII;
         }
 
-        // Q/B encoding adds 8 chars and the charset ("` =?<charset>?[QB]?<content>?=`").
+        //Q/B encoding adds 8 chars and the charset ("` =?<charset>?[QB]?<content>?=`").
         $overhead = 8 + strlen($charset);
 
         if ('mail' === $this->Mailer) {
@@ -3294,26 +3382,26 @@
             $maxlen = static::MAX_LINE_LENGTH - $overhead;
         }
 
-        // Select the encoding that produces the shortest output and/or prevents corruption.
+        //Select the encoding that produces the shortest output and/or prevents corruption.
         if ($matchcount > strlen($str) / 3) {
-            // More than 1/3 of the content needs encoding, use B-encode.
+            //More than 1/3 of the content needs encoding, use B-encode.
             $encoding = 'B';
         } elseif ($matchcount > 0) {
-            // Less than 1/3 of the content needs encoding, use Q-encode.
+            //Less than 1/3 of the content needs encoding, use Q-encode.
             $encoding = 'Q';
         } elseif (strlen($str) > $maxlen) {
-            // No encoding needed, but value exceeds max line length, use Q-encode to prevent corruption.
+            //No encoding needed, but value exceeds max line length, use Q-encode to prevent corruption.
             $encoding = 'Q';
         } else {
-            // No reformatting needed
+            //No reformatting needed
             $encoding = false;
         }
 
         switch ($encoding) {
             case 'B':
                 if ($this->hasMultiBytes($str)) {
-                    // Use a custom function which correctly encodes and wraps long
-                    // multibyte strings without breaking lines within a character
+                    //Use a custom function which correctly encodes and wraps long
+                    //multibyte strings without breaking lines within a character
                     $encoded = $this->base64EncodeWrapMB($str, "\n");
                 } else {
                     $encoded = base64_encode($str);
@@ -3348,7 +3436,7 @@
             return strlen($str) > mb_strlen($str, $this->CharSet);
         }
 
-        // Assume no multibytes (we can't handle without mbstring functions anyway)
+        //Assume no multibytes (we can't handle without mbstring functions anyway)
         return false;
     }
 
@@ -3386,11 +3474,11 @@
         }
 
         $mb_length = mb_strlen($str, $this->CharSet);
-        // Each line must have length <= 75, including $start and $end
+        //Each line must have length <= 75, including $start and $end
         $length = 75 - strlen($start) - strlen($end);
-        // Average multi-byte ratio
+        //Average multi-byte ratio
         $ratio = $mb_length / strlen($str);
-        // Base64 has a 4:3 ratio
+        //Base64 has a 4:3 ratio
         $avgLength = floor($length * $ratio * .75);
 
         $offset = 0;
@@ -3405,7 +3493,7 @@
             $encoded .= $chunk . $linebreak;
         }
 
-        // Chomp the last linefeed
+        //Chomp the last linefeed
         return substr($encoded, 0, -strlen($linebreak));
     }
 
@@ -3434,12 +3522,12 @@
      */
     public function encodeQ($str, $position = 'text')
     {
-        // There should not be any EOL in the string
+        //There should not be any EOL in the string
         $pattern = '';
         $encoded = str_replace(["\r", "\n"], '', $str);
         switch (strtolower($position)) {
             case 'phrase':
-                // RFC 2047 section 5.3
+                //RFC 2047 section 5.3
                 $pattern = '^A-Za-z0-9!*+\/ -';
                 break;
             /*
@@ -3452,15 +3540,15 @@
             /* Intentional fall through */
             case 'text':
             default:
-                // RFC 2047 section 5.1
-                // Replace every high ascii, control, =, ? and _ characters
+                //RFC 2047 section 5.1
+                //Replace every high ascii, control, =, ? and _ characters
                 $pattern = '\000-\011\013\014\016-\037\075\077\137\177-\377' . $pattern;
                 break;
         }
         $matches = [];
         if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) {
-            // If the string contains an '=', make sure it's the first thing we replace
-            // so as to avoid double-encoding
+            //If the string contains an '=', make sure it's the first thing we replace
+            //so as to avoid double-encoding
             $eqkey = array_search('=', $matches[0], true);
             if (false !== $eqkey) {
                 unset($matches[0][$eqkey]);
@@ -3470,8 +3558,8 @@
                 $encoded = str_replace($char, '=' . sprintf('%02X', ord($char)), $encoded);
             }
         }
-        // Replace spaces with _ (more readable than =20)
-        // RFC 2047 section 4.2(2)
+        //Replace spaces with _ (more readable than =20)
+        //RFC 2047 section 4.2(2)
         return str_replace(' ', '_', $encoded);
     }
 
@@ -3498,7 +3586,7 @@
         $disposition = 'attachment'
     ) {
         try {
-            // If a MIME type is not specified, try to work it out from the file name
+            //If a MIME type is not specified, try to work it out from the file name
             if ('' === $type) {
                 $type = static::filenameToType($filename);
             }
@@ -3507,14 +3595,14 @@
                 throw new Exception($this->lang('encoding') . $encoding);
             }
 
-            // Append to $attachment array
+            //Append to $attachment array
             $this->attachment[] = [
                 0 => $string,
                 1 => $filename,
                 2 => static::mb_pathinfo($filename, PATHINFO_BASENAME),
                 3 => $encoding,
                 4 => $type,
-                5 => true, // isStringAttachment
+                5 => true, //isStringAttachment
                 6 => $disposition,
                 7 => 0,
             ];
@@ -3565,7 +3653,7 @@
                 throw new Exception($this->lang('file_access') . $path, self::STOP_CONTINUE);
             }
 
-            // If a MIME type is not specified, try to work it out from the file name
+            //If a MIME type is not specified, try to work it out from the file name
             if ('' === $type) {
                 $type = static::filenameToType($path);
             }
@@ -3579,14 +3667,14 @@
                 $name = $filename;
             }
 
-            // Append to $attachment array
+            //Append to $attachment array
             $this->attachment[] = [
                 0 => $path,
                 1 => $filename,
                 2 => $name,
                 3 => $encoding,
                 4 => $type,
-                5 => false, // isStringAttachment
+                5 => false, //isStringAttachment
                 6 => $disposition,
                 7 => $cid,
             ];
@@ -3631,7 +3719,7 @@
         $disposition = 'inline'
     ) {
         try {
-            // If a MIME type is not specified, try to work it out from the name
+            //If a MIME type is not specified, try to work it out from the name
             if ('' === $type && !empty($name)) {
                 $type = static::filenameToType($name);
             }
@@ -3640,14 +3728,14 @@
                 throw new Exception($this->lang('encoding') . $encoding);
             }
 
-            // Append to $attachment array
+            //Append to $attachment array
             $this->attachment[] = [
                 0 => $string,
                 1 => $name,
                 2 => $name,
                 3 => $encoding,
                 4 => $type,
-                5 => true, // isStringAttachment
+                5 => true, //isStringAttachment
                 6 => $disposition,
                 7 => $cid,
             ];
@@ -3867,8 +3955,8 @@
      */
     public static function rfcDate()
     {
-        // Set the time zone to whatever the default is to avoid 500 errors
-        // Will default to UTC if it's not set properly in php.ini
+        //Set the time zone to whatever the default is to avoid 500 errors
+        //Will default to UTC if it's not set properly in php.ini
         date_default_timezone_set(@date_default_timezone_get());
 
         return date('D, j M Y H:i:s O');
@@ -3946,13 +4034,13 @@
     protected function lang($key)
     {
         if (count($this->language) < 1) {
-            $this->setLanguage(); // set the default language
+            $this->setLanguage(); //Set the default language
         }
 
         if (array_key_exists($key, $this->language)) {
             if ('smtp_connect_failed' === $key) {
-                //Include a link to troubleshooting docs on SMTP connection failure
-                //this is by far the biggest cause of support questions
+                //Include a link to troubleshooting docs on SMTP connection failure.
+                //This is by far the biggest cause of support questions
                 //but it's usually not PHPMailer's fault.
                 return $this->language[$key] . ' https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting';
             }
@@ -3987,7 +4075,7 @@
     public function addCustomHeader($name, $value = null)
     {
         if (null === $value && strpos($name, ':') !== false) {
-            // Value passed in as name:value
+            //Value passed in as name:value
             list($name, $value) = explode(':', $name, 2);
         }
         $name = trim($name);
@@ -4041,11 +4129,11 @@
         preg_match_all('/(?<!-)(src|background)=["\'](.*)["\']/Ui', $message, $images);
         if (array_key_exists(2, $images)) {
             if (strlen($basedir) > 1 && '/' !== substr($basedir, -1)) {
-                // Ensure $basedir has a trailing /
+                //Ensure $basedir has a trailing /
                 $basedir .= '/';
             }
             foreach ($images[2] as $imgindex => $url) {
-                // Convert data URIs into embedded images
+                //Convert data URIs into embedded images
                 //e.g. "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
                 $match = [];
                 if (preg_match('#^data:(image/(?:jpe?g|gif|png));?(base64)?,(.+)#', $url, $match)) {
@@ -4059,7 +4147,7 @@
                     }
                     //Hash the decoded data, not the URL, so that the same data-URI image used in multiple places
                     //will only be embedded once, even if it used a different encoding
-                    $cid = substr(hash('sha256', $data), 0, 32) . '@phpmailer.0'; // RFC2392 S 2
+                    $cid = substr(hash('sha256', $data), 0, 32) . '@phpmailer.0'; //RFC2392 S 2
 
                     if (!$this->cidExists($cid)) {
                         $this->addStringEmbeddedImage(
@@ -4078,13 +4166,13 @@
                     continue;
                 }
                 if (
-                    // Only process relative URLs if a basedir is provided (i.e. no absolute local paths)
+                    //Only process relative URLs if a basedir is provided (i.e. no absolute local paths)
                     !empty($basedir)
-                    // Ignore URLs containing parent dir traversal (..)
+                    //Ignore URLs containing parent dir traversal (..)
                     && (strpos($url, '..') === false)
-                    // Do not change urls that are already inline images
+                    //Do not change urls that are already inline images
                     && 0 !== strpos($url, 'cid:')
-                    // Do not change absolute URLs, including anonymous protocol
+                    //Do not change absolute URLs, including anonymous protocol
                     && !preg_match('#^[a-z][a-z0-9+.-]*:?//#i', $url)
                 ) {
                     $filename = static::mb_pathinfo($url, PATHINFO_BASENAME);
@@ -4092,7 +4180,7 @@
                     if ('.' === $directory) {
                         $directory = '';
                     }
-                    // RFC2392 S 2
+                    //RFC2392 S 2
                     $cid = substr(hash('sha256', $url), 0, 32) . '@phpmailer.0';
                     if (strlen($basedir) > 1 && '/' !== substr($basedir, -1)) {
                         $basedir .= '/';
@@ -4119,7 +4207,7 @@
             }
         }
         $this->isHTML();
-        // Convert all message body line breaks to LE, makes quoted-printable encoding work much better
+        //Convert all message body line breaks to LE, makes quoted-printable encoding work much better
         $this->Body = static::normalizeBreaks($message);
         $this->AltBody = static::normalizeBreaks($this->html2text($message, $advanced));
         if (!$this->alternativeExists()) {
@@ -4138,9 +4226,9 @@
      * Example usage:
      *
      * ```php
-     * // Use default conversion
+     * //Use default conversion
      * $plain = $mail->html2text($html);
-     * // Use your own custom converter
+     * //Use your own custom converter
      * $plain = $mail->html2text($html, function($html) {
      *     $converter = new MyHtml2text($html);
      *     return $converter->get_text();
@@ -4307,7 +4395,7 @@
      */
     public static function filenameToType($filename)
     {
-        // In case the path is a URL, strip any query string before getting extension
+        //In case the path is a URL, strip any query string before getting extension
         $qpos = strpos($filename, '?');
         if (false !== $qpos) {
             $filename = substr($filename, 0, $qpos);
@@ -4418,9 +4506,9 @@
         if (null === $breaktype) {
             $breaktype = static::$LE;
         }
-        // Normalise to \n
+        //Normalise to \n
         $text = str_replace([self::CRLF, "\r"], "\n", $text);
-        // Now convert LE as needed
+        //Now convert LE as needed
         if ("\n" !== $breaktype) {
             $text = str_replace("\n", $breaktype, $text);
         }
@@ -4526,13 +4614,13 @@
             $privKey = openssl_pkey_get_private($privKeyStr);
         }
         if (openssl_sign($signHeader, $signature, $privKey, 'sha256WithRSAEncryption')) {
-            if (PHP_MAJOR_VERSION < 8) {
+            if (\PHP_MAJOR_VERSION < 8) {
                 openssl_pkey_free($privKey);
             }
 
             return base64_encode($signature);
         }
-        if (PHP_MAJOR_VERSION < 8) {
+        if (\PHP_MAJOR_VERSION < 8) {
             openssl_pkey_free($privKey);
         }
 
@@ -4599,7 +4687,7 @@
         if (empty($body)) {
             return self::CRLF;
         }
-        // Normalize line endings to CRLF
+        //Normalize line endings to CRLF
         $body = static::normalizeBreaks($body, self::CRLF);
 
         //Reduce multiple trailing line breaks to a single one
@@ -4619,9 +4707,9 @@
      */
     public function DKIM_Add($headers_line, $subject, $body)
     {
-        $DKIMsignatureType = 'rsa-sha256'; // Signature & hash algorithms
-        $DKIMcanonicalization = 'relaxed/simple'; // Canonicalization methods of header & body
-        $DKIMquery = 'dns/txt'; // Query method
+        $DKIMsignatureType = 'rsa-sha256'; //Signature & hash algorithms
+        $DKIMcanonicalization = 'relaxed/simple'; //Canonicalization methods of header & body
+        $DKIMquery = 'dns/txt'; //Query method
         $DKIMtime = time();
         //Always sign these headers without being asked
         //Recommended list from https://tools.ietf.org/html/rfc6376#section-5.4.1
@@ -4722,7 +4810,8 @@
         $headerKeys = ' h=' . implode(':', $headersToSignKeys) . ';' . static::$LE;
         $headerValues = implode(static::$LE, $headersToSign);
         $body = $this->DKIM_BodyC($body);
-        $DKIMb64 = base64_encode(pack('H*', hash('sha256', $body))); // Base64 of packed binary SHA-256 hash of body
+        //Base64 of packed binary SHA-256 hash of body
+        $DKIMb64 = base64_encode(pack('H*', hash('sha256', $body)));
         $ident = '';
         if ('' !== $this->DKIM_identity) {
             $ident = ' i=' . $this->DKIM_identity . ';' . static::$LE;
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/POP3.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/POP3.php
index 235e637..b38964b 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/POP3.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/POP3.php
@@ -46,7 +46,7 @@
      *
      * @var string
      */
-    const VERSION = '6.2.0';
+    const VERSION = '6.5.0';
 
     /**
      * Default POP3 port number.
@@ -199,13 +199,13 @@
     public function authorise($host, $port = false, $timeout = false, $username = '', $password = '', $debug_level = 0)
     {
         $this->host = $host;
-        // If no port value provided, use default
+        //If no port value provided, use default
         if (false === $port) {
             $this->port = static::DEFAULT_PORT;
         } else {
             $this->port = (int) $port;
         }
-        // If no timeout value provided, use default
+        //If no timeout value provided, use default
         if (false === $timeout) {
             $this->tval = static::DEFAULT_TIMEOUT;
         } else {
@@ -214,9 +214,9 @@
         $this->do_debug = $debug_level;
         $this->username = $username;
         $this->password = $password;
-        //  Reset the error log
+        //Reset the error log
         $this->errors = [];
-        //  connect
+        //Connect
         $result = $this->connect($this->host, $this->port, $this->tval);
         if ($result) {
             $login_result = $this->login($this->username, $this->password);
@@ -226,7 +226,7 @@
                 return true;
             }
         }
-        // We need to disconnect regardless of whether the login succeeded
+        //We need to disconnect regardless of whether the login succeeded
         $this->disconnect();
 
         return false;
@@ -243,7 +243,7 @@
      */
     public function connect($host, $port = false, $tval = 30)
     {
-        //  Are we already connected?
+        //Are we already connected?
         if ($this->connected) {
             return true;
         }
@@ -256,22 +256,22 @@
             $port = static::DEFAULT_PORT;
         }
 
-        //  connect to the POP3 server
+        //Connect to the POP3 server
         $errno = 0;
         $errstr = '';
         $this->pop_conn = fsockopen(
-            $host, //  POP3 Host
-            $port, //  Port #
-            $errno, //  Error Number
-            $errstr, //  Error Message
+            $host, //POP3 Host
+            $port, //Port #
+            $errno, //Error Number
+            $errstr, //Error Message
             $tval
-        ); //  Timeout (seconds)
-        //  Restore the error handler
+        ); //Timeout (seconds)
+        //Restore the error handler
         restore_error_handler();
 
-        //  Did we connect?
+        //Did we connect?
         if (false === $this->pop_conn) {
-            //  It would appear not...
+            //It would appear not...
             $this->setError(
                 "Failed to connect to server $host on port $port. errno: $errno; errstr: $errstr"
             );
@@ -279,14 +279,14 @@
             return false;
         }
 
-        //  Increase the stream time-out
+        //Increase the stream time-out
         stream_set_timeout($this->pop_conn, $tval, 0);
 
-        //  Get the POP3 server response
+        //Get the POP3 server response
         $pop3_response = $this->getResponse();
-        //  Check for the +OK
+        //Check for the +OK
         if ($this->checkResponse($pop3_response)) {
-            //  The connection is established and the POP3 server is talking
+            //The connection is established and the POP3 server is talking
             $this->connected = true;
 
             return true;
@@ -316,11 +316,11 @@
             $password = $this->password;
         }
 
-        // Send the Username
+        //Send the Username
         $this->sendString("USER $username" . static::LE);
         $pop3_response = $this->getResponse();
         if ($this->checkResponse($pop3_response)) {
-            // Send the Password
+            //Send the Password
             $this->sendString("PASS $password" . static::LE);
             $pop3_response = $this->getResponse();
             if ($this->checkResponse($pop3_response)) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/SMTP.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/SMTP.php
index ab7f46e..a4a91ed 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/SMTP.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/phpmailer/phpmailer/src/SMTP.php
@@ -35,7 +35,7 @@
      *
      * @var string
      */
-    const VERSION = '6.2.0';
+    const VERSION = '6.5.0';
 
     /**
      * SMTP line break constant.
@@ -186,6 +186,7 @@
         'Amazon_SES' => '/[\d]{3} Ok (.*)/',
         'SendGrid' => '/[\d]{3} Ok: queued as (.*)/',
         'CampaignMonitor' => '/[\d]{3} 2.0.0 OK:([a-zA-Z\d]{48})/',
+        'Haraka' => '/[\d]{3} Message Queued \((.*)\)/',
     ];
 
     /**
@@ -312,11 +313,11 @@
      */
     public function connect($host, $port = null, $timeout = 30, $options = [])
     {
-        // Clear errors to avoid confusion
+        //Clear errors to avoid confusion
         $this->setError('');
-        // Make sure we are __not__ connected
+        //Make sure we are __not__ connected
         if ($this->connected()) {
-            // Already connected, generate error
+            //Already connected, generate error
             $this->setError('Already connected to a server');
 
             return false;
@@ -324,7 +325,7 @@
         if (empty($port)) {
             $port = self::DEFAULT_PORT;
         }
-        // Connect to the SMTP server
+        //Connect to the SMTP server
         $this->edebug(
             "Connection: opening to $host:$port, timeout=$timeout, options=" .
             (count($options) > 0 ? var_export($options, true) : 'array()'),
@@ -340,11 +341,23 @@
 
         $this->edebug('Connection: opened', self::DEBUG_CONNECTION);
 
-        // Get any announcement
+        //Get any announcement
         $this->last_reply = $this->get_lines();
         $this->edebug('SERVER -> CLIENT: ' . $this->last_reply, self::DEBUG_SERVER);
-
-        return true;
+        $responseCode = (int)substr($this->last_reply, 0, 3);
+        if ($responseCode === 220) {
+            return true;
+        }
+        //Anything other than a 220 response means something went wrong
+        //RFC 5321 says the server will wait for us to send a QUIT in response to a 554 error
+        //https://tools.ietf.org/html/rfc5321#section-3.1
+        if ($responseCode === 554) {
+            $this->quit();
+        }
+        //This will handle 421 responses which may not wait for a QUIT (e.g. if the server is being shut down)
+        $this->edebug('Connection: closing due to error', self::DEBUG_CONNECTION);
+        $this->close();
+        return false;
     }
 
     /**
@@ -397,7 +410,7 @@
             restore_error_handler();
         }
 
-        // Verify we connected properly
+        //Verify we connected properly
         if (!is_resource($connection)) {
             $this->setError(
                 'Failed to connect to server',
@@ -414,11 +427,11 @@
             return false;
         }
 
-        // SMTP server can take longer to respond, give longer timeout for first read
-        // Windows does not have support for this timeout function
+        //SMTP server can take longer to respond, give longer timeout for first read
+        //Windows does not have support for this timeout function
         if (strpos(PHP_OS, 'WIN') !== 0) {
             $max = (int)ini_get('max_execution_time');
-            // Don't bother if unlimited, or if set_time_limit is disabled
+            //Don't bother if unlimited, or if set_time_limit is disabled
             if (0 !== $max && $timeout > $max && strpos(ini_get('disable_functions'), 'set_time_limit') === false) {
                 @set_time_limit($timeout);
             }
@@ -449,7 +462,7 @@
             $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT;
         }
 
-        // Begin encrypted connection
+        //Begin encrypted connection
         set_error_handler([$this, 'errorHandler']);
         $crypto_ok = stream_socket_enable_crypto(
             $this->smtp_conn,
@@ -487,11 +500,11 @@
         }
 
         if (array_key_exists('EHLO', $this->server_caps)) {
-            // SMTP extensions are available; try to find a proper authentication method
+            //SMTP extensions are available; try to find a proper authentication method
             if (!array_key_exists('AUTH', $this->server_caps)) {
                 $this->setError('Authentication is not allowed at this stage');
-                // 'at this stage' means that auth may be allowed after the stage changes
-                // e.g. after STARTTLS
+                //'at this stage' means that auth may be allowed after the stage changes
+                //e.g. after STARTTLS
 
                 return false;
             }
@@ -535,12 +548,14 @@
         }
         switch ($authtype) {
             case 'PLAIN':
-                // Start authentication
+                //Start authentication
                 if (!$this->sendCommand('AUTH', 'AUTH PLAIN', 334)) {
                     return false;
                 }
-                // Send encoded username and password
+                //Send encoded username and password
                 if (
+                    //Format from https://tools.ietf.org/html/rfc4616#section-2
+                    //We skip the first field (it's forgery), so the string starts with a null byte
                     !$this->sendCommand(
                         'User & Password',
                         base64_encode("\0" . $username . "\0" . $password),
@@ -551,7 +566,7 @@
                 }
                 break;
             case 'LOGIN':
-                // Start authentication
+                //Start authentication
                 if (!$this->sendCommand('AUTH', 'AUTH LOGIN', 334)) {
                     return false;
                 }
@@ -563,17 +578,17 @@
                 }
                 break;
             case 'CRAM-MD5':
-                // Start authentication
+                //Start authentication
                 if (!$this->sendCommand('AUTH CRAM-MD5', 'AUTH CRAM-MD5', 334)) {
                     return false;
                 }
-                // Get the challenge
+                //Get the challenge
                 $challenge = base64_decode(substr($this->last_reply, 4));
 
-                // Build the response
+                //Build the response
                 $response = $username . ' ' . $this->hmac($challenge, $password);
 
-                // send encoded credentials
+                //send encoded credentials
                 return $this->sendCommand('Username', base64_encode($response), 235);
             case 'XOAUTH2':
                 //The OAuth instance must be set up prior to requesting auth.
@@ -582,7 +597,7 @@
                 }
                 $oauth = $OAuth->getOauth64();
 
-                // Start authentication
+                //Start authentication
                 if (!$this->sendCommand('AUTH', 'AUTH XOAUTH2 ' . $oauth, 235)) {
                     return false;
                 }
@@ -612,15 +627,15 @@
             return hash_hmac('md5', $data, $key);
         }
 
-        // The following borrowed from
-        // http://php.net/manual/en/function.mhash.php#27225
+        //The following borrowed from
+        //http://php.net/manual/en/function.mhash.php#27225
 
-        // RFC 2104 HMAC implementation for php.
-        // Creates an md5 HMAC.
-        // Eliminates the need to install mhash to compute a HMAC
-        // by Lance Rushing
+        //RFC 2104 HMAC implementation for php.
+        //Creates an md5 HMAC.
+        //Eliminates the need to install mhash to compute a HMAC
+        //by Lance Rushing
 
-        $bytelen = 64; // byte length for md5
+        $bytelen = 64; //byte length for md5
         if (strlen($key) > $bytelen) {
             $key = pack('H*', md5($key));
         }
@@ -643,7 +658,7 @@
         if (is_resource($this->smtp_conn)) {
             $sock_status = stream_get_meta_data($this->smtp_conn);
             if ($sock_status['eof']) {
-                // The socket is valid but we are not connected
+                //The socket is valid but we are not connected
                 $this->edebug(
                     'SMTP NOTICE: EOF caught while checking if connected',
                     self::DEBUG_CLIENT
@@ -653,7 +668,7 @@
                 return false;
             }
 
-            return true; // everything looks good
+            return true; //everything looks good
         }
 
         return false;
@@ -671,7 +686,7 @@
         $this->server_caps = null;
         $this->helo_rply = null;
         if (is_resource($this->smtp_conn)) {
-            // close the connection and cleanup
+            //Close the connection and cleanup
             fclose($this->smtp_conn);
             $this->smtp_conn = null; //Makes for cleaner serialization
             $this->edebug('Connection: closed', self::DEBUG_CONNECTION);
@@ -706,7 +721,7 @@
          * NOTE: this does not count towards line-length limit.
          */
 
-        // Normalize line breaks before exploding
+        //Normalize line breaks before exploding
         $lines = explode("\n", str_replace(["\r\n", "\r"], "\n", $msg_data));
 
         /* To distinguish between a complete RFC822 message and a plain message body, we check if the first field
@@ -752,7 +767,8 @@
 
             //Send the lines to the server
             foreach ($lines_out as $line_out) {
-                //RFC2821 section 4.5.2
+                //Dot-stuffing as per RFC5321 section 4.5.2
+                //https://tools.ietf.org/html/rfc5321#section-4.5.2
                 if (!empty($line_out) && $line_out[0] === '.') {
                     $line_out = '.' . $line_out;
                 }
@@ -786,7 +802,16 @@
     public function hello($host = '')
     {
         //Try extended hello first (RFC 2821)
-        return $this->sendHello('EHLO', $host) or $this->sendHello('HELO', $host);
+        if ($this->sendHello('EHLO', $host)) {
+            return true;
+        }
+
+        //Some servers shut down the SMTP service here (RFC 5321)
+        if (substr($this->helo_rply, 0, 3) == '421') {
+            return false;
+        }
+
+        return $this->sendHello('HELO', $host);
     }
 
     /**
@@ -976,12 +1001,12 @@
         $this->client_send($commandstring . static::LE, $command);
 
         $this->last_reply = $this->get_lines();
-        // Fetch SMTP code and possible error code explanation
+        //Fetch SMTP code and possible error code explanation
         $matches = [];
         if (preg_match('/^([\d]{3})[ -](?:([\d]\\.[\d]\\.[\d]{1,2}) )?/', $this->last_reply, $matches)) {
             $code = (int) $matches[1];
             $code_ex = (count($matches) > 2 ? $matches[2] : null);
-            // Cut off error code from each response line
+            //Cut off error code from each response line
             $detail = preg_replace(
                 "/{$code}[ -]" .
                 ($code_ex ? str_replace('.', '\\.', $code_ex) . ' ' : '') . '/m',
@@ -989,7 +1014,7 @@
                 $this->last_reply
             );
         } else {
-            // Fall back to simple parsing if regex fails
+            //Fall back to simple parsing if regex fails
             $code = (int) substr($this->last_reply, 0, 3);
             $code_ex = null;
             $detail = substr($this->last_reply, 4);
@@ -1184,7 +1209,7 @@
      */
     protected function get_lines()
     {
-        // If the connection is bad, give up straight away
+        //If the connection is bad, give up straight away
         if (!is_resource($this->smtp_conn)) {
             return '';
         }
@@ -1237,13 +1262,13 @@
             $str = @fgets($this->smtp_conn, self::MAX_REPLY_LENGTH);
             $this->edebug('SMTP INBOUND: "' . trim($str) . '"', self::DEBUG_LOWLEVEL);
             $data .= $str;
-            // If response is only 3 chars (not valid, but RFC5321 S4.2 says it must be handled),
-            // or 4th character is a space or a line break char, we are done reading, break the loop.
-            // String array access is a significant micro-optimisation over strlen
+            //If response is only 3 chars (not valid, but RFC5321 S4.2 says it must be handled),
+            //or 4th character is a space or a line break char, we are done reading, break the loop.
+            //String array access is a significant micro-optimisation over strlen
             if (!isset($str[3]) || $str[3] === ' ' || $str[3] === "\r" || $str[3] === "\n") {
                 break;
             }
-            // Timed-out? Log and break
+            //Timed-out? Log and break
             $info = stream_get_meta_data($this->smtp_conn);
             if ($info['timed_out']) {
                 $this->edebug(
@@ -1252,7 +1277,7 @@
                 );
                 break;
             }
-            // Now check if reads took too long
+            //Now check if reads took too long
             if ($endtime && time() > $endtime) {
                 $this->edebug(
                     'SMTP -> get_lines(): timelimit reached (' .
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/.gitignore
new file mode 100644
index 0000000..b2395aa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/.gitignore
@@ -0,0 +1,3 @@
+composer.lock
+composer.phar
+/vendor/
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/LICENSE
new file mode 100644
index 0000000..2877a48
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2013-2016 container-interop
+Copyright (c) 2016 PHP Framework Interoperability Group
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/README.md
new file mode 100644
index 0000000..1b9d9e5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/README.md
@@ -0,0 +1,13 @@
+Container interface
+==============
+
+This repository holds all interfaces related to [PSR-11 (Container Interface)][psr-url].
+
+Note that this is not a Container implementation of its own. It is merely abstractions that describe the components of a Dependency Injection Container.
+
+The installable [package][package-url] and [implementations][implementation-url] are listed on Packagist.
+
+[psr-url]: https://www.php-fig.org/psr/psr-11/
+[package-url]: https://packagist.org/packages/psr/container
+[implementation-url]: https://packagist.org/providers/psr/container-implementation
+
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/composer.json
new file mode 100644
index 0000000..3797a25
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/composer.json
@@ -0,0 +1,22 @@
+{
+    "name": "psr/container",
+    "type": "library",
+    "description": "Common Container Interface (PHP FIG PSR-11)",
+    "keywords": ["psr", "psr-11", "container", "container-interop", "container-interface"],
+    "homepage": "https://github.com/php-fig/container",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "PHP-FIG",
+            "homepage": "https://www.php-fig.org/"
+        }
+    ],
+    "require": {
+        "php": ">=7.2.0"
+    },
+    "autoload": {
+        "psr-4": {
+            "Psr\\Container\\": "src/"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerExceptionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerExceptionInterface.php
new file mode 100644
index 0000000..cf10b8b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerExceptionInterface.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Psr\Container;
+
+/**
+ * Base interface representing a generic exception in a container.
+ */
+interface ContainerExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerInterface.php
new file mode 100644
index 0000000..cf8e7fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/ContainerInterface.php
@@ -0,0 +1,36 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Psr\Container;
+
+/**
+ * Describes the interface of a container that exposes methods to read its entries.
+ */
+interface ContainerInterface
+{
+    /**
+     * Finds an entry of the container by its identifier and returns it.
+     *
+     * @param string $id Identifier of the entry to look for.
+     *
+     * @throws NotFoundExceptionInterface  No entry was found for **this** identifier.
+     * @throws ContainerExceptionInterface Error while retrieving the entry.
+     *
+     * @return mixed Entry.
+     */
+    public function get(string $id);
+
+    /**
+     * Returns true if the container can return an entry for the given identifier.
+     * Returns false otherwise.
+     *
+     * `has($id)` returning true does not mean that `get($id)` will not throw an exception.
+     * It does however mean that `get($id)` will not throw a `NotFoundExceptionInterface`.
+     *
+     * @param string $id Identifier of the entry to look for.
+     *
+     * @return bool
+     */
+    public function has(string $id);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/NotFoundExceptionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/NotFoundExceptionInterface.php
new file mode 100644
index 0000000..650bf46
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/container/src/NotFoundExceptionInterface.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Psr\Container;
+
+/**
+ * No entry was found in the container.
+ */
+interface NotFoundExceptionInterface extends ContainerExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/LICENSE
new file mode 100644
index 0000000..474c952
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2012 PHP Framework Interoperability Group
+
+Permission is hereby granted, free of charge, to any person obtaining a copy 
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights 
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 
+copies of the Software, and to permit persons to whom the Software is 
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in 
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/AbstractLogger.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/AbstractLogger.php
new file mode 100644
index 0000000..e02f9da
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/AbstractLogger.php
@@ -0,0 +1,128 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * This is a simple Logger implementation that other Loggers can inherit from.
+ *
+ * It simply delegates all log-level-specific methods to the `log` method to
+ * reduce boilerplate code that a simple Logger that does the same thing with
+ * messages regardless of the error level has to implement.
+ */
+abstract class AbstractLogger implements LoggerInterface
+{
+    /**
+     * System is unusable.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function emergency($message, array $context = array())
+    {
+        $this->log(LogLevel::EMERGENCY, $message, $context);
+    }
+
+    /**
+     * Action must be taken immediately.
+     *
+     * Example: Entire website down, database unavailable, etc. This should
+     * trigger the SMS alerts and wake you up.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function alert($message, array $context = array())
+    {
+        $this->log(LogLevel::ALERT, $message, $context);
+    }
+
+    /**
+     * Critical conditions.
+     *
+     * Example: Application component unavailable, unexpected exception.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function critical($message, array $context = array())
+    {
+        $this->log(LogLevel::CRITICAL, $message, $context);
+    }
+
+    /**
+     * Runtime errors that do not require immediate action but should typically
+     * be logged and monitored.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function error($message, array $context = array())
+    {
+        $this->log(LogLevel::ERROR, $message, $context);
+    }
+
+    /**
+     * Exceptional occurrences that are not errors.
+     *
+     * Example: Use of deprecated APIs, poor use of an API, undesirable things
+     * that are not necessarily wrong.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function warning($message, array $context = array())
+    {
+        $this->log(LogLevel::WARNING, $message, $context);
+    }
+
+    /**
+     * Normal but significant events.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function notice($message, array $context = array())
+    {
+        $this->log(LogLevel::NOTICE, $message, $context);
+    }
+
+    /**
+     * Interesting events.
+     *
+     * Example: User logs in, SQL logs.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function info($message, array $context = array())
+    {
+        $this->log(LogLevel::INFO, $message, $context);
+    }
+
+    /**
+     * Detailed debug information.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function debug($message, array $context = array())
+    {
+        $this->log(LogLevel::DEBUG, $message, $context);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/InvalidArgumentException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/InvalidArgumentException.php
new file mode 100644
index 0000000..67f852d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/InvalidArgumentException.php
@@ -0,0 +1,7 @@
+<?php
+
+namespace Psr\Log;
+
+class InvalidArgumentException extends \InvalidArgumentException
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LogLevel.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LogLevel.php
new file mode 100644
index 0000000..9cebcac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LogLevel.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * Describes log levels.
+ */
+class LogLevel
+{
+    const EMERGENCY = 'emergency';
+    const ALERT     = 'alert';
+    const CRITICAL  = 'critical';
+    const ERROR     = 'error';
+    const WARNING   = 'warning';
+    const NOTICE    = 'notice';
+    const INFO      = 'info';
+    const DEBUG     = 'debug';
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareInterface.php
new file mode 100644
index 0000000..4d64f47
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareInterface.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * Describes a logger-aware instance.
+ */
+interface LoggerAwareInterface
+{
+    /**
+     * Sets a logger instance on the object.
+     *
+     * @param LoggerInterface $logger
+     *
+     * @return void
+     */
+    public function setLogger(LoggerInterface $logger);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareTrait.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareTrait.php
new file mode 100644
index 0000000..82bf45c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerAwareTrait.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * Basic Implementation of LoggerAwareInterface.
+ */
+trait LoggerAwareTrait
+{
+    /**
+     * The logger instance.
+     *
+     * @var LoggerInterface|null
+     */
+    protected $logger;
+
+    /**
+     * Sets a logger.
+     *
+     * @param LoggerInterface $logger
+     */
+    public function setLogger(LoggerInterface $logger)
+    {
+        $this->logger = $logger;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerInterface.php
new file mode 100644
index 0000000..2206cfd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerInterface.php
@@ -0,0 +1,125 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * Describes a logger instance.
+ *
+ * The message MUST be a string or object implementing __toString().
+ *
+ * The message MAY contain placeholders in the form: {foo} where foo
+ * will be replaced by the context data in key "foo".
+ *
+ * The context array can contain arbitrary data. The only assumption that
+ * can be made by implementors is that if an Exception instance is given
+ * to produce a stack trace, it MUST be in a key named "exception".
+ *
+ * See https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md
+ * for the full interface specification.
+ */
+interface LoggerInterface
+{
+    /**
+     * System is unusable.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function emergency($message, array $context = array());
+
+    /**
+     * Action must be taken immediately.
+     *
+     * Example: Entire website down, database unavailable, etc. This should
+     * trigger the SMS alerts and wake you up.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function alert($message, array $context = array());
+
+    /**
+     * Critical conditions.
+     *
+     * Example: Application component unavailable, unexpected exception.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function critical($message, array $context = array());
+
+    /**
+     * Runtime errors that do not require immediate action but should typically
+     * be logged and monitored.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function error($message, array $context = array());
+
+    /**
+     * Exceptional occurrences that are not errors.
+     *
+     * Example: Use of deprecated APIs, poor use of an API, undesirable things
+     * that are not necessarily wrong.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function warning($message, array $context = array());
+
+    /**
+     * Normal but significant events.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function notice($message, array $context = array());
+
+    /**
+     * Interesting events.
+     *
+     * Example: User logs in, SQL logs.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function info($message, array $context = array());
+
+    /**
+     * Detailed debug information.
+     *
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     */
+    public function debug($message, array $context = array());
+
+    /**
+     * Logs with an arbitrary level.
+     *
+     * @param mixed   $level
+     * @param string  $message
+     * @param mixed[] $context
+     *
+     * @return void
+     *
+     * @throws \Psr\Log\InvalidArgumentException
+     */
+    public function log($level, $message, array $context = array());
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerTrait.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerTrait.php
new file mode 100644
index 0000000..e392fef
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/LoggerTrait.php
@@ -0,0 +1,142 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * This is a simple Logger trait that classes unable to extend AbstractLogger
+ * (because they extend another class, etc) can include.
+ *
+ * It simply delegates all log-level-specific methods to the `log` method to
+ * reduce boilerplate code that a simple Logger that does the same thing with
+ * messages regardless of the error level has to implement.
+ */
+trait LoggerTrait
+{
+    /**
+     * System is unusable.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function emergency($message, array $context = array())
+    {
+        $this->log(LogLevel::EMERGENCY, $message, $context);
+    }
+
+    /**
+     * Action must be taken immediately.
+     *
+     * Example: Entire website down, database unavailable, etc. This should
+     * trigger the SMS alerts and wake you up.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function alert($message, array $context = array())
+    {
+        $this->log(LogLevel::ALERT, $message, $context);
+    }
+
+    /**
+     * Critical conditions.
+     *
+     * Example: Application component unavailable, unexpected exception.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function critical($message, array $context = array())
+    {
+        $this->log(LogLevel::CRITICAL, $message, $context);
+    }
+
+    /**
+     * Runtime errors that do not require immediate action but should typically
+     * be logged and monitored.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function error($message, array $context = array())
+    {
+        $this->log(LogLevel::ERROR, $message, $context);
+    }
+
+    /**
+     * Exceptional occurrences that are not errors.
+     *
+     * Example: Use of deprecated APIs, poor use of an API, undesirable things
+     * that are not necessarily wrong.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function warning($message, array $context = array())
+    {
+        $this->log(LogLevel::WARNING, $message, $context);
+    }
+
+    /**
+     * Normal but significant events.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function notice($message, array $context = array())
+    {
+        $this->log(LogLevel::NOTICE, $message, $context);
+    }
+
+    /**
+     * Interesting events.
+     *
+     * Example: User logs in, SQL logs.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function info($message, array $context = array())
+    {
+        $this->log(LogLevel::INFO, $message, $context);
+    }
+
+    /**
+     * Detailed debug information.
+     *
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     */
+    public function debug($message, array $context = array())
+    {
+        $this->log(LogLevel::DEBUG, $message, $context);
+    }
+
+    /**
+     * Logs with an arbitrary level.
+     *
+     * @param mixed  $level
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     *
+     * @throws \Psr\Log\InvalidArgumentException
+     */
+    abstract public function log($level, $message, array $context = array());
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/NullLogger.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/NullLogger.php
new file mode 100644
index 0000000..c8f7293
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/NullLogger.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Psr\Log;
+
+/**
+ * This Logger can be used to avoid conditional log calls.
+ *
+ * Logging should always be optional, and if no logger is provided to your
+ * library creating a NullLogger instance to have something to throw logs at
+ * is a good way to avoid littering your code with `if ($this->logger) { }`
+ * blocks.
+ */
+class NullLogger extends AbstractLogger
+{
+    /**
+     * Logs with an arbitrary level.
+     *
+     * @param mixed  $level
+     * @param string $message
+     * @param array  $context
+     *
+     * @return void
+     *
+     * @throws \Psr\Log\InvalidArgumentException
+     */
+    public function log($level, $message, array $context = array())
+    {
+        // noop
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/DummyTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/DummyTest.php
new file mode 100644
index 0000000..9638c11
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/DummyTest.php
@@ -0,0 +1,18 @@
+<?php
+
+namespace Psr\Log\Test;
+
+/**
+ * This class is internal and does not follow the BC promise.
+ *
+ * Do NOT use this class in any way.
+ *
+ * @internal
+ */
+class DummyTest
+{
+    public function __toString()
+    {
+        return 'DummyTest';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
new file mode 100644
index 0000000..e1e5354
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
@@ -0,0 +1,138 @@
+<?php
+
+namespace Psr\Log\Test;
+
+use Psr\Log\LoggerInterface;
+use Psr\Log\LogLevel;
+use PHPUnit\Framework\TestCase;
+
+/**
+ * Provides a base test class for ensuring compliance with the LoggerInterface.
+ *
+ * Implementors can extend the class and implement abstract methods to run this
+ * as part of their test suite.
+ */
+abstract class LoggerInterfaceTest extends TestCase
+{
+    /**
+     * @return LoggerInterface
+     */
+    abstract public function getLogger();
+
+    /**
+     * This must return the log messages in order.
+     *
+     * The simple formatting of the messages is: "<LOG LEVEL> <MESSAGE>".
+     *
+     * Example ->error('Foo') would yield "error Foo".
+     *
+     * @return string[]
+     */
+    abstract public function getLogs();
+
+    public function testImplements()
+    {
+        $this->assertInstanceOf('Psr\Log\LoggerInterface', $this->getLogger());
+    }
+
+    /**
+     * @dataProvider provideLevelsAndMessages
+     */
+    public function testLogsAtAllLevels($level, $message)
+    {
+        $logger = $this->getLogger();
+        $logger->{$level}($message, array('user' => 'Bob'));
+        $logger->log($level, $message, array('user' => 'Bob'));
+
+        $expected = array(
+            $level.' message of level '.$level.' with context: Bob',
+            $level.' message of level '.$level.' with context: Bob',
+        );
+        $this->assertEquals($expected, $this->getLogs());
+    }
+
+    public function provideLevelsAndMessages()
+    {
+        return array(
+            LogLevel::EMERGENCY => array(LogLevel::EMERGENCY, 'message of level emergency with context: {user}'),
+            LogLevel::ALERT => array(LogLevel::ALERT, 'message of level alert with context: {user}'),
+            LogLevel::CRITICAL => array(LogLevel::CRITICAL, 'message of level critical with context: {user}'),
+            LogLevel::ERROR => array(LogLevel::ERROR, 'message of level error with context: {user}'),
+            LogLevel::WARNING => array(LogLevel::WARNING, 'message of level warning with context: {user}'),
+            LogLevel::NOTICE => array(LogLevel::NOTICE, 'message of level notice with context: {user}'),
+            LogLevel::INFO => array(LogLevel::INFO, 'message of level info with context: {user}'),
+            LogLevel::DEBUG => array(LogLevel::DEBUG, 'message of level debug with context: {user}'),
+        );
+    }
+
+    /**
+     * @expectedException \Psr\Log\InvalidArgumentException
+     */
+    public function testThrowsOnInvalidLevel()
+    {
+        $logger = $this->getLogger();
+        $logger->log('invalid level', 'Foo');
+    }
+
+    public function testContextReplacement()
+    {
+        $logger = $this->getLogger();
+        $logger->info('{Message {nothing} {user} {foo.bar} a}', array('user' => 'Bob', 'foo.bar' => 'Bar'));
+
+        $expected = array('info {Message {nothing} Bob Bar a}');
+        $this->assertEquals($expected, $this->getLogs());
+    }
+
+    public function testObjectCastToString()
+    {
+        if (method_exists($this, 'createPartialMock')) {
+            $dummy = $this->createPartialMock('Psr\Log\Test\DummyTest', array('__toString'));
+        } else {
+            $dummy = $this->getMock('Psr\Log\Test\DummyTest', array('__toString'));
+        }
+        $dummy->expects($this->once())
+            ->method('__toString')
+            ->will($this->returnValue('DUMMY'));
+
+        $this->getLogger()->warning($dummy);
+
+        $expected = array('warning DUMMY');
+        $this->assertEquals($expected, $this->getLogs());
+    }
+
+    public function testContextCanContainAnything()
+    {
+        $closed = fopen('php://memory', 'r');
+        fclose($closed);
+
+        $context = array(
+            'bool' => true,
+            'null' => null,
+            'string' => 'Foo',
+            'int' => 0,
+            'float' => 0.5,
+            'nested' => array('with object' => new DummyTest),
+            'object' => new \DateTime,
+            'resource' => fopen('php://memory', 'r'),
+            'closed' => $closed,
+        );
+
+        $this->getLogger()->warning('Crazy context data', $context);
+
+        $expected = array('warning Crazy context data');
+        $this->assertEquals($expected, $this->getLogs());
+    }
+
+    public function testContextExceptionKeyCanBeExceptionOrOtherValues()
+    {
+        $logger = $this->getLogger();
+        $logger->warning('Random message', array('exception' => 'oops'));
+        $logger->critical('Uncaught Exception!', array('exception' => new \LogicException('Fail')));
+
+        $expected = array(
+            'warning Random message',
+            'critical Uncaught Exception!'
+        );
+        $this->assertEquals($expected, $this->getLogs());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/TestLogger.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/TestLogger.php
new file mode 100644
index 0000000..1be3230
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/Psr/Log/Test/TestLogger.php
@@ -0,0 +1,147 @@
+<?php
+
+namespace Psr\Log\Test;
+
+use Psr\Log\AbstractLogger;
+
+/**
+ * Used for testing purposes.
+ *
+ * It records all records and gives you access to them for verification.
+ *
+ * @method bool hasEmergency($record)
+ * @method bool hasAlert($record)
+ * @method bool hasCritical($record)
+ * @method bool hasError($record)
+ * @method bool hasWarning($record)
+ * @method bool hasNotice($record)
+ * @method bool hasInfo($record)
+ * @method bool hasDebug($record)
+ *
+ * @method bool hasEmergencyRecords()
+ * @method bool hasAlertRecords()
+ * @method bool hasCriticalRecords()
+ * @method bool hasErrorRecords()
+ * @method bool hasWarningRecords()
+ * @method bool hasNoticeRecords()
+ * @method bool hasInfoRecords()
+ * @method bool hasDebugRecords()
+ *
+ * @method bool hasEmergencyThatContains($message)
+ * @method bool hasAlertThatContains($message)
+ * @method bool hasCriticalThatContains($message)
+ * @method bool hasErrorThatContains($message)
+ * @method bool hasWarningThatContains($message)
+ * @method bool hasNoticeThatContains($message)
+ * @method bool hasInfoThatContains($message)
+ * @method bool hasDebugThatContains($message)
+ *
+ * @method bool hasEmergencyThatMatches($message)
+ * @method bool hasAlertThatMatches($message)
+ * @method bool hasCriticalThatMatches($message)
+ * @method bool hasErrorThatMatches($message)
+ * @method bool hasWarningThatMatches($message)
+ * @method bool hasNoticeThatMatches($message)
+ * @method bool hasInfoThatMatches($message)
+ * @method bool hasDebugThatMatches($message)
+ *
+ * @method bool hasEmergencyThatPasses($message)
+ * @method bool hasAlertThatPasses($message)
+ * @method bool hasCriticalThatPasses($message)
+ * @method bool hasErrorThatPasses($message)
+ * @method bool hasWarningThatPasses($message)
+ * @method bool hasNoticeThatPasses($message)
+ * @method bool hasInfoThatPasses($message)
+ * @method bool hasDebugThatPasses($message)
+ */
+class TestLogger extends AbstractLogger
+{
+    /**
+     * @var array
+     */
+    public $records = [];
+
+    public $recordsByLevel = [];
+
+    /**
+     * @inheritdoc
+     */
+    public function log($level, $message, array $context = [])
+    {
+        $record = [
+            'level' => $level,
+            'message' => $message,
+            'context' => $context,
+        ];
+
+        $this->recordsByLevel[$record['level']][] = $record;
+        $this->records[] = $record;
+    }
+
+    public function hasRecords($level)
+    {
+        return isset($this->recordsByLevel[$level]);
+    }
+
+    public function hasRecord($record, $level)
+    {
+        if (is_string($record)) {
+            $record = ['message' => $record];
+        }
+        return $this->hasRecordThatPasses(function ($rec) use ($record) {
+            if ($rec['message'] !== $record['message']) {
+                return false;
+            }
+            if (isset($record['context']) && $rec['context'] !== $record['context']) {
+                return false;
+            }
+            return true;
+        }, $level);
+    }
+
+    public function hasRecordThatContains($message, $level)
+    {
+        return $this->hasRecordThatPasses(function ($rec) use ($message) {
+            return strpos($rec['message'], $message) !== false;
+        }, $level);
+    }
+
+    public function hasRecordThatMatches($regex, $level)
+    {
+        return $this->hasRecordThatPasses(function ($rec) use ($regex) {
+            return preg_match($regex, $rec['message']) > 0;
+        }, $level);
+    }
+
+    public function hasRecordThatPasses(callable $predicate, $level)
+    {
+        if (!isset($this->recordsByLevel[$level])) {
+            return false;
+        }
+        foreach ($this->recordsByLevel[$level] as $i => $rec) {
+            if (call_user_func($predicate, $rec, $i)) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    public function __call($method, $args)
+    {
+        if (preg_match('/(.*)(Debug|Info|Notice|Warning|Error|Critical|Alert|Emergency)(.*)/', $method, $matches) > 0) {
+            $genericMethod = $matches[1] . ('Records' !== $matches[3] ? 'Record' : '') . $matches[3];
+            $level = strtolower($matches[2]);
+            if (method_exists($this, $genericMethod)) {
+                $args[] = $level;
+                return call_user_func_array([$this, $genericMethod], $args);
+            }
+        }
+        throw new \BadMethodCallException('Call to undefined method ' . get_class($this) . '::' . $method . '()');
+    }
+
+    public function reset()
+    {
+        $this->records = [];
+        $this->recordsByLevel = [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/README.md
new file mode 100644
index 0000000..a9f20c4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/README.md
@@ -0,0 +1,58 @@
+PSR Log
+=======
+
+This repository holds all interfaces/classes/traits related to
+[PSR-3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md).
+
+Note that this is not a logger of its own. It is merely an interface that
+describes a logger. See the specification for more details.
+
+Installation
+------------
+
+```bash
+composer require psr/log
+```
+
+Usage
+-----
+
+If you need a logger, you can use the interface like this:
+
+```php
+<?php
+
+use Psr\Log\LoggerInterface;
+
+class Foo
+{
+    private $logger;
+
+    public function __construct(LoggerInterface $logger = null)
+    {
+        $this->logger = $logger;
+    }
+
+    public function doSomething()
+    {
+        if ($this->logger) {
+            $this->logger->info('Doing work');
+        }
+           
+        try {
+            $this->doSomethingElse();
+        } catch (Exception $exception) {
+            $this->logger->error('Oh no!', array('exception' => $exception));
+        }
+
+        // do something useful
+    }
+}
+```
+
+You can then pick one of the implementations of the interface to get a logger.
+
+If you want to implement the interface, you can require this package and
+implement `Psr\Log\LoggerInterface` in your code. Please read the
+[specification text](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md)
+for details.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/composer.json
new file mode 100644
index 0000000..ca05695
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/log/composer.json
@@ -0,0 +1,26 @@
+{
+    "name": "psr/log",
+    "description": "Common interface for logging libraries",
+    "keywords": ["psr", "psr-3", "log"],
+    "homepage": "https://github.com/php-fig/log",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "PHP-FIG",
+            "homepage": "https://www.php-fig.org/"
+        }
+    ],
+    "require": {
+        "php": ">=5.3.0"
+    },
+    "autoload": {
+        "psr-4": {
+            "Psr\\Log\\": "Psr/Log/"
+        }
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-master": "1.1.x-dev"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/.editorconfig b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/.editorconfig
new file mode 100644
index 0000000..48542cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/.editorconfig
@@ -0,0 +1,12 @@
+; This file is for unifying the coding style for different editors and IDEs.
+; More information at http://editorconfig.org
+
+root = true
+
+[*]
+charset = utf-8
+indent_size = 4
+indent_style = space
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/LICENSE.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/LICENSE.md
new file mode 100644
index 0000000..e49a7c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/LICENSE.md
@@ -0,0 +1,21 @@
+# The MIT License (MIT)
+
+Copyright (c) 2016 PHP Framework Interoperability Group
+
+> Permission is hereby granted, free of charge, to any person obtaining a copy
+> of this software and associated documentation files (the "Software"), to deal
+> in the Software without restriction, including without limitation the rights
+> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+> copies of the Software, and to permit persons to whom the Software is
+> furnished to do so, subject to the following conditions:
+>
+> The above copyright notice and this permission notice shall be included in
+> all copies or substantial portions of the Software.
+>
+> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+> THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/README.md
new file mode 100644
index 0000000..43641d1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/README.md
@@ -0,0 +1,8 @@
+PHP FIG Simple Cache PSR
+========================
+
+This repository holds all interfaces related to PSR-16.
+
+Note that this is not a cache implementation of its own. It is merely an interface that describes a cache implementation. See [the specification](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-16-simple-cache.md) for more details.
+
+You can find implementations of the specification by looking for packages providing the [psr/simple-cache-implementation](https://packagist.org/providers/psr/simple-cache-implementation) virtual package.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/composer.json
new file mode 100644
index 0000000..2978fa5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/composer.json
@@ -0,0 +1,25 @@
+{
+    "name": "psr/simple-cache",
+    "description": "Common interfaces for simple caching",
+    "keywords": ["psr", "psr-16", "cache", "simple-cache", "caching"],
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "PHP-FIG",
+            "homepage": "http://www.php-fig.org/"
+        }
+    ],
+    "require": {
+        "php": ">=5.3.0"
+    },
+    "autoload": {
+        "psr-4": {
+            "Psr\\SimpleCache\\": "src/"
+        }
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-master": "1.0.x-dev"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheException.php
new file mode 100644
index 0000000..eba5381
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace Psr\SimpleCache;
+
+/**
+ * Interface used for all types of exceptions thrown by the implementing library.
+ */
+interface CacheException
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheInterface.php
new file mode 100644
index 0000000..99e8d95
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/CacheInterface.php
@@ -0,0 +1,114 @@
+<?php
+
+namespace Psr\SimpleCache;
+
+interface CacheInterface
+{
+    /**
+     * Fetches a value from the cache.
+     *
+     * @param string $key     The unique key of this item in the cache.
+     * @param mixed  $default Default value to return if the key does not exist.
+     *
+     * @return mixed The value of the item from the cache, or $default in case of cache miss.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if the $key string is not a legal value.
+     */
+    public function get($key, $default = null);
+
+    /**
+     * Persists data in the cache, uniquely referenced by a key with an optional expiration TTL time.
+     *
+     * @param string                 $key   The key of the item to store.
+     * @param mixed                  $value The value of the item to store, must be serializable.
+     * @param null|int|\DateInterval $ttl   Optional. The TTL value of this item. If no value is sent and
+     *                                      the driver supports TTL then the library may set a default value
+     *                                      for it or let the driver take care of that.
+     *
+     * @return bool True on success and false on failure.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if the $key string is not a legal value.
+     */
+    public function set($key, $value, $ttl = null);
+
+    /**
+     * Delete an item from the cache by its unique key.
+     *
+     * @param string $key The unique cache key of the item to delete.
+     *
+     * @return bool True if the item was successfully removed. False if there was an error.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if the $key string is not a legal value.
+     */
+    public function delete($key);
+
+    /**
+     * Wipes clean the entire cache's keys.
+     *
+     * @return bool True on success and false on failure.
+     */
+    public function clear();
+
+    /**
+     * Obtains multiple cache items by their unique keys.
+     *
+     * @param iterable $keys    A list of keys that can obtained in a single operation.
+     * @param mixed    $default Default value to return for keys that do not exist.
+     *
+     * @return iterable A list of key => value pairs. Cache keys that do not exist or are stale will have $default as value.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if $keys is neither an array nor a Traversable,
+     *   or if any of the $keys are not a legal value.
+     */
+    public function getMultiple($keys, $default = null);
+
+    /**
+     * Persists a set of key => value pairs in the cache, with an optional TTL.
+     *
+     * @param iterable               $values A list of key => value pairs for a multiple-set operation.
+     * @param null|int|\DateInterval $ttl    Optional. The TTL value of this item. If no value is sent and
+     *                                       the driver supports TTL then the library may set a default value
+     *                                       for it or let the driver take care of that.
+     *
+     * @return bool True on success and false on failure.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if $values is neither an array nor a Traversable,
+     *   or if any of the $values are not a legal value.
+     */
+    public function setMultiple($values, $ttl = null);
+
+    /**
+     * Deletes multiple cache items in a single operation.
+     *
+     * @param iterable $keys A list of string-based keys to be deleted.
+     *
+     * @return bool True if the items were successfully removed. False if there was an error.
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if $keys is neither an array nor a Traversable,
+     *   or if any of the $keys are not a legal value.
+     */
+    public function deleteMultiple($keys);
+
+    /**
+     * Determines whether an item is present in the cache.
+     *
+     * NOTE: It is recommended that has() is only to be used for cache warming type purposes
+     * and not to be used within your live applications operations for get/set, as this method
+     * is subject to a race condition where your has() will return true and immediately after,
+     * another script can remove it making the state of your app out of date.
+     *
+     * @param string $key The cache item key.
+     *
+     * @return bool
+     *
+     * @throws \Psr\SimpleCache\InvalidArgumentException
+     *   MUST be thrown if the $key string is not a legal value.
+     */
+    public function has($key);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/InvalidArgumentException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/InvalidArgumentException.php
new file mode 100644
index 0000000..6a9524a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/psr/simple-cache/src/InvalidArgumentException.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Psr\SimpleCache;
+
+/**
+ * Exception interface for invalid cache arguments.
+ *
+ * When an invalid argument is passed it must throw an exception which implements
+ * this interface
+ */
+interface InvalidArgumentException extends CacheException
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/FUNDING.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/FUNDING.yml
new file mode 100644
index 0000000..b2d7224
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/FUNDING.yml
@@ -0,0 +1,4 @@
+# These are supported funding model platforms
+
+github: [RobThree]
+custom: ["https://paypal.me/robiii"]
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/workflows/test.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/workflows/test.yml
new file mode 100644
index 0000000..8b31e23
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.github/workflows/test.yml
@@ -0,0 +1,27 @@
+name: Test
+
+on:
+  push:
+  pull_request:
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    strategy:
+      matrix:
+        php-version: ['5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0']
+
+    steps:
+    - uses: actions/checkout@v2
+
+    - uses: shivammathur/setup-php@v2
+      with:
+        php-version: ${{ matrix.php-version }}
+        tools: composer
+        coverage: xdebug
+
+    - uses: ramsey/composer-install@v1
+
+    - run: composer lint
+    - run: composer test
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.gitignore
index 8a25841..5c1c961 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.gitignore
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.gitignore
@@ -125,7 +125,7 @@
 # Publish Web Output
 *.[Pp]ublish.xml
 *.azurePubxml
-# TODO: Comment the next line if you want to checkin your web deploy settings 
+# TODO: Comment the next line if you want to checkin your web deploy settings
 # but database connection strings (with potential passwords) will be unencrypted
 *.pubxml
 *.publishproj
@@ -184,6 +184,9 @@
 
 # Composer
 /vendor
+composer.lock
 
 # .vs
-.vs/
\ No newline at end of file
+.vs/
+
+.phpunit.result.cache
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.travis.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.travis.yml
deleted file mode 100644
index fdc6ff5..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/.travis.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-language: php
-
-php:
-  - 5.6
-  - 7.0
-  - 7.1
-  - 7.2
-  - 7.3
-  - 7.4
-
-before_script:
-  - composer install
-
-script:
-  - vendor/bin/phpunit --coverage-text tests
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/README.md
index 3574ae9..b8fcc75 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/README.md
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/README.md
@@ -1,6 +1,6 @@
 # ![Logo](https://raw.githubusercontent.com/RobThree/TwoFactorAuth/master/logo.png) PHP library for Two Factor Authentication
 
-[![Build status](https://img.shields.io/travis/RobThree/TwoFactorAuth.svg?style=flat-square)](https://travis-ci.org/RobThree/TwoFactorAuth/) [![Latest Stable Version](https://img.shields.io/packagist/v/robthree/twofactorauth.svg?style=flat-square)](https://packagist.org/packages/robthree/twofactorauth) [![License](https://img.shields.io/packagist/l/robthree/twofactorauth.svg?style=flat-square)](LICENSE) [![Downloads](https://img.shields.io/packagist/dt/robthree/twofactorauth.svg?style=flat-square)](https://packagist.org/packages/robthree/twofactorauth) [![Code Climate](https://img.shields.io/codeclimate/github/RobThree/TwoFactorAuth.svg?style=flat-square)](https://codeclimate.com/github/RobThree/TwoFactorAuth) [![PayPal donate button](http://img.shields.io/badge/paypal-donate-orange.svg?style=flat-square)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=6MB5M2SQLP636 "Keep me off the streets")
+[![Build status](https://img.shields.io/github/workflow/status/RobThree/TwoFactorAuth/Test/master?style=flat-square)](https://github.com/RobThree/TwoFactorAuth/actions?query=branch%3Amaster) [![Latest Stable Version](https://img.shields.io/packagist/v/robthree/twofactorauth.svg?style=flat-square)](https://packagist.org/packages/robthree/twofactorauth) [![License](https://img.shields.io/packagist/l/robthree/twofactorauth.svg?style=flat-square)](LICENSE) [![Downloads](https://img.shields.io/packagist/dt/robthree/twofactorauth.svg?style=flat-square)](https://packagist.org/packages/robthree/twofactorauth) [![Code Climate](https://img.shields.io/codeclimate/github/RobThree/TwoFactorAuth.svg?style=flat-square)](https://codeclimate.com/github/RobThree/TwoFactorAuth) [![PayPal donate button](http://img.shields.io/badge/paypal-donate-orange.svg?style=flat-square)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=6MB5M2SQLP636 "Keep me off the streets")
 
 PHP library for [two-factor (or multi-factor) authentication](http://en.wikipedia.org/wiki/Multi-factor_authentication) using [TOTP](http://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm) and [QR-codes](http://en.wikipedia.org/wiki/QR_code). Inspired by, based on but most importantly an *improvement* on '[PHPGangsta/GoogleAuthenticator](https://github.com/PHPGangsta/GoogleAuthenticator)'. There's a [.Net implementation](https://github.com/RobThree/TwoFactorAuth.Net) of this library as well.
 
@@ -10,10 +10,15 @@
 
 ## Requirements
 
-* Tested on PHP 5.6 up to 7.4
-* [cURL](http://php.net/manual/en/book.curl.php) when using the provided `ImageChartsQRCodeProvider` (default), `QRServerProvider` or `QRicketProvider` but you can also provide your own QR-code provider.
+* Tested on PHP 5.6 up to 8.0
+* [cURL](http://php.net/manual/en/book.curl.php) when using the provided `QRServerProvider` (default), `ImageChartsQRCodeProvider` or `QRicketProvider` but you can also provide your own QR-code provider.
 * [random_bytes()](http://php.net/manual/en/function.random-bytes.php), [MCrypt](http://php.net/manual/en/book.mcrypt.php), [OpenSSL](http://php.net/manual/en/book.openssl.php) or [Hash](http://php.net/manual/en/book.hash.php) depending on which built-in RNG you use (TwoFactorAuth will try to 'autodetect' and use the best available); however: feel free to provide your own (CS)RNG.
 
+Optionally, you may need:
+
+* [endroid/qr-code](https://github.com/endroid/qr-code) if using `EndroidQrCodeProvider` or `EndroidQrCodeWithLogoProvider`.
+* [bacon/bacon-qr-code](https://github.com/Bacon/BaconQrCode) if using `BaconQrCodeProvider`.
+
 ## Installation
 
 Run the following command:
@@ -35,17 +40,17 @@
 
 The TwoFactorAuth class constructor accepts 7 arguments (all optional):
 
-Argument          | Default value | Use 
+Argument          | Default value | Use
 ------------------|---------------|--------------------------------------------------
 `$issuer`         | `null`        | Will be displayed in the app as issuer name
 `$digits`         | `6`           | The number of digits the resulting codes will be
 `$period`         | `30`          | The number of seconds a code will be valid
-`$algorithm`      | `sha1`        | The algorithm used
+`$algorithm`      | `sha1`        | The algorithm used (one of `sha1`, `sha256`, `sha512`, `md5`)
 `$qrcodeprovider` | `null`        | QR-code provider (more on this later)
 `$rngprovider`    | `null`        | Random Number Generator provider (more on this later)
 `$timeprovider`   | `null`        | Time provider (more on this later)
 
-These arguments are all '`write once`'; the class will, for it's lifetime, use these values when generating / calculating codes. The number of digits, the period and algorithm are all set to values Google's Authticator app uses (and supports). You may specify `8` digits, a period of `45` seconds and the `sha256` algorithm but the authenticator app (be it Google's implementation, Authy or any other app) may or may not support these values. Your mileage may vary; keep it on the safe side if you don't control which app your audience uses.
+These arguments are all '`write once`'; the class will, for it's lifetime, use these values when generating / calculating codes. The number of digits, the period and algorithm are all set to values Google's Authenticator app uses (and supports). You may specify `8` digits, a period of `45` seconds and the `sha256` algorithm but the authenticator app (be it Google's implementation, Authy or any other app) may or may not support these values. Your mileage may vary; keep it on the safe side if you don't control which app your audience uses.
 
 ### Step 1: Set up secret shared key
 
@@ -64,9 +69,12 @@
 
 Another, more user-friendly, way to get the shared secret into the app is to generate a [QR-code](http://en.wikipedia.org/wiki/QR_code) which can be scanned by the app. To generate these QR codes you can use any one of the built-in `QRProvider` classes:
 
-1. `ImageChartsQRCodeProvider` (default)
-2. `QRServerProvider`
+1. `QRServerProvider` (default)
+2. `ImageChartsQRCodeProvider`
 3. `QRicketProvider`
+4. `EndroidQrCodeProvider` (requires `endroid/qr-code` to be installed)
+5. `EndroidQrCodeWithLogoProvider` (same, but supporting embedded images)
+6. `BaconQrCodeProvider` (requires `bacon/bacon-qr-code` to be installed)
 
 ...or implement your own provider. To implement your own provider all you need to do is implement the `IQRCodeProvider` interface. You can use the built-in providers mentioned before to serve as an example or read the next chapter in this file. The built-in classes all use a 3rd (e.g. external) party (Image-charts, QRServer and QRicket) for the hard work of generating QR-codes (note: each of these services might at some point not be available or impose limitations to the number of codes generated per day, hour etc.). You could, however, easily use a project like [PHP QR Code](http://phpqrcode.sourceforge.net/) (or one of the [many others](https://packagist.org/search/?q=qr)) to generate your QR-codes without depending on external sources. Later on we'll [demonstrate](#qr-code-providers) how to do this.
 
@@ -89,7 +97,9 @@
 $result = $tfa->verifyCode($_SESSION['secret'], $_POST['verification']);
 ````
 
-`verifyCode()` will return either `true` (the code was valid) or `false` (the code was invalid; no points for you!). You may need to store `$secret` in a `$_SESSION` or other persistent storage between requests. The `verifyCode()` accepts, aside from `$secret` and `$code`, three more arguments. The first being `$discrepancy`. Since TOTP codes are based on time("slices") it is very important that the server (but also client) have a correct date/time. But because the two *may* differ a bit we usually allow a certain amount of leeway. Because generated codes are valid for a specific period (remember the `$period` argument in the `TwoFactorAuth`'s constructor?) we usually check the period directly before and the period directly after the current time when validating codes. So when the current time is `14:34:21`, which results in a 'current timeslice' of `14:34:00` to `14:34:30` we also calculate/verify the codes for `14:33:30` to `14:34:00` and for `14:34:30` to `14:35:00`. This gives us a 'window' of `14:33:30` to `14:35:00`. The `$discrepancy` argument specifies how many periods (or: timeslices) we check in either direction of the current time. The default `$discrepancy` of `1` results in (max.) 3 period checks: -1, current and +1 period. A `$discrepancy` of `4` would result in a larger window (or: bigger time difference between client and server) of -4, -3, -2, -1, current, +1, +2, +3 and +4 periods.
+If you do extra validations with your `$_POST` values, just make sure the code is still submitted as string - even if that's a numeric code, casting it to integer is unreliable. Also, you may need to store `$secret` in a `$_SESSION` or other persistent storage between requests. `verifyCode()` will return either `true` (the code was valid) or `false` (the code was invalid; no points for you!).
+
+ The `verifyCode()` accepts, aside from `$secret` and `$code`, three more arguments, with the first being `$discrepancy`. Since TOTP codes are based on time("slices") it is very important that the server (but also client) have a correct date/time. But because the two *may* differ a bit we usually allow a certain amount of leeway. Because generated codes are valid for a specific period (remember the `$period` argument in the `TwoFactorAuth`'s constructor?) we usually check the period directly before and the period directly after the current time when validating codes. So when the current time is `14:34:21`, which results in a 'current timeslice' of `14:34:00` to `14:34:30` we also calculate/verify the codes for `14:33:30` to `14:34:00` and for `14:34:30` to `14:35:00`. This gives us a 'window' of `14:33:30` to `14:35:00`. The `$discrepancy` argument specifies how many periods (or: timeslices) we check in either direction of the current time. The default `$discrepancy` of `1` results in (max.) 3 period checks: -1, current and +1 period. A `$discrepancy` of `4` would result in a larger window (or: bigger time difference between client and server) of -4, -3, -2, -1, current, +1, +2, +3 and +4 periods.
 
 The second, `$time`, allows you to check a code for a specific point in time. This argument has no real practical use but can be handy for unittesting etc. The default value, `null`, means: use the current time.
 
@@ -105,10 +115,10 @@
 
 ````php
 public function __construct(
-    $issuer = null, 
+    $issuer = null,
     $digits = 6,
-    $period = 30, 
-    $algorithm = 'sha1', 
+    $period = 30,
+    $algorithm = 'sha1',
     RobThree\Auth\Providers\Qr\IQRCodeProvider $qrcodeprovider = null,
     RobThree\Auth\Providers\Rng\IRNGProvider $rngprovider = null
 );
@@ -119,9 +129,9 @@
 
 ### QR-code providers
 
-As mentioned before, this library comes with three 'built-in' QR-code providers. This chapter will touch the subject a bit but most of it should be self-explanatory. The `TwoFactorAuth`-class accepts a `$qrcodeprovider` argument which lets you specify a built-in or custom QR-code provider. All three built-in providers do a simple HTTP request to retrieve an image using cURL and implement the [`IQRCodeProvider`](lib/Providers/Qr/IQRCodeProvider.php) interface which is all you need to implement to write your own QR-code provider.
+As mentioned before, this library comes with five 'built-in' QR-code providers. This chapter will touch the subject a bit but most of it should be self-explanatory. The `TwoFactorAuth`-class accepts a `$qrcodeprovider` argument which lets you specify a built-in or custom QR-code provider. All five built-in providers do a simple HTTP request to retrieve an image using cURL and implement the [`IQRCodeProvider`](lib/Providers/Qr/IQRCodeProvider.php) interface which is all you need to implement to write your own QR-code provider.
 
-The default provider is the [`ImageChartsQRCodeProvider`](lib/Providers/Qr/ImageChartsQRCodeProvider.php) which uses the [image-charts.com replacement for Google Image Charts](https://image-charts.com) to render QR-codes. Then we have the [`QRServerProvider`](lib/Providers/Qr/QRServerProvider.php) which uses the [goqr.me API](http://goqr.me/api/doc/create-qr-code/) and finally we have the [`QRicketProvider`](lib/Providers/Qr/QRicketProvider.php) which uses the [QRickit API](http://qrickit.com/qrickit_apps/qrickit_api.php). All three inherit from a common (abstract) baseclass named [`BaseHTTPQRCodeProvider`](lib/Providers/Qr/BaseHTTPQRCodeProvider.php) because all three share the same functionality: retrieve an image from a 3rd party over HTTP. All three classes have constructors that allow you to tweak some settings and most, if not all, arguments should speak for themselves. If you're not sure which values are supported, click the links in this paragraph for documentation on the API's that are utilized by these classes.
+The default provider is the [`QRServerProvider`](lib/Providers/Qr/QRServerProvider.php) which uses the [goqr.me API](http://goqr.me/api/doc/create-qr-code/) to render QR-codes. Then we have the [`ImageChartsQRCodeProvider`](lib/Providers/Qr/ImageChartsQRCodeProvider.php) which uses the [image-charts.com replacement for Google Image Charts](https://image-charts.com) to render QR-codes and the [`QRicketProvider`](lib/Providers/Qr/QRicketProvider.php) which uses the [QRickit API](http://qrickit.com/qrickit_apps/qrickit_api.php). These three providers all inherit from a common (abstract) baseclass named [`BaseHTTPQRCodeProvider`](lib/Providers/Qr/BaseHTTPQRCodeProvider.php) because all three share the same functionality: retrieve an image from a 3rd party over HTTP. Finally, we have [`EndroidQrCodeProvider`](lib/Providers/Qr/EndroidQrCodeProvider.php), [`EndroidQrCodeWithLogoProvider`](lib/Providers/Qr/EndroidQrCodeWithLogoProvider.php) and [`BaconQrCodeProvider`](lib/Providers/Qr/BaconQrCodeProvider.php) which require an optional dependency to be installed to use (see Requirements section above), but will generate the QR codes locally. All five classes have constructors that allow you to tweak some settings and most, if not all, arguments should speak for themselves. If you're not sure which values are supported, click the links in this paragraph for documentation on the API's that are utilized by these classes.
 
 If you don't like any of the built-in classes because you don't want to rely on external resources for example or because you're paranoid about sending the TOTP secret to these 3rd parties (which is useless to them since they miss *at least one* other factor in the [MFA process](http://en.wikipedia.org/wiki/Multi-factor_authentication)), feel tree to implement your own. The `IQRCodeProvider` interface couldn't be any simpler. All you need to do is implement 2 methods:
 
@@ -148,7 +158,7 @@
   public function getMimeType() {
     return 'image/png';                             // This provider only returns PNG's
   }
-  
+
   public function getQRCodeImage($qrtext, $size) {
     ob_start();                                     // 'Catch' QRCode's output
     QRCode::png($qrtext, null, QR_ECLEVEL_L, 3, 4); // We ignore $size and set it to 3
@@ -190,7 +200,7 @@
 
 ## Integrations
 
-- [CakePHP 3](https://github.com/andrej-griniuk/cakephp-two-factor-auth) 
+- [CakePHP 3](https://github.com/andrej-griniuk/cakephp-two-factor-auth)
 
 ## License
 
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.json
index 50f8b86..847b2f8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.json
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.json
@@ -1,7 +1,7 @@
 {
     "name": "robthree/twofactorauth",
     "description": "Two Factor Authentication",
-    "version": "1.7.0",
+    "version": "1.8.0",
     "type": "library",
     "keywords": [ "Authentication", "Two Factor Authentication", "Multi Factor Authentication", "TFA", "MFA", "PHP", "Authenticator", "Authy" ],
     "homepage": "https://github.com/RobThree/TwoFactorAuth",
@@ -21,7 +21,12 @@
         "php": ">=5.6.0"
     },
     "require-dev": {
-        "phpunit/phpunit": "@stable"
+        "phpunit/phpunit": "@stable",
+        "php-parallel-lint/php-parallel-lint": "^1.2"
+    },
+    "suggest": {
+        "bacon/bacon-qr-code": "Needed for BaconQrCodeProvider provider",
+        "endroid/qr-code": "Needed for EndroidQrCodeProvider"
     },
     "autoload": {
         "psr-4": {
@@ -30,7 +35,15 @@
     },
     "autoload-dev": {
         "psr-4": {
-            "RobThree\\Auth\\Test\\": "tests"
+            "Tests\\": "tests/"
         }
+    },
+    "scripts": {
+        "lint": [
+            "parallel-lint --exclude vendor ."
+        ],
+        "test": [
+            "XDEBUG_MODE=coverage phpunit"
+        ]
     }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.lock b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.lock
deleted file mode 100644
index 63df937..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/composer.lock
+++ /dev/null
@@ -1,980 +0,0 @@
-{
-    "_readme": [
-        "This file locks the dependencies of your project to a known state",
-        "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
-        "This file is @generated automatically"
-    ],
-    "content-hash": "9647de85f54ba6db237f5ff42ff85a1f",
-    "packages": [],
-    "packages-dev": [
-        {
-            "name": "doctrine/instantiator",
-            "version": "1.0.5",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/instantiator.git",
-                "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
-                "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3,<8.0-DEV"
-            },
-            "require-dev": {
-                "athletic/athletic": "~0.1.8",
-                "ext-pdo": "*",
-                "ext-phar": "*",
-                "phpunit/phpunit": "~4.0",
-                "squizlabs/php_codesniffer": "~2.0"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.0.x-dev"
-                }
-            },
-            "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": "http://ocramius.github.com/"
-                }
-            ],
-            "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-            "homepage": "https://github.com/doctrine/instantiator",
-            "keywords": [
-                "constructor",
-                "instantiate"
-            ],
-            "time": "2015-06-14T21:17:01+00:00"
-        },
-        {
-            "name": "phpdocumentor/reflection-docblock",
-            "version": "2.0.4",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
-                "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
-                "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.0"
-            },
-            "suggest": {
-                "dflydev/markdown": "~1.0",
-                "erusev/parsedown": "~1.0"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.0.x-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "phpDocumentor": [
-                        "src/"
-                    ]
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Mike van Riel",
-                    "email": "mike.vanriel@naenius.com"
-                }
-            ],
-            "time": "2015-02-03T12:10:50+00:00"
-        },
-        {
-            "name": "phpspec/prophecy",
-            "version": "v1.6.2",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/phpspec/prophecy.git",
-                "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
-                "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
-                "shasum": ""
-            },
-            "require": {
-                "doctrine/instantiator": "^1.0.2",
-                "php": "^5.3|^7.0",
-                "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
-                "sebastian/comparator": "^1.1",
-                "sebastian/recursion-context": "^1.0|^2.0"
-            },
-            "require-dev": {
-                "phpspec/phpspec": "^2.0",
-                "phpunit/phpunit": "^4.8 || ^5.6.5"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.6.x-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "Prophecy\\": "src/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Konstantin Kudryashov",
-                    "email": "ever.zet@gmail.com",
-                    "homepage": "http://everzet.com"
-                },
-                {
-                    "name": "Marcello Duarte",
-                    "email": "marcello.duarte@gmail.com"
-                }
-            ],
-            "description": "Highly opinionated mocking framework for PHP 5.3+",
-            "homepage": "https://github.com/phpspec/prophecy",
-            "keywords": [
-                "Double",
-                "Dummy",
-                "fake",
-                "mock",
-                "spy",
-                "stub"
-            ],
-            "time": "2016-11-21T14:58:47+00:00"
-        },
-        {
-            "name": "phpunit/php-code-coverage",
-            "version": "2.2.4",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
-                "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
-                "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3",
-                "phpunit/php-file-iterator": "~1.3",
-                "phpunit/php-text-template": "~1.2",
-                "phpunit/php-token-stream": "~1.3",
-                "sebastian/environment": "^1.3.2",
-                "sebastian/version": "~1.0"
-            },
-            "require-dev": {
-                "ext-xdebug": ">=2.1.4",
-                "phpunit/phpunit": "~4"
-            },
-            "suggest": {
-                "ext-dom": "*",
-                "ext-xdebug": ">=2.2.1",
-                "ext-xmlwriter": "*"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.2.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sb@sebastian-bergmann.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
-            "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
-            "keywords": [
-                "coverage",
-                "testing",
-                "xunit"
-            ],
-            "time": "2015-10-06T15:47:00+00:00"
-        },
-        {
-            "name": "phpunit/php-file-iterator",
-            "version": "1.4.2",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-                "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
-                "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.4.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sb@sebastian-bergmann.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "FilterIterator implementation that filters files based on a list of suffixes.",
-            "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
-            "keywords": [
-                "filesystem",
-                "iterator"
-            ],
-            "time": "2016-10-03T07:40:28+00:00"
-        },
-        {
-            "name": "phpunit/php-text-template",
-            "version": "1.2.1",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/php-text-template.git",
-                "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
-                "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "type": "library",
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "Simple template engine.",
-            "homepage": "https://github.com/sebastianbergmann/php-text-template/",
-            "keywords": [
-                "template"
-            ],
-            "time": "2015-06-21T13:50:34+00:00"
-        },
-        {
-            "name": "phpunit/php-timer",
-            "version": "1.0.8",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/php-timer.git",
-                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
-                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4|~5"
-            },
-            "type": "library",
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sb@sebastian-bergmann.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "Utility class for timing",
-            "homepage": "https://github.com/sebastianbergmann/php-timer/",
-            "keywords": [
-                "timer"
-            ],
-            "time": "2016-05-12T18:03:57+00:00"
-        },
-        {
-            "name": "phpunit/php-token-stream",
-            "version": "1.4.9",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-                "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
-                "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
-                "shasum": ""
-            },
-            "require": {
-                "ext-tokenizer": "*",
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.2"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.4-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                }
-            ],
-            "description": "Wrapper around PHP's tokenizer extension.",
-            "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
-            "keywords": [
-                "tokenizer"
-            ],
-            "time": "2016-11-15T14:06:22+00:00"
-        },
-        {
-            "name": "phpunit/phpunit",
-            "version": "4.8.35",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/phpunit.git",
-                "reference": "791b1a67c25af50e230f841ee7a9c6eba507dc87"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/791b1a67c25af50e230f841ee7a9c6eba507dc87",
-                "reference": "791b1a67c25af50e230f841ee7a9c6eba507dc87",
-                "shasum": ""
-            },
-            "require": {
-                "ext-dom": "*",
-                "ext-json": "*",
-                "ext-pcre": "*",
-                "ext-reflection": "*",
-                "ext-spl": "*",
-                "php": ">=5.3.3",
-                "phpspec/prophecy": "^1.3.1",
-                "phpunit/php-code-coverage": "~2.1",
-                "phpunit/php-file-iterator": "~1.4",
-                "phpunit/php-text-template": "~1.2",
-                "phpunit/php-timer": "^1.0.6",
-                "phpunit/phpunit-mock-objects": "~2.3",
-                "sebastian/comparator": "~1.2.2",
-                "sebastian/diff": "~1.2",
-                "sebastian/environment": "~1.3",
-                "sebastian/exporter": "~1.2",
-                "sebastian/global-state": "~1.0",
-                "sebastian/version": "~1.0",
-                "symfony/yaml": "~2.1|~3.0"
-            },
-            "suggest": {
-                "phpunit/php-invoker": "~1.1"
-            },
-            "bin": [
-                "phpunit"
-            ],
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "4.8.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "The PHP Unit Testing framework.",
-            "homepage": "https://phpunit.de/",
-            "keywords": [
-                "phpunit",
-                "testing",
-                "xunit"
-            ],
-            "time": "2017-02-06T05:18:07+00:00"
-        },
-        {
-            "name": "phpunit/phpunit-mock-objects",
-            "version": "2.3.8",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-                "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
-                "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
-                "shasum": ""
-            },
-            "require": {
-                "doctrine/instantiator": "^1.0.2",
-                "php": ">=5.3.3",
-                "phpunit/php-text-template": "~1.2",
-                "sebastian/exporter": "~1.2"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.4"
-            },
-            "suggest": {
-                "ext-soap": "*"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.3.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sb@sebastian-bergmann.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "Mock Object library for PHPUnit",
-            "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
-            "keywords": [
-                "mock",
-                "xunit"
-            ],
-            "time": "2015-10-02T06:51:40+00:00"
-        },
-        {
-            "name": "sebastian/comparator",
-            "version": "1.2.4",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/comparator.git",
-                "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
-                "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3",
-                "sebastian/diff": "~1.2",
-                "sebastian/exporter": "~1.2 || ~2.0"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.4"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.2.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Jeff Welch",
-                    "email": "whatthejeff@gmail.com"
-                },
-                {
-                    "name": "Volker Dusch",
-                    "email": "github@wallbash.com"
-                },
-                {
-                    "name": "Bernhard Schussek",
-                    "email": "bschussek@2bepublished.at"
-                },
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                }
-            ],
-            "description": "Provides the functionality to compare PHP values for equality",
-            "homepage": "http://www.github.com/sebastianbergmann/comparator",
-            "keywords": [
-                "comparator",
-                "compare",
-                "equality"
-            ],
-            "time": "2017-01-29T09:50:25+00:00"
-        },
-        {
-            "name": "sebastian/diff",
-            "version": "1.4.1",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/diff.git",
-                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
-                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.8"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.4-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Kore Nordmann",
-                    "email": "mail@kore-nordmann.de"
-                },
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                }
-            ],
-            "description": "Diff implementation",
-            "homepage": "https://github.com/sebastianbergmann/diff",
-            "keywords": [
-                "diff"
-            ],
-            "time": "2015-12-08T07:14:41+00:00"
-        },
-        {
-            "name": "sebastian/environment",
-            "version": "1.3.8",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/environment.git",
-                "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
-                "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
-                "shasum": ""
-            },
-            "require": {
-                "php": "^5.3.3 || ^7.0"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "^4.8 || ^5.0"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.3.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                }
-            ],
-            "description": "Provides functionality to handle HHVM/PHP environments",
-            "homepage": "http://www.github.com/sebastianbergmann/environment",
-            "keywords": [
-                "Xdebug",
-                "environment",
-                "hhvm"
-            ],
-            "time": "2016-08-18T05:49:44+00:00"
-        },
-        {
-            "name": "sebastian/exporter",
-            "version": "1.2.2",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/exporter.git",
-                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
-                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3",
-                "sebastian/recursion-context": "~1.0"
-            },
-            "require-dev": {
-                "ext-mbstring": "*",
-                "phpunit/phpunit": "~4.4"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.3.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Jeff Welch",
-                    "email": "whatthejeff@gmail.com"
-                },
-                {
-                    "name": "Volker Dusch",
-                    "email": "github@wallbash.com"
-                },
-                {
-                    "name": "Bernhard Schussek",
-                    "email": "bschussek@2bepublished.at"
-                },
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                },
-                {
-                    "name": "Adam Harvey",
-                    "email": "aharvey@php.net"
-                }
-            ],
-            "description": "Provides the functionality to export PHP variables for visualization",
-            "homepage": "http://www.github.com/sebastianbergmann/exporter",
-            "keywords": [
-                "export",
-                "exporter"
-            ],
-            "time": "2016-06-17T09:04:28+00:00"
-        },
-        {
-            "name": "sebastian/global-state",
-            "version": "1.1.1",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/global-state.git",
-                "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
-                "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.2"
-            },
-            "suggest": {
-                "ext-uopz": "*"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.0-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                }
-            ],
-            "description": "Snapshotting of global state",
-            "homepage": "http://www.github.com/sebastianbergmann/global-state",
-            "keywords": [
-                "global state"
-            ],
-            "time": "2015-10-12T03:26:01+00:00"
-        },
-        {
-            "name": "sebastian/recursion-context",
-            "version": "1.0.2",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/recursion-context.git",
-                "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
-                "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "~4.4"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.0.x-dev"
-                }
-            },
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Jeff Welch",
-                    "email": "whatthejeff@gmail.com"
-                },
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de"
-                },
-                {
-                    "name": "Adam Harvey",
-                    "email": "aharvey@php.net"
-                }
-            ],
-            "description": "Provides functionality to recursively process PHP variables",
-            "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
-            "time": "2015-11-11T19:50:13+00:00"
-        },
-        {
-            "name": "sebastian/version",
-            "version": "1.0.6",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/sebastianbergmann/version.git",
-                "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-                "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-                "shasum": ""
-            },
-            "type": "library",
-            "autoload": {
-                "classmap": [
-                    "src/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "BSD-3-Clause"
-            ],
-            "authors": [
-                {
-                    "name": "Sebastian Bergmann",
-                    "email": "sebastian@phpunit.de",
-                    "role": "lead"
-                }
-            ],
-            "description": "Library that helps with managing the version number of Git-hosted PHP projects",
-            "homepage": "https://github.com/sebastianbergmann/version",
-            "time": "2015-06-21T13:59:46+00:00"
-        },
-        {
-            "name": "symfony/yaml",
-            "version": "v2.8.17",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/symfony/yaml.git",
-                "reference": "322a8c2dfbca15ad6b1b27e182899f98ec0e0153"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/symfony/yaml/zipball/322a8c2dfbca15ad6b1b27e182899f98ec0e0153",
-                "reference": "322a8c2dfbca15ad6b1b27e182899f98ec0e0153",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.9"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.8-dev"
-                }
-            },
-            "autoload": {
-                "psr-4": {
-                    "Symfony\\Component\\Yaml\\": ""
-                },
-                "exclude-from-classmap": [
-                    "/Tests/"
-                ]
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com"
-                },
-                {
-                    "name": "Symfony Community",
-                    "homepage": "https://symfony.com/contributors"
-                }
-            ],
-            "description": "Symfony Yaml Component",
-            "homepage": "https://symfony.com",
-            "time": "2017-01-21T16:40:50+00:00"
-        }
-    ],
-    "aliases": [],
-    "minimum-stability": "stable",
-    "stability-flags": {
-        "phpunit/phpunit": 0
-    },
-    "prefer-stable": false,
-    "prefer-lowest": false,
-    "platform": {
-        "php": ">=5.3.0"
-    },
-    "platform-dev": []
-}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaconQrCodeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaconQrCodeProvider.php
new file mode 100644
index 0000000..4d5cf01
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaconQrCodeProvider.php
@@ -0,0 +1,152 @@
+<?php
+
+namespace RobThree\Auth\Providers\Qr;
+
+use BaconQrCode\Writer;
+use BaconQrCode\Renderer\ImageRenderer;
+use BaconQrCode\Renderer\RendererStyle\RendererStyle;
+use BaconQrCode\Renderer\RendererStyle\Fill;
+use BaconQrCode\Renderer\Color\Rgb;
+use BaconQrCode\Renderer\RendererStyle\EyeFill;
+
+use BaconQrCode\Renderer\Image\EpsImageBackEnd;
+use BaconQrCode\Renderer\Image\ImageBackEndInterface;
+use BaconQrCode\Renderer\Image\ImagickImageBackEnd;
+use BaconQrCode\Renderer\Image\SvgImageBackEnd;
+
+class BaconQrCodeProvider implements IQRCodeProvider
+{
+    private $borderWidth = 4; // default from Bacon QR Code
+    private $backgroundColour;
+    private $foregroundColour;
+    private $format;
+
+    /**
+     * Ensure we using the latest Bacon QR Code and specify default options
+     *
+     * @param int $borderWidth space around the QR code, 4 is the default from Bacon QR Code
+     * @param string $backgroundColour hex reference for the background colour
+     * @param string $foregroundColour hex reference for the foreground colour
+     * @param string $format the desired output, png or svg
+     */
+    public function __construct($borderWidth = 4, $backgroundColour = '#ffffff', $foregroundColour = '#000000', $format = 'png')
+    {
+        if (! class_exists(ImagickImageBackEnd::class)) {
+            throw new \RuntimeException('Make sure you are using version 2 of Bacon QR Code');
+        }
+
+        $this->borderWidth = $borderWidth;
+        $this->backgroundColour = $this->handleColour($backgroundColour);
+        $this->foregroundColour = $this->handleColour($foregroundColour);
+        $this->format = strtolower($format);
+    }
+
+    /**
+     * Standard functions from IQRCodeProvider
+     */
+
+    public function getMimeType()
+    {
+        switch ($this->format) {
+            case 'png':
+                return 'image/png';
+            case 'gif':
+                return 'image/gif';
+            case 'jpg':
+            case 'jpeg':
+                return 'image/jpeg';
+            case 'svg':
+                return 'image/svg+xml';
+            case 'eps':
+                return 'application/postscript';
+        }
+
+        throw new \RuntimeException(sprintf('Unknown MIME-type: %s', $this->format));
+    }
+
+    public function getQRCodeImage($qrText, $size)
+    {
+        switch ($this->format) {
+            case 'svg':
+                $backend = new SvgImageBackEnd;
+                break;
+            case 'eps':
+                $backend = new EpsImageBackEnd;
+                break;
+            default:
+                $backend = new ImagickImageBackEnd($this->format);
+        }
+
+        $output = $this->getQRCodeByBackend($qrText, $size, $backend);
+
+        if ($this->format == 'svg') {
+            $svg = explode("\n", $output);
+            return $svg[1];
+        }
+
+        return $output;
+    }
+
+    /**
+     * Abstract QR code generation function
+     * providing colour changing support
+     */
+    private function getQRCodeByBackend($qrText, $size, ImageBackEndInterface $backend)
+    {
+        $rendererStyleArgs = array($size, $this->borderWidth);
+
+        if (is_array($this->foregroundColour) && is_array($this->backgroundColour)) {
+            $rendererStyleArgs = array_merge($rendererStyleArgs, array(
+                null,
+                null,
+                Fill::withForegroundColor(
+                    new Rgb(...$this->backgroundColour),
+                    new Rgb(...$this->foregroundColour),
+                    new EyeFill(null, null),
+                    new EyeFill(null, null),
+                    new EyeFill(null, null)
+                )
+            ));
+        }
+
+        $writer = new Writer(new ImageRenderer(
+            new RendererStyle(...$rendererStyleArgs),
+            $backend
+        ));
+
+        return $writer->writeString($qrText);
+    }
+
+    /**
+     * Ensure colour is an array of three values but also
+     * accept a string and assume its a 3 or 6 character hex
+     */
+    private function handleColour($colour)
+    {
+        if (is_string($colour) && $colour[0] == '#') {
+            $hexToRGB = function ($input) {
+                // split the array into three chunks
+                $split = str_split(trim($input, '#'), strlen($input) / 3);
+
+                // cope with three character hex reference
+                // three characters plus a # = 4
+                if (strlen($input) == 4) {
+                    array_walk($split, function (&$character) {
+                        $character = str_repeat($character, 2);
+                    });
+                }
+
+                // convert hex to rgb
+                return array_map('hexdec', $split);
+            };
+
+            return $hexToRGB($colour);
+        }
+
+        if (is_array($colour) && count($colour) == 3) {
+            return $colour;
+        }
+
+        throw new \RuntimeException('Invalid colour value');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaseHTTPQRCodeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaseHTTPQRCodeProvider.php
index 5cb3add..bcc8d56 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaseHTTPQRCodeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/BaseHTTPQRCodeProvider.php
@@ -4,12 +4,18 @@
 
 abstract class BaseHTTPQRCodeProvider implements IQRCodeProvider
 {
+    /** @var bool */
     protected $verifyssl;
 
+    /**
+     * @param string $url
+     *
+     * @return string|bool
+     */
     protected function getContent($url)
     {
         $curlhandle = curl_init();
-        
+
         curl_setopt_array($curlhandle, array(
             CURLOPT_URL => $url,
             CURLOPT_RETURNTRANSFER => true,
@@ -20,8 +26,8 @@
             CURLOPT_USERAGENT => 'TwoFactorAuth'
         ));
         $data = curl_exec($curlhandle);
-        
+
         curl_close($curlhandle);
         return $data;
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeProvider.php
new file mode 100755
index 0000000..810aa9b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeProvider.php
@@ -0,0 +1,70 @@
+<?php
+namespace RobThree\Auth\Providers\Qr;
+
+use Endroid\QrCode\ErrorCorrectionLevel;
+use Endroid\QrCode\QrCode;
+
+class EndroidQrCodeProvider implements IQRCodeProvider
+{
+    public $bgcolor;
+    public $color;
+    public $margin;
+    public $errorcorrectionlevel;
+
+    public function __construct($bgcolor = 'ffffff', $color = '000000', $margin = 0, $errorcorrectionlevel = 'H')
+    {
+        $this->bgcolor = $this->handleColor($bgcolor);
+        $this->color = $this->handleColor($color);
+        $this->margin = $margin;
+        $this->errorcorrectionlevel = $this->handleErrorCorrectionLevel($errorcorrectionlevel);
+    }
+
+    public function getMimeType()
+    {
+        return 'image/png';
+    }
+
+    public function getQRCodeImage($qrtext, $size)
+    {
+        return $this->qrCodeInstance($qrtext, $size)->writeString();
+    }
+
+    protected function qrCodeInstance($qrtext, $size)
+    {
+        $qrCode = new QrCode($qrtext);
+        $qrCode->setSize($size);
+
+        $qrCode->setErrorCorrectionLevel($this->errorcorrectionlevel);
+        $qrCode->setMargin($this->margin);
+        $qrCode->setBackgroundColor($this->bgcolor);
+        $qrCode->setForegroundColor($this->color);
+
+        return $qrCode;
+    }
+
+    private function handleColor($color)
+    {
+        $split = str_split($color, 2);
+        $r = hexdec($split[0]);
+        $g = hexdec($split[1]);
+        $b = hexdec($split[2]);
+
+        return ['r' => $r, 'g' => $g, 'b' => $b, 'a' => 0];
+    }
+
+    private function handleErrorCorrectionLevel($level)
+    {
+        switch ($level) {
+            case 'L':
+                return ErrorCorrectionLevel::LOW();
+            case 'M':
+                return ErrorCorrectionLevel::MEDIUM();
+            case 'Q':
+                return ErrorCorrectionLevel::QUARTILE();
+            case 'H':
+                return ErrorCorrectionLevel::HIGH();
+            default:
+                return ErrorCorrectionLevel::HIGH();
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeWithLogoProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeWithLogoProvider.php
new file mode 100755
index 0000000..ed8cc98
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/EndroidQrCodeWithLogoProvider.php
@@ -0,0 +1,35 @@
+<?php
+namespace RobThree\Auth\Providers\Qr;
+
+use Endroid\QrCode\ErrorCorrectionLevel;
+use Endroid\QrCode\QrCode;
+
+class EndroidQrCodeWithLogoProvider extends EndroidQrCodeProvider
+{
+    protected $logoPath;
+    protected $logoSize;
+
+    /**
+     * Adds an image to the middle of the QR Code.
+     * @param string $path Path to an image file
+     * @param array|int $size Just the width, or [width, height]
+     */
+    public function setLogo($path, $size = null)
+    {
+        $this->logoPath = $path;
+        $this->logoSize = (array)$size;
+    }
+
+    protected function qrCodeInstance($qrtext, $size) {
+        $qrCode = parent::qrCodeInstance($qrtext, $size);
+
+        if ($this->logoPath) {
+            $qrCode->setLogoPath($this->logoPath);
+            if ($this->logoSize) {
+                $qrCode->setLogoSize($this->logoSize[0], $this->logoSize[1]);
+            }
+        }
+
+        return $qrCode;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/IQRCodeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/IQRCodeProvider.php
index 83ed67b..e53a5ad 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/IQRCodeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/IQRCodeProvider.php
@@ -4,6 +4,21 @@
 
 interface IQRCodeProvider
 {
+    /**
+     * Generate and return the QR code to embed in a web page
+     *
+     * @param string $qrtext the value to encode in the QR code
+     * @param int $size the desired size of the QR code
+     *
+     * @return string file contents of the QR code
+     */
     public function getQRCodeImage($qrtext, $size);
+
+    /**
+     * Returns the appropriate mime type for the QR code
+     * that will be generated
+     *
+     * @return string
+     */
     public function getMimeType();
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/ImageChartsQRCodeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/ImageChartsQRCodeProvider.php
index cc094c3..ea46ed4 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/ImageChartsQRCodeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/ImageChartsQRCodeProvider.php
@@ -3,37 +3,58 @@
 namespace RobThree\Auth\Providers\Qr;
 
 // https://image-charts.com
-class ImageChartsQRCodeProvider extends BaseHTTPQRCodeProvider 
+class ImageChartsQRCodeProvider extends BaseHTTPQRCodeProvider
 {
+    /** @var string */
     public $errorcorrectionlevel;
+
+    /** @var int */
     public $margin;
 
-    function __construct($verifyssl = false, $errorcorrectionlevel = 'L', $margin = 1) 
+    /**
+     * @param bool $verifyssl
+     * @param string $errorcorrectionlevel
+     * @param int $margin
+     */
+    public function __construct($verifyssl = false, $errorcorrectionlevel = 'L', $margin = 1)
     {
-        if (!is_bool($verifyssl))
-            throw new \QRException('VerifySSL must be bool');
+        if (!is_bool($verifyssl)) {
+            throw new QRException('VerifySSL must be bool');
+        }
 
         $this->verifyssl = $verifyssl;
-        
+
         $this->errorcorrectionlevel = $errorcorrectionlevel;
         $this->margin = $margin;
     }
-    
-    public function getMimeType() 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMimeType()
     {
         return 'image/png';
     }
-    
-    public function getQRCodeImage($qrtext, $size) 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getQRCodeImage($qrtext, $size)
     {
         return $this->getContent($this->getUrl($qrtext, $size));
     }
-    
-    public function getUrl($qrtext, $size) 
+
+    /**
+     * @param string $qrtext the value to encode in the QR code
+     * @param int $size the desired size of the QR code
+     *
+     * @return string file contents of the QR code
+     */
+    public function getUrl($qrtext, $size)
     {
         return 'https://image-charts.com/chart?cht=qr'
-            . '&chs=' . ceil($size/2) . 'x' . ceil($size/2)
+            . '&chs=' . ceil($size / 2) . 'x' . ceil($size / 2)
             . '&chld=' . $this->errorcorrectionlevel . '|' . $this->margin
             . '&chl=' . rawurlencode($qrtext);
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRException.php
index c28e829..4e75f77 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRException.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRException.php
@@ -1,5 +1,7 @@
 <?php
 
+namespace RobThree\Auth\Providers\Qr;
+
 use RobThree\Auth\TwoFactorAuthException;
 
-class QRException extends TwoFactorAuthException {}
\ No newline at end of file
+class QRException extends TwoFactorAuthException {}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRServerProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRServerProvider.php
index 928b87b..2252dfc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRServerProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRServerProvider.php
@@ -3,22 +3,43 @@
 namespace RobThree\Auth\Providers\Qr;
 
 // http://goqr.me/api/doc/create-qr-code/
-class QRServerProvider extends BaseHTTPQRCodeProvider 
+class QRServerProvider extends BaseHTTPQRCodeProvider
 {
+    /** @var string */
     public $errorcorrectionlevel;
+
+    /** @var int */
     public $margin;
+
+    /** @var int */
     public $qzone;
+
+    /** @var string */
     public $bgcolor;
+
+    /** @var string */
     public $color;
+
+    /** @var string */
     public $format;
 
-    function __construct($verifyssl = false, $errorcorrectionlevel = 'L', $margin = 4, $qzone = 1, $bgcolor = 'ffffff', $color = '000000', $format = 'png') 
+    /**
+     * @param bool $verifyssl
+     * @param string $errorcorrectionlevel
+     * @param int $margin
+     * @param int $qzone
+     * @param string $bgcolor
+     * @param string $color
+     * @param string $format
+     */
+    public function __construct($verifyssl = false, $errorcorrectionlevel = 'L', $margin = 4, $qzone = 1, $bgcolor = 'ffffff', $color = '000000', $format = 'png')
     {
-        if (!is_bool($verifyssl))
+        if (!is_bool($verifyssl)) {
             throw new QRException('VerifySSL must be bool');
+        }
 
         $this->verifyssl = $verifyssl;
-        
+
         $this->errorcorrectionlevel = $errorcorrectionlevel;
         $this->margin = $margin;
         $this->qzone = $qzone;
@@ -26,37 +47,53 @@
         $this->color = $color;
         $this->format = $format;
     }
-    
-    public function getMimeType() 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMimeType()
     {
-        switch (strtolower($this->format))
-        {
-        	case 'png':
+        switch (strtolower($this->format)) {
+            case 'png':
                 return 'image/png';
-        	case 'gif':
+            case 'gif':
                 return 'image/gif';
-        	case 'jpg':
-        	case 'jpeg':
+            case 'jpg':
+            case 'jpeg':
                 return 'image/jpeg';
-        	case 'svg':
+            case 'svg':
                 return 'image/svg+xml';
-        	case 'eps':
+            case 'eps':
                 return 'application/postscript';
         }
-        throw new \QRException(sprintf('Unknown MIME-type: %s', $this->format));
+        throw new QRException(sprintf('Unknown MIME-type: %s', $this->format));
     }
-    
-    public function getQRCodeImage($qrtext, $size) 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getQRCodeImage($qrtext, $size)
     {
         return $this->getContent($this->getUrl($qrtext, $size));
     }
-    
-    private function decodeColor($value) 
+
+    /**
+     * @param string $value
+     *
+     * @return string
+     */
+    private function decodeColor($value)
     {
         return vsprintf('%d-%d-%d', sscanf($value, "%02x%02x%02x"));
     }
-    
-    public function getUrl($qrtext, $size) 
+
+    /**
+     * @param string $qrtext the value to encode in the QR code
+     * @param int|string $size the desired size of the QR code
+     *
+     * @return string file contents of the QR code
+     */
+    public function getUrl($qrtext, $size)
     {
         return 'https://api.qrserver.com/v1/create-qr-code/'
             . '?size=' . $size . 'x' . $size
@@ -68,4 +105,4 @@
             . '&format=' . strtolower($this->format)
             . '&data=' . rawurlencode($qrtext);
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRicketProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRicketProvider.php
index 59e27cc..166a8a9 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRicketProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Qr/QRicketProvider.php
@@ -3,45 +3,67 @@
 namespace RobThree\Auth\Providers\Qr;
 
 // http://qrickit.com/qrickit_apps/qrickit_api.php
-class QRicketProvider extends BaseHTTPQRCodeProvider 
+class QRicketProvider extends BaseHTTPQRCodeProvider
 {
+    /** @var string */
     public $errorcorrectionlevel;
-    public $margin;
-    public $qzone;
+
+    /** @var string */
     public $bgcolor;
+
+    /** @var string */
     public $color;
+
+    /** @var string */
     public $format;
 
-    function __construct($errorcorrectionlevel = 'L', $bgcolor = 'ffffff', $color = '000000', $format = 'p') 
+    /**
+     * @param string $errorcorrectionlevel
+     * @param string $bgcolor
+     * @param string $color
+     * @param string $format
+     */
+    public function __construct($errorcorrectionlevel = 'L', $bgcolor = 'ffffff', $color = '000000', $format = 'p')
     {
         $this->verifyssl = false;
-        
+
         $this->errorcorrectionlevel = $errorcorrectionlevel;
         $this->bgcolor = $bgcolor;
         $this->color = $color;
         $this->format = $format;
     }
-    
-    public function getMimeType() 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMimeType()
     {
-        switch (strtolower($this->format))
-        {
-        	case 'p':
+        switch (strtolower($this->format)) {
+            case 'p':
                 return 'image/png';
-        	case 'g':
+            case 'g':
                 return 'image/gif';
-        	case 'j':
+            case 'j':
                 return 'image/jpeg';
         }
-        throw new \QRException(sprintf('Unknown MIME-type: %s', $this->format));
+        throw new QRException(sprintf('Unknown MIME-type: %s', $this->format));
     }
-    
-    public function getQRCodeImage($qrtext, $size) 
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getQRCodeImage($qrtext, $size)
     {
         return $this->getContent($this->getUrl($qrtext, $size));
     }
-    
-    public function getUrl($qrtext, $size) 
+
+    /**
+     * @param string $qrtext the value to encode in the QR code
+     * @param int|string $size the desired size of the QR code
+     *
+     * @return string file contents of the QR code
+     */
+    public function getUrl($qrtext, $size)
     {
         return 'http://qrickit.com/api/qr'
             . '?qrsize=' . $size
@@ -51,4 +73,4 @@
             . '&t=' . strtolower($this->format)
             . '&d=' . rawurlencode($qrtext);
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/CSRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/CSRNGProvider.php
index 8dba7fc..088edab 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/CSRNGProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/CSRNGProvider.php
@@ -4,11 +4,19 @@
 
 class CSRNGProvider implements IRNGProvider
 {
-    public function getRandomBytes($bytecount) {
+    /**
+     * {@inheritdoc}
+     */
+    public function getRandomBytes($bytecount)
+    {
         return random_bytes($bytecount);    // PHP7+
     }
-    
-    public function isCryptographicallySecure() {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCryptographicallySecure()
+    {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/HashRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/HashRNGProvider.php
index eb42577..d17a5f8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/HashRNGProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/HashRNGProvider.php
@@ -1,28 +1,43 @@
 <?php
+
 namespace RobThree\Auth\Providers\Rng;
 
 class HashRNGProvider implements IRNGProvider
 {
+    /** @var string */
     private $algorithm;
-    
-    function __construct($algorithm = 'sha256' ) {
+
+    /**
+     * @param string $algorithm
+     */
+    public function __construct($algorithm = 'sha256')
+    {
         $algos = array_values(hash_algos());
-        if (!in_array($algorithm, $algos, true))
-            throw new \RNGException('Unsupported algorithm specified');
+        if (!in_array($algorithm, $algos, true)) {
+            throw new RNGException('Unsupported algorithm specified');
+        }
         $this->algorithm = $algorithm;
     }
-    
-    public function getRandomBytes($bytecount) {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getRandomBytes($bytecount)
+    {
         $result = '';
         $hash = mt_rand();
         for ($i = 0; $i < $bytecount; $i++) {
-            $hash = hash($this->algorithm, $hash.mt_rand(), true);
-            $result .= $hash[mt_rand(0, strlen($hash)-1)];
+            $hash = hash($this->algorithm, $hash . mt_rand(), true);
+            $result .= $hash[mt_rand(0, strlen($hash) - 1)];
         }
         return $result;
     }
-    
-    public function isCryptographicallySecure() {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCryptographicallySecure()
+    {
         return false;
     }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/IRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/IRNGProvider.php
index 6be2800..e4e71c2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/IRNGProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/IRNGProvider.php
@@ -4,6 +4,15 @@
 
 interface IRNGProvider
 {
+    /**
+     * @param int $bytecount the number of bytes of randomness to return
+     *
+     * @return string the random bytes
+     */
     public function getRandomBytes($bytecount);
+
+    /**
+     * @return bool whether this provider is cryptographically secure
+     */
     public function isCryptographicallySecure();
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/MCryptRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/MCryptRNGProvider.php
index 0eeab2c..d1b6430 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/MCryptRNGProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/MCryptRNGProvider.php
@@ -4,20 +4,34 @@
 
 class MCryptRNGProvider implements IRNGProvider
 {
+    /** @var int */
     private $source;
-    
-    function __construct($source = MCRYPT_DEV_URANDOM) {
+
+    /**
+     * @param int $source
+     */
+    public function __construct($source = MCRYPT_DEV_URANDOM)
+    {
         $this->source = $source;
     }
-    
-    public function getRandomBytes($bytecount) {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getRandomBytes($bytecount)
+    {
         $result = @mcrypt_create_iv($bytecount, $this->source);
-        if ($result === false)
-            throw new \RNGException('mcrypt_create_iv returned an invalid value');
+        if ($result === false) {
+            throw new RNGException('mcrypt_create_iv returned an invalid value');
+        }
         return $result;
     }
-    
-    public function isCryptographicallySecure() {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCryptographicallySecure()
+    {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/OpenSSLRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/OpenSSLRNGProvider.php
index dc66c64..eb82b3b 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/OpenSSLRNGProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/OpenSSLRNGProvider.php
@@ -4,22 +4,37 @@
 
 class OpenSSLRNGProvider implements IRNGProvider
 {
+    /** @var bool */
     private $requirestrong;
-    
-    function __construct($requirestrong = true) {
+
+    /**
+     * @param bool $requirestrong
+     */
+    public function __construct($requirestrong = true)
+    {
         $this->requirestrong = $requirestrong;
     }
-    
-    public function getRandomBytes($bytecount) {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getRandomBytes($bytecount)
+    {
         $result = openssl_random_pseudo_bytes($bytecount, $crypto_strong);
-        if ($this->requirestrong && ($crypto_strong === false))
-            throw new \RNGException('openssl_random_pseudo_bytes returned non-cryptographically strong value');
-        if ($result === false)
-            throw new \RNGException('openssl_random_pseudo_bytes returned an invalid value');
+        if ($this->requirestrong && ($crypto_strong === false)) {
+            throw new RNGException('openssl_random_pseudo_bytes returned non-cryptographically strong value');
+        }
+        if ($result === false) {
+            throw new RNGException('openssl_random_pseudo_bytes returned an invalid value');
+        }
         return $result;
     }
-    
-    public function isCryptographicallySecure() {
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCryptographicallySecure()
+    {
         return $this->requirestrong;
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/RNGException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/RNGException.php
index eb5e913..f9a11ac 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/RNGException.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Rng/RNGException.php
@@ -1,5 +1,7 @@
 <?php
 
+namespace RobThree\Auth\Providers\Rng;
+
 use RobThree\Auth\TwoFactorAuthException;
 
-class RNGException extends TwoFactorAuthException {}
\ No newline at end of file
+class RNGException extends TwoFactorAuthException {}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/HttpTimeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/HttpTimeProvider.php
index 8e7806e..c346e5a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/HttpTimeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/HttpTimeProvider.php
@@ -2,22 +2,33 @@
 
 namespace RobThree\Auth\Providers\Time;
 
+use DateTime;
+
 /**
  * Takes the time from any webserver by doing a HEAD request on the specified URL and extracting the 'Date:' header
  */
 class HttpTimeProvider implements ITimeProvider
 {
+    /** @var string */
     public $url;
-    public $options;
+
+    /** @var string */
     public $expectedtimeformat;
 
-    function __construct($url = 'https://google.com', $expectedtimeformat = 'D, d M Y H:i:s O+', array $options = null)
+    /** @var array */
+    public $options;
+
+    /**
+     * @param string $url
+     * @param string $expectedtimeformat
+     * @param array $options
+     */
+    public function __construct($url = 'https://google.com', $expectedtimeformat = 'D, d M Y H:i:s O+', array $options = null)
     {
         $this->url = $url;
         $this->expectedtimeformat = $expectedtimeformat;
-        $this->options = $options;
-        if ($this->options === null) {
-            $this->options = array(
+        if ($options === null) {
+            $options = array(
                 'http' => array(
                     'method' => 'HEAD',
                     'follow_location' => false,
@@ -32,9 +43,14 @@
                 )
             );
         }
+        $this->options = $options;
     }
 
-    public function getTime() {
+    /**
+     * {@inheritdoc}
+     */
+    public function getTime()
+    {
         try {
             $context  = stream_context_create($this->options);
             $fd = fopen($this->url, 'rb', false, $context);
@@ -42,13 +58,14 @@
             fclose($fd);
 
             foreach ($headers['wrapper_data'] as $h) {
-                if (strcasecmp(substr($h, 0, 5), 'Date:') === 0)
-                    return \DateTime::createFromFormat($this->expectedtimeformat, trim(substr($h,5)))->getTimestamp();
+                if (strcasecmp(substr($h, 0, 5), 'Date:') === 0) {
+                    return DateTime::createFromFormat($this->expectedtimeformat, trim(substr($h, 5)))->getTimestamp();
+                }
             }
-            throw new \TimeException(sprintf('Unable to retrieve time from %s (Invalid or no "Date:" header found)', $this->url));
+            throw new \Exception('Invalid or no "Date:" header found');
+        } catch (\Exception $ex) {
+            throw new TimeException(sprintf('Unable to retrieve time from %s (%s)', $this->url, $ex->getMessage()));
         }
-        catch (Exception $ex) {
-            throw new \TimeException(sprintf('Unable to retrieve time from %s (%s)', $this->url, $ex->getMessage()));
-        }
+
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/ITimeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/ITimeProvider.php
index a3b87a2..4799f17 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/ITimeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/ITimeProvider.php
@@ -4,5 +4,8 @@
 
 interface ITimeProvider
 {
+    /**
+     * @return int the current timestamp according to this provider
+     */
     public function getTime();
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/LocalMachineTimeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/LocalMachineTimeProvider.php
index 572cedc..2fe6846 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/LocalMachineTimeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/LocalMachineTimeProvider.php
@@ -2,8 +2,10 @@
 
 namespace RobThree\Auth\Providers\Time;
 
-class LocalMachineTimeProvider implements ITimeProvider {
-    public function getTime() {
+class LocalMachineTimeProvider implements ITimeProvider
+{
+    public function getTime()
+    {
         return time();
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/NTPTimeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/NTPTimeProvider.php
index d69a3a6..a701850 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/NTPTimeProvider.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/NTPTimeProvider.php
@@ -7,24 +7,40 @@
  */
 class NTPTimeProvider implements ITimeProvider
 {
+    /** @var string */
     public $host;
+
+    /** @var int */
     public $port;
+
+    /** @var int */
     public $timeout;
 
-    function __construct($host = 'time.google.com', $port = 123, $timeout = 1)
+    /**
+     * @param string $host
+     * @param int $port
+     * @param int $timeout
+     */
+    public function __construct($host = 'time.google.com', $port = 123, $timeout = 1)
     {
         $this->host = $host;
 
-        if (!is_int($port) || $port <= 0 || $port > 65535)
-            throw new \TimeException('Port must be 0 < port < 65535');
+        if (!is_int($port) || $port <= 0 || $port > 65535) {
+            throw new TimeException('Port must be 0 < port < 65535');
+        }
         $this->port = $port;
 
-        if (!is_int($timeout) || $timeout < 0)
-            throw new \TimeException('Timeout must be >= 0');
+        if (!is_int($timeout) || $timeout < 0) {
+            throw new TimeException('Timeout must be >= 0');
+        }
         $this->timeout = $timeout;
     }
 
-    public function getTime() {
+    /**
+     * {@inheritdoc}
+     */
+    public function getTime()
+    {
         try {
             /* Create a socket and connect to NTP server */
             $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
@@ -36,19 +52,19 @@
             socket_send($sock, $msg, strlen($msg), 0);
 
             /* Receive response and close socket */
-            if (socket_recv($sock, $recv, 48, MSG_WAITALL) === false)
+            if (socket_recv($sock, $recv, 48, MSG_WAITALL) === false) {
                 throw new \Exception(socket_strerror(socket_last_error($sock)));
+            }
             socket_close($sock);
 
             /* Interpret response */
             $data = unpack('N12', $recv);
-            $timestamp = sprintf('%u', $data[9]);
+            $timestamp = (int) sprintf('%u', $data[9]);
 
             /* NTP is number of seconds since 0000 UT on 1 January 1900 Unix time is seconds since 0000 UT on 1 January 1970 */
             return $timestamp - 2208988800;
-        }
-        catch (Exception $ex) {
-            throw new \TimeException(sprintf('Unable to retrieve time from %s (%s)', $this->host, $ex->getMessage()));
+        } catch (\Exception $ex) {
+            throw new TimeException(sprintf('Unable to retrieve time from %s (%s)', $this->host, $ex->getMessage()));
         }
     }
 }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/TimeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/TimeException.php
index 8de544d..c5a06e2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/TimeException.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/Providers/Time/TimeException.php
@@ -1,5 +1,7 @@
 <?php
 
+namespace RobThree\Auth\Providers\Time;
+
 use RobThree\Auth\TwoFactorAuthException;
 
-class TimeException extends TwoFactorAuthException {}
\ No newline at end of file
+class TimeException extends TwoFactorAuthException {}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuth.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuth.php
index 7bc067d..c46ac17 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuth.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuth.php
@@ -1,40 +1,82 @@
 <?php
+
 namespace RobThree\Auth;
 
 use RobThree\Auth\Providers\Qr\IQRCodeProvider;
+use RobThree\Auth\Providers\Qr\QRServerProvider;
+use RobThree\Auth\Providers\Rng\CSRNGProvider;
+use RobThree\Auth\Providers\Rng\HashRNGProvider;
 use RobThree\Auth\Providers\Rng\IRNGProvider;
+use RobThree\Auth\Providers\Rng\MCryptRNGProvider;
+use RobThree\Auth\Providers\Rng\OpenSSLRNGProvider;
+use RobThree\Auth\Providers\Time\HttpTimeProvider;
 use RobThree\Auth\Providers\Time\ITimeProvider;
+use RobThree\Auth\Providers\Time\LocalMachineTimeProvider;
+use RobThree\Auth\Providers\Time\NTPTimeProvider;
 
 // Based on / inspired by: https://github.com/PHPGangsta/GoogleAuthenticator
 // Algorithms, digits, period etc. explained: https://github.com/google/google-authenticator/wiki/Key-Uri-Format
 class TwoFactorAuth
 {
+    /** @var string */
     private $algorithm;
+
+    /** @var int */
     private $period;
+
+    /** @var int */
     private $digits;
+
+    /** @var string */
     private $issuer;
+
+    /** @var ?IQRCodeProvider */
     private $qrcodeprovider = null;
+
+    /** @var ?IRNGProvider */
     private $rngprovider = null;
+
+    /** @var ?ITimeProvider */
     private $timeprovider = null;
+
+    /** @var string */
     private static $_base32dict = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=';
+
+    /** @var array */
     private static $_base32;
+
+    /** @var array */
     private static $_base32lookup = array();
+
+    /** @var array */
     private static $_supportedalgos = array('sha1', 'sha256', 'sha512', 'md5');
 
-    function __construct($issuer = null, $digits = 6, $period = 30, $algorithm = 'sha1', IQRCodeProvider $qrcodeprovider = null, IRNGProvider $rngprovider = null, ITimeProvider $timeprovider = null)
+    /**
+     * @param ?string $issuer
+     * @param int $digits
+     * @param int $period
+     * @param string $algorithm
+     * @param ?IQRCodeProvider $qrcodeprovider
+     * @param ?IRNGProvider $rngprovider
+     * @param ?ITimeProvider $timeprovider
+     */
+    public function __construct($issuer = null, $digits = 6, $period = 30, $algorithm = 'sha1', IQRCodeProvider $qrcodeprovider = null, IRNGProvider $rngprovider = null, ITimeProvider $timeprovider = null)
     {
         $this->issuer = $issuer;
-        if (!is_int($digits) || $digits <= 0)
+        if (!is_int($digits) || $digits <= 0) {
             throw new TwoFactorAuthException('Digits must be int > 0');
+        }
         $this->digits = $digits;
 
-        if (!is_int($period) || $period <= 0)
+        if (!is_int($period) || $period <= 0) {
             throw new TwoFactorAuthException('Period must be int > 0');
+        }
         $this->period = $period;
 
         $algorithm = strtolower(trim($algorithm));
-        if (!in_array($algorithm, self::$_supportedalgos))
+        if (!in_array($algorithm, self::$_supportedalgos)) {
             throw new TwoFactorAuthException('Unsupported algorithm: ' . $algorithm);
+        }
         $this->algorithm = $algorithm;
         $this->qrcodeprovider = $qrcodeprovider;
         $this->rngprovider = $rngprovider;
@@ -46,22 +88,34 @@
 
     /**
      * Create a new secret
+     *
+     * @param int $bits
+     * @param bool $requirecryptosecure
+     *
+     * @return string
      */
     public function createSecret($bits = 80, $requirecryptosecure = true)
     {
         $secret = '';
-        $bytes = ceil($bits / 5);   //We use 5 bits of each byte (since we have a 32-character 'alphabet' / BASE32)
-        $rngprovider = $this->getRngprovider();
-        if ($requirecryptosecure && !$rngprovider->isCryptographicallySecure())
+        $bytes = (int) ceil($bits / 5);   //We use 5 bits of each byte (since we have a 32-character 'alphabet' / BASE32)
+        $rngprovider = $this->getRngProvider();
+        if ($requirecryptosecure && !$rngprovider->isCryptographicallySecure()) {
             throw new TwoFactorAuthException('RNG provider is not cryptographically secure');
+        }
         $rnd = $rngprovider->getRandomBytes($bytes);
-        for ($i = 0; $i < $bytes; $i++)
+        for ($i = 0; $i < $bytes; $i++) {
             $secret .= self::$_base32[ord($rnd[$i]) & 31];  //Mask out left 3 bits for 0-31 values
+        }
         return $secret;
     }
 
     /**
      * Calculate the code with given secret and point in time
+     *
+     * @param string $secret
+     * @param ?int $time
+     *
+     * @return string
      */
     public function getCode($secret, $time = null)
     {
@@ -73,15 +127,23 @@
         $value = unpack('N', $hashpart);                                                   // Unpack binary value
         $value = $value[1] & 0x7FFFFFFF;                                                   // Drop MSB, keep only 31 bits
 
-        return str_pad($value % pow(10, $this->digits), $this->digits, '0', STR_PAD_LEFT);
+        return str_pad((string) ($value % pow(10, $this->digits)), $this->digits, '0', STR_PAD_LEFT);
     }
 
     /**
      * Check if the code is correct. This will accept codes starting from ($discrepancy * $period) sec ago to ($discrepancy * period) sec from now
+     *
+     * @param string $secret
+     * @param string $code
+     * @param int $discrepancy
+     * @param ?int $time
+     * @param int $timeslice
+     *
+     * @return bool
      */
     public function verifyCode($secret, $code, $discrepancy = 1, $time = null, &$timeslice = 0)
     {
-        $timetamp = $this->getTime($time);
+        $timestamp = $this->getTime($time);
 
         $timeslice = 0;
 
@@ -90,7 +152,7 @@
         // of the match. Each iteration we either set the timeslice variable to the timeslice of the match
         // or set the value to itself.  This is an effort to maintain constant execution time for the code.
         for ($i = -$discrepancy; $i <= $discrepancy; $i++) {
-            $ts = $timetamp + ($i * $this->period);
+            $ts = $timestamp + ($i * $this->period);
             $slice = $this->getTimeSlice($ts);
             $timeslice = $this->codeEquals($this->getCode($secret, $ts), $code) ? $slice : $timeslice;
         }
@@ -100,17 +162,24 @@
 
     /**
      * Timing-attack safe comparison of 2 codes (see http://blog.ircmaxell.com/2014/11/its-all-about-time.html)
+     *
+     * @param string $safe
+     * @param string $user
+     *
+     * @return bool
      */
-    private function codeEquals($safe, $user) {
+    private function codeEquals($safe, $user)
+    {
         if (function_exists('hash_equals')) {
             return hash_equals($safe, $user);
         }
         // In general, it's not possible to prevent length leaks. So it's OK to leak the length. The important part is that
         // we don't leak information about the difference of the two strings.
-        if (strlen($safe)===strlen($user)) {
+        if (strlen($safe) === strlen($user)) {
             $result = 0;
-            for ($i = 0; $i < strlen($safe); $i++)
+            for ($i = 0; $i < strlen($safe); $i++) {
                 $result |= (ord($safe[$i]) ^ ord($user[$i]));
+            }
             return $result === 0;
         }
         return false;
@@ -118,11 +187,18 @@
 
     /**
      * Get data-uri of QRCode
+     *
+     * @param string $label
+     * @param string $secret
+     * @param mixed $size
+     *
+     * @return string
      */
     public function getQRCodeImageAsDataUri($label, $secret, $size = 200)
     {
-        if (!is_int($size) || $size <= 0)
+        if (!is_int($size) || $size <= 0) {
             throw new TwoFactorAuthException('Size must be int > 0');
+        }
 
         $qrcodeprovider = $this->getQrCodeProvider();
         return 'data:'
@@ -133,37 +209,52 @@
 
     /**
      * Compare default timeprovider with specified timeproviders and ensure the time is within the specified number of seconds (leniency)
+     * @param ?array $timeproviders
+     * @param int $leniency
+     *
+     * @return void
      */
     public function ensureCorrectTime(array $timeproviders = null, $leniency = 5)
     {
-        if ($timeproviders != null && !is_array($timeproviders))
-            throw new TwoFactorAuthException('No timeproviders specified');
-
-        if ($timeproviders == null)
+        if ($timeproviders === null) {
             $timeproviders = array(
-                new Providers\Time\NTPTimeProvider(),
-                new Providers\Time\HttpTimeProvider()
+                new NTPTimeProvider(),
+                new HttpTimeProvider()
             );
+        }
 
         // Get default time provider
         $timeprovider = $this->getTimeProvider();
 
         // Iterate specified time providers
         foreach ($timeproviders as $t) {
-            if (!($t instanceof ITimeProvider))
+            if (!($t instanceof ITimeProvider)) {
                 throw new TwoFactorAuthException('Object does not implement ITimeProvider');
+            }
 
             // Get time from default time provider and compare to specific time provider and throw if time difference is more than specified number of seconds leniency
-            if (abs($timeprovider->getTime() - $t->getTime()) > $leniency)
+            if (abs($timeprovider->getTime() - $t->getTime()) > $leniency) {
                 throw new TwoFactorAuthException(sprintf('Time for timeprovider is off by more than %d seconds when compared to %s', $leniency, get_class($t)));
+            }
         }
     }
 
-    private function getTime($time)
+    /**
+     * @param ?int $time
+     *
+     * @return int
+     */
+    private function getTime($time = null)
     {
         return ($time === null) ? $this->getTimeProvider()->getTime() : $time;
     }
 
+    /**
+     * @param int $time
+     * @param int $offset
+     *
+     * @return int
+     */
     private function getTimeSlice($time = null, $offset = 0)
     {
         return (int)floor($time / $this->period) + ($offset * $this->period);
@@ -171,6 +262,11 @@
 
     /**
      * Builds a string to be encoded in a QR code
+     *
+     * @param string $label
+     * @param string $secret
+     *
+     * @return string
      */
     public function getQRText($label, $secret)
     {
@@ -182,25 +278,33 @@
             . '&digits=' . intval($this->digits);
     }
 
+    /**
+     * @param string $value
+     * @return string
+     */
     private function base32Decode($value)
     {
-        if (strlen($value)==0) return '';
+        if (strlen($value) == 0) {
+            return '';
+        }
 
-        if (preg_match('/[^'.preg_quote(self::$_base32dict).']/', $value) !== 0)
+        if (preg_match('/[^' . preg_quote(self::$_base32dict) . ']/', $value) !== 0) {
             throw new TwoFactorAuthException('Invalid base32 string');
+        }
 
         $buffer = '';
-        foreach (str_split($value) as $char)
-        {
-            if ($char !== '=')
-                $buffer .= str_pad(decbin(self::$_base32lookup[$char]), 5, 0, STR_PAD_LEFT);
+        foreach (str_split($value) as $char) {
+            if ($char !== '=') {
+                $buffer .= str_pad(decbin(self::$_base32lookup[$char]), 5, '0', STR_PAD_LEFT);
+            }
         }
         $length = strlen($buffer);
         $blocks = trim(chunk_split(substr($buffer, 0, $length - ($length % 8)), 8, ' '));
 
         $output = '';
-        foreach (explode(' ', $blocks) as $block)
-            $output .= chr(bindec(str_pad($block, 8, 0, STR_PAD_RIGHT)));
+        foreach (explode(' ', $blocks) as $block) {
+            $output .= chr(bindec(str_pad($block, 8, '0', STR_PAD_RIGHT)));
+        }
         return $output;
     }
 
@@ -212,7 +316,7 @@
     {
         // Set default QR Code provider if none was specified
         if (null === $this->qrcodeprovider) {
-            return $this->qrcodeprovider = new Providers\Qr\QRServerProvider();
+            return $this->qrcodeprovider = new QRServerProvider();
         }
         return $this->qrcodeprovider;
     }
@@ -221,22 +325,22 @@
      * @return IRNGProvider
      * @throws TwoFactorAuthException
      */
-    public function getRngprovider()
+    public function getRngProvider()
     {
         if (null !== $this->rngprovider) {
             return $this->rngprovider;
         }
         if (function_exists('random_bytes')) {
-            return $this->rngprovider = new Providers\Rng\CSRNGProvider();
+            return $this->rngprovider = new CSRNGProvider();
         }
         if (function_exists('mcrypt_create_iv')) {
-            return $this->rngprovider = new Providers\Rng\MCryptRNGProvider();
+            return $this->rngprovider = new MCryptRNGProvider();
         }
         if (function_exists('openssl_random_pseudo_bytes')) {
-            return $this->rngprovider = new Providers\Rng\OpenSSLRNGProvider();
+            return $this->rngprovider = new OpenSSLRNGProvider();
         }
         if (function_exists('hash')) {
-            return $this->rngprovider = new Providers\Rng\HashRNGProvider();
+            return $this->rngprovider = new HashRNGProvider();
         }
         throw new TwoFactorAuthException('Unable to find a suited RNGProvider');
     }
@@ -249,8 +353,8 @@
     {
         // Set default time provider if none was specified
         if (null === $this->timeprovider) {
-            return $this->timeprovider = new Providers\Time\LocalMachineTimeProvider();
+            return $this->timeprovider = new LocalMachineTimeProvider();
         }
         return $this->timeprovider;
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuthException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuthException.php
index af51b74..bce8370 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuthException.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/lib/TwoFactorAuthException.php
@@ -4,4 +4,4 @@
 
 use Exception;
 
-class TwoFactorAuthException extends \Exception {}
\ No newline at end of file
+class TwoFactorAuthException extends Exception {}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml
index 92c3a27..b2ff004 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/phpunit.xml
@@ -1,4 +1,4 @@
-﻿<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <phpunit backupGlobals="false"
          backupStaticAttributes="false"
          colors="true"
@@ -6,15 +6,21 @@
          convertNoticesToExceptions="true"
          convertWarningsToExceptions="true"
          processIsolation="false"
+         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          stopOnFailure="false">
   <testsuites>
     <testsuite name="Unit">
       <directory suffix="Test.php">./tests</directory>
     </testsuite>
   </testsuites>
-  <filter>
-    <whitelist processUncoveredFilesFromWhitelist="true">
+  <coverage processUncoveredFiles="true">
+    <include>
       <directory suffix=".php">./lib</directory>
-    </whitelist>
-  </filter>
-</phpunit>
\ No newline at end of file
+    </include>
+    <report>
+      <html outputDirectory="build/coverage"/>
+      <text outputFile="php://stdout"/>
+    </report>
+  </coverage>
+</phpunit>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/MightNotMakeAssertions.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/MightNotMakeAssertions.php
new file mode 100644
index 0000000..a7fbded
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/MightNotMakeAssertions.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace Tests;
+
+trait MightNotMakeAssertions
+{
+    /**
+     * This is a shim to support PHPUnit for php 5.6 and 7.0.
+     *
+     * It has to be named something that doesn't collide with existing
+     * TestCase methods as we can't support PHP return types right now
+     *
+     * @return void
+     */
+    public function noAssertionsMade()
+    {
+        foreach (class_parents($this) as $parent) {
+            if (method_exists($parent, 'expectNotToPerformAssertions')) {
+                parent::expectNotToPerformAssertions();
+                return;
+            }
+        }
+
+        $this->assertTrue(true);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/IQRCodeProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/IQRCodeProviderTest.php
new file mode 100644
index 0000000..86dd431
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/IQRCodeProviderTest.php
@@ -0,0 +1,56 @@
+<?php
+
+namespace Tests\Providers\Qr;
+
+use PHPUnit\Framework\TestCase;
+use RobThree\Auth\TwoFactorAuth;
+use RobThree\Auth\TwoFactorAuthException;
+
+class IQRCodeProviderTest extends TestCase
+{
+    /**
+     * @param string $datauri
+     *
+     * @return null|array
+     */
+    private function DecodeDataUri($datauri)
+    {
+        if (preg_match('/data:(?P<mimetype>[\w\.\-\/]+);(?P<encoding>\w+),(?P<data>.*)/', $datauri, $m) === 1) {
+            return array(
+                'mimetype' => $m['mimetype'],
+                'encoding' => $m['encoding'],
+                'data' => base64_decode($m['data'])
+            );
+        }
+
+        return null;
+    }
+
+    /**
+     * @return void
+     */
+    public function testTotpUriIsCorrect()
+    {
+        $qr = new TestQrProvider();
+
+        $tfa = new TwoFactorAuth('Test&Issuer', 6, 30, 'sha1', $qr);
+        $data = $this->DecodeDataUri($tfa->getQRCodeImageAsDataUri('Test&Label', 'VMR466AB62ZBOKHE'));
+        $this->assertEquals('test/test', $data['mimetype']);
+        $this->assertEquals('base64', $data['encoding']);
+        $this->assertEquals('otpauth://totp/Test%26Label?secret=VMR466AB62ZBOKHE&issuer=Test%26Issuer&period=30&algorithm=SHA1&digits=6@200', $data['data']);
+    }
+
+    /**
+     * @return void
+     */
+    public function testGetQRCodeImageAsDataUriThrowsOnInvalidSize()
+    {
+        $qr = new TestQrProvider();
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', $qr);
+
+        $this->expectException(TwoFactorAuthException::class);
+
+        $tfa->getQRCodeImageAsDataUri('Test', 'VMR466AB62ZBOKHE', 0);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/TestQrProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/TestQrProvider.php
new file mode 100644
index 0000000..93242c2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Qr/TestQrProvider.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace Tests\Providers\Qr;
+
+use RobThree\Auth\Providers\Qr\IQRCodeProvider;
+
+class TestQrProvider implements IQRCodeProvider
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function getQRCodeImage($qrtext, $size)
+    {
+        return $qrtext . '@' . $size;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMimeType()
+    {
+        return 'test/test';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/CSRNGProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/CSRNGProviderTest.php
new file mode 100644
index 0000000..e42ccfd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/CSRNGProviderTest.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use PHPUnit\Framework\TestCase;
+use Tests\MightNotMakeAssertions;
+use RobThree\Auth\Providers\Rng\CSRNGProvider;
+
+class CSRNGProviderTest extends TestCase
+{
+    use NeedsRngLengths, MightNotMakeAssertions;
+
+    /**
+     * @requires function random_bytes
+     *
+     * @return void
+     */
+    public function testCSRNGProvidersReturnExpectedNumberOfBytes()
+    {
+        if (function_exists('random_bytes')) {
+            $rng = new CSRNGProvider();
+            foreach ($this->rngTestLengths as $l) {
+                $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
+            }
+            $this->assertTrue($rng->isCryptographicallySecure());
+        } else {
+            $this->noAssertionsMade();
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/HashRNGProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/HashRNGProviderTest.php
new file mode 100644
index 0000000..c99879d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/HashRNGProviderTest.php
@@ -0,0 +1,24 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use PHPUnit\Framework\TestCase;
+use RobThree\Auth\Providers\Rng\HashRNGProvider;
+
+class HashRNGProviderTest extends TestCase
+{
+    use NeedsRngLengths;
+
+    /**
+     * @return void
+     */
+    public function testHashRNGProvidersReturnExpectedNumberOfBytes()
+    {
+        $rng = new HashRNGProvider();
+        foreach ($this->rngTestLengths as $l) {
+            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
+        }
+
+        $this->assertFalse($rng->isCryptographicallySecure());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/IRNGProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/IRNGProviderTest.php
new file mode 100644
index 0000000..8897673
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/IRNGProviderTest.php
@@ -0,0 +1,61 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use PHPUnit\Framework\TestCase;
+use RobThree\Auth\TwoFactorAuth;
+use RobThree\Auth\TwoFactorAuthException;
+
+class IRNGProviderTest extends TestCase
+{
+    /**
+     * @return void
+     */
+    public function testCreateSecretThrowsOnInsecureRNGProvider()
+    {
+        $rng = new TestRNGProvider();
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
+
+        $this->expectException(TwoFactorAuthException::class);
+        $tfa->createSecret();
+    }
+
+    /**
+     * @return void
+     */
+    public function testCreateSecretOverrideSecureDoesNotThrowOnInsecureRNG()
+    {
+        $rng = new TestRNGProvider();
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
+        $this->assertEquals('ABCDEFGHIJKLMNOP', $tfa->createSecret(80, false));
+    }
+
+    /**
+     * @return void
+     */
+    public function testCreateSecretDoesNotThrowOnSecureRNGProvider()
+    {
+        $rng = new TestRNGProvider(true);
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
+        $this->assertEquals('ABCDEFGHIJKLMNOP', $tfa->createSecret());
+    }
+
+    /**
+     * @return void
+     */
+    public function testCreateSecretGeneratesDesiredAmountOfEntropy()
+    {
+        $rng = new TestRNGProvider(true);
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
+        $this->assertEquals('A', $tfa->createSecret(5));
+        $this->assertEquals('AB', $tfa->createSecret(6));
+        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ', $tfa->createSecret(128));
+        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', $tfa->createSecret(160));
+        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', $tfa->createSecret(320));
+        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567ABCDEFGHIJKLMNOPQRSTUVWXYZ234567A', $tfa->createSecret(321));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/MCryptRNGProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/MCryptRNGProviderTest.php
new file mode 100644
index 0000000..f6dd91e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/MCryptRNGProviderTest.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use PHPUnit\Framework\TestCase;
+use Tests\MightNotMakeAssertions;
+use RobThree\Auth\Providers\Rng\MCryptRNGProvider;
+
+class MCryptRNGProviderTest extends TestCase
+{
+    use NeedsRngLengths, MightNotMakeAssertions;
+
+    /**
+     * @requires function mcrypt_create_iv
+     *
+     * @return void
+     */
+    public function testMCryptRNGProvidersReturnExpectedNumberOfBytes()
+    {
+        if (function_exists('mcrypt_create_iv')) {
+            $rng = new MCryptRNGProvider();
+
+            foreach ($this->rngTestLengths as $l) {
+                $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
+            }
+
+            $this->assertTrue($rng->isCryptographicallySecure());
+        } else {
+            $this->noAssertionsMade();
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/NeedsRngLengths.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/NeedsRngLengths.php
new file mode 100644
index 0000000..7bbfed9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/NeedsRngLengths.php
@@ -0,0 +1,9 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+trait NeedsRngLengths
+{
+    /** @var array */
+    protected $rngTestLengths = array(1, 16, 32, 256);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/OpenSSLRNGProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/OpenSSLRNGProviderTest.php
new file mode 100644
index 0000000..c941fcc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/OpenSSLRNGProviderTest.php
@@ -0,0 +1,37 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use PHPUnit\Framework\TestCase;
+use RobThree\Auth\Providers\Rng\OpenSSLRNGProvider;
+
+class OpenSSLRNGProviderTest extends TestCase
+{
+    use NeedsRngLengths;
+
+    /**
+     * @return void
+     */
+    public function testStrongOpenSSLRNGProvidersReturnExpectedNumberOfBytes()
+    {
+        $rng = new OpenSSLRNGProvider(true);
+        foreach ($this->rngTestLengths as $l) {
+            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
+        }
+
+        $this->assertTrue($rng->isCryptographicallySecure());
+    }
+
+    /**
+     * @return void
+     */
+    public function testNonStrongOpenSSLRNGProvidersReturnExpectedNumberOfBytes()
+    {
+        $rng = new OpenSSLRNGProvider(false);
+        foreach ($this->rngTestLengths as $l) {
+            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
+        }
+
+        $this->assertFalse($rng->isCryptographicallySecure());
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/TestRNGProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/TestRNGProvider.php
new file mode 100644
index 0000000..7179521
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Rng/TestRNGProvider.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace Tests\Providers\Rng;
+
+use RobThree\Auth\Providers\Rng\IRNGProvider;
+
+class TestRNGProvider implements IRNGProvider
+{
+    /** @var bool */
+    private $isSecure;
+
+    /**
+     * @param bool $isSecure whether this provider is cryptographically secure
+     */
+    function __construct($isSecure = false)
+    {
+        $this->isSecure = $isSecure;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getRandomBytes($bytecount)
+    {
+        $result = '';
+
+        for ($i = 0; $i < $bytecount; $i++) {
+            $result .= chr($i);
+        }
+
+        return $result;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function isCryptographicallySecure()
+    {
+        return $this->isSecure;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/ITimeProviderTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/ITimeProviderTest.php
new file mode 100644
index 0000000..159e0c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/ITimeProviderTest.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace Tests\Providers\Time;
+
+use PHPUnit\Framework\TestCase;
+use Tests\MightNotMakeAssertions;
+use RobThree\Auth\TwoFactorAuthException;
+use RobThree\Auth\TwoFactorAuth;
+
+class ITimeProviderTest extends TestCase
+{
+    use MightNotMakeAssertions;
+
+    /**
+     * @return void
+     */
+    public function testEnsureCorrectTimeDoesNotThrowForCorrectTime()
+    {
+        $tpr1 = new TestTimeProvider(123);
+        $tpr2 = new TestTimeProvider(128);
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, null, $tpr1);
+        $tfa->ensureCorrectTime(array($tpr2));   // 128 - 123 = 5 => within default leniency
+
+        $this->noAssertionsMade();
+    }
+
+    /**
+     * @return void
+     */
+    public function testEnsureCorrectTimeThrowsOnIncorrectTime()
+    {
+        $tpr1 = new TestTimeProvider(123);
+        $tpr2 = new TestTimeProvider(124);
+
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, null, $tpr1);
+
+        $this->expectException(TwoFactorAuthException::class);
+
+        $tfa->ensureCorrectTime(array($tpr2), 0);    // We force a leniency of 0, 124-123 = 1 so this should throw
+    }
+
+    /**
+     * @return void
+     */
+    public function testEnsureDefaultTimeProviderReturnsCorrectTime()
+    {
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1');
+        $tfa->ensureCorrectTime(array(new TestTimeProvider(time())), 1);    // Use a leniency of 1, should the time change between both time() calls
+
+        $this->noAssertionsMade();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/TestTimeProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/TestTimeProvider.php
new file mode 100644
index 0000000..0fc2d12
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/Providers/Time/TestTimeProvider.php
@@ -0,0 +1,27 @@
+<?php
+
+namespace Tests\Providers\Time;
+
+use RobThree\Auth\Providers\Time\ITimeProvider;
+
+class TestTimeProvider implements ITimeProvider
+{
+    /** @var int */
+    private $time;
+
+    /**
+     * @param int $time
+     */
+    function __construct($time)
+    {
+        $this->time = $time;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getTime()
+    {
+        return $this->time;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/TwoFactorAuthTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/TwoFactorAuthTest.php
index a0f2f67..ca00df9 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/TwoFactorAuthTest.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/robthree/twofactorauth/tests/TwoFactorAuthTest.php
@@ -1,218 +1,151 @@
 <?php
-require_once 'lib/TwoFactorAuth.php';
-require_once 'lib/TwoFactorAuthException.php';
 
-require_once 'lib/Providers/Qr/IQRCodeProvider.php';
-require_once 'lib/Providers/Qr/BaseHTTPQRCodeProvider.php';
-require_once 'lib/Providers/Qr/ImageChartsQRCodeProvider.php';
-require_once 'lib/Providers/Qr/QRException.php';
+namespace Tests;
 
-require_once 'lib/Providers/Rng/IRNGProvider.php';
-require_once 'lib/Providers/Rng/RNGException.php';
-require_once 'lib/Providers/Rng/CSRNGProvider.php';
-require_once 'lib/Providers/Rng/MCryptRNGProvider.php';
-require_once 'lib/Providers/Rng/OpenSSLRNGProvider.php';
-require_once 'lib/Providers/Rng/HashRNGProvider.php';
-require_once 'lib/Providers/Rng/RNGException.php';
-
-require_once 'lib/Providers/Time/ITimeProvider.php';
-require_once 'lib/Providers/Time/LocalMachineTimeProvider.php';
-require_once 'lib/Providers/Time/HttpTimeProvider.php';
-require_once 'lib/Providers/Time/NTPTimeProvider.php';
-require_once 'lib/Providers/Time/TimeException.php';
-
+use PHPUnit\Framework\TestCase;
+use RobThree\Auth\TwoFactorAuthException;
 use RobThree\Auth\TwoFactorAuth;
-use RobThree\Auth\Providers\Qr\IQRCodeProvider;
-use RobThree\Auth\Providers\Rng\IRNGProvider;
-use RobThree\Auth\Providers\Time\ITimeProvider;
 
-
-class TwoFactorAuthTest extends PHPUnit_Framework_TestCase
+class TwoFactorAuthTest extends TestCase
 {
+    use MightNotMakeAssertions;
+
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testConstructorThrowsOnInvalidDigits() {
+    public function testConstructorThrowsOnInvalidDigits()
+    {
+        $this->expectException(TwoFactorAuthException::class);
 
         new TwoFactorAuth('Test', 0);
     }
 
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testConstructorThrowsOnInvalidPeriod() {
+    public function testConstructorThrowsOnInvalidPeriod()
+    {
+        $this->expectException(TwoFactorAuthException::class);
 
         new TwoFactorAuth('Test', 6, 0);
     }
 
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testConstructorThrowsOnInvalidAlgorithm() {
+    public function testConstructorThrowsOnInvalidAlgorithm()
+    {
+        $this->expectException(TwoFactorAuthException::class);
 
         new TwoFactorAuth('Test', 6, 30, 'xxx');
     }
 
-    public function testGetCodeReturnsCorrectResults() {
-
+    /**
+     * @return void
+     */
+    public function testGetCodeReturnsCorrectResults()
+    {
         $tfa = new TwoFactorAuth('Test');
         $this->assertEquals('543160', $tfa->getCode('VMR466AB62ZBOKHE', 1426847216));
         $this->assertEquals('538532', $tfa->getCode('VMR466AB62ZBOKHE', 0));
     }
 
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testCreateSecretThrowsOnInsecureRNGProvider() {
-        $rng = new TestRNGProvider();
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
-        $tfa->createSecret();
-    }
-
-    public function testCreateSecretOverrideSecureDoesNotThrowOnInsecureRNG() {
-        $rng = new TestRNGProvider();
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
-        $this->assertEquals('ABCDEFGHIJKLMNOP', $tfa->createSecret(80, false));
-    }
-
-    public function testCreateSecretDoesNotThrowOnSecureRNGProvider() {
-        $rng = new TestRNGProvider(true);
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
-        $this->assertEquals('ABCDEFGHIJKLMNOP', $tfa->createSecret());
-    }
-
-    public function testCreateSecretGeneratesDesiredAmountOfEntropy() {
-        $rng = new TestRNGProvider(true);
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, $rng);
-        $this->assertEquals('A', $tfa->createSecret(5));
-        $this->assertEquals('AB', $tfa->createSecret(6));
-        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ', $tfa->createSecret(128));
-        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', $tfa->createSecret(160));
-        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', $tfa->createSecret(320));
-        $this->assertEquals('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567ABCDEFGHIJKLMNOPQRSTUVWXYZ234567A', $tfa->createSecret(321));
-    }
-
-    public function testEnsureCorrectTimeDoesNotThrowForCorrectTime() {
-        $tpr1 = new TestTimeProvider(123);
-        $tpr2 = new TestTimeProvider(128);
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, null, $tpr1);
-        $tfa->ensureCorrectTime(array($tpr2));   // 128 - 123 = 5 => within default leniency
+    public function testEnsureAllTimeProvidersReturnCorrectTime()
+    {
+        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1');
+        $tfa->ensureCorrectTime(array(
+            new \RobThree\Auth\Providers\Time\NTPTimeProvider(),                         // Uses pool.ntp.org by default
+            //new \RobThree\Auth\Providers\Time\NTPTimeProvider('time.google.com'),      // Somehow time.google.com and time.windows.com make travis timeout??
+            new \RobThree\Auth\Providers\Time\HttpTimeProvider(),                        // Uses google.com by default
+            new \RobThree\Auth\Providers\Time\HttpTimeProvider('https://github.com'),
+            new \RobThree\Auth\Providers\Time\HttpTimeProvider('https://yahoo.com'),
+        ));
+        $this->noAssertionsMade();
     }
 
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testEnsureCorrectTimeThrowsOnIncorrectTime() {
-        $tpr1 = new TestTimeProvider(123);
-        $tpr2 = new TestTimeProvider(124);
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', null, null, $tpr1);
-        $tfa->ensureCorrectTime(array($tpr2), 0);    // We force a leniency of 0, 124-123 = 1 so this should throw
-    }
-
-
-    public function testEnsureDefaultTimeProviderReturnsCorrectTime() {
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1');
-        $tfa->ensureCorrectTime(array(new TestTimeProvider(time())), 1);    // Use a leniency of 1, should the time change between both time() calls
-    }
-
-    public function testEnsureAllTimeProvidersReturnCorrectTime() {
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1');
-        $tfa->ensureCorrectTime(array(
-            new RobThree\Auth\Providers\Time\NTPTimeProvider(),                         // Uses pool.ntp.org by default
-            //new RobThree\Auth\Providers\Time\NTPTimeProvider('time.google.com'),      // Somehow time.google.com and time.windows.com make travis timeout??
-            new RobThree\Auth\Providers\Time\HttpTimeProvider(),                        // Uses google.com by default
-            new RobThree\Auth\Providers\Time\HttpTimeProvider('https://github.com'),
-            new RobThree\Auth\Providers\Time\HttpTimeProvider('https://yahoo.com'),
-        ));
-    }
-
-    public function testVerifyCodeWorksCorrectly() {
-
+    public function testVerifyCodeWorksCorrectly()
+    {
         $tfa = new TwoFactorAuth('Test', 6, 30);
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847190));
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 + 29));	//Test discrepancy
-        $this->assertEquals(false, $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 + 30));	//Test discrepancy
-        $this->assertEquals(false, $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 - 1));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847190));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 + 29));	//Test discrepancy
+        $this->assertFalse($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 + 30));	//Test discrepancy
+        $this->assertFalse($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 0, 1426847190 - 1));	//Test discrepancy
 
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 0));	//Test discrepancy
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 35));	//Test discrepancy
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 - 35));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 0));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 35));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 - 35));	//Test discrepancy
 
-        $this->assertEquals(false, $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 65));	//Test discrepancy
-        $this->assertEquals(false, $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 - 65));	//Test discrepancy
+        $this->assertFalse($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 + 65));	//Test discrepancy
+        $this->assertFalse($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 1, 1426847205 - 65));	//Test discrepancy
 
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 2, 1426847205 + 65));	//Test discrepancy
-        $this->assertEquals(true , $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 2, 1426847205 - 65));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 2, 1426847205 + 65));	//Test discrepancy
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 2, 1426847205 - 65));	//Test discrepancy
     }
 
-    public function testVerifyCorrectTimeSliceIsReturned() {
+    /**
+     * @return void
+     */
+    public function testVerifyCorrectTimeSliceIsReturned()
+    {
         $tfa = new TwoFactorAuth('Test', 6, 30);
 
         // We test with discrepancy 3 (so total of 7 codes: c-3, c-2, c-1, c, c+1, c+2, c+3
         // Ensure each corresponding timeslice is returned correctly
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '534113', 3, 1426847190, $timeslice1));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '534113', 3, 1426847190, $timeslice1));
         $this->assertEquals(47561570, $timeslice1);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '819652', 3, 1426847190, $timeslice2));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '819652', 3, 1426847190, $timeslice2));
         $this->assertEquals(47561571, $timeslice2);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '915954', 3, 1426847190, $timeslice3));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '915954', 3, 1426847190, $timeslice3));
         $this->assertEquals(47561572, $timeslice3);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 3, 1426847190, $timeslice4));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '543160', 3, 1426847190, $timeslice4));
         $this->assertEquals(47561573, $timeslice4);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '348401', 3, 1426847190, $timeslice5));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '348401', 3, 1426847190, $timeslice5));
         $this->assertEquals(47561574, $timeslice5);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '648525', 3, 1426847190, $timeslice6));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '648525', 3, 1426847190, $timeslice6));
         $this->assertEquals(47561575, $timeslice6);
-        $this->assertEquals(true, $tfa->verifyCode('VMR466AB62ZBOKHE', '170645', 3, 1426847190, $timeslice7));
+        $this->assertTrue($tfa->verifyCode('VMR466AB62ZBOKHE', '170645', 3, 1426847190, $timeslice7));
         $this->assertEquals(47561576, $timeslice7);
 
         // Incorrect code should return false and a 0 timeslice
-        $this->assertEquals(false, $tfa->verifyCode('VMR466AB62ZBOKHE', '111111', 3, 1426847190, $timeslice8));
+        $this->assertFalse($tfa->verifyCode('VMR466AB62ZBOKHE', '111111', 3, 1426847190, $timeslice8));
         $this->assertEquals(0, $timeslice8);
     }
 
-    public function testTotpUriIsCorrect() {
-        $qr = new TestQrProvider();
-
-        $tfa = new TwoFactorAuth('Test&Issuer', 6, 30, 'sha1', $qr);
-        $data = $this->DecodeDataUri($tfa->getQRCodeImageAsDataUri('Test&Label', 'VMR466AB62ZBOKHE'));
-        $this->assertEquals('test/test', $data['mimetype']);
-        $this->assertEquals('base64', $data['encoding']);
-        $this->assertEquals('otpauth://totp/Test%26Label?secret=VMR466AB62ZBOKHE&issuer=Test%26Issuer&period=30&algorithm=SHA1&digits=6@200', $data['data']);
-    }
-
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testGetQRCodeImageAsDataUriThrowsOnInvalidSize() {
-        $qr = new TestQrProvider();
-
-        $tfa = new TwoFactorAuth('Test', 6, 30, 'sha1', $qr);
-        $tfa->getQRCodeImageAsDataUri('Test', 'VMR466AB62ZBOKHE', 0);
-    }
-
-    /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
-     */
-    public function testGetCodeThrowsOnInvalidBase32String1() {
+    public function testGetCodeThrowsOnInvalidBase32String1()
+    {
         $tfa = new TwoFactorAuth('Test');
+
+        $this->expectException(TwoFactorAuthException::class);
+
         $tfa->getCode('FOO1BAR8BAZ9');    //1, 8 & 9 are invalid chars
     }
 
     /**
-     * @expectedException \RobThree\Auth\TwoFactorAuthException
+     * @return void
      */
-    public function testGetCodeThrowsOnInvalidBase32String2() {
+    public function testGetCodeThrowsOnInvalidBase32String2()
+    {
         $tfa = new TwoFactorAuth('Test');
+
+        $this->expectException(TwoFactorAuthException::class);
+
         $tfa->getCode('mzxw6===');        //Lowercase
     }
 
-    public function testKnownBase32DecodeTestVectors() {
+    /**
+     * @return void
+     */
+    public function testKnownBase32DecodeTestVectors()
+    {
         // We usually don't test internals (e.g. privates) but since we rely heavily on base32 decoding and don't want
         // to expose this method nor do we want to give people the possibility of implementing / providing their own base32
         // decoding/decoder (as we do with Rng/QR providers for example) we simply test the private base32Decode() method
@@ -226,7 +159,7 @@
         //                                                           Dave Thomas and Andy Hunt -- "Pragmatic Unit Testing
         $tfa = new TwoFactorAuth('Test');
 
-        $method = new ReflectionMethod('RobThree\Auth\TwoFactorAuth', 'base32Decode');
+        $method = new \ReflectionMethod(TwoFactorAuth::class, 'base32Decode');
         $method->setAccessible(true);
 
         // Test vectors from: https://tools.ietf.org/html/rfc4648#page-12
@@ -239,14 +172,18 @@
         $this->assertEquals('foobar', $method->invoke($tfa, 'MZXW6YTBOI======'));
     }
 
-    public function testKnownBase32DecodeUnpaddedTestVectors() {
+    /**
+     * @return void
+     */
+    public function testKnownBase32DecodeUnpaddedTestVectors()
+    {
         // See testKnownBase32DecodeTestVectors() for the rationale behind testing the private base32Decode() method.
         // This test ensures that strings without the padding-char ('=') are also decoded correctly.
         // https://tools.ietf.org/html/rfc4648#page-4:
         //   "In some circumstances, the use of padding ("=") in base-encoded data is not required or used."
         $tfa = new TwoFactorAuth('Test');
 
-        $method = new ReflectionMethod('RobThree\Auth\TwoFactorAuth', 'base32Decode');
+        $method = new \ReflectionMethod(TwoFactorAuth::class, 'base32Decode');
         $method->setAccessible(true);
 
         // Test vectors from: https://tools.ietf.org/html/rfc4648#page-12
@@ -259,8 +196,11 @@
         $this->assertEquals('foobar', $method->invoke($tfa, 'MZXW6YTBOI'));
     }
 
-
-    public function testKnownTestVectors_sha1() {
+    /**
+     * @return void
+     */
+    public function testKnownTestVectors_sha1()
+    {
         //Known test vectors for SHA1: https://tools.ietf.org/html/rfc6238#page-15
         $secret = 'GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ';   //== base32encode('12345678901234567890')
         $tfa = new TwoFactorAuth('Test', 8, 30, 'sha1');
@@ -272,7 +212,11 @@
         $this->assertEquals('65353130', $tfa->getCode($secret, 20000000000));
     }
 
-    public function testKnownTestVectors_sha256() {
+    /**
+     * @return void
+     */
+    public function testKnownTestVectors_sha256()
+    {
         //Known test vectors for SHA256: https://tools.ietf.org/html/rfc6238#page-15
         $secret = 'GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZA';   //== base32encode('12345678901234567890123456789012')
         $tfa = new TwoFactorAuth('Test', 8, 30, 'sha256');
@@ -284,7 +228,11 @@
         $this->assertEquals('77737706', $tfa->getCode($secret, 20000000000));
     }
 
-    public function testKnownTestVectors_sha512() {
+    /**
+     * @return void
+     */
+    public function testKnownTestVectors_sha512()
+    {
         //Known test vectors for SHA512: https://tools.ietf.org/html/rfc6238#page-15
         $secret = 'GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQGEZDGNA';   //== base32encode('1234567890123456789012345678901234567890123456789012345678901234')
         $tfa = new TwoFactorAuth('Test', 8, 30, 'sha512');
@@ -295,115 +243,4 @@
         $this->assertEquals('38618901', $tfa->getCode($secret, 2000000000));
         $this->assertEquals('47863826', $tfa->getCode($secret, 20000000000));
     }
-
-    /**
-     * @requires function random_bytes
-     */
-    public function testCSRNGProvidersReturnExpectedNumberOfBytes() {
-        $rng = new \RobThree\Auth\Providers\Rng\CSRNGProvider();
-        foreach ($this->getRngTestLengths() as $l)
-            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
-        $this->assertEquals(true, $rng->isCryptographicallySecure());
-    }
-
-    /**
-     * @requires function hash_algos
-     * @requires function hash
-     */
-    public function testHashRNGProvidersReturnExpectedNumberOfBytes() {
-        $rng = new \RobThree\Auth\Providers\Rng\HashRNGProvider();
-        foreach ($this->getRngTestLengths() as $l)
-            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
-        $this->assertEquals(false, $rng->isCryptographicallySecure());
-    }
-
-    /**
-     * @requires function mcrypt_create_iv
-     */
-    public function testMCryptRNGProvidersReturnExpectedNumberOfBytes() {
-        if (function_exists('mcrypt_create_iv')) {
-            $rng = new \RobThree\Auth\Providers\Rng\MCryptRNGProvider();
-            foreach ($this->getRngTestLengths() as $l)
-                $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
-            $this->assertEquals(true, $rng->isCryptographicallySecure());
-        }
-    }
-
-    /**
-     * @requires function openssl_random_pseudo_bytes
-     */
-    public function testStrongOpenSSLRNGProvidersReturnExpectedNumberOfBytes() {
-        $rng = new \RobThree\Auth\Providers\Rng\OpenSSLRNGProvider(true);
-        foreach ($this->getRngTestLengths() as $l)
-            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
-        $this->assertEquals(true, $rng->isCryptographicallySecure());
-    }
-
-    /**
-     * @requires function openssl_random_pseudo_bytes
-     */
-    public function testNonStrongOpenSSLRNGProvidersReturnExpectedNumberOfBytes() {
-        $rng = new \RobThree\Auth\Providers\Rng\OpenSSLRNGProvider(false);
-        foreach ($this->getRngTestLengths() as $l)
-            $this->assertEquals($l, strlen($rng->getRandomBytes($l)));
-        $this->assertEquals(false, $rng->isCryptographicallySecure());
-    }
-
-
-    private function getRngTestLengths() {
-        return array(1, 16, 32, 256);
-    }
-
-    private function DecodeDataUri($datauri) {
-        if (preg_match('/data:(?P<mimetype>[\w\.\-\/]+);(?P<encoding>\w+),(?P<data>.*)/', $datauri, $m) === 1) {
-            return array(
-                'mimetype' => $m['mimetype'],
-                'encoding' => $m['encoding'],
-                'data' => base64_decode($m['data'])
-            );
-        }
-        return null;
-    }
 }
-
-class TestRNGProvider implements IRNGProvider {
-    private $isSecure;
-
-    function __construct($isSecure = false) {
-        $this->isSecure = $isSecure;
-    }
-
-    public function getRandomBytes($bytecount) {
-        $result = '';
-        for ($i=0; $i<$bytecount; $i++)
-            $result.=chr($i);
-        return $result;
-
-    }
-
-    public function isCryptographicallySecure() {
-        return $this->isSecure;
-    }
-}
-
-class TestQrProvider implements IQRCodeProvider {
-    public function getQRCodeImage($qrtext, $size) {
-        return $qrtext . '@' . $size;
-    }
-
-    public function getMimeType() {
-        return 'test/test';
-    }
-}
-
-class TestTimeProvider implements ITimeProvider {
-    private $time;
-
-    function __construct($time) {
-        $this->time = $time;
-    }
-
-    public function getTime() {
-        return $this->time;
-    }
-}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/.gitignore
new file mode 100644
index 0000000..c49a5d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/CHANGELOG.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/CHANGELOG.md
new file mode 100644
index 0000000..7932e26
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/CHANGELOG.md
@@ -0,0 +1,5 @@
+CHANGELOG
+=========
+
+The changelog is maintained for all Symfony contracts at the following URL:
+https://github.com/symfony/contracts/blob/main/CHANGELOG.md
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/LICENSE
new file mode 100644
index 0000000..ad85e17
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2020-2021 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/README.md
new file mode 100644
index 0000000..4957933
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/README.md
@@ -0,0 +1,26 @@
+Symfony Deprecation Contracts
+=============================
+
+A generic function and convention to trigger deprecation notices.
+
+This package provides a single global function named `trigger_deprecation()` that triggers silenced deprecation notices.
+
+By using a custom PHP error handler such as the one provided by the Symfony ErrorHandler component,
+the triggered deprecations can be caught and logged for later discovery, both on dev and prod environments.
+
+The function requires at least 3 arguments:
+ - the name of the Composer package that is triggering the deprecation
+ - the version of the package that introduced the deprecation
+ - the message of the deprecation
+ - more arguments can be provided: they will be inserted in the message using `printf()` formatting
+
+Example:
+```php
+trigger_deprecation('symfony/blockchain', '8.9', 'Using "%s" is deprecated, use "%s" instead.', 'bitcoin', 'fabcoin');
+```
+
+This will generate the following message:
+`Since symfony/blockchain 8.9: Using "bitcoin" is deprecated, use "fabcoin" instead.`
+
+While not necessarily recommended, the deprecation notices can be completely ignored by declaring an empty
+`function trigger_deprecation() {}` in your application.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/composer.json
new file mode 100644
index 0000000..3884889
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/composer.json
@@ -0,0 +1,35 @@
+{
+    "name": "symfony/deprecation-contracts",
+    "type": "library",
+    "description": "A generic function and convention to trigger deprecation notices",
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Nicolas Grekas",
+            "email": "p@tchwork.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.1"
+    },
+    "autoload": {
+        "files": [
+            "function.php"
+        ]
+    },
+    "minimum-stability": "dev",
+    "extra": {
+        "branch-alias": {
+            "dev-main": "2.4-dev"
+        },
+        "thanks": {
+            "name": "symfony/contracts",
+            "url": "https://github.com/symfony/contracts"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/function.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/function.php
new file mode 100644
index 0000000..d437150
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/deprecation-contracts/function.php
@@ -0,0 +1,27 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+if (!function_exists('trigger_deprecation')) {
+    /**
+     * Triggers a silenced deprecation notice.
+     *
+     * @param string $package The name of the Composer package that is triggering the deprecation
+     * @param string $version The version of the package that introduced the deprecation
+     * @param string $message The message of the deprecation
+     * @param mixed  ...$args Values to insert in the message using printf() formatting
+     *
+     * @author Nicolas Grekas <p@tchwork.com>
+     */
+    function trigger_deprecation(string $package, string $version, string $message, ...$args): void
+    {
+        @trigger_error(($package || $version ? "Since $package $version: " : '').($args ? vsprintf($message, $args) : $message), \E_USER_DEPRECATED);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/LICENSE
new file mode 100644
index 0000000..4cd8bdd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2015-2019 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Mbstring.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Mbstring.php
new file mode 100644
index 0000000..b599095
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Mbstring.php
@@ -0,0 +1,870 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Polyfill\Mbstring;
+
+/**
+ * Partial mbstring implementation in PHP, iconv based, UTF-8 centric.
+ *
+ * Implemented:
+ * - mb_chr                  - Returns a specific character from its Unicode code point
+ * - mb_convert_encoding     - Convert character encoding
+ * - mb_convert_variables    - Convert character code in variable(s)
+ * - mb_decode_mimeheader    - Decode string in MIME header field
+ * - mb_encode_mimeheader    - Encode string for MIME header XXX NATIVE IMPLEMENTATION IS REALLY BUGGED
+ * - mb_decode_numericentity - Decode HTML numeric string reference to character
+ * - mb_encode_numericentity - Encode character to HTML numeric string reference
+ * - mb_convert_case         - Perform case folding on a string
+ * - mb_detect_encoding      - Detect character encoding
+ * - mb_get_info             - Get internal settings of mbstring
+ * - mb_http_input           - Detect HTTP input character encoding
+ * - mb_http_output          - Set/Get HTTP output character encoding
+ * - mb_internal_encoding    - Set/Get internal character encoding
+ * - mb_list_encodings       - Returns an array of all supported encodings
+ * - mb_ord                  - Returns the Unicode code point of a character
+ * - mb_output_handler       - Callback function converts character encoding in output buffer
+ * - mb_scrub                - Replaces ill-formed byte sequences with substitute characters
+ * - mb_strlen               - Get string length
+ * - mb_strpos               - Find position of first occurrence of string in a string
+ * - mb_strrpos              - Find position of last occurrence of a string in a string
+ * - mb_str_split            - Convert a string to an array
+ * - mb_strtolower           - Make a string lowercase
+ * - mb_strtoupper           - Make a string uppercase
+ * - mb_substitute_character - Set/Get substitution character
+ * - mb_substr               - Get part of string
+ * - mb_stripos              - Finds position of first occurrence of a string within another, case insensitive
+ * - mb_stristr              - Finds first occurrence of a string within another, case insensitive
+ * - mb_strrchr              - Finds the last occurrence of a character in a string within another
+ * - mb_strrichr             - Finds the last occurrence of a character in a string within another, case insensitive
+ * - mb_strripos             - Finds position of last occurrence of a string within another, case insensitive
+ * - mb_strstr               - Finds first occurrence of a string within another
+ * - mb_strwidth             - Return width of string
+ * - mb_substr_count         - Count the number of substring occurrences
+ *
+ * Not implemented:
+ * - mb_convert_kana         - Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
+ * - mb_ereg_*               - Regular expression with multibyte support
+ * - mb_parse_str            - Parse GET/POST/COOKIE data and set global variable
+ * - mb_preferred_mime_name  - Get MIME charset string
+ * - mb_regex_encoding       - Returns current encoding for multibyte regex as string
+ * - mb_regex_set_options    - Set/Get the default options for mbregex functions
+ * - mb_send_mail            - Send encoded mail
+ * - mb_split                - Split multibyte string using regular expression
+ * - mb_strcut               - Get part of string
+ * - mb_strimwidth           - Get truncated string with specified width
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @internal
+ */
+final class Mbstring
+{
+    public const MB_CASE_FOLD = \PHP_INT_MAX;
+
+    private const CASE_FOLD = [
+        ['µ', 'ſ', "\xCD\x85", 'ς', "\xCF\x90", "\xCF\x91", "\xCF\x95", "\xCF\x96", "\xCF\xB0", "\xCF\xB1", "\xCF\xB5", "\xE1\xBA\x9B", "\xE1\xBE\xBE"],
+        ['μ', 's', 'ι',        'σ', 'β',        'θ',        'φ',        'π',        'κ',        'ρ',        'ε',        "\xE1\xB9\xA1", 'ι'],
+    ];
+
+    private static $encodingList = ['ASCII', 'UTF-8'];
+    private static $language = 'neutral';
+    private static $internalEncoding = 'UTF-8';
+
+    public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null)
+    {
+        if (\is_array($fromEncoding) || false !== strpos($fromEncoding, ',')) {
+            $fromEncoding = self::mb_detect_encoding($s, $fromEncoding);
+        } else {
+            $fromEncoding = self::getEncoding($fromEncoding);
+        }
+
+        $toEncoding = self::getEncoding($toEncoding);
+
+        if ('BASE64' === $fromEncoding) {
+            $s = base64_decode($s);
+            $fromEncoding = $toEncoding;
+        }
+
+        if ('BASE64' === $toEncoding) {
+            return base64_encode($s);
+        }
+
+        if ('HTML-ENTITIES' === $toEncoding || 'HTML' === $toEncoding) {
+            if ('HTML-ENTITIES' === $fromEncoding || 'HTML' === $fromEncoding) {
+                $fromEncoding = 'Windows-1252';
+            }
+            if ('UTF-8' !== $fromEncoding) {
+                $s = \iconv($fromEncoding, 'UTF-8//IGNORE', $s);
+            }
+
+            return preg_replace_callback('/[\x80-\xFF]+/', [__CLASS__, 'html_encoding_callback'], $s);
+        }
+
+        if ('HTML-ENTITIES' === $fromEncoding) {
+            $s = html_entity_decode($s, \ENT_COMPAT, 'UTF-8');
+            $fromEncoding = 'UTF-8';
+        }
+
+        return \iconv($fromEncoding, $toEncoding.'//IGNORE', $s);
+    }
+
+    public static function mb_convert_variables($toEncoding, $fromEncoding, &...$vars)
+    {
+        $ok = true;
+        array_walk_recursive($vars, function (&$v) use (&$ok, $toEncoding, $fromEncoding) {
+            if (false === $v = self::mb_convert_encoding($v, $toEncoding, $fromEncoding)) {
+                $ok = false;
+            }
+        });
+
+        return $ok ? $fromEncoding : false;
+    }
+
+    public static function mb_decode_mimeheader($s)
+    {
+        return \iconv_mime_decode($s, 2, self::$internalEncoding);
+    }
+
+    public static function mb_encode_mimeheader($s, $charset = null, $transferEncoding = null, $linefeed = null, $indent = null)
+    {
+        trigger_error('mb_encode_mimeheader() is bugged. Please use iconv_mime_encode() instead', \E_USER_WARNING);
+    }
+
+    public static function mb_decode_numericentity($s, $convmap, $encoding = null)
+    {
+        if (null !== $s && !is_scalar($s) && !(\is_object($s) && method_exists($s, '__toString'))) {
+            trigger_error('mb_decode_numericentity() expects parameter 1 to be string, '.\gettype($s).' given', \E_USER_WARNING);
+
+            return null;
+        }
+
+        if (!\is_array($convmap) || (80000 > \PHP_VERSION_ID && !$convmap)) {
+            return false;
+        }
+
+        if (null !== $encoding && !is_scalar($encoding)) {
+            trigger_error('mb_decode_numericentity() expects parameter 3 to be string, '.\gettype($s).' given', \E_USER_WARNING);
+
+            return '';  // Instead of null (cf. mb_encode_numericentity).
+        }
+
+        $s = (string) $s;
+        if ('' === $s) {
+            return '';
+        }
+
+        $encoding = self::getEncoding($encoding);
+
+        if ('UTF-8' === $encoding) {
+            $encoding = null;
+            if (!preg_match('//u', $s)) {
+                $s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
+            }
+        } else {
+            $s = \iconv($encoding, 'UTF-8//IGNORE', $s);
+        }
+
+        $cnt = floor(\count($convmap) / 4) * 4;
+
+        for ($i = 0; $i < $cnt; $i += 4) {
+            // collector_decode_htmlnumericentity ignores $convmap[$i + 3]
+            $convmap[$i] += $convmap[$i + 2];
+            $convmap[$i + 1] += $convmap[$i + 2];
+        }
+
+        $s = preg_replace_callback('/&#(?:0*([0-9]+)|x0*([0-9a-fA-F]+))(?!&);?/', function (array $m) use ($cnt, $convmap) {
+            $c = isset($m[2]) ? (int) hexdec($m[2]) : $m[1];
+            for ($i = 0; $i < $cnt; $i += 4) {
+                if ($c >= $convmap[$i] && $c <= $convmap[$i + 1]) {
+                    return self::mb_chr($c - $convmap[$i + 2]);
+                }
+            }
+
+            return $m[0];
+        }, $s);
+
+        if (null === $encoding) {
+            return $s;
+        }
+
+        return \iconv('UTF-8', $encoding.'//IGNORE', $s);
+    }
+
+    public static function mb_encode_numericentity($s, $convmap, $encoding = null, $is_hex = false)
+    {
+        if (null !== $s && !is_scalar($s) && !(\is_object($s) && method_exists($s, '__toString'))) {
+            trigger_error('mb_encode_numericentity() expects parameter 1 to be string, '.\gettype($s).' given', \E_USER_WARNING);
+
+            return null;
+        }
+
+        if (!\is_array($convmap) || (80000 > \PHP_VERSION_ID && !$convmap)) {
+            return false;
+        }
+
+        if (null !== $encoding && !is_scalar($encoding)) {
+            trigger_error('mb_encode_numericentity() expects parameter 3 to be string, '.\gettype($s).' given', \E_USER_WARNING);
+
+            return null;  // Instead of '' (cf. mb_decode_numericentity).
+        }
+
+        if (null !== $is_hex && !is_scalar($is_hex)) {
+            trigger_error('mb_encode_numericentity() expects parameter 4 to be boolean, '.\gettype($s).' given', \E_USER_WARNING);
+
+            return null;
+        }
+
+        $s = (string) $s;
+        if ('' === $s) {
+            return '';
+        }
+
+        $encoding = self::getEncoding($encoding);
+
+        if ('UTF-8' === $encoding) {
+            $encoding = null;
+            if (!preg_match('//u', $s)) {
+                $s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
+            }
+        } else {
+            $s = \iconv($encoding, 'UTF-8//IGNORE', $s);
+        }
+
+        static $ulenMask = ["\xC0" => 2, "\xD0" => 2, "\xE0" => 3, "\xF0" => 4];
+
+        $cnt = floor(\count($convmap) / 4) * 4;
+        $i = 0;
+        $len = \strlen($s);
+        $result = '';
+
+        while ($i < $len) {
+            $ulen = $s[$i] < "\x80" ? 1 : $ulenMask[$s[$i] & "\xF0"];
+            $uchr = substr($s, $i, $ulen);
+            $i += $ulen;
+            $c = self::mb_ord($uchr);
+
+            for ($j = 0; $j < $cnt; $j += 4) {
+                if ($c >= $convmap[$j] && $c <= $convmap[$j + 1]) {
+                    $cOffset = ($c + $convmap[$j + 2]) & $convmap[$j + 3];
+                    $result .= $is_hex ? sprintf('&#x%X;', $cOffset) : '&#'.$cOffset.';';
+                    continue 2;
+                }
+            }
+            $result .= $uchr;
+        }
+
+        if (null === $encoding) {
+            return $result;
+        }
+
+        return \iconv('UTF-8', $encoding.'//IGNORE', $result);
+    }
+
+    public static function mb_convert_case($s, $mode, $encoding = null)
+    {
+        $s = (string) $s;
+        if ('' === $s) {
+            return '';
+        }
+
+        $encoding = self::getEncoding($encoding);
+
+        if ('UTF-8' === $encoding) {
+            $encoding = null;
+            if (!preg_match('//u', $s)) {
+                $s = @\iconv('UTF-8', 'UTF-8//IGNORE', $s);
+            }
+        } else {
+            $s = \iconv($encoding, 'UTF-8//IGNORE', $s);
+        }
+
+        if (\MB_CASE_TITLE == $mode) {
+            static $titleRegexp = null;
+            if (null === $titleRegexp) {
+                $titleRegexp = self::getData('titleCaseRegexp');
+            }
+            $s = preg_replace_callback($titleRegexp, [__CLASS__, 'title_case'], $s);
+        } else {
+            if (\MB_CASE_UPPER == $mode) {
+                static $upper = null;
+                if (null === $upper) {
+                    $upper = self::getData('upperCase');
+                }
+                $map = $upper;
+            } else {
+                if (self::MB_CASE_FOLD === $mode) {
+                    $s = str_replace(self::CASE_FOLD[0], self::CASE_FOLD[1], $s);
+                }
+
+                static $lower = null;
+                if (null === $lower) {
+                    $lower = self::getData('lowerCase');
+                }
+                $map = $lower;
+            }
+
+            static $ulenMask = ["\xC0" => 2, "\xD0" => 2, "\xE0" => 3, "\xF0" => 4];
+
+            $i = 0;
+            $len = \strlen($s);
+
+            while ($i < $len) {
+                $ulen = $s[$i] < "\x80" ? 1 : $ulenMask[$s[$i] & "\xF0"];
+                $uchr = substr($s, $i, $ulen);
+                $i += $ulen;
+
+                if (isset($map[$uchr])) {
+                    $uchr = $map[$uchr];
+                    $nlen = \strlen($uchr);
+
+                    if ($nlen == $ulen) {
+                        $nlen = $i;
+                        do {
+                            $s[--$nlen] = $uchr[--$ulen];
+                        } while ($ulen);
+                    } else {
+                        $s = substr_replace($s, $uchr, $i - $ulen, $ulen);
+                        $len += $nlen - $ulen;
+                        $i += $nlen - $ulen;
+                    }
+                }
+            }
+        }
+
+        if (null === $encoding) {
+            return $s;
+        }
+
+        return \iconv('UTF-8', $encoding.'//IGNORE', $s);
+    }
+
+    public static function mb_internal_encoding($encoding = null)
+    {
+        if (null === $encoding) {
+            return self::$internalEncoding;
+        }
+
+        $normalizedEncoding = self::getEncoding($encoding);
+
+        if ('UTF-8' === $normalizedEncoding || false !== @\iconv($normalizedEncoding, $normalizedEncoding, ' ')) {
+            self::$internalEncoding = $normalizedEncoding;
+
+            return true;
+        }
+
+        if (80000 > \PHP_VERSION_ID) {
+            return false;
+        }
+
+        throw new \ValueError(sprintf('Argument #1 ($encoding) must be a valid encoding, "%s" given', $encoding));
+    }
+
+    public static function mb_language($lang = null)
+    {
+        if (null === $lang) {
+            return self::$language;
+        }
+
+        switch ($normalizedLang = strtolower($lang)) {
+            case 'uni':
+            case 'neutral':
+                self::$language = $normalizedLang;
+
+                return true;
+        }
+
+        if (80000 > \PHP_VERSION_ID) {
+            return false;
+        }
+
+        throw new \ValueError(sprintf('Argument #1 ($language) must be a valid language, "%s" given', $lang));
+    }
+
+    public static function mb_list_encodings()
+    {
+        return ['UTF-8'];
+    }
+
+    public static function mb_encoding_aliases($encoding)
+    {
+        switch (strtoupper($encoding)) {
+            case 'UTF8':
+            case 'UTF-8':
+                return ['utf8'];
+        }
+
+        return false;
+    }
+
+    public static function mb_check_encoding($var = null, $encoding = null)
+    {
+        if (null === $encoding) {
+            if (null === $var) {
+                return false;
+            }
+            $encoding = self::$internalEncoding;
+        }
+
+        return self::mb_detect_encoding($var, [$encoding]) || false !== @\iconv($encoding, $encoding, $var);
+    }
+
+    public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
+    {
+        if (null === $encodingList) {
+            $encodingList = self::$encodingList;
+        } else {
+            if (!\is_array($encodingList)) {
+                $encodingList = array_map('trim', explode(',', $encodingList));
+            }
+            $encodingList = array_map('strtoupper', $encodingList);
+        }
+
+        foreach ($encodingList as $enc) {
+            switch ($enc) {
+                case 'ASCII':
+                    if (!preg_match('/[\x80-\xFF]/', $str)) {
+                        return $enc;
+                    }
+                    break;
+
+                case 'UTF8':
+                case 'UTF-8':
+                    if (preg_match('//u', $str)) {
+                        return 'UTF-8';
+                    }
+                    break;
+
+                default:
+                    if (0 === strncmp($enc, 'ISO-8859-', 9)) {
+                        return $enc;
+                    }
+            }
+        }
+
+        return false;
+    }
+
+    public static function mb_detect_order($encodingList = null)
+    {
+        if (null === $encodingList) {
+            return self::$encodingList;
+        }
+
+        if (!\is_array($encodingList)) {
+            $encodingList = array_map('trim', explode(',', $encodingList));
+        }
+        $encodingList = array_map('strtoupper', $encodingList);
+
+        foreach ($encodingList as $enc) {
+            switch ($enc) {
+                default:
+                    if (strncmp($enc, 'ISO-8859-', 9)) {
+                        return false;
+                    }
+                    // no break
+                case 'ASCII':
+                case 'UTF8':
+                case 'UTF-8':
+            }
+        }
+
+        self::$encodingList = $encodingList;
+
+        return true;
+    }
+
+    public static function mb_strlen($s, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+        if ('CP850' === $encoding || 'ASCII' === $encoding) {
+            return \strlen($s);
+        }
+
+        return @\iconv_strlen($s, $encoding);
+    }
+
+    public static function mb_strpos($haystack, $needle, $offset = 0, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+        if ('CP850' === $encoding || 'ASCII' === $encoding) {
+            return strpos($haystack, $needle, $offset);
+        }
+
+        $needle = (string) $needle;
+        if ('' === $needle) {
+            if (80000 > \PHP_VERSION_ID) {
+                trigger_error(__METHOD__.': Empty delimiter', \E_USER_WARNING);
+
+                return false;
+            }
+
+            return 0;
+        }
+
+        return \iconv_strpos($haystack, $needle, $offset, $encoding);
+    }
+
+    public static function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+        if ('CP850' === $encoding || 'ASCII' === $encoding) {
+            return strrpos($haystack, $needle, $offset);
+        }
+
+        if ($offset != (int) $offset) {
+            $offset = 0;
+        } elseif ($offset = (int) $offset) {
+            if ($offset < 0) {
+                if (0 > $offset += self::mb_strlen($needle)) {
+                    $haystack = self::mb_substr($haystack, 0, $offset, $encoding);
+                }
+                $offset = 0;
+            } else {
+                $haystack = self::mb_substr($haystack, $offset, 2147483647, $encoding);
+            }
+        }
+
+        $pos = '' !== $needle || 80000 > \PHP_VERSION_ID
+            ? \iconv_strrpos($haystack, $needle, $encoding)
+            : self::mb_strlen($haystack, $encoding);
+
+        return false !== $pos ? $offset + $pos : false;
+    }
+
+    public static function mb_str_split($string, $split_length = 1, $encoding = null)
+    {
+        if (null !== $string && !is_scalar($string) && !(\is_object($string) && method_exists($string, '__toString'))) {
+            trigger_error('mb_str_split() expects parameter 1 to be string, '.\gettype($string).' given', \E_USER_WARNING);
+
+            return null;
+        }
+
+        if (1 > $split_length = (int) $split_length) {
+            if (80000 > \PHP_VERSION_ID) {
+                trigger_error('The length of each segment must be greater than zero', \E_USER_WARNING);
+                return false;
+            }
+
+            throw new \ValueError('Argument #2 ($length) must be greater than 0');
+        }
+
+        if (null === $encoding) {
+            $encoding = mb_internal_encoding();
+        }
+
+        if ('UTF-8' === $encoding = self::getEncoding($encoding)) {
+            $rx = '/(';
+            while (65535 < $split_length) {
+                $rx .= '.{65535}';
+                $split_length -= 65535;
+            }
+            $rx .= '.{'.$split_length.'})/us';
+
+            return preg_split($rx, $string, null, \PREG_SPLIT_DELIM_CAPTURE | \PREG_SPLIT_NO_EMPTY);
+        }
+
+        $result = [];
+        $length = mb_strlen($string, $encoding);
+
+        for ($i = 0; $i < $length; $i += $split_length) {
+            $result[] = mb_substr($string, $i, $split_length, $encoding);
+        }
+
+        return $result;
+    }
+
+    public static function mb_strtolower($s, $encoding = null)
+    {
+        return self::mb_convert_case($s, \MB_CASE_LOWER, $encoding);
+    }
+
+    public static function mb_strtoupper($s, $encoding = null)
+    {
+        return self::mb_convert_case($s, \MB_CASE_UPPER, $encoding);
+    }
+
+    public static function mb_substitute_character($c = null)
+    {
+        if (null === $c) {
+            return 'none';
+        }
+        if (0 === strcasecmp($c, 'none')) {
+            return true;
+        }
+        if (80000 > \PHP_VERSION_ID) {
+            return false;
+        }
+
+        throw new \ValueError('Argument #1 ($substitute_character) must be "none", "long", "entity" or a valid codepoint');
+    }
+
+    public static function mb_substr($s, $start, $length = null, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+        if ('CP850' === $encoding || 'ASCII' === $encoding) {
+            return (string) substr($s, $start, null === $length ? 2147483647 : $length);
+        }
+
+        if ($start < 0) {
+            $start = \iconv_strlen($s, $encoding) + $start;
+            if ($start < 0) {
+                $start = 0;
+            }
+        }
+
+        if (null === $length) {
+            $length = 2147483647;
+        } elseif ($length < 0) {
+            $length = \iconv_strlen($s, $encoding) + $length - $start;
+            if ($length < 0) {
+                return '';
+            }
+        }
+
+        return (string) \iconv_substr($s, $start, $length, $encoding);
+    }
+
+    public static function mb_stripos($haystack, $needle, $offset = 0, $encoding = null)
+    {
+        $haystack = self::mb_convert_case($haystack, self::MB_CASE_FOLD, $encoding);
+        $needle = self::mb_convert_case($needle, self::MB_CASE_FOLD, $encoding);
+
+        return self::mb_strpos($haystack, $needle, $offset, $encoding);
+    }
+
+    public static function mb_stristr($haystack, $needle, $part = false, $encoding = null)
+    {
+        $pos = self::mb_stripos($haystack, $needle, 0, $encoding);
+
+        return self::getSubpart($pos, $part, $haystack, $encoding);
+    }
+
+    public static function mb_strrchr($haystack, $needle, $part = false, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+        if ('CP850' === $encoding || 'ASCII' === $encoding) {
+            $pos = strrpos($haystack, $needle);
+        } else {
+            $needle = self::mb_substr($needle, 0, 1, $encoding);
+            $pos = \iconv_strrpos($haystack, $needle, $encoding);
+        }
+
+        return self::getSubpart($pos, $part, $haystack, $encoding);
+    }
+
+    public static function mb_strrichr($haystack, $needle, $part = false, $encoding = null)
+    {
+        $needle = self::mb_substr($needle, 0, 1, $encoding);
+        $pos = self::mb_strripos($haystack, $needle, $encoding);
+
+        return self::getSubpart($pos, $part, $haystack, $encoding);
+    }
+
+    public static function mb_strripos($haystack, $needle, $offset = 0, $encoding = null)
+    {
+        $haystack = self::mb_convert_case($haystack, self::MB_CASE_FOLD, $encoding);
+        $needle = self::mb_convert_case($needle, self::MB_CASE_FOLD, $encoding);
+
+        return self::mb_strrpos($haystack, $needle, $offset, $encoding);
+    }
+
+    public static function mb_strstr($haystack, $needle, $part = false, $encoding = null)
+    {
+        $pos = strpos($haystack, $needle);
+        if (false === $pos) {
+            return false;
+        }
+        if ($part) {
+            return substr($haystack, 0, $pos);
+        }
+
+        return substr($haystack, $pos);
+    }
+
+    public static function mb_get_info($type = 'all')
+    {
+        $info = [
+            'internal_encoding' => self::$internalEncoding,
+            'http_output' => 'pass',
+            'http_output_conv_mimetypes' => '^(text/|application/xhtml\+xml)',
+            'func_overload' => 0,
+            'func_overload_list' => 'no overload',
+            'mail_charset' => 'UTF-8',
+            'mail_header_encoding' => 'BASE64',
+            'mail_body_encoding' => 'BASE64',
+            'illegal_chars' => 0,
+            'encoding_translation' => 'Off',
+            'language' => self::$language,
+            'detect_order' => self::$encodingList,
+            'substitute_character' => 'none',
+            'strict_detection' => 'Off',
+        ];
+
+        if ('all' === $type) {
+            return $info;
+        }
+        if (isset($info[$type])) {
+            return $info[$type];
+        }
+
+        return false;
+    }
+
+    public static function mb_http_input($type = '')
+    {
+        return false;
+    }
+
+    public static function mb_http_output($encoding = null)
+    {
+        return null !== $encoding ? 'pass' === $encoding : 'pass';
+    }
+
+    public static function mb_strwidth($s, $encoding = null)
+    {
+        $encoding = self::getEncoding($encoding);
+
+        if ('UTF-8' !== $encoding) {
+            $s = \iconv($encoding, 'UTF-8//IGNORE', $s);
+        }
+
+        $s = preg_replace('/[\x{1100}-\x{115F}\x{2329}\x{232A}\x{2E80}-\x{303E}\x{3040}-\x{A4CF}\x{AC00}-\x{D7A3}\x{F900}-\x{FAFF}\x{FE10}-\x{FE19}\x{FE30}-\x{FE6F}\x{FF00}-\x{FF60}\x{FFE0}-\x{FFE6}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}]/u', '', $s, -1, $wide);
+
+        return ($wide << 1) + \iconv_strlen($s, 'UTF-8');
+    }
+
+    public static function mb_substr_count($haystack, $needle, $encoding = null)
+    {
+        return substr_count($haystack, $needle);
+    }
+
+    public static function mb_output_handler($contents, $status)
+    {
+        return $contents;
+    }
+
+    public static function mb_chr($code, $encoding = null)
+    {
+        if (0x80 > $code %= 0x200000) {
+            $s = \chr($code);
+        } elseif (0x800 > $code) {
+            $s = \chr(0xC0 | $code >> 6).\chr(0x80 | $code & 0x3F);
+        } elseif (0x10000 > $code) {
+            $s = \chr(0xE0 | $code >> 12).\chr(0x80 | $code >> 6 & 0x3F).\chr(0x80 | $code & 0x3F);
+        } else {
+            $s = \chr(0xF0 | $code >> 18).\chr(0x80 | $code >> 12 & 0x3F).\chr(0x80 | $code >> 6 & 0x3F).\chr(0x80 | $code & 0x3F);
+        }
+
+        if ('UTF-8' !== $encoding = self::getEncoding($encoding)) {
+            $s = mb_convert_encoding($s, $encoding, 'UTF-8');
+        }
+
+        return $s;
+    }
+
+    public static function mb_ord($s, $encoding = null)
+    {
+        if ('UTF-8' !== $encoding = self::getEncoding($encoding)) {
+            $s = mb_convert_encoding($s, 'UTF-8', $encoding);
+        }
+
+        if (1 === \strlen($s)) {
+            return \ord($s);
+        }
+
+        $code = ($s = unpack('C*', substr($s, 0, 4))) ? $s[1] : 0;
+        if (0xF0 <= $code) {
+            return (($code - 0xF0) << 18) + (($s[2] - 0x80) << 12) + (($s[3] - 0x80) << 6) + $s[4] - 0x80;
+        }
+        if (0xE0 <= $code) {
+            return (($code - 0xE0) << 12) + (($s[2] - 0x80) << 6) + $s[3] - 0x80;
+        }
+        if (0xC0 <= $code) {
+            return (($code - 0xC0) << 6) + $s[2] - 0x80;
+        }
+
+        return $code;
+    }
+
+    private static function getSubpart($pos, $part, $haystack, $encoding)
+    {
+        if (false === $pos) {
+            return false;
+        }
+        if ($part) {
+            return self::mb_substr($haystack, 0, $pos, $encoding);
+        }
+
+        return self::mb_substr($haystack, $pos, null, $encoding);
+    }
+
+    private static function html_encoding_callback(array $m)
+    {
+        $i = 1;
+        $entities = '';
+        $m = unpack('C*', htmlentities($m[0], \ENT_COMPAT, 'UTF-8'));
+
+        while (isset($m[$i])) {
+            if (0x80 > $m[$i]) {
+                $entities .= \chr($m[$i++]);
+                continue;
+            }
+            if (0xF0 <= $m[$i]) {
+                $c = (($m[$i++] - 0xF0) << 18) + (($m[$i++] - 0x80) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++] - 0x80;
+            } elseif (0xE0 <= $m[$i]) {
+                $c = (($m[$i++] - 0xE0) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++] - 0x80;
+            } else {
+                $c = (($m[$i++] - 0xC0) << 6) + $m[$i++] - 0x80;
+            }
+
+            $entities .= '&#'.$c.';';
+        }
+
+        return $entities;
+    }
+
+    private static function title_case(array $s)
+    {
+        return self::mb_convert_case($s[1], \MB_CASE_UPPER, 'UTF-8').self::mb_convert_case($s[2], \MB_CASE_LOWER, 'UTF-8');
+    }
+
+    private static function getData($file)
+    {
+        if (file_exists($file = __DIR__.'/Resources/unidata/'.$file.'.php')) {
+            return require $file;
+        }
+
+        return false;
+    }
+
+    private static function getEncoding($encoding)
+    {
+        if (null === $encoding) {
+            return self::$internalEncoding;
+        }
+
+        if ('UTF-8' === $encoding) {
+            return 'UTF-8';
+        }
+
+        $encoding = strtoupper($encoding);
+
+        if ('8BIT' === $encoding || 'BINARY' === $encoding) {
+            return 'CP850';
+        }
+
+        if ('UTF8' === $encoding) {
+            return 'UTF-8';
+        }
+
+        return $encoding;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/README.md
new file mode 100644
index 0000000..4efb599
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/README.md
@@ -0,0 +1,13 @@
+Symfony Polyfill / Mbstring
+===========================
+
+This component provides a partial, native PHP implementation for the
+[Mbstring](https://php.net/mbstring) extension.
+
+More information can be found in the
+[main Polyfill README](https://github.com/symfony/polyfill/blob/master/README.md).
+
+License
+=======
+
+This library is released under the [MIT license](LICENSE).
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php
new file mode 100644
index 0000000..fac60b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php
@@ -0,0 +1,1397 @@
+<?php
+
+return array (
+  'A' => 'a',
+  'B' => 'b',
+  'C' => 'c',
+  'D' => 'd',
+  'E' => 'e',
+  'F' => 'f',
+  'G' => 'g',
+  'H' => 'h',
+  'I' => 'i',
+  'J' => 'j',
+  'K' => 'k',
+  'L' => 'l',
+  'M' => 'm',
+  'N' => 'n',
+  'O' => 'o',
+  'P' => 'p',
+  'Q' => 'q',
+  'R' => 'r',
+  'S' => 's',
+  'T' => 't',
+  'U' => 'u',
+  'V' => 'v',
+  'W' => 'w',
+  'X' => 'x',
+  'Y' => 'y',
+  'Z' => 'z',
+  'À' => 'à',
+  'Á' => 'á',
+  'Â' => 'â',
+  'Ã' => 'ã',
+  'Ä' => 'ä',
+  'Å' => 'å',
+  'Æ' => 'æ',
+  'Ç' => 'ç',
+  'È' => 'è',
+  'É' => 'é',
+  'Ê' => 'ê',
+  'Ë' => 'ë',
+  'Ì' => 'ì',
+  'Í' => 'í',
+  'Î' => 'î',
+  'Ï' => 'ï',
+  'Ð' => 'ð',
+  'Ñ' => 'ñ',
+  'Ò' => 'ò',
+  'Ó' => 'ó',
+  'Ô' => 'ô',
+  'Õ' => 'õ',
+  'Ö' => 'ö',
+  'Ø' => 'ø',
+  'Ù' => 'ù',
+  'Ú' => 'ú',
+  'Û' => 'û',
+  'Ü' => 'ü',
+  'Ý' => 'ý',
+  'Þ' => 'þ',
+  'Ā' => 'ā',
+  'Ă' => 'ă',
+  'Ą' => 'ą',
+  'Ć' => 'ć',
+  'Ĉ' => 'ĉ',
+  'Ċ' => 'ċ',
+  'Č' => 'č',
+  'Ď' => 'ď',
+  'Đ' => 'đ',
+  'Ē' => 'ē',
+  'Ĕ' => 'ĕ',
+  'Ė' => 'ė',
+  'Ę' => 'ę',
+  'Ě' => 'ě',
+  'Ĝ' => 'ĝ',
+  'Ğ' => 'ğ',
+  'Ġ' => 'ġ',
+  'Ģ' => 'ģ',
+  'Ĥ' => 'ĥ',
+  'Ħ' => 'ħ',
+  'Ĩ' => 'ĩ',
+  'Ī' => 'ī',
+  'Ĭ' => 'ĭ',
+  'Į' => 'į',
+  'İ' => 'i̇',
+  'Ĳ' => 'ĳ',
+  'Ĵ' => 'ĵ',
+  'Ķ' => 'ķ',
+  'Ĺ' => 'ĺ',
+  'Ļ' => 'ļ',
+  'Ľ' => 'ľ',
+  'Ŀ' => 'ŀ',
+  'Ł' => 'ł',
+  'Ń' => 'ń',
+  'Ņ' => 'ņ',
+  'Ň' => 'ň',
+  'Ŋ' => 'ŋ',
+  'Ō' => 'ō',
+  'Ŏ' => 'ŏ',
+  'Ő' => 'ő',
+  'Œ' => 'œ',
+  'Ŕ' => 'ŕ',
+  'Ŗ' => 'ŗ',
+  'Ř' => 'ř',
+  'Ś' => 'ś',
+  'Ŝ' => 'ŝ',
+  'Ş' => 'ş',
+  'Š' => 'š',
+  'Ţ' => 'ţ',
+  'Ť' => 'ť',
+  'Ŧ' => 'ŧ',
+  'Ũ' => 'ũ',
+  'Ū' => 'ū',
+  'Ŭ' => 'ŭ',
+  'Ů' => 'ů',
+  'Ű' => 'ű',
+  'Ų' => 'ų',
+  'Ŵ' => 'ŵ',
+  'Ŷ' => 'ŷ',
+  'Ÿ' => 'ÿ',
+  'Ź' => 'ź',
+  'Ż' => 'ż',
+  'Ž' => 'ž',
+  'Ɓ' => 'ɓ',
+  'Ƃ' => 'ƃ',
+  'Ƅ' => 'ƅ',
+  'Ɔ' => 'ɔ',
+  'Ƈ' => 'ƈ',
+  'Ɖ' => 'ɖ',
+  'Ɗ' => 'ɗ',
+  'Ƌ' => 'ƌ',
+  'Ǝ' => 'ǝ',
+  'Ə' => 'ə',
+  'Ɛ' => 'ɛ',
+  'Ƒ' => 'ƒ',
+  'Ɠ' => 'ɠ',
+  'Ɣ' => 'ɣ',
+  'Ɩ' => 'ɩ',
+  'Ɨ' => 'ɨ',
+  'Ƙ' => 'ƙ',
+  'Ɯ' => 'ɯ',
+  'Ɲ' => 'ɲ',
+  'Ɵ' => 'ɵ',
+  'Ơ' => 'ơ',
+  'Ƣ' => 'ƣ',
+  'Ƥ' => 'ƥ',
+  'Ʀ' => 'ʀ',
+  'Ƨ' => 'ƨ',
+  'Ʃ' => 'ʃ',
+  'Ƭ' => 'ƭ',
+  'Ʈ' => 'ʈ',
+  'Ư' => 'ư',
+  'Ʊ' => 'ʊ',
+  'Ʋ' => 'ʋ',
+  'Ƴ' => 'ƴ',
+  'Ƶ' => 'ƶ',
+  'Ʒ' => 'ʒ',
+  'Ƹ' => 'ƹ',
+  'Ƽ' => 'ƽ',
+  'Ǆ' => 'ǆ',
+  'ǅ' => 'ǆ',
+  'Ǉ' => 'ǉ',
+  'ǈ' => 'ǉ',
+  'Ǌ' => 'ǌ',
+  'ǋ' => 'ǌ',
+  'Ǎ' => 'ǎ',
+  'Ǐ' => 'ǐ',
+  'Ǒ' => 'ǒ',
+  'Ǔ' => 'ǔ',
+  'Ǖ' => 'ǖ',
+  'Ǘ' => 'ǘ',
+  'Ǚ' => 'ǚ',
+  'Ǜ' => 'ǜ',
+  'Ǟ' => 'ǟ',
+  'Ǡ' => 'ǡ',
+  'Ǣ' => 'ǣ',
+  'Ǥ' => 'ǥ',
+  'Ǧ' => 'ǧ',
+  'Ǩ' => 'ǩ',
+  'Ǫ' => 'ǫ',
+  'Ǭ' => 'ǭ',
+  'Ǯ' => 'ǯ',
+  'Ǳ' => 'ǳ',
+  'ǲ' => 'ǳ',
+  'Ǵ' => 'ǵ',
+  'Ƕ' => 'ƕ',
+  'Ƿ' => 'ƿ',
+  'Ǹ' => 'ǹ',
+  'Ǻ' => 'ǻ',
+  'Ǽ' => 'ǽ',
+  'Ǿ' => 'ǿ',
+  'Ȁ' => 'ȁ',
+  'Ȃ' => 'ȃ',
+  'Ȅ' => 'ȅ',
+  'Ȇ' => 'ȇ',
+  'Ȉ' => 'ȉ',
+  'Ȋ' => 'ȋ',
+  'Ȍ' => 'ȍ',
+  'Ȏ' => 'ȏ',
+  'Ȑ' => 'ȑ',
+  'Ȓ' => 'ȓ',
+  'Ȕ' => 'ȕ',
+  'Ȗ' => 'ȗ',
+  'Ș' => 'ș',
+  'Ț' => 'ț',
+  'Ȝ' => 'ȝ',
+  'Ȟ' => 'ȟ',
+  'Ƞ' => 'ƞ',
+  'Ȣ' => 'ȣ',
+  'Ȥ' => 'ȥ',
+  'Ȧ' => 'ȧ',
+  'Ȩ' => 'ȩ',
+  'Ȫ' => 'ȫ',
+  'Ȭ' => 'ȭ',
+  'Ȯ' => 'ȯ',
+  'Ȱ' => 'ȱ',
+  'Ȳ' => 'ȳ',
+  'Ⱥ' => 'ⱥ',
+  'Ȼ' => 'ȼ',
+  'Ƚ' => 'ƚ',
+  'Ⱦ' => 'ⱦ',
+  'Ɂ' => 'ɂ',
+  'Ƀ' => 'ƀ',
+  'Ʉ' => 'ʉ',
+  'Ʌ' => 'ʌ',
+  'Ɇ' => 'ɇ',
+  'Ɉ' => 'ɉ',
+  'Ɋ' => 'ɋ',
+  'Ɍ' => 'ɍ',
+  'Ɏ' => 'ɏ',
+  'Ͱ' => 'ͱ',
+  'Ͳ' => 'ͳ',
+  'Ͷ' => 'ͷ',
+  'Ϳ' => 'ϳ',
+  'Ά' => 'ά',
+  'Έ' => 'έ',
+  'Ή' => 'ή',
+  'Ί' => 'ί',
+  'Ό' => 'ό',
+  'Ύ' => 'ύ',
+  'Ώ' => 'ώ',
+  'Α' => 'α',
+  'Β' => 'β',
+  'Γ' => 'γ',
+  'Δ' => 'δ',
+  'Ε' => 'ε',
+  'Ζ' => 'ζ',
+  'Η' => 'η',
+  'Θ' => 'θ',
+  'Ι' => 'ι',
+  'Κ' => 'κ',
+  'Λ' => 'λ',
+  'Μ' => 'μ',
+  'Ν' => 'ν',
+  'Ξ' => 'ξ',
+  'Ο' => 'ο',
+  'Π' => 'π',
+  'Ρ' => 'ρ',
+  'Σ' => 'σ',
+  'Τ' => 'τ',
+  'Υ' => 'υ',
+  'Φ' => 'φ',
+  'Χ' => 'χ',
+  'Ψ' => 'ψ',
+  'Ω' => 'ω',
+  'Ϊ' => 'ϊ',
+  'Ϋ' => 'ϋ',
+  'Ϗ' => 'ϗ',
+  'Ϙ' => 'ϙ',
+  'Ϛ' => 'ϛ',
+  'Ϝ' => 'ϝ',
+  'Ϟ' => 'ϟ',
+  'Ϡ' => 'ϡ',
+  'Ϣ' => 'ϣ',
+  'Ϥ' => 'ϥ',
+  'Ϧ' => 'ϧ',
+  'Ϩ' => 'ϩ',
+  'Ϫ' => 'ϫ',
+  'Ϭ' => 'ϭ',
+  'Ϯ' => 'ϯ',
+  'ϴ' => 'θ',
+  'Ϸ' => 'ϸ',
+  'Ϲ' => 'ϲ',
+  'Ϻ' => 'ϻ',
+  'Ͻ' => 'ͻ',
+  'Ͼ' => 'ͼ',
+  'Ͽ' => 'ͽ',
+  'Ѐ' => 'ѐ',
+  'Ё' => 'ё',
+  'Ђ' => 'ђ',
+  'Ѓ' => 'ѓ',
+  'Є' => 'є',
+  'Ѕ' => 'ѕ',
+  'І' => 'і',
+  'Ї' => 'ї',
+  'Ј' => 'ј',
+  'Љ' => 'љ',
+  'Њ' => 'њ',
+  'Ћ' => 'ћ',
+  'Ќ' => 'ќ',
+  'Ѝ' => 'ѝ',
+  'Ў' => 'ў',
+  'Џ' => 'џ',
+  'А' => 'а',
+  'Б' => 'б',
+  'В' => 'в',
+  'Г' => 'г',
+  'Д' => 'д',
+  'Е' => 'е',
+  'Ж' => 'ж',
+  'З' => 'з',
+  'И' => 'и',
+  'Й' => 'й',
+  'К' => 'к',
+  'Л' => 'л',
+  'М' => 'м',
+  'Н' => 'н',
+  'О' => 'о',
+  'П' => 'п',
+  'Р' => 'р',
+  'С' => 'с',
+  'Т' => 'т',
+  'У' => 'у',
+  'Ф' => 'ф',
+  'Х' => 'х',
+  'Ц' => 'ц',
+  'Ч' => 'ч',
+  'Ш' => 'ш',
+  'Щ' => 'щ',
+  'Ъ' => 'ъ',
+  'Ы' => 'ы',
+  'Ь' => 'ь',
+  'Э' => 'э',
+  'Ю' => 'ю',
+  'Я' => 'я',
+  'Ѡ' => 'ѡ',
+  'Ѣ' => 'ѣ',
+  'Ѥ' => 'ѥ',
+  'Ѧ' => 'ѧ',
+  'Ѩ' => 'ѩ',
+  'Ѫ' => 'ѫ',
+  'Ѭ' => 'ѭ',
+  'Ѯ' => 'ѯ',
+  'Ѱ' => 'ѱ',
+  'Ѳ' => 'ѳ',
+  'Ѵ' => 'ѵ',
+  'Ѷ' => 'ѷ',
+  'Ѹ' => 'ѹ',
+  'Ѻ' => 'ѻ',
+  'Ѽ' => 'ѽ',
+  'Ѿ' => 'ѿ',
+  'Ҁ' => 'ҁ',
+  'Ҋ' => 'ҋ',
+  'Ҍ' => 'ҍ',
+  'Ҏ' => 'ҏ',
+  'Ґ' => 'ґ',
+  'Ғ' => 'ғ',
+  'Ҕ' => 'ҕ',
+  'Җ' => 'җ',
+  'Ҙ' => 'ҙ',
+  'Қ' => 'қ',
+  'Ҝ' => 'ҝ',
+  'Ҟ' => 'ҟ',
+  'Ҡ' => 'ҡ',
+  'Ң' => 'ң',
+  'Ҥ' => 'ҥ',
+  'Ҧ' => 'ҧ',
+  'Ҩ' => 'ҩ',
+  'Ҫ' => 'ҫ',
+  'Ҭ' => 'ҭ',
+  'Ү' => 'ү',
+  'Ұ' => 'ұ',
+  'Ҳ' => 'ҳ',
+  'Ҵ' => 'ҵ',
+  'Ҷ' => 'ҷ',
+  'Ҹ' => 'ҹ',
+  'Һ' => 'һ',
+  'Ҽ' => 'ҽ',
+  'Ҿ' => 'ҿ',
+  'Ӏ' => 'ӏ',
+  'Ӂ' => 'ӂ',
+  'Ӄ' => 'ӄ',
+  'Ӆ' => 'ӆ',
+  'Ӈ' => 'ӈ',
+  'Ӊ' => 'ӊ',
+  'Ӌ' => 'ӌ',
+  'Ӎ' => 'ӎ',
+  'Ӑ' => 'ӑ',
+  'Ӓ' => 'ӓ',
+  'Ӕ' => 'ӕ',
+  'Ӗ' => 'ӗ',
+  'Ә' => 'ә',
+  'Ӛ' => 'ӛ',
+  'Ӝ' => 'ӝ',
+  'Ӟ' => 'ӟ',
+  'Ӡ' => 'ӡ',
+  'Ӣ' => 'ӣ',
+  'Ӥ' => 'ӥ',
+  'Ӧ' => 'ӧ',
+  'Ө' => 'ө',
+  'Ӫ' => 'ӫ',
+  'Ӭ' => 'ӭ',
+  'Ӯ' => 'ӯ',
+  'Ӱ' => 'ӱ',
+  'Ӳ' => 'ӳ',
+  'Ӵ' => 'ӵ',
+  'Ӷ' => 'ӷ',
+  'Ӹ' => 'ӹ',
+  'Ӻ' => 'ӻ',
+  'Ӽ' => 'ӽ',
+  'Ӿ' => 'ӿ',
+  'Ԁ' => 'ԁ',
+  'Ԃ' => 'ԃ',
+  'Ԅ' => 'ԅ',
+  'Ԇ' => 'ԇ',
+  'Ԉ' => 'ԉ',
+  'Ԋ' => 'ԋ',
+  'Ԍ' => 'ԍ',
+  'Ԏ' => 'ԏ',
+  'Ԑ' => 'ԑ',
+  'Ԓ' => 'ԓ',
+  'Ԕ' => 'ԕ',
+  'Ԗ' => 'ԗ',
+  'Ԙ' => 'ԙ',
+  'Ԛ' => 'ԛ',
+  'Ԝ' => 'ԝ',
+  'Ԟ' => 'ԟ',
+  'Ԡ' => 'ԡ',
+  'Ԣ' => 'ԣ',
+  'Ԥ' => 'ԥ',
+  'Ԧ' => 'ԧ',
+  'Ԩ' => 'ԩ',
+  'Ԫ' => 'ԫ',
+  'Ԭ' => 'ԭ',
+  'Ԯ' => 'ԯ',
+  'Ա' => 'ա',
+  'Բ' => 'բ',
+  'Գ' => 'գ',
+  'Դ' => 'դ',
+  'Ե' => 'ե',
+  'Զ' => 'զ',
+  'Է' => 'է',
+  'Ը' => 'ը',
+  'Թ' => 'թ',
+  'Ժ' => 'ժ',
+  'Ի' => 'ի',
+  'Լ' => 'լ',
+  'Խ' => 'խ',
+  'Ծ' => 'ծ',
+  'Կ' => 'կ',
+  'Հ' => 'հ',
+  'Ձ' => 'ձ',
+  'Ղ' => 'ղ',
+  'Ճ' => 'ճ',
+  'Մ' => 'մ',
+  'Յ' => 'յ',
+  'Ն' => 'ն',
+  'Շ' => 'շ',
+  'Ո' => 'ո',
+  'Չ' => 'չ',
+  'Պ' => 'պ',
+  'Ջ' => 'ջ',
+  'Ռ' => 'ռ',
+  'Ս' => 'ս',
+  'Վ' => 'վ',
+  'Տ' => 'տ',
+  'Ր' => 'ր',
+  'Ց' => 'ց',
+  'Ւ' => 'ւ',
+  'Փ' => 'փ',
+  'Ք' => 'ք',
+  'Օ' => 'օ',
+  'Ֆ' => 'ֆ',
+  'Ⴀ' => 'ⴀ',
+  'Ⴁ' => 'ⴁ',
+  'Ⴂ' => 'ⴂ',
+  'Ⴃ' => 'ⴃ',
+  'Ⴄ' => 'ⴄ',
+  'Ⴅ' => 'ⴅ',
+  'Ⴆ' => 'ⴆ',
+  'Ⴇ' => 'ⴇ',
+  'Ⴈ' => 'ⴈ',
+  'Ⴉ' => 'ⴉ',
+  'Ⴊ' => 'ⴊ',
+  'Ⴋ' => 'ⴋ',
+  'Ⴌ' => 'ⴌ',
+  'Ⴍ' => 'ⴍ',
+  'Ⴎ' => 'ⴎ',
+  'Ⴏ' => 'ⴏ',
+  'Ⴐ' => 'ⴐ',
+  'Ⴑ' => 'ⴑ',
+  'Ⴒ' => 'ⴒ',
+  'Ⴓ' => 'ⴓ',
+  'Ⴔ' => 'ⴔ',
+  'Ⴕ' => 'ⴕ',
+  'Ⴖ' => 'ⴖ',
+  'Ⴗ' => 'ⴗ',
+  'Ⴘ' => 'ⴘ',
+  'Ⴙ' => 'ⴙ',
+  'Ⴚ' => 'ⴚ',
+  'Ⴛ' => 'ⴛ',
+  'Ⴜ' => 'ⴜ',
+  'Ⴝ' => 'ⴝ',
+  'Ⴞ' => 'ⴞ',
+  'Ⴟ' => 'ⴟ',
+  'Ⴠ' => 'ⴠ',
+  'Ⴡ' => 'ⴡ',
+  'Ⴢ' => 'ⴢ',
+  'Ⴣ' => 'ⴣ',
+  'Ⴤ' => 'ⴤ',
+  'Ⴥ' => 'ⴥ',
+  'Ⴧ' => 'ⴧ',
+  'Ⴭ' => 'ⴭ',
+  'Ꭰ' => 'ꭰ',
+  'Ꭱ' => 'ꭱ',
+  'Ꭲ' => 'ꭲ',
+  'Ꭳ' => 'ꭳ',
+  'Ꭴ' => 'ꭴ',
+  'Ꭵ' => 'ꭵ',
+  'Ꭶ' => 'ꭶ',
+  'Ꭷ' => 'ꭷ',
+  'Ꭸ' => 'ꭸ',
+  'Ꭹ' => 'ꭹ',
+  'Ꭺ' => 'ꭺ',
+  'Ꭻ' => 'ꭻ',
+  'Ꭼ' => 'ꭼ',
+  'Ꭽ' => 'ꭽ',
+  'Ꭾ' => 'ꭾ',
+  'Ꭿ' => 'ꭿ',
+  'Ꮀ' => 'ꮀ',
+  'Ꮁ' => 'ꮁ',
+  'Ꮂ' => 'ꮂ',
+  'Ꮃ' => 'ꮃ',
+  'Ꮄ' => 'ꮄ',
+  'Ꮅ' => 'ꮅ',
+  'Ꮆ' => 'ꮆ',
+  'Ꮇ' => 'ꮇ',
+  'Ꮈ' => 'ꮈ',
+  'Ꮉ' => 'ꮉ',
+  'Ꮊ' => 'ꮊ',
+  'Ꮋ' => 'ꮋ',
+  'Ꮌ' => 'ꮌ',
+  'Ꮍ' => 'ꮍ',
+  'Ꮎ' => 'ꮎ',
+  'Ꮏ' => 'ꮏ',
+  'Ꮐ' => 'ꮐ',
+  'Ꮑ' => 'ꮑ',
+  'Ꮒ' => 'ꮒ',
+  'Ꮓ' => 'ꮓ',
+  'Ꮔ' => 'ꮔ',
+  'Ꮕ' => 'ꮕ',
+  'Ꮖ' => 'ꮖ',
+  'Ꮗ' => 'ꮗ',
+  'Ꮘ' => 'ꮘ',
+  'Ꮙ' => 'ꮙ',
+  'Ꮚ' => 'ꮚ',
+  'Ꮛ' => 'ꮛ',
+  'Ꮜ' => 'ꮜ',
+  'Ꮝ' => 'ꮝ',
+  'Ꮞ' => 'ꮞ',
+  'Ꮟ' => 'ꮟ',
+  'Ꮠ' => 'ꮠ',
+  'Ꮡ' => 'ꮡ',
+  'Ꮢ' => 'ꮢ',
+  'Ꮣ' => 'ꮣ',
+  'Ꮤ' => 'ꮤ',
+  'Ꮥ' => 'ꮥ',
+  'Ꮦ' => 'ꮦ',
+  'Ꮧ' => 'ꮧ',
+  'Ꮨ' => 'ꮨ',
+  'Ꮩ' => 'ꮩ',
+  'Ꮪ' => 'ꮪ',
+  'Ꮫ' => 'ꮫ',
+  'Ꮬ' => 'ꮬ',
+  'Ꮭ' => 'ꮭ',
+  'Ꮮ' => 'ꮮ',
+  'Ꮯ' => 'ꮯ',
+  'Ꮰ' => 'ꮰ',
+  'Ꮱ' => 'ꮱ',
+  'Ꮲ' => 'ꮲ',
+  'Ꮳ' => 'ꮳ',
+  'Ꮴ' => 'ꮴ',
+  'Ꮵ' => 'ꮵ',
+  'Ꮶ' => 'ꮶ',
+  'Ꮷ' => 'ꮷ',
+  'Ꮸ' => 'ꮸ',
+  'Ꮹ' => 'ꮹ',
+  'Ꮺ' => 'ꮺ',
+  'Ꮻ' => 'ꮻ',
+  'Ꮼ' => 'ꮼ',
+  'Ꮽ' => 'ꮽ',
+  'Ꮾ' => 'ꮾ',
+  'Ꮿ' => 'ꮿ',
+  'Ᏸ' => 'ᏸ',
+  'Ᏹ' => 'ᏹ',
+  'Ᏺ' => 'ᏺ',
+  'Ᏻ' => 'ᏻ',
+  'Ᏼ' => 'ᏼ',
+  'Ᏽ' => 'ᏽ',
+  'Ა' => 'ა',
+  'Ბ' => 'ბ',
+  'Გ' => 'გ',
+  'Დ' => 'დ',
+  'Ე' => 'ე',
+  'Ვ' => 'ვ',
+  'Ზ' => 'ზ',
+  'Თ' => 'თ',
+  'Ი' => 'ი',
+  'Კ' => 'კ',
+  'Ლ' => 'ლ',
+  'Მ' => 'მ',
+  'Ნ' => 'ნ',
+  'Ო' => 'ო',
+  'Პ' => 'პ',
+  'Ჟ' => 'ჟ',
+  'Რ' => 'რ',
+  'Ს' => 'ს',
+  'Ტ' => 'ტ',
+  'Უ' => 'უ',
+  'Ფ' => 'ფ',
+  'Ქ' => 'ქ',
+  'Ღ' => 'ღ',
+  'Ყ' => 'ყ',
+  'Შ' => 'შ',
+  'Ჩ' => 'ჩ',
+  'Ც' => 'ც',
+  'Ძ' => 'ძ',
+  'Წ' => 'წ',
+  'Ჭ' => 'ჭ',
+  'Ხ' => 'ხ',
+  'Ჯ' => 'ჯ',
+  'Ჰ' => 'ჰ',
+  'Ჱ' => 'ჱ',
+  'Ჲ' => 'ჲ',
+  'Ჳ' => 'ჳ',
+  'Ჴ' => 'ჴ',
+  'Ჵ' => 'ჵ',
+  'Ჶ' => 'ჶ',
+  'Ჷ' => 'ჷ',
+  'Ჸ' => 'ჸ',
+  'Ჹ' => 'ჹ',
+  'Ჺ' => 'ჺ',
+  'Ჽ' => 'ჽ',
+  'Ჾ' => 'ჾ',
+  'Ჿ' => 'ჿ',
+  'Ḁ' => 'ḁ',
+  'Ḃ' => 'ḃ',
+  'Ḅ' => 'ḅ',
+  'Ḇ' => 'ḇ',
+  'Ḉ' => 'ḉ',
+  'Ḋ' => 'ḋ',
+  'Ḍ' => 'ḍ',
+  'Ḏ' => 'ḏ',
+  'Ḑ' => 'ḑ',
+  'Ḓ' => 'ḓ',
+  'Ḕ' => 'ḕ',
+  'Ḗ' => 'ḗ',
+  'Ḙ' => 'ḙ',
+  'Ḛ' => 'ḛ',
+  'Ḝ' => 'ḝ',
+  'Ḟ' => 'ḟ',
+  'Ḡ' => 'ḡ',
+  'Ḣ' => 'ḣ',
+  'Ḥ' => 'ḥ',
+  'Ḧ' => 'ḧ',
+  'Ḩ' => 'ḩ',
+  'Ḫ' => 'ḫ',
+  'Ḭ' => 'ḭ',
+  'Ḯ' => 'ḯ',
+  'Ḱ' => 'ḱ',
+  'Ḳ' => 'ḳ',
+  'Ḵ' => 'ḵ',
+  'Ḷ' => 'ḷ',
+  'Ḹ' => 'ḹ',
+  'Ḻ' => 'ḻ',
+  'Ḽ' => 'ḽ',
+  'Ḿ' => 'ḿ',
+  'Ṁ' => 'ṁ',
+  'Ṃ' => 'ṃ',
+  'Ṅ' => 'ṅ',
+  'Ṇ' => 'ṇ',
+  'Ṉ' => 'ṉ',
+  'Ṋ' => 'ṋ',
+  'Ṍ' => 'ṍ',
+  'Ṏ' => 'ṏ',
+  'Ṑ' => 'ṑ',
+  'Ṓ' => 'ṓ',
+  'Ṕ' => 'ṕ',
+  'Ṗ' => 'ṗ',
+  'Ṙ' => 'ṙ',
+  'Ṛ' => 'ṛ',
+  'Ṝ' => 'ṝ',
+  'Ṟ' => 'ṟ',
+  'Ṡ' => 'ṡ',
+  'Ṣ' => 'ṣ',
+  'Ṥ' => 'ṥ',
+  'Ṧ' => 'ṧ',
+  'Ṩ' => 'ṩ',
+  'Ṫ' => 'ṫ',
+  'Ṭ' => 'ṭ',
+  'Ṯ' => 'ṯ',
+  'Ṱ' => 'ṱ',
+  'Ṳ' => 'ṳ',
+  'Ṵ' => 'ṵ',
+  'Ṷ' => 'ṷ',
+  'Ṹ' => 'ṹ',
+  'Ṻ' => 'ṻ',
+  'Ṽ' => 'ṽ',
+  'Ṿ' => 'ṿ',
+  'Ẁ' => 'ẁ',
+  'Ẃ' => 'ẃ',
+  'Ẅ' => 'ẅ',
+  'Ẇ' => 'ẇ',
+  'Ẉ' => 'ẉ',
+  'Ẋ' => 'ẋ',
+  'Ẍ' => 'ẍ',
+  'Ẏ' => 'ẏ',
+  'Ẑ' => 'ẑ',
+  'Ẓ' => 'ẓ',
+  'Ẕ' => 'ẕ',
+  'ẞ' => 'ß',
+  'Ạ' => 'ạ',
+  'Ả' => 'ả',
+  'Ấ' => 'ấ',
+  'Ầ' => 'ầ',
+  'Ẩ' => 'ẩ',
+  'Ẫ' => 'ẫ',
+  'Ậ' => 'ậ',
+  'Ắ' => 'ắ',
+  'Ằ' => 'ằ',
+  'Ẳ' => 'ẳ',
+  'Ẵ' => 'ẵ',
+  'Ặ' => 'ặ',
+  'Ẹ' => 'ẹ',
+  'Ẻ' => 'ẻ',
+  'Ẽ' => 'ẽ',
+  'Ế' => 'ế',
+  'Ề' => 'ề',
+  'Ể' => 'ể',
+  'Ễ' => 'ễ',
+  'Ệ' => 'ệ',
+  'Ỉ' => 'ỉ',
+  'Ị' => 'ị',
+  'Ọ' => 'ọ',
+  'Ỏ' => 'ỏ',
+  'Ố' => 'ố',
+  'Ồ' => 'ồ',
+  'Ổ' => 'ổ',
+  'Ỗ' => 'ỗ',
+  'Ộ' => 'ộ',
+  'Ớ' => 'ớ',
+  'Ờ' => 'ờ',
+  'Ở' => 'ở',
+  'Ỡ' => 'ỡ',
+  'Ợ' => 'ợ',
+  'Ụ' => 'ụ',
+  'Ủ' => 'ủ',
+  'Ứ' => 'ứ',
+  'Ừ' => 'ừ',
+  'Ử' => 'ử',
+  'Ữ' => 'ữ',
+  'Ự' => 'ự',
+  'Ỳ' => 'ỳ',
+  'Ỵ' => 'ỵ',
+  'Ỷ' => 'ỷ',
+  'Ỹ' => 'ỹ',
+  'Ỻ' => 'ỻ',
+  'Ỽ' => 'ỽ',
+  'Ỿ' => 'ỿ',
+  'Ἀ' => 'ἀ',
+  'Ἁ' => 'ἁ',
+  'Ἂ' => 'ἂ',
+  'Ἃ' => 'ἃ',
+  'Ἄ' => 'ἄ',
+  'Ἅ' => 'ἅ',
+  'Ἆ' => 'ἆ',
+  'Ἇ' => 'ἇ',
+  'Ἐ' => 'ἐ',
+  'Ἑ' => 'ἑ',
+  'Ἒ' => 'ἒ',
+  'Ἓ' => 'ἓ',
+  'Ἔ' => 'ἔ',
+  'Ἕ' => 'ἕ',
+  'Ἠ' => 'ἠ',
+  'Ἡ' => 'ἡ',
+  'Ἢ' => 'ἢ',
+  'Ἣ' => 'ἣ',
+  'Ἤ' => 'ἤ',
+  'Ἥ' => 'ἥ',
+  'Ἦ' => 'ἦ',
+  'Ἧ' => 'ἧ',
+  'Ἰ' => 'ἰ',
+  'Ἱ' => 'ἱ',
+  'Ἲ' => 'ἲ',
+  'Ἳ' => 'ἳ',
+  'Ἴ' => 'ἴ',
+  'Ἵ' => 'ἵ',
+  'Ἶ' => 'ἶ',
+  'Ἷ' => 'ἷ',
+  'Ὀ' => 'ὀ',
+  'Ὁ' => 'ὁ',
+  'Ὂ' => 'ὂ',
+  'Ὃ' => 'ὃ',
+  'Ὄ' => 'ὄ',
+  'Ὅ' => 'ὅ',
+  'Ὑ' => 'ὑ',
+  'Ὓ' => 'ὓ',
+  'Ὕ' => 'ὕ',
+  'Ὗ' => 'ὗ',
+  'Ὠ' => 'ὠ',
+  'Ὡ' => 'ὡ',
+  'Ὢ' => 'ὢ',
+  'Ὣ' => 'ὣ',
+  'Ὤ' => 'ὤ',
+  'Ὥ' => 'ὥ',
+  'Ὦ' => 'ὦ',
+  'Ὧ' => 'ὧ',
+  'ᾈ' => 'ᾀ',
+  'ᾉ' => 'ᾁ',
+  'ᾊ' => 'ᾂ',
+  'ᾋ' => 'ᾃ',
+  'ᾌ' => 'ᾄ',
+  'ᾍ' => 'ᾅ',
+  'ᾎ' => 'ᾆ',
+  'ᾏ' => 'ᾇ',
+  'ᾘ' => 'ᾐ',
+  'ᾙ' => 'ᾑ',
+  'ᾚ' => 'ᾒ',
+  'ᾛ' => 'ᾓ',
+  'ᾜ' => 'ᾔ',
+  'ᾝ' => 'ᾕ',
+  'ᾞ' => 'ᾖ',
+  'ᾟ' => 'ᾗ',
+  'ᾨ' => 'ᾠ',
+  'ᾩ' => 'ᾡ',
+  'ᾪ' => 'ᾢ',
+  'ᾫ' => 'ᾣ',
+  'ᾬ' => 'ᾤ',
+  'ᾭ' => 'ᾥ',
+  'ᾮ' => 'ᾦ',
+  'ᾯ' => 'ᾧ',
+  'Ᾰ' => 'ᾰ',
+  'Ᾱ' => 'ᾱ',
+  'Ὰ' => 'ὰ',
+  'Ά' => 'ά',
+  'ᾼ' => 'ᾳ',
+  'Ὲ' => 'ὲ',
+  'Έ' => 'έ',
+  'Ὴ' => 'ὴ',
+  'Ή' => 'ή',
+  'ῌ' => 'ῃ',
+  'Ῐ' => 'ῐ',
+  'Ῑ' => 'ῑ',
+  'Ὶ' => 'ὶ',
+  'Ί' => 'ί',
+  'Ῠ' => 'ῠ',
+  'Ῡ' => 'ῡ',
+  'Ὺ' => 'ὺ',
+  'Ύ' => 'ύ',
+  'Ῥ' => 'ῥ',
+  'Ὸ' => 'ὸ',
+  'Ό' => 'ό',
+  'Ὼ' => 'ὼ',
+  'Ώ' => 'ώ',
+  'ῼ' => 'ῳ',
+  'Ω' => 'ω',
+  'K' => 'k',
+  'Å' => 'å',
+  'Ⅎ' => 'ⅎ',
+  'Ⅰ' => 'ⅰ',
+  'Ⅱ' => 'ⅱ',
+  'Ⅲ' => 'ⅲ',
+  'Ⅳ' => 'ⅳ',
+  'Ⅴ' => 'ⅴ',
+  'Ⅵ' => 'ⅵ',
+  'Ⅶ' => 'ⅶ',
+  'Ⅷ' => 'ⅷ',
+  'Ⅸ' => 'ⅸ',
+  'Ⅹ' => 'ⅹ',
+  'Ⅺ' => 'ⅺ',
+  'Ⅻ' => 'ⅻ',
+  'Ⅼ' => 'ⅼ',
+  'Ⅽ' => 'ⅽ',
+  'Ⅾ' => 'ⅾ',
+  'Ⅿ' => 'ⅿ',
+  'Ↄ' => 'ↄ',
+  'Ⓐ' => 'ⓐ',
+  'Ⓑ' => 'ⓑ',
+  'Ⓒ' => 'ⓒ',
+  'Ⓓ' => 'ⓓ',
+  'Ⓔ' => 'ⓔ',
+  'Ⓕ' => 'ⓕ',
+  'Ⓖ' => 'ⓖ',
+  'Ⓗ' => 'ⓗ',
+  'Ⓘ' => 'ⓘ',
+  'Ⓙ' => 'ⓙ',
+  'Ⓚ' => 'ⓚ',
+  'Ⓛ' => 'ⓛ',
+  'Ⓜ' => 'ⓜ',
+  'Ⓝ' => 'ⓝ',
+  'Ⓞ' => 'ⓞ',
+  'Ⓟ' => 'ⓟ',
+  'Ⓠ' => 'ⓠ',
+  'Ⓡ' => 'ⓡ',
+  'Ⓢ' => 'ⓢ',
+  'Ⓣ' => 'ⓣ',
+  'Ⓤ' => 'ⓤ',
+  'Ⓥ' => 'ⓥ',
+  'Ⓦ' => 'ⓦ',
+  'Ⓧ' => 'ⓧ',
+  'Ⓨ' => 'ⓨ',
+  'Ⓩ' => 'ⓩ',
+  'Ⰰ' => 'ⰰ',
+  'Ⰱ' => 'ⰱ',
+  'Ⰲ' => 'ⰲ',
+  'Ⰳ' => 'ⰳ',
+  'Ⰴ' => 'ⰴ',
+  'Ⰵ' => 'ⰵ',
+  'Ⰶ' => 'ⰶ',
+  'Ⰷ' => 'ⰷ',
+  'Ⰸ' => 'ⰸ',
+  'Ⰹ' => 'ⰹ',
+  'Ⰺ' => 'ⰺ',
+  'Ⰻ' => 'ⰻ',
+  'Ⰼ' => 'ⰼ',
+  'Ⰽ' => 'ⰽ',
+  'Ⰾ' => 'ⰾ',
+  'Ⰿ' => 'ⰿ',
+  'Ⱀ' => 'ⱀ',
+  'Ⱁ' => 'ⱁ',
+  'Ⱂ' => 'ⱂ',
+  'Ⱃ' => 'ⱃ',
+  'Ⱄ' => 'ⱄ',
+  'Ⱅ' => 'ⱅ',
+  'Ⱆ' => 'ⱆ',
+  'Ⱇ' => 'ⱇ',
+  'Ⱈ' => 'ⱈ',
+  'Ⱉ' => 'ⱉ',
+  'Ⱊ' => 'ⱊ',
+  'Ⱋ' => 'ⱋ',
+  'Ⱌ' => 'ⱌ',
+  'Ⱍ' => 'ⱍ',
+  'Ⱎ' => 'ⱎ',
+  'Ⱏ' => 'ⱏ',
+  'Ⱐ' => 'ⱐ',
+  'Ⱑ' => 'ⱑ',
+  'Ⱒ' => 'ⱒ',
+  'Ⱓ' => 'ⱓ',
+  'Ⱔ' => 'ⱔ',
+  'Ⱕ' => 'ⱕ',
+  'Ⱖ' => 'ⱖ',
+  'Ⱗ' => 'ⱗ',
+  'Ⱘ' => 'ⱘ',
+  'Ⱙ' => 'ⱙ',
+  'Ⱚ' => 'ⱚ',
+  'Ⱛ' => 'ⱛ',
+  'Ⱜ' => 'ⱜ',
+  'Ⱝ' => 'ⱝ',
+  'Ⱞ' => 'ⱞ',
+  'Ⱡ' => 'ⱡ',
+  'Ɫ' => 'ɫ',
+  'Ᵽ' => 'ᵽ',
+  'Ɽ' => 'ɽ',
+  'Ⱨ' => 'ⱨ',
+  'Ⱪ' => 'ⱪ',
+  'Ⱬ' => 'ⱬ',
+  'Ɑ' => 'ɑ',
+  'Ɱ' => 'ɱ',
+  'Ɐ' => 'ɐ',
+  'Ɒ' => 'ɒ',
+  'Ⱳ' => 'ⱳ',
+  'Ⱶ' => 'ⱶ',
+  'Ȿ' => 'ȿ',
+  'Ɀ' => 'ɀ',
+  'Ⲁ' => 'ⲁ',
+  'Ⲃ' => 'ⲃ',
+  'Ⲅ' => 'ⲅ',
+  'Ⲇ' => 'ⲇ',
+  'Ⲉ' => 'ⲉ',
+  'Ⲋ' => 'ⲋ',
+  'Ⲍ' => 'ⲍ',
+  'Ⲏ' => 'ⲏ',
+  'Ⲑ' => 'ⲑ',
+  'Ⲓ' => 'ⲓ',
+  'Ⲕ' => 'ⲕ',
+  'Ⲗ' => 'ⲗ',
+  'Ⲙ' => 'ⲙ',
+  'Ⲛ' => 'ⲛ',
+  'Ⲝ' => 'ⲝ',
+  'Ⲟ' => 'ⲟ',
+  'Ⲡ' => 'ⲡ',
+  'Ⲣ' => 'ⲣ',
+  'Ⲥ' => 'ⲥ',
+  'Ⲧ' => 'ⲧ',
+  'Ⲩ' => 'ⲩ',
+  'Ⲫ' => 'ⲫ',
+  'Ⲭ' => 'ⲭ',
+  'Ⲯ' => 'ⲯ',
+  'Ⲱ' => 'ⲱ',
+  'Ⲳ' => 'ⲳ',
+  'Ⲵ' => 'ⲵ',
+  'Ⲷ' => 'ⲷ',
+  'Ⲹ' => 'ⲹ',
+  'Ⲻ' => 'ⲻ',
+  'Ⲽ' => 'ⲽ',
+  'Ⲿ' => 'ⲿ',
+  'Ⳁ' => 'ⳁ',
+  'Ⳃ' => 'ⳃ',
+  'Ⳅ' => 'ⳅ',
+  'Ⳇ' => 'ⳇ',
+  'Ⳉ' => 'ⳉ',
+  'Ⳋ' => 'ⳋ',
+  'Ⳍ' => 'ⳍ',
+  'Ⳏ' => 'ⳏ',
+  'Ⳑ' => 'ⳑ',
+  'Ⳓ' => 'ⳓ',
+  'Ⳕ' => 'ⳕ',
+  'Ⳗ' => 'ⳗ',
+  'Ⳙ' => 'ⳙ',
+  'Ⳛ' => 'ⳛ',
+  'Ⳝ' => 'ⳝ',
+  'Ⳟ' => 'ⳟ',
+  'Ⳡ' => 'ⳡ',
+  'Ⳣ' => 'ⳣ',
+  'Ⳬ' => 'ⳬ',
+  'Ⳮ' => 'ⳮ',
+  'Ⳳ' => 'ⳳ',
+  'Ꙁ' => 'ꙁ',
+  'Ꙃ' => 'ꙃ',
+  'Ꙅ' => 'ꙅ',
+  'Ꙇ' => 'ꙇ',
+  'Ꙉ' => 'ꙉ',
+  'Ꙋ' => 'ꙋ',
+  'Ꙍ' => 'ꙍ',
+  'Ꙏ' => 'ꙏ',
+  'Ꙑ' => 'ꙑ',
+  'Ꙓ' => 'ꙓ',
+  'Ꙕ' => 'ꙕ',
+  'Ꙗ' => 'ꙗ',
+  'Ꙙ' => 'ꙙ',
+  'Ꙛ' => 'ꙛ',
+  'Ꙝ' => 'ꙝ',
+  'Ꙟ' => 'ꙟ',
+  'Ꙡ' => 'ꙡ',
+  'Ꙣ' => 'ꙣ',
+  'Ꙥ' => 'ꙥ',
+  'Ꙧ' => 'ꙧ',
+  'Ꙩ' => 'ꙩ',
+  'Ꙫ' => 'ꙫ',
+  'Ꙭ' => 'ꙭ',
+  'Ꚁ' => 'ꚁ',
+  'Ꚃ' => 'ꚃ',
+  'Ꚅ' => 'ꚅ',
+  'Ꚇ' => 'ꚇ',
+  'Ꚉ' => 'ꚉ',
+  'Ꚋ' => 'ꚋ',
+  'Ꚍ' => 'ꚍ',
+  'Ꚏ' => 'ꚏ',
+  'Ꚑ' => 'ꚑ',
+  'Ꚓ' => 'ꚓ',
+  'Ꚕ' => 'ꚕ',
+  'Ꚗ' => 'ꚗ',
+  'Ꚙ' => 'ꚙ',
+  'Ꚛ' => 'ꚛ',
+  'Ꜣ' => 'ꜣ',
+  'Ꜥ' => 'ꜥ',
+  'Ꜧ' => 'ꜧ',
+  'Ꜩ' => 'ꜩ',
+  'Ꜫ' => 'ꜫ',
+  'Ꜭ' => 'ꜭ',
+  'Ꜯ' => 'ꜯ',
+  'Ꜳ' => 'ꜳ',
+  'Ꜵ' => 'ꜵ',
+  'Ꜷ' => 'ꜷ',
+  'Ꜹ' => 'ꜹ',
+  'Ꜻ' => 'ꜻ',
+  'Ꜽ' => 'ꜽ',
+  'Ꜿ' => 'ꜿ',
+  'Ꝁ' => 'ꝁ',
+  'Ꝃ' => 'ꝃ',
+  'Ꝅ' => 'ꝅ',
+  'Ꝇ' => 'ꝇ',
+  'Ꝉ' => 'ꝉ',
+  'Ꝋ' => 'ꝋ',
+  'Ꝍ' => 'ꝍ',
+  'Ꝏ' => 'ꝏ',
+  'Ꝑ' => 'ꝑ',
+  'Ꝓ' => 'ꝓ',
+  'Ꝕ' => 'ꝕ',
+  'Ꝗ' => 'ꝗ',
+  'Ꝙ' => 'ꝙ',
+  'Ꝛ' => 'ꝛ',
+  'Ꝝ' => 'ꝝ',
+  'Ꝟ' => 'ꝟ',
+  'Ꝡ' => 'ꝡ',
+  'Ꝣ' => 'ꝣ',
+  'Ꝥ' => 'ꝥ',
+  'Ꝧ' => 'ꝧ',
+  'Ꝩ' => 'ꝩ',
+  'Ꝫ' => 'ꝫ',
+  'Ꝭ' => 'ꝭ',
+  'Ꝯ' => 'ꝯ',
+  'Ꝺ' => 'ꝺ',
+  'Ꝼ' => 'ꝼ',
+  'Ᵹ' => 'ᵹ',
+  'Ꝿ' => 'ꝿ',
+  'Ꞁ' => 'ꞁ',
+  'Ꞃ' => 'ꞃ',
+  'Ꞅ' => 'ꞅ',
+  'Ꞇ' => 'ꞇ',
+  'Ꞌ' => 'ꞌ',
+  'Ɥ' => 'ɥ',
+  'Ꞑ' => 'ꞑ',
+  'Ꞓ' => 'ꞓ',
+  'Ꞗ' => 'ꞗ',
+  'Ꞙ' => 'ꞙ',
+  'Ꞛ' => 'ꞛ',
+  'Ꞝ' => 'ꞝ',
+  'Ꞟ' => 'ꞟ',
+  'Ꞡ' => 'ꞡ',
+  'Ꞣ' => 'ꞣ',
+  'Ꞥ' => 'ꞥ',
+  'Ꞧ' => 'ꞧ',
+  'Ꞩ' => 'ꞩ',
+  'Ɦ' => 'ɦ',
+  'Ɜ' => 'ɜ',
+  'Ɡ' => 'ɡ',
+  'Ɬ' => 'ɬ',
+  'Ɪ' => 'ɪ',
+  'Ʞ' => 'ʞ',
+  'Ʇ' => 'ʇ',
+  'Ʝ' => 'ʝ',
+  'Ꭓ' => 'ꭓ',
+  'Ꞵ' => 'ꞵ',
+  'Ꞷ' => 'ꞷ',
+  'Ꞹ' => 'ꞹ',
+  'Ꞻ' => 'ꞻ',
+  'Ꞽ' => 'ꞽ',
+  'Ꞿ' => 'ꞿ',
+  'Ꟃ' => 'ꟃ',
+  'Ꞔ' => 'ꞔ',
+  'Ʂ' => 'ʂ',
+  'Ᶎ' => 'ᶎ',
+  'Ꟈ' => 'ꟈ',
+  'Ꟊ' => 'ꟊ',
+  'Ꟶ' => 'ꟶ',
+  'Ａ' => 'ａ',
+  'Ｂ' => 'ｂ',
+  'Ｃ' => 'ｃ',
+  'Ｄ' => 'ｄ',
+  'Ｅ' => 'ｅ',
+  'Ｆ' => 'ｆ',
+  'Ｇ' => 'ｇ',
+  'Ｈ' => 'ｈ',
+  'Ｉ' => 'ｉ',
+  'Ｊ' => 'ｊ',
+  'Ｋ' => 'ｋ',
+  'Ｌ' => 'ｌ',
+  'Ｍ' => 'ｍ',
+  'Ｎ' => 'ｎ',
+  'Ｏ' => 'ｏ',
+  'Ｐ' => 'ｐ',
+  'Ｑ' => 'ｑ',
+  'Ｒ' => 'ｒ',
+  'Ｓ' => 'ｓ',
+  'Ｔ' => 'ｔ',
+  'Ｕ' => 'ｕ',
+  'Ｖ' => 'ｖ',
+  'Ｗ' => 'ｗ',
+  'Ｘ' => 'ｘ',
+  'Ｙ' => 'ｙ',
+  'Ｚ' => 'ｚ',
+  '𐐀' => '𐐨',
+  '𐐁' => '𐐩',
+  '𐐂' => '𐐪',
+  '𐐃' => '𐐫',
+  '𐐄' => '𐐬',
+  '𐐅' => '𐐭',
+  '𐐆' => '𐐮',
+  '𐐇' => '𐐯',
+  '𐐈' => '𐐰',
+  '𐐉' => '𐐱',
+  '𐐊' => '𐐲',
+  '𐐋' => '𐐳',
+  '𐐌' => '𐐴',
+  '𐐍' => '𐐵',
+  '𐐎' => '𐐶',
+  '𐐏' => '𐐷',
+  '𐐐' => '𐐸',
+  '𐐑' => '𐐹',
+  '𐐒' => '𐐺',
+  '𐐓' => '𐐻',
+  '𐐔' => '𐐼',
+  '𐐕' => '𐐽',
+  '𐐖' => '𐐾',
+  '𐐗' => '𐐿',
+  '𐐘' => '𐑀',
+  '𐐙' => '𐑁',
+  '𐐚' => '𐑂',
+  '𐐛' => '𐑃',
+  '𐐜' => '𐑄',
+  '𐐝' => '𐑅',
+  '𐐞' => '𐑆',
+  '𐐟' => '𐑇',
+  '𐐠' => '𐑈',
+  '𐐡' => '𐑉',
+  '𐐢' => '𐑊',
+  '𐐣' => '𐑋',
+  '𐐤' => '𐑌',
+  '𐐥' => '𐑍',
+  '𐐦' => '𐑎',
+  '𐐧' => '𐑏',
+  '𐒰' => '𐓘',
+  '𐒱' => '𐓙',
+  '𐒲' => '𐓚',
+  '𐒳' => '𐓛',
+  '𐒴' => '𐓜',
+  '𐒵' => '𐓝',
+  '𐒶' => '𐓞',
+  '𐒷' => '𐓟',
+  '𐒸' => '𐓠',
+  '𐒹' => '𐓡',
+  '𐒺' => '𐓢',
+  '𐒻' => '𐓣',
+  '𐒼' => '𐓤',
+  '𐒽' => '𐓥',
+  '𐒾' => '𐓦',
+  '𐒿' => '𐓧',
+  '𐓀' => '𐓨',
+  '𐓁' => '𐓩',
+  '𐓂' => '𐓪',
+  '𐓃' => '𐓫',
+  '𐓄' => '𐓬',
+  '𐓅' => '𐓭',
+  '𐓆' => '𐓮',
+  '𐓇' => '𐓯',
+  '𐓈' => '𐓰',
+  '𐓉' => '𐓱',
+  '𐓊' => '𐓲',
+  '𐓋' => '𐓳',
+  '𐓌' => '𐓴',
+  '𐓍' => '𐓵',
+  '𐓎' => '𐓶',
+  '𐓏' => '𐓷',
+  '𐓐' => '𐓸',
+  '𐓑' => '𐓹',
+  '𐓒' => '𐓺',
+  '𐓓' => '𐓻',
+  '𐲀' => '𐳀',
+  '𐲁' => '𐳁',
+  '𐲂' => '𐳂',
+  '𐲃' => '𐳃',
+  '𐲄' => '𐳄',
+  '𐲅' => '𐳅',
+  '𐲆' => '𐳆',
+  '𐲇' => '𐳇',
+  '𐲈' => '𐳈',
+  '𐲉' => '𐳉',
+  '𐲊' => '𐳊',
+  '𐲋' => '𐳋',
+  '𐲌' => '𐳌',
+  '𐲍' => '𐳍',
+  '𐲎' => '𐳎',
+  '𐲏' => '𐳏',
+  '𐲐' => '𐳐',
+  '𐲑' => '𐳑',
+  '𐲒' => '𐳒',
+  '𐲓' => '𐳓',
+  '𐲔' => '𐳔',
+  '𐲕' => '𐳕',
+  '𐲖' => '𐳖',
+  '𐲗' => '𐳗',
+  '𐲘' => '𐳘',
+  '𐲙' => '𐳙',
+  '𐲚' => '𐳚',
+  '𐲛' => '𐳛',
+  '𐲜' => '𐳜',
+  '𐲝' => '𐳝',
+  '𐲞' => '𐳞',
+  '𐲟' => '𐳟',
+  '𐲠' => '𐳠',
+  '𐲡' => '𐳡',
+  '𐲢' => '𐳢',
+  '𐲣' => '𐳣',
+  '𐲤' => '𐳤',
+  '𐲥' => '𐳥',
+  '𐲦' => '𐳦',
+  '𐲧' => '𐳧',
+  '𐲨' => '𐳨',
+  '𐲩' => '𐳩',
+  '𐲪' => '𐳪',
+  '𐲫' => '𐳫',
+  '𐲬' => '𐳬',
+  '𐲭' => '𐳭',
+  '𐲮' => '𐳮',
+  '𐲯' => '𐳯',
+  '𐲰' => '𐳰',
+  '𐲱' => '𐳱',
+  '𐲲' => '𐳲',
+  '𑢠' => '𑣀',
+  '𑢡' => '𑣁',
+  '𑢢' => '𑣂',
+  '𑢣' => '𑣃',
+  '𑢤' => '𑣄',
+  '𑢥' => '𑣅',
+  '𑢦' => '𑣆',
+  '𑢧' => '𑣇',
+  '𑢨' => '𑣈',
+  '𑢩' => '𑣉',
+  '𑢪' => '𑣊',
+  '𑢫' => '𑣋',
+  '𑢬' => '𑣌',
+  '𑢭' => '𑣍',
+  '𑢮' => '𑣎',
+  '𑢯' => '𑣏',
+  '𑢰' => '𑣐',
+  '𑢱' => '𑣑',
+  '𑢲' => '𑣒',
+  '𑢳' => '𑣓',
+  '𑢴' => '𑣔',
+  '𑢵' => '𑣕',
+  '𑢶' => '𑣖',
+  '𑢷' => '𑣗',
+  '𑢸' => '𑣘',
+  '𑢹' => '𑣙',
+  '𑢺' => '𑣚',
+  '𑢻' => '𑣛',
+  '𑢼' => '𑣜',
+  '𑢽' => '𑣝',
+  '𑢾' => '𑣞',
+  '𑢿' => '𑣟',
+  '𖹀' => '𖹠',
+  '𖹁' => '𖹡',
+  '𖹂' => '𖹢',
+  '𖹃' => '𖹣',
+  '𖹄' => '𖹤',
+  '𖹅' => '𖹥',
+  '𖹆' => '𖹦',
+  '𖹇' => '𖹧',
+  '𖹈' => '𖹨',
+  '𖹉' => '𖹩',
+  '𖹊' => '𖹪',
+  '𖹋' => '𖹫',
+  '𖹌' => '𖹬',
+  '𖹍' => '𖹭',
+  '𖹎' => '𖹮',
+  '𖹏' => '𖹯',
+  '𖹐' => '𖹰',
+  '𖹑' => '𖹱',
+  '𖹒' => '𖹲',
+  '𖹓' => '𖹳',
+  '𖹔' => '𖹴',
+  '𖹕' => '𖹵',
+  '𖹖' => '𖹶',
+  '𖹗' => '𖹷',
+  '𖹘' => '𖹸',
+  '𖹙' => '𖹹',
+  '𖹚' => '𖹺',
+  '𖹛' => '𖹻',
+  '𖹜' => '𖹼',
+  '𖹝' => '𖹽',
+  '𖹞' => '𖹾',
+  '𖹟' => '𖹿',
+  '𞤀' => '𞤢',
+  '𞤁' => '𞤣',
+  '𞤂' => '𞤤',
+  '𞤃' => '𞤥',
+  '𞤄' => '𞤦',
+  '𞤅' => '𞤧',
+  '𞤆' => '𞤨',
+  '𞤇' => '𞤩',
+  '𞤈' => '𞤪',
+  '𞤉' => '𞤫',
+  '𞤊' => '𞤬',
+  '𞤋' => '𞤭',
+  '𞤌' => '𞤮',
+  '𞤍' => '𞤯',
+  '𞤎' => '𞤰',
+  '𞤏' => '𞤱',
+  '𞤐' => '𞤲',
+  '𞤑' => '𞤳',
+  '𞤒' => '𞤴',
+  '𞤓' => '𞤵',
+  '𞤔' => '𞤶',
+  '𞤕' => '𞤷',
+  '𞤖' => '𞤸',
+  '𞤗' => '𞤹',
+  '𞤘' => '𞤺',
+  '𞤙' => '𞤻',
+  '𞤚' => '𞤼',
+  '𞤛' => '𞤽',
+  '𞤜' => '𞤾',
+  '𞤝' => '𞤿',
+  '𞤞' => '𞥀',
+  '𞤟' => '𞥁',
+  '𞤠' => '𞥂',
+  '𞤡' => '𞥃',
+);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php
new file mode 100644
index 0000000..2a8f6e7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php
@@ -0,0 +1,5 @@
+<?php
+
+// from Case_Ignorable in https://unicode.org/Public/UNIDATA/DerivedCoreProperties.txt
+
+return '/(?<![\x{0027}\x{002E}\x{003A}\x{005E}\x{0060}\x{00A8}\x{00AD}\x{00AF}\x{00B4}\x{00B7}\x{00B8}\x{02B0}-\x{02C1}\x{02C2}-\x{02C5}\x{02C6}-\x{02D1}\x{02D2}-\x{02DF}\x{02E0}-\x{02E4}\x{02E5}-\x{02EB}\x{02EC}\x{02ED}\x{02EE}\x{02EF}-\x{02FF}\x{0300}-\x{036F}\x{0374}\x{0375}\x{037A}\x{0384}-\x{0385}\x{0387}\x{0483}-\x{0487}\x{0488}-\x{0489}\x{0559}\x{0591}-\x{05BD}\x{05BF}\x{05C1}-\x{05C2}\x{05C4}-\x{05C5}\x{05C7}\x{05F4}\x{0600}-\x{0605}\x{0610}-\x{061A}\x{061C}\x{0640}\x{064B}-\x{065F}\x{0670}\x{06D6}-\x{06DC}\x{06DD}\x{06DF}-\x{06E4}\x{06E5}-\x{06E6}\x{06E7}-\x{06E8}\x{06EA}-\x{06ED}\x{070F}\x{0711}\x{0730}-\x{074A}\x{07A6}-\x{07B0}\x{07EB}-\x{07F3}\x{07F4}-\x{07F5}\x{07FA}\x{07FD}\x{0816}-\x{0819}\x{081A}\x{081B}-\x{0823}\x{0824}\x{0825}-\x{0827}\x{0828}\x{0829}-\x{082D}\x{0859}-\x{085B}\x{08D3}-\x{08E1}\x{08E2}\x{08E3}-\x{0902}\x{093A}\x{093C}\x{0941}-\x{0948}\x{094D}\x{0951}-\x{0957}\x{0962}-\x{0963}\x{0971}\x{0981}\x{09BC}\x{09C1}-\x{09C4}\x{09CD}\x{09E2}-\x{09E3}\x{09FE}\x{0A01}-\x{0A02}\x{0A3C}\x{0A41}-\x{0A42}\x{0A47}-\x{0A48}\x{0A4B}-\x{0A4D}\x{0A51}\x{0A70}-\x{0A71}\x{0A75}\x{0A81}-\x{0A82}\x{0ABC}\x{0AC1}-\x{0AC5}\x{0AC7}-\x{0AC8}\x{0ACD}\x{0AE2}-\x{0AE3}\x{0AFA}-\x{0AFF}\x{0B01}\x{0B3C}\x{0B3F}\x{0B41}-\x{0B44}\x{0B4D}\x{0B56}\x{0B62}-\x{0B63}\x{0B82}\x{0BC0}\x{0BCD}\x{0C00}\x{0C04}\x{0C3E}-\x{0C40}\x{0C46}-\x{0C48}\x{0C4A}-\x{0C4D}\x{0C55}-\x{0C56}\x{0C62}-\x{0C63}\x{0C81}\x{0CBC}\x{0CBF}\x{0CC6}\x{0CCC}-\x{0CCD}\x{0CE2}-\x{0CE3}\x{0D00}-\x{0D01}\x{0D3B}-\x{0D3C}\x{0D41}-\x{0D44}\x{0D4D}\x{0D62}-\x{0D63}\x{0DCA}\x{0DD2}-\x{0DD4}\x{0DD6}\x{0E31}\x{0E34}-\x{0E3A}\x{0E46}\x{0E47}-\x{0E4E}\x{0EB1}\x{0EB4}-\x{0EB9}\x{0EBB}-\x{0EBC}\x{0EC6}\x{0EC8}-\x{0ECD}\x{0F18}-\x{0F19}\x{0F35}\x{0F37}\x{0F39}\x{0F71}-\x{0F7E}\x{0F80}-\x{0F84}\x{0F86}-\x{0F87}\x{0F8D}-\x{0F97}\x{0F99}-\x{0FBC}\x{0FC6}\x{102D}-\x{1030}\x{1032}-\x{1037}\x{1039}-\x{103A}\x{103D}-\x{103E}\x{1058}-\x{1059}\x{105E}-\x{1060}\x{1071}-\x{1074}\x{1082}\x{1085}-\x{1086}\x{108D}\x{109D}\x{10FC}\x{135D}-\x{135F}\x{1712}-\x{1714}\x{1732}-\x{1734}\x{1752}-\x{1753}\x{1772}-\x{1773}\x{17B4}-\x{17B5}\x{17B7}-\x{17BD}\x{17C6}\x{17C9}-\x{17D3}\x{17D7}\x{17DD}\x{180B}-\x{180D}\x{180E}\x{1843}\x{1885}-\x{1886}\x{18A9}\x{1920}-\x{1922}\x{1927}-\x{1928}\x{1932}\x{1939}-\x{193B}\x{1A17}-\x{1A18}\x{1A1B}\x{1A56}\x{1A58}-\x{1A5E}\x{1A60}\x{1A62}\x{1A65}-\x{1A6C}\x{1A73}-\x{1A7C}\x{1A7F}\x{1AA7}\x{1AB0}-\x{1ABD}\x{1ABE}\x{1B00}-\x{1B03}\x{1B34}\x{1B36}-\x{1B3A}\x{1B3C}\x{1B42}\x{1B6B}-\x{1B73}\x{1B80}-\x{1B81}\x{1BA2}-\x{1BA5}\x{1BA8}-\x{1BA9}\x{1BAB}-\x{1BAD}\x{1BE6}\x{1BE8}-\x{1BE9}\x{1BED}\x{1BEF}-\x{1BF1}\x{1C2C}-\x{1C33}\x{1C36}-\x{1C37}\x{1C78}-\x{1C7D}\x{1CD0}-\x{1CD2}\x{1CD4}-\x{1CE0}\x{1CE2}-\x{1CE8}\x{1CED}\x{1CF4}\x{1CF8}-\x{1CF9}\x{1D2C}-\x{1D6A}\x{1D78}\x{1D9B}-\x{1DBF}\x{1DC0}-\x{1DF9}\x{1DFB}-\x{1DFF}\x{1FBD}\x{1FBF}-\x{1FC1}\x{1FCD}-\x{1FCF}\x{1FDD}-\x{1FDF}\x{1FED}-\x{1FEF}\x{1FFD}-\x{1FFE}\x{200B}-\x{200F}\x{2018}\x{2019}\x{2024}\x{2027}\x{202A}-\x{202E}\x{2060}-\x{2064}\x{2066}-\x{206F}\x{2071}\x{207F}\x{2090}-\x{209C}\x{20D0}-\x{20DC}\x{20DD}-\x{20E0}\x{20E1}\x{20E2}-\x{20E4}\x{20E5}-\x{20F0}\x{2C7C}-\x{2C7D}\x{2CEF}-\x{2CF1}\x{2D6F}\x{2D7F}\x{2DE0}-\x{2DFF}\x{2E2F}\x{3005}\x{302A}-\x{302D}\x{3031}-\x{3035}\x{303B}\x{3099}-\x{309A}\x{309B}-\x{309C}\x{309D}-\x{309E}\x{30FC}-\x{30FE}\x{A015}\x{A4F8}-\x{A4FD}\x{A60C}\x{A66F}\x{A670}-\x{A672}\x{A674}-\x{A67D}\x{A67F}\x{A69C}-\x{A69D}\x{A69E}-\x{A69F}\x{A6F0}-\x{A6F1}\x{A700}-\x{A716}\x{A717}-\x{A71F}\x{A720}-\x{A721}\x{A770}\x{A788}\x{A789}-\x{A78A}\x{A7F8}-\x{A7F9}\x{A802}\x{A806}\x{A80B}\x{A825}-\x{A826}\x{A8C4}-\x{A8C5}\x{A8E0}-\x{A8F1}\x{A8FF}\x{A926}-\x{A92D}\x{A947}-\x{A951}\x{A980}-\x{A982}\x{A9B3}\x{A9B6}-\x{A9B9}\x{A9BC}\x{A9CF}\x{A9E5}\x{A9E6}\x{AA29}-\x{AA2E}\x{AA31}-\x{AA32}\x{AA35}-\x{AA36}\x{AA43}\x{AA4C}\x{AA70}\x{AA7C}\x{AAB0}\x{AAB2}-\x{AAB4}\x{AAB7}-\x{AAB8}\x{AABE}-\x{AABF}\x{AAC1}\x{AADD}\x{AAEC}-\x{AAED}\x{AAF3}-\x{AAF4}\x{AAF6}\x{AB5B}\x{AB5C}-\x{AB5F}\x{ABE5}\x{ABE8}\x{ABED}\x{FB1E}\x{FBB2}-\x{FBC1}\x{FE00}-\x{FE0F}\x{FE13}\x{FE20}-\x{FE2F}\x{FE52}\x{FE55}\x{FEFF}\x{FF07}\x{FF0E}\x{FF1A}\x{FF3E}\x{FF40}\x{FF70}\x{FF9E}-\x{FF9F}\x{FFE3}\x{FFF9}-\x{FFFB}\x{101FD}\x{102E0}\x{10376}-\x{1037A}\x{10A01}-\x{10A03}\x{10A05}-\x{10A06}\x{10A0C}-\x{10A0F}\x{10A38}-\x{10A3A}\x{10A3F}\x{10AE5}-\x{10AE6}\x{10D24}-\x{10D27}\x{10F46}-\x{10F50}\x{11001}\x{11038}-\x{11046}\x{1107F}-\x{11081}\x{110B3}-\x{110B6}\x{110B9}-\x{110BA}\x{110BD}\x{110CD}\x{11100}-\x{11102}\x{11127}-\x{1112B}\x{1112D}-\x{11134}\x{11173}\x{11180}-\x{11181}\x{111B6}-\x{111BE}\x{111C9}-\x{111CC}\x{1122F}-\x{11231}\x{11234}\x{11236}-\x{11237}\x{1123E}\x{112DF}\x{112E3}-\x{112EA}\x{11300}-\x{11301}\x{1133B}-\x{1133C}\x{11340}\x{11366}-\x{1136C}\x{11370}-\x{11374}\x{11438}-\x{1143F}\x{11442}-\x{11444}\x{11446}\x{1145E}\x{114B3}-\x{114B8}\x{114BA}\x{114BF}-\x{114C0}\x{114C2}-\x{114C3}\x{115B2}-\x{115B5}\x{115BC}-\x{115BD}\x{115BF}-\x{115C0}\x{115DC}-\x{115DD}\x{11633}-\x{1163A}\x{1163D}\x{1163F}-\x{11640}\x{116AB}\x{116AD}\x{116B0}-\x{116B5}\x{116B7}\x{1171D}-\x{1171F}\x{11722}-\x{11725}\x{11727}-\x{1172B}\x{1182F}-\x{11837}\x{11839}-\x{1183A}\x{11A01}-\x{11A0A}\x{11A33}-\x{11A38}\x{11A3B}-\x{11A3E}\x{11A47}\x{11A51}-\x{11A56}\x{11A59}-\x{11A5B}\x{11A8A}-\x{11A96}\x{11A98}-\x{11A99}\x{11C30}-\x{11C36}\x{11C38}-\x{11C3D}\x{11C3F}\x{11C92}-\x{11CA7}\x{11CAA}-\x{11CB0}\x{11CB2}-\x{11CB3}\x{11CB5}-\x{11CB6}\x{11D31}-\x{11D36}\x{11D3A}\x{11D3C}-\x{11D3D}\x{11D3F}-\x{11D45}\x{11D47}\x{11D90}-\x{11D91}\x{11D95}\x{11D97}\x{11EF3}-\x{11EF4}\x{16AF0}-\x{16AF4}\x{16B30}-\x{16B36}\x{16B40}-\x{16B43}\x{16F8F}-\x{16F92}\x{16F93}-\x{16F9F}\x{16FE0}-\x{16FE1}\x{1BC9D}-\x{1BC9E}\x{1BCA0}-\x{1BCA3}\x{1D167}-\x{1D169}\x{1D173}-\x{1D17A}\x{1D17B}-\x{1D182}\x{1D185}-\x{1D18B}\x{1D1AA}-\x{1D1AD}\x{1D242}-\x{1D244}\x{1DA00}-\x{1DA36}\x{1DA3B}-\x{1DA6C}\x{1DA75}\x{1DA84}\x{1DA9B}-\x{1DA9F}\x{1DAA1}-\x{1DAAF}\x{1E000}-\x{1E006}\x{1E008}-\x{1E018}\x{1E01B}-\x{1E021}\x{1E023}-\x{1E024}\x{1E026}-\x{1E02A}\x{1E8D0}-\x{1E8D6}\x{1E944}-\x{1E94A}\x{1F3FB}-\x{1F3FF}\x{E0001}\x{E0020}-\x{E007F}\x{E0100}-\x{E01EF}])(\pL)(\pL*+)/u';
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php
new file mode 100644
index 0000000..56b9cb8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php
@@ -0,0 +1,1489 @@
+<?php
+
+return array (
+  'a' => 'A',
+  'b' => 'B',
+  'c' => 'C',
+  'd' => 'D',
+  'e' => 'E',
+  'f' => 'F',
+  'g' => 'G',
+  'h' => 'H',
+  'i' => 'I',
+  'j' => 'J',
+  'k' => 'K',
+  'l' => 'L',
+  'm' => 'M',
+  'n' => 'N',
+  'o' => 'O',
+  'p' => 'P',
+  'q' => 'Q',
+  'r' => 'R',
+  's' => 'S',
+  't' => 'T',
+  'u' => 'U',
+  'v' => 'V',
+  'w' => 'W',
+  'x' => 'X',
+  'y' => 'Y',
+  'z' => 'Z',
+  'µ' => 'Μ',
+  'à' => 'À',
+  'á' => 'Á',
+  'â' => 'Â',
+  'ã' => 'Ã',
+  'ä' => 'Ä',
+  'å' => 'Å',
+  'æ' => 'Æ',
+  'ç' => 'Ç',
+  'è' => 'È',
+  'é' => 'É',
+  'ê' => 'Ê',
+  'ë' => 'Ë',
+  'ì' => 'Ì',
+  'í' => 'Í',
+  'î' => 'Î',
+  'ï' => 'Ï',
+  'ð' => 'Ð',
+  'ñ' => 'Ñ',
+  'ò' => 'Ò',
+  'ó' => 'Ó',
+  'ô' => 'Ô',
+  'õ' => 'Õ',
+  'ö' => 'Ö',
+  'ø' => 'Ø',
+  'ù' => 'Ù',
+  'ú' => 'Ú',
+  'û' => 'Û',
+  'ü' => 'Ü',
+  'ý' => 'Ý',
+  'þ' => 'Þ',
+  'ÿ' => 'Ÿ',
+  'ā' => 'Ā',
+  'ă' => 'Ă',
+  'ą' => 'Ą',
+  'ć' => 'Ć',
+  'ĉ' => 'Ĉ',
+  'ċ' => 'Ċ',
+  'č' => 'Č',
+  'ď' => 'Ď',
+  'đ' => 'Đ',
+  'ē' => 'Ē',
+  'ĕ' => 'Ĕ',
+  'ė' => 'Ė',
+  'ę' => 'Ę',
+  'ě' => 'Ě',
+  'ĝ' => 'Ĝ',
+  'ğ' => 'Ğ',
+  'ġ' => 'Ġ',
+  'ģ' => 'Ģ',
+  'ĥ' => 'Ĥ',
+  'ħ' => 'Ħ',
+  'ĩ' => 'Ĩ',
+  'ī' => 'Ī',
+  'ĭ' => 'Ĭ',
+  'į' => 'Į',
+  'ı' => 'I',
+  'ĳ' => 'Ĳ',
+  'ĵ' => 'Ĵ',
+  'ķ' => 'Ķ',
+  'ĺ' => 'Ĺ',
+  'ļ' => 'Ļ',
+  'ľ' => 'Ľ',
+  'ŀ' => 'Ŀ',
+  'ł' => 'Ł',
+  'ń' => 'Ń',
+  'ņ' => 'Ņ',
+  'ň' => 'Ň',
+  'ŋ' => 'Ŋ',
+  'ō' => 'Ō',
+  'ŏ' => 'Ŏ',
+  'ő' => 'Ő',
+  'œ' => 'Œ',
+  'ŕ' => 'Ŕ',
+  'ŗ' => 'Ŗ',
+  'ř' => 'Ř',
+  'ś' => 'Ś',
+  'ŝ' => 'Ŝ',
+  'ş' => 'Ş',
+  'š' => 'Š',
+  'ţ' => 'Ţ',
+  'ť' => 'Ť',
+  'ŧ' => 'Ŧ',
+  'ũ' => 'Ũ',
+  'ū' => 'Ū',
+  'ŭ' => 'Ŭ',
+  'ů' => 'Ů',
+  'ű' => 'Ű',
+  'ų' => 'Ų',
+  'ŵ' => 'Ŵ',
+  'ŷ' => 'Ŷ',
+  'ź' => 'Ź',
+  'ż' => 'Ż',
+  'ž' => 'Ž',
+  'ſ' => 'S',
+  'ƀ' => 'Ƀ',
+  'ƃ' => 'Ƃ',
+  'ƅ' => 'Ƅ',
+  'ƈ' => 'Ƈ',
+  'ƌ' => 'Ƌ',
+  'ƒ' => 'Ƒ',
+  'ƕ' => 'Ƕ',
+  'ƙ' => 'Ƙ',
+  'ƚ' => 'Ƚ',
+  'ƞ' => 'Ƞ',
+  'ơ' => 'Ơ',
+  'ƣ' => 'Ƣ',
+  'ƥ' => 'Ƥ',
+  'ƨ' => 'Ƨ',
+  'ƭ' => 'Ƭ',
+  'ư' => 'Ư',
+  'ƴ' => 'Ƴ',
+  'ƶ' => 'Ƶ',
+  'ƹ' => 'Ƹ',
+  'ƽ' => 'Ƽ',
+  'ƿ' => 'Ƿ',
+  'ǅ' => 'Ǆ',
+  'ǆ' => 'Ǆ',
+  'ǈ' => 'Ǉ',
+  'ǉ' => 'Ǉ',
+  'ǋ' => 'Ǌ',
+  'ǌ' => 'Ǌ',
+  'ǎ' => 'Ǎ',
+  'ǐ' => 'Ǐ',
+  'ǒ' => 'Ǒ',
+  'ǔ' => 'Ǔ',
+  'ǖ' => 'Ǖ',
+  'ǘ' => 'Ǘ',
+  'ǚ' => 'Ǚ',
+  'ǜ' => 'Ǜ',
+  'ǝ' => 'Ǝ',
+  'ǟ' => 'Ǟ',
+  'ǡ' => 'Ǡ',
+  'ǣ' => 'Ǣ',
+  'ǥ' => 'Ǥ',
+  'ǧ' => 'Ǧ',
+  'ǩ' => 'Ǩ',
+  'ǫ' => 'Ǫ',
+  'ǭ' => 'Ǭ',
+  'ǯ' => 'Ǯ',
+  'ǲ' => 'Ǳ',
+  'ǳ' => 'Ǳ',
+  'ǵ' => 'Ǵ',
+  'ǹ' => 'Ǹ',
+  'ǻ' => 'Ǻ',
+  'ǽ' => 'Ǽ',
+  'ǿ' => 'Ǿ',
+  'ȁ' => 'Ȁ',
+  'ȃ' => 'Ȃ',
+  'ȅ' => 'Ȅ',
+  'ȇ' => 'Ȇ',
+  'ȉ' => 'Ȉ',
+  'ȋ' => 'Ȋ',
+  'ȍ' => 'Ȍ',
+  'ȏ' => 'Ȏ',
+  'ȑ' => 'Ȑ',
+  'ȓ' => 'Ȓ',
+  'ȕ' => 'Ȕ',
+  'ȗ' => 'Ȗ',
+  'ș' => 'Ș',
+  'ț' => 'Ț',
+  'ȝ' => 'Ȝ',
+  'ȟ' => 'Ȟ',
+  'ȣ' => 'Ȣ',
+  'ȥ' => 'Ȥ',
+  'ȧ' => 'Ȧ',
+  'ȩ' => 'Ȩ',
+  'ȫ' => 'Ȫ',
+  'ȭ' => 'Ȭ',
+  'ȯ' => 'Ȯ',
+  'ȱ' => 'Ȱ',
+  'ȳ' => 'Ȳ',
+  'ȼ' => 'Ȼ',
+  'ȿ' => 'Ȿ',
+  'ɀ' => 'Ɀ',
+  'ɂ' => 'Ɂ',
+  'ɇ' => 'Ɇ',
+  'ɉ' => 'Ɉ',
+  'ɋ' => 'Ɋ',
+  'ɍ' => 'Ɍ',
+  'ɏ' => 'Ɏ',
+  'ɐ' => 'Ɐ',
+  'ɑ' => 'Ɑ',
+  'ɒ' => 'Ɒ',
+  'ɓ' => 'Ɓ',
+  'ɔ' => 'Ɔ',
+  'ɖ' => 'Ɖ',
+  'ɗ' => 'Ɗ',
+  'ə' => 'Ə',
+  'ɛ' => 'Ɛ',
+  'ɜ' => 'Ɜ',
+  'ɠ' => 'Ɠ',
+  'ɡ' => 'Ɡ',
+  'ɣ' => 'Ɣ',
+  'ɥ' => 'Ɥ',
+  'ɦ' => 'Ɦ',
+  'ɨ' => 'Ɨ',
+  'ɩ' => 'Ɩ',
+  'ɪ' => 'Ɪ',
+  'ɫ' => 'Ɫ',
+  'ɬ' => 'Ɬ',
+  'ɯ' => 'Ɯ',
+  'ɱ' => 'Ɱ',
+  'ɲ' => 'Ɲ',
+  'ɵ' => 'Ɵ',
+  'ɽ' => 'Ɽ',
+  'ʀ' => 'Ʀ',
+  'ʂ' => 'Ʂ',
+  'ʃ' => 'Ʃ',
+  'ʇ' => 'Ʇ',
+  'ʈ' => 'Ʈ',
+  'ʉ' => 'Ʉ',
+  'ʊ' => 'Ʊ',
+  'ʋ' => 'Ʋ',
+  'ʌ' => 'Ʌ',
+  'ʒ' => 'Ʒ',
+  'ʝ' => 'Ʝ',
+  'ʞ' => 'Ʞ',
+  'ͅ' => 'Ι',
+  'ͱ' => 'Ͱ',
+  'ͳ' => 'Ͳ',
+  'ͷ' => 'Ͷ',
+  'ͻ' => 'Ͻ',
+  'ͼ' => 'Ͼ',
+  'ͽ' => 'Ͽ',
+  'ά' => 'Ά',
+  'έ' => 'Έ',
+  'ή' => 'Ή',
+  'ί' => 'Ί',
+  'α' => 'Α',
+  'β' => 'Β',
+  'γ' => 'Γ',
+  'δ' => 'Δ',
+  'ε' => 'Ε',
+  'ζ' => 'Ζ',
+  'η' => 'Η',
+  'θ' => 'Θ',
+  'ι' => 'Ι',
+  'κ' => 'Κ',
+  'λ' => 'Λ',
+  'μ' => 'Μ',
+  'ν' => 'Ν',
+  'ξ' => 'Ξ',
+  'ο' => 'Ο',
+  'π' => 'Π',
+  'ρ' => 'Ρ',
+  'ς' => 'Σ',
+  'σ' => 'Σ',
+  'τ' => 'Τ',
+  'υ' => 'Υ',
+  'φ' => 'Φ',
+  'χ' => 'Χ',
+  'ψ' => 'Ψ',
+  'ω' => 'Ω',
+  'ϊ' => 'Ϊ',
+  'ϋ' => 'Ϋ',
+  'ό' => 'Ό',
+  'ύ' => 'Ύ',
+  'ώ' => 'Ώ',
+  'ϐ' => 'Β',
+  'ϑ' => 'Θ',
+  'ϕ' => 'Φ',
+  'ϖ' => 'Π',
+  'ϗ' => 'Ϗ',
+  'ϙ' => 'Ϙ',
+  'ϛ' => 'Ϛ',
+  'ϝ' => 'Ϝ',
+  'ϟ' => 'Ϟ',
+  'ϡ' => 'Ϡ',
+  'ϣ' => 'Ϣ',
+  'ϥ' => 'Ϥ',
+  'ϧ' => 'Ϧ',
+  'ϩ' => 'Ϩ',
+  'ϫ' => 'Ϫ',
+  'ϭ' => 'Ϭ',
+  'ϯ' => 'Ϯ',
+  'ϰ' => 'Κ',
+  'ϱ' => 'Ρ',
+  'ϲ' => 'Ϲ',
+  'ϳ' => 'Ϳ',
+  'ϵ' => 'Ε',
+  'ϸ' => 'Ϸ',
+  'ϻ' => 'Ϻ',
+  'а' => 'А',
+  'б' => 'Б',
+  'в' => 'В',
+  'г' => 'Г',
+  'д' => 'Д',
+  'е' => 'Е',
+  'ж' => 'Ж',
+  'з' => 'З',
+  'и' => 'И',
+  'й' => 'Й',
+  'к' => 'К',
+  'л' => 'Л',
+  'м' => 'М',
+  'н' => 'Н',
+  'о' => 'О',
+  'п' => 'П',
+  'р' => 'Р',
+  'с' => 'С',
+  'т' => 'Т',
+  'у' => 'У',
+  'ф' => 'Ф',
+  'х' => 'Х',
+  'ц' => 'Ц',
+  'ч' => 'Ч',
+  'ш' => 'Ш',
+  'щ' => 'Щ',
+  'ъ' => 'Ъ',
+  'ы' => 'Ы',
+  'ь' => 'Ь',
+  'э' => 'Э',
+  'ю' => 'Ю',
+  'я' => 'Я',
+  'ѐ' => 'Ѐ',
+  'ё' => 'Ё',
+  'ђ' => 'Ђ',
+  'ѓ' => 'Ѓ',
+  'є' => 'Є',
+  'ѕ' => 'Ѕ',
+  'і' => 'І',
+  'ї' => 'Ї',
+  'ј' => 'Ј',
+  'љ' => 'Љ',
+  'њ' => 'Њ',
+  'ћ' => 'Ћ',
+  'ќ' => 'Ќ',
+  'ѝ' => 'Ѝ',
+  'ў' => 'Ў',
+  'џ' => 'Џ',
+  'ѡ' => 'Ѡ',
+  'ѣ' => 'Ѣ',
+  'ѥ' => 'Ѥ',
+  'ѧ' => 'Ѧ',
+  'ѩ' => 'Ѩ',
+  'ѫ' => 'Ѫ',
+  'ѭ' => 'Ѭ',
+  'ѯ' => 'Ѯ',
+  'ѱ' => 'Ѱ',
+  'ѳ' => 'Ѳ',
+  'ѵ' => 'Ѵ',
+  'ѷ' => 'Ѷ',
+  'ѹ' => 'Ѹ',
+  'ѻ' => 'Ѻ',
+  'ѽ' => 'Ѽ',
+  'ѿ' => 'Ѿ',
+  'ҁ' => 'Ҁ',
+  'ҋ' => 'Ҋ',
+  'ҍ' => 'Ҍ',
+  'ҏ' => 'Ҏ',
+  'ґ' => 'Ґ',
+  'ғ' => 'Ғ',
+  'ҕ' => 'Ҕ',
+  'җ' => 'Җ',
+  'ҙ' => 'Ҙ',
+  'қ' => 'Қ',
+  'ҝ' => 'Ҝ',
+  'ҟ' => 'Ҟ',
+  'ҡ' => 'Ҡ',
+  'ң' => 'Ң',
+  'ҥ' => 'Ҥ',
+  'ҧ' => 'Ҧ',
+  'ҩ' => 'Ҩ',
+  'ҫ' => 'Ҫ',
+  'ҭ' => 'Ҭ',
+  'ү' => 'Ү',
+  'ұ' => 'Ұ',
+  'ҳ' => 'Ҳ',
+  'ҵ' => 'Ҵ',
+  'ҷ' => 'Ҷ',
+  'ҹ' => 'Ҹ',
+  'һ' => 'Һ',
+  'ҽ' => 'Ҽ',
+  'ҿ' => 'Ҿ',
+  'ӂ' => 'Ӂ',
+  'ӄ' => 'Ӄ',
+  'ӆ' => 'Ӆ',
+  'ӈ' => 'Ӈ',
+  'ӊ' => 'Ӊ',
+  'ӌ' => 'Ӌ',
+  'ӎ' => 'Ӎ',
+  'ӏ' => 'Ӏ',
+  'ӑ' => 'Ӑ',
+  'ӓ' => 'Ӓ',
+  'ӕ' => 'Ӕ',
+  'ӗ' => 'Ӗ',
+  'ә' => 'Ә',
+  'ӛ' => 'Ӛ',
+  'ӝ' => 'Ӝ',
+  'ӟ' => 'Ӟ',
+  'ӡ' => 'Ӡ',
+  'ӣ' => 'Ӣ',
+  'ӥ' => 'Ӥ',
+  'ӧ' => 'Ӧ',
+  'ө' => 'Ө',
+  'ӫ' => 'Ӫ',
+  'ӭ' => 'Ӭ',
+  'ӯ' => 'Ӯ',
+  'ӱ' => 'Ӱ',
+  'ӳ' => 'Ӳ',
+  'ӵ' => 'Ӵ',
+  'ӷ' => 'Ӷ',
+  'ӹ' => 'Ӹ',
+  'ӻ' => 'Ӻ',
+  'ӽ' => 'Ӽ',
+  'ӿ' => 'Ӿ',
+  'ԁ' => 'Ԁ',
+  'ԃ' => 'Ԃ',
+  'ԅ' => 'Ԅ',
+  'ԇ' => 'Ԇ',
+  'ԉ' => 'Ԉ',
+  'ԋ' => 'Ԋ',
+  'ԍ' => 'Ԍ',
+  'ԏ' => 'Ԏ',
+  'ԑ' => 'Ԑ',
+  'ԓ' => 'Ԓ',
+  'ԕ' => 'Ԕ',
+  'ԗ' => 'Ԗ',
+  'ԙ' => 'Ԙ',
+  'ԛ' => 'Ԛ',
+  'ԝ' => 'Ԝ',
+  'ԟ' => 'Ԟ',
+  'ԡ' => 'Ԡ',
+  'ԣ' => 'Ԣ',
+  'ԥ' => 'Ԥ',
+  'ԧ' => 'Ԧ',
+  'ԩ' => 'Ԩ',
+  'ԫ' => 'Ԫ',
+  'ԭ' => 'Ԭ',
+  'ԯ' => 'Ԯ',
+  'ա' => 'Ա',
+  'բ' => 'Բ',
+  'գ' => 'Գ',
+  'դ' => 'Դ',
+  'ե' => 'Ե',
+  'զ' => 'Զ',
+  'է' => 'Է',
+  'ը' => 'Ը',
+  'թ' => 'Թ',
+  'ժ' => 'Ժ',
+  'ի' => 'Ի',
+  'լ' => 'Լ',
+  'խ' => 'Խ',
+  'ծ' => 'Ծ',
+  'կ' => 'Կ',
+  'հ' => 'Հ',
+  'ձ' => 'Ձ',
+  'ղ' => 'Ղ',
+  'ճ' => 'Ճ',
+  'մ' => 'Մ',
+  'յ' => 'Յ',
+  'ն' => 'Ն',
+  'շ' => 'Շ',
+  'ո' => 'Ո',
+  'չ' => 'Չ',
+  'պ' => 'Պ',
+  'ջ' => 'Ջ',
+  'ռ' => 'Ռ',
+  'ս' => 'Ս',
+  'վ' => 'Վ',
+  'տ' => 'Տ',
+  'ր' => 'Ր',
+  'ց' => 'Ց',
+  'ւ' => 'Ւ',
+  'փ' => 'Փ',
+  'ք' => 'Ք',
+  'օ' => 'Օ',
+  'ֆ' => 'Ֆ',
+  'ა' => 'Ა',
+  'ბ' => 'Ბ',
+  'გ' => 'Გ',
+  'დ' => 'Დ',
+  'ე' => 'Ე',
+  'ვ' => 'Ვ',
+  'ზ' => 'Ზ',
+  'თ' => 'Თ',
+  'ი' => 'Ი',
+  'კ' => 'Კ',
+  'ლ' => 'Ლ',
+  'მ' => 'Მ',
+  'ნ' => 'Ნ',
+  'ო' => 'Ო',
+  'პ' => 'Პ',
+  'ჟ' => 'Ჟ',
+  'რ' => 'Რ',
+  'ს' => 'Ს',
+  'ტ' => 'Ტ',
+  'უ' => 'Უ',
+  'ფ' => 'Ფ',
+  'ქ' => 'Ქ',
+  'ღ' => 'Ღ',
+  'ყ' => 'Ყ',
+  'შ' => 'Შ',
+  'ჩ' => 'Ჩ',
+  'ც' => 'Ც',
+  'ძ' => 'Ძ',
+  'წ' => 'Წ',
+  'ჭ' => 'Ჭ',
+  'ხ' => 'Ხ',
+  'ჯ' => 'Ჯ',
+  'ჰ' => 'Ჰ',
+  'ჱ' => 'Ჱ',
+  'ჲ' => 'Ჲ',
+  'ჳ' => 'Ჳ',
+  'ჴ' => 'Ჴ',
+  'ჵ' => 'Ჵ',
+  'ჶ' => 'Ჶ',
+  'ჷ' => 'Ჷ',
+  'ჸ' => 'Ჸ',
+  'ჹ' => 'Ჹ',
+  'ჺ' => 'Ჺ',
+  'ჽ' => 'Ჽ',
+  'ჾ' => 'Ჾ',
+  'ჿ' => 'Ჿ',
+  'ᏸ' => 'Ᏸ',
+  'ᏹ' => 'Ᏹ',
+  'ᏺ' => 'Ᏺ',
+  'ᏻ' => 'Ᏻ',
+  'ᏼ' => 'Ᏼ',
+  'ᏽ' => 'Ᏽ',
+  'ᲀ' => 'В',
+  'ᲁ' => 'Д',
+  'ᲂ' => 'О',
+  'ᲃ' => 'С',
+  'ᲄ' => 'Т',
+  'ᲅ' => 'Т',
+  'ᲆ' => 'Ъ',
+  'ᲇ' => 'Ѣ',
+  'ᲈ' => 'Ꙋ',
+  'ᵹ' => 'Ᵹ',
+  'ᵽ' => 'Ᵽ',
+  'ᶎ' => 'Ᶎ',
+  'ḁ' => 'Ḁ',
+  'ḃ' => 'Ḃ',
+  'ḅ' => 'Ḅ',
+  'ḇ' => 'Ḇ',
+  'ḉ' => 'Ḉ',
+  'ḋ' => 'Ḋ',
+  'ḍ' => 'Ḍ',
+  'ḏ' => 'Ḏ',
+  'ḑ' => 'Ḑ',
+  'ḓ' => 'Ḓ',
+  'ḕ' => 'Ḕ',
+  'ḗ' => 'Ḗ',
+  'ḙ' => 'Ḙ',
+  'ḛ' => 'Ḛ',
+  'ḝ' => 'Ḝ',
+  'ḟ' => 'Ḟ',
+  'ḡ' => 'Ḡ',
+  'ḣ' => 'Ḣ',
+  'ḥ' => 'Ḥ',
+  'ḧ' => 'Ḧ',
+  'ḩ' => 'Ḩ',
+  'ḫ' => 'Ḫ',
+  'ḭ' => 'Ḭ',
+  'ḯ' => 'Ḯ',
+  'ḱ' => 'Ḱ',
+  'ḳ' => 'Ḳ',
+  'ḵ' => 'Ḵ',
+  'ḷ' => 'Ḷ',
+  'ḹ' => 'Ḹ',
+  'ḻ' => 'Ḻ',
+  'ḽ' => 'Ḽ',
+  'ḿ' => 'Ḿ',
+  'ṁ' => 'Ṁ',
+  'ṃ' => 'Ṃ',
+  'ṅ' => 'Ṅ',
+  'ṇ' => 'Ṇ',
+  'ṉ' => 'Ṉ',
+  'ṋ' => 'Ṋ',
+  'ṍ' => 'Ṍ',
+  'ṏ' => 'Ṏ',
+  'ṑ' => 'Ṑ',
+  'ṓ' => 'Ṓ',
+  'ṕ' => 'Ṕ',
+  'ṗ' => 'Ṗ',
+  'ṙ' => 'Ṙ',
+  'ṛ' => 'Ṛ',
+  'ṝ' => 'Ṝ',
+  'ṟ' => 'Ṟ',
+  'ṡ' => 'Ṡ',
+  'ṣ' => 'Ṣ',
+  'ṥ' => 'Ṥ',
+  'ṧ' => 'Ṧ',
+  'ṩ' => 'Ṩ',
+  'ṫ' => 'Ṫ',
+  'ṭ' => 'Ṭ',
+  'ṯ' => 'Ṯ',
+  'ṱ' => 'Ṱ',
+  'ṳ' => 'Ṳ',
+  'ṵ' => 'Ṵ',
+  'ṷ' => 'Ṷ',
+  'ṹ' => 'Ṹ',
+  'ṻ' => 'Ṻ',
+  'ṽ' => 'Ṽ',
+  'ṿ' => 'Ṿ',
+  'ẁ' => 'Ẁ',
+  'ẃ' => 'Ẃ',
+  'ẅ' => 'Ẅ',
+  'ẇ' => 'Ẇ',
+  'ẉ' => 'Ẉ',
+  'ẋ' => 'Ẋ',
+  'ẍ' => 'Ẍ',
+  'ẏ' => 'Ẏ',
+  'ẑ' => 'Ẑ',
+  'ẓ' => 'Ẓ',
+  'ẕ' => 'Ẕ',
+  'ẛ' => 'Ṡ',
+  'ạ' => 'Ạ',
+  'ả' => 'Ả',
+  'ấ' => 'Ấ',
+  'ầ' => 'Ầ',
+  'ẩ' => 'Ẩ',
+  'ẫ' => 'Ẫ',
+  'ậ' => 'Ậ',
+  'ắ' => 'Ắ',
+  'ằ' => 'Ằ',
+  'ẳ' => 'Ẳ',
+  'ẵ' => 'Ẵ',
+  'ặ' => 'Ặ',
+  'ẹ' => 'Ẹ',
+  'ẻ' => 'Ẻ',
+  'ẽ' => 'Ẽ',
+  'ế' => 'Ế',
+  'ề' => 'Ề',
+  'ể' => 'Ể',
+  'ễ' => 'Ễ',
+  'ệ' => 'Ệ',
+  'ỉ' => 'Ỉ',
+  'ị' => 'Ị',
+  'ọ' => 'Ọ',
+  'ỏ' => 'Ỏ',
+  'ố' => 'Ố',
+  'ồ' => 'Ồ',
+  'ổ' => 'Ổ',
+  'ỗ' => 'Ỗ',
+  'ộ' => 'Ộ',
+  'ớ' => 'Ớ',
+  'ờ' => 'Ờ',
+  'ở' => 'Ở',
+  'ỡ' => 'Ỡ',
+  'ợ' => 'Ợ',
+  'ụ' => 'Ụ',
+  'ủ' => 'Ủ',
+  'ứ' => 'Ứ',
+  'ừ' => 'Ừ',
+  'ử' => 'Ử',
+  'ữ' => 'Ữ',
+  'ự' => 'Ự',
+  'ỳ' => 'Ỳ',
+  'ỵ' => 'Ỵ',
+  'ỷ' => 'Ỷ',
+  'ỹ' => 'Ỹ',
+  'ỻ' => 'Ỻ',
+  'ỽ' => 'Ỽ',
+  'ỿ' => 'Ỿ',
+  'ἀ' => 'Ἀ',
+  'ἁ' => 'Ἁ',
+  'ἂ' => 'Ἂ',
+  'ἃ' => 'Ἃ',
+  'ἄ' => 'Ἄ',
+  'ἅ' => 'Ἅ',
+  'ἆ' => 'Ἆ',
+  'ἇ' => 'Ἇ',
+  'ἐ' => 'Ἐ',
+  'ἑ' => 'Ἑ',
+  'ἒ' => 'Ἒ',
+  'ἓ' => 'Ἓ',
+  'ἔ' => 'Ἔ',
+  'ἕ' => 'Ἕ',
+  'ἠ' => 'Ἠ',
+  'ἡ' => 'Ἡ',
+  'ἢ' => 'Ἢ',
+  'ἣ' => 'Ἣ',
+  'ἤ' => 'Ἤ',
+  'ἥ' => 'Ἥ',
+  'ἦ' => 'Ἦ',
+  'ἧ' => 'Ἧ',
+  'ἰ' => 'Ἰ',
+  'ἱ' => 'Ἱ',
+  'ἲ' => 'Ἲ',
+  'ἳ' => 'Ἳ',
+  'ἴ' => 'Ἴ',
+  'ἵ' => 'Ἵ',
+  'ἶ' => 'Ἶ',
+  'ἷ' => 'Ἷ',
+  'ὀ' => 'Ὀ',
+  'ὁ' => 'Ὁ',
+  'ὂ' => 'Ὂ',
+  'ὃ' => 'Ὃ',
+  'ὄ' => 'Ὄ',
+  'ὅ' => 'Ὅ',
+  'ὑ' => 'Ὑ',
+  'ὓ' => 'Ὓ',
+  'ὕ' => 'Ὕ',
+  'ὗ' => 'Ὗ',
+  'ὠ' => 'Ὠ',
+  'ὡ' => 'Ὡ',
+  'ὢ' => 'Ὢ',
+  'ὣ' => 'Ὣ',
+  'ὤ' => 'Ὤ',
+  'ὥ' => 'Ὥ',
+  'ὦ' => 'Ὦ',
+  'ὧ' => 'Ὧ',
+  'ὰ' => 'Ὰ',
+  'ά' => 'Ά',
+  'ὲ' => 'Ὲ',
+  'έ' => 'Έ',
+  'ὴ' => 'Ὴ',
+  'ή' => 'Ή',
+  'ὶ' => 'Ὶ',
+  'ί' => 'Ί',
+  'ὸ' => 'Ὸ',
+  'ό' => 'Ό',
+  'ὺ' => 'Ὺ',
+  'ύ' => 'Ύ',
+  'ὼ' => 'Ὼ',
+  'ώ' => 'Ώ',
+  'ᾀ' => 'ἈΙ',
+  'ᾁ' => 'ἉΙ',
+  'ᾂ' => 'ἊΙ',
+  'ᾃ' => 'ἋΙ',
+  'ᾄ' => 'ἌΙ',
+  'ᾅ' => 'ἍΙ',
+  'ᾆ' => 'ἎΙ',
+  'ᾇ' => 'ἏΙ',
+  'ᾐ' => 'ἨΙ',
+  'ᾑ' => 'ἩΙ',
+  'ᾒ' => 'ἪΙ',
+  'ᾓ' => 'ἫΙ',
+  'ᾔ' => 'ἬΙ',
+  'ᾕ' => 'ἭΙ',
+  'ᾖ' => 'ἮΙ',
+  'ᾗ' => 'ἯΙ',
+  'ᾠ' => 'ὨΙ',
+  'ᾡ' => 'ὩΙ',
+  'ᾢ' => 'ὪΙ',
+  'ᾣ' => 'ὫΙ',
+  'ᾤ' => 'ὬΙ',
+  'ᾥ' => 'ὭΙ',
+  'ᾦ' => 'ὮΙ',
+  'ᾧ' => 'ὯΙ',
+  'ᾰ' => 'Ᾰ',
+  'ᾱ' => 'Ᾱ',
+  'ᾳ' => 'ΑΙ',
+  'ι' => 'Ι',
+  'ῃ' => 'ΗΙ',
+  'ῐ' => 'Ῐ',
+  'ῑ' => 'Ῑ',
+  'ῠ' => 'Ῠ',
+  'ῡ' => 'Ῡ',
+  'ῥ' => 'Ῥ',
+  'ῳ' => 'ΩΙ',
+  'ⅎ' => 'Ⅎ',
+  'ⅰ' => 'Ⅰ',
+  'ⅱ' => 'Ⅱ',
+  'ⅲ' => 'Ⅲ',
+  'ⅳ' => 'Ⅳ',
+  'ⅴ' => 'Ⅴ',
+  'ⅵ' => 'Ⅵ',
+  'ⅶ' => 'Ⅶ',
+  'ⅷ' => 'Ⅷ',
+  'ⅸ' => 'Ⅸ',
+  'ⅹ' => 'Ⅹ',
+  'ⅺ' => 'Ⅺ',
+  'ⅻ' => 'Ⅻ',
+  'ⅼ' => 'Ⅼ',
+  'ⅽ' => 'Ⅽ',
+  'ⅾ' => 'Ⅾ',
+  'ⅿ' => 'Ⅿ',
+  'ↄ' => 'Ↄ',
+  'ⓐ' => 'Ⓐ',
+  'ⓑ' => 'Ⓑ',
+  'ⓒ' => 'Ⓒ',
+  'ⓓ' => 'Ⓓ',
+  'ⓔ' => 'Ⓔ',
+  'ⓕ' => 'Ⓕ',
+  'ⓖ' => 'Ⓖ',
+  'ⓗ' => 'Ⓗ',
+  'ⓘ' => 'Ⓘ',
+  'ⓙ' => 'Ⓙ',
+  'ⓚ' => 'Ⓚ',
+  'ⓛ' => 'Ⓛ',
+  'ⓜ' => 'Ⓜ',
+  'ⓝ' => 'Ⓝ',
+  'ⓞ' => 'Ⓞ',
+  'ⓟ' => 'Ⓟ',
+  'ⓠ' => 'Ⓠ',
+  'ⓡ' => 'Ⓡ',
+  'ⓢ' => 'Ⓢ',
+  'ⓣ' => 'Ⓣ',
+  'ⓤ' => 'Ⓤ',
+  'ⓥ' => 'Ⓥ',
+  'ⓦ' => 'Ⓦ',
+  'ⓧ' => 'Ⓧ',
+  'ⓨ' => 'Ⓨ',
+  'ⓩ' => 'Ⓩ',
+  'ⰰ' => 'Ⰰ',
+  'ⰱ' => 'Ⰱ',
+  'ⰲ' => 'Ⰲ',
+  'ⰳ' => 'Ⰳ',
+  'ⰴ' => 'Ⰴ',
+  'ⰵ' => 'Ⰵ',
+  'ⰶ' => 'Ⰶ',
+  'ⰷ' => 'Ⰷ',
+  'ⰸ' => 'Ⰸ',
+  'ⰹ' => 'Ⰹ',
+  'ⰺ' => 'Ⰺ',
+  'ⰻ' => 'Ⰻ',
+  'ⰼ' => 'Ⰼ',
+  'ⰽ' => 'Ⰽ',
+  'ⰾ' => 'Ⰾ',
+  'ⰿ' => 'Ⰿ',
+  'ⱀ' => 'Ⱀ',
+  'ⱁ' => 'Ⱁ',
+  'ⱂ' => 'Ⱂ',
+  'ⱃ' => 'Ⱃ',
+  'ⱄ' => 'Ⱄ',
+  'ⱅ' => 'Ⱅ',
+  'ⱆ' => 'Ⱆ',
+  'ⱇ' => 'Ⱇ',
+  'ⱈ' => 'Ⱈ',
+  'ⱉ' => 'Ⱉ',
+  'ⱊ' => 'Ⱊ',
+  'ⱋ' => 'Ⱋ',
+  'ⱌ' => 'Ⱌ',
+  'ⱍ' => 'Ⱍ',
+  'ⱎ' => 'Ⱎ',
+  'ⱏ' => 'Ⱏ',
+  'ⱐ' => 'Ⱐ',
+  'ⱑ' => 'Ⱑ',
+  'ⱒ' => 'Ⱒ',
+  'ⱓ' => 'Ⱓ',
+  'ⱔ' => 'Ⱔ',
+  'ⱕ' => 'Ⱕ',
+  'ⱖ' => 'Ⱖ',
+  'ⱗ' => 'Ⱗ',
+  'ⱘ' => 'Ⱘ',
+  'ⱙ' => 'Ⱙ',
+  'ⱚ' => 'Ⱚ',
+  'ⱛ' => 'Ⱛ',
+  'ⱜ' => 'Ⱜ',
+  'ⱝ' => 'Ⱝ',
+  'ⱞ' => 'Ⱞ',
+  'ⱡ' => 'Ⱡ',
+  'ⱥ' => 'Ⱥ',
+  'ⱦ' => 'Ⱦ',
+  'ⱨ' => 'Ⱨ',
+  'ⱪ' => 'Ⱪ',
+  'ⱬ' => 'Ⱬ',
+  'ⱳ' => 'Ⱳ',
+  'ⱶ' => 'Ⱶ',
+  'ⲁ' => 'Ⲁ',
+  'ⲃ' => 'Ⲃ',
+  'ⲅ' => 'Ⲅ',
+  'ⲇ' => 'Ⲇ',
+  'ⲉ' => 'Ⲉ',
+  'ⲋ' => 'Ⲋ',
+  'ⲍ' => 'Ⲍ',
+  'ⲏ' => 'Ⲏ',
+  'ⲑ' => 'Ⲑ',
+  'ⲓ' => 'Ⲓ',
+  'ⲕ' => 'Ⲕ',
+  'ⲗ' => 'Ⲗ',
+  'ⲙ' => 'Ⲙ',
+  'ⲛ' => 'Ⲛ',
+  'ⲝ' => 'Ⲝ',
+  'ⲟ' => 'Ⲟ',
+  'ⲡ' => 'Ⲡ',
+  'ⲣ' => 'Ⲣ',
+  'ⲥ' => 'Ⲥ',
+  'ⲧ' => 'Ⲧ',
+  'ⲩ' => 'Ⲩ',
+  'ⲫ' => 'Ⲫ',
+  'ⲭ' => 'Ⲭ',
+  'ⲯ' => 'Ⲯ',
+  'ⲱ' => 'Ⲱ',
+  'ⲳ' => 'Ⲳ',
+  'ⲵ' => 'Ⲵ',
+  'ⲷ' => 'Ⲷ',
+  'ⲹ' => 'Ⲹ',
+  'ⲻ' => 'Ⲻ',
+  'ⲽ' => 'Ⲽ',
+  'ⲿ' => 'Ⲿ',
+  'ⳁ' => 'Ⳁ',
+  'ⳃ' => 'Ⳃ',
+  'ⳅ' => 'Ⳅ',
+  'ⳇ' => 'Ⳇ',
+  'ⳉ' => 'Ⳉ',
+  'ⳋ' => 'Ⳋ',
+  'ⳍ' => 'Ⳍ',
+  'ⳏ' => 'Ⳏ',
+  'ⳑ' => 'Ⳑ',
+  'ⳓ' => 'Ⳓ',
+  'ⳕ' => 'Ⳕ',
+  'ⳗ' => 'Ⳗ',
+  'ⳙ' => 'Ⳙ',
+  'ⳛ' => 'Ⳛ',
+  'ⳝ' => 'Ⳝ',
+  'ⳟ' => 'Ⳟ',
+  'ⳡ' => 'Ⳡ',
+  'ⳣ' => 'Ⳣ',
+  'ⳬ' => 'Ⳬ',
+  'ⳮ' => 'Ⳮ',
+  'ⳳ' => 'Ⳳ',
+  'ⴀ' => 'Ⴀ',
+  'ⴁ' => 'Ⴁ',
+  'ⴂ' => 'Ⴂ',
+  'ⴃ' => 'Ⴃ',
+  'ⴄ' => 'Ⴄ',
+  'ⴅ' => 'Ⴅ',
+  'ⴆ' => 'Ⴆ',
+  'ⴇ' => 'Ⴇ',
+  'ⴈ' => 'Ⴈ',
+  'ⴉ' => 'Ⴉ',
+  'ⴊ' => 'Ⴊ',
+  'ⴋ' => 'Ⴋ',
+  'ⴌ' => 'Ⴌ',
+  'ⴍ' => 'Ⴍ',
+  'ⴎ' => 'Ⴎ',
+  'ⴏ' => 'Ⴏ',
+  'ⴐ' => 'Ⴐ',
+  'ⴑ' => 'Ⴑ',
+  'ⴒ' => 'Ⴒ',
+  'ⴓ' => 'Ⴓ',
+  'ⴔ' => 'Ⴔ',
+  'ⴕ' => 'Ⴕ',
+  'ⴖ' => 'Ⴖ',
+  'ⴗ' => 'Ⴗ',
+  'ⴘ' => 'Ⴘ',
+  'ⴙ' => 'Ⴙ',
+  'ⴚ' => 'Ⴚ',
+  'ⴛ' => 'Ⴛ',
+  'ⴜ' => 'Ⴜ',
+  'ⴝ' => 'Ⴝ',
+  'ⴞ' => 'Ⴞ',
+  'ⴟ' => 'Ⴟ',
+  'ⴠ' => 'Ⴠ',
+  'ⴡ' => 'Ⴡ',
+  'ⴢ' => 'Ⴢ',
+  'ⴣ' => 'Ⴣ',
+  'ⴤ' => 'Ⴤ',
+  'ⴥ' => 'Ⴥ',
+  'ⴧ' => 'Ⴧ',
+  'ⴭ' => 'Ⴭ',
+  'ꙁ' => 'Ꙁ',
+  'ꙃ' => 'Ꙃ',
+  'ꙅ' => 'Ꙅ',
+  'ꙇ' => 'Ꙇ',
+  'ꙉ' => 'Ꙉ',
+  'ꙋ' => 'Ꙋ',
+  'ꙍ' => 'Ꙍ',
+  'ꙏ' => 'Ꙏ',
+  'ꙑ' => 'Ꙑ',
+  'ꙓ' => 'Ꙓ',
+  'ꙕ' => 'Ꙕ',
+  'ꙗ' => 'Ꙗ',
+  'ꙙ' => 'Ꙙ',
+  'ꙛ' => 'Ꙛ',
+  'ꙝ' => 'Ꙝ',
+  'ꙟ' => 'Ꙟ',
+  'ꙡ' => 'Ꙡ',
+  'ꙣ' => 'Ꙣ',
+  'ꙥ' => 'Ꙥ',
+  'ꙧ' => 'Ꙧ',
+  'ꙩ' => 'Ꙩ',
+  'ꙫ' => 'Ꙫ',
+  'ꙭ' => 'Ꙭ',
+  'ꚁ' => 'Ꚁ',
+  'ꚃ' => 'Ꚃ',
+  'ꚅ' => 'Ꚅ',
+  'ꚇ' => 'Ꚇ',
+  'ꚉ' => 'Ꚉ',
+  'ꚋ' => 'Ꚋ',
+  'ꚍ' => 'Ꚍ',
+  'ꚏ' => 'Ꚏ',
+  'ꚑ' => 'Ꚑ',
+  'ꚓ' => 'Ꚓ',
+  'ꚕ' => 'Ꚕ',
+  'ꚗ' => 'Ꚗ',
+  'ꚙ' => 'Ꚙ',
+  'ꚛ' => 'Ꚛ',
+  'ꜣ' => 'Ꜣ',
+  'ꜥ' => 'Ꜥ',
+  'ꜧ' => 'Ꜧ',
+  'ꜩ' => 'Ꜩ',
+  'ꜫ' => 'Ꜫ',
+  'ꜭ' => 'Ꜭ',
+  'ꜯ' => 'Ꜯ',
+  'ꜳ' => 'Ꜳ',
+  'ꜵ' => 'Ꜵ',
+  'ꜷ' => 'Ꜷ',
+  'ꜹ' => 'Ꜹ',
+  'ꜻ' => 'Ꜻ',
+  'ꜽ' => 'Ꜽ',
+  'ꜿ' => 'Ꜿ',
+  'ꝁ' => 'Ꝁ',
+  'ꝃ' => 'Ꝃ',
+  'ꝅ' => 'Ꝅ',
+  'ꝇ' => 'Ꝇ',
+  'ꝉ' => 'Ꝉ',
+  'ꝋ' => 'Ꝋ',
+  'ꝍ' => 'Ꝍ',
+  'ꝏ' => 'Ꝏ',
+  'ꝑ' => 'Ꝑ',
+  'ꝓ' => 'Ꝓ',
+  'ꝕ' => 'Ꝕ',
+  'ꝗ' => 'Ꝗ',
+  'ꝙ' => 'Ꝙ',
+  'ꝛ' => 'Ꝛ',
+  'ꝝ' => 'Ꝝ',
+  'ꝟ' => 'Ꝟ',
+  'ꝡ' => 'Ꝡ',
+  'ꝣ' => 'Ꝣ',
+  'ꝥ' => 'Ꝥ',
+  'ꝧ' => 'Ꝧ',
+  'ꝩ' => 'Ꝩ',
+  'ꝫ' => 'Ꝫ',
+  'ꝭ' => 'Ꝭ',
+  'ꝯ' => 'Ꝯ',
+  'ꝺ' => 'Ꝺ',
+  'ꝼ' => 'Ꝼ',
+  'ꝿ' => 'Ꝿ',
+  'ꞁ' => 'Ꞁ',
+  'ꞃ' => 'Ꞃ',
+  'ꞅ' => 'Ꞅ',
+  'ꞇ' => 'Ꞇ',
+  'ꞌ' => 'Ꞌ',
+  'ꞑ' => 'Ꞑ',
+  'ꞓ' => 'Ꞓ',
+  'ꞔ' => 'Ꞔ',
+  'ꞗ' => 'Ꞗ',
+  'ꞙ' => 'Ꞙ',
+  'ꞛ' => 'Ꞛ',
+  'ꞝ' => 'Ꞝ',
+  'ꞟ' => 'Ꞟ',
+  'ꞡ' => 'Ꞡ',
+  'ꞣ' => 'Ꞣ',
+  'ꞥ' => 'Ꞥ',
+  'ꞧ' => 'Ꞧ',
+  'ꞩ' => 'Ꞩ',
+  'ꞵ' => 'Ꞵ',
+  'ꞷ' => 'Ꞷ',
+  'ꞹ' => 'Ꞹ',
+  'ꞻ' => 'Ꞻ',
+  'ꞽ' => 'Ꞽ',
+  'ꞿ' => 'Ꞿ',
+  'ꟃ' => 'Ꟃ',
+  'ꟈ' => 'Ꟈ',
+  'ꟊ' => 'Ꟊ',
+  'ꟶ' => 'Ꟶ',
+  'ꭓ' => 'Ꭓ',
+  'ꭰ' => 'Ꭰ',
+  'ꭱ' => 'Ꭱ',
+  'ꭲ' => 'Ꭲ',
+  'ꭳ' => 'Ꭳ',
+  'ꭴ' => 'Ꭴ',
+  'ꭵ' => 'Ꭵ',
+  'ꭶ' => 'Ꭶ',
+  'ꭷ' => 'Ꭷ',
+  'ꭸ' => 'Ꭸ',
+  'ꭹ' => 'Ꭹ',
+  'ꭺ' => 'Ꭺ',
+  'ꭻ' => 'Ꭻ',
+  'ꭼ' => 'Ꭼ',
+  'ꭽ' => 'Ꭽ',
+  'ꭾ' => 'Ꭾ',
+  'ꭿ' => 'Ꭿ',
+  'ꮀ' => 'Ꮀ',
+  'ꮁ' => 'Ꮁ',
+  'ꮂ' => 'Ꮂ',
+  'ꮃ' => 'Ꮃ',
+  'ꮄ' => 'Ꮄ',
+  'ꮅ' => 'Ꮅ',
+  'ꮆ' => 'Ꮆ',
+  'ꮇ' => 'Ꮇ',
+  'ꮈ' => 'Ꮈ',
+  'ꮉ' => 'Ꮉ',
+  'ꮊ' => 'Ꮊ',
+  'ꮋ' => 'Ꮋ',
+  'ꮌ' => 'Ꮌ',
+  'ꮍ' => 'Ꮍ',
+  'ꮎ' => 'Ꮎ',
+  'ꮏ' => 'Ꮏ',
+  'ꮐ' => 'Ꮐ',
+  'ꮑ' => 'Ꮑ',
+  'ꮒ' => 'Ꮒ',
+  'ꮓ' => 'Ꮓ',
+  'ꮔ' => 'Ꮔ',
+  'ꮕ' => 'Ꮕ',
+  'ꮖ' => 'Ꮖ',
+  'ꮗ' => 'Ꮗ',
+  'ꮘ' => 'Ꮘ',
+  'ꮙ' => 'Ꮙ',
+  'ꮚ' => 'Ꮚ',
+  'ꮛ' => 'Ꮛ',
+  'ꮜ' => 'Ꮜ',
+  'ꮝ' => 'Ꮝ',
+  'ꮞ' => 'Ꮞ',
+  'ꮟ' => 'Ꮟ',
+  'ꮠ' => 'Ꮠ',
+  'ꮡ' => 'Ꮡ',
+  'ꮢ' => 'Ꮢ',
+  'ꮣ' => 'Ꮣ',
+  'ꮤ' => 'Ꮤ',
+  'ꮥ' => 'Ꮥ',
+  'ꮦ' => 'Ꮦ',
+  'ꮧ' => 'Ꮧ',
+  'ꮨ' => 'Ꮨ',
+  'ꮩ' => 'Ꮩ',
+  'ꮪ' => 'Ꮪ',
+  'ꮫ' => 'Ꮫ',
+  'ꮬ' => 'Ꮬ',
+  'ꮭ' => 'Ꮭ',
+  'ꮮ' => 'Ꮮ',
+  'ꮯ' => 'Ꮯ',
+  'ꮰ' => 'Ꮰ',
+  'ꮱ' => 'Ꮱ',
+  'ꮲ' => 'Ꮲ',
+  'ꮳ' => 'Ꮳ',
+  'ꮴ' => 'Ꮴ',
+  'ꮵ' => 'Ꮵ',
+  'ꮶ' => 'Ꮶ',
+  'ꮷ' => 'Ꮷ',
+  'ꮸ' => 'Ꮸ',
+  'ꮹ' => 'Ꮹ',
+  'ꮺ' => 'Ꮺ',
+  'ꮻ' => 'Ꮻ',
+  'ꮼ' => 'Ꮼ',
+  'ꮽ' => 'Ꮽ',
+  'ꮾ' => 'Ꮾ',
+  'ꮿ' => 'Ꮿ',
+  'ａ' => 'Ａ',
+  'ｂ' => 'Ｂ',
+  'ｃ' => 'Ｃ',
+  'ｄ' => 'Ｄ',
+  'ｅ' => 'Ｅ',
+  'ｆ' => 'Ｆ',
+  'ｇ' => 'Ｇ',
+  'ｈ' => 'Ｈ',
+  'ｉ' => 'Ｉ',
+  'ｊ' => 'Ｊ',
+  'ｋ' => 'Ｋ',
+  'ｌ' => 'Ｌ',
+  'ｍ' => 'Ｍ',
+  'ｎ' => 'Ｎ',
+  'ｏ' => 'Ｏ',
+  'ｐ' => 'Ｐ',
+  'ｑ' => 'Ｑ',
+  'ｒ' => 'Ｒ',
+  'ｓ' => 'Ｓ',
+  'ｔ' => 'Ｔ',
+  'ｕ' => 'Ｕ',
+  'ｖ' => 'Ｖ',
+  'ｗ' => 'Ｗ',
+  'ｘ' => 'Ｘ',
+  'ｙ' => 'Ｙ',
+  'ｚ' => 'Ｚ',
+  '𐐨' => '𐐀',
+  '𐐩' => '𐐁',
+  '𐐪' => '𐐂',
+  '𐐫' => '𐐃',
+  '𐐬' => '𐐄',
+  '𐐭' => '𐐅',
+  '𐐮' => '𐐆',
+  '𐐯' => '𐐇',
+  '𐐰' => '𐐈',
+  '𐐱' => '𐐉',
+  '𐐲' => '𐐊',
+  '𐐳' => '𐐋',
+  '𐐴' => '𐐌',
+  '𐐵' => '𐐍',
+  '𐐶' => '𐐎',
+  '𐐷' => '𐐏',
+  '𐐸' => '𐐐',
+  '𐐹' => '𐐑',
+  '𐐺' => '𐐒',
+  '𐐻' => '𐐓',
+  '𐐼' => '𐐔',
+  '𐐽' => '𐐕',
+  '𐐾' => '𐐖',
+  '𐐿' => '𐐗',
+  '𐑀' => '𐐘',
+  '𐑁' => '𐐙',
+  '𐑂' => '𐐚',
+  '𐑃' => '𐐛',
+  '𐑄' => '𐐜',
+  '𐑅' => '𐐝',
+  '𐑆' => '𐐞',
+  '𐑇' => '𐐟',
+  '𐑈' => '𐐠',
+  '𐑉' => '𐐡',
+  '𐑊' => '𐐢',
+  '𐑋' => '𐐣',
+  '𐑌' => '𐐤',
+  '𐑍' => '𐐥',
+  '𐑎' => '𐐦',
+  '𐑏' => '𐐧',
+  '𐓘' => '𐒰',
+  '𐓙' => '𐒱',
+  '𐓚' => '𐒲',
+  '𐓛' => '𐒳',
+  '𐓜' => '𐒴',
+  '𐓝' => '𐒵',
+  '𐓞' => '𐒶',
+  '𐓟' => '𐒷',
+  '𐓠' => '𐒸',
+  '𐓡' => '𐒹',
+  '𐓢' => '𐒺',
+  '𐓣' => '𐒻',
+  '𐓤' => '𐒼',
+  '𐓥' => '𐒽',
+  '𐓦' => '𐒾',
+  '𐓧' => '𐒿',
+  '𐓨' => '𐓀',
+  '𐓩' => '𐓁',
+  '𐓪' => '𐓂',
+  '𐓫' => '𐓃',
+  '𐓬' => '𐓄',
+  '𐓭' => '𐓅',
+  '𐓮' => '𐓆',
+  '𐓯' => '𐓇',
+  '𐓰' => '𐓈',
+  '𐓱' => '𐓉',
+  '𐓲' => '𐓊',
+  '𐓳' => '𐓋',
+  '𐓴' => '𐓌',
+  '𐓵' => '𐓍',
+  '𐓶' => '𐓎',
+  '𐓷' => '𐓏',
+  '𐓸' => '𐓐',
+  '𐓹' => '𐓑',
+  '𐓺' => '𐓒',
+  '𐓻' => '𐓓',
+  '𐳀' => '𐲀',
+  '𐳁' => '𐲁',
+  '𐳂' => '𐲂',
+  '𐳃' => '𐲃',
+  '𐳄' => '𐲄',
+  '𐳅' => '𐲅',
+  '𐳆' => '𐲆',
+  '𐳇' => '𐲇',
+  '𐳈' => '𐲈',
+  '𐳉' => '𐲉',
+  '𐳊' => '𐲊',
+  '𐳋' => '𐲋',
+  '𐳌' => '𐲌',
+  '𐳍' => '𐲍',
+  '𐳎' => '𐲎',
+  '𐳏' => '𐲏',
+  '𐳐' => '𐲐',
+  '𐳑' => '𐲑',
+  '𐳒' => '𐲒',
+  '𐳓' => '𐲓',
+  '𐳔' => '𐲔',
+  '𐳕' => '𐲕',
+  '𐳖' => '𐲖',
+  '𐳗' => '𐲗',
+  '𐳘' => '𐲘',
+  '𐳙' => '𐲙',
+  '𐳚' => '𐲚',
+  '𐳛' => '𐲛',
+  '𐳜' => '𐲜',
+  '𐳝' => '𐲝',
+  '𐳞' => '𐲞',
+  '𐳟' => '𐲟',
+  '𐳠' => '𐲠',
+  '𐳡' => '𐲡',
+  '𐳢' => '𐲢',
+  '𐳣' => '𐲣',
+  '𐳤' => '𐲤',
+  '𐳥' => '𐲥',
+  '𐳦' => '𐲦',
+  '𐳧' => '𐲧',
+  '𐳨' => '𐲨',
+  '𐳩' => '𐲩',
+  '𐳪' => '𐲪',
+  '𐳫' => '𐲫',
+  '𐳬' => '𐲬',
+  '𐳭' => '𐲭',
+  '𐳮' => '𐲮',
+  '𐳯' => '𐲯',
+  '𐳰' => '𐲰',
+  '𐳱' => '𐲱',
+  '𐳲' => '𐲲',
+  '𑣀' => '𑢠',
+  '𑣁' => '𑢡',
+  '𑣂' => '𑢢',
+  '𑣃' => '𑢣',
+  '𑣄' => '𑢤',
+  '𑣅' => '𑢥',
+  '𑣆' => '𑢦',
+  '𑣇' => '𑢧',
+  '𑣈' => '𑢨',
+  '𑣉' => '𑢩',
+  '𑣊' => '𑢪',
+  '𑣋' => '𑢫',
+  '𑣌' => '𑢬',
+  '𑣍' => '𑢭',
+  '𑣎' => '𑢮',
+  '𑣏' => '𑢯',
+  '𑣐' => '𑢰',
+  '𑣑' => '𑢱',
+  '𑣒' => '𑢲',
+  '𑣓' => '𑢳',
+  '𑣔' => '𑢴',
+  '𑣕' => '𑢵',
+  '𑣖' => '𑢶',
+  '𑣗' => '𑢷',
+  '𑣘' => '𑢸',
+  '𑣙' => '𑢹',
+  '𑣚' => '𑢺',
+  '𑣛' => '𑢻',
+  '𑣜' => '𑢼',
+  '𑣝' => '𑢽',
+  '𑣞' => '𑢾',
+  '𑣟' => '𑢿',
+  '𖹠' => '𖹀',
+  '𖹡' => '𖹁',
+  '𖹢' => '𖹂',
+  '𖹣' => '𖹃',
+  '𖹤' => '𖹄',
+  '𖹥' => '𖹅',
+  '𖹦' => '𖹆',
+  '𖹧' => '𖹇',
+  '𖹨' => '𖹈',
+  '𖹩' => '𖹉',
+  '𖹪' => '𖹊',
+  '𖹫' => '𖹋',
+  '𖹬' => '𖹌',
+  '𖹭' => '𖹍',
+  '𖹮' => '𖹎',
+  '𖹯' => '𖹏',
+  '𖹰' => '𖹐',
+  '𖹱' => '𖹑',
+  '𖹲' => '𖹒',
+  '𖹳' => '𖹓',
+  '𖹴' => '𖹔',
+  '𖹵' => '𖹕',
+  '𖹶' => '𖹖',
+  '𖹷' => '𖹗',
+  '𖹸' => '𖹘',
+  '𖹹' => '𖹙',
+  '𖹺' => '𖹚',
+  '𖹻' => '𖹛',
+  '𖹼' => '𖹜',
+  '𖹽' => '𖹝',
+  '𖹾' => '𖹞',
+  '𖹿' => '𖹟',
+  '𞤢' => '𞤀',
+  '𞤣' => '𞤁',
+  '𞤤' => '𞤂',
+  '𞤥' => '𞤃',
+  '𞤦' => '𞤄',
+  '𞤧' => '𞤅',
+  '𞤨' => '𞤆',
+  '𞤩' => '𞤇',
+  '𞤪' => '𞤈',
+  '𞤫' => '𞤉',
+  '𞤬' => '𞤊',
+  '𞤭' => '𞤋',
+  '𞤮' => '𞤌',
+  '𞤯' => '𞤍',
+  '𞤰' => '𞤎',
+  '𞤱' => '𞤏',
+  '𞤲' => '𞤐',
+  '𞤳' => '𞤑',
+  '𞤴' => '𞤒',
+  '𞤵' => '𞤓',
+  '𞤶' => '𞤔',
+  '𞤷' => '𞤕',
+  '𞤸' => '𞤖',
+  '𞤹' => '𞤗',
+  '𞤺' => '𞤘',
+  '𞤻' => '𞤙',
+  '𞤼' => '𞤚',
+  '𞤽' => '𞤛',
+  '𞤾' => '𞤜',
+  '𞤿' => '𞤝',
+  '𞥀' => '𞤞',
+  '𞥁' => '𞤟',
+  '𞥂' => '𞤠',
+  '𞥃' => '𞤡',
+  'ß' => 'SS',
+  'ﬀ' => 'FF',
+  'ﬁ' => 'FI',
+  'ﬂ' => 'FL',
+  'ﬃ' => 'FFI',
+  'ﬄ' => 'FFL',
+  'ﬅ' => 'ST',
+  'ﬆ' => 'ST',
+  'և' => 'ԵՒ',
+  'ﬓ' => 'ՄՆ',
+  'ﬔ' => 'ՄԵ',
+  'ﬕ' => 'ՄԻ',
+  'ﬖ' => 'ՎՆ',
+  'ﬗ' => 'ՄԽ',
+  'ŉ' => 'ʼN',
+  'ΐ' => 'Ϊ́',
+  'ΰ' => 'Ϋ́',
+  'ǰ' => 'J̌',
+  'ẖ' => 'H̱',
+  'ẗ' => 'T̈',
+  'ẘ' => 'W̊',
+  'ẙ' => 'Y̊',
+  'ẚ' => 'Aʾ',
+  'ὐ' => 'Υ̓',
+  'ὒ' => 'Υ̓̀',
+  'ὔ' => 'Υ̓́',
+  'ὖ' => 'Υ̓͂',
+  'ᾶ' => 'Α͂',
+  'ῆ' => 'Η͂',
+  'ῒ' => 'Ϊ̀',
+  'ΐ' => 'Ϊ́',
+  'ῖ' => 'Ι͂',
+  'ῗ' => 'Ϊ͂',
+  'ῢ' => 'Ϋ̀',
+  'ΰ' => 'Ϋ́',
+  'ῤ' => 'Ρ̓',
+  'ῦ' => 'Υ͂',
+  'ῧ' => 'Ϋ͂',
+  'ῶ' => 'Ω͂',
+  'ᾈ' => 'ἈΙ',
+  'ᾉ' => 'ἉΙ',
+  'ᾊ' => 'ἊΙ',
+  'ᾋ' => 'ἋΙ',
+  'ᾌ' => 'ἌΙ',
+  'ᾍ' => 'ἍΙ',
+  'ᾎ' => 'ἎΙ',
+  'ᾏ' => 'ἏΙ',
+  'ᾘ' => 'ἨΙ',
+  'ᾙ' => 'ἩΙ',
+  'ᾚ' => 'ἪΙ',
+  'ᾛ' => 'ἫΙ',
+  'ᾜ' => 'ἬΙ',
+  'ᾝ' => 'ἭΙ',
+  'ᾞ' => 'ἮΙ',
+  'ᾟ' => 'ἯΙ',
+  'ᾨ' => 'ὨΙ',
+  'ᾩ' => 'ὩΙ',
+  'ᾪ' => 'ὪΙ',
+  'ᾫ' => 'ὫΙ',
+  'ᾬ' => 'ὬΙ',
+  'ᾭ' => 'ὭΙ',
+  'ᾮ' => 'ὮΙ',
+  'ᾯ' => 'ὯΙ',
+  'ᾼ' => 'ΑΙ',
+  'ῌ' => 'ΗΙ',
+  'ῼ' => 'ΩΙ',
+  'ᾲ' => 'ᾺΙ',
+  'ᾴ' => 'ΆΙ',
+  'ῂ' => 'ῊΙ',
+  'ῄ' => 'ΉΙ',
+  'ῲ' => 'ῺΙ',
+  'ῴ' => 'ΏΙ',
+  'ᾷ' => 'Α͂Ι',
+  'ῇ' => 'Η͂Ι',
+  'ῷ' => 'Ω͂Ι',
+);
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap.php
new file mode 100644
index 0000000..1fedd1f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap.php
@@ -0,0 +1,147 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+use Symfony\Polyfill\Mbstring as p;
+
+if (\PHP_VERSION_ID >= 80000) {
+    return require __DIR__.'/bootstrap80.php';
+}
+
+if (!function_exists('mb_convert_encoding')) {
+    function mb_convert_encoding($string, $to_encoding, $from_encoding = null) { return p\Mbstring::mb_convert_encoding($string, $to_encoding, $from_encoding); }
+}
+if (!function_exists('mb_decode_mimeheader')) {
+    function mb_decode_mimeheader($string) { return p\Mbstring::mb_decode_mimeheader($string); }
+}
+if (!function_exists('mb_encode_mimeheader')) {
+    function mb_encode_mimeheader($string, $charset = null, $transfer_encoding = null, $newline = "\r\n", $indent = 0) { return p\Mbstring::mb_encode_mimeheader($string, $charset, $transfer_encoding, $newline, $indent); }
+}
+if (!function_exists('mb_decode_numericentity')) {
+    function mb_decode_numericentity($string, $map, $encoding = null) { return p\Mbstring::mb_decode_numericentity($string, $map, $encoding); }
+}
+if (!function_exists('mb_encode_numericentity')) {
+    function mb_encode_numericentity($string, $map, $encoding = null, $hex = false) { return p\Mbstring::mb_encode_numericentity($string, $map, $encoding, $hex); }
+}
+if (!function_exists('mb_convert_case')) {
+    function mb_convert_case($string, $mode, $encoding = null) { return p\Mbstring::mb_convert_case($string, $mode, $encoding); }
+}
+if (!function_exists('mb_internal_encoding')) {
+    function mb_internal_encoding($encoding = null) { return p\Mbstring::mb_internal_encoding($encoding); }
+}
+if (!function_exists('mb_language')) {
+    function mb_language($language = null) { return p\Mbstring::mb_language($language); }
+}
+if (!function_exists('mb_list_encodings')) {
+    function mb_list_encodings() { return p\Mbstring::mb_list_encodings(); }
+}
+if (!function_exists('mb_encoding_aliases')) {
+    function mb_encoding_aliases($encoding) { return p\Mbstring::mb_encoding_aliases($encoding); }
+}
+if (!function_exists('mb_check_encoding')) {
+    function mb_check_encoding($value = null, $encoding = null) { return p\Mbstring::mb_check_encoding($value, $encoding); }
+}
+if (!function_exists('mb_detect_encoding')) {
+    function mb_detect_encoding($string, $encodings = null, $strict = false) { return p\Mbstring::mb_detect_encoding($string, $encodings, $strict); }
+}
+if (!function_exists('mb_detect_order')) {
+    function mb_detect_order($encoding = null) { return p\Mbstring::mb_detect_order($encoding); }
+}
+if (!function_exists('mb_parse_str')) {
+    function mb_parse_str($string, &$result = []) { parse_str($string, $result); return (bool) $result; }
+}
+if (!function_exists('mb_strlen')) {
+    function mb_strlen($string, $encoding = null) { return p\Mbstring::mb_strlen($string, $encoding); }
+}
+if (!function_exists('mb_strpos')) {
+    function mb_strpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strpos($haystack, $needle, $offset, $encoding); }
+}
+if (!function_exists('mb_strtolower')) {
+    function mb_strtolower($string, $encoding = null) { return p\Mbstring::mb_strtolower($string, $encoding); }
+}
+if (!function_exists('mb_strtoupper')) {
+    function mb_strtoupper($string, $encoding = null) { return p\Mbstring::mb_strtoupper($string, $encoding); }
+}
+if (!function_exists('mb_substitute_character')) {
+    function mb_substitute_character($substitute_character = null) { return p\Mbstring::mb_substitute_character($substitute_character); }
+}
+if (!function_exists('mb_substr')) {
+    function mb_substr($string, $start, $length = 2147483647, $encoding = null) { return p\Mbstring::mb_substr($string, $start, $length, $encoding); }
+}
+if (!function_exists('mb_stripos')) {
+    function mb_stripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_stripos($haystack, $needle, $offset, $encoding); }
+}
+if (!function_exists('mb_stristr')) {
+    function mb_stristr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_stristr($haystack, $needle, $before_needle, $encoding); }
+}
+if (!function_exists('mb_strrchr')) {
+    function mb_strrchr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrchr($haystack, $needle, $before_needle, $encoding); }
+}
+if (!function_exists('mb_strrichr')) {
+    function mb_strrichr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrichr($haystack, $needle, $before_needle, $encoding); }
+}
+if (!function_exists('mb_strripos')) {
+    function mb_strripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strripos($haystack, $needle, $offset, $encoding); }
+}
+if (!function_exists('mb_strrpos')) {
+    function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strrpos($haystack, $needle, $offset, $encoding); }
+}
+if (!function_exists('mb_strstr')) {
+    function mb_strstr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strstr($haystack, $needle, $before_needle, $encoding); }
+}
+if (!function_exists('mb_get_info')) {
+    function mb_get_info($type = 'all') { return p\Mbstring::mb_get_info($type); }
+}
+if (!function_exists('mb_http_output')) {
+    function mb_http_output($encoding = null) { return p\Mbstring::mb_http_output($encoding); }
+}
+if (!function_exists('mb_strwidth')) {
+    function mb_strwidth($string, $encoding = null) { return p\Mbstring::mb_strwidth($string, $encoding); }
+}
+if (!function_exists('mb_substr_count')) {
+    function mb_substr_count($haystack, $needle, $encoding = null) { return p\Mbstring::mb_substr_count($haystack, $needle, $encoding); }
+}
+if (!function_exists('mb_output_handler')) {
+    function mb_output_handler($string, $status) { return p\Mbstring::mb_output_handler($string, $status); }
+}
+if (!function_exists('mb_http_input')) {
+    function mb_http_input($type = null) { return p\Mbstring::mb_http_input($type); }
+}
+
+if (!function_exists('mb_convert_variables')) {
+    function mb_convert_variables($to_encoding, $from_encoding, &...$vars) { return p\Mbstring::mb_convert_variables($to_encoding, $from_encoding, ...$vars); }
+}
+
+if (!function_exists('mb_ord')) {
+    function mb_ord($string, $encoding = null) { return p\Mbstring::mb_ord($string, $encoding); }
+}
+if (!function_exists('mb_chr')) {
+    function mb_chr($codepoint, $encoding = null) { return p\Mbstring::mb_chr($codepoint, $encoding); }
+}
+if (!function_exists('mb_scrub')) {
+    function mb_scrub($string, $encoding = null) { $encoding = null === $encoding ? mb_internal_encoding() : $encoding; return mb_convert_encoding($string, $encoding, $encoding); }
+}
+if (!function_exists('mb_str_split')) {
+    function mb_str_split($string, $length = 1, $encoding = null) { return p\Mbstring::mb_str_split($string, $length, $encoding); }
+}
+
+if (extension_loaded('mbstring')) {
+    return;
+}
+
+if (!defined('MB_CASE_UPPER')) {
+    define('MB_CASE_UPPER', 0);
+}
+if (!defined('MB_CASE_LOWER')) {
+    define('MB_CASE_LOWER', 1);
+}
+if (!defined('MB_CASE_TITLE')) {
+    define('MB_CASE_TITLE', 2);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap80.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap80.php
new file mode 100644
index 0000000..82f5ac4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/bootstrap80.php
@@ -0,0 +1,143 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+use Symfony\Polyfill\Mbstring as p;
+
+if (!function_exists('mb_convert_encoding')) {
+    function mb_convert_encoding(array|string|null $string, ?string $to_encoding, array|string|null $from_encoding = null): array|string|false { return p\Mbstring::mb_convert_encoding($string ?? '', (string) $to_encoding, $from_encoding); }
+}
+if (!function_exists('mb_decode_mimeheader')) {
+    function mb_decode_mimeheader(?string $string): string { return p\Mbstring::mb_decode_mimeheader((string) $string); }
+}
+if (!function_exists('mb_encode_mimeheader')) {
+    function mb_encode_mimeheader(?string $string, ?string $charset = null, ?string $transfer_encoding = null, ?string $newline = "\r\n", ?int $indent = 0): string { return p\Mbstring::mb_encode_mimeheader((string) $string, $charset, $transfer_encoding, (string) $newline, (int) $indent); }
+}
+if (!function_exists('mb_decode_numericentity')) {
+    function mb_decode_numericentity(?string $string, array $map, ?string $encoding = null): string { return p\Mbstring::mb_decode_numericentity((string) $string, $map, $encoding); }
+}
+if (!function_exists('mb_encode_numericentity')) {
+    function mb_encode_numericentity(?string $string, array $map, ?string $encoding = null, ?bool $hex = false): string { return p\Mbstring::mb_encode_numericentity((string) $string, $map, $encoding, (bool) $hex); }
+}
+if (!function_exists('mb_convert_case')) {
+    function mb_convert_case(?string $string, ?int $mode, ?string $encoding = null): string { return p\Mbstring::mb_convert_case((string) $string, (int) $mode, $encoding); }
+}
+if (!function_exists('mb_internal_encoding')) {
+    function mb_internal_encoding(?string $encoding = null): string|bool { return p\Mbstring::mb_internal_encoding($encoding); }
+}
+if (!function_exists('mb_language')) {
+    function mb_language(?string $language = null): string|bool { return p\Mbstring::mb_language($language); }
+}
+if (!function_exists('mb_list_encodings')) {
+    function mb_list_encodings(): array { return p\Mbstring::mb_list_encodings(); }
+}
+if (!function_exists('mb_encoding_aliases')) {
+    function mb_encoding_aliases(?string $encoding): array { return p\Mbstring::mb_encoding_aliases((string) $encoding); }
+}
+if (!function_exists('mb_check_encoding')) {
+    function mb_check_encoding(array|string|null $value = null, ?string $encoding = null): bool { return p\Mbstring::mb_check_encoding($value, $encoding); }
+}
+if (!function_exists('mb_detect_encoding')) {
+    function mb_detect_encoding(?string $string, array|string|null $encodings = null, ?bool $strict = false): string|false { return p\Mbstring::mb_detect_encoding((string) $string, $encodings, (bool) $strict); }
+}
+if (!function_exists('mb_detect_order')) {
+    function mb_detect_order(array|string|null $encoding = null): array|bool { return p\Mbstring::mb_detect_order($encoding); }
+}
+if (!function_exists('mb_parse_str')) {
+    function mb_parse_str(?string $string, &$result = []): bool { parse_str((string) $string, $result); return (bool) $result; }
+}
+if (!function_exists('mb_strlen')) {
+    function mb_strlen(?string $string, ?string $encoding = null): int { return p\Mbstring::mb_strlen((string) $string, $encoding); }
+}
+if (!function_exists('mb_strpos')) {
+    function mb_strpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strpos((string) $haystack, (string) $needle, (int) $offset, $encoding); }
+}
+if (!function_exists('mb_strtolower')) {
+    function mb_strtolower(?string $string, ?string $encoding = null): string { return p\Mbstring::mb_strtolower((string) $string, $encoding); }
+}
+if (!function_exists('mb_strtoupper')) {
+    function mb_strtoupper(?string $string, ?string $encoding = null): string { return p\Mbstring::mb_strtoupper((string) $string, $encoding); }
+}
+if (!function_exists('mb_substitute_character')) {
+    function mb_substitute_character(string|int|null $substitute_character = null): string|int|bool { return p\Mbstring::mb_substitute_character($substitute_character); }
+}
+if (!function_exists('mb_substr')) {
+    function mb_substr(?string $string, ?int $start, ?int $length = null, ?string $encoding = null): string { return p\Mbstring::mb_substr((string) $string, (int) $start, $length, $encoding); }
+}
+if (!function_exists('mb_stripos')) {
+    function mb_stripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_stripos((string) $haystack, (string) $needle, (int) $offset, $encoding); }
+}
+if (!function_exists('mb_stristr')) {
+    function mb_stristr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_stristr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
+}
+if (!function_exists('mb_strrchr')) {
+    function mb_strrchr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrchr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
+}
+if (!function_exists('mb_strrichr')) {
+    function mb_strrichr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strrichr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
+}
+if (!function_exists('mb_strripos')) {
+    function mb_strripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strripos((string) $haystack, (string) $needle, (int) $offset, $encoding); }
+}
+if (!function_exists('mb_strrpos')) {
+    function mb_strrpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null): int|false { return p\Mbstring::mb_strrpos((string) $haystack, (string) $needle, (int) $offset, $encoding); }
+}
+if (!function_exists('mb_strstr')) {
+    function mb_strstr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strstr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
+}
+if (!function_exists('mb_get_info')) {
+    function mb_get_info(?string $type = 'all'): array|string|int|false { return p\Mbstring::mb_get_info((string) $type); }
+}
+if (!function_exists('mb_http_output')) {
+    function mb_http_output(?string $encoding = null): string|bool { return p\Mbstring::mb_http_output($encoding); }
+}
+if (!function_exists('mb_strwidth')) {
+    function mb_strwidth(?string $string, ?string $encoding = null): int { return p\Mbstring::mb_strwidth((string) $string, $encoding); }
+}
+if (!function_exists('mb_substr_count')) {
+    function mb_substr_count(?string $haystack, ?string $needle, ?string $encoding = null): int { return p\Mbstring::mb_substr_count((string) $haystack, (string) $needle, $encoding); }
+}
+if (!function_exists('mb_output_handler')) {
+    function mb_output_handler(?string $string, ?int $status): string { return p\Mbstring::mb_output_handler((string) $string, (int) $status); }
+}
+if (!function_exists('mb_http_input')) {
+    function mb_http_input(?string $type = null): array|string|false { return p\Mbstring::mb_http_input($type); }
+}
+
+if (!function_exists('mb_convert_variables')) {
+    function mb_convert_variables(?string $to_encoding, array|string|null $from_encoding, mixed &$var, mixed &...$vars): string|false { return p\Mbstring::mb_convert_variables((string) $to_encoding, $from_encoding ?? '', $var, ...$vars); }
+}
+
+if (!function_exists('mb_ord')) {
+    function mb_ord(?string $string, ?string $encoding = null): int|false { return p\Mbstring::mb_ord((string) $string, $encoding); }
+}
+if (!function_exists('mb_chr')) {
+    function mb_chr(?int $codepoint, ?string $encoding = null): string|false { return p\Mbstring::mb_chr((int) $codepoint, $encoding); }
+}
+if (!function_exists('mb_scrub')) {
+    function mb_scrub(?string $string, ?string $encoding = null): string { $encoding ??= mb_internal_encoding(); return mb_convert_encoding((string) $string, $encoding, $encoding); }
+}
+if (!function_exists('mb_str_split')) {
+    function mb_str_split(?string $string, ?int $length = 1, ?string $encoding = null): array { return p\Mbstring::mb_str_split((string) $string, (int) $length, $encoding); }
+}
+
+if (extension_loaded('mbstring')) {
+    return;
+}
+
+if (!defined('MB_CASE_UPPER')) {
+    define('MB_CASE_UPPER', 0);
+}
+if (!defined('MB_CASE_LOWER')) {
+    define('MB_CASE_LOWER', 1);
+}
+if (!defined('MB_CASE_TITLE')) {
+    define('MB_CASE_TITLE', 2);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/composer.json
new file mode 100644
index 0000000..2ed7a74
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-mbstring/composer.json
@@ -0,0 +1,38 @@
+{
+    "name": "symfony/polyfill-mbstring",
+    "type": "library",
+    "description": "Symfony polyfill for the Mbstring extension",
+    "keywords": ["polyfill", "shim", "compatibility", "portable", "mbstring"],
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Nicolas Grekas",
+            "email": "p@tchwork.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.1"
+    },
+    "autoload": {
+        "psr-4": { "Symfony\\Polyfill\\Mbstring\\": "" },
+        "files": [ "bootstrap.php" ]
+    },
+    "suggest": {
+        "ext-mbstring": "For best performance"
+    },
+    "minimum-stability": "dev",
+    "extra": {
+        "branch-alias": {
+            "dev-main": "1.23-dev"
+        },
+        "thanks": {
+            "name": "symfony/polyfill",
+            "url": "https://github.com/symfony/polyfill"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/LICENSE
new file mode 100644
index 0000000..5593b1d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2020 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Php80.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Php80.php
new file mode 100644
index 0000000..5fef511
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Php80.php
@@ -0,0 +1,105 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Polyfill\Php80;
+
+/**
+ * @author Ion Bazan <ion.bazan@gmail.com>
+ * @author Nico Oelgart <nicoswd@gmail.com>
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @internal
+ */
+final class Php80
+{
+    public static function fdiv(float $dividend, float $divisor): float
+    {
+        return @($dividend / $divisor);
+    }
+
+    public static function get_debug_type($value): string
+    {
+        switch (true) {
+            case null === $value: return 'null';
+            case \is_bool($value): return 'bool';
+            case \is_string($value): return 'string';
+            case \is_array($value): return 'array';
+            case \is_int($value): return 'int';
+            case \is_float($value): return 'float';
+            case \is_object($value): break;
+            case $value instanceof \__PHP_Incomplete_Class: return '__PHP_Incomplete_Class';
+            default:
+                if (null === $type = @get_resource_type($value)) {
+                    return 'unknown';
+                }
+
+                if ('Unknown' === $type) {
+                    $type = 'closed';
+                }
+
+                return "resource ($type)";
+        }
+
+        $class = \get_class($value);
+
+        if (false === strpos($class, '@')) {
+            return $class;
+        }
+
+        return (get_parent_class($class) ?: key(class_implements($class)) ?: 'class').'@anonymous';
+    }
+
+    public static function get_resource_id($res): int
+    {
+        if (!\is_resource($res) && null === @get_resource_type($res)) {
+            throw new \TypeError(sprintf('Argument 1 passed to get_resource_id() must be of the type resource, %s given', get_debug_type($res)));
+        }
+
+        return (int) $res;
+    }
+
+    public static function preg_last_error_msg(): string
+    {
+        switch (preg_last_error()) {
+            case \PREG_INTERNAL_ERROR:
+                return 'Internal error';
+            case \PREG_BAD_UTF8_ERROR:
+                return 'Malformed UTF-8 characters, possibly incorrectly encoded';
+            case \PREG_BAD_UTF8_OFFSET_ERROR:
+                return 'The offset did not correspond to the beginning of a valid UTF-8 code point';
+            case \PREG_BACKTRACK_LIMIT_ERROR:
+                return 'Backtrack limit exhausted';
+            case \PREG_RECURSION_LIMIT_ERROR:
+                return 'Recursion limit exhausted';
+            case \PREG_JIT_STACKLIMIT_ERROR:
+                return 'JIT stack limit exhausted';
+            case \PREG_NO_ERROR:
+                return 'No error';
+            default:
+                return 'Unknown error';
+        }
+    }
+
+    public static function str_contains(string $haystack, string $needle): bool
+    {
+        return '' === $needle || false !== strpos($haystack, $needle);
+    }
+
+    public static function str_starts_with(string $haystack, string $needle): bool
+    {
+        return 0 === strncmp($haystack, $needle, \strlen($needle));
+    }
+
+    public static function str_ends_with(string $haystack, string $needle): bool
+    {
+        return '' === $needle || ('' !== $haystack && 0 === substr_compare($haystack, $needle, -\strlen($needle)));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/README.md
new file mode 100644
index 0000000..10b8ee4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/README.md
@@ -0,0 +1,24 @@
+Symfony Polyfill / Php80
+========================
+
+This component provides features added to PHP 8.0 core:
+
+- `Stringable` interface
+- [`fdiv`](https://php.net/fdiv)
+- `ValueError` class
+- `UnhandledMatchError` class
+- `FILTER_VALIDATE_BOOL` constant
+- [`get_debug_type`](https://php.net/get_debug_type)
+- [`preg_last_error_msg`](https://php.net/preg_last_error_msg)
+- [`str_contains`](https://php.net/str_contains)
+- [`str_starts_with`](https://php.net/str_starts_with)
+- [`str_ends_with`](https://php.net/str_ends_with)
+- [`get_resource_id`](https://php.net/get_resource_id)
+
+More information can be found in the
+[main Polyfill README](https://github.com/symfony/polyfill/blob/main/README.md).
+
+License
+=======
+
+This library is released under the [MIT license](LICENSE).
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php
new file mode 100644
index 0000000..7ea6d27
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php
@@ -0,0 +1,22 @@
+<?php
+
+#[Attribute(Attribute::TARGET_CLASS)]
+final class Attribute
+{
+    public const TARGET_CLASS = 1;
+    public const TARGET_FUNCTION = 2;
+    public const TARGET_METHOD = 4;
+    public const TARGET_PROPERTY = 8;
+    public const TARGET_CLASS_CONSTANT = 16;
+    public const TARGET_PARAMETER = 32;
+    public const TARGET_ALL = 63;
+    public const IS_REPEATABLE = 64;
+
+    /** @var int */
+    public $flags;
+
+    public function __construct(int $flags = self::TARGET_ALL)
+    {
+        $this->flags = $flags;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php
new file mode 100644
index 0000000..77e037c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php
@@ -0,0 +1,11 @@
+<?php
+
+if (\PHP_VERSION_ID < 80000) {
+    interface Stringable
+    {
+        /**
+         * @return string
+         */
+        public function __toString();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php
new file mode 100644
index 0000000..7fb2000
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php
@@ -0,0 +1,5 @@
+<?php
+
+class UnhandledMatchError extends Error
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php
new file mode 100644
index 0000000..99843ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php
@@ -0,0 +1,5 @@
+<?php
+
+class ValueError extends Error
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/bootstrap.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/bootstrap.php
new file mode 100644
index 0000000..e5f7dbc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/bootstrap.php
@@ -0,0 +1,42 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+use Symfony\Polyfill\Php80 as p;
+
+if (\PHP_VERSION_ID >= 80000) {
+    return;
+}
+
+if (!defined('FILTER_VALIDATE_BOOL') && defined('FILTER_VALIDATE_BOOLEAN')) {
+    define('FILTER_VALIDATE_BOOL', \FILTER_VALIDATE_BOOLEAN);
+}
+
+if (!function_exists('fdiv')) {
+    function fdiv(float $num1, float $num2): float { return p\Php80::fdiv($num1, $num2); }
+}
+if (!function_exists('preg_last_error_msg')) {
+    function preg_last_error_msg(): string { return p\Php80::preg_last_error_msg(); }
+}
+if (!function_exists('str_contains')) {
+    function str_contains(?string $haystack, ?string $needle): bool { return p\Php80::str_contains($haystack ?? '', $needle ?? ''); }
+}
+if (!function_exists('str_starts_with')) {
+    function str_starts_with(?string $haystack, ?string $needle): bool { return p\Php80::str_starts_with($haystack ?? '', $needle ?? ''); }
+}
+if (!function_exists('str_ends_with')) {
+    function str_ends_with(?string $haystack, ?string $needle): bool { return p\Php80::str_ends_with($haystack ?? '', $needle ?? ''); }
+}
+if (!function_exists('get_debug_type')) {
+    function get_debug_type($value): string { return p\Php80::get_debug_type($value); }
+}
+if (!function_exists('get_resource_id')) {
+    function get_resource_id($resource): int { return p\Php80::get_resource_id($resource); }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/composer.json
new file mode 100644
index 0000000..5fe679d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/polyfill-php80/composer.json
@@ -0,0 +1,40 @@
+{
+    "name": "symfony/polyfill-php80",
+    "type": "library",
+    "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+    "keywords": ["polyfill", "shim", "compatibility", "portable"],
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Ion Bazan",
+            "email": "ion.bazan@gmail.com"
+        },
+        {
+            "name": "Nicolas Grekas",
+            "email": "p@tchwork.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.1"
+    },
+    "autoload": {
+        "psr-4": { "Symfony\\Polyfill\\Php80\\": "" },
+        "files": [ "bootstrap.php" ],
+        "classmap": [ "Resources/stubs" ]
+    },
+    "minimum-stability": "dev",
+    "extra": {
+        "branch-alias": {
+            "dev-main": "1.23-dev"
+        },
+        "thanks": {
+            "name": "symfony/polyfill",
+            "url": "https://github.com/symfony/polyfill"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/.gitignore b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/.gitignore
new file mode 100644
index 0000000..c49a5d8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/CHANGELOG.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/CHANGELOG.md
new file mode 100644
index 0000000..7932e26
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/CHANGELOG.md
@@ -0,0 +1,5 @@
+CHANGELOG
+=========
+
+The changelog is maintained for all Symfony contracts at the following URL:
+https://github.com/symfony/contracts/blob/main/CHANGELOG.md
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LICENSE
new file mode 100644
index 0000000..2358414
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2018-2021 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LocaleAwareInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LocaleAwareInterface.php
new file mode 100644
index 0000000..922ec1d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/LocaleAwareInterface.php
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Contracts\Translation;
+
+interface LocaleAwareInterface
+{
+    /**
+     * Sets the current locale.
+     *
+     * @param string $locale The locale
+     *
+     * @throws \InvalidArgumentException If the locale contains invalid characters
+     */
+    public function setLocale(string $locale);
+
+    /**
+     * Returns the current locale.
+     *
+     * @return string The locale
+     */
+    public function getLocale();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/README.md
new file mode 100644
index 0000000..42e5c51
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/README.md
@@ -0,0 +1,9 @@
+Symfony Translation Contracts
+=============================
+
+A set of abstractions extracted out of the Symfony components.
+
+Can be used to build on semantics that the Symfony components proved useful - and
+that already have battle tested implementations.
+
+See https://github.com/symfony/contracts/blob/main/README.md for more information.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/Test/TranslatorTest.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/Test/TranslatorTest.php
new file mode 100644
index 0000000..aac9d68
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/Test/TranslatorTest.php
@@ -0,0 +1,367 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Contracts\Translation\Test;
+
+use PHPUnit\Framework\TestCase;
+use Symfony\Contracts\Translation\TranslatorInterface;
+use Symfony\Contracts\Translation\TranslatorTrait;
+
+/**
+ * Test should cover all languages mentioned on http://translate.sourceforge.net/wiki/l10n/pluralforms
+ * and Plural forms mentioned on http://www.gnu.org/software/gettext/manual/gettext.html#Plural-forms.
+ *
+ * See also https://developer.mozilla.org/en/Localization_and_Plurals which mentions 15 rules having a maximum of 6 forms.
+ * The mozilla code is also interesting to check for.
+ *
+ * As mentioned by chx http://drupal.org/node/1273968 we can cover all by testing number from 0 to 199
+ *
+ * The goal to cover all languages is to far fetched so this test case is smaller.
+ *
+ * @author Clemens Tolboom clemens@build2be.nl
+ */
+class TranslatorTest extends TestCase
+{
+    public function getTranslator()
+    {
+        return new class() implements TranslatorInterface {
+            use TranslatorTrait;
+        };
+    }
+
+    /**
+     * @dataProvider getTransTests
+     */
+    public function testTrans($expected, $id, $parameters)
+    {
+        $translator = $this->getTranslator();
+
+        $this->assertEquals($expected, $translator->trans($id, $parameters));
+    }
+
+    /**
+     * @dataProvider getTransChoiceTests
+     */
+    public function testTransChoiceWithExplicitLocale($expected, $id, $number)
+    {
+        $translator = $this->getTranslator();
+        $translator->setLocale('en');
+
+        $this->assertEquals($expected, $translator->trans($id, ['%count%' => $number]));
+    }
+
+    /**
+     * @requires extension intl
+     *
+     * @dataProvider getTransChoiceTests
+     */
+    public function testTransChoiceWithDefaultLocale($expected, $id, $number)
+    {
+        \Locale::setDefault('en');
+
+        $translator = $this->getTranslator();
+
+        $this->assertEquals($expected, $translator->trans($id, ['%count%' => $number]));
+    }
+
+    public function testGetSetLocale()
+    {
+        $translator = $this->getTranslator();
+        $translator->setLocale('en');
+
+        $this->assertEquals('en', $translator->getLocale());
+    }
+
+    /**
+     * @requires extension intl
+     */
+    public function testGetLocaleReturnsDefaultLocaleIfNotSet()
+    {
+        $translator = $this->getTranslator();
+
+        \Locale::setDefault('pt_BR');
+        $this->assertEquals('pt_BR', $translator->getLocale());
+
+        \Locale::setDefault('en');
+        $this->assertEquals('en', $translator->getLocale());
+    }
+
+    public function getTransTests()
+    {
+        return [
+            ['Symfony is great!', 'Symfony is great!', []],
+            ['Symfony is awesome!', 'Symfony is %what%!', ['%what%' => 'awesome']],
+        ];
+    }
+
+    public function getTransChoiceTests()
+    {
+        return [
+            ['There are no apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0],
+            ['There is one apple', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 1],
+            ['There are 10 apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 10],
+            ['There are 0 apples', 'There is 1 apple|There are %count% apples', 0],
+            ['There is 1 apple', 'There is 1 apple|There are %count% apples', 1],
+            ['There are 10 apples', 'There is 1 apple|There are %count% apples', 10],
+            // custom validation messages may be coded with a fixed value
+            ['There are 2 apples', 'There are 2 apples', 2],
+        ];
+    }
+
+    /**
+     * @dataProvider getInternal
+     */
+    public function testInterval($expected, $number, $interval)
+    {
+        $translator = $this->getTranslator();
+
+        $this->assertEquals($expected, $translator->trans($interval.' foo|[1,Inf[ bar', ['%count%' => $number]));
+    }
+
+    public function getInternal()
+    {
+        return [
+            ['foo', 3, '{1,2, 3 ,4}'],
+            ['bar', 10, '{1,2, 3 ,4}'],
+            ['bar', 3, '[1,2]'],
+            ['foo', 1, '[1,2]'],
+            ['foo', 2, '[1,2]'],
+            ['bar', 1, ']1,2['],
+            ['bar', 2, ']1,2['],
+            ['foo', log(0), '[-Inf,2['],
+            ['foo', -log(0), '[-2,+Inf]'],
+        ];
+    }
+
+    /**
+     * @dataProvider getChooseTests
+     */
+    public function testChoose($expected, $id, $number, $locale = null)
+    {
+        $translator = $this->getTranslator();
+
+        $this->assertEquals($expected, $translator->trans($id, ['%count%' => $number], null, $locale));
+    }
+
+    public function testReturnMessageIfExactlyOneStandardRuleIsGiven()
+    {
+        $translator = $this->getTranslator();
+
+        $this->assertEquals('There are two apples', $translator->trans('There are two apples', ['%count%' => 2]));
+    }
+
+    /**
+     * @dataProvider getNonMatchingMessages
+     */
+    public function testThrowExceptionIfMatchingMessageCannotBeFound($id, $number)
+    {
+        $this->expectException(\InvalidArgumentException::class);
+        $translator = $this->getTranslator();
+
+        $translator->trans($id, ['%count%' => $number]);
+    }
+
+    public function getNonMatchingMessages()
+    {
+        return [
+            ['{0} There are no apples|{1} There is one apple', 2],
+            ['{1} There is one apple|]1,Inf] There are %count% apples', 0],
+            ['{1} There is one apple|]2,Inf] There are %count% apples', 2],
+            ['{0} There are no apples|There is one apple', 2],
+        ];
+    }
+
+    public function getChooseTests()
+    {
+        return [
+            ['There are no apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0],
+            ['There are no apples', '{0}     There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0],
+            ['There are no apples', '{0}There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0],
+
+            ['There is one apple', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 1],
+
+            ['There are 10 apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 10],
+            ['There are 10 apples', '{0} There are no apples|{1} There is one apple|]1,Inf]There are %count% apples', 10],
+            ['There are 10 apples', '{0} There are no apples|{1} There is one apple|]1,Inf]     There are %count% apples', 10],
+
+            ['There are 0 apples', 'There is one apple|There are %count% apples', 0],
+            ['There is one apple', 'There is one apple|There are %count% apples', 1],
+            ['There are 10 apples', 'There is one apple|There are %count% apples', 10],
+
+            ['There are 0 apples', 'one: There is one apple|more: There are %count% apples', 0],
+            ['There is one apple', 'one: There is one apple|more: There are %count% apples', 1],
+            ['There are 10 apples', 'one: There is one apple|more: There are %count% apples', 10],
+
+            ['There are no apples', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 0],
+            ['There is one apple', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 1],
+            ['There are 10 apples', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 10],
+
+            ['', '{0}|{1} There is one apple|]1,Inf] There are %count% apples', 0],
+            ['', '{0} There are no apples|{1}|]1,Inf] There are %count% apples', 1],
+
+            // Indexed only tests which are Gettext PoFile* compatible strings.
+            ['There are 0 apples', 'There is one apple|There are %count% apples', 0],
+            ['There is one apple', 'There is one apple|There are %count% apples', 1],
+            ['There are 2 apples', 'There is one apple|There are %count% apples', 2],
+
+            // Tests for float numbers
+            ['There is almost one apple', '{0} There are no apples|]0,1[ There is almost one apple|{1} There is one apple|[1,Inf] There is more than one apple', 0.7],
+            ['There is one apple', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 1],
+            ['There is more than one apple', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 1.7],
+            ['There are no apples', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0],
+            ['There are no apples', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0.0],
+            ['There are no apples', '{0.0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0],
+
+            // Test texts with new-lines
+            // with double-quotes and \n in id & double-quotes and actual newlines in text
+            ["This is a text with a\n            new-line in it. Selector = 0.", '{0}This is a text with a
+            new-line in it. Selector = 0.|{1}This is a text with a
+            new-line in it. Selector = 1.|[1,Inf]This is a text with a
+            new-line in it. Selector > 1.', 0],
+            // with double-quotes and \n in id and single-quotes and actual newlines in text
+            ["This is a text with a\n            new-line in it. Selector = 1.", '{0}This is a text with a
+            new-line in it. Selector = 0.|{1}This is a text with a
+            new-line in it. Selector = 1.|[1,Inf]This is a text with a
+            new-line in it. Selector > 1.', 1],
+            ["This is a text with a\n            new-line in it. Selector > 1.", '{0}This is a text with a
+            new-line in it. Selector = 0.|{1}This is a text with a
+            new-line in it. Selector = 1.|[1,Inf]This is a text with a
+            new-line in it. Selector > 1.', 5],
+            // with double-quotes and id split accros lines
+            ['This is a text with a
+            new-line in it. Selector = 1.', '{0}This is a text with a
+            new-line in it. Selector = 0.|{1}This is a text with a
+            new-line in it. Selector = 1.|[1,Inf]This is a text with a
+            new-line in it. Selector > 1.', 1],
+            // with single-quotes and id split accros lines
+            ['This is a text with a
+            new-line in it. Selector > 1.', '{0}This is a text with a
+            new-line in it. Selector = 0.|{1}This is a text with a
+            new-line in it. Selector = 1.|[1,Inf]This is a text with a
+            new-line in it. Selector > 1.', 5],
+            // with single-quotes and \n in text
+            ['This is a text with a\nnew-line in it. Selector = 0.', '{0}This is a text with a\nnew-line in it. Selector = 0.|{1}This is a text with a\nnew-line in it. Selector = 1.|[1,Inf]This is a text with a\nnew-line in it. Selector > 1.', 0],
+            // with double-quotes and id split accros lines
+            ["This is a text with a\nnew-line in it. Selector = 1.", "{0}This is a text with a\nnew-line in it. Selector = 0.|{1}This is a text with a\nnew-line in it. Selector = 1.|[1,Inf]This is a text with a\nnew-line in it. Selector > 1.", 1],
+            // esacape pipe
+            ['This is a text with | in it. Selector = 0.', '{0}This is a text with || in it. Selector = 0.|{1}This is a text with || in it. Selector = 1.', 0],
+            // Empty plural set (2 plural forms) from a .PO file
+            ['', '|', 1],
+            // Empty plural set (3 plural forms) from a .PO file
+            ['', '||', 1],
+
+            // Floating values
+            ['1.5 liters', '%count% liter|%count% liters', 1.5],
+            ['1.5 litre', '%count% litre|%count% litres', 1.5, 'fr'],
+
+            // Negative values
+            ['-1 degree', '%count% degree|%count% degrees', -1],
+            ['-1 degré', '%count% degré|%count% degrés', -1],
+            ['-1.5 degrees', '%count% degree|%count% degrees', -1.5],
+            ['-1.5 degré', '%count% degré|%count% degrés', -1.5, 'fr'],
+            ['-2 degrees', '%count% degree|%count% degrees', -2],
+            ['-2 degrés', '%count% degré|%count% degrés', -2],
+        ];
+    }
+
+    /**
+     * @dataProvider failingLangcodes
+     */
+    public function testFailedLangcodes($nplural, $langCodes)
+    {
+        $matrix = $this->generateTestData($langCodes);
+        $this->validateMatrix($nplural, $matrix, false);
+    }
+
+    /**
+     * @dataProvider successLangcodes
+     */
+    public function testLangcodes($nplural, $langCodes)
+    {
+        $matrix = $this->generateTestData($langCodes);
+        $this->validateMatrix($nplural, $matrix);
+    }
+
+    /**
+     * This array should contain all currently known langcodes.
+     *
+     * As it is impossible to have this ever complete we should try as hard as possible to have it almost complete.
+     *
+     * @return array
+     */
+    public function successLangcodes()
+    {
+        return [
+            ['1', ['ay', 'bo', 'cgg', 'dz', 'id', 'ja', 'jbo', 'ka', 'kk', 'km', 'ko', 'ky']],
+            ['2', ['nl', 'fr', 'en', 'de', 'de_GE', 'hy', 'hy_AM']],
+            ['3', ['be', 'bs', 'cs', 'hr']],
+            ['4', ['cy', 'mt', 'sl']],
+            ['6', ['ar']],
+        ];
+    }
+
+    /**
+     * This array should be at least empty within the near future.
+     *
+     * This both depends on a complete list trying to add above as understanding
+     * the plural rules of the current failing languages.
+     *
+     * @return array with nplural together with langcodes
+     */
+    public function failingLangcodes()
+    {
+        return [
+            ['1', ['fa']],
+            ['2', ['jbo']],
+            ['3', ['cbs']],
+            ['4', ['gd', 'kw']],
+            ['5', ['ga']],
+        ];
+    }
+
+    /**
+     * We validate only on the plural coverage. Thus the real rules is not tested.
+     *
+     * @param string $nplural       Plural expected
+     * @param array  $matrix        Containing langcodes and their plural index values
+     * @param bool   $expectSuccess
+     */
+    protected function validateMatrix($nplural, $matrix, $expectSuccess = true)
+    {
+        foreach ($matrix as $langCode => $data) {
+            $indexes = array_flip($data);
+            if ($expectSuccess) {
+                $this->assertEquals($nplural, \count($indexes), "Langcode '$langCode' has '$nplural' plural forms.");
+            } else {
+                $this->assertNotEquals((int) $nplural, \count($indexes), "Langcode '$langCode' has '$nplural' plural forms.");
+            }
+        }
+    }
+
+    protected function generateTestData($langCodes)
+    {
+        $translator = new class() {
+            use TranslatorTrait {
+                getPluralizationRule as public;
+            }
+        };
+
+        $matrix = [];
+        foreach ($langCodes as $langCode) {
+            for ($count = 0; $count < 200; ++$count) {
+                $plural = $translator->getPluralizationRule($count, $langCode);
+                $matrix[$langCode][$count] = $plural;
+            }
+        }
+
+        return $matrix;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatableInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatableInterface.php
new file mode 100644
index 0000000..47fd6fa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatableInterface.php
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Contracts\Translation;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+interface TranslatableInterface
+{
+    public function trans(TranslatorInterface $translator, string $locale = null): string;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorInterface.php
new file mode 100644
index 0000000..dc9bf7f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorInterface.php
@@ -0,0 +1,67 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Contracts\Translation;
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ *
+ * @method string getLocale() Returns the default locale
+ */
+interface TranslatorInterface
+{
+    /**
+     * Translates the given message.
+     *
+     * When a number is provided as a parameter named "%count%", the message is parsed for plural
+     * forms and a translation is chosen according to this number using the following rules:
+     *
+     * Given a message with different plural translations separated by a
+     * pipe (|), this method returns the correct portion of the message based
+     * on the given number, locale and the pluralization rules in the message
+     * itself.
+     *
+     * The message supports two different types of pluralization rules:
+     *
+     * interval: {0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples
+     * indexed:  There is one apple|There are %count% apples
+     *
+     * The indexed solution can also contain labels (e.g. one: There is one apple).
+     * This is purely for making the translations more clear - it does not
+     * affect the functionality.
+     *
+     * The two methods can also be mixed:
+     *     {0} There are no apples|one: There is one apple|more: There are %count% apples
+     *
+     * An interval can represent a finite set of numbers:
+     *  {1,2,3,4}
+     *
+     * An interval can represent numbers between two numbers:
+     *  [1, +Inf]
+     *  ]-1,2[
+     *
+     * The left delimiter can be [ (inclusive) or ] (exclusive).
+     * The right delimiter can be [ (exclusive) or ] (inclusive).
+     * Beside numbers, you can use -Inf and +Inf for the infinite.
+     *
+     * @see https://en.wikipedia.org/wiki/ISO_31-11
+     *
+     * @param string      $id         The message id (may also be an object that can be cast to string)
+     * @param array       $parameters An array of parameters for the message
+     * @param string|null $domain     The domain for the message or null to use the default
+     * @param string|null $locale     The locale or null to use the default
+     *
+     * @return string The translated string
+     *
+     * @throws \InvalidArgumentException If the locale contains invalid characters
+     */
+    public function trans(string $id, array $parameters = [], string $domain = null, string $locale = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorTrait.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorTrait.php
new file mode 100644
index 0000000..789693d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/TranslatorTrait.php
@@ -0,0 +1,261 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Contracts\Translation;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+
+/**
+ * A trait to help implement TranslatorInterface and LocaleAwareInterface.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+trait TranslatorTrait
+{
+    private $locale;
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setLocale(string $locale)
+    {
+        $this->locale = $locale;
+    }
+
+    /**
+     * {@inheritdoc}
+     *
+     * @return string
+     */
+    public function getLocale()
+    {
+        return $this->locale ?: (class_exists(\Locale::class) ? \Locale::getDefault() : 'en');
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function trans(?string $id, array $parameters = [], string $domain = null, string $locale = null): string
+    {
+        if (null === $id || '' === $id) {
+            return '';
+        }
+
+        if (!isset($parameters['%count%']) || !is_numeric($parameters['%count%'])) {
+            return strtr($id, $parameters);
+        }
+
+        $number = (float) $parameters['%count%'];
+        $locale = $locale ?: $this->getLocale();
+
+        $parts = [];
+        if (preg_match('/^\|++$/', $id)) {
+            $parts = explode('|', $id);
+        } elseif (preg_match_all('/(?:\|\||[^\|])++/', $id, $matches)) {
+            $parts = $matches[0];
+        }
+
+        $intervalRegexp = <<<'EOF'
+/^(?P<interval>
+    ({\s*
+        (\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)
+    \s*})
+
+        |
+
+    (?P<left_delimiter>[\[\]])
+        \s*
+        (?P<left>-Inf|\-?\d+(\.\d+)?)
+        \s*,\s*
+        (?P<right>\+?Inf|\-?\d+(\.\d+)?)
+        \s*
+    (?P<right_delimiter>[\[\]])
+)\s*(?P<message>.*?)$/xs
+EOF;
+
+        $standardRules = [];
+        foreach ($parts as $part) {
+            $part = trim(str_replace('||', '|', $part));
+
+            // try to match an explicit rule, then fallback to the standard ones
+            if (preg_match($intervalRegexp, $part, $matches)) {
+                if ($matches[2]) {
+                    foreach (explode(',', $matches[3]) as $n) {
+                        if ($number == $n) {
+                            return strtr($matches['message'], $parameters);
+                        }
+                    }
+                } else {
+                    $leftNumber = '-Inf' === $matches['left'] ? -\INF : (float) $matches['left'];
+                    $rightNumber = is_numeric($matches['right']) ? (float) $matches['right'] : \INF;
+
+                    if (('[' === $matches['left_delimiter'] ? $number >= $leftNumber : $number > $leftNumber)
+                        && (']' === $matches['right_delimiter'] ? $number <= $rightNumber : $number < $rightNumber)
+                    ) {
+                        return strtr($matches['message'], $parameters);
+                    }
+                }
+            } elseif (preg_match('/^\w+\:\s*(.*?)$/', $part, $matches)) {
+                $standardRules[] = $matches[1];
+            } else {
+                $standardRules[] = $part;
+            }
+        }
+
+        $position = $this->getPluralizationRule($number, $locale);
+
+        if (!isset($standardRules[$position])) {
+            // when there's exactly one rule given, and that rule is a standard
+            // rule, use this rule
+            if (1 === \count($parts) && isset($standardRules[0])) {
+                return strtr($standardRules[0], $parameters);
+            }
+
+            $message = sprintf('Unable to choose a translation for "%s" with locale "%s" for value "%d". Double check that this translation has the correct plural options (e.g. "There is one apple|There are %%count%% apples").', $id, $locale, $number);
+
+            if (class_exists(InvalidArgumentException::class)) {
+                throw new InvalidArgumentException($message);
+            }
+
+            throw new \InvalidArgumentException($message);
+        }
+
+        return strtr($standardRules[$position], $parameters);
+    }
+
+    /**
+     * Returns the plural position to use for the given locale and number.
+     *
+     * The plural rules are derived from code of the Zend Framework (2010-09-25),
+     * which is subject to the new BSD license (http://framework.zend.com/license/new-bsd).
+     * Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+     */
+    private function getPluralizationRule(float $number, string $locale): int
+    {
+        $number = abs($number);
+
+        switch ('pt_BR' !== $locale && \strlen($locale) > 3 ? substr($locale, 0, strrpos($locale, '_')) : $locale) {
+            case 'af':
+            case 'bn':
+            case 'bg':
+            case 'ca':
+            case 'da':
+            case 'de':
+            case 'el':
+            case 'en':
+            case 'eo':
+            case 'es':
+            case 'et':
+            case 'eu':
+            case 'fa':
+            case 'fi':
+            case 'fo':
+            case 'fur':
+            case 'fy':
+            case 'gl':
+            case 'gu':
+            case 'ha':
+            case 'he':
+            case 'hu':
+            case 'is':
+            case 'it':
+            case 'ku':
+            case 'lb':
+            case 'ml':
+            case 'mn':
+            case 'mr':
+            case 'nah':
+            case 'nb':
+            case 'ne':
+            case 'nl':
+            case 'nn':
+            case 'no':
+            case 'oc':
+            case 'om':
+            case 'or':
+            case 'pa':
+            case 'pap':
+            case 'ps':
+            case 'pt':
+            case 'so':
+            case 'sq':
+            case 'sv':
+            case 'sw':
+            case 'ta':
+            case 'te':
+            case 'tk':
+            case 'ur':
+            case 'zu':
+                return (1 == $number) ? 0 : 1;
+
+            case 'am':
+            case 'bh':
+            case 'fil':
+            case 'fr':
+            case 'gun':
+            case 'hi':
+            case 'hy':
+            case 'ln':
+            case 'mg':
+            case 'nso':
+            case 'pt_BR':
+            case 'ti':
+            case 'wa':
+                return ($number < 2) ? 0 : 1;
+
+            case 'be':
+            case 'bs':
+            case 'hr':
+            case 'ru':
+            case 'sh':
+            case 'sr':
+            case 'uk':
+                return ((1 == $number % 10) && (11 != $number % 100)) ? 0 : ((($number % 10 >= 2) && ($number % 10 <= 4) && (($number % 100 < 10) || ($number % 100 >= 20))) ? 1 : 2);
+
+            case 'cs':
+            case 'sk':
+                return (1 == $number) ? 0 : ((($number >= 2) && ($number <= 4)) ? 1 : 2);
+
+            case 'ga':
+                return (1 == $number) ? 0 : ((2 == $number) ? 1 : 2);
+
+            case 'lt':
+                return ((1 == $number % 10) && (11 != $number % 100)) ? 0 : ((($number % 10 >= 2) && (($number % 100 < 10) || ($number % 100 >= 20))) ? 1 : 2);
+
+            case 'sl':
+                return (1 == $number % 100) ? 0 : ((2 == $number % 100) ? 1 : (((3 == $number % 100) || (4 == $number % 100)) ? 2 : 3));
+
+            case 'mk':
+                return (1 == $number % 10) ? 0 : 1;
+
+            case 'mt':
+                return (1 == $number) ? 0 : (((0 == $number) || (($number % 100 > 1) && ($number % 100 < 11))) ? 1 : ((($number % 100 > 10) && ($number % 100 < 20)) ? 2 : 3));
+
+            case 'lv':
+                return (0 == $number) ? 0 : (((1 == $number % 10) && (11 != $number % 100)) ? 1 : 2);
+
+            case 'pl':
+                return (1 == $number) ? 0 : ((($number % 10 >= 2) && ($number % 10 <= 4) && (($number % 100 < 12) || ($number % 100 > 14))) ? 1 : 2);
+
+            case 'cy':
+                return (1 == $number) ? 0 : ((2 == $number) ? 1 : (((8 == $number) || (11 == $number)) ? 2 : 3));
+
+            case 'ro':
+                return (1 == $number) ? 0 : (((0 == $number) || (($number % 100 > 0) && ($number % 100 < 20))) ? 1 : 2);
+
+            case 'ar':
+                return (0 == $number) ? 0 : ((1 == $number) ? 1 : ((2 == $number) ? 2 : ((($number % 100 >= 3) && ($number % 100 <= 10)) ? 3 : ((($number % 100 >= 11) && ($number % 100 <= 99)) ? 4 : 5))));
+
+            default:
+                return 0;
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/composer.json
new file mode 100644
index 0000000..00e27f8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation-contracts/composer.json
@@ -0,0 +1,37 @@
+{
+    "name": "symfony/translation-contracts",
+    "type": "library",
+    "description": "Generic abstractions related to translation",
+    "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Nicolas Grekas",
+            "email": "p@tchwork.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.2.5"
+    },
+    "suggest": {
+        "symfony/translation-implementation": ""
+    },
+    "autoload": {
+        "psr-4": { "Symfony\\Contracts\\Translation\\": "" }
+    },
+    "minimum-stability": "dev",
+    "extra": {
+        "branch-alias": {
+            "dev-main": "2.4-dev"
+        },
+        "thanks": {
+            "name": "symfony/contracts",
+            "url": "https://github.com/symfony/contracts"
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/CHANGELOG.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/CHANGELOG.md
new file mode 100644
index 0000000..3341328
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/CHANGELOG.md
@@ -0,0 +1,169 @@
+CHANGELOG
+=========
+
+5.3
+---
+
+ * Add `translation:pull` and `translation:push` commands to manage translations with third-party providers
+ * Add `TranslatorBagInterface::getCatalogues` method
+ * Add support to load XLIFF string in `XliffFileLoader`
+
+5.2.0
+-----
+
+ * added support for calling `trans` with ICU formatted messages
+ * added `PseudoLocalizationTranslator`
+ * added `TranslatableMessage` objects that represent a message that can be translated
+ * added the `t()` function to easily create `TranslatableMessage` objects
+ * Added support for extracting messages from `TranslatableMessage` objects
+
+5.1.0
+-----
+
+ * added support for `name` attribute on `unit` element from xliff2 to be used as a translation key instead of always the `source` element
+
+5.0.0
+-----
+
+ * removed support for using `null` as the locale in `Translator`
+ * removed `TranslatorInterface`
+ * removed `MessageSelector`
+ * removed `ChoiceMessageFormatterInterface`
+ * removed `PluralizationRule`
+ * removed `Interval`
+ * removed `transChoice()` methods, use the trans() method instead with a %count% parameter
+ * removed `FileDumper::setBackup()` and `TranslationWriter::disableBackup()`
+ * removed `MessageFormatter::choiceFormat()`
+ * added argument `$filename` to `PhpExtractor::parseTokens()`
+ * removed support for implicit STDIN usage in the `lint:xliff` command, use `lint:xliff -` (append a dash) instead to make it explicit.
+
+4.4.0
+-----
+
+ * deprecated support for using `null` as the locale in `Translator`
+ * deprecated accepting STDIN implicitly when using the `lint:xliff` command, use `lint:xliff -` (append a dash) instead to make it explicit.
+ * Marked the `TranslationDataCollector` class as `@final`.
+
+4.3.0
+-----
+
+ * Improved Xliff 1.2 loader to load the original file's metadata
+ * Added `TranslatorPathsPass`
+
+4.2.0
+-----
+
+ * Started using ICU parent locales as fallback locales.
+ * allow using the ICU message format using domains with the "+intl-icu" suffix
+ * deprecated `Translator::transChoice()` in favor of using `Translator::trans()` with a `%count%` parameter
+ * deprecated `TranslatorInterface` in favor of `Symfony\Contracts\Translation\TranslatorInterface`
+ * deprecated `MessageSelector`, `Interval` and `PluralizationRules`; use `IdentityTranslator` instead
+ * Added `IntlFormatter` and `IntlFormatterInterface`
+ * added support for multiple files and directories in `XliffLintCommand`
+ * Marked `Translator::getFallbackLocales()` and `TranslationDataCollector::getFallbackLocales()` as internal
+
+4.1.0
+-----
+
+ * The `FileDumper::setBackup()` method is deprecated.
+ * The `TranslationWriter::disableBackup()` method is deprecated.
+ * The `XliffFileDumper` will write "name" on the "unit" node when dumping XLIFF 2.0.
+
+4.0.0
+-----
+
+ * removed the backup feature of the `FileDumper` class
+ * removed `TranslationWriter::writeTranslations()` method
+ * removed support for passing `MessageSelector` instances to the constructor of the `Translator` class
+
+3.4.0
+-----
+
+ * Added `TranslationDumperPass`
+ * Added `TranslationExtractorPass`
+ * Added `TranslatorPass`
+ * Added `TranslationReader` and `TranslationReaderInterface`
+ * Added `<notes>` section to the Xliff 2.0 dumper.
+ * Improved Xliff 2.0 loader to load `<notes>` section.
+ * Added `TranslationWriterInterface`
+ * Deprecated `TranslationWriter::writeTranslations` in favor of `TranslationWriter::write`
+ * added support for adding custom message formatter and decoupling the default one.
+ * Added `PhpExtractor`
+ * Added `PhpStringTokenParser`
+
+3.2.0
+-----
+
+ * Added support for escaping `|` in plural translations with double pipe.
+
+3.1.0
+-----
+
+ * Deprecated the backup feature of the file dumper classes.
+
+3.0.0
+-----
+
+ * removed `FileDumper::format()` method.
+ * Changed the visibility of the locale property in `Translator` from protected to private.
+
+2.8.0
+-----
+
+ * deprecated FileDumper::format(), overwrite FileDumper::formatCatalogue() instead.
+ * deprecated Translator::getMessages(), rely on TranslatorBagInterface::getCatalogue() instead.
+ * added `FileDumper::formatCatalogue` which allows format the catalogue without dumping it into file.
+ * added option `json_encoding` to JsonFileDumper
+ * added options `as_tree`, `inline` to YamlFileDumper
+ * added support for XLIFF 2.0.
+ * added support for XLIFF target and tool attributes.
+ * added message parameters to DataCollectorTranslator.
+ * [DEPRECATION] The `DiffOperation` class has been deprecated and
+   will be removed in Symfony 3.0, since its operation has nothing to do with 'diff',
+   so the class name is misleading. The `TargetOperation` class should be used for
+   this use-case instead.
+
+2.7.0
+-----
+
+ * added DataCollectorTranslator for collecting the translated messages.
+
+2.6.0
+-----
+
+ * added possibility to cache catalogues
+ * added TranslatorBagInterface
+ * added LoggingTranslator
+ * added Translator::getMessages() for retrieving the message catalogue as an array
+
+2.5.0
+-----
+
+ * added relative file path template to the file dumpers
+ * added optional backup to the file dumpers
+ * changed IcuResFileDumper to extend FileDumper
+
+2.3.0
+-----
+
+ * added classes to make operations on catalogues (like making a diff or a merge on 2 catalogues)
+ * added Translator::getFallbackLocales()
+ * deprecated Translator::setFallbackLocale() in favor of the new Translator::setFallbackLocales() method
+
+2.2.0
+-----
+
+ * QtTranslationsLoader class renamed to QtFileLoader. QtTranslationsLoader is deprecated and will be removed in 2.3.
+ * [BC BREAK] uniformized the exception thrown by the load() method when an error occurs. The load() method now
+   throws Symfony\Component\Translation\Exception\NotFoundResourceException when a resource cannot be found
+   and Symfony\Component\Translation\Exception\InvalidResourceException when a resource is invalid.
+ * changed the exception class thrown by some load() methods from \RuntimeException to \InvalidArgumentException
+   (IcuDatFileLoader, IcuResFileLoader and QtFileLoader)
+
+2.1.0
+-----
+
+ * added support for more than one fallback locale
+ * added support for extracting translation messages from templates (Twig and PHP)
+ * added dumpers for translation catalogs
+ * added support for QT, gettext, and ResourceBundles
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/AbstractOperation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/AbstractOperation.php
new file mode 100644
index 0000000..9869fbb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/AbstractOperation.php
@@ -0,0 +1,192 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Catalogue;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\LogicException;
+use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\MessageCatalogueInterface;
+
+/**
+ * Base catalogues binary operation class.
+ *
+ * A catalogue binary operation performs operation on
+ * source (the left argument) and target (the right argument) catalogues.
+ *
+ * @author Jean-François Simon <contact@jfsimon.fr>
+ */
+abstract class AbstractOperation implements OperationInterface
+{
+    public const OBSOLETE_BATCH = 'obsolete';
+    public const NEW_BATCH = 'new';
+    public const ALL_BATCH = 'all';
+
+    protected $source;
+    protected $target;
+    protected $result;
+
+    /**
+     * @var array|null The domains affected by this operation
+     */
+    private $domains;
+
+    /**
+     * This array stores 'all', 'new' and 'obsolete' messages for all valid domains.
+     *
+     * The data structure of this array is as follows:
+     *
+     *     [
+     *         'domain 1' => [
+     *             'all' => [...],
+     *             'new' => [...],
+     *             'obsolete' => [...]
+     *         ],
+     *         'domain 2' => [
+     *             'all' => [...],
+     *             'new' => [...],
+     *             'obsolete' => [...]
+     *         ],
+     *         ...
+     *     ]
+     *
+     * @var array The array that stores 'all', 'new' and 'obsolete' messages
+     */
+    protected $messages;
+
+    /**
+     * @throws LogicException
+     */
+    public function __construct(MessageCatalogueInterface $source, MessageCatalogueInterface $target)
+    {
+        if ($source->getLocale() !== $target->getLocale()) {
+            throw new LogicException('Operated catalogues must belong to the same locale.');
+        }
+
+        $this->source = $source;
+        $this->target = $target;
+        $this->result = new MessageCatalogue($source->getLocale());
+        $this->messages = [];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDomains()
+    {
+        if (null === $this->domains) {
+            $this->domains = array_values(array_unique(array_merge($this->source->getDomains(), $this->target->getDomains())));
+        }
+
+        return $this->domains;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMessages(string $domain)
+    {
+        if (!\in_array($domain, $this->getDomains())) {
+            throw new InvalidArgumentException(sprintf('Invalid domain: "%s".', $domain));
+        }
+
+        if (!isset($this->messages[$domain][self::ALL_BATCH])) {
+            $this->processDomain($domain);
+        }
+
+        return $this->messages[$domain][self::ALL_BATCH];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getNewMessages(string $domain)
+    {
+        if (!\in_array($domain, $this->getDomains())) {
+            throw new InvalidArgumentException(sprintf('Invalid domain: "%s".', $domain));
+        }
+
+        if (!isset($this->messages[$domain][self::NEW_BATCH])) {
+            $this->processDomain($domain);
+        }
+
+        return $this->messages[$domain][self::NEW_BATCH];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getObsoleteMessages(string $domain)
+    {
+        if (!\in_array($domain, $this->getDomains())) {
+            throw new InvalidArgumentException(sprintf('Invalid domain: "%s".', $domain));
+        }
+
+        if (!isset($this->messages[$domain][self::OBSOLETE_BATCH])) {
+            $this->processDomain($domain);
+        }
+
+        return $this->messages[$domain][self::OBSOLETE_BATCH];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getResult()
+    {
+        foreach ($this->getDomains() as $domain) {
+            if (!isset($this->messages[$domain])) {
+                $this->processDomain($domain);
+            }
+        }
+
+        return $this->result;
+    }
+
+    /**
+     * @param self::*_BATCH $batch
+     */
+    public function moveMessagesToIntlDomainsIfPossible(string $batch = self::ALL_BATCH): void
+    {
+        // If MessageFormatter class does not exists, intl domains are not supported.
+        if (!class_exists(\MessageFormatter::class)) {
+            return;
+        }
+
+        foreach ($this->getDomains() as $domain) {
+            $intlDomain = $domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX;
+            switch ($batch) {
+                case self::OBSOLETE_BATCH: $messages = $this->getObsoleteMessages($domain); break;
+                case self::NEW_BATCH: $messages = $this->getNewMessages($domain); break;
+                case self::ALL_BATCH: $messages = $this->getMessages($domain); break;
+                default: throw new \InvalidArgumentException(sprintf('$batch argument must be one of ["%s", "%s", "%s"].', self::ALL_BATCH, self::NEW_BATCH, self::OBSOLETE_BATCH));
+            }
+
+            if (!$messages || (!$this->source->all($intlDomain) && $this->source->all($domain))) {
+                continue;
+            }
+
+            $result = $this->getResult();
+            $allIntlMessages = $result->all($intlDomain);
+            $currentMessages = array_diff_key($messages, $result->all($domain));
+            $result->replace($currentMessages, $domain);
+            $result->replace($allIntlMessages + $messages, $intlDomain);
+        }
+    }
+
+    /**
+     * Performs operation on source and target catalogues for the given domain and
+     * stores the results.
+     *
+     * @param string $domain The domain which the operation will be performed for
+     */
+    abstract protected function processDomain(string $domain);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/MergeOperation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/MergeOperation.php
new file mode 100644
index 0000000..87db2fb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/MergeOperation.php
@@ -0,0 +1,60 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Catalogue;
+
+use Symfony\Component\Translation\MessageCatalogueInterface;
+
+/**
+ * Merge operation between two catalogues as follows:
+ * all = source ∪ target = {x: x ∈ source ∨ x ∈ target}
+ * new = all ∖ source = {x: x ∈ target ∧ x ∉ source}
+ * obsolete = source ∖ all = {x: x ∈ source ∧ x ∉ source ∧ x ∉ target} = ∅
+ * Basically, the result contains messages from both catalogues.
+ *
+ * @author Jean-François Simon <contact@jfsimon.fr>
+ */
+class MergeOperation extends AbstractOperation
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected function processDomain(string $domain)
+    {
+        $this->messages[$domain] = [
+            'all' => [],
+            'new' => [],
+            'obsolete' => [],
+        ];
+        $intlDomain = $domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX;
+
+        foreach ($this->source->all($domain) as $id => $message) {
+            $this->messages[$domain]['all'][$id] = $message;
+            $d = $this->source->defines($id, $intlDomain) ? $intlDomain : $domain;
+            $this->result->add([$id => $message], $d);
+            if (null !== $keyMetadata = $this->source->getMetadata($id, $d)) {
+                $this->result->setMetadata($id, $keyMetadata, $d);
+            }
+        }
+
+        foreach ($this->target->all($domain) as $id => $message) {
+            if (!$this->source->has($id, $domain)) {
+                $this->messages[$domain]['all'][$id] = $message;
+                $this->messages[$domain]['new'][$id] = $message;
+                $d = $this->target->defines($id, $intlDomain) ? $intlDomain : $domain;
+                $this->result->add([$id => $message], $d);
+                if (null !== $keyMetadata = $this->target->getMetadata($id, $d)) {
+                    $this->result->setMetadata($id, $keyMetadata, $d);
+                }
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/OperationInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/OperationInterface.php
new file mode 100644
index 0000000..9ffac88
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/OperationInterface.php
@@ -0,0 +1,71 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Catalogue;
+
+use Symfony\Component\Translation\MessageCatalogueInterface;
+
+/**
+ * Represents an operation on catalogue(s).
+ *
+ * An instance of this interface performs an operation on one or more catalogues and
+ * stores intermediate and final results of the operation.
+ *
+ * The first catalogue in its argument(s) is called the 'source catalogue' or 'source' and
+ * the following results are stored:
+ *
+ * Messages: also called 'all', are valid messages for the given domain after the operation is performed.
+ *
+ * New Messages: also called 'new' (new = all ∖ source = {x: x ∈ all ∧ x ∉ source}).
+ *
+ * Obsolete Messages: also called 'obsolete' (obsolete = source ∖ all = {x: x ∈ source ∧ x ∉ all}).
+ *
+ * Result: also called 'result', is the resulting catalogue for the given domain that holds the same messages as 'all'.
+ *
+ * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
+ */
+interface OperationInterface
+{
+    /**
+     * Returns domains affected by operation.
+     *
+     * @return array
+     */
+    public function getDomains();
+
+    /**
+     * Returns all valid messages ('all') after operation.
+     *
+     * @return array
+     */
+    public function getMessages(string $domain);
+
+    /**
+     * Returns new messages ('new') after operation.
+     *
+     * @return array
+     */
+    public function getNewMessages(string $domain);
+
+    /**
+     * Returns obsolete messages ('obsolete') after operation.
+     *
+     * @return array
+     */
+    public function getObsoleteMessages(string $domain);
+
+    /**
+     * Returns resulting catalogue ('result').
+     *
+     * @return MessageCatalogueInterface
+     */
+    public function getResult();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/TargetOperation.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/TargetOperation.php
new file mode 100644
index 0000000..399d917
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Catalogue/TargetOperation.php
@@ -0,0 +1,74 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Catalogue;
+
+use Symfony\Component\Translation\MessageCatalogueInterface;
+
+/**
+ * Target operation between two catalogues:
+ * intersection = source ∩ target = {x: x ∈ source ∧ x ∈ target}
+ * all = intersection ∪ (target ∖ intersection) = target
+ * new = all ∖ source = {x: x ∈ target ∧ x ∉ source}
+ * obsolete = source ∖ all = source ∖ target = {x: x ∈ source ∧ x ∉ target}
+ * Basically, the result contains messages from the target catalogue.
+ *
+ * @author Michael Lee <michael.lee@zerustech.com>
+ */
+class TargetOperation extends AbstractOperation
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected function processDomain(string $domain)
+    {
+        $this->messages[$domain] = [
+            'all' => [],
+            'new' => [],
+            'obsolete' => [],
+        ];
+        $intlDomain = $domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX;
+
+        // For 'all' messages, the code can't be simplified as ``$this->messages[$domain]['all'] = $target->all($domain);``,
+        // because doing so will drop messages like {x: x ∈ source ∧ x ∉ target.all ∧ x ∈ target.fallback}
+        //
+        // For 'new' messages, the code can't be simplified as ``array_diff_assoc($this->target->all($domain), $this->source->all($domain));``
+        // because doing so will not exclude messages like {x: x ∈ target ∧ x ∉ source.all ∧ x ∈ source.fallback}
+        //
+        // For 'obsolete' messages, the code can't be simplified as ``array_diff_assoc($this->source->all($domain), $this->target->all($domain))``
+        // because doing so will not exclude messages like {x: x ∈ source ∧ x ∉ target.all ∧ x ∈ target.fallback}
+
+        foreach ($this->source->all($domain) as $id => $message) {
+            if ($this->target->has($id, $domain)) {
+                $this->messages[$domain]['all'][$id] = $message;
+                $d = $this->target->defines($id, $intlDomain) ? $intlDomain : $domain;
+                $this->result->add([$id => $message], $d);
+                if (null !== $keyMetadata = $this->source->getMetadata($id, $d)) {
+                    $this->result->setMetadata($id, $keyMetadata, $d);
+                }
+            } else {
+                $this->messages[$domain]['obsolete'][$id] = $message;
+            }
+        }
+
+        foreach ($this->target->all($domain) as $id => $message) {
+            if (!$this->source->has($id, $domain)) {
+                $this->messages[$domain]['all'][$id] = $message;
+                $this->messages[$domain]['new'][$id] = $message;
+                $d = $this->target->defines($id, $intlDomain) ? $intlDomain : $domain;
+                $this->result->add([$id => $message], $d);
+                if (null !== $keyMetadata = $this->target->getMetadata($id, $d)) {
+                    $this->result->setMetadata($id, $keyMetadata, $d);
+                }
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPullCommand.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPullCommand.php
new file mode 100644
index 0000000..0ec02ca
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPullCommand.php
@@ -0,0 +1,157 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Command;
+
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Style\SymfonyStyle;
+use Symfony\Component\Translation\Catalogue\TargetOperation;
+use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\Provider\TranslationProviderCollection;
+use Symfony\Component\Translation\Reader\TranslationReaderInterface;
+use Symfony\Component\Translation\Writer\TranslationWriterInterface;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+final class TranslationPullCommand extends Command
+{
+    use TranslationTrait;
+
+    protected static $defaultName = 'translation:pull';
+    protected static $defaultDescription = 'Pull translations from a given provider.';
+
+    private $providerCollection;
+    private $writer;
+    private $reader;
+    private $defaultLocale;
+    private $transPaths;
+    private $enabledLocales;
+
+    public function __construct(TranslationProviderCollection $providerCollection, TranslationWriterInterface $writer, TranslationReaderInterface $reader, string $defaultLocale, array $transPaths = [], array $enabledLocales = [])
+    {
+        $this->providerCollection = $providerCollection;
+        $this->writer = $writer;
+        $this->reader = $reader;
+        $this->defaultLocale = $defaultLocale;
+        $this->transPaths = $transPaths;
+        $this->enabledLocales = $enabledLocales;
+
+        parent::__construct();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function configure()
+    {
+        $keys = $this->providerCollection->keys();
+        $defaultProvider = 1 === \count($keys) ? $keys[0] : null;
+
+        $this
+            ->setDefinition([
+                new InputArgument('provider', null !== $defaultProvider ? InputArgument::OPTIONAL : InputArgument::REQUIRED, 'The provider to pull translations from.', $defaultProvider),
+                new InputOption('force', null, InputOption::VALUE_NONE, 'Override existing translations with provider ones (it will delete not synchronized messages).'),
+                new InputOption('intl-icu', null, InputOption::VALUE_NONE, 'Associated to --force option, it will write messages in "%domain%+intl-icu.%locale%.xlf" files.'),
+                new InputOption('domains', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'Specify the domains to pull.'),
+                new InputOption('locales', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'Specify the locales to pull.'),
+                new InputOption('format', null, InputOption::VALUE_OPTIONAL, 'Override the default output format.', 'xlf12'),
+            ])
+            ->setHelp(<<<'EOF'
+The <info>%command.name%</> command pulls translations from the given provider. Only
+new translations are pulled, existing ones are not overwritten.
+
+You can overwrite existing translations (and remove the missing ones on local side) by using the <comment>--force</> flag:
+
+  <info>php %command.full_name% --force provider</>
+
+Full example:
+
+  <info>php %command.full_name% provider --force --domains=messages,validators --locales=en</>
+
+This command pulls all translations associated with the <comment>messages</> and <comment>validators</> domains for the <comment>en</> locale.
+Local translations for the specified domains and locale are deleted if they're not present on the provider and overwritten if it's the case.
+Local translations for others domains and locales are ignored.
+EOF
+            )
+        ;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function execute(InputInterface $input, OutputInterface $output): int
+    {
+        $io = new SymfonyStyle($input, $output);
+
+        $provider = $this->providerCollection->get($input->getArgument('provider'));
+        $force = $input->getOption('force');
+        $intlIcu = $input->getOption('intl-icu');
+        $locales = $input->getOption('locales') ?: $this->enabledLocales;
+        $domains = $input->getOption('domains');
+        $format = $input->getOption('format');
+        $xliffVersion = '1.2';
+
+        if ($intlIcu && !$force) {
+            $io->note('--intl-icu option only has an effect when used with --force. Here, it will be ignored.');
+        }
+
+        switch ($format) {
+            case 'xlf20': $xliffVersion = '2.0';
+            // no break
+            case 'xlf12': $format = 'xlf';
+        }
+
+        $writeOptions = [
+            'path' => end($this->transPaths),
+            'xliff_version' => $xliffVersion,
+        ];
+
+        if (!$domains) {
+            $domains = $provider->getDomains();
+        }
+
+        $providerTranslations = $provider->read($domains, $locales);
+
+        if ($force) {
+            foreach ($providerTranslations->getCatalogues() as $catalogue) {
+                $operation = new TargetOperation((new MessageCatalogue($catalogue->getLocale())), $catalogue);
+                if ($intlIcu) {
+                    $operation->moveMessagesToIntlDomainsIfPossible();
+                }
+                $this->writer->write($operation->getResult(), $format, $writeOptions);
+            }
+
+            $io->success(sprintf('Local translations has been updated from "%s" (for "%s" locale(s), and "%s" domain(s)).', parse_url($provider, \PHP_URL_SCHEME), implode(', ', $locales), implode(', ', $domains)));
+
+            return 0;
+        }
+
+        $localTranslations = $this->readLocalTranslations($locales, $domains, $this->transPaths);
+
+        // Append pulled translations to local ones.
+        $localTranslations->addBag($providerTranslations->diff($localTranslations));
+
+        foreach ($localTranslations->getCatalogues() as $catalogue) {
+            $this->writer->write($catalogue, $format, $writeOptions);
+        }
+
+        $io->success(sprintf('New translations from "%s" has been written locally (for "%s" locale(s), and "%s" domain(s)).', parse_url($provider, \PHP_URL_SCHEME), implode(', ', $locales), implode(', ', $domains)));
+
+        return 0;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPushCommand.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPushCommand.php
new file mode 100644
index 0000000..b28d3e1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationPushCommand.php
@@ -0,0 +1,158 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Command;
+
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Exception\InvalidArgumentException;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Style\SymfonyStyle;
+use Symfony\Component\Translation\Provider\TranslationProviderCollection;
+use Symfony\Component\Translation\Reader\TranslationReaderInterface;
+use Symfony\Component\Translation\TranslatorBag;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+final class TranslationPushCommand extends Command
+{
+    use TranslationTrait;
+
+    protected static $defaultName = 'translation:push';
+    protected static $defaultDescription = 'Push translations to a given provider.';
+
+    private $providers;
+    private $reader;
+    private $transPaths;
+    private $enabledLocales;
+
+    public function __construct(TranslationProviderCollection $providers, TranslationReaderInterface $reader, array $transPaths = [], array $enabledLocales = [])
+    {
+        $this->providers = $providers;
+        $this->reader = $reader;
+        $this->transPaths = $transPaths;
+        $this->enabledLocales = $enabledLocales;
+
+        parent::__construct();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function configure()
+    {
+        $keys = $this->providers->keys();
+        $defaultProvider = 1 === \count($keys) ? $keys[0] : null;
+
+        $this
+            ->setDefinition([
+                new InputArgument('provider', null !== $defaultProvider ? InputArgument::OPTIONAL : InputArgument::REQUIRED, 'The provider to push translations to.', $defaultProvider),
+                new InputOption('force', null, InputOption::VALUE_NONE, 'Override existing translations with local ones (it will delete not synchronized messages).'),
+                new InputOption('delete-missing', null, InputOption::VALUE_NONE, 'Delete translations available on provider but not locally.'),
+                new InputOption('domains', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'Specify the domains to push.'),
+                new InputOption('locales', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'Specify the locales to push.', $this->enabledLocales),
+            ])
+            ->setHelp(<<<'EOF'
+The <info>%command.name%</> command pushes translations to the given provider. Only new
+translations are pushed, existing ones are not overwritten.
+
+You can overwrite existing translations by using the <comment>--force</> flag:
+
+  <info>php %command.full_name% --force provider</>
+
+You can delete provider translations which are not present locally by using the <comment>--delete-missing</> flag:
+
+  <info>php %command.full_name% --delete-missing provider</>
+
+Full example:
+
+  <info>php %command.full_name% provider --force --delete-missing --domains=messages,validators --locales=en</>
+
+This command pushes all translations associated with the <comment>messages</> and <comment>validators</> domains for the <comment>en</> locale.
+Provider translations for the specified domains and locale are deleted if they're not present locally and overwritten if it's the case.
+Provider translations for others domains and locales are ignored.
+EOF
+            )
+        ;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function execute(InputInterface $input, OutputInterface $output): int
+    {
+        $provider = $this->providers->get($input->getArgument('provider'));
+
+        if (!$this->enabledLocales) {
+            throw new InvalidArgumentException(sprintf('You must define "framework.translator.enabled_locales" or "framework.translator.providers.%s.locales" config key in order to work with translation providers.', parse_url($provider, \PHP_URL_SCHEME)));
+        }
+
+        $io = new SymfonyStyle($input, $output);
+        $domains = $input->getOption('domains');
+        $locales = $input->getOption('locales');
+        $force = $input->getOption('force');
+        $deleteMissing = $input->getOption('delete-missing');
+
+        $localTranslations = $this->readLocalTranslations($locales, $domains, $this->transPaths);
+
+        if (!$domains) {
+            $domains = $this->getDomainsFromTranslatorBag($localTranslations);
+        }
+
+        if (!$deleteMissing && $force) {
+            $provider->write($localTranslations);
+
+            $io->success(sprintf('All local translations has been sent to "%s" (for "%s" locale(s), and "%s" domain(s)).', parse_url($provider, \PHP_URL_SCHEME), implode(', ', $locales), implode(', ', $domains)));
+
+            return 0;
+        }
+
+        $providerTranslations = $provider->read($domains, $locales);
+
+        if ($deleteMissing) {
+            $provider->delete($providerTranslations->diff($localTranslations));
+
+            $io->success(sprintf('Missing translations on "%s" has been deleted (for "%s" locale(s), and "%s" domain(s)).', parse_url($provider, \PHP_URL_SCHEME), implode(', ', $locales), implode(', ', $domains)));
+
+            // Read provider translations again, after missing translations deletion,
+            // to avoid push freshly deleted translations.
+            $providerTranslations = $provider->read($domains, $locales);
+        }
+
+        $translationsToWrite = $localTranslations->diff($providerTranslations);
+
+        if ($force) {
+            $translationsToWrite->addBag($localTranslations->intersect($providerTranslations));
+        }
+
+        $provider->write($translationsToWrite);
+
+        $io->success(sprintf('%s local translations has been sent to "%s" (for "%s" locale(s), and "%s" domain(s)).', $force ? 'All' : 'New', parse_url($provider, \PHP_URL_SCHEME), implode(', ', $locales), implode(', ', $domains)));
+
+        return 0;
+    }
+
+    private function getDomainsFromTranslatorBag(TranslatorBag $translatorBag): array
+    {
+        $domains = [];
+
+        foreach ($translatorBag->getCatalogues() as $catalogue) {
+            $domains += $catalogue->getDomains();
+        }
+
+        return array_unique($domains);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationTrait.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationTrait.php
new file mode 100644
index 0000000..6a2b1ba
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/TranslationTrait.php
@@ -0,0 +1,78 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Command;
+
+use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\MessageCatalogueInterface;
+use Symfony\Component\Translation\TranslatorBag;
+
+/**
+ * @internal
+ */
+trait TranslationTrait
+{
+    private function readLocalTranslations(array $locales, array $domains, array $transPaths): TranslatorBag
+    {
+        $bag = new TranslatorBag();
+
+        foreach ($locales as $locale) {
+            $catalogue = new MessageCatalogue($locale);
+            foreach ($transPaths as $path) {
+                $this->reader->read($path, $catalogue);
+            }
+
+            if ($domains) {
+                foreach ($domains as $domain) {
+                    $catalogue = $this->filterCatalogue($catalogue, $domain);
+                    $bag->addCatalogue($catalogue);
+                }
+            } else {
+                $bag->addCatalogue($catalogue);
+            }
+        }
+
+        return $bag;
+    }
+
+    private function filterCatalogue(MessageCatalogue $catalogue, string $domain): MessageCatalogue
+    {
+        $filteredCatalogue = new MessageCatalogue($catalogue->getLocale());
+
+        // extract intl-icu messages only
+        $intlDomain = $domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX;
+        if ($intlMessages = $catalogue->all($intlDomain)) {
+            $filteredCatalogue->add($intlMessages, $intlDomain);
+        }
+
+        // extract all messages and subtract intl-icu messages
+        if ($messages = array_diff($catalogue->all($domain), $intlMessages)) {
+            $filteredCatalogue->add($messages, $domain);
+        }
+        foreach ($catalogue->getResources() as $resource) {
+            $filteredCatalogue->addResource($resource);
+        }
+
+        if ($metadata = $catalogue->getMetadata('', $intlDomain)) {
+            foreach ($metadata as $k => $v) {
+                $filteredCatalogue->setMetadata($k, $v, $intlDomain);
+            }
+        }
+
+        if ($metadata = $catalogue->getMetadata('', $domain)) {
+            foreach ($metadata as $k => $v) {
+                $filteredCatalogue->setMetadata($k, $v, $domain);
+            }
+        }
+
+        return $filteredCatalogue;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/XliffLintCommand.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/XliffLintCommand.php
new file mode 100644
index 0000000..4117d87
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Command/XliffLintCommand.php
@@ -0,0 +1,267 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Command;
+
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Exception\RuntimeException;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Style\SymfonyStyle;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Util\XliffUtils;
+
+/**
+ * Validates XLIFF files syntax and outputs encountered errors.
+ *
+ * @author Grégoire Pineau <lyrixx@lyrixx.info>
+ * @author Robin Chalas <robin.chalas@gmail.com>
+ * @author Javier Eguiluz <javier.eguiluz@gmail.com>
+ */
+class XliffLintCommand extends Command
+{
+    protected static $defaultName = 'lint:xliff';
+    protected static $defaultDescription = 'Lint an XLIFF file and outputs encountered errors';
+
+    private $format;
+    private $displayCorrectFiles;
+    private $directoryIteratorProvider;
+    private $isReadableProvider;
+    private $requireStrictFileNames;
+
+    public function __construct(string $name = null, callable $directoryIteratorProvider = null, callable $isReadableProvider = null, bool $requireStrictFileNames = true)
+    {
+        parent::__construct($name);
+
+        $this->directoryIteratorProvider = $directoryIteratorProvider;
+        $this->isReadableProvider = $isReadableProvider;
+        $this->requireStrictFileNames = $requireStrictFileNames;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function configure()
+    {
+        $this
+            ->setDescription(self::$defaultDescription)
+            ->addArgument('filename', InputArgument::IS_ARRAY, 'A file, a directory or "-" for reading from STDIN')
+            ->addOption('format', null, InputOption::VALUE_REQUIRED, 'The output format', 'txt')
+            ->setHelp(<<<EOF
+The <info>%command.name%</info> command lints an XLIFF file and outputs to STDOUT
+the first encountered syntax error.
+
+You can validates XLIFF contents passed from STDIN:
+
+  <info>cat filename | php %command.full_name% -</info>
+
+You can also validate the syntax of a file:
+
+  <info>php %command.full_name% filename</info>
+
+Or of a whole directory:
+
+  <info>php %command.full_name% dirname</info>
+  <info>php %command.full_name% dirname --format=json</info>
+
+EOF
+            )
+        ;
+    }
+
+    protected function execute(InputInterface $input, OutputInterface $output)
+    {
+        $io = new SymfonyStyle($input, $output);
+        $filenames = (array) $input->getArgument('filename');
+        $this->format = $input->getOption('format');
+        $this->displayCorrectFiles = $output->isVerbose();
+
+        if (['-'] === $filenames) {
+            return $this->display($io, [$this->validate(file_get_contents('php://stdin'))]);
+        }
+
+        if (!$filenames) {
+            throw new RuntimeException('Please provide a filename or pipe file content to STDIN.');
+        }
+
+        $filesInfo = [];
+        foreach ($filenames as $filename) {
+            if (!$this->isReadable($filename)) {
+                throw new RuntimeException(sprintf('File or directory "%s" is not readable.', $filename));
+            }
+
+            foreach ($this->getFiles($filename) as $file) {
+                $filesInfo[] = $this->validate(file_get_contents($file), $file);
+            }
+        }
+
+        return $this->display($io, $filesInfo);
+    }
+
+    private function validate(string $content, string $file = null): array
+    {
+        $errors = [];
+
+        // Avoid: Warning DOMDocument::loadXML(): Empty string supplied as input
+        if ('' === trim($content)) {
+            return ['file' => $file, 'valid' => true];
+        }
+
+        $internal = libxml_use_internal_errors(true);
+
+        $document = new \DOMDocument();
+        $document->loadXML($content);
+
+        if (null !== $targetLanguage = $this->getTargetLanguageFromFile($document)) {
+            $normalizedLocalePattern = sprintf('(%s|%s)', preg_quote($targetLanguage, '/'), preg_quote(str_replace('-', '_', $targetLanguage), '/'));
+            // strict file names require translation files to be named '____.locale.xlf'
+            // otherwise, both '____.locale.xlf' and 'locale.____.xlf' are allowed
+            // also, the regexp matching must be case-insensitive, as defined for 'target-language' values
+            // http://docs.oasis-open.org/xliff/v1.2/os/xliff-core.html#target-language
+            $expectedFilenamePattern = $this->requireStrictFileNames ? sprintf('/^.*\.(?i:%s)\.(?:xlf|xliff)/', $normalizedLocalePattern) : sprintf('/^(?:.*\.(?i:%s)|(?i:%s)\..*)\.(?:xlf|xliff)/', $normalizedLocalePattern, $normalizedLocalePattern);
+
+            if (0 === preg_match($expectedFilenamePattern, basename($file))) {
+                $errors[] = [
+                    'line' => -1,
+                    'column' => -1,
+                    'message' => sprintf('There is a mismatch between the language included in the file name ("%s") and the "%s" value used in the "target-language" attribute of the file.', basename($file), $targetLanguage),
+                ];
+            }
+        }
+
+        foreach (XliffUtils::validateSchema($document) as $xmlError) {
+            $errors[] = [
+                'line' => $xmlError['line'],
+                'column' => $xmlError['column'],
+                'message' => $xmlError['message'],
+            ];
+        }
+
+        libxml_clear_errors();
+        libxml_use_internal_errors($internal);
+
+        return ['file' => $file, 'valid' => 0 === \count($errors), 'messages' => $errors];
+    }
+
+    private function display(SymfonyStyle $io, array $files)
+    {
+        switch ($this->format) {
+            case 'txt':
+                return $this->displayTxt($io, $files);
+            case 'json':
+                return $this->displayJson($io, $files);
+            default:
+                throw new InvalidArgumentException(sprintf('The format "%s" is not supported.', $this->format));
+        }
+    }
+
+    private function displayTxt(SymfonyStyle $io, array $filesInfo)
+    {
+        $countFiles = \count($filesInfo);
+        $erroredFiles = 0;
+
+        foreach ($filesInfo as $info) {
+            if ($info['valid'] && $this->displayCorrectFiles) {
+                $io->comment('<info>OK</info>'.($info['file'] ? sprintf(' in %s', $info['file']) : ''));
+            } elseif (!$info['valid']) {
+                ++$erroredFiles;
+                $io->text('<error> ERROR </error>'.($info['file'] ? sprintf(' in %s', $info['file']) : ''));
+                $io->listing(array_map(function ($error) {
+                    // general document errors have a '-1' line number
+                    return -1 === $error['line'] ? $error['message'] : sprintf('Line %d, Column %d: %s', $error['line'], $error['column'], $error['message']);
+                }, $info['messages']));
+            }
+        }
+
+        if (0 === $erroredFiles) {
+            $io->success(sprintf('All %d XLIFF files contain valid syntax.', $countFiles));
+        } else {
+            $io->warning(sprintf('%d XLIFF files have valid syntax and %d contain errors.', $countFiles - $erroredFiles, $erroredFiles));
+        }
+
+        return min($erroredFiles, 1);
+    }
+
+    private function displayJson(SymfonyStyle $io, array $filesInfo)
+    {
+        $errors = 0;
+
+        array_walk($filesInfo, function (&$v) use (&$errors) {
+            $v['file'] = (string) $v['file'];
+            if (!$v['valid']) {
+                ++$errors;
+            }
+        });
+
+        $io->writeln(json_encode($filesInfo, \JSON_PRETTY_PRINT | \JSON_UNESCAPED_SLASHES));
+
+        return min($errors, 1);
+    }
+
+    private function getFiles(string $fileOrDirectory)
+    {
+        if (is_file($fileOrDirectory)) {
+            yield new \SplFileInfo($fileOrDirectory);
+
+            return;
+        }
+
+        foreach ($this->getDirectoryIterator($fileOrDirectory) as $file) {
+            if (!\in_array($file->getExtension(), ['xlf', 'xliff'])) {
+                continue;
+            }
+
+            yield $file;
+        }
+    }
+
+    private function getDirectoryIterator(string $directory)
+    {
+        $default = function ($directory) {
+            return new \RecursiveIteratorIterator(
+                new \RecursiveDirectoryIterator($directory, \FilesystemIterator::SKIP_DOTS | \FilesystemIterator::FOLLOW_SYMLINKS),
+                \RecursiveIteratorIterator::LEAVES_ONLY
+            );
+        };
+
+        if (null !== $this->directoryIteratorProvider) {
+            return ($this->directoryIteratorProvider)($directory, $default);
+        }
+
+        return $default($directory);
+    }
+
+    private function isReadable(string $fileOrDirectory)
+    {
+        $default = function ($fileOrDirectory) {
+            return is_readable($fileOrDirectory);
+        };
+
+        if (null !== $this->isReadableProvider) {
+            return ($this->isReadableProvider)($fileOrDirectory, $default);
+        }
+
+        return $default($fileOrDirectory);
+    }
+
+    private function getTargetLanguageFromFile(\DOMDocument $xliffContents): ?string
+    {
+        foreach ($xliffContents->getElementsByTagName('file')[0]->attributes ?? [] as $attribute) {
+            if ('target-language' === $attribute->nodeName) {
+                return $attribute->nodeValue;
+            }
+        }
+
+        return null;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollector/TranslationDataCollector.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollector/TranslationDataCollector.php
new file mode 100644
index 0000000..f8480ad
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollector/TranslationDataCollector.php
@@ -0,0 +1,172 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\DataCollector;
+
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\HttpKernel\DataCollector\DataCollector;
+use Symfony\Component\HttpKernel\DataCollector\LateDataCollectorInterface;
+use Symfony\Component\Translation\DataCollectorTranslator;
+use Symfony\Component\VarDumper\Cloner\Data;
+
+/**
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ *
+ * @final
+ */
+class TranslationDataCollector extends DataCollector implements LateDataCollectorInterface
+{
+    private $translator;
+
+    public function __construct(DataCollectorTranslator $translator)
+    {
+        $this->translator = $translator;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function lateCollect()
+    {
+        $messages = $this->sanitizeCollectedMessages($this->translator->getCollectedMessages());
+
+        $this->data += $this->computeCount($messages);
+        $this->data['messages'] = $messages;
+
+        $this->data = $this->cloneVar($this->data);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function collect(Request $request, Response $response, \Throwable $exception = null)
+    {
+        $this->data['locale'] = $this->translator->getLocale();
+        $this->data['fallback_locales'] = $this->translator->getFallbackLocales();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function reset()
+    {
+        $this->data = [];
+    }
+
+    /**
+     * @return array|Data
+     */
+    public function getMessages()
+    {
+        return $this->data['messages'] ?? [];
+    }
+
+    /**
+     * @return int
+     */
+    public function getCountMissings()
+    {
+        return $this->data[DataCollectorTranslator::MESSAGE_MISSING] ?? 0;
+    }
+
+    /**
+     * @return int
+     */
+    public function getCountFallbacks()
+    {
+        return $this->data[DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK] ?? 0;
+    }
+
+    /**
+     * @return int
+     */
+    public function getCountDefines()
+    {
+        return $this->data[DataCollectorTranslator::MESSAGE_DEFINED] ?? 0;
+    }
+
+    public function getLocale()
+    {
+        return !empty($this->data['locale']) ? $this->data['locale'] : null;
+    }
+
+    /**
+     * @internal
+     */
+    public function getFallbackLocales()
+    {
+        return (isset($this->data['fallback_locales']) && \count($this->data['fallback_locales']) > 0) ? $this->data['fallback_locales'] : [];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getName()
+    {
+        return 'translation';
+    }
+
+    private function sanitizeCollectedMessages(array $messages)
+    {
+        $result = [];
+        foreach ($messages as $key => $message) {
+            $messageId = $message['locale'].$message['domain'].$message['id'];
+
+            if (!isset($result[$messageId])) {
+                $message['count'] = 1;
+                $message['parameters'] = !empty($message['parameters']) ? [$message['parameters']] : [];
+                $messages[$key]['translation'] = $this->sanitizeString($message['translation']);
+                $result[$messageId] = $message;
+            } else {
+                if (!empty($message['parameters'])) {
+                    $result[$messageId]['parameters'][] = $message['parameters'];
+                }
+
+                ++$result[$messageId]['count'];
+            }
+
+            unset($messages[$key]);
+        }
+
+        return $result;
+    }
+
+    private function computeCount(array $messages)
+    {
+        $count = [
+            DataCollectorTranslator::MESSAGE_DEFINED => 0,
+            DataCollectorTranslator::MESSAGE_MISSING => 0,
+            DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK => 0,
+        ];
+
+        foreach ($messages as $message) {
+            ++$count[$message['state']];
+        }
+
+        return $count;
+    }
+
+    private function sanitizeString(string $string, int $length = 80)
+    {
+        $string = trim(preg_replace('/\s+/', ' ', $string));
+
+        if (false !== $encoding = mb_detect_encoding($string, null, true)) {
+            if (mb_strlen($string, $encoding) > $length) {
+                return mb_substr($string, 0, $length - 3, $encoding).'...';
+            }
+        } elseif (\strlen($string) > $length) {
+            return substr($string, 0, $length - 3).'...';
+        }
+
+        return $string;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollectorTranslator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollectorTranslator.php
new file mode 100644
index 0000000..c7d3597
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DataCollectorTranslator.php
@@ -0,0 +1,171 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Contracts\Translation\LocaleAwareInterface;
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+/**
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class DataCollectorTranslator implements TranslatorInterface, TranslatorBagInterface, LocaleAwareInterface, WarmableInterface
+{
+    public const MESSAGE_DEFINED = 0;
+    public const MESSAGE_MISSING = 1;
+    public const MESSAGE_EQUALS_FALLBACK = 2;
+
+    /**
+     * @var TranslatorInterface|TranslatorBagInterface
+     */
+    private $translator;
+
+    private $messages = [];
+
+    /**
+     * @param TranslatorInterface $translator The translator must implement TranslatorBagInterface
+     */
+    public function __construct(TranslatorInterface $translator)
+    {
+        if (!$translator instanceof TranslatorBagInterface || !$translator instanceof LocaleAwareInterface) {
+            throw new InvalidArgumentException(sprintf('The Translator "%s" must implement TranslatorInterface, TranslatorBagInterface and LocaleAwareInterface.', get_debug_type($translator)));
+        }
+
+        $this->translator = $translator;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function trans(?string $id, array $parameters = [], string $domain = null, string $locale = null)
+    {
+        $trans = $this->translator->trans($id = (string) $id, $parameters, $domain, $locale);
+        $this->collectMessage($locale, $domain, $id, $trans, $parameters);
+
+        return $trans;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setLocale(string $locale)
+    {
+        $this->translator->setLocale($locale);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLocale()
+    {
+        return $this->translator->getLocale();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogue(string $locale = null)
+    {
+        return $this->translator->getCatalogue($locale);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogues(): array
+    {
+        return $this->translator->getCatalogues();
+    }
+
+    /**
+     * {@inheritdoc}
+     *
+     * @return string[]
+     */
+    public function warmUp(string $cacheDir)
+    {
+        if ($this->translator instanceof WarmableInterface) {
+            return (array) $this->translator->warmUp($cacheDir);
+        }
+
+        return [];
+    }
+
+    /**
+     * Gets the fallback locales.
+     *
+     * @return array The fallback locales
+     */
+    public function getFallbackLocales()
+    {
+        if ($this->translator instanceof Translator || method_exists($this->translator, 'getFallbackLocales')) {
+            return $this->translator->getFallbackLocales();
+        }
+
+        return [];
+    }
+
+    /**
+     * Passes through all unknown calls onto the translator object.
+     */
+    public function __call(string $method, array $args)
+    {
+        return $this->translator->{$method}(...$args);
+    }
+
+    /**
+     * @return array
+     */
+    public function getCollectedMessages()
+    {
+        return $this->messages;
+    }
+
+    private function collectMessage(?string $locale, ?string $domain, string $id, string $translation, ?array $parameters = [])
+    {
+        if (null === $domain) {
+            $domain = 'messages';
+        }
+
+        $catalogue = $this->translator->getCatalogue($locale);
+        $locale = $catalogue->getLocale();
+        $fallbackLocale = null;
+        if ($catalogue->defines($id, $domain)) {
+            $state = self::MESSAGE_DEFINED;
+        } elseif ($catalogue->has($id, $domain)) {
+            $state = self::MESSAGE_EQUALS_FALLBACK;
+
+            $fallbackCatalogue = $catalogue->getFallbackCatalogue();
+            while ($fallbackCatalogue) {
+                if ($fallbackCatalogue->defines($id, $domain)) {
+                    $fallbackLocale = $fallbackCatalogue->getLocale();
+                    break;
+                }
+                $fallbackCatalogue = $fallbackCatalogue->getFallbackCatalogue();
+            }
+        } else {
+            $state = self::MESSAGE_MISSING;
+        }
+
+        $this->messages[] = [
+            'locale' => $locale,
+            'fallbackLocale' => $fallbackLocale,
+            'domain' => $domain,
+            'id' => $id,
+            'translation' => $translation,
+            'parameters' => $parameters,
+            'state' => $state,
+            'transChoiceNumber' => isset($parameters['%count%']) && is_numeric($parameters['%count%']) ? $parameters['%count%'] : null,
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationDumperPass.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationDumperPass.php
new file mode 100644
index 0000000..6d78342
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationDumperPass.php
@@ -0,0 +1,48 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\DependencyInjection;
+
+use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\Reference;
+
+/**
+ * Adds tagged translation.formatter services to translation writer.
+ */
+class TranslationDumperPass implements CompilerPassInterface
+{
+    private $writerServiceId;
+    private $dumperTag;
+
+    public function __construct(string $writerServiceId = 'translation.writer', string $dumperTag = 'translation.dumper')
+    {
+        if (1 < \func_num_args()) {
+            trigger_deprecation('symfony/translation', '5.3', 'Configuring "%s" is deprecated.', __CLASS__);
+        }
+
+        $this->writerServiceId = $writerServiceId;
+        $this->dumperTag = $dumperTag;
+    }
+
+    public function process(ContainerBuilder $container)
+    {
+        if (!$container->hasDefinition($this->writerServiceId)) {
+            return;
+        }
+
+        $definition = $container->getDefinition($this->writerServiceId);
+
+        foreach ($container->findTaggedServiceIds($this->dumperTag, true) as $id => $attributes) {
+            $definition->addMethodCall('addDumper', [$attributes[0]['alias'], new Reference($id)]);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationExtractorPass.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationExtractorPass.php
new file mode 100644
index 0000000..fab6b20
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslationExtractorPass.php
@@ -0,0 +1,53 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\DependencyInjection;
+
+use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\Exception\RuntimeException;
+use Symfony\Component\DependencyInjection\Reference;
+
+/**
+ * Adds tagged translation.extractor services to translation extractor.
+ */
+class TranslationExtractorPass implements CompilerPassInterface
+{
+    private $extractorServiceId;
+    private $extractorTag;
+
+    public function __construct(string $extractorServiceId = 'translation.extractor', string $extractorTag = 'translation.extractor')
+    {
+        if (0 < \func_num_args()) {
+            trigger_deprecation('symfony/translation', '5.3', 'Configuring "%s" is deprecated.', __CLASS__);
+        }
+
+        $this->extractorServiceId = $extractorServiceId;
+        $this->extractorTag = $extractorTag;
+    }
+
+    public function process(ContainerBuilder $container)
+    {
+        if (!$container->hasDefinition($this->extractorServiceId)) {
+            return;
+        }
+
+        $definition = $container->getDefinition($this->extractorServiceId);
+
+        foreach ($container->findTaggedServiceIds($this->extractorTag, true) as $id => $attributes) {
+            if (!isset($attributes[0]['alias'])) {
+                throw new RuntimeException(sprintf('The alias for the tag "translation.extractor" of service "%s" must be set.', $id));
+            }
+
+            $definition->addMethodCall('addExtractor', [$attributes[0]['alias'], new Reference($id)]);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPass.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPass.php
new file mode 100644
index 0000000..c6a1306
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPass.php
@@ -0,0 +1,93 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\DependencyInjection;
+
+use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
+use Symfony\Component\DependencyInjection\Compiler\ServiceLocatorTagPass;
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\Reference;
+
+class TranslatorPass implements CompilerPassInterface
+{
+    private $translatorServiceId;
+    private $readerServiceId;
+    private $loaderTag;
+    private $debugCommandServiceId;
+    private $updateCommandServiceId;
+
+    public function __construct(string $translatorServiceId = 'translator.default', string $readerServiceId = 'translation.reader', string $loaderTag = 'translation.loader', string $debugCommandServiceId = 'console.command.translation_debug', string $updateCommandServiceId = 'console.command.translation_update')
+    {
+        if (0 < \func_num_args()) {
+            trigger_deprecation('symfony/translation', '5.3', 'Configuring "%s" is deprecated.', __CLASS__);
+        }
+
+        $this->translatorServiceId = $translatorServiceId;
+        $this->readerServiceId = $readerServiceId;
+        $this->loaderTag = $loaderTag;
+        $this->debugCommandServiceId = $debugCommandServiceId;
+        $this->updateCommandServiceId = $updateCommandServiceId;
+    }
+
+    public function process(ContainerBuilder $container)
+    {
+        if (!$container->hasDefinition($this->translatorServiceId)) {
+            return;
+        }
+
+        $loaders = [];
+        $loaderRefs = [];
+        foreach ($container->findTaggedServiceIds($this->loaderTag, true) as $id => $attributes) {
+            $loaderRefs[$id] = new Reference($id);
+            $loaders[$id][] = $attributes[0]['alias'];
+            if (isset($attributes[0]['legacy-alias'])) {
+                $loaders[$id][] = $attributes[0]['legacy-alias'];
+            }
+        }
+
+        if ($container->hasDefinition($this->readerServiceId)) {
+            $definition = $container->getDefinition($this->readerServiceId);
+            foreach ($loaders as $id => $formats) {
+                foreach ($formats as $format) {
+                    $definition->addMethodCall('addLoader', [$format, $loaderRefs[$id]]);
+                }
+            }
+        }
+
+        $container
+            ->findDefinition($this->translatorServiceId)
+            ->replaceArgument(0, ServiceLocatorTagPass::register($container, $loaderRefs))
+            ->replaceArgument(3, $loaders)
+        ;
+
+        if (!$container->hasParameter('twig.default_path')) {
+            return;
+        }
+
+        $paths = array_keys($container->getDefinition('twig.template_iterator')->getArgument(1));
+        if ($container->hasDefinition($this->debugCommandServiceId)) {
+            $definition = $container->getDefinition($this->debugCommandServiceId);
+            $definition->replaceArgument(4, $container->getParameter('twig.default_path'));
+
+            if (\count($definition->getArguments()) > 6) {
+                $definition->replaceArgument(6, $paths);
+            }
+        }
+        if ($container->hasDefinition($this->updateCommandServiceId)) {
+            $definition = $container->getDefinition($this->updateCommandServiceId);
+            $definition->replaceArgument(5, $container->getParameter('twig.default_path'));
+
+            if (\count($definition->getArguments()) > 7) {
+                $definition->replaceArgument(7, $paths);
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPathsPass.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPathsPass.php
new file mode 100644
index 0000000..85b0fa4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/DependencyInjection/TranslatorPathsPass.php
@@ -0,0 +1,151 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\DependencyInjection;
+
+use Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass;
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\Definition;
+use Symfony\Component\DependencyInjection\Reference;
+use Symfony\Component\DependencyInjection\ServiceLocator;
+
+/**
+ * @author Yonel Ceruto <yonelceruto@gmail.com>
+ */
+class TranslatorPathsPass extends AbstractRecursivePass
+{
+    private $translatorServiceId;
+    private $debugCommandServiceId;
+    private $updateCommandServiceId;
+    private $resolverServiceId;
+    private $level = 0;
+    private $paths = [];
+    private $definitions = [];
+    private $controllers = [];
+
+    public function __construct(string $translatorServiceId = 'translator', string $debugCommandServiceId = 'console.command.translation_debug', string $updateCommandServiceId = 'console.command.translation_update', string $resolverServiceId = 'argument_resolver.service')
+    {
+        if (0 < \func_num_args()) {
+            trigger_deprecation('symfony/translation', '5.3', 'Configuring "%s" is deprecated.', __CLASS__);
+        }
+
+        $this->translatorServiceId = $translatorServiceId;
+        $this->debugCommandServiceId = $debugCommandServiceId;
+        $this->updateCommandServiceId = $updateCommandServiceId;
+        $this->resolverServiceId = $resolverServiceId;
+    }
+
+    public function process(ContainerBuilder $container)
+    {
+        if (!$container->hasDefinition($this->translatorServiceId)) {
+            return;
+        }
+
+        foreach ($this->findControllerArguments($container) as $controller => $argument) {
+            $id = substr($controller, 0, strpos($controller, ':') ?: \strlen($controller));
+            if ($container->hasDefinition($id)) {
+                [$locatorRef] = $argument->getValues();
+                $this->controllers[(string) $locatorRef][$container->getDefinition($id)->getClass()] = true;
+            }
+        }
+
+        try {
+            parent::process($container);
+
+            $paths = [];
+            foreach ($this->paths as $class => $_) {
+                if (($r = $container->getReflectionClass($class)) && !$r->isInterface()) {
+                    $paths[] = $r->getFileName();
+                    foreach ($r->getTraits() as $trait) {
+                        $paths[] = $trait->getFileName();
+                    }
+                }
+            }
+            if ($paths) {
+                if ($container->hasDefinition($this->debugCommandServiceId)) {
+                    $definition = $container->getDefinition($this->debugCommandServiceId);
+                    $definition->replaceArgument(6, array_merge($definition->getArgument(6), $paths));
+                }
+                if ($container->hasDefinition($this->updateCommandServiceId)) {
+                    $definition = $container->getDefinition($this->updateCommandServiceId);
+                    $definition->replaceArgument(7, array_merge($definition->getArgument(7), $paths));
+                }
+            }
+        } finally {
+            $this->level = 0;
+            $this->paths = [];
+            $this->definitions = [];
+        }
+    }
+
+    protected function processValue($value, bool $isRoot = false)
+    {
+        if ($value instanceof Reference) {
+            if ((string) $value === $this->translatorServiceId) {
+                for ($i = $this->level - 1; $i >= 0; --$i) {
+                    $class = $this->definitions[$i]->getClass();
+
+                    if (ServiceLocator::class === $class) {
+                        if (!isset($this->controllers[$this->currentId])) {
+                            continue;
+                        }
+                        foreach ($this->controllers[$this->currentId] as $class => $_) {
+                            $this->paths[$class] = true;
+                        }
+                    } else {
+                        $this->paths[$class] = true;
+                    }
+
+                    break;
+                }
+            }
+
+            return $value;
+        }
+
+        if ($value instanceof Definition) {
+            $this->definitions[$this->level++] = $value;
+            $value = parent::processValue($value, $isRoot);
+            unset($this->definitions[--$this->level]);
+
+            return $value;
+        }
+
+        return parent::processValue($value, $isRoot);
+    }
+
+    private function findControllerArguments(ContainerBuilder $container): array
+    {
+        if ($container->hasDefinition($this->resolverServiceId)) {
+            $argument = $container->getDefinition($this->resolverServiceId)->getArgument(0);
+            if ($argument instanceof Reference) {
+                $argument = $container->getDefinition($argument);
+            }
+
+            return $argument->getArgument(0);
+        }
+
+        if ($container->hasDefinition('debug.'.$this->resolverServiceId)) {
+            $argument = $container->getDefinition('debug.'.$this->resolverServiceId)->getArgument(0);
+            if ($argument instanceof Reference) {
+                $argument = $container->getDefinition($argument);
+            }
+            $argument = $argument->getArgument(0);
+            if ($argument instanceof Reference) {
+                $argument = $container->getDefinition($argument);
+            }
+
+            return $argument->getArgument(0);
+        }
+
+        return [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/CsvFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/CsvFileDumper.php
new file mode 100644
index 0000000..0c8589a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/CsvFileDumper.php
@@ -0,0 +1,60 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * CsvFileDumper generates a csv formatted string representation of a message catalogue.
+ *
+ * @author Stealth35
+ */
+class CsvFileDumper extends FileDumper
+{
+    private $delimiter = ';';
+    private $enclosure = '"';
+
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $handle = fopen('php://memory', 'r+');
+
+        foreach ($messages->all($domain) as $source => $target) {
+            fputcsv($handle, [$source, $target], $this->delimiter, $this->enclosure);
+        }
+
+        rewind($handle);
+        $output = stream_get_contents($handle);
+        fclose($handle);
+
+        return $output;
+    }
+
+    /**
+     * Sets the delimiter and escape character for CSV.
+     */
+    public function setCsvControl(string $delimiter = ';', string $enclosure = '"')
+    {
+        $this->delimiter = $delimiter;
+        $this->enclosure = $enclosure;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'csv';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/DumperInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/DumperInterface.php
new file mode 100644
index 0000000..7cdaef5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/DumperInterface.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * DumperInterface is the interface implemented by all translation dumpers.
+ * There is no common option.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+interface DumperInterface
+{
+    /**
+     * Dumps the message catalogue.
+     *
+     * @param array $options Options that are used by the dumper
+     */
+    public function dump(MessageCatalogue $messages, array $options = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/FileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/FileDumper.php
new file mode 100644
index 0000000..e257e72
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/FileDumper.php
@@ -0,0 +1,112 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\RuntimeException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * FileDumper is an implementation of DumperInterface that dump a message catalogue to file(s).
+ *
+ * Options:
+ * - path (mandatory): the directory where the files should be saved
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+abstract class FileDumper implements DumperInterface
+{
+    /**
+     * A template for the relative paths to files.
+     *
+     * @var string
+     */
+    protected $relativePathTemplate = '%domain%.%locale%.%extension%';
+
+    /**
+     * Sets the template for the relative paths to files.
+     *
+     * @param string $relativePathTemplate A template for the relative paths to files
+     */
+    public function setRelativePathTemplate(string $relativePathTemplate)
+    {
+        $this->relativePathTemplate = $relativePathTemplate;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dump(MessageCatalogue $messages, array $options = [])
+    {
+        if (!\array_key_exists('path', $options)) {
+            throw new InvalidArgumentException('The file dumper needs a path option.');
+        }
+
+        // save a file for each domain
+        foreach ($messages->getDomains() as $domain) {
+            $fullpath = $options['path'].'/'.$this->getRelativePath($domain, $messages->getLocale());
+            if (!file_exists($fullpath)) {
+                $directory = \dirname($fullpath);
+                if (!file_exists($directory) && !@mkdir($directory, 0777, true)) {
+                    throw new RuntimeException(sprintf('Unable to create directory "%s".', $directory));
+                }
+            }
+
+            $intlDomain = $domain.MessageCatalogue::INTL_DOMAIN_SUFFIX;
+            $intlMessages = $messages->all($intlDomain);
+
+            if ($intlMessages) {
+                $intlPath = $options['path'].'/'.$this->getRelativePath($intlDomain, $messages->getLocale());
+                file_put_contents($intlPath, $this->formatCatalogue($messages, $intlDomain, $options));
+
+                $messages->replace([], $intlDomain);
+
+                try {
+                    if ($messages->all($domain)) {
+                        file_put_contents($fullpath, $this->formatCatalogue($messages, $domain, $options));
+                    }
+                    continue;
+                } finally {
+                    $messages->replace($intlMessages, $intlDomain);
+                }
+            }
+
+            file_put_contents($fullpath, $this->formatCatalogue($messages, $domain, $options));
+        }
+    }
+
+    /**
+     * Transforms a domain of a message catalogue to its string representation.
+     *
+     * @return string representation
+     */
+    abstract public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = []);
+
+    /**
+     * Gets the file extension of the dumper.
+     *
+     * @return string file extension
+     */
+    abstract protected function getExtension();
+
+    /**
+     * Gets the relative file path using the template.
+     */
+    private function getRelativePath(string $domain, string $locale): string
+    {
+        return strtr($this->relativePathTemplate, [
+            '%domain%' => $domain,
+            '%locale%' => $locale,
+            '%extension%' => $this->getExtension(),
+        ]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IcuResFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IcuResFileDumper.php
new file mode 100644
index 0000000..cdc5991
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IcuResFileDumper.php
@@ -0,0 +1,104 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * IcuResDumper generates an ICU ResourceBundle formatted string representation of a message catalogue.
+ *
+ * @author Stealth35
+ */
+class IcuResFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected $relativePathTemplate = '%domain%/%locale%.%extension%';
+
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $data = $indexes = $resources = '';
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $indexes .= pack('v', \strlen($data) + 28);
+            $data .= $source."\0";
+        }
+
+        $data .= $this->writePadding($data);
+
+        $keyTop = $this->getPosition($data);
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $resources .= pack('V', $this->getPosition($data));
+
+            $data .= pack('V', \strlen($target))
+                .mb_convert_encoding($target."\0", 'UTF-16LE', 'UTF-8')
+                .$this->writePadding($data)
+                  ;
+        }
+
+        $resOffset = $this->getPosition($data);
+
+        $data .= pack('v', \count($messages->all($domain)))
+            .$indexes
+            .$this->writePadding($data)
+            .$resources
+              ;
+
+        $bundleTop = $this->getPosition($data);
+
+        $root = pack('V7',
+            $resOffset + (2 << 28), // Resource Offset + Resource Type
+            6,                      // Index length
+            $keyTop,                        // Index keys top
+            $bundleTop,                     // Index resources top
+            $bundleTop,                     // Index bundle top
+            \count($messages->all($domain)), // Index max table length
+            0                               // Index attributes
+        );
+
+        $header = pack('vC2v4C12@32',
+            32,                     // Header size
+            0xDA, 0x27,             // Magic number 1 and 2
+            20, 0, 0, 2,            // Rest of the header, ..., Size of a char
+            0x52, 0x65, 0x73, 0x42, // Data format identifier
+            1, 2, 0, 0,             // Data version
+            1, 4, 0, 0              // Unicode version
+        );
+
+        return $header.$root.$data;
+    }
+
+    private function writePadding(string $data): ?string
+    {
+        $padding = \strlen($data) % 4;
+
+        return $padding ? str_repeat("\xAA", 4 - $padding) : null;
+    }
+
+    private function getPosition(string $data)
+    {
+        return (\strlen($data) + 28) / 4;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'res';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IniFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IniFileDumper.php
new file mode 100644
index 0000000..93c900a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/IniFileDumper.php
@@ -0,0 +1,45 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * IniFileDumper generates an ini formatted string representation of a message catalogue.
+ *
+ * @author Stealth35
+ */
+class IniFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $output = '';
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $escapeTarget = str_replace('"', '\"', $target);
+            $output .= $source.'="'.$escapeTarget."\"\n";
+        }
+
+        return $output;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'ini';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/JsonFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/JsonFileDumper.php
new file mode 100644
index 0000000..34c0b56
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/JsonFileDumper.php
@@ -0,0 +1,40 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * JsonFileDumper generates an json formatted string representation of a message catalogue.
+ *
+ * @author singles
+ */
+class JsonFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $flags = $options['json_encoding'] ?? \JSON_PRETTY_PRINT;
+
+        return json_encode($messages->all($domain), $flags);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'json';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/MoFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/MoFileDumper.php
new file mode 100644
index 0000000..54d0da8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/MoFileDumper.php
@@ -0,0 +1,82 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\Loader\MoFileLoader;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * MoFileDumper generates a gettext formatted string representation of a message catalogue.
+ *
+ * @author Stealth35
+ */
+class MoFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $sources = $targets = $sourceOffsets = $targetOffsets = '';
+        $offsets = [];
+        $size = 0;
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $offsets[] = array_map('strlen', [$sources, $source, $targets, $target]);
+            $sources .= "\0".$source;
+            $targets .= "\0".$target;
+            ++$size;
+        }
+
+        $header = [
+            'magicNumber' => MoFileLoader::MO_LITTLE_ENDIAN_MAGIC,
+            'formatRevision' => 0,
+            'count' => $size,
+            'offsetId' => MoFileLoader::MO_HEADER_SIZE,
+            'offsetTranslated' => MoFileLoader::MO_HEADER_SIZE + (8 * $size),
+            'sizeHashes' => 0,
+            'offsetHashes' => MoFileLoader::MO_HEADER_SIZE + (16 * $size),
+        ];
+
+        $sourcesSize = \strlen($sources);
+        $sourcesStart = $header['offsetHashes'] + 1;
+
+        foreach ($offsets as $offset) {
+            $sourceOffsets .= $this->writeLong($offset[1])
+                          .$this->writeLong($offset[0] + $sourcesStart);
+            $targetOffsets .= $this->writeLong($offset[3])
+                          .$this->writeLong($offset[2] + $sourcesStart + $sourcesSize);
+        }
+
+        $output = implode('', array_map([$this, 'writeLong'], $header))
+               .$sourceOffsets
+               .$targetOffsets
+               .$sources
+               .$targets
+                ;
+
+        return $output;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'mo';
+    }
+
+    private function writeLong($str): string
+    {
+        return pack('V*', $str);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PhpFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PhpFileDumper.php
new file mode 100644
index 0000000..6163b52
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PhpFileDumper.php
@@ -0,0 +1,38 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * PhpFileDumper generates PHP files from a message catalogue.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class PhpFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        return "<?php\n\nreturn ".var_export($messages->all($domain), true).";\n";
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'php';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PoFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PoFileDumper.php
new file mode 100644
index 0000000..0d82281
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/PoFileDumper.php
@@ -0,0 +1,137 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * PoFileDumper generates a gettext formatted string representation of a message catalogue.
+ *
+ * @author Stealth35
+ */
+class PoFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $output = 'msgid ""'."\n";
+        $output .= 'msgstr ""'."\n";
+        $output .= '"Content-Type: text/plain; charset=UTF-8\n"'."\n";
+        $output .= '"Content-Transfer-Encoding: 8bit\n"'."\n";
+        $output .= '"Language: '.$messages->getLocale().'\n"'."\n";
+        $output .= "\n";
+
+        $newLine = false;
+        foreach ($messages->all($domain) as $source => $target) {
+            if ($newLine) {
+                $output .= "\n";
+            } else {
+                $newLine = true;
+            }
+            $metadata = $messages->getMetadata($source, $domain);
+
+            if (isset($metadata['comments'])) {
+                $output .= $this->formatComments($metadata['comments']);
+            }
+            if (isset($metadata['flags'])) {
+                $output .= $this->formatComments(implode(',', (array) $metadata['flags']), ',');
+            }
+            if (isset($metadata['sources'])) {
+                $output .= $this->formatComments(implode(' ', (array) $metadata['sources']), ':');
+            }
+
+            $sourceRules = $this->getStandardRules($source);
+            $targetRules = $this->getStandardRules($target);
+            if (2 == \count($sourceRules) && [] !== $targetRules) {
+                $output .= sprintf('msgid "%s"'."\n", $this->escape($sourceRules[0]));
+                $output .= sprintf('msgid_plural "%s"'."\n", $this->escape($sourceRules[1]));
+                foreach ($targetRules as $i => $targetRule) {
+                    $output .= sprintf('msgstr[%d] "%s"'."\n", $i, $this->escape($targetRule));
+                }
+            } else {
+                $output .= sprintf('msgid "%s"'."\n", $this->escape($source));
+                $output .= sprintf('msgstr "%s"'."\n", $this->escape($target));
+            }
+        }
+
+        return $output;
+    }
+
+    private function getStandardRules(string $id)
+    {
+        // Partly copied from TranslatorTrait::trans.
+        $parts = [];
+        if (preg_match('/^\|++$/', $id)) {
+            $parts = explode('|', $id);
+        } elseif (preg_match_all('/(?:\|\||[^\|])++/', $id, $matches)) {
+            $parts = $matches[0];
+        }
+
+        $intervalRegexp = <<<'EOF'
+/^(?P<interval>
+    ({\s*
+        (\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)
+    \s*})
+
+        |
+
+    (?P<left_delimiter>[\[\]])
+        \s*
+        (?P<left>-Inf|\-?\d+(\.\d+)?)
+        \s*,\s*
+        (?P<right>\+?Inf|\-?\d+(\.\d+)?)
+        \s*
+    (?P<right_delimiter>[\[\]])
+)\s*(?P<message>.*?)$/xs
+EOF;
+
+        $standardRules = [];
+        foreach ($parts as $part) {
+            $part = trim(str_replace('||', '|', $part));
+
+            if (preg_match($intervalRegexp, $part)) {
+                // Explicit rule is not a standard rule.
+                return [];
+            } else {
+                $standardRules[] = $part;
+            }
+        }
+
+        return $standardRules;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'po';
+    }
+
+    private function escape(string $str): string
+    {
+        return addcslashes($str, "\0..\37\42\134");
+    }
+
+    private function formatComments($comments, string $prefix = ''): ?string
+    {
+        $output = null;
+
+        foreach ((array) $comments as $comment) {
+            $output .= sprintf('#%s %s'."\n", $prefix, $comment);
+        }
+
+        return $output;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/QtFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/QtFileDumper.php
new file mode 100644
index 0000000..406e9f0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/QtFileDumper.php
@@ -0,0 +1,61 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * QtFileDumper generates ts files from a message catalogue.
+ *
+ * @author Benjamin Eberlei <kontakt@beberlei.de>
+ */
+class QtFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $dom = new \DOMDocument('1.0', 'utf-8');
+        $dom->formatOutput = true;
+        $ts = $dom->appendChild($dom->createElement('TS'));
+        $context = $ts->appendChild($dom->createElement('context'));
+        $context->appendChild($dom->createElement('name', $domain));
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $message = $context->appendChild($dom->createElement('message'));
+            $metadata = $messages->getMetadata($source, $domain);
+            if (isset($metadata['sources'])) {
+                foreach ((array) $metadata['sources'] as $location) {
+                    $loc = explode(':', $location, 2);
+                    $location = $message->appendChild($dom->createElement('location'));
+                    $location->setAttribute('filename', $loc[0]);
+                    if (isset($loc[1])) {
+                        $location->setAttribute('line', $loc[1]);
+                    }
+                }
+            }
+            $message->appendChild($dom->createElement('source', $source));
+            $message->appendChild($dom->createElement('translation', $target));
+        }
+
+        return $dom->saveXML();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'ts';
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/XliffFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/XliffFileDumper.php
new file mode 100644
index 0000000..f7dbdcd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/XliffFileDumper.php
@@ -0,0 +1,203 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * XliffFileDumper generates xliff files from a message catalogue.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class XliffFileDumper extends FileDumper
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        $xliffVersion = '1.2';
+        if (\array_key_exists('xliff_version', $options)) {
+            $xliffVersion = $options['xliff_version'];
+        }
+
+        if (\array_key_exists('default_locale', $options)) {
+            $defaultLocale = $options['default_locale'];
+        } else {
+            $defaultLocale = \Locale::getDefault();
+        }
+
+        if ('1.2' === $xliffVersion) {
+            return $this->dumpXliff1($defaultLocale, $messages, $domain, $options);
+        }
+        if ('2.0' === $xliffVersion) {
+            return $this->dumpXliff2($defaultLocale, $messages, $domain);
+        }
+
+        throw new InvalidArgumentException(sprintf('No support implemented for dumping XLIFF version "%s".', $xliffVersion));
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return 'xlf';
+    }
+
+    private function dumpXliff1(string $defaultLocale, MessageCatalogue $messages, ?string $domain, array $options = [])
+    {
+        $toolInfo = ['tool-id' => 'symfony', 'tool-name' => 'Symfony'];
+        if (\array_key_exists('tool_info', $options)) {
+            $toolInfo = array_merge($toolInfo, $options['tool_info']);
+        }
+
+        $dom = new \DOMDocument('1.0', 'utf-8');
+        $dom->formatOutput = true;
+
+        $xliff = $dom->appendChild($dom->createElement('xliff'));
+        $xliff->setAttribute('version', '1.2');
+        $xliff->setAttribute('xmlns', 'urn:oasis:names:tc:xliff:document:1.2');
+
+        $xliffFile = $xliff->appendChild($dom->createElement('file'));
+        $xliffFile->setAttribute('source-language', str_replace('_', '-', $defaultLocale));
+        $xliffFile->setAttribute('target-language', str_replace('_', '-', $messages->getLocale()));
+        $xliffFile->setAttribute('datatype', 'plaintext');
+        $xliffFile->setAttribute('original', 'file.ext');
+
+        $xliffHead = $xliffFile->appendChild($dom->createElement('header'));
+        $xliffTool = $xliffHead->appendChild($dom->createElement('tool'));
+        foreach ($toolInfo as $id => $value) {
+            $xliffTool->setAttribute($id, $value);
+        }
+
+        $xliffBody = $xliffFile->appendChild($dom->createElement('body'));
+        foreach ($messages->all($domain) as $source => $target) {
+            $translation = $dom->createElement('trans-unit');
+
+            $translation->setAttribute('id', strtr(substr(base64_encode(hash('sha256', $source, true)), 0, 7), '/+', '._'));
+            $translation->setAttribute('resname', $source);
+
+            $s = $translation->appendChild($dom->createElement('source'));
+            $s->appendChild($dom->createTextNode($source));
+
+            // Does the target contain characters requiring a CDATA section?
+            $text = 1 === preg_match('/[&<>]/', $target) ? $dom->createCDATASection($target) : $dom->createTextNode($target);
+
+            $targetElement = $dom->createElement('target');
+            $metadata = $messages->getMetadata($source, $domain);
+            if ($this->hasMetadataArrayInfo('target-attributes', $metadata)) {
+                foreach ($metadata['target-attributes'] as $name => $value) {
+                    $targetElement->setAttribute($name, $value);
+                }
+            }
+            $t = $translation->appendChild($targetElement);
+            $t->appendChild($text);
+
+            if ($this->hasMetadataArrayInfo('notes', $metadata)) {
+                foreach ($metadata['notes'] as $note) {
+                    if (!isset($note['content'])) {
+                        continue;
+                    }
+
+                    $n = $translation->appendChild($dom->createElement('note'));
+                    $n->appendChild($dom->createTextNode($note['content']));
+
+                    if (isset($note['priority'])) {
+                        $n->setAttribute('priority', $note['priority']);
+                    }
+
+                    if (isset($note['from'])) {
+                        $n->setAttribute('from', $note['from']);
+                    }
+                }
+            }
+
+            $xliffBody->appendChild($translation);
+        }
+
+        return $dom->saveXML();
+    }
+
+    private function dumpXliff2(string $defaultLocale, MessageCatalogue $messages, ?string $domain)
+    {
+        $dom = new \DOMDocument('1.0', 'utf-8');
+        $dom->formatOutput = true;
+
+        $xliff = $dom->appendChild($dom->createElement('xliff'));
+        $xliff->setAttribute('xmlns', 'urn:oasis:names:tc:xliff:document:2.0');
+        $xliff->setAttribute('version', '2.0');
+        $xliff->setAttribute('srcLang', str_replace('_', '-', $defaultLocale));
+        $xliff->setAttribute('trgLang', str_replace('_', '-', $messages->getLocale()));
+
+        $xliffFile = $xliff->appendChild($dom->createElement('file'));
+        if (str_ends_with($domain, MessageCatalogue::INTL_DOMAIN_SUFFIX)) {
+            $xliffFile->setAttribute('id', substr($domain, 0, -\strlen(MessageCatalogue::INTL_DOMAIN_SUFFIX)).'.'.$messages->getLocale());
+        } else {
+            $xliffFile->setAttribute('id', $domain.'.'.$messages->getLocale());
+        }
+
+        foreach ($messages->all($domain) as $source => $target) {
+            $translation = $dom->createElement('unit');
+            $translation->setAttribute('id', strtr(substr(base64_encode(hash('sha256', $source, true)), 0, 7), '/+', '._'));
+
+            if (\strlen($source) <= 80) {
+                $translation->setAttribute('name', $source);
+            }
+
+            $metadata = $messages->getMetadata($source, $domain);
+
+            // Add notes section
+            if ($this->hasMetadataArrayInfo('notes', $metadata)) {
+                $notesElement = $dom->createElement('notes');
+                foreach ($metadata['notes'] as $note) {
+                    $n = $dom->createElement('note');
+                    $n->appendChild($dom->createTextNode($note['content'] ?? ''));
+                    unset($note['content']);
+
+                    foreach ($note as $name => $value) {
+                        $n->setAttribute($name, $value);
+                    }
+                    $notesElement->appendChild($n);
+                }
+                $translation->appendChild($notesElement);
+            }
+
+            $segment = $translation->appendChild($dom->createElement('segment'));
+
+            $s = $segment->appendChild($dom->createElement('source'));
+            $s->appendChild($dom->createTextNode($source));
+
+            // Does the target contain characters requiring a CDATA section?
+            $text = 1 === preg_match('/[&<>]/', $target) ? $dom->createCDATASection($target) : $dom->createTextNode($target);
+
+            $targetElement = $dom->createElement('target');
+            if ($this->hasMetadataArrayInfo('target-attributes', $metadata)) {
+                foreach ($metadata['target-attributes'] as $name => $value) {
+                    $targetElement->setAttribute($name, $value);
+                }
+            }
+            $t = $segment->appendChild($targetElement);
+            $t->appendChild($text);
+
+            $xliffFile->appendChild($translation);
+        }
+
+        return $dom->saveXML();
+    }
+
+    private function hasMetadataArrayInfo(string $key, array $metadata = null): bool
+    {
+        return is_iterable($metadata[$key] ?? null);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/YamlFileDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/YamlFileDumper.php
new file mode 100644
index 0000000..0b21e8c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Dumper/YamlFileDumper.php
@@ -0,0 +1,62 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Dumper;
+
+use Symfony\Component\Translation\Exception\LogicException;
+use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\Util\ArrayConverter;
+use Symfony\Component\Yaml\Yaml;
+
+/**
+ * YamlFileDumper generates yaml files from a message catalogue.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class YamlFileDumper extends FileDumper
+{
+    private $extension;
+
+    public function __construct(string $extension = 'yml')
+    {
+        $this->extension = $extension;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = [])
+    {
+        if (!class_exists(Yaml::class)) {
+            throw new LogicException('Dumping translations in the YAML format requires the Symfony Yaml component.');
+        }
+
+        $data = $messages->all($domain);
+
+        if (isset($options['as_tree']) && $options['as_tree']) {
+            $data = ArrayConverter::expandToTree($data);
+        }
+
+        if (isset($options['inline']) && ($inline = (int) $options['inline']) > 0) {
+            return Yaml::dump($data, $inline);
+        }
+
+        return Yaml::dump($data);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getExtension()
+    {
+        return $this->extension;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ExceptionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ExceptionInterface.php
new file mode 100644
index 0000000..8f9c54e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ExceptionInterface.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Exception interface for all exceptions thrown by the component.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+interface ExceptionInterface extends \Throwable
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/IncompleteDsnException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/IncompleteDsnException.php
new file mode 100644
index 0000000..cb0ce02
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/IncompleteDsnException.php
@@ -0,0 +1,24 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+class IncompleteDsnException extends InvalidArgumentException
+{
+    public function __construct(string $message, string $dsn = null, \Throwable $previous = null)
+    {
+        if ($dsn) {
+            $message = sprintf('Invalid "%s" provider DSN: ', $dsn).$message;
+        }
+
+        parent::__construct($message, 0, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidArgumentException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidArgumentException.php
new file mode 100644
index 0000000..90d0669
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidArgumentException.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Base InvalidArgumentException for the Translation component.
+ *
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidResourceException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidResourceException.php
new file mode 100644
index 0000000..cf07943
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/InvalidResourceException.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Thrown when a resource cannot be loaded.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class InvalidResourceException extends \InvalidArgumentException implements ExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/LogicException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/LogicException.php
new file mode 100644
index 0000000..9019c7e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/LogicException.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Base LogicException for Translation component.
+ *
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class LogicException extends \LogicException implements ExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/MissingRequiredOptionException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/MissingRequiredOptionException.php
new file mode 100644
index 0000000..2b5f808
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/MissingRequiredOptionException.php
@@ -0,0 +1,25 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * @author Oskar Stark <oskarstark@googlemail.com>
+ */
+class MissingRequiredOptionException extends IncompleteDsnException
+{
+    public function __construct(string $option, string $dsn = null, \Throwable $previous = null)
+    {
+        $message = sprintf('The option "%s" is required but missing.', $option);
+
+        parent::__construct($message, $dsn, $previous);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/NotFoundResourceException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/NotFoundResourceException.php
new file mode 100644
index 0000000..cff73ae
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/NotFoundResourceException.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Thrown when a resource does not exist.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class NotFoundResourceException extends \InvalidArgumentException implements ExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderException.php
new file mode 100644
index 0000000..659c6d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderException.php
@@ -0,0 +1,43 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+use Symfony\Contracts\HttpClient\ResponseInterface;
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ *
+ * @experimental in 5.3
+ */
+class ProviderException extends RuntimeException implements ProviderExceptionInterface
+{
+    private $response;
+    private $debug;
+
+    public function __construct(string $message, ResponseInterface $response, int $code = 0, \Exception $previous = null)
+    {
+        $this->response = $response;
+        $this->debug .= $response->getInfo('debug') ?? '';
+
+        parent::__construct($message, $code, $previous);
+    }
+
+    public function getResponse(): ResponseInterface
+    {
+        return $this->response;
+    }
+
+    public function getDebug(): string
+    {
+        return $this->debug;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderExceptionInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderExceptionInterface.php
new file mode 100644
index 0000000..8cf1c51
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/ProviderExceptionInterface.php
@@ -0,0 +1,25 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ *
+ * @experimental in 5.3
+ */
+interface ProviderExceptionInterface extends ExceptionInterface
+{
+    /*
+     * Returns debug info coming from the Symfony\Contracts\HttpClient\ResponseInterface
+     */
+    public function getDebug(): string;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/RuntimeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/RuntimeException.php
new file mode 100644
index 0000000..dcd7940
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/RuntimeException.php
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+/**
+ * Base RuntimeException for the Translation component.
+ *
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class RuntimeException extends \RuntimeException implements ExceptionInterface
+{
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/UnsupportedSchemeException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/UnsupportedSchemeException.php
new file mode 100644
index 0000000..7fbaa8f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Exception/UnsupportedSchemeException.php
@@ -0,0 +1,54 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Exception;
+
+use Symfony\Component\Translation\Bridge;
+use Symfony\Component\Translation\Provider\Dsn;
+
+class UnsupportedSchemeException extends LogicException
+{
+    private const SCHEME_TO_PACKAGE_MAP = [
+        'crowdin' => [
+            'class' => Bridge\Crowdin\CrowdinProviderFactory::class,
+            'package' => 'symfony/crowdin-translation-provider',
+        ],
+        'loco' => [
+            'class' => Bridge\Loco\LocoProviderFactory::class,
+            'package' => 'symfony/loco-translation-provider',
+        ],
+        'lokalise' => [
+            'class' => Bridge\Lokalise\LokaliseProviderFactory::class,
+            'package' => 'symfony/lokalise-translation-provider',
+        ],
+    ];
+
+    public function __construct(Dsn $dsn, string $name = null, array $supported = [])
+    {
+        $provider = $dsn->getScheme();
+        if (false !== $pos = strpos($provider, '+')) {
+            $provider = substr($provider, 0, $pos);
+        }
+        $package = self::SCHEME_TO_PACKAGE_MAP[$provider] ?? null;
+        if ($package && !class_exists($package['class'])) {
+            parent::__construct(sprintf('Unable to synchronize translations via "%s" as the provider is not installed; try running "composer require %s".', $provider, $package['package']));
+
+            return;
+        }
+
+        $message = sprintf('The "%s" scheme is not supported', $dsn->getScheme());
+        if ($name && $supported) {
+            $message .= sprintf('; supported schemes for translation provider "%s" are: "%s"', $name, implode('", "', $supported));
+        }
+
+        parent::__construct($message.'.');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/AbstractFileExtractor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/AbstractFileExtractor.php
new file mode 100644
index 0000000..729dd17
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/AbstractFileExtractor.php
@@ -0,0 +1,76 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Extractor;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+
+/**
+ * Base class used by classes that extract translation messages from files.
+ *
+ * @author Marcos D. Sánchez <marcosdsanchez@gmail.com>
+ */
+abstract class AbstractFileExtractor
+{
+    /**
+     * @param string|iterable $resource Files, a file or a directory
+     *
+     * @return iterable
+     */
+    protected function extractFiles($resource)
+    {
+        if (is_iterable($resource)) {
+            $files = [];
+            foreach ($resource as $file) {
+                if ($this->canBeExtracted($file)) {
+                    $files[] = $this->toSplFileInfo($file);
+                }
+            }
+        } elseif (is_file($resource)) {
+            $files = $this->canBeExtracted($resource) ? [$this->toSplFileInfo($resource)] : [];
+        } else {
+            $files = $this->extractFromDirectory($resource);
+        }
+
+        return $files;
+    }
+
+    private function toSplFileInfo(string $file): \SplFileInfo
+    {
+        return new \SplFileInfo($file);
+    }
+
+    /**
+     * @return bool
+     *
+     * @throws InvalidArgumentException
+     */
+    protected function isFile(string $file)
+    {
+        if (!is_file($file)) {
+            throw new InvalidArgumentException(sprintf('The "%s" file does not exist.', $file));
+        }
+
+        return true;
+    }
+
+    /**
+     * @return bool
+     */
+    abstract protected function canBeExtracted(string $file);
+
+    /**
+     * @param string|array $resource Files, a file or a directory
+     *
+     * @return iterable files to be extracted
+     */
+    abstract protected function extractFromDirectory($resource);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ChainExtractor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ChainExtractor.php
new file mode 100644
index 0000000..95dcf15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ChainExtractor.php
@@ -0,0 +1,57 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Extractor;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * ChainExtractor extracts translation messages from template files.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class ChainExtractor implements ExtractorInterface
+{
+    /**
+     * The extractors.
+     *
+     * @var ExtractorInterface[]
+     */
+    private $extractors = [];
+
+    /**
+     * Adds a loader to the translation extractor.
+     */
+    public function addExtractor(string $format, ExtractorInterface $extractor)
+    {
+        $this->extractors[$format] = $extractor;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setPrefix(string $prefix)
+    {
+        foreach ($this->extractors as $extractor) {
+            $extractor->setPrefix($prefix);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function extract($directory, MessageCatalogue $catalogue)
+    {
+        foreach ($this->extractors as $extractor) {
+            $extractor->extract($directory, $catalogue);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ExtractorInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ExtractorInterface.php
new file mode 100644
index 0000000..e1db8a9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/ExtractorInterface.php
@@ -0,0 +1,35 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Extractor;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * Extracts translation messages from a directory or files to the catalogue.
+ * New found messages are injected to the catalogue using the prefix.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+interface ExtractorInterface
+{
+    /**
+     * Extracts translation messages from files, a file or a directory to the catalogue.
+     *
+     * @param string|iterable<string> $resource Files, a file or a directory
+     */
+    public function extract($resource, MessageCatalogue $catalogue);
+
+    /**
+     * Sets the prefix that should be used for new found messages.
+     */
+    public function setPrefix(string $prefix);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpExtractor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpExtractor.php
new file mode 100644
index 0000000..c5efb5f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpExtractor.php
@@ -0,0 +1,336 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Extractor;
+
+use Symfony\Component\Finder\Finder;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * PhpExtractor extracts translation messages from a PHP template.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class PhpExtractor extends AbstractFileExtractor implements ExtractorInterface
+{
+    public const MESSAGE_TOKEN = 300;
+    public const METHOD_ARGUMENTS_TOKEN = 1000;
+    public const DOMAIN_TOKEN = 1001;
+
+    /**
+     * Prefix for new found message.
+     *
+     * @var string
+     */
+    private $prefix = '';
+
+    /**
+     * The sequence that captures translation messages.
+     *
+     * @var array
+     */
+    protected $sequences = [
+        [
+            '->',
+            'trans',
+            '(',
+            self::MESSAGE_TOKEN,
+            ',',
+            self::METHOD_ARGUMENTS_TOKEN,
+            ',',
+            self::DOMAIN_TOKEN,
+        ],
+        [
+            '->',
+            'trans',
+            '(',
+            self::MESSAGE_TOKEN,
+        ],
+        [
+            'new',
+            'TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+            ',',
+            self::METHOD_ARGUMENTS_TOKEN,
+            ',',
+            self::DOMAIN_TOKEN,
+        ],
+        [
+            'new',
+            'TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+        ],
+        [
+            'new',
+            '\\',
+            'Symfony',
+            '\\',
+            'Component',
+            '\\',
+            'Translation',
+            '\\',
+            'TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+            ',',
+            self::METHOD_ARGUMENTS_TOKEN,
+            ',',
+            self::DOMAIN_TOKEN,
+        ],
+        [
+            'new',
+            '\Symfony\Component\Translation\TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+            ',',
+            self::METHOD_ARGUMENTS_TOKEN,
+            ',',
+            self::DOMAIN_TOKEN,
+        ],
+        [
+            'new',
+            '\\',
+            'Symfony',
+            '\\',
+            'Component',
+            '\\',
+            'Translation',
+            '\\',
+            'TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+        ],
+        [
+            'new',
+            '\Symfony\Component\Translation\TranslatableMessage',
+            '(',
+            self::MESSAGE_TOKEN,
+        ],
+        [
+            't',
+            '(',
+            self::MESSAGE_TOKEN,
+            ',',
+            self::METHOD_ARGUMENTS_TOKEN,
+            ',',
+            self::DOMAIN_TOKEN,
+        ],
+        [
+            't',
+            '(',
+            self::MESSAGE_TOKEN,
+        ],
+    ];
+
+    /**
+     * {@inheritdoc}
+     */
+    public function extract($resource, MessageCatalogue $catalog)
+    {
+        $files = $this->extractFiles($resource);
+        foreach ($files as $file) {
+            $this->parseTokens(token_get_all(file_get_contents($file)), $catalog, $file);
+
+            gc_mem_caches();
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setPrefix(string $prefix)
+    {
+        $this->prefix = $prefix;
+    }
+
+    /**
+     * Normalizes a token.
+     *
+     * @param mixed $token
+     *
+     * @return string|null
+     */
+    protected function normalizeToken($token)
+    {
+        if (isset($token[1]) && 'b"' !== $token) {
+            return $token[1];
+        }
+
+        return $token;
+    }
+
+    /**
+     * Seeks to a non-whitespace token.
+     */
+    private function seekToNextRelevantToken(\Iterator $tokenIterator)
+    {
+        for (; $tokenIterator->valid(); $tokenIterator->next()) {
+            $t = $tokenIterator->current();
+            if (\T_WHITESPACE !== $t[0]) {
+                break;
+            }
+        }
+    }
+
+    private function skipMethodArgument(\Iterator $tokenIterator)
+    {
+        $openBraces = 0;
+
+        for (; $tokenIterator->valid(); $tokenIterator->next()) {
+            $t = $tokenIterator->current();
+
+            if ('[' === $t[0] || '(' === $t[0]) {
+                ++$openBraces;
+            }
+
+            if (']' === $t[0] || ')' === $t[0]) {
+                --$openBraces;
+            }
+
+            if ((0 === $openBraces && ',' === $t[0]) || (-1 === $openBraces && ')' === $t[0])) {
+                break;
+            }
+        }
+    }
+
+    /**
+     * Extracts the message from the iterator while the tokens
+     * match allowed message tokens.
+     */
+    private function getValue(\Iterator $tokenIterator)
+    {
+        $message = '';
+        $docToken = '';
+        $docPart = '';
+
+        for (; $tokenIterator->valid(); $tokenIterator->next()) {
+            $t = $tokenIterator->current();
+            if ('.' === $t) {
+                // Concatenate with next token
+                continue;
+            }
+            if (!isset($t[1])) {
+                break;
+            }
+
+            switch ($t[0]) {
+                case \T_START_HEREDOC:
+                    $docToken = $t[1];
+                    break;
+                case \T_ENCAPSED_AND_WHITESPACE:
+                case \T_CONSTANT_ENCAPSED_STRING:
+                    if ('' === $docToken) {
+                        $message .= PhpStringTokenParser::parse($t[1]);
+                    } else {
+                        $docPart = $t[1];
+                    }
+                    break;
+                case \T_END_HEREDOC:
+                    if ($indentation = strspn($t[1], ' ')) {
+                        $docPartWithLineBreaks = $docPart;
+                        $docPart = '';
+
+                        foreach (preg_split('~(\r\n|\n|\r)~', $docPartWithLineBreaks, -1, \PREG_SPLIT_DELIM_CAPTURE) as $str) {
+                            if (\in_array($str, ["\r\n", "\n", "\r"], true)) {
+                                $docPart .= $str;
+                            } else {
+                                $docPart .= substr($str, $indentation);
+                            }
+                        }
+                    }
+
+                    $message .= PhpStringTokenParser::parseDocString($docToken, $docPart);
+                    $docToken = '';
+                    $docPart = '';
+                    break;
+                case \T_WHITESPACE:
+                    break;
+                default:
+                    break 2;
+            }
+        }
+
+        return $message;
+    }
+
+    /**
+     * Extracts trans message from PHP tokens.
+     */
+    protected function parseTokens(array $tokens, MessageCatalogue $catalog, string $filename)
+    {
+        $tokenIterator = new \ArrayIterator($tokens);
+
+        for ($key = 0; $key < $tokenIterator->count(); ++$key) {
+            foreach ($this->sequences as $sequence) {
+                $message = '';
+                $domain = 'messages';
+                $tokenIterator->seek($key);
+
+                foreach ($sequence as $sequenceKey => $item) {
+                    $this->seekToNextRelevantToken($tokenIterator);
+
+                    if ($this->normalizeToken($tokenIterator->current()) === $item) {
+                        $tokenIterator->next();
+                        continue;
+                    } elseif (self::MESSAGE_TOKEN === $item) {
+                        $message = $this->getValue($tokenIterator);
+
+                        if (\count($sequence) === ($sequenceKey + 1)) {
+                            break;
+                        }
+                    } elseif (self::METHOD_ARGUMENTS_TOKEN === $item) {
+                        $this->skipMethodArgument($tokenIterator);
+                    } elseif (self::DOMAIN_TOKEN === $item) {
+                        $domainToken = $this->getValue($tokenIterator);
+                        if ('' !== $domainToken) {
+                            $domain = $domainToken;
+                        }
+
+                        break;
+                    } else {
+                        break;
+                    }
+                }
+
+                if ($message) {
+                    $catalog->set($message, $this->prefix.$message, $domain);
+                    $metadata = $catalog->getMetadata($message, $domain) ?? [];
+                    $normalizedFilename = preg_replace('{[\\\\/]+}', '/', $filename);
+                    $metadata['sources'][] = $normalizedFilename.':'.$tokens[$key][2];
+                    $catalog->setMetadata($message, $metadata, $domain);
+                    break;
+                }
+            }
+        }
+    }
+
+    /**
+     * @return bool
+     *
+     * @throws \InvalidArgumentException
+     */
+    protected function canBeExtracted(string $file)
+    {
+        return $this->isFile($file) && 'php' === pathinfo($file, \PATHINFO_EXTENSION);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function extractFromDirectory($directory)
+    {
+        $finder = new Finder();
+
+        return $finder->files()->name('*.php')->in($directory);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpStringTokenParser.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpStringTokenParser.php
new file mode 100644
index 0000000..1d82caf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Extractor/PhpStringTokenParser.php
@@ -0,0 +1,142 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Extractor;
+
+/*
+ * The following is derived from code at http://github.com/nikic/PHP-Parser
+ *
+ * Copyright (c) 2011 by Nikita Popov
+ *
+ * Some rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *
+ *     * Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *
+ *     * The names of the contributors may not be used to endorse or
+ *       promote products derived from this software without specific
+ *       prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+class PhpStringTokenParser
+{
+    protected static $replacements = [
+        '\\' => '\\',
+        '$' => '$',
+        'n' => "\n",
+        'r' => "\r",
+        't' => "\t",
+        'f' => "\f",
+        'v' => "\v",
+        'e' => "\x1B",
+    ];
+
+    /**
+     * Parses a string token.
+     *
+     * @param string $str String token content
+     *
+     * @return string The parsed string
+     */
+    public static function parse(string $str)
+    {
+        $bLength = 0;
+        if ('b' === $str[0]) {
+            $bLength = 1;
+        }
+
+        if ('\'' === $str[$bLength]) {
+            return str_replace(
+                ['\\\\', '\\\''],
+                ['\\', '\''],
+                substr($str, $bLength + 1, -1)
+            );
+        } else {
+            return self::parseEscapeSequences(substr($str, $bLength + 1, -1), '"');
+        }
+    }
+
+    /**
+     * Parses escape sequences in strings (all string types apart from single quoted).
+     *
+     * @param string      $str   String without quotes
+     * @param string|null $quote Quote type
+     *
+     * @return string String with escape sequences parsed
+     */
+    public static function parseEscapeSequences(string $str, string $quote = null)
+    {
+        if (null !== $quote) {
+            $str = str_replace('\\'.$quote, $quote, $str);
+        }
+
+        return preg_replace_callback(
+            '~\\\\([\\\\$nrtfve]|[xX][0-9a-fA-F]{1,2}|[0-7]{1,3})~',
+            [__CLASS__, 'parseCallback'],
+            $str
+        );
+    }
+
+    private static function parseCallback(array $matches): string
+    {
+        $str = $matches[1];
+
+        if (isset(self::$replacements[$str])) {
+            return self::$replacements[$str];
+        } elseif ('x' === $str[0] || 'X' === $str[0]) {
+            return \chr(hexdec($str));
+        } else {
+            return \chr(octdec($str));
+        }
+    }
+
+    /**
+     * Parses a constant doc string.
+     *
+     * @param string $startToken Doc string start token content (<<<SMTHG)
+     * @param string $str        String token content
+     *
+     * @return string Parsed string
+     */
+    public static function parseDocString(string $startToken, string $str)
+    {
+        // strip last newline (thanks tokenizer for sticking it into the string!)
+        $str = preg_replace('~(\r\n|\n|\r)$~', '', $str);
+
+        // nowdoc string
+        if (str_contains($startToken, '\'')) {
+            return $str;
+        }
+
+        return self::parseEscapeSequences($str, null);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatter.php
new file mode 100644
index 0000000..f7f1c36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatter.php
@@ -0,0 +1,60 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Formatter;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\LogicException;
+
+/**
+ * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class IntlFormatter implements IntlFormatterInterface
+{
+    private $hasMessageFormatter;
+    private $cache = [];
+
+    /**
+     * {@inheritdoc}
+     */
+    public function formatIntl(string $message, string $locale, array $parameters = []): string
+    {
+        // MessageFormatter constructor throws an exception if the message is empty
+        if ('' === $message) {
+            return '';
+        }
+
+        if (!$formatter = $this->cache[$locale][$message] ?? null) {
+            if (!($this->hasMessageFormatter ?? $this->hasMessageFormatter = class_exists(\MessageFormatter::class))) {
+                throw new LogicException('Cannot parse message translation: please install the "intl" PHP extension or the "symfony/polyfill-intl-messageformatter" package.');
+            }
+            try {
+                $this->cache[$locale][$message] = $formatter = new \MessageFormatter($locale, $message);
+            } catch (\IntlException $e) {
+                throw new InvalidArgumentException(sprintf('Invalid message format (error #%d): ', intl_get_error_code()).intl_get_error_message(), 0, $e);
+            }
+        }
+
+        foreach ($parameters as $key => $value) {
+            if (\in_array($key[0] ?? null, ['%', '{'], true)) {
+                unset($parameters[$key]);
+                $parameters[trim($key, '%{ }')] = $value;
+            }
+        }
+
+        if (false === $message = $formatter->format($parameters)) {
+            throw new InvalidArgumentException(sprintf('Unable to format message (error #%s): ', $formatter->getErrorCode()).$formatter->getErrorMessage());
+        }
+
+        return $message;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatterInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatterInterface.php
new file mode 100644
index 0000000..02fc6ac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/IntlFormatterInterface.php
@@ -0,0 +1,27 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Formatter;
+
+/**
+ * Formats ICU message patterns.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+interface IntlFormatterInterface
+{
+    /**
+     * Formats a localized message using rules defined by ICU MessageFormat.
+     *
+     * @see http://icu-project.org/apiref/icu4c/classMessageFormat.html#details
+     */
+    public function formatIntl(string $message, string $locale, array $parameters = []): string;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatter.php
new file mode 100644
index 0000000..0407964
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatter.php
@@ -0,0 +1,56 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Formatter;
+
+use Symfony\Component\Translation\IdentityTranslator;
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+// Help opcache.preload discover always-needed symbols
+class_exists(IntlFormatter::class);
+
+/**
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class MessageFormatter implements MessageFormatterInterface, IntlFormatterInterface
+{
+    private $translator;
+    private $intlFormatter;
+
+    /**
+     * @param TranslatorInterface|null $translator An identity translator to use as selector for pluralization
+     */
+    public function __construct(TranslatorInterface $translator = null, IntlFormatterInterface $intlFormatter = null)
+    {
+        $this->translator = $translator ?? new IdentityTranslator();
+        $this->intlFormatter = $intlFormatter ?? new IntlFormatter();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function format(string $message, string $locale, array $parameters = [])
+    {
+        if ($this->translator instanceof TranslatorInterface) {
+            return $this->translator->trans($message, $parameters, null, $locale);
+        }
+
+        return strtr($message, $parameters);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function formatIntl(string $message, string $locale, array $parameters = []): string
+    {
+        return $this->intlFormatter->formatIntl($message, $locale, $parameters);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatterInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatterInterface.php
new file mode 100644
index 0000000..b85dbfd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Formatter/MessageFormatterInterface.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Formatter;
+
+/**
+ * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+interface MessageFormatterInterface
+{
+    /**
+     * Formats a localized message pattern with given arguments.
+     *
+     * @param string $message    The message (may also be an object that can be cast to string)
+     * @param string $locale     The message locale
+     * @param array  $parameters An array of parameters for the message
+     *
+     * @return string
+     */
+    public function format(string $message, string $locale, array $parameters = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/IdentityTranslator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/IdentityTranslator.php
new file mode 100644
index 0000000..46875ed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/IdentityTranslator.php
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Contracts\Translation\LocaleAwareInterface;
+use Symfony\Contracts\Translation\TranslatorInterface;
+use Symfony\Contracts\Translation\TranslatorTrait;
+
+/**
+ * IdentityTranslator does not translate anything.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class IdentityTranslator implements TranslatorInterface, LocaleAwareInterface
+{
+    use TranslatorTrait;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LICENSE
new file mode 100644
index 0000000..9ff2d0d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2004-2021 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/ArrayLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/ArrayLoader.php
new file mode 100644
index 0000000..0758da8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/ArrayLoader.php
@@ -0,0 +1,58 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * ArrayLoader loads translations from a PHP array.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class ArrayLoader implements LoaderInterface
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        $resource = $this->flatten($resource);
+        $catalogue = new MessageCatalogue($locale);
+        $catalogue->add($resource, $domain);
+
+        return $catalogue;
+    }
+
+    /**
+     * Flattens an nested array of translations.
+     *
+     * The scheme used is:
+     *   'key' => ['key2' => ['key3' => 'value']]
+     * Becomes:
+     *   'key.key2.key3' => 'value'
+     */
+    private function flatten(array $messages): array
+    {
+        $result = [];
+        foreach ($messages as $key => $value) {
+            if (\is_array($value)) {
+                foreach ($this->flatten($value) as $k => $v) {
+                    $result[$key.'.'.$k] = $v;
+                }
+            } else {
+                $result[$key] = $value;
+            }
+        }
+
+        return $result;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/CsvFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/CsvFileLoader.php
new file mode 100644
index 0000000..8d5d4db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/CsvFileLoader.php
@@ -0,0 +1,65 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+
+/**
+ * CsvFileLoader loads translations from CSV files.
+ *
+ * @author Saša Stamenković <umpirsky@gmail.com>
+ */
+class CsvFileLoader extends FileLoader
+{
+    private $delimiter = ';';
+    private $enclosure = '"';
+    private $escape = '\\';
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        $messages = [];
+
+        try {
+            $file = new \SplFileObject($resource, 'rb');
+        } catch (\RuntimeException $e) {
+            throw new NotFoundResourceException(sprintf('Error opening file "%s".', $resource), 0, $e);
+        }
+
+        $file->setFlags(\SplFileObject::READ_CSV | \SplFileObject::SKIP_EMPTY);
+        $file->setCsvControl($this->delimiter, $this->enclosure, $this->escape);
+
+        foreach ($file as $data) {
+            if (false === $data) {
+                continue;
+            }
+
+            if ('#' !== substr($data[0], 0, 1) && isset($data[1]) && 2 === \count($data)) {
+                $messages[$data[0]] = $data[1];
+            }
+        }
+
+        return $messages;
+    }
+
+    /**
+     * Sets the delimiter, enclosure, and escape character for CSV.
+     */
+    public function setCsvControl(string $delimiter = ';', string $enclosure = '"', string $escape = '\\')
+    {
+        $this->delimiter = $delimiter;
+        $this->enclosure = $enclosure;
+        $this->escape = $escape;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/FileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/FileLoader.php
new file mode 100644
index 0000000..4725ea6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/FileLoader.php
@@ -0,0 +1,63 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Config\Resource\FileResource;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+
+/**
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+abstract class FileLoader extends ArrayLoader
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        if (!stream_is_local($resource)) {
+            throw new InvalidResourceException(sprintf('This is not a local file "%s".', $resource));
+        }
+
+        if (!file_exists($resource)) {
+            throw new NotFoundResourceException(sprintf('File "%s" not found.', $resource));
+        }
+
+        $messages = $this->loadResource($resource);
+
+        // empty resource
+        if (null === $messages) {
+            $messages = [];
+        }
+
+        // not an array
+        if (!\is_array($messages)) {
+            throw new InvalidResourceException(sprintf('Unable to load file "%s".', $resource));
+        }
+
+        $catalogue = parent::load($messages, $locale, $domain);
+
+        if (class_exists(FileResource::class)) {
+            $catalogue->addResource(new FileResource($resource));
+        }
+
+        return $catalogue;
+    }
+
+    /**
+     * @return array
+     *
+     * @throws InvalidResourceException if stream content has an invalid format
+     */
+    abstract protected function loadResource(string $resource);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuDatFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuDatFileLoader.php
new file mode 100644
index 0000000..2a1aecc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuDatFileLoader.php
@@ -0,0 +1,61 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Config\Resource\FileResource;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * IcuResFileLoader loads translations from a resource bundle.
+ *
+ * @author stealth35
+ */
+class IcuDatFileLoader extends IcuResFileLoader
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        if (!stream_is_local($resource.'.dat')) {
+            throw new InvalidResourceException(sprintf('This is not a local file "%s".', $resource));
+        }
+
+        if (!file_exists($resource.'.dat')) {
+            throw new NotFoundResourceException(sprintf('File "%s" not found.', $resource));
+        }
+
+        try {
+            $rb = new \ResourceBundle($locale, $resource);
+        } catch (\Exception $e) {
+            $rb = null;
+        }
+
+        if (!$rb) {
+            throw new InvalidResourceException(sprintf('Cannot load resource "%s".', $resource));
+        } elseif (intl_is_failure($rb->getErrorCode())) {
+            throw new InvalidResourceException($rb->getErrorMessage(), $rb->getErrorCode());
+        }
+
+        $messages = $this->flatten($rb);
+        $catalogue = new MessageCatalogue($locale);
+        $catalogue->add($messages, $domain);
+
+        if (class_exists(FileResource::class)) {
+            $catalogue->addResource(new FileResource($resource.'.dat'));
+        }
+
+        return $catalogue;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuResFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuResFileLoader.php
new file mode 100644
index 0000000..64bbd3e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IcuResFileLoader.php
@@ -0,0 +1,91 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Config\Resource\DirectoryResource;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * IcuResFileLoader loads translations from a resource bundle.
+ *
+ * @author stealth35
+ */
+class IcuResFileLoader implements LoaderInterface
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        if (!stream_is_local($resource)) {
+            throw new InvalidResourceException(sprintf('This is not a local file "%s".', $resource));
+        }
+
+        if (!is_dir($resource)) {
+            throw new NotFoundResourceException(sprintf('File "%s" not found.', $resource));
+        }
+
+        try {
+            $rb = new \ResourceBundle($locale, $resource);
+        } catch (\Exception $e) {
+            $rb = null;
+        }
+
+        if (!$rb) {
+            throw new InvalidResourceException(sprintf('Cannot load resource "%s".', $resource));
+        } elseif (intl_is_failure($rb->getErrorCode())) {
+            throw new InvalidResourceException($rb->getErrorMessage(), $rb->getErrorCode());
+        }
+
+        $messages = $this->flatten($rb);
+        $catalogue = new MessageCatalogue($locale);
+        $catalogue->add($messages, $domain);
+
+        if (class_exists(DirectoryResource::class)) {
+            $catalogue->addResource(new DirectoryResource($resource));
+        }
+
+        return $catalogue;
+    }
+
+    /**
+     * Flattens an ResourceBundle.
+     *
+     * The scheme used is:
+     *   key { key2 { key3 { "value" } } }
+     * Becomes:
+     *   'key.key2.key3' => 'value'
+     *
+     * This function takes an array by reference and will modify it
+     *
+     * @param \ResourceBundle $rb       The ResourceBundle that will be flattened
+     * @param array           $messages Used internally for recursive calls
+     * @param string          $path     Current path being parsed, used internally for recursive calls
+     *
+     * @return array the flattened ResourceBundle
+     */
+    protected function flatten(\ResourceBundle $rb, array &$messages = [], string $path = null)
+    {
+        foreach ($rb as $key => $value) {
+            $nodePath = $path ? $path.'.'.$key : $key;
+            if ($value instanceof \ResourceBundle) {
+                $this->flatten($value, $messages, $nodePath);
+            } else {
+                $messages[$nodePath] = $value;
+            }
+        }
+
+        return $messages;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IniFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IniFileLoader.php
new file mode 100644
index 0000000..7398f77
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/IniFileLoader.php
@@ -0,0 +1,28 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+/**
+ * IniFileLoader loads translations from an ini file.
+ *
+ * @author stealth35
+ */
+class IniFileLoader extends FileLoader
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        return parse_ini_file($resource, true);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/JsonFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/JsonFileLoader.php
new file mode 100644
index 0000000..5aefba0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/JsonFileLoader.php
@@ -0,0 +1,60 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+
+/**
+ * JsonFileLoader loads translations from an json file.
+ *
+ * @author singles
+ */
+class JsonFileLoader extends FileLoader
+{
+    /**
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        $messages = [];
+        if ($data = file_get_contents($resource)) {
+            $messages = json_decode($data, true);
+
+            if (0 < $errorCode = json_last_error()) {
+                throw new InvalidResourceException('Error parsing JSON: '.$this->getJSONErrorMessage($errorCode));
+            }
+        }
+
+        return $messages;
+    }
+
+    /**
+     * Translates JSON_ERROR_* constant into meaningful message.
+     */
+    private function getJSONErrorMessage(int $errorCode): string
+    {
+        switch ($errorCode) {
+            case \JSON_ERROR_DEPTH:
+                return 'Maximum stack depth exceeded';
+            case \JSON_ERROR_STATE_MISMATCH:
+                return 'Underflow or the modes mismatch';
+            case \JSON_ERROR_CTRL_CHAR:
+                return 'Unexpected control character found';
+            case \JSON_ERROR_SYNTAX:
+                return 'Syntax error, malformed JSON';
+            case \JSON_ERROR_UTF8:
+                return 'Malformed UTF-8 characters, possibly incorrectly encoded';
+            default:
+                return 'Unknown error';
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/LoaderInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/LoaderInterface.php
new file mode 100644
index 0000000..2073f2b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/LoaderInterface.php
@@ -0,0 +1,38 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * LoaderInterface is the interface implemented by all translation loaders.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+interface LoaderInterface
+{
+    /**
+     * Loads a locale.
+     *
+     * @param mixed  $resource A resource
+     * @param string $locale   A locale
+     * @param string $domain   The domain
+     *
+     * @return MessageCatalogue A MessageCatalogue instance
+     *
+     * @throws NotFoundResourceException when the resource cannot be found
+     * @throws InvalidResourceException  when the resource cannot be loaded
+     */
+    public function load($resource, string $locale, string $domain = 'messages');
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/MoFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/MoFileLoader.php
new file mode 100644
index 0000000..0ff6549
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/MoFileLoader.php
@@ -0,0 +1,140 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+
+/**
+ * @copyright Copyright (c) 2010, Union of RAD http://union-of-rad.org (http://lithify.me/)
+ */
+class MoFileLoader extends FileLoader
+{
+    /**
+     * Magic used for validating the format of an MO file as well as
+     * detecting if the machine used to create that file was little endian.
+     */
+    public const MO_LITTLE_ENDIAN_MAGIC = 0x950412de;
+
+    /**
+     * Magic used for validating the format of an MO file as well as
+     * detecting if the machine used to create that file was big endian.
+     */
+    public const MO_BIG_ENDIAN_MAGIC = 0xde120495;
+
+    /**
+     * The size of the header of an MO file in bytes.
+     */
+    public const MO_HEADER_SIZE = 28;
+
+    /**
+     * Parses machine object (MO) format, independent of the machine's endian it
+     * was created on. Both 32bit and 64bit systems are supported.
+     *
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        $stream = fopen($resource, 'r');
+
+        $stat = fstat($stream);
+
+        if ($stat['size'] < self::MO_HEADER_SIZE) {
+            throw new InvalidResourceException('MO stream content has an invalid format.');
+        }
+        $magic = unpack('V1', fread($stream, 4));
+        $magic = hexdec(substr(dechex(current($magic)), -8));
+
+        if (self::MO_LITTLE_ENDIAN_MAGIC == $magic) {
+            $isBigEndian = false;
+        } elseif (self::MO_BIG_ENDIAN_MAGIC == $magic) {
+            $isBigEndian = true;
+        } else {
+            throw new InvalidResourceException('MO stream content has an invalid format.');
+        }
+
+        // formatRevision
+        $this->readLong($stream, $isBigEndian);
+        $count = $this->readLong($stream, $isBigEndian);
+        $offsetId = $this->readLong($stream, $isBigEndian);
+        $offsetTranslated = $this->readLong($stream, $isBigEndian);
+        // sizeHashes
+        $this->readLong($stream, $isBigEndian);
+        // offsetHashes
+        $this->readLong($stream, $isBigEndian);
+
+        $messages = [];
+
+        for ($i = 0; $i < $count; ++$i) {
+            $pluralId = null;
+            $translated = null;
+
+            fseek($stream, $offsetId + $i * 8);
+
+            $length = $this->readLong($stream, $isBigEndian);
+            $offset = $this->readLong($stream, $isBigEndian);
+
+            if ($length < 1) {
+                continue;
+            }
+
+            fseek($stream, $offset);
+            $singularId = fread($stream, $length);
+
+            if (str_contains($singularId, "\000")) {
+                [$singularId, $pluralId] = explode("\000", $singularId);
+            }
+
+            fseek($stream, $offsetTranslated + $i * 8);
+            $length = $this->readLong($stream, $isBigEndian);
+            $offset = $this->readLong($stream, $isBigEndian);
+
+            if ($length < 1) {
+                continue;
+            }
+
+            fseek($stream, $offset);
+            $translated = fread($stream, $length);
+
+            if (str_contains($translated, "\000")) {
+                $translated = explode("\000", $translated);
+            }
+
+            $ids = ['singular' => $singularId, 'plural' => $pluralId];
+            $item = compact('ids', 'translated');
+
+            if (!empty($item['ids']['singular'])) {
+                $id = $item['ids']['singular'];
+                if (isset($item['ids']['plural'])) {
+                    $id .= '|'.$item['ids']['plural'];
+                }
+                $messages[$id] = stripcslashes(implode('|', (array) $item['translated']));
+            }
+        }
+
+        fclose($stream);
+
+        return array_filter($messages);
+    }
+
+    /**
+     * Reads an unsigned long from stream respecting endianness.
+     *
+     * @param resource $stream
+     */
+    private function readLong($stream, bool $isBigEndian): int
+    {
+        $result = unpack($isBigEndian ? 'N1' : 'V1', fread($stream, 4));
+        $result = current($result);
+
+        return (int) substr($result, -8);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PhpFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PhpFileLoader.php
new file mode 100644
index 0000000..85f1090
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PhpFileLoader.php
@@ -0,0 +1,42 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+/**
+ * PhpFileLoader loads translations from PHP files returning an array of translations.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class PhpFileLoader extends FileLoader
+{
+    private static $cache = [];
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        if ([] === self::$cache && \function_exists('opcache_invalidate') && filter_var(ini_get('opcache.enable'), \FILTER_VALIDATE_BOOLEAN) && (!\in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) || filter_var(ini_get('opcache.enable_cli'), \FILTER_VALIDATE_BOOLEAN))) {
+            self::$cache = null;
+        }
+
+        if (null === self::$cache) {
+            return require $resource;
+        }
+
+        if (isset(self::$cache[$resource])) {
+            return self::$cache[$resource];
+        }
+
+        return self::$cache[$resource] = require $resource;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PoFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PoFileLoader.php
new file mode 100644
index 0000000..ee143e2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/PoFileLoader.php
@@ -0,0 +1,149 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+/**
+ * @copyright Copyright (c) 2010, Union of RAD https://github.com/UnionOfRAD/lithium
+ * @copyright Copyright (c) 2012, Clemens Tolboom
+ */
+class PoFileLoader extends FileLoader
+{
+    /**
+     * Parses portable object (PO) format.
+     *
+     * From https://www.gnu.org/software/gettext/manual/gettext.html#PO-Files
+     * we should be able to parse files having:
+     *
+     * white-space
+     * #  translator-comments
+     * #. extracted-comments
+     * #: reference...
+     * #, flag...
+     * #| msgid previous-untranslated-string
+     * msgid untranslated-string
+     * msgstr translated-string
+     *
+     * extra or different lines are:
+     *
+     * #| msgctxt previous-context
+     * #| msgid previous-untranslated-string
+     * msgctxt context
+     *
+     * #| msgid previous-untranslated-string-singular
+     * #| msgid_plural previous-untranslated-string-plural
+     * msgid untranslated-string-singular
+     * msgid_plural untranslated-string-plural
+     * msgstr[0] translated-string-case-0
+     * ...
+     * msgstr[N] translated-string-case-n
+     *
+     * The definition states:
+     * - white-space and comments are optional.
+     * - msgid "" that an empty singleline defines a header.
+     *
+     * This parser sacrifices some features of the reference implementation the
+     * differences to that implementation are as follows.
+     * - No support for comments spanning multiple lines.
+     * - Translator and extracted comments are treated as being the same type.
+     * - Message IDs are allowed to have other encodings as just US-ASCII.
+     *
+     * Items with an empty id are ignored.
+     *
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        $stream = fopen($resource, 'r');
+
+        $defaults = [
+            'ids' => [],
+            'translated' => null,
+        ];
+
+        $messages = [];
+        $item = $defaults;
+        $flags = [];
+
+        while ($line = fgets($stream)) {
+            $line = trim($line);
+
+            if ('' === $line) {
+                // Whitespace indicated current item is done
+                if (!\in_array('fuzzy', $flags)) {
+                    $this->addMessage($messages, $item);
+                }
+                $item = $defaults;
+                $flags = [];
+            } elseif ('#,' === substr($line, 0, 2)) {
+                $flags = array_map('trim', explode(',', substr($line, 2)));
+            } elseif ('msgid "' === substr($line, 0, 7)) {
+                // We start a new msg so save previous
+                // TODO: this fails when comments or contexts are added
+                $this->addMessage($messages, $item);
+                $item = $defaults;
+                $item['ids']['singular'] = substr($line, 7, -1);
+            } elseif ('msgstr "' === substr($line, 0, 8)) {
+                $item['translated'] = substr($line, 8, -1);
+            } elseif ('"' === $line[0]) {
+                $continues = isset($item['translated']) ? 'translated' : 'ids';
+
+                if (\is_array($item[$continues])) {
+                    end($item[$continues]);
+                    $item[$continues][key($item[$continues])] .= substr($line, 1, -1);
+                } else {
+                    $item[$continues] .= substr($line, 1, -1);
+                }
+            } elseif ('msgid_plural "' === substr($line, 0, 14)) {
+                $item['ids']['plural'] = substr($line, 14, -1);
+            } elseif ('msgstr[' === substr($line, 0, 7)) {
+                $size = strpos($line, ']');
+                $item['translated'][(int) substr($line, 7, 1)] = substr($line, $size + 3, -1);
+            }
+        }
+        // save last item
+        if (!\in_array('fuzzy', $flags)) {
+            $this->addMessage($messages, $item);
+        }
+        fclose($stream);
+
+        return $messages;
+    }
+
+    /**
+     * Save a translation item to the messages.
+     *
+     * A .po file could contain by error missing plural indexes. We need to
+     * fix these before saving them.
+     */
+    private function addMessage(array &$messages, array $item)
+    {
+        if (!empty($item['ids']['singular'])) {
+            $id = stripcslashes($item['ids']['singular']);
+            if (isset($item['ids']['plural'])) {
+                $id .= '|'.stripcslashes($item['ids']['plural']);
+            }
+
+            $translated = (array) $item['translated'];
+            // PO are by definition indexed so sort by index.
+            ksort($translated);
+            // Make sure every index is filled.
+            end($translated);
+            $count = key($translated);
+            // Fill missing spots with '-'.
+            $empties = array_fill(0, $count + 1, '-');
+            $translated += $empties;
+            ksort($translated);
+
+            $messages[$id] = stripcslashes(implode('|', $translated));
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/QtFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/QtFileLoader.php
new file mode 100644
index 0000000..9cf2fe9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/QtFileLoader.php
@@ -0,0 +1,82 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Config\Resource\FileResource;
+use Symfony\Component\Config\Util\XmlUtils;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\Exception\RuntimeException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * QtFileLoader loads translations from QT Translations XML files.
+ *
+ * @author Benjamin Eberlei <kontakt@beberlei.de>
+ */
+class QtFileLoader implements LoaderInterface
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        if (!class_exists(XmlUtils::class)) {
+            throw new RuntimeException('Loading translations from the QT format requires the Symfony Config component.');
+        }
+
+        if (!stream_is_local($resource)) {
+            throw new InvalidResourceException(sprintf('This is not a local file "%s".', $resource));
+        }
+
+        if (!file_exists($resource)) {
+            throw new NotFoundResourceException(sprintf('File "%s" not found.', $resource));
+        }
+
+        try {
+            $dom = XmlUtils::loadFile($resource);
+        } catch (\InvalidArgumentException $e) {
+            throw new InvalidResourceException(sprintf('Unable to load "%s".', $resource), $e->getCode(), $e);
+        }
+
+        $internalErrors = libxml_use_internal_errors(true);
+        libxml_clear_errors();
+
+        $xpath = new \DOMXPath($dom);
+        $nodes = $xpath->evaluate('//TS/context/name[text()="'.$domain.'"]');
+
+        $catalogue = new MessageCatalogue($locale);
+        if (1 == $nodes->length) {
+            $translations = $nodes->item(0)->nextSibling->parentNode->parentNode->getElementsByTagName('message');
+            foreach ($translations as $translation) {
+                $translationValue = (string) $translation->getElementsByTagName('translation')->item(0)->nodeValue;
+
+                if (!empty($translationValue)) {
+                    $catalogue->set(
+                        (string) $translation->getElementsByTagName('source')->item(0)->nodeValue,
+                        $translationValue,
+                        $domain
+                    );
+                }
+                $translation = $translation->nextSibling;
+            }
+
+            if (class_exists(FileResource::class)) {
+                $catalogue->addResource(new FileResource($resource));
+            }
+        }
+
+        libxml_use_internal_errors($internalErrors);
+
+        return $catalogue;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/XliffFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/XliffFileLoader.php
new file mode 100644
index 0000000..35ad33e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/XliffFileLoader.php
@@ -0,0 +1,232 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Config\Resource\FileResource;
+use Symfony\Component\Config\Util\Exception\InvalidXmlException;
+use Symfony\Component\Config\Util\Exception\XmlParsingException;
+use Symfony\Component\Config\Util\XmlUtils;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\Exception\RuntimeException;
+use Symfony\Component\Translation\MessageCatalogue;
+use Symfony\Component\Translation\Util\XliffUtils;
+
+/**
+ * XliffFileLoader loads translations from XLIFF files.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class XliffFileLoader implements LoaderInterface
+{
+    /**
+     * {@inheritdoc}
+     */
+    public function load($resource, string $locale, string $domain = 'messages')
+    {
+        if (!class_exists(XmlUtils::class)) {
+            throw new RuntimeException('Loading translations from the Xliff format requires the Symfony Config component.');
+        }
+
+        if (!$this->isXmlString($resource)) {
+            if (!stream_is_local($resource)) {
+                throw new InvalidResourceException(sprintf('This is not a local file "%s".', $resource));
+            }
+
+            if (!file_exists($resource)) {
+                throw new NotFoundResourceException(sprintf('File "%s" not found.', $resource));
+            }
+
+            if (!is_file($resource)) {
+                throw new InvalidResourceException(sprintf('This is neither a file nor an XLIFF string "%s".', $resource));
+            }
+        }
+
+        try {
+            if ($this->isXmlString($resource)) {
+                $dom = XmlUtils::parse($resource);
+            } else {
+                $dom = XmlUtils::loadFile($resource);
+            }
+        } catch (\InvalidArgumentException | XmlParsingException | InvalidXmlException $e) {
+            throw new InvalidResourceException(sprintf('Unable to load "%s": ', $resource).$e->getMessage(), $e->getCode(), $e);
+        }
+
+        if ($errors = XliffUtils::validateSchema($dom)) {
+            throw new InvalidResourceException(sprintf('Invalid resource provided: "%s"; Errors: ', $resource).XliffUtils::getErrorsAsString($errors));
+        }
+
+        $catalogue = new MessageCatalogue($locale);
+        $this->extract($dom, $catalogue, $domain);
+
+        if (is_file($resource) && class_exists(FileResource::class)) {
+            $catalogue->addResource(new FileResource($resource));
+        }
+
+        return $catalogue;
+    }
+
+    private function extract(\DOMDocument $dom, MessageCatalogue $catalogue, string $domain)
+    {
+        $xliffVersion = XliffUtils::getVersionNumber($dom);
+
+        if ('1.2' === $xliffVersion) {
+            $this->extractXliff1($dom, $catalogue, $domain);
+        }
+
+        if ('2.0' === $xliffVersion) {
+            $this->extractXliff2($dom, $catalogue, $domain);
+        }
+    }
+
+    /**
+     * Extract messages and metadata from DOMDocument into a MessageCatalogue.
+     */
+    private function extractXliff1(\DOMDocument $dom, MessageCatalogue $catalogue, string $domain)
+    {
+        $xml = simplexml_import_dom($dom);
+        $encoding = $dom->encoding ? strtoupper($dom->encoding) : null;
+
+        $namespace = 'urn:oasis:names:tc:xliff:document:1.2';
+        $xml->registerXPathNamespace('xliff', $namespace);
+
+        foreach ($xml->xpath('//xliff:file') as $file) {
+            $fileAttributes = $file->attributes();
+
+            $file->registerXPathNamespace('xliff', $namespace);
+
+            foreach ($file->xpath('.//xliff:trans-unit') as $translation) {
+                $attributes = $translation->attributes();
+
+                if (!(isset($attributes['resname']) || isset($translation->source))) {
+                    continue;
+                }
+
+                $source = isset($attributes['resname']) && $attributes['resname'] ? $attributes['resname'] : $translation->source;
+                // If the xlf file has another encoding specified, try to convert it because
+                // simple_xml will always return utf-8 encoded values
+                $target = $this->utf8ToCharset((string) ($translation->target ?? $translation->source), $encoding);
+
+                $catalogue->set((string) $source, $target, $domain);
+
+                $metadata = [
+                    'source' => (string) $translation->source,
+                    'file' => [
+                        'original' => (string) $fileAttributes['original'],
+                    ],
+                ];
+                if ($notes = $this->parseNotesMetadata($translation->note, $encoding)) {
+                    $metadata['notes'] = $notes;
+                }
+
+                if (isset($translation->target) && $translation->target->attributes()) {
+                    $metadata['target-attributes'] = [];
+                    foreach ($translation->target->attributes() as $key => $value) {
+                        $metadata['target-attributes'][$key] = (string) $value;
+                    }
+                }
+
+                if (isset($attributes['id'])) {
+                    $metadata['id'] = (string) $attributes['id'];
+                }
+
+                $catalogue->setMetadata((string) $source, $metadata, $domain);
+            }
+        }
+    }
+
+    private function extractXliff2(\DOMDocument $dom, MessageCatalogue $catalogue, string $domain)
+    {
+        $xml = simplexml_import_dom($dom);
+        $encoding = $dom->encoding ? strtoupper($dom->encoding) : null;
+
+        $xml->registerXPathNamespace('xliff', 'urn:oasis:names:tc:xliff:document:2.0');
+
+        foreach ($xml->xpath('//xliff:unit') as $unit) {
+            foreach ($unit->segment as $segment) {
+                $attributes = $unit->attributes();
+                $source = $attributes['name'] ?? $segment->source;
+
+                // If the xlf file has another encoding specified, try to convert it because
+                // simple_xml will always return utf-8 encoded values
+                $target = $this->utf8ToCharset((string) ($segment->target ?? $segment->source), $encoding);
+
+                $catalogue->set((string) $source, $target, $domain);
+
+                $metadata = [];
+                if (isset($segment->target) && $segment->target->attributes()) {
+                    $metadata['target-attributes'] = [];
+                    foreach ($segment->target->attributes() as $key => $value) {
+                        $metadata['target-attributes'][$key] = (string) $value;
+                    }
+                }
+
+                if (isset($unit->notes)) {
+                    $metadata['notes'] = [];
+                    foreach ($unit->notes->note as $noteNode) {
+                        $note = [];
+                        foreach ($noteNode->attributes() as $key => $value) {
+                            $note[$key] = (string) $value;
+                        }
+                        $note['content'] = (string) $noteNode;
+                        $metadata['notes'][] = $note;
+                    }
+                }
+
+                $catalogue->setMetadata((string) $source, $metadata, $domain);
+            }
+        }
+    }
+
+    /**
+     * Convert a UTF8 string to the specified encoding.
+     */
+    private function utf8ToCharset(string $content, string $encoding = null): string
+    {
+        if ('UTF-8' !== $encoding && !empty($encoding)) {
+            return mb_convert_encoding($content, $encoding, 'UTF-8');
+        }
+
+        return $content;
+    }
+
+    private function parseNotesMetadata(\SimpleXMLElement $noteElement = null, string $encoding = null): array
+    {
+        $notes = [];
+
+        if (null === $noteElement) {
+            return $notes;
+        }
+
+        /** @var \SimpleXMLElement $xmlNote */
+        foreach ($noteElement as $xmlNote) {
+            $noteAttributes = $xmlNote->attributes();
+            $note = ['content' => $this->utf8ToCharset((string) $xmlNote, $encoding)];
+            if (isset($noteAttributes['priority'])) {
+                $note['priority'] = (int) $noteAttributes['priority'];
+            }
+
+            if (isset($noteAttributes['from'])) {
+                $note['from'] = (string) $noteAttributes['from'];
+            }
+
+            $notes[] = $note;
+        }
+
+        return $notes;
+    }
+
+    private function isXmlString(string $resource): bool
+    {
+        return 0 === strpos($resource, '<?xml');
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/YamlFileLoader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/YamlFileLoader.php
new file mode 100644
index 0000000..8588e18
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Loader/YamlFileLoader.php
@@ -0,0 +1,54 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Loader;
+
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+use Symfony\Component\Translation\Exception\LogicException;
+use Symfony\Component\Yaml\Exception\ParseException;
+use Symfony\Component\Yaml\Parser as YamlParser;
+use Symfony\Component\Yaml\Yaml;
+
+/**
+ * YamlFileLoader loads translations from Yaml files.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class YamlFileLoader extends FileLoader
+{
+    private $yamlParser;
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function loadResource(string $resource)
+    {
+        if (null === $this->yamlParser) {
+            if (!class_exists(\Symfony\Component\Yaml\Parser::class)) {
+                throw new LogicException('Loading translations from the YAML format requires the Symfony Yaml component.');
+            }
+
+            $this->yamlParser = new YamlParser();
+        }
+
+        try {
+            $messages = $this->yamlParser->parseFile($resource, Yaml::PARSE_CONSTANT);
+        } catch (ParseException $e) {
+            throw new InvalidResourceException(sprintf('The file "%s" does not contain valid YAML: ', $resource).$e->getMessage(), 0, $e);
+        }
+
+        if (null !== $messages && !\is_array($messages)) {
+            throw new InvalidResourceException(sprintf('Unable to load file "%s".', $resource));
+        }
+
+        return $messages ?: [];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LoggingTranslator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LoggingTranslator.php
new file mode 100644
index 0000000..bb93435
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/LoggingTranslator.php
@@ -0,0 +1,135 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Psr\Log\LoggerInterface;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Contracts\Translation\LocaleAwareInterface;
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+/**
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+class LoggingTranslator implements TranslatorInterface, TranslatorBagInterface, LocaleAwareInterface
+{
+    /**
+     * @var TranslatorInterface|TranslatorBagInterface
+     */
+    private $translator;
+
+    private $logger;
+
+    /**
+     * @param TranslatorInterface $translator The translator must implement TranslatorBagInterface
+     */
+    public function __construct(TranslatorInterface $translator, LoggerInterface $logger)
+    {
+        if (!$translator instanceof TranslatorBagInterface || !$translator instanceof LocaleAwareInterface) {
+            throw new InvalidArgumentException(sprintf('The Translator "%s" must implement TranslatorInterface, TranslatorBagInterface and LocaleAwareInterface.', get_debug_type($translator)));
+        }
+
+        $this->translator = $translator;
+        $this->logger = $logger;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function trans(?string $id, array $parameters = [], string $domain = null, string $locale = null)
+    {
+        $trans = $this->translator->trans($id = (string) $id, $parameters, $domain, $locale);
+        $this->log($id, $domain, $locale);
+
+        return $trans;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setLocale(string $locale)
+    {
+        $prev = $this->translator->getLocale();
+        $this->translator->setLocale($locale);
+        if ($prev === $locale) {
+            return;
+        }
+
+        $this->logger->debug(sprintf('The locale of the translator has changed from "%s" to "%s".', $prev, $locale));
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLocale()
+    {
+        return $this->translator->getLocale();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogue(string $locale = null)
+    {
+        return $this->translator->getCatalogue($locale);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogues(): array
+    {
+        return $this->translator->getCatalogues();
+    }
+
+    /**
+     * Gets the fallback locales.
+     *
+     * @return array The fallback locales
+     */
+    public function getFallbackLocales()
+    {
+        if ($this->translator instanceof Translator || method_exists($this->translator, 'getFallbackLocales')) {
+            return $this->translator->getFallbackLocales();
+        }
+
+        return [];
+    }
+
+    /**
+     * Passes through all unknown calls onto the translator object.
+     */
+    public function __call(string $method, array $args)
+    {
+        return $this->translator->{$method}(...$args);
+    }
+
+    /**
+     * Logs for missing translations.
+     */
+    private function log(string $id, ?string $domain, ?string $locale)
+    {
+        if (null === $domain) {
+            $domain = 'messages';
+        }
+
+        $catalogue = $this->translator->getCatalogue($locale);
+        if ($catalogue->defines($id, $domain)) {
+            return;
+        }
+
+        if ($catalogue->has($id, $domain)) {
+            $this->logger->debug('Translation use fallback catalogue.', ['id' => $id, 'domain' => $domain, 'locale' => $catalogue->getLocale()]);
+        } else {
+            $this->logger->warning('Translation not found.', ['id' => $id, 'domain' => $domain, 'locale' => $catalogue->getLocale()]);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogue.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogue.php
new file mode 100644
index 0000000..ff49b5a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogue.php
@@ -0,0 +1,314 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\Config\Resource\ResourceInterface;
+use Symfony\Component\Translation\Exception\LogicException;
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterface
+{
+    private $messages = [];
+    private $metadata = [];
+    private $resources = [];
+    private $locale;
+    private $fallbackCatalogue;
+    private $parent;
+
+    /**
+     * @param array $messages An array of messages classified by domain
+     */
+    public function __construct(string $locale, array $messages = [])
+    {
+        $this->locale = $locale;
+        $this->messages = $messages;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLocale()
+    {
+        return $this->locale;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getDomains()
+    {
+        $domains = [];
+
+        foreach ($this->messages as $domain => $messages) {
+            if (str_ends_with($domain, self::INTL_DOMAIN_SUFFIX)) {
+                $domain = substr($domain, 0, -\strlen(self::INTL_DOMAIN_SUFFIX));
+            }
+            $domains[$domain] = $domain;
+        }
+
+        return array_values($domains);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function all(string $domain = null)
+    {
+        if (null !== $domain) {
+            // skip messages merge if intl-icu requested explicitly
+            if (str_ends_with($domain, self::INTL_DOMAIN_SUFFIX)) {
+                return $this->messages[$domain] ?? [];
+            }
+
+            return ($this->messages[$domain.self::INTL_DOMAIN_SUFFIX] ?? []) + ($this->messages[$domain] ?? []);
+        }
+
+        $allMessages = [];
+
+        foreach ($this->messages as $domain => $messages) {
+            if (str_ends_with($domain, self::INTL_DOMAIN_SUFFIX)) {
+                $domain = substr($domain, 0, -\strlen(self::INTL_DOMAIN_SUFFIX));
+                $allMessages[$domain] = $messages + ($allMessages[$domain] ?? []);
+            } else {
+                $allMessages[$domain] = ($allMessages[$domain] ?? []) + $messages;
+            }
+        }
+
+        return $allMessages;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function set(string $id, string $translation, string $domain = 'messages')
+    {
+        $this->add([$id => $translation], $domain);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function has(string $id, string $domain = 'messages')
+    {
+        if (isset($this->messages[$domain][$id]) || isset($this->messages[$domain.self::INTL_DOMAIN_SUFFIX][$id])) {
+            return true;
+        }
+
+        if (null !== $this->fallbackCatalogue) {
+            return $this->fallbackCatalogue->has($id, $domain);
+        }
+
+        return false;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function defines(string $id, string $domain = 'messages')
+    {
+        return isset($this->messages[$domain][$id]) || isset($this->messages[$domain.self::INTL_DOMAIN_SUFFIX][$id]);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function get(string $id, string $domain = 'messages')
+    {
+        if (isset($this->messages[$domain.self::INTL_DOMAIN_SUFFIX][$id])) {
+            return $this->messages[$domain.self::INTL_DOMAIN_SUFFIX][$id];
+        }
+
+        if (isset($this->messages[$domain][$id])) {
+            return $this->messages[$domain][$id];
+        }
+
+        if (null !== $this->fallbackCatalogue) {
+            return $this->fallbackCatalogue->get($id, $domain);
+        }
+
+        return $id;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function replace(array $messages, string $domain = 'messages')
+    {
+        unset($this->messages[$domain], $this->messages[$domain.self::INTL_DOMAIN_SUFFIX]);
+
+        $this->add($messages, $domain);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function add(array $messages, string $domain = 'messages')
+    {
+        if (!isset($this->messages[$domain])) {
+            $this->messages[$domain] = [];
+        }
+        $intlDomain = $domain;
+        if (!str_ends_with($domain, self::INTL_DOMAIN_SUFFIX)) {
+            $intlDomain .= self::INTL_DOMAIN_SUFFIX;
+        }
+        foreach ($messages as $id => $message) {
+            if (isset($this->messages[$intlDomain]) && \array_key_exists($id, $this->messages[$intlDomain])) {
+                $this->messages[$intlDomain][$id] = $message;
+            } else {
+                $this->messages[$domain][$id] = $message;
+            }
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function addCatalogue(MessageCatalogueInterface $catalogue)
+    {
+        if ($catalogue->getLocale() !== $this->locale) {
+            throw new LogicException(sprintf('Cannot add a catalogue for locale "%s" as the current locale for this catalogue is "%s".', $catalogue->getLocale(), $this->locale));
+        }
+
+        foreach ($catalogue->all() as $domain => $messages) {
+            if ($intlMessages = $catalogue->all($domain.self::INTL_DOMAIN_SUFFIX)) {
+                $this->add($intlMessages, $domain.self::INTL_DOMAIN_SUFFIX);
+                $messages = array_diff_key($messages, $intlMessages);
+            }
+            $this->add($messages, $domain);
+        }
+
+        foreach ($catalogue->getResources() as $resource) {
+            $this->addResource($resource);
+        }
+
+        if ($catalogue instanceof MetadataAwareInterface) {
+            $metadata = $catalogue->getMetadata('', '');
+            $this->addMetadata($metadata);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
+    {
+        // detect circular references
+        $c = $catalogue;
+        while ($c = $c->getFallbackCatalogue()) {
+            if ($c->getLocale() === $this->getLocale()) {
+                throw new LogicException(sprintf('Circular reference detected when adding a fallback catalogue for locale "%s".', $catalogue->getLocale()));
+            }
+        }
+
+        $c = $this;
+        do {
+            if ($c->getLocale() === $catalogue->getLocale()) {
+                throw new LogicException(sprintf('Circular reference detected when adding a fallback catalogue for locale "%s".', $catalogue->getLocale()));
+            }
+
+            foreach ($catalogue->getResources() as $resource) {
+                $c->addResource($resource);
+            }
+        } while ($c = $c->parent);
+
+        $catalogue->parent = $this;
+        $this->fallbackCatalogue = $catalogue;
+
+        foreach ($catalogue->getResources() as $resource) {
+            $this->addResource($resource);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getFallbackCatalogue()
+    {
+        return $this->fallbackCatalogue;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getResources()
+    {
+        return array_values($this->resources);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function addResource(ResourceInterface $resource)
+    {
+        $this->resources[$resource->__toString()] = $resource;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getMetadata(string $key = '', string $domain = 'messages')
+    {
+        if ('' == $domain) {
+            return $this->metadata;
+        }
+
+        if (isset($this->metadata[$domain])) {
+            if ('' == $key) {
+                return $this->metadata[$domain];
+            }
+
+            if (isset($this->metadata[$domain][$key])) {
+                return $this->metadata[$domain][$key];
+            }
+        }
+
+        return null;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setMetadata(string $key, $value, string $domain = 'messages')
+    {
+        $this->metadata[$domain][$key] = $value;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function deleteMetadata(string $key = '', string $domain = 'messages')
+    {
+        if ('' == $domain) {
+            $this->metadata = [];
+        } elseif ('' == $key) {
+            unset($this->metadata[$domain]);
+        } else {
+            unset($this->metadata[$domain][$key]);
+        }
+    }
+
+    /**
+     * Adds current values with the new values.
+     *
+     * @param array $values Values to add
+     */
+    private function addMetadata(array $values)
+    {
+        foreach ($values as $domain => $keys) {
+            foreach ($keys as $key => $value) {
+                $this->setMetadata($key, $value, $domain);
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogueInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogueInterface.php
new file mode 100644
index 0000000..5d83bd8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MessageCatalogueInterface.php
@@ -0,0 +1,138 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\Config\Resource\ResourceInterface;
+
+/**
+ * MessageCatalogueInterface.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+interface MessageCatalogueInterface
+{
+    public const INTL_DOMAIN_SUFFIX = '+intl-icu';
+
+    /**
+     * Gets the catalogue locale.
+     *
+     * @return string The locale
+     */
+    public function getLocale();
+
+    /**
+     * Gets the domains.
+     *
+     * @return array An array of domains
+     */
+    public function getDomains();
+
+    /**
+     * Gets the messages within a given domain.
+     *
+     * If $domain is null, it returns all messages.
+     *
+     * @param string $domain The domain name
+     *
+     * @return array An array of messages
+     */
+    public function all(string $domain = null);
+
+    /**
+     * Sets a message translation.
+     *
+     * @param string $id          The message id
+     * @param string $translation The messages translation
+     * @param string $domain      The domain name
+     */
+    public function set(string $id, string $translation, string $domain = 'messages');
+
+    /**
+     * Checks if a message has a translation.
+     *
+     * @param string $id     The message id
+     * @param string $domain The domain name
+     *
+     * @return bool true if the message has a translation, false otherwise
+     */
+    public function has(string $id, string $domain = 'messages');
+
+    /**
+     * Checks if a message has a translation (it does not take into account the fallback mechanism).
+     *
+     * @param string $id     The message id
+     * @param string $domain The domain name
+     *
+     * @return bool true if the message has a translation, false otherwise
+     */
+    public function defines(string $id, string $domain = 'messages');
+
+    /**
+     * Gets a message translation.
+     *
+     * @param string $id     The message id
+     * @param string $domain The domain name
+     *
+     * @return string The message translation
+     */
+    public function get(string $id, string $domain = 'messages');
+
+    /**
+     * Sets translations for a given domain.
+     *
+     * @param array  $messages An array of translations
+     * @param string $domain   The domain name
+     */
+    public function replace(array $messages, string $domain = 'messages');
+
+    /**
+     * Adds translations for a given domain.
+     *
+     * @param array  $messages An array of translations
+     * @param string $domain   The domain name
+     */
+    public function add(array $messages, string $domain = 'messages');
+
+    /**
+     * Merges translations from the given Catalogue into the current one.
+     *
+     * The two catalogues must have the same locale.
+     */
+    public function addCatalogue(self $catalogue);
+
+    /**
+     * Merges translations from the given Catalogue into the current one
+     * only when the translation does not exist.
+     *
+     * This is used to provide default translations when they do not exist for the current locale.
+     */
+    public function addFallbackCatalogue(self $catalogue);
+
+    /**
+     * Gets the fallback catalogue.
+     *
+     * @return self|null A MessageCatalogueInterface instance or null when no fallback has been set
+     */
+    public function getFallbackCatalogue();
+
+    /**
+     * Returns an array of resources loaded to build this collection.
+     *
+     * @return ResourceInterface[] An array of resources
+     */
+    public function getResources();
+
+    /**
+     * Adds a resource for this collection.
+     */
+    public function addResource(ResourceInterface $resource);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MetadataAwareInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MetadataAwareInterface.php
new file mode 100644
index 0000000..2216eed
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/MetadataAwareInterface.php
@@ -0,0 +1,46 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+/**
+ * MetadataAwareInterface.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+interface MetadataAwareInterface
+{
+    /**
+     * Gets metadata for the given domain and key.
+     *
+     * Passing an empty domain will return an array with all metadata indexed by
+     * domain and then by key. Passing an empty key will return an array with all
+     * metadata for the given domain.
+     *
+     * @return mixed The value that was set or an array with the domains/keys or null
+     */
+    public function getMetadata(string $key = '', string $domain = 'messages');
+
+    /**
+     * Adds metadata to a message domain.
+     *
+     * @param mixed $value
+     */
+    public function setMetadata(string $key, $value, string $domain = 'messages');
+
+    /**
+     * Deletes metadata for the given key and domain.
+     *
+     * Passing an empty domain will delete all metadata. Passing an empty key will
+     * delete all metadata for the given domain.
+     */
+    public function deleteMetadata(string $key = '', string $domain = 'messages');
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/AbstractProviderFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/AbstractProviderFactory.php
new file mode 100644
index 0000000..17442fd
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/AbstractProviderFactory.php
@@ -0,0 +1,45 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\IncompleteDsnException;
+
+abstract class AbstractProviderFactory implements ProviderFactoryInterface
+{
+    public function supports(Dsn $dsn): bool
+    {
+        return \in_array($dsn->getScheme(), $this->getSupportedSchemes(), true);
+    }
+
+    /**
+     * @return string[]
+     */
+    abstract protected function getSupportedSchemes(): array;
+
+    protected function getUser(Dsn $dsn): string
+    {
+        if (null === $user = $dsn->getUser()) {
+            throw new IncompleteDsnException('User is not set.', $dsn->getOriginalDsn());
+        }
+
+        return $user;
+    }
+
+    protected function getPassword(Dsn $dsn): string
+    {
+        if (null === $password = $dsn->getPassword()) {
+            throw new IncompleteDsnException('Password is not set.', $dsn->getOriginalDsn());
+        }
+
+        return $password;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/Dsn.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/Dsn.php
new file mode 100644
index 0000000..820cabf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/Dsn.php
@@ -0,0 +1,110 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\MissingRequiredOptionException;
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ * @author Oskar Stark <oskarstark@googlemail.com>
+ */
+final class Dsn
+{
+    private $scheme;
+    private $host;
+    private $user;
+    private $password;
+    private $port;
+    private $path;
+    private $options;
+    private $originalDsn;
+
+    public function __construct(string $dsn)
+    {
+        $this->originalDsn = $dsn;
+
+        if (false === $parsedDsn = parse_url($dsn)) {
+            throw new InvalidArgumentException(sprintf('The "%s" translation provider DSN is invalid.', $dsn));
+        }
+
+        if (!isset($parsedDsn['scheme'])) {
+            throw new InvalidArgumentException(sprintf('The "%s" translation provider DSN must contain a scheme.', $dsn));
+        }
+        $this->scheme = $parsedDsn['scheme'];
+
+        if (!isset($parsedDsn['host'])) {
+            throw new InvalidArgumentException(sprintf('The "%s" translation provider DSN must contain a host (use "default" by default).', $dsn));
+        }
+        $this->host = $parsedDsn['host'];
+
+        $this->user = '' !== ($parsedDsn['user'] ?? '') ? urldecode($parsedDsn['user']) : null;
+        $this->password = '' !== ($parsedDsn['pass'] ?? '') ? urldecode($parsedDsn['pass']) : null;
+        $this->port = $parsedDsn['port'] ?? null;
+        $this->path = $parsedDsn['path'] ?? null;
+        parse_str($parsedDsn['query'] ?? '', $this->options);
+    }
+
+    public function getScheme(): string
+    {
+        return $this->scheme;
+    }
+
+    public function getHost(): string
+    {
+        return $this->host;
+    }
+
+    public function getUser(): ?string
+    {
+        return $this->user;
+    }
+
+    public function getPassword(): ?string
+    {
+        return $this->password;
+    }
+
+    public function getPort(int $default = null): ?int
+    {
+        return $this->port ?? $default;
+    }
+
+    public function getOption(string $key, $default = null)
+    {
+        return $this->options[$key] ?? $default;
+    }
+
+    public function getRequiredOption(string $key)
+    {
+        if (!\array_key_exists($key, $this->options) || '' === trim($this->options[$key])) {
+            throw new MissingRequiredOptionException($key);
+        }
+
+        return $this->options[$key];
+    }
+
+    public function getOptions(): array
+    {
+        return $this->options;
+    }
+
+    public function getPath(): ?string
+    {
+        return $this->path;
+    }
+
+    public function getOriginalDsn(): string
+    {
+        return $this->originalDsn;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/FilteringProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/FilteringProvider.php
new file mode 100644
index 0000000..0307cda
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/FilteringProvider.php
@@ -0,0 +1,67 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\TranslatorBag;
+use Symfony\Component\Translation\TranslatorBagInterface;
+
+/**
+ * Filters domains and locales between the Translator config values and those specific to each provider.
+ *
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+class FilteringProvider implements ProviderInterface
+{
+    private $provider;
+    private $locales;
+    private $domains;
+
+    public function __construct(ProviderInterface $provider, array $locales, array $domains = [])
+    {
+        $this->provider = $provider;
+        $this->locales = $locales;
+        $this->domains = $domains;
+    }
+
+    public function __toString(): string
+    {
+        return (string) $this->provider;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function write(TranslatorBagInterface $translatorBag): void
+    {
+        $this->provider->write($translatorBag);
+    }
+
+    public function read(array $domains, array $locales): TranslatorBag
+    {
+        $domains = !$this->domains ? $domains : array_intersect($this->domains, $domains);
+        $locales = array_intersect($this->locales, $locales);
+
+        return $this->provider->read($domains, $locales);
+    }
+
+    public function delete(TranslatorBagInterface $translatorBag): void
+    {
+        $this->provider->delete($translatorBag);
+    }
+
+    public function getDomains(): array
+    {
+        return $this->domains;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProvider.php
new file mode 100644
index 0000000..785fcaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProvider.php
@@ -0,0 +1,41 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\TranslatorBag;
+use Symfony\Component\Translation\TranslatorBagInterface;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+class NullProvider implements ProviderInterface
+{
+    public function __toString(): string
+    {
+        return 'null';
+    }
+
+    public function write(TranslatorBagInterface $translatorBag, bool $override = false): void
+    {
+    }
+
+    public function read(array $domains, array $locales): TranslatorBag
+    {
+        return new TranslatorBag();
+    }
+
+    public function delete(TranslatorBagInterface $translatorBag): void
+    {
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProviderFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProviderFactory.php
new file mode 100644
index 0000000..6ddbd85
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/NullProviderFactory.php
@@ -0,0 +1,36 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\UnsupportedSchemeException;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+final class NullProviderFactory extends AbstractProviderFactory
+{
+    public function create(Dsn $dsn): ProviderInterface
+    {
+        if ('null' === $dsn->getScheme()) {
+            return new NullProvider();
+        }
+
+        throw new UnsupportedSchemeException($dsn, 'null', $this->getSupportedSchemes());
+    }
+
+    protected function getSupportedSchemes(): array
+    {
+        return ['null'];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderFactoryInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderFactoryInterface.php
new file mode 100644
index 0000000..3fd4494
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderFactoryInterface.php
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\IncompleteDsnException;
+use Symfony\Component\Translation\Exception\UnsupportedSchemeException;
+
+interface ProviderFactoryInterface
+{
+    /**
+     * @throws UnsupportedSchemeException
+     * @throws IncompleteDsnException
+     */
+    public function create(Dsn $dsn): ProviderInterface;
+
+    public function supports(Dsn $dsn): bool;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderInterface.php
new file mode 100644
index 0000000..a32193f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/ProviderInterface.php
@@ -0,0 +1,32 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\TranslatorBag;
+use Symfony\Component\Translation\TranslatorBagInterface;
+
+interface ProviderInterface
+{
+    public function __toString(): string;
+
+    /**
+     * Translations available in the TranslatorBag only must be created.
+     * Translations available in both the TranslatorBag and on the provider
+     * must be overwritten.
+     * Translations available on the provider only must be kept.
+     */
+    public function write(TranslatorBagInterface $translatorBag): void;
+
+    public function read(array $domains, array $locales): TranslatorBag;
+
+    public function delete(TranslatorBagInterface $translatorBag): void;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollection.php
new file mode 100644
index 0000000..9963cb9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollection.php
@@ -0,0 +1,59 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+final class TranslationProviderCollection
+{
+    private $providers;
+
+    /**
+     * @param array<string, ProviderInterface> $providers
+     */
+    public function __construct(iterable $providers)
+    {
+        $this->providers = [];
+        foreach ($providers as $name => $provider) {
+            $this->providers[$name] = $provider;
+        }
+    }
+
+    public function __toString(): string
+    {
+        return '['.implode(',', array_keys($this->providers)).']';
+    }
+
+    public function has(string $name): bool
+    {
+        return isset($this->providers[$name]);
+    }
+
+    public function get(string $name): ProviderInterface
+    {
+        if (!$this->has($name)) {
+            throw new InvalidArgumentException(sprintf('Provider "%s" not found. Available: "%s".', $name, (string) $this));
+        }
+
+        return $this->providers[$name];
+    }
+
+    public function keys(): array
+    {
+        return array_keys($this->providers);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollectionFactory.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollectionFactory.php
new file mode 100644
index 0000000..43f4a34
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Provider/TranslationProviderCollectionFactory.php
@@ -0,0 +1,59 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Provider;
+
+use Symfony\Component\Translation\Exception\UnsupportedSchemeException;
+
+/**
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @experimental in 5.3
+ */
+class TranslationProviderCollectionFactory
+{
+    private $factories;
+    private $enabledLocales;
+
+    /**
+     * @param ProviderFactoryInterface[] $factories
+     */
+    public function __construct(iterable $factories, array $enabledLocales)
+    {
+        $this->factories = $factories;
+        $this->enabledLocales = $enabledLocales;
+    }
+
+    public function fromConfig(array $config): TranslationProviderCollection
+    {
+        $providers = [];
+        foreach ($config as $name => $currentConfig) {
+            $providers[$name] = $this->fromDsnObject(
+                new Dsn($currentConfig['dsn']),
+                !$currentConfig['locales'] ? $this->enabledLocales : $currentConfig['locales'],
+                !$currentConfig['domains'] ? [] : $currentConfig['domains']
+            );
+        }
+
+        return new TranslationProviderCollection($providers);
+    }
+
+    public function fromDsnObject(Dsn $dsn, array $locales, array $domains = []): ProviderInterface
+    {
+        foreach ($this->factories as $factory) {
+            if ($factory->supports($dsn)) {
+                return new FilteringProvider($factory->create($dsn), $locales, $domains);
+            }
+        }
+
+        throw new UnsupportedSchemeException($dsn);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/PseudoLocalizationTranslator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/PseudoLocalizationTranslator.php
new file mode 100644
index 0000000..49f122e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/PseudoLocalizationTranslator.php
@@ -0,0 +1,364 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+/**
+ * This translator should only be used in a development environment.
+ */
+final class PseudoLocalizationTranslator implements TranslatorInterface
+{
+    private const EXPANSION_CHARACTER = '~';
+
+    private $translator;
+    private $accents;
+    private $expansionFactor;
+    private $brackets;
+    private $parseHTML;
+    private $localizableHTMLAttributes;
+
+    /**
+     * Available options:
+     *  * accents:
+     *      type: boolean
+     *      default: true
+     *      description: replace ASCII characters of the translated string with accented versions or similar characters
+     *      example: if true, "foo" => "ƒöö".
+     *
+     *  * expansion_factor:
+     *      type: float
+     *      default: 1
+     *      validation: it must be greater than or equal to 1
+     *      description: expand the translated string by the given factor with spaces and tildes
+     *      example: if 2, "foo" => "~foo ~"
+     *
+     *  * brackets:
+     *      type: boolean
+     *      default: true
+     *      description: wrap the translated string with brackets
+     *      example: if true, "foo" => "[foo]"
+     *
+     *  * parse_html:
+     *      type: boolean
+     *      default: false
+     *      description: parse the translated string as HTML - looking for HTML tags has a performance impact but allows to preserve them from alterations - it also allows to compute the visible translated string length which is useful to correctly expand ot when it contains HTML
+     *      warning: unclosed tags are unsupported, they will be fixed (closed) by the parser - eg, "foo <div>bar" => "foo <div>bar</div>"
+     *
+     *  * localizable_html_attributes:
+     *      type: string[]
+     *      default: []
+     *      description: the list of HTML attributes whose values can be altered - it is only useful when the "parse_html" option is set to true
+     *      example: if ["title"], and with the "accents" option set to true, "<a href="#" title="Go to your profile">Profile</a>" => "<a href="#" title="Ĝö ţö ýöûŕ þŕöƒîļé">Þŕöƒîļé</a>" - if "title" was not in the "localizable_html_attributes" list, the title attribute data would be left unchanged.
+     */
+    public function __construct(TranslatorInterface $translator, array $options = [])
+    {
+        $this->translator = $translator;
+        $this->accents = $options['accents'] ?? true;
+
+        if (1.0 > ($this->expansionFactor = $options['expansion_factor'] ?? 1.0)) {
+            throw new \InvalidArgumentException('The expansion factor must be greater than or equal to 1.');
+        }
+
+        $this->brackets = $options['brackets'] ?? true;
+
+        $this->parseHTML = $options['parse_html'] ?? false;
+        if ($this->parseHTML && !$this->accents && 1.0 === $this->expansionFactor) {
+            $this->parseHTML = false;
+        }
+
+        $this->localizableHTMLAttributes = $options['localizable_html_attributes'] ?? [];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function trans(string $id, array $parameters = [], string $domain = null, string $locale = null)
+    {
+        $trans = '';
+        $visibleText = '';
+
+        foreach ($this->getParts($this->translator->trans($id, $parameters, $domain, $locale)) as [$visible, $localizable, $text]) {
+            if ($visible) {
+                $visibleText .= $text;
+            }
+
+            if (!$localizable) {
+                $trans .= $text;
+
+                continue;
+            }
+
+            $this->addAccents($trans, $text);
+        }
+
+        $this->expand($trans, $visibleText);
+
+        $this->addBrackets($trans);
+
+        return $trans;
+    }
+
+    public function getLocale(): string
+    {
+        return $this->translator->getLocale();
+    }
+
+    private function getParts(string $originalTrans): array
+    {
+        if (!$this->parseHTML) {
+            return [[true, true, $originalTrans]];
+        }
+
+        $html = mb_convert_encoding($originalTrans, 'HTML-ENTITIES', mb_detect_encoding($originalTrans, null, true) ?: 'UTF-8');
+
+        $useInternalErrors = libxml_use_internal_errors(true);
+
+        $dom = new \DOMDocument();
+        $dom->loadHTML('<trans>'.$html.'</trans>');
+
+        libxml_clear_errors();
+        libxml_use_internal_errors($useInternalErrors);
+
+        return $this->parseNode($dom->childNodes->item(1)->childNodes->item(0)->childNodes->item(0));
+    }
+
+    private function parseNode(\DOMNode $node): array
+    {
+        $parts = [];
+
+        foreach ($node->childNodes as $childNode) {
+            if (!$childNode instanceof \DOMElement) {
+                $parts[] = [true, true, $childNode->nodeValue];
+
+                continue;
+            }
+
+            $parts[] = [false, false, '<'.$childNode->tagName];
+
+            /** @var \DOMAttr $attribute */
+            foreach ($childNode->attributes as $attribute) {
+                $parts[] = [false, false, ' '.$attribute->nodeName.'="'];
+
+                $localizableAttribute = \in_array($attribute->nodeName, $this->localizableHTMLAttributes, true);
+                foreach (preg_split('/(&(?:amp|quot|#039|lt|gt);+)/', htmlspecialchars($attribute->nodeValue, \ENT_QUOTES, 'UTF-8'), -1, \PREG_SPLIT_DELIM_CAPTURE) as $i => $match) {
+                    if ('' === $match) {
+                        continue;
+                    }
+
+                    $parts[] = [false, $localizableAttribute && 0 === $i % 2, $match];
+                }
+
+                $parts[] = [false, false, '"'];
+            }
+
+            $parts[] = [false, false, '>'];
+
+            $parts = array_merge($parts, $this->parseNode($childNode, $parts));
+
+            $parts[] = [false, false, '</'.$childNode->tagName.'>'];
+        }
+
+        return $parts;
+    }
+
+    private function addAccents(string &$trans, string $text): void
+    {
+        $trans .= $this->accents ? strtr($text, [
+            ' ' => ' ',
+            '!' => '¡',
+            '"' => '″',
+            '#' => '♯',
+            '$' => '€',
+            '%' => '‰',
+            '&' => '⅋',
+            '\'' => '´',
+            '(' => '{',
+            ')' => '}',
+            '*' => '⁎',
+            '+' => '⁺',
+            ',' => '،',
+            '-' => '‐',
+            '.' => '·',
+            '/' => '⁄',
+            '0' => '⓪',
+            '1' => '①',
+            '2' => '②',
+            '3' => '③',
+            '4' => '④',
+            '5' => '⑤',
+            '6' => '⑥',
+            '7' => '⑦',
+            '8' => '⑧',
+            '9' => '⑨',
+            ':' => '∶',
+            ';' => '⁏',
+            '<' => '≤',
+            '=' => '≂',
+            '>' => '≥',
+            '?' => '¿',
+            '@' => '՞',
+            'A' => 'Å',
+            'B' => 'Ɓ',
+            'C' => 'Ç',
+            'D' => 'Ð',
+            'E' => 'É',
+            'F' => 'Ƒ',
+            'G' => 'Ĝ',
+            'H' => 'Ĥ',
+            'I' => 'Î',
+            'J' => 'Ĵ',
+            'K' => 'Ķ',
+            'L' => 'Ļ',
+            'M' => 'Ṁ',
+            'N' => 'Ñ',
+            'O' => 'Ö',
+            'P' => 'Þ',
+            'Q' => 'Ǫ',
+            'R' => 'Ŕ',
+            'S' => 'Š',
+            'T' => 'Ţ',
+            'U' => 'Û',
+            'V' => 'Ṽ',
+            'W' => 'Ŵ',
+            'X' => 'Ẋ',
+            'Y' => 'Ý',
+            'Z' => 'Ž',
+            '[' => '⁅',
+            '\\' => '∖',
+            ']' => '⁆',
+            '^' => '˄',
+            '_' => '‿',
+            '`' => '‵',
+            'a' => 'å',
+            'b' => 'ƀ',
+            'c' => 'ç',
+            'd' => 'ð',
+            'e' => 'é',
+            'f' => 'ƒ',
+            'g' => 'ĝ',
+            'h' => 'ĥ',
+            'i' => 'î',
+            'j' => 'ĵ',
+            'k' => 'ķ',
+            'l' => 'ļ',
+            'm' => 'ɱ',
+            'n' => 'ñ',
+            'o' => 'ö',
+            'p' => 'þ',
+            'q' => 'ǫ',
+            'r' => 'ŕ',
+            's' => 'š',
+            't' => 'ţ',
+            'u' => 'û',
+            'v' => 'ṽ',
+            'w' => 'ŵ',
+            'x' => 'ẋ',
+            'y' => 'ý',
+            'z' => 'ž',
+            '{' => '(',
+            '|' => '¦',
+            '}' => ')',
+            '~' => '˞',
+        ]) : $text;
+    }
+
+    private function expand(string &$trans, string $visibleText): void
+    {
+        if (1.0 >= $this->expansionFactor) {
+            return;
+        }
+
+        $visibleLength = $this->strlen($visibleText);
+        $missingLength = (int) (ceil($visibleLength * $this->expansionFactor)) - $visibleLength;
+        if ($this->brackets) {
+            $missingLength -= 2;
+        }
+
+        if (0 >= $missingLength) {
+            return;
+        }
+
+        $words = [];
+        $wordsCount = 0;
+        foreach (preg_split('/ +/', $visibleText, -1, \PREG_SPLIT_NO_EMPTY) as $word) {
+            $wordLength = $this->strlen($word);
+
+            if ($wordLength >= $missingLength) {
+                continue;
+            }
+
+            if (!isset($words[$wordLength])) {
+                $words[$wordLength] = 0;
+            }
+
+            ++$words[$wordLength];
+            ++$wordsCount;
+        }
+
+        if (!$words) {
+            $trans .= 1 === $missingLength ? self::EXPANSION_CHARACTER : ' '.str_repeat(self::EXPANSION_CHARACTER, $missingLength - 1);
+
+            return;
+        }
+
+        arsort($words, \SORT_NUMERIC);
+
+        $longestWordLength = max(array_keys($words));
+
+        while (true) {
+            $r = mt_rand(1, $wordsCount);
+
+            foreach ($words as $length => $count) {
+                $r -= $count;
+                if ($r <= 0) {
+                    break;
+                }
+            }
+
+            $trans .= ' '.str_repeat(self::EXPANSION_CHARACTER, $length);
+
+            $missingLength -= $length + 1;
+
+            if (0 === $missingLength) {
+                return;
+            }
+
+            while ($longestWordLength >= $missingLength) {
+                $wordsCount -= $words[$longestWordLength];
+                unset($words[$longestWordLength]);
+
+                if (!$words) {
+                    $trans .= 1 === $missingLength ? self::EXPANSION_CHARACTER : ' '.str_repeat(self::EXPANSION_CHARACTER, $missingLength - 1);
+
+                    return;
+                }
+
+                $longestWordLength = max(array_keys($words));
+            }
+        }
+    }
+
+    private function addBrackets(string &$trans): void
+    {
+        if (!$this->brackets) {
+            return;
+        }
+
+        $trans = '['.$trans.']';
+    }
+
+    private function strlen(string $s): int
+    {
+        return false === ($encoding = mb_detect_encoding($s, null, true)) ? \strlen($s) : mb_strlen($s, $encoding);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/README.md
new file mode 100644
index 0000000..720bee3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/README.md
@@ -0,0 +1,33 @@
+Translation Component
+=====================
+
+The Translation component provides tools to internationalize your application.
+
+Getting Started
+---------------
+
+```
+$ composer require symfony/translation
+```
+
+```php
+use Symfony\Component\Translation\Translator;
+use Symfony\Component\Translation\Loader\ArrayLoader;
+
+$translator = new Translator('fr_FR');
+$translator->addLoader('array', new ArrayLoader());
+$translator->addResource('array', [
+    'Hello World!' => 'Bonjour !',
+], 'fr_FR');
+
+echo $translator->trans('Hello World!'); // outputs « Bonjour ! »
+```
+
+Resources
+---------
+
+ * [Documentation](https://symfony.com/doc/current/translation.html)
+ * [Contributing](https://symfony.com/doc/current/contributing/index.html)
+ * [Report issues](https://github.com/symfony/symfony/issues) and
+   [send Pull Requests](https://github.com/symfony/symfony/pulls)
+   in the [main Symfony repository](https://github.com/symfony/symfony)
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReader.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReader.php
new file mode 100644
index 0000000..9e51b15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReader.php
@@ -0,0 +1,62 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Reader;
+
+use Symfony\Component\Finder\Finder;
+use Symfony\Component\Translation\Loader\LoaderInterface;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * TranslationReader reads translation messages from translation files.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class TranslationReader implements TranslationReaderInterface
+{
+    /**
+     * Loaders used for import.
+     *
+     * @var array
+     */
+    private $loaders = [];
+
+    /**
+     * Adds a loader to the translation extractor.
+     *
+     * @param string $format The format of the loader
+     */
+    public function addLoader(string $format, LoaderInterface $loader)
+    {
+        $this->loaders[$format] = $loader;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function read(string $directory, MessageCatalogue $catalogue)
+    {
+        if (!is_dir($directory)) {
+            return;
+        }
+
+        foreach ($this->loaders as $format => $loader) {
+            // load any existing translation files
+            $finder = new Finder();
+            $extension = $catalogue->getLocale().'.'.$format;
+            $files = $finder->files()->name('*.'.$extension)->in($directory);
+            foreach ($files as $file) {
+                $domain = substr($file->getFilename(), 0, -1 * \strlen($extension) - 1);
+                $catalogue->addCatalogue($loader->load($file->getPathname(), $catalogue->getLocale(), $domain));
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReaderInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReaderInterface.php
new file mode 100644
index 0000000..bc37204
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Reader/TranslationReaderInterface.php
@@ -0,0 +1,27 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Reader;
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * TranslationReader reads translation messages from translation files.
+ *
+ * @author Tobias Nyholm <tobias.nyholm@gmail.com>
+ */
+interface TranslationReaderInterface
+{
+    /**
+     * Reads translation messages from a directory to the catalogue.
+     */
+    public function read(string $directory, MessageCatalogue $catalogue);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/bin/translation-status.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/bin/translation-status.php
new file mode 100644
index 0000000..4e0723b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/bin/translation-status.php
@@ -0,0 +1,207 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+$usageInstructions = <<<END
+
+  Usage instructions
+  -------------------------------------------------------------------------------
+
+  $ cd symfony-code-root-directory/
+
+  # show the translation status of all locales
+  $ php translation-status.php
+
+  # show the translation status of all locales and all their missing translations
+  $ php translation-status.php -v
+
+  # show the status of a single locale
+  $ php translation-status.php fr
+
+  # show the status of a single locale and all its missing translations
+  $ php translation-status.php fr -v
+
+END;
+
+$config = [
+    // if TRUE, the full list of missing translations is displayed
+    'verbose_output' => false,
+    // NULL = analyze all locales
+    'locale_to_analyze' => null,
+    // the reference files all the other translations are compared to
+    'original_files' => [
+        'src/Symfony/Component/Form/Resources/translations/validators.en.xlf',
+        'src/Symfony/Component/Security/Core/Resources/translations/security.en.xlf',
+        'src/Symfony/Component/Validator/Resources/translations/validators.en.xlf',
+    ],
+];
+
+$argc = $_SERVER['argc'];
+$argv = $_SERVER['argv'];
+
+if ($argc > 3) {
+    echo str_replace('translation-status.php', $argv[0], $usageInstructions);
+    exit(1);
+}
+
+foreach (array_slice($argv, 1) as $argumentOrOption) {
+    if (str_starts_with($argumentOrOption, '-')) {
+        $config['verbose_output'] = true;
+    } else {
+        $config['locale_to_analyze'] = $argumentOrOption;
+    }
+}
+
+foreach ($config['original_files'] as $originalFilePath) {
+    if (!file_exists($originalFilePath)) {
+        echo sprintf('The following file does not exist. Make sure that you execute this command at the root dir of the Symfony code repository.%s  %s', \PHP_EOL, $originalFilePath);
+        exit(1);
+    }
+}
+
+$totalMissingTranslations = 0;
+
+foreach ($config['original_files'] as $originalFilePath) {
+    $translationFilePaths = findTranslationFiles($originalFilePath, $config['locale_to_analyze']);
+    $translationStatus = calculateTranslationStatus($originalFilePath, $translationFilePaths);
+
+    $totalMissingTranslations += array_sum(array_map(function ($translation) {
+        return count($translation['missingKeys']);
+    }, array_values($translationStatus)));
+
+    printTranslationStatus($originalFilePath, $translationStatus, $config['verbose_output']);
+}
+
+exit($totalMissingTranslations > 0 ? 1 : 0);
+
+function findTranslationFiles($originalFilePath, $localeToAnalyze)
+{
+    $translations = [];
+
+    $translationsDir = dirname($originalFilePath);
+    $originalFileName = basename($originalFilePath);
+    $translationFileNamePattern = str_replace('.en.', '.*.', $originalFileName);
+
+    $translationFiles = glob($translationsDir.'/'.$translationFileNamePattern, \GLOB_NOSORT);
+    sort($translationFiles);
+    foreach ($translationFiles as $filePath) {
+        $locale = extractLocaleFromFilePath($filePath);
+
+        if (null !== $localeToAnalyze && $locale !== $localeToAnalyze) {
+            continue;
+        }
+
+        $translations[$locale] = $filePath;
+    }
+
+    return $translations;
+}
+
+function calculateTranslationStatus($originalFilePath, $translationFilePaths)
+{
+    $translationStatus = [];
+    $allTranslationKeys = extractTranslationKeys($originalFilePath);
+
+    foreach ($translationFilePaths as $locale => $translationPath) {
+        $translatedKeys = extractTranslationKeys($translationPath);
+        $missingKeys = array_diff_key($allTranslationKeys, $translatedKeys);
+
+        $translationStatus[$locale] = [
+            'total' => count($allTranslationKeys),
+            'translated' => count($translatedKeys),
+            'missingKeys' => $missingKeys,
+        ];
+    }
+
+    return $translationStatus;
+}
+
+function printTranslationStatus($originalFilePath, $translationStatus, $verboseOutput)
+{
+    printTitle($originalFilePath);
+    printTable($translationStatus, $verboseOutput);
+    echo \PHP_EOL.\PHP_EOL;
+}
+
+function extractLocaleFromFilePath($filePath)
+{
+    $parts = explode('.', $filePath);
+
+    return $parts[count($parts) - 2];
+}
+
+function extractTranslationKeys($filePath)
+{
+    $translationKeys = [];
+    $contents = new \SimpleXMLElement(file_get_contents($filePath));
+
+    foreach ($contents->file->body->{'trans-unit'} as $translationKey) {
+        $translationId = (string) $translationKey['id'];
+        $translationKey = (string) $translationKey->source;
+
+        $translationKeys[$translationId] = $translationKey;
+    }
+
+    return $translationKeys;
+}
+
+function printTitle($title)
+{
+    echo $title.\PHP_EOL;
+    echo str_repeat('=', strlen($title)).\PHP_EOL.\PHP_EOL;
+}
+
+function printTable($translations, $verboseOutput)
+{
+    if (0 === count($translations)) {
+        echo 'No translations found';
+
+        return;
+    }
+    $longestLocaleNameLength = max(array_map('strlen', array_keys($translations)));
+
+    foreach ($translations as $locale => $translation) {
+        if ($translation['translated'] > $translation['total']) {
+            textColorRed();
+        } elseif ($translation['translated'] === $translation['total']) {
+            textColorGreen();
+        }
+
+        echo sprintf('| Locale: %-'.$longestLocaleNameLength.'s | Translated: %d/%d', $locale, $translation['translated'], $translation['total']).\PHP_EOL;
+
+        textColorNormal();
+
+        if (true === $verboseOutput && count($translation['missingKeys']) > 0) {
+            echo str_repeat('-', 80).\PHP_EOL;
+            echo '| Missing Translations:'.\PHP_EOL;
+
+            foreach ($translation['missingKeys'] as $id => $content) {
+                echo sprintf('|   (id=%s) %s', $id, $content).\PHP_EOL;
+            }
+
+            echo str_repeat('-', 80).\PHP_EOL;
+        }
+    }
+}
+
+function textColorGreen()
+{
+    echo "\033[32m";
+}
+
+function textColorRed()
+{
+    echo "\033[31m";
+}
+
+function textColorNormal()
+{
+    echo "\033[0m";
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/data/parents.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/data/parents.json
new file mode 100644
index 0000000..a67458a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/data/parents.json
@@ -0,0 +1,140 @@
+{
+    "az_Cyrl": "root",
+    "bs_Cyrl": "root",
+    "en_150": "en_001",
+    "en_AG": "en_001",
+    "en_AI": "en_001",
+    "en_AT": "en_150",
+    "en_AU": "en_001",
+    "en_BB": "en_001",
+    "en_BE": "en_150",
+    "en_BM": "en_001",
+    "en_BS": "en_001",
+    "en_BW": "en_001",
+    "en_BZ": "en_001",
+    "en_CA": "en_001",
+    "en_CC": "en_001",
+    "en_CH": "en_150",
+    "en_CK": "en_001",
+    "en_CM": "en_001",
+    "en_CX": "en_001",
+    "en_CY": "en_001",
+    "en_DE": "en_150",
+    "en_DG": "en_001",
+    "en_DK": "en_150",
+    "en_DM": "en_001",
+    "en_ER": "en_001",
+    "en_FI": "en_150",
+    "en_FJ": "en_001",
+    "en_FK": "en_001",
+    "en_FM": "en_001",
+    "en_GB": "en_001",
+    "en_GD": "en_001",
+    "en_GG": "en_001",
+    "en_GH": "en_001",
+    "en_GI": "en_001",
+    "en_GM": "en_001",
+    "en_GY": "en_001",
+    "en_HK": "en_001",
+    "en_IE": "en_001",
+    "en_IL": "en_001",
+    "en_IM": "en_001",
+    "en_IN": "en_001",
+    "en_IO": "en_001",
+    "en_JE": "en_001",
+    "en_JM": "en_001",
+    "en_KE": "en_001",
+    "en_KI": "en_001",
+    "en_KN": "en_001",
+    "en_KY": "en_001",
+    "en_LC": "en_001",
+    "en_LR": "en_001",
+    "en_LS": "en_001",
+    "en_MG": "en_001",
+    "en_MO": "en_001",
+    "en_MS": "en_001",
+    "en_MT": "en_001",
+    "en_MU": "en_001",
+    "en_MW": "en_001",
+    "en_MY": "en_001",
+    "en_NA": "en_001",
+    "en_NF": "en_001",
+    "en_NG": "en_001",
+    "en_NL": "en_150",
+    "en_NR": "en_001",
+    "en_NU": "en_001",
+    "en_NZ": "en_001",
+    "en_PG": "en_001",
+    "en_PH": "en_001",
+    "en_PK": "en_001",
+    "en_PN": "en_001",
+    "en_PW": "en_001",
+    "en_RW": "en_001",
+    "en_SB": "en_001",
+    "en_SC": "en_001",
+    "en_SD": "en_001",
+    "en_SE": "en_150",
+    "en_SG": "en_001",
+    "en_SH": "en_001",
+    "en_SI": "en_150",
+    "en_SL": "en_001",
+    "en_SS": "en_001",
+    "en_SX": "en_001",
+    "en_SZ": "en_001",
+    "en_TC": "en_001",
+    "en_TK": "en_001",
+    "en_TO": "en_001",
+    "en_TT": "en_001",
+    "en_TV": "en_001",
+    "en_TZ": "en_001",
+    "en_UG": "en_001",
+    "en_VC": "en_001",
+    "en_VG": "en_001",
+    "en_VU": "en_001",
+    "en_WS": "en_001",
+    "en_ZA": "en_001",
+    "en_ZM": "en_001",
+    "en_ZW": "en_001",
+    "es_AR": "es_419",
+    "es_BO": "es_419",
+    "es_BR": "es_419",
+    "es_BZ": "es_419",
+    "es_CL": "es_419",
+    "es_CO": "es_419",
+    "es_CR": "es_419",
+    "es_CU": "es_419",
+    "es_DO": "es_419",
+    "es_EC": "es_419",
+    "es_GT": "es_419",
+    "es_HN": "es_419",
+    "es_MX": "es_419",
+    "es_NI": "es_419",
+    "es_PA": "es_419",
+    "es_PE": "es_419",
+    "es_PR": "es_419",
+    "es_PY": "es_419",
+    "es_SV": "es_419",
+    "es_US": "es_419",
+    "es_UY": "es_419",
+    "es_VE": "es_419",
+    "ff_Adlm": "root",
+    "nb": "no",
+    "nn": "no",
+    "pa_Arab": "root",
+    "pt_AO": "pt_PT",
+    "pt_CH": "pt_PT",
+    "pt_CV": "pt_PT",
+    "pt_GQ": "pt_PT",
+    "pt_GW": "pt_PT",
+    "pt_LU": "pt_PT",
+    "pt_MO": "pt_PT",
+    "pt_MZ": "pt_PT",
+    "pt_ST": "pt_PT",
+    "pt_TL": "pt_PT",
+    "sd_Deva": "root",
+    "sr_Latn": "root",
+    "uz_Arab": "root",
+    "uz_Cyrl": "root",
+    "zh_Hant": "root",
+    "zh_Hant_MO": "zh_Hant_HK"
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/functions.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/functions.php
new file mode 100644
index 0000000..901d2f8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/functions.php
@@ -0,0 +1,22 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+if (!\function_exists(t::class)) {
+    /**
+     * @author Nate Wiebe <nate@northern.co>
+     */
+    function t(string $message, array $parameters = [], string $domain = null): TranslatableMessage
+    {
+        return new TranslatableMessage($message, $parameters, $domain);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-1.2-strict.xsd b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-1.2-strict.xsd
new file mode 100644
index 0000000..dface62
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-1.2-strict.xsd
@@ -0,0 +1,2223 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+May-19-2004:
+- Changed the <choice> for ElemType_header, moving minOccurs="0" maxOccurs="unbounded" from its elements
+to <choice> itself.
+- Added <choice> for ElemType_trans-unit to allow "any order" for <context-group>, <count-group>, <prop-group>, <note>, and
+<alt-trans>.
+
+Oct-2005
+- updated version info to 1.2
+- equiv-trans attribute to <trans-unit> element
+- merged-trans attribute for <group> element
+- Add the <seg-source> element as optional in the <trans-unit> and <alt-trans> content models, at the same level as <source>
+- Create a new value "seg" for the mtype attribute of the <mrk> element
+- Add mid as an optional attribute for the <alt-trans> element
+
+Nov-14-2005
+- Changed name attribute for <context-group> from required to optional
+- Added extension point at <xliff>
+
+Jan-9-2006
+- Added alttranstype type attribute to <alt-trans>, and values
+
+Jan-10-2006
+- Corrected error with overwritten purposeValueList
+- Corrected name="AttrType_Version",  attribute should have been "name"
+
+-->
+<xsd:schema xmlns:xlf="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:oasis:names:tc:xliff:document:1.2" xml:lang="en">
+  <!-- Import for xml:lang and xml:space -->
+  <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+  <!-- Attributes Lists -->
+  <xsd:simpleType name="XTend">
+    <xsd:restriction base="xsd:string">
+      <xsd:pattern value="x-[^\s]+"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="context-typeValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'context-type'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="database">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a database content.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="element">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the content of an element within an XML document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="elementtitle">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the name of an element within an XML document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="linenumber">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the line number from the sourcefile (see context-type="sourcefile") where the &lt;source&gt; is found.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="numparams">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a the number of parameters contained within the &lt;source&gt;.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="paramnotes">
+        <xsd:annotation>
+          <xsd:documentation>Indicates notes pertaining to the parameters in the &lt;source&gt;.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="record">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the content of a record within a database.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="recordtitle">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the name of a record within a database.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="sourcefile">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the original source file in the case that multiple files are merged to form the original file from which the XLIFF file is created. This differs from the original &lt;file&gt; attribute in that this sourcefile is one of many that make up that file.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="count-typeValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'count-type'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="num-usages">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the count units are items that are used X times in a certain context; example: this is a reusable text unit which is used 42 times in other texts.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="repetition">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the count units are translation units existing already in the same document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="total">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a total count.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="InlineDelimitersValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'ctype' when used other elements than &lt;ph&gt; or &lt;x&gt;.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="bold">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a run of bolded text.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="italic">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a run of text in italics.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="underlined">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a run of underlined text.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="link">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a run of hyper-text.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="InlinePlaceholdersValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'ctype' when used with &lt;ph&gt; or &lt;x&gt;.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="image">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a inline image.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pb">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a page break.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="lb">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a line break.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="mime-typeValueList">
+    <xsd:restriction base="xsd:string">
+      <xsd:pattern value="(text|multipart|message|application|image|audio|video|model)(/.+)*"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="datatypeValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'datatype'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="asp">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Active Server Page data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="c">
+        <xsd:annotation>
+          <xsd:documentation>Indicates C source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cdf">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Channel Definition Format (CDF) data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cfm">
+        <xsd:annotation>
+          <xsd:documentation>Indicates ColdFusion data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cpp">
+        <xsd:annotation>
+          <xsd:documentation>Indicates C++ source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="csharp">
+        <xsd:annotation>
+          <xsd:documentation>Indicates C-Sharp data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cstring">
+        <xsd:annotation>
+          <xsd:documentation>Indicates strings from C, ASM, and driver files data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="csv">
+        <xsd:annotation>
+          <xsd:documentation>Indicates comma-separated values data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="database">
+        <xsd:annotation>
+          <xsd:documentation>Indicates database data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="documentfooter">
+        <xsd:annotation>
+          <xsd:documentation>Indicates portions of document that follows data and contains metadata.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="documentheader">
+        <xsd:annotation>
+          <xsd:documentation>Indicates portions of document that precedes data and contains metadata.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="filedialog">
+        <xsd:annotation>
+          <xsd:documentation>Indicates data from standard UI file operations dialogs (e.g., Open, Save, Save As, Export, Import).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="form">
+        <xsd:annotation>
+          <xsd:documentation>Indicates standard user input screen data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="html">
+        <xsd:annotation>
+          <xsd:documentation>Indicates HyperText Markup Language (HTML) data - document instance.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="htmlbody">
+        <xsd:annotation>
+          <xsd:documentation>Indicates content within an HTML document’s &lt;body&gt; element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="ini">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Windows INI file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="interleaf">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Interleaf data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="javaclass">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Java source file data (extension '.java').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="javapropertyresourcebundle">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Java property resource bundle data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="javalistresourcebundle">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Java list resource bundle data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="javascript">
+        <xsd:annotation>
+          <xsd:documentation>Indicates JavaScript source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="jscript">
+        <xsd:annotation>
+          <xsd:documentation>Indicates JScript source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="layout">
+        <xsd:annotation>
+          <xsd:documentation>Indicates information relating to formatting.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="lisp">
+        <xsd:annotation>
+          <xsd:documentation>Indicates LISP source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="margin">
+        <xsd:annotation>
+          <xsd:documentation>Indicates information relating to margin formats.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="menufile">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a file containing menu.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="messagefile">
+        <xsd:annotation>
+          <xsd:documentation>Indicates numerically identified string table.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="mif">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Maker Interchange Format (MIF) data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="mimetype">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the datatype attribute value is a MIME Type value and is defined in the mime-type attribute.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="mo">
+        <xsd:annotation>
+          <xsd:documentation>Indicates GNU Machine Object data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="msglib">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Message Librarian strings created by Novell's Message Librarian Tool.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pagefooter">
+        <xsd:annotation>
+          <xsd:documentation>Indicates information to be displayed at the bottom of each page of a document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pageheader">
+        <xsd:annotation>
+          <xsd:documentation>Indicates information to be displayed at the top of each page of a document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="parameters">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a list of property values (e.g., settings within INI files or preferences dialog).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pascal">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Pascal source file data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="php">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Hypertext Preprocessor data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="plaintext">
+        <xsd:annotation>
+          <xsd:documentation>Indicates plain text file (no formatting other than, possibly, wrapping).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="po">
+        <xsd:annotation>
+          <xsd:documentation>Indicates GNU Portable Object file.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="report">
+        <xsd:annotation>
+          <xsd:documentation>Indicates dynamically generated user defined document. e.g. Oracle Report, Crystal Report, etc.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="resources">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Windows .NET binary resources.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="resx">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Windows .NET Resources.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rtf">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Rich Text Format (RTF) data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="sgml">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Standard Generalized Markup Language (SGML) data - document instance.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="sgmldtd">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Standard Generalized Markup Language (SGML) data - Document Type Definition (DTD).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="svg">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Scalable Vector Graphic (SVG) data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="vbscript">
+        <xsd:annotation>
+          <xsd:documentation>Indicates VisualBasic Script source file.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="warning">
+        <xsd:annotation>
+          <xsd:documentation>Indicates warning message.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="winres">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Windows (Win32) resources (i.e. resources extracted from an RC script, a message file, or a compiled file).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="xhtml">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Extensible HyperText Markup Language (XHTML) data - document instance.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="xml">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Extensible Markup Language (XML) data - document instance.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="xmldtd">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Extensible Markup Language (XML) data - Document Type Definition (DTD).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="xsl">
+        <xsd:annotation>
+          <xsd:documentation>Indicates Extensible Stylesheet Language (XSL) data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="xul">
+        <xsd:annotation>
+          <xsd:documentation>Indicates XUL elements.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="mtypeValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'mtype'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="abbrev">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text is an abbreviation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="abbreviated-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8: A term resulting from the omission of any part of the full term while designating the same concept.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="abbreviation">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8.1: An abbreviated form of a simple term resulting from the omission of some of its letters (e.g. 'adj.' for 'adjective').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="acronym">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8.4: An abbreviated form of a term made up of letters from the full form of a multiword term strung together into a sequence pronounced only syllabically (e.g. 'radar' for 'radio detecting and ranging').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="appellation">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620: A proper-name term, such as the name of an agency or other proper entity.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="collocation">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.18.1: A recurrent word combination characterized by cohesion in that the components of the collocation must co-occur within an utterance or series of utterances, even though they do not necessarily have to maintain immediate proximity to one another.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="common-name">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.5: A synonym for an international scientific term that is used in general discourse in a given language.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="datetime">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text is a date and/or time.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="equation">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.15: An expression used to represent a concept based on a statement that two mathematical expressions are, for instance, equal as identified by the equal sign (=), or assigned to one another by a similar sign.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="expanded-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.7: The complete representation of a term for which there is an abbreviated form.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="formula">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.14: Figures, symbols or the like used to express a concept briefly, such as a mathematical or chemical formula.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="head-term">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.1: The concept designation that has been chosen to head a terminological record.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="initialism">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8.3: An abbreviated form of a term consisting of some of the initial letters of the words making up a multiword term or the term elements making up a compound term when these letters are pronounced individually (e.g. 'BSE' for 'bovine spongiform encephalopathy').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="international-scientific-term">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.4: A term that is part of an international scientific nomenclature as adopted by an appropriate scientific body.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="internationalism">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.6: A term that has the same or nearly identical orthographic or phonemic form in many languages.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="logical-expression">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.16: An expression used to represent a concept based on mathematical or logical relations, such as statements of inequality, set relationships, Boolean operations, and the like.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="materials-management-unit">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.17: A unit to track object.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="name">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text is a name.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="near-synonym">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.3: A term that represents the same or a very similar concept as another term in the same language, but for which interchangeability is limited to some contexts and inapplicable in others.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="part-number">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.17.2: A unique alphanumeric designation assigned to an object in a manufacturing system.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="phrase">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text is a phrase.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="phraseological-unit">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.18: Any group of two or more words that form a unit, the meaning of which frequently cannot be deduced based on the combined sense of the words making up the phrase.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="protected">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text should not be translated.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="romanized-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.12: A form of a term resulting from an operation whereby non-Latin writing systems are converted to the Latin alphabet.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="seg">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the marked text represents a segment.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="set-phrase">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.18.2: A fixed, lexicalized phrase.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="short-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8.2: A variant of a multiword term that includes fewer words than the full form of the term (e.g. 'Group of Twenty-four' for 'Intergovernmental Group of Twenty-four on International Monetary Affairs').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="sku">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.17.1: Stock keeping unit, an inventory item identified by a unique alphanumeric designation assigned to an object in an inventory control system.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="standard-text">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.19: A fixed chunk of recurring text.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="symbol">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.13: A designation of a concept by letters, numerals, pictograms or any combination thereof.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="synonym">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.2: Any term that represents the same or a very similar concept as the main entry term in a term entry.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="synonymous-phrase">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.18.3: Phraseological unit in a language that expresses the same semantic content as another phrase in that same language.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="term">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the marked text is a term.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="transcribed-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.11: A form of a term resulting from an operation whereby the characters of one writing system are represented by characters from another writing system, taking into account the pronunciation of the characters converted.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="transliterated-form">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.10: A form of a term resulting from an operation whereby the characters of an alphabetic writing system are represented by characters from another alphabetic writing system.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="truncated-term">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.8.5: An abbreviated form of a term resulting from the omission of one or more term elements or syllables (e.g. 'flu' for 'influenza').</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="variant">
+        <xsd:annotation>
+          <xsd:documentation>ISO-12620 2.1.9: One of the alternate forms of a term.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="restypeValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'restype'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="auto3state">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC AUTO3STATE control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="autocheckbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC AUTOCHECKBOX control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="autoradiobutton">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC AUTORADIOBUTTON control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="bedit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC BEDIT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="bitmap">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a bitmap, for example a BITMAP resource in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="button">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a button object, for example a BUTTON control Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="caption">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a caption, such as the caption of a dialog box.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cell">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the cell in a table, for example the content of the &lt;td&gt; element in HTML.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="checkbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates check box object, for example a CHECKBOX control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="checkboxmenuitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a menu item with an associated checkbox.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="checkedlistbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a list box, but with a check-box for each item.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="colorchooser">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a color selection dialog.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="combobox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a combination of edit box and listbox object, for example a COMBOBOX control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="comboboxexitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an initialization entry of an extended combobox DLGINIT resource block. (code 0x1234).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="comboboxitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an initialization entry of a combobox DLGINIT resource block (code 0x0403).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="component">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a UI base class element that cannot be represented by any other element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="contextmenu">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a context menu.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="ctext">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC CTEXT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cursor">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a cursor, for example a CURSOR resource in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="datetimepicker">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a date/time picker.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="defpushbutton">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC DEFPUSHBUTTON control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="dialog">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a dialog box.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="dlginit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC DLGINIT resource block.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="edit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an edit box object, for example an EDIT control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="file">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a filename.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="filechooser">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a file dialog.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="fn">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a footnote.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="font">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a font name.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="footer">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a footer.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="frame">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a frame object.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="grid">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a XUL grid element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="groupbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a groupbox object, for example a GROUPBOX control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="header">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a header item.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="heading">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a heading, such has the content of &lt;h1&gt;, &lt;h2&gt;, etc. in HTML.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="hedit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC HEDIT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="hscrollbar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a horizontal scrollbar.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="icon">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an icon, for example an ICON resource in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="iedit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC IEDIT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="keywords">
+        <xsd:annotation>
+          <xsd:documentation>Indicates keyword list, such as the content of the Keywords meta-data in HTML, or a K footnote in WinHelp RTF.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="label">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a label object.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="linklabel">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a label that is also a HTML link (not necessarily a URL).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="list">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a list (a group of list-items, for example an &lt;ol&gt; or &lt;ul&gt; element in HTML).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="listbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a listbox object, for example an LISTBOX control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="listitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an list item (an entry in a list).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="ltext">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC LTEXT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="menu">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a menu (a group of menu-items).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="menubar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a toolbar containing one or more tope level menus.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="menuitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a menu item (an entry in a menu).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="menuseparator">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a XUL menuseparator element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="message">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a message, for example an entry in a MESSAGETABLE resource in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="monthcalendar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a calendar control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="numericupdown">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an edit box beside a spin control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="panel">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a catch all for rectangular areas.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="popupmenu">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a standalone menu not necessarily associated with a menubar.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pushbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a pushbox object, for example a PUSHBOX control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pushbutton">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC PUSHBUTTON control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="radio">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a radio button object.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="radiobuttonmenuitem">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a menuitem with associated radio button.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rcdata">
+        <xsd:annotation>
+          <xsd:documentation>Indicates raw data resources for an application.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="row">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a row in a table.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rtext">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC RTEXT control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="scrollpane">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a user navigable container used to show a portion of a document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="separator">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a generic divider object (e.g. menu group separator).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="shortcut">
+        <xsd:annotation>
+          <xsd:documentation>Windows accelerators, shortcuts in resource or property files.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="spinner">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a UI control to indicate process activity but not progress.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="splitter">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a splitter bar.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="state3">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC STATE3 control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="statusbar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a window for providing feedback to the users, like 'read-only', etc.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="string">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a string, for example an entry in a STRINGTABLE resource in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="tabcontrol">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a layers of controls with a tab to select layers.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="table">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a display and edits regular two-dimensional tables of cells.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="textbox">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a XUL textbox element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="togglebutton">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a UI button that can be toggled to on or off state.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="toolbar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an array of controls, usually buttons.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="tooltip">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a pop up tool tip text.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="trackbar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a bar with a pointer indicating a position within a certain range.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="tree">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a control that displays a set of hierarchical data.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="uri">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a URI (URN or URL).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="userbutton">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a Windows RC USERBUTTON control.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="usercontrol">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a user-defined control like CONTROL control in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="var">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the text of a variable.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="versioninfo">
+        <xsd:annotation>
+          <xsd:documentation>Indicates version information about a resource like VERSIONINFO in Windows.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="vscrollbar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a vertical scrollbar.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="window">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a graphical window.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="size-unitValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'size-unit'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="byte">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in 8-bit bytes.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="char">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in Unicode characters.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="col">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in columns. Used for HTML text area.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="cm">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in centimeters.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="dlgunit">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in dialog units, as defined in Windows resources.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="em">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in 'font-size' units (as defined in CSS).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="ex">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in 'x-height' units (as defined in CSS).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="glyph">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in glyphs. A glyph is considered to be one or more combined Unicode characters that represent a single displayable text character. Sometimes referred to as a 'grapheme cluster'</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="in">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in inches.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="mm">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in millimeters.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="percent">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in percentage.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="pixel">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in pixels.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="point">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in point.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="row">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a size in rows. Used for HTML text area.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="stateValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'state'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="final">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the terminating state.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-adaptation">
+        <xsd:annotation>
+          <xsd:documentation>Indicates only non-textual information needs adaptation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-l10n">
+        <xsd:annotation>
+          <xsd:documentation>Indicates both text and non-textual information needs adaptation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-review-adaptation">
+        <xsd:annotation>
+          <xsd:documentation>Indicates only non-textual information needs review.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-review-l10n">
+        <xsd:annotation>
+          <xsd:documentation>Indicates both text and non-textual information needs review.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-review-translation">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that only the text of the item needs to be reviewed.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="needs-translation">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item needs to be translated.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="new">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item is new. For example, translation units that were not in a previous version of the document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="signed-off">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that changes are reviewed and approved.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="translated">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item has been translated.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="state-qualifierValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'state-qualifier'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="exact-match">
+        <xsd:annotation>
+          <xsd:documentation>Indicates an exact match. An exact match occurs when a source text of a segment is exactly the same as the source text of a segment that was translated previously.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="fuzzy-match">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a fuzzy match. A fuzzy match occurs when a source text of a segment is very similar to the source text of a segment that was translated previously (e.g. when the difference is casing, a few changed words, white-space discripancy, etc.).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="id-match">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a match based on matching IDs (in addition to matching text).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="leveraged-glossary">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a translation derived from a glossary.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="leveraged-inherited">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a translation derived from existing translation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="leveraged-mt">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a translation derived from machine translation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="leveraged-repository">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a translation derived from a translation repository.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="leveraged-tm">
+        <xsd:annotation>
+          <xsd:documentation>Indicates a translation derived from a translation memory.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="mt-suggestion">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the translation is suggested by machine translation.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rejected-grammar">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item has been rejected because of incorrect grammar.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rejected-inaccurate">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item has been rejected because it is incorrect.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rejected-length">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item has been rejected because it is too long or too short.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rejected-spelling">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the item has been rejected because of incorrect spelling.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="tm-suggestion">
+        <xsd:annotation>
+          <xsd:documentation>Indicates the translation is suggested by translation memory.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="unitValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'unit'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="word">
+        <xsd:annotation>
+          <xsd:documentation>Refers to words.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="page">
+        <xsd:annotation>
+          <xsd:documentation>Refers to pages.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="trans-unit">
+        <xsd:annotation>
+          <xsd:documentation>Refers to &lt;trans-unit&gt; elements.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="bin-unit">
+        <xsd:annotation>
+          <xsd:documentation>Refers to &lt;bin-unit&gt; elements.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="glyph">
+        <xsd:annotation>
+          <xsd:documentation>Refers to glyphs.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="item">
+        <xsd:annotation>
+          <xsd:documentation>Refers to &lt;trans-unit&gt; and/or &lt;bin-unit&gt; elements.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="instance">
+        <xsd:annotation>
+          <xsd:documentation>Refers to the occurrences of instances defined by the count-type value.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="character">
+        <xsd:annotation>
+          <xsd:documentation>Refers to characters.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="line">
+        <xsd:annotation>
+          <xsd:documentation>Refers to lines.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="sentence">
+        <xsd:annotation>
+          <xsd:documentation>Refers to sentences.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="paragraph">
+        <xsd:annotation>
+          <xsd:documentation>Refers to paragraphs.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="segment">
+        <xsd:annotation>
+          <xsd:documentation>Refers to segments.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="placeable">
+        <xsd:annotation>
+          <xsd:documentation>Refers to placeables (inline elements).</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="priorityValueList">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'priority'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:positiveInteger">
+      <xsd:enumeration value="1">
+        <xsd:annotation>
+          <xsd:documentation>Highest priority.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="2">
+        <xsd:annotation>
+          <xsd:documentation>High priority.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="3">
+        <xsd:annotation>
+          <xsd:documentation>High priority, but not as important as 2.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="4">
+        <xsd:annotation>
+          <xsd:documentation>High priority, but not as important as 3.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="5">
+        <xsd:annotation>
+          <xsd:documentation>Medium priority, but more important than 6.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="6">
+        <xsd:annotation>
+          <xsd:documentation>Medium priority, but less important than 5.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="7">
+        <xsd:annotation>
+          <xsd:documentation>Low priority, but more important than 8.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="8">
+        <xsd:annotation>
+          <xsd:documentation>Low priority, but more important than 9.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="9">
+        <xsd:annotation>
+          <xsd:documentation>Low priority.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="10">
+        <xsd:annotation>
+          <xsd:documentation>Lowest priority.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="reformatValueYesNo">
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="yes">
+        <xsd:annotation>
+          <xsd:documentation>This value indicates that all properties can be reformatted. This value must be used alone.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="no">
+        <xsd:annotation>
+          <xsd:documentation>This value indicates that no properties should be reformatted. This value must be used alone.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="reformatValueList">
+    <xsd:list>
+      <xsd:simpleType>
+        <xsd:union memberTypes="xlf:XTend">
+          <xsd:simpleType>
+            <xsd:restriction base="xsd:string">
+              <xsd:enumeration value="coord">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that all information in the coord attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="coord-x">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the x information in the coord attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="coord-y">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the y information in the coord attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="coord-cx">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the cx information in the coord attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="coord-cy">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the cy information in the coord attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="font">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that all the information in the font attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="font-name">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the name information in the font attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="font-size">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the size information in the font attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="font-weight">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the weight information in the font attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="css-style">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the information in the css-style attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="style">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the information in the style attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+              <xsd:enumeration value="ex-style">
+                <xsd:annotation>
+                  <xsd:documentation>This value indicates that the information in the exstyle attribute can be modified.</xsd:documentation>
+                </xsd:annotation>
+              </xsd:enumeration>
+            </xsd:restriction>
+          </xsd:simpleType>
+        </xsd:union>
+      </xsd:simpleType>
+    </xsd:list>
+  </xsd:simpleType>
+  <xsd:simpleType name="purposeValueList">
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="information">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the context is informational in nature, specifying for example, how a term should be translated. Thus, should be displayed to anyone editing the XLIFF document.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="location">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the context-group is used to specify where the term was found in the translatable source. Thus, it is not displayed.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="match">
+        <xsd:annotation>
+          <xsd:documentation>Indicates that the context information should be used during translation memory lookups. Thus, it is not displayed.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="alttranstypeValueList">
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="proposal">
+        <xsd:annotation>
+          <xsd:documentation>Represents a translation proposal from a translation memory or other resource.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="previous-version">
+        <xsd:annotation>
+          <xsd:documentation>Represents a previous version of the target element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="rejected">
+        <xsd:annotation>
+          <xsd:documentation>Represents a rejected version of the target element.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="reference">
+        <xsd:annotation>
+          <xsd:documentation>Represents a translation to be used for reference purposes only, for example from a related product or a different language.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+      <xsd:enumeration value="accepted">
+        <xsd:annotation>
+          <xsd:documentation>Represents a proposed translation that was used for the translation of the trans-unit, possibly modified.</xsd:documentation>
+        </xsd:annotation>
+      </xsd:enumeration>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <!-- Other Types -->
+  <xsd:complexType name="ElemType_ExternalReference">
+    <xsd:choice>
+      <xsd:element ref="xlf:internal-file"/>
+      <xsd:element ref="xlf:external-file"/>
+    </xsd:choice>
+  </xsd:complexType>
+  <xsd:simpleType name="AttrType_purpose">
+    <xsd:list>
+      <xsd:simpleType>
+        <xsd:union memberTypes="xlf:purposeValueList xlf:XTend"/>
+      </xsd:simpleType>
+    </xsd:list>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_datatype">
+    <xsd:union memberTypes="xlf:datatypeValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_restype">
+    <xsd:union memberTypes="xlf:restypeValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_alttranstype">
+    <xsd:union memberTypes="xlf:alttranstypeValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_context-type">
+    <xsd:union memberTypes="xlf:context-typeValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_state">
+    <xsd:union memberTypes="xlf:stateValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_state-qualifier">
+    <xsd:union memberTypes="xlf:state-qualifierValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_count-type">
+    <xsd:union memberTypes="xlf:restypeValueList xlf:count-typeValueList xlf:datatypeValueList xlf:stateValueList xlf:state-qualifierValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_InlineDelimiters">
+    <xsd:union memberTypes="xlf:InlineDelimitersValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_InlinePlaceholders">
+    <xsd:union memberTypes="xlf:InlinePlaceholdersValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_size-unit">
+    <xsd:union memberTypes="xlf:size-unitValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_mtype">
+    <xsd:union memberTypes="xlf:mtypeValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_unit">
+    <xsd:union memberTypes="xlf:unitValueList xlf:XTend"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_priority">
+    <xsd:union memberTypes="xlf:priorityValueList"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_reformat">
+    <xsd:union memberTypes="xlf:reformatValueYesNo xlf:reformatValueList"/>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_YesNo">
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="yes"/>
+      <xsd:enumeration value="no"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_Position">
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="open"/>
+      <xsd:enumeration value="close"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_assoc">
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="preceding"/>
+      <xsd:enumeration value="following"/>
+      <xsd:enumeration value="both"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_annotates">
+    <xsd:restriction base="xsd:NMTOKEN">
+      <xsd:enumeration value="source"/>
+      <xsd:enumeration value="target"/>
+      <xsd:enumeration value="general"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_Coordinates">
+    <xsd:annotation>
+      <xsd:documentation>Values for the attribute 'coord'.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:string">
+      <xsd:pattern value="(-?\d+|#);(-?\d+|#);(-?\d+|#);(-?\d+|#)"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <xsd:simpleType name="AttrType_Version">
+    <xsd:annotation>
+      <xsd:documentation>Version values: 1.0 and 1.1 are allowed for backward compatibility.</xsd:documentation>
+    </xsd:annotation>
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="1.2"/>
+      <xsd:enumeration value="1.1"/>
+      <xsd:enumeration value="1.0"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+  <!-- Groups -->
+  <xsd:group name="ElemGroup_TextContent">
+    <xsd:choice>
+      <xsd:element ref="xlf:g"/>
+      <xsd:element ref="xlf:bpt"/>
+      <xsd:element ref="xlf:ept"/>
+      <xsd:element ref="xlf:ph"/>
+      <xsd:element ref="xlf:it"/>
+      <xsd:element ref="xlf:mrk"/>
+      <xsd:element ref="xlf:x"/>
+      <xsd:element ref="xlf:bx"/>
+      <xsd:element ref="xlf:ex"/>
+    </xsd:choice>
+  </xsd:group>
+  <xsd:attributeGroup name="AttrGroup_TextContent">
+    <xsd:attribute name="id" type="xsd:string" use="required"/>
+    <xsd:attribute name="xid" type="xsd:string" use="optional"/>
+    <xsd:attribute name="equiv-text" type="xsd:string" use="optional"/>
+    <xsd:anyAttribute namespace="##other" processContents="strict"/>
+  </xsd:attributeGroup>
+  <!-- XLIFF Structure -->
+  <xsd:element name="xliff">
+    <xsd:complexType>
+      <xsd:sequence maxOccurs="unbounded">
+        <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+        <xsd:element ref="xlf:file"/>
+      </xsd:sequence>
+      <xsd:attribute name="version" type="xlf:AttrType_Version" use="required"/>
+      <xsd:attribute ref="xml:lang" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="file">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element minOccurs="0" ref="xlf:header"/>
+        <xsd:element ref="xlf:body"/>
+      </xsd:sequence>
+      <xsd:attribute name="original" type="xsd:string" use="required"/>
+      <xsd:attribute name="source-language" type="xsd:language" use="required"/>
+      <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="required"/>
+      <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+      <xsd:attribute name="date" type="xsd:dateTime" use="optional"/>
+      <xsd:attribute ref="xml:space" use="optional"/>
+      <xsd:attribute name="category" type="xsd:string" use="optional"/>
+      <xsd:attribute name="target-language" type="xsd:language" use="optional"/>
+      <xsd:attribute name="product-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="product-version" type="xsd:string" use="optional"/>
+      <xsd:attribute name="build-num" type="xsd:string" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_group_id">
+      <xsd:selector xpath=".//xlf:group"/>
+      <xsd:field xpath="@id"/>
+    </xsd:unique>
+    <xsd:key name="K_unit_id">
+      <xsd:selector xpath=".//xlf:trans-unit|.//xlf:bin-unit"/>
+      <xsd:field xpath="@id"/>
+    </xsd:key>
+    <xsd:keyref name="KR_unit_id" refer="xlf:K_unit_id">
+      <xsd:selector xpath=".//bpt|.//ept|.//it|.//ph|.//g|.//x|.//bx|.//ex|.//sub"/>
+      <xsd:field xpath="@xid"/>
+    </xsd:keyref>
+    <xsd:key name="K_tool-id">
+      <xsd:selector xpath="xlf:header/xlf:tool"/>
+      <xsd:field xpath="@tool-id"/>
+    </xsd:key>
+    <xsd:keyref name="KR_file_tool-id" refer="xlf:K_tool-id">
+      <xsd:selector xpath="."/>
+      <xsd:field xpath="@tool-id"/>
+    </xsd:keyref>
+    <xsd:keyref name="KR_phase_tool-id" refer="xlf:K_tool-id">
+      <xsd:selector xpath="xlf:header/xlf:phase-group/xlf:phase"/>
+      <xsd:field xpath="@tool-id"/>
+    </xsd:keyref>
+    <xsd:keyref name="KR_alt-trans_tool-id" refer="xlf:K_tool-id">
+      <xsd:selector xpath=".//xlf:trans-unit/xlf:alt-trans"/>
+      <xsd:field xpath="@tool-id"/>
+    </xsd:keyref>
+    <xsd:key name="K_count-group_name">
+      <xsd:selector xpath=".//xlf:count-group"/>
+      <xsd:field xpath="@name"/>
+    </xsd:key>
+    <xsd:unique name="U_context-group_name">
+      <xsd:selector xpath=".//xlf:context-group"/>
+      <xsd:field xpath="@name"/>
+    </xsd:unique>
+    <xsd:key name="K_phase-name">
+      <xsd:selector xpath="xlf:header/xlf:phase-group/xlf:phase"/>
+      <xsd:field xpath="@phase-name"/>
+    </xsd:key>
+    <xsd:keyref name="KR_phase-name" refer="xlf:K_phase-name">
+      <xsd:selector xpath=".//xlf:count|.//xlf:trans-unit|.//xlf:target|.//bin-unit|.//bin-target"/>
+      <xsd:field xpath="@phase-name"/>
+    </xsd:keyref>
+    <xsd:unique name="U_uid">
+      <xsd:selector xpath=".//xlf:external-file"/>
+      <xsd:field xpath="@uid"/>
+    </xsd:unique>
+  </xsd:element>
+  <xsd:element name="header">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element minOccurs="0" name="skl" type="xlf:ElemType_ExternalReference"/>
+        <xsd:element minOccurs="0" ref="xlf:phase-group"/>
+        <xsd:choice maxOccurs="unbounded" minOccurs="0">
+          <xsd:element name="glossary" type="xlf:ElemType_ExternalReference"/>
+          <xsd:element name="reference" type="xlf:ElemType_ExternalReference"/>
+          <xsd:element ref="xlf:count-group"/>
+          <xsd:element ref="xlf:note"/>
+          <xsd:element ref="xlf:tool"/>
+        </xsd:choice>
+        <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="internal-file">
+    <xsd:complexType>
+      <xsd:simpleContent>
+        <xsd:extension base="xsd:string">
+          <xsd:attribute name="form" type="xsd:string"/>
+          <xsd:attribute name="crc" type="xsd:NMTOKEN"/>
+        </xsd:extension>
+      </xsd:simpleContent>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="external-file">
+    <xsd:complexType>
+      <xsd:attribute name="href" type="xsd:string" use="required"/>
+      <xsd:attribute name="crc" type="xsd:NMTOKEN"/>
+      <xsd:attribute name="uid" type="xsd:NMTOKEN"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="note">
+    <xsd:complexType>
+      <xsd:simpleContent>
+        <xsd:extension base="xsd:string">
+          <xsd:attribute ref="xml:lang" use="optional"/>
+          <xsd:attribute default="1" name="priority" type="xlf:AttrType_priority" use="optional"/>
+          <xsd:attribute name="from" type="xsd:string" use="optional"/>
+          <xsd:attribute default="general" name="annotates" type="xlf:AttrType_annotates" use="optional"/>
+        </xsd:extension>
+      </xsd:simpleContent>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="phase-group">
+    <xsd:complexType>
+      <xsd:sequence maxOccurs="unbounded">
+        <xsd:element ref="xlf:phase"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="phase">
+    <xsd:complexType>
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:note"/>
+      </xsd:sequence>
+      <xsd:attribute name="phase-name" type="xsd:string" use="required"/>
+      <xsd:attribute name="process-name" type="xsd:string" use="required"/>
+      <xsd:attribute name="company-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+      <xsd:attribute name="date" type="xsd:dateTime" use="optional"/>
+      <xsd:attribute name="job-id" type="xsd:string" use="optional"/>
+      <xsd:attribute name="contact-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="contact-email" type="xsd:string" use="optional"/>
+      <xsd:attribute name="contact-phone" type="xsd:string" use="optional"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="count-group">
+    <xsd:complexType>
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:count"/>
+      </xsd:sequence>
+      <xsd:attribute name="name" type="xsd:string" use="required"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="count">
+    <xsd:complexType>
+      <xsd:simpleContent>
+        <xsd:extension base="xsd:string">
+          <xsd:attribute name="count-type" type="xlf:AttrType_count-type" use="optional"/>
+          <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+          <xsd:attribute default="word" name="unit" type="xlf:AttrType_unit" use="optional"/>
+        </xsd:extension>
+      </xsd:simpleContent>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="context-group">
+    <xsd:complexType>
+      <xsd:sequence maxOccurs="unbounded">
+        <xsd:element ref="xlf:context"/>
+      </xsd:sequence>
+      <xsd:attribute name="name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="purpose" type="xlf:AttrType_purpose" use="optional"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="context">
+    <xsd:complexType>
+      <xsd:simpleContent>
+        <xsd:extension base="xsd:string">
+          <xsd:attribute name="context-type" type="xlf:AttrType_context-type" use="required"/>
+          <xsd:attribute default="no" name="match-mandatory" type="xlf:AttrType_YesNo" use="optional"/>
+          <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+        </xsd:extension>
+      </xsd:simpleContent>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="tool">
+    <xsd:complexType mixed="true">
+      <xsd:sequence>
+        <xsd:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+      <xsd:attribute name="tool-id" type="xsd:string" use="required"/>
+      <xsd:attribute name="tool-name" type="xsd:string" use="required"/>
+      <xsd:attribute name="tool-version" type="xsd:string" use="optional"/>
+      <xsd:attribute name="tool-company" type="xsd:string" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="body">
+    <xsd:complexType>
+      <xsd:choice maxOccurs="unbounded" minOccurs="0">
+        <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:group"/>
+        <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
+        <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:bin-unit"/>
+      </xsd:choice>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="group">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:sequence>
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:context-group"/>
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:count-group"/>
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:note"/>
+          <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+        </xsd:sequence>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:group"/>
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
+          <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:bin-unit"/>
+        </xsd:choice>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string" use="optional"/>
+      <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+      <xsd:attribute default="default" ref="xml:space" use="optional"/>
+      <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+      <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+      <xsd:attribute name="font" type="xsd:string" use="optional"/>
+      <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+      <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+      <xsd:attribute default="pixel" name="size-unit" type="xlf:AttrType_size-unit" use="optional"/>
+      <xsd:attribute name="maxwidth" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minwidth" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="maxheight" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minheight" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="maxbytes" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minbytes" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="charclass" type="xsd:string" use="optional"/>
+      <xsd:attribute default="no" name="merged-trans" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="trans-unit">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="xlf:source"/>
+        <xsd:element minOccurs="0" ref="xlf:seg-source"/>
+        <xsd:element minOccurs="0" ref="xlf:target"/>
+        <xsd:choice maxOccurs="unbounded" minOccurs="0">
+          <xsd:element ref="xlf:context-group"/>
+          <xsd:element ref="xlf:count-group"/>
+          <xsd:element ref="xlf:note"/>
+          <xsd:element ref="xlf:alt-trans"/>
+        </xsd:choice>
+        <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string" use="required"/>
+      <xsd:attribute name="approved" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+      <xsd:attribute default="default" ref="xml:space" use="optional"/>
+      <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+      <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+      <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+      <xsd:attribute name="font" type="xsd:string" use="optional"/>
+      <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+      <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute default="pixel" name="size-unit" type="xlf:AttrType_size-unit" use="optional"/>
+      <xsd:attribute name="maxwidth" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minwidth" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="maxheight" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minheight" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="maxbytes" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="minbytes" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="charclass" type="xsd:string" use="optional"/>
+      <xsd:attribute default="yes" name="merged-trans" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_tu_segsrc_mid">
+      <xsd:selector xpath="./xlf:seg-source/xlf:mrk"/>
+      <xsd:field xpath="@mid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_tu_segsrc_mid" refer="xlf:U_tu_segsrc_mid">
+      <xsd:selector xpath="./xlf:target/xlf:mrk|./xlf:alt-trans"/>
+      <xsd:field xpath="@mid"/>
+    </xsd:keyref>
+  </xsd:element>
+  <xsd:element name="source">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute ref="xml:lang" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_source_bpt_rid">
+      <xsd:selector xpath=".//xlf:bpt"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_source_ept_rid" refer="xlf:U_source_bpt_rid">
+      <xsd:selector xpath=".//xlf:ept"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+    <xsd:unique name="U_source_bx_rid">
+      <xsd:selector xpath=".//xlf:bx"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_source_ex_rid" refer="xlf:U_source_bx_rid">
+      <xsd:selector xpath=".//xlf:ex"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+  </xsd:element>
+  <xsd:element name="seg-source">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute ref="xml:lang" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_segsrc_bpt_rid">
+      <xsd:selector xpath=".//xlf:bpt"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_segsrc_ept_rid" refer="xlf:U_segsrc_bpt_rid">
+      <xsd:selector xpath=".//xlf:ept"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+    <xsd:unique name="U_segsrc_bx_rid">
+      <xsd:selector xpath=".//xlf:bx"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_segsrc_ex_rid" refer="xlf:U_segsrc_bx_rid">
+      <xsd:selector xpath=".//xlf:ex"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+  </xsd:element>
+  <xsd:element name="target">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute name="state" type="xlf:AttrType_state" use="optional"/>
+      <xsd:attribute name="state-qualifier" type="xlf:AttrType_state-qualifier" use="optional"/>
+      <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute ref="xml:lang" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+      <xsd:attribute name="font" type="xsd:string" use="optional"/>
+      <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+      <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute default="yes" name="equiv-trans" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_target_bpt_rid">
+      <xsd:selector xpath=".//xlf:bpt"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_target_ept_rid" refer="xlf:U_target_bpt_rid">
+      <xsd:selector xpath=".//xlf:ept"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+    <xsd:unique name="U_target_bx_rid">
+      <xsd:selector xpath=".//xlf:bx"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_target_ex_rid" refer="xlf:U_target_bx_rid">
+      <xsd:selector xpath=".//xlf:ex"/>
+      <xsd:field xpath="@rid"/>
+    </xsd:keyref>
+  </xsd:element>
+  <xsd:element name="alt-trans">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element minOccurs="0" ref="xlf:source"/>
+        <xsd:element minOccurs="0" ref="xlf:seg-source"/>
+        <xsd:element maxOccurs="1" ref="xlf:target"/>
+        <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:context-group"/>
+        <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:note"/>
+        <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+      </xsd:sequence>
+      <xsd:attribute name="match-quality" type="xsd:string" use="optional"/>
+      <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute ref="xml:lang" use="optional"/>
+      <xsd:attribute name="origin" type="xsd:string" use="optional"/>
+      <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+      <xsd:attribute default="default" ref="xml:space" use="optional"/>
+      <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+      <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+      <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+      <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+      <xsd:attribute name="mid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+      <xsd:attribute name="font" type="xsd:string" use="optional"/>
+      <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+      <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute default="proposal" name="alttranstype" type="xlf:AttrType_alttranstype" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+    <xsd:unique name="U_at_segsrc_mid">
+      <xsd:selector xpath="./xlf:seg-source/xlf:mrk"/>
+      <xsd:field xpath="@mid"/>
+    </xsd:unique>
+    <xsd:keyref name="KR_at_segsrc_mid" refer="xlf:U_at_segsrc_mid">
+      <xsd:selector xpath="./xlf:target/xlf:mrk"/>
+      <xsd:field xpath="@mid"/>
+    </xsd:keyref>
+  </xsd:element>
+  <xsd:element name="bin-unit">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="xlf:bin-source"/>
+        <xsd:element minOccurs="0" ref="xlf:bin-target"/>
+        <xsd:choice maxOccurs="unbounded" minOccurs="0">
+          <xsd:element ref="xlf:context-group"/>
+          <xsd:element ref="xlf:count-group"/>
+          <xsd:element ref="xlf:note"/>
+          <xsd:element ref="xlf:trans-unit"/>
+        </xsd:choice>
+        <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="strict"/>
+      </xsd:sequence>
+      <xsd:attribute name="id" type="xsd:string" use="required"/>
+      <xsd:attribute name="mime-type" type="xlf:mime-typeValueList" use="required"/>
+      <xsd:attribute name="approved" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+      <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="bin-source">
+    <xsd:complexType>
+      <xsd:choice>
+        <xsd:element ref="xlf:internal-file"/>
+        <xsd:element ref="xlf:external-file"/>
+      </xsd:choice>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="bin-target">
+    <xsd:complexType>
+      <xsd:choice>
+        <xsd:element ref="xlf:internal-file"/>
+        <xsd:element ref="xlf:external-file"/>
+      </xsd:choice>
+      <xsd:attribute name="mime-type" type="xlf:mime-typeValueList" use="optional"/>
+      <xsd:attribute name="state" type="xlf:AttrType_state" use="optional"/>
+      <xsd:attribute name="state-qualifier" type="xlf:AttrType_state-qualifier" use="optional"/>
+      <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+      <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+  <!-- Element for inline codes -->
+  <xsd:element name="g">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+      <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="x">
+    <xsd:complexType>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlinePlaceholders" use="optional"/>
+      <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="bx">
+    <xsd:complexType>
+      <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+      <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="ex">
+    <xsd:complexType>
+      <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="ph">
+    <xsd:complexType mixed="true">
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:sub"/>
+      </xsd:sequence>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlinePlaceholders" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+      <xsd:attribute name="assoc" type="xlf:AttrType_assoc" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="bpt">
+    <xsd:complexType mixed="true">
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:sub"/>
+      </xsd:sequence>
+      <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="ept">
+    <xsd:complexType mixed="true">
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:sub"/>
+      </xsd:sequence>
+      <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="it">
+    <xsd:complexType mixed="true">
+      <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+        <xsd:element ref="xlf:sub"/>
+      </xsd:sequence>
+      <xsd:attribute name="pos" type="xlf:AttrType_Position" use="required"/>
+      <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+      <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+      <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="sub">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+      <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+      <xsd:attribute name="xid" type="xsd:string" use="optional"/>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="mrk">
+    <xsd:complexType mixed="true">
+      <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+      <xsd:attribute name="mtype" type="xlf:AttrType_mtype" use="required"/>
+      <xsd:attribute name="mid" type="xsd:NMTOKEN" use="optional"/>
+      <xsd:attribute name="comment" type="xsd:string" use="optional"/>
+      <xsd:anyAttribute namespace="##other" processContents="strict"/>
+    </xsd:complexType>
+  </xsd:element>
+</xsd:schema>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-2.0.xsd b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-2.0.xsd
new file mode 100644
index 0000000..963232f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xliff-core-2.0.xsd
@@ -0,0 +1,411 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    XLIFF Version 2.0
+    OASIS Standard
+    05 August 2014
+    Copyright (c) OASIS Open 2014. All rights reserved.
+    Source: http://docs.oasis-open.org/xliff/xliff-core/v2.0/os/schemas/
+     -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    elementFormDefault="qualified"
+    xmlns:xlf="urn:oasis:names:tc:xliff:document:2.0"
+    targetNamespace="urn:oasis:names:tc:xliff:document:2.0">
+
+  <!-- Import -->
+
+  <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+      schemaLocation="informativeCopiesOf3rdPartySchemas/w3c/xml.xsd"/>
+
+  <!-- Element Group -->
+
+  <xs:group name="inline">
+    <xs:choice>
+      <xs:element ref="xlf:cp"/>
+      <xs:element ref="xlf:ph"/>
+      <xs:element ref="xlf:pc"/>
+      <xs:element ref="xlf:sc"/>
+      <xs:element ref="xlf:ec"/>
+      <xs:element ref="xlf:mrk"/>
+      <xs:element ref="xlf:sm"/>
+      <xs:element ref="xlf:em"/>
+    </xs:choice>
+  </xs:group>
+
+  <!-- Attribute Types -->
+
+  <xs:simpleType name="yesNo">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="yes"/>
+      <xs:enumeration value="no"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="yesNoFirstNo">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="yes"/>
+      <xs:enumeration value="firstNo"/>
+      <xs:enumeration value="no"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="dirValue">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="ltr"/>
+      <xs:enumeration value="rtl"/>
+      <xs:enumeration value="auto"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="appliesTo">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="source"/>
+      <xs:enumeration value="target"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="userDefinedValue">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="[^\s:]+:[^\s:]+"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="attrType_type">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="fmt"/>
+      <xs:enumeration value="ui"/>
+      <xs:enumeration value="quote"/>
+      <xs:enumeration value="link"/>
+      <xs:enumeration value="image"/>
+      <xs:enumeration value="other"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="typeForMrkValues">
+    <xs:restriction base="xs:NMTOKEN">
+      <xs:enumeration value="generic"/>
+      <xs:enumeration value="comment"/>
+      <xs:enumeration value="term"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="attrType_typeForMrk">
+    <xs:union memberTypes="xlf:typeForMrkValues xlf:userDefinedValue"/>
+  </xs:simpleType>
+
+  <xs:simpleType name="priorityValue">
+    <xs:restriction base="xs:positiveInteger">
+      <xs:minInclusive value="1"/>
+      <xs:maxInclusive value="10"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="stateType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="initial"/>
+      <xs:enumeration value="translated"/>
+      <xs:enumeration value="reviewed"/>
+      <xs:enumeration value="final"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <!-- Structural Elements -->
+
+  <xs:element name="xliff">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="1" maxOccurs="unbounded" ref="xlf:file"/>
+      </xs:sequence>
+      <xs:attribute name="version" use="required"/>
+      <xs:attribute name="srcLang" use="required"/>
+      <xs:attribute name="trgLang" use="optional"/>
+      <xs:attribute ref="xml:space" use="optional" default="default"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="file">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:skeleton"/>
+        <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other"
+            processContents="lax"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:notes"/>
+        <xs:choice minOccurs="1" maxOccurs="unbounded">
+          <xs:element ref="xlf:unit"/>
+          <xs:element ref="xlf:group"/>
+        </xs:choice>
+      </xs:sequence>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="canResegment" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="original" use="optional"/>
+      <xs:attribute name="translate" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="srcDir" use="optional" type="xlf:dirValue" default="auto"/>
+      <xs:attribute name="trgDir" use="optional" type="xlf:dirValue" default="auto"/>
+      <xs:attribute ref="xml:space" use="optional"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="skeleton">
+    <xs:complexType mixed="true">
+      <xs:sequence>
+        <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other"
+            processContents="lax"/>
+      </xs:sequence>
+      <xs:attribute name="href" use="optional"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="group">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other"
+            processContents="lax"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:notes"/>
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <xs:element ref="xlf:unit"/>
+          <xs:element ref="xlf:group"/>
+        </xs:choice>
+      </xs:sequence>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="name" use="optional"/>
+      <xs:attribute name="canResegment" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="translate" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="srcDir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute name="trgDir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute name="type" use="optional" type="xlf:userDefinedValue"/>
+      <xs:attribute ref="xml:space" use="optional"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="unit">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other"
+            processContents="lax"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:notes"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:originalData"/>
+        <xs:choice minOccurs="1" maxOccurs="unbounded">
+          <xs:element ref="xlf:segment"/>
+          <xs:element ref="xlf:ignorable"/>
+        </xs:choice>
+      </xs:sequence>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="name" use="optional"/>
+      <xs:attribute name="canResegment" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="translate" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="srcDir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute name="trgDir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute ref="xml:space" use="optional"/>
+      <xs:attribute name="type" use="optional" type="xlf:userDefinedValue"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="segment">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="1" maxOccurs="1" ref="xlf:source"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:target"/>
+      </xs:sequence>
+      <xs:attribute name="id" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="canResegment" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="state" use="optional" type="xlf:stateType" default="initial"/>
+      <xs:attribute name="subState" use="optional"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="ignorable">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="1" maxOccurs="1" ref="xlf:source"/>
+        <xs:element minOccurs="0" maxOccurs="1" ref="xlf:target"/>
+      </xs:sequence>
+      <xs:attribute name="id" use="optional" type="xs:NMTOKEN"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="notes">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="1" maxOccurs="unbounded" ref="xlf:note"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="note">
+    <xs:complexType mixed="true">
+      <xs:attribute name="id" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="appliesTo" use="optional" type="xlf:appliesTo"/>
+      <xs:attribute name="category" use="optional"/>
+      <xs:attribute name="priority" use="optional" type="xlf:priorityValue" default="1"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="originalData">
+    <xs:complexType mixed="false">
+      <xs:sequence>
+        <xs:element minOccurs="1" maxOccurs="unbounded" ref="xlf:data"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="data">
+    <xs:complexType mixed="true">
+      <xs:sequence>
+        <xs:element minOccurs="0" maxOccurs="unbounded" ref="xlf:cp"/>
+      </xs:sequence>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="dir" use="optional" type="xlf:dirValue" default="auto"/>
+      <xs:attribute ref="xml:space" use="optional" fixed="preserve"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="source">
+    <xs:complexType mixed="true">
+      <xs:group ref="xlf:inline" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:attribute ref="xml:lang" use="optional"/>
+      <xs:attribute ref="xml:space" use="optional"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="target">
+    <xs:complexType mixed="true">
+      <xs:group ref="xlf:inline" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:attribute ref="xml:lang" use="optional"/>
+      <xs:attribute ref="xml:space" use="optional"/>
+      <xs:attribute name="order" use="optional" type="xs:positiveInteger"/>
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Inline Elements -->
+
+  <xs:element name="cp">
+    <!-- Code Point -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="hex" use="required" type="xs:hexBinary"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="ph">
+    <!-- Placeholder -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="canCopy" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canDelete" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canReorder" use="optional" type="xlf:yesNoFirstNo" default="yes"/>
+      <xs:attribute name="copyOf" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="disp" use="optional"/>
+      <xs:attribute name="equiv" use="optional"/>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="dataRef" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="subFlows" use="optional" type="xs:NMTOKENS"/>
+      <xs:attribute name="subType" use="optional" type="xlf:userDefinedValue"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_type"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="pc">
+    <!-- Paired Code -->
+    <xs:complexType mixed="true">
+      <xs:group ref="xlf:inline" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:attribute name="canCopy" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canDelete" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canOverlap" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="canReorder" use="optional" type="xlf:yesNoFirstNo" default="yes"/>
+      <xs:attribute name="copyOf" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dispEnd" use="optional"/>
+      <xs:attribute name="dispStart" use="optional"/>
+      <xs:attribute name="equivEnd" use="optional"/>
+      <xs:attribute name="equivStart" use="optional"/>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="dataRefEnd" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dataRefStart" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="subFlowsEnd" use="optional" type="xs:NMTOKENS"/>
+      <xs:attribute name="subFlowsStart" use="optional" type="xs:NMTOKENS"/>
+      <xs:attribute name="subType" use="optional" type="xlf:userDefinedValue"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_type"/>
+      <xs:attribute name="dir" use="optional" type="xlf:dirValue"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="sc">
+    <!-- Start Code -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="canCopy" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canDelete" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canOverlap" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canReorder" use="optional" type="xlf:yesNoFirstNo" default="yes"/>
+      <xs:attribute name="copyOf" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dataRef" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute name="disp" use="optional"/>
+      <xs:attribute name="equiv" use="optional"/>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="isolated" use="optional" type="xlf:yesNo" default="no"/>
+      <xs:attribute name="subFlows" use="optional" type="xs:NMTOKENS"/>
+      <xs:attribute name="subType" use="optional" type="xlf:userDefinedValue"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_type"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="ec">
+    <!-- End Code -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="canCopy" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canDelete" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canOverlap" use="optional" type="xlf:yesNo" default="yes"/>
+      <xs:attribute name="canReorder" use="optional" type="xlf:yesNoFirstNo" default="yes"/>
+      <xs:attribute name="copyOf" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dataRef" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="dir" use="optional" type="xlf:dirValue"/>
+      <xs:attribute name="disp" use="optional"/>
+      <xs:attribute name="equiv" use="optional"/>
+      <xs:attribute name="id" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="isolated" use="optional" type="xlf:yesNo" default="no"/>
+      <xs:attribute name="startRef" use="optional" type="xs:NMTOKEN"/>
+      <xs:attribute name="subFlows" use="optional" type="xs:NMTOKENS"/>
+      <xs:attribute name="subType" use="optional" type="xlf:userDefinedValue"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_type"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="mrk">
+    <!-- Annotation Marker -->
+    <xs:complexType mixed="true">
+      <xs:group ref="xlf:inline" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="translate" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_typeForMrk"/>
+      <xs:attribute name="ref" use="optional" type="xs:anyURI"/>
+      <xs:attribute name="value" use="optional"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="sm">
+    <!-- Start Annotation Marker -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="id" use="required" type="xs:NMTOKEN"/>
+      <xs:attribute name="translate" use="optional" type="xlf:yesNo"/>
+      <xs:attribute name="type" use="optional" type="xlf:attrType_typeForMrk"/>
+      <xs:attribute name="ref" use="optional" type="xs:anyURI"/>
+      <xs:attribute name="value" use="optional"/>
+      <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="em">
+    <!-- End Annotation Marker -->
+    <xs:complexType mixed="false">
+      <xs:attribute name="startRef" use="required" type="xs:NMTOKEN"/>
+    </xs:complexType>
+  </xs:element>
+
+</xs:schema>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xml.xsd b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xml.xsd
new file mode 100644
index 0000000..a46162a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Resources/schemas/xml.xsd
@@ -0,0 +1,309 @@
+<?xml version='1.0'?>
+<?xml-stylesheet href="../2008/09/xsd.xsl" type="text/xsl"?>
+<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" 
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  xmlns ="http://www.w3.org/1999/xhtml"
+  xml:lang="en">
+
+ <xs:annotation>
+  <xs:documentation>
+   <div>
+    <h1>About the XML namespace</h1>
+
+    <div class="bodytext">
+     <p>
+
+      This schema document describes the XML namespace, in a form
+      suitable for import by other schema documents.
+     </p>
+     <p>
+      See <a href="http://www.w3.org/XML/1998/namespace.html">
+      http://www.w3.org/XML/1998/namespace.html</a> and
+      <a href="http://www.w3.org/TR/REC-xml">
+      http://www.w3.org/TR/REC-xml</a> for information 
+      about this namespace.
+     </p>
+
+     <p>
+      Note that local names in this namespace are intended to be
+      defined only by the World Wide Web Consortium or its subgroups.
+      The names currently defined in this namespace are listed below.
+      They should not be used with conflicting semantics by any Working
+      Group, specification, or document instance.
+     </p>
+     <p>   
+      See further below in this document for more information about <a
+      href="#usage">how to refer to this schema document from your own
+      XSD schema documents</a> and about <a href="#nsversioning">the
+      namespace-versioning policy governing this schema document</a>.
+     </p>
+    </div>
+   </div>
+
+  </xs:documentation>
+ </xs:annotation>
+
+ <xs:attribute name="lang">
+  <xs:annotation>
+   <xs:documentation>
+    <div>
+     
+      <h3>lang (as an attribute name)</h3>
+      <p>
+
+       denotes an attribute whose value
+       is a language code for the natural language of the content of
+       any element; its value is inherited.  This name is reserved
+       by virtue of its definition in the XML specification.</p>
+     
+    </div>
+    <div>
+     <h4>Notes</h4>
+     <p>
+      Attempting to install the relevant ISO 2- and 3-letter
+      codes as the enumerated possible values is probably never
+      going to be a realistic possibility.  
+     </p>
+     <p>
+
+      See BCP 47 at <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
+       http://www.rfc-editor.org/rfc/bcp/bcp47.txt</a>
+      and the IANA language subtag registry at
+      <a href="http://www.iana.org/assignments/language-subtag-registry">
+       http://www.iana.org/assignments/language-subtag-registry</a>
+      for further information.
+     </p>
+     <p>
+
+      The union allows for the 'un-declaration' of xml:lang with
+      the empty string.
+     </p>
+    </div>
+   </xs:documentation>
+  </xs:annotation>
+  <xs:simpleType>
+   <xs:union memberTypes="xs:language">
+    <xs:simpleType>    
+     <xs:restriction base="xs:string">
+      <xs:enumeration value=""/>
+
+     </xs:restriction>
+    </xs:simpleType>
+   </xs:union>
+  </xs:simpleType>
+ </xs:attribute>
+
+ <xs:attribute name="space">
+  <xs:annotation>
+   <xs:documentation>
+
+    <div>
+     
+      <h3>space (as an attribute name)</h3>
+      <p>
+       denotes an attribute whose
+       value is a keyword indicating what whitespace processing
+       discipline is intended for the content of the element; its
+       value is inherited.  This name is reserved by virtue of its
+       definition in the XML specification.</p>
+     
+    </div>
+   </xs:documentation>
+  </xs:annotation>
+  <xs:simpleType>
+
+   <xs:restriction base="xs:NCName">
+    <xs:enumeration value="default"/>
+    <xs:enumeration value="preserve"/>
+   </xs:restriction>
+  </xs:simpleType>
+ </xs:attribute>
+ 
+ <xs:attribute name="base" type="xs:anyURI"> <xs:annotation>
+   <xs:documentation>
+
+    <div>
+     
+      <h3>base (as an attribute name)</h3>
+      <p>
+       denotes an attribute whose value
+       provides a URI to be used as the base for interpreting any
+       relative URIs in the scope of the element on which it
+       appears; its value is inherited.  This name is reserved
+       by virtue of its definition in the XML Base specification.</p>
+     
+     <p>
+      See <a
+      href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a>
+      for information about this attribute.
+     </p>
+
+    </div>
+   </xs:documentation>
+  </xs:annotation>
+ </xs:attribute>
+ 
+ <xs:attribute name="id" type="xs:ID">
+  <xs:annotation>
+   <xs:documentation>
+    <div>
+     
+      <h3>id (as an attribute name)</h3> 
+      <p>
+
+       denotes an attribute whose value
+       should be interpreted as if declared to be of type ID.
+       This name is reserved by virtue of its definition in the
+       xml:id specification.</p>
+     
+     <p>
+      See <a
+      href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a>
+      for information about this attribute.
+     </p>
+    </div>
+   </xs:documentation>
+  </xs:annotation>
+
+ </xs:attribute>
+
+ <xs:attributeGroup name="specialAttrs">
+  <xs:attribute ref="xml:base"/>
+  <xs:attribute ref="xml:lang"/>
+  <xs:attribute ref="xml:space"/>
+  <xs:attribute ref="xml:id"/>
+ </xs:attributeGroup>
+
+ <xs:annotation>
+
+  <xs:documentation>
+   <div>
+   
+    <h3>Father (in any context at all)</h3> 
+
+    <div class="bodytext">
+     <p>
+      denotes Jon Bosak, the chair of 
+      the original XML Working Group.  This name is reserved by 
+      the following decision of the W3C XML Plenary and 
+      XML Coordination groups:
+     </p>
+     <blockquote>
+       <p>
+
+	In appreciation for his vision, leadership and
+	dedication the W3C XML Plenary on this 10th day of
+	February, 2000, reserves for Jon Bosak in perpetuity
+	the XML name "xml:Father".
+       </p>
+     </blockquote>
+    </div>
+   </div>
+  </xs:documentation>
+ </xs:annotation>
+
+ <xs:annotation>
+  <xs:documentation>
+
+   <div xml:id="usage" id="usage">
+    <h2><a name="usage">About this schema document</a></h2>
+
+    <div class="bodytext">
+     <p>
+      This schema defines attributes and an attribute group suitable
+      for use by schemas wishing to allow <code>xml:base</code>,
+      <code>xml:lang</code>, <code>xml:space</code> or
+      <code>xml:id</code> attributes on elements they define.
+     </p>
+
+     <p>
+      To enable this, such a schema must import this schema for
+      the XML namespace, e.g. as follows:
+     </p>
+     <pre>
+          &lt;schema.. .>
+          .. .
+           &lt;import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+     </pre>
+     <p>
+      or
+     </p>
+     <pre>
+
+           &lt;import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
+     </pre>
+     <p>
+      Subsequently, qualified reference to any of the attributes or the
+      group defined below will have the desired effect, e.g.
+     </p>
+     <pre>
+          &lt;type.. .>
+          .. .
+           &lt;attributeGroup ref="xml:specialAttrs"/>
+     </pre>
+     <p>
+      will define a type which will schema-validate an instance element
+      with any of those attributes.
+     </p>
+
+    </div>
+   </div>
+  </xs:documentation>
+ </xs:annotation>
+
+ <xs:annotation>
+  <xs:documentation>
+   <div id="nsversioning" xml:id="nsversioning">
+    <h2><a name="nsversioning">Versioning policy for this schema document</a></h2>
+
+    <div class="bodytext">
+     <p>
+      In keeping with the XML Schema WG's standard versioning
+      policy, this schema document will persist at
+      <a href="http://www.w3.org/2009/01/xml.xsd">
+       http://www.w3.org/2009/01/xml.xsd</a>.
+     </p>
+     <p>
+      At the date of issue it can also be found at
+      <a href="http://www.w3.org/2001/xml.xsd">
+       http://www.w3.org/2001/xml.xsd</a>.
+     </p>
+
+     <p>
+      The schema document at that URI may however change in the future,
+      in order to remain compatible with the latest version of XML
+      Schema itself, or with the XML namespace itself.  In other words,
+      if the XML Schema or XML namespaces change, the version of this
+      document at <a href="http://www.w3.org/2001/xml.xsd">
+       http://www.w3.org/2001/xml.xsd 
+      </a> 
+      will change accordingly; the version at 
+      <a href="http://www.w3.org/2009/01/xml.xsd">
+       http://www.w3.org/2009/01/xml.xsd 
+      </a> 
+      will not change.
+     </p>
+     <p>
+
+      Previous dated (and unchanging) versions of this schema 
+      document are at:
+     </p>
+     <ul>
+      <li><a href="http://www.w3.org/2009/01/xml.xsd">
+	http://www.w3.org/2009/01/xml.xsd</a></li>
+      <li><a href="http://www.w3.org/2007/08/xml.xsd">
+	http://www.w3.org/2007/08/xml.xsd</a></li>
+      <li><a href="http://www.w3.org/2004/10/xml.xsd">
+
+	http://www.w3.org/2004/10/xml.xsd</a></li>
+      <li><a href="http://www.w3.org/2001/03/xml.xsd">
+	http://www.w3.org/2001/03/xml.xsd</a></li>
+     </ul>
+    </div>
+   </div>
+  </xs:documentation>
+ </xs:annotation>
+
+</xs:schema>
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderFactoryTestCase.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderFactoryTestCase.php
new file mode 100644
index 0000000..6d5f4b7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderFactoryTestCase.php
@@ -0,0 +1,147 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Test;
+
+use PHPUnit\Framework\TestCase;
+use Psr\Log\LoggerInterface;
+use Symfony\Component\HttpClient\MockHttpClient;
+use Symfony\Component\Translation\Dumper\XliffFileDumper;
+use Symfony\Component\Translation\Exception\IncompleteDsnException;
+use Symfony\Component\Translation\Exception\UnsupportedSchemeException;
+use Symfony\Component\Translation\Loader\LoaderInterface;
+use Symfony\Component\Translation\Provider\Dsn;
+use Symfony\Component\Translation\Provider\ProviderFactoryInterface;
+use Symfony\Contracts\HttpClient\HttpClientInterface;
+
+/**
+ * A test case to ease testing a translation provider factory.
+ *
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @internal
+ */
+abstract class ProviderFactoryTestCase extends TestCase
+{
+    protected $client;
+    protected $logger;
+    protected $defaultLocale;
+    protected $loader;
+    protected $xliffFileDumper;
+
+    abstract public function createFactory(): ProviderFactoryInterface;
+
+    /**
+     * @return iterable<array{0: bool, 1: string}>
+     */
+    abstract public function supportsProvider(): iterable;
+
+    /**
+     * @return iterable<array{0: string, 1: string, 2: TransportInterface}>
+     */
+    abstract public function createProvider(): iterable;
+
+    /**
+     * @return iterable<array{0: string, 1: string|null}>
+     */
+    public function unsupportedSchemeProvider(): iterable
+    {
+        return [];
+    }
+
+    /**
+     * @return iterable<array{0: string, 1: string|null}>
+     */
+    public function incompleteDsnProvider(): iterable
+    {
+        return [];
+    }
+
+    /**
+     * @dataProvider supportsProvider
+     */
+    public function testSupports(bool $expected, string $dsn)
+    {
+        $factory = $this->createFactory();
+
+        $this->assertSame($expected, $factory->supports(new Dsn($dsn)));
+    }
+
+    /**
+     * @dataProvider createProvider
+     */
+    public function testCreate(string $expected, string $dsn)
+    {
+        $factory = $this->createFactory();
+        $provider = $factory->create(new Dsn($dsn));
+
+        $this->assertSame($expected, (string) $provider);
+    }
+
+    /**
+     * @dataProvider unsupportedSchemeProvider
+     */
+    public function testUnsupportedSchemeException(string $dsn, string $message = null)
+    {
+        $factory = $this->createFactory();
+
+        $dsn = new Dsn($dsn);
+
+        $this->expectException(UnsupportedSchemeException::class);
+        if (null !== $message) {
+            $this->expectExceptionMessage($message);
+        }
+
+        $factory->create($dsn);
+    }
+
+    /**
+     * @dataProvider incompleteDsnProvider
+     */
+    public function testIncompleteDsnException(string $dsn, string $message = null)
+    {
+        $factory = $this->createFactory();
+
+        $dsn = new Dsn($dsn);
+
+        $this->expectException(IncompleteDsnException::class);
+        if (null !== $message) {
+            $this->expectExceptionMessage($message);
+        }
+
+        $factory->create($dsn);
+    }
+
+    protected function getClient(): HttpClientInterface
+    {
+        return $this->client ?? $this->client = new MockHttpClient();
+    }
+
+    protected function getLogger(): LoggerInterface
+    {
+        return $this->logger ?? $this->logger = $this->createMock(LoggerInterface::class);
+    }
+
+    protected function getDefaultLocale(): string
+    {
+        return $this->defaultLocale ?? $this->defaultLocale = 'en';
+    }
+
+    protected function getLoader(): LoaderInterface
+    {
+        return $this->loader ?? $this->loader = $this->createMock(LoaderInterface::class);
+    }
+
+    protected function getXliffFileDumper(): XliffFileDumper
+    {
+        return $this->xliffFileDumper ?? $this->xliffFileDumper = $this->createMock(XliffFileDumper::class);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderTestCase.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderTestCase.php
new file mode 100644
index 0000000..238fd96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Test/ProviderTestCase.php
@@ -0,0 +1,86 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Test;
+
+use PHPUnit\Framework\MockObject\MockObject;
+use PHPUnit\Framework\TestCase;
+use Psr\Log\LoggerInterface;
+use Symfony\Component\HttpClient\MockHttpClient;
+use Symfony\Component\Translation\Dumper\XliffFileDumper;
+use Symfony\Component\Translation\Loader\LoaderInterface;
+use Symfony\Component\Translation\Provider\ProviderInterface;
+use Symfony\Contracts\HttpClient\HttpClientInterface;
+
+/**
+ * A test case to ease testing a translation provider.
+ *
+ * @author Mathieu Santostefano <msantostefano@protonmail.com>
+ *
+ * @internal
+ */
+abstract class ProviderTestCase extends TestCase
+{
+    protected $client;
+    protected $logger;
+    protected $defaultLocale;
+    protected $loader;
+    protected $xliffFileDumper;
+
+    abstract public function createProvider(HttpClientInterface $client, LoaderInterface $loader, LoggerInterface $logger, string $defaultLocale, string $endpoint): ProviderInterface;
+
+    /**
+     * @return iterable<array{0: string, 1: ProviderInterface}>
+     */
+    abstract public function toStringProvider(): iterable;
+
+    /**
+     * @dataProvider toStringProvider
+     */
+    public function testToString(ProviderInterface $provider, string $expected)
+    {
+        $this->assertSame($expected, (string) $provider);
+    }
+
+    protected function getClient(): MockHttpClient
+    {
+        return $this->client ?? $this->client = new MockHttpClient();
+    }
+
+    /**
+     * @return LoaderInterface&MockObject
+     */
+    protected function getLoader(): LoaderInterface
+    {
+        return $this->loader ?? $this->loader = $this->createMock(LoaderInterface::class);
+    }
+
+    /**
+     * @return LoaderInterface&MockObject
+     */
+    protected function getLogger(): LoggerInterface
+    {
+        return $this->logger ?? $this->logger = $this->createMock(LoggerInterface::class);
+    }
+
+    protected function getDefaultLocale(): string
+    {
+        return $this->defaultLocale ?? $this->defaultLocale = 'en';
+    }
+
+    /**
+     * @return LoaderInterface&MockObject
+     */
+    protected function getXliffFileDumper(): XliffFileDumper
+    {
+        return $this->xliffFileDumper ?? $this->xliffFileDumper = $this->createMock(XliffFileDumper::class);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatableMessage.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatableMessage.php
new file mode 100644
index 0000000..82ae6d7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatableMessage.php
@@ -0,0 +1,57 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Contracts\Translation\TranslatableInterface;
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+/**
+ * @author Nate Wiebe <nate@northern.co>
+ */
+class TranslatableMessage implements TranslatableInterface
+{
+    private $message;
+    private $parameters;
+    private $domain;
+
+    public function __construct(string $message, array $parameters = [], string $domain = null)
+    {
+        $this->message = $message;
+        $this->parameters = $parameters;
+        $this->domain = $domain;
+    }
+
+    public function __toString(): string
+    {
+        return $this->getMessage();
+    }
+
+    public function getMessage(): string
+    {
+        return $this->message;
+    }
+
+    public function getParameters(): array
+    {
+        return $this->parameters;
+    }
+
+    public function getDomain(): ?string
+    {
+        return $this->domain;
+    }
+
+    public function trans(TranslatorInterface $translator, string $locale = null): string
+    {
+        return $translator->trans($this->getMessage(), $this->getParameters(), $this->getDomain(), $locale);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Translator.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Translator.php
new file mode 100644
index 0000000..9a63956
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Translator.php
@@ -0,0 +1,490 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\Config\ConfigCacheFactory;
+use Symfony\Component\Config\ConfigCacheFactoryInterface;
+use Symfony\Component\Config\ConfigCacheInterface;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\NotFoundResourceException;
+use Symfony\Component\Translation\Exception\RuntimeException;
+use Symfony\Component\Translation\Formatter\IntlFormatterInterface;
+use Symfony\Component\Translation\Formatter\MessageFormatter;
+use Symfony\Component\Translation\Formatter\MessageFormatterInterface;
+use Symfony\Component\Translation\Loader\LoaderInterface;
+use Symfony\Contracts\Translation\LocaleAwareInterface;
+use Symfony\Contracts\Translation\TranslatorInterface;
+
+// Help opcache.preload discover always-needed symbols
+class_exists(MessageCatalogue::class);
+
+/**
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class Translator implements TranslatorInterface, TranslatorBagInterface, LocaleAwareInterface
+{
+    /**
+     * @var MessageCatalogueInterface[]
+     */
+    protected $catalogues = [];
+
+    /**
+     * @var string
+     */
+    private $locale;
+
+    /**
+     * @var array
+     */
+    private $fallbackLocales = [];
+
+    /**
+     * @var LoaderInterface[]
+     */
+    private $loaders = [];
+
+    /**
+     * @var array
+     */
+    private $resources = [];
+
+    /**
+     * @var MessageFormatterInterface
+     */
+    private $formatter;
+
+    /**
+     * @var string
+     */
+    private $cacheDir;
+
+    /**
+     * @var bool
+     */
+    private $debug;
+
+    private $cacheVary;
+
+    /**
+     * @var ConfigCacheFactoryInterface|null
+     */
+    private $configCacheFactory;
+
+    /**
+     * @var array|null
+     */
+    private $parentLocales;
+
+    private $hasIntlFormatter;
+
+    /**
+     * @throws InvalidArgumentException If a locale contains invalid characters
+     */
+    public function __construct(string $locale, MessageFormatterInterface $formatter = null, string $cacheDir = null, bool $debug = false, array $cacheVary = [])
+    {
+        $this->setLocale($locale);
+
+        if (null === $formatter) {
+            $formatter = new MessageFormatter();
+        }
+
+        $this->formatter = $formatter;
+        $this->cacheDir = $cacheDir;
+        $this->debug = $debug;
+        $this->cacheVary = $cacheVary;
+        $this->hasIntlFormatter = $formatter instanceof IntlFormatterInterface;
+    }
+
+    public function setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory)
+    {
+        $this->configCacheFactory = $configCacheFactory;
+    }
+
+    /**
+     * Adds a Loader.
+     *
+     * @param string $format The name of the loader (@see addResource())
+     */
+    public function addLoader(string $format, LoaderInterface $loader)
+    {
+        $this->loaders[$format] = $loader;
+    }
+
+    /**
+     * Adds a Resource.
+     *
+     * @param string $format   The name of the loader (@see addLoader())
+     * @param mixed  $resource The resource name
+     *
+     * @throws InvalidArgumentException If the locale contains invalid characters
+     */
+    public function addResource(string $format, $resource, string $locale, string $domain = null)
+    {
+        if (null === $domain) {
+            $domain = 'messages';
+        }
+
+        $this->assertValidLocale($locale);
+        $locale ?: $locale = class_exists(\Locale::class) ? \Locale::getDefault() : 'en';
+
+        $this->resources[$locale][] = [$format, $resource, $domain];
+
+        if (\in_array($locale, $this->fallbackLocales)) {
+            $this->catalogues = [];
+        } else {
+            unset($this->catalogues[$locale]);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setLocale(string $locale)
+    {
+        $this->assertValidLocale($locale);
+        $this->locale = $locale;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLocale()
+    {
+        return $this->locale ?: (class_exists(\Locale::class) ? \Locale::getDefault() : 'en');
+    }
+
+    /**
+     * Sets the fallback locales.
+     *
+     * @throws InvalidArgumentException If a locale contains invalid characters
+     */
+    public function setFallbackLocales(array $locales)
+    {
+        // needed as the fallback locales are linked to the already loaded catalogues
+        $this->catalogues = [];
+
+        foreach ($locales as $locale) {
+            $this->assertValidLocale($locale);
+        }
+
+        $this->fallbackLocales = $this->cacheVary['fallback_locales'] = $locales;
+    }
+
+    /**
+     * Gets the fallback locales.
+     *
+     * @internal
+     */
+    public function getFallbackLocales(): array
+    {
+        return $this->fallbackLocales;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function trans(?string $id, array $parameters = [], string $domain = null, string $locale = null)
+    {
+        if (null === $id || '' === $id) {
+            return '';
+        }
+
+        if (null === $domain) {
+            $domain = 'messages';
+        }
+
+        $catalogue = $this->getCatalogue($locale);
+        $locale = $catalogue->getLocale();
+        while (!$catalogue->defines($id, $domain)) {
+            if ($cat = $catalogue->getFallbackCatalogue()) {
+                $catalogue = $cat;
+                $locale = $catalogue->getLocale();
+            } else {
+                break;
+            }
+        }
+
+        $len = \strlen(MessageCatalogue::INTL_DOMAIN_SUFFIX);
+        if ($this->hasIntlFormatter
+            && ($catalogue->defines($id, $domain.MessageCatalogue::INTL_DOMAIN_SUFFIX)
+            || (\strlen($domain) > $len && 0 === substr_compare($domain, MessageCatalogue::INTL_DOMAIN_SUFFIX, -$len, $len)))
+        ) {
+            return $this->formatter->formatIntl($catalogue->get($id, $domain), $locale, $parameters);
+        }
+
+        return $this->formatter->format($catalogue->get($id, $domain), $locale, $parameters);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogue(string $locale = null)
+    {
+        if (!$locale) {
+            $locale = $this->getLocale();
+        } else {
+            $this->assertValidLocale($locale);
+        }
+
+        if (!isset($this->catalogues[$locale])) {
+            $this->loadCatalogue($locale);
+        }
+
+        return $this->catalogues[$locale];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogues(): array
+    {
+        return array_values($this->catalogues);
+    }
+
+    /**
+     * Gets the loaders.
+     *
+     * @return array LoaderInterface[]
+     */
+    protected function getLoaders()
+    {
+        return $this->loaders;
+    }
+
+    protected function loadCatalogue(string $locale)
+    {
+        if (null === $this->cacheDir) {
+            $this->initializeCatalogue($locale);
+        } else {
+            $this->initializeCacheCatalogue($locale);
+        }
+    }
+
+    protected function initializeCatalogue(string $locale)
+    {
+        $this->assertValidLocale($locale);
+
+        try {
+            $this->doLoadCatalogue($locale);
+        } catch (NotFoundResourceException $e) {
+            if (!$this->computeFallbackLocales($locale)) {
+                throw $e;
+            }
+        }
+        $this->loadFallbackCatalogues($locale);
+    }
+
+    private function initializeCacheCatalogue(string $locale): void
+    {
+        if (isset($this->catalogues[$locale])) {
+            /* Catalogue already initialized. */
+            return;
+        }
+
+        $this->assertValidLocale($locale);
+        $cache = $this->getConfigCacheFactory()->cache($this->getCatalogueCachePath($locale),
+            function (ConfigCacheInterface $cache) use ($locale) {
+                $this->dumpCatalogue($locale, $cache);
+            }
+        );
+
+        if (isset($this->catalogues[$locale])) {
+            /* Catalogue has been initialized as it was written out to cache. */
+            return;
+        }
+
+        /* Read catalogue from cache. */
+        $this->catalogues[$locale] = include $cache->getPath();
+    }
+
+    private function dumpCatalogue(string $locale, ConfigCacheInterface $cache): void
+    {
+        $this->initializeCatalogue($locale);
+        $fallbackContent = $this->getFallbackContent($this->catalogues[$locale]);
+
+        $content = sprintf(<<<EOF
+<?php
+
+use Symfony\Component\Translation\MessageCatalogue;
+
+\$catalogue = new MessageCatalogue('%s', %s);
+
+%s
+return \$catalogue;
+
+EOF
+            ,
+            $locale,
+            var_export($this->getAllMessages($this->catalogues[$locale]), true),
+            $fallbackContent
+        );
+
+        $cache->write($content, $this->catalogues[$locale]->getResources());
+    }
+
+    private function getFallbackContent(MessageCatalogue $catalogue): string
+    {
+        $fallbackContent = '';
+        $current = '';
+        $replacementPattern = '/[^a-z0-9_]/i';
+        $fallbackCatalogue = $catalogue->getFallbackCatalogue();
+        while ($fallbackCatalogue) {
+            $fallback = $fallbackCatalogue->getLocale();
+            $fallbackSuffix = ucfirst(preg_replace($replacementPattern, '_', $fallback));
+            $currentSuffix = ucfirst(preg_replace($replacementPattern, '_', $current));
+
+            $fallbackContent .= sprintf(<<<'EOF'
+$catalogue%s = new MessageCatalogue('%s', %s);
+$catalogue%s->addFallbackCatalogue($catalogue%s);
+
+EOF
+                ,
+                $fallbackSuffix,
+                $fallback,
+                var_export($this->getAllMessages($fallbackCatalogue), true),
+                $currentSuffix,
+                $fallbackSuffix
+            );
+            $current = $fallbackCatalogue->getLocale();
+            $fallbackCatalogue = $fallbackCatalogue->getFallbackCatalogue();
+        }
+
+        return $fallbackContent;
+    }
+
+    private function getCatalogueCachePath(string $locale): string
+    {
+        return $this->cacheDir.'/catalogue.'.$locale.'.'.strtr(substr(base64_encode(hash('sha256', serialize($this->cacheVary), true)), 0, 7), '/', '_').'.php';
+    }
+
+    /**
+     * @internal
+     */
+    protected function doLoadCatalogue(string $locale): void
+    {
+        $this->catalogues[$locale] = new MessageCatalogue($locale);
+
+        if (isset($this->resources[$locale])) {
+            foreach ($this->resources[$locale] as $resource) {
+                if (!isset($this->loaders[$resource[0]])) {
+                    if (\is_string($resource[1])) {
+                        throw new RuntimeException(sprintf('No loader is registered for the "%s" format when loading the "%s" resource.', $resource[0], $resource[1]));
+                    }
+
+                    throw new RuntimeException(sprintf('No loader is registered for the "%s" format.', $resource[0]));
+                }
+                $this->catalogues[$locale]->addCatalogue($this->loaders[$resource[0]]->load($resource[1], $locale, $resource[2]));
+            }
+        }
+    }
+
+    private function loadFallbackCatalogues(string $locale): void
+    {
+        $current = $this->catalogues[$locale];
+
+        foreach ($this->computeFallbackLocales($locale) as $fallback) {
+            if (!isset($this->catalogues[$fallback])) {
+                $this->initializeCatalogue($fallback);
+            }
+
+            $fallbackCatalogue = new MessageCatalogue($fallback, $this->getAllMessages($this->catalogues[$fallback]));
+            foreach ($this->catalogues[$fallback]->getResources() as $resource) {
+                $fallbackCatalogue->addResource($resource);
+            }
+            $current->addFallbackCatalogue($fallbackCatalogue);
+            $current = $fallbackCatalogue;
+        }
+    }
+
+    protected function computeFallbackLocales(string $locale)
+    {
+        if (null === $this->parentLocales) {
+            $this->parentLocales = json_decode(file_get_contents(__DIR__.'/Resources/data/parents.json'), true);
+        }
+
+        $locales = [];
+        foreach ($this->fallbackLocales as $fallback) {
+            if ($fallback === $locale) {
+                continue;
+            }
+
+            $locales[] = $fallback;
+        }
+
+        while ($locale) {
+            $parent = $this->parentLocales[$locale] ?? null;
+
+            if ($parent) {
+                $locale = 'root' !== $parent ? $parent : null;
+            } elseif (\function_exists('locale_parse')) {
+                $localeSubTags = locale_parse($locale);
+                $locale = null;
+                if (1 < \count($localeSubTags)) {
+                    array_pop($localeSubTags);
+                    $locale = locale_compose($localeSubTags) ?: null;
+                }
+            } elseif ($i = strrpos($locale, '_') ?: strrpos($locale, '-')) {
+                $locale = substr($locale, 0, $i);
+            } else {
+                $locale = null;
+            }
+
+            if (null !== $locale) {
+                array_unshift($locales, $locale);
+            }
+        }
+
+        return array_unique($locales);
+    }
+
+    /**
+     * Asserts that the locale is valid, throws an Exception if not.
+     *
+     * @throws InvalidArgumentException If the locale contains invalid characters
+     */
+    protected function assertValidLocale(string $locale)
+    {
+        if (!preg_match('/^[a-z0-9@_\\.\\-]*$/i', (string) $locale)) {
+            throw new InvalidArgumentException(sprintf('Invalid "%s" locale.', $locale));
+        }
+    }
+
+    /**
+     * Provides the ConfigCache factory implementation, falling back to a
+     * default implementation if necessary.
+     */
+    private function getConfigCacheFactory(): ConfigCacheFactoryInterface
+    {
+        if (!$this->configCacheFactory) {
+            $this->configCacheFactory = new ConfigCacheFactory($this->debug);
+        }
+
+        return $this->configCacheFactory;
+    }
+
+    private function getAllMessages(MessageCatalogueInterface $catalogue): array
+    {
+        $allMessages = [];
+
+        foreach ($catalogue->all() as $domain => $messages) {
+            if ($intlMessages = $catalogue->all($domain.MessageCatalogue::INTL_DOMAIN_SUFFIX)) {
+                $allMessages[$domain.MessageCatalogue::INTL_DOMAIN_SUFFIX] = $intlMessages;
+                $messages = array_diff_key($messages, $intlMessages);
+            }
+            if ($messages) {
+                $allMessages[$domain] = $messages;
+            }
+        }
+
+        return $allMessages;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBag.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBag.php
new file mode 100644
index 0000000..c655578
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBag.php
@@ -0,0 +1,105 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\Translation\Catalogue\AbstractOperation;
+use Symfony\Component\Translation\Catalogue\TargetOperation;
+
+final class TranslatorBag implements TranslatorBagInterface
+{
+    /** @var MessageCatalogue[] */
+    private $catalogues = [];
+
+    public function addCatalogue(MessageCatalogue $catalogue): void
+    {
+        if (null !== $existingCatalogue = $this->getCatalogue($catalogue->getLocale())) {
+            $catalogue->addCatalogue($existingCatalogue);
+        }
+
+        $this->catalogues[$catalogue->getLocale()] = $catalogue;
+    }
+
+    public function addBag(TranslatorBagInterface $bag): void
+    {
+        foreach ($bag->getCatalogues() as $catalogue) {
+            $this->addCatalogue($catalogue);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogue(string $locale = null)
+    {
+        if (null === $locale || !isset($this->catalogues[$locale])) {
+            $this->catalogues[$locale] = new MessageCatalogue($locale);
+        }
+
+        return $this->catalogues[$locale];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getCatalogues(): array
+    {
+        return array_values($this->catalogues);
+    }
+
+    public function diff(TranslatorBagInterface $diffBag): self
+    {
+        $diff = new self();
+
+        foreach ($this->catalogues as $locale => $catalogue) {
+            if (null === $diffCatalogue = $diffBag->getCatalogue($locale)) {
+                $diff->addCatalogue($catalogue);
+
+                continue;
+            }
+
+            $operation = new TargetOperation($diffCatalogue, $catalogue);
+            $operation->moveMessagesToIntlDomainsIfPossible(AbstractOperation::NEW_BATCH);
+            $newCatalogue = new MessageCatalogue($locale);
+
+            foreach ($operation->getDomains() as $domain) {
+                $newCatalogue->add($operation->getNewMessages($domain), $domain);
+            }
+
+            $diff->addCatalogue($newCatalogue);
+        }
+
+        return $diff;
+    }
+
+    public function intersect(TranslatorBagInterface $intersectBag): self
+    {
+        $diff = new self();
+
+        foreach ($this->catalogues as $locale => $catalogue) {
+            if (null === $intersectCatalogue = $intersectBag->getCatalogue($locale)) {
+                continue;
+            }
+
+            $operation = new TargetOperation($catalogue, $intersectCatalogue);
+            $operation->moveMessagesToIntlDomainsIfPossible(AbstractOperation::OBSOLETE_BATCH);
+            $obsoleteCatalogue = new MessageCatalogue($locale);
+
+            foreach ($operation->getDomains() as $domain) {
+                $obsoleteCatalogue->add($operation->getObsoleteMessages($domain), $domain);
+            }
+
+            $diff->addCatalogue($obsoleteCatalogue);
+        }
+
+        return $diff;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBagInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBagInterface.php
new file mode 100644
index 0000000..4228977
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/TranslatorBagInterface.php
@@ -0,0 +1,35 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+
+/**
+ * TranslatorBagInterface.
+ *
+ * @method MessageCatalogueInterface[] getCatalogues() Returns all catalogues of the instance
+ *
+ * @author Abdellatif Ait boudad <a.aitboudad@gmail.com>
+ */
+interface TranslatorBagInterface
+{
+    /**
+     * Gets the catalogue by locale.
+     *
+     * @param string|null $locale The locale or null to use the default
+     *
+     * @return MessageCatalogueInterface
+     *
+     * @throws InvalidArgumentException If the locale contains invalid characters
+     */
+    public function getCatalogue(string $locale = null);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/ArrayConverter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/ArrayConverter.php
new file mode 100644
index 0000000..acfbfc3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/ArrayConverter.php
@@ -0,0 +1,99 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Util;
+
+/**
+ * ArrayConverter generates tree like structure from a message catalogue.
+ * e.g. this
+ *   'foo.bar1' => 'test1',
+ *   'foo.bar2' => 'test2'
+ * converts to follows:
+ *   foo:
+ *     bar1: test1
+ *     bar2: test2.
+ *
+ * @author Gennady Telegin <gtelegin@gmail.com>
+ */
+class ArrayConverter
+{
+    /**
+     * Converts linear messages array to tree-like array.
+     * For example this array('foo.bar' => 'value') will be converted to ['foo' => ['bar' => 'value']].
+     *
+     * @param array $messages Linear messages array
+     *
+     * @return array Tree-like messages array
+     */
+    public static function expandToTree(array $messages)
+    {
+        $tree = [];
+
+        foreach ($messages as $id => $value) {
+            $referenceToElement = &self::getElementByPath($tree, explode('.', $id));
+
+            $referenceToElement = $value;
+
+            unset($referenceToElement);
+        }
+
+        return $tree;
+    }
+
+    private static function &getElementByPath(array &$tree, array $parts)
+    {
+        $elem = &$tree;
+        $parentOfElem = null;
+
+        foreach ($parts as $i => $part) {
+            if (isset($elem[$part]) && \is_string($elem[$part])) {
+                /* Process next case:
+                 *    'foo': 'test1',
+                 *    'foo.bar': 'test2'
+                 *
+                 * $tree['foo'] was string before we found array {bar: test2}.
+                 *  Treat new element as string too, e.g. add $tree['foo.bar'] = 'test2';
+                 */
+                $elem = &$elem[implode('.', \array_slice($parts, $i))];
+                break;
+            }
+            $parentOfElem = &$elem;
+            $elem = &$elem[$part];
+        }
+
+        if ($elem && \is_array($elem) && $parentOfElem) {
+            /* Process next case:
+             *    'foo.bar': 'test1'
+             *    'foo': 'test2'
+             *
+             * $tree['foo'] was array = {bar: 'test1'} before we found string constant `foo`.
+             * Cancel treating $tree['foo'] as array and cancel back it expansion,
+             *  e.g. make it $tree['foo.bar'] = 'test1' again.
+             */
+            self::cancelExpand($parentOfElem, $part, $elem);
+        }
+
+        return $elem;
+    }
+
+    private static function cancelExpand(array &$tree, string $prefix, array $node)
+    {
+        $prefix .= '.';
+
+        foreach ($node as $id => $value) {
+            if (\is_string($value)) {
+                $tree[$prefix.$id] = $value;
+            } else {
+                self::cancelExpand($tree, $prefix.$id, $value);
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/XliffUtils.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/XliffUtils.php
new file mode 100644
index 0000000..e4373a7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Util/XliffUtils.php
@@ -0,0 +1,196 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Util;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\InvalidResourceException;
+
+/**
+ * Provides some utility methods for XLIFF translation files, such as validating
+ * their contents according to the XSD schema.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ */
+class XliffUtils
+{
+    /**
+     * Gets xliff file version based on the root "version" attribute.
+     *
+     * Defaults to 1.2 for backwards compatibility.
+     *
+     * @throws InvalidArgumentException
+     */
+    public static function getVersionNumber(\DOMDocument $dom): string
+    {
+        /** @var \DOMNode $xliff */
+        foreach ($dom->getElementsByTagName('xliff') as $xliff) {
+            $version = $xliff->attributes->getNamedItem('version');
+            if ($version) {
+                return $version->nodeValue;
+            }
+
+            $namespace = $xliff->attributes->getNamedItem('xmlns');
+            if ($namespace) {
+                if (0 !== substr_compare('urn:oasis:names:tc:xliff:document:', $namespace->nodeValue, 0, 34)) {
+                    throw new InvalidArgumentException(sprintf('Not a valid XLIFF namespace "%s".', $namespace));
+                }
+
+                return substr($namespace, 34);
+            }
+        }
+
+        // Falls back to v1.2
+        return '1.2';
+    }
+
+    /**
+     * Validates and parses the given file into a DOMDocument.
+     *
+     * @throws InvalidResourceException
+     */
+    public static function validateSchema(\DOMDocument $dom): array
+    {
+        $xliffVersion = static::getVersionNumber($dom);
+        $internalErrors = libxml_use_internal_errors(true);
+        if ($shouldEnable = self::shouldEnableEntityLoader()) {
+            $disableEntities = libxml_disable_entity_loader(false);
+        }
+        try {
+            $isValid = @$dom->schemaValidateSource(self::getSchema($xliffVersion));
+            if (!$isValid) {
+                return self::getXmlErrors($internalErrors);
+            }
+        } finally {
+            if ($shouldEnable) {
+                libxml_disable_entity_loader($disableEntities);
+            }
+        }
+
+        $dom->normalizeDocument();
+
+        libxml_clear_errors();
+        libxml_use_internal_errors($internalErrors);
+
+        return [];
+    }
+
+    private static function shouldEnableEntityLoader(): bool
+    {
+        // Version prior to 8.0 can be enabled without deprecation
+        if (\PHP_VERSION_ID < 80000) {
+            return true;
+        }
+
+        static $dom, $schema;
+        if (null === $dom) {
+            $dom = new \DOMDocument();
+            $dom->loadXML('<?xml version="1.0"?><test/>');
+
+            $tmpfile = tempnam(sys_get_temp_dir(), 'symfony');
+            register_shutdown_function(static function () use ($tmpfile) {
+                @unlink($tmpfile);
+            });
+            $schema = '<?xml version="1.0" encoding="utf-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <xsd:include schemaLocation="file:///'.str_replace('\\', '/', $tmpfile).'" />
+</xsd:schema>';
+            file_put_contents($tmpfile, '<?xml version="1.0" encoding="utf-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <xsd:element name="test" type="testType" />
+  <xsd:complexType name="testType"/>
+</xsd:schema>');
+        }
+
+        return !@$dom->schemaValidateSource($schema);
+    }
+
+    public static function getErrorsAsString(array $xmlErrors): string
+    {
+        $errorsAsString = '';
+
+        foreach ($xmlErrors as $error) {
+            $errorsAsString .= sprintf("[%s %s] %s (in %s - line %d, column %d)\n",
+                \LIBXML_ERR_WARNING === $error['level'] ? 'WARNING' : 'ERROR',
+                $error['code'],
+                $error['message'],
+                $error['file'],
+                $error['line'],
+                $error['column']
+            );
+        }
+
+        return $errorsAsString;
+    }
+
+    private static function getSchema(string $xliffVersion): string
+    {
+        if ('1.2' === $xliffVersion) {
+            $schemaSource = file_get_contents(__DIR__.'/../Resources/schemas/xliff-core-1.2-strict.xsd');
+            $xmlUri = 'http://www.w3.org/2001/xml.xsd';
+        } elseif ('2.0' === $xliffVersion) {
+            $schemaSource = file_get_contents(__DIR__.'/../Resources/schemas/xliff-core-2.0.xsd');
+            $xmlUri = 'informativeCopiesOf3rdPartySchemas/w3c/xml.xsd';
+        } else {
+            throw new InvalidArgumentException(sprintf('No support implemented for loading XLIFF version "%s".', $xliffVersion));
+        }
+
+        return self::fixXmlLocation($schemaSource, $xmlUri);
+    }
+
+    /**
+     * Internally changes the URI of a dependent xsd to be loaded locally.
+     */
+    private static function fixXmlLocation(string $schemaSource, string $xmlUri): string
+    {
+        $newPath = str_replace('\\', '/', __DIR__).'/../Resources/schemas/xml.xsd';
+        $parts = explode('/', $newPath);
+        $locationstart = 'file:///';
+        if (0 === stripos($newPath, 'phar://')) {
+            $tmpfile = tempnam(sys_get_temp_dir(), 'symfony');
+            if ($tmpfile) {
+                copy($newPath, $tmpfile);
+                $parts = explode('/', str_replace('\\', '/', $tmpfile));
+            } else {
+                array_shift($parts);
+                $locationstart = 'phar:///';
+            }
+        }
+
+        $drive = '\\' === \DIRECTORY_SEPARATOR ? array_shift($parts).'/' : '';
+        $newPath = $locationstart.$drive.implode('/', array_map('rawurlencode', $parts));
+
+        return str_replace($xmlUri, $newPath, $schemaSource);
+    }
+
+    /**
+     * Returns the XML errors of the internal XML parser.
+     */
+    private static function getXmlErrors(bool $internalErrors): array
+    {
+        $errors = [];
+        foreach (libxml_get_errors() as $error) {
+            $errors[] = [
+                'level' => \LIBXML_ERR_WARNING == $error->level ? 'WARNING' : 'ERROR',
+                'code' => $error->code,
+                'message' => trim($error->message),
+                'file' => $error->file ?: 'n/a',
+                'line' => $error->line,
+                'column' => $error->column,
+            ];
+        }
+
+        libxml_clear_errors();
+        libxml_use_internal_errors($internalErrors);
+
+        return $errors;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriter.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriter.php
new file mode 100644
index 0000000..0a349b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriter.php
@@ -0,0 +1,70 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Writer;
+
+use Symfony\Component\Translation\Dumper\DumperInterface;
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\Exception\RuntimeException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * TranslationWriter writes translation messages.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+class TranslationWriter implements TranslationWriterInterface
+{
+    private $dumpers = [];
+
+    /**
+     * Adds a dumper to the writer.
+     */
+    public function addDumper(string $format, DumperInterface $dumper)
+    {
+        $this->dumpers[$format] = $dumper;
+    }
+
+    /**
+     * Obtains the list of supported formats.
+     *
+     * @return array
+     */
+    public function getFormats()
+    {
+        return array_keys($this->dumpers);
+    }
+
+    /**
+     * Writes translation from the catalogue according to the selected format.
+     *
+     * @param string $format  The format to use to dump the messages
+     * @param array  $options Options that are passed to the dumper
+     *
+     * @throws InvalidArgumentException
+     */
+    public function write(MessageCatalogue $catalogue, string $format, array $options = [])
+    {
+        if (!isset($this->dumpers[$format])) {
+            throw new InvalidArgumentException(sprintf('There is no dumper associated with format "%s".', $format));
+        }
+
+        // get the right dumper
+        $dumper = $this->dumpers[$format];
+
+        if (isset($options['path']) && !is_dir($options['path']) && !@mkdir($options['path'], 0777, true) && !is_dir($options['path'])) {
+            throw new RuntimeException(sprintf('Translation Writer was not able to create directory "%s".', $options['path']));
+        }
+
+        // save
+        $dumper->dump($catalogue, $options);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriterInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriterInterface.php
new file mode 100644
index 0000000..4321309
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/Writer/TranslationWriterInterface.php
@@ -0,0 +1,33 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Translation\Writer;
+
+use Symfony\Component\Translation\Exception\InvalidArgumentException;
+use Symfony\Component\Translation\MessageCatalogue;
+
+/**
+ * TranslationWriter writes translation messages.
+ *
+ * @author Michel Salib <michelsalib@hotmail.com>
+ */
+interface TranslationWriterInterface
+{
+    /**
+     * Writes translation from the catalogue according to the selected format.
+     *
+     * @param string $format  The format to use to dump the messages
+     * @param array  $options Options that are passed to the dumper
+     *
+     * @throws InvalidArgumentException
+     */
+    public function write(MessageCatalogue $catalogue, string $format, array $options = []);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/composer.json
new file mode 100644
index 0000000..de84e16
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/translation/composer.json
@@ -0,0 +1,60 @@
+{
+    "name": "symfony/translation",
+    "type": "library",
+    "description": "Provides tools to internationalize your application",
+    "keywords": [],
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Fabien Potencier",
+            "email": "fabien@symfony.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.2.5",
+        "symfony/deprecation-contracts": "^2.1",
+        "symfony/polyfill-mbstring": "~1.0",
+        "symfony/polyfill-php80": "^1.16",
+        "symfony/translation-contracts": "^2.3"
+    },
+    "require-dev": {
+        "symfony/config": "^4.4|^5.0",
+        "symfony/console": "^4.4|^5.0",
+        "symfony/dependency-injection": "^5.0",
+        "symfony/http-kernel": "^5.0",
+        "symfony/intl": "^4.4|^5.0",
+        "symfony/polyfill-intl-icu": "^1.21",
+        "symfony/service-contracts": "^1.1.2|^2",
+        "symfony/yaml": "^4.4|^5.0",
+        "symfony/finder": "^4.4|^5.0",
+        "psr/log": "^1|^2|^3"
+    },
+    "conflict": {
+        "symfony/config": "<4.4",
+        "symfony/dependency-injection": "<5.0",
+        "symfony/http-kernel": "<5.0",
+        "symfony/twig-bundle": "<5.0",
+        "symfony/yaml": "<4.4"
+    },
+    "provide": {
+        "symfony/translation-implementation": "2.3"
+    },
+    "suggest": {
+        "symfony/config": "",
+        "symfony/yaml": "",
+        "psr/log-implementation": "To use logging capability in translator"
+    },
+    "autoload": {
+        "files": [ "Resources/functions.php" ],
+        "psr-4": { "Symfony\\Component\\Translation\\": "" },
+        "exclude-from-classmap": [
+            "/Tests/"
+        ]
+    },
+    "minimum-stability": "dev"
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/CHANGELOG.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/CHANGELOG.md
new file mode 100644
index 0000000..f3956e6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/CHANGELOG.md
@@ -0,0 +1,65 @@
+CHANGELOG
+=========
+
+5.2.0
+-----
+
+ * added support for PHPUnit `--colors` option
+ * added `VAR_DUMPER_FORMAT=server` env var value support
+ * prevent replacing the handler when the `VAR_DUMPER_FORMAT` env var is set
+
+5.1.0
+-----
+
+ * added `RdKafka` support
+
+4.4.0
+-----
+
+ * added `VarDumperTestTrait::setUpVarDumper()` and `VarDumperTestTrait::tearDownVarDumper()`
+   to configure casters & flags to use in tests
+ * added `ImagineCaster` and infrastructure to dump images
+ * added the stamps of a message after it is dispatched in `TraceableMessageBus` and `MessengerDataCollector` collected data
+ * added `UuidCaster`
+ * made all casters final
+ * added support for the `NO_COLOR` env var (https://no-color.org/)
+
+4.3.0
+-----
+
+ * added `DsCaster` to support dumping the contents of data structures from the Ds extension
+
+4.2.0
+-----
+
+ * support selecting the format to use by setting the environment variable `VAR_DUMPER_FORMAT` to `html` or `cli`
+
+4.1.0
+-----
+
+ * added a `ServerDumper` to send serialized Data clones to a server
+ * added a `ServerDumpCommand` and `DumpServer` to run a server collecting
+   and displaying dumps on a single place with multiple formats support
+ * added `CliDescriptor` and `HtmlDescriptor` descriptors for `server:dump` CLI and HTML formats support
+
+4.0.0
+-----
+
+ * support for passing `\ReflectionClass` instances to the `Caster::castObject()`
+   method has been dropped, pass class names as strings instead
+ * the `Data::getRawData()` method has been removed
+ * the `VarDumperTestTrait::assertDumpEquals()` method expects a 3rd `$filter = 0`
+   argument and moves `$message = ''` argument at 4th position.
+ * the `VarDumperTestTrait::assertDumpMatchesFormat()` method expects a 3rd `$filter = 0`
+   argument and moves `$message = ''` argument at 4th position.
+
+3.4.0
+-----
+
+ * added `AbstractCloner::setMinDepth()` function to ensure minimum tree depth
+ * deprecated `MongoCaster`
+
+2.7.0
+-----
+
+ * deprecated `Cloner\Data::getLimitedClone()`. Use `withMaxDepth`, `withMaxItemsPerDepth` or `withRefHandles` instead.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/AmqpCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/AmqpCaster.php
new file mode 100644
index 0000000..dc3b621
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/AmqpCaster.php
@@ -0,0 +1,212 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts Amqp related classes to array representation.
+ *
+ * @author Grégoire Pineau <lyrixx@lyrixx.info>
+ *
+ * @final
+ */
+class AmqpCaster
+{
+    private const FLAGS = [
+        \AMQP_DURABLE => 'AMQP_DURABLE',
+        \AMQP_PASSIVE => 'AMQP_PASSIVE',
+        \AMQP_EXCLUSIVE => 'AMQP_EXCLUSIVE',
+        \AMQP_AUTODELETE => 'AMQP_AUTODELETE',
+        \AMQP_INTERNAL => 'AMQP_INTERNAL',
+        \AMQP_NOLOCAL => 'AMQP_NOLOCAL',
+        \AMQP_AUTOACK => 'AMQP_AUTOACK',
+        \AMQP_IFEMPTY => 'AMQP_IFEMPTY',
+        \AMQP_IFUNUSED => 'AMQP_IFUNUSED',
+        \AMQP_MANDATORY => 'AMQP_MANDATORY',
+        \AMQP_IMMEDIATE => 'AMQP_IMMEDIATE',
+        \AMQP_MULTIPLE => 'AMQP_MULTIPLE',
+        \AMQP_NOWAIT => 'AMQP_NOWAIT',
+        \AMQP_REQUEUE => 'AMQP_REQUEUE',
+    ];
+
+    private const EXCHANGE_TYPES = [
+        \AMQP_EX_TYPE_DIRECT => 'AMQP_EX_TYPE_DIRECT',
+        \AMQP_EX_TYPE_FANOUT => 'AMQP_EX_TYPE_FANOUT',
+        \AMQP_EX_TYPE_TOPIC => 'AMQP_EX_TYPE_TOPIC',
+        \AMQP_EX_TYPE_HEADERS => 'AMQP_EX_TYPE_HEADERS',
+    ];
+
+    public static function castConnection(\AMQPConnection $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'is_connected' => $c->isConnected(),
+        ];
+
+        // Recent version of the extension already expose private properties
+        if (isset($a["\x00AMQPConnection\x00login"])) {
+            return $a;
+        }
+
+        // BC layer in the amqp lib
+        if (method_exists($c, 'getReadTimeout')) {
+            $timeout = $c->getReadTimeout();
+        } else {
+            $timeout = $c->getTimeout();
+        }
+
+        $a += [
+            $prefix.'is_connected' => $c->isConnected(),
+            $prefix.'login' => $c->getLogin(),
+            $prefix.'password' => $c->getPassword(),
+            $prefix.'host' => $c->getHost(),
+            $prefix.'vhost' => $c->getVhost(),
+            $prefix.'port' => $c->getPort(),
+            $prefix.'read_timeout' => $timeout,
+        ];
+
+        return $a;
+    }
+
+    public static function castChannel(\AMQPChannel $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'is_connected' => $c->isConnected(),
+            $prefix.'channel_id' => $c->getChannelId(),
+        ];
+
+        // Recent version of the extension already expose private properties
+        if (isset($a["\x00AMQPChannel\x00connection"])) {
+            return $a;
+        }
+
+        $a += [
+            $prefix.'connection' => $c->getConnection(),
+            $prefix.'prefetch_size' => $c->getPrefetchSize(),
+            $prefix.'prefetch_count' => $c->getPrefetchCount(),
+        ];
+
+        return $a;
+    }
+
+    public static function castQueue(\AMQPQueue $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'flags' => self::extractFlags($c->getFlags()),
+        ];
+
+        // Recent version of the extension already expose private properties
+        if (isset($a["\x00AMQPQueue\x00name"])) {
+            return $a;
+        }
+
+        $a += [
+            $prefix.'connection' => $c->getConnection(),
+            $prefix.'channel' => $c->getChannel(),
+            $prefix.'name' => $c->getName(),
+            $prefix.'arguments' => $c->getArguments(),
+        ];
+
+        return $a;
+    }
+
+    public static function castExchange(\AMQPExchange $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'flags' => self::extractFlags($c->getFlags()),
+        ];
+
+        $type = isset(self::EXCHANGE_TYPES[$c->getType()]) ? new ConstStub(self::EXCHANGE_TYPES[$c->getType()], $c->getType()) : $c->getType();
+
+        // Recent version of the extension already expose private properties
+        if (isset($a["\x00AMQPExchange\x00name"])) {
+            $a["\x00AMQPExchange\x00type"] = $type;
+
+            return $a;
+        }
+
+        $a += [
+            $prefix.'connection' => $c->getConnection(),
+            $prefix.'channel' => $c->getChannel(),
+            $prefix.'name' => $c->getName(),
+            $prefix.'type' => $type,
+            $prefix.'arguments' => $c->getArguments(),
+        ];
+
+        return $a;
+    }
+
+    public static function castEnvelope(\AMQPEnvelope $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $deliveryMode = new ConstStub($c->getDeliveryMode().(2 === $c->getDeliveryMode() ? ' (persistent)' : ' (non-persistent)'), $c->getDeliveryMode());
+
+        // Recent version of the extension already expose private properties
+        if (isset($a["\x00AMQPEnvelope\x00body"])) {
+            $a["\0AMQPEnvelope\0delivery_mode"] = $deliveryMode;
+
+            return $a;
+        }
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE)) {
+            $a += [$prefix.'body' => $c->getBody()];
+        }
+
+        $a += [
+            $prefix.'delivery_tag' => $c->getDeliveryTag(),
+            $prefix.'is_redelivery' => $c->isRedelivery(),
+            $prefix.'exchange_name' => $c->getExchangeName(),
+            $prefix.'routing_key' => $c->getRoutingKey(),
+            $prefix.'content_type' => $c->getContentType(),
+            $prefix.'content_encoding' => $c->getContentEncoding(),
+            $prefix.'headers' => $c->getHeaders(),
+            $prefix.'delivery_mode' => $deliveryMode,
+            $prefix.'priority' => $c->getPriority(),
+            $prefix.'correlation_id' => $c->getCorrelationId(),
+            $prefix.'reply_to' => $c->getReplyTo(),
+            $prefix.'expiration' => $c->getExpiration(),
+            $prefix.'message_id' => $c->getMessageId(),
+            $prefix.'timestamp' => $c->getTimeStamp(),
+            $prefix.'type' => $c->getType(),
+            $prefix.'user_id' => $c->getUserId(),
+            $prefix.'app_id' => $c->getAppId(),
+        ];
+
+        return $a;
+    }
+
+    private static function extractFlags(int $flags): ConstStub
+    {
+        $flagsArray = [];
+
+        foreach (self::FLAGS as $value => $name) {
+            if ($flags & $value) {
+                $flagsArray[] = $name;
+            }
+        }
+
+        if (!$flagsArray) {
+            $flagsArray = ['AMQP_NOPARAM'];
+        }
+
+        return new ConstStub(implode('|', $flagsArray), $flags);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ArgsStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ArgsStub.php
new file mode 100644
index 0000000..f8b485b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ArgsStub.php
@@ -0,0 +1,80 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents a list of function arguments.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class ArgsStub extends EnumStub
+{
+    private static $parameters = [];
+
+    public function __construct(array $args, string $function, ?string $class)
+    {
+        [$variadic, $params] = self::getParameters($function, $class);
+
+        $values = [];
+        foreach ($args as $k => $v) {
+            $values[$k] = !is_scalar($v) && !$v instanceof Stub ? new CutStub($v) : $v;
+        }
+        if (null === $params) {
+            parent::__construct($values, false);
+
+            return;
+        }
+        if (\count($values) < \count($params)) {
+            $params = \array_slice($params, 0, \count($values));
+        } elseif (\count($values) > \count($params)) {
+            $values[] = new EnumStub(array_splice($values, \count($params)), false);
+            $params[] = $variadic;
+        }
+        if (['...'] === $params) {
+            $this->dumpKeys = false;
+            $this->value = $values[0]->value;
+        } else {
+            $this->value = array_combine($params, $values);
+        }
+    }
+
+    private static function getParameters(string $function, ?string $class): array
+    {
+        if (isset(self::$parameters[$k = $class.'::'.$function])) {
+            return self::$parameters[$k];
+        }
+
+        try {
+            $r = null !== $class ? new \ReflectionMethod($class, $function) : new \ReflectionFunction($function);
+        } catch (\ReflectionException $e) {
+            return [null, null];
+        }
+
+        $variadic = '...';
+        $params = [];
+        foreach ($r->getParameters() as $v) {
+            $k = '$'.$v->name;
+            if ($v->isPassedByReference()) {
+                $k = '&'.$k;
+            }
+            if ($v->isVariadic()) {
+                $variadic .= $k;
+            } else {
+                $params[] = $k;
+            }
+        }
+
+        return self::$parameters[$k] = [$variadic, $params];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/Caster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/Caster.php
new file mode 100644
index 0000000..612b21f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/Caster.php
@@ -0,0 +1,174 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Helper for filtering out properties in casters.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class Caster
+{
+    public const EXCLUDE_VERBOSE = 1;
+    public const EXCLUDE_VIRTUAL = 2;
+    public const EXCLUDE_DYNAMIC = 4;
+    public const EXCLUDE_PUBLIC = 8;
+    public const EXCLUDE_PROTECTED = 16;
+    public const EXCLUDE_PRIVATE = 32;
+    public const EXCLUDE_NULL = 64;
+    public const EXCLUDE_EMPTY = 128;
+    public const EXCLUDE_NOT_IMPORTANT = 256;
+    public const EXCLUDE_STRICT = 512;
+
+    public const PREFIX_VIRTUAL = "\0~\0";
+    public const PREFIX_DYNAMIC = "\0+\0";
+    public const PREFIX_PROTECTED = "\0*\0";
+
+    /**
+     * Casts objects to arrays and adds the dynamic property prefix.
+     *
+     * @param bool $hasDebugInfo Whether the __debugInfo method exists on $obj or not
+     *
+     * @return array The array-cast of the object, with prefixed dynamic properties
+     */
+    public static function castObject(object $obj, string $class, bool $hasDebugInfo = false, string $debugClass = null): array
+    {
+        if ($hasDebugInfo) {
+            try {
+                $debugInfo = $obj->__debugInfo();
+            } catch (\Exception $e) {
+                // ignore failing __debugInfo()
+                $hasDebugInfo = false;
+            }
+        }
+
+        $a = $obj instanceof \Closure ? [] : (array) $obj;
+
+        if ($obj instanceof \__PHP_Incomplete_Class) {
+            return $a;
+        }
+
+        if ($a) {
+            static $publicProperties = [];
+            $debugClass = $debugClass ?? get_debug_type($obj);
+
+            $i = 0;
+            $prefixedKeys = [];
+            foreach ($a as $k => $v) {
+                if ("\0" !== ($k[0] ?? '')) {
+                    if (!isset($publicProperties[$class])) {
+                        foreach ((new \ReflectionClass($class))->getProperties(\ReflectionProperty::IS_PUBLIC) as $prop) {
+                            $publicProperties[$class][$prop->name] = true;
+                        }
+                    }
+                    if (!isset($publicProperties[$class][$k])) {
+                        $prefixedKeys[$i] = self::PREFIX_DYNAMIC.$k;
+                    }
+                } elseif ($debugClass !== $class && 1 === strpos($k, $class)) {
+                    $prefixedKeys[$i] = "\0".$debugClass.strrchr($k, "\0");
+                }
+                ++$i;
+            }
+            if ($prefixedKeys) {
+                $keys = array_keys($a);
+                foreach ($prefixedKeys as $i => $k) {
+                    $keys[$i] = $k;
+                }
+                $a = array_combine($keys, $a);
+            }
+        }
+
+        if ($hasDebugInfo && \is_array($debugInfo)) {
+            foreach ($debugInfo as $k => $v) {
+                if (!isset($k[0]) || "\0" !== $k[0]) {
+                    if (\array_key_exists(self::PREFIX_DYNAMIC.$k, $a)) {
+                        continue;
+                    }
+                    $k = self::PREFIX_VIRTUAL.$k;
+                }
+
+                unset($a[$k]);
+                $a[$k] = $v;
+            }
+        }
+
+        return $a;
+    }
+
+    /**
+     * Filters out the specified properties.
+     *
+     * By default, a single match in the $filter bit field filters properties out, following an "or" logic.
+     * When EXCLUDE_STRICT is set, an "and" logic is applied: all bits must match for a property to be removed.
+     *
+     * @param array    $a                The array containing the properties to filter
+     * @param int      $filter           A bit field of Caster::EXCLUDE_* constants specifying which properties to filter out
+     * @param string[] $listedProperties List of properties to exclude when Caster::EXCLUDE_VERBOSE is set, and to preserve when Caster::EXCLUDE_NOT_IMPORTANT is set
+     * @param int      &$count           Set to the number of removed properties
+     *
+     * @return array The filtered array
+     */
+    public static function filter(array $a, int $filter, array $listedProperties = [], ?int &$count = 0): array
+    {
+        $count = 0;
+
+        foreach ($a as $k => $v) {
+            $type = self::EXCLUDE_STRICT & $filter;
+
+            if (null === $v) {
+                $type |= self::EXCLUDE_NULL & $filter;
+                $type |= self::EXCLUDE_EMPTY & $filter;
+            } elseif (false === $v || '' === $v || '0' === $v || 0 === $v || 0.0 === $v || [] === $v) {
+                $type |= self::EXCLUDE_EMPTY & $filter;
+            }
+            if ((self::EXCLUDE_NOT_IMPORTANT & $filter) && !\in_array($k, $listedProperties, true)) {
+                $type |= self::EXCLUDE_NOT_IMPORTANT;
+            }
+            if ((self::EXCLUDE_VERBOSE & $filter) && \in_array($k, $listedProperties, true)) {
+                $type |= self::EXCLUDE_VERBOSE;
+            }
+
+            if (!isset($k[1]) || "\0" !== $k[0]) {
+                $type |= self::EXCLUDE_PUBLIC & $filter;
+            } elseif ('~' === $k[1]) {
+                $type |= self::EXCLUDE_VIRTUAL & $filter;
+            } elseif ('+' === $k[1]) {
+                $type |= self::EXCLUDE_DYNAMIC & $filter;
+            } elseif ('*' === $k[1]) {
+                $type |= self::EXCLUDE_PROTECTED & $filter;
+            } else {
+                $type |= self::EXCLUDE_PRIVATE & $filter;
+            }
+
+            if ((self::EXCLUDE_STRICT & $filter) ? $type === $filter : $type) {
+                unset($a[$k]);
+                ++$count;
+            }
+        }
+
+        return $a;
+    }
+
+    public static function castPhpIncompleteClass(\__PHP_Incomplete_Class $c, array $a, Stub $stub, bool $isNested): array
+    {
+        if (isset($a['__PHP_Incomplete_Class_Name'])) {
+            $stub->class .= '('.$a['__PHP_Incomplete_Class_Name'].')';
+            unset($a['__PHP_Incomplete_Class_Name']);
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ClassStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ClassStub.php
new file mode 100644
index 0000000..48f8483
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ClassStub.php
@@ -0,0 +1,106 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents a PHP class identifier.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class ClassStub extends ConstStub
+{
+    /**
+     * @param string   $identifier A PHP identifier, e.g. a class, method, interface, etc. name
+     * @param callable $callable   The callable targeted by the identifier when it is ambiguous or not a real PHP identifier
+     */
+    public function __construct(string $identifier, $callable = null)
+    {
+        $this->value = $identifier;
+
+        try {
+            if (null !== $callable) {
+                if ($callable instanceof \Closure) {
+                    $r = new \ReflectionFunction($callable);
+                } elseif (\is_object($callable)) {
+                    $r = [$callable, '__invoke'];
+                } elseif (\is_array($callable)) {
+                    $r = $callable;
+                } elseif (false !== $i = strpos($callable, '::')) {
+                    $r = [substr($callable, 0, $i), substr($callable, 2 + $i)];
+                } else {
+                    $r = new \ReflectionFunction($callable);
+                }
+            } elseif (0 < $i = strpos($identifier, '::') ?: strpos($identifier, '->')) {
+                $r = [substr($identifier, 0, $i), substr($identifier, 2 + $i)];
+            } else {
+                $r = new \ReflectionClass($identifier);
+            }
+
+            if (\is_array($r)) {
+                try {
+                    $r = new \ReflectionMethod($r[0], $r[1]);
+                } catch (\ReflectionException $e) {
+                    $r = new \ReflectionClass($r[0]);
+                }
+            }
+
+            if (str_contains($identifier, "@anonymous\0")) {
+                $this->value = $identifier = preg_replace_callback('/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
+                    return class_exists($m[0], false) ? (get_parent_class($m[0]) ?: key(class_implements($m[0])) ?: 'class').'@anonymous' : $m[0];
+                }, $identifier);
+            }
+
+            if (null !== $callable && $r instanceof \ReflectionFunctionAbstract) {
+                $s = ReflectionCaster::castFunctionAbstract($r, [], new Stub(), true, Caster::EXCLUDE_VERBOSE);
+                $s = ReflectionCaster::getSignature($s);
+
+                if (str_ends_with($identifier, '()')) {
+                    $this->value = substr_replace($identifier, $s, -2);
+                } else {
+                    $this->value .= $s;
+                }
+            }
+        } catch (\ReflectionException $e) {
+            return;
+        } finally {
+            if (0 < $i = strrpos($this->value, '\\')) {
+                $this->attr['ellipsis'] = \strlen($this->value) - $i;
+                $this->attr['ellipsis-type'] = 'class';
+                $this->attr['ellipsis-tail'] = 1;
+            }
+        }
+
+        if ($f = $r->getFileName()) {
+            $this->attr['file'] = $f;
+            $this->attr['line'] = $r->getStartLine();
+        }
+    }
+
+    public static function wrapCallable($callable)
+    {
+        if (\is_object($callable) || !\is_callable($callable)) {
+            return $callable;
+        }
+
+        if (!\is_array($callable)) {
+            $callable = new static($callable, $callable);
+        } elseif (\is_string($callable[0])) {
+            $callable[0] = new static($callable[0], $callable);
+        } else {
+            $callable[1] = new static($callable[1], $callable);
+        }
+
+        return $callable;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ConstStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ConstStub.php
new file mode 100644
index 0000000..8b01797
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ConstStub.php
@@ -0,0 +1,36 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents a PHP constant and its value.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class ConstStub extends Stub
+{
+    public function __construct(string $name, $value = null)
+    {
+        $this->class = $name;
+        $this->value = 1 < \func_num_args() ? $value : $name;
+    }
+
+    /**
+     * @return string
+     */
+    public function __toString()
+    {
+        return (string) $this->value;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutArrayStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutArrayStub.php
new file mode 100644
index 0000000..0e4fb36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutArrayStub.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+/**
+ * Represents a cut array.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class CutArrayStub extends CutStub
+{
+    public $preservedSubset;
+
+    public function __construct(array $value, array $preservedKeys)
+    {
+        parent::__construct($value);
+
+        $this->preservedSubset = array_intersect_key($value, array_flip($preservedKeys));
+        $this->cut -= \count($this->preservedSubset);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutStub.php
new file mode 100644
index 0000000..464c6db
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/CutStub.php
@@ -0,0 +1,64 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents the main properties of a PHP variable, pre-casted by a caster.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class CutStub extends Stub
+{
+    public function __construct($value)
+    {
+        $this->value = $value;
+
+        switch (\gettype($value)) {
+            case 'object':
+                $this->type = self::TYPE_OBJECT;
+                $this->class = \get_class($value);
+
+                if ($value instanceof \Closure) {
+                    ReflectionCaster::castClosure($value, [], $this, true, Caster::EXCLUDE_VERBOSE);
+                }
+
+                $this->cut = -1;
+                break;
+
+            case 'array':
+                $this->type = self::TYPE_ARRAY;
+                $this->class = self::ARRAY_ASSOC;
+                $this->cut = $this->value = \count($value);
+                break;
+
+            case 'resource':
+            case 'unknown type':
+            case 'resource (closed)':
+                $this->type = self::TYPE_RESOURCE;
+                $this->handle = (int) $value;
+                if ('Unknown' === $this->class = @get_resource_type($value)) {
+                    $this->class = 'Closed';
+                }
+                $this->cut = -1;
+                break;
+
+            case 'string':
+                $this->type = self::TYPE_STRING;
+                $this->class = preg_match('//u', $value) ? self::STRING_UTF8 : self::STRING_BINARY;
+                $this->cut = self::STRING_BINARY === $this->class ? \strlen($value) : mb_strlen($value, 'UTF-8');
+                $this->value = '';
+                break;
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DOMCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DOMCaster.php
new file mode 100644
index 0000000..4dd16e0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DOMCaster.php
@@ -0,0 +1,304 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts DOM related classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class DOMCaster
+{
+    private const ERROR_CODES = [
+        \DOM_PHP_ERR => 'DOM_PHP_ERR',
+        \DOM_INDEX_SIZE_ERR => 'DOM_INDEX_SIZE_ERR',
+        \DOMSTRING_SIZE_ERR => 'DOMSTRING_SIZE_ERR',
+        \DOM_HIERARCHY_REQUEST_ERR => 'DOM_HIERARCHY_REQUEST_ERR',
+        \DOM_WRONG_DOCUMENT_ERR => 'DOM_WRONG_DOCUMENT_ERR',
+        \DOM_INVALID_CHARACTER_ERR => 'DOM_INVALID_CHARACTER_ERR',
+        \DOM_NO_DATA_ALLOWED_ERR => 'DOM_NO_DATA_ALLOWED_ERR',
+        \DOM_NO_MODIFICATION_ALLOWED_ERR => 'DOM_NO_MODIFICATION_ALLOWED_ERR',
+        \DOM_NOT_FOUND_ERR => 'DOM_NOT_FOUND_ERR',
+        \DOM_NOT_SUPPORTED_ERR => 'DOM_NOT_SUPPORTED_ERR',
+        \DOM_INUSE_ATTRIBUTE_ERR => 'DOM_INUSE_ATTRIBUTE_ERR',
+        \DOM_INVALID_STATE_ERR => 'DOM_INVALID_STATE_ERR',
+        \DOM_SYNTAX_ERR => 'DOM_SYNTAX_ERR',
+        \DOM_INVALID_MODIFICATION_ERR => 'DOM_INVALID_MODIFICATION_ERR',
+        \DOM_NAMESPACE_ERR => 'DOM_NAMESPACE_ERR',
+        \DOM_INVALID_ACCESS_ERR => 'DOM_INVALID_ACCESS_ERR',
+        \DOM_VALIDATION_ERR => 'DOM_VALIDATION_ERR',
+    ];
+
+    private const NODE_TYPES = [
+        \XML_ELEMENT_NODE => 'XML_ELEMENT_NODE',
+        \XML_ATTRIBUTE_NODE => 'XML_ATTRIBUTE_NODE',
+        \XML_TEXT_NODE => 'XML_TEXT_NODE',
+        \XML_CDATA_SECTION_NODE => 'XML_CDATA_SECTION_NODE',
+        \XML_ENTITY_REF_NODE => 'XML_ENTITY_REF_NODE',
+        \XML_ENTITY_NODE => 'XML_ENTITY_NODE',
+        \XML_PI_NODE => 'XML_PI_NODE',
+        \XML_COMMENT_NODE => 'XML_COMMENT_NODE',
+        \XML_DOCUMENT_NODE => 'XML_DOCUMENT_NODE',
+        \XML_DOCUMENT_TYPE_NODE => 'XML_DOCUMENT_TYPE_NODE',
+        \XML_DOCUMENT_FRAG_NODE => 'XML_DOCUMENT_FRAG_NODE',
+        \XML_NOTATION_NODE => 'XML_NOTATION_NODE',
+        \XML_HTML_DOCUMENT_NODE => 'XML_HTML_DOCUMENT_NODE',
+        \XML_DTD_NODE => 'XML_DTD_NODE',
+        \XML_ELEMENT_DECL_NODE => 'XML_ELEMENT_DECL_NODE',
+        \XML_ATTRIBUTE_DECL_NODE => 'XML_ATTRIBUTE_DECL_NODE',
+        \XML_ENTITY_DECL_NODE => 'XML_ENTITY_DECL_NODE',
+        \XML_NAMESPACE_DECL_NODE => 'XML_NAMESPACE_DECL_NODE',
+    ];
+
+    public static function castException(\DOMException $e, array $a, Stub $stub, bool $isNested)
+    {
+        $k = Caster::PREFIX_PROTECTED.'code';
+        if (isset($a[$k], self::ERROR_CODES[$a[$k]])) {
+            $a[$k] = new ConstStub(self::ERROR_CODES[$a[$k]], $a[$k]);
+        }
+
+        return $a;
+    }
+
+    public static function castLength($dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'length' => $dom->length,
+        ];
+
+        return $a;
+    }
+
+    public static function castImplementation(\DOMImplementation $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'Core' => '1.0',
+            Caster::PREFIX_VIRTUAL.'XML' => '2.0',
+        ];
+
+        return $a;
+    }
+
+    public static function castNode(\DOMNode $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'nodeName' => $dom->nodeName,
+            'nodeValue' => new CutStub($dom->nodeValue),
+            'nodeType' => new ConstStub(self::NODE_TYPES[$dom->nodeType], $dom->nodeType),
+            'parentNode' => new CutStub($dom->parentNode),
+            'childNodes' => $dom->childNodes,
+            'firstChild' => new CutStub($dom->firstChild),
+            'lastChild' => new CutStub($dom->lastChild),
+            'previousSibling' => new CutStub($dom->previousSibling),
+            'nextSibling' => new CutStub($dom->nextSibling),
+            'attributes' => $dom->attributes,
+            'ownerDocument' => new CutStub($dom->ownerDocument),
+            'namespaceURI' => $dom->namespaceURI,
+            'prefix' => $dom->prefix,
+            'localName' => $dom->localName,
+            'baseURI' => $dom->baseURI ? new LinkStub($dom->baseURI) : $dom->baseURI,
+            'textContent' => new CutStub($dom->textContent),
+        ];
+
+        return $a;
+    }
+
+    public static function castNameSpaceNode(\DOMNameSpaceNode $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'nodeName' => $dom->nodeName,
+            'nodeValue' => new CutStub($dom->nodeValue),
+            'nodeType' => new ConstStub(self::NODE_TYPES[$dom->nodeType], $dom->nodeType),
+            'prefix' => $dom->prefix,
+            'localName' => $dom->localName,
+            'namespaceURI' => $dom->namespaceURI,
+            'ownerDocument' => new CutStub($dom->ownerDocument),
+            'parentNode' => new CutStub($dom->parentNode),
+        ];
+
+        return $a;
+    }
+
+    public static function castDocument(\DOMDocument $dom, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $a += [
+            'doctype' => $dom->doctype,
+            'implementation' => $dom->implementation,
+            'documentElement' => new CutStub($dom->documentElement),
+            'actualEncoding' => $dom->actualEncoding,
+            'encoding' => $dom->encoding,
+            'xmlEncoding' => $dom->xmlEncoding,
+            'standalone' => $dom->standalone,
+            'xmlStandalone' => $dom->xmlStandalone,
+            'version' => $dom->version,
+            'xmlVersion' => $dom->xmlVersion,
+            'strictErrorChecking' => $dom->strictErrorChecking,
+            'documentURI' => $dom->documentURI ? new LinkStub($dom->documentURI) : $dom->documentURI,
+            'config' => $dom->config,
+            'formatOutput' => $dom->formatOutput,
+            'validateOnParse' => $dom->validateOnParse,
+            'resolveExternals' => $dom->resolveExternals,
+            'preserveWhiteSpace' => $dom->preserveWhiteSpace,
+            'recover' => $dom->recover,
+            'substituteEntities' => $dom->substituteEntities,
+        ];
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE)) {
+            $formatOutput = $dom->formatOutput;
+            $dom->formatOutput = true;
+            $a += [Caster::PREFIX_VIRTUAL.'xml' => $dom->saveXML()];
+            $dom->formatOutput = $formatOutput;
+        }
+
+        return $a;
+    }
+
+    public static function castCharacterData(\DOMCharacterData $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'data' => $dom->data,
+            'length' => $dom->length,
+        ];
+
+        return $a;
+    }
+
+    public static function castAttr(\DOMAttr $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'name' => $dom->name,
+            'specified' => $dom->specified,
+            'value' => $dom->value,
+            'ownerElement' => $dom->ownerElement,
+            'schemaTypeInfo' => $dom->schemaTypeInfo,
+        ];
+
+        return $a;
+    }
+
+    public static function castElement(\DOMElement $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'tagName' => $dom->tagName,
+            'schemaTypeInfo' => $dom->schemaTypeInfo,
+        ];
+
+        return $a;
+    }
+
+    public static function castText(\DOMText $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'wholeText' => $dom->wholeText,
+        ];
+
+        return $a;
+    }
+
+    public static function castTypeinfo(\DOMTypeinfo $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'typeName' => $dom->typeName,
+            'typeNamespace' => $dom->typeNamespace,
+        ];
+
+        return $a;
+    }
+
+    public static function castDomError(\DOMDomError $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'severity' => $dom->severity,
+            'message' => $dom->message,
+            'type' => $dom->type,
+            'relatedException' => $dom->relatedException,
+            'related_data' => $dom->related_data,
+            'location' => $dom->location,
+        ];
+
+        return $a;
+    }
+
+    public static function castLocator(\DOMLocator $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'lineNumber' => $dom->lineNumber,
+            'columnNumber' => $dom->columnNumber,
+            'offset' => $dom->offset,
+            'relatedNode' => $dom->relatedNode,
+            'uri' => $dom->uri ? new LinkStub($dom->uri, $dom->lineNumber) : $dom->uri,
+        ];
+
+        return $a;
+    }
+
+    public static function castDocumentType(\DOMDocumentType $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'name' => $dom->name,
+            'entities' => $dom->entities,
+            'notations' => $dom->notations,
+            'publicId' => $dom->publicId,
+            'systemId' => $dom->systemId,
+            'internalSubset' => $dom->internalSubset,
+        ];
+
+        return $a;
+    }
+
+    public static function castNotation(\DOMNotation $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'publicId' => $dom->publicId,
+            'systemId' => $dom->systemId,
+        ];
+
+        return $a;
+    }
+
+    public static function castEntity(\DOMEntity $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'publicId' => $dom->publicId,
+            'systemId' => $dom->systemId,
+            'notationName' => $dom->notationName,
+            'actualEncoding' => $dom->actualEncoding,
+            'encoding' => $dom->encoding,
+            'version' => $dom->version,
+        ];
+
+        return $a;
+    }
+
+    public static function castProcessingInstruction(\DOMProcessingInstruction $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'target' => $dom->target,
+            'data' => $dom->data,
+        ];
+
+        return $a;
+    }
+
+    public static function castXPath(\DOMXPath $dom, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            'document' => $dom->document,
+        ];
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DateCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DateCaster.php
new file mode 100644
index 0000000..1f61c32
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DateCaster.php
@@ -0,0 +1,126 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts DateTimeInterface related classes to array representation.
+ *
+ * @author Dany Maillard <danymaillard93b@gmail.com>
+ *
+ * @final
+ */
+class DateCaster
+{
+    private const PERIOD_LIMIT = 3;
+
+    public static function castDateTime(\DateTimeInterface $d, array $a, Stub $stub, bool $isNested, int $filter)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $location = $d->getTimezone()->getLocation();
+        $fromNow = (new \DateTime())->diff($d);
+
+        $title = $d->format('l, F j, Y')
+            ."\n".self::formatInterval($fromNow).' from now'
+            .($location ? ($d->format('I') ? "\nDST On" : "\nDST Off") : '')
+        ;
+
+        unset(
+            $a[Caster::PREFIX_DYNAMIC.'date'],
+            $a[Caster::PREFIX_DYNAMIC.'timezone'],
+            $a[Caster::PREFIX_DYNAMIC.'timezone_type']
+        );
+        $a[$prefix.'date'] = new ConstStub(self::formatDateTime($d, $location ? ' e (P)' : ' P'), $title);
+
+        $stub->class .= $d->format(' @U');
+
+        return $a;
+    }
+
+    public static function castInterval(\DateInterval $interval, array $a, Stub $stub, bool $isNested, int $filter)
+    {
+        $now = new \DateTimeImmutable();
+        $numberOfSeconds = $now->add($interval)->getTimestamp() - $now->getTimestamp();
+        $title = number_format($numberOfSeconds, 0, '.', ' ').'s';
+
+        $i = [Caster::PREFIX_VIRTUAL.'interval' => new ConstStub(self::formatInterval($interval), $title)];
+
+        return $filter & Caster::EXCLUDE_VERBOSE ? $i : $i + $a;
+    }
+
+    private static function formatInterval(\DateInterval $i): string
+    {
+        $format = '%R ';
+
+        if (0 === $i->y && 0 === $i->m && ($i->h >= 24 || $i->i >= 60 || $i->s >= 60)) {
+            $i = date_diff($d = new \DateTime(), date_add(clone $d, $i)); // recalculate carry over points
+            $format .= 0 < $i->days ? '%ad ' : '';
+        } else {
+            $format .= ($i->y ? '%yy ' : '').($i->m ? '%mm ' : '').($i->d ? '%dd ' : '');
+        }
+
+        $format .= $i->h || $i->i || $i->s || $i->f ? '%H:%I:'.self::formatSeconds($i->s, substr($i->f, 2)) : '';
+        $format = '%R ' === $format ? '0s' : $format;
+
+        return $i->format(rtrim($format));
+    }
+
+    public static function castTimeZone(\DateTimeZone $timeZone, array $a, Stub $stub, bool $isNested, int $filter)
+    {
+        $location = $timeZone->getLocation();
+        $formatted = (new \DateTime('now', $timeZone))->format($location ? 'e (P)' : 'P');
+        $title = $location && \extension_loaded('intl') ? \Locale::getDisplayRegion('-'.$location['country_code']) : '';
+
+        $z = [Caster::PREFIX_VIRTUAL.'timezone' => new ConstStub($formatted, $title)];
+
+        return $filter & Caster::EXCLUDE_VERBOSE ? $z : $z + $a;
+    }
+
+    public static function castPeriod(\DatePeriod $p, array $a, Stub $stub, bool $isNested, int $filter)
+    {
+        $dates = [];
+        foreach (clone $p as $i => $d) {
+            if (self::PERIOD_LIMIT === $i) {
+                $now = new \DateTimeImmutable('now', new \DateTimeZone('UTC'));
+                $dates[] = sprintf('%s more', ($end = $p->getEndDate())
+                    ? ceil(($end->format('U.u') - $d->format('U.u')) / ((int) $now->add($p->getDateInterval())->format('U.u') - (int) $now->format('U.u')))
+                    : $p->recurrences - $i
+                );
+                break;
+            }
+            $dates[] = sprintf('%s) %s', $i + 1, self::formatDateTime($d));
+        }
+
+        $period = sprintf(
+            'every %s, from %s (%s) %s',
+            self::formatInterval($p->getDateInterval()),
+            self::formatDateTime($p->getStartDate()),
+            $p->include_start_date ? 'included' : 'excluded',
+            ($end = $p->getEndDate()) ? 'to '.self::formatDateTime($end) : 'recurring '.$p->recurrences.' time/s'
+        );
+
+        $p = [Caster::PREFIX_VIRTUAL.'period' => new ConstStub($period, implode("\n", $dates))];
+
+        return $filter & Caster::EXCLUDE_VERBOSE ? $p : $p + $a;
+    }
+
+    private static function formatDateTime(\DateTimeInterface $d, string $extra = ''): string
+    {
+        return $d->format('Y-m-d H:i:'.self::formatSeconds($d->format('s'), $d->format('u')).$extra);
+    }
+
+    private static function formatSeconds(string $s, string $us): string
+    {
+        return sprintf('%02d.%s', $s, 0 === ($len = \strlen($t = rtrim($us, '0'))) ? '0' : ($len <= 3 ? str_pad($t, 3, '0') : $us));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DoctrineCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DoctrineCaster.php
new file mode 100644
index 0000000..129b2cb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DoctrineCaster.php
@@ -0,0 +1,62 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Doctrine\Common\Proxy\Proxy as CommonProxy;
+use Doctrine\ORM\PersistentCollection;
+use Doctrine\ORM\Proxy\Proxy as OrmProxy;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts Doctrine related classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class DoctrineCaster
+{
+    public static function castCommonProxy(CommonProxy $proxy, array $a, Stub $stub, bool $isNested)
+    {
+        foreach (['__cloner__', '__initializer__'] as $k) {
+            if (\array_key_exists($k, $a)) {
+                unset($a[$k]);
+                ++$stub->cut;
+            }
+        }
+
+        return $a;
+    }
+
+    public static function castOrmProxy(OrmProxy $proxy, array $a, Stub $stub, bool $isNested)
+    {
+        foreach (['_entityPersister', '_identifier'] as $k) {
+            if (\array_key_exists($k = "\0Doctrine\\ORM\\Proxy\\Proxy\0".$k, $a)) {
+                unset($a[$k]);
+                ++$stub->cut;
+            }
+        }
+
+        return $a;
+    }
+
+    public static function castPersistentCollection(PersistentCollection $coll, array $a, Stub $stub, bool $isNested)
+    {
+        foreach (['snapshot', 'association', 'typeClass'] as $k) {
+            if (\array_key_exists($k = "\0Doctrine\\ORM\\PersistentCollection\0".$k, $a)) {
+                $a[$k] = new CutStub($a[$k]);
+            }
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsCaster.php
new file mode 100644
index 0000000..b34b670
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsCaster.php
@@ -0,0 +1,70 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Ds\Collection;
+use Ds\Map;
+use Ds\Pair;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts Ds extension classes to array representation.
+ *
+ * @author Jáchym Toušek <enumag@gmail.com>
+ *
+ * @final
+ */
+class DsCaster
+{
+    public static function castCollection(Collection $c, array $a, Stub $stub, bool $isNested): array
+    {
+        $a[Caster::PREFIX_VIRTUAL.'count'] = $c->count();
+        $a[Caster::PREFIX_VIRTUAL.'capacity'] = $c->capacity();
+
+        if (!$c instanceof Map) {
+            $a += $c->toArray();
+        }
+
+        return $a;
+    }
+
+    public static function castMap(Map $c, array $a, Stub $stub, bool $isNested): array
+    {
+        foreach ($c as $k => $v) {
+            $a[] = new DsPairStub($k, $v);
+        }
+
+        return $a;
+    }
+
+    public static function castPair(Pair $c, array $a, Stub $stub, bool $isNested): array
+    {
+        foreach ($c->toArray() as $k => $v) {
+            $a[Caster::PREFIX_VIRTUAL.$k] = $v;
+        }
+
+        return $a;
+    }
+
+    public static function castPairStub(DsPairStub $c, array $a, Stub $stub, bool $isNested): array
+    {
+        if ($isNested) {
+            $stub->class = Pair::class;
+            $stub->value = null;
+            $stub->handle = 0;
+
+            $a = $c->value;
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsPairStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsPairStub.php
new file mode 100644
index 0000000..a1dcc15
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/DsPairStub.php
@@ -0,0 +1,28 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class DsPairStub extends Stub
+{
+    public function __construct($key, $value)
+    {
+        $this->value = [
+            Caster::PREFIX_VIRTUAL.'key' => $key,
+            Caster::PREFIX_VIRTUAL.'value' => $value,
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/EnumStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/EnumStub.php
new file mode 100644
index 0000000..7a4e98a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/EnumStub.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents an enumeration of values.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class EnumStub extends Stub
+{
+    public $dumpKeys = true;
+
+    public function __construct(array $values, bool $dumpKeys = true)
+    {
+        $this->value = $values;
+        $this->dumpKeys = $dumpKeys;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ExceptionCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ExceptionCaster.php
new file mode 100644
index 0000000..baa7a18
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ExceptionCaster.php
@@ -0,0 +1,382 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\ErrorHandler\Exception\SilencedErrorContext;
+use Symfony\Component\VarDumper\Cloner\Stub;
+use Symfony\Component\VarDumper\Exception\ThrowingCasterException;
+
+/**
+ * Casts common Exception classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class ExceptionCaster
+{
+    public static $srcContext = 1;
+    public static $traceArgs = true;
+    public static $errorTypes = [
+        \E_DEPRECATED => 'E_DEPRECATED',
+        \E_USER_DEPRECATED => 'E_USER_DEPRECATED',
+        \E_RECOVERABLE_ERROR => 'E_RECOVERABLE_ERROR',
+        \E_ERROR => 'E_ERROR',
+        \E_WARNING => 'E_WARNING',
+        \E_PARSE => 'E_PARSE',
+        \E_NOTICE => 'E_NOTICE',
+        \E_CORE_ERROR => 'E_CORE_ERROR',
+        \E_CORE_WARNING => 'E_CORE_WARNING',
+        \E_COMPILE_ERROR => 'E_COMPILE_ERROR',
+        \E_COMPILE_WARNING => 'E_COMPILE_WARNING',
+        \E_USER_ERROR => 'E_USER_ERROR',
+        \E_USER_WARNING => 'E_USER_WARNING',
+        \E_USER_NOTICE => 'E_USER_NOTICE',
+        \E_STRICT => 'E_STRICT',
+    ];
+
+    private static $framesCache = [];
+
+    public static function castError(\Error $e, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        return self::filterExceptionArray($stub->class, $a, "\0Error\0", $filter);
+    }
+
+    public static function castException(\Exception $e, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        return self::filterExceptionArray($stub->class, $a, "\0Exception\0", $filter);
+    }
+
+    public static function castErrorException(\ErrorException $e, array $a, Stub $stub, bool $isNested)
+    {
+        if (isset($a[$s = Caster::PREFIX_PROTECTED.'severity'], self::$errorTypes[$a[$s]])) {
+            $a[$s] = new ConstStub(self::$errorTypes[$a[$s]], $a[$s]);
+        }
+
+        return $a;
+    }
+
+    public static function castThrowingCasterException(ThrowingCasterException $e, array $a, Stub $stub, bool $isNested)
+    {
+        $trace = Caster::PREFIX_VIRTUAL.'trace';
+        $prefix = Caster::PREFIX_PROTECTED;
+        $xPrefix = "\0Exception\0";
+
+        if (isset($a[$xPrefix.'previous'], $a[$trace]) && $a[$xPrefix.'previous'] instanceof \Exception) {
+            $b = (array) $a[$xPrefix.'previous'];
+            $class = get_debug_type($a[$xPrefix.'previous']);
+            self::traceUnshift($b[$xPrefix.'trace'], $class, $b[$prefix.'file'], $b[$prefix.'line']);
+            $a[$trace] = new TraceStub($b[$xPrefix.'trace'], false, 0, -\count($a[$trace]->value));
+        }
+
+        unset($a[$xPrefix.'previous'], $a[$prefix.'code'], $a[$prefix.'file'], $a[$prefix.'line']);
+
+        return $a;
+    }
+
+    public static function castSilencedErrorContext(SilencedErrorContext $e, array $a, Stub $stub, bool $isNested)
+    {
+        $sPrefix = "\0".SilencedErrorContext::class."\0";
+
+        if (!isset($a[$s = $sPrefix.'severity'])) {
+            return $a;
+        }
+
+        if (isset(self::$errorTypes[$a[$s]])) {
+            $a[$s] = new ConstStub(self::$errorTypes[$a[$s]], $a[$s]);
+        }
+
+        $trace = [[
+            'file' => $a[$sPrefix.'file'],
+            'line' => $a[$sPrefix.'line'],
+        ]];
+
+        if (isset($a[$sPrefix.'trace'])) {
+            $trace = array_merge($trace, $a[$sPrefix.'trace']);
+        }
+
+        unset($a[$sPrefix.'file'], $a[$sPrefix.'line'], $a[$sPrefix.'trace']);
+        $a[Caster::PREFIX_VIRTUAL.'trace'] = new TraceStub($trace, self::$traceArgs);
+
+        return $a;
+    }
+
+    public static function castTraceStub(TraceStub $trace, array $a, Stub $stub, bool $isNested)
+    {
+        if (!$isNested) {
+            return $a;
+        }
+        $stub->class = '';
+        $stub->handle = 0;
+        $frames = $trace->value;
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a = [];
+        $j = \count($frames);
+        if (0 > $i = $trace->sliceOffset) {
+            $i = max(0, $j + $i);
+        }
+        if (!isset($trace->value[$i])) {
+            return [];
+        }
+        $lastCall = isset($frames[$i]['function']) ? (isset($frames[$i]['class']) ? $frames[0]['class'].$frames[$i]['type'] : '').$frames[$i]['function'].'()' : '';
+        $frames[] = ['function' => ''];
+        $collapse = false;
+
+        for ($j += $trace->numberingOffset - $i++; isset($frames[$i]); ++$i, --$j) {
+            $f = $frames[$i];
+            $call = isset($f['function']) ? (isset($f['class']) ? $f['class'].$f['type'] : '').$f['function'] : '???';
+
+            $frame = new FrameStub(
+                [
+                    'object' => $f['object'] ?? null,
+                    'class' => $f['class'] ?? null,
+                    'type' => $f['type'] ?? null,
+                    'function' => $f['function'] ?? null,
+                ] + $frames[$i - 1],
+                false,
+                true
+            );
+            $f = self::castFrameStub($frame, [], $frame, true);
+            if (isset($f[$prefix.'src'])) {
+                foreach ($f[$prefix.'src']->value as $label => $frame) {
+                    if (str_starts_with($label, "\0~collapse=0")) {
+                        if ($collapse) {
+                            $label = substr_replace($label, '1', 11, 1);
+                        } else {
+                            $collapse = true;
+                        }
+                    }
+                    $label = substr_replace($label, "title=Stack level $j.&", 2, 0);
+                }
+                $f = $frames[$i - 1];
+                if ($trace->keepArgs && !empty($f['args']) && $frame instanceof EnumStub) {
+                    $frame->value['arguments'] = new ArgsStub($f['args'], $f['function'] ?? null, $f['class'] ?? null);
+                }
+            } elseif ('???' !== $lastCall) {
+                $label = new ClassStub($lastCall);
+                if (isset($label->attr['ellipsis'])) {
+                    $label->attr['ellipsis'] += 2;
+                    $label = substr_replace($prefix, "ellipsis-type=class&ellipsis={$label->attr['ellipsis']}&ellipsis-tail=1&title=Stack level $j.", 2, 0).$label->value.'()';
+                } else {
+                    $label = substr_replace($prefix, "title=Stack level $j.", 2, 0).$label->value.'()';
+                }
+            } else {
+                $label = substr_replace($prefix, "title=Stack level $j.", 2, 0).$lastCall;
+            }
+            $a[substr_replace($label, sprintf('separator=%s&', $frame instanceof EnumStub ? ' ' : ':'), 2, 0)] = $frame;
+
+            $lastCall = $call;
+        }
+        if (null !== $trace->sliceLength) {
+            $a = \array_slice($a, 0, $trace->sliceLength, true);
+        }
+
+        return $a;
+    }
+
+    public static function castFrameStub(FrameStub $frame, array $a, Stub $stub, bool $isNested)
+    {
+        if (!$isNested) {
+            return $a;
+        }
+        $f = $frame->value;
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        if (isset($f['file'], $f['line'])) {
+            $cacheKey = $f;
+            unset($cacheKey['object'], $cacheKey['args']);
+            $cacheKey[] = self::$srcContext;
+            $cacheKey = implode('-', $cacheKey);
+
+            if (isset(self::$framesCache[$cacheKey])) {
+                $a[$prefix.'src'] = self::$framesCache[$cacheKey];
+            } else {
+                if (preg_match('/\((\d+)\)(?:\([\da-f]{32}\))? : (?:eval\(\)\'d code|runtime-created function)$/', $f['file'], $match)) {
+                    $f['file'] = substr($f['file'], 0, -\strlen($match[0]));
+                    $f['line'] = (int) $match[1];
+                }
+                $src = $f['line'];
+                $srcKey = $f['file'];
+                $ellipsis = new LinkStub($srcKey, 0);
+                $srcAttr = 'collapse='.(int) $ellipsis->inVendor;
+                $ellipsisTail = $ellipsis->attr['ellipsis-tail'] ?? 0;
+                $ellipsis = $ellipsis->attr['ellipsis'] ?? 0;
+
+                if (is_file($f['file']) && 0 <= self::$srcContext) {
+                    if (!empty($f['class']) && (is_subclass_of($f['class'], 'Twig\Template') || is_subclass_of($f['class'], 'Twig_Template')) && method_exists($f['class'], 'getDebugInfo')) {
+                        $template = $f['object'] ?? unserialize(sprintf('O:%d:"%s":0:{}', \strlen($f['class']), $f['class']));
+
+                        $ellipsis = 0;
+                        $templateSrc = method_exists($template, 'getSourceContext') ? $template->getSourceContext()->getCode() : (method_exists($template, 'getSource') ? $template->getSource() : '');
+                        $templateInfo = $template->getDebugInfo();
+                        if (isset($templateInfo[$f['line']])) {
+                            if (!method_exists($template, 'getSourceContext') || !is_file($templatePath = $template->getSourceContext()->getPath())) {
+                                $templatePath = null;
+                            }
+                            if ($templateSrc) {
+                                $src = self::extractSource($templateSrc, $templateInfo[$f['line']], self::$srcContext, 'twig', $templatePath, $f);
+                                $srcKey = ($templatePath ?: $template->getTemplateName()).':'.$templateInfo[$f['line']];
+                            }
+                        }
+                    }
+                    if ($srcKey == $f['file']) {
+                        $src = self::extractSource(file_get_contents($f['file']), $f['line'], self::$srcContext, 'php', $f['file'], $f);
+                        $srcKey .= ':'.$f['line'];
+                        if ($ellipsis) {
+                            $ellipsis += 1 + \strlen($f['line']);
+                        }
+                    }
+                    $srcAttr .= sprintf('&separator= &file=%s&line=%d', rawurlencode($f['file']), $f['line']);
+                } else {
+                    $srcAttr .= '&separator=:';
+                }
+                $srcAttr .= $ellipsis ? '&ellipsis-type=path&ellipsis='.$ellipsis.'&ellipsis-tail='.$ellipsisTail : '';
+                self::$framesCache[$cacheKey] = $a[$prefix.'src'] = new EnumStub(["\0~$srcAttr\0$srcKey" => $src]);
+            }
+        }
+
+        unset($a[$prefix.'args'], $a[$prefix.'line'], $a[$prefix.'file']);
+        if ($frame->inTraceStub) {
+            unset($a[$prefix.'class'], $a[$prefix.'type'], $a[$prefix.'function']);
+        }
+        foreach ($a as $k => $v) {
+            if (!$v) {
+                unset($a[$k]);
+            }
+        }
+        if ($frame->keepArgs && !empty($f['args'])) {
+            $a[$prefix.'arguments'] = new ArgsStub($f['args'], $f['function'], $f['class']);
+        }
+
+        return $a;
+    }
+
+    private static function filterExceptionArray(string $xClass, array $a, string $xPrefix, int $filter): array
+    {
+        if (isset($a[$xPrefix.'trace'])) {
+            $trace = $a[$xPrefix.'trace'];
+            unset($a[$xPrefix.'trace']); // Ensures the trace is always last
+        } else {
+            $trace = [];
+        }
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE) && $trace) {
+            if (isset($a[Caster::PREFIX_PROTECTED.'file'], $a[Caster::PREFIX_PROTECTED.'line'])) {
+                self::traceUnshift($trace, $xClass, $a[Caster::PREFIX_PROTECTED.'file'], $a[Caster::PREFIX_PROTECTED.'line']);
+            }
+            $a[Caster::PREFIX_VIRTUAL.'trace'] = new TraceStub($trace, self::$traceArgs);
+        }
+        if (empty($a[$xPrefix.'previous'])) {
+            unset($a[$xPrefix.'previous']);
+        }
+        unset($a[$xPrefix.'string'], $a[Caster::PREFIX_DYNAMIC.'xdebug_message'], $a[Caster::PREFIX_DYNAMIC.'__destructorException']);
+
+        if (isset($a[Caster::PREFIX_PROTECTED.'message']) && str_contains($a[Caster::PREFIX_PROTECTED.'message'], "@anonymous\0")) {
+            $a[Caster::PREFIX_PROTECTED.'message'] = preg_replace_callback('/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
+                return class_exists($m[0], false) ? (get_parent_class($m[0]) ?: key(class_implements($m[0])) ?: 'class').'@anonymous' : $m[0];
+            }, $a[Caster::PREFIX_PROTECTED.'message']);
+        }
+
+        if (isset($a[Caster::PREFIX_PROTECTED.'file'], $a[Caster::PREFIX_PROTECTED.'line'])) {
+            $a[Caster::PREFIX_PROTECTED.'file'] = new LinkStub($a[Caster::PREFIX_PROTECTED.'file'], $a[Caster::PREFIX_PROTECTED.'line']);
+        }
+
+        return $a;
+    }
+
+    private static function traceUnshift(array &$trace, ?string $class, string $file, int $line): void
+    {
+        if (isset($trace[0]['file'], $trace[0]['line']) && $trace[0]['file'] === $file && $trace[0]['line'] === $line) {
+            return;
+        }
+        array_unshift($trace, [
+            'function' => $class ? 'new '.$class : null,
+            'file' => $file,
+            'line' => $line,
+        ]);
+    }
+
+    private static function extractSource(string $srcLines, int $line, int $srcContext, string $lang, ?string $file, array $frame): EnumStub
+    {
+        $srcLines = explode("\n", $srcLines);
+        $src = [];
+
+        for ($i = $line - 1 - $srcContext; $i <= $line - 1 + $srcContext; ++$i) {
+            $src[] = ($srcLines[$i] ?? '')."\n";
+        }
+
+        if ($frame['function'] ?? false) {
+            $stub = new CutStub(new \stdClass());
+            $stub->class = (isset($frame['class']) ? $frame['class'].$frame['type'] : '').$frame['function'];
+            $stub->type = Stub::TYPE_OBJECT;
+            $stub->attr['cut_hash'] = true;
+            $stub->attr['file'] = $frame['file'];
+            $stub->attr['line'] = $frame['line'];
+
+            try {
+                $caller = isset($frame['class']) ? new \ReflectionMethod($frame['class'], $frame['function']) : new \ReflectionFunction($frame['function']);
+                $stub->class .= ReflectionCaster::getSignature(ReflectionCaster::castFunctionAbstract($caller, [], $stub, true, Caster::EXCLUDE_VERBOSE));
+
+                if ($f = $caller->getFileName()) {
+                    $stub->attr['file'] = $f;
+                    $stub->attr['line'] = $caller->getStartLine();
+                }
+            } catch (\ReflectionException $e) {
+                // ignore fake class/function
+            }
+
+            $srcLines = ["\0~separator=\0" => $stub];
+        } else {
+            $stub = null;
+            $srcLines = [];
+        }
+
+        $ltrim = 0;
+        do {
+            $pad = null;
+            for ($i = $srcContext << 1; $i >= 0; --$i) {
+                if (isset($src[$i][$ltrim]) && "\r" !== ($c = $src[$i][$ltrim]) && "\n" !== $c) {
+                    if (null === $pad) {
+                        $pad = $c;
+                    }
+                    if ((' ' !== $c && "\t" !== $c) || $pad !== $c) {
+                        break;
+                    }
+                }
+            }
+            ++$ltrim;
+        } while (0 > $i && null !== $pad);
+
+        --$ltrim;
+
+        foreach ($src as $i => $c) {
+            if ($ltrim) {
+                $c = isset($c[$ltrim]) && "\r" !== $c[$ltrim] ? substr($c, $ltrim) : ltrim($c, " \t");
+            }
+            $c = substr($c, 0, -1);
+            if ($i !== $srcContext) {
+                $c = new ConstStub('default', $c);
+            } else {
+                $c = new ConstStub($c, $stub ? 'in '.$stub->class : '');
+                if (null !== $file) {
+                    $c->attr['file'] = $file;
+                    $c->attr['line'] = $line;
+                }
+            }
+            $c->attr['lang'] = $lang;
+            $srcLines[sprintf("\0~separator=› &%d\0", $i + $line - $srcContext)] = $c;
+        }
+
+        return new EnumStub($srcLines);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/FrameStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/FrameStub.php
new file mode 100644
index 0000000..8786755
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/FrameStub.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+/**
+ * Represents a single backtrace frame as returned by debug_backtrace() or Exception->getTrace().
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class FrameStub extends EnumStub
+{
+    public $keepArgs;
+    public $inTraceStub;
+
+    public function __construct(array $frame, bool $keepArgs = true, bool $inTraceStub = false)
+    {
+        $this->value = $frame;
+        $this->keepArgs = $keepArgs;
+        $this->inTraceStub = $inTraceStub;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/GmpCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/GmpCaster.php
new file mode 100644
index 0000000..b018cc7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/GmpCaster.php
@@ -0,0 +1,32 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts GMP objects to array representation.
+ *
+ * @author Hamza Amrouche <hamza.simperfit@gmail.com>
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class GmpCaster
+{
+    public static function castGmp(\GMP $gmp, array $a, Stub $stub, bool $isNested, int $filter): array
+    {
+        $a[Caster::PREFIX_VIRTUAL.'value'] = new ConstStub(gmp_strval($gmp), gmp_strval($gmp));
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImagineCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImagineCaster.php
new file mode 100644
index 0000000..d1289da
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImagineCaster.php
@@ -0,0 +1,37 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Imagine\Image\ImageInterface;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Grégoire Pineau <lyrixx@lyrixx.info>
+ */
+final class ImagineCaster
+{
+    public static function castImage(ImageInterface $c, array $a, Stub $stub, bool $isNested): array
+    {
+        $imgData = $c->get('png');
+        if (\strlen($imgData) > 1 * 1000 * 1000) {
+            $a += [
+                Caster::PREFIX_VIRTUAL.'image' => new ConstStub($c->getSize()),
+            ];
+        } else {
+            $a += [
+                Caster::PREFIX_VIRTUAL.'image' => new ImgStub($imgData, 'image/png', $c->getSize()),
+            ];
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImgStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImgStub.php
new file mode 100644
index 0000000..a16681f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ImgStub.php
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+/**
+ * @author Grégoire Pineau <lyrixx@lyrixx.info>
+ */
+class ImgStub extends ConstStub
+{
+    public function __construct(string $data, string $contentType, string $size = '')
+    {
+        $this->value = '';
+        $this->attr['img-data'] = $data;
+        $this->attr['img-size'] = $size;
+        $this->attr['content-type'] = $contentType;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/IntlCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/IntlCaster.php
new file mode 100644
index 0000000..23b9d5d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/IntlCaster.php
@@ -0,0 +1,172 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ * @author Jan Schädlich <jan.schaedlich@sensiolabs.de>
+ *
+ * @final
+ */
+class IntlCaster
+{
+    public static function castMessageFormatter(\MessageFormatter $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'locale' => $c->getLocale(),
+            Caster::PREFIX_VIRTUAL.'pattern' => $c->getPattern(),
+        ];
+
+        return self::castError($c, $a);
+    }
+
+    public static function castNumberFormatter(\NumberFormatter $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'locale' => $c->getLocale(),
+            Caster::PREFIX_VIRTUAL.'pattern' => $c->getPattern(),
+        ];
+
+        if ($filter & Caster::EXCLUDE_VERBOSE) {
+            $stub->cut += 3;
+
+            return self::castError($c, $a);
+        }
+
+        $a += [
+            Caster::PREFIX_VIRTUAL.'attributes' => new EnumStub(
+                [
+                    'PARSE_INT_ONLY' => $c->getAttribute(\NumberFormatter::PARSE_INT_ONLY),
+                    'GROUPING_USED' => $c->getAttribute(\NumberFormatter::GROUPING_USED),
+                    'DECIMAL_ALWAYS_SHOWN' => $c->getAttribute(\NumberFormatter::DECIMAL_ALWAYS_SHOWN),
+                    'MAX_INTEGER_DIGITS' => $c->getAttribute(\NumberFormatter::MAX_INTEGER_DIGITS),
+                    'MIN_INTEGER_DIGITS' => $c->getAttribute(\NumberFormatter::MIN_INTEGER_DIGITS),
+                    'INTEGER_DIGITS' => $c->getAttribute(\NumberFormatter::INTEGER_DIGITS),
+                    'MAX_FRACTION_DIGITS' => $c->getAttribute(\NumberFormatter::MAX_FRACTION_DIGITS),
+                    'MIN_FRACTION_DIGITS' => $c->getAttribute(\NumberFormatter::MIN_FRACTION_DIGITS),
+                    'FRACTION_DIGITS' => $c->getAttribute(\NumberFormatter::FRACTION_DIGITS),
+                    'MULTIPLIER' => $c->getAttribute(\NumberFormatter::MULTIPLIER),
+                    'GROUPING_SIZE' => $c->getAttribute(\NumberFormatter::GROUPING_SIZE),
+                    'ROUNDING_MODE' => $c->getAttribute(\NumberFormatter::ROUNDING_MODE),
+                    'ROUNDING_INCREMENT' => $c->getAttribute(\NumberFormatter::ROUNDING_INCREMENT),
+                    'FORMAT_WIDTH' => $c->getAttribute(\NumberFormatter::FORMAT_WIDTH),
+                    'PADDING_POSITION' => $c->getAttribute(\NumberFormatter::PADDING_POSITION),
+                    'SECONDARY_GROUPING_SIZE' => $c->getAttribute(\NumberFormatter::SECONDARY_GROUPING_SIZE),
+                    'SIGNIFICANT_DIGITS_USED' => $c->getAttribute(\NumberFormatter::SIGNIFICANT_DIGITS_USED),
+                    'MIN_SIGNIFICANT_DIGITS' => $c->getAttribute(\NumberFormatter::MIN_SIGNIFICANT_DIGITS),
+                    'MAX_SIGNIFICANT_DIGITS' => $c->getAttribute(\NumberFormatter::MAX_SIGNIFICANT_DIGITS),
+                    'LENIENT_PARSE' => $c->getAttribute(\NumberFormatter::LENIENT_PARSE),
+                ]
+            ),
+            Caster::PREFIX_VIRTUAL.'text_attributes' => new EnumStub(
+                [
+                    'POSITIVE_PREFIX' => $c->getTextAttribute(\NumberFormatter::POSITIVE_PREFIX),
+                    'POSITIVE_SUFFIX' => $c->getTextAttribute(\NumberFormatter::POSITIVE_SUFFIX),
+                    'NEGATIVE_PREFIX' => $c->getTextAttribute(\NumberFormatter::NEGATIVE_PREFIX),
+                    'NEGATIVE_SUFFIX' => $c->getTextAttribute(\NumberFormatter::NEGATIVE_SUFFIX),
+                    'PADDING_CHARACTER' => $c->getTextAttribute(\NumberFormatter::PADDING_CHARACTER),
+                    'CURRENCY_CODE' => $c->getTextAttribute(\NumberFormatter::CURRENCY_CODE),
+                    'DEFAULT_RULESET' => $c->getTextAttribute(\NumberFormatter::DEFAULT_RULESET),
+                    'PUBLIC_RULESETS' => $c->getTextAttribute(\NumberFormatter::PUBLIC_RULESETS),
+                ]
+            ),
+            Caster::PREFIX_VIRTUAL.'symbols' => new EnumStub(
+                [
+                    'DECIMAL_SEPARATOR_SYMBOL' => $c->getSymbol(\NumberFormatter::DECIMAL_SEPARATOR_SYMBOL),
+                    'GROUPING_SEPARATOR_SYMBOL' => $c->getSymbol(\NumberFormatter::GROUPING_SEPARATOR_SYMBOL),
+                    'PATTERN_SEPARATOR_SYMBOL' => $c->getSymbol(\NumberFormatter::PATTERN_SEPARATOR_SYMBOL),
+                    'PERCENT_SYMBOL' => $c->getSymbol(\NumberFormatter::PERCENT_SYMBOL),
+                    'ZERO_DIGIT_SYMBOL' => $c->getSymbol(\NumberFormatter::ZERO_DIGIT_SYMBOL),
+                    'DIGIT_SYMBOL' => $c->getSymbol(\NumberFormatter::DIGIT_SYMBOL),
+                    'MINUS_SIGN_SYMBOL' => $c->getSymbol(\NumberFormatter::MINUS_SIGN_SYMBOL),
+                    'PLUS_SIGN_SYMBOL' => $c->getSymbol(\NumberFormatter::PLUS_SIGN_SYMBOL),
+                    'CURRENCY_SYMBOL' => $c->getSymbol(\NumberFormatter::CURRENCY_SYMBOL),
+                    'INTL_CURRENCY_SYMBOL' => $c->getSymbol(\NumberFormatter::INTL_CURRENCY_SYMBOL),
+                    'MONETARY_SEPARATOR_SYMBOL' => $c->getSymbol(\NumberFormatter::MONETARY_SEPARATOR_SYMBOL),
+                    'EXPONENTIAL_SYMBOL' => $c->getSymbol(\NumberFormatter::EXPONENTIAL_SYMBOL),
+                    'PERMILL_SYMBOL' => $c->getSymbol(\NumberFormatter::PERMILL_SYMBOL),
+                    'PAD_ESCAPE_SYMBOL' => $c->getSymbol(\NumberFormatter::PAD_ESCAPE_SYMBOL),
+                    'INFINITY_SYMBOL' => $c->getSymbol(\NumberFormatter::INFINITY_SYMBOL),
+                    'NAN_SYMBOL' => $c->getSymbol(\NumberFormatter::NAN_SYMBOL),
+                    'SIGNIFICANT_DIGIT_SYMBOL' => $c->getSymbol(\NumberFormatter::SIGNIFICANT_DIGIT_SYMBOL),
+                    'MONETARY_GROUPING_SEPARATOR_SYMBOL' => $c->getSymbol(\NumberFormatter::MONETARY_GROUPING_SEPARATOR_SYMBOL),
+                ]
+             ),
+        ];
+
+        return self::castError($c, $a);
+    }
+
+    public static function castIntlTimeZone(\IntlTimeZone $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'display_name' => $c->getDisplayName(),
+            Caster::PREFIX_VIRTUAL.'id' => $c->getID(),
+            Caster::PREFIX_VIRTUAL.'raw_offset' => $c->getRawOffset(),
+        ];
+
+        if ($c->useDaylightTime()) {
+            $a += [
+                Caster::PREFIX_VIRTUAL.'dst_savings' => $c->getDSTSavings(),
+            ];
+        }
+
+        return self::castError($c, $a);
+    }
+
+    public static function castIntlCalendar(\IntlCalendar $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'type' => $c->getType(),
+            Caster::PREFIX_VIRTUAL.'first_day_of_week' => $c->getFirstDayOfWeek(),
+            Caster::PREFIX_VIRTUAL.'minimal_days_in_first_week' => $c->getMinimalDaysInFirstWeek(),
+            Caster::PREFIX_VIRTUAL.'repeated_wall_time_option' => $c->getRepeatedWallTimeOption(),
+            Caster::PREFIX_VIRTUAL.'skipped_wall_time_option' => $c->getSkippedWallTimeOption(),
+            Caster::PREFIX_VIRTUAL.'time' => $c->getTime(),
+            Caster::PREFIX_VIRTUAL.'in_daylight_time' => $c->inDaylightTime(),
+            Caster::PREFIX_VIRTUAL.'is_lenient' => $c->isLenient(),
+            Caster::PREFIX_VIRTUAL.'time_zone' => ($filter & Caster::EXCLUDE_VERBOSE) ? new CutStub($c->getTimeZone()) : $c->getTimeZone(),
+        ];
+
+        return self::castError($c, $a);
+    }
+
+    public static function castIntlDateFormatter(\IntlDateFormatter $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'locale' => $c->getLocale(),
+            Caster::PREFIX_VIRTUAL.'pattern' => $c->getPattern(),
+            Caster::PREFIX_VIRTUAL.'calendar' => $c->getCalendar(),
+            Caster::PREFIX_VIRTUAL.'time_zone_id' => $c->getTimeZoneId(),
+            Caster::PREFIX_VIRTUAL.'time_type' => $c->getTimeType(),
+            Caster::PREFIX_VIRTUAL.'date_type' => $c->getDateType(),
+            Caster::PREFIX_VIRTUAL.'calendar_object' => ($filter & Caster::EXCLUDE_VERBOSE) ? new CutStub($c->getCalendarObject()) : $c->getCalendarObject(),
+            Caster::PREFIX_VIRTUAL.'time_zone' => ($filter & Caster::EXCLUDE_VERBOSE) ? new CutStub($c->getTimeZone()) : $c->getTimeZone(),
+        ];
+
+        return self::castError($c, $a);
+    }
+
+    private static function castError(object $c, array $a): array
+    {
+        if ($errorCode = $c->getErrorCode()) {
+            $a += [
+                Caster::PREFIX_VIRTUAL.'error_code' => $errorCode,
+                Caster::PREFIX_VIRTUAL.'error_message' => $c->getErrorMessage(),
+            ];
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/LinkStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/LinkStub.php
new file mode 100644
index 0000000..7e07803
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/LinkStub.php
@@ -0,0 +1,108 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+/**
+ * Represents a file or a URL.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class LinkStub extends ConstStub
+{
+    public $inVendor = false;
+
+    private static $vendorRoots;
+    private static $composerRoots;
+
+    public function __construct(string $label, int $line = 0, string $href = null)
+    {
+        $this->value = $label;
+
+        if (null === $href) {
+            $href = $label;
+        }
+        if (!\is_string($href)) {
+            return;
+        }
+        if (str_starts_with($href, 'file://')) {
+            if ($href === $label) {
+                $label = substr($label, 7);
+            }
+            $href = substr($href, 7);
+        } elseif (str_contains($href, '://')) {
+            $this->attr['href'] = $href;
+
+            return;
+        }
+        if (!is_file($href)) {
+            return;
+        }
+        if ($line) {
+            $this->attr['line'] = $line;
+        }
+        if ($label !== $this->attr['file'] = realpath($href) ?: $href) {
+            return;
+        }
+        if ($composerRoot = $this->getComposerRoot($href, $this->inVendor)) {
+            $this->attr['ellipsis'] = \strlen($href) - \strlen($composerRoot) + 1;
+            $this->attr['ellipsis-type'] = 'path';
+            $this->attr['ellipsis-tail'] = 1 + ($this->inVendor ? 2 + \strlen(implode('', \array_slice(explode(\DIRECTORY_SEPARATOR, substr($href, 1 - $this->attr['ellipsis'])), 0, 2))) : 0);
+        } elseif (3 < \count($ellipsis = explode(\DIRECTORY_SEPARATOR, $href))) {
+            $this->attr['ellipsis'] = 2 + \strlen(implode('', \array_slice($ellipsis, -2)));
+            $this->attr['ellipsis-type'] = 'path';
+            $this->attr['ellipsis-tail'] = 1;
+        }
+    }
+
+    private function getComposerRoot(string $file, bool &$inVendor)
+    {
+        if (null === self::$vendorRoots) {
+            self::$vendorRoots = [];
+
+            foreach (get_declared_classes() as $class) {
+                if ('C' === $class[0] && str_starts_with($class, 'ComposerAutoloaderInit')) {
+                    $r = new \ReflectionClass($class);
+                    $v = \dirname($r->getFileName(), 2);
+                    if (is_file($v.'/composer/installed.json')) {
+                        self::$vendorRoots[] = $v.\DIRECTORY_SEPARATOR;
+                    }
+                }
+            }
+        }
+        $inVendor = false;
+
+        if (isset(self::$composerRoots[$dir = \dirname($file)])) {
+            return self::$composerRoots[$dir];
+        }
+
+        foreach (self::$vendorRoots as $root) {
+            if ($inVendor = str_starts_with($file, $root)) {
+                return $root;
+            }
+        }
+
+        $parent = $dir;
+        while (!@is_file($parent.'/composer.json')) {
+            if (!@file_exists($parent)) {
+                // open_basedir restriction in effect
+                break;
+            }
+            if ($parent === \dirname($parent)) {
+                return self::$composerRoots[$dir] = false;
+            }
+
+            $parent = \dirname($parent);
+        }
+
+        return self::$composerRoots[$dir] = $parent.\DIRECTORY_SEPARATOR;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/MemcachedCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/MemcachedCaster.php
new file mode 100644
index 0000000..cfef19a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/MemcachedCaster.php
@@ -0,0 +1,81 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Jan Schädlich <jan.schaedlich@sensiolabs.de>
+ *
+ * @final
+ */
+class MemcachedCaster
+{
+    private static $optionConstants;
+    private static $defaultOptions;
+
+    public static function castMemcached(\Memcached $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'servers' => $c->getServerList(),
+            Caster::PREFIX_VIRTUAL.'options' => new EnumStub(
+                self::getNonDefaultOptions($c)
+            ),
+        ];
+
+        return $a;
+    }
+
+    private static function getNonDefaultOptions(\Memcached $c): array
+    {
+        self::$defaultOptions = self::$defaultOptions ?? self::discoverDefaultOptions();
+        self::$optionConstants = self::$optionConstants ?? self::getOptionConstants();
+
+        $nonDefaultOptions = [];
+        foreach (self::$optionConstants as $constantKey => $value) {
+            if (self::$defaultOptions[$constantKey] !== $option = $c->getOption($value)) {
+                $nonDefaultOptions[$constantKey] = $option;
+            }
+        }
+
+        return $nonDefaultOptions;
+    }
+
+    private static function discoverDefaultOptions(): array
+    {
+        $defaultMemcached = new \Memcached();
+        $defaultMemcached->addServer('127.0.0.1', 11211);
+
+        $defaultOptions = [];
+        self::$optionConstants = self::$optionConstants ?? self::getOptionConstants();
+
+        foreach (self::$optionConstants as $constantKey => $value) {
+            $defaultOptions[$constantKey] = $defaultMemcached->getOption($value);
+        }
+
+        return $defaultOptions;
+    }
+
+    private static function getOptionConstants(): array
+    {
+        $reflectedMemcached = new \ReflectionClass(\Memcached::class);
+
+        $optionConstants = [];
+        foreach ($reflectedMemcached->getConstants() as $constantKey => $value) {
+            if (str_starts_with($constantKey, 'OPT_')) {
+                $optionConstants[$constantKey] = $value;
+            }
+        }
+
+        return $optionConstants;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PdoCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PdoCaster.php
new file mode 100644
index 0000000..140473b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PdoCaster.php
@@ -0,0 +1,122 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts PDO related classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class PdoCaster
+{
+    private const PDO_ATTRIBUTES = [
+        'CASE' => [
+            \PDO::CASE_LOWER => 'LOWER',
+            \PDO::CASE_NATURAL => 'NATURAL',
+            \PDO::CASE_UPPER => 'UPPER',
+        ],
+        'ERRMODE' => [
+            \PDO::ERRMODE_SILENT => 'SILENT',
+            \PDO::ERRMODE_WARNING => 'WARNING',
+            \PDO::ERRMODE_EXCEPTION => 'EXCEPTION',
+        ],
+        'TIMEOUT',
+        'PREFETCH',
+        'AUTOCOMMIT',
+        'PERSISTENT',
+        'DRIVER_NAME',
+        'SERVER_INFO',
+        'ORACLE_NULLS' => [
+            \PDO::NULL_NATURAL => 'NATURAL',
+            \PDO::NULL_EMPTY_STRING => 'EMPTY_STRING',
+            \PDO::NULL_TO_STRING => 'TO_STRING',
+        ],
+        'CLIENT_VERSION',
+        'SERVER_VERSION',
+        'STATEMENT_CLASS',
+        'EMULATE_PREPARES',
+        'CONNECTION_STATUS',
+        'STRINGIFY_FETCHES',
+        'DEFAULT_FETCH_MODE' => [
+            \PDO::FETCH_ASSOC => 'ASSOC',
+            \PDO::FETCH_BOTH => 'BOTH',
+            \PDO::FETCH_LAZY => 'LAZY',
+            \PDO::FETCH_NUM => 'NUM',
+            \PDO::FETCH_OBJ => 'OBJ',
+        ],
+    ];
+
+    public static function castPdo(\PDO $c, array $a, Stub $stub, bool $isNested)
+    {
+        $attr = [];
+        $errmode = $c->getAttribute(\PDO::ATTR_ERRMODE);
+        $c->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
+
+        foreach (self::PDO_ATTRIBUTES as $k => $v) {
+            if (!isset($k[0])) {
+                $k = $v;
+                $v = [];
+            }
+
+            try {
+                $attr[$k] = 'ERRMODE' === $k ? $errmode : $c->getAttribute(\constant('PDO::ATTR_'.$k));
+                if ($v && isset($v[$attr[$k]])) {
+                    $attr[$k] = new ConstStub($v[$attr[$k]], $attr[$k]);
+                }
+            } catch (\Exception $e) {
+            }
+        }
+        if (isset($attr[$k = 'STATEMENT_CLASS'][1])) {
+            if ($attr[$k][1]) {
+                $attr[$k][1] = new ArgsStub($attr[$k][1], '__construct', $attr[$k][0]);
+            }
+            $attr[$k][0] = new ClassStub($attr[$k][0]);
+        }
+
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $a += [
+            $prefix.'inTransaction' => method_exists($c, 'inTransaction'),
+            $prefix.'errorInfo' => $c->errorInfo(),
+            $prefix.'attributes' => new EnumStub($attr),
+        ];
+
+        if ($a[$prefix.'inTransaction']) {
+            $a[$prefix.'inTransaction'] = $c->inTransaction();
+        } else {
+            unset($a[$prefix.'inTransaction']);
+        }
+
+        if (!isset($a[$prefix.'errorInfo'][1], $a[$prefix.'errorInfo'][2])) {
+            unset($a[$prefix.'errorInfo']);
+        }
+
+        $c->setAttribute(\PDO::ATTR_ERRMODE, $errmode);
+
+        return $a;
+    }
+
+    public static function castPdoStatement(\PDOStatement $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $a[$prefix.'errorInfo'] = $c->errorInfo();
+
+        if (!isset($a[$prefix.'errorInfo'][1], $a[$prefix.'errorInfo'][2])) {
+            unset($a[$prefix.'errorInfo']);
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PgSqlCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PgSqlCaster.php
new file mode 100644
index 0000000..d8e5b52
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/PgSqlCaster.php
@@ -0,0 +1,156 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts pqsql resources to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class PgSqlCaster
+{
+    private const PARAM_CODES = [
+        'server_encoding',
+        'client_encoding',
+        'is_superuser',
+        'session_authorization',
+        'DateStyle',
+        'TimeZone',
+        'IntervalStyle',
+        'integer_datetimes',
+        'application_name',
+        'standard_conforming_strings',
+    ];
+
+    private const TRANSACTION_STATUS = [
+        \PGSQL_TRANSACTION_IDLE => 'PGSQL_TRANSACTION_IDLE',
+        \PGSQL_TRANSACTION_ACTIVE => 'PGSQL_TRANSACTION_ACTIVE',
+        \PGSQL_TRANSACTION_INTRANS => 'PGSQL_TRANSACTION_INTRANS',
+        \PGSQL_TRANSACTION_INERROR => 'PGSQL_TRANSACTION_INERROR',
+        \PGSQL_TRANSACTION_UNKNOWN => 'PGSQL_TRANSACTION_UNKNOWN',
+    ];
+
+    private const RESULT_STATUS = [
+        \PGSQL_EMPTY_QUERY => 'PGSQL_EMPTY_QUERY',
+        \PGSQL_COMMAND_OK => 'PGSQL_COMMAND_OK',
+        \PGSQL_TUPLES_OK => 'PGSQL_TUPLES_OK',
+        \PGSQL_COPY_OUT => 'PGSQL_COPY_OUT',
+        \PGSQL_COPY_IN => 'PGSQL_COPY_IN',
+        \PGSQL_BAD_RESPONSE => 'PGSQL_BAD_RESPONSE',
+        \PGSQL_NONFATAL_ERROR => 'PGSQL_NONFATAL_ERROR',
+        \PGSQL_FATAL_ERROR => 'PGSQL_FATAL_ERROR',
+    ];
+
+    private const DIAG_CODES = [
+        'severity' => \PGSQL_DIAG_SEVERITY,
+        'sqlstate' => \PGSQL_DIAG_SQLSTATE,
+        'message' => \PGSQL_DIAG_MESSAGE_PRIMARY,
+        'detail' => \PGSQL_DIAG_MESSAGE_DETAIL,
+        'hint' => \PGSQL_DIAG_MESSAGE_HINT,
+        'statement position' => \PGSQL_DIAG_STATEMENT_POSITION,
+        'internal position' => \PGSQL_DIAG_INTERNAL_POSITION,
+        'internal query' => \PGSQL_DIAG_INTERNAL_QUERY,
+        'context' => \PGSQL_DIAG_CONTEXT,
+        'file' => \PGSQL_DIAG_SOURCE_FILE,
+        'line' => \PGSQL_DIAG_SOURCE_LINE,
+        'function' => \PGSQL_DIAG_SOURCE_FUNCTION,
+    ];
+
+    public static function castLargeObject($lo, array $a, Stub $stub, bool $isNested)
+    {
+        $a['seek position'] = pg_lo_tell($lo);
+
+        return $a;
+    }
+
+    public static function castLink($link, array $a, Stub $stub, bool $isNested)
+    {
+        $a['status'] = pg_connection_status($link);
+        $a['status'] = new ConstStub(\PGSQL_CONNECTION_OK === $a['status'] ? 'PGSQL_CONNECTION_OK' : 'PGSQL_CONNECTION_BAD', $a['status']);
+        $a['busy'] = pg_connection_busy($link);
+
+        $a['transaction'] = pg_transaction_status($link);
+        if (isset(self::TRANSACTION_STATUS[$a['transaction']])) {
+            $a['transaction'] = new ConstStub(self::TRANSACTION_STATUS[$a['transaction']], $a['transaction']);
+        }
+
+        $a['pid'] = pg_get_pid($link);
+        $a['last error'] = pg_last_error($link);
+        $a['last notice'] = pg_last_notice($link);
+        $a['host'] = pg_host($link);
+        $a['port'] = pg_port($link);
+        $a['dbname'] = pg_dbname($link);
+        $a['options'] = pg_options($link);
+        $a['version'] = pg_version($link);
+
+        foreach (self::PARAM_CODES as $v) {
+            if (false !== $s = pg_parameter_status($link, $v)) {
+                $a['param'][$v] = $s;
+            }
+        }
+
+        $a['param']['client_encoding'] = pg_client_encoding($link);
+        $a['param'] = new EnumStub($a['param']);
+
+        return $a;
+    }
+
+    public static function castResult($result, array $a, Stub $stub, bool $isNested)
+    {
+        $a['num rows'] = pg_num_rows($result);
+        $a['status'] = pg_result_status($result);
+        if (isset(self::RESULT_STATUS[$a['status']])) {
+            $a['status'] = new ConstStub(self::RESULT_STATUS[$a['status']], $a['status']);
+        }
+        $a['command-completion tag'] = pg_result_status($result, \PGSQL_STATUS_STRING);
+
+        if (-1 === $a['num rows']) {
+            foreach (self::DIAG_CODES as $k => $v) {
+                $a['error'][$k] = pg_result_error_field($result, $v);
+            }
+        }
+
+        $a['affected rows'] = pg_affected_rows($result);
+        $a['last OID'] = pg_last_oid($result);
+
+        $fields = pg_num_fields($result);
+
+        for ($i = 0; $i < $fields; ++$i) {
+            $field = [
+                'name' => pg_field_name($result, $i),
+                'table' => sprintf('%s (OID: %s)', pg_field_table($result, $i), pg_field_table($result, $i, true)),
+                'type' => sprintf('%s (OID: %s)', pg_field_type($result, $i), pg_field_type_oid($result, $i)),
+                'nullable' => (bool) pg_field_is_null($result, $i),
+                'storage' => pg_field_size($result, $i).' bytes',
+                'display' => pg_field_prtlen($result, $i).' chars',
+            ];
+            if (' (OID: )' === $field['table']) {
+                $field['table'] = null;
+            }
+            if ('-1 bytes' === $field['storage']) {
+                $field['storage'] = 'variable size';
+            } elseif ('1 bytes' === $field['storage']) {
+                $field['storage'] = '1 byte';
+            }
+            if ('1 chars' === $field['display']) {
+                $field['display'] = '1 char';
+            }
+            $a['fields'][] = new EnumStub($field);
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php
new file mode 100644
index 0000000..e712019
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php
@@ -0,0 +1,33 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use ProxyManager\Proxy\ProxyInterface;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class ProxyManagerCaster
+{
+    public static function castProxy(ProxyInterface $c, array $a, Stub $stub, bool $isNested)
+    {
+        if ($parent = get_parent_class($c)) {
+            $stub->class .= ' - '.$parent;
+        }
+        $stub->class .= '@proxy';
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php
new file mode 100644
index 0000000..db4bba8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php
@@ -0,0 +1,186 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use RdKafka\Conf;
+use RdKafka\Exception as RdKafkaException;
+use RdKafka\KafkaConsumer;
+use RdKafka\Message;
+use RdKafka\Metadata\Broker as BrokerMetadata;
+use RdKafka\Metadata\Collection as CollectionMetadata;
+use RdKafka\Metadata\Partition as PartitionMetadata;
+use RdKafka\Metadata\Topic as TopicMetadata;
+use RdKafka\Topic;
+use RdKafka\TopicConf;
+use RdKafka\TopicPartition;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts RdKafka related classes to array representation.
+ *
+ * @author Romain Neutron <imprec@gmail.com>
+ */
+class RdKafkaCaster
+{
+    public static function castKafkaConsumer(KafkaConsumer $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        try {
+            $assignment = $c->getAssignment();
+        } catch (RdKafkaException $e) {
+            $assignment = [];
+        }
+
+        $a += [
+            $prefix.'subscription' => $c->getSubscription(),
+            $prefix.'assignment' => $assignment,
+        ];
+
+        $a += self::extractMetadata($c);
+
+        return $a;
+    }
+
+    public static function castTopic(Topic $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'name' => $c->getName(),
+        ];
+
+        return $a;
+    }
+
+    public static function castTopicPartition(TopicPartition $c, array $a)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'offset' => $c->getOffset(),
+            $prefix.'partition' => $c->getPartition(),
+            $prefix.'topic' => $c->getTopic(),
+        ];
+
+        return $a;
+    }
+
+    public static function castMessage(Message $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'errstr' => $c->errstr(),
+        ];
+
+        return $a;
+    }
+
+    public static function castConf(Conf $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        foreach ($c->dump() as $key => $value) {
+            $a[$prefix.$key] = $value;
+        }
+
+        return $a;
+    }
+
+    public static function castTopicConf(TopicConf $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        foreach ($c->dump() as $key => $value) {
+            $a[$prefix.$key] = $value;
+        }
+
+        return $a;
+    }
+
+    public static function castRdKafka(\RdKafka $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'out_q_len' => $c->getOutQLen(),
+        ];
+
+        $a += self::extractMetadata($c);
+
+        return $a;
+    }
+
+    public static function castCollectionMetadata(CollectionMetadata $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a += iterator_to_array($c);
+
+        return $a;
+    }
+
+    public static function castTopicMetadata(TopicMetadata $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'name' => $c->getTopic(),
+            $prefix.'partitions' => $c->getPartitions(),
+        ];
+
+        return $a;
+    }
+
+    public static function castPartitionMetadata(PartitionMetadata $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'id' => $c->getId(),
+            $prefix.'err' => $c->getErr(),
+            $prefix.'leader' => $c->getLeader(),
+        ];
+
+        return $a;
+    }
+
+    public static function castBrokerMetadata(BrokerMetadata $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        $a += [
+            $prefix.'id' => $c->getId(),
+            $prefix.'host' => $c->getHost(),
+            $prefix.'port' => $c->getPort(),
+        ];
+
+        return $a;
+    }
+
+    private static function extractMetadata($c)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        try {
+            $m = $c->getMetadata(true, null, 500);
+        } catch (RdKafkaException $e) {
+            return [];
+        }
+
+        return [
+            $prefix.'orig_broker_id' => $m->getOrigBrokerId(),
+            $prefix.'orig_broker_name' => $m->getOrigBrokerName(),
+            $prefix.'brokers' => $m->getBrokers(),
+            $prefix.'topics' => $m->getTopics(),
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RedisCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RedisCaster.php
new file mode 100644
index 0000000..8f97eaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/RedisCaster.php
@@ -0,0 +1,152 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts Redis class from ext-redis to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class RedisCaster
+{
+    private const SERIALIZERS = [
+        \Redis::SERIALIZER_NONE => 'NONE',
+        \Redis::SERIALIZER_PHP => 'PHP',
+        2 => 'IGBINARY', // Optional Redis::SERIALIZER_IGBINARY
+    ];
+
+    private const MODES = [
+        \Redis::ATOMIC => 'ATOMIC',
+        \Redis::MULTI => 'MULTI',
+        \Redis::PIPELINE => 'PIPELINE',
+    ];
+
+    private const COMPRESSION_MODES = [
+        0 => 'NONE', // Redis::COMPRESSION_NONE
+        1 => 'LZF',  // Redis::COMPRESSION_LZF
+    ];
+
+    private const FAILOVER_OPTIONS = [
+        \RedisCluster::FAILOVER_NONE => 'NONE',
+        \RedisCluster::FAILOVER_ERROR => 'ERROR',
+        \RedisCluster::FAILOVER_DISTRIBUTE => 'DISTRIBUTE',
+        \RedisCluster::FAILOVER_DISTRIBUTE_SLAVES => 'DISTRIBUTE_SLAVES',
+    ];
+
+    public static function castRedis(\Redis $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        if (!$connected = $c->isConnected()) {
+            return $a + [
+                $prefix.'isConnected' => $connected,
+            ];
+        }
+
+        $mode = $c->getMode();
+
+        return $a + [
+            $prefix.'isConnected' => $connected,
+            $prefix.'host' => $c->getHost(),
+            $prefix.'port' => $c->getPort(),
+            $prefix.'auth' => $c->getAuth(),
+            $prefix.'mode' => isset(self::MODES[$mode]) ? new ConstStub(self::MODES[$mode], $mode) : $mode,
+            $prefix.'dbNum' => $c->getDbNum(),
+            $prefix.'timeout' => $c->getTimeout(),
+            $prefix.'lastError' => $c->getLastError(),
+            $prefix.'persistentId' => $c->getPersistentID(),
+            $prefix.'options' => self::getRedisOptions($c),
+        ];
+    }
+
+    public static function castRedisArray(\RedisArray $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        return $a + [
+            $prefix.'hosts' => $c->_hosts(),
+            $prefix.'function' => ClassStub::wrapCallable($c->_function()),
+            $prefix.'lastError' => $c->getLastError(),
+            $prefix.'options' => self::getRedisOptions($c),
+        ];
+    }
+
+    public static function castRedisCluster(\RedisCluster $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $failover = $c->getOption(\RedisCluster::OPT_SLAVE_FAILOVER);
+
+        $a += [
+            $prefix.'_masters' => $c->_masters(),
+            $prefix.'_redir' => $c->_redir(),
+            $prefix.'mode' => new ConstStub($c->getMode() ? 'MULTI' : 'ATOMIC', $c->getMode()),
+            $prefix.'lastError' => $c->getLastError(),
+            $prefix.'options' => self::getRedisOptions($c, [
+                'SLAVE_FAILOVER' => isset(self::FAILOVER_OPTIONS[$failover]) ? new ConstStub(self::FAILOVER_OPTIONS[$failover], $failover) : $failover,
+            ]),
+        ];
+
+        return $a;
+    }
+
+    /**
+     * @param \Redis|\RedisArray|\RedisCluster $redis
+     */
+    private static function getRedisOptions($redis, array $options = []): EnumStub
+    {
+        $serializer = $redis->getOption(\Redis::OPT_SERIALIZER);
+        if (\is_array($serializer)) {
+            foreach ($serializer as &$v) {
+                if (isset(self::SERIALIZERS[$v])) {
+                    $v = new ConstStub(self::SERIALIZERS[$v], $v);
+                }
+            }
+        } elseif (isset(self::SERIALIZERS[$serializer])) {
+            $serializer = new ConstStub(self::SERIALIZERS[$serializer], $serializer);
+        }
+
+        $compression = \defined('Redis::OPT_COMPRESSION') ? $redis->getOption(\Redis::OPT_COMPRESSION) : 0;
+        if (\is_array($compression)) {
+            foreach ($compression as &$v) {
+                if (isset(self::COMPRESSION_MODES[$v])) {
+                    $v = new ConstStub(self::COMPRESSION_MODES[$v], $v);
+                }
+            }
+        } elseif (isset(self::COMPRESSION_MODES[$compression])) {
+            $compression = new ConstStub(self::COMPRESSION_MODES[$compression], $compression);
+        }
+
+        $retry = \defined('Redis::OPT_SCAN') ? $redis->getOption(\Redis::OPT_SCAN) : 0;
+        if (\is_array($retry)) {
+            foreach ($retry as &$v) {
+                $v = new ConstStub($v ? 'RETRY' : 'NORETRY', $v);
+            }
+        } else {
+            $retry = new ConstStub($retry ? 'RETRY' : 'NORETRY', $retry);
+        }
+
+        $options += [
+            'TCP_KEEPALIVE' => \defined('Redis::OPT_TCP_KEEPALIVE') ? $redis->getOption(\Redis::OPT_TCP_KEEPALIVE) : 0,
+            'READ_TIMEOUT' => $redis->getOption(\Redis::OPT_READ_TIMEOUT),
+            'COMPRESSION' => $compression,
+            'SERIALIZER' => $serializer,
+            'PREFIX' => $redis->getOption(\Redis::OPT_PREFIX),
+            'SCAN' => $retry,
+        ];
+
+        return new EnumStub($options);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ReflectionCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ReflectionCaster.php
new file mode 100644
index 0000000..1781f46
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ReflectionCaster.php
@@ -0,0 +1,438 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts Reflector related classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class ReflectionCaster
+{
+    public const UNSET_CLOSURE_FILE_INFO = ['Closure' => __CLASS__.'::unsetClosureFileInfo'];
+
+    private const EXTRA_MAP = [
+        'docComment' => 'getDocComment',
+        'extension' => 'getExtensionName',
+        'isDisabled' => 'isDisabled',
+        'isDeprecated' => 'isDeprecated',
+        'isInternal' => 'isInternal',
+        'isUserDefined' => 'isUserDefined',
+        'isGenerator' => 'isGenerator',
+        'isVariadic' => 'isVariadic',
+    ];
+
+    public static function castClosure(\Closure $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $c = new \ReflectionFunction($c);
+
+        $a = static::castFunctionAbstract($c, $a, $stub, $isNested, $filter);
+
+        if (!str_contains($c->name, '{closure}')) {
+            $stub->class = isset($a[$prefix.'class']) ? $a[$prefix.'class']->value.'::'.$c->name : $c->name;
+            unset($a[$prefix.'class']);
+        }
+        unset($a[$prefix.'extra']);
+
+        $stub->class .= self::getSignature($a);
+
+        if ($f = $c->getFileName()) {
+            $stub->attr['file'] = $f;
+            $stub->attr['line'] = $c->getStartLine();
+        }
+
+        unset($a[$prefix.'parameters']);
+
+        if ($filter & Caster::EXCLUDE_VERBOSE) {
+            $stub->cut += ($c->getFileName() ? 2 : 0) + \count($a);
+
+            return [];
+        }
+
+        if ($f) {
+            $a[$prefix.'file'] = new LinkStub($f, $c->getStartLine());
+            $a[$prefix.'line'] = $c->getStartLine().' to '.$c->getEndLine();
+        }
+
+        return $a;
+    }
+
+    public static function unsetClosureFileInfo(\Closure $c, array $a)
+    {
+        unset($a[Caster::PREFIX_VIRTUAL.'file'], $a[Caster::PREFIX_VIRTUAL.'line']);
+
+        return $a;
+    }
+
+    public static function castGenerator(\Generator $c, array $a, Stub $stub, bool $isNested)
+    {
+        // Cannot create ReflectionGenerator based on a terminated Generator
+        try {
+            $reflectionGenerator = new \ReflectionGenerator($c);
+        } catch (\Exception $e) {
+            $a[Caster::PREFIX_VIRTUAL.'closed'] = true;
+
+            return $a;
+        }
+
+        return self::castReflectionGenerator($reflectionGenerator, $a, $stub, $isNested);
+    }
+
+    public static function castType(\ReflectionType $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        if ($c instanceof \ReflectionNamedType || \PHP_VERSION_ID < 80000) {
+            $a += [
+                $prefix.'name' => $c instanceof \ReflectionNamedType ? $c->getName() : (string) $c,
+                $prefix.'allowsNull' => $c->allowsNull(),
+                $prefix.'isBuiltin' => $c->isBuiltin(),
+            ];
+        } elseif ($c instanceof \ReflectionUnionType || $c instanceof \ReflectionIntersectionType) {
+            $a[$prefix.'allowsNull'] = $c->allowsNull();
+            self::addMap($a, $c, [
+                'types' => 'getTypes',
+            ]);
+        } else {
+            $a[$prefix.'allowsNull'] = $c->allowsNull();
+        }
+
+        return $a;
+    }
+
+    public static function castAttribute(\ReflectionAttribute $c, array $a, Stub $stub, bool $isNested)
+    {
+        self::addMap($a, $c, [
+            'name' => 'getName',
+            'arguments' => 'getArguments',
+        ]);
+
+        return $a;
+    }
+
+    public static function castReflectionGenerator(\ReflectionGenerator $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        if ($c->getThis()) {
+            $a[$prefix.'this'] = new CutStub($c->getThis());
+        }
+        $function = $c->getFunction();
+        $frame = [
+            'class' => $function->class ?? null,
+            'type' => isset($function->class) ? ($function->isStatic() ? '::' : '->') : null,
+            'function' => $function->name,
+            'file' => $c->getExecutingFile(),
+            'line' => $c->getExecutingLine(),
+        ];
+        if ($trace = $c->getTrace(\DEBUG_BACKTRACE_IGNORE_ARGS)) {
+            $function = new \ReflectionGenerator($c->getExecutingGenerator());
+            array_unshift($trace, [
+                'function' => 'yield',
+                'file' => $function->getExecutingFile(),
+                'line' => $function->getExecutingLine() - 1,
+            ]);
+            $trace[] = $frame;
+            $a[$prefix.'trace'] = new TraceStub($trace, false, 0, -1, -1);
+        } else {
+            $function = new FrameStub($frame, false, true);
+            $function = ExceptionCaster::castFrameStub($function, [], $function, true);
+            $a[$prefix.'executing'] = $function[$prefix.'src'];
+        }
+
+        $a[Caster::PREFIX_VIRTUAL.'closed'] = false;
+
+        return $a;
+    }
+
+    public static function castClass(\ReflectionClass $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        if ($n = \Reflection::getModifierNames($c->getModifiers())) {
+            $a[$prefix.'modifiers'] = implode(' ', $n);
+        }
+
+        self::addMap($a, $c, [
+            'extends' => 'getParentClass',
+            'implements' => 'getInterfaceNames',
+            'constants' => 'getReflectionConstants',
+        ]);
+
+        foreach ($c->getProperties() as $n) {
+            $a[$prefix.'properties'][$n->name] = $n;
+        }
+
+        foreach ($c->getMethods() as $n) {
+            $a[$prefix.'methods'][$n->name] = $n;
+        }
+
+        self::addAttributes($a, $c, $prefix);
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE) && !$isNested) {
+            self::addExtra($a, $c);
+        }
+
+        return $a;
+    }
+
+    public static function castFunctionAbstract(\ReflectionFunctionAbstract $c, array $a, Stub $stub, bool $isNested, int $filter = 0)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        self::addMap($a, $c, [
+            'returnsReference' => 'returnsReference',
+            'returnType' => 'getReturnType',
+            'class' => 'getClosureScopeClass',
+            'this' => 'getClosureThis',
+        ]);
+
+        if (isset($a[$prefix.'returnType'])) {
+            $v = $a[$prefix.'returnType'];
+            $v = $v instanceof \ReflectionNamedType ? $v->getName() : (string) $v;
+            $a[$prefix.'returnType'] = new ClassStub($a[$prefix.'returnType'] instanceof \ReflectionNamedType && $a[$prefix.'returnType']->allowsNull() && 'mixed' !== $v ? '?'.$v : $v, [class_exists($v, false) || interface_exists($v, false) || trait_exists($v, false) ? $v : '', '']);
+        }
+        if (isset($a[$prefix.'class'])) {
+            $a[$prefix.'class'] = new ClassStub($a[$prefix.'class']);
+        }
+        if (isset($a[$prefix.'this'])) {
+            $a[$prefix.'this'] = new CutStub($a[$prefix.'this']);
+        }
+
+        foreach ($c->getParameters() as $v) {
+            $k = '$'.$v->name;
+            if ($v->isVariadic()) {
+                $k = '...'.$k;
+            }
+            if ($v->isPassedByReference()) {
+                $k = '&'.$k;
+            }
+            $a[$prefix.'parameters'][$k] = $v;
+        }
+        if (isset($a[$prefix.'parameters'])) {
+            $a[$prefix.'parameters'] = new EnumStub($a[$prefix.'parameters']);
+        }
+
+        self::addAttributes($a, $c, $prefix);
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE) && $v = $c->getStaticVariables()) {
+            foreach ($v as $k => &$v) {
+                if (\is_object($v)) {
+                    $a[$prefix.'use']['$'.$k] = new CutStub($v);
+                } else {
+                    $a[$prefix.'use']['$'.$k] = &$v;
+                }
+            }
+            unset($v);
+            $a[$prefix.'use'] = new EnumStub($a[$prefix.'use']);
+        }
+
+        if (!($filter & Caster::EXCLUDE_VERBOSE) && !$isNested) {
+            self::addExtra($a, $c);
+        }
+
+        return $a;
+    }
+
+    public static function castClassConstant(\ReflectionClassConstant $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'modifiers'] = implode(' ', \Reflection::getModifierNames($c->getModifiers()));
+        $a[Caster::PREFIX_VIRTUAL.'value'] = $c->getValue();
+
+        self::addAttributes($a, $c);
+
+        return $a;
+    }
+
+    public static function castMethod(\ReflectionMethod $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'modifiers'] = implode(' ', \Reflection::getModifierNames($c->getModifiers()));
+
+        return $a;
+    }
+
+    public static function castParameter(\ReflectionParameter $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        self::addMap($a, $c, [
+            'position' => 'getPosition',
+            'isVariadic' => 'isVariadic',
+            'byReference' => 'isPassedByReference',
+            'allowsNull' => 'allowsNull',
+        ]);
+
+        self::addAttributes($a, $c, $prefix);
+
+        if ($v = $c->getType()) {
+            $a[$prefix.'typeHint'] = $v instanceof \ReflectionNamedType ? $v->getName() : (string) $v;
+        }
+
+        if (isset($a[$prefix.'typeHint'])) {
+            $v = $a[$prefix.'typeHint'];
+            $a[$prefix.'typeHint'] = new ClassStub($v, [class_exists($v, false) || interface_exists($v, false) || trait_exists($v, false) ? $v : '', '']);
+        } else {
+            unset($a[$prefix.'allowsNull']);
+        }
+
+        try {
+            $a[$prefix.'default'] = $v = $c->getDefaultValue();
+            if ($c->isDefaultValueConstant()) {
+                $a[$prefix.'default'] = new ConstStub($c->getDefaultValueConstantName(), $v);
+            }
+            if (null === $v) {
+                unset($a[$prefix.'allowsNull']);
+            }
+        } catch (\ReflectionException $e) {
+        }
+
+        return $a;
+    }
+
+    public static function castProperty(\ReflectionProperty $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'modifiers'] = implode(' ', \Reflection::getModifierNames($c->getModifiers()));
+
+        self::addAttributes($a, $c);
+        self::addExtra($a, $c);
+
+        return $a;
+    }
+
+    public static function castReference(\ReflectionReference $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'id'] = $c->getId();
+
+        return $a;
+    }
+
+    public static function castExtension(\ReflectionExtension $c, array $a, Stub $stub, bool $isNested)
+    {
+        self::addMap($a, $c, [
+            'version' => 'getVersion',
+            'dependencies' => 'getDependencies',
+            'iniEntries' => 'getIniEntries',
+            'isPersistent' => 'isPersistent',
+            'isTemporary' => 'isTemporary',
+            'constants' => 'getConstants',
+            'functions' => 'getFunctions',
+            'classes' => 'getClasses',
+        ]);
+
+        return $a;
+    }
+
+    public static function castZendExtension(\ReflectionZendExtension $c, array $a, Stub $stub, bool $isNested)
+    {
+        self::addMap($a, $c, [
+            'version' => 'getVersion',
+            'author' => 'getAuthor',
+            'copyright' => 'getCopyright',
+            'url' => 'getURL',
+        ]);
+
+        return $a;
+    }
+
+    public static function getSignature(array $a)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $signature = '';
+
+        if (isset($a[$prefix.'parameters'])) {
+            foreach ($a[$prefix.'parameters']->value as $k => $param) {
+                $signature .= ', ';
+                if ($type = $param->getType()) {
+                    if (!$type instanceof \ReflectionNamedType) {
+                        $signature .= $type.' ';
+                    } else {
+                        if (!$param->isOptional() && $param->allowsNull() && 'mixed' !== $type->getName()) {
+                            $signature .= '?';
+                        }
+                        $signature .= substr(strrchr('\\'.$type->getName(), '\\'), 1).' ';
+                    }
+                }
+                $signature .= $k;
+
+                if (!$param->isDefaultValueAvailable()) {
+                    continue;
+                }
+                $v = $param->getDefaultValue();
+                $signature .= ' = ';
+
+                if ($param->isDefaultValueConstant()) {
+                    $signature .= substr(strrchr('\\'.$param->getDefaultValueConstantName(), '\\'), 1);
+                } elseif (null === $v) {
+                    $signature .= 'null';
+                } elseif (\is_array($v)) {
+                    $signature .= $v ? '[…'.\count($v).']' : '[]';
+                } elseif (\is_string($v)) {
+                    $signature .= 10 > \strlen($v) && !str_contains($v, '\\') ? "'{$v}'" : "'…".\strlen($v)."'";
+                } elseif (\is_bool($v)) {
+                    $signature .= $v ? 'true' : 'false';
+                } else {
+                    $signature .= $v;
+                }
+            }
+        }
+        $signature = (empty($a[$prefix.'returnsReference']) ? '' : '&').'('.substr($signature, 2).')';
+
+        if (isset($a[$prefix.'returnType'])) {
+            $signature .= ': '.substr(strrchr('\\'.$a[$prefix.'returnType'], '\\'), 1);
+        }
+
+        return $signature;
+    }
+
+    private static function addExtra(array &$a, \Reflector $c)
+    {
+        $x = isset($a[Caster::PREFIX_VIRTUAL.'extra']) ? $a[Caster::PREFIX_VIRTUAL.'extra']->value : [];
+
+        if (method_exists($c, 'getFileName') && $m = $c->getFileName()) {
+            $x['file'] = new LinkStub($m, $c->getStartLine());
+            $x['line'] = $c->getStartLine().' to '.$c->getEndLine();
+        }
+
+        self::addMap($x, $c, self::EXTRA_MAP, '');
+
+        if ($x) {
+            $a[Caster::PREFIX_VIRTUAL.'extra'] = new EnumStub($x);
+        }
+    }
+
+    private static function addMap(array &$a, object $c, array $map, string $prefix = Caster::PREFIX_VIRTUAL)
+    {
+        foreach ($map as $k => $m) {
+            if (\PHP_VERSION_ID >= 80000 && 'isDisabled' === $k) {
+                continue;
+            }
+
+            if (method_exists($c, $m) && false !== ($m = $c->$m()) && null !== $m) {
+                $a[$prefix.$k] = $m instanceof \Reflector ? $m->name : $m;
+            }
+        }
+    }
+
+    private static function addAttributes(array &$a, \Reflector $c, string $prefix = Caster::PREFIX_VIRTUAL): void
+    {
+        if (\PHP_VERSION_ID >= 80000) {
+            foreach ($c->getAttributes() as $n) {
+                $a[$prefix.'attributes'][] = $n;
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ResourceCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ResourceCaster.php
new file mode 100644
index 0000000..6ae9085
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/ResourceCaster.php
@@ -0,0 +1,105 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts common resource types to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class ResourceCaster
+{
+    /**
+     * @param \CurlHandle|resource $h
+     *
+     * @return array
+     */
+    public static function castCurl($h, array $a, Stub $stub, bool $isNested)
+    {
+        return curl_getinfo($h);
+    }
+
+    public static function castDba($dba, array $a, Stub $stub, bool $isNested)
+    {
+        $list = dba_list();
+        $a['file'] = $list[(int) $dba];
+
+        return $a;
+    }
+
+    public static function castProcess($process, array $a, Stub $stub, bool $isNested)
+    {
+        return proc_get_status($process);
+    }
+
+    public static function castStream($stream, array $a, Stub $stub, bool $isNested)
+    {
+        $a = stream_get_meta_data($stream) + static::castStreamContext($stream, $a, $stub, $isNested);
+        if ($a['uri'] ?? false) {
+            $a['uri'] = new LinkStub($a['uri']);
+        }
+
+        return $a;
+    }
+
+    public static function castStreamContext($stream, array $a, Stub $stub, bool $isNested)
+    {
+        return @stream_context_get_params($stream) ?: $a;
+    }
+
+    public static function castGd($gd, array $a, Stub $stub, bool $isNested)
+    {
+        $a['size'] = imagesx($gd).'x'.imagesy($gd);
+        $a['trueColor'] = imageistruecolor($gd);
+
+        return $a;
+    }
+
+    public static function castMysqlLink($h, array $a, Stub $stub, bool $isNested)
+    {
+        $a['host'] = mysql_get_host_info($h);
+        $a['protocol'] = mysql_get_proto_info($h);
+        $a['server'] = mysql_get_server_info($h);
+
+        return $a;
+    }
+
+    public static function castOpensslX509($h, array $a, Stub $stub, bool $isNested)
+    {
+        $stub->cut = -1;
+        $info = openssl_x509_parse($h, false);
+
+        $pin = openssl_pkey_get_public($h);
+        $pin = openssl_pkey_get_details($pin)['key'];
+        $pin = \array_slice(explode("\n", $pin), 1, -2);
+        $pin = base64_decode(implode('', $pin));
+        $pin = base64_encode(hash('sha256', $pin, true));
+
+        $a += [
+            'subject' => new EnumStub(array_intersect_key($info['subject'], ['organizationName' => true, 'commonName' => true])),
+            'issuer' => new EnumStub(array_intersect_key($info['issuer'], ['organizationName' => true, 'commonName' => true])),
+            'expiry' => new ConstStub(date(\DateTime::ISO8601, $info['validTo_time_t']), $info['validTo_time_t']),
+            'fingerprint' => new EnumStub([
+                'md5' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'md5')), 2, ':', true)),
+                'sha1' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'sha1')), 2, ':', true)),
+                'sha256' => new ConstStub(wordwrap(strtoupper(openssl_x509_fingerprint($h, 'sha256')), 2, ':', true)),
+                'pin-sha256' => new ConstStub($pin),
+            ]),
+        ];
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SplCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SplCaster.php
new file mode 100644
index 0000000..07f4451
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SplCaster.php
@@ -0,0 +1,245 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts SPL related classes to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class SplCaster
+{
+    private const SPL_FILE_OBJECT_FLAGS = [
+        \SplFileObject::DROP_NEW_LINE => 'DROP_NEW_LINE',
+        \SplFileObject::READ_AHEAD => 'READ_AHEAD',
+        \SplFileObject::SKIP_EMPTY => 'SKIP_EMPTY',
+        \SplFileObject::READ_CSV => 'READ_CSV',
+    ];
+
+    public static function castArrayObject(\ArrayObject $c, array $a, Stub $stub, bool $isNested)
+    {
+        return self::castSplArray($c, $a, $stub, $isNested);
+    }
+
+    public static function castArrayIterator(\ArrayIterator $c, array $a, Stub $stub, bool $isNested)
+    {
+        return self::castSplArray($c, $a, $stub, $isNested);
+    }
+
+    public static function castHeap(\Iterator $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'heap' => iterator_to_array(clone $c),
+        ];
+
+        return $a;
+    }
+
+    public static function castDoublyLinkedList(\SplDoublyLinkedList $c, array $a, Stub $stub, bool $isNested)
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $mode = $c->getIteratorMode();
+        $c->setIteratorMode(\SplDoublyLinkedList::IT_MODE_KEEP | $mode & ~\SplDoublyLinkedList::IT_MODE_DELETE);
+
+        $a += [
+            $prefix.'mode' => new ConstStub((($mode & \SplDoublyLinkedList::IT_MODE_LIFO) ? 'IT_MODE_LIFO' : 'IT_MODE_FIFO').' | '.(($mode & \SplDoublyLinkedList::IT_MODE_DELETE) ? 'IT_MODE_DELETE' : 'IT_MODE_KEEP'), $mode),
+            $prefix.'dllist' => iterator_to_array($c),
+        ];
+        $c->setIteratorMode($mode);
+
+        return $a;
+    }
+
+    public static function castFileInfo(\SplFileInfo $c, array $a, Stub $stub, bool $isNested)
+    {
+        static $map = [
+            'path' => 'getPath',
+            'filename' => 'getFilename',
+            'basename' => 'getBasename',
+            'pathname' => 'getPathname',
+            'extension' => 'getExtension',
+            'realPath' => 'getRealPath',
+            'aTime' => 'getATime',
+            'mTime' => 'getMTime',
+            'cTime' => 'getCTime',
+            'inode' => 'getInode',
+            'size' => 'getSize',
+            'perms' => 'getPerms',
+            'owner' => 'getOwner',
+            'group' => 'getGroup',
+            'type' => 'getType',
+            'writable' => 'isWritable',
+            'readable' => 'isReadable',
+            'executable' => 'isExecutable',
+            'file' => 'isFile',
+            'dir' => 'isDir',
+            'link' => 'isLink',
+            'linkTarget' => 'getLinkTarget',
+        ];
+
+        $prefix = Caster::PREFIX_VIRTUAL;
+        unset($a["\0SplFileInfo\0fileName"]);
+        unset($a["\0SplFileInfo\0pathName"]);
+
+        if (\PHP_VERSION_ID < 80000) {
+            if (false === $c->getPathname()) {
+                $a[$prefix.'⚠'] = 'The parent constructor was not called: the object is in an invalid state';
+
+                return $a;
+            }
+        } else {
+            try {
+                $c->isReadable();
+            } catch (\RuntimeException $e) {
+                if ('Object not initialized' !== $e->getMessage()) {
+                    throw $e;
+                }
+
+                $a[$prefix.'⚠'] = 'The parent constructor was not called: the object is in an invalid state';
+
+                return $a;
+            } catch (\Error $e) {
+                if ('Object not initialized' !== $e->getMessage()) {
+                    throw $e;
+                }
+
+                $a[$prefix.'⚠'] = 'The parent constructor was not called: the object is in an invalid state';
+
+                return $a;
+            }
+        }
+
+        foreach ($map as $key => $accessor) {
+            try {
+                $a[$prefix.$key] = $c->$accessor();
+            } catch (\Exception $e) {
+            }
+        }
+
+        if ($a[$prefix.'realPath'] ?? false) {
+            $a[$prefix.'realPath'] = new LinkStub($a[$prefix.'realPath']);
+        }
+
+        if (isset($a[$prefix.'perms'])) {
+            $a[$prefix.'perms'] = new ConstStub(sprintf('0%o', $a[$prefix.'perms']), $a[$prefix.'perms']);
+        }
+
+        static $mapDate = ['aTime', 'mTime', 'cTime'];
+        foreach ($mapDate as $key) {
+            if (isset($a[$prefix.$key])) {
+                $a[$prefix.$key] = new ConstStub(date('Y-m-d H:i:s', $a[$prefix.$key]), $a[$prefix.$key]);
+            }
+        }
+
+        return $a;
+    }
+
+    public static function castFileObject(\SplFileObject $c, array $a, Stub $stub, bool $isNested)
+    {
+        static $map = [
+            'csvControl' => 'getCsvControl',
+            'flags' => 'getFlags',
+            'maxLineLen' => 'getMaxLineLen',
+            'fstat' => 'fstat',
+            'eof' => 'eof',
+            'key' => 'key',
+        ];
+
+        $prefix = Caster::PREFIX_VIRTUAL;
+
+        foreach ($map as $key => $accessor) {
+            try {
+                $a[$prefix.$key] = $c->$accessor();
+            } catch (\Exception $e) {
+            }
+        }
+
+        if (isset($a[$prefix.'flags'])) {
+            $flagsArray = [];
+            foreach (self::SPL_FILE_OBJECT_FLAGS as $value => $name) {
+                if ($a[$prefix.'flags'] & $value) {
+                    $flagsArray[] = $name;
+                }
+            }
+            $a[$prefix.'flags'] = new ConstStub(implode('|', $flagsArray), $a[$prefix.'flags']);
+        }
+
+        if (isset($a[$prefix.'fstat'])) {
+            $a[$prefix.'fstat'] = new CutArrayStub($a[$prefix.'fstat'], ['dev', 'ino', 'nlink', 'rdev', 'blksize', 'blocks']);
+        }
+
+        return $a;
+    }
+
+    public static function castObjectStorage(\SplObjectStorage $c, array $a, Stub $stub, bool $isNested)
+    {
+        $storage = [];
+        unset($a[Caster::PREFIX_DYNAMIC."\0gcdata"]); // Don't hit https://bugs.php.net/65967
+        unset($a["\0SplObjectStorage\0storage"]);
+
+        $clone = clone $c;
+        foreach ($clone as $obj) {
+            $storage[] = [
+                'object' => $obj,
+                'info' => $clone->getInfo(),
+             ];
+        }
+
+        $a += [
+            Caster::PREFIX_VIRTUAL.'storage' => $storage,
+        ];
+
+        return $a;
+    }
+
+    public static function castOuterIterator(\OuterIterator $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'innerIterator'] = $c->getInnerIterator();
+
+        return $a;
+    }
+
+    public static function castWeakReference(\WeakReference $c, array $a, Stub $stub, bool $isNested)
+    {
+        $a[Caster::PREFIX_VIRTUAL.'object'] = $c->get();
+
+        return $a;
+    }
+
+    private static function castSplArray($c, array $a, Stub $stub, bool $isNested): array
+    {
+        $prefix = Caster::PREFIX_VIRTUAL;
+        $flags = $c->getFlags();
+
+        if (!($flags & \ArrayObject::STD_PROP_LIST)) {
+            $c->setFlags(\ArrayObject::STD_PROP_LIST);
+            $a = Caster::castObject($c, \get_class($c), method_exists($c, '__debugInfo'), $stub->class);
+            $c->setFlags($flags);
+        }
+        if (\PHP_VERSION_ID < 70400) {
+            $a[$prefix.'storage'] = $c->getArrayCopy();
+        }
+        $a += [
+            $prefix.'flag::STD_PROP_LIST' => (bool) ($flags & \ArrayObject::STD_PROP_LIST),
+            $prefix.'flag::ARRAY_AS_PROPS' => (bool) ($flags & \ArrayObject::ARRAY_AS_PROPS),
+        ];
+        if ($c instanceof \ArrayObject) {
+            $a[$prefix.'iteratorClass'] = new ClassStub($c->getIteratorClass());
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/StubCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/StubCaster.php
new file mode 100644
index 0000000..32ead7c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/StubCaster.php
@@ -0,0 +1,84 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts a caster's Stub.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class StubCaster
+{
+    public static function castStub(Stub $c, array $a, Stub $stub, bool $isNested)
+    {
+        if ($isNested) {
+            $stub->type = $c->type;
+            $stub->class = $c->class;
+            $stub->value = $c->value;
+            $stub->handle = $c->handle;
+            $stub->cut = $c->cut;
+            $stub->attr = $c->attr;
+
+            if (Stub::TYPE_REF === $c->type && !$c->class && \is_string($c->value) && !preg_match('//u', $c->value)) {
+                $stub->type = Stub::TYPE_STRING;
+                $stub->class = Stub::STRING_BINARY;
+            }
+
+            $a = [];
+        }
+
+        return $a;
+    }
+
+    public static function castCutArray(CutArrayStub $c, array $a, Stub $stub, bool $isNested)
+    {
+        return $isNested ? $c->preservedSubset : $a;
+    }
+
+    public static function cutInternals($obj, array $a, Stub $stub, bool $isNested)
+    {
+        if ($isNested) {
+            $stub->cut += \count($a);
+
+            return [];
+        }
+
+        return $a;
+    }
+
+    public static function castEnum(EnumStub $c, array $a, Stub $stub, bool $isNested)
+    {
+        if ($isNested) {
+            $stub->class = $c->dumpKeys ? '' : null;
+            $stub->handle = 0;
+            $stub->value = null;
+            $stub->cut = $c->cut;
+            $stub->attr = $c->attr;
+
+            $a = [];
+
+            if ($c->value) {
+                foreach (array_keys($c->value) as $k) {
+                    $keys[] = !isset($k[0]) || "\0" !== $k[0] ? Caster::PREFIX_VIRTUAL.$k : $k;
+                }
+                // Preserve references with array_combine()
+                $a = array_combine($keys, $c->value);
+            }
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SymfonyCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SymfonyCaster.php
new file mode 100644
index 0000000..b7e1dd4
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/SymfonyCaster.php
@@ -0,0 +1,69 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @final
+ */
+class SymfonyCaster
+{
+    private const REQUEST_GETTERS = [
+        'pathInfo' => 'getPathInfo',
+        'requestUri' => 'getRequestUri',
+        'baseUrl' => 'getBaseUrl',
+        'basePath' => 'getBasePath',
+        'method' => 'getMethod',
+        'format' => 'getRequestFormat',
+    ];
+
+    public static function castRequest(Request $request, array $a, Stub $stub, bool $isNested)
+    {
+        $clone = null;
+
+        foreach (self::REQUEST_GETTERS as $prop => $getter) {
+            $key = Caster::PREFIX_PROTECTED.$prop;
+            if (\array_key_exists($key, $a) && null === $a[$key]) {
+                if (null === $clone) {
+                    $clone = clone $request;
+                }
+                $a[Caster::PREFIX_VIRTUAL.$prop] = $clone->{$getter}();
+            }
+        }
+
+        return $a;
+    }
+
+    public static function castHttpClient($client, array $a, Stub $stub, bool $isNested)
+    {
+        $multiKey = sprintf("\0%s\0multi", \get_class($client));
+        if (isset($a[$multiKey])) {
+            $a[$multiKey] = new CutStub($a[$multiKey]);
+        }
+
+        return $a;
+    }
+
+    public static function castHttpClientResponse($response, array $a, Stub $stub, bool $isNested)
+    {
+        $stub->cut += \count($a);
+        $a = [];
+
+        foreach ($response->getInfo() as $k => $v) {
+            $a[Caster::PREFIX_VIRTUAL.$k] = $v;
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/TraceStub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/TraceStub.php
new file mode 100644
index 0000000..5eea1c8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/TraceStub.php
@@ -0,0 +1,36 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Represents a backtrace as returned by debug_backtrace() or Exception->getTrace().
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class TraceStub extends Stub
+{
+    public $keepArgs;
+    public $sliceOffset;
+    public $sliceLength;
+    public $numberingOffset;
+
+    public function __construct(array $trace, bool $keepArgs = true, int $sliceOffset = 0, int $sliceLength = null, int $numberingOffset = 0)
+    {
+        $this->value = $trace;
+        $this->keepArgs = $keepArgs;
+        $this->sliceOffset = $sliceOffset;
+        $this->sliceLength = $sliceLength;
+        $this->numberingOffset = $numberingOffset;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/UuidCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/UuidCaster.php
new file mode 100644
index 0000000..b102774
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/UuidCaster.php
@@ -0,0 +1,30 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Ramsey\Uuid\UuidInterface;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * @author Grégoire Pineau <lyrixx@lyrixx.info>
+ */
+final class UuidCaster
+{
+    public static function castRamseyUuid(UuidInterface $c, array $a, Stub $stub, bool $isNested): array
+    {
+        $a += [
+            Caster::PREFIX_VIRTUAL.'uuid' => (string) $c,
+        ];
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php
new file mode 100644
index 0000000..fa0b55d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php
@@ -0,0 +1,79 @@
+<?php
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts XmlReader class to array representation.
+ *
+ * @author Baptiste Clavié <clavie.b@gmail.com>
+ *
+ * @final
+ */
+class XmlReaderCaster
+{
+    private const NODE_TYPES = [
+        \XMLReader::NONE => 'NONE',
+        \XMLReader::ELEMENT => 'ELEMENT',
+        \XMLReader::ATTRIBUTE => 'ATTRIBUTE',
+        \XMLReader::TEXT => 'TEXT',
+        \XMLReader::CDATA => 'CDATA',
+        \XMLReader::ENTITY_REF => 'ENTITY_REF',
+        \XMLReader::ENTITY => 'ENTITY',
+        \XMLReader::PI => 'PI (Processing Instruction)',
+        \XMLReader::COMMENT => 'COMMENT',
+        \XMLReader::DOC => 'DOC',
+        \XMLReader::DOC_TYPE => 'DOC_TYPE',
+        \XMLReader::DOC_FRAGMENT => 'DOC_FRAGMENT',
+        \XMLReader::NOTATION => 'NOTATION',
+        \XMLReader::WHITESPACE => 'WHITESPACE',
+        \XMLReader::SIGNIFICANT_WHITESPACE => 'SIGNIFICANT_WHITESPACE',
+        \XMLReader::END_ELEMENT => 'END_ELEMENT',
+        \XMLReader::END_ENTITY => 'END_ENTITY',
+        \XMLReader::XML_DECLARATION => 'XML_DECLARATION',
+    ];
+
+    public static function castXmlReader(\XMLReader $reader, array $a, Stub $stub, bool $isNested)
+    {
+        $props = Caster::PREFIX_VIRTUAL.'parserProperties';
+        $info = [
+            'localName' => $reader->localName,
+            'prefix' => $reader->prefix,
+            'nodeType' => new ConstStub(self::NODE_TYPES[$reader->nodeType], $reader->nodeType),
+            'depth' => $reader->depth,
+            'isDefault' => $reader->isDefault,
+            'isEmptyElement' => \XMLReader::NONE === $reader->nodeType ? null : $reader->isEmptyElement,
+            'xmlLang' => $reader->xmlLang,
+            'attributeCount' => $reader->attributeCount,
+            'value' => $reader->value,
+            'namespaceURI' => $reader->namespaceURI,
+            'baseURI' => $reader->baseURI ? new LinkStub($reader->baseURI) : $reader->baseURI,
+            $props => [
+                'LOADDTD' => $reader->getParserProperty(\XMLReader::LOADDTD),
+                'DEFAULTATTRS' => $reader->getParserProperty(\XMLReader::DEFAULTATTRS),
+                'VALIDATE' => $reader->getParserProperty(\XMLReader::VALIDATE),
+                'SUBST_ENTITIES' => $reader->getParserProperty(\XMLReader::SUBST_ENTITIES),
+            ],
+        ];
+
+        if ($info[$props] = Caster::filter($info[$props], Caster::EXCLUDE_EMPTY, [], $count)) {
+            $info[$props] = new EnumStub($info[$props]);
+            $info[$props]->cut = $count;
+        }
+
+        $info = Caster::filter($info, Caster::EXCLUDE_EMPTY, [], $count);
+        // +2 because hasValue and hasAttributes are always filtered
+        $stub->cut += $count + 2;
+
+        return $a + $info;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php
new file mode 100644
index 0000000..ba55fce
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php
@@ -0,0 +1,63 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Caster;
+
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * Casts XML resources to array representation.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ *
+ * @final
+ */
+class XmlResourceCaster
+{
+    private const XML_ERRORS = [
+        \XML_ERROR_NONE => 'XML_ERROR_NONE',
+        \XML_ERROR_NO_MEMORY => 'XML_ERROR_NO_MEMORY',
+        \XML_ERROR_SYNTAX => 'XML_ERROR_SYNTAX',
+        \XML_ERROR_NO_ELEMENTS => 'XML_ERROR_NO_ELEMENTS',
+        \XML_ERROR_INVALID_TOKEN => 'XML_ERROR_INVALID_TOKEN',
+        \XML_ERROR_UNCLOSED_TOKEN => 'XML_ERROR_UNCLOSED_TOKEN',
+        \XML_ERROR_PARTIAL_CHAR => 'XML_ERROR_PARTIAL_CHAR',
+        \XML_ERROR_TAG_MISMATCH => 'XML_ERROR_TAG_MISMATCH',
+        \XML_ERROR_DUPLICATE_ATTRIBUTE => 'XML_ERROR_DUPLICATE_ATTRIBUTE',
+        \XML_ERROR_JUNK_AFTER_DOC_ELEMENT => 'XML_ERROR_JUNK_AFTER_DOC_ELEMENT',
+        \XML_ERROR_PARAM_ENTITY_REF => 'XML_ERROR_PARAM_ENTITY_REF',
+        \XML_ERROR_UNDEFINED_ENTITY => 'XML_ERROR_UNDEFINED_ENTITY',
+        \XML_ERROR_RECURSIVE_ENTITY_REF => 'XML_ERROR_RECURSIVE_ENTITY_REF',
+        \XML_ERROR_ASYNC_ENTITY => 'XML_ERROR_ASYNC_ENTITY',
+        \XML_ERROR_BAD_CHAR_REF => 'XML_ERROR_BAD_CHAR_REF',
+        \XML_ERROR_BINARY_ENTITY_REF => 'XML_ERROR_BINARY_ENTITY_REF',
+        \XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF => 'XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF',
+        \XML_ERROR_MISPLACED_XML_PI => 'XML_ERROR_MISPLACED_XML_PI',
+        \XML_ERROR_UNKNOWN_ENCODING => 'XML_ERROR_UNKNOWN_ENCODING',
+        \XML_ERROR_INCORRECT_ENCODING => 'XML_ERROR_INCORRECT_ENCODING',
+        \XML_ERROR_UNCLOSED_CDATA_SECTION => 'XML_ERROR_UNCLOSED_CDATA_SECTION',
+        \XML_ERROR_EXTERNAL_ENTITY_HANDLING => 'XML_ERROR_EXTERNAL_ENTITY_HANDLING',
+    ];
+
+    public static function castXml($h, array $a, Stub $stub, bool $isNested)
+    {
+        $a['current_byte_index'] = xml_get_current_byte_index($h);
+        $a['current_column_number'] = xml_get_current_column_number($h);
+        $a['current_line_number'] = xml_get_current_line_number($h);
+        $a['error_code'] = xml_get_error_code($h);
+
+        if (isset(self::XML_ERRORS[$a['error_code']])) {
+            $a['error_code'] = new ConstStub(self::XML_ERRORS[$a['error_code']], $a['error_code']);
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/AbstractCloner.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/AbstractCloner.php
new file mode 100644
index 0000000..ac55da5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/AbstractCloner.php
@@ -0,0 +1,384 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+use Symfony\Component\VarDumper\Caster\Caster;
+use Symfony\Component\VarDumper\Exception\ThrowingCasterException;
+
+/**
+ * AbstractCloner implements a generic caster mechanism for objects and resources.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+abstract class AbstractCloner implements ClonerInterface
+{
+    public static $defaultCasters = [
+        '__PHP_Incomplete_Class' => ['Symfony\Component\VarDumper\Caster\Caster', 'castPhpIncompleteClass'],
+
+        'Symfony\Component\VarDumper\Caster\CutStub' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'castStub'],
+        'Symfony\Component\VarDumper\Caster\CutArrayStub' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'castCutArray'],
+        'Symfony\Component\VarDumper\Caster\ConstStub' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'castStub'],
+        'Symfony\Component\VarDumper\Caster\EnumStub' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'castEnum'],
+
+        'Closure' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castClosure'],
+        'Generator' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castGenerator'],
+        'ReflectionType' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castType'],
+        'ReflectionAttribute' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castAttribute'],
+        'ReflectionGenerator' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castReflectionGenerator'],
+        'ReflectionClass' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castClass'],
+        'ReflectionClassConstant' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castClassConstant'],
+        'ReflectionFunctionAbstract' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castFunctionAbstract'],
+        'ReflectionMethod' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castMethod'],
+        'ReflectionParameter' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castParameter'],
+        'ReflectionProperty' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castProperty'],
+        'ReflectionReference' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castReference'],
+        'ReflectionExtension' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castExtension'],
+        'ReflectionZendExtension' => ['Symfony\Component\VarDumper\Caster\ReflectionCaster', 'castZendExtension'],
+
+        'Doctrine\Common\Persistence\ObjectManager' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Doctrine\Common\Proxy\Proxy' => ['Symfony\Component\VarDumper\Caster\DoctrineCaster', 'castCommonProxy'],
+        'Doctrine\ORM\Proxy\Proxy' => ['Symfony\Component\VarDumper\Caster\DoctrineCaster', 'castOrmProxy'],
+        'Doctrine\ORM\PersistentCollection' => ['Symfony\Component\VarDumper\Caster\DoctrineCaster', 'castPersistentCollection'],
+        'Doctrine\Persistence\ObjectManager' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+
+        'DOMException' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castException'],
+        'DOMStringList' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLength'],
+        'DOMNameList' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLength'],
+        'DOMImplementation' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castImplementation'],
+        'DOMImplementationList' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLength'],
+        'DOMNode' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castNode'],
+        'DOMNameSpaceNode' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castNameSpaceNode'],
+        'DOMDocument' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castDocument'],
+        'DOMNodeList' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLength'],
+        'DOMNamedNodeMap' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLength'],
+        'DOMCharacterData' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castCharacterData'],
+        'DOMAttr' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castAttr'],
+        'DOMElement' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castElement'],
+        'DOMText' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castText'],
+        'DOMTypeinfo' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castTypeinfo'],
+        'DOMDomError' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castDomError'],
+        'DOMLocator' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castLocator'],
+        'DOMDocumentType' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castDocumentType'],
+        'DOMNotation' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castNotation'],
+        'DOMEntity' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castEntity'],
+        'DOMProcessingInstruction' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castProcessingInstruction'],
+        'DOMXPath' => ['Symfony\Component\VarDumper\Caster\DOMCaster', 'castXPath'],
+
+        'XMLReader' => ['Symfony\Component\VarDumper\Caster\XmlReaderCaster', 'castXmlReader'],
+
+        'ErrorException' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castErrorException'],
+        'Exception' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castException'],
+        'Error' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castError'],
+        'Symfony\Bridge\Monolog\Logger' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Symfony\Component\DependencyInjection\ContainerInterface' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Symfony\Component\EventDispatcher\EventDispatcherInterface' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Symfony\Component\HttpClient\CurlHttpClient' => ['Symfony\Component\VarDumper\Caster\SymfonyCaster', 'castHttpClient'],
+        'Symfony\Component\HttpClient\NativeHttpClient' => ['Symfony\Component\VarDumper\Caster\SymfonyCaster', 'castHttpClient'],
+        'Symfony\Component\HttpClient\Response\CurlResponse' => ['Symfony\Component\VarDumper\Caster\SymfonyCaster', 'castHttpClientResponse'],
+        'Symfony\Component\HttpClient\Response\NativeResponse' => ['Symfony\Component\VarDumper\Caster\SymfonyCaster', 'castHttpClientResponse'],
+        'Symfony\Component\HttpFoundation\Request' => ['Symfony\Component\VarDumper\Caster\SymfonyCaster', 'castRequest'],
+        'Symfony\Component\VarDumper\Exception\ThrowingCasterException' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castThrowingCasterException'],
+        'Symfony\Component\VarDumper\Caster\TraceStub' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castTraceStub'],
+        'Symfony\Component\VarDumper\Caster\FrameStub' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castFrameStub'],
+        'Symfony\Component\VarDumper\Cloner\AbstractCloner' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Symfony\Component\ErrorHandler\Exception\SilencedErrorContext' => ['Symfony\Component\VarDumper\Caster\ExceptionCaster', 'castSilencedErrorContext'],
+
+        'Imagine\Image\ImageInterface' => ['Symfony\Component\VarDumper\Caster\ImagineCaster', 'castImage'],
+
+        'Ramsey\Uuid\UuidInterface' => ['Symfony\Component\VarDumper\Caster\UuidCaster', 'castRamseyUuid'],
+
+        'ProxyManager\Proxy\ProxyInterface' => ['Symfony\Component\VarDumper\Caster\ProxyManagerCaster', 'castProxy'],
+        'PHPUnit_Framework_MockObject_MockObject' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'PHPUnit\Framework\MockObject\MockObject' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'PHPUnit\Framework\MockObject\Stub' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Prophecy\Prophecy\ProphecySubjectInterface' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+        'Mockery\MockInterface' => ['Symfony\Component\VarDumper\Caster\StubCaster', 'cutInternals'],
+
+        'PDO' => ['Symfony\Component\VarDumper\Caster\PdoCaster', 'castPdo'],
+        'PDOStatement' => ['Symfony\Component\VarDumper\Caster\PdoCaster', 'castPdoStatement'],
+
+        'AMQPConnection' => ['Symfony\Component\VarDumper\Caster\AmqpCaster', 'castConnection'],
+        'AMQPChannel' => ['Symfony\Component\VarDumper\Caster\AmqpCaster', 'castChannel'],
+        'AMQPQueue' => ['Symfony\Component\VarDumper\Caster\AmqpCaster', 'castQueue'],
+        'AMQPExchange' => ['Symfony\Component\VarDumper\Caster\AmqpCaster', 'castExchange'],
+        'AMQPEnvelope' => ['Symfony\Component\VarDumper\Caster\AmqpCaster', 'castEnvelope'],
+
+        'ArrayObject' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castArrayObject'],
+        'ArrayIterator' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castArrayIterator'],
+        'SplDoublyLinkedList' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castDoublyLinkedList'],
+        'SplFileInfo' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castFileInfo'],
+        'SplFileObject' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castFileObject'],
+        'SplHeap' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castHeap'],
+        'SplObjectStorage' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castObjectStorage'],
+        'SplPriorityQueue' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castHeap'],
+        'OuterIterator' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castOuterIterator'],
+        'WeakReference' => ['Symfony\Component\VarDumper\Caster\SplCaster', 'castWeakReference'],
+
+        'Redis' => ['Symfony\Component\VarDumper\Caster\RedisCaster', 'castRedis'],
+        'RedisArray' => ['Symfony\Component\VarDumper\Caster\RedisCaster', 'castRedisArray'],
+        'RedisCluster' => ['Symfony\Component\VarDumper\Caster\RedisCaster', 'castRedisCluster'],
+
+        'DateTimeInterface' => ['Symfony\Component\VarDumper\Caster\DateCaster', 'castDateTime'],
+        'DateInterval' => ['Symfony\Component\VarDumper\Caster\DateCaster', 'castInterval'],
+        'DateTimeZone' => ['Symfony\Component\VarDumper\Caster\DateCaster', 'castTimeZone'],
+        'DatePeriod' => ['Symfony\Component\VarDumper\Caster\DateCaster', 'castPeriod'],
+
+        'GMP' => ['Symfony\Component\VarDumper\Caster\GmpCaster', 'castGmp'],
+
+        'MessageFormatter' => ['Symfony\Component\VarDumper\Caster\IntlCaster', 'castMessageFormatter'],
+        'NumberFormatter' => ['Symfony\Component\VarDumper\Caster\IntlCaster', 'castNumberFormatter'],
+        'IntlTimeZone' => ['Symfony\Component\VarDumper\Caster\IntlCaster', 'castIntlTimeZone'],
+        'IntlCalendar' => ['Symfony\Component\VarDumper\Caster\IntlCaster', 'castIntlCalendar'],
+        'IntlDateFormatter' => ['Symfony\Component\VarDumper\Caster\IntlCaster', 'castIntlDateFormatter'],
+
+        'Memcached' => ['Symfony\Component\VarDumper\Caster\MemcachedCaster', 'castMemcached'],
+
+        'Ds\Collection' => ['Symfony\Component\VarDumper\Caster\DsCaster', 'castCollection'],
+        'Ds\Map' => ['Symfony\Component\VarDumper\Caster\DsCaster', 'castMap'],
+        'Ds\Pair' => ['Symfony\Component\VarDumper\Caster\DsCaster', 'castPair'],
+        'Symfony\Component\VarDumper\Caster\DsPairStub' => ['Symfony\Component\VarDumper\Caster\DsCaster', 'castPairStub'],
+
+        'CurlHandle' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castCurl'],
+        ':curl' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castCurl'],
+
+        ':dba' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castDba'],
+        ':dba persistent' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castDba'],
+
+        'GdImage' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castGd'],
+        ':gd' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castGd'],
+
+        ':mysql link' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castMysqlLink'],
+        ':pgsql large object' => ['Symfony\Component\VarDumper\Caster\PgSqlCaster', 'castLargeObject'],
+        ':pgsql link' => ['Symfony\Component\VarDumper\Caster\PgSqlCaster', 'castLink'],
+        ':pgsql link persistent' => ['Symfony\Component\VarDumper\Caster\PgSqlCaster', 'castLink'],
+        ':pgsql result' => ['Symfony\Component\VarDumper\Caster\PgSqlCaster', 'castResult'],
+        ':process' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castProcess'],
+        ':stream' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castStream'],
+
+        'OpenSSLCertificate' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castOpensslX509'],
+        ':OpenSSL X.509' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castOpensslX509'],
+
+        ':persistent stream' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castStream'],
+        ':stream-context' => ['Symfony\Component\VarDumper\Caster\ResourceCaster', 'castStreamContext'],
+
+        'XmlParser' => ['Symfony\Component\VarDumper\Caster\XmlResourceCaster', 'castXml'],
+        ':xml' => ['Symfony\Component\VarDumper\Caster\XmlResourceCaster', 'castXml'],
+
+        'RdKafka' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castRdKafka'],
+        'RdKafka\Conf' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castConf'],
+        'RdKafka\KafkaConsumer' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castKafkaConsumer'],
+        'RdKafka\Metadata\Broker' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castBrokerMetadata'],
+        'RdKafka\Metadata\Collection' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castCollectionMetadata'],
+        'RdKafka\Metadata\Partition' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castPartitionMetadata'],
+        'RdKafka\Metadata\Topic' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castTopicMetadata'],
+        'RdKafka\Message' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castMessage'],
+        'RdKafka\Topic' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castTopic'],
+        'RdKafka\TopicPartition' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castTopicPartition'],
+        'RdKafka\TopicConf' => ['Symfony\Component\VarDumper\Caster\RdKafkaCaster', 'castTopicConf'],
+    ];
+
+    protected $maxItems = 2500;
+    protected $maxString = -1;
+    protected $minDepth = 1;
+
+    private $casters = [];
+    private $prevErrorHandler;
+    private $classInfo = [];
+    private $filter = 0;
+
+    /**
+     * @param callable[]|null $casters A map of casters
+     *
+     * @see addCasters
+     */
+    public function __construct(array $casters = null)
+    {
+        if (null === $casters) {
+            $casters = static::$defaultCasters;
+        }
+        $this->addCasters($casters);
+    }
+
+    /**
+     * Adds casters for resources and objects.
+     *
+     * Maps resources or objects types to a callback.
+     * Types are in the key, with a callable caster for value.
+     * Resource types are to be prefixed with a `:`,
+     * see e.g. static::$defaultCasters.
+     *
+     * @param callable[] $casters A map of casters
+     */
+    public function addCasters(array $casters)
+    {
+        foreach ($casters as $type => $callback) {
+            $this->casters[$type][] = $callback;
+        }
+    }
+
+    /**
+     * Sets the maximum number of items to clone past the minimum depth in nested structures.
+     */
+    public function setMaxItems(int $maxItems)
+    {
+        $this->maxItems = $maxItems;
+    }
+
+    /**
+     * Sets the maximum cloned length for strings.
+     */
+    public function setMaxString(int $maxString)
+    {
+        $this->maxString = $maxString;
+    }
+
+    /**
+     * Sets the minimum tree depth where we are guaranteed to clone all the items.  After this
+     * depth is reached, only setMaxItems items will be cloned.
+     */
+    public function setMinDepth(int $minDepth)
+    {
+        $this->minDepth = $minDepth;
+    }
+
+    /**
+     * Clones a PHP variable.
+     *
+     * @param mixed $var    Any PHP variable
+     * @param int   $filter A bit field of Caster::EXCLUDE_* constants
+     *
+     * @return Data The cloned variable represented by a Data object
+     */
+    public function cloneVar($var, int $filter = 0)
+    {
+        $this->prevErrorHandler = set_error_handler(function ($type, $msg, $file, $line, $context = []) {
+            if (\E_RECOVERABLE_ERROR === $type || \E_USER_ERROR === $type) {
+                // Cloner never dies
+                throw new \ErrorException($msg, 0, $type, $file, $line);
+            }
+
+            if ($this->prevErrorHandler) {
+                return ($this->prevErrorHandler)($type, $msg, $file, $line, $context);
+            }
+
+            return false;
+        });
+        $this->filter = $filter;
+
+        if ($gc = gc_enabled()) {
+            gc_disable();
+        }
+        try {
+            return new Data($this->doClone($var));
+        } finally {
+            if ($gc) {
+                gc_enable();
+            }
+            restore_error_handler();
+            $this->prevErrorHandler = null;
+        }
+    }
+
+    /**
+     * Effectively clones the PHP variable.
+     *
+     * @param mixed $var Any PHP variable
+     *
+     * @return array The cloned variable represented in an array
+     */
+    abstract protected function doClone($var);
+
+    /**
+     * Casts an object to an array representation.
+     *
+     * @param bool $isNested True if the object is nested in the dumped structure
+     *
+     * @return array The object casted as array
+     */
+    protected function castObject(Stub $stub, bool $isNested)
+    {
+        $obj = $stub->value;
+        $class = $stub->class;
+
+        if (\PHP_VERSION_ID < 80000 ? "\0" === ($class[15] ?? null) : str_contains($class, "@anonymous\0")) {
+            $stub->class = get_debug_type($obj);
+        }
+        if (isset($this->classInfo[$class])) {
+            [$i, $parents, $hasDebugInfo, $fileInfo] = $this->classInfo[$class];
+        } else {
+            $i = 2;
+            $parents = [$class];
+            $hasDebugInfo = method_exists($class, '__debugInfo');
+
+            foreach (class_parents($class) as $p) {
+                $parents[] = $p;
+                ++$i;
+            }
+            foreach (class_implements($class) as $p) {
+                $parents[] = $p;
+                ++$i;
+            }
+            $parents[] = '*';
+
+            $r = new \ReflectionClass($class);
+            $fileInfo = $r->isInternal() || $r->isSubclassOf(Stub::class) ? [] : [
+                'file' => $r->getFileName(),
+                'line' => $r->getStartLine(),
+            ];
+
+            $this->classInfo[$class] = [$i, $parents, $hasDebugInfo, $fileInfo];
+        }
+
+        $stub->attr += $fileInfo;
+        $a = Caster::castObject($obj, $class, $hasDebugInfo, $stub->class);
+
+        try {
+            while ($i--) {
+                if (!empty($this->casters[$p = $parents[$i]])) {
+                    foreach ($this->casters[$p] as $callback) {
+                        $a = $callback($obj, $a, $stub, $isNested, $this->filter);
+                    }
+                }
+            }
+        } catch (\Exception $e) {
+            $a = [(Stub::TYPE_OBJECT === $stub->type ? Caster::PREFIX_VIRTUAL : '').'⚠' => new ThrowingCasterException($e)] + $a;
+        }
+
+        return $a;
+    }
+
+    /**
+     * Casts a resource to an array representation.
+     *
+     * @param bool $isNested True if the object is nested in the dumped structure
+     *
+     * @return array The resource casted as array
+     */
+    protected function castResource(Stub $stub, bool $isNested)
+    {
+        $a = [];
+        $res = $stub->value;
+        $type = $stub->class;
+
+        try {
+            if (!empty($this->casters[':'.$type])) {
+                foreach ($this->casters[':'.$type] as $callback) {
+                    $a = $callback($res, $a, $stub, $isNested, $this->filter);
+                }
+            }
+        } catch (\Exception $e) {
+            $a = [(Stub::TYPE_OBJECT === $stub->type ? Caster::PREFIX_VIRTUAL : '').'⚠' => new ThrowingCasterException($e)] + $a;
+        }
+
+        return $a;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/ClonerInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/ClonerInterface.php
new file mode 100644
index 0000000..7ed287a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/ClonerInterface.php
@@ -0,0 +1,27 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+interface ClonerInterface
+{
+    /**
+     * Clones a PHP variable.
+     *
+     * @param mixed $var Any PHP variable
+     *
+     * @return Data The cloned variable represented by a Data object
+     */
+    public function cloneVar($var);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Cursor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Cursor.php
new file mode 100644
index 0000000..1fd796d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Cursor.php
@@ -0,0 +1,43 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+/**
+ * Represents the current state of a dumper while dumping.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class Cursor
+{
+    public const HASH_INDEXED = Stub::ARRAY_INDEXED;
+    public const HASH_ASSOC = Stub::ARRAY_ASSOC;
+    public const HASH_OBJECT = Stub::TYPE_OBJECT;
+    public const HASH_RESOURCE = Stub::TYPE_RESOURCE;
+
+    public $depth = 0;
+    public $refIndex = 0;
+    public $softRefTo = 0;
+    public $softRefCount = 0;
+    public $softRefHandle = 0;
+    public $hardRefTo = 0;
+    public $hardRefCount = 0;
+    public $hardRefHandle = 0;
+    public $hashType;
+    public $hashKey;
+    public $hashKeyIsBinary;
+    public $hashIndex = 0;
+    public $hashLength = 0;
+    public $hashCut = 0;
+    public $stop = false;
+    public $attr = [];
+    public $skipChildren = false;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Data.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Data.php
new file mode 100644
index 0000000..c868862
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Data.php
@@ -0,0 +1,460 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+use Symfony\Component\VarDumper\Caster\Caster;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\SourceContextProvider;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class Data implements \ArrayAccess, \Countable, \IteratorAggregate
+{
+    private $data;
+    private $position = 0;
+    private $key = 0;
+    private $maxDepth = 20;
+    private $maxItemsPerDepth = -1;
+    private $useRefHandles = -1;
+    private $context = [];
+
+    /**
+     * @param array $data An array as returned by ClonerInterface::cloneVar()
+     */
+    public function __construct(array $data)
+    {
+        $this->data = $data;
+    }
+
+    /**
+     * @return string|null The type of the value
+     */
+    public function getType()
+    {
+        $item = $this->data[$this->position][$this->key];
+
+        if ($item instanceof Stub && Stub::TYPE_REF === $item->type && !$item->position) {
+            $item = $item->value;
+        }
+        if (!$item instanceof Stub) {
+            return \gettype($item);
+        }
+        if (Stub::TYPE_STRING === $item->type) {
+            return 'string';
+        }
+        if (Stub::TYPE_ARRAY === $item->type) {
+            return 'array';
+        }
+        if (Stub::TYPE_OBJECT === $item->type) {
+            return $item->class;
+        }
+        if (Stub::TYPE_RESOURCE === $item->type) {
+            return $item->class.' resource';
+        }
+
+        return null;
+    }
+
+    /**
+     * @param array|bool $recursive Whether values should be resolved recursively or not
+     *
+     * @return string|int|float|bool|array|Data[]|null A native representation of the original value
+     */
+    public function getValue($recursive = false)
+    {
+        $item = $this->data[$this->position][$this->key];
+
+        if ($item instanceof Stub && Stub::TYPE_REF === $item->type && !$item->position) {
+            $item = $item->value;
+        }
+        if (!($item = $this->getStub($item)) instanceof Stub) {
+            return $item;
+        }
+        if (Stub::TYPE_STRING === $item->type) {
+            return $item->value;
+        }
+
+        $children = $item->position ? $this->data[$item->position] : [];
+
+        foreach ($children as $k => $v) {
+            if ($recursive && !($v = $this->getStub($v)) instanceof Stub) {
+                continue;
+            }
+            $children[$k] = clone $this;
+            $children[$k]->key = $k;
+            $children[$k]->position = $item->position;
+
+            if ($recursive) {
+                if (Stub::TYPE_REF === $v->type && ($v = $this->getStub($v->value)) instanceof Stub) {
+                    $recursive = (array) $recursive;
+                    if (isset($recursive[$v->position])) {
+                        continue;
+                    }
+                    $recursive[$v->position] = true;
+                }
+                $children[$k] = $children[$k]->getValue($recursive);
+            }
+        }
+
+        return $children;
+    }
+
+    /**
+     * @return int
+     */
+    public function count()
+    {
+        return \count($this->getValue());
+    }
+
+    /**
+     * @return \Traversable
+     */
+    public function getIterator()
+    {
+        if (!\is_array($value = $this->getValue())) {
+            throw new \LogicException(sprintf('"%s" object holds non-iterable type "%s".', self::class, get_debug_type($value)));
+        }
+
+        yield from $value;
+    }
+
+    public function __get(string $key)
+    {
+        if (null !== $data = $this->seek($key)) {
+            $item = $this->getStub($data->data[$data->position][$data->key]);
+
+            return $item instanceof Stub || [] === $item ? $data : $item;
+        }
+
+        return null;
+    }
+
+    /**
+     * @return bool
+     */
+    public function __isset(string $key)
+    {
+        return null !== $this->seek($key);
+    }
+
+    /**
+     * @return bool
+     */
+    public function offsetExists($key)
+    {
+        return $this->__isset($key);
+    }
+
+    /**
+     * @return mixed
+     */
+    public function offsetGet($key)
+    {
+        return $this->__get($key);
+    }
+
+    /**
+     * @return void
+     */
+    public function offsetSet($key, $value)
+    {
+        throw new \BadMethodCallException(self::class.' objects are immutable.');
+    }
+
+    /**
+     * @return void
+     */
+    public function offsetUnset($key)
+    {
+        throw new \BadMethodCallException(self::class.' objects are immutable.');
+    }
+
+    /**
+     * @return string
+     */
+    public function __toString()
+    {
+        $value = $this->getValue();
+
+        if (!\is_array($value)) {
+            return (string) $value;
+        }
+
+        return sprintf('%s (count=%d)', $this->getType(), \count($value));
+    }
+
+    /**
+     * Returns a depth limited clone of $this.
+     *
+     * @return static
+     */
+    public function withMaxDepth(int $maxDepth)
+    {
+        $data = clone $this;
+        $data->maxDepth = (int) $maxDepth;
+
+        return $data;
+    }
+
+    /**
+     * Limits the number of elements per depth level.
+     *
+     * @return static
+     */
+    public function withMaxItemsPerDepth(int $maxItemsPerDepth)
+    {
+        $data = clone $this;
+        $data->maxItemsPerDepth = (int) $maxItemsPerDepth;
+
+        return $data;
+    }
+
+    /**
+     * Enables/disables objects' identifiers tracking.
+     *
+     * @param bool $useRefHandles False to hide global ref. handles
+     *
+     * @return static
+     */
+    public function withRefHandles(bool $useRefHandles)
+    {
+        $data = clone $this;
+        $data->useRefHandles = $useRefHandles ? -1 : 0;
+
+        return $data;
+    }
+
+    /**
+     * @return static
+     */
+    public function withContext(array $context)
+    {
+        $data = clone $this;
+        $data->context = $context;
+
+        return $data;
+    }
+
+    /**
+     * Seeks to a specific key in nested data structures.
+     *
+     * @param string|int $key The key to seek to
+     *
+     * @return static|null Null if the key is not set
+     */
+    public function seek($key)
+    {
+        $item = $this->data[$this->position][$this->key];
+
+        if ($item instanceof Stub && Stub::TYPE_REF === $item->type && !$item->position) {
+            $item = $item->value;
+        }
+        if (!($item = $this->getStub($item)) instanceof Stub || !$item->position) {
+            return null;
+        }
+        $keys = [$key];
+
+        switch ($item->type) {
+            case Stub::TYPE_OBJECT:
+                $keys[] = Caster::PREFIX_DYNAMIC.$key;
+                $keys[] = Caster::PREFIX_PROTECTED.$key;
+                $keys[] = Caster::PREFIX_VIRTUAL.$key;
+                $keys[] = "\0$item->class\0$key";
+                // no break
+            case Stub::TYPE_ARRAY:
+            case Stub::TYPE_RESOURCE:
+                break;
+            default:
+                return null;
+        }
+
+        $data = null;
+        $children = $this->data[$item->position];
+
+        foreach ($keys as $key) {
+            if (isset($children[$key]) || \array_key_exists($key, $children)) {
+                $data = clone $this;
+                $data->key = $key;
+                $data->position = $item->position;
+                break;
+            }
+        }
+
+        return $data;
+    }
+
+    /**
+     * Dumps data with a DumperInterface dumper.
+     */
+    public function dump(DumperInterface $dumper)
+    {
+        $refs = [0];
+        $cursor = new Cursor();
+
+        if ($cursor->attr = $this->context[SourceContextProvider::class] ?? []) {
+            $cursor->attr['if_links'] = true;
+            $cursor->hashType = -1;
+            $dumper->dumpScalar($cursor, 'default', '^');
+            $cursor->attr = ['if_links' => true];
+            $dumper->dumpScalar($cursor, 'default', ' ');
+            $cursor->hashType = 0;
+        }
+
+        $this->dumpItem($dumper, $cursor, $refs, $this->data[$this->position][$this->key]);
+    }
+
+    /**
+     * Depth-first dumping of items.
+     *
+     * @param mixed $item A Stub object or the original value being dumped
+     */
+    private function dumpItem(DumperInterface $dumper, Cursor $cursor, array &$refs, $item)
+    {
+        $cursor->refIndex = 0;
+        $cursor->softRefTo = $cursor->softRefHandle = $cursor->softRefCount = 0;
+        $cursor->hardRefTo = $cursor->hardRefHandle = $cursor->hardRefCount = 0;
+        $firstSeen = true;
+
+        if (!$item instanceof Stub) {
+            $cursor->attr = [];
+            $type = \gettype($item);
+            if ($item && 'array' === $type) {
+                $item = $this->getStub($item);
+            }
+        } elseif (Stub::TYPE_REF === $item->type) {
+            if ($item->handle) {
+                if (!isset($refs[$r = $item->handle - (\PHP_INT_MAX >> 1)])) {
+                    $cursor->refIndex = $refs[$r] = $cursor->refIndex ?: ++$refs[0];
+                } else {
+                    $firstSeen = false;
+                }
+                $cursor->hardRefTo = $refs[$r];
+                $cursor->hardRefHandle = $this->useRefHandles & $item->handle;
+                $cursor->hardRefCount = 0 < $item->handle ? $item->refCount : 0;
+            }
+            $cursor->attr = $item->attr;
+            $type = $item->class ?: \gettype($item->value);
+            $item = $this->getStub($item->value);
+        }
+        if ($item instanceof Stub) {
+            if ($item->refCount) {
+                if (!isset($refs[$r = $item->handle])) {
+                    $cursor->refIndex = $refs[$r] = $cursor->refIndex ?: ++$refs[0];
+                } else {
+                    $firstSeen = false;
+                }
+                $cursor->softRefTo = $refs[$r];
+            }
+            $cursor->softRefHandle = $this->useRefHandles & $item->handle;
+            $cursor->softRefCount = $item->refCount;
+            $cursor->attr = $item->attr;
+            $cut = $item->cut;
+
+            if ($item->position && $firstSeen) {
+                $children = $this->data[$item->position];
+
+                if ($cursor->stop) {
+                    if ($cut >= 0) {
+                        $cut += \count($children);
+                    }
+                    $children = [];
+                }
+            } else {
+                $children = [];
+            }
+            switch ($item->type) {
+                case Stub::TYPE_STRING:
+                    $dumper->dumpString($cursor, $item->value, Stub::STRING_BINARY === $item->class, $cut);
+                    break;
+
+                case Stub::TYPE_ARRAY:
+                    $item = clone $item;
+                    $item->type = $item->class;
+                    $item->class = $item->value;
+                    // no break
+                case Stub::TYPE_OBJECT:
+                case Stub::TYPE_RESOURCE:
+                    $withChildren = $children && $cursor->depth !== $this->maxDepth && $this->maxItemsPerDepth;
+                    $dumper->enterHash($cursor, $item->type, $item->class, $withChildren);
+                    if ($withChildren) {
+                        if ($cursor->skipChildren) {
+                            $withChildren = false;
+                            $cut = -1;
+                        } else {
+                            $cut = $this->dumpChildren($dumper, $cursor, $refs, $children, $cut, $item->type, null !== $item->class);
+                        }
+                    } elseif ($children && 0 <= $cut) {
+                        $cut += \count($children);
+                    }
+                    $cursor->skipChildren = false;
+                    $dumper->leaveHash($cursor, $item->type, $item->class, $withChildren, $cut);
+                    break;
+
+                default:
+                    throw new \RuntimeException(sprintf('Unexpected Stub type: "%s".', $item->type));
+            }
+        } elseif ('array' === $type) {
+            $dumper->enterHash($cursor, Cursor::HASH_INDEXED, 0, false);
+            $dumper->leaveHash($cursor, Cursor::HASH_INDEXED, 0, false, 0);
+        } elseif ('string' === $type) {
+            $dumper->dumpString($cursor, $item, false, 0);
+        } else {
+            $dumper->dumpScalar($cursor, $type, $item);
+        }
+    }
+
+    /**
+     * Dumps children of hash structures.
+     *
+     * @return int The final number of removed items
+     */
+    private function dumpChildren(DumperInterface $dumper, Cursor $parentCursor, array &$refs, array $children, int $hashCut, int $hashType, bool $dumpKeys): int
+    {
+        $cursor = clone $parentCursor;
+        ++$cursor->depth;
+        $cursor->hashType = $hashType;
+        $cursor->hashIndex = 0;
+        $cursor->hashLength = \count($children);
+        $cursor->hashCut = $hashCut;
+        foreach ($children as $key => $child) {
+            $cursor->hashKeyIsBinary = isset($key[0]) && !preg_match('//u', $key);
+            $cursor->hashKey = $dumpKeys ? $key : null;
+            $this->dumpItem($dumper, $cursor, $refs, $child);
+            if (++$cursor->hashIndex === $this->maxItemsPerDepth || $cursor->stop) {
+                $parentCursor->stop = true;
+
+                return $hashCut >= 0 ? $hashCut + $cursor->hashLength - $cursor->hashIndex : $hashCut;
+            }
+        }
+
+        return $hashCut;
+    }
+
+    private function getStub($item)
+    {
+        if (!$item || !\is_array($item)) {
+            return $item;
+        }
+
+        $stub = new Stub();
+        $stub->type = Stub::TYPE_ARRAY;
+        foreach ($item as $stub->class => $stub->position) {
+        }
+        if (isset($item[0])) {
+            $stub->cut = $item[0];
+        }
+        $stub->value = $stub->cut + ($stub->position ? \count($this->data[$stub->position]) : 0);
+
+        return $stub;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/DumperInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/DumperInterface.php
new file mode 100644
index 0000000..6d60b72
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/DumperInterface.php
@@ -0,0 +1,56 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+/**
+ * DumperInterface used by Data objects.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+interface DumperInterface
+{
+    /**
+     * Dumps a scalar value.
+     *
+     * @param string                $type  The PHP type of the value being dumped
+     * @param string|int|float|bool $value The scalar value being dumped
+     */
+    public function dumpScalar(Cursor $cursor, string $type, $value);
+
+    /**
+     * Dumps a string.
+     *
+     * @param string $str The string being dumped
+     * @param bool   $bin Whether $str is UTF-8 or binary encoded
+     * @param int    $cut The number of characters $str has been cut by
+     */
+    public function dumpString(Cursor $cursor, string $str, bool $bin, int $cut);
+
+    /**
+     * Dumps while entering an hash.
+     *
+     * @param int        $type     A Cursor::HASH_* const for the type of hash
+     * @param string|int $class    The object class, resource type or array count
+     * @param bool       $hasChild When the dump of the hash has child item
+     */
+    public function enterHash(Cursor $cursor, int $type, $class, bool $hasChild);
+
+    /**
+     * Dumps while leaving an hash.
+     *
+     * @param int        $type     A Cursor::HASH_* const for the type of hash
+     * @param string|int $class    The object class, resource type or array count
+     * @param bool       $hasChild When the dump of the hash has child item
+     * @param int        $cut      The number of items the hash has been cut by
+     */
+    public function leaveHash(Cursor $cursor, int $type, $class, bool $hasChild, int $cut);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Stub.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Stub.php
new file mode 100644
index 0000000..073c56e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/Stub.php
@@ -0,0 +1,67 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+/**
+ * Represents the main properties of a PHP variable.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class Stub
+{
+    public const TYPE_REF = 1;
+    public const TYPE_STRING = 2;
+    public const TYPE_ARRAY = 3;
+    public const TYPE_OBJECT = 4;
+    public const TYPE_RESOURCE = 5;
+
+    public const STRING_BINARY = 1;
+    public const STRING_UTF8 = 2;
+
+    public const ARRAY_ASSOC = 1;
+    public const ARRAY_INDEXED = 2;
+
+    public $type = self::TYPE_REF;
+    public $class = '';
+    public $value;
+    public $cut = 0;
+    public $handle = 0;
+    public $refCount = 0;
+    public $position = 0;
+    public $attr = [];
+
+    private static $defaultProperties = [];
+
+    /**
+     * @internal
+     */
+    public function __sleep(): array
+    {
+        $properties = [];
+
+        if (!isset(self::$defaultProperties[$c = static::class])) {
+            self::$defaultProperties[$c] = get_class_vars($c);
+
+            foreach ((new \ReflectionClass($c))->getStaticProperties() as $k => $v) {
+                unset(self::$defaultProperties[$c][$k]);
+            }
+        }
+
+        foreach (self::$defaultProperties[$c] as $k => $v) {
+            if ($this->$k !== $v) {
+                $properties[] = $k;
+            }
+        }
+
+        return $properties;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/VarCloner.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/VarCloner.php
new file mode 100644
index 0000000..90d5ac9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Cloner/VarCloner.php
@@ -0,0 +1,288 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Cloner;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class VarCloner extends AbstractCloner
+{
+    private static $gid;
+    private static $arrayCache = [];
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function doClone($var)
+    {
+        $len = 1;                       // Length of $queue
+        $pos = 0;                       // Number of cloned items past the minimum depth
+        $refsCounter = 0;               // Hard references counter
+        $queue = [[$var]];    // This breadth-first queue is the return value
+        $hardRefs = [];            // Map of original zval ids to stub objects
+        $objRefs = [];             // Map of original object handles to their stub object counterpart
+        $objects = [];             // Keep a ref to objects to ensure their handle cannot be reused while cloning
+        $resRefs = [];             // Map of original resource handles to their stub object counterpart
+        $values = [];              // Map of stub objects' ids to original values
+        $maxItems = $this->maxItems;
+        $maxString = $this->maxString;
+        $minDepth = $this->minDepth;
+        $currentDepth = 0;              // Current tree depth
+        $currentDepthFinalIndex = 0;    // Final $queue index for current tree depth
+        $minimumDepthReached = 0 === $minDepth; // Becomes true when minimum tree depth has been reached
+        $cookie = (object) [];          // Unique object used to detect hard references
+        $a = null;                      // Array cast for nested structures
+        $stub = null;                   // Stub capturing the main properties of an original item value
+                                        // or null if the original value is used directly
+
+        if (!$gid = self::$gid) {
+            $gid = self::$gid = md5(random_bytes(6)); // Unique string used to detect the special $GLOBALS variable
+        }
+        $arrayStub = new Stub();
+        $arrayStub->type = Stub::TYPE_ARRAY;
+        $fromObjCast = false;
+
+        for ($i = 0; $i < $len; ++$i) {
+            // Detect when we move on to the next tree depth
+            if ($i > $currentDepthFinalIndex) {
+                ++$currentDepth;
+                $currentDepthFinalIndex = $len - 1;
+                if ($currentDepth >= $minDepth) {
+                    $minimumDepthReached = true;
+                }
+            }
+
+            $refs = $vals = $queue[$i];
+            foreach ($vals as $k => $v) {
+                // $v is the original value or a stub object in case of hard references
+
+                if (\PHP_VERSION_ID >= 70400) {
+                    $zvalIsRef = null !== \ReflectionReference::fromArrayElement($vals, $k);
+                } else {
+                    $refs[$k] = $cookie;
+                    $zvalIsRef = $vals[$k] === $cookie;
+                }
+
+                if ($zvalIsRef) {
+                    $vals[$k] = &$stub;         // Break hard references to make $queue completely
+                    unset($stub);               // independent from the original structure
+                    if ($v instanceof Stub && isset($hardRefs[spl_object_id($v)])) {
+                        $vals[$k] = $refs[$k] = $v;
+                        if ($v->value instanceof Stub && (Stub::TYPE_OBJECT === $v->value->type || Stub::TYPE_RESOURCE === $v->value->type)) {
+                            ++$v->value->refCount;
+                        }
+                        ++$v->refCount;
+                        continue;
+                    }
+                    $refs[$k] = $vals[$k] = new Stub();
+                    $refs[$k]->value = $v;
+                    $h = spl_object_id($refs[$k]);
+                    $hardRefs[$h] = &$refs[$k];
+                    $values[$h] = $v;
+                    $vals[$k]->handle = ++$refsCounter;
+                }
+                // Create $stub when the original value $v can not be used directly
+                // If $v is a nested structure, put that structure in array $a
+                switch (true) {
+                    case null === $v:
+                    case \is_bool($v):
+                    case \is_int($v):
+                    case \is_float($v):
+                        continue 2;
+                    case \is_string($v):
+                        if ('' === $v) {
+                            continue 2;
+                        }
+                        if (!preg_match('//u', $v)) {
+                            $stub = new Stub();
+                            $stub->type = Stub::TYPE_STRING;
+                            $stub->class = Stub::STRING_BINARY;
+                            if (0 <= $maxString && 0 < $cut = \strlen($v) - $maxString) {
+                                $stub->cut = $cut;
+                                $stub->value = substr($v, 0, -$cut);
+                            } else {
+                                $stub->value = $v;
+                            }
+                        } elseif (0 <= $maxString && isset($v[1 + ($maxString >> 2)]) && 0 < $cut = mb_strlen($v, 'UTF-8') - $maxString) {
+                            $stub = new Stub();
+                            $stub->type = Stub::TYPE_STRING;
+                            $stub->class = Stub::STRING_UTF8;
+                            $stub->cut = $cut;
+                            $stub->value = mb_substr($v, 0, $maxString, 'UTF-8');
+                        } else {
+                            continue 2;
+                        }
+                        $a = null;
+                        break;
+
+                    case \is_array($v):
+                        if (!$v) {
+                            continue 2;
+                        }
+                        $stub = $arrayStub;
+                        $stub->class = Stub::ARRAY_INDEXED;
+
+                        $j = -1;
+                        foreach ($v as $gk => $gv) {
+                            if ($gk !== ++$j) {
+                                $stub->class = Stub::ARRAY_ASSOC;
+                                break;
+                            }
+                        }
+                        $a = $v;
+
+                        if (Stub::ARRAY_ASSOC === $stub->class) {
+                            // Copies of $GLOBALS have very strange behavior,
+                            // let's detect them with some black magic
+                            if (\PHP_VERSION_ID < 80100 && ($a[$gid] = true) && isset($v[$gid])) {
+                                unset($v[$gid]);
+                                $a = [];
+                                foreach ($v as $gk => &$gv) {
+                                    if ($v === $gv) {
+                                        unset($v);
+                                        $v = new Stub();
+                                        $v->value = [$v->cut = \count($gv), Stub::TYPE_ARRAY => 0];
+                                        $v->handle = -1;
+                                        $gv = &$hardRefs[spl_object_id($v)];
+                                        $gv = $v;
+                                    }
+
+                                    $a[$gk] = &$gv;
+                                }
+                                unset($gv);
+                            } else {
+                                $a = $v;
+                            }
+                        }
+                        break;
+
+                    case \is_object($v):
+                        if (empty($objRefs[$h = spl_object_id($v)])) {
+                            $stub = new Stub();
+                            $stub->type = Stub::TYPE_OBJECT;
+                            $stub->class = \get_class($v);
+                            $stub->value = $v;
+                            $stub->handle = $h;
+                            $a = $this->castObject($stub, 0 < $i);
+                            if ($v !== $stub->value) {
+                                if (Stub::TYPE_OBJECT !== $stub->type || null === $stub->value) {
+                                    break;
+                                }
+                                $stub->handle = $h = spl_object_id($stub->value);
+                            }
+                            $stub->value = null;
+                            if (0 <= $maxItems && $maxItems <= $pos && $minimumDepthReached) {
+                                $stub->cut = \count($a);
+                                $a = null;
+                            }
+                        }
+                        if (empty($objRefs[$h])) {
+                            $objRefs[$h] = $stub;
+                            $objects[] = $v;
+                        } else {
+                            $stub = $objRefs[$h];
+                            ++$stub->refCount;
+                            $a = null;
+                        }
+                        break;
+
+                    default: // resource
+                        if (empty($resRefs[$h = (int) $v])) {
+                            $stub = new Stub();
+                            $stub->type = Stub::TYPE_RESOURCE;
+                            if ('Unknown' === $stub->class = @get_resource_type($v)) {
+                                $stub->class = 'Closed';
+                            }
+                            $stub->value = $v;
+                            $stub->handle = $h;
+                            $a = $this->castResource($stub, 0 < $i);
+                            $stub->value = null;
+                            if (0 <= $maxItems && $maxItems <= $pos && $minimumDepthReached) {
+                                $stub->cut = \count($a);
+                                $a = null;
+                            }
+                        }
+                        if (empty($resRefs[$h])) {
+                            $resRefs[$h] = $stub;
+                        } else {
+                            $stub = $resRefs[$h];
+                            ++$stub->refCount;
+                            $a = null;
+                        }
+                        break;
+                }
+
+                if ($a) {
+                    if (!$minimumDepthReached || 0 > $maxItems) {
+                        $queue[$len] = $a;
+                        $stub->position = $len++;
+                    } elseif ($pos < $maxItems) {
+                        if ($maxItems < $pos += \count($a)) {
+                            $a = \array_slice($a, 0, $maxItems - $pos, true);
+                            if ($stub->cut >= 0) {
+                                $stub->cut += $pos - $maxItems;
+                            }
+                        }
+                        $queue[$len] = $a;
+                        $stub->position = $len++;
+                    } elseif ($stub->cut >= 0) {
+                        $stub->cut += \count($a);
+                        $stub->position = 0;
+                    }
+                }
+
+                if ($arrayStub === $stub) {
+                    if ($arrayStub->cut) {
+                        $stub = [$arrayStub->cut, $arrayStub->class => $arrayStub->position];
+                        $arrayStub->cut = 0;
+                    } elseif (isset(self::$arrayCache[$arrayStub->class][$arrayStub->position])) {
+                        $stub = self::$arrayCache[$arrayStub->class][$arrayStub->position];
+                    } else {
+                        self::$arrayCache[$arrayStub->class][$arrayStub->position] = $stub = [$arrayStub->class => $arrayStub->position];
+                    }
+                }
+
+                if ($zvalIsRef) {
+                    $refs[$k]->value = $stub;
+                } else {
+                    $vals[$k] = $stub;
+                }
+            }
+
+            if ($fromObjCast) {
+                $fromObjCast = false;
+                $refs = $vals;
+                $vals = [];
+                $j = -1;
+                foreach ($queue[$i] as $k => $v) {
+                    foreach ([$k => true] as $gk => $gv) {
+                    }
+                    if ($gk !== $k) {
+                        $vals = (object) $vals;
+                        $vals->{$k} = $refs[++$j];
+                        $vals = (array) $vals;
+                    } else {
+                        $vals[$k] = $refs[++$j];
+                    }
+                }
+            }
+
+            $queue[$i] = $vals;
+        }
+
+        foreach ($values as $h => $v) {
+            $hardRefs[$h] = $v;
+        }
+
+        return $queue;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php
new file mode 100644
index 0000000..7d9ec0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php
@@ -0,0 +1,88 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Command\Descriptor;
+
+use Symfony\Component\Console\Formatter\OutputFormatterStyle;
+use Symfony\Component\Console\Input\ArrayInput;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Style\SymfonyStyle;
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Dumper\CliDumper;
+
+/**
+ * Describe collected data clones for cli output.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ *
+ * @final
+ */
+class CliDescriptor implements DumpDescriptorInterface
+{
+    private $dumper;
+    private $lastIdentifier;
+    private $supportsHref;
+
+    public function __construct(CliDumper $dumper)
+    {
+        $this->dumper = $dumper;
+        $this->supportsHref = method_exists(OutputFormatterStyle::class, 'setHref');
+    }
+
+    public function describe(OutputInterface $output, Data $data, array $context, int $clientId): void
+    {
+        $io = $output instanceof SymfonyStyle ? $output : new SymfonyStyle(new ArrayInput([]), $output);
+        $this->dumper->setColors($output->isDecorated());
+
+        $rows = [['date', date('r', (int) $context['timestamp'])]];
+        $lastIdentifier = $this->lastIdentifier;
+        $this->lastIdentifier = $clientId;
+
+        $section = "Received from client #$clientId";
+        if (isset($context['request'])) {
+            $request = $context['request'];
+            $this->lastIdentifier = $request['identifier'];
+            $section = sprintf('%s %s', $request['method'], $request['uri']);
+            if ($controller = $request['controller']) {
+                $rows[] = ['controller', rtrim($this->dumper->dump($controller, true), "\n")];
+            }
+        } elseif (isset($context['cli'])) {
+            $this->lastIdentifier = $context['cli']['identifier'];
+            $section = '$ '.$context['cli']['command_line'];
+        }
+
+        if ($this->lastIdentifier !== $lastIdentifier) {
+            $io->section($section);
+        }
+
+        if (isset($context['source'])) {
+            $source = $context['source'];
+            $sourceInfo = sprintf('%s on line %d', $source['name'], $source['line']);
+            $fileLink = $source['file_link'] ?? null;
+            if ($this->supportsHref && $fileLink) {
+                $sourceInfo = sprintf('<href=%s>%s</>', $fileLink, $sourceInfo);
+            }
+            $rows[] = ['source', $sourceInfo];
+            $file = $source['file_relative'] ?? $source['file'];
+            $rows[] = ['file', $file];
+        }
+
+        $io->table([], $rows);
+
+        if (!$this->supportsHref && isset($fileLink)) {
+            $io->writeln(['<info>Open source in your IDE/browser:</info>', $fileLink]);
+            $io->newLine();
+        }
+
+        $this->dumper->dump($data);
+        $io->newLine();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/DumpDescriptorInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/DumpDescriptorInterface.php
new file mode 100644
index 0000000..267d27b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/DumpDescriptorInterface.php
@@ -0,0 +1,23 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Command\Descriptor;
+
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\VarDumper\Cloner\Data;
+
+/**
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+interface DumpDescriptorInterface
+{
+    public function describe(OutputInterface $output, Data $data, array $context, int $clientId): void;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php
new file mode 100644
index 0000000..636b618
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php
@@ -0,0 +1,119 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Command\Descriptor;
+
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Dumper\HtmlDumper;
+
+/**
+ * Describe collected data clones for html output.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ *
+ * @final
+ */
+class HtmlDescriptor implements DumpDescriptorInterface
+{
+    private $dumper;
+    private $initialized = false;
+
+    public function __construct(HtmlDumper $dumper)
+    {
+        $this->dumper = $dumper;
+    }
+
+    public function describe(OutputInterface $output, Data $data, array $context, int $clientId): void
+    {
+        if (!$this->initialized) {
+            $styles = file_get_contents(__DIR__.'/../../Resources/css/htmlDescriptor.css');
+            $scripts = file_get_contents(__DIR__.'/../../Resources/js/htmlDescriptor.js');
+            $output->writeln("<style>$styles</style><script>$scripts</script>");
+            $this->initialized = true;
+        }
+
+        $title = '-';
+        if (isset($context['request'])) {
+            $request = $context['request'];
+            $controller = "<span class='dumped-tag'>{$this->dumper->dump($request['controller'], true, ['maxDepth' => 0])}</span>";
+            $title = sprintf('<code>%s</code> <a href="%s">%s</a>', $request['method'], $uri = $request['uri'], $uri);
+            $dedupIdentifier = $request['identifier'];
+        } elseif (isset($context['cli'])) {
+            $title = '<code>$ </code>'.$context['cli']['command_line'];
+            $dedupIdentifier = $context['cli']['identifier'];
+        } else {
+            $dedupIdentifier = uniqid('', true);
+        }
+
+        $sourceDescription = '';
+        if (isset($context['source'])) {
+            $source = $context['source'];
+            $projectDir = $source['project_dir'] ?? null;
+            $sourceDescription = sprintf('%s on line %d', $source['name'], $source['line']);
+            if (isset($source['file_link'])) {
+                $sourceDescription = sprintf('<a href="%s">%s</a>', $source['file_link'], $sourceDescription);
+            }
+        }
+
+        $isoDate = $this->extractDate($context, 'c');
+        $tags = array_filter([
+            'controller' => $controller ?? null,
+            'project dir' => $projectDir ?? null,
+        ]);
+
+        $output->writeln(<<<HTML
+<article data-dedup-id="$dedupIdentifier">
+    <header>
+        <div class="row">
+            <h2 class="col">$title</h2>
+            <time class="col text-small" title="$isoDate" datetime="$isoDate">
+                {$this->extractDate($context)}
+            </time>
+        </div>
+        {$this->renderTags($tags)}
+    </header>
+    <section class="body">
+        <p class="text-small">
+            $sourceDescription
+        </p>
+        {$this->dumper->dump($data, true)}
+    </section>
+</article>
+HTML
+        );
+    }
+
+    private function extractDate(array $context, string $format = 'r'): string
+    {
+        return date($format, (int) $context['timestamp']);
+    }
+
+    private function renderTags(array $tags): string
+    {
+        if (!$tags) {
+            return '';
+        }
+
+        $renderedTags = '';
+        foreach ($tags as $key => $value) {
+            $renderedTags .= sprintf('<li><span class="badge">%s</span>%s</li>', $key, $value);
+        }
+
+        return <<<HTML
+<div class="row">
+    <ul class="tags">
+        $renderedTags
+    </ul>
+</div>
+HTML;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/ServerDumpCommand.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/ServerDumpCommand.php
new file mode 100644
index 0000000..ead9d5b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Command/ServerDumpCommand.php
@@ -0,0 +1,102 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Command;
+
+use Symfony\Component\Console\Command\Command;
+use Symfony\Component\Console\Exception\InvalidArgumentException;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Style\SymfonyStyle;
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Command\Descriptor\CliDescriptor;
+use Symfony\Component\VarDumper\Command\Descriptor\DumpDescriptorInterface;
+use Symfony\Component\VarDumper\Command\Descriptor\HtmlDescriptor;
+use Symfony\Component\VarDumper\Dumper\CliDumper;
+use Symfony\Component\VarDumper\Dumper\HtmlDumper;
+use Symfony\Component\VarDumper\Server\DumpServer;
+
+/**
+ * Starts a dump server to collect and output dumps on a single place with multiple formats support.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ *
+ * @final
+ */
+class ServerDumpCommand extends Command
+{
+    protected static $defaultName = 'server:dump';
+    protected static $defaultDescription = 'Start a dump server that collects and displays dumps in a single place';
+
+    private $server;
+
+    /** @var DumpDescriptorInterface[] */
+    private $descriptors;
+
+    public function __construct(DumpServer $server, array $descriptors = [])
+    {
+        $this->server = $server;
+        $this->descriptors = $descriptors + [
+            'cli' => new CliDescriptor(new CliDumper()),
+            'html' => new HtmlDescriptor(new HtmlDumper()),
+        ];
+
+        parent::__construct();
+    }
+
+    protected function configure()
+    {
+        $availableFormats = implode(', ', array_keys($this->descriptors));
+
+        $this
+            ->addOption('format', null, InputOption::VALUE_REQUIRED, sprintf('The output format (%s)', $availableFormats), 'cli')
+            ->setDescription(self::$defaultDescription)
+            ->setHelp(<<<'EOF'
+<info>%command.name%</info> starts a dump server that collects and displays
+dumps in a single place for debugging you application:
+
+  <info>php %command.full_name%</info>
+
+You can consult dumped data in HTML format in your browser by providing the <comment>--format=html</comment> option
+and redirecting the output to a file:
+
+  <info>php %command.full_name% --format="html" > dump.html</info>
+
+EOF
+            )
+        ;
+    }
+
+    protected function execute(InputInterface $input, OutputInterface $output): int
+    {
+        $io = new SymfonyStyle($input, $output);
+        $format = $input->getOption('format');
+
+        if (!$descriptor = $this->descriptors[$format] ?? null) {
+            throw new InvalidArgumentException(sprintf('Unsupported format "%s".', $format));
+        }
+
+        $errorIo = $io->getErrorStyle();
+        $errorIo->title('Symfony Var Dumper Server');
+
+        $this->server->start();
+
+        $errorIo->success(sprintf('Server listening on %s', $this->server->getHost()));
+        $errorIo->comment('Quit the server with CONTROL-C.');
+
+        $this->server->listen(function (Data $data, array $context, int $clientId) use ($descriptor, $io) {
+            $descriptor->describe($io, $data, $context, $clientId);
+        });
+
+        return 0;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/AbstractDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/AbstractDumper.php
new file mode 100644
index 0000000..6064ea9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/AbstractDumper.php
@@ -0,0 +1,204 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Cloner\DumperInterface;
+
+/**
+ * Abstract mechanism for dumping a Data object.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+abstract class AbstractDumper implements DataDumperInterface, DumperInterface
+{
+    public const DUMP_LIGHT_ARRAY = 1;
+    public const DUMP_STRING_LENGTH = 2;
+    public const DUMP_COMMA_SEPARATOR = 4;
+    public const DUMP_TRAILING_COMMA = 8;
+
+    public static $defaultOutput = 'php://output';
+
+    protected $line = '';
+    protected $lineDumper;
+    protected $outputStream;
+    protected $decimalPoint; // This is locale dependent
+    protected $indentPad = '  ';
+    protected $flags;
+
+    private $charset = '';
+
+    /**
+     * @param callable|resource|string|null $output  A line dumper callable, an opened stream or an output path, defaults to static::$defaultOutput
+     * @param string|null                   $charset The default character encoding to use for non-UTF8 strings
+     * @param int                           $flags   A bit field of static::DUMP_* constants to fine tune dumps representation
+     */
+    public function __construct($output = null, string $charset = null, int $flags = 0)
+    {
+        $this->flags = $flags;
+        $this->setCharset($charset ?: ini_get('php.output_encoding') ?: ini_get('default_charset') ?: 'UTF-8');
+        $this->decimalPoint = localeconv();
+        $this->decimalPoint = $this->decimalPoint['decimal_point'];
+        $this->setOutput($output ?: static::$defaultOutput);
+        if (!$output && \is_string(static::$defaultOutput)) {
+            static::$defaultOutput = $this->outputStream;
+        }
+    }
+
+    /**
+     * Sets the output destination of the dumps.
+     *
+     * @param callable|resource|string $output A line dumper callable, an opened stream or an output path
+     *
+     * @return callable|resource|string The previous output destination
+     */
+    public function setOutput($output)
+    {
+        $prev = $this->outputStream ?? $this->lineDumper;
+
+        if (\is_callable($output)) {
+            $this->outputStream = null;
+            $this->lineDumper = $output;
+        } else {
+            if (\is_string($output)) {
+                $output = fopen($output, 'w');
+            }
+            $this->outputStream = $output;
+            $this->lineDumper = [$this, 'echoLine'];
+        }
+
+        return $prev;
+    }
+
+    /**
+     * Sets the default character encoding to use for non-UTF8 strings.
+     *
+     * @return string The previous charset
+     */
+    public function setCharset(string $charset)
+    {
+        $prev = $this->charset;
+
+        $charset = strtoupper($charset);
+        $charset = null === $charset || 'UTF-8' === $charset || 'UTF8' === $charset ? 'CP1252' : $charset;
+
+        $this->charset = $charset;
+
+        return $prev;
+    }
+
+    /**
+     * Sets the indentation pad string.
+     *
+     * @param string $pad A string that will be prepended to dumped lines, repeated by nesting level
+     *
+     * @return string The previous indent pad
+     */
+    public function setIndentPad(string $pad)
+    {
+        $prev = $this->indentPad;
+        $this->indentPad = $pad;
+
+        return $prev;
+    }
+
+    /**
+     * Dumps a Data object.
+     *
+     * @param callable|resource|string|true|null $output A line dumper callable, an opened stream, an output path or true to return the dump
+     *
+     * @return string|null The dump as string when $output is true
+     */
+    public function dump(Data $data, $output = null)
+    {
+        $this->decimalPoint = localeconv();
+        $this->decimalPoint = $this->decimalPoint['decimal_point'];
+
+        if ($locale = $this->flags & (self::DUMP_COMMA_SEPARATOR | self::DUMP_TRAILING_COMMA) ? setlocale(\LC_NUMERIC, 0) : null) {
+            setlocale(\LC_NUMERIC, 'C');
+        }
+
+        if ($returnDump = true === $output) {
+            $output = fopen('php://memory', 'r+');
+        }
+        if ($output) {
+            $prevOutput = $this->setOutput($output);
+        }
+        try {
+            $data->dump($this);
+            $this->dumpLine(-1);
+
+            if ($returnDump) {
+                $result = stream_get_contents($output, -1, 0);
+                fclose($output);
+
+                return $result;
+            }
+        } finally {
+            if ($output) {
+                $this->setOutput($prevOutput);
+            }
+            if ($locale) {
+                setlocale(\LC_NUMERIC, $locale);
+            }
+        }
+
+        return null;
+    }
+
+    /**
+     * Dumps the current line.
+     *
+     * @param int $depth The recursive depth in the dumped structure for the line being dumped,
+     *                   or -1 to signal the end-of-dump to the line dumper callable
+     */
+    protected function dumpLine(int $depth)
+    {
+        ($this->lineDumper)($this->line, $depth, $this->indentPad);
+        $this->line = '';
+    }
+
+    /**
+     * Generic line dumper callback.
+     */
+    protected function echoLine(string $line, int $depth, string $indentPad)
+    {
+        if (-1 !== $depth) {
+            fwrite($this->outputStream, str_repeat($indentPad, $depth).$line."\n");
+        }
+    }
+
+    /**
+     * Converts a non-UTF-8 string to UTF-8.
+     *
+     * @return string|null The string converted to UTF-8
+     */
+    protected function utf8Encode(?string $s)
+    {
+        if (null === $s || preg_match('//u', $s)) {
+            return $s;
+        }
+
+        if (!\function_exists('iconv')) {
+            throw new \RuntimeException('Unable to convert a non-UTF-8 string to UTF-8: required function iconv() does not exist. You should install ext-iconv or symfony/polyfill-iconv.');
+        }
+
+        if (false !== $c = @iconv($this->charset, 'UTF-8', $s)) {
+            return $c;
+        }
+        if ('CP1252' !== $this->charset && false !== $c = @iconv('CP1252', 'UTF-8', $s)) {
+            return $c;
+        }
+
+        return iconv('CP850', 'UTF-8', $s);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/CliDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/CliDumper.php
new file mode 100644
index 0000000..c1539ee
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/CliDumper.php
@@ -0,0 +1,643 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Cursor;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * CliDumper dumps variables for command line output.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class CliDumper extends AbstractDumper
+{
+    public static $defaultColors;
+    public static $defaultOutput = 'php://stdout';
+
+    protected $colors;
+    protected $maxStringWidth = 0;
+    protected $styles = [
+        // See http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
+        'default' => '0;38;5;208',
+        'num' => '1;38;5;38',
+        'const' => '1;38;5;208',
+        'str' => '1;38;5;113',
+        'note' => '38;5;38',
+        'ref' => '38;5;247',
+        'public' => '',
+        'protected' => '',
+        'private' => '',
+        'meta' => '38;5;170',
+        'key' => '38;5;113',
+        'index' => '38;5;38',
+    ];
+
+    protected static $controlCharsRx = '/[\x00-\x1F\x7F]+/';
+    protected static $controlCharsMap = [
+        "\t" => '\t',
+        "\n" => '\n',
+        "\v" => '\v',
+        "\f" => '\f',
+        "\r" => '\r',
+        "\033" => '\e',
+    ];
+
+    protected $collapseNextHash = false;
+    protected $expandNextHash = false;
+
+    private $displayOptions = [
+        'fileLinkFormat' => null,
+    ];
+
+    private $handlesHrefGracefully;
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct($output = null, string $charset = null, int $flags = 0)
+    {
+        parent::__construct($output, $charset, $flags);
+
+        if ('\\' === \DIRECTORY_SEPARATOR && !$this->isWindowsTrueColor()) {
+            // Use only the base 16 xterm colors when using ANSICON or standard Windows 10 CLI
+            $this->setStyles([
+                'default' => '31',
+                'num' => '1;34',
+                'const' => '1;31',
+                'str' => '1;32',
+                'note' => '34',
+                'ref' => '1;30',
+                'meta' => '35',
+                'key' => '32',
+                'index' => '34',
+            ]);
+        }
+
+        $this->displayOptions['fileLinkFormat'] = ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format') ?: 'file://%f#L%l';
+    }
+
+    /**
+     * Enables/disables colored output.
+     */
+    public function setColors(bool $colors)
+    {
+        $this->colors = $colors;
+    }
+
+    /**
+     * Sets the maximum number of characters per line for dumped strings.
+     */
+    public function setMaxStringWidth(int $maxStringWidth)
+    {
+        $this->maxStringWidth = $maxStringWidth;
+    }
+
+    /**
+     * Configures styles.
+     *
+     * @param array $styles A map of style names to style definitions
+     */
+    public function setStyles(array $styles)
+    {
+        $this->styles = $styles + $this->styles;
+    }
+
+    /**
+     * Configures display options.
+     *
+     * @param array $displayOptions A map of display options to customize the behavior
+     */
+    public function setDisplayOptions(array $displayOptions)
+    {
+        $this->displayOptions = $displayOptions + $this->displayOptions;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dumpScalar(Cursor $cursor, string $type, $value)
+    {
+        $this->dumpKey($cursor);
+
+        $style = 'const';
+        $attr = $cursor->attr;
+
+        switch ($type) {
+            case 'default':
+                $style = 'default';
+                break;
+
+            case 'integer':
+                $style = 'num';
+                break;
+
+            case 'double':
+                $style = 'num';
+
+                switch (true) {
+                    case \INF === $value:  $value = 'INF'; break;
+                    case -\INF === $value: $value = '-INF'; break;
+                    case is_nan($value):  $value = 'NAN'; break;
+                    default:
+                        $value = (string) $value;
+                        if (!str_contains($value, $this->decimalPoint)) {
+                            $value .= $this->decimalPoint.'0';
+                        }
+                        break;
+                }
+                break;
+
+            case 'NULL':
+                $value = 'null';
+                break;
+
+            case 'boolean':
+                $value = $value ? 'true' : 'false';
+                break;
+
+            default:
+                $attr += ['value' => $this->utf8Encode($value)];
+                $value = $this->utf8Encode($type);
+                break;
+        }
+
+        $this->line .= $this->style($style, $value, $attr);
+
+        $this->endValue($cursor);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dumpString(Cursor $cursor, string $str, bool $bin, int $cut)
+    {
+        $this->dumpKey($cursor);
+        $attr = $cursor->attr;
+
+        if ($bin) {
+            $str = $this->utf8Encode($str);
+        }
+        if ('' === $str) {
+            $this->line .= '""';
+            $this->endValue($cursor);
+        } else {
+            $attr += [
+                'length' => 0 <= $cut ? mb_strlen($str, 'UTF-8') + $cut : 0,
+                'binary' => $bin,
+            ];
+            $str = $bin && false !== strpos($str, "\0") ? [$str] : explode("\n", $str);
+            if (isset($str[1]) && !isset($str[2]) && !isset($str[1][0])) {
+                unset($str[1]);
+                $str[0] .= "\n";
+            }
+            $m = \count($str) - 1;
+            $i = $lineCut = 0;
+
+            if (self::DUMP_STRING_LENGTH & $this->flags) {
+                $this->line .= '('.$attr['length'].') ';
+            }
+            if ($bin) {
+                $this->line .= 'b';
+            }
+
+            if ($m) {
+                $this->line .= '"""';
+                $this->dumpLine($cursor->depth);
+            } else {
+                $this->line .= '"';
+            }
+
+            foreach ($str as $str) {
+                if ($i < $m) {
+                    $str .= "\n";
+                }
+                if (0 < $this->maxStringWidth && $this->maxStringWidth < $len = mb_strlen($str, 'UTF-8')) {
+                    $str = mb_substr($str, 0, $this->maxStringWidth, 'UTF-8');
+                    $lineCut = $len - $this->maxStringWidth;
+                }
+                if ($m && 0 < $cursor->depth) {
+                    $this->line .= $this->indentPad;
+                }
+                if ('' !== $str) {
+                    $this->line .= $this->style('str', $str, $attr);
+                }
+                if ($i++ == $m) {
+                    if ($m) {
+                        if ('' !== $str) {
+                            $this->dumpLine($cursor->depth);
+                            if (0 < $cursor->depth) {
+                                $this->line .= $this->indentPad;
+                            }
+                        }
+                        $this->line .= '"""';
+                    } else {
+                        $this->line .= '"';
+                    }
+                    if ($cut < 0) {
+                        $this->line .= '…';
+                        $lineCut = 0;
+                    } elseif ($cut) {
+                        $lineCut += $cut;
+                    }
+                }
+                if ($lineCut) {
+                    $this->line .= '…'.$lineCut;
+                    $lineCut = 0;
+                }
+
+                if ($i > $m) {
+                    $this->endValue($cursor);
+                } else {
+                    $this->dumpLine($cursor->depth);
+                }
+            }
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function enterHash(Cursor $cursor, int $type, $class, bool $hasChild)
+    {
+        if (null === $this->colors) {
+            $this->colors = $this->supportsColors();
+        }
+
+        $this->dumpKey($cursor);
+        $attr = $cursor->attr;
+
+        if ($this->collapseNextHash) {
+            $cursor->skipChildren = true;
+            $this->collapseNextHash = $hasChild = false;
+        }
+
+        $class = $this->utf8Encode($class);
+        if (Cursor::HASH_OBJECT === $type) {
+            $prefix = $class && 'stdClass' !== $class ? $this->style('note', $class, $attr).(empty($attr['cut_hash']) ? ' {' : '') : '{';
+        } elseif (Cursor::HASH_RESOURCE === $type) {
+            $prefix = $this->style('note', $class.' resource', $attr).($hasChild ? ' {' : ' ');
+        } else {
+            $prefix = $class && !(self::DUMP_LIGHT_ARRAY & $this->flags) ? $this->style('note', 'array:'.$class).' [' : '[';
+        }
+
+        if (($cursor->softRefCount || 0 < $cursor->softRefHandle) && empty($attr['cut_hash'])) {
+            $prefix .= $this->style('ref', (Cursor::HASH_RESOURCE === $type ? '@' : '#').(0 < $cursor->softRefHandle ? $cursor->softRefHandle : $cursor->softRefTo), ['count' => $cursor->softRefCount]);
+        } elseif ($cursor->hardRefTo && !$cursor->refIndex && $class) {
+            $prefix .= $this->style('ref', '&'.$cursor->hardRefTo, ['count' => $cursor->hardRefCount]);
+        } elseif (!$hasChild && Cursor::HASH_RESOURCE === $type) {
+            $prefix = substr($prefix, 0, -1);
+        }
+
+        $this->line .= $prefix;
+
+        if ($hasChild) {
+            $this->dumpLine($cursor->depth);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function leaveHash(Cursor $cursor, int $type, $class, bool $hasChild, int $cut)
+    {
+        if (empty($cursor->attr['cut_hash'])) {
+            $this->dumpEllipsis($cursor, $hasChild, $cut);
+            $this->line .= Cursor::HASH_OBJECT === $type ? '}' : (Cursor::HASH_RESOURCE !== $type ? ']' : ($hasChild ? '}' : ''));
+        }
+
+        $this->endValue($cursor);
+    }
+
+    /**
+     * Dumps an ellipsis for cut children.
+     *
+     * @param bool $hasChild When the dump of the hash has child item
+     * @param int  $cut      The number of items the hash has been cut by
+     */
+    protected function dumpEllipsis(Cursor $cursor, bool $hasChild, int $cut)
+    {
+        if ($cut) {
+            $this->line .= ' …';
+            if (0 < $cut) {
+                $this->line .= $cut;
+            }
+            if ($hasChild) {
+                $this->dumpLine($cursor->depth + 1);
+            }
+        }
+    }
+
+    /**
+     * Dumps a key in a hash structure.
+     */
+    protected function dumpKey(Cursor $cursor)
+    {
+        if (null !== $key = $cursor->hashKey) {
+            if ($cursor->hashKeyIsBinary) {
+                $key = $this->utf8Encode($key);
+            }
+            $attr = ['binary' => $cursor->hashKeyIsBinary];
+            $bin = $cursor->hashKeyIsBinary ? 'b' : '';
+            $style = 'key';
+            switch ($cursor->hashType) {
+                default:
+                case Cursor::HASH_INDEXED:
+                    if (self::DUMP_LIGHT_ARRAY & $this->flags) {
+                        break;
+                    }
+                    $style = 'index';
+                    // no break
+                case Cursor::HASH_ASSOC:
+                    if (\is_int($key)) {
+                        $this->line .= $this->style($style, $key).' => ';
+                    } else {
+                        $this->line .= $bin.'"'.$this->style($style, $key).'" => ';
+                    }
+                    break;
+
+                case Cursor::HASH_RESOURCE:
+                    $key = "\0~\0".$key;
+                    // no break
+                case Cursor::HASH_OBJECT:
+                    if (!isset($key[0]) || "\0" !== $key[0]) {
+                        $this->line .= '+'.$bin.$this->style('public', $key).': ';
+                    } elseif (0 < strpos($key, "\0", 1)) {
+                        $key = explode("\0", substr($key, 1), 2);
+
+                        switch ($key[0][0]) {
+                            case '+': // User inserted keys
+                                $attr['dynamic'] = true;
+                                $this->line .= '+'.$bin.'"'.$this->style('public', $key[1], $attr).'": ';
+                                break 2;
+                            case '~':
+                                $style = 'meta';
+                                if (isset($key[0][1])) {
+                                    parse_str(substr($key[0], 1), $attr);
+                                    $attr += ['binary' => $cursor->hashKeyIsBinary];
+                                }
+                                break;
+                            case '*':
+                                $style = 'protected';
+                                $bin = '#'.$bin;
+                                break;
+                            default:
+                                $attr['class'] = $key[0];
+                                $style = 'private';
+                                $bin = '-'.$bin;
+                                break;
+                        }
+
+                        if (isset($attr['collapse'])) {
+                            if ($attr['collapse']) {
+                                $this->collapseNextHash = true;
+                            } else {
+                                $this->expandNextHash = true;
+                            }
+                        }
+
+                        $this->line .= $bin.$this->style($style, $key[1], $attr).($attr['separator'] ?? ': ');
+                    } else {
+                        // This case should not happen
+                        $this->line .= '-'.$bin.'"'.$this->style('private', $key, ['class' => '']).'": ';
+                    }
+                    break;
+            }
+
+            if ($cursor->hardRefTo) {
+                $this->line .= $this->style('ref', '&'.($cursor->hardRefCount ? $cursor->hardRefTo : ''), ['count' => $cursor->hardRefCount]).' ';
+            }
+        }
+    }
+
+    /**
+     * Decorates a value with some style.
+     *
+     * @param string $style The type of style being applied
+     * @param string $value The value being styled
+     * @param array  $attr  Optional context information
+     *
+     * @return string The value with style decoration
+     */
+    protected function style(string $style, string $value, array $attr = [])
+    {
+        if (null === $this->colors) {
+            $this->colors = $this->supportsColors();
+        }
+
+        if (null === $this->handlesHrefGracefully) {
+            $this->handlesHrefGracefully = 'JetBrains-JediTerm' !== getenv('TERMINAL_EMULATOR')
+                && (!getenv('KONSOLE_VERSION') || (int) getenv('KONSOLE_VERSION') > 201100);
+        }
+
+        if (isset($attr['ellipsis'], $attr['ellipsis-type'])) {
+            $prefix = substr($value, 0, -$attr['ellipsis']);
+            if ('cli' === \PHP_SAPI && 'path' === $attr['ellipsis-type'] && isset($_SERVER[$pwd = '\\' === \DIRECTORY_SEPARATOR ? 'CD' : 'PWD']) && str_starts_with($prefix, $_SERVER[$pwd])) {
+                $prefix = '.'.substr($prefix, \strlen($_SERVER[$pwd]));
+            }
+            if (!empty($attr['ellipsis-tail'])) {
+                $prefix .= substr($value, -$attr['ellipsis'], $attr['ellipsis-tail']);
+                $value = substr($value, -$attr['ellipsis'] + $attr['ellipsis-tail']);
+            } else {
+                $value = substr($value, -$attr['ellipsis']);
+            }
+
+            $value = $this->style('default', $prefix).$this->style($style, $value);
+
+            goto href;
+        }
+
+        $map = static::$controlCharsMap;
+        $startCchr = $this->colors ? "\033[m\033[{$this->styles['default']}m" : '';
+        $endCchr = $this->colors ? "\033[m\033[{$this->styles[$style]}m" : '';
+        $value = preg_replace_callback(static::$controlCharsRx, function ($c) use ($map, $startCchr, $endCchr) {
+            $s = $startCchr;
+            $c = $c[$i = 0];
+            do {
+                $s .= $map[$c[$i]] ?? sprintf('\x%02X', \ord($c[$i]));
+            } while (isset($c[++$i]));
+
+            return $s.$endCchr;
+        }, $value, -1, $cchrCount);
+
+        if ($this->colors) {
+            if ($cchrCount && "\033" === $value[0]) {
+                $value = substr($value, \strlen($startCchr));
+            } else {
+                $value = "\033[{$this->styles[$style]}m".$value;
+            }
+            if ($cchrCount && str_ends_with($value, $endCchr)) {
+                $value = substr($value, 0, -\strlen($endCchr));
+            } else {
+                $value .= "\033[{$this->styles['default']}m";
+            }
+        }
+
+        href:
+        if ($this->colors && $this->handlesHrefGracefully) {
+            if (isset($attr['file']) && $href = $this->getSourceLink($attr['file'], $attr['line'] ?? 0)) {
+                if ('note' === $style) {
+                    $value .= "\033]8;;{$href}\033\\^\033]8;;\033\\";
+                } else {
+                    $attr['href'] = $href;
+                }
+            }
+            if (isset($attr['href'])) {
+                $value = "\033]8;;{$attr['href']}\033\\{$value}\033]8;;\033\\";
+            }
+        } elseif ($attr['if_links'] ?? false) {
+            return '';
+        }
+
+        return $value;
+    }
+
+    /**
+     * @return bool Tells if the current output stream supports ANSI colors or not
+     */
+    protected function supportsColors()
+    {
+        if ($this->outputStream !== static::$defaultOutput) {
+            return $this->hasColorSupport($this->outputStream);
+        }
+        if (null !== static::$defaultColors) {
+            return static::$defaultColors;
+        }
+        if (isset($_SERVER['argv'][1])) {
+            $colors = $_SERVER['argv'];
+            $i = \count($colors);
+            while (--$i > 0) {
+                if (isset($colors[$i][5])) {
+                    switch ($colors[$i]) {
+                        case '--ansi':
+                        case '--color':
+                        case '--color=yes':
+                        case '--color=force':
+                        case '--color=always':
+                        case '--colors=always':
+                            return static::$defaultColors = true;
+
+                        case '--no-ansi':
+                        case '--color=no':
+                        case '--color=none':
+                        case '--color=never':
+                        case '--colors=never':
+                            return static::$defaultColors = false;
+                    }
+                }
+            }
+        }
+
+        $h = stream_get_meta_data($this->outputStream) + ['wrapper_type' => null];
+        $h = 'Output' === $h['stream_type'] && 'PHP' === $h['wrapper_type'] ? fopen('php://stdout', 'w') : $this->outputStream;
+
+        return static::$defaultColors = $this->hasColorSupport($h);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function dumpLine(int $depth, bool $endOfValue = false)
+    {
+        if ($this->colors) {
+            $this->line = sprintf("\033[%sm%s\033[m", $this->styles['default'], $this->line);
+        }
+        parent::dumpLine($depth);
+    }
+
+    protected function endValue(Cursor $cursor)
+    {
+        if (-1 === $cursor->hashType) {
+            return;
+        }
+
+        if (Stub::ARRAY_INDEXED === $cursor->hashType || Stub::ARRAY_ASSOC === $cursor->hashType) {
+            if (self::DUMP_TRAILING_COMMA & $this->flags && 0 < $cursor->depth) {
+                $this->line .= ',';
+            } elseif (self::DUMP_COMMA_SEPARATOR & $this->flags && 1 < $cursor->hashLength - $cursor->hashIndex) {
+                $this->line .= ',';
+            }
+        }
+
+        $this->dumpLine($cursor->depth, true);
+    }
+
+    /**
+     * Returns true if the stream supports colorization.
+     *
+     * Reference: Composer\XdebugHandler\Process::supportsColor
+     * https://github.com/composer/xdebug-handler
+     *
+     * @param mixed $stream A CLI output stream
+     */
+    private function hasColorSupport($stream): bool
+    {
+        if (!\is_resource($stream) || 'stream' !== get_resource_type($stream)) {
+            return false;
+        }
+
+        // Follow https://no-color.org/
+        if (isset($_SERVER['NO_COLOR']) || false !== getenv('NO_COLOR')) {
+            return false;
+        }
+
+        if ('Hyper' === getenv('TERM_PROGRAM')) {
+            return true;
+        }
+
+        if (\DIRECTORY_SEPARATOR === '\\') {
+            return (\function_exists('sapi_windows_vt100_support')
+                && @sapi_windows_vt100_support($stream))
+                || false !== getenv('ANSICON')
+                || 'ON' === getenv('ConEmuANSI')
+                || 'xterm' === getenv('TERM');
+        }
+
+        return stream_isatty($stream);
+    }
+
+    /**
+     * Returns true if the Windows terminal supports true color.
+     *
+     * Note that this does not check an output stream, but relies on environment
+     * variables from known implementations, or a PHP and Windows version that
+     * supports true color.
+     */
+    private function isWindowsTrueColor(): bool
+    {
+        $result = 183 <= getenv('ANSICON_VER')
+            || 'ON' === getenv('ConEmuANSI')
+            || 'xterm' === getenv('TERM')
+            || 'Hyper' === getenv('TERM_PROGRAM');
+
+        if (!$result) {
+            $version = sprintf(
+                '%s.%s.%s',
+                PHP_WINDOWS_VERSION_MAJOR,
+                PHP_WINDOWS_VERSION_MINOR,
+                PHP_WINDOWS_VERSION_BUILD
+            );
+            $result = $version >= '10.0.15063';
+        }
+
+        return $result;
+    }
+
+    private function getSourceLink(string $file, int $line)
+    {
+        if ($fmt = $this->displayOptions['fileLinkFormat']) {
+            return \is_string($fmt) ? strtr($fmt, ['%f' => $file, '%l' => $line]) : ($fmt->format($file, $line) ?: 'file://'.$file.'#L'.$line);
+        }
+
+        return false;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php
new file mode 100644
index 0000000..38f8789
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php
@@ -0,0 +1,32 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper\ContextProvider;
+
+/**
+ * Tries to provide context on CLI.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+final class CliContextProvider implements ContextProviderInterface
+{
+    public function getContext(): ?array
+    {
+        if ('cli' !== \PHP_SAPI) {
+            return null;
+        }
+
+        return [
+            'command_line' => $commandLine = implode(' ', $_SERVER['argv'] ?? []),
+            'identifier' => hash('crc32b', $commandLine.$_SERVER['REQUEST_TIME_FLOAT']),
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php
new file mode 100644
index 0000000..38ef3b0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php
@@ -0,0 +1,25 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper\ContextProvider;
+
+/**
+ * Interface to provide contextual data about dump data clones sent to a server.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+interface ContextProviderInterface
+{
+    /**
+     * @return array|null Context data or null if unable to provide any context
+     */
+    public function getContext(): ?array;
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php
new file mode 100644
index 0000000..3684a47
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php
@@ -0,0 +1,51 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper\ContextProvider;
+
+use Symfony\Component\HttpFoundation\RequestStack;
+use Symfony\Component\VarDumper\Caster\ReflectionCaster;
+use Symfony\Component\VarDumper\Cloner\VarCloner;
+
+/**
+ * Tries to provide context from a request.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+final class RequestContextProvider implements ContextProviderInterface
+{
+    private $requestStack;
+    private $cloner;
+
+    public function __construct(RequestStack $requestStack)
+    {
+        $this->requestStack = $requestStack;
+        $this->cloner = new VarCloner();
+        $this->cloner->setMaxItems(0);
+        $this->cloner->addCasters(ReflectionCaster::UNSET_CLOSURE_FILE_INFO);
+    }
+
+    public function getContext(): ?array
+    {
+        if (null === $request = $this->requestStack->getCurrentRequest()) {
+            return null;
+        }
+
+        $controller = $request->attributes->get('_controller');
+
+        return [
+            'uri' => $request->getUri(),
+            'method' => $request->getMethod(),
+            'controller' => $controller ? $this->cloner->cloneVar($controller) : $controller,
+            'identifier' => spl_object_hash($request),
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php
new file mode 100644
index 0000000..2e2c818
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php
@@ -0,0 +1,126 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper\ContextProvider;
+
+use Symfony\Component\HttpKernel\Debug\FileLinkFormatter;
+use Symfony\Component\VarDumper\Cloner\VarCloner;
+use Symfony\Component\VarDumper\Dumper\HtmlDumper;
+use Symfony\Component\VarDumper\VarDumper;
+use Twig\Template;
+
+/**
+ * Tries to provide context from sources (class name, file, line, code excerpt, ...).
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+final class SourceContextProvider implements ContextProviderInterface
+{
+    private $limit;
+    private $charset;
+    private $projectDir;
+    private $fileLinkFormatter;
+
+    public function __construct(string $charset = null, string $projectDir = null, FileLinkFormatter $fileLinkFormatter = null, int $limit = 9)
+    {
+        $this->charset = $charset;
+        $this->projectDir = $projectDir;
+        $this->fileLinkFormatter = $fileLinkFormatter;
+        $this->limit = $limit;
+    }
+
+    public function getContext(): ?array
+    {
+        $trace = debug_backtrace(\DEBUG_BACKTRACE_PROVIDE_OBJECT | \DEBUG_BACKTRACE_IGNORE_ARGS, $this->limit);
+
+        $file = $trace[1]['file'];
+        $line = $trace[1]['line'];
+        $name = false;
+        $fileExcerpt = false;
+
+        for ($i = 2; $i < $this->limit; ++$i) {
+            if (isset($trace[$i]['class'], $trace[$i]['function'])
+                && 'dump' === $trace[$i]['function']
+                && VarDumper::class === $trace[$i]['class']
+            ) {
+                $file = $trace[$i]['file'] ?? $file;
+                $line = $trace[$i]['line'] ?? $line;
+
+                while (++$i < $this->limit) {
+                    if (isset($trace[$i]['function'], $trace[$i]['file']) && empty($trace[$i]['class']) && !str_starts_with($trace[$i]['function'], 'call_user_func')) {
+                        $file = $trace[$i]['file'];
+                        $line = $trace[$i]['line'];
+
+                        break;
+                    } elseif (isset($trace[$i]['object']) && $trace[$i]['object'] instanceof Template) {
+                        $template = $trace[$i]['object'];
+                        $name = $template->getTemplateName();
+                        $src = method_exists($template, 'getSourceContext') ? $template->getSourceContext()->getCode() : (method_exists($template, 'getSource') ? $template->getSource() : false);
+                        $info = $template->getDebugInfo();
+                        if (isset($info[$trace[$i - 1]['line']])) {
+                            $line = $info[$trace[$i - 1]['line']];
+                            $file = method_exists($template, 'getSourceContext') ? $template->getSourceContext()->getPath() : null;
+
+                            if ($src) {
+                                $src = explode("\n", $src);
+                                $fileExcerpt = [];
+
+                                for ($i = max($line - 3, 1), $max = min($line + 3, \count($src)); $i <= $max; ++$i) {
+                                    $fileExcerpt[] = '<li'.($i === $line ? ' class="selected"' : '').'><code>'.$this->htmlEncode($src[$i - 1]).'</code></li>';
+                                }
+
+                                $fileExcerpt = '<ol start="'.max($line - 3, 1).'">'.implode("\n", $fileExcerpt).'</ol>';
+                            }
+                        }
+                        break;
+                    }
+                }
+                break;
+            }
+        }
+
+        if (false === $name) {
+            $name = str_replace('\\', '/', $file);
+            $name = substr($name, strrpos($name, '/') + 1);
+        }
+
+        $context = ['name' => $name, 'file' => $file, 'line' => $line];
+        $context['file_excerpt'] = $fileExcerpt;
+
+        if (null !== $this->projectDir) {
+            $context['project_dir'] = $this->projectDir;
+            if (str_starts_with($file, $this->projectDir)) {
+                $context['file_relative'] = ltrim(substr($file, \strlen($this->projectDir)), \DIRECTORY_SEPARATOR);
+            }
+        }
+
+        if ($this->fileLinkFormatter && $fileLink = $this->fileLinkFormatter->format($context['file'], $context['line'])) {
+            $context['file_link'] = $fileLink;
+        }
+
+        return $context;
+    }
+
+    private function htmlEncode(string $s): string
+    {
+        $html = '';
+
+        $dumper = new HtmlDumper(function ($line) use (&$html) { $html .= $line; }, $this->charset);
+        $dumper->setDumpHeader('');
+        $dumper->setDumpBoundaries('', '');
+
+        $cloner = new VarCloner();
+        $dumper->dump($cloner->cloneVar($s));
+
+        return substr(strip_tags($html), 1, -1);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php
new file mode 100644
index 0000000..7638417
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php
@@ -0,0 +1,43 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\ContextProviderInterface;
+
+/**
+ * @author Kévin Thérage <therage.kevin@gmail.com>
+ */
+class ContextualizedDumper implements DataDumperInterface
+{
+    private $wrappedDumper;
+    private $contextProviders;
+
+    /**
+     * @param ContextProviderInterface[] $contextProviders
+     */
+    public function __construct(DataDumperInterface $wrappedDumper, array $contextProviders)
+    {
+        $this->wrappedDumper = $wrappedDumper;
+        $this->contextProviders = $contextProviders;
+    }
+
+    public function dump(Data $data)
+    {
+        $context = [];
+        foreach ($this->contextProviders as $contextProvider) {
+            $context[\get_class($contextProvider)] = $contextProvider->getContext();
+        }
+
+        $this->wrappedDumper->dump($data->withContext($context));
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php
new file mode 100644
index 0000000..b173bcc
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php
@@ -0,0 +1,24 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Data;
+
+/**
+ * DataDumperInterface for dumping Data objects.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+interface DataDumperInterface
+{
+    public function dump(Data $data);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/HtmlDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/HtmlDumper.php
new file mode 100644
index 0000000..6c3abaa
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/HtmlDumper.php
@@ -0,0 +1,986 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Cursor;
+use Symfony\Component\VarDumper\Cloner\Data;
+
+/**
+ * HtmlDumper dumps variables as HTML.
+ *
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class HtmlDumper extends CliDumper
+{
+    public static $defaultOutput = 'php://output';
+
+    protected static $themes = [
+        'dark' => [
+            'default' => 'background-color:#18171B; color:#FF8400; line-height:1.2em; font:12px Menlo, Monaco, Consolas, monospace; word-wrap: break-word; white-space: pre-wrap; position:relative; z-index:99999; word-break: break-all',
+            'num' => 'font-weight:bold; color:#1299DA',
+            'const' => 'font-weight:bold',
+            'str' => 'font-weight:bold; color:#56DB3A',
+            'note' => 'color:#1299DA',
+            'ref' => 'color:#A0A0A0',
+            'public' => 'color:#FFFFFF',
+            'protected' => 'color:#FFFFFF',
+            'private' => 'color:#FFFFFF',
+            'meta' => 'color:#B729D9',
+            'key' => 'color:#56DB3A',
+            'index' => 'color:#1299DA',
+            'ellipsis' => 'color:#FF8400',
+            'ns' => 'user-select:none;',
+        ],
+        'light' => [
+            'default' => 'background:none; color:#CC7832; line-height:1.2em; font:12px Menlo, Monaco, Consolas, monospace; word-wrap: break-word; white-space: pre-wrap; position:relative; z-index:99999; word-break: break-all',
+            'num' => 'font-weight:bold; color:#1299DA',
+            'const' => 'font-weight:bold',
+            'str' => 'font-weight:bold; color:#629755;',
+            'note' => 'color:#6897BB',
+            'ref' => 'color:#6E6E6E',
+            'public' => 'color:#262626',
+            'protected' => 'color:#262626',
+            'private' => 'color:#262626',
+            'meta' => 'color:#B729D9',
+            'key' => 'color:#789339',
+            'index' => 'color:#1299DA',
+            'ellipsis' => 'color:#CC7832',
+            'ns' => 'user-select:none;',
+        ],
+    ];
+
+    protected $dumpHeader;
+    protected $dumpPrefix = '<pre class=sf-dump id=%s data-indent-pad="%s">';
+    protected $dumpSuffix = '</pre><script>Sfdump(%s)</script>';
+    protected $dumpId = 'sf-dump';
+    protected $colors = true;
+    protected $headerIsDumped = false;
+    protected $lastDepth = -1;
+    protected $styles;
+
+    private $displayOptions = [
+        'maxDepth' => 1,
+        'maxStringLength' => 160,
+        'fileLinkFormat' => null,
+    ];
+    private $extraDisplayOptions = [];
+
+    /**
+     * {@inheritdoc}
+     */
+    public function __construct($output = null, string $charset = null, int $flags = 0)
+    {
+        AbstractDumper::__construct($output, $charset, $flags);
+        $this->dumpId = 'sf-dump-'.mt_rand();
+        $this->displayOptions['fileLinkFormat'] = ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format');
+        $this->styles = static::$themes['dark'] ?? self::$themes['dark'];
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setStyles(array $styles)
+    {
+        $this->headerIsDumped = false;
+        $this->styles = $styles + $this->styles;
+    }
+
+    public function setTheme(string $themeName)
+    {
+        if (!isset(static::$themes[$themeName])) {
+            throw new \InvalidArgumentException(sprintf('Theme "%s" does not exist in class "%s".', $themeName, static::class));
+        }
+
+        $this->setStyles(static::$themes[$themeName]);
+    }
+
+    /**
+     * Configures display options.
+     *
+     * @param array $displayOptions A map of display options to customize the behavior
+     */
+    public function setDisplayOptions(array $displayOptions)
+    {
+        $this->headerIsDumped = false;
+        $this->displayOptions = $displayOptions + $this->displayOptions;
+    }
+
+    /**
+     * Sets an HTML header that will be dumped once in the output stream.
+     */
+    public function setDumpHeader(?string $header)
+    {
+        $this->dumpHeader = $header;
+    }
+
+    /**
+     * Sets an HTML prefix and suffix that will encapse every single dump.
+     */
+    public function setDumpBoundaries(string $prefix, string $suffix)
+    {
+        $this->dumpPrefix = $prefix;
+        $this->dumpSuffix = $suffix;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dump(Data $data, $output = null, array $extraDisplayOptions = [])
+    {
+        $this->extraDisplayOptions = $extraDisplayOptions;
+        $result = parent::dump($data, $output);
+        $this->dumpId = 'sf-dump-'.mt_rand();
+
+        return $result;
+    }
+
+    /**
+     * Dumps the HTML header.
+     */
+    protected function getDumpHeader()
+    {
+        $this->headerIsDumped = $this->outputStream ?? $this->lineDumper;
+
+        if (null !== $this->dumpHeader) {
+            return $this->dumpHeader;
+        }
+
+        $line = str_replace('{$options}', json_encode($this->displayOptions, \JSON_FORCE_OBJECT), <<<'EOHTML'
+<script>
+Sfdump = window.Sfdump || (function (doc) {
+
+var refStyle = doc.createElement('style'),
+    rxEsc = /([.*+?^${}()|\[\]\/\\])/g,
+    idRx = /\bsf-dump-\d+-ref[012]\w+\b/,
+    keyHint = 0 <= navigator.platform.toUpperCase().indexOf('MAC') ? 'Cmd' : 'Ctrl',
+    addEventListener = function (e, n, cb) {
+        e.addEventListener(n, cb, false);
+    };
+
+refStyle.innerHTML = 'pre.sf-dump .sf-dump-compact, .sf-dump-str-collapse .sf-dump-str-collapse, .sf-dump-str-expand .sf-dump-str-expand { display: none; }';
+(doc.documentElement.firstElementChild || doc.documentElement.children[0]).appendChild(refStyle);
+refStyle = doc.createElement('style');
+(doc.documentElement.firstElementChild || doc.documentElement.children[0]).appendChild(refStyle);
+
+if (!doc.addEventListener) {
+    addEventListener = function (element, eventName, callback) {
+        element.attachEvent('on' + eventName, function (e) {
+            e.preventDefault = function () {e.returnValue = false;};
+            e.target = e.srcElement;
+            callback(e);
+        });
+    };
+}
+
+function toggle(a, recursive) {
+    var s = a.nextSibling || {}, oldClass = s.className, arrow, newClass;
+
+    if (/\bsf-dump-compact\b/.test(oldClass)) {
+        arrow = '▼';
+        newClass = 'sf-dump-expanded';
+    } else if (/\bsf-dump-expanded\b/.test(oldClass)) {
+        arrow = '▶';
+        newClass = 'sf-dump-compact';
+    } else {
+        return false;
+    }
+
+    if (doc.createEvent && s.dispatchEvent) {
+        var event = doc.createEvent('Event');
+        event.initEvent('sf-dump-expanded' === newClass ? 'sfbeforedumpexpand' : 'sfbeforedumpcollapse', true, false);
+
+        s.dispatchEvent(event);
+    }
+
+    a.lastChild.innerHTML = arrow;
+    s.className = s.className.replace(/\bsf-dump-(compact|expanded)\b/, newClass);
+
+    if (recursive) {
+        try {
+            a = s.querySelectorAll('.'+oldClass);
+            for (s = 0; s < a.length; ++s) {
+                if (-1 == a[s].className.indexOf(newClass)) {
+                    a[s].className = newClass;
+                    a[s].previousSibling.lastChild.innerHTML = arrow;
+                }
+            }
+        } catch (e) {
+        }
+    }
+
+    return true;
+};
+
+function collapse(a, recursive) {
+    var s = a.nextSibling || {}, oldClass = s.className;
+
+    if (/\bsf-dump-expanded\b/.test(oldClass)) {
+        toggle(a, recursive);
+
+        return true;
+    }
+
+    return false;
+};
+
+function expand(a, recursive) {
+    var s = a.nextSibling || {}, oldClass = s.className;
+
+    if (/\bsf-dump-compact\b/.test(oldClass)) {
+        toggle(a, recursive);
+
+        return true;
+    }
+
+    return false;
+};
+
+function collapseAll(root) {
+    var a = root.querySelector('a.sf-dump-toggle');
+    if (a) {
+        collapse(a, true);
+        expand(a);
+
+        return true;
+    }
+
+    return false;
+}
+
+function reveal(node) {
+    var previous, parents = [];
+
+    while ((node = node.parentNode || {}) && (previous = node.previousSibling) && 'A' === previous.tagName) {
+        parents.push(previous);
+    }
+
+    if (0 !== parents.length) {
+        parents.forEach(function (parent) {
+            expand(parent);
+        });
+
+        return true;
+    }
+
+    return false;
+}
+
+function highlight(root, activeNode, nodes) {
+    resetHighlightedNodes(root);
+
+    Array.from(nodes||[]).forEach(function (node) {
+        if (!/\bsf-dump-highlight\b/.test(node.className)) {
+            node.className = node.className + ' sf-dump-highlight';
+        }
+    });
+
+    if (!/\bsf-dump-highlight-active\b/.test(activeNode.className)) {
+        activeNode.className = activeNode.className + ' sf-dump-highlight-active';
+    }
+}
+
+function resetHighlightedNodes(root) {
+    Array.from(root.querySelectorAll('.sf-dump-str, .sf-dump-key, .sf-dump-public, .sf-dump-protected, .sf-dump-private')).forEach(function (strNode) {
+        strNode.className = strNode.className.replace(/\bsf-dump-highlight\b/, '');
+        strNode.className = strNode.className.replace(/\bsf-dump-highlight-active\b/, '');
+    });
+}
+
+return function (root, x) {
+    root = doc.getElementById(root);
+
+    var indentRx = new RegExp('^('+(root.getAttribute('data-indent-pad') || '  ').replace(rxEsc, '\\$1')+')+', 'm'),
+        options = {$options},
+        elt = root.getElementsByTagName('A'),
+        len = elt.length,
+        i = 0, s, h,
+        t = [];
+
+    while (i < len) t.push(elt[i++]);
+
+    for (i in x) {
+        options[i] = x[i];
+    }
+
+    function a(e, f) {
+        addEventListener(root, e, function (e, n) {
+            if ('A' == e.target.tagName) {
+                f(e.target, e);
+            } else if ('A' == e.target.parentNode.tagName) {
+                f(e.target.parentNode, e);
+            } else {
+                n = /\bsf-dump-ellipsis\b/.test(e.target.className) ? e.target.parentNode : e.target;
+
+                if ((n = n.nextElementSibling) && 'A' == n.tagName) {
+                    if (!/\bsf-dump-toggle\b/.test(n.className)) {
+                        n = n.nextElementSibling || n;
+                    }
+
+                    f(n, e, true);
+                }
+            }
+        });
+    };
+    function isCtrlKey(e) {
+        return e.ctrlKey || e.metaKey;
+    }
+    function xpathString(str) {
+        var parts = str.match(/[^'"]+|['"]/g).map(function (part) {
+            if ("'" == part)  {
+                return '"\'"';
+            }
+            if ('"' == part) {
+                return "'\"'";
+            }
+
+            return "'" + part + "'";
+        });
+
+        return "concat(" + parts.join(",") + ", '')";
+    }
+    function xpathHasClass(className) {
+        return "contains(concat(' ', normalize-space(@class), ' '), ' " + className +" ')";
+    }
+    addEventListener(root, 'mouseover', function (e) {
+        if ('' != refStyle.innerHTML) {
+            refStyle.innerHTML = '';
+        }
+    });
+    a('mouseover', function (a, e, c) {
+        if (c) {
+            e.target.style.cursor = "pointer";
+        } else if (a = idRx.exec(a.className)) {
+            try {
+                refStyle.innerHTML = 'pre.sf-dump .'+a[0]+'{background-color: #B729D9; color: #FFF !important; border-radius: 2px}';
+            } catch (e) {
+            }
+        }
+    });
+    a('click', function (a, e, c) {
+        if (/\bsf-dump-toggle\b/.test(a.className)) {
+            e.preventDefault();
+            if (!toggle(a, isCtrlKey(e))) {
+                var r = doc.getElementById(a.getAttribute('href').substr(1)),
+                    s = r.previousSibling,
+                    f = r.parentNode,
+                    t = a.parentNode;
+                t.replaceChild(r, a);
+                f.replaceChild(a, s);
+                t.insertBefore(s, r);
+                f = f.firstChild.nodeValue.match(indentRx);
+                t = t.firstChild.nodeValue.match(indentRx);
+                if (f && t && f[0] !== t[0]) {
+                    r.innerHTML = r.innerHTML.replace(new RegExp('^'+f[0].replace(rxEsc, '\\$1'), 'mg'), t[0]);
+                }
+                if (/\bsf-dump-compact\b/.test(r.className)) {
+                    toggle(s, isCtrlKey(e));
+                }
+            }
+
+            if (c) {
+            } else if (doc.getSelection) {
+                try {
+                    doc.getSelection().removeAllRanges();
+                } catch (e) {
+                    doc.getSelection().empty();
+                }
+            } else {
+                doc.selection.empty();
+            }
+        } else if (/\bsf-dump-str-toggle\b/.test(a.className)) {
+            e.preventDefault();
+            e = a.parentNode.parentNode;
+            e.className = e.className.replace(/\bsf-dump-str-(expand|collapse)\b/, a.parentNode.className);
+        }
+    });
+
+    elt = root.getElementsByTagName('SAMP');
+    len = elt.length;
+    i = 0;
+
+    while (i < len) t.push(elt[i++]);
+    len = t.length;
+
+    for (i = 0; i < len; ++i) {
+        elt = t[i];
+        if ('SAMP' == elt.tagName) {
+            a = elt.previousSibling || {};
+            if ('A' != a.tagName) {
+                a = doc.createElement('A');
+                a.className = 'sf-dump-ref';
+                elt.parentNode.insertBefore(a, elt);
+            } else {
+                a.innerHTML += ' ';
+            }
+            a.title = (a.title ? a.title+'\n[' : '[')+keyHint+'+click] Expand all children';
+            a.innerHTML += elt.className == 'sf-dump-compact' ? '<span>▶</span>' : '<span>▼</span>';
+            a.className += ' sf-dump-toggle';
+
+            x = 1;
+            if ('sf-dump' != elt.parentNode.className) {
+                x += elt.parentNode.getAttribute('data-depth')/1;
+            }
+        } else if (/\bsf-dump-ref\b/.test(elt.className) && (a = elt.getAttribute('href'))) {
+            a = a.substr(1);
+            elt.className += ' '+a;
+
+            if (/[\[{]$/.test(elt.previousSibling.nodeValue)) {
+                a = a != elt.nextSibling.id && doc.getElementById(a);
+                try {
+                    s = a.nextSibling;
+                    elt.appendChild(a);
+                    s.parentNode.insertBefore(a, s);
+                    if (/^[@#]/.test(elt.innerHTML)) {
+                        elt.innerHTML += ' <span>▶</span>';
+                    } else {
+                        elt.innerHTML = '<span>▶</span>';
+                        elt.className = 'sf-dump-ref';
+                    }
+                    elt.className += ' sf-dump-toggle';
+                } catch (e) {
+                    if ('&' == elt.innerHTML.charAt(0)) {
+                        elt.innerHTML = '…';
+                        elt.className = 'sf-dump-ref';
+                    }
+                }
+            }
+        }
+    }
+
+    if (doc.evaluate && Array.from && root.children.length > 1) {
+        root.setAttribute('tabindex', 0);
+
+        SearchState = function () {
+            this.nodes = [];
+            this.idx = 0;
+        };
+        SearchState.prototype = {
+            next: function () {
+                if (this.isEmpty()) {
+                    return this.current();
+                }
+                this.idx = this.idx < (this.nodes.length - 1) ? this.idx + 1 : 0;
+
+                return this.current();
+            },
+            previous: function () {
+                if (this.isEmpty()) {
+                    return this.current();
+                }
+                this.idx = this.idx > 0 ? this.idx - 1 : (this.nodes.length - 1);
+
+                return this.current();
+            },
+            isEmpty: function () {
+                return 0 === this.count();
+            },
+            current: function () {
+                if (this.isEmpty()) {
+                    return null;
+                }
+                return this.nodes[this.idx];
+            },
+            reset: function () {
+                this.nodes = [];
+                this.idx = 0;
+            },
+            count: function () {
+                return this.nodes.length;
+            },
+        };
+
+        function showCurrent(state)
+        {
+            var currentNode = state.current(), currentRect, searchRect;
+            if (currentNode) {
+                reveal(currentNode);
+                highlight(root, currentNode, state.nodes);
+                if ('scrollIntoView' in currentNode) {
+                    currentNode.scrollIntoView(true);
+                    currentRect = currentNode.getBoundingClientRect();
+                    searchRect = search.getBoundingClientRect();
+                    if (currentRect.top < (searchRect.top + searchRect.height)) {
+                        window.scrollBy(0, -(searchRect.top + searchRect.height + 5));
+                    }
+                }
+            }
+            counter.textContent = (state.isEmpty() ? 0 : state.idx + 1) + ' of ' + state.count();
+        }
+
+        var search = doc.createElement('div');
+        search.className = 'sf-dump-search-wrapper sf-dump-search-hidden';
+        search.innerHTML = '
+            <input type="text" class="sf-dump-search-input">
+            <span class="sf-dump-search-count">0 of 0<\/span>
+            <button type="button" class="sf-dump-search-input-previous" tabindex="-1">
+                <svg viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1683 1331l-166 165q-19 19-45 19t-45-19L896 965l-531 531q-19 19-45 19t-45-19l-166-165q-19-19-19-45.5t19-45.5l742-741q19-19 45-19t45 19l742 741q19 19 19 45.5t-19 45.5z"\/><\/svg>
+            <\/button>
+            <button type="button" class="sf-dump-search-input-next" tabindex="-1">
+                <svg viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1683 808l-742 741q-19 19-45 19t-45-19L109 808q-19-19-19-45.5t19-45.5l166-165q19-19 45-19t45 19l531 531 531-531q19-19 45-19t45 19l166 165q19 19 19 45.5t-19 45.5z"\/><\/svg>
+            <\/button>
+        ';
+        root.insertBefore(search, root.firstChild);
+
+        var state = new SearchState();
+        var searchInput = search.querySelector('.sf-dump-search-input');
+        var counter = search.querySelector('.sf-dump-search-count');
+        var searchInputTimer = 0;
+        var previousSearchQuery = '';
+
+        addEventListener(searchInput, 'keyup', function (e) {
+            var searchQuery = e.target.value;
+            /* Don't perform anything if the pressed key didn't change the query */
+            if (searchQuery === previousSearchQuery) {
+                return;
+            }
+            previousSearchQuery = searchQuery;
+            clearTimeout(searchInputTimer);
+            searchInputTimer = setTimeout(function () {
+                state.reset();
+                collapseAll(root);
+                resetHighlightedNodes(root);
+                if ('' === searchQuery) {
+                    counter.textContent = '0 of 0';
+
+                    return;
+                }
+
+                var classMatches = [
+                    "sf-dump-str",
+                    "sf-dump-key",
+                    "sf-dump-public",
+                    "sf-dump-protected",
+                    "sf-dump-private",
+                ].map(xpathHasClass).join(' or ');
+
+                var xpathResult = doc.evaluate('.//span[' + classMatches + '][contains(translate(child::text(), ' + xpathString(searchQuery.toUpperCase()) + ', ' + xpathString(searchQuery.toLowerCase()) + '), ' + xpathString(searchQuery.toLowerCase()) + ')]', root, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null);
+
+                while (node = xpathResult.iterateNext()) state.nodes.push(node);
+
+                showCurrent(state);
+            }, 400);
+        });
+
+        Array.from(search.querySelectorAll('.sf-dump-search-input-next, .sf-dump-search-input-previous')).forEach(function (btn) {
+            addEventListener(btn, 'click', function (e) {
+                e.preventDefault();
+                -1 !== e.target.className.indexOf('next') ? state.next() : state.previous();
+                searchInput.focus();
+                collapseAll(root);
+                showCurrent(state);
+            })
+        });
+
+        addEventListener(root, 'keydown', function (e) {
+            var isSearchActive = !/\bsf-dump-search-hidden\b/.test(search.className);
+            if ((114 === e.keyCode && !isSearchActive) || (isCtrlKey(e) && 70 === e.keyCode)) {
+                /* F3 or CMD/CTRL + F */
+                if (70 === e.keyCode && document.activeElement === searchInput) {
+                   /*
+                    * If CMD/CTRL + F is hit while having focus on search input,
+                    * the user probably meant to trigger browser search instead.
+                    * Let the browser execute its behavior:
+                    */
+                    return;
+                }
+
+                e.preventDefault();
+                search.className = search.className.replace(/\bsf-dump-search-hidden\b/, '');
+                searchInput.focus();
+            } else if (isSearchActive) {
+                if (27 === e.keyCode) {
+                    /* ESC key */
+                    search.className += ' sf-dump-search-hidden';
+                    e.preventDefault();
+                    resetHighlightedNodes(root);
+                    searchInput.value = '';
+                } else if (
+                    (isCtrlKey(e) && 71 === e.keyCode) /* CMD/CTRL + G */
+                    || 13 === e.keyCode /* Enter */
+                    || 114 === e.keyCode /* F3 */
+                ) {
+                    e.preventDefault();
+                    e.shiftKey ? state.previous() : state.next();
+                    collapseAll(root);
+                    showCurrent(state);
+                }
+            }
+        });
+    }
+
+    if (0 >= options.maxStringLength) {
+        return;
+    }
+    try {
+        elt = root.querySelectorAll('.sf-dump-str');
+        len = elt.length;
+        i = 0;
+        t = [];
+
+        while (i < len) t.push(elt[i++]);
+        len = t.length;
+
+        for (i = 0; i < len; ++i) {
+            elt = t[i];
+            s = elt.innerText || elt.textContent;
+            x = s.length - options.maxStringLength;
+            if (0 < x) {
+                h = elt.innerHTML;
+                elt[elt.innerText ? 'innerText' : 'textContent'] = s.substring(0, options.maxStringLength);
+                elt.className += ' sf-dump-str-collapse';
+                elt.innerHTML = '<span class=sf-dump-str-collapse>'+h+'<a class="sf-dump-ref sf-dump-str-toggle" title="Collapse"> ◀</a></span>'+
+                    '<span class=sf-dump-str-expand>'+elt.innerHTML+'<a class="sf-dump-ref sf-dump-str-toggle" title="'+x+' remaining characters"> ▶</a></span>';
+            }
+        }
+    } catch (e) {
+    }
+};
+
+})(document);
+</script><style>
+pre.sf-dump {
+    display: block;
+    white-space: pre;
+    padding: 5px;
+    overflow: initial !important;
+}
+pre.sf-dump:after {
+   content: "";
+   visibility: hidden;
+   display: block;
+   height: 0;
+   clear: both;
+}
+pre.sf-dump span {
+    display: inline;
+}
+pre.sf-dump a {
+    text-decoration: none;
+    cursor: pointer;
+    border: 0;
+    outline: none;
+    color: inherit;
+}
+pre.sf-dump img {
+    max-width: 50em;
+    max-height: 50em;
+    margin: .5em 0 0 0;
+    padding: 0;
+    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAHUlEQVQY02O8zAABilCaiQEN0EeA8QuUcX9g3QEAAjcC5piyhyEAAAAASUVORK5CYII=) #D3D3D3;
+}
+pre.sf-dump .sf-dump-ellipsis {
+    display: inline-block;
+    overflow: visible;
+    text-overflow: ellipsis;
+    max-width: 5em;
+    white-space: nowrap;
+    overflow: hidden;
+    vertical-align: top;
+}
+pre.sf-dump .sf-dump-ellipsis+.sf-dump-ellipsis {
+    max-width: none;
+}
+pre.sf-dump code {
+    display:inline;
+    padding:0;
+    background:none;
+}
+.sf-dump-public.sf-dump-highlight,
+.sf-dump-protected.sf-dump-highlight,
+.sf-dump-private.sf-dump-highlight,
+.sf-dump-str.sf-dump-highlight,
+.sf-dump-key.sf-dump-highlight {
+    background: rgba(111, 172, 204, 0.3);
+    border: 1px solid #7DA0B1;
+    border-radius: 3px;
+}
+.sf-dump-public.sf-dump-highlight-active,
+.sf-dump-protected.sf-dump-highlight-active,
+.sf-dump-private.sf-dump-highlight-active,
+.sf-dump-str.sf-dump-highlight-active,
+.sf-dump-key.sf-dump-highlight-active {
+    background: rgba(253, 175, 0, 0.4);
+    border: 1px solid #ffa500;
+    border-radius: 3px;
+}
+pre.sf-dump .sf-dump-search-hidden {
+    display: none !important;
+}
+pre.sf-dump .sf-dump-search-wrapper {
+    font-size: 0;
+    white-space: nowrap;
+    margin-bottom: 5px;
+    display: flex;
+    position: -webkit-sticky;
+    position: sticky;
+    top: 5px;
+}
+pre.sf-dump .sf-dump-search-wrapper > * {
+    vertical-align: top;
+    box-sizing: border-box;
+    height: 21px;
+    font-weight: normal;
+    border-radius: 0;
+    background: #FFF;
+    color: #757575;
+    border: 1px solid #BBB;
+}
+pre.sf-dump .sf-dump-search-wrapper > input.sf-dump-search-input {
+    padding: 3px;
+    height: 21px;
+    font-size: 12px;
+    border-right: none;
+    border-top-left-radius: 3px;
+    border-bottom-left-radius: 3px;
+    color: #000;
+    min-width: 15px;
+    width: 100%;
+}
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-next,
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-previous {
+    background: #F2F2F2;
+    outline: none;
+    border-left: none;
+    font-size: 0;
+    line-height: 0;
+}
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-next {
+    border-top-right-radius: 3px;
+    border-bottom-right-radius: 3px;
+}
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-next > svg,
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-previous > svg {
+    pointer-events: none;
+    width: 12px;
+    height: 12px;
+}
+pre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-count {
+    display: inline-block;
+    padding: 0 5px;
+    margin: 0;
+    border-left: none;
+    line-height: 21px;
+    font-size: 12px;
+}
+EOHTML
+        );
+
+        foreach ($this->styles as $class => $style) {
+            $line .= 'pre.sf-dump'.('default' === $class ? ', pre.sf-dump' : '').' .sf-dump-'.$class.'{'.$style.'}';
+        }
+        $line .= 'pre.sf-dump .sf-dump-ellipsis-note{'.$this->styles['note'].'}';
+
+        return $this->dumpHeader = preg_replace('/\s+/', ' ', $line).'</style>'.$this->dumpHeader;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dumpString(Cursor $cursor, string $str, bool $bin, int $cut)
+    {
+        if ('' === $str && isset($cursor->attr['img-data'], $cursor->attr['content-type'])) {
+            $this->dumpKey($cursor);
+            $this->line .= $this->style('default', $cursor->attr['img-size'] ?? '', []);
+            $this->line .= $cursor->depth >= $this->displayOptions['maxDepth'] ? ' <samp class=sf-dump-compact>' : ' <samp class=sf-dump-expanded>';
+            $this->endValue($cursor);
+            $this->line .= $this->indentPad;
+            $this->line .= sprintf('<img src="data:%s;base64,%s" /></samp>', $cursor->attr['content-type'], base64_encode($cursor->attr['img-data']));
+            $this->endValue($cursor);
+        } else {
+            parent::dumpString($cursor, $str, $bin, $cut);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function enterHash(Cursor $cursor, int $type, $class, bool $hasChild)
+    {
+        if (Cursor::HASH_OBJECT === $type) {
+            $cursor->attr['depth'] = $cursor->depth;
+        }
+        parent::enterHash($cursor, $type, $class, false);
+
+        if ($cursor->skipChildren || $cursor->depth >= $this->displayOptions['maxDepth']) {
+            $cursor->skipChildren = false;
+            $eol = ' class=sf-dump-compact>';
+        } else {
+            $this->expandNextHash = false;
+            $eol = ' class=sf-dump-expanded>';
+        }
+
+        if ($hasChild) {
+            $this->line .= '<samp data-depth='.($cursor->depth + 1);
+            if ($cursor->refIndex) {
+                $r = Cursor::HASH_OBJECT !== $type ? 1 - (Cursor::HASH_RESOURCE !== $type) : 2;
+                $r .= $r && 0 < $cursor->softRefHandle ? $cursor->softRefHandle : $cursor->refIndex;
+
+                $this->line .= sprintf(' id=%s-ref%s', $this->dumpId, $r);
+            }
+            $this->line .= $eol;
+            $this->dumpLine($cursor->depth);
+        }
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function leaveHash(Cursor $cursor, int $type, $class, bool $hasChild, int $cut)
+    {
+        $this->dumpEllipsis($cursor, $hasChild, $cut);
+        if ($hasChild) {
+            $this->line .= '</samp>';
+        }
+        parent::leaveHash($cursor, $type, $class, $hasChild, 0);
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function style(string $style, string $value, array $attr = [])
+    {
+        if ('' === $value) {
+            return '';
+        }
+
+        $v = esc($value);
+
+        if ('ref' === $style) {
+            if (empty($attr['count'])) {
+                return sprintf('<a class=sf-dump-ref>%s</a>', $v);
+            }
+            $r = ('#' !== $v[0] ? 1 - ('@' !== $v[0]) : 2).substr($value, 1);
+
+            return sprintf('<a class=sf-dump-ref href=#%s-ref%s title="%d occurrences">%s</a>', $this->dumpId, $r, 1 + $attr['count'], $v);
+        }
+
+        if ('const' === $style && isset($attr['value'])) {
+            $style .= sprintf(' title="%s"', esc(is_scalar($attr['value']) ? $attr['value'] : json_encode($attr['value'])));
+        } elseif ('public' === $style) {
+            $style .= sprintf(' title="%s"', empty($attr['dynamic']) ? 'Public property' : 'Runtime added dynamic property');
+        } elseif ('str' === $style && 1 < $attr['length']) {
+            $style .= sprintf(' title="%d%s characters"', $attr['length'], $attr['binary'] ? ' binary or non-UTF-8' : '');
+        } elseif ('note' === $style && 0 < ($attr['depth'] ?? 0) && false !== $c = strrpos($value, '\\')) {
+            $style .= ' title=""';
+            $attr += [
+                'ellipsis' => \strlen($value) - $c,
+                'ellipsis-type' => 'note',
+                'ellipsis-tail' => 1,
+            ];
+        } elseif ('protected' === $style) {
+            $style .= ' title="Protected property"';
+        } elseif ('meta' === $style && isset($attr['title'])) {
+            $style .= sprintf(' title="%s"', esc($this->utf8Encode($attr['title'])));
+        } elseif ('private' === $style) {
+            $style .= sprintf(' title="Private property defined in class:&#10;`%s`"', esc($this->utf8Encode($attr['class'])));
+        }
+        $map = static::$controlCharsMap;
+
+        if (isset($attr['ellipsis'])) {
+            $class = 'sf-dump-ellipsis';
+            if (isset($attr['ellipsis-type'])) {
+                $class = sprintf('"%s sf-dump-ellipsis-%s"', $class, $attr['ellipsis-type']);
+            }
+            $label = esc(substr($value, -$attr['ellipsis']));
+            $style = str_replace(' title="', " title=\"$v\n", $style);
+            $v = sprintf('<span class=%s>%s</span>', $class, substr($v, 0, -\strlen($label)));
+
+            if (!empty($attr['ellipsis-tail'])) {
+                $tail = \strlen(esc(substr($value, -$attr['ellipsis'], $attr['ellipsis-tail'])));
+                $v .= sprintf('<span class=%s>%s</span>%s', $class, substr($label, 0, $tail), substr($label, $tail));
+            } else {
+                $v .= $label;
+            }
+        }
+
+        $v = "<span class=sf-dump-{$style}>".preg_replace_callback(static::$controlCharsRx, function ($c) use ($map) {
+            $s = $b = '<span class="sf-dump-default';
+            $c = $c[$i = 0];
+            if ($ns = "\r" === $c[$i] || "\n" === $c[$i]) {
+                $s .= ' sf-dump-ns';
+            }
+            $s .= '">';
+            do {
+                if (("\r" === $c[$i] || "\n" === $c[$i]) !== $ns) {
+                    $s .= '</span>'.$b;
+                    if ($ns = !$ns) {
+                        $s .= ' sf-dump-ns';
+                    }
+                    $s .= '">';
+                }
+
+                $s .= $map[$c[$i]] ?? sprintf('\x%02X', \ord($c[$i]));
+            } while (isset($c[++$i]));
+
+            return $s.'</span>';
+        }, $v).'</span>';
+
+        if (isset($attr['file']) && $href = $this->getSourceLink($attr['file'], $attr['line'] ?? 0)) {
+            $attr['href'] = $href;
+        }
+        if (isset($attr['href'])) {
+            $target = isset($attr['file']) ? '' : ' target="_blank"';
+            $v = sprintf('<a href="%s"%s rel="noopener noreferrer">%s</a>', esc($this->utf8Encode($attr['href'])), $target, $v);
+        }
+        if (isset($attr['lang'])) {
+            $v = sprintf('<code class="%s">%s</code>', esc($attr['lang']), $v);
+        }
+
+        return $v;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function dumpLine(int $depth, bool $endOfValue = false)
+    {
+        if (-1 === $this->lastDepth) {
+            $this->line = sprintf($this->dumpPrefix, $this->dumpId, $this->indentPad).$this->line;
+        }
+        if ($this->headerIsDumped !== ($this->outputStream ?? $this->lineDumper)) {
+            $this->line = $this->getDumpHeader().$this->line;
+        }
+
+        if (-1 === $depth) {
+            $args = ['"'.$this->dumpId.'"'];
+            if ($this->extraDisplayOptions) {
+                $args[] = json_encode($this->extraDisplayOptions, \JSON_FORCE_OBJECT);
+            }
+            // Replace is for BC
+            $this->line .= sprintf(str_replace('"%s"', '%s', $this->dumpSuffix), implode(', ', $args));
+        }
+        $this->lastDepth = $depth;
+
+        $this->line = mb_convert_encoding($this->line, 'HTML-ENTITIES', 'UTF-8');
+
+        if (-1 === $depth) {
+            AbstractDumper::dumpLine(0);
+        }
+        AbstractDumper::dumpLine($depth);
+    }
+
+    private function getSourceLink(string $file, int $line)
+    {
+        $options = $this->extraDisplayOptions + $this->displayOptions;
+
+        if ($fmt = $options['fileLinkFormat']) {
+            return \is_string($fmt) ? strtr($fmt, ['%f' => $file, '%l' => $line]) : $fmt->format($file, $line);
+        }
+
+        return false;
+    }
+}
+
+function esc(string $str)
+{
+    return htmlspecialchars($str, \ENT_QUOTES, 'UTF-8');
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ServerDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ServerDumper.php
new file mode 100644
index 0000000..94795bf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Dumper/ServerDumper.php
@@ -0,0 +1,53 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Dumper;
+
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\ContextProviderInterface;
+use Symfony\Component\VarDumper\Server\Connection;
+
+/**
+ * ServerDumper forwards serialized Data clones to a server.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+class ServerDumper implements DataDumperInterface
+{
+    private $connection;
+    private $wrappedDumper;
+
+    /**
+     * @param string                     $host             The server host
+     * @param DataDumperInterface|null   $wrappedDumper    A wrapped instance used whenever we failed contacting the server
+     * @param ContextProviderInterface[] $contextProviders Context providers indexed by context name
+     */
+    public function __construct(string $host, DataDumperInterface $wrappedDumper = null, array $contextProviders = [])
+    {
+        $this->connection = new Connection($host, $contextProviders);
+        $this->wrappedDumper = $wrappedDumper;
+    }
+
+    public function getContextProviders(): array
+    {
+        return $this->connection->getContextProviders();
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function dump(Data $data)
+    {
+        if (!$this->connection->write($data) && $this->wrappedDumper) {
+            $this->wrappedDumper->dump($data);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php
new file mode 100644
index 0000000..122f0d3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Exception;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class ThrowingCasterException extends \Exception
+{
+    /**
+     * @param \Throwable $prev The exception thrown from the caster
+     */
+    public function __construct(\Throwable $prev)
+    {
+        parent::__construct('Unexpected '.\get_class($prev).' thrown from a caster: '.$prev->getMessage(), 0, $prev);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/LICENSE b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/LICENSE
new file mode 100644
index 0000000..c1f0aac
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2014-2021 Fabien Potencier
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/README.md b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/README.md
new file mode 100644
index 0000000..bdac244
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/README.md
@@ -0,0 +1,15 @@
+VarDumper Component
+===================
+
+The VarDumper component provides mechanisms for walking through any arbitrary
+PHP variable. It provides a better `dump()` function that you can use instead
+of `var_dump`.
+
+Resources
+---------
+
+ * [Documentation](https://symfony.com/doc/current/components/var_dumper/introduction.html)
+ * [Contributing](https://symfony.com/doc/current/contributing/index.html)
+ * [Report issues](https://github.com/symfony/symfony/issues) and
+   [send Pull Requests](https://github.com/symfony/symfony/pulls)
+   in the [main Symfony repository](https://github.com/symfony/symfony)
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/bin/var-dump-server b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/bin/var-dump-server
new file mode 100755
index 0000000..98c813a
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/bin/var-dump-server
@@ -0,0 +1,63 @@
+#!/usr/bin/env php
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Starts a dump server to collect and output dumps on a single place with multiple formats support.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+
+use Psr\Log\LoggerInterface;
+use Symfony\Component\Console\Application;
+use Symfony\Component\Console\Input\ArgvInput;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Logger\ConsoleLogger;
+use Symfony\Component\Console\Output\ConsoleOutput;
+use Symfony\Component\VarDumper\Command\ServerDumpCommand;
+use Symfony\Component\VarDumper\Server\DumpServer;
+
+function includeIfExists(string $file): bool
+{
+    return file_exists($file) && include $file;
+}
+
+if (
+    !includeIfExists(__DIR__ . '/../../../../autoload.php') &&
+    !includeIfExists(__DIR__ . '/../../vendor/autoload.php') &&
+    !includeIfExists(__DIR__ . '/../../../../../../vendor/autoload.php')
+) {
+    fwrite(STDERR, 'Install dependencies using Composer.'.PHP_EOL);
+    exit(1);
+}
+
+if (!class_exists(Application::class)) {
+    fwrite(STDERR, 'You need the "symfony/console" component in order to run the VarDumper server.'.PHP_EOL);
+    exit(1);
+}
+
+$input = new ArgvInput();
+$output = new ConsoleOutput();
+$defaultHost = '127.0.0.1:9912';
+$host = $input->getParameterOption(['--host'], $_SERVER['VAR_DUMPER_SERVER'] ?? $defaultHost, true);
+$logger = interface_exists(LoggerInterface::class) ? new ConsoleLogger($output->getErrorOutput()) : null;
+
+$app = new Application();
+
+$app->getDefinition()->addOption(
+    new InputOption('--host', null, InputOption::VALUE_REQUIRED, 'The address the server should listen to', $defaultHost)
+);
+
+$app->add($command = new ServerDumpCommand(new DumpServer($host, $logger)))
+    ->getApplication()
+    ->setDefaultCommand($command->getName(), true)
+    ->run($input, $output)
+;
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/css/htmlDescriptor.css b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/css/htmlDescriptor.css
new file mode 100644
index 0000000..8f706d6
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/css/htmlDescriptor.css
@@ -0,0 +1,130 @@
+body {
+    display: flex;
+    flex-direction: column-reverse;
+    justify-content: flex-end;
+    max-width: 1140px;
+    margin: auto;
+    padding: 15px;
+    word-wrap: break-word;
+    background-color: #F9F9F9;
+    color: #222;
+    font-family: Helvetica, Arial, sans-serif;
+    font-size: 14px;
+    line-height: 1.4;
+}
+p {
+    margin: 0;
+}
+a {
+    color: #218BC3;
+    text-decoration: none;
+}
+a:hover {
+    text-decoration: underline;
+}
+.text-small {
+    font-size: 12px !important;
+}
+article {
+    margin: 5px;
+    margin-bottom: 10px;
+}
+article > header > .row {
+    display: flex;
+    flex-direction: row;
+    align-items: baseline;
+    margin-bottom: 10px;
+}
+article > header > .row > .col {
+    flex: 1;
+    display: flex;
+    align-items: baseline;
+}
+article > header > .row > h2 {
+    font-size: 14px;
+    color: #222;
+    font-weight: normal;
+    font-family: "Lucida Console", monospace, sans-serif;
+    word-break: break-all;
+    margin: 20px 5px 0 0;
+    user-select: all;
+}
+article > header > .row > h2 > code {
+    white-space: nowrap;
+    user-select: none;
+    color: #cc2255;
+    background-color: #f7f7f9;
+    border: 1px solid #e1e1e8;
+    border-radius: 3px;
+    margin-right: 5px;
+    padding: 0 3px;
+}
+article > header > .row > time.col {
+    flex: 0;
+    text-align: right;
+    white-space: nowrap;
+    color: #999;
+    font-style: italic;
+}
+article > header ul.tags {
+    list-style: none;
+    padding: 0;
+    margin: 0;
+    font-size: 12px;
+}
+article > header ul.tags > li {
+    user-select: all;
+    margin-bottom: 2px;
+}
+article > header ul.tags > li > span.badge {
+    display: inline-block;
+    padding: .25em .4em;
+    margin-right: 5px;
+    border-radius: 4px;
+    background-color: #6c757d3b;
+    color: #524d4d;
+    font-size: 12px;
+    text-align: center;
+    font-weight: 700;
+    line-height: 1;
+    white-space: nowrap;
+    vertical-align: baseline;
+    user-select: none;
+}
+article > section.body {
+    border: 1px solid #d8d8d8;
+    background: #FFF;
+    padding: 10px;
+    border-radius: 3px;
+}
+pre.sf-dump {
+    border-radius: 3px;
+    margin-bottom: 0;
+}
+.hidden {
+    display: none !important;
+}
+.dumped-tag > .sf-dump {
+    display: inline-block;
+    margin: 0;
+    padding: 1px 5px;
+    line-height: 1.4;
+    vertical-align: top;
+    background-color: transparent;
+    user-select: auto;
+}
+.dumped-tag > pre.sf-dump,
+.dumped-tag > .sf-dump-default {
+    color: #CC7832;
+    background: none;
+}
+.dumped-tag > .sf-dump .sf-dump-str { color: #629755; }
+.dumped-tag > .sf-dump .sf-dump-private,
+.dumped-tag > .sf-dump .sf-dump-protected,
+.dumped-tag > .sf-dump .sf-dump-public { color: #262626; }
+.dumped-tag > .sf-dump .sf-dump-note { color: #6897BB; }
+.dumped-tag > .sf-dump .sf-dump-key { color: #789339; }
+.dumped-tag > .sf-dump .sf-dump-ref { color: #6E6E6E; }
+.dumped-tag > .sf-dump .sf-dump-ellipsis { color: #CC7832; max-width: 100em; }
+.dumped-tag > .sf-dump .sf-dump-ellipsis-path { max-width: 5em; }
+.dumped-tag > .sf-dump .sf-dump-ns { user-select: none; }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/functions/dump.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/functions/dump.php
new file mode 100644
index 0000000..a485d57
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/functions/dump.php
@@ -0,0 +1,43 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+use Symfony\Component\VarDumper\VarDumper;
+
+if (!function_exists('dump')) {
+    /**
+     * @author Nicolas Grekas <p@tchwork.com>
+     */
+    function dump($var, ...$moreVars)
+    {
+        VarDumper::dump($var);
+
+        foreach ($moreVars as $v) {
+            VarDumper::dump($v);
+        }
+
+        if (1 < func_num_args()) {
+            return func_get_args();
+        }
+
+        return $var;
+    }
+}
+
+if (!function_exists('dd')) {
+    function dd(...$vars)
+    {
+        foreach ($vars as $v) {
+            VarDumper::dump($v);
+        }
+
+        exit(1);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/js/htmlDescriptor.js b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/js/htmlDescriptor.js
new file mode 100644
index 0000000..63101e5
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Resources/js/htmlDescriptor.js
@@ -0,0 +1,10 @@
+document.addEventListener('DOMContentLoaded', function() {
+  let prev = null;
+  Array.from(document.getElementsByTagName('article')).reverse().forEach(function (article) {
+    const dedupId = article.dataset.dedupId;
+    if (dedupId === prev) {
+      article.getElementsByTagName('header')[0].classList.add('hidden');
+    }
+    prev = dedupId;
+  });
+});
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/Connection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/Connection.php
new file mode 100644
index 0000000..55d9214
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/Connection.php
@@ -0,0 +1,95 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Server;
+
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\ContextProviderInterface;
+
+/**
+ * Forwards serialized Data clones to a server.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ */
+class Connection
+{
+    private $host;
+    private $contextProviders;
+    private $socket;
+
+    /**
+     * @param string                     $host             The server host
+     * @param ContextProviderInterface[] $contextProviders Context providers indexed by context name
+     */
+    public function __construct(string $host, array $contextProviders = [])
+    {
+        if (!str_contains($host, '://')) {
+            $host = 'tcp://'.$host;
+        }
+
+        $this->host = $host;
+        $this->contextProviders = $contextProviders;
+    }
+
+    public function getContextProviders(): array
+    {
+        return $this->contextProviders;
+    }
+
+    public function write(Data $data): bool
+    {
+        $socketIsFresh = !$this->socket;
+        if (!$this->socket = $this->socket ?: $this->createSocket()) {
+            return false;
+        }
+
+        $context = ['timestamp' => microtime(true)];
+        foreach ($this->contextProviders as $name => $provider) {
+            $context[$name] = $provider->getContext();
+        }
+        $context = array_filter($context);
+        $encodedPayload = base64_encode(serialize([$data, $context]))."\n";
+
+        set_error_handler([self::class, 'nullErrorHandler']);
+        try {
+            if (-1 !== stream_socket_sendto($this->socket, $encodedPayload)) {
+                return true;
+            }
+            if (!$socketIsFresh) {
+                stream_socket_shutdown($this->socket, \STREAM_SHUT_RDWR);
+                fclose($this->socket);
+                $this->socket = $this->createSocket();
+            }
+            if (-1 !== stream_socket_sendto($this->socket, $encodedPayload)) {
+                return true;
+            }
+        } finally {
+            restore_error_handler();
+        }
+
+        return false;
+    }
+
+    private static function nullErrorHandler(int $t, string $m)
+    {
+        // no-op
+    }
+
+    private function createSocket()
+    {
+        set_error_handler([self::class, 'nullErrorHandler']);
+        try {
+            return stream_socket_client($this->host, $errno, $errstr, 3, \STREAM_CLIENT_CONNECT | \STREAM_CLIENT_ASYNC_CONNECT);
+        } finally {
+            restore_error_handler();
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/DumpServer.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/DumpServer.php
new file mode 100644
index 0000000..7cb5bf0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Server/DumpServer.php
@@ -0,0 +1,111 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Server;
+
+use Psr\Log\LoggerInterface;
+use Symfony\Component\VarDumper\Cloner\Data;
+use Symfony\Component\VarDumper\Cloner\Stub;
+
+/**
+ * A server collecting Data clones sent by a ServerDumper.
+ *
+ * @author Maxime Steinhausser <maxime.steinhausser@gmail.com>
+ *
+ * @final
+ */
+class DumpServer
+{
+    private $host;
+    private $socket;
+    private $logger;
+
+    public function __construct(string $host, LoggerInterface $logger = null)
+    {
+        if (!str_contains($host, '://')) {
+            $host = 'tcp://'.$host;
+        }
+
+        $this->host = $host;
+        $this->logger = $logger;
+    }
+
+    public function start(): void
+    {
+        if (!$this->socket = stream_socket_server($this->host, $errno, $errstr)) {
+            throw new \RuntimeException(sprintf('Server start failed on "%s": ', $this->host).$errstr.' '.$errno);
+        }
+    }
+
+    public function listen(callable $callback): void
+    {
+        if (null === $this->socket) {
+            $this->start();
+        }
+
+        foreach ($this->getMessages() as $clientId => $message) {
+            if ($this->logger) {
+                $this->logger->info('Received a payload from client {clientId}', ['clientId' => $clientId]);
+            }
+
+            $payload = @unserialize(base64_decode($message), ['allowed_classes' => [Data::class, Stub::class]]);
+
+            // Impossible to decode the message, give up.
+            if (false === $payload) {
+                if ($this->logger) {
+                    $this->logger->warning('Unable to decode a message from {clientId} client.', ['clientId' => $clientId]);
+                }
+
+                continue;
+            }
+
+            if (!\is_array($payload) || \count($payload) < 2 || !$payload[0] instanceof Data || !\is_array($payload[1])) {
+                if ($this->logger) {
+                    $this->logger->warning('Invalid payload from {clientId} client. Expected an array of two elements (Data $data, array $context)', ['clientId' => $clientId]);
+                }
+
+                continue;
+            }
+
+            [$data, $context] = $payload;
+
+            $callback($data, $context, $clientId);
+        }
+    }
+
+    public function getHost(): string
+    {
+        return $this->host;
+    }
+
+    private function getMessages(): iterable
+    {
+        $sockets = [(int) $this->socket => $this->socket];
+        $write = [];
+
+        while (true) {
+            $read = $sockets;
+            stream_select($read, $write, $write, null);
+
+            foreach ($read as $stream) {
+                if ($this->socket === $stream) {
+                    $stream = stream_socket_accept($this->socket);
+                    $sockets[(int) $stream] = $stream;
+                } elseif (feof($stream)) {
+                    unset($sockets[(int) $stream]);
+                    fclose($stream);
+                } else {
+                    yield (int) $stream => fgets($stream);
+                }
+            }
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php
new file mode 100644
index 0000000..33d60c0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php
@@ -0,0 +1,84 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Test;
+
+use Symfony\Component\VarDumper\Cloner\VarCloner;
+use Symfony\Component\VarDumper\Dumper\CliDumper;
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+trait VarDumperTestTrait
+{
+    /**
+     * @internal
+     */
+    private $varDumperConfig = [
+        'casters' => [],
+        'flags' => null,
+    ];
+
+    protected function setUpVarDumper(array $casters, int $flags = null): void
+    {
+        $this->varDumperConfig['casters'] = $casters;
+        $this->varDumperConfig['flags'] = $flags;
+    }
+
+    /**
+     * @after
+     */
+    protected function tearDownVarDumper(): void
+    {
+        $this->varDumperConfig['casters'] = [];
+        $this->varDumperConfig['flags'] = null;
+    }
+
+    public function assertDumpEquals($expected, $data, int $filter = 0, string $message = '')
+    {
+        $this->assertSame($this->prepareExpectation($expected, $filter), $this->getDump($data, null, $filter), $message);
+    }
+
+    public function assertDumpMatchesFormat($expected, $data, int $filter = 0, string $message = '')
+    {
+        $this->assertStringMatchesFormat($this->prepareExpectation($expected, $filter), $this->getDump($data, null, $filter), $message);
+    }
+
+    protected function getDump($data, $key = null, int $filter = 0): ?string
+    {
+        if (null === $flags = $this->varDumperConfig['flags']) {
+            $flags = getenv('DUMP_LIGHT_ARRAY') ? CliDumper::DUMP_LIGHT_ARRAY : 0;
+            $flags |= getenv('DUMP_STRING_LENGTH') ? CliDumper::DUMP_STRING_LENGTH : 0;
+            $flags |= getenv('DUMP_COMMA_SEPARATOR') ? CliDumper::DUMP_COMMA_SEPARATOR : 0;
+        }
+
+        $cloner = new VarCloner();
+        $cloner->addCasters($this->varDumperConfig['casters']);
+        $cloner->setMaxItems(-1);
+        $dumper = new CliDumper(null, null, $flags);
+        $dumper->setColors(false);
+        $data = $cloner->cloneVar($data, $filter)->withRefHandles(false);
+        if (null !== $key && null === $data = $data->seek($key)) {
+            return null;
+        }
+
+        return rtrim($dumper->dump($data, true));
+    }
+
+    private function prepareExpectation($expected, int $filter): string
+    {
+        if (!\is_string($expected)) {
+            $expected = $this->getDump($expected, null, $filter);
+        }
+
+        return rtrim($expected);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/VarDumper.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/VarDumper.php
new file mode 100644
index 0000000..b223e06
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/VarDumper.php
@@ -0,0 +1,109 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper;
+
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\HttpFoundation\RequestStack;
+use Symfony\Component\HttpKernel\Debug\FileLinkFormatter;
+use Symfony\Component\VarDumper\Caster\ReflectionCaster;
+use Symfony\Component\VarDumper\Cloner\VarCloner;
+use Symfony\Component\VarDumper\Dumper\CliDumper;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\CliContextProvider;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\RequestContextProvider;
+use Symfony\Component\VarDumper\Dumper\ContextProvider\SourceContextProvider;
+use Symfony\Component\VarDumper\Dumper\ContextualizedDumper;
+use Symfony\Component\VarDumper\Dumper\HtmlDumper;
+use Symfony\Component\VarDumper\Dumper\ServerDumper;
+
+// Load the global dump() function
+require_once __DIR__.'/Resources/functions/dump.php';
+
+/**
+ * @author Nicolas Grekas <p@tchwork.com>
+ */
+class VarDumper
+{
+    private static $handler;
+
+    public static function dump($var)
+    {
+        if (null === self::$handler) {
+            self::register();
+        }
+
+        return (self::$handler)($var);
+    }
+
+    public static function setHandler(callable $callable = null)
+    {
+        $prevHandler = self::$handler;
+
+        // Prevent replacing the handler with expected format as soon as the env var was set:
+        if (isset($_SERVER['VAR_DUMPER_FORMAT'])) {
+            return $prevHandler;
+        }
+
+        self::$handler = $callable;
+
+        return $prevHandler;
+    }
+
+    private static function register(): void
+    {
+        $cloner = new VarCloner();
+        $cloner->addCasters(ReflectionCaster::UNSET_CLOSURE_FILE_INFO);
+
+        $format = $_SERVER['VAR_DUMPER_FORMAT'] ?? null;
+        switch (true) {
+            case 'html' === $format:
+                $dumper = new HtmlDumper();
+                break;
+            case 'cli' === $format:
+                $dumper = new CliDumper();
+                break;
+            case 'server' === $format:
+            case $format && 'tcp' === parse_url($format, \PHP_URL_SCHEME):
+                $host = 'server' === $format ? $_SERVER['VAR_DUMPER_SERVER'] ?? '127.0.0.1:9912' : $format;
+                $dumper = \in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) ? new CliDumper() : new HtmlDumper();
+                $dumper = new ServerDumper($host, $dumper, self::getDefaultContextProviders());
+                break;
+            default:
+                $dumper = \in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) ? new CliDumper() : new HtmlDumper();
+        }
+
+        if (!$dumper instanceof ServerDumper) {
+            $dumper = new ContextualizedDumper($dumper, [new SourceContextProvider()]);
+        }
+
+        self::$handler = function ($var) use ($cloner, $dumper) {
+            $dumper->dump($cloner->cloneVar($var));
+        };
+    }
+
+    private static function getDefaultContextProviders(): array
+    {
+        $contextProviders = [];
+
+        if (!\in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) && (class_exists(Request::class))) {
+            $requestStack = new RequestStack();
+            $requestStack->push(Request::createFromGlobals());
+            $contextProviders['request'] = new RequestContextProvider($requestStack);
+        }
+
+        $fileLinkFormatter = class_exists(FileLinkFormatter::class) ? new FileLinkFormatter(null, $requestStack ?? null) : null;
+
+        return $contextProviders + [
+            'cli' => new CliContextProvider(),
+            'source' => new SourceContextProvider(null, null, $fileLinkFormatter),
+        ];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/composer.json
new file mode 100644
index 0000000..2d4889d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/symfony/var-dumper/composer.json
@@ -0,0 +1,49 @@
+{
+    "name": "symfony/var-dumper",
+    "type": "library",
+    "description": "Provides mechanisms for walking through any arbitrary PHP variable",
+    "keywords": ["dump", "debug"],
+    "homepage": "https://symfony.com",
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Nicolas Grekas",
+            "email": "p@tchwork.com"
+        },
+        {
+            "name": "Symfony Community",
+            "homepage": "https://symfony.com/contributors"
+        }
+    ],
+    "require": {
+        "php": ">=7.2.5",
+        "symfony/polyfill-mbstring": "~1.0",
+        "symfony/polyfill-php80": "^1.16"
+    },
+    "require-dev": {
+        "ext-iconv": "*",
+        "symfony/console": "^4.4|^5.0",
+        "symfony/process": "^4.4|^5.0",
+        "twig/twig": "^2.13|^3.0.4"
+    },
+    "conflict": {
+        "phpunit/phpunit": "<5.4.3",
+        "symfony/console": "<4.4"
+    },
+    "suggest": {
+        "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
+        "ext-intl": "To show region name in time zone dump",
+        "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
+    },
+    "autoload": {
+        "files": [ "Resources/functions/dump.php" ],
+        "psr-4": { "Symfony\\Component\\VarDumper\\": "" },
+        "exclude-from-classmap": [
+            "/Tests/"
+        ]
+    },
+    "bin": [
+        "Resources/bin/var-dump-server"
+    ],
+    "minimum-stability": "dev"
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/.github/workflows/run-tests.yml b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/.github/workflows/run-tests.yml
new file mode 100644
index 0000000..c4f275b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/.github/workflows/run-tests.yml
@@ -0,0 +1,38 @@
+name: Run tests
+
+on: [push, pull_request]
+
+jobs:
+  tests:
+    strategy:
+      matrix:
+        os: [Ubuntu, macOS]
+        php: [7.2, 7.3, 7.4, 8.0]
+
+        include:
+          - os: Ubuntu
+            os-version: ubuntu-latest
+
+          - os: macOS
+            os-version: macos-latest
+
+    name: ${{ matrix.os }} - PHP ${{ matrix.php }}
+
+    runs-on: ${{ matrix.os-version }}
+
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v1
+
+      - name: Setup PHP
+        uses: shivammathur/setup-php@v2
+        with:
+          php-version: ${{ matrix.php }}
+          extensions: posix, dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick
+          coverage: none
+
+      - name: Install dependencies
+        run: composer update --prefer-stable --prefer-dist --no-interaction
+
+      - name: Run tests
+        run: bash upgrade.sh
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/composer.json b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/composer.json
new file mode 100644
index 0000000..58e5f6c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/composer.json
@@ -0,0 +1,47 @@
+{
+    "name": "tightenco/collect",
+    "description": "Collect - Illuminate Collections as a separate package.",
+    "keywords": ["laravel", "collection"],
+    "license": "MIT",
+    "authors": [
+        {
+            "name": "Taylor Otwell",
+            "email": "taylorotwell@gmail.com"
+        }
+    ],
+    "require": {
+        "php": "^7.2|^8.0",
+        "symfony/var-dumper": "^3.4 || ^4.0 || ^5.0"
+    },
+    "require-dev": {
+        "mockery/mockery": "^1.0",
+        "phpunit/phpunit": "^8.3",
+        "nesbot/carbon": "^2.23.0"
+    },
+    "autoload": {
+        "files": [
+            "src/Collect/Support/helpers.php",
+            "src/Collect/Support/alias.php"
+        ],
+        "psr-4": {
+            "Tightenco\\Collect\\": "src/Collect"
+        }
+    },
+    "autoload-dev": {
+        "files": [
+            "tests/files/Support/Carbon.php",
+            "tests/files/Support/HtmlString.php",
+            "tests/files/Support/HigherOrderTapProxy.php",
+            "tests/files/Support/Str.php",
+            "tests/files/Support/Stringable.php"
+        ]
+    },
+    "scripts": {
+        "test": [
+            "@composer install",
+            "phpunit"
+        ]
+    },
+    "minimum-stability": "dev",
+    "prefer-stable": true
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Arrayable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Arrayable.php
new file mode 100755
index 0000000..a205804
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Arrayable.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Tightenco\Collect\Contracts\Support;
+
+interface Arrayable
+{
+    /**
+     * Get the instance as an array.
+     *
+     * @return array
+     */
+    public function toArray();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Htmlable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Htmlable.php
new file mode 100644
index 0000000..aa20e96
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Htmlable.php
@@ -0,0 +1,13 @@
+<?php
+
+namespace Tightenco\Collect\Contracts\Support;
+
+interface Htmlable
+{
+    /**
+     * Get content as a string of HTML.
+     *
+     * @return string
+     */
+    public function toHtml();
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Jsonable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Jsonable.php
new file mode 100755
index 0000000..6b73730
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Contracts/Support/Jsonable.php
@@ -0,0 +1,14 @@
+<?php
+
+namespace Tightenco\Collect\Contracts\Support;
+
+interface Jsonable
+{
+    /**
+     * Convert the object to its JSON representation.
+     *
+     * @param  int  $options
+     * @return string
+     */
+    public function toJson($options = 0);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Arr.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Arr.php
new file mode 100644
index 0000000..b99db01
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Arr.php
@@ -0,0 +1,681 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+use ArrayAccess;
+use Tightenco\Collect\Support\Traits\Macroable;
+use InvalidArgumentException;
+
+class Arr
+{
+    use Macroable;
+
+    /**
+     * Determine whether the given value is array accessible.
+     *
+     * @param  mixed  $value
+     * @return bool
+     */
+    public static function accessible($value)
+    {
+        return is_array($value) || $value instanceof ArrayAccess;
+    }
+
+    /**
+     * Add an element to an array using "dot" notation if it doesn't exist.
+     *
+     * @param  array  $array
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return array
+     */
+    public static function add($array, $key, $value)
+    {
+        if (is_null(static::get($array, $key))) {
+            static::set($array, $key, $value);
+        }
+
+        return $array;
+    }
+
+    /**
+     * Collapse an array of arrays into a single array.
+     *
+     * @param  iterable  $array
+     * @return array
+     */
+    public static function collapse($array)
+    {
+        $results = [];
+
+        foreach ($array as $values) {
+            if ($values instanceof Collection) {
+                $values = $values->all();
+            } elseif (! is_array($values)) {
+                continue;
+            }
+
+            $results[] = $values;
+        }
+
+        return array_merge([], ...$results);
+    }
+
+    /**
+     * Cross join the given arrays, returning all possible permutations.
+     *
+     * @param  iterable  ...$arrays
+     * @return array
+     */
+    public static function crossJoin(...$arrays)
+    {
+        $results = [[]];
+
+        foreach ($arrays as $index => $array) {
+            $append = [];
+
+            foreach ($results as $product) {
+                foreach ($array as $item) {
+                    $product[$index] = $item;
+
+                    $append[] = $product;
+                }
+            }
+
+            $results = $append;
+        }
+
+        return $results;
+    }
+
+    /**
+     * Divide an array into two arrays. One with keys and the other with values.
+     *
+     * @param  array  $array
+     * @return array
+     */
+    public static function divide($array)
+    {
+        return [array_keys($array), array_values($array)];
+    }
+
+    /**
+     * Flatten a multi-dimensional associative array with dots.
+     *
+     * @param  iterable  $array
+     * @param  string  $prepend
+     * @return array
+     */
+    public static function dot($array, $prepend = '')
+    {
+        $results = [];
+
+        foreach ($array as $key => $value) {
+            if (is_array($value) && ! empty($value)) {
+                $results = array_merge($results, static::dot($value, $prepend.$key.'.'));
+            } else {
+                $results[$prepend.$key] = $value;
+            }
+        }
+
+        return $results;
+    }
+
+    /**
+     * Get all of the given array except for a specified array of keys.
+     *
+     * @param  array  $array
+     * @param  array|string  $keys
+     * @return array
+     */
+    public static function except($array, $keys)
+    {
+        static::forget($array, $keys);
+
+        return $array;
+    }
+
+    /**
+     * Determine if the given key exists in the provided array.
+     *
+     * @param  \ArrayAccess|array  $array
+     * @param  string|int  $key
+     * @return bool
+     */
+    public static function exists($array, $key)
+    {
+        if ($array instanceof Enumerable) {
+            return $array->has($key);
+        }
+
+        if ($array instanceof ArrayAccess) {
+            return $array->offsetExists($key);
+        }
+
+        return array_key_exists($key, $array);
+    }
+
+    /**
+     * Return the first element in an array passing a given truth test.
+     *
+     * @param  iterable  $array
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public static function first($array, callable $callback = null, $default = null)
+    {
+        if (is_null($callback)) {
+            if (empty($array)) {
+                return value($default);
+            }
+
+            foreach ($array as $item) {
+                return $item;
+            }
+        }
+
+        foreach ($array as $key => $value) {
+            if ($callback($value, $key)) {
+                return $value;
+            }
+        }
+
+        return value($default);
+    }
+
+    /**
+     * Return the last element in an array passing a given truth test.
+     *
+     * @param  array  $array
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public static function last($array, callable $callback = null, $default = null)
+    {
+        if (is_null($callback)) {
+            return empty($array) ? value($default) : end($array);
+        }
+
+        return static::first(array_reverse($array, true), $callback, $default);
+    }
+
+    /**
+     * Flatten a multi-dimensional array into a single level.
+     *
+     * @param  iterable  $array
+     * @param  int  $depth
+     * @return array
+     */
+    public static function flatten($array, $depth = INF)
+    {
+        $result = [];
+
+        foreach ($array as $item) {
+            $item = $item instanceof Collection ? $item->all() : $item;
+
+            if (! is_array($item)) {
+                $result[] = $item;
+            } else {
+                $values = $depth === 1
+                    ? array_values($item)
+                    : static::flatten($item, $depth - 1);
+
+                foreach ($values as $value) {
+                    $result[] = $value;
+                }
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Remove one or many array items from a given array using "dot" notation.
+     *
+     * @param  array  $array
+     * @param  array|string  $keys
+     * @return void
+     */
+    public static function forget(&$array, $keys)
+    {
+        $original = &$array;
+
+        $keys = (array) $keys;
+
+        if (count($keys) === 0) {
+            return;
+        }
+
+        foreach ($keys as $key) {
+            // if the exact key exists in the top-level, remove it
+            if (static::exists($array, $key)) {
+                unset($array[$key]);
+
+                continue;
+            }
+
+            $parts = explode('.', $key);
+
+            // clean up before each pass
+            $array = &$original;
+
+            while (count($parts) > 1) {
+                $part = array_shift($parts);
+
+                if (isset($array[$part]) && is_array($array[$part])) {
+                    $array = &$array[$part];
+                } else {
+                    continue 2;
+                }
+            }
+
+            unset($array[array_shift($parts)]);
+        }
+    }
+
+    /**
+     * Get an item from an array using "dot" notation.
+     *
+     * @param  \ArrayAccess|array  $array
+     * @param  string|int|null  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public static function get($array, $key, $default = null)
+    {
+        if (! static::accessible($array)) {
+            return value($default);
+        }
+
+        if (is_null($key)) {
+            return $array;
+        }
+
+        if (static::exists($array, $key)) {
+            return $array[$key];
+        }
+
+        if (strpos($key, '.') === false) {
+            return $array[$key] ?? value($default);
+        }
+
+        foreach (explode('.', $key) as $segment) {
+            if (static::accessible($array) && static::exists($array, $segment)) {
+                $array = $array[$segment];
+            } else {
+                return value($default);
+            }
+        }
+
+        return $array;
+    }
+
+    /**
+     * Check if an item or items exist in an array using "dot" notation.
+     *
+     * @param  \ArrayAccess|array  $array
+     * @param  string|array  $keys
+     * @return bool
+     */
+    public static function has($array, $keys)
+    {
+        $keys = (array) $keys;
+
+        if (! $array || $keys === []) {
+            return false;
+        }
+
+        foreach ($keys as $key) {
+            $subKeyArray = $array;
+
+            if (static::exists($array, $key)) {
+                continue;
+            }
+
+            foreach (explode('.', $key) as $segment) {
+                if (static::accessible($subKeyArray) && static::exists($subKeyArray, $segment)) {
+                    $subKeyArray = $subKeyArray[$segment];
+                } else {
+                    return false;
+                }
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Determine if any of the keys exist in an array using "dot" notation.
+     *
+     * @param  \ArrayAccess|array  $array
+     * @param  string|array  $keys
+     * @return bool
+     */
+    public static function hasAny($array, $keys)
+    {
+        if (is_null($keys)) {
+            return false;
+        }
+
+        $keys = (array) $keys;
+
+        if (! $array) {
+            return false;
+        }
+
+        if ($keys === []) {
+            return false;
+        }
+
+        foreach ($keys as $key) {
+            if (static::has($array, $key)) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Determines if an array is associative.
+     *
+     * An array is "associative" if it doesn't have sequential numerical keys beginning with zero.
+     *
+     * @param  array  $array
+     * @return bool
+     */
+    public static function isAssoc(array $array)
+    {
+        $keys = array_keys($array);
+
+        return array_keys($keys) !== $keys;
+    }
+
+    /**
+     * Get a subset of the items from the given array.
+     *
+     * @param  array  $array
+     * @param  array|string  $keys
+     * @return array
+     */
+    public static function only($array, $keys)
+    {
+        return array_intersect_key($array, array_flip((array) $keys));
+    }
+
+    /**
+     * Pluck an array of values from an array.
+     *
+     * @param  iterable  $array
+     * @param  string|array|int|null  $value
+     * @param  string|array|null  $key
+     * @return array
+     */
+    public static function pluck($array, $value, $key = null)
+    {
+        $results = [];
+
+        [$value, $key] = static::explodePluckParameters($value, $key);
+
+        foreach ($array as $item) {
+            $itemValue = data_get($item, $value);
+
+            // If the key is "null", we will just append the value to the array and keep
+            // looping. Otherwise we will key the array using the value of the key we
+            // received from the developer. Then we'll return the final array form.
+            if (is_null($key)) {
+                $results[] = $itemValue;
+            } else {
+                $itemKey = data_get($item, $key);
+
+                if (is_object($itemKey) && method_exists($itemKey, '__toString')) {
+                    $itemKey = (string) $itemKey;
+                }
+
+                $results[$itemKey] = $itemValue;
+            }
+        }
+
+        return $results;
+    }
+
+    /**
+     * Explode the "value" and "key" arguments passed to "pluck".
+     *
+     * @param  string|array  $value
+     * @param  string|array|null  $key
+     * @return array
+     */
+    protected static function explodePluckParameters($value, $key)
+    {
+        $value = is_string($value) ? explode('.', $value) : $value;
+
+        $key = is_null($key) || is_array($key) ? $key : explode('.', $key);
+
+        return [$value, $key];
+    }
+
+    /**
+     * Push an item onto the beginning of an array.
+     *
+     * @param  array  $array
+     * @param  mixed  $value
+     * @param  mixed  $key
+     * @return array
+     */
+    public static function prepend($array, $value, $key = null)
+    {
+        if (func_num_args() == 2) {
+            array_unshift($array, $value);
+        } else {
+            $array = [$key => $value] + $array;
+        }
+
+        return $array;
+    }
+
+    /**
+     * Get a value from the array, and remove it.
+     *
+     * @param  array  $array
+     * @param  string  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public static function pull(&$array, $key, $default = null)
+    {
+        $value = static::get($array, $key, $default);
+
+        static::forget($array, $key);
+
+        return $value;
+    }
+
+    /**
+     * Get one or a specified number of random values from an array.
+     *
+     * @param  array  $array
+     * @param  int|null  $number
+     * @param  bool|false  $preserveKeys
+     * @return mixed
+     *
+     * @throws \InvalidArgumentException
+     */
+    public static function random($array, $number = null, $preserveKeys = false)
+    {
+        $requested = is_null($number) ? 1 : $number;
+
+        $count = count($array);
+
+        if ($requested > $count) {
+            throw new InvalidArgumentException(
+                "You requested {$requested} items, but there are only {$count} items available."
+            );
+        }
+
+        if (is_null($number)) {
+            return $array[array_rand($array)];
+        }
+
+        if ((int) $number === 0) {
+            return [];
+        }
+
+        $keys = array_rand($array, $number);
+
+        $results = [];
+
+        if ($preserveKeys) {
+            foreach ((array) $keys as $key) {
+                $results[$key] = $array[$key];
+            }
+        } else {
+            foreach ((array) $keys as $key) {
+                $results[] = $array[$key];
+            }
+        }
+
+        return $results;
+    }
+
+    /**
+     * Set an array item to a given value using "dot" notation.
+     *
+     * If no key is given to the method, the entire array will be replaced.
+     *
+     * @param  array  $array
+     * @param  string|null  $key
+     * @param  mixed  $value
+     * @return array
+     */
+    public static function set(&$array, $key, $value)
+    {
+        if (is_null($key)) {
+            return $array = $value;
+        }
+
+        $keys = explode('.', $key);
+
+        foreach ($keys as $i => $key) {
+            if (count($keys) === 1) {
+                break;
+            }
+
+            unset($keys[$i]);
+
+            // If the key doesn't exist at this depth, we will just create an empty array
+            // to hold the next value, allowing us to create the arrays to hold final
+            // values at the correct depth. Then we'll keep digging into the array.
+            if (! isset($array[$key]) || ! is_array($array[$key])) {
+                $array[$key] = [];
+            }
+
+            $array = &$array[$key];
+        }
+
+        $array[array_shift($keys)] = $value;
+
+        return $array;
+    }
+
+    /**
+     * Shuffle the given array and return the result.
+     *
+     * @param  array  $array
+     * @param  int|null  $seed
+     * @return array
+     */
+    public static function shuffle($array, $seed = null)
+    {
+        if (is_null($seed)) {
+            shuffle($array);
+        } else {
+            mt_srand($seed);
+            shuffle($array);
+            mt_srand();
+        }
+
+        return $array;
+    }
+
+    /**
+     * Sort the array using the given callback or "dot" notation.
+     *
+     * @param  array  $array
+     * @param  callable|array|string|null  $callback
+     * @return array
+     */
+    public static function sort($array, $callback = null)
+    {
+        return Collection::make($array)->sortBy($callback)->all();
+    }
+
+    /**
+     * Recursively sort an array by keys and values.
+     *
+     * @param  array  $array
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return array
+     */
+    public static function sortRecursive($array, $options = SORT_REGULAR, $descending = false)
+    {
+        foreach ($array as &$value) {
+            if (is_array($value)) {
+                $value = static::sortRecursive($value, $options, $descending);
+            }
+        }
+
+        if (static::isAssoc($array)) {
+            $descending
+                    ? krsort($array, $options)
+                    : ksort($array, $options);
+        } else {
+            $descending
+                    ? rsort($array, $options)
+                    : sort($array, $options);
+        }
+
+        return $array;
+    }
+
+    /**
+     * Convert the array into a query string.
+     *
+     * @param  array  $array
+     * @return string
+     */
+    public static function query($array)
+    {
+        return http_build_query($array, '', '&', PHP_QUERY_RFC3986);
+    }
+
+    /**
+     * Filter the array using the given callback.
+     *
+     * @param  array  $array
+     * @param  callable  $callback
+     * @return array
+     */
+    public static function where($array, callable $callback)
+    {
+        return array_filter($array, $callback, ARRAY_FILTER_USE_BOTH);
+    }
+
+    /**
+     * If the given value is not an array and not null, wrap it in one.
+     *
+     * @param  mixed  $value
+     * @return array
+     */
+    public static function wrap($value)
+    {
+        if (is_null($value)) {
+            return [];
+        }
+
+        return is_array($value) ? $value : [$value];
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Collection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Collection.php
new file mode 100644
index 0000000..3a0bfbf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Collection.php
@@ -0,0 +1,1453 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+use ArrayAccess;
+use ArrayIterator;
+use Tightenco\Collect\Support\Traits\EnumeratesValues;
+use Tightenco\Collect\Support\Traits\Macroable;
+use stdClass;
+
+class Collection implements ArrayAccess, Enumerable
+{
+    use EnumeratesValues, Macroable;
+
+    /**
+     * The items contained in the collection.
+     *
+     * @var array
+     */
+    protected $items = [];
+
+    /**
+     * Create a new collection.
+     *
+     * @param  mixed  $items
+     * @return void
+     */
+    public function __construct($items = [])
+    {
+        $this->items = $this->getArrayableItems($items);
+    }
+
+    /**
+     * Create a collection with the given range.
+     *
+     * @param  int  $from
+     * @param  int  $to
+     * @return static
+     */
+    public static function range($from, $to)
+    {
+        return new static(range($from, $to));
+    }
+
+    /**
+     * Get all of the items in the collection.
+     *
+     * @return array
+     */
+    public function all()
+    {
+        return $this->items;
+    }
+
+    /**
+     * Get a lazy collection for the items in this collection.
+     *
+     * @return \Tightenco\Collect\Support\LazyCollection
+     */
+    public function lazy()
+    {
+        return new LazyCollection($this->items);
+    }
+
+    /**
+     * Get the average value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function avg($callback = null)
+    {
+        $callback = $this->valueRetriever($callback);
+
+        $items = $this->map(function ($value) use ($callback) {
+            return $callback($value);
+        })->filter(function ($value) {
+            return ! is_null($value);
+        });
+
+        if ($count = $items->count()) {
+            return $items->sum() / $count;
+        }
+    }
+
+    /**
+     * Get the median of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return mixed
+     */
+    public function median($key = null)
+    {
+        $values = (isset($key) ? $this->pluck($key) : $this)
+            ->filter(function ($item) {
+                return ! is_null($item);
+            })->sort()->values();
+
+        $count = $values->count();
+
+        if ($count === 0) {
+            return;
+        }
+
+        $middle = (int) ($count / 2);
+
+        if ($count % 2) {
+            return $values->get($middle);
+        }
+
+        return (new static([
+            $values->get($middle - 1), $values->get($middle),
+        ]))->average();
+    }
+
+    /**
+     * Get the mode of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return array|null
+     */
+    public function mode($key = null)
+    {
+        if ($this->count() === 0) {
+            return;
+        }
+
+        $collection = isset($key) ? $this->pluck($key) : $this;
+
+        $counts = new static;
+
+        $collection->each(function ($value) use ($counts) {
+            $counts[$value] = isset($counts[$value]) ? $counts[$value] + 1 : 1;
+        });
+
+        $sorted = $counts->sort();
+
+        $highestValue = $sorted->last();
+
+        return $sorted->filter(function ($value) use ($highestValue) {
+            return $value == $highestValue;
+        })->sort()->keys()->all();
+    }
+
+    /**
+     * Collapse the collection of items into a single array.
+     *
+     * @return static
+     */
+    public function collapse()
+    {
+        return new static(Arr::collapse($this->items));
+    }
+
+    /**
+     * Determine if an item exists in the collection.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function contains($key, $operator = null, $value = null)
+    {
+        if (func_num_args() === 1) {
+            if ($this->useAsCallable($key)) {
+                $placeholder = new stdClass;
+
+                return $this->first($key, $placeholder) !== $placeholder;
+            }
+
+            return in_array($key, $this->items);
+        }
+
+        return $this->contains($this->operatorForWhere(...func_get_args()));
+    }
+
+    /**
+     * Cross join with the given lists, returning all possible permutations.
+     *
+     * @param  mixed  ...$lists
+     * @return static
+     */
+    public function crossJoin(...$lists)
+    {
+        return new static(Arr::crossJoin(
+            $this->items, ...array_map([$this, 'getArrayableItems'], $lists)
+        ));
+    }
+
+    /**
+     * Get the items in the collection that are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diff($items)
+    {
+        return new static(array_diff($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Get the items in the collection that are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffUsing($items, callable $callback)
+    {
+        return new static(array_udiff($this->items, $this->getArrayableItems($items), $callback));
+    }
+
+    /**
+     * Get the items in the collection whose keys and values are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffAssoc($items)
+    {
+        return new static(array_diff_assoc($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Get the items in the collection whose keys and values are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffAssocUsing($items, callable $callback)
+    {
+        return new static(array_diff_uassoc($this->items, $this->getArrayableItems($items), $callback));
+    }
+
+    /**
+     * Get the items in the collection whose keys are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffKeys($items)
+    {
+        return new static(array_diff_key($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Get the items in the collection whose keys are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffKeysUsing($items, callable $callback)
+    {
+        return new static(array_diff_ukey($this->items, $this->getArrayableItems($items), $callback));
+    }
+
+    /**
+     * Retrieve duplicate items from the collection.
+     *
+     * @param  callable|null  $callback
+     * @param  bool  $strict
+     * @return static
+     */
+    public function duplicates($callback = null, $strict = false)
+    {
+        $items = $this->map($this->valueRetriever($callback));
+
+        $uniqueItems = $items->unique(null, $strict);
+
+        $compare = $this->duplicateComparator($strict);
+
+        $duplicates = new static;
+
+        foreach ($items as $key => $value) {
+            if ($uniqueItems->isNotEmpty() && $compare($value, $uniqueItems->first())) {
+                $uniqueItems->shift();
+            } else {
+                $duplicates[$key] = $value;
+            }
+        }
+
+        return $duplicates;
+    }
+
+    /**
+     * Retrieve duplicate items from the collection using strict comparison.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function duplicatesStrict($callback = null)
+    {
+        return $this->duplicates($callback, true);
+    }
+
+    /**
+     * Get the comparison function to detect duplicates.
+     *
+     * @param  bool  $strict
+     * @return \Closure
+     */
+    protected function duplicateComparator($strict)
+    {
+        if ($strict) {
+            return function ($a, $b) {
+                return $a === $b;
+            };
+        }
+
+        return function ($a, $b) {
+            return $a == $b;
+        };
+    }
+
+    /**
+     * Get all items except for those with the specified keys.
+     *
+     * @param  \Tightenco\Collect\Support\Collection|mixed  $keys
+     * @return static
+     */
+    public function except($keys)
+    {
+        if ($keys instanceof Enumerable) {
+            $keys = $keys->all();
+        } elseif (! is_array($keys)) {
+            $keys = func_get_args();
+        }
+
+        return new static(Arr::except($this->items, $keys));
+    }
+
+    /**
+     * Run a filter over each of the items.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function filter(callable $callback = null)
+    {
+        if ($callback) {
+            return new static(Arr::where($this->items, $callback));
+        }
+
+        return new static(array_filter($this->items));
+    }
+
+    /**
+     * Get the first item from the collection passing the given truth test.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function first(callable $callback = null, $default = null)
+    {
+        return Arr::first($this->items, $callback, $default);
+    }
+
+    /**
+     * Get a flattened array of the items in the collection.
+     *
+     * @param  int  $depth
+     * @return static
+     */
+    public function flatten($depth = INF)
+    {
+        return new static(Arr::flatten($this->items, $depth));
+    }
+
+    /**
+     * Flip the items in the collection.
+     *
+     * @return static
+     */
+    public function flip()
+    {
+        return new static(array_flip($this->items));
+    }
+
+    /**
+     * Remove an item from the collection by key.
+     *
+     * @param  string|array  $keys
+     * @return $this
+     */
+    public function forget($keys)
+    {
+        foreach ((array) $keys as $key) {
+            $this->offsetUnset($key);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Get an item from the collection by key.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function get($key, $default = null)
+    {
+        if (array_key_exists($key, $this->items)) {
+            return $this->items[$key];
+        }
+
+        return value($default);
+    }
+
+    /**
+     * Group an associative array by a field or using a callback.
+     *
+     * @param  array|callable|string  $groupBy
+     * @param  bool  $preserveKeys
+     * @return static
+     */
+    public function groupBy($groupBy, $preserveKeys = false)
+    {
+        if (! $this->useAsCallable($groupBy) && is_array($groupBy)) {
+            $nextGroups = $groupBy;
+
+            $groupBy = array_shift($nextGroups);
+        }
+
+        $groupBy = $this->valueRetriever($groupBy);
+
+        $results = [];
+
+        foreach ($this->items as $key => $value) {
+            $groupKeys = $groupBy($value, $key);
+
+            if (! is_array($groupKeys)) {
+                $groupKeys = [$groupKeys];
+            }
+
+            foreach ($groupKeys as $groupKey) {
+                $groupKey = is_bool($groupKey) ? (int) $groupKey : $groupKey;
+
+                if (! array_key_exists($groupKey, $results)) {
+                    $results[$groupKey] = new static;
+                }
+
+                $results[$groupKey]->offsetSet($preserveKeys ? $key : null, $value);
+            }
+        }
+
+        $result = new static($results);
+
+        if (! empty($nextGroups)) {
+            return $result->map->groupBy($nextGroups, $preserveKeys);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Key an associative array by a field or using a callback.
+     *
+     * @param  callable|string  $keyBy
+     * @return static
+     */
+    public function keyBy($keyBy)
+    {
+        $keyBy = $this->valueRetriever($keyBy);
+
+        $results = [];
+
+        foreach ($this->items as $key => $item) {
+            $resolvedKey = $keyBy($item, $key);
+
+            if (is_object($resolvedKey)) {
+                $resolvedKey = (string) $resolvedKey;
+            }
+
+            $results[$resolvedKey] = $item;
+        }
+
+        return new static($results);
+    }
+
+    /**
+     * Determine if an item exists in the collection by key.
+     *
+     * @param  mixed  $key
+     * @return bool
+     */
+    public function has($key)
+    {
+        $keys = is_array($key) ? $key : func_get_args();
+
+        foreach ($keys as $value) {
+            if (! array_key_exists($value, $this->items)) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * Concatenate values of a given key as a string.
+     *
+     * @param  string  $value
+     * @param  string|null  $glue
+     * @return string
+     */
+    public function implode($value, $glue = null)
+    {
+        $first = $this->first();
+
+        if (is_array($first) || (is_object($first) && ! $first instanceof \Illuminate\Support\Stringable)) {
+            return implode($glue, $this->pluck($value)->all());
+        }
+
+        return implode($value, $this->items);
+    }
+
+    /**
+     * Intersect the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersect($items)
+    {
+        return new static(array_intersect($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Intersect the collection with the given items by key.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersectByKeys($items)
+    {
+        return new static(array_intersect_key(
+            $this->items, $this->getArrayableItems($items)
+        ));
+    }
+
+    /**
+     * Determine if the collection is empty or not.
+     *
+     * @return bool
+     */
+    public function isEmpty()
+    {
+        return empty($this->items);
+    }
+
+    /**
+     * Determine if the collection contains a single item.
+     *
+     * @return bool
+     */
+    public function containsOneItem()
+    {
+        return $this->count() === 1;
+    }
+
+    /**
+     * Join all items from the collection using a string. The final items can use a separate glue string.
+     *
+     * @param  string  $glue
+     * @param  string  $finalGlue
+     * @return string
+     */
+    public function join($glue, $finalGlue = '')
+    {
+        if ($finalGlue === '') {
+            return $this->implode($glue);
+        }
+
+        $count = $this->count();
+
+        if ($count === 0) {
+            return '';
+        }
+
+        if ($count === 1) {
+            return $this->last();
+        }
+
+        $collection = new static($this->items);
+
+        $finalItem = $collection->pop();
+
+        return $collection->implode($glue).$finalGlue.$finalItem;
+    }
+
+    /**
+     * Get the keys of the collection items.
+     *
+     * @return static
+     */
+    public function keys()
+    {
+        return new static(array_keys($this->items));
+    }
+
+    /**
+     * Get the last item from the collection.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function last(callable $callback = null, $default = null)
+    {
+        return Arr::last($this->items, $callback, $default);
+    }
+
+    /**
+     * Get the values of a given key.
+     *
+     * @param  string|array|int|null  $value
+     * @param  string|null  $key
+     * @return static
+     */
+    public function pluck($value, $key = null)
+    {
+        return new static(Arr::pluck($this->items, $value, $key));
+    }
+
+    /**
+     * Run a map over each of the items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function map(callable $callback)
+    {
+        $keys = array_keys($this->items);
+
+        $items = array_map($callback, $this->items, $keys);
+
+        return new static(array_combine($keys, $items));
+    }
+
+    /**
+     * Run a dictionary map over the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapToDictionary(callable $callback)
+    {
+        $dictionary = [];
+
+        foreach ($this->items as $key => $item) {
+            $pair = $callback($item, $key);
+
+            $key = key($pair);
+
+            $value = reset($pair);
+
+            if (! isset($dictionary[$key])) {
+                $dictionary[$key] = [];
+            }
+
+            $dictionary[$key][] = $value;
+        }
+
+        return new static($dictionary);
+    }
+
+    /**
+     * Run an associative map over each of the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapWithKeys(callable $callback)
+    {
+        $result = [];
+
+        foreach ($this->items as $key => $value) {
+            $assoc = $callback($value, $key);
+
+            foreach ($assoc as $mapKey => $mapValue) {
+                $result[$mapKey] = $mapValue;
+            }
+        }
+
+        return new static($result);
+    }
+
+    /**
+     * Merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function merge($items)
+    {
+        return new static(array_merge($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Recursively merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function mergeRecursive($items)
+    {
+        return new static(array_merge_recursive($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Create a collection by using this collection for keys and another for its values.
+     *
+     * @param  mixed  $values
+     * @return static
+     */
+    public function combine($values)
+    {
+        return new static(array_combine($this->all(), $this->getArrayableItems($values)));
+    }
+
+    /**
+     * Union the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function union($items)
+    {
+        return new static($this->items + $this->getArrayableItems($items));
+    }
+
+    /**
+     * Create a new collection consisting of every n-th element.
+     *
+     * @param  int  $step
+     * @param  int  $offset
+     * @return static
+     */
+    public function nth($step, $offset = 0)
+    {
+        $new = [];
+
+        $position = 0;
+
+        foreach ($this->items as $item) {
+            if ($position % $step === $offset) {
+                $new[] = $item;
+            }
+
+            $position++;
+        }
+
+        return new static($new);
+    }
+
+    /**
+     * Get the items with the specified keys.
+     *
+     * @param  mixed  $keys
+     * @return static
+     */
+    public function only($keys)
+    {
+        if (is_null($keys)) {
+            return new static($this->items);
+        }
+
+        if ($keys instanceof Enumerable) {
+            $keys = $keys->all();
+        }
+
+        $keys = is_array($keys) ? $keys : func_get_args();
+
+        return new static(Arr::only($this->items, $keys));
+    }
+
+    /**
+     * Get and remove the last item from the collection.
+     *
+     * @return mixed
+     */
+    public function pop()
+    {
+        return array_pop($this->items);
+    }
+
+    /**
+     * Push an item onto the beginning of the collection.
+     *
+     * @param  mixed  $value
+     * @param  mixed  $key
+     * @return $this
+     */
+    public function prepend($value, $key = null)
+    {
+        $this->items = Arr::prepend($this->items, ...func_get_args());
+
+        return $this;
+    }
+
+    /**
+     * Push one or more items onto the end of the collection.
+     *
+     * @param  mixed  $values [optional]
+     * @return $this
+     */
+    public function push(...$values)
+    {
+        foreach ($values as $value) {
+            $this->items[] = $value;
+        }
+
+        return $this;
+    }
+
+    /**
+     * Push all of the given items onto the collection.
+     *
+     * @param  iterable  $source
+     * @return static
+     */
+    public function concat($source)
+    {
+        $result = new static($this);
+
+        foreach ($source as $item) {
+            $result->push($item);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Get and remove an item from the collection.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function pull($key, $default = null)
+    {
+        return Arr::pull($this->items, $key, $default);
+    }
+
+    /**
+     * Put an item in the collection by key.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $value
+     * @return $this
+     */
+    public function put($key, $value)
+    {
+        $this->offsetSet($key, $value);
+
+        return $this;
+    }
+
+    /**
+     * Get one or a specified number of items randomly from the collection.
+     *
+     * @param  int|null  $number
+     * @return static|mixed
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function random($number = null)
+    {
+        if (is_null($number)) {
+            return Arr::random($this->items);
+        }
+
+        return new static(Arr::random($this->items, $number));
+    }
+
+    /**
+     * Replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replace($items)
+    {
+        return new static(array_replace($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Recursively replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replaceRecursive($items)
+    {
+        return new static(array_replace_recursive($this->items, $this->getArrayableItems($items)));
+    }
+
+    /**
+     * Reverse items order.
+     *
+     * @return static
+     */
+    public function reverse()
+    {
+        return new static(array_reverse($this->items, true));
+    }
+
+    /**
+     * Search the collection for a given value and return the corresponding key if successful.
+     *
+     * @param  mixed  $value
+     * @param  bool  $strict
+     * @return mixed
+     */
+    public function search($value, $strict = false)
+    {
+        if (! $this->useAsCallable($value)) {
+            return array_search($value, $this->items, $strict);
+        }
+
+        foreach ($this->items as $key => $item) {
+            if ($value($item, $key)) {
+                return $key;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Get and remove the first item from the collection.
+     *
+     * @return mixed
+     */
+    public function shift()
+    {
+        return array_shift($this->items);
+    }
+
+    /**
+     * Shuffle the items in the collection.
+     *
+     * @param  int|null  $seed
+     * @return static
+     */
+    public function shuffle($seed = null)
+    {
+        return new static(Arr::shuffle($this->items, $seed));
+    }
+
+    /**
+     * Skip the first {$count} items.
+     *
+     * @param  int  $count
+     * @return static
+     */
+    public function skip($count)
+    {
+        return $this->slice($count);
+    }
+
+    /**
+     * Skip items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipUntil($value)
+    {
+        return new static($this->lazy()->skipUntil($value)->all());
+    }
+
+    /**
+     * Skip items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipWhile($value)
+    {
+        return new static($this->lazy()->skipWhile($value)->all());
+    }
+
+    /**
+     * Slice the underlying collection array.
+     *
+     * @param  int  $offset
+     * @param  int|null  $length
+     * @return static
+     */
+    public function slice($offset, $length = null)
+    {
+        return new static(array_slice($this->items, $offset, $length, true));
+    }
+
+    /**
+     * Split a collection into a certain number of groups.
+     *
+     * @param  int  $numberOfGroups
+     * @return static
+     */
+    public function split($numberOfGroups)
+    {
+        if ($this->isEmpty()) {
+            return new static;
+        }
+
+        $groups = new static;
+
+        $groupSize = floor($this->count() / $numberOfGroups);
+
+        $remain = $this->count() % $numberOfGroups;
+
+        $start = 0;
+
+        for ($i = 0; $i < $numberOfGroups; $i++) {
+            $size = $groupSize;
+
+            if ($i < $remain) {
+                $size++;
+            }
+
+            if ($size) {
+                $groups->push(new static(array_slice($this->items, $start, $size)));
+
+                $start += $size;
+            }
+        }
+
+        return $groups;
+    }
+
+    /**
+     * Split a collection into a certain number of groups, and fill the first groups completely.
+     *
+     * @param  int  $numberOfGroups
+     * @return static
+     */
+    public function splitIn($numberOfGroups)
+    {
+        return $this->chunk(ceil($this->count() / $numberOfGroups));
+    }
+
+    /**
+     * Chunk the collection into chunks of the given size.
+     *
+     * @param  int  $size
+     * @return static
+     */
+    public function chunk($size)
+    {
+        if ($size <= 0) {
+            return new static;
+        }
+
+        $chunks = [];
+
+        foreach (array_chunk($this->items, $size, true) as $chunk) {
+            $chunks[] = new static($chunk);
+        }
+
+        return new static($chunks);
+    }
+
+    /**
+     * Chunk the collection into chunks with a callback.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function chunkWhile(callable $callback)
+    {
+        return new static(
+            $this->lazy()->chunkWhile($callback)->mapInto(static::class)
+        );
+    }
+
+    /**
+     * Sort through each item with a callback.
+     *
+     * @param  callable|int|null  $callback
+     * @return static
+     */
+    public function sort($callback = null)
+    {
+        $items = $this->items;
+
+        $callback && is_callable($callback)
+            ? uasort($items, $callback)
+            : asort($items, $callback ?? SORT_REGULAR);
+
+        return new static($items);
+    }
+
+    /**
+     * Sort items in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortDesc($options = SORT_REGULAR)
+    {
+        $items = $this->items;
+
+        arsort($items, $options);
+
+        return new static($items);
+    }
+
+    /**
+     * Sort the collection using the given callback.
+     *
+     * @param  callable|array|string  $callback
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortBy($callback, $options = SORT_REGULAR, $descending = false)
+    {
+        if (is_array($callback) && ! is_callable($callback)) {
+            return $this->sortByMany($callback);
+        }
+
+        $results = [];
+
+        $callback = $this->valueRetriever($callback);
+
+        // First we will loop through the items and get the comparator from a callback
+        // function which we were given. Then, we will sort the returned values and
+        // and grab the corresponding values for the sorted keys from this array.
+        foreach ($this->items as $key => $value) {
+            $results[$key] = $callback($value, $key);
+        }
+
+        $descending ? arsort($results, $options)
+            : asort($results, $options);
+
+        // Once we have sorted all of the keys in the array, we will loop through them
+        // and grab the corresponding model so we can set the underlying items list
+        // to the sorted version. Then we'll just return the collection instance.
+        foreach (array_keys($results) as $key) {
+            $results[$key] = $this->items[$key];
+        }
+
+        return new static($results);
+    }
+
+    /**
+     * Sort the collection using multiple comparisons.
+     *
+     * @param  array  $comparisons
+     * @return static
+     */
+    protected function sortByMany(array $comparisons = [])
+    {
+        $items = $this->items;
+
+        usort($items, function ($a, $b) use ($comparisons) {
+            foreach ($comparisons as $comparison) {
+                $comparison = Arr::wrap($comparison);
+
+                $prop = $comparison[0];
+
+                $ascending = Arr::get($comparison, 1, true) === true ||
+                             Arr::get($comparison, 1, true) === 'asc';
+
+                $result = 0;
+
+                if (is_callable($prop)) {
+                    $result = $prop($a, $b);
+                } else {
+                    $values = [data_get($a, $prop), data_get($b, $prop)];
+
+                    if (! $ascending) {
+                        $values = array_reverse($values);
+                    }
+
+                    $result = $values[0] <=> $values[1];
+                }
+
+                if ($result === 0) {
+                    continue;
+                }
+
+                return $result;
+            }
+        });
+
+        return new static($items);
+    }
+
+    /**
+     * Sort the collection in descending order using the given callback.
+     *
+     * @param  callable|string  $callback
+     * @param  int  $options
+     * @return static
+     */
+    public function sortByDesc($callback, $options = SORT_REGULAR)
+    {
+        return $this->sortBy($callback, $options, true);
+    }
+
+    /**
+     * Sort the collection keys.
+     *
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortKeys($options = SORT_REGULAR, $descending = false)
+    {
+        $items = $this->items;
+
+        $descending ? krsort($items, $options) : ksort($items, $options);
+
+        return new static($items);
+    }
+
+    /**
+     * Sort the collection keys in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortKeysDesc($options = SORT_REGULAR)
+    {
+        return $this->sortKeys($options, true);
+    }
+
+    /**
+     * Splice a portion of the underlying collection array.
+     *
+     * @param  int  $offset
+     * @param  int|null  $length
+     * @param  mixed  $replacement
+     * @return static
+     */
+    public function splice($offset, $length = null, $replacement = [])
+    {
+        if (func_num_args() === 1) {
+            return new static(array_splice($this->items, $offset));
+        }
+
+        return new static(array_splice($this->items, $offset, $length, $replacement));
+    }
+
+    /**
+     * Take the first or last {$limit} items.
+     *
+     * @param  int  $limit
+     * @return static
+     */
+    public function take($limit)
+    {
+        if ($limit < 0) {
+            return $this->slice($limit, abs($limit));
+        }
+
+        return $this->slice(0, $limit);
+    }
+
+    /**
+     * Take items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeUntil($value)
+    {
+        return new static($this->lazy()->takeUntil($value)->all());
+    }
+
+    /**
+     * Take items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeWhile($value)
+    {
+        return new static($this->lazy()->takeWhile($value)->all());
+    }
+
+    /**
+     * Transform each item in the collection using a callback.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function transform(callable $callback)
+    {
+        $this->items = $this->map($callback)->all();
+
+        return $this;
+    }
+
+    /**
+     * Reset the keys on the underlying array.
+     *
+     * @return static
+     */
+    public function values()
+    {
+        return new static(array_values($this->items));
+    }
+
+    /**
+     * Zip the collection together with one or more arrays.
+     *
+     * e.g. new Collection([1, 2, 3])->zip([4, 5, 6]);
+     *      => [[1, 4], [2, 5], [3, 6]]
+     *
+     * @param  mixed  ...$items
+     * @return static
+     */
+    public function zip($items)
+    {
+        $arrayableItems = array_map(function ($items) {
+            return $this->getArrayableItems($items);
+        }, func_get_args());
+
+        $params = array_merge([function () {
+            return new static(func_get_args());
+        }, $this->items], $arrayableItems);
+
+        return new static(array_map(...$params));
+    }
+
+    /**
+     * Pad collection to the specified length with a value.
+     *
+     * @param  int  $size
+     * @param  mixed  $value
+     * @return static
+     */
+    public function pad($size, $value)
+    {
+        return new static(array_pad($this->items, $size, $value));
+    }
+
+    /**
+     * Get an iterator for the items.
+     *
+     * @return \ArrayIterator
+     */
+    public function getIterator()
+    {
+        return new ArrayIterator($this->items);
+    }
+
+    /**
+     * Count the number of items in the collection.
+     *
+     * @return int
+     */
+    public function count()
+    {
+        return count($this->items);
+    }
+
+    /**
+     * Count the number of items in the collection by a field or using a callback.
+     *
+     * @param  callable|string  $countBy
+     * @return static
+     */
+    public function countBy($countBy = null)
+    {
+        return new static($this->lazy()->countBy($countBy)->all());
+    }
+
+    /**
+     * Add an item to the collection.
+     *
+     * @param  mixed  $item
+     * @return $this
+     */
+    public function add($item)
+    {
+        $this->items[] = $item;
+
+        return $this;
+    }
+
+    /**
+     * Get a base Support collection instance from this collection.
+     *
+     * @return \Tightenco\Collect\Support\Collection
+     */
+    public function toBase()
+    {
+        return new self($this);
+    }
+
+    /**
+     * Determine if an item exists at an offset.
+     *
+     * @param  mixed  $key
+     * @return bool
+     */
+    public function offsetExists($key)
+    {
+        return isset($this->items[$key]);
+    }
+
+    /**
+     * Get an item at a given offset.
+     *
+     * @param  mixed  $key
+     * @return mixed
+     */
+    public function offsetGet($key)
+    {
+        return $this->items[$key];
+    }
+
+    /**
+     * Set the item at a given offset.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $value
+     * @return void
+     */
+    public function offsetSet($key, $value)
+    {
+        if (is_null($key)) {
+            $this->items[] = $value;
+        } else {
+            $this->items[$key] = $value;
+        }
+    }
+
+    /**
+     * Unset the item at a given offset.
+     *
+     * @param  string  $key
+     * @return void
+     */
+    public function offsetUnset($key)
+    {
+        unset($this->items[$key]);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Enumerable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Enumerable.php
new file mode 100644
index 0000000..f189c45
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Enumerable.php
@@ -0,0 +1,1027 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+use Countable;
+use Tightenco\Collect\Contracts\Support\Arrayable;
+use Tightenco\Collect\Contracts\Support\Jsonable;
+use IteratorAggregate;
+use JsonSerializable;
+
+interface Enumerable extends Arrayable, Countable, IteratorAggregate, Jsonable, JsonSerializable
+{
+    /**
+     * Create a new collection instance if the value isn't one already.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public static function make($items = []);
+
+    /**
+     * Create a new instance by invoking the callback a given amount of times.
+     *
+     * @param  int  $number
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public static function times($number, callable $callback = null);
+
+    /**
+     * Create a collection with the given range.
+     *
+     * @param  int  $from
+     * @param  int  $to
+     * @return static
+     */
+    public static function range($from, $to);
+
+    /**
+     * Wrap the given value in a collection if applicable.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public static function wrap($value);
+
+    /**
+     * Get the underlying items from the given collection if applicable.
+     *
+     * @param  array|static  $value
+     * @return array
+     */
+    public static function unwrap($value);
+
+    /**
+     * Create a new instance with no items.
+     *
+     * @return static
+     */
+    public static function empty();
+
+    /**
+     * Get all items in the enumerable.
+     *
+     * @return array
+     */
+    public function all();
+
+    /**
+     * Alias for the "avg" method.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function average($callback = null);
+
+    /**
+     * Get the median of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return mixed
+     */
+    public function median($key = null);
+
+    /**
+     * Get the mode of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return array|null
+     */
+    public function mode($key = null);
+
+    /**
+     * Collapse the items into a single enumerable.
+     *
+     * @return static
+     */
+    public function collapse();
+
+    /**
+     * Alias for the "contains" method.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function some($key, $operator = null, $value = null);
+
+    /**
+     * Determine if an item exists, using strict comparison.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function containsStrict($key, $value = null);
+
+    /**
+     * Get the average value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function avg($callback = null);
+
+    /**
+     * Determine if an item exists in the enumerable.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function contains($key, $operator = null, $value = null);
+
+    /**
+     * Cross join with the given lists, returning all possible permutations.
+     *
+     * @param  mixed  ...$lists
+     * @return static
+     */
+    public function crossJoin(...$lists);
+
+    /**
+     * Dump the collection and end the script.
+     *
+     * @param  mixed  ...$args
+     * @return void
+     */
+    public function dd(...$args);
+
+    /**
+     * Dump the collection.
+     *
+     * @return $this
+     */
+    public function dump();
+
+    /**
+     * Get the items that are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diff($items);
+
+    /**
+     * Get the items that are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffUsing($items, callable $callback);
+
+    /**
+     * Get the items whose keys and values are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffAssoc($items);
+
+    /**
+     * Get the items whose keys and values are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffAssocUsing($items, callable $callback);
+
+    /**
+     * Get the items whose keys are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffKeys($items);
+
+    /**
+     * Get the items whose keys are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffKeysUsing($items, callable $callback);
+
+    /**
+     * Retrieve duplicate items.
+     *
+     * @param  callable|null  $callback
+     * @param  bool  $strict
+     * @return static
+     */
+    public function duplicates($callback = null, $strict = false);
+
+    /**
+     * Retrieve duplicate items using strict comparison.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function duplicatesStrict($callback = null);
+
+    /**
+     * Execute a callback over each item.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function each(callable $callback);
+
+    /**
+     * Execute a callback over each nested chunk of items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function eachSpread(callable $callback);
+
+    /**
+     * Determine if all items pass the given truth test.
+     *
+     * @param  string|callable  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function every($key, $operator = null, $value = null);
+
+    /**
+     * Get all items except for those with the specified keys.
+     *
+     * @param  mixed  $keys
+     * @return static
+     */
+    public function except($keys);
+
+    /**
+     * Run a filter over each of the items.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function filter(callable $callback = null);
+
+    /**
+     * Apply the callback if the value is truthy.
+     *
+     * @param  bool  $value
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function when($value, callable $callback, callable $default = null);
+
+    /**
+     * Apply the callback if the collection is empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function whenEmpty(callable $callback, callable $default = null);
+
+    /**
+     * Apply the callback if the collection is not empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function whenNotEmpty(callable $callback, callable $default = null);
+
+    /**
+     * Apply the callback if the value is falsy.
+     *
+     * @param  bool  $value
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unless($value, callable $callback, callable $default = null);
+
+    /**
+     * Apply the callback unless the collection is empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unlessEmpty(callable $callback, callable $default = null);
+
+    /**
+     * Apply the callback unless the collection is not empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unlessNotEmpty(callable $callback, callable $default = null);
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return static
+     */
+    public function where($key, $operator = null, $value = null);
+
+    /**
+     * Filter items where the value for the given key is null.
+     *
+     * @param  string|null  $key
+     * @return static
+     */
+    public function whereNull($key = null);
+
+    /**
+     * Filter items where the value for the given key is not null.
+     *
+     * @param  string|null  $key
+     * @return static
+     */
+    public function whereNotNull($key = null);
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return static
+     */
+    public function whereStrict($key, $value);
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @param  bool  $strict
+     * @return static
+     */
+    public function whereIn($key, $values, $strict = false);
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @return static
+     */
+    public function whereInStrict($key, $values);
+
+    /**
+     * Filter items such that the value of the given key is between the given values.
+     *
+     * @param  string  $key
+     * @param  array  $values
+     * @return static
+     */
+    public function whereBetween($key, $values);
+
+    /**
+     * Filter items such that the value of the given key is not between the given values.
+     *
+     * @param  string  $key
+     * @param  array  $values
+     * @return static
+     */
+    public function whereNotBetween($key, $values);
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @param  bool  $strict
+     * @return static
+     */
+    public function whereNotIn($key, $values, $strict = false);
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @return static
+     */
+    public function whereNotInStrict($key, $values);
+
+    /**
+     * Filter the items, removing any items that don't match the given type(s).
+     *
+     * @param  string|string[]  $type
+     * @return static
+     */
+    public function whereInstanceOf($type);
+
+    /**
+     * Get the first item from the enumerable passing the given truth test.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function first(callable $callback = null, $default = null);
+
+    /**
+     * Get the first item by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return mixed
+     */
+    public function firstWhere($key, $operator = null, $value = null);
+
+    /**
+     * Get a flattened array of the items in the collection.
+     *
+     * @param  int  $depth
+     * @return static
+     */
+    public function flatten($depth = INF);
+
+    /**
+     * Flip the values with their keys.
+     *
+     * @return static
+     */
+    public function flip();
+
+    /**
+     * Get an item from the collection by key.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function get($key, $default = null);
+
+    /**
+     * Group an associative array by a field or using a callback.
+     *
+     * @param  array|callable|string  $groupBy
+     * @param  bool  $preserveKeys
+     * @return static
+     */
+    public function groupBy($groupBy, $preserveKeys = false);
+
+    /**
+     * Key an associative array by a field or using a callback.
+     *
+     * @param  callable|string  $keyBy
+     * @return static
+     */
+    public function keyBy($keyBy);
+
+    /**
+     * Determine if an item exists in the collection by key.
+     *
+     * @param  mixed  $key
+     * @return bool
+     */
+    public function has($key);
+
+    /**
+     * Concatenate values of a given key as a string.
+     *
+     * @param  string  $value
+     * @param  string|null  $glue
+     * @return string
+     */
+    public function implode($value, $glue = null);
+
+    /**
+     * Intersect the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersect($items);
+
+    /**
+     * Intersect the collection with the given items by key.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersectByKeys($items);
+
+    /**
+     * Determine if the collection is empty or not.
+     *
+     * @return bool
+     */
+    public function isEmpty();
+
+    /**
+     * Determine if the collection is not empty.
+     *
+     * @return bool
+     */
+    public function isNotEmpty();
+
+    /**
+     * Join all items from the collection using a string. The final items can use a separate glue string.
+     *
+     * @param  string  $glue
+     * @param  string  $finalGlue
+     * @return string
+     */
+    public function join($glue, $finalGlue = '');
+
+    /**
+     * Get the keys of the collection items.
+     *
+     * @return static
+     */
+    public function keys();
+
+    /**
+     * Get the last item from the collection.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function last(callable $callback = null, $default = null);
+
+    /**
+     * Run a map over each of the items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function map(callable $callback);
+
+    /**
+     * Run a map over each nested chunk of items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapSpread(callable $callback);
+
+    /**
+     * Run a dictionary map over the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapToDictionary(callable $callback);
+
+    /**
+     * Run a grouping map over the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapToGroups(callable $callback);
+
+    /**
+     * Run an associative map over each of the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapWithKeys(callable $callback);
+
+    /**
+     * Map a collection and flatten the result by a single level.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function flatMap(callable $callback);
+
+    /**
+     * Map the values into a new class.
+     *
+     * @param  string  $class
+     * @return static
+     */
+    public function mapInto($class);
+
+    /**
+     * Merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function merge($items);
+
+    /**
+     * Recursively merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function mergeRecursive($items);
+
+    /**
+     * Create a collection by using this collection for keys and another for its values.
+     *
+     * @param  mixed  $values
+     * @return static
+     */
+    public function combine($values);
+
+    /**
+     * Union the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function union($items);
+
+    /**
+     * Get the min value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function min($callback = null);
+
+    /**
+     * Get the max value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function max($callback = null);
+
+    /**
+     * Create a new collection consisting of every n-th element.
+     *
+     * @param  int  $step
+     * @param  int  $offset
+     * @return static
+     */
+    public function nth($step, $offset = 0);
+
+    /**
+     * Get the items with the specified keys.
+     *
+     * @param  mixed  $keys
+     * @return static
+     */
+    public function only($keys);
+
+    /**
+     * "Paginate" the collection by slicing it into a smaller collection.
+     *
+     * @param  int  $page
+     * @param  int  $perPage
+     * @return static
+     */
+    public function forPage($page, $perPage);
+
+    /**
+     * Partition the collection into two arrays using the given callback or key.
+     *
+     * @param  callable|string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return static
+     */
+    public function partition($key, $operator = null, $value = null);
+
+    /**
+     * Push all of the given items onto the collection.
+     *
+     * @param  iterable  $source
+     * @return static
+     */
+    public function concat($source);
+
+    /**
+     * Get one or a specified number of items randomly from the collection.
+     *
+     * @param  int|null  $number
+     * @return static|mixed
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function random($number = null);
+
+    /**
+     * Reduce the collection to a single value.
+     *
+     * @param  callable  $callback
+     * @param  mixed  $initial
+     * @return mixed
+     */
+    public function reduce(callable $callback, $initial = null);
+
+    /**
+     * Replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replace($items);
+
+    /**
+     * Recursively replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replaceRecursive($items);
+
+    /**
+     * Reverse items order.
+     *
+     * @return static
+     */
+    public function reverse();
+
+    /**
+     * Search the collection for a given value and return the corresponding key if successful.
+     *
+     * @param  mixed  $value
+     * @param  bool  $strict
+     * @return mixed
+     */
+    public function search($value, $strict = false);
+
+    /**
+     * Shuffle the items in the collection.
+     *
+     * @param  int|null  $seed
+     * @return static
+     */
+    public function shuffle($seed = null);
+
+    /**
+     * Skip the first {$count} items.
+     *
+     * @param  int  $count
+     * @return static
+     */
+    public function skip($count);
+
+    /**
+     * Skip items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipUntil($value);
+
+    /**
+     * Skip items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipWhile($value);
+
+    /**
+     * Get a slice of items from the enumerable.
+     *
+     * @param  int  $offset
+     * @param  int|null  $length
+     * @return static
+     */
+    public function slice($offset, $length = null);
+
+    /**
+     * Split a collection into a certain number of groups.
+     *
+     * @param  int  $numberOfGroups
+     * @return static
+     */
+    public function split($numberOfGroups);
+
+    /**
+     * Chunk the collection into chunks of the given size.
+     *
+     * @param  int  $size
+     * @return static
+     */
+    public function chunk($size);
+
+    /**
+     * Chunk the collection into chunks with a callback.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function chunkWhile(callable $callback);
+
+    /**
+     * Sort through each item with a callback.
+     *
+     * @param  callable|null|int  $callback
+     * @return static
+     */
+    public function sort($callback = null);
+
+    /**
+     * Sort items in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortDesc($options = SORT_REGULAR);
+
+    /**
+     * Sort the collection using the given callback.
+     *
+     * @param  callable|string  $callback
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortBy($callback, $options = SORT_REGULAR, $descending = false);
+
+    /**
+     * Sort the collection in descending order using the given callback.
+     *
+     * @param  callable|string  $callback
+     * @param  int  $options
+     * @return static
+     */
+    public function sortByDesc($callback, $options = SORT_REGULAR);
+
+    /**
+     * Sort the collection keys.
+     *
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortKeys($options = SORT_REGULAR, $descending = false);
+
+    /**
+     * Sort the collection keys in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortKeysDesc($options = SORT_REGULAR);
+
+    /**
+     * Get the sum of the given values.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function sum($callback = null);
+
+    /**
+     * Take the first or last {$limit} items.
+     *
+     * @param  int  $limit
+     * @return static
+     */
+    public function take($limit);
+
+    /**
+     * Take items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeUntil($value);
+
+    /**
+     * Take items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeWhile($value);
+
+    /**
+     * Pass the collection to the given callback and then return it.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function tap(callable $callback);
+
+    /**
+     * Pass the enumerable to the given callback and return the result.
+     *
+     * @param  callable  $callback
+     * @return mixed
+     */
+    public function pipe(callable $callback);
+
+    /**
+     * Get the values of a given key.
+     *
+     * @param  string|array  $value
+     * @param  string|null  $key
+     * @return static
+     */
+    public function pluck($value, $key = null);
+
+    /**
+     * Create a collection of all elements that do not pass a given truth test.
+     *
+     * @param  callable|mixed  $callback
+     * @return static
+     */
+    public function reject($callback = true);
+
+    /**
+     * Return only unique items from the collection array.
+     *
+     * @param  string|callable|null  $key
+     * @param  bool  $strict
+     * @return static
+     */
+    public function unique($key = null, $strict = false);
+
+    /**
+     * Return only unique items from the collection array using strict comparison.
+     *
+     * @param  string|callable|null  $key
+     * @return static
+     */
+    public function uniqueStrict($key = null);
+
+    /**
+     * Reset the keys on the underlying array.
+     *
+     * @return static
+     */
+    public function values();
+
+    /**
+     * Pad collection to the specified length with a value.
+     *
+     * @param  int  $size
+     * @param  mixed  $value
+     * @return static
+     */
+    public function pad($size, $value);
+
+    /**
+     * Count the number of items in the collection using a given truth test.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function countBy($callback = null);
+
+    /**
+     * Zip the collection together with one or more arrays.
+     *
+     * e.g. new Collection([1, 2, 3])->zip([4, 5, 6]);
+     *      => [[1, 4], [2, 5], [3, 6]]
+     *
+     * @param  mixed  ...$items
+     * @return static
+     */
+    public function zip($items);
+
+    /**
+     * Collect the values into a collection.
+     *
+     * @return \Tightenco\Collect\Support\Collection
+     */
+    public function collect();
+
+    /**
+     * Convert the collection to its string representation.
+     *
+     * @return string
+     */
+    public function __toString();
+
+    /**
+     * Add a method to the list of proxied methods.
+     *
+     * @param  string  $method
+     * @return void
+     */
+    public static function proxy($method);
+
+    /**
+     * Dynamically access collection proxies.
+     *
+     * @param  string  $key
+     * @return mixed
+     *
+     * @throws \Exception
+     */
+    public function __get($key);
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderCollectionProxy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderCollectionProxy.php
new file mode 100644
index 0000000..01ac43f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderCollectionProxy.php
@@ -0,0 +1,63 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+/**
+ * @mixin \Tightenco\Collect\Support\Enumerable
+ */
+class HigherOrderCollectionProxy
+{
+    /**
+     * The collection being operated on.
+     *
+     * @var \Tightenco\Collect\Support\Enumerable
+     */
+    protected $collection;
+
+    /**
+     * The method being proxied.
+     *
+     * @var string
+     */
+    protected $method;
+
+    /**
+     * Create a new proxy instance.
+     *
+     * @param  \Tightenco\Collect\Support\Enumerable  $collection
+     * @param  string  $method
+     * @return void
+     */
+    public function __construct(Enumerable $collection, $method)
+    {
+        $this->method = $method;
+        $this->collection = $collection;
+    }
+
+    /**
+     * Proxy accessing an attribute onto the collection items.
+     *
+     * @param  string  $key
+     * @return mixed
+     */
+    public function __get($key)
+    {
+        return $this->collection->{$this->method}(function ($value) use ($key) {
+            return is_array($value) ? $value[$key] : $value->{$key};
+        });
+    }
+
+    /**
+     * Proxy a method call onto the collection items.
+     *
+     * @param  string  $method
+     * @param  array  $parameters
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        return $this->collection->{$this->method}(function ($value) use ($method, $parameters) {
+            return $value->{$method}(...$parameters);
+        });
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderWhenProxy.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderWhenProxy.php
new file mode 100644
index 0000000..ea48c7c
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/HigherOrderWhenProxy.php
@@ -0,0 +1,63 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+/**
+ * @mixin \Tightenco\Collect\Support\Enumerable
+ */
+class HigherOrderWhenProxy
+{
+    /**
+     * The collection being operated on.
+     *
+     * @var \Tightenco\Collect\Support\Enumerable
+     */
+    protected $collection;
+
+    /**
+     * The condition for proxying.
+     *
+     * @var bool
+     */
+    protected $condition;
+
+    /**
+     * Create a new proxy instance.
+     *
+     * @param  \Tightenco\Collect\Support\Enumerable  $collection
+     * @param  bool  $condition
+     * @return void
+     */
+    public function __construct(Enumerable $collection, $condition)
+    {
+        $this->condition = $condition;
+        $this->collection = $collection;
+    }
+
+    /**
+     * Proxy accessing an attribute onto the collection.
+     *
+     * @param  string  $key
+     * @return mixed
+     */
+    public function __get($key)
+    {
+        return $this->condition
+            ? $this->collection->{$key}
+            : $this->collection;
+    }
+
+    /**
+     * Proxy a method call onto the collection.
+     *
+     * @param  string  $method
+     * @param  array  $parameters
+     * @return mixed
+     */
+    public function __call($method, $parameters)
+    {
+        return $this->condition
+            ? $this->collection->{$method}(...$parameters)
+            : $this->collection;
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/LazyCollection.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/LazyCollection.php
new file mode 100644
index 0000000..da73cb2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/LazyCollection.php
@@ -0,0 +1,1417 @@
+<?php
+
+namespace Tightenco\Collect\Support;
+
+use ArrayIterator;
+use Closure;
+use DateTimeInterface;
+use Tightenco\Collect\Support\Traits\EnumeratesValues;
+use Tightenco\Collect\Support\Traits\Macroable;
+use IteratorAggregate;
+use stdClass;
+
+class LazyCollection implements Enumerable
+{
+    use EnumeratesValues, Macroable;
+
+    /**
+     * The source from which to generate items.
+     *
+     * @var callable|static
+     */
+    public $source;
+
+    /**
+     * Create a new lazy collection instance.
+     *
+     * @param  mixed  $source
+     * @return void
+     */
+    public function __construct($source = null)
+    {
+        if ($source instanceof Closure || $source instanceof self) {
+            $this->source = $source;
+        } elseif (is_null($source)) {
+            $this->source = static::empty();
+        } else {
+            $this->source = $this->getArrayableItems($source);
+        }
+    }
+
+    /**
+     * Create a collection with the given range.
+     *
+     * @param  int  $from
+     * @param  int  $to
+     * @return static
+     */
+    public static function range($from, $to)
+    {
+        return new static(function () use ($from, $to) {
+            if ($from <= $to) {
+                for (; $from <= $to; $from++) {
+                    yield $from;
+                }
+            } else {
+                for (; $from >= $to; $from--) {
+                    yield $from;
+                }
+            }
+        });
+    }
+
+    /**
+     * Get all items in the enumerable.
+     *
+     * @return array
+     */
+    public function all()
+    {
+        if (is_array($this->source)) {
+            return $this->source;
+        }
+
+        return iterator_to_array($this->getIterator());
+    }
+
+    /**
+     * Eager load all items into a new lazy collection backed by an array.
+     *
+     * @return static
+     */
+    public function eager()
+    {
+        return new static($this->all());
+    }
+
+    /**
+     * Cache values as they're enumerated.
+     *
+     * @return static
+     */
+    public function remember()
+    {
+        $iterator = $this->getIterator();
+
+        $iteratorIndex = 0;
+
+        $cache = [];
+
+        return new static(function () use ($iterator, &$iteratorIndex, &$cache) {
+            for ($index = 0; true; $index++) {
+                if (array_key_exists($index, $cache)) {
+                    yield $cache[$index][0] => $cache[$index][1];
+
+                    continue;
+                }
+
+                if ($iteratorIndex < $index) {
+                    $iterator->next();
+
+                    $iteratorIndex++;
+                }
+
+                if (! $iterator->valid()) {
+                    break;
+                }
+
+                $cache[$index] = [$iterator->key(), $iterator->current()];
+
+                yield $cache[$index][0] => $cache[$index][1];
+            }
+        });
+    }
+
+    /**
+     * Get the average value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function avg($callback = null)
+    {
+        return $this->collect()->avg($callback);
+    }
+
+    /**
+     * Get the median of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return mixed
+     */
+    public function median($key = null)
+    {
+        return $this->collect()->median($key);
+    }
+
+    /**
+     * Get the mode of a given key.
+     *
+     * @param  string|array|null  $key
+     * @return array|null
+     */
+    public function mode($key = null)
+    {
+        return $this->collect()->mode($key);
+    }
+
+    /**
+     * Collapse the collection of items into a single array.
+     *
+     * @return static
+     */
+    public function collapse()
+    {
+        return new static(function () {
+            foreach ($this as $values) {
+                if (is_array($values) || $values instanceof Enumerable) {
+                    foreach ($values as $value) {
+                        yield $value;
+                    }
+                }
+            }
+        });
+    }
+
+    /**
+     * Determine if an item exists in the enumerable.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function contains($key, $operator = null, $value = null)
+    {
+        if (func_num_args() === 1 && $this->useAsCallable($key)) {
+            $placeholder = new stdClass;
+
+            return $this->first($key, $placeholder) !== $placeholder;
+        }
+
+        if (func_num_args() === 1) {
+            $needle = $key;
+
+            foreach ($this as $value) {
+                if ($value == $needle) {
+                    return true;
+                }
+            }
+
+            return false;
+        }
+
+        return $this->contains($this->operatorForWhere(...func_get_args()));
+    }
+
+    /**
+     * Cross join the given iterables, returning all possible permutations.
+     *
+     * @param  array  ...$arrays
+     * @return static
+     */
+    public function crossJoin(...$arrays)
+    {
+        return $this->passthru('crossJoin', func_get_args());
+    }
+
+    /**
+     * Count the number of items in the collection by a field or using a callback.
+     *
+     * @param  callable|string  $countBy
+     * @return static
+     */
+    public function countBy($countBy = null)
+    {
+        $countBy = is_null($countBy)
+            ? $this->identity()
+            : $this->valueRetriever($countBy);
+
+        return new static(function () use ($countBy) {
+            $counts = [];
+
+            foreach ($this as $key => $value) {
+                $group = $countBy($value, $key);
+
+                if (empty($counts[$group])) {
+                    $counts[$group] = 0;
+                }
+
+                $counts[$group]++;
+            }
+
+            yield from $counts;
+        });
+    }
+
+    /**
+     * Get the items that are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diff($items)
+    {
+        return $this->passthru('diff', func_get_args());
+    }
+
+    /**
+     * Get the items that are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffUsing($items, callable $callback)
+    {
+        return $this->passthru('diffUsing', func_get_args());
+    }
+
+    /**
+     * Get the items whose keys and values are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffAssoc($items)
+    {
+        return $this->passthru('diffAssoc', func_get_args());
+    }
+
+    /**
+     * Get the items whose keys and values are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffAssocUsing($items, callable $callback)
+    {
+        return $this->passthru('diffAssocUsing', func_get_args());
+    }
+
+    /**
+     * Get the items whose keys are not present in the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function diffKeys($items)
+    {
+        return $this->passthru('diffKeys', func_get_args());
+    }
+
+    /**
+     * Get the items whose keys are not present in the given items, using the callback.
+     *
+     * @param  mixed  $items
+     * @param  callable  $callback
+     * @return static
+     */
+    public function diffKeysUsing($items, callable $callback)
+    {
+        return $this->passthru('diffKeysUsing', func_get_args());
+    }
+
+    /**
+     * Retrieve duplicate items.
+     *
+     * @param  callable|null  $callback
+     * @param  bool  $strict
+     * @return static
+     */
+    public function duplicates($callback = null, $strict = false)
+    {
+        return $this->passthru('duplicates', func_get_args());
+    }
+
+    /**
+     * Retrieve duplicate items using strict comparison.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function duplicatesStrict($callback = null)
+    {
+        return $this->passthru('duplicatesStrict', func_get_args());
+    }
+
+    /**
+     * Get all items except for those with the specified keys.
+     *
+     * @param  mixed  $keys
+     * @return static
+     */
+    public function except($keys)
+    {
+        return $this->passthru('except', func_get_args());
+    }
+
+    /**
+     * Run a filter over each of the items.
+     *
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public function filter(callable $callback = null)
+    {
+        if (is_null($callback)) {
+            $callback = function ($value) {
+                return (bool) $value;
+            };
+        }
+
+        return new static(function () use ($callback) {
+            foreach ($this as $key => $value) {
+                if ($callback($value, $key)) {
+                    yield $key => $value;
+                }
+            }
+        });
+    }
+
+    /**
+     * Get the first item from the enumerable passing the given truth test.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function first(callable $callback = null, $default = null)
+    {
+        $iterator = $this->getIterator();
+
+        if (is_null($callback)) {
+            if (! $iterator->valid()) {
+                return value($default);
+            }
+
+            return $iterator->current();
+        }
+
+        foreach ($iterator as $key => $value) {
+            if ($callback($value, $key)) {
+                return $value;
+            }
+        }
+
+        return value($default);
+    }
+
+    /**
+     * Get a flattened list of the items in the collection.
+     *
+     * @param  int  $depth
+     * @return static
+     */
+    public function flatten($depth = INF)
+    {
+        $instance = new static(function () use ($depth) {
+            foreach ($this as $item) {
+                if (! is_array($item) && ! $item instanceof Enumerable) {
+                    yield $item;
+                } elseif ($depth === 1) {
+                    yield from $item;
+                } else {
+                    yield from (new static($item))->flatten($depth - 1);
+                }
+            }
+        });
+
+        return $instance->values();
+    }
+
+    /**
+     * Flip the items in the collection.
+     *
+     * @return static
+     */
+    public function flip()
+    {
+        return new static(function () {
+            foreach ($this as $key => $value) {
+                yield $value => $key;
+            }
+        });
+    }
+
+    /**
+     * Get an item by key.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function get($key, $default = null)
+    {
+        if (is_null($key)) {
+            return;
+        }
+
+        foreach ($this as $outerKey => $outerValue) {
+            if ($outerKey == $key) {
+                return $outerValue;
+            }
+        }
+
+        return value($default);
+    }
+
+    /**
+     * Group an associative array by a field or using a callback.
+     *
+     * @param  array|callable|string  $groupBy
+     * @param  bool  $preserveKeys
+     * @return static
+     */
+    public function groupBy($groupBy, $preserveKeys = false)
+    {
+        return $this->passthru('groupBy', func_get_args());
+    }
+
+    /**
+     * Key an associative array by a field or using a callback.
+     *
+     * @param  callable|string  $keyBy
+     * @return static
+     */
+    public function keyBy($keyBy)
+    {
+        return new static(function () use ($keyBy) {
+            $keyBy = $this->valueRetriever($keyBy);
+
+            foreach ($this as $key => $item) {
+                $resolvedKey = $keyBy($item, $key);
+
+                if (is_object($resolvedKey)) {
+                    $resolvedKey = (string) $resolvedKey;
+                }
+
+                yield $resolvedKey => $item;
+            }
+        });
+    }
+
+    /**
+     * Determine if an item exists in the collection by key.
+     *
+     * @param  mixed  $key
+     * @return bool
+     */
+    public function has($key)
+    {
+        $keys = array_flip(is_array($key) ? $key : func_get_args());
+        $count = count($keys);
+
+        foreach ($this as $key => $value) {
+            if (array_key_exists($key, $keys) && --$count == 0) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Concatenate values of a given key as a string.
+     *
+     * @param  string  $value
+     * @param  string|null  $glue
+     * @return string
+     */
+    public function implode($value, $glue = null)
+    {
+        return $this->collect()->implode(...func_get_args());
+    }
+
+    /**
+     * Intersect the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersect($items)
+    {
+        return $this->passthru('intersect', func_get_args());
+    }
+
+    /**
+     * Intersect the collection with the given items by key.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function intersectByKeys($items)
+    {
+        return $this->passthru('intersectByKeys', func_get_args());
+    }
+
+    /**
+     * Determine if the items are empty or not.
+     *
+     * @return bool
+     */
+    public function isEmpty()
+    {
+        return ! $this->getIterator()->valid();
+    }
+
+    /**
+     * Determine if the collection contains a single item.
+     *
+     * @return bool
+     */
+    public function containsOneItem()
+    {
+        return $this->take(2)->count() === 1;
+    }
+
+    /**
+     * Join all items from the collection using a string. The final items can use a separate glue string.
+     *
+     * @param  string  $glue
+     * @param  string  $finalGlue
+     * @return string
+     */
+    public function join($glue, $finalGlue = '')
+    {
+        return $this->collect()->join(...func_get_args());
+    }
+
+    /**
+     * Get the keys of the collection items.
+     *
+     * @return static
+     */
+    public function keys()
+    {
+        return new static(function () {
+            foreach ($this as $key => $value) {
+                yield $key;
+            }
+        });
+    }
+
+    /**
+     * Get the last item from the collection.
+     *
+     * @param  callable|null  $callback
+     * @param  mixed  $default
+     * @return mixed
+     */
+    public function last(callable $callback = null, $default = null)
+    {
+        $needle = $placeholder = new stdClass;
+
+        foreach ($this as $key => $value) {
+            if (is_null($callback) || $callback($value, $key)) {
+                $needle = $value;
+            }
+        }
+
+        return $needle === $placeholder ? value($default) : $needle;
+    }
+
+    /**
+     * Get the values of a given key.
+     *
+     * @param  string|array  $value
+     * @param  string|null  $key
+     * @return static
+     */
+    public function pluck($value, $key = null)
+    {
+        return new static(function () use ($value, $key) {
+            [$value, $key] = $this->explodePluckParameters($value, $key);
+
+            foreach ($this as $item) {
+                $itemValue = data_get($item, $value);
+
+                if (is_null($key)) {
+                    yield $itemValue;
+                } else {
+                    $itemKey = data_get($item, $key);
+
+                    if (is_object($itemKey) && method_exists($itemKey, '__toString')) {
+                        $itemKey = (string) $itemKey;
+                    }
+
+                    yield $itemKey => $itemValue;
+                }
+            }
+        });
+    }
+
+    /**
+     * Run a map over each of the items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function map(callable $callback)
+    {
+        return new static(function () use ($callback) {
+            foreach ($this as $key => $value) {
+                yield $key => $callback($value, $key);
+            }
+        });
+    }
+
+    /**
+     * Run a dictionary map over the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapToDictionary(callable $callback)
+    {
+        return $this->passthru('mapToDictionary', func_get_args());
+    }
+
+    /**
+     * Run an associative map over each of the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapWithKeys(callable $callback)
+    {
+        return new static(function () use ($callback) {
+            foreach ($this as $key => $value) {
+                yield from $callback($value, $key);
+            }
+        });
+    }
+
+    /**
+     * Merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function merge($items)
+    {
+        return $this->passthru('merge', func_get_args());
+    }
+
+    /**
+     * Recursively merge the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function mergeRecursive($items)
+    {
+        return $this->passthru('mergeRecursive', func_get_args());
+    }
+
+    /**
+     * Create a collection by using this collection for keys and another for its values.
+     *
+     * @param  mixed  $values
+     * @return static
+     */
+    public function combine($values)
+    {
+        return new static(function () use ($values) {
+            $values = $this->makeIterator($values);
+
+            $errorMessage = 'Both parameters should have an equal number of elements';
+
+            foreach ($this as $key) {
+                if (! $values->valid()) {
+                    trigger_error($errorMessage, E_USER_WARNING);
+
+                    break;
+                }
+
+                yield $key => $values->current();
+
+                $values->next();
+            }
+
+            if ($values->valid()) {
+                trigger_error($errorMessage, E_USER_WARNING);
+            }
+        });
+    }
+
+    /**
+     * Union the collection with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function union($items)
+    {
+        return $this->passthru('union', func_get_args());
+    }
+
+    /**
+     * Create a new collection consisting of every n-th element.
+     *
+     * @param  int  $step
+     * @param  int  $offset
+     * @return static
+     */
+    public function nth($step, $offset = 0)
+    {
+        return new static(function () use ($step, $offset) {
+            $position = 0;
+
+            foreach ($this as $item) {
+                if ($position % $step === $offset) {
+                    yield $item;
+                }
+
+                $position++;
+            }
+        });
+    }
+
+    /**
+     * Get the items with the specified keys.
+     *
+     * @param  mixed  $keys
+     * @return static
+     */
+    public function only($keys)
+    {
+        if ($keys instanceof Enumerable) {
+            $keys = $keys->all();
+        } elseif (! is_null($keys)) {
+            $keys = is_array($keys) ? $keys : func_get_args();
+        }
+
+        return new static(function () use ($keys) {
+            if (is_null($keys)) {
+                yield from $this;
+            } else {
+                $keys = array_flip($keys);
+
+                foreach ($this as $key => $value) {
+                    if (array_key_exists($key, $keys)) {
+                        yield $key => $value;
+
+                        unset($keys[$key]);
+
+                        if (empty($keys)) {
+                            break;
+                        }
+                    }
+                }
+            }
+        });
+    }
+
+    /**
+     * Push all of the given items onto the collection.
+     *
+     * @param  iterable  $source
+     * @return static
+     */
+    public function concat($source)
+    {
+        return (new static(function () use ($source) {
+            yield from $this;
+            yield from $source;
+        }))->values();
+    }
+
+    /**
+     * Get one or a specified number of items randomly from the collection.
+     *
+     * @param  int|null  $number
+     * @return static|mixed
+     *
+     * @throws \InvalidArgumentException
+     */
+    public function random($number = null)
+    {
+        $result = $this->collect()->random(...func_get_args());
+
+        return is_null($number) ? $result : new static($result);
+    }
+
+    /**
+     * Replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replace($items)
+    {
+        return new static(function () use ($items) {
+            $items = $this->getArrayableItems($items);
+
+            foreach ($this as $key => $value) {
+                if (array_key_exists($key, $items)) {
+                    yield $key => $items[$key];
+
+                    unset($items[$key]);
+                } else {
+                    yield $key => $value;
+                }
+            }
+
+            foreach ($items as $key => $value) {
+                yield $key => $value;
+            }
+        });
+    }
+
+    /**
+     * Recursively replace the collection items with the given items.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public function replaceRecursive($items)
+    {
+        return $this->passthru('replaceRecursive', func_get_args());
+    }
+
+    /**
+     * Reverse items order.
+     *
+     * @return static
+     */
+    public function reverse()
+    {
+        return $this->passthru('reverse', func_get_args());
+    }
+
+    /**
+     * Search the collection for a given value and return the corresponding key if successful.
+     *
+     * @param  mixed  $value
+     * @param  bool  $strict
+     * @return mixed
+     */
+    public function search($value, $strict = false)
+    {
+        $predicate = $this->useAsCallable($value)
+            ? $value
+            : function ($item) use ($value, $strict) {
+                return $strict ? $item === $value : $item == $value;
+            };
+
+        foreach ($this as $key => $item) {
+            if ($predicate($item, $key)) {
+                return $key;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Shuffle the items in the collection.
+     *
+     * @param  int|null  $seed
+     * @return static
+     */
+    public function shuffle($seed = null)
+    {
+        return $this->passthru('shuffle', func_get_args());
+    }
+
+    /**
+     * Skip the first {$count} items.
+     *
+     * @param  int  $count
+     * @return static
+     */
+    public function skip($count)
+    {
+        return new static(function () use ($count) {
+            $iterator = $this->getIterator();
+
+            while ($iterator->valid() && $count--) {
+                $iterator->next();
+            }
+
+            while ($iterator->valid()) {
+                yield $iterator->key() => $iterator->current();
+
+                $iterator->next();
+            }
+        });
+    }
+
+    /**
+     * Skip items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipUntil($value)
+    {
+        $callback = $this->useAsCallable($value) ? $value : $this->equality($value);
+
+        return $this->skipWhile($this->negate($callback));
+    }
+
+    /**
+     * Skip items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function skipWhile($value)
+    {
+        $callback = $this->useAsCallable($value) ? $value : $this->equality($value);
+
+        return new static(function () use ($callback) {
+            $iterator = $this->getIterator();
+
+            while ($iterator->valid() && $callback($iterator->current(), $iterator->key())) {
+                $iterator->next();
+            }
+
+            while ($iterator->valid()) {
+                yield $iterator->key() => $iterator->current();
+
+                $iterator->next();
+            }
+        });
+    }
+
+    /**
+     * Get a slice of items from the enumerable.
+     *
+     * @param  int  $offset
+     * @param  int|null  $length
+     * @return static
+     */
+    public function slice($offset, $length = null)
+    {
+        if ($offset < 0 || $length < 0) {
+            return $this->passthru('slice', func_get_args());
+        }
+
+        $instance = $this->skip($offset);
+
+        return is_null($length) ? $instance : $instance->take($length);
+    }
+
+    /**
+     * Split a collection into a certain number of groups.
+     *
+     * @param  int  $numberOfGroups
+     * @return static
+     */
+    public function split($numberOfGroups)
+    {
+        return $this->passthru('split', func_get_args());
+    }
+
+    /**
+     * Chunk the collection into chunks of the given size.
+     *
+     * @param  int  $size
+     * @return static
+     */
+    public function chunk($size)
+    {
+        if ($size <= 0) {
+            return static::empty();
+        }
+
+        return new static(function () use ($size) {
+            $iterator = $this->getIterator();
+
+            while ($iterator->valid()) {
+                $chunk = [];
+
+                while (true) {
+                    $chunk[$iterator->key()] = $iterator->current();
+
+                    if (count($chunk) < $size) {
+                        $iterator->next();
+
+                        if (! $iterator->valid()) {
+                            break;
+                        }
+                    } else {
+                        break;
+                    }
+                }
+
+                yield new static($chunk);
+
+                $iterator->next();
+            }
+        });
+    }
+
+    /**
+     * Split a collection into a certain number of groups, and fill the first groups completely.
+     *
+     * @param  int  $numberOfGroups
+     * @return static
+     */
+    public function splitIn($numberOfGroups)
+    {
+        return $this->chunk(ceil($this->count() / $numberOfGroups));
+    }
+
+    /**
+     * Chunk the collection into chunks with a callback.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function chunkWhile(callable $callback)
+    {
+        return new static(function () use ($callback) {
+            $iterator = $this->getIterator();
+
+            $chunk = new Collection;
+
+            if ($iterator->valid()) {
+                $chunk[$iterator->key()] = $iterator->current();
+
+                $iterator->next();
+            }
+
+            while ($iterator->valid()) {
+                if (! $callback($iterator->current(), $iterator->key(), $chunk)) {
+                    yield new static($chunk);
+
+                    $chunk = new Collection;
+                }
+
+                $chunk[$iterator->key()] = $iterator->current();
+
+                $iterator->next();
+            }
+
+            if ($chunk->isNotEmpty()) {
+                yield new static($chunk);
+            }
+        });
+    }
+
+    /**
+     * Sort through each item with a callback.
+     *
+     * @param  callable|null|int  $callback
+     * @return static
+     */
+    public function sort($callback = null)
+    {
+        return $this->passthru('sort', func_get_args());
+    }
+
+    /**
+     * Sort items in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortDesc($options = SORT_REGULAR)
+    {
+        return $this->passthru('sortDesc', func_get_args());
+    }
+
+    /**
+     * Sort the collection using the given callback.
+     *
+     * @param  callable|string  $callback
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortBy($callback, $options = SORT_REGULAR, $descending = false)
+    {
+        return $this->passthru('sortBy', func_get_args());
+    }
+
+    /**
+     * Sort the collection in descending order using the given callback.
+     *
+     * @param  callable|string  $callback
+     * @param  int  $options
+     * @return static
+     */
+    public function sortByDesc($callback, $options = SORT_REGULAR)
+    {
+        return $this->passthru('sortByDesc', func_get_args());
+    }
+
+    /**
+     * Sort the collection keys.
+     *
+     * @param  int  $options
+     * @param  bool  $descending
+     * @return static
+     */
+    public function sortKeys($options = SORT_REGULAR, $descending = false)
+    {
+        return $this->passthru('sortKeys', func_get_args());
+    }
+
+    /**
+     * Sort the collection keys in descending order.
+     *
+     * @param  int  $options
+     * @return static
+     */
+    public function sortKeysDesc($options = SORT_REGULAR)
+    {
+        return $this->passthru('sortKeysDesc', func_get_args());
+    }
+
+    /**
+     * Take the first or last {$limit} items.
+     *
+     * @param  int  $limit
+     * @return static
+     */
+    public function take($limit)
+    {
+        if ($limit < 0) {
+            return $this->passthru('take', func_get_args());
+        }
+
+        return new static(function () use ($limit) {
+            $iterator = $this->getIterator();
+
+            while ($limit--) {
+                if (! $iterator->valid()) {
+                    break;
+                }
+
+                yield $iterator->key() => $iterator->current();
+
+                if ($limit) {
+                    $iterator->next();
+                }
+            }
+        });
+    }
+
+    /**
+     * Take items in the collection until the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeUntil($value)
+    {
+        $callback = $this->useAsCallable($value) ? $value : $this->equality($value);
+
+        return new static(function () use ($callback) {
+            foreach ($this as $key => $item) {
+                if ($callback($item, $key)) {
+                    break;
+                }
+
+                yield $key => $item;
+            }
+        });
+    }
+
+    /**
+     * Take items in the collection until a given point in time.
+     *
+     * @param  \DateTimeInterface  $timeout
+     * @return static
+     */
+    public function takeUntilTimeout(DateTimeInterface $timeout)
+    {
+        $timeout = $timeout->getTimestamp();
+
+        return $this->takeWhile(function () use ($timeout) {
+            return $this->now() < $timeout;
+        });
+    }
+
+    /**
+     * Take items in the collection while the given condition is met.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public function takeWhile($value)
+    {
+        $callback = $this->useAsCallable($value) ? $value : $this->equality($value);
+
+        return $this->takeUntil(function ($item, $key) use ($callback) {
+            return ! $callback($item, $key);
+        });
+    }
+
+    /**
+     * Pass each item in the collection to the given callback, lazily.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function tapEach(callable $callback)
+    {
+        return new static(function () use ($callback) {
+            foreach ($this as $key => $value) {
+                $callback($value, $key);
+
+                yield $key => $value;
+            }
+        });
+    }
+
+    /**
+     * Reset the keys on the underlying array.
+     *
+     * @return static
+     */
+    public function values()
+    {
+        return new static(function () {
+            foreach ($this as $item) {
+                yield $item;
+            }
+        });
+    }
+
+    /**
+     * Zip the collection together with one or more arrays.
+     *
+     * e.g. new LazyCollection([1, 2, 3])->zip([4, 5, 6]);
+     *      => [[1, 4], [2, 5], [3, 6]]
+     *
+     * @param  mixed  ...$items
+     * @return static
+     */
+    public function zip($items)
+    {
+        $iterables = func_get_args();
+
+        return new static(function () use ($iterables) {
+            $iterators = Collection::make($iterables)->map(function ($iterable) {
+                return $this->makeIterator($iterable);
+            })->prepend($this->getIterator());
+
+            while ($iterators->contains->valid()) {
+                yield new static($iterators->map->current());
+
+                $iterators->each->next();
+            }
+        });
+    }
+
+    /**
+     * Pad collection to the specified length with a value.
+     *
+     * @param  int  $size
+     * @param  mixed  $value
+     * @return static
+     */
+    public function pad($size, $value)
+    {
+        if ($size < 0) {
+            return $this->passthru('pad', func_get_args());
+        }
+
+        return new static(function () use ($size, $value) {
+            $yielded = 0;
+
+            foreach ($this as $index => $item) {
+                yield $index => $item;
+
+                $yielded++;
+            }
+
+            while ($yielded++ < $size) {
+                yield $value;
+            }
+        });
+    }
+
+    /**
+     * Get the values iterator.
+     *
+     * @return \Traversable
+     */
+    public function getIterator()
+    {
+        return $this->makeIterator($this->source);
+    }
+
+    /**
+     * Count the number of items in the collection.
+     *
+     * @return int
+     */
+    public function count()
+    {
+        if (is_array($this->source)) {
+            return count($this->source);
+        }
+
+        return iterator_count($this->getIterator());
+    }
+
+    /**
+     * Make an iterator from the given source.
+     *
+     * @param  mixed  $source
+     * @return \Traversable
+     */
+    protected function makeIterator($source)
+    {
+        if ($source instanceof IteratorAggregate) {
+            return $source->getIterator();
+        }
+
+        if (is_array($source)) {
+            return new ArrayIterator($source);
+        }
+
+        return $source();
+    }
+
+    /**
+     * Explode the "value" and "key" arguments passed to "pluck".
+     *
+     * @param  string|array  $value
+     * @param  string|array|null  $key
+     * @return array
+     */
+    protected function explodePluckParameters($value, $key)
+    {
+        $value = is_string($value) ? explode('.', $value) : $value;
+
+        $key = is_null($key) || is_array($key) ? $key : explode('.', $key);
+
+        return [$value, $key];
+    }
+
+    /**
+     * Pass this lazy collection through a method on the collection class.
+     *
+     * @param  string  $method
+     * @param  array  $params
+     * @return static
+     */
+    protected function passthru($method, array $params)
+    {
+        return new static(function () use ($method, $params) {
+            yield from $this->collect()->$method(...$params);
+        });
+    }
+
+    /**
+     * Get the current time.
+     *
+     * @return int
+     */
+    protected function now()
+    {
+        return time();
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/EnumeratesValues.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/EnumeratesValues.php
new file mode 100644
index 0000000..2ff7d36
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/EnumeratesValues.php
@@ -0,0 +1,1056 @@
+<?php
+
+namespace Tightenco\Collect\Support\Traits;
+
+use CachingIterator;
+use Closure;
+use Exception;
+use Tightenco\Collect\Contracts\Support\Arrayable;
+use Tightenco\Collect\Contracts\Support\Jsonable;
+use Tightenco\Collect\Support\Arr;
+use Tightenco\Collect\Support\Collection;
+use Tightenco\Collect\Support\Enumerable;
+use Tightenco\Collect\Support\HigherOrderCollectionProxy;
+use Tightenco\Collect\Support\HigherOrderWhenProxy;
+use JsonSerializable;
+use Symfony\Component\VarDumper\VarDumper;
+use Traversable;
+
+/**
+ * @property-read HigherOrderCollectionProxy $average
+ * @property-read HigherOrderCollectionProxy $avg
+ * @property-read HigherOrderCollectionProxy $contains
+ * @property-read HigherOrderCollectionProxy $each
+ * @property-read HigherOrderCollectionProxy $every
+ * @property-read HigherOrderCollectionProxy $filter
+ * @property-read HigherOrderCollectionProxy $first
+ * @property-read HigherOrderCollectionProxy $flatMap
+ * @property-read HigherOrderCollectionProxy $groupBy
+ * @property-read HigherOrderCollectionProxy $keyBy
+ * @property-read HigherOrderCollectionProxy $map
+ * @property-read HigherOrderCollectionProxy $max
+ * @property-read HigherOrderCollectionProxy $min
+ * @property-read HigherOrderCollectionProxy $partition
+ * @property-read HigherOrderCollectionProxy $reject
+ * @property-read HigherOrderCollectionProxy $some
+ * @property-read HigherOrderCollectionProxy $sortBy
+ * @property-read HigherOrderCollectionProxy $sortByDesc
+ * @property-read HigherOrderCollectionProxy $skipUntil
+ * @property-read HigherOrderCollectionProxy $skipWhile
+ * @property-read HigherOrderCollectionProxy $sum
+ * @property-read HigherOrderCollectionProxy $takeUntil
+ * @property-read HigherOrderCollectionProxy $takeWhile
+ * @property-read HigherOrderCollectionProxy $unique
+ * @property-read HigherOrderCollectionProxy $until
+ */
+trait EnumeratesValues
+{
+    /**
+     * The methods that can be proxied.
+     *
+     * @var string[]
+     */
+    protected static $proxies = [
+        'average',
+        'avg',
+        'contains',
+        'each',
+        'every',
+        'filter',
+        'first',
+        'flatMap',
+        'groupBy',
+        'keyBy',
+        'map',
+        'max',
+        'min',
+        'partition',
+        'reject',
+        'skipUntil',
+        'skipWhile',
+        'some',
+        'sortBy',
+        'sortByDesc',
+        'sum',
+        'takeUntil',
+        'takeWhile',
+        'unique',
+        'until',
+    ];
+
+    /**
+     * Create a new collection instance if the value isn't one already.
+     *
+     * @param  mixed  $items
+     * @return static
+     */
+    public static function make($items = [])
+    {
+        return new static($items);
+    }
+
+    /**
+     * Wrap the given value in a collection if applicable.
+     *
+     * @param  mixed  $value
+     * @return static
+     */
+    public static function wrap($value)
+    {
+        return $value instanceof Enumerable
+            ? new static($value)
+            : new static(Arr::wrap($value));
+    }
+
+    /**
+     * Get the underlying items from the given collection if applicable.
+     *
+     * @param  array|static  $value
+     * @return array
+     */
+    public static function unwrap($value)
+    {
+        return $value instanceof Enumerable ? $value->all() : $value;
+    }
+
+    /**
+     * Create a new instance with no items.
+     *
+     * @return static
+     */
+    public static function empty()
+    {
+        return new static([]);
+    }
+
+    /**
+     * Create a new collection by invoking the callback a given amount of times.
+     *
+     * @param  int  $number
+     * @param  callable|null  $callback
+     * @return static
+     */
+    public static function times($number, callable $callback = null)
+    {
+        if ($number < 1) {
+            return new static;
+        }
+
+        return static::range(1, $number)
+            ->when($callback)
+            ->map($callback);
+    }
+
+    /**
+     * Alias for the "avg" method.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function average($callback = null)
+    {
+        return $this->avg($callback);
+    }
+
+    /**
+     * Alias for the "contains" method.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function some($key, $operator = null, $value = null)
+    {
+        return $this->contains(...func_get_args());
+    }
+
+    /**
+     * Determine if an item exists, using strict comparison.
+     *
+     * @param  mixed  $key
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function containsStrict($key, $value = null)
+    {
+        if (func_num_args() === 2) {
+            return $this->contains(function ($item) use ($key, $value) {
+                return data_get($item, $key) === $value;
+            });
+        }
+
+        if ($this->useAsCallable($key)) {
+            return ! is_null($this->first($key));
+        }
+
+        foreach ($this as $item) {
+            if ($item === $key) {
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Dump the items and end the script.
+     *
+     * @param  mixed  ...$args
+     * @return void
+     */
+    public function dd(...$args)
+    {
+        $this->dump(...$args);
+
+        exit(1);
+    }
+
+    /**
+     * Dump the items.
+     *
+     * @return $this
+     */
+    public function dump()
+    {
+        (new Collection(func_get_args()))
+            ->push($this->all())
+            ->each(function ($item) {
+                VarDumper::dump($item);
+            });
+
+        return $this;
+    }
+
+    /**
+     * Execute a callback over each item.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function each(callable $callback)
+    {
+        foreach ($this as $key => $item) {
+            if ($callback($item, $key) === false) {
+                break;
+            }
+        }
+
+        return $this;
+    }
+
+    /**
+     * Execute a callback over each nested chunk of items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function eachSpread(callable $callback)
+    {
+        return $this->each(function ($chunk, $key) use ($callback) {
+            $chunk[] = $key;
+
+            return $callback(...$chunk);
+        });
+    }
+
+    /**
+     * Determine if all items pass the given truth test.
+     *
+     * @param  string|callable  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return bool
+     */
+    public function every($key, $operator = null, $value = null)
+    {
+        if (func_num_args() === 1) {
+            $callback = $this->valueRetriever($key);
+
+            foreach ($this as $k => $v) {
+                if (! $callback($v, $k)) {
+                    return false;
+                }
+            }
+
+            return true;
+        }
+
+        return $this->every($this->operatorForWhere(...func_get_args()));
+    }
+
+    /**
+     * Get the first item by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return mixed
+     */
+    public function firstWhere($key, $operator = null, $value = null)
+    {
+        return $this->first($this->operatorForWhere(...func_get_args()));
+    }
+
+    /**
+     * Determine if the collection is not empty.
+     *
+     * @return bool
+     */
+    public function isNotEmpty()
+    {
+        return ! $this->isEmpty();
+    }
+
+    /**
+     * Run a map over each nested chunk of items.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapSpread(callable $callback)
+    {
+        return $this->map(function ($chunk, $key) use ($callback) {
+            $chunk[] = $key;
+
+            return $callback(...$chunk);
+        });
+    }
+
+    /**
+     * Run a grouping map over the items.
+     *
+     * The callback should return an associative array with a single key/value pair.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function mapToGroups(callable $callback)
+    {
+        $groups = $this->mapToDictionary($callback);
+
+        return $groups->map([$this, 'make']);
+    }
+
+    /**
+     * Map a collection and flatten the result by a single level.
+     *
+     * @param  callable  $callback
+     * @return static
+     */
+    public function flatMap(callable $callback)
+    {
+        return $this->map($callback)->collapse();
+    }
+
+    /**
+     * Map the values into a new class.
+     *
+     * @param  string  $class
+     * @return static
+     */
+    public function mapInto($class)
+    {
+        return $this->map(function ($value, $key) use ($class) {
+            return new $class($value, $key);
+        });
+    }
+
+    /**
+     * Get the min value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function min($callback = null)
+    {
+        $callback = $this->valueRetriever($callback);
+
+        return $this->map(function ($value) use ($callback) {
+            return $callback($value);
+        })->filter(function ($value) {
+            return ! is_null($value);
+        })->reduce(function ($result, $value) {
+            return is_null($result) || $value < $result ? $value : $result;
+        });
+    }
+
+    /**
+     * Get the max value of a given key.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function max($callback = null)
+    {
+        $callback = $this->valueRetriever($callback);
+
+        return $this->filter(function ($value) {
+            return ! is_null($value);
+        })->reduce(function ($result, $item) use ($callback) {
+            $value = $callback($item);
+
+            return is_null($result) || $value > $result ? $value : $result;
+        });
+    }
+
+    /**
+     * "Paginate" the collection by slicing it into a smaller collection.
+     *
+     * @param  int  $page
+     * @param  int  $perPage
+     * @return static
+     */
+    public function forPage($page, $perPage)
+    {
+        $offset = max(0, ($page - 1) * $perPage);
+
+        return $this->slice($offset, $perPage);
+    }
+
+    /**
+     * Partition the collection into two arrays using the given callback or key.
+     *
+     * @param  callable|string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return static
+     */
+    public function partition($key, $operator = null, $value = null)
+    {
+        $passed = [];
+        $failed = [];
+
+        $callback = func_num_args() === 1
+                ? $this->valueRetriever($key)
+                : $this->operatorForWhere(...func_get_args());
+
+        foreach ($this as $key => $item) {
+            if ($callback($item, $key)) {
+                $passed[$key] = $item;
+            } else {
+                $failed[$key] = $item;
+            }
+        }
+
+        return new static([new static($passed), new static($failed)]);
+    }
+
+    /**
+     * Get the sum of the given values.
+     *
+     * @param  callable|string|null  $callback
+     * @return mixed
+     */
+    public function sum($callback = null)
+    {
+        $callback = is_null($callback)
+            ? $this->identity()
+            : $this->valueRetriever($callback);
+
+        return $this->reduce(function ($result, $item) use ($callback) {
+            return $result + $callback($item);
+        }, 0);
+    }
+
+    /**
+     * Apply the callback if the value is truthy.
+     *
+     * @param  bool|mixed  $value
+     * @param  callable|null  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function when($value, callable $callback = null, callable $default = null)
+    {
+        if (! $callback) {
+            return new HigherOrderWhenProxy($this, $value);
+        }
+
+        if ($value) {
+            return $callback($this, $value);
+        } elseif ($default) {
+            return $default($this, $value);
+        }
+
+        return $this;
+    }
+
+    /**
+     * Apply the callback if the collection is empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function whenEmpty(callable $callback, callable $default = null)
+    {
+        return $this->when($this->isEmpty(), $callback, $default);
+    }
+
+    /**
+     * Apply the callback if the collection is not empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function whenNotEmpty(callable $callback, callable $default = null)
+    {
+        return $this->when($this->isNotEmpty(), $callback, $default);
+    }
+
+    /**
+     * Apply the callback if the value is falsy.
+     *
+     * @param  bool  $value
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unless($value, callable $callback, callable $default = null)
+    {
+        return $this->when(! $value, $callback, $default);
+    }
+
+    /**
+     * Apply the callback unless the collection is empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unlessEmpty(callable $callback, callable $default = null)
+    {
+        return $this->whenNotEmpty($callback, $default);
+    }
+
+    /**
+     * Apply the callback unless the collection is not empty.
+     *
+     * @param  callable  $callback
+     * @param  callable|null  $default
+     * @return static|mixed
+     */
+    public function unlessNotEmpty(callable $callback, callable $default = null)
+    {
+        return $this->whenEmpty($callback, $default);
+    }
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $operator
+     * @param  mixed  $value
+     * @return static
+     */
+    public function where($key, $operator = null, $value = null)
+    {
+        return $this->filter($this->operatorForWhere(...func_get_args()));
+    }
+
+    /**
+     * Filter items where the value for the given key is null.
+     *
+     * @param  string|null  $key
+     * @return static
+     */
+    public function whereNull($key = null)
+    {
+        return $this->whereStrict($key, null);
+    }
+
+    /**
+     * Filter items where the value for the given key is not null.
+     *
+     * @param  string|null  $key
+     * @return static
+     */
+    public function whereNotNull($key = null)
+    {
+        return $this->where($key, '!==', null);
+    }
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $value
+     * @return static
+     */
+    public function whereStrict($key, $value)
+    {
+        return $this->where($key, '===', $value);
+    }
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @param  bool  $strict
+     * @return static
+     */
+    public function whereIn($key, $values, $strict = false)
+    {
+        $values = $this->getArrayableItems($values);
+
+        return $this->filter(function ($item) use ($key, $values, $strict) {
+            return in_array(data_get($item, $key), $values, $strict);
+        });
+    }
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @return static
+     */
+    public function whereInStrict($key, $values)
+    {
+        return $this->whereIn($key, $values, true);
+    }
+
+    /**
+     * Filter items such that the value of the given key is between the given values.
+     *
+     * @param  string  $key
+     * @param  array  $values
+     * @return static
+     */
+    public function whereBetween($key, $values)
+    {
+        return $this->where($key, '>=', reset($values))->where($key, '<=', end($values));
+    }
+
+    /**
+     * Filter items such that the value of the given key is not between the given values.
+     *
+     * @param  string  $key
+     * @param  array  $values
+     * @return static
+     */
+    public function whereNotBetween($key, $values)
+    {
+        return $this->filter(function ($item) use ($key, $values) {
+            return data_get($item, $key) < reset($values) || data_get($item, $key) > end($values);
+        });
+    }
+
+    /**
+     * Filter items by the given key value pair.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @param  bool  $strict
+     * @return static
+     */
+    public function whereNotIn($key, $values, $strict = false)
+    {
+        $values = $this->getArrayableItems($values);
+
+        return $this->reject(function ($item) use ($key, $values, $strict) {
+            return in_array(data_get($item, $key), $values, $strict);
+        });
+    }
+
+    /**
+     * Filter items by the given key value pair using strict comparison.
+     *
+     * @param  string  $key
+     * @param  mixed  $values
+     * @return static
+     */
+    public function whereNotInStrict($key, $values)
+    {
+        return $this->whereNotIn($key, $values, true);
+    }
+
+    /**
+     * Filter the items, removing any items that don't match the given type(s).
+     *
+     * @param  string|string[]  $type
+     * @return static
+     */
+    public function whereInstanceOf($type)
+    {
+        return $this->filter(function ($value) use ($type) {
+            if (is_array($type)) {
+                foreach ($type as $classType) {
+                    if ($value instanceof $classType) {
+                        return true;
+                    }
+                }
+
+                return false;
+            }
+
+            return $value instanceof $type;
+        });
+    }
+
+    /**
+     * Pass the collection to the given callback and return the result.
+     *
+     * @param  callable  $callback
+     * @return mixed
+     */
+    public function pipe(callable $callback)
+    {
+        return $callback($this);
+    }
+
+    /**
+     * Pass the collection into a new class.
+     *
+     * @param  string  $class
+     * @return mixed
+     */
+    public function pipeInto($class)
+    {
+        return new $class($this);
+    }
+
+    /**
+     * Pass the collection to the given callback and then return it.
+     *
+     * @param  callable  $callback
+     * @return $this
+     */
+    public function tap(callable $callback)
+    {
+        $callback(clone $this);
+
+        return $this;
+    }
+
+    /**
+     * Reduce the collection to a single value.
+     *
+     * @param  callable  $callback
+     * @param  mixed $initial
+     * @return mixed
+     */
+    public function reduce(callable $callback, $initial = null)
+    {
+        $result = $initial;
+
+        foreach ($this as $key => $value) {
+            $result = $callback($result, $value, $key);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Reduce an associative collection to a single value.
+     *
+     * @param  callable  $callback
+     * @param  mixed $initial
+     * @return mixed
+     */
+    public function reduceWithKeys(callable $callback, $initial = null)
+    {
+        $result = $initial;
+
+        foreach ($this as $key => $value) {
+            $result = $callback($result, $value, $key);
+        }
+
+        return $result;
+    }
+
+    /**
+     * Create a collection of all elements that do not pass a given truth test.
+     *
+     * @param  callable|mixed  $callback
+     * @return static
+     */
+    public function reject($callback = true)
+    {
+        $useAsCallable = $this->useAsCallable($callback);
+
+        return $this->filter(function ($value, $key) use ($callback, $useAsCallable) {
+            return $useAsCallable
+                ? ! $callback($value, $key)
+                : $value != $callback;
+        });
+    }
+
+    /**
+     * Return only unique items from the collection array.
+     *
+     * @param  string|callable|null  $key
+     * @param  bool  $strict
+     * @return static
+     */
+    public function unique($key = null, $strict = false)
+    {
+        $callback = $this->valueRetriever($key);
+
+        $exists = [];
+
+        return $this->reject(function ($item, $key) use ($callback, $strict, &$exists) {
+            if (in_array($id = $callback($item, $key), $exists, $strict)) {
+                return true;
+            }
+
+            $exists[] = $id;
+        });
+    }
+
+    /**
+     * Return only unique items from the collection array using strict comparison.
+     *
+     * @param  string|callable|null  $key
+     * @return static
+     */
+    public function uniqueStrict($key = null)
+    {
+        return $this->unique($key, true);
+    }
+
+    /**
+     * Collect the values into a collection.
+     *
+     * @return \Tightenco\Collect\Support\Collection
+     */
+    public function collect()
+    {
+        return new Collection($this->all());
+    }
+
+    /**
+     * Get the collection of items as a plain array.
+     *
+     * @return array
+     */
+    public function toArray()
+    {
+        return $this->map(function ($value) {
+            return $value instanceof Arrayable ? $value->toArray() : $value;
+        })->all();
+    }
+
+    /**
+     * Convert the object into something JSON serializable.
+     *
+     * @return array
+     */
+    public function jsonSerialize()
+    {
+        return array_map(function ($value) {
+            if ($value instanceof JsonSerializable) {
+                return $value->jsonSerialize();
+            } elseif ($value instanceof Jsonable) {
+                return json_decode($value->toJson(), true);
+            } elseif ($value instanceof Arrayable) {
+                return $value->toArray();
+            }
+
+            return $value;
+        }, $this->all());
+    }
+
+    /**
+     * Get the collection of items as JSON.
+     *
+     * @param  int  $options
+     * @return string
+     */
+    public function toJson($options = 0)
+    {
+        return json_encode($this->jsonSerialize(), $options);
+    }
+
+    /**
+     * Get a CachingIterator instance.
+     *
+     * @param  int  $flags
+     * @return \CachingIterator
+     */
+    public function getCachingIterator($flags = CachingIterator::CALL_TOSTRING)
+    {
+        return new CachingIterator($this->getIterator(), $flags);
+    }
+
+    /**
+     * Convert the collection to its string representation.
+     *
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->toJson();
+    }
+
+    /**
+     * Add a method to the list of proxied methods.
+     *
+     * @param  string  $method
+     * @return void
+     */
+    public static function proxy($method)
+    {
+        static::$proxies[] = $method;
+    }
+
+    /**
+     * Dynamically access collection proxies.
+     *
+     * @param  string  $key
+     * @return mixed
+     *
+     * @throws \Exception
+     */
+    public function __get($key)
+    {
+        if (! in_array($key, static::$proxies)) {
+            throw new Exception("Property [{$key}] does not exist on this collection instance.");
+        }
+
+        return new HigherOrderCollectionProxy($this, $key);
+    }
+
+    /**
+     * Results array of items from Collection or Arrayable.
+     *
+     * @param  mixed  $items
+     * @return array
+     */
+    protected function getArrayableItems($items)
+    {
+        if (is_array($items)) {
+            return $items;
+        } elseif ($items instanceof Enumerable) {
+            return $items->all();
+        } elseif ($items instanceof Arrayable) {
+            return $items->toArray();
+        } elseif ($items instanceof Jsonable) {
+            return json_decode($items->toJson(), true);
+        } elseif ($items instanceof JsonSerializable) {
+            return (array) $items->jsonSerialize();
+        } elseif ($items instanceof Traversable) {
+            return iterator_to_array($items);
+        }
+
+        return (array) $items;
+    }
+
+    /**
+     * Get an operator checker callback.
+     *
+     * @param  string  $key
+     * @param  string|null  $operator
+     * @param  mixed  $value
+     * @return \Closure
+     */
+    protected function operatorForWhere($key, $operator = null, $value = null)
+    {
+        if (func_num_args() === 1) {
+            $value = true;
+
+            $operator = '=';
+        }
+
+        if (func_num_args() === 2) {
+            $value = $operator;
+
+            $operator = '=';
+        }
+
+        return function ($item) use ($key, $operator, $value) {
+            $retrieved = data_get($item, $key);
+
+            $strings = array_filter([$retrieved, $value], function ($value) {
+                return is_string($value) || (is_object($value) && method_exists($value, '__toString'));
+            });
+
+            if (count($strings) < 2 && count(array_filter([$retrieved, $value], 'is_object')) == 1) {
+                return in_array($operator, ['!=', '<>', '!==']);
+            }
+
+            switch ($operator) {
+                default:
+                case '=':
+                case '==':  return $retrieved == $value;
+                case '!=':
+                case '<>':  return $retrieved != $value;
+                case '<':   return $retrieved < $value;
+                case '>':   return $retrieved > $value;
+                case '<=':  return $retrieved <= $value;
+                case '>=':  return $retrieved >= $value;
+                case '===': return $retrieved === $value;
+                case '!==': return $retrieved !== $value;
+            }
+        };
+    }
+
+    /**
+     * Determine if the given value is callable, but not a string.
+     *
+     * @param  mixed  $value
+     * @return bool
+     */
+    protected function useAsCallable($value)
+    {
+        return ! is_string($value) && is_callable($value);
+    }
+
+    /**
+     * Get a value retrieving callback.
+     *
+     * @param  callable|string|null  $value
+     * @return callable
+     */
+    protected function valueRetriever($value)
+    {
+        if ($this->useAsCallable($value)) {
+            return $value;
+        }
+
+        return function ($item) use ($value) {
+            return data_get($item, $value);
+        };
+    }
+
+    /**
+     * Make a function to check an item's equality.
+     *
+     * @param  mixed  $value
+     * @return \Closure
+     */
+    protected function equality($value)
+    {
+        return function ($item) use ($value) {
+            return $item === $value;
+        };
+    }
+
+    /**
+     * Make a function using another function, by negating its result.
+     *
+     * @param  \Closure  $callback
+     * @return \Closure
+     */
+    protected function negate(Closure $callback)
+    {
+        return function (...$params) use ($callback) {
+            return ! $callback(...$params);
+        };
+    }
+
+    /**
+     * Make a function that returns what's passed to it.
+     *
+     * @return \Closure
+     */
+    protected function identity()
+    {
+        return function ($value) {
+            return $value;
+        };
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Macroable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Macroable.php
new file mode 100644
index 0000000..d9b5fe7
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Macroable.php
@@ -0,0 +1,116 @@
+<?php
+
+namespace Tightenco\Collect\Support\Traits;
+
+use BadMethodCallException;
+use Closure;
+use ReflectionClass;
+use ReflectionMethod;
+
+trait Macroable
+{
+    /**
+     * The registered string macros.
+     *
+     * @var array
+     */
+    protected static $macros = [];
+
+    /**
+     * Register a custom macro.
+     *
+     * @param  string  $name
+     * @param  object|callable  $macro
+     * @return void
+     */
+    public static function macro($name, $macro)
+    {
+        static::$macros[$name] = $macro;
+    }
+
+    /**
+     * Mix another object into the class.
+     *
+     * @param  object  $mixin
+     * @param  bool  $replace
+     * @return void
+     *
+     * @throws \ReflectionException
+     */
+    public static function mixin($mixin, $replace = true)
+    {
+        $methods = (new ReflectionClass($mixin))->getMethods(
+            ReflectionMethod::IS_PUBLIC | ReflectionMethod::IS_PROTECTED
+        );
+
+        foreach ($methods as $method) {
+            if ($replace || ! static::hasMacro($method->name)) {
+                $method->setAccessible(true);
+                static::macro($method->name, $method->invoke($mixin));
+            }
+        }
+    }
+
+    /**
+     * Checks if macro is registered.
+     *
+     * @param  string  $name
+     * @return bool
+     */
+    public static function hasMacro($name)
+    {
+        return isset(static::$macros[$name]);
+    }
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param  string  $method
+     * @param  array  $parameters
+     * @return mixed
+     *
+     * @throws \BadMethodCallException
+     */
+    public static function __callStatic($method, $parameters)
+    {
+        if (! static::hasMacro($method)) {
+            throw new BadMethodCallException(sprintf(
+                'Method %s::%s does not exist.', static::class, $method
+            ));
+        }
+
+        $macro = static::$macros[$method];
+
+        if ($macro instanceof Closure) {
+            $macro = $macro->bindTo(null, static::class);
+        }
+
+        return $macro(...$parameters);
+    }
+
+    /**
+     * Dynamically handle calls to the class.
+     *
+     * @param  string  $method
+     * @param  array  $parameters
+     * @return mixed
+     *
+     * @throws \BadMethodCallException
+     */
+    public function __call($method, $parameters)
+    {
+        if (! static::hasMacro($method)) {
+            throw new BadMethodCallException(sprintf(
+                'Method %s::%s does not exist.', static::class, $method
+            ));
+        }
+
+        $macro = static::$macros[$method];
+
+        if ($macro instanceof Closure) {
+            $macro = $macro->bindTo($this, static::class);
+        }
+
+        return $macro(...$parameters);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Tappable.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Tappable.php
new file mode 100644
index 0000000..17e6b9e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/Traits/Tappable.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace Tightenco\Collect\Support\Traits;
+
+trait Tappable
+{
+    /**
+     * Call the given Closure with this instance then return the instance.
+     *
+     * @param  callable|null  $callback
+     * @return mixed
+     */
+    public function tap($callback = null)
+    {
+        return tap($this, $callback);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/alias.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/alias.php
new file mode 100644
index 0000000..1ecffd3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/alias.php
@@ -0,0 +1,20 @@
+<?php
+
+$aliases = [
+    Tightenco\Collect\Contracts\Support\Arrayable::class => Illuminate\Contracts\Support\Arrayable::class,
+    Tightenco\Collect\Contracts\Support\Jsonable::class => Illuminate\Contracts\Support\Jsonable::class,
+    Tightenco\Collect\Contracts\Support\Htmlable::class => Illuminate\Contracts\Support\Htmlable::class,
+    Tightenco\Collect\Support\Arr::class => Illuminate\Support\Arr::class,
+    Tightenco\Collect\Support\Collection::class => Illuminate\Support\Collection::class,
+    Tightenco\Collect\Support\Enumerable::class => Illuminate\Support\Enumerable::class,
+    Tightenco\Collect\Support\HigherOrderCollectionProxy::class => Illuminate\Support\HigherOrderCollectionProxy::class,
+    Tightenco\Collect\Support\HigherOrderWhenProxy::class => Illuminate\Support\HigherOrderWhenProxy::class,
+    Tightenco\Collect\Support\LazyCollection::class => Illuminate\Support\LazyCollection::class,
+    Tightenco\Collect\Support\Traits\EnumeratesValues::class => Illuminate\Support\Traits\EnumeratesValues::class,
+];
+
+foreach ($aliases as $tighten => $illuminate) {
+    if (! class_exists($illuminate) && ! interface_exists($illuminate) && ! trait_exists($illuminate)) {
+        class_alias($tighten, $illuminate);
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/helpers.php b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/helpers.php
new file mode 100644
index 0000000..d7f9e0e
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/lib/vendor/tightenco/collect/src/Collect/Support/helpers.php
@@ -0,0 +1,139 @@
+<?php
+
+use Tightenco\Collect\Support\Arr;
+use Tightenco\Collect\Support\Collection;
+use Tightenco\Collect\Support\HigherOrderTapProxy;
+use Symfony\Component\VarDumper\VarDumper;
+
+if (! class_exists(Illuminate\Support\Collection::class)) {
+    if (! function_exists('array_wrap')) {
+        /**
+         * If the given value is not an array, wrap it in one.
+         *
+         * @param  mixed  $value
+         * @return array
+         */
+        function array_wrap($value)
+        {
+            return ! is_array($value) ? [$value] : $value;
+        }
+    }
+
+    if (! function_exists('collect')) {
+        /**
+         * Create a collection from the given value.
+         *
+         * @param  mixed  $value
+         * @return \Tightenco\Collect\Support\Collection
+         */
+        function collect($value = null)
+        {
+            return new Collection($value);
+        }
+    }
+
+    if (! function_exists('value')) {
+        /**
+         * Return the default value of the given value.
+         *
+         * @param  mixed  $value
+         * @return mixed
+         */
+        function value($value)
+        {
+            return $value instanceof Closure ? $value() : $value;
+        }
+    }
+
+    if (! function_exists('data_get')) {
+        /**
+         * Get an item from an array or object using "dot" notation.
+         *
+         * @param  mixed   $target
+         * @param  string|array  $key
+         * @param  mixed   $default
+         * @return mixed
+         */
+        function data_get($target, $key, $default = null)
+        {
+            if (is_null($key)) {
+                return $target;
+            }
+
+            $key = is_array($key) ? $key : explode('.', $key);
+
+            while (($segment = array_shift($key)) !== null) {
+                if ($segment === '*') {
+                    if ($target instanceof Collection) {
+                        $target = $target->all();
+                    } elseif (! is_array($target)) {
+                        return value($default);
+                    }
+
+                    $result = Arr::pluck($target, $key);
+
+                    return in_array('*', $key) ? Arr::collapse($result) : $result;
+                }
+
+                if (Arr::accessible($target) && Arr::exists($target, $segment)) {
+                    $target = $target[$segment];
+                } elseif (is_object($target) && isset($target->{$segment})) {
+                    $target = $target->{$segment};
+                } else {
+                    return value($default);
+                }
+            }
+
+            return $target;
+        }
+    }
+
+    if (! function_exists('tap')) {
+        /**
+         * Call the given Closure with the given value then return the value.
+         *
+         * @param  mixed  $value
+         * @param  callable|null  $callback
+         * @return mixed
+         */
+        function tap($value, $callback = null)
+        {
+            if (is_null($callback)) {
+                return new HigherOrderTapProxy($value);
+            }
+
+            $callback($value);
+
+            return $value;
+        }
+    }
+
+    if (! function_exists('with')) {
+        /**
+         * Return the given object. Useful for chaining.
+         *
+         * @param  mixed  $object
+         * @return mixed
+         */
+        function with($object)
+        {
+            return $object;
+        }
+    }
+
+    if (! function_exists('dd')) {
+        /**
+         * Dump the passed variables and end the script.
+         *
+         * @param  mixed
+         * @return void
+         */
+        function dd(...$args)
+        {
+            foreach ($args as $x) {
+               VarDumper::dump($x);
+            }
+            die(1);
+        }
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/prerequisites.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/prerequisites.inc.php
index 220c87c..0cbd05a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/prerequisites.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/prerequisites.inc.php
@@ -67,6 +67,8 @@
 $WebAuthn->addRootCertificates($_SERVER['DOCUMENT_ROOT'] . '/inc/lib/WebAuthn/rootCertificates/googleHardware.pem');
 $WebAuthn->addRootCertificates($_SERVER['DOCUMENT_ROOT'] . '/inc/lib/WebAuthn/rootCertificates/microsoftTpmCollection.pem');
 $WebAuthn->addRootCertificates($_SERVER['DOCUMENT_ROOT'] . '/inc/lib/WebAuthn/rootCertificates/huawei.pem');
+$WebAuthn->addRootCertificates($_SERVER['DOCUMENT_ROOT'] . '/inc/lib/WebAuthn/rootCertificates/trustkey.pem');
+$WebAuthn->addRootCertificates($_SERVER['DOCUMENT_ROOT'] . '/inc/lib/WebAuthn/rootCertificates/bsi.pem');
 
 // Redis
 $redis = new Redis();
@@ -170,29 +172,12 @@
 set_exception_handler('exception_handler');
 
 // TODO: Move function
-function get_remote_ip($anonymize = null) {
-  global $ANONYMIZE_IPS;
-  if ($anonymize === null) {
-    $anonymize = $ANONYMIZE_IPS;
-  }
-  elseif ($anonymize !== true && $anonymize !== false)  {
-    $anonymize = true;
-  }
+function get_remote_ip() {
   $remote = $_SERVER['REMOTE_ADDR'];
   if (filter_var($remote, FILTER_VALIDATE_IP) === false) {
     return '0.0.0.0';
   }
-  if ($anonymize) {
-    if (strlen(inet_pton($remote)) == 4) {
-      return inet_ntop(inet_pton($remote) & inet_pton("255.255.255.0"));
-    }
-    elseif (strlen(inet_pton($remote)) == 16) {
-      return inet_ntop(inet_pton($remote) & inet_pton('ffff:ffff:ffff:ffff:0000:0000:0000:0000'));
-    }
-  }
-  else {
-    return $remote;
-  }
+  return $remote;
 }
 
 // Load core functions first
@@ -207,7 +192,7 @@
 if (!isset($_SESSION['mailcow_locale']) && !isset($_COOKIE['mailcow_locale'])) {
   if ($DETECT_LANGUAGE && isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
     $header_lang = strtolower(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2));
-    if (in_array($header_lang, $AVAILABLE_LANGUAGES)) {
+    if (array_key_exists($header_lang, $AVAILABLE_LANGUAGES)) {
       $_SESSION['mailcow_locale'] = $header_lang;
     }
   }
@@ -218,7 +203,7 @@
 if (isset($_COOKIE['mailcow_locale'])) {
   (preg_match('/^[a-z]{2}$/', $_COOKIE['mailcow_locale'])) ? $_SESSION['mailcow_locale'] = $_COOKIE['mailcow_locale'] : setcookie("mailcow_locale", "", time() - 300);
 }
-if (isset($_GET['lang']) && in_array($_GET['lang'], $AVAILABLE_LANGUAGES)) {
+if (isset($_GET['lang']) && array_key_exists($_GET['lang'], $AVAILABLE_LANGUAGES)) {
   $_SESSION['mailcow_locale'] = $_GET['lang'];
   setcookie("mailcow_locale", $_GET['lang'], time()+30758400); // one year
 }
@@ -234,27 +219,27 @@
 }
 
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.acl.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.app_passwd.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.mailbox.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.customize.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.address_rewriting.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.domain_admin.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.admin.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.quarantine.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.quota_notification.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.policy.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.app_passwd.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.customize.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.dkim.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.docker.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.domain_admin.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.fail2ban.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.fwdhost.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.mailbox.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.mailq.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.oauth2.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.policy.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.presets.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.pushover.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.quarantine.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.quota_notification.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.ratelimit.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.transports.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.rspamd.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.tls_policy_maps.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.fail2ban.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.docker.inc.php';
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.presets.inc.php';
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/functions.transports.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/init_db.inc.php';
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/triggers.inc.php';
 init_db_schema();
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_1.yml b/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_1.yml
index acbe352..41833cf 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_1.yml
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_1.yml
@@ -3,5 +3,5 @@
   priority = 10;
   authenticated = yes;
   apply "default" {
-    symbols_enabled = ["DKIM_SIGNED", "RATELIMITED", "RATELIMIT_UPDATE", "RATELIMIT_CHECK", "DYN_RL_CHECK", "HISTORY_SAVE", "MILTER_HEADERS", "ARC_SIGNED"];
+    symbols_enabled = ["BCC", "DKIM_SIGNED", "RATELIMITED", "RATELIMIT_UPDATE", "RATELIMIT_CHECK", "DYN_RL_CHECK", "HISTORY_SAVE", "MILTER_HEADERS", "ARC_SIGNED"];
   }
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_4.yml b/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_4.yml
new file mode 100644
index 0000000..c63071b
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/presets/rspamd/preset_4.yml
@@ -0,0 +1,11 @@
+headline: lang.rsettings_preset_4
+content: |
+  priority = 10;
+  rcpt = "/.*@develcow.de$/";
+  from = "/.*/";
+  apply "default" {
+    MAILCOW_WHITE = -9999.0;
+  }
+  symbols [
+    "MAILCOW_WHITE"
+  ]
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/spf.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/spf.inc.php
index 199f572..55e164b 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/spf.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/spf.inc.php
@@ -1,8 +1,6 @@
 <?php
 error_reporting(0);
-
-function get_spf_allowed_hosts($check_domain)
-{
+function get_spf_allowed_hosts($check_domain, $expand_ipv6 = false) {
 	$hosts = array();
 	
 	$records = dns_get_record($check_domain, DNS_TXT);
@@ -26,7 +24,7 @@
 				$mod = explode('=', $mech);
 				if ($mod[0] == 'redirect') // handle a redirect
 				{
-					$hosts = get_spf_allowed_hosts($mod[1]);
+					$hosts = get_spf_allowed_hosts($mod[1],true);
 					return $hosts;
 				}
 			}
@@ -81,7 +79,13 @@
 	}
 	foreach ($hosts as &$host) {
 		if (filter_var($host, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
-			$host = $host;
+			if ($expand_ipv6 === true) {
+				$hex = unpack("H*hex", inet_pton($host));
+				$host = substr(preg_replace("/([A-f0-9]{4})/", "$1:", $hex['hex']), 0, -1);
+			}
+			else {
+				$host = $host;
+			}
 		}
 	}
 	return $hosts;
@@ -119,9 +123,8 @@
 		$hosts[] = $a_record['ip'];
 	}
 	$a_records = dns_get_record($domain, DNS_AAAA);
-	foreach ($a_records as $a_record)
-	{
-		$hosts[] = $a_record['ipv6'];
+	foreach ($a_records as $a_record) {
+    $hosts[] = $a_record['ipv6'];
 	}
 	
 	return $hosts;
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/triggers.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/triggers.inc.php
index 8785759..a2342df 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/triggers.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/triggers.inc.php
@@ -24,19 +24,16 @@
 	if ($as == "admin") {
 		$_SESSION['mailcow_cc_username'] = $login_user;
 		$_SESSION['mailcow_cc_role'] = "admin";
-    $_SESSION['mailcow_cc_last_login'] = last_login($login_user);
 		header("Location: /admin");
 	}
 	elseif ($as == "domainadmin") {
 		$_SESSION['mailcow_cc_username'] = $login_user;
 		$_SESSION['mailcow_cc_role'] = "domainadmin";
-    $_SESSION['mailcow_cc_last_login'] = last_login($login_user);
 		header("Location: /mailbox");
 	}
 	elseif ($as == "user") {
 		$_SESSION['mailcow_cc_username'] = $login_user;
 		$_SESSION['mailcow_cc_role'] = "user";
-    $_SESSION['mailcow_cc_last_login'] = last_login($login_user);
     $http_parameters = explode('&', $_SESSION['index_query_string']);
     unset($_SESSION['index_query_string']);
     if (in_array('mobileconfig', $http_parameters)) {
@@ -58,7 +55,7 @@
 	}
 }
 
-if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['acl']['login_as'] == "1") {
+if (isset($_SESSION['mailcow_cc_role']) && (isset($_SESSION['acl']['login_as']) && $_SESSION['acl']['login_as'] == "1")) {
 	if (isset($_GET["duallogin"])) {
     $duallogin = html_entity_decode(rawurldecode($_GET["duallogin"]));
     if (filter_var($duallogin, FILTER_VALIDATE_EMAIL)) {
@@ -82,7 +79,7 @@
   }
 }
 
-if (isset($_SESSION['mailcow_cc_role']) && ($_SESSION['mailcow_cc_role'] == "admin" || $_SESSION['mailcow_cc_role'] == "domainadmin")) {
+if (isset($_SESSION['mailcow_cc_role'])) {
 	if (isset($_POST["set_tfa"])) {
 		set_tfa($_POST);
 	}
@@ -93,7 +90,7 @@
 		fido2(array("action" => "unset_fido2_key", "post_data" => $_POST));
 	}
 }
-if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == "admin") {
+if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == "admin" && !isset($_SESSION['mailcow_cc_api'])) {
   // TODO: Move file upload to API?
 	if (isset($_POST["submit_main_logo"])) {
     if ($_FILES['main_logo']['error'] == 0) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php
index f497ffb..91d2145 100644
--- a/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php
@@ -45,21 +45,21 @@
   // The autoconfig service will additionally announce the STARTTLS-enabled ports, specified in the "tlsport" variable.
   'imap' => array(
     'server' => $mailcow_hostname,
-    'port' => end(explode(':', getenv('IMAPS_PORT'))),
-    'tlsport' => end(explode(':', getenv('IMAP_PORT'))),
+    'port' => (int)filter_var(substr(getenv('IMAPS_PORT'), strrpos(getenv('IMAPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
+    'tlsport' => (int)filter_var(substr(getenv('IMAP_PORT'), strrpos(getenv('IMAP_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
   ),
   'pop3' => array(
     'server' => $mailcow_hostname,
-    'port' => end(explode(':', getenv('POPS_PORT'))),
-    'tlsport' => end(explode(':', getenv('POP_PORT'))),
+    'port' => (int)filter_var(substr(getenv('POPS_PORT'), strrpos(getenv('POPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
+    'tlsport' => (int)filter_var(substr(getenv('POP_PORT'), strrpos(getenv('POP_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
   ),
   'smtp' => array(
     'server' => $mailcow_hostname,
-    'port' => end(explode(':', getenv('SMTPS_PORT'))),
-    'tlsport' => end(explode(':', getenv('SUBMISSION_PORT'))),
+    'port' => (int)filter_var(substr(getenv('SMTPS_PORT'), strrpos(getenv('SMTPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
+    'tlsport' => (int)filter_var(substr(getenv('SUBMISSION_PORT'), strrpos(getenv('SUBMISSION_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
   ),
   'activesync' => array(
-    'url' => 'https://'.$mailcow_hostname.($https_port == 443 ? '' : ':'.$https_port).'/Microsoft-Server-ActiveSync',
+    'url' => 'https://' . $mailcow_hostname . ($https_port == 443 ? '' : ':' . $https_port) . '/Microsoft-Server-ActiveSync',
   ),
   'caldav' => array(
     'server' => $mailcow_hostname,
@@ -79,7 +79,29 @@
 $DEFAULT_LANG = 'en';
 
 // Available languages
-$AVAILABLE_LANGUAGES = array('ca', 'cs', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ko', 'lv', 'nl', 'pl', 'pt', 'ro', 'ru', 'sk', 'sv', 'zh');
+// https://www.iso.org/obp/ui/#search
+// https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
+$AVAILABLE_LANGUAGES = array(
+  'cs' => 'Čeština (Czech)',
+  'da' => 'Danish (Dansk)',
+  'de' => 'Deutsch (German)',
+  'en' => 'English',
+  'es' => 'Español (Spanish)',
+  'fi' => 'Suomi (Finish)',
+  'fr' => 'Français (French)',
+  'hu' => 'Magyar (Hungarian)',
+  'it' => 'Italiano (Italian)',
+  'ko' => '한국어 (Korean)',
+  'lv' => 'latviešu (Latvian)',
+  'nl' => 'Nederlands (Dutch)',
+  'pl' => 'Język Polski (Polish)',
+  'pt' => 'Português (Portuguese)',
+  'ro' => 'Română (Romanian)',
+  'ru' => 'Pусский (Russian)',
+  'sk' => 'Slovenčina (Slovak)',
+  'sv' => 'Svenska (Swedish)',
+  'zh' => '中文 (Chinese)'
+);
 
 // Change theme (default: lumen)
 // Needs to be one of those: cerulean, cosmo, cyborg, darkly, flatly, journal, lumen, paper, readable, sandstone,
@@ -88,14 +110,6 @@
 // WARNING: Only lumen is loaded locally. Enabling any other theme, will download external sources.
 $DEFAULT_THEME = 'lumen';
 
-// Password complexity as regular expression
-// Min. 6 characters
-$PASSWD_REGEP = '.{6,}';
-// Min. 6 characters, which must include at least one uppercase letter, one lowercase letter and one number
-// $PASSWD_REGEP = '^(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{6,}$';
-// Min. 6 characters, which must include at least one letter and one number
-// $PASSWD_REGEP = '^(?=.*[0-9])(?=.*[A-Za-z]).{6,}$';
-
 // Show DKIM private keys - false by default
 $SHOW_DKIM_PRIV_KEYS = false;
 
@@ -122,15 +136,9 @@
 // Label for OTP devices
 $OTP_LABEL = "mailcow UI";
 
-// Default "to" address in relay test tool
-$RELAY_TO = "null@hosted.mailcow.de";
-
 // How long to wait (in s) for cURL Docker requests
 $DOCKER_TIMEOUT = 60;
 
-// Anonymize IPs logged via UI
-$ANONYMIZE_IPS = true;
-
 // Split DKIM key notation (bind format)
 $SPLIT_DKIM_255 = false;
 
@@ -203,6 +211,7 @@
     'Bad Words DE (only fired in combination with fishy TLDs)' => 'bad_words_de.map',
     'Bad Languages' => 'bad_languages.map',
     'Bulk Mail Headers' => 'bulk_header.map',
+    'Bad (Junk) Mail Headers' => 'bad_header.map',
     'Monitoring Hosts' => 'monitoring_nolog.map'
   )
 );
diff --git a/mailcow/src/mailcow-dockerized/data/web/index.php b/mailcow/src/mailcow-dockerized/data/web/index.php
index 571f189..93e72a7 100644
--- a/mailcow/src/mailcow-dockerized/data/web/index.php
+++ b/mailcow/src/mailcow-dockerized/data/web/index.php
@@ -28,12 +28,12 @@
 <div class="container">
   <div class="row">
     <div class="col-md-offset-3 col-md-6">
-      <div class="panel panel-default">
-        <div class="panel-heading"><span class="glyphicon glyphicon-user" aria-hidden="true"></span> <?= $lang['login']['login']; ?></div>
+      <div class="panel panel-default panel-login">
+        <div class="panel-heading"><i class="bi bi-person-fill"></i> <?= $lang['login']['login']; ?></div>
         <div class="panel-body">
           <div class="text-center mailcow-logo"><img src="<?=($main_logo = customize('get', 'main_logo')) ? $main_logo : '/img/cow_mailcow.svg';?>" alt="mailcow"></div>
           <?php if (!empty($UI_TEXTS['ui_announcement_text']) && in_array($UI_TEXTS['ui_announcement_type'], array('info', 'warning', 'danger')) && $UI_TEXTS['ui_announcement_active'] == 1) { ?>
-          <div class="alert alert-<?=$UI_TEXTS['ui_announcement_type'];?> rot-enc"><?=str_rot13($UI_TEXTS['ui_announcement_text']);?></div>
+          <div class="alert alert-<?=$UI_TEXTS['ui_announcement_type'];?> rot-enc ui-announcement-alert"><?=str_rot13($UI_TEXTS['ui_announcement_text']);?></div>
           <?php } ?>
           <legend><?= isset($_SESSION['oauth2_request']) ? $lang['oauth2']['authorize_app'] : $UI_TEXTS['main_name'];?></legend>
             <?php
@@ -47,42 +47,42 @@
             <div class="form-group">
               <label class="sr-only" for="login_user"><?= $lang['login']['username']; ?></label>
               <div class="input-group">
-                <div class="input-group-addon"><i class="glyphicon glyphicon-user"></i></div>
-                <input name="login_user" autocorrect="off" autocapitalize="none" type="<?=(strpos($_SESSION['index_query_string'], 'mobileconfig') !== false) ? 'email' : 'text';?>" id="login_user" class="form-control" placeholder="<?= $lang['login']['username']; ?>" required="" autofocus="">
+                <div class="input-group-addon"><i class="bi bi-person-fill"></i></div>
+                <input name="login_user" autocorrect="off" autocapitalize="none" type="<?=(strpos($_SESSION['index_query_string'], 'mobileconfig') !== false) ? 'email' : 'text';?>" id="login_user" class="form-control" placeholder="<?= $lang['login']['username']; ?>" required="" autofocus="" autocomplete="username">
               </div>
             </div>
             <div class="form-group">
               <label class="sr-only" for="pass_user"><?= $lang['login']['password']; ?></label>
               <div class="input-group">
-                <div class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></div>
-                <input name="pass_user" type="password" id="pass_user" class="form-control" placeholder="<?= $lang['login']['password']; ?>" required="">
+                <div class="input-group-addon"><i class="bi bi-lock-fill"></i></div>
+                <input name="pass_user" type="password" id="pass_user" class="form-control" placeholder="<?= $lang['login']['password']; ?>" required="" autocomplete="current-password">
               </div>
             </div>
-            <div class="form-group">
+            <div class="form-group" style="position: relative">
               <div class="btn-group">
-                <button type="submit" class="btn btn-success" value="Login"><?= $lang['login']['login']; ?></button>
                 <div class="btn-group">
-                  <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
-                  <?= $lang['login']['other_logins']; ?> <span class="caret"></span></button>
-                  <ul class="dropdown-menu" role="menu">
-                    <li><a href="#" id="fido2-login"><?= $lang['login']['fido2_webauthn']; ?></a></li>
+                  <button type="submit" class="btn btn-xs-lg btn-success" value="Login"><?= $lang['login']['login']; ?></button>
+                  <button type="button" class="btn btn-xs-lg btn-success dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+                    <span class="caret"></span>
+                  </button>
+                  <ul class="dropdown-menu">
+                    <li><a href="#" id="fido2-login" style="line-height:1.4;"><i class="bi bi-shield-fill-check"></i> <?= $lang['login']['fido2_webauthn']; ?></a></li>
                   </ul>
                 </div>
               </div>
               <?php if(!isset($_SESSION['oauth2_request'])) { ?>
-              <div class="btn-group pull-right">
-                <button type="button" <?=(isset($_SESSION['mailcow_locale']) && count($AVAILABLE_LANGUAGES) === 1) ? 'disabled="true"' : '' ?> class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                  <span class="lang-sm lang-lbl" lang="<?= $_SESSION['mailcow_locale']; ?>"></span> <span class="caret"></span>
+                <button type="button" <?=(isset($_SESSION['mailcow_locale']) && count($AVAILABLE_LANGUAGES) === 1) ? 'disabled="true"' : '' ?> class="btn btn-xs-lg btn-default pull-right dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+                  <span class="flag-icon flag-icon-<?= $_SESSION['mailcow_locale']; ?>"></span> <span class="caret"></span>
                 </button>
-                <ul class="dropdown-menu">
+                <ul class="dropdown-menu pull-right login">
                   <?php
-                  foreach ($AVAILABLE_LANGUAGES as $language) {
+                  foreach ($AVAILABLE_LANGUAGES as $c => $v) {
                   ?>
-                  <li<?= ($_SESSION['mailcow_locale'] == $language) ? ' class="active"' : ''; ?>><a href="?<?= http_build_query(array_merge($_GET, array('lang' => $language))) ?>"><span class="lang-xs lang-lbl-full" lang="<?= $language; ?>"></span></a></li>
+                  <li<?= ($_SESSION['mailcow_locale'] == $c) ? ' class="active"' : ''; ?>><a href="?<?= http_build_query(array_merge($_GET, array('lang' => $c))) ?>"><span class="flag-icon flag-icon-<?=$c;?>"></span> <?=$v;?></a></li>
                   <?php } ?>
                 </ul>
-              </div>
               <?php } ?>
+              <div class="clearfix"></div>
             </div>
             </form>
             <?php
@@ -92,13 +92,16 @@
             <?php } ?>
             <div id="fido2-alerts"></div>
           <?php if(!isset($_SESSION['oauth2_request'])) { ?>
-            <legend><span class="glyphicon glyphicon-link" aria-hidden="true"></span> <?=$UI_TEXTS['apps_name'];?></legend>
+            <legend><i class="bi bi-link-45deg"></i> <?=$UI_TEXTS['apps_name'];?></legend>
+            <div class="apps">
             <?php
             if (!empty($MAILCOW_APPS)) {
               foreach ($MAILCOW_APPS as $app) {
                 if (getenv('SKIP_SOGO') == "y" && preg_match('/^\/SOGo/i', $app['link'])) { continue; }
               ?>
-                <a href="<?= htmlspecialchars($app['link']); ?>" role="button" style="margin-bottom:3pt" title="<?= htmlspecialchars($app['description']); ?>" class="btn btn-primary"><?= htmlspecialchars($app['name']); ?></a>&nbsp;
+              <div class="media-clearfix">
+                <a href="<?=(isset($app['link'])) ? htmlspecialchars($app['link']) : '';?>" role="button" title="<?=(isset($app['description'])) ? htmlspecialchars($app['description']) : '';?>" class="btn btn-primary btn-lg btn-block"><?= htmlspecialchars($app['name']); ?></a>
+              </div>
               <?php
               }
             }
@@ -107,12 +110,15 @@
               foreach ($app_links as $row) {
                 foreach ($row as $key => $val) {
               ?>
-                <a href="<?= htmlspecialchars($val); ?>" role="button" style="margin-bottom:3pt" class="btn btn-primary"><?= htmlspecialchars($key); ?></a>&nbsp;
+                <div class="media-clearfix">
+                  <a href="<?= htmlspecialchars($val); ?>" role="button" class="btn btn-primary btn-lg btn-block"><?= htmlspecialchars($key); ?></a>
+                </div>
               <?php
                 }
               }
-            }
-          }
+            } ?>
+            </div>
+          <?php }
           ?>
         </div>
       </div>
@@ -121,7 +127,7 @@
     <div class="col-md-offset-3 col-md-6">
       <div class="panel panel-default">
         <div class="panel-heading">
-          <a data-toggle="collapse" href="#collapse1"><span class="glyphicon glyphicon-question-sign" aria-hidden="true"></span> <?= $lang['start']['help']; ?></a>
+          <a data-toggle="collapse" href="#collapse1"><i class="bi bi-patch-question-fill"></i> <?= $lang['start']['help']; ?></a>
         </div>
         <div id="collapse1" class="panel-collapse collapse">
           <div class="panel-body">
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/002-bootstrap-switch.min.js b/mailcow/src/mailcow-dockerized/data/web/js/build/002-bootstrap-switch.min.js
deleted file mode 100644
index effcb6c..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/js/build/002-bootstrap-switch.min.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
-  * bootstrap-switch - Turn checkboxes and radio buttons into toggle switches.
-  *
-  * @version v3.3.3
-  * @homepage http://www.bootstrap-switch.org
-  * @author Mattia Larentis <mattia@larentis.eu> (http://larentis.eu)
-  * @license Apache-2.0
-  */
-
-'use strict';var _createClass=function(){function a(b,c){for(var e,d=0;d<c.length;d++)e=c[d],e.enumerable=e.enumerable||!1,e.configurable=!0,'value'in e&&(e.writable=!0),Object.defineProperty(b,e.key,e)}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}();function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError('Cannot call a class as a function')}(function(a,b){var c=function(){function d(e){var g=this,f=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck(this,d),this.$element=a(e),this.options=a.extend({},a.fn.bootstrapSwitch.defaults,this._getElementOptions(),f),this.prevOptions={},this.$wrapper=a('<div>',{class:function _class(){var h=[];return h.push(g.options.state?'on':'off'),g.options.size&&h.push(g.options.size),g.options.disabled&&h.push('disabled'),g.options.readonly&&h.push('readonly'),g.options.indeterminate&&h.push('indeterminate'),g.options.inverse&&h.push('inverse'),g.$element.attr('id')&&h.push('id-'+g.$element.attr('id')),h.map(g._getClass.bind(g)).concat([g.options.baseClass],g._getClasses(g.options.wrapperClass)).join(' ')}}),this.$container=a('<div>',{class:this._getClass('container')}),this.$on=a('<span>',{html:this.options.onText,class:this._getClass('handle-on')+' '+this._getClass(this.options.onColor)}),this.$off=a('<span>',{html:this.options.offText,class:this._getClass('handle-off')+' '+this._getClass(this.options.offColor)}),this.$label=a('<span>',{html:this.options.labelText,class:this._getClass('label')}),this.$element.on('init.bootstrapSwitch',this.options.onInit.bind(this,e)),this.$element.on('switchChange.bootstrapSwitch',function(){for(var j=arguments.length,h=Array(j),k=0;k<j;k++)h[k]=arguments[k];!1===g.options.onSwitchChange.apply(e,h)&&(g.$element.is(':radio')?a('[name="'+g.$element.attr('name')+'"]').trigger('previousState.bootstrapSwitch',!0):g.$element.trigger('previousState.bootstrapSwitch',!0))}),this.$container=this.$element.wrap(this.$container).parent(),this.$wrapper=this.$container.wrap(this.$wrapper).parent(),this.$element.before(this.options.inverse?this.$off:this.$on).before(this.$label).before(this.options.inverse?this.$on:this.$off),this.options.indeterminate&&this.$element.prop('indeterminate',!0),this._init(),this._elementHandlers(),this._handleHandlers(),this._labelHandlers(),this._formHandler(),this._externalLabelHandler(),this.$element.trigger('init.bootstrapSwitch',this.options.state)}return _createClass(d,[{key:'setPrevOptions',value:function setPrevOptions(){this.prevOptions=Object.assign({},this.options)}},{key:'state',value:function state(e,f){return'undefined'==typeof e?this.options.state:this.options.disabled||this.options.readonly||this.options.state&&!this.options.radioAllOff&&this.$element.is(':radio')?this.$element:(this.$element.is(':radio')?a('[name="'+this.$element.attr('name')+'"]').trigger('setPreviousOptions.bootstrapSwitch'):this.$element.trigger('setPreviousOptions.bootstrapSwitch'),this.options.indeterminate&&this.indeterminate(!1),this.$element.prop('checked',!!e).trigger('change.bootstrapSwitch',f),this.$element)}},{key:'toggleState',value:function toggleState(e){return this.options.disabled||this.options.readonly?this.$element:this.options.indeterminate?(this.indeterminate(!1),this.state(!0)):this.$element.prop('checked',!this.options.state).trigger('change.bootstrapSwitch',e)}},{key:'size',value:function size(e){return'undefined'==typeof e?this.options.size:(null!=this.options.size&&this.$wrapper.removeClass(this._getClass(this.options.size)),e&&this.$wrapper.addClass(this._getClass(e)),this._width(),this._containerPosition(),this.options.size=e,this.$element)}},{key:'animate',value:function animate(e){return'undefined'==typeof e?this.options.animate:this.options.animate===!!e?this.$element:this.toggleAnimate()}},{key:'toggleAnimate',value:function toggleAnimate(){return this.options.animate=!this.options.animate,this.$wrapper.toggleClass(this._getClass('animate')),this.$element}},{key:'disabled',value:function disabled(e){return'undefined'==typeof e?this.options.disabled:this.options.disabled===!!e?this.$element:this.toggleDisabled()}},{key:'toggleDisabled',value:function toggleDisabled(){return this.options.disabled=!this.options.disabled,this.$element.prop('disabled',this.options.disabled),this.$wrapper.toggleClass(this._getClass('disabled')),this.$element}},{key:'readonly',value:function readonly(e){return'undefined'==typeof e?this.options.readonly:this.options.readonly===!!e?this.$element:this.toggleReadonly()}},{key:'toggleReadonly',value:function toggleReadonly(){return this.options.readonly=!this.options.readonly,this.$element.prop('readonly',this.options.readonly),this.$wrapper.toggleClass(this._getClass('readonly')),this.$element}},{key:'indeterminate',value:function indeterminate(e){return'undefined'==typeof e?this.options.indeterminate:this.options.indeterminate===!!e?this.$element:this.toggleIndeterminate()}},{key:'toggleIndeterminate',value:function toggleIndeterminate(){return this.options.indeterminate=!this.options.indeterminate,this.$element.prop('indeterminate',this.options.indeterminate),this.$wrapper.toggleClass(this._getClass('indeterminate')),this._containerPosition(),this.$element}},{key:'inverse',value:function inverse(e){return'undefined'==typeof e?this.options.inverse:this.options.inverse===!!e?this.$element:this.toggleInverse()}},{key:'toggleInverse',value:function toggleInverse(){this.$wrapper.toggleClass(this._getClass('inverse'));var e=this.$on.clone(!0),f=this.$off.clone(!0);return this.$on.replaceWith(f),this.$off.replaceWith(e),this.$on=f,this.$off=e,this.options.inverse=!this.options.inverse,this.$element}},{key:'onColor',value:function onColor(e){return'undefined'==typeof e?this.options.onColor:(this.options.onColor&&this.$on.removeClass(this._getClass(this.options.onColor)),this.$on.addClass(this._getClass(e)),this.options.onColor=e,this.$element)}},{key:'offColor',value:function offColor(e){return'undefined'==typeof e?this.options.offColor:(this.options.offColor&&this.$off.removeClass(this._getClass(this.options.offColor)),this.$off.addClass(this._getClass(e)),this.options.offColor=e,this.$element)}},{key:'onText',value:function onText(e){return'undefined'==typeof e?this.options.onText:(this.$on.html(e),this._width(),this._containerPosition(),this.options.onText=e,this.$element)}},{key:'offText',value:function offText(e){return'undefined'==typeof e?this.options.offText:(this.$off.html(e),this._width(),this._containerPosition(),this.options.offText=e,this.$element)}},{key:'labelText',value:function labelText(e){return'undefined'==typeof e?this.options.labelText:(this.$label.html(e),this._width(),this.options.labelText=e,this.$element)}},{key:'handleWidth',value:function handleWidth(e){return'undefined'==typeof e?this.options.handleWidth:(this.options.handleWidth=e,this._width(),this._containerPosition(),this.$element)}},{key:'labelWidth',value:function labelWidth(e){return'undefined'==typeof e?this.options.labelWidth:(this.options.labelWidth=e,this._width(),this._containerPosition(),this.$element)}},{key:'baseClass',value:function baseClass(){return this.options.baseClass}},{key:'wrapperClass',value:function wrapperClass(e){return'undefined'==typeof e?this.options.wrapperClass:(e||(e=a.fn.bootstrapSwitch.defaults.wrapperClass),this.$wrapper.removeClass(this._getClasses(this.options.wrapperClass).join(' ')),this.$wrapper.addClass(this._getClasses(e).join(' ')),this.options.wrapperClass=e,this.$element)}},{key:'radioAllOff',value:function radioAllOff(e){if('undefined'==typeof e)return this.options.radioAllOff;var f=!!e;return this.options.radioAllOff===f?this.$element:(this.options.radioAllOff=f,this.$element)}},{key:'onInit',value:function onInit(e){return'undefined'==typeof e?this.options.onInit:(e||(e=a.fn.bootstrapSwitch.defaults.onInit),this.options.onInit=e,this.$element)}},{key:'onSwitchChange',value:function onSwitchChange(e){return'undefined'==typeof e?this.options.onSwitchChange:(e||(e=a.fn.bootstrapSwitch.defaults.onSwitchChange),this.options.onSwitchChange=e,this.$element)}},{key:'destroy',value:function destroy(){var e=this.$element.closest('form');return e.length&&e.off('reset.bootstrapSwitch').removeData('bootstrap-switch'),this.$container.children().not(this.$element).remove(),this.$element.unwrap().unwrap().off('.bootstrapSwitch').removeData('bootstrap-switch'),this.$element}},{key:'_getElementOptions',value:function _getElementOptions(){return{state:this.$element.is(':checked'),size:this.$element.data('size'),animate:this.$element.data('animate'),disabled:this.$element.is(':disabled'),readonly:this.$element.is('[readonly]'),indeterminate:this.$element.data('indeterminate'),inverse:this.$element.data('inverse'),radioAllOff:this.$element.data('radio-all-off'),onColor:this.$element.data('on-color'),offColor:this.$element.data('off-color'),onText:this.$element.data('on-text'),offText:this.$element.data('off-text'),labelText:this.$element.data('label-text'),handleWidth:this.$element.data('handle-width'),labelWidth:this.$element.data('label-width'),baseClass:this.$element.data('base-class'),wrapperClass:this.$element.data('wrapper-class')}}},{key:'_width',value:function _width(){var g=this,e=this.$on.add(this.$off).add(this.$label).css('width',''),f=void 0;return f='auto'===this.options.handleWidth?Math.round(Math.max(this.$on.width(),this.$off.width())):this.options.handleWidth,e.width(f),this.$label.width(function(h,j){return'auto'===g.options.labelWidth?j<f?f:j:g.options.labelWidth}),this._handleWidth=this.$on.outerWidth(),this._labelWidth=this.$label.outerWidth(),this.$container.width(2*this._handleWidth+this._labelWidth),this.$wrapper.width(this._handleWidth+this._labelWidth)}},{key:'_containerPosition',value:function _containerPosition(){var g=this,e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:this.options.state,f=arguments[1];this.$container.css('margin-left',function(){var h=[0,'-'+g._handleWidth+'px'];return g.options.indeterminate?'-'+g._handleWidth/2+'px':e?g.options.inverse?h[1]:h[0]:g.options.inverse?h[0]:h[1]})}},{key:'_init',value:function _init(){var f=this,e=function(){f.setPrevOptions(),f._width(),f._containerPosition(),setTimeout(function(){if(f.options.animate)return f.$wrapper.addClass(f._getClass('animate'))},50)};if(this.$wrapper.is(':visible'))return void e();var g=b.setInterval(function(){if(f.$wrapper.is(':visible'))return e(),b.clearInterval(g)},50)}},{key:'_elementHandlers',value:function _elementHandlers(){var e=this;return this.$element.on({'setPreviousOptions.bootstrapSwitch':this.setPrevOptions.bind(this),'previousState.bootstrapSwitch':function previousStateBootstrapSwitch(){e.options=e.prevOptions,e.options.indeterminate&&e.$wrapper.addClass(e._getClass('indeterminate')),e.$element.prop('checked',e.options.state).trigger('change.bootstrapSwitch',!0)},'change.bootstrapSwitch':function changeBootstrapSwitch(f,g){f.preventDefault(),f.stopImmediatePropagation();var h=e.$element.is(':checked');e._containerPosition(h),h===e.options.state||(e.options.state=h,e.$wrapper.toggleClass(e._getClass('off')).toggleClass(e._getClass('on')),!g&&(e.$element.is(':radio')&&a('[name="'+e.$element.attr('name')+'"]').not(e.$element).prop('checked',!1).trigger('change.bootstrapSwitch',!0),e.$element.trigger('switchChange.bootstrapSwitch',[h])))},'focus.bootstrapSwitch':function focusBootstrapSwitch(f){f.preventDefault(),e.$wrapper.addClass(e._getClass('focused'))},'blur.bootstrapSwitch':function blurBootstrapSwitch(f){f.preventDefault(),e.$wrapper.removeClass(e._getClass('focused'))},'keydown.bootstrapSwitch':function keydownBootstrapSwitch(f){!f.which||e.options.disabled||e.options.readonly||(37===f.which||39===f.which)&&(f.preventDefault(),f.stopImmediatePropagation(),e.state(39===f.which))}})}},{key:'_handleHandlers',value:function _handleHandlers(){var e=this;return this.$on.on('click.bootstrapSwitch',function(f){return f.preventDefault(),f.stopPropagation(),e.state(!1),e.$element.trigger('focus.bootstrapSwitch')}),this.$off.on('click.bootstrapSwitch',function(f){return f.preventDefault(),f.stopPropagation(),e.state(!0),e.$element.trigger('focus.bootstrapSwitch')})}},{key:'_labelHandlers',value:function _labelHandlers(){var f=this;this.$label.on({click:function click(g){g.stopPropagation()},'mousedown.bootstrapSwitch touchstart.bootstrapSwitch':function mousedownBootstrapSwitchTouchstartBootstrapSwitch(g){f._dragStart||f.options.disabled||f.options.readonly||(g.preventDefault(),g.stopPropagation(),f._dragStart=(g.pageX||g.originalEvent.touches[0].pageX)-parseInt(f.$container.css('margin-left'),10),f.options.animate&&f.$wrapper.removeClass(f._getClass('animate')),f.$element.trigger('focus.bootstrapSwitch'))},'mousemove.bootstrapSwitch touchmove.bootstrapSwitch':function mousemoveBootstrapSwitchTouchmoveBootstrapSwitch(g){if(null!=f._dragStart){var h=(g.pageX||g.originalEvent.touches[0].pageX)-f._dragStart;g.preventDefault(),h<-f._handleWidth||0<h||(f._dragEnd=h,f.$container.css('margin-left',f._dragEnd+'px'))}},'mouseup.bootstrapSwitch touchend.bootstrapSwitch':function mouseupBootstrapSwitchTouchendBootstrapSwitch(g){if(f._dragStart){if(g.preventDefault(),f.options.animate&&f.$wrapper.addClass(f._getClass('animate')),f._dragEnd){var h=f._dragEnd>-(f._handleWidth/2);f._dragEnd=!1,f.state(f.options.inverse?!h:h)}else f.state(!f.options.state);f._dragStart=!1}},'mouseleave.bootstrapSwitch':function mouseleaveBootstrapSwitch(){f.$label.trigger('mouseup.bootstrapSwitch')}})}},{key:'_externalLabelHandler',value:function _externalLabelHandler(){var f=this,e=this.$element.closest('label');e.on('click',function(g){g.preventDefault(),g.stopImmediatePropagation(),g.target===e[0]&&f.toggleState()})}},{key:'_formHandler',value:function _formHandler(){var e=this.$element.closest('form');e.data('bootstrap-switch')||e.on('reset.bootstrapSwitch',function(){b.setTimeout(function(){e.find('input').filter(function(){return a(this).data('bootstrap-switch')}).each(function(){return a(this).bootstrapSwitch('state',this.checked)})},1)}).data('bootstrap-switch',!0)}},{key:'_getClass',value:function _getClass(e){return this.options.baseClass+'-'+e}},{key:'_getClasses',value:function _getClasses(e){return a.isArray(e)?e.map(this._getClass.bind(this)):[this._getClass(e)]}}]),d}();a.fn.bootstrapSwitch=function(d){for(var f=arguments.length,e=Array(1<f?f-1:0),g=1;g<f;g++)e[g-1]=arguments[g];var h=this;return this.each(function(){var j=a(this),k=j.data('bootstrap-switch');k||(k=new c(this,d),j.data('bootstrap-switch',k)),'string'==typeof d&&(h=k[d].apply(k,e))}),h},a.fn.bootstrapSwitch.Constructor=c,a.fn.bootstrapSwitch.defaults={state:!0,size:null,animate:!0,disabled:!1,readonly:!1,indeterminate:!1,inverse:!1,radioAllOff:!1,onColor:'primary',offColor:'default',onText:'ON',offText:'OFF',labelText:'&nbsp',handleWidth:'auto',labelWidth:'auto',baseClass:'bootstrap-switch',wrapperClass:'wrapper',onInit:function onInit(){},onSwitchChange:function onSwitchChange(){}}})(window.jQuery,window);
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/003-bootstrap-slider.min.js b/mailcow/src/mailcow-dockerized/data/web/js/build/003-bootstrap-slider.min.js
deleted file mode 100644
index 633988c..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/js/build/003-bootstrap-slider.min.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*! =======================================================
-                      VERSION  10.6.1              
-========================================================= */
-"use strict";var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},windowIsDefined="object"===("undefined"==typeof window?"undefined":_typeof(window));!function(a){if("function"==typeof define&&define.amd)define(["jquery"],a);else if("object"===("undefined"==typeof module?"undefined":_typeof(module))&&module.exports){var b;try{b=require("jquery")}catch(c){b=null}module.exports=a(b)}else window&&(window.Slider=a(window.jQuery))}(function(a){var b="slider",c="bootstrapSlider";windowIsDefined&&!window.console&&(window.console={}),windowIsDefined&&!window.console.log&&(window.console.log=function(){}),windowIsDefined&&!window.console.warn&&(window.console.warn=function(){});var d;return function(a){function b(){}function c(a){function c(b){b.prototype.option||(b.prototype.option=function(b){a.isPlainObject(b)&&(this.options=a.extend(!0,this.options,b))})}function e(b,c){a.fn[b]=function(e){if("string"==typeof e){for(var g=d.call(arguments,1),h=0,i=this.length;i>h;h++){var j=this[h],k=a.data(j,b);if(k)if(a.isFunction(k[e])&&"_"!==e.charAt(0)){var l=k[e].apply(k,g);if(void 0!==l&&l!==k)return l}else f("no such method '"+e+"' for "+b+" instance");else f("cannot call methods on "+b+" prior to initialization; attempted to call '"+e+"'")}return this}var m=this.map(function(){var d=a.data(this,b);return d?(d.option(e),d._init()):(d=new c(this,e),a.data(this,b,d)),a(this)});return!m||m.length>1?m:m[0]}}if(a){var f="undefined"==typeof console?b:function(a){console.error(a)};return a.bridget=function(a,b){c(b),e(a,b)},a.bridget}}var d=Array.prototype.slice;c(a)}(a),function(a){function e(b,c){function d(a,b){var c="data-slider-"+b.replace(/_/g,"-"),d=a.getAttribute(c);try{return JSON.parse(d)}catch(e){return d}}this._state={value:null,enabled:null,offset:null,size:null,percentage:null,inDrag:!1,over:!1,tickIndex:null},this.ticksCallbackMap={},this.handleCallbackMap={},"string"==typeof b?this.element=document.querySelector(b):b instanceof HTMLElement&&(this.element=b),c=c?c:{};for(var e=Object.keys(this.defaultOptions),f=c.hasOwnProperty("min"),g=c.hasOwnProperty("max"),i=0;i<e.length;i++){var j=e[i],k=c[j];k="undefined"!=typeof k?k:d(this.element,j),k=null!==k?k:this.defaultOptions[j],this.options||(this.options={}),this.options[j]=k}if(this.ticksAreValid=Array.isArray(this.options.ticks)&&this.options.ticks.length>0,this.ticksAreValid||(this.options.lock_to_ticks=!1),"auto"===this.options.rtl){var l=window.getComputedStyle(this.element);null!=l?this.options.rtl="rtl"===l.direction:this.options.rtl="rtl"===this.element.style.direction}"vertical"!==this.options.orientation||"top"!==this.options.tooltip_position&&"bottom"!==this.options.tooltip_position?"horizontal"!==this.options.orientation||"left"!==this.options.tooltip_position&&"right"!==this.options.tooltip_position||(this.options.tooltip_position="top"):this.options.rtl?this.options.tooltip_position="left":this.options.tooltip_position="right";var m,n,o,p,q,r=this.element.style.width,s=!1,t=this.element.parentNode;if(this.sliderElem)s=!0;else{this.sliderElem=document.createElement("div"),this.sliderElem.className="slider";var u=document.createElement("div");u.className="slider-track",n=document.createElement("div"),n.className="slider-track-low",m=document.createElement("div"),m.className="slider-selection",o=document.createElement("div"),o.className="slider-track-high",p=document.createElement("div"),p.className="slider-handle min-slider-handle",p.setAttribute("role","slider"),p.setAttribute("aria-valuemin",this.options.min),p.setAttribute("aria-valuemax",this.options.max),q=document.createElement("div"),q.className="slider-handle max-slider-handle",q.setAttribute("role","slider"),q.setAttribute("aria-valuemin",this.options.min),q.setAttribute("aria-valuemax",this.options.max),u.appendChild(n),u.appendChild(m),u.appendChild(o),this.rangeHighlightElements=[];var v=this.options.rangeHighlights;if(Array.isArray(v)&&v.length>0)for(var w=0;w<v.length;w++){var x=document.createElement("div"),y=v[w]["class"]||"";x.className="slider-rangeHighlight slider-selection "+y,this.rangeHighlightElements.push(x),u.appendChild(x)}var z=Array.isArray(this.options.labelledby);if(z&&this.options.labelledby[0]&&p.setAttribute("aria-labelledby",this.options.labelledby[0]),z&&this.options.labelledby[1]&&q.setAttribute("aria-labelledby",this.options.labelledby[1]),!z&&this.options.labelledby&&(p.setAttribute("aria-labelledby",this.options.labelledby),q.setAttribute("aria-labelledby",this.options.labelledby)),this.ticks=[],Array.isArray(this.options.ticks)&&this.options.ticks.length>0){for(this.ticksContainer=document.createElement("div"),this.ticksContainer.className="slider-tick-container",i=0;i<this.options.ticks.length;i++){var A=document.createElement("div");if(A.className="slider-tick",this.options.ticks_tooltip){var B=this._addTickListener(),C=B.addMouseEnter(this,A,i),D=B.addMouseLeave(this,A);this.ticksCallbackMap[i]={mouseEnter:C,mouseLeave:D}}this.ticks.push(A),this.ticksContainer.appendChild(A)}m.className+=" tick-slider-selection"}if(this.tickLabels=[],Array.isArray(this.options.ticks_labels)&&this.options.ticks_labels.length>0)for(this.tickLabelContainer=document.createElement("div"),this.tickLabelContainer.className="slider-tick-label-container",i=0;i<this.options.ticks_labels.length;i++){var E=document.createElement("div"),F=0===this.options.ticks_positions.length,G=this.options.reversed&&F?this.options.ticks_labels.length-(i+1):i;E.className="slider-tick-label",E.innerHTML=this.options.ticks_labels[G],this.tickLabels.push(E),this.tickLabelContainer.appendChild(E)}var H=function(a){var b=document.createElement("div");b.className="tooltip-arrow";var c=document.createElement("div");c.className="tooltip-inner",a.appendChild(b),a.appendChild(c)},I=document.createElement("div");I.className="tooltip tooltip-main",I.setAttribute("role","presentation"),H(I);var J=document.createElement("div");J.className="tooltip tooltip-min",J.setAttribute("role","presentation"),H(J);var K=document.createElement("div");K.className="tooltip tooltip-max",K.setAttribute("role","presentation"),H(K),this.sliderElem.appendChild(u),this.sliderElem.appendChild(I),this.sliderElem.appendChild(J),this.sliderElem.appendChild(K),this.tickLabelContainer&&this.sliderElem.appendChild(this.tickLabelContainer),this.ticksContainer&&this.sliderElem.appendChild(this.ticksContainer),this.sliderElem.appendChild(p),this.sliderElem.appendChild(q),t.insertBefore(this.sliderElem,this.element),this.element.style.display="none"}if(a&&(this.$element=a(this.element),this.$sliderElem=a(this.sliderElem)),this.eventToCallbackMap={},this.sliderElem.id=this.options.id,this.touchCapable="ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,this.touchX=0,this.touchY=0,this.tooltip=this.sliderElem.querySelector(".tooltip-main"),this.tooltipInner=this.tooltip.querySelector(".tooltip-inner"),this.tooltip_min=this.sliderElem.querySelector(".tooltip-min"),this.tooltipInner_min=this.tooltip_min.querySelector(".tooltip-inner"),this.tooltip_max=this.sliderElem.querySelector(".tooltip-max"),this.tooltipInner_max=this.tooltip_max.querySelector(".tooltip-inner"),h[this.options.scale]&&(this.options.scale=h[this.options.scale]),s===!0&&(this._removeClass(this.sliderElem,"slider-horizontal"),this._removeClass(this.sliderElem,"slider-vertical"),this._removeClass(this.sliderElem,"slider-rtl"),this._removeClass(this.tooltip,"hide"),this._removeClass(this.tooltip_min,"hide"),this._removeClass(this.tooltip_max,"hide"),["left","right","top","width","height"].forEach(function(a){this._removeProperty(this.trackLow,a),this._removeProperty(this.trackSelection,a),this._removeProperty(this.trackHigh,a)},this),[this.handle1,this.handle2].forEach(function(a){this._removeProperty(a,"left"),this._removeProperty(a,"right"),this._removeProperty(a,"top")},this),[this.tooltip,this.tooltip_min,this.tooltip_max].forEach(function(a){this._removeProperty(a,"left"),this._removeProperty(a,"right"),this._removeProperty(a,"top"),this._removeClass(a,"right"),this._removeClass(a,"left"),this._removeClass(a,"top")},this)),"vertical"===this.options.orientation?(this._addClass(this.sliderElem,"slider-vertical"),this.stylePos="top",this.mousePos="pageY",this.sizePos="offsetHeight"):(this._addClass(this.sliderElem,"slider-horizontal"),this.sliderElem.style.width=r,this.options.orientation="horizontal",this.options.rtl?this.stylePos="right":this.stylePos="left",this.mousePos="clientX",this.sizePos="offsetWidth"),this.options.rtl&&this._addClass(this.sliderElem,"slider-rtl"),this._setTooltipPosition(),Array.isArray(this.options.ticks)&&this.options.ticks.length>0&&(g||(this.options.max=Math.max.apply(Math,this.options.ticks)),f||(this.options.min=Math.min.apply(Math,this.options.ticks))),Array.isArray(this.options.value)?(this.options.range=!0,this._state.value=this.options.value):this.options.range?this._state.value=[this.options.value,this.options.max]:this._state.value=this.options.value,this.trackLow=n||this.trackLow,this.trackSelection=m||this.trackSelection,this.trackHigh=o||this.trackHigh,"none"===this.options.selection?(this._addClass(this.trackLow,"hide"),this._addClass(this.trackSelection,"hide"),this._addClass(this.trackHigh,"hide")):("after"===this.options.selection||"before"===this.options.selection)&&(this._removeClass(this.trackLow,"hide"),this._removeClass(this.trackSelection,"hide"),this._removeClass(this.trackHigh,"hide")),this.handle1=p||this.handle1,this.handle2=q||this.handle2,s===!0)for(this._removeClass(this.handle1,"round triangle"),this._removeClass(this.handle2,"round triangle hide"),i=0;i<this.ticks.length;i++)this._removeClass(this.ticks[i],"round triangle hide");var L=["round","triangle","custom"],M=-1!==L.indexOf(this.options.handle);if(M)for(this._addClass(this.handle1,this.options.handle),this._addClass(this.handle2,this.options.handle),i=0;i<this.ticks.length;i++)this._addClass(this.ticks[i],this.options.handle);if(this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos],this.setValue(this._state.value),this.handle1Keydown=this._keydown.bind(this,0),this.handle1.addEventListener("keydown",this.handle1Keydown,!1),this.handle2Keydown=this._keydown.bind(this,1),this.handle2.addEventListener("keydown",this.handle2Keydown,!1),this.mousedown=this._mousedown.bind(this),this.touchstart=this._touchstart.bind(this),this.touchmove=this._touchmove.bind(this),this.touchCapable&&(this.sliderElem.addEventListener("touchstart",this.touchstart,!1),this.sliderElem.addEventListener("touchmove",this.touchmove,!1)),this.sliderElem.addEventListener("mousedown",this.mousedown,!1),this.resize=this._resize.bind(this),window.addEventListener("resize",this.resize,!1),"hide"===this.options.tooltip)this._addClass(this.tooltip,"hide"),this._addClass(this.tooltip_min,"hide"),this._addClass(this.tooltip_max,"hide");else if("always"===this.options.tooltip)this._showTooltip(),this._alwaysShowTooltip=!0;else{if(this.showTooltip=this._showTooltip.bind(this),this.hideTooltip=this._hideTooltip.bind(this),this.options.ticks_tooltip){var N=this._addTickListener(),O=N.addMouseEnter(this,this.handle1),P=N.addMouseLeave(this,this.handle1);this.handleCallbackMap.handle1={mouseEnter:O,mouseLeave:P},O=N.addMouseEnter(this,this.handle2),P=N.addMouseLeave(this,this.handle2),this.handleCallbackMap.handle2={mouseEnter:O,mouseLeave:P}}else this.sliderElem.addEventListener("mouseenter",this.showTooltip,!1),this.sliderElem.addEventListener("mouseleave",this.hideTooltip,!1),this.touchCapable&&(this.sliderElem.addEventListener("touchstart",this.showTooltip,!1),this.sliderElem.addEventListener("touchmove",this.showTooltip,!1),this.sliderElem.addEventListener("touchend",this.hideTooltip,!1));this.handle1.addEventListener("focus",this.showTooltip,!1),this.handle1.addEventListener("blur",this.hideTooltip,!1),this.handle2.addEventListener("focus",this.showTooltip,!1),this.handle2.addEventListener("blur",this.hideTooltip,!1),this.touchCapable&&(this.handle1.addEventListener("touchstart",this.showTooltip,!1),this.handle1.addEventListener("touchmove",this.showTooltip,!1),this.handle1.addEventListener("touchend",this.hideTooltip,!1),this.handle2.addEventListener("touchstart",this.showTooltip,!1),this.handle2.addEventListener("touchmove",this.showTooltip,!1),this.handle2.addEventListener("touchend",this.hideTooltip,!1))}this.options.enabled?this.enable():this.disable()}var f=void 0,g={formatInvalidInputErrorMsg:function(a){return"Invalid input value '"+a+"' passed in"},callingContextNotSliderInstance:"Calling context element does not have instance of Slider bound to it. Check your code to make sure the JQuery object returned from the call to the slider() initializer is calling the method"},h={linear:{getValue:function(a,b){return a<b.min?b.min:a>b.max?b.max:a},toValue:function(a){var b=a/100*(this.options.max-this.options.min),c=!0;if(this.options.ticks_positions.length>0){for(var d,e,f,g=0,i=1;i<this.options.ticks_positions.length;i++)if(a<=this.options.ticks_positions[i]){d=this.options.ticks[i-1],f=this.options.ticks_positions[i-1],e=this.options.ticks[i],g=this.options.ticks_positions[i];break}var j=(a-f)/(g-f);b=d+j*(e-d),c=!1}var k=c?this.options.min:0,l=k+Math.round(b/this.options.step)*this.options.step;return h.linear.getValue(l,this.options)},toPercentage:function(a){if(this.options.max===this.options.min)return 0;if(this.options.ticks_positions.length>0){for(var b,c,d,e=0,f=0;f<this.options.ticks.length;f++)if(a<=this.options.ticks[f]){b=f>0?this.options.ticks[f-1]:0,d=f>0?this.options.ticks_positions[f-1]:0,c=this.options.ticks[f],e=this.options.ticks_positions[f];break}if(f>0){var g=(a-b)/(c-b);return d+g*(e-d)}}return 100*(a-this.options.min)/(this.options.max-this.options.min)}},logarithmic:{toValue:function(a){var b=1-this.options.min,c=Math.log(this.options.min+b),d=Math.log(this.options.max+b),e=Math.exp(c+(d-c)*a/100)-b;return Math.round(e)===d?d:(e=this.options.min+Math.round((e-this.options.min)/this.options.step)*this.options.step,h.linear.getValue(e,this.options))},toPercentage:function(a){if(this.options.max===this.options.min)return 0;var b=1-this.options.min,c=Math.log(this.options.max+b),d=Math.log(this.options.min+b),e=Math.log(a+b);return 100*(e-d)/(c-d)}}};d=function(a,b){return e.call(this,a,b),this},d.prototype={_init:function(){},constructor:d,defaultOptions:{id:"",min:0,max:10,step:1,precision:0,orientation:"horizontal",value:5,range:!1,selection:"before",tooltip:"show",tooltip_split:!1,lock_to_ticks:!1,handle:"round",reversed:!1,rtl:"auto",enabled:!0,formatter:function(a){return Array.isArray(a)?a[0]+" : "+a[1]:a},natural_arrow_keys:!1,ticks:[],ticks_positions:[],ticks_labels:[],ticks_snap_bounds:0,ticks_tooltip:!1,scale:"linear",focus:!1,tooltip_position:null,labelledby:null,rangeHighlights:[]},getElement:function(){return this.sliderElem},getValue:function(){return this.options.range?this._state.value:this._state.value[0]},setValue:function(a,b,c){a||(a=0);var d=this.getValue();this._state.value=this._validateInputValue(a);var e=this._applyPrecision.bind(this);this.options.range?(this._state.value[0]=e(this._state.value[0]),this._state.value[1]=e(this._state.value[1]),this.ticksAreValid&&this.options.lock_to_ticks&&(this._state.value[0]=this.options.ticks[this._getClosestTickIndex(this._state.value[0])],this._state.value[1]=this.options.ticks[this._getClosestTickIndex(this._state.value[1])]),this._state.value[0]=Math.max(this.options.min,Math.min(this.options.max,this._state.value[0])),this._state.value[1]=Math.max(this.options.min,Math.min(this.options.max,this._state.value[1]))):(this._state.value=e(this._state.value),this.ticksAreValid&&this.options.lock_to_ticks&&(this._state.value=this.options.ticks[this._getClosestTickIndex(this._state.value)]),this._state.value=[Math.max(this.options.min,Math.min(this.options.max,this._state.value))],this._addClass(this.handle2,"hide"),"after"===this.options.selection?this._state.value[1]=this.options.max:this._state.value[1]=this.options.min),this._setTickIndex(),this.options.max>this.options.min?this._state.percentage=[this._toPercentage(this._state.value[0]),this._toPercentage(this._state.value[1]),100*this.options.step/(this.options.max-this.options.min)]:this._state.percentage=[0,0,100],this._layout();var f=this.options.range?this._state.value:this._state.value[0];this._setDataVal(f),b===!0&&this._trigger("slide",f);var g=!1;return g=Array.isArray(f)?d[0]!==f[0]||d[1]!==f[1]:d!==f,g&&c===!0&&this._trigger("change",{oldValue:d,newValue:f}),this},destroy:function(){this._removeSliderEventHandlers(),this.sliderElem.parentNode.removeChild(this.sliderElem),this.element.style.display="",this._cleanUpEventCallbacksMap(),this.element.removeAttribute("data"),a&&(this._unbindJQueryEventHandlers(),f===b&&this.$element.removeData(f),this.$element.removeData(c))},disable:function(){return this._state.enabled=!1,this.handle1.removeAttribute("tabindex"),this.handle2.removeAttribute("tabindex"),this._addClass(this.sliderElem,"slider-disabled"),this._trigger("slideDisabled"),this},enable:function(){return this._state.enabled=!0,this.handle1.setAttribute("tabindex",0),this.handle2.setAttribute("tabindex",0),this._removeClass(this.sliderElem,"slider-disabled"),this._trigger("slideEnabled"),this},toggle:function(){return this._state.enabled?this.disable():this.enable(),this},isEnabled:function(){return this._state.enabled},on:function(a,b){return this._bindNonQueryEventHandler(a,b),this},off:function(b,c){a?(this.$element.off(b,c),this.$sliderElem.off(b,c)):this._unbindNonQueryEventHandler(b,c)},getAttribute:function(a){return a?this.options[a]:this.options},setAttribute:function(a,b){return this.options[a]=b,this},refresh:function(d){var g=this.getValue();return this._removeSliderEventHandlers(),e.call(this,this.element,this.options),d&&d.useCurrentValue===!0&&this.setValue(g),a&&(f===b?(a.data(this.element,b,this),a.data(this.element,c,this)):a.data(this.element,c,this)),this},relayout:function(){return this._resize(),this},_removeTooltipListener:function(a,b){this.handle1.removeEventListener(a,b,!1),this.handle2.removeEventListener(a,b,!1)},_removeSliderEventHandlers:function(){if(this.handle1.removeEventListener("keydown",this.handle1Keydown,!1),this.handle2.removeEventListener("keydown",this.handle2Keydown,!1),this.options.ticks_tooltip){for(var a=this.ticksContainer.getElementsByClassName("slider-tick"),b=0;b<a.length;b++)a[b].removeEventListener("mouseenter",this.ticksCallbackMap[b].mouseEnter,!1),a[b].removeEventListener("mouseleave",this.ticksCallbackMap[b].mouseLeave,!1);this.handleCallbackMap.handle1&&this.handleCallbackMap.handle2&&(this.handle1.removeEventListener("mouseenter",this.handleCallbackMap.handle1.mouseEnter,!1),this.handle2.removeEventListener("mouseenter",this.handleCallbackMap.handle2.mouseEnter,!1),this.handle1.removeEventListener("mouseleave",this.handleCallbackMap.handle1.mouseLeave,!1),this.handle2.removeEventListener("mouseleave",this.handleCallbackMap.handle2.mouseLeave,!1))}this.handleCallbackMap=null,this.ticksCallbackMap=null,this.showTooltip&&this._removeTooltipListener("focus",this.showTooltip),this.hideTooltip&&this._removeTooltipListener("blur",this.hideTooltip),this.showTooltip&&this.sliderElem.removeEventListener("mouseenter",this.showTooltip,!1),this.hideTooltip&&this.sliderElem.removeEventListener("mouseleave",this.hideTooltip,!1),this.sliderElem.removeEventListener("mousedown",this.mousedown,!1),this.touchCapable&&(this.showTooltip&&(this.handle1.removeEventListener("touchstart",this.showTooltip,!1),this.handle1.removeEventListener("touchmove",this.showTooltip,!1),this.handle2.removeEventListener("touchstart",this.showTooltip,!1),this.handle2.removeEventListener("touchmove",this.showTooltip,!1)),this.hideTooltip&&(this.handle1.removeEventListener("touchend",this.hideTooltip,!1),this.handle2.removeEventListener("touchend",this.hideTooltip,!1)),this.showTooltip&&(this.sliderElem.removeEventListener("touchstart",this.showTooltip,!1),this.sliderElem.removeEventListener("touchmove",this.showTooltip,!1)),this.hideTooltip&&this.sliderElem.removeEventListener("touchend",this.hideTooltip,!1),this.sliderElem.removeEventListener("touchstart",this.touchstart,!1),this.sliderElem.removeEventListener("touchmove",this.touchmove,!1)),window.removeEventListener("resize",this.resize,!1)},_bindNonQueryEventHandler:function(a,b){void 0===this.eventToCallbackMap[a]&&(this.eventToCallbackMap[a]=[]),this.eventToCallbackMap[a].push(b)},_unbindNonQueryEventHandler:function(a,b){var c=this.eventToCallbackMap[a];if(void 0!==c)for(var d=0;d<c.length;d++)if(c[d]===b){c.splice(d,1);break}},_cleanUpEventCallbacksMap:function(){for(var a=Object.keys(this.eventToCallbackMap),b=0;b<a.length;b++){var c=a[b];delete this.eventToCallbackMap[c]}},_showTooltip:function(){this.options.tooltip_split===!1?(this._addClass(this.tooltip,"in"),this.tooltip_min.style.display="none",this.tooltip_max.style.display="none"):(this._addClass(this.tooltip_min,"in"),this._addClass(this.tooltip_max,"in"),this.tooltip.style.display="none"),this._state.over=!0},_hideTooltip:function(){this._state.inDrag===!1&&this._alwaysShowTooltip!==!0&&(this._removeClass(this.tooltip,"in"),this._removeClass(this.tooltip_min,"in"),this._removeClass(this.tooltip_max,"in")),this._state.over=!1},_setToolTipOnMouseOver:function(a){function b(a,b){return b?[100-a.percentage[0],c.options.range?100-a.percentage[1]:a.percentage[1]]:[a.percentage[0],a.percentage[1]]}var c=this,d=this.options.formatter(a?a.value[0]:this._state.value[0]),e=a?b(a,this.options.reversed):b(this._state,this.options.reversed);this._setText(this.tooltipInner,d),this.tooltip.style[this.stylePos]=e[0]+"%"},_copyState:function(){return{value:[this._state.value[0],this._state.value[1]],enabled:this._state.enabled,offset:this._state.offset,size:this._state.size,percentage:[this._state.percentage[0],this._state.percentage[1],this._state.percentage[2]],inDrag:this._state.inDrag,over:this._state.over,dragged:this._state.dragged,keyCtrl:this._state.keyCtrl}},_addTickListener:function(){return{addMouseEnter:function(a,b,c){var d=function(){var d=a._copyState(),e=b===a.handle1?d.value[0]:d.value[1],f=void 0;void 0!==c?(e=a.options.ticks[c],f=a.options.ticks_positions.length>0&&a.options.ticks_positions[c]||a._toPercentage(a.options.ticks[c])):f=a._toPercentage(e),d.value[0]=e,d.percentage[0]=f,a._setToolTipOnMouseOver(d),a._showTooltip()};return b.addEventListener("mouseenter",d,!1),d},addMouseLeave:function(a,b){var c=function(){a._hideTooltip()};return b.addEventListener("mouseleave",c,!1),c}}},_layout:function(){var a,b;if(a=this.options.reversed?[100-this._state.percentage[0],this.options.range?100-this._state.percentage[1]:this._state.percentage[1]]:[this._state.percentage[0],this._state.percentage[1]],this.handle1.style[this.stylePos]=a[0]+"%",this.handle1.setAttribute("aria-valuenow",this._state.value[0]),b=this.options.formatter(this._state.value[0]),isNaN(b)?this.handle1.setAttribute("aria-valuetext",b):this.handle1.removeAttribute("aria-valuetext"),this.handle2.style[this.stylePos]=a[1]+"%",this.handle2.setAttribute("aria-valuenow",this._state.value[1]),b=this.options.formatter(this._state.value[1]),isNaN(b)?this.handle2.setAttribute("aria-valuetext",b):this.handle2.removeAttribute("aria-valuetext"),this.rangeHighlightElements.length>0&&Array.isArray(this.options.rangeHighlights)&&this.options.rangeHighlights.length>0)for(var c=0;c<this.options.rangeHighlights.length;c++){var d=this._toPercentage(this.options.rangeHighlights[c].start),e=this._toPercentage(this.options.rangeHighlights[c].end);if(this.options.reversed){var f=100-e;e=100-d,d=f}var g=this._createHighlightRange(d,e);g?"vertical"===this.options.orientation?(this.rangeHighlightElements[c].style.top=g.start+"%",this.rangeHighlightElements[c].style.height=g.size+"%"):(this.options.rtl?this.rangeHighlightElements[c].style.right=g.start+"%":this.rangeHighlightElements[c].style.left=g.start+"%",this.rangeHighlightElements[c].style.width=g.size+"%"):this.rangeHighlightElements[c].style.display="none"}if(Array.isArray(this.options.ticks)&&this.options.ticks.length>0){var h,i="vertical"===this.options.orientation?"height":"width";h="vertical"===this.options.orientation?"marginTop":this.options.rtl?"marginRight":"marginLeft";var j=this._state.size/(this.options.ticks.length-1);if(this.tickLabelContainer){var k=0;if(0===this.options.ticks_positions.length)"vertical"!==this.options.orientation&&(this.tickLabelContainer.style[h]=-j/2+"px"),k=this.tickLabelContainer.offsetHeight;else for(l=0;l<this.tickLabelContainer.childNodes.length;l++)this.tickLabelContainer.childNodes[l].offsetHeight>k&&(k=this.tickLabelContainer.childNodes[l].offsetHeight);"horizontal"===this.options.orientation&&(this.sliderElem.style.marginBottom=k+"px")}for(var l=0;l<this.options.ticks.length;l++){var m=this.options.ticks_positions[l]||this._toPercentage(this.options.ticks[l]);this.options.reversed&&(m=100-m),this.ticks[l].style[this.stylePos]=m+"%",this._removeClass(this.ticks[l],"in-selection"),this.options.range?m>=a[0]&&m<=a[1]&&this._addClass(this.ticks[l],"in-selection"):"after"===this.options.selection&&m>=a[0]?this._addClass(this.ticks[l],"in-selection"):"before"===this.options.selection&&m<=a[0]&&this._addClass(this.ticks[l],"in-selection"),this.tickLabels[l]&&(this.tickLabels[l].style[i]=j+"px","vertical"!==this.options.orientation&&void 0!==this.options.ticks_positions[l]?(this.tickLabels[l].style.position="absolute",this.tickLabels[l].style[this.stylePos]=m+"%",this.tickLabels[l].style[h]=-j/2+"px"):"vertical"===this.options.orientation&&(this.options.rtl?this.tickLabels[l].style.marginRight=this.sliderElem.offsetWidth+"px":this.tickLabels[l].style.marginLeft=this.sliderElem.offsetWidth+"px",this.tickLabelContainer.style[h]=this.sliderElem.offsetWidth/2*-1+"px"),this._removeClass(this.tickLabels[l],"label-in-selection label-is-selection"),this.options.range?m>=a[0]&&m<=a[1]&&(this._addClass(this.tickLabels[l],"label-in-selection"),(m===a[0]||a[1])&&this._addClass(this.tickLabels[l],"label-is-selection")):("after"===this.options.selection&&m>=a[0]?this._addClass(this.tickLabels[l],"label-in-selection"):"before"===this.options.selection&&m<=a[0]&&this._addClass(this.tickLabels[l],"label-in-selection"),m===a[0]&&this._addClass(this.tickLabels[l],"label-is-selection")))}}var n;if(this.options.range){n=this.options.formatter(this._state.value),this._setText(this.tooltipInner,n),this.tooltip.style[this.stylePos]=(a[1]+a[0])/2+"%";var o=this.options.formatter(this._state.value[0]);this._setText(this.tooltipInner_min,o);var p=this.options.formatter(this._state.value[1]);this._setText(this.tooltipInner_max,p),this.tooltip_min.style[this.stylePos]=a[0]+"%",this.tooltip_max.style[this.stylePos]=a[1]+"%"}else n=this.options.formatter(this._state.value[0]),this._setText(this.tooltipInner,n),this.tooltip.style[this.stylePos]=a[0]+"%";if("vertical"===this.options.orientation)this.trackLow.style.top="0",this.trackLow.style.height=Math.min(a[0],a[1])+"%",this.trackSelection.style.top=Math.min(a[0],a[1])+"%",this.trackSelection.style.height=Math.abs(a[0]-a[1])+"%",this.trackHigh.style.bottom="0",this.trackHigh.style.height=100-Math.min(a[0],a[1])-Math.abs(a[0]-a[1])+"%";else{"right"===this.stylePos?this.trackLow.style.right="0":this.trackLow.style.left="0",this.trackLow.style.width=Math.min(a[0],a[1])+"%","right"===this.stylePos?this.trackSelection.style.right=Math.min(a[0],a[1])+"%":this.trackSelection.style.left=Math.min(a[0],a[1])+"%",this.trackSelection.style.width=Math.abs(a[0]-a[1])+"%","right"===this.stylePos?this.trackHigh.style.left="0":this.trackHigh.style.right="0",this.trackHigh.style.width=100-Math.min(a[0],a[1])-Math.abs(a[0]-a[1])+"%";var q=this.tooltip_min.getBoundingClientRect(),r=this.tooltip_max.getBoundingClientRect();"bottom"===this.options.tooltip_position?q.right>r.left?(this._removeClass(this.tooltip_max,"bottom"),this._addClass(this.tooltip_max,"top"),this.tooltip_max.style.top="",this.tooltip_max.style.bottom="22px"):(this._removeClass(this.tooltip_max,"top"),this._addClass(this.tooltip_max,"bottom"),this.tooltip_max.style.top=this.tooltip_min.style.top,this.tooltip_max.style.bottom=""):q.right>r.left?(this._removeClass(this.tooltip_max,"top"),this._addClass(this.tooltip_max,"bottom"),this.tooltip_max.style.top="18px"):(this._removeClass(this.tooltip_max,"bottom"),this._addClass(this.tooltip_max,"top"),this.tooltip_max.style.top=this.tooltip_min.style.top)}},_createHighlightRange:function(a,b){return this._isHighlightRange(a,b)?a>b?{start:b,size:a-b}:{start:a,size:b-a}:null},_isHighlightRange:function(a,b){return a>=0&&100>=a&&b>=0&&100>=b?!0:!1},_resize:function(a){this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos],this._layout()},_removeProperty:function(a,b){a.style.removeProperty?a.style.removeProperty(b):a.style.removeAttribute(b)},_mousedown:function(a){if(!this._state.enabled)return!1;a.preventDefault&&a.preventDefault(),this._state.offset=this._offset(this.sliderElem),this._state.size=this.sliderElem[this.sizePos];var b=this._getPercentage(a);if(this.options.range){var c=Math.abs(this._state.percentage[0]-b),d=Math.abs(this._state.percentage[1]-b);this._state.dragged=d>c?0:1,this._adjustPercentageForRangeSliders(b)}else this._state.dragged=0;this._state.percentage[this._state.dragged]=b,this.touchCapable&&(document.removeEventListener("touchmove",this.mousemove,!1),document.removeEventListener("touchend",this.mouseup,!1)),this.mousemove&&document.removeEventListener("mousemove",this.mousemove,!1),this.mouseup&&document.removeEventListener("mouseup",this.mouseup,!1),this.mousemove=this._mousemove.bind(this),this.mouseup=this._mouseup.bind(this),this.touchCapable&&(document.addEventListener("touchmove",this.mousemove,!1),document.addEventListener("touchend",this.mouseup,!1)),document.addEventListener("mousemove",this.mousemove,!1),document.addEventListener("mouseup",this.mouseup,!1),this._state.inDrag=!0;var e=this._calculateValue();return this._trigger("slideStart",e),this.setValue(e,!1,!0),a.returnValue=!1,this.options.focus&&this._triggerFocusOnHandle(this._state.dragged),!0},_touchstart:function(a){this._mousedown(a)},_triggerFocusOnHandle:function(a){0===a&&this.handle1.focus(),1===a&&this.handle2.focus()},_keydown:function(a,b){if(!this._state.enabled)return!1;var c;switch(b.keyCode){case 37:case 40:c=-1;break;case 39:case 38:c=1}if(c){if(this.options.natural_arrow_keys){var d="horizontal"===this.options.orientation,e="vertical"===this.options.orientation,f=this.options.rtl,g=this.options.reversed;d?f?g||(c=-c):g&&(c=-c):e&&(g||(c=-c))}var h;if(this.ticksAreValid&&this.options.lock_to_ticks){var i=void 0;i=this.options.ticks.indexOf(this._state.value[a]),-1===i&&(i=0,window.console.warn("(lock_to_ticks) _keydown: index should not be -1")),i+=c,i=Math.max(0,Math.min(this.options.ticks.length-1,i)),h=this.options.ticks[i]}else h=this._state.value[a]+c*this.options.step;var j=this._toPercentage(h);if(this._state.keyCtrl=a,this.options.range){this._adjustPercentageForRangeSliders(j);var k=this._state.keyCtrl?this._state.value[0]:h,l=this._state.keyCtrl?h:this._state.value[1];h=[Math.max(this.options.min,Math.min(this.options.max,k)),Math.max(this.options.min,Math.min(this.options.max,l))]}else h=Math.max(this.options.min,Math.min(this.options.max,h));return this._trigger("slideStart",h),this.setValue(h,!0,!0),this._trigger("slideStop",h),this._pauseEvent(b),delete this._state.keyCtrl,!1}},_pauseEvent:function(a){a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.cancelBubble=!0,a.returnValue=!1},_mousemove:function(a){if(!this._state.enabled)return!1;
-var b=this._getPercentage(a);this._adjustPercentageForRangeSliders(b),this._state.percentage[this._state.dragged]=b;var c=this._calculateValue(!0);return this.setValue(c,!0,!0),!1},_touchmove:function(a){void 0!==a.changedTouches&&a.preventDefault&&a.preventDefault()},_adjustPercentageForRangeSliders:function(a){if(this.options.range){var b=this._getNumDigitsAfterDecimalPlace(a);b=b?b-1:0;var c=this._applyToFixedAndParseFloat(a,b);0===this._state.dragged&&this._applyToFixedAndParseFloat(this._state.percentage[1],b)<c?(this._state.percentage[0]=this._state.percentage[1],this._state.dragged=1):1===this._state.dragged&&this._applyToFixedAndParseFloat(this._state.percentage[0],b)>c?(this._state.percentage[1]=this._state.percentage[0],this._state.dragged=0):0===this._state.keyCtrl&&this._toPercentage(this._state.value[1])<a?(this._state.percentage[0]=this._state.percentage[1],this._state.keyCtrl=1,this.handle2.focus()):1===this._state.keyCtrl&&this._toPercentage(this._state.value[0])>a&&(this._state.percentage[1]=this._state.percentage[0],this._state.keyCtrl=0,this.handle1.focus())}},_mouseup:function(a){if(!this._state.enabled)return!1;var b=this._getPercentage(a);this._adjustPercentageForRangeSliders(b),this._state.percentage[this._state.dragged]=b,this.touchCapable&&(document.removeEventListener("touchmove",this.mousemove,!1),document.removeEventListener("touchend",this.mouseup,!1)),document.removeEventListener("mousemove",this.mousemove,!1),document.removeEventListener("mouseup",this.mouseup,!1),this._state.inDrag=!1,this._state.over===!1&&this._hideTooltip();var c=this._calculateValue(!0);return this.setValue(c,!1,!0),this._trigger("slideStop",c),this._state.dragged=null,!1},_setValues:function(a,b){var c=0===a?0:100;this._state.percentage[a]!==c&&(b.data[a]=this._toValue(this._state.percentage[a]),b.data[a]=this._applyPrecision(b.data[a]))},_calculateValue:function(a){var b={};return this.options.range?(b.data=[this.options.min,this.options.max],this._setValues(0,b),this._setValues(1,b),a&&(b.data[0]=this._snapToClosestTick(b.data[0]),b.data[1]=this._snapToClosestTick(b.data[1]))):(b.data=this._toValue(this._state.percentage[0]),b.data=parseFloat(b.data),b.data=this._applyPrecision(b.data),a&&(b.data=this._snapToClosestTick(b.data))),b.data},_snapToClosestTick:function(a){for(var b=[a,1/0],c=0;c<this.options.ticks.length;c++){var d=Math.abs(this.options.ticks[c]-a);d<=b[1]&&(b=[this.options.ticks[c],d])}return b[1]<=this.options.ticks_snap_bounds?b[0]:a},_applyPrecision:function(a){var b=this.options.precision||this._getNumDigitsAfterDecimalPlace(this.options.step);return this._applyToFixedAndParseFloat(a,b)},_getNumDigitsAfterDecimalPlace:function(a){var b=(""+a).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return b?Math.max(0,(b[1]?b[1].length:0)-(b[2]?+b[2]:0)):0},_applyToFixedAndParseFloat:function(a,b){var c=a.toFixed(b);return parseFloat(c)},_getPercentage:function(a){!this.touchCapable||"touchstart"!==a.type&&"touchmove"!==a.type&&"touchend"!==a.type||(a=a.changedTouches[0]);var b=a[this.mousePos],c=this._state.offset[this.stylePos],d=b-c;"right"===this.stylePos&&(d=-d);var e=d/this._state.size*100;return e=Math.round(e/this._state.percentage[2])*this._state.percentage[2],this.options.reversed&&(e=100-e),Math.max(0,Math.min(100,e))},_validateInputValue:function(a){if(isNaN(+a)){if(Array.isArray(a))return this._validateArray(a),a;throw new Error(g.formatInvalidInputErrorMsg(a))}return+a},_validateArray:function(a){for(var b=0;b<a.length;b++){var c=a[b];if("number"!=typeof c)throw new Error(g.formatInvalidInputErrorMsg(c))}},_setDataVal:function(a){this.element.setAttribute("data-value",a),this.element.setAttribute("value",a),this.element.value=a},_trigger:function(b,c){c=c||0===c?c:void 0;var d=this.eventToCallbackMap[b];if(d&&d.length)for(var e=0;e<d.length;e++){var f=d[e];f(c)}a&&this._triggerJQueryEvent(b,c)},_triggerJQueryEvent:function(a,b){var c={type:a,value:b};this.$element.trigger(c),this.$sliderElem.trigger(c)},_unbindJQueryEventHandlers:function(){this.$element.off(),this.$sliderElem.off()},_setText:function(a,b){"undefined"!=typeof a.textContent?a.textContent=b:"undefined"!=typeof a.innerText&&(a.innerText=b)},_removeClass:function(a,b){for(var c=b.split(" "),d=a.className,e=0;e<c.length;e++){var f=c[e],g=new RegExp("(?:\\s|^)"+f+"(?:\\s|$)");d=d.replace(g," ")}a.className=d.trim()},_addClass:function(a,b){for(var c=b.split(" "),d=a.className,e=0;e<c.length;e++){var f=c[e],g=new RegExp("(?:\\s|^)"+f+"(?:\\s|$)"),h=g.test(d);h||(d+=" "+f)}a.className=d.trim()},_offsetLeft:function(a){return a.getBoundingClientRect().left},_offsetRight:function(a){return a.getBoundingClientRect().right},_offsetTop:function(a){for(var b=a.offsetTop;(a=a.offsetParent)&&!isNaN(a.offsetTop);)b+=a.offsetTop,"BODY"!==a.tagName&&(b-=a.scrollTop);return b},_offset:function(a){return{left:this._offsetLeft(a),right:this._offsetRight(a),top:this._offsetTop(a)}},_css:function(b,c,d){if(a)a.style(b,c,d);else{var e=c.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(a,b){return b.toUpperCase()});b.style[e]=d}},_toValue:function(a){return this.options.scale.toValue.apply(this,[a])},_toPercentage:function(a){return this.options.scale.toPercentage.apply(this,[a])},_setTooltipPosition:function(){var a=[this.tooltip,this.tooltip_min,this.tooltip_max];if("vertical"===this.options.orientation){var b;b=this.options.tooltip_position?this.options.tooltip_position:this.options.rtl?"left":"right";var c="left"===b?"right":"left";a.forEach(function(a){this._addClass(a,b),a.style[c]="100%"}.bind(this))}else"bottom"===this.options.tooltip_position?a.forEach(function(a){this._addClass(a,"bottom"),a.style.top="22px"}.bind(this)):a.forEach(function(a){this._addClass(a,"top"),a.style.top=-this.tooltip.outerHeight-14+"px"}.bind(this))},_getClosestTickIndex:function(a){for(var b=Math.abs(a-this.options.ticks[0]),c=0,d=0;d<this.options.ticks.length;++d){var e=Math.abs(a-this.options.ticks[d]);b>e&&(b=e,c=d)}return c},_setTickIndex:function(){this.ticksAreValid&&(this._state.tickIndex=[this.options.ticks.indexOf(this._state.value[0]),this.options.ticks.indexOf(this._state.value[1])])}},a&&a.fn&&(a.fn.slider?(windowIsDefined&&window.console.warn("bootstrap-slider.js - WARNING: $.fn.slider namespace is already bound. Use the $.fn.bootstrapSlider namespace instead."),f=c):(a.bridget(b,d),f=b),a.bridget(c,d),a(function(){a("input[data-provide=slider]")[f]()}))}(a),d});
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/003-slider.min.js b/mailcow/src/mailcow-dockerized/data/web/js/build/003-slider.min.js
new file mode 100644
index 0000000..f04ef59
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/js/build/003-slider.min.js
@@ -0,0 +1 @@
+!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).noUiSlider={})}(this,function(st){"use strict";var t,e;function n(t){return"object"==typeof t&&"function"==typeof t.to&&"function"==typeof t.from}function at(t){t.parentElement.removeChild(t)}function lt(t){return null!=t}function ut(t){t.preventDefault()}function o(t){return"number"==typeof t&&!isNaN(t)&&isFinite(t)}function ct(t,e,r){0<r&&(dt(t,e),setTimeout(function(){ht(t,e)},r))}function pt(t){return Math.max(Math.min(t,100),0)}function ft(t){return Array.isArray(t)?t:[t]}function r(t){var e=(t=String(t)).split(".");return 1<e.length?e[1].length:0}function dt(t,e){t.classList&&!/\s/.test(e)?t.classList.add(e):t.className+=" "+e}function ht(t,e){t.classList&&!/\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")}function mt(t){var e=void 0!==window.pageXOffset,r="CSS1Compat"===(t.compatMode||"");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function c(t,e){return 100/(e-t)}function p(t,e,r){return 100*e/(t[r+1]-t[r])}function f(t,e){for(var r=1;t>=e[r];)r+=1;return r}function i(t,e,r){if(r>=t.slice(-1)[0])return 100;var n,i,o=f(r,t),s=t[o-1],a=t[o],l=e[o-1],u=e[o];return l+(i=r,p(n=[s,a],n[0]<0?i+Math.abs(n[0]):i-n[0],0)/c(l,u))}function s(t,e,r,n){if(100===n)return n;var i,o,s=f(n,t),a=t[s-1],l=t[s];return r?(l-a)/2<n-a?l:a:e[s-1]?t[s-1]+(i=n-t[s-1],o=e[s-1],Math.round(i/o)*o):n}st.PipsMode=void 0,(t=st.PipsMode||(st.PipsMode={})).Range="range",t.Steps="steps",t.Positions="positions",t.Count="count",t.Values="values",st.PipsType=void 0,(e=st.PipsType||(st.PipsType={}))[e.None=-1]="None",e[e.NoValue=0]="NoValue",e[e.LargeValue=1]="LargeValue",e[e.SmallValue=2]="SmallValue";var a=function(){function t(e,t,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.snap=t;var i=[];for(Object.keys(e).forEach(function(t){i.push([ft(e[t]),t])}),i.sort(function(t,e){return t[0][0]-e[0][0]}),n=0;n<i.length;n++)this.handleEntryPoint(i[n][1],i[n][0]);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)this.handleStepPoint(n,this.xNumSteps[n])}return t.prototype.getDistance=function(t){var e,r=[];for(e=0;e<this.xNumSteps.length-1;e++){var n=this.xNumSteps[e];if(n&&t/n%1!=0)throw new Error("noUiSlider: 'limit', 'margin' and 'padding' of "+this.xPct[e]+"% range must be divisible by step.");r[e]=p(this.xVal,t,e)}return r},t.prototype.getAbsoluteDistance=function(t,e,r){var n,i=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[i+1];)i++;else t===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);r||t!==this.xPct[i+1]||i++,null===e&&(e=[]);var o=1,s=e[i],a=0,l=0,u=0,c=0;for(n=r?(t-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):(this.xPct[i+1]-t)/(this.xPct[i+1]-this.xPct[i]);0<s;)a=this.xPct[i+1+c]-this.xPct[i+c],100<e[i+c]*o+100-100*n?(l=a*n,o=(s-100*n)/e[i+c],n=1):(l=e[i+c]*a/100*o,o=0),r?(u-=l,1<=this.xPct.length+c&&c--):(u+=l,1<=this.xPct.length-c&&c++),s=e[i+c]*o;return t+u},t.prototype.toStepping=function(t){return t=i(this.xVal,this.xPct,t)},t.prototype.fromStepping=function(t){return function(t,e,r){if(100<=r)return t.slice(-1)[0];var n,i=f(r,e),o=t[i-1],s=t[i],a=e[i-1],l=e[i];return n=[o,s],(r-a)*c(a,l)*(n[1]-n[0])/100+n[0]}(this.xVal,this.xPct,t)},t.prototype.getStep=function(t){return t=s(this.xPct,this.xSteps,this.snap,t)},t.prototype.getDefaultStep=function(t,e,r){var n=f(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},t.prototype.getNearbySteps=function(t){var e=f(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},t.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(r);return Math.max.apply(null,t)},t.prototype.convert=function(t){return this.getStep(this.toStepping(t))},t.prototype.handleEntryPoint=function(t,e){var r;if(!o(r="min"===t?0:"max"===t?100:parseFloat(t))||!o(e[0]))throw new Error("noUiSlider: 'range' value isn't numeric.");this.xPct.push(r),this.xVal.push(e[0]);var n=Number(e[1]);r?this.xSteps.push(!isNaN(n)&&n):isNaN(n)||(this.xSteps[0]=n),this.xHighestCompleteStep.push(0)},t.prototype.handleStepPoint=function(t,e){if(e)if(this.xVal[t]!==this.xVal[t+1]){this.xSteps[t]=p([this.xVal[t],this.xVal[t+1]],e,0)/c(this.xPct[t],this.xPct[t+1]);var r=(this.xVal[t+1]-this.xVal[t])/this.xNumSteps[t],n=Math.ceil(Number(r.toFixed(3))-1),i=this.xVal[t]+this.xNumSteps[t]*n;this.xHighestCompleteStep[t]=i}else this.xSteps[t]=this.xHighestCompleteStep[t]=this.xVal[t]},t}(),l={to:function(t){return void 0===t?"":t.toFixed(2)},from:Number},u={target:"target",base:"base",origin:"origin",handle:"handle",handleLower:"handle-lower",handleUpper:"handle-upper",touchArea:"touch-area",horizontal:"horizontal",vertical:"vertical",background:"background",connect:"connect",connects:"connects",ltr:"ltr",rtl:"rtl",textDirectionLtr:"txt-dir-ltr",textDirectionRtl:"txt-dir-rtl",draggable:"draggable",drag:"state-drag",tap:"state-tap",active:"active",tooltip:"tooltip",pips:"pips",pipsHorizontal:"pips-horizontal",pipsVertical:"pips-vertical",marker:"marker",markerHorizontal:"marker-horizontal",markerVertical:"marker-vertical",markerNormal:"marker-normal",markerLarge:"marker-large",markerSub:"marker-sub",value:"value",valueHorizontal:"value-horizontal",valueVertical:"value-vertical",valueNormal:"value-normal",valueLarge:"value-large",valueSub:"value-sub"},gt={tooltips:".__tooltips",aria:".__aria"};function d(t){if(n(t))return!0;throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.")}function h(t,e){if(!o(e))throw new Error("noUiSlider: 'step' is not numeric.");t.singleStep=e}function m(t,e){if(!o(e))throw new Error("noUiSlider: 'keyboardPageMultiplier' is not numeric.");t.keyboardPageMultiplier=e}function g(t,e){if(!o(e))throw new Error("noUiSlider: 'keyboardDefaultStep' is not numeric.");t.keyboardDefaultStep=e}function v(t,e){if("object"!=typeof e||Array.isArray(e))throw new Error("noUiSlider: 'range' is not an object.");if(void 0===e.min||void 0===e.max)throw new Error("noUiSlider: Missing 'min' or 'max' in 'range'.");if(e.min===e.max)throw new Error("noUiSlider: 'range' 'min' and 'max' cannot be equal.");t.spectrum=new a(e,t.snap||!1,t.singleStep)}function b(t,e){if(e=ft(e),!Array.isArray(e)||!e.length)throw new Error("noUiSlider: 'start' option is incorrect.");t.handles=e.length,t.start=e}function S(t,e){if("boolean"!=typeof e)throw new Error("noUiSlider: 'snap' option must be a boolean.");t.snap=e}function x(t,e){if("boolean"!=typeof e)throw new Error("noUiSlider: 'animate' option must be a boolean.");t.animate=e}function y(t,e){if("number"!=typeof e)throw new Error("noUiSlider: 'animationDuration' option must be a number.");t.animationDuration=e}function w(t,e){var r,n=[!1];if("lower"===e?e=[!0,!1]:"upper"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error("noUiSlider: 'connect' option doesn't match handle count.");n=e}t.connect=n}function E(t,e){switch(e){case"horizontal":t.ort=0;break;case"vertical":t.ort=1;break;default:throw new Error("noUiSlider: 'orientation' option is invalid.")}}function P(t,e){if(!o(e))throw new Error("noUiSlider: 'margin' option must be numeric.");0!==e&&(t.margin=t.spectrum.getDistance(e))}function C(t,e){if(!o(e))throw new Error("noUiSlider: 'limit' option must be numeric.");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error("noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.")}function N(t,e){var r;if(!o(e)&&!Array.isArray(e))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(Array.isArray(e)&&2!==e.length&&!o(e[0])&&!o(e[1]))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error("noUiSlider: 'padding' option must be a positive number(s).");var n=e[0]+e[1],i=t.spectrum.xVal[0];if(1<n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-i))throw new Error("noUiSlider: 'padding' option must not exceed 100% of the range.")}}function V(t,e){switch(e){case"ltr":t.dir=0;break;case"rtl":t.dir=1;break;default:throw new Error("noUiSlider: 'direction' option was not recognized.")}}function k(t,e){if("string"!=typeof e)throw new Error("noUiSlider: 'behaviour' must be a string containing options.");var r=0<=e.indexOf("tap"),n=0<=e.indexOf("drag"),i=0<=e.indexOf("fixed"),o=0<=e.indexOf("snap"),s=0<=e.indexOf("hover"),a=0<=e.indexOf("unconstrained");if(i){if(2!==t.handles)throw new Error("noUiSlider: 'fixed' behaviour must be used with 2 handles");P(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error("noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:s,unconstrained:a}}function U(t,e){if(!1!==e)if(!0===e||n(e)){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(e)}else{if((e=ft(e)).length!==t.handles)throw new Error("noUiSlider: must pass a formatter for all handles.");e.forEach(function(t){if("boolean"!=typeof t&&("object"!=typeof t||"function"!=typeof t.to))throw new Error("noUiSlider: 'tooltips' must be passed a formatter or 'false'.")}),t.tooltips=e}}function M(t,e){d(e),t.ariaFormat=e}function A(t,e){d(e),t.format=e}function D(t,e){if("boolean"!=typeof e)throw new Error("noUiSlider: 'keyboardSupport' option must be a boolean.");t.keyboardSupport=e}function L(t,e){t.documentElement=e}function T(t,e){if("string"!=typeof e&&!1!==e)throw new Error("noUiSlider: 'cssPrefix' must be a string or `false`.");t.cssPrefix=e}function O(e,r){if("object"!=typeof r)throw new Error("noUiSlider: 'cssClasses' must be an object.");"string"==typeof e.cssPrefix?(e.cssClasses={},Object.keys(r).forEach(function(t){e.cssClasses[t]=e.cssPrefix+r[t]})):e.cssClasses=r}function vt(e){var r={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:l,format:l},n={step:{r:!1,t:h},keyboardPageMultiplier:{r:!1,t:m},keyboardDefaultStep:{r:!1,t:g},start:{r:!0,t:b},connect:{r:!0,t:w},direction:{r:!0,t:V},snap:{r:!1,t:S},animate:{r:!1,t:x},animationDuration:{r:!1,t:y},range:{r:!0,t:v},orientation:{r:!1,t:E},margin:{r:!1,t:P},limit:{r:!1,t:C},padding:{r:!1,t:N},behaviour:{r:!0,t:k},ariaFormat:{r:!1,t:M},format:{r:!1,t:A},tooltips:{r:!1,t:U},keyboardSupport:{r:!0,t:D},documentElement:{r:!1,t:L},cssPrefix:{r:!0,t:T},cssClasses:{r:!0,t:O}},i={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:u,keyboardPageMultiplier:5,keyboardDefaultStep:10};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(n).forEach(function(t){if(lt(e[t])||void 0!==i[t])n[t].t(r,lt(e[t])?e[t]:i[t]);else if(n[t].r)throw new Error("noUiSlider: '"+t+"' is required.")}),r.pips=e.pips;var t=document.createElement("div"),o=void 0!==t.style.msTransform,s=void 0!==t.style.transform;r.transformRule=s?"transform":o?"msTransform":"webkitTransform";return r.style=[["left","top"],["right","bottom"]][r.dir][r.ort],r}function j(t,b,o){var l,u,s,i,a,e,c,p=window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend"},f=window.CSS&&CSS.supports&&CSS.supports("touch-action","none")&&function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("test",null,e)}catch(t){}return t}(),d=t,y=b.spectrum,S=[],x=[],h=[],m=0,g={},v=t.ownerDocument,w=b.documentElement||v.documentElement,E=v.body,P="rtl"===v.dir||1===b.ort?0:100;function C(t,e){var r=v.createElement("div");return e&&dt(r,e),t.appendChild(r),r}function N(t,e){var r=C(t,b.cssClasses.origin),n=C(r,b.cssClasses.handle);return C(n,b.cssClasses.touchArea),n.setAttribute("data-handle",String(e)),b.keyboardSupport&&(n.setAttribute("tabindex","0"),n.addEventListener("keydown",function(t){return function(t,e){if(k()||U(e))return!1;var r=["Left","Right"],n=["Down","Up"],i=["PageDown","PageUp"],o=["Home","End"];b.dir&&!b.ort?r.reverse():b.ort&&!b.dir&&(n.reverse(),i.reverse());var s,a=t.key.replace("Arrow",""),l=a===i[0],u=a===i[1],c=a===n[0]||a===r[0]||l,p=a===n[1]||a===r[1]||u,f=a===o[0],d=a===o[1];if(!(c||p||f||d))return!0;if(t.preventDefault(),p||c){var h=b.keyboardPageMultiplier,m=c?0:1,g=it(e),v=g[m];if(null===v)return!1;!1===v&&(v=y.getDefaultStep(x[e],c,b.keyboardDefaultStep)),(u||l)&&(v*=h),v=Math.max(v,1e-7),v*=c?-1:1,s=S[e]+v}else s=d?b.spectrum.xVal[b.spectrum.xVal.length-1]:b.spectrum.xVal[0];return Z(e,y.toStepping(s),!0,!0),W("slide",e),W("update",e),W("change",e),W("set",e),!1}(t,e)})),n.setAttribute("role","slider"),n.setAttribute("aria-orientation",b.ort?"vertical":"horizontal"),0===e?dt(n,b.cssClasses.handleLower):e===b.handles-1&&dt(n,b.cssClasses.handleUpper),r}function V(t,e){return!!e&&C(t,b.cssClasses.connect)}function r(t,e){return!(!b.tooltips||!b.tooltips[e])&&C(t.firstChild,b.cssClasses.tooltip)}function k(){return d.hasAttribute("disabled")}function U(t){return u[t].hasAttribute("disabled")}function M(){a&&(I("update"+gt.tooltips),a.forEach(function(t){t&&at(t)}),a=null)}function A(){M(),a=u.map(r),Y("update"+gt.tooltips,function(t,e,r){if(a&&b.tooltips&&!1!==a[e]){var n=t[e];!0!==b.tooltips[e]&&(n=b.tooltips[e].to(r[e])),a[e].innerHTML=n}})}function D(t,e){return t.map(function(t){return y.fromStepping(e?y.getStep(t):t)})}function L(m){var g=function(t){if(t.mode===st.PipsMode.Range||t.mode===st.PipsMode.Steps)return y.xVal;if(t.mode!==st.PipsMode.Count)return t.mode===st.PipsMode.Positions?D(t.values,t.stepped):t.mode===st.PipsMode.Values?t.stepped?t.values.map(function(t){return y.fromStepping(y.getStep(y.toStepping(t)))}):t.values:[];if(t.values<2)throw new Error("noUiSlider: 'values' (>= 2) required for mode 'count'.");for(var e=t.values-1,r=100/e,n=[];e--;)n[e]=e*r;return n.push(100),D(n,t.stepped)}(m),v={},t=y.xVal[0],e=y.xVal[y.xVal.length-1],b=!1,S=!1,x=0;return(g=g.slice().sort(function(t,e){return t-e}).filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==t&&(g.unshift(t),b=!0),g[g.length-1]!==e&&(g.push(e),S=!0),g.forEach(function(t,e){var r,n,i,o,s,a,l,u,c,p,f=t,d=g[e+1],h=m.mode===st.PipsMode.Steps;for(h&&(r=y.xNumSteps[e]),r||(r=d-f),void 0===d&&(d=f),r=Math.max(r,1e-7),n=f;n<=d;n=Number((n+r).toFixed(7))){for(u=(s=(o=y.toStepping(n))-x)/(m.density||1),p=s/(c=Math.round(u)),i=1;i<=c;i+=1)v[(a=x+i*p).toFixed(5)]=[y.fromStepping(a),0];l=-1<g.indexOf(n)?st.PipsType.LargeValue:h?st.PipsType.SmallValue:st.PipsType.NoValue,!e&&b&&n!==d&&(l=0),n===d&&S||(v[o.toFixed(5)]=[n,l]),x=o}}),v}function T(e,i,o){var t,r,s=v.createElement("div"),a=((t={})[st.PipsType.None]="",t[st.PipsType.NoValue]=b.cssClasses.valueNormal,t[st.PipsType.LargeValue]=b.cssClasses.valueLarge,t[st.PipsType.SmallValue]=b.cssClasses.valueSub,t),l=((r={})[st.PipsType.None]="",r[st.PipsType.NoValue]=b.cssClasses.markerNormal,r[st.PipsType.LargeValue]=b.cssClasses.markerLarge,r[st.PipsType.SmallValue]=b.cssClasses.markerSub,r),u=[b.cssClasses.valueHorizontal,b.cssClasses.valueVertical],c=[b.cssClasses.markerHorizontal,b.cssClasses.markerVertical];function p(t,e){var r=e===b.cssClasses.value,n=r?a:l;return e+" "+(r?u:c)[b.ort]+" "+n[t]}return dt(s,b.cssClasses.pips),dt(s,0===b.ort?b.cssClasses.pipsHorizontal:b.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e,r){if((r=i?i(e,r):r)!==st.PipsType.None){var n=C(s,!1);n.className=p(r,b.cssClasses.marker),n.style[b.style]=t+"%",r>st.PipsType.NoValue&&((n=C(s,!1)).className=p(r,b.cssClasses.value),n.setAttribute("data-value",String(e)),n.style[b.style]=t+"%",n.innerHTML=String(o.to(e)))}}(t,e[t][0],e[t][1])}),s}function O(){i&&(at(i),i=null)}function j(t){O();var e=L(t),r=t.filter,n=t.format||{to:function(t){return String(Math.round(t))},from:Number};return i=d.appendChild(T(e,r,n))}function z(){var t=l.getBoundingClientRect(),e="offset"+["Width","Height"][b.ort];return 0===b.ort?t.width||l[e]:t.height||l[e]}function H(i,o,s,a){var e=function(t){var e,r,n=function(r,t,n){var e=0===r.type.indexOf("touch"),i=0===r.type.indexOf("mouse"),o=0===r.type.indexOf("pointer"),s=0,a=0;0===r.type.indexOf("MSPointer")&&(o=!0);if("mousedown"===r.type&&!r.buttons&&!r.touches)return!1;if(e){var l=function(t){var e=t.target;return e===n||n.contains(e)||r.composed&&r.composedPath().shift()===n};if("touchstart"===r.type){var u=Array.prototype.filter.call(r.touches,l);if(1<u.length)return!1;s=u[0].pageX,a=u[0].pageY}else{var c=Array.prototype.find.call(r.changedTouches,l);if(!c)return!1;s=c.pageX,a=c.pageY}}t=t||mt(v),(i||o)&&(s=r.clientX+t.x,a=r.clientY+t.y);return r.pageOffset=t,r.points=[s,a],r.cursor=i||o,r}(t,a.pageOffset,a.target||o);return!!n&&(!(k()&&!a.doNotReject)&&(e=d,r=b.cssClasses.tap,!((e.classList?e.classList.contains(r):new RegExp("\\b"+r+"\\b").test(e.className))&&!a.doNotReject)&&(!(i===p.start&&void 0!==n.buttons&&1<n.buttons)&&((!a.hover||!n.buttons)&&(f||n.preventDefault(),n.calcPoint=n.points[b.ort],void s(n,a))))))},r=[];return i.split(" ").forEach(function(t){o.addEventListener(t,e,!!f&&{passive:!0}),r.push([t,e])}),r}function F(t){var e,r,n,i,o,s,a=100*(t-(e=l,r=b.ort,n=e.getBoundingClientRect(),i=e.ownerDocument,o=i.documentElement,s=mt(i),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),r?n.top+s.y-o.clientTop:n.left+s.x-o.clientLeft))/z();return a=pt(a),b.dir?100-a:a}function R(t,e){"mouseout"===t.type&&"HTML"===t.target.nodeName&&null===t.relatedTarget&&B(t,e)}function _(t,e){if(-1===navigator.appVersion.indexOf("MSIE 9")&&0===t.buttons&&0!==e.buttonsProperty)return B(t,e);var r=(b.dir?-1:1)*(t.calcPoint-e.startCalcPoint);J(0<r,100*r/e.baseSize,e.locations,e.handleNumbers,e.connect)}function B(t,e){e.handle&&(ht(e.handle,b.cssClasses.active),m-=1),e.listeners.forEach(function(t){w.removeEventListener(t[0],t[1])}),0===m&&(ht(d,b.cssClasses.drag),Q(),t.cursor&&(E.style.cursor="",E.removeEventListener("selectstart",ut))),e.handleNumbers.forEach(function(t){W("change",t),W("set",t),W("end",t)})}function q(t,e){if(!e.handleNumbers.some(U)){var r;if(1===e.handleNumbers.length)r=u[e.handleNumbers[0]].children[0],m+=1,dt(r,b.cssClasses.active);t.stopPropagation();var n=[],i=H(p.move,w,_,{target:t.target,handle:r,connect:e.connect,listeners:n,startCalcPoint:t.calcPoint,baseSize:z(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:x.slice()}),o=H(p.end,w,B,{target:t.target,handle:r,listeners:n,doNotReject:!0,handleNumbers:e.handleNumbers}),s=H("mouseout",w,R,{target:t.target,handle:r,listeners:n,doNotReject:!0,handleNumbers:e.handleNumbers});n.push.apply(n,i.concat(o,s)),t.cursor&&(E.style.cursor=getComputedStyle(t.target).cursor,1<u.length&&dt(d,b.cssClasses.drag),E.addEventListener("selectstart",ut,!1)),e.handleNumbers.forEach(function(t){W("start",t)})}}function n(t){t.stopPropagation();var i,o,s,e=F(t.calcPoint),r=(i=e,s=!(o=100),u.forEach(function(t,e){if(!U(e)){var r=x[e],n=Math.abs(r-i);(n<o||n<=o&&r<i||100===n&&100===o)&&(s=e,o=n)}}),s);!1!==r&&(b.events.snap||ct(d,b.cssClasses.tap,b.animationDuration),Z(r,e,!0,!0),Q(),W("slide",r,!0),W("update",r,!0),W("change",r,!0),W("set",r,!0),b.events.snap&&q(t,{handleNumbers:[r]}))}function X(t){var e=F(t.calcPoint),r=y.getStep(e),n=y.fromStepping(r);Object.keys(g).forEach(function(t){"hover"===t.split(".")[0]&&g[t].forEach(function(t){t.call(ot,n)})})}function Y(t,e){g[t]=g[t]||[],g[t].push(e),"update"===t.split(".")[0]&&u.forEach(function(t,e){W("update",e)})}function I(t){var i=t&&t.split(".")[0],o=i?t.substring(i.length):t;Object.keys(g).forEach(function(t){var e,r=t.split(".")[0],n=t.substring(r.length);i&&i!==r||o&&o!==n||((e=n)!==gt.aria&&e!==gt.tooltips||o===n)&&delete g[t]})}function W(r,n,i){Object.keys(g).forEach(function(t){var e=t.split(".")[0];r===e&&g[t].forEach(function(t){t.call(ot,S.map(b.format.to),n,S.slice(),i||!1,x.slice(),ot)})})}function $(t,e,r,n,i,o){var s;return 1<u.length&&!b.events.unconstrained&&(n&&0<e&&(s=y.getAbsoluteDistance(t[e-1],b.margin,!1),r=Math.max(r,s)),i&&e<u.length-1&&(s=y.getAbsoluteDistance(t[e+1],b.margin,!0),r=Math.min(r,s))),1<u.length&&b.limit&&(n&&0<e&&(s=y.getAbsoluteDistance(t[e-1],b.limit,!1),r=Math.min(r,s)),i&&e<u.length-1&&(s=y.getAbsoluteDistance(t[e+1],b.limit,!0),r=Math.max(r,s))),b.padding&&(0===e&&(s=y.getAbsoluteDistance(0,b.padding[0],!1),r=Math.max(r,s)),e===u.length-1&&(s=y.getAbsoluteDistance(100,b.padding[1],!0),r=Math.min(r,s))),!((r=pt(r=y.getStep(r)))===t[e]&&!o)&&r}function G(t,e){var r=b.ort;return(r?e:t)+", "+(r?t:e)}function J(t,n,r,e,i){var o=r.slice(),s=e[0],a=[!t,t],l=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var r=$(o,t,o[t]+n,a[e],l[e],!1);!1===r?n=0:(n=r-o[t],o[t]=r)}):a=l=[!0];var u=!1;e.forEach(function(t,e){u=Z(t,r[t]+n,a[e],l[e])||u}),u&&(e.forEach(function(t){W("update",t),W("slide",t)}),null!=i&&W("drag",s))}function K(t,e){return b.dir?100-t-e:t}function Q(){h.forEach(function(t){var e=50<x[t]?-1:1,r=3+(u.length+e*t);u[t].style.zIndex=String(r)})}function Z(t,e,r,n,i){return i||(e=$(x,t,e,r,n,!1)),!1!==e&&(function(t,e){x[t]=e,S[t]=y.fromStepping(e);var r="translate("+G(10*(K(e,0)-P)+"%","0")+")";u[t].style[b.transformRule]=r,tt(t),tt(t+1)}(t,e),!0)}function tt(t){if(s[t]){var e=0,r=100;0!==t&&(e=x[t-1]),t!==s.length-1&&(r=x[t]);var n=r-e,i="translate("+G(K(e,n)+"%","0")+")",o="scale("+G(n/100,"1")+")";s[t].style[b.transformRule]=i+" "+o}}function et(t,e){return null===t||!1===t||void 0===t?x[e]:("number"==typeof t&&(t=String(t)),!1!==(t=b.format.from(t))&&(t=y.toStepping(t)),!1===t||isNaN(t)?x[e]:t)}function rt(t,e,r){var n=ft(t),i=void 0===x[0];e=void 0===e||e,b.animate&&!i&&ct(d,b.cssClasses.tap,b.animationDuration),h.forEach(function(t){Z(t,et(n[t],t),!0,!1,r)});for(var o=1===h.length?0:1;o<h.length;++o)h.forEach(function(t){Z(t,x[t],!0,!0,r)});Q(),h.forEach(function(t){W("update",t),null!==n[t]&&e&&W("set",t)})}function nt(){var t=S.map(b.format.to);return 1===t.length?t[0]:t}function it(t){var e=x[t],r=y.getNearbySteps(e),n=S[t],i=r.thisStep.step,o=null;if(b.snap)return[n-r.stepBefore.startValue||null,r.stepAfter.startValue-n||null];!1!==i&&n+i>r.stepAfter.startValue&&(i=r.stepAfter.startValue-n),o=n>r.thisStep.startValue?r.thisStep.step:!1!==r.stepBefore.step&&n-r.stepBefore.highestStep,100===e?i=null:0===e&&(o=null);var s=y.countStepDecimals();return null!==i&&!1!==i&&(i=Number(i.toFixed(s))),null!==o&&!1!==o&&(o=Number(o.toFixed(s))),[o,i]}dt(e=d,b.cssClasses.target),0===b.dir?dt(e,b.cssClasses.ltr):dt(e,b.cssClasses.rtl),0===b.ort?dt(e,b.cssClasses.horizontal):dt(e,b.cssClasses.vertical),dt(e,"rtl"===getComputedStyle(e).direction?b.cssClasses.textDirectionRtl:b.cssClasses.textDirectionLtr),l=C(e,b.cssClasses.base),function(t,e){var r=C(e,b.cssClasses.connects);u=[],(s=[]).push(V(r,t[0]));for(var n=0;n<b.handles;n++)u.push(N(e,n)),h[n]=n,s.push(V(r,t[n+1]))}(b.connect,l),(c=b.events).fixed||u.forEach(function(t,e){H(p.start,t.children[0],q,{handleNumbers:[e]})}),c.tap&&H(p.start,l,n,{}),c.hover&&H(p.move,l,X,{hover:!0}),c.drag&&s.forEach(function(e,r){if(!1!==e&&0!==r&&r!==s.length-1){var n=u[r-1],i=u[r],t=[e];dt(e,b.cssClasses.draggable),c.fixed&&(t.push(n.children[0]),t.push(i.children[0])),t.forEach(function(t){H(p.start,t,q,{handles:[n,i],handleNumbers:[r-1,r],connect:e})})}}),rt(b.start),b.pips&&j(b.pips),b.tooltips&&A(),I("update"+gt.aria),Y("update"+gt.aria,function(t,e,s,r,a){h.forEach(function(t){var e=u[t],r=$(x,t,0,!0,!0,!0),n=$(x,t,100,!0,!0,!0),i=a[t],o=String(b.ariaFormat.to(s[t]));r=y.fromStepping(r).toFixed(1),n=y.fromStepping(n).toFixed(1),i=y.fromStepping(i).toFixed(1),e.children[0].setAttribute("aria-valuemin",r),e.children[0].setAttribute("aria-valuemax",n),e.children[0].setAttribute("aria-valuenow",i),e.children[0].setAttribute("aria-valuetext",o)})});var ot={destroy:function(){for(I(gt.aria),I(gt.tooltips),Object.keys(b.cssClasses).forEach(function(t){ht(d,b.cssClasses[t])});d.firstChild;)d.removeChild(d.firstChild);delete d.noUiSlider},steps:function(){return h.map(it)},on:Y,off:I,get:nt,set:rt,setHandle:function(t,e,r,n){if(!(0<=(t=Number(t))&&t<h.length))throw new Error("noUiSlider: invalid handle number, got: "+t);Z(t,et(e,t),!0,!0,n),W("update",t),r&&W("set",t)},reset:function(t){rt(b.start,t)},__moveHandles:function(t,e,r){J(t,e,x,r)},options:o,updateOptions:function(e,t){var r=nt(),n=["margin","limit","padding","range","animate","snap","step","format","pips","tooltips"];n.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var i=vt(o);n.forEach(function(t){void 0!==e[t]&&(b[t]=i[t])}),y=i.spectrum,b.margin=i.margin,b.limit=i.limit,b.padding=i.padding,b.pips?j(b.pips):O(),b.tooltips?A():M(),x=[],rt(lt(e.start)?e.start:r,t)},target:d,removePips:O,removeTooltips:M,getTooltips:function(){return a},getOrigins:function(){return u},pips:j};return ot}function z(t,e){if(!t||!t.nodeName)throw new Error("noUiSlider: create requires a single element, got: "+t);if(t.noUiSlider)throw new Error("noUiSlider: Slider was already initialized.");var r=j(t,vt(e),e);return t.noUiSlider=r}var H={__spectrum:a,cssClasses:u,create:z};st.create=z,st.cssClasses=u,st.default=H,Object.defineProperty(st,"__esModule",{value:!0})});
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/004-bootstrap-select.min.js b/mailcow/src/mailcow-dockerized/data/web/js/build/004-bootstrap-select.min.js
index 1457222..9af7c9f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/build/004-bootstrap-select.min.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/build/004-bootstrap-select.min.js
@@ -4,5 +4,5 @@
  * Copyright 2013-2017 bootstrap-select
  * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE)
  */
-!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof module&&module.exports?module.exports=b(require("jquery")):b(a.jQuery)}(this,function(a){!function(a){"use strict";function b(b){var c=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];return a.each(c,function(){b=b?b.replace(this.re,this.ch):""}),b}function c(b){var c=arguments,d=b;[].shift.apply(c);var e,f=this.each(function(){var b=a(this);if(b.is("select")){var f=b.data("selectpicker"),g="object"==typeof d&&d;if(f){if(g)for(var h in g)g.hasOwnProperty(h)&&(f.options[h]=g[h])}else{var i=a.extend({},k.DEFAULTS,a.fn.selectpicker.defaults||{},b.data(),g);i.template=a.extend({},k.DEFAULTS.template,a.fn.selectpicker.defaults?a.fn.selectpicker.defaults.template:{},b.data().template,g.template),b.data("selectpicker",f=new k(this,i))}"string"==typeof d&&(e=f[d]instanceof Function?f[d].apply(f,c):f.options[d])}});return"undefined"!=typeof e?e:f}String.prototype.includes||!function(){var a={}.toString,b=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(a){}return c}(),c="".indexOf,d=function(b){if(null==this)throw new TypeError;var d=String(this);if(b&&"[object RegExp]"==a.call(b))throw new TypeError;var e=d.length,f=String(b),g=f.length,h=arguments.length>1?arguments[1]:void 0,i=h?Number(h):0;i!=i&&(i=0);var j=Math.min(Math.max(i,0),e);return!(g+j>e)&&c.call(d,f,i)!=-1};b?b(String.prototype,"includes",{value:d,configurable:!0,writable:!0}):String.prototype.includes=d}(),String.prototype.startsWith||!function(){var a=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(a){}return c}(),b={}.toString,c=function(a){if(null==this)throw new TypeError;var c=String(this);if(a&&"[object RegExp]"==b.call(a))throw new TypeError;var d=c.length,e=String(a),f=e.length,g=arguments.length>1?arguments[1]:void 0,h=g?Number(g):0;h!=h&&(h=0);var i=Math.min(Math.max(h,0),d);if(f+i>d)return!1;for(var j=-1;++j<f;)if(c.charCodeAt(i+j)!=e.charCodeAt(j))return!1;return!0};a?a(String.prototype,"startsWith",{value:c,configurable:!0,writable:!0}):String.prototype.startsWith=c}(),Object.keys||(Object.keys=function(a,b,c){c=[];for(b in a)c.hasOwnProperty.call(a,b)&&c.push(b);return c});var d={useDefault:!1,_set:a.valHooks.select.set};a.valHooks.select.set=function(b,c){return c&&!d.useDefault&&a(b).data("selected",!0),d._set.apply(this,arguments)};var e=null;a.fn.triggerNative=function(a){var b,c=this[0];c.dispatchEvent?("function"==typeof Event?b=new Event(a,{bubbles:!0}):(b=document.createEvent("Event"),b.initEvent(a,!0,!1)),c.dispatchEvent(b)):c.fireEvent?(b=document.createEventObject(),b.eventType=a,c.fireEvent("on"+a,b)):this.trigger(a)},a.expr.pseudos.icontains=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.text()).toString().toUpperCase();return f.includes(d[3].toUpperCase())},a.expr.pseudos.ibegins=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.text()).toString().toUpperCase();return f.startsWith(d[3].toUpperCase())},a.expr.pseudos.aicontains=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.data("normalizedText")||e.text()).toString().toUpperCase();return f.includes(d[3].toUpperCase())},a.expr.pseudos.aibegins=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.data("normalizedText")||e.text()).toString().toUpperCase();return f.startsWith(d[3].toUpperCase())};var f={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},g={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x60;":"`"},h=function(a){var b=function(b){return a[b]},c="(?:"+Object.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}},i=h(f),j=h(g),k=function(b,c){d.useDefault||(a.valHooks.select.set=d._set,d.useDefault=!0),this.$element=a(b),this.$newElement=null,this.$button=null,this.$menu=null,this.$lis=null,this.options=c,null===this.options.title&&(this.options.title=this.$element.attr("title"));var e=this.options.windowPadding;"number"==typeof e&&(this.options.windowPadding=[e,e,e,e]),this.val=k.prototype.val,this.render=k.prototype.render,this.refresh=k.prototype.refresh,this.setStyle=k.prototype.setStyle,this.selectAll=k.prototype.selectAll,this.deselectAll=k.prototype.deselectAll,this.destroy=k.prototype.destroy,this.remove=k.prototype.remove,this.show=k.prototype.show,this.hide=k.prototype.hide,this.init()};k.VERSION="1.12.2",k.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results matched {0}",countSelectedText:function(a,b){return 1==a?"{0} item selected":"{0} items selected"},maxOptionsText:function(a,b){return[1==a?"Limit reached ({n} item max)":"Limit reached ({n} items max)",1==b?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)"]},selectAllText:"Select All",deselectAllText:"Deselect All",doneButton:!1,doneButtonText:"Close",multipleSeparator:", ",styleBase:"btn",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,liveSearchPlaceholder:null,liveSearchNormalize:!1,liveSearchStyle:"contains",actionsBox:!1,iconBase:"glyphicon",tickIcon:"glyphicon-ok",showTick:!1,template:{caret:'<span class="caret"></span>'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0},k.prototype={constructor:k,init:function(){var b=this,c=this.$element.attr("id");this.$element.addClass("bs-select-hidden"),this.liObj={},this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$newElement=this.createView(),this.$element.after(this.$newElement).appendTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(".dropdown-menu"),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element.removeClass("bs-select-hidden"),this.options.dropdownAlignRight===!0&&this.$menu.addClass("dropdown-menu-right"),"undefined"!=typeof c&&(this.$button.attr("data-id",c),a('label[for="'+c+'"]').click(function(a){a.preventDefault(),b.$button.focus()})),this.checkDisabled(),this.clickListener(),this.options.liveSearch&&this.liveSearchListener(),this.render(),this.setStyle(),this.setWidth(),this.options.container&&this.selectPosition(),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(a){b.$menuInner.attr("aria-expanded",!1),b.$element.trigger("hide.bs.select",a)},"hidden.bs.dropdown":function(a){b.$element.trigger("hidden.bs.select",a)},"show.bs.dropdown":function(a){b.$menuInner.attr("aria-expanded",!0),b.$element.trigger("show.bs.select",a)},"shown.bs.dropdown":function(a){b.$element.trigger("shown.bs.select",a)}}),b.$element[0].hasAttribute("required")&&this.$element.on("invalid",function(){b.$button.addClass("bs-invalid").focus(),b.$element.on({"focus.bs.select":function(){b.$button.focus(),b.$element.off("focus.bs.select")},"shown.bs.select":function(){b.$element.val(b.$element.val()).off("shown.bs.select")},"rendered.bs.select":function(){this.validity.valid&&b.$button.removeClass("bs-invalid"),b.$element.off("rendered.bs.select")}})}),setTimeout(function(){b.$element.trigger("loaded.bs.select")})},createDropdown:function(){var b=this.multiple||this.options.showTick?" show-tick":"",c=this.$element.parent().hasClass("input-group")?" input-group-btn":"",d=this.autofocus?" autofocus":"",e=this.options.header?'<div class="popover-title"><button type="button" class="close" aria-hidden="true">&times;</button>'+this.options.header+"</div>":"",f=this.options.liveSearch?'<div class="bs-searchbox"><input type="text" class="form-control" autocomplete="off"'+(null===this.options.liveSearchPlaceholder?"":' placeholder="'+i(this.options.liveSearchPlaceholder)+'"')+' role="textbox" aria-label="Search"></div>':"",g=this.multiple&&this.options.actionsBox?'<div class="bs-actionsbox"><div class="btn-group btn-group-sm btn-block"><button type="button" class="actions-btn bs-select-all btn btn-default">'+this.options.selectAllText+'</button><button type="button" class="actions-btn bs-deselect-all btn btn-default">'+this.options.deselectAllText+"</button></div></div>":"",h=this.multiple&&this.options.doneButton?'<div class="bs-donebutton"><div class="btn-group btn-block"><button type="button" class="btn btn-sm btn-default">'+this.options.doneButtonText+"</button></div></div>":"",j='<div class="btn-group bootstrap-select'+b+c+'"><button type="button" class="'+this.options.styleBase+' dropdown-toggle" data-toggle="dropdown"'+d+' role="button"><span class="filter-option pull-left"></span>&nbsp;<span class="bs-caret">'+this.options.template.caret+'</span></button><div class="dropdown-menu open" role="combobox">'+e+f+g+'<ul class="dropdown-menu inner" role="listbox" aria-expanded="false"></ul>'+h+"</div></div>";return a(j)},createView:function(){var a=this.createDropdown(),b=this.createLi();return a.find("ul")[0].innerHTML=b,a},reloadLi:function(){var a=this.createLi();this.$menuInner[0].innerHTML=a},createLi:function(){var c=this,d=[],e=0,f=document.createElement("option"),g=-1,h=function(a,b,c,d){return"<li"+("undefined"!=typeof c&""!==c?' class="'+c+'"':"")+("undefined"!=typeof b&null!==b?' data-original-index="'+b+'"':"")+("undefined"!=typeof d&null!==d?'data-optgroup="'+d+'"':"")+">"+a+"</li>"},j=function(d,e,f,g){return'<a tabindex="0"'+("undefined"!=typeof e?' class="'+e+'"':"")+(f?' style="'+f+'"':"")+(c.options.liveSearchNormalize?' data-normalized-text="'+b(i(a(d).html()))+'"':"")+("undefined"!=typeof g||null!==g?' data-tokens="'+g+'"':"")+' role="option">'+d+'<span class="'+c.options.iconBase+" "+c.options.tickIcon+' check-mark"></span></a>'};if(this.options.title&&!this.multiple&&(g--,!this.$element.find(".bs-title-option").length)){var k=this.$element[0];f.className="bs-title-option",f.innerHTML=this.options.title,f.value="",k.insertBefore(f,k.firstChild);var l=a(k.options[k.selectedIndex]);void 0===l.attr("selected")&&void 0===this.$element.data("selected")&&(f.selected=!0)}return this.$element.find("option").each(function(b){var f=a(this);if(g++,!f.hasClass("bs-title-option")){var k=this.className||"",l=this.style.cssText,m=f.data("content")?f.data("content"):f.html(),n=f.data("tokens")?f.data("tokens"):null,o="undefined"!=typeof f.data("subtext")?'<small class="text-muted">'+f.data("subtext")+"</small>":"",p="undefined"!=typeof f.data("icon")?'<span class="'+c.options.iconBase+" "+f.data("icon")+'"></span> ':"",q=f.parent(),r="OPTGROUP"===q[0].tagName,s=r&&q[0].disabled,t=this.disabled||s;if(""!==p&&t&&(p="<span>"+p+"</span>"),c.options.hideDisabled&&(t&&!r||s))return void g--;if(f.data("content")||(m=p+'<span class="text">'+m+o+"</span>"),r&&f.data("divider")!==!0){if(c.options.hideDisabled&&t){if(void 0===q.data("allOptionsDisabled")){var u=q.children();q.data("allOptionsDisabled",u.filter(":disabled").length===u.length)}if(q.data("allOptionsDisabled"))return void g--}var v=" "+q[0].className||"";if(0===f.index()){e+=1;var w=q[0].label,x="undefined"!=typeof q.data("subtext")?'<small class="text-muted">'+q.data("subtext")+"</small>":"",y=q.data("icon")?'<span class="'+c.options.iconBase+" "+q.data("icon")+'"></span> ':"";w=y+'<span class="text">'+i(w)+x+"</span>",0!==b&&d.length>0&&(g++,d.push(h("",null,"divider",e+"div"))),g++,d.push(h(w,null,"dropdown-header"+v,e))}if(c.options.hideDisabled&&t)return void g--;d.push(h(j(m,"opt "+k+v,l,n),b,"",e))}else if(f.data("divider")===!0)d.push(h("",b,"divider"));else if(f.data("hidden")===!0)d.push(h(j(m,k,l,n),b,"hidden is-hidden"));else{var z=this.previousElementSibling&&"OPTGROUP"===this.previousElementSibling.tagName;if(!z&&c.options.hideDisabled)for(var A=a(this).prevAll(),B=0;B<A.length;B++)if("OPTGROUP"===A[B].tagName){for(var C=0,D=0;D<B;D++){var E=A[D];(E.disabled||a(E).data("hidden")===!0)&&C++}C===B&&(z=!0);break}z&&(g++,d.push(h("",null,"divider",e+"div"))),d.push(h(j(m,k,l,n),b))}c.liObj[b]=g}}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),d.join("")},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(b){var c,d=this;b!==!1&&this.$element.find("option").each(function(a){var b=d.findLis().eq(d.liObj[a]);d.setDisabled(a,this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled,b),d.setSelected(a,this.selected,b)}),this.togglePlaceholder(),this.tabIndex();var e=this.$element.find("option").map(function(){if(this.selected){if(d.options.hideDisabled&&(this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled))return;var b,c=a(this),e=c.data("icon")&&d.options.showIcon?'<i class="'+d.options.iconBase+" "+c.data("icon")+'"></i> ':"";return b=d.options.showSubtext&&c.data("subtext")&&!d.multiple?' <small class="text-muted">'+c.data("subtext")+"</small>":"","undefined"!=typeof c.attr("title")?c.attr("title"):c.data("content")&&d.options.showContent?c.data("content").toString():e+c.html()+b}}).toArray(),f=this.multiple?e.join(this.options.multipleSeparator):e[0];if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var g=this.options.selectedTextFormat.split(">");if(g.length>1&&e.length>g[1]||1==g.length&&e.length>=2){c=this.options.hideDisabled?", [disabled]":"";var h=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+c).length,i="function"==typeof this.options.countSelectedText?this.options.countSelectedText(e.length,h):this.options.countSelectedText;f=i.replace("{0}",e.length.toString()).replace("{1}",h.toString())}}void 0==this.options.title&&(this.options.title=this.$element.attr("title")),"static"==this.options.selectedTextFormat&&(f=this.options.title),f||(f="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText),this.$button.attr("title",j(a.trim(f.replace(/<[^>]*>?/g,"")))),this.$button.children(".filter-option").html(f),this.$element.trigger("rendered.bs.select")},setStyle:function(a,b){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,""));var c=a?a:this.options.style;"add"==b?this.$button.addClass(c):"remove"==b?this.$button.removeClass(c):(this.$button.removeClass(this.options.style),this.$button.addClass(c))},liHeight:function(b){if(b||this.options.size!==!1&&!this.sizeInfo){var c=document.createElement("div"),d=document.createElement("div"),e=document.createElement("ul"),f=document.createElement("li"),g=document.createElement("li"),h=document.createElement("a"),i=document.createElement("span"),j=this.options.header&&this.$menu.find(".popover-title").length>0?this.$menu.find(".popover-title")[0].cloneNode(!0):null,k=this.options.liveSearch?document.createElement("div"):null,l=this.options.actionsBox&&this.multiple&&this.$menu.find(".bs-actionsbox").length>0?this.$menu.find(".bs-actionsbox")[0].cloneNode(!0):null,m=this.options.doneButton&&this.multiple&&this.$menu.find(".bs-donebutton").length>0?this.$menu.find(".bs-donebutton")[0].cloneNode(!0):null;if(i.className="text",c.className=this.$menu[0].parentNode.className+" open",d.className="dropdown-menu open",e.className="dropdown-menu inner",f.className="divider",i.appendChild(document.createTextNode("Inner text")),h.appendChild(i),g.appendChild(h),e.appendChild(g),e.appendChild(f),j&&d.appendChild(j),k){var n=document.createElement("input");k.className="bs-searchbox",n.className="form-control",k.appendChild(n),d.appendChild(k)}l&&d.appendChild(l),d.appendChild(e),m&&d.appendChild(m),c.appendChild(d),document.body.appendChild(c);var o=h.offsetHeight,p=j?j.offsetHeight:0,q=k?k.offsetHeight:0,r=l?l.offsetHeight:0,s=m?m.offsetHeight:0,t=a(f).outerHeight(!0),u="function"==typeof getComputedStyle&&getComputedStyle(d),v=u?null:a(d),w={vert:parseInt(u?u.paddingTop:v.css("paddingTop"))+parseInt(u?u.paddingBottom:v.css("paddingBottom"))+parseInt(u?u.borderTopWidth:v.css("borderTopWidth"))+parseInt(u?u.borderBottomWidth:v.css("borderBottomWidth")),horiz:parseInt(u?u.paddingLeft:v.css("paddingLeft"))+parseInt(u?u.paddingRight:v.css("paddingRight"))+parseInt(u?u.borderLeftWidth:v.css("borderLeftWidth"))+parseInt(u?u.borderRightWidth:v.css("borderRightWidth"))},x={vert:w.vert+parseInt(u?u.marginTop:v.css("marginTop"))+parseInt(u?u.marginBottom:v.css("marginBottom"))+2,horiz:w.horiz+parseInt(u?u.marginLeft:v.css("marginLeft"))+parseInt(u?u.marginRight:v.css("marginRight"))+2};document.body.removeChild(c),this.sizeInfo={liHeight:o,headerHeight:p,searchHeight:q,actionsHeight:r,doneButtonHeight:s,dividerHeight:t,menuPadding:w,menuExtras:x}}},setSize:function(){if(this.findLis(),this.liHeight(),this.options.header&&this.$menu.css("padding-top",0),this.options.size!==!1){var b,c,d,e,f,g,h,i,j=this,k=this.$menu,l=this.$menuInner,m=a(window),n=this.$newElement[0].offsetHeight,o=this.$newElement[0].offsetWidth,p=this.sizeInfo.liHeight,q=this.sizeInfo.headerHeight,r=this.sizeInfo.searchHeight,s=this.sizeInfo.actionsHeight,t=this.sizeInfo.doneButtonHeight,u=this.sizeInfo.dividerHeight,v=this.sizeInfo.menuPadding,w=this.sizeInfo.menuExtras,x=this.options.hideDisabled?".disabled":"",y=function(){var b,c=j.$newElement.offset(),d=a(j.options.container);j.options.container&&!d.is("body")?(b=d.offset(),b.top+=parseInt(d.css("borderTopWidth")),b.left+=parseInt(d.css("borderLeftWidth"))):b={top:0,left:0};var e=j.options.windowPadding;f=c.top-b.top-m.scrollTop(),g=m.height()-f-n-b.top-e[2],h=c.left-b.left-m.scrollLeft(),i=m.width()-h-o-b.left-e[1],f-=e[0],h-=e[3]};if(y(),"auto"===this.options.size){var z=function(){var m,n=function(b,c){return function(d){return c?d.classList?d.classList.contains(b):a(d).hasClass(b):!(d.classList?d.classList.contains(b):a(d).hasClass(b))}},u=j.$menuInner[0].getElementsByTagName("li"),x=Array.prototype.filter?Array.prototype.filter.call(u,n("hidden",!1)):j.$lis.not(".hidden"),z=Array.prototype.filter?Array.prototype.filter.call(x,n("dropdown-header",!0)):x.filter(".dropdown-header");y(),b=g-w.vert,c=i-w.horiz,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height"),k.data("width")||k.data("width",k.width()),e=k.data("width")):(d=k.height(),e=k.width()),j.options.dropupAuto&&j.$newElement.toggleClass("dropup",f>g&&b-w.vert<d),j.$newElement.hasClass("dropup")&&(b=f-w.vert),"auto"===j.options.dropdownAlignRight&&k.toggleClass("dropdown-menu-right",h>i&&c-w.horiz<e-o),m=x.length+z.length>3?3*p+w.vert-2:0,k.css({"max-height":b+"px",overflow:"hidden","min-height":m+q+r+s+t+"px"}),l.css({"max-height":b-q-r-s-t-v.vert+"px","overflow-y":"auto","min-height":Math.max(m-v.vert,0)+"px"})};z(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",z),m.off("resize.getSize scroll.getSize").on("resize.getSize scroll.getSize",z)}else if(this.options.size&&"auto"!=this.options.size&&this.$lis.not(x).length>this.options.size){var A=this.$lis.not(".divider").not(x).children().slice(0,this.options.size).last().parent().index(),B=this.$lis.slice(0,A+1).filter(".divider").length;b=p*this.options.size+B*u+v.vert,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height")):d=k.height(),j.options.dropupAuto&&this.$newElement.toggleClass("dropup",f>g&&b-w.vert<d),k.css({"max-height":b+q+r+s+t+"px",overflow:"hidden","min-height":""}),l.css({"max-height":b-v.vert+"px","overflow-y":"auto","min-height":""})}}},setWidth:function(){if("auto"===this.options.width){this.$menu.css("min-width","0");var a=this.$menu.parent().clone().appendTo("body"),b=this.options.container?this.$newElement.clone().appendTo("body"):a,c=a.children(".dropdown-menu").outerWidth(),d=b.css("width","auto").children("button").outerWidth();a.remove(),b.remove(),this.$newElement.css("width",Math.max(c,d)+"px")}else"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width",""));this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement.removeClass("fit-width")},selectPosition:function(){this.$bsContainer=a('<div class="bs-container" />');var b,c,d,e=this,f=a(this.options.container),g=function(a){e.$bsContainer.addClass(a.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass("dropup",a.hasClass("dropup")),b=a.offset(),f.is("body")?c={top:0,left:0}:(c=f.offset(),c.top+=parseInt(f.css("borderTopWidth"))-f.scrollTop(),c.left+=parseInt(f.css("borderLeftWidth"))-f.scrollLeft()),d=a.hasClass("dropup")?0:a[0].offsetHeight,e.$bsContainer.css({top:b.top-c.top+d,left:b.left-c.left,width:a[0].offsetWidth})};this.$button.on("click",function(){var b=a(this);e.isDisabled()||(g(e.$newElement),e.$bsContainer.appendTo(e.options.container).toggleClass("open",!b.hasClass("open")).append(e.$menu))}),a(window).on("resize scroll",function(){g(e.$newElement)}),this.$element.on("hide.bs.select",function(){e.$menu.data("height",e.$menu.height()),e.$bsContainer.detach()})},setSelected:function(a,b,c){c||(this.togglePlaceholder(),c=this.findLis().eq(this.liObj[a])),c.toggleClass("selected",b).find("a").attr("aria-selected",b)},setDisabled:function(a,b,c){c||(c=this.findLis().eq(this.liObj[a])),b?c.addClass("disabled").children("a").attr("href","#").attr("tabindex",-1).attr("aria-disabled",!0):c.removeClass("disabled").children("a").removeAttr("href").attr("tabindex",0).attr("aria-disabled",!1)},isDisabled:function(){return this.$element[0].disabled},checkDisabled:function(){var a=this;this.isDisabled()?(this.$newElement.addClass("disabled"),this.$button.addClass("disabled").attr("tabindex",-1).attr("aria-disabled",!0)):(this.$button.hasClass("disabled")&&(this.$newElement.removeClass("disabled"),this.$button.removeClass("disabled").attr("aria-disabled",!1)),this.$button.attr("tabindex")!=-1||this.$element.data("tabindex")||this.$button.removeAttr("tabindex")),this.$button.click(function(){return!a.isDisabled()})},togglePlaceholder:function(){var a=this.$element.val();this.$button.toggleClass("bs-placeholder",null===a||""===a||a.constructor===Array&&0===a.length)},tabIndex:function(){this.$element.data("tabindex")!==this.$element.attr("tabindex")&&this.$element.attr("tabindex")!==-98&&"-98"!==this.$element.attr("tabindex")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex"))),this.$element.attr("tabindex",-98)},clickListener:function(){var b=this,c=a(document);c.data("spaceSelect",!1),this.$button.on("keyup",function(a){/(32)/.test(a.keyCode.toString(10))&&c.data("spaceSelect")&&(a.preventDefault(),c.data("spaceSelect",!1))}),this.$button.on("click",function(){b.setSize()}),this.$element.on("shown.bs.select",function(){if(b.options.liveSearch||b.multiple){if(!b.multiple){var a=b.liObj[b.$element[0].selectedIndex];if("number"!=typeof a||b.options.size===!1)return;var c=b.$lis.eq(a)[0].offsetTop-b.$menuInner[0].offsetTop;c=c-b.$menuInner[0].offsetHeight/2+b.sizeInfo.liHeight/2,b.$menuInner[0].scrollTop=c}}else b.$menuInner.find(".selected a").focus()}),this.$menuInner.on("click","li a",function(c){var d=a(this),f=d.parent().data("originalIndex"),g=b.$element.val(),h=b.$element.prop("selectedIndex"),i=!0;if(b.multiple&&1!==b.options.maxOptions&&c.stopPropagation(),c.preventDefault(),!b.isDisabled()&&!d.parent().hasClass("disabled")){var j=b.$element.find("option"),k=j.eq(f),l=k.prop("selected"),m=k.parent("optgroup"),n=b.options.maxOptions,o=m.data("maxOptions")||!1;if(b.multiple){if(k.prop("selected",!l),b.setSelected(f,!l),d.blur(),n!==!1||o!==!1){var p=n<j.filter(":selected").length,q=o<m.find("option:selected").length;if(n&&p||o&&q)if(n&&1==n)j.prop("selected",!1),k.prop("selected",!0),b.$menuInner.find(".selected").removeClass("selected"),b.setSelected(f,!0);else if(o&&1==o){m.find("option:selected").prop("selected",!1),k.prop("selected",!0);var r=d.parent().data("optgroup");b.$menuInner.find('[data-optgroup="'+r+'"]').removeClass("selected"),b.setSelected(f,!0)}else{var s="string"==typeof b.options.maxOptionsText?[b.options.maxOptionsText,b.options.maxOptionsText]:b.options.maxOptionsText,t="function"==typeof s?s(n,o):s,u=t[0].replace("{n}",n),v=t[1].replace("{n}",o),w=a('<div class="notify"></div>');t[2]&&(u=u.replace("{var}",t[2][n>1?0:1]),v=v.replace("{var}",t[2][o>1?0:1])),k.prop("selected",!1),b.$menu.append(w),n&&p&&(w.append(a("<div>"+u+"</div>")),i=!1,b.$element.trigger("maxReached.bs.select")),o&&q&&(w.append(a("<div>"+v+"</div>")),i=!1,b.$element.trigger("maxReachedGrp.bs.select")),setTimeout(function(){b.setSelected(f,!1)},10),w.delay(750).fadeOut(300,function(){a(this).remove()})}}}else j.prop("selected",!1),k.prop("selected",!0),b.$menuInner.find(".selected").removeClass("selected").find("a").attr("aria-selected",!1),b.setSelected(f,!0);!b.multiple||b.multiple&&1===b.options.maxOptions?b.$button.focus():b.options.liveSearch&&b.$searchbox.focus(),i&&(g!=b.$element.val()&&b.multiple||h!=b.$element.prop("selectedIndex")&&!b.multiple)&&(e=[f,k.prop("selected"),l],b.$element.triggerNative("change"))}}),this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(c){c.currentTarget==this&&(c.preventDefault(),c.stopPropagation(),b.options.liveSearch&&!a(c.target).hasClass("close")?b.$searchbox.focus():b.$button.focus())}),this.$menuInner.on("click",".divider, .dropdown-header",function(a){a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus()}),this.$menu.on("click",".popover-title .close",function(){b.$button.click()}),this.$searchbox.on("click",function(a){a.stopPropagation()}),this.$menu.on("click",".actions-btn",function(c){b.options.liveSearch?b.$searchbox.focus():b.$button.focus(),c.preventDefault(),c.stopPropagation(),a(this).hasClass("bs-select-all")?b.selectAll():b.deselectAll()}),this.$element.change(function(){b.render(!1),b.$element.trigger("changed.bs.select",e),e=null})},liveSearchListener:function(){var c=this,d=a('<li class="no-results"></li>');this.$button.on("click.dropdown.data-api",function(){c.$menuInner.find(".active").removeClass("active"),c.$searchbox.val()&&(c.$searchbox.val(""),c.$lis.not(".is-hidden").removeClass("hidden"),d.parent().length&&d.remove()),c.multiple||c.$menuInner.find(".selected").addClass("active"),setTimeout(function(){c.$searchbox.focus()},10)}),this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(a){a.stopPropagation()}),this.$searchbox.on("input propertychange",function(){if(c.$lis.not(".is-hidden").removeClass("hidden"),c.$lis.filter(".active").removeClass("active"),d.remove(),c.$searchbox.val()){var e,f=c.$lis.not(".is-hidden, .divider, .dropdown-header");if(e=c.options.liveSearchNormalize?f.find("a").not(":a"+c._searchStyle()+'("'+b(c.$searchbox.val())+'")'):f.find("a").not(":"+c._searchStyle()+'("'+c.$searchbox.val()+'")'),e.length===f.length)d.html(c.options.noneResultsText.replace("{0}",'"'+i(c.$searchbox.val())+'"')),c.$menuInner.append(d),c.$lis.addClass("hidden");else{e.parent().addClass("hidden");var g,h=c.$lis.not(".hidden");h.each(function(b){var c=a(this);c.hasClass("divider")?void 0===g?c.addClass("hidden"):(g&&g.addClass("hidden"),g=c):c.hasClass("dropdown-header")&&h.eq(b+1).data("optgroup")!==c.data("optgroup")?c.addClass("hidden"):g=null}),g&&g.addClass("hidden"),f.not(".hidden").first().addClass("active")}}})},_searchStyle:function(){var a={begins:"ibegins",startsWith:"ibegins"};return a[this.options.liveSearchStyle]||"icontains"},val:function(a){return"undefined"!=typeof a?(this.$element.val(a),this.render(),this.$element):this.$element.val()},changeAll:function(b){if(this.multiple){"undefined"==typeof b&&(b=!0),this.findLis();var c=this.$element.find("option"),d=this.$lis.not(".divider, .dropdown-header, .disabled, .hidden"),e=d.length,f=[];if(b){if(d.filter(".selected").length===d.length)return}else if(0===d.filter(".selected").length)return;d.toggleClass("selected",b);for(var g=0;g<e;g++){var h=d[g].getAttribute("data-original-index");f[f.length]=c.eq(h)[0]}a(f).prop("selected",b),this.render(!1),this.togglePlaceholder(),this.$element.triggerNative("change")}},selectAll:function(){return this.changeAll(!0)},deselectAll:function(){return this.changeAll(!1)},toggle:function(a){a=a||window.event,a&&a.stopPropagation(),this.$button.trigger("click")},keydown:function(c){var d,e,f,g,h,i,j,k,l,m=a(this),n=m.is("input")?m.parent().parent():m.parent(),o=n.data("this"),p=":not(.disabled, .hidden, .dropdown-header, .divider)",q={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};if(o.options.liveSearch&&(n=m.parent().parent()),o.options.container&&(n=o.$menu),d=a('[role="listbox"] li',n),l=o.$newElement.hasClass("open"),!l&&(c.keyCode>=48&&c.keyCode<=57||c.keyCode>=96&&c.keyCode<=105||c.keyCode>=65&&c.keyCode<=90))return o.options.container?o.$button.trigger("click"):(o.setSize(),o.$menu.parent().addClass("open"),l=!0),void o.$searchbox.focus();if(o.options.liveSearch&&(/(^9$|27)/.test(c.keyCode.toString(10))&&l&&(c.preventDefault(),c.stopPropagation(),o.$menuInner.click(),o.$button.focus()),d=a('[role="listbox"] li'+p,n),m.val()||/(38|40)/.test(c.keyCode.toString(10))||0===d.filter(".active").length&&(d=o.$menuInner.find("li"),d=o.options.liveSearchNormalize?d.filter(":a"+o._searchStyle()+"("+b(q[c.keyCode])+")"):d.filter(":"+o._searchStyle()+"("+q[c.keyCode]+")"))),d.length){if(/(38|40)/.test(c.keyCode.toString(10)))e=d.index(d.find("a").filter(":focus").parent()),g=d.filter(p).first().index(),h=d.filter(p).last().index(),f=d.eq(e).nextAll(p).eq(0).index(),i=d.eq(e).prevAll(p).eq(0).index(),j=d.eq(f).prevAll(p).eq(0).index(),o.options.liveSearch&&(d.each(function(b){a(this).hasClass("disabled")||a(this).data("index",b)}),e=d.index(d.filter(".active")),g=d.first().data("index"),h=d.last().data("index"),f=d.eq(e).nextAll().eq(0).data("index"),i=d.eq(e).prevAll().eq(0).data("index"),j=d.eq(f).prevAll().eq(0).data("index")),k=m.data("prevIndex"),38==c.keyCode?(o.options.liveSearch&&e--,e!=j&&e>i&&(e=i),e<g&&(e=g),e==k&&(e=h)):40==c.keyCode&&(o.options.liveSearch&&e++,e==-1&&(e=0),e!=j&&e<f&&(e=f),e>h&&(e=h),e==k&&(e=g)),m.data("prevIndex",e),o.options.liveSearch?(c.preventDefault(),m.hasClass("dropdown-toggle")||(d.removeClass("active").eq(e).addClass("active").children("a").focus(),m.focus())):d.eq(e).children("a").focus();else if(!m.is("input")){var r,s,t=[];d.each(function(){a(this).hasClass("disabled")||a.trim(a(this).children("a").text().toLowerCase()).substring(0,1)==q[c.keyCode]&&t.push(a(this).index())}),r=a(document).data("keycount"),r++,a(document).data("keycount",r),s=a.trim(a(":focus").text().toLowerCase()).substring(0,1),s!=q[c.keyCode]?(r=1,a(document).data("keycount",r)):r>=t.length&&(a(document).data("keycount",0),r>t.length&&(r=1)),d.eq(t[r-1]).children("a").focus()}if((/(13|32)/.test(c.keyCode.toString(10))||/(^9$)/.test(c.keyCode.toString(10))&&o.options.selectOnTab)&&l){if(/(32)/.test(c.keyCode.toString(10))||c.preventDefault(),o.options.liveSearch)/(32)/.test(c.keyCode.toString(10))||(o.$menuInner.find(".active a").click(),
+!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof module&&module.exports?module.exports=b(require("jquery")):b(a.jQuery)}(this,function(a){!function(a){"use strict";function b(b){var c=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];return a.each(c,function(){b=b?b.replace(this.re,this.ch):""}),b}function c(b){var c=arguments,d=b;[].shift.apply(c);var e,f=this.each(function(){var b=a(this);if(b.is("select")){var f=b.data("selectpicker"),g="object"==typeof d&&d;if(f){if(g)for(var h in g)g.hasOwnProperty(h)&&(f.options[h]=g[h])}else{var i=a.extend({},k.DEFAULTS,a.fn.selectpicker.defaults||{},b.data(),g);i.template=a.extend({},k.DEFAULTS.template,a.fn.selectpicker.defaults?a.fn.selectpicker.defaults.template:{},b.data().template,g.template),b.data("selectpicker",f=new k(this,i))}"string"==typeof d&&(e=f[d]instanceof Function?f[d].apply(f,c):f.options[d])}});return"undefined"!=typeof e?e:f}String.prototype.includes||!function(){var a={}.toString,b=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(a){}return c}(),c="".indexOf,d=function(b){if(null==this)throw new TypeError;var d=String(this);if(b&&"[object RegExp]"==a.call(b))throw new TypeError;var e=d.length,f=String(b),g=f.length,h=arguments.length>1?arguments[1]:void 0,i=h?Number(h):0;i!=i&&(i=0);var j=Math.min(Math.max(i,0),e);return!(g+j>e)&&c.call(d,f,i)!=-1};b?b(String.prototype,"includes",{value:d,configurable:!0,writable:!0}):String.prototype.includes=d}(),String.prototype.startsWith||!function(){var a=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(a){}return c}(),b={}.toString,c=function(a){if(null==this)throw new TypeError;var c=String(this);if(a&&"[object RegExp]"==b.call(a))throw new TypeError;var d=c.length,e=String(a),f=e.length,g=arguments.length>1?arguments[1]:void 0,h=g?Number(g):0;h!=h&&(h=0);var i=Math.min(Math.max(h,0),d);if(f+i>d)return!1;for(var j=-1;++j<f;)if(c.charCodeAt(i+j)!=e.charCodeAt(j))return!1;return!0};a?a(String.prototype,"startsWith",{value:c,configurable:!0,writable:!0}):String.prototype.startsWith=c}(),Object.keys||(Object.keys=function(a,b,c){c=[];for(b in a)c.hasOwnProperty.call(a,b)&&c.push(b);return c});var d={useDefault:!1,_set:a.valHooks.select.set};a.valHooks.select.set=function(b,c){return c&&!d.useDefault&&a(b).data("selected",!0),d._set.apply(this,arguments)};var e=null;a.fn.triggerNative=function(a){var b,c=this[0];c.dispatchEvent?("function"==typeof Event?b=new Event(a,{bubbles:!0}):(b=document.createEvent("Event"),b.initEvent(a,!0,!1)),c.dispatchEvent(b)):c.fireEvent?(b=document.createEventObject(),b.eventType=a,c.fireEvent("on"+a,b)):this.trigger(a)},a.expr.pseudos.icontains=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.text()).toString().toUpperCase();return f.includes(d[3].toUpperCase())},a.expr.pseudos.ibegins=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.text()).toString().toUpperCase();return f.startsWith(d[3].toUpperCase())},a.expr.pseudos.aicontains=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.data("normalizedText")||e.text()).toString().toUpperCase();return f.includes(d[3].toUpperCase())},a.expr.pseudos.aibegins=function(b,c,d){var e=a(b),f=(e.data("tokens")||e.data("normalizedText")||e.text()).toString().toUpperCase();return f.startsWith(d[3].toUpperCase())};var f={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},g={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x60;":"`"},h=function(a){var b=function(b){return a[b]},c="(?:"+Object.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}},i=h(f),j=h(g),k=function(b,c){d.useDefault||(a.valHooks.select.set=d._set,d.useDefault=!0),this.$element=a(b),this.$newElement=null,this.$button=null,this.$menu=null,this.$lis=null,this.options=c,null===this.options.title&&(this.options.title=this.$element.attr("title"));var e=this.options.windowPadding;"number"==typeof e&&(this.options.windowPadding=[e,e,e,e]),this.val=k.prototype.val,this.render=k.prototype.render,this.refresh=k.prototype.refresh,this.setStyle=k.prototype.setStyle,this.selectAll=k.prototype.selectAll,this.deselectAll=k.prototype.deselectAll,this.destroy=k.prototype.destroy,this.remove=k.prototype.remove,this.show=k.prototype.show,this.hide=k.prototype.hide,this.init()};k.VERSION="1.12.2",k.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results matched {0}",countSelectedText:function(a,b){return 1==a?"{0} item selected":"{0} items selected"},maxOptionsText:function(a,b){return[1==a?"Limit reached ({n} item max)":"Limit reached ({n} items max)",1==b?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)"]},selectAllText:"Select All",deselectAllText:"Deselect All",doneButton:!1,doneButtonText:"Close",multipleSeparator:", ",styleBase:"btn",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,liveSearchPlaceholder:null,liveSearchNormalize:!1,liveSearchStyle:"contains",actionsBox:!1,iconBase:"bi",tickIcon:"bi-check-lg",showTick:!1,template:{caret:'<span class="caret"></span>'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0},k.prototype={constructor:k,init:function(){var b=this,c=this.$element.attr("id");this.$element.addClass("bs-select-hidden"),this.liObj={},this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$newElement=this.createView(),this.$element.after(this.$newElement).appendTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(".dropdown-menu"),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element.removeClass("bs-select-hidden"),this.options.dropdownAlignRight===!0&&this.$menu.addClass("dropdown-menu-right"),"undefined"!=typeof c&&(this.$button.attr("data-id",c),a('label[for="'+c+'"]').click(function(a){a.preventDefault(),b.$button.focus()})),this.checkDisabled(),this.clickListener(),this.options.liveSearch&&this.liveSearchListener(),this.render(),this.setStyle(),this.setWidth(),this.options.container&&this.selectPosition(),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(a){b.$menuInner.attr("aria-expanded",!1),b.$element.trigger("hide.bs.select",a)},"hidden.bs.dropdown":function(a){b.$element.trigger("hidden.bs.select",a)},"show.bs.dropdown":function(a){b.$menuInner.attr("aria-expanded",!0),b.$element.trigger("show.bs.select",a)},"shown.bs.dropdown":function(a){b.$element.trigger("shown.bs.select",a)}}),b.$element[0].hasAttribute("required")&&this.$element.on("invalid",function(){b.$button.addClass("bs-invalid").focus(),b.$element.on({"focus.bs.select":function(){b.$button.focus(),b.$element.off("focus.bs.select")},"shown.bs.select":function(){b.$element.val(b.$element.val()).off("shown.bs.select")},"rendered.bs.select":function(){this.validity.valid&&b.$button.removeClass("bs-invalid"),b.$element.off("rendered.bs.select")}})}),setTimeout(function(){b.$element.trigger("loaded.bs.select")})},createDropdown:function(){var b=this.multiple||this.options.showTick?" show-tick":"",c=this.$element.parent().hasClass("input-group")?" input-group-btn":"",d=this.autofocus?" autofocus":"",e=this.options.header?'<div class="popover-title"><button type="button" class="close" aria-hidden="true">&times;</button>'+this.options.header+"</div>":"",f=this.options.liveSearch?'<div class="bs-searchbox"><input type="text" class="form-control" autocomplete="off"'+(null===this.options.liveSearchPlaceholder?"":' placeholder="'+i(this.options.liveSearchPlaceholder)+'"')+' role="textbox" aria-label="Search"></div>':"",g=this.multiple&&this.options.actionsBox?'<div class="bs-actionsbox"><div class="btn-group btn-group-sm btn-block"><button type="button" class="actions-btn bs-select-all btn btn-default">'+this.options.selectAllText+'</button><button type="button" class="actions-btn bs-deselect-all btn btn-default">'+this.options.deselectAllText+"</button></div></div>":"",h=this.multiple&&this.options.doneButton?'<div class="bs-donebutton"><div class="btn-group btn-block"><button type="button" class="btn btn-sm btn-default">'+this.options.doneButtonText+"</button></div></div>":"",j='<div class="btn-group bootstrap-select'+b+c+'"><button type="button" class="'+this.options.styleBase+' dropdown-toggle" data-toggle="dropdown"'+d+' role="button"><span class="filter-option pull-left"></span>&nbsp;<span class="bs-caret">'+this.options.template.caret+'</span></button><div class="dropdown-menu open" role="combobox">'+e+f+g+'<ul class="dropdown-menu inner" role="listbox" aria-expanded="false"></ul>'+h+"</div></div>";return a(j)},createView:function(){var a=this.createDropdown(),b=this.createLi();return a.find("ul")[0].innerHTML=b,a},reloadLi:function(){var a=this.createLi();this.$menuInner[0].innerHTML=a},createLi:function(){var c=this,d=[],e=0,f=document.createElement("option"),g=-1,h=function(a,b,c,d){return"<li"+("undefined"!=typeof c&""!==c?' class="'+c+'"':"")+("undefined"!=typeof b&null!==b?' data-original-index="'+b+'"':"")+("undefined"!=typeof d&null!==d?'data-optgroup="'+d+'"':"")+">"+a+"</li>"},j=function(d,e,f,g){return'<a tabindex="0"'+("undefined"!=typeof e?' class="'+e+'"':"")+(f?' style="'+f+'"':"")+(c.options.liveSearchNormalize?' data-normalized-text="'+b(i(a(d).html()))+'"':"")+("undefined"!=typeof g||null!==g?' data-tokens="'+g+'"':"")+' role="option">'+d+'<span class="'+c.options.iconBase+" "+c.options.tickIcon+' check-mark"></span></a>'};if(this.options.title&&!this.multiple&&(g--,!this.$element.find(".bs-title-option").length)){var k=this.$element[0];f.className="bs-title-option",f.innerHTML=this.options.title,f.value="",k.insertBefore(f,k.firstChild);var l=a(k.options[k.selectedIndex]);void 0===l.attr("selected")&&void 0===this.$element.data("selected")&&(f.selected=!0)}return this.$element.find("option").each(function(b){var f=a(this);if(g++,!f.hasClass("bs-title-option")){var k=this.className||"",l=this.style.cssText,m=f.data("content")?f.data("content"):f.html(),n=f.data("tokens")?f.data("tokens"):null,o="undefined"!=typeof f.data("subtext")?'<small class="text-muted">'+f.data("subtext")+"</small>":"",p="undefined"!=typeof f.data("icon")?'<span class="'+c.options.iconBase+" "+f.data("icon")+'"></span> ':"",q=f.parent(),r="OPTGROUP"===q[0].tagName,s=r&&q[0].disabled,t=this.disabled||s;if(""!==p&&t&&(p="<span>"+p+"</span>"),c.options.hideDisabled&&(t&&!r||s))return void g--;if(f.data("content")||(m=p+'<span class="text">'+m+o+"</span>"),r&&f.data("divider")!==!0){if(c.options.hideDisabled&&t){if(void 0===q.data("allOptionsDisabled")){var u=q.children();q.data("allOptionsDisabled",u.filter(":disabled").length===u.length)}if(q.data("allOptionsDisabled"))return void g--}var v=" "+q[0].className||"";if(0===f.index()){e+=1;var w=q[0].label,x="undefined"!=typeof q.data("subtext")?'<small class="text-muted">'+q.data("subtext")+"</small>":"",y=q.data("icon")?'<span class="'+c.options.iconBase+" "+q.data("icon")+'"></span> ':"";w=y+'<span class="text">'+i(w)+x+"</span>",0!==b&&d.length>0&&(g++,d.push(h("",null,"divider",e+"div"))),g++,d.push(h(w,null,"dropdown-header"+v,e))}if(c.options.hideDisabled&&t)return void g--;d.push(h(j(m,"opt "+k+v,l,n),b,"",e))}else if(f.data("divider")===!0)d.push(h("",b,"divider"));else if(f.data("hidden")===!0)d.push(h(j(m,k,l,n),b,"hidden is-hidden"));else{var z=this.previousElementSibling&&"OPTGROUP"===this.previousElementSibling.tagName;if(!z&&c.options.hideDisabled)for(var A=a(this).prevAll(),B=0;B<A.length;B++)if("OPTGROUP"===A[B].tagName){for(var C=0,D=0;D<B;D++){var E=A[D];(E.disabled||a(E).data("hidden")===!0)&&C++}C===B&&(z=!0);break}z&&(g++,d.push(h("",null,"divider",e+"div"))),d.push(h(j(m,k,l,n),b))}c.liObj[b]=g}}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),d.join("")},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(b){var c,d=this;b!==!1&&this.$element.find("option").each(function(a){var b=d.findLis().eq(d.liObj[a]);d.setDisabled(a,this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled,b),d.setSelected(a,this.selected,b)}),this.togglePlaceholder(),this.tabIndex();var e=this.$element.find("option").map(function(){if(this.selected){if(d.options.hideDisabled&&(this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled))return;var b,c=a(this),e=c.data("icon")&&d.options.showIcon?'<i class="'+d.options.iconBase+" "+c.data("icon")+'"></i> ':"";return b=d.options.showSubtext&&c.data("subtext")&&!d.multiple?' <small class="text-muted">'+c.data("subtext")+"</small>":"","undefined"!=typeof c.attr("title")?c.attr("title"):c.data("content")&&d.options.showContent?c.data("content").toString():e+c.html()+b}}).toArray(),f=this.multiple?e.join(this.options.multipleSeparator):e[0];if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var g=this.options.selectedTextFormat.split(">");if(g.length>1&&e.length>g[1]||1==g.length&&e.length>=2){c=this.options.hideDisabled?", [disabled]":"";var h=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+c).length,i="function"==typeof this.options.countSelectedText?this.options.countSelectedText(e.length,h):this.options.countSelectedText;f=i.replace("{0}",e.length.toString()).replace("{1}",h.toString())}}void 0==this.options.title&&(this.options.title=this.$element.attr("title")),"static"==this.options.selectedTextFormat&&(f=this.options.title),f||(f="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText),this.$button.attr("title",j(a.trim(f.replace(/<[^>]*>?/g,"")))),this.$button.children(".filter-option").html(f),this.$element.trigger("rendered.bs.select")},setStyle:function(a,b){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,""));var c=a?a:this.options.style;"add"==b?this.$button.addClass(c):"remove"==b?this.$button.removeClass(c):(this.$button.removeClass(this.options.style),this.$button.addClass(c))},liHeight:function(b){if(b||this.options.size!==!1&&!this.sizeInfo){var c=document.createElement("div"),d=document.createElement("div"),e=document.createElement("ul"),f=document.createElement("li"),g=document.createElement("li"),h=document.createElement("a"),i=document.createElement("span"),j=this.options.header&&this.$menu.find(".popover-title").length>0?this.$menu.find(".popover-title")[0].cloneNode(!0):null,k=this.options.liveSearch?document.createElement("div"):null,l=this.options.actionsBox&&this.multiple&&this.$menu.find(".bs-actionsbox").length>0?this.$menu.find(".bs-actionsbox")[0].cloneNode(!0):null,m=this.options.doneButton&&this.multiple&&this.$menu.find(".bs-donebutton").length>0?this.$menu.find(".bs-donebutton")[0].cloneNode(!0):null;if(i.className="text",c.className=this.$menu[0].parentNode.className+" open",d.className="dropdown-menu open",e.className="dropdown-menu inner",f.className="divider",i.appendChild(document.createTextNode("Inner text")),h.appendChild(i),g.appendChild(h),e.appendChild(g),e.appendChild(f),j&&d.appendChild(j),k){var n=document.createElement("input");k.className="bs-searchbox",n.className="form-control",k.appendChild(n),d.appendChild(k)}l&&d.appendChild(l),d.appendChild(e),m&&d.appendChild(m),c.appendChild(d),document.body.appendChild(c);var o=h.offsetHeight,p=j?j.offsetHeight:0,q=k?k.offsetHeight:0,r=l?l.offsetHeight:0,s=m?m.offsetHeight:0,t=a(f).outerHeight(!0),u="function"==typeof getComputedStyle&&getComputedStyle(d),v=u?null:a(d),w={vert:parseInt(u?u.paddingTop:v.css("paddingTop"))+parseInt(u?u.paddingBottom:v.css("paddingBottom"))+parseInt(u?u.borderTopWidth:v.css("borderTopWidth"))+parseInt(u?u.borderBottomWidth:v.css("borderBottomWidth")),horiz:parseInt(u?u.paddingLeft:v.css("paddingLeft"))+parseInt(u?u.paddingRight:v.css("paddingRight"))+parseInt(u?u.borderLeftWidth:v.css("borderLeftWidth"))+parseInt(u?u.borderRightWidth:v.css("borderRightWidth"))},x={vert:w.vert+parseInt(u?u.marginTop:v.css("marginTop"))+parseInt(u?u.marginBottom:v.css("marginBottom"))+2,horiz:w.horiz+parseInt(u?u.marginLeft:v.css("marginLeft"))+parseInt(u?u.marginRight:v.css("marginRight"))+2};document.body.removeChild(c),this.sizeInfo={liHeight:o,headerHeight:p,searchHeight:q,actionsHeight:r,doneButtonHeight:s,dividerHeight:t,menuPadding:w,menuExtras:x}}},setSize:function(){if(this.findLis(),this.liHeight(),this.options.header&&this.$menu.css("padding-top",0),this.options.size!==!1){var b,c,d,e,f,g,h,i,j=this,k=this.$menu,l=this.$menuInner,m=a(window),n=this.$newElement[0].offsetHeight,o=this.$newElement[0].offsetWidth,p=this.sizeInfo.liHeight,q=this.sizeInfo.headerHeight,r=this.sizeInfo.searchHeight,s=this.sizeInfo.actionsHeight,t=this.sizeInfo.doneButtonHeight,u=this.sizeInfo.dividerHeight,v=this.sizeInfo.menuPadding,w=this.sizeInfo.menuExtras,x=this.options.hideDisabled?".disabled":"",y=function(){var b,c=j.$newElement.offset(),d=a(j.options.container);j.options.container&&!d.is("body")?(b=d.offset(),b.top+=parseInt(d.css("borderTopWidth")),b.left+=parseInt(d.css("borderLeftWidth"))):b={top:0,left:0};var e=j.options.windowPadding;f=c.top-b.top-m.scrollTop(),g=m.height()-f-n-b.top-e[2],h=c.left-b.left-m.scrollLeft(),i=m.width()-h-o-b.left-e[1],f-=e[0],h-=e[3]};if(y(),"auto"===this.options.size){var z=function(){var m,n=function(b,c){return function(d){return c?d.classList?d.classList.contains(b):a(d).hasClass(b):!(d.classList?d.classList.contains(b):a(d).hasClass(b))}},u=j.$menuInner[0].getElementsByTagName("li"),x=Array.prototype.filter?Array.prototype.filter.call(u,n("hidden",!1)):j.$lis.not(".hidden"),z=Array.prototype.filter?Array.prototype.filter.call(x,n("dropdown-header",!0)):x.filter(".dropdown-header");y(),b=g-w.vert,c=i-w.horiz,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height"),k.data("width")||k.data("width",k.width()),e=k.data("width")):(d=k.height(),e=k.width()),j.options.dropupAuto&&j.$newElement.toggleClass("dropup",f>g&&b-w.vert<d),j.$newElement.hasClass("dropup")&&(b=f-w.vert),"auto"===j.options.dropdownAlignRight&&k.toggleClass("dropdown-menu-right",h>i&&c-w.horiz<e-o),m=x.length+z.length>3?3*p+w.vert-2:0,k.css({"max-height":b+"px",overflow:"hidden","min-height":m+q+r+s+t+"px"}),l.css({"max-height":b-q-r-s-t-v.vert+"px","overflow-y":"auto","min-height":Math.max(m-v.vert,0)+"px"})};z(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",z),m.off("resize.getSize scroll.getSize").on("resize.getSize scroll.getSize",z)}else if(this.options.size&&"auto"!=this.options.size&&this.$lis.not(x).length>this.options.size){var A=this.$lis.not(".divider").not(x).children().slice(0,this.options.size).last().parent().index(),B=this.$lis.slice(0,A+1).filter(".divider").length;b=p*this.options.size+B*u+v.vert,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height")):d=k.height(),j.options.dropupAuto&&this.$newElement.toggleClass("dropup",f>g&&b-w.vert<d),k.css({"max-height":b+q+r+s+t+"px",overflow:"hidden","min-height":""}),l.css({"max-height":b-v.vert+"px","overflow-y":"auto","min-height":""})}}},setWidth:function(){if("auto"===this.options.width){this.$menu.css("min-width","0");var a=this.$menu.parent().clone().appendTo("body"),b=this.options.container?this.$newElement.clone().appendTo("body"):a,c=a.children(".dropdown-menu").outerWidth(),d=b.css("width","auto").children("button").outerWidth();a.remove(),b.remove(),this.$newElement.css("width",Math.max(c,d)+"px")}else"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width",""));this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement.removeClass("fit-width")},selectPosition:function(){this.$bsContainer=a('<div class="bs-container" />');var b,c,d,e=this,f=a(this.options.container),g=function(a){e.$bsContainer.addClass(a.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass("dropup",a.hasClass("dropup")),b=a.offset(),f.is("body")?c={top:0,left:0}:(c=f.offset(),c.top+=parseInt(f.css("borderTopWidth"))-f.scrollTop(),c.left+=parseInt(f.css("borderLeftWidth"))-f.scrollLeft()),d=a.hasClass("dropup")?0:a[0].offsetHeight,e.$bsContainer.css({top:b.top-c.top+d,left:b.left-c.left,width:a[0].offsetWidth})};this.$button.on("click",function(){var b=a(this);e.isDisabled()||(g(e.$newElement),e.$bsContainer.appendTo(e.options.container).toggleClass("open",!b.hasClass("open")).append(e.$menu))}),a(window).on("resize scroll",function(){g(e.$newElement)}),this.$element.on("hide.bs.select",function(){e.$menu.data("height",e.$menu.height()),e.$bsContainer.detach()})},setSelected:function(a,b,c){c||(this.togglePlaceholder(),c=this.findLis().eq(this.liObj[a])),c.toggleClass("selected",b).find("a").attr("aria-selected",b)},setDisabled:function(a,b,c){c||(c=this.findLis().eq(this.liObj[a])),b?c.addClass("disabled").children("a").attr("href","#").attr("tabindex",-1).attr("aria-disabled",!0):c.removeClass("disabled").children("a").removeAttr("href").attr("tabindex",0).attr("aria-disabled",!1)},isDisabled:function(){return this.$element[0].disabled},checkDisabled:function(){var a=this;this.isDisabled()?(this.$newElement.addClass("disabled"),this.$button.addClass("disabled").attr("tabindex",-1).attr("aria-disabled",!0)):(this.$button.hasClass("disabled")&&(this.$newElement.removeClass("disabled"),this.$button.removeClass("disabled").attr("aria-disabled",!1)),this.$button.attr("tabindex")!=-1||this.$element.data("tabindex")||this.$button.removeAttr("tabindex")),this.$button.click(function(){return!a.isDisabled()})},togglePlaceholder:function(){var a=this.$element.val();this.$button.toggleClass("bs-placeholder",null===a||""===a||a.constructor===Array&&0===a.length)},tabIndex:function(){this.$element.data("tabindex")!==this.$element.attr("tabindex")&&this.$element.attr("tabindex")!==-98&&"-98"!==this.$element.attr("tabindex")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex"))),this.$element.attr("tabindex",-98)},clickListener:function(){var b=this,c=a(document);c.data("spaceSelect",!1),this.$button.on("keyup",function(a){/(32)/.test(a.keyCode.toString(10))&&c.data("spaceSelect")&&(a.preventDefault(),c.data("spaceSelect",!1))}),this.$button.on("click",function(){b.setSize()}),this.$element.on("shown.bs.select",function(){if(b.options.liveSearch||b.multiple){if(!b.multiple){var a=b.liObj[b.$element[0].selectedIndex];if("number"!=typeof a||b.options.size===!1)return;var c=b.$lis.eq(a)[0].offsetTop-b.$menuInner[0].offsetTop;c=c-b.$menuInner[0].offsetHeight/2+b.sizeInfo.liHeight/2,b.$menuInner[0].scrollTop=c}}else b.$menuInner.find(".selected a").focus()}),this.$menuInner.on("click","li a",function(c){var d=a(this),f=d.parent().data("originalIndex"),g=b.$element.val(),h=b.$element.prop("selectedIndex"),i=!0;if(b.multiple&&1!==b.options.maxOptions&&c.stopPropagation(),c.preventDefault(),!b.isDisabled()&&!d.parent().hasClass("disabled")){var j=b.$element.find("option"),k=j.eq(f),l=k.prop("selected"),m=k.parent("optgroup"),n=b.options.maxOptions,o=m.data("maxOptions")||!1;if(b.multiple){if(k.prop("selected",!l),b.setSelected(f,!l),d.blur(),n!==!1||o!==!1){var p=n<j.filter(":selected").length,q=o<m.find("option:selected").length;if(n&&p||o&&q)if(n&&1==n)j.prop("selected",!1),k.prop("selected",!0),b.$menuInner.find(".selected").removeClass("selected"),b.setSelected(f,!0);else if(o&&1==o){m.find("option:selected").prop("selected",!1),k.prop("selected",!0);var r=d.parent().data("optgroup");b.$menuInner.find('[data-optgroup="'+r+'"]').removeClass("selected"),b.setSelected(f,!0)}else{var s="string"==typeof b.options.maxOptionsText?[b.options.maxOptionsText,b.options.maxOptionsText]:b.options.maxOptionsText,t="function"==typeof s?s(n,o):s,u=t[0].replace("{n}",n),v=t[1].replace("{n}",o),w=a('<div class="notify"></div>');t[2]&&(u=u.replace("{var}",t[2][n>1?0:1]),v=v.replace("{var}",t[2][o>1?0:1])),k.prop("selected",!1),b.$menu.append(w),n&&p&&(w.append(a("<div>"+u+"</div>")),i=!1,b.$element.trigger("maxReached.bs.select")),o&&q&&(w.append(a("<div>"+v+"</div>")),i=!1,b.$element.trigger("maxReachedGrp.bs.select")),setTimeout(function(){b.setSelected(f,!1)},10),w.delay(750).fadeOut(300,function(){a(this).remove()})}}}else j.prop("selected",!1),k.prop("selected",!0),b.$menuInner.find(".selected").removeClass("selected").find("a").attr("aria-selected",!1),b.setSelected(f,!0);!b.multiple||b.multiple&&1===b.options.maxOptions?b.$button.focus():b.options.liveSearch&&b.$searchbox.focus(),i&&(g!=b.$element.val()&&b.multiple||h!=b.$element.prop("selectedIndex")&&!b.multiple)&&(e=[f,k.prop("selected"),l],b.$element.triggerNative("change"))}}),this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(c){c.currentTarget==this&&(c.preventDefault(),c.stopPropagation(),b.options.liveSearch&&!a(c.target).hasClass("close")?b.$searchbox.focus():b.$button.focus())}),this.$menuInner.on("click",".divider, .dropdown-header",function(a){a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus()}),this.$menu.on("click",".popover-title .close",function(){b.$button.click()}),this.$searchbox.on("click",function(a){a.stopPropagation()}),this.$menu.on("click",".actions-btn",function(c){b.options.liveSearch?b.$searchbox.focus():b.$button.focus(),c.preventDefault(),c.stopPropagation(),a(this).hasClass("bs-select-all")?b.selectAll():b.deselectAll()}),this.$element.change(function(){b.render(!1),b.$element.trigger("changed.bs.select",e),e=null})},liveSearchListener:function(){var c=this,d=a('<li class="no-results"></li>');this.$button.on("click.dropdown.data-api",function(){c.$menuInner.find(".active").removeClass("active"),c.$searchbox.val()&&(c.$searchbox.val(""),c.$lis.not(".is-hidden").removeClass("hidden"),d.parent().length&&d.remove()),c.multiple||c.$menuInner.find(".selected").addClass("active"),setTimeout(function(){c.$searchbox.focus()},10)}),this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(a){a.stopPropagation()}),this.$searchbox.on("input propertychange",function(){if(c.$lis.not(".is-hidden").removeClass("hidden"),c.$lis.filter(".active").removeClass("active"),d.remove(),c.$searchbox.val()){var e,f=c.$lis.not(".is-hidden, .divider, .dropdown-header");if(e=c.options.liveSearchNormalize?f.find("a").not(":a"+c._searchStyle()+'("'+b(c.$searchbox.val())+'")'):f.find("a").not(":"+c._searchStyle()+'("'+c.$searchbox.val()+'")'),e.length===f.length)d.html(c.options.noneResultsText.replace("{0}",'"'+i(c.$searchbox.val())+'"')),c.$menuInner.append(d),c.$lis.addClass("hidden");else{e.parent().addClass("hidden");var g,h=c.$lis.not(".hidden");h.each(function(b){var c=a(this);c.hasClass("divider")?void 0===g?c.addClass("hidden"):(g&&g.addClass("hidden"),g=c):c.hasClass("dropdown-header")&&h.eq(b+1).data("optgroup")!==c.data("optgroup")?c.addClass("hidden"):g=null}),g&&g.addClass("hidden"),f.not(".hidden").first().addClass("active")}}})},_searchStyle:function(){var a={begins:"ibegins",startsWith:"ibegins"};return a[this.options.liveSearchStyle]||"icontains"},val:function(a){return"undefined"!=typeof a?(this.$element.val(a),this.render(),this.$element):this.$element.val()},changeAll:function(b){if(this.multiple){"undefined"==typeof b&&(b=!0),this.findLis();var c=this.$element.find("option"),d=this.$lis.not(".divider, .dropdown-header, .disabled, .hidden"),e=d.length,f=[];if(b){if(d.filter(".selected").length===d.length)return}else if(0===d.filter(".selected").length)return;d.toggleClass("selected",b);for(var g=0;g<e;g++){var h=d[g].getAttribute("data-original-index");f[f.length]=c.eq(h)[0]}a(f).prop("selected",b),this.render(!1),this.togglePlaceholder(),this.$element.triggerNative("change")}},selectAll:function(){return this.changeAll(!0)},deselectAll:function(){return this.changeAll(!1)},toggle:function(a){a=a||window.event,a&&a.stopPropagation(),this.$button.trigger("click")},keydown:function(c){var d,e,f,g,h,i,j,k,l,m=a(this),n=m.is("input")?m.parent().parent():m.parent(),o=n.data("this"),p=":not(.disabled, .hidden, .dropdown-header, .divider)",q={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};if(o.options.liveSearch&&(n=m.parent().parent()),o.options.container&&(n=o.$menu),d=a('[role="listbox"] li',n),l=o.$newElement.hasClass("open"),!l&&(c.keyCode>=48&&c.keyCode<=57||c.keyCode>=96&&c.keyCode<=105||c.keyCode>=65&&c.keyCode<=90))return o.options.container?o.$button.trigger("click"):(o.setSize(),o.$menu.parent().addClass("open"),l=!0),void o.$searchbox.focus();if(o.options.liveSearch&&(/(^9$|27)/.test(c.keyCode.toString(10))&&l&&(c.preventDefault(),c.stopPropagation(),o.$menuInner.click(),o.$button.focus()),d=a('[role="listbox"] li'+p,n),m.val()||/(38|40)/.test(c.keyCode.toString(10))||0===d.filter(".active").length&&(d=o.$menuInner.find("li"),d=o.options.liveSearchNormalize?d.filter(":a"+o._searchStyle()+"("+b(q[c.keyCode])+")"):d.filter(":"+o._searchStyle()+"("+q[c.keyCode]+")"))),d.length){if(/(38|40)/.test(c.keyCode.toString(10)))e=d.index(d.find("a").filter(":focus").parent()),g=d.filter(p).first().index(),h=d.filter(p).last().index(),f=d.eq(e).nextAll(p).eq(0).index(),i=d.eq(e).prevAll(p).eq(0).index(),j=d.eq(f).prevAll(p).eq(0).index(),o.options.liveSearch&&(d.each(function(b){a(this).hasClass("disabled")||a(this).data("index",b)}),e=d.index(d.filter(".active")),g=d.first().data("index"),h=d.last().data("index"),f=d.eq(e).nextAll().eq(0).data("index"),i=d.eq(e).prevAll().eq(0).data("index"),j=d.eq(f).prevAll().eq(0).data("index")),k=m.data("prevIndex"),38==c.keyCode?(o.options.liveSearch&&e--,e!=j&&e>i&&(e=i),e<g&&(e=g),e==k&&(e=h)):40==c.keyCode&&(o.options.liveSearch&&e++,e==-1&&(e=0),e!=j&&e<f&&(e=f),e>h&&(e=h),e==k&&(e=g)),m.data("prevIndex",e),o.options.liveSearch?(c.preventDefault(),m.hasClass("dropdown-toggle")||(d.removeClass("active").eq(e).addClass("active").children("a").focus(),m.focus())):d.eq(e).children("a").focus();else if(!m.is("input")){var r,s,t=[];d.each(function(){a(this).hasClass("disabled")||a.trim(a(this).children("a").text().toLowerCase()).substring(0,1)==q[c.keyCode]&&t.push(a(this).index())}),r=a(document).data("keycount"),r++,a(document).data("keycount",r),s=a.trim(a(":focus").text().toLowerCase()).substring(0,1),s!=q[c.keyCode]?(r=1,a(document).data("keycount",r)):r>=t.length&&(a(document).data("keycount",0),r>t.length&&(r=1)),d.eq(t[r-1]).children("a").focus()}if((/(13|32)/.test(c.keyCode.toString(10))||/(^9$)/.test(c.keyCode.toString(10))&&o.options.selectOnTab)&&l){if(/(32)/.test(c.keyCode.toString(10))||c.preventDefault(),o.options.liveSearch)/(32)/.test(c.keyCode.toString(10))||(o.$menuInner.find(".active a").click(),
 m.focus());else{var u=a(":focus");u.click(),u.focus(),c.preventDefault(),a(document).data("spaceSelect",!0)}a(document).data("keycount",0)}(/(^9$|27)/.test(c.keyCode.toString(10))&&l&&(o.multiple||o.options.liveSearch)||/(27)/.test(c.keyCode.toString(10))&&!l)&&(o.$menu.parent().removeClass("open"),o.options.container&&o.$newElement.removeClass("open"),o.$button.focus())}},mobile:function(){this.$element.addClass("mobile-device")},refresh:function(){this.$lis=null,this.liObj={},this.reloadLi(),this.render(),this.checkDisabled(),this.liHeight(!0),this.setStyle(),this.setWidth(),this.$lis&&this.$searchbox.trigger("propertychange"),this.$element.trigger("refreshed.bs.select")},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(".bs.select").removeData("selectpicker").removeClass("bs-select-hidden selectpicker")}};var l=a.fn.selectpicker;a.fn.selectpicker=c,a.fn.selectpicker.Constructor=k,a.fn.selectpicker.noConflict=function(){return a.fn.selectpicker=l,this},a(document).data("keycount",0).on("keydown.bs.select",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="listbox"], .bs-searchbox input',k.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="listbox"], .bs-searchbox input',function(a){a.stopPropagation()}),a(window).on("load.bs.select.data-api",function(){a(".selectpicker").each(function(){var b=a(this);c.call(b,b.data())})})}(a)});
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/005-bootstrap-filestyle.min.js b/mailcow/src/mailcow-dockerized/data/web/js/build/005-bootstrap-filestyle.min.js
deleted file mode 100644
index 9aa702c..0000000
--- a/mailcow/src/mailcow-dockerized/data/web/js/build/005-bootstrap-filestyle.min.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * bootstrap-filestyle
- * doc: http://markusslima.github.io/bootstrap-filestyle/
- * github: https://github.com/markusslima/bootstrap-filestyle
- *
- * Copyright (c) 2017 Markus Vinicius da Silva Lima
- * Version 1.2.3
- * Licensed under the MIT license.
- */
-!function(t){"use strict";var e=0,i=function(e,i){this.options=i,this.$elementFilestyle=[],this.$element=t(e)};i.prototype={clear:function(){this.$element.val(""),this.$elementFilestyle.find(":text").val(""),this.$elementFilestyle.find(".badge").remove()},destroy:function(){this.$element.removeAttr("style").removeData("filestyle"),this.$elementFilestyle.remove()},disabled:function(t){if(!0===t)this.options.disabled||(this.$element.attr("disabled","true"),this.$elementFilestyle.find("label").attr("disabled","true"),this.options.disabled=!0);else{if(!1!==t)return this.options.disabled;this.options.disabled&&(this.$element.removeAttr("disabled"),this.$elementFilestyle.find("label").removeAttr("disabled"),this.options.disabled=!1)}},buttonBefore:function(t){if(!0===t)this.options.buttonBefore||(this.options.buttonBefore=!0,this.options.input&&(this.$elementFilestyle.remove(),this.constructor(),this.pushNameFiles()));else{if(!1!==t)return this.options.buttonBefore;this.options.buttonBefore&&(this.options.buttonBefore=!1,this.options.input&&(this.$elementFilestyle.remove(),this.constructor(),this.pushNameFiles()))}},icon:function(t){if(!0===t)this.options.icon||(this.options.icon=!0,this.$elementFilestyle.find("label").prepend(this.htmlIcon()));else{if(!1!==t)return this.options.icon;this.options.icon&&(this.options.icon=!1,this.$elementFilestyle.find(".icon-span-filestyle").remove())}},input:function(t){if(!0===t)this.options.input||(this.options.input=!0,this.options.buttonBefore?this.$elementFilestyle.append(this.htmlInput()):this.$elementFilestyle.prepend(this.htmlInput()),this.$elementFilestyle.find(".badge").remove(),this.pushNameFiles(),this.$elementFilestyle.find(".group-span-filestyle").addClass("input-group-btn"));else{if(!1!==t)return this.options.input;if(this.options.input){this.options.input=!1,this.$elementFilestyle.find(":text").remove();var e=this.pushNameFiles();e.length>0&&this.options.badge&&this.$elementFilestyle.find("label").append(' <span class="badge">'+e.length+"</span>"),this.$elementFilestyle.find(".group-span-filestyle").removeClass("input-group-btn")}}},size:function(t){if(void 0===t)return this.options.size;var e=this.$elementFilestyle.find("label"),i=this.$elementFilestyle.find("input");e.removeClass("btn-lg btn-sm"),i.removeClass("input-lg input-sm"),"nr"!=t&&(e.addClass("btn-"+t),i.addClass("input-"+t))},placeholder:function(t){if(void 0===t)return this.options.placeholder;this.options.placeholder=t,this.$elementFilestyle.find("input").attr("placeholder",t)},buttonText:function(t){if(void 0===t)return this.options.buttonText;this.options.buttonText=t,this.$elementFilestyle.find("label .buttonText").html(this.options.buttonText)},buttonName:function(t){if(void 0===t)return this.options.buttonName;this.options.buttonName=t,this.$elementFilestyle.find("label").attr({class:"btn "+this.options.buttonName})},iconName:function(t){if(void 0===t)return this.options.iconName;this.$elementFilestyle.find(".icon-span-filestyle").attr({class:"icon-span-filestyle "+this.options.iconName})},htmlIcon:function(){return this.options.icon?'<span style="margin-right: 3px;" class="icon-span-filestyle '+this.options.iconName+'"></span> ':""},htmlInput:function(){return this.options.input?'<input type="text" class="form-control '+("nr"==this.options.size?"":"input-"+this.options.size)+'" placeholder="'+this.options.placeholder+'" disabled> ':""},pushNameFiles:function(){var t="",e=[];void 0===this.$element[0].files?e[0]={name:this.$element[0]&&this.$element[0].value}:e=this.$element[0].files;for(var i=0;i<e.length;i++)t+=e[i].name.split("\\").pop()+", ";return""!==t?this.$elementFilestyle.find(":text").val(t.replace(/\, $/g,"")):this.$elementFilestyle.find(":text").val(""),e},constructor:function(){var i=this,n="",s=i.$element.attr("id"),l="";""!==s&&s||(s="filestyle-"+e,i.$element.attr({id:s}),e++),l='<span class="group-span-filestyle '+(i.options.input?"input-group-btn":"")+'"><label for="'+s+'" class="btn '+i.options.buttonName+" "+("nr"==i.options.size?"":"btn-"+i.options.size)+'" '+(i.options.disabled||i.$element.attr("disabled")?'disabled="true"':"")+">"+i.htmlIcon()+'<span class="buttonText">'+i.options.buttonText+"</span></label></span>",n=i.options.buttonBefore?l+i.htmlInput():i.htmlInput()+l,i.$elementFilestyle=t('<div class="bootstrap-filestyle input-group">'+n+"</div>"),i.$elementFilestyle.find(".group-span-filestyle").attr("tabindex","0").keypress(function(t){if(13===t.keyCode||32===t.charCode)return i.$elementFilestyle.find("label").click(),!1}),i.$element.css({position:"absolute",clip:"rect(0px 0px 0px 0px)"}).attr("tabindex","-1").after(i.$elementFilestyle),(i.options.disabled||i.$element.attr("disabled"))&&i.$element.attr("disabled","true"),i.$element.change(function(){var t=i.pushNameFiles();0==i.options.input&&i.options.badge?0==i.$elementFilestyle.find(".badge").length?i.$elementFilestyle.find("label").append(' <span class="badge">'+t.length+"</span>"):0==t.length?i.$elementFilestyle.find(".badge").remove():i.$elementFilestyle.find(".badge").html(t.length):i.$elementFilestyle.find(".badge").remove()}),window.navigator.userAgent.search(/firefox/i)>-1&&i.$elementFilestyle.find("label").click(function(){return i.$element.click(),!1})}};var n=t.fn.filestyle;t.fn.filestyle=function(e,n){var s="",l=this.each(function(){if("file"===t(this).attr("type")){var l=t(this),o=l.data("filestyle"),a=t.extend({},t.fn.filestyle.defaults,e,"object"==typeof e&&e);o||(l.data("filestyle",o=new i(this,a)),o.constructor()),"string"==typeof e&&(s=o[e](n))}});return void 0!==typeof s?s:l},t.fn.filestyle.defaults={buttonText:"Choose file",iconName:"glyphicon glyphicon-folder-open",buttonName:"btn-default",size:"nr",input:!0,badge:!0,icon:!0,buttonBefore:!1,disabled:!1,placeholder:""},t.fn.filestyle.noConflict=function(){return t.fn.filestyle=n,this},t(function(){t(".filestyle").each(function(){var e=t(this),i={input:"false"!==e.attr("data-input"),icon:"false"!==e.attr("data-icon"),buttonBefore:"true"===e.attr("data-buttonBefore"),disabled:"true"===e.attr("data-disabled"),size:e.attr("data-size"),buttonText:e.attr("data-buttonText"),buttonName:e.attr("data-buttonName"),iconName:e.attr("data-iconName"),badge:"false"!==e.attr("data-badge"),placeholder:e.attr("data-placeholder")};e.filestyle(i)})})}(window.jQuery);
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/013-bootstrap-tabcollapse.js b/mailcow/src/mailcow-dockerized/data/web/js/build/013-bootstrap-tabcollapse.js
new file mode 100644
index 0000000..6a5f9b8
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/js/build/013-bootstrap-tabcollapse.js
@@ -0,0 +1,239 @@
+!function ($) {
+
+    "use strict";
+
+    // TABCOLLAPSE CLASS DEFINITION
+    // ======================
+
+    var TabCollapse = function (el, options) {
+        this.options   = options;
+        this.$tabs  = $(el);
+
+        this._accordionVisible = false; //content is attached to tabs at first
+        this._initAccordion();
+        this._checkStateOnResize();
+
+
+        // checkState() has gone to setTimeout for making it possible to attach listeners to
+        // shown-accordion.bs.tabcollapse event on page load.
+        // See https://github.com/flatlogic/bootstrap-tabcollapse/issues/23
+        var that = this;
+        setTimeout(function() {
+          that.checkState();
+        }, 0);
+    };
+
+    TabCollapse.DEFAULTS = {
+        accordionClass: 'visible-xs',
+        tabsClass: 'hidden-xs',
+        accordionTemplate: function(heading, groupId, parentId, active) {
+            return  '<div class="panel panel-default">' +
+                    '   <div class="panel-heading">' +
+                    '      <h4 class="panel-title">' +
+                    '      </h4>' +
+                    '   </div>' +
+                    '   <div id="' + groupId + '" class="panel-collapse collapse ' + (active ? 'in' : '') + '">' +
+                    '       <div class="panel-body js-tabcollapse-panel-body">' +
+                    '       </div>' +
+                    '   </div>' +
+                    '</div>'
+
+        }
+    };
+
+    TabCollapse.prototype.checkState = function(){
+        if (this.$tabs.is(':visible') && this._accordionVisible){
+            this.showTabs();
+            this._accordionVisible = false;
+        } else if (this.$accordion.is(':visible') && !this._accordionVisible){
+            this.showAccordion();
+            this._accordionVisible = true;
+        }
+    };
+
+    TabCollapse.prototype.showTabs = function(){
+        var view = this;
+        this.$tabs.trigger($.Event('show-tabs.bs.tabcollapse'));
+
+        var $panelHeadings = this.$accordion.find('.js-tabcollapse-panel-heading').detach();
+
+        $panelHeadings.each(function() {
+            var $panelHeading = $(this),
+            $parentLi = $panelHeading.data('bs.tabcollapse.parentLi');
+
+            var $oldHeading = view._panelHeadingToTabHeading($panelHeading);
+
+            $parentLi.removeClass('active');
+            if ($parentLi.parent().hasClass('dropdown-menu') && !$parentLi.siblings('li').hasClass('active')) {
+                $parentLi.parent().parent().removeClass('active');
+            }
+
+            if (!$oldHeading.hasClass('collapsed')) {
+                $parentLi.addClass('active');
+                $('.tab-pane').removeClass('active');
+                $($panelHeading.attr('href')).addClass('active');
+                if ($parentLi.parent().hasClass('dropdown-menu')) {
+                    $parentLi.parent().parent().addClass('active');
+                }
+            } else {
+                $oldHeading.removeClass('collapsed');
+            }
+
+            $parentLi.append($panelHeading);
+        });
+
+        if (!$('li').hasClass('active')) {
+            $('li').first().addClass('active')
+        }
+
+        var $panelBodies = this.$accordion.find('.js-tabcollapse-panel-body');
+        $panelBodies.each(function(){
+            var $panelBody = $(this),
+                $tabPane = $panelBody.data('bs.tabcollapse.tabpane');
+            $tabPane.append($panelBody.contents().detach());
+        });
+        this.$accordion.html('');
+
+        if(this.options.updateLinks) {
+            var $tabContents = this.getTabContentElement();
+            $tabContents.find('[data-toggle-was="tab"], [data-toggle-was="pill"]').each(function() {
+                var $el = $(this);
+                var href = $el.attr('href').replace(/-collapse$/g, '');
+                $el.attr({
+                    'data-toggle': $el.attr('data-toggle-was'),
+                    'data-toggle-was': '',
+                    'data-parent': '',
+                    href: href
+                });
+            });
+        }
+
+        this.$tabs.trigger($.Event('shown-tabs.bs.tabcollapse'));
+    };
+
+    TabCollapse.prototype.getTabContentElement = function(){
+        var $tabContents = $(this.options.tabContentSelector);
+        if($tabContents.length === 0) {
+            $tabContents = this.$tabs.siblings('.tab-content');
+        }
+        return $tabContents;
+    };
+
+    TabCollapse.prototype.showAccordion = function(){
+        this.$tabs.trigger($.Event('show-accordion.bs.tabcollapse'));
+
+        var $headings = this.$tabs.find('li:not(.dropdown) [data-toggle="tab"], li:not(.dropdown) [data-toggle="pill"]'),
+            view = this;
+        $headings.each(function(){
+            var $heading = $(this),
+                $parentLi = $heading.parent();
+            $heading.data('bs.tabcollapse.parentLi', $parentLi);
+            view.$accordion.append(view._createAccordionGroup(view.$accordion.attr('id'), $heading.detach()));
+        });
+
+        if(this.options.updateLinks) {
+            var parentId = this.$accordion.attr('id');
+            var $selector = this.$accordion.find('.js-tabcollapse-panel-body');
+            $selector.find('[data-toggle="tab"], [data-toggle="pill"]').each(function() {
+                var $el = $(this);
+                var href = $el.attr('href') + '-collapse';
+                $el.attr({
+                    'data-toggle-was': $el.attr('data-toggle'),
+                    'data-toggle': 'collapse',
+                    'data-parent': '#' + parentId,
+                    href: href
+                });
+            });
+        }
+
+        this.$tabs.trigger($.Event('shown-accordion.bs.tabcollapse'));
+    };
+
+    TabCollapse.prototype._panelHeadingToTabHeading = function($heading) {
+        var href = $heading.attr('href').replace(/-collapse$/g, '');
+        $heading.attr({
+            'data-toggle': 'tab',
+            'href': href,
+            'data-parent': ''
+        });
+        return $heading;
+    };
+
+    TabCollapse.prototype._tabHeadingToPanelHeading = function($heading, groupId, parentId, active) {
+        $heading.addClass('js-tabcollapse-panel-heading ' + (active ? '' : 'collapsed'));
+        $heading.attr({
+            'data-toggle': 'collapse',
+            'data-parent': '#' + parentId,
+            'href': '#' + groupId
+        });
+        return $heading;
+    };
+
+    TabCollapse.prototype._checkStateOnResize = function(){
+        var view = this;
+        $(window).resize(function(){
+            clearTimeout(view._resizeTimeout);
+            view._resizeTimeout = setTimeout(function(){
+                view.checkState();
+            }, 100);
+        });
+    };
+
+
+    TabCollapse.prototype._initAccordion = function(){
+        var randomString = function() {
+            var result = "",
+                possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+            for( var i=0; i < 5; i++ ) {
+                result += possible.charAt(Math.floor(Math.random() * possible.length));
+            }
+            return result;
+        };
+
+        var srcId = this.$tabs.attr('id'),
+            accordionId = (srcId ? srcId : randomString()) + '-accordion';
+
+        this.$accordion = $('<div class="panel-group ' + this.options.accordionClass + '" id="' + accordionId +'"></div>');
+        this.$tabs.after(this.$accordion);
+        this.$tabs.addClass(this.options.tabsClass);
+        this.getTabContentElement().addClass(this.options.tabsClass);
+    };
+
+    TabCollapse.prototype._createAccordionGroup = function(parentId, $heading){
+        var tabSelector = $heading.attr('data-target'),
+            active = $heading.data('bs.tabcollapse.parentLi').is('.active');
+
+        if (!tabSelector) {
+            tabSelector = $heading.attr('href');
+            tabSelector = tabSelector && tabSelector.replace(/.*(?=#[^\s]*$)/, ''); //strip for ie7
+        }
+
+        var $tabPane = $(tabSelector),
+            groupId = $tabPane.attr('id') + '-collapse',
+            $panel = $(this.options.accordionTemplate($heading, groupId, parentId, active));
+        $panel.find('.panel-heading > .panel-title').append(this._tabHeadingToPanelHeading($heading, groupId, parentId, active));
+        $panel.find('.panel-body').append($tabPane.contents().detach())
+            .data('bs.tabcollapse.tabpane', $tabPane);
+
+        return $panel;
+    };
+
+
+
+    // TABCOLLAPSE PLUGIN DEFINITION
+    // =======================
+
+    $.fn.tabCollapse = function (option) {
+        return this.each(function () {
+            var $this   = $(this);
+            var data    = $this.data('bs.tabcollapse');
+            var options = $.extend({}, TabCollapse.DEFAULTS, $this.data(), typeof option === 'object' && option);
+
+            if (!data) $this.data('bs.tabcollapse', new TabCollapse(this, options));
+        });
+    };
+
+    $.fn.tabCollapse.Constructor = TabCollapse;
+
+
+}(window.jQuery);
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/build/014-mailcow.js b/mailcow/src/mailcow-dockerized/data/web/js/build/014-mailcow.js
index 7f78c7f..90d8350 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/build/014-mailcow.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/build/014-mailcow.js
@@ -93,10 +93,20 @@
   }).remove();
 
   // selectpicker
-  $('select').selectpicker();
+  $('select').selectpicker({
+    'styleBase': 'btn btn-xs-lg',
+    'noneSelectedText': lang_footer.nothing_selected
+  });
 
-  // haveibeenpwned?
-  $('[data-hibp]').after('<p class="small haveibeenpwned">↪ Check against haveibeenpwned.com</p><span class="hibp-out"></span>');
+  // haveibeenpwned and passwd policy
+  $.ajax({
+    url: '/api/v1/get/passwordpolicy/html',
+    type: 'GET',
+    success: function(res) {
+      $(".hibp-out").after(res);
+    }
+  });
+  $('[data-hibp]').after('<p class="small haveibeenpwned"><i class="bi bi-shield-fill-exclamation"></i> ' + lang_footer.hibp_check + '</p><span class="hibp-out"></span>');
   $('[data-hibp]').on('input', function() {
     out_field = $(this).next('.haveibeenpwned').next('.hibp-out').text('').attr('class', 'hibp-out');
   });
@@ -188,7 +198,9 @@
     } else if ($(this).hasClass('btn')) {
       $(this).attr("disabled", true);
     } else if ($(this).attr('data-provide') == 'slider') {
-      $(this).slider("disable");
+      $(this).attr('disabled', true);
+    } else if ($(this).is(':checkbox')) {
+      $(this).attr("disabled", true);
     }
     $(this).data("toggle", "tooltip");
     $(this).attr("title", lang_acl.prohibited);
@@ -214,7 +226,7 @@
     $('#containerName').text(container);
     $('#triggerRestartContainer').click(function(){
       $(this).prop("disabled",true);
-      $(this).html('<span class="glyphicon glyphicon-refresh glyphicon-spin"></span> ');
+      $(this).html('<i class="bi bi-arrow-repeat icon-spin"></i> ');
       $('#statusTriggerRestartContainer').html(lang_footer.restarting_container);
       $.ajax({
         method: 'get',
@@ -229,15 +241,36 @@
         $('#statusTriggerRestartContainer').append(data);
         var htmlResponse = $.parseHTML(data)
         if ($(htmlResponse).find('span').hasClass('text-success')) {
-          $('#triggerRestartContainer').html('<span class="glyphicon glyphicon-ok"></span> ');
+          $('#triggerRestartContainer').html('<i class="bi bi-check-lg"></i> ');
           setTimeout(function(){
-            $('#RestartContainer').modal('toggle'); 
+            $('#RestartContainer').modal('toggle');
             window.location = window.location.href.split("#")[0];
           }, 1200);
         } else {
-          $('#triggerRestartContainer').html('<span class="glyphicon glyphicon-remove"></span> ');
+          $('#triggerRestartContainer').html('<i class="bi bi-slash-lg"></i> ');
         }
       })
     });
   })
+
+  // responsive tabs
+  $('.responsive-tabs').tabCollapse({
+    tabsClass: 'hidden-xs',
+    accordionClass: 'js-tabcollapse-panel-group visible-xs'
+  });
+  $(document).on("shown.bs.collapse shown.bs.tab", function (e) {
+	  var target = $(e.target);
+	  if($(window).width() <= 767) {
+		  var offset = target.offset().top - 112;
+		  $("html, body").stop().animate({
+		    scrollTop: offset
+		  }, 100);
+	  }
+	  if(target.hasClass('panel-collapse')){
+	    var id = e.target.id.replace(/-collapse$/g, '');
+	    if(id){
+          localStorage.setItem('lastTag', '#'+id);
+        }
+      }
+  });
 });
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/admin.js b/mailcow/src/mailcow-dockerized/data/web/js/site/admin.js
index bdb2eaa..eac7b21 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/admin.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/admin.js
@@ -76,8 +76,8 @@
         {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"username","title":lang.username,"style":{"width":"250px"}},
         {"name":"selected_domains","title":lang.admin_domains,"breakpoints":"xs sm"},
-        {"name":"tfa_active","title":"TFA", "filterable": false,"style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
+        {"name":"tfa_active","title":"TFA", "filterable": false,"style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
         {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "rows": $.ajax({
@@ -131,8 +131,8 @@
       "columns": [
         {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"usr","title":lang.username,"style":{"width":"250px"}},
-        {"name":"tfa_active","title":"TFA", "filterable": false,"style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
+        {"name":"tfa_active","title":"TFA", "filterable": false,"style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
         {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "rows": $.ajax({
@@ -160,7 +160,7 @@
         {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"name":"host","type":"text","title":lang.host,"style":{"width":"250px"}},
         {"name":"source","title":lang.source,"breakpoints":"xs sm"},
-        {"name":"keep_spam","title":lang.spamfilter, "type": "text","style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 'yes'==value?'&#10005;':'no'==value&&'&#10003;';}},
+        {"name":"keep_spam","title":lang.spamfilter, "type": "text","style":{"maxWidth":"80px","width":"80px"},"formatter": function(value){return 'yes'==value?'<i class="bi bi-x-lg"></i>':'no'==value&&'<i class="bi bi-check-lg"></i>';}},
         {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "rows": $.ajax({
@@ -187,9 +187,9 @@
         {"name":"id","type":"text","title":"ID","style":{"width":"50px"}},
         {"name":"hostname","type":"text","title":lang.host,"style":{"width":"250px"}},
         {"name":"username","title":lang.username,"breakpoints":"xs sm"},
-        {"name":"used_by_domains","title":lang.in_use_by,"style":{"width":"110px"}, "type": "text","breakpoints":"xs sm"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"220px","width":"220px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
+        {"name":"in_use_by","title":lang.in_use_by,"style":{"min-width":"200px","width":"200px"}, "type": "text","breakpoints":"xs sm"},
+        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
       ],
       "rows": $.ajax({
         dataType: 'json',
@@ -209,15 +209,15 @@
     });
   }
   function draw_transport_maps() {
-    ft_relayhoststable = FooTable.init('#transportstable', {
+    ft_transportstable = FooTable.init('#transportstable', {
       "columns": [
         {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"name":"id","type":"text","title":"ID","style":{"width":"50px"}},
-        {"name":"destination","type":"text","title":lang.destination,"style":{"width":"250px"}},
-        {"name":"nexthop","type":"text","title":lang.nexthop,"style":{"width":"250px"}},
+        {"name":"destination","type":"text","title":lang.destination,"style":{"min-width":"300px","width":"300px"}},
+        {"name":"nexthop","type":"text","title":lang.nexthop,"style":{"min-width":"200px","width":"200px"}},
         {"name":"username","title":lang.username,"breakpoints":"xs sm"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"220px","width":"220px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
+        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
       ],
       "rows": $.ajax({
         dataType: 'json',
@@ -233,7 +233,12 @@
       "empty": lang.empty,
       "paging": {"enabled": true,"limit": 5,"size": log_pagination_size},
       "sorting": {"enabled": true},
-      "toggleSelector": "table tbody span.footable-toggle"
+      "toggleSelector": "table tbody span.footable-toggle",
+      "on": {
+        "ready.ft.table": function(e, ft){
+          $('.mx-info').tooltip();
+        }
+      }
     });
   }
   function draw_queue() {
@@ -276,22 +281,28 @@
   function process_table_data(data, table) {
     if (table == 'relayhoststable') {
       $.each(data, function (i, item) {
-        item.action = '<div class="btn-group">' +
-          '<a href="#" data-toggle="modal" data-target="#testTransportModal" data-transport-id="' + encodeURI(item.id) + '" data-transport-type="sender-dependent" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-triangle-right"></span> Test</a>' +
-          '<a href="/edit/relayhost/' + encodeURI(item.id) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-          '<a href="#" data-action="delete_selected" data-id="single-rlyhost" data-api-url="delete/relayhost" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="#" data-toggle="modal" data-target="#testTransportModal" data-transport-id="' + encodeURI(item.id) + '" data-transport-type="sender-dependent" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-caret-right-fill"></i> Test</a>' +
+          '<a href="/edit/relayhost/' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+          '<a href="#" data-action="delete_selected" data-id="single-rlyhost" data-api-url="delete/relayhost" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-third btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
           '</div>';
+        if (item.used_by_mailboxes == '') { item.in_use_by = item.used_by_domains; }
+        else if (item.used_by_domains == '') { item.in_use_by = item.used_by_mailboxes; }
+        else { item.in_use_by = item.used_by_mailboxes + '<hr style="margin:5px 0px 5px 0px;">' + item.used_by_domains; }
         item.chkbox = '<input type="checkbox" data-id="rlyhosts" name="multi_select" value="' + item.id + '" />';
       });
     } else if (table == 'transportstable') {
       $.each(data, function (i, item) {
-        if (item.username) {
-          item.username = '<span style="border-left:3px solid #' + intToRGB(hashCode(item.nexthop)) + ';padding-left:5px;">' + item.username + '</span>';
+        if (item.is_mx_based) {
+          item.destination = '<i class="bi bi-info-circle-fill text-info mx-info" data-toggle="tooltip" title="' + lang.is_mx_based + '"></i> <code>' + item.destination + '</code>';
         }
-        item.action = '<div class="btn-group">' +
-          '<a href="#" data-toggle="modal" data-target="#testTransportModal" data-transport-id="' + encodeURI(item.id) + '" data-transport-type="transport-map" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-triangle-right"></span> Test</a>' +
-          '<a href="/edit/transport/' + encodeURI(item.id) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-          '<a href="#" data-action="delete_selected" data-id="single-transport" data-api-url="delete/transport" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+        if (item.username) {
+          item.username = '<i style="color:#' + intToRGB(hashCode(item.nexthop)) + ';" class="bi bi-square-fill"></i> ' + item.username;
+        }
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="#" data-toggle="modal" data-target="#testTransportModal" data-transport-id="' + encodeURI(item.id) + '" data-transport-type="transport-map" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-caret-right-fill"></i> Test</a>' +
+          '<a href="/edit/transport/' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+          '<a href="#" data-action="delete_selected" data-id="single-transport" data-api-url="delete/transport" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-third btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
           '</div>';
         item.chkbox = '<input type="checkbox" data-id="transports" name="multi_select" value="' + item.id + '" />';
       });
@@ -302,22 +313,22 @@
           return escapeHtml(i);
         });
         item.recipients = rcpts.join('<hr style="margin:1px!important">');
-        item.action = '<div class="btn-group">' +
+        item.action = '<div class="btn-group footable-actions">' +
           '<a href="#" data-toggle="modal" data-target="#showQueuedMsg" data-queue-id="' + encodeURI(item.queue_id) + '" class="btn btn-xs btn-default">' + lang.queue_show_message + '</a>' +
           '</div>';
       });
     } else if (table == 'forwardinghoststable') {
       $.each(data, function (i, item) {
-        item.action = '<div class="btn-group">' +
-          '<a href="#" data-action="delete_selected" data-id="single-fwdhost" data-api-url="delete/fwdhost" data-item="' + encodeURI(item.host) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="#" data-action="delete_selected" data-id="single-fwdhost" data-api-url="delete/fwdhost" data-item="' + encodeURI(item.host) + '" class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
           '</div>';
         item.chkbox = '<input type="checkbox" data-id="fwdhosts" name="multi_select" value="' + item.host + '" />';
       });
     } else if (table == 'oauth2clientstable') {
       $.each(data, function (i, item) {
-        item.action = '<div class="btn-group">' +
-          '<a href="/edit.php?oauth2client=' + encodeURI(item.id) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-          '<a href="#" data-action="delete_selected" data-id="single-oauth2-client" data-api-url="delete/oauth2-client" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="/edit.php?oauth2client=' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+          '<a href="#" data-action="delete_selected" data-id="single-oauth2-client" data-api-url="delete/oauth2-client" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
           '</div>';
         item.scope = "profile";
         item.grant_types = 'refresh_token password authorization_code';
@@ -328,23 +339,23 @@
         item.selected_domains = escapeHtml(item.selected_domains);
         item.selected_domains = item.selected_domains.toString().replace(/,/g, "<br>");
         item.chkbox = '<input type="checkbox" data-id="domain_admins" name="multi_select" value="' + item.username + '" />';
-        item.action = '<div class="btn-group">' +
-          '<a href="/edit/domainadmin/' + encodeURI(item.username) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-          '<a href="#" data-action="delete_selected" data-id="single-domain-admin" data-api-url="delete/domain-admin" data-item="' + encodeURI(item.username) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
-          '<a href="/index.php?duallogin=' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-success"><span class="glyphicon glyphicon-user"></span> Login</a>' +
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="/edit/domainadmin/' + encodeURI(item.username) + '" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+          '<a href="#" data-action="delete_selected" data-id="single-domain-admin" data-api-url="delete/domain-admin" data-item="' + encodeURI(item.username) + '" class="btn btn-xs btn-xs-third btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
+          '<a href="/index.php?duallogin=' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-xs-third btn-success"><i class="bi bi-person-fill"></i> Login</a>' +
           '</div>';
       });
     } else if (table == 'adminstable') {
       $.each(data, function (i, item) {
         if (admin_username.toLowerCase() == item.username.toLowerCase()) {
-          item.usr = '→ ' + item.username;
+          item.usr = '<i class="bi bi-person-check"></i> ' + item.username;
         } else {
           item.usr = item.username;
         }
         item.chkbox = '<input type="checkbox" data-id="admins" name="multi_select" value="' + item.username + '" />';
-        item.action = '<div class="btn-group">' +
-          '<a href="/edit/admin/' + encodeURI(item.username) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-          '<a href="#" data-action="delete_selected" data-id="single-admin" data-api-url="delete/admin" data-item="' + encodeURI(item.username) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+        item.action = '<div class="btn-group footable-actions">' +
+          '<a href="/edit/admin/' + encodeURI(item.username) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+          '<a href="#" data-action="delete_selected" data-id="single-admin" data-api-url="delete/admin" data-item="' + encodeURI(item.username) + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
           '</div>';
       });
     }
@@ -358,6 +369,11 @@
   draw_oauth2_clients();
   draw_transport_maps();
   draw_queue();
+
+  $('body').on('click', 'span.footable-toggle', function () {
+    event.stopPropagation();
+  })
+
   // API IP check toggle
   $("#skip_ip_check_ro").click(function( event ) {
    $("#skip_ip_check_ro").not(this).prop('checked', false);
@@ -389,7 +405,7 @@
     e.preventDefault();
     prev = $('#test_relayhost').text();
     $(this).prop("disabled",true);
-    $(this).html('<span class="glyphicon glyphicon-refresh glyphicon-spin"></span> ');
+    $(this).html('<i class="bi bi-arrow-repeat icon-spin"></i> ');
     $.ajax({
         type: 'GET',
         url: 'inc/ajax/relay_check.php',
@@ -431,7 +447,7 @@
     e.preventDefault();
     prev = $('#test_transport').text();
     $(this).prop("disabled",true);
-    $(this).html('<span class="glyphicon glyphicon-refresh glyphicon-spin"></span> ');
+    $(this).html('<i class="bi bi-arrow-repeat icon-spin"></i> ');
     $.ajax({
         type: 'GET',
         url: 'inc/ajax/transport_check.php',
@@ -465,13 +481,13 @@
   function add_table_row(table_id, type) {
     var row = $('<tr />');
     if (type == "app_link") {
-    cols = '<td><input class="input-sm form-control" data-id="app_links" type="text" name="app" required></td>';
-    cols += '<td><input class="input-sm form-control" data-id="app_links" type="text" name="href" required></td>';
-    cols += '<td><a href="#" role="button" class="btn btn-xs btn-default" type="button">' + lang.remove_row + '</a></td>';
+    cols = '<td><input class="input-sm input-xs-lg form-control" data-id="app_links" type="text" name="app" required></td>';
+    cols += '<td><input class="input-sm input-xs-lg form-control" data-id="app_links" type="text" name="href" required></td>';
+    cols += '<td><a href="#" role="button" class="btn btn-sm btn-xs-lg btn-default" type="button">' + lang.remove_row + '</a></td>';
     } else if (type == "f2b_regex") {
-    cols = '<td><input style="text-align:center" class="input-sm form-control" data-id="f2b_regex" type="text" value="+" disabled></td>';
-    cols += '<td><input class="input-sm form-control regex-input" data-id="f2b_regex" type="text" name="regex" required></td>';
-    cols += '<td><a href="#" role="button" class="btn btn-xs btn-default" type="button">' + lang.remove_row + '</a></td>';
+    cols = '<td><input style="text-align:center" class="input-sm input-xs-lg form-control" data-id="f2b_regex" type="text" value="+" disabled></td>';
+    cols += '<td><input class="input-sm input-xs-lg form-control regex-input" data-id="f2b_regex" type="text" name="regex" required></td>';
+    cols += '<td><a href="#" role="button" class="btn btn-sm btn-xs-lg btn-default" type="button">' + lang.remove_row + '</a></td>';
     }
     row.append(cols);
     table_id.append(row);
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/debug.js b/mailcow/src/mailcow-dockerized/data/web/js/site/debug.js
index 9266f95..6b08113 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/debug.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/debug.js
@@ -1,3 +1,42 @@
+$(document).ready(function() {
+  // Parse seconds ago to date
+  // Get "now" timestamp
+  var ts_now = Math.round((new Date()).getTime() / 1000);
+  $('.parse_s_ago').each(function(i, parse_s_ago) {
+    var started_s_ago = parseInt($(this).text(), 10);
+    if (typeof started_s_ago != 'NaN') {
+      var started_date = new Date((ts_now - started_s_ago) * 1000);
+      if (started_date instanceof Date && !isNaN(started_date)) {
+        var started_local_date = started_date.toLocaleDateString(undefined, {
+          year: "numeric",
+          month: "2-digit",
+          day: "2-digit",
+          hour: "2-digit",
+          minute: "2-digit",
+          second: "2-digit"
+        });
+        $(this).text(started_local_date);
+      } else {
+        $(this).text('-');
+      }
+    }
+  });
+  // Parse general dates
+  $('.parse_date').each(function(i, parse_date) {
+    var started_date = new Date(Date.parse($(this).text()));
+    if (typeof started_date != 'NaN') {
+      var started_local_date = started_date.toLocaleDateString(undefined, {
+        year: "numeric",
+        month: "2-digit",
+        day: "2-digit",
+        hour: "2-digit",
+        minute: "2-digit",
+        second: "2-digit"
+      });
+      $(this).text(started_local_date);
+    }
+  });
+});
 jQuery(function($){
   if (localStorage.getItem("current_page") === null) {
     var current_page = {};
@@ -232,7 +271,7 @@
         {"name":"role","title":"Role"},
         {"name":"remote","title":"IP"},
         {"name":"msg","title":lang.message,"style":{"word-break":"break-all"}},
-        {"name":"call","title":"Call","breakpoints": "all"},
+        {"name":"call","title":"Call","breakpoints": "all"}
       ],
       "rows": $.ajax({
         dataType: 'json',
@@ -262,6 +301,42 @@
       }
     });
   }
+  function draw_sasl_logs() {
+    ft_api_logs = FooTable.init('#sasl_logs', {
+      "columns": [
+        {"name":"username","title":lang.username},
+        {"name":"service","title":lang.service},
+        {"name":"real_rip","title":"IP"},
+        {"sorted": true,"sortValue": function(value){res = new Date(value);return res.getTime();},"direction":"DESC","name":"datetime","formatter":function date_format(datetime) { var date = new Date(datetime.replace(/-/g, "/")); return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});},"title":lang.login_time,"style":{"width":"170px"}},
+      ],
+      "rows": $.ajax({
+        dataType: 'json',
+        url: '/api/v1/get/logs/sasl',
+        jsonp: false,
+        error: function () {
+          console.log('Cannot draw sasl log table');
+        },
+        success: function (data) {
+          return process_table_data(data, 'sasl_log_table');
+        }
+      }),
+      "empty": lang.empty,
+      "paging": {"enabled": true,"limit": 5,"size": log_pagination_size},
+      "filtering": {"enabled": true,"delay": 1200,"position": "left","connectors": false,"placeholder": lang.filter_table,"connectors": false},
+      "sorting": {"enabled": true},
+      "on": {
+        "destroy.ft.table": function(e, ft){
+          $('.refresh_table').attr('disabled', 'true');
+        },
+        "ready.ft.table": function(e, ft){
+          table_log_ready(ft, 'sasl_logs');
+        },
+        "after.ft.paging": function(e, ft){
+          table_log_paging(ft, 'sasl_logs');
+        }
+      }
+    });
+  }
   function draw_acme_logs() {
     ft_acme_logs = FooTable.init('#acme_log', {
       "columns": [
@@ -605,13 +680,13 @@
         if (item.message == null) {
           item.message = 'Health level: ' + item.lvl + '% (' + item.hpnow + '/' + item.hptotal + ')';
           if (item.hpdiff < 0) {
-            item.trend = '<span class="label label-danger"><span class="glyphicon glyphicon-arrow-down"></span> ' + item.hpdiff + '</span>';
+            item.trend = '<span class="label label-danger"><i class="bi bi-caret-down-fill"></i> ' + item.hpdiff + '</span>';
           }
           else if (item.hpdiff == 0) {
-            item.trend = '<span class="label label-info"><span class="glyphicon glyphicon-arrow-right"></span> ' + item.hpdiff + '</span>';
+            item.trend = '<span class="label label-info"><i class="bi bi-caret-right-fill"></i> ' + item.hpdiff + '</span>';
           }
           else {
-            item.trend = '<span class="label label-success"><span class="glyphicon glyphicon-arrow-up"></span> ' + item.hpdiff + '</span>';
+            item.trend = '<span class="label label-success"><i class="bi bi-caret-up-fill"></i> ' + item.hpdiff + '</span>';
           }
         }
         else {
@@ -627,11 +702,23 @@
         item.task = '<code>' + item.task + '</code>';
         item.type = '<span class="label label-' + item.type + '">' + item.type + '</span>';
       });
+    } else if (table == 'sasl_log_table') {
+      $.each(data, function (i, item) {
+        if (item === null) { return true; }
+        item.username = escapeHtml(item.username);
+        if (item.service == "smtp") { item.service = '<div class="label label-default">' + item.service.toUpperCase() + '<i class="bi bi-chevron-compact-right"></i></div>'; }
+        else if (item.service == "imap") { item.service = '<div class="label label-default"><i class="bi bi-chevron-compact-left"></i> ' + item.service.toUpperCase() + '</div>'; }
+        else { item.service = '<div class="label label-default">' + item.service.toUpperCase() + '</div>'; }
+    });
     } else if (table == 'general_syslog') {
       $.each(data, function (i, item) {
         if (item === null) { return true; }
         if (item.message.match("^base64,")) {
-          item.message = atob(item.message.slice(7)).replace(/\\n/g, "<br />");
+          try {
+            item.message = atob(item.message.slice(7)).replace(/\\n/g, "<br />");
+          } catch(e) {
+            item.message = item.message.slice(7);
+          }
         } else {
           item.message = escapeHtml(item.message);
         }
@@ -667,7 +754,7 @@
         }
         item.indicator = '<span style="border-right:6px solid #' + intToRGB(hashCode(item.rl_hash)) + ';padding-left:5px;">&nbsp;</span>';
         if (item.rl_hash != 'err') {
-          item.action = '<a href="#" data-action="delete_selected" data-id="single-hash" data-api-url="delete/rlhash" data-item="' + encodeURI(item.rl_hash) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.reset_limit + '</a>';
+          item.action = '<a href="#" data-action="delete_selected" data-id="single-hash" data-api-url="delete/rlhash" data-item="' + encodeURI(item.rl_hash) + '" class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> ' + lang.reset_limit + '</a>';
         }
       });
     }
@@ -707,6 +794,7 @@
   draw_api_logs();
   draw_rl_logs();
   draw_ui_logs();
+  draw_sasl_logs();
   draw_netfilter_logs();
   draw_rspamd_history();
   $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/edit.js b/mailcow/src/mailcow-dockerized/data/web/js/site/edit.js
index 1626d4b..786a599 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/edit.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/edit.js
@@ -28,34 +28,37 @@
     $('#mailbox-passwd-hidden-info').addClass('hidden');
     $('#mailbox-passwd-form-groups').removeClass('hidden');
   });
-});
-if ($("#editSelectMultipleBookings").val() == "custom") {
-  $("#multiple_bookings_custom_div").show();
-  $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
-}
-$("#editSelectMultipleBookings").change(function() {
-  $('input[name=multiple_bookings]').val($("#editSelectMultipleBookings").val());
-  if ($('input[name=multiple_bookings]').val() == "custom") {
-    $("#multiple_bookings_custom_div").show();
-  }
-  else {
-    $("#multiple_bookings_custom_div").hide();
-  }
-});
-if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
-  $("#sender_acl_disabled").show();
-}
-$('#editSelectSenderACL').change(function() {
+  // Sender ACL
   if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
     $("#sender_acl_disabled").show();
   }
-  else {
-    $("#sender_acl_disabled").hide();
+  $('#editSelectSenderACL').change(function() {
+    if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
+      $("#sender_acl_disabled").show();
+    }
+    else {
+      $("#sender_acl_disabled").hide();
+    }
+  });
+  // Resources
+  if ($("#editSelectMultipleBookings").val() == "custom") {
+    $("#multiple_bookings_custom_div").show();
+    $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
   }
+  $("#editSelectMultipleBookings").change(function() {
+    $('input[name=multiple_bookings]').val($("#editSelectMultipleBookings").val());
+    if ($('input[name=multiple_bookings]').val() == "custom") {
+      $("#multiple_bookings_custom_div").show();
+    }
+    else {
+      $("#multiple_bookings_custom_div").hide();
+    }
+  });
+  $("#multiple_bookings_custom").bind("change keypress keyup blur", function() {
+    $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
+  });
 });
-$("#multiple_bookings_custom").bind("change keypress keyup blur", function() {
-  $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
-});
+
 jQuery(function($){
   // http://stackoverflow.com/questions/46155/validate-email-address-in-javascript
   function validateEmail(email) {
@@ -138,4 +141,4 @@
   }
   draw_wl_policy_domain_table();
   draw_bl_policy_domain_table();
-});
\ No newline at end of file
+});
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/mailbox.js b/mailcow/src/mailcow-dockerized/data/web/js/site/mailbox.js
index cbf0193..5cac48d 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/mailbox.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/mailbox.js
@@ -3,7 +3,7 @@
   FooTable.domainFilter = FooTable.Filtering.extend({
     construct: function(instance){
       this._super(instance);
-      this.def = 'All Domains';
+      this.def = lang.all_domains;
       this.$domain = null;
     },
     $create: function(){
@@ -24,7 +24,12 @@
         .appendTo($form_grp);
 
       $.each(domains, function(i, domain){
-        self.$domain.append($('<option/>').text(domain));
+        domainname = $($.parseHTML(domain)).data('domainname')
+        if (domainname !== undefined) {
+          self.$domain.append($('<option/>').text(domainname));
+        } else {
+          self.$domain.append($('<option/>').text(domain));
+        }
       });
     },
     _onDomainDropdownChanged: function(e){
@@ -89,9 +94,9 @@
       }
     });
   }
-	$('#addSelectDomain').on('change', function() {
+  $('#addSelectDomain').on('change', function() {
     auto_fill_quota($('#addSelectDomain').val());
-	});
+  });
   auto_fill_quota($('#addSelectDomain').val());
   $(".goto_checkbox").click(function( event ) {
    $("form[data-id='add_alias'] .goto_checkbox").not(this).prop('checked', false);
@@ -125,22 +130,10 @@
       }
     });
   });
-  // Add Mailbox Modal
-  var addMailboxModalShown = false;
-  $('#addMailboxModal').on('show.bs.modal', function(e) {
-    if (addMailboxModalShown) {
-      return;
-    }
-    addMailboxModalShown = true;
-    var $domainSelect = $("#mailbox_table select");
-    if ($domainSelect[0].selectedIndex > 0) { // not "All Domains"
-      $("#addSelectDomain").val($domainSelect.val()).change().selectpicker("render");
-    }
-  });
   // Log modal
   $('#dnsInfoModal').on('show.bs.modal', function(e) {
     var domain = $(e.relatedTarget).data('domain');
-    $('.dns-modal-body').html('<center><span style="font-size:18pt;margin:50px" class="glyphicon glyphicon-refresh glyphicon-spin"></span></center>');
+    $('.dns-modal-body').html('<center><i class="bi bi-arrow-repeat icon-spin"></i></center>');
     $.ajax({
       url: '/inc/ajax/dns_diagnostics.php',
       data: { domain: domain },
@@ -159,10 +152,10 @@
     $(e.currentTarget).find('#sieveDataText').html('<pre style="font-size:14px;line-height:1.1">' + sieveScript + '</pre>');
   });
   // Disable submit button on script change
-	$('.textarea-code').on('keyup', function() {
+  $('.textarea-code').on('keyup', function() {
     // Disable all "save" buttons, could be a "related button only" function, todo
     $('.add_sieve_script').attr({"disabled": true});
-	});
+  });
   // Validate script data
   $(".validate_sieve").click(function( event ) {
     event.preventDefault();
@@ -216,7 +209,7 @@
   function escapeHtml(n){return String(n).replace(/[&<>"'`=\/]/g,function(n){return entityMap[n]})}
   // http://stackoverflow.com/questions/46155/validate-email-address-in-javascript
   function humanFileSize(i){if(Math.abs(i)<1024)return i+" B";var B=["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],e=-1;do{i/=1024,++e}while(Math.abs(i)>=1024&&e<B.length-1);return i.toFixed(1)+" "+B[e]}
-  function unix_time_format(i){return""==i?'&#10005;':new Date(i?1e3*i:0).toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}
+  function unix_time_format(i){return""==i?'<i class="bi bi-x-lg"></i>':new Date(i?1e3*i:0).toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}
   $(".refresh_table").on('click', function(e) {
     e.preventDefault();
     var table_name = $(this).data('table');
@@ -247,7 +240,7 @@
   function draw_domain_table() {
     ft_domain_table = FooTable.init('#domain_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"domain_name","title":lang.domain,"style":{"width":"250px"}},
         {"name":"aliases","title":lang.aliases,"breakpoints":"xs sm"},
         {"name":"mailboxes","title":lang.mailboxes},
@@ -261,15 +254,15 @@
         }},
         {"name":"stats","sortable": false,"style":{"whiteSpace":"nowrap"},"title":lang.stats,"formatter": function(value){
           res = value.split("/");
-          return '<span class="glyphicon glyphicon-file" aria-hidden="true"></span> ' + res[0] + ' / ' + humanFileSize(res[1]);
+          return '<i class="bi bi-files"></i> ' + res[0] + ' / ' + humanFileSize(res[1]);
         }},
         {"name":"def_quota_for_mbox","title":lang.mailbox_defquota,"breakpoints":"xs sm md","style":{"width":"125px"}},
         {"name":"max_quota_for_mbox","title":lang.mailbox_quota,"breakpoints":"xs sm","style":{"width":"125px"}},
-        {"name":"rl","title":"RL","breakpoints":"xs sm md lg","style":{"maxWidth":"100px","width":"100px"}},
-        {"name":"backupmx","filterable": false,"style":{"maxWidth":"120px","width":"120px"},"title":lang.backup_mx,"breakpoints":"xs sm md lg","formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
+        {"name":"rl","title":"RL","breakpoints":"xs sm md lg","style":{"min-width":"100px","width":"100px"}},
+        {"name":"backupmx","filterable": false,"style":{"min-width":"120px","width":"120px"},"title":lang.backup_mx,"breakpoints":"xs sm md lg","formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
         {"name":"domain_admins","title":lang.domain_admins,"style":{"word-break":"break-all","min-width":"200px"},"breakpoints":"xs sm md lg","filterable":(role == "admin"),"visible":(role == "admin")},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"240px","width":"240px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"240px","width":"240px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
       ],
       "rows": $.ajax({
         dataType: 'json',
@@ -294,15 +287,17 @@
             item.def_quota_for_mbox = humanFileSize(item.def_quota_for_mbox);
             item.max_quota_for_mbox = humanFileSize(item.max_quota_for_mbox);
             item.chkbox = '<input type="checkbox" data-id="domain" name="multi_select" value="' + encodeURIComponent(item.domain_name) + '" />';
-            item.action = '<div class="btn-group">';
+            item.action = '<div class="btn-group footable-actions">';
             if (role == "admin") {
-              item.action += '<a href="/edit/domain/' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-                '<a href="#" data-action="delete_selected" data-id="single-domain" data-api-url="delete/domain" data-item="' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>';
+              item.action += '<a href="/edit/domain/' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+                '<a href="#" data-action="delete_selected" data-id="single-domain" data-api-url="delete/domain" data-item="' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-xs-third btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
+                 '<a href="#dnsInfoModal" class="btn btn-xs btn-xs-third btn-info" data-toggle="modal" data-domain="' + encodeURIComponent(item.domain_name) + '"><i class="bi bi-globe2"></i> DNS</a></div>';
             }
             else {
-              item.action += '<a href="/edit/domain/' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>';
+              item.action += '<a href="/edit/domain/' + encodeURIComponent(item.domain_name) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#dnsInfoModal" class="btn btn-xs btn-xs-half btn-info" data-toggle="modal" data-domain="' + encodeURIComponent(item.domain_name) + '"><i class="bi bi-globe2"></i> DNS</a></div>';
             }
-            item.action += '<a href="#dnsInfoModal" class="btn btn-xs btn-info" data-toggle="modal" data-domain="' + encodeURIComponent(item.domain_name) + '"><span class="glyphicon glyphicon-question-sign"></span> DNS</a></div>';
+
             if (item.backupmx == 1) {
               if (item.relay_unknown_only == 1) {
                 item.domain_name = '<div class="label label-info">Relay Non-Local</div> ' + item.domain_name;
@@ -351,7 +346,7 @@
   function draw_mailbox_table() {
     ft_mailbox_table = FooTable.init('#mailbox_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"username","style":{"word-break":"break-all","min-width":"120px"},"title":lang.username},
         {"name":"name","title":lang.fname,"style":{"word-break":"break-all","min-width":"120px"},"breakpoints":"xs sm md lg"},
         {"name":"domain","title":lang.domain,"breakpoints":"xs sm md lg"},
@@ -365,7 +360,7 @@
           return Number(res[0]);
         },
         },
-        {"name":"spam_aliases","filterable": false,"title":lang.spam_aliases,"breakpoints":"all"},
+        /* {"name":"spam_aliases","filterable": false,"title":lang.spam_aliases,"breakpoints":"all"}, */
         {"name":"tls_enforce_in","filterable": false,"title":lang.tls_enforce_in,"breakpoints":"all"},
         {"name":"tls_enforce_out","filterable": false,"title":lang.tls_enforce_out,"breakpoints":"all"},
         {"name":"smtp_access","filterable": false,"title":"SMTP","breakpoints":"all"},
@@ -379,9 +374,10 @@
         "formatter": function(value){
           res = value.split("/");
           return '<div class="label label-last-login">IMAP @ ' + unix_time_format(Number(res[0])) + '</div><br>' +
-            '<div class="label label-last-login">POP3 @ ' + unix_time_format(Number(res[1])) + '</div><br>' + 
+            '<div class="label label-last-login">POP3 @ ' + unix_time_format(Number(res[1])) + '</div><br>' +
             '<div class="label label-last-login">SMTP @ ' + unix_time_format(Number(res[2])) + '</div>';
         }},
+        {"name":"last_pw_change","filterable": false,"title":lang.last_pw_change,"breakpoints":"all"},
         {"name":"quarantine_notification","filterable": false,"title":lang.quarantine_notification,"breakpoints":"all"},
         {"name":"quarantine_category","filterable": false,"title":lang.quarantine_category,"breakpoints":"all"},
         {"name":"in_use","filterable": false,"type":"html","title":lang.in_use,"sortValue": function(value){
@@ -389,14 +385,14 @@
         },
         },
         {"name":"messages","filterable": false,"title":lang.msg_num,"breakpoints":"xs sm md"},
-        {"name":"rl","title":"RL","breakpoints":"all","style":{"width":"125px"}},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':(0==value?'&#10005;':2==value&&'&#8212;');}},
+        /* {"name":"rl","title":"RL","breakpoints":"all","style":{"width":"125px"}}, */
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':(0==value?'<i class="bi bi-x-lg"></i>':2==value&&'&#8212;');}},
         {"name":"action","filterable": false,"sortable": false,"style":{"min-width":"290px","text-align":"right"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
         dataType: 'json',
-        url: '/api/v1/get/mailbox/all',
+        url: '/api/v1/get/mailbox/reduced',
         jsonp: false,
         error: function () {
           console.log('Cannot draw mailbox table');
@@ -406,6 +402,7 @@
             item.quota = item.quota_used + "/" + item.quota;
             item.max_quota_for_mbox = humanFileSize(item.max_quota_for_mbox);
             item.last_mail_login = item.last_imap_login + '/' + item.last_pop3_login + '/' + item.last_smtp_login;
+            /*
             if (!item.rl) {
               item.rl = '∞';
             } else {
@@ -413,15 +410,22 @@
                 return e;
               }).join('/1');
               if (item.rl_scope === 'domain') {
-                item.rl = '↪ ' + item.rl + ' (via ' + item.domain + ')';
+                item.rl = '<i class="bi bi-arrow-return-right"></i> ' + item.rl + ' (via ' + item.domain + ')';
               }
             }
+            */
             item.chkbox = '<input type="checkbox" data-id="mailbox" name="multi_select" value="' + encodeURIComponent(item.username) + '" />';
-            item.tls_enforce_in = '<span class="text-' + (item.attributes.tls_enforce_in == 1 ? 'success' : 'danger') + ' glyphicon glyphicon-lock"></span>';
-            item.tls_enforce_out = '<span class="text-' + (item.attributes.tls_enforce_out == 1 ? 'success' : 'danger') + ' glyphicon glyphicon-lock"></span>';
-            item.pop3_access = '<span class="text-' + (item.attributes.pop3_access == 1 ? 'success' : 'danger') + ' glyphicon glyphicon-' + (item.attributes.pop3_access == 1 ? 'ok' : 'remove') + '"></span>';
-            item.imap_access = '<span class="text-' + (item.attributes.imap_access == 1 ? 'success' : 'danger') + ' glyphicon glyphicon-' + (item.attributes.imap_access == 1 ? 'ok' : 'remove') + '"></span>';
-            item.smtp_access = '<span class="text-' + (item.attributes.smtp_access == 1 ? 'success' : 'danger') + ' glyphicon glyphicon-' + (item.attributes.smtp_access == 1 ? 'ok' : 'remove') + '"></span>';
+            if (item.attributes.passwd_update != '0') {
+              var last_pw_change = new Date(item.attributes.passwd_update.replace(/-/g, "/"));
+              item.last_pw_change = last_pw_change.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});
+            } else {
+              item.last_pw_change = '-';
+            }
+            item.tls_enforce_in = '<i class="text-' + (item.attributes.tls_enforce_in == 1 ? 'success bi bi-lock-fill' : 'danger bi bi-unlock-fill') + '"></i>';
+            item.tls_enforce_out = '<i class="text-' + (item.attributes.tls_enforce_out == 1 ? 'success bi bi-lock-fill' : 'danger bi bi-unlock-fill') + '"></i>';
+            item.pop3_access = '<i class="text-' + (item.attributes.pop3_access == 1 ? 'success' : 'danger') + ' bi bi-' + (item.attributes.pop3_access == 1 ? 'check-lg' : 'x-lg') + '"></i>';
+            item.imap_access = '<i class="text-' + (item.attributes.imap_access == 1 ? 'success' : 'danger') + ' bi bi-' + (item.attributes.imap_access == 1 ? 'check-lg' : 'x-lg') + '"></i>';
+            item.smtp_access = '<i class="text-' + (item.attributes.smtp_access == 1 ? 'success' : 'danger') + ' bi bi-' + (item.attributes.smtp_access == 1 ? 'check-lg' : 'x-lg') + '"></i>';
             if (item.attributes.quarantine_notification === 'never') {
               item.quarantine_notification = lang.never;
             } else if (item.attributes.quarantine_notification === 'hourly') {
@@ -439,19 +443,22 @@
               item.quarantine_category = lang.q_all;
             }
             if (acl_data.login_as === 1) {
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/mailbox/' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-mailbox" data-api-url="delete/mailbox" data-item="' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
-              '<a href="/index.php?duallogin=' + encodeURIComponent(item.username) + '" class="login_as btn btn-xs btn-success"><span class="glyphicon glyphicon-user"></span> Login</a>';
+              var btnSize = 'btn-xs-third';
+              if (ALLOW_ADMIN_EMAIL_LOGIN) btnSize = 'btn-xs-quart';
+
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/mailbox/' + encodeURIComponent(item.username) + '" class="btn btn-xs ' + btnSize + ' btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-mailbox" data-api-url="delete/mailbox" data-item="' + encodeURIComponent(item.username) + '" class="btn btn-xs ' + btnSize + ' btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
+              '<a href="/index.php?duallogin=' + encodeURIComponent(item.username) + '" class="login_as btn btn-xs ' + btnSize + ' btn-success"><i class="bi bi-person-fill"></i> Login</a>';
               if (ALLOW_ADMIN_EMAIL_LOGIN) {
-                item.action += '<a href="/sogo-auth.php?login=' + encodeURIComponent(item.username) + '" class="login_as btn btn-xs btn-primary" target="_blank"><span class="glyphicon glyphicon-envelope"></span> SOGo</a>';
+                item.action += '<a href="/sogo-auth.php?login=' + encodeURIComponent(item.username) + '" class="login_as btn btn-xs ' + btnSize + ' btn-primary" target="_blank"><i class="bi bi-envelope-fill"></i> SOGo</a>';
               }
               item.action += '</div>';
             }
             else {
             item.action = '<div class="btn-group">' +
-              '<a href="/edit/mailbox/' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-mailbox" data-api-url="delete/mailbox" data-item="' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              '<a href="/edit/mailbox/' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-mailbox" data-api-url="delete/mailbox" data-item="' + encodeURIComponent(item.username) + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             }
             item.in_use = '<div class="progress">' +
@@ -500,14 +507,14 @@
   function draw_resource_table() {
     ft_resource_table = FooTable.init('#resource_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"description","title":lang.description,"style":{"width":"250px"}},
         {"name":"name","title":lang.alias},
         {"name":"kind","title":lang.kind},
         {"name":"domain","title":lang.domain,"breakpoints":"xs sm"},
-        {"name":"multiple_bookings","filterable": false,"style":{"maxWidth":"150px","width":"140px"},"title":lang.multiple_bookings,"breakpoints":"xs sm"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"multiple_bookings","filterable": false,"style":{"min-width":"150px","width":"140px"},"title":lang.multiple_bookings,"breakpoints":"xs sm"},
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -526,9 +533,9 @@
             } else {
               item.multiple_bookings = '<span id="active-script" class="label label-danger">' + lang.booking_custom_short + ' (' + item.multiple_bookings + ')</span>';
             }
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/resource/' + encodeURIComponent(item.name) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-resource" data-api-url="delete/resource" data-item="' + item.name + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/resource/' + encodeURIComponent(item.name) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-resource" data-api-url="delete/resource" data-item="' + item.name + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="resource" name="multi_select" value="' + encodeURIComponent(item.name) + '" />';
             item.name = escapeHtml(item.name);
@@ -573,14 +580,14 @@
   function draw_bcc_table() {
     ft_bcc_table = FooTable.init('#bcc_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
-        {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"sorted": true,"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
         {"name":"type","title":lang.bcc_type},
         {"name":"local_dest","title":lang.bcc_local_dest},
         {"name":"bcc_dest","title":lang.bcc_destinations},
         {"name":"domain","title":lang.domain,"breakpoints":"xs sm"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -592,17 +599,17 @@
         },
         success: function (data) {
           $.each(data, function (i, item) {
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/bcc/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-bcc" data-api-url="delete/bcc" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/bcc/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-bcc" data-api-url="delete/bcc" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="bcc" name="multi_select" value="' + item.id + '" />';
             item.local_dest = escapeHtml(item.local_dest);
             item.bcc_dest = escapeHtml(item.bcc_dest);
             if (item.type == 'sender') {
-              item.type = '<span id="active-script" class="label label-success">Sender</span>';
+              item.type = '<span id="active-script" class="label label-success">' + lang.bcc_sender_map + '</span>';
             } else {
-              item.type = '<span id="inactive-script" class="label label-warning">Recipient</span>';
+              item.type = '<span id="inactive-script" class="label label-warning">' + lang.bcc_rcpt_map + '</span>';
             }
           });
         }
@@ -642,12 +649,12 @@
   function draw_recipient_map_table() {
     ft_recipient_map_table = FooTable.init('#recipient_map_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
-        {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"sorted": true,"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
         {"name":"recipient_map_old","title":lang.recipient_map_old},
         {"name":"recipient_map_new","title":lang.recipient_map_new},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":(role == "admin" ? lang.action : ""),"breakpoints":"xs sm"}
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":(role == "admin" ? lang.action : ""),"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -662,9 +669,9 @@
             $.each(data, function (i, item) {
               item.recipient_map_old = escapeHtml(item.recipient_map_old);
               item.recipient_map_new = escapeHtml(item.recipient_map_new);
-              item.action = '<div class="btn-group">' +
-                '<a href="/edit/recipient_map/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-                '<a href="#" data-action="delete_selected" data-id="single-recipient_map" data-api-url="delete/recipient_map" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              item.action = '<div class="btn-group footable-actions">' +
+                '<a href="/edit/recipient_map/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+                '<a href="#" data-action="delete_selected" data-id="single-recipient_map" data-api-url="delete/recipient_map" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
                 '</div>';
               item.chkbox = '<input type="checkbox" data-id="recipient_map" name="multi_select" value="' + item.id + '" />';
             });
@@ -706,13 +713,13 @@
   function draw_tls_policy_table() {
     ft_tls_policy_table = FooTable.init('#tls_policy_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
-        {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"sorted": true,"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
         {"name":"dest","title":lang.tls_map_dest},
         {"name":"policy","title":lang.tls_map_policy},
         {"name":"parameters","title":lang.tls_map_parameters},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":(role == "admin" ? lang.action : ""),"breakpoints":"xs sm"}
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":(role == "admin" ? lang.action : ""),"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -732,9 +739,9 @@
               } else {
                 item.parameters = '<code>' + escapeHtml(item.parameters) + '</code>';
               }
-              item.action = '<div class="btn-group">' +
-                '<a href="/edit/tls_policy_map/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-                '<a href="#" data-action="delete_selected" data-id="single-tls-policy-map" data-api-url="delete/tls-policy-map" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              item.action = '<div class="btn-group footable-actions">' +
+                '<a href="/edit/tls_policy_map/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+                '<a href="#" data-action="delete_selected" data-id="single-tls-policy-map" data-api-url="delete/tls-policy-map" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
                 '</div>';
               item.chkbox = '<input type="checkbox" data-id="tls-policy-map" name="multi_select" value="' + item.id + '" />';
             });
@@ -776,16 +783,16 @@
   function draw_alias_table() {
     ft_alias_table = FooTable.init('#alias_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
-        {"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
         {"sorted": true,"name":"address","title":lang.alias,"style":{"width":"250px"}},
         {"name":"goto","title":lang.target_address},
         {"name":"domain","title":lang.domain,"breakpoints":"xs sm"},
         {"name":"public_comment","title":lang.public_comment,"breakpoints":"all"},
         {"name":"private_comment","title":lang.private_comment,"breakpoints":"all"},
-        {"name":"sogo_visible","title":lang.sogo_visible,"breakpoints":"all"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"sogo_visible","title":lang.sogo_visible,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';},"breakpoints":"all"},
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -797,9 +804,9 @@
         },
         success: function (data) {
           $.each(data, function (i, item) {
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/alias/' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-alias" data-api-url="delete/alias" data-item="' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/alias/' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-alias" data-api-url="delete/alias" data-item="' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="alias" name="multi_select" value="' + encodeURIComponent(item.id) + '" />';
             item.goto = escapeHtml(item.goto.replace(/,/g, " "));
@@ -816,22 +823,22 @@
               item.private_comment = '-';
             }
             if (item.is_catch_all == 1) {
-              item.address = '<div class="label label-default">Catch-All</div> ' + escapeHtml(item.address);
+              item.address = '<div class="label label-default">' + lang.catch_all + '</div> ' + escapeHtml(item.address);
             }
             else {
               item.address = escapeHtml(item.address);
             }
             if (item.goto == "null@localhost") {
-              item.goto = '⤷ <span style="font-size:12px" class="glyphicon glyphicon-trash" aria-hidden="true"></span>';
+              item.goto = '⤷ <i class="bi bi-trash" style="font-size:12px"></i>';
             }
             else if (item.goto == "spam@localhost") {
-              item.goto = '<span class="label label-danger">Learn as spam</span>';
+              item.goto = '<span class="label label-danger">' + lang.goto_spam + '</span>';
             }
             else if (item.goto == "ham@localhost") {
-              item.goto = '<span class="label label-success">Learn as ham</span>';
+              item.goto = '<span class="label label-success">' + lang.goto_ham + '</span>';
             }
             if (item.in_primary_domain !== "") {
-              item.domain = "↳ " + item.domain + " (" + item.in_primary_domain + ")";
+              item.domain = '<i data-domainname="' + item.domain + '" class="bi bi-info-circle-fill alias-domain-info text-info" data-toggle="tooltip" title="' + lang.target_domain + ': ' + item.in_primary_domain + '"></i> ' + item.domain;
             }
           });
         }
@@ -863,6 +870,7 @@
         },
         "ready.ft.table": function(e, ft){
           table_mailbox_ready(ft, 'alias_table');
+          $('.alias-domain-info').tooltip();
         },
         "after.ft.filtering": function(e, ft){
           table_mailbox_ready(ft, 'alias_table');
@@ -875,11 +883,11 @@
   function draw_aliasdomain_table() {
     ft_aliasdomain_table = FooTable.init('#aliasdomain_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"alias_domain","title":lang.alias,"style":{"width":"250px"}},
         {"name":"target_domain","title":lang.target_domain,"type":"html"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"active","filterable": false,"style":{"min-width":"80px","width":"80px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"250px","width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -891,10 +899,10 @@
         },
         success: function (data) {
           $.each(data, function (i, item) {
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/aliasdomain/' + encodeURIComponent(item.alias_domain) + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-alias-domain" data-api-url="delete/alias-domain" data-item="' + encodeURIComponent(item.alias_domain) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
-              '<a href="#dnsInfoModal" class="btn btn-xs btn-info" data-toggle="modal" data-domain="' + encodeURIComponent(item.alias_domain) + '"><span class="glyphicon glyphicon-question-sign"></span> DNS</a></div>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/aliasdomain/' + encodeURIComponent(item.alias_domain) + '" class="btn btn-xs btn-xs-third btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-alias-domain" data-api-url="delete/alias-domain" data-item="' + encodeURIComponent(item.alias_domain) + '" class="btn btn-xs btn-xs-third btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
+              '<a href="#dnsInfoModal" class="btn btn-xs btn-xs-third btn-info" data-toggle="modal" data-domain="' + encodeURIComponent(item.alias_domain) + '"><i class="bi bi-globe2"></i> DNS</a></div>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="alias-domain" name="multi_select" value="' + encodeURIComponent(item.alias_domain) + '" />';
             if(item.parent_is_backupmx == '1') {
@@ -941,17 +949,17 @@
   function draw_sync_job_table() {
     ft_syncjob_table = FooTable.init('#sync_job_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
-        {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
+        {"sorted": true,"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
         {"name":"user2","title":lang.owner},
         {"name":"server_w_port","title":"Server","breakpoints":"xs sm md","style":{"word-break":"break-all"}},
         {"name":"exclude","title":lang.excludes,"breakpoints":"all"},
         {"name":"mins_interval","title":lang.mins_interval,"breakpoints":"all"},
         {"name":"last_run","title":lang.last_run,"breakpoints":"xs sm md"},
         {"name":"log","title":"Log"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
-        {"name":"is_running","filterable": false,"style":{"maxWidth":"120px","width":"100px"},"title":lang.status},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"active","filterable": false,"style":{"min-width":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
+        {"name":"is_running","filterable": false,"style":{"min-width":"120px","width":"100px"},"title":lang.status},
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -963,7 +971,7 @@
         },
         success: function (data) {
           $.each(data, function (i, item) {
-            item.log = '<a href="#syncjobLogModal" data-toggle="modal" data-syncjob-id="' + encodeURIComponent(item.id) + '">Open logs</a>'
+            item.log = '<a href="#syncjobLogModal" data-toggle="modal" data-syncjob-id="' + encodeURIComponent(item.id) + '">' + lang.open_logs + '</a>'
             item.user2 = escapeHtml(item.user2);
             if (!item.exclude > 0) {
               item.exclude = '-';
@@ -971,9 +979,9 @@
               item.exclude  = '<code>' + item.exclude + '</code>';
             }
             item.server_w_port = escapeHtml(item.user1) + '@' + item.host1 + ':' + item.port1;
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/syncjob/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-syncjob" data-api-url="delete/syncjob" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/syncjob/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-syncjob" data-api-url="delete/syncjob" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="syncjob" name="multi_select" value="' + item.id + '" />';
             if (item.is_running == 1) {
@@ -1023,14 +1031,14 @@
   function draw_filter_table() {
     ft_filter_table = FooTable.init('#filter_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
-        {"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
-        {"name":"active","style":{"maxWidth":"80px","width":"80px"},"title":lang.active},
-        {"name":"filter_type","style":{"maxWidth":"80px","width":"80px"},"title":"Type"},
-        {"sorted": true,"name":"username","title":lang.owner,"style":{"maxWidth":"550px","width":"350px"}},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"id","title":"ID","style":{"min-width":"60px","width":"60px","text-align":"center"}},
+        {"name":"active","style":{"min-width":"80px","width":"80px"},"title":lang.active},
+        {"name":"filter_type","style":{"min-width":"80px","width":"80px"},"title":"Type"},
+        {"sorted": true,"name":"username","title":lang.owner,"style":{"min-width":"550px","width":"350px"}},
         {"name":"script_desc","title":lang.description,"breakpoints":"xs"},
         {"name":"script_data","title":"Script","breakpoints":"all"},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -1049,9 +1057,9 @@
             }
             item.script_data = '<pre style="margin:0px">' + escapeHtml(item.script_data) + '</pre>'
             item.filter_type = '<div class="label label-default">' + item.filter_type.charAt(0).toUpperCase() + item.filter_type.slice(1).toLowerCase() + '</div>'
-            item.action = '<div class="btn-group">' +
-              '<a href="/edit/filter/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="single-filter" data-api-url="delete/filter" data-item="' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="/edit/filter/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="single-filter" data-api-url="delete/filter" data-item="' + encodeURIComponent(item.id) + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             item.chkbox = '<input type="checkbox" data-id="filter_item" name="multi_select" value="' + item.id + '" />'
           });
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/pwgen.js b/mailcow/src/mailcow-dockerized/data/web/js/site/pwgen.js
index 00afb47..9b204e2 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/pwgen.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/pwgen.js
@@ -12,748 +12,819 @@
    THVV 11/27/09 ported to Javascript
    */
 
+
+function shuffle(a) {
+  var j, x, i;
+  for (i = a.length - 1; i > 0; i--) {
+    j = Math.floor(Math.random() * (i + 1));
+    x = a[i];
+    a[i] = a[j];
+    a[j] = x;
+  }
+  return a;
+}
+
 var GPW = {
+  pronounceable: function(pwl) {
+    var output = "";
+    var c1, c2, c3;
+    var sum = 0;
+    var nchar;
+    var ranno;
+    var pwnum;
+    var pik;
 
-/**
- * var pw = GPW.pronounceable(10);
- */
+    var _alphabet = 'abcdefghijklmnopqrstuvwxyz';
+    var _specialchars = '%&;:=_-}{?#';
+    var _trigram = [
+      [
+        [2, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0],
+        [37, 25, 2, 5, 38, 0, 0, 2, 46, 1, 0, 304, 0, 2, 49, 0, 0, 24, 24, 0, 19, 0, 0, 0, 14, 0],
+        [26, 1, 64, 2, 107, 0, 1, 94, 67, 0, 173, 13, 5, 1, 35, 1, 13, 32, 3, 114, 23, 0, 0, 0, 45, 0],
+        [35, 7, 3, 43, 116, 6, 3, 8, 75, 14, 1, 16, 25, 3, 44, 3, 1, 35, 20, 1, 10, 25, 9, 0, 18, 0],
+        [2, 0, 2, 1, 0, 1, 3, 0, 0, 0, 0, 10, 0, 2, 3, 0, 0, 12, 6, 0, 2, 0, 0, 0, 0, 0],
+        [5, 0, 0, 0, 14, 50, 2, 0, 3, 0, 2, 5, 0, 2, 7, 0, 0, 5, 1, 39, 1, 0, 0, 0, 1, 0],
+        [30, 1, 0, 1, 182, 0, 42, 5, 30, 0, 0, 7, 9, 42, 51, 3, 0, 24, 3, 0, 21, 0, 3, 0, 3, 0],
+        [12, 0, 0, 0, 20, 0, 0, 0, 3, 0, 0, 5, 4, 2, 13, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0],
+        [2, 0, 10, 26, 2, 1, 10, 0, 2, 1, 2, 87, 13, 144, 0, 2, 0, 93, 30, 23, 0, 3, 1, 0, 0, 0],
+        [4, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [11, 0, 1, 1, 98, 1, 0, 1, 15, 0, 0, 3, 0, 0, 5, 1, 0, 3, 0, 1, 2, 0, 3, 0, 8, 0],
+        [78, 20, 34, 45, 124, 21, 24, 5, 109, 0, 28, 237, 31, 3, 53, 23, 0, 7, 16, 69, 29, 26, 5, 0, 26, 2],
+        [70, 57, 1, 1, 98, 3, 0, 1, 68, 0, 0, 3, 38, 2, 43, 69, 0, 3, 14, 3, 12, 0, 2, 0, 14, 0],
+        [114, 6, 156, 359, 103, 8, 146, 12, 141, 2, 57, 4, 0, 89, 61, 1, 4, 1, 124, 443, 29, 6, 1, 3, 28, 9],
+        [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 3, 2, 2, 2, 0, 0, 0, 0, 0],
+        [29, 3, 0, 1, 59, 1, 0, 86, 25, 0, 1, 14, 1, 1, 37, 94, 0, 9, 22, 30, 8, 0, 0, 0, 9, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0],
+        [124, 64, 101, 233, 115, 12, 47, 5, 188, 3, 61, 55, 68, 34, 46, 25, 6, 94, 48, 189, 5, 22, 5, 1, 172, 2],
+        [19, 3, 32, 0, 71, 0, 1, 81, 49, 0, 22, 3, 19, 2, 19, 34, 4, 0, 152, 211, 12, 0, 1, 0, 17, 1],
+        [50, 3, 41, 2, 863, 4, 0, 144, 352, 0, 5, 14, 6, 3, 144, 0, 0, 60, 13, 106, 57, 1, 5, 0, 8, 5],
+        [0, 5, 23, 35, 5, 5, 38, 1, 0, 1, 3, 33, 4, 23, 0, 4, 1, 35, 52, 56, 0, 1, 0, 7, 0, 1],
+        [35, 0, 0, 1, 108, 0, 0, 0, 49, 0, 0, 1, 0, 0, 19, 0, 0, 0, 0, 0, 3, 1, 0, 0, 6, 0],
+        [30, 10, 0, 4, 3, 6, 2, 2, 2, 0, 10, 13, 4, 15, 3, 0, 0, 6, 3, 5, 0, 0, 0, 0, 2, 0],
+        [3, 0, 0, 0, 4, 0, 0, 0, 22, 0, 0, 1, 0, 0, 7, 2, 0, 0, 1, 1, 0, 0, 3, 0, 3, 0],
+        [11, 8, 1, 5, 16, 5, 1, 2, 2, 0, 0, 10, 7, 4, 13, 1, 0, 3, 5, 7, 3, 0, 5, 0, 0, 0],
+        [10, 0, 0, 1, 22, 0, 0, 0, 10, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 2, 2, 0, 0, 0, 4, 11]
+      ],
+      [
+        [0, 17, 74, 11, 1, 2, 19, 4, 8, 0, 10, 68, 7, 73, 1, 7, 0, 110, 54, 55, 9, 1, 3, 1, 12, 1],
+        [7, 0, 0, 0, 16, 0, 0, 0, 10, 0, 0, 24, 0, 0, 9, 0, 0, 2, 3, 0, 2, 0, 0, 0, 14, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0],
+        [51, 1, 14, 34, 18, 11, 16, 7, 9, 0, 1, 85, 5, 48, 2, 2, 2, 199, 36, 41, 0, 4, 5, 1, 6, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [34, 8, 22, 21, 8, 3, 9, 1, 0, 3, 1, 50, 7, 45, 16, 4, 2, 29, 22, 59, 4, 4, 0, 0, 0, 3],
+        [0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [57, 0, 0, 0, 519, 0, 0, 0, 35, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 32, 1, 0, 0, 3, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0],
+        [1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [62, 7, 4, 21, 3, 2, 9, 3, 8, 1, 1, 46, 8, 63, 58, 2, 0, 55, 15, 20, 46, 6, 17, 10, 19, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [110, 0, 0, 0, 77, 0, 0, 0, 100, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 28, 0, 0, 0, 10, 0],
+        [0, 0, 6, 0, 16, 0, 0, 0, 7, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 27, 2, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 3, 1, 0, 0, 0, 0, 0, 4, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 3, 21, 16, 3, 5, 14, 0, 12, 1, 2, 52, 7, 20, 2, 0, 1, 104, 44, 54, 0, 0, 0, 3, 1, 5],
+        [0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 3, 0, 1, 2, 0, 0, 0, 4, 0, 0, 0, 3, 0, 6, 8, 3, 0, 0, 2, 0, 0, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [1, 47, 17, 33, 1, 3, 4, 5, 7, 1, 3, 120, 40, 120, 1, 59, 1, 171, 60, 150, 19, 20, 1, 0, 5, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0],
+        [23, 0, 0, 0, 22, 0, 0, 5, 13, 0, 0, 13, 0, 0, 26, 0, 0, 7, 0, 0, 27, 0, 0, 0, 0, 0],
+        [1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [23, 6, 4, 17, 6, 6, 1, 2, 13, 0, 0, 50, 12, 109, 7, 43, 0, 76, 63, 22, 1, 0, 4, 0, 2, 1],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 4, 1, 0, 1, 0, 0, 0, 0, 0],
+        [165, 10, 2, 3, 176, 4, 3, 1, 141, 0, 0, 26, 20, 16, 102, 1, 0, 63, 8, 10, 44, 0, 13, 0, 20, 0],
+        [76, 15, 8, 33, 24, 16, 3, 0, 0, 0, 0, 38, 5, 45, 50, 28, 0, 29, 38, 71, 6, 8, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [17, 16, 2, 3, 90, 4, 1, 7, 20, 1, 1, 45, 8, 8, 12, 9, 0, 3, 32, 6, 6, 0, 13, 0, 22, 0],
+        [95, 0, 0, 0, 84, 0, 0, 0, 50, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, 34, 0, 0, 0, 3, 0],
+        [1, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [33, 16, 40, 22, 14, 10, 11, 12, 9, 1, 1, 101, 218, 421, 24, 56, 2, 129, 37, 40, 86, 22, 25, 4, 4, 2],
+        [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0],
+        [101, 0, 0, 0, 112, 0, 0, 0, 75, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 1, 41, 0, 0, 0, 25, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 2, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0],
+        [44, 0, 0, 0, 12, 2, 0, 0, 113, 0, 0, 0, 2, 0, 94, 0, 0, 46, 0, 0, 42, 0, 1, 0, 3, 0],
+        [3, 12, 2, 6, 6, 6, 0, 0, 8, 0, 0, 102, 42, 10, 9, 15, 0, 72, 51, 41, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 1, 20, 0, 0, 0, 1, 0, 0, 0, 0, 3, 0, 2, 2, 4, 0, 3, 2, 9, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 7, 16, 7, 1, 2, 13, 6, 18, 0, 3, 54, 23, 59, 0, 10, 0, 31, 6, 40, 8, 13, 3, 0, 32, 3],
+        [9, 0, 0, 0, 7, 0, 0, 0, 3, 0, 0, 2, 0, 0, 8, 0, 0, 1, 0, 0, 8, 0, 0, 0, 2, 0],
+        [5, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [8, 0, 0, 0, 30, 0, 0, 3, 19, 0, 0, 38, 0, 0, 4, 0, 0, 4, 0, 0, 1, 0, 0, 0, 16, 0],
+        [34, 37, 82, 14, 17, 41, 11, 4, 5, 2, 0, 88, 62, 170, 14, 40, 4, 183, 99, 39, 6, 20, 16, 6, 1, 2],
+        [6, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 2, 0, 0, 5, 0, 0, 2, 0, 0, 4, 0, 0, 0, 0, 0],
+        [4, 0, 0, 0, 73, 0, 0, 0, 2, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 2, 0, 1, 0, 3, 0],
+        [8, 0, 0, 0, 9, 0, 0, 0, 4, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [100, 10, 104, 12, 33, 26, 31, 1, 1, 0, 1, 22, 22, 65, 57, 15, 0, 20, 138, 53, 20, 31, 1, 6, 0, 1],
+        [4, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [9, 0, 0, 0, 79, 0, 0, 0, 12, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3, 0],
+        [13, 0, 0, 0, 3, 0, 0, 0, 21, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 9, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0],
+        [1, 5, 21, 10, 6, 3, 20, 1, 3, 0, 0, 30, 38, 54, 17, 7, 0, 39, 11, 10, 30, 5, 54, 5, 1, 3],
+        [6, 0, 0, 0, 1, 0, 0, 1, 3, 0, 0, 1, 0, 0, 7, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [74, 0, 0, 0, 47, 0, 0, 0, 53, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 22, 0, 0, 0, 8, 0],
+        [1, 0, 3, 0, 10, 0, 0, 9, 5, 0, 1, 3, 10, 0, 16, 8, 0, 0, 0, 31, 1, 0, 2, 0, 0, 0],
+        [3, 0, 0, 0, 1, 0, 0, 6, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [10, 7, 52, 2, 5, 3, 4, 0, 2, 0, 1, 33, 14, 15, 5, 11, 1, 19, 15, 8, 1, 0, 0, 0, 0, 1],
+        [3, 0, 0, 0, 13, 0, 0, 0, 7, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [19, 0, 0, 0, 10, 0, 0, 0, 19, 0, 0, 0, 0, 0, 8, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [4, 2, 1, 2, 3, 1, 2, 0, 1, 0, 1, 4, 4, 12, 0, 0, 0, 0, 8, 1, 0, 0, 1, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 39, 34, 110, 0, 12, 13, 3, 0, 0, 50, 68, 38, 71, 0, 13, 1, 117, 80, 112, 28, 19, 7, 0, 0, 1],
+        [32, 5, 0, 0, 31, 0, 0, 0, 8, 0, 0, 6, 0, 0, 28, 0, 0, 32, 2, 3, 29, 0, 0, 0, 4, 0],
+        [33, 0, 9, 2, 51, 0, 0, 39, 49, 0, 47, 26, 0, 0, 59, 0, 0, 35, 2, 206, 42, 0, 0, 0, 2, 0],
+        [29, 7, 1, 16, 45, 5, 22, 3, 88, 0, 0, 8, 9, 4, 24, 2, 0, 27, 8, 4, 27, 0, 7, 0, 13, 0],
+        [2, 4, 13, 63, 1, 6, 1, 4, 10, 0, 19, 23, 13, 66, 1, 42, 0, 43, 9, 34, 1, 4, 6, 0, 0, 8],
+        [14, 0, 1, 2, 36, 33, 0, 0, 22, 0, 0, 15, 0, 0, 24, 0, 0, 14, 1, 13, 35, 0, 0, 0, 5, 0],
+        [48, 1, 0, 0, 36, 1, 15, 2, 38, 0, 0, 7, 4, 4, 26, 0, 0, 38, 0, 0, 19, 0, 0, 0, 4, 0],
+        [14, 0, 0, 0, 24, 0, 0, 0, 6, 0, 0, 0, 1, 0, 18, 0, 0, 4, 0, 0, 4, 0, 0, 0, 3, 0],
+        [8, 0, 5, 13, 2, 1, 42, 0, 1, 1, 2, 13, 7, 59, 1, 1, 0, 10, 25, 22, 0, 7, 0, 0, 0, 2],
+        [4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [2, 1, 0, 1, 6, 0, 0, 0, 4, 0, 0, 0, 0, 1, 1, 0, 0, 0, 2, 3, 0, 0, 0, 0, 1, 0],
+        [76, 7, 6, 57, 131, 19, 7, 3, 125, 0, 4, 238, 22, 1, 48, 15, 0, 4, 27, 26, 17, 19, 2, 0, 7, 0],
+        [87, 53, 1, 0, 84, 0, 0, 0, 102, 0, 0, 3, 8, 8, 56, 64, 0, 0, 4, 0, 19, 0, 1, 0, 8, 0],
+        [78, 17, 68, 159, 128, 8, 35, 14, 96, 2, 2, 4, 5, 54, 57, 3, 2, 9, 127, 624, 33, 10, 8, 0, 11, 16],
+        [0, 0, 8, 10, 0, 6, 7, 1, 2, 0, 0, 23, 10, 38, 0, 16, 0, 14, 6, 4, 41, 3, 2, 2, 0, 1],
+        [26, 1, 1, 0, 27, 0, 0, 32, 45, 0, 0, 21, 1, 0, 35, 9, 0, 35, 10, 65, 13, 0, 2, 0, 3, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0],
+        [217, 57, 66, 22, 190, 41, 70, 13, 200, 3, 14, 40, 134, 117, 113, 42, 2, 123, 167, 135, 23, 58, 22, 1, 123, 1],
+        [17, 7, 74, 6, 58, 1, 3, 25, 82, 0, 3, 6, 17, 5, 34, 52, 7, 0, 222, 278, 18, 2, 1, 0, 6, 0],
+        [78, 3, 19, 0, 129, 4, 0, 93, 105, 0, 1, 3, 2, 2, 50, 1, 0, 73, 5, 113, 17, 0, 4, 0, 32, 4],
+        [0, 4, 7, 6, 1, 0, 4, 0, 0, 0, 2, 3, 17, 4, 0, 15, 0, 46, 20, 18, 0, 2, 1, 0, 0, 0],
+        [29, 0, 0, 0, 121, 0, 0, 0, 56, 0, 0, 0, 0, 0, 26, 0, 0, 2, 1, 0, 2, 2, 0, 0, 3, 1],
+        [33, 4, 3, 4, 16, 2, 0, 5, 24, 0, 0, 3, 3, 3, 23, 2, 0, 3, 15, 4, 0, 0, 1, 0, 2, 0],
+        [29, 0, 43, 0, 20, 0, 0, 14, 21, 0, 0, 0, 0, 0, 15, 78, 1, 0, 0, 72, 12, 0, 0, 1, 2, 0],
+        [7, 3, 1, 4, 25, 2, 0, 2, 0, 0, 1, 4, 6, 4, 4, 1, 0, 2, 3, 0, 0, 1, 4, 0, 0, 0],
+        [1, 0, 0, 0, 9, 0, 0, 0, 1, 0, 0, 0, 0, 0, 4, 0, 0, 1, 0, 0, 1, 1, 0, 0, 2, 3]
+      ],
+      [
+        [1, 10, 39, 5, 2, 1, 1, 3, 18, 0, 2, 35, 10, 27, 0, 0, 0, 36, 13, 18, 10, 0, 2, 3, 4, 1],
+        [2, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [18, 5, 24, 6, 12, 0, 2, 0, 6, 0, 1, 25, 6, 18, 2, 0, 0, 114, 17, 15, 4, 2, 2, 0, 1, 0],
+        [10, 2, 0, 0, 51, 0, 0, 2, 45, 0, 0, 21, 4, 0, 13, 0, 0, 9, 7, 0, 7, 0, 0, 0, 8, 0],
+        [1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [9, 9, 58, 18, 42, 7, 11, 0, 0, 0, 0, 29, 2, 53, 0, 0, 0, 40, 41, 18, 0, 2, 0, 10, 0, 3],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [64, 0, 0, 0, 50, 0, 0, 0, 21, 0, 0, 0, 0, 0, 60, 0, 0, 0, 0, 0, 42, 0, 0, 0, 15, 0],
+        [6, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 1, 8, 2, 1, 0, 7, 0, 6, 0, 0, 34, 1, 8, 32, 2, 0, 165, 5, 0, 25, 1, 2, 7, 1, 0],
+        [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [64, 0, 0, 0, 66, 0, 0, 0, 35, 0, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 11, 0, 0, 0, 3, 0],
+        [1, 0, 0, 0, 2, 0, 0, 2, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0],
+        [1, 1, 1, 0, 19, 0, 0, 3, 1, 0, 0, 0, 1, 0, 3, 0, 0, 1, 9, 0, 0, 0, 4, 0, 8, 0],
+        [0, 0, 4, 2, 1, 0, 9, 0, 0, 2, 0, 119, 7, 24, 0, 0, 0, 28, 31, 6, 0, 0, 0, 0, 0, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 20, 5, 11, 3, 2, 11, 3, 13, 0, 0, 68, 24, 60, 1, 5, 0, 63, 23, 68, 15, 8, 5, 0, 2, 5],
+        [4, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [23, 3, 2, 4, 12, 1, 1, 3, 4, 0, 0, 32, 8, 141, 39, 4, 0, 96, 29, 33, 1, 1, 4, 0, 5, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0],
+        [8, 0, 0, 0, 20, 0, 0, 1, 60, 0, 0, 24, 0, 0, 3, 1, 0, 6, 4, 0, 0, 0, 0, 0, 12, 0],
+        [18, 4, 1, 1, 12, 2, 1, 1, 2, 0, 1, 4, 0, 3, 12, 1, 0, 1, 3, 153, 2, 0, 3, 0, 1, 0],
+        [23, 21, 16, 6, 7, 2, 9, 0, 0, 0, 0, 24, 7, 103, 17, 1, 0, 10, 26, 19, 3, 10, 0, 0, 0, 1],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [49, 0, 0, 0, 73, 0, 0, 0, 25, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 13, 0, 0, 0, 17, 0],
+        [23, 0, 0, 0, 12, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 1, 0],
+        [26, 1, 0, 0, 28, 0, 0, 0, 20, 0, 0, 0, 0, 0, 26, 2, 0, 0, 0, 1, 7, 0, 0, 0, 0, 0],
+        [6, 4, 3, 16, 6, 1, 10, 1, 5, 0, 0, 22, 1, 49, 20, 3, 0, 34, 12, 23, 16, 7, 5, 0, 1, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [216, 0, 0, 0, 97, 0, 0, 0, 43, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 14, 0, 0, 0, 3, 0],
+        [2, 2, 0, 0, 0, 0, 0, 2, 2, 0, 1, 1, 0, 0, 2, 1, 0, 0, 0, 18, 0, 0, 1, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 8, 3, 0, 0, 0, 0, 0, 17, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [28, 1, 1, 0, 49, 1, 1, 0, 41, 0, 0, 26, 15, 24, 2, 0, 0, 14, 22, 6, 0, 0, 0, 0, 3, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 3, 0, 6, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [2, 26, 15, 20, 6, 8, 22, 3, 31, 0, 11, 90, 66, 171, 3, 25, 0, 142, 30, 49, 20, 11, 20, 0, 13, 8],
+        [4, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 2, 0, 0, 12, 0, 0, 2, 0, 0, 4, 0, 0, 0, 1, 0],
+        [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0],
+        [123, 5, 22, 33, 37, 5, 3, 0, 27, 0, 0, 87, 65, 86, 17, 7, 1, 311, 57, 42, 11, 11, 14, 8, 11, 2],
+        [2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [22, 22, 56, 15, 23, 6, 19, 0, 0, 1, 1, 73, 20, 79, 17, 41, 0, 36, 53, 39, 3, 11, 0, 0, 0, 6],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 0, 0, 0, 11, 0, 0, 0, 8, 0, 0, 0, 0, 0, 22, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0],
+        [21, 0, 0, 0, 15, 0, 0, 0, 6, 0, 0, 0, 1, 0, 7, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 8, 0, 0, 0, 9, 0, 0, 0, 0, 1, 3, 0, 0, 0, 4, 0, 2, 0, 0, 0, 0, 0],
+        [13, 18, 13, 25, 17, 5, 13, 0, 7, 1, 4, 101, 62, 62, 44, 29, 0, 130, 45, 33, 81, 8, 28, 0, 6, 2],
+        [3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [20, 0, 0, 0, 23, 0, 0, 0, 40, 0, 0, 1, 0, 0, 72, 0, 0, 0, 0, 0, 13, 0, 0, 0, 3, 0],
+        [3, 0, 1, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0],
+        [3, 0, 2, 1, 21, 9, 1, 7, 5, 0, 0, 1, 4, 3, 4, 1, 0, 2, 7, 1, 1, 0, 3, 0, 6, 0],
+        [3, 13, 7, 6, 3, 5, 12, 1, 0, 0, 0, 7, 37, 26, 0, 3, 0, 37, 24, 15, 0, 0, 0, 2, 2, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [17, 0, 0, 0, 5, 0, 0, 2, 5, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 1, 1, 39, 1, 0, 3, 0, 1, 0, 0, 13, 9, 0, 0, 25, 0, 9, 29, 9, 0, 0, 0, 1, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 33, 20, 8, 1, 0, 17, 5, 1, 0, 2, 169, 20, 230, 0, 3, 0, 30, 13, 91, 0, 1, 1, 2, 0, 1],
+        [11, 19, 0, 0, 38, 0, 0, 0, 22, 0, 0, 131, 1, 2, 10, 0, 0, 20, 1, 0, 23, 0, 0, 0, 2, 0],
+        [161, 0, 3, 0, 113, 0, 0, 62, 113, 0, 142, 15, 0, 4, 46, 0, 0, 12, 5, 53, 42, 0, 0, 0, 7, 0],
+        [51, 2, 0, 31, 232, 0, 30, 0, 46, 1, 0, 5, 1, 8, 10, 1, 0, 1, 10, 5, 11, 0, 7, 0, 9, 0],
+        [0, 1, 17, 6, 1, 16, 11, 1, 0, 0, 1, 52, 4, 70, 0, 1, 0, 66, 18, 50, 7, 17, 6, 0, 0, 2],
+        [7, 0, 0, 0, 31, 45, 0, 0, 27, 0, 0, 9, 0, 1, 10, 0, 0, 2, 0, 24, 10, 0, 0, 0, 71, 0],
+        [48, 0, 0, 0, 41, 0, 30, 147, 30, 0, 0, 4, 15, 57, 20, 1, 0, 23, 3, 1, 15, 0, 1, 0, 2, 2],
+        [1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [6, 0, 0, 0, 17, 0, 0, 0, 3, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 1, 2, 0, 0, 0, 1, 0],
+        [60, 10, 6, 36, 106, 6, 5, 7, 90, 0, 13, 253, 14, 0, 24, 1, 0, 1, 10, 31, 6, 6, 5, 0, 10, 0],
+        [76, 26, 0, 0, 94, 1, 0, 1, 53, 0, 0, 1, 38, 1, 30, 133, 0, 1, 8, 0, 17, 0, 0, 0, 2, 0],
+        [212, 12, 143, 168, 396, 83, 435, 26, 94, 8, 43, 9, 6, 44, 70, 3, 10, 2, 139, 205, 35, 46, 4, 4, 15, 1],
+        [2, 2, 20, 10, 1, 0, 9, 0, 0, 0, 0, 28, 12, 604, 0, 8, 0, 25, 13, 24, 139, 3, 2, 3, 0, 1],
+        [20, 5, 0, 0, 26, 2, 0, 16, 16, 1, 0, 33, 6, 0, 13, 39, 0, 5, 19, 28, 5, 0, 1, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 0, 0, 0, 0],
+        [41, 2, 39, 24, 106, 7, 9, 0, 19, 0, 11, 20, 24, 1, 24, 8, 0, 39, 11, 31, 3, 5, 8, 0, 10, 0],
+        [35, 5, 71, 4, 110, 4, 2, 189, 56, 1, 13, 12, 93, 5, 55, 33, 3, 6, 85, 271, 4, 1, 1, 0, 8, 0],
+        [136, 1, 34, 1, 184, 5, 0, 77, 158, 0, 1, 4, 6, 5, 70, 1, 0, 31, 2, 105, 72, 0, 1, 0, 142, 19],
+        [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 121, 1, 0, 0, 0, 1, 19, 0, 0, 0, 0, 0, 0, 0],
+        [57, 0, 0, 0, 292, 0, 0, 0, 37, 0, 0, 0, 0, 0, 12, 0, 0, 1, 0, 0, 3, 0, 0, 0, 2, 0],
+        [3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 2, 1, 1, 0, 3, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 9, 1, 0, 0, 0, 1, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [9, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 16]
+      ],
+      [
+        [0, 2, 32, 1, 1, 0, 3, 3, 2, 0, 3, 1, 8, 17, 0, 2, 0, 5, 2, 0, 2, 3, 2, 1, 1, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [4, 0, 24, 1, 1, 3, 0, 1, 0, 2, 0, 2, 0, 6, 2, 0, 0, 11, 9, 5, 0, 0, 6, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 1, 0, 0, 0, 1, 4, 0, 0, 0, 0, 2, 4, 3, 0, 0, 0, 0, 0, 4, 0, 1, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [4, 2, 6, 0, 3, 0, 3, 12, 10, 0, 1, 6, 0, 5, 0, 0, 0, 10, 10, 1, 13, 4, 2, 0, 7, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 3, 0, 19, 0, 0, 8, 0, 2, 2, 2, 8, 5, 24, 0, 1, 0, 15, 9, 5, 0, 1, 0, 2, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 3, 0, 6, 1, 2, 8, 2, 1, 1, 1, 9, 4, 13, 2, 3, 0, 18, 4, 17, 2, 1, 2, 1, 5, 2],
+        [3, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 11, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [4, 3, 0, 7, 28, 3, 3, 2, 1, 0, 0, 20, 5, 55, 3, 3, 0, 59, 18, 56, 2, 1, 4, 0, 27, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [9, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 8, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0],
+        [5, 2, 3, 9, 15, 1, 1, 0, 0, 0, 1, 10, 10, 87, 2, 4, 0, 11, 15, 13, 0, 2, 2, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [15, 0, 0, 0, 46, 0, 0, 0, 13, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0],
+        [13, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 0, 0, 0, 11, 0, 0, 0, 10, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0],
+        [1, 1, 2, 3, 2, 4, 0, 2, 1, 0, 1, 3, 1, 7, 1, 2, 0, 6, 2, 1, 7, 4, 5, 2, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [10, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 5, 0, 0, 0, 2, 0],
+        [2, 2, 1, 0, 1, 0, 1, 9, 5, 0, 1, 0, 4, 0, 8, 3, 0, 0, 0, 11, 4, 0, 1, 0, 1, 0],
+        [3, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 5, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 5, 1, 1, 0, 8, 0, 2, 1, 1, 0, 0, 1, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [9, 0, 0, 0, 4, 0, 0, 1, 2, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 4, 0, 0, 2, 0, 0, 2, 1, 0, 1, 0, 3, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [1, 46, 84, 43, 3, 2, 46, 9, 52, 0, 10, 3, 64, 242, 4, 23, 1, 157, 92, 210, 45, 21, 23, 9, 42, 11],
+        [12, 0, 0, 0, 17, 0, 0, 0, 3, 0, 0, 2, 0, 0, 13, 0, 0, 4, 0, 0, 4, 0, 0, 0, 2, 0],
+        [9, 0, 0, 0, 6, 0, 0, 12, 4, 0, 0, 1, 1, 0, 19, 0, 0, 2, 0, 1, 7, 0, 0, 0, 2, 0],
+        [2, 3, 2, 0, 41, 4, 0, 1, 16, 0, 0, 1, 2, 3, 13, 1, 0, 8, 9, 2, 3, 0, 5, 0, 3, 0],
+        [94, 25, 75, 44, 36, 13, 55, 9, 26, 1, 1, 9, 55, 121, 22, 22, 0, 77, 84, 115, 12, 29, 14, 30, 75, 1],
+        [9, 1, 0, 0, 4, 1, 1, 1, 12, 0, 0, 1, 0, 0, 7, 0, 0, 8, 1, 2, 8, 0, 1, 0, 0, 0],
+        [16, 0, 0, 0, 12, 0, 0, 0, 10, 0, 0, 0, 0, 0, 6, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 6, 0, 0, 0, 2, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [82, 33, 140, 26, 43, 37, 73, 0, 0, 1, 6, 11, 46, 238, 50, 40, 13, 5, 90, 127, 12, 36, 0, 3, 0, 7],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 4, 0, 0, 3, 9, 0, 0, 2, 0, 1, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 8, 0],
+        [128, 12, 2, 4, 169, 7, 2, 4, 152, 1, 0, 0, 7, 0, 100, 2, 0, 1, 10, 2, 41, 0, 7, 0, 53, 0],
+        [27, 0, 0, 2, 11, 0, 0, 2, 9, 0, 0, 0, 1, 0, 13, 0, 0, 0, 4, 0, 3, 0, 0, 0, 3, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [23, 23, 65, 15, 7, 4, 132, 3, 32, 0, 2, 7, 29, 69, 50, 36, 11, 74, 33, 53, 66, 16, 80, 1, 12, 1],
+        [11, 0, 0, 0, 3, 1, 0, 21, 5, 0, 0, 0, 1, 0, 6, 0, 0, 3, 1, 4, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 6, 0],
+        [7, 1, 0, 0, 16, 0, 0, 8, 23, 0, 1, 0, 1, 0, 20, 3, 0, 0, 1, 23, 0, 0, 1, 0, 2, 0],
+        [22, 1, 0, 0, 23, 0, 0, 14, 34, 0, 0, 0, 2, 0, 23, 0, 0, 9, 3, 0, 8, 1, 1, 0, 18, 5],
+        [5, 17, 26, 18, 31, 5, 13, 0, 5, 2, 4, 8, 68, 31, 15, 5, 0, 21, 68, 56, 0, 4, 0, 13, 0, 1],
+        [19, 0, 0, 1, 46, 0, 0, 0, 9, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [8, 0, 0, 0, 2, 0, 0, 1, 2, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 4, 12, 2, 2, 2, 3, 7, 2, 0, 1, 3, 13, 11, 2, 11, 0, 2, 31, 15, 1, 0, 4, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 10, 59, 34, 3, 0, 57, 7, 31, 3, 25, 104, 6, 326, 2, 4, 0, 144, 49, 192, 10, 2, 3, 11, 14, 7],
+        [31, 1, 0, 1, 44, 0, 0, 0, 32, 0, 0, 31, 0, 1, 27, 1, 0, 32, 1, 0, 21, 0, 0, 0, 0, 0],
+        [3, 1, 17, 6, 2, 2, 9, 3, 5, 0, 9, 3, 3, 4, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [30, 6, 8, 45, 3, 2, 14, 1, 4, 0, 1, 51, 19, 283, 10, 4, 0, 125, 39, 128, 0, 2, 9, 3, 4, 1],
+        [0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 2, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [19, 0, 93, 54, 8, 2, 19, 0, 0, 1, 2, 76, 9, 194, 4, 0, 1, 21, 96, 109, 10, 0, 0, 5, 0, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 3, 0, 0, 0, 6, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [40, 0, 0, 0, 46, 0, 0, 0, 33, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 17, 0, 0, 0, 12, 0],
+        [12, 0, 0, 0, 4, 0, 0, 0, 10, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0],
+        [4, 10, 13, 28, 4, 1, 14, 3, 11, 0, 6, 47, 10, 168, 16, 3, 0, 107, 40, 45, 56, 8, 1, 1, 1, 2],
+        [52, 3, 0, 0, 71, 1, 1, 26, 18, 0, 4, 71, 0, 0, 50, 0, 0, 41, 9, 43, 19, 0, 0, 0, 7, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
+        [0, 1, 2, 1, 5, 1, 0, 2, 3, 0, 1, 0, 2, 0, 8, 2, 0, 0, 1, 10, 1, 0, 0, 0, 2, 0],
+        [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 7, 11, 6, 3, 6, 0, 2, 0, 2, 55, 11, 29, 2, 1, 0, 18, 53, 30, 0, 0, 0, 0, 0, 3],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 11, 0, 5, 0, 1, 0, 0, 0, 0, 1, 0, 2, 7, 0, 0, 7, 7, 4, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [2, 24, 33, 23, 6, 3, 30, 6, 20, 0, 9, 115, 29, 59, 2, 31, 0, 94, 28, 159, 19, 10, 5, 0, 1, 5],
+        [5, 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 4, 0, 0, 7, 0, 0, 4, 1, 0, 10, 0, 0, 0, 0, 0],
+        [25, 0, 0, 0, 190, 0, 0, 87, 51, 0, 1, 18, 0, 0, 62, 0, 0, 16, 0, 36, 21, 0, 0, 0, 8, 0],
+        [75, 11, 4, 1, 162, 6, 3, 7, 102, 1, 1, 22, 10, 2, 57, 9, 2, 46, 30, 4, 37, 0, 11, 0, 20, 0],
+        [34, 12, 36, 12, 29, 17, 16, 4, 14, 0, 0, 45, 16, 20, 25, 8, 6, 88, 80, 84, 32, 12, 37, 18, 45, 3],
+        [15, 0, 0, 0, 30, 0, 0, 0, 38, 0, 0, 23, 0, 0, 26, 0, 0, 10, 0, 0, 19, 0, 0, 0, 0, 0],
+        [22, 8, 0, 3, 114, 6, 0, 15, 18, 0, 3, 51, 5, 0, 20, 2, 0, 24, 24, 28, 38, 0, 2, 0, 9, 0],
+        [18, 0, 0, 0, 16, 0, 0, 0, 6, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0],
+        [90, 9, 148, 14, 33, 27, 35, 4, 1, 0, 5, 12, 25, 44, 26, 21, 7, 4, 87, 94, 29, 11, 0, 4, 0, 4],
+        [2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0],
+        [6, 0, 1, 0, 22, 4, 1, 1, 10, 0, 0, 12, 2, 0, 1, 1, 0, 2, 2, 3, 0, 0, 0, 0, 9, 0],
+        [9, 0, 0, 0, 8, 0, 0, 0, 5, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
+        [8, 0, 0, 0, 5, 0, 0, 0, 2, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [39, 0, 0, 0, 74, 0, 0, 0, 52, 0, 1, 0, 0, 0, 23, 0, 0, 0, 1, 0, 14, 0, 1, 0, 25, 0],
+        [4, 18, 21, 10, 4, 4, 15, 0, 11, 0, 0, 30, 60, 34, 11, 11, 0, 80, 32, 47, 52, 18, 24, 7, 2, 2],
+        [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4, 0, 0, 6, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0],
+        [3, 0, 1, 0, 1, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 3, 0, 0, 0, 6, 0],
+        [26, 4, 23, 2, 73, 17, 3, 12, 96, 0, 5, 8, 13, 0, 60, 25, 0, 1, 3, 79, 39, 4, 4, 0, 5, 0],
+        [143, 1, 1, 1, 175, 2, 2, 64, 209, 0, 0, 13, 3, 1, 65, 1, 0, 114, 3, 0, 32, 0, 2, 0, 21, 1],
+        [12, 6, 16, 6, 11, 3, 6, 0, 5, 0, 1, 15, 35, 9, 6, 3, 0, 9, 25, 31, 1, 0, 0, 0, 0, 1],
+        [15, 0, 0, 0, 43, 0, 0, 0, 20, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 4, 0, 0, 0, 1, 0],
+        [12, 0, 0, 0, 3, 0, 0, 2, 4, 0, 0, 0, 0, 0, 6, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
+        [5, 3, 1, 1, 0, 0, 0, 1, 0, 0, 0, 7, 14, 0, 4, 1, 1, 1, 3, 1, 1, 1, 2, 1, 0, 0],
+        [10, 0, 0, 0, 5, 0, 0, 0, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 5, 0]
+      ],
+      [
+        [1, 0, 20, 30, 0, 2, 5, 2, 0, 0, 9, 9, 8, 18, 0, 4, 1, 51, 13, 44, 1, 1, 0, 2, 0, 0],
+        [17, 24, 2, 2, 28, 2, 0, 1, 32, 4, 0, 19, 0, 1, 16, 0, 0, 5, 26, 3, 8, 3, 1, 0, 2, 0],
+        [50, 0, 28, 0, 38, 0, 0, 47, 26, 0, 129, 14, 0, 0, 33, 0, 0, 25, 0, 34, 20, 0, 0, 0, 8, 0],
+        [17, 3, 3, 15, 59, 3, 13, 4, 47, 0, 1, 13, 2, 1, 22, 3, 0, 8, 11, 0, 21, 0, 8, 0, 35, 0],
+        [0, 6, 1, 7, 0, 3, 0, 1, 6, 0, 1, 10, 3, 13, 1, 0, 1, 10, 15, 6, 2, 7, 0, 3, 1, 0],
+        [7, 0, 0, 0, 4, 63, 0, 0, 10, 0, 0, 4, 1, 0, 6, 0, 0, 1, 0, 15, 4, 0, 0, 0, 1, 0],
+        [34, 2, 0, 1, 44, 1, 22, 3, 15, 1, 0, 11, 3, 11, 7, 0, 0, 80, 1, 2, 18, 0, 1, 0, 83, 0],
+        [10, 0, 0, 0, 8, 0, 0, 0, 6, 0, 0, 1, 5, 9, 5, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 0],
+        [3, 1, 12, 53, 1, 1, 2, 0, 0, 0, 1, 27, 0, 51, 0, 0, 0, 11, 39, 8, 0, 0, 0, 1, 0, 0],
+        [1, 0, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 2, 1, 0, 48, 0, 0, 1, 7, 0, 1, 4, 0, 0, 3, 1, 0, 0, 5, 0, 3, 0, 1, 0, 6, 0],
+        [71, 4, 6, 83, 111, 8, 5, 3, 121, 0, 14, 124, 16, 1, 132, 6, 0, 1, 18, 24, 43, 16, 2, 0, 46, 1],
+        [89, 50, 1, 0, 174, 5, 0, 1, 76, 0, 0, 2, 64, 7, 56, 125, 1, 1, 4, 0, 4, 0, 2, 0, 22, 0],
+        [129, 3, 64, 82, 181, 52, 86, 3, 124, 10, 11, 7, 3, 46, 75, 1, 6, 10, 107, 149, 8, 38, 9, 1, 54, 5],
+        [0, 2, 4, 92, 0, 22, 4, 1, 0, 0, 68, 42, 42, 44, 0, 19, 0, 21, 21, 68, 0, 3, 0, 0, 0, 2],
+        [28, 1, 2, 0, 71, 0, 2, 82, 32, 1, 3, 16, 1, 1, 45, 29, 0, 17, 14, 21, 10, 0, 2, 0, 19, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0],
+        [122, 26, 31, 96, 138, 7, 34, 2, 143, 0, 61, 8, 85, 76, 61, 59, 1, 58, 46, 211, 11, 4, 9, 0, 116, 1],
+        [31, 4, 24, 0, 107, 0, 3, 18, 102, 0, 2, 7, 9, 1, 18, 42, 2, 0, 63, 127, 5, 1, 2, 0, 8, 0],
+        [45, 7, 11, 0, 64, 2, 1, 88, 63, 0, 0, 10, 3, 1, 42, 4, 0, 17, 7, 63, 9, 0, 3, 0, 11, 0],
+        [3, 11, 17, 13, 3, 3, 62, 1, 6, 0, 0, 32, 1, 137, 0, 11, 1, 86, 445, 103, 0, 7, 0, 1, 0, 2],
+        [26, 0, 0, 0, 109, 0, 0, 0, 27, 0, 1, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0],
+        [18, 14, 2, 13, 48, 6, 0, 8, 8, 0, 1, 28, 7, 83, 1, 8, 0, 5, 13, 2, 2, 0, 1, 0, 4, 1],
+        [2, 1, 3, 0, 5, 1, 1, 3, 26, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 14, 0],
+        [15, 1, 4, 6, 3, 1, 0, 0, 1, 0, 0, 3, 0, 1, 4, 1, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1]
+      ],
+      [
+        [0, 8, 38, 11, 1, 0, 18, 0, 17, 0, 2, 50, 5, 73, 1, 23, 1, 176, 50, 101, 18, 5, 7, 1, 10, 2],
+        [3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 6, 0, 0, 2, 1, 0, 3, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [51, 1, 62, 34, 19, 4, 8, 0, 3, 1, 2, 47, 2, 108, 4, 10, 0, 292, 22, 50, 3, 1, 8, 2, 2, 4],
+        [0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [56, 0, 0, 2, 88, 0, 0, 0, 76, 0, 0, 3, 0, 1, 97, 0, 0, 13, 1, 3, 5, 0, 0, 0, 79, 0],
+        [21, 0, 74, 25, 33, 1, 19, 0, 0, 0, 6, 27, 3, 74, 12, 11, 2, 37, 27, 57, 3, 2, 0, 2, 0, 2],
+        [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [150, 0, 0, 0, 121, 0, 0, 0, 59, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 29, 0, 0, 0, 11, 0],
+        [6, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 1, 19, 10, 12, 2, 7, 0, 31, 0, 12, 111, 14, 55, 23, 17, 0, 97, 126, 52, 20, 3, 13, 3, 2, 0],
+        [16, 0, 0, 0, 48, 0, 0, 1, 20, 0, 0, 32, 1, 0, 25, 0, 0, 32, 3, 0, 1, 0, 0, 0, 16, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [39, 0, 0, 0, 166, 0, 0, 0, 104, 0, 0, 0, 0, 0, 273, 0, 0, 0, 0, 0, 12, 0, 0, 0, 1, 0],
+        [4, 1, 3, 0, 17, 0, 0, 5, 22, 0, 1, 1, 2, 0, 13, 0, 0, 0, 0, 14, 6, 0, 1, 0, 35, 0],
+        [16, 0, 1, 0, 9, 0, 0, 3, 107, 0, 0, 0, 0, 0, 33, 0, 0, 3, 0, 0, 19, 0, 0, 0, 4, 0],
+        [1, 8, 4, 8, 3, 6, 4, 0, 1, 0, 1, 41, 8, 22, 0, 9, 0, 39, 18, 28, 0, 0, 0, 0, 0, 1],
+        [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 2, 0, 0, 0, 0, 3, 0, 1, 0, 1, 3, 0, 0, 1, 0, 0, 20, 0, 3, 0, 0, 1, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [110, 0, 0, 0, 100, 0, 0, 0, 128, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 72, 130, 95, 8, 35, 73, 14, 85, 3, 10, 121, 95, 313, 2, 119, 1, 26, 66, 277, 19, 45, 28, 2, 28, 13],
+        [32, 0, 0, 0, 26, 0, 0, 0, 35, 0, 0, 4, 0, 0, 44, 0, 0, 3, 1, 0, 9, 0, 0, 0, 5, 0],
+        [18, 0, 2, 0, 47, 0, 0, 86, 25, 0, 3, 11, 0, 0, 13, 0, 0, 1, 2, 7, 38, 0, 0, 0, 4, 0],
+        [22, 5, 1, 0, 26, 1, 0, 4, 42, 0, 0, 4, 0, 2, 17, 1, 0, 5, 9, 4, 3, 0, 4, 0, 7, 0],
+        [166, 26, 106, 99, 114, 52, 55, 20, 25, 4, 4, 60, 69, 143, 20, 72, 8, 11, 257, 119, 14, 56, 34, 7, 23, 2],
+        [11, 0, 0, 0, 15, 1, 0, 0, 9, 0, 0, 7, 0, 0, 8, 0, 0, 4, 0, 0, 12, 0, 0, 0, 0, 0],
+        [26, 0, 0, 0, 63, 0, 0, 5, 25, 0, 0, 11, 1, 0, 18, 0, 0, 2, 2, 0, 13, 0, 0, 0, 11, 0],
+        [11, 0, 0, 0, 19, 0, 0, 0, 5, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0],
+        [182, 54, 210, 87, 79, 38, 65, 1, 0, 1, 6, 49, 65, 166, 82, 61, 1, 0, 151, 141, 29, 44, 1, 6, 1, 10],
+        [0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [4, 2, 0, 1, 19, 0, 0, 3, 9, 0, 0, 6, 3, 2, 5, 3, 0, 1, 10, 2, 0, 0, 1, 0, 6, 0],
+        [24, 2, 0, 4, 28, 0, 0, 0, 36, 0, 0, 0, 0, 0, 14, 1, 0, 0, 2, 1, 2, 0, 1, 0, 8, 0],
+        [97, 1, 2, 0, 29, 2, 0, 3, 65, 0, 0, 2, 0, 0, 39, 1, 0, 0, 1, 1, 10, 0, 1, 0, 5, 0],
+        [53, 5, 0, 0, 50, 4, 0, 3, 29, 0, 1, 0, 6, 0, 16, 1, 0, 0, 9, 5, 7, 0, 2, 0, 4, 0],
+        [46, 40, 79, 40, 18, 22, 56, 4, 32, 5, 10, 76, 90, 167, 84, 127, 2, 14, 127, 74, 127, 42, 63, 17, 15, 3],
+        [10, 0, 0, 0, 21, 0, 0, 33, 10, 0, 0, 5, 1, 0, 25, 0, 0, 12, 8, 8, 5, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0],
+        [53, 0, 0, 0, 92, 0, 0, 5, 85, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 14, 0, 0, 0, 60, 0],
+        [26, 2, 2, 2, 84, 1, 0, 16, 44, 0, 4, 2, 3, 1, 43, 12, 1, 0, 0, 32, 14, 1, 2, 0, 2, 0],
+        [39, 2, 2, 0, 61, 5, 3, 101, 99, 0, 0, 11, 7, 3, 32, 0, 0, 17, 12, 1, 27, 0, 2, 0, 24, 7],
+        [5, 21, 30, 31, 15, 6, 12, 0, 18, 0, 0, 10, 46, 41, 1, 28, 0, 3, 83, 22, 0, 1, 1, 1, 0, 1],
+        [31, 0, 0, 0, 37, 0, 0, 0, 28, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0],
+        [15, 0, 0, 0, 6, 0, 0, 0, 12, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 3, 3, 5, 3, 0, 1, 0, 0, 0, 0, 10, 11, 4, 12, 16, 0, 0, 9, 4, 0, 0, 2, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [2, 44, 23, 16, 1, 10, 21, 4, 16, 1, 7, 80, 17, 89, 1, 10, 0, 36, 10, 43, 22, 10, 13, 5, 7, 0],
+        [9, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 0, 0, 6, 0, 0, 2, 0, 0, 18, 0, 0, 0, 3, 0],
+        [81, 0, 0, 0, 65, 0, 1, 78, 37, 0, 0, 5, 1, 0, 88, 0, 0, 92, 0, 0, 40, 0, 0, 0, 3, 0],
+        [11, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0],
+        [38, 14, 47, 18, 33, 7, 8, 3, 11, 0, 1, 63, 39, 101, 5, 28, 14, 83, 28, 41, 12, 19, 15, 15, 19, 1],
+        [3, 0, 0, 0, 7, 0, 0, 0, 5, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 6, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 5, 1, 0, 2, 0, 0, 0, 0, 0],
+        [97, 9, 1, 0, 79, 3, 0, 0, 75, 0, 1, 4, 16, 3, 81, 2, 0, 27, 0, 1, 20, 1, 6, 0, 17, 0],
+        [55, 56, 44, 80, 28, 15, 38, 0, 0, 0, 2, 50, 40, 78, 148, 7, 1, 7, 99, 89, 9, 76, 0, 8, 0, 3],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [9, 0, 0, 0, 24, 0, 0, 0, 35, 0, 0, 0, 2, 0, 3, 0, 0, 1, 0, 0, 5, 0, 0, 0, 23, 0],
+        [42, 0, 0, 0, 35, 0, 0, 0, 29, 0, 0, 1, 0, 0, 29, 0, 0, 0, 0, 0, 13, 0, 0, 0, 2, 0],
+        [57, 0, 0, 0, 30, 0, 0, 0, 31, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 14, 0, 0, 0, 2, 0],
+        [21, 0, 0, 0, 12, 0, 0, 0, 12, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 4, 6, 0, 0, 0, 2, 0],
+        [6, 4, 26, 12, 6, 10, 4, 1, 8, 1, 0, 67, 65, 190, 8, 21, 0, 71, 0, 11, 34, 6, 3, 0, 3, 1],
+        [63, 1, 0, 0, 116, 0, 0, 41, 82, 0, 0, 24, 0, 0, 69, 0, 0, 34, 1, 0, 16, 0, 0, 0, 3, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0],
+        [4, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0],
+        [50, 3, 2, 0, 77, 3, 0, 4, 151, 0, 0, 5, 11, 1, 42, 2, 0, 4, 0, 4, 17, 0, 13, 0, 19, 0],
+        [258, 6, 4, 1, 291, 9, 1, 11, 240, 1, 0, 25, 12, 2, 205, 6, 0, 255, 3, 0, 58, 2, 7, 0, 36, 0],
+        [14, 38, 17, 6, 7, 11, 6, 0, 11, 0, 0, 39, 35, 37, 1, 42, 0, 71, 30, 4, 0, 0, 0, 0, 0, 4],
+        [0, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [37, 0, 0, 0, 31, 0, 0, 0, 28, 0, 0, 0, 0, 0, 21, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 2, 32, 1, 1, 0, 1, 0, 0, 0, 1, 18, 19, 30, 0, 2, 0, 9, 5, 1, 0, 0, 0, 0, 0, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 74, 44, 8, 3, 9, 45, 8, 68, 0, 15, 130, 36, 181, 1, 23, 0, 128, 22, 185, 13, 11, 9, 13, 4, 0],
+        [7, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 6, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0, 0],
+        [5, 0, 0, 0, 0, 0, 0, 112, 0, 0, 0, 2, 0, 0, 5, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
+        [52, 9, 29, 37, 66, 9, 17, 6, 16, 0, 2, 65, 49, 185, 18, 20, 0, 588, 61, 23, 9, 9, 9, 16, 1, 0],
+        [6, 0, 0, 0, 1, 0, 0, 0, 5, 0, 0, 1, 0, 0, 6, 0, 0, 1, 0, 0, 24, 0, 0, 0, 0, 0],
+        [4, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0],
+        [68, 6, 1, 5, 274, 8, 1, 2, 62, 0, 1, 9, 13, 3, 90, 4, 1, 61, 8, 2, 31, 0, 16, 0, 49, 0],
+        [99, 35, 342, 16, 35, 45, 34, 0, 0, 0, 3, 67, 75, 183, 419, 28, 9, 18, 75, 88, 9, 128, 0, 0, 0, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
+        [18, 0, 0, 0, 102, 0, 0, 0, 5, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0],
+        [25, 0, 0, 0, 8, 0, 0, 0, 3, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 9, 0, 0, 0, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 4, 1, 0, 0, 0, 0, 0],
+        [5, 6, 34, 11, 8, 7, 26, 0, 14, 0, 9, 38, 65, 238, 26, 56, 0, 319, 19, 16, 36, 3, 36, 7, 3, 2],
+        [2, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [315, 0, 0, 0, 98, 0, 0, 0, 246, 0, 0, 0, 0, 0, 201, 0, 0, 0, 0, 0, 68, 0, 1, 0, 64, 0],
+        [2, 2, 2, 1, 10, 2, 0, 3, 4, 0, 1, 0, 13, 0, 9, 3, 0, 0, 0, 8, 5, 2, 5, 0, 3, 0],
+        [44, 0, 0, 0, 154, 1, 1, 2, 53, 0, 1, 45, 0, 0, 33, 0, 0, 10, 8, 0, 4, 1, 0, 0, 25, 0],
+        [41, 14, 9, 41, 8, 5, 4, 0, 10, 0, 0, 19, 30, 29, 13, 10, 0, 159, 35, 22, 0, 0, 0, 1, 1, 0],
+        [3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [14, 0, 0, 0, 12, 0, 0, 1, 23, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 1, 2, 0, 0, 0, 1, 0, 1, 0, 0, 14, 2, 0, 0, 34, 0, 14, 3, 0, 0, 0, 2, 1, 0, 0],
+        [1, 0, 0, 0, 5, 0, 1, 0, 2, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 4, 7, 21, 0, 1, 5, 1, 4, 0, 5, 51, 2, 26, 0, 1, 0, 48, 9, 37, 0, 2, 4, 0, 3, 0],
+        [8, 18, 0, 1, 20, 0, 0, 2, 18, 2, 0, 23, 5, 0, 2, 1, 0, 10, 15, 8, 7, 2, 0, 0, 1, 0],
+        [10, 0, 14, 0, 23, 0, 0, 31, 29, 0, 55, 16, 0, 0, 7, 0, 0, 9, 1, 47, 5, 0, 0, 0, 2, 0],
+        [17, 1, 0, 24, 67, 0, 18, 0, 39, 0, 0, 4, 0, 0, 8, 0, 0, 1, 10, 0, 2, 0, 2, 0, 7, 1],
+        [6, 9, 0, 1, 5, 5, 4, 1, 0, 1, 0, 21, 1, 33, 1, 1, 0, 19, 22, 15, 2, 0, 0, 0, 3, 6],
+        [1, 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 0],
+        [19, 1, 0, 0, 21, 0, 34, 80, 3, 0, 0, 4, 2, 2, 6, 0, 0, 1, 1, 0, 11, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 2, 14, 14, 6, 0, 1, 0, 0, 0, 0, 32, 0, 31, 1, 8, 0, 19, 44, 64, 1, 4, 0, 2, 0, 3],
+        [1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [1, 0, 0, 1, 12, 0, 0, 0, 3, 0, 1, 0, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [136, 4, 11, 11, 46, 14, 7, 0, 35, 0, 10, 67, 5, 2, 23, 16, 0, 1, 24, 73, 16, 3, 1, 0, 5, 1],
+        [22, 52, 3, 1, 51, 5, 0, 1, 32, 0, 0, 2, 28, 11, 8, 48, 1, 0, 8, 1, 6, 2, 0, 0, 0, 0],
+        [21, 6, 73, 131, 25, 5, 46, 2, 55, 0, 33, 4, 2, 13, 4, 2, 0, 2, 15, 82, 1, 0, 2, 0, 5, 0],
+        [0, 0, 0, 1, 0, 0, 0, 0, 3, 0, 0, 2, 0, 3, 0, 2, 0, 16, 3, 5, 29, 0, 0, 0, 2, 0],
+        [4, 4, 1, 2, 31, 1, 1, 14, 10, 0, 1, 13, 1, 0, 8, 24, 0, 13, 13, 24, 2, 0, 2, 0, 2, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0],
+        [75, 27, 21, 17, 149, 8, 60, 1, 66, 2, 11, 17, 11, 55, 28, 15, 1, 51, 43, 43, 9, 15, 3, 0, 28, 1],
+        [31, 5, 29, 2, 105, 0, 1, 53, 64, 0, 17, 3, 0, 1, 8, 12, 1, 0, 34, 115, 6, 0, 0, 0, 4, 0],
+        [45, 1, 14, 1, 69, 0, 1, 55, 77, 0, 0, 8, 3, 3, 49, 0, 0, 13, 7, 51, 11, 0, 2, 0, 6, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 8, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 5, 4, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0],
+        [2, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 12]
+      ],
+      [
+        [0, 9, 20, 8, 1, 0, 14, 2, 8, 1, 3, 69, 2, 57, 0, 1, 0, 31, 18, 36, 5, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [6, 2, 5, 4, 4, 3, 6, 4, 5, 0, 1, 47, 4, 120, 3, 1, 0, 271, 46, 24, 0, 0, 1, 5, 10, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [37, 4, 33, 23, 21, 2, 8, 0, 2, 0, 3, 43, 0, 47, 18, 0, 0, 16, 65, 30, 5, 16, 0, 2, 0, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 23, 0, 0, 0, 3, 0, 9, 0, 5, 48, 2, 6, 1, 0, 0, 10, 4, 9, 10, 1, 3, 0, 6, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [1, 4, 7, 8, 0, 3, 12, 3, 18, 0, 8, 53, 5, 20, 0, 4, 0, 100, 27, 55, 1, 9, 1, 4, 71, 1],
+        [6, 0, 0, 0, 7, 0, 0, 0, 1, 0, 0, 0, 0, 0, 10, 0, 0, 3, 0, 0, 1, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0, 0, 0, 4, 0, 0, 3, 0, 0, 1, 0, 0, 0, 3, 0],
+        [30, 5, 1, 9, 33, 0, 2, 1, 19, 0, 0, 51, 0, 11, 0, 2, 0, 36, 21, 7, 0, 2, 0, 0, 2, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 4, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [18, 0, 0, 0, 47, 0, 0, 0, 52, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0],
+        [0, 0, 14, 18, 5, 5, 15, 0, 0, 0, 0, 40, 2, 83, 0, 2, 0, 8, 38, 47, 0, 4, 0, 1, 0, 2],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0],
+        [3, 0, 0, 0, 9, 0, 0, 0, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 3, 0],
+        [8, 0, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 1, 1, 1, 6, 1, 1, 2, 3, 0, 0, 0, 0, 0, 0, 2, 0, 1, 10, 4, 1, 0, 2, 0, 3, 0],
+        [0, 1, 0, 0, 3, 1, 0, 0, 0, 0, 3, 10, 17, 8, 54, 1, 0, 121, 1, 1, 3, 2, 1, 0, 0, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 12, 0, 0, 0, 25, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0],
+        [0, 1, 1, 0, 2, 0, 0, 1, 1, 0, 1, 2, 2, 0, 5, 3, 0, 1, 1, 4, 1, 0, 2, 0, 1, 0],
+        [1, 0, 0, 0, 1, 0, 0, 3, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 1, 1, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
+      ],
+      [
+        [0, 0, 5, 1, 0, 1, 3, 0, 0, 0, 0, 4, 6, 6, 0, 0, 0, 0, 3, 6, 0, 1, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [3, 0, 0, 0, 11, 0, 0, 3, 7, 0, 0, 7, 0, 0, 3, 0, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 7, 1, 0, 0, 2, 0, 1, 0, 0, 2, 6, 9, 0, 0, 0, 6, 1, 1, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0],
+        [8, 2, 12, 8, 4, 2, 2, 0, 0, 0, 0, 2, 11, 4, 8, 0, 0, 0, 9, 2, 0, 1, 1, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 1, 1, 10, 0, 1, 0, 6, 1, 5, 0, 0, 0, 0, 0, 0],
+        [8, 0, 0, 0, 27, 0, 0, 0, 5, 0, 0, 18, 0, 0, 12, 0, 0, 7, 0, 0, 3, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [6, 1, 0, 0, 22, 0, 0, 1, 7, 0, 0, 0, 0, 0, 7, 0, 0, 31, 0, 0, 9, 0, 0, 0, 1, 0],
+        [4, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      ],
+      [
+        [0, 0, 5, 5, 0, 0, 1, 1, 0, 0, 2, 11, 3, 29, 1, 4, 1, 20, 1, 3, 0, 0, 3, 0, 0, 0],
+        [4, 0, 0, 4, 7, 0, 0, 0, 2, 0, 0, 0, 0, 0, 9, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0, 0],
+        [4, 0, 0, 0, 18, 0, 0, 31, 4, 0, 0, 19, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [4, 1, 0, 0, 12, 0, 0, 0, 2, 0, 0, 0, 0, 2, 1, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0],
+        [11, 3, 0, 1, 1, 1, 1, 0, 1, 0, 0, 13, 1, 6, 2, 1, 0, 19, 7, 6, 0, 1, 1, 0, 0, 0],
+        [1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0],
+        [0, 0, 0, 1, 2, 0, 0, 0, 2, 0, 0, 1, 3, 1, 8, 0, 0, 3, 0, 0, 1, 0, 0, 0, 2, 0],
+        [0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],
+        [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [15, 0, 0, 0, 22, 0, 0, 0, 13, 0, 1, 19, 0, 0, 11, 1, 0, 0, 2, 0, 3, 6, 0, 0, 0, 0],
+        [18, 4, 1, 0, 20, 0, 0, 0, 5, 0, 0, 0, 3, 7, 11, 20, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0],
+        [14, 0, 11, 3, 12, 0, 3, 1, 2, 0, 0, 0, 0, 3, 11, 0, 0, 0, 0, 6, 0, 0, 0, 2, 1, 0],
+        [0, 0, 2, 2, 0, 4, 6, 0, 0, 0, 5, 2, 1, 18, 0, 4, 0, 8, 4, 5, 17, 1, 1, 0, 0, 1],
+        [2, 0, 0, 0, 24, 0, 0, 17, 5, 0, 0, 2, 0, 2, 21, 0, 0, 5, 7, 16, 3, 0, 0, 0, 1, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
+        [15, 0, 0, 2, 6, 1, 0, 0, 21, 0, 0, 0, 0, 2, 29, 0, 0, 2, 0, 1, 4, 0, 0, 0, 1, 0],
+        [3, 1, 3, 0, 12, 0, 0, 1, 38, 0, 0, 1, 2, 0, 4, 3, 0, 0, 6, 39, 2, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 16, 0, 0, 16, 10, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0],
+        [0, 0, 3, 0, 0, 0, 3, 1, 0, 0, 2, 1, 0, 1, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [10, 0, 1, 0, 3, 0, 0, 2, 4, 0, 0, 0, 0, 0, 5, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
+      ],
+      [
+        [1, 3, 2, 0, 0, 0, 5, 1, 1, 0, 1, 4, 1, 11, 0, 1, 0, 19, 0, 0, 0, 1, 0, 0, 0, 1],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [5, 1, 2, 1, 1, 0, 0, 0, 1, 0, 1, 7, 0, 12, 0, 0, 0, 13, 3, 3, 1, 0, 1, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 1, 2, 0, 7, 0, 5, 0, 0, 0, 0, 5, 4, 6, 1, 1, 0, 2, 1, 1, 1, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [3, 0, 0, 2, 2, 0, 1, 0, 7, 0, 0, 0, 3, 10, 5, 2, 0, 5, 0, 0, 1, 1, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+        [7, 0, 0, 0, 1, 0, 0, 0, 7, 0, 0, 17, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 5, 0]
+      ]
+    ];
+    pik = Math.random();
+    ranno = pik * 125729.0;
+    sum = 0;
+    for (c1 = 0; c1 < 26; c1++) {
+      for (c2 = 0; c2 < 26; c2++) {
+        for (c3 = 0; c3 < 26; c3++) {
+          sum += _trigram[c1][c2][c3];
+          if (sum > ranno) {
+            output += _alphabet.charAt(c1);
+            output += _alphabet.charAt(c2);
+            output += _alphabet.charAt(c3);
+            c1 = 26;
+            c2 = 26;
+            c3 = 26;
+          }
+        }
+      }
+    }
+    nchar = 3;
+    while (nchar < pwl) {
+      c1 = _alphabet.indexOf(output.charAt(nchar - 2));
+      c2 = _alphabet.indexOf(output.charAt(nchar - 1));
+      sum = 0;
+      for (c3 = 0; c3 < 26; c3++)
+        sum += _trigram[c1][c2][c3];
+      if (sum == 0) {
+        break;
+      }
+      pik = Math.random();
+      ranno = pik * sum;
+      sum = 0;
+      for (c3 = 0; c3 < 26; c3++) {
+        sum += _trigram[c1][c2][c3];
+        if (sum > ranno) {
+          output += _alphabet.charAt(c3);
+          c3 = 26;
+        }
+      }
+      nchar++;
+    }
 
-pronounceable : function (pwl) {
-	var output = "";
-	var c1, c2, c3;
-	var sum = 0;
-	var nchar;
-	var ranno;
-	var pwnum;
-	var pik;
+    var _alphabet_store = '';
+    var _alphabet_temp = '';
+    for (var i = 0, len = output.length; i < len; i++) {
+      if ((Math.floor(Math.random() * 2) + 1) === 1) {
+        _alphabet_temp = output[i].toUpperCase();
+      } else {
+        _alphabet_temp = output[i];
+      }
+      _alphabet_store = _alphabet_store + _alphabet_temp;
+    }
 
-	var _alphabet = "abcdefghijklmnopqrstuvwxyz";
+    var password_combination = [
+      _alphabet_store,
+      _specialchars.substr(Math.floor(_specialchars.length * Math.random()), 1),
+      Math.floor(Math.random() * 90 + 10)
+    ];
 
-// letter frequencies
-var _trigram = [[ /* [26][26][26] */
-/* A A */ [2,0,3,0,0,0,1,0,0,0,0,1,1,1,0,0,0,3,2,0,0,0,0,0,0,0],
-/* A B */ [37,25,2,5,38,0,0,2,46,1,0,304,0,2,49,0,0,24,24,0,19,0,0,0,14,0],
-/* A C */ [26,1,64,2,107,0,1,94,67,0,173,13,5,1,35,1,13,32,3,114,23,0,0,0,45,0],
-/* A D */ [35,7,3,43,116,6,3,8,75,14,1,16,25,3,44,3,1,35,20,1,10,25,9,0,18,0],
-/* A E */ [2,0,2,1,0,1,3,0,0,0,0,10,0,2,3,0,0,12,6,0,2,0,0,0,0,0],
-/* A F */ [5,0,0,0,14,50,2,0,3,0,2,5,0,2,7,0,0,5,1,39,1,0,0,0,1,0],
-/* A G */ [30,1,0,1,182,0,42,5,30,0,0,7,9,42,51,3,0,24,3,0,21,0,3,0,3,0],
-/* A H */ [12,0,0,0,20,0,0,0,3,0,0,5,4,2,13,0,0,2,0,0,1,0,0,0,0,0],
-/* A I */ [2,0,10,26,2,1,10,0,2,1,2,87,13,144,0,2,0,93,30,23,0,3,1,0,0,0],
-/* A J */ [4,0,0,0,3,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0],
-/* A K */ [11,0,1,1,98,1,0,1,15,0,0,3,0,0,5,1,0,3,0,1,2,0,3,0,8,0],
-/* A L */ [78,20,34,45,124,21,24,5,109,0,28,237,31,3,53,23,0,7,16,69,29,26,5,0,26,2],
-/* A M */ [70,57,1,1,98,3,0,1,68,0,0,3,38,2,43,69,0,3,14,3,12,0,2,0,14,0],
-/* A N */ [114,6,156,359,103,8,146,12,141,2,57,4,0,89,61,1,4,1,124,443,29,6,1,3,28,9],
-/* A O */ [0,0,1,0,0,0,0,0,0,0,0,3,1,0,0,0,0,3,2,2,2,0,0,0,0,0],
-/* A P */ [29,3,0,1,59,1,0,86,25,0,1,14,1,1,37,94,0,9,22,30,8,0,0,0,9,0],
-/* A Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0],
-/* A R */ [124,64,101,233,115,12,47,5,188,3,61,55,68,34,46,25,6,94,48,189,5,22,5,1,172,2],
-/* A S */ [19,3,32,0,71,0,1,81,49,0,22,3,19,2,19,34,4,0,152,211,12,0,1,0,17,1],
-/* A T */ [50,3,41,2,863,4,0,144,352,0,5,14,6,3,144,0,0,60,13,106,57,1,5,0,8,5],
-/* A U */ [0,5,23,35,5,5,38,1,0,1,3,33,4,23,0,4,1,35,52,56,0,1,0,7,0,1],
-/* A V */ [35,0,0,1,108,0,0,0,49,0,0,1,0,0,19,0,0,0,0,0,3,1,0,0,6,0],
-/* A W */ [30,10,0,4,3,6,2,2,2,0,10,13,4,15,3,0,0,6,3,5,0,0,0,0,2,0],
-/* A X */ [3,0,0,0,4,0,0,0,22,0,0,1,0,0,7,2,0,0,1,1,0,0,3,0,3,0],
-/* A Y */ [11,8,1,5,16,5,1,2,2,0,0,10,7,4,13,1,0,3,5,7,3,0,5,0,0,0],
-/* A Z */ [10,0,0,1,22,0,0,0,10,0,0,0,0,0,7,0,0,0,0,2,2,0,0,0,4,11]],
-/* B A */ [[0,17,74,11,1,2,19,4,8,0,10,68,7,73,1,7,0,110,54,55,9,1,3,1,12,1],
-/* B B */ [7,0,0,0,16,0,0,0,10,0,0,24,0,0,9,0,0,2,3,0,2,0,0,0,14,0],
-/* B C */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* B D */ [2,0,0,0,2,0,0,0,2,0,0,0,0,0,3,0,0,1,0,0,3,0,0,0,0,0],
-/* B E */ [51,1,14,34,18,11,16,7,9,0,1,85,5,48,2,2,2,199,36,41,0,4,5,1,6,2],
-/* B F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0],
-/* B G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B H */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0],
-/* B I */ [34,8,22,21,8,3,9,1,0,3,1,50,7,45,16,4,2,29,22,59,4,4,0,0,0,3],
-/* B J */ [0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* B K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B L */ [57,0,0,0,519,0,0,0,35,0,0,0,0,0,47,0,0,0,0,0,32,1,0,0,3,0],
-/* B M */ [0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0],
-/* B N */ [1,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* B O */ [62,7,4,21,3,2,9,3,8,1,1,46,8,63,58,2,0,55,15,20,46,6,17,10,19,0],
-/* B P */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0],
-/* B Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B R */ [110,0,0,0,77,0,0,0,100,0,0,0,0,0,78,0,0,0,0,0,28,0,0,0,10,0],
-/* B S */ [0,0,6,0,16,0,0,0,7,0,0,0,0,0,12,0,0,0,0,27,2,0,0,0,0,0],
-/* B T */ [1,0,0,0,3,1,0,0,0,0,0,4,0,0,1,0,0,3,0,0,0,0,0,0,0,0],
-/* B U */ [0,3,21,16,3,5,14,0,12,1,2,52,7,20,2,0,1,104,44,54,0,0,0,3,1,5],
-/* B V */ [0,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B W */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* B Y */ [1,0,0,0,3,0,1,2,0,0,0,4,0,0,0,3,0,6,8,3,0,0,2,0,0,2],
-/* B Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* C A */ [[1,47,17,33,1,3,4,5,7,1,3,120,40,120,1,59,1,171,60,150,19,20,1,0,5,0],
-/* C B */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0],
-/* C C */ [23,0,0,0,22,0,0,5,13,0,0,13,0,0,26,0,0,7,0,0,27,0,0,0,0,0],
-/* C D */ [1,0,1,0,1,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0],
-/* C E */ [23,6,4,17,6,6,1,2,13,0,0,50,12,109,7,43,0,76,63,22,1,0,4,0,2,1],
-/* C F */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* C G */ [0,0,0,0,1,0,0,0,2,0,0,0,0,0,2,0,0,4,1,0,1,0,0,0,0,0],
-/* C H */ [165,10,2,3,176,4,3,1,141,0,0,26,20,16,102,1,0,63,8,10,44,0,13,0,20,0],
-/* C I */ [76,15,8,33,24,16,3,0,0,0,0,38,5,45,50,28,0,29,38,71,6,8,0,0,0,0],
-/* C J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* C K */ [17,16,2,3,90,4,1,7,20,1,1,45,8,8,12,9,0,3,32,6,6,0,13,0,22,0],
-/* C L */ [95,0,0,0,84,0,0,0,50,0,0,0,0,0,54,0,0,0,0,0,34,0,0,0,3,0],
-/* C M */ [1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* C N */ [2,0,0,0,1,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0],
-/* C O */ [33,16,40,22,14,10,11,12,9,1,1,101,218,421,24,56,2,129,37,40,86,22,25,4,4,2],
-/* C P */ [1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* C Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0],
-/* C R */ [101,0,0,0,112,0,0,0,75,0,0,0,0,0,88,0,0,0,0,1,41,0,0,0,25,0],
-/* C S */ [0,0,0,0,0,0,0,0,3,0,0,0,0,1,2,0,0,0,1,2,0,0,0,0,0,0],
-/* C T */ [44,0,0,0,12,2,0,0,113,0,0,0,2,0,94,0,0,46,0,0,42,0,1,0,3,0],
-/* C U */ [3,12,2,6,6,6,0,0,8,0,0,102,42,10,9,15,0,72,51,41,1,0,0,0,0,0],
-/* C V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* C W */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* C X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* C Y */ [5,1,20,0,0,0,1,0,0,0,0,3,0,2,2,4,0,3,2,9,0,0,0,0,0,0],
-/* C Z */ [2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* D A */ [[0,7,16,7,1,2,13,6,18,0,3,54,23,59,0,10,0,31,6,40,8,13,3,0,32,3],
-/* D B */ [9,0,0,0,7,0,0,0,3,0,0,2,0,0,8,0,0,1,0,0,8,0,0,0,2,0],
-/* D C */ [5,0,0,0,0,0,0,2,0,0,0,2,0,0,3,0,0,0,0,0,2,0,0,0,0,0],
-/* D D */ [8,0,0,0,30,0,0,3,19,0,0,38,0,0,4,0,0,4,0,0,1,0,0,0,16,0],
-/* D E */ [34,37,82,14,17,41,11,4,5,2,0,88,62,170,14,40,4,183,99,39,6,20,16,6,1,2],
-/* D F */ [6,0,0,0,0,0,0,0,6,0,0,2,0,0,5,0,0,2,0,0,4,0,0,0,0,0],
-/* D G */ [4,0,0,0,73,0,0,0,2,0,1,1,1,0,0,0,0,1,0,0,2,0,1,0,3,0],
-/* D H */ [8,0,0,0,9,0,0,0,4,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0],
-/* D I */ [100,10,104,12,33,26,31,1,1,0,1,22,22,65,57,15,0,20,138,53,20,31,1,6,0,1],
-/* D J */ [4,0,0,0,2,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,7,0,0,0,0,0],
-/* D K */ [0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* D L */ [9,0,0,0,79,0,0,0,12,0,0,0,0,0,7,0,0,0,0,0,1,0,0,0,3,0],
-/* D M */ [13,0,0,0,3,0,0,0,21,0,0,0,0,0,11,0,0,0,0,0,1,0,0,0,0,0],
-/* D N */ [7,0,0,0,9,0,0,0,3,0,0,0,0,0,1,0,0,0,0,6,0,0,0,0,0,0],
-/* D O */ [1,5,21,10,6,3,20,1,3,0,0,30,38,54,17,7,0,39,11,10,30,5,54,5,1,3],
-/* D P */ [6,0,0,0,1,0,0,1,3,0,0,1,0,0,7,0,0,1,0,0,0,0,0,0,0,0],
-/* D Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0],
-/* D R */ [74,0,0,0,47,0,0,0,53,0,0,0,0,0,80,0,0,0,0,0,22,0,0,0,8,0],
-/* D S */ [1,0,3,0,10,0,0,9,5,0,1,3,10,0,16,8,0,0,0,31,1,0,2,0,0,0],
-/* D T */ [3,0,0,0,1,0,0,6,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* D U */ [10,7,52,2,5,3,4,0,2,0,1,33,14,15,5,11,1,19,15,8,1,0,0,0,0,1],
-/* D V */ [3,0,0,0,13,0,0,0,7,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* D W */ [19,0,0,0,10,0,0,0,19,0,0,0,0,0,8,0,0,2,0,0,0,0,0,0,2,0],
-/* D X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* D Y */ [4,2,1,2,3,1,2,0,1,0,1,4,4,12,0,0,0,0,8,1,0,0,1,0,0,0],
-/* D Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0]],
-/* E A */ [[0,39,34,110,0,12,13,3,0,0,50,68,38,71,0,13,1,117,80,112,28,19,7,0,0,1],
-/* E B */ [32,5,0,0,31,0,0,0,8,0,0,6,0,0,28,0,0,32,2,3,29,0,0,0,4,0],
-/* E C */ [33,0,9,2,51,0,0,39,49,0,47,26,0,0,59,0,0,35,2,206,42,0,0,0,2,0],
-/* E D */ [29,7,1,16,45,5,22,3,88,0,0,8,9,4,24,2,0,27,8,4,27,0,7,0,13,0],
-/* E E */ [2,4,13,63,1,6,1,4,10,0,19,23,13,66,1,42,0,43,9,34,1,4,6,0,0,8],
-/* E F */ [14,0,1,2,36,33,0,0,22,0,0,15,0,0,24,0,0,14,1,13,35,0,0,0,5,0],
-/* E G */ [48,1,0,0,36,1,15,2,38,0,0,7,4,4,26,0,0,38,0,0,19,0,0,0,4,0],
-/* E H */ [14,0,0,0,24,0,0,0,6,0,0,0,1,0,18,0,0,4,0,0,4,0,0,0,3,0],
-/* E I */ [8,0,5,13,2,1,42,0,1,1,2,13,7,59,1,1,0,10,25,22,0,7,0,0,0,2],
-/* E J */ [4,0,0,0,4,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,3,0,0,0,0,0],
-/* E K */ [2,1,0,1,6,0,0,0,4,0,0,0,0,1,1,0,0,0,2,3,0,0,0,0,1,0],
-/* E L */ [76,7,6,57,131,19,7,3,125,0,4,238,22,1,48,15,0,4,27,26,17,19,2,0,7,0],
-/* E M */ [87,53,1,0,84,0,0,0,102,0,0,3,8,8,56,64,0,0,4,0,19,0,1,0,8,0],
-/* E N */ [78,17,68,159,128,8,35,14,96,2,2,4,5,54,57,3,2,9,127,624,33,10,8,0,11,16],
-/* E O */ [0,0,8,10,0,6,7,1,2,0,0,23,10,38,0,16,0,14,6,4,41,3,2,2,0,1],
-/* E P */ [26,1,1,0,27,0,0,32,45,0,0,21,1,0,35,9,0,35,10,65,13,0,2,0,3,0],
-/* E Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0],
-/* E R */ [217,57,66,22,190,41,70,13,200,3,14,40,134,117,113,42,2,123,167,135,23,58,22,1,123,1],
-/* E S */ [17,7,74,6,58,1,3,25,82,0,3,6,17,5,34,52,7,0,222,278,18,2,1,0,6,0],
-/* E T */ [78,3,19,0,129,4,0,93,105,0,1,3,2,2,50,1,0,73,5,113,17,0,4,0,32,4],
-/* E U */ [0,4,7,6,1,0,4,0,0,0,2,3,17,4,0,15,0,46,20,18,0,2,1,0,0,0],
-/* E V */ [29,0,0,0,121,0,0,0,56,0,0,0,0,0,26,0,0,2,1,0,2,2,0,0,3,1],
-/* E W */ [33,4,3,4,16,2,0,5,24,0,0,3,3,3,23,2,0,3,15,4,0,0,1,0,2,0],
-/* E X */ [29,0,43,0,20,0,0,14,21,0,0,0,0,0,15,78,1,0,0,72,12,0,0,1,2,0],
-/* E Y */ [7,3,1,4,25,2,0,2,0,0,1,4,6,4,4,1,0,2,3,0,0,1,4,0,0,0],
-/* E Z */ [1,0,0,0,9,0,0,0,1,0,0,0,0,0,4,0,0,1,0,0,1,1,0,0,2,3]],
-/* F A */ [[1,10,39,5,2,1,1,3,18,0,2,35,10,27,0,0,0,36,13,18,10,0,2,3,4,1],
-/* F B */ [2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F C */ [1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F D */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* F E */ [18,5,24,6,12,0,2,0,6,0,1,25,6,18,2,0,0,114,17,15,4,2,2,0,1,0],
-/* F F */ [10,2,0,0,51,0,0,2,45,0,0,21,4,0,13,0,0,9,7,0,7,0,0,0,8,0],
-/* F G */ [1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F H */ [2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F I */ [9,9,58,18,42,7,11,0,0,0,0,29,2,53,0,0,0,40,41,18,0,2,0,10,0,3],
-/* F J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* F K */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F L */ [64,0,0,0,50,0,0,0,21,0,0,0,0,0,60,0,0,0,0,0,42,0,0,0,15,0],
-/* F M */ [6,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F N */ [0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F O */ [5,1,8,2,1,0,7,0,6,0,0,34,1,8,32,2,0,165,5,0,25,1,2,7,1,0],
-/* F P */ [0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F R */ [64,0,0,0,66,0,0,0,35,0,0,0,0,0,35,0,0,0,0,0,11,0,0,0,3,0],
-/* F S */ [1,0,0,0,2,0,0,2,0,0,1,0,0,0,1,1,0,0,0,2,0,0,0,0,0,0],
-/* F T */ [1,1,1,0,19,0,0,3,1,0,0,0,1,0,3,0,0,1,9,0,0,0,4,0,8,0],
-/* F U */ [0,0,4,2,1,0,9,0,0,2,0,119,7,24,0,0,0,28,31,6,0,0,0,0,0,2],
-/* F V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F W */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F Y */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* F Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* G A */ [[0,20,5,11,3,2,11,3,13,0,0,68,24,60,1,5,0,63,23,68,15,8,5,0,2,5],
-/* G B */ [4,0,0,0,1,0,0,0,3,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0],
-/* G C */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* G D */ [2,0,0,0,1,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* G E */ [23,3,2,4,12,1,1,3,4,0,0,32,8,141,39,4,0,96,29,33,1,1,4,0,5,0],
-/* G F */ [0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,1,0,0,3,0,0,0,0,0],
-/* G G */ [8,0,0,0,20,0,0,1,60,0,0,24,0,0,3,1,0,6,4,0,0,0,0,0,12,0],
-/* G H */ [18,4,1,1,12,2,1,1,2,0,1,4,0,3,12,1,0,1,3,153,2,0,3,0,1,0],
-/* G I */ [23,21,16,6,7,2,9,0,0,0,0,24,7,103,17,1,0,10,26,19,3,10,0,0,0,1],
-/* G J */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* G K */ [0,0,0,0,0,0,0,0,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* G L */ [49,0,0,0,73,0,0,0,25,0,0,0,0,0,38,0,0,0,0,0,13,0,0,0,17,0],
-/* G M */ [23,0,0,0,12,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,0,0,0,1,0],
-/* G N */ [26,1,0,0,28,0,0,0,20,0,0,0,0,0,26,2,0,0,0,1,7,0,0,0,0,0],
-/* G O */ [6,4,3,16,6,1,10,1,5,0,0,22,1,49,20,3,0,34,12,23,16,7,5,0,1,0],
-/* G P */ [0,0,0,0,1,0,0,0,3,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* G Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* G R */ [216,0,0,0,97,0,0,0,43,0,0,0,0,0,50,0,0,0,0,0,14,0,0,0,3,0],
-/* G S */ [2,2,0,0,0,0,0,2,2,0,1,1,0,0,2,1,0,0,0,18,0,0,1,0,0,0],
-/* G T */ [2,0,0,0,0,0,0,8,3,0,0,0,0,0,17,0,0,1,0,0,0,0,0,0,0,0],
-/* G U */ [28,1,1,0,49,1,1,0,41,0,0,26,15,24,2,0,0,14,22,6,0,0,0,0,3,1],
-/* G V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* G W */ [5,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,1,0],
-/* G X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* G Y */ [1,0,0,0,0,0,0,0,0,0,0,0,7,3,0,6,0,5,0,0,0,0,0,0,0,0],
-/* G Z */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* H A */ [[2,26,15,20,6,8,22,3,31,0,11,90,66,171,3,25,0,142,30,49,20,11,20,0,13,8],
-/* H B */ [4,0,0,0,3,0,0,0,1,0,0,2,0,0,12,0,0,2,0,0,4,0,0,0,1,0],
-/* H C */ [1,0,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0],
-/* H D */ [2,0,0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,4,0,0,0,0,0,0,0,0],
-/* H E */ [123,5,22,33,37,5,3,0,27,0,0,87,65,86,17,7,1,311,57,42,11,11,14,8,11,2],
-/* H F */ [2,0,0,0,0,0,0,0,3,0,0,0,0,0,2,0,0,0,0,0,10,0,0,0,0,0],
-/* H G */ [1,0,0,0,1,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* H H */ [1,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* H I */ [22,22,56,15,23,6,19,0,0,1,1,73,20,79,17,41,0,36,53,39,3,11,0,0,0,6],
-/* H J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* H K */ [0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* H L */ [5,0,0,0,11,0,0,0,8,0,0,0,0,0,22,0,0,1,0,0,1,0,0,0,1,0],
-/* H M */ [21,0,0,0,15,0,0,0,6,0,0,0,1,0,7,0,0,0,2,0,1,0,0,0,0,0],
-/* H N */ [3,0,0,0,8,0,0,0,9,0,0,0,0,1,3,0,0,0,4,0,2,0,0,0,0,0],
-/* H O */ [13,18,13,25,17,5,13,0,7,1,4,101,62,62,44,29,0,130,45,33,81,8,28,0,6,2],
-/* H P */ [3,0,0,0,0,0,0,0,2,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0],
-/* H Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* H R */ [20,0,0,0,23,0,0,0,40,0,0,1,0,0,72,0,0,0,0,0,13,0,0,0,3,0],
-/* H S */ [3,0,1,0,0,0,0,2,1,0,0,0,0,0,3,0,0,0,0,5,0,0,0,0,0,0],
-/* H T */ [3,0,2,1,21,9,1,7,5,0,0,1,4,3,4,1,0,2,7,1,1,0,3,0,6,0],
-/* H U */ [3,13,7,6,3,5,12,1,0,0,0,7,37,26,0,3,0,37,24,15,0,0,0,2,2,1],
-/* H V */ [0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* H W */ [17,0,0,0,5,0,0,2,5,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0],
-/* H X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* H Y */ [5,1,1,39,1,0,3,0,1,0,0,13,9,0,0,25,0,9,29,9,0,0,0,1,0,0],
-/* H Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* I A */ [[0,33,20,8,1,0,17,5,1,0,2,169,20,230,0,3,0,30,13,91,0,1,1,2,0,1],
-/* I B */ [11,19,0,0,38,0,0,0,22,0,0,131,1,2,10,0,0,20,1,0,23,0,0,0,2,0],
-/* I C */ [161,0,3,0,113,0,0,62,113,0,142,15,0,4,46,0,0,12,5,53,42,0,0,0,7,0],
-/* I D */ [51,2,0,31,232,0,30,0,46,1,0,5,1,8,10,1,0,1,10,5,11,0,7,0,9,0],
-/* I E */ [0,1,17,6,1,16,11,1,0,0,1,52,4,70,0,1,0,66,18,50,7,17,6,0,0,2],
-/* I F */ [7,0,0,0,31,45,0,0,27,0,0,9,0,1,10,0,0,2,0,24,10,0,0,0,71,0],
-/* I G */ [48,0,0,0,41,0,30,147,30,0,0,4,15,57,20,1,0,23,3,1,15,0,1,0,2,2],
-/* I H */ [1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* I I */ [1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* I J */ [3,0,0,0,2,0,0,0,1,0,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0],
-/* I K */ [6,0,0,0,17,0,0,0,3,0,1,0,0,0,3,0,0,0,0,1,2,0,0,0,1,0],
-/* I L */ [60,10,6,36,106,6,5,7,90,0,13,253,14,0,24,1,0,1,10,31,6,6,5,0,10,0],
-/* I M */ [76,26,0,0,94,1,0,1,53,0,0,1,38,1,30,133,0,1,8,0,17,0,0,0,2,0],
-/* I N */ [212,12,143,168,396,83,435,26,94,8,43,9,6,44,70,3,10,2,139,205,35,46,4,4,15,1],
-/* I O */ [2,2,20,10,1,0,9,0,0,0,0,28,12,604,0,8,0,25,13,24,139,3,2,3,0,1],
-/* I P */ [20,5,0,0,26,2,0,16,16,1,0,33,6,0,13,39,0,5,19,28,5,0,1,0,1,0],
-/* I Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0],
-/* I R */ [41,2,39,24,106,7,9,0,19,0,11,20,24,1,24,8,0,39,11,31,3,5,8,0,10,0],
-/* I S */ [35,5,71,4,110,4,2,189,56,1,13,12,93,5,55,33,3,6,85,271,4,1,1,0,8,0],
-/* I T */ [136,1,34,1,184,5,0,77,158,0,1,4,6,5,70,1,0,31,2,105,72,0,1,0,142,19],
-/* I U */ [0,0,1,0,0,0,0,0,0,0,0,1,121,1,0,0,0,1,19,0,0,0,0,0,0,0],
-/* I V */ [57,0,0,0,292,0,0,0,37,0,0,0,0,0,12,0,0,1,0,0,3,0,0,0,2,0],
-/* I W */ [3,0,0,0,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* I X */ [1,0,0,0,2,1,1,0,3,0,0,0,0,0,4,0,0,0,0,9,1,0,0,0,1,0],
-/* I Y */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* I Z */ [9,0,0,0,13,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,1,1,0,0,0,16]],
-/* J A */ [[0,2,32,1,1,0,3,3,2,0,3,1,8,17,0,2,0,5,2,0,2,3,2,1,1,2],
-/* J B */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J C */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J D */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J E */ [4,0,24,1,1,3,0,1,0,2,0,2,0,6,2,0,0,11,9,5,0,0,6,0,0,0],
-/* J F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J H */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J I */ [0,1,0,0,0,1,4,0,0,0,0,2,4,3,0,0,0,0,0,4,0,1,0,0,0,0],
-/* J J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J L */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J M */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J N */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J O */ [4,2,6,0,3,0,3,12,10,0,1,6,0,5,0,0,0,10,10,1,13,4,2,0,7,0],
-/* J P */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J R */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J S */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J T */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J U */ [3,3,0,19,0,0,8,0,2,2,2,8,5,24,0,1,0,15,9,5,0,1,0,2,0,0],
-/* J V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J W */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J Y */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* J Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* K A */ [[0,3,0,6,1,2,8,2,1,1,1,9,4,13,2,3,0,18,4,17,2,1,2,1,5,2],
-/* K B */ [3,0,0,0,3,0,0,0,2,0,0,0,0,0,11,0,0,1,0,0,1,0,0,0,0,0],
-/* K C */ [2,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],
-/* K D */ [3,0,0,0,1,0,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0],
-/* K E */ [4,3,0,7,28,3,3,2,1,0,0,20,5,55,3,3,0,59,18,56,2,1,4,0,27,0],
-/* K F */ [1,0,0,0,1,0,0,0,1,0,0,0,0,0,3,0,0,0,0,0,3,0,0,0,0,0],
-/* K G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0],
-/* K H */ [9,0,0,0,2,0,0,0,0,0,0,0,1,0,8,0,0,1,0,1,0,0,0,0,0,0],
-/* K I */ [5,2,3,9,15,1,1,0,0,0,1,10,10,87,2,4,0,11,15,13,0,2,2,0,0,0],
-/* K J */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* K K */ [1,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0],
-/* K L */ [15,0,0,0,46,0,0,0,13,0,0,0,0,0,3,0,0,0,0,0,1,0,0,0,2,0],
-/* K M */ [13,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* K N */ [5,0,0,0,11,0,0,0,10,0,0,0,0,0,24,0,0,0,0,0,8,0,0,0,0,0],
-/* K O */ [1,1,2,3,2,4,0,2,1,0,1,3,1,7,1,2,0,6,2,1,7,4,5,2,0,0],
-/* K P */ [2,0,0,0,0,0,0,0,4,0,0,4,0,0,5,0,0,0,0,0,0,0,0,0,0,0],
-/* K Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* K R */ [10,0,0,0,3,0,0,0,3,0,0,0,0,0,6,0,0,0,0,0,5,0,0,0,2,0],
-/* K S */ [2,2,1,0,1,0,1,9,5,0,1,0,4,0,8,3,0,0,0,11,4,0,1,0,1,0],
-/* K T */ [3,0,0,0,0,0,0,2,3,0,0,0,0,0,5,0,0,2,0,0,0,0,0,0,0,0],
-/* K U */ [0,0,0,2,0,0,0,1,0,0,0,5,1,1,0,8,0,2,1,1,0,0,1,0,1,0],
-/* K V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* K W */ [9,0,0,0,4,0,0,1,2,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0],
-/* K X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* K Y */ [2,0,0,0,1,0,0,1,0,1,0,4,0,0,2,0,0,2,1,0,1,0,3,0,0,0],
-/* K Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* L A */ [[1,46,84,43,3,2,46,9,52,0,10,3,64,242,4,23,1,157,92,210,45,21,23,9,42,11],
-/* L B */ [12,0,0,0,17,0,0,0,3,0,0,2,0,0,13,0,0,4,0,0,4,0,0,0,2,0],
-/* L C */ [9,0,0,0,6,0,0,12,4,0,0,1,1,0,19,0,0,2,0,1,7,0,0,0,2,0],
-/* L D */ [2,3,2,0,41,4,0,1,16,0,0,1,2,3,13,1,0,8,9,2,3,0,5,0,3,0],
-/* L E */ [94,25,75,44,36,13,55,9,26,1,1,9,55,121,22,22,0,77,84,115,12,29,14,30,75,1],
-/* L F */ [9,1,0,0,4,1,1,1,12,0,0,1,0,0,7,0,0,8,1,2,8,0,1,0,0,0],
-/* L G */ [16,0,0,0,12,0,0,0,10,0,0,0,0,0,6,0,0,6,0,0,0,0,0,0,0,0],
-/* L H */ [7,0,0,0,6,0,0,0,2,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0],
-/* L I */ [82,33,140,26,43,37,73,0,0,1,6,11,46,238,50,40,13,5,90,127,12,36,0,3,0,7],
-/* L J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* L K */ [7,0,0,0,4,0,0,3,9,0,0,2,0,1,2,0,0,0,3,0,0,0,3,0,8,0],
-/* L L */ [128,12,2,4,169,7,2,4,152,1,0,0,7,0,100,2,0,1,10,2,41,0,7,0,53,0],
-/* L M */ [27,0,0,2,11,0,0,2,9,0,0,0,1,0,13,0,0,0,4,0,3,0,0,0,3,0],
-/* L N */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,0,0,0,0,0],
-/* L O */ [23,23,65,15,7,4,132,3,32,0,2,7,29,69,50,36,11,74,33,53,66,16,80,1,12,1],
-/* L P */ [11,0,0,0,3,1,0,21,5,0,0,0,1,0,6,0,0,3,1,4,0,0,0,0,1,0],
-/* L Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* L R */ [2,0,0,0,1,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,2,0,0,0,6,0],
-/* L S */ [7,1,0,0,16,0,0,8,23,0,1,0,1,0,20,3,0,0,1,23,0,0,1,0,2,0],
-/* L T */ [22,1,0,0,23,0,0,14,34,0,0,0,2,0,23,0,0,9,3,0,8,1,1,0,18,5],
-/* L U */ [5,17,26,18,31,5,13,0,5,2,4,8,68,31,15,5,0,21,68,56,0,4,0,13,0,1],
-/* L V */ [19,0,0,1,46,0,0,0,9,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* L W */ [8,0,0,0,2,0,0,1,2,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,1,0],
-/* L X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* L Y */ [2,4,12,2,2,2,3,7,2,0,1,3,13,11,2,11,0,2,31,15,1,0,4,0,0,0],
-/* L Z */ [2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* M A */ [[0,10,59,34,3,0,57,7,31,3,25,104,6,326,2,4,0,144,49,192,10,2,3,11,14,7],
-/* M B */ [31,1,0,1,44,0,0,0,32,0,0,31,0,1,27,1,0,32,1,0,21,0,0,0,0,0],
-/* M C */ [3,1,17,6,2,2,9,3,5,0,9,3,3,4,2,1,0,0,0,0,0,0,0,0,0,0],
-/* M D */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0],
-/* M E */ [30,6,8,45,3,2,14,1,4,0,1,51,19,283,10,4,0,125,39,128,0,2,9,3,4,1],
-/* M F */ [0,0,0,0,3,0,0,0,3,0,0,2,0,0,4,0,0,0,0,0,4,0,0,0,0,0],
-/* M G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* M H */ [0,0,0,0,3,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0],
-/* M I */ [19,0,93,54,8,2,19,0,0,1,2,76,9,194,4,0,1,21,96,109,10,0,0,5,0,1],
-/* M J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* M K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* M L */ [1,0,0,0,3,0,0,0,6,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* M M */ [40,0,0,0,46,0,0,0,33,0,0,0,0,0,32,0,0,0,0,0,17,0,0,0,12,0],
-/* M N */ [12,0,0,0,4,0,0,0,10,0,0,0,0,0,3,0,0,0,0,0,1,0,0,0,1,0],
-/* M O */ [4,10,13,28,4,1,14,3,11,0,6,47,10,168,16,3,0,107,40,45,56,8,1,1,1,2],
-/* M P */ [52,3,0,0,71,1,1,26,18,0,4,71,0,0,50,0,0,41,9,43,19,0,0,0,7,0],
-/* M Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0],
-/* M R */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0],
-/* M S */ [0,1,2,1,5,1,0,2,3,0,1,0,2,0,8,2,0,0,1,10,1,0,0,0,2,0],
-/* M T */ [0,0,0,0,1,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0],
-/* M U */ [0,0,7,11,6,3,6,0,2,0,2,55,11,29,2,1,0,18,53,30,0,0,0,0,0,3],
-/* M V */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* M W */ [2,0,0,0,2,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* M X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* M Y */ [0,0,11,0,5,0,1,0,0,0,0,1,0,2,7,0,0,7,7,4,0,0,0,0,0,0],
-/* M Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* N A */ [[2,24,33,23,6,3,30,6,20,0,9,115,29,59,2,31,0,94,28,159,19,10,5,0,1,5],
-/* N B */ [5,0,1,0,20,0,0,0,1,0,0,4,0,0,7,0,0,4,1,0,10,0,0,0,0,0],
-/* N C */ [25,0,0,0,190,0,0,87,51,0,1,18,0,0,62,0,0,16,0,36,21,0,0,0,8,0],
-/* N D */ [75,11,4,1,162,6,3,7,102,1,1,22,10,2,57,9,2,46,30,4,37,0,11,0,20,0],
-/* N E */ [34,12,36,12,29,17,16,4,14,0,0,45,16,20,25,8,6,88,80,84,32,12,37,18,45,3],
-/* N F */ [15,0,0,0,30,0,0,0,38,0,0,23,0,0,26,0,0,10,0,0,19,0,0,0,0,0],
-/* N G */ [22,8,0,3,114,6,0,15,18,0,3,51,5,0,20,2,0,24,24,28,38,0,2,0,9,0],
-/* N H */ [18,0,0,0,16,0,0,0,6,0,0,0,0,0,15,0,0,0,0,0,2,0,0,0,3,0],
-/* N I */ [90,9,148,14,33,27,35,4,1,0,5,12,25,44,26,21,7,4,87,94,29,11,0,4,0,4],
-/* N J */ [2,0,0,0,3,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,13,0,0,0,0,0],
-/* N K */ [6,0,1,0,22,4,1,1,10,0,0,12,2,0,1,1,0,2,2,3,0,0,0,0,9,0],
-/* N L */ [9,0,0,0,8,0,0,0,5,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,1,0],
-/* N M */ [8,0,0,0,5,0,0,0,2,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0],
-/* N N */ [39,0,0,0,74,0,0,0,52,0,1,0,0,0,23,0,0,0,1,0,14,0,1,0,25,0],
-/* N O */ [4,18,21,10,4,4,15,0,11,0,0,30,60,34,11,11,0,80,32,47,52,18,24,7,2,2],
-/* N P */ [0,0,0,0,1,0,0,0,1,0,0,4,0,0,6,0,0,0,0,0,2,0,0,0,0,0],
-/* N Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0],
-/* N R */ [3,0,1,0,1,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,3,0,0,0,6,0],
-/* N S */ [26,4,23,2,73,17,3,12,96,0,5,8,13,0,60,25,0,1,3,79,39,4,4,0,5,0],
-/* N T */ [143,1,1,1,175,2,2,64,209,0,0,13,3,1,65,1,0,114,3,0,32,0,2,0,21,1],
-/* N U */ [12,6,16,6,11,3,6,0,5,0,1,15,35,9,6,3,0,9,25,31,1,0,0,0,0,1],
-/* N V */ [15,0,0,0,43,0,0,0,20,0,0,0,0,0,17,0,0,0,0,0,4,0,0,0,1,0],
-/* N W */ [12,0,0,0,3,0,0,2,4,0,0,0,0,0,6,0,0,1,0,0,0,0,0,0,0,0],
-/* N X */ [0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0],
-/* N Y */ [5,3,1,1,0,0,0,1,0,0,0,7,14,0,4,1,1,1,3,1,1,1,2,1,0,0],
-/* N Z */ [10,0,0,0,5,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,5,0]],
-/* O A */ [[1,0,20,30,0,2,5,2,0,0,9,9,8,18,0,4,1,51,13,44,1,1,0,2,0,0],
-/* O B */ [17,24,2,2,28,2,0,1,32,4,0,19,0,1,16,0,0,5,26,3,8,3,1,0,2,0],
-/* O C */ [50,0,28,0,38,0,0,47,26,0,129,14,0,0,33,0,0,25,0,34,20,0,0,0,8,0],
-/* O D */ [17,3,3,15,59,3,13,4,47,0,1,13,2,1,22,3,0,8,11,0,21,0,8,0,35,0],
-/* O E */ [0,6,1,7,0,3,0,1,6,0,1,10,3,13,1,0,1,10,15,6,2,7,0,3,1,0],
-/* O F */ [7,0,0,0,4,63,0,0,10,0,0,4,1,0,6,0,0,1,0,15,4,0,0,0,1,0],
-/* O G */ [34,2,0,1,44,1,22,3,15,1,0,11,3,11,7,0,0,80,1,2,18,0,1,0,83,0],
-/* O H */ [10,0,0,0,8,0,0,0,6,0,0,1,5,9,5,0,0,2,0,0,0,0,0,0,1,0],
-/* O I */ [3,1,12,53,1,1,2,0,0,0,1,27,0,51,0,0,0,11,39,8,0,0,0,1,0,0],
-/* O J */ [1,0,0,0,5,0,0,0,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* O K */ [5,2,1,0,48,0,0,1,7,0,1,4,0,0,3,1,0,0,5,0,3,0,1,0,6,0],
-/* O L */ [71,4,6,83,111,8,5,3,121,0,14,124,16,1,132,6,0,1,18,24,43,16,2,0,46,1],
-/* O M */ [89,50,1,0,174,5,0,1,76,0,0,2,64,7,56,125,1,1,4,0,4,0,2,0,22,0],
-/* O N */ [129,3,64,82,181,52,86,3,124,10,11,7,3,46,75,1,6,10,107,149,8,38,9,1,54,5],
-/* O O */ [0,2,4,92,0,22,4,1,0,0,68,42,42,44,0,19,0,21,21,68,0,3,0,0,0,2],
-/* O P */ [28,1,2,0,71,0,2,82,32,1,3,16,1,1,45,29,0,17,14,21,10,0,2,0,19,0],
-/* O Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0],
-/* O R */ [122,26,31,96,138,7,34,2,143,0,61,8,85,76,61,59,1,58,46,211,11,4,9,0,116,1],
-/* O S */ [31,4,24,0,107,0,3,18,102,0,2,7,9,1,18,42,2,0,63,127,5,1,2,0,8,0],
-/* O T */ [45,7,11,0,64,2,1,88,63,0,0,10,3,1,42,4,0,17,7,63,9,0,3,0,11,0],
-/* O U */ [3,11,17,13,3,3,62,1,6,0,0,32,1,137,0,11,1,86,445,103,0,7,0,1,0,2],
-/* O V */ [26,0,0,0,109,0,0,0,27,0,1,0,0,0,7,0,0,0,0,0,0,0,0,0,2,0],
-/* O W */ [18,14,2,13,48,6,0,8,8,0,1,28,7,83,1,8,0,5,13,2,2,0,1,0,4,1],
-/* O X */ [2,1,3,0,5,1,1,3,26,0,0,0,0,1,1,0,0,0,0,1,0,1,1,0,14,0],
-/* O Y */ [15,1,4,6,3,1,0,0,1,0,0,3,0,1,4,1,0,1,2,1,0,0,0,0,0,0],
-/* O Z */ [2,0,0,0,9,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,3,1]],
-/* P A */ [[0,8,38,11,1,0,18,0,17,0,2,50,5,73,1,23,1,176,50,101,18,5,7,1,10,2],
-/* P B */ [3,0,0,0,3,0,0,0,0,0,0,1,0,0,6,0,0,2,1,0,3,0,0,0,0,0],
-/* P C */ [0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* P D */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,0,0,0,0,0,0,0],
-/* P E */ [51,1,62,34,19,4,8,0,3,1,2,47,2,108,4,10,0,292,22,50,3,1,8,2,2,4],
-/* P F */ [0,0,0,0,1,0,0,0,2,0,0,1,0,0,0,0,0,1,0,0,3,0,0,0,0,0],
-/* P G */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0],
-/* P H */ [56,0,0,2,88,0,0,0,76,0,0,3,0,1,97,0,0,13,1,3,5,0,0,0,79,0],
-/* P I */ [21,0,74,25,33,1,19,0,0,0,6,27,3,74,12,11,2,37,27,57,3,2,0,2,0,2],
-/* P J */ [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* P K */ [0,0,0,0,2,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* P L */ [150,0,0,0,121,0,0,0,59,0,0,0,0,0,33,0,0,0,0,0,29,0,0,0,11,0],
-/* P M */ [6,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0],
-/* P N */ [0,0,0,0,4,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0],
-/* P O */ [2,1,19,10,12,2,7,0,31,0,12,111,14,55,23,17,0,97,126,52,20,3,13,3,2,0],
-/* P P */ [16,0,0,0,48,0,0,1,20,0,0,32,1,0,25,0,0,32,3,0,1,0,0,0,16,0],
-/* P Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* P R */ [39,0,0,0,166,0,0,0,104,0,0,0,0,0,273,0,0,0,0,0,12,0,0,0,1,0],
-/* P S */ [4,1,3,0,17,0,0,5,22,0,1,1,2,0,13,0,0,0,0,14,6,0,1,0,35,0],
-/* P T */ [16,0,1,0,9,0,0,3,107,0,0,0,0,0,33,0,0,3,0,0,19,0,0,0,4,0],
-/* P U */ [1,8,4,8,3,6,4,0,1,0,1,41,8,22,0,9,0,39,18,28,0,0,0,0,0,1],
-/* P V */ [0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* P W */ [3,0,0,0,0,0,0,0,2,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0],
-/* P X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* P Y */ [1,2,0,0,0,0,3,0,1,0,1,3,0,0,1,0,0,20,0,3,0,0,1,0,0,0],
-/* P Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* Q A */ [[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0],
-/* Q B */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q C */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q D */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q E */ [0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q H */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q I */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q L */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q M */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q N */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q O */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q P */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q R */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q S */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q T */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q U */ [110,0,0,0,100,0,0,0,128,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,3,0],
-/* Q V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q W */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q Y */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Q Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* R A */ [[0,72,130,95,8,35,73,14,85,3,10,121,95,313,2,119,1,26,66,277,19,45,28,2,28,13],
-/* R B */ [32,0,0,0,26,0,0,0,35,0,0,4,0,0,44,0,0,3,1,0,9,0,0,0,5,0],
-/* R C */ [18,0,2,0,47,0,0,86,25,0,3,11,0,0,13,0,0,1,2,7,38,0,0,0,4,0],
-/* R D */ [22,5,1,0,26,1,0,4,42,0,0,4,0,2,17,1,0,5,9,4,3,0,4,0,7,0],
-/* R E */ [166,26,106,99,114,52,55,20,25,4,4,60,69,143,20,72,8,11,257,119,14,56,34,7,23,2],
-/* R F */ [11,0,0,0,15,1,0,0,9,0,0,7,0,0,8,0,0,4,0,0,12,0,0,0,0,0],
-/* R G */ [26,0,0,0,63,0,0,5,25,0,0,11,1,0,18,0,0,2,2,0,13,0,0,0,11,0],
-/* R H */ [11,0,0,0,19,0,0,0,5,0,0,0,0,0,18,0,0,0,0,0,2,0,0,0,3,0],
-/* R I */ [182,54,210,87,79,38,65,1,0,1,6,49,65,166,82,61,1,0,151,141,29,44,1,6,1,10],
-/* R J */ [0,0,0,0,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,2,0,0,0,0,0],
-/* R K */ [4,2,0,1,19,0,0,3,9,0,0,6,3,2,5,3,0,1,10,2,0,0,1,0,6,0],
-/* R L */ [24,2,0,4,28,0,0,0,36,0,0,0,0,0,14,1,0,0,2,1,2,0,1,0,8,0],
-/* R M */ [97,1,2,0,29,2,0,3,65,0,0,2,0,0,39,1,0,0,1,1,10,0,1,0,5,0],
-/* R N */ [53,5,0,0,50,4,0,3,29,0,1,0,6,0,16,1,0,0,9,5,7,0,2,0,4,0],
-/* R O */ [46,40,79,40,18,22,56,4,32,5,10,76,90,167,84,127,2,14,127,74,127,42,63,17,15,3],
-/* R P */ [10,0,0,0,21,0,0,33,10,0,0,5,1,0,25,0,0,12,8,8,5,0,0,0,1,0],
-/* R Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0],
-/* R R */ [53,0,0,0,92,0,0,5,85,0,0,0,0,0,47,0,0,0,0,0,14,0,0,0,60,0],
-/* R S */ [26,2,2,2,84,1,0,16,44,0,4,2,3,1,43,12,1,0,0,32,14,1,2,0,2,0],
-/* R T */ [39,2,2,0,61,5,3,101,99,0,0,11,7,3,32,0,0,17,12,1,27,0,2,0,24,7],
-/* R U */ [5,21,30,31,15,6,12,0,18,0,0,10,46,41,1,28,0,3,83,22,0,1,1,1,0,1],
-/* R V */ [31,0,0,0,37,0,0,0,28,0,0,0,0,0,5,0,0,0,0,0,1,0,0,0,2,0],
-/* R W */ [15,0,0,0,6,0,0,0,12,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0],
-/* R X */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* R Y */ [5,3,3,5,3,0,1,0,0,0,0,10,11,4,12,16,0,0,9,4,0,0,2,0,0,0],
-/* R Z */ [2,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0]],
-/* S A */ [[2,44,23,16,1,10,21,4,16,1,7,80,17,89,1,10,0,36,10,43,22,10,13,5,7,0],
-/* S B */ [9,0,0,0,4,0,0,0,2,0,0,0,0,0,6,0,0,2,0,0,18,0,0,0,3,0],
-/* S C */ [81,0,0,0,65,0,1,78,37,0,0,5,1,0,88,0,0,92,0,0,40,0,0,0,3,0],
-/* S D */ [11,0,0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,2,0,0,2,0,0,0,0,0],
-/* S E */ [38,14,47,18,33,7,8,3,11,0,1,63,39,101,5,28,14,83,28,41,12,19,15,15,19,1],
-/* S F */ [3,0,0,0,7,0,0,0,5,0,0,0,0,0,7,0,0,0,0,0,6,0,0,0,1,0],
-/* S G */ [0,0,0,0,2,0,0,0,2,0,0,0,0,0,2,0,0,5,1,0,2,0,0,0,0,0],
-/* S H */ [97,9,1,0,79,3,0,0,75,0,1,4,16,3,81,2,0,27,0,1,20,1,6,0,17,0],
-/* S I */ [55,56,44,80,28,15,38,0,0,0,2,50,40,78,148,7,1,7,99,89,9,76,0,8,0,3],
-/* S J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* S K */ [9,0,0,0,24,0,0,0,35,0,0,0,2,0,3,0,0,1,0,0,5,0,0,0,23,0],
-/* S L */ [42,0,0,0,35,0,0,0,29,0,0,1,0,0,29,0,0,0,0,0,13,0,0,0,2,0],
-/* S M */ [57,0,0,0,30,0,0,0,31,0,0,0,0,0,25,0,0,0,0,0,14,0,0,0,2,0],
-/* S N */ [21,0,0,0,12,0,0,0,12,0,0,0,0,0,19,0,0,0,0,4,6,0,0,0,2,0],
-/* S O */ [6,4,26,12,6,10,4,1,8,1,0,67,65,190,8,21,0,71,0,11,34,6,3,0,3,1],
-/* S P */ [63,1,0,0,116,0,0,41,82,0,0,24,0,0,69,0,0,34,1,0,16,0,0,0,3,0],
-/* S Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0],
-/* S R */ [4,0,0,0,1,0,0,0,1,0,0,0,0,0,2,0,0,0,1,0,3,0,0,0,0,0],
-/* S S */ [50,3,2,0,77,3,0,4,151,0,0,5,11,1,42,2,0,4,0,4,17,0,13,0,19,0],
-/* S T */ [258,6,4,1,291,9,1,11,240,1,0,25,12,2,205,6,0,255,3,0,58,2,7,0,36,0],
-/* S U */ [14,38,17,6,7,11,6,0,11,0,0,39,35,37,1,42,0,71,30,4,0,0,0,0,0,4],
-/* S V */ [0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0],
-/* S W */ [37,0,0,0,31,0,0,0,28,0,0,0,0,0,21,0,0,2,0,0,2,0,0,0,0,0],
-/* S X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* S Y */ [0,2,32,1,1,0,1,0,0,0,1,18,19,30,0,2,0,9,5,1,0,0,0,0,0,1],
-/* S Z */ [0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* T A */ [[0,74,44,8,3,9,45,8,68,0,15,130,36,181,1,23,0,128,22,185,13,11,9,13,4,0],
-/* T B */ [7,0,0,0,4,0,0,0,4,0,0,0,0,0,6,0,0,3,0,0,3,0,0,0,0,0],
-/* T C */ [5,0,0,0,0,0,0,112,0,0,0,2,0,0,5,0,0,1,0,0,1,0,0,0,1,0],
-/* T D */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,1,0,0,0,0,0,0,0,0],
-/* T E */ [52,9,29,37,66,9,17,6,16,0,2,65,49,185,18,20,0,588,61,23,9,9,9,16,1,0],
-/* T F */ [6,0,0,0,1,0,0,0,5,0,0,1,0,0,6,0,0,1,0,0,24,0,0,0,0,0],
-/* T G */ [4,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,1,0,0,1,0,0,0,0,0],
-/* T H */ [68,6,1,5,274,8,1,2,62,0,1,9,13,3,90,4,1,61,8,2,31,0,16,0,49,0],
-/* T I */ [99,35,342,16,35,45,34,0,0,0,3,67,75,183,419,28,9,18,75,88,9,128,0,0,0,2],
-/* T J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* T K */ [2,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0],
-/* T L */ [18,0,0,0,102,0,0,0,5,0,0,2,0,0,3,0,0,0,0,0,2,0,0,0,3,0],
-/* T M */ [25,0,0,0,8,0,0,0,3,0,0,0,0,0,11,0,0,0,0,0,3,0,0,0,0,0],
-/* T N */ [3,0,0,0,9,0,0,0,5,0,0,0,0,0,2,0,0,0,0,4,1,0,0,0,0,0],
-/* T O */ [5,6,34,11,8,7,26,0,14,0,9,38,65,238,26,56,0,319,19,16,36,3,36,7,3,2],
-/* T P */ [2,0,0,0,1,0,0,0,1,0,0,2,0,0,3,0,0,5,0,0,0,0,0,0,0,0],
-/* T Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* T R */ [315,0,0,0,98,0,0,0,246,0,0,0,0,0,201,0,0,0,0,0,68,0,1,0,64,0],
-/* T S */ [2,2,2,1,10,2,0,3,4,0,1,0,13,0,9,3,0,0,0,8,5,2,5,0,3,0],
-/* T T */ [44,0,0,0,154,1,1,2,53,0,1,45,0,0,33,0,0,10,8,0,4,1,0,0,25,0],
-/* T U */ [41,14,9,41,8,5,4,0,10,0,0,19,30,29,13,10,0,159,35,22,0,0,0,1,1,0],
-/* T V */ [3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* T W */ [14,0,0,0,12,0,0,1,23,0,0,0,0,0,15,0,0,0,0,0,2,0,0,1,0,0],
-/* T X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* T Y */ [2,1,2,0,0,0,1,0,1,0,0,14,2,0,0,34,0,14,3,0,0,0,2,1,0,0],
-/* T Z */ [1,0,0,0,5,0,1,0,2,0,0,1,1,0,1,1,0,1,1,0,0,0,0,0,0,0]],
-/* U A */ [[0,4,7,21,0,1,5,1,4,0,5,51,2,26,0,1,0,48,9,37,0,2,4,0,3,0],
-/* U B */ [8,18,0,1,20,0,0,2,18,2,0,23,5,0,2,1,0,10,15,8,7,2,0,0,1,0],
-/* U C */ [10,0,14,0,23,0,0,31,29,0,55,16,0,0,7,0,0,9,1,47,5,0,0,0,2,0],
-/* U D */ [17,1,0,24,67,0,18,0,39,0,0,4,0,0,8,0,0,1,10,0,2,0,2,0,7,1],
-/* U E */ [6,9,0,1,5,5,4,1,0,1,0,21,1,33,1,1,0,19,22,15,2,0,0,0,3,6],
-/* U F */ [1,0,0,0,0,58,0,0,0,0,0,1,1,0,1,0,0,0,0,3,1,0,0,0,0,0],
-/* U G */ [19,1,0,0,21,0,34,80,3,0,0,4,2,2,6,0,0,1,1,0,11,0,0,0,0,0],
-/* U H */ [3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0],
-/* U I */ [3,2,14,14,6,0,1,0,0,0,0,32,0,31,1,8,0,19,44,64,1,4,0,2,0,3],
-/* U J */ [1,0,0,0,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,3,0,0,0,0,0],
-/* U K */ [1,0,0,1,12,0,0,0,3,0,1,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0],
-/* U L */ [136,4,11,11,46,14,7,0,35,0,10,67,5,2,23,16,0,1,24,73,16,3,1,0,5,1],
-/* U M */ [22,52,3,1,51,5,0,1,32,0,0,2,28,11,8,48,1,0,8,1,6,2,0,0,0,0],
-/* U N */ [21,6,73,131,25,5,46,2,55,0,33,4,2,13,4,2,0,2,15,82,1,0,2,0,5,0],
-/* U O */ [0,0,0,1,0,0,0,0,3,0,0,2,0,3,0,2,0,16,3,5,29,0,0,0,2,0],
-/* U P */ [4,4,1,2,31,1,1,14,10,0,1,13,1,0,8,24,0,13,13,24,2,0,2,0,2,0],
-/* U Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0],
-/* U R */ [75,27,21,17,149,8,60,1,66,2,11,17,11,55,28,15,1,51,43,43,9,15,3,0,28,1],
-/* U S */ [31,5,29,2,105,0,1,53,64,0,17,3,0,1,8,12,1,0,34,115,6,0,0,0,4,0],
-/* U T */ [45,1,14,1,69,0,1,55,77,0,0,8,3,3,49,0,0,13,7,51,11,0,2,0,6,2],
-/* U U */ [0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* U V */ [0,0,0,0,8,0,0,0,5,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0],
-/* U W */ [2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* U X */ [0,0,0,0,4,0,0,0,2,0,0,1,0,0,1,0,0,0,0,5,4,0,0,0,0,0],
-/* U Y */ [1,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,1,1,0,0,0,0],
-/* U Z */ [2,0,0,0,4,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,1,0,0,0,0,12]],
-/* V A */ [[0,9,20,8,1,0,14,2,8,1,3,69,2,57,0,1,0,31,18,36,5,0,0,0,0,0],
-/* V B */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V C */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V D */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V E */ [6,2,5,4,4,3,6,4,5,0,1,47,4,120,3,1,0,271,46,24,0,0,1,5,10,0],
-/* V F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V G */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V H */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V I */ [37,4,33,23,21,2,8,0,2,0,3,43,0,47,18,0,0,16,65,30,5,16,0,2,0,1],
-/* V J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V K */ [0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V L */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* V M */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V N */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V O */ [0,0,23,0,0,0,3,0,9,0,5,48,2,6,1,0,0,10,4,9,10,1,3,0,6,0],
-/* V P */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V R */ [0,0,0,0,5,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* V S */ [0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V T */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V U */ [0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,2,2,0,0,0,0,0,0,0],
-/* V V */ [0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0],
-/* V W */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* V Y */ [0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0],
-/* V Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0]],
-/* W A */ [[1,4,7,8,0,3,12,3,18,0,8,53,5,20,0,4,0,100,27,55,1,9,1,4,71,1],
-/* W B */ [6,0,0,0,7,0,0,0,1,0,0,0,0,0,10,0,0,3,0,0,1,0,0,0,0,0],
-/* W C */ [3,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0],
-/* W D */ [0,0,0,0,5,0,0,0,1,0,0,0,0,0,4,0,0,3,0,0,1,0,0,0,3,0],
-/* W E */ [30,5,1,9,33,0,2,1,19,0,0,51,0,11,0,2,0,36,21,7,0,2,0,0,2,0],
-/* W F */ [1,0,0,0,0,0,0,0,3,0,0,3,0,0,4,0,0,0,0,0,3,0,0,0,0,0],
-/* W G */ [0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W H */ [18,0,0,0,47,0,0,0,52,0,0,0,0,0,19,0,0,0,0,0,1,0,0,0,1,0],
-/* W I */ [0,0,14,18,5,5,15,0,0,0,0,40,2,83,0,2,0,8,38,47,0,4,0,1,0,2],
-/* W J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W K */ [0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0],
-/* W L */ [3,0,0,0,9,0,0,0,5,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,3,0],
-/* W M */ [8,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W N */ [0,1,1,1,6,1,1,2,3,0,0,0,0,0,0,2,0,1,10,4,1,0,2,0,3,0],
-/* W O */ [0,1,0,0,3,1,0,0,0,0,3,10,17,8,54,1,0,121,1,1,3,2,1,0,0,0],
-/* W P */ [1,0,0,0,1,0,0,0,1,0,0,1,0,0,5,0,0,0,0,0,1,0,0,0,0,0],
-/* W Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W R */ [7,0,0,0,12,0,0,0,25,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,6,0],
-/* W S */ [0,1,1,0,2,0,0,1,1,0,1,2,2,0,5,3,0,1,1,4,1,0,2,0,1,0],
-/* W T */ [1,0,0,0,1,0,0,3,1,0,0,0,0,0,3,0,0,0,0,0,1,0,0,0,0,0],
-/* W U */ [0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,1,0,2,0,0,0,0,0,0,0,0],
-/* W V */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W W */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* W X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* W Y */ [2,0,0,0,5,0,0,0,0,0,0,1,1,4,1,0,0,0,0,0,0,0,0,0,0,0],
-/* W Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0]],
-/* X A */ [[0,0,5,1,0,1,3,0,0,0,0,4,6,6,0,0,0,0,3,6,0,1,0,0,0,0],
-/* X B */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* X C */ [3,0,0,0,11,0,0,3,7,0,0,7,0,0,3,0,0,5,0,0,7,0,0,0,0,0],
-/* X D */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X E */ [0,0,7,1,0,0,2,0,1,0,0,2,6,9,0,0,0,6,1,1,0,0,0,0,1,0],
-/* X F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* X G */ [0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* X H */ [7,0,0,0,0,0,0,0,4,0,0,0,0,0,4,0,0,0,0,0,2,0,0,0,0,0],
-/* X I */ [8,2,12,8,4,2,2,0,0,0,0,2,11,4,8,0,0,0,9,2,0,1,1,0,0,0],
-/* X J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X L */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X M */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X N */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X O */ [0,0,0,1,0,0,3,0,0,0,0,1,1,10,0,1,0,6,1,5,0,0,0,0,0,0],
-/* X P */ [8,0,0,0,27,0,0,0,5,0,0,18,0,0,12,0,0,7,0,0,3,0,0,0,0,0],
-/* X Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* X R */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X S */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X T */ [6,1,0,0,22,0,0,1,7,0,0,0,0,0,7,0,0,31,0,0,9,0,0,0,1,0],
-/* X U */ [4,1,0,2,0,0,0,0,0,0,0,3,0,0,0,1,0,6,0,0,0,0,0,0,0,0],
-/* X V */ [0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* X W */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0],
-/* X X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* X Y */ [0,0,0,0,0,0,2,0,0,0,0,6,0,0,0,0,0,2,0,0,0,0,0,0,0,0],
-/* X Z */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],
-/* Y A */ [[0,0,5,5,0,0,1,1,0,0,2,11,3,29,1,4,1,20,1,3,0,0,3,0,0,0],
-/* Y B */ [4,0,0,4,7,0,0,0,2,0,0,0,0,0,9,0,0,3,0,0,3,0,0,0,0,0],
-/* Y C */ [4,0,0,0,18,0,0,31,4,0,0,19,0,0,12,0,0,0,0,0,0,0,0,0,0,0],
-/* Y D */ [4,1,0,0,12,0,0,0,2,0,0,0,0,2,1,0,0,37,0,0,0,0,0,0,0,0],
-/* Y E */ [11,3,0,1,1,1,1,0,1,0,0,13,1,6,2,1,0,19,7,6,0,1,1,0,0,0],
-/* Y F */ [1,0,0,0,1,0,0,0,3,0,0,2,0,0,0,0,0,0,0,0,4,0,0,0,0,0],
-/* Y G */ [0,0,0,1,2,0,0,0,2,0,0,1,3,1,8,0,0,3,0,0,1,0,0,0,2,0],
-/* Y H */ [0,0,0,0,4,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,1,0],
-/* Y I */ [0,0,0,1,1,0,0,0,0,0,0,0,0,9,0,2,0,0,2,0,0,0,0,0,0,0],
-/* Y J */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Y K */ [0,0,0,0,3,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Y L */ [15,0,0,0,22,0,0,0,13,0,1,19,0,0,11,1,0,0,2,0,3,6,0,0,0,0],
-/* Y M */ [18,4,1,0,20,0,0,0,5,0,0,0,3,7,11,20,0,0,0,0,2,0,0,0,1,0],
-/* Y N */ [14,0,11,3,12,0,3,1,2,0,0,0,0,3,11,0,0,0,0,6,0,0,0,2,1,0],
-/* Y O */ [0,0,2,2,0,4,6,0,0,0,5,2,1,18,0,4,0,8,4,5,17,1,1,0,0,1],
-/* Y P */ [2,0,0,0,24,0,0,17,5,0,0,2,0,2,21,0,0,5,7,16,3,0,0,0,1,0],
-/* Y Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0],
-/* Y R */ [15,0,0,2,6,1,0,0,21,0,0,0,0,2,29,0,0,2,0,1,4,0,0,0,1,0],
-/* Y S */ [3,1,3,0,12,0,0,1,38,0,0,1,2,0,4,3,0,0,6,39,2,0,0,0,0,0],
-/* Y T */ [2,0,0,0,16,0,0,16,10,0,0,0,0,0,12,0,0,0,0,2,0,0,0,0,1,0],
-/* Y U */ [0,0,3,0,0,0,3,1,0,0,2,1,0,1,0,1,0,0,2,0,0,0,0,0,0,0],
-/* Y V */ [1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Y W */ [10,0,1,0,3,0,0,2,4,0,0,0,0,0,5,0,0,3,0,0,0,0,0,0,0,0],
-/* Y X */ [0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Y Y */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Y Z */ [2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0]],
-/* Z A */ [[1,3,2,0,0,0,5,1,1,0,1,4,1,11,0,1,0,19,0,0,0,1,0,0,0,1],
-/* Z B */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z C */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z D */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z E */ [5,1,2,1,1,0,0,0,1,0,1,7,0,12,0,0,0,13,3,3,1,0,1,0,0,0],
-/* Z F */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z G */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z H */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z I */ [1,1,2,0,7,0,5,0,0,0,0,5,4,6,1,1,0,2,1,1,1,0,0,0,0,0],
-/* Z J */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z K */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z L */ [0,0,0,0,16,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0],
-/* Z M */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z N */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z O */ [3,0,0,2,2,0,1,0,7,0,0,0,3,10,5,2,0,5,0,0,1,1,0,0,0,0],
-/* Z P */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z Q */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z R */ [1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* Z S */ [0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z T */ [0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z U */ [0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0],
-/* Z V */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* Z W */ [0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],
-/* Z X */ [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z Y */ [0,1,0,0,0,0,4,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0],
-/* Z Z */ [7,0,0,0,1,0,0,0,7,0,0,17,0,0,2,0,0,0,0,0,0,0,1,0,5,0]]];
+    return shuffle(password_combination)
+  }
 
-	// Pick a random starting point.
-	pik = Math.random(); // random number [0,1]
-	ranno = pik * 125729.0;
-	sum = 0;
-	for (c1=0; c1 < 26; c1++) {
-	    for (c2=0; c2 < 26; c2++) {
-		for (c3=0; c3 < 26; c3++) {
-		    sum += _trigram[c1][c2][c3];
-		    if (sum > ranno) {
-			output += _alphabet.charAt(c1);
-			output += _alphabet.charAt(c2);
-			output += _alphabet.charAt(c3);
-			c1 = 26; // Found start. Break all 3 loops.
-			c2 = 26;
-			c3 = 26;
-		    } // if sum
-		} // for c3
-	    } // for c2
-	} // for c1
-	// Now do a random walk.
-	nchar = 3;
-	while (nchar < pwl) {
-	    c1 = _alphabet.indexOf(output.charAt(nchar-2));
-	    c2 = _alphabet.indexOf(output.charAt(nchar-1));
-	    sum = 0;
-	    for (c3=0; c3 < 26; c3++)
-		sum += _trigram[c1][c2][c3];
-	    if (sum == 0) {
-		//alert("sum was 0, outut="+output);
-		break;	// exit while loop
-	    }
-	    //pik = ran.nextDouble();
-	    pik = Math.random();
-	    ranno = pik * sum;
-	    sum = 0;
-	    for (c3=0; c3 < 26; c3++) {
-		sum += _trigram[c1][c2][c3];
-		if (sum > ranno) {
-		    output += _alphabet.charAt(c3);
-		    c3 = 26; // break for loop
-		} // if sum
-	    } // for c3
-	    nchar ++;
-	} // while nchar
-	
-	return output + Math.floor(Math.random() * 90 + 10)
-    } // pronounceable
-
-} // GPW
+}
\ No newline at end of file
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/quarantine.js b/mailcow/src/mailcow-dockerized/data/web/js/site/quarantine.js
index 0c35dea..57bd4cc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/quarantine.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/quarantine.js
@@ -53,12 +53,12 @@
         {"name":"sender","title":lang.sender},
         {"name":"subject","title":lang.subj, "type": "text"},
         {"name":"rspamdaction","title":lang.rspamd_result, "type": "html"},
-        {"name":"rcpt","title":lang.rcpt, "breakpoints":"xs sm md", "type": "text"},
+        {"name":"rcpt","title":lang.rcpt, "type": "text"},
         {"name":"virus","title":lang.danger, "type": "text"},
         {"name":"score","title": lang.spam_score, "type": "text"},
         {"name":"notified","title":lang.notified, "type": "text"},
         {"name":"created","formatter":function unix_time_format(tm) { var date = new Date(tm ? tm * 1000 : 0); return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});},"title":lang.received,"style":{"width":"170px"}},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right"},"style":{"min-width":"200px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right"},"style":{"min-width":"250px"},"type":"html","title":lang.action,"breakpoints":"xs sm md"}
       ],
       "rows": $.ajax({
         dataType: 'json',
@@ -95,14 +95,14 @@
               item.notified = '&#10006;';
             }
             if (acl_data.login_as === 1) {
-            item.action = '<div class="btn-group">' +
-              '<a href="#" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-info show_qid_info"><span class="glyphicon glyphicon-modal-window"></span> ' + lang.show_item + '</a>' +
-              '<a href="#" data-action="delete_selected" data-id="del-single-qitem" data-api-url="delete/qitem" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+            item.action = '<div class="btn-group footable-actions">' +
+              '<a href="#" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-xs-half btn-info show_qid_info"><i class="bi bi-box-arrow-up-right"></i> ' + lang.show_item + '</a>' +
+              '<a href="#" data-action="delete_selected" data-id="del-single-qitem" data-api-url="delete/qitem" data-item="' + encodeURI(item.id) + '" class="btn btn-xs  btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
               '</div>';
             }
             else {
             item.action = '<div class="btn-group">' +
-              '<a href="#" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-info show_qid_info"><span class="glyphicon glyphicon-modal-window"></span> ' + lang.show_item + '</a>' +
+              '<a href="#" data-item="' + encodeURI(item.id) + '" class="btn btn-xs btn-info show_qid_info"><i class="bi bi-file-earmark-text"></i> ' + lang.show_item + '</a>' +
               '</div>';
             }
             item.chkbox = '<input type="checkbox" data-id="qitems" name="multi_select" value="' + item.id + '" />';
diff --git a/mailcow/src/mailcow-dockerized/data/web/js/site/user.js b/mailcow/src/mailcow-dockerized/data/web/js/site/user.js
index 0fdec8f..83aedba 100644
--- a/mailcow/src/mailcow-dockerized/data/web/js/site/user.js
+++ b/mailcow/src/mailcow-dockerized/data/web/js/site/user.js
@@ -1,4 +1,35 @@
+// Base64 functions
+var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(r){var t,e,o,a,h,n,c,d="",C=0;for(r=Base64._utf8_encode(r);C<r.length;)a=(t=r.charCodeAt(C++))>>2,h=(3&t)<<4|(e=r.charCodeAt(C++))>>4,n=(15&e)<<2|(o=r.charCodeAt(C++))>>6,c=63&o,isNaN(e)?n=c=64:isNaN(o)&&(c=64),d=d+this._keyStr.charAt(a)+this._keyStr.charAt(h)+this._keyStr.charAt(n)+this._keyStr.charAt(c);return d},decode:function(r){var t,e,o,a,h,n,c="",d=0;for(r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");d<r.length;)t=this._keyStr.indexOf(r.charAt(d++))<<2|(a=this._keyStr.indexOf(r.charAt(d++)))>>4,e=(15&a)<<4|(h=this._keyStr.indexOf(r.charAt(d++)))>>2,o=(3&h)<<6|(n=this._keyStr.indexOf(r.charAt(d++))),c+=String.fromCharCode(t),64!=h&&(c+=String.fromCharCode(e)),64!=n&&(c+=String.fromCharCode(o));return c=Base64._utf8_decode(c)},_utf8_encode:function(r){r=r.replace(/\r\n/g,"\n");for(var t="",e=0;e<r.length;e++){var o=r.charCodeAt(e);o<128?t+=String.fromCharCode(o):o>127&&o<2048?(t+=String.fromCharCode(o>>6|192),t+=String.fromCharCode(63&o|128)):(t+=String.fromCharCode(o>>12|224),t+=String.fromCharCode(o>>6&63|128),t+=String.fromCharCode(63&o|128))}return t},_utf8_decode:function(r){for(var t="",e=0,o=c1=c2=0;e<r.length;)(o=r.charCodeAt(e))<128?(t+=String.fromCharCode(o),e++):o>191&&o<224?(c2=r.charCodeAt(e+1),t+=String.fromCharCode((31&o)<<6|63&c2),e+=2):(c2=r.charCodeAt(e+1),c3=r.charCodeAt(e+2),t+=String.fromCharCode((15&o)<<12|(63&c2)<<6|63&c3),e+=3);return t}};
 $(document).ready(function() {
+  // Spam score slider
+  var spam_slider = $('#spam_score')[0];
+  if (typeof spam_slider !== 'undefined') {
+    noUiSlider.create(spam_slider, {
+      start: user_spam_score,
+      connect: [true, true, true],
+      range: {
+        'min': [0], //stepsize is 50.000
+        '50%': [10],
+        '70%': [20, 5],
+        '80%': [50, 10],
+        '90%': [100, 100],
+        '95%': [1000, 1000],
+        'max': [5000]
+      },
+    });
+    var connect = spam_slider.querySelectorAll('.noUi-connect');
+    var classes = ['c-1-color', 'c-2-color', 'c-3-color'];
+    for (var i = 0; i < connect.length; i++) {
+      connect[i].classList.add(classes[i]);
+    }
+    spam_slider.noUiSlider.on('update', function (values, handle) {
+      $('.spam-ham-score').text('< ' + Math.round(values[0] * 10) / 10);
+      $('.spam-spam-score').text(Math.round(values[0] * 10) / 10 + ' - ' + Math.round(values[1] * 10) / 10);
+      $('.spam-reject-score').text('> ' + Math.round(values[1] * 10) / 10);
+      $('#spam_score_value').val((Math.round(values[0] * 10) / 10) + ',' + (Math.round(values[1] * 10) / 10));
+    });
+  }
+  // syncjobLogModal
   $('#syncjobLogModal').on('show.bs.modal', function(e) {
     var syncjob_id = $(e.relatedTarget).data('syncjob-id');
     $.ajax({
@@ -15,6 +46,7 @@
   });
   $(".arrow-toggle").on('click', function(e) { e.preventDefault(); $(this).find('.arrow').toggleClass("animation"); });
   $("#pushover_delete").click(function() { return confirm(lang.delete_ays); });
+
 });
 jQuery(function($){
   // http://stackoverflow.com/questions/24816/escaping-html-strings-with-jquery
@@ -43,15 +75,64 @@
     return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});
   }
   acl_data = JSON.parse(acl);
-  var last_login = $('.last_login_date').data('time');
-  $('.last_login_date').text(unix_time_format(last_login));
+
+  $('.clear-last-logins').on('click', function () {if (confirm(lang.delete_ays)) {last_logins('reset');}})
+  $(".login-history").on('click', function(e) {e.preventDefault(); last_logins('get', $(this).data('days'));$(this).addClass('active').siblings().removeClass('active');});
+
+  function last_logins(action, days = 1) {
+    if (action == 'get') {
+      $('.last-login').html('<i class="bi bi-hourglass"></i>' +  lang.waiting);
+      $.ajax({
+        dataType: 'json',
+        url: '/api/v1/get/last-login/' + encodeURIComponent(mailcow_cc_username) + '/' + days,
+        jsonp: false,
+        error: function () {
+          console.log('error reading last logins');
+        },
+        success: function (data) {
+          $('.last-login').html();
+          if (data.ui.time) {
+            $('.last-login').html('<i class="bi bi-person-fill"></i> ' + lang.last_ui_login + ': ' + unix_time_format(data.ui.time));
+          } else {
+            $('.last-login').text(lang.no_last_login);
+          }
+          if (data.sasl) {
+            $('.last-login').append('<ul class="list-group">');
+            $.each(data.sasl, function (i, item) {
+              var datetime = new Date(item.datetime.replace(/-/g, "/"));
+              var local_datetime = datetime.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});
+              item.app_password ? app_password = ' <a href="/edit/app-passwd/' + item.app_password + '">(App)</a>' : app_password = "", item.location ? ip_location = ' <span class="flag-icon flag-icon-' + item.location.toLowerCase() + '"></span>' : ip_location = "";
+              "smtp" == item.service ? service = '<div class="label label-default">' + item.service.toUpperCase() + '<i class="bi bi-chevron-compact-right"></i></div>' : "imap" == item.service ? service = '<div class="label label-default"><i class="bi bi-chevron-compact-left"></i> ' + item.service.toUpperCase() + "</div>" : service = '<div class="label label-default">' + item.service.toUpperCase() + "</div>";
+              item.real_rip.startsWith("Web") ? real_rip = item.real_rip : real_rip = '<a href="https://bgp.he.net/ip/' + item.real_rip + '" target="_blank">' + item.real_rip + "</a>";
+              ip_data = real_rip + ip_location + app_password;
+              $(".last-login").append('<li class="list-group-item">' + local_datetime + " " + service + " " + lang.from + " " + ip_data + "</li>");
+            })
+            $('.last-login').append('</ul>');
+          }
+        }
+      })
+    } else if (action == 'reset') {
+      $.ajax({
+        dataType: 'json',
+        url: '/api/v1/get/reset-last-login/' + encodeURIComponent(mailcow_cc_username),
+        jsonp: false,
+        error: function () {
+          console.log('cannot reset last logins');
+        },
+        success: function (data) {
+          last_logins('get');
+        }
+      })
+    }
+  }
 
   function draw_tla_table() {
     ft_tla_table = FooTable.init('#tla_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"40px","width":"40px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
-        {"sorted": true,"name":"address","title":lang.alias},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"address","title":lang.alias},
         {"name":"validity","formatter":function unix_time_format(tm) { var date = new Date(tm ? tm * 1000 : 0); return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});},"title":lang.alias_valid_until,"style":{"width":"170px"}},
+        {"sorted": true,"sortValue": function(value){res = new Date(value);return res.getTime();},"direction":"DESC","name":"created","formatter":function date_format(datetime) { var date = new Date(datetime.replace(/-/g, "/")); return date.toLocaleDateString(undefined, {year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit"});},"title":lang.created_on,"style":{"width":"170px"}},
         {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
@@ -65,8 +146,8 @@
         success: function (data) {
           $.each(data, function (i, item) {
             if (acl_data.spam_alias === 1) {
-              item.action = '<div class="btn-group">' +
-                '<a href="#" data-action="delete_selected" data-id="single-tla" data-api-url="delete/time_limited_alias" data-item="' + encodeURIComponent(item.address) + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              item.action = '<div class="btn-group footable-actions">' +
+                '<a href="#" data-action="delete_selected" data-id="single-tla" data-api-url="delete/time_limited_alias" data-item="' + encodeURIComponent(item.address) + '" class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
                 '</div>';
               item.chkbox = '<input type="checkbox" data-id="tla" name="multi_select" value="' + encodeURIComponent(item.address) + '" />';
               item.address = escapeHtml(item.address);
@@ -93,18 +174,18 @@
   function draw_sync_job_table() {
     ft_syncjob_table = FooTable.init('#sync_job_table', {
       "columns": [
-        {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
+        {"name":"chkbox","title":"","style":{"min-width":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
         {"name":"server_w_port","title":"Server"},
-        {"name":"enc1","title":lang.encryption,"breakpoints":"xs sm"},
+        {"name":"enc1","title":lang.encryption,"breakpoints":"all"},
         {"name":"user1","title":lang.username},
         {"name":"exclude","title":lang.excludes,"breakpoints":"all"},
         {"name":"mins_interval","title":lang.interval + " (min)","breakpoints":"all"},
         {"name":"last_run","title":lang.last_run,"breakpoints":"all"},
         {"name":"log","title":"Log"},
-        {"name":"active","filterable": false,"style":{"maxWidth":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
+        {"name":"active","filterable": false,"style":{"maxWidth":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
         {"name":"is_running","filterable": false,"style":{"maxWidth":"120px","width":"100px"},"title":lang.status},
-        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
+        {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","min-width":"260px","width":"260px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
       "rows": $.ajax({
@@ -117,7 +198,7 @@
         success: function (data) {
           $.each(data, function (i, item) {
             item.user1 = escapeHtml(item.user1);
-            item.log = '<a href="#syncjobLogModal" data-toggle="modal" data-syncjob-id="' + item.id + '">Open logs</a>'
+            item.log = '<a href="#syncjobLogModal" data-toggle="modal" data-syncjob-id="' + item.id + '">' + lang.open_logs + '</a>'
             if (!item.exclude > 0) {
               item.exclude = '-';
             } else {
@@ -125,9 +206,9 @@
             }
             item.server_w_port = escapeHtml(item.user1 + '@' + item.host1 + ':' + item.port1);
             if (acl_data.syncjobs === 1) {
-              item.action = '<div class="btn-group">' +
-                '<a href="/edit/syncjob/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-                '<a href="#" data-action="delete_selected" data-id="single-syncjob" data-api-url="delete/syncjob" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              item.action = '<div class="btn-group footable-actions">' +
+                '<a href="/edit/syncjob/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+                '<a href="#" data-action="delete_selected" data-id="single-syncjob" data-api-url="delete/syncjob" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
                 '</div>';
               item.chkbox = '<input type="checkbox" data-id="syncjob" name="multi_select" value="' + item.id + '" />';
             }
@@ -164,7 +245,7 @@
         {"name":"chkbox","title":"","style":{"maxWidth":"60px","width":"60px","text-align":"center"},"filterable": false,"sortable": false,"type":"html"},
         {"sorted": true,"name":"id","title":"ID","style":{"maxWidth":"60px","width":"60px","text-align":"center"}},
         {"name":"name","title":lang.app_name},
-        {"name":"active","filterable": false,"style":{"maxWidth":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'&#10003;':0==value&&'&#10005;';}},
+        {"name":"active","filterable": false,"style":{"maxWidth":"70px","width":"70px"},"title":lang.active,"formatter": function(value){return 1==value?'<i class="bi bi-check-lg"></i>':0==value&&'<i class="bi bi-x-lg"></i>';}},
         {"name":"action","filterable": false,"sortable": false,"style":{"text-align":"right","maxWidth":"180px","width":"180px"},"type":"html","title":lang.action,"breakpoints":"xs sm"}
       ],
       "empty": lang.empty,
@@ -177,10 +258,11 @@
         },
         success: function (data) {
           $.each(data, function (i, item) {
+            item.name = escapeHtml(item.name);
             if (acl_data.app_passwds === 1) {
-              item.action = '<div class="btn-group">' +
-                '<a href="/edit/app-passwd/' + item.id + '" class="btn btn-xs btn-default"><span class="glyphicon glyphicon-pencil"></span> ' + lang.edit + '</a>' +
-                '<a href="#" data-action="delete_selected" data-id="single-apppasswd" data-api-url="delete/app-passwd" data-item="' + item.id + '" class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> ' + lang.remove + '</a>' +
+              item.action = '<div class="btn-group footable-actions">' +
+                '<a href="/edit/app-passwd/' + item.id + '" class="btn btn-xs btn-xs-half btn-default"><i class="bi bi-pencil-fill"></i> ' + lang.edit + '</a>' +
+                '<a href="#" data-action="delete_selected" data-id="single-apppasswd" data-api-url="delete/app-passwd" data-item="' + item.id + '" class="btn btn-xs btn-xs-half btn-danger"><i class="bi bi-trash"></i> ' + lang.remove + '</a>' +
                 '</div>';
               item.chkbox = '<input type="checkbox" data-id="apppasswd" name="multi_select" value="' + item.id + '" />';
             }
@@ -295,6 +377,7 @@
   draw_tla_table();
   draw_wl_policy_mailbox_table();
   draw_bl_policy_mailbox_table();
+  last_logins('get');
 
   // FIDO2 friendly name modal
   $('#fido2ChangeFn').on('show.bs.modal', function (e) {
@@ -327,4 +410,4 @@
   $('#userFilterModal').on('hidden.bs.modal', function () {
     $('#user_sieve_filter').text(lang.loading);
   });
-});
\ No newline at end of file
+});
diff --git a/mailcow/src/mailcow-dockerized/data/web/json_api.php b/mailcow/src/mailcow-dockerized/data/web/json_api.php
index 46d6e35..cdefb83 100644
--- a/mailcow/src/mailcow-dockerized/data/web/json_api.php
+++ b/mailcow/src/mailcow-dockerized/data/web/json_api.php
@@ -141,7 +141,7 @@
         // fido2-registration via POST
         case "fido2-registration":
           header('Content-Type: application/json');
-          if (isset($_SESSION["mailcow_cc_role"]) && ($_SESSION["mailcow_cc_role"] == "admin" || $_SESSION["mailcow_cc_role"] == "domainadmin")) {
+          if (isset($_SESSION["mailcow_cc_role"])) {
             $post = trim(file_get_contents('php://input'));
             if ($post) {
               $post = json_decode($post);
@@ -302,11 +302,23 @@
           if ($obj_props['superadmin'] === 1) {
             $_SESSION["mailcow_cc_role"] = "admin";
           }
-          else {
+          elseif ($obj_props['superadmin'] === 0) {
             $_SESSION["mailcow_cc_role"] = "domainadmin";
           }
+          else {
+            $stmt = $pdo->prepare("SELECT `username` FROM `mailbox` WHERE `username` = :username");
+            $stmt->execute(array(':username' => $process_fido2['username']));
+            $row = $stmt->fetch(PDO::FETCH_ASSOC);
+            if ($row['username'] == $process_fido2['username']) {
+              $_SESSION["mailcow_cc_role"] = "user";
+            }
+          }
+          if (empty($_SESSION["mailcow_cc_role"])) {
+            session_unset();
+            session_destroy();
+            exit;
+          }
           $_SESSION["mailcow_cc_username"] = $process_fido2['username'];
-          $_SESSION['mailcow_cc_last_login'] = last_login($process_fido2['username']);
           $_SESSION["fido2_cid"] = $process_fido2['cid'];
           unset($_SESSION["challenge"]);
           $_SESSION['return'][] =  array(
@@ -319,8 +331,14 @@
       }
     break;
     case "get":
-      function process_get_return($data) {
-        echo (!isset($data) || empty($data)) ? '{}' : json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
+      function process_get_return($data, $object = true) {
+        if ($object === true) {
+          $ret_str = '{}';
+        }
+        else {
+          $ret_str = '[]';
+        }
+        echo (!isset($data) || empty($data)) ? $ret_str : json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
       }
       // only allow GET requests to GET API endpoints
       if ($_SERVER['REQUEST_METHOD'] != 'GET') {
@@ -334,17 +352,15 @@
       switch ($category) {
         case "u2f-registration":
           header('Content-Type: application/javascript');
-          if (isset($_SESSION["mailcow_cc_role"]) &&
-            ($_SESSION["mailcow_cc_role"] == "admin" || $_SESSION["mailcow_cc_role"] == "domainadmin") &&
-            $_SESSION["mailcow_cc_username"] == $object) {
-              list($req, $sigs) = $u2f->getRegisterData(get_u2f_registrations($object));
-              $_SESSION['regReq'] = json_encode($req);
-              $_SESSION['regSigs'] = json_encode($sigs);
-              echo 'var req = ' . json_encode($req) . ';';
-              echo 'var registeredKeys = ' . json_encode($sigs) . ';';
-              echo 'var appId = req.appId;';
-              echo 'var registerRequests = [{version: req.version, challenge: req.challenge}];';
-              return;
+          if (isset($_SESSION["mailcow_cc_role"]) && $_SESSION["mailcow_cc_username"] == $object) {
+            list($req, $sigs) = $u2f->getRegisterData(get_u2f_registrations($object));
+            $_SESSION['regReq'] = json_encode($req);
+            $_SESSION['regSigs'] = json_encode($sigs);
+            echo 'var req = ' . json_encode($req) . ';';
+            echo 'var registeredKeys = ' . json_encode($sigs) . ';';
+            echo 'var appId = req.appId;';
+            echo 'var registerRequests = [{version: req.version, challenge: req.challenge}];';
+            return;
           }
           else {
             return;
@@ -353,9 +369,7 @@
         // fido2-registration via GET
         case "fido2-registration":
           header('Content-Type: application/json');
-          if (isset($_SESSION["mailcow_cc_role"]) &&
-            ($_SESSION["mailcow_cc_role"] == "admin" || $_SESSION["mailcow_cc_role"] == "domainadmin") &&
-            $_SESSION["mailcow_cc_username"] == $object) {
+          if (isset($_SESSION["mailcow_cc_role"])) {
               // Exclude existing CredentialIds, if any
               $excludeCredentialIds = fido2(array("action" => "get_user_cids"));
               $createArgs = $WebAuthn->getCreateArgs($_SESSION["mailcow_cc_username"], $_SESSION["mailcow_cc_username"], $_SESSION["mailcow_cc_username"], 30, true, $GLOBALS['FIDO2_UV_FLAG_REGISTER'], $excludeCredentialIds);
@@ -446,6 +460,20 @@
             }
           break;
 
+          case "passwordpolicy":
+            switch ($object) {
+              case "html":
+                $password_complexity_rules = password_complexity('html');
+                if ($password_complexity_rules !== false) {
+                  process_get_return($password_complexity_rules);
+                }
+                else {
+                  echo '{}';
+                }
+              break;
+            }
+          break;
+
           case "app-passwd":
             switch ($object) {
               case "all":
@@ -620,6 +648,27 @@
             }
           break;
 
+          case "last-login":
+            if ($object) {
+              // extra == days
+              if (isset($extra) && intval($extra) >= 1) {
+                $data = last_login('get', $object, intval($extra));
+              }
+              else {
+                $data = last_login('get', $object);
+              }
+              process_get_return($data);
+            }
+          break;
+
+          // Todo: move to delete
+          case "reset-last-login":
+            if ($object) {
+              $data = last_login('reset', $object);
+              process_get_return($data);
+            }
+          break;
+
           case "transport":
             switch ($object) {
               case "all":
@@ -780,6 +829,17 @@
                 }
                 echo (isset($logs) && !empty($logs)) ? json_encode($logs, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) : '{}';
               break;
+              case "sasl":
+                // 0 is first record, so empty is fine
+                if (isset($extra)) {
+                  $extra = preg_replace('/[^\d\-]/i', '', $extra);
+                  $logs = get_logs('sasl', $extra);
+                }
+                else {
+                  $logs = get_logs('sasl');
+                }
+                echo (isset($logs) && !empty($logs)) ? json_encode($logs, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) : '{}';
+              break;
               case "watchdog":
                 // 0 is first record, so empty is fine
                 if (isset($extra)) {
@@ -841,18 +901,19 @@
           case "mailbox":
             switch ($object) {
               case "all":
+              case "reduced":
                 if (empty($extra)) {
                   $domains = mailbox('get', 'domains');
                 }
                 else {
-                  $domains = array($extra);
+                  $domains = explode(',', $extra);
                 }
                 if (!empty($domains)) {
                   foreach ($domains as $domain) {
                     $mailboxes = mailbox('get', 'mailboxes', $domain);
                     if (!empty($mailboxes)) {
                       foreach ($mailboxes as $mailbox) {
-                        if ($details = mailbox('get', 'mailbox_details', $mailbox)) {
+                        if ($details = mailbox('get', 'mailbox_details', $mailbox, $object)) {
                           $data[] = $details;
                         }
                         else {
@@ -1154,10 +1215,10 @@
             // "all" will not print details
             switch ($object) {
               case "all":
-                process_get_return(quarantine('get'));
+                process_get_return(quarantine('get'), false);
               break;
               default:
-                process_get_return(quarantine('details', $object));
+                process_get_return(quarantine('details', $object), false);
               break;
             }
           break;
@@ -1189,7 +1250,7 @@
                   $domains = array_merge(mailbox('get', 'domains'), mailbox('get', 'alias_domains'));
                 }
                 else {
-                  $domains = array($extra);
+                  $domains = explode(',', $extra);
                 }
                 if (!empty($domains)) {
                   foreach ($domains as $domain) {
@@ -1437,7 +1498,6 @@
           process_delete_return(dkim('delete', array('domains' => $items)));
         break;
         case "domain":
-          file_put_contents('/tmp/dssaa', $items);
           process_delete_return(mailbox('delete', 'domain', array('domain' => $items)));
         break;
         case "alias-domain":
@@ -1560,6 +1620,9 @@
         case "app_links":
           process_edit_return(customize('edit', 'app_links', $attr));
         break;
+        case "passwordpolicy":
+          process_edit_return(password_complexity('edit', $attr));
+        break;
         case "relayhost":
           process_edit_return(relayhost('edit', array_merge(array('id' => $items), $attr)));
         break;
@@ -1590,6 +1653,9 @@
         case "quota_notification":
           process_edit_return(quota_notification('edit', $attr));
         break;
+        case "quota_notification_bcc":
+          process_edit_return(quota_notification_bcc('edit', $attr));
+        break;
         case "mailq":
           process_edit_return(mailq('edit', array_merge(array('qid' => $items), $attr)));
         break;
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.cs.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.cs.json
index dccdc22..5299f10 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.cs.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.cs.json
@@ -4,17 +4,23 @@
         "app_passwds": "Hesla aplikací",
         "bcc_maps": "BCC mapy",
         "delimiter_action": "Zacházení s označkovanou poštou",
+        "domain_desc": "Změnit popis domény",
+        "domain_relayhost": "Změnit předávající server pro doménu",
         "eas_reset": "Resetování EAS zařízení",
         "extend_sender_acl": "Rozšiřování ACL odesílatele o externí adresy",
         "filters": "Filtry",
         "login_as": "Přihlásit se jako uživatel",
+        "mailbox_relayhost": "Změnit předávající server pro schránku",
         "prohibited": "Zakázáno z důvodu ACL",
+        "protocol_access": "Upravit povolené protokoly",
         "pushover": "Pushover",
         "quarantine": "Karanténa",
         "quarantine_attachments": "Přílohy v karanténě",
+        "quarantine_category": "Změnit kategorii oznámení karantény",
         "quarantine_notification": "Upozornění z karantény",
         "ratelimit": "Omezení provozu",
         "recipient_maps": "Mapy příjemců",
+        "smtp_ip_access": "Spravovat povolené hostitele pro SMTP",
         "sogo_access": "Správa přístupu do SOGo",
         "sogo_profile_reset": "Resetování profilu SOGo",
         "spam_alias": "Dočasné aliasy",
@@ -38,12 +44,13 @@
         "app_password": "Přidat heslo aplikace",
         "automap": "Pokusit se automaticky mapovat složky (\"Sent items\", \"Sent\" => \"Sent\" atd.)",
         "backup_mx_options": "Možnosti záložního MX",
+        "bcc_dest_format": "Cíl kopie musí být jedna platná email adresa. Pokud potřebujete posílat kopie na více adres, vytvořte Alias a použijte jej zde.",
         "comment_info": "Soukromý komentář se nezobrazí uživateli; veřejný komentář se zobrazí jako nápověda při zastavení se kurzorem v přehledu uživatelů",
         "custom_params": "Vlastní parametry",
         "custom_params_hint": "Správně: --param=xy, špatně: --param xy",
-        "delete1": "Odstranit ze zdroje po dokončení",
-        "delete2": "Smazat zprávy v cíli, které nejsou ve zdroji",
-        "delete2duplicates": "Odstranit duplicity v cílovém místě",
+        "delete1": "Odstranit ze zdrojové schránky, po dokončení přenosu",
+        "delete2": "Odstranit zprávy v cílové schránce, pokud nejsou ve zdrojové",
+        "delete2duplicates": "Odstranit duplicity v cílové schránce",
         "description": "Popis",
         "destination": "Cíl",
         "disable_login": "Zakázat přihlášení (ale stále přijímat poštu)",
@@ -88,14 +95,14 @@
         "sieve_desc": "Krátký popis",
         "sieve_type": "Typ filtru",
         "skipcrossduplicates": "Přeskočit duplicitní zprávy (\"první přijde, první mele\")",
-        "subscribeall": "Odebírat všechny složky",
+        "subscribeall": "Synchronizovat všechny složky",
         "syncjob": "Přidat synchronizační úlohu",
         "syncjob_hint": "Upozornění: Heslo bude uloženo jako prostý text!",
         "target_address": "Cílové adresy",
         "target_address_info": "<small>Kompletní email adresa/y (oddělené čárkami).</small>",
         "target_domain": "Cílová doména",
-        "timeout1": "Časový limit pro připojení ke vzdálenému hostiteli",
-        "timeout2": "Časový limit pro připojení k lokálnímu hostiteli",
+        "timeout1": "Časový limit pro připojení ke vzdálenému serveru",
+        "timeout2": "Časový limit pro připojení k lokálnímu serveru",
         "username": "Uživatelské jméno",
         "validate": "Ověřit",
         "validation_success": "Úspěšně ověřeno"
@@ -110,7 +117,7 @@
         "add": "Přidat",
         "add_admin": "Přidat správce",
         "add_domain_admin": "Přidat správce domény",
-        "add_forwarding_host": "Přidat předávajícího hostitele",
+        "add_forwarding_host": "Přidat předávající server",
         "add_relayhost": "Přidat transport podle odesílatele",
         "add_relayhost_hint": "Pozor: přihlašovací údaje se ukládají jako prostý text.",
         "add_row": "Přidat řádek",
@@ -121,20 +128,25 @@
         "admin": "Správce",
         "admin_details": "Upravit správce",
         "admin_domains": "Přidělené domény",
+        "admins": "Administrátoři",
+        "admins_ldap": "LDAP Administrátoři",
         "advanced_settings": "Pokročilá nastavení",
         "api_allow_from": "Povolit přístup k API z těchto IP adres (oddělte čárkou nebo řádkem)",
-        "api_info": "API je stále ve vývoji.",
+        "api_info": "Dokumentaci naleznete na <a href=\"/api\">/api</a>",
         "api_key": "API klíč",
+        "api_read_only": "Přístup pouze pro čtení",
+        "api_read_write": "Přístup i se zápisem",
         "api_skip_ip_check": "Vynechat ověření IP adresy pro API",
         "app_links": "Odkazy na aplikace",
         "app_name": "Název aplikace",
-        "apps_name": "Hlavička aplikací (\"mailcow Apps\")",
+        "apps_name": "\"mailcow Apps\" název",
         "arrival_time": "Čas zařazení do fronty (čas na serveru)",
         "authed_user": "Přihlášený uživatel",
         "ays": "Opravdu chcete pokračovat?",
         "ban_list_info": "Seznam blokovaných IP adres je zobrazen níže: <b>síť (zbývající čas blokování) - [akce]</b>.<br />IP adresy zařazené pro odblokování budou z aktivního seznamu odebrány během několika sekund.<br />Červeně označené položky jsou pernamentní bloky z blacklistu.",
         "change_logo": "Změnit logo",
         "configuration": "Nastavení",
+        "convert_html_to_text": "Převést HTML do prostého textu",
         "credentials_transport_warning": "<b>Upozornění</b>: Přidání položky do transportní mapy aktualizuje také přihlašovací údaje všech záznamů s odpovídajícím skokem.",
         "customer_id": "ID zákazníka",
         "customize": "Přizpůsobení",
@@ -150,10 +162,12 @@
         "dkim_key_unused": "Klíč nepoužitý",
         "dkim_key_valid": "Klíč je platný",
         "dkim_keys": "ARC/DKIM klíče",
+        "dkim_overwrite_key": "Přepsat existující DKIM klíč",
         "dkim_private_key": "Soukromý klíč",
-        "dkim_to": "Komu",
-        "dkim_to_title": "Cílová doména/y - bude přepsáno",
+        "dkim_to": "Do",
+        "dkim_to_title": "Cílová doména/y - údaje budou přepsány",
         "domain": "Doména",
+        "domain_admin": "Administrátor domény",
         "domain_admins": "Správci domén",
         "domain_s": "Doména/y",
         "duplicate": "Duplikovat",
@@ -163,18 +177,20 @@
         "excludes": "Vyloučit tyto příjemce",
         "f2b_ban_time": "Doba blokování (s)",
         "f2b_blacklist": "Sítě/hostitelé na blacklistu",
+        "f2b_filter": "Regex filtre",
         "f2b_list_info": "Síť nebo hostitelé na blacklistu mají vždy větší váhu než položky na whitelistu. Blacklist se sestavuje vždy při startu kontejneru.",
         "f2b_max_attempts": "Max. pokusů",
         "f2b_netban_ipv4": "Rozsah IPv4 podsítě k zablokování (8-32)",
         "f2b_netban_ipv6": "Rozsah IPv6 podsítě k zablokování (8-128)",
-        "f2b_parameters": "Nastavení Fail2ban",
+        "f2b_parameters": "Parametry automatického firewallu",
+        "f2b_regex_info": "Záznamy které se berou v úvahu: SOGo, Postfix, Dovecot, PHP-FPM.",
         "f2b_retry_window": "Časový horizont pro maximum pokusů (s)",
         "f2b_whitelist": "Sítě/hostitelé na whitelistu",
         "filter_table": "Tabulka filtrů",
         "flush_queue": "Vyprázdnit frontu (opětovně doručit)",
-        "forwarding_hosts": "Předávající hostitelé",
-        "forwarding_hosts_add_hint": "Lze zadat IPv4/IPv6 adresy, sítě ve formátu CIDR, názvy hostitelů (budou převedeny na IP adresy) nebo názvy domén (budou převedeny na IP pomocí SPF záznamů, příp. MX záznamů).",
-        "forwarding_hosts_hint": "Příchozí zprávy od zde uvedených hostitelů jsou bezpodmínečně přijaty. U těchto hostitelů se nekontroluje DNSBL a nepoužije greylisting. Spam od těchto hostitelů se nikdy neodmítá, ale občas může skončit ve složce se spamem. Nejčastěji se zde uvádějí poštovní servery, jež předávají příchozí e-maily na tento poštovní server.",
+        "forwarding_hosts": "Předávající servery",
+        "forwarding_hosts_add_hint": "Lze zadat IPv4/IPv6 adresy, sítě ve formátu CIDR, názvy serverů (budou převedeny na IP adresy) nebo názvy domén (budou převedeny na IP pomocí SPF záznamů, příp. MX záznamů).",
+        "forwarding_hosts_hint": "Příchozí zprávy od zde uvedených serverů jsou bezpodmínečně přijaty. U těchto serverů se nekontroluje DNSBL a nepoužije greylisting. Spam od těchto serverů se nikdy neodmítá, ale občas může skončit ve složce se spamem. Nejčastěji se zde uvádějí poštovní servery, jež předávají příchozí e-maily na tento poštovní server.",
         "from": "Od",
         "generate": "generovat",
         "guid": "GUID - unikátní ID licence",
@@ -182,6 +198,7 @@
         "hash_remove_info": "Odebrání hashe omezení provozu (pokud stále existuje) zcela vyresetuje jeho počítadlo.<br>\r\n  Každý hash je označen jinou barvou.",
         "help_text": "Přepsat text nápovědy pod přihlašovacím formulářem (HTML povoleno)",
         "host": "Hostitel",
+        "html": "HTML",
         "import": "Importovat",
         "import_private_key": "Importovat soukromý klíč",
         "in_use_by": "Používáno",
@@ -189,10 +206,12 @@
         "include_exclude": "Zahrnout/Vyloučit",
         "include_exclude_info": "Ve výchozím nastavení (bez výběru), jsou adresovány <b>všechny poštovní schránky</b>",
         "includes": "Zahrnout tyto přijemce",
+        "is_mx_based": "Na základě MX",
         "last_applied": "Naposledy použité",
         "license_info": "Licence není povinná, pomůžete však dalšímu vývoji.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Registrujte si své GUID</a>, nebo si <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Support order\">zaplaťte podporu pro svou instalaci mailcow.</a>",
         "link": "Odkaz",
         "loading": "Prosím čekejte...",
+        "login_time": "Čas přihlášení",
         "logo_info": "Obrázek bude zmenšen na výšku 40 pixelů pro horní navigační lištu a na max. šířku 250 pixelů pro úvodní stránku.",
         "lookup_mx": "Ověřit cíl proti MX záznamu (.outlook.com bude směrovat všechnu poštu pro MX *.outlook.com přes tento uzel)",
         "main_name": "Název webu (\"mailcow UI\")",
@@ -204,13 +223,23 @@
         "no_active_bans": "Žádná aktivní blokování",
         "no_new_rows": "Žádné další řádky nejsou k dispozici",
         "no_record": "Žádný záznam",
+        "oauth2_add_client": "Přidat OAuth2 klienta",
+        "oauth2_apps": "OAuth2 Aplikace",
         "oauth2_client_id": "ID klienta",
         "oauth2_client_secret": "Tajný klíč klienta",
         "oauth2_info": "Implementace OAuth2 podporuje přidělení typu \"Authorization Code\" a vydává tokeny k obnovení.<br>\r\nServer vydává tokeny k obnovení automaticky, jakmile byl předchozí token použit.<br><br>\r\n→ Výchozím rozsahem je <i>profil</i>. Ověření přes OAuth2 mohou využít jen uživatelé poštovních schránek. Je-li rozsah vynechán, použije se <i>profil</i>.<br>\r\n→ Klient je povinen uvést parametr <i>state</i> spolu s požadavkem na ověření.<br><br>\r\nCesty API pro požadavky na ověření OAuth2: <br>\r\n<ul>\r\n  <li>Koncový bod pro ověření: <code>/oauth/authorize</code></li>\r\n  <li>Koncový bod pro token: <code>/oauth/token</code></li>\r\n  <li>Stránka zdroje:  <code>/oauth/profile</code></li>\r\n</ul>\r\nDojde-li ke znovuvytvoření tajného klíče klienta, nedojde ke zneplatnění stávajícíh ověřovacích kódů, nebude však už možné obnovit jejich token.<br><br>\r\nOdvoláním klientského tokenů okamžitě ukončíte všechny aktivní relace a klienti se budou muset znovu přihlásit.",
         "oauth2_redirect_uri": "URI přesměrování",
         "oauth2_renew_secret": "Vytvořit nový tajný klíč",
         "oauth2_revoke_tokens": "Odvolat všechny klientské tokeny",
+        "optional": "volitelné",
         "password": "Heslo",
+        "password_length": "Délka hesla",
+        "password_policy": "Politika hesel",
+        "password_policy_chars": "Musí obsahovat nejméně jedno písmeno",
+        "password_policy_length": "Minimální délka hesla je %d",
+        "password_policy_lowerupper": "Musí obsahovat malé a velké písmeno",
+        "password_policy_numbers": "Musí obsahovat nejméně jedno číslo",
+        "password_policy_special_chars": "Musí obsahovat speciální znak",
         "password_repeat": "Potvrzení nového hesla (opakujte)",
         "priority": "Priorita",
         "private_key": "Soukromý klíč",
@@ -218,6 +247,7 @@
         "quarantine_bcc": "Odeslat kopii (BCC) všech upozornění tomuto adresátu:<br><small>Jinak nechtte nevyplněno. <b>Nepodepsáno, nekontrolováno - volte raději jen místní adresáty.</b></small>",
         "quarantine_exclude_domains": "Vyloučené domény a doménové aliasy",
         "quarantine_max_age": "Maximální stáří ve dnech<br><small>Hodnota musí být rovna nebo větší než 1 den.</small>",
+        "quarantine_max_score": "Neposílat notifikace pokud je spam skóre větší než hodnota:<br><small>Výchozí je 9999.0</small>",
         "quarantine_max_size": "Maximální velikost v MiB (větší prvky budou smazány)<br />0 <b>neznamená</b> neomezeno.",
         "quarantine_notification_html": "Šablona upozornění:<br><small>Ponechte prázdné, aby se obnovila výchozí šablona.</small>",
         "quarantine_notification_sender": "Odesílatel upozornění",
@@ -231,9 +261,9 @@
         "queue_deliver_mail": "Doručit",
         "queue_hold_mail": "Zadržet",
         "queue_manager": "Správce fronty",
+        "queue_show_message": "Zobrazit zprávu",
         "queue_unban": "odblokovat",
         "queue_unhold_mail": "Propustit",
-        "queue_show_message": "Zobrazit zprávu",
         "quota_notification_html": "Šablona upozornění:<br><small>Ponechte prázdné, aby se obnovila výchozí šablona.</small>",
         "quota_notification_sender": "Odesílatel upozornění",
         "quota_notification_subject": "Předmět upozornění",
@@ -249,6 +279,7 @@
         "regen_api_key": "Generovat API klíč",
         "regex_maps": "Mapy regulárních výrazů",
         "relay_from": "Adresa \"Od:\"",
+        "relay_rcpt": "\"Komu:\" adresa",
         "relay_run": "Provést test",
         "relayhosts": "Transporty podle odesílatele",
         "relayhosts_hint": "Zde definujte transporty podle odesílatele, jež pak můžete použít v nastavení domény.<br>\r\nProtokol transportu je vždy \"smtp:\". Bere se v potaz uživatelské nastavení odchozího TLS.",
@@ -266,6 +297,7 @@
         "rsettings_preset_1": "Pro přihlášené uživatele vypnout vše kromě DKIM a omezení provozu",
         "rsettings_preset_2": "Postmasteři chtějí dostávat spam",
         "rsettings_preset_3": "Povolit jen určité odesílatele pro schránku (např. jen interní schránka)",
+        "rsettings_preset_4": "Deaktivujte Rspamd pro doménu",
         "rspamd-com_settings": "<a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd dokumentace</a>\r\n  - Název nastavení bude automaticky vygenerován, viz níže uvedené předvolby.",
         "rspamd_global_filters": "Mapa globálních filtrů",
         "rspamd_global_filters_agree": "Budu opatrný!",
@@ -277,10 +309,12 @@
         "search_domain_da": "Hledat domény",
         "send": "Odeslat",
         "sender": "Odesílatel",
+        "service": "Služba",
         "service_id": "ID podpory",
         "source": "Zdroj",
         "spamfilter": "Filtr spamu",
         "subject": "Předmět",
+        "success": "Úspěch",
         "sys_mails": "Systémové zprávy",
         "text": "Text",
         "time": "Čas",
@@ -289,6 +323,7 @@
         "to_top": "Zpět na začátek",
         "transport_dest_format": "Formát: example.org, .example.org, *, box@example.org (vícero položek lze oddělit čárkou)",
         "transport_maps": "Transportní mapy",
+        "transport_test_rcpt_info": "&#8226; Na otestování odchozí pošty je možné použít null@hosted.mailcow.de jako adresáta",
         "transports_hint": "→ Položka transportní mapy <b>přebíjí</b> transportní mapu podle odesílatele</b>.<br>\r\n→ Uživatelské nastavení odchozího TLS se ignoruje a lze je výhradně vynutit mapováním TLS pravidel.<br>\r\n→ Protokol transportu je vždy \"smtp:\".<br>\r\n→ Adresy, jež odpovídají výrazu \"/localhost$/\", se vždy předají přes \"local:\", takže nejsou zahrnuty do definice cíle \"*\".<br>\r\n→ Pro stanovení přihlašovacích údajů dalšího skoku, např. \"[host]:25\", bude Postfix <b>vždy</b> hledat nejdříve \"host\" a teprve pak \"[host]:25\". Kvůli tomu nelze použít současně \"host\" a \"[host]:25\"",
         "ui_footer": "Pata stránka (HTML povoleno)",
         "ui_header_announcement": "Oznámení",
@@ -297,9 +332,9 @@
         "ui_header_announcement_help": "Oznámení se zobrazuje všem přihlášeným uživatelům a také na přihlašovací obrazovce.",
         "ui_header_announcement_select": "Druh oznámení",
         "ui_header_announcement_type": "Druh",
+        "ui_header_announcement_type_danger": "Velmi důležité",
         "ui_header_announcement_type_info": "Informace",
         "ui_header_announcement_type_warning": "Důležité",
-        "ui_header_announcement_type_danger": "Velmi důležité",
         "ui_texts": "Hlavička a texty UI",
         "unban_pending": "čeká na odblokování",
         "unchanged_if_empty": "Pokud se nemění, ponechte prázdné",
@@ -319,12 +354,13 @@
         "aliases_in_use": "Max. počet aliasů musí být větší nebo roven %d",
         "app_name_empty": "Název aplikace nemůže být prázdný",
         "app_passwd_id_invalid": "Neplatné heslo aplikace ID %s",
-        "bcc_empty": "BCC cíl nesmí být prázdný",
-        "bcc_exists": "BCC mapování %s již existuje pro typ %s",
-        "bcc_must_be_email": "BCC mapování %s není správná email adresa",
+        "bcc_empty": "Cíl kopie nesmí být prázdný",
+        "bcc_exists": "Skrytá kopie %s již existuje pro typ %s",
+        "bcc_must_be_email": "Cíl kopie %s není správná email adresa",
         "comment_too_long": "Moc dlouhý komentář, max. 160 znaků",
         "defquota_empty": "Výchozí kvóta schránky nesmí být 0.",
         "description_invalid": "Popis zdroje %s je neplatný",
+        "dkim_domain_or_sel_exists": "DKIM klíč pro \"%s\" existuje a nebude přepsán",
         "dkim_domain_or_sel_invalid": "DKIM nebo selektor doménu je neplatný: %s",
         "domain_cannot_match_hostname": "Doména a hostname nesmí být stejné",
         "domain_exists": "Doména %s již existuje",
@@ -334,6 +370,7 @@
         "domain_quota_m_in_use": "Kvóta domény musí být větší nebo rovna %s MiB",
         "extra_acl_invalid": "Externí adresa odesílatele \"%s\" je neplatná",
         "extra_acl_invalid_domain": "Externí adresa odesílatele \"%s\" má neplatnou doménu",
+        "fido2_verification_failed": "FIDO2 ověření selhalo: %s",
         "file_open_error": "Soubor nelze otevřít k zápisu",
         "filter_type": "Špatný typ filtru",
         "from_invalid": "Odesílatel nesmí být prázdný",
@@ -377,6 +414,7 @@
         "network_host_invalid": "Neplatná síť nebo hostitel: %s",
         "next_hop_interferes": "%s koliduje se skokem %s",
         "next_hop_interferes_any": "Existující skok koliduje s %s",
+        "nginx_reload_failed": "Nginx reload selhal: %s",
         "no_user_defined": "Žádný uživatel není definován",
         "object_exists": "Objekt %s již existuje",
         "object_is_not_numeric": "Hodnota %s není číslo",
@@ -394,6 +432,7 @@
         "redis_error": "Chyba Redis: %s",
         "relayhost_invalid": "Položky %s je neplatná",
         "release_send_failed": "Zprávu nelze propustit: %s",
+        "reset_f2b_regex": "Regex filtr se nepodařilo resetovat, zkuste to znovu nebo počkejte pár sekund a obnovte stránku.",
         "resource_invalid": "Název zdroje %s je neplatný",
         "rl_timeframe": "Nesprávný časový rámec omezení provozu",
         "rspamd_ui_pw_length": "Heslo pro Rspamd UI musí mít alespoň 6 znaků",
@@ -409,6 +448,7 @@
         "targetd_relay_domain": "Cílová doména %s je předávaná",
         "temp_error": "Dočasná chyba",
         "text_empty": "Text nesmí být prázdný",
+        "tfa_token_invalid": "Neplatný TFA token",
         "tls_policy_map_dest_invalid": "Cíl mapy pravidel je neplatný",
         "tls_policy_map_entry_exists": "Položka mapy TLS pravidel \"%s\" již existuje",
         "tls_policy_map_parameter_invalid": "Parametr pravidel TLS je neplatný",
@@ -427,29 +467,35 @@
         "chart_this_server": "Graf (tento server)",
         "containers_info": "Informace o kontejnerech",
         "disk_usage": "Využití disku",
+        "docs": "Dokumentace",
         "external_logs": "Externí logy",
         "history_all_servers": "Záznam (všechny servery)",
         "in_memory_logs": "Logy v paměti",
         "jvm_memory_solr": "Spotřeba paměti JVM",
+        "last_modified": "Naposledy změněn",
         "log_info": "<p><b>Logy v paměti</b> jsou shromažďovány v Redis seznamech a jsou oříznuty na LOG_LINES (%d) každou minutu, aby se nepřetěžoval server.\r\n  <br>Logy v paměti nemají být trvalé. Všechny aplikace, které logují do paměti, zároveň logují i do Docker služby podle nastavení logging driveru.\r\n  <br>Logy v paměti lze použít pro ladění drobných problémů s kontejnery.</p>\r\n  <p><b>Externí logy</b> jsou shromažďovány pomocí API dané aplikace.</p>\r\n  <p><b>Statické logy</b> jsou většinou logy činností, které nejsou zaznamenávány do Docker služby, ale přesto je dobré je schraňovat (výjimkou jsou logy API).</p>",
+        "login_time": "Čas",
         "logs": "Logy",
+        "online_users": "Uživatelů online",
         "restart_container": "Restartovat",
+        "service": "Služba",
+        "size": "Velikost",
         "solr_dead": "Solr se spouští, je vypnutý nebo spadl.",
-        "solr_docs": "Dokumentace",
-        "solr_last_modified": "Naposledy změněn",
-        "solr_size": "Velikost",
-        "solr_started_at": "Spuštěn",
         "solr_status": "Stav Solr",
-        "solr_uptime": "Doba běhu",
+        "started_at": "Spuštěn",
         "started_on": "Spuštěno",
         "static_logs": "Statické logy",
-        "system_containers": "Systém a kontejnery"
+        "success": "Úspěch",
+        "system_containers": "Systém a kontejnery",
+        "uptime": "Doba běhu",
+        "username": "Uživatelské meno"
     },
     "diagnostics": {
         "cname_from_a": "Hodnota odvozena z A/AAAA záznamu. Lze použít, pokud záznam ukazuje na správný zdroj.",
         "dns_records": "DNS záznamy",
         "dns_records_24hours": "Upozornění: Změnám v systému DNS může trvat až 24 hodin, než se zde správně zobrazí jejich aktuální stav. Můžete zde snadno zjistit, jak nastavit DNS záznamy a zda jsou všechny záznamy správně uloženy.",
         "dns_records_data": "Správný záznam",
+        "dns_records_docs": "Přečtěte si prosím <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">dokumentaci</a>.",
         "dns_records_name": "Název",
         "dns_records_status": "Současný stav",
         "dns_records_type": "Typ",
@@ -457,19 +503,23 @@
     },
     "edit": {
         "active": "Aktivní",
+        "admin": "Upravit administrátora",
         "advanced_settings": "Pokročilá nastavení",
         "alias": "Upravit alias",
+        "allow_from_smtp": "Umožnit pouze těmto IP adresám používat <b>SMTP</b>",
+        "allow_from_smtp_info": "Nechte prázdné pro povolení všech odesílatelů.<br>IPv4/IPv6 adresy a sítě.",
+        "allowed_protocols": "Povolené protokoly",
         "app_name": "Název aplikace",
         "app_passwd": "Heslo aplikace",
         "automap": "Pokusit se automaticky mapovat složky (\"Sent items\", \"Sent\" => \"Sent\" atd.)",
         "backup_mx_options": "Možnosti záložního MX",
-        "bcc_dest_format": "BCC cíl musí být jedna platná email adresa.",
+        "bcc_dest_format": "Cíl kopie musí být jedna platná email adresa. Pokud potřebujete posílat kopie na více adres, vytvořte Alias a použijte jej zde.",
         "client_id": "ID klienta",
         "client_secret": "Tajný klíč klienta",
         "comment_info": "Soukromý komentář se nezobrazí uživateli; veřejný komentář se zobrazí jako nápověda při zastavení se kurzorem v přehledu uživatelů",
-        "delete1": "Odstranit ze zdroje po dokončení",
-        "delete2": "Smazat zprávy v cíli, které nejsou ve zdroji",
-        "delete2duplicates": "Odstranit duplicity v cílovém místě",
+        "delete1": "Odstranit ze zdrojové schránky, po dokončení přenosu",
+        "delete2": "Odstranit zprávy v cílové schránce, pokud nejsou ve zdrojové",
+        "delete2duplicates": "Odstranit duplicity v cílové schránce",
         "delete_ays": "Potvrďte odstranění.",
         "description": "Popis",
         "disable_login": "Zakázat přihlášení (ale stále přijímat poštu)",
@@ -493,8 +543,10 @@
         "hostname": "Jméno hostitele",
         "inactive": "Neaktivní",
         "kind": "Druh",
+        "lookup_mx": "Cíl je regulární výraz který se shoduje s MX záznamem (<code>.*google\\.com</code> směřuje veškerou poštu na MX které jsou cílem pro google.com přes tento skok)",
         "mailbox": "Úprava poštovní schránky",
         "mailbox_quota_def": "Výchozí kvóta schránky",
+        "mailbox_relayhost_info": "Aplikované jen na uživatelskou schránku a přímé aliasy, přepisuje předávající server domény.",
         "max_aliases": "Max. počet aliasů",
         "max_mailboxes": "Max. počet poštovních schránek",
         "max_quota": "Max. kvóta poštovní schránky (MiB)",
@@ -504,6 +556,7 @@
         "mins_interval": "Interval (min)",
         "multiple_bookings": "Vícenásobné rezervace",
         "nexthop": "Další skok",
+        "none_inherit": "Žádné / Podědit",
         "password": "Heslo",
         "password_repeat": "Potvrzení nového hesla (opakujte)",
         "previous": "Předchozí stránka",
@@ -519,6 +572,9 @@
         "pushover_vars": "Bez filtru odesílatelů se zpracují všechny příchozí zprávy.<br>Regulární výrazy i výslovné adresy lze zadat současně a budou zpracovány postupně, nezávisí na sobě.<br>Lze použít proměnné pro text a předmět upozornění (pozor na ochranu osobních údajů apod.)",
         "pushover_verify": "Ověřit přihlašovací údaje",
         "quota_mb": "Kvóta (MiB)",
+        "quota_warning_bcc": "Upozornění na kvótu BCC",
+        "quota_warning_bcc_info": "Upozornění budou poslány jako samostatné kopie následujícím příjemcům. Předmět bude doplněn o uživatelské jméno v závorkách, příklad: <code>Upozornění na kvótu (user@example.com)</code>.",
+        "ratelimit": "Omezení přenosu",
         "redirect_uri": "URL přesměrování/odvolání",
         "relay_all": "Předávání všech příjemců",
         "relay_all_info": "<small>Pokud se rozhodnete <b>nepředávat</b> všechny příjemce, musíte přidat prázdnou poštovní schránku pro každého příjemce, který se má předávat.</small>",
@@ -531,7 +587,7 @@
         "save": "Uložit změny",
         "scope": "Rozsah",
         "sender_acl": "Povolit odesílání jako",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Kontrola odesílatele vypnuta</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Kontrola odesílatele vypnuta</span>",
         "sender_acl_info": "Má-li uživatel schránky A dovoleno odesílat jako uživatel schránky B, nezobrazuje se adresa odesílatele B v seznamu \"Od\" v SOGo automaticky.<br>\r\n  Uživatel schránky A musí nejdříve v SOGo vytvořit pověření, jež umožní uživateli B vybrat svou adresu jako odesílatele. Tento mechanismus neplatí pro aliasy.",
         "sieve_desc": "Krátký popis",
         "sieve_type": "Typ filtru",
@@ -541,27 +597,44 @@
         "sogo_visible": "Alias dostupný v SOGo",
         "sogo_visible_info": "Tato volba určuje objekty, jež lze zobrazit v SOGo (sdílené nebo nesdílené aliasy, jež ukazuje alespoň na jednu schránku).",
         "spam_alias": "Vytvořit nebo změnit dočasné aliasy",
+        "spam_filter": "Spam filtr",
         "spam_policy": "Přidat nebo odebrat položky whitelistu/blacklistu",
         "spam_score": "Nastavte vlastní skóre spamu",
         "subfolder2": "Synchronizace do podsložky v cílovém umístění<br><small>(prázdné = nepoužívat podsložku)</small>",
         "syncjob": "Upravit synchronizační úlohu",
         "target_address": "Cílová adresa/y<br /> <small>(oddělte čárkou)</small>",
         "target_domain": "Cílová doména",
-        "timeout1": "Časový limit pro připojení ke vzdálenému hostiteli",
-        "timeout2": "Časový limit pro připojení k lokálnímu hostiteli",
+        "timeout1": "Časový limit pro připojení ke vzdálenému serveru",
+        "timeout2": "Časový limit pro připojení k lokálnímu serveru",
         "title": "Úprava objektu",
         "unchanged_if_empty": "Pokud se nemění, ponechte prázdné",
         "username": "Uživatelské jméno",
         "validate_save": "Ověřit a uložit"
     },
+    "fido2": {
+        "confirm": "Potvrdit",
+        "fido2_auth": "Přihlásit se přes FIDO2",
+        "fido2_success": "Zařízení úspěšně zaregistrované",
+        "fido2_validation_failed": "Ověření selhalo",
+        "fn": "Uživatelsky přívětivý název",
+        "known_ids": "Známe ID",
+        "none": "Vypnuto",
+        "register_status": "Stav registrace",
+        "rename": "Přejmenovat",
+        "set_fido2": "Registrovat FIDO2 zařízení",
+        "set_fn": "Nastavi uživatelsky přívětivý název",
+        "start_fido2_validation": "Spustit FIDO2 ověření"
+    },
     "footer": {
         "cancel": "Zrušit",
         "confirm_delete": "Potvdit smazání",
         "delete_now": "Smazat",
         "delete_these_items": "Prosím potvrďte změny objektu id:",
+        "hibp_check": "Ověřit heslo v databázi hacknutých hesel haveibeenpwned.com",
         "hibp_nok": "Nalezeno! Toto je potenciálně nebezpečné heslo!",
         "hibp_ok": "Nebyla nalezena žádná shoda.",
         "loading": "Prosím čekejte...",
+        "nothing_selected": "Není nic vybráno",
         "restart_container": "Restartovat kontejner",
         "restart_container_info": "<b>Důležité:</b> Šetrný restart může chvíli trvat, prosím čekejte...",
         "restart_now": "Restartovat nyní",
@@ -585,8 +658,10 @@
     },
     "login": {
         "delayed": "Přihlášení zpožděno o %s sekund.",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "login": "Přihlásit",
         "mobileconfig_info": "Ke stažení profilového souboru se přihlaste jako uživatel schránky.",
+        "other_logins": "Přihlášení klíčem",
         "password": "Heslo",
         "username": "Uživatelské jméno"
     },
@@ -596,7 +671,8 @@
         "active": "Aktivní",
         "add": "Přidat",
         "add_alias": "Přidat alias",
-        "add_bcc_entry": "Přidat BCC mapu",
+        "add_alias_expand": "Rozšířit alias o alias domény",
+        "add_bcc_entry": "Přidat skrytou kopii",
         "add_domain": "Přidat doménu",
         "add_domain_alias": "Přidat doménový alias",
         "add_domain_record_first": "Prosím nejdříve vytvořte doménu",
@@ -610,26 +686,31 @@
         "alias_domain_alias_hint": "Aliasy <b>neplatí</b> automaticky pro doménové aliasy. Alias <code>muj-alias@domena</code> <b>neplatí</b> pro <code>muj-alias@domena2</code> (kde \"domena2\" je imaginární doménový alias pro \"domena\").<br>K přesměrování pošty na externí schránku použijte SIEVE filtr (viz záložka \"Filtry\" nebo SOGo -> Forwarder).",
         "alias_domain_backupmx": "Doménový alias není aktivní pro předávanou doménu",
         "aliases": "Aliasy",
+        "all_domains": "Všechny domény",
+        "allow_from_smtp": "Umožnit pouze těmto IP adresám používat <b>SMTP</b>",
+        "allow_from_smtp_info": "Nechte prázdné pro povolení všech odesílatelů.<br>IPv4/IPv6 adresy a sítě.",
+        "allowed_protocols": "Povolené protokoly",
         "backup_mx": "Záložní MX",
         "bcc": "BCC",
-        "bcc_destination": "BCC cíl",
-        "bcc_destinations": "BCC cíl",
-        "bcc_info": "Mapa BCC se používá pro tiché předávání kopií všech zpráv na jinou adresu. Mapa příjemců se použije, pokud je místní cíl příjemcem zprávy.<br/>\r\n  Mapa odesílatelů podléhá obdobnému principu. Místní cíl nebude informován o neúspěšném doručení.",
-        "bcc_local_dest": "Místní cíl",
-        "bcc_map": "BCC mapování",
-        "bcc_map_type": "Typ BCC",
-        "bcc_maps": "BCC mapy",
-        "bcc_rcpt_map": "Mapa příjemců",
-        "bcc_sender_map": "Mapa odesílatelů",
-        "bcc_to_rcpt": "Přepnout na mapu příjemců",
-        "bcc_to_sender": "Přepnout na mapu odesílatelů",
-        "bcc_type": "Typ BCC",
+        "bcc_destination": "Cíl kopie",
+        "bcc_destinations": "Cíl kopií",
+        "bcc_info": "Skryté kopie (Mapa BCC) se používá pro tiché předávání kopií všech zpráv na jinou adresu. Při použití skryté kopie typu <i>Přijatý e-mail</i> budou přeposlány všechny maily směřující na dotyčnou adresu nebo doménu.\nU typu <i>Odeslaný e-mail</i> budou přeposlány všechny maily odeslané z dotyčné adresy nebo domény.\nPokud selže přeposlání na cílovou adresu, tak odesílatel o tom nebude informován.",
+        "bcc_local_dest": "Týká se",
+        "bcc_map": "Skrytá kopie",
+        "bcc_map_type": "Typ skryté kopie",
+        "bcc_maps": "Skryté kopie",
+        "bcc_rcpt_map": "Přijatý e-mail",
+        "bcc_sender_map": "Odeslaný e-mail",
+        "bcc_to_rcpt": "Přepnout typ na Přijatý e-mail",
+        "bcc_to_sender": "Přepnout typ na Odeslaný e-mail",
+        "bcc_type": "Typ skryté kopie",
         "booking_0": "Vždy volno",
         "booking_0_short": "Vždy volno",
         "booking_custom": "Omezeno na pevný počet rezervací",
         "booking_custom_short": "Pevný limit",
         "booking_lt0": "Neomezeno, ale po rezervaci se ukazuje jako obsazené",
         "booking_lt0_short": "Volný limit",
+        "catch_all": "Doménový koš",
         "daily": "Každý den",
         "deactivate": "Vypnout",
         "description": "Popis",
@@ -644,18 +725,23 @@
         "empty": "Žádné výsledky",
         "enable_x": "Zapnout",
         "excludes": "Vyloučené",
-        "filter_table": "Tabulka filtrů",
+        "filter_table": "Filtrovat tabulku",
         "filters": "Filtry",
         "fname": "Celé jméno",
+        "goto_ham": "Učit se jako <b>ham</b>",
+        "goto_spam": "Učit se jako <b>spam</b>",
         "hourly": "Každou hodinu",
         "in_use": "Obsazeno (%)",
         "inactive": "Neaktivní",
         "insert_preset": "Vložit ukázkovou položku \"%s\"",
         "kind": "Druh",
         "last_mail_login": "Poslední přihlášení",
+        "last_pw_change": "Naposledy změněno heslo",
         "last_run": "Naposledy spuštěno",
-        "last_run_reset": "Plánovat další",
+        "last_run_reset": "Znovu naplánovat",
         "mailbox": "Poštovní schránka",
+        "mailbox_defaults": "Výchozí nastavení",
+        "mailbox_defaults_info": "Definuje výchozí nastavení pro nové schránky",
         "mailbox_defquota": "Výchozí velikost schránky",
         "mailbox_quota": "Max. velikost schránky",
         "mailboxes": "Poštovní schránky",
@@ -666,11 +752,17 @@
         "no": "&#10005;",
         "no_record": "Žádný záznam pro objekt %s",
         "no_record_single": "Žádný záznam",
+        "open_logs": "Otevřít záznam",
         "owner": "Vlastník",
         "private_comment": "Soukromý komentář",
         "public_comment": "Veřejný komentář",
+        "q_add_header": "Složka nevyžádaná pošta",
+        "q_all": "Všechny kategorie",
+        "q_reject": "Odmítnuta",
+        "quarantine_category": "Kategorie oznámení karantény",
         "quarantine_notification": "Upozornění z karantény",
         "quick_actions": "Akce",
+        "recipient": "Přijatý e-mail",
         "recipient_map": "Mapa příjemce",
         "recipient_map_info": "Mapy příjemců slouží k nahrazení cílové adresy zprávy před doručením.",
         "recipient_map_new": "Nový přijemce",
@@ -681,6 +773,7 @@
         "remove": "Smazat",
         "resources": "Zdroje",
         "running": "Běží",
+        "sender": "Odeslaný e-mail",
         "set_postfilter": "Označit jako post-filtr)",
         "set_prefilter": "Označit jako pre-filtr",
         "sieve_info": "Můžete uložit více filtrů pro každého uživatele, ale současně může být aktivní pouze jeden prefilter a jeden postfilter.<br>\r\nKaždý filtr bude proveden v daném pořadí. Ani chyba při vykonávání skriptu nebo snaha o pozdržení nezastaví vykonání dalších skriptů.<br><br>Global sieve prefilter → Prefilter → Uživatelské skripty → Postfilter → Global sieve postfilter",
@@ -693,7 +786,6 @@
         "sieve_preset_7": "Přesměrovat a ponechat/zahodit",
         "sieve_preset_8": "Zahodit zprávu poslanou na alias, do něhož patří i odesílatel",
         "sieve_preset_header": "Vizte následující ukázková pravidla. Více informací na <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedii</a>.",
-        "sogo_allow_admin_hint": "Přihlásit se do SOGo jako správce může jen uživatel s existujícím profilem SOGo. Uživatel se musí do SOGo alespoň jednou přihlásit.",
         "sogo_visible": "Alias dostupný v SOGo",
         "sogo_visible_n": "Skrýt alias v SOGo",
         "sogo_visible_y": "Zobrazit alias v SOGo",
@@ -713,8 +805,8 @@
         "tls_map_parameters_info": "Prázdné nebo parametry, například: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Pravidlo",
         "tls_policy_maps": "Mapy TLS pravidel",
-        "tls_policy_maps_info": "Tato mapa přepisuje pravidla odchozích TLS nezávisle na TLS nastavení uživatele.<br>\r\n  Pro více informací prosím prostudujte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">dokumentaci k \"smtp_tls_policy_maps\"</a>.",
         "tls_policy_maps_enforced_tls": "Tato pravidla také přepisují chování pro schránky, jež mají nastaveno vynucené odchozí TLS spojení. Pokud zde nejsou žádná pravidla, tyto schránky použijí výchozí hodnoty nastavené v <code>smtp_tls_mandatory_protocols</code> a <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "Tato mapa přepisuje pravidla odchozích TLS nezávisle na TLS nastavení uživatele.<br>\r\n  Pro více informací prosím prostudujte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">dokumentaci k \"smtp_tls_policy_maps\"</a>.",
         "tls_policy_maps_long": "Přepisování pravidel odchozího TLS",
         "toggle_all": "Označit vše",
         "username": "Uživatelské jméno",
@@ -735,12 +827,16 @@
         "action": "Akce",
         "atts": "Přílohy",
         "check_hash": "Hledat hash na serveru VT",
+        "confirm": "Potvrdit",
         "confirm_delete": "Potvrdit smazání prvku.",
         "danger": "Nebezpečí",
+        "deliver_inbox": "Doručit do schránky",
         "disabled_by_config": "Funkce karanténa je momentálně vypnuta v nastavení systému.",
         "download_eml": "Stáhnout (.eml)",
         "empty": "Žádné výsledky",
         "high_danger": "Vysoké nebezpečí",
+        "info": "Informace",
+        "junk_folder": "Složka nevyžádaná pošta",
         "learn_spam_delete": "Naučit jako spam a smazat",
         "low_danger": "Malé nebezpečí",
         "medium_danger": "Střední nebezpečí",
@@ -748,30 +844,44 @@
         "notified": "Oznámeno",
         "qhandler_success": "Požadavek úspěšně přijat. Můžete nyní zavřít okno.",
         "qid": "Rspamd QID",
+        "qinfo": "Karanténní systém uloží odmítnutou poštu do databáze (odesílatel se <em>nedozví</em>, že pošta byla doručena) jakož i pošta, která bude jako kopie doručena do složky Nevyžádaná pošta. \r\n<br>\"Naučit jako spam a smazat\" naučí zprávu jako spam přes Bayesian theorem a současně vypočítá fuzzy hashes pro odmítnutí podobných zpráv v budoucnosti. \r\n<br> Prosím, berte na vědomí, že naučení více zpráv může být - záleží na vašem systému - časově náročné . <br> Položky na černé listině jsou z karantény vyloučeny.",
         "qitem": "Položka v karanténě",
         "quarantine": "Karanténa",
         "quick_actions": "Akce",
+        "quick_delete_link": "Odkaz na rychlé odstranění",
+        "quick_info_link": "Otevřít link pro info",
+        "quick_release_link": "Odkaz na rychlé propuštění",
         "rcpt": "Příjemce",
         "received": "Přijato",
         "recipients": "Příjemci",
         "refresh": "Obnovit",
+        "rejected": "odmítnuto",
         "release": "Propustit",
         "release_body": "Zpráva připojena jako příloha EML k této zprávě.",
         "release_subject": "Potenciálně škodlivá položka v karanténě %s",
         "remove": "Smazat",
+        "rewrite_subject": "Přepsat předmět",
         "rspamd_result": "Skóre Rspamd",
         "sender": "Odesílatel (SMTP)",
         "sender_header": "Odesílatel (hlavička \"From\")",
-        "quick_release_link": "Odkaz na rychlé propuštění",
-        "quick_delete_link": "Odkaz na rychlé odstranění",
+        "settings_info": "Maximální množství položek které se umístí do karantény: %s<br>Maximální velikost emailu: %s MiB",
         "show_item": "Zobrazit položku",
+        "spam": "Spam",
         "spam_score": "Skóre",
         "subj": "Předmět",
         "table_size": "Velikost tabulky",
         "table_size_show_n": "Zobrazit %s položek",
         "text_from_html_content": "Obsah (konvertované html)",
         "text_plain_content": "Obsah (text/plain)",
-        "toggle_all": "Označit vše"
+        "toggle_all": "Označit vše",
+        "type": "Typ"
+    },
+    "ratelimit": {
+	    "disabled": "Vypnuto",
+	    "second": "zpráv za sekundu",
+	    "minute": "zpráv za minutu",
+	    "hour": "zpráv za hodinu",
+	    "day": "zpráv za den"
     },
     "start": {
         "help": "Zobrazit/skrýt panel nápovědy",
@@ -813,7 +923,7 @@
         "domain_removed": "Doména %s odebrána",
         "dovecot_restart_success": "Dovecot byl úspěšně restartován",
         "eas_reset": "ActiveSync zařízení uživatele %s vyresetováno",
-        "f2b_modified": "Změny parametrů Fail2ban uloženy",
+        "f2b_modified": "Změny v parametrech automatického firewallu uloženy",
         "forwarding_host_added": "Předávající hostitel %s přidán",
         "forwarding_host_removed": "Předávající hostitel %s odebrán",
         "global_filter_written": "Filtr byl úspěšně zapsán",
@@ -828,7 +938,9 @@
         "mailbox_added": "Poštovní schránka %s přidána",
         "mailbox_modified": "Změny poštovní schránky %s uloženy",
         "mailbox_removed": "Poštovní schránka %s  odebrána",
+        "nginx_reloaded": "Nginx reload byl úspěšný",
         "object_modified": "Změny objektu %s uloženy",
+        "password_policy_saved": "Politika hesel byla úspěšně uložena",
         "pushover_settings_edited": "Nastavení Pushover uloženo, ověřte přihlašovací údaje.",
         "qlearn_spam": "Zpráva ID %s naučena jako spam a smazána",
         "queue_command_success": "Příkaz pro frontu úspěšně dokončen",
@@ -850,6 +962,7 @@
         "tls_policy_map_entry_saved": "Položka mapy TLS pravidel \"%s\" uložena",
         "ui_texts": "Změny UI textů uloženy",
         "upload_success": "Soubor úspěšně nahrán",
+        "verified_fido2_login": "Ověřené FIDO2 přihlášení",
         "verified_totp_login": "TOTP přihlášení ověřeno",
         "verified_u2f_login": "U2F přihlášení ověřeno",
         "verified_yotp_login": "Yubico OTP přihlášení ověřeno"
@@ -871,7 +984,8 @@
         "select": "Prosím vyberte...",
         "set_tfa": "Nastavení způsobu dvoufaktorového ověření",
         "start_u2f_validation": "Zahájit inicializaci",
-        "tfa": "Dvoufaktorové ověření",
+        "tfa": "Dvoufaktorové ověření (TFA)",
+        "tfa_token_invalid": "Neplatný TFA token",
         "totp": "Časově založené OTP (Google Authenticator, Authy apod.)",
         "u2f": "U2F ověření",
         "waiting_usb_auth": "<i>Čeká se na USB zařízení...</i><br><br>Prosím stiskněte tlačítko na svém U2F USB zařízení.",
@@ -900,9 +1014,11 @@
         "apple_connection_profile_complete": "Tento profil obsahuje parametry připojení k IMAP, SMTP, CalDAV (kalendáře) a CardDAV (kontakty) pro zařízení Apple.",
         "apple_connection_profile_mailonly": "Tento profil obsahuje parametry připojení k IMAP a SMTP pro zařízení Apple.",
         "change_password": "Změnit heslo",
+        "clear_recent_successful_connections": "Vymazat nedávné úspěšné přihlášení",
         "client_configuration": "Zobrazit průvodce nastavením e-mailových klientů a smartphonů",
         "create_app_passwd": "Vytvořit heslo aplikace",
         "create_syncjob": "Vytvořit novou synchronizační úlohu",
+        "created_on": "Vytvoreno",
         "daily": "Každý den",
         "day": "den",
         "delete_ays": "Potvrďte odstranění.",
@@ -914,22 +1030,33 @@
         "edit": "Upravit",
         "email": "Pošta",
         "email_and_dav": "Pošta, kalendáře a kontakty",
+        "empty": "Nejsou k dispozici žádné záznamy",
         "encryption": "Šifrování",
         "excludes": "Vyloučené",
         "expire_in": "Vyprší za",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "force_pw_update": "Pro přístup k groupware funkcím <b>musíte změnit heslo</b>.",
+        "from": "od",
         "generate": "vytvořit",
         "hour": "hodinu",
         "hourly": "Každou hodinu",
         "hours": "hodin",
         "in_use": "Obsazeno",
         "interval": "Interval",
-        "is_catch_all": "Catch-all pro doménu/y",
+        "is_catch_all": "Doménový koš",
         "last_mail_login": "Poslední přihlášení",
+        "last_pw_change": "Naposledy změněno heslo",
         "last_run": "Naposledy spuštěno",
+        "last_ui_login": "Poslední přihlášení do web rozhraní",
         "loading": "Načítá se...",
+        "login_history": "Historie přihlášení",
+        "mailbox": "Poštová schránka",
         "mailbox_details": "Podrobnosti poštovní schránky",
+        "mailbox_general": "Obecné",
+        "mailbox_settings": "Nastavení",
         "messages": "zpráv",
+        "month": "měsíc",
+        "months": "měsíce",
         "never": "Nikdy",
         "new_password": "Nové heslo",
         "new_password_description": "Požadavek: min. délka 6 znaků, písmena a čísla.",
@@ -937,6 +1064,8 @@
         "no_active_filter": "Není k dispozici žádný aktivní filtr",
         "no_last_login": "Žádný záznam o přihlášení",
         "no_record": "Žádný záznam",
+        "open_logs": "Otevřít záznam",
+        "open_webmail_sso": "Přihlaste se do webmailu",
         "password": "Heslo",
         "password_now": "Současné heslo (pro potvrzení změny)",
         "password_repeat": "Heslo (znovu)",
@@ -949,8 +1078,14 @@
         "pushover_title": "Předmět upozornění",
         "pushover_vars": "Bez filtru odesílatelů se zpracují všechny příchozí zprávy.<br>Regulární výrazy i výslovné adresy lze zadat současně a budou zpracovány postupně, nezávisí na sobě.<br>Lze použít proměnné pro text a předmět upozornění (pozor na ochranu osobních údajů apod.)",
         "pushover_verify": "Ověřit přihlašovací údaje",
+        "q_add_header": "Složka nevyžádaná pošta",
+        "q_all": "Všechny kategorie",
+        "q_reject": "Odmítnuta",
+        "quarantine_category": "Kategorie oznámení karantény",
+        "quarantine_category_info": "Kategorie oznámení \"Odmítnuta\" zahrnuje poštu která byla odmítnuta, a \"Nevyžádaná pošta\" zahrnuje oznámení o poště uložené do složky Nevyžádaná pošta.",
         "quarantine_notification": "Upozornění z karantény",
         "quarantine_notification_info": "Jakmile se upozornění odešle, budou příslušné položky vyznačeny jako \"upozorněné\" a nebude pro ně odesláno žádné další upozornění.",
+        "recent_successful_connections": "Nedávné úspěšné přihlášení",
         "remove": "Smazat",
         "running": "Běží",
         "save": "Uložit změny",
@@ -967,7 +1102,7 @@
         "spamfilter": "Filtr spamu",
         "spamfilter_behavior": "Hodnocení",
         "spamfilter_bl": "Seznam zakázaných adres (blacklist)",
-        "spamfilter_bl_desc": "Zakázané emailové adresy <b>budou vždy klasifikovány jako spam a odmítnuty</b>. Lze použít zástupné znaky (*). Filtr se použije pouze na přímé aliasy (s jednou cílovou poštovní schránkou), s výjimkou aliasů typu catch-all a samotné poštovní schránky.",
+        "spamfilter_bl_desc": "Zakázané emailové adresy <b>budou vždy klasifikovány jako spam a odmítnuty</b>. Lze použít zástupné znaky (*). Filtr se použije pouze na přímé aliasy (s jednou cílovou poštovní schránkou), s výjimkou doménových košů a samotné poštovní schránky.",
         "spamfilter_default_score": "Výchozí hodnoty:",
         "spamfilter_green": "Zelená: tato zpráva není spam",
         "spamfilter_hint": "První hodnota představuje \"nízké spam skóre\" a druhá \"vysoké spam skóre\".",
@@ -979,7 +1114,7 @@
         "spamfilter_table_remove": "smazat",
         "spamfilter_table_rule": "Pravidlo",
         "spamfilter_wl": "Seznam povolených adres (whitelist)",
-        "spamfilter_wl_desc": "Povolené emailové adresy <b>nebudou nikdy klasifikovány jako spam</b>. Lze použít zástupné znaky (*). Filtr se použije pouze na přímé aliasy (s jednou cílovou poštovní schránkou), s výjimkou aliasů typu catch-all a samotné poštovní schránky.",
+        "spamfilter_wl_desc": "Povolené emailové adresy <b>nebudou nikdy klasifikovány jako spam</b>. Lze použít zástupné znaky (*). Filtr se použije pouze na přímé aliasy (s jednou cílovou poštovní schránkou), s výjimkou doménových košů a samotné poštovní schránky.",
         "spamfilter_yellow": "Žlutá: tato zpráva může být spam, bude označena jako spam a přesunuta do složky nevyžádané pošty",
         "status": "Stav",
         "sync_jobs": "Synchronizační úlohy",
@@ -1001,7 +1136,9 @@
         "waiting": "Čekání",
         "week": "týden",
         "weekly": "Každý týden",
-        "weeks": "týdny"
+        "weeks": "týdny",
+        "year": "rok",
+        "years": "let"
     },
     "warning": {
         "cannot_delete_self": "Nelze smazat právě přihlášeného uživatele",
@@ -1010,6 +1147,7 @@
         "fuzzy_learn_error": "Chyba při učení Fuzzy hash: %s",
         "hash_not_found": "Hash nenalezen",
         "ip_invalid": "Přeskočena neplatná IP: %s",
+        "is_not_primary_alias": "Přeskočit ne-primární alias %s",
         "no_active_admin": "Nelze deaktivovat posledního aktivního správce",
         "quota_exceeded_scope": "Kvóta domény překročena: v této doméně lze vytvořit jen neomezené schránky.",
         "session_token": "Token formuláře není platný: Token mismatch",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.da.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.da.json
new file mode 100644
index 0000000..3b467a3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.da.json
@@ -0,0 +1,1080 @@
+{
+    "acl": {
+        "alias_domains": "Tilføj kældenavn domæner",
+        "app_passwds": "Administrer app-adgangskoder",
+        "bcc_maps": "BCC kort",
+        "delimiter_action": "Afgrænsning handling",
+        "eas_reset": "Nulstil EAS endheder",
+        "extend_sender_acl": "Tillad at udvide afsenderens ACL med eksterne adresser",
+        "filters": "Filtre",
+        "login_as": "Login som mailboks bruger",
+        "prohibited": "Forbudt af ACL",
+        "protocol_access": "Ændre protokol adgang",
+        "pushover": "Pushover",
+        "quarantine": "Karantæneaktioner",
+        "quarantine_attachments": "Karantæne vedhæftede filer",
+        "quarantine_notification": "Skift karantænemeddelelser",
+        "ratelimit": "Satsgrænse",
+        "recipient_maps": "Modtagerkort",
+        "smtp_ip_access": "Skift tilladte værter til SMTP",
+        "sogo_access": "Tillad styring af SOGo-adgang",
+        "sogo_profile_reset": "Nulstil SOGo-profil",
+        "spam_alias": "Midlertidige aliasser",
+        "spam_policy": "Sortliste / hvidliste",
+        "spam_score": "Spam-score",
+        "syncjobs": "Synkroniser job",
+        "tls_policy": "TLS politik",
+        "unlimited_quota": "Ubegrænset quote for mailbokse",
+        "domain_desc": "Skift domæne beskrivelse",
+        "xmpp_admin": "Promover XMPP-bruger til administrator",
+        "xmpp_domain_access": "Konfigurer XMPP-domæneadgang",
+        "xmpp_mailbox_access": "Konfigurer XMPP-brugeradgang",
+        "xmpp_prefix": "Skift XMPP-underdomæne (præfiks)"
+    },
+    "add": {
+        "activate_filter_warn": "Alle andre filtre deaktiveres, når aktiv er markeret.",
+        "active": "Aktiv",
+        "add": "Tilføj",
+        "add_domain_only": "Tilføj kun domæne",
+        "add_domain_restart": "Tilføj domæne og genstart SOGo",
+        "alias_address": "Alias adresse (r)",
+        "alias_address_info": "<small>Fuld e-mail-adresse eller @ eksempel.com for at fange alle beskeder til et domæne (kommasepareret). <b> kun mailcow-domæner</b>.</small>",
+        "alias_domain": "Alias-domæne",
+        "alias_domain_info": "<small>Kun gyldige domænenavne (kommasepareret).</small>",
+        "app_name": "App navn",
+        "app_password": "Tilføj app-adgangskode",
+        "automap": "Prøv at automatisere mapper (\"Sendte emner\", \"Sendt\" => \"Sendt\" etc.)",
+        "backup_mx_options": "Relæindstillinger",
+        "comment_info": "En privat kommentar er ikke synlig for brugeren, mens en offentlig kommentar vises som et værktøjstip, når den svæver i brugeroversigten",
+        "custom_params": "Brugerdefinerede parametre",
+        "custom_params_hint": "Rigtigt: --param=xy, forkert: --param xy",
+        "delete1": "Slet fra kilden, når den er afsluttet",
+        "delete2": "Slet meddelelser på destinationen, der ikke er fra kilden",
+        "delete2duplicates": "Slet duplikater på destinationen",
+        "description": "Beskrivelse",
+        "destination": "Bestemmelsessted",
+        "disable_login": "Tillad ikke login (indgående mail accepteres stadig)",
+        "domain": "Domæne",
+        "domain_matches_hostname": "Domæne %s matcher værtsnavn",
+        "domain_quota_m": "Samlet domænekvote (Mb)",
+        "enc_method": "Krypteringsmetode",
+        "exclude": "Ekskluder objekter (regex)",
+        "full_name": "Fulde navn",
+        "gal": "Global adresseliste",
+        "gal_info": "GAL indeholder alle objekter i et domæne og kan ikke redigeres af nogen bruger. Information om ledig / optaget i SOGo mangler, hvis deaktiveret! <b> Genstart SOGo for at anvende ændringer. </b>",
+        "generate": "generere",
+        "goto_ham": "Lær som <span class=\"text-success\"><b>ham</b></span>",
+        "goto_null": "Kassér e-mail i stilhed",
+        "goto_spam": "Lær som <span class=\"text-danger\"><b>spam</b></span>",
+        "hostname": "Vært",
+        "inactive": "Inaktiv",
+        "kind": "slags",
+        "mailbox_quota_def": "Standardpostkassekvote",
+        "mailbox_quota_m": "Maks. kvote pr. postkasse (Mb)",
+        "mailbox_username": "Brugernavn (venstre del af en e-mail-adressen)",
+        "max_aliases": "Maks. mulige aliasser",
+        "max_mailboxes": "Maks. mulige postkasser",
+        "mins_interval": "Afstemningsinterval (minuter)",
+        "multiple_bookings": "Flere bookinger",
+        "nexthop": "Næste hop",
+        "password": "Kodeord",
+        "password_repeat": "Bekræft adgangskode (gentag)",
+        "port": "Port",
+        "post_domain_add": "SOGo-containeren, \"sogo-mailcow\", skal genstartes efter tilføjelse af et nyt domæne! <br> <br> Derudover skal domænernes DNS-konfiguration gennemgås. Når DNS-konfigurationen er godkendt, skal du genstarte \"acme-mailcow\" for automatisk at generere certifikater til dit nye domæne (autoconfig.&lt;domain&gt;, autodiscover.&lt;domain&gt;).<br>Dette trin er valgfrit og vil blive prøvet igen hver 24. time.",
+        "private_comment": "Privat kommentar",
+        "public_comment": "Offentlig kommentar",
+        "quota_mb": "Kvota (Mb)",
+        "relay_all": "Send alle modtagere videre",
+        "relay_all_info": "↪ Hvis du vælger <b> ikke </b> at videresende alle modtagere, skal du tilføje et (\"blind\") postkasse til hver enkelt modtager, der skal videresendes.",
+        "relay_domain": "Send dette domæne videre",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Du kan definere transportkort til en tilpasset destination for dette domæne. Hvis ikke indstillet, foretages der et MX-opslag.",
+        "relay_unknown_only": "Videresend kun ikke-eksisterende postkasser. Eksisterende postkasser leveres lokalt.",
+        "relayhost_wrapped_tls_info": "Vær sød <b>ikke</b> at bruge TLS-indpakkede porte (bruges mest på port 465) .<br>\r\nBrug en ikke-pakket port, og udgiv STARTTLS. En TLS-politik til at håndhæve TLS kan oprettes i \"TLS policy maps\".",
+        "select": "Vælg venligst...",
+        "select_domain": "Vælg først et domæne",
+        "sieve_desc": "Kort beskrivelse",
+        "sieve_type": "Filtertype",
+        "skipcrossduplicates": "Spring duplikatbeskeder over mapper (først til mølle)",
+        "subscribeall": "Abonner på alle mapper",
+        "syncjob": "Tilføj synkroniseringsjob",
+        "syncjob_hint": "Vær opmærksom på, at adgangskoder skal gemmes som almindelig tekst!",
+        "target_address": "Gå til adresser",
+        "target_address_info": "<small>Fuld e-mail-adresser (komma-adskilt).</small>",
+        "target_domain": "Måldomæne",
+        "timeout1": "Timeout for forbindelse til ekstern vært",
+        "timeout2": "Timeout for forbindelse til lokal vært",
+        "username": "Brugernavn",
+        "validate": "Bekræft",
+        "validation_success": "Valideret med succes"
+    },
+    "admin": {
+        "access": "Adgang",
+        "action": "Handling",
+        "activate_api": "Aktivér API",
+        "activate_send": "Aktivér send knap",
+        "active": "Aktiv",
+        "active_rspamd_settings_map": "Kort over aktive indstillinger",
+        "add": "Tilføj",
+        "add_admin": "tilføj administrator",
+        "add_domain_admin": "tilføj domæne administrator",
+        "add_forwarding_host": "Tilføj videresendelsesvært",
+        "add_relayhost": "Tilføj afsenderafhængig transport",
+        "add_relayhost_hint": "Vær opmærksom på, at godkendelsesdata, hvis nogen, gemmes som almindelig tekst.",
+        "add_row": "Tilføj række",
+        "add_settings_rule": "Tilføj indstillingsregel",
+        "add_transport": "Tilføj transport",
+        "add_transports_hint": "Vær opmærksom på, at hvis nogen godkendelsesdata lagres gemmes det som almindelig tekst.",
+        "additional_rows": " yderligere rækker blev tilføjet",
+        "admin": "Administrator",
+        "admin_details": "Rediger administratoroplysninger",
+        "admin_domains": "Domænetildelinger",
+        "advanced_settings": "Advanceret indstillinger",
+        "api_allow_from": "Tillad API adgang fra disse IP'er/CIDR netværksnotationer",
+        "api_info": "API'en er et igangværende arbejde. Dokumentationen kan findes på <a href=\"/api\">/api</a>",
+        "api_key": "API nøgle",
+        "api_skip_ip_check": "Spring IP tjek over for API",
+        "app_links": "App links",
+        "app_name": "App navn",
+        "apps_name": "\"mailcow Apps\" navn",
+        "arrival_time": "Ankomst tid (server tid)",
+        "authed_user": "Auth. bruger",
+        "ays": "Er du sikker på, at du vil fortsætte?",
+        "ban_list_info": "Se en liste over forbudte IP'er nedenfor: <b>netværk (resterende forbudstid) - [handlinger]</b>.<br />IPs, der står i kø for at blive ikke-spærret, vil blive fjernet fra listen over aktive forbud inden for få sekunder.<br />Red etiketter angiver aktive permanente forbud ved sortlistning. Er du sikker på, at du vil fortsætte",
+        "change_logo": "Skift logo",
+        "configuration": "Konfiguration",
+        "credentials_transport_warning": "<b>Advarsel</b>: Tilføjelse af en ny transportkortpost opdaterer legitimationsoplysningerne for alle poster med en matchende nexthop-kolonne.",
+        "customer_id": "Kunde ID",
+        "customize": "Tilpas",
+        "delete_queue": "Slet alt",
+        "destination": "Bestemmelsessted",
+        "dkim_add_key": "Tilføj ARC/DKIM nøgle",
+        "dkim_domains_selector": "Vælger",
+        "dkim_domains_wo_keys": "Vælg domæner med manglende nøgler",
+        "dkim_from": "Fra",
+        "dkim_from_title": "Kildedomæne at kopiere data fra",
+        "dkim_key_length": "DKIM nøgle længde (bits)",
+        "dkim_key_missing": "Nøgle mangler",
+        "dkim_key_unused": "Nøgle ubrugt",
+        "dkim_key_valid": "Nøglen er gyldig",
+        "dkim_keys": "ARC/DKIM nøgler",
+        "dkim_overwrite_key": "Overskriv nuværende DKIM nøgle",
+        "dkim_private_key": "Privat nøgle",
+        "dkim_to": "Til",
+        "dkim_to_title": "Måldomæne (r) - vil blive overskrevet",
+        "domain": "Domæne",
+        "domain_admin": "Domæne administrator",
+        "domain_admins": "Domæne administrators",
+        "domain_s": "Domæne/r",
+        "duplicate": "Duplikere",
+        "duplicate_dkim": "Duplikere DKIM optegnelse",
+        "edit": "Redigere",
+        "empty": "Ingen resultater",
+        "excludes": "Ekskluderer disse modtagere",
+        "f2b_ban_time": "Udelukkelses tid (s)",
+        "f2b_blacklist": "Sortlistede netværk/værter",
+        "f2b_filter": "Regex filtre",
+        "f2b_list_info": "En sortlistet vært eller et netværk opvejer altid en hvidlisted eksistens. <b> Listeopdateringer tager nogle få sekunder at blive anvendt. </b> ",
+        "f2b_max_attempts": "Max. forsøg",
+        "f2b_netban_ipv4": "IPv4 subnet størrelse at anvende forbud mod (8-32)",
+        "f2b_netban_ipv6": "IPv6 subnet størrelse at anvende forbud mod (8-128)",
+        "f2b_parameters": "Fail2ban parametre",
+        "f2b_regex_info": "Logfiler taget i betragtning: SOGo, Postfix, Dovecot, PHP-FPM.",
+        "f2b_retry_window": "Genindlæs vindue om (s) for max. forsøg",
+        "f2b_whitelist": "Hvidlisted netværk/vært",
+        "filter_table": "Filtertabel",
+        "flush_queue": "Tøm kø",
+        "forwarding_hosts": "Videresendelse af værter",
+        "forwarding_hosts_add_hint": "Du kan enten angive IPv4 / IPv6-adresser, netværk i CIDR-notation, værtsnavne (som løses til IP-adresser) eller domænenavne (som løses til IP-adresser ved at spørge SPF-poster eller i mangel af MX-poster).",
+        "forwarding_hosts_hint": "Indgående beskeder accepteres ubetinget fra værter, der er anført her. Disse værter kontrolleres derefter ikke mod DNSBL'er eller udsættes for gråt notering. Spam modtaget fra dem afvises aldrig, men det kan eventuelt arkiveres i Junk-mappen. Den mest almindelige anvendelse til dette er at specificere mailservere, hvor du har oprettet en regel, der videresender indgående e-mails til din mailcow-server. ",
+        "from": "Fra",
+        "generate": "generere",
+        "guid": "GUID - entydigt forekomst-id",
+        "guid_and_license": "GUID & License",
+        "hash_remove_info": "Hvis du fjerner en ratelimit-hash (hvis den stadig findes), nulstilles tælleren fuldstændigt. <br>\r\n  Hver hash angives med en individuel farve.",
+        "help_text": "Tilsidesæt hjælp-teksten under loginmaske (HTML tilladt)",
+        "host": "Vært",
+        "html": "HTML(Hypertekstmarkeringssprog)",
+        "import": "Importere",
+        "import_private_key": "Importere privat nøgle",
+        "in_use_by": "I brug af",
+        "inactive": "Inaktiv",
+        "include_exclude": "Medtag/udeluk",
+        "include_exclude_info": "Som standard - uden markering er - <b>alle postkasser</b> adresseret",
+        "includes": "Medtag disse modtagere",
+        "last_applied": "Sidst anvendt",
+        "license_info": "En licens er ikke påkrævet, men hjælper videreudvikling. <br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Registrer dit GUID her</a> or <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Support order\">køb støtte til din mailcow installation.</a>",
+        "link": "Link",
+        "loading": "Vent venligst...",
+        "logo_info": "Dit billede skaleres til en højde på 40px for den øverste navigationslinje og en max. bredde på 250px for startsiden. Skalerbar grafik anbefales på det kraftigste.",
+        "lookup_mx": "Match destination mod MX (.outlook.com at dirigere alle e-mails, der er målrettet mod en MX *.outlook.com over dette hop)",
+        "main_name": "\"mailcow UI\" navn",
+        "merged_vars_hint": "Nedtonede rækker blev flettet fra <code>vars.(local.)inc.php</code> og kan ikke ændres.",
+        "message": "Besked",
+        "message_size": "Meddelelsesstørrelse",
+        "nexthop": "Næste hop",
+        "no": "&#10005;",
+        "no_active_bans": "Ingen aktive Udelukkelser",
+        "no_new_rows": "Ingen yderligere rækker tilgængelige",
+        "no_record": "Ingen post",
+        "oauth2_client_id": "Klient ID",
+        "oauth2_client_secret": "Klient hemmelighed",
+        "oauth2_info": "OAuth2-implementeringen understøtter tilskudstypen \"Authorization Code\" og udsteder tids-bestemte opdateringstoken.<br>\r\nServeren udsteder også automatisk nye opdateringstokens, når der er brugt et opdateringstoken.<br><br>\r\n→ Standardområdet er <i>profile</i>. Det er kun brugere af postkasser, der kan godkendes mod OAuth2. Hvis områdeparameteren udelades, falder den tilbage til <i>profile</i>.<br>\r\n→ Den <i>status</i> skal sendes af klienten som en del af godkendelsesanmodningen.<br><br>\r\nStier til anmodninger til OAuth2 API: <br>\r\n<ul>\r\n  <li>Godkendelsesslutpunkt: <code>/oauth/authorize</code></li>\r\n  <li>Token slutpunkt: <code>/oauth/token</code></li>\r\n  <li>Ressource side:  <code>/oauth/profile</code></li>\r\n</ul>\r\nRegenerering af klienthemmeligheden udløber ikke eksisterende autorisationskoder, men de fornyer ikke deres token.<br><br>\r\nTilbagekaldelse af klient-tokens vil medføre øjeblikkelig afslutning af alle aktive sessioner. Alle klienter skal godkende igen.",
+        "oauth2_redirect_uri": "Omdiriger URI",
+        "oauth2_renew_secret": "Generer ny klienthemmelighed",
+        "oauth2_revoke_tokens": "Tilbagekald alle klient-tokens",
+        "optional": "valgfri",
+        "password": "Kodeord",
+        "password_repeat": "Bekræftelsesadgangskode (gentag)",
+        "priority": "Prioritet",
+        "private_key": "Privat nøgle",
+        "quarantine": "Karantæne",
+        "quarantine_bcc": "Send en kopi af alle meddelelser (BCC) til denne modtager:<br><small>Lad være tom for at deaktivere. <b>Usigneret, ikke-markeret mail. Bør kun leveres internt.</b></small>",
+        "quarantine_exclude_domains": "Ekskluder domæner og alias-domæner",
+        "quarantine_max_age": "Maximum alder i dage<br><small>Værdien skal være lig med eller større end 1 dag.</small>",
+        "quarantine_max_size": "Maksimal størrelse i MiB (større elementer kasseres):<br><small>0 indikere <b>ikke</b> ubegrænset.</small>",
+        "quarantine_max_score": "Kassér besked, hvis spam-score for en mail er højere end denne værdi:<br><small>Standardindstillingen er 9999.0</small>",
+        "quarantine_notification_html": "Notifikations-e-mail-skabelon:<br><small>Lad det være tomt for at gendanne standardskabelonen.</small>",
+        "quarantine_notification_sender": "Notification email sender",
+        "quarantine_notification_subject": "Notification email subject",
+        "quarantine_redirect": "<b>Redirect all notifications</b> to this recipient:<br><small>Leave empty to disable. <b>Unsigned, unchecked mail. Should be delivered internally only.</b></small>",
+        "quarantine_release_format": "Format på frigivne genstande",
+        "quarantine_release_format_att": "Som vedhæftet fil",
+        "quarantine_release_format_raw": "Umodificeret original",
+        "quarantine_retention_size": "Tilbageholdelse pr. Postkasse:<br><small>0 angiver <b>inaktiv</b>.</small>",
+        "queue_ays": "Bekræft venligst, at du vil slette alle emner fra den aktuelle kø.",
+        "queue_deliver_mail": "Aflevere",
+        "queue_hold_mail": "Hold",
+        "queue_manager": "Køadministrator",
+        "queue_unban": "kø ikke udeluk",
+        "queue_unhold_mail": "Unhold",
+        "queue_show_message": "Vis besked",
+        "quota_notification_html": "Notifikations-e-mail-skabelon:<br><small>Lad det være tomt for at gendanne standardskabelonen.</small>",
+        "quota_notification_sender": "Afsender af underretnings-e-mail",
+        "quota_notification_subject": "Underretningens e-mail-emne",
+        "quota_notifications": "Kvotemeddelelser",
+        "quota_notifications_info": "Kvotemeddelelser sendes til brugerne en gang, når de krydser 80%, og en gang, når de krydser 95% forbrug.",
+        "quota_notifications_vars": "{{percent}} svarer til brugerens nuværende kvote<br>{{username}} er postkassens navn",
+        "r_active": "Aktive begrænsninger",
+        "r_inactive": "Inaktive begrænsninger",
+        "r_info": "Nedtonede / deaktiverede elementer på listen over aktive begrænsninger er ikke kendt som gyldige begrænsninger for mailcow og kan ikke flyttes. Ukendte begrænsninger indstilles alligevel i rækkefølge efter udseende. <br>Du kan tilføje nye elementer i <code>inc/vars.local.inc.php</code> for at kunne skifte dem.",
+        "rate_name": "Bedøm navn",
+        "recipients": "Modtagere",
+        "refresh": "Opdater",
+        "regen_api_key": "Genopret API-nøgle",
+        "regex_maps": "Regex kort",
+        "relay_from": "\"Fra:\" adresse",
+        "relay_run": "Kør test",
+        "relayhosts": "Afsenderafhængige transporter",
+        "relayhosts_hint": "Definer afsenderafhængige transporter, så de kan vælge dem i en konfigurationsdialog for domæner.<br>\r\n  Transporttjenesten er altid \"smtp:\" og vil derfor prøve TLS, når de tilbydes. Indpakket TLS (SMTPS) understøttes ikke. En brugeres individuelle indstilling for TLS-politik tages i betragtning.<br>\r\n  Påvirker udvalgte domæner inklusive aliasdomæner.",
+        "remove": "Fjern",
+        "remove_row": "Fjern række",
+        "reset_default": "Nulstil til standard",
+        "reset_limit": "Fjern hash",
+        "routing": "Routing",
+        "rsetting_add_rule": "Tilføj regel",
+        "rsetting_content": "Regelindhold",
+        "rsetting_desc": "Kort beskrivelse",
+        "rsetting_no_selection": "Vælg en regel",
+        "rsetting_none": "Ingen tilgængelige regler",
+        "rsettings_insert_preset": "Indsæt eksempel forudindstilling \"%s\"",
+        "rsettings_preset_1": "Deaktiver alt undtagen DKIM og satsgrænse for godkendte brugere",
+        "rsettings_preset_2": "Postmestere ønsker spam",
+        "rsettings_preset_3": "Tillad kun specifikke afsendere til en postkasse (dvs. kun brug som intern postkasse)",
+        "rspamd-com_settings": "Et indstillingsnavn genereres automatisk, se eksemplet på forudindstillinger nedenfor. For flere detaljer se <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
+        "rspamd_global_filters": "Globale filterkort",
+        "rspamd_global_filters_agree": "Jeg vil være forsigtig!",
+        "rspamd_global_filters_info": "Global filter maps contain different kind of global black and whitelists.",
+        "rspamd_global_filters_regex": "Deres navne forklarer deres formål. Alt indhold skal indeholde gyldigt regulært udtryk i formatet \"/pattern/options\" (e.g. <code>/.+@domain\\.tld/i</code>).<br>\r\n  Selvom der udføres rudimentære kontroller på hver linje med regex, kan Rspamds-funktionaliteten brydes, hvis den ikke læser syntaksen korrekt.<br>\r\n  Rspamd forsøger at læse kortindholdet, når det ændres. Hvis du oplever problemer, <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\"  data-target=\"#RestartContainer\">genstart Rspamd</a> for at håndhæve et kortindlæsning.<br>Sortlisteelementer er udelukket fra karantæne.",
+        "rspamd_settings_map": "Rspamd indstillinger kort",
+        "sal_level": "Moo niveau",
+        "save": "Gem ændringer",
+        "search_domain_da": "Søg i domæner",
+        "send": "Send",
+        "sender": "Afsender",
+        "service_id": "Service ID",
+        "source": "Kilde",
+        "spamfilter": "Spam filter",
+        "subject": "Emne",
+        "sys_mails": "System e-mails",
+        "text": "Tekst",
+        "time": "Tid",
+        "title": "Titel",
+        "title_name": "\"mailcow UI\" hjemmeside titel",
+        "to_top": "Tilbage til toppen",
+        "transport_dest_format": "Syntaks: example.org, .example.org, *, box@example.org (flere værdier kan adskilles med komma)",
+        "transport_maps": "Transport Maps",
+        "transports_hint": "→ En transportkortpost <b>tilsidesætter</b> et afsenderafhængigt transportkort</b>.<br>\r\n→ Indstillinger for udgående TLS-politik pr. Bruger ignoreres og kan kun håndhæves af TLS-politikortposter.<br>\r\n→ Transportservicen for definerede transporter er altid \"smtp:\" og vil derfor prøve TLS, når de tilbydes. Indpakket TLS (SMTPS) understøttes ikke.<br>\r\n→ Adresser, der matcher \"/localhost$/\" vil altid blive transporteret via \"local:\", derfor en \"*\" destination gælder ikke for disse adresser.<br>\r\n→ At bestemme legitimationsoplysninger for et eksemplarisk næste hop \"[host]:25\", Postfix <b>altid</b> forespørgsler til \"host\" inden du søger efter \"[host]:25\". Denne adfærd gør det umuligt at bruge \"host\" og \"[host]:25\" på samme tid.",
+        "ui_footer": "Sidefod (HTML tilladt)",
+        "ui_header_announcement": "Meddelelser",
+        "ui_header_announcement_active": "Indstil meddelelse aktiv",
+        "ui_header_announcement_content": "Tekst (HTML tilladt)",
+        "ui_header_announcement_help": "Meddelelsen er synlig for alle indloggede brugere og på loginskærmen i brugergrænsefladen.",
+        "ui_header_announcement_select": "Vælg meddelelsestype",
+        "ui_header_announcement_type": "Type",
+        "ui_header_announcement_type_info": "Info",
+        "ui_header_announcement_type_warning": "Vigtig",
+        "ui_header_announcement_type_danger": "Meget vigtigt",
+        "ui_texts": "UI-etiketter og tekster",
+        "unban_pending": "unban ventende",
+        "unchanged_if_empty": "Lad være tomt, hvis uændret",
+        "upload": "Upload",
+        "username": "Brugernavn",
+        "validate_license_now": "Valider GUID mod licensserver",
+        "verify": "Verificere",
+        "yes": "&#10003;"
+    },
+    "danger": {
+        "access_denied": "Adgang nægtet eller ugyldig formular data",
+        "alias_domain_invalid": "Aliasdomænet% s er ugyldigt",
+        "alias_empty": "Aliasadressen må ikke være tom",
+        "alias_goto_identical": "Alias og goto-adresseæ må ikke være identiske",
+        "alias_invalid": "Aliasadresse %s er ugyldig",
+        "aliasd_targetd_identical": "Aliasdomænet må ikke være lig med måldomænet: %s",
+        "aliases_in_use": "Maks. aliaser skal være større eller lig med %d",
+        "app_name_empty": "Appens navn kan ikke være tomt",
+        "app_passwd_id_invalid": "App-adgangskode-id %s ugyldig",
+        "bcc_empty": "BCC-destination kan ikke være tom",
+        "bcc_exists": "Et BCC-kort %s findes for type %s",
+        "bcc_must_be_email": "BCC-destination %s er ikke en gyldig e-mail-adresse",
+        "comment_too_long": "Kommentar for lang, maks. 160 tegn tilladt",
+        "defquota_empty": "Standardkvoten pr. Postkasse må ikke være 0.",
+        "description_invalid": "Ressource beskrivelse for %s er ugyldig",
+        "dkim_domain_or_sel_exists": "En DKIM-nøgle til \"%s\" findes og vil ikke blive overskrevet",
+        "dkim_domain_or_sel_invalid": "DKIM-domæne eller vælger er ugyldigt: %s",
+        "domain_cannot_match_hostname": "Domæne kan ikke matche værtsnavn",
+        "domain_exists": "Domæne %s eksisterer allerede",
+        "domain_invalid": "Domænenavnet er tomt eller ugyldigt",
+        "domain_not_empty": "Kan ikke fjerne ikke-tomt domæne %s",
+        "domain_not_found": "Domæne %s ikke fundet",
+        "domain_quota_m_in_use": "Domænekvote skal være større eller lig med %s MiB",
+        "extra_acl_invalid": "Ekstern afsenderadresse \"%s\" er ugyldig",
+        "file_open_error": "Filen kan ikke åbnes til skrivning",
+        "filter_type": "Forkert filtertype",
+        "from_invalid": "Afsenderen må ikke være tom",
+        "global_filter_write_error": "Kunne ikke skrive filterfil: %s",
+        "global_map_invalid": "Globalt kort-ID %s ugyldig",
+        "global_map_write_error": "Kunne ikke skrive globalt kort-id %s: %s",
+        "goto_empty": "En alias-adresse skal indeholde mindst en gyldig goto-adresse",
+        "goto_invalid": "Gå til adresse %s er ugyldig",
+        "ham_learn_error": "HAM lærer fejl: %s",
+        "imagick_exception": "Fejl: Se undtagelsen, mens du læser billedet",
+        "img_invalid": "Kan ikke validere billedfilen",
+        "img_tmp_missing": "Kan ikke validere billedfil: Midlertidig fil blev ikke fundet",
+        "invalid_bcc_map_type": "Ugyldig BCC-korttype",
+        "invalid_destination": "Destinationsformat \"%s\" er ugyldig",
+        "invalid_filter_type": "Ugyldig filtertype",
+        "invalid_host": "Ugyldig vært angivet: %s",
+        "invalid_mime_type": "Ugyldig mime-type",
+        "invalid_nexthop": "Næste hop-format er ugyldigt",
+        "invalid_nexthop_authenticated": "Næste hop findes med forskellige legitimationsoplysninger. Opdater de eksisterende legitimationsoplysninger til dette næste hop først.",
+        "invalid_recipient_map_new": "Ugyldig ny modtager er angivet: %s",
+        "invalid_recipient_map_old": "Ugyldig original modtager er angivet: %s",
+        "ip_list_empty": "Listen over tilladte IP&#39;er kan ikke være tomme",
+        "is_alias": "%s er allerede kendt som en alias-adresse",
+        "is_alias_or_mailbox": "%s er allerede kendt som et alias, en postkasse eller en aliasadresse udvidet fra et aliasdomæne.",
+        "is_spam_alias": "%s er allerede kendt som en midlertidig alias-adresse (spam alias-adresse)",
+        "last_key": "Sidste nøgle kan ikke slettes. Deaktiver venligst TFA i stedet.",
+        "login_failed": "Login mislykkedes",
+        "mailbox_defquota_exceeds_mailbox_maxquota": "Standardkvoten overstiger den maksimale kvotegrænse",
+        "mailbox_invalid": "Postkassens navn er ugyldigt",
+        "mailbox_quota_exceeded": "Kvoten overstiger domænegrænsen(max. %d MiB)",
+        "mailbox_quota_exceeds_domain_quota": "Maks. kvote overstiger domænekvotegrænsen",
+        "mailbox_quota_left_exceeded": "Der er ikke nok plads tilbage (plads tilbage: %d MiB)",
+        "mailboxes_in_use": "Maks. postkasser skal være større eller lig med %d",
+        "malformed_username": "Misformet brugernavn",
+        "map_content_empty": "Kortindholdet må ikke være tomt",
+        "max_alias_exceeded": "Maks. aliaser overskredet",
+        "max_mailbox_exceeded": "Maks. postkasser overskredet (%d af %d)",
+        "max_quota_in_use": "Postkassekvoten skal være større eller lig med %d MiB",
+        "maxquota_empty": "Maks. kvote pr. postkasse må ikke være 0.",
+        "mysql_error": "MySQL fejl: %s",
+        "network_host_invalid": "Ugyldigt netværk eller vært: %s",
+        "next_hop_interferes": "%s interfererer med nexthop %s",
+        "next_hop_interferes_any": "En eksisterende næste hop interfererer med %s",
+        "no_user_defined": "Ingen brugerdefineret",
+        "object_exists": "Objekt %s eksisterer allerede",
+        "object_is_not_numeric": "Værdi %s er ikke numerisk",
+        "password_complexity": "Adgangskoden opfylder ikke politikken",
+        "password_empty": "Adgangskoden må ikke være tom",
+        "password_mismatch": "Bekræftelsesadgangskoden stemmer ikke overens",
+        "policy_list_from_exists": "Der findes en post med fornavn",
+        "policy_list_from_invalid": "Posten har ugyldigt format",
+        "private_key_error": "Privat nøglefejl: %s",
+        "pushover_credentials_missing": "Pushover-token og / eller nøgle mangler",
+        "pushover_key": "Pushover-nøglen har et forkert format",
+        "pushover_token": "Pushover-token har et forkert format",
+        "quota_not_0_not_numeric": "Kvoten skal være numerisk og >= 0",
+        "recipient_map_entry_exists": "En modtagerkortpost \"%s\" eksisterer",
+        "redis_error": "Redis fejl: %s",
+        "relayhost_invalid": "Kortindtastning %s er ugyldig",
+        "release_send_failed": "Beskeden kunne ikke frigives: %s",
+        "reset_f2b_regex": "Regex filter kunne ikke nulstilles i tide, prøv igen eller vent et par sekunder mere, og genindlæs webstedet.",
+        "resource_invalid": "Ressource navn %s er ugyldig",
+        "rl_timeframe": "Tidsramme for satsbegrænsning er forkert",
+        "rspamd_ui_pw_length": "Rspamd UI adgangskoden skal være mindst 6 tegn lang",
+        "script_empty": "Scriptet kan ikke være tomt",
+        "sender_acl_invalid": "Afsender ACL-værdi %s er ugyldig",
+        "set_acl_failed": "Kunne ikke indstille ACL",
+        "settings_map_invalid": "Indstillinger kort-id %s ugyldig",
+        "sieve_error": "Fejl i sile-parser: %s",
+        "spam_learn_error": "Spam lære fejl: %s",
+        "subject_empty": "Emnet må ikke være tomt",
+        "target_domain_invalid": "Måldomæne %s er ugyldig",
+        "targetd_not_found": "Måldomæne %s ikke fundet",
+        "targetd_relay_domain": "Måldomæne %s er et relædomæne",
+        "temp_error": "Midlertidig fejl",
+        "text_empty": "Teksten må ikke være tom",
+        "tfa_token_invalid": "TFA-token ugyldig",
+        "tls_policy_map_dest_invalid": "Politikens destination er ugyldig",
+        "tls_policy_map_entry_exists": "En post i TLS-politikkort \"%s\" eksisterer",
+        "tls_policy_map_parameter_invalid": "Politikparameter er ugyldig",
+        "totp_verification_failed": "Bekræftelse af TOTP mislykkedes",
+        "transport_dest_exists": "Transport destination \"%s\" eksisterer",
+        "u2f_verification_failed": "U2F-bekræftelse mislykkedes: %s",
+        "fido2_verification_failed": "Bekræftelse af FIDO2 mislykkedes: %s",
+        "unknown": "Der opstod en ukendt fejl",
+        "unknown_tfa_method": "Ukendt TFA-metode",
+        "unlimited_quota_acl": "Ubegrænset kvote forbudt af ACL",
+        "username_invalid": "Brugernavn %s kan ikke bruges",
+        "validity_missing": "Tildel venligst en gyldighedsperiode",
+        "value_missing": "Angiv alle værdier",
+        "yotp_verification_failed": "Yubico OTP verifikationen mislykkedes: %s"
+    },
+    "debug": {
+        "chart_this_server": "Diagram (denne server)",
+        "containers_info": "Oplysninger om containere",
+        "disk_usage": "Diskbrug",
+        "external_logs": "Eksterne logfiler",
+        "history_all_servers": "Historie (alle servere)",
+        "in_memory_logs": "In-memory logs",
+        "jvm_memory_solr": "Brug af JVM-hukommelse",
+        "log_info": "<p>mailcow <b>in-memory logs</b> er samlet i Redis-lister og trimmet til LOG_LINES (%d) hvert minut for at reducere hamring.\r\n  <br>Logbøger i hukommelsen er ikke beregnet til at være vedholdende. Alle applikationer, der logger ind i hukommelsen, logger også på Docker-dæmonen og derfor til standardlogdriveren.\r\n  <br>Logtypen i hukommelsen skal bruges til fejlfinding af mindre problemer med containere.</p>\r\n  <p><b>Eksterne logfiler</b> indsamles via API for den givne applikation.</p>\r\n  <p><b>Statiske logfiler</b> er for det meste aktivitetslogfiler, der ikke er logget på Dockerd, men stadig skal være vedholdende (undtagen API-logfiler).</p>",
+        "logs": "Logs",
+        "restart_container": "Genstart",
+        "solr_dead": "Solr starter, deaktiveres eller døde.",
+        "solr_docs": "Dokumenter",
+        "solr_last_modified": "Sidst ændret",
+        "solr_size": "Størrelse",
+        "solr_started_at": "Startede kl",
+        "solr_status": "Solr-status",
+        "solr_uptime": "Oppetid",
+        "started_on": "Startede den",
+        "static_logs": "Statiske logfiler",
+        "system_containers": "System og Beholdere"
+    },
+    "diagnostics": {
+        "cname_from_a": "Værdi afledt af A / AAAA-post. Dette understøttes, så længe posten peger på den korrekte ressource.",
+        "dns_records": "DNS-poster",
+        "dns_records_24hours": "Bemærk, at ændringer, der foretages i DNS, kan tage op til 24 timer for at få deres aktuelle status korrekt reflekteret på denne side. Det er beregnet som en måde for dig let at se, hvordan du konfigurerer dine DNS-poster og kontrollere, om alle dine poster er korrekt gemt i DNS.",
+        "dns_records_docs": "Se også <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">dokumentationen</a>.",
+        "dns_records_data": "Korrekte data",
+        "dns_records_name": "Navn",
+        "dns_records_status": "Nuværende tilstand",
+        "dns_records_type": "Type",
+        "optional": "Denne post er valgfri."
+    },
+    "edit": {
+        "active": "Active",
+        "advanced_settings": "Avancerede indstillinger",
+        "alias": "rediger mere",
+        "allow_from_smtp": "Tillad kun, at disse IP&#39;er bruges <b>SMTP</b>",
+        "allow_from_smtp_info": "Lad det være tomt for at tillade alle afsendere.<br>IPv4/IPv6 adresser og netværk.",
+        "allowed_protocols": "Tilladte protokoller",
+        "app_name": "Appens navn",
+        "app_passwd": "App-adgangskode",
+        "automap": "Prøv at automatisere mapper (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
+        "backup_mx_options": "Relæindstillinger",
+        "bcc_dest_format": "BCC-destination skal være en enkelt gyldig e-mail-adresse.",
+        "client_id": "Klient-id",
+        "client_secret": "Klienthemmelighed",
+        "comment_info": "En privat kommentar er ikke synlig for brugeren, mens en offentlig kommentar vises som værktøjstip, når den svæver i en brugeroversigt",
+        "delete1": "Slet fra kilden, når den er afsluttet",
+        "delete2": "Slet meddelelser på destinationen, der ikke er fra kilden",
+        "delete2duplicates": "Slet duplikater på destinationen",
+        "delete_ays": "Bekræft sletningsprocessen.",
+        "description": "Beskrivelse",
+        "disable_login": "Tillad ikke login (indgående mail accepteres stadig)",
+        "domain": "Rediger domæne",
+        "domain_admin": "Rediger domæneadministrator",
+        "domain_quota": "Domæne kvote",
+        "domains": "Domæner",
+        "dont_check_sender_acl": "Deaktiver afsenderkontrol for domæne %s (+ alias-domæner)",
+        "edit_alias_domain": "Rediger Alias-domæne",
+        "encryption": "Kryptering",
+        "exclude": "Ekskluder objekter (regex)",
+        "extended_sender_acl": "Eksterne afsenderadresser",
+        "extended_sender_acl_info": "En DKIM-domænenøgle skal importeres, hvis den er tilgængelig.<br>\r\n  Husk at tilføje denne server til den tilsvarende SPF TXT-post.<br>\r\n  Når et domæne eller aliasdomæne føjes til denne server, der overlapper en ekstern adresse, fjernes den eksterne adresse.<br>\r\n  Brug @domain.tld til at tillade at sende som *@domæne.tld.",
+        "force_pw_update": "Tving adgangskodeopdatering til næste login",
+        "force_pw_update_info": "Denne bruger kan kun logge ind på %s.",
+        "full_name": "Fulde navn",
+        "gal": "Global adresseliste",
+        "gal_info": "GAL indeholder alle objekter i et domæne og kan ikke redigeres af nogen bruger. Information om ledig / optaget i SOGo mangler, hvis deaktiveret! <b>Genstart SOGo for at anvende ændringer.</b>",
+        "generate": "frembringe",
+        "grant_types": "Tilskudstyper",
+        "hostname": "Værtsnavn",
+        "inactive": "Inaktiv",
+        "kind": "Kind",
+        "mailbox": "Rediger postkasse",
+        "mailbox_quota_def": "Standardpostkassekvote",
+        "max_aliases": "Maks. aliaser",
+        "max_mailboxes": "Maks. mulige postkasser",
+        "max_quota": "Maks. kvote pr. postkasse (MiB)",
+        "maxage": "Maksimumalder for beskeder i dage, der vil blive pollet fra fjernbetjeningen<br><small>(0 = ignorere alder)</small>",
+        "maxbytespersecond": "Maks. bytes pr. sekund <br><small>(0 = ubegrænset)</small>",
+        "mbox_rl_info": "Denne satsgrænse anvendes på SASL-loginnavnet, den matcher ethvert \"from\" adresse, der bruges af den indloggede bruger. En grænse for sats for postkasse tilsidesætter en satsgrænse for hele domænet.",
+        "mins_interval": "Interval (min)",
+        "multiple_bookings": "Flere bookinger",
+        "nexthop": "Næste hop",
+        "password": "Adgangskode",
+        "password_repeat": "Bekræftelsesadgangskode (gentag)",
+        "previous": "Forrige side",
+        "private_comment": "Privat kommentar",
+        "public_comment": "Offentlig hvordan",
+        "pushover_evaluate_x_prio": "Eskaler e-mail med høj prioritet [<code>X-Priority: 1</code>]",
+        "pushover_info": "Indstillinger for push-meddelelser gælder for al ren (ikke-spam) post, der leveres til <b>%s</b> inklusive aliaser (delt, ikke-delt, tagget).",
+        "pushover_only_x_prio": "Overvej kun post med høj prioritet [<code>X-Priority: 1</code>]",
+        "pushover_sender_array": "Overvej kun følgende afsender-e-mail-adresser <small>(comma-separated)</small>",
+        "pushover_sender_regex": "Overvej følgende afsender regex",
+        "pushover_text": "Meddelelsestekst",
+        "pushover_title": "Meddelelsestitel",
+        "pushover_vars": "Når der ikke er defineret et afsenderfilter, overvejes alle mails.<br>Regex såvel som nøjagtige afsenderkontrol kan defineres individuelt og vil blive betragtet i rækkefølge. De er ikke afhængige af hinanden.<br>Brugbare variabler til tekst og titel (vær opmærksom på databeskyttelsespolitikker)",
+        "pushover_verify": "Bekræft legitimationsoplysninger",
+        "quota_mb": "Kvote (MiB)",
+        "redirect_uri": "Omdirigering/tilbagekald URL",
+        "relay_all": "Send alle modtagere videre",
+        "relay_all_info": "↪ Hvis du vælger <b>ikke</b> for at videresende alle modtagere skal du tilføje en (\"blind\") postkasse til hver enkelt modtager, der skal videresendes.",
+        "relay_domain": "Send dette domæne videre",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Du kan definere transportkort til en tilpasset destination for dette domæne. Hvis den ikke er indstillet, foretages der et MX-opslag.",
+        "relay_unknown_only": "Videresend kun ikke-eksisterende postkasser. Eksisterende postkasser leveres lokalt.",
+        "relayhost": "Afsenderafhængige transporter",
+        "remove": "Fjerne",
+        "resource": "Ressource",
+        "save": "Gem ændringer",
+        "scope": "Anvendelsesområde",
+        "sender_acl": "Tillad at sende som",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Afsenderkontrol er deaktiveret</span>",
+        "sender_acl_info": "Hvis postkassebruger A har tilladelse til at sende som postkassebruger B, vises afsenderadressen ikke automatisk som valgbar \"from\" felt i SOGo.<br>\r\n  Postkassebruger B skal oprette en delegation i SOGo for at tillade postkassebruger A at vælge deres adresse som afsender. For at delegere en postkasse i SOGo skal du bruge menuen (tre prikker) til højre for dit postkassens navn øverst til venstre, mens du er i postvisningen. Denne adfærd gælder ikke for aliasadresser.",
+        "sieve_desc": "Kort beskrivelse",
+        "sieve_type": "Filtertype",
+        "skipcrossduplicates": "Spring duplikatbeskeder over mapper (først til mølle)",
+        "sogo_access": "Giv adgang til SOGo",
+        "sogo_access_info": "Giv eller tillad adgang til SOGo. Denne indstilling påvirker hverken adgang til alle andre tjenester eller sletter eller ændrer en eksisterende SOGo-profil for brugere.",
+        "sogo_visible": "Alias er synligt i SOGo",
+        "sogo_visible_info": "Denne indstilling påvirker kun objekter, der kan vises i SOGo (delte eller ikke-delte aliasadresser, der peger på mindst en lokal postkasse). Hvis skjult, vises et alias ikke som valgbar afsender i SOGo.",
+        "spam_alias": "Opret eller skift tidsbegrænsede aliasadresser",
+        "spam_policy": "Tilføj eller fjern genstande til hvid- / sortliste",
+        "spam_score": "Indstil en brugerdefineret spam-score",
+        "subfolder2": "Synkroniser til undermappe på destinationen<br><small>(tom = brug ikke undermappe)</small>",
+        "syncjob": "Rediger synkroniseringsjob",
+        "target_address": "Gå til adresse (r) <small>(komma separeret)</small>",
+        "target_domain": "Måldomæne",
+        "timeout1": "Timeout for forbindelse til ekstern vært",
+        "timeout2": "Timeout for forbindelse til lokal vært",
+        "title": "Rediger objekt",
+        "unchanged_if_empty": "Lad være tomt, hvis uændret",
+        "username": "Brugernavn",
+        "validate_save": "Valider og gem"
+    },
+    "footer": {
+        "cancel": "Afbestille",
+        "confirm_delete": "Bekræft sletning",
+        "delete_now": "Slet nu",
+        "delete_these_items": "Bekræft dine ændringer til følgende objekt-id",
+        "hibp_nok": "Matchet! Dette er en potentielt farlig adgangskode!",
+        "hibp_ok": "Ingen match fundet.",
+        "loading": "Vent venligst...",
+        "restart_container": "Genstart beholderen",
+        "restart_container_info": "<b>Vigtig:</b> Det kan tage et stykke tid at gennemføre en yndefuld genstart. Vent til den er færdig.",
+        "restart_now": "Genstart nu",
+        "restarting_container": "Genstart af beholder, det kan tage et stykke tid"
+    },
+    "header": {
+        "administration": "Konfiguration og detailer",
+        "apps": "Apps",
+        "debug": "Systemoplysninger",
+        "mailboxes": "Mailopsætning",
+        "mailcow_settings": "Konfiguration",
+        "quarantine": "Karantæne",
+        "restart_netfilter": "Genstart netfilter",
+        "restart_sogo": "Genstart SOGo",
+        "user_settings": "Brugerindstillinger"
+    },
+    "info": {
+        "awaiting_tfa_confirmation": "Venter på TFA-bekræftelse",
+        "no_action": "Ingen handling gældende",
+        "session_expires": "Din session udløber om cirka 15 sekunder"
+    },
+    "login": {
+        "delayed": "Login blev forsinket med% s sekunder.",
+        "fido2_webauthn": "FIDO2/WebAuthn",
+        "login": "Login",
+        "mobileconfig_info": "Log ind som postkassebruger for at downloade den anmodede Apple-forbindelsesprofil.",
+        "other_logins": "Nøgle login",
+        "password": "Adgangskode",
+        "username": "Brugernavn"
+    },
+    "mailbox": {
+        "action": "Handling",
+        "activate": "Aktivér",
+        "active": "Aktiv",
+        "add": "Tilføje",
+        "add_alias": "Tilføj alias",
+        "add_bcc_entry": "Tilføj BCC-kort",
+        "add_domain": "Tilføj domæne",
+        "add_domain_alias": "Tilføj domænealias",
+        "add_domain_record_first": "Tilføj først et domæne",
+        "add_filter": "Tilføj filter",
+        "add_mailbox": "Tilføj postkasse",
+        "add_recipient_map_entry": "Tilføj modtagerkort",
+        "add_resource": "Tilføj ressource",
+        "add_tls_policy_map": "Tilføj TLS-politikkort",
+        "address_rewriting": "Omskrivning af adresse",
+        "alias": "Alias",
+        "alias_domain_alias_hint": "Aliaser er <b>not</b> anvendes automatisk på domænealiaser. En alias-adresse <code>mit-alias@domain</code> <b>gør ikke</b> dække adressen <code>my-alias@alias-domain</code> (hvor \"alias-domain\" er et imaginært aliasdomæne for \"domain\").<br>Brug et sigfilter til at omdirigere mail til en ekstern postkasse (se fanen \"Filters\" eller brug SOGo -> fremsender).",
+        "alias_domain_backupmx": "Alias-domæne inaktivt for relædomæne",
+        "aliases": "Aliaser",
+        "allow_from_smtp": "Tillad kun, at disse IPer bruges <b>SMTP</b>",
+        "allow_from_smtp_info": "Lad det være tomt for at tillade alle afsendere.<br>IPv4/IPv6adresser og netværk.",
+        "allowed_protocols": "Tilladte protokoller",
+        "backup_mx": "Relædomæne",
+        "bcc": "BCC",
+        "bcc_destination": "BCC bestemmelsessted",
+        "bcc_destinations": "BCC bestemmelsessted",
+        "bcc_info": "BCC-kort bruges til lydsvagt at videresende kopier af alle meddelelser til en anden adresse. En modtagerkorttypepost bruges, når den lokale destination fungerer som modtager af en mail. Afsenderkort overholder det samme princip.<br/>\r\n  Den lokale destination vil ikke blive informeret om en mislykket levering.",
+        "bcc_local_dest": "Lokal destination",
+        "bcc_map": "BCC kort",
+        "bcc_map_type": "BCC type",
+        "bcc_maps": "BCC maps",
+        "bcc_rcpt_map": "Modtagerkort",
+        "bcc_sender_map": "Afsender kort",
+        "bcc_to_rcpt": "Skift til modtagerens korttype",
+        "bcc_to_sender": "Skift til afsenderkorttype",
+        "bcc_type": "BCC-type",
+        "booking_0": "Vis altid som gratis",
+        "booking_0_short": "Altid gratis",
+        "booking_custom": "Hard-limit til et brugerdefineret antal bookinger",
+        "booking_custom_short": "Hård grænse",
+        "booking_lt0": "Ubegrænset, men vis som optaget, når booket",
+        "booking_lt0_short": "Blød grænse",
+        "daily": "Daglige",
+        "deactivate": "Deaktiver",
+        "description": "Beskrivelse",
+        "disable_login": "Tillad ikke login (indgående mail accepteres stadig)",
+        "disable_x": "Deaktiver",
+        "domain": "Domæne",
+        "domain_admins": "Domæneadministratorer",
+        "domain_aliases": "Domænealiaser",
+        "domain_quota": "Kvote",
+        "domains": "Domains",
+        "edit": "Edit",
+        "empty": "Ingen resultater",
+        "enable_x": "Aktiver",
+        "excludes": "Ekskluderer",
+        "filter_table": "Filtertabel",
+        "filters": "Filtre",
+        "fname": "Fulde navn",
+        "hourly": "Hver time",
+        "in_use": "I brug (%)",
+        "inactive": "Inaktiv",
+        "insert_preset": "Indsæt eksempel forudindstilling \"%s\"",
+        "kind": "Kind",
+        "last_mail_login": "Last mail login",
+        "last_run": "Sidste løb",
+        "last_run_reset": "Planlæg næste",
+        "mailbox": "Postkasse",
+        "mailbox_defquota": "Standardstørrelse på postkasse",
+        "mailbox_quota": "Maks. størrelsen på en postkasse",
+        "mailboxes": "Postkasser",
+        "mailbox_defaults": "Standardindstillinger",
+        "mailbox_defaults_info": "Definer standardindstillinger for nye postkasser.",
+        "mins_interval": "Interval (min)",
+        "msg_num": "Besked #",
+        "multiple_bookings": "Flere bookinger",
+        "never": "Aldrig",
+        "no": "&#10005;",
+        "no_record": "Ingen registrering for objekt %s",
+        "no_record_single": "Jeg kan ikke huske det",
+        "owner": "Ejer",
+        "private_comment": "Privat kommentar",
+        "public_comment": "Offentlig hvordan",
+        "q_add_header": "Uønsket mappe",
+        "q_all": "Alle kategorier",
+        "q_reject": "Afvist",
+        "quarantine_notification": "Karantænemeddelelser",
+        "quarantine_category": "Karantænemeddelelseskategori",
+        "quick_actions": "Handlinger",
+        "recipient_map": "Modtagerkort",
+        "recipient_map_info": "Modtagerkort bruges til at erstatte destinationsadressen i en meddelelse, før den leveres.",
+        "recipient_map_new": "Ny modtager",
+        "recipient_map_new_info": "Modtagerkortdestination skal være en gyldig e-mail-adresse.",
+        "recipient_map_old": "Original modtager",
+        "recipient_map_old_info": "En modtager kortlægger den originale destination, skal være gyldige e-mail-adresser eller et domænenavn.",
+        "recipient_maps": "Modtagerkort",
+        "remove": "Fjerne",
+        "resources": "Ressourcer",
+        "running": "Løb",
+        "set_postfilter": "Marker som postfilter",
+        "set_prefilter": "Marker som forfilter",
+        "sieve_info": "Du kan gemme flere filtre pr. Bruger, men kun et forfilter og et efterfilter kan være aktive på samme tid.<br>\r\nHvert filter behandles i den beskrevne rækkefølge. Hverken et mislykket script eller et udstedt \"keep;\" stopper behandlingen af yderligere scripts. Ændringer i globale sigtscript vil udløse en genstart af Dovecot.<br><br>Globalt sigteforfilter → Forfilter → Bruger scripts → Efterfilter → Globalt sigte efterfilter",
+        "sieve_preset_1": "Kassér e-mail med sandsynlige farlige filtyper",
+        "sieve_preset_2": "Marker altid e-mailen til en bestemt afsender som set",
+        "sieve_preset_3": "Kassér lydløst, stop al yderligere sigtebehandling",
+        "sieve_preset_4": "Fil til INBOX, spring videre behandling ved hjælp af sigtefiltre",
+        "sieve_preset_5": "Autosvar (ferie)",
+        "sieve_preset_6": "Afvis mail med svar",
+        "sieve_preset_7": "Omdiriger og hold/slip",
+        "sieve_preset_8": "Kassér besked sendt til en aliasadresse, som afsenderen er en del af",
+        "sieve_preset_header": "Se eksemplet på forudindstillinger nedenfor. For flere detaljer se <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
+        "sogo_visible": "Alias er synligt i SOGo",
+        "sogo_visible_n": "Skjul alias i SOGo",
+        "sogo_visible_y": "Vis alias i SOGo",
+        "spam_aliases": "Temp. alias",
+        "stats": "Statistikker",
+        "status": "Status",
+        "sync_jobs": "Synkroniser job",
+        "table_size": "Bordstørrelse",
+        "table_size_show_n": "Vis %s genstande",
+        "target_address": "Gå til adresse",
+        "target_domain": "Måldomæne",
+        "tls_enforce_in": "Håndhæv TLS indgående",
+        "tls_enforce_out": "Håndhæve TLS udgående",
+        "tls_map_dest": "Bestemmelsessted",
+        "tls_map_dest_info": "Eksempler: eksempel.org, .eksempel.org, [mail.eksempel.org]:25",
+        "tls_map_parameters": "Parametre",
+        "tls_map_parameters_info": "Tom eller for eksempel parametre: protocols=!SSLv2 ciphers=medium exclude=3DES",
+        "tls_map_policy": "Politik",
+        "tls_policy_maps": "TLS-politikkort",
+        "tls_policy_maps_info": "Dette politikkort tilsidesætter udgående TLS-transportregler uafhængigt af brugernes TLS-politikindstillinger.<br>\r\n Kontroller venligst <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a>for mere information.",
+        "tls_policy_maps_enforced_tls": "Disse politikker tilsidesætter også adfærd for postkassebrugere, der håndhæver udgående TLS-forbindelser. Hvis der ikke findes nogen politik nedenfor, anvender disse brugere standardværdierne angivet som <code>smtp_tls_mandatory_protocols</code> og <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_long": "Udgående TLS-politikkort tilsidesætter",
+        "toggle_all": "Skift alt",
+        "username": "Brugernavn",
+        "waiting": "Venter",
+        "weekly": "Ugentlig",
+        "yes": "&#10003;"
+    },
+    "oauth2": {
+        "access_denied": "Log ind som mailboks ejer for at give adgang via OAuth2.",
+        "authorize_app": "Godkend ansøgning",
+        "deny": "Nægte",
+        "permit": "Godkend ansøgning",
+        "profile": "Profil",
+        "profile_desc": "Se personlige oplysninger: brugernavn, fuldt navn, oprettet, ændret, aktiv",
+        "scope_ask_permission": "En applikation anmodede om følgende tilladelser"
+    },
+    "quarantine": {
+        "action": "Handling",
+        "atts": "Vedhæftede filer",
+        "check_hash": "Søgefil hash @ VT",
+        "confirm": "Bekræfte",
+        "confirm_delete": "Bekræft sletningen af dette element.",
+        "danger": "Fare",
+        "deliver_inbox": "Lever til indbakke",
+        "disabled_by_config": "Den aktuelle systemkonfiguration deaktiverer karantænefunktionaliteten. Indstil venligst \"tilbageholdelse pr. postkasse\" og en \"maksimal størrelse\" til karantæneelementer.",
+        "download_eml": "Hent (.eml)",
+        "empty": "Ingen resultater",
+        "high_danger": "Høj",
+        "info": "Information",
+        "junk_folder": "Uønsket mappe",
+        "learn_spam_delete": "Lær som spam og slet",
+        "low_danger": "Lav",
+        "medium_danger": "Medium",
+        "neutral_danger": "Neutral",
+        "notified": "Meddelt",
+        "qhandler_success": "Anmodning blev sendt til systemet. Du kan nu lukke vinduet.",
+        "qid": "Rspamd QID",
+        "qinfo": "Karantænesystemet gemmer afvist mail i databasen (afsenderen vil <em>ikke</em> få indtryk af en leveret post) såvel som mail, der leveres som kopi i skraldemappen i en postkasse.\r\n  <br>\"Lær som spam og slet\" vil lære en besked som spam via Bayesiansk sætning og også beregne fuzzy hashes for at nægte lignende meddelelser i fremtiden.\r\n  <br>Vær opmærksom på, at indlæring af flere meddelelser kan - afhængigt af dit system - være tidskrævende.<br> Sortlistede elementer er udelukket fra karantæne.",
+        "qitem": "Karantæneartikel",
+        "quarantine": "Karantæne",
+        "quick_actions": "Handlinger",
+        "rcpt": "Modtager",
+        "received": "Modtaget",
+        "recipients": "Modtagere",
+        "refresh": "Opdater",
+        "rejected": "Afvist",
+        "release": "Frigøre",
+        "release_body": "Vi har vedhæftet din besked som eml-fil til denne besked.",
+        "release_subject": "Potentielt skadelig karantæneartikel %s",
+        "remove": "Fjerne",
+        "rewrite_subject": "Omskriv emne",
+        "rspamd_result": "Rspamd resultat",
+        "sender": "Sender (SMTP)",
+        "sender_header": "Sender (\"Fra\" header)",
+        "type": "Type",
+        "quick_release_link": "Åbn link til hurtig frigivelse",
+        "quick_delete_link": "Åbn linket til hurtig sletning",
+        "quick_info_link": "Åbn info link",
+        "show_item": "Vis element",
+        "spam": "Spam",
+        "spam_score": "Score",
+        "subj": "Emne",
+        "table_size": "Bordstørrelse",
+        "table_size_show_n": "Vis %s genstande",
+        "text_from_html_content": "Indhold (konverterede html)",
+        "text_plain_content": "Indhold (text/plain)",
+        "toggle_all": "Skift alt"
+    },
+    "start": {
+        "help": "Vis / skjul hjælpepanel",
+        "imap_smtp_server_auth_info": "Brug din fulde e-mail-adresse og PLAIN-godkendelsesmekanismen.<br>\r\nDine login-data bliver krypteret af den obligatoriske kryptering på serversiden.",
+        "mailcow_apps_detail": "Brug en mailcow-app til at få adgang til dine mails, kalender, kontakter og mere.",
+        "mailcow_panel_detail": "<b>Domæneadministratorer</b> oprette, ændre eller slette postkasser og aliasser, ændre domæner og læse yderligere information om deres tildelte domæner.<br>\r\n<b>Mailbox-brugere</b>er i stand til at oprette tidsbegrænsede aliaser (spamaliaser), ændre deres adgangskode og spamfilterindstillinger."
+    },
+    "success": {
+        "acl_saved": "ACL til objekt %s gemt",
+        "admin_added": "Administrator %s er tilføjet",
+        "admin_api_modified": "Ændringer i API er gemt",
+        "admin_modified": "Ændringer til administrator er gemt",
+        "admin_removed": "Administrator %s er blevet fjernet",
+        "alias_added": "Alias-adresse %s (%d) er tilføjet",
+        "alias_domain_removed": "Domænealias %s er blevet fjernet",
+        "alias_modified": "Ændringer i alias-adresse %s er blevet gemt",
+        "alias_removed": "Alias %s er blevet fjernet",
+        "aliasd_added": "Tilføjetdomænealias %s",
+        "aliasd_modified": "Ændringer i alias-domæne %s er blevet gemt",
+        "app_links": "Gemte ændringer til applinks",
+        "app_passwd_added": "Tilføjet ny app-adgangskode",
+        "app_passwd_removed": "Fjernet app-adgangskode-id %s",
+        "bcc_deleted": "BCC-kortindgange slettet: %s",
+        "bcc_edited": "BCC-kortindgang %s redigeret",
+        "bcc_saved": "BCC-kortindgang gemt",
+        "db_init_complete": "Initialisering af database afsluttet",
+        "delete_filter": "Slettet filter-ID %s",
+        "delete_filters": "Slettede filtre: %s",
+        "deleted_syncjob": "Slettet syncjob-id %s",
+        "deleted_syncjobs": "Slettede syncjobs: %s",
+        "dkim_added": "DKIM-nøgle %s er blevet gemt",
+        "dkim_duplicated": "DKIM-nøgle til domæne %s er blevet kopieret til %s",
+        "dkim_removed": "DKIM-nøgle %s er blevet fjernet",
+        "domain_added": "Tilføjet domæne %s",
+        "domain_admin_added": "Domæne administrator %s er tilføjet",
+        "domain_admin_modified": "Ændringer til domæneadministrator %s er blevet gemt",
+        "domain_admin_removed": "Domæne administrator %s er blevet fjernet",
+        "domain_modified": "Ændringer i domæne %s er blevet gemt",
+        "domain_removed": "Domæne %s er blevet fjernet",
+        "dovecot_restart_success": "Dovecot blev genstartet",
+        "eas_reset": "ActiveSync-enheder til bruger %s blev nulstillet",
+        "f2b_modified": "Changes to Fail2ban parameters have been saved",
+        "forwarding_host_added": "Videresendende vært %s er tilføjet",
+        "forwarding_host_removed": "Videresendende vært %s er blevet fjernet",
+        "global_filter_written": "Filtret blev skrevet til filen",
+        "hash_deleted": "Hash slettet",
+        "item_deleted": "Item %s successfully deleted",
+        "item_released": "Item %s released",
+        "items_deleted": "Element %s slettet",
+        "items_released": "Selected items were released",
+        "learned_ham": "Successfully learned ID %s as ham",
+        "license_modified": "Ændringer i licens er gemt",
+        "logged_in_as": "logget ind som %s",
+        "mailbox_added": "Postkasse %s er tilføjet",
+        "mailbox_modified": "Ændringer i postkassen %s er blevet gemt",
+        "mailbox_removed": "Mailbox %s has been removed",
+        "object_modified": "Ændringer af objektet %s er blevet gemt",
+        "pushover_settings_edited": "Pushover-indstillinger er vellykket indstillet. Bekræft legitimationsoplysninger.",
+        "qlearn_spam": "Besked-id %s blev lært som spam og slettet",
+        "queue_command_success": "Køkommandoen blev fuldført",
+        "recipient_map_entry_deleted": "Modtagerkort-id %s er blevet slettet",
+        "recipient_map_entry_saved": "Modtagerkortindtastning \"%s\" er blevet gemt",
+        "relayhost_added": "Kortindtastning %s er tilføjet",
+        "relayhost_removed": "Kortindtastning %s er blevet fjernet",
+        "reset_main_logo": "Nulstil til standardlogo",
+        "resource_added": "Resource %s has been added",
+        "resource_modified": "Ændringer i postkassen %s er blevet gemt",
+        "resource_removed": "Ressource %s er blevet fjernet",
+        "rl_saved": "Satsgrænse for objekt %s gemt",
+        "rspamd_ui_pw_set": "Rspamd UI-adgangskode er indstillet",
+        "saved_settings": "Gemte indstillinger",
+        "settings_map_added": "Tilføjede indstillinger kortindtastning",
+        "settings_map_removed": "Fjernet indstillingskort-id %s",
+        "sogo_profile_reset": "SOGo-profil til bruger %s blev nulstillet",
+        "tls_policy_map_entry_deleted": "TLS-politik kort-id %s er blevet slettet",
+        "tls_policy_map_entry_saved": "TLS politik kort post \"%s\" er blevet gemt",
+        "ui_texts": "Gemte ændringer til UI-tekster",
+        "upload_success": "Filen blev uploadet",
+        "verified_totp_login": "Bekræftet TOTP-login",
+        "verified_u2f_login": "Bekræftet U2F-login",
+        "verified_fido2_login": "Bekræftet FIDO2-login",
+        "verified_yotp_login": "Bekræftet Yubico OTP-login"
+    },
+    "tfa": {
+        "api_register": "%s bruger Yubico Cloud API. Få en API-nøgle til din nøgle <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">here</a>",
+        "confirm": "Bekræft",
+        "confirm_totp_token": "Bekræft dine ændringer ved at indtaste det genererede token",
+        "delete_tfa": "Deaktiver TFA",
+        "disable_tfa": "Deaktiver TFA indtil næste vellykkede login",
+        "enter_qr_code": "Din TOTP kode hvis din enhed ikke kan scanne QR-koder",
+        "error_code": "Fejl kode",
+        "init_u2f": "Initialiserer, vent venligst...",
+        "key_id": "En identifikator til din YubiKey",
+        "key_id_totp": "En identifikator for din nøgle",
+        "none": "Deaktivere",
+        "reload_retry": "- (genindlæs browseren, hvis fejlen fortsætter)",
+        "scan_qr_code": "Scan venligst følgende kode med din godkendelsesapp, eller indtast koden manuelt.",
+        "select": "Vælg venligst",
+        "set_tfa": "Set 2-faktor godkendelses metoden",
+        "start_u2f_validation": "Start validering",
+        "tfa": "2-faktor godkendelse",
+        "tfa_token_invalid": "TFA nøgle ugyldig",
+        "totp": "Tids-baseret OTP (Google Authenticator, Authy, etc.)",
+        "u2f": "U2F godkendelse",
+        "waiting_usb_auth": "<i>Venter på USB-enhed...</i><br><br>Tryk let på knappen på din USB-enhed nu.",
+        "waiting_usb_register": "<i>Venter på USB-enhed...</i><br><br>Indtast din adgangskode ovenfor, og bekræft din registrering ved at trykke på knappen på din USB-enhed.",
+        "yubi_otp": "Yubico OTP godkendelse"
+    },
+    "fido2": {
+        "set_fn": "Set venneligt navn",
+        "fn": "Venneligt navn",
+        "rename": "omdøb",
+        "confirm": "Bekræft",
+        "register_status": "Registreringsstatus",
+        "known_ids": "Kendte ID'er",
+        "none": "Deaktiveret",
+        "set_fido2": "Registrer FIDO2 endhed",
+        "start_fido2_validation": "Start FIDO2 validering",
+        "fido2_auth": "Login med FIDO2",
+        "fido2_success": "Enheden blev registreret",
+        "fido2_validation_failed": "Validering mislykkedes"
+    },
+    "user": {
+        "action": "Handling",
+        "active": "Aktiv",
+        "active_sieve": "Aktive filtre",
+        "advanced_settings": "Avancerede indstillinger",
+        "alias": "Alias",
+        "alias_create_random": "Generer tilfældigt alias",
+        "alias_extend_all": "Forlæng aliaserne med 1 time",
+        "alias_full_date": "d.m.Y, H:i:s T",
+        "alias_remove_all": "Fjern alle aliaser",
+        "alias_select_validity": "Gyldighedsperiode",
+        "alias_time_left": "Tid tilbage",
+        "alias_valid_until": "Gyldig indtil",
+        "aliases_also_send_as": "Også tilladt at sende som bruger",
+        "aliases_send_as_all": "Do not check sender access for the following domain(s) and its alias domains",
+        "app_hint": "App adgangskoder er alternative adgangskoder til din <b>IMAP og SMTP</b> login. Brugernavnet forbliver uændret.<br>SOGo (inklusive AktivSync) er ikke tilgængelig via app-adgangskoder.",
+        "app_name": "App navn",
+        "app_passwds": "App kodeord",
+        "apple_connection_profile": "Apple forbindelses profil",
+        "apple_connection_profile_complete": "Denne forbindelses profil inkludere IMAP og SMTP parametre også CalDAV (kalendre) og CardDAV (kontakter) veje for en Apple endhed.",
+        "apple_connection_profile_mailonly": "Denne forbindelses profil inkludere IMAP og SMTP konfigurations parametere for en Apple endhed.",
+        "change_password": "Skift kodeord",
+        "client_configuration": "Vis konfigurationsvejledning for email klinter og mobiltelefoner",
+        "create_app_passwd": "Opret app kodeord",
+        "create_syncjob": "Opret nyt sync job",
+        "daily": "Dagligt",
+        "day": "dag",
+        "delete_ays": "Bekræft venligst ønsket om sletning.",
+        "direct_aliases": "Direkte alias addresser",
+        "direct_aliases_desc": "Direkte alias-adresser påvirkes af spamfilter og TLS-politiske indstillinger.",
+        "eas_reset": "Nulstil AktivSync endhed cache",
+        "eas_reset_help": "I mange tilfælde hjælper en nulstilling af enhedens cache med at gendanne en ødelagt ActiveSync-profil.<br><b>Advarsel:</b> Alle elementer downloades igen!",
+        "eas_reset_now": "Nultil nu",
+        "edit": "redigere",
+        "email": "Email",
+        "email_and_dav": "Email, kalender and kontakter",
+        "encryption": "kryptering",
+        "excludes": "Ekskluderer",
+        "expire_in": "Udløber om",
+        "force_pw_update": "Du <b>SKAL</b> indstille en ny adgangskode for at få adgang til groupware-relaterede tjenester.",
+        "generate": "generere",
+        "hour": "tid",
+        "hourly": "Timelig",
+        "hours": "timer",
+        "in_use": "I brug",
+        "interval": "Interval",
+        "is_catch_all": "Fang-alle for domæne/r",
+        "last_mail_login": "Sidste mail login",
+        "last_run": "Sidste kørsel",
+        "loading": "Indlæser...",
+        "mailbox_details": "Postkassedetaljer",
+        "messages": "beskeder",
+        "never": "Aldrig",
+        "new_password": "Nyt kodeord",
+        "new_password_description": "Krav: 6 tegn lange, bogstaver og tal.",
+        "new_password_repeat": "Bekræftelsesadgangskode (gentag)",
+        "no_active_filter": "Intet aktivt filter tilgængeligt",
+        "no_last_login": "Ingen sidste UI-loginoplysninger",
+        "no_record": "Ingen optegnelser",
+        "password": "Kodeord",
+        "password_now": "Nuværende kodeord (bekræft ændring)",
+        "password_repeat": "Kodeord (gentag)",
+        "pushover_evaluate_x_prio": "Eskaler e-mail med høj prioritet [<code>X-Prioritet: 1</code>]",
+        "pushover_info": "Indstillinger for push-meddelelser gælder for al ren (ikke-spam) post, der leveres til <b>%s</b> inklusive aliaser (delt, ikke-delt, tagget).",
+        "pushover_only_x_prio": "Only consider high priority mail [<code>X-Priority: 1</code>]",
+        "pushover_sender_array": "Overvej følgende afsender-e-mail-adresser <small>(comma-separated)</small>",
+        "pushover_sender_regex": "Match afsendere efter følgende regex",
+        "pushover_text": "Notifikations tekst",
+        "pushover_title": "Notifikations titel",
+        "pushover_vars": "Når der ikke er defineret et afsenderfilter, overvejes alle mails.<br>Regex såvel filtre som nøjagtige afsenderkontrol kan defineres individuelt og vil blive betragtet i rækkefølge. De er ikke afhængige af hinanden.<br>Brugbare variabler til tekst og titel (vær opmærksom på databeskyttelsespolitikker)",
+        "pushover_verify": "Bekræft legitimationsoplysninger",
+        "q_add_header": "Uønsket Mappe",
+        "q_all": "Alle Kategorier",
+        "q_reject": "Afvist",
+        "quarantine_notification": "Karantænemeddelelser",
+        "quarantine_category": "Karantænemeddelelseskategori",
+        "quarantine_notification_info": "Når en meddelelse er sendt, markeres elementrne som \"notified\" og der sendes ingen yderligere meddelelser om denne særlige element.",
+        "quarantine_category_info": "Meddelelseskategorien \"Rejected\" inkluderer mail, der blev afvist, mens \"Junk folder\" vil underrette en bruger om mails, der blev sat i junk-mappen.",
+        "remove": "Slet",
+        "running": "Kører",
+        "save": "Gem ændring",
+        "save_changes": "Gem ændringer",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Afsender tjek er slået fra</span>",
+        "shared_aliases": "Delte aliasadresser",
+        "shared_aliases_desc": "Delt alias påvirkes ikke af brugerspecifikke indstillinger såsom spamfilter eller krypteringspolitik. Tilselementnde spamfiltre kan kun foretages af en administrator som en politik, der dækker hele domænet.",
+        "show_sieve_filters": "Vis det aktive brugerfilter",
+        "sogo_profile_reset": "Nulstil SOGo profil",
+        "sogo_profile_reset_help": "Dette vil ødelægge en bruger SOGo-profil og <b>slette alle kontakt- og kalenderdata, der ikke kan hentes</b>.",
+        "sogo_profile_reset_now": "Nulstil profil nu",
+        "spam_aliases": "Midlertidige e-mail kaldenavne",
+        "spam_score_reset": "Nulstil til server Standardværdi",
+        "spamfilter": "Spam filter",
+        "spamfilter_behavior": "Bedømmelse",
+        "spamfilter_bl": "Sortliste",
+        "spamfilter_bl_desc": "Sortlistede e-mail-adresser til <b>altid</b> at klassificeres som spam og afvise. Afvist mail vil <b>ikke</b> kopieres til karantæne. Jokertegn kan bruges. Et filter anvendes kun til direkte aliaser (aliaser med en enkelt målpostkasse) eksklusive fang-aliaser og selve en postkasse.",
+        "spamfilter_default_score": "Standardværdi",
+        "spamfilter_green": "Grøn: denne besked er ikke uønsket",
+        "spamfilter_hint": "Den første værdi beskriver \"low spam score\", det andet repræsenterer \"high spam score\".",
+        "spamfilter_red": "Rød: Denne besked er uønsket og bliver afvist af serveren",
+        "spamfilter_table_action": "Handling",
+        "spamfilter_table_add": "Tilføj element",
+        "spamfilter_table_domain_policy": "n/a (domæne politik)",
+        "spamfilter_table_empty": "Intet data at vise",
+        "spamfilter_table_remove": "slet",
+        "spamfilter_table_rule": "Regl",
+        "spamfilter_wl": "Hvisliste",
+        "spamfilter_wl_desc": "Hvidlistede e-mail-adresser til <b>aldrig</b> at klassificeres som spam. Wildcards kan bruges. Et filter anvendes kun på direkte aliaser (aliaser med en enkelt målpostkasse) eksklusive catch-aliaser og selve en postkasse.",
+        "spamfilter_yellow": "Gul: denne besked kan være spam, vil blive tagget som spam og flyttes til din junk-mappe",
+        "status": "Status",
+        "sync_jobs": "Sync jobs",
+        "tag_handling": "Set handling for taggede mails",
+        "tag_help_example": "Eksempel på en tagget e-mail-adresse : me<b>+Tacaly</b>@example.org",
+        "tag_help_explain": "I undermappe: En ny undermappe opkaldt efter tagget oprettes under INBOX  (\"INBOX/Tacaly\").<br>\r\nI emne: navnene på tags bliver præpenderet til mailsemnet, eksempel:  \"[Tacaly] Mine Nyhedder\".",
+        "tag_in_none": "Gør intet",
+        "tag_in_subfolder": "I undermappe",
+        "tag_in_subject": "I emne",
+        "text": "Tekst",
+        "title": "Titel",
+        "tls_enforce_in": "Tving TLS indgående",
+        "tls_enforce_out": "Tving TLS udgående",
+        "tls_policy": "krypterings politik",
+        "tls_policy_warning": "<strong>Warning:</strong> If you decide to enforce encrypted mail transfer, you may lose emails.<br>Messages to not satisfy the policy will be bounced with a hard fail by the mail system.<br>This option applies to your primary email address (login name), all addresses derived from alias domains as well as alias addresses <b>with only this single mailbox</b> as target.",
+        "user_settings": "Bruger indstillinger",
+        "username": "Brugernavn",
+        "verify": "Bekræft",
+        "waiting": "Venter",
+        "week": "uge",
+        "weekly": "Ugeligt",
+        "weeks": "uger"
+    },
+    "warning": {
+        "cannot_delete_self": "Kan ikke slette en bruger som er logget ind.",
+        "domain_added_sogo_failed": "Domæne er tilføjet men kan ikke genstarte SOGo, tjek venligst dine server logs.",
+        "dovecot_restart_failed": "Dovecot kunne ikke genstarte, tjek venligst dine logs",
+        "fuzzy_learn_error": "Fuzzy hash lærings fejl: %s",
+        "hash_not_found": "Hash blev ikke fundet eller allerede slettet",
+        "ip_invalid": "Sprang over ugyldige IP: %s",
+        "no_active_admin": "Kan ikke deaktivere den sidste administrator",
+        "quota_exceeded_scope": "Domænekvote overskredet: Kun ubegrænsede postkasser kan oprettes i dette domæneomfang.",
+        "session_token": "Form nøgle ugyldig: Nøgle passer ikke",
+        "session_ua": "Form nøgle ugyldig: Bruger-Agent gyldighedskontrols fejl"
+    }
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.de.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.de.json
index 4ab9331..4d2f27a 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.de.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.de.json
@@ -2,19 +2,22 @@
     "acl": {
         "alias_domains": "Alias-Domains hinzufügen",
         "app_passwds": "App-Passwörter verwalten",
-        "bcc_maps": "BCC Maps",
-        "delimiter_action": "Delimiter Aktionen (tags)",
+        "bcc_maps": "BCC-Maps",
+        "delimiter_action": "Delimiter-Aktionen (tags)",
+        "domain_desc": "Domainbeschreibung ändern",
+        "domain_relayhost": "Relayhost für eine Domain setzen",
         "eas_reset": "EAS-Cache zurücksetzen",
         "extend_sender_acl": "Eingabe externer Absenderadressen erlauben",
         "filters": "Filter",
         "login_as": "Einloggen als Mailbox-Benutzer",
+        "mailbox_relayhost": "Relayhost für eine Mailbox setzen",
         "prohibited": "Untersagt durch Richtlinie",
         "protocol_access": "Ändern der erlaubten Protokolle",
         "pushover": "Pushover",
         "quarantine": "Quarantäne-Aktionen",
         "quarantine_attachments": "Anhänge aus Quarantäne",
-        "quarantine_notification": "Ändern der Quarantäne-Benachrichtigung",
         "quarantine_category": "Ändern der Quarantäne-Benachrichtigungskategorie",
+        "quarantine_notification": "Ändern der Quarantäne-Benachrichtigung",
         "ratelimit": "Rate limit",
         "recipient_maps": "Empfängerumschreibungen",
         "smtp_ip_access": "Verwalten der erlaubten Hosts für SMTP",
@@ -26,10 +29,13 @@
         "syncjobs": "Sync Jobs",
         "tls_policy": "Verschlüsselungsrichtlinie",
         "unlimited_quota": "Unendliche Quota für Mailboxen",
-        "domain_desc": "Domainbeschreibung ändern"
+        "xmpp_admin": "Benutzer zum XMPP-Administrator ernennen",
+        "xmpp_domain_access": "XMPP-Zugang einer Domain konfigurieren",
+        "xmpp_mailbox_access": "XMPP-Zugang eines Benutzers einstellen",
+        "xmpp_prefix": "XMPP-Subdomain/Präfix ändern"
     },
     "add": {
-        "activate_filter_warn": "Alle anderen Filter diesen Typs werden deaktiviert, falls dieses Script aktiv markiert wird.",
+        "activate_filter_warn": "Alle anderen Filter dieses Typs werden deaktiviert, falls dieses Script aktiv markiert wird.",
         "active": "Aktiv",
         "add": "Hinzufügen",
         "add_domain_only": "Nur Domain hinzufügen",
@@ -41,7 +47,7 @@
         "app_name": "App-Name",
         "app_password": "App-Passwort hinzufügen",
         "automap": "Ordner automatisch mappen (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
-        "backup_mx_options": "Relay Optionen",
+        "backup_mx_options": "Relay-Optionen",
         "comment_info": "Ein privater Kommentar ist für den Benutzer nicht einsehbar. Ein öffentlicher Kommentar wird als Tooltip im Interface des Benutzers angezeigt.",
         "custom_params": "Eigene Parameter",
         "custom_params_hint": "Richtig: --param=xy, falsch: --param xy",
@@ -53,7 +59,7 @@
         "disable_login": "Login verbieten (Mails werden weiterhin angenommen)",
         "domain": "Domain",
         "domain_matches_hostname": "Domain %s darf nicht dem Hostnamen entsprechen",
-        "domain_quota_m": "Domain Speicherplatz gesamt (MiB)",
+        "domain_quota_m": "Domain-Speicherplatz gesamt (MiB)",
         "enc_method": "Verschlüsselung",
         "exclude": "Elemente ausschließen (Regex)",
         "full_name": "Vor- und Nachname",
@@ -84,7 +90,7 @@
         "relay_all": "Alle Empfänger-Adressen relayen",
         "relay_all_info": "↪ Wenn <b>nicht</b> alle Empfänger-Adressen relayt werden sollen, müssen \"blinde\" Mailboxen für jede Adresse, die relayt werden soll, erstellen werden.",
         "relay_domain": "Diese Domain relayen",
-        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transport Maps können erstellt werden, um  individuelle Ziele für eine Relay-Domain zu definieren.",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transport-Maps können erstellt werden, um  individuelle Ziele für eine Relay-Domain zu definieren.",
         "relay_unknown_only": "Nur nicht-lokale Mailboxen relayen. Existente Mailboxen werden weiterhin lokal zugestellt.",
         "relayhost_wrapped_tls_info": "Bitte <b>keine</b> \"TLS-wrapped Ports\" verwenden (etwa SMTPS via Port 465/tcp).<br>\r\nDer Transport wird stattdessen STARTTLS anfordern, um TLS zu verwenden. TLS kann unter \"TLS Policy Maps\" erzwungen werden.",
         "select": "Bitte auswählen",
@@ -102,7 +108,15 @@
         "timeout2": "Timeout für Verbindung zum lokalen Host",
         "username": "Benutzername",
         "validate": "Validieren",
-        "validation_success": "Erfolgreich validiert"
+        "validation_success": "Erfolgreich validiert",
+        "xmpp": "XMPP für diese Domain aktivieren",
+        "xmpp_access": "XMPP-Zugang",
+        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
+        "xmpp_admin": "XMPP-Administrator",
+        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP-Domain.",
+        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
+        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden."
     },
     "admin": {
         "access": "Zugang",
@@ -118,13 +132,15 @@
         "add_relayhost": "Senderabhängigen Transport hinzufügen",
         "add_relayhost_hint": "Bitte beachten Sie, dass Anmeldedaten unverschlüsselt gespeichert werden.<br>\r\n  Angelegte Transporte dieser Art sind <b>senderabhängig</b> und müssen erst einer Domain zugewiesen werden, bevor sie als Transport verwendet werden.<br>\r\n  Diese Einstellungen entsprechen demnach <i>nicht</i> dem \"relayhost\" Parameter in Postfix.",
         "add_row": "Reihe hinzufügen",
-        "add_settings_rule": "Rspamd Regel hinzufügen",
+        "add_settings_rule": "Rspamd-Regel hinzufügen",
         "add_transport": "Transport hinzufügen",
         "add_transports_hint": "Bitte beachten Sie, dass Anmeldedaten unverschlüsselt gespeichert werden.",
         "additional_rows": " zusätzliche Zeilen geladen",
         "admin": "Administrator",
         "admin_details": "Administrator bearbeiten",
         "admin_domains": "Domain-Zuweisungen",
+        "admins": "Administratoren",
+        "admins_ldap": "LDAP-Administratoren",
         "advanced_settings": "Erweiterte Einstellungen",
         "api_allow_from": "IP-Adressen oder Netzwerke (CIDR Notation) für Zugriff auf API",
         "api_info": "Die API befindet sich noch in Entwicklung, die Dokumentation kann unter <a href=\"/api\">/api</a> abgerufen werden.",
@@ -136,10 +152,11 @@
         "arrival_time": "Ankunftszeit (Serverzeit)",
         "authed_user": "Auth. Benutzer",
         "ays": "Soll der Vorgang wirklich ausgeführt werden?",
-        "ban_list_info": "Übersicht ausgesperrter Netzwerke: <b>Netzwerk (verbleibende Banzeit) - [Aktionen]</b>.<br />IPs, die zum Entsperren eingereiht werden, verlassen die Liste aktiver Bans nach wenigen Sekunden.<br />Rote Labels sind Indikatoren für aktive Blacklisteinträge.",
+        "ban_list_info": "Übersicht ausgesperrter Netzwerke: <b>Netzwerk (verbleibende Bannzeit) - [Aktionen]</b>.<br />IPs, die zum Entsperren eingereiht werden, verlassen die Liste aktiver Banns nach wenigen Sekunden.<br />Rote Labels sind Indikatoren für aktive Blacklist-Einträge.",
         "change_logo": "Logo ändern",
         "configuration": "Konfiguration",
-        "credentials_transport_warning": "<b>Warnung</b>: Das Hinzufügen einer neuen Regel bewirkt die Aktualisierung der Authentifizierungsdaten aller vorhandenen Einträge mit identischem Host.",
+        "convert_html_to_text": "Konvertiere HTML zu reinem Text",
+        "credentials_transport_warning": "<b>Warnung</b>: Das Hinzufügen einer neuen Regel bewirkt die Aktualisierung der Authentifizierungsdaten aller vorhandenen Einträge mit identischem Next Hop.",
         "customer_id": "Kunde",
         "customize": "UI-Anpassung",
         "delete_queue": "Alle löschen",
@@ -169,11 +186,11 @@
         "excludes": "Diese Empfänger ausschließen",
         "f2b_ban_time": "Bannzeit in Sekunden",
         "f2b_blacklist": "Blacklist für Netzwerke und Hosts",
-        "f2b_filter": "Regex Filter",
+        "f2b_filter": "Regex-Filter",
         "f2b_list_info": "Ein Host oder Netzwerk auf der Blacklist wird immer eine Whitelist-Einheit überwiegen. <b>Die Aktualisierung der Liste dauert einige Sekunden.</b>",
         "f2b_max_attempts": "Max. Versuche",
-        "f2b_netban_ipv4": "Netzbereich für IPv4-Bans (8-32)",
-        "f2b_netban_ipv6": "Netzbereich für IPv6-Bans (8-128)",
+        "f2b_netban_ipv4": "Netzbereich für IPv4-Banns (8-32)",
+        "f2b_netban_ipv6": "Netzbereich für IPv6-Banns (8-128)",
         "f2b_parameters": "Fail2ban-Parameter",
         "f2b_regex_info": "Berücksichtigte Logs: SOGo, Postfix, Dovecot, PHP-FPM.",
         "f2b_retry_window": "Wiederholungen im Zeitraum von (s)",
@@ -187,9 +204,10 @@
         "generate": "generieren",
         "guid": "GUID - Eindeutige Instanz-ID",
         "guid_and_license": "GUID & Lizenz",
-        "hash_remove_info": "Das Entfernen eines Ratelimit Hashes - sofern noch existent - bewirkt den Reset gezählter Nachrichten dieses Elements.<br>\r\n  Jeder Hash wird durch eine eindeutige Farbe gekennzeichnet.",
+        "hash_remove_info": "Das Entfernen eines Ratelimit-Hashes - sofern noch existent - bewirkt den Reset gezählter Nachrichten dieses Elements.<br>\r\n  Jeder Hash wird durch eine eindeutige Farbe gekennzeichnet.",
         "help_text": "Hilfstext unter Login-Maske (HTML ist zulässig)",
         "host": "Host",
+        "html": "HTML",
         "import": "Importieren",
         "import_private_key": "Private Key importieren",
         "in_use_by": "Verwendet von",
@@ -197,28 +215,38 @@
         "include_exclude": "Ein- und Ausschlüsse",
         "include_exclude_info": "Ohne Auswahl werden <b>alle Mailboxen</b> adressiert.",
         "includes": "Diese Empfänger einschließen",
+        "is_mx_based": "MX-basiert",
         "last_applied": "Zuletzt angewendet",
         "license_info": "Eine Lizenz ist nicht erforderlich, hilft jedoch der Entwicklung mailcows.<br><a href=\"https://www.servercow.de/mailcow#sal\" target=\"_blank\" alt=\"SAL Bestellung\">Hier kann die mailcow-GUID registriert werden.</a> Alternativ ist <a href=\"https://www.servercow.de/mailcow#support\" target=\"_blank\" alt=\"SAL Bestellung\">die Bestellung von Support-Paketen möglich</a>.",
         "link": "Link",
         "loading": "Bitte warten...",
+        "login_time": "Zeit",
         "logo_info": "Die hochgeladene Grafik wird für die Navigationsleiste auf eine Höhe von 40px skaliert. Für die Darstellung auf der Login-Maske beträgt die skalierte Breite maximal 250px. Eine frei skalierbare Grafik (etwa SVG) wird empfohlen.",
-        "lookup_mx": "Ziel gegen MX prüfen (etwa .outlook.com, um alle Ziele mit MX *.outlook.com zu routen)",
+        "lookup_mx": "Ziel mit MX vergleichen (Regex, etwa <code>.*google\\.com</code>, um alle Ziele mit MX *google.com zu routen)",
         "main_name": "\"mailcow UI\" Name",
         "merged_vars_hint": "Ausgegraute Reihen wurden aus der Datei <code>vars.(local.)inc.php</code> gelesen und können hier nicht verändert werden.",
         "message": "Nachricht",
         "message_size": "Nachrichtengröße",
         "nexthop": "Next Hop",
         "no": "&#10005;",
-        "no_active_bans": "Keine aktiven Bans",
+        "no_active_bans": "Keine aktiven Banns",
         "no_new_rows": "Keine weiteren Zeilen vorhanden",
         "no_record": "Kein Eintrag",
         "oauth2_client_id": "Client ID",
         "oauth2_client_secret": "Client Secret",
-        "oauth2_info": "Die OAuth2 Implementierung unterstützt den Grant Type \"Authorization Code\" mit Refresh Tokens.<br>\r\nDer Server wird automatisch einen neuen Refresh Token ausstellen, sobald ein vorheriger Token gegen einen Access Token eingetauscht wurde.<br><br>\r\n→ Der Standard Scope lautet <i>profile</i>. Nur Mailbox-Benutzer können sich gegen OAuth2 authentifizieren. Wird kein Scope angegeben, verwendet das System per Standard <i>profile</i>.<br>\r\n→ Der <i>state</i> Parameter wird im Zuge des Autorisierungsprozesses benötigt.<br><br>\r\nDie Pfade für die OAuth2 API lauten wie folgt: <br>\r\n<ul>\r\n  <li>Authorization Endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token Endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource Page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nDie Regenerierung des Client Secrets wird vorhandene Authorization Codes nicht invalidieren, dennoch wird der Renew des Access Tokens durch einen Refresh Token nicht mehr gelingen.<br><br>\r\nDas Entfernen aller Client Tokens verursacht die umgehende Terminierung aller aktiven OAuth2 Sessions. Clients müssen sich erneut gegen die OAuth2 Anwendung authentifizieren.",
-        "oauth2_redirect_uri": "Redirect URI",
+        "oauth2_info": "Die OAuth2 Implementierung unterstützt den Grant Type \"Authorization Code\" mit Refresh Tokens.<br>\r\nDer Server wird automatisch einen neuen Refresh Token ausstellen, sobald ein vorheriger Token gegen einen Access Token eingetauscht wurde.<br><br>\r\n&#8226; Der Standard Scope lautet <i>profile</i>. Nur Mailbox-Benutzer können sich gegen OAuth2 authentifizieren. Wird kein Scope angegeben, verwendet das System per Standard <i>profile</i>.<br>\r\n&#8226; Der <i>state</i> Parameter wird im Zuge des Autorisierungsprozesses benötigt.<br><br>\r\nDie Pfade für die OAuth2 API lauten wie folgt: <br>\r\n<ul>\r\n  <li>Authorization Endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token Endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource Page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nDie Regenerierung des Client Secrets wird vorhandene Authorization Codes nicht invalidieren, dennoch wird der Renew des Access Tokens durch einen Refresh Token nicht mehr gelingen.<br><br>\r\nDas Entfernen aller Client Tokens verursacht die umgehende Terminierung aller aktiven OAuth2 Sessions. Clients müssen sich erneut gegen die OAuth2 Anwendung authentifizieren.",
+        "oauth2_redirect_uri": "Redirect-URI",
         "oauth2_renew_secret": "Neues Client Secret generieren",
         "oauth2_revoke_tokens": "Alle Client Tokens entfernen",
+        "optional": "Optional",
         "password": "Passwort",
+        "password_length": "Passwortlänge",
+        "password_policy": "Passwortrichtlinie",
+        "password_policy_chars": "Muss ein alphabetisches Zeichen enthalten",
+        "password_policy_length": "Mindestlänge des Passwortes ist %d Zeichen",
+        "password_policy_lowerupper": "Muss Großbuchstaben und Kleinbuchstaben enthalten",
+        "password_policy_numbers": "Muss eine Ziffer enthalten",
+        "password_policy_special_chars": "Muss Sonderzeichen enthalten",
         "password_repeat": "Passwort wiederholen",
         "priority": "Gewichtung",
         "private_key": "Private Key",
@@ -226,8 +254,8 @@
         "quarantine_bcc": "Eine Kopie aller Benachrichtigungen (BCC) an folgendes Postfach senden:<br><small>Leer bedeutet deaktiviert. <b>Unsignierte, ungeprüfte E-Mail. Sollte nur intern zugestellt werden.</b></small>",
         "quarantine_exclude_domains": "Domains und Alias-Domains ausschließen",
         "quarantine_max_age": "Maximales Alter in Tagen<br><small>Wert muss größer oder gleich 1 Tag sein.</small>",
-        "quarantine_max_size": "Maximale Größe in MiB (größere Elemente werden verworfen):<br><small>0 bedeutet <b>nicht</b> unlimitiert.</small>",
         "quarantine_max_score": "Nicht benachrichtigen, wenn der Spam-Score höher ist als der folgende Wert:<br><small>Standardwert 9999.0</small>",
+        "quarantine_max_size": "Maximale Größe in MiB (größere Elemente werden verworfen):<br><small>0 bedeutet <b>nicht</b> unlimitiert.</small>",
         "quarantine_notification_html": "Benachrichtigungs-E-Mail Inhalt:<br><small>Leer lassen, um Standard-Template wiederherzustellen.</small>",
         "quarantine_notification_sender": "Benachrichtigungs-E-Mail Absender",
         "quarantine_notification_subject": "Benachrichtigungs-E-Mail Betreff",
@@ -240,9 +268,9 @@
         "queue_deliver_mail": "Ausliefern",
         "queue_hold_mail": "Zurückhalten",
         "queue_manager": "Queue Manager",
+        "queue_show_message": "Nachricht anzeigen",
         "queue_unban": "Entsperren einreihen",
         "queue_unhold_mail": "Freigeben",
-        "queue_show_message": "Nachricht anzeigen",
         "quota_notification_html": "Benachrichtigungs-E-Mail Inhalt:<br><small>Leer lassen, um Standard-Template wiederherzustellen.</small>",
         "quota_notification_sender": "Benachrichtigungs-E-Mail Absender",
         "quota_notification_subject": "Benachrichtigungs-E-Mail Betreff",
@@ -256,8 +284,9 @@
         "recipients": "Empfänger",
         "refresh": "Neu laden",
         "regen_api_key": "API-Key regenerieren",
-        "regex_maps": "Regex Maps",
+        "regex_maps": "Regex-Maps",
         "relay_from": "Absenderadresse",
+        "relay_rcpt": "Empfängeradresse",
         "relay_run": "Test durchführen",
         "relayhosts": "Senderabhängige Transport Maps",
         "relayhosts_hint": "Erstellen Sie senderabhängige Transporte, um diese im Einstellungsdialog einer Domain auszuwählen.<br>\r\n  Der Transporttyp lautet immer \"smtp:\", verwendet TLS wenn angeboten und unterstützt kein wrapped TLS (SMTPS). Benutzereinstellungen bezüglich Verschlüsselungsrichtlinie werden beim Transport berücksichtigt.<br>\r\n  Gilt neben ausgewählter Domain auch für untergeordnete Alias-Domains.",
@@ -273,32 +302,36 @@
         "rsetting_none": "Keine Regel hinterlegt",
         "rsettings_insert_preset": "Beispiel \"%s\" laden",
         "rsettings_preset_1": "Alles außer DKIM und Ratelimits für authentifizierte Benutzer deaktivieren",
-        "rsettings_preset_2": "Spam an Postmaster-Addressen nicht blockieren",
+        "rsettings_preset_2": "Spam an Postmaster-Adressen nicht blockieren",
         "rsettings_preset_3": "Nur einem oder vielen Absendern erlauben, eine Mailbox anzuschreiben (etwa interne Mailboxen)",
+        "rsettings_preset_4": "Rspamd für eine Domain deaktivieren",
         "rspamd-com_settings": "Ein Name wird automatisch generiert. Beispielinhalte zur Einsicht stehen nachstehend bereit. Siehe auch <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
         "rspamd_global_filters": "Globale Filter-Maps",
         "rspamd_global_filters_agree": "Ich werde vorsichtig sein!",
         "rspamd_global_filters_info": "Globale Filter-Maps steuern globales White- und Blacklisting dieses Servers.",
         "rspamd_global_filters_regex": "Die akzeptierte Form für Einträge sind <b>ausschließlich</b> Regular Expressions.\r\n  Trotz rudimentärer Überprüfung der Map, kann es zu fehlerhaften Einträgen kommen, die Rspamd im schlechtesten Fall mit unvorhersehbarer Funktionalität bestraft.<br>\r\n  Das korrekte Format lautet \"/pattern/options\" (Beispiel: <code>/.+@domain\\.tld/i</code>).<br>\r\n  Der Name der Map beschreibt die jeweilige Funktion.<br>\r\n  Rspamd versucht die Maps umgehend aufzulösen. Bei Problemen sollte <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">Rspamd manuell neugestartet werden</a><br>Elemente auf Blacklists sind von der Quarantäne ausgeschlossen.",
-        "rspamd_settings_map": "Rspamd Settings Map",
+        "rspamd_settings_map": "Rspamd-Settings-Map",
         "sal_level": "Moo-Level",
         "save": "Änderungen speichern",
         "search_domain_da": "Suche Domains",
         "send": "Senden",
         "sender": "Sender",
+        "service": "Dienst",
         "service_id": "Service",
         "source": "Quelle",
         "spamfilter": "Spamfilter",
         "subject": "Betreff",
+        "success": "Erfolg",
         "sys_mails": "System-E-Mails",
         "text": "Text",
         "time": "Zeit",
         "title": "Title",
         "title_name": "\"mailcow UI\" Webseiten Titel",
         "to_top": "Nach oben",
-        "transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (mehrere Werte getrennt durch Komma einzugeben)",
-        "transport_maps": "Transport Maps",
-        "transports_hint": "→ Transport Maps <b>überwiegen</b> senderabhängige Transport Maps.<br>\r\n→ Transport Maps ignorieren Mailbox-Einstellungen für ausgehende Verschlüsselung. Eine serverweite TLS-Richtlinie wird jedoch angewendet.<br>\r\n→ Der Transport erfolgt immer via \"smtp:\", verwendet TLS wenn angeboten und unterstützt kein wrapped TLS (SMTPS).<br>\r\n→ Adressen, die mit \"/localhost$/\" übereinstimmen, werden immer via \"local:\" transportiert, daher sind sie von einer Zieldefinition \"*\" ausgeschlossen.<br>\r\n→ Die Authentifizierung wird anhand des \"Next hop\" Parameters ermittelt. Hierbei würde bei einem beispielhaften Wert \"[host]:25\" immer zuerst \"host\" abfragt und <b>erst im Anschluss</b> \"[host]:25\". Dieses Verhalten schließt die <b>gleichzeitige Verwendung</b> von Einträgen der Art \"host\" sowie \"[host]:25\" aus.",
+        "transport_dest_format": "Regex oder Syntax: example.org, .example.org, *, box@example.org (getrennt durch Komma einzugeben)",
+        "transport_maps": "Transport-Maps",
+        "transport_test_rcpt_info": "&#8226; Die Verwendung von null@hosted.mailcow.de testet das Relay gegen ein fremdes Ziel.",
+        "transports_hint": "&#8226; Transport-Maps <b>überwiegen</b> senderabhängige Transport Maps.<br>\r\n&#8226; MX-basierte Transporte werden bevorzugt.<br>\r\n&#8226; Transport-Maps ignorieren Mailbox-Einstellungen für ausgehende Verschlüsselung. Eine serverweite TLS-Richtlinie wird jedoch angewendet.<br>\r\n&#8226; Der Transport erfolgt immer via \"smtp:\", verwendet TLS wenn angeboten und unterstützt kein wrapped TLS (SMTPS).<br>\r\n&#8226; Adressen, die mit \"/localhost$/\" übereinstimmen, werden immer via \"local:\" transportiert, daher sind sie von einer Zieldefinition \"*\" ausgeschlossen.<br>\r\n&#8226; Die Authentifizierung wird anhand des \"Next hop\" Parameters ermittelt. Hierbei würde bei einem beispielhaften Wert \"[host]:25\" immer zuerst \"host\" abfragt und <b>erst im Anschluss</b> \"[host]:25\". Dieses Verhalten schließt die <b>gleichzeitige Verwendung</b> von Einträgen der Art \"host\" sowie \"[host]:25\" aus.",
         "ui_footer": "Footer (HTML zulässig)",
         "ui_header_announcement": "Ankündigungen",
         "ui_header_announcement_active": "Ankündigung aktivieren",
@@ -306,9 +339,9 @@
         "ui_header_announcement_help": "Die Ankündigungsbox erzeugt einen deutlichen Hinweis für alle Benutzer und auf der Login-Seite der UI.",
         "ui_header_announcement_select": "Ankündigungstyp auswählen",
         "ui_header_announcement_type": "Typ",
+        "ui_header_announcement_type_danger": "Sehr wichtig",
         "ui_header_announcement_type_info": "Info",
         "ui_header_announcement_type_warning": "Wichtig",
-        "ui_header_announcement_type_danger": "Sehr wichtig",
         "ui_texts": "UI-Label und Texte",
         "unban_pending": "ausstehend",
         "unchanged_if_empty": "Unverändert, wenn leer",
@@ -344,13 +377,14 @@
         "domain_quota_m_in_use": "Domain-Speicherplatzlimit muss größer oder gleich %d MiB sein",
         "extra_acl_invalid": "Externe Absenderadresse \"%s\" ist ungültig",
         "extra_acl_invalid_domain": "Externe Absenderadresse \"%s\" verwendet eine ungültige Domain",
+        "fido2_verification_failed": "FIDO2-Verifizierung fehlgeschlagen: %s",
         "file_open_error": "Datei kann nicht zum Schreiben geöffnet werden",
         "filter_type": "Falscher Filtertyp",
         "from_invalid": "Die Absenderadresse muss eine gültige E-Mail-Adresse sein",
         "global_filter_write_error": "Kann Filterdatei nicht schreiben: %s",
-        "global_map_invalid": "Rspamd Map %s ist ungültig",
+        "global_map_invalid": "Rspamd-Map %s ist ungültig",
         "global_map_write_error": "Kann globale Map ID %s nicht schreiben: %s",
-        "goto_empty": "Eine Alias-Adresse muss auf mindestens eine gütlige Ziel-Adresse zeigen",
+        "goto_empty": "Eine Alias-Adresse muss auf mindestens eine gültige Ziel-Adresse zeigen",
         "goto_invalid": "Ziel-Adresse %s ist ungültig",
         "ham_learn_error": "Ham Lernfehler: %s",
         "imagick_exception": "Fataler Bildverarbeitungsfehler",
@@ -387,6 +421,7 @@
         "network_host_invalid": "Netzwerk oder Host ungültig: %s",
         "next_hop_interferes": "%s verhindert das Hinzufügen von Next Hop %s",
         "next_hop_interferes_any": "Ein vorhandener Eintrag verhindert das Hinzufügen von Next Hop %s",
+        "nginx_reload_failed": "Nginx Reload ist fehlgeschlagen: %s",
         "no_user_defined": "Kein Benutzer definiert",
         "object_exists": "Objekt %s existiert bereits",
         "object_is_not_numeric": "Wert %s ist nicht numerisch",
@@ -402,7 +437,7 @@
         "quota_not_0_not_numeric": "Speicherplatz muss numerisch und >= 0 sein",
         "recipient_map_entry_exists": "Eine Empfängerumschreibung für Objekt \"%s\" existiert bereits",
         "redis_error": "Redis Fehler: %s",
-        "relayhost_invalid": "Mapeintrag %s ist ungültig",
+        "relayhost_invalid": "Map-Eintrag %s ist ungültig",
         "release_send_failed": "Die Nachricht konnte nicht versendet werden: %s",
         "reset_f2b_regex": "Regex Filter konnten nicht in vorgegebener Zeit zurückgesetzt werden, bitte erneut versuchen oder die Webseite neu laden.",
         "resource_invalid": "Ressourcenname %s ist ungültig",
@@ -425,51 +460,63 @@
         "tls_policy_map_entry_exists": "Eine TLS-Richtlinie \"%s\" existiert bereits",
         "tls_policy_map_parameter_invalid": "Parameter ist ungültig",
         "totp_verification_failed": "TOTP-Verifizierung fehlgeschlagen",
-        "transport_dest_exists": "Transport Maps Ziel \"%s\" existiert bereits",
+        "transport_dest_exists": "Transport-Maps-Ziel \"%s\" existiert bereits",
         "u2f_verification_failed": "U2F-Verifizierung fehlgeschlagen: %s",
-        "fido2_verification_failed": "FIDO2-Verifizierung fehlgeschlagen: %s",
         "unknown": "Ein unbekannter Fehler trat auf",
-        "unknown_tfa_method": "Unbekannte TFA Methode",
+        "unknown_tfa_method": "Unbekannte TFA-Methode",
         "unlimited_quota_acl": "Unendliche Quota untersagt durch ACL",
         "username_invalid": "Benutzername %s kann nicht verwendet werden",
         "validity_missing": "Bitte geben Sie eine Gültigkeitsdauer an",
         "value_missing": "Bitte alle Felder ausfüllen",
+        "xmpp_map_write_error": "Kann XMPP-Map nicht schreiben: %s",
+        "xmpp_reload_failed": "XMPP konnte nicht neu geladen werden",
+        "xmpp_restart_failed": "XMPP konnte nicht neu gestartet werden",
         "yotp_verification_failed": "Yubico OTP-Verifizierung fehlgeschlagen: %s"
     },
     "debug": {
         "chart_this_server": "Chart (dieser Server)",
         "containers_info": "Container-Information",
         "disk_usage": "Festplattennutzung",
+        "docs": "Dokumente",
         "external_logs": "Externe Logs",
         "history_all_servers": "History (alle Server)",
         "in_memory_logs": "In-memory Logs",
         "jvm_memory_solr": "JVM-Speicherauslastung",
+        "last_modified": "Zuletzt geändert",
         "log_info": "<p>mailcow <b>in-memory Logs</b> werden in Redis Listen gespeichert, die maximale Anzahl der Einträge pro Anwendung richtet sich nach LOG_LINES (%d).\r\n  <br>In-memory Logs sind vergänglich und nicht zur ständigen Aufbewahrung bestimmt. Alle Anwendungen, die in-memory protokollieren, schreiben ebenso in den Docker Daemon.\r\n  <br>Das in-memory Protokoll versteht sich als schnelle Übersicht zum Debugging eines Containers, für komplexere Protokolle sollte der Docker Daemon konsultiert werden.</p>\r\n  <p><b>Externe Logs</b> werden via API externer Applikationen bezogen.</p>\r\n  <p><b>Statische Logs</b> sind weitestgehend Aktivitätsprotokolle, die nicht in den Docker Daemon geschrieben werden, jedoch permanent verfügbar sein müssen (ausgeschlossen API Logs).</p>",
+        "login_time": "Zeit",
         "logs": "Protokolle",
+        "online_users": "Benutzer online",
         "restart_container": "Neustart",
+        "service": "Dienst",
+        "size": "Größe",
         "solr_dead": "Solr startet, ist deaktiviert oder temporär nicht erreichbar.",
-        "solr_docs": "Dokumente",
-        "solr_last_modified": "Zuletzt geändert",
-        "solr_size": "Größe",
-        "solr_started_at": "Gestartet am",
         "solr_status": "Solr Status",
-        "solr_uptime": "Uptime",
+        "started_at": "Gestartet am",
         "started_on": "Gestartet am",
         "static_logs": "Statische Logs",
-        "system_containers": "System & Container"
+        "success": "Erfolg",
+        "system_containers": "System & Container",
+        "uptime": "Uptime",
+        "username": "Benutzername",
+        "xmpp_dead": "XMPP startet, ist deaktiviert oder temporär nicht erreichbar.",
+        "xmpp_status": "XMPP Status"
     },
     "diagnostics": {
         "cname_from_a": "Wert abgeleitet von A/AAAA-Eintrag. Wird unterstützt, sofern der Eintrag auf die korrekte Ressource zeigt.",
         "dns_records": "DNS-Einträge",
         "dns_records_24hours": "Bitte beachten Sie, dass es bis zu 24 Stunden dauern kann, bis Änderungen an Ihren DNS-Einträgen als aktueller Status auf dieser Seite dargestellt werden. Diese Seite ist nur als Hilfsmittel gedacht, um die korrekten Werte für DNS-Einträge anzuzeigen und zu überprüfen, ob die Daten im DNS hinterlegt sind.",
         "dns_records_data": "Korrekte Daten",
+        "dns_records_docs": "Die <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">Online-Dokumentation</a> enthält weitere Informationen zur DNS-Konfiguration.",
         "dns_records_name": "Name",
         "dns_records_status": "Aktueller Status",
         "dns_records_type": "Typ",
         "optional": "Dieser Eintrag ist optional."
     },
     "edit": {
+        "acl": "ACL (Berechtigungen)",
         "active": "Aktiv",
+        "admin": "Administrator bearbeiten",
         "advanced_settings": "Erweiterte Einstellungen",
         "alias": "Alias bearbeiten",
         "allow_from_smtp": "Nur folgende IPs für <b>SMTP</b> erlauben",
@@ -478,10 +525,10 @@
         "app_name": "App-Name",
         "app_passwd": "App-Passwörter",
         "automap": "Ordner automatisch mappen (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
-        "backup_mx_options": "Relay Optionen",
+        "backup_mx_options": "Relay-Optionen",
         "bcc_dest_format": "BCC-Ziel muss eine gültige E-Mail-Adresse sein.",
-        "client_id": "Client ID",
-        "client_secret": "Client Secret",
+        "client_id": "Client-ID",
+        "client_secret": "Client-Secret",
         "comment_info": "Ein privater Kommentar ist für den Benutzer nicht einsehbar. Ein öffentlicher Kommentar wird als Tooltip im Interface des Benutzers angezeigt.",
         "delete1": "Lösche Nachricht nach Übertragung vom Quell-Server",
         "delete2": "Lösche Nachrichten von Ziel-Server, die nicht auf Quell-Server vorhanden sind",
@@ -498,19 +545,21 @@
         "encryption": "Verschlüsselung",
         "exclude": "Elemente ausschließen (Regex)",
         "extended_sender_acl": "Externe Absenderadressen",
-        "extended_sender_acl_info": "Der DKIM Domainkey der externen Absenderdomain sollte in diesen Server importiert werden, falls vorhanden.<br>\r\n  Wird SPF verwendet, muss diesem Server der Versand gestattet werden.<br>\r\n  Wird eine Domain oder Alias-Domain zu diesem Server hinzugefügt, die sich mit der externen Absenderadresse überschneidet, wird der externe Absender hier entfernt.<br>\r\n  Ein Eintrag @domain.tld erlaubt den Versand als *@domain.tld",
+        "extended_sender_acl_info": "Der DKIM-Domainkey der externen Absenderdomain sollte in diesen Server importiert werden, falls vorhanden.<br>\r\n  Wird SPF verwendet, muss diesem Server der Versand gestattet werden.<br>\r\n  Wird eine Domain oder Alias-Domain zu diesem Server hinzugefügt, die sich mit der externen Absenderadresse überschneidet, wird der externe Absender hier entfernt.<br>\r\n  Ein Eintrag @domain.tld erlaubt den Versand als *@domain.tld",
         "force_pw_update": "Erzwinge Passwortänderung bei nächstem Login",
         "force_pw_update_info": "Dem Benutzer wird lediglich der Zugang zur %s ermöglicht.",
         "full_name": "Voller Name",
         "gal": "Globales Adressbuch",
         "gal_info": "Das globale Adressbuch enthält alle Objekte einer Domain und kann durch keinen Benutzer geändert werden. Die Verfügbarkeitsinformation in SOGo ist nur bei eingeschaltetem globalen Adressbuch ersichtlich <b>Zum Anwenden einer Änderung muss SOGo neugestartet werden.</b>",
         "generate": "generieren",
-        "grant_types": "Grant types",
+        "grant_types": "Grant-types",
         "hostname": "Servername",
         "inactive": "Inaktiv",
         "kind": "Art",
+        "lookup_mx": "Ziel mit MX vergleichen (Regex, etwa <code>.*google\\.com</code>, um alle Ziele mit MX *google.com zu routen)",
         "mailbox": "Mailbox bearbeiten",
         "mailbox_quota_def": "Standard-Quota einer Mailbox",
+        "mailbox_relayhost_info": "Wird auf eine Mailbox und direkte Alias-Adressen angewendet. Überschreibt die Einstellung einer Domain.",
         "max_aliases": "Max. Aliasse",
         "max_mailboxes": "Max. Mailboxanzahl",
         "max_quota": "Max. Größe per Mailbox (MiB)",
@@ -520,13 +569,15 @@
         "mins_interval": "Intervall (min)",
         "multiple_bookings": "Mehrfaches Buchen",
         "nexthop": "Next Hop",
+        "none_inherit": "Keine Auswahl / Erben",
         "password": "Passwort",
         "password_repeat": "Passwort wiederholen",
         "previous": "Vorherige Seite",
         "private_comment": "Privater Kommentar",
         "public_comment": "Öffentlicher Kommentar",
+        "pushover": "Pushover",
         "pushover_evaluate_x_prio": "Hohe Priorität eskalieren [<code>X-Priority: 1</code>]",
-        "pushover_info": "Push-Benachrichtungen werden angewendet auf alle nicht-Spam Nachrichten zugestellt an <b>%s</b>, einschließlich Alias-Adressen (shared, non-shared, tagged).",
+        "pushover_info": "Push-Benachrichtigungen werden angewendet auf alle nicht-Spam Nachrichten zugestellt an <b>%s</b>, einschließlich Alias-Adressen (shared, non-shared, tagged).",
         "pushover_only_x_prio": "Nur Mail mit hoher Priorität berücksichtigen [<code>X-Priority: 1</code>]",
         "pushover_sender_array": "Folgende Sender E-Mail-Adressen berücksichtigen <small>(getrennt durch Komma)</small>",
         "pushover_sender_regex": "Sender mit folgendem regulären Ausdruck auswählen",
@@ -535,6 +586,9 @@
         "pushover_vars": "Wenn kein Sender-Filter definiert ist, werden alle E-Mails berücksichtigt.<br>Die direkte Absenderprüfung und reguläre Ausdrücke werden unabhängig voneinander geprüft, sie <b>hängen nicht voneinander ab</b> und werden der Reihe nach ausgeführt. <br>Verwendbare Variablen für Titel und Text (Datenschutzrichtlinien beachten)",
         "pushover_verify": "Verbindung verifizieren",
         "quota_mb": "Speicherplatz (MiB)",
+        "quota_warning_bcc": "Quota-Warnung BCC",
+        "quota_warning_bcc_info": "Die Warnungen werden als separate Kopie an die nachstehenden Empfänger versendet. Dem Betreff wird der jeweilige Benutzername in Klammern (etwa <code>Quota-Warnung (user@example.com)</code>) angehangen.",
+        "ratelimit": "Rate Limit",
         "redirect_uri": "Redirect/Callback-URL",
         "relay_all": "Alle Empfänger-Adressen relayen",
         "relay_all_info": "↪ Wenn <b>nicht</b> alle Empfänger-Adressen relayt werden sollen, müssen \"blinde\" Mailboxen für jede Adresse, die relayt werden soll, erstellen werden.",
@@ -547,7 +601,7 @@
         "save": "Änderungen speichern",
         "scope": "Scope",
         "sender_acl": "Darf Nachrichten versenden als",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Absenderprüfung deaktiviert</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Absenderprüfung deaktiviert</span>",
         "sender_acl_info": "Wird einem Mailbox-Benutzer A der Versand als Mailbox-Benutzer B gestattet, so erscheint der Absender <b>nicht</b> automatisch in SOGo zur Auswahl.<br>\r\n  In SOGo muss zusätzlich eine Delegation eingerichtet werden. Dieses Verhalten trifft nicht auf Alias-Adressen zu.",
         "sieve_desc": "Kurze Beschreibung",
         "sieve_type": "Filtertyp",
@@ -557,18 +611,42 @@
         "sogo_visible": "Alias in SOGo sichtbar",
         "sogo_visible_info": "Diese Option hat lediglich Einfluss auf Objekte, die in SOGo darstellbar sind (geteilte oder nicht-geteilte Alias-Adressen mit dem Ziel mindestens einer lokalen Mailbox).",
         "spam_alias": "Anpassen temporärer Alias-Adressen",
+        "spam_filter": "Spamfilter",
         "spam_policy": "Hinzufügen und Entfernen von Einträgen in White- und Blacklists",
         "spam_score": "Einen benutzerdefiniterten Spam-Score festlegen",
         "subfolder2": "Ziel-Ordner<br><small>(leer = kein Unterordner)</small>",
         "syncjob": "Sync-Job bearbeiten",
-        "target_address": "Ziel-Adresse(n) <small>(getrennt durch Komma)</small>",
+        "target_address": "Ziel-Adresse(n)",
         "target_domain": "Ziel-Domain",
         "timeout1": "Timeout für Verbindung zum Remote-Host",
         "timeout2": "Timeout für Verbindung zum lokalen Host",
         "title": "Objekt bearbeiten",
         "unchanged_if_empty": "Unverändert, wenn leer",
         "username": "Benutzername",
-        "validate_save": "Validieren und speichern"
+        "validate_save": "Validieren und speichern",
+        "xmpp": "XMPP für diese Domain aktivieren",
+        "xmpp_access": "XMPP-Zugang",
+        "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
+        "xmpp_admin": "XMPP-Administrator",
+        "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP Domain.",
+        "xmpp_example_jid": "<b>Beispiel JID</b> (Passwort entspricht Mailbox-Passwort)",
+        "xmpp_info": "Diese Funktion stellt eine Chat-Funktionalität für die Domain bereit.",
+        "xmpp_prefix": "XMPP-Präfix für Domain (\"im\" für <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Für die Bereitstellung eines Zertifikates sollte vorab ein DNS-Eintrag, etwa in Form eines CNAMEs, für <b>im</b>.example.org sowie <b>*.im</b>.example.org auf <b>%s</b> zeigend angelegt werden. Im Anschluss an die Aktivierung sollte der DNS-Check für diese Domain ausgeführt werden."
+    },
+    "fido2": {
+        "confirm": "Bestätigen",
+        "fido2_auth": "Anmeldung über FIDO2",
+        "fido2_success": "Das Gerät wurde erfolgreich registriert",
+        "fido2_validation_failed": "Validierung fehlgeschlagen",
+        "fn": "Benutzerfreundlicher Name",
+        "known_ids": "Bekannte IDs",
+        "none": "Deaktiviert",
+        "register_status": "Registrierungsstatus",
+        "rename": "Umbenennen",
+        "set_fido2": "Registriere FIDO2-Gerät",
+        "set_fn": "Benutzerfreundlichen Namen konfigurieren",
+        "start_fido2_validation": "Starte FIDO2-Validierung"
     },
     "footer": {
         "cancel": "Abbrechen",
@@ -578,6 +656,7 @@
         "hibp_nok": "Übereinstimmung gefunden! Dieses Passwort ist potenziell gefährlich!",
         "hibp_ok": "Keine Übereinstimmung gefunden.",
         "loading": "Einen Moment bitte...",
+        "nothing_selected": "Nichts ausgewählt",
         "restart_container": "Container neustarten",
         "restart_container_info": "<b>Wichtig:</b> Der Neustart eines Containers kann eine Weile in Anspruch nehmen.",
         "restart_now": "Jetzt neustarten",
@@ -614,6 +693,7 @@
         "active": "Aktiv",
         "add": "Hinzufügen",
         "add_alias": "Alias hinzufügen",
+        "add_alias_expand": "Alias über Alias-Domains expandieren",
         "add_bcc_entry": "BCC-Eintrag hinzufügen",
         "add_domain": "Domain hinzufügen",
         "add_domain_alias": "Domain-Alias hinzufügen",
@@ -625,7 +705,7 @@
         "add_tls_policy_map": "TLS-Richtlinieneintrag hinzufügen",
         "address_rewriting": "Adressumschreibung",
         "alias": "Alias",
-        "alias_domain_alias_hint": "Alias-Adressen werden <b>nicht</b> automatisch auch auf Domain-Alias Adressen angewendet. Eine Alias-Adresse <code>mein-alias@domain</code> bildet demnach <b>nicht</b> die Adresse <code>mein-alias@alias-domain</code> ab.<br>E-Mail-Weiterleitungen an externe Postfächer sollten über Sieve (SOGo Weiterleitung oder im Reiter \"Filter\") angelegt werden.",
+        "alias_domain_alias_hint": "Alias-Adressen werden <b>nicht</b> automatisch auch auf Domain-Alias Adressen angewendet. Eine Alias-Adresse <code>mein-alias@domain</code> bildet demnach <b>nicht</b> die Adresse <code>mein-alias@alias-domain</code> ab.<br>E-Mail-Weiterleitungen an externe Postfächer sollten über Sieve (SOGo Weiterleitung oder im Reiter \"Filter\") angelegt werden. Der Button \"Alias über Alias-Domains expandieren\" erstellt fehlende Alias-Adressen in Alias-Domains.",
         "alias_domain_backupmx": "Alias-Domain für Relay-Domain inaktiv",
         "aliases": "Aliasse",
         "allow_from_smtp": "Nur folgende IPs für <b>SMTP</b> erlauben",
@@ -674,14 +754,15 @@
         "insert_preset": "Beispiel \"%s\" laden",
         "kind": "Art",
         "last_mail_login": "Letzter Mail-Login",
+        "last_pw_change": "Letzte Passwortänderung",
         "last_run": "Letzte Ausführung",
         "last_run_reset": "Als nächstes ausführen",
         "mailbox": "Mailbox",
+        "mailbox_defaults": "Standardeinstellungen",
+        "mailbox_defaults_info": "Steuert die Standardeinstellungen für neue Mailboxen.",
         "mailbox_defquota": "Standard-Quota",
         "mailbox_quota": "Max. Größe einer Mailbox",
         "mailboxes": "Mailboxen",
-        "mailbox_defaults": "Standardeinstellungen",
-        "mailbox_defaults_info": "Steuert die Standardeinstellungen für neue Mailboxen.",
         "mins_interval": "Intervall (min)",
         "msg_num": "Anzahl Nachrichten",
         "multiple_bookings": "Mehrfachbuchen",
@@ -692,17 +773,17 @@
         "owner": "Besitzer",
         "private_comment": "Privater Kommentar",
         "public_comment": "Öffentlicher Kommentar",
-        "q_add_header": "Junk-Ordner",
-        "q_all": "Alle Kategorien",
-        "q_reject": "Abgelehnt",
-        "quarantine_notification": "Quarantäne-Benachrichtigung",
+        "q_add_header": "bei Mail in Junk-Ordner",
+        "q_all": "bei Reject und Mail in Junk-Ordner",
+        "q_reject": "bei Reject",
         "quarantine_category": "Quarantäne-Benachrichtigungskategorie",
+        "quarantine_notification": "Quarantäne-Benachrichtigung",
         "quick_actions": "Aktionen",
         "recipient_map": "Empfängerumschreibung",
         "recipient_map_info": "Empfängerumschreibung ersetzen den Empfänger einer E-Mail vor dem Versand.",
         "recipient_map_new": "Neuer Empfänger",
         "recipient_map_new_info": "Der neue Empfänger muss eine E-Mail-Adresse sein.",
-        "recipient_map_old": "Original Empfänger",
+        "recipient_map_old": "Original-Empfänger",
         "recipient_map_old_info": "Der originale Empfänger muss eine E-Mail-Adresse oder ein Domainname sein.",
         "recipient_maps": "Empfängerumschreibungen",
         "remove": "Entfernen",
@@ -710,7 +791,7 @@
         "running": "In Ausführung",
         "set_postfilter": "Als Postfilter markieren",
         "set_prefilter": "Als Prefilter markieren",
-        "sieve_info": "Es können mehrere Filter pro Benutzer existieren, aber nur ein Filter eines Typs (Pre-/Postfilter) kann gleichzeitig aktiv sein.<br>\r\nDie Ausführung erfolgt in nachstehender Reihenfolge. Ein fehlgeschlagenes Script sowie der Befehl \"keep;\" stoppen die weitere Verarbeitung <b>nicht</b>. Änderungen an globalen Sieve-Filtern bewirken einen Neustart von Dovecot.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
+        "sieve_info": "Es können mehrere Filter pro Benutzer existieren, aber nur ein Filter eines Typs (Pre-/Postfilter) kann gleichzeitig aktiv sein.<br>\r\nDie Ausführung erfolgt in nachstehender Reihenfolge. Ein fehlgeschlagenes Script sowie der Befehl \"keep;\" stoppen die weitere Verarbeitung <b>nicht</b>. Änderungen an globalen Sieve-Filtern bewirken einen Neustart von Dovecot.<br><br>Global sieve prefilter &#8226; Prefilter &#8226; User scripts &#8226; Postfilter &#8226; Global sieve postfilter",
         "sieve_preset_1": "E-Mails mit potenziell gefährlichen Dateitypen abweisen",
         "sieve_preset_2": "E-Mail eines bestimmten Absenders immer als gelesen markieren",
         "sieve_preset_3": "Lautlos löschen, weitere Ausführung von Filtern verhindern",
@@ -720,7 +801,6 @@
         "sieve_preset_7": "Weiterleiten und behalten oder verwerfen",
         "sieve_preset_8": "Nachricht verwerfen, wenn Absender und Alias-Ziel identisch sind.",
         "sieve_preset_header": "Beispielinhalte zur Einsicht stehen nachstehend bereit. Siehe auch <a href=\"https://de.wikipedia.org/wiki/Sieve\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Administrative SOGo-Logins sind nur für Mailboxen verfügbar, die bereits ein SOGo-Profil besitzen. Ein Benutzer muss zumindest einmal in SOGo eingeloggt gewesen sein, um ein Profil zu besitzen.",
         "sogo_visible": "Alias Sichtbarkeit in SOGo",
         "sogo_visible_n": "Alias in SOGo verbergen",
         "sogo_visible_y": "Alias in SOGo anzeigen",
@@ -740,8 +820,8 @@
         "tls_map_parameters_info": "Leer oder Parameter, Beispiele: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Richtlinie",
         "tls_policy_maps": "TLS-Richtlinien",
-        "tls_policy_maps_info": "Nachstehende Richtlinien erzwingen TLS-Transportregeln unabhängig von TLS-Richtlinieneinstellungen eines Benutzers.<br>\r\n  Für weitere Informationen zur Syntax sollte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">die \"smtp_tls_policy_maps\" Dokumentation</a> konsultiert werden.",
         "tls_policy_maps_enforced_tls": "Die Richtlinien überschreiben auch das Verhalten für Mailbox-Benutzer, die für ausgehende Verbindungen TLS erzwingen. Ist keine Policy nachstehend konfiguriert, richtet sich der Standard für diese Benutzer sich nach den Werten <code>smtp_tls_mandatory_protocols</code> und <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "Nachstehende Richtlinien erzwingen TLS-Transportregeln unabhängig von TLS-Richtlinieneinstellungen eines Benutzers.<br>\r\n  Für weitere Informationen zur Syntax sollte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">die \"smtp_tls_policy_maps\" Dokumentation</a> konsultiert werden.",
         "tls_policy_maps_long": "Ausgehende TLS-Richtlinien",
         "toggle_all": "Alle",
         "username": "Benutzername",
@@ -783,6 +863,9 @@
         "qitem": "Quarantäneeintrag",
         "quarantine": "Quarantäne",
         "quick_actions": "Aktionen",
+        "quick_delete_link": "Quick-Delete Link öffnen",
+        "quick_info_link": "Element-Info Link öffnen",
+        "quick_release_link": "Quick-Release Link öffnen",
         "rcpt": "Empfänger",
         "received": "Empfangen",
         "recipients": "Empfänger",
@@ -793,27 +876,25 @@
         "release_subject": "Potentiell schädliche Nachricht aus Quarantäne: %s",
         "remove": "Entfernen",
         "rewrite_subject": "Betreff geändert",
-        "rspamd_result": "Rspamd Ergebnis",
-        "quick_release_link": "Quick-Release Link öffnen",
-        "quick_delete_link": "Quick-Delete Link öffnen",
-        "quick_info_link": "Element-Info Link öffnen",
+        "rspamd_result": "Rspamd-Ergebnis",
         "sender": "Sender (SMTP)",
         "sender_header": "Sender (\"From\"-Header)",
+        "settings_info": "Maximale Anzahl der zurückgehaltenen E-Mails: %s<br>Maximale Größe einer zu speichernden E-Mail: %s MiB",
         "show_item": "Details",
         "spam": "Spam",
         "spam_score": "Bewertung",
         "subj": "Betreff",
-        "type": "Typ",
         "table_size": "Tabellengröße",
         "table_size_show_n": "Zeige %s Einträge",
         "text_from_html_content": "Inhalt (html, konvertiert)",
         "text_plain_content": "Inhalt (text/plain)",
-        "toggle_all": "Alle auswählen"
+        "toggle_all": "Alle auswählen",
+        "type": "Typ"
     },
     "start": {
         "help": "Hilfe ein-/ausblenden",
         "imap_smtp_server_auth_info": "Bitte verwenden Sie Ihre vollständige E-Mail-Adresse sowie das PLAIN-Authentifizierungsverfahren.<br>\r\nIhre Anmeldedaten werden durch die obligatorische Verschlüsselung entgegen des Begriffes \"PLAIN\" nicht unverschlüsselt übertragen.",
-        "mailcow_apps_detail": "Verwenden Sie mailcow Apps, um E-Mails abzurufen, Kalender und Kontakte zu verwalten und vieles mehr.",
+        "mailcow_apps_detail": "Verwenden Sie mailcow-Apps, um E-Mails abzurufen, Kalender und Kontakte zu verwalten und vieles mehr.",
         "mailcow_panel_detail": "<b>Domain-Administratoren</b> erstellen, verändern oder löschen Mailboxen, verwalten die Domäne und sehen sonstige Einstellungen ein.<br>\r\n\tAls <b>Mailbox-Benutzer</b> erstellen Sie hier zeitlich limitierte Aliasse, ändern das Verhalten des Spamfilters, setzen ein neues Passwort und vieles mehr."
     },
     "success": {
@@ -830,14 +911,14 @@
         "aliasd_modified": "Änderungen an Alias-Domain %s wurden gespeichert",
         "app_links": "Änderungen an App-Links wurden gespeichert",
         "app_passwd_added": "App-Passwort wurde gespeichert",
-        "app_passwd_removed": "App-Passwort ID %s wurde entfernt",
-        "bcc_deleted": "BCC Map-Einträge gelöscht: %s",
-        "bcc_edited": "BCC Map-Eintrag %s wurde geändert",
-        "bcc_saved": "BCC Map-Eintrag wurde gespeichert",
+        "app_passwd_removed": "App-Passwort-ID %s wurde entfernt",
+        "bcc_deleted": "BCC-Map-Einträge gelöscht: %s",
+        "bcc_edited": "BCC-Map-Eintrag %s wurde geändert",
+        "bcc_saved": "BCC- Map-Eintrag wurde gespeichert",
         "db_init_complete": "Datenbankinitialisierung abgeschlossen",
-        "delete_filter": "Filter ID %s wurde gelöscht",
+        "delete_filter": "Filter-ID %s wurde gelöscht",
         "delete_filters": "Filter gelöscht: %s",
-        "deleted_syncjob": "Sync-Jobs ID %s gelöscht",
+        "deleted_syncjob": "Sync-Jobs-ID %s gelöscht",
         "deleted_syncjobs": "Sync-Jobs gelöscht: %s",
         "dkim_added": "DKIM-Key %s wurde hinzugefügt",
         "dkim_duplicated": "DKIM-Key der Domain %s wurde auf Domain %s kopiert",
@@ -853,47 +934,52 @@
         "f2b_modified": "Änderungen an Fail2ban-Parametern wurden gespeichert",
         "forwarding_host_added": "Weiterleitungs-Host %s wurde hinzugefügt",
         "forwarding_host_removed": "Weiterleitungs-Host %s wurde entfernt",
-        "global_filter_written": "Filterdatei wurde erfolreich geschrieben",
+        "global_filter_written": "Filterdatei wurde erfolgreich geschrieben",
         "hash_deleted": "Hash wurde gelöscht",
         "item_deleted": "Objekt %s wurde entfernt",
         "item_released": "Objekt %s freigegeben",
         "items_deleted": "Objekt(e) %s wurde(n) erfolgreich entfernt",
         "items_released": "Ausgewählte Objekte wurden an Mailbox versendet",
-        "learned_ham": "ID %s wurde erfolreich als Ham gelernt",
+        "learned_ham": "ID %s wurde erfolgreich als Ham gelernt",
         "license_modified": "Änderungen an Lizenz wurden gespeichert",
         "logged_in_as": "Eingeloggt als %s",
         "mailbox_added": "Mailbox %s wurde angelegt",
         "mailbox_modified": "Änderungen an Mailbox %s wurden gespeichert",
         "mailbox_removed": "Mailbox %s wurde entfernt",
+        "nginx_reloaded": "Nginx wurde neu geladen",
         "object_modified": "Änderungen an Objekt %s wurden gespeichert",
-        "pushover_settings_edited": "Pushover Konfiguration gespeichert, bitte den Zugang im Anschluss verifizieren.",
-        "qlearn_spam": "Nachricht ID %s wurde als Spam gelernt und gelöscht",
+        "password_policy_saved": "Passwortrichtlinie wurde erfolgreich gespeichert",
+        "pushover_settings_edited": "Pushover-Konfiguration gespeichert, bitte den Zugang im Anschluss verifizieren.",
+        "qlearn_spam": "Nachricht-ID %s wurde als Spam gelernt und gelöscht",
         "queue_command_success": "Queue-Aufgabe erfolgreich ausgeführt",
         "recipient_map_entry_deleted": "Empfängerumschreibung mit der ID %s wurde gelöscht",
         "recipient_map_entry_saved": "Empfängerumschreibung für Objekt \"%s\" wurde gespeichert",
-        "relayhost_added": "Mapeintrag %s wurde hinzugefügt",
-        "relayhost_removed": "Mapeintrag %s wurde entfernt",
+        "relayhost_added": "Map-Eintrag %s wurde hinzugefügt",
+        "relayhost_removed": "Map-Eintrag %s wurde entfernt",
         "reset_main_logo": "Standardgrafik wurde wiederhergestellt",
         "resource_added": "Ressource %s wurde angelegt",
         "resource_modified": "Änderungen an Ressource %s wurden gespeichert",
         "resource_removed": "Ressource %s wurde entfernt",
         "rl_saved": "Ratelimit für Objekt %s wurde gesetzt",
-        "rspamd_ui_pw_set": "Rspamd UI-Passwort wurde gesetzt",
+        "rspamd_ui_pw_set": "Rspamd-UI-Passwort wurde gesetzt",
         "saved_settings": "Regel wurde gespeichert",
         "settings_map_added": "Regel wurde gespeichert",
         "settings_map_removed": "Regeln wurden entfernt: %s",
-        "sogo_profile_reset": "ActiveSync Gerät des Benutzers %s wurde zurückgesetzt",
+        "sogo_profile_reset": "ActiveSync-Gerät des Benutzers %s wurde zurückgesetzt",
         "tls_policy_map_entry_deleted": "TLS-Richtlinie mit der ID %s wurde gelöscht",
         "tls_policy_map_entry_saved": "TLS-Richtlinieneintrag \"%s\" wurde gespeichert",
         "ui_texts": "Änderungen an UI-Texten",
         "upload_success": "Datei wurde erfolgreich hochgeladen",
+        "verified_fido2_login": "FIDO2-Anmeldung verifiziert",
         "verified_totp_login": "TOTP-Anmeldung verifiziert",
         "verified_u2f_login": "U2F-Anmeldung verifiziert",
-        "verified_fido2_login": "FIDO2-Anmeldung verifiziert",
-        "verified_yotp_login": "Yubico OTP-Anmeldung verifiziert"
+        "verified_yotp_login": "Yubico-OTP-Anmeldung verifiziert",
+        "xmpp_maps_updated": "XMPP-Maps wurden aktualisiert",
+        "xmpp_reloaded": "XMPP-Dienst wurde neu geladen",
+        "xmpp_restarted": "XMPP-Dienst wurde neu gestartet"
     },
     "tfa": {
-        "api_register": "%s verwendet die Yubico Cloud API. Ein API-Key für den Yubico Stick kann <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">hier</a> bezogen werden.",
+        "api_register": "%s verwendet die Yubico-Cloud-API. Ein API-Key für den Yubico-Stick kann <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">hier</a> bezogen werden.",
         "confirm": "Bestätigen",
         "confirm_totp_token": "Bitte bestätigen Sie die Änderung durch Eingabe eines generierten Tokens",
         "delete_tfa": "Deaktiviere 2FA",
@@ -904,32 +990,19 @@
         "key_id": "Ein Namen für diesen YubiKey",
         "key_id_totp": "Ein eindeutiger Name",
         "none": "Deaktiviert",
-        "reload_retry": "- (bei persistierendem Fehler, bitte Browserfenster neuladen)",
+        "reload_retry": "- (bei persistierendem Fehler, bitte Browserfenster neu laden)",
         "scan_qr_code": "Bitte scannen Sie jetzt den angezeigten QR-Code:",
         "select": "Bitte auswählen",
         "set_tfa": "Konfiguriere Zwei-Faktor-Authentifizierungsmethode",
         "start_u2f_validation": "Starte Validierung",
         "tfa": "Zwei-Faktor-Authentifizierung",
-        "totp": "Time-based OTP (Google Authenticator etc.)",
+        "tfa_token_invalid": "TFA-Token ungültig!",
+        "totp": "Time-based-OTP (Google Authenticator etc.)",
         "u2f": "U2F-Authentifizierung",
         "waiting_usb_auth": "<i>Warte auf USB-Gerät...</i><br><br>Bitte jetzt den vorgesehenen Taster des USB-Gerätes berühren.",
         "waiting_usb_register": "<i>Warte auf USB-Gerät...</i><br><br>Bitte zuerst das obere Passwortfeld ausfüllen und erst dann den vorgesehenen Taster des USB-Gerätes berühren.",
         "yubi_otp": "Yubico OTP-Authentifizierung"
     },
-    "fido2": {
-        "set_fn": "Benutzerfreundlichen Namen konfigurieren",
-        "fn": "Benutzerfreundlicher Name",
-        "rename": "umbenennen",
-        "confirm": "Bestätigen",
-        "register_status": "Registrierungsstatus",
-        "known_ids": "Bekannte IDs",
-        "none": "Deaktiviert",
-        "set_fido2": "Registriere FIDO2 Gerät",
-        "start_fido2_validation": "Starte FIDO2 Validierung",
-        "fido2_auth": "Anmeldung über FIDO2",
-        "fido2_success": "Das Gerät wurde erfolgreich registriert",
-        "fido2_validation_failed": "Validierung fehlgeschlagen"
-    },
     "user": {
         "action": "Aktion",
         "active": "Aktiv",
@@ -949,27 +1022,32 @@
         "app_name": "App-Name",
         "app_passwds": "App-Passwörter",
         "apple_connection_profile": "Apple-Verbindungsprofil",
-        "apple_connection_profile_complete": "Dieses Verbindungsprofil beinhaltet neben IMAP- und SMTP-Konfigurationen auch Pfade für die Konfiguration von CalDAV (Kalender) und CardDAV (Adressbücher) für ein Apple Gerät.",
+        "apple_connection_profile_complete": "Dieses Verbindungsprofil beinhaltet neben IMAP- und SMTP-Konfigurationen auch Pfade für die Konfiguration von CalDAV (Kalender) und CardDAV (Adressbücher) für ein Apple-Gerät.",
         "apple_connection_profile_mailonly": "Dieses Verbindungsprofil beinhaltet IMAP- und SMTP-Konfigurationen für ein Apple-Gerät.",
         "change_password": "Passwort ändern",
+        "clear_recent_successful_connections": "Alle erfolgreichen Verbindungen bereinigen",
         "client_configuration": "Konfigurationsanleitungen für E-Mail-Programme und Smartphones anzeigen",
         "create_app_passwd": "Erstelle App-Passwort",
         "create_syncjob": "Neuen Sync-Job erstellen",
+        "created_on": "Erstellt am",
         "daily": "Täglich",
         "day": "Tag",
         "delete_ays": "Soll der Löschvorgang wirklich ausgeführt werden?",
         "direct_aliases": "Direkte Alias-Adressen",
         "direct_aliases_desc": "Nur direkte Alias-Adressen werden für benutzerdefinierte Einstellungen berücksichtigt.",
-        "eas_reset": "ActiveSync Geräte-Cache zurücksetzen",
-        "eas_reset_help": "In vielen Fällen kann ein ActiveSync Profil durch das Zurücksetzen des Caches repariert werden.<br><b>Vorsicht:</b> Alle Elemente werden erneut heruntergeladen!",
+        "eas_reset": "ActiveSync-Geräte-Cache zurücksetzen",
+        "eas_reset_help": "In vielen Fällen kann ein ActiveSync-Profil durch das Zurücksetzen des Caches repariert werden.<br><b>Vorsicht:</b> Alle Elemente werden erneut heruntergeladen!",
         "eas_reset_now": "Jetzt zurücksetzen",
         "edit": "Bearbeiten",
         "email": "E-Mail",
         "email_and_dav": "E-Mail, Kalender und Adressbücher",
+        "empty": "Keine Einträge vorhanden",
         "encryption": "Verschlüsselung",
         "excludes": "Ausschlüsse",
         "expire_in": "Ungültig in",
-        "force_pw_update": "Das Passwort für diesen Benutzer <b>muss</b> geändert werden, damit die Zugriffssperre auf die Groupwarekomponenten wieder freigeschaltet wird.",
+        "fido2_webauthn": "FIDO2/WebAuthn",
+        "force_pw_update": "Das Passwort für diesen Benutzer <b>muss</b> geändert werden, damit die Zugriffssperre auf die Groupware-Komponenten wieder freigeschaltet wird.",
+        "from": "von",
         "generate": "generieren",
         "hour": "Stunde",
         "hourly": "Stündlich",
@@ -978,17 +1056,25 @@
         "interval": "Intervall",
         "is_catch_all": "Ist Catch-All-Adresse für Domain(s)",
         "last_mail_login": "Letzter Mail-Login",
+        "last_pw_change": "Letzte Passwortänderung",
         "last_run": "Letzte Ausführung",
+        "last_ui_login": "Letzte UI Anmeldung",
         "loading": "Lade...",
-        "mailbox_details": "Mailbox-Details",
+        "login_history": "Login-Historie",
+        "mailbox": "Mailbox",
+        "mailbox_details": "Details",
+        "mailbox_general": "Allgemein",
+        "mailbox_settings": "Einstellungen",
         "messages": "Nachrichten",
+        "month": "Monat",
+        "months": "Monate",
         "never": "Niemals",
         "new_password": "Neues Passwort",
-        "new_password_description": "Mindestanforderung: 6 Zeichen lang, Buchstaben und Zahlen.",
         "new_password_repeat": "Neues Passwort (Wiederholung)",
         "no_active_filter": "Kein aktiver Filter vorhanden",
         "no_last_login": "Keine letzte UI-Anmeldung gespeichert",
         "no_record": "Kein Eintrag",
+        "open_webmail_sso": "In Webmail einloggen",
         "password": "Passwort",
         "password_now": "Aktuelles Passwort (Änderungen bestätigen)",
         "password_repeat": "Passwort (Wiederholung)",
@@ -1004,10 +1090,11 @@
         "q_add_header": "Junk-Ordner",
         "q_all": "Alle Kategorien",
         "q_reject": "Abgelehnt",
-        "quarantine_notification": "Quarantäne-Benachrichtigung",
         "quarantine_category": "Quarantäne-Benachrichtigungskategorie",
-        "quarantine_notification_info": "Wurde über eine E-Mail in Quarantäne informiert, wird sie als \"benachrichtigt\" markiert und keine weitere Benachrichtigung zu dieser E-Mail versendet.",
         "quarantine_category_info": "Die Kategorie \"Abgelehnt\" informiert über abgelehnte E-Mails, während \"Junk-Ordner\" über E-Mails berichtet, die im Junk-Ordner des jeweiligen Benutzers abgelegt wurden.",
+        "quarantine_notification": "Quarantäne-Benachrichtigung",
+        "quarantine_notification_info": "Wurde über eine E-Mail in Quarantäne informiert, wird sie als \"benachrichtigt\" markiert und keine weitere Benachrichtigung zu dieser E-Mail versendet.",
+        "recent_successful_connections": "Kürzlich erfolgreiche Verbindungen",
         "remove": "Entfernen",
         "running": "Wird ausgeführt",
         "save": "Änderungen speichern",
@@ -1016,10 +1103,10 @@
         "shared_aliases": "Geteilte Alias-Adressen",
         "shared_aliases_desc": "Geteilte Alias-Adressen werden nicht bei benutzerdefinierten Einstellungen, wie die des Spam-Filters oder der Verschlüsselungsrichtlinie, berücksichtigt. Entsprechende Spam-Filter können lediglich von einem Administrator vorgenommen werden.",
         "show_sieve_filters": "Zeige aktiven Filter des Benutzers",
-        "sogo_profile_reset": "SOGo Profil zurücksetzen",
+        "sogo_profile_reset": "SOGo-Profil zurücksetzen",
         "sogo_profile_reset_help": "Das Profil wird inklusive <b>aller</b> Kalender- und Kontaktdaten <b>unwiederbringlich gelöscht</b>.",
         "sogo_profile_reset_now": "Profil jetzt zurücksetzen",
-        "spam_aliases": "Temporäre E-Mail Aliasse",
+        "spam_aliases": "Temporäre E-Mail-Aliasse",
         "spam_score_reset": "Auf Server-Standard zurücksetzen",
         "spamfilter": "Spamfilter",
         "spamfilter_behavior": "Bewertung",
@@ -1058,17 +1145,20 @@
         "waiting": "Warte auf Ausführung",
         "week": "Woche",
         "weekly": "Wöchentlich",
-        "weeks": "Wochen"
+        "weeks": "Wochen",
+        "year": "Jahr",
+        "years": "Jahren"
     },
     "warning": {
         "cannot_delete_self": "Kann derzeit eingeloggten Benutzer nicht entfernen",
         "domain_added_sogo_failed": "Domain wurde hinzugefügt, aber SOGo konnte nicht neugestartet werden",
         "dovecot_restart_failed": "Dovecot wurde nicht erfolgreich neu gestartet, bitte prüfen Sie die Logs.",
-        "fuzzy_learn_error": "Fuzzy Lernfehler: %s",
+        "fuzzy_learn_error": "Fuzzy-Lernfehler: %s",
         "hash_not_found": "Hash nicht gefunden. Möglicherweise wurde dieser bereits gelöscht.",
         "ip_invalid": "Ungültige IP übersprungen: %s",
+        "is_not_primary_alias": "Überspringe nicht-primären Alias %s",
         "no_active_admin": "Kann letzten aktiven Administrator nicht deaktivieren",
-        "quota_exceeded_scope": "Domain-Quota erschöpft: Es können nur noch unlimiterte Mailboxen in dieser Domain erstellt werden.",
+        "quota_exceeded_scope": "Domain-Quota erschöpft: Es können nur noch unlimitierte Mailboxen in dieser Domain erstellt werden.",
         "session_token": "Formular-Token ungültig: Token stimmt nicht überein",
         "session_ua": "Formular-Token ungültig: User-Agent-Validierungsfehler"
     }
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.en.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.en.json
index ceee60e..d5494e5 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.en.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.en.json
@@ -4,17 +4,20 @@
         "app_passwds": "Manage app passwords",
         "bcc_maps": "BCC maps",
         "delimiter_action": "Delimiter action",
+        "domain_desc": "Change domain description",
+        "domain_relayhost": "Change relayhost for a domain",
         "eas_reset": "Reset EAS devices",
         "extend_sender_acl": "Allow to extend sender ACL by external addresses",
         "filters": "Filters",
         "login_as": "Login as mailbox user",
+        "mailbox_relayhost": "Change relayhost for a mailbox",
         "prohibited": "Prohibited by ACL",
         "protocol_access": "Change protocol access",
         "pushover": "Pushover",
         "quarantine": "Quarantine actions",
         "quarantine_attachments": "Quarantine attachments",
-        "quarantine_notification": "Change quarantine notifications",
         "quarantine_category": "Change quarantine notification category",
+        "quarantine_notification": "Change quarantine notifications",
         "ratelimit": "Rate limit",
         "recipient_maps": "Recipient maps",
         "smtp_ip_access": "Change allowed hosts for SMTP",
@@ -26,7 +29,10 @@
         "syncjobs": "Sync jobs",
         "tls_policy": "TLS policy",
         "unlimited_quota": "Unlimited quota for mailboxes",
-        "domain_desc": "Change domain description"
+        "xmpp_admin": "Promote XMPP user to administrator",
+        "xmpp_domain_access": "Configure XMPP domain access",
+        "xmpp_mailbox_access": "Configure XMPP user access",
+        "xmpp_prefix": "Change XMPP subdomain (prefix)"
     },
     "add": {
         "activate_filter_warn": "All other filters will be deactivated, when active is checked.",
@@ -42,7 +48,8 @@
         "app_password": "Add app password",
         "automap": "Try to automap folders (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
         "backup_mx_options": "Relay options",
-        "comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a users overview",
+        "bcc_dest_format": "BCC destination must be a single valid email address.<br> If you need to send a copy to multiple addresses, create an Alias and use it here.",
+        "comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a user's overview",
         "custom_params": "Custom parameters",
         "custom_params_hint": "Right: --param=xy, wrong: --param xy",
         "delete1": "Delete from source when completed",
@@ -102,7 +109,13 @@
         "timeout2": "Timeout for connection to local host",
         "username": "Username",
         "validate": "Validate",
-        "validation_success": "Validated successfully"
+        "validation_success": "Validated successfully",
+        "xmpp": "Activate XMPP for this domain",
+        "xmpp_access": "XMPP access",
+        "xmpp_access_info": "XMPP must be enabled for this domain.",
+        "xmpp_admin": "XMPP administrator",
+        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_info": "This function will enable chat functionality for this domain."
     },
     "admin": {
         "access": "Access",
@@ -125,10 +138,14 @@
         "admin": "Administrator",
         "admin_details": "Edit administrator details",
         "admin_domains": "Domain assignments",
+        "admins": "Administrators",
+        "admins_ldap": "LDAP Administrators",
         "advanced_settings": "Advanced settings",
         "api_allow_from": "Allow API access from these IPs/CIDR network notations",
         "api_info": "The API is a work in progress. The documentation can be found at <a href=\"/api\">/api</a>",
         "api_key": "API key",
+        "api_read_only": "Read-Only Access",
+        "api_read_write": "Read-Write Access",
         "api_skip_ip_check": "Skip IP check for API",
         "app_links": "App links",
         "app_name": "App name",
@@ -140,7 +157,7 @@
         "change_logo": "Change logo",
         "configuration": "Configuration",
         "convert_html_to_text": "Convert HTML to plain text",
-        "credentials_transport_warning": "<b>Warning</b>: Adding a new transport map entry will update the credentials for all entries with a matching nexthop column.",
+        "credentials_transport_warning": "<b>Warning</b>: Adding a new transport map entry will update the credentials for all entries with a matching next hop column.",
         "customer_id": "Customer ID",
         "customize": "Customize",
         "delete_queue": "Delete all",
@@ -199,12 +216,14 @@
         "include_exclude": "Include/Exclude",
         "include_exclude_info": "By default - with no selection - <b>all mailboxes</b> are addressed",
         "includes": "Include these recipients",
+        "is_mx_based": "MX based",
         "last_applied": "Last applied",
         "license_info": "A license is not required but helps further development.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Register your GUID here</a> or <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Support order\">buy support for your mailcow installation.</a>",
         "link": "Link",
         "loading": "Please wait...",
+        "login_time": "Login time",
         "logo_info": "Your image will be scaled to a height of 40px for the top navigation bar and a max. width of 250px for the start page. A scalable graphic is highly recommended.",
-        "lookup_mx": "Match destination against MX (.outlook.com to route all mail targeted to a MX *.outlook.com over this hop)",
+        "lookup_mx": "Destination is a regular expression to match against MX name (<code>.*google\\.com</code> to route all mail targeted to a MX ending in google.com over this hop)",
         "main_name": "\"mailcow UI\" name",
         "merged_vars_hint": "Greyed out rows were merged from <code>vars.(local.)inc.php</code> and cannot be modified.",
         "message": "Message",
@@ -214,14 +233,23 @@
         "no_active_bans": "No active bans",
         "no_new_rows": "No further rows available",
         "no_record": "No record",
+        "oauth2_apps": "OAuth2 Apps",
+        "oauth2_add_client": "Add OAuth2 client",
         "oauth2_client_id": "Client ID",
         "oauth2_client_secret": "Client secret",
-        "oauth2_info": "The OAuth2 implementation supports the grant type \"Authorization Code\" and issues refresh tokens.<br>\r\nThe server also automatically issues new refresh tokens, after a refresh token has been used.<br><br>\r\n→ The default scope is <i>profile</i>. Only mailbox users can be authenticated against OAuth2. If the scope parameter is omitted, it falls back to <i>profile</i>.<br>\r\n→ The <i>state</i> parameter is required to be sent by the client as part of the authorize request.<br><br>\r\nPaths for requests to the OAuth2 API: <br>\r\n<ul>\r\n  <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nRegenerating the client secret will not expire existing authorization codes, but they will fail to renew their token.<br><br>\r\nRevoking client tokens will cause immediate termination of all active sessions. All clients need to re-authenticate.",
+        "oauth2_info": "The OAuth2 implementation supports the grant type \"Authorization Code\" and issues refresh tokens.<br>\r\nThe server also automatically issues new refresh tokens, after a refresh token has been used.<br><br>\r\n&#8226; The default scope is <i>profile</i>. Only mailbox users can be authenticated against OAuth2. If the scope parameter is omitted, it falls back to <i>profile</i>.<br>\r\n&#8226; The <i>state</i> parameter is required to be sent by the client as part of the authorize request.<br><br>\r\nPaths for requests to the OAuth2 API: <br>\r\n<ul>\r\n  <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nRegenerating the client secret will not expire existing authorization codes, but they will fail to renew their token.<br><br>\r\nRevoking client tokens will cause immediate termination of all active sessions. All clients need to re-authenticate.",
         "oauth2_redirect_uri": "Redirect URI",
         "oauth2_renew_secret": "Generate new client secret",
         "oauth2_revoke_tokens": "Revoke all client tokens",
         "optional": "optional",
         "password": "Password",
+        "password_length": "Password length",
+        "password_policy": "Password policy",
+        "password_policy_chars": "Must contain at least one alphabetic character",
+        "password_policy_length": "Minimum password length is %d",
+        "password_policy_lowerupper": "Must contain lowercase and uppercase characters",
+        "password_policy_numbers": "Must contain at least one number",
+        "password_policy_special_chars": "Must contain special characters",
         "password_repeat": "Confirmation password (repeat)",
         "priority": "Priority",
         "private_key": "Private key",
@@ -229,8 +257,8 @@
         "quarantine_bcc": "Send a copy of all notifications (BCC) to this recipient:<br><small>Leave empty to disable. <b>Unsigned, unchecked mail. Should be delivered internally only.</b></small>",
         "quarantine_exclude_domains": "Exclude domains and alias-domains",
         "quarantine_max_age": "Maximum age in days<br><small>Value must be equal to or greater than 1 day.</small>",
-        "quarantine_max_size": "Maximum size in MiB (larger elements are discarded):<br><small>0 does <b>not</b> indicate unlimited.</small>",
         "quarantine_max_score": "Discard notification if spam score of a mail is higher than this value:<br><small>Defaults to 9999.0</small>",
+        "quarantine_max_size": "Maximum size in MiB (larger elements are discarded):<br><small>0 does <b>not</b> indicate unlimited.</small>",
         "quarantine_notification_html": "Notification email template:<br><small>Leave empty to restore default template.</small>",
         "quarantine_notification_sender": "Notification email sender",
         "quarantine_notification_subject": "Notification email subject",
@@ -243,14 +271,14 @@
         "queue_deliver_mail": "Deliver",
         "queue_hold_mail": "Hold",
         "queue_manager": "Queue manager",
+        "queue_show_message": "Show message",
         "queue_unban": "queue unban",
         "queue_unhold_mail": "Unhold",
-        "queue_show_message": "Show message",
         "quota_notification_html": "Notification email template:<br><small>Leave empty to restore default template.</small>",
         "quota_notification_sender": "Notification email sender",
         "quota_notification_subject": "Notification email subject",
         "quota_notifications": "Quota notifications",
-        "quota_notifications_info": "Quota notications are sent to users once when crossing 80% and once when crossing 95% usage.",
+        "quota_notifications_info": "Quota notifications are sent to users once when crossing 80% and once when crossing 95% usage.",
         "quota_notifications_vars": "{{percent}} equals the current quota of the user<br>{{username}} is the mailbox name",
         "r_active": "Active restrictions",
         "r_inactive": "Inactive restrictions",
@@ -261,6 +289,7 @@
         "regen_api_key": "Regenerate API key",
         "regex_maps": "Regex maps",
         "relay_from": "\"From:\" address",
+        "relay_rcpt": "\"To:\" address",
         "relay_run": "Run test",
         "relayhosts": "Sender-dependent transports",
         "relayhosts_hint": "Define sender-dependent transports to be able to select them in a domains configuration dialog.<br>\r\n  The transport service is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported. A users individual outbound TLS policy setting is taken into account.<br>\r\n  Affects selected domains including alias domains.",
@@ -278,6 +307,7 @@
         "rsettings_preset_1": "Disable all but DKIM and rate limit for authenticated users",
         "rsettings_preset_2": "Postmasters want spam",
         "rsettings_preset_3": "Only allow specific senders for a mailbox (i.e. usage as internal mailbox only)",
+        "rsettings_preset_4": "Disable Rspamd for a domain",
         "rspamd-com_settings": "A setting name will be auto-generated, please see the example presets below. For more details see <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
         "rspamd_global_filters": "Global filter maps",
         "rspamd_global_filters_agree": "I will be careful!",
@@ -289,19 +319,22 @@
         "search_domain_da": "Search domains",
         "send": "Send",
         "sender": "Sender",
+        "service": "Service",
         "service_id": "Service ID",
         "source": "Source",
         "spamfilter": "Spam filter",
         "subject": "Subject",
+        "success": "Success",
         "sys_mails": "System mails",
         "text": "Text",
         "time": "Time",
         "title": "Title",
         "title_name": "\"mailcow UI\" website title",
         "to_top": "Back to top",
-        "transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (multiple values can be comma-separated)",
+        "transport_dest_format": "Regex or syntax: example.org, .example.org, *, box@example.org (multiple values can be comma-separated)",
         "transport_maps": "Transport Maps",
-        "transports_hint": "→ A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n→ Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n→ The transport service for defined transports is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported.<br>\r\n→ Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n→ To determine credentials for an exemplary next hop \"[host]:25\", Postfix <b>always</b> queries for \"host\" before searching for \"[host]:25\". This behavior makes it impossible to use \"host\" and \"[host]:25\" at the same time.",
+        "transport_test_rcpt_info": "&#8226; Use null@hosted.mailcow.de to test relaying to a foreign destination.",
+        "transports_hint": "&#8226; A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n&#8226; MX-based transports are preferably used.<br>\r\n&#8226; Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n&#8226; The transport service for defined transports is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported.<br>\r\n&#8226; Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n&#8226; To determine credentials for an exemplary next hop \"[host]:25\", Postfix <b>always</b> queries for \"host\" before searching for \"[host]:25\". This behavior makes it impossible to use \"host\" and \"[host]:25\" at the same time.",
         "ui_footer": "Footer (HTML allowed)",
         "ui_header_announcement": "Announcements",
         "ui_header_announcement_active": "Set announcement active",
@@ -309,9 +342,9 @@
         "ui_header_announcement_help": "The announcement is visible for all logged in users and on the login screen of the UI.",
         "ui_header_announcement_select": "Select announcement type",
         "ui_header_announcement_type": "Type",
+        "ui_header_announcement_type_danger": "Very important",
         "ui_header_announcement_type_info": "Info",
         "ui_header_announcement_type_warning": "Important",
-        "ui_header_announcement_type_danger": "Very important",
         "ui_texts": "UI labels and texts",
         "unban_pending": "unban pending",
         "unchanged_if_empty": "If unchanged leave blank",
@@ -347,6 +380,7 @@
         "domain_quota_m_in_use": "Domain quota must be greater or equal to %s MiB",
         "extra_acl_invalid": "External sender address \"%s\" is invalid",
         "extra_acl_invalid_domain": "External sender \"%s\" uses an invalid domain",
+        "fido2_verification_failed": "FIDO2 verification failed: %s",
         "file_open_error": "File cannot be opened for writing",
         "filter_type": "Wrong filter type",
         "from_invalid": "Sender must not be empty",
@@ -390,6 +424,7 @@
         "network_host_invalid": "Invalid network or host: %s",
         "next_hop_interferes": "%s interferes with nexthop %s",
         "next_hop_interferes_any": "An existing next hop interferes with %s",
+        "nginx_reload_failed": "Nginx reload failed: %s",
         "no_user_defined": "No user defined",
         "object_exists": "Object %s already exists",
         "object_is_not_numeric": "Value %s is not numeric",
@@ -430,49 +465,61 @@
         "totp_verification_failed": "TOTP verification failed",
         "transport_dest_exists": "Transport destination \"%s\" exists",
         "u2f_verification_failed": "U2F verification failed: %s",
-        "fido2_verification_failed": "FIDO2 verification failed: %s",
         "unknown": "An unknown error occurred",
         "unknown_tfa_method": "Unknown TFA method",
         "unlimited_quota_acl": "Unlimited quota prohibited by ACL",
         "username_invalid": "Username %s cannot be used",
         "validity_missing": "Please assign a period of validity",
         "value_missing": "Please provide all values",
+        "xmpp_map_write_error": "Could not write XMPP map: %s",
+        "xmpp_reload_failed": "XMPP could not be reloaded",
+        "xmpp_restart_failed": "XMPP could not be restarted",
         "yotp_verification_failed": "Yubico OTP verification failed: %s"
     },
     "debug": {
         "chart_this_server": "Chart (this server)",
         "containers_info": "Container information",
         "disk_usage": "Disk usage",
+        "docs": "Docs",
         "external_logs": "External logs",
         "history_all_servers": "History (all servers)",
         "in_memory_logs": "In-memory logs",
         "jvm_memory_solr": "JVM memory usage",
+        "last_modified": "Last modified",
         "log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n  <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n  <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n  <p><b>External logs</b> are collected via API of the given application.</p>\r\n  <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
+        "login_time": "Time",
         "logs": "Logs",
+        "online_users": "Users online",
         "restart_container": "Restart",
+        "service": "Service",
+        "size": "Size",
         "solr_dead": "Solr is starting, disabled or died.",
-        "solr_docs": "Docs",
-        "solr_last_modified": "Last modified",
-        "solr_size": "Size",
-        "solr_started_at": "Started at",
         "solr_status": "Solr status",
-        "solr_uptime": "Uptime",
+        "started_at": "Started at",
         "started_on": "Started on",
         "static_logs": "Static logs",
-        "system_containers": "System & Containers"
+        "success": "Success",
+        "system_containers": "System & Containers",
+        "uptime": "Uptime",
+        "username": "Username",
+        "xmpp_dead": "XMPP is starting, disabled or died.",
+        "xmpp_status": "XMPP status"
     },
     "diagnostics": {
         "cname_from_a": "Value derived from A/AAAA record. This is supported as long as the record points to the correct resource.",
         "dns_records": "DNS Records",
         "dns_records_24hours": "Please note that changes made to DNS may take up to 24 hours to correctly have their current state reflected on this page. It is intended as a way for you to easily see how to configure your DNS records and to check whether all your records are correctly stored in DNS.",
         "dns_records_data": "Correct Data",
+        "dns_records_docs": "Please also consult <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">the documentation</a>.",
         "dns_records_name": "Name",
         "dns_records_status": "Current State",
         "dns_records_type": "Type",
         "optional": "This record is optional."
     },
     "edit": {
+        "acl": "ACL (Permission)",
         "active": "Active",
+        "admin": "Edit administrator",
         "advanced_settings": "Advanced settings",
         "alias": "Edit alias",
         "allow_from_smtp": "Only allow these IPs to use <b>SMTP</b>",
@@ -482,10 +529,10 @@
         "app_passwd": "App password",
         "automap": "Try to automap folders (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
         "backup_mx_options": "Relay options",
-        "bcc_dest_format": "BCC destination must be a single valid email address.",
+        "bcc_dest_format": "BCC destination must be a single valid email address.<br> If you need to send a copy to multiple addresses, create an Alias and use it here.",
         "client_id": "Client ID",
         "client_secret": "Client secret",
-        "comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a users overview",
+        "comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a user's overview",
         "delete1": "Delete from source when completed",
         "delete2": "Delete messages on destination that are not on source",
         "delete2duplicates": "Delete duplicates on destination",
@@ -512,8 +559,10 @@
         "hostname": "Hostname",
         "inactive": "Inactive",
         "kind": "Kind",
+        "lookup_mx": "Destination is a regular expression to match against MX name (<code>.*google\\.com</code> to route all mail targeted to a MX ending in google.com over this hop)",
         "mailbox": "Edit mailbox",
         "mailbox_quota_def": "Default mailbox quota",
+        "mailbox_relayhost_info": "Applied to the mailbox and direct aliases only, does override a domain relayhost.",
         "max_aliases": "Max. aliases",
         "max_mailboxes": "Max. possible mailboxes",
         "max_quota": "Max. quota per mailbox (MiB)",
@@ -522,12 +571,14 @@
         "mbox_rl_info": "This rate limit is applied on the SASL login name, it matches any \"from\" address used by the logged-in user. A mailbox rate limit overrides a domain-wide rate limit.",
         "mins_interval": "Interval (min)",
         "multiple_bookings": "Multiple bookings",
+        "none_inherit": "None / Inherit",
         "nexthop": "Next hop",
         "password": "Password",
         "password_repeat": "Confirmation password (repeat)",
         "previous": "Previous page",
         "private_comment": "Private comment",
         "public_comment": "Public comment",
+        "pushover": "Pushover",
         "pushover_evaluate_x_prio": "Escalate high priority mail [<code>X-Priority: 1</code>]",
         "pushover_info": "Push notification settings will apply to all clean (non-spam) mail delivered to <b>%s</b> including aliases (shared, non-shared, tagged).",
         "pushover_only_x_prio": "Only consider high priority mail [<code>X-Priority: 1</code>]",
@@ -538,6 +589,9 @@
         "pushover_vars": "When no sender filter is defined, all mails will be considered.<br>Regex filters as well as exact sender checks can be defined individually and will be considered sequentially. They do not depend on each other.<br>Useable variables for text and title (please take note of data protection policies)",
         "pushover_verify": "Verify credentials",
         "quota_mb": "Quota (MiB)",
+        "quota_warning_bcc": "Quota warning BCC",
+        "quota_warning_bcc_info": "Warnings will be sent as separate copies to the following recipients. The subject will be suffixed by the corresponding username in brackets, for example: <code>Quota warning (user@example.com)</code>.",
+        "ratelimit": "Rate limit",
         "redirect_uri": "Redirect/Callback URL",
         "relay_all": "Relay all recipients",
         "relay_all_info": "↪ If you choose <b>not</b> to relay all recipients, you will need to add a (\"blind\") mailbox for every single recipient that should be relayed.",
@@ -550,16 +604,17 @@
         "save": "Save changes",
         "scope": "Scope",
         "sender_acl": "Allow to send as",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Sender check is disabled</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Sender check is disabled</span>",
         "sender_acl_info": "If mailbox user A is allowed to send as mailbox user B, the sender address is not automatically displayed as selectable \"from\" field in SOGo.<br>\r\n  Mailbox user B needs to create a delegation in SOGo to allow mailbox user A to select their address as sender. To delegate a mailbox in SOGo, use the menu (three dots) to the right of your mailbox name in the upper left while in mail view. This behaviour does not apply to alias addresses.",
         "sieve_desc": "Short description",
         "sieve_type": "Filter type",
         "skipcrossduplicates": "Skip duplicate messages across folders (first come, first serve)",
         "sogo_access": "Grant access to SOGo",
-        "sogo_access_info": "Grant or permit access to SOGo. This setting does neither affect access to all other services nor does it delete or change a users existing SOGo profile.",
+        "sogo_access_info": "Grant or permit access to SOGo. This setting does neither affect access to all other services nor does it delete or change a user's existing SOGo profile.",
         "sogo_visible": "Alias is visible in SOGo",
         "sogo_visible_info": "This option only affects objects, that can be displayed in SOGo (shared or non-shared alias addresses pointing to at least one local mailbox). If hidden, an alias will not appear as selectable sender in SOGo.",
         "spam_alias": "Create or change time limited alias addresses",
+        "spam_filter": "Spam filter",
         "spam_policy": "Add or remove items to white-/blacklist",
         "spam_score": "Set a custom spam score",
         "subfolder2": "Sync into subfolder on destination<br><small>(empty = do not use subfolder)</small>",
@@ -571,16 +626,41 @@
         "title": "Edit object",
         "unchanged_if_empty": "If unchanged leave blank",
         "username": "Username",
-        "validate_save": "Validate and save"
+        "validate_save": "Validate and save",
+        "xmpp": "Activate XMPP for this domain",
+        "xmpp_access": "XMPP access",
+        "xmpp_access_info": "XMPP must be enabled for this domain.",
+        "xmpp_admin": "XMPP administrator",
+        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_example_jid": "<b>Example JID</b> (login with mailbox password)",
+        "xmpp_info": "This function will enable chat functionality for this domain.",
+        "xmpp_prefix": "XMPP prefix for domain (\"im\" to use <b>im</b>.example.org)",
+        "xmpp_prefix_info": "To request certificates for XMPP, two CNAME DNS records should point from <b>im</b>.example.org as well as <b>*.im</b>.example.org to <b>%s</b>. Please also run the DNS check for this domain after enabling XMPP."
+    },
+    "fido2": {
+        "confirm": "Confirm",
+        "fido2_auth": "Login with FIDO2",
+        "fido2_success": "Device successfully registered",
+        "fido2_validation_failed": "Validation failed",
+        "fn": "Friendly name",
+        "known_ids": "Known IDs",
+        "none": "Disabled",
+        "register_status": "Registration status",
+        "rename": "Rename",
+        "set_fido2": "Register FIDO2 device",
+        "set_fn": "Set friendly name",
+        "start_fido2_validation": "Start FIDO2 validation"
     },
     "footer": {
         "cancel": "Cancel",
         "confirm_delete": "Confirm deletion",
         "delete_now": "Delete now",
         "delete_these_items": "Please confirm your changes to the following object id",
+        "hibp_check": "Check against haveibeenpwned.com",
         "hibp_nok": "Matched! This is a potentially dangerous password!",
         "hibp_ok": "No match found.",
         "loading": "Please wait...",
+        "nothing_selected": "Nothing selected",
         "restart_container": "Restart container",
         "restart_container_info": "<b>Important:</b> A graceful restart may take a while to complete, please wait for it to finish.",
         "restart_now": "Restart now",
@@ -617,6 +697,7 @@
         "active": "Active",
         "add": "Add",
         "add_alias": "Add alias",
+        "add_alias_expand": "Expand alias over alias domains",
         "add_bcc_entry": "Add BCC map",
         "add_domain": "Add domain",
         "add_domain_alias": "Add domain alias",
@@ -628,9 +709,10 @@
         "add_tls_policy_map": "Add TLS policy map",
         "address_rewriting": "Address rewriting",
         "alias": "Alias",
-        "alias_domain_alias_hint": "Aliases are <b>not</b> applied on domain aliases automatically. An alias address <code>my-alias@domain</code> <b>does not</b> cover the address <code>my-alias@alias-domain</code> (where \"alias-domain\" is an imaginary alias domain for \"domain\").<br>Please use a sieve filter to redirect mail to an external mailbox (see tab \"Filters\" or use  SOGo -> Forwarder).",
+        "alias_domain_alias_hint": "Aliases are <b>not</b> applied on domain aliases automatically. An alias address <code>my-alias@domain</code> <b>does not</b> cover the address <code>my-alias@alias-domain</code> (where \"alias-domain\" is an imaginary alias domain for \"domain\").<br>Please use a sieve filter to redirect mail to an external mailbox (see tab \"Filters\" or use  SOGo -> Forwarder). Use \"Expand alias over alias domains\" to automatically add missing aliases.",
         "alias_domain_backupmx": "Alias domain inactive for relay domain",
         "aliases": "Aliases",
+        "all_domains": "All Domains",
         "allow_from_smtp": "Only allow these IPs to use <b>SMTP</b>",
         "allow_from_smtp_info": "Leave empty to allow all senders.<br>IPv4/IPv6 addresses and networks.",
         "allowed_protocols": "Allowed protocols",
@@ -654,6 +736,7 @@
         "booking_custom_short": "Hard limit",
         "booking_lt0": "Unlimited, but show as busy when booked",
         "booking_lt0_short": "Soft limit",
+        "catch_all": "Catch-All",
         "daily": "Daily",
         "deactivate": "Deactivate",
         "description": "Description",
@@ -671,20 +754,23 @@
         "filter_table": "Filter table",
         "filters": "Filters",
         "fname": "Full name",
+        "goto_ham": "Learn as <b>ham</b>",
+        "goto_spam": "Learn as <b>spam</b>",
         "hourly": "Hourly",
         "in_use": "In use (%)",
         "inactive": "Inactive",
         "insert_preset": "Insert example preset \"%s\"",
         "kind": "Kind",
         "last_mail_login": "Last mail login",
+        "last_pw_change": "Last password change",
         "last_run": "Last run",
         "last_run_reset": "Schedule next",
         "mailbox": "Mailbox",
+        "mailbox_defaults": "Default settings",
+        "mailbox_defaults_info": "Define default settings for new mailboxes.",
         "mailbox_defquota": "Default mailbox size",
         "mailbox_quota": "Max. size of a mailbox",
         "mailboxes": "Mailboxes",
-        "mailbox_defaults": "Default settings",
-        "mailbox_defaults_info": "Define default settings for new mailboxes.",
         "mins_interval": "Interval (min)",
         "msg_num": "Message #",
         "multiple_bookings": "Multiple bookings",
@@ -692,15 +778,17 @@
         "no": "&#10005;",
         "no_record": "No record for object %s",
         "no_record_single": "No record",
+        "open_logs": "Open logs",
         "owner": "Owner",
         "private_comment": "Private comment",
         "public_comment": "Public comment",
-        "q_add_header": "Junk folder",
-        "q_all": "All categories",
-        "q_reject": "Rejected",
-        "quarantine_notification": "Quarantine notifications",
+        "q_add_header": "when moved to Junk folder",
+        "q_all": " when moved to Junk folder and on reject",
+        "q_reject": "on reject",
         "quarantine_category": "Quarantine notification category",
+        "quarantine_notification": "Quarantine notifications",
         "quick_actions": "Actions",
+        "recipient": "Recipient",
         "recipient_map": "Recipient map",
         "recipient_map_info": "Recipient maps are used to replace the destination address on a message before it is delivered.",
         "recipient_map_new": "New recipient",
@@ -711,9 +799,10 @@
         "remove": "Remove",
         "resources": "Resources",
         "running": "Running",
+        "sender": "Sender",
         "set_postfilter": "Mark as postfilter",
         "set_prefilter": "Mark as prefilter",
-        "sieve_info": "You can store multiple filters per user, but only one prefilter and one postfilter can be active at the same time.<br>\r\nEach filter will be processed in the described order. Neither a failed script nor an issued \"keep;\" will stop processing of further scripts. Changes to global sieve scripts will trigger a restart of Dovecot.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
+        "sieve_info": "You can store multiple filters per user, but only one prefilter and one postfilter can be active at the same time.<br>\r\nEach filter will be processed in the described order. Neither a failed script nor an issued \"keep;\" will stop processing of further scripts. Changes to global sieve scripts will trigger a restart of Dovecot.<br><br>Global sieve prefilter &#8226; Prefilter &#8226; User scripts &#8226; Postfilter &#8226; Global sieve postfilter",
         "sieve_preset_1": "Discard mail with probable dangerous file types",
         "sieve_preset_2": "Always mark the e-mail of a specific sender as seen",
         "sieve_preset_3": "Discard silently, stop all further sieve processing",
@@ -723,7 +812,6 @@
         "sieve_preset_7": "Redirect and keep/drop",
         "sieve_preset_8": "Discard message sent to an alias address the sender is part of",
         "sieve_preset_header": "Please see the example presets below. For more details see <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Administrative SOGo logins are only available for mailboxes with an existing SOGo profile. A user must have been logged in to SOGo at least once.",
         "sogo_visible": "Alias is visible in SOGo",
         "sogo_visible_n": "Hide alias in SOGo",
         "sogo_visible_y": "Show alias in SOGo",
@@ -743,8 +831,8 @@
         "tls_map_parameters_info": "Empty or parameters, for example: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Policy",
         "tls_policy_maps": "TLS policy maps",
-        "tls_policy_maps_info": "This policy map overrides outgoing TLS transport rules independently of a users TLS policy settings.<br>\r\n  Please check <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a> for further information.",
         "tls_policy_maps_enforced_tls": "These policies will also override the behaviour for mailbox users that enforce outgoing TLS connections. If no policy exists below, these users will apply the default values specified as <code>smtp_tls_mandatory_protocols</code> and <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "This policy map overrides outgoing TLS transport rules independently of a user's TLS policy settings.<br>\r\n  Please check <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a> for further information.",
         "tls_policy_maps_long": "Outgoing TLS policy map overrides",
         "toggle_all": "Toggle all",
         "username": "Username",
@@ -786,6 +874,9 @@
         "qitem": "Quarantine item",
         "quarantine": "Quarantine",
         "quick_actions": "Actions",
+        "quick_delete_link": "Open quick delete link",
+        "quick_info_link": "Open info link",
+        "quick_release_link": "Open quick release link",
         "rcpt": "Recipient",
         "received": "Received",
         "recipients": "Recipients",
@@ -799,10 +890,7 @@
         "rspamd_result": "Rspamd result",
         "sender": "Sender (SMTP)",
         "sender_header": "Sender (\"From\" header)",
-        "type": "Type",
-        "quick_release_link": "Open quick release link",
-        "quick_delete_link": "Open quick delete link",
-        "quick_info_link": "Open info link",
+        "settings_info": "Maximum amount of elements to be quarantined: %s<br>Maximum email size: %s MiB",
         "show_item": "Show item",
         "spam": "Spam",
         "spam_score": "Score",
@@ -811,7 +899,15 @@
         "table_size_show_n": "Show %s items",
         "text_from_html_content": "Content (converted html)",
         "text_plain_content": "Content (text/plain)",
-        "toggle_all": "Toggle all"
+        "toggle_all": "Toggle all",
+        "type": "Type"
+    },
+    "ratelimit": {
+      "disabled": "Disabled",
+      "second": "msgs / second",
+      "minute": "msgs / minute",
+      "hour": "msgs / hour",
+      "day": "msgs / day"
     },
     "start": {
         "help": "Show/Hide help panel",
@@ -868,7 +964,9 @@
         "mailbox_added": "Mailbox %s has been added",
         "mailbox_modified": "Changes to mailbox %s have been saved",
         "mailbox_removed": "Mailbox %s has been removed",
+        "nginx_reloaded": "Nginx was reloaded",
         "object_modified": "Changes to object %s have been saved",
+        "password_policy_saved": "Password policy was saved successfully",
         "pushover_settings_edited": "Pushover settings successfully set, please verify credentials.",
         "qlearn_spam": "Message ID %s was learned as spam and deleted",
         "queue_command_success": "Queue command completed successfully",
@@ -890,10 +988,13 @@
         "tls_policy_map_entry_saved": "TLS policy map entry \"%s\" has been saved",
         "ui_texts": "Saved changes to UI texts",
         "upload_success": "File uploaded successfully",
+        "verified_fido2_login": "Verified FIDO2 login",
         "verified_totp_login": "Verified TOTP login",
         "verified_u2f_login": "Verified U2F login",
-        "verified_fido2_login": "Verified FIDO2 login",
-        "verified_yotp_login": "Verified Yubico OTP login"
+        "verified_yotp_login": "Verified Yubico OTP login",
+        "xmpp_maps_updated": "XMPP maps were updated",
+        "xmpp_reloaded": "XMPP service was reloaded",
+        "xmpp_restarted": "XMPP service was restarted"
     },
     "tfa": {
         "api_register": "%s uses the Yubico Cloud API. Please get an API key for your key <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">here</a>",
@@ -920,20 +1021,6 @@
         "waiting_usb_register": "<i>Waiting for USB device...</i><br><br>Please enter your password above and confirm your registration by tapping the button on your USB device.",
         "yubi_otp": "Yubico OTP authentication"
     },
-    "fido2": {
-        "set_fn": "Set friendly name",
-        "fn": "Friendly name",
-        "rename": "rename",
-        "confirm": "Confirm",
-        "register_status": "Registration status",
-        "known_ids": "Known IDs",
-        "none": "Disabled",
-        "set_fido2": "Register FIDO2 device",
-        "start_fido2_validation": "Start FIDO2 validation",
-        "fido2_auth": "Login with FIDO2",
-        "fido2_success": "Device successfully registered",
-        "fido2_validation_failed": "Validation failed"
-    },
     "user": {
         "action": "Action",
         "active": "Active",
@@ -956,9 +1043,11 @@
         "apple_connection_profile_complete": "This connection profile includes IMAP and SMTP parameters as well as CalDAV (calendars) and CardDAV (contacts) paths for an Apple device.",
         "apple_connection_profile_mailonly": "This connection profile includes IMAP and SMTP configuration parameters for an Apple device.",
         "change_password": "Change password",
+        "clear_recent_successful_connections": "Clear seen successful connections",
         "client_configuration": "Show configuration guides for email clients and smartphones",
         "create_app_passwd": "Create app password",
         "create_syncjob": "Create new sync job",
+        "created_on": "Created on",
         "daily": "Daily",
         "day": "day",
         "delete_ays": "Please confirm the deletion process.",
@@ -970,10 +1059,13 @@
         "edit": "Edit",
         "email": "Email",
         "email_and_dav": "Email, calendars and contacts",
+        "empty": "No results",
         "encryption": "Encryption",
         "excludes": "Excludes",
         "expire_in": "Expire in",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "force_pw_update": "You <b>must</b> set a new password to be able to access groupware related services.",
+        "from": "from",
         "generate": "generate",
         "hour": "hour",
         "hourly": "Hourly",
@@ -982,17 +1074,26 @@
         "interval": "Interval",
         "is_catch_all": "Catch-all for domain/s",
         "last_mail_login": "Last mail login",
+        "last_pw_change": "Last password change",
         "last_run": "Last run",
+        "last_ui_login": "Last UI login",
         "loading": "Loading...",
-        "mailbox_details": "Mailbox details",
+        "login_history": "Login history",
+        "mailbox": "Mailbox",
+        "mailbox_details": "Details",
+        "mailbox_general": "General",
+        "mailbox_settings": "Settings",
         "messages": "messages",
+        "month": "month",
+        "months": "months",
         "never": "Never",
         "new_password": "New password",
-        "new_password_description": "Requirement: 6 characters long, letters and numbers.",
         "new_password_repeat": "Confirmation password (repeat)",
         "no_active_filter": "No active filter available",
         "no_last_login": "No last UI login information",
         "no_record": "No record",
+        "open_logs": "Open logs",
+        "open_webmail_sso": "Login to webmail",
         "password": "Password",
         "password_now": "Current password (confirm changes)",
         "password_repeat": "Password (repeat)",
@@ -1008,10 +1109,11 @@
         "q_add_header": "Junk folder",
         "q_all": "All categories",
         "q_reject": "Rejected",
-        "quarantine_notification": "Quarantine notifications",
         "quarantine_category": "Quarantine notification category",
-        "quarantine_notification_info": "Once a notification has been sent, items will be marked as \"notified\" and no further notifications will be sent for this particular item.",
         "quarantine_category_info": "The notification category \"Rejected\" includes mail that was rejected, while \"Junk folder\" will notify a user about mails that were put into the junk folder.",
+        "quarantine_notification": "Quarantine notifications",
+        "quarantine_notification_info": "Once a notification has been sent, items will be marked as \"notified\" and no further notifications will be sent for this particular item.",
+        "recent_successful_connections": "Seen successful connections",
         "remove": "Remove",
         "running": "Running",
         "save": "Save changes",
@@ -1021,7 +1123,7 @@
         "shared_aliases_desc": "Shared aliases are not affected by user specific settings such as the spam filter or encryption policy. Corresponding spam filters can only be made by an administrator as a domain-wide policy.",
         "show_sieve_filters": "Show active user sieve filter",
         "sogo_profile_reset": "Reset SOGo profile",
-        "sogo_profile_reset_help": "This will destroy a users SOGo profile and <b>delete all contact and calendar data irretrievable</b>.",
+        "sogo_profile_reset_help": "This will destroy a user's SOGo profile and <b>delete all contact and calendar data irretrievable</b>.",
         "sogo_profile_reset_now": "Reset profile now",
         "spam_aliases": "Temporary email aliases",
         "spam_score_reset": "Reset to server default",
@@ -1062,7 +1164,9 @@
         "waiting": "Waiting",
         "week": "week",
         "weekly": "Weekly",
-        "weeks": "weeks"
+        "weeks": "weeks",
+        "year": "year",
+        "years": "years"
     },
     "warning": {
         "cannot_delete_self": "Cannot delete logged in user",
@@ -1071,6 +1175,7 @@
         "fuzzy_learn_error": "Fuzzy hash learn error: %s",
         "hash_not_found": "Hash not found or already deleted",
         "ip_invalid": "Skipped invalid IP: %s",
+        "is_not_primary_alias": "Skipped non-primary alias %s",
         "no_active_admin": "Cannot deactivate last active admin",
         "quota_exceeded_scope": "Domain quota exceeded: Only unlimited mailboxes can be created in this domain scope.",
         "session_token": "Form token invalid: Token mismatch",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.es.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.es.json
index 4e78b6f..eac99a5 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.es.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.es.json
@@ -344,12 +344,12 @@
         "logs": "Logs",
         "restart_container": "Reiniciar",
         "solr_dead": "Solr está empezando, deshabilitado o caído.",
-        "solr_docs": "Docs",
-        "solr_last_modified": "Última modificación",
-        "solr_size": "Tamaño",
-        "solr_started_at": "Iniciado el",
+        "docs": "Docs",
+        "last_modified": "Última modificación",
+        "size": "Tamaño",
+        "started_at": "Iniciado el",
         "solr_status": "Solr status",
-        "solr_uptime": "Uptime",
+        "uptime": "Uptime",
         "static_logs": "Logs estáticos",
         "system_containers": "Sistema y Contenedores"
     },
@@ -772,4 +772,4 @@
         "fuzzy_learn_error": "Error aprendiendo hash: %s",
         "ip_invalid": "IP inválida omitida: %s"
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.fi.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.fi.json
index f762401..3410ccc 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.fi.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.fi.json
@@ -389,12 +389,12 @@
         "logs": "Logit tausta palveluista",
         "restart_container": "Uudelleen käynnistä",
         "solr_dead": "Solr käynnistyy, on poissa käytöstä tai kuoli.",
-        "solr_docs": "Docs",
-        "solr_last_modified": "Viimeksi muokattu",
-        "solr_size": "Koko",
-        "solr_started_at": "Käynnistetty",
+        "docs": "Docs",
+        "last_modified": "Viimeksi muokattu",
+        "size": "Koko",
+        "started_at": "Käynnistetty",
         "solr_status": "Solr-tila",
-        "solr_uptime": "Päällä",
+        "uptime": "Päällä",
         "started_on": "Aloitettiin",
         "static_logs": "Staattiset lokit",
         "system_containers": "Systeemi & Säiliöt"
@@ -468,7 +468,7 @@
         "save": "Tallenna muutokset",
         "scope": "Laajuus",
         "sender_acl": "Salli lähettää nimellä",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Lähettäjän tarkistus on poistettu käytöstä</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Lähettäjän tarkistus on poistettu käytöstä</span>",
         "sender_acl_info": "Jos postilaatikon käyttäjän A sallitaan lähettävän postilaatikon käyttäjäksi B, lähettäjän osoitetta ei näytetä automaattisesti valittavana \"alkaen\" -kentässä SOGossa.<br>\r\nSähkö postilaatikon käyttäjän A on luotava valtuutus SOGoon, jotta sähkö postilaatikon käyttäjä b voi valita osoitteen lähettäjäksi. Tämä käyttäytyminen ei koske alias-osoitteita",
         "sieve_desc": "Lyhyt kuvaus",
         "sieve_type": "Suodattimen tyyppi",
@@ -889,4 +889,4 @@
         "session_token": "Lomakkeen tunnus sanoma ei kelpaa: tunnus sanoman risti riita",
         "session_ua": "Lomakkeen tunnus sanoma ei kelpaa: käyttäjä agentin tarkistus virhe"
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.fr.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.fr.json
index 94f8657..07cd326 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.fr.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.fr.json
@@ -9,10 +9,12 @@
 		"filters": "Filtres",
 		"login_as": "S'identifier en tant qu'utilisateur",
 		"prohibited": "Interdit par les ACL",
+		"protocol_access": "Modifier le protocol d'acces",
 		"pushover": "Pushover",
 		"quarantine": "Actions de quarantaine",
 		"quarantine_attachments": "Pièces jointes en quarantaine",
 		"quarantine_notification": "Modifier la notification de quarantaine",
+		"quarantine_category": "Modifier la catégorie de la notification de quarantaine",
 		"ratelimit": "Limite d'envoi",
 		"recipient_maps": "Cartes destinataire",
 		"smtp_ip_access": "Changer les hôtes autorisés pour SMTP",
@@ -23,7 +25,12 @@
 		"spam_score": "Score SPAM",
 		"syncjobs": "Tâches de synchronisation",
 		"tls_policy": "Police TLS",
-		"unlimited_quota": "Quota illimité pour les boites de courriel"
+		"unlimited_quota": "Quota illimité pour les boites de courriel",
+		"domain_desc": "Modifier la description du domaine",
+		"xmpp_admin": "Promouvoir l'utilisateur XMPP en administrateur",
+		"xmpp_domain_access": "Configurer l'accès au domaine XMPP",
+		"xmpp_mailbox_access": "Configurer l'accès à l'utilisateur XMPP",
+		"xmpp_prefix": "Changer le sous-domaine XMPP (préfixe)"
 	},
 	"add": {
 		"activate_filter_warn": "Tous les autres filtres seront désactivés, quand activé est coché.",
@@ -31,7 +38,7 @@
 		"add": "Ajouter",
 		"add_domain_only": "Ajouter uniquement le domaine",
 		"add_domain_restart": "Ajouter le domaine et redémarrer SOGo",
-		"alias_address": "Alias d'adresse/s",
+		"alias_address": "Alias d'adresse(s)",
 		"alias_address_info": "<small>Adresse(s) courriel complète(s) ou @example.com, pour capturer tous les messages d'un domaine (séparées par des virgules). <b>Seulement des domaines Mailcow</b>.</small>",
 		"alias_domain": "Alias de domaine",
 		"alias_domain_info": "<small>Seulement des noms de domaines valides (séparés par des virgules).</small>",
@@ -56,6 +63,12 @@
 		"full_name": "Nom complet",
 		"gal": "Carnet d'Adresses Global (GAL)",
 		"gal_info": "La liste d'adresse globale (GAL) contient tous les objets d'un domaine et ne peut être modifié par aucun utilisateur. Si elles sont désactivées,les informations libres/occupées dans SOGo sont cachées, ! <b>Redémarrez SOGo pour appliquer les changements.</b>",
+		"xmpp": "Activer XMPP pour ce domaine",
+		"xmpp_info": "Cette fonction activera la fonctionnalité de chat pour ce domaine.",
+		"xmpp_access": "Accès XMPP",
+		"xmpp_access_info": "XMPP doit être activé pour ce domaine.",
+		"xmpp_admin": "Administrateur XMPP",
+		"xmpp_admin_info": "<b>Attention</b>: promeut un utilisateur au rang d'administrateur XMPP pour ce domaine.",
 		"generate": "Générer",
 		"goto_ham": "Apprendre en tant que <span class=\"text-success\"><b>Courrier légitime (ham)</b></span>",
 		"goto_null": "Ignorer silencieusement le courriel",
@@ -136,6 +149,7 @@
 		"ban_list_info": "Consultez la liste des adresses IP interdites ci-dessous: <b>réseau (durée d'interdiction restante) - [actions]</b>.<br />Les adresses IP mises en file d'attente pour être interdites seront supprimées de la liste d'interdiction active dans quelques secondes.<br />Les étiquettes rouges indiquent des interdictions permanentes actives par liste noire.",
 		"change_logo": "Changer de logo",
 		"configuration": "Configuration",
+		"convert_html_to_text": "Convertir le code HTML en texte brut",
 		"credentials_transport_warning": "<b>Attention</b>: L’ajout d’une nouvelle entrée de carte de transport mettra à jour les informations d’identification pour toutes les entrées avec une colonne nexthop correspondante.",
 		"customer_id": "ID client",
 		"customize": "Personnaliser",
@@ -156,20 +170,23 @@
 		"dkim_to": "Vers",
 		"dkim_to_title": "Les domaines ciblés seront réécrits",
 		"domain": "Domaine",
+		"domain_admin": "Administrateur de domaine",
 		"domain_admins": "Administrateurs de domaine",
-		"domain_s": "Domaine/s",
+		"domain_s": "Domaine(s)",
 		"duplicate": "Dupliquer",
 		"duplicate_dkim": "Dupliquer l'enregistrement DKIM",
 		"edit": "Editer",
 		"empty": "Aucun résultat",
 		"excludes": "Exclure ces destinataires",
-		"f2b_ban_time": "Durée du bannissement (s)",
+		"f2b_ban_time": "Durée du bannissement(s)",
 		"f2b_blacklist": "Réseaux/Domaines sur Liste Noire",
+		"f2b_filter": "Filtre(s) Regex",
 		"f2b_list_info": "Un hôte ou un réseau sur liste noire l'emportera toujours sur une entité de liste blanche. <b>L'application des mises à jour de liste prendra quelques secondes.</b>",
 		"f2b_max_attempts": "Nb max. de tentatives",
 		"f2b_netban_ipv4": "Taille du sous-réseau IPv4 pour l'application du bannissement (8-32)",
 		"f2b_netban_ipv6": "Taille du sous-réseau IPv6 pour l'application du bannissement (8-128)",
 		"f2b_parameters": "Paramètres Fail2ban",
+		"f2b_regex_info": "Logs pris en compte: SOGo, Postfix, Dovecot, PHP-FPM.",
 		"f2b_retry_window": "Fenêtre de nouvel essai pour le nb max. de tentatives",
 		"f2b_whitelist": "Réseaux/hôtes en liste blanche",
 		"filter_table": "Table de filtrage",
@@ -184,6 +201,7 @@
 		"hash_remove_info": "La suppression d'un hachage ratelimit (s'il existe toujours) réinitialisera complètement son compteur.<br>\r\n  Chaque hachage est indiqué par une couleur individuelle.",
 		"help_text": "Remplacer le texte d'aide sous le masque de connexion (HTML autorisé)",
 		"host": "Hôte",
+		"html": "HTML",
 		"import": "Importer",
 		"import_private_key": "Importer la clè privée",
 		"in_use_by": "Utilisé par",
@@ -212,6 +230,7 @@
 		"oauth2_redirect_uri": "URI de redirection",
 		"oauth2_renew_secret": "Générer un nouveau secret client",
 		"oauth2_revoke_tokens": "Révoquer tous les jetons",
+		"optional": "Optionnel",
 		"password": "Mot de passe",
 		"password_repeat": "Confirmation du mot de passe (répéter)",
 		"priority": "Priorité",
@@ -221,6 +240,7 @@
 		"quarantine_exclude_domains": "Exclure les domaines et les alias de domaine",
 		"quarantine_max_age": "Âge maximun en jour(s)<br><small>La valeur doit être égale ou supérieure à 1 jour.</small>",
 		"quarantine_max_size": "Taille maximum en Mo (les éléments plus grands sont mis au rebut):<br><small>0 ne signifie <b>pas</b> illimité.</small>",
+		"quarantine_max_score": "Ignorer la notification si le score de spam est au dessus de cette valeur:<br><small>Par défaut: 9999.0</small>",
 		"quarantine_notification_html": "Modèle de courriel de notification:<br><small>Laisser vide pour restaurer le modèle par défaut.</small>",
 		"quarantine_notification_sender": "Notification par e-mail de l’expéditeur",
 		"quarantine_notification_subject": "Objet du courriel de notification",
@@ -343,6 +363,7 @@
 		"global_filter_write_error": "Impossible d’écrire le fichier de filtre: %s",
 		"global_map_invalid": "ID de carte globale %s non valide",
 		"global_map_write_error": "Impossible d’écrire l’ID de la carte globale %s: %s",
+		"xmpp_map_write_error": "Impossible d'écrire la carte XMPP: %s",
 		"goto_empty": "Une adresse alias doit contenir au moins une adresse 'goto'valide",
 		"goto_invalid": "Adresse Goto %s non valide",
 		"ham_learn_error": "Erreur d'apprentissage Ham: %s",
@@ -377,6 +398,7 @@
 		"max_quota_in_use": "Le quota de la boîte doit être supérieur ou égal à %d Mo",
 		"maxquota_empty": "Le quota maximum par boîte ne doit pas être de 0.",
 		"mysql_error": "Erreur MySQL: %s",
+		"nginx_reload_failed": "Le rechargement de Nginx a échoué: %s",
 		"network_host_invalid": "Réseau ou host non valide: %s",
 		"next_hop_interferes": "%s interfère avec le nexthop %s",
 		"next_hop_interferes_any": "Un saut suivant existant interfère avec %s",
@@ -397,6 +419,7 @@
 		"redis_error": "Erreur Redis: %s",
 		"relayhost_invalid": "La saisie de la carte %s est invalide",
 		"release_send_failed": "Le message n’a pas pu être diffusé: %s",
+		"reset_f2b_regex": "Le filtre regex n'a pas pu être réinitialisé à temps, veuillez réessayer ou attendre quelques secondes de plus et recharger le site web.",
 		"resource_invalid": "Le nom de la resource %s n'est pas valide",
 		"rl_timeframe": "Le délai limite du taux est incorrect",
 		"rspamd_ui_pw_length": "Le mot de passe de l'interface Rspamd doit être de 6 caratères au minimum",
@@ -412,19 +435,23 @@
 		"targetd_relay_domain": "Le domaine cible %s est un domaine de relais",
 		"temp_error": "Erreur temporaire",
 		"text_empty": "La zone texte ne peut pas être vide",
+		"tfa_token_invalid": "Le token TFA est invalide",
 		"tls_policy_map_dest_invalid": "La politique de destination n'est pas valide",
 		"tls_policy_map_entry_exists": "Une entrée de carte de politique \"%s\" existe",
 		"tls_policy_map_parameter_invalid": "Le paramètre Policy est invalide",
 		"totp_verification_failed": "Echec de la vérification TOTP",
 		"transport_dest_exists": "La destination de transport \"%s\" existe",
 		"u2f_verification_failed": "Echec de la vérification U2F: %s",
+		"fido2_verification_failed": "La vérification FIDO2 a échoué: %s",
 		"unknown": "Une erreur inconnue est survenue",
 		"unknown_tfa_method": "Methode TFA inconnue",
 		"unlimited_quota_acl": "Quota illimité interdit par les ACL",
 		"username_invalid": "Le nom d'utilisateur %s ne peut pas être utilisé",
 		"validity_missing": "Veuillez attribuer une période de validité",
 		"value_missing": "Veuillez fournir toutes les valeurs",
-		"yotp_verification_failed": "La vérification Yubico OTP en échec: %s"
+		"yotp_verification_failed": "La vérification Yubico OTP a échoué: %s",
+		"xmpp_restart_failed": "XMPP n'a pas pu être redémarré",
+		"xmpp_reload_failed": "XMPP n'a pas pu être rechargé"
 	},
 	"debug": {
 		"chart_this_server": "Graphique (ce serveur)",
@@ -438,20 +465,24 @@
 		"logs": "Logs",
 		"restart_container": "Redémarrer",
 		"solr_dead": "Solr est en cours de démarrage, désactivé ou mort.",
-		"solr_docs": "Docs",
-		"solr_last_modified": "Dernière modification",
-		"solr_size": "Taille",
-		"solr_started_at": "Démarré à",
+		"xmpp_dead": "XMPP est en cours de démarrage, désactivé ou mort.",
+		"docs": "Docs",
+		"last_modified": "Dernière modification",
+		"online_users": "Utilisateurs en ligne",
+		"size": "Taille",
+		"started_at": "Démarré à",
 		"solr_status": "Etat Solr",
-		"solr_uptime": "Disponibilité",
+		"uptime": "Disponibilité",
 		"started_on": "Démarré à",
 		"static_logs": "Logs statiques",
-		"system_containers": "Système & Conteneurs"
+		"system_containers": "Système & Conteneurs",
+		"xmpp_status": "Status de XMPP"
 	},
 	"diagnostics": {
 		"cname_from_a": "Valeur dérivée de l’enregistrement A/AAAA. Ceci est supporté tant que l’enregistrement indique la bonne ressource.",
 		"dns_records": "Enregistrements DNS",
 		"dns_records_24hours": "Veuillez noter que les modifications apportées au DNS peuvent prendre jusqu’à 24 heures pour que leurs états actuels soient correctement reflétés sur cette page. Il est conçu comme un moyen pour vous de voir facilement comment configurer vos enregistrements DNS et de vérifier si tous vos enregistrements sont correctement stockés dans les DNS.",
+		"dns_records_docs": "Veuillez également consulter <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">la documentation</a>.",
 		"dns_records_data": "Données correcte",
 		"dns_records_name": "Nom",
 		"dns_records_status": "Etat courant",
@@ -464,6 +495,7 @@
 		"alias": "Editer les alias",
 		"allow_from_smtp": "Restreindre l'utilisation de <b>SMTP</b> à ces adresses IP",
 		"allow_from_smtp_info": "Laissez vide pour autoriser tous les expéditeurs.<br>Adresses IPv4/IPv6 et réseaux.",
+		"allowed_protocols": "Protocoles autorisés",
 		"app_name": "Nom de l'application",
 		"app_passwd": "Mot de passe de l'application",
 		"automap": "Essayer d’automatiser les dossiers (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
@@ -493,6 +525,15 @@
 		"full_name": "Nom complet",
 		"gal": "Liste d'adresses globale (GAL)",
 		"gal_info": "La liste d'adresses globale (GAL) contient tous les objets d’un domaine et ne peut pas être édité par un utilisateur. Les informations libres/occupées dans SOGo sont manquantes si elles sont désactivées! <b>Redémarrer SOGo pour appliquer les modifications.</b>",
+		"xmpp": "Activer XMPP pour ce domaine",
+		"xmpp_prefix": "Préfixe XMPP pour le domaine (\"im\" pour utiliser <b>im</b>.exemple.org)",
+		"xmpp_prefix_info": "Pour demander des certificats XMPP, deux enregistrements DNS CNAME doivent pointer de <b> im </b> .exemple.org ainsi que de <b> * .im </b> .exemple.org vers <b>% s </ b>. Veuillez également exécuter la vérification DNS pour ce domaine après avoir activé XMPP.",
+		"xmpp_info": "Cette fonction activera la fonctionnalité de chat pour ce domaine.",
+		"xmpp_access": "Accès XMPP",
+		"xmpp_access_info": "XMPP doit être activé pour ce domaine.",
+		"xmpp_admin": "Administrateur XMPP",
+		"xmpp_admin_info": "<b>Attention:</b> Promeut un utilisateur au rang d'administrateur XMPP de ce domaine.",
+		"xmpp_example_jid": "<b>Exemple JID</b> (se connecter avec le mot de passe de la boîte aux lettres)",		
 		"generate": "générer",
 		"grant_types": "Types 'autorisation",
 		"hostname": "Nom d'hôte",
@@ -524,6 +565,7 @@
 		"pushover_vars": "Lorsque aucun filtre d’expéditeur n’est défini, tous les messages seront considérés.<br>Les filtres Regex ainsi que les vérifications exactes de l’expéditeur peuvent être définis individuellement et seront considérés de façon séquentielle. Ils ne dépendent pas les uns des autres.<br>Variables utilisables pour le texte et le titre (veuillez prendre note des politiques de protection des données)",
 		"pushover_verify": "Vérifier les justificatifs",
 		"quota_mb": "Quota (Mo)",
+		"ratelimit": "Limite de taux",
 		"redirect_uri": "Redirection/rappel URL",
 		"relay_all": "Relayer tous les destinataires",
 		"relay_all_info": "↪ Si vous <b>ne choissisez pas</b> de relayer tous les destinataires, vous devrez ajouter une boîte (\"aveugle\") pour chaque destinataire qui devrait être relayé.",
@@ -536,7 +578,7 @@
 		"save": "Enregistrer les modifications",
 		"scope": "Portée",
 		"sender_acl": "Permettre d’envoyer comme",
-		"sender_acl_disabled": "↳ <span class=\"label label-danger\">Le contrôle de l’expéditeur est désactivé</span>",
+		"sender_acl_disabled": "<span class=\"label label-danger\">Le contrôle de l’expéditeur est désactivé</span>",
 		"sender_acl_info": "Si l’utilisateur de la boîte A est autorisé à envoyer en tant qu’utilisateur de la boîte B, l’adresse de l’expéditeur n’est pas automatiquement affichée comme sélectionnable du champ \"from\" dans SOGo.<br>\r\n  L’utilisateur B de la boîte doit créer une délégation dans Sogo pour permettre à l’utilisateur A de la boîte de sélectionner son adresse comme expéditeur. Pour déléguer une boîte dans Sogo, utilisez le menu (trois points) à droite du nom de votre boîte dans le coin supérieur gauche dans la vue de courrier. Ce comportement ne s’applique pas aux adresses alias.",
 		"sieve_desc": "Description courte",
 		"sieve_type": "Type de filtre",
@@ -546,11 +588,12 @@
 		"sogo_visible": "Alias visible dans SOGo",
 		"sogo_visible_info": "Cette option affecte uniquement les objets qui peuvent être affichés dans SOGo (adresses alias partagées ou non partagées pointant vers au moins une boîte mail locale). Si caché, un alias n’apparaîtra pas comme expéditeur sélectionnable dans SOGo.",
 		"spam_alias": "Créer ou modifier des adresses alias limitées dans le temps",
+		"spam_filter": "Filtre spam",
 		"spam_policy": "Ajouter ou supprimer des éléments à la liste blanche/noire",
 		"spam_score": "Définir un score spam personnalisé",
 		"subfolder2": "Synchronisation dans le sous-dossier sur la destination<br><small>(vide = ne pas utiliser de sous-dossier)</small>",
 		"syncjob": "Modifier la tâche de synchronisation",
-		"target_address": "Adresse/s Goto<small>(séparé/s par des virgules)</small>",
+		"target_address": "Adresse(s) Goto<small>(séparé(s) par des virgules)</small>",
 		"target_domain": "Domaine cible",
 		"timeout1": "Délai de connexion à l’hôte distant",
 		"timeout2": "Délai de connexion à l’hôte local",
@@ -590,8 +633,10 @@
 	},
 	"login": {
 		"delayed": "La connexion a été retardée de %s secondes.",
+		"fido2_webauthn": "FIDO2/WebAuthn",
 		"login": "Connexion",
 		"mobileconfig_info": "Veuillez vous connecter en tant qu’utilisateur de la boîte pour télécharger le profil de connexion Apple demandé.",
+		"other_logins": "Clé d'authentification",
 		"password": "Mot de passe",
 		"username": "Nom d'utilisateur"
 	},
@@ -617,6 +662,7 @@
 		"aliases": "Aliases",
 		"allow_from_smtp": "Restreindre l'utilisation de <b>SMTP</b> à ces adresses IP",
 		"allow_from_smtp_info": "Laissez vide pour autoriser tous les expéditeurs.<br>Adresses IPv4/IPv6 et réseaux.",
+		"allowed_protocols": "Protocoles autorisés",
 		"backup_mx": "Sauvegarde MX",
 		"bcc": "BCC",
 		"bcc_destination": "Destination BCC",
@@ -666,6 +712,8 @@
 		"mailbox_defquota": "Taille de boîte par défaut",
 		"mailbox_quota": "Taille max. d’une boîte",
 		"mailboxes": "Boîtes mail",
+		"mailbox_defaults": "Paramètres par défaut",
+		"mailbox_defaults_info": "Définir les paramètres par défaut pour les nouvelles boîtes aux lettres.",
 		"mins_interval": "Intervalle (min)",
 		"msg_num": "Message #",
 		"multiple_bookings": "Réservations multiples",
@@ -676,7 +724,11 @@
 		"owner": "Propriétaire",
 		"private_comment": "Commentaire privé",
 		"public_comment": "Commentaire public",
+		"q_add_header": "Courriers indésirables",
+		"q_all": "Toutes les catégories",
+		"q_reject": "Rejecté",
 		"quarantine_notification": "Avis de quarantaine",
+		"quarantine_category": "Catégorie de la notification de quarantaine",
 		"quick_actions": "Actions",
 		"recipient_map": "Carte du destinataire",
 		"recipient_map_info": "Les cartes des destinataires sont utilisées pour remplacer l’adresse de destination d’un message avant sa livraison.",
@@ -700,7 +752,6 @@
 		"sieve_preset_7": "Rediriger et garder/déposer",
 		"sieve_preset_8": "Supprimer le message envoyé à une adresse alias dont fait partie l’expéditeur",
 		"sieve_preset_header": "Voir les exemples de préréglages ci-dessous. Pour plus de détails voir <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-		"sogo_allow_admin_hint": "Les connexions administratives Sogo ne sont disponibles que pour les boîtes mail avec un profil SOGo existant. Un utilisateur doit avoir été connecté à Sogo au moins une fois.",
 		"sogo_visible": "Alias visible dans SOGo",
 		"sogo_visible_n": "Masquer alias dans SOGo",
 		"sogo_visible_y": "Afficher alias dans SOGo",
@@ -711,7 +762,7 @@
 		"table_size": "Taille de la table",
 		"table_size_show_n": "Montrer %s articles",
 		"target_address": "Goto adresse",
-		"target_domain": "Domain cible",
+		"target_domain": "Domaine cible",
 		"tls_enforce_in": "Appliquer le TLS entrant",
 		"tls_enforce_out": "Appliquer le TLS sortant",
 		"tls_map_dest": "Destination",
@@ -742,12 +793,17 @@
 		"action": "Action",
 		"atts": "Pièces jointes",
 		"check_hash": "Hachage du fichier de recherche @ VT",
+		"confirm": "Confirmer",
 		"confirm_delete": "Confirmer la suppression de cet élément.",
 		"danger": "Danger",
+		"deliver_inbox": "Envoyer dans la boîte de reception",
 		"disabled_by_config": "La configuration actuelle du système désactive la fonctionnalité de quarantaine. Veuillez définir \"retentions par boîte\" et une \"taille maximum\" pour les éléments en quarantaine.",
+		"settings_info": "Quantité maximum d'éléments à mettre en quarantaine: %s<br>Taille maximale des e-mails: %s MiB",
 		"download_eml": "Télécharger (.eml)",
 		"empty": "Pas de résultat",
 		"high_danger": "Haut",
+		"info": "Information",
+		"junk_folder": "Courriers indésirables",
 		"learn_spam_delete": "Apprendre comme spam et supprimer",
 		"low_danger": "Danger faible",
 		"medium_danger": "Danger moyen",
@@ -755,6 +811,7 @@
 		"notified": "Notifié",
 		"qhandler_success": "Demande envoyée avec succès au système. Vous pouvez maintenant fermer la fenêtre.",
 		"qid": "Rspamd QID",
+		"qinfo": "Le système de quarantaine enregistrera le courrier rejeté dans la base de données (l'expéditeur n'aura <em> pas </em> l'impression d'un courrier remis) ainsi que le courrier, qui est remis sous forme de copie dans le dossier indésirable d'une boîte aux lettres.\r\n  <br>\"Apprendre comme spam et supprimer\" apprendra un message comme spam via le théorème Bayesianet calculera également des hachages flous pour refuser des messages similaires à l'avenir.\r\n  <br>Veuillez noter que l'apprentissage de plusieurs messages peut prendre du temps, selon votre système. <br> Les éléments figurant sur la liste noire sont exclus de la quarantaine.",
 		"qitem": "Élément de quarantaine",
 		"quarantine": "Quarantaine",
 		"quick_actions": "Actions",
@@ -762,16 +819,21 @@
 		"received": "Reçu",
 		"recipients": "Destinataires",
 		"refresh": "Rafraîchir",
+		"rejected": "Rejeté",
 		"release": "Libérer",
 		"release_body": "Nous avons joint votre message comme fichier eml à ce message.",
 		"release_subject": "Article de quarantaine potentiellement dommageable %s",
 		"remove": "Enlever",
+		"rewrite_subject": "Réécrire le sujet",
 		"rspamd_result": "Résultat Rspamd",
 		"sender": "Expéditeur (SMTP)",
 		"sender_header": "Expéditeur (\"From\" header)",
+		"type": "Type",
 		"quick_release_link": "Ouvrir le lien de dégagement rapide",
 		"quick_delete_link": "Ouvrir le lien de suppression rapide",
+		"quick_info_link": "Ouvrir le lien d'informations",
 		"show_item": "Montrer l'article",
+		"spam": "Spam",
 		"spam_score": "Score",
 		"subj": "Sujet",
 		"table_size": "Dimension de la table",
@@ -835,6 +897,7 @@
 		"mailbox_added": "La boîte mail %s a été ajoutée",
 		"mailbox_modified": "Les modifications de la boîte %s ont été sauvées",
 		"mailbox_removed": "La boîte %s a été supprimée",
+		"nginx_reloaded": "Nginx a été rechargé",
 		"object_modified": "Les changements de %s ont été sauvés",
 		"pushover_settings_edited": "Paramètres Pushover réglés avec succès, veuillez vérifier les informations d’identification.",
 		"qlearn_spam": "Le message ID %s a été appris comme spam et supprimé",
@@ -859,7 +922,11 @@
 		"upload_success": "Fichier téléchargé avec succès",
 		"verified_totp_login": "Authentification TOTP vérifiée",
 		"verified_u2f_login": "Authentification U2F vérifiée",
-		"verified_yotp_login": "Authentification Yubico OTP vérifiée"
+		"verified_fido2_login": "Authentification FIDO2 vérifiée",
+		"verified_yotp_login": "Authentification Yubico OTP vérifiée",
+		"xmpp_restarted": "Le service XMPP a été redémarré",
+		"xmpp_reloaded": "Le service XMPP a été rechargé",
+		"xmpp_maps_updated": "Les cartes XMPP ont été mises à jour"
 	},
 	"tfa": {
 		"api_register": "%s utilise l'API Yubico Cloud. Veuillez obtenir une clé API pour votre clé <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">here</a>",
@@ -879,15 +946,30 @@
 		"set_tfa": "Définir une méthode d’authentification à deux facteurs",
 		"start_u2f_validation": "Début de la validation",
 		"tfa": "Authentification à deux facteurs",
+		"tfa_token_invalid": "Token TFA invalide",
 		"totp": "OTP (One Time Password = Mot de passe à usage unique : Google Authenticator, Authy, etc.)",
 		"u2f": "Authentification U2F",
 		"waiting_usb_auth": "<i>En attente d’un périphérique USB...</i><br><br>S’il vous plaît appuyez maintenant sur le bouton de votre périphérique USB U2F.",
 		"waiting_usb_register": "<i>En attente d’un périphérique USB...</i><br><br>Veuillez entrer votre mot de passe ci-dessus et confirmer votre inscription U2F en appuyant sur le bouton de votre périphérique USB U2F.",
 		"yubi_otp": "Authentification OTP Yubico"
 	},
+	"fido2": {
+		"set_fn": "Définir un nom",
+		"fn": "Nom",
+		"rename": "renommer",
+		"confirm": "Confirmer",
+		"register_status": "Etat de l'enregistrement",
+		"known_ids": "Identifiant(s) connu(s)",
+		"none": "Désactivé",
+		"set_fido2": "Enregistrer un nouvel appareil FIDO2",
+		"start_fido2_validation": "Tester la validation FIDO2",
+		"fido2_auth": "Se connecter avec FIDO2",
+		"fido2_success": "L'appareil est enregistré avec succès",
+		"fido2_validation_failed": "La validation a échoué"
+	},
 	"user": {
 		"action": "Action",
-		"active": "Active",
+		"active": "Actif",
 		"active_sieve": "Filtre actif",
 		"advanced_settings": "Paramètres avancés",
 		"alias": "Alias",
@@ -904,8 +986,8 @@
 		"app_name": "Nom d'application",
 		"app_passwds": "Mots de passe de l'application",
 		"apple_connection_profile": "Profil de connexion Apple",
-		"apple_connection_profile_complete": "Ce profil de connexion inclut les paramètres IMAP et SMTP ainsi que les chemins Caldav (calendriers) et Carddav (contacts) pour un appareil Apple." ,
-		"apple_connection_profile_mailonly" : "Ce profil de connexion inclut les paramètres de configuration IMAP et SMTP pour un périphérique Apple.",
+		"apple_connection_profile_complete": "Ce profil de connexion inclut les paramètres IMAP et SMTP ainsi que les chemins Caldav (calendriers) et Carddav (contacts) pour un appareil Apple.",
+		"apple_connection_profile_mailonly": "Ce profil de connexion inclut les paramètres de configuration IMAP et SMTP pour un périphérique Apple.",
 		"change_password": "Changer le mot de passe",
 		"client_configuration": "Afficher les guides de configuration pour les clients de messagerie et les smartphones",
 		"create_app_passwd": "Créer un mot de passe application",
@@ -931,7 +1013,7 @@
 		"hours": "heures",
 		"in_use": "Utilisé",
 		"interval": "Intervalle",
-		"is_catch_all": "Attrape-tout pour le domaine/s",
+		"is_catch_all": "Attrape-tout pour le domaine(s)",
 		"last_mail_login": "Dernière connexion mail",
 		"last_run": "Dernière exécution",
 		"loading": "Chargement...",
@@ -956,8 +1038,13 @@
 		"pushover_title": "Titre de la notification",
 		"pushover_vars": "Lorsqu’aucun filtre d’expéditeur n’est défini, tous les messages seront considérés.<br>Les filtres Regex ainsi que les vérifications exactes de l’expéditeur peuvent être définis individuellement et seront considérés de façon séquentielle. Ils ne dépendent pas les uns des autres.<br>Variables utilisables pour le texte et le titre (veuillez prendre note des politiques de protection des données)",
 		"pushover_verify": "Vérifier les justificatifs",
+		"q_add_header": "Courrier indésirable",
+		"q_all": "Toutes les catégories",
+		"q_reject": "Rejeté",
 		"quarantine_notification": "Avis de quarantaine",
+		"quarantine_category": "Catégorie de la notification de quarantaine",
 		"quarantine_notification_info": "Une fois qu’un avis a été envoyé, les articles seront marqués comme \"notified\" et aucune autre notification ne sera envoyée pour ce point particulier.",
+		"quarantine_category_info": "La catégorie de notification \"Rejeté\" inclut le courrier qui a été rejeté, tandis que \"Dossier indésirable\" informera un utilisateur des e-mails qui ont été placés dans le dossier indésirable.",
 		"remove": "Enlever",
 		"running": "En fonction",
 		"save": "Sauvegarder les changements",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.it.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.it.json
index b3ad092..c02057f 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.it.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.it.json
@@ -1,203 +1,682 @@
 {
     "acl": {
-        "syncjobs": "Processi di sync"
+        "alias_domains": "Aggiungi alias di dominio",
+        "app_passwds": "Gestisci le password delle app",
+        "bcc_maps": "BCC maps",
+        "delimiter_action": "Delimiter action",
+        "domain_desc": "Modifica la descrizione del dominio",
+        "domain_relayhost": "Modifica relayhost per un dominio",
+        "eas_reset": "Ripristina i dispositivi EAS",
+        "extend_sender_acl": "Allow to extend sender ACL by external addresses",
+        "filters": "Filtri",
+        "login_as": "Accedi come utente della casella di posta",
+        "mailbox_relayhost": "Modifica relayhost per una casella di posta",
+        "prohibited": "Vietato dall'ACL",
+        "protocol_access": "Modifica l'accesso al protocollo",
+        "pushover": "Pushover",
+        "quarantine": "Azioni di quarantena",
+        "quarantine_attachments": "Allegati in quarantena",
+        "quarantine_category": "Modifica la categoria delle notifiche di quarantena",
+        "quarantine_notification": "Modifica notifiche quarantena",
+        "ratelimit": "Rate limit",
+        "recipient_maps": "Recipient maps",
+        "smtp_ip_access": "Modifica gli host consentiti per SMTP",
+        "sogo_access": "Consenti la gestione dell'accesso SOGo",
+        "sogo_profile_reset": "Ripristina profilo SOGo",
+        "spam_alias": "Alias temporanei",
+        "spam_policy": "Blacklist/Whitelist",
+        "spam_score": "Punteggio SPAM",
+        "syncjobs": "Processi di sync",
+        "tls_policy": "TLS policy",
+        "unlimited_quota": "Spazio illimitato per le caselle di posta",
+        "xmpp_admin": "Promuovi l'utente XMPP ad amministratore",
+        "xmpp_domain_access": "Configura l'accesso al dominio XMPP",
+        "xmpp_mailbox_access": "Configura l'accesso utente XMPP",
+        "xmpp_prefix": "Cambia sottodominio XMPP (prefisso)"
     },
     "add": {
+        "activate_filter_warn": "Tutti gli altri filtri saranno disattivati, quando è attivo.",
         "active": "Attiva",
         "add": "Aggiungi",
-        "alias_address": "Indirizzo alias/es:",
-        "alias_address_info": "<small>Indirizzo e-mail completo/es @example.com, per catturare tutti i messaggi di un dominio (separati da virgola). <b>solo domini mailcow</b>.</small>",
+        "add_domain_only": "Aggiungi solamente il dominio",
+        "add_domain_restart": "Aggiungi il dominio e riavvia SOGo",
+        "alias_address": "Indirizzo alias",
+        "alias_address_info": "<small>Indirizzo e-mail completo/i @example.com, per catturare tutti i messaggi di un dominio (separati da virgola). <b>Solo domini mailcow</b>.</small>",
         "alias_domain": "Dominio alias",
-        "alias_domain_info": "<small>Solo nomi di dominio validi (cseparati da virgola).</small>",
-        "backup_mx_options": "Backup MX options:",
-        "delete1": "Elimina dalla sorgente al termine",
+        "alias_domain_info": "<small>Solo nomi di dominio validi (separati da virgola).</small>",
+        "app_name": "Nome app",
+        "app_password": "Aggiungi la password dell'app",
+        "automap": "Prova a mappare automaticamente le cartelle (\"Sent items\", \"Sent\" => \"Posta inviata\" ecc.)",
+        "backup_mx_options": "Relay options",
+        "comment_info": "Un commento privato non è visibile all'utente, mentre un commento pubblico viene mostrato come suggerimento quando si passa con il mouse nella panoramica di un utente",
+        "custom_params": "Parametri personalizzati",
+        "custom_params_hint": "Corretto: --param=xy, errato: --param xy",
+		"delete1": "Elimina dalla sorgente al termine",
+		"delete2": "Elimina i messaggi nella casella di destinazione che non sono presenti nell'origine",
         "delete2duplicates": "Elimina duplicati nella destinazione",
-        "description": "Descrizione:",
+        "description": "Descrizione",
+        "destination": "Destinazione",
+        "disable_login": "Disabilita l'accesso (la posta in arrivo viene correttamente recapitata)",
         "domain": "Dominio",
-        "domain_quota_m": "Spazio totale dominio (MiB):",
-        "enc_method": "Metodo di criptazione",
+        "domain_matches_hostname": "Il dominio %s corrisponde al'hostname",		
+        "domain_quota_m": "Spazio totale dominio (MiB)",
+        "enc_method": "Metodo di crittografia",
         "exclude": "Escludi oggetti (regex)",
-        "full_name": "Nome completo:",
+        "full_name": "Nome completo",
+        "gal": "Global Address List",
+        "gal_info": "La GAL contiene tutti gli indirizzi del dominio e non può essere modificata da nessun utente. Le infomazioni sulla disponibilità di ogni utente non sono presenti in SOGo, se sono state disabilitate! <b>Riavvia SOGo per applicare le modifiche.</b>",
+        "generate": "crea",
+        "goto_ham": "Etichetta come <span class=\"text-success\"><b>ham</b></span>",
+        "goto_null": "Elimina silenziosamente il messaggio",
+        "goto_spam": "Etichetta come <span class=\"text-danger\"><b>spam</b></span>",   
         "hostname": "Hostname",
+        "inactive": "Inattivo",
         "kind": "Genere",
-        "mailbox_quota_m": "Spazio massimo per casella di posta (MiB):",
-        "mailbox_username": "Username (parte a sinistra della @):",
-        "max_aliases": "Numero massimo alias:",
-        "max_mailboxes": "Numero massimo caselle di posta:",
-        "mins_interval": "intervallo di Pooling (minuti)",
+        "mailbox_quota_def": "Spazio predefinito della casella di posta",
+        "mailbox_quota_m": "Spazio massimo per casella di posta (MiB)",
+        "mailbox_username": "Username (parte a sinistra della @)",
+        "max_aliases": "Numero massimo alias",
+        "max_mailboxes": "Numero massimo caselle di posta",
+        "mins_interval": "intervallo (minuti)",
         "multiple_bookings": "Prenotazioni multiple",
-        "password": "Password:",
-        "password_repeat": "Conferma password (riscrivi):",
+        "nexthop": "Hop successivo",
+        "password": "Password",
+        "password_repeat": "Conferma password (riscrivi)",
         "port": "Porta",
-        "post_domain_add": "Dovrai riavviare il servizio SOGo dopo aver aggiunto un nuovo dominio!",
+        "post_domain_add": "Il container di SOGo, \"sogo-mailcow\", deve essere riavviato dopo aver aggiunto un nuovo dominio!<br><br>Inoltre la configurazione dei DNS del dominio verrà riesaminata. Quando la configurazione dei DNS sarà attiva, riavvia \"acme-mailcow\" per generare automaticamente i certificati per il nuovo dominio (autoconfig.&lt;domain&gt;, autodiscover.&lt;domain&gt;).<br>Quest'ultimo passaggio è facoltativo, in quanto il sistema si aggiorna ogni 24 ore.",
+        "private_comment": "Commento privato",
+        "public_comment": "Commento pubblico",
         "quota_mb": "Spazio (MiB):",
         "relay_all": "Trasmettere a tutti i destinatari",
-        "relay_all_info": "<small>Se si sceglie di <b>non</b> inviare tutti i destinatari, è necessario aggiungere una cassetta postale (\"blind\") per ogni singolo destinatario a cui deve essere inoltrato.</small>",
+        "relay_all_info": "<small>Se si sceglie di <b>non</b> inviare a tutti i destinatari, è necessario aggiungere una casella di posta (\"blind\") per ogni singolo destinatario a cui deve essere inoltrato.</small>",
         "relay_domain": "Trasmetti questo dominio",
-        "select": "Perfavore seleziona...",
-        "select_domain": "Perfavore seleziona il dominio prima",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Puoi definire mappe di trasporto verso una destinazione a tua scelta per questo dominio. Se non viene impostata, si guarderà il record MX.",
+        "relay_unknown_only": "Inoltra solo caselle di posta inesistenti. I messaggi per gli indirizzi esistenti verranno consegnati localmente.",
+        "relayhost_wrapped_tls_info": "Please do <b>not</b> use TLS-wrapped ports (mostly used on port 465).<br>\r\nUse any non-wrapped port and issue STARTTLS. A TLS policy to enforce TLS can be created in \"TLS policy maps\".",
+        "select": "Si prega di selezionare...",
+        "select_domain": "Seleziona prima un dominio",
+        "sieve_desc": "Descrizione breve",
+        "sieve_type": "Tipologia di filtro",
+        "skipcrossduplicates": "Salta i messaggi duplicati tra le cartelle (precedenza al primo arrivato)",
+        "subscribeall": "Iscriviti a tutte le cartelle",
         "syncjob": "Aggiungi sincronizzazione",
         "syncjob_hint": "Ricordati che le password vanno salvate in testo semplice!",
-        "target_address": "Inoltra all'indirizzo:",
-        "target_address_info": "<small>Indirizzo e-mail completo/es (separati da virgole).</small>",
-        "target_domain": "Target dominio:",
-        "username": "Username"
+        "target_address": "Inoltra all'indirizzo",
+        "target_address_info": "<small>Indirizzo e-mail completo/i (separati da virgole).</small>",
+        "target_domain": "Dominio di destinazione",
+        "timeout1": "Timeout per la connessione all'host remoto",
+        "timeout2": "Timeout per la connessione all'host locale",
+        "username": "Username",
+        "validate": "Convalida",
+        "validation_success": "Convalidato con successo",
+        "xmpp": "Attiva XMPP per questo dominio",
+        "xmpp_access": "Accesso XMPP",
+        "xmpp_access_info": "XMPP deve essere abilitato per questo dominio.",
+        "xmpp_admin": "Amministratore XMPP",
+        "xmpp_admin_info": "<b>Attenzione:</b> Promuove un utente ad amministratore XMPP di questo dominio.",
+        "xmpp_info": "Questa funzione abiliterà la funzionalità di chat per questo dominio."																			
     },
     "admin": {
         "access": "Accedi",
         "action": "Azione",
+        "activate_api": "Attiva API",
+        "activate_send": "Attiva bottone di invio",
         "active": "Attiva",
+        "active_rspamd_settings_map": "Active settings map",
         "add": "Aggiungi",
+        "add_admin": "Aggiungi amministratore",
         "add_domain_admin": "Aggiungi amministratore di dominio",
         "add_forwarding_host": "Aggiungi host inoltro",
+        "add_relayhost": "Add sender-dependent transport",
+        "add_relayhost_hint": "Tieni presente che i dati di autenticazione, se presenti, verranno archiviati come testo semplice.",
+        "add_row": "Aggiungi riga",
+        "add_settings_rule": "Add settings rule",
+        "add_transport": "Aggiungi transport",
+        "add_transports_hint": "Tieni presente che i dati di autenticazione, se presenti, verranno archiviati come testo semplice.",
+        "additional_rows": " righe aggiuntive inserite",
         "admin": "Amministratore",
         "admin_details": "Modifica impostazioni amministratore",
         "admin_domains": "Assengazioni di dominio",
+        "admins": "Amministratori",
+        "admins_ldap": "Amministratori LDAP",
+        "advanced_settings": "Impostazioni avanzate",
+        "api_allow_from": "Allow API access from these IPs/CIDR network notations",
+        "api_info": "The API is a work in progress. The documentation can be found at <a href=\"/api\">/api</a>",
+        "api_key": "API key",
+        "api_skip_ip_check": "Skip IP check for API",
+        "app_links": "App links",
+        "app_name": "App name",
+        "apps_name": "\"mailcow Apps\" name",
+        "arrival_time": "Arrival time (server time)",
+        "authed_user": "Auth. user",
+        "ays": "Sei sicuro di voler procedere?",
+        "ban_list_info": "See a list of banned IPs below: <b>network (remaining ban time) - [actions]</b>.<br />IPs queued to be unbanned will be removed from the active ban list within a few seconds.<br />Red labels indicate active permanent bans by blacklisting.",
+        "change_logo": "Cambia logo",
         "configuration": "Configurazione",
+        "convert_html_to_text": "Convert HTML to plain text",
+        "credentials_transport_warning": "<b>Warning</b>: Adding a new transport map entry will update the credentials for all entries with a matching next hop column.",
+        "customer_id": "ID cliente",
+        "customize": "Personalizzare",
+        "delete_queue": "Elimina tutto",
+        "destination": "Destinazione",				 
         "dkim_add_key": "Aggiungi chiave ARC/DKIM",
-        "dkim_key_length": "DKIM key length (bits)",
-        "dkim_key_missing": "Key mancante",
-        "dkim_key_unused": "Key non usata",
-        "dkim_key_valid": "Key valida",
-        "dkim_keys": "chiave ARC/DKIM",
+        "dkim_domains_selector": "Selettore",
+        "dkim_domains_wo_keys": "Seleziona i domini senza chiavi",
+        "dkim_from": "Da",
+        "dkim_from_title": "Source domain to copy data from",
+        "dkim_key_length": "Lunghezza chiave DKIM (bits)",
+        "dkim_key_missing": "Chiave mancante",
+        "dkim_key_unused": "Chiave non usata",
+        "dkim_key_valid": "Chiave valida",
+        "dkim_keys": "Chiavi ARC/DKIM",
+        "dkim_overwrite_key": "Sovrascrivi la chiave DKIM esistente",
+        "dkim_private_key": "Chiave privata",
+        "dkim_to": "A",
+        "dkim_to_title": "Dominio/i di destinazione - verranno sovrascritti",
         "domain": "Dominio",
+        "domain_admin": "Amministratore di dominio",
         "domain_admins": "Amministratori di dominio",
+        "domain_s": "Dominio/i",
+        "duplicate": "Duplica",
+        "duplicate_dkim": "Duplica record DKIM",
         "edit": "Modifica",
         "empty": "Nessun risultato",
+        "excludes": "Esclude questi destinatari",
+        "f2b_ban_time": "Tempo di blocco (s)",
+        "f2b_blacklist": "Host/reti in blacklist",
+        "f2b_filter": "Filtri Regex",
+        "f2b_list_info": "Un host oppure una rete in blacklist, avrà sempre un peso maggiore rispetto ad una in whitelist. <b>L'aggiornamento della lista richiede alcuni secondi per la sua entrata in azione.</b>",
+        "f2b_max_attempts": "Tentativi massimi",
+        "f2b_netban_ipv4": "IPv4 subnet size to apply ban on (8-32)",
+        "f2b_netban_ipv6": "IPv6 subnet size to apply ban on (8-128)",
+        "f2b_parameters": "Parametri Fail2ban",
+        "f2b_regex_info": "Log presi in considerazione: SOGo, Postfix, Dovecot, PHP-FPM.",
+        "f2b_retry_window": "Retry window (s) for max. attempts",
+        "f2b_whitelist": "Host/reti in whitelist",
         "filter_table": "Tabella filtro",
+        "flush_queue": "Svuota la coda",
         "forwarding_hosts": "Inoltro degli host",
         "forwarding_hosts_add_hint": "È possibile specificare indirizzi IPv4 / IPv6, reti nella notazione CIDR, nomi host (che verranno risolti in indirizzi IP) o nomi di dominio (che verranno risolti agli indirizzi IP richiamando i record SPF o, in assenza, i record MX) .",
-        "forwarding_hosts_hint": "I messaggi in entrata sono accettati in maniera incondizionata da tutti gli host elencati qui. Questi host sono quindi non controllati contro DNSBL o sottoposti a greylisting. Spam ricevuti da loro non viene mai rifiutata e sempre archiviata nella cartella Junk. L'utilizzo più comune per questo è quello di specificare i server di posta elettronica su cui è stata impostata una regola che inoltra le email in arrivo al server mailcow.",
-        "host": "Hostname",
-        "loading": "Attendere...",
+        "forwarding_hosts_hint": "I messaggi in entrata sono accettati in maniera incondizionata da tutti gli host qui elencati. Questi host sono quindi non controllati tramite DNSBL o sottoposti a greylisting. Lo spam ricevuto da questi host non viene mai rifiutato, ma potrebbe essere archiviato nella cartella Posta indesiderata. L'utilizzo più comune è quello di specificare i server di posta elettronica su cui è stata impostata una regola che inoltra le email in arrivo al server mailcow.",
+        "from": "Da",
+        "generate": "generate",
+        "guid": "GUID - ID istanza univoco",
+        "guid_and_license": "GUID & Licenza",
+        "hash_remove_info": "Removing a ratelimit hash (if still existing) will reset its counter completely.<br>\r\n  Each hash is indicated by an individual color.",
+        "help_text": "Sovrascrivi il testo d'aiuto nella maschera di login (HTML consentito)",
+		"host": "Hostname",
+        "html": "HTML",
+        "import": "Importa",
+        "import_private_key": "Importa chiave privata",
+        "in_use_by": "In uso da",
+        "inactive": "Inattivo",
+        "include_exclude": "Includi/Escludi",
+        "include_exclude_info": "Di default - se nessuna voce viene selezionata - <b>tutte le caselle di posta</b> risultano attivate",
+        "includes": "Includi questi destinatari",
+        "is_mx_based": "Basato sul record MX",
+        "last_applied": "Last applied",
+        "license_info": "Non è necessario essere in possesso di una licenza ma aiuta gli sviluppatori a far crescere il prodotto.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Registra qui il tuo GUID </a> oppure <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Support order\">acquista il supporto per la tua installazione di mailcow.</a>",
+        "link": "Link",
+        "loading": "Caricamento in corso...",
+        "login_time": "Ora di accesso",
+        "logo_info": "La tua immagine verrà ridimensionata a 40px di altezza, quando verrà usata nella barra di navigazione in alto, ed ad una larghezza massima di 250px nella schermata iniziale. È altamente consigliato l'utilizzo di un'immagine modulabile.",
+        "lookup_mx": "Destination is a regular expression to match against MX name (<code>.*google\\.com</code> to route all mail targeted to a MX ending in google.com over this hop)",
+        "main_name": "Nome \"mailcow UI\"",
+        "merged_vars_hint": "Greyed out rows were merged from <code>vars.(local.)inc.php</code> and cannot be modified.",
+        "message": "Messaggio",
+        "message_size": "Dimensione mesaggio",
+        "nexthop": "Next hop",
+        "no": "&#10005;",
+        "no_active_bans": "Nessun ban attivo",
+        "no_new_rows": "Nessuna ulteriore riga disponibile",										   
         "no_record": "Nessun risultato",
+        "oauth2_client_id": "ID cliente",
+        "oauth2_client_secret": "Client secret",
+        "oauth2_info": "The OAuth2 implementation supports the grant type \"Authorization Code\" and issues refresh tokens.<br>\r\nThe server also automatically issues new refresh tokens, after a refresh token has been used.<br><br>\r\n&#8226; The default scope is <i>profile</i>. Only mailbox users can be authenticated against OAuth2. If the scope parameter is omitted, it falls back to <i>profile</i>.<br>\r\n&#8226; The <i>state</i> parameter is required to be sent by the client as part of the authorize request.<br><br>\r\nPaths for requests to the OAuth2 API: <br>\r\n<ul>\r\n  <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nRegenerating the client secret will not expire existing authorization codes, but they will fail to renew their token.<br><br>\r\nRevoking client tokens will cause immediate termination of all active sessions. All clients need to re-authenticate.",
+        "oauth2_redirect_uri": "URI di reindirizzamento",
+        "oauth2_renew_secret": "Generate new client secret",
+        "oauth2_revoke_tokens": "Revoca tutti i token del client",
+        "optional": "facoltativo",
         "password": "Password",
-        "password_repeat": "Conferma password(ripeti)",
+        "password_length": "Lunghezza password",
+        "password_policy": "Password policy",
+        "password_policy_chars": "Deve contenere almeno un carattere alfabetico",
+        "password_policy_length": "La lunghezza minima della password è %d caratteri",
+        "password_policy_lowerupper": "Deve contenere caratteri minuscoli e maiuscoli",
+        "password_policy_numbers": "Deve contenere almeno un numero",
+        "password_policy_special_chars": "Deve contenere almeno un carattere speciale",
+        "password_repeat": "Conferma password (riscrivi)",
+        "priority": "Priorità",
+        "private_key": "Chiave privata",
+        "quarantine": "Quarantena",
+        "quarantine_bcc": "Invia una copia di tutte le notifiche (CCN) a questo destinatario:<br><small>Lascia vuoto per disabilitare la funzione. <b>Messaggi non firmati e non controllati. Dovrebbero essere consegnati solo localmente.</b></small>",
+        "quarantine_exclude_domains": "Escludi domini e alias di dominio",
+        "quarantine_max_age": "Età massima in giorni<br><small>Il valore deve essere maggiore o uguale ad 1 giorno.</small>",
+        "quarantine_max_score": "Ignora la notifica se il punteggio spam di una mail è superiore a questo valore:<br><small>Di default è 9999.0</small>",
+        "quarantine_max_size": "Dimensione massima in MiB (gli elementi più grandi vengono scartati):<br><small>0 <b>non</b> significa illimitato.</small>",
+        "quarantine_notification_html": "Modello e-mail di notifica:<br><small>Lascia vuoto per utilizzare il modello predefinito.</small>",
+        "quarantine_notification_sender": "Mittente e-mail di notifica",
+        "quarantine_notification_subject": "Oggetto e-mail di notifica",
+        "quarantine_redirect": "<b>Reindirizza tutte le notifiche</b> a questo destinatario:<br><small>Lascia vuoto per disabilitare la funzione. <b>Messaggi non firmati e non controllati. Dovrebbero essere consegnati solo localmente.</b></small>",
+        "quarantine_release_format": "Format of released items",
+        "quarantine_release_format_att": "Come allegato",
+        "quarantine_release_format_raw": "Originale non modificato",
+        "quarantine_retention_size": "Retention per casella di posta:<br><small>0 indica <b>inattivo</b>.</small>",
+        "queue_ays": "Conferma di voler eliminare tutti gli elementi dalla coda corrente.",
+        "queue_deliver_mail": "Consegna",
+        "queue_hold_mail": "Trattieni",
+        "queue_manager": "Gestore code",
+        "queue_show_message": "Visualizza messaggio",
+        "queue_unban": "queue unban",
+        "queue_unhold_mail": "Rilascia",
+        "quota_notification_html": "Modello e-mail di notifica:<br><small>Lascia vuoto per utilizzare il modello predefinito.</small>",
+        "quota_notification_sender": "Mittente e-mail di notifica",
+        "quota_notification_subject": "Oggetto e-mail di notifica",
+        "quota_notifications": "Notifiche sulle quote",
+        "quota_notifications_info": "Le notifiche di spazio vengono inviate agli utenti la cui capienza della casella di posta supera l'80% oppure il 95%.",
+        "quota_notifications_vars": "{{percent}} è lo spazio attualmente utilizzato dell'utente<br>{{username}} è il nome della casella di posta",
         "r_active": "Restrizioni attive",
         "r_inactive": "Restrizioni inattive",
-        "r_info": "Gli elementi disabilitati nell'elenco delle restrizioni attive non sono conosciute come restrizioni valide per la posta e non possono essere spostate. Le restrizioni sconosciute verranno comunque impostate in ordine di aspetto. <br />Puoi aggiungere nuovi elementi in <code>inc/vars.local.inc.php</code> per poterli attivare.",
+        "r_info": "Gli elementi disabilitati nell'elenco delle restrizioni attive non sono conosciute come restrizioni valide per la posta e non possono essere spostate. Le restrizioni sconosciute verranno comunque impostate in ordine di aspetto.<br />Puoi aggiungere nuovi elementi in <code>inc/vars.local.inc.php</code> per poterli attivare.",
+        "rate_name": "Rate name",
+        "recipients": "Destinatari",
+        "refresh": "Aggiorna",
+        "regen_api_key": "Rinnova la chiave delle API",
+        "regex_maps": "Regex maps",
+        "relay_from": "\"Da:\" indirizzi",
+        "relay_rcpt": "\"A:\" indirizzi",
+        "relay_run": "Esegui test",
+        "relayhosts": "Sender-dependent transports",
+        "relayhosts_hint": "Define sender-dependent transports to be able to select them in a domains configuration dialog.<br>\r\n  The transport service is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported. A users individual outbound TLS policy setting is taken into account.<br>\r\n  Affects selected domains including alias domains.",
         "remove": "Rimuovi",
+        "remove_row": "Elimina riga",
+        "reset_default": "Riporta alle condizioni di default",
+        "reset_limit": "Remove hash",
+        "routing": "Routing",
+        "rsetting_add_rule": "Aggiungi regola",
+        "rsetting_content": "Contenuto della regola",
+        "rsetting_desc": "Descrizione breve",
+        "rsetting_no_selection": "Seleziona una regola",
+        "rsetting_none": "Nessuna regola presente",
+        "rsettings_insert_preset": "Insert example preset \"%s\"",
+        "rsettings_preset_1": "Disable all but DKIM and rate limit for authenticated users",
+        "rsettings_preset_2": "I postmaster vogliono lo spam",
+        "rsettings_preset_3": "Consenti solo mittenti specifici per una casella di posta (ad esempio: utilizzo solo come casella di posta interna)",
+        "rspamd-com_settings": "A setting name will be auto-generated, please see the example presets below. For more details see <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
+        "rspamd_global_filters": "Global filter maps",
+        "rspamd_global_filters_agree": "Starò attento!",
+        "rspamd_global_filters_info": "Global filter maps contain different kind of global black and whitelists.",
+        "rspamd_global_filters_regex": "Their names explain their purpose. All content must contain valid regular expression in the format of \"/pattern/options\" (e.g. <code>/.+@domain\\.tld/i</code>).<br>\r\n  Although rudimentary checks are being executed on each line of regex, Rspamds functionality can be broken, if it fails to read the syntax correctly.<br>\r\n  Rspamd will try to read the map content when changed. If you experience problems, <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">restart Rspamd</a> to enforce a map reload.<br>Blacklisted elements are excluded from quarantine.",
+        "rspamd_settings_map": "Rspamd settings map",
+        "sal_level": "Moo level",
         "save": "Salva modifiche",
         "search_domain_da": "Ricerca domini",
+        "send": "Invia",
+        "sender": "Mittente",
+        "service": "Servizio",
+        "service_id": "ID del servizio",
+        "source": "Source",
         "spamfilter": "Filtri spam",
+        "subject": "Oggetto",
+        "success": "Successo",
+        "sys_mails": "System mails",
+        "text": "Testo",
+        "time": "Orario",
+        "title": "Titolo",
+        "title_name": "Titolo del sito \"mailcow UI\"",
+        "to_top": "Torna in cima",
+        "transport_dest_format": "Regex or syntax: example.org, .example.org, *, box@example.org (multiple values can be comma-separated)",
+        "transport_maps": "Transport Maps",
+        "transport_test_rcpt_info": "&#8226; Use null@hosted.mailcow.de to test relaying to a foreign destination.",
+        "transports_hint": "&#8226; A transport map entry <b>overrules</b> a sender-dependent transport map</b>.<br>\r\n&#8226; MX-based transports are preferably used.<br>\r\n&#8226; Outbound TLS policy settings per-user are ignored and can only be enforced by TLS policy map entries.<br>\r\n&#8226; The transport service for defined transports is always \"smtp:\" and will therefore try TLS when offered. Wrapped TLS (SMTPS) is not supported.<br>\r\n&#8226; Addresses matching \"/localhost$/\" will always be transported via \"local:\", therefore a \"*\" destination will not apply to those addresses.<br>\r\n&#8226; To determine credentials for an exemplary next hop \"[host]:25\", Postfix <b>always</b> queries for \"host\" before searching for \"[host]:25\". This behavior makes it impossible to use \"host\" and \"[host]:25\" at the same time.",
+        "ui_footer": "Footer (HTML consentito)",
+        "ui_header_announcement": "Annunci",
+        "ui_header_announcement_active": "Attiva annuncio",
+        "ui_header_announcement_content": "Testo (HTML consentito)",
+        "ui_header_announcement_help": "L'annuncio è visibile per tutti gli utenti che hanno effettuato l'accesso e nella schermata di accesso dell'interfaccia utente.",
+        "ui_header_announcement_select": "Seleziona il tipo di annuncio",
+        "ui_header_announcement_type": "Tipo",
+        "ui_header_announcement_type_danger": "Molto importante",
+        "ui_header_announcement_type_info": "Info",
+        "ui_header_announcement_type_warning": "Importante",
+        "ui_texts": "UI labels and texts",
+        "unban_pending": "unban pending",
         "unchanged_if_empty": "Se immutato lasciare vuoto",
-        "username": "Username"
+        "upload": "Upload",				   
+        "username": "Username",
+        "validate_license_now": "Validate GUID against license server",
+        "verify": "Verifica",
+        "yes": "&#10003;"
     },
     "danger": {
         "access_denied": "Accesso negato o form di login non corretto",
-        "alias_domain_invalid": "Alias domain non è valido",
-        "alias_empty": "L'indirizzo di alias non può restare vuoto",
-        "alias_goto_identical": "Alias and goto address must not be identical",
-        "alias_invalid": "L'indirizzo alias non è valido",
-        "aliasd_targetd_identical": "Alias domain must not be equal to target domain",
-        "aliases_in_use": "Il numero massimo di alias must deve essere maggiore o uguale a %d",
+        "alias_domain_invalid": "L'alias di dominio %s non è valido",
+        "alias_empty": "L'indirizzo di alias non può essere vuoto",
+        "alias_goto_identical": "L'alias e l'indirizzo di destinazione non possono essere identici",
+        "alias_invalid": "L'indirizzo alias %s non è valido",
+        "aliasd_targetd_identical": "L'alias di dominio non può essere identico al dominio di destinazione",
+        "aliases_in_use": "Il numero massimo di alias deve essere maggiore o uguale a %d",
+        "app_name_empty": "Il nome dell'app non può essere vuoto",
+        "app_passwd_id_invalid": "App password ID %s invalid",
+        "bcc_empty": "BCC destination cannot be empty",
+        "bcc_exists": "A BCC map %s exists for type %s",
+        "bcc_must_be_email": "BCC destination %s is not a valid email address",
+        "comment_too_long": "Commento troppo lungo, 160 caratteri massimi consentiti",
+        "defquota_empty": "Lo spazio predefinito di una casella di posta non può essere 0.",
         "description_invalid": "La descrizione della risorsa non è valido",
-        "dkim_domain_or_sel_invalid": "DKIM domain or selector invalid",
-        "domain_exists": "Domain %s esiste già",
+        "dkim_domain_or_sel_exists": "Esiste già una chiave DKIM per \"%s\" e non verrà quindi sovrascritta",
+        "dkim_domain_or_sel_invalid": "Dominio DKIM o selettore errato: %s",
+        "domain_cannot_match_hostname": "Il dominio non può corrispondere all'hostname",
+        "domain_exists": "Dominio %s esiste già",
         "domain_invalid": "Il nome di dominio non è valido",
         "domain_not_empty": "Non posso rimuovere domini in non vuoti",
         "domain_not_found": "Dominio non trovato.",
-        "domain_quota_m_in_use": "La quota di dominio deve essere maggiore o uguale a %s MiB",
-        "goto_empty": "L'indirizzo di destinazione non può restare vuoto",
-        "goto_invalid": "Goto address non è valido",
+        "domain_quota_m_in_use": "Lo spazio del dominio deve essere maggiore o uguale a %s MiB",
+        "extra_acl_invalid": "External sender address \"%s\" is invalid",
+        "extra_acl_invalid_domain": "External sender \"%s\" uses an invalid domain",
+        "fido2_verification_failed": "FIDO2 verification failed: %s",
+        "file_open_error": "File cannot be opened for writing",
+        "filter_type": "Wrong filter type",
+        "from_invalid": "Il mittente non può essere vuoto",
+        "global_filter_write_error": "Could not write filter file: %s",
+        "global_map_invalid": "Global map ID %s invalid",
+        "global_map_write_error": "Could not write global map ID %s: %s",
+		"goto_empty": "L'indirizzo di destinazione non può essere vuoto",
+        "goto_invalid": "L'indirizzo di destinazione %s non è valido",
+        "ham_learn_error": "Ham learn error: %s",
+        "imagick_exception": "Error: Imagick exception while reading image",
+        "img_invalid": "Cannot validate image file",
+        "img_tmp_missing": "Cannot validate image file: Temporary file not found",
+        "invalid_bcc_map_type": "Invalid BCC map type",
+        "invalid_destination": "Destination format \"%s\" is invalid",
+        "invalid_filter_type": "Invalid filter type",
+        "invalid_host": "Invalid host specified: %s",
+        "invalid_mime_type": "Invalid mime type",
+        "invalid_nexthop": "Next hop format is invalid",
+        "invalid_nexthop_authenticated": "Next hop exists with different credentials, please update the existing credentials for this next hop first.",
+        "invalid_recipient_map_new": "Invalid new recipient specified: %s",
+        "invalid_recipient_map_old": "Invalid original recipient specified: %s",
+        "ip_list_empty": "L'elenco degli IP consentiti non può essere vuoto",
         "is_alias": "%s è già presente come alias",
-        "is_alias_or_mailbox": "%s è già presente come alias o casella",
+        "is_alias_or_mailbox": "%s è già presente come alias, casella di posta oppure come alias di dominio",
         "is_spam_alias": "%s è già presente come indirizzo spam alias",
         "last_key": "L'ultima chiave non può essere rimossa",
         "login_failed": "Login fallito",
+        "mailbox_defquota_exceeds_mailbox_maxquota": "Default quota exceeds max quota limit",
         "mailbox_invalid": "Il nome della casella non è valido",
-        "mailbox_quota_exceeded": "La quota ha oltrepassato il limite di dominio (max. %d MiB)",
-        "mailbox_quota_exceeds_domain_quota": "La quota massima eccede la quota di dominio",
+        "mailbox_quota_exceeded": "Lo spazio assegnato oltrepassa il limite del dominio (max. %d MiB)",
+        "mailbox_quota_exceeds_domain_quota": "Lo spazio massimo supera la spazio del dominio",
         "mailbox_quota_left_exceeded": "Non c'è abbastanza spazio libero (space left: %d MiB)",
-        "mailboxes_in_use": "La quota della casella massima deve essere maggiore o uguale a %d",
+        "mailboxes_in_use": "Lo spazio massimo della casella deve essere maggiore o uguale a %d",
+        "malformed_username": "Malformed username",
+        "map_content_empty": "Map content cannot be empty",
         "max_alias_exceeded": "Numero massimo di alias superato",
         "max_mailbox_exceeded": "Numero massimo di caselle superato (%d of %d)",
-        "max_quota_in_use": "La quota della casella deve essere maggiore o uguale a %d MiB",
-        "maxquota_empty": "Max. quota per mailbox must not be 0.",
-        "object_exists": "Object %s esiste già",
+        "max_quota_in_use": "Lo spazio della casella deve essere maggiore o uguale a %d MiB",
+        "maxquota_empty": "Lo spazio massimo della casella di posta non può essere 0.",
+        "mysql_error": "Errore MySQL: %s",
+        "network_host_invalid": "Rete o host non valido: %s",
+        "next_hop_interferes": "%s interferes with nexthop %s",
+        "next_hop_interferes_any": "An existing next hop interferes with %s",
+        "nginx_reload_failed": "Nginx reload failed: %s",
+        "no_user_defined": "No user defined",
+        "object_exists": "L'oggetto %s esiste già",
         "object_is_not_numeric": "Il valore %s non è numerico",
         "password_complexity": "La password non soddisfa le regole di sicurezza",
         "password_empty": "Il campo password non può essere vuoto",
         "password_mismatch": "La password di conferma non corrisponde",
         "policy_list_from_exists": "Un elemento con lo stesso nome è già presente",
         "policy_list_from_invalid": "L'elemento ha un formato non valido",
-        "quota_not_0_not_numeric": "La quota deve essere numerica e >= 0",
+        "private_key_error": "Private key error: %s",
+        "pushover_credentials_missing": "Pushover token and or key missing",
+        "pushover_key": "Pushover key has a wrong format",
+        "pushover_token": "Pushover token has a wrong format",
+        "quota_not_0_not_numeric": "Lo spazio deve essere numerico e >= 0",
+        "recipient_map_entry_exists": "A Recipient map entry \"%s\" exists",
+        "redis_error": "Redis error: %s",
+        "relayhost_invalid": "Map entry %s is invalid",
+        "release_send_failed": "Message could not be released: %s",
+        "reset_f2b_regex": "Regex filter could not be reset in time, please try again or wait a few more seconds and reload the website.",
         "resource_invalid": "Il nome della risorsa non è valido",
+        "rl_timeframe": "Rate limit time frame is incorrect",
+        "rspamd_ui_pw_length": "Rspamd UI password should be at least 6 chars long",
+        "script_empty": "Script cannot be empty",
         "sender_acl_invalid": "Il valore di Sender ACL non è valido",
+        "set_acl_failed": "Failed to set ACL",
+        "settings_map_invalid": "Settings map ID %s invalid",
+        "sieve_error": "Sieve parser error: %s",
+        "spam_learn_error": "Spam learn error: %s",
+        "subject_empty": "Subject must not be empty",
         "target_domain_invalid": "Goto domain non è valido",
         "targetd_not_found": "Il target del dominio non è stato trovato",
-        "username_invalid": "Username non può essere utilizzato",
-        "validity_missing": "Assegnare un periodo di validità"
+        "targetd_relay_domain": "Target domain %s is a relay domain",
+        "temp_error": "Temporary error",
+        "text_empty": "Text must not be empty",
+        "tfa_token_invalid": "TFA token invalid",
+        "tls_policy_map_dest_invalid": "Policy destination is invalid",
+        "tls_policy_map_entry_exists": "A TLS policy map entry \"%s\" exists",
+        "tls_policy_map_parameter_invalid": "Policy parameter is invalid",
+        "totp_verification_failed": "TOTP verification failed",
+        "transport_dest_exists": "Transport destination \"%s\" exists",
+        "u2f_verification_failed": "U2F verification failed: %s",
+        "unknown": "An unknown error occurred",
+        "unknown_tfa_method": "Unknown TFA method",
+        "unlimited_quota_acl": "Unlimited quota prohibited by ACL",
+        "username_invalid": "Username %s non può essere utilizzato",
+        "validity_missing": "Assegnare un periodo di validità",
+        "value_missing": "Please provide all values",
+        "xmpp_map_write_error": "Could not write XMPP map: %s",
+        "xmpp_reload_failed": "XMPP could not be reloaded",
+        "xmpp_restart_failed": "XMPP could not be restarted",
+        "yotp_verification_failed": "Yubico OTP verification failed: %s"
+    },
+    "debug": {
+        "chart_this_server": "Grafico (questo server)",
+        "containers_info": "Container information",
+        "disk_usage": "Uso del disco",
+        "docs": "Docs",
+        "external_logs": "External logs",
+        "history_all_servers": "History (all servers)",
+        "in_memory_logs": "In-memory logs",
+        "jvm_memory_solr": "JVM memory usage",
+        "last_modified": "Ultima modifica",
+        "log_info": "<p>mailcow <b>in-memory logs</b> are collected in Redis lists and trimmed to LOG_LINES (%d) every minute to reduce hammering.\r\n  <br>In-memory logs are not meant to be persistent. All applications that log in-memory, also log to the Docker daemon and therefore to the default logging driver.\r\n  <br>The in-memory log type should be used for debugging minor issues with containers.</p>\r\n  <p><b>External logs</b> are collected via API of the given application.</p>\r\n  <p><b>Static logs</b> are mostly activity logs, that are not logged to the Dockerd but still need to be persistent (except for API logs).</p>",
+        "login_time": "Time",
+        "logs": "Logs",
+        "online_users": "Users online",
+        "restart_container": "Riavvio",
+        "service": "Servizio",
+        "size": "Size",
+        "solr_dead": "Solr is starting, disabled or died.",
+        "solr_status": "Stato Solr",
+        "started_at": "Started at",
+        "started_on": "Started on",
+        "static_logs": "Static logs",
+        "success": "Successo",
+        "system_containers": "System & Containers",
+        "uptime": "Tempo di attività",
+        "username": "Username",
+        "xmpp_dead": "XMPP is starting, disabled or died.",
+        "xmpp_status": "Stato XMPP"
+    },
+    "diagnostics": {
+        "cname_from_a": "Valore letto dal record A/AAAA. Questo è supportato finché il record punta alla risorsa corretta.",
+        "dns_records": "Record DNS",
+        "dns_records_24hours": "Tieni presente che le modifiche apportate ai record DNS potrebbero richiedere fino a 24 ore per poter essere visualizzate correttamente in questa pagina. Tutto ciò è da intendersi come un modo per voi di vedere come configurare i record DNS e per controllare se tutti i record DNS sono stati inseriti correttamente.",
+        "dns_records_data": "Dati corretti",
+        "dns_records_docs": "Si prega di consultare anche <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">la documentazione</a>.",
+        "dns_records_name": "Nome",
+        "dns_records_status": "Stato attuale",
+        "dns_records_type": "Tipo",
+        "optional": "Questo record è facoltativo."
     },
     "edit": {
         "active": "Attivo",
+        "admin": "Modifica amministratore",
+        "advanced_settings": "Impostazioni avanzate",
         "alias": "Modifica alias",
+        "allow_from_smtp": "Consenti solo a questi IP di utilizzare <b>SMTP</b>",
+        "allow_from_smtp_info": "Leave empty to allow all senders.<br>IPv4/IPv6 addresses and networks.",
+        "allowed_protocols": "Protocolli consentiti",
+        "app_name": "App name",
+        "app_passwd": "App password",
+        "automap": "Try to automap folders (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
         "backup_mx_options": "Backup MX options",
+        "bcc_dest_format": "BCC destination must be a single valid email address.",
+        "client_id": "Client ID",
+        "client_secret": "Client secret",
+        "comment_info": "A private comment is not visible to the user, while a public comment is shown as tooltip when hovering it in a user's overview",
         "delete1": "Elimina dalla sorgente al termine",
+        "delete2": "Delete messages on destination that are not on source",
         "delete2duplicates": "Elimina duplicati nella destinazione",
+        "delete_ays": "Please confirm the deletion process.",
         "description": "Descrizione",
+        "disable_login": "Disabilita l'accesso (la posta in arrivo viene correttamente recapitata)",
         "domain": "Modifica dominio",
         "domain_admin": "Modifica amministratore dominio",
-        "domain_quota": "Spazio Dominio",
+        "domain_quota": "Spazio del dominio",
         "domains": "Dominio",
-        "dont_check_sender_acl": "Disattiva il controllo del mittente per il dominio %s + alias domains",
-        "edit_alias_domain": "Modifica Alias dominio",
-        "encryption": "Criptazione",
+        "dont_check_sender_acl": "Disattiva il controllo del mittente per il dominio %s + alias di dominio",
+        "edit_alias_domain": "Modifica alias di dominio",
+        "encryption": "Crittografia",
         "exclude": "Escludi oggetti (regex)",
+        "extended_sender_acl": "External sender addresses",
+        "extended_sender_acl_info": "A DKIM domain key should be imported, if available.<br>\r\n  Remember to add this server to the corresponding SPF TXT record.<br>\r\n  Whenever a domain or alias domain is added to this server, that overlaps with an external address, the external address is removed.<br>\r\n  Use @domain.tld to allow to send as *@domain.tld.",
+        "force_pw_update": "Force password update at next login",
+        "force_pw_update_info": "Questo utente potrà accedere solo a %s.",
         "full_name": "Nome completo",
-        "host": "Host",
+        "gal": "Global Address List",
+        "gal_info": "The GAL contains all objects of a domain and cannot be edited by any user. Free/busy information in SOGo is missing, if disabled! <b>Restart SOGo to apply changes.</b>",
+        "generate": "generate",
+        "grant_types": "Grant types",
         "hostname": "Hostname",
+        "inactive": "Inattivo",
         "kind": "Genere",
+        "lookup_mx": "Destination is a regular expression to match against MX name (<code>.*google\\.com</code> to route all mail targeted to a MX ending in google.com over this hop)",
         "mailbox": "Modifica casella di posta",
+        "mailbox_quota_def": "Default mailbox quota",
+        "mailbox_relayhost_info": "Applied to the mailbox and direct aliases only, does override a domain relayhost.",
         "max_aliases": "Numero massimo alias",
         "max_mailboxes": "Caselle di posta massime",
         "max_quota": "Massimo spazio per casella (MiB)",
-        "maxage": "Massima età dei messaggi che verranno scaricati dal server remoto<br /><small>(0 = ignorà età)</small>",
+        "maxage": "Massima età dei messaggi che verranno scaricati dal server remoto<br /><small>(0 = ignora età)</small>",
+        "maxbytespersecond": "Max. bytes per second <br><small>(0 = unlimited)</small>",
+        "mbox_rl_info": "This rate limit is applied on the SASL login name, it matches any \"from\" address used by the logged-in user. A mailbox rate limit overrides a domain-wide rate limit.",
         "mins_interval": "Intervallo (min)",
         "multiple_bookings": "Prenotazioni multiple",
+        "nexthop": "Next hop",
         "password": "Password",
-        "password_repeat": "Conferma password (riscrivila)",
+        "password_repeat": "Conferma password (riscrivi)",
         "previous": "Pagina precedente",
+        "private_comment": "Commento privato",
+        "public_comment": "Commento pubblico",
+        "pushover_evaluate_x_prio": "Escalate high priority mail [<code>X-Priority: 1</code>]",
+        "pushover_info": "Push notification settings will apply to all clean (non-spam) mail delivered to <b>%s</b> including aliases (shared, non-shared, tagged).",
+        "pushover_only_x_prio": "Only consider high priority mail [<code>X-Priority: 1</code>]",
+        "pushover_sender_array": "Only consider the following sender email addresses <small>(comma-separated)</small>",
+        "pushover_sender_regex": "Consider the following sender regex",
+        "pushover_text": "Notification text",
+        "pushover_title": "Notification title",
+        "pushover_vars": "When no sender filter is defined, all mails will be considered.<br>Regex filters as well as exact sender checks can be defined individually and will be considered sequentially. They do not depend on each other.<br>Useable variables for text and title (please take note of data protection policies)",
+        "pushover_verify": "Verify credentials",
         "quota_mb": "Spazio (MiB)",
+        "quota_warning_bcc": "Quota warning BCC",
+        "quota_warning_bcc_info": "Warnings will be sent as separate copies to the following recipients. The subject will be suffixed by the corresponding username in brackets, for example: <code>Quota warning (user@example.com)</code>.",
+        "ratelimit": "Rate limit",
+        "redirect_uri": "Redirect/Callback URL",								
         "relay_all": "Relay tutti i destinatari",
-        "relay_all_info": "<small>Se si sceglie di <b>non</b> inviare tutti i destinatari, è necessario aggiungere una cassetta postale (\"blind\") per ogni singolo destinatario a cui deve essere inoltrato.</small>",
+        "relay_all_info": "<small>Se si sceglie di <b>non</b> inviare a tutti i destinatari, è necessario aggiungere una casella di posta (\"blind\") per ogni singolo destinatario a cui deve essere inoltrato.</small>",
         "relay_domain": "Relay dominio",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> You can define transport maps for a custom destination for this domain. If not set, a MX lookup will be made.",
+        "relay_unknown_only": "Relay non-existing mailboxes only. Existing mailboxes will be delivered locally.",
+        "relayhost": "Sender-dependent transports",
         "remove": "Rimuovi",
         "resource": "Risorsa",
         "save": "Salva modifiche",
+        "scope": "Scope",
         "sender_acl": "Consenti di inviare come",
-        "source": "Sorgente",
-        "subfolder2": "Sincronizza in una sottocartella<br /><small>(vuoto = non sincronizzare in sottocartella)</small>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Sender check is disabled</span>",
+        "sender_acl_info": "If mailbox user A is allowed to send as mailbox user B, the sender address is not automatically displayed as selectable \"from\" field in SOGo.<br>\r\n  Mailbox user B needs to create a delegation in SOGo to allow mailbox user A to select their address as sender. To delegate a mailbox in SOGo, use the menu (three dots) to the right of your mailbox name in the upper left while in mail view. This behaviour does not apply to alias addresses.",
+        "sieve_desc": "Short description",
+        "sieve_type": "Filter type",
+        "skipcrossduplicates": "Skip duplicate messages across folders (first come, first serve)",
+        "sogo_access": "Grant access to SOGo",
+        "sogo_access_info": "Grant or permit access to SOGo. This setting does neither affect access to all other services nor does it delete or change a user's existing SOGo profile.",
+        "sogo_visible": "Alias is visible in SOGo",
+        "sogo_visible_info": "This option only affects objects, that can be displayed in SOGo (shared or non-shared alias addresses pointing to at least one local mailbox). If hidden, an alias will not appear as selectable sender in SOGo.",
+        "spam_alias": "Create or change time limited alias addresses",
+        "spam_filter": "Spam filter",
+        "spam_policy": "Add or remove items to white-/blacklist",
+        "spam_score": "Set a custom spam score",
+        "subfolder2": "Sincronizza in una sottocartella<br /><small>(vuoto = non sincronizzare in sottocartella)</small>",		
         "syncjob": "Modifica sincronizzazione",
-        "target_address": "Vai all'indirizzo/es <small>(comma-separated)</small>",
+        "target_address": "Vai all'indirizzo/i <small>(separato da virgola)</small>",
         "target_domain": "Target dominio",
+        "timeout1": "Timeout for connection to remote host",
+        "timeout2": "Timeout for connection to local host",
         "title": "Modifica oggetto",
         "unchanged_if_empty": "Se immutato lasciare vuoto",
-        "username": "Username"
+        "username": "Username",
+        "validate_save": "Convalida e salva",
+        "xmpp": "Activate XMPP for this domain",
+        "xmpp_access": "XMPP access",
+        "xmpp_access_info": "XMPP must be enabled for this domain.",
+        "xmpp_admin": "XMPP administrator",
+        "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_example_jid": "<b>Example JID</b> (login with mailbox password)",
+        "xmpp_info": "This function will enable chat functionality for this domain.",
+        "xmpp_prefix": "XMPP prefix for domain (\"im\" to use <b>im</b>.example.org)",
+        "xmpp_prefix_info": "To request certificates for XMPP, two CNAME DNS records should point from <b>im</b>.example.org as well as <b>*.im</b>.example.org to <b>%s</b>. Please also run the DNS check for this domain after enabling XMPP."
+    },
+    "fido2": {
+        "confirm": "Confirm",
+        "fido2_auth": "Login with FIDO2",
+        "fido2_success": "Device successfully registered",
+        "fido2_validation_failed": "Validation failed",
+        "fn": "Friendly name",
+        "known_ids": "Known IDs",
+        "none": "Disabled",
+        "register_status": "Registration status",
+        "rename": "Rename",
+        "set_fido2": "Register FIDO2 device",
+        "set_fn": "Set friendly name",
+        "start_fido2_validation": "Start FIDO2 validation"
     },
     "footer": {
         "cancel": "Annulla",
         "confirm_delete": "Conferma eliminazione",
         "delete_now": "Elimina ora",
         "delete_these_items": "Sicuro di voler eliminare gli oggetti selezionati?",
-        "loading": "Attendere...",
+        "hibp_nok": "Matched! This is a potentially dangerous password!",
+        "hibp_ok": "Nessuna corrispondenza trovata.",
+        "loading": "Caricamento in corso...",
+        "restart_container": "Riavvia il container",
+        "restart_container_info": "<b>Importante:</b> Il completamento di un normale riavvio potrebbe richiedere diversi minuti, ti consigliamo di attendere.",
         "restart_now": "Riavvia adesso",
-        "restart_sogo": "Riavvia SOGo",
-        "restart_sogo_info": "Some tasks, e.g. adding a domain, require you to restart SOGo to catch changes made in the mailcow UI.<br /><br /><b>Important:</b> A graceful restart may take a while to complete, please wait for it to finish."
+        "restarting_container": "Riavvia il container, potrebbe richiedere diversi minuti"
     },
     "header": {
         "administration": "Amministrazione",
+        "apps": "App",
+        "debug": "Informazioni di sistema",
         "mailboxes": "Caselle",
         "mailcow_settings": "Configurazione",
+        "quarantine": "Quarantena",
+        "restart_netfilter": "Riavvia netfilter",
         "restart_sogo": "Riavvia SOGo",
         "user_settings": "Impostazioni utente"
     },
     "info": {
-        "no_action": "Azione non applicabile"
+        "awaiting_tfa_confirmation": "In attesa di conferma TFA",
+        "no_action": "Azione non applicabile",
+        "session_expires": "La tua sessione scadrà tra 15 secondi"
     },
     "login": {
         "delayed": "L'accesso è stato ritardato di %s secondi.",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "login": "Login",
+        "mobileconfig_info": "Please login as mailbox user to download the requested Apple connection profile.",
+        "other_logins": "Key login",
         "password": "Password",
         "username": "Username"
     },
@@ -207,111 +686,321 @@
         "active": "Attiva",
         "add": "Aggiungi",
         "add_alias": "Aggiungi alias",
-        "add_domain": "Aggiungi Dominio",
-        "add_domain_alias": "Aggiungi alias Dominio",
-        "add_domain_record_first": "Perfavore aggiungi il dominio prima",
+        "add_alias_expand": "Expand alias over alias domains",
+        "add_bcc_entry": "Add BCC map",
+        "add_domain": "Aggiungi Ddminio",
+        "add_domain_alias": "Aggiungi alias di dominio",
+        "add_domain_record_first": "Per favore aggiungi il dominio prima",
+        "add_filter": "Aggiungi filtro",
         "add_mailbox": "Aggiungi casella mail",
+        "add_recipient_map_entry": "Add recipient map",
         "add_resource": "Aggiungi risorsa",
+        "add_tls_policy_map": "Add TLS policy map",
+        "address_rewriting": "Address rewriting",
         "alias": "Alias",
-        "aliases": "Aliases",
+        "alias_domain_alias_hint": "Aliases are <b>not</b> applied on domain aliases automatically. An alias address <code>my-alias@domain</code> <b>does not</b> cover the address <code>my-alias@alias-domain</code> (where \"alias-domain\" is an imaginary alias domain for \"domain\").<br>Please use a sieve filter to redirect mail to an external mailbox (see tab \"Filters\" or use  SOGo -> Forwarder). Use \"Expand alias over alias domains\" to automatically add missing aliases.",
+        "alias_domain_backupmx": "Alias domain inactive for relay domain",
+        "aliases": "Alias",
+        "allow_from_smtp": "Consenti solo l'uso di questi IP per l'<b>SMTP</b>",
+        "allow_from_smtp_info": "Leave empty to allow all senders.<br>IPv4/IPv6 addresses and networks.",
+        "allowed_protocols": "Protocolli consentiti",
         "backup_mx": "Backup MX",
+        "bcc": "CCN",
+        "bcc_destination": "Destinatario CCN",
+        "bcc_destinations": "Destinatari CCN",
+        "bcc_info": "BCC maps are used to silently forward copies of all messages to another address. A recipient map type entry is used, when the local destination acts as recipient of a mail. Sender maps conform to the same principle.<br/>\r\n  The local destination will not be informed about a failed delivery.",
+        "bcc_local_dest": "Local destination",
+        "bcc_map": "BCC map",
+        "bcc_map_type": "BCC type",
+        "bcc_maps": "BCC maps",
+        "bcc_rcpt_map": "Recipient map",
+        "bcc_sender_map": "Sender map",
+        "bcc_to_rcpt": "Switch to recipient map type",
+        "bcc_to_sender": "Switch to sender map type",
+        "bcc_type": "BCC type",
+        "booking_0": "Always show as free",
+        "booking_0_short": "Always free",
+        "booking_custom": "Hard-limit to a custom amount of bookings",
+        "booking_custom_short": "Hard limit",
+        "booking_lt0": "Unlimited, but show as busy when booked",
+        "booking_lt0_short": "Soft limit",
+        "daily": "Giornaliero",
         "deactivate": "Disattiva",
         "description": "Descrizione",
+        "disable_login": "Disabilita l'accesso (la posta in arrivo viene correttamente recapitata)",
+        "disable_x": "Disabilita",
         "domain": "Dominio",
         "domain_admins": "Amministratori di dominio",
         "domain_aliases": "Alias di domini",
-        "domain_quota": "Quota",
+        "domain_quota": "Spazio",
         "domains": "Domini",
         "edit": "Modifica",
         "empty": "Nessun risultato",
+        "enable_x": "Abilita",
         "excludes": "Esclude",
-        "filter_table": "Filra tabella",
+        "filter_table": "Filtra tabella",
+        "filters": "Filtri",
         "fname": "Nome completo",
+        "hourly": "Orario",
         "in_use": "In uso (%)",
+        "inactive": "Inattivo",
+        "insert_preset": "Insert example preset \"%s\"",
         "kind": "Tipo",
+        "last_mail_login": "Last mail login",
+        "last_pw_change": "Ultima modifica della password",
         "last_run": "Ultima esecuzione",
+        "last_run_reset": "Schedule next",
+        "mailbox": "Casella di posta",
+        "mailbox_defaults": "Impostazioni predefinite",
+        "mailbox_defaults_info": "Definire le impostazioni predefinite per le nuove caselle di posta.",
+        "mailbox_defquota": "Dimensione predefinita della casella di posta",
         "mailbox_quota": "Massima dimensione della casella",
         "mailboxes": "Caselle",
         "mins_interval": "Intervallo (min)",
         "msg_num": "Messaggio #",
-        "multiple_bookings": "Multiple bookings",
-        "no_record": "Nessun record per l' oggetto %s",
+        "multiple_bookings": "Prenotazioni multiple",
+        "never": "Mai",
+        "no": "&#10005;",
+        "no_record": "Nessun record per l'oggetto %s",
         "no_record_single": "Nessun record",
+        "owner": "Proprietario",
+        "private_comment": "Commento privato",
+        "public_comment": "Commento pubblico",
+        "q_add_header": "quando spostato nella cartella Posta indesiderata",
+        "q_all": " when moved to Junk folder and on reject",
+        "q_reject": "on reject",
+        "quarantine_category": "Quarantine notification category",
+        "quarantine_notification": "Notifiche di quarantena",
         "quick_actions": "Azione veloce",
+        "recipient_map": "Recipient map",
+        "recipient_map_info": "Recipient maps are used to replace the destination address on a message before it is delivered.",
+        "recipient_map_new": "New recipient",
+        "recipient_map_new_info": "Recipient map destination must be a valid email address.",
+        "recipient_map_old": "Original recipient",
+        "recipient_map_old_info": "A recipient maps original destination must be valid email addresses or a domain name.",
+        "recipient_maps": "Recipient maps",
         "remove": "Rimuovi",
         "resources": "Risorse",
+        "running": "In esecuzione",
+        "set_postfilter": "Mark as postfilter",
+        "set_prefilter": "Mark as prefilter",
+        "sieve_info": "You can store multiple filters per user, but only one prefilter and one postfilter can be active at the same time.<br>\r\nEach filter will be processed in the described order. Neither a failed script nor an issued \"keep;\" will stop processing of further scripts. Changes to global sieve scripts will trigger a restart of Dovecot.<br><br>Global sieve prefilter &#8226; Prefilter &#8226; User scripts &#8226; Postfilter &#8226; Global sieve postfilter",
+        "sieve_preset_1": "Elimina messaggi con allegati probabilmente pericolosi",
+        "sieve_preset_2": "Contrassegna sempre i messaggi di un mittente specifico come già letti",
+        "sieve_preset_3": "Scarta senza avvisi, interrompendo l'elaborazione di altri filtri",
+        "sieve_preset_4": "File into INBOX, skip further processing by sieve filters",
+        "sieve_preset_5": "Risponditore automatico (vacanze)",
+        "sieve_preset_6": "Rifiuta posta con risposta",
+        "sieve_preset_7": "Inoltra e mantieni/elimina",
+        "sieve_preset_8": "Rifiuta il messaggio inviato ad un indirizzo alias di cui fa parte il mittente",
+        "sieve_preset_header": "Si prega di guardare i settaggi di esempio riportati qui sotto. Per maggiori dettagli, visita <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
+        "sogo_visible": "Alias visibile in SOGo",
+        "sogo_visible_n": "Nascondi alias in SOGo",
+        "sogo_visible_y": "Mostra alias in SOGo",
         "spam_aliases": "Alias temporanei",
+        "stats": "Statistiche",
+        "status": "Stato",
         "sync_jobs": "Processi di sync",
-        "target_address": "Vai ad indirizzo",
-        "target_domain": "Target domain",
+        "table_size": "Dimensioni della tabella",
+        "table_size_show_n": "Mostra %s elementi",
+        "target_address": "Vai agli indirizzi",
+        "target_domain": "Dominio di destinazione",
         "tls_enforce_in": "Imponi TLS in ingresso",
         "tls_enforce_out": "Imponi TLS in uscita",
+        "tls_map_dest": "Destinazione",
+        "tls_map_dest_info": "Esempi: example.org, .example.org, [mail.example.org]:25",
+        "tls_map_parameters": "Parametri",
+        "tls_map_parameters_info": "Vuoto o parametri, ad esempio: protocols=!SSLv2 ciphers=medium exclude=3DES",
+        "tls_map_policy": "Policy",
+        "tls_policy_maps": "Mappa dei criteri TLS",
+        "tls_policy_maps_enforced_tls": "These policies will also override the behaviour for mailbox users that enforce outgoing TLS connections. If no policy exists below, these users will apply the default values specified as <code>smtp_tls_mandatory_protocols</code> and <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "This policy map overrides outgoing TLS transport rules independently of a user's TLS policy settings.<br>\r\n  Please check <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">the \"smtp_tls_policy_maps\" docs</a> for further information.",
+        "tls_policy_maps_long": "Sovrascritture della mappa dei criteri TLS",
         "toggle_all": "Inverti tutti",
-        "username": "Nome utente"
+        "username": "Nome utente",
+        "waiting": "In attesa",
+        "weekly": "Settimanale",
+        "yes": "&#10003;"
+    },
+    "oauth2": {
+        "access_denied": "Effettua il login alla casella di posta per garantire l'accesso tramite OAuth2.",
+        "authorize_app": "Autorizza applicazione",
+        "deny": "Nega",
+        "permit": "Autorizza applicazione",
+        "profile": "Profilo",
+        "profile_desc": "Visualizza le informazioni personali: nome utente, nome e cognome, creazione, modifica, stato attivazione",
+        "scope_ask_permission": "Un'applicazione ha richiesto le seguenti autorizzazioni"
     },
     "quarantine": {
         "action": "Azione",
+        "atts": "Allegati",
+        "check_hash": "Search file hash @ VT",
+        "confirm": "Conferma",
+        "confirm_delete": "Conferma l'eliminazione di questo elemento.",
+        "danger": "Pericolo",
+        "deliver_inbox": "Consegna nella posta in arrivo",
+        "disabled_by_config": "The current system configuration disables the quarantine functionality. Please set \"retentions per mailbox\" and a \"maximum size\" for quarantine elements.",
+        "download_eml": "Download (.eml)",
         "empty": "Nessun risultato",
+        "high_danger": "Alto",
+        "info": "Informazione",
+        "junk_folder": "Cartella SPAM",
+        "learn_spam_delete": "Segnala come spam ed elimina",
+        "low_danger": "Basso",
+        "medium_danger": "Medio",
+        "neutral_danger": "Neutrale",
+        "notified": "Notificato",
+        "qhandler_success": "Richiesta inviata con successo al sistema. Ora puoi chiudere questa finestra.",
+        "qid": "Rspamd QID",
+        "qinfo": "The quarantine system will save rejected mail to the database (the sender will <em>not</em> be given the impression of a delivered mail) as well as mail, that is delivered as copy into the Junk folder of a mailbox.\r\n  <br>\"Learn as spam and delete\" will learn a message as spam via Bayesian theorem and also calculate fuzzy hashes to deny similar messages in the future.\r\n  <br>Please be aware that learning multiple messages can be - depending on your system - time consuming.<br>Blacklisted elements are excluded from the quarantine.",
+        "qitem": "Elemento in quarantena",
+        "quarantine": "Quarantena",
         "quick_actions": "Azione veloce",
+        "quick_delete_link": "Open quick delete link",
+        "quick_info_link": "Open info link",
+        "quick_release_link": "Open quick release link",
+        "rcpt": "Destinatario",
+        "received": "Ricevuto",
+        "recipients": "Destinatari",
+        "refresh": "Aggiorna",
+        "rejected": "Respinto",
+        "release": "Release",
+        "release_body": "Abbiamo allegato il tuo messaggio come file eml a questo messaggio.",
+        "release_subject": "Potentially damaging quarantine item %s",
         "remove": "Elimina",
-        "toggle_all": "Inverti tutti"
+        "rewrite_subject": "Riscrivi oggetto",
+        "rspamd_result": "Risultato Rspamd",
+        "sender": "Mittente (SMTP)",
+        "sender_header": "Mittente (\"From\" header)",
+        "settings_info": "Maximum amount of elements to be quarantined: %s<br>Maximum email size: %s MiB",
+        "show_item": "Mostra elemento",
+        "spam": "Spam",
+        "spam_score": "Punteggio",
+        "subj": "Oggetto",
+        "table_size": "Dimensioni della tabella",
+        "table_size_show_n": "Mostra %s elementi",
+        "text_from_html_content": "Contenuto (convertito in HTML)",
+        "text_plain_content": "Contenuto (text/plain)",
+        "toggle_all": "Inverti tutti",
+        "type": "Tipologia"
     },
     "start": {
         "help": "Mostra/Nascondi pannello di aiuto",
         "imap_smtp_server_auth_info": "Please use your full email address and the PLAIN authentication mechanism.<br />\r\nYour login data will be encrypted by the server-side mandatory encryption.",
         "mailcow_apps_detail": "Usa l'app mailcow per accedere alla posta, calendari, contatti ed altro.",
-        "mailcow_panel_detail": "<b>Amministratori di dominio</b> crea, modifica o cancella caselle e alias, cambia i domini e informazioni relative ai domini associati.<br />\r\n\t<b>Utenti di caselle</b> possono creare degli alias temporanei (spam aliases), cambiare la loro password e le impostazioni relative ai filtri spam."
+        "mailcow_panel_detail": "<b>Amministratori di dominio</b> crea, modifica od elimina caselle ed alias, cambia i domini e informazioni relative ai domini associati.<br />\r\n\t<b>Utenti di caselle</b> possono creare degli alias temporanei (spam aliases), cambiare la loro password e le impostazioni relative ai filtri spam."
     },
     "success": {
-        "admin_modified": "I cambiamenti a administrator è stato salvato",
-        "alias_added": "Alias address/es has/have been added",
+        "acl_saved": "ACL for object %s saved",
+        "admin_added": "L'amministratore %s è stato aggiunto",
+        "admin_api_modified": "Le modifiche alle API sono state salvate",
+        "admin_modified": "I cambiamenti all'amministratore sono stati salvati",
+        "admin_removed": "L'amministratore %s è stato rimosso",
+        "alias_added": "Uno o più alias sono stati correttamente aggiunti",
         "alias_domain_removed": "L'alias di dominio %s è stato rimosso",
-        "alias_modified": "I cambiamenti all'alias/es %s è stato salvato",
+        "alias_modified": "I cambiamenti all'alias %s sono stati salvati",
         "alias_removed": "L'alias %s è stato rimosso",
         "aliasd_added": "Aggiunto l'alias per il dominio %s",
-        "aliasd_modified": "I cambiamenti a alias domain %s è stato salvato",
+        "aliasd_modified": "I cambiamenti all'alias di dominio %s sono stati salvati",
+        "app_links": "Saved changes to app links",
+        "app_passwd_added": "Aggiunta nuova password per l'app",
+        "app_passwd_removed": "Password dell'app con ID %s rimossa",
+        "bcc_deleted": "BCC map entries deleted: %s",
+        "bcc_edited": "BCC map entry %s edited",
+        "bcc_saved": "BCC map entry saved",
+        "db_init_complete": "Inizializzazione del database completata",
+        "delete_filter": "Filtri eliminati - ID %s",
+        "delete_filters": "Filtri eliminati: %s",
+        "deleted_syncjob": "Eliminato syncjob - ID %s",
+        "deleted_syncjobs": "Eliminati syncjobs: %s",
         "dkim_added": "La chiave DKIM è stata salvata",
+        "dkim_duplicated": "La chiave DKIM per il dominio %s è stata copiata in %s",
         "dkim_removed": "La chiave DKIM è stata rimossa",
         "domain_added": "Aggiunto dominio %s",
         "domain_admin_added": "L'amministratore di dominio %s è stato aggiunto",
-        "domain_admin_modified": "I cambiamenti a domain administrator %s è stato salvato",
+        "domain_admin_modified": "I cambiamenti all'amministratore di dominio %s sono stati salvati",
         "domain_admin_removed": "L'amministratore di dominio %s è stato rimosso",
-        "domain_modified": "I cambiamenti a domain %s è stato salvato",
+        "domain_modified": "I cambiamenti al dominio %s sono stati salvati",
         "domain_removed": "Il dominio %s è stato aggiunto",
-        "eas_reset": "Dispositivi ActiveSync dell'utente %s resettati",
+        "dovecot_restart_success": "Dovecot è stato riavviato con successo",
+        "eas_reset": "I dispositivi ActiveSync dell'utente %s sono stati resettati",
+        "f2b_modified": "Le modifiche ai parametri Fail2ban sono state salvate",
         "forwarding_host_added": "Inoltro dell' host %s è stato aggiunto",
         "forwarding_host_removed": "Inoltro dell' host %s è stato rimosso",
+        "global_filter_written": "Il filtro è stato scritto con successo nel file",
+        "hash_deleted": "Hash eliminato",
+        "item_deleted": "Item %s successfully deleted",
+        "item_released": "Item %s released",
+        "items_deleted": "Item %s successfully deleted",
+        "items_released": "Selected items were released",
+        "learned_ham": "Successfully learned ID %s as ham",
+        "license_modified": "Le modifiche alla licenza sono state salvate",
+        "logged_in_as": "Collegato come %s",
         "mailbox_added": "La casella %s è stata aggiunta",
-        "mailbox_modified": "I cambiamenti alla mailbox %s è stato salvato",
+        "mailbox_modified": "Le modifiche alla casella di posta %s sono state salvate",
         "mailbox_removed": "La casella %s è stata rimossa",
-        "object_modified": "I cambiamenti all'oggetto %s è stato salvato",
+        "nginx_reloaded": "Nginx è stato ricaricato",
+        "object_modified": "Le modifiche all'oggetto %s sono state salvate",
+        "password_policy_saved": "Password policy was saved successfully",
+        "pushover_settings_edited": "Pushover settings successfully set, please verify credentials.",
+        "qlearn_spam": "Message ID %s was learned as spam and deleted",
+        "queue_command_success": "Queue command completed successfully",
+        "recipient_map_entry_deleted": "Recipient map ID %s has been deleted",
+        "recipient_map_entry_saved": "Recipient map entry \"%s\" has been saved",
+        "relayhost_added": "Map entry %s has been added",
+        "relayhost_removed": "Map entry %s has been removed",
+        "reset_main_logo": "Ripristina il logo predefinito",
         "resource_added": "La risorsa %s è stata aggiunta",
-        "resource_modified": "I cambiamenti alla mailbox %s è stato salvato",
-        "resource_removed": "La risorsa %s è stata rimossa"
+        "resource_modified": "Le modifiche alla casella di posta %s sono state salvate",
+        "resource_removed": "La risorsa %s è stata rimossa",
+        "rl_saved": "Rate limit for object %s saved",
+        "rspamd_ui_pw_set": "Password dell'interfaccia utente di Rspamd UI impostata con successo",
+        "saved_settings": "Impostazioni salvate",
+        "settings_map_added": "Added settings map entry",
+        "settings_map_removed": "Removed settings map ID %s",
+        "sogo_profile_reset": "Il profilo SOGo dell'utente %s è stato resettato",
+        "tls_policy_map_entry_deleted": "TLS policy map ID %s has been deleted",
+        "tls_policy_map_entry_saved": "TLS policy map entry \"%s\" has been saved",
+        "ui_texts": "Saved changes to UI texts",
+        "upload_success": "File caricato con successo",
+        "verified_fido2_login": "Verified FIDO2 login",
+        "verified_totp_login": "Verified TOTP login",
+        "verified_u2f_login": "Verified U2F login",
+        "verified_yotp_login": "Verified Yubico OTP login",
+        "xmpp_maps_updated": "XMPP maps were updated",
+        "xmpp_reloaded": "Il servizio XMPP è stato ricaricato",
+        "xmpp_restarted": "Il servizio XMPP è stato riavviato"
     },
     "tfa": {
-        "api_register": "%s usa le Api Yubico Cloud. Richiedi una Chiave API <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">qui</a>",
+        "api_register": "%s usa le API Yubico Cloud. Richiedi una chiave API <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">qui</a>",
         "confirm": "Conferma",
         "confirm_totp_token": "Conferma le modifiche inserendo il token generato",
         "delete_tfa": "Disabilita TFA",
         "disable_tfa": "Disabilita TFA fino al prossimo accesso",
         "enter_qr_code": "Il codice TOTP se il tuo dispositivo non è in grado di acquisire i codici QR",
+        "error_code": "Codice di errore",
+        "init_u2f": "Inizializzazione, attendere prego...",
         "key_id": "Identificatore per il tuo YubiKey",
         "key_id_totp": "Identificatore per la tua chiave",
-        "none": "Disattiva",
+        "none": "Disattivato",
+        "reload_retry": "- (ricaricare la pagina se l'errore persiste)",
         "scan_qr_code": "Esegui la scansione del seguente codice con l'applicazione di autenticazione o inserisci manualmente il codice.",
         "select": "Seleziona",
         "set_tfa": "Imposta il metodo di autenticazione a due fattori",
+        "start_u2f_validation": "Avvia convalida",
+        "set_tfa": "Imposta il metodo di autenticazione a due fattori",
         "tfa": "Autenticazione a due fattori",
         "totp": "Time-based OTP (Google Authenticator etc.)",
         "u2f": "Autenticazione U2F",
-        "waiting_usb_auth": "<i>Attendo il device USB...</i><br /><br />Tocca ora il pulsante sul dispositivo U2F USB.",
-        "waiting_usb_register": "<i>Attendo il device USB...</i><br /><br />Inserisci la tua password sopra e conferma la tua registrazione U2F toccando il pulsante del dispositivo U2F USB.",
+        "waiting_usb_auth": "<i>In attesa del device USB...</i><br /><br />Tocca ora il pulsante sul dispositivo U2F USB.",
+        "waiting_usb_register": "<i>In attesa del device USB...</i><br /><br />Inserisci la tua password qui sopra e conferma la tua registrazione U2F toccando il pulsante del dispositivo U2F USB.",
         "yubi_otp": "Autenticazione Yubico OTP"
     },
     "user": {
         "action": "Azione",
         "active": "Attiva",
+        "active_sieve": "Filtro attivo",
+        "advanced_settings": "Impostazioni avanzate",
         "alias": "Alias",
         "alias_create_random": "Genera un alias generico",
         "alias_extend_all": "Estendi la durata di 1 ora agli alias",
@@ -322,36 +1011,101 @@
         "alias_valid_until": "Valido fino a",
         "aliases_also_send_as": "Può inviare come utente",
         "aliases_send_as_all": "Do not check sender access for the following domain(s) and its alias domains",
+        "app_hint": "App passwords are alternative passwords for your <b>IMAP and SMTP</b> login. The username remains unchanged.<br>SOGo (including ActiveSync) is not available through app passwords.",
+        "app_name": "App name",
+        "app_passwds": "App passwords",
+        "apple_connection_profile": "Profilo di connessione Apple",
+        "apple_connection_profile_complete": "This connection profile includes IMAP and SMTP parameters as well as CalDAV (calendars) and CardDAV (contacts) paths for an Apple device.",
+        "apple_connection_profile_mailonly": "This connection profile includes IMAP and SMTP configuration parameters for an Apple device.",
         "change_password": "Cambia password",
+        "clear_recent_successful_connections": "Clear seen successful connections",
+        "client_configuration": "Show configuration guides for email clients and smartphones",
+        "create_app_passwd": "Create app password",
         "create_syncjob": "Crea un azione di sync",
-        "day": "Giorno",
+        "created_on": "Creato il",
+        "daily": "Giornaliero",
+        "day": "giorno",
+        "delete_ays": "Please confirm the deletion process.",
+        "direct_aliases": "Direct alias addresses",
+        "direct_aliases_desc": "Direct alias addresses are affected by spam filter and TLS policy settings.",
         "eas_reset": "Ripristina la cache dei dispositivi ActiveSync",
         "eas_reset_help": "In molti casi un ripristino risolve i problemi di sincronizzazione dei dispositivi.<br /><b>Attenzione:</b> Tutti gli elementi verranno scaricati nuovamente!",
         "eas_reset_now": "Ripristina ora",
         "edit": "Modifica",
+        "email": "E-mail",
+        "email_and_dav": "E-mail, calendari e contatti",
+        "empty": "Nessun risultato",
         "encryption": "Crittografia",
         "excludes": "Esclude",
-        "hour": "Ora",
-        "hours": "Ore",
+        "expire_in": "Scade in",
+        "fido2_webauthn": "FIDO2/WebAuthn",
+        "force_pw_update": "<b>Devi</b> impostare una nuova password per poter accedere ai servizi relativi al groupware.",
+        "from": "Da",
+        "generate": "generato",
+        "hour": "ora",
+        "hourly": "orario",
+        "hours": "ore",
         "in_use": "Utilizzati",
         "interval": "Intervallo",
         "is_catch_all": "Catch-all per il dominio/i",
-        "last_run": "Ultima esecuzione",
+        "last_mail_login": "Ultimo accesso alla casella di posta",
+        "last_pw_change": "Ultima modifica della password",
+		"last_run": "Ultima esecuzione",
+        "last_ui_login": "Ultimo login all'interfaccia utente",
+        "loading": "Caricamento in corso...",
+        "login_history": "Cronologia accessi",
+        "mailbox": "Casella di posta",
         "mailbox_details": "Dettagli casella",
+        "mailbox_general": "Generale",
+        "mailbox_settings": "Impostazioni",
         "messages": "messaggi",
+        "month": "mese",
+        "months": "mesi",
+        "never": "Mai",
         "new_password": "Nuova password",
-        "new_password_description": "Requisiti: Lunghezza di 6 caratteri, lettere e numeri.",
-        "new_password_repeat": "Conferma password (ripeti)",
+        "new_password_repeat": "Conferma password (riscrivi)",
+        "no_active_filter": "No active filter available",
+        "no_last_login": "No last UI login information",
         "no_record": "Nessun elemento",
+        "open_webmail_sso": "Accedi alla webmail",
+        "password": "Password",
         "password_now": "Password attuale (conferma modifiche)",
+        "password_repeat": "Conferma password (riscrivi)",
+        "pushover_evaluate_x_prio": "Escalate high priority mail [<code>X-Priority: 1</code>]",
+        "pushover_info": "Push notification settings will apply to all clean (non-spam) mail delivered to <b>%s</b> including aliases (shared, non-shared, tagged).",
+        "pushover_only_x_prio": "Considera solo la posta ad alta priorità [<code>X-Priority: 1</code>]",
+        "pushover_sender_array": "Consider the following sender email addresses <small>(comma-separated)</small>",
+        "pushover_sender_regex": "Match senders by the following regex",
+        "pushover_text": "Testo di notifica",
+        "pushover_title": "Titolo della notifica",
+        "pushover_vars": "When no sender filter is defined, all mails will be considered.<br>Regex filters as well as exact sender checks can be defined individually and will be considered sequentially. They do not depend on each other.<br>Useable variables for text and title (please take note of data protection policies)",
+        "pushover_verify": "Verifica le credenziali",
+        "q_add_header": "Cartella SPAM",
+        "q_all": "Tutte le categorie",
+        "q_reject": "Respinto",
+        "quarantine_category": "Quarantine notification category",
+        "quarantine_category_info": "La categoria di notifica \"Rifiutata\" include la posta che è stata rifiutata, mentre \"Posta indesiderata\" avviserà l'utente dei messaggi che sono stati spostati nella cartella omonima.",
+        "quarantine_notification": "Notifiche di quarantena",
+        "quarantine_notification_info": "Una volta inviata la notifica, gli elementi saranno contrassegnati come \"notificati\" e non verranno inviate ulteriori notifiche per questo particolare elemento.",
+        "recent_successful_connections": "Seen successful connections",
         "remove": "Elimina",
+        "running": "In esecuzione",
+        "save": "Salva modifiche",
         "save_changes": "Salva modifiche",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Sender check is disabled</span>",
+        "shared_aliases": "Indirizzi alias condivisi",
+        "shared_aliases_desc": "Shared aliases are not affected by user specific settings such as the spam filter or encryption policy. Corresponding spam filters can only be made by an administrator as a domain-wide policy.",
+        "show_sieve_filters": "Show active user sieve filter",
+        "sogo_profile_reset": "Ripristina il profilo SOGo",
+        "sogo_profile_reset_help": "Questo distruggerà il profilo SOGo dell'utente ed <b>eliminerà tutti i contatti e i dati del calendario definitivamente</b>.",
+        "sogo_profile_reset_now": "Ripristina il profilo ora",
         "spam_aliases": "Indirizzi mail temporanei",
+        "spam_score_reset": "Reset to server default",
         "spamfilter": "Filtri spam",
         "spamfilter_behavior": "Punteggio",
         "spamfilter_bl": "Blacklist",
         "spamfilter_bl_desc": "Email inserita nella blacklisted per <b>essere sempre</b> riconosciuta come spam e rifiutata. Si possono usare le wildcards.",
-        "spamfilter_default_score": "Valori di default:",
+        "spamfilter_default_score": "Valori di default",
         "spamfilter_green": "Verde: Questo messaggio non è spam",
         "spamfilter_hint": "Il primo valore rappresenta un \"basso punteggio di spam\", il secondo rappresenta un \"alto punteggio di spam\".",
         "spamfilter_red": "Rosso: uesto messaggio è spam e verrà rifiutato dal server",
@@ -362,22 +1116,43 @@
         "spamfilter_table_remove": "rimuovi",
         "spamfilter_table_rule": "Regola",
         "spamfilter_wl": "Whitelist",
-        "spamfilter_wl_desc": "Email inserita nella whitelist per <b>non essere mai</b> riconosciuta come spam. Si possono usare le wildcards.",
+        "spamfilter_wl_desc": "Email inserita nella whitelist per <b>non essere mai</b> riconosciuta come spam. Si possono usare le wildcards. Un filtro viene applicato solo agli alias diretti (alias con una singola casella postale di destinazione) esclusi gli alias catch-all e la casella postale stessa.",
         "spamfilter_yellow": "Giallo: Questo messaggio può essere spam, verrà segnalato come spam e spostato nella cartella spazzatura",
+        "status": "Stato",
         "sync_jobs": "Processi di sync",
         "tag_handling": "Imposta le gestione della mail evidenziate",
         "tag_help_example": "Esempio di mail con tag: ich<b>+Facebook</b>@example.org",
-        "tag_help_explain": "In sotto cartelle: Una nuova cartella dal nome del tag verrà creata sotto INBOX (\"INBOX/Facebook\").<br />\r\nNell'oggetto: Il nome del tag verrà aggiunto all'inizio dell'oggetto mail, esempio: \"[Facebook] Meine Neuigkeiten\".",
+        "tag_help_explain": "In sottocartelle: Una nuova cartella con il nome del tag verrà creata sotto INBOX (\"INBOX/Facebook\").<br />\r\nNell'oggetto: Il nome del tag verrà aggiunto all'inizio dell'oggetto della mail, esempio: \"[Facebook] Le mie notizie\".",
         "tag_in_none": "Fare niente",
-        "tag_in_subfolder": "Nella sotto cartella",
+        "tag_in_subfolder": "Nella sottocartella",
         "tag_in_subject": "Nell'oggetto",
+        "text": "Testo",
+        "title": "Titolo",
         "tls_enforce_in": "Imponi TLS in ingresso",
         "tls_enforce_out": "Imponi TLS in uscita",
         "tls_policy": "Politica di crittografia",
         "tls_policy_warning": "<strong>Attenzione:</strong> If you decide to enforce encrypted mail transfer, you may lose emails.<br />Messages to not satisfy the policy will be bounced with a hard fail by the mail system.<br />This option applies to your primary email address (login name), all addresses derived from alias domains as well as alias addresses <b>with only this single mailbox</b> as target.",
         "user_settings": "Impostazioni utente",
         "username": "Nome utente",
-        "week": "Settimana",
-        "weeks": "Settimane"
+        "verify": "Verifica",
+        "waiting": "In attesa",
+        "week": "settimana",
+        "weekly": "Settimanale",
+        "weeks": "settimane",
+        "year": "anno",
+        "years": "anni"
+    },
+    "warning": {
+        "cannot_delete_self": "Cannot delete logged in user",
+        "domain_added_sogo_failed": "Il dominio è stato aggiunto ma non è stato possibile riavviare SOGo, controlla i log del tuo server.",
+        "dovecot_restart_failed": "Non è stato possibile riavviare Dovecot, controlla i log del tuo server.",
+        "fuzzy_learn_error": "Fuzzy hash learn error: %s",
+        "hash_not_found": "Hash not found or already deleted",
+        "ip_invalid": "Skipped invalid IP: %s",
+        "is_not_primary_alias": "Skipped non-primary alias %s",
+        "no_active_admin": "Cannot deactivate last active admin",
+        "quota_exceeded_scope": "Domain quota exceeded: Only unlimited mailboxes can be created in this domain scope.",
+        "session_token": "Form token invalid: Token mismatch",
+        "session_ua": "Form token invalid: User-Agent validation error"
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ko.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ko.json
index 59be683..cdd34b1 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ko.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ko.json
@@ -438,12 +438,12 @@
         "logs": "Logs",
         "restart_container": "Restart",
         "solr_dead": "Solr is starting, disabled or died.",
-        "solr_docs": "Docs",
-        "solr_last_modified": "Last modified",
-        "solr_size": "Size",
-        "solr_started_at": "Started at",
+        "docs": "Docs",
+        "last_modified": "Last modified",
+        "size": "Size",
+        "started_at": "Started at",
         "solr_status": "Solr status",
-        "solr_uptime": "Uptime",
+        "uptime": "Uptime",
         "started_on": "Started on",
         "static_logs": "Static logs",
         "system_containers": "System & Containers"
@@ -534,7 +534,7 @@
         "save": "Save changes",
         "scope": "Scope",
         "sender_acl": "Allow to send as",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Sender check is disabled</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Sender check is disabled</span>",
         "sender_acl_info": "If mailbox user A is allowed to send as mailbox user B, the sender address is not automatically displayed as selectable \"from\" field in SOGo.<br>\r\n  Mailbox user B needs to create a delegation in SOGo to allow mailbox user A to select their address as sender. To delegate a mailbox in SOGo, use the menu (three dots) to the right of your mailbox name in the upper left while in mail view. This behaviour does not apply to alias addresses.",
         "sieve_desc": "Short description",
         "sieve_type": "Filter type",
@@ -696,7 +696,6 @@
         "sieve_preset_7": "Redirect and keep/drop",
         "sieve_preset_8": "Discard message sent to an alias address the sender is part of",
         "sieve_preset_header": "Please see the example presets below. For more details see <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Administrative SOGo logins are only available for mailboxes with an existing SOGo profile. A user must have been logged in to SOGo at least once.",
         "sogo_visible": "Alias is visible in SOGo",
         "sogo_visible_n": "Hide alias in SOGo",
         "sogo_visible_y": "Show alias in SOGo",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.lv.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.lv.json
index 57b6951..c73a185 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.lv.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.lv.json
@@ -542,4 +542,4 @@
         "week": "Nedēļa",
         "weeks": "Nedēļas"
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.nl.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.nl.json
index 053e109..03c55e9 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.nl.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.nl.json
@@ -26,7 +26,11 @@
         "syncjobs": "Sync jobs",
         "tls_policy": "Versleutelingsbeleid",
         "unlimited_quota": "Onbeperkte quota voor mailboxen",
-        "domain_desc": "Wijzig domeinbeschrijving"
+        "domain_desc": "Wijzig domeinbeschrijving",
+        "xmpp_admin": "Promoveer XMPP-gebruiker tot administrator",
+        "xmpp_domain_access": "Configureer XMPP-domeintoegang",
+        "xmpp_mailbox_access": "Configureer XMPP-gebruikerstoegang",
+        "xmpp_prefix": "Wijzig XMPP subdomein (prefix)"
     },
     "add": {
         "activate_filter_warn": "Alle andere filters worden gedeactiveerd zolang deze geactiveerd is.",
@@ -59,6 +63,12 @@
         "full_name": "Volledige naam",
         "gal": "Globale adreslijst",
         "gal_info": "De globale adreslijst bevat alle objecten van een domein. Deze kunnen door geen enkele gebruiker worden bewerkt. <b>Herstart SOGo om wijzigingen door te voeren.</b>",
+        "xmpp": "Activeer XMPP voor dit domein",
+        "xmpp_info": "Deze optie activeert de chatfunctionaliteit voor dit domein.",
+        "xmpp_access": "XMPP-toegang",
+        "xmpp_access_info": "XMPP dient ingeschakeld te zijn voor dit domein.",
+        "xmpp_admin": "XMPP-administrator",
+        "xmpp_admin_info": "<b>Waarschuwing:</b> Promoveert een gebruiker tot XMPP-administrator van dit domein.",
         "generate": "genereer",
         "goto_ham": "Train als <span class=\"text-success\"><b>ham</b></span>",
         "goto_null": "Verwijder mail onmiddelijk",
@@ -351,6 +361,7 @@
         "global_filter_write_error": "Filter kon niet opgeslagen worden: %s",
         "global_map_invalid": "Globaal filter %s is ongeldig",
         "global_map_write_error": "Globaal filter %s kon niet opgeslagen worden: %s",
+        "xmpp_map_write_error": "XMPP-map kon niet opgeslagen worden: %s",
         "goto_empty": "Een aliasadres dient ten minste één doeladres te hebben",
         "goto_invalid": "Doeladres %s is ongeldig",
         "ham_learn_error": "Ham training-error: %s",
@@ -385,6 +396,7 @@
         "max_quota_in_use": "Mailboxquota dient gelijk te zijn aan, of groter te zijn dan %d MiB",
         "maxquota_empty": "Maximale mailboxquota dient groter dan 0 te zijn.",
         "mysql_error": "MySQL-error: %s",
+        "nginx_reload_failed": "Nginx reload mislukt: %s",
         "network_host_invalid": "Ongeldig netwerk of host: %s",
         "next_hop_interferes": "%s interfereert met nexthop %s",
         "next_hop_interferes_any": "Een bestaande nexthop interfereert met %s",
@@ -435,7 +447,9 @@
         "username_invalid": "Gebruikersnaam %s kan niet worden gebruikt",
         "validity_missing": "Wijs een geldigheidstermijn toe",
         "value_missing": "Niet alle waarden zijn ingevuld",
-        "yotp_verification_failed": "Yubico OTP-verificatie mislukt: %s"
+        "yotp_verification_failed": "Yubico OTP-verificatie mislukt: %s",
+        "xmpp_restart_failed": "XMPP herstart mislukt",
+        "xmpp_reload_failed": "XMPP reload mislukt"
     },
     "debug": {
         "chart_this_server": "Grafiek (deze server)",
@@ -449,20 +463,24 @@
         "logs": "Logs",
         "restart_container": "Herstart",
         "solr_dead": "Solr is uitgeschakeld, uitgevallen of nog bezig met opstarten.",
-        "solr_docs": "Documenten",
-        "solr_last_modified": "Voor het laatst bijgewerkt op",
-        "solr_size": "Grootte",
-        "solr_started_at": "Opgestart op",
-        "solr_status": "Status van Solr",
-        "solr_uptime": "Uptime",
+        "xmpp_dead": "XMPP is uitgeschakeld, uitgevallen of nog bezig met opstarten.",
+        "docs": "Documenten",
+        "last_modified": "Voor het laatst bijgewerkt op",
+        "online_users": "Gebruikers online",
+        "size": "Grootte",
+        "started_at": "Opgestart op",
+        "solr_status": "Solr-status",
+        "uptime": "Uptime",
         "started_on": "Gestart op",
         "static_logs": "Statische logs",
-        "system_containers": "Systeem & containers"
+        "system_containers": "Systeem & containers",
+        "xmpp_status": "XMPP-status"
     },
     "diagnostics": {
         "cname_from_a": "Waarde afgeleid van een A- of AAAA-vermelding.",
         "dns_records": "DNS-configuratie",
         "dns_records_24hours": "Houd er rekening mee dat wijzigingen aan DNS tot wel 24 uur in beslag kunnen nemen voordat ze op deze pagina worden weergegeven. Deze informatie is bedoeld om gemakkelijk te bekijken of de DNS-configuratie aan de eisen voldoet.",
+        "dns_records_docs": "Raadpleeg ook <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">de documentatie</a>.",
         "dns_records_data": "Correcte gegevens",
         "dns_records_name": "Naam",
         "dns_records_status": "Huidige staat",
@@ -505,6 +523,17 @@
         "full_name": "Volledige naam",
         "gal": "Globale adreslijst",
         "gal_info": "De globale adreslijst bevat alle objecten van een domein. Deze kunnen door geen enkele gebruiker worden bewerkt. <b>Herstart SOGo om wijzigingen door te voeren.</b>",
+
+        "xmpp": "Activeer XMPP voor dit domein",
+        "xmpp_prefix": "XMPP-prefix (\"im\" om <b>im</b>.example.org te gebruiken)",
+        "xmpp_prefix_info": "Om certificaten voor XMPP aan te vragen, dienen twee CNAME records te verwijzen van <b>im</b>.example.org en <b>*.im</b>.example.org naar <b>%s</b>. Controleer na het inschakelen van XMPP de DNS-configuratie in het Domeinen-overzicht.",
+        "xmpp_info": "Deze optie activeert de chatfunctionaliteit voor dit domein.",
+        "xmpp_access": "XMPP-toegang",
+        "xmpp_access_info": "XMPP dient ingeschakeld te zijn voor dit domein.",
+        "xmpp_admin": "XMPP-administrator",
+        "xmpp_admin_info": "<b>Waarschuwing:</b> Promoveert een gebruiker tot XMPP-administrator van dit domein.",
+        "xmpp_example_jid": "<b>Voorbeeld JID</b> (log in met mailboxwachtwoord)",
+
         "generate": "genereer",
         "grant_types": "Grant types",
         "hostname": "Hostname",
@@ -536,6 +565,7 @@
         "pushover_vars": "Wanneer er geen afzenders zijn uitgesloten zullen alle mails doorkomen.<br>Regex-filters en afzendercontroles kunnen individueel worden ingesteld en zullen in volgorde worden verwerkt. Ze zijn niet afhankelijk van elkaar.<br>Bruikbare variabelen voor tekst en titel (neem het gegevensbeschermingsbeleid in acht)",
         "pushover_verify": "Verifieer aanmeldingsgegevens",
         "quota_mb": "Quota (MiB)",
+        "ratelimit": "Ratelimit",
         "redirect_uri": "Redirect/Callback URL",
         "relay_all": "Forward alle ontvangers",
         "relay_all_info": "↪ Wanneer er wordt gekozen om <b>niet</b> alle ontvangers te forwarden, dient er per ontvanger een lege mailbox aangemaakt te worden.",
@@ -548,7 +578,7 @@
         "save": "Wijzigingen opslaan",
         "scope": "Scope",
         "sender_acl": "Sta toe om te verzenden als",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Verzendcontrole is uitgeschakeld</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Verzendcontrole is uitgeschakeld</span>",
         "sender_acl_info": "Wanneer mailboxgebruiker A toegestaan is te verzenden namens mailboxgebruiker B, zal het verzendadres niet automatisch worden weergegeven in het \"van\"-veld in SOGo. Mailboxgebruiker A dient hiervoor een aparte vermelding te maken in SOGo. Om een mailbox te delegeren in SOGo kan het menu (drie punten) aan de rechterkant van de naam van het mailbox linksboven worden gebruikt in de mailweergave. Dit is niet van toepassing op aliasadressen.",
         "sieve_desc": "Korte beschrijving",
         "sieve_type": "Filtertype",
@@ -558,6 +588,7 @@
         "sogo_visible": "Alias tonen in SOGo",
         "sogo_visible_info": "Wanneer verborgen zal een alias niet worden weergegeven als een selecteerbaar verzendadres. Deze optie beïnvloedt uitsluitend objecten die kunnen worden weergegeven in SOGo (gedeelde of niet-gedeelde aliasadressen die naar minstens één mailbox verwijzen).",
         "spam_alias": "Maak een nieuw tijdelijk alias aan, of pas deze aan",
+        "spam_filter": "Spamfilter",
         "spam_policy": "Voeg items toe of verwijder items van de white- of blacklist",
         "spam_score": "Stel een aangepaste spamscore in",
         "subfolder2": "Synchroniseer in submap op bestemming<br><small>(leeg = gebruik geen submappen)</small>",
@@ -720,7 +751,6 @@
         "sieve_preset_7": "Forward en behoud/verwijder",
         "sieve_preset_8": "Verwijder mail verstuurd naar een aliasadres van de afzender",
         "sieve_preset_header": "Zie de onderstaande voorbeelden. Raadpleeg <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a> voor meer informatie.",
-        "sogo_allow_admin_hint": "Administratieve SOGo-logins zijn uitsluitend beschikbaar voor mailboxen met een bestaand SOGo-profiel. Een gebruiker moet zich ten minste één keer aanmelden bij SOGo.",
         "sogo_visible": "Alias tonen in SOGo",
         "sogo_visible_n": "Verberg alias in SOGo",
         "sogo_visible_y": "Toon alias in SOGo",
@@ -766,6 +796,7 @@
         "danger": "Risico",
         "deliver_inbox": "Vrijgeven naar inbox",
         "disabled_by_config": "De huidige systeemconfiguratie deactiveert de quarantainefunctionaliteit. Het instellen van \"Maximale retenties per mailbox\" en \"Maximale grootte\" is vereist om deze functie te activeren.",
+        "settings_info": "Maximaal aantal items in quarantaine: %s<br>Maximale mailgrootte: %s MiB",
         "download_eml": "Download (.eml)",
         "empty": "Geen resultaten",
         "high_danger": "Hoog",
@@ -864,6 +895,7 @@
         "mailbox_added": "Mailbox %s is toegevoegd",
         "mailbox_modified": "Wijzigingen aan mailbox %s zijn opgeslagen",
         "mailbox_removed": "Mailbox %s is verwijderd",
+        "nginx_reloaded": "Nginx is herladen",
         "object_modified": "Wijzigingen aan object %s zijn opgeslagen",
         "pushover_settings_edited": "Pushover-instellingen zijn opgeslagen, verifieer nu de aanmeldingsgegevens.",
         "qlearn_spam": "Bericht %s is als spam gemarkeerd en verwijderd",
@@ -889,7 +921,10 @@
         "verified_totp_login": "TOTP succesvol geverifieerd",
         "verified_u2f_login": "U2F succesvol geverifieerd",
         "verified_fido2_login": "FIDO2 succesvol geverifieerd",
-        "verified_yotp_login": "Yubico OTP succesvol geverifieerd"
+        "verified_yotp_login": "Yubico OTP succesvol geverifieerd",
+        "xmpp_restarted": "XMPP-service is hestart",
+        "xmpp_reloaded": "XMPP-service is herladen",
+        "xmpp_maps_updated": "XMPP-maps zijn bijgewerkt"
     },
     "tfa": {
         "api_register": "%s maakt gebruik van de Yubico Cloud API. Om dit te benutten is er een API-key van Yubico vereist, deze kan <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">hier</a> opgevraagd worden",
@@ -1012,7 +1047,7 @@
         "running": "Wordt uitgevoerd",
         "save": "Sla wijzigingen op",
         "save_changes": "Wijzigingen opslaan",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Verzendcontrole is uitgeschakeld</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Verzendcontrole is uitgeschakeld</span>",
         "shared_aliases": "Gedeelde aliasadressen",
         "shared_aliases_desc": "Een gedeeld aliasadres wordt niet beïnvloed door gebruikersspecifieke instellingen. Een aangepast spamfilter kan eventueel worden ingesteld door een administrator.",
         "show_sieve_filters": "Toon actieve filters",
@@ -1063,7 +1098,7 @@
     "warning": {
         "cannot_delete_self": "Gebruikers kunnen niet worden verwijderd wanneer deze zijn aangemeld",
         "domain_added_sogo_failed": "Domein is toegevoegd, maar de hestart van SOGo mislukte. Controleer de logs.",
-        "dovecot_restart_failed": "De herstart van Dovecot mislukte. Controleer de logs.",
+        "dovecot_restart_failed": "Herstart van Dovecot mislukte. Controleer de logs.",
         "fuzzy_learn_error": "Fuzzy-hash training-error: %s",
         "hash_not_found": "Hash niet gevonden of reeds verwijderd",
         "ip_invalid": "Ongeldig IP-adres overgeslagen: %s",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.pl.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.pl.json
index 1af3d98..6c897a8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.pl.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.pl.json
@@ -106,13 +106,13 @@
         "alias_empty": "Alias nie może być pusty",
         "alias_goto_identical": "Alias i Idź do nie mogą być identyczne",
         "alias_invalid": "Alias nieprawidłowy",
-        "aliasd_targetd_identical": "Alias domeny nie może być identyczny z domenš docelową",
+        "aliasd_targetd_identical": "Alias domeny nie może być identyczny z domeną docelową",
         "aliases_in_use": "Maks. liczba aliasów musi być większa od lub równa %d",
         "description_invalid": "Nieprawidłowy opis źródła",
         "dkim_domain_or_sel_invalid": "Nieprawidłowa domena lub selektor DKIM",
         "domain_exists": "Domena %s już istnieje",
         "domain_invalid": "Błędna nazwa domeny",
-        "domain_not_empty": "Nie można usunšć niepustej domeny",
+        "domain_not_empty": "Nie można usunąć niepustej domeny",
         "domain_not_found": "Nie znaleziono domeny %s",
         "domain_quota_m_in_use": "Limit domeny %s MiB",
         "goto_empty": "Adres Idź do nie może być pusty",
@@ -120,15 +120,15 @@
         "is_alias": "%s został już podany jako alias",
         "is_alias_or_mailbox": "%s podano wcześniej jako alias lub skrzynkę",
         "is_spam_alias": "%s podano wcześniej jako alias dla spam",
-        "last_key": "Nie można usunšć ostatniego klucza",
+        "last_key": "Nie można usunąć ostatniego klucza",
         "login_failed": "Niepowodzenie logowania",
         "mailbox_invalid": "Nieprawidłowa nazwa skrzynki",
         "mailbox_quota_exceeded": "Wielkość przekracza limit domeny (maks. %d MiB)",
         "mailbox_quota_exceeds_domain_quota": "Maksymalna wielkość przekracza limit domeny",
         "mailbox_quota_left_exceeded": "Za mało dostępnego miejsca (zostało: %d MiB)",
         "mailboxes_in_use": "Maks. liczba skrzynek musi być większa od lub równa %d",
-        "max_alias_exceeded": "Przekroczono maksymalnš liczbę aliasów",
-        "max_mailbox_exceeded": "Przekroczono maksymalnš liczbę skrzynek (%d z %d)",
+        "max_alias_exceeded": "Przekroczono maksymalną liczbę aliasów",
+        "max_mailbox_exceeded": "Przekroczono maksymalną liczbę skrzynek (%d z %d)",
         "max_quota_in_use": "Limit skrzynki musi być większy od lub równy %d MiB",
         "maxquota_empty": "Maks wielkość. dla skrzynki nie może wynosić 0.",
         "object_exists": "Obiekt %s już istnieje",
@@ -302,7 +302,7 @@
         "domain_admin_removed": "Usunięto administratora domeny %s",
         "domain_modified": "Zapisano zmiany w domenie %s",
         "domain_removed": "Usunięto domenę %s",
-        "eas_reset": "Zresetowano urzšdzenia ActiveSync dla użytkownika %s",
+        "eas_reset": "Zresetowano urządzenia ActiveSync dla użytkownika %s",
         "f2b_modified": "Zmiany w Fail2ban zostały zapisane",
         "forwarding_host_added": "Dodano hosta przekazującego %s",
         "forwarding_host_removed": "Usunięto hosta przekazującego %s",
@@ -424,4 +424,4 @@
         "weekly": "Co tydzień",
         "weeks": "Tygodnie"
     }
-}
\ No newline at end of file
+}
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ro.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ro.json
index 21af291..80a776c 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ro.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ro.json
@@ -4,10 +4,13 @@
         "app_passwds": "Gestionați parolele aplicației",
         "bcc_maps": "Hărți BCC",
         "delimiter_action": "Acțiune de delimitare",
+        "domain_desc": "Schimbați descrierea domeniului",
+        "domain_relayhost": "Schimbați gazda de transmitere pentru un domeniu",
         "eas_reset": "Resetează dispozitivele EAS",
         "extend_sender_acl": "Permiteți extinderea ACL-ului expeditorului prin adrese externe",
         "filters": "Filtre",
         "login_as": "Conectează-te ca utilizator al cutiei poștale",
+        "mailbox_relayhost": "Schimbați gazda de transmitere pentru un utilizator",
         "prohibited": "Interzis de ACL",
         "protocol_access": "Schimbați protocolul de acces",
         "pushover": "Pushover",
@@ -26,7 +29,10 @@
         "syncjobs": "Lucrări de sincronizare",
         "tls_policy": "Politică TLS",
         "unlimited_quota": "Cota nelimitată pentru cutiile poștale",
-        "domain_desc": "Schimbați descrierea domeniului"
+        "xmpp_admin": "Promovează utilizatorul XMPP ca administrator",
+        "xmpp_domain_access": "Configurează accesul domeniului la XMPP",
+        "xmpp_mailbox_access": "Configurează accesul utilizatorului la XMPP",
+        "xmpp_prefix": "Schimbă subdomeniul (prefixul) pentru XMPP"
     },
     "add": {
         "activate_filter_warn": "Toate celelalte filtre vor fi dezactivate, când este bifată opțiunea activă.",
@@ -59,6 +65,12 @@
         "full_name": "Nume complet",
         "gal": "Lista adreselor globale",
         "gal_info": "GAL conține toate obiectele unui domeniu și nu poate fi editat de niciun utilizator. Informația liber/ocupat din SOGo lipsește dacă este dezactivat! <b>Reporniți SOGo pentru a aplica modificările.</b>",
+        "xmpp": "Activează XMPP pentru acest domeniu",
+        "xmpp_info": "Această funcție va activa mesageria pentru acest domeniu.",
+        "xmpp_access": "Acces XMPP",
+        "xmpp_access_info": "XMPP trebuie să fie activ pentru acest domeniu.",
+        "xmpp_admin": "Administrator XMPP",
+        "xmpp_admin_info": "<b>Atenție:</b> Promovează un utilizator ca administrator XMPP pentru acest domeniu.",
         "generate": "generează",
         "goto_ham": "Învață ca <span class=\"text-success\"><b>ham</b></span>",
         "goto_null": "Aruncă emailul în mod silențios",
@@ -125,6 +137,8 @@
         "admin": "Administrator",
         "admin_details": "Modifică detaliile administratorului",
         "admin_domains": "Sarcini de domenii",
+        "admins": "Administratori",
+        "admins_ldap": "Administratori LDAP",
         "advanced_settings": "Setări avansate",
         "api_allow_from": "Permite accesul API de la aceste adrese IP/CIDR",
         "api_info": "API-ul este în dezvoltare. Documentația se găsește la adresa: <a href=\"/api\">/api</a>",
@@ -199,10 +213,12 @@
         "include_exclude": "Include/Exclude",
         "include_exclude_info": "În mod implicit - fără nici o selecție - <b>toate cutiile poștale</b> sunt adresate",
         "includes": "Include acești destinatari",
+        "is_mx_based": "bazat pe MX",
         "last_applied": "Ultima aplicare",
         "license_info": "O licență nu este necesară, dar ajută la dezvoltarea ulterioară.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"Comandă SAL\">Înregistrează GUID aici</a> sau <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Comandă suport\">cumpără asistență pentru instalarea platformei.</a>",
         "link": "Link",
         "loading": "Se încarcă...",
+        "login_time": "Moment autentificare",
         "logo_info": "Imaginea ta va fi scalată la o înălțime de 40px pentru bara de navigare de sus și o lățime maximă de 250px pentru pagina de pornire. O grafică scalabilă este foarte recomandată.",
         "lookup_mx": "Potriviți destinația cu MX (.outlook.com pentru a direcționa toate mesajele țintite către un MX * .outlook.com peste acest salt)",
         "main_name": "Nume \"mailcow UI\"",
@@ -222,6 +238,13 @@
         "oauth2_revoke_tokens": "Revocă toate jetoanele clientului",
         "optional": "optional",
         "password": "Parolă",
+        "password_length": "Lungime parolă",
+        "password_policy": "Politica pentru parole",
+        "password_policy_chars": "Trebuie să conțină cel puțin un caracter alfabetic",
+        "password_policy_length": "Lungimea minimă a parolei este %d",
+        "password_policy_numbers": "Trebuie să conțină cel puțin o cifră",
+        "password_policy_lowerupper": "Trebuie să conțină și litere mari și litere mici",
+        "password_policy_special_chars": "Trebuie să conțină caractere speciale",
         "password_repeat": "Parola de confirmare (repetă)",
         "priority": "Prioritate",
         "private_key": "Cheie privată",
@@ -261,6 +284,7 @@
         "regen_api_key": "Regenerează cheia API",
         "regex_maps": "Hărți regex",
         "relay_from": "Adresă \"De la:\"",
+        "relay_rcpt": "Adresă \"Către:\"",
         "relay_run": "Execută test",
         "relayhosts": "Transport dependent de expeditor",
         "relayhosts_hint": "Definește transporturile dependente de expeditor pentru a le putea selecta într-un dialog de configurare a domeniilor.<br>\n  Serviciul de transport este întotdeauna \"smtp:\". Este luată în considerare o setare individuală a politicii TLS de ieșire a utilizatorilor.",
@@ -278,6 +302,7 @@
         "rsettings_preset_1": "Dezactivați tot în afară de DKIM și limita de rată pentru utilizatorii autentificați",
         "rsettings_preset_2": "Postmasterii doresc spam",
         "rsettings_preset_3": "Permiteți numai expeditori specifici pentru o căsuță poștală (ex: utilizare numai ca adresa de email internă)",
+        "rsettings_preset_4": "Dezactivați Rspamd pentru domeniu",
         "rspamd-com_settings": "<a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Documente Rspamd</a>\n  - Un nume de setare va fi generat automat, te rog să consulți presetările exemplu de mai jos.",
         "rspamd_global_filters": "Hărți cu filtru global",
         "rspamd_global_filters_agree": "Voi fi atent!",
@@ -289,10 +314,12 @@
         "search_domain_da": "Caută domenii",
         "send": "Trimite",
         "sender": "Expeditor",
+        "service": "Serviciu",
         "service_id": "ID serviciu",
         "source": "Sursă",
         "spamfilter": "Filtru de spam",
         "subject": "Subiect",
+        "success": "Succes",
         "sys_mails": "Mailuri sistem",
         "text": "Text",
         "time": "Timp",
@@ -302,6 +329,7 @@
         "transport_dest_format": "Sintaxa: exemplu.org, .example.org, *, box@example.org (mai multe valori pot fi separate prin virgulă)",
         "transport_maps": "Hărți de transport",
         "transports_hint": "→ O intrare a hărții de transport <b>suprascrie</b> o hartă de transport dependentă de expeditor</b>.<br>\n→ Setările pentru politica TLS de ieșire per-utilizator sunt ignorate și pot fi impuse numai prin intrările hărții politicii TLS.<br>\n→ Serviciul de transport pentru transporturi definite este întotdeauna \"smtp:\".<br>\n→ Adresele care se potrivesc cu \"/localhost$/\" vor fi întotdeauna transportate prin \"local:\", prin urmare, o destinație \"*\" nu se va aplica acelor adrese.<br>\n→ Pentru a determina datele de identificare pentru un hop următor \"[host]:25\", Postfix <b>întotdeauna</b> interoghează pentru \"host\" înainte de a căuta \"[host]:25\". Acest comportament face imposibilă folosirea în același timp a \"host\" și \"[host]:25\".",
+        "transport_test_rcpt_info": "→ Utilizează null@hosted.mailcow.de pentru a testa retransmisia către o destinație străină.",
         "ui_footer": "Subsol (HTML permis)",
         "ui_header_announcement": "Anunțuri",
         "ui_header_announcement_active": "Setează activ anunțul",
@@ -353,6 +381,7 @@
         "global_filter_write_error": "Nu se poate scrie fișier filtru: %s",
         "global_map_invalid": "ID hartă globală %s invalid",
         "global_map_write_error": "Nu se poate scrie ID hartă globală %s: %s",
+        "xmpp_map_write_error": "Harta XMPP nu poate fi scrisă: %s",
         "goto_empty": "Adresa goto nu trebuie să fie goală",
         "goto_invalid": "Adresa goto %s este invalidă",
         "ham_learn_error": "Eroare de învățare Ham: %s",
@@ -387,6 +416,7 @@
         "max_quota_in_use": "Cota cutiilor poștale trebuie să fie mai mare sau egală cu %d MiB",
         "maxquota_empty": "Cota maximă pentru cutia poștală nu trebuie să fie 0.",
         "mysql_error": "Eroare MySQL: %s",
+        "nginx_reload_failed": "Reîncărcarea Nginx eșuată: %s",
         "network_host_invalid": "Rețea sau gazdă invalidă: %s",
         "next_hop_interferes": "%s interferează cu următorul hop %s",
         "next_hop_interferes_any": "Un hop următor existent interferează cu %s",
@@ -437,34 +467,44 @@
         "username_invalid": "Numele de utilizator %s nu poate fi utilizat",
         "validity_missing": "Atribuie o perioadă de valabilitate",
         "value_missing": "Furnizează toate valorile",
-        "yotp_verification_failed": "Verificarea Yubico OTP a eșuat: %s"
+        "yotp_verification_failed": "Verificarea Yubico OTP a eșuat: %s",
+        "xmpp_restart_failed": "XMPP nu a putut fi repornit",
+        "xmpp_reload_failed": "XMPP nu a putut fi reîncărcat"
     },
     "debug": {
         "chart_this_server": "Grafic (acest server)",
         "containers_info": "Informaţii container",
         "disk_usage": "Utilizare disc",
+        "docs": "Documente",
         "external_logs": "Jurnale externe",
         "history_all_servers": "Istoric (toate serverele)",
         "in_memory_logs": "Jurnale din memorie",
         "jvm_memory_solr": "Memorie utilizată de JVM",
+        "last_modified": "Ultima modificare",
         "log_info": "<p><b>jurnalele din memorie</b> pentru mailcow sunt colectate în listele Redis și trimise la LOG_LINES (%d) în fiecare minut pentru a reduce ciocnirea.\n  <br>Jurnalele din memorie nu sunt menite a fi persistente. Toate aplicațiile care înregistrează jurnale în memorie, înregistrează de asemenea jurnale în daemonul Docker și, prin urmare, în driverul de jurnale implicit.\n  <br>Tipul de jurnal din memorie trebuie utilizat pentru depanarea problemelor minore cu containerele.</p>\n  <p><b>Jurnalele externe</b> sunt colectate prin API-ul aplicației respective.</p>\n  <p><b>Jurnalele statice</b> sunt, în majoritate, jurnale de activitate care nu sunt înregistrate în Docker, dar trebuie să fie persistente (cu excepția jurnalelor API).</p>",
+        "login_time": "Moment",
         "logs": "Jurnale",
+        "online_users": "Utilizatori online",
         "restart_container": "Repornire",
+        "service": "Serviciu",
+        "size": "Mărime",
         "solr_dead": "Solr începe, este invalid sau s-a oprit.",
-        "solr_docs": "Documente",
-        "solr_last_modified": "Ultima modificare",
-        "solr_size": "Mărime",
-        "solr_started_at": "Pornit la",
         "solr_status": "Stare Solr",
-        "solr_uptime": "Timp de funcționare",
+        "started_at": "Pornit la",
         "started_on": "Început pe",
         "static_logs": "Jurnale statice",
-        "system_containers": "Sistem și Containere"
+        "success": "Succes",
+        "system_containers": "Sistem și Containere",
+        "uptime": "Timp de funcționare",
+        "username": "Utilizator",
+        "xmpp_dead": "XMPP pornește, este dezactivat sau nefuncțional.",
+        "xmpp_status": "Stare XMPP"
     },
     "diagnostics": {
         "cname_from_a": "Valoare derivată din înregistrarea A/AAAA. Acest lucru este acceptat atâta timp cât înregistrarea indică resursele corecte.",
         "dns_records": "Înregistrări DNS",
         "dns_records_24hours": "Rețineți că modificările aduse DNS-ului pot dura până la 24 de ore pentru a reflecta corect starea lor curentă pe această pagină. Acest mecanism este conceput ca o modalitate să vezi ușor cum să îți configurezi înregistrările DNS și să verifici dacă toate înregistrările sunt stocate corect în DNS.",
+        "dns_records_docs": "Vă rugăm să consultați și <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">documentația</a>.",
         "dns_records_data": "Date corecte",
         "dns_records_name": "Nume",
         "dns_records_status": "Stare curentă",
@@ -473,6 +513,7 @@
     },
     "edit": {
         "active": "Activ",
+        "admin": "Editează administrator",
         "advanced_settings": "Setări avansate",
         "alias": "Editează alias",
         "allow_from_smtp": "Permiteți acestor adrese IP să utilizeze numai <b>SMTP</b>",
@@ -507,13 +548,24 @@
         "full_name": "Nume complet",
         "gal": "Listă globală de adrese",
         "gal_info": "GAL-ul conține toate obiectele dintr-un domeniu și nu poate fi editată de nici un utilizator. <b>Repornește SOGo pentru a aplica modificările.</b>",
+        "xmpp": "Activează XMPP pentru acest domeniu",
+        "xmpp_prefix": "Prefixul XMPP pentru domeniu (\"im\" pentru <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Pentru a solicita certificate pentru XMPP, două înregistrări DNS CNAME ar trebui să trimită de la <b>im</b>.example.org precum și <b>*.im</b>.example.org la <b>%s</b>. De asemenea, rulați verificarea DNS pentru acest domeniu după activarea XMPP.",
+        "xmpp_info": "Această funcție va activa mesageria pentru acest domeniu.",
+        "xmpp_access": "Acces XMPP",
+        "xmpp_access_info": "XMPP trebuie să fie activ pentru acest domeniu.",
+        "xmpp_admin": "Administrator XMPP",
+        "xmpp_admin_info": "<b>Atenție:</b> Promovează un utilizator ca administrator XMPP pentru acest domeniu.",
+        "xmpp_example_jid": "<b>Exemplu JID</b> (autentificare cu parolă email)",
         "generate": "Generează",
         "grant_types": "Tipuri de subvenții",
         "hostname": "Nume gazdă",
         "inactive": "Inactiv",
         "kind": "Fel",
+        "lookup_mx": "Destinația este o expresie regulată care potrivită cu numele MX (<code>.*google\\.com</code> pentru a direcționa toate e-mailurile vizate către un MX care se termină în google.com peste acest hop)",
         "mailbox": "Editează căsuța poștală",
         "mailbox_quota_def": "Cota implicită a căsuței poștale",
+        "mailbox_relayhost_info": "Aplicat numai căsuței poștale și aliasurilor directe, suprascrie un transport dependent de domeniu.",
         "max_aliases": "Număr maxim de aliasuri",
         "max_mailboxes": "Număr maxim de cutii poștale",
         "max_quota": "Cotă maximă pentru cutia poștală (MiB)",
@@ -538,6 +590,9 @@
         "pushover_vars": "Când nu este definit niciun filtru pentru expeditor, toate mailurile vor fi luate în considerare. <br> Filtrele regex, precum și verificările exacte ale expeditorului pot fi definite individual și vor fi luate în considerare secvențial. Ele nu depind unul de celălalt. <br> Variabile utilizabile pentru text și titlu (vă rugăm să luați nota de politicile de protecție a datelor)",
         "pushover_verify": "Verifică credențialele",
         "quota_mb": "Cotă (MiB)",
+        "quota_warning_bcc": "Avertizare cotă BCC",
+        "quota_warning_bcc_info": "Avertismentele vor fi trimise sub formă de copii separate către următorii destinatari. Subiectul va fi completat de numele de utilizator corespunzător între paranteze, de exemplu: <code>Avertisment privind cota (utilizator@example.com)</code>.",
+        "ratelimit": "Limită pentru rata de trimitere",
         "redirect_uri": "Adresă URL de redirecționare/inversare",
         "relay_all": "Retransmite toți destinatarii",
         "relay_all_info": "↪ Dacă alegi să <b>nu</b> retransmiți toți destinatarii, va trebui să adaugi o cutie poștală (\"oarbă\") pentru fiecare destinatar care trebuie retransmis.",
@@ -550,7 +605,7 @@
         "save": "Salvează modificările",
         "scope": "Scop",
         "sender_acl": "Permite trimiterea ca",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Verificarea expeditorului este dezactivată</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Verificarea expeditorului este dezactivată</span>",
         "sender_acl_info": "Dacă utilizatorului A de căsuță poștală îi este permis să trimită ca utilizatorul B, adresa expeditorului nu este afișată automat ca fiind câmp selectabil \"de la\" în SOGo.<br>\r\n  Utilizatorul căsuței poștale B trebuie să creeze o delegație în SOGo pentru a permite utilizatorul cutiei poștale A să selecteze adresa ca expeditor. Pentru a delega o cutie poștală în SOGo, utilizați meniul (trei puncte) din dreapta numelui căsuței poștale în stânga sus, în timp ce vă aflați în vizualizarea e-mailului. Acest comportament nu se aplică adreselor alias.",
         "sieve_desc": "Descriere scurtă",
         "sieve_type": "Tip filtru",
@@ -560,6 +615,7 @@
         "sogo_visible": "Aliasul este vizibil în SOGo",
         "sogo_visible_info": "Această opțiune afectează doar obiecte, care pot fi afișate în SOGo (adrese alias partajate sau ne-partajate cu cel puțin o căsuță poștală locală). Dacă este ascuns, un alias nu va apărea ca expeditor selectabil în SOGo.",
         "spam_alias": "Crează sau modifică adrese alias limitate în funcție de timp",
+        "spam_filter": "Filtru spam",
         "spam_policy": "Adaugă sau elimină elemente în lista albă/neagră",
         "spam_score": "Stabilește un scor de spam personalizat",
         "subfolder2": "Sincronizează în subfolderul destinației<br><small>(gol = nu se utilizează subfolderul)</small>",
@@ -578,9 +634,11 @@
         "confirm_delete": "Confirmă ștergerea",
         "delete_now": "Șterge acum",
         "delete_these_items": "Confirmă modificările aduse următorului id de obiect:",
+        "hibp_check": "Verificare prin haveibeenpwned.com",
         "hibp_nok": "Potrivire! Aceasta este o parolă potențial periculoasă!",
         "hibp_ok": "Nu s-a găsit niciun rezultat.",
         "loading": "Te rog așteaptă...",
+        "nothing_selected": "Nicio selecție",
         "restart_container": "Repornire container",
         "restart_container_info": "<b>Important:</b> O repornire elegantă poate dura ceva timp până la finalizare, așteaptă să termine.",
         "restart_now": "Repornire acum",
@@ -617,6 +675,7 @@
         "active": "Activ",
         "add": "Adaugă",
         "add_alias": "Adaugă alias",
+        "add_alias_expand": "Extinde aliasul ca domeniu alias",
         "add_bcc_entry": "Adaugă hartă BCC",
         "add_domain": "Adaugă domeniu",
         "add_domain_alias": "Adaugă un domeniu alias",
@@ -677,6 +736,7 @@
         "insert_preset": "Inserați un exemplu presetat \"%s\"",
         "kind": "Fel",
         "last_mail_login": "Ultima autentificare pe mail",
+        "last_pw_change": "Ultima modificare a parolei",
         "last_run": "Ultima rulare",
         "last_run_reset": "Programează următorul",
         "mailbox": "Cutie poștală",
@@ -692,6 +752,7 @@
         "no": "&#10005;",
         "no_record": "Nu există înregistrări pentru obiectul %s",
         "no_record_single": "Nici o înregistrare",
+        "open_logs": "Deschide jurnalele",
         "owner": "Proprietar",
         "private_comment": "Comentariu privat",
         "public_comment": "Comentariu public",
@@ -723,7 +784,6 @@
         "sieve_preset_7": "Redirecționează și păstrează/aruncă",
         "sieve_preset_8": "Renunțați la mesajul trimis la o adresă alias din care face parte expeditorul",
         "sieve_preset_header": "Vedeți exemplul de presetări de mai jos. Pentru mai multe detalii accesați <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Conectările SOGo administrative sunt disponibile numai pentru căsuțele poștale cu un profil SOGo existent. Un utilizator trebuie să se fi fost conectat la SOGo cel puțin o dată.",
         "sogo_visible": "Aliasul este vizibil în SOGo",
         "sogo_visible_n": "Ascunde alias în SOGo",
         "sogo_visible_y": "Afișază alias în SOGo",
@@ -770,6 +830,7 @@
         "danger": "Pericol",
         "deliver_inbox": "Livrați în căsuța de e-mail",
         "disabled_by_config": "Configurația actuală a sistemului dezactivează funcția de carantină.",
+        "settings_info": "Numărul maxim de elemente în carantină: %s<br>Mărime maximă email: %s MiB",
         "download_eml": "Descarcă (.eml)",
         "empty": "Nici un rezultat",
         "high_danger": "Ridicat",
@@ -868,10 +929,12 @@
         "mailbox_added": "Cutia poștală %s a fost adăugată",
         "mailbox_modified": "Modificările cutiei poștale %s au fost salvate",
         "mailbox_removed": "Cutia poștală %s a fost eliminată",
+        "nginx_reloaded": "Nginx a fost reîncărcat",
         "object_modified": "Modificările obiectului %s au fost salvate",
         "pushover_settings_edited": "Setările pushover au fost setate cu succes, vă rugăm să verificați credențialele.",
         "qlearn_spam": "ID-ul mesajului %s a fost învățat ca spam și a fost șters",
         "queue_command_success": "Șirul de comenzi a fost terminat cu succes",
+        "password_policy_saved": "Politica pentru parole a fost salvată cu success",
         "recipient_map_entry_deleted": "ID-ul hărții destinatarului %s a fost șters",
         "recipient_map_entry_saved": "Intrarea hărții destinatarului \"%s\" a fost salvată",
         "relayhost_added": "Înregistrarea pentru hartă %s a fost adăugată",
@@ -893,7 +956,10 @@
         "verified_totp_login": "Autentificarea TOTP verificată",
         "verified_u2f_login": "Autentificarea U2F verificată",
         "verified_fido2_login": "Conectare FIDO2 verificată",
-        "verified_yotp_login": "Autentificarea Yubico OTP verificată"
+        "verified_yotp_login": "Autentificarea Yubico OTP verificată",
+        "xmpp_restarted": "Serviciul XMPP a fost repornit",
+        "xmpp_reloaded": "Serviciul XMPP a fost reîncărcat",
+        "xmpp_maps_updated": "Hărțile serviciului XMPP au fost actualizate"
     },
     "tfa": {
         "api_register": "%s utilizează API-ul Yubico Cloud. Obțineți o cheie API pentru cheia dvs. de <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">aici</a>",
@@ -956,9 +1022,11 @@
         "apple_connection_profile_complete": "Acest profil de conexiune include parametrii IMAP și SMTP, precum și calDAV (calendar) și carduri CardDAV (contacte) pentru dispozitivele Apple.",
         "apple_connection_profile_mailonly": "Acest profil de conexiune include parametrii de configurare IMAP și SMTP pentru dispozitivele Apple.",
         "change_password": "Schimbă parola",
+        "clear_recent_successful_connections": "Ștergeți conexiunile reușite văzute",
         "client_configuration": "Afișează ghidurile de configurare pentru clienții de email și smartphone-uri",
         "create_app_passwd": "Crează parola aplicației",
         "create_syncjob": "Crează o nouă lucrare de sincronizare",
+        "created_on": "Creat în",
         "daily": "Zilnic",
         "day": "zi",
         "delete_ays": "Vă rugăm să confirmați stergerea.",
@@ -970,10 +1038,13 @@
         "edit": "Editează",
         "email": "Email",
         "email_and_dav": "Email, calendar și contacte",
+        "empty": "Niciun rezultat",
         "encryption": "Criptare",
         "excludes": "Exclude",
         "expire_in": "Expiră în",
+        "fido2_webauthn": "FIDO2/AutWeb",
         "force_pw_update": "<b>Trebuie</b> să setezi o nouă parolă pentru a putea accesa serviciile legate de grupuri.",
+        "from": "de la",
         "generate": "generează",
         "hour": "oră",
         "hourly": "Din oră în oră",
@@ -982,17 +1053,26 @@
         "interval": "Interval",
         "is_catch_all": "Catch-all pentru domeniu/i",
         "last_mail_login": "Ultima autentificare pe mail",
+        "last_pw_change": "Ultima modificare a parolei",
         "last_run": "Ultima rulare",
+        "last_ui_login": "Ultima autentificare UI",
         "loading": "Se încarcă...",
+        "login_history": "Istoric autentificare",
+        "mailbox": "Mailbox",
         "mailbox_details": "Informații cutie poștală",
+        "mailbox_general": "Generale",
+        "mailbox_settings": "Setări",
         "messages": "mesaje",
+        "month": "lună",
+        "months": "luni",
         "never": "Niciodată",
         "new_password": "Parolă nouă",
-        "new_password_description": "Cerință: 6 caractere lungime, litere și numere.",
         "new_password_repeat": "Parola de confirmare (repetă)",
         "no_active_filter": "Nu este disponibil niciun filtru activ",
         "no_last_login": "Nu există informații despre ultima autentificare în interfață",
         "no_record": "Nici o înregistrare",
+        "open_logs": "Deschide jurnalele",
+        "open_webmail_sso": "Autentificare în webmail",
         "password": "Parolă",
         "password_now": "Parola curentă (confirmă modificările)",
         "password_repeat": "Parolă (repetă)",
@@ -1012,6 +1092,7 @@
         "quarantine_category": "Schimbați categoria notificărilor despre carantină",
         "quarantine_notification_info": "Odată ce o notificare a fost trimisă, elementele vor fi marcate ca fiind \"notificate\" și nu vor fi trimise alte notificări pentru acest articol.",
         "quarantine_category_info": "Categoria de notificări \"Respins\" include e-mailurile care au fost respinse, în timp ce \"Dosarul nedorit\" va notifica un utilizator despre mesajele care au fost introduse în dosarul nedorit.",
+        "recent_successful_connections": "Conexiuni reușite văzute",
         "remove": "Șterge",
         "running": "Funcţionare",
         "save": "Salvează modificările",
@@ -1062,7 +1143,9 @@
         "waiting": "Aşteptare",
         "week": "săptămână",
         "weekly": "Săptămânal",
-        "weeks": "săptămâni"
+        "weeks": "săptămâni",
+        "year": "an",
+        "years": "ani"
     },
     "warning": {
         "cannot_delete_self": "Nu se poate șterge utilizatorul conectat",
@@ -1071,6 +1154,7 @@
         "fuzzy_learn_error": "Eroare de învățare fuzzy hash: %s",
         "hash_not_found": "Hash-ul nu a fost găsit",
         "ip_invalid": "S-a ignorat adresa IP invalidă: %s",
+        "is_not_primary_alias": "Alias non-primary omis %s",
         "no_active_admin": "Nu se poate dezactiva ultimul administrator activ",
         "quota_exceeded_scope": "Cota de spațiu a domeniului depășită: Numai căsuțe poștale nelimitate pot fi create pe acest domeniu.",
         "session_token": "Token formular invalid: Nepotrivire token",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ru.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ru.json
index 3eba344..f24ae35 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.ru.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.ru.json
@@ -26,7 +26,11 @@
         "syncjobs": "Задания синхронизации",
         "tls_policy": "Политика шифрования",
         "unlimited_quota": "Неограниченная квота для почтовых ящиков",
-        "domain_desc": "Изменение описания домена"
+        "domain_desc": "Изменение описания домена",
+        "xmpp_admin": "Повышение пользователя XMPP до администратора",
+        "xmpp_domain_access": "Настройка доступа XMPP для домена",
+        "xmpp_mailbox_access": "Настройка доступа XMPP для пользователей",
+        "xmpp_prefix": "Измение субдомена (префикса) XMPP"
     },
     "add": {
         "activate_filter_warn": "Активация этого фильтра отключит все остальные фильтры этого типа.",
@@ -35,14 +39,14 @@
         "add_domain_only": "Только добавить домен",
         "add_domain_restart": "Добавить домен и перезапустить SOGo",
         "alias_address": "Псевдоним/ы",
-        "alias_address_info": "<small>Укажите почтовые адреса разделенные запятыми или, если хотите пересылать все сообщения для домена владельцам псевонима то: <code>@example.com</code>. <b>Только домены mailcow разрешены</b>.</small>",
+        "alias_address_info": "<small>Укажите почтовые адреса разделенные запятыми или, если хотите пересылать все сообщения для домена владельцам псевдонима то: <code>@example.com</code>. <b>Только домены mailcow разрешены</b>.</small>",
         "alias_domain": "Псевдоним домена",
-        "alias_domain_info": "<small>Действительные имена доменов, разделенные запятыми.</small>",
+        "alias_domain_info": "<small>Действительные имена доменов, раздёленные запятыми.</small>",
         "app_name": "Название приложения",
         "app_password": "Добавить пароль приложения",
         "automap": "Автоматическое слияние папок (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
         "backup_mx_options": "Параметры резервного MX",
-        "comment_info": "Приватный комментарий не виден пользователям, а публичный - отображается рядом с певдонимом в личном кабинете пользователя.",
+        "comment_info": "Приватный комментарий не виден пользователям, а публичный - отображается рядом с псевдонимом в личном кабинете пользователя.",
         "custom_params": "Пользовательские параметры",
         "custom_params_hint": "Верно: --param=xy, не верно: --param xy",
         "delete1": "Удаление из источника после завершения",
@@ -50,7 +54,7 @@
         "delete2duplicates": "Удаление дубликатов по назначению",
         "description": "Описание",
         "destination": "Назначение",
-        "disable_login": "Вход в систему запрещен",
+        "disable_login": "Вход в систему запрещён",
         "domain": "Домен",
         "domain_matches_hostname": "Домен %s соответствует имени хоста",
         "domain_quota_m": "Квота домена (MiB)",
@@ -59,9 +63,15 @@
         "full_name": "Полное имя",
         "gal": "GAL - Глобальная адресная книга",
         "gal_info": "GAL содержит все объекты домена и не подлежит редактированию. Информация о занятости в SOGo будет отсутствовать для домена, если эта функция не будет включена! <b>Требуется перезапустить SOGo, чтобы изменения применились.</b>",
+        "xmpp": "Активировать XMPP для этого домена",
+        "xmpp_info": "Эта опция добавит функциональность чата для этого домена.",
+        "xmpp_access": "Пользователь XMPP",
+        "xmpp_access_info": "XMPP должен быть включен для этого домена.",
+        "xmpp_admin": "Администратор XMPP",
+        "xmpp_admin_info": "Повысить пользователя XMPP до <span class=\"text-danger\">администратора домена</span>.",
         "generate": "сгенерировать",
-        "goto_ham": "Запомнить как <span class=\"text-success\"><b>хам</b></span>",
-        "goto_null": "Отключить входящюю почту",
+        "goto_ham": "Запомнить как <span class=\"text-success\"><b>&laquo;ham&raquo;</b></span>",
+        "goto_null": "Отключить входящую почту",
         "goto_spam": "Запомнить как <span class=\"text-danger\"><b>спам</b></span>",
         "hostname": "Имя хоста",
         "inactive": "Неактивный",
@@ -94,7 +104,7 @@
         "skipcrossduplicates": "Пропускать повторяющиеся сообщения в папках",
         "subscribeall": "Подписаться на все папки и подпапки",
         "syncjob": "Добавить задание синхронизации",
-        "syncjob_hint": "К сведению: пароли к вашему аккаунту бытут сохранены на сервере в виде простого текста!",
+        "syncjob_hint": "К сведению: пароли к вашему аккаунту будут сохранены на сервере в виде простого текста!",
         "target_address": "Владельцы псевдонима",
         "target_address_info": "<small>Адреса почтовых ящиков, разделенные запятыми.</small>",
         "target_domain": "Целевой домен",
@@ -123,6 +133,8 @@
         "add_transports_hint": "Пожалуйста имейте в виду, что данные для аутентификации будут храниться в виде обычного текста.",
         "additional_rows": " добавлены дополнительные строки",
         "admin": "Администратор",
+        "admins": "Администраторы",
+        "admins_ldap": "LDAP Администраторы",
         "admin_details": "Изменить данные администратора",
         "admin_domains": "Домен назначения",
         "advanced_settings": "Расширенные настройки",
@@ -136,7 +148,7 @@
         "arrival_time": "Время получения (час.пояс сервера)",
         "authed_user": "Автор. польз.",
         "ays": "Вы уверены что хотите продолжить?",
-        "ban_list_info": "Список забаненных IP адресов: <b>подсеть (оставшееся время бана) - [действие]</b>.<br />IP-адреса, находящиеся в очереди на разблокирование, будут удалены из списка активных банов в течение нескольких секунд.<br />Красная метка обозначает что подсеть/хост находится в черном списоке.",
+        "ban_list_info": "Список забаненных IP адресов: <b>подсеть (оставшееся время бана) - [действие]</b>.<br />IP-адреса, находящиеся в очереди на разблокирование, будут удалены из списка активных банов в течение нескольких секунд.<br />Красная метка обозначает что подсеть/хост находится в черном списке.",
         "change_logo": "Изменить логотип",
         "configuration": "Глобальные настройки",
         "convert_html_to_text": "Сконвертировать HTML в обычный текст",
@@ -147,7 +159,7 @@
         "destination": "Назначение",
         "dkim_add_key": "Добавить ARC/DKIM ключ",
         "dkim_domains_selector": "Selector",
-        "dkim_domains_wo_keys": "Выберать домены с отсутствующими DKIM ключами",
+        "dkim_domains_wo_keys": "Выбрать домены с отсутствующими DKIM ключами",
         "dkim_from": "из",
         "dkim_from_title": "Исходный домен для копирования ключа",
         "dkim_key_length": "Длина DKIM ключа (bits)",
@@ -158,7 +170,7 @@
         "dkim_overwrite_key": "Перезаписать существующий ключ DKIM",
         "dkim_private_key": "Закрытый ключ",
         "dkim_to": "в",
-        "dkim_to_title": "Целевой домен/ы, учитите что DKIM будет перезаписан",
+        "dkim_to_title": "Целевой домен/ы (учтите, что DKIM будет перезаписан)",
         "domain": "Домен",
         "domain_admin": "Администратор домена",
         "domain_admins": "Администраторы домена",
@@ -183,12 +195,12 @@
         "flush_queue": "Отправить все сообщения",
         "forwarding_hosts": "Переадресация хостов",
         "forwarding_hosts_add_hint": "Можно указывать: IPv4/IPv6 подсети в нотации CIDR, имена хостов (которые будут разрешаться в IP-адреса) или доменные имена (которые будут решаться с IP-адресами путем запроса SPF записей или, в случае их отсутствия - запросом MX записей).",
-        "forwarding_hosts_hint": "Входящие сообщения безоговорочно принимаются от любых хостов, перечисленных здесь. Эти хосты не проходят проверку DNSBL и graylisting. Спам, полученный от них, никогда не отклоняется, но при желании можно включить фильтр спама и письма с плохим рейтингом будут попадать в Junk. Наиболее распространенное использование - указать почтовые серверы, на которых вы установили правило, которое перенаправляет входящие электронные письма на ваш почтовый сервер.",
+        "forwarding_hosts_hint": "Входящие сообщения безоговорочно принимаются от любых хостов, перечисленных здесь. Эти хосты не проходят проверку DNSBL и graylisting. Спам, полученный от них, никогда не отклоняется, но при желании можно включить спам фильтр и письма с плохим рейтингом будут попадать в Junk. Наиболее распространенное использование - указать почтовые серверы, на которых вы установили правило, которое перенаправляет входящие электронные письма на ваш почтовый сервер.",
         "from": "От",
         "generate": "сгенерировать",
         "guid": "GUID - уникальный ID",
         "guid_and_license": "Лицензия и GUID",
-        "hash_remove_info": "Удаление хеша лимитов отправки (если оно правило настроено) полностью сбрасывает счетчики лимитов.<br>\r\n  Каждый хэш обозначен отдельным цветом.",
+        "hash_remove_info": "Удаление хеша лимитов отправки (если правило настроено) полностью сбрасывает счётчики лимитов.<br>\r\n  Каждый хэш обозначен своим цветом.",
         "help_text": "Заменить текст справки на странице логина (использование HTML разрешено)",
         "host": "Хост",
         "html": "HTML",
@@ -200,7 +212,7 @@
         "include_exclude_info": "По умолчанию - без выбора - <b>все почтовые ящики</b> адресованы",
         "includes": "Включить этих получателей",
         "last_applied": "Посл. применение",
-        "license_info": "Лицензия не обезательна, но ее приобритение помогает дальнейшему развитию mailcow.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Зарегистрируйте свой GUID здесь</a> или <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Заказать поддержку\">приобретите поддержку для вашей установки mailcow.</a>",
+        "license_info": "Лицензия не обязательна, но её приобретение помогает дальнейшему развитию mailcow.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Зарегистрируйте свой GUID здесь</a> или <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Заказать поддержку\">приобретите поддержку для вашей установки mailcow.</a>",
         "link": "Ссылка",
         "loading": "Пожалуйста, подождите...",
         "logo_info": "Ваше изображение будет масштабироваться до высоты 40px для верхней панели навигации и до 250px ширины для стартовой страницы. <br>Рекомендуется использовать векторную графику, на пример: .svg.",
@@ -211,17 +223,24 @@
         "message_size": "Размер сообщения",
         "nexthop": "Следующий хост",
         "no": "&#10005;",
-        "no_active_bans": "В данный момент нет забаненых подсетей/хостов",
+        "no_active_bans": "В данный момент нет забаненных подсетей/хостов",
         "no_new_rows": "Нет доступных строк",
         "no_record": "Нет записей",
         "oauth2_client_id": "ID клиента",
         "oauth2_client_secret": "Секретный ключ пользователя",
-        "oauth2_info": "Реализация OAuth2 поддерживает предоставления кодов авторизации и выдает токены продленния сесии.<br>\r\nСервер также автоматически выдает новый токен продления сессии, после того, как предыдущий был использован.<br><br>\r\n→ Scope по умолчанию: <i>profile</i>. Только пользователи почтовых аккаунтов могут проходить аутентификацию через OAuth2. Если параметр области не указан, он возвращается к <i>profile</i>.<br>\r\n→ Параметр <i>state</i> должен быть отправлен клиентом как часть запроса для авторизации.<br><br>\r\nПути для запросов OAuth2 API: <br>\r\n<ul>\r\n  <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nГенерирование нового клиентского секрета не приводит к истечению существующих кодов авторизации, но они не смогут обновить свой токен.<br><br>\r\nОтзыв клиентских токенов приведет к немедленному прекращению всех активных сеансов. Все клиенты должны будут пройти повторную аутентификацию.",
+        "oauth2_info": "Реализация OAuth2 поддерживает предоставления кодов авторизации и выдает токены продления сессии.<br>\r\nСервер также автоматически выдает новый токен продления сессии, после того, как предыдущий был использован.<br><br>\r\n→ Scope по умолчанию: <i>profile</i>. Только пользователи почтовых аккаунтов могут проходить аутентификацию через OAuth2. Если параметр области не указан, он возвращается к <i>profile</i>.<br>\r\n→ Параметр <i>state</i> должен быть отправлен клиентом как часть запроса для авторизации.<br><br>\r\nПути для запросов OAuth2 API: <br>\r\n<ul>\r\n  <li>Authorization endpoint: <code>/oauth/authorize</code></li>\r\n  <li>Token endpoint: <code>/oauth/token</code></li>\r\n  <li>Resource page:  <code>/oauth/profile</code></li>\r\n</ul>\r\nГенерирование нового клиентского секрета не приводит к истечению существующих кодов авторизации, но они не смогут обновить свой токен.<br><br>\r\nОтзыв клиентских токенов приведет к немедленному прекращению всех активных сеансов. Все клиенты должны будут пройти повторную аутентификацию.",
         "oauth2_redirect_uri": "Переадресация URI",
         "oauth2_renew_secret": "Сгенерировать новый ключ клиента",
         "oauth2_revoke_tokens": "Отозвать все клиентские токены",
-        "optional": "опцыонально",
+        "optional": "опционально",
         "password": "Пароль",
+        "password_length": "Минимальная длина пароля",
+        "password_policy": "Политика паролей",
+        "password_policy_chars": "Должен содержать алфавитный символ",
+        "password_policy_length": "Минимальная длина пароля %d символов",
+        "password_policy_numbers": "Должен содержать цифру",
+        "password_policy_lowerupper": "Должны содержать символы верхнего и нижнего регистров",
+        "password_policy_special_chars": "Должны содержать специальный символ",
         "password_repeat": "Подтверждение пароля (повтор)",
         "priority": "Приоритет",
         "private_key": "Закрытый ключ",
@@ -229,8 +248,8 @@
         "quarantine_bcc": "Отправка копии всех уведомлений (BCC) к получателю:<br><small><b>Получатель должен быть внутренним, так как почта не подписана и не проверена. </b></br>Отключено, если получатель не указан.</small>",
         "quarantine_exclude_domains": "Исключить домены и псевдонимы доменов",
         "quarantine_max_age": "Максимальный период хранения в днях<br><small>Значение должно быть равно или больше 1 дня.</small>",
-        "quarantine_max_size": "Максимальный размер в MiB (письма большего размера не будет сохранены):<br><small>0 <b>не означает</b> неограниченый размер.</small>",
-        "quarantine_max_score": "Не уведомлять о спаме если оценка письма выче чем:<br><small>По умолчанию 9999.0</small>",
+        "quarantine_max_size": "Максимальный размер в MiB (письма большего размера не будет сохранены):<br><small>0 означает, что карантин <b>отключён</b>.</small>",
+        "quarantine_max_score": "Не уведомлять о спаме, если оценка письма выше, чем:<br><small>По умолчанию 9999.0</small>",
         "quarantine_notification_html": "Шаблон уведомления:<br><small>Оставьте пустым, чтобы восстановить шаблон по умолчанию.</small>",
         "quarantine_notification_sender": "Email-адрес для отправки уведомления",
         "quarantine_notification_subject": "Тема письма",
@@ -238,7 +257,7 @@
         "quarantine_release_format": "Формат доставки писем после восстановления",
         "quarantine_release_format_att": "Как вложение",
         "quarantine_release_format_raw": "Оригинальное письмо",
-        "quarantine_retention_size": "Количество писем сохраненных в карантине на аккаунт:<br><small>0 значит что лимита <b>нет</b>.</small>",
+        "quarantine_retention_size": "Количество писем, сохраняемых в карантине на аккаунт:<br><small>0 означает, что карантин <b>отключён</b>.</small>",
         "queue_ays": "Пожалуйста, подтвердите, что вы хотите удалить все элементы из очереди.",
         "queue_deliver_mail": "Доставить",
         "queue_hold_mail": "Поставить на удержание",
@@ -254,13 +273,14 @@
         "quota_notifications_vars": "{{percent}} равно текущей квоте пользователя<br>{{username}} - имя почтового аккаунта",
         "r_active": "Включенные ограничения",
         "r_inactive": "Отключенные ограничения",
-        "r_info": "Не активные (серые) елементы списка ограничений - это не валидные ограничения, и они не могут быть перемещены. <br>Вы можете добавить новые элементы в <code>inc/vars.local.inc.php</code> чтобы иметь возможность настраивать их.",
+        "r_info": "Не активные (серые) элементы списка ограничений - это не валидные ограничения, и они не могут быть перемещены. <br>Вы можете добавить новые элементы в <code>inc/vars.local.inc.php</code> чтобы иметь возможность настраивать их.",
         "rate_name": "Название очереди",
         "recipients": "Получатели",
         "refresh": "Обновить",
         "regen_api_key": "Сгенерировать новый ключ для API",
         "regex_maps": "Фильтрация с помощью регулярных выражений",
-        "relay_from": "\"От:\" адрес",
+        "relay_from": "\"От:\"",
+        "relay_rcpt": "\"Кому:\"",
         "relay_run": "Запустить тест",
         "relayhosts": "Транспортировка в зависимости от отправителя",
         "relayhosts_hint": "Определите промежуточные узлы здесь, чтобы иметь возможность выбрать их в диалоговом окне конфигурации доменов.",
@@ -275,14 +295,14 @@
         "rsetting_no_selection": "Пожалуйста, выберите правило",
         "rsetting_none": "Нет доступных правил",
         "rsettings_insert_preset": "Вставить пример \"%s\"",
-        "rsettings_preset_1": "Disable all but DKIM and rate limit for authenticated users",
+        "rsettings_preset_1": "Отключить все, кроме DKIM и ограничения скорости для аутентифицированных пользователей ",
         "rsettings_preset_2": "Postmasters want spam",
-        "rsettings_preset_3": "Only allow specific senders for a mailbox (i.e. usage as internal mailbox only)",
-        "rspamd-com_settings": "Имена правил будут сгенерированы на основе их ID.<br> Инструкция доступна на сайте <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">документация Rspamd user settings</a>, заготовленые шаблоны:",
+        "rsettings_preset_3": "Разрешить только определённых отправителей для почтового ящика (использование только в качестве внутреннего почтового ящика) ",
+        "rspamd-com_settings": "Имена правил будут сгенерированы на основе их ID.<br> Инструкция доступна на сайте <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">документация Rspamd user settings</a>, заготовленные шаблоны:",
         "rspamd_global_filters": "Глобальные правила фильтрации",
-        "rspamd_global_filters_agree": "Я понимаю что я делаю, и буду осторожен!",
+        "rspamd_global_filters_agree": "Я понимаю, что я делаю, и буду осторожен!",
         "rspamd_global_filters_info": "Глобальные правила фильтрации содержат различные виды глобальных черных и белых списков.",
-        "rspamd_global_filters_regex": "Названия фильтров отражают их предназначение. Все правила должены состоять из регулярных выражений в формате \"/pattern/options\" (на пример: <code>/.+@domain\\.tld/i</code>).<br>\r\nНе смотря на то что перед сохранением правил выполняются проверка регулярных выражения, функциональность Rspamds может быть нарушена, если будет использован<br>\r\n некорректный синтаксис. Бульте вниматильны при написании правил.<br>Электронные письма от адресов электронной почты проходящие по регулярным выражениям черных списков будут отклонены без сохранения в карантин.<br>\r\n Rspamd попытается прочитать содержимое правил при их изменении. Но, если что, вы можете <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">перезапустить Rspamd</a>, что бы приминить последние изменения принудительно.",
+        "rspamd_global_filters_regex": "Названия фильтров отражают их предназначение. Все правила должены состоять из регулярных выражений в формате \"/pattern/options\" (на пример: <code>/.+@domain\\.tld/i</code>).<br>\r\nНесмотря на то, что перед сохранением правил выполняется проверка регулярных выражений, функциональность Rspamds может быть нарушена, если будет использован<br>\r\n некорректный синтаксис. Будьте внимательны при написании правил.<br>Электронные письма от адресов электронной почты, проходящие по регулярным выражениям черных списков, будут отклонены без сохранения в карантин.<br>\r\n Rspamd попытается прочитать содержимое правил при их изменении. Но, если что, вы можете <a href=\"\" data-toggle=\"modal\" data-container=\"rspamd-mailcow\" data-target=\"#RestartContainer\">перезапустить Rspamd</a>, чтобы принять последние изменения принудительно.",
         "rspamd_settings_map": "Правила Rspamd",
         "sal_level": "Уровень Муу",
         "save": "Сохранить изменения",
@@ -291,17 +311,18 @@
         "sender": "Отправитель",
         "service_id": "ID сервиса",
         "source": "Источник",
-        "spamfilter": "Фильтр спама",
+        "spamfilter": "Спам фильтр",
         "subject": "Тема письма",
         "sys_mails": "Системные сообщения",
         "text": "Обычный текст",
         "time": "Время",
-        "title": "Заголовок",
-        "title_name": "Заглавие сайта \"mailcow UI\"",
+        "title": "Название \"mailcow UI\" для страницы входа:",
+        "title_name": "Заголовок <b>title</b> \"mailcow UI\":",
         "to_top": "Вернуться к началу",
         "transport_dest_format": "example.org, .example.org, *, box@example.org (несколько значений могут быть разделены запятыми)",
         "transport_maps": "Глобальные правила отправки",
-        "transports_hint": "→ Записи в transport map <b>отменяют</b> sender-dependent transport map</b>.<br>\r\n→ Пользовательские политики TLS для исодящей почты будут проигнорированы и будут использовать политику TLS для записей используемых сдесь.<br>\r\n→ Протокол для доставки всегда \"smtp:\".<br>\r\n→ Адреса соответствующие \"/localhost$/\" всегда будут доставлены \"local:\", следовательно политика \"*\" не распостраняется на них.<br>\r\n→ Чтобы определить учетные данные для следующего узла \"[host]:25\", Postfix <b>всегда</b> ищет данные для \"host\" перед тем как искать \"[host]:25\". Такое поведение делает невозможным использование \"host\" and \"[host]:25\" одновременно.",
+        "transports_hint": "→ Записи в transport map <b>отменяют</b> sender-dependent transport map</b>.<br>\r\n→ Пользовательские политики TLS для исходящей почты будут проигнорированы и будут использовать политику TLS для записей используемых здесь.<br>\r\n→ Протокол для доставки всегда \"smtp:\".<br>\r\n→ Адреса соответствующие \"/localhost$/\" всегда будут доставлены \"local:\", следовательно политика \"*\" не распространяется на них.<br>\r\n→ Чтобы определить учётные данные для следующего узла \"[host]:25\", Postfix <b>всегда</b> ищет данные для \"host\" перед тем как искать \"[host]:25\". Такое поведение делает невозможным использование \"host\" and \"[host]:25\" одновременно.",
+        "transport_test_rcpt_info": "→ Используйте null@hosted.mailcow.de для тестирования пересылки на внешний пункт назначения.",
         "ui_footer": "Добавить нижний колонтитул (использование HTML разрешено)",
         "ui_header_announcement": "Объявления",
         "ui_header_announcement_active": "Активировать объявление",
@@ -312,9 +333,9 @@
         "ui_header_announcement_type_danger": "Очень важное",
         "ui_header_announcement_type_info": "Инфо",
         "ui_header_announcement_type_warning": "Важное",
-        "ui_texts": "UI найменования и описания",
+        "ui_texts": "UI наименования и описания",
         "unban_pending": "ожидает разблокировки",
-        "unchanged_if_empty": "Если без изменений оставьте пустым",
+        "unchanged_if_empty": "Если без изменений, оставьте пустым",
         "upload": "Загрузить",
         "username": "Имя пользователя",
         "validate_license_now": "Получить лицензию на основе GUID с сервера лицензий",
@@ -322,7 +343,7 @@
         "yes": "&#10003;"
     },
     "danger": {
-        "access_denied": "Доступ запрещен или указаны неверные данные",
+        "access_denied": "Доступ запрещён, или указаны неверные данные",
         "alias_domain_invalid": "Недопустимый псевдоним домена",
         "alias_empty": "Псевдоним не может быть пустым",
         "alias_goto_identical": "Псевдоним и основной адрес не могут быть идентичными",
@@ -333,8 +354,8 @@
         "app_passwd_id_invalid": "Пароль приложения ID %s неверный",
         "bcc_empty": "Назначение BCC не может быть пустым",
         "bcc_exists": "Для типов %s уже существует карта BCC %s",
-        "bcc_must_be_email": "Назначение BCC %s является не валдиным адресом электронной почты",
-        "comment_too_long": "Комментарий слишком длинный, макс. 160 символов разрешено использовать.",
+        "bcc_must_be_email": "Назначение BCC %s не является правильным адресом электронной почты",
+        "comment_too_long": "Комментарий слишком длинный. Разрешено использовать максимум 160 символов.",
         "defquota_empty": "Квота по умолчанию не может быть 0.",
         "description_invalid": "Недопустимое описание ресурса %s",
         "dkim_domain_or_sel_exists": "Ключ DKIM для \"%s\" уже существует",
@@ -348,24 +369,25 @@
         "extra_acl_invalid": "Адрес внешнего отправителя \"%s\" не валидный.",
         "extra_acl_invalid_domain": "Адрес внешнего отправителя \"%s\" не валидный домен.",
         "file_open_error": "Файл не может быть открыт на запись",
-        "filter_type": "Не верный тип фильтра",
+        "filter_type": "Неверный тип фильтра",
         "from_invalid": "Отправитель не может быть пустым",
         "global_filter_write_error": "Ошибка записи фильтра в файл: %s",
         "global_map_invalid": "Идентификатор глобального правила %s не валидный",
         "global_map_write_error": "Не удалось создать глобальное правило ID %s: %s",
+        "xmpp_map_write_error": "Ошибка записи настроек XMPP: %s",
         "goto_empty": "Псевдоним должен содержать по крайней мере один валидный адрес владельца",
         "goto_invalid": "Недопустимый основной адрес %s",
-        "ham_learn_error": "Ошибка при обучении хам фильтра: %s",
+        "ham_learn_error": "Ошибка при обучении &laquo;ham&raquo; фильтра: %s",
         "imagick_exception": "Ошибка в Imagick при чтении изображения",
         "img_invalid": "Невозможно проверить файл изображения",
         "img_tmp_missing": "Невозможно проверить файл изображения: временный файл не найден",
-        "invalid_bcc_map_type": "Не верный тип правила BBC",
-        "invalid_destination": "Назначение \"%s\" указано не верно",
-        "invalid_filter_type": "Не верный тип фильтра",
-        "invalid_host": "Хост %s указан не верно",
-        "invalid_mime_type": "Не верный mime type",
-        "invalid_nexthop": "Формат следующего хоста не верен",
-        "invalid_nexthop_authenticated": "Cледующий хост существует с разными данными авторизации, пожалуйста, обновите существующие данные авторизации сначала для этого хоста.",
+        "invalid_bcc_map_type": "Неверный тип правила BBC",
+        "invalid_destination": "Назначение \"%s\" указано неверно",
+        "invalid_filter_type": "Неверный тип фильтра",
+        "invalid_host": "Хост %s указан неверно",
+        "invalid_mime_type": "Неверный mime type",
+        "invalid_nexthop": "Формат следующего хоста неверен",
+        "invalid_nexthop_authenticated": "Следующий хост существует с разными данными авторизации, пожалуйста, обновите существующие данные авторизации сначала для этого хоста.",
         "invalid_recipient_map_new": "Новый получатель: %s не валидный",
         "invalid_recipient_map_old": "Первоначальный получатель: %s не валидный",
         "ip_list_empty": "Список разрешенных IP адресов не может быть пустым",
@@ -384,9 +406,10 @@
         "map_content_empty": "Содержание правила не может быть пустым",
         "max_alias_exceeded": "Превышено максимальное количество псевдонимов",
         "max_mailbox_exceeded": "Превышено максимальное количество почтовых ящиков (%d из %d)",
-        "max_quota_in_use": "Квота почтового аккаунта должна быть больше или равена %d MiB",
+        "max_quota_in_use": "Квота почтового аккаунта должна быть больше или равна %d MiB",
         "maxquota_empty": "Максимальная квота почтового аккаунта не должна быть 0.",
         "mysql_error": "Ошибка в MySQL: %s",
+        "nginx_reload_failed": "Обновление конфигурации Nginx не удалось: %s",
         "network_host_invalid": "Сеть или хост: %s не валидный",
         "next_hop_interferes": "%s пересекается с %s",
         "next_hop_interferes_any": "Существующий хост пересекается с %s",
@@ -407,7 +430,7 @@
         "redis_error": "Ошибка в Redis: %s",
         "relayhost_invalid": "Правило %s не валидное",
         "release_send_failed": "Сообщение не может быть восстановлено: %s",
-        "reset_f2b_regex": "Сброс фильтров не был выполнен за отведеный промежуток времени, пожалуйста, повторите попытку или подождите еще несколько секунд и перезагрузите веб страницу.",
+        "reset_f2b_regex": "Сброс фильтров не был выполнен за отведённый промежуток времени, пожалуйста, повторите попытку или подождите еще несколько секунд и перезагрузите веб страницу.",
         "resource_invalid": "Недопустимое имя ресурса",
         "rl_timeframe": "Не верный временной интервал для лимита отправки",
         "rspamd_ui_pw_length": "Длина пароля должна составлять не менее 6 символов для Rspamd UI",
@@ -433,11 +456,13 @@
         "fido2_verification_failed": "Ошибка валидации FIDO2: %s",
         "unknown": "Произошла неизвестная ошибка",
         "unknown_tfa_method": "Неизвестный метод TFA",
-        "unlimited_quota_acl": "Неограниченная квота запрещена политкой доступа",
+        "unlimited_quota_acl": "Неограниченная квота запрещена политикой доступа",
         "username_invalid": "Имя пользователя %s нельзя использовать",
         "validity_missing": "Пожалуйста, назначьте срок действия",
         "value_missing": "Пожалуйста заполните все поля",
-        "yotp_verification_failed": "Ошибка валидации Yubico OTP: %s"
+        "yotp_verification_failed": "Ошибка валидации Yubico OTP: %s",
+        "xmpp_restart_failed": "Перезагрузка XMPP не удалась",
+        "xmpp_reload_failed": "Обновление конфигурации Dovecot не удалось"
     },
     "debug": {
         "chart_this_server": "Диаграмма (текущий сервер)",
@@ -447,49 +472,54 @@
         "history_all_servers": "История (все серверы)",
         "in_memory_logs": "Журналы контейнеров",
         "jvm_memory_solr": "Использовано оперативной памяти JVM",
-        "log_info": "<p><b>Журналы контейнеров</b> mailcow сохраняются в Redis, и раз в минуту строки журнала за приделами <code>LOG_LINES (%d)</code> удаляются, чтобы уменьшить нагрузку на сервер.\r\n  <br> Сами журналы контейнеров не сохраняются после перезагрузка контейнера. Все контейнеры дополнительно пишут логи в службу Docker и следовательно используют драйвер логирования по умолчанию. Журналы контейнеров предусмотрены только для отладки мелких проблем. Для других задач, пожалуйста, настройте драйвер логирования Docker под свои задачи.</p>\r\n  <p><b>Внешние журналы</b> собираются через API приложений.</p>\r\n  <p><b>Статические журналы</b> - это в основном журналы активности, которые не записываются в Dockerd, но все равно должны быть постоянными (за исключением журналов API).</p>",
+        "log_info": "<p><b>Журналы контейнеров</b> mailcow сохраняются в Redis, и раз в минуту строки журнала за пределами <code>LOG_LINES (%d)</code> удаляются, чтобы уменьшить нагрузку на сервер.\r\n  <br>Сами журналы контейнеров не сохраняются после перезагрузки контейнера. Все контейнеры дополнительно пишут логи в службу Docker, и, следовательно, используют драйвер логирования по умолчанию. Журналы контейнеров предусмотрены только для отладки мелких проблем. Для других задач, пожалуйста, настройте драйвер логирования Docker самостоятельно.</p>\r\n  <p><b>Внешние журналы</b> собираются через API приложений.</p>\r\n  <p><b>Статические журналы</b> &ndash; это, в основном, журналы активности, которые не записываются в Dockerd, но все равно должны быть постоянными (за исключением журналов API).</p>",
         "logs": "Журналы",
         "restart_container": "Перезапустить",
-        "solr_dead": "Solr не запущен. Если вы включили Solf в файле настроек <code>mailcow.conf</code> и это сообщение отображает более получаса, скорее всего Solr сломан.",
-        "solr_docs": "Проиндексировано обьектов",
-        "solr_last_modified": "Последние изменения",
-        "solr_size": "Индексы занимают",
-        "solr_started_at": "Запущен",
+        "solr_dead": "Solr не запущен. Если вы включили Solf в файле настроек <code>mailcow.conf</code> и это сообщение отображается более получаса, скорее всего Solr сломан.",
+        "xmpp_dead": "XMPP не запущен. Если вы включили XMPP в настройках домена и это сообщение отображается более получаса, скорее всего XMPP сломан.",
+        "docs": "Проиндексировано объектов",
+        "last_modified": "Последние изменения",
+        "online_users": "Подключено пользователей",
+        "size": "Индексы занимают",
+        "started_at": "Запущен",
         "solr_status": "Состояние Solr",
-        "solr_uptime": "Время работы",
+        "uptime": "Время работы",
         "started_on": "Запущен в",
         "static_logs": "Статические журналы",
-        "system_containers": "Система и контейнеры"
+        "system_containers": "Система и контейнеры",
+        "xmpp_status": "Статус XMPP"
     },
     "diagnostics": {
         "cname_from_a": "Значение, полученное из записи A/AAAA. Это поддерживается до тех пор, пока запись указывает на правильный ресурс.",
         "dns_records": "Записи DNS",
         "dns_records_24hours": "Обратите внимание, что для внесения изменений в DNS может потребоваться до 24 часов, чтобы правильно отобразить их текущее состояние на этой странице. Эта страница предназначен для того, чтобы вы могли легко увидеть, как настроить записи DNS и проверить, все ли записи правильно занесены в DNS.",
+        "dns_records_docs": "Пожалуйста, ознакомьтесь с <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">документацией</a>.",
         "dns_records_data": "Значение",
         "dns_records_name": "Название",
         "dns_records_status": "Статус",
         "dns_records_type": "Тип",
-        "optional": "Эта запись не обезательна."
+        "optional": "Эта запись не обязательна."
     },
     "edit": {
         "active": "Активный",
+        "admin": "Изменение администратора",
         "advanced_settings": "Расширенные настройки",
         "alias": "Изменить псевдоним",
         "allow_from_smtp": "Разрешить использование <b>SMTP</b> только для этих IP",
-        "allow_from_smtp_info": "Укажите IPv4/IPv6 адреса и/или подсети.<br>Оставьте поле пустым, чтобы разрешить отправитвку с любых адресов.",
-        "allowed_protocols": "Разрешенные протоколы",
+        "allow_from_smtp_info": "Укажите IPv4/IPv6 адреса и/или подсети.<br>Оставьте поле пустым, чтобы разрешить отправку с любых адресов.",
+        "allowed_protocols": "Разрешённые протоколы",
         "app_name": "Название приложения",
         "app_passwd": "Пароль приложения",
         "automap": "Автоматическое слияние папок (\"Sent items\", \"Sent\" => \"Sent\" etc.)",
         "backup_mx_options": "Параметры резервного копирования MX",
-        "bcc_dest_format": "Назначением для правила BBC долженен быть единственным действительный адресом электронной почты.",
+        "bcc_dest_format": "Назначением для правила BBC должен быть единственный действительный адрес электронной почты.",
         "client_id": "ID клиента",
         "client_secret": "Секретный ключ пользователя",
-        "comment_info": "Приватный комментарий не виден пользователям, а публичный - отображается рядом с певдонимом в личном кабинете пользователя",
+        "comment_info": "Приватный комментарий не виден пользователям, а публичный - отображается рядом с псевдонимом в личном кабинете пользователя",
         "delete1": "Удаление из источника после завершения",
         "delete2": "Удаление писем по месту назначения, которые не находятся на исходном",
         "delete2duplicates": "Удаление дубликатов по назначению",
-        "delete_ays": "Пожалуйста, подтвердите удалитение",
+        "delete_ays": "Пожалуйста, подтвердите удаление",
         "description": "Описание",
         "disable_login": "Вход в систему запрещен",
         "domain": "Изменение домена",
@@ -501,12 +531,21 @@
         "encryption": "Шифрование",
         "exclude": "Исключить объекты (regex)",
         "extended_sender_acl": "Внешние адреса почты",
-        "extended_sender_acl_info": "Для внешних доменов должен быть импортирован или сгенерирован доменный ключ DKIM с соответствующей записью TXT в домене если внешний домен использует DMARC.<br>\r\n  Не забудьте добавить этот сервер к соответствующей записи SPF TXT внешнего домена.<br>\r\n  Добавление домена из списка внешних адресов в mailcow автоматически удалит соответствующие записи из внешних адресов пользователей.<br>\r\n  Что бы разрешить пользователю отправку от имени *@domain.tld, укажите @domain.tld.",
+        "extended_sender_acl_info": "Для внешних доменов должен быть импортирован или сгенерирован доменный ключ DKIM с соответствующей записью TXT в домене, если внешний домен использует DMARC.<br>\r\n  Не забудьте добавить этот сервер к соответствующей записи SPF TXT внешнего домена.<br>\r\n  Добавление домена из списка внешних адресов в mailcow автоматически удалит соответствующие записи из внешних адресов пользователей.<br>\r\n  Чтобы разрешить пользователю отправку от имени *@domain.tld, укажите @domain.tld.",
         "force_pw_update": "Требовать смены пароля при следующем входе в систему",
         "force_pw_update_info": "Пользователь должен будет войти в %s и сменить свой пароль. mailcow OAuth2, SOGo, EAS, IMAP/POP3 и SMTP будут не доступны до смены пароля.",
         "full_name": "Полное имя",
         "gal": "GAL - Глобальная адресная книга",
-        "gal_info": "GAL содержит все объекты домена и не подлежит редактированию. Информация о занятости в SOGo будет отсутствовать для домена, если эта функция не будет включена! <b>Требуется перезапустить SOGo, чтобы изменения применились.</b>",
+        "gal_info": "GAL содержит все объекты домена и не подлежит редактированию. Информация о занятости в SOGo будет отсутствовать для домена, если данная функция будет отключена! <b>Требуется перезапустить SOGo, чтобы применить изменения.</b>",
+        "xmpp": "Включить поддержку XMPP для этого домена",
+        "xmpp_prefix": "Префикс домена XMPP",
+        "xmpp_prefix_info": "Для получения SSL сертификатов для XMPP сервера необходимо настроить дополнительные CNAME DNS записи <b>im</b>.example.org и <b>*.im</b>.example.org, указывающие на <b>%s</b>. Пожалуйста, посетите страницу проверки DNS записей домена после включения XMPP сервера в mailcow UI.",
+        "xmpp_info": "Эта опция добавит функциональность чата для этого домена.",
+        "xmpp_access": "Пользователь XMPP",
+        "xmpp_access_info": "XMPP должен быть включен для этого домена.",
+        "xmpp_admin": "Администратор XMPP",
+        "xmpp_admin_info": "Повысить пользователя XMPP до <span class=\"text-danger\">администратора домена</span>.",
+        "xmpp_example_jid": "<b>Пример JID</b> (используя пароль почтового аккаунта)",
         "generate": "сгенерировать",
         "grant_types": "Разрешено типы",
         "hostname": "Имя хоста",
@@ -532,12 +571,13 @@
         "pushover_info": "Настройки Push-уведомления будут применяться ко всей почте <b>%s</b> (за исключением спама) включая псевдонимы (личные, общие и тегированные).",
         "pushover_only_x_prio": "Получать уведомления только об письмах с высоким приоритетом [<code>X-Priority: 1</code>]",
         "pushover_sender_array": "Получать уведомления от списка адресов электронной почты <small>(envelop-from разделенные запятыми)</small>:",
-        "pushover_sender_regex": "Получать уведомления от отправителей удовлетворяющих regex-выражение:",
+        "pushover_sender_regex": "Получать уведомления от отправителей, удовлетворяющих regex-выражению:",
         "pushover_text": "Текст уведомления",
         "pushover_title": "Заголовок уведомления",
-        "pushover_vars": "Когда фильтрация по отправителю не определена, уведомения будут доставлятся от всех отправителей.<br>Можно использовать обычный фильтр по отправителю и разширенный regex-фильтр, а так же оба сразу.<br>Пожалуйста, ознакомьтесь с <a href=\"https://pushover.net/privacy\">Pushover Privacy Policy</a> перед использованием шаблонов для текста и заголовка",
+        "pushover_vars": "Когда фильтрация по отправителю не определена, уведомления будут доставлятся от всех отправителей.<br>Можно использовать обычный фильтр по отправителю и расширенный regex-фильтр, а также оба сразу.<br>Пожалуйста, ознакомьтесь с <a href=\"https://pushover.net/privacy\">Pushover Privacy Policy</a> перед использованием шаблонов для текста и заголовка",
         "pushover_verify": "Проверить доступ",
         "quota_mb": "Квота (MiB)",
+        "ratelimit": "Лимит отправки",
         "redirect_uri": "URL-адрес переадресация/обратный вызов",
         "relay_all": "Ретрансляция всех получателей",
         "relay_all_info": "↪<small>Если вы решите <b>не</b> ретранслировать всех получателей, вам нужно будет добавить (\"слепой\") почтовый аккаунт для каждого получателя, которого следует ретранслировать.</small>",
@@ -551,20 +591,21 @@
         "scope": "Область",
         "sender_acl": "Разрешить отправлять письма от имени",
         "sender_acl_disabled": "<span class=\"label label-danger\">Проверка отправителя отключена</span>",
-        "sender_acl_info": "Учтите, что если пользователю почтового аккаунта A разрешено отправлять от имени пользователя B, адрес пользователя B автоматически не отобразится в списке \"Отправитель\" при написании писем в SOGo.<br>\r\n  Пользователь почтового аккаунта B должен создать делегирование в SOGo, чтобы пользователь почтового аккаунта A мог выбрать его адрес в качестве отправителя. Делегирование находится в меню (троеточие) справа от имени почтового аккаунта в окне почты SOGo. Это поведение не относится к псевдонимам.",
+        "sender_acl_info": "Учтите, что если пользователю почтового аккаунта A разрешено отправлять от имени пользователя B, то адрес пользователя B не отобразится автоматически в списке \"Отправитель\" при написании писем в SOGo.<br>\r\n  Пользователь почтового аккаунта B должен создать делегирование в SOGo, чтобы пользователь почтового аккаунта A мог выбрать его адрес в качестве отправителя. Делегирование находится в меню (троеточие) справа от имени почтового аккаунта в окне почты SOGo. Это поведение не относится к псевдонимам.",
         "sieve_desc": "Краткое описание",
         "sieve_type": "Тип фильтра",
         "skipcrossduplicates": "Пропускать повторяющиеся сообщения в папках",
         "sogo_access": "Предоставить доступ к SOGo",
         "sogo_access_info": "Этот параметр не влияет на доступ ко всем другим службам, в том числе на право удаления или изменение существующего профиля пользователя SOGo.",
         "sogo_visible": "Отображать псевдоним в SOGo",
-        "sogo_visible_info": "Влияет только на объекты, которые могут отображаться в SOGo (персональные или общие псевдонимы, указывающие как минимум на один локальный почтовый аккаунт). Учтите что если функция отключена, у пользователей не будет возможности выбрать адрес псевдонима в качестве отправителя в SOGo.",
+        "sogo_visible_info": "Влияет только на объекты, которые могут отображаться в SOGo (персональные или общие псевдонимы, указывающие как минимум на один локальный почтовый аккаунт). Учтите, что если функция отключена, у пользователей не будет возможности выбрать адрес псевдонима в качестве отправителя в SOGo.",
         "spam_alias": "Создать или изменить временные (спам) псевдонимы",
         "spam_policy": "Добавление или удаление элементов в белом/черном списке",
+        "spam_filter": "Спам фильтр",
         "spam_score": "Задать индивидуальное определение спама",
         "subfolder2": "Синхронизировать в подпапку<br><small>(пусто = в корень)</small>",
         "syncjob": "Изменить задание синхронизации",
-        "target_address": "Владельцы псевдонима <small>(разделенные запятыми)</small>",
+        "target_address": "Владельцы псевдонима, <small>(разделённые запятыми)</small>",
         "target_domain": "Целевой домен",
         "timeout1": "Тайм-аут для подключения к удаленному хосту",
         "timeout2": "Тайм-аут для подключения к локальному хосту",
@@ -578,15 +619,13 @@
         "confirm_delete": "Подтвердите удаление",
         "delete_now": "Удалить сейчас",
         "delete_these_items": "Пожалуйста, подтвердите свои изменения в следующих объектах:",
-        "hibp_nok": "Совпадание найдено! Это потенциально опасный пароль!",
+        "hibp_nok": "Найдено совпадение! Это потенциально опасный пароль!",
         "hibp_ok": "Совпадений не найдено.",
         "loading": "Пожалуйста, подождите...",
         "restart_container": "Перезапустить контейнер",
-        "restart_container_info": "<b>Важно:</b> полный перезапуск может занять некоторое время, пожалуйста, дождитесь его завершения - не обновляйте и не закрывайте страницу.",
+        "restart_container_info": "<b>Важно:</b> полный перезапуск может занять некоторое время, пожалуйста, дождитесь его завершения &ndash; не обновляйте и не закрывайте страницу.",
         "restart_now": "Перезапустить сейчас",
-        "restart_sogo": "Перезапустить SOGo",
-        "restart_sogo_info": "Некоторые операции, например при добавлении домена, требуют перезапустить SOGo, для вступления в силу внесенных изменений.<br><br><b>Важно:</b> Перезагрузка может занять некоторое время, дождитесь ее окончания.",
-        "restarting_container": "Перезапуск контейнера, это может занять какое то время..."
+        "restarting_container": "Перезапуск контейнера, это может занять какое-то время..."
     },
     "header": {
         "administration": "Настройка сервера",
@@ -619,6 +658,7 @@
         "active": "Активный",
         "add": "Добавить",
         "add_alias": "Добавить псевдоним",
+        "add_alias_expand": "Скопировать псевдонимы на псевдонимы домена",
         "add_bcc_entry": "Добавить правило BBC",
         "add_domain": "Добавить домен",
         "add_domain_alias": "Добавить псевдоним домена",
@@ -630,11 +670,11 @@
         "add_tls_policy_map": "Добавить политику TLS",
         "address_rewriting": "Перезапись адресов",
         "alias": "Псевдоним",
-        "alias_domain_alias_hint": "Псевдонимы <b>не</b> применяются к псевдонимам домена автоматически. Адрес псевдонима <code>my-alias@domain</code> <b>не</b> охватывает адрес <code>my-alias@alias-domain</code> (где \"alias-domain\" - воображаемый псевдоним домена для \"domain\").",
+        "alias_domain_alias_hint": "Псевдонимы <b>не</b> применяются к псевдонимам домена автоматически. Адрес псевдонима <code>my-alias@domain</code> <b>не</b> охватывает адрес <code>my-alias@alias-domain</code> (где \"alias-domain\" &ndash; воображаемый псевдоним домена для \"domain\").<br>Используйте кнопку <b>\"Скопировать псевдонимы на псевдонимы домена\"</b> чтобы добавить выбранные псевдонимы на все псевдонимы доменов.<br>Пожалуйста, используйте Sieve фильтры для перенаправления почты на внешние почтовые аккаунты (см. вкладку \"Фильтры\" или используйте SOGo -> Настройки -> Почта -> Пересылка).",
         "alias_domain_backupmx": "Псевдонимы домена не могут быть использованы для домена ретрансляции",
         "aliases": "Псевдонимы",
         "allow_from_smtp": "Разрешить использование <b>SMTP</b> только для этих IP",
-        "allow_from_smtp_info": "Укажите IPv4/IPv6 адреса и/или подсети.<br>Оставьте поле пустым, чтобы разрешить отправитвку с любых адресов.",
+        "allow_from_smtp_info": "Укажите IPv4/IPv6 адреса и/или подсети.<br>Оставьте поле пустым, чтобы разрешить отправку с любых адресов.",
         "allowed_protocols": "Разрешенные протоколы",
         "backup_mx": "Резервный MX",
         "bcc": "Правила BBC",
@@ -714,18 +754,17 @@
         "resources": "Ресурсы",
         "running": "В процессе выполнения",
         "set_postfilter": "Использовать как постфильтр",
-        "set_prefilter": "Использовать как предв. фильтр",
-        "sieve_info": "Вы можете сохранить несколько фильтров для каждого пользователя, но только один предварительный фильтр и один постфильтр могут быть активными одновременно.<br>\r\n Каждый фильтр будет обработан в описанном порядке. Не сломаный скрипт, не <code>keep;</code> не остановит обработку дальнейших скриптов.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
+        "set_prefilter": "Использовать как предварительный фильтр",
+        "sieve_info": "Вы можете сохранить несколько фильтров для каждого пользователя, но только один предварительный фильтр и один постфильтр могут быть активными одновременно.<br>\r\n Каждый фильтр будет обработан в описанном порядке. Не сломанный скрипт, не <code>keep;</code> не остановит обработку дальнейших скриптов.<br><br>Global sieve prefilter → Prefilter → User scripts → Postfilter → Global sieve postfilter",
         "sieve_preset_1": "Discard mail with probable dangerous file types",
         "sieve_preset_2": "Always mark the e-mail of a specific sender as seen",
         "sieve_preset_3": "Discard silently, stop all further sieve processing",
         "sieve_preset_4": "File into INBOX, skip further processing by sieve filters",
         "sieve_preset_5": "Auto responder (vacation)",
-        "sieve_preset_6": "Reject mail with reponse",
+        "sieve_preset_6": "Reject mail with response",
         "sieve_preset_7": "Redirect and keep/drop",
         "sieve_preset_8": "Discard message sent to an alias address the sender is part of",
         "sieve_preset_header": "Пожалуйста, ознакомьтесь с примерами ниже. Для более подробной информации прочитайте <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Sieve Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Административные логины SOGo доступны только для почтовых ящиков с существующим профилем SOGo. Пользователь должен был войти в SOGo хотя бы один раз.",
         "sogo_visible": "Отображать псевдоним в SOGo",
         "sogo_visible_n": "Не отображать псевдоним в SOGo",
         "sogo_visible_y": "Отображать псевдоним в SOGo",
@@ -737,17 +776,17 @@
         "table_size_show_n": "Отображать %s полей",
         "target_address": "Владельцы псевдонима",
         "target_domain": "Целевой домен",
-        "tls_enforce_in": "Принудительный TLS - входящие",
-        "tls_enforce_out": "Принудительный TLS - исходящие",
+        "tls_enforce_in": "Принудительный TLS (входящие)",
+        "tls_enforce_out": "Принудительный TLS (исходящие)",
         "tls_map_dest": "Назначение",
         "tls_map_dest_info": "пример: example.org, .example.org, [mail.example.org]:25",
         "tls_map_parameters": "Параметры",
         "tls_map_parameters_info": "Оставьте поле пустым или укажите параметры, на пример: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Политика",
         "tls_policy_maps": "Правила TLS",
-        "tls_policy_maps_enforced_tls": "Для исходящих сообщений от пользователей с включенной принудительной политикой шифрования исходящих соеденений не описаные глобальной политикой,<br>\r\n будут применены значения по умолчанию, указанные в <code>smtp_tls_mandatory_protocols</code> и <code>smtp_tls_mandatory_ciphers</code>.",
-        "tls_policy_maps_info": "Глобальные политики переопределяют политики исходящих соеденений TLS, независимо от настроек принудительных политик TLS у пользователей.<br>\r\n  Пожалуйста, ознакомьтесь с <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">документацией \"smtp_tls_policy_maps\"</a> для дополнительной информации.",
-        "tls_policy_maps_long": "Переопределение правил для политик исходящих соеденений TLS",
+        "tls_policy_maps_enforced_tls": "Для исходящих сообщений от пользователей с включенной принудительной политикой шифрования исходящих соединений не описанные глобальной политикой,<br>\r\n будут применены значения по умолчанию, указанные в <code>smtp_tls_mandatory_protocols</code> и <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "Глобальные политики переопределяют политики исходящих соединений TLS, независимо от настроек принудительных политик TLS у пользователей.<br>\r\n  Пожалуйста, ознакомьтесь с <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\">документацией \"smtp_tls_policy_maps\"</a> для дополнительной информации.",
+        "tls_policy_maps_long": "Переопределение правил для политик исходящих соединений TLS",
         "toggle_all": "Выбрать все",
         "username": "Имя пользователя",
         "waiting": "Ожидание",
@@ -771,7 +810,8 @@
         "confirm_delete": "Подтвердите удаление этого элемента.",
         "danger": "Опасность",
         "deliver_inbox": "Освободить из карантина",
-        "disabled_by_config": "В текущей конфигурации системы функцию карантина отключена.",
+        "disabled_by_config": "В текущей конфигурации системы функция карантина отключена.",
+        "settings_info": "Максимальное количество элементов, которые будут помещены в карантин: %s<br>Максимальный размер электронного письма: %s MiB",
         "download_eml": "Скачать (.eml)",
         "empty": "Пусто",
         "high_danger": "Высокая",
@@ -784,7 +824,7 @@
         "notified": "Увед.",
         "qhandler_success": "Запрос успешно отправлен в систему. Теперь вы можете закрыть окно.",
         "qid": "Rspamd QID",
-        "qinfo": "Карантин сохраняет входящие сообщения класифицированные как нежелательные в базу данных.\r\n  <br>Отправители писем которые помечены как отвергнутые будут уверены что их письма <b>не</b> были доставлены Вам.\r\n  <br>\"Освободить из карантина\" изучит сообщение как хам по теореме Байеса и доставит его вам в Inbox.\r\n  <br>\"Запомнить как спам и удалить\" изучит сообщение как спам по теореме Байеса, а также вычислит нечеткие хэши, чтобы лучше блокировать подобные сообщения в дальнейшем.\r\n  <br>Учтите, что в зависимости от технических характеристик вашей системы, изучение большого количества сообщений может занять много времени.",
+        "qinfo": "Карантин сохраняет входящие сообщения, классифицированные как нежелательные, в базу данных.\r\n  <br>Отправители писем, которые помечены как отвергнутые, будут уверены что их письма <b>не</b> были доставлены вам.\r\n  <br>\"Освободить из карантина\" изучит сообщение как &laquo;ham&raquo; по теореме Байеса и доставит его вам в Inbox.\r\n  <br>\"Запомнить как спам и удалить\" изучит сообщение как спам по теореме Байеса, а также вычислит нечёткие хэши, чтобы лучше блокировать подобные сообщения в дальнейшем.\r\n  <br>Учтите, что в зависимости от технических характеристик вашей системы, изучение большого количества сообщений может занять много времени.",
         "qitem": "Обьект карантина",
         "quarantine": "Карантин",
         "quick_actions": "Действия",
@@ -802,7 +842,7 @@
         "sender": "Отправитель (SMTP)",
         "sender_header": "Отправитель (заголовок \"From\")",
         "type": "Тип",
-        "quick_release_link": "Ссылка для востановления",
+        "quick_release_link": "Ссылка для восстановления",
         "quick_delete_link": "Ссылка для удаления",
         "quick_info_link": "Ссылка на доп. информацию",
         "show_item": "Показать",
@@ -817,71 +857,73 @@
     },
     "start": {
         "help": "Справка",
-        "imap_smtp_server_auth_info": "Пожалуйста, используйте свой полный адрес электронной почты в формате <code>user@example.com</code> и PLAIN механизм авторизации.<br>\r\nВаши данные авторизации будут зашифрованы на уровне шифрования канала подключения к серверу, по этому убедитесь что вы используете надежное TLS подключение.",
-        "mailcow_apps_detail": "Используйте приложения для доступа к вашей почте, календарю, контактам и многое другое.",
-        "mailcow_panel_detail": "<b>Администраторы домена</b> могут создавать, изменять или удалять почтовые ящики и псевдонимы, измененять домены и смотреть информацию о своих назначенных доменов. <br><b>Пользователи почтовых ящиков</b> имеют возможность создавать временные псевдонимы (спам псевдонимы), менять свой пароль и настройки фильтра спама."
+        "imap_smtp_server_auth_info": "Пожалуйста, используйте свой полный адрес электронной почты в формате <code>user@example.com</code> и PLAIN механизм авторизации.<br>\r\nВаши данные авторизации будут зашифрованы на уровне шифрования канала подключения к серверу, поэтому убедитесь, что вы используете надежное TLS подключение.",
+        "mailcow_apps_detail": "Используйте приложения для доступа к вашей почте, календарю, контактам, и прочим функциям.",
+        "mailcow_panel_detail": "<b>Администраторы домена</b> могут создавать, изменять или удалять почтовые ящики и псевдонимы, измененять домены и смотреть информацию о своих назначенных доменах. <br><b>Пользователи почтовых ящиков</b> имеют возможность создавать временные псевдонимы (спам псевдонимы), менять свой пароль и настройки фильтра спама."
     },
     "success": {
         "acl_saved": "ACL для %s сохранено",
         "admin_added": "Администратор %s добавлен",
         "admin_api_modified": "Изменения в API сохранены",
         "admin_modified": "Изменения администратора сохранены",
-        "admin_removed": "Администратор %s удален",
+        "admin_removed": "Администратор %s удалён",
         "alias_added": "Псевдоним %s (%d) добавлен",
-        "alias_domain_removed": "Псевдоним домена %s удален",
+        "alias_domain_removed": "Псевдоним домена %s удалён",
         "alias_modified": "Изменения псевдонима %s сохранены",
-        "alias_removed": "Псевдоним %s удален",
+        "alias_removed": "Псевдоним %s удалён",
         "aliasd_added": "Добавлен псевдоним домена %s",
         "aliasd_modified": "Сохранить изменения псевдонима домена %s",
         "app_links": "Изменения ссылок на приложения сохранены",
         "app_passwd_added": "Добавлен новый пароль приложения",
-        "app_passwd_removed": "Пароль приложения ID %s удален",
+        "app_passwd_removed": "Пароль приложения ID %s удалён",
         "bcc_deleted": "Правила BCC удалены: %s",
         "bcc_edited": "Правило BCC %s отредактировано",
         "bcc_saved": "Правило BCC сохранено",
         "db_init_complete": "Инициализация базы данных завершена",
-        "delete_filter": "Фильтр ID %s удален",
+        "delete_filter": "Фильтр ID %s удалён",
         "delete_filters": "Фильтры удалены: %s",
         "deleted_syncjob": "Задание синхронизации ID %s удалено",
         "deleted_syncjobs": "Задания синхронизации удалены: %s",
-        "dkim_added": "DKIM ключ сохранен",
+        "dkim_added": "DKIM ключ сохранён",
         "dkim_duplicated": "DKIM ключи для домена %s были скопированы в %s",
-        "dkim_removed": "DKIM ключ %s удален",
+        "dkim_removed": "DKIM ключ %s удалён",
         "domain_added": "Добавлен домен %s",
         "domain_admin_added": "Администратор домена %s добавлен",
         "domain_admin_modified": "Сохранить изменения администратора домена %s",
-        "domain_admin_removed": "Администратор домена %s удален",
+        "domain_admin_removed": "Администратор домена %s удалён",
         "domain_modified": "Сохранить изменения домена %s",
-        "domain_removed": "Домен %s удален",
-        "dovecot_restart_success": "Dovecot перезапусщен успешно",
+        "domain_removed": "Домен %s удалён",
+        "dovecot_restart_success": "Dovecot перезапущен успешно",
         "eas_reset": "Кеш ActiveSync для пользователя %s был сброшен",
         "f2b_modified": "Изменения параметров Fail2ban сохранены",
         "forwarding_host_added": "Перенаправление узла %s добавлено",
         "forwarding_host_removed": "Перенаправление узла %s удалено",
         "global_filter_written": "Фильтр успешно записан в файл",
-        "hash_deleted": "Хеш удален",
-        "item_deleted": "Обьект %s удален",
+        "hash_deleted": "Хеш удалён",
+        "item_deleted": "Обьект %s удалён",
         "item_released": "Письмо %s восстановлено из карантина",
         "items_deleted": "Обьекты %s удалены",
         "items_released": "Выбраные письма восстановлены из карантина",
-        "learned_ham": "Письмо ID %s было изучено как хам",
-        "license_modified": "Изменения в лицензии были сохранены",
+        "learned_ham": "Письмо ID %s было изучено как &laquo;ham&raquo;",
+        "license_modified": "Изменения в лицензии сохранены",
         "logged_in_as": "Вы вошли как %s",
         "mailbox_added": "Почтовый аккаунт %s добавлен",
         "mailbox_modified": "Изменения почтового аккаунта %s сохранены",
-        "mailbox_removed": "Почтовый аккаунт %s удален",
+        "mailbox_removed": "Почтовый аккаунт %s удалён",
+        "nginx_reloaded": "Обновление конфигурация Nginx закончено",
         "object_modified": "Изменения объекта %s сохранены",
         "pushover_settings_edited": "Настройки сохранены, пожалуйста, выполните проверку доступа",
         "qlearn_spam": "Письмо ID %s было изучено как спам и удалено",
         "queue_command_success": "Команда выполнена успешно",
+        "password_policy_saved": "Политика паролей сохранена",
         "recipient_map_entry_deleted": "Правило перезаписи получателя ID %s было удалено",
         "recipient_map_entry_saved": "Правило перезаписи получателя \"%s\" было сохранено",
         "relayhost_added": "Промежуточный узел %s добавлен",
-        "relayhost_removed": "Промежуточный узел %s удален",
+        "relayhost_removed": "Промежуточный узел %s удалён",
         "reset_main_logo": "Восстановить логотип по умолчанию",
         "resource_added": "Ресурс %s добавлен",
         "resource_modified": "Изменения почтового аккаунта %s сохранены",
-        "resource_removed": "Ресурс %s удален",
+        "resource_removed": "Ресурс %s удалён",
         "rl_saved": "Лимиты для %s сохранены",
         "rspamd_ui_pw_set": "Пароль для Rspamd успешно установлен",
         "saved_settings": "Настройки сохранены",
@@ -895,7 +937,10 @@
         "verified_totp_login": "Авторизация TOTP пройдена",
         "verified_u2f_login": "Авторизация U2F пройдена",
         "verified_fido2_login": "Авторизация FIDO2 пройдена",
-        "verified_yotp_login": "Авторизация Yubico OTP пройдена"
+        "verified_yotp_login": "Авторизация Yubico OTP пройдена",
+        "xmpp_restarted": "Сервис XMPP перезагружен",
+        "xmpp_reloaded": "Обновление конфигурация XMPP закончено",
+        "xmpp_maps_updated": "Настройки XMPP обновлены"
     },
     "tfa": {
         "api_register": "%s использует Yubico Cloud API. Пожалуйста, получите ключ API для вашего ключа <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">здесь</a>",
@@ -925,7 +970,7 @@
     "fido2": {
         "set_fn": "Укажите понятное название",
         "fn": "Название",
-        "rename": "перейменовать",
+        "rename": "Переименовать",
         "confirm": "Подтвердить",
         "register_status": "Статус регистрации",
         "known_ids": "Известные ID",
@@ -963,11 +1008,11 @@
         "create_syncjob": "Создание нового задания синхронизации",
         "daily": "Раз в день",
         "day": "день",
-        "delete_ays": "Пожалуйста, подтвердите удалитение",
+        "delete_ays": "Пожалуйста, подтвердите удаление",
         "direct_aliases": "Личные псевдонимы",
-        "direct_aliases_desc": "На адреса с прямым псевдонимом распостраняются фильтры нежелательной почты и параметры политики TLS.",
+        "direct_aliases_desc": "На адреса с прямым псевдонимом распространяются фильтры нежелательной почты и параметры политики TLS.",
         "eas_reset": "Сбросить кеш ActiveSync устройств",
-        "eas_reset_help": "Во многих случаях сброс кеша устройств помогает восстановить поврежденный профиль ActiveSync.<br><b>Внимание:</b> все письма, календари и контакты будут загружены заново на все Ваши устройства!",
+        "eas_reset_help": "Во многих случаях сброс кеша устройств помогает восстановить повреждённый профиль ActiveSync.<br><b>Внимание:</b> все письма, календари и контакты будут загружены заново на все ваши устройства!",
         "eas_reset_now": "Сбросить кеш сейчас",
         "edit": "Изменить",
         "email": "Почта",
@@ -990,50 +1035,49 @@
         "messages": "письма",
         "never": "Никогда",
         "new_password": "Новый пароль",
-        "new_password_description": "Минимальные требование: 6 символов, включая буквы и цифры. Администратор мог изменить данную политику.",
         "new_password_repeat": "Подтверждение пароля (повтор)",
-        "no_active_filter": "Активированые фильтры отсутствуют",
+        "no_active_filter": "Активированные фильтры отсутствуют",
         "no_last_login": "Информация о последнем входе в пользовательский интерфейс отсутствует",
         "no_record": "Записи отсутствуют",
         "password": "Пароль",
         "password_now": "Текущий пароль (подтверждение изменения)",
         "password_repeat": "Подтверждение пароля (повтор)",
         "pushover_evaluate_x_prio": "Установить высокий приоритет уведомлений для писем с высоким приоритетом [<code>X-Priority: 1</code>]",
-        "pushover_info": "Настройки Push-уведомления будут применяться ко всей почте <b>%s</b> (за исключением спама) включая псевдонимы (личные, общие и тегированные).",
-        "pushover_only_x_prio": "Получать уведомления только об письмах с высоким приоритетом [<code>X-Priority: 1</code>]",
-        "pushover_sender_array": "Получать уведомления от списка адресов электронной почты <small>(envelop-from разделенные запятыми)</small>:",
-        "pushover_sender_regex": "Получать уведомления от отправителей удовлетворяющих regex-выражение:",
+        "pushover_info": "Настройки Push-уведомления будут применяться ко всей почте <b>%s</b> (за исключением спама), включая псевдонимы (личные, общие и тегированные).",
+        "pushover_only_x_prio": "Получать уведомления только о письмах с высоким приоритетом [<code>X-Priority: 1</code>]",
+        "pushover_sender_array": "Получать уведомления от списка адресов электронной почты <small>(envelop-from, разделённые запятыми)</small>:",
+        "pushover_sender_regex": "Получать уведомления от отправителей, удовлетворяющих regex-выражению:",
         "pushover_text": "Текст уведомления",
         "pushover_title": "Заголовок уведомления",
-        "pushover_vars": "Когда фильтрация по отправителю не определена, уведомения будут доставлятся от всех отправителей.<br>Можно использовать обычный фильтр по отправителю и разширенный regex-фильтр, а так же оба сразу.<br>Пожалуйста, ознакомьтесь с <a href=\"https://pushover.net/privacy\">Pushover Privacy Policy</a> перед использованием шаблонов для текста и заголовка",
+        "pushover_vars": "Когда фильтрация по отправителю не определена, уведомения будут доставлятся от всех отправителей.<br>Можно использовать обычный фильтр по отправителю и расширенный regex-фильтр, а также оба сразу.<br>Пожалуйста, ознакомьтесь с <a href=\"https://pushover.net/privacy\">Pushover Privacy Policy</a> перед использованием шаблонов для текста и заголовка",
         "pushover_verify": "Проверить доступ",
         "q_add_header": "Нежелательная почта",
         "q_all": "Все категории",
         "q_reject": "Отклонённая почта",
         "quarantine_notification": "Уведомления о спаме",
         "quarantine_category": "Категория уведомлений о спаме",
-        "quarantine_notification_info": "После того, как уведомление будет отправлено, элементы будут помечены как \"уведомленные\", и дальнейшие уведомления для этого сообщения отправляться не будут.",
-        "quarantine_category_info": "Категория \"Отклонённая почта\" включает в себя почту, которая была <code>отклонена</code>, тогда как \"Нежелательная почта\" будет уведомлять пользователя только о письмах, которые были помещены в папку <code>Junk</code>. Для того что бы получать уведомления об всех категориях спама выберите опцию \"Все категории\".",
+        "quarantine_notification_info": "После того, как уведомление будет отправлено, элементы будут помечены как \"уведомлённые\", и дальнейшие уведомления для этого сообщения отправляться не будут.",
+        "quarantine_category_info": "Категория \"Отклонённая почта\" включает в себя почту, которая была <code>отклонена</code>, тогда как \"Нежелательная почта\" содержит письма, которые были помещены в папку <code>Junk</code>. Для того, чтобы получать уведомления обо всех категориях спама, выберите опцию \"Все категории\".",
         "remove": "Удалить",
         "running": "В процессе выполнения",
         "save": "Сохранить изменения",
         "save_changes": "Сохранить изменения",
         "sender_acl_disabled": "<span class=\"label label-danger\">Проверка отправителя отключена</span>",
         "shared_aliases": "Общие псевдонимы",
-        "shared_aliases_desc": "На общие псевдонимы не влияют пользовательские настройки, такие как фильтр нежелательной почты или политика шифрования. Соответствующие фильтры нежелательной почты могут быть созданы только администратором в рамках политики домена.",
+        "shared_aliases_desc": "На общие псевдонимы не влияют пользовательские настройки, такие как фильтр нежелательной почты, или политика шифрования. Соответствующие фильтры нежелательной почты могут быть созданы только администратором в рамках политики домена.",
         "show_sieve_filters": "Показать включенные фильтры sieve",
         "sogo_profile_reset": "Сбросить профиль SOGo",
-        "sogo_profile_reset_help": "<b>Внимание:</b> это удалит настройки профиля SOGo вместе с <b>всеми контакты, календарями и фильтрами безвозвратно</b>.",
+        "sogo_profile_reset_help": "<b>Внимание:</b> это удалит настройки профиля SOGo вместе с <b>всеми контактами, календарями и фильтрами безвозвратно</b>.",
         "sogo_profile_reset_now": "Сбросить профиль сейчас",
         "spam_aliases": "Временные псевдонимы электронной почты",
         "spam_score_reset": "Сброс на настройки по умолчанию",
-        "spamfilter": "Фильтр спама",
+        "spamfilter": "Спам фильтр",
         "spamfilter_behavior": "Фильтрация спама",
-        "spamfilter_bl": "Черный список",
-        "spamfilter_bl_desc": "<b>Все</b> письма полученые от адресов электронной почты добавленных в черный список будут отклонены и <b>не</b> будут скопированы в карантин. Использование <code>*</code> разрешено. Фильтр применяется только к личным псевдонимам (с одним получателем), исключая catch-all псевдонимы и сам почтовый аккаунт.",
+        "spamfilter_bl": "Чёрный список",
+        "spamfilter_bl_desc": "<b>Все</b> письма, полученные от адресов электронной почты, добавленных в чёрный список, будут отклонены и <b>не</b> будут скопированы в карантин. Использование <code>*</code> разрешено. Фильтр применяется только к личным псевдонимам (с одним получателем), исключая catch-all псевдонимы и сам почтовый аккаунт.",
         "spamfilter_default_score": "Значения по умолчанию",
-        "spamfilter_green": "Зеленый: эти письма не являются спамом",
-        "spamfilter_hint": "Первое значение отображает низкую оценку спама, второе - высокую. <br />Заметка: пользователи POP3 должны использовать настройку 15:15 по умолчанию, что бы отключить попадание потенциального спама в \"Спам\" так как POP3 скачивает только содержимое папки \"Входящие\"",
+        "spamfilter_green": "Зелёный: эти письма не являются спамом",
+        "spamfilter_hint": "Первое значение отображает низкую оценку спама, второе &ndash; высокую. <br />Заметка: пользователи POP3 должны использовать настройку 15:15 по умолчанию, чтобы отключить попадание потенциального спама в \"Спам\", так как POP3 скачивает только содержимое папки \"Входящие\"",
         "spamfilter_red": "Красный: эти письма являются спамом и будут помещены в карантин, отправитель будет уведомлен об отказе доставки его письма, потому что оно не прошло спам-фильтр",
         "spamfilter_table_action": "Действия",
         "spamfilter_table_add": "Добавить элемент",
@@ -1042,8 +1086,8 @@
         "spamfilter_table_remove": "удалить",
         "spamfilter_table_rule": "Правило",
         "spamfilter_wl": "Белый список",
-        "spamfilter_wl_desc": "Белый список адресов электронной почты, позволяет <b>никогда</b> не классифицировать все полученные письма с указанных адресов как спам. Можно добавлять маски адресов. Фильтр применяется только к личным псевдонимам (с одним получателем), исключая catch-all псевдонимы и сам почтовый аккаунт.",
-        "spamfilter_yellow": "Желтый: это письма могут быть спамом, будут помечены как потенциальный спам и перемещены в папку \"Спам\"",
+        "spamfilter_wl_desc": "Белый список адресов электронной почты позволяет <b>никогда</b> не классифицировать все полученные письма с указанных адресов как спам. Можно добавлять маски адресов. Фильтр применяется только к личным псевдонимам (с одним получателем), исключая catch-all псевдонимы и сам почтовый аккаунт.",
+        "spamfilter_yellow": "Жёлтый: это письма могут быть спамом, будут помечены как потенциальный спам и перемещены в папку \"Спам\"",
         "status": "Статус",
         "sync_jobs": "Задания синхронизации",
         "tag_handling": "Обработка тегированной почты",
@@ -1054,10 +1098,10 @@
         "tag_in_subject": "Добавить к теме письма",
         "text": "Текст",
         "title": "Заголовок",
-        "tls_enforce_in": "Принудительный TLS - входящие",
-        "tls_enforce_out": "Принудительный TLS - исходящие",
+        "tls_enforce_in": "Принудительный TLS (входящие)",
+        "tls_enforce_out": "Принудительный TLS (исходящие)",
         "tls_policy": "Политика шифрования",
-        "tls_policy_warning": "<strong>Предупреждение:</strong> Если Вы включите принудетельное шифрованние почты, вы можете столкнутся с потерей писем.<br>Сообщения, которые не соответствуют политике, будут отбрасыватся с сообщением о серьезном сбое почтовым сервером.<br>Этот параметр применяется к вашему основному адресу электронной почты (логину), всем личным псевдонимам и псевдонимам доменов. Подразумеваются только псевдонимы <b>с одним почтовым ящиком</b> как получатель.",
+        "tls_policy_warning": "<strong>Предупреждение:</strong> Если вы включите принудительное шифрованние почты, вы можете столкнуться с потерей писем.<br>Сообщения, которые не соответствуют политике, будут отбрасываться с сообщением почтовым сервером о серьёзном сбое.<br>Этот параметр применяется к вашему основному адресу электронной почты (логину), всем личным псевдонимам и псевдонимам доменов. Подразумеваются только псевдонимы <b>с одним почтовым ящиком</b>, как получатель.",
         "user_settings": "Настройки пользователя",
         "username": "Имя пользователя",
         "verify": "Проверить",
@@ -1067,14 +1111,15 @@
         "weeks": "недели"
     },
     "warning": {
-        "cannot_delete_self": "Невозможно удалить пользователя, Вы сейчас его используете",
+        "cannot_delete_self": "Вы не можете удалить сами себя",
         "domain_added_sogo_failed": "Домен был добавлен, но перезагрузить SOGo не удалось, пожалуйста, проверьте журналы сервера.",
         "dovecot_restart_failed": "Перезагрузка Dovecot не удалась, пожалуйста, проверьте журналы сервера.",
-        "fuzzy_learn_error": "Ошибка сохранения нечеткого хэша: %s",
-        "hash_not_found": "Хеш не найден или уже удален",
-        "ip_invalid": "Пропущен не верный IP: %s",
+        "fuzzy_learn_error": "Ошибка сохранения нечёткого хэша: %s",
+        "hash_not_found": "Хеш не найден или уже удалён",
+        "ip_invalid": "Пропущен неверный IP: %s",
+        "is_not_primary_alias": "Пропущен неосновной псевдоним %s",
         "no_active_admin": "Невозможно деактивировать последнего активного администратора",
-        "quota_exceeded_scope": "Квота домена превышена: только почтовые ящики без лимита могут быть созданы.",
+        "quota_exceeded_scope": "Квота домена превышена: могут быть созданы только почтовые ящики без лимита.",
         "session_token": "Неверный токен формы: несоответствие токена",
         "session_ua": "Неверный токен формы: ошибка проверки User-Agent"
     }
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.sk.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.sk.json
index e51f148..40ed5c6 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.sk.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.sk.json
@@ -4,20 +4,23 @@
         "app_passwds": "Spravovať heslá",
         "bcc_maps": "BCC mapy",
         "delimiter_action": "Oddeliť",
+        "domain_desc": "Zmeniť popis domény",
+        "domain_relayhost": "Zmeniť predávajúci server domény",
         "eas_reset": "Reset EAS zariadení",
         "extend_sender_acl": "Povoliť rozšírenie ACL odosielateľa externými adresami",
         "filters": "Filtre",
         "login_as": "Prihlásiť sa ako poštový používateľ",
+        "mailbox_relayhost": "Zmeniť predávajúci server schránky",
         "prohibited": "Zakázané cez ACL",
-        "protocol_access": "Meniť prístup k protokolom",
+        "protocol_access": "Upraviť povolené protokoly",
         "pushover": "Pushover",
         "quarantine": "Karanténa",
         "quarantine_attachments": "Umiestniť prílohy do karantény",
-        "quarantine_notification": "Zmeniť notifikácie karantény",
         "quarantine_category": "Zmeniť kategóriu karanténnych notifikácií",
-        "ratelimit": "Limit prenosu",
+        "quarantine_notification": "Zmeniť notifikácie karantény",
+        "ratelimit": "Obmedzenie prenosu",
         "recipient_maps": "Mapy príjemcu",
-        "smtp_ip_access": "Meniť prístup hostiteľov k SMTP",
+        "smtp_ip_access": "Spravovať povolených hostiteľov pre SMTP",
         "sogo_access": "Povoliť spravovanie prístupu do SOGo",
         "sogo_profile_reset": "Znovu nastaviť SOGo profil",
         "spam_alias": "Dočasné aliasy",
@@ -26,7 +29,10 @@
         "syncjobs": "Synchronizačné úlohy",
         "tls_policy": "TLS pravidlá",
         "unlimited_quota": "Neobmedzená kvóta pre poštové schránky",
-        "domain_desc": "Meniť popis domény"
+        "xmpp_admin": "Povýšiť XMPP používateľa na správcu",
+        "xmpp_domain_access": "Nakonfigurovať prístup k XMPP doméne.",
+        "xmpp_mailbox_access": "Nakonfigurovať používateľovi XMPP prístup.",
+        "xmpp_prefix": "Zmeniť XMPP subdoménu (prefix)"
     },
     "add": {
         "activate_filter_warn": "Všetky ostatné filtre budú deaktivované, ak bude zaškrtnuté pole \"Aktívny\".",
@@ -42,12 +48,13 @@
         "app_password": "Pridať heslo aplikácie",
         "automap": "Skúsiť automaticky mapovať priečinky (\"Sent items\", \"Sent\" => \"Sent\" atd.)",
         "backup_mx_options": "Možnosti preposielania",
+        "bcc_dest_format": "Cieľ kópie musí byť jedna platná emailová adresa. Pokiaľ potrebujete posielať kópie na viac adries, vytvorte Alias a použite ho tu.",
         "comment_info": "Súkromný komentár nie je viditeľný používateľovi, na rozdiel od verejného komentára, ktorý je prezentovaný ako popis v prehľade používateľov",
         "custom_params": "Voliteľné parametre",
         "custom_params_hint": "Správne: --param=xy, nesprávne: --param xy",
-        "delete1": "Vymazať zo zdroja, po dokončení",
-        "delete2": "Vymazať správy na cieli, ktoré nie sú na zdroji",
-        "delete2duplicates": "Vymazať duplikáty v cieľovom umiestnení",
+        "delete1": "Vymazať zo zdrojovej schránky, po dokončení prenosu",
+        "delete2": "Vymazať správy v cieľovej schránke, ak nie sú v zdrojovej",
+        "delete2duplicates": "Vymazať duplikáty v cieľovej schránke",
         "description": "Popis",
         "destination": "Cieľ",
         "disable_login": "Zablokovať prihlásenie (nevzťahuje sa na prichádzajúcu poštu)",
@@ -82,7 +89,7 @@
         "public_comment": "Verejný komentár",
         "quota_mb": "Kvóta (MiB)",
         "relay_all": "Preposielať všetkým príjemcom",
-        "relay_all_info": "↪ Ak sa rozhodnete <b>neposielať ďalej</b> všetkých príjemcov, budete musieť pridať (\"tzv. slepú\") poštovú schránku pre každého príjemcu.",
+        "relay_all_info": "↪ Ak sa rozhodnete <b>nepreposielať ďalej</b> všetkých príjemcov, budete musieť pridať (\"tzv. slepú\") poštovú schránku pre každého príjemcu.",
         "relay_domain": "Preposielať túto doménu",
         "relay_transport_info": "<div class=\"label label-info\">Info</div> Môžete definovať transportné mapy pre vlastné určenie cieľa pre túto doménu. Ak nie sú nastavené, použije sa MX záznam.",
         "relay_unknown_only": "Preposielať len neexistujúce poštové schránky. Existujúce budú doručené lokálne.",
@@ -92,17 +99,23 @@
         "sieve_desc": "Krátky popis",
         "sieve_type": "Typ filtru",
         "skipcrossduplicates": "Preskočiť duplikované správy naprieč priečinkami (akceptuje sa prvý nález)",
-        "subscribeall": "Odoberať všetky priečinky",
+        "subscribeall": "Synchronizovať všetky priečinky",
         "syncjob": "Pridať novú synchronizačnú úlohu",
         "syncjob_hint": "Upozornenie, heslá budú uložené v obyčajnom texte!",
         "target_address": "Cieľové adresy",
         "target_address_info": "<small>Celá emailová adresa/y (oddelené čiarkou).</small>",
         "target_domain": "Cieľová doména",
-        "timeout1": "Časový limit pre spojenie s diaľkovým hostiteľom",
-        "timeout2": "Časový limit pre spojenie s lokálnym hostiteľom",
+        "timeout1": "Časový limit pre spojenie so vzdialeným serverom",
+        "timeout2": "Časový limit pre spojenie s lokálnym serverom",
         "username": "Používateľské meno",
         "validate": "Overiť",
-        "validation_success": "Úspešne overené"
+        "validation_success": "Úspešne overené",
+        "xmpp": "Aktivovať XMPP pre túto doménu",
+        "xmpp_access": "XMPP prístup",
+        "xmpp_access_info": "XMPP musí byť aktivované pre túto doménu.",
+        "xmpp_admin": "XMPP administrátor",
+        "xmpp_admin_info": "<b>Upozornenie:</b> Povýši užívateľa na XMPP administrátora pre túto doménu.",
+        "xmpp_info": "Aktivovanie tejto funkcie umožní četovanie v tejto doméne."
     },
     "admin": {
         "access": "Prístup",
@@ -114,28 +127,33 @@
         "add": "Pridať",
         "add_admin": "Pridať administrátora",
         "add_domain_admin": "Pridať administrátora domény",
-        "add_forwarding_host": "Pridať doručovacieho hostiteľa",
-        "add_relayhost": "Pridať transportný záznam",
-        "add_relayhost_hint": "Prosím berte do úvahy, že autentifikačné dáta, ak existujú, budú uložené ako jednoduchý text.",
+        "add_forwarding_host": "Pridať preposielací server",
+        "add_relayhost": "Pridať transport",
+        "add_relayhost_hint": "Prosím berte do úvahy, že údaje overenia budú uložené ako nešifrovaný reťazec.",
         "add_row": "Pridať riadok",
         "add_settings_rule": "Pridať pravidlo nastavenia",
         "add_transport": "Pridať transport",
-        "add_transports_hint": "Prosím berte do úvahy, že overovacie dáta, ak existujú, budú uložené ako jednoduchý text.",
-        "additional_rows": " ďalšie riadky boli pridané",
+        "add_transports_hint": "Prosím berte do úvahy, že údaje overenia budú uložené ako nešifrovaný reťazec.",
+        "additional_rows": " boli pridané ďalšie riadky",
         "admin": "Administrátor",
         "admin_details": "Upraviť detaily administrátora",
         "admin_domains": "Pridelené domény",
+        "admins": "Administrátori",
+        "admins_ldap": "LDAP Administrátori",
+        "advanced_settings": "Pokročilé nastavenia",
         "api_allow_from": "Povoliť API prístup z týchto adries alebo rozsahov - IP/CIDR",
-        "api_info": "API momentálne pracuje. Dokumentáciu nájdete na <a href=\"/api\">/api</a>",
+        "api_info": "Dokumentáciu nájdete na <a href=\"/api\">/api</a>",
         "api_key": "API kľúč",
-        "api_skip_ip_check": "Preskočiť kontrolu IP pre API",
+        "api_read_only": "Prístup iba na čítanie",
+        "api_read_write": "Prístup aj so zápisom",
+        "api_skip_ip_check": "Vypnúť kontrolu IP",
         "app_links": "Odkazy na aplikácie",
         "app_name": "Meno aplikácie",
-        "apps_name": "\"mailcow Apps\" meno",
+        "apps_name": "\"mailcow Apps\" názov",
         "arrival_time": "Čas príchodu (čas servera)",
         "authed_user": "Overený používateľ",
         "ays": "Naozaj chcete pokračovať?",
-        "ban_list_info": "Ukázať zoznam zakázaných IP nižšie: <b>sieť (zostávajúci čas zákazu) - [akcia]</b>.<br />IP adresy čakajúce na unban budú odstránené z aktívneho zoznamu v priebehu niekoľkých sekúnd.<br />Červené značky indikujú aktívny permanentný zákaz.",
+        "ban_list_info": "Zoznam zakázaných IP je zobrazený nižšie: <b>sieť (zostávajúci čas zákazu) - [akcia]</b>.<br />IP adresy zaradené na unban budú odstránené z aktívneho zoznamu v priebehu niekoľkých sekúnd.<br />Červené položky zobrazujú permanentné blokovanie.",
         "change_logo": "Zmeniť logo",
         "configuration": "Konfigurácia",
         "convert_html_to_text": "Konvertovať HTML do obyčajného textu",
@@ -148,16 +166,16 @@
         "dkim_domains_selector": "Selektor",
         "dkim_domains_wo_keys": "Vybrať domény s chýbajúcimi kľúčmi",
         "dkim_from": "Od",
-        "dkim_from_title": "Zdrojová doména kopíruje dáta od",
+        "dkim_from_title": "Zdrojová doména, z ktorej sa majú kopírovať údaje",
         "dkim_key_length": "Dĺžka DKIM kľúča (bity)",
         "dkim_key_missing": "Chýbajúci kľúč",
-        "dkim_key_unused": "Kľúč je nepoužívaný",
-        "dkim_key_valid": "Kľúč je platný",
+        "dkim_key_unused": "Nepoužívaný kľúč",
+        "dkim_key_valid": "Platný kľúč",
         "dkim_keys": "ARC/DKIM kľúče",
         "dkim_overwrite_key": "Prepísať existujúci DKIM kľúč",
         "dkim_private_key": "Súkromný kľúč",
-        "dkim_to": "Komu",
-        "dkim_to_title": "Cieľová doména/y – bude prepísaná",
+        "dkim_to": "Do",
+        "dkim_to_title": "Cieľová doména/y – údaje budú prepísané",
         "domain": "Doména",
         "domain_admin": "Administrátor domény",
         "domain_admins": "Administrátori domény",
@@ -174,21 +192,21 @@
         "f2b_max_attempts": "Max. počet pokusov",
         "f2b_netban_ipv4": "Veľkosť IPv4 subnetu na ktorý sa aplikuje zákaz (8-32)",
         "f2b_netban_ipv6": "Veľkosť IPv6 subnetu na ktorý sa aplikuje zákaz (8-128)",
-        "f2b_parameters": "Fail2ban parametre",
-        "f2b_regex_info": "Logy ktoré sa berú do úvahy: SOGo, Postfix, Dovecot, PHP-FPM.",
+        "f2b_parameters": "Parametre automatického firewallu",
+        "f2b_regex_info": "Záznamy ktoré sa berú do úvahy: SOGo, Postfix, Dovecot, PHP-FPM.",
         "f2b_retry_window": "Čas v ktorom je treba uplatniť max. počet pokusov (s)",
         "f2b_whitelist": "Whitelist sietí/hostiteľov",
         "filter_table": "Tabuľka filtrov",
         "flush_queue": "Vyprázdniť frontu",
-        "forwarding_hosts": "Doručovací hostitelia",
-        "forwarding_hosts_add_hint": "Môžete buď špecifikovať IPv4/IPv6 adresy, siete v CIDR notácii, hostiteľské mená (ktoré budú preložené na IP adresy), alebo doménové mená (ktoré budú ako IP získané z SPF záznamov, alebo v prípade ich neprítomnosti, pomocou MX záznamov).",
-        "forwarding_hosts_hint": "Prichádzajúce správy sú bezpodmienečne prijaté z uvedených hostiteľov. Nekontroluje sa ich prítomnosť v DNSBL a neaplikuje sa u nich greylisting. Spam z uvedených hostiteľov sa neodmieta, ale občas môže skončiť nevyžiadanej pošte. Najčastejšie sa tu definujú hostitelia ktorý doručujú alebo majú presmerovanú poštu na tento server.",
+        "forwarding_hosts": "Preposielacie servery",
+        "forwarding_hosts_add_hint": "Môžete buď špecifikovať IPv4/IPv6 adresy, siete v CIDR notácii, názvy serverov (ktoré budú preložené na IP adresy), alebo doménové mená (ktoré budú ako IP získané z SPF záznamov, alebo v prípade ich neprítomnosti, pomocou MX záznamov).",
+        "forwarding_hosts_hint": "Prichádzajúce správy sú bezpodmienečne prijaté z uvedených serverov. Nekontroluje sa ich prítomnosť v DNSBL a neaplikuje sa u nich greylisting. Spam z uvedených serverov sa neodmieta, ale občas môže skončiť nevyžiadanej pošte. Najčastejšie sa tu definujú servery ktoré doručujú alebo majú presmerovanú poštu na tento server.",
         "from": "Od",
         "generate": "generovať",
         "guid": "GUID – unikátne ID",
         "guid_and_license": "GUID & Licencia",
-        "hash_remove_info": "Odstránením hashu pre limit prenosu (ak stále existuje), sa kompletne resetuje počítadlo.<br>\r\n Každý hash je označený individuálnou farbou.",
-        "help_text": "Pomocný text pod prihlasovacou maskou (HTML povolené)",
+        "hash_remove_info": "Odstránením hashu pre obmedzenie prenosu (ak stále existuje), sa kompletne resetuje počítadlo.<br>\r\n Každý hash je označený individuálnou farbou.",
+        "help_text": "Prepísať text nápovede pod prihlasovacou obrazovkou (HTML povolené)",
         "host": "Hostiteľ",
         "html": "HTML",
         "import": "Importovať",
@@ -196,15 +214,17 @@
         "in_use_by": "Používané",
         "inactive": "Neaktívny",
         "include_exclude": "Zahrnúť/Vylúčiť",
-        "include_exclude_info": "Podľa predvolených nastavení – so žiadnym výberom- <b>všetky schránky</b> sú adresované",
+        "include_exclude_info": "Ak nič nevyberiete tak bude adresované <b>všetkým schránkam</b>",
         "includes": "Zahrnúť týchto príjemcov",
+        "is_mx_based": "Na základe MX",
         "last_applied": "Naposledy aplikované",
         "license_info": "Licencia nie je potrebná, ale napomáha ďalšiemu vývoju.<br><a href=\"https://www.servercow.de/mailcow?lang=en#sal\" target=\"_blank\" alt=\"SAL order\">Registrujte váš GUID tu</a> alebo <a href=\"https://www.servercow.de/mailcow?lang=en#support\" target=\"_blank\" alt=\"Objednávka podpory\">zakúpte si podporu pre vašu mailcow inštaláciu.</a>",
         "link": "Odkaz",
         "loading": "Čakajte prosím ...",
+        "login_time": "Čas prihlásenia",
         "logo_info": "Váš obrázok bude upravený na výšku 40px pre vrchný navigačný riadok a na maximálnu šírku 250px pre úvodnú stránku. Odporúča sa škálovateľná grafika.",
-        "lookup_mx": "Overiť cieľ voči MX záznamu (doručenie pre .outlook.com bude smerované cez MX *.outlook.com na konkrétny server)",
-        "main_name": "\"mailcow UI\" meno",
+        "lookup_mx": "Cieľ je regulárny výraz ktorý sa zhoduje s MX záznamom (<code>.*google\\.com</code> smeruje všetku poštu na MX ktoré sú cieľom pre google.com cez tento skok)",
+        "main_name": "\"mailcow UI\" názov",
         "merged_vars_hint": "Sivé riadky boli načítané z <code>vars.(local.)inc.php</code> a nemôžu byť modifikované cez UI.",
         "message": "Správa",
         "message_size": "Veľkosť správy",
@@ -213,43 +233,52 @@
         "no_active_bans": "Žiadne aktívne zákazy",
         "no_new_rows": "Žiadne ďalšie riadky nie sú k dispozícii",
         "no_record": "Žiaden záznam",
+        "oauth2_apps": "OAuth2 Aplikácie",
+        "oauth2_add_client": "Pridať OAuth2 klienta",
         "oauth2_client_id": "ID klienta",
         "oauth2_client_secret": "Tajný kľuč",
-        "oauth2_info": "OAuth2 implementácia podporuje typ prideľovania \"Authorization Code\" a vydáva tokeny k obnoveniu.<br>\r\nServer taktiež automaticky vydáva nové tokeny k obnoveniu, akonáhle bol predchádzajúci token použitý.<br><br>\r\n→ Predvolený rozsah je <i>profile</i>. Iba používatelia poštovej schránky môžu byť autentifikovaný cez OAuth2. Ak je rozsahový pramater vynechaný, spadá naspäť do <i>profile</i>.<br>\r\n→ <i>Stavový</i> parameter je potrebný poslať klientom ako súčasť autorizačnej požiadavky.<br><br>\r\nCesty pre požiadavky ku OAuth2 API: <br>\r\n<ul>\r\n  <li>Koncový bod autorizácie: <code>/oauth/authorize</code></li>\r\n  <li>Koncový bod tokenu: <code>/oauth/token</code></li>\r\n  <li>Zdrojová stránka:  <code>/oauth/profile</code></li>\r\n</ul>\r\nAk príde k obnoveniu <i>tajného kľúča</i>, nezruší sa platnosť existujúcich autorizačných kódov, ale nebude možné obnoviť ich token.<br><br>\r\nOdobratím <i>tajného kľúča</i> bude mať za následok zrušenie všetkých aktívnych relácií. Všetci klienti musia podstúpiť re-autentifikačný proces.",
+        "oauth2_info": "OAuth2 implementácia podporuje typ prideľovania \"Authorization Code\" a vydáva tokeny k obnoveniu.<br>\r\nServer automaticky vydáva nové tokeny k obnoveniu, akonáhle bol predchádzajúci token použitý.<br><br>\r\n&#8226; Predvolený rozsah je <i>profile</i>. Iba používatelia poštovej schránky môžu byť autentifikovaný cez OAuth2. Ak je rozsahový pramater vynechaný, spadá naspäť do <i>profile</i>.<br>\r\n&#8226; <i>Stavový</i> parameter je potrebný poslať klientom ako súčasť autorizačnej požiadavky.<br><br>\r\nCesty pre požiadavky ku OAuth2 API: <br>\r\n<ul>\r\n <li>Koncový bod autorizácie: <code>/oauth/authorize</code></li>\r\n <li>Koncový bod tokenu: <code>/oauth/token</code></li>\r\n <li>Zdrojová stránka: <code>/oauth/profile</code></li>\r\n</ul>\r\nAk príde k obnoveniu <i>tajného kľúča</i>, nezruší sa platnosť existujúcich autorizačných kódov, ale nebude možné obnoviť ich token.<br><br>\r\nOdobratím <i>tajného kľúča</i> bude mať za následok zrušenie všetkých aktívnych relácií. Všetci klienti musia podstúpiť re-autentifikačný proces.",
         "oauth2_redirect_uri": "Presmerovať URI",
         "oauth2_renew_secret": "Vygenerovať nový tajný kľuč",
         "oauth2_revoke_tokens": "Odobrať všetky tokeny klienta",
         "optional": "voliteľné",
         "password": "Heslo",
+        "password_length": "Dĺžka hesla",
+        "password_policy": "Politika hesiel",
+        "password_policy_chars": "Musí obsahovať najmenej jedno písmeno",
+        "password_policy_length": "Minimálna dĺžka hesla je %d",
+        "password_policy_lowerupper": "Musí obsahovať malé a veľké písmeno",
+        "password_policy_numbers": "Musí obsahovať najmenej jedno číslo",
+        "password_policy_special_chars": "Musí obsahovať špeciálny znak",
         "password_repeat": "Potvrdzujúce heslo (opakovať)",
         "priority": "Priorita",
         "private_key": "Súkromný kľúč",
         "quarantine": "Karanténa",
-        "quarantine_bcc": "Poslať kópiu všetkých upozornení (BCC) tomuto príjemcovi:<br><small>Nechať prázdne pre vypnutie. <b>Nepodpísaná, neskontrolovaná pošta, by mala byť doručená interne.</b></small>",
-        "quarantine_exclude_domains": "Vymedziť domény a doménové aliasy",
-        "quarantine_max_age": "Maximálne obdobie v dňoch<br><small>Hodnota sa musí rovnať alebo byť väčšia ako 1 deň.</small>",
-        "quarantine_max_size": "Maximálna veľkosť v MiB (väčšie prvky sú vyradené):<br><small>0 neznamená <b>neobmedzené</b>.</small>",
+        "quarantine_bcc": "Poslať kópiu všetkých upozornení (BCC) tomuto príjemcovi:<br><small>Pre deaktiváciu nechajte nevyplnené. <b>Nepodpísaná, neskontrolovaná pošta, mala by byť doručovaná iba interne.</b></small>",
+        "quarantine_exclude_domains": "Vylúčiť domény a doménové aliasy",
+        "quarantine_max_age": "Maximálne obdobie v dňoch<br><small>Hodnota musí byť 1 alebo viac dní.</small>",
         "quarantine_max_score": "Neposielať notifikácie ak je spam skóre väčšie ako hodnota:<br><small>Predvolená je 9999.0</small>",
-        "quarantine_notification_html": "Predloha notifikácie:<br><small>Nechať prázdne pre obnovenie originálnej predlohy.</small>",
+        "quarantine_max_size": "Maximálna veľkosť v MiB (väčšie správy sú vyradené):<br><small>0 <b>neznamená</b> neobmedzené.</small>",
+        "quarantine_notification_html": "Šablóna notifikácie:<br><small>Nechajte prázdne pre použitie originálnej šablóny.</small>",
         "quarantine_notification_sender": "Odosielateľ notifikácie",
         "quarantine_notification_subject": "Predmet notifikácie",
-        "quarantine_redirect": "<b>Presmerovať notifikácie</b> na túto adresu:<br><small>Pre vypnutie nechajte nevyplnené. <b>Nepodpísaná, neskontrolovaná pošta, by mala byť doručená interne.</b></small>",
-        "quarantine_release_format": "Uvoľniť položky z karantény ako",
-        "quarantine_release_format_att": "Ako príloha",
+        "quarantine_redirect": "<b>Presmerovať všetky notifikácie</b> na túto adresu:<br><small>Pre deaktiváciu nechajte nevyplnené. <b>Nepodpísaná, neskontrolovaná pošta, mala by byť doručovaná iba interne.</b></small>",
+        "quarantine_release_format": "Uvoľňovať položky z karantény ako",
+        "quarantine_release_format_att": "Prílohu",
         "quarantine_release_format_raw": "Nemodifikovaný originál",
         "quarantine_retention_size": "Počet zadržaných správ pre jednotlivé poštové schránky<br><small>0 znamená <b>neaktívne</b>.</small>",
         "queue_ays": "Prosím potvrďte vymazanie všetkých položiek z aktuálnej fronty.",
         "queue_deliver_mail": "Doručiť",
         "queue_hold_mail": "Pozdržať",
         "queue_manager": "Správca fronty",
-        "queue_unban": "Povoliť",
-        "queue_unhold_mail": "Povoliť",
         "queue_show_message": "Zobraziť správu",
+        "queue_unban": "Odblokovať",
+        "queue_unhold_mail": "Uvoľniť",
         "quota_notification_html": "Notifikácia email predloha:<br><small>Nechať prázdne pre obnovenie originálnej predlohy.</small>",
-        "quota_notification_sender": "Notifikácia email odosielateľ",
-        "quota_notification_subject": "Notifikácia email predmet",
+        "quota_notification_sender": "Odosielateľ notifikácií",
+        "quota_notification_subject": "Predmet notifikácií",
         "quota_notifications": "Notifikácie o kvótach",
-        "quota_notifications_info": "Upozornenie na kvótu sú odoslané používateľom, keď prekročia 80% a 95% objemu schránky.",
+        "quota_notifications_info": "Notifikácie o kvóte sú odosielané používateľom, keď prekročia 80% a 95% objemu schránky.",
         "quota_notifications_vars": "{{percent}} sa rovná aktuálnej kvóte používateľa <br>{{užívateľské meno}} je poštová schránka",
         "r_active": "Aktívne obmedzenia",
         "r_inactive": "Neaktívne obmedzenia",
@@ -258,8 +287,9 @@
         "recipients": "Príjemcovia",
         "refresh": "Aktualizovať",
         "regen_api_key": "Obnoviť API kľúč",
-        "regex_maps": "Mapy regulérnych výrazov",
-        "relay_from": "\"From:\" adresa",
+        "regex_maps": "Mapy regulárnych výrazov",
+        "relay_from": "\"Od:\" adresa",
+        "relay_rcpt": "\"Komu:\" adresa",
         "relay_run": "Spustiť test",
         "relayhosts": "Transportné mapy pre odosielanie",
         "relayhosts_hint": "Definuje transportné mapy tak, aby ich bolo možné použiť pri konfigurácii domény.<br>\r\n  Transportná služba je vždy \"smtp:\" a použije TLS ak to bude umožnené. Wrapped TLS (SMTPS) nie je podporované. Zohľadňujú sa TLS pravidlá jednotlivých používateľov pri odosielaní.<br>\r\n  Ovplyvňuje vybrané domény vrátane doménových aliasov.",
@@ -274,10 +304,11 @@
         "rsetting_no_selection": "Prosím vyberte pravidlo",
         "rsetting_none": "Žiadne dostupné pravidlá",
         "rsettings_insert_preset": "Vložiť príklad \"%s\"",
-        "rsettings_preset_1": "Vypnúť všetky obmedzenia pre overených používateľov okrem DKIM a prenosového obmedzenia ",
+        "rsettings_preset_1": "Vypnúť všetky obmedzenia pre overených používateľov okrem DKIM a obmedzenia prenosu (rate limiting)",
         "rsettings_preset_2": "Prijať každý spam",
         "rsettings_preset_3": "Povoliť len špecifických odosielateľov (využitie ako interná schránka pre lokálne doručovanie)",
-        "rspamd-com_settings": "Názov nastavenia bude automaticky generovaný, prosím pozrite sa na príklad uvedeny nižšie. Pre viac informácií navštívte <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd docs</a>",
+        "rsettings_preset_4": "Deaktivujte Rspamd pre doménu",
+        "rspamd-com_settings": "Názov nastavenia bude automaticky vygenerovaný, pozrite sa prosím na ukážky uvedené nižšie. Pre viac informácií navštívte <a href=\"https://rspamd.com/doc/configuration/settings.html#settings-structure\" target=\"_blank\">Rspamd dokumentáciu</a>",
         "rspamd_global_filters": "Mapy globálnych filtrov",
         "rspamd_global_filters_agree": "Budem opatrný!",
         "rspamd_global_filters_info": "Mapy globálnych filtrov obsahujú rozličné druhy globálnych blacklistov a whitelistov.",
@@ -288,18 +319,22 @@
         "search_domain_da": "Vyhľadať domény",
         "send": "Odoslať",
         "sender": "Odosielateľ",
+        "service": "Služba",
         "service_id": "ID služba",
         "source": "Zdroj",
         "spamfilter": "Spam filter",
         "subject": "Predmet",
+        "success": "Úspech",
         "sys_mails": "Systémové správy",
         "text": "Text",
         "time": "Čas",
-        "title_name": "\"mailcow UI\" názov webstránky",
+        "title": "Názov",
+        "title_name": "\"mailcow UI\" titulka",
         "to_top": "Naspať navrch",
-        "transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (viacero hodnôt môžu byť oddelené čiarkou)",
+        "transport_dest_format": "Regulárny výraz alebo syntax: example.org, .example.org, *, box@example.org (viacero hodnôt môžu byť oddelené čiarkou)",
         "transport_maps": "Transportné Mapy",
-        "transports_hint": "→ Záznam v transportnej mape <b>prevažuje</b> nad transportnou mapou pre odosielanie</b>.<br>\r\n→ Nastavenie TLS pre používateľa je ignorované a môže byť vynútené TLS mapovaním.<br>\r\n→ Transportná služba je definovaná vždy \"smtp:\" a použije TLS ak to bude umožnené. Wrapped TLS (SMTPS) nie je podporované.<br>\r\n→ Adresy ktoré sa rovnajú hodnote \"/localhost$/\" budú vždy transportované cez \"local:\" a nebudú použité pre cieľový záznam \"*\".<br>\r\n→ Po zadaní prihlasovacích údajov pre ďalší skok \"[host]:25\", Postfix <b>vždy</b> hľadá \"host\" a následne \"[host]:25\". Táto vlastnosť znemožňuje používať \"host\" a \"[host]:25\" naraz.",
+        "transport_test_rcpt_info": "&#8226; Na otestovanie odchádzajúcej pošty je možné použiť null@hosted.mailcow.de ako adresáta",
+        "transports_hint": "&#8226; Záznam v transportnej mape <b>prevažuje</b> nad transportnou mapou pre odosielanie</b>.<br>\r\n&#8226; Prenos na základe MX je preferovaná voľba.<br>\r\n&#8226; Nastavenie TLS pre používateľa je ignorované a môže byť vynútené TLS mapovaním.<br>\r\n&#8226; Transportná služba je definovaná vždy \"smtp:\" a použije TLS ak to bude umožnené. Wrapped TLS (SMTPS) nie je podporované.<br>\r\n&#8226; Adresy ktoré sa rovnajú hodnote \"/localhost$/\" budú vždy transportované cez \"local:\" a nebudú použité pre cieľový záznam \"*\".<br>\r\n&#8226; Po zadaní prihlasovacích údajov pre ďalší skok \"[host]:25\", Postfix <b>vždy</b> hľadá \"host\" a následne \"[host]:25\". Táto vlastnosť znemožňuje používať \"host\" a \"[host]:25\" naraz.",
         "ui_footer": "Pätička (HTML povolené)",
         "ui_header_announcement": "Oznámenie",
         "ui_header_announcement_active": "Aktivovať oznámenie",
@@ -307,15 +342,16 @@
         "ui_header_announcement_help": "Oznámenie je viditeľné pre všetkých prihlásených používateľov a na prihlasovacej obrazovke používateľského rozhrania.",
         "ui_header_announcement_select": "Zvoľte typ oznámenia",
         "ui_header_announcement_type": "Typ",
+        "ui_header_announcement_type_danger": "Veľmi dôležité",
         "ui_header_announcement_type_info": "Info",
         "ui_header_announcement_type_warning": "Dôležité",
-        "ui_header_announcement_type_danger": "Veľmi dôležité",
         "ui_texts": "UI značky a texty",
         "unban_pending": "čakajúci na unban",
         "unchanged_if_empty": "Nechajte prázdne, ak sa nemení",
         "upload": "Nahrať",
         "username": "Prihlasovacie meno",
         "validate_license_now": "Validovať GUID cez licenčný server",
+        "verify": "Kontrola",
         "yes": "&#10003;"
     },
     "danger": {
@@ -328,9 +364,9 @@
         "aliases_in_use": "Max. počet aliasov musí byť väčší alebo rovnajúci sa %d",
         "app_name_empty": "Meno aplikácie nemôže byť prázdne",
         "app_passwd_id_invalid": "Heslo aplikácie ID %s neplatné",
-        "bcc_empty": "BCC cieľ nemôže byť prázdny",
-        "bcc_exists": "BCC mapa %s existuje pre typ %s",
-        "bcc_must_be_email": "BCC cieľ %s nie je platná emailová adresa",
+        "bcc_empty": "Cieľ kópie nemôže byť prázdny",
+        "bcc_exists": "Skrytá kópia %s už existuje pre typ %s",
+        "bcc_must_be_email": "Cieľ kópie %s nie je platná emailová adresa",
         "comment_too_long": "Komentár je príliš dlhý, povolených je max. 160 znakov",
         "defquota_empty": "Predvolená kvóta pre poštovú schránku nemôže byť 0.",
         "description_invalid": "Popis zdroja pre %s je neplatný",
@@ -344,6 +380,7 @@
         "domain_quota_m_in_use": "Doménová kvóta musí byť väčšia alebo rovnajúca sa %s MiB",
         "extra_acl_invalid": "Externá adresa odosielateľa \"%s\" je neplatná",
         "extra_acl_invalid_domain": "Externý odosielateľ \"%s\" používa neplatnú doménu",
+        "fido2_verification_failed": "FIDO2 overenie zlyhalo: %s",
         "file_open_error": "Nemožno otvoriť súbor pre zápis",
         "filter_type": "Nesprávny typ filtra",
         "from_invalid": "Odosielateľ nemôže byť prázdny",
@@ -367,7 +404,7 @@
         "invalid_recipient_map_old": "Neplatná pôvodná mapa príjemcu: %s",
         "ip_list_empty": "Zoznam povolených IP nemôže byť prázdny",
         "is_alias": "%s je už používané ako alias adresa",
-        "is_alias_or_mailbox": "%s je už používaná ako adresa aliasu, poštovej schránky nebo aliasu odvodeného z aliasu domény",
+        "is_alias_or_mailbox": "%s je už používaná ako adresa aliasu, poštovej schránky alebo aliasu odvodeného z aliasu domény",
         "is_spam_alias": "%s je už používaná ako adresa dočasného aliasu (spam alias adresa)",
         "last_key": "Posledný kľúč nemôže byť vymazaný, deaktivujte najprv TFA",
         "login_failed": "Prihlásenie zlyhalo",
@@ -387,6 +424,7 @@
         "network_host_invalid": "Neplatná sieť alebo hostiteľ: %s",
         "next_hop_interferes": "%s narúša ďalší skok %s",
         "next_hop_interferes_any": "Existujúci ďalší skok narúša %s",
+        "nginx_reload_failed": "Nginx reload zlyhal: %s",
         "no_user_defined": "Nie je definovaný žiadny používateľ",
         "object_exists": "Objekt %s už existuje",
         "object_is_not_numeric": "Hodnota %s nie je numerická",
@@ -404,7 +442,7 @@
         "redis_error": "Redis chyba: %s",
         "relayhost_invalid": "Položka %s je neplatná",
         "release_send_failed": "Správa nemohla byť uvoľnená: %s",
-        "reset_f2b_regex": "Regex filter sa nepodarilo resetovať, skúste to znovu alebo počkajte pár sekúnd a reloadnite stránku.",
+        "reset_f2b_regex": "Regex filter sa nepodarilo resetovať, skúste to znovu alebo počkajte pár sekúnd a obnovte stránku.",
         "resource_invalid": "Zdrojové meno %s je neplatné",
         "rl_timeframe": "Obmedzenie časového rámca je nesprávny",
         "rspamd_ui_pw_length": "Heslo pre Rspamd rozhranie by malo mať minimálne 6 znakov",
@@ -427,42 +465,52 @@
         "totp_verification_failed": "TOTP overenie zlyhalo",
         "transport_dest_exists": "Transportný cieľ \"%s\" už existuje",
         "u2f_verification_failed": "U2F overenie zlyhalo: %s",
-        "fido2_verification_failed": "FIDO2 overenie zlyhalo: %s",
         "unknown": "Nastala neznáma chyba",
         "unknown_tfa_method": "Neznáma TFA metóda",
         "unlimited_quota_acl": "Neobmedzené kvóta je zakázaná cez ACL",
-        "username_invalid": "Užívateľské meno %s nemôže byť použité",
+        "username_invalid": "Používateľské meno %s nemôže byť použité",
         "validity_missing": "Zadajte periódu platnosti",
         "value_missing": "Prosím poskytnite všetky hodnoty",
+        "xmpp_map_write_error": "Nemožno zapísať XMPP mapu: %s",
+        "xmpp_reload_failed": "Reloadnutie XMPP zlyhalo",
+        "xmpp_restart_failed": "Reštartovanie XMPP zlyhalo",
         "yotp_verification_failed": "Yubico OTP overenie zlyhalo: %s"
     },
     "debug": {
         "chart_this_server": "Graf (tento server)",
         "containers_info": "Informácie o kontajneroch",
         "disk_usage": "Použitie disku",
-        "external_logs": "Externé správy",
+        "docs": "Dokumenty",
+        "external_logs": "Externé logy",
         "history_all_servers": "História (všetky servery)",
-        "in_memory_logs": "Správy uložené v pamäti",
+        "in_memory_logs": "Logy uložené v pamäti",
         "jvm_memory_solr": "JVM spotreba pamäte",
-        "log_info": "<b>Logy v pamäti</b> sú zbierané do Redis listu s max. limitom (%d) riadkov každú minútu, čo bráni nadmernej záťaži servera.\r\n  <br>Logy v pamäti nemajú trvalý charakter. Všetky aplikácie ktoré vedú logy v pamäti, taktiež logujú do Docker démona a súčasne do nastaveného logging drivera.\r\n  <br>Logy v pamäti sa môžu použiť na ladenie menších problémov s kontajnermi.</p>\r\n  <p><b>Externé logy</b> sú zbierané cez API danej aplikácie.</p>\r\n  <p><b>Statické logy</b> sú väčšinou aktivity, ktoré nie sú logované do Docker démona, ale musia byť trvalo zaznamenané (s výnimkou API záznamov).</p>",
-        "logs": "Správy",
+        "last_modified": "Naposledy upravené",
+        "log_info": "<b>Logy v pamäti</b> sú zbierané do Redis listu s max. limitom LOG_LINES (%d) riadkov každú minútu, čo bráni nadmernej záťaži servera.\r\n  <br>Logy v pamäti nemajú trvalý charakter. Všetky aplikácie ktoré vedú logy v pamäti, tiež logujú do Docker démona a súčasne do nastaveného logging drivera.\r\n  <br>Logy v pamäti sa môžu použiť na ladenie menších problémov s kontajnermi.</p>\r\n  <p><b>Externé logy</b> sú zbierané cez API danej aplikácie.</p>\r\n  <p><b>Statické logy</b> sú väčšinou aktivity, ktoré nie sú logované do Docker démona, ale musia byť trvalo zaznamenané (s výnimkou API záznamov).</p>",
+        "login_time": "Čas",
+        "logs": "Logy",
+        "online_users": "Používateľov online",
         "restart_container": "Reštartovať",
-        "solr_dead": "Solr štartuje, bol vypnutý alebo zlyhal.",
-        "solr_docs": "Dokumenty",
-        "solr_last_modified": "Naposledy upravené",
-        "solr_size": "Veľkosť",
-        "solr_started_at": "Spustený",
+        "service": "Služba",
+        "size": "Veľkosť",
+        "solr_dead": "Solr štartuje, je vypnutý alebo nebeží.",
         "solr_status": "Solr status",
-        "solr_uptime": "Doba behu",
+        "started_at": "Spustený",
         "started_on": "Spustený",
-        "static_logs": "Statické správy",
-        "system_containers": "Systém & Kontajnery"
+        "static_logs": "Statické logy",
+        "success": "Úspech",
+        "system_containers": "Systém & Kontajnery",
+        "uptime": "Doba behu",
+        "username": "Používateľské meno",
+        "xmpp_dead": "XMPP štartuje, je vypnutý alebo nebeží.",
+        "xmpp_status": "XMPP status"
     },
     "diagnostics": {
         "cname_from_a": "Hodnota odvodená od A/AAAA záznamu. Toto je podporené len v prípade ak záznam poukazuje na správny zdroj.",
         "dns_records": "DNS záznamy",
         "dns_records_24hours": "Berte prosím do úvahy, že zmeny v DNS môžu trvať až 24 hodín, aby sa zmeny prejavili na tejto stránke. Pre jednoduchosť DNS konfigurácie môžete použiť údaje uvedené nižšie, prípadne skontrolovať tak správnosť záznamov v DNS.",
         "dns_records_data": "Správne dáta",
+        "dns_records_docs": "Pozrite si prosím <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">dokumentáciu</a>.",
         "dns_records_name": "Meno",
         "dns_records_status": "Súčasný stav",
         "dns_records_type": "Typ",
@@ -470,21 +518,23 @@
     },
     "edit": {
         "active": "Aktívny",
+        "admin": "Upraviť administrátora",
+        "advanced_settings": "Pokročilé nastavenia",
         "alias": "Upraviť alias",
         "allow_from_smtp": "Umožniť iba týmto IP adresám používať <b>SMTP</b>",
-        "allow_from_smtp_info": "Nechať prázdne pre povolenie všetkých odosielateľov.<br>IPv4/IPv6 adresy a siete.",
+        "allow_from_smtp_info": "Nechajte prázdne pre povolenie všetkých odosielateľov.<br>IPv4/IPv6 adresy a siete.",
         "allowed_protocols": "Povolené protokoly",
         "app_name": "Meno aplikácie",
         "app_passwd": "Heslo aplikácie",
         "automap": "Skúsiť automapovať priečinky (\"Sent items\", \"Sent\" => \"Sent\" atd.)",
         "backup_mx_options": "Možnosti preposielania",
-        "bcc_dest_format": "BCC cieľ musí byť jedna platná emailová adresa.",
+        "bcc_dest_format": "Cieľ kópie musí byť jedna platná emailová adresa. Pokiaľ potrebujete posielať kópie na viac adries, vytvorte Alias a použite ho tu.",
         "client_id": "ID klienta",
         "client_secret": "Klientský tajný kľúč",
         "comment_info": " Súkromný komentár nie je viditeľný používateľovi, na rozdiel od verejného komentára, ktorý je prezentovaný ako popis v prehľade používateľov",
-        "delete1": "Vymazať zo zdroja, po dokončení",
-        "delete2": "Vymazať správy na cieli, ktoré nie sú na zdroji",
-        "delete2duplicates": "Vymazať duplikáty na cieli",
+        "delete1": "Vymazať zo zdrojovej schránky, po dokončení prenosu",
+        "delete2": "Vymazať správy v cieľovej schránke, ak nie sú v zdrojovej",
+        "delete2duplicates": "Vymazať duplikáty v cieľovej schránke",
         "delete_ays": "Potvrďte zmazanie.",
         "description": "Popis",
         "disable_login": "Zablokovať prihlásenie (nevzťahuje sa na prichádzajúcu poštu)",
@@ -493,13 +543,13 @@
         "domain_quota": "Kvóta domény",
         "domains": "Domény",
         "dont_check_sender_acl": "Vypnúť kontrolu odosielateľa pre doménu %s (+ alias domény)",
-        "edit_alias_domain": "Upraviť Alias domény",
+        "edit_alias_domain": "Upraviť alias domény",
         "encryption": "Zašifrovanie",
         "exclude": "Vyradiť objekty (regex)",
         "extended_sender_acl": "Externé adresy odosielateľa",
         "extended_sender_acl_info": "DKIM doménový kľúč by mal byť importovaný, ak je dostupný.<br>\r\n Nezabudnite pridať tento server prislúchajúcemu SPF TXT záznamu.<br>\r\n  Kedykoľvek je doména alebo alias doména pridaná na server, ktorá sa zhoduje s externou adresou, táto externá adresa je odstránená.<br>\r\n  Použite @domain.tld pre schopnosť poslať ako *@domain.tld.",
-        "force_pw_update": "Prinútiť aktualizáciu hesla pri ďalšom prihlásení",
-        "force_pw_update_info": "Tento používateľ bude schopný prihlásiť sa len do %s.",
+        "force_pw_update": "Vynútiť zmenu hesla pri ďalšom prihlásení",
+        "force_pw_update_info": "Používateľ sa bude môcť prihlásiť len do administrácie.",
         "full_name": "Celé meno",
         "gal": "Globálny zoznam adries",
         "gal_info": "Globálny zoznam adries obsahuje všetky objekty v doméne a nemôže byť upravená žiadnym používateľom. Informácie o Free/Busy stave budú chýbať ak bude vypnutý! <b>Reštartujte SOGo na aplikáciu zmien.</b>",
@@ -508,17 +558,20 @@
         "hostname": "Hostiteľ",
         "inactive": "Neaktívny",
         "kind": "Druh",
+        "lookup_mx": "Cieľ je regulárny výraz ktorý sa zhoduje s MX záznamom (<code>.*google\\.com</code> smeruje všetku poštu na MX ktoré sú cieľom pre google.com cez tento skok)",
         "mailbox": "Upraviť poštovú schránku",
         "mailbox_quota_def": "Predvolená veľkosť poštovej schránky",
+        "mailbox_relayhost_info": "Aplikované len na používateľské schránky a priame aliasy, prepisuje doménového preposielateľa.",
         "max_aliases": "Max. počet aliasov",
         "max_mailboxes": "Max. počet schránok",
         "max_quota": "Max. kvóta pre poštovú schránku (MiB)",
         "maxage": "Maximálne obdobie správ v dňoch, ktoré sa budú vzdialene dotazovať<br><small>(0 = ignorovať obdobie age)</small>",
         "maxbytespersecond": "Max. bajtov za sekundu <br><small>(0 = bez limitu)</small>",
-        "mbox_rl_info": "Tento limit je aplikovaný na SASL prihlasovacom meno, je zhodný s \"from\" adresou používanou prihláseným používateľom. Prenosový limit u poštovej adresy má prednosť pred domain-wide prenosovým limitom.",
+        "mbox_rl_info": "Tento limit je aplikovaný na báze prihlasovacieho mena SASL, je zhodný s \"from\" adresou používanou prihláseným používateľom. Prenosový limit u poštovej adresy má prednosť pred domain-wide prenosovým limitom.",
         "mins_interval": "Interval (min)",
         "multiple_bookings": "Viaceré rezervácie",
         "nexthop": "Ďalší skok",
+        "none_inherit": "Žiadne / Zdediť",
         "password": "Heslo",
         "password_repeat": "Potvrdzovacie heslo (opakovať)",
         "previous": "Predchádzajúca strana",
@@ -528,12 +581,15 @@
         "pushover_info": "Push notifikácie budú aplikované na všetky správy (s výnimkou spamu) doručené pre <b>%s</b> vrátane aliasov (zdieľané, nezdieľané, označené).",
         "pushover_only_x_prio": "Vyberať len správy s vysokou prioritou [<code>X-Priority: 1</code>]",
         "pushover_sender_array": "Zohľadňujú sa nasledujúce adresy odosielateľa <small>(oddelené čiarkou)</small>",
-        "pushover_sender_regex": "Užívateľ vybraný regulérnym výrazom",
+        "pushover_sender_regex": "Používateľ vybraný regulárnym výrazom",
         "pushover_text": "Text notifikácie",
         "pushover_title": "Názov notifikácie",
         "pushover_vars": "Ak nie je definovaný žiadny filter odosielateľa, zohľadnia sa všetky správy.<br>Priama kontrola odosielateľa a regulárne výrazy sa kontrolujú nezávisle od seba, <b>nezávisia od seba navzájom</b> a vykonávajú sa postupne.<br>Použiteľné premenné pre názov a text (dodržujte pokyny na ochranu osobných údajov)",
         "pushover_verify": "Overiť prístupové údaje",
         "quota_mb": "Kvóta (MiB)",
+        "quota_warning_bcc": "Upozornenie na kvótu BCC",
+        "quota_warning_bcc_info": "Upozornenia budú poslané ako samostatné kópie nasledujúcim prijímateľom. Predmet bude doplnený o použivateľské meno v zátvorkách, príklad: <code>Upozornenie na kvótu (user@example.com)</code>.",
+        "ratelimit": "Obmedzenie prenosu",
         "redirect_uri": "Presmerovať URL",
         "relay_all": "Preposielať všetkých prijemcov",
         "relay_all_info": "↪ Ak sa rozhodnete <b>nepreposielať</b> všetkých príjemcov, budete musieť pridať (\"tzv. slepú\") poštovú schránku pre každého príjemcu.",
@@ -546,7 +602,7 @@
         "save": "Uložiť zmeny",
         "scope": "Rozsah",
         "sender_acl": "Povoliť odosielanie ako",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Kontrola odosielateľa vypnutá</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Kontrola odosielateľa vypnutá</span>",
         "sender_acl_info": "Ak poštový používateľ A má povolenie poslať ako poštový používateľ B, adresa odosielateľa nieje automaticky viditeľná ako voliteľné \"from\" pole v SOGo.<br>\r\n Poštový používateľ B potrebuje vytvoriť delegáciu v SOGo, aby bol schopný poštový používateľ A vybrať svoju adresu ako odosielateľ. Na delegovanie poštovej adresy v SOGo, použite menu (tri bodky) napravo vášho poštového mena v hornom ľavom rohu, v prehľade správ. Toto neplatí pre alias adresy.",
         "sieve_desc": "Krátky popis",
         "sieve_type": "Typ filtru",
@@ -556,27 +612,53 @@
         "sogo_visible": "Alias je viditeľný v SOGo",
         "sogo_visible_info": "Táto voľba ovplyvňuje len objekty, ktoré dokážu byť zobrazené v SOGo (zdieľané alebo nezdieľané alias adresy ukazujúc na minimálne jednu lokálnu poštovú schránku). Ak je skrytý, alias nebude prezentovaný ako voliteľný odosielateľ v SOGo.",
         "spam_alias": "Vytvoriť alebo zmeniť časovo limitované alias adresy",
+        "spam_filter": "Spam filter",
         "spam_policy": "Pridať alebo odstrániť položky do bielej/čiernej listiny",
         "spam_score": "Stanoviť vlastnú spam hodnotu",
         "subfolder2": "Synchronizovať do podadresára na cieli<br><small>(prázdne = nevytvárať podpriečinok)</small>",
         "syncjob": "Upraviť synchronizačnú úlohu",
         "target_address": "Cieľová adresa/y <small>(oddelené čiarkou)</small>",
         "target_domain": "Cieľová doména",
-        "timeout1": "Timeout pre spojenie s diaľkovým hostiteľom",
-        "timeout2": "Timeout pre spojenie s lokálnym hostiteľom",
+        "timeout1": "Timeout pre spojenie s vzdialeným serverom",
+        "timeout2": "Timeout pre spojenie s lokálnym serverom",
         "title": "Upraviť objekt",
         "unchanged_if_empty": "Ak nemeníte, nechajte prázdne",
         "username": "Používateľské meno",
-        "validate_save": "Validovať a uložiť"
+        "validate_save": "Validovať a uložiť",
+        "xmpp": "Aktivovať XMPP pre túto doménu",
+        "xmpp_access": "XMPP prístup",
+        "xmpp_access_info": "XMPP musí byť aktivované pre túto doménu.",
+        "xmpp_admin": "XMPP administrátor",
+        "xmpp_admin_info": "<b>Upozornenie:</b> Povýši užívateľa na XMPP administrátora pre túto doménu.",
+        "xmpp_example_jid": "<b>Príklad JID</b> (prihlásenie s mail heslom)",
+        "xmpp_info": "Aktivovanie tejto funkcie umožní četovanie v tejto doméne.",
+        "xmpp_prefix": "XMPP prefix pre doménu (\"im\" bude použitý ako <b>im</b>.example.org)",
+        "xmpp_prefix_info": "Pre vyžiadanie certifikátov pre XMPP by mali smerovať dva CNAME DNS záznamy z <b>im</b>.example.org ako aj <b>*.im</b>.example.org na <b>%s</b>. Prosím spustie DNS kontrolu po zapnutí XMPP."
+    },
+    "fido2": {
+        "confirm": "Potvrdiť",
+        "fido2_auth": "Prihlásiť sa cez FIDO2",
+        "fido2_success": "Zariadenie úspešne zaregistrované",
+        "fido2_validation_failed": "Overenie zlyhalo",
+        "fn": "Užívateľsky prívetivý názov",
+        "known_ids": "Známe ID",
+        "none": "Vypnuté",
+        "register_status": "Stav registrácie",
+        "rename": "Premenovať",
+        "set_fido2": "Registrovať FIDO2 zariadenie",
+        "set_fn": "Nastaviť zjednodušené meno",
+        "start_fido2_validation": "Spustiť FIDO2 overenie"
     },
     "footer": {
         "cancel": "Zrušiť",
         "confirm_delete": "Potvrďte vymazanie",
         "delete_now": "Vymazať teraz",
         "delete_these_items": "Prosím potvrďte svoje vykonané zmeny nasledujúcemu objektovému id",
+        "hibp_check": "Overiť heslo v databáze hacknutých hesiel haveibeenpwned.com",
         "hibp_nok": "Zhoda! Toto je potenciálne nebezpečné heslo!",
         "hibp_ok": "Nenašla sa zhoda.",
         "loading": "Prosím čakajte...",
+        "nothing_selected": "Nie je nič vybrané",
         "restart_container": "Reštartovať kontajner",
         "restart_container_info": "<b>Dôležité:</b> Reštartovanie môže trvať dlhšie, čakajte prosím ...",
         "restart_now": "Reštartuj teraz",
@@ -591,7 +673,7 @@
         "quarantine": "Karanténa",
         "restart_netfilter": "Reštartovať netfilter",
         "restart_sogo": "Reštart SOGo",
-        "user_settings": "Užívateľské nastavenia"
+        "user_settings": "Používateľské nastavenia"
     },
     "info": {
         "awaiting_tfa_confirmation": "Očakávanie TFA potvrdenia",
@@ -613,43 +695,46 @@
         "active": "Aktívny",
         "add": "Pridať",
         "add_alias": "Pridať alias",
-        "add_bcc_entry": "Pridať BCC mapu",
+        "add_alias_expand": "Rozšíriť alias o alias domény",
+        "add_bcc_entry": "Pridať skrytú kópiu",
         "add_domain": "Pridať doménu",
-        "add_domain_alias": "Pridať alias domény",
+        "add_domain_alias": "Pridať alias doménu",
         "add_domain_record_first": "Prosím pridajte najprv doménu",
         "add_filter": "Pridať filter",
         "add_mailbox": "Pridať poštovú schránku",
         "add_recipient_map_entry": "Pridať mapu príjemcu",
         "add_resource": "Pridať zdroj",
         "add_tls_policy_map": "Pridať TLS mapu pravidiel",
-        "address_rewriting": "Prepisovanie adresy",
+        "address_rewriting": "Prepisovanie adries",
         "alias": "Alias",
-        "alias_domain_alias_hint": "Aliasy <b>nie sú</b> aplikované na aliasy domén automaticky. Alias adresa <code>my-alias@domain</code> <b>nezahŕňa adresu</b> <code>my-alias@alias-domain</code> (kde \"alias-doména\" je imaginárna alias doména pre \"doména\").<br>Prosím použite sieve filter na presmerovanie pošty na externú poštovú schránku (pozri sekciu \"Filtre\" alebo použite SOGo -> Forwarder).",
+        "alias_domain_alias_hint": "Aliasy <b>nie sú</b> aplikované na aliasy domén automaticky. Alias adresa <code>my-alias@domain</code> <b>nezahŕňa adresu</b> <code>my-alias@alias-domain</code> (kde \"alias-doména\" je imaginárna alias doména pre \"doména\").<br>Prosím použite sieve filter na presmerovanie pošty na externú poštovú schránku (pozri sekciu \"Filtre\" alebo použite SOGo -> Forwarder). Použite \"Rozšíriť alias o aliasové domény\" na automatické doplnenie chýbajúcich aliasov.",
         "alias_domain_backupmx": "Doménový alias je neaktívny pre preposielaciu doménu",
         "aliases": "Aliasy",
+        "all_domains": "Všetky Domény",
         "allow_from_smtp": "Umožniť iba týmto IP adresám používať <b>SMTP</b>",
-        "allow_from_smtp_info": "Nechať prázdne pre povolenie všetkých odosielateľov.<br>IPv4/IPv6 adresy a siete.",
+        "allow_from_smtp_info": "Nechajte prázdne pre povolenie všetkých odosielateľov.<br>IPv4/IPv6 adresy a siete.",
         "allowed_protocols": "Povolené protokoly",
         "backup_mx": "Preposielať doménu",
         "bcc": "BCC",
-        "bcc_destination": "BCC cieľ",
-        "bcc_destinations": "BCC ciele",
-        "bcc_info": "BCC mapy sú používané na preposlanie kópií všetkých správ na ďalšiu adresu. Mapa príjemcov je použitá, keď lokálny cieľ je príjemcom správy. Mapy odosielateľov podliehajú tomu istému princípu.<br/>\r\n Lokálny cieľ nebude informovaný o zlyhanom doručení.",
-        "bcc_local_dest": "Lokálny cieľ",
-        "bcc_map": "BCC mapa",
-        "bcc_map_type": "BCC typ mapy",
-        "bcc_maps": "BCC mapy",
-        "bcc_rcpt_map": "Mapa príjemcu",
-        "bcc_sender_map": "Mapa odosielateľa",
-        "bcc_to_rcpt": "Prepnúť na mapu príjemcu",
-        "bcc_to_sender": "Prepnúť na mapu odosielateľa",
-        "bcc_type": "BCC typ",
-        "booking_0": "Vždy ukázať ako voľný",
-        "booking_0_short": "Neustále voľno",
-        "booking_custom": "Tvrdý limit nastaviteľné množstvo rezervácií",
+        "bcc_destination": "Cieľ kópie",
+        "bcc_destinations": "Ciele kópií",
+        "bcc_info": "Skyté kópie (BCC mapy) sú používané na preposlanie skrytých kópií všetkých správ na ďalšiu adresu. Pri použití skrytej kópie typu <i>Prijatý e-mail</i> budú preposlané všetky maily smerujúce na dotyčnú adresu alebo doménu.\nPri type <i>Odoslaný e-mail</i> budú preposlané všetky maily odoslané z dotyčnej adresy alebo domény.\nPokiaľ zlyhá preposlanie na cieľovú adresu, tak odosielateľ o tom nebude informovaný.",
+        "bcc_local_dest": "Týka sa",
+        "bcc_map": "Skrytá kópia",
+        "bcc_map_type": "Typ skrytej kópie",
+        "bcc_maps": "Skryté kópie",
+        "bcc_rcpt_map": "Prijatý e-mail",
+        "bcc_sender_map": "Odoslaný e-mail",
+        "bcc_to_rcpt": "Prepnúť typ na Prijatý e-mail",
+        "bcc_to_sender": "Prepnúť typ na Odoslaný e-mail",
+        "bcc_type": "Typ skrytej kópie",
+        "booking_0": "Vždy zobraziť ako voľný",
+        "booking_0_short": "Neustále voľný",
+        "booking_custom": "Limitované na pevný počet rezervácií",
         "booking_custom_short": "Tvrdý limit",
         "booking_lt0": "Bez limitu, ale zobraziť obsadené po rezervácii",
-        "booking_lt0_short": "Mäkký limit",
+        "booking_lt0_short": "Voľný limit",
+        "catch_all": "Doménový kôš",
         "daily": "Denný",
         "deactivate": "Deaktivovať",
         "description": "Popis",
@@ -657,30 +742,33 @@
         "disable_x": "Pozastaviť",
         "domain": "Doména",
         "domain_admins": "Administrátori domény",
-        "domain_aliases": "Aliasy domény",
+        "domain_aliases": "Alias domény",
         "domain_quota": "Kvóta",
         "domains": "Domény",
         "edit": "Upraviť",
         "empty": "Žiadne výsledky",
         "enable_x": "Povolené",
         "excludes": "Vyraďuje",
-        "filter_table": "Tabuľka filtrov",
+        "filter_table": "Filtrovať tabuľku",
         "filters": "Filtre",
         "fname": "Celé meno",
+        "goto_ham": "Považovať za <b>ham</b>",
+        "goto_spam": "Považovať za <b>spam</b>",
         "hourly": "Hodinový",
         "in_use": "Obsadenosť (%)",
         "inactive": "Neaktívny",
         "insert_preset": "Vložiť vzor nastavenia \"%s\"",
         "kind": "Druh",
         "last_mail_login": "Posledné prihlásenie",
+        "last_pw_change": "Naposledy zmenené heslo",
         "last_run": "Posledné spustenie",
-        "last_run_reset": "Naplánovať ďalší",
+        "last_run_reset": "Znovu naplánovať",
         "mailbox": "Poštová schránka",
+        "mailbox_defaults": "Predvolené nastavenia",
+        "mailbox_defaults_info": "Definuje predvolené nastavenia pre nové schránky",
         "mailbox_defquota": "Predvolená veľkosť schránky",
         "mailbox_quota": "Max. veľkosť schránky",
         "mailboxes": "Poštové schránky",
-        "mailbox_defaults": "Predvolené nastavenia",
-        "mailbox_defaults_info": "Definuje predvolené nastavenia pre nové schránky",
         "mins_interval": "Interval (min)",
         "msg_num": "Počet správ",
         "multiple_bookings": "Viaceré rezervácie",
@@ -688,15 +776,17 @@
         "no": "&#10005;",
         "no_record": "Žiaden záznam pre objekt %s",
         "no_record_single": "Žiaden záznam",
+        "open_logs": "Otvoriť záznam",
         "owner": "Majiteľ",
         "private_comment": "Súkromný komentár",
         "public_comment": "Verejný komentár",
         "q_add_header": "Priečinok nevyžiadaná pošta",
         "q_all": "Všetky kategórie",
         "q_reject": "Odmietnutá",
-        "quarantine_notification": "Karanténne notifikácie",
         "quarantine_category": "Kategória karanténnych notifikácií",
+        "quarantine_notification": "Karanténne notifikácie",
         "quick_actions": "Akcia",
+        "recipient": "Prijatý e-mail",
         "recipient_map": "Mapa príjemcu",
         "recipient_map_info": "Mapy príjemcov sú používané ako náhrada cieľovej adresy u správy pred doručením.",
         "recipient_map_new": "Nový príjemca",
@@ -707,9 +797,10 @@
         "remove": "Odstrániť",
         "resources": "Zdroje",
         "running": "Bežiaci",
+        "sender": "Odoslaný e-mail",
         "set_postfilter": "Označiť ako postfilter",
         "set_prefilter": "Označiť ako prefilter",
-        "sieve_info": "Môžete uchovávať viacero filtrov pre používateľa, ale iba jeden prefilter a jeden postfilter môže byť aktívny v daný okamih.<br>\r\n Každý filter bude spracovaný v nastavenom poradí. Ani zlyhanie skriptu alebo zadržanie nezastaví spracovanie ďalších skriptov. Po úprave sieve filtrov bude nasledovať reštart dovecotu.<br><br>Globálny sieve prefilter → Prefilter → Skripty používateľa → Postfilter → Globálny sieve postfilter",
+        "sieve_info": "Môžete uchovávať viacero filtrov pre používateľa, ale iba jeden prefilter a jeden postfilter môže byť aktívny v daný okamih.<br>\r\n Každý filter bude spracovaný v nastavenom poradí. Ani zlyhanie skriptu alebo zadržanie nezastaví spracovanie ďalších skriptov. Po úprave sieve filtrov bude nasledovať reštart dovecotu.<br><br>Globálny sieve prefilter &#8226; Prefilter &#8226; Skripty používateľa &#8226; Postfilter &#8226; Globálny sieve postfilter",
         "sieve_preset_1": "Vyradiť poštu s pravdepodobnými typmi nebezpečných súborov",
         "sieve_preset_2": "Neustále označovať poštu špecifického odosielateľa ako videnú",
         "sieve_preset_3": "Potichu zahodiť a zastaviť všetky nasledovné spracovanie sieve filtrami",
@@ -719,10 +810,9 @@
         "sieve_preset_7": "Presmerovať a uchovať/zahodiť",
         "sieve_preset_8": "Zahodiť správu odoslanú na alias adresu, ktorej je odosielateľ súčasťou",
         "sieve_preset_header": "Prosím pozrite sa na ukážku nižšie. Pre viac informácií pozrite <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Administratívne SOGo prihlásenia sú dostupné pre poštové schránky s existujúcim SOGo profilom. Požívateľ musí byť prihlásený do SOGo najmenej raz.",
         "sogo_visible": "Alias je viditeľný v SOGo",
         "sogo_visible_n": "Skryť alias v SOGo",
-        "sogo_visible_y": "Ukázať alias v SOGo",
+        "sogo_visible_y": "Zobraziť alias v SOGo",
         "spam_aliases": "Dočasný alias",
         "stats": "Štatistika",
         "status": "Status",
@@ -739,11 +829,11 @@
         "tls_map_parameters_info": "Prázdny alebo parametre, napríklad: protocols=!SSLv2 ciphers=medium exclude=3DES",
         "tls_map_policy": "Podmienky",
         "tls_policy_maps": "Mapy TLS pravidiel",
-        "tls_policy_maps_info": "Táto mapa prevažuje nad TLS pravidlami nezávisle od TLS pravidiel jednotlivých používateľov.<br>\r\n  Viac informácií navštívte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\"> info k \"smtp_tls_policy_maps\" </a>",
         "tls_policy_maps_enforced_tls": "Tieto politiky prepisujú používateľské nastavenia pre poštové schránky ktore majú vynútene odchodzie TLS pripojenie. Ak nižšie nie sú uvedené žiadne pravidlá, budú použité ako východzie pravidlá <code>smtp_tls_mandatory_protocols</code> a <code>smtp_tls_mandatory_ciphers</code>.",
+        "tls_policy_maps_info": "Táto mapa prevažuje nad TLS pravidlami nezávisle od TLS pravidiel jednotlivých používateľov.<br>\r\n  Viac informácií navštívte <a href=\"http://www.postfix.org/postconf.5.html#smtp_tls_policy_maps\" target=\"_blank\"> info k \"smtp_tls_policy_maps\" </a>",
         "tls_policy_maps_long": "Prepisovanie TLS pravidiel pre odosielanie",
         "toggle_all": "Označiť všetky",
-        "username": "Užívateľské meno",
+        "username": "Používateľské meno",
         "waiting": "Čakanie",
         "weekly": "Týždenný",
         "yes": "&#10003;"
@@ -782,6 +872,9 @@
         "qitem": "Karanténna položka",
         "quarantine": "Karanténa",
         "quick_actions": "Akcia",
+        "quick_delete_link": "Otvoriť link pre zmazanie",
+        "quick_info_link": "Otvoriť link pre info",
+        "quick_release_link": "Otvoriť link pre uvoľnenie",
         "rcpt": "Príjemca",
         "received": "Prijaté",
         "recipients": "Príjemcovia",
@@ -795,11 +888,8 @@
         "rspamd_result": "Rspamd výsledok",
         "sender": "Odosielateľ (SMTP)",
         "sender_header": "Odosielateľ (\"From\" hlavička)",
-        "type": "Typ",
-        "quick_release_link": "Otvoriť link pre uvoľnenie",
-        "quick_delete_link": "Otvoriť link pre zmazanie",
-        "quick_info_link": "Otvoriť link pre info",
-        "show_item": "Ukázať súbor",
+        "settings_info": "Maximálne množstvo položiek ktoré sa umiestnia do karantény: %s<br>Maximálna veľkosť emailu: %s MiB",
+        "show_item": "Zobraziť súbor",
         "spam": "Spam",
         "spam_score": "Výsledok",
         "subj": "Predmet",
@@ -807,7 +897,15 @@
         "table_size_show_n": "Zobraziť %s položiek",
         "text_from_html_content": "Obsah (konvertovaný html)",
         "text_plain_content": "Obsah (text/jednoduchý)",
-        "toggle_all": "Označiť všetky"
+        "toggle_all": "Označiť všetky",
+        "type": "Typ"
+    },
+    "ratelimit": {
+	    "disabled": "Vypnuté",
+	    "second": "správ za sekundu",
+	    "minute": "správ za minútu",
+	    "hour": "správ za hodinu",
+	    "day": "správ za deň"
     },
     "start": {
         "help": "Zobraziť/Skryť panel nápoveď",
@@ -847,9 +945,9 @@
         "domain_admin_removed": "Administrátorská doména %s odstránená",
         "domain_modified": "Zmeny v doméne %s uložené",
         "domain_removed": "Doména %s odstránená",
-        "dovecot_restart_success": "Dovecot sa úspešne reštartoval",        
+        "dovecot_restart_success": "Dovecot sa úspešne reštartoval",
         "eas_reset": "ActiveSync zariadenia pre používateľa %s resetovaný",
-        "f2b_modified": "Zmeny v Fail2ban parametroch uložené",
+        "f2b_modified": "Zmeny v parametroch automatického firewallu uložené",
         "forwarding_host_added": "Doručovací hostiteľ %s pridaný",
         "forwarding_host_removed": "Doručovací hostiteľ %s vymazaný",
         "global_filter_written": "Filter bol úspešne zapísaný do súboru",
@@ -864,7 +962,9 @@
         "mailbox_added": "Poštová schránka %s pridaná",
         "mailbox_modified": "Zmeny v poštovej schránke %s uložené",
         "mailbox_removed": "Mailbox %s odstránený ",
+        "nginx_reloaded": "Nginx sa reloadol",
         "object_modified": "Zmeny v objekte %s uložené",
+        "password_policy_saved": "Politika hesiel bola úspešne uložená",
         "pushover_settings_edited": "Pushover úspešne nastavený, skontrolujte si prístupové údaje.",
         "qlearn_spam": "Správa s ID %s považovaná za spam a vymazaná",
         "queue_command_success": "Príkaz pre poštovú frontu úspešne dokončený",
@@ -876,7 +976,7 @@
         "resource_added": "Zdroj %s pridaný",
         "resource_modified": "Zmeny v poštovej schránke %s uložené",
         "resource_removed": "Zdroj %s odstránený",
-        "rl_saved": "Limit prenosu pre objekt %s uložený",
+        "rl_saved": "Obmedzenie prenosu pre objekt %s uložený",
         "rspamd_ui_pw_set": "Heslo pre Rspamd rozhranie úspešne nastavené",
         "saved_settings": "Uložené nastavenia",
         "settings_map_added": "Pridaná mapa nastavení",
@@ -886,10 +986,13 @@
         "tls_policy_map_entry_saved": "Položka mapy TLS pravidiel \"%s\" uložená",
         "ui_texts": "Zmeny v UI textoch uložené",
         "upload_success": "Súbor úspešne nahratý",
+        "verified_fido2_login": "Overené FIDO2 prihlásenie",
         "verified_totp_login": "Overené TOTP prihlásenie",
         "verified_u2f_login": "Overené U2F prihlásenie",
-        "verified_fido2_login": "Overené FIDO2 prihlásenie",
-        "verified_yotp_login": "Overené Yubico OTP prihlásenie"
+        "verified_yotp_login": "Overené Yubico OTP prihlásenie",
+        "xmpp_maps_updated": "XMPP mapy boli aktualizované",
+        "xmpp_reloaded": "XMPP služba sa reloadla",
+        "xmpp_restarted": "XMPP služba sa reštartovala"
     },
     "tfa": {
         "api_register": "%s využíva Yubico Cloud API. Prosím, zaobstarajte si API kľúč pre váš kľúč <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">tu</a>",
@@ -908,7 +1011,7 @@
         "select": "Prosím vyberte",
         "set_tfa": "Nastaviť dvojúrovňovú autentifikačnú metódu",
         "start_u2f_validation": "Spustiť validáciu",
-        "tfa": "Dvojúrovňová autentifikácia",
+        "tfa": "Dvojúrovňová autentifikácia (TFA)",
         "tfa_token_invalid": "Neplatný TFA token",
         "totp": "Časovo-založený OTP (Google Authenticator, Authy, atď.)",
         "u2f": "U2F autentifikácia",
@@ -916,34 +1019,20 @@
         "waiting_usb_register": "<i>Čakanie na USB zariadenie...</i><br><br>Prosím zadajte vaše heslo a potvrďte registráciu stlačením tlačidla na vašom USB zariadení.",
         "yubi_otp": "Yubico OTP autentifikácia"
     },
-    "fido2": {
-        "set_fn": "Nastaviť zjednodušené meno",
-        "fn": "Zjednodušené meno",
-        "rename": "premenovať",
-        "confirm": "Potvrdiť",
-        "register_status": "Stav registrácie",
-        "known_ids": "Známe ID",
-        "none": "Vypnuté",
-        "set_fido2": "Registrovať FIDO2 zariadenie",
-        "start_fido2_validation": "Spustiť FIDO2 overenie",
-        "fido2_auth": "Prihlásiť sa cez FIDO2",
-        "fido2_success": "Zariadenie úspešne zaregistrované",
-        "fido2_validation_failed": "Overenie zlyhalo"
-    },
     "user": {
         "action": "Akcia",
         "active": "Aktívny",
         "active_sieve": "Aktívny filter",
         "advanced_settings": "Pokročilé nastavenia",
         "alias": "Alias",
-        "alias_create_random": "Generovať náhodný alias.",
+        "alias_create_random": "Generovať náhodný alias",
         "alias_extend_all": "Predĺžiť aliasy o ďalšiu hodinu",
         "alias_full_date": "d.m.R, H:i:s T",
         "alias_remove_all": "Odstrániť všetky aliasy",
         "alias_select_validity": "Lehota platnosti",
         "alias_time_left": "Zostávajúci čas",
         "alias_valid_until": "Platné do",
-        "aliases_also_send_as": "Taktiež povolené poslať ako používateľ",
+        "aliases_also_send_as": "Môže odosielať ako používateľ",
         "aliases_send_as_all": "Nekontrolovať prístup odosielateľa pre nasledujúcu doménu/y a jej alias domény",
         "app_hint": "Heslá aplikácií sú alternatívne heslá pre vaše <b>IMAP a SMTP</b> prihlásenie. Používateľské meno zostáva nezmenené.<br>SOGo (zahŕňajúc ActiveSync) nie je momentálne podporovaný.",
         "app_name": "Meno aplikácie",
@@ -952,43 +1041,57 @@
         "apple_connection_profile_complete": "Tento profil zahŕňa IMAP a SMTP parametre, ako aj CalDAV (kalendáre) a CardDAV (kontakty) pre zariadenia Apple.",
         "apple_connection_profile_mailonly": "Tento profil zahŕňa IMAP a SMTP konfiguračné parametre pre zariadenia Apple.",
         "change_password": "Zmeniť heslo",
-        "client_configuration": "Ukázať konfiguračné pokyny pre emailových klientov a smartfóny",
+        "clear_recent_successful_connections": "Vymazať nedávne úspešné prihlásenia",
+        "client_configuration": "Zobraziť konfiguračné pokyny pre emailových klientov a smartfóny",
         "create_app_passwd": "Vytvoriť heslo aplikácie",
         "create_syncjob": "Vytvoriť novú synchronizačnú úlohu",
+        "created_on": "Vytvorené",
         "daily": "Denne",
         "day": "deň",
         "delete_ays": "Potvrďte zmazanie.",
         "direct_aliases": "Priame alias adresy",
-        "direct_aliases_desc": "Priame alias adresy sú ovplyvnené spam filtrom a nastaveniami TLS pravidiel.",
+        "direct_aliases_desc": "Priame aliasy sú ovplyvnené spam filtrom a nastavením TLS pravidiel.",
         "eas_reset": "Resetovať medzipamäť u ActiveSync zariadení",
-        "eas_reset_help": "Vo väčšine prípadov, reset medzipamäte ActiveSync môže opravit nefunkčný profil.<br><b>Pozor:</b> Všetky potrebné dáta budú opäť stiahnuté!",
-        "eas_reset_now": "Resetovať medzipamäť teraz",
+        "eas_reset_help": "Vo väčšine prípadov, reset medzipamäte ActiveSync pomôže opravit nefunkčný profil.<br><b>Pozor:</b> Všetky potrebné dáta budú opäť stiahnuté!",
+        "eas_reset_now": "Reset ActiveSync",
         "edit": "Upraviť",
         "email": "Email",
         "email_and_dav": "Email, kalendáre a kontakty",
+        "empty": "Nie sú k dispozícii žiadne záznamy",
         "encryption": "Zašifrovanie",
         "excludes": "Nezahŕňa",
         "expire_in": "Vyprší za",
+        "fido2_webauthn": "FIDO2/WebAuthn",
         "force_pw_update": "<b>Musíte</b> nastaviť nové heslo, aby ste mohli získať opätovný prístup ku groupware a súvisiacim službám.",
+        "from": "od",
         "generate": "generuj",
         "hour": "hodinu",
         "hourly": "Každú hodinu",
         "hours": "hodiny",
         "in_use": "Použité",
         "interval": "Interval",
-        "is_catch_all": "Catch-all pre doménu/y",
+        "is_catch_all": "Doménový kôš",
         "last_mail_login": "Posledné poštové prihlásenie",
+        "last_pw_change": "Naposledy zmenené heslo",
         "last_run": "Posledné spustenie",
+        "last_ui_login": "Posledné prihlásenie do web rozhrania",
         "loading": "Načítavanie...",
-        "mailbox_details": "Nastavenie schránky",
+        "login_history": "História prihlásenia",
+        "mailbox": "Poštová schránka",
+        "mailbox_details": "Detail",
+        "mailbox_general": "Všeobecné",
+        "mailbox_settings": "Nastavenia",
         "messages": "správy",
+        "month": "mesiac",
+        "months": "mesiace",
         "never": "Nikdy",
         "new_password": "Nové heslo",
-        "new_password_description": "Požiadavka: Minimálne 6 znakov, písmená a číslice.",
         "new_password_repeat": "Potvrdiť heslo (opakovať)",
         "no_active_filter": "Nie je dostupný žiadny aktívny filter.",
         "no_last_login": "Žiadne informácie o UI prihlásení.",
         "no_record": "Žiaden záznam",
+        "open_logs": "Otvoriť záznam",
+        "open_webmail_sso": "Prihláste sa do webmailu",
         "password": "Heslo",
         "password_now": "Aktuálne heslo (potvrdiť zmeny)",
         "password_repeat": "Heslo (opakovať)",
@@ -996,7 +1099,7 @@
         "pushover_info": "Push notifikácie budú aplikované na všetky správy (s výnimkou spamu) doručené pre <b>%s</b> vrátane aliasov (zdieľané, nezdieľané, označené).",
         "pushover_only_x_prio": "Vyberať len správy s vysokou prioritou [<code>X-Priority: 1</code>]",
         "pushover_sender_array": "Zohľadňujú sa nasledujúce adresy odosielateľa <small>(oddelené čiarkou)</small>",
-        "pushover_sender_regex": "Užívateľ vybraný regulérnym výrazom",
+        "pushover_sender_regex": "Odosielateľ vybraný regulárnym výrazom",
         "pushover_text": "Text notifikácie",
         "pushover_title": "Názov notifikácie",
         "pushover_vars": "Ak nie je definovaný žiadny filter odosielateľa, zohľadnia sa všetky správy.<br>Priama kontrola odosielateľa a regulárne výrazy sa kontrolujú nezávisle od seba, <b>nezávisia od seba navzájom</b> a vykonávajú sa postupne.<br>Použiteľné premenné pre názov a text (dodržujte pokyny na ochranu osobných údajov)",
@@ -1004,26 +1107,28 @@
         "q_add_header": "Priečinok nevyžiadná pošta",
         "q_all": "Všetky kategórie",
         "q_reject": "Odmietnutá",
-        "quarantine_notification": "Karanténne notifikácie",
         "quarantine_category": "Kategória karanténnych notifikácií",
-        "quarantine_notification_info": "Akonáhle sa odošle notifikáica, položky budú označené ako \"notifikované\" a žiadne ďalšie notifikácie nebudú poslané pre túto špecifickú položku.",
-        "quarantine_category_info": "Kategória notifikácií \"Odmietnutá\" zahŕňa poštu ktorá bola odmietnutá, kde \"Nevyžiadná pošta\" bude notifikovať používateľa o pošte vloženej do priečinka Nevyžiadná pošta.",
+        "quarantine_category_info": "Kategória notifikácií \"Odmietnutá\" zahŕňa poštu ktorá bola odmietnutá, a \"Nevyžiadná pošta\" zahŕňa notifikácie o pošte uloženej do priečinka Nevyžiadná pošta.",
+        "quarantine_notification": "Karanténne notifikácie",
+        "quarantine_notification_info": "Akonáhle sa odošle notifikácia, položky budú označené ako \"notifikované\" a žiadne ďalšie notifikácie nebudú zasielané pre túto položku.",
+        "recent_successful_connections": "Nedávne úspešné prihlásenia",
         "remove": "Odstrániť",
         "running": "Beží",
+        "save": "Uložiť zmeny",
         "save_changes": "Uložiť zmeny",
         "sender_acl_disabled": "<span class=\"label label-danger\">Kontrola odosielateľa je pozastavená</span>",
         "shared_aliases": "Zdieľané alias adresy",
-        "shared_aliases_desc": "Zdieľané aliasy nie sú ovplyvnené používateľskými špecifickými nastaveniami, ako spam filter alebo šifrovacie podmienky. Zodpovedajúce spam filtre môžu byť vytvorené len administrátorom podľa podmienok domén.",
-        "show_sieve_filters": "Ukázať sieve filter aktívneho používateľa",
+        "shared_aliases_desc": "Zdieľané aliasy nie sú ovplyvnené používateľskými nastaveniami, ako spam filter alebo šifrovacie pravidlá. Zodpovedajúce spam filtre môžu byť vytvorené len administrátorom podľa podmienok domén.",
+        "show_sieve_filters": "Zobraziť sieve filter aktívneho používateľa",
         "sogo_profile_reset": "Resetnúť SOGo profil",
-        "sogo_profile_reset_help": "Táto činnosť odstraní SOGo profil používateľa a <b>nenávratne vymaže všetky kontakty a kalendárové dáta</b>.",
-        "sogo_profile_reset_now": "Resetnúť profil teraz",
+        "sogo_profile_reset_help": "Táto činnosť odstraní SOGo profil používateľa a <b>nenávratne vymaže všetky kontakty a kalendár</b>.",
+        "sogo_profile_reset_now": "Resetnúť profil",
         "spam_aliases": "Dočasný poštový alias",
         "spam_score_reset": "Obnoviť pôvodné spam nastavenia",
         "spamfilter": "Spam filter",
         "spamfilter_behavior": "Hodnotenie",
         "spamfilter_bl": "Čierna listina - blacklist",
-        "spamfilter_bl_desc": "Adresy na tomto zozname budú <b>vždy</b> klasifikované ako spam a budú odmietnuté. Odmietnutá pošta <b>nebude</b> zaradená do karantény. Môže byť použitý widlcard záznam (*). Filter je aplikovaný len na priame aliasy (aliasy s jedným cieľovým mailboxom) s výnimkou catch-all aliasov a samotnou schránkou.",
+        "spamfilter_bl_desc": "Adresy na tomto zozname budú <b>vždy</b> klasifikované ako spam a budú odmietnuté. Odmietnutá pošta <b>nebude</b> zaradená do karantény. Môže byť použitý widlcard záznam (*). Filter je aplikovaný len na priame aliasy (aliasy s jedným cieľovým mailboxom) s výnimkou doménových košov a samotnou schránkou.",
         "spamfilter_default_score": "Implicitné nastavenia",
         "spamfilter_green": "Zelená: Táto správa nie je spam",
         "spamfilter_hint": "Prvá hodnota opisuje \"nízku spam hodnotu\" a druhá opisuje \"vysokú spam hodnotu\".",
@@ -1035,11 +1140,11 @@
         "spamfilter_table_remove": "odstrániť",
         "spamfilter_table_rule": "Podmienka",
         "spamfilter_wl": "Biela listina - whitelist",
-        "spamfilter_wl_desc": "Adresy na tomto zozname nebudú <b>nikdy klasifikované ako spam</b>. Môže byť použitý wildcard záznam (*). Filter je aplikovaný len na priame aliasy (aliasy s jednou cieľovou schránkou) s výnimkou catch-all aliasov a samotnou schránkou.",
+        "spamfilter_wl_desc": "Adresy na tomto zozname nebudú <b>nikdy klasifikované ako spam</b>. Môže byť použitý wildcard záznam (*). Filter je aplikovaný len na priame aliasy (aliasy s jednou cieľovou schránkou) s výnimkou doménových košov a samotnou schránkou.",
         "spamfilter_yellow": "Žltá: Táto správa môže byť spam, bude označená ako spam a presunutá do priečinku nevyžiadanej pošty",
         "status": "Status",
         "sync_jobs": "Synchronizačné úlohy",
-        "tag_handling": "Nastaviť chovanie pre označenú poštu",
+        "tag_handling": "Zaobchádzanie s označenou poštou",
         "tag_help_example": "Príklad tagu e-mailovej adresy: me<b>+Facebook</b>@example.org",
         "tag_help_explain": "V podadresári: nový podadresár s menom tag-u bude vytvorený nižšie INBOX (\"INBOX/Facebook\").<br>\r\nIn subject: meno štítka bude pridané pred predmet pošty, napríklad: \"[Facebook] My News\".",
         "tag_in_none": "Žiadne kroky",
@@ -1048,16 +1153,18 @@
         "text": "Text",
         "title": "Názov",
         "tls_enforce_in": "Vynútiť TLS pre prichádzajúcu poštu",
-        "tls_enforce_out": "Vynútiť TLS odchádzajúcu poštu",
+        "tls_enforce_out": "Vynútiť TLS pre odchádzajúcu poštu",
         "tls_policy": "TLS pravidlá",
-        "tls_policy_warning": "<strong>Upozornenie:</strong> Ak sa rozhodnete vynútiť zašifrovaný poštový prenos, môže príjsť k strate e-mailov.<br>Správy nespĺňajúce túto podmienku budú trvalo odmietané serverom.<br>Táto možnosť platí pre vašu primárnu emailovú adresu (prihlasovacie meno), všetky odvodené adresy ako aj alias <b>cieľovej poštovej schránky</b>.",
-        "user_settings": "Užívateľské nastavenia",
+        "tls_policy_warning": "<strong>Upozornenie:</strong> Ak sa rozhodnete vynútiť šifrovaný prenos, môže prísť k strate e-mailov.<br>Správy nespĺňajúce túto podmienku budú trvalo odmietané serverom.<br>Táto možnosť platí pre vašu primárnu emailovú adresu (prihlasovacie meno), všetky odvodené adresy ako aj alias <b>cieľovej poštovej schránky</b>.",
+        "user_settings": "Používateľské nastavenia",
         "username": "Prihlasovacie meno",
         "verify": "Overiť",
         "waiting": "Čakanie",
         "week": "týždeň",
         "weekly": "Týždenne",
-        "weeks": "týždne"
+        "weeks": "týždne",
+        "year": "rok",
+        "years": "rokov"
     },
     "warning": {
         "cannot_delete_self": "Nemožno vymazať prihláseného používateľa",
@@ -1066,6 +1173,7 @@
         "fuzzy_learn_error": "Chyba počas učenia Fuzzy hash: %s",
         "hash_not_found": "Chýbajúci hash",
         "ip_invalid": "Preskočená neplatná IP adresa: %s",
+        "is_not_primary_alias": "Preskočiť ne-primárny alias %s",
         "no_active_admin": "Nemožno deaktivovať posledného aktívneho admina",
         "quota_exceeded_scope": "Prekročená kvóta domény, pre túto doménu je možné vytvárať iba neobmedzené poštové schránky.",
         "session_token": "Formulárový token neplatný: Tokenová nezhoda",
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.sv.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.sv.json
index 39aa588..d4e1daf 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.sv.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.sv.json
@@ -26,7 +26,11 @@
         "syncjobs": "synkroniseringsjobb",
         "tls_policy": "Krypteringspolicy",
         "unlimited_quota": "Obegränsad kvot för postlådor",
-        "domain_desc": "Ändra domänbeskrivningen"
+        "domain_desc": "Ändra domänbeskrivningen",
+        "xmpp_admin": "Ändra XMPP administratörs-status på en användare",
+        "xmpp_domain_access": "Ändra XMPP-åtkomsten på en domän",
+        "xmpp_mailbox_access": "Ändra XMPP-åtkomsten på en användare",
+        "xmpp_prefix": "Ändra XMPP-subdomän/prefix"
     },
     "add": {
         "activate_filter_warn": "Alla andra filter av den här typen kommer inaktiveras om det här skriptet markeras som aktivt.",
@@ -35,9 +39,9 @@
         "add_domain_only": "Lägg bara till domänen",
         "add_domain_restart": "Lägg till domänen, och starta om SOGo",
         "alias_address": "Alias-adress/adresser",
-        "alias_address_info": "<small>Fulständig e-postadress/adresser, eller @example.com för att fånga alla meddelanden för en domän (kommaseparerade). <b>endast mailcow domäner</b>.</small>",
+        "alias_address_info": "<small>Fulständig e-postadress/adresser, eller @example.com för att fånga alla meddelanden på en domän (separerade med komma). <b>endast mailcow domäner</b>.</small>",
         "alias_domain": "Aliasdomän",
-        "alias_domain_info": "<small>Endast giltiga domännamn (kommaseparerade).</small>",
+        "alias_domain_info": "<small>Endast giltiga domännamn (separerade med komma).</small>",
         "app_name": "Applikationsnamn",
         "app_password": "Lägg till applikationslösenord",
         "automap": "Koppla automatiskt de vanliga e-post katalogerna (\"Skickade meddelanden\", \"Skickat\" => \"Skickat\" mm)",
@@ -59,6 +63,14 @@
         "full_name": "Fullständiga namn",
         "gal": "Global adressbok",
         "gal_info": "Den global adressboken innehåller alla objekt i en domän och kan inte redigeras av någon användare. Informationen om tillgänglighet i SOGo är endast synlig när den globala adressboken är påslagen.  <b>Starta om SOGo för att tillämpa ändringar.</b>",
+        "xmpp": "Aktivera XMPP funktion på denna domän",
+        "xmpp_prefix": "XMPP-prefix för domänen (Exempelvis \"im\" för <b>im</b>.example.org)",
+        "xmpp_prefix_info": "För att tillhandahålla ett säkerhetscertifikat måste vissa DNS-uppslag skapas, exempelvis två CNAME uppslag, ett för <b>im</b>.example.org och ett för <b>*.im</b>.example.org, som pekar mot <b>%s</b>. Efter att denna funktion har aktiverats, utför en DNS-kontroll för att testa att uppslagen är korrekt uppsatta.",
+        "xmpp_info": "Denna funktion aktiverar chatt-funktionalitet på denna domän.",
+        "xmpp_access": "XMPP-åtkomst",
+        "xmpp_access_info": "XMPP måste aktiveras på den här domänen.",
+        "xmpp_admin": "XMPP Administratör",
+        "xmpp_admin_info": "<b>Varning:</b> Befodrar en användare till XMPP-administratör på den här domänen.",
         "generate": "generera",
         "goto_ham": "Markera detta som en <span class=\"text-success\"><b>felaktig spam-registrering</b>, detta kommer förhindra liknande fel i framtiden</span>",
         "goto_null": "Kasta e-postmeddelanande omedelbart",
@@ -84,7 +96,7 @@
         "relay_all": "Vidarebefordra alla mottagaradresser",
         "relay_all_info": "↪ Om <b>inte</b> alla mottagare ska vidarebefordras måste (\"blinda\") postlådor skapas för varje adress som ska vidarebefordras.",
         "relay_domain": "Vidarebefordra denna domän",
-        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transportkartor kan skapas för att definiera enskilda destinationer för en relädomän.",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transportkartor kan skapas för att definiera enskilda destinationer på en relädomän.",
         "relay_unknown_only": "Vidarebefodra endast om det saknas en lokal postlåda. Existerar det en postlåda kommer det levereras lokalt.",
         "relayhost_wrapped_tls_info": "Använd <b>inte</b> TLS-bundna portar (exempelvis SMTPS via port 465).<br>\r\nTrafiken kommer istället transporteras med TLS genom att använda STARTTLS. En sådan TLS-policy kan skapas under \"TLS-policyföreskrifter\".",
         "select": "Välj ...",
@@ -96,7 +108,7 @@
         "syncjob": "Lägg till synkroniseringsjobb",
         "syncjob_hint": "Observera att lösenord lagras i klartext!",
         "target_address": "Destinationsadresser",
-        "target_address_info": "<small>Fullständig e-postadress/adresser (kommaseparerade).</small>",
+        "target_address_info": "<small>Fullständig e-postadress/adresser (separerade med komma).</small>",
         "target_domain": "Måldomän",
         "timeout1": "Timeout för anslutning till fjärrservern",
         "timeout2": "Timeout för anslutning till lokalserver",
@@ -123,6 +135,8 @@
         "add_transports_hint": "Tänk på att autentiseringsdata lagras okrypterat.",
         "additional_rows": "ytterliggare rader har lagts till",
         "admin": "Administratör",
+        "admins": "Administratörer",
+        "admins_ldap": "LDAP-Administratörer",
         "admin_details": "Hantera administratörer",
         "admin_domains": "Tilldelad domän",
         "advanced_settings": "Avancerade inställningar",
@@ -139,6 +153,7 @@
         "ban_list_info": "Se en lista över banlysta IP-adresser nedan: <b>nätverk (återstående banlysningstid) - [åtgärd]</b>.<br />IP-adresser som står i kö för att tas bort från den aktiva banlysningslistan tas bort inom några sekunder.<br />Röd markering indikerar en aktiv permanent banlysning pga. en svartlistning.",
         "change_logo": "Byt logotyp",
         "configuration": "Konfiguration",
+        "convert_html_to_text": "Konventera HTML till oformaterad text",
         "credentials_transport_warning": "<b>Varning</b>: När en ny reläserver läggs till uppdateras uppgifterna för alla reläservrar som hör till samma värd.",
         "customer_id": "Kundnummer",
         "customize": "Anpassa gränssnittet",
@@ -190,6 +205,7 @@
         "hash_remove_info": "Ta bort kontrollsumman för hastighetsbegränsningen. Det kommer att återställa räknaren helt och hållet.<br>\r\n Varje kontrollsumma är unikt med en induviduell färg.",
         "help_text": "Hjälptext på inloggningssidan (HTML är tillåtet)",
         "host": "Värd",
+        "html": "HTML",
         "import": "Importera",
         "import_private_key": "Importera en privatnyckel",
         "in_use_by": "Används av",
@@ -218,7 +234,15 @@
         "oauth2_redirect_uri": "omdirigerings URI",
         "oauth2_renew_secret": "Generera ny klienthemlighet",
         "oauth2_revoke_tokens": "Återkalla alla klientnycklar",
+        "optional": "Valfri",
         "password": "Lösenord",
+        "password_length": "Lösenordslängd",
+        "password_policy": "Lösenordspolicy",
+        "password_policy_chars": "Måste innehålla minst ett alfabetiskt tecken",
+        "password_policy_length": "Minsta lösenordslängden är %d tecken",
+        "password_policy_numbers": "Måste innehålla minst en siffra",
+        "password_policy_lowerupper": "Måste innehålla både versaler och gemener",
+        "password_policy_special_chars": "Måste innehålla specialtecken",
         "password_repeat": "Lösenord (igen)",
         "priority": "Prioritet",
         "private_key": "Privatnyckel",
@@ -258,6 +282,7 @@
         "regen_api_key": "Generera ny API-nyckel",
         "regex_maps": "Regex-filter",
         "relay_from": "Avsändaradress",
+        "relay_rcpt": "Mottagaradress",
         "relay_run": "Testa reläservern",
         "relayhosts": "Generell reläserver för vidare posttransport",
         "relayhosts_hint": "Ange vilka reläservrar som ska finnas tillgängliga för posttransport, för att kunna välja dessa vid domänkonfigureringen.<br>\r\nTransportprotokollet kommer alltid att vara \"smtp:\", TLS användas om det är tillgängligt och tunnlad TLS (SMTPS) stöds inte. Nuvarande TLS-policyföreskrift för utgående trafik kommer att gälla för transporten.<br>\r\nDetta kommer att påverka den valda domänen, aliasdomäner inkluderat.",
@@ -299,6 +324,7 @@
         "transport_dest_format": "Syntax: example.org, .example.org, *, box@example.org (fler värdar kan anges med kommatecken)",
         "transport_maps": "Destinationsspecifik reläserver för vidare posttransport",
         "transports_hint": "→ En destinationsspecifik reläserver kommer att <b>ignorerar</b> en generell reläserver</b>.<br>\r\n→ Utgående TLS-policy för användarens postlåda kommer ignoreras, men den generella TLS-policyn för servern kommer att tillämpas.<br>\r\n→ Transportprotokollet kommer alltid att vara \"smtp:\", TLS användas om det är tillgängligt och tunnlad TLS (SMTPS) stöds inte.<br>\r\n→ Adresser som matchar \"/localhost$/\" transporteras alltid via \"local:\", därför kommer en \"*\" destination inte vara möjlig för dessa adresser.<br>\r\n→ När uppgifterna för reläservern ska hämtas ex. \"[host]:25\" kommer Postfix <b>först</b> att söka efter \"host\", och sedan söka på \"[host]:25\". Detta görs för att förhindra en situation där både \"host\" och \"[host]:25\" används samtidigt.",
+        "transport_test_rcpt_info": "→ Använd adressen null@hosted.mailcow.de för att testa vidarebefodring till en extern destination.",
         "ui_footer": "Sidfot (HTML-taggar tillåtna)",
         "ui_header_announcement": "Meddelanden",
         "ui_header_announcement_active": "Aktivera meddelandet nu",
@@ -349,7 +375,8 @@
         "from_invalid": "Avsändarens adress måste vara en giltig e-postadress",
         "global_filter_write_error": "Kan inte skriva till filterfilen: %s",
         "global_map_invalid": "Rspamd kartan med ID %s är felaktig",
-        "global_map_write_error": "Kunde inte skriva globalkartan med ID %s: %s",
+        "global_map_write_error": "Kunde inte skapa en global-koppling med ID %s: %s",
+        "xmpp_map_write_error": "Kunde inte skapa en XMPP-koppling: %s",
         "goto_empty": "En aliasadress måste peka mot minst en giltig destinationsadress",
         "goto_invalid": "Destinationsadressen %s är ogiltig",
         "ham_learn_error": "Felaktigt-Spam inlärningsfel: %s",
@@ -362,7 +389,7 @@
         "invalid_host": "Angiven värd är inte giltig: %s",
         "invalid_mime_type": "Grafiken kunde inte valideras: Ogiltig MIME-typ",
         "invalid_nexthop": "Formatet för reläservern är felaktigt",
-        "invalid_nexthop_authenticated": "En reläserver existerar redan, men med andra uppgifter. Uppdatera först uppgifterna för den existerande reläservern.",
+        "invalid_nexthop_authenticated": "En reläserver existerar redan, men med andra uppgifter. Uppdatera först uppgifterna på den existerande reläservern.",
         "invalid_recipient_map_new": "Den nya mottagaren: %s är ogiltid",
         "invalid_recipient_map_old": "Den ursprungliga mottagaren: %s är ogiltig",
         "ip_list_empty": "Listan över tillåtna IP adresser kan inte vara tom",
@@ -384,7 +411,8 @@
         "max_quota_in_use": "Postlådans kvotgräns måste vara större än, eller lika med %d MiB",
         "maxquota_empty": "Max kvoten per mejlåda kan inte vara 0.",
         "mysql_error": "MySQL-fel: %s",
-        "network_host_invalid": "Ntverk, eller värden %s är ogiltig",
+        "nginx_reload_failed": "Misslyckades att ladda om Nginx: %s",
+        "network_host_invalid": "Nätverk, eller värden %s är ogiltig",
         "next_hop_interferes": "%s förhindras av reläservern %s",
         "next_hop_interferes_any": "En befintlig reläserver hindrar skapandet av %s",
         "no_user_defined": "Ingen användare har definierats",
@@ -434,7 +462,9 @@
         "username_invalid": "Användarnamnet %s kan inte användas",
         "validity_missing": "Ange en giltighetsperiod",
         "value_missing": "Ange alla värden",
-        "yotp_verification_failed": "Yubico OTP-verifiering misslyckades: %s"
+        "yotp_verification_failed": "Yubico OTP-verifiering misslyckades: %s",
+        "xmpp_restart_failed": "Misslyckades att starta om XMPP",
+        "xmpp_reload_failed": "Misslyckades att ladda om XMPP"
     },
     "debug": {
         "chart_this_server": "Tabell (denna server)",
@@ -444,24 +474,28 @@
         "history_all_servers": "Historik (alla servrar)",
         "in_memory_logs": "Loggar sparade i minnet",
         "jvm_memory_solr": "JVM minnesanvändning",
-        "log_info": "<p>mailcow <b>loggar sparade i minnet</b> samlas in i Redis-listor och trimmas till LOG_LINES (%d) varje minut för att minska lasten.\r\n  <br>Loggar sparade i minnet är inte tänkta att vara beständiga. Alla applikationer som loggar i minnet loggar också till Docker-demonen och därefter till standardrutinen för loggning.\r\n  <br>Loggar sparade i minnet bör användas för felsökning av mindre problem med olika behållare.</p>\r\n  <p><b>Externa loggar</b> samlas in via ett API för den givna applikationen.</p>\r\n  <p><b>Statiska loggar</b> är mestadels aktivitetsloggar som inte är loggas i Docker, men som fortfarande måste vara beständiga (utom API-loggar).</p>",
+        "log_info": "<p>mailcow <b>loggar sparade i minnet</b> samlas in i Redis-listor och trimmas till LOG_LINES (%d) varje minut för att minska lasten.\r\n  <br>Loggar sparade i minnet är inte tänkta att vara beständiga. Alla applikationer som loggar i minnet loggar också till Docker-demonen och därefter till standardrutinen för loggning.\r\n  <br>Loggar sparade i minnet bör användas för felsökning av mindre problem med olika behållare.</p>\r\n  <p><b>Externa loggar</b> samlas in via ett API på den givna applikationen.</p>\r\n  <p><b>Statiska loggar</b> är mestadels aktivitetsloggar som inte är loggas i Docker, men som fortfarande måste vara beständiga (utom API-loggar).</p>",
         "logs": "Loggar",
         "restart_container": "Omstart",
         "solr_dead": "Solr är i uppstart, har inaktiveras eller är tillfälligt avstängd.",
-        "solr_docs": "Dokumentation",
-        "solr_last_modified": "Senast ändrad",
-        "solr_size": "Storlek",
-        "solr_started_at": "Startades kl.",
+        "xmpp_dead": "XMPP startet, ist deaktiviert oder temporär nicht erreichbar.",
+        "online_users": "Användare online",
+        "docs": "Dokumentation",
+        "last_modified": "Senast ändrad",
+        "size": "Storlek",
+        "started_at": "Startades kl.",
         "solr_status": "Solr status",
-        "solr_uptime": "Upptid",
+        "uptime": "Upptid",
         "started_on": "Startades",
         "static_logs": "Statiska loggar",
-        "system_containers": "System & behållare"
+        "system_containers": "System & behållare",
+        "xmpp_status": "XMPP Status"
     },
     "diagnostics": {
         "cname_from_a": "Värde härstammar från A/AAAA-uppslaget. Detta stöds så länge som uppslaget pekar mot rätt resurs.",
         "dns_records": "DNS-uppslag",
         "dns_records_24hours": "Observera att ändringar gjorda i DNS kan ta upp till 24 timmar innan det visas korrekt på denna sida. Syftet med sidan är att enkelt se hur DNS-uppslagen är konfigurerade. Det är lätt att kontrollera att DNS-uppslagen är korrekt uppsatta.",
+        "dns_records_docs": "Se även <a target=\"_blank\" href=\"https://mailcow.github.io/mailcow-dockerized-docs/prerequisite-dns/\">dokumentationen</a>.",
         "dns_records_data": "Korrektdata",
         "dns_records_name": "Namn",
         "dns_records_status": "Nuvarande status",
@@ -470,6 +504,7 @@
     },
     "edit": {
         "active": "Aktiv",
+        "admin": "Ändra administratör",
         "advanced_settings": "Avancerade inställningar",
         "alias": "Ändra alias",
         "allow_from_smtp": "Tillåt endast följande IP-adresser att använda <b>SMTP</b>",
@@ -498,12 +533,21 @@
         "encryption": "Kryptering",
         "exclude": "Exkludera objekt (regex-filter)",
         "extended_sender_acl": "Externa avsändaradresser",
-        "extended_sender_acl_info": "En DKIM-domännyckel bör importeras, om det är möjligt.<br>\r\n  Kom ihåg att även lägga till motsvarande SPF TXT-uppslag för den här servern.<br>\r\n  När en domän eller aliasdomän läggs till på den här servern som överlappar en extern adress, tas den externa adressen bort.<br>\r\n  Använd @domain.tld för att kunna  skicka som *@domain.tld.",
+        "extended_sender_acl_info": "En DKIM-domännyckel bör importeras, om det är möjligt.<br>\r\n  Kom ihåg att även lägga till motsvarande SPF TXT-uppslag på den här servern.<br>\r\n  När en domän eller aliasdomän läggs till på den här servern som överlappar en extern adress, tas den externa adressen bort.<br>\r\n  Använd @domain.tld för att kunna  skicka som *@domain.tld.",
         "force_pw_update": "Kräv uppdatering av lösenordet vid nästa inloggning",
         "force_pw_update_info": "Den här användaren kan bara logga in på %s.",
         "full_name": "Fullständigt namn",
         "gal": "Global adressbok",
         "gal_info": "Den global adressboken innehåller alla objekt i en domän och kan inte redigeras av någon användare. Informationen om tillgänglighet i SOGo är endast synlig när den globala adressboken är påslagen.  <b>Starta om SOGo för att tillämpa ändringar.</b>",
+        "xmpp": "Aktivera XMPP funktion på denna domän",
+        "xmpp_prefix": "XMPP-prefix för domänen (Exempelvis \"im\" för <b>im</b>.example.org)",
+        "xmpp_prefix_info": "För att tillhandahålla ett säkerhetscertifikat måste vissa DNS-uppslag skapas, exempelvis två CNAME uppslag, ett för <b>im</b>.example.org och ett för <b>*.im</b>.example.org, som pekar mot <b>%s</b>. Efter att denna funktion har aktiverats, utför en DNS-kontroll för att testa att uppslagen är korrekt uppsatta.",
+        "xmpp_info": "Denna funktion aktiverar chatt-funktionalitet på denna domän.",
+        "xmpp_access": "XMPP-åtkomst",
+        "xmpp_access_info": "XMPP måste aktiveras på den här domänen.",
+        "xmpp_admin": "XMPP Administratör",
+        "xmpp_admin_info": "<b>Varning:</b> Befodrar en användare till XMPP-administratör på den här domänen.",
+        "xmpp_example_jid": "<b>Exempel JID</b> (Använd samma lösenord som på postlådan)",
         "generate": "generera",
         "grant_types": "Grant-typer",
         "hostname": "Värdnamn",
@@ -516,7 +560,7 @@
         "max_quota": "Max. kvot per postlåda (MiB)",
         "maxage": "Hur många antal dagar bakåt som meddelanden ska hämtas <br><small>(0 = ignorera ålder)</small>",
         "maxbytespersecond": "Max antal bitar per sekund <br><small>(0 = obegränsat)</small>",
-        "mbox_rl_info": "Hastighetsgränsen tillämpas på SASL-inloggningsnamnet och påverkar därför alla avsändaradresser som den inloggade användaren använder. Gränsvärde för en enskild postlåda åsidosätter gränsvärdet för domänen.",
+        "mbox_rl_info": "Hastighetsgränsen tillämpas på SASL-inloggningsnamnet och påverkar därför alla avsändaradresser som den inloggade användaren använder. Gränsvärde på en enskild postlåda åsidosätter gränsvärdet för domänen.",
         "mins_interval": "Intervall (min)",
         "multiple_bookings": "Flera bokningar",
         "nexthop": "Reläserver",
@@ -535,11 +579,14 @@
         "pushover_vars": "Om inget avsändarfilter är definerat, kommer alla e-postmeddelanden att behandlas.<br>Direkt avsändarkontroll och Regex-filter kontrolleras induviduellt, de är <b>inte beroende av varandra</b> och bearbetas i följd.<br>Variabler som kan användas för text och titel. (Notera gällande dataskyddsförordning)",
         "pushover_verify": "Verifiera anslutningen",
         "quota_mb": "Kvot (MiB)",
+        "quota_warning_bcc": "Kvotvarning dålda-kopior",
+        "quota_warning_bcc_info": "Varningarna skickas som separat kopia till följande mottagare. Ämnesraden kommer att innehålla användarens användarnamn i parenteser (ex. <code>Kvot-Warning (användare@exempel.se)</code>).",
+        "ratelimit": "Hastighetsgräns",
         "redirect_uri": "Omdirigering/Callback-URL",
         "relay_all": "Vidarebefordra alla mottagare",
         "relay_all_info": "↪ Om <b>inte</b> alla mottagare ska vidarebefordras måste (\"blinda\") postlådor skapas för varje adress som ska vidarebefordras.",
         "relay_domain": "Relädomän",
-        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transportkartor kan skapas för att definiera enskilda destinationer för en relädomän.",
+        "relay_transport_info": "<div class=\"label label-info\">Info</div> Transportkartor kan skapas för att definiera enskilda destinationer på en relädomän.",
         "relay_unknown_only": "Vidarebefodra endast om det saknas en lokal postlåda. Existerar det en postlåda kommer det levereras lokalt.",
         "relayhost": "Reläserver",
         "remove": "Ta bort",
@@ -547,7 +594,7 @@
         "save": "Spara ändringar",
         "scope": "Omfattning",
         "sender_acl": "Tillåt att skicka som",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">Avsändarkontroll är avaktiverad</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">Avsändarkontroll är avaktiverad</span>",
         "sender_acl_info": "Om användaren A tillåts skicka som användaren B visas inte avsändaradressen automatiskt i \"från\" fältet i SOGo.<br>\r\n  Användaren B måste skapa en delegation i SOGo för att låta användaren A välja Användaren B's adress som avsändare. För att delegera en postlåda i SOGo, gå till menyn (tre punkter) till höger om ditt namn uppe till vänster i postvyn. Detta gäller inte för aliasadresser.",
         "sieve_desc": "Kort beskrivning",
         "sieve_type": "Filtertyp",
@@ -557,11 +604,12 @@
         "sogo_visible": "Alias visas i SOGo",
         "sogo_visible_info": "Det här alternativet påverkar endast objekt som kan visas i SOGo (delade eller icke-delade aliasadresser med destination för minst en lokal postlåda).",
         "spam_alias": "Skapa eller ändra tillfälliga e-postalias",
+        "spam_filter": "Spamfilter",
         "spam_policy": "Lägg till eller ta bort objekt på vit- eller svartlista",
         "spam_score": "Ange ett anpassad skräppostvärde",
         "subfolder2": "Synkronisera till en undermapp <br><small>(lämna tomt = använd inte undermapp)</small>",
         "syncjob": "Ändra synkroniseringsjobb",
-        "target_address": "Vidarbefodringsadresser <small>(separerade med komma)</small>",
+        "target_address": "Vidarbefodringsadresser",
         "target_domain": "Måldomän",
         "timeout1": "Timeout för anslutning till fjärrservern",
         "timeout2": "Timeout för anslutning till lokalserver",
@@ -614,6 +662,7 @@
         "active": "Aktiv",
         "add": "Lägg till",
         "add_alias": "Lägg till alias",
+        "add_alias_expand": "Överför aliasadresser till aliasdomäner",
         "add_bcc_entry": "Lägg till ny koppling",
         "add_domain": "Lägg till domän",
         "add_domain_alias": "Lägg till domänalias",
@@ -625,7 +674,7 @@
         "add_tls_policy_map": "Lägg till TLS-policyföreskrift",
         "address_rewriting": "Adress omskrivning",
         "alias": "Alias",
-        "alias_domain_alias_hint": "Aliasadresser kopplas <b>inte</b> automatiskt med domänalias-adresser. En aliasadress <code>alias@domän</code> täcker <b>inte</b> adressen <code>alias@alias-domän</code> (ett exempel där \"alias-domän\" är en aliasdomän för \"domän\").<br>Använd istället ett sieve filter för att dirigera om e-post till en extern postlåda (Gå till \"Postfilter\" eller använd SOGo -> Forwarder).",
+        "alias_domain_alias_hint": "Aliasadresser och domänalias-adresser uppdateras inte automatiskt. Exempel: En alias <code>info@domän.se</code > kommer inte automatiskt också att skapa <code>info@alias-till-domän.se</code> (alias-till-domän.se är ett alias till domän.se).<br>Använd ett <b>Sieve-filter</b> för att dirigera om e-post till en extern postlåda (Gå till \"Postfilter\" eller använd SOGo -> Forwarder). \"Överför aliasadresser till aliasdomäner\" Överför befintliga aliasadresser till att även fungera för domänalias-adresser.",
         "alias_domain_backupmx": "Aliasdomänen för relädomänen är inaktiv",
         "aliases": "Alias",
         "allow_from_smtp": "Tillåt endast följande IP-adresser att använda <b>SMTP</b>",
@@ -635,7 +684,7 @@
         "bcc": "Dåld kopia",
         "bcc_destination": "Destination för dåld kopia",
         "bcc_destinations": "Destinationer för dålda kopior",
-        "bcc_info": "En dåld kopia koppling kan användas för att vidarebefodra kopior av skickade meddelanden till en annan adress som dåld kopia. Det kan kopplas till en e-postadress eller för en domän.<br/>\r\n Den lokala destinationen kommer inte att informeras om leveransen skulle misslyckas.",
+        "bcc_info": "En dåld kopia koppling kan användas för att vidarebefodra kopior av skickade meddelanden till en annan adress som dåld kopia. Det kan kopplas till en e-postadress eller på en domän.<br/>\r\n Den lokala destinationen kommer inte att informeras om leveransen skulle misslyckas.",
         "bcc_local_dest": "Lokal destination",
         "bcc_map": "Dåld kopia koppling",
         "bcc_map_type": "Vilken typ av koppling",
@@ -692,9 +741,9 @@
         "owner": "Ägare",
         "private_comment": "Privat kommentar",
         "public_comment": "Offentlig kommentar",
-        "q_add_header": "Skräppost",
-        "q_all": "Alla kategorier",
-        "q_reject": "Avvisad",
+        "q_add_header": "via Skräppost",
+        "q_all": "via avvisade och skräppost",
+        "q_reject": "via avvisade",
         "quarantine_notification": "Ändra meddelandet som skickas vid karantän",
         "quarantine_category": "Kategori för karantänsnotifiering",
         "quick_actions": "Åtgärder",
@@ -720,7 +769,6 @@
         "sieve_preset_7": "Vidarebefodra och behåll, eller kasta meddelandet.",
         "sieve_preset_8": "Kasta meddelanden som skickas till en alias-adress som avsändaren redan tillhör.",
         "sieve_preset_header": "Exempel på postfilter finns nedan. För mer information se <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a>.",
-        "sogo_allow_admin_hint": "Administrativ SOGo-inloggning är endast tillgängliga för postlådor med en befintlig SOGo-profil. Användaren måste ha varit inloggad på SOGo minst en gång innan.",
         "sogo_visible": "Visa detta alias i SOGo",
         "sogo_visible_n": "Dölj alias i SOGo",
         "sogo_visible_y": "Visa alias i SOGo",
@@ -767,6 +815,7 @@
         "danger": "Fara",
         "deliver_inbox": "Leverera till inboxen",
         "disabled_by_config": "Med nuvarande konfigurationen är karantänfunktionen inaktiverad. För att aktivera funktionen behöver inställningen för antal meddelanden att förvara i karantän, och storleksgräns per meddelanden i karantän anges.",
+        "settings_info": "Maximalt antal e-postmeddelanden som placeras i karantän: %s<br>Maximal storlek på e-postmeddelanden som sparas: %s MiB",
         "download_eml": "Ladda ner (.eml)",
         "empty": "Inga resultat",
         "high_danger": "Hög",
@@ -865,9 +914,11 @@
         "mailbox_added": "Postlådan %s har lagts till",
         "mailbox_modified": "Ändringarna på postlådan %s har sparats",
         "mailbox_removed": "Postlådan %s har tagits bort",
+        "nginx_reloaded": "Nginx laddades om",
         "object_modified": "Ändringarna på objektet %s har sparats",
         "pushover_settings_edited": "Konfigurationen för Pushover är sparad, kontrollera att det finns korrekt åtkomst.",
         "qlearn_spam": "Medelandet med ID %s har markerats som spam och har tagits bort",
+        "password_policy_saved": "Lösenordspolicyn har sparats",
         "queue_command_success": "Köuppgiften har slutförts",
         "recipient_map_entry_deleted": "Mottagaröverföringen med ID %s har tagits bort",
         "recipient_map_entry_saved": "Mottagaröverföring \"%s\" har sparats",
@@ -890,7 +941,10 @@
         "verified_totp_login": "Verifierad TOTP inloggning",
         "verified_u2f_login": "Verifierad U2F inloggning",
         "verified_fido2_login": "Verifierad FIDO2 inloggning",
-        "verified_yotp_login": "Verifierad Yubico OTP inloggning"
+        "verified_yotp_login": "Verifierad Yubico OTP inloggning",
+        "xmpp_restarted": "XMPP-tjänsten har startat om",
+        "xmpp_reloaded": "XMPP-tjänsten har laddats om",
+        "xmpp_maps_updated": "XMPP-kopplingen har aktiverats"
     },
     "tfa": {
         "api_register": "%s använder Yubico Moln-API. Vänligen skaffa en API-nyckel för din nyckel <a href=\"https://upgrade.yubico.com/getapikey/\" target=\"_blank\">här</a>",
@@ -910,6 +964,7 @@
         "set_tfa": "Metod för tvåfaktorsautentisering",
         "start_u2f_validation": "Startar validering",
         "tfa": "Tvåfaktorsautentisering",
+        "tfa_token_invalid": "TFA nyckeln är ogiltig!",
         "totp": "Tidsbaserad OTP (Google Authenticator, Authy, mm)",
         "u2f": "U2F-autentisering",
         "waiting_usb_auth": "<i>Väntar på USB-enhet...</i><br><br>Tryck på knappen på USB-enheten nu.",
@@ -949,12 +1004,13 @@
         "app_name": "Applikationsnamn",
         "app_passwds": "Applikationslösenord",
         "apple_connection_profile": "Apple-anslutningsprofil",
-        "apple_connection_profile_complete": "Denna anslutningsprofil inkluderar både konfigurationsparametrar till IMAP, SMTP, CalDAV (för kalendrar) och CardDAV (för kontakter) för en Apple-enhet.",
-        "apple_connection_profile_mailonly": "Denna anslutningsprofil inkluderar både konfigurationsparametrar till IMAP och SMTP för en Apple-enhet.",
+        "apple_connection_profile_complete": "Denna anslutningsprofil inkluderar både konfigurationsparametrar till IMAP, SMTP, CalDAV (för kalendrar) och CardDAV (för kontakter) på en Apple-enhet.",
+        "apple_connection_profile_mailonly": "Denna anslutningsprofil inkluderar både konfigurationsparametrar till IMAP och SMTP på en Apple-enhet.",
         "change_password": "Ändra lösenordet",
         "client_configuration": "Visa konfigurationsguider för e-postklienter och smartatelefoner",
         "create_app_passwd": "Skapa applikationslösenord",
         "create_syncjob": "Skapa ett nytt synkroniseringsjobb",
+        "created_on": "Skapad vid",
         "daily": "Dagligen",
         "day": "dag",
         "delete_ays": "Är du säker att du vill ta bort det här objektet?",
@@ -982,9 +1038,10 @@
         "loading": "Vänta...",
         "mailbox_details": "Påstlådans detaljer",
         "messages": "meddelanden",
+        "month": "Månad",
+        "months": "Månader",
         "never": "Aldrig",
         "new_password": "Nytt lösenord",
-        "new_password_description": "Krav: 6 tecken, bokstäver och nummer.",
         "new_password_repeat": "Lösenord (igen)",
         "no_active_filter": "Finns inga aktiva filter",
         "no_last_login": "Senaste inloggningen till gränssnittet saknas",
@@ -1058,7 +1115,9 @@
         "waiting": "Väntar",
         "week": "vecka",
         "weekly": "Varje vecka",
-        "weeks": "veckor"
+        "weeks": "veckor",
+        "year": "år",
+        "years": "år"
     },
     "warning": {
         "cannot_delete_self": "Inloggade användare kan inte tas bort",
@@ -1066,9 +1125,10 @@
         "dovecot_restart_failed": "Dovecot kunde inte startas om, kontrollera Dovecot loggen.",
         "fuzzy_learn_error": "En oklar kontrollsumma resulterade i ett inlärningsfel: %s",
         "hash_not_found": "Kontrollsumman hittas inte. Den kan redan vara borttagen",
-        "ip_invalid": "Skippar en ogiltig IP-adress: %s",
+        "ip_invalid": "Hoppade över en ogiltig IP-adress: %s",
+        "is_not_primary_alias": "Hoppade över en ej-primär alias: %s",
         "no_active_admin": "Den senaste kända administratören kan inte inaktiveras",
-        "quota_exceeded_scope": "Domänkvoten fylld: Endast postlådor med obegränsade kvoter kan skapas för den här domänen.",
+        "quota_exceeded_scope": "Domänkvoten fylld: Endast postlådor med obegränsade kvoter kan skapas på den här domänen.",
         "session_token": "Formulär-nyckeln är ogiltig: Nyckeln matchar inte",
         "session_ua": "Formulär-nyckeln är ogiltig: User-Agenten kunde inte valideras"
     }
diff --git a/mailcow/src/mailcow-dockerized/data/web/lang/lang.zh.json b/mailcow/src/mailcow-dockerized/data/web/lang/lang.zh.json
index 9dea0af..8993cb9 100644
--- a/mailcow/src/mailcow-dockerized/data/web/lang/lang.zh.json
+++ b/mailcow/src/mailcow-dockerized/data/web/lang/lang.zh.json
@@ -437,20 +437,20 @@
         "chart_this_server": "图表 (此服务器)",
         "containers_info": "容器信息",
         "disk_usage": "磁盘使用",
-        "external_logs": "外部日至",
+        "external_logs": "外部日志",
         "history_all_servers": "历史 (所有服务器)",
-        "in_memory_logs": "内存日至",
+        "in_memory_logs": "内存日志",
         "jvm_memory_solr": "JVM内存使用",
-        "log_info": "<p>mailcow <b>内存日志</b> 收集于Redis列表中并且每分钟地修整到 LOG_LINES (%d) 以减少错误(Rowhammer)。\r\n  <br>内存日志不是为了持久化，所有使用内存日志的应用同时也会写入日志到Docker守护程序的默认日志驱动中。\r\n  <br>内存日志应该用于debug容器中的不明显问题。</p>\r\n  <p><b>外部日志</b> 通过相应应用提供的API收集。</p>\r\n  <p><b>静态日志</b> 大多为不写入日志到Dockerd但仍然需要被持久化的活动日志(API日志外的)。</p>",
+        "log_info": "<p>mailcow <b>内存日志</b> 收集于Redis列表中并且每分钟自动缩减到 LOG_LINES (%d) 以减少错误(Rowhammer)。\r\n  <br>内存日志不是为了持久化，所有使用内存日志的应用同时也会写入日志到Docker守护程序的默认日志驱动中。\r\n  <br>内存日志应该用于debug容器中的不明显问题。</p>\r\n  <p><b>外部日志</b> 通过相应应用提供的API收集。</p>\r\n  <p><b>静态日志</b> 大多为不写入日志到Dockerd但仍然需要被持久化的活动日志(API日志外的)。</p>",
         "logs": "日志",
         "restart_container": "重启",
         "solr_dead": "Solr在启动中、已关闭或已停止运行",
-        "solr_docs": "文档",
-        "solr_last_modified": "最后修改",
-        "solr_size": "大小",
-        "solr_started_at": "开始于",
+        "docs": "文档",
+        "last_modified": "最后修改",
+        "size": "大小",
+        "started_at": "开始于",
         "solr_status": "Solr状态",
-        "solr_uptime": "运行时间",
+        "uptime": "运行时间",
         "started_on": "启动于",
         "static_logs": "静态日志",
         "system_containers": "系统和容器"
@@ -544,7 +544,7 @@
         "save": "保存更改",
         "scope": "范围",
         "sender_acl": "允许发送为",
-        "sender_acl_disabled": "↳ <span class=\"label label-danger\">发件人检查已关闭</span>",
+        "sender_acl_disabled": "<span class=\"label label-danger\">发件人检查已关闭</span>",
         "sender_acl_info": "如果允许邮箱用户A作为邮箱用户B发送邮件，发件人的地址不会在SOGo中\"来自\"区域自动地作为下拉可选项显示。<br>\r\n 邮箱用户B需要添加授权以允许邮箱用户A选择B的地址作为发件人；授权方法为，在SOGo中点击左上方邮箱地址右边的菜单按钮(三个点)并授权。",
         "sieve_desc": "简短描述",
         "sieve_type": "过滤器类型",
@@ -711,7 +711,6 @@
         "sieve_preset_7": "重定向邮件并保留/删除",
         "sieve_preset_8": "删除发件人发送给自己别名地址的邮件",
         "sieve_preset_header": "请看下方的示例预设。 查看 <a href=\"https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)\" target=\"_blank\">Wikipedia</a> 以了解更多细节。",
-        "sogo_allow_admin_hint": "只允许存在个人资料的邮箱帐号以SOGo管理员登录，即用户需要在先前至少登录过一次。",
         "sogo_visible": "SOGo别名显示",
         "sogo_visible_n": "在SOGo中隐藏别名",
         "sogo_visible_y": "在SOGo中显示别名",
@@ -1033,7 +1032,7 @@
     "warning": {
         "cannot_delete_self": "不能删除已登录用户",
         "domain_added_sogo_failed": "域名已添加但是重启Dovecot失败，请检查日志。",
-        "dovecot_restart_failed": "Dovecot重启失败，请检查日至",
+        "dovecot_restart_failed": "Dovecot重启失败，请检查日志",
         "fuzzy_learn_error": "模糊特征学习失败: %s",
         "hash_not_found": "找不到特征或已被删除",
         "ip_invalid": "跳过的非法IP: %s",
diff --git a/mailcow/src/mailcow-dockerized/data/web/mailbox.php b/mailcow/src/mailcow-dockerized/data/web/mailbox.php
index 679f489..6dfe3af 100644
--- a/mailcow/src/mailcow-dockerized/data/web/mailbox.php
+++ b/mailcow/src/mailcow-dockerized/data/web/mailbox.php
@@ -7,7 +7,7 @@
 ?>
 <div class="container">
 
-  <ul class="nav nav-tabs" role="tablist">
+  <ul class="nav nav-tabs responsive-tabs" role="tablist">
     <li role="presentation" class="active"><a href="#tab-domains" aria-controls="tab-domains" role="tab" data-toggle="tab"><?=$lang['mailbox']['domains'];?></a></li>
     <li role="presentation"><a href="#tab-mailboxes" aria-controls="tab-mailboxes" role="tab" data-toggle="tab"><?=$lang['mailbox']['mailboxes'];?></a></li>
     <?php /* <li class="dropdown">
@@ -33,17 +33,17 @@
     <li role="presentation"<?=($_SESSION['mailcow_cc_role'] == "admin") ?: ' class="hidden"';?>><a href="#tab-tls-policy" aria-controls="tab-tls-policy" role="tab" data-toggle="tab"><?=$lang['mailbox']['tls_policy_maps'];?></a></li>
   </ul>
 
-	<div class="row">
-		<div class="col-md-12">
+  <div class="row">
+    <div class="col-md-12">
       <div class="tab-content" style="padding-top:20px">
         <div role="tabpanel" class="tab-pane active" id="tab-domains">
           <div class="panel panel-default">
             <div class="panel-heading">
               <?=$lang['mailbox']['domains'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <? if($_SESSION['mailcow_cc_role'] == "admin"): ?><button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addDomainModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_domain'];?></button><? endif; ?>
+                <? if($_SESSION['mailcow_cc_role'] == "admin"): ?><button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addDomainModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_domain'];?></button><? endif; ?>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_domain_table" data-table="domain_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="domain_table" role="menu">
@@ -62,8 +62,8 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="domain" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="domain" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <? if($_SESSION['mailcow_cc_role'] == "admin"): ?>
                     <li><a data-action="edit_selected" data-id="domain" data-api-url='edit/domain' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
@@ -72,8 +72,9 @@
                     <li><a data-action="delete_selected" data-id="domain" data-api-url='delete/domain' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                   <? endif; ?>
                 </ul>
+                <div class="clearfix visible-xs"></div>
                 <? if($_SESSION['mailcow_cc_role'] == "admin"): ?>
-                  <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addDomainModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_domain'];?></a>
+                  <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addDomainModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_domain'];?></a>
                 <? endif; ?>
               </div>
             </div>
@@ -96,9 +97,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['mailboxes'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_mailbox'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_mailbox'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_mailbox_table" data-table="mailbox_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="mailbox_table" role="menu">
@@ -111,19 +112,14 @@
                 </ul>
               </div>
             </div>
-            <?php if (getenv('ALLOW_ADMIN_EMAIL_LOGIN') == "y" && getenv('SKIP_SOGO') != "y") { ?>
-            <div class="panel-body help-block">
-            <?=$lang['mailbox']['sogo_allow_admin_hint'];?>
-            </div>
-            <?php } ?>
-            <div class="mass-actions-mailbox" data-actions-header="true"></div>
+            <div class="mass-actions-mailbox hidden-xs" data-actions-header="true"></div>
             <div class="table-responsive">
               <table id="mailbox_table" class="table table-striped"></table>
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group hidden-md hidden-lg hidden-xl">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="mailbox" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="mailbox" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li class="dropdown-header"><?=$lang['mailbox']['mailbox'];?></li>
                   <li><a data-action="edit_selected" data-id="mailbox" data-api-url='edit/mailbox' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
@@ -161,10 +157,11 @@
                   <li><a data-action="edit_selected" data-id="mailbox" data-api-url='edit/mailbox' data-api-attr='{"smtp_access":1}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="mailbox" data-api-url='edit/mailbox' data-api-attr='{"smtp_access":0}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_mailbox'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_mailbox'];?></a>
               </div>
               <div class="btn-group hidden-xs hidden-sm">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="mailbox" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="mailbox" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
                 <div class="btn-group">
                   <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['mailbox'];?> <span class="caret"></span></a>
                   <ul class="dropdown-menu">
@@ -216,7 +213,7 @@
                     <li><a data-action="edit_selected" data-id="mailbox" data-api-url='edit/quarantine_category' data-api-attr='{"quarantine_category":"all"}' href="#"><?=$lang['user']['q_all'];?></a></li>
                   </ul>
                 </div>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_mailbox'];?></a>
+                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addMailboxModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_mailbox'];?></a>
               </div>
             </div>
           </div>
@@ -227,9 +224,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['resources'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addResourceModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_resource'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addResourceModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_resource'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_resource_table" data-table="resource_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="resource_table" role="menu">
@@ -253,15 +250,16 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="resource" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="resource" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="resource" data-api-url='edit/resource' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="resource" data-api-url='edit/resource' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="resource" data-api-url='delete/resource' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addResourceModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_resource'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addResourceModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_resource'];?></a>
               </div>
             </div>
           </div>
@@ -272,9 +270,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['domain_aliases'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['alias_domains'];?>" data-toggle="modal" data-target="#addAliasDomainModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_domain_alias'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['alias_domains'];?>" data-toggle="modal" data-target="#addAliasDomainModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_domain_alias'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_aliasdomain_table" data-table="aliasdomain_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="aliasdomain_table" role="menu">
@@ -293,15 +291,16 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="alias-domain" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="alias-domain" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="alias-domain" data-api-url='edit/alias-domain' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="alias-domain" data-api-url='edit/alias-domain' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="alias-domain" data-api-url='delete/alias-domain' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-acl="<?=$_SESSION['acl']['alias_domains'];?>" data-toggle="modal" data-target="#addAliasDomainModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_domain_alias'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-acl="<?=$_SESSION['acl']['alias_domains'];?>" data-toggle="modal" data-target="#addAliasDomainModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_domain_alias'];?></a>
               </div>
             </div>
           </div>
@@ -312,9 +311,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['aliases'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addAliasModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_alias'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addAliasModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_alias'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_alias_table" data-table="alias_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="alias_table" role="menu">
@@ -328,7 +327,7 @@
               </div>
             </div>
             <div class="panel-body help-block">
-            <?=$lang['mailbox']['alias_domain_alias_hint'];?>
+              <?=$lang['mailbox']['alias_domain_alias_hint'];?>
             </div>
             <!-- <div class="mass-actions-mailbox" data-actions-header="true"></div> -->
             <div class="table-responsive">
@@ -336,9 +335,9 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="alias" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-                <ul class="dropdown-menu">
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="alias" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <ul class="dropdown-menu top33">
                   <li><a data-action="edit_selected" data-id="alias" data-api-url='edit/alias' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="alias" data-api-url='edit/alias' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                   <li role="separator" class="divider"></li>
@@ -349,7 +348,9 @@
                   <li><a data-action="edit_selected" data-id="alias" data-api-url='edit/alias' data-api-attr='{"sogo_visible":"0"}' href="#"><?=$lang['mailbox']['sogo_visible_n'];?></a></li>
                   <?php } ?>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addAliasModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_alias'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="alias" data-api-url='edit/alias' data-api-attr='{"expand_alias":true}' ><i class="bi bi-arrows-angle-expand"></i> <?=$lang['mailbox']['add_alias_expand'];?></a>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addAliasModal"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_alias'];?></a>
               </div>
             </div>
           </div>
@@ -360,9 +361,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['sync_jobs'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button data-acl="<?=$_SESSION['acl']['syncjobs'];?>" class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['create_syncjob'];?></button>
+                <button data-acl="<?=$_SESSION['acl']['syncjobs'];?>" class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['user']['create_syncjob'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_sync_job_table" data-table="sync_job_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="sync_job_table" role="menu">
@@ -381,8 +382,8 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group" data-acl="<?=$_SESSION['acl']['syncjobs'];?>">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="syncjob" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="syncjob" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="syncjob" data-api-url='edit/syncjob' data-api-attr='{"last_run":""}' href="#"><?=$lang['mailbox']['last_run_reset'];?></a></li>
                   <li role="separator" class="divider"></li>
@@ -391,7 +392,8 @@
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="syncjob" data-api-url='delete/syncjob' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['create_syncjob'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['user']['create_syncjob'];?></a>
               </div>
             </div>
           </div>
@@ -402,9 +404,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['filters'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['filters'];?>" data-toggle="modal" data-target="#addFilterModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_filter'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['filters'];?>" data-toggle="modal" data-target="#addFilterModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_filter'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_filter_table" data-table="filter_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="filter_table" role="menu">
@@ -426,8 +428,8 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group" data-acl="<?=$_SESSION['acl']['filters'];?>">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="filter_item" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="filter_item" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="filter_item" data-api-url='edit/filter' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="filter_item" data-api-url='edit/filter' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
@@ -437,7 +439,8 @@
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-text="<?=$lang['user']['eas_reset'];?>?" data-id="filter_item" data-api-url='delete/filter' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addFilterModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_filter'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addFilterModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_filter'];?></a>
               </div>
             </div>
             <div class="panel-body <?=($_SESSION['mailcow_cc_role'] == "admin") ?: 'hidden';?>">
@@ -456,8 +459,9 @@
                   <div class="form-group">
                     <div class="col-sm-10 add_filter_btns">
                       <div class="btn-group">
-                        <button class="btn btn-sm btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
-                        <button class="btn btn-sm btn-success add_sieve_script" data-action="add_item" data-id="add_prefilter" data-api-url='add/global-filter' data-api-attr='{"filter_type":"prefilter"}' href="#" disabled><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+                        <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
+                        <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success add_sieve_script" data-action="add_item" data-id="add_prefilter" data-api-url='add/global-filter' data-api-attr='{"filter_type":"prefilter"}' href="#" disabled><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+                        <div class="clearfix visible-xs"></div>
                       </div>
                     </div>
                   </div>
@@ -474,8 +478,9 @@
                   <div class="form-group">
                     <div class="col-sm-10 add_filter_btns">
                       <div class="btn-group">
-                        <button class="btn btn-sm btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
-                        <button class="btn btn-sm btn-success add_sieve_script" data-action="add_item" data-id="add_postfilter" data-api-url='add/global-filter' data-api-attr='{"filter_type":"postfilter"}' href="#" disabled><span class="glyphicon glyphicon-check"></span> <?=$lang['admin']['save'];?></button>
+                        <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
+                        <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success add_sieve_script" data-action="add_item" data-id="add_postfilter" data-api-url='add/global-filter' data-api-attr='{"filter_type":"postfilter"}' href="#" disabled><i class="bi bi-check-lg"></i> <?=$lang['admin']['save'];?></button>
+                        <div class="clearfix visible-xs"></div>
                       </div>
                     </div>
                   </div>
@@ -491,9 +496,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['bcc_maps'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['bcc_maps'];?>" data-toggle="modal" data-target="#addBCCModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_bcc_entry'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-acl="<?=$_SESSION['acl']['bcc_maps'];?>" data-toggle="modal" data-target="#addBCCModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_bcc_entry'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_bcc_table" data-table="bcc_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="bcc_table" role="menu">
@@ -513,8 +518,8 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group" data-acl="<?=$_SESSION['acl']['bcc_maps'];?>">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="bcc" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="bcc" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="bcc" data-api-url='edit/bcc' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="bcc" data-api-url='edit/bcc' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
@@ -524,7 +529,8 @@
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="bcc" data-api-url='delete/bcc' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addBCCModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_bcc_entry'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addBCCModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_bcc_entry'];?></a>
               </div>
             </div>
           </div>
@@ -532,9 +538,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['recipient_maps'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addRecipientMapModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_recipient_map_entry'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addRecipientMapModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_recipient_map_entry'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_recipient_map_table" data-table="recipient_map_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="recipient_map_table" role="menu">
@@ -554,15 +560,16 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="recipient_map" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="recipient_map" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="recipient_map" data-api-url='edit/recipient_map' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="recipient_map" data-api-url='edit/recipient_map' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="recipient_map" data-api-url='delete/recipient_map' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addRecipientMapModalAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_recipient_map_entry'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addRecipientMapModalAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_recipient_map_entry'];?></a>
               </div>
             </div>
           </div>
@@ -573,9 +580,9 @@
             <div class="panel-heading">
               <?=$lang['mailbox']['tls_policy_maps_long'];?> <span class="badge badge-info table-lines"></span>
               <div class="btn-group pull-right hidden-xs">
-                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addTLSPolicyMapAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_tls_policy_map'];?></button>
+                <button class="btn btn-xs btn-success" href="#" data-toggle="modal" data-target="#addTLSPolicyMapAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_tls_policy_map'];?></button>
                 <button class="btn btn-xs btn-default refresh_table" data-draw="draw_tls_policy_table" data-table="tls_policy_table"><?=$lang['admin']['refresh'];?></button>
-                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?> 
+                <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['mailbox']['table_size'];?>
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu" data-table-id="tls_policy_table" role="menu">
@@ -595,15 +602,16 @@
             </div>
             <div class="mass-actions-mailbox">
               <div class="btn-group">
-                <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="tls-policy-map" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-                <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="tls-policy-map" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+                <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
                 <ul class="dropdown-menu">
                   <li><a data-action="edit_selected" data-id="tls-policy-map" data-api-url='edit/tls-policy-map' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
                   <li><a data-action="edit_selected" data-id="tls-policy-map" data-api-url='edit/tls-policy-map' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
                   <li role="separator" class="divider"></li>
                   <li><a data-action="delete_selected" data-id="tls-policy-map" data-api-url='delete/tls-policy-map' href="#"><?=$lang['mailbox']['remove'];?></a></li>
                 </ul>
-                <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addTLSPolicyMapAdmin"><span class="glyphicon glyphicon-plus"></span> <?=$lang['mailbox']['add_tls_policy_map'];?></a>
+                <div class="clearfix visible-xs"></div>
+                <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addTLSPolicyMapAdmin"><i class="bi bi-plus-lg"></i> <?=$lang['mailbox']['add_tls_policy_map'];?></a>
               </div>
             </div>
           </div>
@@ -627,7 +635,7 @@
 echo "var is_dual = " . $is_dual . ";\n";
 echo "var pagination_size = '". $PAGINATION_SIZE . "';\n";
 $ALLOW_ADMIN_EMAIL_LOGIN = (preg_match(
-	"/^([yY][eE][sS]|[yY])+$/",
+  "/^([yY][eE][sS]|[yY])+$/",
     $_ENV["ALLOW_ADMIN_EMAIL_LOGIN"]
 )) ? "true" : "false";
 echo "var ALLOW_ADMIN_EMAIL_LOGIN = " . $ALLOW_ADMIN_EMAIL_LOGIN . ";\n";
@@ -640,7 +648,7 @@
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/footer.inc.php';
 }
 else {
-	header('Location: /');
-	exit();
+  header('Location: /');
+  exit();
 }
 ?>
diff --git a/mailcow/src/mailcow-dockerized/data/web/modals/admin.php b/mailcow/src/mailcow-dockerized/data/web/modals/admin.php
index e796d2e..22bb412 100644
--- a/mailcow/src/mailcow-dockerized/data/web/modals/admin.php
+++ b/mailcow/src/mailcow-dockerized/data/web/modals/admin.php
@@ -23,7 +23,7 @@
           <div class="form-group">
             <label class="control-label col-sm-2" for="content"><?=$lang['admin']['rsetting_content'];?>:</label>
             <div class="col-sm-10">
-              <textarea class="form-control" id="adminRspamdSettingsContent" name="content" rows="10"><?=$rsetting_details['content'];?></textarea>
+              <textarea class="form-control" id="adminRspamdSettingsContent" name="content" rows="10"><?=(isset($rsetting_details['content'])) ? $rsetting_details['content'] : '';?></textarea>
             </div>
           </div>
           <div class="form-group">
@@ -35,7 +35,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="rsetting" data-api-url='add/rsetting' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="rsetting" data-api-url='add/rsetting' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -59,8 +59,8 @@
             <div class="form-group">
               <label class="control-label col-sm-2" for="username"><?=$lang['admin']['username'];?>:</label>
               <div class="col-sm-10">
-                <input type="text" class="form-control" name="username" required>
-                &rdsh; <kbd>a-z A-Z - _ .</kbd>
+                <input type="text" class="form-control" name="username" onkeyup="this.value = this.value.toLowerCase();" required>
+                &rdsh; <kbd>a-z - _ .</kbd>
               </div>
             </div>
             <div class="form-group">
@@ -96,7 +96,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-default" data-action="add_item" data-id="add_domain_admin" data-api-url='add/domain-admin' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?=$lang['admin']['add'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_domain_admin" data-api-url='add/domain-admin' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
               </div>
             </div>
           </form>
@@ -124,7 +124,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-4 col-sm-8">
-              <button class="btn btn-default" data-action="edit_selected" data-id="fido2ChangeFn" data-item="null" data-api-url='edit/fido2-fn' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="fido2ChangeFn" data-item="null" data-api-url='edit/fido2-fn' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
             </div>
           </div>
         </form>
@@ -150,7 +150,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-default" data-action="add_item" data-id="add_oauth2_client" data-api-url='add/oauth2-client' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?=$lang['admin']['add'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_oauth2_client" data-api-url='add/oauth2-client' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
               </div>
             </div>
           </form>
@@ -171,8 +171,8 @@
             <div class="form-group">
               <label class="control-label col-sm-2" for="username"><?=$lang['admin']['username'];?>:</label>
               <div class="col-sm-10">
-                <input type="text" class="form-control" name="username" required>
-                &rdsh; <kbd>a-z A-Z - _ .</kbd>
+                <input type="text" class="form-control" name="username" onkeyup="this.value = this.value.toLowerCase();" required>
+                &rdsh; <kbd>a-z - _ .</kbd>
               </div>
             </div>
             <div class="form-group">
@@ -196,7 +196,7 @@
             </div>
             <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-default" data-action="add_item" data-id="add_admin" data-api-url='add/admin' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?=$lang['admin']['add'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_admin" data-api-url='add/admin' data-api-attr='{}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['admin']['add'];?></button>
               </div>
             </div>
           </form>
@@ -210,7 +210,7 @@
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
-        <h3 class="modal-title"><span class="glyphicon glyphicon-stats"></span> Transport</h3>
+        <h3 class="modal-title"><i class="bi bi-info-circle-fill"></i> Transport</h3>
       </div>
       <div class="modal-body">
           <form class="form-horizontal" data-cached-form="true" id="test_transport_form" role="form" method="post">
@@ -223,8 +223,15 @@
               </div>
             </div>
             <div class="form-group">
+              <label class="control-label col-sm-2" for="mail_rcpt"><?=$lang['admin']['relay_rcpt'];?></label>
+              <div class="col-sm-10">
+                <input type="text" class="form-control" name="mail_rcpt" placeholder="null@hosted.mailcow.de" value="null@hosted.mailcow.de">
+                <p class="help-block"><?=$lang['admin']['transport_test_rcpt_info'];?></p>
+              </div>
+            </div>
+            <div class="form-group">
               <div class="col-sm-offset-2 col-sm-10">
-                <button class="btn btn-default" id="test_transport" href="#"><?=$lang['admin']['relay_run'];?></button>
+                <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="test_transport" href="#"><?=$lang['admin']['relay_run'];?></button>
               </div>
             </div>
           </form>
@@ -240,7 +247,7 @@
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
-        <h3 class="modal-title"><span class="glyphicon glyphicon-hourglass" style="font-size:18px"></span> ID <span id="queue_id"></span></h3>
+        <h3 class="modal-title"><i class="bi bi-card-checklist" style="font-size:18px"></i> ID <span id="queue_id"></span></h3>
       </div>
       <div class="modal-body">
         <textarea class="form-control" id="queue_msg_content" name="content" rows="40"></textarea>
@@ -254,7 +261,7 @@
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
-        <h3 class="modal-title"><span class="glyphicon glyphicon-lock"></span> Private key</h3>
+        <h3 class="modal-title"><i class="bi bi-key-fill"></i> Private key</h3>
       </div>
       <div class="modal-body">
       <pre id="priv_key_pre"></pre>
diff --git a/mailcow/src/mailcow-dockerized/data/web/modals/footer.php b/mailcow/src/mailcow-dockerized/data/web/modals/footer.php
index 42d1278..7f73262 100644
--- a/mailcow/src/mailcow-dockerized/data/web/modals/footer.php
+++ b/mailcow/src/mailcow-dockerized/data/web/modals/footer.php
@@ -1,10 +1,13 @@
 <?php
-if (isset($_SESSION['mailcow_cc_role']) && ($_SESSION['mailcow_cc_role'] == "admin" || $_SESSION['mailcow_cc_role'] == "domainadmin")):
+if (isset($_SESSION['mailcow_cc_role'])) {
 ?>
 <div class="modal fade" id="YubiOTPModal" tabindex="-1" role="dialog" aria-labelledby="YubiOTPModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
-      <div class="modal-header"><b><?=$lang['tfa']['yubi_otp'];?></b></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['tfa']['yubi_otp'];?></h3>
+	  </div>
       <div class="modal-body">
       <form role="form" method="post">
         <div class="form-group">
@@ -29,7 +32,7 @@
             <input type="hidden" name="tfa_method" value="yubi_otp">
           </div>
         </div>
-        <button class="btn btn-sm btn-default" type="submit" name="set_tfa"><?=$lang['user']['save_changes'];?></button>
+        <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" type="submit" name="set_tfa"><?=$lang['user']['save_changes'];?></button>
       </form>
       </div>
     </div>
@@ -39,7 +42,10 @@
 <div class="modal fade" id="U2FModal" tabindex="-1" role="dialog" aria-labelledby="U2FModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
-      <div class="modal-header"><b><?=$lang['tfa']['u2f'];?></b></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['tfa']['u2f'];?></h3>
+	  </div>
       <div class="modal-body">
         <form role="form" method="post" id="u2f_reg_form">
           <div class="form-group">
@@ -72,7 +78,10 @@
 <div class="modal fade" id="TOTPModal" tabindex="-1" role="dialog" aria-labelledby="TOTPModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
-      <div class="modal-header"><b><?=$lang['tfa']['totp'];?></b></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['tfa']['totp'];?></h3>
+	  </div>
       <div class="modal-body">
         <form role="form" method="post">
           <div class="form-group">
@@ -98,7 +107,7 @@
             <li>
               <p><?=$lang['tfa']['confirm_totp_token'];?>:</p>
               <p><input type="number" style="width:33%" class="form-control" name="totp_confirm_token" autocomplete="off" required></p>
-              <p><button class="btn btn-default" type="submit" name="set_tfa"><?=$lang['tfa']['confirm'];?></button></p>
+              <p><button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" type="submit" name="set_tfa"><?=$lang['tfa']['confirm'];?></button></p>
             </li>
           </ol>
         </form>
@@ -110,14 +119,17 @@
 <div class="modal fade" id="DisableTFAModal" tabindex="-1" role="dialog" aria-labelledby="DisableTFAModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
-      <div class="modal-header"><b><?=$lang['tfa']['delete_tfa'];?></b></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['tfa']['delete_tfa'];?></h3>
+	  </div>
       <div class="modal-body">
         <form role="form" method="post">
           <div class="input-group">
-            <input type="password" class="form-control" name="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
+            <input type="password" class="form-control input-xs-lg" name="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
             <span class="input-group-btn">
               <input type="hidden" name="tfa_method" value="none">
-              <button class="btn btn-danger" type="submit" name="set_tfa"><?=$lang['tfa']['delete_tfa'];?></button>
+              <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" type="submit" name="set_tfa"><?=str_replace(' ', '&nbsp;', $lang['tfa']['delete_tfa']);?></button>
             </span>
           </div>
         </form>
@@ -127,14 +139,17 @@
 </div>
 
 <?php
-endif;
+}
 if (isset($_SESSION['pending_tfa_method'])):
   $tfa_method = $_SESSION['pending_tfa_method'];
 ?>
 <div class="modal fade" id="ConfirmTFAModal" tabindex="-1" role="dialog" aria-labelledby="ConfirmTFAModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
-      <div class="modal-header"><button type="button" class="close" data-dismiss="modal">&times;</button><b><?=$lang['tfa'][$tfa_method];?></b></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['tfa'][$tfa_method];?></h3>
+	  </div>
       <div class="modal-body">
       <?php
       switch ($tfa_method) {
@@ -148,7 +163,7 @@
               <input type="hidden" name="tfa_method" value="yubi_otp">
             </div>
           </div>
-          <button class="btn btn-sm btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-sm btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
         </form>
       <?php
         break;
@@ -177,12 +192,12 @@
         <form role="form" method="post">
           <div class="form-group">
             <div class="input-group">
-              <span class="input-group-addon" id="tfa-addon"><span class="glyphicon glyphicon-lock" aria-hidden="true"></span></span>
+              <span class="input-group-addon" id="tfa-addon"><i class="bi bi-shield-lock-fill"></i></span>
               <input type="number" min="000000" max="999999" name="token" class="form-control" placeholder="123456" autocomplete="one-time-code" aria-describedby="tfa-addon">
               <input type="hidden" name="tfa_method" value="totp">
             </div>
           </div>
-          <button class="btn btn-sm btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
         </form>
         <?php
         break;
@@ -205,13 +220,13 @@
   <div class="modal-dialog">
     <div class="modal-content">
     <div class="modal-header">
-      <button type="button" class="close" data-dismiss="modal">&times;</button>
+      <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
       <h4 class="modal-title"><?= $lang['footer']['restart_container']; ?> (<code id="containerName"></code>)</h4>
     </div>
     <div class="modal-body">
       <p><?= $lang['footer']['restart_container_info']; ?></p>
       <hr>
-      <button class="btn btn-md btn-primary" id="triggerRestartContainer"><?= $lang['footer']['restart_now']; ?></button>
+      <button class="btn btn-md visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-primary" id="triggerRestartContainer"><?= $lang['footer']['restart_now']; ?></button>
       <br><br>
       <div id="statusTriggerRestartContainer"></div>
     </div>
@@ -225,15 +240,16 @@
   <div class="modal-dialog">
     <div class="modal-content">
     <div class="modal-header">
-      <button type="button" class="close" data-dismiss="modal">&times;</button>
-      <h4 class="modal-title"><?= $lang['footer']['confirm_delete']; ?></h4>
+      <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+      <h3 class="modal-title"><?= $lang['footer']['confirm_delete']; ?></h3>
     </div>
     <div class="modal-body">
       <p id="DeleteText"><?= $lang['footer']['delete_these_items']; ?></p>
       <ul id="ItemsToDelete"></ul>
       <hr>
-      <button class="btn btn-sm btn-danger" id="IsConfirmed"><?= $lang['footer']['delete_now']; ?></button>
-      <button class="btn btn-sm btn-default" id="isCanceled"><?= $lang['footer']['cancel']; ?></button>
+      <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" id="IsConfirmed"><?= $lang['footer']['delete_now']; ?></button>
+      <button class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="isCanceled"><?= $lang['footer']['cancel']; ?></button>
+      <div class="clearfix visible-xs"></div>
     </div>
     </div>
   </div>
diff --git a/mailcow/src/mailcow-dockerized/data/web/modals/mailbox.php b/mailcow/src/mailcow-dockerized/data/web/modals/mailbox.php
index c1362c4..77533ea 100644
--- a/mailcow/src/mailcow-dockerized/data/web/modals/mailbox.php
+++ b/mailcow/src/mailcow-dockerized/data/web/modals/mailbox.php
@@ -72,7 +72,7 @@
           <hr>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_mailbox" data-api-url='add/mailbox' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_mailbox" data-api-url='add/mailbox' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -153,14 +153,14 @@
           <div class="form-group">
             <label class="control-label col-sm-2" for="rl_frame"><?=$lang['acl']['ratelimit'];?></label>
             <div class="col-sm-7">
-            <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="disabled">
+            <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="<?=$lang['ratelimit']['disabled']?>">
             </div>
             <div class="col-sm-3">
             <select name="rl_frame" class="form-control">
-              <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>>msgs / second</option>
-              <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>>msgs / minute</option>
-              <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>>msgs / hour</option>
-              <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>>msgs / day</option>
+              <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>><?=$lang['ratelimit']['second']?></option>
+              <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>><?=$lang['ratelimit']['minute']?></option>
+              <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>><?=$lang['ratelimit']['hour']?></option>
+              <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>><?=$lang['ratelimit']['day']?></option>
             </select>
             </div>
           </div>
@@ -182,18 +182,19 @@
           </div>
           <hr>
           <div class="form-group">
-            <div class="col-sm-offset-2 col-sm-10">
+            <div class="col-sm-offset-2 col-sm-10 btn-group">
               <?php if (getenv('SKIP_SOGO') != "y") { ?>
-              <button class="btn btn-default" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{}' href="#"><?=$lang['add']['add_domain_only'];?></button>
-              <button class="btn btn-default" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{"restart_sogo":"1"}' href="#"><?=$lang['add']['add_domain_restart'];?></button>
+              <button class="btn btn-xs-lg btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{}' href="#"><?=$lang['add']['add_domain_only'];?></button>
+              <button class="btn btn-xs-lg btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{"restart_sogo":"1"}' href="#"><?=$lang['add']['add_domain_restart'];?></button>
+              <div class="clearfix visible-xs"></div>
               <?php } else { ?>
-              <button class="btn btn-default" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{}' href="#"><?=$lang['add']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_domain" data-api-url='add/domain' data-api-attr='{}' href="#"><?=$lang['add']['add'];?></button>
               <?php } ?>
             </div>
           </div>
           <?php // TODO: Separate SOGo-related text
           if (getenv('SKIP_SOGO') != "y") { ?>
-          <p><span class="glyphicon glyphicon-exclamation-sign text-danger"></span> <?=$lang['add']['post_domain_add'];?></p>
+          <p><i class="bi bi-shield-fill-exclamation text-danger"></i> <?=$lang['add']['post_domain_add'];?></p>
           <?php } ?>
         </form>
       </div>
@@ -262,7 +263,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_resource" data-api-url='add/resource' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_resource" data-api-url='add/resource' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -320,7 +321,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_alias" data-api-url='add/alias' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_alias" data-api-url='add/alias' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -369,20 +370,20 @@
           <div class="form-group">
             <label class="control-label col-sm-2" for="rl_frame"><?=$lang['acl']['ratelimit'];?></label>
             <div class="col-sm-7">
-            <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="disabled">
+            <input name="rl_value" type="number" value="<?=(!empty($rl['value'])) ? $rl['value'] : null;?>" class="form-control" placeholder="<?=$lang['ratelimit']['disabled']?>">
             </div>
             <div class="col-sm-3">
             <select name="rl_frame" class="form-control">
-              <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>>msgs / second</option>
-              <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>>msgs / minute</option>
-              <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>>msgs / hour</option>
-              <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>>msgs / day</option>
+              <option value="s" <?=(isset($rl['frame']) && $rl['frame'] == 's') ? 'selected' : null;?>><?=$lang['ratelimit']['second']?></option>
+              <option value="m" <?=(isset($rl['frame']) && $rl['frame'] == 'm') ? 'selected' : null;?>><?=$lang['ratelimit']['minute']?></option>
+              <option value="h" <?=(isset($rl['frame']) && $rl['frame'] == 'h') ? 'selected' : null;?>><?=$lang['ratelimit']['hour']?></option>
+              <option value="d" <?=(isset($rl['frame']) && $rl['frame'] == 'd') ? 'selected' : null;?>><?=$lang['ratelimit']['day']?></option>
             </select>
             </div>
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_alias_domain" data-api-url='add/alias-domain' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_alias_domain" data-api-url='add/alias-domain' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -559,7 +560,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_syncjob" data-api-url='add/syncjob' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_syncjob" data-api-url='add/syncjob' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -625,9 +626,10 @@
             </div>
           </div>
           <div class="form-group">
-            <div class="col-sm-offset-2 col-sm-10 add_filter_btns">
-              <button class="btn btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
-              <button class="btn btn-success add_sieve_script" data-action="add_item" data-id="add_filter" data-api-url='add/filter' data-api-attr='{}' href="#" disabled><?=$lang['admin']['add'];?></button>
+            <div class="col-sm-offset-2 col-sm-10 add_filter_btns btn-group">
+              <button class="btn btn-xs-lg btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default validate_sieve" href="#"><?=$lang['add']['validate'];?></button>
+              <button class="btn btn-xs-lg btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success add_sieve_script" data-action="add_item" data-id="add_filter" data-api-url='add/filter' data-api-attr='{}' href="#" disabled><?=$lang['admin']['add'];?></button>
+              <div class="clearfix visible-xs"></div>
             </div>
           </div>
         </form>
@@ -650,25 +652,38 @@
           <div class="form-group">
             <label class="control-label col-sm-2" for="local_dest"><?=$lang['mailbox']['bcc_local_dest'];?></label>
             <div class="col-sm-10">
-              <select data-live-search="true" name="local_dest" required>
+              <select data-live-search="true" data-size="20" name="local_dest" required>
               <?php
               $domains = mailbox('get', 'domains');
               $alias_domains = mailbox('get', 'alias_domains');
               if (!empty($domains)) {
+                echo '<optgroup label="',$lang['mailbox']['domains'],'">';
                 foreach ($domains as $domain) {
                   echo "<option>".htmlspecialchars($domain)."</option>";
                 }
+                echo "</optgroup>";
               }
               if (!empty($alias_domains)) {
+                echo '<optgroup label="',$lang['mailbox']['domain_aliases'],'">';
                 foreach ($alias_domains as $alias_domain) {
                   echo "<option>".htmlspecialchars($alias_domain)."</option>";
                 }
+                echo "</optgroup>";
               }
               if (!empty($domains)) {
                 foreach ($domains as $domain) {
                   $mailboxes = mailbox('get', 'mailboxes', $domain);
                   foreach ($mailboxes as $mailbox) {
-                    echo "<option>".htmlspecialchars($mailbox)."</option>";
+                    echo "<optgroup label=\"" . htmlspecialchars($mailbox) . "\">";
+                    echo "<option> " . htmlspecialchars($mailbox) . "</option>";
+                    $user_alias_details = user_get_alias_details($mailbox);
+                    foreach ($user_alias_details['direct_aliases'] as $k => $v) {
+                      echo "<option>" . htmlspecialchars($k) . "</option>";
+                    }
+                    foreach ($user_alias_details['shared_aliases'] as $k => $v) {
+                      echo "<option>" . htmlspecialchars($k) . "</option>";
+                    }
+                    echo "</optgroup>";
                   }
                 }
               }
@@ -689,6 +704,7 @@
             <label class="control-label col-sm-2" for="bcc_dest"><?=$lang['mailbox']['bcc_destination'];?></label>
             <div class="col-sm-10">
               <input type="text" class="form-control" name="bcc_dest">
+              <small><?=$lang['add']['bcc_dest_format'];?></small>
             </div>
           </div>
           <div class="form-group">
@@ -700,7 +716,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-success" data-action="add_item" data-id="add_bcc" data-api-url='add/bcc' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_bcc" data-api-url='add/bcc' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -741,7 +757,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-success" data-action="add_item" data-id="add_recipient_map" data-api-url='add/recipient_map' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_recipient_map" data-api-url='add/recipient_map' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -797,7 +813,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-success" data-action="add_item" data-id="add_tls_policy_map" data-api-url='add/tls-policy-map' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_tls_policy_map" data-api-url='add/tls-policy-map' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
             </div>
           </div>
         </form>
@@ -809,7 +825,10 @@
 <div class="modal fade" id="syncjobLogModal" tabindex="-1" role="dialog" aria-labelledby="syncjobLogModalLabel">
   <div class="modal-dialog modal-lg" role="document">
     <div class="modal-content">
-      <div class="modal-header"><h4 class="modal-title">Log</h4></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title">Log</h3>
+	  </div>
       <div class="modal-body">
         <textarea class="form-control" rows="20" id="logText" spellcheck="false"></textarea>
       </div>
@@ -820,10 +839,14 @@
 <div class="modal fade" id="dnsInfoModal" tabindex="-1" role="dialog" aria-labelledby="dnsInfoModalLabel">
   <div class="modal-dialog modal-lg" role="document">
     <div class="modal-content">
-      <div class="modal-header"><h4 class="modal-title"><?=$lang['diagnostics']['dns_records'];?></h4></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+	    <h3 class="modal-title"><?=$lang['diagnostics']['dns_records'];?></h3>
+	  </div>
       <div class="modal-body">
         <p><?=$lang['diagnostics']['dns_records_24hours'];?></p>
         <div class="dns-modal-body"></div>
+        <p><?=$lang['diagnostics']['dns_records_docs'];?></p>
       </div>
     </div>
   </div>
diff --git a/mailcow/src/mailcow-dockerized/data/web/modals/quarantine.php b/mailcow/src/mailcow-dockerized/data/web/modals/quarantine.php
index 3650012..3cb5330 100644
--- a/mailcow/src/mailcow-dockerized/data/web/modals/quarantine.php
+++ b/mailcow/src/mailcow-dockerized/data/web/modals/quarantine.php
@@ -9,7 +9,7 @@
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
-        <h3 class="modal-title"><span class="glyphicon glyphicon-info"></span> <?=$lang['quarantine']['qitem'];?></h3>
+        <h3 class="modal-title"><i class="bi bi-info-circle-fill"></i> <?=$lang['quarantine']['qitem'];?></h3>
       </div>
       <div class="modal-body">
         <div id="qid_error" style="display:none" class="alert alert-danger"></div>
diff --git a/mailcow/src/mailcow-dockerized/data/web/modals/user.php b/mailcow/src/mailcow-dockerized/data/web/modals/user.php
index 4d15556..e5d5aa8 100644
--- a/mailcow/src/mailcow-dockerized/data/web/modals/user.php
+++ b/mailcow/src/mailcow-dockerized/data/web/modals/user.php
@@ -24,7 +24,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-4 col-sm-8">
-              <button class="btn btn-default" data-action="edit_selected" data-id="fido2ChangeFn" data-item="null" data-api-url='edit/fido2-fn' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="fido2ChangeFn" data-item="null" data-api-url='edit/fido2-fn' data-api-attr='{}' href="#"><?=$lang['admin']['save'];?></button>
             </div>
           </div>
         </form>
@@ -182,7 +182,7 @@
 					</div>
 					<div class="form-group">
 						<div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_syncjob" data-api-url='add/syncjob' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_syncjob" data-api-url='add/syncjob' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
 						</div>
 					</div>
 				</form>
@@ -228,7 +228,7 @@
 					</div>
 					<div class="form-group">
 						<div class="col-sm-offset-2 col-sm-10">
-              <button class="btn btn-default" data-action="add_item" data-id="add_apppasswd" data-api-url='add/app-passwd' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="add_item" data-id="add_apppasswd" data-api-url='add/app-passwd' data-api-attr='{}' href="#"><?=$lang['admin']['add'];?></button>
 						</div>
 					</div>
 				</form>
@@ -240,7 +240,10 @@
 <div class="modal fade" id="syncjobLogModal" tabindex="-1" role="dialog" aria-labelledby="syncjobLogModalLabel">
   <div class="modal-dialog modal-lg" role="document">
     <div class="modal-content">
-      <div class="modal-header"><h4 class="modal-title">Log</h4></div>
+      <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+        <h3 class="modal-title">Log</h3>
+      </div>
       <div class="modal-body">
         <textarea class="form-control textarea-code" rows="20" id="logText" spellcheck="false"></textarea>
       </div>
@@ -251,6 +254,46 @@
 <div class="modal fade" id="pwChangeModal" tabindex="-1" role="dialog" aria-labelledby="pwChangeModalLabel">
   <div class="modal-dialog" role="document">
     <div class="modal-content">
+	    <div class="modal-header">
+	    <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span></button>
+        <h3 class="modal-title"><?=$lang['user']['change_password'];?></h3>
+      </div>
+      <div class="modal-body">
+        <form class="form-horizontal" data-cached-form="false" data-id="pwchange" role="form" method="post" autocomplete="off">
+          <div class="form-group">
+            <label class="control-label col-sm-3" for="user_new_pass"><?=$lang['user']['new_password'];?> (<a href="#" class="generate_password"><?=$lang['user']['generate'];?></a>)</label>
+            <div class="col-sm-5">
+            <input type="password" data-pwgen-field="true" data-hibp="true" class="form-control" name="user_new_pass" autocomplete="new-password" required>
+            </div>
+          </div>
+          <div class="form-group">
+            <label class="control-label col-sm-3" for="user_new_pass2"><?=$lang['user']['new_password_repeat'];?></label>
+            <div class="col-sm-5">
+            <input type="password" data-pwgen-field="true" class="form-control" name="user_new_pass2" autocomplete="new-password" required>
+            <p class="help-block"><?=$lang['user']['new_password_description'];?></p>
+            </div>
+          </div>
+          <hr>
+          <div class="form-group">
+            <label class="control-label col-sm-3" for="user_old_pass"><?=$lang['user']['password_now'];?></label>
+            <div class="col-sm-5">
+            <input type="password" class="form-control" name="user_old_pass" autocomplete="off" required>
+            </div>
+          </div>
+          <div class="form-group">
+            <div class="col-sm-offset-3 col-sm-9">
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="pwchange" data-item="null" data-api-url='edit/self' data-api-attr='{}' href="#"><?=$lang['user']['change_password'];?></button>
+            </div>
+          </div>
+        </form>
+      </div>
+    </div>
+  </div>
+</div><!-- pw change modal -->
+<!-- pw change modal -->
+<div class="modal fade" id="tempAliasModal" tabindex="-1" role="dialog" aria-labelledby="tempAliasModalLabel">
+  <div class="modal-dialog" role="document">
+    <div class="modal-content">
       <div class="modal-body">
         <form class="form-horizontal" data-cached-form="false" data-id="pwchange" role="form" method="post" autocomplete="off">
           <div class="form-group">
@@ -275,7 +318,7 @@
           </div>
           <div class="form-group">
             <div class="col-sm-offset-3 col-sm-9">
-              <button class="btn btn-default" data-action="edit_selected" data-id="pwchange" data-item="null" data-api-url='edit/self' data-api-attr='{}' href="#"><?=$lang['user']['change_password'];?></button>
+              <button class="btn btn-xs-lg visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="pwchange" data-item="null" data-api-url='edit/self' data-api-attr='{}' href="#"><?=$lang['user']['change_password'];?></button>
             </div>
           </div>
         </form>
diff --git a/mailcow/src/mailcow-dockerized/data/web/qhandler.php b/mailcow/src/mailcow-dockerized/data/web/qhandler.php
index f4ce9f0..756c695 100644
--- a/mailcow/src/mailcow-dockerized/data/web/qhandler.php
+++ b/mailcow/src/mailcow-dockerized/data/web/qhandler.php
@@ -12,7 +12,7 @@
   <div class="row">
     <div class="col-md-offset-2 col-md-8">
       <div class="panel panel-default">
-        <div class="panel-heading"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <?= $lang['header']['quarantine']; ?></div>
+        <div class="panel-heading"><i class="bi bi-patch-exclamation-fill"></i> <?= $lang['header']['quarantine']; ?></div>
         <div class="panel-body">
           <legend><?=(isset($_POST['quick_release'])) ? $lang['quarantine']['release'] : $lang['quarantine']['remove'];?></legend>
             <p><?=$lang['quarantine']['qhandler_success'];?></p>
@@ -30,7 +30,7 @@
   <div class="row">
     <div class="col-md-offset-2 col-md-8">
       <div class="panel panel-default">
-        <div class="panel-heading"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <?= $lang['header']['quarantine']; ?></div>
+        <div class="panel-heading"><i class="bi bi-patch-exclamation-fill"></i> <?= $lang['header']['quarantine']; ?></div>
         <div class="panel-body">
 <?php
 if ($_GET['action'] == "release") {
diff --git a/mailcow/src/mailcow-dockerized/data/web/quarantine.php b/mailcow/src/mailcow-dockerized/data/web/quarantine.php
index d5c71a0..6343db4 100644
--- a/mailcow/src/mailcow-dockerized/data/web/quarantine.php
+++ b/mailcow/src/mailcow-dockerized/data/web/quarantine.php
@@ -4,17 +4,17 @@
 if (isset($_SESSION['mailcow_cc_role'])) {
 require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
 $_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
-
+$quarantine_settings = quarantine('settings');
 ?>
 <div class="container">
 	<div class="row">
 		<div class="col-md-12">
-      <div class="panel panel-default">
+      <div class="panel panel-default panel-xs-lg">
         <div class="panel-heading">
           <?=$lang['quarantine']['quarantine'];?> <span class="badge badge-info table-lines"></span>
           <div class="btn-group pull-right">
-            <button class="btn btn-xs btn-default refresh_table" data-draw="draw_quarantine_table" data-table="quarantinetable"><?=$lang['quarantine']['refresh'];?></button>
-            <button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['quarantine']['table_size'];?> 
+            <button class="btn btn-xs btn-xs-lg btn-default refresh_table" data-draw="draw_quarantine_table" data-table="quarantinetable"><?=$lang['quarantine']['refresh'];?></button>
+            <button type="button" class="btn btn-xs btn-xs-lg btn-default dropdown-toggle" data-toggle="dropdown"><?=$lang['quarantine']['table_size'];?>
               <span class="caret"></span>
             </button>
             <ul class="dropdown-menu" data-table-id="quarantinetable" role="menu">
@@ -30,11 +30,16 @@
         <p style="margin:10px" class="help-block"><?=$lang['quarantine']['qinfo'];?></p>
         <p style="margin:10px">
         <?php
-        if (empty(quarantine('settings')['retention_size']) || empty(quarantine('settings')['max_size'])):
+        if (empty($quarantine_settings['retention_size'] || $quarantine_settings['max_size'])) {
         ?>
         <div class="panel-body"><div class="alert alert-info"><?=$lang['quarantine']['disabled_by_config'];?></div></div>
         <?php
-        endif;
+        }
+        else {
+        ?>
+        <p style="margin:10px" class="help-block"><?=sprintf($lang['quarantine']['settings_info'], $quarantine_settings['retention_size'], $quarantine_settings['max_size']);?></p>
+        <?php
+        }
         ?>
         </p>
         <div class="table-responsive">
@@ -42,8 +47,8 @@
         </div>
         <div class="mass-actions-quarantine">
           <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine'];?>">
-            <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="qitems" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['quarantine']['toggle_all'];?></a>
-            <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['quarantine']['quick_actions'];?> <span class="caret"></span></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="qitems" href="#"><i class="bi bi-check-all"></i> <?=$lang['quarantine']['toggle_all'];?></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['quarantine']['quick_actions'];?> <span class="caret"></span></a>
             <ul class="dropdown-menu">
               <li><a data-action="edit_selected" data-id="qitems" data-api-url='edit/qitem' data-api-attr='{"action":"release"}' href="#"><?=$lang['quarantine']['deliver_inbox'];?></a></li>
               <li role="separator" class="divider"></li>
@@ -51,6 +56,7 @@
               <li role="separator" class="divider"></li>
               <li><a data-action="delete_selected" data-id="qitems" data-api-url='delete/qitem' href="#"><?=$lang['quarantine']['remove'];?></a></li>
             </ul>
+            <div class="clearfix visible-xs"></div>
           </div>
         </div>
       </div>
diff --git a/mailcow/src/mailcow-dockerized/data/web/sogo-auth.php b/mailcow/src/mailcow-dockerized/data/web/sogo-auth.php
index 08fb1b0..3bd19c6 100644
--- a/mailcow/src/mailcow-dockerized/data/web/sogo-auth.php
+++ b/mailcow/src/mailcow-dockerized/data/web/sogo-auth.php
@@ -8,14 +8,8 @@
 $session_var_user_allowed = 'sogo-sso-user-allowed';
 $session_var_pass = 'sogo-sso-pass';
 
-// prevent if feature is disabled
-if (!$ALLOW_ADMIN_EMAIL_LOGIN) {
-  header('HTTP/1.0 403 Forbidden');
-  echo "this feature is disabled";
-  exit;
-}
 // validate credentials for basic auth requests
-elseif (isset($_SERVER['PHP_AUTH_USER'])) {
+if (isset($_SERVER['PHP_AUTH_USER'])) {
   // load prerequisites only when required
   require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
   $username = $_SERVER['PHP_AUTH_USER'];
@@ -36,11 +30,19 @@
 elseif (isset($_GET['login'])) {
   // load prerequisites only when required
   require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
-  // check permissions
-  if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['acl']['login_as'] == "1") {
-    $login = html_entity_decode(rawurldecode($_GET["login"]));
+  // check if dual_login is active
+  $is_dual = (!empty($_SESSION["dual-login"]["username"])) ? true : false;
+  // check permissions (if dual_login is active, deny sso when acl is not given)
+  $login = html_entity_decode(rawurldecode($_GET["login"]));
+  if ($ALLOW_ADMIN_EMAIL_LOGIN === 0 && $is_dual === true) {
+    header('HTTP/1.0 403 Forbidden');
+    echo "Admin login is forbidden";
+    exit;
+  }
+  if (isset($_SESSION['mailcow_cc_role']) &&
+    ($_SESSION['acl']['login_as'] == "1" || ($is_dual === false && $login == $_SESSION['mailcow_cc_username']))) {
     if (filter_var($login, FILTER_VALIDATE_EMAIL)) {
-      if (!empty(mailbox('get', 'mailbox_details', $login))) {
+      if (user_get_alias_details($login) !== false) {
         // load master password
         $sogo_sso_pass = file_get_contents("/etc/sogo-sso/sogo-sso.pass");
         // register username and password in session
@@ -53,6 +55,7 @@
     }
   }
   header('HTTP/1.0 403 Forbidden');
+  echo "Access is forbidden";
   exit;
 }
 // only check for admin-login on sogo GUI requests
diff --git a/mailcow/src/mailcow-dockerized/data/web/user.php b/mailcow/src/mailcow-dockerized/data/web/user.php
index 57b2803..62e29f6 100644
--- a/mailcow/src/mailcow-dockerized/data/web/user.php
+++ b/mailcow/src/mailcow-dockerized/data/web/user.php
@@ -1,697 +1,809 @@
-<?php
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
-if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'domainadmin') {
-
-  /*
-  / DOMAIN ADMIN
-  */
-
-	require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
-	$_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
-  $tfa_data = get_tfa();
-  $fido2_data = fido2(array("action" => "get_friendly_names"));
-	$username = $_SESSION['mailcow_cc_username'];
-
-?>
-<div class="container">
-
-  <h3><?=$lang['user']['user_settings'];?></h3>
-  <div class="panel panel-default">
-  <div class="panel-heading"><?=$lang['user']['user_settings'];?></div>
-  <div class="panel-body">
-    <div class="row">
-      <div class="col-sm-offset-3 col-sm-9">
-        <p><a href="#pwChangeModal" data-toggle="modal">[<?=$lang['user']['change_password'];?>]</a></p>
-        <p><small>
-        <?php
-        if ($_SESSION['mailcow_cc_last_login']['remote']):
-        ?>
-        <span style="margin-right:10px" class="glyphicon glyphicon-log-in"></span> <span data-time="<?=$_SESSION['mailcow_cc_last_login']['time'];?>" class="last_login_date"></span> (<?=$_SESSION['mailcow_cc_last_login']['remote'];?>)
-        <?php
-        else: echo $lang['user']['no_last_login']; endif;
-        ?>
-        </small></p>
-        <p>
-      </div>
-    </div>
-    <hr>
-    
-    <? // TFA ?>
-    <div class="row">
-      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['tfa']['tfa'];?></div>
-        <div class="col-sm-9 col-xs-7">
-          <p id="tfa_pretty"><?=$tfa_data['pretty'];?></p>
-            <table id="tfa_keys">
-              <?php if (!empty($tfa_data['additional'])):
-              foreach ($tfa_data['additional'] as $key_info): ?>
-                <form style="display:inline;" method="post">
-                <input type="hidden" name="unset_tfa_key" value="<?=$key_info['id'];?>" />
-                <div class="label label-default">🔑 <?=$key_info['key_id'];?> <a href="#" style="font-weight:bold;color:white" onClick="$(this).closest('form').submit()">[<?=strtolower($lang['admin']['remove']);?>]</a></div>
-              </form>
-              <?php endforeach;
-              endif;?>
-            </table>
-            <br />
-        </div>
-    </div>
-    <div class="row">
-      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['tfa']['set_tfa'];?></div>
-      <div class="col-sm-9 col-xs-7">
-        <select id="selectTFA" class="selectpicker" title="<?=$lang['tfa']['select'];?>">
-          <option value="yubi_otp"><?=$lang['tfa']['yubi_otp'];?></option>
-          <option value="u2f"><?=$lang['tfa']['u2f'];?></option>
-          <option value="totp"><?=$lang['tfa']['totp'];?></option>
-          <option value="none"><?=$lang['tfa']['none'];?></option>
-        </select>
-      </div>
-    </div>
-
-    <? // FIDO2 ?>
-    <legend style="margin-top:20px">
-    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" style="margin-bottom: -5px;">
-      <path d="M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28zM3.5 9.72c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7-.23.16-.54.11-.7-.12-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21zm6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39-2.57 0-4.66 1.97-4.66 4.39 0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15zm7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12zM14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24-2.17-5.22 0-1.62 1.38-2.94 3.08-2.94 1.7 0 3.08 1.32 3.08 2.94 0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38z"/>
-    </svg>
-    <?=$lang['fido2']['fido2_auth'];?></legend>
-    <div class="row">
-      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['known_ids'];?>:</div>
-      <div class="col-sm-9 col-xs-7">
-          <div class="table-responsive">
-          <table class="table table-striped table-hover table-condensed" id="fido2_keys">
-            <tr>
-              <th>ID</th>
-              <th style="min-width:240px;text-align: right"><?=$lang['admin']['action'];?></th>
-            </tr>
-            <?php
-            if (!empty($fido2_data)) {
-              foreach ($fido2_data as $key_info) {
-            ?>
-            <tr>
-              <td>
-                <?=($_SESSION['fido2_cid'] == $key_info['cid']) ? '→ ' : NULL; ?><?=(!empty($key_info['fn']))?$key_info['fn']:$key_info['subject'];?>
-              </td>
-              <td style="min-width:240px;text-align: right">
-                <form style="display:inline;" method="post">
-                <input type="hidden" name="unset_fido2_key" value="<?=$key_info['cid'];?>" />
-                <div class="btn-group">
-                <a href="#" class="btn btn-xs btn-default" data-cid="<?=$key_info['cid'];?>" data-subject="<?=base64_encode($key_info['subject']);?>" data-toggle="modal" data-target="#fido2ChangeFn"><span class="glyphicon glyphicon-pencil"></span> <?=strtolower($lang['fido2']['rename']);?></a>
-                <a href="#" onClick='return confirm("<?=$lang['admin']['ays'];?>")?$(this).closest("form").submit():"";' class="btn btn-xs btn-danger"><span class="glyphicon glyphicon-trash"></span> <?=strtolower($lang['admin']['remove']);?></a>
-                </form>
-                </div>
-              </td>
-            </tr>
-            <?php
-              }
-            }
-            ?>
-          </table>
-          </div>
-          <br>
-      </div>
-    </div>
-    <div class="row">
-      <div class="col-sm-offset-3 col-sm-9">
-        <button class="btn btn-sm btn-primary" id="register-fido2"><?=$lang['fido2']['set_fido2'];?></button>
-      </div>
-    </div>
-    <br>
-    <div class="row" id="status-fido2">
-      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['register_status'];?>:</div>
-      <div class="col-sm-9 col-xs-7">
-        <div id="fido2-alerts">-</div>
-      </div>
-      <br>
-    </div>
-
-  </div>
-  </div>
-</div>
-<?php
-}
-elseif (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'user') {
-
-  /*
-  / USER
-  */
-
-  require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
-  $_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
-  $username = $_SESSION['mailcow_cc_username'];
-  $mailboxdata = mailbox('get', 'mailbox_details', $username);
-  $pushover_data = pushover('get', $username);
-
-  $clientconfigstr = "host=" . urlencode($mailcow_hostname) . "&email=" . urlencode($username) . "&name=" . urlencode($mailboxdata['name']) . "&ui=" . urlencode(strtok($_SERVER['HTTP_HOST'], ':')) . "&port=" . urlencode($autodiscover_config['caldav']['port']);
-  if ($autodiscover_config['useEASforOutlook'] == 'yes')
-  $clientconfigstr .= "&outlookEAS=1";
-  if (file_exists('thunderbird-plugins/version.csv')) {
-    $fh = fopen('thunderbird-plugins/version.csv', 'r');
-    if ($fh) {
-      while (($row = fgetcsv($fh, 1000, ';')) !== FALSE) {
-        if ($row[0] == 'sogo-connector@inverse.ca') {
-          $clientconfigstr .= "&connector=" . urlencode($row[1]);
-        }
-      }
-      fclose($fh);
-    }
-  }
-?>
-<div class="container">
-
-  <!-- Nav tabs -->
-  <ul class="nav nav-tabs" role="tablist">
-    <li role="presentation" class="active"><a href="#userSettings" aria-controls="userSettings" role="tab" data-toggle="tab"><?=$lang['user']['mailbox_details'];?></a></li>
-    <li role="presentation"><a href="#SpamAliases" aria-controls="SpamAliases" role="tab" data-toggle="tab"><?=$lang['user']['spam_aliases'];?></a></li>
-    <li role="presentation"><a href="#Spamfilter" aria-controls="Spamfilter" role="tab" data-toggle="tab"><?=$lang['user']['spamfilter'];?></a></li>
-    <li role="presentation"><a href="#Syncjobs" aria-controls="Syncjobs" role="tab" data-toggle="tab"><?=$lang['user']['sync_jobs'];?></a></li>
-    <li role="presentation"><a href="#AppPasswds" aria-controls="AppPasswds" role="tab" data-toggle="tab"><?=$lang['user']['app_passwds'];?></a></li>
-    <li role="presentation"><a href="#Pushover" aria-controls="Pushover" role="tab" data-toggle="tab">Pushover API</a></li>
-  </ul>
-  <hr>
-
-  <div class="tab-content">
-
-  <div role="tabpanel" class="tab-pane active" id="userSettings">
-    <div class="panel panel-default">
-      <div class="panel-heading"><?=$lang['user']['mailbox_details'];?></div>
-      <div class="panel-body">
-        <div class="row">
-          <div class="col-sm-offset-3 col-sm-9">
-            <?php if ($mailboxdata['attributes']['force_pw_update'] == "1"): ?>
-            <div class="alert alert-danger"><?=$lang['user']['force_pw_update'];?></div>
-            <?php endif; ?>
-            <p><a href="#pwChangeModal" data-toggle="modal">[<?=$lang['user']['change_password'];?>]</a></p>
-            <p><a target="_blank" href="https://mailcow.github.io/mailcow-dockerized-docs/client/#<?=$clientconfigstr;?>">[<?=$lang['user']['client_configuration'];?>]</a></p>
-            <p><a href="#userFilterModal" data-toggle="modal">[<?=$lang['user']['show_sieve_filters'];?>]</a></p>
-            <p><small>
-            <?php
-            if ($_SESSION['mailcow_cc_last_login']['remote']):
-            ?>
-            <span style="margin-right:10px" class="glyphicon glyphicon-log-in"></span> <span data-time="<?=$_SESSION['mailcow_cc_last_login']['time'];?>" class="last_login_date"></span> (<?=$_SESSION['mailcow_cc_last_login']['remote'];?>)
-            <?php
-            else: echo $lang['user']['no_last_login']; endif;
-            ?>
-            </small></p>
-          </div>
-        </div>
-        <hr>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['apple_connection_profile'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-            <p><span class="glyphicon glyphicon-download-alt" aria-hidden="true"></span> <a href="/mobileconfig.php?only_email"><?=$lang['user']['email'];?></a> <small>IMAP, SMTP</small></p>
-            <p class="help-block"><?=$lang['user']['apple_connection_profile_mailonly'];?></p>
-            <?php if (getenv('SKIP_SOGO') != "y") { ?>
-            <p><span class="glyphicon glyphicon-download-alt" aria-hidden="true"></span> <a href="/mobileconfig.php"><?=$lang['user']['email_and_dav'];?></a> <small>IMAP, SMTP, Cal/CardDAV</small></p>
-            <p class="help-block"><?=$lang['user']['apple_connection_profile_complete'];?></p>
-            <?php } ?>
-          </div>
-        </div>
-        <hr>
-        <?php // Get user information about aliases
-        $user_get_alias_details = user_get_alias_details($username);
-        ?>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['direct_aliases'];?>:
-            <p class="small"><?=$lang['user']['direct_aliases_desc'];?></p>
-          </div>
-          <div class="col-md-9 col-xs-7">
-          <?php
-          if ($user_get_alias_details['direct_aliases'] === false) {
-            echo '&#10008;';
-          }
-          else {
-            foreach (array_filter($user_get_alias_details['direct_aliases']) as $direct_alias => $direct_alias_meta) {
-              (!empty($direct_alias_meta['public_comment'])) ?
-                printf('%s &mdash; <span class="bg-info">%s</span><br>', $direct_alias, $direct_alias_meta['public_comment']) :
-                printf('%s<br>', $direct_alias);
-            }
-          }
-          ?>
-          </div>
-        </div>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['shared_aliases'];?>:
-            <p class="small"><?=$lang['user']['shared_aliases_desc'];?></p>
-          </div>
-          <div class="col-md-9 col-xs-7">
-          <?php
-          if ($user_get_alias_details['shared_aliases'] === false) {
-            echo '&#10008;';
-          }
-          else {
-            foreach (array_filter($user_get_alias_details['shared_aliases']) as $shared_alias => $shared_alias_meta) {
-              (!empty($shared_alias_meta['public_comment'])) ?
-                printf('%s &mdash; <span class="bg-info">%s</span><br>', $shared_alias, $shared_alias_meta['public_comment']) :
-
-                printf('%s<br>', $shared_alias);
-            }
-          }
-          ?>
-          </div>
-        </div>
-        <hr>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['aliases_also_send_as'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <p><?=($user_get_alias_details['aliases_also_send_as'] == '*') ? $lang['user']['sender_acl_disabled'] : $user_get_alias_details['aliases_also_send_as'];?></p>
-          </div>
-        </div>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['aliases_send_as_all'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <p><?=$user_get_alias_details['aliases_send_as_all'];?></p>
-          </div>
-        </div>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['is_catch_all'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <p><?=$user_get_alias_details['is_catch_all'];?></p>
-          </div>
-        </div>
-        <hr>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['in_use'];?>:</div>
-          <div class="col-md-5 col-xs-7">
-            <div class="progress">
-              <div class="progress-bar progress-bar-<?=$mailboxdata['percent_class'];?>" role="progressbar" aria-valuenow="<?=$mailboxdata['percent_in_use'];?>" aria-valuemin="0" aria-valuemax="100" style="min-width:2em;width: <?=$mailboxdata['percent_in_use'];?>%;">
-                <?=$mailboxdata['percent_in_use'];?>%
-              </div>
-            </div>
-            <p><?=formatBytes($mailboxdata['quota_used'], 2);?> / <?=($mailboxdata['quota'] == 0) ? '∞' : formatBytes($mailboxdata['quota'], 2);?><br><?=$mailboxdata['messages'];?> <?=$lang['user']['messages'];?></p>
-          </div>
-        </div>
-        <hr>
-        <?php
-        // Show tagging options
-        $get_tagging_options = mailbox('get', 'delimiter_action', $username);
-        ?>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['tag_handling'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['delimiter_action'];?>">
-            <button type="button" class="btn btn-sm btn-default <?=($get_tagging_options == "subfolder") ? 'active' : null; ?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="delimiter_action"
-              data-api-url='edit/delimiter_action'
-              data-api-attr='{"tagged_mail_handler":"subfolder"}'><?=$lang['user']['tag_in_subfolder'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($get_tagging_options == "subject") ? 'active' : null; ?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="delimiter_action"
-              data-api-url='edit/delimiter_action'
-              data-api-attr='{"tagged_mail_handler":"subject"}'><?=$lang['user']['tag_in_subject'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($get_tagging_options == "none") ? 'active' : null; ?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="delimiter_action"
-              data-api-url='edit/delimiter_action'
-              data-api-attr='{"tagged_mail_handler":"none"}'><?=$lang['user']['tag_in_none'];?></button>
-          </div>
-          <p class="help-block"><?=$lang['user']['tag_help_explain'];?></p>
-          <p class="help-block"><?=$lang['user']['tag_help_example'];?></p>
-          </div>
-        </div>
-        <?php
-        // Show TLS policy options
-        $get_tls_policy = mailbox('get', 'tls_policy', $username);
-        ?>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['tls_policy'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['tls_policy'];?>">
-            <button type="button" class="btn btn-sm btn-default <?=($get_tls_policy['tls_enforce_in'] == "1") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="tls_policy"
-              data-api-url='edit/tls_policy'
-              data-api-attr='{"tls_enforce_in":<?=($get_tls_policy['tls_enforce_in'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_in'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($get_tls_policy['tls_enforce_out'] == "1") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="tls_policy"
-              data-api-url='edit/tls_policy'
-              data-api-attr='{"tls_enforce_out":<?=($get_tls_policy['tls_enforce_out'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_out'];?></button>
-          </div>
-          <p class="help-block"><?=$lang['user']['tls_policy_warning'];?></p>
-          </div>
-        </div>
-        <?php
-        // Show quarantine_notification options
-        $quarantine_notification = mailbox('get', 'quarantine_notification', $username);
-        $quarantine_category = mailbox('get', 'quarantine_category', $username);
-        ?>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['quarantine_notification'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_notification'];?>">
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "never") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_notification"
-              data-api-url='edit/quarantine_notification'
-              data-api-attr='{"quarantine_notification":"never"}'><?=$lang['user']['never'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "hourly") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_notification"
-              data-api-url='edit/quarantine_notification'
-              data-api-attr='{"quarantine_notification":"hourly"}'><?=$lang['user']['hourly'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "daily") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_notification"
-              data-api-url='edit/quarantine_notification'
-              data-api-attr='{"quarantine_notification":"daily"}'><?=$lang['user']['daily'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_notification == "weekly") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_notification"
-              data-api-url='edit/quarantine_notification'
-              data-api-attr='{"quarantine_notification":"weekly"}'><?=$lang['user']['weekly'];?></button>
-          </div>
-          <p class="help-block"><?=$lang['user']['quarantine_notification_info'];?></p>
-          </div>
-        </div>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['quarantine_category'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_category'];?>">
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "reject") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_category"
-              data-api-url='edit/quarantine_category'
-              data-api-attr='{"quarantine_category":"reject"}'><?=$lang['user']['q_reject'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "add_header") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_category"
-              data-api-url='edit/quarantine_category'
-              data-api-attr='{"quarantine_category":"add_header"}'><?=$lang['user']['q_add_header'];?></button>
-            <button type="button" class="btn btn-sm btn-default <?=($quarantine_category == "all") ? "active" : null;?>"
-              data-action="edit_selected"
-              data-item="<?= htmlentities($username); ?>"
-              data-id="quarantine_category"
-              data-api-url='edit/quarantine_category'
-              data-api-attr='{"quarantine_category":"all"}'><?=$lang['user']['q_all'];?></button>
-          </div>
-          <p class="help-block"><?=$lang['user']['quarantine_category_info'];?></p>
-          </div>
-        </div>
-        <?php if (getenv('SKIP_SOGO') != "y") { ?>
-        <hr>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['eas_reset'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <button class="btn btn-xs btn-default" data-acl="<?=$_SESSION['acl']['eas_reset'];?>" data-action="delete_selected" data-text="<?=$lang['user']['eas_reset'];?>?" data-item="<?= htmlentities($username); ?>" data-id="eas_cache" data-api-url='delete/eas_cache' href="#"><?=$lang['user']['eas_reset_now'];?></button>
-          <p class="help-block"><?=$lang['user']['eas_reset_help'];?></p>
-          </div>
-        </div>
-        <div class="row">
-          <div class="col-md-3 col-xs-5 text-right"><?=$lang['user']['sogo_profile_reset'];?>:</div>
-          <div class="col-md-9 col-xs-7">
-          <button class="btn btn-xs btn-default" data-acl="<?=$_SESSION['acl']['sogo_profile_reset'];?>" data-action="delete_selected" data-text="<?=$lang['user']['sogo_profile_reset'];?>?" data-item="<?= htmlentities($username); ?>" data-id="sogo_profile" data-api-url='delete/sogo_profile' href="#"><?=$lang['user']['sogo_profile_reset_now'];?></button>
-          <p class="help-block"><?=$lang['user']['sogo_profile_reset_help'];?></p>
-          </div>
-        </div>
-        <?php } ?>
-      </div>
-    </div>
-  </div>
-
-	<div role="tabpanel" class="tab-pane" id="SpamAliases">
-    <div class="row">
-      <div class="col-md-12 col-sm-12 col-xs-12">
-        <div class="table-responsive">
-          <table class="table table-striped" id="tla_table"></table>
-        </div>
-      </div>
-		</div>
-    <div class="mass-actions-user">
-      <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_alias'];?>">
-        <div class="btn-group">
-          <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="tla" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-          <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-          <ul class="dropdown-menu">
-            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"1"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['hour'];?></a></li>
-            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"6"}' href="#"><?=$lang['user']['expire_in'];?> 6 <?=$lang['user']['hours'];?></a></li>
-            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"24"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['day'];?></a></li>
-            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"168"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['week'];?></a></li>
-            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"672"}' href="#"><?=$lang['user']['expire_in'];?> 4 <?=$lang['user']['weeks'];?></a></li>
-            <li role="separator" class="divider"></li>
-            <li><a data-action="delete_selected" data-id="tla" data-api-url='delete/time_limited_alias' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-          </ul>
-        </div>
-        <div class="btn-group">
-          <a class="btn btn-sm btn-success dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['alias_create_random'];?> <span class="caret"></span></a>
-          <ul class="dropdown-menu">
-            <li><a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"validity":"1"}' href="#">1 <?=$lang['user']['hour'];?></a></li>
-            <li><a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"validity":"6"}' href="#">6 <?=$lang['user']['hours'];?></a></li>
-            <li><a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"validity":"24"}' href="#">1 <?=$lang['user']['day'];?></a></li>
-            <li><a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"validity":"168"}' href="#">1 <?=$lang['user']['week'];?></a></li>
-            <li><a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"validity":"672"}' href="#">4 <?=$lang['user']['weeks'];?></a></li>
-          </ul>
-        </div>
-      </div>
-    </div>
-	</div>
-
-	<div role="tabpanel" class="tab-pane" id="Spamfilter">
-		<h4><?=$lang['user']['spamfilter_behavior'];?></h4>
-		<form class="form-horizontal" role="form" data-id="spam_score" method="post">
-			<div class="form-group">
-				<div class="col-lg-6 col-sm-12">
-					<input data-acl="<?=$_SESSION['acl']['spam_score'];?>" name="spam_score" id="spam_score" type="text" style="width: 100%;"
-						data-provide="slider"
-						data-slider-min="1"
-						data-slider-max="2000"
-            data-slider-scale='logarithmic'
-						data-slider-step="0.5"
-						data-slider-range="true"
-						data-slider-tooltip='always'
-						data-slider-id="slider1"
-						data-slider-value="[<?=mailbox('get', 'spam_score', $username);?>]"
-						data-slider-step="1" />
-					<br /><br />
-					<ul>
-						<li><?=$lang['user']['spamfilter_green'];?></li>
-						<li><?=$lang['user']['spamfilter_yellow'];?></li>
-						<li><?=$lang['user']['spamfilter_red'];?></li>
-					</ul>
-					<p><?=$lang['user']['spamfilter_hint'];?></p>
-				</div>
-			</div>
-      <div class="form-group">
-				<div class="col-sm-10">
-				</div>
-        <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-          <a type="button" class="btn btn-sm btn-success" data-action="edit_selected"
-            data-item="<?= htmlentities($username); ?>"
-            data-id="spam_score"
-            data-api-url='edit/spam-score'
-            data-api-attr='{}'><?=$lang['user']['save_changes'];?></a>
-          <a type="button" class="btn btn-sm btn-default" data-action="edit_selected"
-            data-item="<?= htmlentities($username); ?>"
-            data-id="spam_score_reset"
-            data-api-url='edit/spam-score'
-            data-api-attr='{"spam_score":"default"}'><?=$lang['user']['spam_score_reset'];?></a>
-        </div>
-			</div>
-		</form>
-		<hr>
-		<div class="row">
-			<div class="col-sm-6">
-				<h4><?=$lang['user']['spamfilter_wl'];?></h4>
-        <p><?=$lang['user']['spamfilter_wl_desc'];?></p>
-        <div class="table-responsive">
-          <table class="table table-striped table-condensed" id="wl_policy_mailbox_table"></table>
-        </div>
-
-        <div class="mass-actions-user">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-            <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_wl_mailbox" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-            <a class="btn btn-sm btn-danger" data-action="delete_selected" data-id="policy_wl_mailbox" data-api-url='delete/mailbox-policy' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-          </div>
-        </div>
-        <form class="form-inline" data-id="add_wl_policy_mailbox">
-          <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-            <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
-            <span class="input-group-btn">
-              <button class="btn btn-default" data-action="add_item" data-id="add_wl_policy_mailbox" data-api-url='add/mailbox-policy' data-api-attr='{"username":<?= json_encode($username); ?>,"object_list":"wl"}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['spamfilter_table_add'];?></button>
-            </span>
-          </div>
-        </form>
-      </div>
-			<div class="col-sm-6">
-				<h4><?=$lang['user']['spamfilter_bl'];?></h4>
-        <p><?=$lang['user']['spamfilter_bl_desc'];?></p>
-        <div class="table-responsive">
-          <table class="table table-striped table-condensed" id="bl_policy_mailbox_table"></table>
-        </div>
-
-        <div class="mass-actions-user">
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-            <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="policy_bl_mailbox" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-            <a class="btn btn-sm btn-danger" data-action="delete_selected" data-id="policy_bl_mailbox" data-api-url='delete/mailbox-policy' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-          </div>
-        </div>
-        <form class="form-inline" data-id="add_bl_policy_mailbox">
-          <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
-            <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
-            <span class="input-group-btn">
-              <button class="btn btn-default" data-action="add_item" data-id="add_bl_policy_mailbox" data-api-url='add/mailbox-policy' data-api-attr='{"username":<?= json_encode($username); ?>,"object_list":"bl"}' href="#"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['spamfilter_table_add'];?></button>
-            </span>
-          </div>
-        </form>
-
-      </div>
-    </div>
-  </div>
-
-	<div role="tabpanel" class="tab-pane" id="Syncjobs">
-		<div class="table-responsive">
-      <table class="table table-striped" id="sync_job_table"></table>
-		</div>
-    <div class="mass-actions-user">
-      <div class="btn-group" data-acl="<?=$_SESSION['acl']['syncjobs'];?>">
-        <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="syncjob" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-        <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-        <ul class="dropdown-menu">
-          <li><a data-action="edit_selected" data-id="syncjob" data-api-url='edit/syncjob' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
-          <li><a data-action="edit_selected" data-id="syncjob" data-api-url='edit/syncjob' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
-          <li role="separator" class="divider"></li>
-          <li><a data-action="delete_selected" data-id="syncjob" data-api-url='delete/syncjob' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-        </ul>
-        <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['create_syncjob'];?></a>
-      </div>
-    </div>
-  </div>
-
-	<div role="tabpanel" class="tab-pane" id="Pushover">
-    <form data-id="pushover" class="form well" method="post">
-      <input type="hidden" value="0" name="evaluate_x_prio">
-      <input type="hidden" value="0" name="only_x_prio">
-      <input type="hidden" value="0" name="active">
-      <div class="row">
-        <div class="col-sm-1">
-          <p class="help-block"><a href="https://pushover.net" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAACglBMVEUAAAAAAAEAAAAilecFGigAAAAAAAAAAAAAAAANj+c3n+Ypm+oeYI4KWI4MieAtkdQbleoJcLcjmeswmN4Rit4KgdMKUYQJKUAQSnILL0kMNlMSTngimOoNPF0hlOQBBgkNOlkRS3MHIjUhk+IPf8wKLUYsjM0AAAASTngAAAAAAAAPfckbdLIbdrYUWIgegsgce70knfEAAAAknfENOVkGHi8YaaIjnvEdgMUhkuAQSG8aca0hleQUh9YLjOM4nOEMgtMcbaYWa6YemO02ltkKhNktgLodYZEPXJEyi8kKesktfLUzj84cWYMiluckZ5YJXJYeW4Y0k9YKfs4yjs0pc6YHZaUviskLfMkqmugak+cqkNcViNcqeK4Iaq4XRmYGPmYMKDsFJTstgr0LdL0ti84CCQ4BCQ4Qgc8rlt8XjN8shcQsi8wZSGgEP2cRMEUDKkUAAAD///8dmvEamfExo/EXmPEWl/ERlvElnvEsofEjnfETl/Enn/Ezo/E4pvEvovEfm/E1pPEzpPEvofEOlfEpoPEamPEQlfEYmfE6p/EgnPEVlvEroPE3pfE2pfENk/Ern/E3pPEcmfEfmvEnnvBlufT6/P0soPAknPDd7/zs9vzo9PxBqfItofAqoPD9/f3B4/q43/mx2/l/xfZ6w/Vxv/VtvfVgt/RXtPNTsfNEq/L3+/31+v3a7fvR6vvH5fqs2vmc0/jx+P3v9/3h8fzW7PvV7PvL5/q13fmo1/mh1PiY0fiNy/aHyfZ2wfVou/Vdt/RPsPM3oeoQkuowmeAgjdgcgMQbeLrw9/3k8vy74Pm63/mX0PdYtfNNr/Ikm+4wnOchkuAVjOAfdrMVcrOdoJikAAAAcnRSTlMAIQ8IzzweFwf+/fvw8P79+/Xt7e3p6eji4d7U08y8qZyTiIWDgn53bWxqaWBKQ0JBOjUwMCkoJCEfHBkT/vz8/Pv7+vr69/b29PTy7ezm5ubm5N7e29vQ0M/Pv7+4uLW1pqaWloWDg3x7e21mUVFFRUXdPracAAAEbElEQVRIx4WUZbvaQBCFF+ru7u7u7u7u7t4mvVwSoBC0JIUCLRQolLq7u7vr/+nMLkmQyvlwyfPcd86e3ZldUqwyQ/p329J+XfutPQYOLUP+q55rFtQJRvY79+xxlZTUWbKpz7/xrrMr2+3BoNPpdLn2lJQ4HEeqLOr1d7z7XNkesQed4A848G63Oy4Gmg/6Mz542QvZbqe8C/Ig73CLYiYTrtLmT3zfqbIcAR7y4wIqH/B6M9Fo0+Ldb6sM9ph/v4ozPuz12mxRofaAAr7jCNkuoz/jNf9AGHibkBCm51fsGKvxsAGWx4H+jBcEi6V2birDpCL/9Klrd1KHbiSvPWP8V0tTnTfO03iXi57P6WNHOVUf44IFdFDRz6pV5fw8Zy5z3JVH5+R48OwxqDiGvKJIY9R+9JsCuJ5HPg74OVEMpz+nbdEPUHEWeEk6IDUnTC1l5r+f8uffc0cfxc8fS17kLso24SwUPFDA/6DE82xKDOPliJ7n/GGOOyWK9zD9CdjvOfg9Dv6AH+AX04LW9gj2i8W/APx1UbxwCAu+wPmcpgUKL/EHdvtq4uwaZwCuznPJVY5LHhED15G/isd5Hz4eKui/e/du02YoKFeD5mHzHIN/nxEDe25gQQwKorAid04CfyzwL4XutXvl1Pt1guMOwwKPkU8mYIFT8JHK+vv8prpDScUVL+j8s3lOctw1GIhbWHAS+HgKPk7xPM/4UtNAYmzizJkf6NgTb/gM8jePQLsewMdthS3g95tMpT1IhVm6v1s8fYmLeb13Odwp8Fh5KY048y/d14WUrwrb1e/X/rNp73nkD8kWS+wi/MZ4XuetG4mhKubJm3/WNEvi8SHwB56nPKjUam0LBdp9ARwupFemTYudvgN/L1+A/Ko/LGBuS8pPy+YR1fuCTWNKnUyoeUyYx2o2dyEVGmr5xTD42xzvkD16+Pb9WIIH6fmt1r3mbsTY7Bvw+n23naT8BUWh86bz6G/e259UXPUK3gfAxQDlo7Rpx3Geqb2e3wp83SGEdKpB7zvwYbzvT2n65xLwbH6YP+M9C8vA8E1wxLU8gkCbdhXGUyrMgwVrcbzLHonr78lzDvWM3q/C/HtDlXoSUIe3YkblhRPIX4E8Oo/9siLv8dRjV7SBlkdgTXvKS7nzsA/9AfeEuhKq9T8zWIDv1Sd6ETAP4D6/H/1V+1BojvruNa4SZXz4JhY84dV5MOF5agUvu5OsOo+KRpG30KalEnoeDccFlutPZYs38D5n3zcpr1/0fBhfb3DOY1z2tSAgLxWezz6zuoHhfUmOejf6blHQH/sFuJYfcMZX307ytKvRa3ifoV/586P5j+tICtS77BuJxzxYAPZsntX8k3eSIhlajK4p8b7iefCEKs03kD/I2LnxL9ovH+43y4fAv1YrI/mzDBsavAX/UppfzVOrZT/ydxk6lJ047MfLfVbcb6hS9ZEzWxekKQ5WrtPqZg3rV6tWrX6Tle3KQZj/q6KxQnmDoXwFY0VSrN9e8FRXBCTAvwAAAABJRU5ErkJggg==" class="img img-fluid"></a></p>
-        </div>
-        <div class="col-sm-10">
-              <p class="help-block"><?=sprintf($lang['user']['pushover_info'], $username);?></p>
-              <p class="help-block"><?=$lang['user']['pushover_vars'];?>: <code>{SUBJECT}</code>, <code>{SENDER}</code></p>
-              <div class="form-group">
-                <div class="row">
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="token">API Token/Key (Application)</label>
-                      <input type="text" class="form-control" name="token" maxlength="30" value="<?=$pushover_data['token'];?>" required>
-                    </div>
-                  </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="key">User/Group Key</label>
-                      <input type="text" class="form-control" name="key" maxlength="30" value="<?=$pushover_data['key'];?>" required>
-                    </div>
-                  </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="title"><?=$lang['user']['pushover_title'];?></label>
-                      <input type="text" class="form-control" name="title" value="<?=$pushover_data['title'];?>" placeholder="Mail">
-                    </div>
-                  </div>
-                  <div class="col-sm-6">
-                    <div class="form-group">
-                      <label for="text"><?=$lang['user']['pushover_text'];?></label>
-                      <input type="text" class="form-control" name="text" value="<?=$pushover_data['text'];?>" placeholder="You've got mail 📧">
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <div class="form-group">
-                      <label for="text"><?=$lang['user']['pushover_sender_array'];?></label>
-                      <input type="text" class="form-control" name="senders" value="<?=$pushover_data['senders'];?>" placeholder="sender1@example.com, sender2@example.com">
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <div class="checkbox">
-                    <label><input type="checkbox" value="1" name="active" <?=($pushover_data['active']=="1") ? "checked" : null;?>> <?=$lang['user']['active'];?></label>
-                    </div>
-                  </div>
-                  <div class="col-sm-12">
-                    <legend style="cursor:pointer;margin-top:10px" data-target="#po_advanced" class="arrow-toggle" unselectable="on" data-toggle="collapse">
-                      <span style="font-size:12px" class="arrow rotate glyphicon glyphicon-menu-down"></span> <?=$lang['user']['advanced_settings'];?>
-                    </legend>
-                  </div>
-                  <div class="col-sm-12">
-                    <div id="po_advanced" class="collapse">
-                      <div class="form-group">
-                        <label for="text"><?=$lang['user']['pushover_sender_regex'];?></label>
-                        <input type="text" class="form-control" name="senders_regex" value="<?=$pushover_data['senders_regex'];?>" placeholder="/(.*@example\.org$|^foo@example\.com$)/i" regex="true">
-                        <div class="checkbox">
-                          <label><input type="checkbox" value="1" name="evaluate_x_prio" <?=($pushover_data['attributes']['evaluate_x_prio']=="1") ? "checked" : null;?>> <?=$lang['user']['pushover_evaluate_x_prio'];?></label>
-                        </div>
-                        <div class="checkbox">
-                          <label><input type="checkbox" value="1" name="only_x_prio" <?=($pushover_data['attributes']['only_x_prio']=="1") ? "checked" : null;?>> <?=$lang['user']['pushover_only_x_prio'];?></label>
-                        </div>
-                      </div>
-                    </div>
-                  </div>
-                </div>
-              </div>
-          <div class="btn-group" data-acl="<?=$_SESSION['acl']['pushover'];?>">
-              <a class="btn btn-sm btn-default" data-action="edit_selected" data-id="pushover" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover' data-api-attr='{}' href="#"><?=$lang['user']['save'];?></a>
-              <a class="btn btn-sm btn-default" data-action="edit_selected" data-id="pushover-test" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover-test' data-api-attr='{}' href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['user']['pushover_verify'];?></a>
-              <a id="pushover_delete" class="btn btn-sm btn-danger" data-action="edit_selected" data-id="pushover-delete" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover' data-api-attr='{"delete":"true"}' href="#"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span> <?=$lang['user']['remove'];?></a>
-          </div>
-        </div>
-      </div>
-    </form>
-  </div>
-
-	<div role="tabpanel" class="tab-pane" id="AppPasswds">
-    <p><?=$lang['user']['app_hint'];?></p>
-		<div class="table-responsive">
-      <table class="table table-striped" id="app_passwd_table"></table>
-		</div>
-    <div class="mass-actions-user">
-      <div class="btn-group" data-acl="<?=$_SESSION['acl']['app_passwds'];?>">
-        <a class="btn btn-sm btn-default" id="toggle_multi_select_all" data-id="apppasswd" href="#"><span class="glyphicon glyphicon-check" aria-hidden="true"></span> <?=$lang['mailbox']['toggle_all'];?></a>
-        <a class="btn btn-sm btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
-        <ul class="dropdown-menu">
-          <li><a data-action="edit_selected" data-id="apppasswd" data-api-url='edit/app-passwd' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
-          <li><a data-action="edit_selected" data-id="apppasswd" data-api-url='edit/app-passwd' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
-          <li role="separator" class="divider"></li>
-          <li><a data-action="delete_selected" data-id="apppasswd" data-api-url='delete/app-passwd' href="#"><?=$lang['mailbox']['remove'];?></a></li>
-        </ul>
-        <a class="btn btn-sm btn-success" href="#" data-toggle="modal" data-target="#addAppPasswdModal"><span class="glyphicon glyphicon-plus"></span> <?=$lang['user']['create_app_passwd'];?></a>
-      </div>
-    </div>
-		</div>
-
-	</div>
-  
-</div><!-- /container -->
-<div style="margin-bottom:200px;"></div>
-<?php
-}
-if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] != 'admin') {
-require_once $_SERVER['DOCUMENT_ROOT'] . '/modals/user.php';
-?>
-<script type='text/javascript'>
-<?php
-$lang_user = json_encode($lang['user']);
-echo "var lang = ". $lang_user . ";\n";
-echo "var acl = '". json_encode($_SESSION['acl']) . "';\n";
-echo "var csrf_token = '". $_SESSION['CSRF']['TOKEN'] . "';\n";
-echo "var mailcow_cc_username = '". $_SESSION['mailcow_cc_username'] . "';\n";
-echo "var pagination_size = '". $PAGINATION_SIZE . "';\n";
-?>
-</script>
-<?php
-$js_minifier->add('/web/js/site/user.js');
-$js_minifier->add('/web/js/site/pwgen.js');
-require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/footer.inc.php';
-}
-else {
-	header('Location: /');
-	exit();
-}
-?>
+<?php
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
+if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'domainadmin') {
+
+  /*
+  / DOMAIN ADMIN
+  */
+
+	require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
+	$_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
+  $tfa_data = get_tfa();
+  $fido2_data = fido2(array("action" => "get_friendly_names"));
+	$username = $_SESSION['mailcow_cc_username'];
+
+?>
+<div class="container">
+
+  <h3><?=$lang['user']['user_settings'];?></h3>
+  <div class="panel panel-default">
+  <div class="panel-heading"><?=$lang['user']['user_settings'];?></div>
+  <div class="panel-body">
+    <div class="row">
+      <div class="col-sm-offset-3 col-sm-9">
+        <p><a href="#pwChangeModal" data-toggle="modal">[<?=$lang['user']['change_password'];?>]</a></p>
+        <div class="last-login"></div>
+        <span class="clear-last-logins"><?=$lang['user']['clear_recent_successful_connections'];?></span>
+      </div>
+    </div>
+    <hr>
+
+    <? // TFA ?>
+    <div class="row">
+      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['tfa']['tfa'];?></div>
+        <div class="col-sm-9 col-xs-7">
+          <p id="tfa_pretty"><?=$tfa_data['pretty'];?></p>
+            <div id="tfa_keys">
+              <?php
+              if (!empty($tfa_data['additional'])) {
+                foreach ($tfa_data['additional'] as $key_info) { ?>
+                <form style="display:inline;" method="post">
+                  <input type="hidden" name="unset_tfa_key" value="<?=$key_info['id'];?>" />
+                  <div class="label label-default"><i class="bi bi-key-fill"></i> <?=$key_info['key_id'];?> <a href="#" style="font-weight:bold;color:white" onClick='return confirm("<?=$lang['user']['delete_ays'];?>")?$(this).closest("form").submit():"";'>[<?=strtolower($lang['admin']['remove']);?>]</a></div>
+                </form>
+                <?php
+                }
+              }
+              ?>
+            </div>
+            <br>
+        </div>
+    </div>
+    <div class="row">
+      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['tfa']['set_tfa'];?></div>
+      <div class="col-sm-9 col-xs-7">
+        <select id="selectTFA" class="selectpicker" title="<?=$lang['tfa']['select'];?>">
+          <option value="yubi_otp"><?=$lang['tfa']['yubi_otp'];?></option>
+          <option value="u2f"><?=$lang['tfa']['u2f'];?></option>
+          <option value="totp"><?=$lang['tfa']['totp'];?></option>
+          <option value="none"><?=$lang['tfa']['none'];?></option>
+        </select>
+      </div>
+    </div>
+
+    <hr>
+    <? // FIDO2 ?>
+    <div class="row">
+      <div class="col-sm-3 col-xs-5 text-right">
+        <p><i class="bi bi-shield-fill-check"></i> <?=$lang['fido2']['fido2_auth'];?></p>
+      </div>
+    </div>
+    <div class="row">
+      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['known_ids'];?>:</div>
+      <div class="col-sm-9 col-xs-7">
+          <div class="table-responsive">
+          <table class="table table-striped table-hover table-condensed" id="fido2_keys">
+            <tr>
+              <th>ID</th>
+              <th style="min-width:240px;text-align: right"><?=$lang['admin']['action'];?></th>
+            </tr>
+            <?php
+            if (!empty($fido2_data)) {
+              foreach ($fido2_data as $key_info) {
+            ?>
+            <tr>
+              <td>
+                <?=($_SESSION['fido2_cid'] == $key_info['cid']) ? '→ ' : NULL; ?><?=(!empty($key_info['fn']))?$key_info['fn']:$key_info['subject'];?>
+              </td>
+              <td style="min-width:240px;text-align: right">
+                <form style="display:inline;" method="post">
+                <input type="hidden" name="unset_fido2_key" value="<?=$key_info['cid'];?>" />
+                <div class="btn-group">
+                <a href="#" class="btn btn-xs btn-default" data-cid="<?=$key_info['cid'];?>" data-subject="<?=base64_encode($key_info['subject']);?>" data-toggle="modal" data-target="#fido2ChangeFn"><i class="bi bi-pencil-fill"></i> <?=strtolower($lang['fido2']['rename']);?></a>
+                <a href="#" onClick='return confirm("<?=$lang['user']['delete_ays'];?>")?$(this).closest("form").submit():"";' class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> <?=strtolower($lang['admin']['remove']);?></a>
+                </form>
+                </div>
+              </td>
+            </tr>
+            <?php
+              }
+            }
+            ?>
+          </table>
+          </div>
+          <br>
+      </div>
+    </div>
+    <div class="row">
+      <div class="col-sm-offset-3 col-sm-9">
+        <button class="btn btn-sm btn-primary" id="register-fido2"><?=$lang['fido2']['set_fido2'];?></button>
+      </div>
+    </div>
+    <br>
+    <div class="row" id="status-fido2">
+      <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['register_status'];?>:</div>
+      <div class="col-sm-9 col-xs-7">
+        <div id="fido2-alerts">-</div>
+      </div>
+      <br>
+    </div>
+
+  </div>
+  </div>
+</div>
+<?php
+}
+elseif (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'user') {
+
+  /*
+  / USER
+  */
+
+  require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
+  $_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
+  $username = $_SESSION['mailcow_cc_username'];
+  $mailboxdata = mailbox('get', 'mailbox_details', $username);
+  $pushover_data = pushover('get', $username);
+  $tfa_data = get_tfa();
+  $fido2_data = fido2(array("action" => "get_friendly_names"));
+
+  $clientconfigstr = "host=" . urlencode($mailcow_hostname) . "&email=" . urlencode($username) . "&name=" . urlencode($mailboxdata['name']) . "&ui=" . urlencode(strtok($_SERVER['HTTP_HOST'], ':')) . "&port=" . urlencode($autodiscover_config['caldav']['port']);
+  if ($autodiscover_config['useEASforOutlook'] == 'yes')
+  $clientconfigstr .= "&outlookEAS=1";
+  if (file_exists('thunderbird-plugins/version.csv')) {
+    $fh = fopen('thunderbird-plugins/version.csv', 'r');
+    if ($fh) {
+      while (($row = fgetcsv($fh, 1000, ';')) !== FALSE) {
+        if ($row[0] == 'sogo-connector@inverse.ca') {
+          $clientconfigstr .= "&connector=" . urlencode($row[1]);
+        }
+      }
+      fclose($fh);
+    }
+  }
+?>
+<div class="container">
+
+  <!-- Nav tabs -->
+  <ul class="nav nav-tabs responsive-tabs" role="tablist">
+    <li class="dropdown active">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['user']['mailbox'];?><span class="caret"></span></a>
+      <ul class="dropdown-menu">
+        <li role="presentation" class="active" data-dont-remember="1"><a href="#tab-user-auth" aria-controls="tab-user-auth" role="tab" data-toggle="tab"><?=$lang['user']['mailbox_general'];?></a></li>
+        <li role="presentation"><a href="#tab-user-details" aria-controls="tab-config-fwdhosts" role="tab" data-toggle="tab"><?=$lang['user']['mailbox_details'];?></a></li>
+        <li role="presentation"><a href="#tab-user-settings" aria-controls="tab-config-f2b" role="tab" data-toggle="tab"><?=$lang['user']['mailbox_settings'];?></a></li>
+      </ul>
+    </li>
+    <li role="presentation"><a href="#SpamAliases" aria-controls="SpamAliases" role="tab" data-toggle="tab"><?=$lang['user']['spam_aliases'];?></a></li>
+    <li role="presentation"><a href="#Spamfilter" aria-controls="Spamfilter" role="tab" data-toggle="tab"><?=$lang['user']['spamfilter'];?></a></li>
+    <li role="presentation"><a href="#Syncjobs" aria-controls="Syncjobs" role="tab" data-toggle="tab"><?=$lang['user']['sync_jobs'];?></a></li>
+    <li role="presentation"><a href="#AppPasswds" aria-controls="AppPasswds" role="tab" data-toggle="tab"><?=$lang['user']['app_passwds'];?></a></li>
+    <li role="presentation"><a href="#Pushover" aria-controls="Pushover" role="tab" data-toggle="tab">Pushover API</a></li>
+  </ul>
+  <hr>
+
+  <div class="tab-content">
+
+  <div role="tabpanel" class="tab-pane active" id="tab-user-auth">
+    <div class="panel panel-default">
+      <div class="panel-heading"><?=$lang['user']['mailbox_general'];?></div>
+      <div class="panel-body">
+        <?php if (getenv('SKIP_SOGO') != "y") { ?>
+        <div class="row">
+          <div class="hidden-xs col-md-3 col-xs-5 text-right"></div>
+          <div class="col-md-3 col-xs-12">
+            <a target="_blank" href="/sogo-auth.php?login=<?=$username;?>" role="button" class="btn btn-default btn-block btn-xs-lg">
+              <i class="bi bi-inbox-fill"></i> <?=$lang['user']['open_webmail_sso'];?>
+            </a>
+          </div>
+        </div>
+        <hr>
+        <?php } ?>
+        <div class="row">
+          <div class="col-md-3 col-xs-12 text-right text-xs-left space20"><?=$lang['user']['in_use'];?>:</div>
+          <div class="col-md-5 col-xs-12">
+            <div class="progress">
+              <div class="progress-bar progress-bar-<?=$mailboxdata['percent_class'];?>" role="progressbar" aria-valuenow="<?=$mailboxdata['percent_in_use'];?>" aria-valuemin="0" aria-valuemax="100" style="min-width:2em;width: <?=$mailboxdata['percent_in_use'];?>%;">
+                <?=$mailboxdata['percent_in_use'];?>%
+              </div>
+            </div>
+            <p><?=formatBytes($mailboxdata['quota_used'], 2);?> / <?=($mailboxdata['quota'] == 0) ? '∞' : formatBytes($mailboxdata['quota'], 2);?><br><?=$mailboxdata['messages'];?> <?=$lang['user']['messages'];?></p>
+            <hr>
+            <p><a href="#pwChangeModal" data-toggle="modal"><i class="bi bi-pencil-fill"></i> <?=$lang['user']['change_password'];?></a></p>
+          </div>
+        </div>
+        <hr>
+        <? // FIDO2 ?>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left">
+            <p><i class="bi bi-shield-fill-check"></i> <?=$lang['fido2']['fido2_auth'];?></p>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left space20">
+          <?=$lang['fido2']['known_ids'];?>:
+          </div>
+          <div class="col-sm-9 col-xs-12">
+            <div class="table-responsive">
+            <table class="table table-striped table-hover table-condensed" id="fido2_keys">
+              <tr>
+                <th>ID</th>
+                <th style="min-width:240px;text-align: right"><?=$lang['admin']['action'];?></th>
+              </tr>
+              <?php
+              if (!empty($fido2_data)) {
+                foreach ($fido2_data as $key_info) {
+              ?>
+              <tr>
+                <td>
+                  <?=($_SESSION['fido2_cid'] == $key_info['cid']) ? '<i class="bi bi-unlock-fill"></i> ' : NULL; ?><?=(!empty($key_info['fn']))?$key_info['fn']:$key_info['subject'];?>
+                </td>
+                <td style="min-width:240px;text-align: right">
+                  <form style="display:inline;" method="post">
+                  <input type="hidden" name="unset_fido2_key" value="<?=$key_info['cid'];?>" />
+                  <div class="btn-group">
+                  <a href="#" class="btn btn-xs btn-default" data-cid="<?=$key_info['cid'];?>" data-subject="<?=base64_encode($key_info['subject']);?>" data-toggle="modal" data-target="#fido2ChangeFn"><i class="bi bi-pencil-fill"></i> <?=strtolower($lang['fido2']['rename']);?></a>
+                  <a href="#" onClick='return confirm("<?=$lang['user']['delete_ays'];?>")?$(this).closest("form").submit():"";' class="btn btn-xs btn-danger"><i class="bi bi-trash"></i> <?=strtolower($lang['admin']['remove']);?></a>
+                  </div>
+                  </form>
+                </td>
+              </tr>
+              <?php
+                }
+              }
+              ?>
+            </table>
+            </div>
+            <br>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-offset-3 col-sm-9">
+            <button class="btn btn-sm btn-primary visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline" id="register-fido2"><?=$lang['fido2']['set_fido2'];?></button>
+          </div>
+        </div>
+        <br>
+        <div class="row" id="status-fido2">
+          <div class="col-sm-3 col-xs-5 text-right"><?=$lang['fido2']['register_status'];?>:</div>
+          <div class="col-sm-9 col-xs-7">
+            <div id="fido2-alerts">-</div>
+          </div>
+          <br>
+        </div>
+        <hr>
+        <div class="row">
+          <div class="col-md-3 col-xs-12 text-right text-xs-left space20"><i class="bi bi-file-earmark-text"></i> <?=$lang['user']['apple_connection_profile'];?>:</div>
+          <div class="col-md-9 col-xs-12">
+            <p><i class="bi bi-file-earmark-post"></i> <a href="/mobileconfig.php?only_email"><?=$lang['user']['email'];?></a> <small>IMAP, SMTP</small></p>
+            <p class="help-block"><?=$lang['user']['apple_connection_profile_mailonly'];?></p>
+            <?php if (getenv('SKIP_SOGO') != "y") { ?>
+            <p><i class="bi bi-file-earmark-post"></i> <a href="/mobileconfig.php"><?=$lang['user']['email_and_dav'];?></a> <small>IMAP, SMTP, Cal/CardDAV</small></p>
+            <p class="help-block"><?=$lang['user']['apple_connection_profile_complete'];?></p>
+            <?php } ?>
+          </div>
+        </div>
+        <hr>
+        <div class="row">
+          <div class="col-sm-offset-3 col-sm-9">
+            <?php if ($mailboxdata['attributes']['force_pw_update'] == "1"): ?>
+            <div class="alert alert-danger"><?=$lang['user']['force_pw_update'];?></div>
+            <?php endif; ?>
+            <p><a target="_blank" href="https://mailcow.github.io/mailcow-dockerized-docs/client/#<?=$clientconfigstr;?>">[<?=$lang['user']['client_configuration'];?>]</a></p>
+            <p><a href="#userFilterModal" data-toggle="modal">[<?=$lang['user']['show_sieve_filters'];?>]</a></p>
+            <hr>
+            <h4 class="recent-login-success pull-left"><?=$lang['user']['recent_successful_connections'];?></h4>
+            <div class="dropdown pull-left pull-xs-right">
+              <button class="btn btn-default btn-xs btn-xs-lg dropdown-toggle" type="button" id="history_sasl_days" data-toggle="dropdown"><?=$lang['user']['login_history'];?> <span class="caret"></span></button>
+              <ul class="dropdown-menu">
+                <li class="login-history active" data-days="1"><a href="#">1 <?=$lang['user']['day'];?></a></li>
+                <li class="login-history" data-days="7"><a href="#">1 <?=$lang['user']['week'];?></a></li>
+                <li class="login-history" data-days="14"><a href="#">2 <?=$lang['user']['weeks'];?></a></li>
+                <li class="login-history" data-days="31"><a href="#">1 <?=$lang['user']['month'];?></a></li>
+              </ul>
+            </div>
+            <div class="clearfix"></div>
+            <div class="last-login"></div>
+            <span class="clear-last-logins">
+              <?=$lang['user']['clear_recent_successful_connections'];?>
+            </span>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+
+  <div role="tabpanel" class="tab-pane" id="tab-user-details">
+    <div class="panel panel-default">
+      <div class="panel-heading"><?=$lang['user']['mailbox_details'];?></div>
+      <div class="panel-body">
+        <?php // Get user information about aliases
+        $user_get_alias_details = user_get_alias_details($username);
+        $user_domains[] = mailbox('get', 'mailbox_details', $username)['domain'];
+        $user_alias_domains = $user_get_alias_details['alias_domains'];
+        if (!empty($user_alias_domains)) {
+          $user_domains = array_merge($user_domains, $user_alias_domains);
+        }
+        ?>
+        <div class="row">
+          <div class="col-sm-4 col-md-3 col-xs-12 text-right text-xs-left"><i class="bi bi-pin-angle"></i> <?=$lang['user']['direct_aliases'];?>:
+            <p class="small"><?=$lang['user']['direct_aliases_desc'];?></p>
+          </div>
+          <div class="col-sm-8 col-md-9 col-xs-12">
+          <?php
+          if (empty($user_get_alias_details['direct_aliases'])) {
+            echo '<i class="bi bi-x-lg"></i>';
+          }
+          else {
+            foreach (array_filter($user_get_alias_details['direct_aliases']) as $direct_alias => $direct_alias_meta) {
+              (!empty($direct_alias_meta['public_comment'])) ?
+                printf('%s &mdash; <i class="bi bi-chat-left"></i> %s<br>', $direct_alias, $direct_alias_meta['public_comment']) :
+                printf('%s<br>', $direct_alias);
+            }
+          }
+          ?>
+          </div>
+        </div>
+        <br>
+        <div class="row">
+          <div class="col-sm-4 col-md-3 col-xs-12 text-right text-xs-left"><i class="bi bi-share"></i> <?=$lang['user']['shared_aliases'];?>:
+            <p class="small"><?=$lang['user']['shared_aliases_desc'];?></p>
+          </div>
+          <div class="col-sm-8 col-md-9 col-xs-12">
+          <?php
+          if (empty($user_get_alias_details['shared_aliases'])) {
+            echo '<i class="bi bi-x-lg"></i>';
+          }
+          else {
+            foreach (array_filter($user_get_alias_details['shared_aliases']) as $shared_alias => $shared_alias_meta) {
+              (!empty($shared_alias_meta['public_comment'])) ?
+                printf('%s &mdash; <span class="bg-info">%s</span><br>', $shared_alias, $shared_alias_meta['public_comment']) :
+                printf('%s<br>', $shared_alias);
+            }
+          }
+          ?>
+          </div>
+        </div>
+        <hr>
+        <div class="row">
+          <div class="col-sm-4 col-md-3 col-xs-12 text-right text-xs-left space20"><?=$lang['user']['aliases_also_send_as'];?>:</div>
+          <div class="col-sm-8 col-md-9 col-xs-12">
+          <p><?=($user_get_alias_details['aliases_also_send_as'] == '*') ? $lang['user']['sender_acl_disabled'] : ((empty($user_get_alias_details['aliases_also_send_as'])) ? '<i class="bi bi-x-lg"></i>' : $user_get_alias_details['aliases_also_send_as']);?></p>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-4 col-md-3 col-xs-12 text-right text-xs-left space20"><?=$lang['user']['aliases_send_as_all'];?>:</div>
+          <div class="col-sm-8 col-md-9 col-xs-12">
+          <p><?=(empty($user_get_alias_details['aliases_send_as_all'])) ? '<i class="bi bi-x-lg"></i>' : '' ;?></p>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-4 col-md-3 col-xs-12 text-right text-xs-left space20"><?=$lang['user']['is_catch_all'];?>:</div>
+          <div class="col-sm-8 col-md-9 col-xs-12">
+          <p><?=(empty($user_get_alias_details['is_catch_all'])) ? '<i class="bi bi-x-lg"></i>' : '' ;?></p>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+
+  <div role="tabpanel" class="tab-pane" id="tab-user-settings">
+    <div class="panel panel-default">
+      <div class="panel-heading"><?=$lang['user']['mailbox_settings'];?></div>
+      <div class="panel-body">
+        <?php
+        // Show tagging options
+        $get_tagging_options = mailbox('get', 'delimiter_action', $username);
+        ?>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['tag_handling'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['delimiter_action'];?>">
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tagging_options == "subfolder") ? 'active' : null; ?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="delimiter_action"
+              data-api-url='edit/delimiter_action'
+              data-api-attr='{"tagged_mail_handler":"subfolder"}'><?=$lang['user']['tag_in_subfolder'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tagging_options == "subject") ? 'active' : null; ?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="delimiter_action"
+              data-api-url='edit/delimiter_action'
+              data-api-attr='{"tagged_mail_handler":"subject"}'><?=$lang['user']['tag_in_subject'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tagging_options == "none") ? 'active' : null; ?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="delimiter_action"
+              data-api-url='edit/delimiter_action'
+              data-api-attr='{"tagged_mail_handler":"none"}'><?=$lang['user']['tag_in_none'];?></button>
+              <div class="clearfix visible-xs"></div>
+          </div>
+          <p class="help-block"><?=$lang['user']['tag_help_explain'];?></p>
+          <p class="help-block"><?=$lang['user']['tag_help_example'];?></p>
+          </div>
+        </div>
+        <?php
+        // Show TLS policy options
+        $get_tls_policy = mailbox('get', 'tls_policy', $username);
+        ?>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['tls_policy'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['tls_policy'];?>">
+            <button type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tls_policy['tls_enforce_in'] == "1") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="tls_policy"
+              data-api-url='edit/tls_policy'
+              data-api-attr='{"tls_enforce_in":<?=($get_tls_policy['tls_enforce_in'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_in'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($get_tls_policy['tls_enforce_out'] == "1") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="tls_policy"
+              data-api-url='edit/tls_policy'
+              data-api-attr='{"tls_enforce_out":<?=($get_tls_policy['tls_enforce_out'] == "1") ? "0" : "1";?>}'><?=$lang['user']['tls_enforce_out'];?></button>
+              <div class="clearfix visible-xs"></div>
+          </div>
+          <p class="help-block"><?=$lang['user']['tls_policy_warning'];?></p>
+          </div>
+        </div>
+        <?php
+        // Show quarantine_notification options
+        $quarantine_notification = mailbox('get', 'quarantine_notification', $username);
+        $quarantine_category = mailbox('get', 'quarantine_category', $username);
+        ?>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['quarantine_notification'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_notification'];?>">
+            <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "never") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_notification"
+              data-api-url='edit/quarantine_notification'
+              data-api-attr='{"quarantine_notification":"never"}'><?=$lang['user']['never'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "hourly") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_notification"
+              data-api-url='edit/quarantine_notification'
+              data-api-attr='{"quarantine_notification":"hourly"}'><?=$lang['user']['hourly'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "daily") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_notification"
+              data-api-url='edit/quarantine_notification'
+              data-api-attr='{"quarantine_notification":"daily"}'><?=$lang['user']['daily'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-quart visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_notification == "weekly") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_notification"
+              data-api-url='edit/quarantine_notification'
+              data-api-attr='{"quarantine_notification":"weekly"}'><?=$lang['user']['weekly'];?></button>
+              <div class="clearfix visible-xs"></div>
+          </div>
+          <p class="help-block"><?=$lang['user']['quarantine_notification_info'];?></p>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['quarantine_category'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['quarantine_category'];?>">
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "reject") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_category"
+              data-api-url='edit/quarantine_category'
+              data-api-attr='{"quarantine_category":"reject"}'><?=$lang['user']['q_reject'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "add_header") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_category"
+              data-api-url='edit/quarantine_category'
+              data-api-attr='{"quarantine_category":"add_header"}'><?=$lang['user']['q_add_header'];?></button>
+            <button type="button" class="btn btn-sm btn-xs-third visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default <?=($quarantine_category == "all") ? "active" : null;?>"
+              data-action="edit_selected"
+              data-item="<?= htmlentities($username); ?>"
+              data-id="quarantine_category"
+              data-api-url='edit/quarantine_category'
+              data-api-attr='{"quarantine_category":"all"}'><?=$lang['user']['q_all'];?></button>
+              <div class="clearfix visible-xs"></div>
+          </div>
+          <p class="help-block"><?=$lang['user']['quarantine_category_info'];?></p>
+          </div>
+        </div>
+        <?php if (getenv('SKIP_SOGO') != "y") { ?>
+        <hr>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['eas_reset'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-acl="<?=$_SESSION['acl']['eas_reset'];?>" data-action="delete_selected" data-text="<?=$lang['user']['eas_reset'];?>?" data-item="<?= htmlentities($username); ?>" data-id="eas_cache" data-api-url='delete/eas_cache' href="#"><?=$lang['user']['eas_reset_now'];?></button>
+          <p class="help-block"><?=$lang['user']['eas_reset_help'];?></p>
+          </div>
+        </div>
+        <div class="row">
+          <div class="col-sm-3 col-xs-12 text-right text-xs-left text-xs-bold space20"><?=$lang['user']['sogo_profile_reset'];?>:</div>
+          <div class="col-sm-9 col-xs-12">
+          <button class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-acl="<?=$_SESSION['acl']['sogo_profile_reset'];?>" data-action="delete_selected" data-text="<?=$lang['user']['sogo_profile_reset'];?>?" data-item="<?= htmlentities($username); ?>" data-id="sogo_profile" data-api-url='delete/sogo_profile' href="#"><?=$lang['user']['sogo_profile_reset_now'];?></button>
+          <p class="help-block"><?=$lang['user']['sogo_profile_reset_help'];?></p>
+          </div>
+        </div>
+        <?php } ?>
+      </div>
+    </div>
+  </div>
+
+	<div role="tabpanel" class="tab-pane" id="SpamAliases">
+    <div class="row">
+      <div class="col-md-12 col-sm-12 col-xs-12">
+        <div class="table-responsive">
+          <table class="table table-striped" id="tla_table"></table>
+        </div>
+      </div>
+		</div>
+    <div class="mass-actions-user">
+      <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_alias'];?>">
+        <div class="btn-group">
+          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="tla" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"1"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['hour'];?></a></li>
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"24"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['day'];?></a></li>
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"168"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['week'];?></a></li>
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"744"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['month'];?></a></li>
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"8760"}' href="#"><?=$lang['user']['expire_in'];?> 1 <?=$lang['user']['year'];?></a></li>
+            <li><a data-action="edit_selected" data-id="tla" data-api-url='edit/time_limited_alias' data-api-attr='{"validity":"87600"}' href="#"><?=$lang['user']['expire_in'];?> 10 <?=$lang['user']['years'];?></a></li>
+            <li role="separator" class="divider"></li>
+            <li><a data-action="delete_selected" data-id="tla" data-api-url='delete/time_limited_alias' href="#"><?=$lang['mailbox']['remove'];?></a></li>
+          </ul>
+          <div class="clearfix visible-xs-block"></div>
+        </div>
+        <div class="btn-group">
+          <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success dropdown-toggle" data-toggle="dropdown" href="#"><i class="bi bi-plus-lg"></i> <?=$lang['user']['alias_create_random'];?>, 1 <?=$lang['user']['year'];?> <span class="caret"></span></a>
+          <ul class="dropdown-menu">
+          <?php
+          foreach($user_domains as $domain) {
+          ?>
+            <li>
+              <a data-action="add_item" data-api-url='add/time_limited_alias' data-api-attr='{"domain":"<?=$domain;?>"}' href="#">
+                @ <?=$domain;?>
+              </a>
+            </li>
+          <?php
+          }
+          ?>
+          </ul>
+        </div>
+      </div>
+    </div>
+	</div>
+
+	<div role="tabpanel" class="tab-pane" id="Spamfilter">
+    <h4><?=$lang['user']['spamfilter_behavior'];?></h4>
+    <div class="row">
+      <div class="col-sm-12">
+        <form class="form-horizontal" role="form" data-id="spam_score" method="post">
+          <div class="form-group">
+            <div class="col-lg-8 col-sm-12">
+              <div id="spam_score" data-provide="slider" data-acl="<?=$_SESSION['acl']['spam_score'];?>"></div>
+              <input id="spam_score_value" name="spam_score" type="hidden" value="<?=mailbox('get', 'spam_score', $username);?>">
+              <ul class="list-group list-group-flush">
+                <li class="list-group-item"><span class="label label-ham spam-ham-score"></span> <?=$lang['user']['spamfilter_green'];?></li>
+                <li class="list-group-item"><span class="label label-spam spam-spam-score"></span> <?=$lang['user']['spamfilter_yellow'];?></li>
+                <li class="list-group-item"><span class="label label-reject spam-reject-score"></span> <?=$lang['user']['spamfilter_red'];?></li>
+              </ul>
+            </div>
+          </div>
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_score'];?>">
+            <a type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected"
+            data-item="<?= htmlentities($username); ?>"
+            data-id="spam_score"
+            data-api-url='edit/spam-score'
+            data-api-attr='{}'><i class="bi bi-save"></i> <?=$lang['user']['save_changes'];?></a>
+            <a type="button" class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected"
+            data-item="<?= htmlentities($username); ?>"
+            data-id="spam_score_reset"
+            data-api-url='edit/spam-score'
+            data-api-attr='{"spam_score":"default"}'><?=$lang['user']['spam_score_reset'];?></a>
+          </div>
+        </form>
+      </div>
+    </div>
+		<hr>
+		<div class="row">
+			<div class="col-sm-6">
+				<h4><?=$lang['user']['spamfilter_wl'];?></h4>
+        <p><?=$lang['user']['spamfilter_wl_desc'];?></p>
+        <form class="form-inline space20" data-id="add_wl_policy_mailbox">
+          <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+            <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
+            <span class="input-group-btn">
+              <button class="btn btn-default" data-action="add_item" data-id="add_wl_policy_mailbox" data-api-url='add/mailbox-policy' data-api-attr='{"username":<?= json_encode($username); ?>,"object_list":"wl"}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['user']['spamfilter_table_add'];?></button>
+            </span>
+          </div>
+        </form>
+        <div class="table-responsive">
+          <table class="table table-striped table-condensed" id="wl_policy_mailbox_table"></table>
+        </div>
+        <div class="mass-actions-user">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="policy_wl_mailbox" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" data-action="delete_selected" data-id="policy_wl_mailbox" data-api-url='delete/mailbox-policy' href="#"><?=$lang['mailbox']['remove'];?></a>
+            <div class="clearfix visible-xs-block"></div>
+          </div>
+        </div>
+      </div>
+			<div class="col-sm-6">
+				<h4><?=$lang['user']['spamfilter_bl'];?></h4>
+        <p><?=$lang['user']['spamfilter_bl_desc'];?></p>
+        <form class="form-inline space20" data-id="add_bl_policy_mailbox">
+          <div class="input-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+            <input type="text" class="form-control" name="object_from" placeholder="*@example.org" required>
+            <span class="input-group-btn">
+              <button class="btn btn-default" data-action="add_item" data-id="add_bl_policy_mailbox" data-api-url='add/mailbox-policy' data-api-attr='{"username":<?= json_encode($username); ?>,"object_list":"bl"}' href="#"><i class="bi bi-plus-lg"></i> <?=$lang['user']['spamfilter_table_add'];?></button>
+            </span>
+          </div>
+        </form>
+        <div class="table-responsive">
+          <table class="table table-striped table-condensed" id="bl_policy_mailbox_table"></table>
+        </div>
+        <div class="mass-actions-user">
+          <div class="btn-group" data-acl="<?=$_SESSION['acl']['spam_policy'];?>">
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="policy_bl_mailbox" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+            <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" data-action="delete_selected" data-id="policy_bl_mailbox" data-api-url='delete/mailbox-policy' href="#"><?=$lang['mailbox']['remove'];?></a>
+            <div class="clearfix visible-xs-block"></div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+
+	<div role="tabpanel" class="tab-pane" id="Syncjobs">
+		<div class="table-responsive">
+      <table class="table table-striped" id="sync_job_table"></table>
+		</div>
+    <div class="mass-actions-user">
+      <div class="btn-group" data-acl="<?=$_SESSION['acl']['syncjobs'];?>">
+	    <div class="btn-group">
+        <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="syncjob" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+        <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a data-action="edit_selected" data-id="syncjob" data-api-url='edit/syncjob' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
+          <li><a data-action="edit_selected" data-id="syncjob" data-api-url='edit/syncjob' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
+          <li role="separator" class="divider"></li>
+          <li><a data-action="delete_selected" data-id="syncjob" data-api-url='delete/syncjob' href="#"><?=$lang['mailbox']['remove'];?></a></li>
+        </ul>
+        <div class="clearfix visible-xs"></div>
+	    </div>
+	    <div class="btn-group">
+        <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addSyncJobModal"><i class="bi bi-plus-lg"></i> <?=$lang['user']['create_syncjob'];?></a>
+	    </div>
+      </div>
+    </div>
+  </div>
+
+	<div role="tabpanel" class="tab-pane" id="AppPasswds">
+	    <p><?=$lang['user']['app_hint'];?></p>
+		<div class="table-responsive">
+	      <table class="table table-striped" id="app_passwd_table"></table>
+		</div>
+	    <div class="mass-actions-user">
+	      <div class="btn-group" data-acl="<?=$_SESSION['acl']['app_passwds'];?>">
+		    <div class="btn-group">
+	          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" id="toggle_multi_select_all" data-id="apppasswd" href="#"><i class="bi bi-check-all"></i> <?=$lang['mailbox']['toggle_all'];?></a>
+	          <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default dropdown-toggle" data-toggle="dropdown" href="#"><?=$lang['mailbox']['quick_actions'];?> <span class="caret"></span></a>
+	          <ul class="dropdown-menu">
+	            <li><a data-action="edit_selected" data-id="apppasswd" data-api-url='edit/app-passwd' data-api-attr='{"active":"1"}' href="#"><?=$lang['mailbox']['activate'];?></a></li>
+	            <li><a data-action="edit_selected" data-id="apppasswd" data-api-url='edit/app-passwd' data-api-attr='{"active":"0"}' href="#"><?=$lang['mailbox']['deactivate'];?></a></li>
+	            <li role="separator" class="divider"></li>
+	            <li><a data-action="delete_selected" data-id="apppasswd" data-api-url='delete/app-passwd' href="#"><?=$lang['mailbox']['remove'];?></a></li>
+	          </ul>
+	          <div class="clearfix visible-xs"></div>
+		    </div>
+		    <div class="btn-group">
+	          <a class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" href="#" data-toggle="modal" data-target="#addAppPasswdModal"><i class="bi bi-plus-lg"></i> <?=$lang['user']['create_app_passwd'];?></a>
+		    </div>
+	      </div>
+	    </div>
+	</div>
+
+	<div role="tabpanel" class="tab-pane" id="Pushover">
+    <form data-id="pushover" class="form well" method="post">
+      <input type="hidden" value="0" name="evaluate_x_prio">
+      <input type="hidden" value="0" name="only_x_prio">
+      <input type="hidden" value="0" name="active">
+      <div class="row">
+        <div class="col-sm-1">
+          <p class="help-block"><a href="https://pushover.net" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAACglBMVEUAAAAAAAEAAAAilecFGigAAAAAAAAAAAAAAAANj+c3n+Ypm+oeYI4KWI4MieAtkdQbleoJcLcjmeswmN4Rit4KgdMKUYQJKUAQSnILL0kMNlMSTngimOoNPF0hlOQBBgkNOlkRS3MHIjUhk+IPf8wKLUYsjM0AAAASTngAAAAAAAAPfckbdLIbdrYUWIgegsgce70knfEAAAAknfENOVkGHi8YaaIjnvEdgMUhkuAQSG8aca0hleQUh9YLjOM4nOEMgtMcbaYWa6YemO02ltkKhNktgLodYZEPXJEyi8kKesktfLUzj84cWYMiluckZ5YJXJYeW4Y0k9YKfs4yjs0pc6YHZaUviskLfMkqmugak+cqkNcViNcqeK4Iaq4XRmYGPmYMKDsFJTstgr0LdL0ti84CCQ4BCQ4Qgc8rlt8XjN8shcQsi8wZSGgEP2cRMEUDKkUAAAD///8dmvEamfExo/EXmPEWl/ERlvElnvEsofEjnfETl/Enn/Ezo/E4pvEvovEfm/E1pPEzpPEvofEOlfEpoPEamPEQlfEYmfE6p/EgnPEVlvEroPE3pfE2pfENk/Ern/E3pPEcmfEfmvEnnvBlufT6/P0soPAknPDd7/zs9vzo9PxBqfItofAqoPD9/f3B4/q43/mx2/l/xfZ6w/Vxv/VtvfVgt/RXtPNTsfNEq/L3+/31+v3a7fvR6vvH5fqs2vmc0/jx+P3v9/3h8fzW7PvV7PvL5/q13fmo1/mh1PiY0fiNy/aHyfZ2wfVou/Vdt/RPsPM3oeoQkuowmeAgjdgcgMQbeLrw9/3k8vy74Pm63/mX0PdYtfNNr/Ikm+4wnOchkuAVjOAfdrMVcrOdoJikAAAAcnRSTlMAIQ8IzzweFwf+/fvw8P79+/Xt7e3p6eji4d7U08y8qZyTiIWDgn53bWxqaWBKQ0JBOjUwMCkoJCEfHBkT/vz8/Pv7+vr69/b29PTy7ezm5ubm5N7e29vQ0M/Pv7+4uLW1pqaWloWDg3x7e21mUVFFRUXdPracAAAEbElEQVRIx4WUZbvaQBCFF+ru7u7u7u7u7t4mvVwSoBC0JIUCLRQolLq7u7vr/+nMLkmQyvlwyfPcd86e3ZldUqwyQ/p329J+XfutPQYOLUP+q55rFtQJRvY79+xxlZTUWbKpz7/xrrMr2+3BoNPpdLn2lJQ4HEeqLOr1d7z7XNkesQed4A848G63Oy4Gmg/6Mz542QvZbqe8C/Ig73CLYiYTrtLmT3zfqbIcAR7y4wIqH/B6M9Fo0+Ldb6sM9ph/v4ozPuz12mxRofaAAr7jCNkuoz/jNf9AGHibkBCm51fsGKvxsAGWx4H+jBcEi6V2birDpCL/9Klrd1KHbiSvPWP8V0tTnTfO03iXi57P6WNHOVUf44IFdFDRz6pV5fw8Zy5z3JVH5+R48OwxqDiGvKJIY9R+9JsCuJ5HPg74OVEMpz+nbdEPUHEWeEk6IDUnTC1l5r+f8uffc0cfxc8fS17kLso24SwUPFDA/6DE82xKDOPliJ7n/GGOOyWK9zD9CdjvOfg9Dv6AH+AX04LW9gj2i8W/APx1UbxwCAu+wPmcpgUKL/EHdvtq4uwaZwCuznPJVY5LHhED15G/isd5Hz4eKui/e/du02YoKFeD5mHzHIN/nxEDe25gQQwKorAid04CfyzwL4XutXvl1Pt1guMOwwKPkU8mYIFT8JHK+vv8prpDScUVL+j8s3lOctw1GIhbWHAS+HgKPk7xPM/4UtNAYmzizJkf6NgTb/gM8jePQLsewMdthS3g95tMpT1IhVm6v1s8fYmLeb13Odwp8Fh5KY048y/d14WUrwrb1e/X/rNp73nkD8kWS+wi/MZ4XuetG4mhKubJm3/WNEvi8SHwB56nPKjUam0LBdp9ARwupFemTYudvgN/L1+A/Ko/LGBuS8pPy+YR1fuCTWNKnUyoeUyYx2o2dyEVGmr5xTD42xzvkD16+Pb9WIIH6fmt1r3mbsTY7Bvw+n23naT8BUWh86bz6G/e259UXPUK3gfAxQDlo7Rpx3Geqb2e3wp83SGEdKpB7zvwYbzvT2n65xLwbH6YP+M9C8vA8E1wxLU8gkCbdhXGUyrMgwVrcbzLHonr78lzDvWM3q/C/HtDlXoSUIe3YkblhRPIX4E8Oo/9siLv8dRjV7SBlkdgTXvKS7nzsA/9AfeEuhKq9T8zWIDv1Sd6ETAP4D6/H/1V+1BojvruNa4SZXz4JhY84dV5MOF5agUvu5OsOo+KRpG30KalEnoeDccFlutPZYs38D5n3zcpr1/0fBhfb3DOY1z2tSAgLxWezz6zuoHhfUmOejf6blHQH/sFuJYfcMZX307ytKvRa3ifoV/586P5j+tICtS77BuJxzxYAPZsntX8k3eSIhlajK4p8b7iefCEKs03kD/I2LnxL9ovH+43y4fAv1YrI/mzDBsavAX/UppfzVOrZT/ydxk6lJ047MfLfVbcb6hS9ZEzWxekKQ5WrtPqZg3rV6tWrX6Tle3KQZj/q6KxQnmDoXwFY0VSrN9e8FRXBCTAvwAAAABJRU5ErkJggg==" class="img img-fluid"></a></p>
+        </div>
+        <div class="col-sm-10">
+              <p class="help-block"><?=sprintf($lang['user']['pushover_info'], $username);?></p>
+              <p class="help-block"><?=$lang['user']['pushover_vars'];?>: <code>{SUBJECT}</code>, <code>{SENDER}</code></p>
+              <div class="form-group">
+                <div class="row">
+                  <div class="col-sm-6">
+                    <div class="form-group">
+                      <label for="token">API Token/Key (Application)</label>
+                      <input type="text" class="form-control" name="token" maxlength="30" value="<?=$pushover_data['token'];?>" required>
+                    </div>
+                  </div>
+                  <div class="col-sm-6">
+                    <div class="form-group">
+                      <label for="key">User/Group Key</label>
+                      <input type="text" class="form-control" name="key" maxlength="30" value="<?=$pushover_data['key'];?>" required>
+                    </div>
+                  </div>
+                  <div class="col-sm-6">
+                    <div class="form-group">
+                      <label for="title"><?=$lang['user']['pushover_title'];?></label>
+                      <input type="text" class="form-control" name="title" value="<?=$pushover_data['title'];?>" placeholder="Mail">
+                    </div>
+                  </div>
+                  <div class="col-sm-6">
+                    <div class="form-group">
+                      <label for="text"><?=$lang['user']['pushover_text'];?></label>
+                      <input type="text" class="form-control" name="text" value="<?=$pushover_data['text'];?>" placeholder="You've got mail 📧">
+                    </div>
+                  </div>
+                  <div class="col-sm-12">
+                    <div class="form-group">
+                      <label for="text"><?=$lang['user']['pushover_sender_array'];?></label>
+                      <input type="text" class="form-control" name="senders" value="<?=$pushover_data['senders'];?>" placeholder="sender1@example.com, sender2@example.com">
+                    </div>
+                  </div>
+                  <div class="col-sm-12">
+                    <div class="checkbox">
+                    <label><input type="checkbox" value="1" name="active" <?=($pushover_data['active']=="1") ? "checked" : null;?>> <?=$lang['user']['active'];?></label>
+                    </div>
+                  </div>
+                  <div class="col-sm-12">
+                    <legend style="cursor:pointer;margin-top:10px" data-target="#po_advanced" unselectable="on" data-toggle="collapse">
+                      <i style="font-size:10pt;" class="bi bi-plus-square"></i> <?=$lang['user']['advanced_settings'];?>
+                    </legend>
+                  </div>
+                  <div class="col-sm-12">
+                    <div id="po_advanced" class="collapse">
+                      <div class="form-group">
+                        <label for="text"><?=$lang['user']['pushover_sender_regex'];?></label>
+                        <input type="text" class="form-control" name="senders_regex" value="<?=$pushover_data['senders_regex'];?>" placeholder="/(.*@example\.org$|^foo@example\.com$)/i" regex="true">
+                        <div class="checkbox">
+                          <label><input type="checkbox" value="1" name="evaluate_x_prio" <?=($pushover_data['attributes']['evaluate_x_prio']=="1") ? "checked" : null;?>> <?=$lang['user']['pushover_evaluate_x_prio'];?></label>
+                        </div>
+                        <div class="checkbox">
+                          <label><input type="checkbox" value="1" name="only_x_prio" <?=($pushover_data['attributes']['only_x_prio']=="1") ? "checked" : null;?>> <?=$lang['user']['pushover_only_x_prio'];?></label>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            <div class="btn-group mass-actions-user" data-acl="<?=$_SESSION['acl']['pushover'];?>">
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-success" data-action="edit_selected" data-id="pushover" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover' data-api-attr='{}' href="#"><?=$lang['user']['save'];?></a>
+              <a class="btn btn-sm btn-xs-half visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-default" data-action="edit_selected" data-id="pushover-test" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover-test' data-api-attr='{}' href="#"><i class="bi bi-check-all"></i> <?=$lang['user']['pushover_verify'];?></a>
+              <div class="clearfix visible-xs"></div>
+              <a id="pushover_delete" class="btn btn-sm visible-xs-block visible-sm-inline visible-md-inline visible-lg-inline btn-danger" data-action="edit_selected" data-id="pushover-delete" data-item="<?=htmlspecialchars($username);?>" data-api-url='edit/pushover' data-api-attr='{"delete":"true"}' href="#"><i class="bi bi-trash"></i> <?=$lang['user']['remove'];?></a>
+            </div>
+          </div>
+        </div>
+      </div>
+    </form>
+  </div>
+</div>
+</div><!-- /container -->
+<div style="margin-bottom:200px;"></div>
+<?php
+}
+if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] != 'admin') {
+require_once $_SERVER['DOCUMENT_ROOT'] . '/modals/user.php';
+?>
+<script type='text/javascript'>
+<?php
+$lang_user = json_encode($lang['user']);
+echo "var lang = " . $lang_user . ";\n";
+echo "var user_spam_score = [" . mailbox('get', 'spam_score', $username) . "];\n";
+echo "var acl = '" . json_encode($_SESSION['acl']) . "';\n";
+echo "var csrf_token = '" . $_SESSION['CSRF']['TOKEN'] . "';\n";
+echo "var mailcow_cc_username = '" . $_SESSION['mailcow_cc_username'] . "';\n";
+echo "var pagination_size = '" . $PAGINATION_SIZE . "';\n";
+?>
+</script>
+<?php
+$js_minifier->add('/web/js/site/user.js');
+$js_minifier->add('/web/js/site/pwgen.js');
+require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/footer.inc.php';
+}
+else {
+	header('Location: /');
+	exit();
+}
+?>
